ZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCmluZGV4IDdkZmM1YWQuLjhlZmNkMmUgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUKKysrIGIvLmdpdGlnbm9yZQpAQCAtMTIsNiArMTIsNyBAQAogRG9jL3Rvb2xzL3B5Z21lbnRzLwogRG9jL3Rvb2xzL3NwaGlueC8KIExpYi9saWIydG8zLyoucGlja2xlCitMaWIvX3N5c2NvbmZpZ2RhdGEucHkKIE1ha2VmaWxlCiBNYWtlZmlsZS5wcmUKIE1pc2MvcHl0aG9uLnBjCmRpZmYgLS1naXQgYS8uaGdlb2wgYi8uaGdlb2wKaW5kZXggZWQxMzE3MS4uYWZiMWU2YiAxMDA2NDQKLS0tIGEvLmhnZW9sCisrKyBiLy5oZ2VvbApAQCAtMjgsOCArMjgsOSBAQAogCiBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yNi50eHQgPSBCSU4KIExpYi90ZXN0L2Nqa2VuY29kaW5ncy8qID0gQklOCi1MaWIvdGVzdC9zbmRoZHJkYXRhL3NuZGhkci4qID0gQklOCiBMaWIvdGVzdC9kZWNpbWFsdGVzdGRhdGEvKi5kZWNUZXN0ID0gQklOCitMaWIvdGVzdC9zbmRoZHJkYXRhL3NuZGhkci4qID0gQklOCitMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI2LnR4dCA9IEJJTgogCiAjIEFsbCBvdGhlciBmaWxlcyAod2hpY2ggcHJlc3VtYWJseSBhcmUgaHVtYW4tZWRpdGFibGUpIGFyZSAibmF0aXZlIi4KICMgVGhpcyBtdXN0IGJlIHRoZSBsYXN0IHJ1bGUhCmRpZmYgLS1naXQgYS8uaGdpZ25vcmUgYi8uaGdpZ25vcmUKaW5kZXggMjRkZjNiOS4uMGZkODU2MiAxMDA2NDQKLS0tIGEvLmhnaWdub3JlCisrKyBiLy5oZ2lnbm9yZQpAQCAtNSw3ICs1LDggQEAKIE1ha2VmaWxlLnByZSQKIFRBR1MkCiBhdXRvbTR0ZS5jYWNoZSQKLWJ1aWxkLworXmJ1aWxkLworXkRvYy9idWlsZC8KIGJ1aWxkbm8kCiBjb25maWcuY2FjaGUKIGNvbmZpZy5sb2cKQEAgLTMyLDYgKzMzLDcgQEAKIE1vZHVsZXMvbGRfc29fYWl4JAogUGFyc2VyL3BnZW4kCiBQYXJzZXIvcGdlbi5zdGFtcCQKK1BDYnVpbGQvYW1kNjQvCiBeY29yZQogXnB5dGhvbi1nZGIucHkKIF5weXRob24uZXhlLWdkYi5weQpAQCAtNDcsNiArNDksNyBAQAogKi5weWQKICouY292ZXIKICp+CitMaWIvX3N5c2NvbmZpZ2RhdGEucHkKIExpYi9saWIydG8zLyoucGlja2xlCiBMaWIvdGVzdC9kYXRhLyoKIE1pc2MvKi53cHUKQEAgLTYyLDcgKzY1LDEwIEBACiBQQ2J1aWxkLyoubwogUENidWlsZC8qLm5jYgogUENidWlsZC8qLmJzYworUENidWlsZC8qLnVzZXIKK1BDYnVpbGQvKi5zdW8KIFBDYnVpbGQvV2luMzItdGVtcC0qCitQQ2J1aWxkL3g2NC10ZW1wLSoKIF9fcHljYWNoZV9fCiBNb2R1bGVzL190ZXN0ZW1iZWQKIC5jb3ZlcmFnZQpkaWZmIC0tZ2l0IGEvLmhndGFncyBiLy5oZ3RhZ3MKaW5kZXggMDgzMGFhZi4uMDQxNDgyNiAxMDA2NDQKLS0tIGEvLmhndGFncworKysgYi8uaGd0YWdzCkBAIC05NSwzICs5NSw0IEBACiBjODYwZmVhYTM0OGQ2NjNlNTk4OTg2ODk0ZWU0NjgwNDgwNTc3ZTE1IHYzLjIuMnJjMQogMTM3ZTQ1ZjE1YzBiZDI2MmM5YWQ0YzAzMmQ5NzQyNWJjMDU4OTQ1NiB2My4yLjIKIDcwODU0MDNkYWY0MzlhZGIzZjllNzBlZjEzZjZiZWRiMWM0NDczNzYgdjMuMi4zcmMxCitmMWE5YTY1MDU3MzE3MTRmMGUxNTc0NTNmZjg1MGUzYjcxNjE1YzQ1IHYzLjMuMGExCmRpZmYgLS1naXQgYS9Eb2MvQUNLUy50eHQgYi9Eb2MvQUNLUy50eHQKaW5kZXggNzAwNjNjMC4uYjY0YzY1MCAxMDA2NDQKLS0tIGEvRG9jL0FDS1MudHh0CisrKyBiL0RvYy9BQ0tTLnR4dApAQCAtNjIsNiArNjIsNyBAQAogICAgKiBTdGVmYW4gRnJhbmtlCiAgICAqIEppbSBGdWx0b24KICAgICogUGV0ZXIgRnVuaworICAgKiBFdGhhbiBGdXJtYW4KICAgICogTGVsZSBHYWlmYXgKICAgICogTWF0dGhldyBHYWxsYWdoZXIKICAgICogR2FicmllbCBHZW5lbGxpbmEKQEAgLTIxMCw2ICsyMTEsNyBAQAogICAgKiBEYXZpZCBUdXJuZXIKICAgICogU2FuZHJvIFRvc2kKICAgICogVmlsbGUgVmFpbmlvCisgICAqIE5hZGVlbSBWYXdkYQogICAgKiBNYXJ0aWpuIFZyaWVzCiAgICAqIENoYXJsZXMgRy4gV2FsZG1hbgogICAgKiBHcmVnIFdhcmQKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9hcmcucnN0IGIvRG9jL2MtYXBpL2FyZy5yc3QKaW5kZXggZDRkZGE3Yy4uMTk2YWE3NyAxMDA2NDQKLS0tIGEvRG9jL2MtYXBpL2FyZy5yc3QKKysrIGIvRG9jL2MtYXBpL2FyZy5yc3QKQEAgLTE0Niw3ICsxNDYsNyBAQAogICAgTGlrZSBgYHUjYGAsIGJ1dCB0aGUgUHl0aG9uIG9iamVjdCBtYXkgYWxzbyBiZSBgYE5vbmVgYCwgaW4gd2hpY2ggY2FzZSB0aGUKICAgIDpjOnR5cGU6YFB5X1VOSUNPREVgIHBvaW50ZXIgaXMgc2V0IHRvICpOVUxMKi4KIAotYGBVYGAgKDpjbGFzczpgc3RyYCkgW1B5VW5pY29kZU9iamVjdCBcKl0KK2BgVWBgICg6Y2xhc3M6YHN0cmApIFtQeU9iamVjdCBcKl0KICAgIFJlcXVpcmVzIHRoYXQgdGhlIFB5dGhvbiBvYmplY3QgaXMgYSBVbmljb2RlIG9iamVjdCwgd2l0aG91dCBhdHRlbXB0aW5nCiAgICBhbnkgY29udmVyc2lvbi4gIFJhaXNlcyA6ZXhjOmBUeXBlRXJyb3JgIGlmIHRoZSBvYmplY3QgaXMgbm90IGEgVW5pY29kZQogICAgb2JqZWN0LiAgVGhlIEMgdmFyaWFibGUgbWF5IGFsc28gYmUgZGVjbGFyZWQgYXMgOmM6dHlwZTpgUHlPYmplY3RcKmAuCkBAIC0yNjAsOSArMjYwLDExIEBACiBgYG5gYCAoOmNsYXNzOmBpbnRgKSBbUHlfc3NpemVfdF0KICAgIENvbnZlcnQgYSBQeXRob24gaW50ZWdlciB0byBhIEMgOmM6dHlwZTpgUHlfc3NpemVfdGAuCiAKLWBgY2BgICg6Y2xhc3M6YGJ5dGVzYCBvZiBsZW5ndGggMSkgW2NoYXJdCi0gICBDb252ZXJ0IGEgUHl0aG9uIGJ5dGUsIHJlcHJlc2VudGVkIGFzIGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0IG9mIGxlbmd0aCAxLAotICAgdG8gYSBDIDpjOnR5cGU6YGNoYXJgLgorYGBjYGAgKDpjbGFzczpgYnl0ZXNgIG9yIDpjbGFzczpgYnl0ZWFycmF5YCBvZiBsZW5ndGggMSkgW2NoYXJdCisgICBDb252ZXJ0IGEgUHl0aG9uIGJ5dGUsIHJlcHJlc2VudGVkIGFzIGEgOmNsYXNzOmBieXRlc2Agb3IKKyAgIDpjbGFzczpgYnl0ZWFycmF5YCBvYmplY3Qgb2YgbGVuZ3RoIDEsIHRvIGEgQyA6Yzp0eXBlOmBjaGFyYC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMgQWxsb3cgOmNsYXNzOmBieXRlYXJyYXlgIG9iamVjdHMKIAogYGBDYGAgKDpjbGFzczpgc3RyYCBvZiBsZW5ndGggMSkgW2ludF0KICAgIENvbnZlcnQgYSBQeXRob24gY2hhcmFjdGVyLCByZXByZXNlbnRlZCBhcyBhIDpjbGFzczpgc3RyYCBvYmplY3Qgb2YKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9idWZmZXIucnN0IGIvRG9jL2MtYXBpL2J1ZmZlci5yc3QKaW5kZXggZDk4ZWNlMy4uZDYzNjkzNSAxMDA2NDQKLS0tIGEvRG9jL2MtYXBpL2J1ZmZlci5yc3QKKysrIGIvRG9jL2MtYXBpL2J1ZmZlci5yc3QKQEAgLTcsNiArNyw3IEBACiAKIC4uIHNlY3Rpb25hdXRob3I6OiBHcmVnIFN0ZWluIDxnc3RlaW5AbHlyYS5vcmc+CiAuLiBzZWN0aW9uYXV0aG9yOjogQmVuamFtaW4gUGV0ZXJzb24KKy4uIHNlY3Rpb25hdXRob3I6OiBTdGVmYW4gS3JhaAogCiAKIC4uIGluZGV4OjoKQEAgLTIwLDcgKzIxLDcgQEAKIAogV2hpbGUgZWFjaCBvZiB0aGVzZSB0eXBlcyBoYXZlIHRoZWlyIG93biBzZW1hbnRpY3MsIHRoZXkgc2hhcmUgdGhlIGNvbW1vbgogY2hhcmFjdGVyaXN0aWMgb2YgYmVpbmcgYmFja2VkIGJ5IGEgcG9zc2libHkgbGFyZ2UgbWVtb3J5IGJ1ZmZlci4gIEl0IGlzCi10aGVuIGRlc2lyZWFibGUsIGluIHNvbWUgc2l0dWF0aW9ucywgdG8gYWNjZXNzIHRoYXQgYnVmZmVyIGRpcmVjdGx5IGFuZAordGhlbiBkZXNpcmFibGUsIGluIHNvbWUgc2l0dWF0aW9ucywgdG8gYWNjZXNzIHRoYXQgYnVmZmVyIGRpcmVjdGx5IGFuZAogd2l0aG91dCBpbnRlcm1lZGlhdGUgY29weWluZy4KIAogUHl0aG9uIHByb3ZpZGVzIHN1Y2ggYSBmYWNpbGl0eSBhdCB0aGUgQyBsZXZlbCBpbiB0aGUgZm9ybSBvZiB0aGUgKmJ1ZmZlcgpAQCAtNjAsOCArNjEsMTAgQEAKIHJlc291cmNlIGxlYWtzLgogCiAKLVRoZSBidWZmZXIgc3RydWN0dXJlCi09PT09PT09PT09PT09PT09PT09PQorLi4gX2J1ZmZlci1zdHJ1Y3R1cmU6CisKK0J1ZmZlciBzdHJ1Y3R1cmUKKz09PT09PT09PT09PT09PT0KIAogQnVmZmVyIHN0cnVjdHVyZXMgKG9yIHNpbXBseSAiYnVmZmVycyIpIGFyZSB1c2VmdWwgYXMgYSB3YXkgdG8gZXhwb3NlIHRoZQogYmluYXJ5IGRhdGEgZnJvbSBhbm90aGVyIG9iamVjdCB0byB0aGUgUHl0aG9uIHByb2dyYW1tZXIuICBUaGV5IGNhbiBhbHNvIGJlCkBAIC03OCw5NiArODEsMzM5IEBACiBhcm91bmQgYSBidWZmZXIgaXMgbmVlZGVkLCBhIDpyZWY6YG1lbW9yeXZpZXcgPG1lbW9yeXZpZXctb2JqZWN0cz5gIG9iamVjdAogY2FuIGJlIGNyZWF0ZWQuCiAKK0ZvciBzaG9ydCBpbnN0cnVjdGlvbnMgaG93IHRvIHdyaXRlIGFuIGV4cG9ydGluZyBvYmplY3QsIHNlZQorOnJlZjpgQnVmZmVyIE9iamVjdCBTdHJ1Y3R1cmVzIDxidWZmZXItc3RydWN0cz5gLiBGb3Igb2J0YWluaW5nCithIGJ1ZmZlciwgc2VlIDpjOmZ1bmM6YFB5T2JqZWN0X0dldEJ1ZmZlcmAuCiAKIC4uIGM6dHlwZTo6IFB5X2J1ZmZlcgogCi0gICAuLiBjOm1lbWJlcjo6IHZvaWQgKmJ1ZgorICAgLi4gYzptZW1iZXI6OiB2b2lkIFwqb2JqCiAKLSAgICAgIEEgcG9pbnRlciB0byB0aGUgc3RhcnQgb2YgdGhlIG1lbW9yeSBmb3IgdGhlIG9iamVjdC4KKyAgICAgIEEgbmV3IHJlZmVyZW5jZSB0byB0aGUgZXhwb3J0aW5nIG9iamVjdC4gVGhlIHJlZmVyZW5jZSBpcyBvd25lZCBieQorICAgICAgdGhlIGNvbnN1bWVyIGFuZCBhdXRvbWF0aWNhbGx5IGRlY3JlbWVudGVkIGFuZCBzZXQgdG8gKk5VTEwqIGJ5CisgICAgICA6YzpmdW5jOmBQeUJ1ZmZlcl9SZWxlYXNlYC4gVGhlIGZpZWxkIGlzIHRoZSBlcXVpdmFsZW50IG9mIHRoZSByZXR1cm4KKyAgICAgIHZhbHVlIG9mIGFueSBzdGFuZGFyZCBDLUFQSSBmdW5jdGlvbi4KKworICAgICAgQXMgYSBzcGVjaWFsIGNhc2UsIGZvciAqdGVtcG9yYXJ5KiBidWZmZXJzIHRoYXQgYXJlIHdyYXBwZWQgYnkKKyAgICAgIDpjOmZ1bmM6YFB5TWVtb3J5Vmlld19Gcm9tQnVmZmVyYCBvciA6YzpmdW5jOmBQeUJ1ZmZlcl9GaWxsSW5mb2AKKyAgICAgIHRoaXMgZmllbGQgaXMgKk5VTEwqLiBJbiBnZW5lcmFsLCBleHBvcnRpbmcgb2JqZWN0cyBNVVNUIE5PVAorICAgICAgdXNlIHRoaXMgc2NoZW1lLgorCisgICAuLiBjOm1lbWJlcjo6IHZvaWQgXCpidWYKKworICAgICAgQSBwb2ludGVyIHRvIHRoZSBzdGFydCBvZiB0aGUgbG9naWNhbCBzdHJ1Y3R1cmUgZGVzY3JpYmVkIGJ5IHRoZSBidWZmZXIKKyAgICAgIGZpZWxkcy4gVGhpcyBjYW4gYmUgYW55IGxvY2F0aW9uIHdpdGhpbiB0aGUgdW5kZXJseWluZyBwaHlzaWNhbCBtZW1vcnkKKyAgICAgIGJsb2NrIG9mIHRoZSBleHBvcnRlci4gRm9yIGV4YW1wbGUsIHdpdGggbmVnYXRpdmUgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLnN0cmlkZXNgCisgICAgICB0aGUgdmFsdWUgbWF5IHBvaW50IHRvIHRoZSBlbmQgb2YgdGhlIG1lbW9yeSBibG9jay4KKworICAgICAgRm9yIGNvbnRpZ3VvdXMgYXJyYXlzLCB0aGUgdmFsdWUgcG9pbnRzIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIG1lbW9yeQorICAgICAgYmxvY2suCiAKICAgIC4uIGM6bWVtYmVyOjogUHlfc3NpemVfdCBsZW4KLSAgICAgIDpub2luZGV4OgogCi0gICAgICBUaGUgdG90YWwgbGVuZ3RoIG9mIHRoZSBtZW1vcnkgaW4gYnl0ZXMuCisgICAgICBgYHByb2R1Y3Qoc2hhcGUpICogaXRlbXNpemVgYC4gRm9yIGNvbnRpZ3VvdXMgYXJyYXlzLCB0aGlzIGlzIHRoZSBsZW5ndGgKKyAgICAgIG9mIHRoZSB1bmRlcmx5aW5nIG1lbW9yeSBibG9jay4gRm9yIG5vbi1jb250aWd1b3VzIGFycmF5cywgaXQgaXMgdGhlIGxlbmd0aAorICAgICAgdGhhdCB0aGUgbG9naWNhbCBzdHJ1Y3R1cmUgd291bGQgaGF2ZSBpZiBpdCB3ZXJlIGNvcGllZCB0byBhIGNvbnRpZ3VvdXMKKyAgICAgIHJlcHJlc2VudGF0aW9uLgorCisgICAgICBBY2Nlc3NpbmcgYGAoKGNoYXIgKilidWYpWzBdIHVwIHRvICgoY2hhciAqKWJ1ZilbbGVuLTFdYGAgaXMgb25seSB2YWxpZAorICAgICAgaWYgdGhlIGJ1ZmZlciBoYXMgYmVlbiBvYnRhaW5lZCBieSBhIHJlcXVlc3QgdGhhdCBndWFyYW50ZWVzIGNvbnRpZ3VpdHkuIEluCisgICAgICBtb3N0IGNhc2VzIHN1Y2ggYSByZXF1ZXN0IHdpbGwgYmUgOmM6bWFjcm86YFB5QlVGX1NJTVBMRWAgb3IgOmM6bWFjcm86YFB5QlVGX1dSSVRBQkxFYC4KIAogICAgLi4gYzptZW1iZXI6OiBpbnQgcmVhZG9ubHkKIAotICAgICAgQW4gaW5kaWNhdG9yIG9mIHdoZXRoZXIgdGhlIGJ1ZmZlciBpcyByZWFkIG9ubHkuCi0KLSAgIC4uIGM6bWVtYmVyOjogY29uc3QgY2hhciAqZm9ybWF0Ci0gICAgICA6bm9pbmRleDoKLQotICAgICAgQSAqTlVMTCogdGVybWluYXRlZCBzdHJpbmcgaW4gOm1vZDpgc3RydWN0YCBtb2R1bGUgc3R5bGUgc3ludGF4IGdpdmluZwotICAgICAgdGhlIGNvbnRlbnRzIG9mIHRoZSBlbGVtZW50cyBhdmFpbGFibGUgdGhyb3VnaCB0aGUgYnVmZmVyLiAgSWYgdGhpcyBpcwotICAgICAgKk5VTEwqLCBgYCJCImBgICh1bnNpZ25lZCBieXRlcykgaXMgYXNzdW1lZC4KLQotICAgLi4gYzptZW1iZXI6OiBpbnQgbmRpbQotCi0gICAgICBUaGUgbnVtYmVyIG9mIGRpbWVuc2lvbnMgdGhlIG1lbW9yeSByZXByZXNlbnRzIGFzIGEgbXVsdGktZGltZW5zaW9uYWwKLSAgICAgIGFycmF5LiAgSWYgaXQgaXMgMCwgOmM6ZGF0YTpgc3RyaWRlc2AgYW5kIDpjOmRhdGE6YHN1Ym9mZnNldHNgIG11c3QgYmUKLSAgICAgICpOVUxMKi4KLQotICAgLi4gYzptZW1iZXI6OiBQeV9zc2l6ZV90ICpzaGFwZQotCi0gICAgICBBbiBhcnJheSBvZiA6Yzp0eXBlOmBQeV9zc2l6ZV90YFxzIHRoZSBsZW5ndGggb2YgOmM6ZGF0YTpgbmRpbWAgZ2l2aW5nIHRoZQotICAgICAgc2hhcGUgb2YgdGhlIG1lbW9yeSBhcyBhIG11bHRpLWRpbWVuc2lvbmFsIGFycmF5LiAgTm90ZSB0aGF0Ci0gICAgICBgYCgoKnNoYXBlKVswXSAqIC4uLiAqICgqc2hhcGUpW25kaW1zLTFdKSppdGVtc2l6ZWBgIHNob3VsZCBiZSBlcXVhbCB0bwotICAgICAgOmM6ZGF0YTpgbGVuYC4KLQotICAgLi4gYzptZW1iZXI6OiBQeV9zc2l6ZV90ICpzdHJpZGVzCi0KLSAgICAgIEFuIGFycmF5IG9mIDpjOnR5cGU6YFB5X3NzaXplX3RgXHMgdGhlIGxlbmd0aCBvZiA6YzpkYXRhOmBuZGltYCBnaXZpbmcgdGhlCi0gICAgICBudW1iZXIgb2YgYnl0ZXMgdG8gc2tpcCB0byBnZXQgdG8gYSBuZXcgZWxlbWVudCBpbiBlYWNoIGRpbWVuc2lvbi4KLQotICAgLi4gYzptZW1iZXI6OiBQeV9zc2l6ZV90ICpzdWJvZmZzZXRzCi0KLSAgICAgIEFuIGFycmF5IG9mIDpjOnR5cGU6YFB5X3NzaXplX3RgXHMgdGhlIGxlbmd0aCBvZiA6YzpkYXRhOmBuZGltYC4gIElmIHRoZXNlCi0gICAgICBzdWJvZmZzZXQgbnVtYmVycyBhcmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDAsIHRoZW4gdGhlIHZhbHVlIHN0b3JlZAotICAgICAgYWxvbmcgdGhlIGluZGljYXRlZCBkaW1lbnNpb24gaXMgYSBwb2ludGVyIGFuZCB0aGUgc3Vib2Zmc2V0IHZhbHVlCi0gICAgICBkaWN0YXRlcyBob3cgbWFueSBieXRlcyB0byBhZGQgdG8gdGhlIHBvaW50ZXIgYWZ0ZXIgZGUtcmVmZXJlbmNpbmcuIEEKLSAgICAgIHN1Ym9mZnNldCB2YWx1ZSB0aGF0IGl0IG5lZ2F0aXZlIGluZGljYXRlcyB0aGF0IG5vIGRlLXJlZmVyZW5jaW5nIHNob3VsZAotICAgICAgb2NjdXIgKHN0cmlkaW5nIGluIGEgY29udGlndW91cyBtZW1vcnkgYmxvY2spLgotCi0gICAgICBIZXJlIGlzIGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgcG9pbnRlciB0byB0aGUgZWxlbWVudCBpbiBhbiBOLUQgYXJyYXkKLSAgICAgIHBvaW50ZWQgdG8gYnkgYW4gTi1kaW1lbnNpb25hbCBpbmRleCB3aGVuIHRoZXJlIGFyZSBib3RoIG5vbi1OVUxMIHN0cmlkZXMKLSAgICAgIGFuZCBzdWJvZmZzZXRzOjoKLQotICAgICAgICAgIHZvaWQgKmdldF9pdGVtX3BvaW50ZXIoaW50IG5kaW0sIHZvaWQgKmJ1ZiwgUHlfc3NpemVfdCAqc3RyaWRlcywKLSAgICAgICAgICAgICAgUHlfc3NpemVfdCAqc3Vib2Zmc2V0cywgUHlfc3NpemVfdCAqaW5kaWNlcykgewotICAgICAgICAgICAgICBjaGFyICpwb2ludGVyID0gKGNoYXIqKWJ1ZjsKLSAgICAgICAgICAgICAgaW50IGk7Ci0gICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuZGltOyBpKyspIHsKLSAgICAgICAgICAgICAgICAgIHBvaW50ZXIgKz0gc3RyaWRlc1tpXSAqIGluZGljZXNbaV07Ci0gICAgICAgICAgICAgICAgICBpZiAoc3Vib2Zmc2V0c1tpXSA+PTAgKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgcG9pbnRlciA9ICooKGNoYXIqKilwb2ludGVyKSArIHN1Ym9mZnNldHNbaV07Ci0gICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgcmV0dXJuICh2b2lkKilwb2ludGVyOwotICAgICAgICAgICB9Ci0KKyAgICAgIEFuIGluZGljYXRvciBvZiB3aGV0aGVyIHRoZSBidWZmZXIgaXMgcmVhZC1vbmx5LiBUaGlzIGZpZWxkIGlzIGNvbnRyb2xsZWQKKyAgICAgIGJ5IHRoZSA6YzptYWNybzpgUHlCVUZfV1JJVEFCTEVgIGZsYWcuCiAKICAgIC4uIGM6bWVtYmVyOjogUHlfc3NpemVfdCBpdGVtc2l6ZQogCi0gICAgICBUaGlzIGlzIGEgc3RvcmFnZSBmb3IgdGhlIGl0ZW1zaXplIChpbiBieXRlcykgb2YgZWFjaCBlbGVtZW50IG9mIHRoZQotICAgICAgc2hhcmVkIG1lbW9yeS4gSXQgaXMgdGVjaG5pY2FsbHkgdW4tbmVjZXNzYXJ5IGFzIGl0IGNhbiBiZSBvYnRhaW5lZAotICAgICAgdXNpbmcgOmM6ZnVuYzpgUHlCdWZmZXJfU2l6ZUZyb21Gb3JtYXRgLCBob3dldmVyIGFuIGV4cG9ydGVyIG1heSBrbm93Ci0gICAgICB0aGlzIGluZm9ybWF0aW9uIHdpdGhvdXQgcGFyc2luZyB0aGUgZm9ybWF0IHN0cmluZyBhbmQgaXQgaXMgbmVjZXNzYXJ5Ci0gICAgICB0byBrbm93IHRoZSBpdGVtc2l6ZSBmb3IgcHJvcGVyIGludGVycHJldGF0aW9uIG9mIHN0cmlkaW5nLiBUaGVyZWZvcmUsCi0gICAgICBzdG9yaW5nIGl0IGlzIG1vcmUgY29udmVuaWVudCBhbmQgZmFzdGVyLgorICAgICAgSXRlbSBzaXplIGluIGJ5dGVzIG9mIGEgc2luZ2xlIGVsZW1lbnQuIFNhbWUgYXMgdGhlIHZhbHVlIG9mIDpmdW5jOmBzdHJ1Y3QuY2FsY3NpemVgCisgICAgICBjYWxsZWQgb24gbm9uLU5VTEwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLmZvcm1hdGAgdmFsdWVzLgogCi0gICAuLiBjOm1lbWJlcjo6IHZvaWQgKmludGVybmFsCisgICAgICBJbXBvcnRhbnQgZXhjZXB0aW9uOiBJZiBhIGNvbnN1bWVyIHJlcXVlc3RzIGEgYnVmZmVyIHdpdGhvdXQgdGhlCisgICAgICA6YzptYWNybzpgUHlCVUZfRk9STUFUYCBmbGFnLCA6YzptZW1iZXI6YH5QeV9CdWZmZXIuZm9ybWF0YCB3aWxsCisgICAgICBiZSBzZXQgdG8gICpOVUxMKiwgIGJ1dCA6YzptZW1iZXI6YH5QeV9idWZmZXIuaXRlbXNpemVgIHN0aWxsIGhhcworICAgICAgdGhlIHZhbHVlIGZvciB0aGUgb3JpZ2luYWwgZm9ybWF0LgorCisgICAgICBJZiA6YzptZW1iZXI6YH5QeV9CdWZmZXIuc2hhcGVgIGlzIHByZXNlbnQsIHRoZSBlcXVhbGl0eQorICAgICAgYGBwcm9kdWN0KHNoYXBlKSAqIGl0ZW1zaXplID09IGxlbmBgIHN0aWxsIGhvbGRzIGFuZCB0aGUgY29uc3VtZXIKKyAgICAgIGNhbiB1c2UgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLml0ZW1zaXplYCB0byBuYXZpZ2F0ZSB0aGUgYnVmZmVyLgorCisgICAgICBJZiA6YzptZW1iZXI6YH5QeV9CdWZmZXIuc2hhcGVgIGlzICpOVUxMKiBhcyBhIHJlc3VsdCBvZiBhIDpjOm1hY3JvOmBQeUJVRl9TSU1QTEVgCisgICAgICBvciBhIDpjOm1hY3JvOmBQeUJVRl9XUklUQUJMRWAgcmVxdWVzdCwgdGhlIGNvbnN1bWVyIG11c3QgZGlzcmVnYXJkCisgICAgICA6YzptZW1iZXI6YH5QeV9idWZmZXIuaXRlbXNpemVgIGFuZCBhc3N1bWUgYGBpdGVtc2l6ZSA9PSAxYGAuCisKKyAgIC4uIGM6bWVtYmVyOjogY29uc3QgY2hhciBcKmZvcm1hdAorCisgICAgICBBICpOVUwqIHRlcm1pbmF0ZWQgc3RyaW5nIGluIDptb2Q6YHN0cnVjdGAgbW9kdWxlIHN0eWxlIHN5bnRheCBkZXNjcmliaW5nCisgICAgICB0aGUgY29udGVudHMgb2YgYSBzaW5nbGUgaXRlbS4gSWYgdGhpcyBpcyAqTlVMTCosIGBgIkIiYGAgKHVuc2lnbmVkIGJ5dGVzKQorICAgICAgaXMgYXNzdW1lZC4KKworICAgICAgVGhpcyBmaWVsZCBpcyBjb250cm9sbGVkIGJ5IHRoZSA6YzptYWNybzpgUHlCVUZfRk9STUFUYCBmbGFnLgorCisgICAuLiBjOm1lbWJlcjo6IGludCBuZGltCisKKyAgICAgIFRoZSBudW1iZXIgb2YgZGltZW5zaW9ucyB0aGUgbWVtb3J5IHJlcHJlc2VudHMgYXMgYW4gbi1kaW1lbnNpb25hbCBhcnJheS4KKyAgICAgIElmIGl0IGlzIDAsIDpjOm1lbWJlcjpgflB5X0J1ZmZlci5idWZgIHBvaW50cyB0byBhIHNpbmdsZSBpdGVtIHJlcHJlc2VudGluZworICAgICAgYSBzY2FsYXIuIEluIHRoaXMgY2FzZSwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLnNoYXBlYCwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLnN0cmlkZXNgCisgICAgICBhbmQgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLnN1Ym9mZnNldHNgIE1VU1QgYmUgKk5VTEwqLgorCisgICAgICBUaGUgbWFjcm8gOmM6bWFjcm86YFB5QlVGX01BWF9ORElNYCBsaW1pdHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIGRpbWVuc2lvbnMKKyAgICAgIHRvIDY0LiBFeHBvcnRlcnMgTVVTVCByZXNwZWN0IHRoaXMgbGltaXQsIGNvbnN1bWVycyBvZiBtdWx0aS1kaW1lbnNpb25hbAorICAgICAgYnVmZmVycyBTSE9VTEQgYmUgYWJsZSB0byBoYW5kbGUgdXAgdG8gOmM6bWFjcm86YFB5QlVGX01BWF9ORElNYCBkaW1lbnNpb25zLgorCisgICAuLiBjOm1lbWJlcjo6IFB5X3NzaXplX3QgXCpzaGFwZQorCisgICAgICBBbiBhcnJheSBvZiA6Yzp0eXBlOmBQeV9zc2l6ZV90YCBvZiBsZW5ndGggOmM6bWVtYmVyOmB+UHlfYnVmZmVyLm5kaW1gCisgICAgICBpbmRpY2F0aW5nIHRoZSBzaGFwZSBvZiB0aGUgbWVtb3J5IGFzIGFuIG4tZGltZW5zaW9uYWwgYXJyYXkuIE5vdGUgdGhhdAorICAgICAgYGBzaGFwZVswXSAqIC4uLiAqIHNoYXBlW25kaW0tMV0gKiBpdGVtc2l6ZWBgIE1VU1QgYmUgZXF1YWwgdG8KKyAgICAgIDpjOm1lbWJlcjpgflB5X2J1ZmZlci5sZW5gLgorCisgICAgICBTaGFwZSB2YWx1ZXMgYXJlIHJlc3RyaWN0ZWQgdG8gYGBzaGFwZVtuXSA+PSAwYGAuIFRoZSBjYXNlCisgICAgICBgYHNoYXBlW25dID09IDBgYCByZXF1aXJlcyBzcGVjaWFsIGF0dGVudGlvbi4gU2VlIGBjb21wbGV4IGFycmF5c2BfCisgICAgICBmb3IgZnVydGhlciBpbmZvcm1hdGlvbi4KKworICAgICAgVGhlIHNoYXBlIGFycmF5IGlzIHJlYWQtb25seSBmb3IgdGhlIGNvbnN1bWVyLgorCisgICAuLiBjOm1lbWJlcjo6IFB5X3NzaXplX3QgXCpzdHJpZGVzCisKKyAgICAgIEFuIGFycmF5IG9mIDpjOnR5cGU6YFB5X3NzaXplX3RgIG9mIGxlbmd0aCA6YzptZW1iZXI6YH5QeV9idWZmZXIubmRpbWAKKyAgICAgIGdpdmluZyB0aGUgbnVtYmVyIG9mIGJ5dGVzIHRvIHNraXAgdG8gZ2V0IHRvIGEgbmV3IGVsZW1lbnQgaW4gZWFjaAorICAgICAgZGltZW5zaW9uLgorCisgICAgICBTdHJpZGUgdmFsdWVzIGNhbiBiZSBhbnkgaW50ZWdlci4gRm9yIHJlZ3VsYXIgYXJyYXlzLCBzdHJpZGVzIGFyZQorICAgICAgdXN1YWxseSBwb3NpdGl2ZSwgYnV0IGEgY29uc3VtZXIgTVVTVCBiZSBhYmxlIHRvIGhhbmRsZSB0aGUgY2FzZQorICAgICAgYGBzdHJpZGVzW25dIDw9IDBgYC4gU2VlIGBjb21wbGV4IGFycmF5c2BfIGZvciBmdXJ0aGVyIGluZm9ybWF0aW9uLgorCisgICAgICBUaGUgc3RyaWRlcyBhcnJheSBpcyByZWFkLW9ubHkgZm9yIHRoZSBjb25zdW1lci4KKworICAgLi4gYzptZW1iZXI6OiBQeV9zc2l6ZV90IFwqc3Vib2Zmc2V0cworCisgICAgICBBbiBhcnJheSBvZiA6Yzp0eXBlOmBQeV9zc2l6ZV90YCBvZiBsZW5ndGggOmM6bWVtYmVyOmB+UHlfYnVmZmVyLm5kaW1gLgorICAgICAgSWYgYGBzdWJvZmZzZXRzW25dID49IDBgYCwgdGhlIHZhbHVlcyBzdG9yZWQgYWxvbmcgdGhlIG50aCBkaW1lbnNpb24gYXJlCisgICAgICBwb2ludGVycyBhbmQgdGhlIHN1Ym9mZnNldCB2YWx1ZSBkaWN0YXRlcyBob3cgbWFueSBieXRlcyB0byBhZGQgdG8gZWFjaAorICAgICAgcG9pbnRlciBhZnRlciBkZS1yZWZlcmVuY2luZy4gQSBzdWJvZmZzZXQgdmFsdWUgdGhhdCBpcyBuZWdhdGl2ZQorICAgICAgaW5kaWNhdGVzIHRoYXQgbm8gZGUtcmVmZXJlbmNpbmcgc2hvdWxkIG9jY3VyIChzdHJpZGluZyBpbiBhIGNvbnRpZ3VvdXMKKyAgICAgIG1lbW9yeSBibG9jaykuCisKKyAgICAgIFRoaXMgdHlwZSBvZiBhcnJheSByZXByZXNlbnRhdGlvbiBpcyB1c2VkIGJ5IHRoZSBQeXRob24gSW1hZ2luZyBMaWJyYXJ5CisgICAgICAoUElMKS4gU2VlIGBjb21wbGV4IGFycmF5c2BfIGZvciBmdXJ0aGVyIGluZm9ybWF0aW9uIGhvdyB0byBhY2Nlc3MgZWxlbWVudHMKKyAgICAgIG9mIHN1Y2ggYW4gYXJyYXkuCisKKyAgICAgIFRoZSBzdWJvZmZzZXRzIGFycmF5IGlzIHJlYWQtb25seSBmb3IgdGhlIGNvbnN1bWVyLgorCisgICAuLiBjOm1lbWJlcjo6IHZvaWQgXCppbnRlcm5hbAogCiAgICAgICBUaGlzIGlzIGZvciB1c2UgaW50ZXJuYWxseSBieSB0aGUgZXhwb3J0aW5nIG9iamVjdC4gRm9yIGV4YW1wbGUsIHRoaXMKICAgICAgIG1pZ2h0IGJlIHJlLWNhc3QgYXMgYW4gaW50ZWdlciBieSB0aGUgZXhwb3J0ZXIgYW5kIHVzZWQgdG8gc3RvcmUgZmxhZ3MKICAgICAgIGFib3V0IHdoZXRoZXIgb3Igbm90IHRoZSBzaGFwZSwgc3RyaWRlcywgYW5kIHN1Ym9mZnNldHMgYXJyYXlzIG11c3QgYmUKLSAgICAgIGZyZWVkIHdoZW4gdGhlIGJ1ZmZlciBpcyByZWxlYXNlZC4gVGhlIGNvbnN1bWVyIHNob3VsZCBuZXZlciBhbHRlciB0aGlzCisgICAgICBmcmVlZCB3aGVuIHRoZSBidWZmZXIgaXMgcmVsZWFzZWQuIFRoZSBjb25zdW1lciBNVVNUIE5PVCBhbHRlciB0aGlzCiAgICAgICB2YWx1ZS4KIAorLi4gX2J1ZmZlci1yZXF1ZXN0LXR5cGVzOgorCitCdWZmZXIgcmVxdWVzdCB0eXBlcworPT09PT09PT09PT09PT09PT09PT0KKworQnVmZmVycyBhcmUgdXN1YWxseSBvYnRhaW5lZCBieSBzZW5kaW5nIGEgYnVmZmVyIHJlcXVlc3QgdG8gYW4gZXhwb3J0aW5nCitvYmplY3QgdmlhIDpjOmZ1bmM6YFB5T2JqZWN0X0dldEJ1ZmZlcmAuIFNpbmNlIHRoZSBjb21wbGV4aXR5IG9mIHRoZSBsb2dpY2FsCitzdHJ1Y3R1cmUgb2YgdGhlIG1lbW9yeSBjYW4gdmFyeSBkcmFzdGljYWxseSwgdGhlIGNvbnN1bWVyIHVzZXMgdGhlICpmbGFncyoKK2FyZ3VtZW50IHRvIHNwZWNpZnkgdGhlIGV4YWN0IGJ1ZmZlciB0eXBlIGl0IGNhbiBoYW5kbGUuCisKK0FsbCA6YzpkYXRhOmBQeV9idWZmZXJgIGZpZWxkcyBhcmUgdW5hbWJpZ3VvdXNseSBkZWZpbmVkIGJ5IHRoZSByZXF1ZXN0Cit0eXBlLgorCityZXF1ZXN0LWluZGVwZW5kZW50IGZpZWxkcworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KK1RoZSBmb2xsb3dpbmcgZmllbGRzIGFyZSBub3QgaW5mbHVlbmNlZCBieSAqZmxhZ3MqIGFuZCBtdXN0IGFsd2F5cyBiZSBmaWxsZWQgaW4KK3dpdGggdGhlIGNvcnJlY3QgdmFsdWVzOiA6YzptZW1iZXI6YH5QeV9idWZmZXIub2JqYCwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLmJ1ZmAsCis6YzptZW1iZXI6YH5QeV9idWZmZXIubGVuYCwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLml0ZW1zaXplYCwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLm5kaW1gLgorCisKK3JlYWRvbmx5LCBmb3JtYXQKK35+fn5+fn5+fn5+fn5+fn4KKworICAgLi4gYzptYWNybzo6IFB5QlVGX1dSSVRBQkxFCisKKyAgICAgIENvbnRyb2xzIHRoZSA6YzptZW1iZXI6YH5QeV9idWZmZXIucmVhZG9ubHlgIGZpZWxkLiBJZiBzZXQsIHRoZSBleHBvcnRlcgorICAgICAgTVVTVCBwcm92aWRlIGEgd3JpdGFibGUgYnVmZmVyIG9yIGVsc2UgcmVwb3J0IGZhaWx1cmUuIE90aGVyd2lzZSwgdGhlCisgICAgICBleHBvcnRlciBNQVkgcHJvdmlkZSBlaXRoZXIgYSByZWFkLW9ubHkgb3Igd3JpdGFibGUgYnVmZmVyLCBidXQgdGhlIGNob2ljZQorICAgICAgTVVTVCBiZSBjb25zaXN0ZW50IGZvciBhbGwgY29uc3VtZXJzLgorCisgICAuLiBjOm1hY3JvOjogUHlCVUZfRk9STUFUCisKKyAgICAgIENvbnRyb2xzIHRoZSA6YzptZW1iZXI6YH5QeV9idWZmZXIuZm9ybWF0YCBmaWVsZC4gSWYgc2V0LCB0aGlzIGZpZWxkIE1VU1QKKyAgICAgIGJlIGZpbGxlZCBpbiBjb3JyZWN0bHkuIE90aGVyd2lzZSwgdGhpcyBmaWVsZCBNVVNUIGJlICpOVUxMKi4KKworCis6YzptYWNybzpgUHlCVUZfV1JJVEFCTEVgIGNhbiBiZSBcfCdkIHRvIGFueSBvZiB0aGUgZmxhZ3MgaW4gdGhlIG5leHQgc2VjdGlvbi4KK1NpbmNlIDpjOm1hY3JvOmBQeUJVRl9TSU1QTEVgIGlzIGRlZmluZWQgYXMgMCwgOmM6bWFjcm86YFB5QlVGX1dSSVRBQkxFYAorY2FuIGJlIHVzZWQgYXMgYSBzdGFuZC1hbG9uZSBmbGFnIHRvIHJlcXVlc3QgYSBzaW1wbGUgd3JpdGFibGUgYnVmZmVyLgorCis6YzptYWNybzpgUHlCVUZfRk9STUFUYCBjYW4gYmUgXHwnZCB0byBhbnkgb2YgdGhlIGZsYWdzIGV4Y2VwdCA6YzptYWNybzpgUHlCVUZfU0lNUExFYC4KK1RoZSBsYXR0ZXIgYWxyZWFkeSBpbXBsaWVzIGZvcm1hdCBgYEJgYCAodW5zaWduZWQgYnl0ZXMpLgorCisKK3NoYXBlLCBzdHJpZGVzLCBzdWJvZmZzZXRzCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCitUaGUgZmxhZ3MgdGhhdCBjb250cm9sIHRoZSBsb2dpY2FsIHN0cnVjdHVyZSBvZiB0aGUgbWVtb3J5IGFyZSBsaXN0ZWQKK2luIGRlY3JlYXNpbmcgb3JkZXIgb2YgY29tcGxleGl0eS4gTm90ZSB0aGF0IGVhY2ggZmxhZyBjb250YWlucyBhbGwgYml0cworb2YgdGhlIGZsYWdzIGJlbG93IGl0LgorCisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCit8ICBSZXF1ZXN0ICAgICAgICAgICAgICAgICAgICB8IHNoYXBlIHwgc3RyaWRlcyB8IHN1Ym9mZnNldHMgfAorKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rPT09PT09PT09Kz09PT09PT09PT09PSsKK3wgLi4gYzptYWNybzo6IFB5QlVGX0lORElSRUNUIHwgIHllcyAgfCAgIHllcyAgIHwgaWYgbmVlZGVkICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tKworfCAuLiBjOm1hY3JvOjogUHlCVUZfU1RSSURFUyAgfCAgeWVzICB8ICAgeWVzICAgfCAgICBOVUxMICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCit8IC4uIGM6bWFjcm86OiBQeUJVRl9ORCAgICAgICB8ICB5ZXMgIHwgICBOVUxMICB8ICAgIE5VTEwgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKK3wgLi4gYzptYWNybzo6IFB5QlVGX1NJTVBMRSAgIHwgIE5VTEwgfCAgIE5VTEwgIHwgICAgTlVMTCAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tKworCisKK2NvbnRpZ3VpdHkgcmVxdWVzdHMKK35+fn5+fn5+fn5+fn5+fn5+fn4KKworQyBvciBGb3J0cmFuIGNvbnRpZ3VpdHkgY2FuIGJlIGV4cGxpY2l0bHkgcmVxdWVzdGVkLCB3aXRoIGFuZCB3aXRob3V0IHN0cmlkZQoraW5mb3JtYXRpb24uIFdpdGhvdXQgc3RyaWRlIGluZm9ybWF0aW9uLCB0aGUgYnVmZmVyIG11c3QgYmUgQy1jb250aWd1b3VzLgorCisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tKworfCAgUmVxdWVzdCAgICAgICAgICAgICAgICAgICAgICAgICAgfCBzaGFwZSB8IHN0cmlkZXMgfCBzdWJvZmZzZXRzIHwgY29udGlnIHwKKys9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09Kz09PT09PT09PSs9PT09PT09PT09PT0rPT09PT09PT0rCit8IC4uIGM6bWFjcm86OiBQeUJVRl9DX0NPTlRJR1VPVVMgICB8ICB5ZXMgIHwgICB5ZXMgICB8ICAgIE5VTEwgICAgfCAgIEMgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgLi4gYzptYWNybzo6IFB5QlVGX0ZfQ09OVElHVU9VUyAgIHwgIHllcyAgfCAgIHllcyAgIHwgICAgTlVMTCAgICB8ICAgRiAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tKworfCAuLiBjOm1hY3JvOjogUHlCVUZfQU5ZX0NPTlRJR1VPVVMgfCAgeWVzICB8ICAgeWVzICAgfCAgICBOVUxMICAgIHwgQyBvciBGIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0rCit8IC4uIGM6bWFjcm86OiBQeUJVRl9ORCAgICAgICAgICAgICB8ICB5ZXMgIHwgICBOVUxMICB8ICAgIE5VTEwgICAgfCAgIEMgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLSsKKworCitjb21wb3VuZCByZXF1ZXN0cworfn5+fn5+fn5+fn5+fn5+fn4KKworQWxsIHBvc3NpYmxlIHJlcXVlc3RzIGFyZSBmdWxseSBkZWZpbmVkIGJ5IHNvbWUgY29tYmluYXRpb24gb2YgdGhlIGZsYWdzIGluCit0aGUgcHJldmlvdXMgc2VjdGlvbi4gRm9yIGNvbnZlbmllbmNlLCB0aGUgYnVmZmVyIHByb3RvY29sIHByb3ZpZGVzIGZyZXF1ZW50bHkKK3VzZWQgY29tYmluYXRpb25zIGFzIHNpbmdsZSBmbGFncy4KKworSW4gdGhlIGZvbGxvd2luZyB0YWJsZSAqVSogc3RhbmRzIGZvciB1bmRlZmluZWQgY29udGlndWl0eS4gVGhlIGNvbnN1bWVyIHdvdWxkCitoYXZlIHRvIGNhbGwgOmM6ZnVuYzpgUHlCdWZmZXJfSXNDb250aWd1b3VzYCB0byBkZXRlcm1pbmUgY29udGlndWl0eS4KKworCisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tKworfCAgUmVxdWVzdCAgICAgICAgICAgICAgICAgICAgICB8IHNoYXBlIHwgc3RyaWRlcyB8IHN1Ym9mZnNldHMgfCBjb250aWcgfCByZWFkb25seSB8IGZvcm1hdCB8CisrPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09Kz09PT09PT09PSs9PT09PT09PT09PT0rPT09PT09PT0rPT09PT09PT09PSs9PT09PT09PSsKK3wgLi4gYzptYWNybzo6IFB5QlVGX0ZVTEwgICAgICAgfCAgeWVzICB8ICAgeWVzICAgfCBpZiBuZWVkZWQgIHwgICBVICAgIHwgICAgIDAgICAgfCAgeWVzICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0rCit8IC4uIGM6bWFjcm86OiBQeUJVRl9GVUxMX1JPICAgIHwgIHllcyAgfCAgIHllcyAgIHwgaWYgbmVlZGVkICB8ICAgVSAgICB8ICAxIG9yIDAgIHwgIHllcyAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tKworfCAuLiBjOm1hY3JvOjogUHlCVUZfUkVDT1JEUyAgICB8ICB5ZXMgIHwgICB5ZXMgICB8ICAgIE5VTEwgICAgfCAgIFUgICAgfCAgICAgMCAgICB8ICB5ZXMgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgLi4gYzptYWNybzo6IFB5QlVGX1JFQ09SRFNfUk8gfCAgeWVzICB8ICAgeWVzICAgfCAgICBOVUxMICAgIHwgICBVICAgIHwgIDEgb3IgMCAgfCAgeWVzICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0rCit8IC4uIGM6bWFjcm86OiBQeUJVRl9TVFJJREVEICAgIHwgIHllcyAgfCAgIHllcyAgIHwgICAgTlVMTCAgICB8ICAgVSAgICB8ICAgICAwICAgIHwgIE5VTEwgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tKworfCAuLiBjOm1hY3JvOjogUHlCVUZfU1RSSURFRF9STyB8ICB5ZXMgIHwgICB5ZXMgICB8ICAgIE5VTEwgICAgfCAgIFUgICAgfCAgMSBvciAwICB8ICBOVUxMICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgLi4gYzptYWNybzo6IFB5QlVGX0NPTlRJRyAgICAgfCAgeWVzICB8ICAgTlVMTCAgfCAgICBOVUxMICAgIHwgICBDICAgIHwgICAgIDAgICAgfCAgTlVMTCAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0rCit8IC4uIGM6bWFjcm86OiBQeUJVRl9DT05USUdfUk8gIHwgIHllcyAgfCAgIE5VTEwgIHwgICAgTlVMTCAgICB8ICAgQyAgICB8ICAxIG9yIDAgIHwgIE5VTEwgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tKworCisKK0NvbXBsZXggYXJyYXlzCis9PT09PT09PT09PT09PQorCitOdW1QeS1zdHlsZTogc2hhcGUgYW5kIHN0cmlkZXMKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCitUaGUgbG9naWNhbCBzdHJ1Y3R1cmUgb2YgTnVtUHktc3R5bGUgYXJyYXlzIGlzIGRlZmluZWQgYnkgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLml0ZW1zaXplYCwKKzpjOm1lbWJlcjpgflB5X2J1ZmZlci5uZGltYCwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLnNoYXBlYCBhbmQgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLnN0cmlkZXNgLgorCitJZiBgYG5kaW0gPT0gMGBgLCB0aGUgbWVtb3J5IGxvY2F0aW9uIHBvaW50ZWQgdG8gYnkgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLmJ1ZmAgaXMKK2ludGVycHJldGVkIGFzIGEgc2NhbGFyIG9mIHNpemUgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLml0ZW1zaXplYC4gSW4gdGhhdCBjYXNlLAorYm90aCA6YzptZW1iZXI6YH5QeV9idWZmZXIuc2hhcGVgIGFuZCA6YzptZW1iZXI6YH5QeV9idWZmZXIuc3RyaWRlc2AgYXJlICpOVUxMKi4KKworSWYgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLnN0cmlkZXNgIGlzICpOVUxMKiwgdGhlIGFycmF5IGlzIGludGVycHJldGVkIGFzCithIHN0YW5kYXJkIG4tZGltZW5zaW9uYWwgQy1hcnJheS4gT3RoZXJ3aXNlLCB0aGUgY29uc3VtZXIgbXVzdCBhY2Nlc3MgYW4KK24tZGltZW5zaW9uYWwgYXJyYXkgYXMgZm9sbG93czoKKworICAgYGBwdHIgPSAoY2hhciAqKWJ1ZiArIGluZGljZXNbMF0gKiBzdHJpZGVzWzBdICsgLi4uICsgaW5kaWNlc1tuLTFdICogc3RyaWRlc1tuLTFdYGAKKyAgIGBgaXRlbSA9ICooKHR5cGVvZihpdGVtKSAqKXB0cik7YGAKKworCitBcyBub3RlZCBhYm92ZSwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLmJ1ZmAgY2FuIHBvaW50IHRvIGFueSBsb2NhdGlvbiB3aXRoaW4KK3RoZSBhY3R1YWwgbWVtb3J5IGJsb2NrLiBBbiBleHBvcnRlciBjYW4gY2hlY2sgdGhlIHZhbGlkaXR5IG9mIGEgYnVmZmVyIHdpdGgKK3RoaXMgZnVuY3Rpb246CisKKy4uIGNvZGUtYmxvY2s6OiBweXRob24KKworICAgZGVmIHZlcmlmeV9zdHJ1Y3R1cmUobWVtbGVuLCBpdGVtc2l6ZSwgbmRpbSwgc2hhcGUsIHN0cmlkZXMsIG9mZnNldCk6CisgICAgICAgIiIiVmVyaWZ5IHRoYXQgdGhlIHBhcmFtZXRlcnMgcmVwcmVzZW50IGEgdmFsaWQgYXJyYXkgd2l0aGluCisgICAgICAgICAgdGhlIGJvdW5kcyBvZiB0aGUgYWxsb2NhdGVkIG1lbW9yeToKKyAgICAgICAgICAgICAgY2hhciAqbWVtOiBzdGFydCBvZiB0aGUgcGh5c2ljYWwgbWVtb3J5IGJsb2NrCisgICAgICAgICAgICAgIG1lbWxlbjogbGVuZ3RoIG9mIHRoZSBwaHlzaWNhbCBtZW1vcnkgYmxvY2sKKyAgICAgICAgICAgICAgb2Zmc2V0OiAoY2hhciAqKWJ1ZiAtIG1lbQorICAgICAgICIiIgorICAgICAgIGlmIG9mZnNldCAlIGl0ZW1zaXplOgorICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICBpZiBvZmZzZXQgPCAwIG9yIG9mZnNldCtpdGVtc2l6ZSA+IG1lbWxlbjoKKyAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgaWYgYW55KHYgJSBpdGVtc2l6ZSBmb3IgdiBpbiBzdHJpZGVzKToKKyAgICAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICAgICBpZiBuZGltIDw9IDA6CisgICAgICAgICAgIHJldHVybiBuZGltID09IDAgYW5kIG5vdCBzaGFwZSBhbmQgbm90IHN0cmlkZXMKKyAgICAgICBpZiAwIGluIHNoYXBlOgorICAgICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgICAgaW1pbiA9IHN1bShzdHJpZGVzW2pdKihzaGFwZVtqXS0xKSBmb3IgaiBpbiByYW5nZShuZGltKQorICAgICAgICAgICAgICAgICAgaWYgc3RyaWRlc1tqXSA8PSAwKQorICAgICAgIGltYXggPSBzdW0oc3RyaWRlc1tqXSooc2hhcGVbal0tMSkgZm9yIGogaW4gcmFuZ2UobmRpbSkKKyAgICAgICAgICAgICAgICAgIGlmIHN0cmlkZXNbal0gPiAwKQorCisgICAgICAgcmV0dXJuIDAgPD0gb2Zmc2V0K2ltaW4gYW5kIG9mZnNldCtpbWF4K2l0ZW1zaXplIDw9IG1lbWxlbgorCisKK1BJTC1zdHlsZTogc2hhcGUsIHN0cmlkZXMgYW5kIHN1Ym9mZnNldHMKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworSW4gYWRkaXRpb24gdG8gdGhlIHJlZ3VsYXIgaXRlbXMsIFBJTC1zdHlsZSBhcnJheXMgY2FuIGNvbnRhaW4gcG9pbnRlcnMKK3RoYXQgbXVzdCBiZSBmb2xsb3dlZCBpbiBvcmRlciB0byBnZXQgdG8gdGhlIG5leHQgZWxlbWVudCBpbiBhIGRpbWVuc2lvbi4KK0ZvciBleGFtcGxlLCB0aGUgcmVndWxhciB0aHJlZS1kaW1lbnNpb25hbCBDLWFycmF5IGBgY2hhciB2WzJdWzJdWzNdYGAgY2FuCithbHNvIGJlIHZpZXdlZCBhcyBhbiBhcnJheSBvZiAyIHBvaW50ZXJzIHRvIDIgdHdvLWRpbWVuc2lvbmFsIGFycmF5czoKK2BgY2hhciAoKnZbMl0pWzJdWzNdYGAuIEluIHN1Ym9mZnNldHMgcmVwcmVzZW50YXRpb24sIHRob3NlIHR3byBwb2ludGVycworY2FuIGJlIGVtYmVkZGVkIGF0IHRoZSBzdGFydCBvZiA6YzptZW1iZXI6YH5QeV9idWZmZXIuYnVmYCwgcG9pbnRpbmcKK3RvIHR3byBgYGNoYXIgeFsyXVszXWBgIGFycmF5cyB0aGF0IGNhbiBiZSBsb2NhdGVkIGFueXdoZXJlIGluIG1lbW9yeS4KKworCitIZXJlIGlzIGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgcG9pbnRlciB0byB0aGUgZWxlbWVudCBpbiBhbiBOLUQgYXJyYXkKK3BvaW50ZWQgdG8gYnkgYW4gTi1kaW1lbnNpb25hbCBpbmRleCB3aGVuIHRoZXJlIGFyZSBib3RoIG5vbi1OVUxMIHN0cmlkZXMKK2FuZCBzdWJvZmZzZXRzOjoKKworICAgdm9pZCAqZ2V0X2l0ZW1fcG9pbnRlcihpbnQgbmRpbSwgdm9pZCAqYnVmLCBQeV9zc2l6ZV90ICpzdHJpZGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpzdWJvZmZzZXRzLCBQeV9zc2l6ZV90ICppbmRpY2VzKSB7CisgICAgICAgY2hhciAqcG9pbnRlciA9IChjaGFyKilidWY7CisgICAgICAgaW50IGk7CisgICAgICAgZm9yIChpID0gMDsgaSA8IG5kaW07IGkrKykgeworICAgICAgICAgICBwb2ludGVyICs9IHN0cmlkZXNbaV0gKiBpbmRpY2VzW2ldOworICAgICAgICAgICBpZiAoc3Vib2Zmc2V0c1tpXSA+PTAgKSB7CisgICAgICAgICAgICAgICBwb2ludGVyID0gKigoY2hhcioqKXBvaW50ZXIpICsgc3Vib2Zmc2V0c1tpXTsKKyAgICAgICAgICAgfQorICAgICAgIH0KKyAgICAgICByZXR1cm4gKHZvaWQqKXBvaW50ZXI7CisgICB9CisKIAogQnVmZmVyLXJlbGF0ZWQgZnVuY3Rpb25zCiA9PT09PT09PT09PT09PT09PT09PT09PT0KIAotCiAuLiBjOmZ1bmN0aW9uOjogaW50IFB5T2JqZWN0X0NoZWNrQnVmZmVyKFB5T2JqZWN0ICpvYmopCiAKICAgIFJldHVybiAxIGlmICpvYmoqIHN1cHBvcnRzIHRoZSBidWZmZXIgaW50ZXJmYWNlIG90aGVyd2lzZSAwLiAgV2hlbiAxIGlzCkBAIC0xNzUsMTUyICs0MjEsNzEgQEAKICAgIHN1Y2NlZWQuCiAKIAotLi4gYzpmdW5jdGlvbjo6IGludCBQeU9iamVjdF9HZXRCdWZmZXIoUHlPYmplY3QgKm9iaiwgUHlfYnVmZmVyICp2aWV3LCBpbnQgZmxhZ3MpCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5T2JqZWN0X0dldEJ1ZmZlcihQeU9iamVjdCAqZXhwb3J0ZXIsIFB5X2J1ZmZlciAqdmlldywgaW50IGZsYWdzKQogCi0gICAgICBFeHBvcnQgYSB2aWV3IG92ZXIgc29tZSBpbnRlcm5hbCBkYXRhIGZyb20gdGhlIHRhcmdldCBvYmplY3QgKm9iaiouCi0gICAgICAqb2JqKiBtdXN0IG5vdCBiZSBOVUxMLCBhbmQgKnZpZXcqIG11c3QgcG9pbnQgdG8gYW4gZXhpc3RpbmcKLSAgICAgIDpjOnR5cGU6YFB5X2J1ZmZlcmAgc3RydWN0dXJlIGFsbG9jYXRlZCBieSB0aGUgY2FsbGVyIChtb3N0IHVzZXMgb2YKLSAgICAgIHRoaXMgZnVuY3Rpb24gd2lsbCBzaW1wbHkgZGVjbGFyZSBhIGxvY2FsIHZhcmlhYmxlIG9mIHR5cGUKLSAgICAgIDpjOnR5cGU6YFB5X2J1ZmZlcmApLiAgVGhlICpmbGFncyogYXJndW1lbnQgaXMgYSBiaXQgZmllbGQgaW5kaWNhdGluZwotICAgICAgd2hhdCBraW5kIG9mIGJ1ZmZlciBpcyByZXF1ZXN0ZWQuICBUaGUgYnVmZmVyIGludGVyZmFjZSBhbGxvd3MKLSAgICAgIGZvciBjb21wbGljYXRlZCBtZW1vcnkgbGF5b3V0IHBvc3NpYmlsaXRpZXM7IGhvd2V2ZXIsIHNvbWUgY2FsbGVycwotICAgICAgd29uJ3Qgd2FudCB0byBoYW5kbGUgYWxsIHRoZSBjb21wbGV4aXR5IGFuZCBpbnN0ZWFkIHJlcXVlc3QgYSBzaW1wbGUKLSAgICAgIHZpZXcgb2YgdGhlIHRhcmdldCBvYmplY3QgKHVzaW5nIDpjOm1hY3JvOmBQeUJVRl9TSU1QTEVgIGZvciBhIHJlYWQtb25seQotICAgICAgdmlldyBhbmQgOmM6bWFjcm86YFB5QlVGX1dSSVRBQkxFYCBmb3IgYSByZWFkLXdyaXRlIHZpZXcpLgorICAgU2VuZCBhIHJlcXVlc3QgdG8gKmV4cG9ydGVyKiB0byBmaWxsIGluICp2aWV3KiBhcyBzcGVjaWZpZWQgYnkgICpmbGFncyouCisgICBJZiB0aGUgZXhwb3J0ZXIgY2Fubm90IHByb3ZpZGUgYSBidWZmZXIgb2YgdGhlIGV4YWN0IHR5cGUsIGl0IE1VU1QgcmFpc2UKKyAgIDpjOmRhdGE6YFB5RXhjX0J1ZmZlckVycm9yYCwgc2V0IDpjOm1lbWJlcjpgdmlldy0+b2JqYCB0byAqTlVMTCogYW5kCisgICByZXR1cm4gLTEuCiAKLSAgICAgIFNvbWUgZXhwb3J0ZXJzIG1heSBub3QgYmUgYWJsZSB0byBzaGFyZSBtZW1vcnkgaW4gZXZlcnkgcG9zc2libGUgd2F5IGFuZAotICAgICAgbWF5IG5lZWQgdG8gcmFpc2UgZXJyb3JzIHRvIHNpZ25hbCB0byBzb21lIGNvbnN1bWVycyB0aGF0IHNvbWV0aGluZyBpcwotICAgICAganVzdCBub3QgcG9zc2libGUuIFRoZXNlIGVycm9ycyBzaG91bGQgYmUgYSA6ZXhjOmBCdWZmZXJFcnJvcmAgdW5sZXNzCi0gICAgICB0aGVyZSBpcyBhbm90aGVyIGVycm9yIHRoYXQgaXMgYWN0dWFsbHkgY2F1c2luZyB0aGUgcHJvYmxlbS4gVGhlCi0gICAgICBleHBvcnRlciBjYW4gdXNlIGZsYWdzIGluZm9ybWF0aW9uIHRvIHNpbXBsaWZ5IGhvdyBtdWNoIG9mIHRoZQotICAgICAgOmM6ZGF0YTpgUHlfYnVmZmVyYCBzdHJ1Y3R1cmUgaXMgZmlsbGVkIGluIHdpdGggbm9uLWRlZmF1bHQgdmFsdWVzIGFuZC9vcgotICAgICAgcmFpc2UgYW4gZXJyb3IgaWYgdGhlIG9iamVjdCBjYW4ndCBzdXBwb3J0IGEgc2ltcGxlciB2aWV3IG9mIGl0cyBtZW1vcnkuCisgICBPbiBzdWNjZXNzLCBmaWxsIGluICp2aWV3Kiwgc2V0IDpjOm1lbWJlcjpgdmlldy0+b2JqYCB0byBhIG5ldyByZWZlcmVuY2UKKyAgIHRvICpleHBvcnRlciogYW5kIHJldHVybiAwLiBJbiB0aGUgY2FzZSBvZiBjaGFpbmVkIGJ1ZmZlciBwcm92aWRlcnMKKyAgIHRoYXQgcmVkaXJlY3QgcmVxdWVzdHMgdG8gYSBzaW5nbGUgb2JqZWN0LCA6YzptZW1iZXI6YHZpZXctPm9iamAgTUFZCisgICByZWZlciB0byB0aGlzIG9iamVjdCBpbnN0ZWFkIG9mICpleHBvcnRlciogKFNlZSA6cmVmOmBCdWZmZXIgT2JqZWN0IFN0cnVjdHVyZXMgPGJ1ZmZlci1zdHJ1Y3RzPmApLgogCi0gICAgICBPbiBzdWNjZXNzLCAwIGlzIHJldHVybmVkIGFuZCB0aGUgKnZpZXcqIHN0cnVjdHVyZSBpcyBmaWxsZWQgd2l0aCB1c2VmdWwKLSAgICAgIHZhbHVlcy4gIE9uIGVycm9yLCAtMSBpcyByZXR1cm5lZCBhbmQgYW4gZXhjZXB0aW9uIGlzIHJhaXNlZDsgdGhlICp2aWV3KgotICAgICAgaXMgbGVmdCBpbiBhbiB1bmRlZmluZWQgc3RhdGUuCi0KLSAgICAgIFRoZSBmb2xsb3dpbmcgYXJlIHRoZSBwb3NzaWJsZSB2YWx1ZXMgdG8gdGhlICpmbGFncyogYXJndW1lbnRzLgotCi0gICAgICAuLiBjOm1hY3JvOjogUHlCVUZfU0lNUExFCi0KLSAgICAgICAgIFRoaXMgaXMgdGhlIGRlZmF1bHQgZmxhZy4gIFRoZSByZXR1cm5lZCBidWZmZXIgZXhwb3NlcyBhIHJlYWQtb25seQotICAgICAgICAgbWVtb3J5IGFyZWEuICBUaGUgZm9ybWF0IG9mIGRhdGEgaXMgYXNzdW1lZCB0byBiZSByYXcgdW5zaWduZWQgYnl0ZXMsCi0gICAgICAgICB3aXRob3V0IGFueSBwYXJ0aWN1bGFyIHN0cnVjdHVyZS4gIFRoaXMgaXMgYSAic3RhbmQtYWxvbmUiIGZsYWcKLSAgICAgICAgIGNvbnN0YW50LiAgSXQgbmV2ZXIgbmVlZHMgdG8gYmUgJ3wnZCB0byB0aGUgb3RoZXJzLiAgVGhlIGV4cG9ydGVyIHdpbGwKLSAgICAgICAgIHJhaXNlIGFuIGVycm9yIGlmIGl0IGNhbm5vdCBwcm92aWRlIHN1Y2ggYSBjb250aWd1b3VzIGJ1ZmZlciBvZiBieXRlcy4KLQotICAgICAgLi4gYzptYWNybzo6IFB5QlVGX1dSSVRBQkxFCi0KLSAgICAgICAgIExpa2UgOmM6bWFjcm86YFB5QlVGX1NJTVBMRWAsIGJ1dCB0aGUgcmV0dXJuZWQgYnVmZmVyIGlzIHdyaXRhYmxlLiAgSWYKLSAgICAgICAgIHRoZSBleHBvcnRlciBkb2Vzbid0IHN1cHBvcnQgd3JpdGFibGUgYnVmZmVycywgYW4gZXJyb3IgaXMgcmFpc2VkLgotCi0gICAgICAuLiBjOm1hY3JvOjogUHlCVUZfU1RSSURFUwotCi0gICAgICAgICBUaGlzIGltcGxpZXMgOmM6bWFjcm86YFB5QlVGX05EYC4gIFRoZSByZXR1cm5lZCBidWZmZXIgbXVzdCBwcm92aWRlCi0gICAgICAgICBzdHJpZGVzIGluZm9ybWF0aW9uIChpLmUuIHRoZSBzdHJpZGVzIGNhbm5vdCBiZSBOVUxMKS4gIFRoaXMgd291bGQgYmUKLSAgICAgICAgIHVzZWQgd2hlbiB0aGUgY29uc3VtZXIgY2FuIGhhbmRsZSBzdHJpZGVkLCBkaXNjb250aWd1b3VzIGFycmF5cy4KLSAgICAgICAgIEhhbmRsaW5nIHN0cmlkZXMgYXV0b21hdGljYWxseSBhc3N1bWVzIHlvdSBjYW4gaGFuZGxlIHNoYXBlLiAgVGhlCi0gICAgICAgICBleHBvcnRlciBjYW4gcmFpc2UgYW4gZXJyb3IgaWYgYSBzdHJpZGVkIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBkYXRhIGlzCi0gICAgICAgICBub3QgcG9zc2libGUgKGkuZS4gd2l0aG91dCB0aGUgc3Vib2Zmc2V0cykuCi0KLSAgICAgIC4uIGM6bWFjcm86OiBQeUJVRl9ORAotCi0gICAgICAgICBUaGUgcmV0dXJuZWQgYnVmZmVyIG11c3QgcHJvdmlkZSBzaGFwZSBpbmZvcm1hdGlvbi4gIFRoZSBtZW1vcnkgd2lsbCBiZQotICAgICAgICAgYXNzdW1lZCBDLXN0eWxlIGNvbnRpZ3VvdXMgKGxhc3QgZGltZW5zaW9uIHZhcmllcyB0aGUgZmFzdGVzdCkuICBUaGUKLSAgICAgICAgIGV4cG9ydGVyIG1heSByYWlzZSBhbiBlcnJvciBpZiBpdCBjYW5ub3QgcHJvdmlkZSB0aGlzIGtpbmQgb2YKLSAgICAgICAgIGNvbnRpZ3VvdXMgYnVmZmVyLiAgSWYgdGhpcyBpcyBub3QgZ2l2ZW4gdGhlbiBzaGFwZSB3aWxsIGJlICpOVUxMKi4KLQotICAgICAgLi4gYzptYWNybzo6IFB5QlVGX0NfQ09OVElHVU9VUwotICAgICAgICAgICAgICAgICAgUHlCVUZfRl9DT05USUdVT1VTCi0gICAgICAgICAgICAgICAgICBQeUJVRl9BTllfQ09OVElHVU9VUwotCi0gICAgICAgICBUaGVzZSBmbGFncyBpbmRpY2F0ZSB0aGF0IHRoZSBjb250aWd1aXR5IHJldHVybmVkIGJ1ZmZlciBtdXN0IGJlCi0gICAgICAgICByZXNwZWN0aXZlbHksIEMtY29udGlndW91cyAobGFzdCBkaW1lbnNpb24gdmFyaWVzIHRoZSBmYXN0ZXN0KSwgRm9ydHJhbgotICAgICAgICAgY29udGlndW91cyAoZmlyc3QgZGltZW5zaW9uIHZhcmllcyB0aGUgZmFzdGVzdCkgb3IgZWl0aGVyIG9uZS4gIEFsbCBvZgotICAgICAgICAgdGhlc2UgZmxhZ3MgaW1wbHkgOmM6bWFjcm86YFB5QlVGX1NUUklERVNgIGFuZCBndWFyYW50ZWUgdGhhdCB0aGUKLSAgICAgICAgIHN0cmlkZXMgYnVmZmVyIGluZm8gc3RydWN0dXJlIHdpbGwgYmUgZmlsbGVkIGluIGNvcnJlY3RseS4KLQotICAgICAgLi4gYzptYWNybzo6IFB5QlVGX0lORElSRUNUCi0KLSAgICAgICAgIFRoaXMgZmxhZyBpbmRpY2F0ZXMgdGhlIHJldHVybmVkIGJ1ZmZlciBtdXN0IGhhdmUgc3Vib2Zmc2V0cwotICAgICAgICAgaW5mb3JtYXRpb24gKHdoaWNoIGNhbiBiZSBOVUxMIGlmIG5vIHN1Ym9mZnNldHMgYXJlIG5lZWRlZCkuICBUaGlzIGNhbgotICAgICAgICAgYmUgdXNlZCB3aGVuIHRoZSBjb25zdW1lciBjYW4gaGFuZGxlIGluZGlyZWN0IGFycmF5IHJlZmVyZW5jaW5nIGltcGxpZWQKLSAgICAgICAgIGJ5IHRoZXNlIHN1Ym9mZnNldHMuIFRoaXMgaW1wbGllcyA6YzptYWNybzpgUHlCVUZfU1RSSURFU2AuCi0KLSAgICAgIC4uIGM6bWFjcm86OiBQeUJVRl9GT1JNQVQKLQotICAgICAgICAgVGhlIHJldHVybmVkIGJ1ZmZlciBtdXN0IGhhdmUgdHJ1ZSBmb3JtYXQgaW5mb3JtYXRpb24gaWYgdGhpcyBmbGFnIGlzCi0gICAgICAgICBwcm92aWRlZC4gIFRoaXMgd291bGQgYmUgdXNlZCB3aGVuIHRoZSBjb25zdW1lciBpcyBnb2luZyB0byBiZSBjaGVja2luZwotICAgICAgICAgZm9yIHdoYXQgJ2tpbmQnIG9mIGRhdGEgaXMgYWN0dWFsbHkgc3RvcmVkLiAgQW4gZXhwb3J0ZXIgc2hvdWxkIGFsd2F5cwotICAgICAgICAgYmUgYWJsZSB0byBwcm92aWRlIHRoaXMgaW5mb3JtYXRpb24gaWYgcmVxdWVzdGVkLiAgSWYgZm9ybWF0IGlzIG5vdAotICAgICAgICAgZXhwbGljaXRseSByZXF1ZXN0ZWQgdGhlbiB0aGUgZm9ybWF0IG11c3QgYmUgcmV0dXJuZWQgYXMgKk5VTEwqICh3aGljaAotICAgICAgICAgbWVhbnMgYGAnQidgYCwgb3IgdW5zaWduZWQgYnl0ZXMpLgotCi0gICAgICAuLiBjOm1hY3JvOjogUHlCVUZfU1RSSURFRAotCi0gICAgICAgICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gYGAoUHlCVUZfU1RSSURFUyB8IFB5QlVGX1dSSVRBQkxFKWBgLgotCi0gICAgICAuLiBjOm1hY3JvOjogUHlCVUZfU1RSSURFRF9STwotCi0gICAgICAgICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gYGAoUHlCVUZfU1RSSURFUylgYC4KLQotICAgICAgLi4gYzptYWNybzo6IFB5QlVGX1JFQ09SRFMKLQotICAgICAgICAgVGhpcyBpcyBlcXVpdmFsZW50IHRvIGBgKFB5QlVGX1NUUklERVMgfCBQeUJVRl9GT1JNQVQgfAotICAgICAgICAgUHlCVUZfV1JJVEFCTEUpYGAuCi0KLSAgICAgIC4uIGM6bWFjcm86OiBQeUJVRl9SRUNPUkRTX1JPCi0KLSAgICAgICAgIFRoaXMgaXMgZXF1aXZhbGVudCB0byBgYChQeUJVRl9TVFJJREVTIHwgUHlCVUZfRk9STUFUKWBgLgotCi0gICAgICAuLiBjOm1hY3JvOjogUHlCVUZfRlVMTAotCi0gICAgICAgICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gYGAoUHlCVUZfSU5ESVJFQ1QgfCBQeUJVRl9GT1JNQVQgfAotICAgICAgICAgUHlCVUZfV1JJVEFCTEUpYGAuCi0KLSAgICAgIC4uIGM6bWFjcm86OiBQeUJVRl9GVUxMX1JPCi0KLSAgICAgICAgIFRoaXMgaXMgZXF1aXZhbGVudCB0byBgYChQeUJVRl9JTkRJUkVDVCB8IFB5QlVGX0ZPUk1BVClgYC4KLQotICAgICAgLi4gYzptYWNybzo6IFB5QlVGX0NPTlRJRwotCi0gICAgICAgICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gYGAoUHlCVUZfTkQgfCBQeUJVRl9XUklUQUJMRSlgYC4KLQotICAgICAgLi4gYzptYWNybzo6IFB5QlVGX0NPTlRJR19STwotCi0gICAgICAgICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gYGAoUHlCVUZfTkQpYGAuCisgICBTdWNjZXNzZnVsIGNhbGxzIHRvIDpjOmZ1bmM6YFB5T2JqZWN0X0dldEJ1ZmZlcmAgbXVzdCBiZSBwYWlyZWQgd2l0aCBjYWxscworICAgdG8gOmM6ZnVuYzpgUHlCdWZmZXJfUmVsZWFzZWAsIHNpbWlsYXIgdG8gOmM6ZnVuYzpgbWFsbG9jYCBhbmQgOmM6ZnVuYzpgZnJlZWAuCisgICBUaHVzLCBhZnRlciB0aGUgY29uc3VtZXIgaXMgZG9uZSB3aXRoIHRoZSBidWZmZXIsIDpjOmZ1bmM6YFB5QnVmZmVyX1JlbGVhc2VgCisgICBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UuCiAKIAogLi4gYzpmdW5jdGlvbjo6IHZvaWQgUHlCdWZmZXJfUmVsZWFzZShQeV9idWZmZXIgKnZpZXcpCiAKLSAgIFJlbGVhc2UgdGhlIGJ1ZmZlciAqdmlldyouICBUaGlzIHNob3VsZCBiZSBjYWxsZWQgd2hlbiB0aGUgYnVmZmVyIGlzIG5vCi0gICBsb25nZXIgYmVpbmcgdXNlZCBhcyBpdCBtYXkgZnJlZSBtZW1vcnkgZnJvbSBpdC4KKyAgIFJlbGVhc2UgdGhlIGJ1ZmZlciAqdmlldyogYW5kIGRlY3JlbWVudCB0aGUgcmVmZXJlbmNlIGNvdW50IGZvcgorICAgOmM6bWVtYmVyOmB2aWV3LT5vYmpgLiBUaGlzIGZ1bmN0aW9uIE1VU1QgYmUgY2FsbGVkIHdoZW4gdGhlIGJ1ZmZlcgorICAgaXMgbm8gbG9uZ2VyIGJlaW5nIHVzZWQsIG90aGVyd2lzZSByZWZlcmVuY2UgbGVha3MgbWF5IG9jY3VyLgorCisgICBJdCBpcyBhbiBlcnJvciB0byBjYWxsIHRoaXMgZnVuY3Rpb24gb24gYSBidWZmZXIgdGhhdCB3YXMgbm90IG9idGFpbmVkIHZpYQorICAgOmM6ZnVuYzpgUHlPYmplY3RfR2V0QnVmZmVyYC4KIAogCiAuLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeUJ1ZmZlcl9TaXplRnJvbUZvcm1hdChjb25zdCBjaGFyICopCiAKLSAgIFJldHVybiB0aGUgaW1wbGllZCA6YzpkYXRhOmB+UHlfYnVmZmVyLml0ZW1zaXplYCBmcm9tIHRoZSBzdHJ1Y3Qtc3R5cGUKLSAgIDpjOmRhdGE6YH5QeV9idWZmZXIuZm9ybWF0YC4KKyAgIFJldHVybiB0aGUgaW1wbGllZCA6YzpkYXRhOmB+UHlfYnVmZmVyLml0ZW1zaXplYCBmcm9tIDpjOmRhdGE6YH5QeV9idWZmZXIuZm9ybWF0YC4KKyAgIFRoaXMgZnVuY3Rpb24gaXMgbm90IHlldCBpbXBsZW1lbnRlZC4KIAogCi0uLiBjOmZ1bmN0aW9uOjogaW50IFB5QnVmZmVyX0lzQ29udGlndW91cyhQeV9idWZmZXIgKnZpZXcsIGNoYXIgZm9ydHJhbikKKy4uIGM6ZnVuY3Rpb246OiBpbnQgUHlCdWZmZXJfSXNDb250aWd1b3VzKFB5X2J1ZmZlciAqdmlldywgY2hhciBvcmRlcikKIAotICAgUmV0dXJuIDEgaWYgdGhlIG1lbW9yeSBkZWZpbmVkIGJ5IHRoZSAqdmlldyogaXMgQy1zdHlsZSAoKmZvcnRyYW4qIGlzCi0gICBgYCdDJ2BgKSBvciBGb3J0cmFuLXN0eWxlICgqZm9ydHJhbiogaXMgYGAnRidgYCkgY29udGlndW91cyBvciBlaXRoZXIgb25lCi0gICAoKmZvcnRyYW4qIGlzIGBgJ0EnYGApLiAgUmV0dXJuIDAgb3RoZXJ3aXNlLgorICAgUmV0dXJuIDEgaWYgdGhlIG1lbW9yeSBkZWZpbmVkIGJ5IHRoZSAqdmlldyogaXMgQy1zdHlsZSAoKm9yZGVyKiBpcworICAgYGAnQydgYCkgb3IgRm9ydHJhbi1zdHlsZSAoKm9yZGVyKiBpcyBgYCdGJ2BgKSBjb250aWd1b3VzIG9yIGVpdGhlciBvbmUKKyAgICgqb3JkZXIqIGlzIGBgJ0EnYGApLiAgUmV0dXJuIDAgb3RoZXJ3aXNlLgogCiAKLS4uIGM6ZnVuY3Rpb246OiB2b2lkIFB5QnVmZmVyX0ZpbGxDb250aWd1b3VzU3RyaWRlcyhpbnQgbmRpbSwgUHlfc3NpemVfdCAqc2hhcGUsIFB5X3NzaXplX3QgKnN0cmlkZXMsIFB5X3NzaXplX3QgaXRlbXNpemUsIGNoYXIgZm9ydHJhbikKKy4uIGM6ZnVuY3Rpb246OiB2b2lkIFB5QnVmZmVyX0ZpbGxDb250aWd1b3VzU3RyaWRlcyhpbnQgbmRpbSwgUHlfc3NpemVfdCAqc2hhcGUsIFB5X3NzaXplX3QgKnN0cmlkZXMsIFB5X3NzaXplX3QgaXRlbXNpemUsIGNoYXIgb3JkZXIpCiAKICAgIEZpbGwgdGhlICpzdHJpZGVzKiBhcnJheSB3aXRoIGJ5dGUtc3RyaWRlcyBvZiBhIGNvbnRpZ3VvdXMgKEMtc3R5bGUgaWYKLSAgICpmb3J0cmFuKiBpcyBgYCdDJ2BgIG9yIEZvcnRyYW4tc3R5bGUgaWYgKmZvcnRyYW4qIGlzIGBgJ0YnYGApIGFycmF5IG9mIHRoZQorICAgKm9yZGVyKiBpcyBgYCdDJ2BgIG9yIEZvcnRyYW4tc3R5bGUgaWYgKm9yZGVyKiBpcyBgYCdGJ2BgKSBhcnJheSBvZiB0aGUKICAgIGdpdmVuIHNoYXBlIHdpdGggdGhlIGdpdmVuIG51bWJlciBvZiBieXRlcyBwZXIgZWxlbWVudC4KIAogCi0uLiBjOmZ1bmN0aW9uOjogaW50IFB5QnVmZmVyX0ZpbGxJbmZvKFB5X2J1ZmZlciAqdmlldywgUHlPYmplY3QgKm9iaiwgdm9pZCAqYnVmLCBQeV9zc2l6ZV90IGxlbiwgaW50IHJlYWRvbmx5LCBpbnQgaW5mb2ZsYWdzKQorLi4gYzpmdW5jdGlvbjo6IGludCBQeUJ1ZmZlcl9GaWxsSW5mbyhQeV9idWZmZXIgKnZpZXcsIFB5T2JqZWN0ICpleHBvcnRlciwgdm9pZCAqYnVmLCBQeV9zc2l6ZV90IGxlbiwgaW50IHJlYWRvbmx5LCBpbnQgZmxhZ3MpCiAKLSAgIEZpbGwgaW4gYSBidWZmZXItaW5mbyBzdHJ1Y3R1cmUsICp2aWV3KiwgY29ycmVjdGx5IGZvciBhbiBleHBvcnRlciB0aGF0IGNhbgotICAgb25seSBzaGFyZSBhIGNvbnRpZ3VvdXMgY2h1bmsgb2YgbWVtb3J5IG9mICJ1bnNpZ25lZCBieXRlcyIgb2YgdGhlIGdpdmVuCi0gICBsZW5ndGguICBSZXR1cm4gMCBvbiBzdWNjZXNzIGFuZCAtMSAod2l0aCByYWlzaW5nIGFuIGVycm9yKSBvbiBlcnJvci4KKyAgIEhhbmRsZSBidWZmZXIgcmVxdWVzdHMgZm9yIGFuIGV4cG9ydGVyIHRoYXQgd2FudHMgdG8gZXhwb3NlICpidWYqIG9mIHNpemUgKmxlbioKKyAgIHdpdGggd3JpdGFiaWxpdHkgc2V0IGFjY29yZGluZyB0byAqcmVhZG9ubHkqLiAqYnVmKiBpcyBpbnRlcnByZXRlZCBhcyBhIHNlcXVlbmNlCisgICBvZiB1bnNpZ25lZCBieXRlcy4KKworICAgVGhlICpmbGFncyogYXJndW1lbnQgaW5kaWNhdGVzIHRoZSByZXF1ZXN0IHR5cGUuIFRoaXMgZnVuY3Rpb24gYWx3YXlzIGZpbGxzIGluCisgICAqdmlldyogYXMgc3BlY2lmaWVkIGJ5IGZsYWdzLCB1bmxlc3MgKmJ1ZiogaGFzIGJlZW4gZGVzaWduYXRlZCBhcyByZWFkLW9ubHkKKyAgIGFuZCA6YzptYWNybzpgUHlCVUZfV1JJVEFCTEVgIGlzIHNldCBpbiAqZmxhZ3MqLgorCisgICBPbiBzdWNjZXNzLCBzZXQgOmM6bWVtYmVyOmB2aWV3LT5vYmpgIHRvIGEgbmV3IHJlZmVyZW5jZSB0byAqZXhwb3J0ZXIqIGFuZAorICAgcmV0dXJuIDAuIE90aGVyd2lzZSwgcmFpc2UgOmM6ZGF0YTpgUHlFeGNfQnVmZmVyRXJyb3JgLCBzZXQKKyAgIDpjOm1lbWJlcjpgdmlldy0+b2JqYCB0byAqTlVMTCogYW5kIHJldHVybiAtMTsKKworICAgSWYgdGhpcyBmdW5jdGlvbiBpcyB1c2VkIGFzIHBhcnQgb2YgYSA6cmVmOmBnZXRidWZmZXJwcm9jIDxidWZmZXItc3RydWN0cz5gLAorICAgKmV4cG9ydGVyKiBNVVNUIGJlIHNldCB0byB0aGUgZXhwb3J0aW5nIG9iamVjdC4gT3RoZXJ3aXNlLCAqZXhwb3J0ZXIqIE1VU1QKKyAgIGJlIE5VTEwuCisKKwogCmRpZmYgLS1naXQgYS9Eb2MvYy1hcGkvZGF0ZXRpbWUucnN0IGIvRG9jL2MtYXBpL2RhdGV0aW1lLnJzdAppbmRleCBmY2QxMzk1Li4zOTU0MmJkIDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvZGF0ZXRpbWUucnN0CisrKyBiL0RvYy9jLWFwaS9kYXRldGltZS5yc3QKQEAgLTE3MCw2ICsxNzAsMzEgQEAKICAgIFJldHVybiB0aGUgbWljcm9zZWNvbmQsIGFzIGFuIGludCBmcm9tIDAgdGhyb3VnaCA5OTk5OTkuCiAKIAorTWFjcm9zIHRvIGV4dHJhY3QgZmllbGRzIGZyb20gdGltZSBkZWx0YSBvYmplY3RzLiAgVGhlIGFyZ3VtZW50IG11c3QgYmUgYW4KK2luc3RhbmNlIG9mIDpjOmRhdGE6YFB5RGF0ZVRpbWVfRGVsdGFgLCBpbmNsdWRpbmcgc3ViY2xhc3Nlcy4gVGhlIGFyZ3VtZW50IG11c3QKK25vdCBiZSAqTlVMTCosIGFuZCB0aGUgdHlwZSBpcyBub3QgY2hlY2tlZDoKKworLi4gYzpmdW5jdGlvbjo6IGludCBQeURhdGVUaW1lX0RFTFRBX0dFVF9EQVlTKFB5RGF0ZVRpbWVfRGVsdGEgKm8pCisKKyAgIFJldHVybiB0aGUgbnVtYmVyIG9mIGRheXMsIGFzIGFuIGludCBmcm9tIC05OTk5OTk5OTkgdG8gOTk5OTk5OTk5LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5RGF0ZVRpbWVfREVMVEFfR0VUX1NFQ09ORFMoUHlEYXRlVGltZV9EZWx0YSAqbykKKworICAgUmV0dXJuIHRoZSBudW1iZXIgb2Ygc2Vjb25kcywgYXMgYW4gaW50IGZyb20gMCB0aHJvdWdoIDg2Mzk5LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5RGF0ZVRpbWVfREVMVEFfR0VUX01JQ1JPU0VDT05EKFB5RGF0ZVRpbWVfRGVsdGEgKm8pCisKKyAgIFJldHVybiB0aGUgbnVtYmVyIG9mIG1pY3Jvc2Vjb25kcywgYXMgYW4gaW50IGZyb20gMCB0aHJvdWdoIDk5OTk5OS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogTWFjcm9zIGZvciB0aGUgY29udmVuaWVuY2Ugb2YgbW9kdWxlcyBpbXBsZW1lbnRpbmcgdGhlIERCIEFQSToKIAogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeURhdGVUaW1lX0Zyb21UaW1lc3RhbXAoUHlPYmplY3QgKmFyZ3MpCmRpZmYgLS1naXQgYS9Eb2MvYy1hcGkvZGljdC5yc3QgYi9Eb2MvYy1hcGkvZGljdC5yc3QKaW5kZXggNmRmODRlMC4uYWM3MTRhNiAxMDA2NDQKLS0tIGEvRG9jL2MtYXBpL2RpY3QucnN0CisrKyBiL0RvYy9jLWFwaS9kaWN0LnJzdApAQCAtMjA5LDMgKzIwOSwxMCBAQAogICAgICAgICAgIGZvciBrZXksIHZhbHVlIGluIHNlcTI6CiAgICAgICAgICAgICAgIGlmIG92ZXJyaWRlIG9yIGtleSBub3QgaW4gYToKICAgICAgICAgICAgICAgICAgIGFba2V5XSA9IHZhbHVlCisKKworLi4gYzpmdW5jdGlvbjo6IGludCBQeURpY3RfQ2xlYXJGcmVlTGlzdCgpCisKKyAgIENsZWFyIHRoZSBmcmVlIGxpc3QuIFJldHVybiB0aGUgdG90YWwgbnVtYmVyIG9mIGZyZWVkIGl0ZW1zLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9leGNlcHRpb25zLnJzdCBiL0RvYy9jLWFwaS9leGNlcHRpb25zLnJzdAppbmRleCA2ZjEzYzgwLi5mZDdhZWU3IDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvZXhjZXB0aW9ucy5yc3QKKysrIGIvRG9jL2MtYXBpL2V4Y2VwdGlvbnMucnN0CkBAIC00MjEsMTcgKzQyMSwyNCBAQAogCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5RXhjZXB0aW9uX0dldENhdXNlKFB5T2JqZWN0ICpleCkKIAotICAgUmV0dXJuIHRoZSBjYXVzZSAoYW5vdGhlciBleGNlcHRpb24gaW5zdGFuY2Ugc2V0IGJ5IGBgcmFpc2UgLi4uIGZyb20gLi4uYGApCi0gICBhc3NvY2lhdGVkIHdpdGggdGhlIGV4Y2VwdGlvbiBhcyBhIG5ldyByZWZlcmVuY2UsIGFzIGFjY2Vzc2libGUgZnJvbSBQeXRob24KLSAgIHRocm91Z2ggOmF0dHI6YF9fY2F1c2VfX2AuICBJZiB0aGVyZSBpcyBubyBjYXVzZSBhc3NvY2lhdGVkLCB0aGlzIHJldHVybnMKLSAgICpOVUxMKi4KKyAgIFJldHVybiB0aGUgY2F1c2UgKGVpdGhlciBhbiBleGNlcHRpb24gaW5zdGFuY2UsIG9yIDpjb25zdDpgTm9uZWAsCisgICBzZXQgYnkgYGByYWlzZSAuLi4gZnJvbSAuLi5gYCkgYXNzb2NpYXRlZCB3aXRoIHRoZSBleGNlcHRpb24gYXMgYSBuZXcKKyAgIHJlZmVyZW5jZSwgYXMgYWNjZXNzaWJsZSBmcm9tIFB5dGhvbiB0aHJvdWdoIDphdHRyOmBfX2NhdXNlX19gLgorCisgICBJZiB0aGVyZSBpcyBubyBjYXVzZSBhc3NvY2lhdGVkLCB0aGlzIHJldHVybnMgKk5VTEwqIChmcm9tIFB5dGhvbgorICAgYGBfX2NhdXNlX18gaXMgRWxsaXBzaXNgYCkuICBJZiB0aGUgY2F1c2UgaXMgOmNvbnN0OmBOb25lYCwgdGhlIGRlZmF1bHQKKyAgIGV4Y2VwdGlvbiBkaXNwbGF5IHJvdXRpbmVzIHN0b3Agc2hvd2luZyB0aGUgY29udGV4dCBjaGFpbi4KIAogCiAuLiBjOmZ1bmN0aW9uOjogdm9pZCBQeUV4Y2VwdGlvbl9TZXRDYXVzZShQeU9iamVjdCAqZXgsIFB5T2JqZWN0ICpjdHgpCiAKICAgIFNldCB0aGUgY2F1c2UgYXNzb2NpYXRlZCB3aXRoIHRoZSBleGNlcHRpb24gdG8gKmN0eCouICBVc2UgKk5VTEwqIHRvIGNsZWFyCi0gICBpdC4gIFRoZXJlIGlzIG5vIHR5cGUgY2hlY2sgdG8gbWFrZSBzdXJlIHRoYXQgKmN0eCogaXMgYW4gZXhjZXB0aW9uIGluc3RhbmNlLgotICAgVGhpcyBzdGVhbHMgYSByZWZlcmVuY2UgdG8gKmN0eCouCisgICBpdC4gIFRoZXJlIGlzIG5vIHR5cGUgY2hlY2sgdG8gbWFrZSBzdXJlIHRoYXQgKmN0eCogaXMgZWl0aGVyIGFuIGV4Y2VwdGlvbgorICAgaW5zdGFuY2Ugb3IgOmNvbnN0OmBOb25lYC4gIFRoaXMgc3RlYWxzIGEgcmVmZXJlbmNlIHRvICpjdHgqLgorCisgICBJZiB0aGUgY2F1c2UgaXMgc2V0IHRvIDpjb25zdDpgTm9uZWAgdGhlIGRlZmF1bHQgZXhjZXB0aW9uIGRpc3BsYXkKKyAgIHJvdXRpbmVzIHdpbGwgbm90IGRpc3BsYXkgdGhpcyBleGNlcHRpb24ncyBjb250ZXh0LCBhbmQgd2lsbCBub3QgZm9sbG93IHRoZQorICAgY2hhaW4gYW55IGZ1cnRoZXIuCiAKIAogLi4gX3VuaWNvZGVleGNlcHRpb25zOgpAQCAtNTI1LDcgKzUzMiw3IEBACiAKICAgIE1hcmtzIGEgcG9pbnQgd2hlcmUgYSByZWN1cnNpdmUgQy1sZXZlbCBjYWxsIGlzIGFib3V0IHRvIGJlIHBlcmZvcm1lZC4KIAotICAgSWYgOmNvbnN0OmBVU0VfU1RBQ0tDSEVDS2AgaXMgZGVmaW5lZCwgdGhpcyBmdW5jdGlvbiBjaGVja3MgaWYgdGhlIHRoZSBPUworICAgSWYgOmNvbnN0OmBVU0VfU1RBQ0tDSEVDS2AgaXMgZGVmaW5lZCwgdGhpcyBmdW5jdGlvbiBjaGVja3MgaWYgdGhlIE9TCiAgICBzdGFjayBvdmVyZmxvd2VkIHVzaW5nIDpjOmZ1bmM6YFB5T1NfQ2hlY2tTdGFja2AuICBJbiB0aGlzIGlzIHRoZSBjYXNlLCBpdAogICAgc2V0cyBhIDpleGM6YE1lbW9yeUVycm9yYCBhbmQgcmV0dXJucyBhIG5vbnplcm8gdmFsdWUuCiAKQEAgLTU4Miw2NSArNTg5LDExNiBAQAogOmM6dHlwZTpgUHlPYmplY3RcKmA7IHRoZXkgYXJlIGFsbCBjbGFzcyBvYmplY3RzLiAgRm9yIGNvbXBsZXRlbmVzcywgaGVyZSBhcmUgYWxsCiB0aGUgdmFyaWFibGVzOgogCi0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IEMgTmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgUHl0aG9uIE5hbWUgICAgICAgICAgICAgICAgfCBOb3RlcyAgICB8Ci0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT0rCi18IDpjOmRhdGE6YFB5RXhjX0Jhc2VFeGNlcHRpb25gICAgICAgIHwgOmV4YzpgQmFzZUV4Y2VwdGlvbmAgICAgICAgfCBcKDEpICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0V4Y2VwdGlvbmAgICAgICAgICAgIHwgOmV4YzpgRXhjZXB0aW9uYCAgICAgICAgICAgfCBcKDEpICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0FyaXRobWV0aWNFcnJvcmAgICAgIHwgOmV4YzpgQXJpdGhtZXRpY0Vycm9yYCAgICAgfCBcKDEpICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0xvb2t1cEVycm9yYCAgICAgICAgIHwgOmV4YzpgTG9va3VwRXJyb3JgICAgICAgICAgfCBcKDEpICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0Fzc2VydGlvbkVycm9yYCAgICAgIHwgOmV4YzpgQXNzZXJ0aW9uRXJyb3JgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0F0dHJpYnV0ZUVycm9yYCAgICAgIHwgOmV4YzpgQXR0cmlidXRlRXJyb3JgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0VPRkVycm9yYCAgICAgICAgICAgIHwgOmV4YzpgRU9GRXJyb3JgICAgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0Vudmlyb25tZW50RXJyb3JgICAgIHwgOmV4YzpgRW52aXJvbm1lbnRFcnJvcmAgICAgfCBcKDEpICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0Zsb2F0aW5nUG9pbnRFcnJvcmAgIHwgOmV4YzpgRmxvYXRpbmdQb2ludEVycm9yYCAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0lPRXJyb3JgICAgICAgICAgICAgIHwgOmV4YzpgSU9FcnJvcmAgICAgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0ltcG9ydEVycm9yYCAgICAgICAgIHwgOmV4YzpgSW1wb3J0RXJyb3JgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0luZGV4RXJyb3JgICAgICAgICAgIHwgOmV4YzpgSW5kZXhFcnJvcmAgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0tleUVycm9yYCAgICAgICAgICAgIHwgOmV4YzpgS2V5RXJyb3JgICAgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX0tleWJvYXJkSW50ZXJydXB0YCAgIHwgOmV4YzpgS2V5Ym9hcmRJbnRlcnJ1cHRgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX01lbW9yeUVycm9yYCAgICAgICAgIHwgOmV4YzpgTWVtb3J5RXJyb3JgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX05hbWVFcnJvcmAgICAgICAgICAgIHwgOmV4YzpgTmFtZUVycm9yYCAgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX05vdEltcGxlbWVudGVkRXJyb3JgIHwgOmV4YzpgTm90SW1wbGVtZW50ZWRFcnJvcmAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX09TRXJyb3JgICAgICAgICAgICAgIHwgOmV4YzpgT1NFcnJvcmAgICAgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX092ZXJmbG93RXJyb3JgICAgICAgIHwgOmV4YzpgT3ZlcmZsb3dFcnJvcmAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX1JlZmVyZW5jZUVycm9yYCAgICAgIHwgOmV4YzpgUmVmZXJlbmNlRXJyb3JgICAgICAgfCBcKDIpICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX1J1bnRpbWVFcnJvcmAgICAgICAgIHwgOmV4YzpgUnVudGltZUVycm9yYCAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX1N5bnRheEVycm9yYCAgICAgICAgIHwgOmV4YzpgU3ludGF4RXJyb3JgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX1N5c3RlbUVycm9yYCAgICAgICAgIHwgOmV4YzpgU3lzdGVtRXJyb3JgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX1N5c3RlbUV4aXRgICAgICAgICAgIHwgOmV4YzpgU3lzdGVtRXhpdGAgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX1R5cGVFcnJvcmAgICAgICAgICAgIHwgOmV4YzpgVHlwZUVycm9yYCAgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX1ZhbHVlRXJyb3JgICAgICAgICAgIHwgOmV4YzpgVmFsdWVFcnJvcmAgICAgICAgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX1dpbmRvd3NFcnJvcmAgICAgICAgIHwgOmV4YzpgV2luZG93c0Vycm9yYCAgICAgICAgfCBcKDMpICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCi18IDpjOmRhdGE6YFB5RXhjX1plcm9EaXZpc2lvbkVycm9yYCAgIHwgOmV4YzpgWmVyb0RpdmlzaW9uRXJyb3JgICAgfCAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IEMgTmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFB5dGhvbiBOYW1lICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyAgICB8CisrPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT0rCit8IDpjOmRhdGE6YFB5RXhjX0Jhc2VFeGNlcHRpb25gICAgICAgICAgICB8IDpleGM6YEJhc2VFeGNlcHRpb25gICAgICAgICAgICAgfCBcKDEpICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0V4Y2VwdGlvbmAgICAgICAgICAgICAgICB8IDpleGM6YEV4Y2VwdGlvbmAgICAgICAgICAgICAgICAgfCBcKDEpICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0FyaXRobWV0aWNFcnJvcmAgICAgICAgICB8IDpleGM6YEFyaXRobWV0aWNFcnJvcmAgICAgICAgICAgfCBcKDEpICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0xvb2t1cEVycm9yYCAgICAgICAgICAgICB8IDpleGM6YExvb2t1cEVycm9yYCAgICAgICAgICAgICAgfCBcKDEpICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0Fzc2VydGlvbkVycm9yYCAgICAgICAgICB8IDpleGM6YEFzc2VydGlvbkVycm9yYCAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0F0dHJpYnV0ZUVycm9yYCAgICAgICAgICB8IDpleGM6YEF0dHJpYnV0ZUVycm9yYCAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0Jsb2NraW5nSU9FcnJvcmAgICAgICAgICB8IDpleGM6YEJsb2NraW5nSU9FcnJvcmAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0Jyb2tlblBpcGVFcnJvcmAgICAgICAgICB8IDpleGM6YEJyb2tlblBpcGVFcnJvcmAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0NoaWxkUHJvY2Vzc0Vycm9yYCAgICAgICB8IDpleGM6YENoaWxkUHJvY2Vzc0Vycm9yYCAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0Nvbm5lY3Rpb25FcnJvcmAgICAgICAgICB8IDpleGM6YENvbm5lY3Rpb25FcnJvcmAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0Nvbm5lY3Rpb25BYm9ydGVkRXJyb3JgICB8IDpleGM6YENvbm5lY3Rpb25BYm9ydGVkRXJyb3JgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0Nvbm5lY3Rpb25SZWZ1c2VkRXJyb3JgICB8IDpleGM6YENvbm5lY3Rpb25SZWZ1c2VkRXJyb3JgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0Nvbm5lY3Rpb25SZXNldEVycm9yYCAgICB8IDpleGM6YENvbm5lY3Rpb25SZXNldEVycm9yYCAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0ZpbGVFeGlzdHNFcnJvcmAgICAgICAgICB8IDpleGM6YEZpbGVFeGlzdHNFcnJvcmAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0ZpbGVOb3RGb3VuZEVycm9yYCAgICAgICB8IDpleGM6YEZpbGVOb3RGb3VuZEVycm9yYCAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0VPRkVycm9yYCAgICAgICAgICAgICAgICB8IDpleGM6YEVPRkVycm9yYCAgICAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0Zsb2F0aW5nUG9pbnRFcnJvcmAgICAgICB8IDpleGM6YEZsb2F0aW5nUG9pbnRFcnJvcmAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0ltcG9ydEVycm9yYCAgICAgICAgICAgICB8IDpleGM6YEltcG9ydEVycm9yYCAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0luZGV4RXJyb3JgICAgICAgICAgICAgICB8IDpleGM6YEluZGV4RXJyb3JgICAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0ludGVycnVwdGVkRXJyb3JgICAgICAgICB8IDpleGM6YEludGVycnVwdGVkRXJyb3JgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0lzQURpcmVjdG9yeUVycm9yYCAgICAgICB8IDpleGM6YElzQURpcmVjdG9yeUVycm9yYCAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0tleUVycm9yYCAgICAgICAgICAgICAgICB8IDpleGM6YEtleUVycm9yYCAgICAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX0tleWJvYXJkSW50ZXJydXB0YCAgICAgICB8IDpleGM6YEtleWJvYXJkSW50ZXJydXB0YCAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX01lbW9yeUVycm9yYCAgICAgICAgICAgICB8IDpleGM6YE1lbW9yeUVycm9yYCAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX05hbWVFcnJvcmAgICAgICAgICAgICAgICB8IDpleGM6YE5hbWVFcnJvcmAgICAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX05vdEFEaXJlY3RvcnlFcnJvcmAgICAgICB8IDpleGM6YE5vdEFEaXJlY3RvcnlFcnJvcmAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX05vdEltcGxlbWVudGVkRXJyb3JgICAgICB8IDpleGM6YE5vdEltcGxlbWVudGVkRXJyb3JgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX09TRXJyb3JgICAgICAgICAgICAgICAgICB8IDpleGM6YE9TRXJyb3JgICAgICAgICAgICAgICAgICAgfCBcKDEpICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX092ZXJmbG93RXJyb3JgICAgICAgICAgICB8IDpleGM6YE92ZXJmbG93RXJyb3JgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1Blcm1pc3Npb25FcnJvcmAgICAgICAgICB8IDpleGM6YFBlcm1pc3Npb25FcnJvcmAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1Byb2Nlc3NMb29rdXBFcnJvcmAgICAgICB8IDpleGM6YFByb2Nlc3NMb29rdXBFcnJvcmAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1JlZmVyZW5jZUVycm9yYCAgICAgICAgICB8IDpleGM6YFJlZmVyZW5jZUVycm9yYCAgICAgICAgICAgfCBcKDIpICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1J1bnRpbWVFcnJvcmAgICAgICAgICAgICB8IDpleGM6YFJ1bnRpbWVFcnJvcmAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1N5bnRheEVycm9yYCAgICAgICAgICAgICB8IDpleGM6YFN5bnRheEVycm9yYCAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1N5c3RlbUVycm9yYCAgICAgICAgICAgICB8IDpleGM6YFN5c3RlbUVycm9yYCAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1RpbWVvdXRFcnJvcmAgICAgICAgICAgICB8IDpleGM6YFRpbWVvdXRFcnJvcmAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1N5c3RlbUV4aXRgICAgICAgICAgICAgICB8IDpleGM6YFN5c3RlbUV4aXRgICAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1R5cGVFcnJvcmAgICAgICAgICAgICAgICB8IDpleGM6YFR5cGVFcnJvcmAgICAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1ZhbHVlRXJyb3JgICAgICAgICAgICAgICB8IDpleGM6YFZhbHVlRXJyb3JgICAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1plcm9EaXZpc2lvbkVycm9yYCAgICAgICB8IDpleGM6YFplcm9EaXZpc2lvbkVycm9yYCAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCisKKy4uIHZlcnNpb25hZGRlZDo6IDMuMworICAgOmM6ZGF0YTpgUHlFeGNfQmxvY2tpbmdJT0Vycm9yYCwgOmM6ZGF0YTpgUHlFeGNfQnJva2VuUGlwZUVycm9yYCwKKyAgIDpjOmRhdGE6YFB5RXhjX0NoaWxkUHJvY2Vzc0Vycm9yYCwgOmM6ZGF0YTpgUHlFeGNfQ29ubmVjdGlvbkVycm9yYCwKKyAgIDpjOmRhdGE6YFB5RXhjX0Nvbm5lY3Rpb25BYm9ydGVkRXJyb3JgLCA6YzpkYXRhOmBQeUV4Y19Db25uZWN0aW9uUmVmdXNlZEVycm9yYCwKKyAgIDpjOmRhdGE6YFB5RXhjX0Nvbm5lY3Rpb25SZXNldEVycm9yYCwgOmM6ZGF0YTpgUHlFeGNfRmlsZUV4aXN0c0Vycm9yYCwKKyAgIDpjOmRhdGE6YFB5RXhjX0ZpbGVOb3RGb3VuZEVycm9yYCwgOmM6ZGF0YTpgUHlFeGNfSW50ZXJydXB0ZWRFcnJvcmAsCisgICA6YzpkYXRhOmBQeUV4Y19Jc0FEaXJlY3RvcnlFcnJvcmAsIDpjOmRhdGE6YFB5RXhjX05vdEFEaXJlY3RvcnlFcnJvcmAsCisgICA6YzpkYXRhOmBQeUV4Y19QZXJtaXNzaW9uRXJyb3JgLCA6YzpkYXRhOmBQeUV4Y19Qcm9jZXNzTG9va3VwRXJyb3JgCisgICBhbmQgOmM6ZGF0YTpgUHlFeGNfVGltZW91dEVycm9yYCB3ZXJlIGludHJvZHVjZWQgZm9sbG93aW5nIDpwZXA6YDMxNTFgLgorCisKK1RoZXNlIGFyZSBjb21wYXRpYmlsaXR5IGFsaWFzZXMgdG8gOmM6ZGF0YTpgUHlFeGNfT1NFcnJvcmA6CisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IEMgTmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgICAgfAorKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PSsKK3wgOmM6ZGF0YTpgUHlFeGNfRW52aXJvbm1lbnRFcnJvcmAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19JT0Vycm9yYCAgICAgICAgICAgICB8ICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCit8IDpjOmRhdGE6YFB5RXhjX1dpbmRvd3NFcnJvcmAgICAgICAgIHwgXCgzKSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSsKKworLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIFRoZXNlIGFsaWFzZXMgdXNlZCB0byBiZSBzZXBhcmF0ZSBleGNlcHRpb24gdHlwZXMuCisKIAogLi4gaW5kZXg6OgogICAgc2luZ2xlOiBQeUV4Y19CYXNlRXhjZXB0aW9uCkBAIC02NDksMjggKzcwNyw0MiBAQAogICAgc2luZ2xlOiBQeUV4Y19Mb29rdXBFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19Bc3NlcnRpb25FcnJvcgogICAgc2luZ2xlOiBQeUV4Y19BdHRyaWJ1dGVFcnJvcgorICAgc2luZ2xlOiBQeUV4Y19CbG9ja2luZ0lPRXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfQnJva2VuUGlwZUVycm9yCisgICBzaW5nbGU6IFB5RXhjX0Nvbm5lY3Rpb25FcnJvcgorICAgc2luZ2xlOiBQeUV4Y19Db25uZWN0aW9uQWJvcnRlZEVycm9yCisgICBzaW5nbGU6IFB5RXhjX0Nvbm5lY3Rpb25SZWZ1c2VkRXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfQ29ubmVjdGlvblJlc2V0RXJyb3IKICAgIHNpbmdsZTogUHlFeGNfRU9GRXJyb3IKLSAgIHNpbmdsZTogUHlFeGNfRW52aXJvbm1lbnRFcnJvcgorICAgc2luZ2xlOiBQeUV4Y19GaWxlRXhpc3RzRXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfRmlsZU5vdEZvdW5kRXJyb3IKICAgIHNpbmdsZTogUHlFeGNfRmxvYXRpbmdQb2ludEVycm9yCi0gICBzaW5nbGU6IFB5RXhjX0lPRXJyb3IKICAgIHNpbmdsZTogUHlFeGNfSW1wb3J0RXJyb3IKICAgIHNpbmdsZTogUHlFeGNfSW5kZXhFcnJvcgorICAgc2luZ2xlOiBQeUV4Y19JbnRlcnJ1cHRlZEVycm9yCisgICBzaW5nbGU6IFB5RXhjX0lzQURpcmVjdG9yeUVycm9yCiAgICBzaW5nbGU6IFB5RXhjX0tleUVycm9yCiAgICBzaW5nbGU6IFB5RXhjX0tleWJvYXJkSW50ZXJydXB0CiAgICBzaW5nbGU6IFB5RXhjX01lbW9yeUVycm9yCiAgICBzaW5nbGU6IFB5RXhjX05hbWVFcnJvcgorICAgc2luZ2xlOiBQeUV4Y19Ob3RBRGlyZWN0b3J5RXJyb3IKICAgIHNpbmdsZTogUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19PU0Vycm9yCiAgICBzaW5nbGU6IFB5RXhjX092ZXJmbG93RXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfUGVybWlzc2lvbkVycm9yCisgICBzaW5nbGU6IFB5RXhjX1Byb2Nlc3NMb29rdXBFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19SZWZlcmVuY2VFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19SdW50aW1lRXJyb3IKICAgIHNpbmdsZTogUHlFeGNfU3ludGF4RXJyb3IKICAgIHNpbmdsZTogUHlFeGNfU3lzdGVtRXJyb3IKICAgIHNpbmdsZTogUHlFeGNfU3lzdGVtRXhpdAorICAgc2luZ2xlOiBQeUV4Y19UaW1lb3V0RXJyb3IKICAgIHNpbmdsZTogUHlFeGNfVHlwZUVycm9yCiAgICBzaW5nbGU6IFB5RXhjX1ZhbHVlRXJyb3IKLSAgIHNpbmdsZTogUHlFeGNfV2luZG93c0Vycm9yCiAgICBzaW5nbGU6IFB5RXhjX1plcm9EaXZpc2lvbkVycm9yCisgICBzaW5nbGU6IFB5RXhjX0Vudmlyb25tZW50RXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfSU9FcnJvcgorICAgc2luZ2xlOiBQeUV4Y19XaW5kb3dzRXJyb3IKIAogTm90ZXM6CiAKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9mdW5jdGlvbi5yc3QgYi9Eb2MvYy1hcGkvZnVuY3Rpb24ucnN0CmluZGV4IDMxODA1ZmQuLmFkOTgzMjIgMTAwNjQ0Ci0tLSBhL0RvYy9jLWFwaS9mdW5jdGlvbi5yc3QKKysrIGIvRG9jL2MtYXBpL2Z1bmN0aW9uLnJzdApAQCAtMzgsNiArMzgsMTYgQEAKICAgIG9iamVjdCwgdGhlIGFyZ3VtZW50IGRlZmF1bHRzIGFuZCBjbG9zdXJlIGFyZSBzZXQgdG8gKk5VTEwqLgogCiAKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlGdW5jdGlvbl9OZXdXaXRoUXVhbE5hbWUoUHlPYmplY3QgKmNvZGUsIFB5T2JqZWN0ICpnbG9iYWxzLCBQeU9iamVjdCAqcXVhbG5hbWUpCisKKyAgIEFzIDpjOmZ1bmM6YFB5RnVuY3Rpb25fTmV3YCwgYnV0IGFsc28gYWxsb3dzIHRvIHNldCB0aGUgZnVuY3Rpb24gb2JqZWN0J3MKKyAgIGBgX19xdWFsbmFtZV9fYGAgYXR0cmlidXRlLiAgKnF1YWxuYW1lKiBzaG91bGQgYmUgYSB1bmljb2RlIG9iamVjdCBvciBOVUxMOworICAgaWYgTlVMTCwgdGhlIGBgX19xdWFsbmFtZV9fYGAgYXR0cmlidXRlIGlzIHNldCB0byB0aGUgc2FtZSB2YWx1ZSBhcyBpdHMKKyAgIGBgX19uYW1lX19gYCBhdHRyaWJ1dGUuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlGdW5jdGlvbl9HZXRDb2RlKFB5T2JqZWN0ICpvcCkKIAogICAgUmV0dXJuIHRoZSBjb2RlIG9iamVjdCBhc3NvY2lhdGVkIHdpdGggdGhlIGZ1bmN0aW9uIG9iamVjdCAqb3AqLgpkaWZmIC0tZ2l0IGEvRG9jL2MtYXBpL2ltcG9ydC5yc3QgYi9Eb2MvYy1hcGkvaW1wb3J0LnJzdAppbmRleCBjZjQ4MzYzLi5iMTY4NzUxIDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvaW1wb3J0LnJzdAorKysgYi9Eb2MvYy1hcGkvaW1wb3J0LnJzdApAQCAtNTcsNyArNTcsNyBAQAogICAgOmM6ZnVuYzpgUHlJbXBvcnRfSW1wb3J0TW9kdWxlYC4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5SW1wb3J0X0ltcG9ydE1vZHVsZUxldmVsKGNoYXIgKm5hbWUsIFB5T2JqZWN0ICpnbG9iYWxzLCBQeU9iamVjdCAqbG9jYWxzLCBQeU9iamVjdCAqZnJvbWxpc3QsIGludCBsZXZlbCkKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWxPYmplY3QoUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpnbG9iYWxzLCBQeU9iamVjdCAqbG9jYWxzLCBQeU9iamVjdCAqZnJvbWxpc3QsIGludCBsZXZlbCkKIAogICAgSW1wb3J0IGEgbW9kdWxlLiAgVGhpcyBpcyBiZXN0IGRlc2NyaWJlZCBieSByZWZlcnJpbmcgdG8gdGhlIGJ1aWx0LWluIFB5dGhvbgogICAgZnVuY3Rpb24gOmZ1bmM6YF9faW1wb3J0X19gLCBhcyB0aGUgc3RhbmRhcmQgOmZ1bmM6YF9faW1wb3J0X19gIGZ1bmN0aW9uIGNhbGxzCkBAIC02OCw2ICs2OCwxMyBAQAogICAgdGhlIHJldHVybiB2YWx1ZSB3aGVuIGEgc3VibW9kdWxlIG9mIGEgcGFja2FnZSB3YXMgcmVxdWVzdGVkIGlzIG5vcm1hbGx5IHRoZQogICAgdG9wLWxldmVsIHBhY2thZ2UsIHVubGVzcyBhIG5vbi1lbXB0eSAqZnJvbWxpc3QqIHdhcyBnaXZlbi4KIAorICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbChjaGFyICpuYW1lLCBQeU9iamVjdCAqZ2xvYmFscywgUHlPYmplY3QgKmxvY2FscywgUHlPYmplY3QgKmZyb21saXN0LCBpbnQgbGV2ZWwpCisKKyAgIFNpbWlsYXIgdG8gOmM6ZnVuYzpgUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWxPYmplY3RgLCBidXQgdGhlIG5hbWUgaXMgYW4KKyAgIFVURi04IGVuY29kZWQgc3RyaW5nIGluc3RlYWQgb2YgYSBVbmljb2RlIG9iamVjdC4KIAogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUltcG9ydF9JbXBvcnQoUHlPYmplY3QgKm5hbWUpCiAKQEAgLTg2LDcgKzkzLDcgQEAKICAgIGFuIGV4Y2VwdGlvbiBzZXQgb24gZmFpbHVyZSAodGhlIG1vZHVsZSBzdGlsbCBleGlzdHMgaW4gdGhpcyBjYXNlKS4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5SW1wb3J0X0FkZE1vZHVsZShjb25zdCBjaGFyICpuYW1lKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUltcG9ydF9BZGRNb2R1bGVPYmplY3QoUHlPYmplY3QgKm5hbWUpCiAKICAgIFJldHVybiB0aGUgbW9kdWxlIG9iamVjdCBjb3JyZXNwb25kaW5nIHRvIGEgbW9kdWxlIG5hbWUuICBUaGUgKm5hbWUqIGFyZ3VtZW50CiAgICBtYXkgYmUgb2YgdGhlIGZvcm0gYGBwYWNrYWdlLm1vZHVsZWBgLiBGaXJzdCBjaGVjayB0aGUgbW9kdWxlcyBkaWN0aW9uYXJ5IGlmCkBAIC0xMDAsNiArMTA3LDE0IEBACiAgICAgICBvciBvbmUgb2YgaXRzIHZhcmlhbnRzIHRvIGltcG9ydCBhIG1vZHVsZS4gIFBhY2thZ2Ugc3RydWN0dXJlcyBpbXBsaWVkIGJ5IGEKICAgICAgIGRvdHRlZCBuYW1lIGZvciAqbmFtZSogYXJlIG5vdCBjcmVhdGVkIGlmIG5vdCBhbHJlYWR5IHByZXNlbnQuCiAKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlJbXBvcnRfQWRkTW9kdWxlKGNvbnN0IGNoYXIgKm5hbWUpCisKKyAgIFNpbWlsYXIgdG8gOmM6ZnVuYzpgUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0YCwgYnV0IHRoZSBuYW1lIGlzIGEgVVRGLTgKKyAgIGVuY29kZWQgc3RyaW5nIGluc3RlYWQgb2YgYSBVbmljb2RlIG9iamVjdC4KKwogCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlKGNoYXIgKm5hbWUsIFB5T2JqZWN0ICpjbykKIApAQCAtMTM2LDE0ICsxNTEsMjMgQEAKICAgIFNlZSBhbHNvIDpjOmZ1bmM6YFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlV2l0aFBhdGhuYW1lc2AuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZVdpdGhQYXRobmFtZXMoY2hhciAqbmFtZSwgUHlPYmplY3QgKmNvLCBjaGFyICpwYXRobmFtZSwgY2hhciAqY3BhdGhuYW1lKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZU9iamVjdChQeU9iamVjdCAqbmFtZSwgUHlPYmplY3QgKmNvLCBQeU9iamVjdCAqcGF0aG5hbWUsIFB5T2JqZWN0ICpjcGF0aG5hbWUpCiAKICAgIExpa2UgOmM6ZnVuYzpgUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVFeGAsIGJ1dCB0aGUgOmF0dHI6YF9fY2FjaGVkX19gCiAgICBhdHRyaWJ1dGUgb2YgdGhlIG1vZHVsZSBvYmplY3QgaXMgc2V0IHRvICpjcGF0aG5hbWUqIGlmIGl0IGlzCiAgICBub24tYGBOVUxMYGAuICBPZiB0aGUgdGhyZWUgZnVuY3Rpb25zLCB0aGlzIGlzIHRoZSBwcmVmZXJyZWQgb25lIHRvIHVzZS4KIAorICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZVdpdGhQYXRobmFtZXMoY2hhciAqbmFtZSwgUHlPYmplY3QgKmNvLCBjaGFyICpwYXRobmFtZSwgY2hhciAqY3BhdGhuYW1lKQorCisgICBMaWtlIDpjOmZ1bmM6YFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlT2JqZWN0YCwgYnV0ICpuYW1lKiwgKnBhdGhuYW1lKiBhbmQKKyAgICpjcGF0aG5hbWUqIGFyZSBVVEYtOCBlbmNvZGVkIHN0cmluZ3MuCisKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCisKIC4uIGM6ZnVuY3Rpb246OiBsb25nIFB5SW1wb3J0X0dldE1hZ2ljTnVtYmVyKCkKIAogICAgUmV0dXJuIHRoZSBtYWdpYyBudW1iZXIgZm9yIFB5dGhvbiBieXRlY29kZSBmaWxlcyAoYS5rLmEuIDpmaWxlOmAucHljYCBhbmQKQEAgLTIwMCw3ICsyMjQsNyBAQAogICAgRm9yIGludGVybmFsIHVzZSBvbmx5LgogCiAKLS4uIGM6ZnVuY3Rpb246OiBpbnQgUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlKGNoYXIgKm5hbWUpCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZU9iamVjdChQeU9iamVjdCAqbmFtZSkKIAogICAgTG9hZCBhIGZyb3plbiBtb2R1bGUgbmFtZWQgKm5hbWUqLiAgUmV0dXJuIGBgMWBgIGZvciBzdWNjZXNzLCBgYDBgYCBpZiB0aGUKICAgIG1vZHVsZSBpcyBub3QgZm91bmQsIGFuZCBgYC0xYGAgd2l0aCBhbiBleGNlcHRpb24gc2V0IGlmIHRoZSBpbml0aWFsaXphdGlvbgpAQCAtMjA4LDYgKzIzMiwxNCBAQAogICAgOmM6ZnVuYzpgUHlJbXBvcnRfSW1wb3J0TW9kdWxlYC4gIChOb3RlIHRoZSBtaXNub21lciAtLS0gdGhpcyBmdW5jdGlvbiB3b3VsZAogICAgcmVsb2FkIHRoZSBtb2R1bGUgaWYgaXQgd2FzIGFscmVhZHkgaW1wb3J0ZWQuKQogCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZShjaGFyICpuYW1lKQorCisgICBTaW1pbGFyIHRvIDpjOmZ1bmM6YFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZU9iamVjdGAsIGJ1dCB0aGUgbmFtZSBpcyBhCisgICBVVEYtOCBlbmNvZGVkIHN0cmluZyBpbnN0ZWFkIG9mIGEgVW5pY29kZSBvYmplY3QuCisKIAogLi4gYzp0eXBlOjogc3RydWN0IF9mcm96ZW4KIApAQCAtMjQ3LDEzICsyNzksMTMgQEAKIAogICAgU3RydWN0dXJlIGRlc2NyaWJpbmcgYSBzaW5nbGUgZW50cnkgaW4gdGhlIGxpc3Qgb2YgYnVpbHQtaW4gbW9kdWxlcy4gIEVhY2ggb2YKICAgIHRoZXNlIHN0cnVjdHVyZXMgZ2l2ZXMgdGhlIG5hbWUgYW5kIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uIGZvciBhIG1vZHVsZSBidWlsdAotICAgaW50byB0aGUgaW50ZXJwcmV0ZXIuICBQcm9ncmFtcyB3aGljaCBlbWJlZCBQeXRob24gbWF5IHVzZSBhbiBhcnJheSBvZiB0aGVzZQotICAgc3RydWN0dXJlcyBpbiBjb25qdW5jdGlvbiB3aXRoIDpjOmZ1bmM6YFB5SW1wb3J0X0V4dGVuZEluaXR0YWJgIHRvIHByb3ZpZGUKLSAgIGFkZGl0aW9uYWwgYnVpbHQtaW4gbW9kdWxlcy4gIFRoZSBzdHJ1Y3R1cmUgaXMgZGVmaW5lZCBpbgotICAgOmZpbGU6YEluY2x1ZGUvaW1wb3J0LmhgIGFzOjoKKyAgIGludG8gdGhlIGludGVycHJldGVyLiAgVGhlIG5hbWUgaXMgYW4gQVNDSUkgZW5jb2RlZCBzdHJpbmcuICBQcm9ncmFtcyB3aGljaAorICAgZW1iZWQgUHl0aG9uIG1heSB1c2UgYW4gYXJyYXkgb2YgdGhlc2Ugc3RydWN0dXJlcyBpbiBjb25qdW5jdGlvbiB3aXRoCisgICA6YzpmdW5jOmBQeUltcG9ydF9FeHRlbmRJbml0dGFiYCB0byBwcm92aWRlIGFkZGl0aW9uYWwgYnVpbHQtaW4gbW9kdWxlcy4KKyAgIFRoZSBzdHJ1Y3R1cmUgaXMgZGVmaW5lZCBpbiA6ZmlsZTpgSW5jbHVkZS9pbXBvcnQuaGAgYXM6OgogCiAgICAgICBzdHJ1Y3QgX2luaXR0YWIgewotICAgICAgICAgIGNoYXIgKm5hbWU7CisgICAgICAgICAgY2hhciAqbmFtZTsgICAgICAgICAgICAgICAgIC8qIEFTQ0lJIGVuY29kZWQgc3RyaW5nICovCiAgICAgICAgICAgUHlPYmplY3QqICgqaW5pdGZ1bmMpKHZvaWQpOwogICAgICAgfTsKIApkaWZmIC0tZ2l0IGEvRG9jL2MtYXBpL2xpc3QucnN0IGIvRG9jL2MtYXBpL2xpc3QucnN0CmluZGV4IGZlYjkwMTUuLjViMjYzYTcgMTAwNjQ0Ci0tLSBhL0RvYy9jLWFwaS9saXN0LnJzdAorKysgYi9Eb2MvYy1hcGkvbGlzdC5yc3QKQEAgLTE0MiwzICsxNDIsMTAgQEAKIAogICAgUmV0dXJuIGEgbmV3IHR1cGxlIG9iamVjdCBjb250YWluaW5nIHRoZSBjb250ZW50cyBvZiAqbGlzdCo7IGVxdWl2YWxlbnQgdG8KICAgIGBgdHVwbGUobGlzdClgYC4KKworCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5TGlzdF9DbGVhckZyZWVMaXN0KCkKKworICAgQ2xlYXIgdGhlIGZyZWUgbGlzdC4gUmV0dXJuIHRoZSB0b3RhbCBudW1iZXIgb2YgZnJlZWQgaXRlbXMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwpkaWZmIC0tZ2l0IGEvRG9jL2MtYXBpL2xvbmcucnN0IGIvRG9jL2MtYXBpL2xvbmcucnN0CmluZGV4IGIyMjk1ZTAuLjRjMjk1ZmEgMTAwNjQ0Ci0tLSBhL0RvYy9jLWFwaS9sb25nLnJzdAorKysgYi9Eb2MvYy1hcGkvbG9uZy5yc3QKQEAgLTEwMCw2ICsxMDAsMjAgQEAKICAgIHN0cmluZyBpcyBmaXJzdCBlbmNvZGVkIHRvIGEgYnl0ZSBzdHJpbmcgdXNpbmcgOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZURlY2ltYWxgCiAgICBhbmQgdGhlbiBjb252ZXJ0ZWQgdXNpbmcgOmM6ZnVuYzpgUHlMb25nX0Zyb21TdHJpbmdgLgogCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgQVBJOyBwbGVhc2UgbWlncmF0ZSB0byB1c2luZworICAgICAgOmM6ZnVuYzpgUHlMb25nX0Zyb21Vbmljb2RlT2JqZWN0YC4KKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5TG9uZ19Gcm9tVW5pY29kZU9iamVjdChQeU9iamVjdCAqdSwgaW50IGJhc2UpCisKKyAgIENvbnZlcnQgYSBzZXF1ZW5jZSBvZiBVbmljb2RlIGRpZ2l0cyBpbiB0aGUgc3RyaW5nICp1KiB0byBhIFB5dGhvbiBpbnRlZ2VyCisgICB2YWx1ZS4gIFRoZSBVbmljb2RlIHN0cmluZyBpcyBmaXJzdCBlbmNvZGVkIHRvIGEgYnl0ZSBzdHJpbmcgdXNpbmcKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVEZWNpbWFsYCBhbmQgdGhlbiBjb252ZXJ0ZWQgdXNpbmcKKyAgIDpjOmZ1bmM6YFB5TG9uZ19Gcm9tU3RyaW5nYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIAogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUxvbmdfRnJvbVZvaWRQdHIodm9pZCAqcCkKIApkaWZmIC0tZ2l0IGEvRG9jL2MtYXBpL21lbW9yeXZpZXcucnN0IGIvRG9jL2MtYXBpL21lbW9yeXZpZXcucnN0CmluZGV4IDZiNDljZGYuLjVlNTA5NzcgMTAwNjQ0Ci0tLSBhL0RvYy9jLWFwaS9tZW1vcnl2aWV3LnJzdAorKysgYi9Eb2MvYy1hcGkvbWVtb3J5dmlldy5yc3QKQEAgLTE3LDE2ICsxNywyMSBAQAogCiAgICBDcmVhdGUgYSBtZW1vcnl2aWV3IG9iamVjdCBmcm9tIGFuIG9iamVjdCB0aGF0IHByb3ZpZGVzIHRoZSBidWZmZXIgaW50ZXJmYWNlLgogICAgSWYgKm9iaiogc3VwcG9ydHMgd3JpdGFibGUgYnVmZmVyIGV4cG9ydHMsIHRoZSBtZW1vcnl2aWV3IG9iamVjdCB3aWxsIGJlCi0gICByZWFkYWJsZSBhbmQgd3JpdGFibGUsIG90aGVyd2lzZSBpdCB3aWxsIGJlIHJlYWQtb25seS4KKyAgIHJlYWQvd3JpdGUsIG90aGVyd2lzZSBpdCBtYXkgYmUgZWl0aGVyIHJlYWQtb25seSBvciByZWFkL3dyaXRlIGF0IHRoZQorICAgZGlzY3JldGlvbiBvZiB0aGUgZXhwb3J0ZXIuCiAKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCAqUHlNZW1vcnlWaWV3X0Zyb21NZW1vcnkoY2hhciAqbWVtLCBQeV9zc2l6ZV90IHNpemUsIGludCBmbGFncykKKworICAgQ3JlYXRlIGEgbWVtb3J5dmlldyBvYmplY3QgdXNpbmcgKm1lbSogYXMgdGhlIHVuZGVybHlpbmcgYnVmZmVyLgorICAgKmZsYWdzKiBjYW4gYmUgb25lIG9mIDpjOm1hY3JvOmBQeUJVRl9SRUFEYCBvciA6YzptYWNybzpgUHlCVUZfV1JJVEVgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0ICpQeU1lbW9yeVZpZXdfRnJvbUJ1ZmZlcihQeV9idWZmZXIgKnZpZXcpCiAKICAgIENyZWF0ZSBhIG1lbW9yeXZpZXcgb2JqZWN0IHdyYXBwaW5nIHRoZSBnaXZlbiBidWZmZXIgc3RydWN0dXJlICp2aWV3Ki4KLSAgIFRoZSBtZW1vcnl2aWV3IG9iamVjdCB0aGVuIG93bnMgdGhlIGJ1ZmZlciByZXByZXNlbnRlZCBieSAqdmlldyosIHdoaWNoCi0gICBtZWFucyB5b3Ugc2hvdWxkbid0IHRyeSB0byBjYWxsIDpjOmZ1bmM6YFB5QnVmZmVyX1JlbGVhc2VgIHlvdXJzZWxmOiBpdAotICAgd2lsbCBiZSBkb25lIG9uIGRlYWxsb2NhdGlvbiBvZiB0aGUgbWVtb3J5dmlldyBvYmplY3QuCi0KKyAgIEZvciBzaW1wbGUgYnl0ZSBidWZmZXJzLCA6YzpmdW5jOmBQeU1lbW9yeVZpZXdfRnJvbU1lbW9yeWAgaXMgdGhlIHByZWZlcnJlZAorICAgZnVuY3Rpb24uCiAKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCAqUHlNZW1vcnlWaWV3X0dldENvbnRpZ3VvdXMoUHlPYmplY3QgKm9iaiwgaW50IGJ1ZmZlcnR5cGUsIGNoYXIgb3JkZXIpCiAKQEAgLTQzLDEwICs0OCwxNiBAQAogICAgY3VycmVudGx5IGFsbG93ZWQgdG8gY3JlYXRlIHN1YmNsYXNzZXMgb2YgOmNsYXNzOmBtZW1vcnl2aWV3YC4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlfYnVmZmVyICpQeU1lbW9yeVZpZXdfR0VUX0JVRkZFUihQeU9iamVjdCAqb2JqKQorLi4gYzpmdW5jdGlvbjo6IFB5X2J1ZmZlciAqUHlNZW1vcnlWaWV3X0dFVF9CVUZGRVIoUHlPYmplY3QgKm12aWV3KQogCi0gICBSZXR1cm4gYSBwb2ludGVyIHRvIHRoZSBidWZmZXIgc3RydWN0dXJlIHdyYXBwZWQgYnkgdGhlIGdpdmVuCi0gICBtZW1vcnl2aWV3IG9iamVjdC4gIFRoZSBvYmplY3QgKiptdXN0KiogYmUgYSBtZW1vcnl2aWV3IGluc3RhbmNlOwotICAgdGhpcyBtYWNybyBkb2Vzbid0IGNoZWNrIGl0cyB0eXBlLCB5b3UgbXVzdCBkbyBpdCB5b3Vyc2VsZiBvciB5b3UKLSAgIHdpbGwgcmlzayBjcmFzaGVzLgorICAgUmV0dXJuIGEgcG9pbnRlciB0byB0aGUgbWVtb3J5dmlldydzIHByaXZhdGUgY29weSBvZiB0aGUgZXhwb3J0ZXIncyBidWZmZXIuCisgICAqbXZpZXcqICoqbXVzdCoqIGJlIGEgbWVtb3J5dmlldyBpbnN0YW5jZTsgdGhpcyBtYWNybyBkb2Vzbid0IGNoZWNrIGl0cyB0eXBlLAorICAgeW91IG11c3QgZG8gaXQgeW91cnNlbGYgb3IgeW91IHdpbGwgcmlzayBjcmFzaGVzLgorCisuLiBjOmZ1bmN0aW9uOjogUHlfYnVmZmVyICpQeU1lbW9yeVZpZXdfR0VUX0JBU0UoUHlPYmplY3QgKm12aWV3KQorCisgICBSZXR1cm4gZWl0aGVyIGEgcG9pbnRlciB0byB0aGUgZXhwb3J0aW5nIG9iamVjdCB0aGF0IHRoZSBtZW1vcnl2aWV3IGlzIGJhc2VkCisgICBvbiBvciAqTlVMTCogaWYgdGhlIG1lbW9yeXZpZXcgaGFzIGJlZW4gY3JlYXRlZCBieSBvbmUgb2YgdGhlIGZ1bmN0aW9ucworICAgOmM6ZnVuYzpgUHlNZW1vcnlWaWV3X0Zyb21NZW1vcnlgIG9yIDpjOmZ1bmM6YFB5TWVtb3J5Vmlld19Gcm9tQnVmZmVyYC4KKyAgICptdmlldyogKiptdXN0KiogYmUgYSBtZW1vcnl2aWV3IGluc3RhbmNlLgogCmRpZmYgLS1naXQgYS9Eb2MvYy1hcGkvbW9kdWxlLnJzdCBiL0RvYy9jLWFwaS9tb2R1bGUucnN0CmluZGV4IGZmZDY4ZTMuLjMyNTg3YmUgMTAwNjQ0Ci0tLSBhL0RvYy9jLWFwaS9tb2R1bGUucnN0CisrKyBiL0RvYy9jLWFwaS9tb2R1bGUucnN0CkBAIC0yOSw3ICsyOSw3IEBACiAgICA6YzpkYXRhOmBQeU1vZHVsZV9UeXBlYC4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5TW9kdWxlX05ldyhjb25zdCBjaGFyICpuYW1lKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeU1vZHVsZV9OZXdPYmplY3QoUHlPYmplY3QgKm5hbWUpCiAKICAgIC4uIGluZGV4OjoKICAgICAgIHNpbmdsZTogX19uYW1lX18gKG1vZHVsZSBhdHRyaWJ1dGUpCkBAIC00MCw2ICs0MCwxNCBAQAogICAgT25seSB0aGUgbW9kdWxlJ3MgOmF0dHI6YF9fZG9jX19gIGFuZCA6YXR0cjpgX19uYW1lX19gIGF0dHJpYnV0ZXMgYXJlIGZpbGxlZCBpbjsKICAgIHRoZSBjYWxsZXIgaXMgcmVzcG9uc2libGUgZm9yIHByb3ZpZGluZyBhIDphdHRyOmBfX2ZpbGVfX2AgYXR0cmlidXRlLgogCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5TW9kdWxlX05ldyhjb25zdCBjaGFyICpuYW1lKQorCisgICBTaW1pbGFyIHRvIDpjOmZ1bmM6YFB5SW1wb3J0X05ld09iamVjdGAsIGJ1dCB0aGUgbmFtZSBpcyBhbiBVVEYtOCBlbmNvZGVkCisgICBzdHJpbmcgaW5zdGVhZCBvZiBhIFVuaWNvZGUgb2JqZWN0LgorCiAKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlNb2R1bGVfR2V0RGljdChQeU9iamVjdCAqbW9kdWxlKQogCkBAIC01Miw3ICs2MCw3IEBACiAgICBtYW5pcHVsYXRlIGEgbW9kdWxlJ3MgOmF0dHI6YF9fZGljdF9fYC4KIAogCi0uLiBjOmZ1bmN0aW9uOjogY2hhciogUHlNb2R1bGVfR2V0TmFtZShQeU9iamVjdCAqbW9kdWxlKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeU1vZHVsZV9HZXROYW1lT2JqZWN0KFB5T2JqZWN0ICptb2R1bGUpCiAKICAgIC4uIGluZGV4OjoKICAgICAgIHNpbmdsZTogX19uYW1lX18gKG1vZHVsZSBhdHRyaWJ1dGUpCkBAIC02MSwxNSArNjksMTMgQEAKICAgIFJldHVybiAqbW9kdWxlKidzIDphdHRyOmBfX25hbWVfX2AgdmFsdWUuICBJZiB0aGUgbW9kdWxlIGRvZXMgbm90IHByb3ZpZGUgb25lLAogICAgb3IgaWYgaXQgaXMgbm90IGEgc3RyaW5nLCA6ZXhjOmBTeXN0ZW1FcnJvcmAgaXMgcmFpc2VkIGFuZCAqTlVMTCogaXMgcmV0dXJuZWQuCiAKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCi0uLiBjOmZ1bmN0aW9uOjogY2hhciogUHlNb2R1bGVfR2V0RmlsZW5hbWUoUHlPYmplY3QgKm1vZHVsZSkKIAotICAgU2ltaWxhciB0byA6YzpmdW5jOmBQeU1vZHVsZV9HZXRGaWxlbmFtZU9iamVjdGAgYnV0IHJldHVybiB0aGUgZmlsZW5hbWUKLSAgIGVuY29kZWQgdG8gJ3V0Zi04Jy4KKy4uIGM6ZnVuY3Rpb246OiBjaGFyKiBQeU1vZHVsZV9HZXROYW1lKFB5T2JqZWN0ICptb2R1bGUpCiAKLSAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjIKLSAgICAgIDpjOmZ1bmM6YFB5TW9kdWxlX0dldEZpbGVuYW1lYCByYWlzZXMgOmM6dHlwZTpgVW5pY29kZUVuY29kZUVycm9yYCBvbgotICAgICAgdW5lbmNvZGFibGUgZmlsZW5hbWVzLCB1c2UgOmM6ZnVuYzpgUHlNb2R1bGVfR2V0RmlsZW5hbWVPYmplY3RgIGluc3RlYWQuCisgICBTaW1pbGFyIHRvIDpjOmZ1bmM6YFB5TW9kdWxlX0dldE5hbWVPYmplY3RgIGJ1dCByZXR1cm4gdGhlIG5hbWUgZW5jb2RlZCB0bworICAgYGAndXRmLTgnYGAuCiAKIAogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeU1vZHVsZV9HZXRGaWxlbmFtZU9iamVjdChQeU9iamVjdCAqbW9kdWxlKQpAQCAtODEsMTEgKzg3LDIxIEBACiAgICBSZXR1cm4gdGhlIG5hbWUgb2YgdGhlIGZpbGUgZnJvbSB3aGljaCAqbW9kdWxlKiB3YXMgbG9hZGVkIHVzaW5nICptb2R1bGUqJ3MKICAgIDphdHRyOmBfX2ZpbGVfX2AgYXR0cmlidXRlLiAgSWYgdGhpcyBpcyBub3QgZGVmaW5lZCwgb3IgaWYgaXQgaXMgbm90IGEKICAgIHVuaWNvZGUgc3RyaW5nLCByYWlzZSA6ZXhjOmBTeXN0ZW1FcnJvcmAgYW5kIHJldHVybiAqTlVMTCo7IG90aGVyd2lzZSByZXR1cm4KLSAgIGEgcmVmZXJlbmNlIHRvIGEgOmM6dHlwZTpgUHlVbmljb2RlT2JqZWN0YC4KKyAgIGEgcmVmZXJlbmNlIHRvIGEgVW5pY29kZSBvYmplY3QuCiAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCiAKKy4uIGM6ZnVuY3Rpb246OiBjaGFyKiBQeU1vZHVsZV9HZXRGaWxlbmFtZShQeU9iamVjdCAqbW9kdWxlKQorCisgICBTaW1pbGFyIHRvIDpjOmZ1bmM6YFB5TW9kdWxlX0dldEZpbGVuYW1lT2JqZWN0YCBidXQgcmV0dXJuIHRoZSBmaWxlbmFtZQorICAgZW5jb2RlZCB0byAndXRmLTgnLgorCisgICAuLiBkZXByZWNhdGVkOjogMy4yCisgICAgICA6YzpmdW5jOmBQeU1vZHVsZV9HZXRGaWxlbmFtZWAgcmFpc2VzIDpjOnR5cGU6YFVuaWNvZGVFbmNvZGVFcnJvcmAgb24KKyAgICAgIHVuZW5jb2RhYmxlIGZpbGVuYW1lcywgdXNlIDpjOmZ1bmM6YFB5TW9kdWxlX0dldEZpbGVuYW1lT2JqZWN0YCBpbnN0ZWFkLgorCisKIC4uIGM6ZnVuY3Rpb246OiB2b2lkKiBQeU1vZHVsZV9HZXRTdGF0ZShQeU9iamVjdCAqbW9kdWxlKQogCiAgICBSZXR1cm4gdGhlICJzdGF0ZSIgb2YgdGhlIG1vZHVsZSwgdGhhdCBpcywgYSBwb2ludGVyIHRvIHRoZSBibG9jayBvZiBtZW1vcnkKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9vYmplY3QucnN0IGIvRG9jL2MtYXBpL29iamVjdC5yc3QKaW5kZXggZDBkNDVhZC4uZDg5NTU0NyAxMDA2NDQKLS0tIGEvRG9jL2MtYXBpL29iamVjdC5yc3QKKysrIGIvRG9jL2MtYXBpL29iamVjdC5yc3QKQEAgLTYsNiArNiwxOSBAQAogPT09PT09PT09PT09PT09CiAKIAorLi4gYzp2YXI6OiBQeU9iamVjdCogUHlfTm90SW1wbGVtZW50ZWQKKworICAgVGhlIGBgTm90SW1wbGVtZW50ZWRgYCBzaW5nbGV0b24sIHVzZWQgdG8gc2lnbmFsIHRoYXQgYW4gb3BlcmF0aW9uIGlzCisgICBub3QgaW1wbGVtZW50ZWQgZm9yIHRoZSBnaXZlbiB0eXBlIGNvbWJpbmF0aW9uLgorCisKKy4uIGM6bWFjcm86OiBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQKKworICAgUHJvcGVybHkgaGFuZGxlIHJldHVybmluZyA6YzpkYXRhOmBQeV9Ob3RJbXBsZW1lbnRlZGAgZnJvbSB3aXRoaW4gYSBDCisgICBmdW5jdGlvbiAodGhhdCBpcywgaW5jcmVtZW50IHRoZSByZWZlcmVuY2UgY291bnQgb2YgTm90SW1wbGVtZW50ZWQgYW5kCisgICByZXR1cm4gaXQpLgorCisKIC4uIGM6ZnVuY3Rpb246OiBpbnQgUHlPYmplY3RfUHJpbnQoUHlPYmplY3QgKm8sIEZJTEUgKmZwLCBpbnQgZmxhZ3MpCiAKICAgIFByaW50IGFuIG9iamVjdCAqbyosIG9uIGZpbGUgKmZwKi4gIFJldHVybnMgYGAtMWBgIG9uIGVycm9yLiAgVGhlIGZsYWdzIGFyZ3VtZW50CkBAIC04OCw2ICsxMDEsMjIgQEAKICAgIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgdGhlIFB5dGhvbiBzdGF0ZW1lbnQgYGBkZWwgby5hdHRyX25hbWVgYC4KIAogCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VHlwZV9HZW5lcmljR2V0RGljdChQeU9iamVjdCAqbywgdm9pZCAqY29udGV4dCkKKworICAgQSBnZW5lcmljIGltcGxlbWVudGF0aW9uIGZvciB0aGUgZ2V0dGVyIG9mIGEgYGBfX2RpY3RfX2BgIGRlc2NyaXB0b3IuIEl0CisgICBjcmVhdGVzIHRoZSBkaWN0aW9uYXJ5IGlmIG5lY2Vzc2FyeS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IGludCBQeVR5cGVfR2VuZXJpY1NldERpY3QoUHlPYmplY3QgKm8sIHZvaWQgKmNvbnRleHQpCisKKyAgIEEgZ2VuZXJpYyBpbXBsZW1lbnRhdGlvbiBmb3IgdGhlIHNldHRlciBvZiBhIGBgX19kaWN0X19gYCBkZXNjcmlwdG9yLiBUaGlzCisgICBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCBhbGxvdyB0aGUgZGljdGlvbmFyeSB0byBiZSBkZWxldGVkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5T2JqZWN0X1JpY2hDb21wYXJlKFB5T2JqZWN0ICpvMSwgUHlPYmplY3QgKm8yLCBpbnQgb3BpZCkKIAogICAgQ29tcGFyZSB0aGUgdmFsdWVzIG9mICpvMSogYW5kICpvMiogdXNpbmcgdGhlIG9wZXJhdGlvbiBzcGVjaWZpZWQgYnkgKm9waWQqLApkaWZmIC0tZ2l0IGEvRG9jL2MtYXBpL3NldC5yc3QgYi9Eb2MvYy1hcGkvc2V0LnJzdAppbmRleCA2NmI0N2M0Li41ZjBlZjkwIDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvc2V0LnJzdAorKysgYi9Eb2MvYy1hcGkvc2V0LnJzdApAQCAtMTU3LDMgKzE1NywxMCBAQAogLi4gYzpmdW5jdGlvbjo6IGludCBQeVNldF9DbGVhcihQeU9iamVjdCAqc2V0KQogCiAgICBFbXB0eSBhbiBleGlzdGluZyBzZXQgb2YgYWxsIGVsZW1lbnRzLgorCisKKy4uIGM6ZnVuY3Rpb246OiBpbnQgUHlTZXRfQ2xlYXJGcmVlTGlzdCgpCisKKyAgIENsZWFyIHRoZSBmcmVlIGxpc3QuIFJldHVybiB0aGUgdG90YWwgbnVtYmVyIG9mIGZyZWVkIGl0ZW1zLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS90eXBlLnJzdCBiL0RvYy9jLWFwaS90eXBlLnJzdAppbmRleCBiMzM4NmVhLi5jZmQwZDc4IDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvdHlwZS5yc3QKKysrIGIvRG9jL2MtYXBpL3R5cGUucnN0CkBAIC03NSw4ICs3NSw4IEBACiAKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlUeXBlX0dlbmVyaWNOZXcoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiAKLSAgIFhYWDogRG9jdW1lbnQuCi0KKyAgIEdlbmVyaWMgaGFuZGxlciBmb3IgdGhlIDphdHRyOmB0cF9uZXdgIHNsb3Qgb2YgYSB0eXBlIG9iamVjdC4gIEluaXRpYWxpemUKKyAgIGFsbCBpbnN0YW5jZSB2YXJpYWJsZXMgdG8gKk5VTEwqLgogCiAuLiBjOmZ1bmN0aW9uOjogaW50IFB5VHlwZV9SZWFkeShQeVR5cGVPYmplY3QgKnR5cGUpCiAKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS90eXBlb2JqLnJzdCBiL0RvYy9jLWFwaS90eXBlb2JqLnJzdAppbmRleCA2OGNhOWFkLi5lYTFhMGFkIDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvdHlwZW9iai5yc3QKKysrIGIvRG9jL2MtYXBpL3R5cGVvYmoucnN0CkBAIC0xMTk4LDQ2ICsxMTk4LDg4IEBACiAKIC4uIHNlY3Rpb25hdXRob3I6OiBHcmVnIEouIFN0ZWluIDxncmVnQGx5cmEub3JnPgogLi4gc2VjdGlvbmF1dGhvcjo6IEJlbmphbWluIFBldGVyc29uCi0KLQotVGhlIDpyZWY6YGJ1ZmZlciBpbnRlcmZhY2UgPGJ1ZmZlcm9iamVjdHM+YCBleHBvcnRzIGEgbW9kZWwgd2hlcmUgYW4gb2JqZWN0IGNhbiBleHBvc2UgaXRzIGludGVybmFsCi1kYXRhLgotCi1JZiBhbiBvYmplY3QgZG9lcyBub3QgZXhwb3J0IHRoZSBidWZmZXIgaW50ZXJmYWNlLCB0aGVuIGl0cyA6YXR0cjpgdHBfYXNfYnVmZmVyYAotbWVtYmVyIGluIHRoZSA6Yzp0eXBlOmBQeVR5cGVPYmplY3RgIHN0cnVjdHVyZSBzaG91bGQgYmUgKk5VTEwqLiAgT3RoZXJ3aXNlLCB0aGUKLTphdHRyOmB0cF9hc19idWZmZXJgIHdpbGwgcG9pbnQgdG8gYSA6Yzp0eXBlOmBQeUJ1ZmZlclByb2NzYCBzdHJ1Y3R1cmUuCi0KKy4uIHNlY3Rpb25hdXRob3I6OiBTdGVmYW4gS3JhaAogCiAuLiBjOnR5cGU6OiBQeUJ1ZmZlclByb2NzCiAKLSAgIFN0cnVjdHVyZSB1c2VkIHRvIGhvbGQgdGhlIGZ1bmN0aW9uIHBvaW50ZXJzIHdoaWNoIGRlZmluZSBhbiBpbXBsZW1lbnRhdGlvbiBvZgotICAgdGhlIGJ1ZmZlciBwcm90b2NvbC4KKyAgIFRoaXMgc3RydWN0dXJlIGhvbGRzIHBvaW50ZXJzIHRvIHRoZSBmdW5jdGlvbnMgcmVxdWlyZWQgYnkgdGhlCisgICA6cmVmOmBCdWZmZXIgcHJvdG9jb2wgPGJ1ZmZlcm9iamVjdHM+YC4gVGhlIHByb3RvY29sIGRlZmluZXMgaG93CisgICBhbiBleHBvcnRlciBvYmplY3QgY2FuIGV4cG9zZSBpdHMgaW50ZXJuYWwgZGF0YSB0byBjb25zdW1lciBvYmplY3RzLgogCi0gICAuLiBjOm1lbWJlcjo6IGdldGJ1ZmZlcnByb2MgYmZfZ2V0YnVmZmVyCisuLiBjOm1lbWJlcjo6IGdldGJ1ZmZlcnByb2MgUHlCdWZmZXJQcm9jcy5iZl9nZXRidWZmZXIKIAotICAgICAgVGhpcyBzaG91bGQgZmlsbCBhIDpjOnR5cGU6YFB5X2J1ZmZlcmAgd2l0aCB0aGUgbmVjZXNzYXJ5IGRhdGEgZm9yCi0gICAgICBleHBvcnRpbmcgdGhlIHR5cGUuICBUaGUgc2lnbmF0dXJlIG9mIDpkYXRhOmBnZXRidWZmZXJwcm9jYCBpcyBgYGludAotICAgICAgKFB5T2JqZWN0ICpvYmosIFB5X2J1ZmZlciAqdmlldywgaW50IGZsYWdzKWBgLiAgKm9iaiogaXMgdGhlIG9iamVjdCB0bwotICAgICAgZXhwb3J0LCAqdmlldyogaXMgdGhlIDpjOnR5cGU6YFB5X2J1ZmZlcmAgc3RydWN0IHRvIGZpbGwsIGFuZCAqZmxhZ3MqIGdpdmVzCi0gICAgICB0aGUgY29uZGl0aW9ucyB0aGUgY2FsbGVyIHdhbnRzIHRoZSBtZW1vcnkgdW5kZXIuICAoU2VlCi0gICAgICA6YzpmdW5jOmBQeU9iamVjdF9HZXRCdWZmZXJgIGZvciBhbGwgZmxhZ3MuKSAgOmM6bWVtYmVyOmBiZl9nZXRidWZmZXJgIGlzCi0gICAgICByZXNwb25zaWJsZSBmb3IgZmlsbGluZyAqdmlldyogd2l0aCB0aGUgYXBwcm9wcmlhdGUgaW5mb3JtYXRpb24uCi0gICAgICAoOmM6ZnVuYzpgUHlCdWZmZXJfRmlsbFZpZXdgIGNhbiBiZSB1c2VkIGluIHNpbXBsZSBjYXNlcy4pICBTZWUKLSAgICAgIDpjOnR5cGU6YFB5X2J1ZmZlcmBccyBkb2NzIGZvciB3aGF0IG5lZWRzIHRvIGJlIGZpbGxlZCBpbi4KKyAgIFRoZSBzaWduYXR1cmUgb2YgdGhpcyBmdW5jdGlvbiBpczo6CisKKyAgICAgICBpbnQgKFB5T2JqZWN0ICpleHBvcnRlciwgUHlfYnVmZmVyICp2aWV3LCBpbnQgZmxhZ3MpOworCisgICBIYW5kbGUgYSByZXF1ZXN0IHRvICpleHBvcnRlciogdG8gZmlsbCBpbiAqdmlldyogYXMgc3BlY2lmaWVkIGJ5ICpmbGFncyouCisgICBFeGNlcHQgZm9yIHBvaW50ICgzKSwgYW4gaW1wbGVtZW50YXRpb24gb2YgdGhpcyBmdW5jdGlvbiBNVVNUIHRha2UgdGhlc2UKKyAgIHN0ZXBzOgorCisgICAoMSkgQ2hlY2sgaWYgdGhlIHJlcXVlc3QgY2FuIGJlIG1ldC4gSWYgbm90LCByYWlzZSA6YzpkYXRhOmBQeUV4Y19CdWZmZXJFcnJvcmAsCisgICAgICAgc2V0IDpjOmRhdGE6YHZpZXctPm9iamAgdG8gKk5VTEwqIGFuZCByZXR1cm4gLTEuCisKKyAgICgyKSBGaWxsIGluIHRoZSByZXF1ZXN0ZWQgZmllbGRzLgorCisgICAoMykgSW5jcmVtZW50IGFuIGludGVybmFsIGNvdW50ZXIgZm9yIHRoZSBudW1iZXIgb2YgZXhwb3J0cy4KKworICAgKDQpIFNldCA6YzpkYXRhOmB2aWV3LT5vYmpgIHRvICpleHBvcnRlciogYW5kIGluY3JlbWVudCA6YzpkYXRhOmB2aWV3LT5vYmpgLgorCisgICAoNSkgUmV0dXJuIDAuCisKKyAgIElmICpleHBvcnRlciogaXMgcGFydCBvZiBhIGNoYWluIG9yIHRyZWUgb2YgYnVmZmVyIHByb3ZpZGVycywgdHdvIG1haW4KKyAgIHNjaGVtZXMgY2FuIGJlIHVzZWQ6CisKKyAgICogUmUtZXhwb3J0OiBFYWNoIG1lbWJlciBvZiB0aGUgdHJlZSBhY3RzIGFzIHRoZSBleHBvcnRpbmcgb2JqZWN0IGFuZAorICAgICBzZXRzIDpjOmRhdGE6YHZpZXctPm9iamAgdG8gYSBuZXcgcmVmZXJlbmNlIHRvIGl0c2VsZi4KKworICAgKiBSZWRpcmVjdDogVGhlIGJ1ZmZlciByZXF1ZXN0IGlzIHJlZGlyZWN0ZWQgdG8gdGhlIHJvb3Qgb2JqZWN0IG9mIHRoZQorICAgICB0cmVlLiBIZXJlLCA6YzpkYXRhOmB2aWV3LT5vYmpgIHdpbGwgYmUgYSBuZXcgcmVmZXJlbmNlIHRvIHRoZSByb290CisgICAgIG9iamVjdC4KKworICAgVGhlIGluZGl2aWR1YWwgZmllbGRzIG9mICp2aWV3KiBhcmUgZGVzY3JpYmVkIGluIHNlY3Rpb24KKyAgIDpyZWY6YEJ1ZmZlciBzdHJ1Y3R1cmUgPGJ1ZmZlci1zdHJ1Y3R1cmU+YCwgdGhlIHJ1bGVzIGhvdyBhbiBleHBvcnRlcgorICAgbXVzdCByZWFjdCB0byBzcGVjaWZpYyByZXF1ZXN0cyBhcmUgaW4gc2VjdGlvbgorICAgOnJlZjpgQnVmZmVyIHJlcXVlc3QgdHlwZXMgPGJ1ZmZlci1yZXF1ZXN0LXR5cGVzPmAuCisKKyAgIEFsbCBtZW1vcnkgcG9pbnRlZCB0byBpbiB0aGUgOmM6dHlwZTpgUHlfYnVmZmVyYCBzdHJ1Y3R1cmUgYmVsb25ncyB0bworICAgdGhlIGV4cG9ydGVyIGFuZCBtdXN0IHJlbWFpbiB2YWxpZCB1bnRpbCB0aGVyZSBhcmUgbm8gY29uc3VtZXJzIGxlZnQuCisgICA6YzptZW1iZXI6YH5QeV9idWZmZXIuZm9ybWF0YCwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLnNoYXBlYCwKKyAgIDpjOm1lbWJlcjpgflB5X2J1ZmZlci5zdHJpZGVzYCwgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLnN1Ym9mZnNldHNgCisgICBhbmQgOmM6bWVtYmVyOmB+UHlfYnVmZmVyLmludGVybmFsYAorICAgYXJlIHJlYWQtb25seSBmb3IgdGhlIGNvbnN1bWVyLgorCisgICA6YzpmdW5jOmBQeUJ1ZmZlcl9GaWxsSW5mb2AgcHJvdmlkZXMgYW4gZWFzeSB3YXkgb2YgZXhwb3NpbmcgYSBzaW1wbGUKKyAgIGJ5dGVzIGJ1ZmZlciB3aGlsZSBkZWFsaW5nIGNvcnJlY3RseSB3aXRoIGFsbCByZXF1ZXN0IHR5cGVzLgorCisgICA6YzpmdW5jOmBQeU9iamVjdF9HZXRCdWZmZXJgIGlzIHRoZSBpbnRlcmZhY2UgZm9yIHRoZSBjb25zdW1lciB0aGF0CisgICB3cmFwcyB0aGlzIGZ1bmN0aW9uLgorCisuLiBjOm1lbWJlcjo6IHJlbGVhc2VidWZmZXJwcm9jIFB5QnVmZmVyUHJvY3MuYmZfcmVsZWFzZWJ1ZmZlcgorCisgICBUaGUgc2lnbmF0dXJlIG9mIHRoaXMgZnVuY3Rpb24gaXM6OgorCisgICAgICAgdm9pZCAoUHlPYmplY3QgKmV4cG9ydGVyLCBQeV9idWZmZXIgKnZpZXcpOworCisgICBIYW5kbGUgYSByZXF1ZXN0IHRvIHJlbGVhc2UgdGhlIHJlc291cmNlcyBvZiB0aGUgYnVmZmVyLiBJZiBubyByZXNvdXJjZXMKKyAgIG5lZWQgdG8gYmUgcmVsZWFzZWQsIDpjOm1lbWJlcjpgUHlCdWZmZXJQcm9jcy5iZl9yZWxlYXNlYnVmZmVyYCBtYXkgYmUKKyAgICpOVUxMKi4gT3RoZXJ3aXNlLCBhIHN0YW5kYXJkIGltcGxlbWVudGF0aW9uIG9mIHRoaXMgZnVuY3Rpb24gd2lsbCB0YWtlCisgICB0aGVzZSBvcHRpb25hbCBzdGVwczoKKworICAgKDEpIERlY3JlbWVudCBhbiBpbnRlcm5hbCBjb3VudGVyIGZvciB0aGUgbnVtYmVyIG9mIGV4cG9ydHMuCisKKyAgICgyKSBJZiB0aGUgY291bnRlciBpcyAwLCBmcmVlIGFsbCBtZW1vcnkgYXNzb2NpYXRlZCB3aXRoICp2aWV3Ki4KKworICAgVGhlIGV4cG9ydGVyIE1VU1QgdXNlIHRoZSA6YzptZW1iZXI6YH5QeV9idWZmZXIuaW50ZXJuYWxgIGZpZWxkIHRvIGtlZXAKKyAgIHRyYWNrIG9mIGJ1ZmZlci1zcGVjaWZpYyByZXNvdXJjZXMuIFRoaXMgZmllbGQgaXMgZ3VhcmFudGVlZCB0byByZW1haW4KKyAgIGNvbnN0YW50LCB3aGlsZSBhIGNvbnN1bWVyIE1BWSBwYXNzIGEgY29weSBvZiB0aGUgb3JpZ2luYWwgYnVmZmVyIGFzIHRoZQorICAgKnZpZXcqIGFyZ3VtZW50LgogCiAKLSAgIC4uIGM6bWVtYmVyOjogcmVsZWFzZWJ1ZmZlcnByb2MgYmZfcmVsZWFzZWJ1ZmZlcgorICAgVGhpcyBmdW5jdGlvbiBNVVNUIE5PVCBkZWNyZW1lbnQgOmM6ZGF0YTpgdmlldy0+b2JqYCwgc2luY2UgdGhhdCBpcworICAgZG9uZSBhdXRvbWF0aWNhbGx5IGluIDpjOmZ1bmM6YFB5QnVmZmVyX1JlbGVhc2VgICh0aGlzIHNjaGVtZSBpcworICAgdXNlZnVsIGZvciBicmVha2luZyByZWZlcmVuY2UgY3ljbGVzKS4KIAotICAgICAgVGhpcyBzaG91bGQgcmVsZWFzZSB0aGUgcmVzb3VyY2VzIG9mIHRoZSBidWZmZXIuICBUaGUgc2lnbmF0dXJlIG9mCi0gICAgICA6YzpkYXRhOmByZWxlYXNlYnVmZmVycHJvY2AgaXMgYGB2b2lkIChQeU9iamVjdCAqb2JqLCBQeV9idWZmZXIgKnZpZXcpYGAuCi0gICAgICBJZiB0aGUgOmM6ZGF0YTpgYmZfcmVsZWFzZWJ1ZmZlcmAgZnVuY3Rpb24gaXMgbm90IHByb3ZpZGVkIChpLmUuIGl0IGlzCi0gICAgICAqTlVMTCopLCB0aGVuIGl0IGRvZXMgbm90IGV2ZXIgbmVlZCB0byBiZSBjYWxsZWQuCiAKLSAgICAgIFRoZSBleHBvcnRlciBvZiB0aGUgYnVmZmVyIGludGVyZmFjZSBtdXN0IG1ha2Ugc3VyZSB0aGF0IGFueSBtZW1vcnkKLSAgICAgIHBvaW50ZWQgdG8gaW4gdGhlIDpjOnR5cGU6YFB5X2J1ZmZlcmAgc3RydWN0dXJlIHJlbWFpbnMgdmFsaWQgdW50aWwKLSAgICAgIHJlbGVhc2VidWZmZXIgaXMgY2FsbGVkLiAgRXhwb3J0ZXJzIHdpbGwgbmVlZCB0byBkZWZpbmUgYQotICAgICAgOmM6ZGF0YTpgYmZfcmVsZWFzZWJ1ZmZlcmAgZnVuY3Rpb24gaWYgdGhleSBjYW4gcmUtYWxsb2NhdGUgdGhlaXIgbWVtb3J5LAotICAgICAgc3RyaWRlcywgc2hhcGUsIHN1Ym9mZnNldHMsIG9yIGZvcm1hdCB2YXJpYWJsZXMgd2hpY2ggdGhleSBtaWdodCBzaGFyZQotICAgICAgdGhyb3VnaCB0aGUgc3RydWN0IGJ1ZmZlcmluZm8uCi0KLSAgICAgIFNlZSA6YzpmdW5jOmBQeUJ1ZmZlcl9SZWxlYXNlYC4KKyAgIDpjOmZ1bmM6YFB5QnVmZmVyX1JlbGVhc2VgIGlzIHRoZSBpbnRlcmZhY2UgZm9yIHRoZSBjb25zdW1lciB0aGF0CisgICB3cmFwcyB0aGlzIGZ1bmN0aW9uLgpkaWZmIC0tZ2l0IGEvRG9jL2MtYXBpL3VuaWNvZGUucnN0IGIvRG9jL2MtYXBpL3VuaWNvZGUucnN0CmluZGV4IDM1MDA2NTQuLmE3NGE3M2QgMTAwNjQ0Ci0tLSBhL0RvYy9jLWFwaS91bmljb2RlLnJzdAorKysgYi9Eb2MvYy1hcGkvdW5pY29kZS5yc3QKQEAgLTYsMzggKzYsNzIgQEAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIC4uIHNlY3Rpb25hdXRob3I6OiBNYXJjLUFuZHJlIExlbWJ1cmcgPG1hbEBsZW1idXJnLmNvbT4KKy4uIHNlY3Rpb25hdXRob3I6OiBHZW9yZyBCcmFuZGwgPGdlb3JnQHB5dGhvbi5vcmc+CiAKIFVuaWNvZGUgT2JqZWN0cwogXl5eXl5eXl5eXl5eXl5eCiAKK1NpbmNlIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiA6cGVwOmAzOTNgIGluIFB5dGhvbiAzLjMsIFVuaWNvZGUgb2JqZWN0cyBpbnRlcm5hbGx5Cit1c2UgYSB2YXJpZXR5IG9mIHJlcHJlc2VudGF0aW9ucywgaW4gb3JkZXIgdG8gYWxsb3cgaGFuZGxpbmcgdGhlIGNvbXBsZXRlIHJhbmdlCitvZiBVbmljb2RlIGNoYXJhY3RlcnMgd2hpbGUgc3RheWluZyBtZW1vcnkgZWZmaWNpZW50LiAgVGhlcmUgYXJlIHNwZWNpYWwgY2FzZXMKK2ZvciBzdHJpbmdzIHdoZXJlIGFsbCBjb2RlIHBvaW50cyBhcmUgYmVsb3cgMTI4LCAyNTYsIG9yIDY1NTM2OyBvdGhlcndpc2UsIGNvZGUKK3BvaW50cyBtdXN0IGJlIGJlbG93IDExMTQxMTIgKHdoaWNoIGlzIHRoZSBmdWxsIFVuaWNvZGUgcmFuZ2UpLgorCis6Yzp0eXBlOmBQeV9VTklDT0RFKmAgYW5kIFVURi04IHJlcHJlc2VudGF0aW9ucyBhcmUgY3JlYXRlZCBvbiBkZW1hbmQgYW5kIGNhY2hlZAoraW4gdGhlIFVuaWNvZGUgb2JqZWN0LiAgVGhlIDpjOnR5cGU6YFB5X1VOSUNPREUqYCByZXByZXNlbnRhdGlvbiBpcyBkZXByZWNhdGVkCithbmQgaW5lZmZpY2llbnQ7IGl0IHNob3VsZCBiZSBhdm9pZGVkIGluIHBlcmZvcm1hbmNlLSBvciBtZW1vcnktc2Vuc2l0aXZlCitzaXR1YXRpb25zLgorCitEdWUgdG8gdGhlIHRyYW5zaXRpb24gYmV0d2VlbiB0aGUgb2xkIEFQSXMgYW5kIHRoZSBuZXcgQVBJcywgdW5pY29kZSBvYmplY3RzCitjYW4gaW50ZXJuYWxseSBiZSBpbiB0d28gc3RhdGVzIGRlcGVuZGluZyBvbiBob3cgdGhleSB3ZXJlIGNyZWF0ZWQ6CisKKyogImNhbm9uaWNhbCIgdW5pY29kZSBvYmplY3RzIGFyZSBhbGwgb2JqZWN0cyBjcmVhdGVkIGJ5IGEgbm9uLWRlcHJlY2F0ZWQKKyAgdW5pY29kZSBBUEkuICBUaGV5IHVzZSB0aGUgbW9zdCBlZmZpY2llbnQgcmVwcmVzZW50YXRpb24gYWxsb3dlZCBieSB0aGUKKyAgaW1wbGVtZW50YXRpb24uCisKKyogImxlZ2FjeSIgdW5pY29kZSBvYmplY3RzIGhhdmUgYmVlbiBjcmVhdGVkIHRocm91Z2ggb25lIG9mIHRoZSBkZXByZWNhdGVkCisgIEFQSXMgKHR5cGljYWxseSA6YzpmdW5jOmBQeVVuaWNvZGVfRnJvbVVuaWNvZGVgKSBhbmQgb25seSBiZWFyIHRoZQorICA6Yzp0eXBlOmBQeV9VTklDT0RFKmAgcmVwcmVzZW50YXRpb247IHlvdSB3aWxsIGhhdmUgdG8gY2FsbAorICA6YzpmdW5jOmBQeVVuaWNvZGVfUkVBRFlgIG9uIHRoZW0gYmVmb3JlIGNhbGxpbmcgYW55IG90aGVyIEFQSS4KKworCiBVbmljb2RlIFR5cGUKICIiIiIiIiIiIiIiIgogCiBUaGVzZSBhcmUgdGhlIGJhc2ljIFVuaWNvZGUgb2JqZWN0IHR5cGVzIHVzZWQgZm9yIHRoZSBVbmljb2RlIGltcGxlbWVudGF0aW9uIGluCiBQeXRob246CiAKKy4uIGM6dHlwZTo6IFB5X1VDUzQKKyAgICAgICAgICAgIFB5X1VDUzIKKyAgICAgICAgICAgIFB5X1VDUzEKKworICAgVGhlc2UgdHlwZXMgYXJlIHR5cGVkZWZzIGZvciB1bnNpZ25lZCBpbnRlZ2VyIHR5cGVzIHdpZGUgZW5vdWdoIHRvIGNvbnRhaW4KKyAgIGNoYXJhY3RlcnMgb2YgMzIgYml0cywgMTYgYml0cyBhbmQgOCBiaXRzLCByZXNwZWN0aXZlbHkuICBXaGVuIGRlYWxpbmcgd2l0aAorICAgc2luZ2xlIFVuaWNvZGUgY2hhcmFjdGVycywgdXNlIDpjOnR5cGU6YFB5X1VDUzRgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogCiAuLiBjOnR5cGU6OiBQeV9VTklDT0RFCiAKLSAgIFRoaXMgdHlwZSByZXByZXNlbnRzIHRoZSBzdG9yYWdlIHR5cGUgd2hpY2ggaXMgdXNlZCBieSBQeXRob24gaW50ZXJuYWxseSBhcwotICAgYmFzaXMgZm9yIGhvbGRpbmcgVW5pY29kZSBvcmRpbmFscy4gIFB5dGhvbidzIGRlZmF1bHQgYnVpbGRzIHVzZSBhIDE2LWJpdCB0eXBlCi0gICBmb3IgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYW5kIHN0b3JlIFVuaWNvZGUgdmFsdWVzIGludGVybmFsbHkgYXMgVUNTMi4gSXQgaXMgYWxzbwotICAgcG9zc2libGUgdG8gYnVpbGQgYSBVQ1M0IHZlcnNpb24gb2YgUHl0aG9uIChtb3N0IHJlY2VudCBMaW51eCBkaXN0cmlidXRpb25zIGNvbWUKLSAgIHdpdGggVUNTNCBidWlsZHMgb2YgUHl0aG9uKS4gVGhlc2UgYnVpbGRzIHRoZW4gdXNlIGEgMzItYml0IHR5cGUgZm9yCi0gICA6Yzp0eXBlOmBQeV9VTklDT0RFYCBhbmQgc3RvcmUgVW5pY29kZSBkYXRhIGludGVybmFsbHkgYXMgVUNTNC4gT24gcGxhdGZvcm1zCi0gICB3aGVyZSA6Yzp0eXBlOmB3Y2hhcl90YCBpcyBhdmFpbGFibGUgYW5kIGNvbXBhdGlibGUgd2l0aCB0aGUgY2hvc2VuIFB5dGhvbgotICAgVW5pY29kZSBidWlsZCB2YXJpYW50LCA6Yzp0eXBlOmBQeV9VTklDT0RFYCBpcyBhIHR5cGVkZWYgYWxpYXMgZm9yCi0gICA6Yzp0eXBlOmB3Y2hhcl90YCB0byBlbmhhbmNlIG5hdGl2ZSBwbGF0Zm9ybSBjb21wYXRpYmlsaXR5LiBPbiBhbGwgb3RoZXIKLSAgIHBsYXRmb3JtcywgOmM6dHlwZTpgUHlfVU5JQ09ERWAgaXMgYSB0eXBlZGVmIGFsaWFzIGZvciBlaXRoZXIgOmM6dHlwZTpgdW5zaWduZWQKLSAgIHNob3J0YCAoVUNTMikgb3IgOmM6dHlwZTpgdW5zaWduZWQgbG9uZ2AgKFVDUzQpLgorICAgVGhpcyBpcyBhIHR5cGVkZWYgb2YgOmM6dHlwZTpgd2NoYXJfdGAsIHdoaWNoIGlzIGEgMTYtYml0IHR5cGUgb3IgMzItYml0IHR5cGUKKyAgIGRlcGVuZGluZyBvbiB0aGUgcGxhdGZvcm0uCiAKLU5vdGUgdGhhdCBVQ1MyIGFuZCBVQ1M0IFB5dGhvbiBidWlsZHMgYXJlIG5vdCBiaW5hcnkgY29tcGF0aWJsZS4gUGxlYXNlIGtlZXAKLXRoaXMgaW4gbWluZCB3aGVuIHdyaXRpbmcgZXh0ZW5zaW9ucyBvciBpbnRlcmZhY2VzLgorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEluIHByZXZpb3VzIHZlcnNpb25zLCB0aGlzIHdhcyBhIDE2LWJpdCB0eXBlIG9yIGEgMzItYml0IHR5cGUgZGVwZW5kaW5nIG9uCisgICAgICB3aGV0aGVyIHlvdSBzZWxlY3RlZCBhICJuYXJyb3ciIG9yICJ3aWRlIiBVbmljb2RlIHZlcnNpb24gb2YgUHl0aG9uIGF0CisgICAgICBidWlsZCB0aW1lLgogCiAKLS4uIGM6dHlwZTo6IFB5VW5pY29kZU9iamVjdAorLi4gYzp0eXBlOjogUHlBU0NJSU9iamVjdAorICAgICAgICAgICAgUHlDb21wYWN0VW5pY29kZU9iamVjdAorICAgICAgICAgICAgUHlVbmljb2RlT2JqZWN0CiAKLSAgIFRoaXMgc3VidHlwZSBvZiA6Yzp0eXBlOmBQeU9iamVjdGAgcmVwcmVzZW50cyBhIFB5dGhvbiBVbmljb2RlIG9iamVjdC4KKyAgIFRoZXNlIHN1YnR5cGVzIG9mIDpjOnR5cGU6YFB5T2JqZWN0YCByZXByZXNlbnQgYSBQeXRob24gVW5pY29kZSBvYmplY3QuICBJbgorICAgYWxtb3N0IGFsbCBjYXNlcywgdGhleSBzaG91bGRuJ3QgYmUgdXNlZCBkaXJlY3RseSwgc2luY2UgYWxsIEFQSSBmdW5jdGlvbnMKKyAgIHRoYXQgZGVhbCB3aXRoIFVuaWNvZGUgb2JqZWN0cyB0YWtlIGFuZCByZXR1cm4gOmM6dHlwZTpgUHlPYmplY3RgIHBvaW50ZXJzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCiAuLiBjOnZhcjo6IFB5VHlwZU9iamVjdCBQeVVuaWNvZGVfVHlwZQpAQCAtNDUsMTAgKzc5LDEwIEBACiAgICBUaGlzIGluc3RhbmNlIG9mIDpjOnR5cGU6YFB5VHlwZU9iamVjdGAgcmVwcmVzZW50cyB0aGUgUHl0aG9uIFVuaWNvZGUgdHlwZS4gIEl0CiAgICBpcyBleHBvc2VkIHRvIFB5dGhvbiBjb2RlIGFzIGBgc3RyYGAuCiAKKwogVGhlIGZvbGxvd2luZyBBUElzIGFyZSByZWFsbHkgQyBtYWNyb3MgYW5kIGNhbiBiZSB1c2VkIHRvIGRvIGZhc3QgY2hlY2tzIGFuZCB0bwogYWNjZXNzIGludGVybmFsIHJlYWQtb25seSBkYXRhIG9mIFVuaWNvZGUgb2JqZWN0czoKIAotCiAuLiBjOmZ1bmN0aW9uOjogaW50IFB5VW5pY29kZV9DaGVjayhQeU9iamVjdCAqbykKIAogICAgUmV0dXJuIHRydWUgaWYgdGhlIG9iamVjdCAqbyogaXMgYSBVbmljb2RlIG9iamVjdCBvciBhbiBpbnN0YW5jZSBvZiBhIFVuaWNvZGUKQEAgLTYxLDI4ICs5NSwxMDYgQEAKICAgIHN1YnR5cGUuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5X3NzaXplX3QgUHlVbmljb2RlX0dFVF9TSVpFKFB5T2JqZWN0ICpvKQorLi4gYzpmdW5jdGlvbjo6IGludCBQeVVuaWNvZGVfUkVBRFkoUHlPYmplY3QgKm8pCiAKLSAgIFJldHVybiB0aGUgc2l6ZSBvZiB0aGUgb2JqZWN0LiAgKm8qIGhhcyB0byBiZSBhIDpjOnR5cGU6YFB5VW5pY29kZU9iamVjdGAgKG5vdAotICAgY2hlY2tlZCkuCisgICBFbnN1cmUgdGhlIHN0cmluZyBvYmplY3QgKm8qIGlzIGluIHRoZSAiY2Fub25pY2FsIiByZXByZXNlbnRhdGlvbi4gIFRoaXMgaXMKKyAgIHJlcXVpcmVkIGJlZm9yZSB1c2luZyBhbnkgb2YgdGhlIGFjY2VzcyBtYWNyb3MgZGVzY3JpYmVkIGJlbG93LgorCisgICAuLiBYWFggZXhwYW5kIG9uIHdoZW4gaXQgaXMgbm90IHJlcXVpcmVkCisKKyAgIFJldHVybnMgMCBvbiBzdWNjZXNzIGFuZCAtMSB3aXRoIGFuIGV4Y2VwdGlvbiBzZXQgb24gZmFpbHVyZSwgd2hpY2ggaW4KKyAgIHBhcnRpY3VsYXIgaGFwcGVucyBpZiBtZW1vcnkgYWxsb2NhdGlvbiBmYWlscy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5X3NzaXplX3QgUHlVbmljb2RlX0dFVF9EQVRBX1NJWkUoUHlPYmplY3QgKm8pCisuLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfR0VUX0xFTkdUSChQeU9iamVjdCAqbykKIAotICAgUmV0dXJuIHRoZSBzaXplIG9mIHRoZSBvYmplY3QncyBpbnRlcm5hbCBidWZmZXIgaW4gYnl0ZXMuICAqbyogaGFzIHRvIGJlIGEKLSAgIDpjOnR5cGU6YFB5VW5pY29kZU9iamVjdGAgKG5vdCBjaGVja2VkKS4KKyAgIFJldHVybiB0aGUgbGVuZ3RoIG9mIHRoZSBVbmljb2RlIHN0cmluZywgaW4gY29kZSBwb2ludHMuICAqbyogaGFzIHRvIGJlIGEKKyAgIFVuaWNvZGUgb2JqZWN0IGluIHRoZSAiY2Fub25pY2FsIiByZXByZXNlbnRhdGlvbiAobm90IGNoZWNrZWQpLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlfVU5JQ09ERSogUHlVbmljb2RlX0FTX1VOSUNPREUoUHlPYmplY3QgKm8pCisuLiBjOmZ1bmN0aW9uOjogUHlfVUNTMSogUHlVbmljb2RlXzFCWVRFX0RBVEEoUHlPYmplY3QgKm8pCisgICAgICAgICAgICAgICAgUHlfVUNTMiogUHlVbmljb2RlXzJCWVRFX0RBVEEoUHlPYmplY3QgKm8pCisgICAgICAgICAgICAgICAgUHlfVUNTNCogUHlVbmljb2RlXzRCWVRFX0RBVEEoUHlPYmplY3QgKm8pCiAKLSAgIFJldHVybiBhIHBvaW50ZXIgdG8gdGhlIGludGVybmFsIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgb2JqZWN0LiAgKm8qCi0gICBoYXMgdG8gYmUgYSA6Yzp0eXBlOmBQeVVuaWNvZGVPYmplY3RgIChub3QgY2hlY2tlZCkuCisgICBSZXR1cm4gYSBwb2ludGVyIHRvIHRoZSBjYW5vbmljYWwgcmVwcmVzZW50YXRpb24gY2FzdCB0byBVQ1MxLCBVQ1MyIG9yIFVDUzQKKyAgIGludGVnZXIgdHlwZXMgZm9yIGRpcmVjdCBjaGFyYWN0ZXIgYWNjZXNzLiAgTm8gY2hlY2tzIGFyZSBwZXJmb3JtZWQgaWYgdGhlCisgICBjYW5vbmljYWwgcmVwcmVzZW50YXRpb24gaGFzIHRoZSBjb3JyZWN0IGNoYXJhY3RlciBzaXplOyB1c2UKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9LSU5EYCB0byBzZWxlY3QgdGhlIHJpZ2h0IG1hY3JvLiAgTWFrZSBzdXJlCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfUkVBRFlgIGhhcyBiZWVuIGNhbGxlZCBiZWZvcmUgYWNjZXNzaW5nIHRoaXMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAKLS4uIGM6ZnVuY3Rpb246OiBjb25zdCBjaGFyKiBQeVVuaWNvZGVfQVNfREFUQShQeU9iamVjdCAqbykKKy4uIGM6bWFjcm86OiBQeVVuaWNvZGVfV0NIQVJfS0lORAorICAgICAgICAgICAgIFB5VW5pY29kZV8xQllURV9LSU5ECisgICAgICAgICAgICAgUHlVbmljb2RlXzJCWVRFX0tJTkQKKyAgICAgICAgICAgICBQeVVuaWNvZGVfNEJZVEVfS0lORAogCi0gICBSZXR1cm4gYSBwb2ludGVyIHRvIHRoZSBpbnRlcm5hbCBidWZmZXIgb2YgdGhlIG9iamVjdC4gKm8qIGhhcyB0byBiZSBhCi0gICA6Yzp0eXBlOmBQeVVuaWNvZGVPYmplY3RgIChub3QgY2hlY2tlZCkuCisgICBSZXR1cm4gdmFsdWVzIG9mIHRoZSA6YzpmdW5jOmBQeVVuaWNvZGVfS0lORGAgbWFjcm8uCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBpbnQgUHlVbmljb2RlX0tJTkQoUHlPYmplY3QgKm8pCisKKyAgIFJldHVybiBvbmUgb2YgdGhlIFB5VW5pY29kZSBraW5kIGNvbnN0YW50cyAoc2VlIGFib3ZlKSB0aGF0IGluZGljYXRlIGhvdyBtYW55CisgICBieXRlcyBwZXIgY2hhcmFjdGVyIHRoaXMgVW5pY29kZSBvYmplY3QgdXNlcyB0byBzdG9yZSBpdHMgZGF0YS4gICpvKiBoYXMgdG8KKyAgIGJlIGEgVW5pY29kZSBvYmplY3QgaW4gdGhlICJjYW5vbmljYWwiIHJlcHJlc2VudGF0aW9uIChub3QgY2hlY2tlZCkuCisKKyAgIC4uIFhYWCBkb2N1bWVudCAiMCIgcmV0dXJuIHZhbHVlPworCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogdm9pZCogUHlVbmljb2RlX0RBVEEoUHlPYmplY3QgKm8pCisKKyAgIFJldHVybiBhIHZvaWQgcG9pbnRlciB0byB0aGUgcmF3IHVuaWNvZGUgYnVmZmVyLiAgKm8qIGhhcyB0byBiZSBhIFVuaWNvZGUKKyAgIG9iamVjdCBpbiB0aGUgImNhbm9uaWNhbCIgcmVwcmVzZW50YXRpb24gKG5vdCBjaGVja2VkKS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IHZvaWQgUHlVbmljb2RlX1dSSVRFKGludCBraW5kLCB2b2lkICpkYXRhLCBQeV9zc2l6ZV90IGluZGV4LCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfVUNTNCB2YWx1ZSkKKworICAgV3JpdGUgaW50byBhIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiAqZGF0YSogKGFzIG9idGFpbmVkIHdpdGgKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9EQVRBYCkuICBUaGlzIG1hY3JvIGRvZXMgbm90IGRvIGFueSBzYW5pdHkgY2hlY2tzIGFuZCBpcworICAgaW50ZW5kZWQgZm9yIHVzYWdlIGluIGxvb3BzLiAgVGhlIGNhbGxlciBzaG91bGQgY2FjaGUgdGhlICpraW5kKiB2YWx1ZSBhbmQKKyAgICpkYXRhKiBwb2ludGVyIGFzIG9idGFpbmVkIGZyb20gb3RoZXIgbWFjcm8gY2FsbHMuICAqaW5kZXgqIGlzIHRoZSBpbmRleCBpbgorICAgdGhlIHN0cmluZyAoc3RhcnRzIGF0IDApIGFuZCAqdmFsdWUqIGlzIHRoZSBuZXcgY29kZSBwb2ludCB2YWx1ZSB3aGljaCBzaG91bGQKKyAgIGJlIHdyaXR0ZW4gdG8gdGhhdCBsb2NhdGlvbi4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X1VDUzQgUHlVbmljb2RlX1JFQUQoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgaW5kZXgpCisKKyAgIFJlYWQgYSBjb2RlIHBvaW50IGZyb20gYSBjYW5vbmljYWwgcmVwcmVzZW50YXRpb24gKmRhdGEqIChhcyBvYnRhaW5lZCB3aXRoCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfREFUQWApLiAgTm8gY2hlY2tzIG9yIHJlYWR5IGNhbGxzIGFyZSBwZXJmb3JtZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeV9VQ1M0IFB5VW5pY29kZV9SRUFEX0NIQVIoUHlPYmplY3QgKm8sIFB5X3NzaXplX3QgaW5kZXgpCisKKyAgIFJlYWQgYSBjaGFyYWN0ZXIgZnJvbSBhIFVuaWNvZGUgb2JqZWN0ICpvKiwgd2hpY2ggbXVzdCBiZSBpbiB0aGUgImNhbm9uaWNhbCIKKyAgIHJlcHJlc2VudGF0aW9uLiAgVGhpcyBpcyBsZXNzIGVmZmljaWVudCB0aGFuIDpjOmZ1bmM6YFB5VW5pY29kZV9SRUFEYCBpZiB5b3UKKyAgIGRvIG11bHRpcGxlIGNvbnNlY3V0aXZlIHJlYWRzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKFB5T2JqZWN0ICpvKQorCisgICBSZXR1cm4gdGhlIG1heGltdW0gY29kZSBwb2ludCB0aGF0IGlzIHN1aXRhYmxlIGZvciBjcmVhdGluZyBhbm90aGVyIHN0cmluZworICAgYmFzZWQgb24gKm8qLCB3aGljaCBtdXN0IGJlIGluIHRoZSAiY2Fub25pY2FsIiByZXByZXNlbnRhdGlvbi4gIFRoaXMgaXMKKyAgIGFsd2F5cyBhbiBhcHByb3hpbWF0aW9uIGJ1dCBtb3JlIGVmZmljaWVudCB0aGFuIGl0ZXJhdGluZyBvdmVyIHRoZSBzdHJpbmcuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAKIC4uIGM6ZnVuY3Rpb246OiBpbnQgUHlVbmljb2RlX0NsZWFyRnJlZUxpc3QoKQpAQCAtOTAsNiArMjAyLDQ2IEBACiAgICBDbGVhciB0aGUgZnJlZSBsaXN0LiBSZXR1cm4gdGhlIHRvdGFsIG51bWJlciBvZiBmcmVlZCBpdGVtcy4KIAogCisuLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfR0VUX1NJWkUoUHlPYmplY3QgKm8pCisKKyAgIFJldHVybiB0aGUgc2l6ZSBvZiB0aGUgZGVwcmVjYXRlZCA6Yzp0eXBlOmBQeV9VTklDT0RFYCByZXByZXNlbnRhdGlvbiwgaW4KKyAgIGNvZGUgdW5pdHMgKHRoaXMgaW5jbHVkZXMgc3Vycm9nYXRlIHBhaXJzIGFzIDIgdW5pdHMpLiAgKm8qIGhhcyB0byBiZSBhCisgICBVbmljb2RlIG9iamVjdCAobm90IGNoZWNrZWQpLgorCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgVW5pY29kZSBBUEksIHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfR0VUX0xFTkdUSGAuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X3NzaXplX3QgUHlVbmljb2RlX0dFVF9EQVRBX1NJWkUoUHlPYmplY3QgKm8pCisKKyAgIFJldHVybiB0aGUgc2l6ZSBvZiB0aGUgZGVwcmVjYXRlZCA6Yzp0eXBlOmBQeV9VTklDT0RFYCByZXByZXNlbnRhdGlvbiBpbgorICAgYnl0ZXMuICAqbyogaGFzIHRvIGJlIGEgVW5pY29kZSBvYmplY3QgKG5vdCBjaGVja2VkKS4KKworICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIFVuaWNvZGUgQVBJLCBwbGVhc2UgbWlncmF0ZSB0byB1c2luZworICAgICAgOmM6ZnVuYzpgUHlVbmljb2RlX0dFVF9MRU5HVEhgLgorCisKKy4uIGM6ZnVuY3Rpb246OiBQeV9VTklDT0RFKiBQeVVuaWNvZGVfQVNfVU5JQ09ERShQeU9iamVjdCAqbykKKyAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBQeVVuaWNvZGVfQVNfREFUQShQeU9iamVjdCAqbykKKworICAgUmV0dXJuIGEgcG9pbnRlciB0byBhIDpjOnR5cGU6YFB5X1VOSUNPREVgIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBvYmplY3QuICBUaGUKKyAgIGBgQVNfREFUQWBgIGZvcm0gY2FzdHMgdGhlIHBvaW50ZXIgdG8gOmM6dHlwZTpgY29uc3QgY2hhciAqYC4gICpvKiBoYXMgdG8gYmUKKyAgIGEgVW5pY29kZSBvYmplY3QgKG5vdCBjaGVja2VkKS4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgbWFjcm8gaXMgbm93IGluZWZmaWNpZW50IC0tIGJlY2F1c2UgaW4gbWFueSBjYXNlcyB0aGUKKyAgICAgIDpjOnR5cGU6YFB5X1VOSUNPREVgIHJlcHJlc2VudGF0aW9uIGRvZXMgbm90IGV4aXN0IGFuZCBuZWVkcyB0byBiZSBjcmVhdGVkCisgICAgICAtLSBhbmQgY2FuIGZhaWwgKHJldHVybiAqTlVMTCogd2l0aCBhbiBleGNlcHRpb24gc2V0KS4gIFRyeSB0byBwb3J0IHRoZQorICAgICAgY29kZSB0byB1c2UgdGhlIG5ldyA6YzpmdW5jOmBQeVVuaWNvZGVfbkJZVEVfREFUQWAgbWFjcm9zIG9yIHVzZQorICAgICAgOmM6ZnVuYzpgUHlVbmljb2RlX1dSSVRFYCBvciA6YzpmdW5jOmBQeVVuaWNvZGVfUkVBRGAuCisKKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSBVbmljb2RlIEFQSSwgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcgdGhlCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfbkJZVEVfREFUQWAgZmFtaWx5IG9mIG1hY3Jvcy4KKworCiBVbmljb2RlIENoYXJhY3RlciBQcm9wZXJ0aWVzCiAiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiCiAKQEAgLTE2NiwxNiArMzE4LDI1IEBACiAKICAgIFJldHVybiB0aGUgY2hhcmFjdGVyICpjaCogY29udmVydGVkIHRvIGxvd2VyIGNhc2UuCiAKKyAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlcyBzaW1wbGUgY2FzZSBtYXBwaW5ncy4KKwogCiAuLiBjOmZ1bmN0aW9uOjogUHlfVU5JQ09ERSBQeV9VTklDT0RFX1RPVVBQRVIoUHlfVU5JQ09ERSBjaCkKIAogICAgUmV0dXJuIHRoZSBjaGFyYWN0ZXIgKmNoKiBjb252ZXJ0ZWQgdG8gdXBwZXIgY2FzZS4KIAorICAgLi4gZGVwcmVjYXRlZDo6IDMuMworICAgICAgVGhpcyBmdW5jdGlvbiB1c2VzIHNpbXBsZSBjYXNlIG1hcHBpbmdzLgorCiAKIC4uIGM6ZnVuY3Rpb246OiBQeV9VTklDT0RFIFB5X1VOSUNPREVfVE9USVRMRShQeV9VTklDT0RFIGNoKQogCiAgICBSZXR1cm4gdGhlIGNoYXJhY3RlciAqY2gqIGNvbnZlcnRlZCB0byB0aXRsZSBjYXNlLgogCisgICAuLiBkZXByZWNhdGVkOjogMy4zCisgICAgICBUaGlzIGZ1bmN0aW9uIHVzZXMgc2ltcGxlIGNhc2UgbWFwcGluZ3MuCisKIAogLi4gYzpmdW5jdGlvbjo6IGludCBQeV9VTklDT0RFX1RPREVDSU1BTChQeV9VTklDT0RFIGNoKQogCkBAIC0xOTUsMzEgKzM1Niw2NiBAQAogICAgcG9zc2libGUuICBUaGlzIG1hY3JvIGRvZXMgbm90IHJhaXNlIGV4Y2VwdGlvbnMuCiAKIAotUGxhaW4gUHlfVU5JQ09ERQotIiIiIiIiIiIiIiIiIiIiIgorVGhlc2UgQVBJcyBjYW4gYmUgdXNlZCB0byB3b3JrIHdpdGggc3Vycm9nYXRlczoKKworLi4gYzptYWNybzo6IFB5X1VOSUNPREVfSVNfU1VSUk9HQVRFKGNoKQorCisgICBDaGVjayBpZiAqY2gqIGlzIGEgc3Vycm9nYXRlIChgYDB4RDgwMCA8PSBjaCA8PSAweERGRkZgYCkuCisKKy4uIGM6bWFjcm86OiBQeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKGNoKQorCisgICBDaGVjayBpZiAqY2gqIGlzIGFuIGhpZ2ggc3Vycm9nYXRlIChgYDB4RDgwMCA8PSBjaCA8PSAweERCRkZgYCkuCisKKy4uIGM6bWFjcm86OiBQeV9VTklDT0RFX0lTX0xPV19TVVJST0dBVEUoY2gpCisKKyAgIENoZWNrIGlmICpjaCogaXMgYSBsb3cgc3Vycm9nYXRlIChgYDB4REMwMCA8PSBjaCA8PSAweERGRkZgYCkuCisKKy4uIGM6bWFjcm86OiBQeV9VTklDT0RFX0pPSU5fU1VSUk9HQVRFUyhoaWdoLCBsb3cpCisKKyAgIEpvaW4gdHdvIHN1cnJvZ2F0ZSBjaGFyYWN0ZXJzIGFuZCByZXR1cm4gYSBzaW5nbGUgUHlfVUNTNCB2YWx1ZS4KKyAgICpoaWdoKiBhbmQgKmxvdyogYXJlIHJlc3BlY3RpdmVseSB0aGUgbGVhZGluZyBhbmQgdHJhaWxpbmcgc3Vycm9nYXRlcyBpbiBhCisgICBzdXJyb2dhdGUgcGFpci4KKworCitDcmVhdGluZyBhbmQgYWNjZXNzaW5nIFVuaWNvZGUgc3RyaW5ncworIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKIAogVG8gY3JlYXRlIFVuaWNvZGUgb2JqZWN0cyBhbmQgYWNjZXNzIHRoZWlyIGJhc2ljIHNlcXVlbmNlIHByb3BlcnRpZXMsIHVzZSB0aGVzZQogQVBJczoKIAorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfTmV3KFB5X3NzaXplX3Qgc2l6ZSwgUHlfVUNTNCBtYXhjaGFyKQogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Gcm9tVW5pY29kZShjb25zdCBQeV9VTklDT0RFICp1LCBQeV9zc2l6ZV90IHNpemUpCisgICBDcmVhdGUgYSBuZXcgVW5pY29kZSBvYmplY3QuICAqbWF4Y2hhciogc2hvdWxkIGJlIHRoZSB0cnVlIG1heGltdW0gY29kZSBwb2ludAorICAgdG8gYmUgcGxhY2VkIGluIHRoZSBzdHJpbmcuICBBcyBhbiBhcHByb3hpbWF0aW9uLCBpdCBjYW4gYmUgcm91bmRlZCB1cCB0byB0aGUKKyAgIG5lYXJlc3QgdmFsdWUgaW4gdGhlIHNlcXVlbmNlIDEyNywgMjU1LCA2NTUzNSwgMTExNDExMS4KIAotICAgQ3JlYXRlIGEgVW5pY29kZSBvYmplY3QgZnJvbSB0aGUgUHlfVU5JQ09ERSBidWZmZXIgKnUqIG9mIHRoZSBnaXZlbiBzaXplLiAqdSoKLSAgIG1heSBiZSAqTlVMTCogd2hpY2ggY2F1c2VzIHRoZSBjb250ZW50cyB0byBiZSB1bmRlZmluZWQuIEl0IGlzIHRoZSB1c2VyJ3MKLSAgIHJlc3BvbnNpYmlsaXR5IHRvIGZpbGwgaW4gdGhlIG5lZWRlZCBkYXRhLiAgVGhlIGJ1ZmZlciBpcyBjb3BpZWQgaW50byB0aGUgbmV3Ci0gICBvYmplY3QuIElmIHRoZSBidWZmZXIgaXMgbm90ICpOVUxMKiwgdGhlIHJldHVybiB2YWx1ZSBtaWdodCBiZSBhIHNoYXJlZCBvYmplY3QuCi0gICBUaGVyZWZvcmUsIG1vZGlmaWNhdGlvbiBvZiB0aGUgcmVzdWx0aW5nIFVuaWNvZGUgb2JqZWN0IGlzIG9ubHkgYWxsb3dlZCB3aGVuICp1KgotICAgaXMgKk5VTEwqLgorICAgVGhpcyBpcyB0aGUgcmVjb21tZW5kZWQgd2F5IHRvIGFsbG9jYXRlIGEgbmV3IFVuaWNvZGUgb2JqZWN0LiAgT2JqZWN0cworICAgY3JlYXRlZCB1c2luZyB0aGlzIGZ1bmN0aW9uIGFyZSBub3QgcmVzaXphYmxlLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoaW50IGtpbmQsIGNvbnN0IHZvaWQgKmJ1ZmZlciwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSkKKworICAgQ3JlYXRlIGEgbmV3IFVuaWNvZGUgb2JqZWN0IHdpdGggdGhlIGdpdmVuICpraW5kKiAocG9zc2libGUgdmFsdWVzIGFyZQorICAgOmM6bWFjcm86YFB5VW5pY29kZV8xQllURV9LSU5EYCBldGMuLCBhcyByZXR1cm5lZCBieQorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0tJTkRgKS4gIFRoZSAqYnVmZmVyKiBtdXN0IHBvaW50IHRvIGFuIGFycmF5IG9mICpzaXplKgorICAgdW5pdHMgb2YgMSwgMiBvciA0IGJ5dGVzIHBlciBjaGFyYWN0ZXIsIGFzIGdpdmVuIGJ5IHRoZSBraW5kLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShjb25zdCBjaGFyICp1LCBQeV9zc2l6ZV90IHNpemUpCiAKLSAgIENyZWF0ZSBhIFVuaWNvZGUgb2JqZWN0IGZyb20gdGhlIGNoYXIgYnVmZmVyICp1Ki4gIFRoZSBieXRlcyB3aWxsIGJlIGludGVycHJldGVkCi0gICBhcyBiZWluZyBVVEYtOCBlbmNvZGVkLiAgKnUqIG1heSBhbHNvIGJlICpOVUxMKiB3aGljaAotICAgY2F1c2VzIHRoZSBjb250ZW50cyB0byBiZSB1bmRlZmluZWQuIEl0IGlzIHRoZSB1c2VyJ3MgcmVzcG9uc2liaWxpdHkgdG8gZmlsbCBpbgotICAgdGhlIG5lZWRlZCBkYXRhLiAgVGhlIGJ1ZmZlciBpcyBjb3BpZWQgaW50byB0aGUgbmV3IG9iamVjdC4gSWYgdGhlIGJ1ZmZlciBpcyBub3QKLSAgICpOVUxMKiwgdGhlIHJldHVybiB2YWx1ZSBtaWdodCBiZSBhIHNoYXJlZCBvYmplY3QuIFRoZXJlZm9yZSwgbW9kaWZpY2F0aW9uIG9mCi0gICB0aGUgcmVzdWx0aW5nIFVuaWNvZGUgb2JqZWN0IGlzIG9ubHkgYWxsb3dlZCB3aGVuICp1KiBpcyAqTlVMTCouCisgICBDcmVhdGUgYSBVbmljb2RlIG9iamVjdCBmcm9tIHRoZSBjaGFyIGJ1ZmZlciAqdSouICBUaGUgYnl0ZXMgd2lsbCBiZQorICAgaW50ZXJwcmV0ZWQgYXMgYmVpbmcgVVRGLTggZW5jb2RlZC4gIFRoZSBidWZmZXIgaXMgY29waWVkIGludG8gdGhlIG5ldworICAgb2JqZWN0LiBJZiB0aGUgYnVmZmVyIGlzIG5vdCAqTlVMTCosIHRoZSByZXR1cm4gdmFsdWUgbWlnaHQgYmUgYSBzaGFyZWQKKyAgIG9iamVjdCwgaS5lLiBtb2RpZmljYXRpb24gb2YgdGhlIGRhdGEgaXMgbm90IGFsbG93ZWQuCisKKyAgIElmICp1KiBpcyAqTlVMTCosIHRoaXMgZnVuY3Rpb24gYmVoYXZlcyBsaWtlIDpjOmZ1bmM6YFB5VW5pY29kZV9Gcm9tVW5pY29kZWAKKyAgIHdpdGggdGhlIGJ1ZmZlciBzZXQgdG8gKk5VTEwqLiAgVGhpcyB1c2FnZSBpcyBkZXByZWNhdGVkIGluIGZhdm9yIG9mCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfTmV3YC4KIAogCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QgKlB5VW5pY29kZV9Gcm9tU3RyaW5nKGNvbnN0IGNoYXIgKnUpCkBAIC0yNjAsMTggKzQ1NiwyNyBAQAogICAgfCA6YXR0cjpgJWxkYCAgICAgICB8IGxvbmcgICAgICAgICAgICAgICAgfCBFeGFjdGx5IGVxdWl2YWxlbnQgdG8gICAgICAgICAgfAogICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCBgYHByaW50ZigiJWxkIilgYC4gICAgICAgICAgICAgfAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCA6YXR0cjpgJWxpYCAgICAgICB8IGxvbmcgICAgICAgICAgICAgICAgfCBFeGFjdGx5IGVxdWl2YWxlbnQgdG8gICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCBgYHByaW50ZigiJWxpIilgYC4gICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCA6YXR0cjpgJWx1YCAgICAgICB8IHVuc2lnbmVkIGxvbmcgICAgICAgfCBFeGFjdGx5IGVxdWl2YWxlbnQgdG8gICAgICAgICAgfAogICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCBgYHByaW50ZigiJWx1IilgYC4gICAgICAgICAgICAgfAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCA6YXR0cjpgJWxsZGAgICAgICB8IGxvbmcgbG9uZyAgICAgICAgICAgfCBFeGFjdGx5IGVxdWl2YWxlbnQgdG8gICAgICAgICAgfAogICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCBgYHByaW50ZigiJWxsZCIpYGAuICAgICAgICAgICAgfAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCA6YXR0cjpgJWxsaWAgICAgICB8IGxvbmcgbG9uZyAgICAgICAgICAgfCBFeGFjdGx5IGVxdWl2YWxlbnQgdG8gICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCBgYHByaW50ZigiJWxsaSIpYGAuICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCA6YXR0cjpgJWxsdWAgICAgICB8IHVuc2lnbmVkIGxvbmcgbG9uZyAgfCBFeGFjdGx5IGVxdWl2YWxlbnQgdG8gICAgICAgICAgfAogICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCBgYHByaW50ZigiJWxsdSIpYGAuICAgICAgICAgICAgfAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCA6YXR0cjpgJXpkYCAgICAgICB8IFB5X3NzaXplX3QgICAgICAgICAgfCBFeGFjdGx5IGVxdWl2YWxlbnQgdG8gICAgICAgICAgfAogICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCBgYHByaW50ZigiJXpkIilgYC4gICAgICAgICAgICAgfAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCA6YXR0cjpgJXppYCAgICAgICB8IFB5X3NzaXplX3QgICAgICAgICAgfCBFeGFjdGx5IGVxdWl2YWxlbnQgdG8gICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCBgYHByaW50ZigiJXppIilgYC4gICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCA6YXR0cjpgJXp1YCAgICAgICB8IHNpemVfdCAgICAgICAgICAgICAgfCBFeGFjdGx5IGVxdWl2YWxlbnQgdG8gICAgICAgICAgfAogICAgfCAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfCBgYHByaW50ZigiJXp1IilgYC4gICAgICAgICAgICAgfAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwpAQCAtMzIyLDQ3ICs1MjcsMTggQEAKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCiAgICAgICBTdXBwb3J0IGZvciBgYCIlbGxkImBgIGFuZCBgYCIlbGx1ImBgIGFkZGVkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgU3VwcG9ydCBmb3IgYGAiJWxpImBgLCBgYCIlbGxpImBgIGFuZCBgYCIlemkiYGAgYWRkZWQuCisKIAogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRnJvbUZvcm1hdFYoY29uc3QgY2hhciAqZm9ybWF0LCB2YV9saXN0IHZhcmdzKQogCiAgICBJZGVudGljYWwgdG8gOmM6ZnVuYzpgUHlVbmljb2RlX0Zyb21Gb3JtYXRgIGV4Y2VwdCB0aGF0IGl0IHRha2VzIGV4YWN0bHkgdHdvCiAgICBhcmd1bWVudHMuCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX1RyYW5zZm9ybURlY2ltYWxUb0FTQ0lJKFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSkKIAotICAgQ3JlYXRlIGEgVW5pY29kZSBvYmplY3QgYnkgcmVwbGFjaW5nIGFsbCBkZWNpbWFsIGRpZ2l0cyBpbgotICAgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyIG9mIHRoZSBnaXZlbiAqc2l6ZSogYnkgQVNDSUkgZGlnaXRzIDAtLTkKLSAgIGFjY29yZGluZyB0byB0aGVpciBkZWNpbWFsIHZhbHVlLiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24KLSAgIG9jY3Vycy4KLQotCi0uLiBjOmZ1bmN0aW9uOjogUHlfVU5JQ09ERSogUHlVbmljb2RlX0FzVW5pY29kZShQeU9iamVjdCAqdW5pY29kZSkKLQotICAgUmV0dXJuIGEgcmVhZC1vbmx5IHBvaW50ZXIgdG8gdGhlIFVuaWNvZGUgb2JqZWN0J3MgaW50ZXJuYWwKLSAgIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciwgKk5VTEwqIGlmICp1bmljb2RlKiBpcyBub3QgYSBVbmljb2RlIG9iamVjdC4KLSAgIE5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIDpjOnR5cGU6YFB5X1VOSUNPREUqYCBzdHJpbmcgbWF5IGNvbnRhaW4gZW1iZWRkZWQKLSAgIG51bGwgY2hhcmFjdGVycywgd2hpY2ggd291bGQgY2F1c2UgdGhlIHN0cmluZyB0byBiZSB0cnVuY2F0ZWQgd2hlbiB1c2VkIGluCi0gICBtb3N0IEMgZnVuY3Rpb25zLgotCi0KLS4uIGM6ZnVuY3Rpb246OiBQeV9VTklDT0RFKiBQeVVuaWNvZGVfQXNVbmljb2RlQ29weShQeU9iamVjdCAqdW5pY29kZSkKLQotICAgQ3JlYXRlIGEgY29weSBvZiBhIFVuaWNvZGUgc3RyaW5nIGVuZGluZyB3aXRoIGEgbnVsIGNoYXJhY3Rlci4gUmV0dXJuICpOVUxMKgotICAgYW5kIHJhaXNlIGEgOmV4YzpgTWVtb3J5RXJyb3JgIGV4Y2VwdGlvbiBvbiBtZW1vcnkgYWxsb2NhdGlvbiBmYWlsdXJlLAotICAgb3RoZXJ3aXNlIHJldHVybiBhIG5ldyBhbGxvY2F0ZWQgYnVmZmVyICh1c2UgOmM6ZnVuYzpgUHlNZW1fRnJlZWAgdG8gZnJlZQotICAgdGhlIGJ1ZmZlcikuIE5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIDpjOnR5cGU6YFB5X1VOSUNPREUqYCBzdHJpbmcgbWF5IGNvbnRhaW4KLSAgIGVtYmVkZGVkIG51bGwgY2hhcmFjdGVycywgd2hpY2ggd291bGQgY2F1c2UgdGhlIHN0cmluZyB0byBiZSB0cnVuY2F0ZWQgd2hlbgotICAgdXNlZCBpbiBtb3N0IEMgZnVuY3Rpb25zLgotCi0gICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKLQotCi0uLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfR2V0U2l6ZShQeU9iamVjdCAqdW5pY29kZSkKLQotICAgUmV0dXJuIHRoZSBsZW5ndGggb2YgdGhlIFVuaWNvZGUgb2JqZWN0LgotCi0KLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0Zyb21FbmNvZGVkT2JqZWN0KFB5T2JqZWN0ICpvYmosIGNvbnN0IGNoYXIgKmVuY29kaW5nLCBjb25zdCBjaGFyICplcnJvcnMpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Gcm9tRW5jb2RlZE9iamVjdChQeU9iamVjdCAqb2JqLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKIAogICAgQ29lcmNlIGFuIGVuY29kZWQgb2JqZWN0ICpvYmoqIHRvIGFuIFVuaWNvZGUgb2JqZWN0IGFuZCByZXR1cm4gYSByZWZlcmVuY2Ugd2l0aAogICAgaW5jcmVtZW50ZWQgcmVmY291bnQuCkBAIC0zNzksMTUgKzU1NSwyMjcgQEAKICAgIGRlY3JlZidpbmcgdGhlIHJldHVybmVkIG9iamVjdHMuCiAKIAorLi4gYzpmdW5jdGlvbjo6IFB5X3NzaXplX3QgUHlVbmljb2RlX0dldExlbmd0aChQeU9iamVjdCAqdW5pY29kZSkKKworICAgUmV0dXJuIHRoZSBsZW5ndGggb2YgdGhlIFVuaWNvZGUgb2JqZWN0LCBpbiBjb2RlIHBvaW50cy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IGludCBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMoUHlPYmplY3QgKnRvLCBQeV9zc2l6ZV90IHRvX3N0YXJ0LCBcCisgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdG8sIFB5X3NzaXplX3QgZnJvbV9zdGFydCwgUHlfc3NpemVfdCBob3dfbWFueSkKKworICAgQ29weSBjaGFyYWN0ZXJzIGZyb20gb25lIFVuaWNvZGUgb2JqZWN0IGludG8gYW5vdGhlci4gIFRoaXMgZnVuY3Rpb24gcGVyZm9ybXMKKyAgIGNoYXJhY3RlciBjb252ZXJzaW9uIHdoZW4gbmVjZXNzYXJ5IGFuZCBmYWxscyBiYWNrIHRvIDpjOmZ1bmM6YG1lbWNweWAgaWYKKyAgIHBvc3NpYmxlLiAgUmV0dXJucyBgYC0xYGAgYW5kIHNldHMgYW4gZXhjZXB0aW9uIG9uIGVycm9yLCBvdGhlcndpc2UgcmV0dXJucworICAgYGAwYGAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeV9zc2l6ZV90IFB5VW5pY29kZV9GaWxsKFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90IHN0YXJ0LCBcCisgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbmd0aCwgUHlfVUNTNCBmaWxsX2NoYXIpCisKKyAgIEZpbGwgYSBzdHJpbmcgd2l0aCBhIGNoYXJhY3Rlcjogd3JpdGUgKmZpbGxfY2hhciogaW50bworICAgYGB1bmljb2RlW3N0YXJ0OnN0YXJ0K2xlbmd0aF1gYC4KKworICAgRmFpbCBpZiAqZmlsbF9jaGFyKiBpcyBiaWdnZXIgdGhhbiB0aGUgc3RyaW5nIG1heGltdW0gY2hhcmFjdGVyLCBvciBpZiB0aGUKKyAgIHN0cmluZyBoYXMgbW9yZSB0aGFuIDEgcmVmZXJlbmNlLgorCisgICBSZXR1cm4gdGhlIG51bWJlciBvZiB3cml0dGVuIGNoYXJhY3Rlciwgb3IgcmV0dXJuIGBgLTFgYCBhbmQgcmFpc2UgYW4KKyAgIGV4Y2VwdGlvbiBvbiBlcnJvci4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IGludCBQeVVuaWNvZGVfV3JpdGVDaGFyKFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90IGluZGV4LCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfVUNTNCBjaGFyYWN0ZXIpCisKKyAgIFdyaXRlIGEgY2hhcmFjdGVyIHRvIGEgc3RyaW5nLiAgVGhlIHN0cmluZyBtdXN0IGhhdmUgYmVlbiBjcmVhdGVkIHRocm91Z2gKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9OZXdgLiAgU2luY2UgVW5pY29kZSBzdHJpbmdzIGFyZSBzdXBwb3NlZCB0byBiZSBpbW11dGFibGUsCisgICB0aGUgc3RyaW5nIG11c3Qgbm90IGJlIHNoYXJlZCwgb3IgaGF2ZSBiZWVuIGhhc2hlZCB5ZXQuCisKKyAgIFRoaXMgZnVuY3Rpb24gY2hlY2tzIHRoYXQgKnVuaWNvZGUqIGlzIGEgVW5pY29kZSBvYmplY3QsIHRoYXQgdGhlIGluZGV4IGlzCisgICBub3Qgb3V0IG9mIGJvdW5kcywgYW5kIHRoYXQgdGhlIG9iamVjdCBjYW4gYmUgbW9kaWZpZWQgc2FmZWx5IChpLmUuIHRoYXQgaXQKKyAgIGl0cyByZWZlcmVuY2UgY291bnQgaXMgb25lKSwgaW4gY29udHJhc3QgdG8gdGhlIG1hY3JvIHZlcnNpb24KKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9XUklURV9DSEFSYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X1VDUzQgUHlVbmljb2RlX1JlYWRDaGFyKFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90IGluZGV4KQorCisgICBSZWFkIGEgY2hhcmFjdGVyIGZyb20gYSBzdHJpbmcuICBUaGlzIGZ1bmN0aW9uIGNoZWNrcyB0aGF0ICp1bmljb2RlKiBpcyBhCisgICBVbmljb2RlIG9iamVjdCBhbmQgdGhlIGluZGV4IGlzIG5vdCBvdXQgb2YgYm91bmRzLCBpbiBjb250cmFzdCB0byB0aGUgbWFjcm8KKyAgIHZlcnNpb24gOmM6ZnVuYzpgUHlVbmljb2RlX1JFQURfQ0hBUmAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX1N1YnN0cmluZyhQeU9iamVjdCAqc3RyLCBQeV9zc2l6ZV90IHN0YXJ0LCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQpCisKKyAgIFJldHVybiBhIHN1YnN0cmluZyBvZiAqc3RyKiwgZnJvbSBjaGFyYWN0ZXIgaW5kZXggKnN0YXJ0KiAoaW5jbHVkZWQpIHRvCisgICBjaGFyYWN0ZXIgaW5kZXggKmVuZCogKGV4Y2x1ZGVkKS4gIE5lZ2F0aXZlIGluZGljZXMgYXJlIG5vdCBzdXBwb3J0ZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeV9VQ1M0KiBQeVVuaWNvZGVfQXNVQ1M0KFB5T2JqZWN0ICp1LCBQeV9VQ1M0ICpidWZmZXIsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgYnVmbGVuLCBpbnQgY29weV9udWxsKQorCisgICBDb3B5IHRoZSBzdHJpbmcgKnUqIGludG8gYSBVQ1M0IGJ1ZmZlciwgaW5jbHVkaW5nIGEgbnVsbCBjaGFyYWN0ZXIsIGlmCisgICAqY29weV9udWxsKiBpcyBzZXQuICBSZXR1cm5zICpOVUxMKiBhbmQgc2V0cyBhbiBleGNlcHRpb24gb24gZXJyb3IgKGluCisgICBwYXJ0aWN1bGFyLCBhIDpleGM6YFZhbHVlRXJyb3JgIGlmICpidWZsZW4qIGlzIHNtYWxsZXIgdGhhbiB0aGUgbGVuZ3RoIG9mCisgICAqdSopLiAgKmJ1ZmZlciogaXMgcmV0dXJuZWQgb24gc3VjY2Vzcy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X1VDUzQqIFB5VW5pY29kZV9Bc1VDUzRDb3B5KFB5T2JqZWN0ICp1KQorCisgICBDb3B5IHRoZSBzdHJpbmcgKnUqIGludG8gYSBuZXcgVUNTNCBidWZmZXIgdGhhdCBpcyBhbGxvY2F0ZWQgdXNpbmcKKyAgIDpjOmZ1bmM6YFB5TWVtX01hbGxvY2AuICBJZiB0aGlzIGZhaWxzLCAqTlVMTCogaXMgcmV0dXJuZWQgd2l0aCBhCisgICA6ZXhjOmBNZW1vcnlFcnJvcmAgc2V0LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCitEZXByZWNhdGVkIFB5X1VOSUNPREUgQVBJcworIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKKworLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorCitUaGVzZSBBUEkgZnVuY3Rpb25zIGFyZSBkZXByZWNhdGVkIHdpdGggdGhlIGltcGxlbWVudGF0aW9uIG9mIDpwZXA6YDM5M2AuCitFeHRlbnNpb24gbW9kdWxlcyBjYW4gY29udGludWUgdXNpbmcgdGhlbSwgYXMgdGhleSB3aWxsIG5vdCBiZSByZW1vdmVkIGluIFB5dGhvbgorMy54LCBidXQgbmVlZCB0byBiZSBhd2FyZSB0aGF0IHRoZWlyIHVzZSBjYW4gbm93IGNhdXNlIHBlcmZvcm1hbmNlIGFuZCBtZW1vcnkgaGl0cy4KKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Gcm9tVW5pY29kZShjb25zdCBQeV9VTklDT0RFICp1LCBQeV9zc2l6ZV90IHNpemUpCisKKyAgIENyZWF0ZSBhIFVuaWNvZGUgb2JqZWN0IGZyb20gdGhlIFB5X1VOSUNPREUgYnVmZmVyICp1KiBvZiB0aGUgZ2l2ZW4gc2l6ZS4gKnUqCisgICBtYXkgYmUgKk5VTEwqIHdoaWNoIGNhdXNlcyB0aGUgY29udGVudHMgdG8gYmUgdW5kZWZpbmVkLiBJdCBpcyB0aGUgdXNlcidzCisgICByZXNwb25zaWJpbGl0eSB0byBmaWxsIGluIHRoZSBuZWVkZWQgZGF0YS4gIFRoZSBidWZmZXIgaXMgY29waWVkIGludG8gdGhlIG5ldworICAgb2JqZWN0LgorCisgICBJZiB0aGUgYnVmZmVyIGlzIG5vdCAqTlVMTCosIHRoZSByZXR1cm4gdmFsdWUgbWlnaHQgYmUgYSBzaGFyZWQgb2JqZWN0LgorICAgVGhlcmVmb3JlLCBtb2RpZmljYXRpb24gb2YgdGhlIHJlc3VsdGluZyBVbmljb2RlIG9iamVjdCBpcyBvbmx5IGFsbG93ZWQgd2hlbgorICAgKnUqIGlzICpOVUxMKi4KKworICAgSWYgdGhlIGJ1ZmZlciBpcyAqTlVMTCosIDpjOmZ1bmM6YFB5VW5pY29kZV9SRUFEWWAgbXVzdCBiZSBjYWxsZWQgb25jZSB0aGUKKyAgIHN0cmluZyBjb250ZW50IGhhcyBiZWVuIGZpbGxlZCBiZWZvcmUgdXNpbmcgYW55IG9mIHRoZSBhY2Nlc3MgbWFjcm9zIHN1Y2ggYXMKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9LSU5EYC4KKworICAgUGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcgOmM6ZnVuYzpgUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YWAgb3IKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9OZXdgLgorCisKKy4uIGM6ZnVuY3Rpb246OiBQeV9VTklDT0RFKiBQeVVuaWNvZGVfQXNVbmljb2RlKFB5T2JqZWN0ICp1bmljb2RlKQorCisgICBSZXR1cm4gYSByZWFkLW9ubHkgcG9pbnRlciB0byB0aGUgVW5pY29kZSBvYmplY3QncyBpbnRlcm5hbAorICAgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyLCBvciAqTlVMTCogb24gZXJyb3IuIFRoaXMgd2lsbCBjcmVhdGUgdGhlCisgICA6Yzp0eXBlOmBQeV9VTklDT0RFKmAgcmVwcmVzZW50YXRpb24gb2YgdGhlIG9iamVjdCBpZiBpdCBpcyBub3QgeWV0CisgICBhdmFpbGFibGUuIE5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIDpjOnR5cGU6YFB5X1VOSUNPREVgIHN0cmluZyBtYXkgY29udGFpbgorICAgZW1iZWRkZWQgbnVsbCBjaGFyYWN0ZXJzLCB3aGljaCB3b3VsZCBjYXVzZSB0aGUgc3RyaW5nIHRvIGJlIHRydW5jYXRlZCB3aGVuCisgICB1c2VkIGluIG1vc3QgQyBmdW5jdGlvbnMuCisKKyAgIFBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VDUzRgLAorICAgOmM6ZnVuYzpgUHlVbmljb2RlX1N1YnN0cmluZ2AsIDpjOmZ1bmM6YFB5VW5pY29kZV9SZWFkQ2hhcmAgb3Igc2ltaWxhciBuZXcKKyAgIEFQSXMuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfVHJhbnNmb3JtRGVjaW1hbFRvQVNDSUkoUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplKQorCisgICBDcmVhdGUgYSBVbmljb2RlIG9iamVjdCBieSByZXBsYWNpbmcgYWxsIGRlY2ltYWwgZGlnaXRzIGluCisgICA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiBieSBBU0NJSSBkaWdpdHMgMC0tOQorICAgYWNjb3JkaW5nIHRvIHRoZWlyIGRlY2ltYWwgdmFsdWUuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiBvY2N1cnMuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X1VOSUNPREUqIFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90ICpzaXplKQorCisgICBMaWtlIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VuaWNvZGVgLCBidXQgYWxzbyBzYXZlcyB0aGUgOmM6ZnVuYzpgUHlfVU5JQ09ERWAKKyAgIGFycmF5IGxlbmd0aCBpbiAqc2l6ZSouIE5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIDpjOnR5cGU6YFB5X1VOSUNPREUqYCBzdHJpbmcKKyAgIG1heSBjb250YWluIGVtYmVkZGVkIG51bGwgY2hhcmFjdGVycywgd2hpY2ggd291bGQgY2F1c2UgdGhlIHN0cmluZyB0byBiZQorICAgdHJ1bmNhdGVkIHdoZW4gdXNlZCBpbiBtb3N0IEMgZnVuY3Rpb25zLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlfVU5JQ09ERSogUHlVbmljb2RlX0FzVW5pY29kZUNvcHkoUHlPYmplY3QgKnVuaWNvZGUpCisKKyAgIENyZWF0ZSBhIGNvcHkgb2YgYSBVbmljb2RlIHN0cmluZyBlbmRpbmcgd2l0aCBhIG51bCBjaGFyYWN0ZXIuIFJldHVybiAqTlVMTCoKKyAgIGFuZCByYWlzZSBhIDpleGM6YE1lbW9yeUVycm9yYCBleGNlcHRpb24gb24gbWVtb3J5IGFsbG9jYXRpb24gZmFpbHVyZSwKKyAgIG90aGVyd2lzZSByZXR1cm4gYSBuZXcgYWxsb2NhdGVkIGJ1ZmZlciAodXNlIDpjOmZ1bmM6YFB5TWVtX0ZyZWVgIHRvIGZyZWUKKyAgIHRoZSBidWZmZXIpLiBOb3RlIHRoYXQgdGhlIHJlc3VsdGluZyA6Yzp0eXBlOmBQeV9VTklDT0RFKmAgc3RyaW5nIG1heQorICAgY29udGFpbiBlbWJlZGRlZCBudWxsIGNoYXJhY3RlcnMsIHdoaWNoIHdvdWxkIGNhdXNlIHRoZSBzdHJpbmcgdG8gYmUKKyAgIHRydW5jYXRlZCB3aGVuIHVzZWQgaW4gbW9zdCBDIGZ1bmN0aW9ucy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCisKKyAgIFBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VDUzRDb3B5YCBvciBzaW1pbGFyIG5ldyBBUElzLgorCisKKy4uIGM6ZnVuY3Rpb246OiBQeV9zc2l6ZV90IFB5VW5pY29kZV9HZXRTaXplKFB5T2JqZWN0ICp1bmljb2RlKQorCisgICBSZXR1cm4gdGhlIHNpemUgb2YgdGhlIGRlcHJlY2F0ZWQgOmM6dHlwZTpgUHlfVU5JQ09ERWAgcmVwcmVzZW50YXRpb24sIGluCisgICBjb2RlIHVuaXRzICh0aGlzIGluY2x1ZGVzIHN1cnJvZ2F0ZSBwYWlycyBhcyAyIHVuaXRzKS4KKworICAgUGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcgOmM6ZnVuYzpgUHlVbmljb2RlX0dldExlbmd0aGAuCisKKwogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRnJvbU9iamVjdChQeU9iamVjdCAqb2JqKQogCiAgICBTaG9ydGN1dCBmb3IgYGBQeVVuaWNvZGVfRnJvbUVuY29kZWRPYmplY3Qob2JqLCBOVUxMLCAic3RyaWN0IilgYCB3aGljaCBpcyB1c2VkCiAgICB0aHJvdWdob3V0IHRoZSBpbnRlcnByZXRlciB3aGVuZXZlciBjb2VyY2lvbiB0byBVbmljb2RlIGlzIG5lZWRlZC4KIAotSWYgdGhlIHBsYXRmb3JtIHN1cHBvcnRzIDpjOnR5cGU6YHdjaGFyX3RgIGFuZCBwcm92aWRlcyBhIGhlYWRlciBmaWxlIHdjaGFyLmgsCi1QeXRob24gY2FuIGludGVyZmFjZSBkaXJlY3RseSB0byB0aGlzIHR5cGUgdXNpbmcgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnMuCi1TdXBwb3J0IGlzIG9wdGltaXplZCBpZiBQeXRob24ncyBvd24gOmM6dHlwZTpgUHlfVU5JQ09ERWAgdHlwZSBpcyBpZGVudGljYWwgdG8KLXRoZSBzeXN0ZW0ncyA6Yzp0eXBlOmB3Y2hhcl90YC4KKworTG9jYWxlIEVuY29kaW5nCisiIiIiIiIiIiIiIiIiIiIKKworVGhlIGN1cnJlbnQgbG9jYWxlIGVuY29kaW5nIGNhbiBiZSB1c2VkIHRvIGRlY29kZSB0ZXh0IGZyb20gdGhlIG9wZXJhdGluZworc3lzdGVtLgorCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVMb2NhbGVBbmRTaXplKGNvbnN0IGNoYXIgKnN0ciwgUHlfc3NpemVfdCBsZW4sIGludCBzdXJyb2dhdGVlc2NhcGUpCisKKyAgIERlY29kZSBhIHN0cmluZyBmcm9tIHRoZSBjdXJyZW50IGxvY2FsZSBlbmNvZGluZy4gVGhlIGRlY29kZXIgaXMgc3RyaWN0IGlmCisgICAqc3Vycm9nYXRlZXNjYXBlKiBpcyBlcXVhbCB0byB6ZXJvLCBvdGhlcndpc2UgaXQgdXNlcyB0aGUKKyAgIGBgJ3N1cnJvZ2F0ZWVzY2FwZSdgYCBlcnJvciBoYW5kbGVyICg6cGVwOmAzODNgKSB0byBlc2NhcGUgdW5kZWNvZGFibGUKKyAgIGJ5dGVzLiBJZiBhIGJ5dGUgc2VxdWVuY2UgY2FuIGJlIGRlY29kZWQgYXMgYSBzdXJyb2dhdGUgY2hhcmFjdGVyIGFuZAorICAgKnN1cnJvZ2F0ZWVzY2FwZSogaXMgbm90IGVxdWFsIHRvIHplcm8sIHRoZSBieXRlIHNlcXVlbmNlIGlzIGVzY2FwZWQgdXNpbmcKKyAgIHRoZSBgYCdzdXJyb2dhdGVlc2NhcGUnYGAgZXJyb3IgaGFuZGxlciBpbnN0ZWFkIG9mIGJlaW5nIGRlY29kZWQuICAqc3RyKgorICAgbXVzdCBlbmQgd2l0aCBhIG51bGwgY2hhcmFjdGVyIGJ1dCBjYW5ub3QgY29udGFpbiBlbWJlZGRlZCBudWxsIGNoYXJhY3RlcnMuCisKKyAgIC4uIHNlZWFsc286OgorCisgICAgICBVc2UgOmM6ZnVuYzpgUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemVgIHRvIGRlY29kZSBhIHN0cmluZyBmcm9tCisgICAgICA6YzpkYXRhOmBQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nYCAodGhlIGxvY2FsZSBlbmNvZGluZyByZWFkIGF0CisgICAgICBQeXRob24gc3RhcnR1cCkuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZUxvY2FsZShjb25zdCBjaGFyICpzdHIsIGludCBzdXJyb2dhdGVlc2NhcGUpCisKKyAgIFNpbWlsYXIgdG8gOmM6ZnVuYzpgUHlVbmljb2RlX0RlY29kZUxvY2FsZUFuZFNpemVgLCBidXQgY29tcHV0ZSB0aGUgc3RyaW5nCisgICBsZW5ndGggdXNpbmcgOmM6ZnVuYzpgc3RybGVuYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlTG9jYWxlKFB5T2JqZWN0ICp1bmljb2RlLCBpbnQgc3Vycm9nYXRlZXNjYXBlKQorCisgICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB0byB0aGUgY3VycmVudCBsb2NhbGUgZW5jb2RpbmcuIFRoZSBlbmNvZGVyIGlzCisgICBzdHJpY3QgaWYgKnN1cnJvZ2F0ZWVzY2FwZSogaXMgZXF1YWwgdG8gemVybywgb3RoZXJ3aXNlIGl0IHVzZXMgdGhlCisgICBgYCdzdXJyb2dhdGVlc2NhcGUnYGAgZXJyb3IgaGFuZGxlciAoOnBlcDpgMzgzYCkuIFJldHVybiBhIDpjbGFzczpgYnl0ZXNgCisgICBvYmplY3QuICpzdHIqIGNhbm5vdCBjb250YWluIGVtYmVkZGVkIG51bGwgY2hhcmFjdGVycy4KKworICAgLi4gc2VlYWxzbzo6CisKKyAgICAgIFVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0YCB0byBlbmNvZGUgYSBzdHJpbmcgdG8KKyAgICAgIDpjOmRhdGE6YFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmdgICh0aGUgbG9jYWxlIGVuY29kaW5nIHJlYWQgYXQKKyAgICAgIFB5dGhvbiBzdGFydHVwKS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCiAKIAogRmlsZSBTeXN0ZW0gRW5jb2RpbmcKQEAgLTQzMCw2ICs4MTgsMTMgQEAKICAgIElmIDpjOmRhdGE6YFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmdgIGlzIG5vdCBzZXQsIGZhbGwgYmFjayB0byB0aGUKICAgIGxvY2FsZSBlbmNvZGluZy4KIAorICAgLi4gc2VlYWxzbzo6CisKKyAgICAgIDpjOmRhdGE6YFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmdgIGlzIGluaXRpYWxpemVkIGF0IHN0YXJ0dXAgZnJvbSB0aGUKKyAgICAgIGxvY2FsZSBlbmNvZGluZyBhbmQgY2Fubm90IGJlIG1vZGlmaWVkIGxhdGVyLiBJZiB5b3UgbmVlZCB0byBkZWNvZGUgYQorICAgICAgc3RyaW5nIGZyb20gdGhlIGN1cnJlbnQgbG9jYWxlIGVuY29kaW5nLCB1c2UKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9EZWNvZGVMb2NhbGVBbmRTaXplYC4KKwogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIKICAgICAgIFVzZSBgYCdzdHJpY3QnYGAgZXJyb3IgaGFuZGxlciBvbiBXaW5kb3dzLgogCkBAIC00NTgsNiArODUzLDEzIEBACiAgICBJZiA6YzpkYXRhOmBQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nYCBpcyBub3Qgc2V0LCBmYWxsIGJhY2sgdG8gdGhlCiAgICBsb2NhbGUgZW5jb2RpbmcuCiAKKyAgIC4uIHNlZWFsc286OgorCisgICAgICA6YzpkYXRhOmBQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nYCBpcyBpbml0aWFsaXplZCBhdCBzdGFydHVwIGZyb20gdGhlCisgICAgICBsb2NhbGUgZW5jb2RpbmcgYW5kIGNhbm5vdCBiZSBtb2RpZmllZCBsYXRlci4gSWYgeW91IG5lZWQgdG8gZW5jb2RlIGEKKyAgICAgIHN0cmluZyB0byB0aGUgY3VycmVudCBsb2NhbGUgZW5jb2RpbmcsIHVzZQorICAgICAgOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZUxvY2FsZWAuCisKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCiAKQEAgLTQ3OSw5ICs4ODEsOSBAQAogICAgQ29weSB0aGUgVW5pY29kZSBvYmplY3QgY29udGVudHMgaW50byB0aGUgOmM6dHlwZTpgd2NoYXJfdGAgYnVmZmVyICp3Ki4gIEF0IG1vc3QKICAgICpzaXplKiA6Yzp0eXBlOmB3Y2hhcl90YCBjaGFyYWN0ZXJzIGFyZSBjb3BpZWQgKGV4Y2x1ZGluZyBhIHBvc3NpYmx5IHRyYWlsaW5nCiAgICAwLXRlcm1pbmF0aW9uIGNoYXJhY3RlcikuICBSZXR1cm4gdGhlIG51bWJlciBvZiA6Yzp0eXBlOmB3Y2hhcl90YCBjaGFyYWN0ZXJzCi0gICBjb3BpZWQgb3IgLTEgaW4gY2FzZSBvZiBhbiBlcnJvci4gIE5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIDpjOnR5cGU6YHdjaGFyX3RgCisgICBjb3BpZWQgb3IgLTEgaW4gY2FzZSBvZiBhbiBlcnJvci4gIE5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIDpjOnR5cGU6YHdjaGFyX3QqYAogICAgc3RyaW5nIG1heSBvciBtYXkgbm90IGJlIDAtdGVybWluYXRlZC4gIEl0IGlzIHRoZSByZXNwb25zaWJpbGl0eSBvZiB0aGUgY2FsbGVyCi0gICB0byBtYWtlIHN1cmUgdGhhdCB0aGUgOmM6dHlwZTpgd2NoYXJfdGAgc3RyaW5nIGlzIDAtdGVybWluYXRlZCBpbiBjYXNlIHRoaXMgaXMKKyAgIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSA6Yzp0eXBlOmB3Y2hhcl90KmAgc3RyaW5nIGlzIDAtdGVybWluYXRlZCBpbiBjYXNlIHRoaXMgaXMKICAgIHJlcXVpcmVkIGJ5IHRoZSBhcHBsaWNhdGlvbi4gQWxzbywgbm90ZSB0aGF0IHRoZSA6Yzp0eXBlOmB3Y2hhcl90KmAgc3RyaW5nCiAgICBtaWdodCBjb250YWluIG51bGwgY2hhcmFjdGVycywgd2hpY2ggd291bGQgY2F1c2UgdGhlIHN0cmluZyB0byBiZSB0cnVuY2F0ZWQKICAgIHdoZW4gdXNlZCB3aXRoIG1vc3QgQyBmdW5jdGlvbnMuCkBAIC00OTcsMTIgKzg5OSwzMiBAQAogICAgUmV0dXJucyBhIGJ1ZmZlciBhbGxvY2F0ZWQgYnkgOmM6ZnVuYzpgUHlNZW1fQWxsb2NgICh1c2UKICAgIDpjOmZ1bmM6YFB5TWVtX0ZyZWVgIHRvIGZyZWUgaXQpIG9uIHN1Y2Nlc3MuIE9uIGVycm9yLCByZXR1cm5zICpOVUxMKiwKICAgICpcKnNpemUqIGlzIHVuZGVmaW5lZCBhbmQgcmFpc2VzIGEgOmV4YzpgTWVtb3J5RXJyb3JgLiBOb3RlIHRoYXQgdGhlCi0gICByZXN1bHRpbmcgOmM6dHlwZTpgd2NoYXJfdCpgIHN0cmluZyBtaWdodCBjb250YWluIG51bGwgY2hhcmFjdGVycywgd2hpY2gKKyAgIHJlc3VsdGluZyA6Yzp0eXBlOmB3Y2hhcl90YCBzdHJpbmcgbWlnaHQgY29udGFpbiBudWxsIGNoYXJhY3RlcnMsIHdoaWNoCiAgICB3b3VsZCBjYXVzZSB0aGUgc3RyaW5nIHRvIGJlIHRydW5jYXRlZCB3aGVuIHVzZWQgd2l0aCBtb3N0IEMgZnVuY3Rpb25zLgogCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAogCitVQ1M0IFN1cHBvcnQKKyIiIiIiIiIiIiIiIgorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gWFhYIGFyZSB0aGVzZSBtZWFudCB0byBiZSBwdWJsaWM/CisKKy4uIGM6ZnVuY3Rpb246OiBzaXplX3QgUHlfVUNTNF9zdHJsZW4oY29uc3QgUHlfVUNTNCAqdSkKKyAgICAgICAgICAgICAgICBQeV9VQ1M0KiBQeV9VQ1M0X3N0cmNweShQeV9VQ1M0ICpzMSwgY29uc3QgUHlfVUNTNCAqczIpCisgICAgICAgICAgICAgICAgUHlfVUNTNCogUHlfVUNTNF9zdHJuY3B5KFB5X1VDUzQgKnMxLCBjb25zdCBQeV9VQ1M0ICpzMiwgc2l6ZV90IG4pCisgICAgICAgICAgICAgICAgUHlfVUNTNCogUHlfVUNTNF9zdHJjYXQoUHlfVUNTNCAqczEsIGNvbnN0IFB5X1VDUzQgKnMyKQorICAgICAgICAgICAgICAgIGludCBQeV9VQ1M0X3N0cmNtcChjb25zdCBQeV9VQ1M0ICpzMSwgY29uc3QgUHlfVUNTNCAqczIpCisgICAgICAgICAgICAgICAgaW50IFB5X1VDUzRfc3RybmNtcChjb25zdCBQeV9VQ1M0ICpzMSwgY29uc3QgUHlfVUNTNCAqczIsIHNpemVfdCBuKQorICAgICAgICAgICAgICAgIFB5X1VDUzQqIFB5X1VDUzRfc3RyY2hyKGNvbnN0IFB5X1VDUzQgKnMsIFB5X1VDUzQgYykKKyAgICAgICAgICAgICAgICBQeV9VQ1M0KiBQeV9VQ1M0X3N0cnJjaHIoY29uc3QgUHlfVUNTNCAqcywgUHlfVUNTNCBjKQorCisgICBUaGVzZSB1dGlsaXR5IGZ1bmN0aW9ucyB3b3JrIG9uIHN0cmluZ3Mgb2YgOmM6dHlwZTpgUHlfVUNTNGAgY2hhcmFjdGVycyBhbmQKKyAgIG90aGVyd2lzZSBiZWhhdmUgbGlrZSB0aGUgQyBzdGFuZGFyZCBsaWJyYXJ5IGZ1bmN0aW9ucyB3aXRoIHRoZSBzYW1lIG5hbWUuCisKKwogLi4gX2J1aWx0aW5jb2RlY3M6CiAKIEJ1aWx0LWluIENvZGVjcwpAQCAtNTM3LDcgKzk1OSw4IEBACiBUaGVzZSBhcmUgdGhlIGdlbmVyaWMgY29kZWMgQVBJczoKIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGUoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplbmNvZGluZywgY29uc3QgY2hhciAqZXJyb3JzKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlKGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKIAogICAgQ3JlYXRlIGEgVW5pY29kZSBvYmplY3QgYnkgZGVjb2RpbmcgKnNpemUqIGJ5dGVzIG9mIHRoZSBlbmNvZGVkIHN0cmluZyAqcyouCiAgICAqZW5jb2RpbmcqIGFuZCAqZXJyb3JzKiBoYXZlIHRoZSBzYW1lIG1lYW5pbmcgYXMgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIHNhbWUgbmFtZQpAQCAtNTQ2LDcgKzk2OSwxOCBAQAogICAgdGhlIGNvZGVjLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZShjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVuY29kaW5nLCBjb25zdCBjaGFyICplcnJvcnMpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLCBjb25zdCBjaGFyICplcnJvcnMpCisKKyAgIEVuY29kZSBhIFVuaWNvZGUgb2JqZWN0IGFuZCByZXR1cm4gdGhlIHJlc3VsdCBhcyBQeXRob24gYnl0ZXMgb2JqZWN0LgorICAgKmVuY29kaW5nKiBhbmQgKmVycm9ycyogaGF2ZSB0aGUgc2FtZSBtZWFuaW5nIGFzIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBzYW1lCisgICBuYW1lIGluIHRoZSBVbmljb2RlIDptZXRoOmBlbmNvZGVgIG1ldGhvZC4gVGhlIGNvZGVjIHRvIGJlIHVzZWQgaXMgbG9va2VkIHVwCisgICB1c2luZyB0aGUgUHl0aG9uIGNvZGVjIHJlZ2lzdHJ5LiBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5CisgICB0aGUgY29kZWMuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKIAogICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgKnMqIG9mIHRoZSBnaXZlbiAqc2l6ZSogYW5kIHJldHVybiBhIFB5dGhvbgogICAgYnl0ZXMgb2JqZWN0LiAgKmVuY29kaW5nKiBhbmQgKmVycm9ycyogaGF2ZSB0aGUgc2FtZSBtZWFuaW5nIGFzIHRoZQpAQCAtNTU0LDE0ICs5ODgsOSBAQAogICAgdG8gYmUgdXNlZCBpcyBsb29rZWQgdXAgdXNpbmcgdGhlIFB5dGhvbiBjb2RlYyByZWdpc3RyeS4gIFJldHVybiAqTlVMTCogaWYgYW4KICAgIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KIAotCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUsIGNvbnN0IGNoYXIgKmVuY29kaW5nLCBjb25zdCBjaGFyICplcnJvcnMpCi0KLSAgIEVuY29kZSBhIFVuaWNvZGUgb2JqZWN0IGFuZCByZXR1cm4gdGhlIHJlc3VsdCBhcyBQeXRob24gYnl0ZXMgb2JqZWN0LgotICAgKmVuY29kaW5nKiBhbmQgKmVycm9ycyogaGF2ZSB0aGUgc2FtZSBtZWFuaW5nIGFzIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBzYW1lCi0gICBuYW1lIGluIHRoZSBVbmljb2RlIDptZXRoOmBlbmNvZGVgIG1ldGhvZC4gVGhlIGNvZGVjIHRvIGJlIHVzZWQgaXMgbG9va2VkIHVwCi0gICB1c2luZyB0aGUgUHl0aG9uIGNvZGVjIHJlZ2lzdHJ5LiBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5Ci0gICB0aGUgY29kZWMuCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgQVBJOyBwbGVhc2UgbWlncmF0ZSB0byB1c2luZworICAgICAgOmM6ZnVuYzpgUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZ2AuCiAKIAogVVRGLTggQ29kZWNzCkBAIC01NzYsNyArMTAwNSw4IEBACiAgICAqcyouIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycywgUHlfc3NpemVfdCAqY29uc3VtZWQpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWwoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIFB5X3NzaXplX3QgKmNvbnN1bWVkKQogCiAgICBJZiAqY29uc3VtZWQqIGlzICpOVUxMKiwgYmVoYXZlIGxpa2UgOmM6ZnVuYzpgUHlVbmljb2RlX0RlY29kZVVURjhgLiBJZgogICAgKmNvbnN1bWVkKiBpcyBub3QgKk5VTEwqLCB0cmFpbGluZyBpbmNvbXBsZXRlIFVURi04IGJ5dGUgc2VxdWVuY2VzIHdpbGwgbm90IGJlCkBAIC01ODQsMTMgKzEwMTQsNiBAQAogICAgdGhhdCBoYXZlIGJlZW4gZGVjb2RlZCB3aWxsIGJlIHN0b3JlZCBpbiAqY29uc3VtZWQqLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZVVURjgoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMpCi0KLSAgIEVuY29kZSB0aGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyICpzKiBvZiB0aGUgZ2l2ZW4gKnNpemUqIHVzaW5nIFVURi04IGFuZAotICAgcmV0dXJuIGEgUHl0aG9uIGJ5dGVzIG9iamVjdC4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkKLSAgIHRoZSBjb2RlYy4KLQotCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc1VURjhTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCiAKICAgIEVuY29kZSBhIFVuaWNvZGUgb2JqZWN0IHVzaW5nIFVURi04IGFuZCByZXR1cm4gdGhlIHJlc3VsdCBhcyBQeXRob24gYnl0ZXMKQEAgLTU5OCwxMyArMTAyMSw0OCBAQAogICAgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KIAogCisuLiBjOmZ1bmN0aW9uOjogY2hhciogUHlVbmljb2RlX0FzVVRGOEFuZFNpemUoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgKnNpemUpCisKKyAgIFJldHVybiBhIHBvaW50ZXIgdG8gdGhlIGRlZmF1bHQgZW5jb2RpbmcgKFVURi04KSBvZiB0aGUgVW5pY29kZSBvYmplY3QsIGFuZAorICAgc3RvcmUgdGhlIHNpemUgb2YgdGhlIGVuY29kZWQgcmVwcmVzZW50YXRpb24gKGluIGJ5dGVzKSBpbiAqc2l6ZSouICAqc2l6ZSoKKyAgIGNhbiBiZSAqTlVMTCosIGluIHRoaXMgY2FzZSBubyBzaXplIHdpbGwgYmUgc3RvcmVkLgorCisgICBJbiB0aGUgY2FzZSBvZiBhbiBlcnJvciwgKk5VTEwqIGlzIHJldHVybmVkIHdpdGggYW4gZXhjZXB0aW9uIHNldCBhbmQgbm8KKyAgICpzaXplKiBpcyBzdG9yZWQuCisKKyAgIFRoaXMgY2FjaGVzIHRoZSBVVEYtOCByZXByZXNlbnRhdGlvbiBvZiB0aGUgc3RyaW5nIGluIHRoZSBVbmljb2RlIG9iamVjdCwgYW5kCisgICBzdWJzZXF1ZW50IGNhbGxzIHdpbGwgcmV0dXJuIGEgcG9pbnRlciB0byB0aGUgc2FtZSBidWZmZXIuICBUaGUgY2FsbGVyIGlzIG5vdAorICAgcmVzcG9uc2libGUgZm9yIGRlYWxsb2NhdGluZyB0aGUgYnVmZmVyLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogY2hhciogUHlVbmljb2RlX0FzVVRGOChQeU9iamVjdCAqdW5pY29kZSkKKworICAgQXMgOmM6ZnVuYzpgUHlVbmljb2RlX0FzVVRGOEFuZFNpemVgLCBidXQgZG9lcyBub3Qgc3RvcmUgdGhlIHNpemUuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZVVURjgoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMpCisKKyAgIEVuY29kZSB0aGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyICpzKiBvZiB0aGUgZ2l2ZW4gKnNpemUqIHVzaW5nIFVURi04IGFuZAorICAgcmV0dXJuIGEgUHl0aG9uIGJ5dGVzIG9iamVjdC4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkKKyAgIHRoZSBjb2RlYy4KKworICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIDpjOnR5cGU6YFB5X1VOSUNPREVgIEFQSTsgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VURjhTdHJpbmdgIG9yIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VURjhBbmRTaXplYC4KKworCiBVVEYtMzIgQ29kZWNzCiAiIiIiIiIiIiIiIiIiCiAKIFRoZXNlIGFyZSB0aGUgVVRGLTMyIGNvZGVjIEFQSXM6CiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlVVRGMzIoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMsIGludCAqYnl0ZW9yZGVyKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlVVRGMzIoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIGludCAqYnl0ZW9yZGVyKQogCiAgICBEZWNvZGUgKnNpemUqIGJ5dGVzIGZyb20gYSBVVEYtMzIgZW5jb2RlZCBidWZmZXIgc3RyaW5nIGFuZCByZXR1cm4gdGhlCiAgICBjb3JyZXNwb25kaW5nIFVuaWNvZGUgb2JqZWN0LiAgKmVycm9ycyogKGlmIG5vbi0qTlVMTCopIGRlZmluZXMgdGhlIGVycm9yCkBAIC02MzIsNyArMTA5MCw4IEBACiAgICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVVEYzMlN0YXRlZnVsKGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzLCBpbnQgKmJ5dGVvcmRlciwgUHlfc3NpemVfdCAqY29uc3VtZWQpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVVEYzMlN0YXRlZnVsKGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLCBpbnQgKmJ5dGVvcmRlciwgUHlfc3NpemVfdCAqY29uc3VtZWQpCiAKICAgIElmICpjb25zdW1lZCogaXMgKk5VTEwqLCBiZWhhdmUgbGlrZSA6YzpmdW5jOmBQeVVuaWNvZGVfRGVjb2RlVVRGMzJgLiBJZgogICAgKmNvbnN1bWVkKiBpcyBub3QgKk5VTEwqLCA6YzpmdW5jOmBQeVVuaWNvZGVfRGVjb2RlVVRGMzJTdGF0ZWZ1bGAgd2lsbCBub3QgdHJlYXQKQEAgLTY0MSw3ICsxMTAwLDE1IEBACiAgICB0aGF0IGhhdmUgYmVlbiBkZWNvZGVkIHdpbGwgYmUgc3RvcmVkIGluICpjb25zdW1lZCouCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlVVRGMzIoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMsIGludCBieXRlb3JkZXIpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc1VURjMyU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorCisgICBSZXR1cm4gYSBQeXRob24gYnl0ZSBzdHJpbmcgdXNpbmcgdGhlIFVURi0zMiBlbmNvZGluZyBpbiBuYXRpdmUgYnl0ZQorICAgb3JkZXIuIFRoZSBzdHJpbmcgYWx3YXlzIHN0YXJ0cyB3aXRoIGEgQk9NIG1hcmsuICBFcnJvciBoYW5kbGluZyBpcyAic3RyaWN0Ii4KKyAgIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgorCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZVVURjMyKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLCBpbnQgYnl0ZW9yZGVyKQogCiAgICBSZXR1cm4gYSBQeXRob24gYnl0ZXMgb2JqZWN0IGhvbGRpbmcgdGhlIFVURi0zMiBlbmNvZGVkIHZhbHVlIG9mIHRoZSBVbmljb2RlCiAgICBkYXRhIGluICpzKi4gIE91dHB1dCBpcyB3cml0dGVuIGFjY29yZGluZyB0byB0aGUgZm9sbG93aW5nIGJ5dGUgb3JkZXI6OgpAQCAtNjU4LDEyICsxMTI1LDkgQEAKIAogICAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCiAKLQotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfQXNVVEYzMlN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKLQotICAgUmV0dXJuIGEgUHl0aG9uIGJ5dGUgc3RyaW5nIHVzaW5nIHRoZSBVVEYtMzIgZW5jb2RpbmcgaW4gbmF0aXZlIGJ5dGUKLSAgIG9yZGVyLiBUaGUgc3RyaW5nIGFsd2F5cyBzdGFydHMgd2l0aCBhIEJPTSBtYXJrLiAgRXJyb3IgaGFuZGxpbmcgaXMgInN0cmljdCIuCi0gICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBBUEk7IHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVVEYzMlN0cmluZ2AuCiAKIAogVVRGLTE2IENvZGVjcwpAQCAtNjcyLDcgKzExMzYsOCBAQAogVGhlc2UgYXJlIHRoZSBVVEYtMTYgY29kZWMgQVBJczoKIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVVEYxNihjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycywgaW50ICpieXRlb3JkZXIpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVVEYxNihjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywgaW50ICpieXRlb3JkZXIpCiAKICAgIERlY29kZSAqc2l6ZSogYnl0ZXMgZnJvbSBhIFVURi0xNiBlbmNvZGVkIGJ1ZmZlciBzdHJpbmcgYW5kIHJldHVybiB0aGUKICAgIGNvcnJlc3BvbmRpbmcgVW5pY29kZSBvYmplY3QuICAqZXJyb3JzKiAoaWYgbm9uLSpOVUxMKikgZGVmaW5lcyB0aGUgZXJyb3IKQEAgLTY5OSw3ICsxMTY0LDggQEAKICAgIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVURjE2U3RhdGVmdWwoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMsIGludCAqYnl0ZW9yZGVyLCBQeV9zc2l6ZV90ICpjb25zdW1lZCkKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVURjE2U3RhdGVmdWwoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIGludCAqYnl0ZW9yZGVyLCBQeV9zc2l6ZV90ICpjb25zdW1lZCkKIAogICAgSWYgKmNvbnN1bWVkKiBpcyAqTlVMTCosIGJlaGF2ZSBsaWtlIDpjOmZ1bmM6YFB5VW5pY29kZV9EZWNvZGVVVEYxNmAuIElmCiAgICAqY29uc3VtZWQqIGlzIG5vdCAqTlVMTCosIDpjOmZ1bmM6YFB5VW5pY29kZV9EZWNvZGVVVEYxNlN0YXRlZnVsYCB3aWxsIG5vdCB0cmVhdApAQCAtNzA4LDcgKzExNzQsMTUgQEAKICAgIG51bWJlciBvZiBieXRlcyB0aGF0IGhhdmUgYmVlbiBkZWNvZGVkIHdpbGwgYmUgc3RvcmVkIGluICpjb25zdW1lZCouCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlVVRGMTYoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMsIGludCBieXRlb3JkZXIpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc1VURjE2U3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorCisgICBSZXR1cm4gYSBQeXRob24gYnl0ZSBzdHJpbmcgdXNpbmcgdGhlIFVURi0xNiBlbmNvZGluZyBpbiBuYXRpdmUgYnl0ZQorICAgb3JkZXIuIFRoZSBzdHJpbmcgYWx3YXlzIHN0YXJ0cyB3aXRoIGEgQk9NIG1hcmsuICBFcnJvciBoYW5kbGluZyBpcyAic3RyaWN0Ii4KKyAgIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgorCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZVVURjE2KGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLCBpbnQgYnl0ZW9yZGVyKQogCiAgICBSZXR1cm4gYSBQeXRob24gYnl0ZXMgb2JqZWN0IGhvbGRpbmcgdGhlIFVURi0xNiBlbmNvZGVkIHZhbHVlIG9mIHRoZSBVbmljb2RlCiAgICBkYXRhIGluICpzKi4gIE91dHB1dCBpcyB3cml0dGVuIGFjY29yZGluZyB0byB0aGUgZm9sbG93aW5nIGJ5dGUgb3JkZXI6OgpAQCAtNzI2LDEyICsxMjAwLDkgQEAKIAogICAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCiAKLQotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfQXNVVEYxNlN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKLQotICAgUmV0dXJuIGEgUHl0aG9uIGJ5dGUgc3RyaW5nIHVzaW5nIHRoZSBVVEYtMTYgZW5jb2RpbmcgaW4gbmF0aXZlIGJ5dGUKLSAgIG9yZGVyLiBUaGUgc3RyaW5nIGFsd2F5cyBzdGFydHMgd2l0aCBhIEJPTSBtYXJrLiAgRXJyb3IgaGFuZGxpbmcgaXMgInN0cmljdCIuCi0gICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBBUEk7IHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVVEYxNlN0cmluZ2AuCiAKIAogVVRGLTcgQ29kZWNzCkBAIC03NDYsNyArMTIxNyw4IEBACiAgICAqcyouICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVVEY3U3RhdGVmdWwoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMsIFB5X3NzaXplX3QgKmNvbnN1bWVkKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlVVRGN1N0YXRlZnVsKGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLCBQeV9zc2l6ZV90ICpjb25zdW1lZCkKIAogICAgSWYgKmNvbnN1bWVkKiBpcyAqTlVMTCosIGJlaGF2ZSBsaWtlIDpjOmZ1bmM6YFB5VW5pY29kZV9EZWNvZGVVVEY3YC4gIElmCiAgICAqY29uc3VtZWQqIGlzIG5vdCAqTlVMTCosIHRyYWlsaW5nIGluY29tcGxldGUgVVRGLTcgYmFzZS02NCBzZWN0aW9ucyB3aWxsIG5vdApAQCAtNzU0LDcgKzEyMjYsOCBAQAogICAgYnl0ZXMgdGhhdCBoYXZlIGJlZW4gZGVjb2RlZCB3aWxsIGJlIHN0b3JlZCBpbiAqY29uc3VtZWQqLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZVVURjcoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBpbnQgYmFzZTY0U2V0TywgaW50IGJhc2U2NFdoaXRlU3BhY2UsIGNvbnN0IGNoYXIgKmVycm9ycykKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZVVURjcoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgYmFzZTY0U2V0TywgaW50IGJhc2U2NFdoaXRlU3BhY2UsIGNvbnN0IGNoYXIgKmVycm9ycykKIAogICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuIHNpemUgdXNpbmcgVVRGLTcgYW5kCiAgICByZXR1cm4gYSBQeXRob24gYnl0ZXMgb2JqZWN0LiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieQpAQCAtNzY1LDYgKzEyMzgsMTEgQEAKICAgIG5vbnplcm8sIHdoaXRlc3BhY2Ugd2lsbCBiZSBlbmNvZGVkIGluIGJhc2UtNjQuICBCb3RoIGFyZSBzZXQgdG8gemVybyBmb3IgdGhlCiAgICBQeXRob24gInV0Zi03IiBjb2RlYy4KIAorICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIDpjOnR5cGU6YFB5X1VOSUNPREVgIEFQSS4KKworICAgLi4gWFhYIHJlcGxhY2Ugd2l0aCB3aGF0PworCiAKIFVuaWNvZGUtRXNjYXBlIENvZGVjcwogIiIiIiIiIiIiIiIiIiIiIiIiIiIiCkBAIC03NzIsMTkgKzEyNTAsMTMgQEAKIFRoZXNlIGFyZSB0aGUgIlVuaWNvZGUgRXNjYXBlIiBjb2RlYyBBUElzOgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVuaWNvZGVFc2NhcGUoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVbmljb2RlRXNjYXBlKGNvbnN0IGNoYXIgKnMsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBDcmVhdGUgYSBVbmljb2RlIG9iamVjdCBieSBkZWNvZGluZyAqc2l6ZSogYnl0ZXMgb2YgdGhlIFVuaWNvZGUtRXNjYXBlIGVuY29kZWQKICAgIHN0cmluZyAqcyouICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVVbmljb2RlRXNjYXBlKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSkKLQotICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiB1c2luZyBVbmljb2RlLUVzY2FwZSBhbmQKLSAgIHJldHVybiBhIFB5dGhvbiBzdHJpbmcgb2JqZWN0LiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUKLSAgIGNvZGVjLgotCi0KIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzVW5pY29kZUVzY2FwZVN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKIAogICAgRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgdXNpbmcgVW5pY29kZS1Fc2NhcGUgYW5kIHJldHVybiB0aGUgcmVzdWx0IGFzIFB5dGhvbgpAQCAtNzkyLDI1ICsxMjY0LDMwIEBACiAgICByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplKQorCisgICBFbmNvZGUgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gKnNpemUqIHVzaW5nIFVuaWNvZGUtRXNjYXBlIGFuZAorICAgcmV0dXJuIGEgUHl0aG9uIHN0cmluZyBvYmplY3QuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZQorICAgY29kZWMuCisKKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBBUEk7IHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nYC4KKworCiBSYXctVW5pY29kZS1Fc2NhcGUgQ29kZWNzCiAiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiCiAKIFRoZXNlIGFyZSB0aGUgIlJhdyBVbmljb2RlIEVzY2FwZSIgY29kZWMgQVBJczoKIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVSYXdVbmljb2RlRXNjYXBlKGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlUmF3VW5pY29kZUVzY2FwZShjb25zdCBjaGFyICpzLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycykKIAogICAgQ3JlYXRlIGEgVW5pY29kZSBvYmplY3QgYnkgZGVjb2RpbmcgKnNpemUqIGJ5dGVzIG9mIHRoZSBSYXctVW5pY29kZS1Fc2NhcGUKICAgIGVuY29kZWQgc3RyaW5nICpzKi4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMpCi0KLSAgIEVuY29kZSB0aGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyIG9mIHRoZSBnaXZlbiAqc2l6ZSogdXNpbmcgUmF3LVVuaWNvZGUtRXNjYXBlCi0gICBhbmQgcmV0dXJuIGEgUHl0aG9uIHN0cmluZyBvYmplY3QuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5Ci0gICB0aGUgY29kZWMuCi0KLQogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQogCiAgICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB1c2luZyBSYXctVW5pY29kZS1Fc2NhcGUgYW5kIHJldHVybiB0aGUgcmVzdWx0IGFzCkBAIC04MTgsNiArMTI5NSwxOCBAQAogICAgd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCiAKIAorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlUmF3VW5pY29kZUVzY2FwZShjb25zdCBQeV9VTklDT0RFICpzLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycykKKworICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiB1c2luZyBSYXctVW5pY29kZS1Fc2NhcGUKKyAgIGFuZCByZXR1cm4gYSBQeXRob24gc3RyaW5nIG9iamVjdC4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkKKyAgIHRoZSBjb2RlYy4KKworICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIDpjOnR5cGU6YFB5X1VOSUNPREVgIEFQSTsgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmdgLgorCisKIExhdGluLTEgQ29kZWNzCiAiIiIiIiIiIiIiIiIiIgogCkBAIC04MzEsMTggKzEzMjAsMjIgQEAKICAgICpzKi4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorCisgICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB1c2luZyBMYXRpbi0xIGFuZCByZXR1cm4gdGhlIHJlc3VsdCBhcyBQeXRob24gYnl0ZXMKKyAgIG9iamVjdC4gIEVycm9yIGhhbmRsaW5nIGlzICJzdHJpY3QiLiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzCisgICByYWlzZWQgYnkgdGhlIGNvZGVjLgorCisKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZUxhdGluMShjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycykKIAogICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiB1c2luZyBMYXRpbi0xIGFuZAogICAgcmV0dXJuIGEgUHl0aG9uIGJ5dGVzIG9iamVjdC4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkKICAgIHRoZSBjb2RlYy4KIAotCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc0xhdGluMVN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKLQotICAgRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgdXNpbmcgTGF0aW4tMSBhbmQgcmV0dXJuIHRoZSByZXN1bHQgYXMgUHl0aG9uIGJ5dGVzCi0gICBvYmplY3QuICBFcnJvciBoYW5kbGluZyBpcyAic3RyaWN0Ii4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcwotICAgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBBUEk7IHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNMYXRpbjFTdHJpbmdgLgogCiAKIEFTQ0lJIENvZGVjcwpAQCAtODU4LDE4ICsxMzUxLDIyIEBACiAgICAqcyouICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KIAogCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorCisgICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB1c2luZyBBU0NJSSBhbmQgcmV0dXJuIHRoZSByZXN1bHQgYXMgUHl0aG9uIGJ5dGVzCisgICBvYmplY3QuICBFcnJvciBoYW5kbGluZyBpcyAic3RyaWN0Ii4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcworICAgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KKworCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVBU0NJSShjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycykKIAogICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiB1c2luZyBBU0NJSSBhbmQKICAgIHJldHVybiBhIFB5dGhvbiBieXRlcyBvYmplY3QuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5CiAgICB0aGUgY29kZWMuCiAKLQotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfQXNBU0NJSVN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKLQotICAgRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgdXNpbmcgQVNDSUkgYW5kIHJldHVybiB0aGUgcmVzdWx0IGFzIFB5dGhvbiBieXRlcwotICAgb2JqZWN0LiAgRXJyb3IgaGFuZGxpbmcgaXMgInN0cmljdCIuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMKLSAgIHJhaXNlZCBieSB0aGUgY29kZWMuCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgQVBJOyBwbGVhc2UgbWlncmF0ZSB0byB1c2luZworICAgICAgOmM6ZnVuYzpgUHlVbmljb2RlX0FzQVNDSUlTdHJpbmdgLgogCiAKIENoYXJhY3RlciBNYXAgQ29kZWNzCkBAIC04OTgsNyArMTM5NSw4IEBACiAKIFRoZXNlIGFyZSB0aGUgbWFwcGluZyBjb2RlYyBBUElzOgogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVDaGFybWFwKGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgUHlPYmplY3QgKm1hcHBpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZUNoYXJtYXAoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqbWFwcGluZywgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBDcmVhdGUgYSBVbmljb2RlIG9iamVjdCBieSBkZWNvZGluZyAqc2l6ZSogYnl0ZXMgb2YgdGhlIGVuY29kZWQgc3RyaW5nICpzKiB1c2luZwogICAgdGhlIGdpdmVuICptYXBwaW5nKiBvYmplY3QuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZQpAQCAtOTA4LDEzICsxNDA2LDYgQEAKICAgIHRyZWF0ZWQgYXMgInVuZGVmaW5lZCBtYXBwaW5nIi4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVDaGFybWFwKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgUHlPYmplY3QgKm1hcHBpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKLQotICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiB1c2luZyB0aGUgZ2l2ZW4KLSAgICptYXBwaW5nKiBvYmplY3QgYW5kIHJldHVybiBhIFB5dGhvbiBzdHJpbmcgb2JqZWN0LiBSZXR1cm4gKk5VTEwqIGlmIGFuCi0gICBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCi0KLQogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfQXNDaGFybWFwU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlLCBQeU9iamVjdCAqbWFwcGluZykKIAogICAgRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgdXNpbmcgdGhlIGdpdmVuICptYXBwaW5nKiBvYmplY3QgYW5kIHJldHVybiB0aGUgcmVzdWx0CkBAIC05MjQsNyArMTQxNSw4IEBACiBUaGUgZm9sbG93aW5nIGNvZGVjIEFQSSBpcyBzcGVjaWFsIGluIHRoYXQgbWFwcyBVbmljb2RlIHRvIFVuaWNvZGUuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIFB5T2JqZWN0ICp0YWJsZSwgY29uc3QgY2hhciAqZXJyb3JzKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp0YWJsZSwgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBUcmFuc2xhdGUgYSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiBieSBhcHBseWluZyBhCiAgICBjaGFyYWN0ZXIgbWFwcGluZyAqdGFibGUqIHRvIGl0IGFuZCByZXR1cm4gdGhlIHJlc3VsdGluZyBVbmljb2RlIG9iamVjdC4gIFJldHVybgpAQCAtOTM3LDYgKzE0MjksMjIgQEAKICAgIGFuZCBzZXF1ZW5jZXMgd29yayB3ZWxsLiAgVW5tYXBwZWQgY2hhcmFjdGVyIG9yZGluYWxzIChvbmVzIHdoaWNoIGNhdXNlIGEKICAgIDpleGM6YExvb2t1cEVycm9yYCkgYXJlIGxlZnQgdW50b3VjaGVkIGFuZCBhcmUgY29waWVkIGFzLWlzLgogCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgQVBJLgorCisgICAuLiBYWFggcmVwbGFjZSB3aXRoIHdoYXQ/CisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlQ2hhcm1hcChjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLCBjb25zdCBjaGFyICplcnJvcnMpCisKKyAgIEVuY29kZSB0aGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyIG9mIHRoZSBnaXZlbiAqc2l6ZSogdXNpbmcgdGhlIGdpdmVuCisgICAqbWFwcGluZyogb2JqZWN0IGFuZCByZXR1cm4gYSBQeXRob24gc3RyaW5nIG9iamVjdC4gUmV0dXJuICpOVUxMKiBpZiBhbgorICAgZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgorCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgQVBJOyBwbGVhc2UgbWlncmF0ZSB0byB1c2luZworICAgICAgOmM6ZnVuYzpgUHlVbmljb2RlX0FzQ2hhcm1hcFN0cmluZ2AuCiAKIAogTUJDUyBjb2RlY3MgZm9yIFdpbmRvd3MKQEAgLTk1Myw3ICsxNDYxLDggQEAKICAgIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZU1CQ1NTdGF0ZWZ1bChjb25zdCBjaGFyICpzLCBpbnQgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzLCBpbnQgKmNvbnN1bWVkKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlTUJDU1N0YXRlZnVsKGNvbnN0IGNoYXIgKnMsIGludCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIGludCAqY29uc3VtZWQpCiAKICAgIElmICpjb25zdW1lZCogaXMgKk5VTEwqLCBiZWhhdmUgbGlrZSA6YzpmdW5jOmBQeVVuaWNvZGVfRGVjb2RlTUJDU2AuIElmCiAgICAqY29uc3VtZWQqIGlzIG5vdCAqTlVMTCosIDpjOmZ1bmM6YFB5VW5pY29kZV9EZWNvZGVNQkNTU3RhdGVmdWxgIHdpbGwgbm90IGRlY29kZQpAQCAtOTYxLDE4ICsxNDcwLDMxIEBACiAgICBpbiAqY29uc3VtZWQqLgogCiAKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzTUJDU1N0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKKworICAgRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgdXNpbmcgTUJDUyBhbmQgcmV0dXJuIHRoZSByZXN1bHQgYXMgUHl0aG9uIGJ5dGVzCisgICBvYmplY3QuICBFcnJvciBoYW5kbGluZyBpcyAic3RyaWN0Ii4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcworICAgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVDb2RlUGFnZShpbnQgY29kZV9wYWdlLCBQeU9iamVjdCAqdW5pY29kZSwgY29uc3QgY2hhciAqZXJyb3JzKQorCisgICBFbmNvZGUgdGhlIFVuaWNvZGUgb2JqZWN0IHVzaW5nIHRoZSBzcGVjaWZpZWQgY29kZSBwYWdlIGFuZCByZXR1cm4gYSBQeXRob24KKyAgIGJ5dGVzIG9iamVjdC4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLiBVc2UKKyAgIDpjOmRhdGE6YENQX0FDUGAgY29kZSBwYWdlIHRvIGdldCB0aGUgTUJDUyBlbmNvZGVyLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVNQkNTKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBFbmNvZGUgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gKnNpemUqIHVzaW5nIE1CQ1MgYW5kIHJldHVybgogICAgYSBQeXRob24gYnl0ZXMgb2JqZWN0LiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUKICAgIGNvZGVjLgogCi0KLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzTUJDU1N0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKLQotICAgRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgdXNpbmcgTUJDUyBhbmQgcmV0dXJuIHRoZSByZXN1bHQgYXMgUHl0aG9uIGJ5dGVzCi0gICBvYmplY3QuICBFcnJvciBoYW5kbGluZyBpcyAic3RyaWN0Ii4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcwotICAgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBBUEk7IHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNNQkNTU3RyaW5nYCBvciA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlQ29kZVBhZ2VgLgogCiAKIE1ldGhvZHMgJiBTbG90cwpAQCAtMTAxMSw3ICsxNTMzLDggQEAKICAgIGNoYXJhY3RlcnMgYXJlIG5vdCBpbmNsdWRlZCBpbiB0aGUgcmVzdWx0aW5nIHN0cmluZ3MuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfVHJhbnNsYXRlKFB5T2JqZWN0ICpzdHIsIFB5T2JqZWN0ICp0YWJsZSwgY29uc3QgY2hhciAqZXJyb3JzKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfVHJhbnNsYXRlKFB5T2JqZWN0ICpzdHIsIFB5T2JqZWN0ICp0YWJsZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBUcmFuc2xhdGUgYSBzdHJpbmcgYnkgYXBwbHlpbmcgYSBjaGFyYWN0ZXIgbWFwcGluZyB0YWJsZSB0byBpdCBhbmQgcmV0dXJuIHRoZQogICAgcmVzdWx0aW5nIFVuaWNvZGUgb2JqZWN0LgpAQCAtMTAzMywxNCArMTU1NiwxNiBAQAogICAgVW5pY29kZSBzdHJpbmcuCiAKIAotLi4gYzpmdW5jdGlvbjo6IGludCBQeVVuaWNvZGVfVGFpbG1hdGNoKFB5T2JqZWN0ICpzdHIsIFB5T2JqZWN0ICpzdWJzdHIsIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kLCBpbnQgZGlyZWN0aW9uKQorLi4gYzpmdW5jdGlvbjo6IGludCBQeVVuaWNvZGVfVGFpbG1hdGNoKFB5T2JqZWN0ICpzdHIsIFB5T2JqZWN0ICpzdWJzdHIsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kLCBpbnQgZGlyZWN0aW9uKQogCiAgICBSZXR1cm4gMSBpZiAqc3Vic3RyKiBtYXRjaGVzIGBgc3RyW3N0YXJ0OmVuZF1gYCBhdCB0aGUgZ2l2ZW4gdGFpbCBlbmQKICAgICgqZGlyZWN0aW9uKiA9PSAtMSBtZWFucyB0byBkbyBhIHByZWZpeCBtYXRjaCwgKmRpcmVjdGlvbiogPT0gMSBhIHN1ZmZpeCBtYXRjaCksCiAgICAwIG90aGVyd2lzZS4gUmV0dXJuIGBgLTFgYCBpZiBhbiBlcnJvciBvY2N1cnJlZC4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfRmluZChQeU9iamVjdCAqc3RyLCBQeU9iamVjdCAqc3Vic3RyLCBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCwgaW50IGRpcmVjdGlvbikKKy4uIGM6ZnVuY3Rpb246OiBQeV9zc2l6ZV90IFB5VW5pY29kZV9GaW5kKFB5T2JqZWN0ICpzdHIsIFB5T2JqZWN0ICpzdWJzdHIsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCwgaW50IGRpcmVjdGlvbikKIAogICAgUmV0dXJuIHRoZSBmaXJzdCBwb3NpdGlvbiBvZiAqc3Vic3RyKiBpbiBgYHN0cltzdGFydDplbmRdYGAgdXNpbmcgdGhlIGdpdmVuCiAgICAqZGlyZWN0aW9uKiAoKmRpcmVjdGlvbiogPT0gMSBtZWFucyB0byBkbyBhIGZvcndhcmQgc2VhcmNoLCAqZGlyZWN0aW9uKiA9PSAtMSBhCkBAIC0xMDQ5LDEzICsxNTc0LDI3IEBACiAgICBvY2N1cnJlZCBhbmQgYW4gZXhjZXB0aW9uIGhhcyBiZWVuIHNldC4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfQ291bnQoUHlPYmplY3QgKnN0ciwgUHlPYmplY3QgKnN1YnN0ciwgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQpCisuLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfRmluZENoYXIoUHlPYmplY3QgKnN0ciwgUHlfVUNTNCBjaCwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kLCBpbnQgZGlyZWN0aW9uKQorCisgICBSZXR1cm4gdGhlIGZpcnN0IHBvc2l0aW9uIG9mIHRoZSBjaGFyYWN0ZXIgKmNoKiBpbiBgYHN0cltzdGFydDplbmRdYGAgdXNpbmcKKyAgIHRoZSBnaXZlbiAqZGlyZWN0aW9uKiAoKmRpcmVjdGlvbiogPT0gMSBtZWFucyB0byBkbyBhIGZvcndhcmQgc2VhcmNoLAorICAgKmRpcmVjdGlvbiogPT0gLTEgYSBiYWNrd2FyZCBzZWFyY2gpLiAgVGhlIHJldHVybiB2YWx1ZSBpcyB0aGUgaW5kZXggb2YgdGhlCisgICBmaXJzdCBtYXRjaDsgYSB2YWx1ZSBvZiBgYC0xYGAgaW5kaWNhdGVzIHRoYXQgbm8gbWF0Y2ggd2FzIGZvdW5kLCBhbmQgYGAtMmBgCisgICBpbmRpY2F0ZXMgdGhhdCBhbiBlcnJvciBvY2N1cnJlZCBhbmQgYW4gZXhjZXB0aW9uIGhhcyBiZWVuIHNldC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X3NzaXplX3QgUHlVbmljb2RlX0NvdW50KFB5T2JqZWN0ICpzdHIsIFB5T2JqZWN0ICpzdWJzdHIsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKIAogICAgUmV0dXJuIHRoZSBudW1iZXIgb2Ygbm9uLW92ZXJsYXBwaW5nIG9jY3VycmVuY2VzIG9mICpzdWJzdHIqIGluCiAgICBgYHN0cltzdGFydDplbmRdYGAuICBSZXR1cm4gYGAtMWBgIGlmIGFuIGVycm9yIG9jY3VycmVkLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX1JlcGxhY2UoUHlPYmplY3QgKnN0ciwgUHlPYmplY3QgKnN1YnN0ciwgUHlPYmplY3QgKnJlcGxzdHIsIFB5X3NzaXplX3QgbWF4Y291bnQpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9SZXBsYWNlKFB5T2JqZWN0ICpzdHIsIFB5T2JqZWN0ICpzdWJzdHIsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpyZXBsc3RyLCBQeV9zc2l6ZV90IG1heGNvdW50KQogCiAgICBSZXBsYWNlIGF0IG1vc3QgKm1heGNvdW50KiBvY2N1cnJlbmNlcyBvZiAqc3Vic3RyKiBpbiAqc3RyKiB3aXRoICpyZXBsc3RyKiBhbmQKICAgIHJldHVybiB0aGUgcmVzdWx0aW5nIFVuaWNvZGUgb2JqZWN0LiAqbWF4Y291bnQqID09IC0xIG1lYW5zIHJlcGxhY2UgYWxsCkBAIC0xMTAzLDggKzE2NDIsOCBAQAogICAgQ2hlY2sgd2hldGhlciAqZWxlbWVudCogaXMgY29udGFpbmVkIGluICpjb250YWluZXIqIGFuZCByZXR1cm4gdHJ1ZSBvciBmYWxzZQogICAgYWNjb3JkaW5nbHkuCiAKLSAgICplbGVtZW50KiBoYXMgdG8gY29lcmNlIHRvIGEgb25lIGVsZW1lbnQgVW5pY29kZSBzdHJpbmcuIGBgLTFgYCBpcyByZXR1cm5lZCBpZgotICAgdGhlcmUgd2FzIGFuIGVycm9yLgorICAgKmVsZW1lbnQqIGhhcyB0byBjb2VyY2UgdG8gYSBvbmUgZWxlbWVudCBVbmljb2RlIHN0cmluZy4gYGAtMWBgIGlzIHJldHVybmVkCisgICBpZiB0aGVyZSB3YXMgYW4gZXJyb3IuCiAKIAogLi4gYzpmdW5jdGlvbjo6IHZvaWQgUHlVbmljb2RlX0ludGVybkluUGxhY2UoUHlPYmplY3QgKipzdHJpbmcpCkBAIC0xMTIzLDcgKzE2NjIsNiBAQAogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZyhjb25zdCBjaGFyICp2KQogCiAgICBBIGNvbWJpbmF0aW9uIG9mIDpjOmZ1bmM6YFB5VW5pY29kZV9Gcm9tU3RyaW5nYCBhbmQKLSAgIDpjOmZ1bmM6YFB5VW5pY29kZV9JbnRlcm5JblBsYWNlYCwgcmV0dXJuaW5nIGVpdGhlciBhIG5ldyB1bmljb2RlIHN0cmluZyBvYmplY3QKLSAgIHRoYXQgaGFzIGJlZW4gaW50ZXJuZWQsIG9yIGEgbmV3ICgib3duZWQiKSByZWZlcmVuY2UgdG8gYW4gZWFybGllciBpbnRlcm5lZAotICAgc3RyaW5nIG9iamVjdCB3aXRoIHRoZSBzYW1lIHZhbHVlLgotCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfSW50ZXJuSW5QbGFjZWAsIHJldHVybmluZyBlaXRoZXIgYSBuZXcgdW5pY29kZSBzdHJpbmcKKyAgIG9iamVjdCB0aGF0IGhhcyBiZWVuIGludGVybmVkLCBvciBhIG5ldyAoIm93bmVkIikgcmVmZXJlbmNlIHRvIGFuIGVhcmxpZXIKKyAgIGludGVybmVkIHN0cmluZyBvYmplY3Qgd2l0aCB0aGUgc2FtZSB2YWx1ZS4KZGlmZiAtLWdpdCBhL0RvYy9jb250ZW50cy5yc3QgYi9Eb2MvY29udGVudHMucnN0CmluZGV4IGMwYzZhZjMuLmNjNWM4ZTMgMTAwNjQ0Ci0tLSBhL0RvYy9jb250ZW50cy5yc3QKKysrIGIvRG9jL2NvbnRlbnRzLnJzdApAQCAtMTEsNyArMTEsNyBAQAogICAgbGlicmFyeS9pbmRleC5yc3QKICAgIGV4dGVuZGluZy9pbmRleC5yc3QKICAgIGMtYXBpL2luZGV4LnJzdAotICAgZGlzdHV0aWxzL2luZGV4LnJzdAorICAgcGFja2FnaW5nL2luZGV4LnJzdAogICAgaW5zdGFsbC9pbmRleC5yc3QKICAgIGhvd3RvL2luZGV4LnJzdAogICAgZmFxL2luZGV4LnJzdApkaWZmIC0tZ2l0IGEvRG9jL2RhdGEvcmVmY291bnRzLmRhdCBiL0RvYy9kYXRhL3JlZmNvdW50cy5kYXQKaW5kZXggYzdkN2JkMS4uYTEwMDRhZCAxMDA2NDQKLS0tIGEvRG9jL2RhdGEvcmVmY291bnRzLmRhdAorKysgYi9Eb2MvZGF0YS9yZWZjb3VudHMuZGF0CkBAIC00NjUsNiArNDY1LDExIEBACiBQeUZ1bmN0aW9uX05ldzpQeU9iamVjdCo6Y29kZTorMToKIFB5RnVuY3Rpb25fTmV3OlB5T2JqZWN0KjpnbG9iYWxzOisxOgogCitQeUZ1bmN0aW9uX05ld1dpdGhRdWFsTmFtZTpQeU9iamVjdCo6OisxOgorUHlGdW5jdGlvbl9OZXdXaXRoUXVhbE5hbWU6UHlPYmplY3QqOmNvZGU6KzE6CitQeUZ1bmN0aW9uX05ld1dpdGhRdWFsTmFtZTpQeU9iamVjdCo6Z2xvYmFsczorMToKK1B5RnVuY3Rpb25fTmV3V2l0aFF1YWxOYW1lOlB5T2JqZWN0KjpxdWFsbmFtZTorMToKKwogUHlGdW5jdGlvbl9TZXRDbG9zdXJlOmludDo6OgogUHlGdW5jdGlvbl9TZXRDbG9zdXJlOlB5T2JqZWN0KjpvcDowOgogUHlGdW5jdGlvbl9TZXRDbG9zdXJlOlB5T2JqZWN0KjpjbG9zdXJlOisxOgpkaWZmIC0tZ2l0IGEvRG9jL2Rpc3R1dGlscy9hcGlyZWYucnN0IGIvRG9jL2Rpc3R1dGlscy9hcGlyZWYucnN0CmluZGV4IGUxNWRjNzYuLjcxNzAyZTUgMTAwNjQ0Ci0tLSBhL0RvYy9kaXN0dXRpbHMvYXBpcmVmLnJzdAorKysgYi9Eb2MvZGlzdHV0aWxzL2FwaXJlZi5yc3QKQEAgLTE2MCw3ICsxNjAsNyBAQAogLi4gY2xhc3M6OiBFeHRlbnNpb24KIAogICAgVGhlIEV4dGVuc2lvbiBjbGFzcyBkZXNjcmliZXMgYSBzaW5nbGUgQyBvciBDKytleHRlbnNpb24gbW9kdWxlIGluIGEgc2V0dXAKLSAgIHNjcmlwdC4gSXQgYWNjZXB0cyB0aGUgZm9sbG93aW5nIGtleXdvcmQgYXJndW1lbnRzIGluIGl0cyBjb25zdHJ1Y3RvcgorICAgc2NyaXB0LiBJdCBhY2NlcHRzIHRoZSBmb2xsb3dpbmcga2V5d29yZCBhcmd1bWVudHMgaW4gaXRzIGNvbnN0cnVjdG9yOgogCiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKICAgIHwgYXJndW1lbnQgbmFtZSAgICAgICAgICB8IHZhbHVlICAgICAgICAgICAgICAgICAgICAgICAgICB8IHR5cGUgICAgICAgICAgICAgICAgICAgICAgfApAQCAtMTE1NywxMiArMTE1NywxMSBAQAogCiAuLiBmdW5jdGlvbjo6IGdyb2tfZW52aXJvbm1lbnRfZXJyb3IoZXhjWywgcHJlZml4PSdlcnJvcjogJ10pCiAKLSAgIEdlbmVyYXRlIGEgdXNlZnVsIGVycm9yIG1lc3NhZ2UgZnJvbSBhbiA6ZXhjOmBFbnZpcm9ubWVudEVycm9yYCAgKDpleGM6YElPRXJyb3JgCi0gICBvciA6ZXhjOmBPU0Vycm9yYCkgZXhjZXB0aW9uIG9iamVjdC4gICBIYW5kbGVzIFB5dGhvbiAxLjUuMSBhbmQgbGF0ZXIgc3R5bGVzLAotICAgYW5kIGRvZXMgd2hhdCBpdCBjYW4gdG8gZGVhbCB3aXRoICBleGNlcHRpb24gb2JqZWN0cyB0aGF0IGRvbid0IGhhdmUgYSBmaWxlbmFtZQotICAgKHdoaWNoIGhhcHBlbnMgd2hlbiB0aGUgZXJyb3IgIGlzIGR1ZSB0byBhIHR3by1maWxlIG9wZXJhdGlvbiwgc3VjaCBhcwotICAgOmZ1bmM6YHJlbmFtZWAgb3IgIDpmdW5jOmBsaW5rYCkuICBSZXR1cm5zIHRoZSBlcnJvciBtZXNzYWdlIGFzIGEgc3RyaW5nCi0gICBwcmVmaXhlZCAgd2l0aCAqcHJlZml4Ki4KKyAgIEdlbmVyYXRlIGEgdXNlZnVsIGVycm9yIG1lc3NhZ2UgZnJvbSBhbiA6ZXhjOmBPU0Vycm9yYCBleGNlcHRpb24gb2JqZWN0LgorICAgSGFuZGxlcyBQeXRob24gMS41LjEgYW5kIGxhdGVyIHN0eWxlcywgYW5kIGRvZXMgd2hhdCBpdCBjYW4gdG8gZGVhbCB3aXRoCisgICBleGNlcHRpb24gb2JqZWN0cyB0aGF0IGRvbid0IGhhdmUgYSBmaWxlbmFtZSAod2hpY2ggaGFwcGVucyB3aGVuIHRoZSBlcnJvcgorICAgaXMgZHVlIHRvIGEgdHdvLWZpbGUgb3BlcmF0aW9uLCBzdWNoIGFzIDpmdW5jOmByZW5hbWVgIG9yIDpmdW5jOmBsaW5rYCkuCisgICBSZXR1cm5zIHRoZSBlcnJvciBtZXNzYWdlIGFzIGEgc3RyaW5nIHByZWZpeGVkIHdpdGggKnByZWZpeCouCiAKIAogLi4gZnVuY3Rpb246OiBzcGxpdF9xdW90ZWQocykKZGlmZiAtLWdpdCBhL0RvYy9kaXN0dXRpbHMvaW5kZXgucnN0IGIvRG9jL2Rpc3R1dGlscy9pbmRleC5yc3QKaW5kZXggYWNlODI4MC4uYzhkZDlmNCAxMDA2NDQKLS0tIGEvRG9jL2Rpc3R1dGlscy9pbmRleC5yc3QKKysrIGIvRG9jL2Rpc3R1dGlscy9pbmRleC5yc3QKQEAgLTE0LDkgKzE0LDEyIEBACiBtYWtlIFB5dGhvbiBtb2R1bGVzIGFuZCBleHRlbnNpb25zIGVhc2lseSBhdmFpbGFibGUgdG8gYSB3aWRlciBhdWRpZW5jZSB3aXRoCiB2ZXJ5IGxpdHRsZSBvdmVyaGVhZCBmb3IgYnVpbGQvcmVsZWFzZS9pbnN0YWxsIG1lY2hhbmljcy4KIAorLi4gZGVwcmVjYXRlZDo6IDMuMworICAgOm1vZDpgcGFja2FnaW5nYCByZXBsYWNlcyBEaXN0dXRpbHMuICBTZWUgOnJlZjpgcGFja2FnaW5nLWluZGV4YCBhbmQKKyAgIDpyZWY6YHBhY2thZ2luZy1pbnN0YWxsLWluZGV4YC4KKwogLi4gdG9jdHJlZTo6CiAgICA6bWF4ZGVwdGg6IDIKLSAgIDpudW1iZXJlZDoKIAogICAgaW50cm9kdWN0aW9uLnJzdAogICAgc2V0dXBzY3JpcHQucnN0CkBAIC0yOSwzICszMiwxMCBAQAogICAgZXh0ZW5kaW5nLnJzdAogICAgY29tbWFuZHJlZi5yc3QKICAgIGFwaXJlZi5yc3QKKworQW5vdGhlciBkb2N1bWVudCBkZXNjcmliZXMgaG93IHRvIGluc3RhbGwgbW9kdWxlcyBhbmQgZXh0ZW5zaW9ucyBwYWNrYWdlZAorZm9sbG93aW5nIHRoZSBhYm92ZSBndWlkZWxpbmVzOgorCisuLiB0b2N0cmVlOjoKKworICAgaW5zdGFsbC5yc3QKZGlmZiAtLWdpdCBhL0RvYy9kaXN0dXRpbHMvaW5zdGFsbC5yc3QgYi9Eb2MvZGlzdHV0aWxzL2luc3RhbGwucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIyMGYxZmIKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvZGlzdHV0aWxzL2luc3RhbGwucnN0CkBAIC0wLDAgKzEsMTA4NiBAQAorLi4gaGlnaGxpZ2h0bGFuZzo6IG5vbmUKKworLi4gX2luc3RhbGwtaW5kZXg6CisKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgIEluc3RhbGxpbmcgUHl0aG9uIE1vZHVsZXMKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisKKzpBdXRob3I6IEdyZWcgV2FyZAorOlJlbGVhc2U6IHx2ZXJzaW9ufAorOkRhdGU6IHx0b2RheXwKKworLi4gVE9ETzogRmlsbCBpbiBYWFggY29tbWVudHMKKworLi4gVGhlIGF1ZGllbmNlIGZvciB0aGlzIGRvY3VtZW50IGluY2x1ZGVzIHBlb3BsZSB3aG8gZG9uJ3Qga25vdyBhbnl0aGluZworICAgYWJvdXQgUHl0aG9uIGFuZCBhcmVuJ3QgYWJvdXQgdG8gbGVhcm4gdGhlIGxhbmd1YWdlIGp1c3QgaW4gb3JkZXIgdG8KKyAgIGluc3RhbGwgYW5kIG1haW50YWluIGl0IGZvciB0aGVpciB1c2VycywgaS5lLiBzeXN0ZW0gYWRtaW5pc3RyYXRvcnMuCisgICBUaHVzLCBJIGhhdmUgdG8gYmUgc3VyZSB0byBleHBsYWluIHRoZSBiYXNpY3MgYXQgc29tZSBwb2ludDoKKyAgIHN5cy5wYXRoIGFuZCBQWVRIT05QQVRIIGF0IGxlYXN0LiAgU2hvdWxkIHByb2JhYmx5IGdpdmUgcG9pbnRlcnMgdG8KKyAgIG90aGVyIGRvY3Mgb24gImltcG9ydCBzaXRlIiwgUFlUSE9OU1RBUlRVUCwgUFlUSE9OSE9NRSwgZXRjLgorCisgICBGaW5hbGx5LCBpdCBtaWdodCBiZSB1c2VmdWwgdG8gaW5jbHVkZSBhbGwgdGhlIG1hdGVyaWFsIGZyb20gbXkgIkNhcmUKKyAgIGFuZCBGZWVkaW5nIG9mIGEgUHl0aG9uIEluc3RhbGxhdGlvbiIgdGFsayBpbiBoZXJlIHNvbWV3aGVyZS4gIFlvdyEKKworLi4gdG9waWM6OiBBYnN0cmFjdAorCisgICBUaGlzIGRvY3VtZW50IGRlc2NyaWJlcyB0aGUgUHl0aG9uIERpc3RyaWJ1dGlvbiBVdGlsaXRpZXMgKCJEaXN0dXRpbHMiKSBmcm9tIHRoZQorICAgZW5kLXVzZXIncyBwb2ludC1vZi12aWV3LCBkZXNjcmliaW5nIGhvdyB0byBleHRlbmQgdGhlIGNhcGFiaWxpdGllcyBvZiBhCisgICBzdGFuZGFyZCBQeXRob24gaW5zdGFsbGF0aW9uIGJ5IGJ1aWxkaW5nIGFuZCBpbnN0YWxsaW5nIHRoaXJkLXBhcnR5IFB5dGhvbgorICAgbW9kdWxlcyBhbmQgZXh0ZW5zaW9ucy4KKworCisuLiBfaW5zdC1pbnRybzoKKworSW50cm9kdWN0aW9uCis9PT09PT09PT09PT0KKworQWx0aG91Z2ggUHl0aG9uJ3MgZXh0ZW5zaXZlIHN0YW5kYXJkIGxpYnJhcnkgY292ZXJzIG1hbnkgcHJvZ3JhbW1pbmcgbmVlZHMsCit0aGVyZSBvZnRlbiBjb21lcyBhIHRpbWUgd2hlbiB5b3UgbmVlZCB0byBhZGQgc29tZSBuZXcgZnVuY3Rpb25hbGl0eSB0byB5b3VyCitQeXRob24gaW5zdGFsbGF0aW9uIGluIHRoZSBmb3JtIG9mIHRoaXJkLXBhcnR5IG1vZHVsZXMuICBUaGlzIG1pZ2h0IGJlIG5lY2Vzc2FyeQordG8gc3VwcG9ydCB5b3VyIG93biBwcm9ncmFtbWluZywgb3IgdG8gc3VwcG9ydCBhbiBhcHBsaWNhdGlvbiB0aGF0IHlvdSB3YW50IHRvCit1c2UgYW5kIHRoYXQgaGFwcGVucyB0byBiZSB3cml0dGVuIGluIFB5dGhvbi4KKworSW4gdGhlIHBhc3QsIHRoZXJlIGhhcyBiZWVuIGxpdHRsZSBzdXBwb3J0IGZvciBhZGRpbmcgdGhpcmQtcGFydHkgbW9kdWxlcyB0byBhbgorZXhpc3RpbmcgUHl0aG9uIGluc3RhbGxhdGlvbi4gIFdpdGggdGhlIGludHJvZHVjdGlvbiBvZiB0aGUgUHl0aG9uIERpc3RyaWJ1dGlvbgorVXRpbGl0aWVzIChEaXN0dXRpbHMgZm9yIHNob3J0KSBpbiBQeXRob24gMi4wLCB0aGlzIGNoYW5nZWQuCisKK1RoaXMgZG9jdW1lbnQgaXMgYWltZWQgcHJpbWFyaWx5IGF0IHRoZSBwZW9wbGUgd2hvIG5lZWQgdG8gaW5zdGFsbCB0aGlyZC1wYXJ0eQorUHl0aG9uIG1vZHVsZXM6IGVuZC11c2VycyBhbmQgc3lzdGVtIGFkbWluaXN0cmF0b3JzIHdobyBqdXN0IG5lZWQgdG8gZ2V0IHNvbWUKK1B5dGhvbiBhcHBsaWNhdGlvbiBydW5uaW5nLCBhbmQgZXhpc3RpbmcgUHl0aG9uIHByb2dyYW1tZXJzIHdobyB3YW50IHRvIGFkZCBzb21lCituZXcgZ29vZGllcyB0byB0aGVpciB0b29sYm94LiAgWW91IGRvbid0IG5lZWQgdG8ga25vdyBQeXRob24gdG8gcmVhZCB0aGlzCitkb2N1bWVudDsgdGhlcmUgd2lsbCBiZSBzb21lIGJyaWVmIGZvcmF5cyBpbnRvIHVzaW5nIFB5dGhvbidzIGludGVyYWN0aXZlIG1vZGUKK3RvIGV4cGxvcmUgeW91ciBpbnN0YWxsYXRpb24sIGJ1dCB0aGF0J3MgaXQuICBJZiB5b3UncmUgbG9va2luZyBmb3IgaW5mb3JtYXRpb24KK29uIGhvdyB0byBkaXN0cmlidXRlIHlvdXIgb3duIFB5dGhvbiBtb2R1bGVzIHNvIHRoYXQgb3RoZXJzIG1heSB1c2UgdGhlbSwgc2VlCit0aGUgOnJlZjpgZGlzdHV0aWxzLWluZGV4YCBtYW51YWwuCisKKworLi4gX2luc3QtdHJpdmlhbC1pbnN0YWxsOgorCitCZXN0IGNhc2U6IHRyaXZpYWwgaW5zdGFsbGF0aW9uCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0luIHRoZSBiZXN0IGNhc2UsIHNvbWVvbmUgd2lsbCBoYXZlIHByZXBhcmVkIGEgc3BlY2lhbCB2ZXJzaW9uIG9mIHRoZSBtb2R1bGUKK2Rpc3RyaWJ1dGlvbiB5b3Ugd2FudCB0byBpbnN0YWxsIHRoYXQgaXMgdGFyZ2V0ZWQgc3BlY2lmaWNhbGx5IGF0IHlvdXIgcGxhdGZvcm0KK2FuZCBpcyBpbnN0YWxsZWQganVzdCBsaWtlIGFueSBvdGhlciBzb2Z0d2FyZSBvbiB5b3VyIHBsYXRmb3JtLiAgRm9yIGV4YW1wbGUsCit0aGUgbW9kdWxlIGRldmVsb3BlciBtaWdodCBtYWtlIGFuIGV4ZWN1dGFibGUgaW5zdGFsbGVyIGF2YWlsYWJsZSBmb3IgV2luZG93cwordXNlcnMsIGFuIFJQTSBwYWNrYWdlIGZvciB1c2VycyBvZiBSUE0tYmFzZWQgTGludXggc3lzdGVtcyAoUmVkIEhhdCwgU3VTRSwKK01hbmRyYWtlLCBhbmQgbWFueSBvdGhlcnMpLCBhIERlYmlhbiBwYWNrYWdlIGZvciB1c2VycyBvZiBEZWJpYW4tYmFzZWQgTGludXgKK3N5c3RlbXMsIGFuZCBzbyBmb3J0aC4KKworSW4gdGhhdCBjYXNlLCB5b3Ugd291bGQgZG93bmxvYWQgdGhlIGluc3RhbGxlciBhcHByb3ByaWF0ZSB0byB5b3VyIHBsYXRmb3JtIGFuZAorZG8gdGhlIG9idmlvdXMgdGhpbmcgd2l0aCBpdDogcnVuIGl0IGlmIGl0J3MgYW4gZXhlY3V0YWJsZSBpbnN0YWxsZXIsIGBgcnBtCistLWluc3RhbGxgYCBpdCBpZiBpdCdzIGFuIFJQTSwgZXRjLiAgWW91IGRvbid0IG5lZWQgdG8gcnVuIFB5dGhvbiBvciBhIHNldHVwCitzY3JpcHQsIHlvdSBkb24ndCBuZWVkIHRvIGNvbXBpbGUgYW55dGhpbmctLS15b3UgbWlnaHQgbm90IGV2ZW4gbmVlZCB0byByZWFkIGFueQoraW5zdHJ1Y3Rpb25zIChhbHRob3VnaCBpdCdzIGFsd2F5cyBhIGdvb2QgaWRlYSB0byBkbyBzbyBhbnl3YXkpLgorCitPZiBjb3Vyc2UsIHRoaW5ncyB3aWxsIG5vdCBhbHdheXMgYmUgdGhhdCBlYXN5LiAgWW91IG1pZ2h0IGJlIGludGVyZXN0ZWQgaW4gYQorbW9kdWxlIGRpc3RyaWJ1dGlvbiB0aGF0IGRvZXNuJ3QgaGF2ZSBhbiBlYXN5LXRvLXVzZSBpbnN0YWxsZXIgZm9yIHlvdXIKK3BsYXRmb3JtLiAgSW4gdGhhdCBjYXNlLCB5b3UnbGwgaGF2ZSB0byBzdGFydCB3aXRoIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uCityZWxlYXNlZCBieSB0aGUgbW9kdWxlJ3MgYXV0aG9yL21haW50YWluZXIuICBJbnN0YWxsaW5nIGZyb20gYSBzb3VyY2UKK2Rpc3RyaWJ1dGlvbiBpcyBub3QgdG9vIGhhcmQsIGFzIGxvbmcgYXMgdGhlIG1vZHVsZXMgYXJlIHBhY2thZ2VkIGluIHRoZQorc3RhbmRhcmQgd2F5LiAgVGhlIGJ1bGsgb2YgdGhpcyBkb2N1bWVudCBpcyBhYm91dCBidWlsZGluZyBhbmQgaW5zdGFsbGluZworbW9kdWxlcyBmcm9tIHN0YW5kYXJkIHNvdXJjZSBkaXN0cmlidXRpb25zLgorCisKKy4uIF9pbnN0LW5ldy1zdGFuZGFyZDoKKworVGhlIG5ldyBzdGFuZGFyZDogRGlzdHV0aWxzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworSWYgeW91IGRvd25sb2FkIGEgbW9kdWxlIHNvdXJjZSBkaXN0cmlidXRpb24sIHlvdSBjYW4gdGVsbCBwcmV0dHkgcXVpY2tseSBpZiBpdAord2FzIHBhY2thZ2VkIGFuZCBkaXN0cmlidXRlZCBpbiB0aGUgc3RhbmRhcmQgd2F5LCBpLmUuIHVzaW5nIHRoZSBEaXN0dXRpbHMuCitGaXJzdCwgdGhlIGRpc3RyaWJ1dGlvbidzIG5hbWUgYW5kIHZlcnNpb24gbnVtYmVyIHdpbGwgYmUgZmVhdHVyZWQgcHJvbWluZW50bHkKK2luIHRoZSBuYW1lIG9mIHRoZSBkb3dubG9hZGVkIGFyY2hpdmUsIGUuZy4gOmZpbGU6YGZvby0xLjAudGFyLmd6YCBvcgorOmZpbGU6YHdpZGdldC0wLjkuNy56aXBgLiAgTmV4dCwgdGhlIGFyY2hpdmUgd2lsbCB1bnBhY2sgaW50byBhIHNpbWlsYXJseS1uYW1lZAorZGlyZWN0b3J5OiA6ZmlsZTpgZm9vLTEuMGAgb3IgOmZpbGU6YHdpZGdldC0wLjkuN2AuICBBZGRpdGlvbmFsbHksIHRoZQorZGlzdHJpYnV0aW9uIHdpbGwgY29udGFpbiBhIHNldHVwIHNjcmlwdCA6ZmlsZTpgc2V0dXAucHlgLCBhbmQgYSBmaWxlIG5hbWVkCis6ZmlsZTpgUkVBRE1FLnR4dGAgb3IgcG9zc2libHkganVzdCA6ZmlsZTpgUkVBRE1FYCwgd2hpY2ggc2hvdWxkIGV4cGxhaW4gdGhhdAorYnVpbGRpbmcgYW5kIGluc3RhbGxpbmcgdGhlIG1vZHVsZSBkaXN0cmlidXRpb24gaXMgYSBzaW1wbGUgbWF0dGVyIG9mIHJ1bm5pbmcKK29uZSBjb21tYW5kIGZyb20gYSB0ZXJtaW5hbDo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsCisKK0ZvciBXaW5kb3dzLCB0aGlzIGNvbW1hbmQgc2hvdWxkIGJlIHJ1biBmcm9tIGEgY29tbWFuZCBwcm9tcHQgd2luZG93CisoOm1lbnVzZWxlY3Rpb246YFN0YXJ0IC0tPiBBY2Nlc3Nvcmllc2ApOjoKKworICAgc2V0dXAucHkgaW5zdGFsbAorCitJZiBhbGwgdGhlc2UgdGhpbmdzIGFyZSB0cnVlLCB0aGVuIHlvdSBhbHJlYWR5IGtub3cgaG93IHRvIGJ1aWxkIGFuZCBpbnN0YWxsIHRoZQorbW9kdWxlcyB5b3UndmUganVzdCBkb3dubG9hZGVkOiAgUnVuIHRoZSBjb21tYW5kIGFib3ZlLiBVbmxlc3MgeW91IG5lZWQgdG8KK2luc3RhbGwgdGhpbmdzIGluIGEgbm9uLXN0YW5kYXJkIHdheSBvciBjdXN0b21pemUgdGhlIGJ1aWxkIHByb2Nlc3MsIHlvdSBkb24ndAorcmVhbGx5IG5lZWQgdGhpcyBtYW51YWwuICBPciByYXRoZXIsIHRoZSBhYm92ZSBjb21tYW5kIGlzIGV2ZXJ5dGhpbmcgeW91IG5lZWQgdG8KK2dldCBvdXQgb2YgdGhpcyBtYW51YWwuCisKKworLi4gX2luc3Qtc3RhbmRhcmQtaW5zdGFsbDoKKworU3RhbmRhcmQgQnVpbGQgYW5kIEluc3RhbGwKKz09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0FzIGRlc2NyaWJlZCBpbiBzZWN0aW9uIDpyZWY6YGluc3QtbmV3LXN0YW5kYXJkYCwgYnVpbGRpbmcgYW5kIGluc3RhbGxpbmcgYSBtb2R1bGUKK2Rpc3RyaWJ1dGlvbiB1c2luZyB0aGUgRGlzdHV0aWxzIGlzIHVzdWFsbHkgb25lIHNpbXBsZSBjb21tYW5kIHRvIHJ1biBmcm9tIGEKK3Rlcm1pbmFsOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwKKworCisuLiBfaW5zdC1wbGF0Zm9ybS12YXJpYXRpb25zOgorCitQbGF0Zm9ybSB2YXJpYXRpb25zCistLS0tLS0tLS0tLS0tLS0tLS0tCisKK1lvdSBzaG91bGQgYWx3YXlzIHJ1biB0aGUgc2V0dXAgY29tbWFuZCBmcm9tIHRoZSBkaXN0cmlidXRpb24gcm9vdCBkaXJlY3RvcnksCitpLmUuIHRoZSB0b3AtbGV2ZWwgc3ViZGlyZWN0b3J5IHRoYXQgdGhlIG1vZHVsZSBzb3VyY2UgZGlzdHJpYnV0aW9uIHVucGFja3MKK2ludG8uICBGb3IgZXhhbXBsZSwgaWYgeW91J3ZlIGp1c3QgZG93bmxvYWRlZCBhIG1vZHVsZSBzb3VyY2UgZGlzdHJpYnV0aW9uCis6ZmlsZTpgZm9vLTEuMC50YXIuZ3pgIG9udG8gYSBVbml4IHN5c3RlbSwgdGhlIG5vcm1hbCB0aGluZyB0byBkbyBpczo6CisKKyAgIGd1bnppcCAtYyBmb28tMS4wLnRhci5neiB8IHRhciB4ZiAtICAgICMgdW5wYWNrcyBpbnRvIGRpcmVjdG9yeSBmb28tMS4wCisgICBjZCBmb28tMS4wCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbAorCitPbiBXaW5kb3dzLCB5b3UnZCBwcm9iYWJseSBkb3dubG9hZCA6ZmlsZTpgZm9vLTEuMC56aXBgLiAgSWYgeW91IGRvd25sb2FkZWQgdGhlCithcmNoaXZlIGZpbGUgdG8gOmZpbGU6YEM6XFxUZW1wYCwgdGhlbiBpdCB3b3VsZCB1bnBhY2sgaW50bworOmZpbGU6YEM6XFxUZW1wXFxmb28tMS4wYDsgeW91IGNhbiB1c2UgZWl0aGVyIGEgYXJjaGl2ZSBtYW5pcHVsYXRvciB3aXRoIGEKK2dyYXBoaWNhbCB1c2VyIGludGVyZmFjZSAoc3VjaCBhcyBXaW5aaXApIG9yIGEgY29tbWFuZC1saW5lIHRvb2wgKHN1Y2ggYXMKKzpwcm9ncmFtOmB1bnppcGAgb3IgOnByb2dyYW06YHBrdW56aXBgKSB0byB1bnBhY2sgdGhlIGFyY2hpdmUuICBUaGVuLCBvcGVuIGEKK2NvbW1hbmQgcHJvbXB0IHdpbmRvdyBhbmQgcnVuOjoKKworICAgY2QgYzpcVGVtcFxmb28tMS4wCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbAorCisKKy4uIF9pbnN0LXNwbGl0dGluZy11cDoKKworU3BsaXR0aW5nIHRoZSBqb2IgdXAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1J1bm5pbmcgYGBzZXR1cC5weSBpbnN0YWxsYGAgYnVpbGRzIGFuZCBpbnN0YWxscyBhbGwgbW9kdWxlcyBpbiBvbmUgcnVuLiAgSWYgeW91CitwcmVmZXIgdG8gd29yayBpbmNyZW1lbnRhbGx5LS0tZXNwZWNpYWxseSB1c2VmdWwgaWYgeW91IHdhbnQgdG8gY3VzdG9taXplIHRoZQorYnVpbGQgcHJvY2Vzcywgb3IgaWYgdGhpbmdzIGFyZSBnb2luZyB3cm9uZy0tLXlvdSBjYW4gdXNlIHRoZSBzZXR1cCBzY3JpcHQgdG8gZG8KK29uZSB0aGluZyBhdCBhIHRpbWUuICBUaGlzIGlzIHBhcnRpY3VsYXJseSBoZWxwZnVsIHdoZW4gdGhlIGJ1aWxkIGFuZCBpbnN0YWxsCit3aWxsIGJlIGRvbmUgYnkgZGlmZmVyZW50IHVzZXJzLS0tZm9yIGV4YW1wbGUsIHlvdSBtaWdodCB3YW50IHRvIGJ1aWxkIGEgbW9kdWxlCitkaXN0cmlidXRpb24gYW5kIGhhbmQgaXQgb2ZmIHRvIGEgc3lzdGVtIGFkbWluaXN0cmF0b3IgZm9yIGluc3RhbGxhdGlvbiAob3IgZG8KK2l0IHlvdXJzZWxmLCB3aXRoIHN1cGVyLXVzZXIgcHJpdmlsZWdlcykuCisKK0ZvciBleGFtcGxlLCB5b3UgY2FuIGJ1aWxkIGV2ZXJ5dGhpbmcgaW4gb25lIHN0ZXAsIGFuZCB0aGVuIGluc3RhbGwgZXZlcnl0aGluZworaW4gYSBzZWNvbmQgc3RlcCwgYnkgaW52b2tpbmcgdGhlIHNldHVwIHNjcmlwdCB0d2ljZTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBidWlsZAorICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwKKworSWYgeW91IGRvIHRoaXMsIHlvdSB3aWxsIG5vdGljZSB0aGF0IHJ1bm5pbmcgdGhlIDpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kCitmaXJzdCBydW5zIHRoZSA6Y29tbWFuZDpgYnVpbGRgIGNvbW1hbmQsIHdoaWNoLS0taW4gdGhpcyBjYXNlLS0tcXVpY2tseSBub3RpY2VzCit0aGF0IGl0IGhhcyBub3RoaW5nIHRvIGRvLCBzaW5jZSBldmVyeXRoaW5nIGluIHRoZSA6ZmlsZTpgYnVpbGRgIGRpcmVjdG9yeSBpcwordXAtdG8tZGF0ZS4KKworWW91IG1heSBub3QgbmVlZCB0aGlzIGFiaWxpdHkgdG8gYnJlYWsgdGhpbmdzIGRvd24gb2Z0ZW4gaWYgYWxsIHlvdSBkbyBpcworaW5zdGFsbCBtb2R1bGVzIGRvd25sb2FkZWQgb2ZmIHRoZSAnbmV0LCBidXQgaXQncyB2ZXJ5IGhhbmR5IGZvciBtb3JlIGFkdmFuY2VkCit0YXNrcy4gIElmIHlvdSBnZXQgaW50byBkaXN0cmlidXRpbmcgeW91ciBvd24gUHl0aG9uIG1vZHVsZXMgYW5kIGV4dGVuc2lvbnMsCit5b3UnbGwgcnVuIGxvdHMgb2YgaW5kaXZpZHVhbCBEaXN0dXRpbHMgY29tbWFuZHMgb24gdGhlaXIgb3duLgorCisKKy4uIF9pbnN0LWhvdy1idWlsZC13b3JrczoKKworSG93IGJ1aWxkaW5nIHdvcmtzCistLS0tLS0tLS0tLS0tLS0tLS0KKworQXMgaW1wbGllZCBhYm92ZSwgdGhlIDpjb21tYW5kOmBidWlsZGAgY29tbWFuZCBpcyByZXNwb25zaWJsZSBmb3IgcHV0dGluZyB0aGUKK2ZpbGVzIHRvIGluc3RhbGwgaW50byBhICpidWlsZCBkaXJlY3RvcnkqLiAgQnkgZGVmYXVsdCwgdGhpcyBpcyA6ZmlsZTpgYnVpbGRgCit1bmRlciB0aGUgZGlzdHJpYnV0aW9uIHJvb3Q7IGlmIHlvdSdyZSBleGNlc3NpdmVseSBjb25jZXJuZWQgd2l0aCBzcGVlZCwgb3Igd2FudAordG8ga2VlcCB0aGUgc291cmNlIHRyZWUgcHJpc3RpbmUsIHlvdSBjYW4gY2hhbmdlIHRoZSBidWlsZCBkaXJlY3Rvcnkgd2l0aCB0aGUKKzpvcHRpb246YC0tYnVpbGQtYmFzZWAgb3B0aW9uLiBGb3IgZXhhbXBsZTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBidWlsZCAtLWJ1aWxkLWJhc2U9L3RtcC9weWJ1aWxkL2Zvby0xLjAKKworKE9yIHlvdSBjb3VsZCBkbyB0aGlzIHBlcm1hbmVudGx5IHdpdGggYSBkaXJlY3RpdmUgaW4geW91ciBzeXN0ZW0gb3IgcGVyc29uYWwKK0Rpc3R1dGlscyBjb25maWd1cmF0aW9uIGZpbGU7IHNlZSBzZWN0aW9uIDpyZWY6YGluc3QtY29uZmlnLWZpbGVzYC4pICBOb3JtYWxseSwgdGhpcworaXNuJ3QgbmVjZXNzYXJ5LgorCitUaGUgZGVmYXVsdCBsYXlvdXQgZm9yIHRoZSBidWlsZCB0cmVlIGlzIGFzIGZvbGxvd3M6OgorCisgICAtLS0gYnVpbGQvIC0tLSBsaWIvCisgICBvcgorICAgLS0tIGJ1aWxkLyAtLS0gbGliLjxwbGF0Pi8KKyAgICAgICAgICAgICAgICAgIHRlbXAuPHBsYXQ+LworCit3aGVyZSBgYDxwbGF0PmBgIGV4cGFuZHMgdG8gYSBicmllZiBkZXNjcmlwdGlvbiBvZiB0aGUgY3VycmVudCBPUy9oYXJkd2FyZQorcGxhdGZvcm0gYW5kIFB5dGhvbiB2ZXJzaW9uLiAgVGhlIGZpcnN0IGZvcm0sIHdpdGgganVzdCBhIDpmaWxlOmBsaWJgIGRpcmVjdG9yeSwKK2lzIHVzZWQgZm9yICJwdXJlIG1vZHVsZSBkaXN0cmlidXRpb25zIi0tLXRoYXQgaXMsIG1vZHVsZSBkaXN0cmlidXRpb25zIHRoYXQKK2luY2x1ZGUgb25seSBwdXJlIFB5dGhvbiBtb2R1bGVzLiAgSWYgYSBtb2R1bGUgZGlzdHJpYnV0aW9uIGNvbnRhaW5zIGFueQorZXh0ZW5zaW9ucyAobW9kdWxlcyB3cml0dGVuIGluIEMvQysrKSwgdGhlbiB0aGUgc2Vjb25kIGZvcm0sIHdpdGggdHdvIGBgPHBsYXQ+YGAKK2RpcmVjdG9yaWVzLCBpcyB1c2VkLiAgSW4gdGhhdCBjYXNlLCB0aGUgOmZpbGU6YHRlbXAue3BsYXR9YCBkaXJlY3RvcnkgaG9sZHMKK3RlbXBvcmFyeSBmaWxlcyBnZW5lcmF0ZWQgYnkgdGhlIGNvbXBpbGUvbGluayBwcm9jZXNzIHRoYXQgZG9uJ3QgYWN0dWFsbHkgZ2V0CitpbnN0YWxsZWQuICBJbiBlaXRoZXIgY2FzZSwgdGhlIDpmaWxlOmBsaWJgIChvciA6ZmlsZTpgbGliLntwbGF0fWApIGRpcmVjdG9yeQorY29udGFpbnMgYWxsIFB5dGhvbiBtb2R1bGVzIChwdXJlIFB5dGhvbiBhbmQgZXh0ZW5zaW9ucykgdGhhdCB3aWxsIGJlIGluc3RhbGxlZC4KKworSW4gdGhlIGZ1dHVyZSwgbW9yZSBkaXJlY3RvcmllcyB3aWxsIGJlIGFkZGVkIHRvIGhhbmRsZSBQeXRob24gc2NyaXB0cywKK2RvY3VtZW50YXRpb24sIGJpbmFyeSBleGVjdXRhYmxlcywgYW5kIHdoYXRldmVyIGVsc2UgaXMgbmVlZGVkIHRvIGhhbmRsZSB0aGUgam9iCitvZiBpbnN0YWxsaW5nIFB5dGhvbiBtb2R1bGVzIGFuZCBhcHBsaWNhdGlvbnMuCisKKworLi4gX2luc3QtaG93LWluc3RhbGwtd29ya3M6CisKK0hvdyBpbnN0YWxsYXRpb24gd29ya3MKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworQWZ0ZXIgdGhlIDpjb21tYW5kOmBidWlsZGAgY29tbWFuZCBydW5zICh3aGV0aGVyIHlvdSBydW4gaXQgZXhwbGljaXRseSwgb3IgdGhlCis6Y29tbWFuZDpgaW5zdGFsbGAgY29tbWFuZCBkb2VzIGl0IGZvciB5b3UpLCB0aGUgd29yayBvZiB0aGUgOmNvbW1hbmQ6YGluc3RhbGxgCitjb21tYW5kIGlzIHJlbGF0aXZlbHkgc2ltcGxlOiBhbGwgaXQgaGFzIHRvIGRvIGlzIGNvcHkgZXZlcnl0aGluZyB1bmRlcgorOmZpbGU6YGJ1aWxkL2xpYmAgKG9yIDpmaWxlOmBidWlsZC9saWIue3BsYXR9YCkgdG8geW91ciBjaG9zZW4gaW5zdGFsbGF0aW9uCitkaXJlY3RvcnkuCisKK0lmIHlvdSBkb24ndCBjaG9vc2UgYW4gaW5zdGFsbGF0aW9uIGRpcmVjdG9yeS0tLWkuZS4sIGlmIHlvdSBqdXN0IHJ1biBgYHNldHVwLnB5CitpbnN0YWxsYGBcIC0tLXRoZW4gdGhlIDpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kIGluc3RhbGxzIHRvIHRoZSBzdGFuZGFyZAorbG9jYXRpb24gZm9yIHRoaXJkLXBhcnR5IFB5dGhvbiBtb2R1bGVzLiAgVGhpcyBsb2NhdGlvbiB2YXJpZXMgYnkgcGxhdGZvcm0gYW5kCitieSBob3cgeW91IGJ1aWx0L2luc3RhbGxlZCBQeXRob24gaXRzZWxmLiAgT24gVW5peCAoYW5kIE1hYyBPUyBYLCB3aGljaCBpcyBhbHNvCitVbml4LWJhc2VkKSwgaXQgYWxzbyBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIG1vZHVsZSBkaXN0cmlidXRpb24gYmVpbmcgaW5zdGFsbGVkCitpcyBwdXJlIFB5dGhvbiBvciBjb250YWlucyBleHRlbnNpb25zICgibm9uLXB1cmUiKToKKworKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IFBsYXRmb3JtICAgICAgICB8IFN0YW5kYXJkIGluc3RhbGxhdGlvbiBsb2NhdGlvbiAgICAgICAgICAgICAgICAgICAgICB8IERlZmF1bHQgdmFsdWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzIHwKKys9PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09KworfCBVbml4IChwdXJlKSAgICAgfCA6ZmlsZTpge3ByZWZpeH0vbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgICAgICAgfCA6ZmlsZTpgL3Vzci9sb2NhbC9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgfCBcKDEpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgVW5peCAobm9uLXB1cmUpIHwgOmZpbGU6YHtleGVjLXByZWZpeH0vbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgIHwgOmZpbGU6YC91c3IvbG9jYWwvbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgIHwgXCgxKSAgfAorKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IFdpbmRvd3MgICAgICAgICB8IDpmaWxlOmB7cHJlZml4fVxcTGliXFxzaXRlLXBhY2thZ2VzYCAgICAgICAgICAgICAgICB8IDpmaWxlOmBDOlxcUHl0aG9ue1hZfVxcTGliXFxzaXRlLXBhY2thZ2VzYCAgICAgICB8IFwoMikgIHwKKystLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworCitOb3RlczoKKworKDEpCisgICBNb3N0IExpbnV4IGRpc3RyaWJ1dGlvbnMgaW5jbHVkZSBQeXRob24gYXMgYSBzdGFuZGFyZCBwYXJ0IG9mIHRoZSBzeXN0ZW0sIHNvCisgICA6ZmlsZTpge3ByZWZpeH1gIGFuZCA6ZmlsZTpge2V4ZWMtcHJlZml4fWAgYXJlIHVzdWFsbHkgYm90aCA6ZmlsZTpgL3VzcmAgb24KKyAgIExpbnV4LiAgSWYgeW91IGJ1aWxkIFB5dGhvbiB5b3Vyc2VsZiBvbiBMaW51eCAob3IgYW55IFVuaXgtbGlrZSBzeXN0ZW0pLCB0aGUKKyAgIGRlZmF1bHQgOmZpbGU6YHtwcmVmaXh9YCBhbmQgOmZpbGU6YHtleGVjLXByZWZpeH1gIGFyZSA6ZmlsZTpgL3Vzci9sb2NhbGAuCisKKygyKQorICAgVGhlIGRlZmF1bHQgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBvbiBXaW5kb3dzIHdhcyA6ZmlsZTpgQzpcXFByb2dyYW0KKyAgIEZpbGVzXFxQeXRob25gIHVuZGVyIFB5dGhvbiAxLjZhMSwgMS41LjIsIGFuZCBlYXJsaWVyLgorCis6ZmlsZTpge3ByZWZpeH1gIGFuZCA6ZmlsZTpge2V4ZWMtcHJlZml4fWAgc3RhbmQgZm9yIHRoZSBkaXJlY3RvcmllcyB0aGF0IFB5dGhvbgoraXMgaW5zdGFsbGVkIHRvLCBhbmQgd2hlcmUgaXQgZmluZHMgaXRzIGxpYnJhcmllcyBhdCBydW4tdGltZS4gIFRoZXkgYXJlIGFsd2F5cwordGhlIHNhbWUgdW5kZXIgV2luZG93cywgYW5kIHZlcnkgb2Z0ZW4gdGhlIHNhbWUgdW5kZXIgVW5peCBhbmQgTWFjIE9TIFguICBZb3UKK2NhbiBmaW5kIG91dCB3aGF0IHlvdXIgUHl0aG9uIGluc3RhbGxhdGlvbiB1c2VzIGZvciA6ZmlsZTpge3ByZWZpeH1gIGFuZAorOmZpbGU6YHtleGVjLXByZWZpeH1gIGJ5IHJ1bm5pbmcgUHl0aG9uIGluIGludGVyYWN0aXZlIG1vZGUgYW5kIHR5cGluZyBhIGZldworc2ltcGxlIGNvbW1hbmRzLiBVbmRlciBVbml4LCBqdXN0IHR5cGUgYGBweXRob25gYCBhdCB0aGUgc2hlbGwgcHJvbXB0LiAgVW5kZXIKK1dpbmRvd3MsIGNob29zZSA6bWVudXNlbGVjdGlvbjpgU3RhcnQgLS0+IFByb2dyYW1zIC0tPiBQeXRob24gWC5ZIC0tPgorUHl0aG9uIChjb21tYW5kIGxpbmUpYC4gICBPbmNlIHRoZSBpbnRlcnByZXRlciBpcyBzdGFydGVkLCB5b3UgdHlwZSBQeXRob24gY29kZQorYXQgdGhlIHByb21wdC4gIEZvciBleGFtcGxlLCBvbiBteSBMaW51eCBzeXN0ZW0sIEkgdHlwZSB0aGUgdGhyZWUgUHl0aG9uCitzdGF0ZW1lbnRzIHNob3duIGJlbG93LCBhbmQgZ2V0IHRoZSBvdXRwdXQgYXMgc2hvd24sIHRvIGZpbmQgb3V0IG15Cis6ZmlsZTpge3ByZWZpeH1gIGFuZCA6ZmlsZTpge2V4ZWMtcHJlZml4fWA6OgorCisgICBQeXRob24gMi40ICgjMjYsIEF1ZyAgNyAyMDA0LCAxNzoxOTowMikKKyAgIFR5cGUgImhlbHAiLCAiY29weXJpZ2h0IiwgImNyZWRpdHMiIG9yICJsaWNlbnNlIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKyAgID4+PiBpbXBvcnQgc3lzCisgICA+Pj4gc3lzLnByZWZpeAorICAgJy91c3InCisgICA+Pj4gc3lzLmV4ZWNfcHJlZml4CisgICAnL3VzcicKKworQSBmZXcgb3RoZXIgcGxhY2Vob2xkZXJzIGFyZSB1c2VkIGluIHRoaXMgZG9jdW1lbnQ6IDpmaWxlOmB7WC5ZfWAgc3RhbmRzIGZvciB0aGUKK3ZlcnNpb24gb2YgUHl0aG9uLCBmb3IgZXhhbXBsZSBgYDMuMmBgOyA6ZmlsZTpge2FiaWZsYWdzfWAgd2lsbCBiZSByZXBsYWNlZCBieQordGhlIHZhbHVlIG9mIDpkYXRhOmBzeXMuYWJpZmxhZ3NgIG9yIHRoZSBlbXB0eSBzdHJpbmcgZm9yIHBsYXRmb3JtcyB3aGljaCBkb24ndAorZGVmaW5lIEFCSSBmbGFnczsgOmZpbGU6YHtkaXN0bmFtZX1gIHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlIG5hbWUgb2YgdGhlIG1vZHVsZQorZGlzdHJpYnV0aW9uIGJlaW5nIGluc3RhbGxlZC4gIERvdHMgYW5kIGNhcGl0YWxpemF0aW9uIGFyZSBpbXBvcnRhbnQgaW4gdGhlCitwYXRoczsgZm9yIGV4YW1wbGUsIGEgdmFsdWUgdGhhdCB1c2VzIGBgcHl0aG9uMy4yYGAgb24gVU5JWCB3aWxsIHR5cGljYWxseSB1c2UKK2BgUHl0aG9uMzJgYCBvbiBXaW5kb3dzLgorCitJZiB5b3UgZG9uJ3Qgd2FudCB0byBpbnN0YWxsIG1vZHVsZXMgdG8gdGhlIHN0YW5kYXJkIGxvY2F0aW9uLCBvciBpZiB5b3UgZG9uJ3QKK2hhdmUgcGVybWlzc2lvbiB0byB3cml0ZSB0aGVyZSwgdGhlbiB5b3UgbmVlZCB0byByZWFkIGFib3V0IGFsdGVybmF0ZQoraW5zdGFsbGF0aW9ucyBpbiBzZWN0aW9uIDpyZWY6YGluc3QtYWx0LWluc3RhbGxgLiAgSWYgeW91IHdhbnQgdG8gY3VzdG9taXplIHlvdXIKK2luc3RhbGxhdGlvbiBkaXJlY3RvcmllcyBtb3JlIGhlYXZpbHksIHNlZSBzZWN0aW9uIDpyZWY6YGluc3QtY3VzdG9tLWluc3RhbGxgIG9uCitjdXN0b20gaW5zdGFsbGF0aW9ucy4KKworCisuLiBfaW5zdC1hbHQtaW5zdGFsbDoKKworQWx0ZXJuYXRlIEluc3RhbGxhdGlvbgorPT09PT09PT09PT09PT09PT09PT09PQorCitPZnRlbiwgaXQgaXMgbmVjZXNzYXJ5IG9yIGRlc2lyYWJsZSB0byBpbnN0YWxsIG1vZHVsZXMgdG8gYSBsb2NhdGlvbiBvdGhlciB0aGFuCit0aGUgc3RhbmRhcmQgbG9jYXRpb24gZm9yIHRoaXJkLXBhcnR5IFB5dGhvbiBtb2R1bGVzLiAgRm9yIGV4YW1wbGUsIG9uIGEgVW5peAorc3lzdGVtIHlvdSBtaWdodCBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIHdyaXRlIHRvIHRoZSBzdGFuZGFyZCB0aGlyZC1wYXJ0eSBtb2R1bGUKK2RpcmVjdG9yeS4gIE9yIHlvdSBtaWdodCB3aXNoIHRvIHRyeSBvdXQgYSBtb2R1bGUgYmVmb3JlIG1ha2luZyBpdCBhIHN0YW5kYXJkCitwYXJ0IG9mIHlvdXIgbG9jYWwgUHl0aG9uIGluc3RhbGxhdGlvbi4gIFRoaXMgaXMgZXNwZWNpYWxseSB0cnVlIHdoZW4gdXBncmFkaW5nCithIGRpc3RyaWJ1dGlvbiBhbHJlYWR5IHByZXNlbnQ6IHlvdSB3YW50IHRvIG1ha2Ugc3VyZSB5b3VyIGV4aXN0aW5nIGJhc2Ugb2YKK3NjcmlwdHMgc3RpbGwgd29ya3Mgd2l0aCB0aGUgbmV3IHZlcnNpb24gYmVmb3JlIGFjdHVhbGx5IHVwZ3JhZGluZy4KKworVGhlIERpc3R1dGlscyA6Y29tbWFuZDpgaW5zdGFsbGAgY29tbWFuZCBpcyBkZXNpZ25lZCB0byBtYWtlIGluc3RhbGxpbmcgbW9kdWxlCitkaXN0cmlidXRpb25zIHRvIGFuIGFsdGVybmF0ZSBsb2NhdGlvbiBzaW1wbGUgYW5kIHBhaW5sZXNzLiAgVGhlIGJhc2ljIGlkZWEgaXMKK3RoYXQgeW91IHN1cHBseSBhIGJhc2UgZGlyZWN0b3J5IGZvciB0aGUgaW5zdGFsbGF0aW9uLCBhbmQgdGhlCis6Y29tbWFuZDpgaW5zdGFsbGAgY29tbWFuZCBwaWNrcyBhIHNldCBvZiBkaXJlY3RvcmllcyAoY2FsbGVkIGFuICppbnN0YWxsYXRpb24KK3NjaGVtZSopIHVuZGVyIHRoaXMgYmFzZSBkaXJlY3RvcnkgaW4gd2hpY2ggdG8gaW5zdGFsbCBmaWxlcy4gIFRoZSBkZXRhaWxzCitkaWZmZXIgYWNyb3NzIHBsYXRmb3Jtcywgc28gcmVhZCB3aGljaGV2ZXIgb2YgdGhlIGZvbGxvd2luZyBzZWN0aW9ucyBhcHBsaWVzIHRvCit5b3UuCisKK05vdGUgdGhhdCB0aGUgdmFyaW91cyBhbHRlcm5hdGUgaW5zdGFsbGF0aW9uIHNjaGVtZXMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZTogeW91CitjYW4gcGFzcyBgYC0tdXNlcmBgLCBvciBgYC0taG9tZWBgLCBvciBgYC0tcHJlZml4YGAgYW5kIGBgLS1leGVjLXByZWZpeGBgLCBvcgorYGAtLWluc3RhbGwtYmFzZWBgIGFuZCBgYC0taW5zdGFsbC1wbGF0YmFzZWBgLCBidXQgeW91IGNhbid0IG1peCBmcm9tIHRoZXNlCitncm91cHMuCisKKworLi4gX2luc3QtYWx0LWluc3RhbGwtdXNlcjoKKworQWx0ZXJuYXRlIGluc3RhbGxhdGlvbjogdGhlIHVzZXIgc2NoZW1lCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhpcyBzY2hlbWUgaXMgZGVzaWduZWQgdG8gYmUgdGhlIG1vc3QgY29udmVuaWVudCBzb2x1dGlvbiBmb3IgdXNlcnMgdGhhdCBkb24ndAoraGF2ZSB3cml0ZSBwZXJtaXNzaW9uIHRvIHRoZSBnbG9iYWwgc2l0ZS1wYWNrYWdlcyBkaXJlY3Rvcnkgb3IgZG9uJ3Qgd2FudCB0bworaW5zdGFsbCBpbnRvIGl0LiAgSXQgaXMgZW5hYmxlZCB3aXRoIGEgc2ltcGxlIG9wdGlvbjo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0tdXNlcgorCitGaWxlcyB3aWxsIGJlIGluc3RhbGxlZCBpbnRvIHN1YmRpcmVjdG9yaWVzIG9mIDpkYXRhOmBzaXRlLlVTRVJfQkFTRWAgKHdyaXR0ZW4KK2FzIDpmaWxlOmB7dXNlcmJhc2V9YCBoZXJlYWZ0ZXIpLiAgVGhpcyBzY2hlbWUgaW5zdGFsbHMgcHVyZSBQeXRob24gbW9kdWxlcyBhbmQKK2V4dGVuc2lvbiBtb2R1bGVzIGluIHRoZSBzYW1lIGxvY2F0aW9uIChhbHNvIGtub3duIGFzIDpkYXRhOmBzaXRlLlVTRVJfU0lURWApLgorSGVyZSBhcmUgdGhlIHZhbHVlcyBmb3IgVU5JWCwgaW5jbHVkaW5nIE1hYyBPUyBYOgorCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1R5cGUgb2YgZmlsZSAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Cis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK21vZHVsZXMgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AKK3NjcmlwdHMgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfS9iaW5gCitkYXRhICAgICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1gCitDIGhlYWRlcnMgICAgICAgOmZpbGU6YHt1c2VyYmFzZX0vaW5jbHVkZS9weXRob257WC5ZfXthYmlmbGFnc30ve2Rpc3RuYW1lfWAKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitBbmQgaGVyZSBhcmUgdGhlIHZhbHVlcyB1c2VkIG9uIFdpbmRvd3M6CisKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9XFxQeXRob257WFl9XFxzaXRlLXBhY2thZ2VzYAorc2NyaXB0cyAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9XFxTY3JpcHRzYAorZGF0YSAgICAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9YAorQyBoZWFkZXJzICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9XFxQeXRob257WFl9XFxJbmNsdWRlXFx7ZGlzdG5hbWV9YAorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK1RoZSBhZHZhbnRhZ2Ugb2YgdXNpbmcgdGhpcyBzY2hlbWUgY29tcGFyZWQgdG8gdGhlIG90aGVyIG9uZXMgZGVzY3JpYmVkIGJlbG93IGlzCit0aGF0IHRoZSB1c2VyIHNpdGUtcGFja2FnZXMgZGlyZWN0b3J5IGlzIHVuZGVyIG5vcm1hbCBjb25kaXRpb25zIGFsd2F5cyBpbmNsdWRlZAoraW4gOmRhdGE6YHN5cy5wYXRoYCAoc2VlIDptb2Q6YHNpdGVgIGZvciBtb3JlIGluZm9ybWF0aW9uKSwgd2hpY2ggbWVhbnMgdGhhdAordGhlcmUgaXMgbm8gYWRkaXRpb25hbCBzdGVwIHRvIHBlcmZvcm0gYWZ0ZXIgcnVubmluZyB0aGUgOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQKK3RvIGZpbmFsaXplIHRoZSBpbnN0YWxsYXRpb24uCisKK1RoZSA6Y29tbWFuZDpgYnVpbGRfZXh0YCBjb21tYW5kIGFsc28gaGFzIGEgYGAtLXVzZXJgYCBvcHRpb24gdG8gYWRkCis6ZmlsZTpge3VzZXJiYXNlfS9pbmNsdWRlYCB0byB0aGUgY29tcGlsZXIgc2VhcmNoIHBhdGggZm9yIGhlYWRlciBmaWxlcyBhbmQKKzpmaWxlOmB7dXNlcmJhc2V9L2xpYmAgdG8gdGhlIGNvbXBpbGVyIHNlYXJjaCBwYXRoIGZvciBsaWJyYXJpZXMgYXMgd2VsbCBhcyB0bwordGhlIHJ1bnRpbWUgc2VhcmNoIHBhdGggZm9yIHNoYXJlZCBDIGxpYnJhcmllcyAocnBhdGgpLgorCisKKy4uIF9pbnN0LWFsdC1pbnN0YWxsLWhvbWU6CisKK0FsdGVybmF0ZSBpbnN0YWxsYXRpb246IHRoZSBob21lIHNjaGVtZQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSBpZGVhIGJlaGluZCB0aGUgImhvbWUgc2NoZW1lIiBpcyB0aGF0IHlvdSBidWlsZCBhbmQgbWFpbnRhaW4gYSBwZXJzb25hbAorc3Rhc2ggb2YgUHl0aG9uIG1vZHVsZXMuICBUaGlzIHNjaGVtZSdzIG5hbWUgaXMgZGVyaXZlZCBmcm9tIHRoZSBpZGVhIG9mIGEKKyJob21lIiBkaXJlY3Rvcnkgb24gVW5peCwgc2luY2UgaXQncyBub3QgdW51c3VhbCBmb3IgYSBVbml4IHVzZXIgdG8gbWFrZSB0aGVpcgoraG9tZSBkaXJlY3RvcnkgaGF2ZSBhIGxheW91dCBzaW1pbGFyIHRvIDpmaWxlOmAvdXNyL2Agb3IgOmZpbGU6YC91c3IvbG9jYWwvYC4KK1RoaXMgc2NoZW1lIGNhbiBiZSB1c2VkIGJ5IGFueW9uZSwgcmVnYXJkbGVzcyBvZiB0aGUgb3BlcmF0aW5nIHN5c3RlbSB0aGV5CithcmUgaW5zdGFsbGluZyBmb3IuCisKK0luc3RhbGxpbmcgYSBuZXcgbW9kdWxlIGRpc3RyaWJ1dGlvbiBpcyBhcyBzaW1wbGUgYXMgOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1ob21lPTxkaXI+CisKK3doZXJlIHlvdSBjYW4gc3VwcGx5IGFueSBkaXJlY3RvcnkgeW91IGxpa2UgZm9yIHRoZSA6b3B0aW9uOmAtLWhvbWVgIG9wdGlvbi4gIE9uCitVbml4LCBsYXp5IHR5cGlzdHMgY2FuIGp1c3QgdHlwZSBhIHRpbGRlIChgYH5gYCk7IHRoZSA6Y29tbWFuZDpgaW5zdGFsbGAgY29tbWFuZAord2lsbCBleHBhbmQgdGhpcyB0byB5b3VyIGhvbWUgZGlyZWN0b3J5OjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1ob21lPX4KKworVG8gbWFrZSBQeXRob24gZmluZCB0aGUgZGlzdHJpYnV0aW9ucyBpbnN0YWxsZWQgd2l0aCB0aGlzIHNjaGVtZSwgeW91IG1heSBoYXZlCit0byA6cmVmOmBtb2RpZnkgUHl0aG9uJ3Mgc2VhcmNoIHBhdGggPGluc3Qtc2VhcmNoLXBhdGg+YCBvciBlZGl0Cis6bW9kOmBzaXRlY3VzdG9taXplYCAoc2VlIDptb2Q6YHNpdGVgKSB0byBjYWxsIDpmdW5jOmBzaXRlLmFkZHNpdGVkaXJgIG9yIGVkaXQKKzpkYXRhOmBzeXMucGF0aGAuCisKK1RoZSA6b3B0aW9uOmAtLWhvbWVgIG9wdGlvbiBkZWZpbmVzIHRoZSBpbnN0YWxsYXRpb24gYmFzZSBkaXJlY3RvcnkuICBGaWxlcyBhcmUKK2luc3RhbGxlZCB0byB0aGUgZm9sbG93aW5nIGRpcmVjdG9yaWVzIHVuZGVyIHRoZSBpbnN0YWxsYXRpb24gYmFzZSBhcyBmb2xsb3dzOgorCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1R5cGUgb2YgZmlsZSAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Cis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK21vZHVsZXMgICAgICAgICA6ZmlsZTpge2hvbWV9L2xpYi9weXRob25gCitzY3JpcHRzICAgICAgICAgOmZpbGU6YHtob21lfS9iaW5gCitkYXRhICAgICAgICAgICAgOmZpbGU6YHtob21lfWAKK0MgaGVhZGVycyAgICAgICA6ZmlsZTpge2hvbWV9L2luY2x1ZGUvcHl0aG9uL3tkaXN0bmFtZX1gCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworKE1lbnRhbGx5IHJlcGxhY2Ugc2xhc2hlcyB3aXRoIGJhY2tzbGFzaGVzIGlmIHlvdSdyZSBvbiBXaW5kb3dzLikKKworCisuLiBfaW5zdC1hbHQtaW5zdGFsbC1wcmVmaXgtdW5peDoKKworQWx0ZXJuYXRlIGluc3RhbGxhdGlvbjogVW5peCAodGhlIHByZWZpeCBzY2hlbWUpCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlICJwcmVmaXggc2NoZW1lIiBpcyB1c2VmdWwgd2hlbiB5b3Ugd2lzaCB0byB1c2Ugb25lIFB5dGhvbiBpbnN0YWxsYXRpb24gdG8KK3BlcmZvcm0gdGhlIGJ1aWxkL2luc3RhbGwgKGkuZS4sIHRvIHJ1biB0aGUgc2V0dXAgc2NyaXB0KSwgYnV0IGluc3RhbGwgbW9kdWxlcworaW50byB0aGUgdGhpcmQtcGFydHkgbW9kdWxlIGRpcmVjdG9yeSBvZiBhIGRpZmZlcmVudCBQeXRob24gaW5zdGFsbGF0aW9uIChvcgorc29tZXRoaW5nIHRoYXQgbG9va3MgbGlrZSBhIGRpZmZlcmVudCBQeXRob24gaW5zdGFsbGF0aW9uKS4gIElmIHRoaXMgc291bmRzIGEKK3RyaWZsZSB1bnVzdWFsLCBpdCBpcy0tLXRoYXQncyB3aHkgdGhlIHVzZXIgYW5kIGhvbWUgc2NoZW1lcyBjb21lIGJlZm9yZS4gIEhvd2V2ZXIsCit0aGVyZSBhcmUgYXQgbGVhc3QgdHdvIGtub3duIGNhc2VzIHdoZXJlIHRoZSBwcmVmaXggc2NoZW1lIHdpbGwgYmUgdXNlZnVsLgorCitGaXJzdCwgY29uc2lkZXIgdGhhdCBtYW55IExpbnV4IGRpc3RyaWJ1dGlvbnMgcHV0IFB5dGhvbiBpbiA6ZmlsZTpgL3VzcmAsIHJhdGhlcgordGhhbiB0aGUgbW9yZSB0cmFkaXRpb25hbCA6ZmlsZTpgL3Vzci9sb2NhbGAuICBUaGlzIGlzIGVudGlyZWx5IGFwcHJvcHJpYXRlLAorc2luY2UgaW4gdGhvc2UgY2FzZXMgUHl0aG9uIGlzIHBhcnQgb2YgInRoZSBzeXN0ZW0iIHJhdGhlciB0aGFuIGEgbG9jYWwgYWRkLW9uLgorSG93ZXZlciwgaWYgeW91IGFyZSBpbnN0YWxsaW5nIFB5dGhvbiBtb2R1bGVzIGZyb20gc291cmNlLCB5b3UgcHJvYmFibHkgd2FudAordGhlbSB0byBnbyBpbiA6ZmlsZTpgL3Vzci9sb2NhbC9saWIvcHl0aG9uMi57WH1gIHJhdGhlciB0aGFuCis6ZmlsZTpgL3Vzci9saWIvcHl0aG9uMi57WH1gLiAgVGhpcyBjYW4gYmUgZG9uZSB3aXRoIDo6CisKKyAgIC91c3IvYmluL3B5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0tcHJlZml4PS91c3IvbG9jYWwKKworQW5vdGhlciBwb3NzaWJpbGl0eSBpcyBhIG5ldHdvcmsgZmlsZXN5c3RlbSB3aGVyZSB0aGUgbmFtZSB1c2VkIHRvIHdyaXRlIHRvIGEKK3JlbW90ZSBkaXJlY3RvcnkgaXMgZGlmZmVyZW50IGZyb20gdGhlIG5hbWUgdXNlZCB0byByZWFkIGl0OiBmb3IgZXhhbXBsZSwgdGhlCitQeXRob24gaW50ZXJwcmV0ZXIgYWNjZXNzZWQgYXMgOmZpbGU6YC91c3IvbG9jYWwvYmluL3B5dGhvbmAgbWlnaHQgc2VhcmNoIGZvcgorbW9kdWxlcyBpbiA6ZmlsZTpgL3Vzci9sb2NhbC9saWIvcHl0aG9uMi57WH1gLCBidXQgdGhvc2UgbW9kdWxlcyB3b3VsZCBoYXZlIHRvCitiZSBpbnN0YWxsZWQgdG8sIHNheSwgOmZpbGU6YC9tbnQve0BzZXJ2ZXJ9L2V4cG9ydC9saWIvcHl0aG9uMi57WH1gLiAgVGhpcyBjb3VsZAorYmUgZG9uZSB3aXRoIDo6CisKKyAgIC91c3IvbG9jYWwvYmluL3B5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0tcHJlZml4PS9tbnQvQHNlcnZlci9leHBvcnQKKworSW4gZWl0aGVyIGNhc2UsIHRoZSA6b3B0aW9uOmAtLXByZWZpeGAgb3B0aW9uIGRlZmluZXMgdGhlIGluc3RhbGxhdGlvbiBiYXNlLCBhbmQKK3RoZSA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBvcHRpb24gZGVmaW5lcyB0aGUgcGxhdGZvcm0tc3BlY2lmaWMgaW5zdGFsbGF0aW9uCitiYXNlLCB3aGljaCBpcyB1c2VkIGZvciBwbGF0Zm9ybS1zcGVjaWZpYyBmaWxlcy4gIChDdXJyZW50bHksIHRoaXMganVzdCBtZWFucworbm9uLXB1cmUgbW9kdWxlIGRpc3RyaWJ1dGlvbnMsIGJ1dCBjb3VsZCBiZSBleHBhbmRlZCB0byBDIGxpYnJhcmllcywgYmluYXJ5CitleGVjdXRhYmxlcywgZXRjLikgIElmIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgIGlzIG5vdCBzdXBwbGllZCwgaXQgZGVmYXVsdHMgdG8KKzpvcHRpb246YC0tcHJlZml4YC4gIEZpbGVzIGFyZSBpbnN0YWxsZWQgYXMgZm9sbG93czoKKworPT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQorPT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorUHl0aG9uIG1vZHVsZXMgICAgOmZpbGU6YHtwcmVmaXh9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYAorZXh0ZW5zaW9uIG1vZHVsZXMgOmZpbGU6YHtleGVjLXByZWZpeH0vbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgCitzY3JpcHRzICAgICAgICAgICA6ZmlsZTpge3ByZWZpeH0vYmluYAorZGF0YSAgICAgICAgICAgICAgOmZpbGU6YHtwcmVmaXh9YAorQyBoZWFkZXJzICAgICAgICAgOmZpbGU6YHtwcmVmaXh9L2luY2x1ZGUvcHl0aG9ue1guWX17YWJpZmxhZ3N9L3tkaXN0bmFtZX1gCis9PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK1RoZXJlIGlzIG5vIHJlcXVpcmVtZW50IHRoYXQgOm9wdGlvbjpgLS1wcmVmaXhgIG9yIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgCithY3R1YWxseSBwb2ludCB0byBhbiBhbHRlcm5hdGUgUHl0aG9uIGluc3RhbGxhdGlvbjsgaWYgdGhlIGRpcmVjdG9yaWVzIGxpc3RlZAorYWJvdmUgZG8gbm90IGFscmVhZHkgZXhpc3QsIHRoZXkgYXJlIGNyZWF0ZWQgYXQgaW5zdGFsbGF0aW9uIHRpbWUuCisKK0luY2lkZW50YWxseSwgdGhlIHJlYWwgcmVhc29uIHRoZSBwcmVmaXggc2NoZW1lIGlzIGltcG9ydGFudCBpcyBzaW1wbHkgdGhhdCBhCitzdGFuZGFyZCBVbml4IGluc3RhbGxhdGlvbiB1c2VzIHRoZSBwcmVmaXggc2NoZW1lLCBidXQgd2l0aCA6b3B0aW9uOmAtLXByZWZpeGAKK2FuZCA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBzdXBwbGllZCBieSBQeXRob24gaXRzZWxmIGFzIGBgc3lzLnByZWZpeGBgIGFuZAorYGBzeXMuZXhlY19wcmVmaXhgYC4gIFRodXMsIHlvdSBtaWdodCB0aGluayB5b3UnbGwgbmV2ZXIgdXNlIHRoZSBwcmVmaXggc2NoZW1lLAorYnV0IGV2ZXJ5IHRpbWUgeW91IHJ1biBgYHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsYGAgd2l0aG91dCBhbnkgb3RoZXIgb3B0aW9ucywKK3lvdSdyZSB1c2luZyBpdC4KKworTm90ZSB0aGF0IGluc3RhbGxpbmcgZXh0ZW5zaW9ucyB0byBhbiBhbHRlcm5hdGUgUHl0aG9uIGluc3RhbGxhdGlvbiBoYXMgbm8KK2VmZmVjdCBvbiBob3cgdGhvc2UgZXh0ZW5zaW9ucyBhcmUgYnVpbHQ6IGluIHBhcnRpY3VsYXIsIHRoZSBQeXRob24gaGVhZGVyIGZpbGVzCisoOmZpbGU6YFB5dGhvbi5oYCBhbmQgZnJpZW5kcykgaW5zdGFsbGVkIHdpdGggdGhlIFB5dGhvbiBpbnRlcnByZXRlciB1c2VkIHRvIHJ1bgordGhlIHNldHVwIHNjcmlwdCB3aWxsIGJlIHVzZWQgaW4gY29tcGlsaW5nIGV4dGVuc2lvbnMuICBJdCBpcyB5b3VyCityZXNwb25zaWJpbGl0eSB0byBlbnN1cmUgdGhhdCB0aGUgaW50ZXJwcmV0ZXIgdXNlZCB0byBydW4gZXh0ZW5zaW9ucyBpbnN0YWxsZWQKK2luIHRoaXMgd2F5IGlzIGNvbXBhdGlibGUgd2l0aCB0aGUgaW50ZXJwcmV0ZXIgdXNlZCB0byBidWlsZCB0aGVtLiAgVGhlIGJlc3Qgd2F5Cit0byBkbyB0aGlzIGlzIHRvIGVuc3VyZSB0aGF0IHRoZSB0d28gaW50ZXJwcmV0ZXJzIGFyZSB0aGUgc2FtZSB2ZXJzaW9uIG9mIFB5dGhvbgorKHBvc3NpYmx5IGRpZmZlcmVudCBidWlsZHMsIG9yIHBvc3NpYmx5IGNvcGllcyBvZiB0aGUgc2FtZSBidWlsZCkuICAoT2YgY291cnNlLAoraWYgeW91ciA6b3B0aW9uOmAtLXByZWZpeGAgYW5kIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgIGRvbid0IGV2ZW4gcG9pbnQgdG8gYW4KK2FsdGVybmF0ZSBQeXRob24gaW5zdGFsbGF0aW9uLCB0aGlzIGlzIGltbWF0ZXJpYWwuKQorCisKKy4uIF9pbnN0LWFsdC1pbnN0YWxsLXByZWZpeC13aW5kb3dzOgorCitBbHRlcm5hdGUgaW5zdGFsbGF0aW9uOiBXaW5kb3dzICh0aGUgcHJlZml4IHNjaGVtZSkKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitXaW5kb3dzIGhhcyBubyBjb25jZXB0IG9mIGEgdXNlcidzIGhvbWUgZGlyZWN0b3J5LCBhbmQgc2luY2UgdGhlIHN0YW5kYXJkIFB5dGhvbgoraW5zdGFsbGF0aW9uIHVuZGVyIFdpbmRvd3MgaXMgc2ltcGxlciB0aGFuIHVuZGVyIFVuaXgsIHRoZSA6b3B0aW9uOmAtLXByZWZpeGAKK29wdGlvbiBoYXMgdHJhZGl0aW9uYWxseSBiZWVuIHVzZWQgdG8gaW5zdGFsbCBhZGRpdGlvbmFsIHBhY2thZ2VzIGluIHNlcGFyYXRlCitsb2NhdGlvbnMgb24gV2luZG93cy4gOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1wcmVmaXg9IlxUZW1wXFB5dGhvbiIKKwordG8gaW5zdGFsbCBtb2R1bGVzIHRvIHRoZSA6ZmlsZTpgXFxUZW1wXFxQeXRob25gIGRpcmVjdG9yeSBvbiB0aGUgY3VycmVudCBkcml2ZS4KKworVGhlIGluc3RhbGxhdGlvbiBiYXNlIGlzIGRlZmluZWQgYnkgdGhlIDpvcHRpb246YC0tcHJlZml4YCBvcHRpb247IHRoZQorOm9wdGlvbjpgLS1leGVjLXByZWZpeGAgb3B0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgdW5kZXIgV2luZG93cywgd2hpY2ggbWVhbnMgdGhhdAorcHVyZSBQeXRob24gbW9kdWxlcyBhbmQgZXh0ZW5zaW9uIG1vZHVsZXMgYXJlIGluc3RhbGxlZCBpbnRvIHRoZSBzYW1lIGxvY2F0aW9uLgorRmlsZXMgYXJlIGluc3RhbGxlZCBhcyBmb2xsb3dzOgorCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cittb2R1bGVzICAgICAgICAgOmZpbGU6YHtwcmVmaXh9XFxMaWJcXHNpdGUtcGFja2FnZXNgCitzY3JpcHRzICAgICAgICAgOmZpbGU6YHtwcmVmaXh9XFxTY3JpcHRzYAorZGF0YSAgICAgICAgICAgIDpmaWxlOmB7cHJlZml4fWAKK0MgaGVhZGVycyAgICAgICA6ZmlsZTpge3ByZWZpeH1cXEluY2x1ZGVcXHtkaXN0bmFtZX1gCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisKKy4uIF9pbnN0LWN1c3RvbS1pbnN0YWxsOgorCitDdXN0b20gSW5zdGFsbGF0aW9uCis9PT09PT09PT09PT09PT09PT09CisKK1NvbWV0aW1lcywgdGhlIGFsdGVybmF0ZSBpbnN0YWxsYXRpb24gc2NoZW1lcyBkZXNjcmliZWQgaW4gc2VjdGlvbgorOnJlZjpgaW5zdC1hbHQtaW5zdGFsbGAganVzdCBkb24ndCBkbyB3aGF0IHlvdSB3YW50LiAgWW91IG1pZ2h0IHdhbnQgdG8gdHdlYWsganVzdAorb25lIG9yIHR3byBkaXJlY3RvcmllcyB3aGlsZSBrZWVwaW5nIGV2ZXJ5dGhpbmcgdW5kZXIgdGhlIHNhbWUgYmFzZSBkaXJlY3RvcnksCitvciB5b3UgbWlnaHQgd2FudCB0byBjb21wbGV0ZWx5IHJlZGVmaW5lIHRoZSBpbnN0YWxsYXRpb24gc2NoZW1lLiAgSW4gZWl0aGVyCitjYXNlLCB5b3UncmUgY3JlYXRpbmcgYSAqY3VzdG9tIGluc3RhbGxhdGlvbiBzY2hlbWUqLgorCitUbyBjcmVhdGUgYSBjdXN0b20gaW5zdGFsbGF0aW9uIHNjaGVtZSwgeW91IHN0YXJ0IHdpdGggb25lIG9mIHRoZSBhbHRlcm5hdGUKK3NjaGVtZXMgYW5kIG92ZXJyaWRlIHNvbWUgb2YgdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcmllcyB1c2VkIGZvciB0aGUgdmFyaW91cwordHlwZXMgb2YgZmlsZXMsIHVzaW5nIHRoZXNlIG9wdGlvbnM6CisKKz09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT0KK1R5cGUgb2YgZmlsZSAgICAgICAgICAgT3ZlcnJpZGUgb3B0aW9uCis9PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09CitQeXRob24gbW9kdWxlcyAgICAgICAgIGBgLS1pbnN0YWxsLXB1cmVsaWJgYAorZXh0ZW5zaW9uIG1vZHVsZXMgICAgICBgYC0taW5zdGFsbC1wbGF0bGliYGAKK2FsbCBtb2R1bGVzICAgICAgICAgICAgYGAtLWluc3RhbGwtbGliYGAKK3NjcmlwdHMgICAgICAgICAgICAgICAgYGAtLWluc3RhbGwtc2NyaXB0c2BgCitkYXRhICAgICAgICAgICAgICAgICAgIGBgLS1pbnN0YWxsLWRhdGFgYAorQyBoZWFkZXJzICAgICAgICAgICAgICBgYC0taW5zdGFsbC1oZWFkZXJzYGAKKz09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlc2Ugb3ZlcnJpZGUgb3B0aW9ucyBjYW4gYmUgcmVsYXRpdmUsIGFic29sdXRlLAorb3IgZXhwbGljaXRseSBkZWZpbmVkIGluIHRlcm1zIG9mIG9uZSBvZiB0aGUgaW5zdGFsbGF0aW9uIGJhc2UgZGlyZWN0b3JpZXMuCisoVGhlcmUgYXJlIHR3byBpbnN0YWxsYXRpb24gYmFzZSBkaXJlY3RvcmllcywgYW5kIHRoZXkgYXJlIG5vcm1hbGx5IHRoZSBzYW1lLS0tCit0aGV5IG9ubHkgZGlmZmVyIHdoZW4geW91IHVzZSB0aGUgVW5peCAicHJlZml4IHNjaGVtZSIgYW5kIHN1cHBseSBkaWZmZXJlbnQKK2BgLS1wcmVmaXhgYCBhbmQgYGAtLWV4ZWMtcHJlZml4YGAgb3B0aW9uczsgdXNpbmcgYGAtLWluc3RhbGwtbGliYGAgd2lsbAorb3ZlcnJpZGUgdmFsdWVzIGNvbXB1dGVkIG9yIGdpdmVuIGZvciBgYC0taW5zdGFsbC1wdXJlbGliYGAgYW5kCitgYC0taW5zdGFsbC1wbGF0bGliYGAsIGFuZCBpcyByZWNvbW1lbmRlZCBmb3Igc2NoZW1lcyB0aGF0IGRvbid0IG1ha2UgYQorZGlmZmVyZW5jZSBiZXR3ZWVuIFB5dGhvbiBhbmQgZXh0ZW5zaW9uIG1vZHVsZXMuKQorCitGb3IgZXhhbXBsZSwgc2F5IHlvdSdyZSBpbnN0YWxsaW5nIGEgbW9kdWxlIGRpc3RyaWJ1dGlvbiB0byB5b3VyIGhvbWUgZGlyZWN0b3J5Cit1bmRlciBVbml4LS0tYnV0IHlvdSB3YW50IHNjcmlwdHMgdG8gZ28gaW4gOmZpbGU6YH4vc2NyaXB0c2AgcmF0aGVyIHRoYW4KKzpmaWxlOmB+L2JpbmAuIEFzIHlvdSBtaWdodCBleHBlY3QsIHlvdSBjYW4gb3ZlcnJpZGUgdGhpcyBkaXJlY3Rvcnkgd2l0aCB0aGUKKzpvcHRpb246YC0taW5zdGFsbC1zY3JpcHRzYCBvcHRpb247IGluIHRoaXMgY2FzZSwgaXQgbWFrZXMgbW9zdCBzZW5zZSB0byBzdXBwbHkKK2EgcmVsYXRpdmUgcGF0aCwgd2hpY2ggd2lsbCBiZSBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgaW5zdGFsbGF0aW9uIGJhc2UKK2RpcmVjdG9yeSAoeW91ciBob21lIGRpcmVjdG9yeSwgaW4gdGhpcyBjYXNlKTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0taG9tZT1+IC0taW5zdGFsbC1zY3JpcHRzPXNjcmlwdHMKKworQW5vdGhlciBVbml4IGV4YW1wbGU6IHN1cHBvc2UgeW91ciBQeXRob24gaW5zdGFsbGF0aW9uIHdhcyBidWlsdCBhbmQgaW5zdGFsbGVkCit3aXRoIGEgcHJlZml4IG9mIDpmaWxlOmAvdXNyL2xvY2FsL3B5dGhvbmAsIHNvIHVuZGVyIGEgc3RhbmRhcmQgIGluc3RhbGxhdGlvbgorc2NyaXB0cyB3aWxsIHdpbmQgdXAgaW4gOmZpbGU6YC91c3IvbG9jYWwvcHl0aG9uL2JpbmAuICBJZiB5b3Ugd2FudCB0aGVtIGluCis6ZmlsZTpgL3Vzci9sb2NhbC9iaW5gIGluc3RlYWQsIHlvdSB3b3VsZCBzdXBwbHkgdGhpcyBhYnNvbHV0ZSBkaXJlY3RvcnkgZm9yIHRoZQorOm9wdGlvbjpgLS1pbnN0YWxsLXNjcmlwdHNgIG9wdGlvbjo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0taW5zdGFsbC1zY3JpcHRzPS91c3IvbG9jYWwvYmluCisKKyhUaGlzIHBlcmZvcm1zIGFuIGluc3RhbGxhdGlvbiB1c2luZyB0aGUgInByZWZpeCBzY2hlbWUsIiB3aGVyZSB0aGUgcHJlZml4IGlzCit3aGF0ZXZlciB5b3VyIFB5dGhvbiBpbnRlcnByZXRlciB3YXMgaW5zdGFsbGVkIHdpdGgtLS0gOmZpbGU6YC91c3IvbG9jYWwvcHl0aG9uYAoraW4gdGhpcyBjYXNlLikKKworSWYgeW91IG1haW50YWluIFB5dGhvbiBvbiBXaW5kb3dzLCB5b3UgbWlnaHQgd2FudCB0aGlyZC1wYXJ0eSBtb2R1bGVzIHRvIGxpdmUgaW4KK2Egc3ViZGlyZWN0b3J5IG9mIDpmaWxlOmB7cHJlZml4fWAsIHJhdGhlciB0aGFuIHJpZ2h0IGluIDpmaWxlOmB7cHJlZml4fWAKK2l0c2VsZi4gIFRoaXMgaXMgYWxtb3N0IGFzIGVhc3kgYXMgY3VzdG9taXppbmcgdGhlIHNjcmlwdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5CistLS15b3UganVzdCBoYXZlIHRvIHJlbWVtYmVyIHRoYXQgdGhlcmUgYXJlIHR3byB0eXBlcyBvZiBtb2R1bGVzIHRvIHdvcnJ5IGFib3V0LAorUHl0aG9uIGFuZCBleHRlbnNpb24gbW9kdWxlcywgd2hpY2ggY2FuIGNvbnZlbmllbnRseSBiZSBib3RoIGNvbnRyb2xsZWQgYnkgb25lCitvcHRpb246OgorCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWluc3RhbGwtbGliPVNpdGUKKworVGhlIHNwZWNpZmllZCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IGlzIHJlbGF0aXZlIHRvIDpmaWxlOmB7cHJlZml4fWAuICBPZgorY291cnNlLCB5b3UgYWxzbyBoYXZlIHRvIGVuc3VyZSB0aGF0IHRoaXMgZGlyZWN0b3J5IGlzIGluIFB5dGhvbidzIG1vZHVsZQorc2VhcmNoIHBhdGgsIHN1Y2ggYXMgYnkgcHV0dGluZyBhIDpmaWxlOmAucHRoYCBmaWxlIGluIGEgc2l0ZSBkaXJlY3RvcnkgKHNlZQorOm1vZDpgc2l0ZWApLiAgU2VlIHNlY3Rpb24gOnJlZjpgaW5zdC1zZWFyY2gtcGF0aGAgdG8gZmluZCBvdXQgaG93IHRvIG1vZGlmeQorUHl0aG9uJ3Mgc2VhcmNoIHBhdGguCisKK0lmIHlvdSB3YW50IHRvIGRlZmluZSBhbiBlbnRpcmUgaW5zdGFsbGF0aW9uIHNjaGVtZSwgeW91IGp1c3QgaGF2ZSB0byBzdXBwbHkgYWxsCitvZiB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBvcHRpb25zLiAgVGhlIHJlY29tbWVuZGVkIHdheSB0byBkbyB0aGlzIGlzIHRvCitzdXBwbHkgcmVsYXRpdmUgcGF0aHM7IGZvciBleGFtcGxlLCBpZiB5b3Ugd2FudCB0byBtYWludGFpbiBhbGwgUHl0aG9uCittb2R1bGUtcmVsYXRlZCBmaWxlcyB1bmRlciA6ZmlsZTpgcHl0aG9uYCBpbiB5b3VyIGhvbWUgZGlyZWN0b3J5LCBhbmQgeW91IHdhbnQgYQorc2VwYXJhdGUgZGlyZWN0b3J5IGZvciBlYWNoIHBsYXRmb3JtIHRoYXQgeW91IHVzZSB5b3VyIGhvbWUgZGlyZWN0b3J5IGZyb20sIHlvdQorbWlnaHQgZGVmaW5lIHRoZSBmb2xsb3dpbmcgaW5zdGFsbGF0aW9uIHNjaGVtZTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0taG9tZT1+IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1wdXJlbGliPXB5dGhvbi9saWIgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLXBsYXRsaWI9cHl0aG9uL2xpYi4kUExBVCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtc2NyaXB0cz1weXRob24vc2NyaXB0cworICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLWRhdGE9cHl0aG9uL2RhdGEKKworb3IsIGVxdWl2YWxlbnRseSwgOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1ob21lPX4vcHl0aG9uIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1wdXJlbGliPWxpYiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtcGxhdGxpYj0nbGliLiRQTEFUJyBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtc2NyaXB0cz1zY3JpcHRzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtZGF0YT1kYXRhCisKK2BgJFBMQVRgYCBpcyBub3QgKG5lY2Vzc2FyaWx5KSBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZS0tLWl0IHdpbGwgYmUgZXhwYW5kZWQgYnkKK3RoZSBEaXN0dXRpbHMgYXMgaXQgcGFyc2VzIHlvdXIgY29tbWFuZCBsaW5lIG9wdGlvbnMsIGp1c3QgYXMgaXQgZG9lcyB3aGVuCitwYXJzaW5nIHlvdXIgY29uZmlndXJhdGlvbiBmaWxlKHMpLgorCitPYnZpb3VzbHksIHNwZWNpZnlpbmcgdGhlIGVudGlyZSBpbnN0YWxsYXRpb24gc2NoZW1lIGV2ZXJ5IHRpbWUgeW91IGluc3RhbGwgYQorbmV3IG1vZHVsZSBkaXN0cmlidXRpb24gd291bGQgYmUgdmVyeSB0ZWRpb3VzLiAgVGh1cywgeW91IGNhbiBwdXQgdGhlc2Ugb3B0aW9ucworaW50byB5b3VyIERpc3R1dGlscyBjb25maWcgZmlsZSAoc2VlIHNlY3Rpb24gOnJlZjpgaW5zdC1jb25maWctZmlsZXNgKTo6CisKKyAgIFtpbnN0YWxsXQorICAgaW5zdGFsbC1iYXNlPSRIT01FCisgICBpbnN0YWxsLXB1cmVsaWI9cHl0aG9uL2xpYgorICAgaW5zdGFsbC1wbGF0bGliPXB5dGhvbi9saWIuJFBMQVQKKyAgIGluc3RhbGwtc2NyaXB0cz1weXRob24vc2NyaXB0cworICAgaW5zdGFsbC1kYXRhPXB5dGhvbi9kYXRhCisKK29yLCBlcXVpdmFsZW50bHksIDo6CisKKyAgIFtpbnN0YWxsXQorICAgaW5zdGFsbC1iYXNlPSRIT01FL3B5dGhvbgorICAgaW5zdGFsbC1wdXJlbGliPWxpYgorICAgaW5zdGFsbC1wbGF0bGliPWxpYi4kUExBVAorICAgaW5zdGFsbC1zY3JpcHRzPXNjcmlwdHMKKyAgIGluc3RhbGwtZGF0YT1kYXRhCisKK05vdGUgdGhhdCB0aGVzZSB0d28gYXJlICpub3QqIGVxdWl2YWxlbnQgaWYgeW91IHN1cHBseSBhIGRpZmZlcmVudCBpbnN0YWxsYXRpb24KK2Jhc2UgZGlyZWN0b3J5IHdoZW4geW91IHJ1biB0aGUgc2V0dXAgc2NyaXB0LiAgRm9yIGV4YW1wbGUsIDo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0taW5zdGFsbC1iYXNlPS90bXAKKword291bGQgaW5zdGFsbCBwdXJlIG1vZHVsZXMgdG8gOmZpbGU6YC90bXAvcHl0aG9uL2xpYmAgaW4gdGhlIGZpcnN0IGNhc2UsIGFuZAordG8gOmZpbGU6YC90bXAvbGliYCBpbiB0aGUgc2Vjb25kIGNhc2UuICAoRm9yIHRoZSBzZWNvbmQgY2FzZSwgeW91IHByb2JhYmx5Cit3YW50IHRvIHN1cHBseSBhbiBpbnN0YWxsYXRpb24gYmFzZSBvZiA6ZmlsZTpgL3RtcC9weXRob25gLikKKworWW91IHByb2JhYmx5IG5vdGljZWQgdGhlIHVzZSBvZiBgYCRIT01FYGAgYW5kIGBgJFBMQVRgYCBpbiB0aGUgc2FtcGxlCitjb25maWd1cmF0aW9uIGZpbGUgaW5wdXQuICBUaGVzZSBhcmUgRGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLCB3aGljaAorYmVhciBhIHN0cm9uZyByZXNlbWJsYW5jZSB0byBlbnZpcm9ubWVudCB2YXJpYWJsZXMuIEluIGZhY3QsIHlvdSBjYW4gdXNlCitlbnZpcm9ubWVudCB2YXJpYWJsZXMgaW4gY29uZmlnIGZpbGVzIG9uIHBsYXRmb3JtcyB0aGF0IGhhdmUgc3VjaCBhIG5vdGlvbiBidXQKK3RoZSBEaXN0dXRpbHMgYWRkaXRpb25hbGx5IGRlZmluZSBhIGZldyBleHRyYSB2YXJpYWJsZXMgdGhhdCBtYXkgbm90IGJlIGluIHlvdXIKK2Vudmlyb25tZW50LCBzdWNoIGFzIGBgJFBMQVRgYC4gIChBbmQgb2YgY291cnNlLCBvbiBzeXN0ZW1zIHRoYXQgZG9uJ3QgaGF2ZQorZW52aXJvbm1lbnQgdmFyaWFibGVzLCBzdWNoIGFzIE1hYyBPUyA5LCB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMgc3VwcGxpZWQgYnkKK3RoZSBEaXN0dXRpbHMgYXJlIHRoZSBvbmx5IG9uZXMgeW91IGNhbiB1c2UuKSBTZWUgc2VjdGlvbiA6cmVmOmBpbnN0LWNvbmZpZy1maWxlc2AKK2ZvciBkZXRhaWxzLgorCisuLiBYWFggbmVlZCBzb21lIFdpbmRvd3MgZXhhbXBsZXMtLS13aGVuIHdvdWxkIGN1c3RvbSBpbnN0YWxsYXRpb24gc2NoZW1lcyBiZQorICAgbmVlZGVkIG9uIHRob3NlIHBsYXRmb3Jtcz8KKworCisuLiBYWFggTW92ZSB0aGlzIHRvIERvYy91c2luZworCisuLiBfaW5zdC1zZWFyY2gtcGF0aDoKKworTW9kaWZ5aW5nIFB5dGhvbidzIFNlYXJjaCBQYXRoCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworV2hlbiB0aGUgUHl0aG9uIGludGVycHJldGVyIGV4ZWN1dGVzIGFuIDprZXl3b3JkOmBpbXBvcnRgIHN0YXRlbWVudCwgaXQgc2VhcmNoZXMKK2ZvciBib3RoIFB5dGhvbiBjb2RlIGFuZCBleHRlbnNpb24gbW9kdWxlcyBhbG9uZyBhIHNlYXJjaCBwYXRoLiAgQSBkZWZhdWx0IHZhbHVlCitmb3IgdGhlIHBhdGggaXMgY29uZmlndXJlZCBpbnRvIHRoZSBQeXRob24gYmluYXJ5IHdoZW4gdGhlIGludGVycHJldGVyIGlzIGJ1aWx0LgorWW91IGNhbiBkZXRlcm1pbmUgdGhlIHBhdGggYnkgaW1wb3J0aW5nIHRoZSA6bW9kOmBzeXNgIG1vZHVsZSBhbmQgcHJpbnRpbmcgdGhlCit2YWx1ZSBvZiBgYHN5cy5wYXRoYGAuICAgOjoKKworICAgJCBweXRob24KKyAgIFB5dGhvbiAyLjIgKCMxMSwgT2N0ICAzIDIwMDIsIDEzOjMxOjI3KQorICAgW0dDQyAyLjk2IDIwMDAwNzMxIChSZWQgSGF0IExpbnV4IDcuMyAyLjk2LTExMildIG9uIGxpbnV4MgorICAgVHlwZSAiaGVscCIsICJjb3B5cmlnaHQiLCAiY3JlZGl0cyIgb3IgImxpY2Vuc2UiIGZvciBtb3JlIGluZm9ybWF0aW9uLgorICAgPj4+IGltcG9ydCBzeXMKKyAgID4+PiBzeXMucGF0aAorICAgWycnLCAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zJywgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMy9wbGF0LWxpbnV4MicsCisgICAgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMy9saWItdGsnLCAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zL2xpYi1keW5sb2FkJywKKyAgICAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zL3NpdGUtcGFja2FnZXMnXQorICAgPj4+CisKK1RoZSBudWxsIHN0cmluZyBpbiBgYHN5cy5wYXRoYGAgcmVwcmVzZW50cyB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworVGhlIGV4cGVjdGVkIGNvbnZlbnRpb24gZm9yIGxvY2FsbHkgaW5zdGFsbGVkIHBhY2thZ2VzIGlzIHRvIHB1dCB0aGVtIGluIHRoZQorOmZpbGU6YHsuLi59L3NpdGUtcGFja2FnZXMvYCBkaXJlY3RvcnksIGJ1dCB5b3UgbWF5IHdhbnQgdG8gaW5zdGFsbCBQeXRob24KK21vZHVsZXMgaW50byBzb21lIGFyYml0cmFyeSBkaXJlY3RvcnkuICBGb3IgZXhhbXBsZSwgeW91ciBzaXRlIG1heSBoYXZlIGEKK2NvbnZlbnRpb24gb2Yga2VlcGluZyBhbGwgc29mdHdhcmUgcmVsYXRlZCB0byB0aGUgd2ViIHNlcnZlciB1bmRlciA6ZmlsZTpgL3d3d2AuCitBZGQtb24gUHl0aG9uIG1vZHVsZXMgbWlnaHQgdGhlbiBiZWxvbmcgaW4gOmZpbGU6YC93d3cvcHl0aG9uYCwgYW5kIGluIG9yZGVyIHRvCitpbXBvcnQgdGhlbSwgdGhpcyBkaXJlY3RvcnkgbXVzdCBiZSBhZGRlZCB0byBgYHN5cy5wYXRoYGAuICBUaGVyZSBhcmUgc2V2ZXJhbAorZGlmZmVyZW50IHdheXMgdG8gYWRkIHRoZSBkaXJlY3RvcnkuCisKK1RoZSBtb3N0IGNvbnZlbmllbnQgd2F5IGlzIHRvIGFkZCBhIHBhdGggY29uZmlndXJhdGlvbiBmaWxlIHRvIGEgZGlyZWN0b3J5Cit0aGF0J3MgYWxyZWFkeSBvbiBQeXRob24ncyBwYXRoLCB1c3VhbGx5IHRvIHRoZSA6ZmlsZTpgLi4uL3NpdGUtcGFja2FnZXMvYAorZGlyZWN0b3J5LiAgUGF0aCBjb25maWd1cmF0aW9uIGZpbGVzIGhhdmUgYW4gZXh0ZW5zaW9uIG9mIDpmaWxlOmAucHRoYCwgYW5kIGVhY2gKK2xpbmUgbXVzdCBjb250YWluIGEgc2luZ2xlIHBhdGggdGhhdCB3aWxsIGJlIGFwcGVuZGVkIHRvIGBgc3lzLnBhdGhgYC4gIChCZWNhdXNlCit0aGUgbmV3IHBhdGhzIGFyZSBhcHBlbmRlZCB0byBgYHN5cy5wYXRoYGAsIG1vZHVsZXMgaW4gdGhlIGFkZGVkIGRpcmVjdG9yaWVzCit3aWxsIG5vdCBvdmVycmlkZSBzdGFuZGFyZCBtb2R1bGVzLiAgVGhpcyBtZWFucyB5b3UgY2FuJ3QgdXNlIHRoaXMgbWVjaGFuaXNtIGZvcgoraW5zdGFsbGluZyBmaXhlZCB2ZXJzaW9ucyBvZiBzdGFuZGFyZCBtb2R1bGVzLikKKworUGF0aHMgY2FuIGJlIGFic29sdXRlIG9yIHJlbGF0aXZlLCBpbiB3aGljaCBjYXNlIHRoZXkncmUgcmVsYXRpdmUgdG8gdGhlCitkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgOmZpbGU6YC5wdGhgIGZpbGUuICBTZWUgdGhlIGRvY3VtZW50YXRpb24gb2YKK3RoZSA6bW9kOmBzaXRlYCBtb2R1bGUgZm9yIG1vcmUgaW5mb3JtYXRpb24uCisKK0Egc2xpZ2h0bHkgbGVzcyBjb252ZW5pZW50IHdheSBpcyB0byBlZGl0IHRoZSA6ZmlsZTpgc2l0ZS5weWAgZmlsZSBpbiBQeXRob24ncworc3RhbmRhcmQgbGlicmFyeSwgYW5kIG1vZGlmeSBgYHN5cy5wYXRoYGAuICA6ZmlsZTpgc2l0ZS5weWAgaXMgYXV0b21hdGljYWxseQoraW1wb3J0ZWQgd2hlbiB0aGUgUHl0aG9uIGludGVycHJldGVyIGlzIGV4ZWN1dGVkLCB1bmxlc3MgdGhlIDpvcHRpb246YC1TYCBzd2l0Y2gKK2lzIHN1cHBsaWVkIHRvIHN1cHByZXNzIHRoaXMgYmVoYXZpb3VyLiAgU28geW91IGNvdWxkIHNpbXBseSBlZGl0Cis6ZmlsZTpgc2l0ZS5weWAgYW5kIGFkZCB0d28gbGluZXMgdG8gaXQ6OgorCisgICBpbXBvcnQgc3lzCisgICBzeXMucGF0aC5hcHBlbmQoJy93d3cvcHl0aG9uLycpCisKK0hvd2V2ZXIsIGlmIHlvdSByZWluc3RhbGwgdGhlIHNhbWUgbWFqb3IgdmVyc2lvbiBvZiBQeXRob24gKHBlcmhhcHMgd2hlbgordXBncmFkaW5nIGZyb20gMi4yIHRvIDIuMi4yLCBmb3IgZXhhbXBsZSkgOmZpbGU6YHNpdGUucHlgIHdpbGwgYmUgb3ZlcndyaXR0ZW4gYnkKK3RoZSBzdG9jayB2ZXJzaW9uLiAgWW91J2QgaGF2ZSB0byByZW1lbWJlciB0aGF0IGl0IHdhcyBtb2RpZmllZCBhbmQgc2F2ZSBhIGNvcHkKK2JlZm9yZSBkb2luZyB0aGUgaW5zdGFsbGF0aW9uLgorCitUaGVyZSBhcmUgdHdvIGVudmlyb25tZW50IHZhcmlhYmxlcyB0aGF0IGNhbiBtb2RpZnkgYGBzeXMucGF0aGBgLgorOmVudnZhcjpgUFlUSE9OSE9NRWAgc2V0cyBhbiBhbHRlcm5hdGUgdmFsdWUgZm9yIHRoZSBwcmVmaXggb2YgdGhlIFB5dGhvbgoraW5zdGFsbGF0aW9uLiAgRm9yIGV4YW1wbGUsIGlmIDplbnZ2YXI6YFBZVEhPTkhPTUVgIGlzIHNldCB0byBgYC93d3cvcHl0aG9uYGAsCit0aGUgc2VhcmNoIHBhdGggd2lsbCBiZSBzZXQgdG8gYGBbJycsICcvd3d3L3B5dGhvbi9saWIvcHl0aG9uWC5ZLycsCisnL3d3dy9weXRob24vbGliL3B5dGhvblguWS9wbGF0LWxpbnV4MicsIC4uLl1gYC4KKworVGhlIDplbnZ2YXI6YFBZVEhPTlBBVEhgIHZhcmlhYmxlIGNhbiBiZSBzZXQgdG8gYSBsaXN0IG9mIHBhdGhzIHRoYXQgd2lsbCBiZQorYWRkZWQgdG8gdGhlIGJlZ2lubmluZyBvZiBgYHN5cy5wYXRoYGAuICBGb3IgZXhhbXBsZSwgaWYgOmVudnZhcjpgUFlUSE9OUEFUSGAgaXMKK3NldCB0byBgYC93d3cvcHl0aG9uOi9vcHQvcHlgYCwgdGhlIHNlYXJjaCBwYXRoIHdpbGwgYmVnaW4gd2l0aAorYGBbJy93d3cvcHl0aG9uJywgJy9vcHQvcHknXWBgLiAgKE5vdGUgdGhhdCBkaXJlY3RvcmllcyBtdXN0IGV4aXN0IGluIG9yZGVyIHRvCitiZSBhZGRlZCB0byBgYHN5cy5wYXRoYGA7IHRoZSA6bW9kOmBzaXRlYCBtb2R1bGUgcmVtb3ZlcyBwYXRocyB0aGF0IGRvbid0CitleGlzdC4pCisKK0ZpbmFsbHksIGBgc3lzLnBhdGhgYCBpcyBqdXN0IGEgcmVndWxhciBQeXRob24gbGlzdCwgc28gYW55IFB5dGhvbiBhcHBsaWNhdGlvbgorY2FuIG1vZGlmeSBpdCBieSBhZGRpbmcgb3IgcmVtb3ZpbmcgZW50cmllcy4KKworCisuLiBfaW5zdC1jb25maWctZmlsZXM6CisKK0Rpc3R1dGlscyBDb25maWd1cmF0aW9uIEZpbGVzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitBcyBtZW50aW9uZWQgYWJvdmUsIHlvdSBjYW4gdXNlIERpc3R1dGlscyBjb25maWd1cmF0aW9uIGZpbGVzIHRvIHJlY29yZCBwZXJzb25hbAorb3Igc2l0ZSBwcmVmZXJlbmNlcyBmb3IgYW55IERpc3R1dGlscyBvcHRpb25zLiAgVGhhdCBpcywgYW55IG9wdGlvbiB0byBhbnkKK2NvbW1hbmQgY2FuIGJlIHN0b3JlZCBpbiBvbmUgb2YgdHdvIG9yIHRocmVlIChkZXBlbmRpbmcgb24geW91ciBwbGF0Zm9ybSkKK2NvbmZpZ3VyYXRpb24gZmlsZXMsIHdoaWNoIHdpbGwgYmUgY29uc3VsdGVkIGJlZm9yZSB0aGUgY29tbWFuZC1saW5lIGlzIHBhcnNlZC4KK1RoaXMgbWVhbnMgdGhhdCBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgb3ZlcnJpZGUgZGVmYXVsdCB2YWx1ZXMsIGFuZCB0aGUKK2NvbW1hbmQtbGluZSB3aWxsIGluIHR1cm4gb3ZlcnJpZGUgY29uZmlndXJhdGlvbiBmaWxlcy4gIEZ1cnRoZXJtb3JlLCBpZgorbXVsdGlwbGUgY29uZmlndXJhdGlvbiBmaWxlcyBhcHBseSwgdmFsdWVzIGZyb20gImVhcmxpZXIiIGZpbGVzIGFyZSBvdmVycmlkZGVuCitieSAibGF0ZXIiIGZpbGVzLgorCisKKy4uIF9pbnN0LWNvbmZpZy1maWxlbmFtZXM6CisKK0xvY2F0aW9uIGFuZCBuYW1lcyBvZiBjb25maWcgZmlsZXMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIG5hbWVzIGFuZCBsb2NhdGlvbnMgb2YgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdmFyeSBzbGlnaHRseSBhY3Jvc3MKK3BsYXRmb3Jtcy4gIE9uIFVuaXggYW5kIE1hYyBPUyBYLCB0aGUgdGhyZWUgY29uZmlndXJhdGlvbiBmaWxlcyAoaW4gdGhlIG9yZGVyCit0aGV5IGFyZSBwcm9jZXNzZWQpIGFyZToKKworKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgVHlwZSBvZiBmaWxlIHwgTG9jYXRpb24gYW5kIGZpbGVuYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyB8CisrPT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09KworfCBzeXN0ZW0gICAgICAgfCA6ZmlsZTpge3ByZWZpeH0vbGliL3B5dGhvbnt2ZXJ9L2Rpc3R1dGlscy9kaXN0dXRpbHMuY2ZnYCB8IFwoMSkgIHwKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IHBlcnNvbmFsICAgICB8IDpmaWxlOmAkSE9NRS8ucHlkaXN0dXRpbHMuY2ZnYCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgXCgyKSAgfAorKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgbG9jYWwgICAgICAgIHwgOmZpbGU6YHNldHVwLmNmZ2AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcKDMpICB8CisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworCitBbmQgb24gV2luZG93cywgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgYXJlOgorCisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBUeXBlIG9mIGZpbGUgfCBMb2NhdGlvbiBhbmQgZmlsZW5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzIHwKKys9PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rCit8IHN5c3RlbSAgICAgICB8IDpmaWxlOmB7cHJlZml4fVxcTGliXFxkaXN0dXRpbHNcXGRpc3R1dGlscy5jZmdgIHwgXCg0KSAgfAorKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgcGVyc29uYWwgICAgIHwgOmZpbGU6YCVIT01FJVxccHlkaXN0dXRpbHMuY2ZnYCAgICAgICAgICAgICAgICAgfCBcKDUpICB8CisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBsb2NhbCAgICAgICAgfCA6ZmlsZTpgc2V0dXAuY2ZnYCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFwoMykgIHwKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCisKK09uIGFsbCBwbGF0Zm9ybXMsIHRoZSAicGVyc29uYWwiIGZpbGUgY2FuIGJlIHRlbXBvcmFyaWx5IGRpc2FibGVkIGJ5CitwYXNzaW5nIHRoZSBgLS1uby11c2VyLWNmZ2Agb3B0aW9uLgorCitOb3RlczoKKworKDEpCisgICBTdHJpY3RseSBzcGVha2luZywgdGhlIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb24gZmlsZSBsaXZlcyBpbiB0aGUgZGlyZWN0b3J5CisgICB3aGVyZSB0aGUgRGlzdHV0aWxzIGFyZSBpbnN0YWxsZWQ7IHVuZGVyIFB5dGhvbiAxLjYgYW5kIGxhdGVyIG9uIFVuaXgsIHRoaXMgaXMKKyAgIGFzIHNob3duLiBGb3IgUHl0aG9uIDEuNS4yLCB0aGUgRGlzdHV0aWxzIHdpbGwgbm9ybWFsbHkgYmUgaW5zdGFsbGVkIHRvCisgICA6ZmlsZTpge3ByZWZpeH0vbGliL3B5dGhvbjEuNS9zaXRlLXBhY2thZ2VzL2Rpc3R1dGlsc2AsIHNvIHRoZSBzeXN0ZW0KKyAgIGNvbmZpZ3VyYXRpb24gZmlsZSBzaG91bGQgYmUgcHV0IHRoZXJlIHVuZGVyIFB5dGhvbiAxLjUuMi4KKworKDIpCisgICBPbiBVbml4LCBpZiB0aGUgOmVudnZhcjpgSE9NRWAgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgbm90IGRlZmluZWQsIHRoZSB1c2VyJ3MKKyAgIGhvbWUgZGlyZWN0b3J5IHdpbGwgYmUgZGV0ZXJtaW5lZCB3aXRoIHRoZSA6ZnVuYzpgZ2V0cHd1aWRgIGZ1bmN0aW9uIGZyb20gdGhlCisgICBzdGFuZGFyZCA6bW9kOmBwd2RgIG1vZHVsZS4gVGhpcyBpcyBkb25lIGJ5IHRoZSA6ZnVuYzpgb3MucGF0aC5leHBhbmR1c2VyYAorICAgZnVuY3Rpb24gdXNlZCBieSBEaXN0dXRpbHMuCisKKygzKQorICAgSS5lLiwgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5ICh1c3VhbGx5IHRoZSBsb2NhdGlvbiBvZiB0aGUgc2V0dXAgc2NyaXB0KS4KKworKDQpCisgICAoU2VlIGFsc28gbm90ZSAoMSkuKSAgVW5kZXIgUHl0aG9uIDEuNiBhbmQgbGF0ZXIsIFB5dGhvbidzIGRlZmF1bHQgImluc3RhbGxhdGlvbgorICAgcHJlZml4IiBpcyA6ZmlsZTpgQzpcXFB5dGhvbmAsIHNvIHRoZSBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlIGlzIG5vcm1hbGx5CisgICA6ZmlsZTpgQzpcXFB5dGhvblxcTGliXFxkaXN0dXRpbHNcXGRpc3R1dGlscy5jZmdgLiBVbmRlciBQeXRob24gMS41LjIsIHRoZQorICAgZGVmYXVsdCBwcmVmaXggd2FzIDpmaWxlOmBDOlxcUHJvZ3JhbSBGaWxlc1xcUHl0aG9uYCwgYW5kIHRoZSBEaXN0dXRpbHMgd2VyZSBub3QKKyAgIHBhcnQgb2YgdGhlIHN0YW5kYXJkIGxpYnJhcnktLS1zbyB0aGUgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSB3b3VsZCBiZQorICAgOmZpbGU6YEM6XFxQcm9ncmFtIEZpbGVzXFxQeXRob25cXGRpc3R1dGlsc1xcZGlzdHV0aWxzLmNmZ2AgaW4gYSBzdGFuZGFyZCBQeXRob24KKyAgIDEuNS4yIGluc3RhbGxhdGlvbiB1bmRlciBXaW5kb3dzLgorCisoNSkKKyAgIE9uIFdpbmRvd3MsIGlmIHRoZSA6ZW52dmFyOmBIT01FYCBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBub3QgZGVmaW5lZCwKKyAgIDplbnZ2YXI6YFVTRVJQUk9GSUxFYCB0aGVuIDplbnZ2YXI6YEhPTUVEUklWRWAgYW5kIDplbnZ2YXI6YEhPTUVQQVRIYCB3aWxsCisgICBiZSB0cmllZC4gVGhpcyBpcyBkb25lIGJ5IHRoZSA6ZnVuYzpgb3MucGF0aC5leHBhbmR1c2VyYCBmdW5jdGlvbiB1c2VkCisgICBieSBEaXN0dXRpbHMuCisKKworLi4gX2luc3QtY29uZmlnLXN5bnRheDoKKworU3ludGF4IG9mIGNvbmZpZyBmaWxlcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgRGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24gZmlsZXMgYWxsIGhhdmUgdGhlIHNhbWUgc3ludGF4LiAgVGhlIGNvbmZpZyBmaWxlcworYXJlIGdyb3VwZWQgaW50byBzZWN0aW9ucy4gIFRoZXJlIGlzIG9uZSBzZWN0aW9uIGZvciBlYWNoIERpc3R1dGlscyBjb21tYW5kLAorcGx1cyBhIGBgZ2xvYmFsYGAgc2VjdGlvbiBmb3IgZ2xvYmFsIG9wdGlvbnMgdGhhdCBhZmZlY3QgZXZlcnkgY29tbWFuZC4gIEVhY2gKK3NlY3Rpb24gY29uc2lzdHMgb2Ygb25lIG9wdGlvbiBwZXIgbGluZSwgc3BlY2lmaWVkIGFzIGBgb3B0aW9uPXZhbHVlYGAuCisKK0ZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIGlzIGEgY29tcGxldGUgY29uZmlnIGZpbGUgdGhhdCBqdXN0IGZvcmNlcyBhbGwKK2NvbW1hbmRzIHRvIHJ1biBxdWlldGx5IGJ5IGRlZmF1bHQ6OgorCisgICBbZ2xvYmFsXQorICAgdmVyYm9zZT0wCisKK0lmIHRoaXMgaXMgaW5zdGFsbGVkIGFzIHRoZSBzeXN0ZW0gY29uZmlnIGZpbGUsIGl0IHdpbGwgYWZmZWN0IGFsbCBwcm9jZXNzaW5nIG9mCithbnkgUHl0aG9uIG1vZHVsZSBkaXN0cmlidXRpb24gYnkgYW55IHVzZXIgb24gdGhlIGN1cnJlbnQgc3lzdGVtLiAgSWYgaXQgaXMKK2luc3RhbGxlZCBhcyB5b3VyIHBlcnNvbmFsIGNvbmZpZyBmaWxlIChvbiBzeXN0ZW1zIHRoYXQgc3VwcG9ydCB0aGVtKSwgaXQgd2lsbAorYWZmZWN0IG9ubHkgbW9kdWxlIGRpc3RyaWJ1dGlvbnMgcHJvY2Vzc2VkIGJ5IHlvdS4gIEFuZCBpZiBpdCBpcyB1c2VkIGFzIHRoZQorOmZpbGU6YHNldHVwLmNmZ2AgZm9yIGEgcGFydGljdWxhciBtb2R1bGUgZGlzdHJpYnV0aW9uLCBpdCBhZmZlY3RzIG9ubHkgdGhhdAorZGlzdHJpYnV0aW9uLgorCitZb3UgY291bGQgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgImJ1aWxkIGJhc2UiIGRpcmVjdG9yeSBhbmQgbWFrZSB0aGUKKzpjb21tYW5kOmBidWlsZFwqYCBjb21tYW5kcyBhbHdheXMgZm9yY2libHkgcmVidWlsZCBhbGwgZmlsZXMgd2l0aCB0aGUKK2ZvbGxvd2luZzo6CisKKyAgIFtidWlsZF0KKyAgIGJ1aWxkLWJhc2U9YmxpYgorICAgZm9yY2U9MQorCit3aGljaCBjb3JyZXNwb25kcyB0byB0aGUgY29tbWFuZC1saW5lIGFyZ3VtZW50cyA6OgorCisgICBweXRob24gc2V0dXAucHkgYnVpbGQgLS1idWlsZC1iYXNlPWJsaWIgLS1mb3JjZQorCitleGNlcHQgdGhhdCBpbmNsdWRpbmcgdGhlIDpjb21tYW5kOmBidWlsZGAgY29tbWFuZCBvbiB0aGUgY29tbWFuZC1saW5lIG1lYW5zCit0aGF0IGNvbW1hbmQgd2lsbCBiZSBydW4uICBJbmNsdWRpbmcgYSBwYXJ0aWN1bGFyIGNvbW1hbmQgaW4gY29uZmlnIGZpbGVzIGhhcyBubworc3VjaCBpbXBsaWNhdGlvbjsgaXQgb25seSBtZWFucyB0aGF0IGlmIHRoZSBjb21tYW5kIGlzIHJ1biwgdGhlIG9wdGlvbnMgaW4gdGhlCitjb25maWcgZmlsZSB3aWxsIGFwcGx5LiAgKE9yIGlmIG90aGVyIGNvbW1hbmRzIHRoYXQgZGVyaXZlIHZhbHVlcyBmcm9tIGl0IGFyZQorcnVuLCB0aGV5IHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlIGNvbmZpZyBmaWxlLikKKworWW91IGNhbiBmaW5kIG91dCB0aGUgY29tcGxldGUgbGlzdCBvZiBvcHRpb25zIGZvciBhbnkgY29tbWFuZCB1c2luZyB0aGUKKzpvcHRpb246YC0taGVscGAgb3B0aW9uLCBlLmcuOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0taGVscAorCithbmQgeW91IGNhbiBmaW5kIG91dCB0aGUgY29tcGxldGUgbGlzdCBvZiBnbG9iYWwgb3B0aW9ucyBieSB1c2luZworOm9wdGlvbjpgLS1oZWxwYCB3aXRob3V0IGEgY29tbWFuZDo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSAtLWhlbHAKKworU2VlIGFsc28gdGhlICJSZWZlcmVuY2UiIHNlY3Rpb24gb2YgdGhlICJEaXN0cmlidXRpbmcgUHl0aG9uIE1vZHVsZXMiIG1hbnVhbC4KKworCisuLiBfaW5zdC1idWlsZGluZy1leHQ6CisKK0J1aWxkaW5nIEV4dGVuc2lvbnM6IFRpcHMgYW5kIFRyaWNrcworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK1doZW5ldmVyIHBvc3NpYmxlLCB0aGUgRGlzdHV0aWxzIHRyeSB0byB1c2UgdGhlIGNvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24gbWFkZQorYXZhaWxhYmxlIGJ5IHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgdXNlZCB0byBydW4gdGhlIDpmaWxlOmBzZXR1cC5weWAgc2NyaXB0LgorRm9yIGV4YW1wbGUsIHRoZSBzYW1lIGNvbXBpbGVyIGFuZCBsaW5rZXIgZmxhZ3MgdXNlZCB0byBjb21waWxlIFB5dGhvbiB3aWxsIGFsc28KK2JlIHVzZWQgZm9yIGNvbXBpbGluZyBleHRlbnNpb25zLiAgVXN1YWxseSB0aGlzIHdpbGwgd29yayB3ZWxsLCBidXQgaW4KK2NvbXBsaWNhdGVkIHNpdHVhdGlvbnMgdGhpcyBtaWdodCBiZSBpbmFwcHJvcHJpYXRlLiAgVGhpcyBzZWN0aW9uIGRpc2N1c3NlcyBob3cKK3RvIG92ZXJyaWRlIHRoZSB1c3VhbCBEaXN0dXRpbHMgYmVoYXZpb3VyLgorCisKKy4uIF9pbnN0LXR3ZWFrLWZsYWdzOgorCitUd2Vha2luZyBjb21waWxlci9saW5rZXIgZmxhZ3MKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitDb21waWxpbmcgYSBQeXRob24gZXh0ZW5zaW9uIHdyaXR0ZW4gaW4gQyBvciBDKysgd2lsbCBzb21ldGltZXMgcmVxdWlyZQorc3BlY2lmeWluZyBjdXN0b20gZmxhZ3MgZm9yIHRoZSBjb21waWxlciBhbmQgbGlua2VyIGluIG9yZGVyIHRvIHVzZSBhIHBhcnRpY3VsYXIKK2xpYnJhcnkgb3IgcHJvZHVjZSBhIHNwZWNpYWwga2luZCBvZiBvYmplY3QgY29kZS4gVGhpcyBpcyBlc3BlY2lhbGx5IHRydWUgaWYgdGhlCitleHRlbnNpb24gaGFzbid0IGJlZW4gdGVzdGVkIG9uIHlvdXIgcGxhdGZvcm0sIG9yIGlmIHlvdSdyZSB0cnlpbmcgdG8KK2Nyb3NzLWNvbXBpbGUgUHl0aG9uLgorCitJbiB0aGUgbW9zdCBnZW5lcmFsIGNhc2UsIHRoZSBleHRlbnNpb24gYXV0aG9yIG1pZ2h0IGhhdmUgZm9yZXNlZW4gdGhhdAorY29tcGlsaW5nIHRoZSBleHRlbnNpb25zIHdvdWxkIGJlIGNvbXBsaWNhdGVkLCBhbmQgcHJvdmlkZWQgYSA6ZmlsZTpgU2V0dXBgIGZpbGUKK2ZvciB5b3UgdG8gZWRpdC4gIFRoaXMgd2lsbCBsaWtlbHkgb25seSBiZSBkb25lIGlmIHRoZSBtb2R1bGUgZGlzdHJpYnV0aW9uCitjb250YWlucyBtYW55IHNlcGFyYXRlIGV4dGVuc2lvbiBtb2R1bGVzLCBvciBpZiB0aGV5IG9mdGVuIHJlcXVpcmUgZWxhYm9yYXRlCitzZXRzIG9mIGNvbXBpbGVyIGZsYWdzIGluIG9yZGVyIHRvIHdvcmsuCisKK0EgOmZpbGU6YFNldHVwYCBmaWxlLCBpZiBwcmVzZW50LCBpcyBwYXJzZWQgaW4gb3JkZXIgdG8gZ2V0IGEgbGlzdCBvZiBleHRlbnNpb25zCit0byBidWlsZC4gIEVhY2ggbGluZSBpbiBhIDpmaWxlOmBTZXR1cGAgZGVzY3JpYmVzIGEgc2luZ2xlIG1vZHVsZS4gIExpbmVzIGhhdmUKK3RoZSBmb2xsb3dpbmcgc3RydWN0dXJlOjoKKworICAgbW9kdWxlIC4uLiBbc291cmNlZmlsZSAuLi5dIFtjcHBhcmcgLi4uXSBbbGlicmFyeSAuLi5dCisKKworTGV0J3MgZXhhbWluZSBlYWNoIG9mIHRoZSBmaWVsZHMgaW4gdHVybi4KKworKiAqbW9kdWxlKiBpcyB0aGUgbmFtZSBvZiB0aGUgZXh0ZW5zaW9uIG1vZHVsZSB0byBiZSBidWlsdCwgYW5kIHNob3VsZCBiZSBhCisgIHZhbGlkIFB5dGhvbiBpZGVudGlmaWVyLiAgWW91IGNhbid0IGp1c3QgY2hhbmdlIHRoaXMgaW4gb3JkZXIgdG8gcmVuYW1lIGEgbW9kdWxlCisgIChlZGl0cyB0byB0aGUgc291cmNlIGNvZGUgd291bGQgYWxzbyBiZSBuZWVkZWQpLCBzbyB0aGlzIHNob3VsZCBiZSBsZWZ0IGFsb25lLgorCisqICpzb3VyY2VmaWxlKiBpcyBhbnl0aGluZyB0aGF0J3MgbGlrZWx5IHRvIGJlIGEgc291cmNlIGNvZGUgZmlsZSwgYXQgbGVhc3QKKyAganVkZ2luZyBieSB0aGUgZmlsZW5hbWUuICBGaWxlbmFtZXMgZW5kaW5nIGluIDpmaWxlOmAuY2AgYXJlIGFzc3VtZWQgdG8gYmUKKyAgd3JpdHRlbiBpbiBDLCBmaWxlbmFtZXMgZW5kaW5nIGluIDpmaWxlOmAuQ2AsIDpmaWxlOmAuY2NgLCBhbmQgOmZpbGU6YC5jKytgIGFyZQorICBhc3N1bWVkIHRvIGJlIEMrKywgYW5kIGZpbGVuYW1lcyBlbmRpbmcgaW4gOmZpbGU6YC5tYCBvciA6ZmlsZTpgLm1tYCBhcmUgYXNzdW1lZAorICB0byBiZSBpbiBPYmplY3RpdmUgQy4KKworKiAqY3BwYXJnKiBpcyBhbiBhcmd1bWVudCBmb3IgdGhlIEMgcHJlcHJvY2Vzc29yLCAgYW5kIGlzIGFueXRoaW5nIHN0YXJ0aW5nIHdpdGgKKyAgOm9wdGlvbjpgLUlgLCA6b3B0aW9uOmAtRGAsIDpvcHRpb246YC1VYCBvciA6b3B0aW9uOmAtQ2AuCisKKyogKmxpYnJhcnkqIGlzIGFueXRoaW5nIGVuZGluZyBpbiA6ZmlsZTpgLmFgIG9yIGJlZ2lubmluZyB3aXRoIDpvcHRpb246YC1sYCBvcgorICA6b3B0aW9uOmAtTGAuCisKK0lmIGEgcGFydGljdWxhciBwbGF0Zm9ybSByZXF1aXJlcyBhIHNwZWNpYWwgbGlicmFyeSBvbiB5b3VyIHBsYXRmb3JtLCB5b3UgY2FuCithZGQgaXQgYnkgZWRpdGluZyB0aGUgOmZpbGU6YFNldHVwYCBmaWxlIGFuZCBydW5uaW5nIGBgcHl0aG9uIHNldHVwLnB5IGJ1aWxkYGAuCitGb3IgZXhhbXBsZSwgaWYgdGhlIG1vZHVsZSBkZWZpbmVkIGJ5IHRoZSBsaW5lIDo6CisKKyAgIGZvbyBmb29tb2R1bGUuYworCittdXN0IGJlIGxpbmtlZCB3aXRoIHRoZSBtYXRoIGxpYnJhcnkgOmZpbGU6YGxpYm0uYWAgb24geW91ciBwbGF0Zm9ybSwgc2ltcGx5IGFkZAorOm9wdGlvbjpgLWxtYCB0byB0aGUgbGluZTo6CisKKyAgIGZvbyBmb29tb2R1bGUuYyAtbG0KKworQXJiaXRyYXJ5IHN3aXRjaGVzIGludGVuZGVkIGZvciB0aGUgY29tcGlsZXIgb3IgdGhlIGxpbmtlciBjYW4gYmUgc3VwcGxpZWQgd2l0aAordGhlIDpvcHRpb246YC1YY29tcGlsZXJgICphcmcqIGFuZCA6b3B0aW9uOmAtWGxpbmtlcmAgKmFyZyogb3B0aW9uczo6CisKKyAgIGZvbyBmb29tb2R1bGUuYyAtWGNvbXBpbGVyIC1vMzIgLVhsaW5rZXIgLXNoYXJlZCAtbG0KKworVGhlIG5leHQgb3B0aW9uIGFmdGVyIDpvcHRpb246YC1YY29tcGlsZXJgIGFuZCA6b3B0aW9uOmAtWGxpbmtlcmAgd2lsbCBiZQorYXBwZW5kZWQgdG8gdGhlIHByb3BlciBjb21tYW5kIGxpbmUsIHNvIGluIHRoZSBhYm92ZSBleGFtcGxlIHRoZSBjb21waWxlciB3aWxsCitiZSBwYXNzZWQgdGhlIDpvcHRpb246YC1vMzJgIG9wdGlvbiwgYW5kIHRoZSBsaW5rZXIgd2lsbCBiZSBwYXNzZWQKKzpvcHRpb246YC1zaGFyZWRgLiAgSWYgYSBjb21waWxlciBvcHRpb24gcmVxdWlyZXMgYW4gYXJndW1lbnQsIHlvdSdsbCBoYXZlIHRvCitzdXBwbHkgbXVsdGlwbGUgOm9wdGlvbjpgLVhjb21waWxlcmAgb3B0aW9uczsgZm9yIGV4YW1wbGUsIHRvIHBhc3MgYGAteCBjKytgYAordGhlIDpmaWxlOmBTZXR1cGAgZmlsZSB3b3VsZCBoYXZlIHRvIGNvbnRhaW4gYGAtWGNvbXBpbGVyIC14IC1YY29tcGlsZXIgYysrYGAuCisKK0NvbXBpbGVyIGZsYWdzIGNhbiBhbHNvIGJlIHN1cHBsaWVkIHRocm91Z2ggc2V0dGluZyB0aGUgOmVudnZhcjpgQ0ZMQUdTYAorZW52aXJvbm1lbnQgdmFyaWFibGUuICBJZiBzZXQsIHRoZSBjb250ZW50cyBvZiA6ZW52dmFyOmBDRkxBR1NgIHdpbGwgYmUgYWRkZWQgdG8KK3RoZSBjb21waWxlciBmbGFncyBzcGVjaWZpZWQgaW4gdGhlICA6ZmlsZTpgU2V0dXBgIGZpbGUuCisKKworLi4gX2luc3Qtbm9uLW1zLWNvbXBpbGVyczoKKworVXNpbmcgbm9uLU1pY3Jvc29mdCBjb21waWxlcnMgb24gV2luZG93cworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiBzZWN0aW9uYXV0aG9yOjogUmVuZSBMaWVic2NoZXIgPFIuTGllYnNjaGVyQGdteC5kZT4KKworCisKK0JvcmxhbmQvQ29kZUdlYXIgQysrCiteXl5eXl5eXl5eXl5eXl5eXl5eXgorCitUaGlzIHN1YnNlY3Rpb24gZGVzY3JpYmVzIHRoZSBuZWNlc3Nhcnkgc3RlcHMgdG8gdXNlIERpc3R1dGlscyB3aXRoIHRoZSBCb3JsYW5kCitDKysgY29tcGlsZXIgdmVyc2lvbiA1LjUuICBGaXJzdCB5b3UgaGF2ZSB0byBrbm93IHRoYXQgQm9ybGFuZCdzIG9iamVjdCBmaWxlCitmb3JtYXQgKE9NRikgaXMgZGlmZmVyZW50IGZyb20gdGhlIGZvcm1hdCB1c2VkIGJ5IHRoZSBQeXRob24gdmVyc2lvbiB5b3UgY2FuCitkb3dubG9hZCBmcm9tIHRoZSBQeXRob24gb3IgQWN0aXZlU3RhdGUgV2ViIHNpdGUuICAoUHl0aG9uIGlzIGJ1aWx0IHdpdGgKK01pY3Jvc29mdCBWaXN1YWwgQysrLCB3aGljaCB1c2VzIENPRkYgYXMgdGhlIG9iamVjdCBmaWxlIGZvcm1hdC4pIEZvciB0aGlzCityZWFzb24geW91IGhhdmUgdG8gY29udmVydCBQeXRob24ncyBsaWJyYXJ5IDpmaWxlOmBweXRob24yNS5saWJgIGludG8gdGhlCitCb3JsYW5kIGZvcm1hdC4gIFlvdSBjYW4gZG8gdGhpcyBhcyBmb2xsb3dzOgorCisuLiBTaG91bGQgd2UgbWVudGlvbiB0aGF0IHVzZXJzIGhhdmUgdG8gY3JlYXRlIGNmZy1maWxlcyBmb3IgdGhlIGNvbXBpbGVyPworLi4gc2VlIGFsc28gaHR0cDovL2NvbW11bml0eS5ib3JsYW5kLmNvbS9hcnRpY2xlLzAsMTQxMCwyMTIwNSwwMC5odG1sCisKKzo6CisKKyAgIGNvZmYyb21mIHB5dGhvbjI1LmxpYiBweXRob24yNV9iY3BwLmxpYgorCitUaGUgOmZpbGU6YGNvZmYyb21mYCBwcm9ncmFtIGNvbWVzIHdpdGggdGhlIEJvcmxhbmQgY29tcGlsZXIuICBUaGUgZmlsZQorOmZpbGU6YHB5dGhvbjI1LmxpYmAgaXMgaW4gdGhlIDpmaWxlOmBMaWJzYCBkaXJlY3Rvcnkgb2YgeW91ciBQeXRob24KK2luc3RhbGxhdGlvbi4gIElmIHlvdXIgZXh0ZW5zaW9uIHVzZXMgb3RoZXIgbGlicmFyaWVzICh6bGliLCAuLi4pIHlvdSBoYXZlIHRvCitjb252ZXJ0IHRoZW0gdG9vLgorCitUaGUgY29udmVydGVkIGZpbGVzIGhhdmUgdG8gcmVzaWRlIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIGFzIHRoZSBub3JtYWwKK2xpYnJhcmllcy4KKworSG93IGRvZXMgRGlzdHV0aWxzIG1hbmFnZSB0byB1c2UgdGhlc2UgbGlicmFyaWVzIHdpdGggdGhlaXIgY2hhbmdlZCBuYW1lcz8gIElmCit0aGUgZXh0ZW5zaW9uIG5lZWRzIGEgbGlicmFyeSAoZWcuIDpmaWxlOmBmb29gKSBEaXN0dXRpbHMgY2hlY2tzIGZpcnN0IGlmIGl0CitmaW5kcyBhIGxpYnJhcnkgd2l0aCBzdWZmaXggOmZpbGU6YF9iY3BwYCAoZWcuIDpmaWxlOmBmb29fYmNwcC5saWJgKSBhbmQgdGhlbgordXNlcyB0aGlzIGxpYnJhcnkuICBJbiB0aGUgY2FzZSBpdCBkb2Vzbid0IGZpbmQgc3VjaCBhIHNwZWNpYWwgbGlicmFyeSBpdCB1c2VzCit0aGUgZGVmYXVsdCBuYW1lICg6ZmlsZTpgZm9vLmxpYmAuKSBbI11fCisKK1RvIGxldCBEaXN0dXRpbHMgY29tcGlsZSB5b3VyIGV4dGVuc2lvbiB3aXRoIEJvcmxhbmQgQysrIHlvdSBub3cgaGF2ZSB0byB0eXBlOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tY29tcGlsZXI9YmNwcAorCitJZiB5b3Ugd2FudCB0byB1c2UgdGhlIEJvcmxhbmQgQysrIGNvbXBpbGVyIGFzIHRoZSBkZWZhdWx0LCB5b3UgY291bGQgc3BlY2lmeQordGhpcyBpbiB5b3VyIHBlcnNvbmFsIG9yIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb24gZmlsZSBmb3IgRGlzdHV0aWxzIChzZWUKK3NlY3Rpb24gOnJlZjpgaW5zdC1jb25maWctZmlsZXNgLikKKworCisuLiBzZWVhbHNvOjoKKworICAgYEMrK0J1aWxkZXIgQ29tcGlsZXIgPGh0dHA6Ly93d3cuY29kZWdlYXIuY29tL2Rvd25sb2Fkcy9mcmVlL2NwcGJ1aWxkZXI+YF8KKyAgICAgIEluZm9ybWF0aW9uIGFib3V0IHRoZSBmcmVlIEMrKyBjb21waWxlciBmcm9tIEJvcmxhbmQsIGluY2x1ZGluZyBsaW5rcyB0byB0aGUKKyAgICAgIGRvd25sb2FkIHBhZ2VzLgorCisgICBgQ3JlYXRpbmcgUHl0aG9uIEV4dGVuc2lvbnMgVXNpbmcgQm9ybGFuZCdzIEZyZWUgQ29tcGlsZXIgPGh0dHA6Ly93d3cuY3liZXJ1cy5jYS9+Z193aWxsL3B5RXh0ZW5ETC5zaHRtbD5gXworICAgICAgRG9jdW1lbnQgZGVzY3JpYmluZyBob3cgdG8gdXNlIEJvcmxhbmQncyBmcmVlIGNvbW1hbmQtbGluZSBDKysgY29tcGlsZXIgdG8gYnVpbGQKKyAgICAgIFB5dGhvbi4KKworCitHTlUgQyAvIEN5Z3dpbiAvIE1pbkdXCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1RoaXMgc2VjdGlvbiBkZXNjcmliZXMgdGhlIG5lY2Vzc2FyeSBzdGVwcyB0byB1c2UgRGlzdHV0aWxzIHdpdGggdGhlIEdOVSBDL0MrKworY29tcGlsZXJzIGluIHRoZWlyIEN5Z3dpbiBhbmQgTWluR1cgZGlzdHJpYnV0aW9ucy4gWyNdXyBGb3IgYSBQeXRob24gaW50ZXJwcmV0ZXIKK3RoYXQgd2FzIGJ1aWx0IHdpdGggQ3lnd2luLCBldmVyeXRoaW5nIHNob3VsZCB3b3JrIHdpdGhvdXQgYW55IG9mIHRoZXNlCitmb2xsb3dpbmcgc3RlcHMuCisKK05vdCBhbGwgZXh0ZW5zaW9ucyBjYW4gYmUgYnVpbHQgd2l0aCBNaW5HVyBvciBDeWd3aW4sIGJ1dCBtYW55IGNhbi4gIEV4dGVuc2lvbnMKK21vc3QgbGlrZWx5IHRvIG5vdCB3b3JrIGFyZSB0aG9zZSB0aGF0IHVzZSBDKysgb3IgZGVwZW5kIG9uIE1pY3Jvc29mdCBWaXN1YWwgQworZXh0ZW5zaW9ucy4KKworVG8gbGV0IERpc3R1dGlscyBjb21waWxlIHlvdXIgZXh0ZW5zaW9uIHdpdGggQ3lnd2luIHlvdSBoYXZlIHRvIHR5cGU6OgorCisgICBweXRob24gc2V0dXAucHkgYnVpbGQgLS1jb21waWxlcj1jeWd3aW4KKworYW5kIGZvciBDeWd3aW4gaW4gbm8tY3lnd2luIG1vZGUgWyNdXyBvciBmb3IgTWluR1cgdHlwZTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBidWlsZCAtLWNvbXBpbGVyPW1pbmd3MzIKKworSWYgeW91IHdhbnQgdG8gdXNlIGFueSBvZiB0aGVzZSBvcHRpb25zL2NvbXBpbGVycyBhcyBkZWZhdWx0LCB5b3Ugc2hvdWxkCitjb25zaWRlciB3cml0aW5nIGl0IGluIHlvdXIgcGVyc29uYWwgb3Igc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbiBmaWxlIGZvcgorRGlzdHV0aWxzIChzZWUgc2VjdGlvbiA6cmVmOmBpbnN0LWNvbmZpZy1maWxlc2AuKQorCitPbGRlciBWZXJzaW9ucyBvZiBQeXRob24gYW5kIE1pbkdXCisiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiCitUaGUgZm9sbG93aW5nIGluc3RydWN0aW9ucyBvbmx5IGFwcGx5IGlmIHlvdSdyZSB1c2luZyBhIHZlcnNpb24gb2YgUHl0aG9uCitpbmZlcmlvciB0byAyLjQuMSB3aXRoIGEgTWluR1cgaW5mZXJpb3IgdG8gMy4wLjAgKHdpdGgKK2JpbnV0aWxzLTIuMTMuOTAtMjAwMzAxMTEtMSkuCisKK1RoZXNlIGNvbXBpbGVycyByZXF1aXJlIHNvbWUgc3BlY2lhbCBsaWJyYXJpZXMuICBUaGlzIHRhc2sgaXMgbW9yZSBjb21wbGV4IHRoYW4KK2ZvciBCb3JsYW5kJ3MgQysrLCBiZWNhdXNlIHRoZXJlIGlzIG5vIHByb2dyYW0gdG8gY29udmVydCB0aGUgbGlicmFyeS4gIEZpcnN0Cit5b3UgaGF2ZSB0byBjcmVhdGUgYSBsaXN0IG9mIHN5bWJvbHMgd2hpY2ggdGhlIFB5dGhvbiBETEwgZXhwb3J0cy4gKFlvdSBjYW4gZmluZAorYSBnb29kIHByb2dyYW0gZm9yIHRoaXMgdGFzayBhdAoraHR0cDovL3d3dy5lbW1lc3RlY2guY29tL3NvZnR3YXJlL3BleHBvcnRzLTAuNDMvZG93bmxvYWRfcGV4cG9ydHMuaHRtbCkuCisKKy4uIEkgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0IHRoZSBuZXh0IGxpbmUgbWVhbnMuIC0tYW1rCisuLiAoaW5jbHVzaXZlIHRoZSByZWZlcmVuY2VzIG9uIGRhdGEgc3RydWN0dXJlcy4pCisKKzo6CisKKyAgIHBleHBvcnRzIHB5dGhvbjI1LmRsbCA+cHl0aG9uMjUuZGVmCisKK1RoZSBsb2NhdGlvbiBvZiBhbiBpbnN0YWxsZWQgOmZpbGU6YHB5dGhvbjI1LmRsbGAgd2lsbCBkZXBlbmQgb24gdGhlCitpbnN0YWxsYXRpb24gb3B0aW9ucyBhbmQgdGhlIHZlcnNpb24gYW5kIGxhbmd1YWdlIG9mIFdpbmRvd3MuICBJbiBhICJqdXN0IGZvcgorbWUiIGluc3RhbGxhdGlvbiwgaXQgd2lsbCBhcHBlYXIgaW4gdGhlIHJvb3Qgb2YgdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkuICBJbgorYSBzaGFyZWQgaW5zdGFsbGF0aW9uLCBpdCB3aWxsIGJlIGxvY2F0ZWQgaW4gdGhlIHN5c3RlbSBkaXJlY3RvcnkuCisKK1RoZW4geW91IGNhbiBjcmVhdGUgZnJvbSB0aGVzZSBpbmZvcm1hdGlvbiBhbiBpbXBvcnQgbGlicmFyeSBmb3IgZ2NjLiA6OgorCisgICAvY3lnd2luL2Jpbi9kbGx0b29sIC0tZGxsbmFtZSBweXRob24yNS5kbGwgLS1kZWYgcHl0aG9uMjUuZGVmIC0tb3V0cHV0LWxpYiBsaWJweXRob24yNS5hCisKK1RoZSByZXN1bHRpbmcgbGlicmFyeSBoYXMgdG8gYmUgcGxhY2VkIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcworOmZpbGU6YHB5dGhvbjI1LmxpYmAuIChTaG91bGQgYmUgdGhlIDpmaWxlOmBsaWJzYCBkaXJlY3RvcnkgdW5kZXIgeW91ciBQeXRob24KK2luc3RhbGxhdGlvbiBkaXJlY3RvcnkuKQorCitJZiB5b3VyIGV4dGVuc2lvbiB1c2VzIG90aGVyIGxpYnJhcmllcyAoemxpYiwuLi4pIHlvdSBtaWdodCAgaGF2ZSB0byBjb252ZXJ0Cit0aGVtIHRvby4gVGhlIGNvbnZlcnRlZCBmaWxlcyBoYXZlIHRvIHJlc2lkZSBpbiB0aGUgc2FtZSBkaXJlY3RvcmllcyBhcyB0aGUKK25vcm1hbCBsaWJyYXJpZXMgZG8uCisKKworLi4gc2VlYWxzbzo6CisKKyAgIGBCdWlsZGluZyBQeXRob24gbW9kdWxlcyBvbiBNUyBXaW5kb3dzIHBsYXRmb3JtIHdpdGggTWluR1cgPGh0dHA6Ly93d3cuem9wZS5vcmcvTWVtYmVycy9hbHMvdGlwcy93aW4zMl9taW5nd19tb2R1bGVzPmBfCisgICAgICBJbmZvcm1hdGlvbiBhYm91dCBidWlsZGluZyB0aGUgcmVxdWlyZWQgbGlicmFyaWVzIGZvciB0aGUgTWluR1cgZW52aXJvbm1lbnQuCisKKworLi4gcnVicmljOjogRm9vdG5vdGVzCisKKy4uIFsjXSBUaGlzIGFsc28gbWVhbnMgeW91IGNvdWxkIHJlcGxhY2UgYWxsIGV4aXN0aW5nIENPRkYtbGlicmFyaWVzIHdpdGggT01GLWxpYnJhcmllcworICAgb2YgdGhlIHNhbWUgbmFtZS4KKworLi4gWyNdIENoZWNrIGh0dHA6Ly9zb3VyY2VzLnJlZGhhdC5jb20vY3lnd2luLyBhbmQgaHR0cDovL3d3dy5taW5ndy5vcmcvIGZvciBtb3JlCisgICBpbmZvcm1hdGlvbgorCisuLiBbI10gVGhlbiB5b3UgaGF2ZSBubyBQT1NJWCBlbXVsYXRpb24gYXZhaWxhYmxlLCBidXQgeW91IGFsc28gZG9uJ3QgbmVlZAorICAgOmZpbGU6YGN5Z3dpbjEuZGxsYC4KZGlmZiAtLWdpdCBhL0RvYy9leHRlbmRpbmcvZXh0ZW5kaW5nLnJzdCBiL0RvYy9leHRlbmRpbmcvZXh0ZW5kaW5nLnJzdAppbmRleCBjNGNlZDFhLi4zMjYxNTgwIDEwMDY0NAotLS0gYS9Eb2MvZXh0ZW5kaW5nL2V4dGVuZGluZy5yc3QKKysrIGIvRG9jL2V4dGVuZGluZy9leHRlbmRpbmcucnN0CkBAIC0zMjEsNyArMzIxLDcgQEAKIAogVGhlIDpjb25zdDpgTUVUSF9LRVlXT1JEU2AgYml0IG1heSBiZSBzZXQgaW4gdGhlIHRoaXJkIGZpZWxkIGlmIGtleXdvcmQKIGFyZ3VtZW50cyBzaG91bGQgYmUgcGFzc2VkIHRvIHRoZSBmdW5jdGlvbi4gIEluIHRoaXMgY2FzZSwgdGhlIEMgZnVuY3Rpb24gc2hvdWxkCi1hY2NlcHQgYSB0aGlyZCBgYFB5T2JqZWN0IFwqYGAgcGFyYW1ldGVyIHdoaWNoIHdpbGwgYmUgYSBkaWN0aW9uYXJ5IG9mIGtleXdvcmRzLgorYWNjZXB0IGEgdGhpcmQgYGBQeU9iamVjdCAqYGAgcGFyYW1ldGVyIHdoaWNoIHdpbGwgYmUgYSBkaWN0aW9uYXJ5IG9mIGtleXdvcmRzLgogVXNlIDpjOmZ1bmM6YFB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3Jkc2AgdG8gcGFyc2UgdGhlIGFyZ3VtZW50cyB0byBzdWNoIGEKIGZ1bmN0aW9uLgogCkBAIC0zODQsOSArMzg0LDYgQEAKICAgICAgICAgICBpbXBvcnRzIGl0LiAqLwogICAgICAgIFB5SW1wb3J0X0ltcG9ydE1vZHVsZSgic3BhbSIpOwogCi1BbiBleGFtcGxlIG1heSBiZSBmb3VuZCBpbiB0aGUgZmlsZSA6ZmlsZTpgRGVtby9lbWJlZC9kZW1vLmNgIGluIHRoZSBQeXRob24KLXNvdXJjZSBkaXN0cmlidXRpb24uCi0KIC4uIG5vdGU6OgogCiAgICBSZW1vdmluZyBlbnRyaWVzIGZyb20gYGBzeXMubW9kdWxlc2BgIG9yIGltcG9ydGluZyBjb21waWxlZCBtb2R1bGVzIGludG8KZGlmZiAtLWdpdCBhL0RvYy9leHRlbmRpbmcvbmV3dHlwZXMucnN0IGIvRG9jL2V4dGVuZGluZy9uZXd0eXBlcy5yc3QKaW5kZXggMmJhMDFiYy4uNzZjNTVmYyAxMDA2NDQKLS0tIGEvRG9jL2V4dGVuZGluZy9uZXd0eXBlcy5yc3QKKysrIGIvRG9jL2V4dGVuZGluZy9uZXd0eXBlcy5yc3QKQEAgLTI2LDExICsyNiwxMiBAQAogPT09PT09PT09PQogCiBUaGUgUHl0aG9uIHJ1bnRpbWUgc2VlcyBhbGwgUHl0aG9uIG9iamVjdHMgYXMgdmFyaWFibGVzIG9mIHR5cGUKLTpjOnR5cGU6YFB5T2JqZWN0XCpgLiAgQSA6Yzp0eXBlOmBQeU9iamVjdGAgaXMgbm90IGEgdmVyeSBtYWduaWZpY2VudCBvYmplY3QgLSBpdAotanVzdCBjb250YWlucyB0aGUgcmVmY291bnQgYW5kIGEgcG9pbnRlciB0byB0aGUgb2JqZWN0J3MgInR5cGUgb2JqZWN0Ii4gIFRoaXMgaXMKLXdoZXJlIHRoZSBhY3Rpb24gaXM7IHRoZSB0eXBlIG9iamVjdCBkZXRlcm1pbmVzIHdoaWNoIChDKSBmdW5jdGlvbnMgZ2V0IGNhbGxlZAotd2hlbiwgZm9yIGluc3RhbmNlLCBhbiBhdHRyaWJ1dGUgZ2V0cyBsb29rZWQgdXAgb24gYW4gb2JqZWN0IG9yIGl0IGlzIG11bHRpcGxpZWQKLWJ5IGFub3RoZXIgb2JqZWN0LiAgVGhlc2UgQyBmdW5jdGlvbnMgYXJlIGNhbGxlZCAidHlwZSBtZXRob2RzIi4KKzpjOnR5cGU6YFB5T2JqZWN0XCpgLCB3aGljaCBzZXJ2ZXMgYXMgYSAiYmFzZSB0eXBlIiBmb3IgYWxsIFB5dGhvbiBvYmplY3RzLgorOmM6dHlwZTpgUHlPYmplY3RgIGl0c2VsZiBvbmx5IGNvbnRhaW5zIHRoZSByZWZjb3VudCBhbmQgYSBwb2ludGVyIHRvIHRoZQorb2JqZWN0J3MgInR5cGUgb2JqZWN0Ii4gIFRoaXMgaXMgd2hlcmUgdGhlIGFjdGlvbiBpczsgdGhlIHR5cGUgb2JqZWN0IGRldGVybWluZXMKK3doaWNoIChDKSBmdW5jdGlvbnMgZ2V0IGNhbGxlZCB3aGVuLCBmb3IgaW5zdGFuY2UsIGFuIGF0dHJpYnV0ZSBnZXRzIGxvb2tlZAordXAgb24gYW4gb2JqZWN0IG9yIGl0IGlzIG11bHRpcGxpZWQgYnkgYW5vdGhlciBvYmplY3QuICBUaGVzZSBDIGZ1bmN0aW9ucworYXJlIGNhbGxlZCAidHlwZSBtZXRob2RzIi4KIAogU28sIGlmIHlvdSB3YW50IHRvIGRlZmluZSBhIG5ldyBvYmplY3QgdHlwZSwgeW91IG5lZWQgdG8gY3JlYXRlIGEgbmV3IHR5cGUKIG9iamVjdC4KQEAgLTUwLDE1ICs1MSwxNSBAQAogICAgICAgIFB5T2JqZWN0X0hFQUQKICAgIH0gbm9kZHlfTm9kZHlPYmplY3Q7CiAKLVRoaXMgaXMgd2hhdCBhIE5vZGR5IG9iamVjdCB3aWxsIGNvbnRhaW4tLS1pbiB0aGlzIGNhc2UsIG5vdGhpbmcgbW9yZSB0aGFuIGV2ZXJ5Ci1QeXRob24gb2JqZWN0IGNvbnRhaW5zLCBuYW1lbHkgYSByZWZjb3VudCBhbmQgYSBwb2ludGVyIHRvIGEgdHlwZSBvYmplY3QuICBUaGVzZQotYXJlIHRoZSBmaWVsZHMgdGhlIGBgUHlPYmplY3RfSEVBRGBgIG1hY3JvIGJyaW5ncyBpbi4gIFRoZSByZWFzb24gZm9yIHRoZSBtYWNybwotaXMgdG8gc3RhbmRhcmRpemUgdGhlIGxheW91dCBhbmQgdG8gZW5hYmxlIHNwZWNpYWwgZGVidWdnaW5nIGZpZWxkcyBpbiBkZWJ1ZwotYnVpbGRzLiAgTm90ZSB0aGF0IHRoZXJlIGlzIG5vIHNlbWljb2xvbiBhZnRlciB0aGUgYGBQeU9iamVjdF9IRUFEYGAgbWFjcm87IG9uZQotaXMgaW5jbHVkZWQgaW4gdGhlIG1hY3JvIGRlZmluaXRpb24uICBCZSB3YXJ5IG9mIGFkZGluZyBvbmUgYnkgYWNjaWRlbnQ7IGl0J3MKLWVhc3kgdG8gZG8gZnJvbSBoYWJpdCwgYW5kIHlvdXIgY29tcGlsZXIgbWlnaHQgbm90IGNvbXBsYWluLCBidXQgc29tZW9uZSBlbHNlJ3MKLXByb2JhYmx5IHdpbGwhICAoT24gV2luZG93cywgTVNWQyBpcyBrbm93biB0byBjYWxsIHRoaXMgYW4gZXJyb3IgYW5kIHJlZnVzZSB0bwotY29tcGlsZSB0aGUgY29kZS4pCitUaGlzIGlzIHdoYXQgYSBOb2RkeSBvYmplY3Qgd2lsbCBjb250YWluLS0taW4gdGhpcyBjYXNlLCBub3RoaW5nIG1vcmUgdGhhbiB3aGF0CitldmVyeSBQeXRob24gb2JqZWN0IGNvbnRhaW5zLS0tYSByZWZjb3VudCBhbmQgYSBwb2ludGVyIHRvIGEgdHlwZSBvYmplY3QuCitUaGVzZSBhcmUgdGhlIGZpZWxkcyB0aGUgYGBQeU9iamVjdF9IRUFEYGAgbWFjcm8gYnJpbmdzIGluLiAgVGhlIHJlYXNvbiBmb3IgdGhlCittYWNybyBpcyB0byBzdGFuZGFyZGl6ZSB0aGUgbGF5b3V0IGFuZCB0byBlbmFibGUgc3BlY2lhbCBkZWJ1Z2dpbmcgZmllbGRzIGluCitkZWJ1ZyBidWlsZHMuICBOb3RlIHRoYXQgdGhlcmUgaXMgbm8gc2VtaWNvbG9uIGFmdGVyIHRoZSBgYFB5T2JqZWN0X0hFQURgYAorbWFjcm87IG9uZSBpcyBpbmNsdWRlZCBpbiB0aGUgbWFjcm8gZGVmaW5pdGlvbi4gIEJlIHdhcnkgb2YgYWRkaW5nIG9uZSBieQorYWNjaWRlbnQ7IGl0J3MgZWFzeSB0byBkbyBmcm9tIGhhYml0LCBhbmQgeW91ciBjb21waWxlciBtaWdodCBub3QgY29tcGxhaW4sCitidXQgc29tZW9uZSBlbHNlJ3MgcHJvYmFibHkgd2lsbCEgIChPbiBXaW5kb3dzLCBNU1ZDIGlzIGtub3duIHRvIGNhbGwgdGhpcyBhbgorZXJyb3IgYW5kIHJlZnVzZSB0byBjb21waWxlIHRoZSBjb2RlLikKIAogRm9yIGNvbnRyYXN0LCBsZXQncyB0YWtlIGEgbG9vayBhdCB0aGUgY29ycmVzcG9uZGluZyBkZWZpbml0aW9uIGZvciBzdGFuZGFyZAogUHl0aG9uIGZsb2F0czo6CkBAIC0yMjQsNyArMjI1LDcgQEAKIEFkZGluZyBkYXRhIGFuZCBtZXRob2RzIHRvIHRoZSBCYXNpYyBleGFtcGxlCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1MZXQncyBleHBlbmQgdGhlIGJhc2ljIGV4YW1wbGUgdG8gYWRkIHNvbWUgZGF0YSBhbmQgbWV0aG9kcy4gIExldCdzIGFsc28gbWFrZQorTGV0J3MgZXh0ZW5kIHRoZSBiYXNpYyBleGFtcGxlIHRvIGFkZCBzb21lIGRhdGEgYW5kIG1ldGhvZHMuICBMZXQncyBhbHNvIG1ha2UKIHRoZSB0eXBlIHVzYWJsZSBhcyBhIGJhc2UgY2xhc3MuIFdlJ2xsIGNyZWF0ZSBhIG5ldyBtb2R1bGUsIDptb2Q6YG5vZGR5MmAgdGhhdAogYWRkcyB0aGVzZSBjYXBhYmlsaXRpZXM6CiAKQEAgLTI4OCwxOCArMjg5LDE2IEBACiAgICAgICAgc2VsZiA9IChOb2RkeSAqKXR5cGUtPnRwX2FsbG9jKHR5cGUsIDApOwogICAgICAgIGlmIChzZWxmICE9IE5VTEwpIHsKICAgICAgICAgICAgc2VsZi0+Zmlyc3QgPSBQeVN0cmluZ19Gcm9tU3RyaW5nKCIiKTsKLSAgICAgICAgICAgaWYgKHNlbGYtPmZpcnN0ID09IE5VTEwpCi0gICAgICAgICAgICAgeworICAgICAgICAgICBpZiAoc2VsZi0+Zmlyc3QgPT0gTlVMTCkgewogICAgICAgICAgICAgICAgUHlfREVDUkVGKHNlbGYpOwogICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICAgfQorICAgICAgICAgICB9CiAKICAgICAgICAgICAgc2VsZi0+bGFzdCA9IFB5U3RyaW5nX0Zyb21TdHJpbmcoIiIpOwotICAgICAgICAgICBpZiAoc2VsZi0+bGFzdCA9PSBOVUxMKQotICAgICAgICAgICAgIHsKKyAgICAgICAgICAgaWYgKHNlbGYtPmxhc3QgPT0gTlVMTCkgewogICAgICAgICAgICAgICAgUHlfREVDUkVGKHNlbGYpOwogICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICAgfQorICAgICAgICAgICB9CiAKICAgICAgICAgICAgc2VsZi0+bnVtYmVyID0gMDsKICAgICAgICB9CkBAIC0zMjcsOCArMzI2LDggQEAKIGNyZWF0ZWQuIE5ldyBtZXRob2RzIGFsd2F5cyBhY2NlcHQgcG9zaXRpb25hbCBhbmQga2V5d29yZCBhcmd1bWVudHMsIGJ1dCB0aGV5CiBvZnRlbiBpZ25vcmUgdGhlIGFyZ3VtZW50cywgbGVhdmluZyB0aGUgYXJndW1lbnQgaGFuZGxpbmcgdG8gaW5pdGlhbGl6ZXIKIG1ldGhvZHMuIE5vdGUgdGhhdCBpZiB0aGUgdHlwZSBzdXBwb3J0cyBzdWJjbGFzc2luZywgdGhlIHR5cGUgcGFzc2VkIG1heSBub3QgYmUKLXRoZSB0eXBlIGJlaW5nIGRlZmluZWQuICBUaGUgbmV3IG1ldGhvZCBjYWxscyB0aGUgdHBfYWxsb2Mgc2xvdCB0byBhbGxvY2F0ZQotbWVtb3J5LiBXZSBkb24ndCBmaWxsIHRoZSA6YXR0cjpgdHBfYWxsb2NgIHNsb3Qgb3Vyc2VsdmVzLiBSYXRoZXIKK3RoZSB0eXBlIGJlaW5nIGRlZmluZWQuICBUaGUgbmV3IG1ldGhvZCBjYWxscyB0aGUgOmF0dHI6YHRwX2FsbG9jYCBzbG90IHRvCithbGxvY2F0ZSBtZW1vcnkuIFdlIGRvbid0IGZpbGwgdGhlIDphdHRyOmB0cF9hbGxvY2Agc2xvdCBvdXJzZWx2ZXMuIFJhdGhlcgogOmM6ZnVuYzpgUHlUeXBlX1JlYWR5YCBmaWxscyBpdCBmb3IgdXMgYnkgaW5oZXJpdGluZyBpdCBmcm9tIG91ciBiYXNlIGNsYXNzLAogd2hpY2ggaXMgOmNsYXNzOmBvYmplY3RgIGJ5IGRlZmF1bHQuICBNb3N0IHR5cGVzIHVzZSB0aGUgZGVmYXVsdCBhbGxvY2F0aW9uLgogCkBAIC00NDUsMTUgKzQ0NCw2IEBACiAgICBzdGF0aWMgUHlPYmplY3QgKgogICAgTm9kZHlfbmFtZShOb2RkeSogc2VsZikKICAgIHsKLSAgICAgICBzdGF0aWMgUHlPYmplY3QgKmZvcm1hdCA9IE5VTEw7Ci0gICAgICAgUHlPYmplY3QgKmFyZ3MsICpyZXN1bHQ7Ci0KLSAgICAgICBpZiAoZm9ybWF0ID09IE5VTEwpIHsKLSAgICAgICAgICAgZm9ybWF0ID0gUHlTdHJpbmdfRnJvbVN0cmluZygiJXMgJXMiKTsKLSAgICAgICAgICAgaWYgKGZvcm1hdCA9PSBOVUxMKQotICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgfQotCiAgICAgICAgaWYgKHNlbGYtPmZpcnN0ID09IE5VTEwpIHsKICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0F0dHJpYnV0ZUVycm9yLCAiZmlyc3QiKTsKICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC00NjQsMjAgKzQ1NCwxMyBAQAogICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICB9CiAKLSAgICAgICBhcmdzID0gUHlfQnVpbGRWYWx1ZSgiT08iLCBzZWxmLT5maXJzdCwgc2VsZi0+bGFzdCk7Ci0gICAgICAgaWYgKGFyZ3MgPT0gTlVMTCkKLSAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICAgICByZXN1bHQgPSBQeVN0cmluZ19Gb3JtYXQoZm9ybWF0LCBhcmdzKTsKLSAgICAgICBQeV9ERUNSRUYoYXJncyk7Ci0KLSAgICAgICByZXR1cm4gcmVzdWx0OworICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVMgJVMiLCBzZWxmLT5maXJzdCwgc2VsZi0+bGFzdCk7CiAgICB9CiAKIFRoZSBtZXRob2QgaXMgaW1wbGVtZW50ZWQgYXMgYSBDIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYSA6Y2xhc3M6YE5vZGR5YCAob3IKIDpjbGFzczpgTm9kZHlgIHN1YmNsYXNzKSBpbnN0YW5jZSBhcyB0aGUgZmlyc3QgYXJndW1lbnQuICBNZXRob2RzIGFsd2F5cyB0YWtlIGFuCiBpbnN0YW5jZSBhcyB0aGUgZmlyc3QgYXJndW1lbnQuIE1ldGhvZHMgb2Z0ZW4gdGFrZSBwb3NpdGlvbmFsIGFuZCBrZXl3b3JkCi1hcmd1bWVudHMgYXMgd2VsbCwgYnV0IGluIHRoaXMgY2FzZWQgd2UgZG9uJ3QgdGFrZSBhbnkgYW5kIGRvbid0IG5lZWQgdG8gYWNjZXB0Cithcmd1bWVudHMgYXMgd2VsbCwgYnV0IGluIHRoaXMgY2FzZSB3ZSBkb24ndCB0YWtlIGFueSBhbmQgZG9uJ3QgbmVlZCB0byBhY2NlcHQKIGEgcG9zaXRpb25hbCBhcmd1bWVudCB0dXBsZSBvciBrZXl3b3JkIGFyZ3VtZW50IGRpY3Rpb25hcnkuIFRoaXMgbWV0aG9kIGlzCiBlcXVpdmFsZW50IHRvIHRoZSBQeXRob24gbWV0aG9kOjoKIApAQCAtMTEyNCw5ICsxMTA3LDYgQEAKIGF0IHRoZSBlbmQ7IGl0IGlzIGEgc2VudGluZWwgdGhhdCBtYXJrcyB0aGUgZW5kIG9mIHRoZSBhcnJheS4gIFRoZQogOmF0dHI6YG1sX25hbWVgIGZpZWxkIG9mIHRoZSBzZW50aW5lbCBtdXN0IGJlICpOVUxMKi4KIAotWFhYIE5lZWQgdG8gcmVmZXIgdG8gc29tZSB1bmlmaWVkIGRpc2N1c3Npb24gb2YgdGhlIHN0cnVjdHVyZSBmaWVsZHMsIHNoYXJlZAotd2l0aCB0aGUgbmV4dCBzZWN0aW9uLgotCiBUaGUgc2Vjb25kIHRhYmxlIGlzIHVzZWQgdG8gZGVmaW5lIGF0dHJpYnV0ZXMgd2hpY2ggbWFwIGRpcmVjdGx5IHRvIGRhdGEgc3RvcmVkCiBpbiB0aGUgaW5zdGFuY2UuICBBIHZhcmlldHkgb2YgcHJpbWl0aXZlIEMgdHlwZXMgYXJlIHN1cHBvcnRlZCwgYW5kIGFjY2VzcyBtYXkKIGJlIHJlYWQtb25seSBvciByZWFkLXdyaXRlLiAgVGhlIHN0cnVjdHVyZXMgaW4gdGhlIHRhYmxlIGFyZSBkZWZpbmVkIGFzOjoKQEAgLTExNDYsOCArMTEyNiw2IEBACiBjb252ZXJ0IFB5dGhvbiB2YWx1ZXMgdG8gYW5kIGZyb20gQyB2YWx1ZXMuICBUaGUgOmF0dHI6YGZsYWdzYCBmaWVsZCBpcyB1c2VkIHRvCiBzdG9yZSBmbGFncyB3aGljaCBjb250cm9sIGhvdyB0aGUgYXR0cmlidXRlIGNhbiBiZSBhY2Nlc3NlZC4KIAotWFhYIE5lZWQgdG8gbW92ZSBzb21lIG9mIHRoaXMgdG8gYSBzaGFyZWQgc2VjdGlvbiEKLQogVGhlIGZvbGxvd2luZyBmbGFnIGNvbnN0YW50cyBhcmUgZGVmaW5lZCBpbiA6ZmlsZTpgc3RydWN0bWVtYmVyLmhgOyB0aGV5IG1heSBiZQogY29tYmluZWQgdXNpbmcgYml0d2lzZS1PUi4KIApAQCAtMTM3Miw3ICsxMzUwLDcgQEAKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgfQogCi1YWFggc29tZSBmaWVsZHMgbmVlZCB0byBiZSBhZGRlZCBoZXJlLi4uIDo6Cis6OgogCiAgICAvKiBJdGVyYXRvcnMgKi8KICAgIGdldGl0ZXJmdW5jIHRwX2l0ZXI7CmRpZmYgLS1naXQgYS9Eb2MvZmFxL2Rlc2lnbi5yc3QgYi9Eb2MvZmFxL2Rlc2lnbi5yc3QKaW5kZXggZTQ1YWFhYS4uMTUyMWY2YyAxMDA2NDQKLS0tIGEvRG9jL2ZhcS9kZXNpZ24ucnN0CisrKyBiL0RvYy9mYXEvZGVzaWduLnJzdApAQCAtNjQ1LDcgKzY0NSw3IEBACiBQeXRob24gMi42IGFkZHMgYW4gOm1vZDpgYWJjYCBtb2R1bGUgdGhhdCBsZXRzIHlvdSBkZWZpbmUgQWJzdHJhY3QgQmFzZSBDbGFzc2VzCiAoQUJDcykuICBZb3UgY2FuIHRoZW4gdXNlIDpmdW5jOmBpc2luc3RhbmNlYCBhbmQgOmZ1bmM6YGlzc3ViY2xhc3NgIHRvIGNoZWNrCiB3aGV0aGVyIGFuIGluc3RhbmNlIG9yIGEgY2xhc3MgaW1wbGVtZW50cyBhIHBhcnRpY3VsYXIgQUJDLiAgVGhlCi06bW9kOmBjb2xsZWN0aW9uc2AgbW9kdWxlIGRlZmluZXMgYSBzZXQgb2YgdXNlZnVsIEFCQ3Mgc3VjaCBhcworOm1vZDpgY29sbGVjdGlvbnMuYWJjYCBtb2R1bGUgZGVmaW5lcyBhIHNldCBvZiB1c2VmdWwgQUJDcyBzdWNoIGFzCiA6Y2xhc3M6YEl0ZXJhYmxlYCwgOmNsYXNzOmBDb250YWluZXJgLCBhbmQgOmNsYXNzOmBNdXRhYmxlTWFwcGluZ2AuCiAKIEZvciBQeXRob24sIG1hbnkgb2YgdGhlIGFkdmFudGFnZXMgb2YgaW50ZXJmYWNlIHNwZWNpZmljYXRpb25zIGNhbiBiZSBvYnRhaW5lZApkaWZmIC0tZ2l0IGEvRG9jL2ZhcS9leHRlbmRpbmcucnN0IGIvRG9jL2ZhcS9leHRlbmRpbmcucnN0CmluZGV4IDdjNjg0YTAuLmZhMjQ1YzcgMTAwNjQ0Ci0tLSBhL0RvYy9mYXEvZXh0ZW5kaW5nLnJzdAorKysgYi9Eb2MvZmFxL2V4dGVuZGluZy5yc3QKQEAgLTQ0NSwzNCArNDQ1LDMgQEAKIFRoZSBCb29zdCBQeXRob24gTGlicmFyeSAoQlBMLCBodHRwOi8vd3d3LmJvb3N0Lm9yZy9saWJzL3B5dGhvbi9kb2MvaW5kZXguaHRtbCkKIHByb3ZpZGVzIGEgd2F5IG9mIGRvaW5nIHRoaXMgZnJvbSBDKysgKGkuZS4geW91IGNhbiBpbmhlcml0IGZyb20gYW4gZXh0ZW5zaW9uCiBjbGFzcyB3cml0dGVuIGluIEMrKyB1c2luZyB0aGUgQlBMKS4KLQotCi1XaGVuIGltcG9ydGluZyBtb2R1bGUgWCwgd2h5IGRvIEkgZ2V0ICJ1bmRlZmluZWQgc3ltYm9sOiBQeVVuaWNvZGVVQ1MyKiI/Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLVlvdSBhcmUgdXNpbmcgYSB2ZXJzaW9uIG9mIFB5dGhvbiB0aGF0IHVzZXMgYSA0LWJ5dGUgcmVwcmVzZW50YXRpb24gZm9yIFVuaWNvZGUKLWNoYXJhY3RlcnMsIGJ1dCBzb21lIEMgZXh0ZW5zaW9uIG1vZHVsZSB5b3UgYXJlIGltcG9ydGluZyB3YXMgY29tcGlsZWQgdXNpbmcgYQotUHl0aG9uIHRoYXQgdXNlcyBhIDItYnl0ZSByZXByZXNlbnRhdGlvbiBmb3IgVW5pY29kZSBjaGFyYWN0ZXJzICh0aGUgZGVmYXVsdCkuCi0KLUlmIGluc3RlYWQgdGhlIG5hbWUgb2YgdGhlIHVuZGVmaW5lZCBzeW1ib2wgc3RhcnRzIHdpdGggYGBQeVVuaWNvZGVVQ1M0YGAsIHRoZQotcHJvYmxlbSBpcyB0aGUgcmV2ZXJzZTogUHl0aG9uIHdhcyBidWlsdCB1c2luZyAyLWJ5dGUgVW5pY29kZSBjaGFyYWN0ZXJzLCBhbmQKLXRoZSBleHRlbnNpb24gbW9kdWxlIHdhcyBjb21waWxlZCB1c2luZyBhIFB5dGhvbiB3aXRoIDQtYnl0ZSBVbmljb2RlIGNoYXJhY3RlcnMuCi0KLVRoaXMgY2FuIGVhc2lseSBvY2N1ciB3aGVuIHVzaW5nIHByZS1idWlsdCBleHRlbnNpb24gcGFja2FnZXMuICBSZWRIYXQgTGludXgKLTcueCwgaW4gcGFydGljdWxhciwgcHJvdmlkZWQgYSAicHl0aG9uMiIgYmluYXJ5IHRoYXQgaXMgY29tcGlsZWQgd2l0aCA0LWJ5dGUKLVVuaWNvZGUuICBUaGlzIG9ubHkgY2F1c2VzIHRoZSBsaW5rIGZhaWx1cmUgaWYgdGhlIGV4dGVuc2lvbiB1c2VzIGFueSBvZiB0aGUKLWBgUHlVbmljb2RlXyooKWBgIGZ1bmN0aW9ucy4gIEl0IGlzIGFsc28gYSBwcm9ibGVtIGlmIGFuIGV4dGVuc2lvbiB1c2VzIGFueSBvZgotdGhlIFVuaWNvZGUtcmVsYXRlZCBmb3JtYXQgc3BlY2lmaWVycyBmb3IgOmM6ZnVuYzpgUHlfQnVpbGRWYWx1ZWAgKG9yIHNpbWlsYXIpIG9yCi1wYXJhbWV0ZXIgc3BlY2lmaWNhdGlvbnMgZm9yIDpjOmZ1bmM6YFB5QXJnX1BhcnNlVHVwbGVgLgotCi1Zb3UgY2FuIGNoZWNrIHRoZSBzaXplIG9mIHRoZSBVbmljb2RlIGNoYXJhY3RlciBhIFB5dGhvbiBpbnRlcnByZXRlciBpcyB1c2luZyBieQotY2hlY2tpbmcgdGhlIHZhbHVlIG9mIHN5cy5tYXh1bmljb2RlOgotCi0gICA+Pj4gaW1wb3J0IHN5cwotICAgPj4+IGlmIHN5cy5tYXh1bmljb2RlID4gNjU1MzU6Ci0gICAuLi4gICAgIHByaW50KCdVQ1M0IGJ1aWxkJykKLSAgIC4uLiBlbHNlOgotICAgLi4uICAgICBwcmludCgnVUNTMiBidWlsZCcpCi0KLVRoZSBvbmx5IHdheSB0byBzb2x2ZSB0aGlzIHByb2JsZW0gaXMgdG8gdXNlIGV4dGVuc2lvbiBtb2R1bGVzIGNvbXBpbGVkIHdpdGggYQotUHl0aG9uIGJpbmFyeSBidWlsdCB1c2luZyB0aGUgc2FtZSBzaXplIGZvciBVbmljb2RlIGNoYXJhY3RlcnMuCmRpZmYgLS1naXQgYS9Eb2MvZ2xvc3NhcnkucnN0IGIvRG9jL2dsb3NzYXJ5LnJzdAppbmRleCAzYjIxMWFlLi5mNWNhMGQ5IDEwMDY0NAotLS0gYS9Eb2MvZ2xvc3NhcnkucnN0CisrKyBiL0RvYy9nbG9zc2FyeS5yc3QKQEAgLTM0LDcgKzM0LDcgQEAKICAgICAgIHN1YmNsYXNzZXMsIHdoaWNoIGFyZSBjbGFzc2VzIHRoYXQgZG9uJ3QgaW5oZXJpdCBmcm9tIGEgY2xhc3MgYnV0IGFyZQogICAgICAgc3RpbGwgcmVjb2duaXplZCBieSA6ZnVuYzpgaXNpbnN0YW5jZWAgYW5kIDpmdW5jOmBpc3N1YmNsYXNzYDsgc2VlIHRoZQogICAgICAgOm1vZDpgYWJjYCBtb2R1bGUgZG9jdW1lbnRhdGlvbi4gIFB5dGhvbiBjb21lcyB3aXRoIG1hbnkgYnVpbHQtaW4gQUJDcyBmb3IKLSAgICAgIGRhdGEgc3RydWN0dXJlcyAoaW4gdGhlIDptb2Q6YGNvbGxlY3Rpb25zYCBtb2R1bGUpLCBudW1iZXJzIChpbiB0aGUKKyAgICAgIGRhdGEgc3RydWN0dXJlcyAoaW4gdGhlIDptb2Q6YGNvbGxlY3Rpb25zLmFiY2AgbW9kdWxlKSwgbnVtYmVycyAoaW4gdGhlCiAgICAgICA6bW9kOmBudW1iZXJzYCBtb2R1bGUpLCBzdHJlYW1zIChpbiB0aGUgOm1vZDpgaW9gIG1vZHVsZSksIGltcG9ydCBmaW5kZXJzCiAgICAgICBhbmQgbG9hZGVycyAoaW4gdGhlIDptb2Q6YGltcG9ydGxpYi5hYmNgIG1vZHVsZSkuICBZb3UgY2FuIGNyZWF0ZSB5b3VyIG93bgogICAgICAgQUJDcyB3aXRoIHRoZSA6bW9kOmBhYmNgIG1vZHVsZS4KQEAgLTQzNCw4ICs0MzQsOCBAQAogCiAgICBtYXBwaW5nCiAgICAgICBBIGNvbnRhaW5lciBvYmplY3QgdGhhdCBzdXBwb3J0cyBhcmJpdHJhcnkga2V5IGxvb2t1cHMgYW5kIGltcGxlbWVudHMgdGhlCi0gICAgICBtZXRob2RzIHNwZWNpZmllZCBpbiB0aGUgOmNsYXNzOmB+Y29sbGVjdGlvbnMuTWFwcGluZ2Agb3IKLSAgICAgIDpjbGFzczpgfmNvbGxlY3Rpb25zLk11dGFibGVNYXBwaW5nYAorICAgICAgbWV0aG9kcyBzcGVjaWZpZWQgaW4gdGhlIDpjbGFzczpgfmNvbGxlY3Rpb25zLmFiYy5NYXBwaW5nYCBvcgorICAgICAgOmNsYXNzOmB+Y29sbGVjdGlvbnMuYWJjLk11dGFibGVNYXBwaW5nYAogICAgICAgOnJlZjpgYWJzdHJhY3QgYmFzZSBjbGFzc2VzIDxjb2xsZWN0aW9ucy1hYnN0cmFjdC1iYXNlLWNsYXNzZXM+YC4gIEV4YW1wbGVzCiAgICAgICBpbmNsdWRlIDpjbGFzczpgZGljdGAsIDpjbGFzczpgY29sbGVjdGlvbnMuZGVmYXVsdGRpY3RgLAogICAgICAgOmNsYXNzOmBjb2xsZWN0aW9ucy5PcmRlcmVkRGljdGAgYW5kIDpjbGFzczpgY29sbGVjdGlvbnMuQ291bnRlcmAuCkBAIC01NDQsNiArNTQ0LDI0IEBACiAgICAgICAgICBmb3IgcGllY2UgaW4gZm9vZDoKICAgICAgICAgICAgICBwcmludChwaWVjZSkKIAorICAgcXVhbGlmaWVkIG5hbWUKKyAgICAgIEEgZG90dGVkIG5hbWUgc2hvd2luZyB0aGUgInBhdGgiIGZyb20gYSBtb2R1bGUncyBnbG9iYWwgc2NvcGUgdG8gYQorICAgICAgY2xhc3MsIGZ1bmN0aW9uIG9yIG1ldGhvZCBkZWZpbmVkIGluIHRoYXQgbW9kdWxlLCBhcyBkZWZpbmVkIGluCisgICAgICA6cGVwOmAzMTU1YC4gIEZvciB0b3AtbGV2ZWwgZnVuY3Rpb25zIGFuZCBjbGFzc2VzLCB0aGUgcXVhbGlmaWVkIG5hbWUKKyAgICAgIGlzIHRoZSBzYW1lIGFzIHRoZSBvYmplY3QncyBuYW1lOjoKKworICAgICAgICAgPj4+IGNsYXNzIEM6CisgICAgICAgICAuLi4gICAgIGNsYXNzIEQ6CisgICAgICAgICAuLi4gICAgICAgICBkZWYgbWV0aChzZWxmKToKKyAgICAgICAgIC4uLiAgICAgICAgICAgICBwYXNzCisgICAgICAgICAuLi4KKyAgICAgICAgID4+PiBDLl9fcXVhbG5hbWVfXworICAgICAgICAgJ0MnCisgICAgICAgICA+Pj4gQy5ELl9fcXVhbG5hbWVfXworICAgICAgICAgJ0MuRCcKKyAgICAgICAgID4+PiBDLkQubWV0aC5fX3F1YWxuYW1lX18KKyAgICAgICAgICdDLkQubWV0aCcKKwogICAgcmVmZXJlbmNlIGNvdW50CiAgICAgICBUaGUgbnVtYmVyIG9mIHJlZmVyZW5jZXMgdG8gYW4gb2JqZWN0LiAgV2hlbiB0aGUgcmVmZXJlbmNlIGNvdW50IG9mIGFuCiAgICAgICBvYmplY3QgZHJvcHMgdG8gemVybywgaXQgaXMgZGVhbGxvY2F0ZWQuICBSZWZlcmVuY2UgY291bnRpbmcgaXMKQEAgLTU4Niw2ICs2MDQsMTQgQEAKICAgICAgIGFuIDp0ZXJtOmBleHByZXNzaW9uYCBvciBhIG9uZSBvZiBzZXZlcmFsIGNvbnN0cnVjdHMgd2l0aCBhIGtleXdvcmQsIHN1Y2gKICAgICAgIGFzIDprZXl3b3JkOmBpZmAsIDprZXl3b3JkOmB3aGlsZWAgb3IgOmtleXdvcmQ6YGZvcmAuCiAKKyAgIHN0cnVjdCBzZXF1ZW5jZQorICAgICAgQSB0dXBsZSB3aXRoIG5hbWVkIGVsZW1lbnRzLiBTdHJ1Y3Qgc2VxdWVuY2VzIGV4cG9zZSBhbiBpbnRlcmZhY2Ugc2ltaWxhcgorICAgICAgdG8gOnRlcm06YG5hbWVkIHR1cGxlYCBpbiB0aGF0IGVsZW1lbnRzIGNhbiBlaXRoZXIgYmUgYWNjZXNzZWQgZWl0aGVyIGJ5CisgICAgICBpbmRleCBvciBhcyBhbiBhdHRyaWJ1dGUuIEhvd2V2ZXIsIHRoZXkgZG8gbm90IGhhdmUgYW55IG9mIHRoZSBuYW1lZCB0dXBsZQorICAgICAgbWV0aG9kcyBsaWtlIDptZXRoOmB+Y29sbGVjdGlvbnMuc29tZW5hbWVkdHVwbGUuX21ha2VgIG9yCisgICAgICA6bWV0aDpgfmNvbGxlY3Rpb25zLnNvbWVuYW1lZHR1cGxlLl9hc2RpY3RgLiBFeGFtcGxlcyBvZiBzdHJ1Y3Qgc2VxdWVuY2VzCisgICAgICBpbmNsdWRlIDpkYXRhOmBzeXMuZmxvYXRfaW5mb2AgYW5kIHRoZSByZXR1cm4gdmFsdWUgb2YgOmZ1bmM6YG9zLnN0YXRgLgorCiAgICB0cmlwbGUtcXVvdGVkIHN0cmluZwogICAgICAgQSBzdHJpbmcgd2hpY2ggaXMgYm91bmQgYnkgdGhyZWUgaW5zdGFuY2VzIG9mIGVpdGhlciBhIHF1b3RhdGlvbiBtYXJrCiAgICAgICAoIikgb3IgYW4gYXBvc3Ryb3BoZSAoJykuICBXaGlsZSB0aGV5IGRvbid0IHByb3ZpZGUgYW55IGZ1bmN0aW9uYWxpdHkKZGlmZiAtLWdpdCBhL0RvYy9ob3d0by9kZXNjcmlwdG9yLnJzdCBiL0RvYy9ob3d0by9kZXNjcmlwdG9yLnJzdAppbmRleCAxNjE2ZjY3Li4wYjUxM2Y5IDEwMDY0NAotLS0gYS9Eb2MvaG93dG8vZGVzY3JpcHRvci5yc3QKKysrIGIvRG9jL2hvd3RvL2Rlc2NyaXB0b3IucnN0CkBAIC0zNiw5ICszNiw3IEBACiBsb29rZWQtdXAgdmFsdWUgaXMgYW4gb2JqZWN0IGRlZmluaW5nIG9uZSBvZiB0aGUgZGVzY3JpcHRvciBtZXRob2RzLCB0aGVuIFB5dGhvbgogbWF5IG92ZXJyaWRlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIGFuZCBpbnZva2UgdGhlIGRlc2NyaXB0b3IgbWV0aG9kIGluc3RlYWQuCiBXaGVyZSB0aGlzIG9jY3VycyBpbiB0aGUgcHJlY2VkZW5jZSBjaGFpbiBkZXBlbmRzIG9uIHdoaWNoIGRlc2NyaXB0b3IgbWV0aG9kcwotd2VyZSBkZWZpbmVkLiAgTm90ZSB0aGF0IGRlc2NyaXB0b3JzIGFyZSBvbmx5IGludm9rZWQgZm9yIG5ldyBzdHlsZSBvYmplY3RzIG9yCi1jbGFzc2VzIChhIGNsYXNzIGlzIG5ldyBzdHlsZSBpZiBpdCBpbmhlcml0cyBmcm9tIDpjbGFzczpgb2JqZWN0YCBvcgotOmNsYXNzOmB0eXBlYCkuCit3ZXJlIGRlZmluZWQuCiAKIERlc2NyaXB0b3JzIGFyZSBhIHBvd2VyZnVsLCBnZW5lcmFsIHB1cnBvc2UgcHJvdG9jb2wuICBUaGV5IGFyZSB0aGUgbWVjaGFuaXNtCiBiZWhpbmQgcHJvcGVydGllcywgbWV0aG9kcywgc3RhdGljIG1ldGhvZHMsIGNsYXNzIG1ldGhvZHMsIGFuZCA6ZnVuYzpgc3VwZXIoKWAuCkBAIC04OSw4ICs4Nyw2IEBACiBpcyBpbnZva2VkIGFjY29yZGluZyB0byB0aGUgcHJlY2VkZW5jZSBydWxlcyBsaXN0ZWQgYmVsb3cuCiAKIFRoZSBkZXRhaWxzIG9mIGludm9jYXRpb24gZGVwZW5kIG9uIHdoZXRoZXIgYGBvYmpgYCBpcyBhbiBvYmplY3Qgb3IgYSBjbGFzcy4KLUVpdGhlciB3YXksIGRlc2NyaXB0b3JzIG9ubHkgd29yayBmb3IgbmV3IHN0eWxlIG9iamVjdHMgYW5kIGNsYXNzZXMuICBBIGNsYXNzIGlzCi1uZXcgc3R5bGUgaWYgaXQgaXMgYSBzdWJjbGFzcyBvZiA6Y2xhc3M6YG9iamVjdGAuCiAKIEZvciBvYmplY3RzLCB0aGUgbWFjaGluZXJ5IGlzIGluIDptZXRoOmBvYmplY3QuX19nZXRhdHRyaWJ1dGVfX2Agd2hpY2gKIHRyYW5zZm9ybXMgYGBiLnhgYCBpbnRvIGBgdHlwZShiKS5fX2RpY3RfX1sneCddLl9fZ2V0X18oYiwgdHlwZShiKSlgYC4gIFRoZQpAQCAtMTE1LDcgKzExMSw2IEBACiAKICogZGVzY3JpcHRvcnMgYXJlIGludm9rZWQgYnkgdGhlIDptZXRoOmBfX2dldGF0dHJpYnV0ZV9fYCBtZXRob2QKICogb3ZlcnJpZGluZyA6bWV0aDpgX19nZXRhdHRyaWJ1dGVfX2AgcHJldmVudHMgYXV0b21hdGljIGRlc2NyaXB0b3IgY2FsbHMKLSogOm1ldGg6YF9fZ2V0YXR0cmlidXRlX19gIGlzIG9ubHkgYXZhaWxhYmxlIHdpdGggbmV3IHN0eWxlIGNsYXNzZXMgYW5kIG9iamVjdHMKICogOm1ldGg6YG9iamVjdC5fX2dldGF0dHJpYnV0ZV9fYCBhbmQgOm1ldGg6YHR5cGUuX19nZXRhdHRyaWJ1dGVfX2AgbWFrZQogICBkaWZmZXJlbnQgY2FsbHMgdG8gOm1ldGg6YF9fZ2V0X19gLgogKiBkYXRhIGRlc2NyaXB0b3JzIGFsd2F5cyBvdmVycmlkZSBpbnN0YW5jZSBkaWN0aW9uYXJpZXMuCkBAIC0xMjgsMTAgKzEyMyw3IEBACiBgYG1gYCBpcyByZXR1cm5lZCB1bmNoYW5nZWQuICBJZiBub3QgaW4gdGhlIGRpY3Rpb25hcnksIGBgbWBgIHJldmVydHMgdG8gYQogc2VhcmNoIHVzaW5nIDptZXRoOmBvYmplY3QuX19nZXRhdHRyaWJ1dGVfX2AuCiAKLU5vdGUsIGluIFB5dGhvbiAyLjIsIGBgc3VwZXIoQiwgb2JqKS5tKClgYCB3b3VsZCBvbmx5IGludm9rZSA6bWV0aDpgX19nZXRfX2AgaWYKLWBgbWBgIHdhcyBhIGRhdGEgZGVzY3JpcHRvci4gIEluIFB5dGhvbiAyLjMsIG5vbi1kYXRhIGRlc2NyaXB0b3JzIGFsc28gZ2V0Ci1pbnZva2VkIHVubGVzcyBhbiBvbGQtc3R5bGUgY2xhc3MgaXMgaW52b2x2ZWQuICBUaGUgaW1wbGVtZW50YXRpb24gZGV0YWlscyBhcmUKLWluIDpjOmZ1bmM6YHN1cGVyX2dldGF0dHJvKClgIGluCitUaGUgaW1wbGVtZW50YXRpb24gZGV0YWlscyBhcmUgaW4gOmM6ZnVuYzpgc3VwZXJfZ2V0YXR0cm8oKWAgaW4KIGBPYmplY3RzL3R5cGVvYmplY3QuYyA8aHR0cDovL3N2bi5weXRob24ub3JnL3ZpZXcvcHl0aG9uL3RydW5rL09iamVjdHMvdHlwZW9iamVjdC5jP3ZpZXc9bWFya3VwPmBfCiBhbmQgYSBwdXJlIFB5dGhvbiBlcXVpdmFsZW50IGNhbiBiZSBmb3VuZCBpbiBgR3VpZG8ncyBUdXRvcmlhbGBfLgogCmRpZmYgLS1naXQgYS9Eb2MvaG93dG8vbG9nZ2luZy1jb29rYm9vay5yc3QgYi9Eb2MvaG93dG8vbG9nZ2luZy1jb29rYm9vay5yc3QKaW5kZXggYWE0YTdkZi4uMWY1YmQzNyAxMDA2NDQKLS0tIGEvRG9jL2hvd3RvL2xvZ2dpbmctY29va2Jvb2sucnN0CisrKyBiL0RvYy9ob3d0by9sb2dnaW5nLWNvb2tib29rLnJzdApAQCAtMTMxNSwzICsxMzE1LDMxIEBACiBGb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGlzIGNvbmZpZ3VyYXRpb24sIHlvdSBjYW4gc2VlIHRoZSBgcmVsZXZhbnQKIHNlY3Rpb24gPGh0dHBzOi8vZG9jcy5kamFuZ29wcm9qZWN0LmNvbS9lbi8xLjMvdG9waWNzL2xvZ2dpbmcvI2NvbmZpZ3VyaW5nLWxvZ2dpbmc+YF8KIG9mIHRoZSBEamFuZ28gZG9jdW1lbnRhdGlvbi4KKworLi4gX2Nvb2tib29rLXJvdGF0b3ItbmFtZXI6CisKK1VzaW5nIGEgcm90YXRvciBhbmQgbmFtZXIgdG8gY3VzdG9taXNlIGxvZyByb3RhdGlvbiBwcm9jZXNzaW5nCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitBbiBleGFtcGxlIG9mIGhvdyB5b3UgY2FuIGRlZmluZSBhIG5hbWVyIGFuZCByb3RhdG9yIGlzIGdpdmVuIGluIHRoZSBmb2xsb3dpbmcKK3NuaXBwZXQsIHdoaWNoIHNob3dzIHpsaWItYmFzZWQgY29tcHJlc3Npb24gb2YgdGhlIGxvZyBmaWxlOjoKKworICAgIGRlZiBuYW1lcihuYW1lKToKKyAgICAgICAgcmV0dXJuIG5hbWUgKyAiLmd6IgorCisgICAgZGVmIHJvdGF0b3Ioc291cmNlLCBkZXN0KToKKyAgICAgICAgd2l0aCBvcGVuKHNvdXJjZSwgInJiIikgYXMgc2Y6CisgICAgICAgICAgICBkYXRhID0gc2YucmVhZCgpCisgICAgICAgICAgICBjb21wcmVzc2VkID0gemxpYi5jb21wcmVzcyhkYXRhLCA5KQorICAgICAgICAgICAgd2l0aCBvcGVuKGRlc3QsICJ3YiIpIGFzIGRmOgorICAgICAgICAgICAgICAgIGRmLndyaXRlKGNvbXByZXNzZWQpCisgICAgICAgIG9zLnJlbW92ZShzb3VyY2UpCisKKyAgICByaCA9IGxvZ2dpbmcuaGFuZGxlcnMuUm90YXRpbmdGaWxlSGFuZGxlciguLi4pCisgICAgcmgucm90YXRvciA9IHJvdGF0b3IKKyAgICByaC5uYW1lciA9IG5hbWVyCisKK1RoZXNlIGFyZSBub3QgInRydWUiIC5neiBmaWxlcywgYXMgdGhleSBhcmUgYmFyZSBjb21wcmVzc2VkIGRhdGEsIHdpdGggbm8KKyJjb250YWluZXIiIHN1Y2ggYXMgeW914oCZZCBmaW5kIGluIGFuIGFjdHVhbCBnemlwIGZpbGUuIFRoaXMgc25pcHBldCBpcyBqdXN0Citmb3IgaWxsdXN0cmF0aW9uIHB1cnBvc2VzLgorCmRpZmYgLS1naXQgYS9Eb2MvaG93dG8vc29ja2V0cy5yc3QgYi9Eb2MvaG93dG8vc29ja2V0cy5yc3QKaW5kZXggYTRhZTljMC4uZDI0MDAwOCAxMDA2NDQKLS0tIGEvRG9jL2hvd3RvL3NvY2tldHMucnN0CisrKyBiL0RvYy9ob3d0by9zb2NrZXRzLnJzdApAQCAtMjUsOCArMjUsOCBAQAogd29ya2luZy4gSXQgZG9lc24ndCBjb3ZlciB0aGUgZmluZSBwb2ludHMgKGFuZCB0aGVyZSBhcmUgYSBsb3Qgb2YgdGhlbSksIGJ1dCBJCiBob3BlIGl0IHdpbGwgZ2l2ZSB5b3UgZW5vdWdoIGJhY2tncm91bmQgdG8gYmVnaW4gdXNpbmcgdGhlbSBkZWNlbnRseS4KIAotSSdtIG9ubHkgZ29pbmcgdG8gdGFsayBhYm91dCBJTkVUIHNvY2tldHMsIGJ1dCB0aGV5IGFjY291bnQgZm9yIGF0IGxlYXN0IDk5JSBvZgotdGhlIHNvY2tldHMgaW4gdXNlLiBBbmQgSSdsbCBvbmx5IHRhbGsgYWJvdXQgU1RSRUFNIHNvY2tldHMgLSB1bmxlc3MgeW91IHJlYWxseQorSSdtIG9ubHkgZ29pbmcgdG8gdGFsayBhYm91dCBJTkVUIChpLmUuIElQdjQpIHNvY2tldHMsIGJ1dCB0aGV5IGFjY291bnQgZm9yIGF0IGxlYXN0IDk5JSBvZgordGhlIHNvY2tldHMgaW4gdXNlLiBBbmQgSSdsbCBvbmx5IHRhbGsgYWJvdXQgU1RSRUFNIChpLmUuIFRDUCkgc29ja2V0cyAtIHVubGVzcyB5b3UgcmVhbGx5CiBrbm93IHdoYXQgeW91J3JlIGRvaW5nIChpbiB3aGljaCBjYXNlIHRoaXMgSE9XVE8gaXNuJ3QgZm9yIHlvdSEpLCB5b3UnbGwgZ2V0CiBiZXR0ZXIgYmVoYXZpb3IgYW5kIHBlcmZvcm1hbmNlIGZyb20gYSBTVFJFQU0gc29ja2V0IHRoYW4gYW55dGhpbmcgZWxzZS4gSSB3aWxsCiB0cnkgdG8gY2xlYXIgdXAgdGhlIG15c3Rlcnkgb2Ygd2hhdCBhIHNvY2tldCBpcywgYXMgd2VsbCBhcyBzb21lIGhpbnRzIG9uIGhvdyB0bwpAQCAtMjA4LDEwICsyMDgsMTAgQEAKICAgICAgICAgICAgICAgIHRvdGFsc2VudCA9IHRvdGFsc2VudCArIHNlbnQKIAogICAgICAgIGRlZiBteXJlY2VpdmUoc2VsZik6Ci0gICAgICAgICAgIG1zZyA9ICcnCisgICAgICAgICAgIG1zZyA9IGInJwogICAgICAgICAgICB3aGlsZSBsZW4obXNnKSA8IE1TR0xFTjoKICAgICAgICAgICAgICAgIGNodW5rID0gc2VsZi5zb2NrLnJlY3YoTVNHTEVOLWxlbihtc2cpKQotICAgICAgICAgICAgICAgaWYgY2h1bmsgPT0gJyc6CisgICAgICAgICAgICAgICBpZiBjaHVuayA9PSBiJyc6CiAgICAgICAgICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJzb2NrZXQgY29ubmVjdGlvbiBicm9rZW4iKQogICAgICAgICAgICAgICAgbXNnID0gbXNnICsgY2h1bmsKICAgICAgICAgICAgcmV0dXJuIG1zZwpAQCAtMzcxLDEyICszNzEsNiBAQAogcG90ZW50aWFsX3dyaXRlcnMgbGlzdC4gSWYgaXQgc2hvd3MgdXAgaW4gdGhlIHdyaXRhYmxlIGxpc3QsIHlvdSBoYXZlIGEgZGVjZW50CiBjaGFuY2UgdGhhdCBpdCBoYXMgY29ubmVjdGVkLgogCi1PbmUgdmVyeSBuYXN0eSBwcm9ibGVtIHdpdGggYGBzZWxlY3RgYDogaWYgc29tZXdoZXJlIGluIHRob3NlIGlucHV0IGxpc3RzIG9mCi1zb2NrZXRzIGlzIG9uZSB3aGljaCBoYXMgZGllZCBhIG5hc3R5IGRlYXRoLCB0aGUgYGBzZWxlY3RgYCB3aWxsIGZhaWwuIFlvdSB0aGVuCi1uZWVkIHRvIGxvb3AgdGhyb3VnaCBldmVyeSBzaW5nbGUgZGFtbiBzb2NrZXQgaW4gYWxsIHRob3NlIGxpc3RzIGFuZCBkbyBhCi1gYHNlbGVjdChbc29ja10sW10sW10sMClgYCB1bnRpbCB5b3UgZmluZCB0aGUgYmFkIG9uZS4gVGhhdCB0aW1lb3V0IG9mIDAgbWVhbnMKLWl0IHdvbid0IHRha2UgbG9uZywgYnV0IGl0J3MgdWdseS4KLQogQWN0dWFsbHksIGBgc2VsZWN0YGAgY2FuIGJlIGhhbmR5IGV2ZW4gd2l0aCBibG9ja2luZyBzb2NrZXRzLiBJdCdzIG9uZSB3YXkgb2YKIGRldGVybWluaW5nIHdoZXRoZXIgeW91IHdpbGwgYmxvY2sgLSB0aGUgc29ja2V0IHJldHVybnMgYXMgcmVhZGFibGUgd2hlbiB0aGVyZSdzCiBzb21ldGhpbmcgaW4gdGhlIGJ1ZmZlcnMuICBIb3dldmVyLCB0aGlzIHN0aWxsIGRvZXNuJ3QgaGVscCB3aXRoIHRoZSBwcm9ibGVtIG9mCkBAIC0zODYsMjYgKzM4MCw2IEBACiBmaWxlcy4gRG9uJ3QgdHJ5IHRoaXMgb24gV2luZG93cy4gT24gV2luZG93cywgYGBzZWxlY3RgYCB3b3JrcyB3aXRoIHNvY2tldHMKIG9ubHkuIEFsc28gbm90ZSB0aGF0IGluIEMsIG1hbnkgb2YgdGhlIG1vcmUgYWR2YW5jZWQgc29ja2V0IG9wdGlvbnMgYXJlIGRvbmUKIGRpZmZlcmVudGx5IG9uIFdpbmRvd3MuIEluIGZhY3QsIG9uIFdpbmRvd3MgSSB1c3VhbGx5IHVzZSB0aHJlYWRzICh3aGljaCB3b3JrCi12ZXJ5LCB2ZXJ5IHdlbGwpIHdpdGggbXkgc29ja2V0cy4gRmFjZSBpdCwgaWYgeW91IHdhbnQgYW55IGtpbmQgb2YgcGVyZm9ybWFuY2UsCi15b3VyIGNvZGUgd2lsbCBsb29rIHZlcnkgZGlmZmVyZW50IG9uIFdpbmRvd3MgdGhhbiBvbiBVbml4LgordmVyeSwgdmVyeSB3ZWxsKSB3aXRoIG15IHNvY2tldHMuCiAKIAotUGVyZm9ybWFuY2UKLS0tLS0tLS0tLS0tCi0KLVRoZXJlJ3Mgbm8gcXVlc3Rpb24gdGhhdCB0aGUgZmFzdGVzdCBzb2NrZXRzIGNvZGUgdXNlcyBub24tYmxvY2tpbmcgc29ja2V0cyBhbmQKLXNlbGVjdCB0byBtdWx0aXBsZXggdGhlbS4gWW91IGNhbiBwdXQgdG9nZXRoZXIgc29tZXRoaW5nIHRoYXQgd2lsbCBzYXR1cmF0ZSBhCi1MQU4gY29ubmVjdGlvbiB3aXRob3V0IHB1dHRpbmcgYW55IHN0cmFpbiBvbiB0aGUgQ1BVLgotCi1UaGUgdHJvdWJsZSBpcyB0aGF0IGFuIGFwcCB3cml0dGVuIHRoaXMgd2F5IGNhbid0IGRvIG11Y2ggb2YgYW55dGhpbmcgZWxzZSAtCi1pdCBuZWVkcyB0byBiZSByZWFkeSB0byBzaHVmZmxlIGJ5dGVzIGFyb3VuZCBhdCBhbGwgdGltZXMuIEFzc3VtaW5nIHRoYXQgeW91cgotYXBwIGlzIGFjdHVhbGx5IHN1cHBvc2VkIHRvIGRvIHNvbWV0aGluZyBtb3JlIHRoYW4gdGhhdCwgdGhyZWFkaW5nIGlzIHRoZQotb3B0aW1hbCBzb2x1dGlvbiwgKGFuZCB1c2luZyBub24tYmxvY2tpbmcgc29ja2V0cyB3aWxsIGJlIGZhc3RlciB0aGFuIHVzaW5nCi1ibG9ja2luZyBzb2NrZXRzKS4KLQotRmluYWxseSwgcmVtZW1iZXIgdGhhdCBldmVuIHRob3VnaCBibG9ja2luZyBzb2NrZXRzIGFyZSBzb21ld2hhdCBzbG93ZXIgdGhhbgotbm9uLWJsb2NraW5nLCBpbiBtYW55IGNhc2VzIHRoZXkgYXJlIHRoZSAicmlnaHQiIHNvbHV0aW9uLiBBZnRlciBhbGwsIGlmIHlvdXIKLWFwcCBpcyBkcml2ZW4gYnkgdGhlIGRhdGEgaXQgcmVjZWl2ZXMgb3ZlciBhIHNvY2tldCwgdGhlcmUncyBub3QgbXVjaCBzZW5zZSBpbgotY29tcGxpY2F0aW5nIHRoZSBsb2dpYyBqdXN0IHNvIHlvdXIgYXBwIGNhbiB3YWl0IG9uIGBgc2VsZWN0YGAgaW5zdGVhZCBvZgotYGByZWN2YGAuCi0KZGlmZiAtLWdpdCBhL0RvYy9pbmNsdWRlcy9ub2RkeTIuYyBiL0RvYy9pbmNsdWRlcy9ub2RkeTIuYwppbmRleCA5YjhlYWZiLi45NjQxNTU4IDEwMDY0NAotLS0gYS9Eb2MvaW5jbHVkZXMvbm9kZHkyLmMKKysrIGIvRG9jL2luY2x1ZGVzL25vZGR5Mi5jCkBAIC0yNCwxOCArMjQsMTYgQEAKICAgICBzZWxmID0gKE5vZGR5ICopdHlwZS0+dHBfYWxsb2ModHlwZSwgMCk7CiAgICAgaWYgKHNlbGYgIT0gTlVMTCkgewogICAgICAgICBzZWxmLT5maXJzdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIiKTsKLSAgICAgICAgaWYgKHNlbGYtPmZpcnN0ID09IE5VTEwpCi0gICAgICAgICAgeworICAgICAgICBpZiAoc2VsZi0+Zmlyc3QgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKHNlbGYpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgfQotICAgICAgICAKKyAgICAgICAgfQorCiAgICAgICAgIHNlbGYtPmxhc3QgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiIik7Ci0gICAgICAgIGlmIChzZWxmLT5sYXN0ID09IE5VTEwpCi0gICAgICAgICAgeworICAgICAgICBpZiAoc2VsZi0+bGFzdCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICB9CisgICAgICAgIH0KIAogICAgICAgICBzZWxmLT5udW1iZXIgPSAwOwogICAgIH0KQEAgLTUwLDEwICs0OCwxMCBAQAogCiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJmaXJzdCIsICJsYXN0IiwgIm51bWJlciIsIE5VTEx9OwogCi0gICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8T09pIiwga3dsaXN0LCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZpcnN0LCAmbGFzdCwgCisgICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8T09pIiwga3dsaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmlyc3QsICZsYXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2VsZi0+bnVtYmVyKSkKLSAgICAgICAgcmV0dXJuIC0xOyAKKyAgICAgICAgcmV0dXJuIC0xOwogCiAgICAgaWYgKGZpcnN0KSB7CiAgICAgICAgIHRtcCA9IHNlbGYtPmZpcnN0OwpAQCAtODYsMTUgKzg0LDYgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBOb2RkeV9uYW1lKE5vZGR5KiBzZWxmKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqZm9ybWF0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqYXJncywgKnJlc3VsdDsKLQotICAgIGlmIChmb3JtYXQgPT0gTlVMTCkgewotICAgICAgICBmb3JtYXQgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiJXMgJXMiKTsKLSAgICAgICAgaWYgKGZvcm1hdCA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCiAgICAgaWYgKHNlbGYtPmZpcnN0ID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0F0dHJpYnV0ZUVycm9yLCAiZmlyc3QiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xMDUsMTQgKzk0LDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgYXJncyA9IFB5X0J1aWxkVmFsdWUoIk9PIiwgc2VsZi0+Zmlyc3QsIHNlbGYtPmxhc3QpOwotICAgIGlmIChhcmdzID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zvcm1hdChmb3JtYXQsIGFyZ3MpOwotICAgIFB5X0RFQ1JFRihhcmdzKTsKLSAgICAKLSAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVMgJVMiLCBzZWxmLT5maXJzdCwgc2VsZi0+bGFzdCk7CiB9CiAKIHN0YXRpYyBQeU1ldGhvZERlZiBOb2RkeV9tZXRob2RzW10gPSB7CkBAIC0xNDUsMTIgKzEyNywxMiBAQAogICAgIFB5X1RQRkxBR1NfREVGQVVMVCB8CiAgICAgICAgIFB5X1RQRkxBR1NfQkFTRVRZUEUsICAgLyogdHBfZmxhZ3MgKi8KICAgICAiTm9kZHkgb2JqZWN0cyIsICAgICAgICAgICAvKiB0cF9kb2MgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCiAgICAgTm9kZHlfbWV0aG9kcywgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLwogICAgIE5vZGR5X21lbWJlcnMsICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KQEAgLTE3Myw3ICsxNTUsNyBAQAogfTsKIAogUHlNT0RJTklUX0ZVTkMKLVB5SW5pdF9ub2RkeTIodm9pZCkgCitQeUluaXRfbm9kZHkyKHZvaWQpCiB7CiAgICAgUHlPYmplY3QqIG07CiAKZGlmZiAtLWdpdCBhL0RvYy9pbmNsdWRlcy9ub2RkeTMuYyBiL0RvYy9pbmNsdWRlcy9ub2RkeTMuYwppbmRleCA4OWYzYTc3Li44YTVhNzUzIDEwMDY0NAotLS0gYS9Eb2MvaW5jbHVkZXMvbm9kZHkzLmMKKysrIGIvRG9jL2luY2x1ZGVzL25vZGR5My5jCkBAIC0yNCwxOCArMjQsMTYgQEAKICAgICBzZWxmID0gKE5vZGR5ICopdHlwZS0+dHBfYWxsb2ModHlwZSwgMCk7CiAgICAgaWYgKHNlbGYgIT0gTlVMTCkgewogICAgICAgICBzZWxmLT5maXJzdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIiKTsKLSAgICAgICAgaWYgKHNlbGYtPmZpcnN0ID09IE5VTEwpCi0gICAgICAgICAgeworICAgICAgICBpZiAoc2VsZi0+Zmlyc3QgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKHNlbGYpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgfQotICAgICAgICAKKyAgICAgICAgfQorCiAgICAgICAgIHNlbGYtPmxhc3QgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiIik7Ci0gICAgICAgIGlmIChzZWxmLT5sYXN0ID09IE5VTEwpCi0gICAgICAgICAgeworICAgICAgICBpZiAoc2VsZi0+bGFzdCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICB9CisgICAgICAgIH0KIAogICAgICAgICBzZWxmLT5udW1iZXIgPSAwOwogICAgIH0KQEAgLTUwLDEwICs0OCwxMCBAQAogCiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJmaXJzdCIsICJsYXN0IiwgIm51bWJlciIsIE5VTEx9OwogCi0gICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8U1NpIiwga3dsaXN0LCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZpcnN0LCAmbGFzdCwgCisgICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8U1NpIiwga3dsaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmlyc3QsICZsYXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2VsZi0+bnVtYmVyKSkKLSAgICAgICAgcmV0dXJuIC0xOyAKKyAgICAgICAgcmV0dXJuIC0xOwogCiAgICAgaWYgKGZpcnN0KSB7CiAgICAgICAgIHRtcCA9IHNlbGYtPmZpcnN0OwpAQCAtODgsMjIgKzg2LDIyIEBACiBzdGF0aWMgaW50CiBOb2RkeV9zZXRmaXJzdChOb2RkeSAqc2VsZiwgUHlPYmplY3QgKnZhbHVlLCB2b2lkICpjbG9zdXJlKQogewotICBpZiAodmFsdWUgPT0gTlVMTCkgewotICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJDYW5ub3QgZGVsZXRlIHRoZSBmaXJzdCBhdHRyaWJ1dGUiKTsKLSAgICByZXR1cm4gLTE7Ci0gIH0KLSAgCi0gIGlmICghIFB5VW5pY29kZV9DaGVjayh2YWx1ZSkpIHsKLSAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAKLSAgICAgICAgICAgICAgICAgICAgIlRoZSBmaXJzdCBhdHRyaWJ1dGUgdmFsdWUgbXVzdCBiZSBhIHN0cmluZyIpOwotICAgIHJldHVybiAtMTsKLSAgfQotICAgICAgCi0gIFB5X0RFQ1JFRihzZWxmLT5maXJzdCk7Ci0gIFB5X0lOQ1JFRih2YWx1ZSk7Ci0gIHNlbGYtPmZpcnN0ID0gdmFsdWU7ICAgIAorICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJDYW5ub3QgZGVsZXRlIHRoZSBmaXJzdCBhdHRyaWJ1dGUiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KIAotICByZXR1cm4gMDsKKyAgICBpZiAoISBQeVVuaWNvZGVfQ2hlY2sodmFsdWUpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiVGhlIGZpcnN0IGF0dHJpYnV0ZSB2YWx1ZSBtdXN0IGJlIGEgc3RyaW5nIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBQeV9ERUNSRUYoc2VsZi0+Zmlyc3QpOworICAgIFB5X0lOQ1JFRih2YWx1ZSk7CisgICAgc2VsZi0+Zmlyc3QgPSB2YWx1ZTsKKworICAgIHJldHVybiAwOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMTE2LDMwICsxMTQsMzAgQEAKIHN0YXRpYyBpbnQKIE5vZGR5X3NldGxhc3QoTm9kZHkgKnNlbGYsIFB5T2JqZWN0ICp2YWx1ZSwgdm9pZCAqY2xvc3VyZSkKIHsKLSAgaWYgKHZhbHVlID09IE5VTEwpIHsKLSAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiQ2Fubm90IGRlbGV0ZSB0aGUgbGFzdCBhdHRyaWJ1dGUiKTsKLSAgICByZXR1cm4gLTE7Ci0gIH0KLSAgCi0gIGlmICghIFB5VW5pY29kZV9DaGVjayh2YWx1ZSkpIHsKLSAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAKLSAgICAgICAgICAgICAgICAgICAgIlRoZSBsYXN0IGF0dHJpYnV0ZSB2YWx1ZSBtdXN0IGJlIGEgc3RyaW5nIik7Ci0gICAgcmV0dXJuIC0xOwotICB9Ci0gICAgICAKLSAgUHlfREVDUkVGKHNlbGYtPmxhc3QpOwotICBQeV9JTkNSRUYodmFsdWUpOwotICBzZWxmLT5sYXN0ID0gdmFsdWU7ICAgIAorICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJDYW5ub3QgZGVsZXRlIHRoZSBsYXN0IGF0dHJpYnV0ZSIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQogCi0gIHJldHVybiAwOworICAgIGlmICghIFB5VW5pY29kZV9DaGVjayh2YWx1ZSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJUaGUgbGFzdCBhdHRyaWJ1dGUgdmFsdWUgbXVzdCBiZSBhIHN0cmluZyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgUHlfREVDUkVGKHNlbGYtPmxhc3QpOworICAgIFB5X0lOQ1JFRih2YWx1ZSk7CisgICAgc2VsZi0+bGFzdCA9IHZhbHVlOworCisgICAgcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBQeUdldFNldERlZiBOb2RkeV9nZXRzZXRlcnNbXSA9IHsKLSAgICB7ImZpcnN0IiwgCisgICAgeyJmaXJzdCIsCiAgICAgIChnZXR0ZXIpTm9kZHlfZ2V0Zmlyc3QsIChzZXR0ZXIpTm9kZHlfc2V0Zmlyc3QsCiAgICAgICJmaXJzdCBuYW1lIiwKICAgICAgTlVMTH0sCi0gICAgeyJsYXN0IiwgCisgICAgeyJsYXN0IiwKICAgICAgKGdldHRlcilOb2RkeV9nZXRsYXN0LCAoc2V0dGVyKU5vZGR5X3NldGxhc3QsCiAgICAgICJsYXN0IG5hbWUiLAogICAgICBOVUxMfSwKQEAgLTE0OSwyMyArMTQ3LDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBOb2RkeV9uYW1lKE5vZGR5KiBzZWxmKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqZm9ybWF0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqYXJncywgKnJlc3VsdDsKLQotICAgIGlmIChmb3JtYXQgPT0gTlVMTCkgewotICAgICAgICBmb3JtYXQgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiJXMgJXMiKTsKLSAgICAgICAgaWYgKGZvcm1hdCA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgYXJncyA9IFB5X0J1aWxkVmFsdWUoIk9PIiwgc2VsZi0+Zmlyc3QsIHNlbGYtPmxhc3QpOwotICAgIGlmIChhcmdzID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zvcm1hdChmb3JtYXQsIGFyZ3MpOwotICAgIFB5X0RFQ1JFRihhcmdzKTsKLSAgICAKLSAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVMgJVMiLCBzZWxmLT5maXJzdCwgc2VsZi0+bGFzdCk7CiB9CiAKIHN0YXRpYyBQeU1ldGhvZERlZiBOb2RkeV9tZXRob2RzW10gPSB7CkBAIC0xOTgsMTIgKzE4MCwxMiBAQAogICAgIFB5X1RQRkxBR1NfREVGQVVMVCB8CiAgICAgICAgIFB5X1RQRkxBR1NfQkFTRVRZUEUsICAgLyogdHBfZmxhZ3MgKi8KICAgICAiTm9kZHkgb2JqZWN0cyIsICAgICAgICAgICAvKiB0cF9kb2MgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCiAgICAgTm9kZHlfbWV0aG9kcywgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLwogICAgIE5vZGR5X21lbWJlcnMsICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KICAgICBOb2RkeV9nZXRzZXRlcnMsICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KQEAgLTIyNiw3ICsyMDgsNyBAQAogfTsKIAogUHlNT0RJTklUX0ZVTkMKLVB5SW5pdF9ub2RkeTModm9pZCkgCitQeUluaXRfbm9kZHkzKHZvaWQpCiB7CiAgICAgUHlPYmplY3QqIG07CiAKZGlmZiAtLWdpdCBhL0RvYy9pbmNsdWRlcy9ub2RkeTQuYyBiL0RvYy9pbmNsdWRlcy9ub2RkeTQuYwppbmRleCA2YTk2ZmFjLi5lYjk2MjJhIDEwMDY0NAotLS0gYS9Eb2MvaW5jbHVkZXMvbm9kZHk0LmMKKysrIGIvRG9jL2luY2x1ZGVzL25vZGR5NC5jCkBAIC0yNyw3ICsyNyw3IEBACiAgICAgcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgCitzdGF0aWMgaW50CiBOb2RkeV9jbGVhcihOb2RkeSAqc2VsZikKIHsKICAgICBQeU9iamVjdCAqdG1wOwpAQCAtNTgsMTggKzU4LDE2IEBACiAgICAgc2VsZiA9IChOb2RkeSAqKXR5cGUtPnRwX2FsbG9jKHR5cGUsIDApOwogICAgIGlmIChzZWxmICE9IE5VTEwpIHsKICAgICAgICAgc2VsZi0+Zmlyc3QgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiIik7Ci0gICAgICAgIGlmIChzZWxmLT5maXJzdCA9PSBOVUxMKQotICAgICAgICAgIHsKKyAgICAgICAgaWYgKHNlbGYtPmZpcnN0ID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihzZWxmKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgIH0KLSAgICAgICAgCisgICAgICAgIH0KKwogICAgICAgICBzZWxmLT5sYXN0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIiIpOwotICAgICAgICBpZiAoc2VsZi0+bGFzdCA9PSBOVUxMKQotICAgICAgICAgIHsKKyAgICAgICAgaWYgKHNlbGYtPmxhc3QgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKHNlbGYpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgfQorICAgICAgICB9CiAKICAgICAgICAgc2VsZi0+bnVtYmVyID0gMDsKICAgICB9CkBAIC04NCwxMCArODIsMTAgQEAKIAogICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiZmlyc3QiLCAibGFzdCIsICJudW1iZXIiLCBOVUxMfTsKIAotICAgIGlmICghIFB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAifE9PaSIsIGt3bGlzdCwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmaXJzdCwgJmxhc3QsIAorICAgIGlmICghIFB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAifE9PaSIsIGt3bGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZpcnN0LCAmbGFzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnNlbGYtPm51bWJlcikpCi0gICAgICAgIHJldHVybiAtMTsgCisgICAgICAgIHJldHVybiAtMTsKIAogICAgIGlmIChmaXJzdCkgewogICAgICAgICB0bXAgPSBzZWxmLT5maXJzdDsKQEAgLTEyMCwxNSArMTE4LDYgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBOb2RkeV9uYW1lKE5vZGR5KiBzZWxmKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqZm9ybWF0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqYXJncywgKnJlc3VsdDsKLQotICAgIGlmIChmb3JtYXQgPT0gTlVMTCkgewotICAgICAgICBmb3JtYXQgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiJXMgJXMiKTsKLSAgICAgICAgaWYgKGZvcm1hdCA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCiAgICAgaWYgKHNlbGYtPmZpcnN0ID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0F0dHJpYnV0ZUVycm9yLCAiZmlyc3QiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xMzksMTQgKzEyOCw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGFyZ3MgPSBQeV9CdWlsZFZhbHVlKCJPTyIsIHNlbGYtPmZpcnN0LCBzZWxmLT5sYXN0KTsKLSAgICBpZiAoYXJncyA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gb3JtYXQoZm9ybWF0LCBhcmdzKTsKLSAgICBQeV9ERUNSRUYoYXJncyk7Ci0gICAgCi0gICAgcmV0dXJuIHJlc3VsdDsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVTICVTIiwgc2VsZi0+Zmlyc3QsIHNlbGYtPmxhc3QpOwogfQogCiBzdGF0aWMgUHlNZXRob2REZWYgTm9kZHlfbWV0aG9kc1tdID0gewpAQCAtMTgyLDEwICsxNjQsMTAgQEAKICAgICAiTm9kZHkgb2JqZWN0cyIsICAgICAgICAgICAvKiB0cF9kb2MgKi8KICAgICAodHJhdmVyc2Vwcm9jKU5vZGR5X3RyYXZlcnNlLCAgIC8qIHRwX3RyYXZlcnNlICovCiAgICAgKGlucXVpcnkpTm9kZHlfY2xlYXIsICAgICAgICAgICAvKiB0cF9jbGVhciAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCi0gICAgMCwJCSAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLwogICAgIE5vZGR5X21ldGhvZHMsICAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KICAgICBOb2RkeV9tZW1iZXJzLCAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCkBAIC0yMDgsNyArMTkwLDcgQEAKIH07CiAKIFB5TU9ESU5JVF9GVU5DCi1QeUluaXRfbm9kZHk0KHZvaWQpIAorUHlJbml0X25vZGR5NCh2b2lkKQogewogICAgIFB5T2JqZWN0KiBtOwogCmRpZmYgLS1naXQgYS9Eb2MvaW5zdGFsbC9pbmRleC5yc3QgYi9Eb2MvaW5zdGFsbC9pbmRleC5yc3QKaW5kZXggYjIwZjFmYi4uYmIyZTljNSAxMDA2NDQKLS0tIGEvRG9jL2luc3RhbGwvaW5kZXgucnN0CisrKyBiL0RvYy9pbnN0YWxsL2luZGV4LnJzdApAQCAtMSwxMiArMSwxMCBAQAotLi4gaGlnaGxpZ2h0bGFuZzo6IG5vbmUKKy4uIF9wYWNrYWdpbmctaW5zdGFsbC1pbmRleDoKIAotLi4gX2luc3RhbGwtaW5kZXg6CisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAgSW5zdGFsbGluZyBQeXRob24gUHJvamVjdHMKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogCi0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotICBJbnN0YWxsaW5nIFB5dGhvbiBNb2R1bGVzCi0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotCi06QXV0aG9yOiBHcmVnIFdhcmQKKzpBdXRob3I6IFRoZSBGZWxsb3dzaGlwIG9mIHRoZSBQYWNrYWdpbmcKIDpSZWxlYXNlOiB8dmVyc2lvbnwKIDpEYXRlOiB8dG9kYXl8CiAKQEAgLTE2LDEwNzEgKzE0LDQzIEBACiAgICBhYm91dCBQeXRob24gYW5kIGFyZW4ndCBhYm91dCB0byBsZWFybiB0aGUgbGFuZ3VhZ2UganVzdCBpbiBvcmRlciB0bwogICAgaW5zdGFsbCBhbmQgbWFpbnRhaW4gaXQgZm9yIHRoZWlyIHVzZXJzLCBpLmUuIHN5c3RlbSBhZG1pbmlzdHJhdG9ycy4KICAgIFRodXMsIEkgaGF2ZSB0byBiZSBzdXJlIHRvIGV4cGxhaW4gdGhlIGJhc2ljcyBhdCBzb21lIHBvaW50OgotICAgc3lzLnBhdGggYW5kIFBZVEhPTlBBVEggYXQgbGVhc3QuICBTaG91bGQgcHJvYmFibHkgZ2l2ZSBwb2ludGVycyB0bworICAgc3lzLnBhdGggYW5kIFBZVEhPTlBBVEggYXQgbGVhc3QuIFNob3VsZCBwcm9iYWJseSBnaXZlIHBvaW50ZXJzIHRvCiAgICBvdGhlciBkb2NzIG9uICJpbXBvcnQgc2l0ZSIsIFBZVEhPTlNUQVJUVVAsIFBZVEhPTkhPTUUsIGV0Yy4KIAogICAgRmluYWxseSwgaXQgbWlnaHQgYmUgdXNlZnVsIHRvIGluY2x1ZGUgYWxsIHRoZSBtYXRlcmlhbCBmcm9tIG15ICJDYXJlCi0gICBhbmQgRmVlZGluZyBvZiBhIFB5dGhvbiBJbnN0YWxsYXRpb24iIHRhbGsgaW4gaGVyZSBzb21ld2hlcmUuICBZb3chCisgICBhbmQgRmVlZGluZyBvZiBhIFB5dGhvbiBJbnN0YWxsYXRpb24iIHRhbGsgaW4gaGVyZSBzb21ld2hlcmUuIFlvdyEKIAogLi4gdG9waWM6OiBBYnN0cmFjdAogCi0gICBUaGlzIGRvY3VtZW50IGRlc2NyaWJlcyB0aGUgUHl0aG9uIERpc3RyaWJ1dGlvbiBVdGlsaXRpZXMgKCJEaXN0dXRpbHMiKSBmcm9tIHRoZQotICAgZW5kLXVzZXIncyBwb2ludC1vZi12aWV3LCBkZXNjcmliaW5nIGhvdyB0byBleHRlbmQgdGhlIGNhcGFiaWxpdGllcyBvZiBhCi0gICBzdGFuZGFyZCBQeXRob24gaW5zdGFsbGF0aW9uIGJ5IGJ1aWxkaW5nIGFuZCBpbnN0YWxsaW5nIHRoaXJkLXBhcnR5IFB5dGhvbgotICAgbW9kdWxlcyBhbmQgZXh0ZW5zaW9ucy4KKyAgIFRoaXMgZG9jdW1lbnQgZGVzY3JpYmVzIFBhY2thZ2luZyBmcm9tIHRoZSBlbmQtdXNlcidzIHBvaW50IG9mIHZpZXc6IGl0CisgICBleHBsYWlucyBob3cgdG8gZXh0ZW5kIHRoZSBmdW5jdGlvbmFsaXR5IG9mIGEgc3RhbmRhcmQgUHl0aG9uIGluc3RhbGxhdGlvbiBieQorICAgYnVpbGRpbmcgYW5kIGluc3RhbGxpbmcgdGhpcmQtcGFydHkgUHl0aG9uIG1vZHVsZXMgYW5kIGFwcGxpY2F0aW9ucy4KIAogCi0uLiBfaW5zdC1pbnRybzoKK1RoaXMgZ3VpZGUgaXMgc3BsaXQgaW50byBhIHNpbXBsZSBvdmVydmlldyAgZm9sbG93ZWQgYnkgYSBsb25nZXIgcHJlc2VudGF0aW9uIG9mCit0aGUgOnByb2dyYW06YHB5c2V0dXBgIHNjcmlwdCwgdGhlIFB5dGhvbiBwYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCB1c2VkIHRvCitidWlsZCwgZGlzdHJpYnV0ZSwgc2VhcmNoIGZvciwgaW5zdGFsbCwgcmVtb3ZlIGFuZCBsaXN0IFB5dGhvbiBkaXN0cmlidXRpb25zLgogCi1JbnRyb2R1Y3Rpb24KLT09PT09PT09PT09PQorLi4gVE9ETyBpbnRlZ3JhdGUgaW5zdGFsbCBhbmQgcHlzZXR1cCBpbnN0ZWFkIG9mIGR1cGxpY2F0aW5nCiAKLUFsdGhvdWdoIFB5dGhvbidzIGV4dGVuc2l2ZSBzdGFuZGFyZCBsaWJyYXJ5IGNvdmVycyBtYW55IHByb2dyYW1taW5nIG5lZWRzLAotdGhlcmUgb2Z0ZW4gY29tZXMgYSB0aW1lIHdoZW4geW91IG5lZWQgdG8gYWRkIHNvbWUgbmV3IGZ1bmN0aW9uYWxpdHkgdG8geW91cgotUHl0aG9uIGluc3RhbGxhdGlvbiBpbiB0aGUgZm9ybSBvZiB0aGlyZC1wYXJ0eSBtb2R1bGVzLiAgVGhpcyBtaWdodCBiZSBuZWNlc3NhcnkKLXRvIHN1cHBvcnQgeW91ciBvd24gcHJvZ3JhbW1pbmcsIG9yIHRvIHN1cHBvcnQgYW4gYXBwbGljYXRpb24gdGhhdCB5b3Ugd2FudCB0bwotdXNlIGFuZCB0aGF0IGhhcHBlbnMgdG8gYmUgd3JpdHRlbiBpbiBQeXRob24uCisuLiB0b2N0cmVlOjoKKyAgIDptYXhkZXB0aDogMgorICAgOm51bWJlcmVkOgogCi1JbiB0aGUgcGFzdCwgdGhlcmUgaGFzIGJlZW4gbGl0dGxlIHN1cHBvcnQgZm9yIGFkZGluZyB0aGlyZC1wYXJ0eSBtb2R1bGVzIHRvIGFuCi1leGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLiAgV2l0aCB0aGUgaW50cm9kdWN0aW9uIG9mIHRoZSBQeXRob24gRGlzdHJpYnV0aW9uCi1VdGlsaXRpZXMgKERpc3R1dGlscyBmb3Igc2hvcnQpIGluIFB5dGhvbiAyLjAsIHRoaXMgY2hhbmdlZC4KLQotVGhpcyBkb2N1bWVudCBpcyBhaW1lZCBwcmltYXJpbHkgYXQgdGhlIHBlb3BsZSB3aG8gbmVlZCB0byBpbnN0YWxsIHRoaXJkLXBhcnR5Ci1QeXRob24gbW9kdWxlczogZW5kLXVzZXJzIGFuZCBzeXN0ZW0gYWRtaW5pc3RyYXRvcnMgd2hvIGp1c3QgbmVlZCB0byBnZXQgc29tZQotUHl0aG9uIGFwcGxpY2F0aW9uIHJ1bm5pbmcsIGFuZCBleGlzdGluZyBQeXRob24gcHJvZ3JhbW1lcnMgd2hvIHdhbnQgdG8gYWRkIHNvbWUKLW5ldyBnb29kaWVzIHRvIHRoZWlyIHRvb2xib3guICBZb3UgZG9uJ3QgbmVlZCB0byBrbm93IFB5dGhvbiB0byByZWFkIHRoaXMKLWRvY3VtZW50OyB0aGVyZSB3aWxsIGJlIHNvbWUgYnJpZWYgZm9yYXlzIGludG8gdXNpbmcgUHl0aG9uJ3MgaW50ZXJhY3RpdmUgbW9kZQotdG8gZXhwbG9yZSB5b3VyIGluc3RhbGxhdGlvbiwgYnV0IHRoYXQncyBpdC4gIElmIHlvdSdyZSBsb29raW5nIGZvciBpbmZvcm1hdGlvbgotb24gaG93IHRvIGRpc3RyaWJ1dGUgeW91ciBvd24gUHl0aG9uIG1vZHVsZXMgc28gdGhhdCBvdGhlcnMgbWF5IHVzZSB0aGVtLCBzZWUKLXRoZSA6cmVmOmBkaXN0dXRpbHMtaW5kZXhgIG1hbnVhbC4KLQotCi0uLiBfaW5zdC10cml2aWFsLWluc3RhbGw6Ci0KLUJlc3QgY2FzZTogdHJpdmlhbCBpbnN0YWxsYXRpb24KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotSW4gdGhlIGJlc3QgY2FzZSwgc29tZW9uZSB3aWxsIGhhdmUgcHJlcGFyZWQgYSBzcGVjaWFsIHZlcnNpb24gb2YgdGhlIG1vZHVsZQotZGlzdHJpYnV0aW9uIHlvdSB3YW50IHRvIGluc3RhbGwgdGhhdCBpcyB0YXJnZXRlZCBzcGVjaWZpY2FsbHkgYXQgeW91ciBwbGF0Zm9ybQotYW5kIGlzIGluc3RhbGxlZCBqdXN0IGxpa2UgYW55IG90aGVyIHNvZnR3YXJlIG9uIHlvdXIgcGxhdGZvcm0uICBGb3IgZXhhbXBsZSwKLXRoZSBtb2R1bGUgZGV2ZWxvcGVyIG1pZ2h0IG1ha2UgYW4gZXhlY3V0YWJsZSBpbnN0YWxsZXIgYXZhaWxhYmxlIGZvciBXaW5kb3dzCi11c2VycywgYW4gUlBNIHBhY2thZ2UgZm9yIHVzZXJzIG9mIFJQTS1iYXNlZCBMaW51eCBzeXN0ZW1zIChSZWQgSGF0LCBTdVNFLAotTWFuZHJha2UsIGFuZCBtYW55IG90aGVycyksIGEgRGViaWFuIHBhY2thZ2UgZm9yIHVzZXJzIG9mIERlYmlhbi1iYXNlZCBMaW51eAotc3lzdGVtcywgYW5kIHNvIGZvcnRoLgotCi1JbiB0aGF0IGNhc2UsIHlvdSB3b3VsZCBkb3dubG9hZCB0aGUgaW5zdGFsbGVyIGFwcHJvcHJpYXRlIHRvIHlvdXIgcGxhdGZvcm0gYW5kCi1kbyB0aGUgb2J2aW91cyB0aGluZyB3aXRoIGl0OiBydW4gaXQgaWYgaXQncyBhbiBleGVjdXRhYmxlIGluc3RhbGxlciwgYGBycG0KLS0taW5zdGFsbGBgIGl0IGlmIGl0J3MgYW4gUlBNLCBldGMuICBZb3UgZG9uJ3QgbmVlZCB0byBydW4gUHl0aG9uIG9yIGEgc2V0dXAKLXNjcmlwdCwgeW91IGRvbid0IG5lZWQgdG8gY29tcGlsZSBhbnl0aGluZy0tLXlvdSBtaWdodCBub3QgZXZlbiBuZWVkIHRvIHJlYWQgYW55Ci1pbnN0cnVjdGlvbnMgKGFsdGhvdWdoIGl0J3MgYWx3YXlzIGEgZ29vZCBpZGVhIHRvIGRvIHNvIGFueXdheSkuCi0KLU9mIGNvdXJzZSwgdGhpbmdzIHdpbGwgbm90IGFsd2F5cyBiZSB0aGF0IGVhc3kuICBZb3UgbWlnaHQgYmUgaW50ZXJlc3RlZCBpbiBhCi1tb2R1bGUgZGlzdHJpYnV0aW9uIHRoYXQgZG9lc24ndCBoYXZlIGFuIGVhc3ktdG8tdXNlIGluc3RhbGxlciBmb3IgeW91cgotcGxhdGZvcm0uICBJbiB0aGF0IGNhc2UsIHlvdSdsbCBoYXZlIHRvIHN0YXJ0IHdpdGggdGhlIHNvdXJjZSBkaXN0cmlidXRpb24KLXJlbGVhc2VkIGJ5IHRoZSBtb2R1bGUncyBhdXRob3IvbWFpbnRhaW5lci4gIEluc3RhbGxpbmcgZnJvbSBhIHNvdXJjZQotZGlzdHJpYnV0aW9uIGlzIG5vdCB0b28gaGFyZCwgYXMgbG9uZyBhcyB0aGUgbW9kdWxlcyBhcmUgcGFja2FnZWQgaW4gdGhlCi1zdGFuZGFyZCB3YXkuICBUaGUgYnVsayBvZiB0aGlzIGRvY3VtZW50IGlzIGFib3V0IGJ1aWxkaW5nIGFuZCBpbnN0YWxsaW5nCi1tb2R1bGVzIGZyb20gc3RhbmRhcmQgc291cmNlIGRpc3RyaWJ1dGlvbnMuCi0KLQotLi4gX2luc3QtbmV3LXN0YW5kYXJkOgotCi1UaGUgbmV3IHN0YW5kYXJkOiBEaXN0dXRpbHMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1JZiB5b3UgZG93bmxvYWQgYSBtb2R1bGUgc291cmNlIGRpc3RyaWJ1dGlvbiwgeW91IGNhbiB0ZWxsIHByZXR0eSBxdWlja2x5IGlmIGl0Ci13YXMgcGFja2FnZWQgYW5kIGRpc3RyaWJ1dGVkIGluIHRoZSBzdGFuZGFyZCB3YXksIGkuZS4gdXNpbmcgdGhlIERpc3R1dGlscy4KLUZpcnN0LCB0aGUgZGlzdHJpYnV0aW9uJ3MgbmFtZSBhbmQgdmVyc2lvbiBudW1iZXIgd2lsbCBiZSBmZWF0dXJlZCBwcm9taW5lbnRseQotaW4gdGhlIG5hbWUgb2YgdGhlIGRvd25sb2FkZWQgYXJjaGl2ZSwgZS5nLiA6ZmlsZTpgZm9vLTEuMC50YXIuZ3pgIG9yCi06ZmlsZTpgd2lkZ2V0LTAuOS43LnppcGAuICBOZXh0LCB0aGUgYXJjaGl2ZSB3aWxsIHVucGFjayBpbnRvIGEgc2ltaWxhcmx5LW5hbWVkCi1kaXJlY3Rvcnk6IDpmaWxlOmBmb28tMS4wYCBvciA6ZmlsZTpgd2lkZ2V0LTAuOS43YC4gIEFkZGl0aW9uYWxseSwgdGhlCi1kaXN0cmlidXRpb24gd2lsbCBjb250YWluIGEgc2V0dXAgc2NyaXB0IDpmaWxlOmBzZXR1cC5weWAsIGFuZCBhIGZpbGUgbmFtZWQKLTpmaWxlOmBSRUFETUUudHh0YCBvciBwb3NzaWJseSBqdXN0IDpmaWxlOmBSRUFETUVgLCB3aGljaCBzaG91bGQgZXhwbGFpbiB0aGF0Ci1idWlsZGluZyBhbmQgaW5zdGFsbGluZyB0aGUgbW9kdWxlIGRpc3RyaWJ1dGlvbiBpcyBhIHNpbXBsZSBtYXR0ZXIgb2YgcnVubmluZwotb25lIGNvbW1hbmQgZnJvbSBhIHRlcm1pbmFsOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwKLQotRm9yIFdpbmRvd3MsIHRoaXMgY29tbWFuZCBzaG91bGQgYmUgcnVuIGZyb20gYSBjb21tYW5kIHByb21wdCB3aW5kb3cKLSg6bWVudXNlbGVjdGlvbjpgU3RhcnQgLS0+IEFjY2Vzc29yaWVzYCk6OgotCi0gICBzZXR1cC5weSBpbnN0YWxsCi0KLUlmIGFsbCB0aGVzZSB0aGluZ3MgYXJlIHRydWUsIHRoZW4geW91IGFscmVhZHkga25vdyBob3cgdG8gYnVpbGQgYW5kIGluc3RhbGwgdGhlCi1tb2R1bGVzIHlvdSd2ZSBqdXN0IGRvd25sb2FkZWQ6ICBSdW4gdGhlIGNvbW1hbmQgYWJvdmUuIFVubGVzcyB5b3UgbmVlZCB0bwotaW5zdGFsbCB0aGluZ3MgaW4gYSBub24tc3RhbmRhcmQgd2F5IG9yIGN1c3RvbWl6ZSB0aGUgYnVpbGQgcHJvY2VzcywgeW91IGRvbid0Ci1yZWFsbHkgbmVlZCB0aGlzIG1hbnVhbC4gIE9yIHJhdGhlciwgdGhlIGFib3ZlIGNvbW1hbmQgaXMgZXZlcnl0aGluZyB5b3UgbmVlZCB0bwotZ2V0IG91dCBvZiB0aGlzIG1hbnVhbC4KLQotCi0uLiBfaW5zdC1zdGFuZGFyZC1pbnN0YWxsOgotCi1TdGFuZGFyZCBCdWlsZCBhbmQgSW5zdGFsbAotPT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotQXMgZGVzY3JpYmVkIGluIHNlY3Rpb24gOnJlZjpgaW5zdC1uZXctc3RhbmRhcmRgLCBidWlsZGluZyBhbmQgaW5zdGFsbGluZyBhIG1vZHVsZQotZGlzdHJpYnV0aW9uIHVzaW5nIHRoZSBEaXN0dXRpbHMgaXMgdXN1YWxseSBvbmUgc2ltcGxlIGNvbW1hbmQgdG8gcnVuIGZyb20gYQotdGVybWluYWw6OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbAotCi0KLS4uIF9pbnN0LXBsYXRmb3JtLXZhcmlhdGlvbnM6Ci0KLVBsYXRmb3JtIHZhcmlhdGlvbnMKLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotWW91IHNob3VsZCBhbHdheXMgcnVuIHRoZSBzZXR1cCBjb21tYW5kIGZyb20gdGhlIGRpc3RyaWJ1dGlvbiByb290IGRpcmVjdG9yeSwKLWkuZS4gdGhlIHRvcC1sZXZlbCBzdWJkaXJlY3RvcnkgdGhhdCB0aGUgbW9kdWxlIHNvdXJjZSBkaXN0cmlidXRpb24gdW5wYWNrcwotaW50by4gIEZvciBleGFtcGxlLCBpZiB5b3UndmUganVzdCBkb3dubG9hZGVkIGEgbW9kdWxlIHNvdXJjZSBkaXN0cmlidXRpb24KLTpmaWxlOmBmb28tMS4wLnRhci5nemAgb250byBhIFVuaXggc3lzdGVtLCB0aGUgbm9ybWFsIHRoaW5nIHRvIGRvIGlzOjoKLQotICAgZ3VuemlwIC1jIGZvby0xLjAudGFyLmd6IHwgdGFyIHhmIC0gICAgIyB1bnBhY2tzIGludG8gZGlyZWN0b3J5IGZvby0xLjAKLSAgIGNkIGZvby0xLjAKLSAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsCi0KLU9uIFdpbmRvd3MsIHlvdSdkIHByb2JhYmx5IGRvd25sb2FkIDpmaWxlOmBmb28tMS4wLnppcGAuICBJZiB5b3UgZG93bmxvYWRlZCB0aGUKLWFyY2hpdmUgZmlsZSB0byA6ZmlsZTpgQzpcXFRlbXBgLCB0aGVuIGl0IHdvdWxkIHVucGFjayBpbnRvCi06ZmlsZTpgQzpcXFRlbXBcXGZvby0xLjBgOyB5b3UgY2FuIHVzZSBlaXRoZXIgYSBhcmNoaXZlIG1hbmlwdWxhdG9yIHdpdGggYQotZ3JhcGhpY2FsIHVzZXIgaW50ZXJmYWNlIChzdWNoIGFzIFdpblppcCkgb3IgYSBjb21tYW5kLWxpbmUgdG9vbCAoc3VjaCBhcwotOnByb2dyYW06YHVuemlwYCBvciA6cHJvZ3JhbTpgcGt1bnppcGApIHRvIHVucGFjayB0aGUgYXJjaGl2ZS4gIFRoZW4sIG9wZW4gYQotY29tbWFuZCBwcm9tcHQgd2luZG93IGFuZCBydW46OgotCi0gICBjZCBjOlxUZW1wXGZvby0xLjAKLSAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsCi0KLQotLi4gX2luc3Qtc3BsaXR0aW5nLXVwOgotCi1TcGxpdHRpbmcgdGhlIGpvYiB1cAotLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotUnVubmluZyBgYHNldHVwLnB5IGluc3RhbGxgYCBidWlsZHMgYW5kIGluc3RhbGxzIGFsbCBtb2R1bGVzIGluIG9uZSBydW4uICBJZiB5b3UKLXByZWZlciB0byB3b3JrIGluY3JlbWVudGFsbHktLS1lc3BlY2lhbGx5IHVzZWZ1bCBpZiB5b3Ugd2FudCB0byBjdXN0b21pemUgdGhlCi1idWlsZCBwcm9jZXNzLCBvciBpZiB0aGluZ3MgYXJlIGdvaW5nIHdyb25nLS0teW91IGNhbiB1c2UgdGhlIHNldHVwIHNjcmlwdCB0byBkbwotb25lIHRoaW5nIGF0IGEgdGltZS4gIFRoaXMgaXMgcGFydGljdWxhcmx5IGhlbHBmdWwgd2hlbiB0aGUgYnVpbGQgYW5kIGluc3RhbGwKLXdpbGwgYmUgZG9uZSBieSBkaWZmZXJlbnQgdXNlcnMtLS1mb3IgZXhhbXBsZSwgeW91IG1pZ2h0IHdhbnQgdG8gYnVpbGQgYSBtb2R1bGUKLWRpc3RyaWJ1dGlvbiBhbmQgaGFuZCBpdCBvZmYgdG8gYSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBmb3IgaW5zdGFsbGF0aW9uIChvciBkbwotaXQgeW91cnNlbGYsIHdpdGggc3VwZXItdXNlciBwcml2aWxlZ2VzKS4KLQotRm9yIGV4YW1wbGUsIHlvdSBjYW4gYnVpbGQgZXZlcnl0aGluZyBpbiBvbmUgc3RlcCwgYW5kIHRoZW4gaW5zdGFsbCBldmVyeXRoaW5nCi1pbiBhIHNlY29uZCBzdGVwLCBieSBpbnZva2luZyB0aGUgc2V0dXAgc2NyaXB0IHR3aWNlOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbAotCi1JZiB5b3UgZG8gdGhpcywgeW91IHdpbGwgbm90aWNlIHRoYXQgcnVubmluZyB0aGUgOmNvbW1hbmQ6YGluc3RhbGxgIGNvbW1hbmQKLWZpcnN0IHJ1bnMgdGhlIDpjb21tYW5kOmBidWlsZGAgY29tbWFuZCwgd2hpY2gtLS1pbiB0aGlzIGNhc2UtLS1xdWlja2x5IG5vdGljZXMKLXRoYXQgaXQgaGFzIG5vdGhpbmcgdG8gZG8sIHNpbmNlIGV2ZXJ5dGhpbmcgaW4gdGhlIDpmaWxlOmBidWlsZGAgZGlyZWN0b3J5IGlzCi11cC10by1kYXRlLgotCi1Zb3UgbWF5IG5vdCBuZWVkIHRoaXMgYWJpbGl0eSB0byBicmVhayB0aGluZ3MgZG93biBvZnRlbiBpZiBhbGwgeW91IGRvIGlzCi1pbnN0YWxsIG1vZHVsZXMgZG93bmxvYWRlZCBvZmYgdGhlICduZXQsIGJ1dCBpdCdzIHZlcnkgaGFuZHkgZm9yIG1vcmUgYWR2YW5jZWQKLXRhc2tzLiAgSWYgeW91IGdldCBpbnRvIGRpc3RyaWJ1dGluZyB5b3VyIG93biBQeXRob24gbW9kdWxlcyBhbmQgZXh0ZW5zaW9ucywKLXlvdSdsbCBydW4gbG90cyBvZiBpbmRpdmlkdWFsIERpc3R1dGlscyBjb21tYW5kcyBvbiB0aGVpciBvd24uCi0KLQotLi4gX2luc3QtaG93LWJ1aWxkLXdvcmtzOgotCi1Ib3cgYnVpbGRpbmcgd29ya3MKLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1BcyBpbXBsaWVkIGFib3ZlLCB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kIGlzIHJlc3BvbnNpYmxlIGZvciBwdXR0aW5nIHRoZQotZmlsZXMgdG8gaW5zdGFsbCBpbnRvIGEgKmJ1aWxkIGRpcmVjdG9yeSouICBCeSBkZWZhdWx0LCB0aGlzIGlzIDpmaWxlOmBidWlsZGAKLXVuZGVyIHRoZSBkaXN0cmlidXRpb24gcm9vdDsgaWYgeW91J3JlIGV4Y2Vzc2l2ZWx5IGNvbmNlcm5lZCB3aXRoIHNwZWVkLCBvciB3YW50Ci10byBrZWVwIHRoZSBzb3VyY2UgdHJlZSBwcmlzdGluZSwgeW91IGNhbiBjaGFuZ2UgdGhlIGJ1aWxkIGRpcmVjdG9yeSB3aXRoIHRoZQotOm9wdGlvbjpgLS1idWlsZC1iYXNlYCBvcHRpb24uIEZvciBleGFtcGxlOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tYnVpbGQtYmFzZT0vdG1wL3B5YnVpbGQvZm9vLTEuMAotCi0oT3IgeW91IGNvdWxkIGRvIHRoaXMgcGVybWFuZW50bHkgd2l0aCBhIGRpcmVjdGl2ZSBpbiB5b3VyIHN5c3RlbSBvciBwZXJzb25hbAotRGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24gZmlsZTsgc2VlIHNlY3Rpb24gOnJlZjpgaW5zdC1jb25maWctZmlsZXNgLikgIE5vcm1hbGx5LCB0aGlzCi1pc24ndCBuZWNlc3NhcnkuCi0KLVRoZSBkZWZhdWx0IGxheW91dCBmb3IgdGhlIGJ1aWxkIHRyZWUgaXMgYXMgZm9sbG93czo6Ci0KLSAgIC0tLSBidWlsZC8gLS0tIGxpYi8KLSAgIG9yCi0gICAtLS0gYnVpbGQvIC0tLSBsaWIuPHBsYXQ+LwotICAgICAgICAgICAgICAgICAgdGVtcC48cGxhdD4vCi0KLXdoZXJlIGBgPHBsYXQ+YGAgZXhwYW5kcyB0byBhIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSBjdXJyZW50IE9TL2hhcmR3YXJlCi1wbGF0Zm9ybSBhbmQgUHl0aG9uIHZlcnNpb24uICBUaGUgZmlyc3QgZm9ybSwgd2l0aCBqdXN0IGEgOmZpbGU6YGxpYmAgZGlyZWN0b3J5LAotaXMgdXNlZCBmb3IgInB1cmUgbW9kdWxlIGRpc3RyaWJ1dGlvbnMiLS0tdGhhdCBpcywgbW9kdWxlIGRpc3RyaWJ1dGlvbnMgdGhhdAotaW5jbHVkZSBvbmx5IHB1cmUgUHl0aG9uIG1vZHVsZXMuICBJZiBhIG1vZHVsZSBkaXN0cmlidXRpb24gY29udGFpbnMgYW55Ci1leHRlbnNpb25zIChtb2R1bGVzIHdyaXR0ZW4gaW4gQy9DKyspLCB0aGVuIHRoZSBzZWNvbmQgZm9ybSwgd2l0aCB0d28gYGA8cGxhdD5gYAotZGlyZWN0b3JpZXMsIGlzIHVzZWQuICBJbiB0aGF0IGNhc2UsIHRoZSA6ZmlsZTpgdGVtcC57cGxhdH1gIGRpcmVjdG9yeSBob2xkcwotdGVtcG9yYXJ5IGZpbGVzIGdlbmVyYXRlZCBieSB0aGUgY29tcGlsZS9saW5rIHByb2Nlc3MgdGhhdCBkb24ndCBhY3R1YWxseSBnZXQKLWluc3RhbGxlZC4gIEluIGVpdGhlciBjYXNlLCB0aGUgOmZpbGU6YGxpYmAgKG9yIDpmaWxlOmBsaWIue3BsYXR9YCkgZGlyZWN0b3J5Ci1jb250YWlucyBhbGwgUHl0aG9uIG1vZHVsZXMgKHB1cmUgUHl0aG9uIGFuZCBleHRlbnNpb25zKSB0aGF0IHdpbGwgYmUgaW5zdGFsbGVkLgotCi1JbiB0aGUgZnV0dXJlLCBtb3JlIGRpcmVjdG9yaWVzIHdpbGwgYmUgYWRkZWQgdG8gaGFuZGxlIFB5dGhvbiBzY3JpcHRzLAotZG9jdW1lbnRhdGlvbiwgYmluYXJ5IGV4ZWN1dGFibGVzLCBhbmQgd2hhdGV2ZXIgZWxzZSBpcyBuZWVkZWQgdG8gaGFuZGxlIHRoZSBqb2IKLW9mIGluc3RhbGxpbmcgUHl0aG9uIG1vZHVsZXMgYW5kIGFwcGxpY2F0aW9ucy4KLQotCi0uLiBfaW5zdC1ob3ctaW5zdGFsbC13b3JrczoKLQotSG93IGluc3RhbGxhdGlvbiB3b3JrcwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1BZnRlciB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kIHJ1bnMgKHdoZXRoZXIgeW91IHJ1biBpdCBleHBsaWNpdGx5LCBvciB0aGUKLTpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kIGRvZXMgaXQgZm9yIHlvdSksIHRoZSB3b3JrIG9mIHRoZSA6Y29tbWFuZDpgaW5zdGFsbGAKLWNvbW1hbmQgaXMgcmVsYXRpdmVseSBzaW1wbGU6IGFsbCBpdCBoYXMgdG8gZG8gaXMgY29weSBldmVyeXRoaW5nIHVuZGVyCi06ZmlsZTpgYnVpbGQvbGliYCAob3IgOmZpbGU6YGJ1aWxkL2xpYi57cGxhdH1gKSB0byB5b3VyIGNob3NlbiBpbnN0YWxsYXRpb24KLWRpcmVjdG9yeS4KLQotSWYgeW91IGRvbid0IGNob29zZSBhbiBpbnN0YWxsYXRpb24gZGlyZWN0b3J5LS0taS5lLiwgaWYgeW91IGp1c3QgcnVuIGBgc2V0dXAucHkKLWluc3RhbGxgYFwgLS0tdGhlbiB0aGUgOmNvbW1hbmQ6YGluc3RhbGxgIGNvbW1hbmQgaW5zdGFsbHMgdG8gdGhlIHN0YW5kYXJkCi1sb2NhdGlvbiBmb3IgdGhpcmQtcGFydHkgUHl0aG9uIG1vZHVsZXMuICBUaGlzIGxvY2F0aW9uIHZhcmllcyBieSBwbGF0Zm9ybSBhbmQKLWJ5IGhvdyB5b3UgYnVpbHQvaW5zdGFsbGVkIFB5dGhvbiBpdHNlbGYuICBPbiBVbml4IChhbmQgTWFjIE9TIFgsIHdoaWNoIGlzIGFsc28KLVVuaXgtYmFzZWQpLCBpdCBhbHNvIGRlcGVuZHMgb24gd2hldGhlciB0aGUgbW9kdWxlIGRpc3RyaWJ1dGlvbiBiZWluZyBpbnN0YWxsZWQKLWlzIHB1cmUgUHl0aG9uIG9yIGNvbnRhaW5zIGV4dGVuc2lvbnMgKCJub24tcHVyZSIpOgotCi0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgUGxhdGZvcm0gICAgICAgIHwgU3RhbmRhcmQgaW5zdGFsbGF0aW9uIGxvY2F0aW9uICAgICAgICAgICAgICAgICAgICAgIHwgRGVmYXVsdCB2YWx1ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgfAotKz09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rCi18IFVuaXggKHB1cmUpICAgICB8IDpmaWxlOmB7cHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgICAgICB8IDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYCB8IFwoMSkgIHwKLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBVbml4IChub24tcHVyZSkgfCA6ZmlsZTpge2V4ZWMtcHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgfCA6ZmlsZTpgL3Vzci9sb2NhbC9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgfCBcKDEpICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgV2luZG93cyAgICAgICAgIHwgOmZpbGU6YHtwcmVmaXh9XFxMaWJcXHNpdGUtcGFja2FnZXNgICAgICAgICAgICAgICAgIHwgOmZpbGU6YEM6XFxQeXRob257WFl9XFxMaWJcXHNpdGUtcGFja2FnZXNgICAgICAgIHwgXCgyKSAgfAotKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi0KLU5vdGVzOgotCi0oMSkKLSAgIE1vc3QgTGludXggZGlzdHJpYnV0aW9ucyBpbmNsdWRlIFB5dGhvbiBhcyBhIHN0YW5kYXJkIHBhcnQgb2YgdGhlIHN5c3RlbSwgc28KLSAgIDpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YCBhcmUgdXN1YWxseSBib3RoIDpmaWxlOmAvdXNyYCBvbgotICAgTGludXguICBJZiB5b3UgYnVpbGQgUHl0aG9uIHlvdXJzZWxmIG9uIExpbnV4IChvciBhbnkgVW5peC1saWtlIHN5c3RlbSksIHRoZQotICAgZGVmYXVsdCA6ZmlsZTpge3ByZWZpeH1gIGFuZCA6ZmlsZTpge2V4ZWMtcHJlZml4fWAgYXJlIDpmaWxlOmAvdXNyL2xvY2FsYC4KLQotKDIpCi0gICBUaGUgZGVmYXVsdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IG9uIFdpbmRvd3Mgd2FzIDpmaWxlOmBDOlxcUHJvZ3JhbQotICAgRmlsZXNcXFB5dGhvbmAgdW5kZXIgUHl0aG9uIDEuNmExLCAxLjUuMiwgYW5kIGVhcmxpZXIuCi0KLTpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YCBzdGFuZCBmb3IgdGhlIGRpcmVjdG9yaWVzIHRoYXQgUHl0aG9uCi1pcyBpbnN0YWxsZWQgdG8sIGFuZCB3aGVyZSBpdCBmaW5kcyBpdHMgbGlicmFyaWVzIGF0IHJ1bi10aW1lLiAgVGhleSBhcmUgYWx3YXlzCi10aGUgc2FtZSB1bmRlciBXaW5kb3dzLCBhbmQgdmVyeSBvZnRlbiB0aGUgc2FtZSB1bmRlciBVbml4IGFuZCBNYWMgT1MgWC4gIFlvdQotY2FuIGZpbmQgb3V0IHdoYXQgeW91ciBQeXRob24gaW5zdGFsbGF0aW9uIHVzZXMgZm9yIDpmaWxlOmB7cHJlZml4fWAgYW5kCi06ZmlsZTpge2V4ZWMtcHJlZml4fWAgYnkgcnVubmluZyBQeXRob24gaW4gaW50ZXJhY3RpdmUgbW9kZSBhbmQgdHlwaW5nIGEgZmV3Ci1zaW1wbGUgY29tbWFuZHMuIFVuZGVyIFVuaXgsIGp1c3QgdHlwZSBgYHB5dGhvbmBgIGF0IHRoZSBzaGVsbCBwcm9tcHQuICBVbmRlcgotV2luZG93cywgY2hvb3NlIDptZW51c2VsZWN0aW9uOmBTdGFydCAtLT4gUHJvZ3JhbXMgLS0+IFB5dGhvbiBYLlkgLS0+Ci1QeXRob24gKGNvbW1hbmQgbGluZSlgLiAgIE9uY2UgdGhlIGludGVycHJldGVyIGlzIHN0YXJ0ZWQsIHlvdSB0eXBlIFB5dGhvbiBjb2RlCi1hdCB0aGUgcHJvbXB0LiAgRm9yIGV4YW1wbGUsIG9uIG15IExpbnV4IHN5c3RlbSwgSSB0eXBlIHRoZSB0aHJlZSBQeXRob24KLXN0YXRlbWVudHMgc2hvd24gYmVsb3csIGFuZCBnZXQgdGhlIG91dHB1dCBhcyBzaG93biwgdG8gZmluZCBvdXQgbXkKLTpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YDo6Ci0KLSAgIFB5dGhvbiAyLjQgKCMyNiwgQXVnICA3IDIwMDQsIDE3OjE5OjAyKQotICAgVHlwZSAiaGVscCIsICJjb3B5cmlnaHQiLCAiY3JlZGl0cyIgb3IgImxpY2Vuc2UiIGZvciBtb3JlIGluZm9ybWF0aW9uLgotICAgPj4+IGltcG9ydCBzeXMKLSAgID4+PiBzeXMucHJlZml4Ci0gICAnL3VzcicKLSAgID4+PiBzeXMuZXhlY19wcmVmaXgKLSAgICcvdXNyJwotCi1BIGZldyBvdGhlciBwbGFjZWhvbGRlcnMgYXJlIHVzZWQgaW4gdGhpcyBkb2N1bWVudDogOmZpbGU6YHtYLll9YCBzdGFuZHMgZm9yIHRoZQotdmVyc2lvbiBvZiBQeXRob24sIGZvciBleGFtcGxlIGBgMy4yYGA7IDpmaWxlOmB7YWJpZmxhZ3N9YCB3aWxsIGJlIHJlcGxhY2VkIGJ5Ci10aGUgdmFsdWUgb2YgOmRhdGE6YHN5cy5hYmlmbGFnc2Agb3IgdGhlIGVtcHR5IHN0cmluZyBmb3IgcGxhdGZvcm1zIHdoaWNoIGRvbid0Ci1kZWZpbmUgQUJJIGZsYWdzOyA6ZmlsZTpge2Rpc3RuYW1lfWAgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgbmFtZSBvZiB0aGUgbW9kdWxlCi1kaXN0cmlidXRpb24gYmVpbmcgaW5zdGFsbGVkLiAgRG90cyBhbmQgY2FwaXRhbGl6YXRpb24gYXJlIGltcG9ydGFudCBpbiB0aGUKLXBhdGhzOyBmb3IgZXhhbXBsZSwgYSB2YWx1ZSB0aGF0IHVzZXMgYGBweXRob24zLjJgYCBvbiBVTklYIHdpbGwgdHlwaWNhbGx5IHVzZQotYGBQeXRob24zMmBgIG9uIFdpbmRvd3MuCi0KLUlmIHlvdSBkb24ndCB3YW50IHRvIGluc3RhbGwgbW9kdWxlcyB0byB0aGUgc3RhbmRhcmQgbG9jYXRpb24sIG9yIGlmIHlvdSBkb24ndAotaGF2ZSBwZXJtaXNzaW9uIHRvIHdyaXRlIHRoZXJlLCB0aGVuIHlvdSBuZWVkIHRvIHJlYWQgYWJvdXQgYWx0ZXJuYXRlCi1pbnN0YWxsYXRpb25zIGluIHNlY3Rpb24gOnJlZjpgaW5zdC1hbHQtaW5zdGFsbGAuICBJZiB5b3Ugd2FudCB0byBjdXN0b21pemUgeW91cgotaW5zdGFsbGF0aW9uIGRpcmVjdG9yaWVzIG1vcmUgaGVhdmlseSwgc2VlIHNlY3Rpb24gOnJlZjpgaW5zdC1jdXN0b20taW5zdGFsbGAgb24KLWN1c3RvbSBpbnN0YWxsYXRpb25zLgotCi0KLS4uIF9pbnN0LWFsdC1pbnN0YWxsOgotCi1BbHRlcm5hdGUgSW5zdGFsbGF0aW9uCi09PT09PT09PT09PT09PT09PT09PT09Ci0KLU9mdGVuLCBpdCBpcyBuZWNlc3Nhcnkgb3IgZGVzaXJhYmxlIHRvIGluc3RhbGwgbW9kdWxlcyB0byBhIGxvY2F0aW9uIG90aGVyIHRoYW4KLXRoZSBzdGFuZGFyZCBsb2NhdGlvbiBmb3IgdGhpcmQtcGFydHkgUHl0aG9uIG1vZHVsZXMuICBGb3IgZXhhbXBsZSwgb24gYSBVbml4Ci1zeXN0ZW0geW91IG1pZ2h0IG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gd3JpdGUgdG8gdGhlIHN0YW5kYXJkIHRoaXJkLXBhcnR5IG1vZHVsZQotZGlyZWN0b3J5LiAgT3IgeW91IG1pZ2h0IHdpc2ggdG8gdHJ5IG91dCBhIG1vZHVsZSBiZWZvcmUgbWFraW5nIGl0IGEgc3RhbmRhcmQKLXBhcnQgb2YgeW91ciBsb2NhbCBQeXRob24gaW5zdGFsbGF0aW9uLiAgVGhpcyBpcyBlc3BlY2lhbGx5IHRydWUgd2hlbiB1cGdyYWRpbmcKLWEgZGlzdHJpYnV0aW9uIGFscmVhZHkgcHJlc2VudDogeW91IHdhbnQgdG8gbWFrZSBzdXJlIHlvdXIgZXhpc3RpbmcgYmFzZSBvZgotc2NyaXB0cyBzdGlsbCB3b3JrcyB3aXRoIHRoZSBuZXcgdmVyc2lvbiBiZWZvcmUgYWN0dWFsbHkgdXBncmFkaW5nLgotCi1UaGUgRGlzdHV0aWxzIDpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kIGlzIGRlc2lnbmVkIHRvIG1ha2UgaW5zdGFsbGluZyBtb2R1bGUKLWRpc3RyaWJ1dGlvbnMgdG8gYW4gYWx0ZXJuYXRlIGxvY2F0aW9uIHNpbXBsZSBhbmQgcGFpbmxlc3MuICBUaGUgYmFzaWMgaWRlYSBpcwotdGhhdCB5b3Ugc3VwcGx5IGEgYmFzZSBkaXJlY3RvcnkgZm9yIHRoZSBpbnN0YWxsYXRpb24sIGFuZCB0aGUKLTpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kIHBpY2tzIGEgc2V0IG9mIGRpcmVjdG9yaWVzIChjYWxsZWQgYW4gKmluc3RhbGxhdGlvbgotc2NoZW1lKikgdW5kZXIgdGhpcyBiYXNlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBpbnN0YWxsIGZpbGVzLiAgVGhlIGRldGFpbHMKLWRpZmZlciBhY3Jvc3MgcGxhdGZvcm1zLCBzbyByZWFkIHdoaWNoZXZlciBvZiB0aGUgZm9sbG93aW5nIHNlY3Rpb25zIGFwcGxpZXMgdG8KLXlvdS4KLQotTm90ZSB0aGF0IHRoZSB2YXJpb3VzIGFsdGVybmF0ZSBpbnN0YWxsYXRpb24gc2NoZW1lcyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlOiB5b3UKLWNhbiBwYXNzIGBgLS11c2VyYGAsIG9yIGBgLS1ob21lYGAsIG9yIGBgLS1wcmVmaXhgYCBhbmQgYGAtLWV4ZWMtcHJlZml4YGAsIG9yCi1gYC0taW5zdGFsbC1iYXNlYGAgYW5kIGBgLS1pbnN0YWxsLXBsYXRiYXNlYGAsIGJ1dCB5b3UgY2FuJ3QgbWl4IGZyb20gdGhlc2UKLWdyb3Vwcy4KLQotCi0uLiBfaW5zdC1hbHQtaW5zdGFsbC11c2VyOgotCi1BbHRlcm5hdGUgaW5zdGFsbGF0aW9uOiB0aGUgdXNlciBzY2hlbWUKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1UaGlzIHNjaGVtZSBpcyBkZXNpZ25lZCB0byBiZSB0aGUgbW9zdCBjb252ZW5pZW50IHNvbHV0aW9uIGZvciB1c2VycyB0aGF0IGRvbid0Ci1oYXZlIHdyaXRlIHBlcm1pc3Npb24gdG8gdGhlIGdsb2JhbCBzaXRlLXBhY2thZ2VzIGRpcmVjdG9yeSBvciBkb24ndCB3YW50IHRvCi1pbnN0YWxsIGludG8gaXQuICBJdCBpcyBlbmFibGVkIHdpdGggYSBzaW1wbGUgb3B0aW9uOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS11c2VyCi0KLUZpbGVzIHdpbGwgYmUgaW5zdGFsbGVkIGludG8gc3ViZGlyZWN0b3JpZXMgb2YgOmRhdGE6YHNpdGUuVVNFUl9CQVNFYCAod3JpdHRlbgotYXMgOmZpbGU6YHt1c2VyYmFzZX1gIGhlcmVhZnRlcikuICBUaGlzIHNjaGVtZSBpbnN0YWxscyBwdXJlIFB5dGhvbiBtb2R1bGVzIGFuZAotZXh0ZW5zaW9uIG1vZHVsZXMgaW4gdGhlIHNhbWUgbG9jYXRpb24gKGFsc28ga25vd24gYXMgOmRhdGE6YHNpdGUuVVNFUl9TSVRFYCkuCi1IZXJlIGFyZSB0aGUgdmFsdWVzIGZvciBVTklYLCBpbmNsdWRpbmcgTWFjIE9TIFg6Ci0KLT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKLT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYAotc2NyaXB0cyAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2JpbmAKLWRhdGEgICAgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfWAKLUMgaGVhZGVycyAgICAgICA6ZmlsZTpge3VzZXJiYXNlfS9pbmNsdWRlL3B5dGhvbntYLll9e2FiaWZsYWdzfS97ZGlzdG5hbWV9YAotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUFuZCBoZXJlIGFyZSB0aGUgdmFsdWVzIHVzZWQgb24gV2luZG93czoKLQotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UeXBlIG9mIGZpbGUgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1tb2R1bGVzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1cXFB5dGhvbntYWX1cXHNpdGUtcGFja2FnZXNgCi1zY3JpcHRzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1cXFNjcmlwdHNgCi1kYXRhICAgICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1gCi1DIGhlYWRlcnMgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1cXFB5dGhvbntYWX1cXEluY2x1ZGVcXHtkaXN0bmFtZX1gCi09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotVGhlIGFkdmFudGFnZSBvZiB1c2luZyB0aGlzIHNjaGVtZSBjb21wYXJlZCB0byB0aGUgb3RoZXIgb25lcyBkZXNjcmliZWQgYmVsb3cgaXMKLXRoYXQgdGhlIHVzZXIgc2l0ZS1wYWNrYWdlcyBkaXJlY3RvcnkgaXMgdW5kZXIgbm9ybWFsIGNvbmRpdGlvbnMgYWx3YXlzIGluY2x1ZGVkCi1pbiA6ZGF0YTpgc3lzLnBhdGhgIChzZWUgOm1vZDpgc2l0ZWAgZm9yIG1vcmUgaW5mb3JtYXRpb24pLCB3aGljaCBtZWFucyB0aGF0Ci10aGVyZSBpcyBubyBhZGRpdGlvbmFsIHN0ZXAgdG8gcGVyZm9ybSBhZnRlciBydW5uaW5nIHRoZSA6ZmlsZTpgc2V0dXAucHlgIHNjcmlwdAotdG8gZmluYWxpemUgdGhlIGluc3RhbGxhdGlvbi4KLQotVGhlIDpjb21tYW5kOmBidWlsZF9leHRgIGNvbW1hbmQgYWxzbyBoYXMgYSBgYC0tdXNlcmBgIG9wdGlvbiB0byBhZGQKLTpmaWxlOmB7dXNlcmJhc2V9L2luY2x1ZGVgIHRvIHRoZSBjb21waWxlciBzZWFyY2ggcGF0aCBmb3IgaGVhZGVyIGZpbGVzIGFuZAotOmZpbGU6YHt1c2VyYmFzZX0vbGliYCB0byB0aGUgY29tcGlsZXIgc2VhcmNoIHBhdGggZm9yIGxpYnJhcmllcyBhcyB3ZWxsIGFzIHRvCi10aGUgcnVudGltZSBzZWFyY2ggcGF0aCBmb3Igc2hhcmVkIEMgbGlicmFyaWVzIChycGF0aCkuCi0KLQotLi4gX2luc3QtYWx0LWluc3RhbGwtaG9tZToKLQotQWx0ZXJuYXRlIGluc3RhbGxhdGlvbjogdGhlIGhvbWUgc2NoZW1lCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotVGhlIGlkZWEgYmVoaW5kIHRoZSAiaG9tZSBzY2hlbWUiIGlzIHRoYXQgeW91IGJ1aWxkIGFuZCBtYWludGFpbiBhIHBlcnNvbmFsCi1zdGFzaCBvZiBQeXRob24gbW9kdWxlcy4gIFRoaXMgc2NoZW1lJ3MgbmFtZSBpcyBkZXJpdmVkIGZyb20gdGhlIGlkZWEgb2YgYQotImhvbWUiIGRpcmVjdG9yeSBvbiBVbml4LCBzaW5jZSBpdCdzIG5vdCB1bnVzdWFsIGZvciBhIFVuaXggdXNlciB0byBtYWtlIHRoZWlyCi1ob21lIGRpcmVjdG9yeSBoYXZlIGEgbGF5b3V0IHNpbWlsYXIgdG8gOmZpbGU6YC91c3IvYCBvciA6ZmlsZTpgL3Vzci9sb2NhbC9gLgotVGhpcyBzY2hlbWUgY2FuIGJlIHVzZWQgYnkgYW55b25lLCByZWdhcmRsZXNzIG9mIHRoZSBvcGVyYXRpbmcgc3lzdGVtIHRoZXkKLWFyZSBpbnN0YWxsaW5nIGZvci4KLQotSW5zdGFsbGluZyBhIG5ldyBtb2R1bGUgZGlzdHJpYnV0aW9uIGlzIGFzIHNpbXBsZSBhcyA6OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWhvbWU9PGRpcj4KLQotd2hlcmUgeW91IGNhbiBzdXBwbHkgYW55IGRpcmVjdG9yeSB5b3UgbGlrZSBmb3IgdGhlIDpvcHRpb246YC0taG9tZWAgb3B0aW9uLiAgT24KLVVuaXgsIGxhenkgdHlwaXN0cyBjYW4ganVzdCB0eXBlIGEgdGlsZGUgKGBgfmBgKTsgdGhlIDpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kCi13aWxsIGV4cGFuZCB0aGlzIHRvIHlvdXIgaG9tZSBkaXJlY3Rvcnk6OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWhvbWU9fgotCi1UbyBtYWtlIFB5dGhvbiBmaW5kIHRoZSBkaXN0cmlidXRpb25zIGluc3RhbGxlZCB3aXRoIHRoaXMgc2NoZW1lLCB5b3UgbWF5IGhhdmUKLXRvIDpyZWY6YG1vZGlmeSBQeXRob24ncyBzZWFyY2ggcGF0aCA8aW5zdC1zZWFyY2gtcGF0aD5gIG9yIGVkaXQKLTptb2Q6YHNpdGVjdXN0b21pemVgIChzZWUgOm1vZDpgc2l0ZWApIHRvIGNhbGwgOmZ1bmM6YHNpdGUuYWRkc2l0ZWRpcmAgb3IgZWRpdAotOmRhdGE6YHN5cy5wYXRoYC4KLQotVGhlIDpvcHRpb246YC0taG9tZWAgb3B0aW9uIGRlZmluZXMgdGhlIGluc3RhbGxhdGlvbiBiYXNlIGRpcmVjdG9yeS4gIEZpbGVzIGFyZQotaW5zdGFsbGVkIHRvIHRoZSBmb2xsb3dpbmcgZGlyZWN0b3JpZXMgdW5kZXIgdGhlIGluc3RhbGxhdGlvbiBiYXNlIGFzIGZvbGxvd3M6Ci0KLT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKLT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7aG9tZX0vbGliL3B5dGhvbmAKLXNjcmlwdHMgICAgICAgICA6ZmlsZTpge2hvbWV9L2JpbmAKLWRhdGEgICAgICAgICAgICA6ZmlsZTpge2hvbWV9YAotQyBoZWFkZXJzICAgICAgIDpmaWxlOmB7aG9tZX0vaW5jbHVkZS9weXRob24ve2Rpc3RuYW1lfWAKLT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi0oTWVudGFsbHkgcmVwbGFjZSBzbGFzaGVzIHdpdGggYmFja3NsYXNoZXMgaWYgeW91J3JlIG9uIFdpbmRvd3MuKQotCi0KLS4uIF9pbnN0LWFsdC1pbnN0YWxsLXByZWZpeC11bml4OgotCi1BbHRlcm5hdGUgaW5zdGFsbGF0aW9uOiBVbml4ICh0aGUgcHJlZml4IHNjaGVtZSkKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1UaGUgInByZWZpeCBzY2hlbWUiIGlzIHVzZWZ1bCB3aGVuIHlvdSB3aXNoIHRvIHVzZSBvbmUgUHl0aG9uIGluc3RhbGxhdGlvbiB0bwotcGVyZm9ybSB0aGUgYnVpbGQvaW5zdGFsbCAoaS5lLiwgdG8gcnVuIHRoZSBzZXR1cCBzY3JpcHQpLCBidXQgaW5zdGFsbCBtb2R1bGVzCi1pbnRvIHRoZSB0aGlyZC1wYXJ0eSBtb2R1bGUgZGlyZWN0b3J5IG9mIGEgZGlmZmVyZW50IFB5dGhvbiBpbnN0YWxsYXRpb24gKG9yCi1zb21ldGhpbmcgdGhhdCBsb29rcyBsaWtlIGEgZGlmZmVyZW50IFB5dGhvbiBpbnN0YWxsYXRpb24pLiAgSWYgdGhpcyBzb3VuZHMgYQotdHJpZmxlIHVudXN1YWwsIGl0IGlzLS0tdGhhdCdzIHdoeSB0aGUgdXNlciBhbmQgaG9tZSBzY2hlbWVzIGNvbWUgYmVmb3JlLiAgSG93ZXZlciwKLXRoZXJlIGFyZSBhdCBsZWFzdCB0d28ga25vd24gY2FzZXMgd2hlcmUgdGhlIHByZWZpeCBzY2hlbWUgd2lsbCBiZSB1c2VmdWwuCi0KLUZpcnN0LCBjb25zaWRlciB0aGF0IG1hbnkgTGludXggZGlzdHJpYnV0aW9ucyBwdXQgUHl0aG9uIGluIDpmaWxlOmAvdXNyYCwgcmF0aGVyCi10aGFuIHRoZSBtb3JlIHRyYWRpdGlvbmFsIDpmaWxlOmAvdXNyL2xvY2FsYC4gIFRoaXMgaXMgZW50aXJlbHkgYXBwcm9wcmlhdGUsCi1zaW5jZSBpbiB0aG9zZSBjYXNlcyBQeXRob24gaXMgcGFydCBvZiAidGhlIHN5c3RlbSIgcmF0aGVyIHRoYW4gYSBsb2NhbCBhZGQtb24uCi1Ib3dldmVyLCBpZiB5b3UgYXJlIGluc3RhbGxpbmcgUHl0aG9uIG1vZHVsZXMgZnJvbSBzb3VyY2UsIHlvdSBwcm9iYWJseSB3YW50Ci10aGVtIHRvIGdvIGluIDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob24yLntYfWAgcmF0aGVyIHRoYW4KLTpmaWxlOmAvdXNyL2xpYi9weXRob24yLntYfWAuICBUaGlzIGNhbiBiZSBkb25lIHdpdGggOjoKLQotICAgL3Vzci9iaW4vcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1wcmVmaXg9L3Vzci9sb2NhbAotCi1Bbm90aGVyIHBvc3NpYmlsaXR5IGlzIGEgbmV0d29yayBmaWxlc3lzdGVtIHdoZXJlIHRoZSBuYW1lIHVzZWQgdG8gd3JpdGUgdG8gYQotcmVtb3RlIGRpcmVjdG9yeSBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgbmFtZSB1c2VkIHRvIHJlYWQgaXQ6IGZvciBleGFtcGxlLCB0aGUKLVB5dGhvbiBpbnRlcnByZXRlciBhY2Nlc3NlZCBhcyA6ZmlsZTpgL3Vzci9sb2NhbC9iaW4vcHl0aG9uYCBtaWdodCBzZWFyY2ggZm9yCi1tb2R1bGVzIGluIDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob24yLntYfWAsIGJ1dCB0aG9zZSBtb2R1bGVzIHdvdWxkIGhhdmUgdG8KLWJlIGluc3RhbGxlZCB0bywgc2F5LCA6ZmlsZTpgL21udC97QHNlcnZlcn0vZXhwb3J0L2xpYi9weXRob24yLntYfWAuICBUaGlzIGNvdWxkCi1iZSBkb25lIHdpdGggOjoKLQotICAgL3Vzci9sb2NhbC9iaW4vcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1wcmVmaXg9L21udC9Ac2VydmVyL2V4cG9ydAotCi1JbiBlaXRoZXIgY2FzZSwgdGhlIDpvcHRpb246YC0tcHJlZml4YCBvcHRpb24gZGVmaW5lcyB0aGUgaW5zdGFsbGF0aW9uIGJhc2UsIGFuZAotdGhlIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgIG9wdGlvbiBkZWZpbmVzIHRoZSBwbGF0Zm9ybS1zcGVjaWZpYyBpbnN0YWxsYXRpb24KLWJhc2UsIHdoaWNoIGlzIHVzZWQgZm9yIHBsYXRmb3JtLXNwZWNpZmljIGZpbGVzLiAgKEN1cnJlbnRseSwgdGhpcyBqdXN0IG1lYW5zCi1ub24tcHVyZSBtb2R1bGUgZGlzdHJpYnV0aW9ucywgYnV0IGNvdWxkIGJlIGV4cGFuZGVkIHRvIEMgbGlicmFyaWVzLCBiaW5hcnkKLWV4ZWN1dGFibGVzLCBldGMuKSAgSWYgOm9wdGlvbjpgLS1leGVjLXByZWZpeGAgaXMgbm90IHN1cHBsaWVkLCBpdCBkZWZhdWx0cyB0bwotOm9wdGlvbjpgLS1wcmVmaXhgLiAgRmlsZXMgYXJlIGluc3RhbGxlZCBhcyBmb2xsb3dzOgotCi09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UeXBlIG9mIGZpbGUgICAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Ci09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1QeXRob24gbW9kdWxlcyAgICA6ZmlsZTpge3ByZWZpeH0vbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgCi1leHRlbnNpb24gbW9kdWxlcyA6ZmlsZTpge2V4ZWMtcHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AKLXNjcmlwdHMgICAgICAgICAgIDpmaWxlOmB7cHJlZml4fS9iaW5gCi1kYXRhICAgICAgICAgICAgICA6ZmlsZTpge3ByZWZpeH1gCi1DIGhlYWRlcnMgICAgICAgICA6ZmlsZTpge3ByZWZpeH0vaW5jbHVkZS9weXRob257WC5ZfXthYmlmbGFnc30ve2Rpc3RuYW1lfWAKLT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotVGhlcmUgaXMgbm8gcmVxdWlyZW1lbnQgdGhhdCA6b3B0aW9uOmAtLXByZWZpeGAgb3IgOm9wdGlvbjpgLS1leGVjLXByZWZpeGAKLWFjdHVhbGx5IHBvaW50IHRvIGFuIGFsdGVybmF0ZSBQeXRob24gaW5zdGFsbGF0aW9uOyBpZiB0aGUgZGlyZWN0b3JpZXMgbGlzdGVkCi1hYm92ZSBkbyBub3QgYWxyZWFkeSBleGlzdCwgdGhleSBhcmUgY3JlYXRlZCBhdCBpbnN0YWxsYXRpb24gdGltZS4KLQotSW5jaWRlbnRhbGx5LCB0aGUgcmVhbCByZWFzb24gdGhlIHByZWZpeCBzY2hlbWUgaXMgaW1wb3J0YW50IGlzIHNpbXBseSB0aGF0IGEKLXN0YW5kYXJkIFVuaXggaW5zdGFsbGF0aW9uIHVzZXMgdGhlIHByZWZpeCBzY2hlbWUsIGJ1dCB3aXRoIDpvcHRpb246YC0tcHJlZml4YAotYW5kIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgIHN1cHBsaWVkIGJ5IFB5dGhvbiBpdHNlbGYgYXMgYGBzeXMucHJlZml4YGAgYW5kCi1gYHN5cy5leGVjX3ByZWZpeGBgLiAgVGh1cywgeW91IG1pZ2h0IHRoaW5rIHlvdSdsbCBuZXZlciB1c2UgdGhlIHByZWZpeCBzY2hlbWUsCi1idXQgZXZlcnkgdGltZSB5b3UgcnVuIGBgcHl0aG9uIHNldHVwLnB5IGluc3RhbGxgYCB3aXRob3V0IGFueSBvdGhlciBvcHRpb25zLAoteW91J3JlIHVzaW5nIGl0LgotCi1Ob3RlIHRoYXQgaW5zdGFsbGluZyBleHRlbnNpb25zIHRvIGFuIGFsdGVybmF0ZSBQeXRob24gaW5zdGFsbGF0aW9uIGhhcyBubwotZWZmZWN0IG9uIGhvdyB0aG9zZSBleHRlbnNpb25zIGFyZSBidWlsdDogaW4gcGFydGljdWxhciwgdGhlIFB5dGhvbiBoZWFkZXIgZmlsZXMKLSg6ZmlsZTpgUHl0aG9uLmhgIGFuZCBmcmllbmRzKSBpbnN0YWxsZWQgd2l0aCB0aGUgUHl0aG9uIGludGVycHJldGVyIHVzZWQgdG8gcnVuCi10aGUgc2V0dXAgc2NyaXB0IHdpbGwgYmUgdXNlZCBpbiBjb21waWxpbmcgZXh0ZW5zaW9ucy4gIEl0IGlzIHlvdXIKLXJlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSB0aGF0IHRoZSBpbnRlcnByZXRlciB1c2VkIHRvIHJ1biBleHRlbnNpb25zIGluc3RhbGxlZAotaW4gdGhpcyB3YXkgaXMgY29tcGF0aWJsZSB3aXRoIHRoZSBpbnRlcnByZXRlciB1c2VkIHRvIGJ1aWxkIHRoZW0uICBUaGUgYmVzdCB3YXkKLXRvIGRvIHRoaXMgaXMgdG8gZW5zdXJlIHRoYXQgdGhlIHR3byBpbnRlcnByZXRlcnMgYXJlIHRoZSBzYW1lIHZlcnNpb24gb2YgUHl0aG9uCi0ocG9zc2libHkgZGlmZmVyZW50IGJ1aWxkcywgb3IgcG9zc2libHkgY29waWVzIG9mIHRoZSBzYW1lIGJ1aWxkKS4gIChPZiBjb3Vyc2UsCi1pZiB5b3VyIDpvcHRpb246YC0tcHJlZml4YCBhbmQgOm9wdGlvbjpgLS1leGVjLXByZWZpeGAgZG9uJ3QgZXZlbiBwb2ludCB0byBhbgotYWx0ZXJuYXRlIFB5dGhvbiBpbnN0YWxsYXRpb24sIHRoaXMgaXMgaW1tYXRlcmlhbC4pCi0KLQotLi4gX2luc3QtYWx0LWluc3RhbGwtcHJlZml4LXdpbmRvd3M6Ci0KLUFsdGVybmF0ZSBpbnN0YWxsYXRpb246IFdpbmRvd3MgKHRoZSBwcmVmaXggc2NoZW1lKQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLVdpbmRvd3MgaGFzIG5vIGNvbmNlcHQgb2YgYSB1c2VyJ3MgaG9tZSBkaXJlY3RvcnksIGFuZCBzaW5jZSB0aGUgc3RhbmRhcmQgUHl0aG9uCi1pbnN0YWxsYXRpb24gdW5kZXIgV2luZG93cyBpcyBzaW1wbGVyIHRoYW4gdW5kZXIgVW5peCwgdGhlIDpvcHRpb246YC0tcHJlZml4YAotb3B0aW9uIGhhcyB0cmFkaXRpb25hbGx5IGJlZW4gdXNlZCB0byBpbnN0YWxsIGFkZGl0aW9uYWwgcGFja2FnZXMgaW4gc2VwYXJhdGUKLWxvY2F0aW9ucyBvbiBXaW5kb3dzLiA6OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLXByZWZpeD0iXFRlbXBcUHl0aG9uIgotCi10byBpbnN0YWxsIG1vZHVsZXMgdG8gdGhlIDpmaWxlOmBcXFRlbXBcXFB5dGhvbmAgZGlyZWN0b3J5IG9uIHRoZSBjdXJyZW50IGRyaXZlLgotCi1UaGUgaW5zdGFsbGF0aW9uIGJhc2UgaXMgZGVmaW5lZCBieSB0aGUgOm9wdGlvbjpgLS1wcmVmaXhgIG9wdGlvbjsgdGhlCi06b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBvcHRpb24gaXMgbm90IHN1cHBvcnRlZCB1bmRlciBXaW5kb3dzLCB3aGljaCBtZWFucyB0aGF0Ci1wdXJlIFB5dGhvbiBtb2R1bGVzIGFuZCBleHRlbnNpb24gbW9kdWxlcyBhcmUgaW5zdGFsbGVkIGludG8gdGhlIHNhbWUgbG9jYXRpb24uCi1GaWxlcyBhcmUgaW5zdGFsbGVkIGFzIGZvbGxvd3M6Ci0KLT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UeXBlIG9mIGZpbGUgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLW1vZHVsZXMgICAgICAgICA6ZmlsZTpge3ByZWZpeH1cXExpYlxcc2l0ZS1wYWNrYWdlc2AKLXNjcmlwdHMgICAgICAgICA6ZmlsZTpge3ByZWZpeH1cXFNjcmlwdHNgCi1kYXRhICAgICAgICAgICAgOmZpbGU6YHtwcmVmaXh9YAotQyBoZWFkZXJzICAgICAgIDpmaWxlOmB7cHJlZml4fVxcSW5jbHVkZVxce2Rpc3RuYW1lfWAKLT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLQotLi4gX2luc3QtY3VzdG9tLWluc3RhbGw6Ci0KLUN1c3RvbSBJbnN0YWxsYXRpb24KLT09PT09PT09PT09PT09PT09PT0KLQotU29tZXRpbWVzLCB0aGUgYWx0ZXJuYXRlIGluc3RhbGxhdGlvbiBzY2hlbWVzIGRlc2NyaWJlZCBpbiBzZWN0aW9uCi06cmVmOmBpbnN0LWFsdC1pbnN0YWxsYCBqdXN0IGRvbid0IGRvIHdoYXQgeW91IHdhbnQuICBZb3UgbWlnaHQgd2FudCB0byB0d2VhayBqdXN0Ci1vbmUgb3IgdHdvIGRpcmVjdG9yaWVzIHdoaWxlIGtlZXBpbmcgZXZlcnl0aGluZyB1bmRlciB0aGUgc2FtZSBiYXNlIGRpcmVjdG9yeSwKLW9yIHlvdSBtaWdodCB3YW50IHRvIGNvbXBsZXRlbHkgcmVkZWZpbmUgdGhlIGluc3RhbGxhdGlvbiBzY2hlbWUuICBJbiBlaXRoZXIKLWNhc2UsIHlvdSdyZSBjcmVhdGluZyBhICpjdXN0b20gaW5zdGFsbGF0aW9uIHNjaGVtZSouCi0KLVRvIGNyZWF0ZSBhIGN1c3RvbSBpbnN0YWxsYXRpb24gc2NoZW1lLCB5b3Ugc3RhcnQgd2l0aCBvbmUgb2YgdGhlIGFsdGVybmF0ZQotc2NoZW1lcyBhbmQgb3ZlcnJpZGUgc29tZSBvZiB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yaWVzIHVzZWQgZm9yIHRoZSB2YXJpb3VzCi10eXBlcyBvZiBmaWxlcywgdXNpbmcgdGhlc2Ugb3B0aW9uczoKLQotPT09PT09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PQotVHlwZSBvZiBmaWxlICAgICAgICAgICBPdmVycmlkZSBvcHRpb24KLT09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT0KLVB5dGhvbiBtb2R1bGVzICAgICAgICAgYGAtLWluc3RhbGwtcHVyZWxpYmBgCi1leHRlbnNpb24gbW9kdWxlcyAgICAgIGBgLS1pbnN0YWxsLXBsYXRsaWJgYAotYWxsIG1vZHVsZXMgICAgICAgICAgICBgYC0taW5zdGFsbC1saWJgYAotc2NyaXB0cyAgICAgICAgICAgICAgICBgYC0taW5zdGFsbC1zY3JpcHRzYGAKLWRhdGEgICAgICAgICAgICAgICAgICAgYGAtLWluc3RhbGwtZGF0YWBgCi1DIGhlYWRlcnMgICAgICAgICAgICAgIGBgLS1pbnN0YWxsLWhlYWRlcnNgYAotPT09PT09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PQotCi1UaGVzZSBvdmVycmlkZSBvcHRpb25zIGNhbiBiZSByZWxhdGl2ZSwgYWJzb2x1dGUsCi1vciBleHBsaWNpdGx5IGRlZmluZWQgaW4gdGVybXMgb2Ygb25lIG9mIHRoZSBpbnN0YWxsYXRpb24gYmFzZSBkaXJlY3Rvcmllcy4KLShUaGVyZSBhcmUgdHdvIGluc3RhbGxhdGlvbiBiYXNlIGRpcmVjdG9yaWVzLCBhbmQgdGhleSBhcmUgbm9ybWFsbHkgdGhlIHNhbWUtLS0KLXRoZXkgb25seSBkaWZmZXIgd2hlbiB5b3UgdXNlIHRoZSBVbml4ICJwcmVmaXggc2NoZW1lIiBhbmQgc3VwcGx5IGRpZmZlcmVudAotYGAtLXByZWZpeGBgIGFuZCBgYC0tZXhlYy1wcmVmaXhgYCBvcHRpb25zOyB1c2luZyBgYC0taW5zdGFsbC1saWJgYCB3aWxsCi1vdmVycmlkZSB2YWx1ZXMgY29tcHV0ZWQgb3IgZ2l2ZW4gZm9yIGBgLS1pbnN0YWxsLXB1cmVsaWJgYCBhbmQKLWBgLS1pbnN0YWxsLXBsYXRsaWJgYCwgYW5kIGlzIHJlY29tbWVuZGVkIGZvciBzY2hlbWVzIHRoYXQgZG9uJ3QgbWFrZSBhCi1kaWZmZXJlbmNlIGJldHdlZW4gUHl0aG9uIGFuZCBleHRlbnNpb24gbW9kdWxlcy4pCi0KLUZvciBleGFtcGxlLCBzYXkgeW91J3JlIGluc3RhbGxpbmcgYSBtb2R1bGUgZGlzdHJpYnV0aW9uIHRvIHlvdXIgaG9tZSBkaXJlY3RvcnkKLXVuZGVyIFVuaXgtLS1idXQgeW91IHdhbnQgc2NyaXB0cyB0byBnbyBpbiA6ZmlsZTpgfi9zY3JpcHRzYCByYXRoZXIgdGhhbgotOmZpbGU6YH4vYmluYC4gQXMgeW91IG1pZ2h0IGV4cGVjdCwgeW91IGNhbiBvdmVycmlkZSB0aGlzIGRpcmVjdG9yeSB3aXRoIHRoZQotOm9wdGlvbjpgLS1pbnN0YWxsLXNjcmlwdHNgIG9wdGlvbjsgaW4gdGhpcyBjYXNlLCBpdCBtYWtlcyBtb3N0IHNlbnNlIHRvIHN1cHBseQotYSByZWxhdGl2ZSBwYXRoLCB3aGljaCB3aWxsIGJlIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBpbnN0YWxsYXRpb24gYmFzZQotZGlyZWN0b3J5ICh5b3VyIGhvbWUgZGlyZWN0b3J5LCBpbiB0aGlzIGNhc2UpOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1ob21lPX4gLS1pbnN0YWxsLXNjcmlwdHM9c2NyaXB0cwotCi1Bbm90aGVyIFVuaXggZXhhbXBsZTogc3VwcG9zZSB5b3VyIFB5dGhvbiBpbnN0YWxsYXRpb24gd2FzIGJ1aWx0IGFuZCBpbnN0YWxsZWQKLXdpdGggYSBwcmVmaXggb2YgOmZpbGU6YC91c3IvbG9jYWwvcHl0aG9uYCwgc28gdW5kZXIgYSBzdGFuZGFyZCAgaW5zdGFsbGF0aW9uCi1zY3JpcHRzIHdpbGwgd2luZCB1cCBpbiA6ZmlsZTpgL3Vzci9sb2NhbC9weXRob24vYmluYC4gIElmIHlvdSB3YW50IHRoZW0gaW4KLTpmaWxlOmAvdXNyL2xvY2FsL2JpbmAgaW5zdGVhZCwgeW91IHdvdWxkIHN1cHBseSB0aGlzIGFic29sdXRlIGRpcmVjdG9yeSBmb3IgdGhlCi06b3B0aW9uOmAtLWluc3RhbGwtc2NyaXB0c2Agb3B0aW9uOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1pbnN0YWxsLXNjcmlwdHM9L3Vzci9sb2NhbC9iaW4KLQotKFRoaXMgcGVyZm9ybXMgYW4gaW5zdGFsbGF0aW9uIHVzaW5nIHRoZSAicHJlZml4IHNjaGVtZSwiIHdoZXJlIHRoZSBwcmVmaXggaXMKLXdoYXRldmVyIHlvdXIgUHl0aG9uIGludGVycHJldGVyIHdhcyBpbnN0YWxsZWQgd2l0aC0tLSA6ZmlsZTpgL3Vzci9sb2NhbC9weXRob25gCi1pbiB0aGlzIGNhc2UuKQotCi1JZiB5b3UgbWFpbnRhaW4gUHl0aG9uIG9uIFdpbmRvd3MsIHlvdSBtaWdodCB3YW50IHRoaXJkLXBhcnR5IG1vZHVsZXMgdG8gbGl2ZSBpbgotYSBzdWJkaXJlY3Rvcnkgb2YgOmZpbGU6YHtwcmVmaXh9YCwgcmF0aGVyIHRoYW4gcmlnaHQgaW4gOmZpbGU6YHtwcmVmaXh9YAotaXRzZWxmLiAgVGhpcyBpcyBhbG1vc3QgYXMgZWFzeSBhcyBjdXN0b21pemluZyB0aGUgc2NyaXB0IGluc3RhbGxhdGlvbiBkaXJlY3RvcnkKLS0tLXlvdSBqdXN0IGhhdmUgdG8gcmVtZW1iZXIgdGhhdCB0aGVyZSBhcmUgdHdvIHR5cGVzIG9mIG1vZHVsZXMgdG8gd29ycnkgYWJvdXQsCi1QeXRob24gYW5kIGV4dGVuc2lvbiBtb2R1bGVzLCB3aGljaCBjYW4gY29udmVuaWVudGx5IGJlIGJvdGggY29udHJvbGxlZCBieSBvbmUKLW9wdGlvbjo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0taW5zdGFsbC1saWI9U2l0ZQotCi1UaGUgc3BlY2lmaWVkIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkgaXMgcmVsYXRpdmUgdG8gOmZpbGU6YHtwcmVmaXh9YC4gIE9mCi1jb3Vyc2UsIHlvdSBhbHNvIGhhdmUgdG8gZW5zdXJlIHRoYXQgdGhpcyBkaXJlY3RvcnkgaXMgaW4gUHl0aG9uJ3MgbW9kdWxlCi1zZWFyY2ggcGF0aCwgc3VjaCBhcyBieSBwdXR0aW5nIGEgOmZpbGU6YC5wdGhgIGZpbGUgaW4gYSBzaXRlIGRpcmVjdG9yeSAoc2VlCi06bW9kOmBzaXRlYCkuICBTZWUgc2VjdGlvbiA6cmVmOmBpbnN0LXNlYXJjaC1wYXRoYCB0byBmaW5kIG91dCBob3cgdG8gbW9kaWZ5Ci1QeXRob24ncyBzZWFyY2ggcGF0aC4KLQotSWYgeW91IHdhbnQgdG8gZGVmaW5lIGFuIGVudGlyZSBpbnN0YWxsYXRpb24gc2NoZW1lLCB5b3UganVzdCBoYXZlIHRvIHN1cHBseSBhbGwKLW9mIHRoZSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IG9wdGlvbnMuICBUaGUgcmVjb21tZW5kZWQgd2F5IHRvIGRvIHRoaXMgaXMgdG8KLXN1cHBseSByZWxhdGl2ZSBwYXRoczsgZm9yIGV4YW1wbGUsIGlmIHlvdSB3YW50IHRvIG1haW50YWluIGFsbCBQeXRob24KLW1vZHVsZS1yZWxhdGVkIGZpbGVzIHVuZGVyIDpmaWxlOmBweXRob25gIGluIHlvdXIgaG9tZSBkaXJlY3RvcnksIGFuZCB5b3Ugd2FudCBhCi1zZXBhcmF0ZSBkaXJlY3RvcnkgZm9yIGVhY2ggcGxhdGZvcm0gdGhhdCB5b3UgdXNlIHlvdXIgaG9tZSBkaXJlY3RvcnkgZnJvbSwgeW91Ci1taWdodCBkZWZpbmUgdGhlIGZvbGxvd2luZyBpbnN0YWxsYXRpb24gc2NoZW1lOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1ob21lPX4gXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLXB1cmVsaWI9cHl0aG9uL2xpYiBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtcGxhdGxpYj1weXRob24vbGliLiRQTEFUIFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1zY3JpcHRzPXB5dGhvbi9zY3JpcHRzCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtZGF0YT1weXRob24vZGF0YQotCi1vciwgZXF1aXZhbGVudGx5LCA6OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWhvbWU9fi9weXRob24gXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLXB1cmVsaWI9bGliIFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1wbGF0bGliPSdsaWIuJFBMQVQnIFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1zY3JpcHRzPXNjcmlwdHMKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1kYXRhPWRhdGEKLQotYGAkUExBVGBgIGlzIG5vdCAobmVjZXNzYXJpbHkpIGFuIGVudmlyb25tZW50IHZhcmlhYmxlLS0taXQgd2lsbCBiZSBleHBhbmRlZCBieQotdGhlIERpc3R1dGlscyBhcyBpdCBwYXJzZXMgeW91ciBjb21tYW5kIGxpbmUgb3B0aW9ucywganVzdCBhcyBpdCBkb2VzIHdoZW4KLXBhcnNpbmcgeW91ciBjb25maWd1cmF0aW9uIGZpbGUocykuCi0KLU9idmlvdXNseSwgc3BlY2lmeWluZyB0aGUgZW50aXJlIGluc3RhbGxhdGlvbiBzY2hlbWUgZXZlcnkgdGltZSB5b3UgaW5zdGFsbCBhCi1uZXcgbW9kdWxlIGRpc3RyaWJ1dGlvbiB3b3VsZCBiZSB2ZXJ5IHRlZGlvdXMuICBUaHVzLCB5b3UgY2FuIHB1dCB0aGVzZSBvcHRpb25zCi1pbnRvIHlvdXIgRGlzdHV0aWxzIGNvbmZpZyBmaWxlIChzZWUgc2VjdGlvbiA6cmVmOmBpbnN0LWNvbmZpZy1maWxlc2ApOjoKLQotICAgW2luc3RhbGxdCi0gICBpbnN0YWxsLWJhc2U9JEhPTUUKLSAgIGluc3RhbGwtcHVyZWxpYj1weXRob24vbGliCi0gICBpbnN0YWxsLXBsYXRsaWI9cHl0aG9uL2xpYi4kUExBVAotICAgaW5zdGFsbC1zY3JpcHRzPXB5dGhvbi9zY3JpcHRzCi0gICBpbnN0YWxsLWRhdGE9cHl0aG9uL2RhdGEKLQotb3IsIGVxdWl2YWxlbnRseSwgOjoKLQotICAgW2luc3RhbGxdCi0gICBpbnN0YWxsLWJhc2U9JEhPTUUvcHl0aG9uCi0gICBpbnN0YWxsLXB1cmVsaWI9bGliCi0gICBpbnN0YWxsLXBsYXRsaWI9bGliLiRQTEFUCi0gICBpbnN0YWxsLXNjcmlwdHM9c2NyaXB0cwotICAgaW5zdGFsbC1kYXRhPWRhdGEKLQotTm90ZSB0aGF0IHRoZXNlIHR3byBhcmUgKm5vdCogZXF1aXZhbGVudCBpZiB5b3Ugc3VwcGx5IGEgZGlmZmVyZW50IGluc3RhbGxhdGlvbgotYmFzZSBkaXJlY3Rvcnkgd2hlbiB5b3UgcnVuIHRoZSBzZXR1cCBzY3JpcHQuICBGb3IgZXhhbXBsZSwgOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1pbnN0YWxsLWJhc2U9L3RtcAotCi13b3VsZCBpbnN0YWxsIHB1cmUgbW9kdWxlcyB0byA6ZmlsZTpgL3RtcC9weXRob24vbGliYCBpbiB0aGUgZmlyc3QgY2FzZSwgYW5kCi10byA6ZmlsZTpgL3RtcC9saWJgIGluIHRoZSBzZWNvbmQgY2FzZS4gIChGb3IgdGhlIHNlY29uZCBjYXNlLCB5b3UgcHJvYmFibHkKLXdhbnQgdG8gc3VwcGx5IGFuIGluc3RhbGxhdGlvbiBiYXNlIG9mIDpmaWxlOmAvdG1wL3B5dGhvbmAuKQotCi1Zb3UgcHJvYmFibHkgbm90aWNlZCB0aGUgdXNlIG9mIGBgJEhPTUVgYCBhbmQgYGAkUExBVGBgIGluIHRoZSBzYW1wbGUKLWNvbmZpZ3VyYXRpb24gZmlsZSBpbnB1dC4gIFRoZXNlIGFyZSBEaXN0dXRpbHMgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMsIHdoaWNoCi1iZWFyIGEgc3Ryb25nIHJlc2VtYmxhbmNlIHRvIGVudmlyb25tZW50IHZhcmlhYmxlcy4gSW4gZmFjdCwgeW91IGNhbiB1c2UKLWVudmlyb25tZW50IHZhcmlhYmxlcyBpbiBjb25maWcgZmlsZXMgb24gcGxhdGZvcm1zIHRoYXQgaGF2ZSBzdWNoIGEgbm90aW9uIGJ1dAotdGhlIERpc3R1dGlscyBhZGRpdGlvbmFsbHkgZGVmaW5lIGEgZmV3IGV4dHJhIHZhcmlhYmxlcyB0aGF0IG1heSBub3QgYmUgaW4geW91cgotZW52aXJvbm1lbnQsIHN1Y2ggYXMgYGAkUExBVGBgLiAgKEFuZCBvZiBjb3Vyc2UsIG9uIHN5c3RlbXMgdGhhdCBkb24ndCBoYXZlCi1lbnZpcm9ubWVudCB2YXJpYWJsZXMsIHN1Y2ggYXMgTWFjIE9TIDksIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlcyBzdXBwbGllZCBieQotdGhlIERpc3R1dGlscyBhcmUgdGhlIG9ubHkgb25lcyB5b3UgY2FuIHVzZS4pIFNlZSBzZWN0aW9uIDpyZWY6YGluc3QtY29uZmlnLWZpbGVzYAotZm9yIGRldGFpbHMuCi0KLS4uIFhYWCBuZWVkIHNvbWUgV2luZG93cyBleGFtcGxlcy0tLXdoZW4gd291bGQgY3VzdG9tIGluc3RhbGxhdGlvbiBzY2hlbWVzIGJlCi0gICBuZWVkZWQgb24gdGhvc2UgcGxhdGZvcm1zPwotCi0KLS4uIFhYWCBNb3ZlIHRoaXMgdG8gRG9jL3VzaW5nCi0KLS4uIF9pbnN0LXNlYXJjaC1wYXRoOgotCi1Nb2RpZnlpbmcgUHl0aG9uJ3MgU2VhcmNoIFBhdGgKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1XaGVuIHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgZXhlY3V0ZXMgYW4gOmtleXdvcmQ6YGltcG9ydGAgc3RhdGVtZW50LCBpdCBzZWFyY2hlcwotZm9yIGJvdGggUHl0aG9uIGNvZGUgYW5kIGV4dGVuc2lvbiBtb2R1bGVzIGFsb25nIGEgc2VhcmNoIHBhdGguICBBIGRlZmF1bHQgdmFsdWUKLWZvciB0aGUgcGF0aCBpcyBjb25maWd1cmVkIGludG8gdGhlIFB5dGhvbiBiaW5hcnkgd2hlbiB0aGUgaW50ZXJwcmV0ZXIgaXMgYnVpbHQuCi1Zb3UgY2FuIGRldGVybWluZSB0aGUgcGF0aCBieSBpbXBvcnRpbmcgdGhlIDptb2Q6YHN5c2AgbW9kdWxlIGFuZCBwcmludGluZyB0aGUKLXZhbHVlIG9mIGBgc3lzLnBhdGhgYC4gICA6OgotCi0gICAkIHB5dGhvbgotICAgUHl0aG9uIDIuMiAoIzExLCBPY3QgIDMgMjAwMiwgMTM6MzE6MjcpCi0gICBbR0NDIDIuOTYgMjAwMDA3MzEgKFJlZCBIYXQgTGludXggNy4zIDIuOTYtMTEyKV0gb24gbGludXgyCi0gICBUeXBlICJoZWxwIiwgImNvcHlyaWdodCIsICJjcmVkaXRzIiBvciAibGljZW5zZSIgZm9yIG1vcmUgaW5mb3JtYXRpb24uCi0gICA+Pj4gaW1wb3J0IHN5cwotICAgPj4+IHN5cy5wYXRoCi0gICBbJycsICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMnLCAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zL3BsYXQtbGludXgyJywKLSAgICAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zL2xpYi10aycsICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMvbGliLWR5bmxvYWQnLAotICAgICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMvc2l0ZS1wYWNrYWdlcyddCi0gICA+Pj4KLQotVGhlIG51bGwgc3RyaW5nIGluIGBgc3lzLnBhdGhgYCByZXByZXNlbnRzIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgotCi1UaGUgZXhwZWN0ZWQgY29udmVudGlvbiBmb3IgbG9jYWxseSBpbnN0YWxsZWQgcGFja2FnZXMgaXMgdG8gcHV0IHRoZW0gaW4gdGhlCi06ZmlsZTpgey4uLn0vc2l0ZS1wYWNrYWdlcy9gIGRpcmVjdG9yeSwgYnV0IHlvdSBtYXkgd2FudCB0byBpbnN0YWxsIFB5dGhvbgotbW9kdWxlcyBpbnRvIHNvbWUgYXJiaXRyYXJ5IGRpcmVjdG9yeS4gIEZvciBleGFtcGxlLCB5b3VyIHNpdGUgbWF5IGhhdmUgYQotY29udmVudGlvbiBvZiBrZWVwaW5nIGFsbCBzb2Z0d2FyZSByZWxhdGVkIHRvIHRoZSB3ZWIgc2VydmVyIHVuZGVyIDpmaWxlOmAvd3d3YC4KLUFkZC1vbiBQeXRob24gbW9kdWxlcyBtaWdodCB0aGVuIGJlbG9uZyBpbiA6ZmlsZTpgL3d3dy9weXRob25gLCBhbmQgaW4gb3JkZXIgdG8KLWltcG9ydCB0aGVtLCB0aGlzIGRpcmVjdG9yeSBtdXN0IGJlIGFkZGVkIHRvIGBgc3lzLnBhdGhgYC4gIFRoZXJlIGFyZSBzZXZlcmFsCi1kaWZmZXJlbnQgd2F5cyB0byBhZGQgdGhlIGRpcmVjdG9yeS4KLQotVGhlIG1vc3QgY29udmVuaWVudCB3YXkgaXMgdG8gYWRkIGEgcGF0aCBjb25maWd1cmF0aW9uIGZpbGUgdG8gYSBkaXJlY3RvcnkKLXRoYXQncyBhbHJlYWR5IG9uIFB5dGhvbidzIHBhdGgsIHVzdWFsbHkgdG8gdGhlIDpmaWxlOmAuLi4vc2l0ZS1wYWNrYWdlcy9gCi1kaXJlY3RvcnkuICBQYXRoIGNvbmZpZ3VyYXRpb24gZmlsZXMgaGF2ZSBhbiBleHRlbnNpb24gb2YgOmZpbGU6YC5wdGhgLCBhbmQgZWFjaAotbGluZSBtdXN0IGNvbnRhaW4gYSBzaW5nbGUgcGF0aCB0aGF0IHdpbGwgYmUgYXBwZW5kZWQgdG8gYGBzeXMucGF0aGBgLiAgKEJlY2F1c2UKLXRoZSBuZXcgcGF0aHMgYXJlIGFwcGVuZGVkIHRvIGBgc3lzLnBhdGhgYCwgbW9kdWxlcyBpbiB0aGUgYWRkZWQgZGlyZWN0b3JpZXMKLXdpbGwgbm90IG92ZXJyaWRlIHN0YW5kYXJkIG1vZHVsZXMuICBUaGlzIG1lYW5zIHlvdSBjYW4ndCB1c2UgdGhpcyBtZWNoYW5pc20gZm9yCi1pbnN0YWxsaW5nIGZpeGVkIHZlcnNpb25zIG9mIHN0YW5kYXJkIG1vZHVsZXMuKQotCi1QYXRocyBjYW4gYmUgYWJzb2x1dGUgb3IgcmVsYXRpdmUsIGluIHdoaWNoIGNhc2UgdGhleSdyZSByZWxhdGl2ZSB0byB0aGUKLWRpcmVjdG9yeSBjb250YWluaW5nIHRoZSA6ZmlsZTpgLnB0aGAgZmlsZS4gIFNlZSB0aGUgZG9jdW1lbnRhdGlvbiBvZgotdGhlIDptb2Q6YHNpdGVgIG1vZHVsZSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KLQotQSBzbGlnaHRseSBsZXNzIGNvbnZlbmllbnQgd2F5IGlzIHRvIGVkaXQgdGhlIDpmaWxlOmBzaXRlLnB5YCBmaWxlIGluIFB5dGhvbidzCi1zdGFuZGFyZCBsaWJyYXJ5LCBhbmQgbW9kaWZ5IGBgc3lzLnBhdGhgYC4gIDpmaWxlOmBzaXRlLnB5YCBpcyBhdXRvbWF0aWNhbGx5Ci1pbXBvcnRlZCB3aGVuIHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgaXMgZXhlY3V0ZWQsIHVubGVzcyB0aGUgOm9wdGlvbjpgLVNgIHN3aXRjaAotaXMgc3VwcGxpZWQgdG8gc3VwcHJlc3MgdGhpcyBiZWhhdmlvdXIuICBTbyB5b3UgY291bGQgc2ltcGx5IGVkaXQKLTpmaWxlOmBzaXRlLnB5YCBhbmQgYWRkIHR3byBsaW5lcyB0byBpdDo6Ci0KLSAgIGltcG9ydCBzeXMKLSAgIHN5cy5wYXRoLmFwcGVuZCgnL3d3dy9weXRob24vJykKLQotSG93ZXZlciwgaWYgeW91IHJlaW5zdGFsbCB0aGUgc2FtZSBtYWpvciB2ZXJzaW9uIG9mIFB5dGhvbiAocGVyaGFwcyB3aGVuCi11cGdyYWRpbmcgZnJvbSAyLjIgdG8gMi4yLjIsIGZvciBleGFtcGxlKSA6ZmlsZTpgc2l0ZS5weWAgd2lsbCBiZSBvdmVyd3JpdHRlbiBieQotdGhlIHN0b2NrIHZlcnNpb24uICBZb3UnZCBoYXZlIHRvIHJlbWVtYmVyIHRoYXQgaXQgd2FzIG1vZGlmaWVkIGFuZCBzYXZlIGEgY29weQotYmVmb3JlIGRvaW5nIHRoZSBpbnN0YWxsYXRpb24uCi0KLVRoZXJlIGFyZSB0d28gZW52aXJvbm1lbnQgdmFyaWFibGVzIHRoYXQgY2FuIG1vZGlmeSBgYHN5cy5wYXRoYGAuCi06ZW52dmFyOmBQWVRIT05IT01FYCBzZXRzIGFuIGFsdGVybmF0ZSB2YWx1ZSBmb3IgdGhlIHByZWZpeCBvZiB0aGUgUHl0aG9uCi1pbnN0YWxsYXRpb24uICBGb3IgZXhhbXBsZSwgaWYgOmVudnZhcjpgUFlUSE9OSE9NRWAgaXMgc2V0IHRvIGBgL3d3dy9weXRob25gYCwKLXRoZSBzZWFyY2ggcGF0aCB3aWxsIGJlIHNldCB0byBgYFsnJywgJy93d3cvcHl0aG9uL2xpYi9weXRob25YLlkvJywKLScvd3d3L3B5dGhvbi9saWIvcHl0aG9uWC5ZL3BsYXQtbGludXgyJywgLi4uXWBgLgotCi1UaGUgOmVudnZhcjpgUFlUSE9OUEFUSGAgdmFyaWFibGUgY2FuIGJlIHNldCB0byBhIGxpc3Qgb2YgcGF0aHMgdGhhdCB3aWxsIGJlCi1hZGRlZCB0byB0aGUgYmVnaW5uaW5nIG9mIGBgc3lzLnBhdGhgYC4gIEZvciBleGFtcGxlLCBpZiA6ZW52dmFyOmBQWVRIT05QQVRIYCBpcwotc2V0IHRvIGBgL3d3dy9weXRob246L29wdC9weWBgLCB0aGUgc2VhcmNoIHBhdGggd2lsbCBiZWdpbiB3aXRoCi1gYFsnL3d3dy9weXRob24nLCAnL29wdC9weSddYGAuICAoTm90ZSB0aGF0IGRpcmVjdG9yaWVzIG11c3QgZXhpc3QgaW4gb3JkZXIgdG8KLWJlIGFkZGVkIHRvIGBgc3lzLnBhdGhgYDsgdGhlIDptb2Q6YHNpdGVgIG1vZHVsZSByZW1vdmVzIHBhdGhzIHRoYXQgZG9uJ3QKLWV4aXN0LikKLQotRmluYWxseSwgYGBzeXMucGF0aGBgIGlzIGp1c3QgYSByZWd1bGFyIFB5dGhvbiBsaXN0LCBzbyBhbnkgUHl0aG9uIGFwcGxpY2F0aW9uCi1jYW4gbW9kaWZ5IGl0IGJ5IGFkZGluZyBvciByZW1vdmluZyBlbnRyaWVzLgotCi0KLS4uIF9pbnN0LWNvbmZpZy1maWxlczoKLQotRGlzdHV0aWxzIENvbmZpZ3VyYXRpb24gRmlsZXMKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLUFzIG1lbnRpb25lZCBhYm92ZSwgeW91IGNhbiB1c2UgRGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24gZmlsZXMgdG8gcmVjb3JkIHBlcnNvbmFsCi1vciBzaXRlIHByZWZlcmVuY2VzIGZvciBhbnkgRGlzdHV0aWxzIG9wdGlvbnMuICBUaGF0IGlzLCBhbnkgb3B0aW9uIHRvIGFueQotY29tbWFuZCBjYW4gYmUgc3RvcmVkIGluIG9uZSBvZiB0d28gb3IgdGhyZWUgKGRlcGVuZGluZyBvbiB5b3VyIHBsYXRmb3JtKQotY29uZmlndXJhdGlvbiBmaWxlcywgd2hpY2ggd2lsbCBiZSBjb25zdWx0ZWQgYmVmb3JlIHRoZSBjb21tYW5kLWxpbmUgaXMgcGFyc2VkLgotVGhpcyBtZWFucyB0aGF0IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCBvdmVycmlkZSBkZWZhdWx0IHZhbHVlcywgYW5kIHRoZQotY29tbWFuZC1saW5lIHdpbGwgaW4gdHVybiBvdmVycmlkZSBjb25maWd1cmF0aW9uIGZpbGVzLiAgRnVydGhlcm1vcmUsIGlmCi1tdWx0aXBsZSBjb25maWd1cmF0aW9uIGZpbGVzIGFwcGx5LCB2YWx1ZXMgZnJvbSAiZWFybGllciIgZmlsZXMgYXJlIG92ZXJyaWRkZW4KLWJ5ICJsYXRlciIgZmlsZXMuCi0KLQotLi4gX2luc3QtY29uZmlnLWZpbGVuYW1lczoKLQotTG9jYXRpb24gYW5kIG5hbWVzIG9mIGNvbmZpZyBmaWxlcwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1UaGUgbmFtZXMgYW5kIGxvY2F0aW9ucyBvZiB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyB2YXJ5IHNsaWdodGx5IGFjcm9zcwotcGxhdGZvcm1zLiAgT24gVW5peCBhbmQgTWFjIE9TIFgsIHRoZSB0aHJlZSBjb25maWd1cmF0aW9uIGZpbGVzIChpbiB0aGUgb3JkZXIKLXRoZXkgYXJlIHByb2Nlc3NlZCkgYXJlOgotCi0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBUeXBlIG9mIGZpbGUgfCBMb2NhdGlvbiBhbmQgZmlsZW5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzIHwKLSs9PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rCi18IHN5c3RlbSAgICAgICB8IDpmaWxlOmB7cHJlZml4fS9saWIvcHl0aG9ue3Zlcn0vZGlzdHV0aWxzL2Rpc3R1dGlscy5jZmdgIHwgXCgxKSAgfAotKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgcGVyc29uYWwgICAgIHwgOmZpbGU6YCRIT01FLy5weWRpc3R1dGlscy5jZmdgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcKDIpICB8Ci0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBsb2NhbCAgICAgICAgfCA6ZmlsZTpgc2V0dXAuY2ZnYCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFwoMykgIHwKLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi0KLUFuZCBvbiBXaW5kb3dzLCB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyBhcmU6Ci0KLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IFR5cGUgb2YgZmlsZSB8IExvY2F0aW9uIGFuZCBmaWxlbmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgfAotKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKLXwgc3lzdGVtICAgICAgIHwgOmZpbGU6YHtwcmVmaXh9XFxMaWJcXGRpc3R1dGlsc1xcZGlzdHV0aWxzLmNmZ2AgfCBcKDQpICB8Ci0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBwZXJzb25hbCAgICAgfCA6ZmlsZTpgJUhPTUUlXFxweWRpc3R1dGlscy5jZmdgICAgICAgICAgICAgICAgICB8IFwoNSkgIHwKLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGxvY2FsICAgICAgICB8IDpmaWxlOmBzZXR1cC5jZmdgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgXCgzKSAgfAotKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLQotT24gYWxsIHBsYXRmb3JtcywgdGhlICJwZXJzb25hbCIgZmlsZSBjYW4gYmUgdGVtcG9yYXJpbHkgZGlzYWJsZWQgYnkKLXBhc3NpbmcgdGhlIGAtLW5vLXVzZXItY2ZnYCBvcHRpb24uCi0KLU5vdGVzOgotCi0oMSkKLSAgIFN0cmljdGx5IHNwZWFraW5nLCB0aGUgc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbiBmaWxlIGxpdmVzIGluIHRoZSBkaXJlY3RvcnkKLSAgIHdoZXJlIHRoZSBEaXN0dXRpbHMgYXJlIGluc3RhbGxlZDsgdW5kZXIgUHl0aG9uIDEuNiBhbmQgbGF0ZXIgb24gVW5peCwgdGhpcyBpcwotICAgYXMgc2hvd24uIEZvciBQeXRob24gMS41LjIsIHRoZSBEaXN0dXRpbHMgd2lsbCBub3JtYWxseSBiZSBpbnN0YWxsZWQgdG8KLSAgIDpmaWxlOmB7cHJlZml4fS9saWIvcHl0aG9uMS41L3NpdGUtcGFja2FnZXMvZGlzdHV0aWxzYCwgc28gdGhlIHN5c3RlbQotICAgY29uZmlndXJhdGlvbiBmaWxlIHNob3VsZCBiZSBwdXQgdGhlcmUgdW5kZXIgUHl0aG9uIDEuNS4yLgotCi0oMikKLSAgIE9uIFVuaXgsIGlmIHRoZSA6ZW52dmFyOmBIT01FYCBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBub3QgZGVmaW5lZCwgdGhlIHVzZXIncwotICAgaG9tZSBkaXJlY3Rvcnkgd2lsbCBiZSBkZXRlcm1pbmVkIHdpdGggdGhlIDpmdW5jOmBnZXRwd3VpZGAgZnVuY3Rpb24gZnJvbSB0aGUKLSAgIHN0YW5kYXJkIDptb2Q6YHB3ZGAgbW9kdWxlLiBUaGlzIGlzIGRvbmUgYnkgdGhlIDpmdW5jOmBvcy5wYXRoLmV4cGFuZHVzZXJgCi0gICBmdW5jdGlvbiB1c2VkIGJ5IERpc3R1dGlscy4KLQotKDMpCi0gICBJLmUuLCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgKHVzdWFsbHkgdGhlIGxvY2F0aW9uIG9mIHRoZSBzZXR1cCBzY3JpcHQpLgotCi0oNCkKLSAgIChTZWUgYWxzbyBub3RlICgxKS4pICBVbmRlciBQeXRob24gMS42IGFuZCBsYXRlciwgUHl0aG9uJ3MgZGVmYXVsdCAiaW5zdGFsbGF0aW9uCi0gICBwcmVmaXgiIGlzIDpmaWxlOmBDOlxcUHl0aG9uYCwgc28gdGhlIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUgaXMgbm9ybWFsbHkKLSAgIDpmaWxlOmBDOlxcUHl0aG9uXFxMaWJcXGRpc3R1dGlsc1xcZGlzdHV0aWxzLmNmZ2AuIFVuZGVyIFB5dGhvbiAxLjUuMiwgdGhlCi0gICBkZWZhdWx0IHByZWZpeCB3YXMgOmZpbGU6YEM6XFxQcm9ncmFtIEZpbGVzXFxQeXRob25gLCBhbmQgdGhlIERpc3R1dGlscyB3ZXJlIG5vdAotICAgcGFydCBvZiB0aGUgc3RhbmRhcmQgbGlicmFyeS0tLXNvIHRoZSBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlIHdvdWxkIGJlCi0gICA6ZmlsZTpgQzpcXFByb2dyYW0gRmlsZXNcXFB5dGhvblxcZGlzdHV0aWxzXFxkaXN0dXRpbHMuY2ZnYCBpbiBhIHN0YW5kYXJkIFB5dGhvbgotICAgMS41LjIgaW5zdGFsbGF0aW9uIHVuZGVyIFdpbmRvd3MuCi0KLSg1KQotICAgT24gV2luZG93cywgaWYgdGhlIDplbnZ2YXI6YEhPTUVgIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5vdCBkZWZpbmVkLAotICAgOmVudnZhcjpgVVNFUlBST0ZJTEVgIHRoZW4gOmVudnZhcjpgSE9NRURSSVZFYCBhbmQgOmVudnZhcjpgSE9NRVBBVEhgIHdpbGwKLSAgIGJlIHRyaWVkLiBUaGlzIGlzIGRvbmUgYnkgdGhlIDpmdW5jOmBvcy5wYXRoLmV4cGFuZHVzZXJgIGZ1bmN0aW9uIHVzZWQKLSAgIGJ5IERpc3R1dGlscy4KLQotCi0uLiBfaW5zdC1jb25maWctc3ludGF4OgotCi1TeW50YXggb2YgY29uZmlnIGZpbGVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLVRoZSBEaXN0dXRpbHMgY29uZmlndXJhdGlvbiBmaWxlcyBhbGwgaGF2ZSB0aGUgc2FtZSBzeW50YXguICBUaGUgY29uZmlnIGZpbGVzCi1hcmUgZ3JvdXBlZCBpbnRvIHNlY3Rpb25zLiAgVGhlcmUgaXMgb25lIHNlY3Rpb24gZm9yIGVhY2ggRGlzdHV0aWxzIGNvbW1hbmQsCi1wbHVzIGEgYGBnbG9iYWxgYCBzZWN0aW9uIGZvciBnbG9iYWwgb3B0aW9ucyB0aGF0IGFmZmVjdCBldmVyeSBjb21tYW5kLiAgRWFjaAotc2VjdGlvbiBjb25zaXN0cyBvZiBvbmUgb3B0aW9uIHBlciBsaW5lLCBzcGVjaWZpZWQgYXMgYGBvcHRpb249dmFsdWVgYC4KLQotRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgaXMgYSBjb21wbGV0ZSBjb25maWcgZmlsZSB0aGF0IGp1c3QgZm9yY2VzIGFsbAotY29tbWFuZHMgdG8gcnVuIHF1aWV0bHkgYnkgZGVmYXVsdDo6Ci0KLSAgIFtnbG9iYWxdCi0gICB2ZXJib3NlPTAKLQotSWYgdGhpcyBpcyBpbnN0YWxsZWQgYXMgdGhlIHN5c3RlbSBjb25maWcgZmlsZSwgaXQgd2lsbCBhZmZlY3QgYWxsIHByb2Nlc3Npbmcgb2YKLWFueSBQeXRob24gbW9kdWxlIGRpc3RyaWJ1dGlvbiBieSBhbnkgdXNlciBvbiB0aGUgY3VycmVudCBzeXN0ZW0uICBJZiBpdCBpcwotaW5zdGFsbGVkIGFzIHlvdXIgcGVyc29uYWwgY29uZmlnIGZpbGUgKG9uIHN5c3RlbXMgdGhhdCBzdXBwb3J0IHRoZW0pLCBpdCB3aWxsCi1hZmZlY3Qgb25seSBtb2R1bGUgZGlzdHJpYnV0aW9ucyBwcm9jZXNzZWQgYnkgeW91LiAgQW5kIGlmIGl0IGlzIHVzZWQgYXMgdGhlCi06ZmlsZTpgc2V0dXAuY2ZnYCBmb3IgYSBwYXJ0aWN1bGFyIG1vZHVsZSBkaXN0cmlidXRpb24sIGl0IGFmZmVjdHMgb25seSB0aGF0Ci1kaXN0cmlidXRpb24uCi0KLVlvdSBjb3VsZCBvdmVycmlkZSB0aGUgZGVmYXVsdCAiYnVpbGQgYmFzZSIgZGlyZWN0b3J5IGFuZCBtYWtlIHRoZQotOmNvbW1hbmQ6YGJ1aWxkXCpgIGNvbW1hbmRzIGFsd2F5cyBmb3JjaWJseSByZWJ1aWxkIGFsbCBmaWxlcyB3aXRoIHRoZQotZm9sbG93aW5nOjoKLQotICAgW2J1aWxkXQotICAgYnVpbGQtYmFzZT1ibGliCi0gICBmb3JjZT0xCi0KLXdoaWNoIGNvcnJlc3BvbmRzIHRvIHRoZSBjb21tYW5kLWxpbmUgYXJndW1lbnRzIDo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBidWlsZCAtLWJ1aWxkLWJhc2U9YmxpYiAtLWZvcmNlCi0KLWV4Y2VwdCB0aGF0IGluY2x1ZGluZyB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kIG9uIHRoZSBjb21tYW5kLWxpbmUgbWVhbnMKLXRoYXQgY29tbWFuZCB3aWxsIGJlIHJ1bi4gIEluY2x1ZGluZyBhIHBhcnRpY3VsYXIgY29tbWFuZCBpbiBjb25maWcgZmlsZXMgaGFzIG5vCi1zdWNoIGltcGxpY2F0aW9uOyBpdCBvbmx5IG1lYW5zIHRoYXQgaWYgdGhlIGNvbW1hbmQgaXMgcnVuLCB0aGUgb3B0aW9ucyBpbiB0aGUKLWNvbmZpZyBmaWxlIHdpbGwgYXBwbHkuICAoT3IgaWYgb3RoZXIgY29tbWFuZHMgdGhhdCBkZXJpdmUgdmFsdWVzIGZyb20gaXQgYXJlCi1ydW4sIHRoZXkgd2lsbCB1c2UgdGhlIHZhbHVlcyBpbiB0aGUgY29uZmlnIGZpbGUuKQotCi1Zb3UgY2FuIGZpbmQgb3V0IHRoZSBjb21wbGV0ZSBsaXN0IG9mIG9wdGlvbnMgZm9yIGFueSBjb21tYW5kIHVzaW5nIHRoZQotOm9wdGlvbjpgLS1oZWxwYCBvcHRpb24sIGUuZy46OgotCi0gICBweXRob24gc2V0dXAucHkgYnVpbGQgLS1oZWxwCi0KLWFuZCB5b3UgY2FuIGZpbmQgb3V0IHRoZSBjb21wbGV0ZSBsaXN0IG9mIGdsb2JhbCBvcHRpb25zIGJ5IHVzaW5nCi06b3B0aW9uOmAtLWhlbHBgIHdpdGhvdXQgYSBjb21tYW5kOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IC0taGVscAotCi1TZWUgYWxzbyB0aGUgIlJlZmVyZW5jZSIgc2VjdGlvbiBvZiB0aGUgIkRpc3RyaWJ1dGluZyBQeXRob24gTW9kdWxlcyIgbWFudWFsLgotCi0KLS4uIF9pbnN0LWJ1aWxkaW5nLWV4dDoKLQotQnVpbGRpbmcgRXh0ZW5zaW9uczogVGlwcyBhbmQgVHJpY2tzCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotV2hlbmV2ZXIgcG9zc2libGUsIHRoZSBEaXN0dXRpbHMgdHJ5IHRvIHVzZSB0aGUgY29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbiBtYWRlCi1hdmFpbGFibGUgYnkgdGhlIFB5dGhvbiBpbnRlcnByZXRlciB1c2VkIHRvIHJ1biB0aGUgOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQuCi1Gb3IgZXhhbXBsZSwgdGhlIHNhbWUgY29tcGlsZXIgYW5kIGxpbmtlciBmbGFncyB1c2VkIHRvIGNvbXBpbGUgUHl0aG9uIHdpbGwgYWxzbwotYmUgdXNlZCBmb3IgY29tcGlsaW5nIGV4dGVuc2lvbnMuICBVc3VhbGx5IHRoaXMgd2lsbCB3b3JrIHdlbGwsIGJ1dCBpbgotY29tcGxpY2F0ZWQgc2l0dWF0aW9ucyB0aGlzIG1pZ2h0IGJlIGluYXBwcm9wcmlhdGUuICBUaGlzIHNlY3Rpb24gZGlzY3Vzc2VzIGhvdwotdG8gb3ZlcnJpZGUgdGhlIHVzdWFsIERpc3R1dGlscyBiZWhhdmlvdXIuCi0KLQotLi4gX2luc3QtdHdlYWstZmxhZ3M6Ci0KLVR3ZWFraW5nIGNvbXBpbGVyL2xpbmtlciBmbGFncwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUNvbXBpbGluZyBhIFB5dGhvbiBleHRlbnNpb24gd3JpdHRlbiBpbiBDIG9yIEMrKyB3aWxsIHNvbWV0aW1lcyByZXF1aXJlCi1zcGVjaWZ5aW5nIGN1c3RvbSBmbGFncyBmb3IgdGhlIGNvbXBpbGVyIGFuZCBsaW5rZXIgaW4gb3JkZXIgdG8gdXNlIGEgcGFydGljdWxhcgotbGlicmFyeSBvciBwcm9kdWNlIGEgc3BlY2lhbCBraW5kIG9mIG9iamVjdCBjb2RlLiBUaGlzIGlzIGVzcGVjaWFsbHkgdHJ1ZSBpZiB0aGUKLWV4dGVuc2lvbiBoYXNuJ3QgYmVlbiB0ZXN0ZWQgb24geW91ciBwbGF0Zm9ybSwgb3IgaWYgeW91J3JlIHRyeWluZyB0bwotY3Jvc3MtY29tcGlsZSBQeXRob24uCi0KLUluIHRoZSBtb3N0IGdlbmVyYWwgY2FzZSwgdGhlIGV4dGVuc2lvbiBhdXRob3IgbWlnaHQgaGF2ZSBmb3Jlc2VlbiB0aGF0Ci1jb21waWxpbmcgdGhlIGV4dGVuc2lvbnMgd291bGQgYmUgY29tcGxpY2F0ZWQsIGFuZCBwcm92aWRlZCBhIDpmaWxlOmBTZXR1cGAgZmlsZQotZm9yIHlvdSB0byBlZGl0LiAgVGhpcyB3aWxsIGxpa2VseSBvbmx5IGJlIGRvbmUgaWYgdGhlIG1vZHVsZSBkaXN0cmlidXRpb24KLWNvbnRhaW5zIG1hbnkgc2VwYXJhdGUgZXh0ZW5zaW9uIG1vZHVsZXMsIG9yIGlmIHRoZXkgb2Z0ZW4gcmVxdWlyZSBlbGFib3JhdGUKLXNldHMgb2YgY29tcGlsZXIgZmxhZ3MgaW4gb3JkZXIgdG8gd29yay4KLQotQSA6ZmlsZTpgU2V0dXBgIGZpbGUsIGlmIHByZXNlbnQsIGlzIHBhcnNlZCBpbiBvcmRlciB0byBnZXQgYSBsaXN0IG9mIGV4dGVuc2lvbnMKLXRvIGJ1aWxkLiAgRWFjaCBsaW5lIGluIGEgOmZpbGU6YFNldHVwYCBkZXNjcmliZXMgYSBzaW5nbGUgbW9kdWxlLiAgTGluZXMgaGF2ZQotdGhlIGZvbGxvd2luZyBzdHJ1Y3R1cmU6OgotCi0gICBtb2R1bGUgLi4uIFtzb3VyY2VmaWxlIC4uLl0gW2NwcGFyZyAuLi5dIFtsaWJyYXJ5IC4uLl0KLQotCi1MZXQncyBleGFtaW5lIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0dXJuLgotCi0qICptb2R1bGUqIGlzIHRoZSBuYW1lIG9mIHRoZSBleHRlbnNpb24gbW9kdWxlIHRvIGJlIGJ1aWx0LCBhbmQgc2hvdWxkIGJlIGEKLSAgdmFsaWQgUHl0aG9uIGlkZW50aWZpZXIuICBZb3UgY2FuJ3QganVzdCBjaGFuZ2UgdGhpcyBpbiBvcmRlciB0byByZW5hbWUgYSBtb2R1bGUKLSAgKGVkaXRzIHRvIHRoZSBzb3VyY2UgY29kZSB3b3VsZCBhbHNvIGJlIG5lZWRlZCksIHNvIHRoaXMgc2hvdWxkIGJlIGxlZnQgYWxvbmUuCi0KLSogKnNvdXJjZWZpbGUqIGlzIGFueXRoaW5nIHRoYXQncyBsaWtlbHkgdG8gYmUgYSBzb3VyY2UgY29kZSBmaWxlLCBhdCBsZWFzdAotICBqdWRnaW5nIGJ5IHRoZSBmaWxlbmFtZS4gIEZpbGVuYW1lcyBlbmRpbmcgaW4gOmZpbGU6YC5jYCBhcmUgYXNzdW1lZCB0byBiZQotICB3cml0dGVuIGluIEMsIGZpbGVuYW1lcyBlbmRpbmcgaW4gOmZpbGU6YC5DYCwgOmZpbGU6YC5jY2AsIGFuZCA6ZmlsZTpgLmMrK2AgYXJlCi0gIGFzc3VtZWQgdG8gYmUgQysrLCBhbmQgZmlsZW5hbWVzIGVuZGluZyBpbiA6ZmlsZTpgLm1gIG9yIDpmaWxlOmAubW1gIGFyZSBhc3N1bWVkCi0gIHRvIGJlIGluIE9iamVjdGl2ZSBDLgotCi0qICpjcHBhcmcqIGlzIGFuIGFyZ3VtZW50IGZvciB0aGUgQyBwcmVwcm9jZXNzb3IsICBhbmQgaXMgYW55dGhpbmcgc3RhcnRpbmcgd2l0aAotICA6b3B0aW9uOmAtSWAsIDpvcHRpb246YC1EYCwgOm9wdGlvbjpgLVVgIG9yIDpvcHRpb246YC1DYC4KLQotKiAqbGlicmFyeSogaXMgYW55dGhpbmcgZW5kaW5nIGluIDpmaWxlOmAuYWAgb3IgYmVnaW5uaW5nIHdpdGggOm9wdGlvbjpgLWxgIG9yCi0gIDpvcHRpb246YC1MYC4KLQotSWYgYSBwYXJ0aWN1bGFyIHBsYXRmb3JtIHJlcXVpcmVzIGEgc3BlY2lhbCBsaWJyYXJ5IG9uIHlvdXIgcGxhdGZvcm0sIHlvdSBjYW4KLWFkZCBpdCBieSBlZGl0aW5nIHRoZSA6ZmlsZTpgU2V0dXBgIGZpbGUgYW5kIHJ1bm5pbmcgYGBweXRob24gc2V0dXAucHkgYnVpbGRgYC4KLUZvciBleGFtcGxlLCBpZiB0aGUgbW9kdWxlIGRlZmluZWQgYnkgdGhlIGxpbmUgOjoKLQotICAgZm9vIGZvb21vZHVsZS5jCi0KLW11c3QgYmUgbGlua2VkIHdpdGggdGhlIG1hdGggbGlicmFyeSA6ZmlsZTpgbGlibS5hYCBvbiB5b3VyIHBsYXRmb3JtLCBzaW1wbHkgYWRkCi06b3B0aW9uOmAtbG1gIHRvIHRoZSBsaW5lOjoKLQotICAgZm9vIGZvb21vZHVsZS5jIC1sbQotCi1BcmJpdHJhcnkgc3dpdGNoZXMgaW50ZW5kZWQgZm9yIHRoZSBjb21waWxlciBvciB0aGUgbGlua2VyIGNhbiBiZSBzdXBwbGllZCB3aXRoCi10aGUgOm9wdGlvbjpgLVhjb21waWxlcmAgKmFyZyogYW5kIDpvcHRpb246YC1YbGlua2VyYCAqYXJnKiBvcHRpb25zOjoKLQotICAgZm9vIGZvb21vZHVsZS5jIC1YY29tcGlsZXIgLW8zMiAtWGxpbmtlciAtc2hhcmVkIC1sbQotCi1UaGUgbmV4dCBvcHRpb24gYWZ0ZXIgOm9wdGlvbjpgLVhjb21waWxlcmAgYW5kIDpvcHRpb246YC1YbGlua2VyYCB3aWxsIGJlCi1hcHBlbmRlZCB0byB0aGUgcHJvcGVyIGNvbW1hbmQgbGluZSwgc28gaW4gdGhlIGFib3ZlIGV4YW1wbGUgdGhlIGNvbXBpbGVyIHdpbGwKLWJlIHBhc3NlZCB0aGUgOm9wdGlvbjpgLW8zMmAgb3B0aW9uLCBhbmQgdGhlIGxpbmtlciB3aWxsIGJlIHBhc3NlZAotOm9wdGlvbjpgLXNoYXJlZGAuICBJZiBhIGNvbXBpbGVyIG9wdGlvbiByZXF1aXJlcyBhbiBhcmd1bWVudCwgeW91J2xsIGhhdmUgdG8KLXN1cHBseSBtdWx0aXBsZSA6b3B0aW9uOmAtWGNvbXBpbGVyYCBvcHRpb25zOyBmb3IgZXhhbXBsZSwgdG8gcGFzcyBgYC14IGMrK2BgCi10aGUgOmZpbGU6YFNldHVwYCBmaWxlIHdvdWxkIGhhdmUgdG8gY29udGFpbiBgYC1YY29tcGlsZXIgLXggLVhjb21waWxlciBjKytgYC4KLQotQ29tcGlsZXIgZmxhZ3MgY2FuIGFsc28gYmUgc3VwcGxpZWQgdGhyb3VnaCBzZXR0aW5nIHRoZSA6ZW52dmFyOmBDRkxBR1NgCi1lbnZpcm9ubWVudCB2YXJpYWJsZS4gIElmIHNldCwgdGhlIGNvbnRlbnRzIG9mIDplbnZ2YXI6YENGTEFHU2Agd2lsbCBiZSBhZGRlZCB0bwotdGhlIGNvbXBpbGVyIGZsYWdzIHNwZWNpZmllZCBpbiB0aGUgIDpmaWxlOmBTZXR1cGAgZmlsZS4KLQotCi0uLiBfaW5zdC1ub24tbXMtY29tcGlsZXJzOgotCi1Vc2luZyBub24tTWljcm9zb2Z0IGNvbXBpbGVycyBvbiBXaW5kb3dzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLS4uIHNlY3Rpb25hdXRob3I6OiBSZW5lIExpZWJzY2hlciA8Ui5MaWVic2NoZXJAZ214LmRlPgotCi0KLQotQm9ybGFuZC9Db2RlR2VhciBDKysKLV5eXl5eXl5eXl5eXl5eXl5eXl5eCi0KLVRoaXMgc3Vic2VjdGlvbiBkZXNjcmliZXMgdGhlIG5lY2Vzc2FyeSBzdGVwcyB0byB1c2UgRGlzdHV0aWxzIHdpdGggdGhlIEJvcmxhbmQKLUMrKyBjb21waWxlciB2ZXJzaW9uIDUuNS4gIEZpcnN0IHlvdSBoYXZlIHRvIGtub3cgdGhhdCBCb3JsYW5kJ3Mgb2JqZWN0IGZpbGUKLWZvcm1hdCAoT01GKSBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgZm9ybWF0IHVzZWQgYnkgdGhlIFB5dGhvbiB2ZXJzaW9uIHlvdSBjYW4KLWRvd25sb2FkIGZyb20gdGhlIFB5dGhvbiBvciBBY3RpdmVTdGF0ZSBXZWIgc2l0ZS4gIChQeXRob24gaXMgYnVpbHQgd2l0aAotTWljcm9zb2Z0IFZpc3VhbCBDKyssIHdoaWNoIHVzZXMgQ09GRiBhcyB0aGUgb2JqZWN0IGZpbGUgZm9ybWF0LikgRm9yIHRoaXMKLXJlYXNvbiB5b3UgaGF2ZSB0byBjb252ZXJ0IFB5dGhvbidzIGxpYnJhcnkgOmZpbGU6YHB5dGhvbjI1LmxpYmAgaW50byB0aGUKLUJvcmxhbmQgZm9ybWF0LiAgWW91IGNhbiBkbyB0aGlzIGFzIGZvbGxvd3M6Ci0KLS4uIFNob3VsZCB3ZSBtZW50aW9uIHRoYXQgdXNlcnMgaGF2ZSB0byBjcmVhdGUgY2ZnLWZpbGVzIGZvciB0aGUgY29tcGlsZXI/Ci0uLiBzZWUgYWxzbyBodHRwOi8vY29tbXVuaXR5LmJvcmxhbmQuY29tL2FydGljbGUvMCwxNDEwLDIxMjA1LDAwLmh0bWwKLQotOjoKLQotICAgY29mZjJvbWYgcHl0aG9uMjUubGliIHB5dGhvbjI1X2JjcHAubGliCi0KLVRoZSA6ZmlsZTpgY29mZjJvbWZgIHByb2dyYW0gY29tZXMgd2l0aCB0aGUgQm9ybGFuZCBjb21waWxlci4gIFRoZSBmaWxlCi06ZmlsZTpgcHl0aG9uMjUubGliYCBpcyBpbiB0aGUgOmZpbGU6YExpYnNgIGRpcmVjdG9yeSBvZiB5b3VyIFB5dGhvbgotaW5zdGFsbGF0aW9uLiAgSWYgeW91ciBleHRlbnNpb24gdXNlcyBvdGhlciBsaWJyYXJpZXMgKHpsaWIsIC4uLikgeW91IGhhdmUgdG8KLWNvbnZlcnQgdGhlbSB0b28uCi0KLVRoZSBjb252ZXJ0ZWQgZmlsZXMgaGF2ZSB0byByZXNpZGUgaW4gdGhlIHNhbWUgZGlyZWN0b3JpZXMgYXMgdGhlIG5vcm1hbAotbGlicmFyaWVzLgotCi1Ib3cgZG9lcyBEaXN0dXRpbHMgbWFuYWdlIHRvIHVzZSB0aGVzZSBsaWJyYXJpZXMgd2l0aCB0aGVpciBjaGFuZ2VkIG5hbWVzPyAgSWYKLXRoZSBleHRlbnNpb24gbmVlZHMgYSBsaWJyYXJ5IChlZy4gOmZpbGU6YGZvb2ApIERpc3R1dGlscyBjaGVja3MgZmlyc3QgaWYgaXQKLWZpbmRzIGEgbGlicmFyeSB3aXRoIHN1ZmZpeCA6ZmlsZTpgX2JjcHBgIChlZy4gOmZpbGU6YGZvb19iY3BwLmxpYmApIGFuZCB0aGVuCi11c2VzIHRoaXMgbGlicmFyeS4gIEluIHRoZSBjYXNlIGl0IGRvZXNuJ3QgZmluZCBzdWNoIGEgc3BlY2lhbCBsaWJyYXJ5IGl0IHVzZXMKLXRoZSBkZWZhdWx0IG5hbWUgKDpmaWxlOmBmb28ubGliYC4pIFsjXV8KLQotVG8gbGV0IERpc3R1dGlscyBjb21waWxlIHlvdXIgZXh0ZW5zaW9uIHdpdGggQm9ybGFuZCBDKysgeW91IG5vdyBoYXZlIHRvIHR5cGU6OgotCi0gICBweXRob24gc2V0dXAucHkgYnVpbGQgLS1jb21waWxlcj1iY3BwCi0KLUlmIHlvdSB3YW50IHRvIHVzZSB0aGUgQm9ybGFuZCBDKysgY29tcGlsZXIgYXMgdGhlIGRlZmF1bHQsIHlvdSBjb3VsZCBzcGVjaWZ5Ci10aGlzIGluIHlvdXIgcGVyc29uYWwgb3Igc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbiBmaWxlIGZvciBEaXN0dXRpbHMgKHNlZQotc2VjdGlvbiA6cmVmOmBpbnN0LWNvbmZpZy1maWxlc2AuKQorICAgaW5zdGFsbAorICAgcHlzZXR1cAorICAgcHlzZXR1cC1jb25maWcKKyAgIHB5c2V0dXAtc2VydmVycwogCiAKIC4uIHNlZWFsc286OgogCi0gICBgQysrQnVpbGRlciBDb21waWxlciA8aHR0cDovL3d3dy5jb2RlZ2Vhci5jb20vZG93bmxvYWRzL2ZyZWUvY3BwYnVpbGRlcj5gXwotICAgICAgSW5mb3JtYXRpb24gYWJvdXQgdGhlIGZyZWUgQysrIGNvbXBpbGVyIGZyb20gQm9ybGFuZCwgaW5jbHVkaW5nIGxpbmtzIHRvIHRoZQotICAgICAgZG93bmxvYWQgcGFnZXMuCisgICA6cmVmOmBwYWNrYWdpbmctaW5kZXhgCisgICAgICBUaGUgbWFudWFsIGZvciBkZXZlbG9wZXJzIG9mIFB5dGhvbiBwcm9qZWN0cyB3aG8gd2FudCB0byBwYWNrYWdlIGFuZAorICAgICAgZGlzdHJpYnV0ZSB0aGVtLiBUaGlzIGRlc2NyaWJlcyBob3cgdG8gdXNlIDptb2Q6YHBhY2thZ2luZ2AgdG8gbWFrZQorICAgICAgcHJvamVjdHMgZWFzaWx5IGZvdW5kIGFuZCBhZGRlZCB0byBhbiBleGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLgogCi0gICBgQ3JlYXRpbmcgUHl0aG9uIEV4dGVuc2lvbnMgVXNpbmcgQm9ybGFuZCdzIEZyZWUgQ29tcGlsZXIgPGh0dHA6Ly93d3cuY3liZXJ1cy5jYS9+Z193aWxsL3B5RXh0ZW5ETC5zaHRtbD5gXwotICAgICAgRG9jdW1lbnQgZGVzY3JpYmluZyBob3cgdG8gdXNlIEJvcmxhbmQncyBmcmVlIGNvbW1hbmQtbGluZSBDKysgY29tcGlsZXIgdG8gYnVpbGQKLSAgICAgIFB5dGhvbi4KLQotCi1HTlUgQyAvIEN5Z3dpbiAvIE1pbkdXCi1eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCi0KLVRoaXMgc2VjdGlvbiBkZXNjcmliZXMgdGhlIG5lY2Vzc2FyeSBzdGVwcyB0byB1c2UgRGlzdHV0aWxzIHdpdGggdGhlIEdOVSBDL0MrKwotY29tcGlsZXJzIGluIHRoZWlyIEN5Z3dpbiBhbmQgTWluR1cgZGlzdHJpYnV0aW9ucy4gWyNdXyBGb3IgYSBQeXRob24gaW50ZXJwcmV0ZXIKLXRoYXQgd2FzIGJ1aWx0IHdpdGggQ3lnd2luLCBldmVyeXRoaW5nIHNob3VsZCB3b3JrIHdpdGhvdXQgYW55IG9mIHRoZXNlCi1mb2xsb3dpbmcgc3RlcHMuCi0KLU5vdCBhbGwgZXh0ZW5zaW9ucyBjYW4gYmUgYnVpbHQgd2l0aCBNaW5HVyBvciBDeWd3aW4sIGJ1dCBtYW55IGNhbi4gIEV4dGVuc2lvbnMKLW1vc3QgbGlrZWx5IHRvIG5vdCB3b3JrIGFyZSB0aG9zZSB0aGF0IHVzZSBDKysgb3IgZGVwZW5kIG9uIE1pY3Jvc29mdCBWaXN1YWwgQwotZXh0ZW5zaW9ucy4KLQotVG8gbGV0IERpc3R1dGlscyBjb21waWxlIHlvdXIgZXh0ZW5zaW9uIHdpdGggQ3lnd2luIHlvdSBoYXZlIHRvIHR5cGU6OgotCi0gICBweXRob24gc2V0dXAucHkgYnVpbGQgLS1jb21waWxlcj1jeWd3aW4KLQotYW5kIGZvciBDeWd3aW4gaW4gbm8tY3lnd2luIG1vZGUgWyNdXyBvciBmb3IgTWluR1cgdHlwZTo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBidWlsZCAtLWNvbXBpbGVyPW1pbmd3MzIKLQotSWYgeW91IHdhbnQgdG8gdXNlIGFueSBvZiB0aGVzZSBvcHRpb25zL2NvbXBpbGVycyBhcyBkZWZhdWx0LCB5b3Ugc2hvdWxkCi1jb25zaWRlciB3cml0aW5nIGl0IGluIHlvdXIgcGVyc29uYWwgb3Igc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbiBmaWxlIGZvcgotRGlzdHV0aWxzIChzZWUgc2VjdGlvbiA6cmVmOmBpbnN0LWNvbmZpZy1maWxlc2AuKQotCi1PbGRlciBWZXJzaW9ucyBvZiBQeXRob24gYW5kIE1pbkdXCi0iIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiCi1UaGUgZm9sbG93aW5nIGluc3RydWN0aW9ucyBvbmx5IGFwcGx5IGlmIHlvdSdyZSB1c2luZyBhIHZlcnNpb24gb2YgUHl0aG9uCi1pbmZlcmlvciB0byAyLjQuMSB3aXRoIGEgTWluR1cgaW5mZXJpb3IgdG8gMy4wLjAgKHdpdGgKLWJpbnV0aWxzLTIuMTMuOTAtMjAwMzAxMTEtMSkuCi0KLVRoZXNlIGNvbXBpbGVycyByZXF1aXJlIHNvbWUgc3BlY2lhbCBsaWJyYXJpZXMuICBUaGlzIHRhc2sgaXMgbW9yZSBjb21wbGV4IHRoYW4KLWZvciBCb3JsYW5kJ3MgQysrLCBiZWNhdXNlIHRoZXJlIGlzIG5vIHByb2dyYW0gdG8gY29udmVydCB0aGUgbGlicmFyeS4gIEZpcnN0Ci15b3UgaGF2ZSB0byBjcmVhdGUgYSBsaXN0IG9mIHN5bWJvbHMgd2hpY2ggdGhlIFB5dGhvbiBETEwgZXhwb3J0cy4gKFlvdSBjYW4gZmluZAotYSBnb29kIHByb2dyYW0gZm9yIHRoaXMgdGFzayBhdAotaHR0cDovL3d3dy5lbW1lc3RlY2guY29tL3NvZnR3YXJlL3BleHBvcnRzLTAuNDMvZG93bmxvYWRfcGV4cG9ydHMuaHRtbCkuCi0KLS4uIEkgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0IHRoZSBuZXh0IGxpbmUgbWVhbnMuIC0tYW1rCi0uLiAoaW5jbHVzaXZlIHRoZSByZWZlcmVuY2VzIG9uIGRhdGEgc3RydWN0dXJlcy4pCi0KLTo6Ci0KLSAgIHBleHBvcnRzIHB5dGhvbjI1LmRsbCA+cHl0aG9uMjUuZGVmCi0KLVRoZSBsb2NhdGlvbiBvZiBhbiBpbnN0YWxsZWQgOmZpbGU6YHB5dGhvbjI1LmRsbGAgd2lsbCBkZXBlbmQgb24gdGhlCi1pbnN0YWxsYXRpb24gb3B0aW9ucyBhbmQgdGhlIHZlcnNpb24gYW5kIGxhbmd1YWdlIG9mIFdpbmRvd3MuICBJbiBhICJqdXN0IGZvcgotbWUiIGluc3RhbGxhdGlvbiwgaXQgd2lsbCBhcHBlYXIgaW4gdGhlIHJvb3Qgb2YgdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkuICBJbgotYSBzaGFyZWQgaW5zdGFsbGF0aW9uLCBpdCB3aWxsIGJlIGxvY2F0ZWQgaW4gdGhlIHN5c3RlbSBkaXJlY3RvcnkuCi0KLVRoZW4geW91IGNhbiBjcmVhdGUgZnJvbSB0aGVzZSBpbmZvcm1hdGlvbiBhbiBpbXBvcnQgbGlicmFyeSBmb3IgZ2NjLiA6OgotCi0gICAvY3lnd2luL2Jpbi9kbGx0b29sIC0tZGxsbmFtZSBweXRob24yNS5kbGwgLS1kZWYgcHl0aG9uMjUuZGVmIC0tb3V0cHV0LWxpYiBsaWJweXRob24yNS5hCi0KLVRoZSByZXN1bHRpbmcgbGlicmFyeSBoYXMgdG8gYmUgcGxhY2VkIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcwotOmZpbGU6YHB5dGhvbjI1LmxpYmAuIChTaG91bGQgYmUgdGhlIDpmaWxlOmBsaWJzYCBkaXJlY3RvcnkgdW5kZXIgeW91ciBQeXRob24KLWluc3RhbGxhdGlvbiBkaXJlY3RvcnkuKQotCi1JZiB5b3VyIGV4dGVuc2lvbiB1c2VzIG90aGVyIGxpYnJhcmllcyAoemxpYiwuLi4pIHlvdSBtaWdodCAgaGF2ZSB0byBjb252ZXJ0Ci10aGVtIHRvby4gVGhlIGNvbnZlcnRlZCBmaWxlcyBoYXZlIHRvIHJlc2lkZSBpbiB0aGUgc2FtZSBkaXJlY3RvcmllcyBhcyB0aGUKLW5vcm1hbCBsaWJyYXJpZXMgZG8uCi0KLQotLi4gc2VlYWxzbzo6Ci0KLSAgIGBCdWlsZGluZyBQeXRob24gbW9kdWxlcyBvbiBNUyBXaW5kb3dzIHBsYXRmb3JtIHdpdGggTWluR1cgPGh0dHA6Ly93d3cuem9wZS5vcmcvTWVtYmVycy9hbHMvdGlwcy93aW4zMl9taW5nd19tb2R1bGVzPmBfCi0gICAgICBJbmZvcm1hdGlvbiBhYm91dCBidWlsZGluZyB0aGUgcmVxdWlyZWQgbGlicmFyaWVzIGZvciB0aGUgTWluR1cgZW52aXJvbm1lbnQuCi0KLQotLi4gcnVicmljOjogRm9vdG5vdGVzCi0KLS4uIFsjXSBUaGlzIGFsc28gbWVhbnMgeW91IGNvdWxkIHJlcGxhY2UgYWxsIGV4aXN0aW5nIENPRkYtbGlicmFyaWVzIHdpdGggT01GLWxpYnJhcmllcwotICAgb2YgdGhlIHNhbWUgbmFtZS4KLQotLi4gWyNdIENoZWNrIGh0dHA6Ly9zb3VyY2VzLnJlZGhhdC5jb20vY3lnd2luLyBhbmQgaHR0cDovL3d3dy5taW5ndy5vcmcvIGZvciBtb3JlCi0gICBpbmZvcm1hdGlvbgotCi0uLiBbI10gVGhlbiB5b3UgaGF2ZSBubyBQT1NJWCBlbXVsYXRpb24gYXZhaWxhYmxlLCBidXQgeW91IGFsc28gZG9uJ3QgbmVlZAotICAgOmZpbGU6YGN5Z3dpbjEuZGxsYC4KKyAgIDptb2Q6YHBhY2thZ2luZ2AKKyAgICAgIEEgbGlicmFyeSByZWZlcmVuY2UgZm9yIGRldmVsb3BlcnMgb2YgcGFja2FnaW5nIHRvb2xzIHdhbnRpbmcgdG8gdXNlCisgICAgICBzdGFuZGFsb25lIGJ1aWxkaW5nIGJsb2NrcyBsaWtlIDptb2Q6YH5wYWNrYWdpbmcudmVyc2lvbmAgb3IKKyAgICAgIDptb2Q6YH5wYWNrYWdpbmcubWV0YWRhdGFgLCBvciBleHRlbmQgUGFja2FnaW5nIGl0c2VsZi4KZGlmZiAtLWdpdCBhL0RvYy9pbnN0YWxsL2luc3RhbGwucnN0IGIvRG9jL2luc3RhbGwvaW5zdGFsbC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjNlNjU1YgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9pbnN0YWxsL2luc3RhbGwucnN0CkBAIC0wLDAgKzEsMTExOSBAQAorLi4gaGlnaGxpZ2h0bGFuZzo6IG5vbmUKKworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitJbnN0YWxsaW5nIFB5dGhvbiBwcm9qZWN0czogb3ZlcnZpZXcKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBfcGFja2FnaW5nLWluc3RhbGwtaW50cm86CisKK0ludHJvZHVjdGlvbgorPT09PT09PT09PT09CisKK0FsdGhvdWdoIFB5dGhvbidzIGV4dGVuc2l2ZSBzdGFuZGFyZCBsaWJyYXJ5IGNvdmVycyBtYW55IHByb2dyYW1taW5nIG5lZWRzLAordGhlcmUgb2Z0ZW4gY29tZXMgYSB0aW1lIHdoZW4geW91IG5lZWQgdG8gYWRkIG5ldyBmdW5jdGlvbmFsaXR5IHRvIHlvdXIgUHl0aG9uCitpbnN0YWxsYXRpb24gaW4gdGhlIGZvcm0gb2YgdGhpcmQtcGFydHkgbW9kdWxlcy4gVGhpcyBtaWdodCBiZSBuZWNlc3NhcnkgdG8KK3N1cHBvcnQgeW91ciBvd24gcHJvZ3JhbW1pbmcsIG9yIHRvIHN1cHBvcnQgYW4gYXBwbGljYXRpb24gdGhhdCB5b3Ugd2FudCB0byB1c2UKK2FuZCB0aGF0IGhhcHBlbnMgdG8gYmUgd3JpdHRlbiBpbiBQeXRob24uCisKK0luIHRoZSBwYXN0LCB0aGVyZSB3YXMgbGl0dGxlIHN1cHBvcnQgZm9yIGFkZGluZyB0aGlyZC1wYXJ0eSBtb2R1bGVzIHRvIGFuCitleGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLiAgV2l0aCB0aGUgaW50cm9kdWN0aW9uIG9mIHRoZSBQeXRob24gRGlzdHJpYnV0aW9uCitVdGlsaXRpZXMgKERpc3R1dGlscyBmb3Igc2hvcnQpIGluIFB5dGhvbiAyLjAsIHRoaXMgY2hhbmdlZC4gIEhvd2V2ZXIsIG5vdCBhbGwKK3Byb2JsZW1zIHdlcmUgc29sdmVkOyBlbmQtdXNlcnMgaGFkIHRvIHJlbHkgb24gYGBlYXN5X2luc3RhbGxgYCBvcgorYGBwaXBgYCB0byBkb3dubG9hZCB0aGlyZC1wYXJ0eSBtb2R1bGVzIGZyb20gUHlQSSwgdW5pbnN0YWxsIGRpc3RyaWJ1dGlvbnMgb3IgZG8KK290aGVyIG1haW50ZW5hbmNlIG9wZXJhdGlvbnMuICBQYWNrYWdpbmcgaXMgYSBtb3JlIGNvbXBsZXRlIHJlcGxhY2VtZW50IGZvcgorRGlzdHV0aWxzLCBpbiB0aGUgc3RhbmRhcmQgbGlicmFyeSwgd2l0aCBhIGJhY2twb3J0IG5hbWVkIERpc3R1dGlsczIgYXZhaWxhYmxlCitmb3Igb2xkZXIgUHl0aG9uIHZlcnNpb25zLgorCitUaGlzIGRvY3VtZW50IGlzIGFpbWVkIHByaW1hcmlseSBhdCBwZW9wbGUgd2hvIG5lZWQgdG8gaW5zdGFsbCB0aGlyZC1wYXJ0eQorUHl0aG9uIG1vZHVsZXM6IGVuZC11c2VycyBhbmQgc3lzdGVtIGFkbWluaXN0cmF0b3JzIHdobyBqdXN0IG5lZWQgdG8gZ2V0IHNvbWUKK1B5dGhvbiBhcHBsaWNhdGlvbiBydW5uaW5nLCBhbmQgZXhpc3RpbmcgUHl0aG9uIHByb2dyYW1tZXJzIHdobyB3YW50IHRvIGFkZAorbmV3IGdvb2RpZXMgdG8gdGhlaXIgdG9vbGJveC4gWW91IGRvbid0IG5lZWQgdG8ga25vdyBQeXRob24gdG8gcmVhZCB0aGlzCitkb2N1bWVudDsgdGhlcmUgd2lsbCBiZSBzb21lIGJyaWVmIGZvcmF5cyBpbnRvIHVzaW5nIFB5dGhvbidzIGludGVyYWN0aXZlIG1vZGUKK3RvIGV4cGxvcmUgeW91ciBpbnN0YWxsYXRpb24sIGJ1dCB0aGF0J3MgaXQuIElmIHlvdSdyZSBsb29raW5nIGZvciBpbmZvcm1hdGlvbgorb24gaG93IHRvIGRpc3RyaWJ1dGUgeW91ciBvd24gUHl0aG9uIG1vZHVsZXMgc28gdGhhdCBvdGhlcnMgbWF5IHVzZSB0aGVtLCBzZWUKK3RoZSA6cmVmOmBwYWNrYWdpbmctaW5kZXhgIG1hbnVhbC4KKworCisuLiBfcGFja2FnaW5nLXRyaXZpYWwtaW5zdGFsbDoKKworQmVzdCBjYXNlOiB0cml2aWFsIGluc3RhbGxhdGlvbgorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitJbiB0aGUgYmVzdCBjYXNlLCBzb21lb25lIHdpbGwgaGF2ZSBwcmVwYXJlZCBhIHNwZWNpYWwgdmVyc2lvbiBvZiB0aGUgbW9kdWxlCitkaXN0cmlidXRpb24geW91IHdhbnQgdG8gaW5zdGFsbCB0aGF0IGlzIHRhcmdldGVkIHNwZWNpZmljYWxseSBhdCB5b3VyIHBsYXRmb3JtCithbmQgY2FuIGJlIGluc3RhbGxlZCBqdXN0IGxpa2UgYW55IG90aGVyIHNvZnR3YXJlIG9uIHlvdXIgcGxhdGZvcm0uIEZvciBleGFtcGxlLAordGhlIG1vZHVsZSdzIGRldmVsb3BlciBtaWdodCBtYWtlIGFuIGV4ZWN1dGFibGUgaW5zdGFsbGVyIGF2YWlsYWJsZSBmb3IgV2luZG93cwordXNlcnMsIGFuIFJQTSBwYWNrYWdlIGZvciB1c2VycyBvZiBSUE0tYmFzZWQgTGludXggc3lzdGVtcyAoUmVkIEhhdCwgU3VTRSwKK01hbmRyYWtlLCBhbmQgbWFueSBvdGhlcnMpLCBhIERlYmlhbiBwYWNrYWdlIGZvciB1c2VycyBvZiBEZWJpYW4gYW5kIGRlcml2YXRpdmUKK3N5c3RlbXMsIGFuZCBzbyBmb3J0aC4KKworSW4gdGhhdCBjYXNlLCB5b3Ugd291bGQgdXNlIHRoZSBzdGFuZGFyZCBzeXN0ZW0gdG9vbHMgdG8gZG93bmxvYWQgYW5kIGluc3RhbGwKK3RoZSBzcGVjaWZpYyBpbnN0YWxsZXIgZm9yIHlvdXIgcGxhdGZvcm0gYW5kIGl0cyBkZXBlbmRlbmNpZXMuCisKK09mIGNvdXJzZSwgdGhpbmdzIHdpbGwgbm90IGFsd2F5cyBiZSB0aGF0IGVhc3kuIFlvdSBtaWdodCBiZSBpbnRlcmVzdGVkIGluIGEKK21vZHVsZSB3aG9zZSBkaXN0cmlidXRpb24gZG9lc24ndCBoYXZlIGFuIGVhc3ktdG8tdXNlIGluc3RhbGxlciBmb3IgeW91cgorcGxhdGZvcm0uIEluIHRoYXQgY2FzZSwgeW91J2xsIGhhdmUgdG8gc3RhcnQgd2l0aCB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbgorcmVsZWFzZWQgYnkgdGhlIG1vZHVsZSdzIGF1dGhvci9tYWludGFpbmVyLiBJbnN0YWxsaW5nIGZyb20gYSBzb3VyY2UKK2Rpc3RyaWJ1dGlvbiBpcyBub3QgdG9vIGhhcmQsIGFzIGxvbmcgYXMgdGhlIG1vZHVsZXMgYXJlIHBhY2thZ2VkIGluIHRoZQorc3RhbmRhcmQgd2F5LiBUaGUgYnVsayBvZiB0aGlzIGRvY3VtZW50IGFkZHJlc3NlcyB0aGUgYnVpbGRpbmcgYW5kIGluc3RhbGxpbmcKK29mIG1vZHVsZXMgZnJvbSBzdGFuZGFyZCBzb3VyY2UgZGlzdHJpYnV0aW9ucy4KKworCisuLiBfcGFja2FnaW5nLWRpc3R1dGlsczoKKworVGhlIFB5dGhvbiBzdGFuZGFyZDogRGlzdHV0aWxzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworSWYgeW91IGRvd25sb2FkIGEgc291cmNlIGRpc3RyaWJ1dGlvbiBvZiBhIG1vZHVsZSwgaXQgd2lsbCBiZSBvYnZpb3VzIHdoZXRoZXIKK2l0IHdhcyBwYWNrYWdlZCBhbmQgZGlzdHJpYnV0ZWQgdXNpbmcgRGlzdHV0aWxzLiAgRmlyc3QsIHRoZSBkaXN0cmlidXRpb24ncyBuYW1lCithbmQgdmVyc2lvbiBudW1iZXIgd2lsbCBiZSBmZWF0dXJlZCBwcm9taW5lbnRseSBpbiB0aGUgbmFtZSBvZiB0aGUgZG93bmxvYWRlZAorYXJjaGl2ZSwgZS5nLiA6ZmlsZTpgZm9vLTEuMC50YXIuZ3pgIG9yIDpmaWxlOmB3aWRnZXQtMC45LjcuemlwYC4gIE5leHQsIHRoZQorYXJjaGl2ZSB3aWxsIHVucGFjayBpbnRvIGEgc2ltaWxhcmx5LW5hbWVkIGRpcmVjdG9yeTogOmZpbGU6YGZvby0xLjBgIG9yCis6ZmlsZTpgd2lkZ2V0LTAuOS43YC4gIEFkZGl0aW9uYWxseSwgdGhlIGRpc3RyaWJ1dGlvbiBtYXkgY29udGFpbiBhCis6ZmlsZTpgc2V0dXAuY2ZnYCBmaWxlIGFuZCBhIGZpbGUgbmFtZWQgOmZpbGU6YFJFQURNRS50eHRgIC0tLW9yIHBvc3NpYmx5IGp1c3QKKzpmaWxlOmBSRUFETUVgLS0tIGV4cGxhaW5pbmcgdGhhdCBidWlsZGluZyBhbmQgaW5zdGFsbGluZyB0aGUgbW9kdWxlCitkaXN0cmlidXRpb24gaXMgYSBzaW1wbGUgbWF0dGVyIG9mIGlzc3VpbmcgdGhlIGZvbGxvd2luZyBjb21tYW5kIGF0IHlvdXIgc2hlbGwncworcHJvbXB0OjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwKKworVGhpcmQtcGFydHkgcHJvamVjdHMgaGF2ZSBleHRlbmRlZCBEaXN0dXRpbHMgdG8gd29yayBhcm91bmQgaXRzIGxpbWl0YXRpb25zIG9yCithZGQgZnVuY3Rpb25hbGl0eS4gIEFmdGVyIHNvbWUgeWVhcnMgb2YgbmVhci1pbmFjdGl2aXR5IGluIERpc3R1dGlscywgYSBuZXcKK21haW50YWluZXIgaGFzIHN0YXJ0ZWQgdG8gc3RhbmRhcmRpemUgZ29vZCBpZGVhcyBpbiBQRVBzIGFuZCBpbXBsZW1lbnQgdGhlbSBpbiBhCituZXcsIGltcHJvdmVkIHZlcnNpb24gb2YgRGlzdHV0aWxzLCBjYWxsZWQgRGlzdHV0aWxzMiBvciBQYWNrYWdpbmcuCisKKworLi4gX3BhY2thZ2luZy1uZXctc3RhbmRhcmQ6CisKK1RoZSBuZXcgc3RhbmRhcmQ6IFBhY2thZ2luZworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSBydWxlcyBkZXNjcmliZWQgaW4gdGhlIGZpcnN0IHBhcmFncmFwaCBhYm92ZSBhcHBseSB0byBQYWNrYWdpbmctYmFzZWQKK3Byb2plY3RzIHRvbzogYSBzb3VyY2UgZGlzdHJpYnV0aW9uIHdpbGwgaGF2ZSBhIG5hbWUgbGlrZQorOmZpbGU6YHdpZGdldC0wLjkuNy56aXBgLiAgT25lIG9mIHRoZSBtYWluIGRpZmZlcmVuY2VzIHdpdGggRGlzdHV0aWxzIGlzIHRoYXQKK2Rpc3RyaWJ1dGlvbnMgbm8gbG9uZ2VyIGhhdmUgYSA6ZmlsZTpgc2V0dXAucHlgIHNjcmlwdDsgaXQgdXNlZCB0byBjYXVzZSBhCitudW1iZXIgb2YgaXNzdWVzLiAgTm93IHRoZXJlIGlzIGEgdW5pcXVlIHNjcmlwdCBpbnN0YWxsZWQgd2l0aCBQeXRob24gaXRzZWxmOjoKKworICAgcHlzZXR1cCBpbnN0YWxsIHdpZGdldC0wLjkuNy56aXAKKworUnVubmluZyB0aGlzIGNvbW1hbmQgaXMgZW5vdWdoIHRvIGJ1aWxkIGFuZCBpbnN0YWxsIHByb2plY3RzIChQeXRob24gbW9kdWxlcyBvcgorcGFja2FnZXMsIHNjcmlwdHMgb3Igd2hvbGUgYXBwbGljYXRpb25zKSwgd2l0aG91dCBldmVuIGhhdmluZyB0byB1bnBhY2sgdGhlCithcmNoaXZlLiAgSXQgaXMgYWxzbyBjb21wYXRpYmxlIHdpdGggRGlzdHV0aWxzLWJhc2VkIGRpc3RyaWJ1dGlvbnMuCisKK1VubGVzcyB5b3UgaGF2ZSB0byBwZXJmb3JtIG5vbi1zdGFuZGFyZCBpbnN0YWxsYXRpb25zIG9yIGN1c3RvbWl6ZSB0aGUgYnVpbGQKK3Byb2Nlc3MsIHlvdSBjYW4gc3RvcCByZWFkaW5nIHRoaXMgbWFudWFsIC0tLXRoZSBhYm92ZSBjb21tYW5kIGlzIGV2ZXJ5dGhpbmcgeW91CituZWVkIHRvIGdldCBvdXQgb2YgaXQuCisKK1dpdGggOnByb2dyYW06YHB5c2V0dXBgLCB5b3Ugd29uJ3QgZXZlbiBoYXZlIHRvIG1hbnVhbGx5IGRvd25sb2FkIGEgZGlzdHJpYnV0aW9uCitiZWZvcmUgaW5zdGFsbGluZyBpdDsgc2VlIDpyZWY6YHBhY2thZ2luZy1weXNldHVwYC4KKworCisuLiBfcGFja2FnaW5nLXN0YW5kYXJkLWluc3RhbGw6CisKK1N0YW5kYXJkIGJ1aWxkIGFuZCBpbnN0YWxsCis9PT09PT09PT09PT09PT09PT09PT09PT09PQorCitBcyBkZXNjcmliZWQgaW4gc2VjdGlvbiA6cmVmOmBwYWNrYWdpbmctbmV3LXN0YW5kYXJkYCwgYnVpbGRpbmcgYW5kIGluc3RhbGxpbmcKK2EgbW9kdWxlIGRpc3RyaWJ1dGlvbiB1c2luZyBQYWNrYWdpbmcgdXN1YWxseSBjb21lcyBkb3duIHRvIG9uZSBzaW1wbGUKK2NvbW1hbmQ6OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QKKworVGhpcyBpcyBhIGNvbW1hbmQgdGhhdCBzaG91bGQgYmUgcnVuIGluIGEgdGVybWluYWwuICBPbiBXaW5kb3dzLCBpdCBpcyBjYWxsZWQgYQorY29tbWFuZCBwcm9tcHQgYW5kIGZvdW5kIGluIDptZW51c2VsZWN0aW9uOmBTdGFydCAtLT4gQWNjZXNzb3JpZXNgOyBQb3dlcnNoZWxsCitpcyBhIHBvcHVsYXIgYWx0ZXJuYXRpdmUuCisKKworLi4gX3BhY2thZ2luZy1wbGF0Zm9ybS12YXJpYXRpb25zOgorCitQbGF0Zm9ybSB2YXJpYXRpb25zCistLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSBzZXR1cCBjb21tYW5kIGlzIG1lYW50IHRvIGJlIHJ1biBmcm9tIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgc291cmNlCitkaXN0cmlidXRpb24sIGkuZS4gdGhlIHRvcC1sZXZlbCBzdWJkaXJlY3RvcnkgdGhhdCB0aGUgbW9kdWxlIHNvdXJjZQorZGlzdHJpYnV0aW9uIHVucGFja3MgaW50by4gRm9yIGV4YW1wbGUsIGlmIHlvdSd2ZSBqdXN0IGRvd25sb2FkZWQgYSBtb2R1bGUKK3NvdXJjZSBkaXN0cmlidXRpb24gOmZpbGU6YGZvby0xLjAudGFyLmd6YCBvbnRvIGEgVW5peCBzeXN0ZW0sIHRoZSBub3JtYWwKK3N0ZXBzIHRvIGZvbGxvdyBhcmUgdGhlc2U6OgorCisgICBndW56aXAgLWMgZm9vLTEuMC50YXIuZ3ogfCB0YXIgeGYgLSAgICAjIHVucGFja3MgaW50byBkaXJlY3RvcnkgZm9vLTEuMAorICAgY2QgZm9vLTEuMAorICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0CisKK09uIFdpbmRvd3MsIHlvdSdkIHByb2JhYmx5IGRvd25sb2FkIDpmaWxlOmBmb28tMS4wLnppcGAuIElmIHlvdSBkb3dubG9hZGVkIHRoZQorYXJjaGl2ZSBmaWxlIHRvIDpmaWxlOmBDOlxcVGVtcGAsIHRoZW4gaXQgd291bGQgdW5wYWNrIGludG8KKzpmaWxlOmBDOlxcVGVtcFxcZm9vLTEuMGAuIFRvIGFjdHVhbGx5IHVucGFjayB0aGUgYXJjaGl2ZSwgeW91IGNhbiB1c2UgZWl0aGVyCithbiBhcmNoaXZlIG1hbmlwdWxhdG9yIHdpdGggYSBncmFwaGljYWwgdXNlciBpbnRlcmZhY2UgKHN1Y2ggYXMgV2luWmlwIG9yIDctWmlwKQorb3IgYSBjb21tYW5kLWxpbmUgdG9vbCAoc3VjaCBhcyA6cHJvZ3JhbTpgdW56aXBgLCA6cHJvZ3JhbTpgcGt1bnppcGAgb3IsIGFnYWluLAorOnByb2dyYW06YDd6YCkuIFRoZW4sIG9wZW4gYSBjb21tYW5kIHByb21wdCB3aW5kb3cgYW5kIHJ1bjo6CisKKyAgIGNkIGM6XFRlbXBcZm9vLTEuMAorICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0CisKKworLi4gX3BhY2thZ2luZy1zcGxpdHRpbmctdXA6CisKK1NwbGl0dGluZyB0aGUgam9iIHVwCistLS0tLS0tLS0tLS0tLS0tLS0tLQorCitSdW5uaW5nIGBgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0YGAgYnVpbGRzIGFuZCBpbnN0YWxscyBhbGwgbW9kdWxlcyBpbiBvbmUgZ28uIElmIHlvdQorcHJlZmVyIHRvIHdvcmsgaW5jcmVtZW50YWxseSAtLS1lc3BlY2lhbGx5IHVzZWZ1bCBpZiB5b3Ugd2FudCB0byBjdXN0b21pemUgdGhlCitidWlsZCBwcm9jZXNzLCBvciBpZiB0aGluZ3MgYXJlIGdvaW5nIHdyb25nLS0tIHlvdSBjYW4gdXNlIHRoZSBzZXR1cCBzY3JpcHQgdG8KK2RvIG9uZSB0aGluZyBhdCBhIHRpbWUuIFRoaXMgaXMgYSB2YWx1YWJsZSB0b29sIHdoZW4gZGlmZmVyZW50IHVzZXJzIHdpbGwgcGVyZm9ybQorc2VwYXJhdGVseSB0aGUgYnVpbGQgYW5kIGluc3RhbGwgc3RlcHMuIEZvciBleGFtcGxlLCB5b3UgbWlnaHQgd2FudCB0byBidWlsZCBhCittb2R1bGUgZGlzdHJpYnV0aW9uIGFuZCBoYW5kIGl0IG9mZiB0byBhIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGZvciBpbnN0YWxsYXRpb24KKyhvciBkbyBpdCB5b3Vyc2VsZiwgYnV0IHdpdGggc3VwZXItdXNlciBvciBhZG1pbiBwcml2aWxlZ2VzKS4KKworRm9yIGV4YW1wbGUsIHRvIGJ1aWxkIGV2ZXJ5dGhpbmcgaW4gb25lIHN0ZXAgYW5kIHRoZW4gaW5zdGFsbCBldmVyeXRoaW5nCitpbiBhIHNlY29uZCBzdGVwLCB5b3UgYXB0bHkgaW52b2tlIHR3byBkaXN0aW5jdCBQYWNrYWdpbmcgY29tbWFuZHM6OgorCisgICBweXNldHVwIHJ1biBidWlsZAorICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0CisKK0lmIHlvdSBkbyB0aGlzLCB5b3Ugd2lsbCBub3RpY2UgdGhhdCBpbnZva2luZyB0aGUgOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGAgY29tbWFuZAorZmlyc3QgcnVucyB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kLCB3aGljaCAtLS1pbiB0aGlzIGNhc2UtLS0gcXVpY2tseQorbm90aWNlcyBpdCBjYW4gc3BhcmUgaXRzZWxmIHRoZSB3b3JrLCBzaW5jZSBldmVyeXRoaW5nIGluIHRoZSA6ZmlsZTpgYnVpbGRgCitkaXJlY3RvcnkgaXMgdXAtdG8tZGF0ZS4KKworWW91IG1heSBvZnRlbiBpZ25vcmUgdGhpcyBhYmlsaXR5IHRvIGRpdmlkZSB0aGUgcHJvY2VzcyBpbiBzdGVwcyBpZiBhbGwgeW91IGRvCitpcyBpbnN0YWxsaW5nIG1vZHVsZXMgZG93bmxvYWRlZCBmcm9tIHRoZSBJbnRlcm5ldCwgYnV0IGl0J3MgdmVyeSBoYW5keSBmb3IKK21vcmUgYWR2YW5jZWQgdGFza3MuIElmIHlvdSBmaW5kIHlvdXJzZWxmIGluIHRoZSBuZWVkIGZvciBkaXN0cmlidXRpbmcgeW91ciBvd24KK1B5dGhvbiBtb2R1bGVzIGFuZCBleHRlbnNpb25zLCB0aG91Z2gsIHlvdSdsbCBtb3N0IGxpa2VseSBydW4gbWFueSBpbmRpdmlkdWFsCitQYWNrYWdpbmcgY29tbWFuZHMuCisKKworLi4gX3BhY2thZ2luZy1ob3ctYnVpbGQtd29ya3M6CisKK0hvdyBidWlsZGluZyB3b3JrcworLS0tLS0tLS0tLS0tLS0tLS0tCisKK0FzIGltcGxpZWQgYWJvdmUsIHRoZSA6Y29tbWFuZDpgYnVpbGRgIGNvbW1hbmQgaXMgcmVzcG9uc2libGUgZm9yIGNvbGxlY3RpbmcKK2FuZCBwbGFjaW5nIHRoZSBmaWxlcyB0byBiZSBpbnN0YWxsZWQgaW50byBhICpidWlsZCBkaXJlY3RvcnkqLiBCeSBkZWZhdWx0LAordGhpcyBpcyA6ZmlsZTpgYnVpbGRgLCB1bmRlciB0aGUgZGlzdHJpYnV0aW9uIHJvb3QuIElmIHlvdSdyZSBleGNlc3NpdmVseQorY29uY2VybmVkIHdpdGggc3BlZWQsIG9yIHdhbnQgdG8ga2VlcCB0aGUgc291cmNlIHRyZWUgcHJpc3RpbmUsIHlvdSBjYW4gc3BlY2lmeQorYSBkaWZmZXJlbnQgYnVpbGQgZGlyZWN0b3J5IHdpdGggdGhlIDpvcHRpb246YC0tYnVpbGQtYmFzZWAgb3B0aW9uLiBGb3IgZXhhbXBsZTo6CisKKyAgIHB5c2V0dXAgcnVuIGJ1aWxkIC0tYnVpbGQtYmFzZSAvdG1wL3B5YnVpbGQvZm9vLTEuMAorCisoT3IgeW91IGNvdWxkIGRvIHRoaXMgcGVybWFuZW50bHkgd2l0aCBhIGRpcmVjdGl2ZSBpbiB5b3VyIHN5c3RlbSBvciBwZXJzb25hbAorUGFja2FnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZTsgc2VlIHNlY3Rpb24gOnJlZjpgcGFja2FnaW5nLWNvbmZpZy1maWxlc2AuKQorSW4gdGhlIHVzdWFsIGNhc2UsIGhvd2V2ZXIsIGFsbCB0aGlzIGlzIHVubmVjZXNzYXJ5LgorCitUaGUgYnVpbGQgdHJlZSdzIGRlZmF1bHQgbGF5b3V0IGxvb2tzIGxpa2Ugc286OgorCisgICAtLS0gYnVpbGQvIC0tLSBsaWIvCisgICBvcgorICAgLS0tIGJ1aWxkLyAtLS0gbGliLjxwbGF0Pi8KKyAgICAgICAgICAgICAgICAgIHRlbXAuPHBsYXQ+LworCit3aGVyZSBgYDxwbGF0PmBgIGV4cGFuZHMgdG8gYSBicmllZiBkZXNjcmlwdGlvbiBvZiB0aGUgY3VycmVudCBPUy9oYXJkd2FyZQorcGxhdGZvcm0gYW5kIFB5dGhvbiB2ZXJzaW9uLiBUaGUgZmlyc3QgZm9ybSwgd2l0aCBqdXN0IGEgOmZpbGU6YGxpYmAgZGlyZWN0b3J5LAoraXMgdXNlZCBmb3IgcHVyZSBtb2R1bGUgZGlzdHJpYnV0aW9ucyAobW9kdWxlIGRpc3RyaWJ1dGlvbnMgdGhhdAoraW5jbHVkZSBvbmx5IHB1cmUgUHl0aG9uIG1vZHVsZXMpLiBJZiBhIG1vZHVsZSBkaXN0cmlidXRpb24gY29udGFpbnMgYW55CitleHRlbnNpb25zIChtb2R1bGVzIHdyaXR0ZW4gaW4gQy9DKyspLCB0aGVuIHRoZSBzZWNvbmQgZm9ybSwgd2l0aCB0d28gYGA8cGxhdD5gYAorZGlyZWN0b3JpZXMsIGlzIHVzZWQuIEluIHRoYXQgY2FzZSwgdGhlIDpmaWxlOmB0ZW1wLntwbGF0fWAgZGlyZWN0b3J5IGhvbGRzCit0ZW1wb3JhcnkgZmlsZXMgZ2VuZXJhdGVkIGR1cmluZyB0aGUgY29tcGlsZS9saW5rIHByb2Nlc3Mgd2hpY2ggYXJlIG5vdCBpbnRlbmRlZAordG8gYmUgaW5zdGFsbGVkLiBJbiBlaXRoZXIgY2FzZSwgdGhlIDpmaWxlOmBsaWJgIChvciA6ZmlsZTpgbGliLntwbGF0fWApIGRpcmVjdG9yeQorY29udGFpbnMgYWxsIFB5dGhvbiBtb2R1bGVzIChwdXJlIFB5dGhvbiBhbmQgZXh0ZW5zaW9ucykgdG8gYmUgaW5zdGFsbGVkLgorCitJbiB0aGUgZnV0dXJlLCBtb3JlIGRpcmVjdG9yaWVzIHdpbGwgYmUgYWRkZWQgdG8gaGFuZGxlIFB5dGhvbiBzY3JpcHRzLAorZG9jdW1lbnRhdGlvbiwgYmluYXJ5IGV4ZWN1dGFibGVzLCBhbmQgd2hhdGV2ZXIgZWxzZSBpcyByZXF1aXJlZCB0byBpbnN0YWxsCitQeXRob24gbW9kdWxlcyBhbmQgYXBwbGljYXRpb25zLgorCisKKy4uIF9wYWNrYWdpbmctaG93LWluc3RhbGwtd29ya3M6CisKK0hvdyBpbnN0YWxsYXRpb24gd29ya3MKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworQWZ0ZXIgdGhlIDpjb21tYW5kOmBidWlsZGAgY29tbWFuZCBpcyBydW4gKHdoZXRoZXIgZXhwbGljaXRseSBvciBieSB0aGUKKzpjb21tYW5kOmBpbnN0YWxsX2Rpc3RgIGNvbW1hbmQgb24geW91ciBiZWhhbGYpLCB0aGUgd29yayBvZiB0aGUgOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGAKK2NvbW1hbmQgaXMgcmVsYXRpdmVseSBzaW1wbGU6IGFsbCBpdCBoYXMgdG8gZG8gaXMgY29weSB0aGUgY29udGVudHMgb2YKKzpmaWxlOmBidWlsZC9saWJgIChvciA6ZmlsZTpgYnVpbGQvbGliLntwbGF0fWApIHRvIHRoZSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5CitvZiB5b3VyIGNob2ljZS4KKworSWYgeW91IGRvbid0IGNob29zZSBhbiBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IC0tLWkuZS4sIGlmIHlvdSBqdXN0IHJ1bgorYGBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3RgYFwgLS0tIHRoZW4gdGhlIDpjb21tYW5kOmBpbnN0YWxsX2Rpc3RgIGNvbW1hbmQKK2luc3RhbGxzIHRvIHRoZSBzdGFuZGFyZCBsb2NhdGlvbiBmb3IgdGhpcmQtcGFydHkgUHl0aG9uIG1vZHVsZXMuIFRoaXMgbG9jYXRpb24KK3ZhcmllcyBieSBwbGF0Zm9ybSBhbmQgZGVwZW5kaW5nIG9uIGhvdyB5b3UgYnVpbHQvaW5zdGFsbGVkIFB5dGhvbiBpdHNlbGYuIE9uCitVbml4IChhbmQgTWFjIE9TIFgsIHdoaWNoIGlzIGFsc28gVW5peC1iYXNlZCksIGl0IGFsc28gZGVwZW5kcyBvbiB3aGV0aGVyIHRoZQorbW9kdWxlIGRpc3RyaWJ1dGlvbiBiZWluZyBpbnN0YWxsZWQgaXMgcHVyZSBQeXRob24gb3IgY29udGFpbnMgZXh0ZW5zaW9ucworKCJub24tcHVyZSIpOgorCisrLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgUGxhdGZvcm0gICAgICAgIHwgU3RhbmRhcmQgaW5zdGFsbGF0aW9uIGxvY2F0aW9uICAgICAgICAgICAgICAgICAgICAgIHwgRGVmYXVsdCB2YWx1ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgfAorKz09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rCit8IFVuaXggKHB1cmUpICAgICB8IDpmaWxlOmB7cHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgICAgICB8IDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYCB8IFwoMSkgIHwKKystLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBVbml4IChub24tcHVyZSkgfCA6ZmlsZTpge2V4ZWMtcHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgfCA6ZmlsZTpgL3Vzci9sb2NhbC9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgfCBcKDEpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgV2luZG93cyAgICAgICAgIHwgOmZpbGU6YHtwcmVmaXh9XFxMaWJcXHNpdGUtcGFja2FnZXNgICAgICAgICAgICAgICAgIHwgOmZpbGU6YEM6XFxQeXRob257WFl9XFxMaWJcXHNpdGUtcGFja2FnZXNgICAgICAgIHwgXCgyKSAgfAorKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCisKK05vdGVzOgorCisoMSkKKyAgIE1vc3QgTGludXggZGlzdHJpYnV0aW9ucyBpbmNsdWRlIFB5dGhvbiBhcyBhIHN0YW5kYXJkIHBhcnQgb2YgdGhlIHN5c3RlbSwgc28KKyAgIDpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YCBhcmUgdXN1YWxseSBib3RoIDpmaWxlOmAvdXNyYCBvbgorICAgTGludXguIElmIHlvdSBidWlsZCBQeXRob24geW91cnNlbGYgb24gTGludXggKG9yIGFueSBVbml4LWxpa2Ugc3lzdGVtKSwgdGhlCisgICBkZWZhdWx0IDpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YCBhcmUgOmZpbGU6YC91c3IvbG9jYWxgLgorCisoMikKKyAgIFRoZSBkZWZhdWx0IGluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgb24gV2luZG93cyB3YXMgOmZpbGU6YEM6XFxQcm9ncmFtCisgICBGaWxlc1xcUHl0aG9uYCB1bmRlciBQeXRob24gMS42YTEsIDEuNS4yLCBhbmQgZWFybGllci4KKworOmZpbGU6YHtwcmVmaXh9YCBhbmQgOmZpbGU6YHtleGVjLXByZWZpeH1gIHN0YW5kIGZvciB0aGUgZGlyZWN0b3JpZXMgdGhhdCBQeXRob24KK2lzIGluc3RhbGxlZCB0bywgYW5kIHdoZXJlIGl0IGZpbmRzIGl0cyBsaWJyYXJpZXMgYXQgcnVuLXRpbWUuIFRoZXkgYXJlIGFsd2F5cwordGhlIHNhbWUgdW5kZXIgV2luZG93cywgYW5kIHZlcnkgb2Z0ZW4gdGhlIHNhbWUgdW5kZXIgVW5peCBhbmQgTWFjIE9TIFguIFlvdQorY2FuIGZpbmQgb3V0IHdoYXQgeW91ciBQeXRob24gaW5zdGFsbGF0aW9uIHVzZXMgZm9yIDpmaWxlOmB7cHJlZml4fWAgYW5kCis6ZmlsZTpge2V4ZWMtcHJlZml4fWAgYnkgcnVubmluZyBQeXRob24gaW4gaW50ZXJhY3RpdmUgbW9kZSBhbmQgdHlwaW5nIGEgZmV3CitzaW1wbGUgY29tbWFuZHMuCisKKy4uIFRPRE8gbGluayB0byBEb2MvdXNpbmcgaW5zdGVhZCBvZiBkdXBsaWNhdGluZworCitUbyBzdGFydCB0aGUgaW50ZXJhY3RpdmUgUHl0aG9uIGludGVycHJldGVyLCB5b3UgbmVlZCB0byBmb2xsb3cgYSBzbGlnaHRseQorZGlmZmVyZW50IHJlY2lwZSBmb3IgZWFjaCBwbGF0Zm9ybS4gVW5kZXIgVW5peCwganVzdCB0eXBlIDpjb21tYW5kOmBweXRob25gIGF0Cit0aGUgc2hlbGwgcHJvbXB0LiBVbmRlciBXaW5kb3dzIChhc3N1bWluZyB0aGUgUHl0aG9uIGV4ZWN1dGFibGUgaXMgb24geW91cgorOmVudnZhcjpgUEFUSGAsIHdoaWNoIGlzIHRoZSB1c3VhbCBjYXNlKSwgeW91IGNhbiBjaG9vc2UgOm1lbnVzZWxlY3Rpb246YFN0YXJ0IC0tPiBSdW5gLAordHlwZSBgYHB5dGhvbmBgIGFuZCBwcmVzcyBgYGVudGVyYGAuIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gc2ltcGx5IGV4ZWN1dGUKKzpjb21tYW5kOmBweXRob25gIGF0IGEgY29tbWFuZCBwcm9tcHQgKDptZW51c2VsZWN0aW9uOmBTdGFydCAtLT4gQWNjZXNzb3JpZXNgKQorb3IgaW4gUG93ZXJzaGVsbC4KKworT25jZSB0aGUgaW50ZXJwcmV0ZXIgaXMgc3RhcnRlZCwgeW91IHR5cGUgUHl0aG9uIGNvZGUgYXQgdGhlIHByb21wdC4gRm9yCitleGFtcGxlLCBvbiBteSBMaW51eCBzeXN0ZW0sIEkgdHlwZSB0aGUgdGhyZWUgUHl0aG9uIHN0YXRlbWVudHMgc2hvd24gYmVsb3csCithbmQgZ2V0IHRoZSBvdXRwdXQgYXMgc2hvd24sIHRvIGZpbmQgb3V0IG15IDpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YDo6CisKKyAgIFB5dGhvbiAzLjMgKHIzMjo4ODQ0NSwgQXByICAyIDIwMTEsIDEwOjQzOjU0KQorICAgVHlwZSAiaGVscCIsICJjb3B5cmlnaHQiLCAiY3JlZGl0cyIgb3IgImxpY2Vuc2UiIGZvciBtb3JlIGluZm9ybWF0aW9uLgorICAgPj4+IGltcG9ydCBzeXMKKyAgID4+PiBzeXMucHJlZml4CisgICAnL3VzcicKKyAgID4+PiBzeXMuZXhlY19wcmVmaXgKKyAgICcvdXNyJworCitBIGZldyBvdGhlciBwbGFjZWhvbGRlcnMgYXJlIHVzZWQgaW4gdGhpcyBkb2N1bWVudDogOmZpbGU6YHtYLll9YCBzdGFuZHMgZm9yIHRoZQordmVyc2lvbiBvZiBQeXRob24sIGZvciBleGFtcGxlIGBgMy4yYGA7IDpmaWxlOmB7YWJpZmxhZ3N9YCB3aWxsIGJlIHJlcGxhY2VkIGJ5Cit0aGUgdmFsdWUgb2YgOmRhdGE6YHN5cy5hYmlmbGFnc2Agb3IgdGhlIGVtcHR5IHN0cmluZyBmb3IgcGxhdGZvcm1zIHdoaWNoIGRvbid0CitkZWZpbmUgQUJJIGZsYWdzOyA6ZmlsZTpge2Rpc3RuYW1lfWAgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgbmFtZSBvZiB0aGUgbW9kdWxlCitkaXN0cmlidXRpb24gYmVpbmcgaW5zdGFsbGVkLiAgRG90cyBhbmQgY2FwaXRhbGl6YXRpb24gYXJlIGltcG9ydGFudCBpbiB0aGUKK3BhdGhzOyBmb3IgZXhhbXBsZSwgYSB2YWx1ZSB0aGF0IHVzZXMgYGBweXRob24zLjJgYCBvbiBVTklYIHdpbGwgdHlwaWNhbGx5IHVzZQorYGBQeXRob24zMmBgIG9uIFdpbmRvd3MuCisKK0lmIHlvdSBkb24ndCB3YW50IHRvIGluc3RhbGwgbW9kdWxlcyB0byB0aGUgc3RhbmRhcmQgbG9jYXRpb24sIG9yIGlmIHlvdSBkb24ndAoraGF2ZSBwZXJtaXNzaW9uIHRvIHdyaXRlIHRoZXJlLCB0aGVuIHlvdSBuZWVkIHRvIHJlYWQgYWJvdXQgYWx0ZXJuYXRlCitpbnN0YWxsYXRpb25zIGluIHNlY3Rpb24gOnJlZjpgcGFja2FnaW5nLWFsdC1pbnN0YWxsYC4gSWYgeW91IHdhbnQgdG8gY3VzdG9taXplIHlvdXIKK2luc3RhbGxhdGlvbiBkaXJlY3RvcmllcyBtb3JlIGhlYXZpbHksIHNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1jdXN0b20taW5zdGFsbGAuCisKKworLi4gX3BhY2thZ2luZy1hbHQtaW5zdGFsbDoKKworQWx0ZXJuYXRlIGluc3RhbGxhdGlvbgorPT09PT09PT09PT09PT09PT09PT09PQorCitPZnRlbiwgaXQgaXMgbmVjZXNzYXJ5IG9yIGRlc2lyYWJsZSB0byBpbnN0YWxsIG1vZHVsZXMgdG8gYSBsb2NhdGlvbiBvdGhlciB0aGFuCit0aGUgc3RhbmRhcmQgbG9jYXRpb24gZm9yIHRoaXJkLXBhcnR5IFB5dGhvbiBtb2R1bGVzLiBGb3IgZXhhbXBsZSwgb24gYSBVbml4CitzeXN0ZW0geW91IG1pZ2h0IG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gd3JpdGUgdG8gdGhlIHN0YW5kYXJkIHRoaXJkLXBhcnR5IG1vZHVsZQorZGlyZWN0b3J5LiBPciB5b3UgbWlnaHQgd2lzaCB0byB0cnkgb3V0IGEgbW9kdWxlIGJlZm9yZSBtYWtpbmcgaXQgYSBzdGFuZGFyZAorcGFydCBvZiB5b3VyIGxvY2FsIFB5dGhvbiBpbnN0YWxsYXRpb24uIFRoaXMgaXMgZXNwZWNpYWxseSB0cnVlIHdoZW4gdXBncmFkaW5nCithIGRpc3RyaWJ1dGlvbiBhbHJlYWR5IHByZXNlbnQ6IHlvdSB3YW50IHRvIG1ha2Ugc3VyZSB5b3VyIGV4aXN0aW5nIGJhc2Ugb2YKK3NjcmlwdHMgc3RpbGwgd29ya3Mgd2l0aCB0aGUgbmV3IHZlcnNpb24gYmVmb3JlIGFjdHVhbGx5IHVwZ3JhZGluZy4KKworVGhlIFBhY2thZ2luZyA6Y29tbWFuZDpgaW5zdGFsbF9kaXN0YCBjb21tYW5kIGlzIGRlc2lnbmVkIHRvIG1ha2UgaW5zdGFsbGluZyBtb2R1bGUKK2Rpc3RyaWJ1dGlvbnMgdG8gYW4gYWx0ZXJuYXRlIGxvY2F0aW9uIHNpbXBsZSBhbmQgcGFpbmxlc3MuIFRoZSBiYXNpYyBpZGVhIGlzCit0aGF0IHlvdSBzdXBwbHkgYSBiYXNlIGRpcmVjdG9yeSBmb3IgdGhlIGluc3RhbGxhdGlvbiwgYW5kIHRoZQorOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGAgY29tbWFuZCBwaWNrcyBhIHNldCBvZiBkaXJlY3RvcmllcyAoY2FsbGVkIGFuICppbnN0YWxsYXRpb24KK3NjaGVtZSopIHVuZGVyIHRoaXMgYmFzZSBkaXJlY3RvcnkgaW4gd2hpY2ggdG8gaW5zdGFsbCBmaWxlcy4gVGhlIGRldGFpbHMKK2RpZmZlciBhY3Jvc3MgcGxhdGZvcm1zLCBzbyByZWFkIHdoaWNoZXZlciBvZiB0aGUgZm9sbG93aW5nIHNlY3Rpb25zIGFwcGxpZXMgdG8KK3lvdS4KKworTm90ZSB0aGF0IHRoZSB2YXJpb3VzIGFsdGVybmF0ZSBpbnN0YWxsYXRpb24gc2NoZW1lcyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlOiB5b3UKK2NhbiBwYXNzIGBgLS11c2VyYGAsIG9yIGBgLS1ob21lYGAsIG9yIGBgLS1wcmVmaXhgYCBhbmQgYGAtLWV4ZWMtcHJlZml4YGAsIG9yCitgYC0taW5zdGFsbC1iYXNlYGAgYW5kIGBgLS1pbnN0YWxsLXBsYXRiYXNlYGAsIGJ1dCB5b3UgY2FuJ3QgbWl4IGZyb20gdGhlc2UKK2dyb3Vwcy4KKworCisuLiBfcGFja2FnaW5nLWFsdC1pbnN0YWxsLXVzZXI6CisKK0FsdGVybmF0ZSBpbnN0YWxsYXRpb246IHRoZSB1c2VyIHNjaGVtZQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoaXMgc2NoZW1lIGlzIGRlc2lnbmVkIHRvIGJlIHRoZSBtb3N0IGNvbnZlbmllbnQgc29sdXRpb24gZm9yIHVzZXJzIHRoYXQgZG9uJ3QKK2hhdmUgd3JpdGUgcGVybWlzc2lvbiB0byB0aGUgZ2xvYmFsIHNpdGUtcGFja2FnZXMgZGlyZWN0b3J5IG9yIGRvbid0IHdhbnQgdG8KK2luc3RhbGwgaW50byBpdC4gIEl0IGlzIGVuYWJsZWQgd2l0aCBhIHNpbXBsZSBvcHRpb246OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS11c2VyCisKK0ZpbGVzIHdpbGwgYmUgaW5zdGFsbGVkIGludG8gc3ViZGlyZWN0b3JpZXMgb2YgOmRhdGE6YHNpdGUuVVNFUl9CQVNFYCAod3JpdHRlbgorYXMgOmZpbGU6YHt1c2VyYmFzZX1gIGhlcmVhZnRlcikuICBUaGlzIHNjaGVtZSBpbnN0YWxscyBwdXJlIFB5dGhvbiBtb2R1bGVzIGFuZAorZXh0ZW5zaW9uIG1vZHVsZXMgaW4gdGhlIHNhbWUgbG9jYXRpb24gKGFsc28ga25vd24gYXMgOmRhdGE6YHNpdGUuVVNFUl9TSVRFYCkuCitIZXJlIGFyZSB0aGUgdmFsdWVzIGZvciBVTklYLCBpbmNsdWRpbmcgbm9uLWZyYW1ld29yayBidWlsZHMgb24gTWFjIE9TIFg6CisKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYAorc2NyaXB0cyAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2JpbmAKK2RhdGEgICAgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfWAKK0MgaGVhZGVycyAgICAgICA6ZmlsZTpge3VzZXJiYXNlfS9pbmNsdWRlL3B5dGhvbntYLll9YAorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0ZyYW1ld29yayBidWlsZHMgb24gTWFjIE9TIFggdXNlIHRoZXNlIHBhdGhzOgorCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1R5cGUgb2YgZmlsZSAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Cis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK21vZHVsZXMgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfS9saWIvcHl0aG9uL3NpdGUtcGFja2FnZXNgCitzY3JpcHRzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX0vYmluYAorZGF0YSAgICAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9YAorQyBoZWFkZXJzICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2luY2x1ZGUvcHl0aG9uYAorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0FuZCBoZXJlIGFyZSB0aGUgdmFsdWVzIHVzZWQgb24gV2luZG93czoKKworPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitUeXBlIG9mIGZpbGUgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cittb2R1bGVzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1cXFB5dGhvbntYWX1cXHNpdGUtcGFja2FnZXNgCitzY3JpcHRzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1cXFNjcmlwdHNgCitkYXRhICAgICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1gCitDIGhlYWRlcnMgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1cXFB5dGhvbntYWX1cXEluY2x1ZGVgCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlIGFkdmFudGFnZSBvZiB1c2luZyB0aGlzIHNjaGVtZSBjb21wYXJlZCB0byB0aGUgb3RoZXIgb25lcyBkZXNjcmliZWQgYmVsb3cgaXMKK3RoYXQgdGhlIHVzZXIgc2l0ZS1wYWNrYWdlcyBkaXJlY3RvcnkgaXMgdW5kZXIgbm9ybWFsIGNvbmRpdGlvbnMgYWx3YXlzIGluY2x1ZGVkCitpbiA6ZGF0YTpgc3lzLnBhdGhgIChzZWUgOm1vZDpgc2l0ZWAgZm9yIG1vcmUgaW5mb3JtYXRpb24pLCB3aGljaCBtZWFucyB0aGF0Cit0aGVyZSBpcyBubyBhZGRpdGlvbmFsIHN0ZXAgdG8gcGVyZm9ybSBhZnRlciBydW5uaW5nIGBgcHlzZXR1cGBgIHRvIGZpbmFsaXplIHRoZQoraW5zdGFsbGF0aW9uLgorCitUaGUgOmNvbW1hbmQ6YGJ1aWxkX2V4dGAgY29tbWFuZCBhbHNvIGhhcyBhIGBgLS11c2VyYGAgb3B0aW9uIHRvIGFkZAorOmZpbGU6YHt1c2VyYmFzZX0vaW5jbHVkZWAgdG8gdGhlIGNvbXBpbGVyIHNlYXJjaCBwYXRoIGZvciBoZWFkZXIgZmlsZXMgYW5kCis6ZmlsZTpge3VzZXJiYXNlfS9saWJgIHRvIHRoZSBjb21waWxlciBzZWFyY2ggcGF0aCBmb3IgbGlicmFyaWVzIGFzIHdlbGwgYXMgdG8KK3RoZSBydW50aW1lIHNlYXJjaCBwYXRoIGZvciBzaGFyZWQgQyBsaWJyYXJpZXMgKHJwYXRoKS4KKworCisuLiBfcGFja2FnaW5nLWFsdC1pbnN0YWxsLWhvbWU6CisKK0FsdGVybmF0ZSBpbnN0YWxsYXRpb246IHRoZSBob21lIHNjaGVtZQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSBpZGVhIGJlaGluZCB0aGUgImhvbWUgc2NoZW1lIiBpcyB0aGF0IHlvdSBidWlsZCBhbmQgbWFpbnRhaW4gYSBwZXJzb25hbAorc3Rhc2ggb2YgUHl0aG9uIG1vZHVsZXMuIFRoaXMgc2NoZW1lJ3MgbmFtZSBpcyBkZXJpdmVkIGZyb20gdGhlIGNvbmNlcHQgb2YgYQorImhvbWUiIGRpcmVjdG9yeSBvbiBVbml4LCBzaW5jZSBpdCdzIG5vdCB1bnVzdWFsIGZvciBhIFVuaXggdXNlciB0byBtYWtlIHRoZWlyCitob21lIGRpcmVjdG9yeSBoYXZlIGEgbGF5b3V0IHNpbWlsYXIgdG8gOmZpbGU6YC91c3IvYCBvciA6ZmlsZTpgL3Vzci9sb2NhbC9gLgorSW4gc3BpdGUgb2YgaXRzIG5hbWUncyBvcmlnaW4sIHRoaXMgc2NoZW1lIGNhbiBiZSB1c2VkIGJ5IGFueW9uZSwgcmVnYXJkbGVzcworb2YgdGhlIG9wZXJhdGluZyBzeXN0ZW0uCisKK0luc3RhbGxpbmcgYSBuZXcgbW9kdWxlIGRpc3RyaWJ1dGlvbiBpbiB0aGlzIHdheSBpcyBhcyBzaW1wbGUgYXMgOjoKKworICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0taG9tZSA8ZGlyPgorCit3aGVyZSB5b3UgY2FuIHN1cHBseSBhbnkgZGlyZWN0b3J5IHlvdSBsaWtlIGZvciB0aGUgOm9wdGlvbjpgLS1ob21lYCBvcHRpb24uIE9uCitVbml4LCBsYXp5IHR5cGlzdHMgY2FuIGp1c3QgdHlwZSBhIHRpbGRlIChgYH5gYCk7IHRoZSA6Y29tbWFuZDpgaW5zdGFsbF9kaXN0YCBjb21tYW5kCit3aWxsIGV4cGFuZCB0aGlzIHRvIHlvdXIgaG9tZSBkaXJlY3Rvcnk6OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS1ob21lIH4KKworVG8gbWFrZSBQeXRob24gZmluZCB0aGUgZGlzdHJpYnV0aW9ucyBpbnN0YWxsZWQgd2l0aCB0aGlzIHNjaGVtZSwgeW91IG1heSBoYXZlCit0byA6cmVmOmBtb2RpZnkgUHl0aG9uJ3Mgc2VhcmNoIHBhdGggPGluc3Qtc2VhcmNoLXBhdGg+YCBvciBlZGl0Cis6bW9kOmBzaXRlY3VzdG9taXplYCAoc2VlIDptb2Q6YHNpdGVgKSB0byBjYWxsIDpmdW5jOmBzaXRlLmFkZHNpdGVkaXJgIG9yIGVkaXQKKzpkYXRhOmBzeXMucGF0aGAuCisKK1RoZSA6b3B0aW9uOmAtLWhvbWVgIG9wdGlvbiBkZWZpbmVzIHRoZSBiYXNlIGRpcmVjdG9yeSBmb3IgdGhlIGluc3RhbGxhdGlvbi4KK1VuZGVyIGl0LCBmaWxlcyBhcmUgaW5zdGFsbGVkIHRvIHRoZSBmb2xsb3dpbmcgZGlyZWN0b3JpZXM6CisKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7aG9tZX0vbGliL3B5dGhvbmAKK3NjcmlwdHMgICAgICAgICA6ZmlsZTpge2hvbWV9L2JpbmAKK2RhdGEgICAgICAgICAgICA6ZmlsZTpge2hvbWV9YAorQyBoZWFkZXJzICAgICAgIDpmaWxlOmB7aG9tZX0vaW5jbHVkZS9weXRob25gCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworKE1lbnRhbGx5IHJlcGxhY2Ugc2xhc2hlcyB3aXRoIGJhY2tzbGFzaGVzIGlmIHlvdSdyZSBvbiBXaW5kb3dzLikKKworCisuLiBfcGFja2FnaW5nLWFsdC1pbnN0YWxsLXByZWZpeC11bml4OgorCitBbHRlcm5hdGUgaW5zdGFsbGF0aW9uOiBVbml4ICh0aGUgcHJlZml4IHNjaGVtZSkKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgInByZWZpeCBzY2hlbWUiIGlzIHVzZWZ1bCB3aGVuIHlvdSB3aXNoIHRvIHVzZSBvbmUgUHl0aG9uIGluc3RhbGxhdGlvbiB0bworcnVuIHRoZSBidWlsZCBjb21tYW5kLCBidXQgaW5zdGFsbCBtb2R1bGVzIGludG8gdGhlIHRoaXJkLXBhcnR5IG1vZHVsZSBkaXJlY3RvcnkKK29mIGEgZGlmZmVyZW50IFB5dGhvbiBpbnN0YWxsYXRpb24gKG9yIHNvbWV0aGluZyB0aGF0IGxvb2tzIGxpa2UgYSBkaWZmZXJlbnQKK1B5dGhvbiBpbnN0YWxsYXRpb24pLiBJZiB0aGlzIHNvdW5kcyBhIHRyaWZsZSB1bnVzdWFsLCBpdCBpcyAtLS10aGF0J3Mgd2h5IHRoZQordXNlciBhbmQgaG9tZSBzY2hlbWVzIGNvbWUgYmVmb3JlLiBIb3dldmVyLCB0aGVyZSBhcmUgYXQgbGVhc3QgdHdvIGtub3duIGNhc2VzCit3aGVyZSB0aGUgcHJlZml4IHNjaGVtZSB3aWxsIGJlIHVzZWZ1bC4KKworRmlyc3QsIGNvbnNpZGVyIHRoYXQgbWFueSBMaW51eCBkaXN0cmlidXRpb25zIHB1dCBQeXRob24gaW4gOmZpbGU6YC91c3JgLCByYXRoZXIKK3RoYW4gdGhlIG1vcmUgdHJhZGl0aW9uYWwgOmZpbGU6YC91c3IvbG9jYWxgLiBUaGlzIGlzIGVudGlyZWx5IGFwcHJvcHJpYXRlLAorc2luY2UgaW4gdGhvc2UgY2FzZXMgUHl0aG9uIGlzIHBhcnQgb2YgInRoZSBzeXN0ZW0iIHJhdGhlciB0aGFuIGEgbG9jYWwgYWRkLW9uLgorSG93ZXZlciwgaWYgeW91IGFyZSBpbnN0YWxsaW5nIFB5dGhvbiBtb2R1bGVzIGZyb20gc291cmNlLCB5b3UgcHJvYmFibHkgd2FudAordGhlbSB0byBnbyBpbiA6ZmlsZTpgL3Vzci9sb2NhbC9saWIvcHl0aG9uMi57WH1gIHJhdGhlciB0aGFuCis6ZmlsZTpgL3Vzci9saWIvcHl0aG9uMi57WH1gLiBUaGlzIGNhbiBiZSBkb25lIHdpdGggOjoKKworICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0tcHJlZml4IC91c3IvbG9jYWwKKworQW5vdGhlciBwb3NzaWJpbGl0eSBpcyBhIG5ldHdvcmsgZmlsZXN5c3RlbSB3aGVyZSB0aGUgbmFtZSB1c2VkIHRvIHdyaXRlIHRvIGEKK3JlbW90ZSBkaXJlY3RvcnkgaXMgZGlmZmVyZW50IGZyb20gdGhlIG5hbWUgdXNlZCB0byByZWFkIGl0OiBmb3IgZXhhbXBsZSwgdGhlCitQeXRob24gaW50ZXJwcmV0ZXIgYWNjZXNzZWQgYXMgOmZpbGU6YC91c3IvbG9jYWwvYmluL3B5dGhvbmAgbWlnaHQgc2VhcmNoIGZvcgorbW9kdWxlcyBpbiA6ZmlsZTpgL3Vzci9sb2NhbC9saWIvcHl0aG9uMi57WH1gLCBidXQgdGhvc2UgbW9kdWxlcyB3b3VsZCBoYXZlIHRvCitiZSBpbnN0YWxsZWQgdG8sIHNheSwgOmZpbGU6YC9tbnQve0BzZXJ2ZXJ9L2V4cG9ydC9saWIvcHl0aG9uMi57WH1gLiBUaGlzIGNvdWxkCitiZSBkb25lIHdpdGggOjoKKworICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0tcHJlZml4PS9tbnQvQHNlcnZlci9leHBvcnQKKworSW4gZWl0aGVyIGNhc2UsIHRoZSA6b3B0aW9uOmAtLXByZWZpeGAgb3B0aW9uIGRlZmluZXMgdGhlIGluc3RhbGxhdGlvbiBiYXNlLCBhbmQKK3RoZSA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBvcHRpb24gZGVmaW5lcyB0aGUgcGxhdGZvcm0tc3BlY2lmaWMgaW5zdGFsbGF0aW9uCitiYXNlLCB3aGljaCBpcyB1c2VkIGZvciBwbGF0Zm9ybS1zcGVjaWZpYyBmaWxlcy4gKEN1cnJlbnRseSwgdGhpcyBqdXN0IG1lYW5zCitub24tcHVyZSBtb2R1bGUgZGlzdHJpYnV0aW9ucywgYnV0IGNvdWxkIGJlIGV4cGFuZGVkIHRvIEMgbGlicmFyaWVzLCBiaW5hcnkKK2V4ZWN1dGFibGVzLCBldGMuKSBJZiA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBpcyBub3Qgc3VwcGxpZWQsIGl0IGRlZmF1bHRzIHRvCis6b3B0aW9uOmAtLXByZWZpeGAuIEZpbGVzIGFyZSBpbnN0YWxsZWQgYXMgZm9sbG93czoKKworPT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQorPT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorUHl0aG9uIG1vZHVsZXMgICAgOmZpbGU6YHtwcmVmaXh9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYAorZXh0ZW5zaW9uIG1vZHVsZXMgOmZpbGU6YHtleGVjLXByZWZpeH0vbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgCitzY3JpcHRzICAgICAgICAgICA6ZmlsZTpge3ByZWZpeH0vYmluYAorZGF0YSAgICAgICAgICAgICAgOmZpbGU6YHtwcmVmaXh9YAorQyBoZWFkZXJzICAgICAgICAgOmZpbGU6YHtwcmVmaXh9L2luY2x1ZGUvcHl0aG9ue1guWX17YWJpZmxhZ3N9YAorPT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBYWFggbWlzc2VzIGFuIGVudHJ5IGZvciBwbGF0aW5jbHVkZQorCitUaGVyZSBpcyBubyByZXF1aXJlbWVudCB0aGF0IDpvcHRpb246YC0tcHJlZml4YCBvciA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YAorYWN0dWFsbHkgcG9pbnQgdG8gYW4gYWx0ZXJuYXRlIFB5dGhvbiBpbnN0YWxsYXRpb247IGlmIHRoZSBkaXJlY3RvcmllcyBsaXN0ZWQKK2Fib3ZlIGRvIG5vdCBhbHJlYWR5IGV4aXN0LCB0aGV5IGFyZSBjcmVhdGVkIGF0IGluc3RhbGxhdGlvbiB0aW1lLgorCitJbmNpZGVudGFsbHksIHRoZSByZWFsIHJlYXNvbiB0aGUgcHJlZml4IHNjaGVtZSBpcyBpbXBvcnRhbnQgaXMgc2ltcGx5IHRoYXQgYQorc3RhbmRhcmQgVW5peCBpbnN0YWxsYXRpb24gdXNlcyB0aGUgcHJlZml4IHNjaGVtZSwgYnV0IHdpdGggOm9wdGlvbjpgLS1wcmVmaXhgCithbmQgOm9wdGlvbjpgLS1leGVjLXByZWZpeGAgc3VwcGxpZWQgYnkgUHl0aG9uIGl0c2VsZiBhcyBgYHN5cy5wcmVmaXhgYCBhbmQKK2Bgc3lzLmV4ZWNfcHJlZml4YGAuIFRodXMsIHlvdSBtaWdodCB0aGluayB5b3UnbGwgbmV2ZXIgdXNlIHRoZSBwcmVmaXggc2NoZW1lLAorYnV0IGV2ZXJ5IHRpbWUgeW91IHJ1biBgYHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdGBgIHdpdGhvdXQgYW55IG90aGVyCitvcHRpb25zLCB5b3UncmUgdXNpbmcgaXQuCisKK05vdGUgdGhhdCBpbnN0YWxsaW5nIGV4dGVuc2lvbnMgdG8gYW4gYWx0ZXJuYXRlIFB5dGhvbiBpbnN0YWxsYXRpb24gZG9lc24ndCBoYXZlCithbnl0aGluZyB0byBkbyB3aXRoIGhvdyB0aG9zZSBleHRlbnNpb25zIGFyZSBidWlsdDogaW4gcGFydGljdWxhciwgZXh0ZW5zaW9ucword2lsbCBiZSBjb21waWxlZCB1c2luZyB0aGUgUHl0aG9uIGhlYWRlciBmaWxlcyAoOmZpbGU6YFB5dGhvbi5oYCBhbmQgZnJpZW5kcykKK2luc3RhbGxlZCB3aXRoIHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgdXNlZCB0byBydW4gdGhlIGJ1aWxkIGNvbW1hbmQuIEl0IGlzCit0aGVyZWZvcmUgeW91ciByZXNwb25zaWJpbGl0eSB0byBlbnN1cmUgY29tcGF0aWJpbGl0eSBiZXR3ZWVuIHRoZSBpbnRlcnByZXRlcgoraW50ZW5kZWQgdG8gcnVuIGV4dGVuc2lvbnMgaW5zdGFsbGVkIGluIHRoaXMgd2F5IGFuZCB0aGUgaW50ZXJwcmV0ZXIgdXNlZCB0bworYnVpbGQgdGhlc2Ugc2FtZSBleHRlbnNpb25zLiBUbyBhdm9pZCBwcm9ibGVtcywgaXQgaXMgYmVzdCB0byBtYWtlIHN1cmUgdGhhdAordGhlIHR3byBpbnRlcnByZXRlcnMgYXJlIHRoZSBzYW1lIHZlcnNpb24gb2YgUHl0aG9uIChwb3NzaWJseSBkaWZmZXJlbnQgYnVpbGRzLAorb3IgcG9zc2libHkgY29waWVzIG9mIHRoZSBzYW1lIGJ1aWxkKS4gKE9mIGNvdXJzZSwgaWYgeW91ciA6b3B0aW9uOmAtLXByZWZpeGAKK2FuZCA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBkb24ndCBldmVuIHBvaW50IHRvIGFuIGFsdGVybmF0ZSBQeXRob24gaW5zdGFsbGF0aW9uLAordGhpcyBpcyBpbW1hdGVyaWFsLikKKworCisuLiBfcGFja2FnaW5nLWFsdC1pbnN0YWxsLXByZWZpeC13aW5kb3dzOgorCitBbHRlcm5hdGUgaW5zdGFsbGF0aW9uOiBXaW5kb3dzICh0aGUgcHJlZml4IHNjaGVtZSkKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitXaW5kb3dzIGhhcyBhIGRpZmZlcmVudCBhbmQgdmFndWVyIG5vdGlvbiBvZiBob21lIGRpcmVjdG9yaWVzIHRoYW4gVW5peCwgYW5kCitzaW5jZSBpdHMgc3RhbmRhcmQgUHl0aG9uIGluc3RhbGxhdGlvbiBpcyBzaW1wbGVyLCB0aGUgOm9wdGlvbjpgLS1wcmVmaXhgIG9wdGlvbgoraGFzIHRyYWRpdGlvbmFsbHkgYmVlbiB1c2VkIHRvIGluc3RhbGwgYWRkaXRpb25hbCBwYWNrYWdlcyB0byBhcmJpdHJhcnkKK2xvY2F0aW9ucy4gOjoKKworICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0tcHJlZml4ICJcVGVtcFxQeXRob24iCisKK3RvIGluc3RhbGwgbW9kdWxlcyB0byB0aGUgOmZpbGU6YFxcVGVtcFxcUHl0aG9uYCBkaXJlY3Rvcnkgb24gdGhlIGN1cnJlbnQgZHJpdmUuCisKK1RoZSBpbnN0YWxsYXRpb24gYmFzZSBpcyBkZWZpbmVkIGJ5IHRoZSA6b3B0aW9uOmAtLXByZWZpeGAgb3B0aW9uOyB0aGUKKzpvcHRpb246YC0tZXhlYy1wcmVmaXhgIG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkIHVuZGVyIFdpbmRvd3MsIHdoaWNoIG1lYW5zIHRoYXQKK3B1cmUgUHl0aG9uIG1vZHVsZXMgYW5kIGV4dGVuc2lvbiBtb2R1bGVzIGFyZSBpbnN0YWxsZWQgaW50byB0aGUgc2FtZSBsb2NhdGlvbi4KK0ZpbGVzIGFyZSBpbnN0YWxsZWQgYXMgZm9sbG93czoKKworPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1R5cGUgb2YgZmlsZSAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Cis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7cHJlZml4fVxcTGliXFxzaXRlLXBhY2thZ2VzYAorc2NyaXB0cyAgICAgICAgIDpmaWxlOmB7cHJlZml4fVxcU2NyaXB0c2AKK2RhdGEgICAgICAgICAgICA6ZmlsZTpge3ByZWZpeH1gCitDIGhlYWRlcnMgICAgICAgOmZpbGU6YHtwcmVmaXh9XFxJbmNsdWRlYAorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworCisuLiBfcGFja2FnaW5nLWN1c3RvbS1pbnN0YWxsOgorCitDdXN0b20gaW5zdGFsbGF0aW9uCis9PT09PT09PT09PT09PT09PT09CisKK1NvbWV0aW1lcywgdGhlIGFsdGVybmF0ZSBpbnN0YWxsYXRpb24gc2NoZW1lcyBkZXNjcmliZWQgaW4gc2VjdGlvbgorOnJlZjpgcGFja2FnaW5nLWFsdC1pbnN0YWxsYCBqdXN0IGRvbid0IGRvIHdoYXQgeW91IHdhbnQuIFlvdSBtaWdodCB3YW50IHRvIHR3ZWFrCitqdXN0IG9uZSBvciB0d28gZGlyZWN0b3JpZXMgd2hpbGUga2VlcGluZyBldmVyeXRoaW5nIHVuZGVyIHRoZSBzYW1lIGJhc2UKK2RpcmVjdG9yeSwgb3IgeW91IG1pZ2h0IHdhbnQgdG8gY29tcGxldGVseSByZWRlZmluZSB0aGUgaW5zdGFsbGF0aW9uIHNjaGVtZS4KK0luIGVpdGhlciBjYXNlLCB5b3UncmUgY3JlYXRpbmcgYSAqY3VzdG9tIGluc3RhbGxhdGlvbiBzY2hlbWUqLgorCitUbyBjcmVhdGUgYSBjdXN0b20gaW5zdGFsbGF0aW9uIHNjaGVtZSwgeW91IHN0YXJ0IHdpdGggb25lIG9mIHRoZSBhbHRlcm5hdGUKK3NjaGVtZXMgYW5kIG92ZXJyaWRlIHNvbWUgb2YgdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcmllcyB1c2VkIGZvciB0aGUgdmFyaW91cwordHlwZXMgb2YgZmlsZXMsIHVzaW5nIHRoZXNlIG9wdGlvbnM6CisKKz09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT0KK1R5cGUgb2YgZmlsZSAgICAgICAgICAgT3ZlcnJpZGUgb3B0aW9uCis9PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09CitQeXRob24gbW9kdWxlcyAgICAgICAgIGBgLS1pbnN0YWxsLXB1cmVsaWJgYAorZXh0ZW5zaW9uIG1vZHVsZXMgICAgICBgYC0taW5zdGFsbC1wbGF0bGliYGAKK2FsbCBtb2R1bGVzICAgICAgICAgICAgYGAtLWluc3RhbGwtbGliYGAKK3NjcmlwdHMgICAgICAgICAgICAgICAgYGAtLWluc3RhbGwtc2NyaXB0c2BgCitkYXRhICAgICAgICAgICAgICAgICAgIGBgLS1pbnN0YWxsLWRhdGFgYAorQyBoZWFkZXJzICAgICAgICAgICAgICBgYC0taW5zdGFsbC1oZWFkZXJzYGAKKz09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlc2Ugb3ZlcnJpZGUgb3B0aW9ucyBjYW4gYmUgcmVsYXRpdmUsIGFic29sdXRlLAorb3IgZXhwbGljaXRseSBkZWZpbmVkIGluIHRlcm1zIG9mIG9uZSBvZiB0aGUgaW5zdGFsbGF0aW9uIGJhc2UgZGlyZWN0b3JpZXMuCisoVGhlcmUgYXJlIHR3byBpbnN0YWxsYXRpb24gYmFzZSBkaXJlY3RvcmllcywgYW5kIHRoZXkgYXJlIG5vcm1hbGx5IHRoZSBzYW1lCistLS10aGV5IG9ubHkgZGlmZmVyIHdoZW4geW91IHVzZSB0aGUgVW5peCAicHJlZml4IHNjaGVtZSIgYW5kIHN1cHBseSBkaWZmZXJlbnQKK2BgLS1wcmVmaXhgYCBhbmQgYGAtLWV4ZWMtcHJlZml4YGAgb3B0aW9uczsgdXNpbmcgYGAtLWluc3RhbGwtbGliYGAgd2lsbAorb3ZlcnJpZGUgdmFsdWVzIGNvbXB1dGVkIG9yIGdpdmVuIGZvciBgYC0taW5zdGFsbC1wdXJlbGliYGAgYW5kCitgYC0taW5zdGFsbC1wbGF0bGliYGAsIGFuZCBpcyByZWNvbW1lbmRlZCBmb3Igc2NoZW1lcyB0aGF0IGRvbid0IG1ha2UgYQorZGlmZmVyZW5jZSBiZXR3ZWVuIFB5dGhvbiBhbmQgZXh0ZW5zaW9uIG1vZHVsZXMuKQorCitGb3IgZXhhbXBsZSwgc2F5IHlvdSdyZSBpbnN0YWxsaW5nIGEgbW9kdWxlIGRpc3RyaWJ1dGlvbiB0byB5b3VyIGhvbWUgZGlyZWN0b3J5Cit1bmRlciBVbml4LCBidXQgeW91IHdhbnQgc2NyaXB0cyB0byBnbyBpbiA6ZmlsZTpgfi9zY3JpcHRzYCByYXRoZXIgdGhhbgorOmZpbGU6YH4vYmluYC4gQXMgeW91IG1pZ2h0IGV4cGVjdCwgeW91IGNhbiBvdmVycmlkZSB0aGlzIGRpcmVjdG9yeSB3aXRoIHRoZQorOm9wdGlvbjpgLS1pbnN0YWxsLXNjcmlwdHNgIG9wdGlvbiBhbmQsIGluIHRoaXMgY2FzZSwgaXQgbWFrZXMgbW9zdCBzZW5zZSB0byBzdXBwbHkKK2EgcmVsYXRpdmUgcGF0aCwgd2hpY2ggd2lsbCBiZSBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgaW5zdGFsbGF0aW9uIGJhc2UKK2RpcmVjdG9yeSAoaW4gb3VyIGV4YW1wbGUsIHlvdXIgaG9tZSBkaXJlY3RvcnkpOjoKKworICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0taG9tZSB+IC0taW5zdGFsbC1zY3JpcHRzIHNjcmlwdHMKKworQW5vdGhlciBVbml4IGV4YW1wbGU6IHN1cHBvc2UgeW91ciBQeXRob24gaW5zdGFsbGF0aW9uIHdhcyBidWlsdCBhbmQgaW5zdGFsbGVkCit3aXRoIGEgcHJlZml4IG9mIDpmaWxlOmAvdXNyL2xvY2FsL3B5dGhvbmAuIFRodXMsIGluIGEgc3RhbmRhcmQgaW5zdGFsbGF0aW9uLAorc2NyaXB0cyB3aWxsIHdpbmQgdXAgaW4gOmZpbGU6YC91c3IvbG9jYWwvcHl0aG9uL2JpbmAuIElmIHlvdSB3YW50IHRoZW0gaW4KKzpmaWxlOmAvdXNyL2xvY2FsL2JpbmAgaW5zdGVhZCwgeW91IHdvdWxkIHN1cHBseSB0aGlzIGFic29sdXRlIGRpcmVjdG9yeSBmb3IKK3RoZSA6b3B0aW9uOmAtLWluc3RhbGwtc2NyaXB0c2Agb3B0aW9uOjoKKworICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0taW5zdGFsbC1zY3JpcHRzIC91c3IvbG9jYWwvYmluCisKK1RoaXMgY29tbWFuZCBwZXJmb3JtcyBhbiBpbnN0YWxsYXRpb24gdXNpbmcgdGhlICJwcmVmaXggc2NoZW1lIiwgd2hlcmUgdGhlCitwcmVmaXggaXMgd2hhdGV2ZXIgeW91ciBQeXRob24gaW50ZXJwcmV0ZXIgd2FzIGluc3RhbGxlZCB3aXRoIC0tLWluIHRoaXMgY2FzZSwKKzpmaWxlOmAvdXNyL2xvY2FsL3B5dGhvbmAuCisKK0lmIHlvdSBtYWludGFpbiBQeXRob24gb24gV2luZG93cywgeW91IG1pZ2h0IHdhbnQgdGhpcmQtcGFydHkgbW9kdWxlcyB0byBsaXZlIGluCithIHN1YmRpcmVjdG9yeSBvZiA6ZmlsZTpge3ByZWZpeH1gLCByYXRoZXIgdGhhbiByaWdodCBpbiA6ZmlsZTpge3ByZWZpeH1gCitpdHNlbGYuIFRoaXMgaXMgYWxtb3N0IGFzIGVhc3kgYXMgY3VzdG9taXppbmcgdGhlIHNjcmlwdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5CistLS15b3UganVzdCBoYXZlIHRvIHJlbWVtYmVyIHRoYXQgdGhlcmUgYXJlIHR3byB0eXBlcyBvZiBtb2R1bGVzIHRvIHdvcnJ5IGFib3V0LAorUHl0aG9uIGFuZCBleHRlbnNpb24gbW9kdWxlcywgd2hpY2ggY2FuIGNvbnZlbmllbnRseSBiZSBib3RoIGNvbnRyb2xsZWQgYnkgb25lCitvcHRpb246OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS1pbnN0YWxsLWxpYiBTaXRlCisKKy4uIFhYWCBOb3RoaW5nIGlzIGluc3RhbGxlZCByaWdodCB1bmRlciBwcmVmaXggaW4gd2luZG93cywgaXMgaXQ/PworCitUaGUgc3BlY2lmaWVkIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkgaXMgcmVsYXRpdmUgdG8gOmZpbGU6YHtwcmVmaXh9YC4gIE9mCitjb3Vyc2UsIHlvdSBhbHNvIGhhdmUgdG8gZW5zdXJlIHRoYXQgdGhpcyBkaXJlY3RvcnkgaXMgaW4gUHl0aG9uJ3MgbW9kdWxlCitzZWFyY2ggcGF0aCwgc3VjaCBhcyBieSBwdXR0aW5nIGEgOmZpbGU6YC5wdGhgIGZpbGUgaW4gYSBzaXRlIGRpcmVjdG9yeSAoc2VlCis6bW9kOmBzaXRlYCkuICBTZWUgc2VjdGlvbiA6cmVmOmBwYWNrYWdpbmctc2VhcmNoLXBhdGhgIHRvIGZpbmQgb3V0IGhvdyB0byBtb2RpZnkKK1B5dGhvbidzIHNlYXJjaCBwYXRoLgorCitJZiB5b3Ugd2FudCB0byBkZWZpbmUgYW4gZW50aXJlIGluc3RhbGxhdGlvbiBzY2hlbWUsIHlvdSBqdXN0IGhhdmUgdG8gc3VwcGx5IGFsbAorb2YgdGhlIGluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgb3B0aW9ucy4gVXNpbmcgcmVsYXRpdmUgcGF0aHMgaXMgcmVjb21tZW5kZWQgaGVyZS4KK0ZvciBleGFtcGxlLCBpZiB5b3Ugd2FudCB0byBtYWludGFpbiBhbGwgUHl0aG9uIG1vZHVsZS1yZWxhdGVkIGZpbGVzIHVuZGVyCis6ZmlsZTpgcHl0aG9uYCBpbiB5b3VyIGhvbWUgZGlyZWN0b3J5LCBhbmQgeW91IHdhbnQgYSBzZXBhcmF0ZSBkaXJlY3RvcnkgZm9yCitlYWNoIHBsYXRmb3JtIHRoYXQgeW91IHVzZSB5b3VyIGhvbWUgZGlyZWN0b3J5IGZyb20sIHlvdSBtaWdodCBkZWZpbmUgdGhlCitmb2xsb3dpbmcgaW5zdGFsbGF0aW9uIHNjaGVtZTo6CisKKyAgIHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdCAtLWhvbWUgfiBcCisgICAgICAgLS1pbnN0YWxsLXB1cmVsaWIgcHl0aG9uL2xpYiBcCisgICAgICAgLS1pbnN0YWxsLXBsYXRsaWIgcHl0aG9uLydsaWIuJFBMQVQnIFwKKyAgICAgICAtLWluc3RhbGwtc2NyaXB0cyBweXRob24vc2NyaXB0cyBcCisgICAgICAgLS1pbnN0YWxsLWRhdGEgcHl0aG9uL2RhdGEKKworb3IsIGVxdWl2YWxlbnRseSwgOjoKKworICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0taG9tZSB+L3B5dGhvbiBcCisgICAgICAgLS1pbnN0YWxsLXB1cmVsaWIgbGliIFwKKyAgICAgICAtLWluc3RhbGwtcGxhdGxpYiAnbGliLiRQTEFUJyBcCisgICAgICAgLS1pbnN0YWxsLXNjcmlwdHMgc2NyaXB0cyBcCisgICAgICAgLS1pbnN0YWxsLWRhdGEgZGF0YQorCitgYCRQTEFUYGAgZG9lc24ndCBuZWVkIHRvIGJlIGRlZmluZWQgYXMgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgLS0taXQgd2lsbCBhbHNvCitiZSBleHBhbmRlZCBieSBQYWNrYWdpbmcgYXMgaXQgcGFyc2VzIHlvdXIgY29tbWFuZCBsaW5lIG9wdGlvbnMsIGp1c3QgYXMgaXQKK2RvZXMgd2hlbiBwYXJzaW5nIHlvdXIgY29uZmlndXJhdGlvbiBmaWxlKHMpLiAoTW9yZSBvbiB0aGF0IGxhdGVyLikKKworT2J2aW91c2x5LCBzcGVjaWZ5aW5nIHRoZSBlbnRpcmUgaW5zdGFsbGF0aW9uIHNjaGVtZSBldmVyeSB0aW1lIHlvdSBpbnN0YWxsIGEKK25ldyBtb2R1bGUgZGlzdHJpYnV0aW9uIHdvdWxkIGJlIHZlcnkgdGVkaW91cy4gVG8gc3BhcmUgeW91IGFsbCB0aGF0IHdvcmssIHlvdQorY2FuIHN0b3JlIGl0IGluIGEgUGFja2FnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBpbnN0ZWFkIChzZWUgc2VjdGlvbgorOnJlZjpgcGFja2FnaW5nLWNvbmZpZy1maWxlc2ApLCBsaWtlIHNvOjoKKworICAgW2luc3RhbGxfZGlzdF0KKyAgIGluc3RhbGwtYmFzZSA9ICRIT01FCisgICBpbnN0YWxsLXB1cmVsaWIgPSBweXRob24vbGliCisgICBpbnN0YWxsLXBsYXRsaWIgPSBweXRob24vbGliLiRQTEFUCisgICBpbnN0YWxsLXNjcmlwdHMgPSBweXRob24vc2NyaXB0cworICAgaW5zdGFsbC1kYXRhID0gcHl0aG9uL2RhdGEKKworb3IsIGVxdWl2YWxlbnRseSwgOjoKKworICAgW2luc3RhbGxfZGlzdF0KKyAgIGluc3RhbGwtYmFzZSA9ICRIT01FL3B5dGhvbgorICAgaW5zdGFsbC1wdXJlbGliID0gbGliCisgICBpbnN0YWxsLXBsYXRsaWIgPSBsaWIuJFBMQVQKKyAgIGluc3RhbGwtc2NyaXB0cyA9IHNjcmlwdHMKKyAgIGluc3RhbGwtZGF0YSA9IGRhdGEKKworTm90ZSB0aGF0IHRoZXNlIHR3byBhcmUgKm5vdCogZXF1aXZhbGVudCBpZiB5b3Ugb3ZlcnJpZGUgdGhlaXIgaW5zdGFsbGF0aW9uCitiYXNlIGRpcmVjdG9yeSB3aGVuIHJ1bm5pbmcgdGhlIHNldHVwIHNjcmlwdC4gRm9yIGV4YW1wbGUsIDo6CisKKyAgIHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdCAtLWluc3RhbGwtYmFzZSAvdG1wCisKK3dvdWxkIGluc3RhbGwgcHVyZSBtb2R1bGVzIHRvIDpmaWxlOmAvdG1wL3B5dGhvbi9saWJgIGluIHRoZSBmaXJzdCBjYXNlLCBhbmQKK3RvIDpmaWxlOmAvdG1wL2xpYmAgaW4gdGhlIHNlY29uZCBjYXNlLiAoRm9yIHRoZSBzZWNvbmQgY2FzZSwgeW91J2QgcHJvYmFibHkKK3dhbnQgdG8gc3VwcGx5IGFuIGluc3RhbGxhdGlvbiBiYXNlIG9mIDpmaWxlOmAvdG1wL3B5dGhvbmAuKQorCitZb3UgbWF5IGhhdmUgbm90aWNlZCB0aGUgdXNlIG9mIGBgJEhPTUVgYCBhbmQgYGAkUExBVGBgIGluIHRoZSBzYW1wbGUKK2NvbmZpZ3VyYXRpb24gZmlsZS4gVGhlc2UgYXJlIFBhY2thZ2luZyBjb25maWd1cmF0aW9uIHZhcmlhYmxlcywgd2hpY2gKK2JlYXIgYSBzdHJvbmcgcmVzZW1ibGFuY2UgdG8gZW52aXJvbm1lbnQgdmFyaWFibGVzLiBJbiBmYWN0LCB5b3UgY2FuIHVzZQorZW52aXJvbm1lbnQgdmFyaWFibGVzIGluIGNvbmZpZ3VyYXRpb24gZmlsZXMgb24gcGxhdGZvcm1zIHRoYXQgaGF2ZSBzdWNoIGEgbm90aW9uLCBidXQKK1BhY2thZ2luZyBhZGRpdGlvbmFsbHkgZGVmaW5lcyBhIGZldyBleHRyYSB2YXJpYWJsZXMgdGhhdCBtYXkgbm90IGJlIGluIHlvdXIKK2Vudmlyb25tZW50LCBzdWNoIGFzIGBgJFBMQVRgYC4gT2YgY291cnNlLCBvbiBzeXN0ZW1zIHRoYXQgZG9uJ3QgaGF2ZQorZW52aXJvbm1lbnQgdmFyaWFibGVzLCBzdWNoIGFzIE1hYyBPUyA5LCB0aGUgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMgc3VwcGxpZWQgYnkKK3RoZSBQYWNrYWdpbmcgYXJlIHRoZSBvbmx5IG9uZXMgeW91IGNhbiB1c2UuIFNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1jb25maWctZmlsZXNgCitmb3IgZGV0YWlscy4KKworLi4gWFhYIHdoaWNoIHZhcnMgd2luIG91dCBldmVudHVhbGx5IGluIGNhc2Ugb2YgY2xhc2ggZW52IG9yIFBhY2thZ2luZz8KKworLi4gWFhYIG5lZWQgc29tZSBXaW5kb3dzIGV4YW1wbGVzLS0td2hlbiB3b3VsZCBjdXN0b20gaW5zdGFsbGF0aW9uIHNjaGVtZXMgYmUKKyAgIG5lZWRlZCBvbiB0aG9zZSBwbGF0Zm9ybXM/CisKKworLi4gWFhYIE1vdmUgdGhpcyBzZWN0aW9uIHRvIERvYy91c2luZworCisuLiBfcGFja2FnaW5nLXNlYXJjaC1wYXRoOgorCitNb2RpZnlpbmcgUHl0aG9uJ3Mgc2VhcmNoIHBhdGgKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitXaGVuIHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgZXhlY3V0ZXMgYW4gOmtleXdvcmQ6YGltcG9ydGAgc3RhdGVtZW50LCBpdCBzZWFyY2hlcworZm9yIGJvdGggUHl0aG9uIGNvZGUgYW5kIGV4dGVuc2lvbiBtb2R1bGVzIGFsb25nIGEgc2VhcmNoIHBhdGguIEEgZGVmYXVsdCB2YWx1ZQorZm9yIHRoaXMgcGF0aCBpcyBjb25maWd1cmVkIGludG8gdGhlIFB5dGhvbiBiaW5hcnkgd2hlbiB0aGUgaW50ZXJwcmV0ZXIgaXMgYnVpbHQuCitZb3UgY2FuIG9idGFpbiB0aGUgc2VhcmNoIHBhdGggYnkgaW1wb3J0aW5nIHRoZSA6bW9kOmBzeXNgIG1vZHVsZSBhbmQgcHJpbnRpbmcKK3RoZSB2YWx1ZSBvZiBgYHN5cy5wYXRoYGAuIDo6CisKKyAgICQgcHl0aG9uCisgICBQeXRob24gMi4yICgjMTEsIE9jdCAgMyAyMDAyLCAxMzozMToyNykKKyAgIFtHQ0MgMi45NiAyMDAwMDczMSAoUmVkIEhhdCBMaW51eCA3LjMgMi45Ni0xMTIpXSBvbiBsaW51eDIKKyAgIFR5cGUgImhlbHAiLCAiY29weXJpZ2h0IiwgImNyZWRpdHMiIG9yICJsaWNlbnNlIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKyAgID4+PiBpbXBvcnQgc3lzCisgICA+Pj4gc3lzLnBhdGgKKyAgIFsnJywgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMycsICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMvcGxhdC1saW51eDInLAorICAgICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMvbGliLXRrJywgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMy9saWItZHlubG9hZCcsCisgICAgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMy9zaXRlLXBhY2thZ2VzJ10KKyAgID4+PgorCitUaGUgbnVsbCBzdHJpbmcgaW4gYGBzeXMucGF0aGBgIHJlcHJlc2VudHMgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCisKK1RoZSBleHBlY3RlZCBjb252ZW50aW9uIGZvciBsb2NhbGx5IGluc3RhbGxlZCBwYWNrYWdlcyBpcyB0byBwdXQgdGhlbSBpbiB0aGUKKzpmaWxlOmB7Li4ufS9zaXRlLXBhY2thZ2VzL2AgZGlyZWN0b3J5LCBidXQgeW91IG1heSB3YW50IHRvIGNob29zZSBhIGRpZmZlcmVudAorbG9jYXRpb24gZm9yIHNvbWUgcmVhc29uLiBGb3IgZXhhbXBsZSwgaWYgeW91ciBzaXRlIGtlcHQgYnkgY29udmVudGlvbiBhbGwgd2ViCitzZXJ2ZXItcmVsYXRlZCBzb2Z0d2FyZSB1bmRlciA6ZmlsZTpgL3d3d2AuIEFkZC1vbiBQeXRob24gbW9kdWxlcyBtaWdodCB0aGVuCitiZWxvbmcgaW4gOmZpbGU6YC93d3cvcHl0aG9uYCwgYW5kIGluIG9yZGVyIHRvIGltcG9ydCB0aGVtLCB0aGlzIGRpcmVjdG9yeSB3b3VsZAoraGF2ZSB0byBiZSBhZGRlZCB0byBgYHN5cy5wYXRoYGAuIFRoZXJlIGFyZSBzZXZlcmFsIHdheXMgdG8gc29sdmUgdGhpcyBwcm9ibGVtLgorCitUaGUgbW9zdCBjb252ZW5pZW50IHdheSBpcyB0byBhZGQgYSBwYXRoIGNvbmZpZ3VyYXRpb24gZmlsZSB0byBhIGRpcmVjdG9yeQordGhhdCdzIGFscmVhZHkgb24gUHl0aG9uJ3MgcGF0aCwgdXN1YWxseSB0byB0aGUgOmZpbGU6YC4uLi9zaXRlLXBhY2thZ2VzL2AKK2RpcmVjdG9yeS4gUGF0aCBjb25maWd1cmF0aW9uIGZpbGVzIGhhdmUgYW4gZXh0ZW5zaW9uIG9mIDpmaWxlOmAucHRoYCwgYW5kIGVhY2gKK2xpbmUgbXVzdCBjb250YWluIGEgc2luZ2xlIHBhdGggdGhhdCB3aWxsIGJlIGFwcGVuZGVkIHRvIGBgc3lzLnBhdGhgYC4gKEJlY2F1c2UKK3RoZSBuZXcgcGF0aHMgYXJlIGFwcGVuZGVkIHRvIGBgc3lzLnBhdGhgYCwgbW9kdWxlcyBpbiB0aGUgYWRkZWQgZGlyZWN0b3JpZXMKK3dpbGwgbm90IG92ZXJyaWRlIHN0YW5kYXJkIG1vZHVsZXMuIFRoaXMgbWVhbnMgeW91IGNhbid0IHVzZSB0aGlzIG1lY2hhbmlzbSBmb3IKK2luc3RhbGxpbmcgZml4ZWQgdmVyc2lvbnMgb2Ygc3RhbmRhcmQgbW9kdWxlcy4pCisKK1BhdGhzIGNhbiBiZSBhYnNvbHV0ZSBvciByZWxhdGl2ZSwgaW4gd2hpY2ggY2FzZSB0aGV5J3JlIHJlbGF0aXZlIHRvIHRoZQorZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIDpmaWxlOmAucHRoYCBmaWxlLiBTZWUgdGhlIGRvY3VtZW50YXRpb24gb2YKK3RoZSA6bW9kOmBzaXRlYCBtb2R1bGUgZm9yIG1vcmUgaW5mb3JtYXRpb24uCisKK0Egc2xpZ2h0bHkgbGVzcyBjb252ZW5pZW50IHdheSBpcyB0byBlZGl0IHRoZSA6ZmlsZTpgc2l0ZS5weWAgZmlsZSBpbiBQeXRob24ncworc3RhbmRhcmQgbGlicmFyeSwgYW5kIG1vZGlmeSBgYHN5cy5wYXRoYGAuIDpmaWxlOmBzaXRlLnB5YCBpcyBhdXRvbWF0aWNhbGx5CitpbXBvcnRlZCB3aGVuIHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgaXMgZXhlY3V0ZWQsIHVubGVzcyB0aGUgOm9wdGlvbjpgLVNgIHN3aXRjaAoraXMgc3VwcGxpZWQgdG8gc3VwcHJlc3MgdGhpcyBiZWhhdmlvdXIuIFNvIHlvdSBjb3VsZCBzaW1wbHkgZWRpdAorOmZpbGU6YHNpdGUucHlgIGFuZCBhZGQgdHdvIGxpbmVzIHRvIGl0OjoKKworICAgaW1wb3J0IHN5cworICAgc3lzLnBhdGguYXBwZW5kKCcvd3d3L3B5dGhvbi8nKQorCitIb3dldmVyLCBpZiB5b3UgcmVpbnN0YWxsIHRoZSBzYW1lIG1ham9yIHZlcnNpb24gb2YgUHl0aG9uIChwZXJoYXBzIHdoZW4KK3VwZ3JhZGluZyBmcm9tIDMuMyB0byAzLjMuMSwgZm9yIGV4YW1wbGUpIDpmaWxlOmBzaXRlLnB5YCB3aWxsIGJlIG92ZXJ3cml0dGVuIGJ5Cit0aGUgc3RvY2sgdmVyc2lvbi4gWW91J2QgaGF2ZSB0byByZW1lbWJlciB0aGF0IGl0IHdhcyBtb2RpZmllZCBhbmQgc2F2ZSBhIGNvcHkKK2JlZm9yZSBkb2luZyB0aGUgaW5zdGFsbGF0aW9uLgorCitBbHRlcm5hdGl2ZWx5LCB0aGVyZSBhcmUgdHdvIGVudmlyb25tZW50IHZhcmlhYmxlcyB0aGF0IGNhbiBtb2RpZnkgYGBzeXMucGF0aGBgLgorOmVudnZhcjpgUFlUSE9OSE9NRWAgc2V0cyBhbiBhbHRlcm5hdGUgdmFsdWUgZm9yIHRoZSBwcmVmaXggb2YgdGhlIFB5dGhvbgoraW5zdGFsbGF0aW9uLiBGb3IgZXhhbXBsZSwgaWYgOmVudnZhcjpgUFlUSE9OSE9NRWAgaXMgc2V0IHRvIGBgL3d3dy9weXRob25gYCwKK3RoZSBzZWFyY2ggcGF0aCB3aWxsIGJlIHNldCB0byBgYFsnJywgJy93d3cvcHl0aG9uL2xpYi9weXRob25YLlkvJywKKycvd3d3L3B5dGhvbi9saWIvcHl0aG9uWC5ZL3BsYXQtbGludXgyJywgLi4uXWBgLgorCitUaGUgOmVudnZhcjpgUFlUSE9OUEFUSGAgdmFyaWFibGUgY2FuIGJlIHNldCB0byBhIGxpc3Qgb2YgcGF0aHMgdGhhdCB3aWxsIGJlCithZGRlZCB0byB0aGUgYmVnaW5uaW5nIG9mIGBgc3lzLnBhdGhgYC4gRm9yIGV4YW1wbGUsIGlmIDplbnZ2YXI6YFBZVEhPTlBBVEhgIGlzCitzZXQgdG8gYGAvd3d3L3B5dGhvbjovb3B0L3B5YGAsIHRoZSBzZWFyY2ggcGF0aCB3aWxsIGJlZ2luIHdpdGgKK2BgWycvd3d3L3B5dGhvbicsICcvb3B0L3B5J11gYC4gKE5vdGUgdGhhdCBkaXJlY3RvcmllcyBtdXN0IGV4aXN0IGluIG9yZGVyIHRvCitiZSBhZGRlZCB0byBgYHN5cy5wYXRoYGA7IHRoZSA6bW9kOmBzaXRlYCBtb2R1bGUgcmVtb3ZlcyBub24tZXhpc3RlbnQgcGF0aHMuKQorCitGaW5hbGx5LCBgYHN5cy5wYXRoYGAgaXMganVzdCBhIHJlZ3VsYXIgUHl0aG9uIGxpc3QsIHNvIGFueSBQeXRob24gYXBwbGljYXRpb24KK2NhbiBtb2RpZnkgaXQgYnkgYWRkaW5nIG9yIHJlbW92aW5nIGVudHJpZXMuCisKKworLi4gX3BhY2thZ2luZy1jb25maWctZmlsZXM6CisKK0NvbmZpZ3VyYXRpb24gZmlsZXMgZm9yIFBhY2thZ2luZworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0FzIG1lbnRpb25lZCBhYm92ZSwgeW91IGNhbiB1c2UgY29uZmlndXJhdGlvbiBmaWxlcyB0byBzdG9yZSBwZXJzb25hbCBvciBzaXRlCitwcmVmZXJlbmNlcyBmb3IgYW55IG9wdGlvbiBzdXBwb3J0ZWQgYnkgYW55IFBhY2thZ2luZyBjb21tYW5kLiBEZXBlbmRpbmcgb24geW91cgorcGxhdGZvcm0sIHlvdSBjYW4gdXNlIG9uZSBvZiB0d28gb3IgdGhyZWUgcG9zc2libGUgY29uZmlndXJhdGlvbiBmaWxlcy4gVGhlc2UKK2ZpbGVzIHdpbGwgYmUgcmVhZCBiZWZvcmUgcGFyc2luZyB0aGUgY29tbWFuZC1saW5lLCBzbyB0aGV5IHRha2UgcHJlY2VkZW5jZSBvdmVyCitkZWZhdWx0IHZhbHVlcy4gSW4gdHVybiwgdGhlIGNvbW1hbmQtbGluZSB3aWxsIG92ZXJyaWRlIGNvbmZpZ3VyYXRpb24gZmlsZXMuCitMYXN0bHksIGlmIHRoZXJlIGFyZSBtdWx0aXBsZSBjb25maWd1cmF0aW9uIGZpbGVzLCB2YWx1ZXMgZnJvbSBmaWxlcyByZWFkCitlYXJsaWVyIHdpbGwgYmUgb3ZlcnJpZGRlbiBieSB2YWx1ZXMgZnJvbSBmaWxlcyByZWFkIGxhdGVyLgorCisuLiBYWFggIm9uZSBvZiB0d28gb3IgdGhyZWUgcG9zc2libGUuLi4iIHNlZW1zIHdyb25nIGluZm8uIEJlbG93IGFsd2F5cyAzIGZpbGVzCisgICBhcmUgaW5kaWNhdGVkIGluIHRoZSB0YWJsZXMuCisKKworLi4gX3BhY2thZ2luZy1jb25maWctZmlsZW5hbWVzOgorCitMb2NhdGlvbiBhbmQgbmFtZXMgb2YgY29uZmlndXJhdGlvbiBmaWxlcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIG5hbWUgYW5kIGxvY2F0aW9uIG9mIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIHZhcnkgc2xpZ2h0bHkgYWNyb3NzCitwbGF0Zm9ybXMuIE9uIFVuaXggYW5kIE1hYyBPUyBYLCB0aGVzZSBhcmUgdGhlIHRocmVlIGNvbmZpZ3VyYXRpb24gZmlsZXMgbGlzdGVkCitpbiB0aGUgb3JkZXIgdGhleSBhcmUgcHJvY2Vzc2VkOgorCisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBUeXBlIG9mIGZpbGUgfCBMb2NhdGlvbiBhbmQgZmlsZW5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzIHwKKys9PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rCit8IHN5c3RlbSAgICAgICB8IDpmaWxlOmB7cHJlZml4fS9saWIvcHl0aG9ue3Zlcn0vcGFja2FnaW5nL3BhY2thZ2luZy5jZmdgIHwgXCgxKSAgfAorKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgcGVyc29uYWwgICAgIHwgOmZpbGU6YCRIT01FLy5weWRpc3R1dGlscy5jZmdgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcKDIpICB8CisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBsb2NhbCAgICAgICAgfCA6ZmlsZTpgc2V0dXAuY2ZnYCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFwoMykgIHwKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCisKK1NpbWlsYXJseSwgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgb24gV2luZG93cyAtLS1hbHNvIGxpc3RlZCBpbiB0aGUgb3JkZXIgdGhleQorYXJlIHByb2Nlc3NlZC0tLSBhcmUgdGhlc2U6CisKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IFR5cGUgb2YgZmlsZSB8IExvY2F0aW9uIGFuZCBmaWxlbmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgfAorKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKK3wgc3lzdGVtICAgICAgIHwgOmZpbGU6YHtwcmVmaXh9XFxMaWJcXHBhY2thZ2luZ1xccGFja2FnaW5nLmNmZ2AgfCBcKDQpICB8CisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBwZXJzb25hbCAgICAgfCA6ZmlsZTpgJUhPTUUlXFxweWRpc3R1dGlscy5jZmdgICAgICAgICAgICAgICAgICB8IFwoNSkgIHwKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGxvY2FsICAgICAgICB8IDpmaWxlOmBzZXR1cC5jZmdgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgXCgzKSAgfAorKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKKworT24gYWxsIHBsYXRmb3JtcywgdGhlICpwZXJzb25hbCogZmlsZSBjYW4gYmUgdGVtcG9yYXJpbHkgZGlzYWJsZWQgYnkKK21lYW5zIG9mIHRoZSBgLS1uby11c2VyLWNmZ2Agb3B0aW9uLgorCitOb3RlczoKKworKDEpCisgICBTdHJpY3RseSBzcGVha2luZywgdGhlIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb24gZmlsZSBsaXZlcyBpbiB0aGUgZGlyZWN0b3J5CisgICB3aGVyZSBQYWNrYWdpbmcgaXMgaW5zdGFsbGVkLgorCisoMikKKyAgIE9uIFVuaXgsIGlmIHRoZSA6ZW52dmFyOmBIT01FYCBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBub3QgZGVmaW5lZCwgdGhlCisgICB1c2VyJ3MgaG9tZSBkaXJlY3Rvcnkgd2lsbCBiZSBkZXRlcm1pbmVkIHdpdGggdGhlIDpmdW5jOmBnZXRwd3VpZGAgZnVuY3Rpb24KKyAgIGZyb20gdGhlIHN0YW5kYXJkIDptb2Q6YHB3ZGAgbW9kdWxlLiBQYWNrYWdpbmcgdXNlcyB0aGUKKyAgIDpmdW5jOmBvcy5wYXRoLmV4cGFuZHVzZXJgIGZ1bmN0aW9uIHRvIGRvIHRoaXMuCisKKygzKQorICAgSS5lLiwgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5ICh1c3VhbGx5IHRoZSBsb2NhdGlvbiBvZiB0aGUgc2V0dXAgc2NyaXB0KS4KKworKDQpCisgICAoU2VlIGFsc28gbm90ZSAoMSkuKSBQeXRob24ncyBkZWZhdWx0IGluc3RhbGxhdGlvbiBwcmVmaXggaXMKKyAgIDpmaWxlOmBDOlxcUHl0aG9uYCwgc28gdGhlIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUgaXMgbm9ybWFsbHkKKyAgIDpmaWxlOmBDOlxcUHl0aG9uXFxMaWJcXHBhY2thZ2luZ1xccGFja2FnaW5nLmNmZ2AuCisKKyg1KQorICAgT24gV2luZG93cywgaWYgdGhlIDplbnZ2YXI6YEhPTUVgIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5vdCBkZWZpbmVkLAorICAgOmVudnZhcjpgVVNFUlBST0ZJTEVgIHRoZW4gOmVudnZhcjpgSE9NRURSSVZFYCBhbmQgOmVudnZhcjpgSE9NRVBBVEhgIHdpbGwKKyAgIGJlIHRyaWVkLiBQYWNrYWdpbmcgdXNlcyB0aGUgOmZ1bmM6YG9zLnBhdGguZXhwYW5kdXNlcmAgZnVuY3Rpb24gdG8gZG8gdGhpcy4KKworCisuLiBfcGFja2FnaW5nLWNvbmZpZy1zeW50YXg6CisKK1N5bnRheCBvZiBjb25maWd1cmF0aW9uIGZpbGVzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitBbGwgUGFja2FnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgc2hhcmUgdGhlIHNhbWUgc3ludGF4LiBPcHRpb25zIGRlZmluZWQgaW4KK3RoZW0gYXJlIGdyb3VwZWQgaW50byBzZWN0aW9ucywgYW5kIGVhY2ggUGFja2FnaW5nIGNvbW1hbmQgZ2V0cyBpdHMgb3duIHNlY3Rpb24uCitBZGRpdGlvbmFsbHksIHRoZXJlJ3MgYSBgYGdsb2JhbGBgIHNlY3Rpb24gZm9yIG9wdGlvbnMgdGhhdCBhZmZlY3QgZXZlcnkgY29tbWFuZC4KK1NlY3Rpb25zIGNvbnNpc3Qgb2Ygb25lIG9yIG1vcmUgbGluZXMgY29udGFpbmluZyBhIHNpbmdsZSBvcHRpb24gc3BlY2lmaWVkIGFzCitgYG9wdGlvbiA9IHZhbHVlYGAuCisKKy4uIFhYWCB1c2UgZHJ5LXJ1biBpbiB0aGUgbmV4dCBleGFtcGxlIG9yIHVzZSBhIHB5c2V0dXAgb3B0aW9uIGFzIGV4YW1wbGUKKworRm9yIGV4YW1wbGUsIGhlcmUncyBhIGNvbXBsZXRlIGNvbmZpZ3VyYXRpb24gZmlsZSB0aGF0IGZvcmNlcyBhbGwgY29tbWFuZHMgdG8KK3J1biBxdWlldGx5IGJ5IGRlZmF1bHQ6OgorCisgICBbZ2xvYmFsXQorICAgdmVyYm9zZSA9IDAKKworSWYgdGhpcyB3YXMgdGhlIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIGl0IHdvdWxkIGFmZmVjdCBhbGwgcHJvY2Vzc2luZworb2YgYW55IFB5dGhvbiBtb2R1bGUgZGlzdHJpYnV0aW9uIGJ5IGFueSB1c2VyIG9uIHRoZSBjdXJyZW50IHN5c3RlbS4gSWYgaXQgd2FzCitpbnN0YWxsZWQgYXMgeW91ciBwZXJzb25hbCBjb25maWd1cmF0aW9uIGZpbGUgKG9uIHN5c3RlbXMgdGhhdCBzdXBwb3J0IHRoZW0pLAoraXQgd291bGQgYWZmZWN0IG9ubHkgbW9kdWxlIGRpc3RyaWJ1dGlvbnMgcHJvY2Vzc2VkIGJ5IHlvdS4gTGFzdGx5LCBpZiBpdCB3YXMKK3VzZWQgYXMgdGhlIDpmaWxlOmBzZXR1cC5jZmdgIGZvciBhIHBhcnRpY3VsYXIgbW9kdWxlIGRpc3RyaWJ1dGlvbiwgaXQgd291bGQKK2FmZmVjdCB0aGF0IGRpc3RyaWJ1dGlvbiBvbmx5LgorCisuLiBYWFggIihvbiBzeXN0ZW1zIHRoYXQgc3VwcG9ydCB0aGVtKSIgc2VlbXMgd3JvbmcgaW5mbworCitJZiB5b3Ugd2FudGVkIHRvLCB5b3UgY291bGQgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgImJ1aWxkIGJhc2UiIGRpcmVjdG9yeSBhbmQKK21ha2UgdGhlIDpjb21tYW5kOmBidWlsZFwqYCBjb21tYW5kcyBhbHdheXMgZm9yY2libHkgcmVidWlsZCBhbGwgZmlsZXMgd2l0aAordGhlIGZvbGxvd2luZzo6CisKKyAgIFtidWlsZF0KKyAgIGJ1aWxkLWJhc2UgPSBibGliCisgICBmb3JjZSA9IDEKKword2hpY2ggY29ycmVzcG9uZHMgdG8gdGhlIGNvbW1hbmQtbGluZSBhcmd1bWVudHM6OgorCisgICBweXNldHVwIHJ1biBidWlsZCAtLWJ1aWxkLWJhc2UgYmxpYiAtLWZvcmNlCisKK2V4Y2VwdCB0aGF0IGluY2x1ZGluZyB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kIG9uIHRoZSBjb21tYW5kLWxpbmUgbWVhbnMKK3RoYXQgY29tbWFuZCB3aWxsIGJlIHJ1bi4gSW5jbHVkaW5nIGEgcGFydGljdWxhciBjb21tYW5kIGluIGNvbmZpZ3VyYXRpb24gZmlsZXMKK2hhcyBubyBzdWNoIGltcGxpY2F0aW9uOyBpdCBvbmx5IG1lYW5zIHRoYXQgaWYgdGhlIGNvbW1hbmQgaXMgcnVuLCB0aGUgb3B0aW9ucworZm9yIGl0IGluIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgd2lsbCBhcHBseS4gKFRoaXMgaXMgYWxzbyB0cnVlIGlmIHlvdSBydW4KK290aGVyIGNvbW1hbmRzIHRoYXQgZGVyaXZlIHZhbHVlcyBmcm9tIGl0LikKKworWW91IGNhbiBmaW5kIG91dCB0aGUgY29tcGxldGUgbGlzdCBvZiBvcHRpb25zIGZvciBhbnkgY29tbWFuZCB1c2luZyB0aGUKKzpvcHRpb246YC0taGVscGAgb3B0aW9uLCBlLmcuOjoKKworICAgcHlzZXR1cCBydW4gYnVpbGQgLS1oZWxwCisKK2FuZCB5b3UgY2FuIGZpbmQgb3V0IHRoZSBjb21wbGV0ZSBsaXN0IG9mIGdsb2JhbCBvcHRpb25zIGJ5IHVzaW5nCis6b3B0aW9uOmAtLWhlbHBgIHdpdGhvdXQgYSBjb21tYW5kOjoKKworICAgcHlzZXR1cCBydW4gLS1oZWxwCisKK1NlZSBhbHNvIHRoZSAiUmVmZXJlbmNlIiBzZWN0aW9uIG9mIHRoZSAiRGlzdHJpYnV0aW5nIFB5dGhvbiBNb2R1bGVzIiBtYW51YWwuCisKKy4uIFhYWCBubyBsaW5rcyB0byB0aGUgcmVsZXZhbnQgc2VjdGlvbiBleGlzdC4KKworCisuLiBfcGFja2FnaW5nLWJ1aWxkaW5nLWV4dDoKKworQnVpbGRpbmcgZXh0ZW5zaW9uczogdGlwcyBhbmQgdHJpY2tzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworV2hlbmV2ZXIgcG9zc2libGUsIFBhY2thZ2luZyB0cmllcyB0byB1c2UgdGhlIGNvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24gbWFkZQorYXZhaWxhYmxlIGJ5IHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgdXNlZCB0byBydW4gYHB5c2V0dXBgLgorRm9yIGV4YW1wbGUsIHRoZSBzYW1lIGNvbXBpbGVyIGFuZCBsaW5rZXIgZmxhZ3MgdXNlZCB0byBjb21waWxlIFB5dGhvbiB3aWxsIGFsc28KK2JlIHVzZWQgZm9yIGNvbXBpbGluZyBleHRlbnNpb25zLiBVc3VhbGx5IHRoaXMgd2lsbCB3b3JrIHdlbGwsIGJ1dCBpbgorY29tcGxpY2F0ZWQgc2l0dWF0aW9ucyB0aGlzIG1pZ2h0IGJlIGluYXBwcm9wcmlhdGUuIFRoaXMgc2VjdGlvbiBkaXNjdXNzZXMgaG93Cit0byBvdmVycmlkZSB0aGUgdXN1YWwgUGFja2FnaW5nIGJlaGF2aW91ci4KKworCisuLiBfcGFja2FnaW5nLXR3ZWFrLWZsYWdzOgorCitUd2Vha2luZyBjb21waWxlci9saW5rZXIgZmxhZ3MKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitDb21waWxpbmcgYSBQeXRob24gZXh0ZW5zaW9uIHdyaXR0ZW4gaW4gQyBvciBDKysgd2lsbCBzb21ldGltZXMgcmVxdWlyZQorc3BlY2lmeWluZyBjdXN0b20gZmxhZ3MgZm9yIHRoZSBjb21waWxlciBhbmQgbGlua2VyIGluIG9yZGVyIHRvIHVzZSBhIHBhcnRpY3VsYXIKK2xpYnJhcnkgb3IgcHJvZHVjZSBhIHNwZWNpYWwga2luZCBvZiBvYmplY3QgY29kZS4gVGhpcyBpcyBlc3BlY2lhbGx5IHRydWUgaWYgdGhlCitleHRlbnNpb24gaGFzbid0IGJlZW4gdGVzdGVkIG9uIHlvdXIgcGxhdGZvcm0sIG9yIGlmIHlvdSdyZSB0cnlpbmcgdG8KK2Nyb3NzLWNvbXBpbGUgUHl0aG9uLgorCisuLiBUT0RPIHVwZGF0ZSB0byBuZXcgc2V0dXAuY2ZnCisKK0luIHRoZSBtb3N0IGdlbmVyYWwgY2FzZSwgdGhlIGV4dGVuc2lvbiBhdXRob3IgbWlnaHQgaGF2ZSBmb3Jlc2VlbiB0aGF0Citjb21waWxpbmcgdGhlIGV4dGVuc2lvbnMgd291bGQgYmUgY29tcGxpY2F0ZWQsIGFuZCBwcm92aWRlZCBhIDpmaWxlOmBTZXR1cGAgZmlsZQorZm9yIHlvdSB0byBlZGl0LiBUaGlzIHdpbGwgbGlrZWx5IG9ubHkgYmUgZG9uZSBpZiB0aGUgbW9kdWxlIGRpc3RyaWJ1dGlvbgorY29udGFpbnMgbWFueSBzZXBhcmF0ZSBleHRlbnNpb24gbW9kdWxlcywgb3IgaWYgdGhleSBvZnRlbiByZXF1aXJlIGVsYWJvcmF0ZQorc2V0cyBvZiBjb21waWxlciBmbGFncyBpbiBvcmRlciB0byB3b3JrLgorCitBIDpmaWxlOmBTZXR1cGAgZmlsZSwgaWYgcHJlc2VudCwgaXMgcGFyc2VkIGluIG9yZGVyIHRvIGdldCBhIGxpc3Qgb2YgZXh0ZW5zaW9ucwordG8gYnVpbGQuIEVhY2ggbGluZSBpbiBhIDpmaWxlOmBTZXR1cGAgZGVzY3JpYmVzIGEgc2luZ2xlIG1vZHVsZS4gTGluZXMgaGF2ZQordGhlIGZvbGxvd2luZyBzdHJ1Y3R1cmU6OgorCisgICBtb2R1bGUgLi4uIFtzb3VyY2VmaWxlIC4uLl0gW2NwcGFyZyAuLi5dIFtsaWJyYXJ5IC4uLl0KKworCitMZXQncyBleGFtaW5lIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0dXJuLgorCisqICptb2R1bGUqIGlzIHRoZSBuYW1lIG9mIHRoZSBleHRlbnNpb24gbW9kdWxlIHRvIGJlIGJ1aWx0LCBhbmQgc2hvdWxkIGJlIGEKKyAgdmFsaWQgUHl0aG9uIGlkZW50aWZpZXIuIFlvdSBjYW4ndCBqdXN0IGNoYW5nZSB0aGlzIGluIG9yZGVyIHRvIHJlbmFtZSBhIG1vZHVsZQorICAoZWRpdHMgdG8gdGhlIHNvdXJjZSBjb2RlIHdvdWxkIGFsc28gYmUgbmVlZGVkKSwgc28gdGhpcyBzaG91bGQgYmUgbGVmdCBhbG9uZS4KKworKiAqc291cmNlZmlsZSogaXMgYW55dGhpbmcgdGhhdCdzIGxpa2VseSB0byBiZSBhIHNvdXJjZSBjb2RlIGZpbGUsIGF0IGxlYXN0CisgIGp1ZGdpbmcgYnkgdGhlIGZpbGVuYW1lLiBGaWxlbmFtZXMgZW5kaW5nIGluIDpmaWxlOmAuY2AgYXJlIGFzc3VtZWQgdG8gYmUKKyAgd3JpdHRlbiBpbiBDLCBmaWxlbmFtZXMgZW5kaW5nIGluIDpmaWxlOmAuQ2AsIDpmaWxlOmAuY2NgLCBhbmQgOmZpbGU6YC5jKytgIGFyZQorICBhc3N1bWVkIHRvIGJlIEMrKywgYW5kIGZpbGVuYW1lcyBlbmRpbmcgaW4gOmZpbGU6YC5tYCBvciA6ZmlsZTpgLm1tYCBhcmUgYXNzdW1lZAorICB0byBiZSBpbiBPYmplY3RpdmUgQy4KKworKiAqY3BwYXJnKiBpcyBhbiBhcmd1bWVudCBmb3IgdGhlIEMgcHJlcHJvY2Vzc29yLCAgYW5kIGlzIGFueXRoaW5nIHN0YXJ0aW5nIHdpdGgKKyAgOm9wdGlvbjpgLUlgLCA6b3B0aW9uOmAtRGAsIDpvcHRpb246YC1VYCBvciA6b3B0aW9uOmAtQ2AuCisKKyogKmxpYnJhcnkqIGlzIGFueXRoaW5nIGVuZGluZyBpbiA6ZmlsZTpgLmFgIG9yIGJlZ2lubmluZyB3aXRoIDpvcHRpb246YC1sYCBvcgorICA6b3B0aW9uOmAtTGAuCisKK0lmIGEgcGFydGljdWxhciBwbGF0Zm9ybSByZXF1aXJlcyBhIHNwZWNpYWwgbGlicmFyeSBvbiB5b3VyIHBsYXRmb3JtLCB5b3UgY2FuCithZGQgaXQgYnkgZWRpdGluZyB0aGUgOmZpbGU6YFNldHVwYCBmaWxlIGFuZCBydW5uaW5nIGBgcHlzZXR1cCBydW4gYnVpbGRgYC4KK0ZvciBleGFtcGxlLCBpZiB0aGUgbW9kdWxlIGRlZmluZWQgYnkgdGhlIGxpbmUgOjoKKworICAgZm9vIGZvb21vZHVsZS5jCisKK211c3QgYmUgbGlua2VkIHdpdGggdGhlIG1hdGggbGlicmFyeSA6ZmlsZTpgbGlibS5hYCBvbiB5b3VyIHBsYXRmb3JtLCBzaW1wbHkgYWRkCis6b3B0aW9uOmAtbG1gIHRvIHRoZSBsaW5lOjoKKworICAgZm9vIGZvb21vZHVsZS5jIC1sbQorCitBcmJpdHJhcnkgc3dpdGNoZXMgaW50ZW5kZWQgZm9yIHRoZSBjb21waWxlciBvciB0aGUgbGlua2VyIGNhbiBiZSBzdXBwbGllZCB3aXRoCit0aGUgOm9wdGlvbjpgLVhjb21waWxlcmAgKmFyZyogYW5kIDpvcHRpb246YC1YbGlua2VyYCAqYXJnKiBvcHRpb25zOjoKKworICAgZm9vIGZvb21vZHVsZS5jIC1YY29tcGlsZXIgLW8zMiAtWGxpbmtlciAtc2hhcmVkIC1sbQorCitUaGUgbmV4dCBvcHRpb24gYWZ0ZXIgOm9wdGlvbjpgLVhjb21waWxlcmAgYW5kIDpvcHRpb246YC1YbGlua2VyYCB3aWxsIGJlCithcHBlbmRlZCB0byB0aGUgcHJvcGVyIGNvbW1hbmQgbGluZSwgc28gaW4gdGhlIGFib3ZlIGV4YW1wbGUgdGhlIGNvbXBpbGVyIHdpbGwKK2JlIHBhc3NlZCB0aGUgOm9wdGlvbjpgLW8zMmAgb3B0aW9uLCBhbmQgdGhlIGxpbmtlciB3aWxsIGJlIHBhc3NlZAorOm9wdGlvbjpgLXNoYXJlZGAuIElmIGEgY29tcGlsZXIgb3B0aW9uIHJlcXVpcmVzIGFuIGFyZ3VtZW50LCB5b3UnbGwgaGF2ZSB0bworc3VwcGx5IG11bHRpcGxlIDpvcHRpb246YC1YY29tcGlsZXJgIG9wdGlvbnM7IGZvciBleGFtcGxlLCB0byBwYXNzIGBgLXggYysrYGAKK3RoZSA6ZmlsZTpgU2V0dXBgIGZpbGUgd291bGQgaGF2ZSB0byBjb250YWluIGBgLVhjb21waWxlciAteCAtWGNvbXBpbGVyIGMrK2BgLgorCitDb21waWxlciBmbGFncyBjYW4gYWxzbyBiZSBzdXBwbGllZCB0aHJvdWdoIHNldHRpbmcgdGhlIDplbnZ2YXI6YENGTEFHU2AKK2Vudmlyb25tZW50IHZhcmlhYmxlLiBJZiBzZXQsIHRoZSBjb250ZW50cyBvZiA6ZW52dmFyOmBDRkxBR1NgIHdpbGwgYmUgYWRkZWQgdG8KK3RoZSBjb21waWxlciBmbGFncyBzcGVjaWZpZWQgaW4gdGhlICA6ZmlsZTpgU2V0dXBgIGZpbGUuCisKKworLi4gX3BhY2thZ2luZy1ub24tbXMtY29tcGlsZXJzOgorCitVc2luZyBub24tTWljcm9zb2Z0IGNvbXBpbGVycyBvbiBXaW5kb3dzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIHNlY3Rpb25hdXRob3I6OiBSZW5lIExpZWJzY2hlciA8Ui5MaWVic2NoZXJAZ214LmRlPgorCisKKworQm9ybGFuZC9Db2RlR2VhciBDKysKK15eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1RoaXMgc3Vic2VjdGlvbiBkZXNjcmliZXMgdGhlIG5lY2Vzc2FyeSBzdGVwcyB0byB1c2UgUGFja2FnaW5nIHdpdGggdGhlIEJvcmxhbmQKK0MrKyBjb21waWxlciB2ZXJzaW9uIDUuNS4gRmlyc3QgeW91IGhhdmUgdG8ga25vdyB0aGF0IEJvcmxhbmQncyBvYmplY3QgZmlsZQorZm9ybWF0IChPTUYpIGlzIGRpZmZlcmVudCBmcm9tIHRoZSBmb3JtYXQgdXNlZCBieSB0aGUgUHl0aG9uIHZlcnNpb24geW91IGNhbgorZG93bmxvYWQgZnJvbSB0aGUgUHl0aG9uIG9yIEFjdGl2ZVN0YXRlIFdlYiBzaXRlLiAoUHl0aG9uIGlzIGJ1aWx0IHdpdGgKK01pY3Jvc29mdCBWaXN1YWwgQysrLCB3aGljaCB1c2VzIENPRkYgYXMgdGhlIG9iamVjdCBmaWxlIGZvcm1hdC4pIEZvciB0aGlzCityZWFzb24sIHlvdSBoYXZlIHRvIGNvbnZlcnQgUHl0aG9uJ3MgbGlicmFyeSA6ZmlsZTpgcHl0aG9uMjUubGliYCBpbnRvIHRoZQorQm9ybGFuZCBmb3JtYXQuIFlvdSBjYW4gZG8gdGhpcyBhcyBmb2xsb3dzOgorCisuLiBTaG91bGQgd2UgbWVudGlvbiB0aGF0IHVzZXJzIGhhdmUgdG8gY3JlYXRlIGNmZy1maWxlcyBmb3IgdGhlIGNvbXBpbGVyPworLi4gc2VlIGFsc28gaHR0cDovL2NvbW11bml0eS5ib3JsYW5kLmNvbS9hcnRpY2xlLzAsMTQxMCwyMTIwNSwwMC5odG1sCisKKzo6CisKKyAgIGNvZmYyb21mIHB5dGhvbjI1LmxpYiBweXRob24yNV9iY3BwLmxpYgorCitUaGUgOmZpbGU6YGNvZmYyb21mYCBwcm9ncmFtIGNvbWVzIHdpdGggdGhlIEJvcmxhbmQgY29tcGlsZXIuIFRoZSBmaWxlCis6ZmlsZTpgcHl0aG9uMjUubGliYCBpcyBpbiB0aGUgOmZpbGU6YExpYnNgIGRpcmVjdG9yeSBvZiB5b3VyIFB5dGhvbgoraW5zdGFsbGF0aW9uLiBJZiB5b3VyIGV4dGVuc2lvbiB1c2VzIG90aGVyIGxpYnJhcmllcyAoemxpYiwgLi4uKSB5b3UgaGF2ZSB0bworY29udmVydCB0aGVtIHRvby4KKworVGhlIGNvbnZlcnRlZCBmaWxlcyBoYXZlIHRvIHJlc2lkZSBpbiB0aGUgc2FtZSBkaXJlY3RvcmllcyBhcyB0aGUgbm9ybWFsCitsaWJyYXJpZXMuCisKK0hvdyBkb2VzIFBhY2thZ2luZyBtYW5hZ2UgdG8gdXNlIHRoZXNlIGxpYnJhcmllcyB3aXRoIHRoZWlyIGNoYW5nZWQgbmFtZXM/ICBJZgordGhlIGV4dGVuc2lvbiBuZWVkcyBhIGxpYnJhcnkgKGVnLiA6ZmlsZTpgZm9vYCkgUGFja2FnaW5nIGNoZWNrcyBmaXJzdCBpZiBpdAorZmluZHMgYSBsaWJyYXJ5IHdpdGggc3VmZml4IDpmaWxlOmBfYmNwcGAgKGVnLiA6ZmlsZTpgZm9vX2JjcHAubGliYCkgYW5kIHRoZW4KK3VzZXMgdGhpcyBsaWJyYXJ5LiBJbiB0aGUgY2FzZSBpdCBkb2Vzbid0IGZpbmQgc3VjaCBhIHNwZWNpYWwgbGlicmFyeSBpdCB1c2VzCit0aGUgZGVmYXVsdCBuYW1lICg6ZmlsZTpgZm9vLmxpYmAuKSBbI11fCisKK1RvIGxldCBQYWNrYWdpbmcgY29tcGlsZSB5b3VyIGV4dGVuc2lvbiB3aXRoIEJvcmxhbmQsIEMrKyB5b3Ugbm93IGhhdmUgdG8KK3R5cGU6OgorCisgICBweXNldHVwIHJ1biBidWlsZCAtLWNvbXBpbGVyIGJjcHAKKworSWYgeW91IHdhbnQgdG8gdXNlIHRoZSBCb3JsYW5kIEMrKyBjb21waWxlciBhcyB0aGUgZGVmYXVsdCwgeW91IGNvdWxkIHNwZWNpZnkKK3RoaXMgaW4geW91ciBwZXJzb25hbCBvciBzeXN0ZW0td2lkZSBjb25maWd1cmF0aW9uIGZpbGUgZm9yIFBhY2thZ2luZyAoc2VlCitzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1jb25maWctZmlsZXNgLikKKworCisuLiBzZWVhbHNvOjoKKworICAgYEMrK0J1aWxkZXIgQ29tcGlsZXIgPGh0dHA6Ly93d3cuY29kZWdlYXIuY29tL2Rvd25sb2Fkcy9mcmVlL2NwcGJ1aWxkZXI+YF8KKyAgICAgIEluZm9ybWF0aW9uIGFib3V0IHRoZSBmcmVlIEMrKyBjb21waWxlciBmcm9tIEJvcmxhbmQsIGluY2x1ZGluZyBsaW5rcyB0byB0aGUKKyAgICAgIGRvd25sb2FkIHBhZ2VzLgorCisgICBgQ3JlYXRpbmcgUHl0aG9uIEV4dGVuc2lvbnMgVXNpbmcgQm9ybGFuZCdzIEZyZWUgQ29tcGlsZXIgPGh0dHA6Ly93d3cuY3liZXJ1cy5jYS9+Z193aWxsL3B5RXh0ZW5ETC5zaHRtbD5gXworICAgICAgRG9jdW1lbnQgZGVzY3JpYmluZyBob3cgdG8gdXNlIEJvcmxhbmQncyBmcmVlIGNvbW1hbmQtbGluZSBDKysgY29tcGlsZXIgdG8gYnVpbGQKKyAgICAgIFB5dGhvbi4KKworCitHTlUgQyAvIEN5Z3dpbiAvIE1pbkdXCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1RoaXMgc2VjdGlvbiBkZXNjcmliZXMgdGhlIG5lY2Vzc2FyeSBzdGVwcyB0byB1c2UgUGFja2FnaW5nIHdpdGggdGhlIEdOVSBDL0MrKworY29tcGlsZXJzIGluIHRoZWlyIEN5Z3dpbiBhbmQgTWluR1cgZGlzdHJpYnV0aW9ucy4gWyNdXyBGb3IgYSBQeXRob24gaW50ZXJwcmV0ZXIKK3RoYXQgd2FzIGJ1aWx0IHdpdGggQ3lnd2luLCBldmVyeXRoaW5nIHNob3VsZCB3b3JrIHdpdGhvdXQgYW55IG9mIHRoZXNlCitmb2xsb3dpbmcgc3RlcHMuCisKK05vdCBhbGwgZXh0ZW5zaW9ucyBjYW4gYmUgYnVpbHQgd2l0aCBNaW5HVyBvciBDeWd3aW4sIGJ1dCBtYW55IGNhbi4gRXh0ZW5zaW9ucworbW9zdCBsaWtlbHkgdG8gbm90IHdvcmsgYXJlIHRob3NlIHRoYXQgdXNlIEMrKyBvciBkZXBlbmQgb24gTWljcm9zb2Z0IFZpc3VhbCBDCitleHRlbnNpb25zLgorCitUbyBsZXQgUGFja2FnaW5nIGNvbXBpbGUgeW91ciBleHRlbnNpb24gd2l0aCBDeWd3aW4sIHlvdSBoYXZlIHRvIHR5cGU6OgorCisgICBweXNldHVwIHJ1biBidWlsZCAtLWNvbXBpbGVyPWN5Z3dpbgorCithbmQgZm9yIEN5Z3dpbiBpbiBuby1jeWd3aW4gbW9kZSBbI11fIG9yIGZvciBNaW5HVywgdHlwZTo6CisKKyAgIHB5c2V0dXAgcnVuIGJ1aWxkIC0tY29tcGlsZXI9bWluZ3czMgorCitJZiB5b3Ugd2FudCB0byB1c2UgYW55IG9mIHRoZXNlIG9wdGlvbnMvY29tcGlsZXJzIGFzIGRlZmF1bHQsIHlvdSBzaG91bGQKK2NvbnNpZGVyIHdyaXRpbmcgaXQgaW4geW91ciBwZXJzb25hbCBvciBzeXN0ZW0td2lkZSBjb25maWd1cmF0aW9uIGZpbGUgZm9yCitQYWNrYWdpbmcgKHNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1jb25maWctZmlsZXNgLikKKworT2xkZXIgVmVyc2lvbnMgb2YgUHl0aG9uIGFuZCBNaW5HVworIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIgorVGhlIGZvbGxvd2luZyBpbnN0cnVjdGlvbnMgb25seSBhcHBseSBpZiB5b3UncmUgdXNpbmcgYSB2ZXJzaW9uIG9mIFB5dGhvbgoraW5mZXJpb3IgdG8gMi40LjEgd2l0aCBhIE1pbkdXIGluZmVyaW9yIHRvIDMuMC4wICh3aXRoCis6ZmlsZTpgYmludXRpbHMtMi4xMy45MC0yMDAzMDExMS0xYCkuCisKK1RoZXNlIGNvbXBpbGVycyByZXF1aXJlIHNvbWUgc3BlY2lhbCBsaWJyYXJpZXMuIFRoaXMgdGFzayBpcyBtb3JlIGNvbXBsZXggdGhhbgorZm9yIEJvcmxhbmQncyBDKyssIGJlY2F1c2UgdGhlcmUgaXMgbm8gcHJvZ3JhbSB0byBjb252ZXJ0IHRoZSBsaWJyYXJ5LiBGaXJzdAoreW91IGhhdmUgdG8gY3JlYXRlIGEgbGlzdCBvZiBzeW1ib2xzIHdoaWNoIHRoZSBQeXRob24gRExMIGV4cG9ydHMuIChZb3UgY2FuIGZpbmQKK2EgZ29vZCBwcm9ncmFtIGZvciB0aGlzIHRhc2sgYXQKK2h0dHA6Ly93d3cuZW1tZXN0ZWNoLmNvbS9zb2Z0d2FyZS9wZXhwb3J0cy0wLjQzL2Rvd25sb2FkX3BleHBvcnRzLmh0bWwpLgorCisuLiBJIGRvbid0IHVuZGVyc3RhbmQgd2hhdCB0aGUgbmV4dCBsaW5lIG1lYW5zLiAtLWFtaworICAgKGluY2x1c2l2ZSB0aGUgcmVmZXJlbmNlcyBvbiBkYXRhIHN0cnVjdHVyZXMuKQorCis6OgorCisgICBwZXhwb3J0cyBweXRob24yNS5kbGwgPiBweXRob24yNS5kZWYKKworVGhlIGxvY2F0aW9uIG9mIGFuIGluc3RhbGxlZCA6ZmlsZTpgcHl0aG9uMjUuZGxsYCB3aWxsIGRlcGVuZCBvbiB0aGUKK2luc3RhbGxhdGlvbiBvcHRpb25zIGFuZCB0aGUgdmVyc2lvbiBhbmQgbGFuZ3VhZ2Ugb2YgV2luZG93cy4gSW4gYSAianVzdCBmb3IKK21lIiBpbnN0YWxsYXRpb24sIGl0IHdpbGwgYXBwZWFyIGluIHRoZSByb290IG9mIHRoZSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5LiBJbgorYSBzaGFyZWQgaW5zdGFsbGF0aW9uLCBpdCB3aWxsIGJlIGxvY2F0ZWQgaW4gdGhlIHN5c3RlbSBkaXJlY3RvcnkuCisKK1RoZW4geW91IGNhbiBjcmVhdGUgZnJvbSB0aGVzZSBpbmZvcm1hdGlvbiBhbiBpbXBvcnQgbGlicmFyeSBmb3IgZ2NjLiA6OgorCisgICAvY3lnd2luL2Jpbi9kbGx0b29sIC0tZGxsbmFtZSBweXRob24yNS5kbGwgLS1kZWYgcHl0aG9uMjUuZGVmIC0tb3V0cHV0LWxpYiBsaWJweXRob24yNS5hCisKK1RoZSByZXN1bHRpbmcgbGlicmFyeSBoYXMgdG8gYmUgcGxhY2VkIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcworOmZpbGU6YHB5dGhvbjI1LmxpYmAuIChTaG91bGQgYmUgdGhlIDpmaWxlOmBsaWJzYCBkaXJlY3RvcnkgdW5kZXIgeW91ciBQeXRob24KK2luc3RhbGxhdGlvbiBkaXJlY3RvcnkuKQorCitJZiB5b3VyIGV4dGVuc2lvbiB1c2VzIG90aGVyIGxpYnJhcmllcyAoemxpYiwuLi4pIHlvdSBtaWdodCBoYXZlIHRvIGNvbnZlcnQKK3RoZW0gdG9vLiBUaGUgY29udmVydGVkIGZpbGVzIGhhdmUgdG8gcmVzaWRlIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIGFzIHRoZQorbm9ybWFsIGxpYnJhcmllcyBkby4KKworCisuLiBzZWVhbHNvOjoKKworICAgYEJ1aWxkaW5nIFB5dGhvbiBtb2R1bGVzIG9uIE1TIFdpbmRvd3MgcGxhdGZvcm0gd2l0aCBNaW5HVyA8aHR0cDovL3d3dy56b3BlLm9yZy9NZW1iZXJzL2Fscy90aXBzL3dpbjMyX21pbmd3X21vZHVsZXM+YF8KKyAgICAgIEluZm9ybWF0aW9uIGFib3V0IGJ1aWxkaW5nIHRoZSByZXF1aXJlZCBsaWJyYXJpZXMgZm9yIHRoZSBNaW5HVworICAgICAgZW52aXJvbm1lbnQuCisKKworLi4gcnVicmljOjogRm9vdG5vdGVzCisKKy4uIFsjXSBUaGlzIGFsc28gbWVhbnMgeW91IGNvdWxkIHJlcGxhY2UgYWxsIGV4aXN0aW5nIENPRkYtbGlicmFyaWVzIHdpdGgKKyAgIE9NRi1saWJyYXJpZXMgb2YgdGhlIHNhbWUgbmFtZS4KKworLi4gWyNdIENoZWNrIGh0dHA6Ly9zb3VyY2VzLnJlZGhhdC5jb20vY3lnd2luLyBhbmQgaHR0cDovL3d3dy5taW5ndy5vcmcvIGZvcgorICAgbW9yZSBpbmZvcm1hdGlvbi4KKworLi4gWyNdIFRoZW4geW91IGhhdmUgbm8gUE9TSVggZW11bGF0aW9uIGF2YWlsYWJsZSwgYnV0IHlvdSBhbHNvIGRvbid0IG5lZWQKKyAgIDpmaWxlOmBjeWd3aW4xLmRsbGAuCmRpZmYgLS1naXQgYS9Eb2MvaW5zdGFsbC9weXNldHVwLWNvbmZpZy5yc3QgYi9Eb2MvaW5zdGFsbC9weXNldHVwLWNvbmZpZy5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTQ3M2JmZQotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9pbnN0YWxsL3B5c2V0dXAtY29uZmlnLnJzdApAQCAtMCwwICsxLDQ0IEBACisuLiBfcGFja2FnaW5nLXB5c2V0dXAtY29uZmlnOgorCis9PT09PT09PT09PT09PT09PT09PT0KK1B5c2V0dXAgQ29uZmlndXJhdGlvbgorPT09PT09PT09PT09PT09PT09PT09CisKK1B5c2V0dXAgc3VwcG9ydHMgdHdvIGNvbmZpZ3VyYXRpb24gZmlsZXM6IDpmaWxlOmAucHlwaXJjYCBhbmQgOmZpbGU6YHBhY2thZ2luZy5jZmdgLgorCisuLiBGSVhNRSBpbnRlZ3JhdGUgd2l0aCBjb25maWdmaWxlIGluc3RlYWQgb2YgZHVwbGljYXRpbmcKKworQ29uZmlndXJpbmcgaW5kZXhlcworLS0tLS0tLS0tLS0tLS0tLS0tLQorCitZb3UgY2FuIGNvbmZpZ3VyZSBhZGRpdGlvbmFsIGluZGV4ZXMgaW4gOmZpbGU6YC5weXBpcmNgIHRvIGJlIHVzZWQgZm9yIGluZGV4LXJlbGF0ZWQKK29wZXJhdGlvbnMuIEJ5IGRlZmF1bHQsIGFsbCBjb25maWd1cmVkIGluZGV4LXNlcnZlcnMgYW5kIHBhY2thZ2Utc2VydmVycyB3aWxsIGJlIHVzZWQKK2luIGFuIGFkZGl0aXZlIGZhc2hpb24uIFRvIGxpbWl0IG9wZXJhdGlvbnMgdG8gc3BlY2lmaWMgaW5kZXhlcywgdXNlIHRoZSA6b3B0aW9uOmAtLWluZGV4YAorYW5kIDpvcHRpb246YC0tcGFja2FnZS1zZXJ2ZXIgb3B0aW9uc2A6OgorCisgICQgcHlzZXR1cCBpbnN0YWxsIC0taW5kZXggcHlwaSAtLXBhY2thZ2Utc2VydmVyIGRqYW5nbyBzb21lLnByb2plY3QKKworQWRkaW5nIGluZGV4ZXMgdG8gOmZpbGU6YC5weXBpcmNgOjoKKworICBbcGFja2FnaW5nXQorICBpbmRleC1zZXJ2ZXJzID0KKyAgICAgIHB5cGkKKyAgICAgIG90aGVyCisKKyAgcGFja2FnZS1zZXJ2ZXJzID0KKyAgICAgIGRqYW5nbworCisgIFtweXBpXQorICAgICAgcmVwb3NpdG9yeTogPHJlcG9zaXRvcnktdXJsPgorICAgICAgdXNlcm5hbWU6IDx1c2VybmFtZT4KKyAgICAgIHBhc3N3b3JkOiA8cGFzc3dvcmQ+CisKKyAgW290aGVyXQorICAgICAgcmVwb3NpdG9yeTogPHJlcG9zaXRvcnktdXJsPgorICAgICAgdXNlcm5hbWU6IDx1c2VybmFtZT4KKyAgICAgIHBhc3N3b3JkOiA8cGFzc3dvcmQ+CisKKyAgW2RqYW5nb10KKyAgICAgIHJlcG9zaXRvcnk6IDxyZXBvc2l0b3J5LXVybD4KKyAgICAgIHVzZXJuYW1lOiA8dXNlcm5hbWU+CisgICAgICBwYXNzd29yZDogPHBhc3N3b3JkPgpkaWZmIC0tZ2l0IGEvRG9jL2luc3RhbGwvcHlzZXR1cC1zZXJ2ZXJzLnJzdCBiL0RvYy9pbnN0YWxsL3B5c2V0dXAtc2VydmVycy5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzYxMDZkZQotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9pbnN0YWxsL3B5c2V0dXAtc2VydmVycy5yc3QKQEAgLTAsMCArMSw2MSBAQAorLi4gX3BhY2thZ2luZy1weXNldHVwLXNlcnZlcnM6CisKKz09PT09PT09PT09PT09PQorUGFja2FnZSBTZXJ2ZXJzCis9PT09PT09PT09PT09PT0KKworUHlzZXR1cCBzdXBwb3J0cyBpbnN0YWxsaW5nIFB5dGhvbiBwYWNrYWdlcyBmcm9tICpQYWNrYWdlIFNlcnZlcnMqIGluIGFkZGl0aW9uCit0byBQeVBJIGluZGV4ZXMgYW5kIG1pcnJvcnMuCisKK1BhY2thZ2UgU2VydmVycyBhcmUgc2ltcGxlIGRpcmVjdG9yeSBsaXN0aW5ncyBvZiBQeXRob24gZGlzdHJpYnV0aW9ucy4gRGlyZWN0b3JpZXMKK2NhbiBiZSBzZXJ2ZWQgdmlhIEhUVFAgb3IgYSBsb2NhbCBmaWxlIHN5c3RlbS4gVGhpcyBpcyB1c2VmdWwgd2hlbiB5b3Ugd2FudCB0bworZHVtcCBzb3VyY2UgZGlzdHJpYnV0aW9ucyBpbiBhIGRpcmVjdG9yeSBhbmQgbm90IHdvcnJ5IGFib3V0IHRoZSBmdWxsIGluZGV4IHN0cnVjdHVyZS4KKworU2VydmluZyBkaXN0cmlidXRpb25zIGZyb20gQXBhY2hlCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKzo6CisKKyAgICQgbWtkaXIgLXAgL3Zhci93d3cvaHRtbC9weXRob24vZGlzdHJpYnV0aW9ucworICAgJCBjcCAqLnRhci5neiAvdmFyL3d3dy9odG1sL3B5dGhvbi9kaXN0cmlidXRpb25zLworCisgICA8VmlydHVhbEhvc3QgcHl0aG9uLmV4YW1wbGUub3JnOjgwPgorICAgICAgIFNlcnZlckFkbWluIHdlYm1hc3RlckBkb21haW4uY29tCisgICAgICAgRG9jdW1lbnRSb290ICIvdmFyL3d3dy9odG1sL3B5dGhvbiIKKyAgICAgICBTZXJ2ZXJOYW1lIHB5dGhvbi5leGFtcGxlLm9yZworICAgICAgIEVycm9yTG9nIGxvZ3MvcHl0aG9uLmV4YW1wbGUub3JnLWVycm9yLmxvZworICAgICAgIEN1c3RvbUxvZyBsb2dzL3B5dGhvbi5leGFtcGxlLm9yZy1hY2Nlc3MubG9nIGNvbW1vbgorICAgICAgIE9wdGlvbnMgSW5kZXhlcyBGb2xsb3dTeW1MaW5rcyBNdWx0aVZpZXdzCisgICAgICAgRGlyZWN0b3J5SW5kZXggaW5kZXguaHRtbCBpbmRleC5odG0KKworICAgICAgIDxEaXJlY3RvcnkgIi92YXIvd3d3L2h0bWwvcHl0aG9uL2Rpc3RyaWJ1dGlvbnMiPgorICAgICAgICAgICBPcHRpb25zIEluZGV4ZXMgRm9sbG93U3ltTGlua3MgTXVsdGlWaWV3cworICAgICAgICAgICBPcmRlciBhbGxvdyxkZW55CisgICAgICAgICAgIEFsbG93IGZyb20gYWxsCisgICAgICAgPC9EaXJlY3Rvcnk+CisgICA8L1ZpcnR1YWxIb3N0PgorCitBZGQgdGhlIEFwYWNoZSBiYXNlZCBkaXN0cmlidXRpb24gc2VydmVyIHRvIDpmaWxlOmAucHlwaXJjYDo6CisKKyAgIFtwYWNrYWdpbmddCisgICBwYWNrYWdlLXNlcnZlcnMgPQorICAgICAgIGFwYWNoZQorCisgICBbYXBhY2hlXQorICAgcmVwb3NpdG9yeTogaHR0cDovL3B5dGhvbi5leGFtcGxlLm9yZy9kaXN0cmlidXRpb25zLworCisKK1NlcnZpbmcgZGlzdHJpYnV0aW9ucyBmcm9tIGEgZmlsZSBzeXN0ZW0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKzo6CisKKyAgICQgbWtkaXIgLXAgL2RhdGEvcHl0aG9uL2Rpc3RyaWJ1dGlvbnMKKyAgICQgY3AgKi50YXIuZ3ogL2RhdGEvcHl0aG9uL2Rpc3RyaWJ1dGlvbnMvCisKK0FkZCB0aGUgZGlyZWN0b3J5IHRvIDpmaWxlOmAucHlwaXJjYDo6CisKKyAgIFtwYWNrYWdpbmddCisgICBwYWNrYWdlLXNlcnZlcnMgPQorICAgICAgIGxvY2FsCisKKyAgIFtsb2NhbF0KKyAgIHJlcG9zaXRvcnk6IGZpbGU6Ly8vZGF0YS9weXRob24vZGlzdHJpYnV0aW9ucy8KZGlmZiAtLWdpdCBhL0RvYy9pbnN0YWxsL3B5c2V0dXAucnN0IGIvRG9jL2luc3RhbGwvcHlzZXR1cC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQ3MmMyNAotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9pbnN0YWxsL3B5c2V0dXAucnN0CkBAIC0wLDAgKzEsMTY0IEBACisuLiBfcGFja2FnaW5nLXB5c2V0dXA6CisKKz09PT09PT09PT09PT09PT0KK1B5c2V0dXAgVHV0b3JpYWwKKz09PT09PT09PT09PT09PT0KKworR2V0dGluZyBzdGFydGVkCistLS0tLS0tLS0tLS0tLS0KKworUHlzZXR1cCBpcyBhIHNpbXBsZSBzY3JpcHQgdGhhdCBzdXBwb3J0cyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOgorCistIGluc3RhbGwsIHJlbW92ZSwgbGlzdCwgYW5kIHZlcmlmeSBQeXRob24gcGFja2FnZXM7CistIHNlYXJjaCBmb3IgYXZhaWxhYmxlIHBhY2thZ2VzIG9uIFB5UEkgb3IgYW55ICpTaW1wbGUgSW5kZXgqOworLSB2ZXJpZnkgaW5zdGFsbGVkIHBhY2thZ2VzIChtZDVzdW0sIGluc3RhbGxlZCBmaWxlcywgdmVyc2lvbikuCisKKworRmluZGluZyBvdXQgd2hhdCdzIGluc3RhbGxlZAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitQeXNldHVwIG1ha2VzIGl0IGVhc3kgdG8gZmluZCBvdXQgd2hhdCBQeXRob24gcGFja2FnZXMgYXJlIGluc3RhbGxlZDo6CisKKyAgICQgcHlzZXR1cCBsaXN0IHZpcnR1YWxlbnYKKyAgICd2aXJ0dWFsZW52JyAxLjYgYXQgJy9vcHQvcHl0aG9uMy4zL2xpYi9weXRob24zLjMvc2l0ZS1wYWNrYWdlcy92aXJ0dWFsZW52LTEuNi1weTMuMy5lZ2ctaW5mbycKKworICAgJCBweXNldHVwIGxpc3QKKyAgICdweXZlcmlmeScgMC44LjEgYXQgJy9vcHQvcHl0aG9uMy4zL2xpYi9weXRob24zLjMvc2l0ZS1wYWNrYWdlcy9weXZlcmlmeS0wLjguMS5kaXN0LWluZm8nCisgICAndmlydHVhbGVudicgMS42IGF0ICcvb3B0L3B5dGhvbjMuMy9saWIvcHl0aG9uMy4zL3NpdGUtcGFja2FnZXMvdmlydHVhbGVudi0xLjYtcHkzLjMuZWdnLWluZm8nCisgICAuLi4KKworCitJbnN0YWxsaW5nIGEgZGlzdHJpYnV0aW9uCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1B5c2V0dXAgY2FuIGluc3RhbGwgYSBQeXRob24gcHJvamVjdCBmcm9tIHRoZSBmb2xsb3dpbmcgc291cmNlczoKKworLSBQeVBJIGFuZCBTaW1wbGUgSW5kZXhlczsKKy0gc291cmNlIGRpcmVjdG9yaWVzIGNvbnRhaW5pbmcgYSB2YWxpZCA6ZmlsZTpgc2V0dXAucHlgIG9yIDpmaWxlOmBzZXR1cC5jZmdgOworLSBkaXN0cmlidXRpb24gc291cmNlIGFyY2hpdmVzICg6ZmlsZTpgcHJvamVjdC0xLjAudGFyLmd6YCwgOmZpbGU6YHByb2plY3QtMS4wLnppcGApOworLSBIVFRQIChodHRwOi8vaG9zdC9wYWNrYWdlcy9wcm9qZWN0LTEuMC50YXIuZ3opLgorCisKK0luc3RhbGxpbmcgZnJvbSBQeVBJIGFuZCBTaW1wbGUgSW5kZXhlczo6CisKKyAgICQgcHlzZXR1cCBpbnN0YWxsIHByb2plY3QKKyAgICQgcHlzZXR1cCBpbnN0YWxsIHByb2plY3Q9PTEuMAorCitJbnN0YWxsaW5nIGZyb20gYSBkaXN0cmlidXRpb24gc291cmNlIGFyY2hpdmU6OgorCisgICAkIHB5c2V0dXAgaW5zdGFsbCBwcm9qZWN0LTEuMC50YXIuZ3oKKworSW5zdGFsbGluZyBmcm9tIGEgc291cmNlIGRpcmVjdG9yeSBjb250YWluaW5nIGEgdmFsaWQgOmZpbGU6YHNldHVwLnB5YCBvcgorOmZpbGU6YHNldHVwLmNmZ2A6OgorCisgICAkIGNkIHBhdGgvdG8vc291cmNlL2RpcmVjdG9yeQorICAgJCBweXNldHVwIGluc3RhbGwKKworICAgJCBweXNldHVwIGluc3RhbGwgcGF0aC90by9zb3VyY2UvZGlyZWN0b3J5CisKK0luc3RhbGxpbmcgZnJvbSBIVFRQOjoKKworICAgJCBweXNldHVwIGluc3RhbGwgaHR0cDovL2hvc3QvcGFja2FnZXMvcHJvamVjdC0xLjAudGFyLmd6CisKKworUmV0cmlldmluZyBtZXRhZGF0YQorLS0tLS0tLS0tLS0tLS0tLS0tLQorCitZb3UgY2FuIGdhdGhlciBtZXRhZGF0YSBmcm9tIHR3byBzb3VyY2VzLCBhIHByb2plY3QncyBzb3VyY2UgZGlyZWN0b3J5IG9yIGFuCitpbnN0YWxsZWQgZGlzdHJpYnV0aW9uLiBUaGUgYHB5c2V0dXAgbWV0YWRhdGFgIGNvbW1hbmQgY2FuIHJldHJpZXZlIG9uZSBvcgorbW9yZSBtZXRhZGF0YSBmaWVsZHMgdXNpbmcgdGhlIGAtZmAgb3B0aW9uIGFuZCBhIG1ldGFkYXRhIGZpZWxkIGFzIHRoZQorYXJndW1lbnQuIDo6CisKKyAgICQgcHlzZXR1cCBtZXRhZGF0YSB2aXJ0dWFsZW52IC1mIHZlcnNpb24gLWYgbmFtZQorICAgVmVyc2lvbjoKKyAgICAgICAxLjYKKyAgIE5hbWU6CisgICAgICAgdmlydHVhbGVudgorCisgICAkIHB5c2V0dXAgbWV0YWRhdGEgdmlydHVhbGVudgorICAgTWV0YWRhdGEtVmVyc2lvbjoKKyAgICAgICAxLjAKKyAgIE5hbWU6CisgICAgICAgdmlydHVhbGVudgorICAgVmVyc2lvbjoKKyAgICAgICAxLjYKKyAgIFBsYXRmb3JtOgorICAgICAgIFVOS05PV04KKyAgIFN1bW1hcnk6CisgICAgICAgVmlydHVhbCBQeXRob24gRW52aXJvbm1lbnQgYnVpbGRlcgorICAgLi4uCisKKy4uIHNlZWFsc286OgorCisgICBUaGVyZSBhcmUgdGhyZWUgbWV0YWRhdGEgdmVyc2lvbnMsIDEuMCwgMS4xLCBhbmQgMS4yLiBUaGUgZm9sbG93aW5nIFBFUHMKKyAgIGRlc2NyaWJlIHNwZWNpZmljcyBvZiB0aGUgZmllbGQgbmFtZXMsIGFuZCB0aGVpciBzZW1hbnRpY3MgYW5kIHVzYWdlLiAgMS4wCisgICA6UEVQOmAyNDFgLCAxLjEgOlBFUDpgMzE0YCwgYW5kIDEuMiA6UEVQOmAzNDVgCisKKworUmVtb3ZpbmcgYSBkaXN0cmlidXRpb24KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1lvdSBjYW4gcmVtb3ZlIG9uZSBvciBtb3JlIGluc3RhbGxlZCBkaXN0cmlidXRpb25zIHVzaW5nIHRoZSBgcHlzZXR1cCByZW1vdmVgCitjb21tYW5kOjoKKworICAgJCBweXNldHVwIHJlbW92ZSB2aXJ0dWFsZW52CisgICByZW1vdmluZyAndmlydHVhbGVudic6CisgICAgIC9vcHQvcHl0aG9uMy4zL2xpYi9weXRob24zLjMvc2l0ZS1wYWNrYWdlcy92aXJ0dWFsZW52LTEuNi1weTMuMy5lZ2ctaW5mby9kZXBlbmRlbmN5X2xpbmtzLnR4dAorICAgICAvb3B0L3B5dGhvbjMuMy9saWIvcHl0aG9uMy4zL3NpdGUtcGFja2FnZXMvdmlydHVhbGVudi0xLjYtcHkzLjMuZWdnLWluZm8vZW50cnlfcG9pbnRzLnR4dAorICAgICAvb3B0L3B5dGhvbjMuMy9saWIvcHl0aG9uMy4zL3NpdGUtcGFja2FnZXMvdmlydHVhbGVudi0xLjYtcHkzLjMuZWdnLWluZm8vbm90LXppcC1zYWZlCisgICAgIC9vcHQvcHl0aG9uMy4zL2xpYi9weXRob24zLjMvc2l0ZS1wYWNrYWdlcy92aXJ0dWFsZW52LTEuNi1weTMuMy5lZ2ctaW5mby9QS0ctSU5GTworICAgICAvb3B0L3B5dGhvbjMuMy9saWIvcHl0aG9uMy4zL3NpdGUtcGFja2FnZXMvdmlydHVhbGVudi0xLjYtcHkzLjMuZWdnLWluZm8vU09VUkNFUy50eHQKKyAgICAgL29wdC9weXRob24zLjMvbGliL3B5dGhvbjMuMy9zaXRlLXBhY2thZ2VzL3ZpcnR1YWxlbnYtMS42LXB5My4zLmVnZy1pbmZvL3RvcF9sZXZlbC50eHQKKyAgIFByb2NlZWQgKHkvbik/IHkKKyAgIHN1Y2Nlc3M6IHJlbW92ZWQgNiBmaWxlcyBhbmQgMSBkaXJzCisKK1RoZSBvcHRpb25hbCAnLXknIGFyZ3VtZW50IGF1dG8gY29uZmlybXMsIHNraXBwaW5nIHRoZSBjb25mb3JtYXRpb24gcHJvbXB0OjoKKworICAkIHB5c2V0dXAgcmVtb3ZlIHZpcnR1YWxlbnYgLXkKKworCitHZXR0aW5nIGhlbHAKKy0tLS0tLS0tLS0tLQorCitBbGwgcHlzZXR1cCBhY3Rpb25zIHRha2UgdGhlIGAtaGAgYW5kIGAtLWhlbHBgIG9wdGlvbnMgd2hpY2ggcHJpbnRzIHRoZSBjb21tYW5kcworaGVscCBzdHJpbmcgdG8gc3Rkb3V0LiA6OgorCisgICAkIHB5c2V0dXAgcmVtb3ZlIC1oCisgICBVc2FnZTogcHlzZXR1cCByZW1vdmUgZGlzdCBbLXldCisgICAgICBvcjogcHlzZXR1cCByZW1vdmUgLS1oZWxwCisKKyAgIFVuaW5zdGFsbCBhIFB5dGhvbiBwYWNrYWdlLgorCisgICBwb3NpdGlvbmFsIGFyZ3VtZW50czoKKyAgICAgIGRpc3QgIGluc3RhbGxlZCBkaXN0cmlidXRpb24gbmFtZQorCisgICBvcHRpb25hbCBhcmd1bWVudHM6CisgICAgICAteSAgYXV0byBjb25maXJtIHBhY2thZ2UgcmVtb3ZhbAorCitHZXR0aW5nIGEgbGlzdCBvZiBhbGwgcHlzZXR1cCBhY3Rpb25zIGFuZCBnbG9iYWwgb3B0aW9uczo6CisKKyAgICQgcHlzZXR1cCAtLWhlbHAKKyAgIFVzYWdlOiBweXNldHVwIFtvcHRpb25zXSBhY3Rpb24gW2FjdGlvbl9vcHRpb25zXQorCisgICBBY3Rpb25zOgorICAgICAgIHJ1bjogUnVuIG9uZSBvciBzZXZlcmFsIGNvbW1hbmRzCisgICAgICAgbWV0YWRhdGE6IERpc3BsYXkgdGhlIG1ldGFkYXRhIG9mIGEgcHJvamVjdAorICAgICAgIGluc3RhbGw6IEluc3RhbGwgYSBwcm9qZWN0CisgICAgICAgcmVtb3ZlOiBSZW1vdmUgYSBwcm9qZWN0CisgICAgICAgc2VhcmNoOiBTZWFyY2ggZm9yIGEgcHJvamVjdCBpbiB0aGUgaW5kZXhlcworICAgICAgIGxpc3Q6IExpc3QgaW5zdGFsbGVkIHByb2plY3RzCisgICAgICAgZ3JhcGg6IERpc3BsYXkgYSBncmFwaAorICAgICAgIGNyZWF0ZTogQ3JlYXRlIGEgcHJvamVjdAorICAgICAgIGdlbmVyYXRlLXNldHVwOiBHZW5lcmF0ZSBhIGJhY2t3YXJkLWNvbXBhdGlibGUgc2V0dXAucHkKKworICAgVG8gZ2V0IG1vcmUgaGVscCBvbiBhbiBhY3Rpb24sIHVzZToKKworICAgICAgIHB5c2V0dXAgYWN0aW9uIC0taGVscAorCisgICBHbG9iYWwgb3B0aW9uczoKKyAgICAgICAtLXZlcmJvc2UgKC12KSAgcnVuIHZlcmJvc2VseSAoZGVmYXVsdCkKKyAgICAgICAtLXF1aWV0ICgtcSkgICAgcnVuIHF1aWV0bHkgKHR1cm5zIHZlcmJvc2l0eSBvZmYpCisgICAgICAgLS1kcnktcnVuICgtbikgIGRvbid0IGFjdHVhbGx5IGRvIGFueXRoaW5nCisgICAgICAgLS1oZWxwICgtaCkgICAgIHNob3cgZGV0YWlsZWQgaGVscCBtZXNzYWdlCisgICAgICAgLS1uby11c2VyLWNmZyAgIGlnbm9yZSBweWRpc3R1dGlscy5jZmcgaW4geW91ciBob21lIGRpcmVjdG9yeQorICAgICAgIC0tdmVyc2lvbiAgICAgICBEaXNwbGF5IHRoZSB2ZXJzaW9uCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9fdGhyZWFkLnJzdCBiL0RvYy9saWJyYXJ5L190aHJlYWQucnN0CmluZGV4IDM2OWU5Y2QuLmU3ZTc1MDQgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L190aHJlYWQucnN0CisrKyBiL0RvYy9saWJyYXJ5L190aHJlYWQucnN0CkBAIC0zNSw2ICszNSw5IEBACiAKICAgIFJhaXNlZCBvbiB0aHJlYWQtc3BlY2lmaWMgZXJyb3JzLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhpcyBpcyBub3cgYSBzeW5vbnltIG9mIHRoZSBidWlsdC1pbiA6ZXhjOmBSdW50aW1lRXJyb3JgLgorCiAKIC4uIGRhdGE6OiBMb2NrVHlwZQogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9hYmMucnN0IGIvRG9jL2xpYnJhcnkvYWJjLnJzdAppbmRleCAxMDQ4YjI0Li42ZjQyMjIyIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9hYmMucnN0CisrKyBiL0RvYy9saWJyYXJ5L2FiYy5yc3QKQEAgLTE4LDcgKzE4LDcgQEAKIAogVGhlIDptb2Q6YGNvbGxlY3Rpb25zYCBtb2R1bGUgaGFzIHNvbWUgY29uY3JldGUgY2xhc3NlcyB0aGF0IGRlcml2ZSBmcm9tCiBBQkNzOyB0aGVzZSBjYW4sIG9mIGNvdXJzZSwgYmUgZnVydGhlciBkZXJpdmVkLiBJbiBhZGRpdGlvbiB0aGUKLTptb2Q6YGNvbGxlY3Rpb25zYCBtb2R1bGUgaGFzIHNvbWUgQUJDcyB0aGF0IGNhbiBiZSB1c2VkIHRvIHRlc3Qgd2hldGhlcgorOm1vZDpgY29sbGVjdGlvbnMuYWJjYCBzdWJtb2R1bGUgaGFzIHNvbWUgQUJDcyB0aGF0IGNhbiBiZSB1c2VkIHRvIHRlc3Qgd2hldGhlcgogYSBjbGFzcyBvciBpbnN0YW5jZSBwcm92aWRlcyBhIHBhcnRpY3VsYXIgaW50ZXJmYWNlLCBmb3IgZXhhbXBsZSwgaXMgaXQKIGhhc2hhYmxlIG9yIGEgbWFwcGluZy4KIApAQCAtNTUsNiArNTUsOSBAQAogICAgICAgICBhc3NlcnQgaXNzdWJjbGFzcyh0dXBsZSwgTXlBQkMpCiAgICAgICAgIGFzc2VydCBpc2luc3RhbmNlKCgpLCBNeUFCQykKIAorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICAgIFJldHVybnMgdGhlIHJlZ2lzdGVyZWQgc3ViY2xhc3MsIHRvIGFsbG93IHVzYWdlIGFzIGEgY2xhc3MgZGVjb3JhdG9yLgorCiAgICBZb3UgY2FuIGFsc28gb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4gYW4gYWJzdHJhY3QgYmFzZSBjbGFzczoKIAogICAgLi4gbWV0aG9kOjogX19zdWJjbGFzc2hvb2tfXyhzdWJjbGFzcykKQEAgLTEyNCwxOSArMTI3LDE4IEBACiAgICBhdmFpbGFibGUgYXMgYSBtZXRob2Qgb2YgYGBGb29gYCwgc28gaXQgaXMgcHJvdmlkZWQgc2VwYXJhdGVseS4KIAogCi1JdCBhbHNvIHByb3ZpZGVzIHRoZSBmb2xsb3dpbmcgZGVjb3JhdG9yczoKK1RoZSA6bW9kOmBhYmNgIG1vZHVsZSBhbHNvIHByb3ZpZGVzIHRoZSBmb2xsb3dpbmcgZGVjb3JhdG9yczoKIAogLi4gZGVjb3JhdG9yOjogYWJzdHJhY3RtZXRob2QoZnVuY3Rpb24pCiAKICAgIEEgZGVjb3JhdG9yIGluZGljYXRpbmcgYWJzdHJhY3QgbWV0aG9kcy4KIAotICAgVXNpbmcgdGhpcyBkZWNvcmF0b3IgcmVxdWlyZXMgdGhhdCB0aGUgY2xhc3MncyBtZXRhY2xhc3MgaXMgOmNsYXNzOmBBQkNNZXRhYCBvcgotICAgaXMgZGVyaXZlZCBmcm9tIGl0LgotICAgQSBjbGFzcyB0aGF0IGhhcyBhIG1ldGFjbGFzcyBkZXJpdmVkIGZyb20gOmNsYXNzOmBBQkNNZXRhYAotICAgY2Fubm90IGJlIGluc3RhbnRpYXRlZCB1bmxlc3MgYWxsIG9mIGl0cyBhYnN0cmFjdCBtZXRob2RzIGFuZAotICAgcHJvcGVydGllcyBhcmUgb3ZlcnJpZGRlbi4KLSAgIFRoZSBhYnN0cmFjdCBtZXRob2RzIGNhbiBiZSBjYWxsZWQgdXNpbmcgYW55IG9mIHRoZSBub3JtYWwgJ3N1cGVyJyBjYWxsCi0gICBtZWNoYW5pc21zLgorICAgVXNpbmcgdGhpcyBkZWNvcmF0b3IgcmVxdWlyZXMgdGhhdCB0aGUgY2xhc3MncyBtZXRhY2xhc3MgaXMgOmNsYXNzOmBBQkNNZXRhYAorICAgb3IgaXMgZGVyaXZlZCBmcm9tIGl0LiAgQSBjbGFzcyB0aGF0IGhhcyBhIG1ldGFjbGFzcyBkZXJpdmVkIGZyb20KKyAgIDpjbGFzczpgQUJDTWV0YWAgY2Fubm90IGJlIGluc3RhbnRpYXRlZCB1bmxlc3MgYWxsIG9mIGl0cyBhYnN0cmFjdCBtZXRob2RzCisgICBhbmQgcHJvcGVydGllcyBhcmUgb3ZlcnJpZGRlbi4gIFRoZSBhYnN0cmFjdCBtZXRob2RzIGNhbiBiZSBjYWxsZWQgdXNpbmcgYW55CisgICBvZiB0aGUgbm9ybWFsICdzdXBlcicgY2FsbCBtZWNoYW5pc21zLiAgOmZ1bmM6YGFic3RyYWN0bWV0aG9kYCBtYXkgYmUgdXNlZAorICAgdG8gZGVjbGFyZSBhYnN0cmFjdCBtZXRob2RzIGZvciBwcm9wZXJ0aWVzIGFuZCBkZXNjcmlwdG9ycy4KIAogICAgRHluYW1pY2FsbHkgYWRkaW5nIGFic3RyYWN0IG1ldGhvZHMgdG8gYSBjbGFzcywgb3IgYXR0ZW1wdGluZyB0byBtb2RpZnkgdGhlCiAgICBhYnN0cmFjdGlvbiBzdGF0dXMgb2YgYSBtZXRob2Qgb3IgY2xhc3Mgb25jZSBpdCBpcyBjcmVhdGVkLCBhcmUgbm90CkBAIC0xNDQsMTIgKzE0Niw1MiBAQAogICAgcmVndWxhciBpbmhlcml0YW5jZTsgInZpcnR1YWwgc3ViY2xhc3NlcyIgcmVnaXN0ZXJlZCB3aXRoIHRoZSBBQkMncwogICAgOm1ldGg6YHJlZ2lzdGVyYCBtZXRob2QgYXJlIG5vdCBhZmZlY3RlZC4KIAotICAgVXNhZ2U6OgorICAgV2hlbiA6ZnVuYzpgYWJzdHJhY3RtZXRob2RgIGlzIGFwcGxpZWQgaW4gY29tYmluYXRpb24gd2l0aCBvdGhlciBtZXRob2QKKyAgIGRlc2NyaXB0b3JzLCBpdCBzaG91bGQgYmUgYXBwbGllZCBhcyB0aGUgaW5uZXJtb3N0IGRlY29yYXRvciwgYXMgc2hvd24gaW4KKyAgIHRoZSBmb2xsb3dpbmcgdXNhZ2UgZXhhbXBsZXM6OgogCiAgICAgICBjbGFzcyBDKG1ldGFjbGFzcz1BQkNNZXRhKToKICAgICAgICAgICBAYWJzdHJhY3RtZXRob2QKICAgICAgICAgICBkZWYgbXlfYWJzdHJhY3RfbWV0aG9kKHNlbGYsIC4uLik6CiAgICAgICAgICAgICAgIC4uLgorICAgICAgICAgIEBjbGFzc21ldGhvZAorICAgICAgICAgIEBhYnN0cmFjdG1ldGhvZAorICAgICAgICAgIGRlZiBteV9hYnN0cmFjdF9jbGFzc21ldGhvZChjbHMsIC4uLik6CisgICAgICAgICAgICAgIC4uLgorICAgICAgICAgIEBzdGF0aWNtZXRob2QKKyAgICAgICAgICBAYWJzdHJhY3RtZXRob2QKKyAgICAgICAgICBkZWYgbXlfYWJzdHJhY3Rfc3RhdGljbWV0aG9kKC4uLik6CisgICAgICAgICAgICAgIC4uLgorCisgICAgICAgICAgQHByb3BlcnR5CisgICAgICAgICAgQGFic3RyYWN0bWV0aG9kCisgICAgICAgICAgZGVmIG15X2Fic3RyYWN0X3Byb3BlcnR5KHNlbGYpOgorICAgICAgICAgICAgICAuLi4KKyAgICAgICAgICBAbXlfYWJzdHJhY3RfcHJvcGVydHkuc2V0dGVyCisgICAgICAgICAgQGFic3RyYWN0bWV0aG9kCisgICAgICAgICAgZGVmIG15X2Fic3RyYWN0X3Byb3BlcnR5KHNlbGYsIHZhbCk6CisgICAgICAgICAgICAgIC4uLgorCisgICAgICAgICAgQGFic3RyYWN0bWV0aG9kCisgICAgICAgICAgZGVmIF9nZXRfeChzZWxmKToKKyAgICAgICAgICAgICAgLi4uCisgICAgICAgICAgQGFic3RyYWN0bWV0aG9kCisgICAgICAgICAgZGVmIF9zZXRfeChzZWxmLCB2YWwpOgorICAgICAgICAgICAgICAuLi4KKyAgICAgICAgICB4ID0gcHJvcGVydHkoX2dldF94LCBfc2V0X3gpCisKKyAgIEluIG9yZGVyIHRvIGNvcnJlY3RseSBpbnRlcm9wZXJhdGUgd2l0aCB0aGUgYWJzdHJhY3QgYmFzZSBjbGFzcyBtYWNoaW5lcnksCisgICB0aGUgZGVzY3JpcHRvciBtdXN0IGlkZW50aWZ5IGl0c2VsZiBhcyBhYnN0cmFjdCB1c2luZworICAgOmF0dHI6YF9faXNhYnN0cmFjdG1ldGhvZF9fYC4gSW4gZ2VuZXJhbCwgdGhpcyBhdHRyaWJ1dGUgc2hvdWxkIGJlIGBgVHJ1ZWBgCisgICBpZiBhbnkgb2YgdGhlIG1ldGhvZHMgdXNlZCB0byBjb21wb3NlIHRoZSBkZXNjcmlwdG9yIGFyZSBhYnN0cmFjdC4gRm9yCisgICBleGFtcGxlLCBQeXRob24ncyBidWlsdC1pbiBwcm9wZXJ0eSBkb2VzIHRoZSBlcXVpdmFsZW50IG9mOjoKKworICAgICAgY2xhc3MgRGVzY3JpcHRvcjoKKyAgICAgICAgICAuLi4KKyAgICAgICAgICBAcHJvcGVydHkKKyAgICAgICAgICBkZWYgX19pc2Fic3RyYWN0bWV0aG9kX18oc2VsZik6CisgICAgICAgICAgICAgIHJldHVybiBhbnkoZ2V0YXR0cihmLCAnX19pc2Fic3RyYWN0bWV0aG9kX18nLCBGYWxzZSkgZm9yCisgICAgICAgICAgICAgICAgICAgICAgICAgZiBpbiAoc2VsZi5fZmdldCwgc2VsZi5fZnNldCwgc2VsZi5fZmRlbCkpCiAKICAgIC4uIG5vdGU6OgogCkBAIC0xNzQsNiArMjE2LDggQEAKICAgICAgICAgICAgICAgLi4uCiAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgorICAgLi4gZGVwcmVjYXRlZDo6IDMuMworICAgICAgIFVzZSA6Y2xhc3M6YGNsYXNzbWV0aG9kYCB3aXRoIDpmdW5jOmBhYnN0cmFjdG1ldGhvZGAgaW5zdGVhZAogCiAKIC4uIGRlY29yYXRvcjo6IGFic3RyYWN0c3RhdGljbWV0aG9kKGZ1bmN0aW9uKQpAQCAtMTg5LDE4ICsyMzMsMTkgQEAKICAgICAgICAgICAgICAgLi4uCiAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgorICAgLi4gZGVwcmVjYXRlZDo6IDMuMworICAgICAgIFVzZSA6Y2xhc3M6YHN0YXRpY21ldGhvZGAgd2l0aCA6ZnVuYzpgYWJzdHJhY3RtZXRob2RgIGluc3RlYWQKIAogCi0uLiBmdW5jdGlvbjo6IGFic3RyYWN0cHJvcGVydHkoZmdldD1Ob25lLCBmc2V0PU5vbmUsIGZkZWw9Tm9uZSwgZG9jPU5vbmUpCisuLiBkZWNvcmF0b3I6OiBhYnN0cmFjdHByb3BlcnR5KGZnZXQ9Tm9uZSwgZnNldD1Ob25lLCBmZGVsPU5vbmUsIGRvYz1Ob25lKQogCiAgICBBIHN1YmNsYXNzIG9mIHRoZSBidWlsdC1pbiA6ZnVuYzpgcHJvcGVydHlgLCBpbmRpY2F0aW5nIGFuIGFic3RyYWN0IHByb3BlcnR5LgogCi0gICBVc2luZyB0aGlzIGZ1bmN0aW9uIHJlcXVpcmVzIHRoYXQgdGhlIGNsYXNzJ3MgbWV0YWNsYXNzIGlzIDpjbGFzczpgQUJDTWV0YWAgb3IKLSAgIGlzIGRlcml2ZWQgZnJvbSBpdC4KLSAgIEEgY2xhc3MgdGhhdCBoYXMgYSBtZXRhY2xhc3MgZGVyaXZlZCBmcm9tIDpjbGFzczpgQUJDTWV0YWAgY2Fubm90IGJlCi0gICBpbnN0YW50aWF0ZWQgdW5sZXNzIGFsbCBvZiBpdHMgYWJzdHJhY3QgbWV0aG9kcyBhbmQgcHJvcGVydGllcyBhcmUgb3ZlcnJpZGRlbi4KLSAgIFRoZSBhYnN0cmFjdCBwcm9wZXJ0aWVzIGNhbiBiZSBjYWxsZWQgdXNpbmcgYW55IG9mIHRoZSBub3JtYWwKLSAgICdzdXBlcicgY2FsbCBtZWNoYW5pc21zLgorICAgVXNpbmcgdGhpcyBmdW5jdGlvbiByZXF1aXJlcyB0aGF0IHRoZSBjbGFzcydzIG1ldGFjbGFzcyBpcyA6Y2xhc3M6YEFCQ01ldGFgCisgICBvciBpcyBkZXJpdmVkIGZyb20gaXQuIEEgY2xhc3MgdGhhdCBoYXMgYSBtZXRhY2xhc3MgZGVyaXZlZCBmcm9tCisgICA6Y2xhc3M6YEFCQ01ldGFgIGNhbm5vdCBiZSBpbnN0YW50aWF0ZWQgdW5sZXNzIGFsbCBvZiBpdHMgYWJzdHJhY3QgbWV0aG9kcworICAgYW5kIHByb3BlcnRpZXMgYXJlIG92ZXJyaWRkZW4uIFRoZSBhYnN0cmFjdCBwcm9wZXJ0aWVzIGNhbiBiZSBjYWxsZWQgdXNpbmcKKyAgIGFueSBvZiB0aGUgbm9ybWFsICdzdXBlcicgY2FsbCBtZWNoYW5pc21zLgogCiAgICBVc2FnZTo6CiAKQEAgLTIxNyw2ICsyNjIsOSBAQAogICAgICAgICAgIGRlZiBzZXR4KHNlbGYsIHZhbHVlKTogLi4uCiAgICAgICAgICAgeCA9IGFic3RyYWN0cHJvcGVydHkoZ2V0eCwgc2V0eCkKIAorICAgLi4gZGVwcmVjYXRlZDo6IDMuMworICAgICAgIFVzZSA6Y2xhc3M6YHByb3BlcnR5YCB3aXRoIDpmdW5jOmBhYnN0cmFjdG1ldGhvZGAgaW5zdGVhZAorCiAKIC4uIHJ1YnJpYzo6IEZvb3Rub3RlcwogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9hcmNoaXZpbmcucnN0IGIvRG9jL2xpYnJhcnkvYXJjaGl2aW5nLnJzdAppbmRleCA3NWQxMzdjLi5jOTI4NDk0IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9hcmNoaXZpbmcucnN0CisrKyBiL0RvYy9saWJyYXJ5L2FyY2hpdmluZy5yc3QKQEAgLTUsOCArNSw5IEBACiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIAogVGhlIG1vZHVsZXMgZGVzY3JpYmVkIGluIHRoaXMgY2hhcHRlciBzdXBwb3J0IGRhdGEgY29tcHJlc3Npb24gd2l0aCB0aGUgemxpYiwKLWd6aXAsIGFuZCBiemlwMiBhbGdvcml0aG1zLCBhbmQgIHRoZSBjcmVhdGlvbiBvZiBaSVAtIGFuZCB0YXItZm9ybWF0IGFyY2hpdmVzLgotU2VlIGFsc28gOnJlZjpgYXJjaGl2aW5nLW9wZXJhdGlvbnNgIHByb3ZpZGVkIGJ5IHRoZSA6bW9kOmBzaHV0aWxgIG1vZHVsZS4KK2d6aXAsIGJ6aXAyIGFuZCBsem1hIGFsZ29yaXRobXMsIGFuZCB0aGUgY3JlYXRpb24gb2YgWklQLSBhbmQgdGFyLWZvcm1hdAorYXJjaGl2ZXMuICBTZWUgYWxzbyA6cmVmOmBhcmNoaXZpbmctb3BlcmF0aW9uc2AgcHJvdmlkZWQgYnkgdGhlIDptb2Q6YHNodXRpbGAKK21vZHVsZS4KIAogCiAuLiB0b2N0cmVlOjoKQEAgLTE0LDUgKzE1LDYgQEAKICAgIHpsaWIucnN0CiAgICBnemlwLnJzdAogICAgYnoyLnJzdAorICAgbHptYS5yc3QKICAgIHppcGZpbGUucnN0CiAgICB0YXJmaWxlLnJzdApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvYXJncGFyc2UucnN0IGIvRG9jL2xpYnJhcnkvYXJncGFyc2UucnN0CmluZGV4IDc5YTk4Y2IuLmEzYTY3YjUgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2FyZ3BhcnNlLnJzdAorKysgYi9Eb2MvbGlicmFyeS9hcmdwYXJzZS5yc3QKQEAgLTM2MiwxNiArMzYyLDE2IEBACiBeXl5eXl5eXl5eXl5eXl4KIAogOmNsYXNzOmBBcmd1bWVudFBhcnNlcmAgb2JqZWN0cyBhbGxvdyB0aGUgaGVscCBmb3JtYXR0aW5nIHRvIGJlIGN1c3RvbWl6ZWQgYnkKLXNwZWNpZnlpbmcgYW4gYWx0ZXJuYXRlIGZvcm1hdHRpbmcgY2xhc3MuICBDdXJyZW50bHksIHRoZXJlIGFyZSB0aHJlZSBzdWNoCitzcGVjaWZ5aW5nIGFuIGFsdGVybmF0ZSBmb3JtYXR0aW5nIGNsYXNzLiAgQ3VycmVudGx5LCB0aGVyZSBhcmUgZm91ciBzdWNoCiBjbGFzc2VzOgogCiAuLiBjbGFzczo6IFJhd0Rlc2NyaXB0aW9uSGVscEZvcm1hdHRlcgogICAgICAgICAgICBSYXdUZXh0SGVscEZvcm1hdHRlcgogICAgICAgICAgICBBcmd1bWVudERlZmF1bHRzSGVscEZvcm1hdHRlcgorICAgICAgICAgICBNZXRhdmFyVHlwZUhlbHBGb3JtYXR0ZXIKIAotVGhlIGZpcnN0IHR3byBhbGxvdyBtb3JlIGNvbnRyb2wgb3ZlciBob3cgdGV4dHVhbCBkZXNjcmlwdGlvbnMgYXJlIGRpc3BsYXllZCwKLXdoaWxlIHRoZSBsYXN0IGF1dG9tYXRpY2FsbHkgYWRkcyBpbmZvcm1hdGlvbiBhYm91dCBhcmd1bWVudCBkZWZhdWx0IHZhbHVlcy4KLQorOmNsYXNzOmBSYXdEZXNjcmlwdGlvbkhlbHBGb3JtYXR0ZXJgIGFuZCA6Y2xhc3M6YFJhd1RleHRIZWxwRm9ybWF0dGVyYCBnaXZlCittb3JlIGNvbnRyb2wgb3ZlciBob3cgdGV4dHVhbCBkZXNjcmlwdGlvbnMgYXJlIGRpc3BsYXllZC4KIEJ5IGRlZmF1bHQsIDpjbGFzczpgQXJndW1lbnRQYXJzZXJgIG9iamVjdHMgbGluZS13cmFwIHRoZSBkZXNjcmlwdGlvbl8gYW5kCiBlcGlsb2dfIHRleHRzIGluIGNvbW1hbmQtbGluZSBoZWxwIG1lc3NhZ2VzOjoKIApAQCAtNDI0LDggKzQyNCw4IEBACiA6Y2xhc3M6YFJhd1RleHRIZWxwRm9ybWF0dGVyYCBtYWludGFpbnMgd2hpdGVzcGFjZSBmb3IgYWxsIHNvcnRzIG9mIGhlbHAgdGV4dCwKIGluY2x1ZGluZyBhcmd1bWVudCBkZXNjcmlwdGlvbnMuCiAKLVRoZSBvdGhlciBmb3JtYXR0ZXIgY2xhc3MgYXZhaWxhYmxlLCA6Y2xhc3M6YEFyZ3VtZW50RGVmYXVsdHNIZWxwRm9ybWF0dGVyYCwKLXdpbGwgYWRkIGluZm9ybWF0aW9uIGFib3V0IHRoZSBkZWZhdWx0IHZhbHVlIG9mIGVhY2ggb2YgdGhlIGFyZ3VtZW50czo6Cis6Y2xhc3M6YEFyZ3VtZW50RGVmYXVsdHNIZWxwRm9ybWF0dGVyYCBhdXRvbWF0aWNhbGx5IGFkZHMgaW5mb3JtYXRpb24gYWJvdXQKK2RlZmF1bHQgdmFsdWVzIHRvIGVhY2ggb2YgdGhlIGFyZ3VtZW50IGhlbHAgbWVzc2FnZXM6OgogCiAgICA+Pj4gcGFyc2VyID0gYXJncGFyc2UuQXJndW1lbnRQYXJzZXIoCiAgICAuLi4gICAgIHByb2c9J1BST0cnLApAQCAtNDQyLDYgKzQ0MiwyNSBAQAogICAgIC1oLCAtLWhlbHAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UgYW5kIGV4aXQKICAgICAtLWZvbyBGT08gICBGT08hIChkZWZhdWx0OiA0MikKIAorOmNsYXNzOmBNZXRhdmFyVHlwZUhlbHBGb3JtYXR0ZXJgIHVzZXMgdGhlIG5hbWUgb2YgdGhlIHR5cGVfIGFyZ3VtZW50IGZvciBlYWNoCithcmd1bWVudCBhcyB0aGUgZGlzcGxheSBuYW1lIGZvciBpdHMgdmFsdWVzIChyYXRoZXIgdGhhbiB1c2luZyB0aGUgZGVzdF8KK2FzIHRoZSByZWd1bGFyIGZvcm1hdHRlciBkb2VzKTo6CisKKyAgID4+PiBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcigKKyAgIC4uLiAgICAgcHJvZz0nUFJPRycsCisgICAuLi4gICAgIGZvcm1hdHRlcl9jbGFzcz1hcmdwYXJzZS5NZXRhdmFyVHlwZUhlbHBGb3JtYXR0ZXIpCisgICA+Pj4gcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1mb28nLCB0eXBlPWludCkKKyAgID4+PiBwYXJzZXIuYWRkX2FyZ3VtZW50KCdiYXInLCB0eXBlPWZsb2F0KQorICAgPj4+IHBhcnNlci5wcmludF9oZWxwKCkKKyAgIHVzYWdlOiBQUk9HIFstaF0gWy0tZm9vIGludF0gZmxvYXQKKworICAgcG9zaXRpb25hbCBhcmd1bWVudHM6CisgICAgIGZsb2F0CisKKyAgIG9wdGlvbmFsIGFyZ3VtZW50czoKKyAgICAgLWgsIC0taGVscCAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZSBhbmQgZXhpdAorICAgICAtLWZvbyBpbnQKKwogCiBjb25mbGljdF9oYW5kbGVyCiBeXl5eXl5eXl5eXl5eXl5eCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9hcnJheS5yc3QgYi9Eb2MvbGlicmFyeS9hcnJheS5yc3QKaW5kZXggZDU2M2NjZS4uM2UyNzVhMiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvYXJyYXkucnN0CisrKyBiL0RvYy9saWJyYXJ5L2FycmF5LnJzdApAQCAtMTQsMzYgKzE0LDQ0IEBACiA6ZGZuOmB0eXBlIGNvZGVgLCB3aGljaCBpcyBhIHNpbmdsZSBjaGFyYWN0ZXIuICBUaGUgZm9sbG93aW5nIHR5cGUgY29kZXMgYXJlCiBkZWZpbmVkOgogCi0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotfCBUeXBlIGNvZGUgfCBDIFR5cGUgICAgICAgICB8IFB5dGhvbiBUeXBlICAgICAgIHwgTWluaW11bSBzaXplIGluIGJ5dGVzIHwKLSs9PT09PT09PT09PSs9PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT0rCi18IGBgJ2InYGAgICB8IHNpZ25lZCBjaGFyICAgIHwgaW50ICAgICAgICAgICAgICAgfCAxICAgICAgICAgICAgICAgICAgICAgfAotKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKLXwgYGAnQidgYCAgIHwgdW5zaWduZWQgY2hhciAgfCBpbnQgICAgICAgICAgICAgICB8IDEgICAgICAgICAgICAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotfCBgYCd1J2BgICAgfCBQeV9VTklDT0RFICAgICB8IFVuaWNvZGUgY2hhcmFjdGVyIHwgMiAoc2VlIG5vdGUpICAgICAgICAgIHwKLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCi18IGBgJ2gnYGAgICB8IHNpZ25lZCBzaG9ydCAgIHwgaW50ICAgICAgICAgICAgICAgfCAyICAgICAgICAgICAgICAgICAgICAgfAotKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKLXwgYGAnSCdgYCAgIHwgdW5zaWduZWQgc2hvcnQgfCBpbnQgICAgICAgICAgICAgICB8IDIgICAgICAgICAgICAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotfCBgYCdpJ2BgICAgfCBzaWduZWQgaW50ICAgICB8IGludCAgICAgICAgICAgICAgIHwgMiAgICAgICAgICAgICAgICAgICAgIHwKLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCi18IGBgJ0knYGAgICB8IHVuc2lnbmVkIGludCAgIHwgaW50ICAgICAgICAgICAgICAgfCAyICAgICAgICAgICAgICAgICAgICAgfAotKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKLXwgYGAnbCdgYCAgIHwgc2lnbmVkIGxvbmcgICAgfCBpbnQgICAgICAgICAgICAgICB8IDQgICAgICAgICAgICAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotfCBgYCdMJ2BgICAgfCB1bnNpZ25lZCBsb25nICB8IGludCAgICAgICAgICAgICAgIHwgNCAgICAgICAgICAgICAgICAgICAgIHwKLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCi18IGBgJ2YnYGAgICB8IGZsb2F0ICAgICAgICAgIHwgZmxvYXQgICAgICAgICAgICAgfCA0ICAgICAgICAgICAgICAgICAgICAgfAotKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKLXwgYGAnZCdgYCAgIHwgZG91YmxlICAgICAgICAgfCBmbG9hdCAgICAgICAgICAgICB8IDggICAgICAgICAgICAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgVHlwZSBjb2RlIHwgQyBUeXBlICAgICAgICAgICAgIHwgUHl0aG9uIFR5cGUgICAgICAgfCBNaW5pbXVtIHNpemUgaW4gYnl0ZXMgfCBOb3RlcyB8CisrPT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09KworfCBgYCdiJ2BgICAgfCBzaWduZWQgY2hhciAgICAgICAgfCBpbnQgICAgICAgICAgICAgICB8IDEgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ0InYGAgICB8IHVuc2lnbmVkIGNoYXIgICAgICB8IGludCAgICAgICAgICAgICAgIHwgMSAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAorKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAndSdgYCAgIHwgUHlfVUNTNCAgICAgICAgICAgIHwgVW5pY29kZSBjaGFyYWN0ZXIgfCA0ICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBgYCdoJ2BgICAgfCBzaWduZWQgc2hvcnQgICAgICAgfCBpbnQgICAgICAgICAgICAgICB8IDIgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ0gnYGAgICB8IHVuc2lnbmVkIHNob3J0ICAgICB8IGludCAgICAgICAgICAgICAgIHwgMiAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAorKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnaSdgYCAgIHwgc2lnbmVkIGludCAgICAgICAgIHwgaW50ICAgICAgICAgICAgICAgfCAyICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBgYCdJJ2BgICAgfCB1bnNpZ25lZCBpbnQgICAgICAgfCBpbnQgICAgICAgICAgICAgICB8IDIgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2wnYGAgICB8IHNpZ25lZCBsb25nICAgICAgICB8IGludCAgICAgICAgICAgICAgIHwgNCAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAorKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnTCdgYCAgIHwgdW5zaWduZWQgbG9uZyAgICAgIHwgaW50ICAgICAgICAgICAgICAgfCA0ICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBgYCdxJ2BgICAgfCBzaWduZWQgbG9uZyBsb25nICAgfCBpbnQgICAgICAgICAgICAgICB8IDggICAgICAgICAgICAgICAgICAgICB8IFwoMSkgIHwKKystLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ1EnYGAgICB8IHVuc2lnbmVkIGxvbmcgbG9uZyB8IGludCAgICAgICAgICAgICAgIHwgOCAgICAgICAgICAgICAgICAgICAgIHwgXCgxKSAgfAorKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnZidgYCAgIHwgZmxvYXQgICAgICAgICAgICAgIHwgZmxvYXQgICAgICAgICAgICAgfCA0ICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBgYCdkJ2BgICAgfCBkb3VibGUgICAgICAgICAgICAgfCBmbG9hdCAgICAgICAgICAgICB8IDggICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCiAKLS4uIG5vdGU6OgorTm90ZXM6CiAKLSAgIFRoZSBgYCd1J2BgIHR5cGVjb2RlIGNvcnJlc3BvbmRzIHRvIFB5dGhvbidzIHVuaWNvZGUgY2hhcmFjdGVyLiAgT24gbmFycm93Ci0gICBVbmljb2RlIGJ1aWxkcyB0aGlzIGlzIDItYnl0ZXMsIG9uIHdpZGUgYnVpbGRzIHRoaXMgaXMgNC1ieXRlcy4KKygxKQorICAgVGhlIGBgJ3EnYGAgYW5kIGBgJ1EnYGAgdHlwZSBjb2RlcyBhcmUgYXZhaWxhYmxlIG9ubHkgaWYKKyAgIHRoZSBwbGF0Zm9ybSBDIGNvbXBpbGVyIHVzZWQgdG8gYnVpbGQgUHl0aG9uIHN1cHBvcnRzIEMgOmM6dHlwZTpgbG9uZyBsb25nYCwKKyAgIG9yLCBvbiBXaW5kb3dzLCA6Yzp0eXBlOmBfX2ludDY0YC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCiAKIFRoZSBhY3R1YWwgcmVwcmVzZW50YXRpb24gb2YgdmFsdWVzIGlzIGRldGVybWluZWQgYnkgdGhlIG1hY2hpbmUgYXJjaGl0ZWN0dXJlCiAoc3RyaWN0bHkgc3BlYWtpbmcsIGJ5IHRoZSBDIGltcGxlbWVudGF0aW9uKS4gIFRoZSBhY3R1YWwgc2l6ZSBjYW4gYmUgYWNjZXNzZWQKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2FzdC5yc3QgYi9Eb2MvbGlicmFyeS9hc3QucnN0CmluZGV4IGUyYzBiNmQuLjE2ZGUzY2EgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2FzdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvYXN0LnJzdApAQCAtOTYsOSArOTYsNiBAQAogQWJzdHJhY3QgR3JhbW1hcgogLS0tLS0tLS0tLS0tLS0tLQogCi1UaGUgbW9kdWxlIGRlZmluZXMgYSBzdHJpbmcgY29uc3RhbnQgYGBfX3ZlcnNpb25fX2BgIHdoaWNoIGlzIHRoZSBkZWNpbWFsCi1TdWJ2ZXJzaW9uIHJldmlzaW9uIG51bWJlciBvZiB0aGUgZmlsZSBzaG93biBiZWxvdy4KLQogVGhlIGFic3RyYWN0IGdyYW1tYXIgaXMgY3VycmVudGx5IGRlZmluZWQgYXMgZm9sbG93czoKIAogLi4gbGl0ZXJhbGluY2x1ZGU6OiAuLi8uLi9QYXJzZXIvUHl0aG9uLmFzZGwKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2FzeW5jb3JlLnJzdCBiL0RvYy9saWJyYXJ5L2FzeW5jb3JlLnJzdAppbmRleCA2MTliN2JiLi41NDExYzMwIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9hc3luY29yZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvYXN5bmNvcmUucnN0CkBAIC0xODQsMTIgKzE4NCwxNCBAQAogICAgTW9zdCBvZiB0aGVzZSBhcmUgbmVhcmx5IGlkZW50aWNhbCB0byB0aGVpciBzb2NrZXQgcGFydG5lcnMuCiAKIAotICAgLi4gbWV0aG9kOjogY3JlYXRlX3NvY2tldChmYW1pbHksIHR5cGUpCisgICAuLiBtZXRob2Q6OiBjcmVhdGVfc29ja2V0KGZhbWlseT1zb2NrZXQuQUZfSU5FVCwgdHlwZT1zb2NrZXQuU09DS19TVFJFQU0pCiAKICAgICAgIFRoaXMgaXMgaWRlbnRpY2FsIHRvIHRoZSBjcmVhdGlvbiBvZiBhIG5vcm1hbCBzb2NrZXQsIGFuZCB3aWxsIHVzZSB0aGUKICAgICAgIHNhbWUgb3B0aW9ucyBmb3IgY3JlYXRpb24uICBSZWZlciB0byB0aGUgOm1vZDpgc29ja2V0YCBkb2N1bWVudGF0aW9uIGZvcgogICAgICAgaW5mb3JtYXRpb24gb24gY3JlYXRpbmcgc29ja2V0cy4KIAorICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMyBmYW1pbHkgYW5kIHR5cGUgYXJndW1lbnRzIGNhbiBiZSBvbWl0dGVkLgorCiAKICAgIC4uIG1ldGhvZDo6IGNvbm5lY3QoYWRkcmVzcykKIApAQCAtMjgwLDcgKzI4Miw3IEBACiAKICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdCwgcGF0aCk6CiAgICAgICAgICAgIGFzeW5jb3JlLmRpc3BhdGNoZXIuX19pbml0X18oc2VsZikKLSAgICAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCisgICAgICAgICAgIHNlbGYuY3JlYXRlX3NvY2tldCgpCiAgICAgICAgICAgIHNlbGYuY29ubmVjdCggKGhvc3QsIDgwKSApCiAgICAgICAgICAgIHNlbGYuYnVmZmVyID0gYnl0ZXMoJ0dFVCAlcyBIVFRQLzEuMFxyXG5Ib3N0OiAlc1xyXG5cclxuJyAlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBhdGgsIGhvc3QpLCAnYXNjaWknKQpAQCAtMzI3LDcgKzMyOSw3IEBACiAKICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGhvc3QsIHBvcnQpOgogICAgICAgICAgICAgYXN5bmNvcmUuZGlzcGF0Y2hlci5fX2luaXRfXyhzZWxmKQotICAgICAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCisgICAgICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoKQogICAgICAgICAgICAgc2VsZi5zZXRfcmV1c2VfYWRkcigpCiAgICAgICAgICAgICBzZWxmLmJpbmQoKGhvc3QsIHBvcnQpKQogICAgICAgICAgICAgc2VsZi5saXN0ZW4oNSkKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2F0ZXhpdC5yc3QgYi9Eb2MvbGlicmFyeS9hdGV4aXQucnN0CmluZGV4IDdjNzZiYWIuLjNkNWMwMTQgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2F0ZXhpdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvYXRleGl0LnJzdApAQCAtNjcsOCArNjcsOSBAQAogbWFraW5nIGFuIGV4cGxpY2l0IGNhbGwgaW50byB0aGlzIG1vZHVsZSBhdCB0ZXJtaW5hdGlvbi4gOjoKIAogICAgdHJ5OgotICAgICAgIF9jb3VudCA9IGludChvcGVuKCIvdG1wL2NvdW50ZXIiKS5yZWFkKCkpCi0gICBleGNlcHQgSU9FcnJvcjoKKyAgICAgICB3aXRoIG9wZW4oIi90bXAvY291bnRlciIpIGFzIGluZmlsZToKKyAgICAgICAgICAgX2NvdW50ID0gaW50KGluZmlsZS5yZWFkKCkpCisgICBleGNlcHQgRmlsZU5vdEZvdW5kRXJyb3I6CiAgICAgICAgX2NvdW50ID0gMAogCiAgICBkZWYgaW5jcmNvdW50ZXIobik6CkBAIC03Niw3ICs3Nyw4IEBACiAgICAgICAgX2NvdW50ID0gX2NvdW50ICsgbgogCiAgICBkZWYgc2F2ZWNvdW50ZXIoKToKLSAgICAgICBvcGVuKCIvdG1wL2NvdW50ZXIiLCAidyIpLndyaXRlKCIlZCIgJSBfY291bnQpCisgICAgICAgd2l0aCBvcGVuKCIvdG1wL2NvdW50ZXIiLCAidyIpIGFzIG91dGZpbGU6CisgICAgICAgICAgIG91dGZpbGUud3JpdGUoIiVkIiAlIF9jb3VudCkKIAogICAgaW1wb3J0IGF0ZXhpdAogICAgYXRleGl0LnJlZ2lzdGVyKHNhdmVjb3VudGVyKQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvYmFzZTY0LnJzdCBiL0RvYy9saWJyYXJ5L2Jhc2U2NC5yc3QKaW5kZXggMDZmM2FiMS4uYWZiZWRjZSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvYmFzZTY0LnJzdAorKysgYi9Eb2MvbGlicmFyeS9iYXNlNjQucnN0CkBAIC0xOCw5ICsxOCwxNCBAQAogCiBUaGVyZSBhcmUgdHdvIGludGVyZmFjZXMgcHJvdmlkZWQgYnkgdGhpcyBtb2R1bGUuICBUaGUgbW9kZXJuIGludGVyZmFjZQogc3VwcG9ydHMgZW5jb2RpbmcgYW5kIGRlY29kaW5nIEFTQ0lJIGJ5dGUgc3RyaW5nIG9iamVjdHMgdXNpbmcgYWxsIHRocmVlCi1hbHBoYWJldHMuICBUaGUgbGVnYWN5IGludGVyZmFjZSBwcm92aWRlcyBmb3IgZW5jb2RpbmcgYW5kIGRlY29kaW5nIHRvIGFuZCBmcm9tCi1maWxlLWxpa2Ugb2JqZWN0cyBhcyB3ZWxsIGFzIGJ5dGUgc3RyaW5ncywgYnV0IG9ubHkgdXNpbmcgdGhlIEJhc2U2NCBzdGFuZGFyZAotYWxwaGFiZXQuCithbHBoYWJldHMuIEFkZGl0aW9uYWxseSwgdGhlIGRlY29kaW5nIGZ1bmN0aW9ucyBvZiB0aGUgbW9kZXJuIGludGVyZmFjZSBhbHNvCithY2NlcHQgVW5pY29kZSBzdHJpbmdzIGNvbnRhaW5pbmcgb25seSBBU0NJSSBjaGFyYWN0ZXJzLiBUaGUgbGVnYWN5IGludGVyZmFjZQorcHJvdmlkZXMgZm9yIGVuY29kaW5nIGFuZCBkZWNvZGluZyB0byBhbmQgZnJvbSBmaWxlLWxpa2Ugb2JqZWN0cyBhcyB3ZWxsIGFzCitieXRlIHN0cmluZ3MsIGJ1dCBvbmx5IHVzaW5nIHRoZSBCYXNlNjQgc3RhbmRhcmQgYWxwaGFiZXQuCisKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBBU0NJSS1vbmx5IFVuaWNvZGUgc3RyaW5ncyBhcmUgbm93IGFjY2VwdGVkIGJ5IHRoZSBkZWNvZGluZyBmdW5jdGlvbnMgb2YKKyAgIHRoZSBtb2Rlcm4gaW50ZXJmYWNlLgogCiBUaGUgbW9kZXJuIGludGVyZmFjZSBwcm92aWRlczoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvYmluYXNjaWkucnN0IGIvRG9jL2xpYnJhcnkvYmluYXNjaWkucnN0CmluZGV4IDJhYTM3MDIuLmJhZjQzMGQgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2JpbmFzY2lpLnJzdAorKysgYi9Eb2MvbGlicmFyeS9iaW5hc2NpaS5yc3QKQEAgLTIwLDggKzIwLDEzIEBACiAKIC4uIG5vdGU6OgogCi0gICBFbmNvZGluZyBhbmQgZGVjb2RpbmcgZnVuY3Rpb25zIGRvIG5vdCBhY2NlcHQgVW5pY29kZSBzdHJpbmdzLiAgT25seSBieXRlc3RyaW5nCi0gICBhbmQgYnl0ZWFycmF5IG9iamVjdHMgY2FuIGJlIHByb2Nlc3NlZC4KKyAgIGBgYTJiXypgYCBmdW5jdGlvbnMgYWNjZXB0IFVuaWNvZGUgc3RyaW5ncyBjb250YWluaW5nIG9ubHkgQVNDSUkgY2hhcmFjdGVycy4KKyAgIE90aGVyIGZ1bmN0aW9ucyBvbmx5IGFjY2VwdCBieXRlcyBhbmQgYnl0ZXMtY29tcGF0aWJsZSBvYmplY3RzIChzdWNoIGFzCisgICBieXRlYXJyYXkgb2JqZWN0cyBhbmQgb3RoZXIgb2JqZWN0cyBpbXBsZW1lbnRpbmcgdGhlIGJ1ZmZlciBBUEkpLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQVNDSUktb25seSB1bmljb2RlIHN0cmluZ3MgYXJlIG5vdyBhY2NlcHRlZCBieSB0aGUgYGBhMmJfKmBgIGZ1bmN0aW9ucy4KKwogCiBUaGUgOm1vZDpgYmluYXNjaWlgIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zOgogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9iejIucnN0IGIvRG9jL2xpYnJhcnkvYnoyLnJzdAppbmRleCBkMTNmNmUwLi45NTc3ZjMxIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9iejIucnN0CisrKyBiL0RvYy9saWJyYXJ5L2J6Mi5yc3QKQEAgLTEsMTk4ICsxLDE2OSBAQAotOm1vZDpgYnoyYCAtLS0gQ29tcHJlc3Npb24gY29tcGF0aWJsZSB3aXRoIDpwcm9ncmFtOmBiemlwMmAKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cis6bW9kOmBiejJgIC0tLSBTdXBwb3J0IGZvciA6cHJvZ3JhbTpgYnppcDJgIGNvbXByZXNzaW9uCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAKIC4uIG1vZHVsZTo6IGJ6MgotICAgOnN5bm9wc2lzOiBJbnRlcmZhY2UgdG8gY29tcHJlc3Npb24gYW5kIGRlY29tcHJlc3Npb24gcm91dGluZXMKLSAgICAgICAgICAgICAgY29tcGF0aWJsZSB3aXRoIGJ6aXAyLgorICAgOnN5bm9wc2lzOiBJbnRlcmZhY2VzIGZvciBiemlwMiBjb21wcmVzc2lvbiBhbmQgZGVjb21wcmVzc2lvbi4KIC4uIG1vZHVsZWF1dGhvcjo6IEd1c3Rhdm8gTmllbWV5ZXIgPG5pZW1leWVyQGNvbmVjdGl2YS5jb20+CisuLiBtb2R1bGVhdXRob3I6OiBOYWRlZW0gVmF3ZGEgPG5hZGVlbS52YXdkYUBnbWFpbC5jb20+CiAuLiBzZWN0aW9uYXV0aG9yOjogR3VzdGF2byBOaWVtZXllciA8bmllbWV5ZXJAY29uZWN0aXZhLmNvbT4KKy4uIHNlY3Rpb25hdXRob3I6OiBOYWRlZW0gVmF3ZGEgPG5hZGVlbS52YXdkYUBnbWFpbC5jb20+CiAKIAotVGhpcyBtb2R1bGUgcHJvdmlkZXMgYSBjb21wcmVoZW5zaXZlIGludGVyZmFjZSBmb3IgdGhlIGJ6MiBjb21wcmVzc2lvbiBsaWJyYXJ5LgotSXQgaW1wbGVtZW50cyBhIGNvbXBsZXRlIGZpbGUgaW50ZXJmYWNlLCBvbmUtc2hvdCAoZGUpY29tcHJlc3Npb24gZnVuY3Rpb25zLCBhbmQKLXR5cGVzIGZvciBzZXF1ZW50aWFsIChkZSljb21wcmVzc2lvbi4KK1RoaXMgbW9kdWxlIHByb3ZpZGVzIGEgY29tcHJlaGVuc2l2ZSBpbnRlcmZhY2UgZm9yIGNvbXByZXNzaW5nIGFuZAorZGVjb21wcmVzc2luZyBkYXRhIHVzaW5nIHRoZSBiemlwMiBjb21wcmVzc2lvbiBhbGdvcml0aG0uCiAKLUhlcmUgaXMgYSBzdW1tYXJ5IG9mIHRoZSBmZWF0dXJlcyBvZmZlcmVkIGJ5IHRoZSBiejIgbW9kdWxlOgorVGhlIDptb2Q6YGJ6MmAgbW9kdWxlIGNvbnRhaW5zOgogCi0qIDpjbGFzczpgQloyRmlsZWAgY2xhc3MgaW1wbGVtZW50cyBhIGNvbXBsZXRlIGZpbGUgaW50ZXJmYWNlLCBpbmNsdWRpbmcKLSAgOm1ldGg6YH5CWjJGaWxlLnJlYWRsaW5lYCwgOm1ldGg6YH5CWjJGaWxlLnJlYWRsaW5lc2AsCi0gIDptZXRoOmB+QloyRmlsZS53cml0ZWxpbmVzYCwgOm1ldGg6YH5CWjJGaWxlLnNlZWtgLCBldGM7CisqIFRoZSA6Y2xhc3M6YEJaMkZpbGVgIGNsYXNzIGZvciByZWFkaW5nIGFuZCB3cml0aW5nIGNvbXByZXNzZWQgZmlsZXMuCisqIFRoZSA6Y2xhc3M6YEJaMkNvbXByZXNzb3JgIGFuZCA6Y2xhc3M6YEJaMkRlY29tcHJlc3NvcmAgY2xhc3NlcyBmb3IKKyAgaW5jcmVtZW50YWwgKGRlKWNvbXByZXNzaW9uLgorKiBUaGUgOmZ1bmM6YGNvbXByZXNzYCBhbmQgOmZ1bmM6YGRlY29tcHJlc3NgIGZ1bmN0aW9ucyBmb3Igb25lLXNob3QKKyAgKGRlKWNvbXByZXNzaW9uLgogCi0qIDpjbGFzczpgQloyRmlsZWAgY2xhc3MgaW1wbGVtZW50cyBlbXVsYXRlZCA6bWV0aDpgfkJaMkZpbGUuc2Vla2Agc3VwcG9ydDsKLQotKiA6Y2xhc3M6YEJaMkZpbGVgIGNsYXNzIGltcGxlbWVudHMgdW5pdmVyc2FsIG5ld2xpbmUgc3VwcG9ydDsKLQotKiA6Y2xhc3M6YEJaMkZpbGVgIGNsYXNzIG9mZmVycyBhbiBvcHRpbWl6ZWQgbGluZSBpdGVyYXRpb24gdXNpbmcgYSByZWFkYWhlYWQKLSAgYWxnb3JpdGhtOwotCi0qIFNlcXVlbnRpYWwgKGRlKWNvbXByZXNzaW9uIHN1cHBvcnRlZCBieSA6Y2xhc3M6YEJaMkNvbXByZXNzb3JgIGFuZAotICA6Y2xhc3M6YEJaMkRlY29tcHJlc3NvcmAgY2xhc3NlczsKLQotKiBPbmUtc2hvdCAoZGUpY29tcHJlc3Npb24gc3VwcG9ydGVkIGJ5IDpmdW5jOmBjb21wcmVzc2AgYW5kIDpmdW5jOmBkZWNvbXByZXNzYAotICBmdW5jdGlvbnM7Ci0KLSogVGhyZWFkIHNhZmV0eSB1c2VzIGluZGl2aWR1YWwgbG9ja2luZyBtZWNoYW5pc20uCitBbGwgb2YgdGhlIGNsYXNzZXMgaW4gdGhpcyBtb2R1bGUgbWF5IHNhZmVseSBiZSBhY2Nlc3NlZCBmcm9tIG11bHRpcGxlIHRocmVhZHMuCiAKIAogKERlKWNvbXByZXNzaW9uIG9mIGZpbGVzCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotSGFuZGxpbmcgb2YgY29tcHJlc3NlZCBmaWxlcyBpcyBvZmZlcmVkIGJ5IHRoZSA6Y2xhc3M6YEJaMkZpbGVgIGNsYXNzLgorLi4gY2xhc3M6OiBCWjJGaWxlKGZpbGVuYW1lPU5vbmUsIG1vZGU9J3InLCBidWZmZXJpbmc9Tm9uZSwgY29tcHJlc3NsZXZlbD05LCBcKiwgZmlsZW9iaj1Ob25lKQogCisgICBPcGVuIGEgYnppcDItY29tcHJlc3NlZCBmaWxlLgogCi0uLiBjbGFzczo6IEJaMkZpbGUoZmlsZW5hbWUsIG1vZGU9J3InLCBidWZmZXJpbmc9MCwgY29tcHJlc3NsZXZlbD05KQorICAgVGhlIDpjbGFzczpgQloyRmlsZWAgY2FuIHdyYXAgYW4gZXhpc3RpbmcgOnRlcm06YGZpbGUgb2JqZWN0YCAoZ2l2ZW4gYnkKKyAgICpmaWxlb2JqKiksIG9yIG9wZXJhdGUgZGlyZWN0bHkgb24gYSBuYW1lZCBmaWxlIChuYW1lZCBieSAqZmlsZW5hbWUqKS4KKyAgIEV4YWN0bHkgb25lIG9mIHRoZXNlIHR3byBwYXJhbWV0ZXJzIHNob3VsZCBiZSBwcm92aWRlZC4KIAotICAgT3BlbiBhIGJ6MiBmaWxlLiBNb2RlIGNhbiBiZSBlaXRoZXIgYGAncidgYCBvciBgYCd3J2BgLCBmb3IgcmVhZGluZyAoZGVmYXVsdCkKLSAgIG9yIHdyaXRpbmcuIFdoZW4gb3BlbmVkIGZvciB3cml0aW5nLCB0aGUgZmlsZSB3aWxsIGJlIGNyZWF0ZWQgaWYgaXQgZG9lc24ndAotICAgZXhpc3QsIGFuZCB0cnVuY2F0ZWQgb3RoZXJ3aXNlLiBJZiAqYnVmZmVyaW5nKiBpcyBnaXZlbiwgYGAwYGAgbWVhbnMKLSAgIHVuYnVmZmVyZWQsIGFuZCBsYXJnZXIgbnVtYmVycyBzcGVjaWZ5IHRoZSBidWZmZXIgc2l6ZTsgdGhlIGRlZmF1bHQgaXMKLSAgIGBgMGBgLiBJZiAqY29tcHJlc3NsZXZlbCogaXMgZ2l2ZW4sIGl0IG11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiBgYDFgYCBhbmQKLSAgIGBgOWBgOyB0aGUgZGVmYXVsdCBpcyBgYDlgYC4gQWRkIGEgYGAnVSdgYCB0byBtb2RlIHRvIG9wZW4gdGhlIGZpbGUgZm9yIGlucHV0Ci0gICB3aXRoIHVuaXZlcnNhbCBuZXdsaW5lIHN1cHBvcnQuIEFueSBsaW5lIGVuZGluZyBpbiB0aGUgaW5wdXQgZmlsZSB3aWxsIGJlCi0gICBzZWVuIGFzIGEgYGAnXG4nYGAgaW4gUHl0aG9uLiAgQWxzbywgYSBmaWxlIHNvIG9wZW5lZCBnYWlucyB0aGUgYXR0cmlidXRlCi0gICA6YXR0cjpgbmV3bGluZXNgOyB0aGUgdmFsdWUgZm9yIHRoaXMgYXR0cmlidXRlIGlzIG9uZSBvZiBgYE5vbmVgYCAobm8gbmV3bGluZQotICAgcmVhZCB5ZXQpLCBgYCdccidgYCwgYGAnXG4nYGAsIGBgJ1xyXG4nYGAgb3IgYSB0dXBsZSBjb250YWluaW5nIGFsbCB0aGUKLSAgIG5ld2xpbmUgdHlwZXMgc2Vlbi4gVW5pdmVyc2FsIG5ld2xpbmVzIGFyZSBhdmFpbGFibGUgb25seSB3aGVuCi0gICByZWFkaW5nLiBJbnN0YW5jZXMgc3VwcG9ydCBpdGVyYXRpb24gaW4gdGhlIHNhbWUgd2F5IGFzIG5vcm1hbCA6Y2xhc3M6YGZpbGVgCi0gICBpbnN0YW5jZXMuCisgICBUaGUgKm1vZGUqIGFyZ3VtZW50IGNhbiBiZSBlaXRoZXIgYGAncidgYCBmb3IgcmVhZGluZyAoZGVmYXVsdCksIGBgJ3cnYGAgZm9yCisgICBvdmVyd3JpdGluZywgb3IgYGAnYSdgYCBmb3IgYXBwZW5kaW5nLiBJZiAqZmlsZW9iaiogaXMgcHJvdmlkZWQsIGEgbW9kZSBvZgorICAgYGAndydgYCBkb2VzIG5vdCB0cnVuY2F0ZSB0aGUgZmlsZSwgYW5kIGlzIGluc3RlYWQgZXF1aXZhbGVudCB0byBgYCdhJ2BgLgogCi0gICA6Y2xhc3M6YEJaMkZpbGVgIHN1cHBvcnRzIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50LgorICAgVGhlICpidWZmZXJpbmcqIGFyZ3VtZW50IGlzIGlnbm9yZWQuIEl0cyB1c2UgaXMgZGVwcmVjYXRlZC4KKworICAgSWYgKm1vZGUqIGlzIGBgJ3cnYGAgb3IgYGAnYSdgYCwgKmNvbXByZXNzbGV2ZWwqIGNhbiBiZSBhIG51bWJlciBiZXR3ZWVuCisgICBgYDFgYCBhbmQgYGA5YGAgc3BlY2lmeWluZyB0aGUgbGV2ZWwgb2YgY29tcHJlc3Npb246IGBgMWBgIHByb2R1Y2VzIHRoZQorICAgbGVhc3QgY29tcHJlc3Npb24sIGFuZCBgYDlgYCAoZGVmYXVsdCkgcHJvZHVjZXMgdGhlIG1vc3QgY29tcHJlc3Npb24uCisKKyAgIElmICptb2RlKiBpcyBgYCdyJ2BgLCB0aGUgaW5wdXQgZmlsZSBtYXkgYmUgdGhlIGNvbmNhdGVuYXRpb24gb2YgbXVsdGlwbGUKKyAgIGNvbXByZXNzZWQgc3RyZWFtcy4KKworICAgOmNsYXNzOmBCWjJGaWxlYCBwcm92aWRlcyBhbGwgb2YgdGhlIG1lbWJlcnMgc3BlY2lmaWVkIGJ5IHRoZQorICAgOmNsYXNzOmBpby5CdWZmZXJlZElPQmFzZWAsIGV4Y2VwdCBmb3IgOm1ldGg6YGRldGFjaGAgYW5kIDptZXRoOmB0cnVuY2F0ZWAuCisgICBJdGVyYXRpb24gYW5kIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50IGFyZSBzdXBwb3J0ZWQuCisKKyAgIDpjbGFzczpgQloyRmlsZWAgYWxzbyBwcm92aWRlcyB0aGUgZm9sbG93aW5nIG1ldGhvZDoKKworICAgLi4gbWV0aG9kOjogcGVlayhbbl0pCisKKyAgICAgIFJldHVybiBidWZmZXJlZCBkYXRhIHdpdGhvdXQgYWR2YW5jaW5nIHRoZSBmaWxlIHBvc2l0aW9uLiBBdCBsZWFzdCBvbmUKKyAgICAgIGJ5dGUgb2YgZGF0YSB3aWxsIGJlIHJldHVybmVkICh1bmxlc3MgYXQgRU9GKS4gVGhlIGV4YWN0IG51bWJlciBvZiBieXRlcworICAgICAgcmV0dXJuZWQgaXMgdW5zcGVjaWZpZWQuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMQogICAgICAgU3VwcG9ydCBmb3IgdGhlIDprZXl3b3JkOmB3aXRoYCBzdGF0ZW1lbnQgd2FzIGFkZGVkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhlIDptZXRoOmBmaWxlbm9gLCA6bWV0aDpgcmVhZGFibGVgLCA6bWV0aDpgc2Vla2FibGVgLCA6bWV0aDpgd3JpdGFibGVgLAorICAgICAgOm1ldGg6YHJlYWQxYCBhbmQgOm1ldGg6YHJlYWRpbnRvYCBtZXRob2RzIHdlcmUgYWRkZWQuCiAKLSAgIC4uIG5vdGU6OgorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSAqZmlsZW9iaiogYXJndW1lbnQgdG8gdGhlIGNvbnN0cnVjdG9yIHdhcyBhZGRlZC4KIAotICAgICAgVGhpcyBjbGFzcyBkb2VzIG5vdCBzdXBwb3J0IGlucHV0IGZpbGVzIGNvbnRhaW5pbmcgbXVsdGlwbGUgc3RyZWFtcyAoc3VjaAotICAgICAgYXMgdGhvc2UgcHJvZHVjZWQgYnkgdGhlIDpwcm9ncmFtOmBwYnppcDJgIHRvb2wpLiBXaGVuIHJlYWRpbmcgc3VjaCBhbgotICAgICAgaW5wdXQgZmlsZSwgb25seSB0aGUgZmlyc3Qgc3RyZWFtIHdpbGwgYmUgYWNjZXNzaWJsZS4gSWYgeW91IHJlcXVpcmUKLSAgICAgIHN1cHBvcnQgZm9yIG11bHRpLXN0cmVhbSBmaWxlcywgY29uc2lkZXIgdXNpbmcgdGhlIHRoaXJkLXBhcnR5Ci0gICAgICA6bW9kOmBiejJmaWxlYCBtb2R1bGUgKGF2YWlsYWJsZSBmcm9tCi0gICAgICBgUHlQSSA8aHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpL2J6MmZpbGU+YF8pLiBUaGlzIG1vZHVsZSBwcm92aWRlcyBhCi0gICAgICBiYWNrcG9ydCBvZiBQeXRob24gMy4zJ3MgOmNsYXNzOmBCWjJGaWxlYCBjbGFzcywgd2hpY2ggZG9lcyBzdXBwb3J0CisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhlIGBgJ2EnYGAgKGFwcGVuZCkgbW9kZSB3YXMgYWRkZWQsIGFsb25nIHdpdGggc3VwcG9ydCBmb3IgcmVhZGluZwogICAgICAgbXVsdGktc3RyZWFtIGZpbGVzLgogCiAKLSAgIC4uIG1ldGhvZDo6IGNsb3NlKCkKLQotICAgICAgQ2xvc2UgdGhlIGZpbGUuIFNldHMgZGF0YSBhdHRyaWJ1dGUgOmF0dHI6YGNsb3NlZGAgdG8gdHJ1ZS4gQSBjbG9zZWQgZmlsZQotICAgICAgY2Fubm90IGJlIHVzZWQgZm9yIGZ1cnRoZXIgSS9PIG9wZXJhdGlvbnMuIDptZXRoOmBjbG9zZWAgbWF5IGJlIGNhbGxlZAotICAgICAgbW9yZSB0aGFuIG9uY2Ugd2l0aG91dCBlcnJvci4KLQotCi0gICAuLiBtZXRob2Q6OiByZWFkKFtzaXplXSkKLQotICAgICAgUmVhZCBhdCBtb3N0ICpzaXplKiB1bmNvbXByZXNzZWQgYnl0ZXMsIHJldHVybmVkIGFzIGEgYnl0ZSBzdHJpbmcuIElmIHRoZQotICAgICAgKnNpemUqIGFyZ3VtZW50IGlzIG5lZ2F0aXZlIG9yIG9taXR0ZWQsIHJlYWQgdW50aWwgRU9GIGlzIHJlYWNoZWQuCi0KLQotICAgLi4gbWV0aG9kOjogcmVhZGxpbmUoW3NpemVdKQotCi0gICAgICBSZXR1cm4gdGhlIG5leHQgbGluZSBmcm9tIHRoZSBmaWxlLCBhcyBhIGJ5dGUgc3RyaW5nLCByZXRhaW5pbmcgbmV3bGluZS4KLSAgICAgIEEgbm9uLW5lZ2F0aXZlICpzaXplKiBhcmd1bWVudCBsaW1pdHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIGJ5dGVzIHRvCi0gICAgICByZXR1cm4gKGFuIGluY29tcGxldGUgbGluZSBtYXkgYmUgcmV0dXJuZWQgdGhlbikuIFJldHVybiBhbiBlbXB0eSBieXRlCi0gICAgICBzdHJpbmcgYXQgRU9GLgotCi0KLSAgIC4uIG1ldGhvZDo6IHJlYWRsaW5lcyhbc2l6ZV0pCi0KLSAgICAgIFJldHVybiBhIGxpc3Qgb2YgbGluZXMgcmVhZC4gVGhlIG9wdGlvbmFsICpzaXplKiBhcmd1bWVudCwgaWYgZ2l2ZW4sIGlzIGFuCi0gICAgICBhcHByb3hpbWF0ZSBib3VuZCBvbiB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIGluIHRoZSBsaW5lcyByZXR1cm5lZC4KLQotCi0gICAuLiBtZXRob2Q6OiBzZWVrKG9mZnNldFssIHdoZW5jZV0pCi0KLSAgICAgIE1vdmUgdG8gbmV3IGZpbGUgcG9zaXRpb24uIEFyZ3VtZW50ICpvZmZzZXQqIGlzIGEgYnl0ZSBjb3VudC4gT3B0aW9uYWwKLSAgICAgIGFyZ3VtZW50ICp3aGVuY2UqIGRlZmF1bHRzIHRvIGBgb3MuU0VFS19TRVRgYCBvciBgYDBgYCAob2Zmc2V0IGZyb20gc3RhcnQKLSAgICAgIG9mIGZpbGU7IG9mZnNldCBzaG91bGQgYmUgYGA+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+YF8gZm9yIGFuCi0gICAgIGV4YW1wbGUgYnVpbHQgb24gOmNsYXNzOmBNdXRhYmxlU2V0YC4KLQotICAgKiBGb3IgbW9yZSBhYm91dCBBQkNzLCBzZWUgdGhlIDptb2Q6YGFiY2AgbW9kdWxlIGFuZCA6cGVwOmAzMTE5YC4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2NvbmN1cnJlbnQuZnV0dXJlcy5yc3QgYi9Eb2MvbGlicmFyeS9jb25jdXJyZW50LmZ1dHVyZXMucnN0CmluZGV4IDI5ZmZjMGQuLmE4OGYxMGMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2NvbmN1cnJlbnQuZnV0dXJlcy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvY29uY3VycmVudC5mdXR1cmVzLnJzdApAQCAtMTY5LDYgKzE2OSwxMiBAQAogICAgb2YgYXQgbW9zdCAqbWF4X3dvcmtlcnMqIHByb2Nlc3Nlcy4gIElmICptYXhfd29ya2VycyogaXMgYGBOb25lYGAgb3Igbm90CiAgICBnaXZlbiwgaXQgd2lsbCBkZWZhdWx0IHRvIHRoZSBudW1iZXIgb2YgcHJvY2Vzc29ycyBvbiB0aGUgbWFjaGluZS4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFdoZW4gb25lIG9mIHRoZSB3b3JrZXIgcHJvY2Vzc2VzIHRlcm1pbmF0ZXMgYWJydXB0bHksIGEKKyAgICAgIDpleGM6YEJyb2tlblByb2Nlc3NQb29sYCBlcnJvciBpcyBub3cgcmFpc2VkLiAgUHJldmlvdXNseSwgYmVoYXZpb3VyCisgICAgICB3YXMgdW5kZWZpbmVkIGJ1dCBvcGVyYXRpb25zIG9uIHRoZSBleGVjdXRvciBvciBpdHMgZnV0dXJlcyB3b3VsZCBvZnRlbgorICAgICAgZnJlZXplIG9yIGRlYWRsb2NrLgorCiAKIC4uIF9wcm9jZXNzcG9vbGV4ZWN1dG9yLWV4YW1wbGU6CiAKQEAgLTM2OSwzICszNzUsMTYgQEAKICAgIDpwZXA6YDMxNDhgIC0tIGZ1dHVyZXMgLSBleGVjdXRlIGNvbXB1dGF0aW9ucyBhc3luY2hyb25vdXNseQogICAgICAgVGhlIHByb3Bvc2FsIHdoaWNoIGRlc2NyaWJlZCB0aGlzIGZlYXR1cmUgZm9yIGluY2x1c2lvbiBpbiB0aGUgUHl0aG9uCiAgICAgICBzdGFuZGFyZCBsaWJyYXJ5LgorCisKK0V4Y2VwdGlvbiBjbGFzc2VzCistLS0tLS0tLS0tLS0tLS0tLQorCisuLiBleGNlcHRpb246OiBCcm9rZW5Qcm9jZXNzUG9vbAorCisgICBEZXJpdmVkIGZyb20gOmV4YzpgUnVudGltZUVycm9yYCwgdGhpcyBleGNlcHRpb24gY2xhc3MgaXMgcmFpc2VkIHdoZW4KKyAgIG9uZSBvZiB0aGUgd29ya2VycyBvZiBhIDpjbGFzczpgUHJvY2Vzc1Bvb2xFeGVjdXRvcmAgaGFzIHRlcm1pbmF0ZWQKKyAgIGluIGEgbm9uLWNsZWFuIGZhc2hpb24gKGZvciBleGFtcGxlLCBpZiBpdCB3YXMga2lsbGVkIGZyb20gdGhlIG91dHNpZGUpLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvY29weXJlZy5yc3QgYi9Eb2MvbGlicmFyeS9jb3B5cmVnLnJzdAppbmRleCBhMmQzMTZlLi40MTA2MWU1IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9jb3B5cmVnLnJzdAorKysgYi9Eb2MvbGlicmFyeS9jb3B5cmVnLnJzdApAQCAtMzIsNiArMzIsOCBAQAogICAgcmV0dXJuZWQgYnkgKmZ1bmN0aW9uKiBhdCBwaWNrbGluZyB0aW1lLiAgOmV4YzpgVHlwZUVycm9yYCB3aWxsIGJlIHJhaXNlZCBpZgogICAgKm9iamVjdCogaXMgYSBjbGFzcyBvciAqY29uc3RydWN0b3IqIGlzIG5vdCBjYWxsYWJsZS4KIAotICAgU2VlIHRoZSA6bW9kOmBwaWNrbGVgIG1vZHVsZSBmb3IgbW9yZSBkZXRhaWxzIG9uIHRoZSBpbnRlcmZhY2UgZXhwZWN0ZWQgb2YKLSAgICpmdW5jdGlvbiogYW5kICpjb25zdHJ1Y3RvciouCi0KKyAgIFNlZSB0aGUgOm1vZDpgcGlja2xlYCBtb2R1bGUgZm9yIG1vcmUgZGV0YWlscyBvbiB0aGUgaW50ZXJmYWNlCisgICBleHBlY3RlZCBvZiAqZnVuY3Rpb24qIGFuZCAqY29uc3RydWN0b3IqLiAgTm90ZSB0aGF0IHRoZQorICAgOmF0dHI6YH5waWNrbGUuUGlja2xlci5kaXNwYXRjaF90YWJsZWAgYXR0cmlidXRlIG9mIGEgcGlja2xlcgorICAgb2JqZWN0IG9yIHN1YmNsYXNzIG9mIDpjbGFzczpgcGlja2xlLlBpY2tsZXJgIGNhbiBhbHNvIGJlIHVzZWQgZm9yCisgICBkZWNsYXJpbmcgcmVkdWN0aW9uIGZ1bmN0aW9ucy4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2NyeXB0LnJzdCBiL0RvYy9saWJyYXJ5L2NyeXB0LnJzdAppbmRleCAwYmU1NzFlLi4xYmEyZWQzIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9jcnlwdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvY3J5cHQucnN0CkBAIC0xNSw5ICsxNSw5IEBACiAKIFRoaXMgbW9kdWxlIGltcGxlbWVudHMgYW4gaW50ZXJmYWNlIHRvIHRoZSA6bWFucGFnZTpgY3J5cHQoMylgIHJvdXRpbmUsIHdoaWNoIGlzCiBhIG9uZS13YXkgaGFzaCBmdW5jdGlvbiBiYXNlZCB1cG9uIGEgbW9kaWZpZWQgREVTIGFsZ29yaXRobTsgc2VlIHRoZSBVbml4IG1hbgotcGFnZSBmb3IgZnVydGhlciBkZXRhaWxzLiAgUG9zc2libGUgdXNlcyBpbmNsdWRlIGFsbG93aW5nIFB5dGhvbiBzY3JpcHRzIHRvCi1hY2NlcHQgdHlwZWQgcGFzc3dvcmRzIGZyb20gdGhlIHVzZXIsIG9yIGF0dGVtcHRpbmcgdG8gY3JhY2sgVW5peCBwYXNzd29yZHMgd2l0aAotYSBkaWN0aW9uYXJ5LgorcGFnZSBmb3IgZnVydGhlciBkZXRhaWxzLiAgUG9zc2libGUgdXNlcyBpbmNsdWRlIHN0b3JpbmcgaGFzaGVkIHBhc3N3b3Jkcworc28geW91IGNhbiBjaGVjayBwYXNzd29yZHMgd2l0aG91dCBzdG9yaW5nIHRoZSBhY3R1YWwgcGFzc3dvcmQsIG9yIGF0dGVtcHRpbmcKK3RvIGNyYWNrIFVuaXggcGFzc3dvcmRzIHdpdGggYSBkaWN0aW9uYXJ5LgogCiAuLiBpbmRleDo6IHNpbmdsZTogY3J5cHQoMykKIApAQCAtMjYsMTUgKzI2LDc0IEBACiBleHRlbnNpb25zIGF2YWlsYWJsZSBvbiB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiB3aWxsIGFsc28gIGJlIGF2YWlsYWJsZSBvbgogdGhpcyBtb2R1bGUuCiAKK0hhc2hpbmcgTWV0aG9kcworLS0tLS0tLS0tLS0tLS0tCiAKLS4uIGZ1bmN0aW9uOjogY3J5cHQod29yZCwgc2FsdCkKKy4uIHZlcnNpb25hZGRlZDo6IDMuMworCitUaGUgOm1vZDpgY3J5cHRgIG1vZHVsZSBkZWZpbmVzIHRoZSBsaXN0IG9mIGhhc2hpbmcgbWV0aG9kcyAobm90IGFsbCBtZXRob2RzCithcmUgYXZhaWxhYmxlIG9uIGFsbCBwbGF0Zm9ybXMpOgorCisuLiBkYXRhOjogTUVUSE9EX1NIQTUxMgorCisgICBBIE1vZHVsYXIgQ3J5cHQgRm9ybWF0IG1ldGhvZCB3aXRoIDE2IGNoYXJhY3RlciBzYWx0IGFuZCA4NiBjaGFyYWN0ZXIKKyAgIGhhc2guICBUaGlzIGlzIHRoZSBzdHJvbmdlc3QgbWV0aG9kLgorCisuLiBkYXRhOjogTUVUSE9EX1NIQTI1NgorCisgICBBbm90aGVyIE1vZHVsYXIgQ3J5cHQgRm9ybWF0IG1ldGhvZCB3aXRoIDE2IGNoYXJhY3RlciBzYWx0IGFuZCA0MworICAgY2hhcmFjdGVyIGhhc2guCisKKy4uIGRhdGE6OiBNRVRIT0RfTUQ1CisKKyAgIEFub3RoZXIgTW9kdWxhciBDcnlwdCBGb3JtYXQgbWV0aG9kIHdpdGggOCBjaGFyYWN0ZXIgc2FsdCBhbmQgMjIKKyAgIGNoYXJhY3RlciBoYXNoLgorCisuLiBkYXRhOjogTUVUSE9EX0NSWVBUCisKKyAgIFRoZSB0cmFkaXRpb25hbCBtZXRob2Qgd2l0aCBhIDIgY2hhcmFjdGVyIHNhbHQgYW5kIDEzIGNoYXJhY3RlcnMgb2YKKyAgIGhhc2guICBUaGlzIGlzIHRoZSB3ZWFrZXN0IG1ldGhvZC4KKworCitNb2R1bGUgQXR0cmlidXRlcworLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGF0dHJpYnV0ZTo6IG1ldGhvZHMKKworICAgQSBsaXN0IG9mIGF2YWlsYWJsZSBwYXNzd29yZCBoYXNoaW5nIGFsZ29yaXRobXMsIGFzCisgICBgYGNyeXB0Lk1FVEhPRF8qYGAgb2JqZWN0cy4gIFRoaXMgbGlzdCBpcyBzb3J0ZWQgZnJvbSBzdHJvbmdlc3QgdG8KKyAgIHdlYWtlc3QsIGFuZCBpcyBndWFyYW50ZWVkIHRvIGhhdmUgYXQgbGVhc3QgYGBjcnlwdC5NRVRIT0RfQ1JZUFRgYC4KKworCitNb2R1bGUgRnVuY3Rpb25zCistLS0tLS0tLS0tLS0tLS0tCisKK1RoZSA6bW9kOmBjcnlwdGAgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnM6CisKKy4uIGZ1bmN0aW9uOjogY3J5cHQod29yZCwgc2FsdD1Ob25lKQogCiAgICAqd29yZCogd2lsbCB1c3VhbGx5IGJlIGEgdXNlcidzIHBhc3N3b3JkIGFzIHR5cGVkIGF0IGEgcHJvbXB0IG9yICBpbiBhIGdyYXBoaWNhbAotICAgaW50ZXJmYWNlLiAgKnNhbHQqIGlzIHVzdWFsbHkgYSByYW5kb20gdHdvLWNoYXJhY3RlciBzdHJpbmcgd2hpY2ggd2lsbCBiZSB1c2VkCi0gICB0byBwZXJ0dXJiIHRoZSBERVMgYWxnb3JpdGhtIGluIG9uZSBvZiA0MDk2IHdheXMuICBUaGUgY2hhcmFjdGVycyBpbiAqc2FsdCogbXVzdAotICAgYmUgaW4gdGhlIHNldCBgYFsuL2EtekEtWjAtOV1gYC4gIFJldHVybnMgdGhlIGhhc2hlZCBwYXNzd29yZCBhcyBhIHN0cmluZywgd2hpY2gKLSAgIHdpbGwgYmUgY29tcG9zZWQgb2YgY2hhcmFjdGVycyBmcm9tIHRoZSBzYW1lIGFscGhhYmV0IGFzIHRoZSBzYWx0ICh0aGUgZmlyc3QgdHdvCi0gICBjaGFyYWN0ZXJzIHJlcHJlc2VudCB0aGUgc2FsdCBpdHNlbGYpLgorICAgaW50ZXJmYWNlLiAgVGhlIG9wdGlvbmFsICpzYWx0KiBpcyBlaXRoZXIgYSBzdHJpbmcgYXMgcmV0dXJuZWQgZnJvbQorICAgOmZ1bmM6YG1rc2FsdGAsIG9uZSBvZiB0aGUgYGBjcnlwdC5NRVRIT0RfKmBgIHZhbHVlcyAodGhvdWdoIG5vdCBhbGwKKyAgIG1heSBiZSBhdmFpbGFibGUgb24gYWxsIHBsYXRmb3JtcyksIG9yIGEgZnVsbCBlbmNyeXB0ZWQgcGFzc3dvcmQKKyAgIGluY2x1ZGluZyBzYWx0LCBhcyByZXR1cm5lZCBieSB0aGlzIGZ1bmN0aW9uLiAgSWYgKnNhbHQqIGlzIG5vdAorICAgcHJvdmlkZWQsIHRoZSBzdHJvbmdlc3QgbWV0aG9kIHdpbGwgYmUgdXNlZCAoYXMgcmV0dXJuZWQgYnkKKyAgIDpmdW5jOmBtZXRob2RzYC4KKworICAgQ2hlY2tpbmcgYSBwYXNzd29yZCBpcyB1c3VhbGx5IGRvbmUgYnkgcGFzc2luZyB0aGUgcGxhaW4tdGV4dCBwYXNzd29yZAorICAgYXMgKndvcmQqIGFuZCB0aGUgZnVsbCByZXN1bHRzIG9mIGEgcHJldmlvdXMgOmZ1bmM6YGNyeXB0YCBjYWxsLAorICAgd2hpY2ggc2hvdWxkIGJlIHRoZSBzYW1lIGFzIHRoZSByZXN1bHRzIG9mIHRoaXMgY2FsbC4KKworICAgKnNhbHQqIChlaXRoZXIgYSByYW5kb20gMiBvciAxNiBjaGFyYWN0ZXIgc3RyaW5nLCBwb3NzaWJseSBwcmVmaXhlZCB3aXRoCisgICBgYCRkaWdpdCRgYCB0byBpbmRpY2F0ZSB0aGUgbWV0aG9kKSB3aGljaCB3aWxsIGJlIHVzZWQgdG8gcGVydHVyYiB0aGUKKyAgIGVuY3J5cHRpb24gYWxnb3JpdGhtLiAgVGhlIGNoYXJhY3RlcnMgaW4gKnNhbHQqIG11c3QgYmUgaW4gdGhlIHNldAorICAgYGBbLi9hLXpBLVowLTldYGAsIHdpdGggdGhlIGV4Y2VwdGlvbiBvZiBNb2R1bGFyIENyeXB0IEZvcm1hdCB3aGljaAorICAgcHJlZml4ZXMgYSBgYCRkaWdpdCRgYC4KKworICAgUmV0dXJucyB0aGUgaGFzaGVkIHBhc3N3b3JkIGFzIGEgc3RyaW5nLCB3aGljaCB3aWxsIGJlIGNvbXBvc2VkIG9mCisgICBjaGFyYWN0ZXJzIGZyb20gdGhlIHNhbWUgYWxwaGFiZXQgYXMgdGhlIHNhbHQuCiAKICAgIC4uIGluZGV4Ojogc2luZ2xlOiBjcnlwdCgzKQogCkBAIC00MiwxOCArMTAxLDQ4IEBACiAgICBkaWZmZXJlbnQgc2l6ZXMgaW4gdGhlICpzYWx0KiwgaXQgaXMgcmVjb21tZW5kZWQgdG8gdXNlICB0aGUgZnVsbCBjcnlwdGVkCiAgICBwYXNzd29yZCBhcyBzYWx0IHdoZW4gY2hlY2tpbmcgZm9yIGEgcGFzc3dvcmQuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBY2NlcHQgYGBjcnlwdC5NRVRIT0RfKmBgIHZhbHVlcyBpbiBhZGRpdGlvbiB0byBzdHJpbmdzIGZvciAqc2FsdCouCisKKworLi4gZnVuY3Rpb246OiBta3NhbHQobWV0aG9kPU5vbmUpCisKKyAgIFJldHVybiBhIHJhbmRvbWx5IGdlbmVyYXRlZCBzYWx0IG9mIHRoZSBzcGVjaWZpZWQgbWV0aG9kLiAgSWYgbm8KKyAgICptZXRob2QqIGlzIGdpdmVuLCB0aGUgc3Ryb25nZXN0IG1ldGhvZCBhdmFpbGFibGUgYXMgcmV0dXJuZWQgYnkKKyAgIDpmdW5jOmBtZXRob2RzYCBpcyB1c2VkLgorCisgICBUaGUgcmV0dXJuIHZhbHVlIGlzIGEgc3RyaW5nIGVpdGhlciBvZiAyIGNoYXJhY3RlcnMgaW4gbGVuZ3RoIGZvcgorICAgYGBjcnlwdC5NRVRIT0RfQ1JZUFRgYCwgb3IgMTkgY2hhcmFjdGVycyBzdGFydGluZyB3aXRoIGBgJGRpZ2l0JGBgIGFuZAorICAgMTYgcmFuZG9tIGNoYXJhY3RlcnMgZnJvbSB0aGUgc2V0IGBgWy4vYS16QS1aMC05XWBgLCBzdWl0YWJsZSBmb3IKKyAgIHBhc3NpbmcgYXMgdGhlICpzYWx0KiBhcmd1bWVudCB0byA6ZnVuYzpgY3J5cHRgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworRXhhbXBsZXMKKy0tLS0tLS0tCisKIEEgc2ltcGxlIGV4YW1wbGUgaWxsdXN0cmF0aW5nIHR5cGljYWwgdXNlOjoKIAotICAgaW1wb3J0IGNyeXB0LCBnZXRwYXNzLCBwd2QKKyAgIGltcG9ydCBwd2QKKyAgIGltcG9ydCBjcnlwdAorICAgaW1wb3J0IGdldHBhc3MKIAogICAgZGVmIGxvZ2luKCk6Ci0gICAgICAgdXNlcm5hbWUgPSBpbnB1dCgnUHl0aG9uIGxvZ2luOicpCisgICAgICAgdXNlcm5hbWUgPSBpbnB1dCgnUHl0aG9uIGxvZ2luOiAnKQogICAgICAgIGNyeXB0ZWRwYXNzd2QgPSBwd2QuZ2V0cHduYW0odXNlcm5hbWUpWzFdCiAgICAgICAgaWYgY3J5cHRlZHBhc3N3ZDoKICAgICAgICAgICAgaWYgY3J5cHRlZHBhc3N3ZCA9PSAneCcgb3IgY3J5cHRlZHBhc3N3ZCA9PSAnKic6Ci0gICAgICAgICAgICAgICByYWlzZSAiU29ycnksIGN1cnJlbnRseSBubyBzdXBwb3J0IGZvciBzaGFkb3cgcGFzc3dvcmRzIgorICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignbm8gc3VwcG9ydCBmb3Igc2hhZG93IHBhc3N3b3JkcycpCiAgICAgICAgICAgIGNsZWFydGV4dCA9IGdldHBhc3MuZ2V0cGFzcygpCiAgICAgICAgICAgIHJldHVybiBjcnlwdC5jcnlwdChjbGVhcnRleHQsIGNyeXB0ZWRwYXNzd2QpID09IGNyeXB0ZWRwYXNzd2QKICAgICAgICBlbHNlOgotICAgICAgICAgICByZXR1cm4gMQorICAgICAgICAgICByZXR1cm4gVHJ1ZQogCitUbyBnZW5lcmF0ZSBhIGhhc2ggb2YgYSBwYXNzd29yZCB1c2luZyB0aGUgc3Ryb25nZXN0IGF2YWlsYWJsZSBtZXRob2QgYW5kCitjaGVjayBpdCBhZ2FpbnN0IHRoZSBvcmlnaW5hbDo6CisKKyAgIGltcG9ydCBjcnlwdAorCisgICBoYXNoZWQgPSBjcnlwdC5jcnlwdChwbGFpbnRleHQpCisgICBpZiBoYXNoZWQgIT0gY3J5cHQuY3J5cHQocGxhaW50ZXh0LCBoYXNoZWQpOgorICAgICAgcmFpc2UgVmFsdWVFcnJvcigiaGFzaGVkIHZlcnNpb24gZG9lc24ndCB2YWxpZGF0ZSBhZ2FpbnN0IG9yaWdpbmFsIikKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2Nzdi5yc3QgYi9Eb2MvbGlicmFyeS9jc3YucnN0CmluZGV4IGVkYmU3MjYuLmVjMGRmY2MgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2Nzdi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvY3N2LnJzdApAQCAtMTEsMTUgKzExLDE1IEBACiAgICBwYWlyOiBkYXRhOyB0YWJ1bGFyCiAKIFRoZSBzby1jYWxsZWQgQ1NWIChDb21tYSBTZXBhcmF0ZWQgVmFsdWVzKSBmb3JtYXQgaXMgdGhlIG1vc3QgY29tbW9uIGltcG9ydCBhbmQKLWV4cG9ydCBmb3JtYXQgZm9yIHNwcmVhZHNoZWV0cyBhbmQgZGF0YWJhc2VzLiAgVGhlcmUgaXMgbm8gIkNTViBzdGFuZGFyZCIsIHNvCi10aGUgZm9ybWF0IGlzIG9wZXJhdGlvbmFsbHkgZGVmaW5lZCBieSB0aGUgbWFueSBhcHBsaWNhdGlvbnMgd2hpY2ggcmVhZCBhbmQKLXdyaXRlIGl0LiAgVGhlIGxhY2sgb2YgYSBzdGFuZGFyZCBtZWFucyB0aGF0IHN1YnRsZSBkaWZmZXJlbmNlcyBvZnRlbiBleGlzdCBpbgotdGhlIGRhdGEgcHJvZHVjZWQgYW5kIGNvbnN1bWVkIGJ5IGRpZmZlcmVudCBhcHBsaWNhdGlvbnMuICBUaGVzZSBkaWZmZXJlbmNlcyBjYW4KLW1ha2UgaXQgYW5ub3lpbmcgdG8gcHJvY2VzcyBDU1YgZmlsZXMgZnJvbSBtdWx0aXBsZSBzb3VyY2VzLiAgU3RpbGwsIHdoaWxlIHRoZQotZGVsaW1pdGVycyBhbmQgcXVvdGluZyBjaGFyYWN0ZXJzIHZhcnksIHRoZSBvdmVyYWxsIGZvcm1hdCBpcyBzaW1pbGFyIGVub3VnaAotdGhhdCBpdCBpcyBwb3NzaWJsZSB0byB3cml0ZSBhIHNpbmdsZSBtb2R1bGUgd2hpY2ggY2FuIGVmZmljaWVudGx5IG1hbmlwdWxhdGUKLXN1Y2ggZGF0YSwgaGlkaW5nIHRoZSBkZXRhaWxzIG9mIHJlYWRpbmcgYW5kIHdyaXRpbmcgdGhlIGRhdGEgZnJvbSB0aGUKLXByb2dyYW1tZXIuCitleHBvcnQgZm9ybWF0IGZvciBzcHJlYWRzaGVldHMgYW5kIGRhdGFiYXNlcy4gIENTViBmb3JtYXQgd2FzIHVzZWQgZm9yIG1hbnkKK3llYXJzIHByaW9yIHRvIGF0dGVtcHRzIHRvIGRlc2NyaWJlIHRoZSBmb3JtYXQgaW4gYSBzdGFuZGFyZGl6ZWQgd2F5IGluCis6cmZjOmA0MTgwYC4gIFRoZSBsYWNrIG9mIGEgd2VsbC1kZWZpbmVkIHN0YW5kYXJkIG1lYW5zIHRoYXQgc3VidGxlIGRpZmZlcmVuY2VzCitvZnRlbiBleGlzdCBpbiB0aGUgZGF0YSBwcm9kdWNlZCBhbmQgY29uc3VtZWQgYnkgZGlmZmVyZW50IGFwcGxpY2F0aW9ucy4gIFRoZXNlCitkaWZmZXJlbmNlcyBjYW4gbWFrZSBpdCBhbm5veWluZyB0byBwcm9jZXNzIENTViBmaWxlcyBmcm9tIG11bHRpcGxlIHNvdXJjZXMuCitTdGlsbCwgd2hpbGUgdGhlIGRlbGltaXRlcnMgYW5kIHF1b3RpbmcgY2hhcmFjdGVycyB2YXJ5LCB0aGUgb3ZlcmFsbCBmb3JtYXQgaXMKK3NpbWlsYXIgZW5vdWdoIHRoYXQgaXQgaXMgcG9zc2libGUgdG8gd3JpdGUgYSBzaW5nbGUgbW9kdWxlIHdoaWNoIGNhbgorZWZmaWNpZW50bHkgbWFuaXB1bGF0ZSBzdWNoIGRhdGEsIGhpZGluZyB0aGUgZGV0YWlscyBvZiByZWFkaW5nIGFuZCB3cml0aW5nIHRoZQorZGF0YSBmcm9tIHRoZSBwcm9ncmFtbWVyLgogCiBUaGUgOm1vZDpgY3N2YCBtb2R1bGUgaW1wbGVtZW50cyBjbGFzc2VzIHRvIHJlYWQgYW5kIHdyaXRlIHRhYnVsYXIgZGF0YSBpbiBDU1YKIGZvcm1hdC4gIEl0IGFsbG93cyBwcm9ncmFtbWVycyB0byBzYXksICJ3cml0ZSB0aGlzIGRhdGEgaW4gdGhlIGZvcm1hdCBwcmVmZXJyZWQKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2N0eXBlcy5yc3QgYi9Eb2MvbGlicmFyeS9jdHlwZXMucnN0CmluZGV4IGRmMzljMjguLjQ0ZjhjMjAgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2N0eXBlcy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvY3R5cGVzLnJzdApAQCAtMzksOSArMzksMTQgQEAKIGNvbnZlbnRpb24sIHdoaWxlICp3aW5kbGwqIGxpYnJhcmllcyBjYWxsIGZ1bmN0aW9ucyB1c2luZyB0aGUgYGBzdGRjYWxsYGAKIGNhbGxpbmcgY29udmVudGlvbi4gKm9sZWRsbCogYWxzbyB1c2VzIHRoZSBgYHN0ZGNhbGxgYCBjYWxsaW5nIGNvbnZlbnRpb24sIGFuZAogYXNzdW1lcyB0aGUgZnVuY3Rpb25zIHJldHVybiBhIFdpbmRvd3MgOmM6dHlwZTpgSFJFU1VMVGAgZXJyb3IgY29kZS4gVGhlIGVycm9yCi1jb2RlIGlzIHVzZWQgdG8gYXV0b21hdGljYWxseSByYWlzZSBhIDpjbGFzczpgV2luZG93c0Vycm9yYCBleGNlcHRpb24gd2hlbiB0aGUKK2NvZGUgaXMgdXNlZCB0byBhdXRvbWF0aWNhbGx5IHJhaXNlIGEgOmNsYXNzOmBPU0Vycm9yYCBleGNlcHRpb24gd2hlbiB0aGUKIGZ1bmN0aW9uIGNhbGwgZmFpbHMuCiAKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBXaW5kb3dzIGVycm9ycyB1c2VkIHRvIHJhaXNlIDpleGM6YFdpbmRvd3NFcnJvcmAsIHdoaWNoIGlzIG5vdyBhbiBhbGlhcworICAgb2YgOmV4YzpgT1NFcnJvcmAuCisKKwogSGVyZSBhcmUgc29tZSBleGFtcGxlcyBmb3IgV2luZG93cy4gTm90ZSB0aGF0IGBgbXN2Y3J0YGAgaXMgdGhlIE1TIHN0YW5kYXJkIEMKIGxpYnJhcnkgY29udGFpbmluZyBtb3N0IHN0YW5kYXJkIEMgZnVuY3Rpb25zLCBhbmQgdXNlcyB0aGUgY2RlY2wgY2FsbGluZwogY29udmVudGlvbjo6CkBAIC0xODksNyArMTk0LDcgQEAKICAgID4+PiB3aW5kbGwua2VybmVsMzIuR2V0TW9kdWxlSGFuZGxlQSgzMikgIyBkb2N0ZXN0OiArV0lORE9XUwogICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgogICAgICBGaWxlICI8c3RkaW4+IiwgbGluZSAxLCBpbiA/Ci0gICBXaW5kb3dzRXJyb3I6IGV4Y2VwdGlvbjogYWNjZXNzIHZpb2xhdGlvbiByZWFkaW5nIDB4MDAwMDAwMjAKKyAgIE9TRXJyb3I6IGV4Y2VwdGlvbjogYWNjZXNzIHZpb2xhdGlvbiByZWFkaW5nIDB4MDAwMDAwMjAKICAgID4+PgogCiBUaGVyZSBhcmUsIGhvd2V2ZXIsIGVub3VnaCB3YXlzIHRvIGNyYXNoIFB5dGhvbiB3aXRoIDptb2Q6YGN0eXBlc2AsIHNvIHlvdQpAQCAtNDkxLDcgKzQ5Niw3IEBACiAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDEsIGluID8KICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMywgaW4gVmFsaWRIYW5kbGUKLSAgIFdpbmRvd3NFcnJvcjogW0Vycm5vIDEyNl0gVGhlIHNwZWNpZmllZCBtb2R1bGUgY291bGQgbm90IGJlIGZvdW5kLgorICAgT1NFcnJvcjogW0Vycm5vIDEyNl0gVGhlIHNwZWNpZmllZCBtb2R1bGUgY291bGQgbm90IGJlIGZvdW5kLgogICAgPj4+CiAKIGBgV2luRXJyb3JgYCBpcyBhIGZ1bmN0aW9uIHdoaWNoIHdpbGwgY2FsbCBXaW5kb3dzIGBgRm9ybWF0TWVzc2FnZSgpYGAgYXBpIHRvCkBAIC0xMzQ1LDcgKzEzNTAsMTAgQEAKICAgIGFzc3VtZWQgdG8gcmV0dXJuIHRoZSB3aW5kb3dzIHNwZWNpZmljIDpjbGFzczpgSFJFU1VMVGAgY29kZS4gIDpjbGFzczpgSFJFU1VMVGAKICAgIHZhbHVlcyBjb250YWluIGluZm9ybWF0aW9uIHNwZWNpZnlpbmcgd2hldGhlciB0aGUgZnVuY3Rpb24gY2FsbCBmYWlsZWQgb3IKICAgIHN1Y2NlZWRlZCwgdG9nZXRoZXIgd2l0aCBhZGRpdGlvbmFsIGVycm9yIGNvZGUuICBJZiB0aGUgcmV0dXJuIHZhbHVlIHNpZ25hbHMgYQotICAgZmFpbHVyZSwgYW4gOmNsYXNzOmBXaW5kb3dzRXJyb3JgIGlzIGF1dG9tYXRpY2FsbHkgcmFpc2VkLgorICAgZmFpbHVyZSwgYW4gOmNsYXNzOmBPU0Vycm9yYCBpcyBhdXRvbWF0aWNhbGx5IHJhaXNlZC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIDpleGM6YFdpbmRvd3NFcnJvcmAgdXNlZCB0byBiZSByYWlzZWQuCiAKIAogLi4gY2xhc3M6OiBXaW5ETEwobmFtZSwgbW9kZT1ERUZBVUxUX01PREUsIGhhbmRsZT1Ob25lLCB1c2VfZXJybm89RmFsc2UsIHVzZV9sYXN0X2Vycm9yPUZhbHNlKQpAQCAtMTk2MiwxMSArMTk3MCwxNCBAQAogLi4gZnVuY3Rpb246OiBXaW5FcnJvcihjb2RlPU5vbmUsIGRlc2NyPU5vbmUpCiAKICAgIFdpbmRvd3Mgb25seTogdGhpcyBmdW5jdGlvbiBpcyBwcm9iYWJseSB0aGUgd29yc3QtbmFtZWQgdGhpbmcgaW4gY3R5cGVzLiBJdAotICAgY3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBXaW5kb3dzRXJyb3IuICBJZiAqY29kZSogaXMgbm90IHNwZWNpZmllZCwKKyAgIGNyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgT1NFcnJvci4gIElmICpjb2RlKiBpcyBub3Qgc3BlY2lmaWVkLAogICAgYGBHZXRMYXN0RXJyb3JgYCBpcyBjYWxsZWQgdG8gZGV0ZXJtaW5lIHRoZSBlcnJvciBjb2RlLiBJZiAqZGVzY3IqIGlzIG5vdAogICAgc3BlY2lmaWVkLCA6ZnVuYzpgRm9ybWF0RXJyb3JgIGlzIGNhbGxlZCB0byBnZXQgYSB0ZXh0dWFsIGRlc2NyaXB0aW9uIG9mIHRoZQogICAgZXJyb3IuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBbiBpbnN0YW5jZSBvZiA6ZXhjOmBXaW5kb3dzRXJyb3JgIHVzZWQgdG8gYmUgY3JlYXRlZC4KKwogCiAuLiBmdW5jdGlvbjo6IHdzdHJpbmdfYXQoYWRkcmVzcywgc2l6ZT0tMSkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvY3Vyc2VzLnJzdCBiL0RvYy9saWJyYXJ5L2N1cnNlcy5yc3QKaW5kZXggZjMxYjljNS4uZmYzYTc5MyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvY3Vyc2VzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9jdXJzZXMucnN0CkBAIC01OTgsNiArNTk4LDE3IEBACiAgICAgICBPbmx5IG9uZSAqY2gqIGNhbiBiZSBwdXNoZWQgYmVmb3JlIDptZXRoOmBnZXRjaGAgaXMgY2FsbGVkLgogCiAKKy4uIGZ1bmN0aW9uOjogdW5nZXRfd2NoKGNoKQorCisgICBQdXNoICpjaCogc28gdGhlIG5leHQgOm1ldGg6YGdldF93Y2hgIHdpbGwgcmV0dXJuIGl0LgorCisgICAuLiBub3RlOjoKKworICAgICAgT25seSBvbmUgKmNoKiBjYW4gYmUgcHVzaGVkIGJlZm9yZSA6bWV0aDpgZ2V0X3djaGAgaXMgY2FsbGVkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IHVuZ2V0bW91c2UoaWQsIHgsIHksIHosIGJzdGF0ZSkKIAogICAgUHVzaCBhIDpjb25zdDpgS0VZX01PVVNFYCBldmVudCBvbnRvIHRoZSBpbnB1dCBxdWV1ZSwgYXNzb2NpYXRpbmcgdGhlIGdpdmVuCkBAIC02NDIsNyArNjUzLDcgQEAKIC0tLS0tLS0tLS0tLS0tCiAKIFdpbmRvdyBvYmplY3RzLCBhcyByZXR1cm5lZCBieSA6ZnVuYzpgaW5pdHNjcmAgYW5kIDpmdW5jOmBuZXd3aW5gIGFib3ZlLCBoYXZlCi10aGUgZm9sbG93aW5nIG1ldGhvZHM6Cit0aGUgZm9sbG93aW5nIG1ldGhvZHMgYW5kIGF0dHJpYnV0ZXM6CiAKIAogLi4gbWV0aG9kOjogd2luZG93LmFkZGNoKFt5LCB4LF0gY2hbLCBhdHRyXSkKQEAgLTgyMyw2ICs4MzQsMTYgQEAKICAgIGV2ZW50LgogCiAKKy4uIGF0dHJpYnV0ZTo6IHdpbmRvdy5lbmNvZGluZworCisgICBFbmNvZGluZyB1c2VkIHRvIGVuY29kZSBtZXRob2QgYXJndW1lbnRzIChVbmljb2RlIHN0cmluZ3MgYW5kIGNoYXJhY3RlcnMpLgorICAgVGhlIGVuY29kaW5nIGF0dHJpYnV0ZSBpcyBpbmhlcml0ZWQgZnJvbSBieSBwYXJlbnQgd2luZG93IHdoZW4gYSBzdWJ3aW5kb3cKKyAgIGlzIGNyZWF0ZWQsIGZvciBleGFtcGxlIHdpdGggOm1ldGg6YHdpbmRvdy5zdWJ3aW5gLiBCeSBkZWZhdWx0LCB0aGUgbG9jYWxlCisgICBlbmNvZGluZyBpcyB1c2VkIChzZWUgOmZ1bmM6YGxvY2FsZS5nZXRwcmVmZXJyZWRlbmNvZGluZ2ApLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBtZXRob2Q6OiB3aW5kb3cuZXJhc2UoKQogCiAgICBDbGVhciB0aGUgd2luZG93LgpAQCAtODQ2LDYgKzg2NywxNCBAQAogICAgdW50aWwgYSBrZXkgaXMgcHJlc3NlZC4KIAogCisuLiBtZXRob2Q6OiB3aW5kb3cuZ2V0X3djaChbeSwgeF0pCisKKyAgIEdldCBhIHdpZGUgY2hhcmFjdGVyLiBMaWtlIDptZXRoOmBnZXRjaGAsIGJ1dCB0aGUgaW50ZWdlciByZXR1cm5lZCBpcyB0aGUKKyAgIFVuaWNvZGUgY29kZSBwb2ludCBmb3IgdGhlIGtleSBwcmVzc2VkLCBzbyBpdCBjYW4gYmUgcGFzc2VkIHRvIDpmdW5jOmBjaHJgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBtZXRob2Q6OiB3aW5kb3cuZ2V0a2V5KFt5LCB4XSkKIAogICAgR2V0IGEgY2hhcmFjdGVyLCByZXR1cm5pbmcgYSBzdHJpbmcgaW5zdGVhZCBvZiBhbiBpbnRlZ2VyLCBhcyA6bWV0aDpgZ2V0Y2hgCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9kYXRhdHlwZXMucnN0IGIvRG9jL2xpYnJhcnkvZGF0YXR5cGVzLnJzdAppbmRleCA2YjRhNzFhLi44ZTMzYzFmIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9kYXRhdHlwZXMucnN0CisrKyBiL0RvYy9saWJyYXJ5L2RhdGF0eXBlcy5yc3QKQEAgLTIxLDYgKzIxLDcgQEAKICAgIGRhdGV0aW1lLnJzdAogICAgY2FsZW5kYXIucnN0CiAgICBjb2xsZWN0aW9ucy5yc3QKKyAgIGNvbGxlY3Rpb25zLmFiYy5yc3QKICAgIGhlYXBxLnJzdAogICAgYmlzZWN0LnJzdAogICAgYXJyYXkucnN0CmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9kYXRldGltZS5yc3QgYi9Eb2MvbGlicmFyeS9kYXRldGltZS5yc3QKaW5kZXggMWY0Y2ZiYS4uYTZjMTk5NyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZGF0ZXRpbWUucnN0CisrKyBiL0RvYy9saWJyYXJ5L2RhdGV0aW1lLnJzdApAQCAtNzIxLDYgKzcyMSwyMiBAQAogICAgSXQncyBjb21tb24gZm9yIHRoaXMgdG8gYmUgcmVzdHJpY3RlZCB0byB5ZWFycyBpbiAxOTcwIHRocm91Z2ggMjAzOC4gU2VlIGFsc28KICAgIDptZXRoOmBmcm9tdGltZXN0YW1wYC4KIAorICAgT24gdGhlIFBPU0lYIGNvbXBsaWFudCBwbGF0Zm9ybXMsIGBgdXRjZnJvbXRpbWVzdGFtcCh0aW1lc3RhbXApYGAKKyAgIGlzIGVxdWl2YWxlbnQgdG8gdGhlIGZvbGxvd2luZyBleHByZXNzaW9uOjoKKworICAgICBkYXRldGltZSgxOTcwLCAxLCAxKSArIHRpbWVkZWx0YShzZWNvbmRzPXRpbWVzdGFtcCkKKworICAgVGhlcmUgaXMgbm8gbWV0aG9kIHRvIG9idGFpbiB0aGUgdGltZXN0YW1wIGZyb20gYSA6Y2xhc3M6YGRhdGV0aW1lYAorICAgaW5zdGFuY2UsIGJ1dCBQT1NJWCB0aW1lc3RhbXAgY29ycmVzcG9uZGluZyB0byBhIDpjbGFzczpgZGF0ZXRpbWVgCisgICBpbnN0YW5jZSBgYGR0YGAgY2FuIGJlIGVhc2lseSBjYWxjdWxhdGVkIGFzIGZvbGxvd3MuICBGb3IgYSBuYWl2ZQorICAgYGBkdGBgOjoKKworICAgICAgdGltZXN0YW1wID0gKGR0IC0gZGF0ZXRpbWUoMTk3MCwgMSwgMSkpIC8gdGltZWRlbHRhKHNlY29uZHM9MSkKKworICAgQW5kIGZvciBhbiBhd2FyZSBgYGR0YGA6OgorCisgICAgICB0aW1lc3RhbXAgPSAoZHQgLSBkYXRldGltZSgxOTcwLCAxLCAxLCB0emluZm89dGltZXpvbmUudXRjKSkgLyB0aW1lZGVsdGEoc2Vjb25kcz0xKQorCiAKIC4uIGNsYXNzbWV0aG9kOjogZGF0ZXRpbWUuZnJvbW9yZGluYWwob3JkaW5hbCkKIApAQCAtMTU2NCwxMSArMTU4MCwxMiBAQAogOmNsYXNzOmB0aW1lem9uZWAgT2JqZWN0cwogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotQSA6Y2xhc3M6YHRpbWV6b25lYCBvYmplY3QgcmVwcmVzZW50cyBhIHRpbWV6b25lIHRoYXQgaXMgZGVmaW5lZCBieSBhCi1maXhlZCBvZmZzZXQgZnJvbSBVVEMuICBOb3RlIHRoYXQgb2JqZWN0cyBvZiB0aGlzIGNsYXNzIGNhbm5vdCBiZSB1c2VkCi10byByZXByZXNlbnQgdGltZXpvbmUgaW5mb3JtYXRpb24gaW4gdGhlIGxvY2F0aW9ucyB3aGVyZSBkaWZmZXJlbnQKLW9mZnNldHMgYXJlIHVzZWQgaW4gZGlmZmVyZW50IGRheXMgb2YgdGhlIHllYXIgb3Igd2hlcmUgaGlzdG9yaWNhbAotY2hhbmdlcyBoYXZlIGJlZW4gbWFkZSB0byBjaXZpbCB0aW1lLgorVGhlIDpjbGFzczpgdGltZXpvbmVgIGNsYXNzIGlzIGEgc3ViY2xhc3Mgb2YgOmNsYXNzOmB0emluZm9gLCBlYWNoCitpbnN0YW5jZSBvZiB3aGljaCByZXByZXNlbnRzIGEgdGltZXpvbmUgZGVmaW5lZCBieSBhIGZpeGVkIG9mZnNldCBmcm9tCitVVEMuICBOb3RlIHRoYXQgb2JqZWN0cyBvZiB0aGlzIGNsYXNzIGNhbm5vdCBiZSB1c2VkIHRvIHJlcHJlc2VudAordGltZXpvbmUgaW5mb3JtYXRpb24gaW4gdGhlIGxvY2F0aW9ucyB3aGVyZSBkaWZmZXJlbnQgb2Zmc2V0cyBhcmUgdXNlZAoraW4gZGlmZmVyZW50IGRheXMgb2YgdGhlIHllYXIgb3Igd2hlcmUgaGlzdG9yaWNhbCBjaGFuZ2VzIGhhdmUgYmVlbgorbWFkZSB0byBjaXZpbCB0aW1lLgogCiAKIC4uIGNsYXNzOjogdGltZXpvbmUob2Zmc2V0WywgbmFtZV0pCkBAIC0xNzM3LDggKzE3NTQsNyBAQAogfCAgICAgICAgICAgfCBkZWNpbWFsIG51bWJlciBbMDAsOTldLiAgICAgICAgfCAgICAgICB8CiArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKIHwgYGAlWWBgICAgIHwgWWVhciB3aXRoIGNlbnR1cnkgYXMgYSBkZWNpbWFsIHwgXCg1KSAgfAotfCAgICAgICAgICAgfCBudW1iZXIgWzAwMDEsOTk5OV0gKHN0cnB0aW1lKSwgfCAgICAgICB8Ci18ICAgICAgICAgICB8IFsxMDAwLDk5OTldIChzdHJmdGltZSkuICAgICAgICB8ICAgICAgIHwKK3wgICAgICAgICAgIHwgbnVtYmVyIFswMDAxLDk5OTldLiAgICAgICAgICAgIHwgICAgICAgfAogKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCiB8IGBgJXpgYCAgICB8IFVUQyBvZmZzZXQgaW4gdGhlIGZvcm0gK0hITU0gICB8IFwoNikgIHwKIHwgICAgICAgICAgIHwgb3IgLUhITU0gKGVtcHR5IHN0cmluZyBpZiB0aGUgIHwgICAgICAgfApAQCAtMTc3MiwxMCArMTc4OCw3IEBACiAgICBjYWxjdWxhdGlvbnMgd2hlbiB0aGUgZGF5IG9mIHRoZSB3ZWVrIGFuZCB0aGUgeWVhciBhcmUgc3BlY2lmaWVkLgogCiAoNSkKLSAgIEZvciB0ZWNobmljYWwgcmVhc29ucywgOm1ldGg6YHN0cmZ0aW1lYCBtZXRob2QgZG9lcyBub3Qgc3VwcG9ydAotICAgZGF0ZXMgYmVmb3JlIHllYXIgMTAwMDogYGB0LnN0cmZ0aW1lKGZvcm1hdClgYCB3aWxsIHJhaXNlIGEKLSAgIDpleGM6YFZhbHVlRXJyb3JgIHdoZW4gYGB0LnllYXIgPCAxMDAwYGAgZXZlbiBpZiBgYGZvcm1hdGBgIGRvZXMKLSAgIG5vdCBjb250YWluIGBgJVlgYCBkaXJlY3RpdmUuICBUaGUgOm1ldGg6YHN0cnB0aW1lYCBtZXRob2QgY2FuCisgICBUaGUgOm1ldGg6YHN0cnB0aW1lYCBtZXRob2QgY2FuCiAgICBwYXJzZSB5ZWFycyBpbiB0aGUgZnVsbCBbMSwgOTk5OV0gcmFuZ2UsIGJ1dCB5ZWFycyA8IDEwMDAgbXVzdCBiZQogICAgemVyby1maWxsZWQgdG8gNC1kaWdpdCB3aWR0aC4KIApAQCAtMTc4Myw2ICsxNzk2LDEwIEBACiAgICAgICBJbiBwcmV2aW91cyB2ZXJzaW9ucywgOm1ldGg6YHN0cmZ0aW1lYCBtZXRob2Qgd2FzIHJlc3RyaWN0ZWQgdG8KICAgICAgIHllYXJzID49IDE5MDAuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBJbiB2ZXJzaW9uIDMuMiwgOm1ldGg6YHN0cmZ0aW1lYCBtZXRob2Qgd2FzIHJlc3RyaWN0ZWQgdG8KKyAgICAgIHllYXJzID49IDEwMDAuCisKICg2KQogICAgRm9yIGV4YW1wbGUsIGlmIDptZXRoOmB1dGNvZmZzZXRgIHJldHVybnMgYGB0aW1lZGVsdGEoaG91cnM9LTMsIG1pbnV0ZXM9LTMwKWBgLAogICAgYGAlemBgIGlzIHJlcGxhY2VkIHdpdGggdGhlIHN0cmluZyBgYCctMDMzMCdgYC4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2RlYnVnLnJzdCBiL0RvYy9saWJyYXJ5L2RlYnVnLnJzdAppbmRleCBiMmVlNGZhLi5jNjlmYjFjIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9kZWJ1Zy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZGVidWcucnN0CkBAIC0xMCw3ICsxMCw4IEBACiAuLiB0b2N0cmVlOjoKIAogICAgYmRiLnJzdAorICAgZmF1bHRoYW5kbGVyLnJzdAogICAgcGRiLnJzdAogICAgcHJvZmlsZS5yc3QKICAgIHRpbWVpdC5yc3QKLSAgIHRyYWNlLnJzdApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKyAgIHRyYWNlLnJzdApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZGVwZ3JhcGgtb3V0cHV0LnBuZyBiL0RvYy9saWJyYXJ5L2RlcGdyYXBoLW91dHB1dC5wbmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTYwYmIxYgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L2RlcGdyYXBoLW91dHB1dC5wbmcKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZGlmZmxpYi5yc3QgYi9Eb2MvbGlicmFyeS9kaWZmbGliLnJzdAppbmRleCBiZGMzN2IzLi44MzZlMjQwIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9kaWZmbGliLnJzdAorKysgYi9Eb2MvbGlicmFyeS9kaWZmbGliLnJzdApAQCAtNzUyLDggKzc1Miw4IEBACiAgICAgICAgIyB3ZSdyZSBwYXNzaW5nIHRoZXNlIGFzIGFyZ3VtZW50cyB0byB0aGUgZGlmZiBmdW5jdGlvbgogICAgICAgIGZyb21kYXRlID0gdGltZS5jdGltZShvcy5zdGF0KGZyb21maWxlKS5zdF9tdGltZSkKICAgICAgICB0b2RhdGUgPSB0aW1lLmN0aW1lKG9zLnN0YXQodG9maWxlKS5zdF9tdGltZSkKLSAgICAgICBmcm9tbGluZXMgPSBvcGVuKGZyb21maWxlLCAnVScpLnJlYWRsaW5lcygpCi0gICAgICAgdG9saW5lcyA9IG9wZW4odG9maWxlLCAnVScpLnJlYWRsaW5lcygpCisgICAgICAgd2l0aCBvcGVuKGZyb21saW5lcykgYXMgZnJvbWYsIG9wZW4odG9maWxlKSBhcyB0b2Y6CisgICAgICAgICAgIGZyb21saW5lcywgdG9saW5lcyA9IGxpc3QoZnJvbWYpLCBsaXN0KHRvZikKIAogICAgICAgIGlmIG9wdGlvbnMudToKICAgICAgICAgICAgZGlmZiA9IGRpZmZsaWIudW5pZmllZF9kaWZmKGZyb21saW5lcywgdG9saW5lcywgZnJvbWZpbGUsIHRvZmlsZSwKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2Rpcy5yc3QgYi9Eb2MvbGlicmFyeS9kaXMucnN0CmluZGV4IDc5Y2M1ODMuLjViYTY2Y2IgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2Rpcy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZGlzLnJzdApAQCAtMTcxLDExICsxNzEsNiBAQAogCiAqKkdlbmVyYWwgaW5zdHJ1Y3Rpb25zKioKIAotLi4gb3Bjb2RlOjogU1RPUF9DT0RFCi0KLSAgIEluZGljYXRlcyBlbmQtb2YtY29kZSB0byB0aGUgY29tcGlsZXIsIG5vdCB1c2VkIGJ5IHRoZSBpbnRlcnByZXRlci4KLQotCiAuLiBvcGNvZGU6OiBOT1AKIAogICAgRG8gbm90aGluZyBjb2RlLiAgVXNlZCBhcyBhIHBsYWNlaG9sZGVyIGJ5IHRoZSBieXRlY29kZSBvcHRpbWl6ZXIuCkBAIC00MzYsNiArNDMxLDEzIEBACiAgICBQb3BzIGBgVE9TYGAgYW5kIHlpZWxkcyBpdCBmcm9tIGEgOnRlcm06YGdlbmVyYXRvcmAuCiAKIAorLi4gb3Bjb2RlOjogWUlFTERfRlJPTQorCisgICBQb3BzIGBgVE9TYGAgYW5kIGRlbGVnYXRlcyB0byBpdCBhcyBhIHN1Yml0ZXJhdG9yIGZyb20gYSA6dGVybTpgZ2VuZXJhdG9yYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gb3Bjb2RlOjogSU1QT1JUX1NUQVIKIAogICAgTG9hZHMgYWxsIHN5bWJvbHMgbm90IHN0YXJ0aW5nIHdpdGggYGAnXydgYCBkaXJlY3RseSBmcm9tIHRoZSBtb2R1bGUgVE9TIHRvIHRoZQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZGlzdHV0aWxzLnJzdCBiL0RvYy9saWJyYXJ5L2Rpc3R1dGlscy5yc3QKaW5kZXggMjM4Yjc5ZC4uNTNhNjlhZSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZGlzdHV0aWxzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9kaXN0dXRpbHMucnN0CkBAIC0xMiwxOCArMTIsMjYgQEAKIDEwMCUtcHVyZSBQeXRob24sIG9yIG1heSBiZSBleHRlbnNpb24gbW9kdWxlcyB3cml0dGVuIGluIEMsIG9yIG1heSBiZQogY29sbGVjdGlvbnMgb2YgUHl0aG9uIHBhY2thZ2VzIHdoaWNoIGluY2x1ZGUgbW9kdWxlcyBjb2RlZCBpbiBib3RoIFB5dGhvbiBhbmQgQy4KIAotVGhpcyBwYWNrYWdlIGlzIGRpc2N1c3NlZCBpbiB0d28gc2VwYXJhdGUgY2hhcHRlcnM6CisuLiBkZXByZWNhdGVkOjogMy4zCisgICA6bW9kOmBwYWNrYWdpbmdgIHJlcGxhY2VzIERpc3R1dGlscy4gIFNlZSA6cmVmOmBwYWNrYWdpbmctaW5kZXhgIGFuZAorICAgOnJlZjpgcGFja2FnaW5nLWluc3RhbGwtaW5kZXhgLgogCiAKK1VzZXIgZG9jdW1lbnRhdGlvbiBhbmQgQVBJIHJlZmVyZW5jZSBhcmUgcHJvdmlkZWQgaW4gYW5vdGhlciBkb2N1bWVudDoKKwogLi4gc2VlYWxzbzo6CiAKICAgIDpyZWY6YGRpc3R1dGlscy1pbmRleGAKICAgICAgIFRoZSBtYW51YWwgZm9yIGRldmVsb3BlcnMgYW5kIHBhY2thZ2VycyBvZiBQeXRob24gbW9kdWxlcy4gIFRoaXMgZGVzY3JpYmVzCiAgICAgICBob3cgdG8gcHJlcGFyZSA6bW9kOmBkaXN0dXRpbHNgXCAtYmFzZWQgcGFja2FnZXMgc28gdGhhdCB0aGV5IG1heSBiZQotICAgICAgZWFzaWx5IGluc3RhbGxlZCBpbnRvIGFuIGV4aXN0aW5nIFB5dGhvbiBpbnN0YWxsYXRpb24uCisgICAgICBlYXNpbHkgaW5zdGFsbGVkIGludG8gYW4gZXhpc3RpbmcgUHl0aG9uIGluc3RhbGxhdGlvbi4gIElmIGFsc28gY29udGFpbnMKKyAgICAgIGluc3RydWN0aW9ucyBmb3IgZW5kLXVzZXJzIHdhbnRpbmcgdG8gaW5zdGFsbCBhIGRpc3R1dGlscy1iYXNlZCBwYWNrYWdlLAorICAgICAgOnJlZjpgaW5zdGFsbC1pbmRleGAuCiAKLSAgIDpyZWY6YGluc3RhbGwtaW5kZXhgCi0gICAgICBBbiAiYWRtaW5pc3RyYXRvcnMiIG1hbnVhbCB3aGljaCBpbmNsdWRlcyBpbmZvcm1hdGlvbiBvbiBpbnN0YWxsaW5nCi0gICAgICBtb2R1bGVzIGludG8gYW4gZXhpc3RpbmcgUHl0aG9uIGluc3RhbGxhdGlvbi4gIFlvdSBkbyBub3QgbmVlZCB0byBiZSBhCi0gICAgICBQeXRob24gcHJvZ3JhbW1lciB0byByZWFkIHRoaXMgbWFudWFsLgogCisuLiB0cmljayB0byBzaWxlbmNlIGEgU3BoaW54IHdhcm5pbmcKKworLi4gdG9jdHJlZTo6CisgICA6aGlkZGVuOgorCisgICAuLi9kaXN0dXRpbHMvaW5kZXgKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2VtYWlsLmdlbmVyYXRvci5yc3QgYi9Eb2MvbGlicmFyeS9lbWFpbC5nZW5lcmF0b3IucnN0CmluZGV4IDg1YjMyZmUuLjg0N2Q3ZTQgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2VtYWlsLmdlbmVyYXRvci5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZW1haWwuZ2VuZXJhdG9yLnJzdApAQCAtMzIsNyArMzIsOCBAQAogOm1vZDpgZW1haWwuZ2VuZXJhdG9yYCBtb2R1bGU6CiAKIAotLi4gY2xhc3M6OiBHZW5lcmF0b3Iob3V0ZnAsIG1hbmdsZV9mcm9tXz1UcnVlLCBtYXhoZWFkZXJsZW49NzgpCisuLiBjbGFzczo6IEdlbmVyYXRvcihvdXRmcCwgbWFuZ2xlX2Zyb21fPVRydWUsIG1heGhlYWRlcmxlbj03OCwgKiwgXAorICAgICAgICAgICAgICAgICAgICAgcG9saWN5PXBvbGljeS5kZWZhdWx0KQogCiAgICBUaGUgY29uc3RydWN0b3IgZm9yIHRoZSA6Y2xhc3M6YEdlbmVyYXRvcmAgY2xhc3MgdGFrZXMgYSA6dGVybTpgZmlsZS1saWtlIG9iamVjdGAKICAgIGNhbGxlZCAqb3V0ZnAqIGZvciBhbiBhcmd1bWVudC4gICpvdXRmcCogbXVzdCBzdXBwb3J0IHRoZSA6bWV0aDpgd3JpdGVgIG1ldGhvZApAQCAtNTMsMTAgKzU0LDE2IEBACiAgICA6Y2xhc3M6YH5lbWFpbC5oZWFkZXIuSGVhZGVyYCBjbGFzcy4gIFNldCB0byB6ZXJvIHRvIGRpc2FibGUgaGVhZGVyIHdyYXBwaW5nLgogICAgVGhlIGRlZmF1bHQgaXMgNzgsIGFzIHJlY29tbWVuZGVkIChidXQgbm90IHJlcXVpcmVkKSBieSA6cmZjOmAyODIyYC4KIAorICAgVGhlICpwb2xpY3kqIGtleXdvcmQgc3BlY2lmaWVzIGEgOm1vZDpgfmVtYWlsLnBvbGljeWAgb2JqZWN0IHRoYXQgY29udHJvbHMgYQorICAgbnVtYmVyIG9mIGFzcGVjdHMgb2YgdGhlIGdlbmVyYXRvcidzIG9wZXJhdGlvbi4gIFRoZSBkZWZhdWx0IHBvbGljeQorICAgbWFpbnRhaW5zIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zIEFkZGVkIHRoZSAqcG9saWN5KiBrZXl3b3JkLgorCiAgICBUaGUgb3RoZXIgcHVibGljIDpjbGFzczpgR2VuZXJhdG9yYCBtZXRob2RzIGFyZToKIAogCi0gICAuLiBtZXRob2Q6OiBmbGF0dGVuKG1zZywgdW5peGZyb209RmFsc2UsIGxpbmVzZXA9J1xcbicpCisgICAuLiBtZXRob2Q6OiBmbGF0dGVuKG1zZywgdW5peGZyb209RmFsc2UsIGxpbmVzZXA9Tm9uZSkKIAogICAgICAgUHJpbnQgdGhlIHRleHR1YWwgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1lc3NhZ2Ugb2JqZWN0IHN0cnVjdHVyZSByb290ZWQgYXQKICAgICAgICptc2cqIHRvIHRoZSBvdXRwdXQgZmlsZSBzcGVjaWZpZWQgd2hlbiB0aGUgOmNsYXNzOmBHZW5lcmF0b3JgIGluc3RhbmNlCkBAIC03MiwxMiArNzksMTMgQEAKICAgICAgIE5vdGUgdGhhdCBmb3Igc3VicGFydHMsIG5vIGVudmVsb3BlIGhlYWRlciBpcyBldmVyIHByaW50ZWQuCiAKICAgICAgIE9wdGlvbmFsICpsaW5lc2VwKiBzcGVjaWZpZXMgdGhlIGxpbmUgc2VwYXJhdG9yIGNoYXJhY3RlciB1c2VkIHRvCi0gICAgICB0ZXJtaW5hdGUgbGluZXMgaW4gdGhlIG91dHB1dC4gIEl0IGRlZmF1bHRzIHRvIGBgXG5gYCBiZWNhdXNlIHRoYXQgaXMKLSAgICAgIHRoZSBtb3N0IHVzZWZ1bCB2YWx1ZSBmb3IgUHl0aG9uIGFwcGxpY2F0aW9uIGNvZGUgKG90aGVyIGxpYnJhcnkgcGFja2FnZXMKLSAgICAgIGV4cGVjdCBgYFxuYGAgc2VwYXJhdGVkIGxpbmVzKS4gIGBgbGluZXNlcD1cclxuYGAgY2FuIGJlIHVzZWQgdG8KLSAgICAgIGdlbmVyYXRlIG91dHB1dCB3aXRoIFJGQy1jb21wbGlhbnQgbGluZSBzZXBhcmF0b3JzLgorICAgICAgdGVybWluYXRlIGxpbmVzIGluIHRoZSBvdXRwdXQuICBJZiBzcGVjaWZpZWQgaXQgb3ZlcnJpZGVzIHRoZSB2YWx1ZQorICAgICAgc3BlY2lmaWVkIGJ5IHRoZSBgYEdlbmVyYXRvcmBgXCdzIGBgcG9saWN5YGAuCiAKLSAgICAgIE1lc3NhZ2VzIHBhcnNlZCB3aXRoIGEgQnl0ZXMgcGFyc2VyIHRoYXQgaGF2ZSBhCisgICAgICBCZWNhdXNlIHN0cmluZ3MgY2Fubm90IHJlcHJlc2VudCBub24tQVNDSUkgYnl0ZXMsIGBgR2VuZXJhdG9yYGAgaWdub3JlcworICAgICAgdGhlIHZhbHVlIG9mIHRoZSA6YXR0cjpgfmVtYWlsLnBvbGljeS5Qb2xpY3kubXVzdF9iZV83Yml0YAorICAgICAgOm1vZDpgfmVtYWlsLnBvbGljeWAgc2V0dGluZyBhbmQgb3BlcmF0ZXMgYXMgaWYgaXQgd2VyZSBzZXQgYGBUcnVlYGAuCisgICAgICBUaGlzIG1lYW5zIHRoYXQgbWVzc2FnZXMgcGFyc2VkIHdpdGggYSBCeXRlcyBwYXJzZXIgdGhhdCBoYXZlIGEKICAgICAgIDptYWlsaGVhZGVyOmBDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nYCBvZiA4Yml0IHdpbGwgYmUgY29udmVydGVkIHRvIGEKICAgICAgIHVzZSBhIDdiaXQgQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZy4gIE5vbi1BU0NJSSBieXRlcyBpbiB0aGUgaGVhZGVycwogICAgICAgd2lsbCBiZSA6cmZjOmAyMDQ3YCBlbmNvZGVkIHdpdGggYSBjaGFyc2V0IG9mIGB1bmtub3duLThiaXRgLgpAQCAtMTAzLDcgKzExMSw4IEBACiBmb3JtYXR0ZWQgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGEgbWVzc2FnZSBvYmplY3QuICBGb3IgbW9yZSBkZXRhaWwsIHNlZQogOm1vZDpgZW1haWwubWVzc2FnZWAuCiAKLS4uIGNsYXNzOjogQnl0ZXNHZW5lcmF0b3Iob3V0ZnAsIG1hbmdsZV9mcm9tXz1UcnVlLCBtYXhoZWFkZXJsZW49NzgpCisuLiBjbGFzczo6IEJ5dGVzR2VuZXJhdG9yKG91dGZwLCBtYW5nbGVfZnJvbV89VHJ1ZSwgbWF4aGVhZGVybGVuPTc4LCAqLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGljeT1wb2xpY3kuZGVmYXVsdCkKIAogICAgVGhlIGNvbnN0cnVjdG9yIGZvciB0aGUgOmNsYXNzOmBCeXRlc0dlbmVyYXRvcmAgY2xhc3MgdGFrZXMgYSBiaW5hcnkKICAgIDp0ZXJtOmBmaWxlLWxpa2Ugb2JqZWN0YCBjYWxsZWQgKm91dGZwKiBmb3IgYW4gYXJndW1lbnQuICAqb3V0ZnAqIG11c3QKQEAgLTEyNSwxOSArMTM0LDMxIEBACiAgICB3cmFwcGluZy4gIFRoZSBkZWZhdWx0IGlzIDc4LCBhcyByZWNvbW1lbmRlZCAoYnV0IG5vdCByZXF1aXJlZCkgYnkKICAgIDpyZmM6YDI4MjJgLgogCisgICBUaGUgKnBvbGljeSoga2V5d29yZCBzcGVjaWZpZXMgYSA6bW9kOmB+ZW1haWwucG9saWN5YCBvYmplY3QgdGhhdCBjb250cm9scyBhCisgICBudW1iZXIgb2YgYXNwZWN0cyBvZiB0aGUgZ2VuZXJhdG9yJ3Mgb3BlcmF0aW9uLiAgVGhlIGRlZmF1bHQgcG9saWN5CisgICBtYWludGFpbnMgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMgQWRkZWQgdGhlICpwb2xpY3kqIGtleXdvcmQuCisKICAgIFRoZSBvdGhlciBwdWJsaWMgOmNsYXNzOmBCeXRlc0dlbmVyYXRvcmAgbWV0aG9kcyBhcmU6CiAKIAotICAgLi4gbWV0aG9kOjogZmxhdHRlbihtc2csIHVuaXhmcm9tPUZhbHNlLCBsaW5lc2VwPSdcbicpCisgICAuLiBtZXRob2Q6OiBmbGF0dGVuKG1zZywgdW5peGZyb209RmFsc2UsIGxpbmVzZXA9Tm9uZSkKIAogICAgICAgUHJpbnQgdGhlIHRleHR1YWwgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1lc3NhZ2Ugb2JqZWN0IHN0cnVjdHVyZSByb290ZWQKICAgICAgIGF0ICptc2cqIHRvIHRoZSBvdXRwdXQgZmlsZSBzcGVjaWZpZWQgd2hlbiB0aGUgOmNsYXNzOmBCeXRlc0dlbmVyYXRvcmAKICAgICAgIGluc3RhbmNlIHdhcyBjcmVhdGVkLiAgU3VicGFydHMgYXJlIHZpc2l0ZWQgZGVwdGgtZmlyc3QgYW5kIHRoZSByZXN1bHRpbmcKLSAgICAgIHRleHQgd2lsbCBiZSBwcm9wZXJseSBNSU1FIGVuY29kZWQuICBJZiB0aGUgaW5wdXQgdGhhdCBjcmVhdGVkIHRoZSAqbXNnKgotICAgICAgY29udGFpbmVkIGJ5dGVzIHdpdGggdGhlIGhpZ2ggYml0IHNldCBhbmQgdGhvc2UgYnl0ZXMgaGF2ZSBub3QgYmVlbgotICAgICAgbW9kaWZpZWQsIHRoZXkgd2lsbCBiZSBjb3BpZWQgZmFpdGhmdWxseSB0byB0aGUgb3V0cHV0LCBldmVuIGlmIGRvaW5nIHNvCi0gICAgICBpcyBub3Qgc3RyaWN0bHkgUkZDIGNvbXBsaWFudC4gIChUbyBwcm9kdWNlIHN0cmljdGx5IFJGQyBjb21wbGlhbnQKLSAgICAgIG91dHB1dCwgdXNlIHRoZSA6Y2xhc3M6YEdlbmVyYXRvcmAgY2xhc3MuKQorICAgICAgdGV4dCB3aWxsIGJlIHByb3Blcmx5IE1JTUUgZW5jb2RlZC4gIElmIHRoZSA6bW9kOmB+ZW1haWwucG9saWN5YCBvcHRpb24KKyAgICAgIDphdHRyOmB+ZW1haWwucG9saWN5LlBvbGljeS5tdXN0X2JlXzdiaXRgIGlzIGBgRmFsc2VgYCAodGhlIGRlZmF1bHQpLAorICAgICAgdGhlbiBhbnkgYnl0ZXMgd2l0aCB0aGUgaGlnaCBiaXQgc2V0IGluIHRoZSBvcmlnaW5hbCBwYXJzZWQgbWVzc2FnZSB0aGF0CisgICAgICBoYXZlIG5vdCBiZWVuIG1vZGlmaWVkIHdpbGwgYmUgY29waWVkIGZhaXRoZnVsbHkgdG8gdGhlIG91dHB1dC4gIElmCisgICAgICBgYG11c3RfYmVfN2JpdGBgIGlzIHRydWUsIHRoZSBieXRlcyB3aWxsIGJlIGNvbnZlcnRlZCBhcyBuZWVkZWQgdXNpbmcgYW4KKyAgICAgIEFTQ0lJIGNvbnRlbnQtdHJhbnNmZXItZW5jb2RpbmcuICBJbiBwYXJ0aWN1bGFyLCBSRkMtaW52YWxpZCBub24tQVNDSUkKKyAgICAgIGJ5dGVzIGluIGhlYWRlcnMgd2lsbCBiZSBlbmNvZGVkIHVzaW5nIHRoZSBNSU1FIGBgdW5rbm93bi04Yml0YGAKKyAgICAgIGNoYXJhY3RlciBzZXQsIHRodXMgcmVuZGVyaW5nIHRoZW0gUkZDLWNvbXBsaWFudC4KKworICAgICAgLi4gWFhYOiBUaGVyZSBzaG91bGQgYmUgYSBjb21wbGVtZW50YXJ5IG9wdGlvbiB0aGF0IGp1c3QgZG9lcyB0aGUgUkZDCisgICAgICAgICBjb21wbGlhbmNlIHRyYW5zZm9ybWF0aW9uIGJ1dCBsZWF2ZXMgQ1RFIDhiaXQgcGFydHMgYWxvbmUuCiAKICAgICAgIE1lc3NhZ2VzIHBhcnNlZCB3aXRoIGEgQnl0ZXMgcGFyc2VyIHRoYXQgaGF2ZSBhCiAgICAgICA6bWFpbGhlYWRlcjpgQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZ2Agb2YgOGJpdCB3aWxsIGJlIHJlY29uc3RydWN0ZWQKQEAgLTE1MiwxMCArMTczLDggQEAKICAgICAgIE5vdGUgdGhhdCBmb3Igc3VicGFydHMsIG5vIGVudmVsb3BlIGhlYWRlciBpcyBldmVyIHByaW50ZWQuCiAKICAgICAgIE9wdGlvbmFsICpsaW5lc2VwKiBzcGVjaWZpZXMgdGhlIGxpbmUgc2VwYXJhdG9yIGNoYXJhY3RlciB1c2VkIHRvCi0gICAgICB0ZXJtaW5hdGUgbGluZXMgaW4gdGhlIG91dHB1dC4gIEl0IGRlZmF1bHRzIHRvIGBgXG5gYCBiZWNhdXNlIHRoYXQgaXMKLSAgICAgIHRoZSBtb3N0IHVzZWZ1bCB2YWx1ZSBmb3IgUHl0aG9uIGFwcGxpY2F0aW9uIGNvZGUgKG90aGVyIGxpYnJhcnkgcGFja2FnZXMKLSAgICAgIGV4cGVjdCBgYFxuYGAgc2VwYXJhdGVkIGxpbmVzKS4gIGBgbGluZXNlcD1cclxuYGAgY2FuIGJlIHVzZWQgdG8KLSAgICAgIGdlbmVyYXRlIG91dHB1dCB3aXRoIFJGQy1jb21wbGlhbnQgbGluZSBzZXBhcmF0b3JzLgorICAgICAgdGVybWluYXRlIGxpbmVzIGluIHRoZSBvdXRwdXQuICBJZiBzcGVjaWZpZWQgaXQgb3ZlcnJpZGVzIHRoZSB2YWx1ZQorICAgICAgc3BlY2lmaWVkIGJ5IHRoZSBgYEdlbmVyYXRvcmBgXCAncyBgYHBvbGljeWBgLgogCiAgICAuLiBtZXRob2Q6OiBjbG9uZShmcCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZW1haWwucGFyc2VyLnJzdCBiL0RvYy9saWJyYXJ5L2VtYWlsLnBhcnNlci5yc3QKaW5kZXggMzg0YzVjOS4uYTAzMDNhNCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZW1haWwucGFyc2VyLnJzdAorKysgYi9Eb2MvbGlicmFyeS9lbWFpbC5wYXJzZXIucnN0CkBAIC01OCwxMiArNTgsMTggQEAKIEhlcmUgaXMgdGhlIEFQSSBmb3IgdGhlIDpjbGFzczpgRmVlZFBhcnNlcmA6CiAKIAotLi4gY2xhc3M6OiBGZWVkUGFyc2VyKF9mYWN0b3J5PWVtYWlsLm1lc3NhZ2UuTWVzc2FnZSkKKy4uIGNsYXNzOjogRmVlZFBhcnNlcihfZmFjdG9yeT1lbWFpbC5tZXNzYWdlLk1lc3NhZ2UsICosIHBvbGljeT1wb2xpY3kuZGVmYXVsdCkKIAogICAgQ3JlYXRlIGEgOmNsYXNzOmBGZWVkUGFyc2VyYCBpbnN0YW5jZS4gIE9wdGlvbmFsICpfZmFjdG9yeSogaXMgYSBuby1hcmd1bWVudAogICAgY2FsbGFibGUgdGhhdCB3aWxsIGJlIGNhbGxlZCB3aGVuZXZlciBhIG5ldyBtZXNzYWdlIG9iamVjdCBpcyBuZWVkZWQuICBJdAogICAgZGVmYXVsdHMgdG8gdGhlIDpjbGFzczpgZW1haWwubWVzc2FnZS5NZXNzYWdlYCBjbGFzcy4KIAorICAgVGhlICpwb2xpY3kqIGtleXdvcmQgc3BlY2lmaWVzIGEgOm1vZDpgfmVtYWlsLnBvbGljeWAgb2JqZWN0IHRoYXQgY29udHJvbHMgYQorICAgbnVtYmVyIG9mIGFzcGVjdHMgb2YgdGhlIHBhcnNlcidzIG9wZXJhdGlvbi4gIFRoZSBkZWZhdWx0IHBvbGljeSBtYWludGFpbnMKKyAgIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zIEFkZGVkIHRoZSAqcG9saWN5KiBrZXl3b3JkLgorCiAgICAuLiBtZXRob2Q6OiBmZWVkKGRhdGEpCiAKICAgICAgIEZlZWQgdGhlIDpjbGFzczpgRmVlZFBhcnNlcmAgc29tZSBtb3JlIGRhdGEuICAqZGF0YSogc2hvdWxkIGJlIGEgc3RyaW5nCkBAIC05NCwxNSArMTAwLDE3IEBACiBUaGUgOmNsYXNzOmBQYXJzZXJgIGNsYXNzLCBpbXBvcnRlZCBmcm9tIHRoZSA6bW9kOmBlbWFpbC5wYXJzZXJgIG1vZHVsZSwKIHByb3ZpZGVzIGFuIEFQSSB0aGF0IGNhbiBiZSB1c2VkIHRvIHBhcnNlIGEgbWVzc2FnZSB3aGVuIHRoZSBjb21wbGV0ZSBjb250ZW50cwogb2YgdGhlIG1lc3NhZ2UgYXJlIGF2YWlsYWJsZSBpbiBhIHN0cmluZyBvciBmaWxlLiAgVGhlIDptb2Q6YGVtYWlsLnBhcnNlcmAKLW1vZHVsZSBhbHNvIHByb3ZpZGVzIGEgc2Vjb25kIGNsYXNzLCBjYWxsZWQgOmNsYXNzOmBIZWFkZXJQYXJzZXJgIHdoaWNoIGNhbiBiZQotdXNlZCBpZiB5b3UncmUgb25seSBpbnRlcmVzdGVkIGluIHRoZSBoZWFkZXJzIG9mIHRoZSBtZXNzYWdlLgotOmNsYXNzOmBIZWFkZXJQYXJzZXJgIGNhbiBiZSBtdWNoIGZhc3RlciBpbiB0aGVzZSBzaXR1YXRpb25zLCBzaW5jZSBpdCBkb2VzIG5vdAotYXR0ZW1wdCB0byBwYXJzZSB0aGUgbWVzc2FnZSBib2R5LCBpbnN0ZWFkIHNldHRpbmcgdGhlIHBheWxvYWQgdG8gdGhlIHJhdyBib2R5Ci1hcyBhIHN0cmluZy4gOmNsYXNzOmBIZWFkZXJQYXJzZXJgIGhhcyB0aGUgc2FtZSBBUEkgYXMgdGhlIDpjbGFzczpgUGFyc2VyYAotY2xhc3MuCittb2R1bGUgYWxzbyBwcm92aWRlcyBoZWFkZXItb25seSBwYXJzZXJzLCBjYWxsZWQgOmNsYXNzOmBIZWFkZXJQYXJzZXJgIGFuZAorOmNsYXNzOmBCeXRlc0hlYWRlclBhcnNlcmAsIHdoaWNoIGNhbiBiZSB1c2VkIGlmIHlvdSdyZSBvbmx5IGludGVyZXN0ZWQgaW4gdGhlCitoZWFkZXJzIG9mIHRoZSBtZXNzYWdlLiAgOmNsYXNzOmBIZWFkZXJQYXJzZXJgIGFuZCA6Y2xhc3M6YEJ5dGVzSGVhZGVyUGFyc2VyYAorY2FuIGJlIG11Y2ggZmFzdGVyIGluIHRoZXNlIHNpdHVhdGlvbnMsIHNpbmNlIHRoZXkgZG8gbm90IGF0dGVtcHQgdG8gcGFyc2UgdGhlCittZXNzYWdlIGJvZHksIGluc3RlYWQgc2V0dGluZyB0aGUgcGF5bG9hZCB0byB0aGUgcmF3IGJvZHkgYXMgYSBzdHJpbmcuICBUaGV5CitoYXZlIHRoZSBzYW1lIEFQSSBhcyB0aGUgOmNsYXNzOmBQYXJzZXJgIGFuZCA6Y2xhc3M6YEJ5dGVzUGFyc2VyYCBjbGFzc2VzLgorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMgQnl0ZXNIZWFkZXJQYXJzZXIKIAogCi0uLiBjbGFzczo6IFBhcnNlcihfY2xhc3M9ZW1haWwubWVzc2FnZS5NZXNzYWdlLCBzdHJpY3Q9Tm9uZSkKKy4uIGNsYXNzOjogUGFyc2VyKF9jbGFzcz1lbWFpbC5tZXNzYWdlLk1lc3NhZ2UsICosIHBvbGljeT1wb2xpY3kuZGVmYXVsdCkKIAogICAgVGhlIGNvbnN0cnVjdG9yIGZvciB0aGUgOmNsYXNzOmBQYXJzZXJgIGNsYXNzIHRha2VzIGFuIG9wdGlvbmFsIGFyZ3VtZW50CiAgICAqX2NsYXNzKi4gIFRoaXMgbXVzdCBiZSBhIGNhbGxhYmxlIGZhY3RvcnkgKHN1Y2ggYXMgYSBmdW5jdGlvbiBvciBhIGNsYXNzKSwgYW5kCkBAIC0xMTAsMTMgKzExOCwxMyBAQAogICAgOmNsYXNzOmB+ZW1haWwubWVzc2FnZS5NZXNzYWdlYCAoc2VlIDptb2Q6YGVtYWlsLm1lc3NhZ2VgKS4gIFRoZSBmYWN0b3J5IHdpbGwKICAgIGJlIGNhbGxlZCB3aXRob3V0IGFyZ3VtZW50cy4KIAotICAgVGhlIG9wdGlvbmFsICpzdHJpY3QqIGZsYWcgaXMgaWdub3JlZC4KKyAgIFRoZSAqcG9saWN5KiBrZXl3b3JkIHNwZWNpZmllcyBhIDptb2Q6YH5lbWFpbC5wb2xpY3lgIG9iamVjdCB0aGF0IGNvbnRyb2xzIGEKKyAgIG51bWJlciBvZiBhc3BlY3RzIG9mIHRoZSBwYXJzZXIncyBvcGVyYXRpb24uICBUaGUgZGVmYXVsdCBwb2xpY3kgbWFpbnRhaW5zCisgICBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgogCi0gICAuLiBkZXByZWNhdGVkOjogMi40Ci0gICAgICBCZWNhdXNlIHRoZSA6Y2xhc3M6YFBhcnNlcmAgY2xhc3MgaXMgYSBiYWNrd2FyZCBjb21wYXRpYmxlIEFQSSB3cmFwcGVyCi0gICAgICBhcm91bmQgdGhlIG5ldy1pbi1QeXRob24gMi40IDpjbGFzczpgRmVlZFBhcnNlcmAsICphbGwqIHBhcnNpbmcgaXMKLSAgICAgIGVmZmVjdGl2ZWx5IG5vbi1zdHJpY3QuICBZb3Ugc2hvdWxkIHNpbXBseSBzdG9wIHBhc3NpbmcgYSAqc3RyaWN0KiBmbGFnIHRvCi0gICAgICB0aGUgOmNsYXNzOmBQYXJzZXJgIGNvbnN0cnVjdG9yLgorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFJlbW92ZWQgdGhlICpzdHJpY3QqIGFyZ3VtZW50IHRoYXQgd2FzIGRlcHJlY2F0ZWQgaW4gMi40LiAgQWRkZWQgdGhlCisgICAgICAqcG9saWN5KiBrZXl3b3JkLgogCiAgICBUaGUgb3RoZXIgcHVibGljIDpjbGFzczpgUGFyc2VyYCBtZXRob2RzIGFyZToKIApAQCAtMTQ3LDEyICsxNTUsMTggQEAKICAgICAgIE9wdGlvbmFsICpoZWFkZXJzb25seSogaXMgYXMgd2l0aCB0aGUgOm1ldGg6YHBhcnNlYCBtZXRob2QuCiAKIAotLi4gY2xhc3M6OiBCeXRlc1BhcnNlcihfY2xhc3M9ZW1haWwubWVzc2FnZS5NZXNzYWdlLCBzdHJpY3Q9Tm9uZSkKKy4uIGNsYXNzOjogQnl0ZXNQYXJzZXIoX2NsYXNzPWVtYWlsLm1lc3NhZ2UuTWVzc2FnZSwgKiwgcG9saWN5PXBvbGljeS5kZWZhdWx0KQogCiAgICBUaGlzIGNsYXNzIGlzIGV4YWN0bHkgcGFyYWxsZWwgdG8gOmNsYXNzOmBQYXJzZXJgLCBidXQgaGFuZGxlcyBieXRlcyBpbnB1dC4KICAgIFRoZSAqX2NsYXNzKiBhbmQgKnN0cmljdCogYXJndW1lbnRzIGFyZSBpbnRlcnByZXRlZCBpbiB0aGUgc2FtZSB3YXkgYXMgZm9yCi0gICB0aGUgOmNsYXNzOmBQYXJzZXJgIGNvbnN0cnVjdG9yLiAgKnN0cmljdCogaXMgc3VwcG9ydGVkIG9ubHkgdG8gbWFrZSBwb3J0aW5nCi0gICBjb2RlIGVhc2llcjsgaXQgaXMgZGVwcmVjYXRlZC4KKyAgIHRoZSA6Y2xhc3M6YFBhcnNlcmAgY29uc3RydWN0b3IuCisKKyAgIFRoZSAqcG9saWN5KiBrZXl3b3JkIHNwZWNpZmllcyBhIDptb2Q6YH5lbWFpbC5wb2xpY3lgIG9iamVjdCB0aGF0CisgICBjb250cm9scyBhIG51bWJlciBvZiBhc3BlY3RzIG9mIHRoZSBwYXJzZXIncyBvcGVyYXRpb24uICBUaGUgZGVmYXVsdAorICAgcG9saWN5IG1haW50YWlucyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgUmVtb3ZlZCB0aGUgKnN0cmljdCogYXJndW1lbnQuICBBZGRlZCB0aGUgKnBvbGljeSoga2V5d29yZC4KIAogICAgLi4gbWV0aG9kOjogcGFyc2UoZnAsIGhlYWRlcm9ubHk9RmFsc2UpCiAKQEAgLTE5MCwzNCArMjA0LDQ4IEBACiAKIC4uIGN1cnJlbnRtb2R1bGU6OiBlbWFpbAogCi0uLiBmdW5jdGlvbjo6IG1lc3NhZ2VfZnJvbV9zdHJpbmcocywgX2NsYXNzPWVtYWlsLm1lc3NhZ2UuTWVzc2FnZSwgc3RyaWN0PU5vbmUpCisuLiBmdW5jdGlvbjo6IG1lc3NhZ2VfZnJvbV9zdHJpbmcocywgX2NsYXNzPWVtYWlsLm1lc3NhZ2UuTWVzc2FnZSwgKiwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGljeT1wb2xpY3kuZGVmYXVsdCkKIAogICAgUmV0dXJuIGEgbWVzc2FnZSBvYmplY3Qgc3RydWN0dXJlIGZyb20gYSBzdHJpbmcuICBUaGlzIGlzIGV4YWN0bHkgZXF1aXZhbGVudCB0bwotICAgYGBQYXJzZXIoKS5wYXJzZXN0cihzKWBgLiAgT3B0aW9uYWwgKl9jbGFzcyogYW5kICpzdHJpY3QqIGFyZSBpbnRlcnByZXRlZCBhcworICAgYGBQYXJzZXIoKS5wYXJzZXN0cihzKWBgLiAgKl9jbGFzcyogYW5kICpwb2xpY3kqIGFyZSBpbnRlcnByZXRlZCBhcwogICAgd2l0aCB0aGUgOmNsYXNzOmBQYXJzZXJgIGNsYXNzIGNvbnN0cnVjdG9yLgogCi0uLiBmdW5jdGlvbjo6IG1lc3NhZ2VfZnJvbV9ieXRlcyhzLCBfY2xhc3M9ZW1haWwubWVzc2FnZS5NZXNzYWdlLCBzdHJpY3Q9Tm9uZSkKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBSZW1vdmVkIHRoZSAqc3RyaWN0KiBhcmd1bWVudC4gIEFkZGVkIHRoZSAqcG9saWN5KiBrZXl3b3JkLgorCisuLiBmdW5jdGlvbjo6IG1lc3NhZ2VfZnJvbV9ieXRlcyhzLCBfY2xhc3M9ZW1haWwubWVzc2FnZS5NZXNzYWdlLCAqLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2xpY3k9cG9saWN5LmRlZmF1bHQpCiAKICAgIFJldHVybiBhIG1lc3NhZ2Ugb2JqZWN0IHN0cnVjdHVyZSBmcm9tIGEgYnl0ZSBzdHJpbmcuICBUaGlzIGlzIGV4YWN0bHkKICAgIGVxdWl2YWxlbnQgdG8gYGBCeXRlc1BhcnNlcigpLnBhcnNlYnl0ZXMocylgYC4gIE9wdGlvbmFsICpfY2xhc3MqIGFuZAogICAgKnN0cmljdCogYXJlIGludGVycHJldGVkIGFzIHdpdGggdGhlIDpjbGFzczpgUGFyc2VyYCBjbGFzcyBjb25zdHJ1Y3Rvci4KIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgUmVtb3ZlZCB0aGUgKnN0cmljdCogYXJndW1lbnQuICBBZGRlZCB0aGUgKnBvbGljeSoga2V5d29yZC4KIAotLi4gZnVuY3Rpb246OiBtZXNzYWdlX2Zyb21fZmlsZShmcCwgX2NsYXNzPWVtYWlsLm1lc3NhZ2UuTWVzc2FnZSwgc3RyaWN0PU5vbmUpCisuLiBmdW5jdGlvbjo6IG1lc3NhZ2VfZnJvbV9maWxlKGZwLCBfY2xhc3M9ZW1haWwubWVzc2FnZS5NZXNzYWdlLCAqLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGljeT1wb2xpY3kuZGVmYXVsdCkKIAogICAgUmV0dXJuIGEgbWVzc2FnZSBvYmplY3Qgc3RydWN0dXJlIHRyZWUgZnJvbSBhbiBvcGVuIDp0ZXJtOmBmaWxlIG9iamVjdGAuCi0gICBUaGlzIGlzIGV4YWN0bHkgZXF1aXZhbGVudCB0byBgYFBhcnNlcigpLnBhcnNlKGZwKWBgLiAgT3B0aW9uYWwgKl9jbGFzcyoKLSAgIGFuZCAqc3RyaWN0KiBhcmUgaW50ZXJwcmV0ZWQgYXMgd2l0aCB0aGUgOmNsYXNzOmBQYXJzZXJgIGNsYXNzIGNvbnN0cnVjdG9yLgorICAgVGhpcyBpcyBleGFjdGx5IGVxdWl2YWxlbnQgdG8gYGBQYXJzZXIoKS5wYXJzZShmcClgYC4gICpfY2xhc3MqCisgICBhbmQgKnBvbGljeSogYXJlIGludGVycHJldGVkIGFzIHdpdGggdGhlIDpjbGFzczpgUGFyc2VyYCBjbGFzcyBjb25zdHJ1Y3Rvci4KIAotLi4gZnVuY3Rpb246OiBtZXNzYWdlX2Zyb21fYmluYXJ5X2ZpbGUoZnAsIF9jbGFzcz1lbWFpbC5tZXNzYWdlLk1lc3NhZ2UsIHN0cmljdD1Ob25lKQorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OgorICAgICAgUmVtb3ZlZCB0aGUgKnN0cmljdCogYXJndW1lbnQuICBBZGRlZCB0aGUgKnBvbGljeSoga2V5d29yZC4KKworLi4gZnVuY3Rpb246OiBtZXNzYWdlX2Zyb21fYmluYXJ5X2ZpbGUoZnAsIF9jbGFzcz1lbWFpbC5tZXNzYWdlLk1lc3NhZ2UsICosIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGljeT1wb2xpY3kuZGVmYXVsdCkKIAogICAgUmV0dXJuIGEgbWVzc2FnZSBvYmplY3Qgc3RydWN0dXJlIHRyZWUgZnJvbSBhbiBvcGVuIGJpbmFyeSA6dGVybTpgZmlsZQogICAgb2JqZWN0YC4gIFRoaXMgaXMgZXhhY3RseSBlcXVpdmFsZW50IHRvIGBgQnl0ZXNQYXJzZXIoKS5wYXJzZShmcClgYC4KLSAgIE9wdGlvbmFsICpfY2xhc3MqIGFuZCAqc3RyaWN0KiBhcmUgaW50ZXJwcmV0ZWQgYXMgd2l0aCB0aGUgOmNsYXNzOmBQYXJzZXJgCisgICAqX2NsYXNzKiBhbmQgKnBvbGljeSogYXJlIGludGVycHJldGVkIGFzIHdpdGggdGhlIDpjbGFzczpgUGFyc2VyYAogICAgY2xhc3MgY29uc3RydWN0b3IuCiAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFJlbW92ZWQgdGhlICpzdHJpY3QqIGFyZ3VtZW50LiAgQWRkZWQgdGhlICpwb2xpY3kqIGtleXdvcmQuCiAKIEhlcmUncyBhbiBleGFtcGxlIG9mIGhvdyB5b3UgbWlnaHQgdXNlIHRoaXMgYXQgYW4gaW50ZXJhY3RpdmUgUHl0aG9uIHByb21wdDo6CiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2VtYWlsLnBvbGljeS5yc3QgYi9Eb2MvbGlicmFyeS9lbWFpbC5wb2xpY3kucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ5YTI5MmMKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9lbWFpbC5wb2xpY3kucnN0CkBAIC0wLDAgKzEsMTg0IEBACis6bW9kOmBlbWFpbGA6IFBvbGljeSBPYmplY3RzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIG1vZHVsZTo6IGVtYWlsLnBvbGljeQorICAgOnN5bm9wc2lzOiBDb250cm9sbGluZyB0aGUgcGFyc2luZyBhbmQgZ2VuZXJhdGluZyBvZiBtZXNzYWdlcworCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCitUaGUgOm1vZDpgZW1haWxgIHBhY2thZ2UncyBwcmltZSBmb2N1cyBpcyB0aGUgaGFuZGxpbmcgb2YgZW1haWwgbWVzc2FnZXMgYXMKK2Rlc2NyaWJlZCBieSB0aGUgdmFyaW91cyBlbWFpbCBhbmQgTUlNRSBSRkNzLiAgSG93ZXZlciwgdGhlIGdlbmVyYWwgZm9ybWF0IG9mCitlbWFpbCBtZXNzYWdlcyAoYSBibG9jayBvZiBoZWFkZXIgZmllbGRzIGVhY2ggY29uc2lzdGluZyBvZiBhIG5hbWUgZm9sbG93ZWQgYnkKK2EgY29sb24gZm9sbG93ZWQgYnkgYSB2YWx1ZSwgdGhlIHdob2xlIGJsb2NrIGZvbGxvd2VkIGJ5IGEgYmxhbmsgbGluZSBhbmQgYW4KK2FyYml0cmFyeSAnYm9keScpLCBpcyBhIGZvcm1hdCB0aGF0IGhhcyBmb3VuZCB1dGlsaXR5IG91dHNpZGUgb2YgdGhlIHJlYWxtIG9mCitlbWFpbC4gIFNvbWUgb2YgdGhlc2UgdXNlcyBjb25mb3JtIGZhaXJseSBjbG9zZWx5IHRvIHRoZSBtYWluIFJGQ3MsIHNvbWUgZG8KK25vdC4gIEFuZCBldmVuIHdoZW4gd29ya2luZyB3aXRoIGVtYWlsLCB0aGVyZSBhcmUgdGltZXMgd2hlbiBpdCBpcyBkZXNpcmFibGUgdG8KK2JyZWFrIHN0cmljdCBjb21wbGlhbmNlIHdpdGggdGhlIFJGQ3MuCisKK1BvbGljeSBvYmplY3RzIGdpdmUgdGhlIGVtYWlsIHBhY2thZ2UgdGhlIGZsZXhpYmlsaXR5IHRvIGhhbmRsZSBhbGwgdGhlc2UKK2Rpc3BhcmF0ZSB1c2UgY2FzZXMuCisKK0EgOmNsYXNzOmBQb2xpY3lgIG9iamVjdCBlbmNhcHN1bGF0ZXMgYSBzZXQgb2YgYXR0cmlidXRlcyBhbmQgbWV0aG9kcyB0aGF0Citjb250cm9sIHRoZSBiZWhhdmlvciBvZiB2YXJpb3VzIGNvbXBvbmVudHMgb2YgdGhlIGVtYWlsIHBhY2thZ2UgZHVyaW5nIHVzZS4KKzpjbGFzczpgUG9saWN5YCBpbnN0YW5jZXMgY2FuIGJlIHBhc3NlZCB0byB2YXJpb3VzIGNsYXNzZXMgYW5kIG1ldGhvZHMgaW4gdGhlCitlbWFpbCBwYWNrYWdlIHRvIGFsdGVyIHRoZSBkZWZhdWx0IGJlaGF2aW9yLiAgVGhlIHNldHRhYmxlIHZhbHVlcyBhbmQgdGhlaXIKK2RlZmF1bHRzIGFyZSBkZXNjcmliZWQgYmVsb3cuICBUaGUgOm1vZDpgcG9saWN5YCBtb2R1bGUgYWxzbyBwcm92aWRlcyBzb21lCitwcmUtY3JlYXRlZCA6Y2xhc3M6YFBvbGljeWAgaW5zdGFuY2VzLiAgSW4gYWRkaXRpb24gdG8gYSA6Y29uc3Q6YGRlZmF1bHRgCitpbnN0YW5jZSwgdGhlcmUgYXJlIGluc3RhbmNlcyB0YWlsb3JlZCBmb3IgY2VydGFpbiBhcHBsaWNhdGlvbnMuICBGb3IgZXhhbXBsZQordGhlcmUgaXMgYW4gOmNvbnN0OmBTTVRQYCA6Y2xhc3M6YFBvbGljeWAgd2l0aCBkZWZhdWx0cyBhcHByb3ByaWF0ZSBmb3IKK2dlbmVyYXRpbmcgb3V0cHV0IHRvIGJlIHNlbnQgdG8gYW4gU01UUCBzZXJ2ZXIuICBUaGVzZSBhcmUgbGlzdGVkIGBiZWxvdworPFBvbGljeSBJbnN0YW5jZXM+YC4KKworSW4gZ2VuZXJhbCBhbiBhcHBsaWNhdGlvbiB3aWxsIG9ubHkgbmVlZCB0byBkZWFsIHdpdGggc2V0dGluZyB0aGUgcG9saWN5IGF0IHRoZQoraW5wdXQgYW5kIG91dHB1dCBib3VuZGFyaWVzLiAgT25jZSBwYXJzZWQsIGEgbWVzc2FnZSBpcyByZXByZXNlbnRlZCBieSBhCis6Y2xhc3M6YH5lbWFpbC5tZXNzYWdlLk1lc3NhZ2VgIG9iamVjdCwgd2hpY2ggaXMgZGVzaWduZWQgdG8gYmUgaW5kZXBlbmRlbnQgb2YKK3RoZSBmb3JtYXQgdGhhdCB0aGUgbWVzc2FnZSBoYXMgIm9uIHRoZSB3aXJlIiB3aGVuIGl0IGlzIHJlY2VpdmVkLCB0cmFuc21pdHRlZCwKK29yIGRpc3BsYXllZC4gIFRodXMsIGEgOmNsYXNzOmBQb2xpY3lgIGNhbiBiZSBzcGVjaWZpZWQgd2hlbiBwYXJzaW5nIGEgbWVzc2FnZQordG8gY3JlYXRlIGEgOmNsYXNzOmB+ZW1haWwubWVzc2FnZS5NZXNzYWdlYCwgYW5kIGFnYWluIHdoZW4gdHVybmluZyB0aGUKKzpjbGFzczpgfmVtYWlsLm1lc3NhZ2UuTWVzc2FnZWAgaW50byBzb21lIG90aGVyIHJlcHJlc2VudGF0aW9uLiAgV2hpbGUgb2Z0ZW4gYQorcHJvZ3JhbSB3aWxsIHVzZSB0aGUgc2FtZSA6Y2xhc3M6YFBvbGljeWAgZm9yIGJvdGggaW5wdXQgYW5kIG91dHB1dCwgdGhlIHR3bworY2FuIGJlIGRpZmZlcmVudC4KKworQXMgYW4gZXhhbXBsZSwgdGhlIGZvbGxvd2luZyBjb2RlIGNvdWxkIGJlIHVzZWQgdG8gcmVhZCBhbiBlbWFpbCBtZXNzYWdlIGZyb20gYQorZmlsZSBvbiBkaXNrIGFuZCBwYXNzIGl0IHRvIHRoZSBzeXN0ZW0gYGBzZW5kbWFpbGBgIHByb2dyYW0gb24gYSBVbml4IHN5c3RlbTo6CisKKyAgID4+PiBmcm9tIGVtYWlsIGltcG9ydCBtc2dfZnJvbV9iaW5hcnlfZmlsZQorICAgPj4+IGZyb20gZW1haWwuZ2VuZXJhdG9yIGltcG9ydCBCeXRlc0dlbmVyYXRvcgorICAgPj4+IGltcG9ydCBlbWFpbC5wb2xpY3kKKyAgID4+PiBmcm9tIHN1YnByb2Nlc3MgaW1wb3J0IFBvcGVuLCBQSVBFCisgICA+Pj4gd2l0aCBvcGVuKCdteW1zZy50eHQnLCAnYicpIGFzIGY6CisgICAuLi4gICAgIG1zZyA9IG1zZ19mcm9tX2JpbmFyeV9maWxlKGYsIHBvbGljeT1lbWFpbC5wb2xpY3kubWJveCkKKyAgID4+PiBwID0gUG9wZW4oWydzZW5kbWFpbCcsIG1zZ1snVG8nXVswXS5hZGRyZXNzXSwgc3RkaW49UElQRSkKKyAgID4+PiBnID0gQnl0ZXNHZW5lcmF0b3IocC5zdGRpbiwgcG9saWN5PWVtYWlsLnBvbGljeS5TTVRQKQorICAgPj4+IGcuZmxhdHRlbihtc2cpCisgICA+Pj4gcC5zdGRpbi5jbG9zZSgpCisgICA+Pj4gcmMgPSBwLndhaXQoKQorCisuLiBYWFggZW1haWwucG9saWN5Lm1ib3gvTUJPWCBkb2VzIG5vdCBleGlzdCB5ZXQKKworU29tZSBlbWFpbCBwYWNrYWdlIG1ldGhvZHMgYWNjZXB0IGEgKnBvbGljeSoga2V5d29yZCBhcmd1bWVudCwgYWxsb3dpbmcgdGhlCitwb2xpY3kgdG8gYmUgb3ZlcnJpZGRlbiBmb3IgdGhhdCBtZXRob2QuICBGb3IgZXhhbXBsZSwgdGhlIGZvbGxvd2luZyBjb2RlIHVzZXMKK3RoZSA6bWV0aDpgfmVtYWlsLm1lc3NhZ2UuTWVzc2FnZS5hc19zdHJpbmdgIG1ldGhvZCBvZiB0aGUgKm1zZyogb2JqZWN0IGZyb20gdGhlCitwcmV2aW91cyBleGFtcGxlIGFuZCByZS13cml0ZSBpdCB0byBhIGZpbGUgdXNpbmcgdGhlIG5hdGl2ZSBsaW5lIHNlcGFyYXRvcnMgZm9yCit0aGUgcGxhdGZvcm0gb24gd2hpY2ggaXQgaXMgcnVubmluZzo6CisKKyAgID4+PiBpbXBvcnQgb3MKKyAgID4+PiBteXBvbGljeSA9IGVtYWlsLnBvbGljeS5Qb2xpY3kobGluZXNlcD1vcy5saW5lc2VwKQorICAgPj4+IHdpdGggb3BlbignY29udmVydGVkLnR4dCcsICd3YicpIGFzIGY6CisgICAuLi4gICAgIGYud3JpdGUobXNnLmFzX3N0cmluZyhwb2xpY3k9bXlwb2xpY3kpKQorCitQb2xpY3kgaW5zdGFuY2VzIGFyZSBpbW11dGFibGUsIGJ1dCB0aGV5IGNhbiBiZSBjbG9uZWQsIGFjY2VwdGluZyB0aGUgc2FtZQora2V5d29yZCBhcmd1bWVudHMgYXMgdGhlIGNsYXNzIGNvbnN0cnVjdG9yIGFuZCByZXR1cm5pbmcgYSBuZXcgOmNsYXNzOmBQb2xpY3lgCitpbnN0YW5jZSB0aGF0IGlzIGEgY29weSBvZiB0aGUgb3JpZ2luYWwgYnV0IHdpdGggdGhlIHNwZWNpZmllZCBhdHRyaWJ1dGVzCit2YWx1ZXMgY2hhbmdlZC4gIEZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIGNyZWF0ZXMgYW4gU01UUCBwb2xpY3kgdGhhdCB3aWxsCityYWlzZSBhbnkgZGVmZWN0cyBkZXRlY3RlZCBhcyBlcnJvcnM6OgorCisgICA+Pj4gc3RyaWN0X1NNVFAgPSBlbWFpbC5wb2xpY3kuU01UUC5jbG9uZShyYWlzZV9vbl9kZWZlY3Q9VHJ1ZSkKKworUG9saWN5IG9iamVjdHMgY2FuIGFsc28gYmUgY29tYmluZWQgdXNpbmcgdGhlIGFkZGl0aW9uIG9wZXJhdG9yLCBwcm9kdWNpbmcgYQorcG9saWN5IG9iamVjdCB3aG9zZSBzZXR0aW5ncyBhcmUgYSBjb21iaW5hdGlvbiBvZiB0aGUgbm9uLWRlZmF1bHQgdmFsdWVzIG9mIHRoZQorc3VtbWVkIG9iamVjdHM6OgorCisgICA+Pj4gc3RyaWN0X1NNVFAgPSBlbWFpbC5wb2xpY3kuU01UUCArIGVtYWlsLnBvbGljeS5zdHJpY3QKKworVGhpcyBvcGVyYXRpb24gaXMgbm90IGNvbW11dGF0aXZlOyB0aGF0IGlzLCB0aGUgb3JkZXIgaW4gd2hpY2ggdGhlIG9iamVjdHMgYXJlCithZGRlZCBtYXR0ZXJzLiAgVG8gaWxsdXN0cmF0ZTo6CisKKyAgID4+PiBQb2xpY3kgPSBlbWFpbC5wb2xpY3kuUG9saWN5CisgICA+Pj4gYXBvbGljeSA9IFBvbGljeShtYXhfbGluZV9sZW5ndGg9MTAwKSArIFBvbGljeShtYXhfbGluZV9sZW5ndGg9ODApCisgICA+Pj4gYXBvbGljeS5tYXhfbGluZV9sZW5ndGgKKyAgIDgwCisgICA+Pj4gYXBvbGljeSA9IFBvbGljeShtYXhfbGluZV9sZW5ndGg9ODApICsgUG9saWN5KG1heF9saW5lX2xlbmd0aD0xMDApCisgICA+Pj4gYXBvbGljeS5tYXhfbGluZV9sZW5ndGgKKyAgIDEwMAorCisKKy4uIGNsYXNzOjogUG9saWN5KCoqa3cpCisKKyAgIFRoZSB2YWxpZCBjb25zdHJ1Y3RvciBrZXl3b3JkIGFyZ3VtZW50cyBhcmUgYW55IG9mIHRoZSBhdHRyaWJ1dGVzIGxpc3RlZAorICAgYmVsb3cuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IG1heF9saW5lX2xlbmd0aAorCisgICAgICBUaGUgbWF4aW11bSBsZW5ndGggb2YgYW55IGxpbmUgaW4gdGhlIHNlcmlhbGl6ZWQgb3V0cHV0LCBub3QgY291bnRpbmcgdGhlCisgICAgICBlbmQgb2YgbGluZSBjaGFyYWN0ZXIocykuICBEZWZhdWx0IGlzIDc4LCBwZXIgOnJmYzpgNTMyMmAuICBBIHZhbHVlIG9mCisgICAgICBgYDBgYCBvciA6Y29uc3Q6YE5vbmVgIGluZGljYXRlcyB0aGF0IG5vIGxpbmUgd3JhcHBpbmcgc2hvdWxkIGJlCisgICAgICBkb25lIGF0IGFsbC4KKworICAgLi4gYXR0cmlidXRlOjogbGluZXNlcAorCisgICAgICBUaGUgc3RyaW5nIHRvIGJlIHVzZWQgdG8gdGVybWluYXRlIGxpbmVzIGluIHNlcmlhbGl6ZWQgb3V0cHV0LiAgVGhlCisgICAgICBkZWZhdWx0IGlzIGBgXG5gYCBiZWNhdXNlIHRoYXQncyB0aGUgaW50ZXJuYWwgZW5kLW9mLWxpbmUgZGlzY2lwbGluZSB1c2VkCisgICAgICBieSBQeXRob24sIHRob3VnaCBgYFxyXG5gYCBpcyByZXF1aXJlZCBieSB0aGUgUkZDcy4gIFNlZSBgUG9saWN5CisgICAgICBJbnN0YW5jZXNgXyBmb3IgcG9saWNpZXMgdGhhdCB1c2UgYW4gUkZDIGNvbmZvcm1hbnQgbGluZXNlcC4gIFNldHRpbmcgaXQKKyAgICAgIHRvIDphdHRyOmBvcy5saW5lc2VwYCBtYXkgYWxzbyBiZSB1c2VmdWwuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IG11c3RfYmVfN2JpdAorCisgICAgICBJZiBgYFRydWVgYCwgZGF0YSBvdXRwdXQgYnkgYSBieXRlcyBnZW5lcmF0b3IgaXMgbGltaXRlZCB0byBBU0NJSQorICAgICAgY2hhcmFjdGVycy4gIElmIDpjb25zdDpgRmFsc2VgICh0aGUgZGVmYXVsdCksIHRoZW4gYnl0ZXMgd2l0aCB0aGUgaGlnaAorICAgICAgYml0IHNldCBhcmUgcHJlc2VydmVkIGFuZC9vciBhbGxvd2VkIGluIGNlcnRhaW4gY29udGV4dHMgKGZvciBleGFtcGxlLAorICAgICAgd2hlcmUgcG9zc2libGUgYSBjb250ZW50IHRyYW5zZmVyIGVuY29kaW5nIG9mIGBgOGJpdGBgIHdpbGwgYmUgdXNlZCkuCisgICAgICBTdHJpbmcgZ2VuZXJhdG9ycyBhY3QgYXMgaWYgYGBtdXN0X2JlXzdiaXRgYCBpcyBgYFRydWVgYCByZWdhcmRsZXNzIG9mCisgICAgICB0aGUgcG9saWN5IGluIGVmZmVjdCwgc2luY2UgYSBzdHJpbmcgY2Fubm90IHJlcHJlc2VudCBub24tQVNDSUkgYnl0ZXMuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IHJhaXNlX29uX2RlZmVjdAorCisgICAgICBJZiA6Y29uc3Q6YFRydWVgLCBhbnkgZGVmZWN0cyBlbmNvdW50ZXJlZCB3aWxsIGJlIHJhaXNlZCBhcyBlcnJvcnMuICBJZgorICAgICAgOmNvbnN0OmBGYWxzZWAgKHRoZSBkZWZhdWx0KSwgZGVmZWN0cyB3aWxsIGJlIHBhc3NlZCB0byB0aGUKKyAgICAgIDptZXRoOmByZWdpc3Rlcl9kZWZlY3RgIG1ldGhvZC4KKworICAgOm1vZDpgUG9saWN5YCBvYmplY3QgYWxzbyBoYXZlIHRoZSBmb2xsb3dpbmcgbWV0aG9kczoKKworICAgLi4gbWV0aG9kOjogaGFuZGxlX2RlZmVjdChvYmosIGRlZmVjdCkKKworICAgICAgKm9iaiogaXMgdGhlIG9iamVjdCBvbiB3aGljaCB0byByZWdpc3RlciB0aGUgZGVmZWN0LiAgKmRlZmVjdCogc2hvdWxkIGJlCisgICAgICBhbiBpbnN0YW5jZSBvZiBhICBzdWJjbGFzcyBvZiA6Y2xhc3M6YH5lbWFpbC5lcnJvcnMuRGVmZWN0YC4KKyAgICAgIElmIDphdHRyOmByYWlzZV9vbl9kZWZlY3RgCisgICAgICBpcyBgYFRydWVgYCB0aGUgZGVmZWN0IGlzIHJhaXNlZCBhcyBhbiBleGNlcHRpb24uICBPdGhlcndpc2UgKm9iaiogYW5kCisgICAgICAqZGVmZWN0KiBhcmUgcGFzc2VkIHRvIDptZXRoOmByZWdpc3Rlcl9kZWZlY3RgLiAgVGhpcyBtZXRob2QgaXMgaW50ZW5kZWQKKyAgICAgIHRvIGJlIGNhbGxlZCBieSBwYXJzZXJzIHdoZW4gdGhleSBlbmNvdW50ZXIgZGVmZWN0cywgYW5kIHdpbGwgbm90IGJlCisgICAgICBjYWxsZWQgYnkgY29kZSB0aGF0IHVzZXMgdGhlIGVtYWlsIGxpYnJhcnkgdW5sZXNzIHRoYXQgY29kZSBpcworICAgICAgaW1wbGVtZW50aW5nIGFuIGFsdGVybmF0ZSBwYXJzZXIuCisKKyAgIC4uIG1ldGhvZDo6IHJlZ2lzdGVyX2RlZmVjdChvYmosIGRlZmVjdCkKKworICAgICAgKm9iaiogaXMgdGhlIG9iamVjdCBvbiB3aGljaCB0byByZWdpc3RlciB0aGUgZGVmZWN0LiAgKmRlZmVjdCogc2hvdWxkIGJlCisgICAgICBhIHN1YmNsYXNzIG9mIDpjbGFzczpgfmVtYWlsLmVycm9ycy5EZWZlY3RgLiAgVGhpcyBtZXRob2QgaXMgcGFydCBvZiB0aGUKKyAgICAgIHB1YmxpYyBBUEkgc28gdGhhdCBjdXN0b20gYGBQb2xpY3lgYCBzdWJjbGFzc2VzIGNhbiBpbXBsZW1lbnQgYWx0ZXJuYXRlCisgICAgICBoYW5kbGluZyBvZiBkZWZlY3RzLiAgVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gY2FsbHMgdGhlIGBgYXBwZW5kYGAKKyAgICAgIG1ldGhvZCBvZiB0aGUgYGBkZWZlY3RzYGAgYXR0cmlidXRlIG9mICpvYmoqLgorCisgICAuLiBtZXRob2Q6OiBjbG9uZShvYmosICprdykKKworICAgICAgUmV0dXJuIGEgbmV3IDpjbGFzczpgUG9saWN5YCBpbnN0YW5jZSB3aG9zZSBhdHRyaWJ1dGVzIGhhdmUgdGhlIHNhbWUKKyAgICAgIHZhbHVlcyBhcyB0aGUgY3VycmVudCBpbnN0YW5jZSwgZXhjZXB0IHdoZXJlIHRob3NlIGF0dHJpYnV0ZXMgYXJlCisgICAgICBnaXZlbiBuZXcgdmFsdWVzIGJ5IHRoZSBrZXl3b3JkIGFyZ3VtZW50cy4KKworCitQb2xpY3kgSW5zdGFuY2VzCiteXl5eXl5eXl5eXl5eXl5eCisKK1RoZSBmb2xsb3dpbmcgaW5zdGFuY2VzIG9mIDpjbGFzczpgUG9saWN5YCBwcm92aWRlIGRlZmF1bHRzIHN1aXRhYmxlIGZvcgorc3BlY2lmaWMgY29tbW9uIGFwcGxpY2F0aW9uIGRvbWFpbnMuCisKKy4uIGRhdGE6OiBkZWZhdWx0CisKKyAgIEFuIGluc3RhbmNlIG9mIDpjbGFzczpgUG9saWN5YCB3aXRoIGFsbCBkZWZhdWx0cyB1bmNoYW5nZWQuCisKKy4uIGRhdGE6OiBTTVRQCisKKyAgIE91dHB1dCBzZXJpYWxpemVkIGZyb20gYSBtZXNzYWdlIHdpbGwgY29uZm9ybSB0byB0aGUgZW1haWwgYW5kIFNNVFAKKyAgIFJGQ3MuICBUaGUgb25seSBjaGFuZ2VkIGF0dHJpYnV0ZSBpcyA6YXR0cjpgbGluZXNlcGAsIHdoaWNoIGlzIHNldCB0bworICAgYGBcclxuYGAuCisKKy4uIGRhdGE6OiBIVFRQCisKKyAgIFN1aXRhYmxlIGZvciB1c2Ugd2hlbiBzZXJpYWxpemluZyBoZWFkZXJzIGZvciB1c2UgaW4gSFRUUCB0cmFmZmljLgorICAgOmF0dHI6YGxpbmVzZXBgIGlzIHNldCB0byBgYFxyXG5gYCwgYW5kIDphdHRyOmBtYXhfbGluZV9sZW5ndGhgIGlzIHNldCB0bworICAgOmNvbnN0OmBOb25lYCAodW5saW1pdGVkKS4KKworLi4gZGF0YTo6IHN0cmljdAorCisgICA6YXR0cjpgcmFpc2Vfb25fZGVmZWN0YCBpcyBzZXQgdG8gOmNvbnN0OmBUcnVlYC4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2VtYWlsLnJzdCBiL0RvYy9saWJyYXJ5L2VtYWlsLnJzdAppbmRleCA0NTMwYjk1Li5mYzIwNmY0IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9lbWFpbC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZW1haWwucnN0CkBAIC01MSw2ICs1MSw3IEBACiAgICBlbWFpbC5tZXNzYWdlLnJzdAogICAgZW1haWwucGFyc2VyLnJzdAogICAgZW1haWwuZ2VuZXJhdG9yLnJzdAorICAgZW1haWwucG9saWN5LnJzdAogICAgZW1haWwubWltZS5yc3QKICAgIGVtYWlsLmhlYWRlci5yc3QKICAgIGVtYWlsLmNoYXJzZXQucnN0CmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9lbWFpbC51dGlsLnJzdCBiL0RvYy9saWJyYXJ5L2VtYWlsLnV0aWwucnN0CmluZGV4IGY3Yjc3N2EuLjJmOWVmODkgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2VtYWlsLnV0aWwucnN0CisrKyBiL0RvYy9saWJyYXJ5L2VtYWlsLnV0aWwucnN0CkBAIC0yOSwxMyArMjksMjAgQEAKICAgIGZhaWxzLCBpbiB3aGljaCBjYXNlIGEgMi10dXBsZSBvZiBgYCgnJywgJycpYGAgaXMgcmV0dXJuZWQuCiAKIAotLi4gZnVuY3Rpb246OiBmb3JtYXRhZGRyKHBhaXIpCisuLiBmdW5jdGlvbjo6IGZvcm1hdGFkZHIocGFpciwgY2hhcnNldD0ndXRmLTgnKQogCiAgICBUaGUgaW52ZXJzZSBvZiA6bWV0aDpgcGFyc2VhZGRyYCwgdGhpcyB0YWtlcyBhIDItdHVwbGUgb2YgdGhlIGZvcm0gYGAocmVhbG5hbWUsCiAgICBlbWFpbF9hZGRyZXNzKWBgIGFuZCByZXR1cm5zIHRoZSBzdHJpbmcgdmFsdWUgc3VpdGFibGUgZm9yIGEgOm1haWxoZWFkZXI6YFRvYCBvcgogICAgOm1haWxoZWFkZXI6YENjYCBoZWFkZXIuICBJZiB0aGUgZmlyc3QgZWxlbWVudCBvZiAqcGFpciogaXMgZmFsc2UsIHRoZW4gdGhlCiAgICBzZWNvbmQgZWxlbWVudCBpcyByZXR1cm5lZCB1bm1vZGlmaWVkLgogCisgICBPcHRpb25hbCAqY2hhcnNldCogaXMgdGhlIGNoYXJhY3RlciBzZXQgdGhhdCB3aWxsIGJlIHVzZWQgaW4gdGhlIDpyZmM6YDIwNDdgCisgICBlbmNvZGluZyBvZiB0aGUgYGByZWFsbmFtZWBgIGlmIHRoZSBgYHJlYWxuYW1lYGAgY29udGFpbnMgbm9uLUFTQ0lJCisgICBjaGFyYWN0ZXJzLiAgQ2FuIGJlIGFuIGluc3RhbmNlIG9mIDpjbGFzczpgc3RyYCBvciBhCisgICA6Y2xhc3M6YH5lbWFpbC5jaGFyc2V0LkNoYXJzZXRgLiAgRGVmYXVsdHMgdG8gYGB1dGYtOGBgLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDogMy4zIGFkZGVkIHRoZSAqY2hhcnNldCogb3B0aW9uCisKIAogLi4gZnVuY3Rpb246OiBnZXRhZGRyZXNzZXMoZmllbGR2YWx1ZXMpCiAKQEAgLTc0LDYgKzgxLDIwIEBACiAgICBpbmRleGVzIDYsIDcsIGFuZCA4IG9mIHRoZSByZXN1bHQgdHVwbGUgYXJlIG5vdCB1c2FibGUuCiAKIAorLi4gZnVuY3Rpb246OiBwYXJzZWRhdGVfdG9fZGF0ZXRpbWUoZGF0ZSkKKworICAgVGhlIGludmVyc2Ugb2YgOmZ1bmM6YGZvcm1hdF9kYXRldGltZWAuICBQZXJmb3JtcyB0aGUgc2FtZSBmdW5jdGlvbiBhcworICAgOmZ1bmM6YHBhcnNlZGF0ZWAsIGJ1dCBvbiBzdWNjZXNzIHJldHVybnMgYSA6bW9kOmB+ZGF0ZXRpbWUuZGF0ZXRpbWVgLiAgSWYKKyAgIHRoZSBpbnB1dCBkYXRlIGhhcyBhIHRpbWV6b25lIG9mIGBgLTAwMDBgYCwgdGhlIGBgZGF0ZXRpbWVgYCB3aWxsIGJlIGEgbmFpdmUKKyAgIGBgZGF0ZXRpbWVgYCwgYW5kIGlmIHRoZSBkYXRlIGlzIGNvbmZvcm1pbmcgdG8gdGhlIFJGQ3MgaXQgd2lsbCByZXByZXNlbnQgYQorICAgdGltZSBpbiBVVEMgYnV0IHdpdGggbm8gaW5kaWNhdGlvbiBvZiB0aGUgYWN0dWFsIHNvdXJjZSB0aW1lem9uZSBvZiB0aGUKKyAgIG1lc3NhZ2UgdGhlIGRhdGUgY29tZXMgZnJvbS4gIElmIHRoZSBpbnB1dCBkYXRlIGhhcyBhbnkgb3RoZXIgdmFsaWQgdGltZXpvbmUKKyAgIG9mZnNldCwgdGhlIGBgZGF0ZXRpbWVgYCB3aWxsIGJlIGFuIGF3YXJlIGBgZGF0ZXRpbWVgYCB3aXRoIHRoZQorICAgY29ycmVzcG9uZGluZyBhIDpjbGFzczpgfmRhdGV0aW1lLnRpbWV6b25lYCA6Y2xhc3M6YH5kYXRldGltZS50emluZm9gLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IG1rdGltZV90eih0dXBsZSkKIAogICAgVHVybiBhIDEwLXR1cGxlIGFzIHJldHVybmVkIGJ5IDpmdW5jOmBwYXJzZWRhdGVfdHpgIGludG8gYSBVVEMgdGltZXN0YW1wLiAgSXQKQEAgLTEwNSw2ICsxMjYsMjAgQEAKICAgIGBgRmFsc2VgYC4gIFRoZSBkZWZhdWx0IGlzIGBgRmFsc2VgYC4KIAogCisuLiBmdW5jdGlvbjo6IGZvcm1hdF9kYXRldGltZShkdCwgdXNlZ210PUZhbHNlKQorCisgICBMaWtlIGBgZm9ybWF0ZGF0ZWBgLCBidXQgdGhlIGlucHV0IGlzIGEgOm1vZDpgZGF0ZXRpbWVgIGluc3RhbmNlLiAgSWYgaXQgaXMKKyAgIGEgbmFpdmUgZGF0ZXRpbWUsIGl0IGlzIGFzc3VtZWQgdG8gYmUgIlVUQyB3aXRoIG5vIGluZm9ybWF0aW9uIGFib3V0IHRoZQorICAgc291cmNlIHRpbWV6b25lIiwgYW5kIHRoZSBjb252ZW50aW9uYWwgYGAtMDAwMGBgIGlzIHVzZWQgZm9yIHRoZSB0aW1lem9uZS4KKyAgIElmIGl0IGlzIGFuIGF3YXJlIGBgZGF0ZXRpbWVgYCwgdGhlbiB0aGUgbnVtZXJpYyB0aW1lem9uZSBvZmZzZXQgaXMgdXNlZC4KKyAgIElmIGl0IGlzIGFuIGF3YXJlIHRpbWV6b25lIHdpdGggb2Zmc2V0IHplcm8sIHRoZW4gKnVzZWdtdCogbWF5IGJlIHNldCB0bworICAgYGBUcnVlYGAsIGluIHdoaWNoIGNhc2UgdGhlIHN0cmluZyBgYEdNVGBgIGlzIHVzZWQgaW5zdGVhZCBvZiB0aGUgbnVtZXJpYworICAgdGltZXpvbmUgb2Zmc2V0LiAgVGhpcyBwcm92aWRlcyBhIHdheSB0byBnZW5lcmF0ZSBzdGFuZGFyZHMgY29uZm9ybWFudCBIVFRQCisgICBkYXRlIGhlYWRlcnMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogbWFrZV9tc2dpZChpZHN0cmluZz1Ob25lLCBkb21haW49Tm9uZSkKIAogICAgUmV0dXJucyBhIHN0cmluZyBzdWl0YWJsZSBmb3IgYW4gOnJmYzpgMjgyMmBcIC1jb21wbGlhbnQKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2V4Y2VwdGlvbnMucnN0IGIvRG9jL2xpYnJhcnkvZXhjZXB0aW9ucy5yc3QKaW5kZXggY2EzYWQzZS4uOGM1YTk2MCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZXhjZXB0aW9ucy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZXhjZXB0aW9ucy5yc3QKQEAgLTM0LDYgKzM0LDI4IEBACiBkZWZpbmluZyBleGNlcHRpb25zIGlzIGF2YWlsYWJsZSBpbiB0aGUgUHl0aG9uIFR1dG9yaWFsIHVuZGVyCiA6cmVmOmB0dXQtdXNlcmV4Y2VwdGlvbnNgLgogCitXaGVuIHJhaXNpbmcgKG9yIHJlLXJhaXNpbmcpIGFuIGV4Y2VwdGlvbiBpbiBhbiA6a2V5d29yZDpgZXhjZXB0YCBjbGF1c2UKKzphdHRyOmBfX2NvbnRleHRfX2AgaXMgYXV0b21hdGljYWxseSBzZXQgdG8gdGhlIGxhc3QgZXhjZXB0aW9uIGNhdWdodDsgaWYgdGhlCituZXcgZXhjZXB0aW9uIGlzIG5vdCBoYW5kbGVkIHRoZSB0cmFjZWJhY2sgdGhhdCBpcyBldmVudHVhbGx5IGRpc3BsYXllZCB3aWxsCitpbmNsdWRlIHRoZSBvcmlnaW5hdGluZyBleGNlcHRpb24ocykgYW5kIHRoZSBmaW5hbCBleGNlcHRpb24uCisKK1RoaXMgaW1wbGljaXQgZXhjZXB0aW9uIGNoYWluIGNhbiBiZSBtYWRlIGV4cGxpY2l0IGJ5IHVzaW5nIDprZXl3b3JkOmBmcm9tYAord2l0aCA6a2V5d29yZDpgcmFpc2VgLiAgVGhlIHNpbmdsZSBhcmd1bWVudCB0byA6a2V5d29yZDpgZnJvbWAgbXVzdCBiZSBhbgorZXhjZXB0aW9uIG9yIDpjb25zdDpgTm9uZWAsIGFuZCBpdCB3aWxsIGJlIHNldCBhcyA6YXR0cjpgX19jYXVzZV9fYCBvbiB0aGUKK3JhaXNlZCBleGNlcHRpb24uICBJZiA6YXR0cjpgX19jYXVzZV9fYCBpcyBhbiBleGNlcHRpb24gaXQgd2lsbCBiZSBkaXNwbGF5ZWQKK2luc3RlYWQgb2YgOmF0dHI6YF9fY29udGV4dF9fYDsgaWYgOmF0dHI6YF9fY2F1c2VfX2AgaXMgTm9uZSwKKzphdHRyOmBfX2NvbnRleHRfX2Agd2lsbCBub3QgYmUgZGlzcGxheWVkIGJ5IHRoZSBkZWZhdWx0IGV4Y2VwdGlvbiBoYW5kbGluZworY29kZS4gIChOb3RlOiAgdGhlIGRlZmF1bHQgdmFsdWUgZm9yIDphdHRyOmBfX2NvbnRleHRfX2AgaXMgOmNvbnN0OmBOb25lYCwKK3doaWxlIHRoZSBkZWZhdWx0IHZhbHVlIGZvciA6YXR0cjpgX19jYXVzZV9fYCBpcyA6Y29uc3Q6YEVsbGlwc2lzYC4pCisKK0luIGVpdGhlciBjYXNlLCB0aGUgZGVmYXVsdCBleGNlcHRpb24gaGFuZGxpbmcgY29kZSB3aWxsIG5vdCBkaXNwbGF5Cithbnkgb2YgdGhlIHJlbWFpbmluZyBsaW5rcyBpbiB0aGUgOmF0dHI6YF9fY29udGV4dF9fYCBjaGFpbiBpZgorOmF0dHI6YF9fY2F1c2VfX2AgaGFzIGJlZW4gc2V0LgorCisKK0Jhc2UgY2xhc3NlcworLS0tLS0tLS0tLS0tCisKIFRoZSBmb2xsb3dpbmcgZXhjZXB0aW9ucyBhcmUgdXNlZCBtb3N0bHkgYXMgYmFzZSBjbGFzc2VzIGZvciBvdGhlciBleGNlcHRpb25zLgogCiAuLiBleGNlcHRpb246OiBCYXNlRXhjZXB0aW9uCkBAIC05MCwyNyArMTEyLDggQEAKICAgIGNhbiBiZSByYWlzZWQgZGlyZWN0bHkgYnkgOmZ1bmM6YGNvZGVjcy5sb29rdXBgLgogCiAKLS4uIGV4Y2VwdGlvbjo6IEVudmlyb25tZW50RXJyb3IKLQotICAgVGhlIGJhc2UgY2xhc3MgZm9yIGV4Y2VwdGlvbnMgdGhhdCBjYW4gb2NjdXIgb3V0c2lkZSB0aGUgUHl0aG9uIHN5c3RlbToKLSAgIDpleGM6YElPRXJyb3JgLCA6ZXhjOmBPU0Vycm9yYC4gIFdoZW4gZXhjZXB0aW9ucyBvZiB0aGlzIHR5cGUgYXJlIGNyZWF0ZWQgd2l0aCBhCi0gICAyLXR1cGxlLCB0aGUgZmlyc3QgaXRlbSBpcyBhdmFpbGFibGUgb24gdGhlIGluc3RhbmNlJ3MgOmF0dHI6YGVycm5vYCBhdHRyaWJ1dGUKLSAgIChpdCBpcyBhc3N1bWVkIHRvIGJlIGFuIGVycm9yIG51bWJlciksIGFuZCB0aGUgc2Vjb25kIGl0ZW0gaXMgYXZhaWxhYmxlIG9uIHRoZQotICAgOmF0dHI6YHN0cmVycm9yYCBhdHRyaWJ1dGUgKGl0IGlzIHVzdWFsbHkgdGhlIGFzc29jaWF0ZWQgZXJyb3IgbWVzc2FnZSkuICBUaGUKLSAgIHR1cGxlIGl0c2VsZiBpcyBhbHNvIGF2YWlsYWJsZSBvbiB0aGUgOmF0dHI6YGFyZ3NgIGF0dHJpYnV0ZS4KLQotICAgV2hlbiBhbiA6ZXhjOmBFbnZpcm9ubWVudEVycm9yYCBleGNlcHRpb24gaXMgaW5zdGFudGlhdGVkIHdpdGggYSAzLXR1cGxlLCB0aGUKLSAgIGZpcnN0IHR3byBpdGVtcyBhcmUgYXZhaWxhYmxlIGFzIGFib3ZlLCB3aGlsZSB0aGUgdGhpcmQgaXRlbSBpcyBhdmFpbGFibGUgb24gdGhlCi0gICA6YXR0cjpgZmlsZW5hbWVgIGF0dHJpYnV0ZS4gIEhvd2V2ZXIsIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwgdGhlCi0gICA6YXR0cjpgYXJnc2AgYXR0cmlidXRlIGNvbnRhaW5zIG9ubHkgYSAyLXR1cGxlIG9mIHRoZSBmaXJzdCB0d28gY29uc3RydWN0b3IKLSAgIGFyZ3VtZW50cy4KLQotICAgVGhlIDphdHRyOmBmaWxlbmFtZWAgYXR0cmlidXRlIGlzIGBgTm9uZWBgIHdoZW4gdGhpcyBleGNlcHRpb24gaXMgY3JlYXRlZCB3aXRoCi0gICBvdGhlciB0aGFuIDMgYXJndW1lbnRzLiAgVGhlIDphdHRyOmBlcnJub2AgYW5kIDphdHRyOmBzdHJlcnJvcmAgYXR0cmlidXRlcyBhcmUKLSAgIGFsc28gYGBOb25lYGAgd2hlbiB0aGUgaW5zdGFuY2Ugd2FzIGNyZWF0ZWQgd2l0aCBvdGhlciB0aGFuIDIgb3IgMyBhcmd1bWVudHMuCi0gICBJbiB0aGlzIGxhc3QgY2FzZSwgOmF0dHI6YGFyZ3NgIGNvbnRhaW5zIHRoZSB2ZXJiYXRpbSBjb25zdHJ1Y3RvciBhcmd1bWVudHMgYXMgYQotICAgdHVwbGUuCi0KK0NvbmNyZXRlIGV4Y2VwdGlvbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0KIAogVGhlIGZvbGxvd2luZyBleGNlcHRpb25zIGFyZSB0aGUgZXhjZXB0aW9ucyB0aGF0IGFyZSB1c3VhbGx5IHJhaXNlZC4KIApAQCAtMTUxLDE2ICsxNTQsNiBAQAogICAgaXQgaXMgdGVjaG5pY2FsbHkgbm90IGFuIGVycm9yLgogCiAKLS4uIGV4Y2VwdGlvbjo6IElPRXJyb3IKLQotICAgUmFpc2VkIHdoZW4gYW4gSS9PIG9wZXJhdGlvbiAoc3VjaCBhcyB0aGUgYnVpbHQtaW4gOmZ1bmM6YHByaW50YCBvcgotICAgOmZ1bmM6YG9wZW5gIGZ1bmN0aW9ucyBvciBhIG1ldGhvZCBvZiBhIDp0ZXJtOmBmaWxlIG9iamVjdGApIGZhaWxzIGZvciBhbgotICAgSS9PLXJlbGF0ZWQgcmVhc29uLCBlLmcuLCAiZmlsZSBub3QgZm91bmQiIG9yICJkaXNrIGZ1bGwiLgotCi0gICBUaGlzIGNsYXNzIGlzIGRlcml2ZWQgZnJvbSA6ZXhjOmBFbnZpcm9ubWVudEVycm9yYC4gIFNlZSB0aGUgZGlzY3Vzc2lvbiBhYm92ZQotICAgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gZXhjZXB0aW9uIGluc3RhbmNlIGF0dHJpYnV0ZXMuCi0KLQogLi4gZXhjZXB0aW9uOjogSW1wb3J0RXJyb3IKIAogICAgUmFpc2VkIHdoZW4gYW4gOmtleXdvcmQ6YGltcG9ydGAgc3RhdGVtZW50IGZhaWxzIHRvIGZpbmQgdGhlIG1vZHVsZSBkZWZpbml0aW9uCkBAIC0yMjEsMTcgKzIxNCwzMCBAQAogCiAgICAuLiBpbmRleDo6IG1vZHVsZTogZXJybm8KIAotICAgVGhpcyBleGNlcHRpb24gaXMgZGVyaXZlZCBmcm9tIDpleGM6YEVudmlyb25tZW50RXJyb3JgLiAgSXQgaXMgcmFpc2VkIHdoZW4gYQotICAgZnVuY3Rpb24gcmV0dXJucyBhIHN5c3RlbS1yZWxhdGVkIGVycm9yIChub3QgZm9yIGlsbGVnYWwgYXJndW1lbnQgdHlwZXMgb3IKLSAgIG90aGVyIGluY2lkZW50YWwgZXJyb3JzKS4gIFRoZSA6YXR0cjpgZXJybm9gIGF0dHJpYnV0ZSBpcyBhIG51bWVyaWMgZXJyb3IKLSAgIGNvZGUgZnJvbSA6YzpkYXRhOmBlcnJub2AsIGFuZCB0aGUgOmF0dHI6YHN0cmVycm9yYCBhdHRyaWJ1dGUgaXMgdGhlCi0gICBjb3JyZXNwb25kaW5nIHN0cmluZywgYXMgd291bGQgYmUgcHJpbnRlZCBieSB0aGUgQyBmdW5jdGlvbiA6YzpmdW5jOmBwZXJyb3JgLgotICAgU2VlIHRoZSBtb2R1bGUgOm1vZDpgZXJybm9gLCB3aGljaCBjb250YWlucyBuYW1lcyBmb3IgdGhlIGVycm9yIGNvZGVzIGRlZmluZWQKLSAgIGJ5IHRoZSB1bmRlcmx5aW5nIG9wZXJhdGluZyBzeXN0ZW0uCisgICBUaGlzIGV4Y2VwdGlvbiBpcyByYWlzZWQgd2hlbiBhIHN5c3RlbSBmdW5jdGlvbiByZXR1cm5zIGEgc3lzdGVtLXJlbGF0ZWQKKyAgIGVycm9yLCBpbmNsdWRpbmcgSS9PIGZhaWx1cmVzIHN1Y2ggYXMgImZpbGUgbm90IGZvdW5kIiBvciAiZGlzayBmdWxsIgorICAgKG5vdCBmb3IgaWxsZWdhbCBhcmd1bWVudCB0eXBlcyBvciBvdGhlciBpbmNpZGVudGFsIGVycm9ycykuICBPZnRlbiBhCisgICBzdWJjbGFzcyBvZiA6ZXhjOmBPU0Vycm9yYCB3aWxsIGFjdHVhbGx5IGJlIHJhaXNlZCBhcyBkZXNjcmliZWQgaW4KKyAgIGBPUyBleGNlcHRpb25zYF8gYmVsb3cuICBUaGUgOmF0dHI6YGVycm5vYCBhdHRyaWJ1dGUgaXMgYSBudW1lcmljIGVycm9yCisgICBjb2RlIGZyb20gdGhlIEMgdmFyaWFibGUgOmM6ZGF0YTpgZXJybm9gLgogCi0gICBGb3IgZXhjZXB0aW9ucyB0aGF0IGludm9sdmUgYSBmaWxlIHN5c3RlbSBwYXRoIChzdWNoIGFzIDpmdW5jOmBjaGRpcmAgb3IKLSAgIDpmdW5jOmB1bmxpbmtgKSwgdGhlIGV4Y2VwdGlvbiBpbnN0YW5jZSB3aWxsIGNvbnRhaW4gYSB0aGlyZCBhdHRyaWJ1dGUsCi0gICA6YXR0cjpgZmlsZW5hbWVgLCB3aGljaCBpcyB0aGUgZmlsZSBuYW1lIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24uCisgICBVbmRlciBXaW5kb3dzLCB0aGUgOmF0dHI6YHdpbmVycm9yYCBhdHRyaWJ1dGUgZ2l2ZXMgeW91IHRoZSBuYXRpdmUKKyAgIFdpbmRvd3MgZXJyb3IgY29kZS4gIFRoZSA6YXR0cjpgZXJybm9gIGF0dHJpYnV0ZSBpcyB0aGVuIGFuIGFwcHJveGltYXRlCisgICB0cmFuc2xhdGlvbiwgaW4gUE9TSVggdGVybXMsIG9mIHRoYXQgbmF0aXZlIGVycm9yIGNvZGUuCisKKyAgIFVuZGVyIGFsbCBwbGF0Zm9ybXMsIHRoZSA6YXR0cjpgc3RyZXJyb3JgIGF0dHJpYnV0ZSBpcyB0aGUgY29ycmVzcG9uZGluZworICAgZXJyb3IgbWVzc2FnZSBhcyBwcm92aWRlZCBieSB0aGUgb3BlcmF0aW5nIHN5c3RlbSAoYXMgZm9ybWF0dGVkIGJ5IHRoZSBDCisgICBmdW5jdGlvbnMgOmM6ZnVuYzpgcGVycm9yYCB1bmRlciBQT1NJWCwgYW5kIDpjOmZ1bmM6YEZvcm1hdE1lc3NhZ2VgCisgICBXaW5kb3dzKS4KKworICAgRm9yIGV4Y2VwdGlvbnMgdGhhdCBpbnZvbHZlIGEgZmlsZSBzeXN0ZW0gcGF0aCAoc3VjaCBhcyA6ZnVuYzpgb3BlbmAgb3IKKyAgIDpmdW5jOmBvcy51bmxpbmtgKSwgdGhlIGV4Y2VwdGlvbiBpbnN0YW5jZSB3aWxsIGNvbnRhaW4gYW4gYWRkaXRpb25hbAorICAgYXR0cmlidXRlLCA6YXR0cjpgZmlsZW5hbWVgLCB3aGljaCBpcyB0aGUgZmlsZSBuYW1lIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24uCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICA6ZXhjOmBFbnZpcm9ubWVudEVycm9yYCwgOmV4YzpgSU9FcnJvcmAsIDpleGM6YFdpbmRvd3NFcnJvcmAsCisgICAgICA6ZXhjOmBWTVNFcnJvcmAsIDpleGM6YHNvY2tldC5lcnJvcmAsIDpleGM6YHNlbGVjdC5lcnJvcmAgYW5kCisgICAgICA6ZXhjOmBtbWFwLmVycm9yYCBoYXZlIGJlZW4gbWVyZ2VkIGludG8gOmV4YzpgT1NFcnJvcmAuCiAKIAogLi4gZXhjZXB0aW9uOjogT3ZlcmZsb3dFcnJvcgpAQCAtMjYyLDggKzI2OCwyMCBAQAogLi4gZXhjZXB0aW9uOjogU3RvcEl0ZXJhdGlvbgogCiAgICBSYWlzZWQgYnkgYnVpbHQtaW4gZnVuY3Rpb24gOmZ1bmM6YG5leHRgIGFuZCBhbiA6dGVybTpgaXRlcmF0b3JgXCdzCi0gICA6bWV0aDpgX19uZXh0X19gIG1ldGhvZCB0byBzaWduYWwgdGhhdCB0aGVyZSBhcmUgbm8gZnVydGhlciB2YWx1ZXMuCisgICA6bWV0aDpgX19uZXh0X19gIG1ldGhvZCB0byBzaWduYWwgdGhhdCB0aGVyZSBhcmUgbm8gZnVydGhlciBpdGVtcyB0byBiZQorICAgcHJvZHVjZWQgYnkgdGhlIGl0ZXJhdG9yLgogCisgICBUaGUgZXhjZXB0aW9uIG9iamVjdCBoYXMgYSBzaW5nbGUgYXR0cmlidXRlIDphdHRyOmB2YWx1ZWAsIHdoaWNoIGlzCisgICBnaXZlbiBhcyBhbiBhcmd1bWVudCB3aGVuIGNvbnN0cnVjdGluZyB0aGUgZXhjZXB0aW9uLCBhbmQgZGVmYXVsdHMKKyAgIHRvIDpjb25zdDpgTm9uZWAuCisKKyAgIFdoZW4gYSBnZW5lcmF0b3IgZnVuY3Rpb24gcmV0dXJucywgYSBuZXcgOmV4YzpgU3RvcEl0ZXJhdGlvbmAgaW5zdGFuY2UgaXMKKyAgIHJhaXNlZCwgYW5kIHRoZSB2YWx1ZSByZXR1cm5lZCBieSB0aGUgZnVuY3Rpb24gaXMgdXNlZCBhcyB0aGUKKyAgIDphdHRyOmB2YWx1ZWAgcGFyYW1ldGVyIHRvIHRoZSBjb25zdHJ1Y3RvciBvZiB0aGUgZXhjZXB0aW9uLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgYGB2YWx1ZWBgIGF0dHJpYnV0ZSBhbmQgdGhlIGFiaWxpdHkgZm9yIGdlbmVyYXRvciBmdW5jdGlvbnMgdG8KKyAgICAgIHVzZSBpdCB0byByZXR1cm4gYSB2YWx1ZS4KIAogLi4gZXhjZXB0aW9uOjogU3ludGF4RXJyb3IKIApAQCAtMzcyLDIxICszOTAsNiBAQAogICAgbW9yZSBwcmVjaXNlIGV4Y2VwdGlvbiBzdWNoIGFzIDpleGM6YEluZGV4RXJyb3JgLgogCiAKLS4uIGV4Y2VwdGlvbjo6IFZNU0Vycm9yCi0KLSAgIE9ubHkgYXZhaWxhYmxlIG9uIFZNUy4gIFJhaXNlZCB3aGVuIGEgVk1TLXNwZWNpZmljIGVycm9yIG9jY3Vycy4KLQotCi0uLiBleGNlcHRpb246OiBXaW5kb3dzRXJyb3IKLQotICAgUmFpc2VkIHdoZW4gYSBXaW5kb3dzLXNwZWNpZmljIGVycm9yIG9jY3VycyBvciB3aGVuIHRoZSBlcnJvciBudW1iZXIgZG9lcyBub3QKLSAgIGNvcnJlc3BvbmQgdG8gYW4gOmM6ZGF0YTpgZXJybm9gIHZhbHVlLiAgVGhlIDphdHRyOmB3aW5lcnJvcmAgYW5kCi0gICA6YXR0cjpgc3RyZXJyb3JgIHZhbHVlcyBhcmUgY3JlYXRlZCBmcm9tIHRoZSByZXR1cm4gdmFsdWVzIG9mIHRoZQotICAgOmM6ZnVuYzpgR2V0TGFzdEVycm9yYCBhbmQgOmM6ZnVuYzpgRm9ybWF0TWVzc2FnZWAgZnVuY3Rpb25zIGZyb20gdGhlIFdpbmRvd3MKLSAgIFBsYXRmb3JtIEFQSS4gVGhlIDphdHRyOmBlcnJub2AgdmFsdWUgbWFwcyB0aGUgOmF0dHI6YHdpbmVycm9yYCB2YWx1ZSB0bwotICAgY29ycmVzcG9uZGluZyBgYGVycm5vLmhgYCB2YWx1ZXMuIFRoaXMgaXMgYSBzdWJjbGFzcyBvZiA6ZXhjOmBPU0Vycm9yYC4KLQotCiAuLiBleGNlcHRpb246OiBaZXJvRGl2aXNpb25FcnJvcgogCiAgICBSYWlzZWQgd2hlbiB0aGUgc2Vjb25kIGFyZ3VtZW50IG9mIGEgZGl2aXNpb24gb3IgbW9kdWxvIG9wZXJhdGlvbiBpcyB6ZXJvLiAgVGhlCkBAIC0zOTQsNiArMzk3LDEzNiBAQAogICAgb3BlcmF0aW9uLgogCiAKK1RoZSBmb2xsb3dpbmcgZXhjZXB0aW9ucyBhcmUga2VwdCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIHByZXZpb3VzIHZlcnNpb25zOworc3RhcnRpbmcgZnJvbSBQeXRob24gMy4zLCB0aGV5IGFyZSBhbGlhc2VzIG9mIDpleGM6YE9TRXJyb3JgLgorCisuLiBleGNlcHRpb246OiBFbnZpcm9ubWVudEVycm9yCisKKy4uIGV4Y2VwdGlvbjo6IElPRXJyb3IKKworLi4gZXhjZXB0aW9uOjogVk1TRXJyb3IKKworICAgT25seSBhdmFpbGFibGUgb24gVk1TLgorCisuLiBleGNlcHRpb246OiBXaW5kb3dzRXJyb3IKKworICAgT25seSBhdmFpbGFibGUgb24gV2luZG93cy4KKworCitPUyBleGNlcHRpb25zCiteXl5eXl5eXl5eXl5eCisKK1RoZSBmb2xsb3dpbmcgZXhjZXB0aW9ucyBhcmUgc3ViY2xhc3NlcyBvZiA6ZXhjOmBPU0Vycm9yYCwgdGhleSBnZXQgcmFpc2VkCitkZXBlbmRpbmcgb24gdGhlIHN5c3RlbSBlcnJvciBjb2RlLgorCisuLiBleGNlcHRpb246OiBCbG9ja2luZ0lPRXJyb3IKKworICAgUmFpc2VkIHdoZW4gYW4gb3BlcmF0aW9uIHdvdWxkIGJsb2NrIG9uIGFuIG9iamVjdCAoZS5nLiBzb2NrZXQpIHNldAorICAgZm9yIG5vbi1ibG9ja2luZyBvcGVyYXRpb24uCisgICBDb3JyZXNwb25kcyB0byA6YzpkYXRhOmBlcnJub2AgYGBFQUdBSU5gYCwgYGBFQUxSRUFEWWBgLAorICAgYGBFV09VTERCTE9DS2BgIGFuZCBgYEVJTlBST0dSRVNTYGAuCisKKyAgIEluIGFkZGl0aW9uIHRvIHRob3NlIG9mIDpleGM6YE9TRXJyb3JgLCA6ZXhjOmBCbG9ja2luZ0lPRXJyb3JgIGNhbiBoYXZlCisgICBvbmUgbW9yZSBhdHRyaWJ1dGU6CisKKyAgIC4uIGF0dHJpYnV0ZTo6IGNoYXJhY3RlcnNfd3JpdHRlbgorCisgICAgICBBbiBpbnRlZ2VyIGNvbnRhaW5pbmcgdGhlIG51bWJlciBvZiBjaGFyYWN0ZXJzIHdyaXR0ZW4gdG8gdGhlIHN0cmVhbQorICAgICAgYmVmb3JlIGl0IGJsb2NrZWQuICBUaGlzIGF0dHJpYnV0ZSBpcyBhdmFpbGFibGUgd2hlbiB1c2luZyB0aGUKKyAgICAgIGJ1ZmZlcmVkIEkvTyBjbGFzc2VzIGZyb20gdGhlIDptb2Q6YGlvYCBtb2R1bGUuCisKKy4uIGV4Y2VwdGlvbjo6IENoaWxkUHJvY2Vzc0Vycm9yCisKKyAgIFJhaXNlZCB3aGVuIGFuIG9wZXJhdGlvbiBvbiBhIGNoaWxkIHByb2Nlc3MgZmFpbGVkLgorICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRUNISUxEYGAuCisKKy4uIGV4Y2VwdGlvbjo6IENvbm5lY3Rpb25FcnJvcgorCisgICBBIGJhc2UgY2xhc3MgZm9yIGNvbm5lY3Rpb24tcmVsYXRlZCBpc3N1ZXMuICBTdWJjbGFzc2VzIGFyZQorICAgOmV4YzpgQnJva2VuUGlwZUVycm9yYCwgOmV4YzpgQ29ubmVjdGlvbkFib3J0ZWRFcnJvcmAsCisgICA6ZXhjOmBDb25uZWN0aW9uUmVmdXNlZEVycm9yYCBhbmQgOmV4YzpgQ29ubmVjdGlvblJlc2V0RXJyb3JgLgorCisgICAuLiBleGNlcHRpb246OiBCcm9rZW5QaXBlRXJyb3IKKworICAgICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBDb25uZWN0aW9uRXJyb3JgLCByYWlzZWQgd2hlbiB0cnlpbmcgdG8gd3JpdGUgb24gYQorICAgICAgcGlwZSB3aGlsZSB0aGUgb3RoZXIgZW5kIGhhcyBiZWVuIGNsb3NlZCwgb3IgdHJ5aW5nIHRvIHdyaXRlIG9uIGEgc29ja2V0CisgICAgICB3aGljaCBoYXMgYmVlbiBzaHV0ZG93biBmb3Igd3JpdGluZy4KKyAgICAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVQSVBFYGAgYW5kIGBgRVNIVVRET1dOYGAuCisKKyAgIC4uIGV4Y2VwdGlvbjo6IENvbm5lY3Rpb25BYm9ydGVkRXJyb3IKKworICAgICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBDb25uZWN0aW9uRXJyb3JgLCByYWlzZWQgd2hlbiBhIGNvbm5lY3Rpb24gYXR0ZW1wdAorICAgICAgaXMgYWJvcnRlZCBieSB0aGUgcGVlci4KKyAgICAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVDT05OQUJPUlRFRGBgLgorCisgICAuLiBleGNlcHRpb246OiBDb25uZWN0aW9uUmVmdXNlZEVycm9yCisKKyAgICAgIEEgc3ViY2xhc3Mgb2YgOmV4YzpgQ29ubmVjdGlvbkVycm9yYCwgcmFpc2VkIHdoZW4gYSBjb25uZWN0aW9uIGF0dGVtcHQKKyAgICAgIGlzIHJlZnVzZWQgYnkgdGhlIHBlZXIuCisgICAgICBDb3JyZXNwb25kcyB0byA6YzpkYXRhOmBlcnJub2AgYGBFQ09OTlJFRlVTRURgYC4KKworICAgLi4gZXhjZXB0aW9uOjogQ29ubmVjdGlvblJlc2V0RXJyb3IKKworICAgICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBDb25uZWN0aW9uRXJyb3JgLCByYWlzZWQgd2hlbiBhIGNvbm5lY3Rpb24gaXMKKyAgICAgIHJlc2V0IGJ5IHRoZSBwZWVyLgorICAgICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRUNPTk5SRVNFVGBgLgorCisuLiBleGNlcHRpb246OiBGaWxlRXhpc3RzRXJyb3IKKworICAgUmFpc2VkIHdoZW4gdHJ5aW5nIHRvIGNyZWF0ZSBhIGZpbGUgb3IgZGlyZWN0b3J5IHdoaWNoIGFscmVhZHkgZXhpc3RzLgorICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRUVYSVNUYGAuCisKKy4uIGV4Y2VwdGlvbjo6IEZpbGVOb3RGb3VuZEVycm9yCisKKyAgIFJhaXNlZCB3aGVuIGEgZmlsZSBvciBkaXJlY3RvcnkgaXMgcmVxdWVzdGVkIGJ1dCBkb2Vzbid0IGV4aXN0LgorICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRU5PRU5UYGAuCisKKy4uIGV4Y2VwdGlvbjo6IEludGVycnVwdGVkRXJyb3IKKworICAgUmFpc2VkIHdoZW4gYSBzeXN0ZW0gY2FsbCBpcyBpbnRlcnJ1cHRlZCBieSBhbiBpbmNvbWluZyBzaWduYWwuCisgICBDb3JyZXNwb25kcyB0byA6YzpkYXRhOmBlcnJub2AgYGBFRUlOVFJgYC4KKworLi4gZXhjZXB0aW9uOjogSXNBRGlyZWN0b3J5RXJyb3IKKworICAgUmFpc2VkIHdoZW4gYSBmaWxlIG9wZXJhdGlvbiAoc3VjaCBhcyA6ZnVuYzpgb3MucmVtb3ZlYCkgaXMgcmVxdWVzdGVkCisgICBvbiBhIGRpcmVjdG9yeS4KKyAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVJU0RJUmBgLgorCisuLiBleGNlcHRpb246OiBOb3RBRGlyZWN0b3J5RXJyb3IKKworICAgUmFpc2VkIHdoZW4gYSBkaXJlY3Rvcnkgb3BlcmF0aW9uIChzdWNoIGFzIDpmdW5jOmBvcy5saXN0ZGlyYCkgaXMgcmVxdWVzdGVkCisgICBvbiBzb21ldGhpbmcgd2hpY2ggaXMgbm90IGEgZGlyZWN0b3J5LgorICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRU5PVERJUmBgLgorCisuLiBleGNlcHRpb246OiBQZXJtaXNzaW9uRXJyb3IKKworICAgUmFpc2VkIHdoZW4gdHJ5aW5nIHRvIHJ1biBhbiBvcGVyYXRpb24gd2l0aG91dCB0aGUgYWRlcXVhdGUgYWNjZXNzCisgICByaWdodHMgLSBmb3IgZXhhbXBsZSBmaWxlc3lzdGVtIHBlcm1pc3Npb25zLgorICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRUFDQ0VTYGAgYW5kIGBgRVBFUk1gYC4KKworLi4gZXhjZXB0aW9uOjogUHJvY2Vzc0xvb2t1cEVycm9yCisKKyAgIFJhaXNlZCB3aGVuIGEgZ2l2ZW4gcHJvY2VzcyBkb2Vzbid0IGV4aXN0LgorICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRVNSQ0hgYC4KKworLi4gZXhjZXB0aW9uOjogVGltZW91dEVycm9yCisKKyAgIFJhaXNlZCB3aGVuIGEgc3lzdGVtIGZ1bmN0aW9uIHRpbWVkIG91dCBhdCB0aGUgc3lzdGVtIGxldmVsLgorICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRVRJTUVET1VUYGAuCisKKy4uIHZlcnNpb25hZGRlZDo6IDMuMworICAgQWxsIHRoZSBhYm92ZSA6ZXhjOmBPU0Vycm9yYCBzdWJjbGFzc2VzIHdlcmUgYWRkZWQuCisKKworLi4gc2VlYWxzbzo6CisKKyAgIDpwZXA6YDMxNTFgIC0gUmV3b3JraW5nIHRoZSBPUyBhbmQgSU8gZXhjZXB0aW9uIGhpZXJhcmNoeQorICAgICAgUEVQIHdyaXR0ZW4gYW5kIGltcGxlbWVudGVkIGJ5IEFudG9pbmUgUGl0cm91LgorCisKK1dhcm5pbmdzCistLS0tLS0tLQorCiBUaGUgZm9sbG93aW5nIGV4Y2VwdGlvbnMgYXJlIHVzZWQgYXMgd2FybmluZyBjYXRlZ29yaWVzOyBzZWUgdGhlIDptb2Q6YHdhcm5pbmdzYAogbW9kdWxlIGZvciBtb3JlIGluZm9ybWF0aW9uLgogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9mYXVsdGhhbmRsZXIucnN0IGIvRG9jL2xpYnJhcnkvZmF1bHRoYW5kbGVyLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOWI5NTQ2Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvZmF1bHRoYW5kbGVyLnJzdApAQCAtMCwwICsxLDEzNiBAQAorOm1vZDpgZmF1bHRoYW5kbGVyYCAtLS0gRHVtcCB0aGUgUHl0aG9uIHRyYWNlYmFjaworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBmYXVsdGhhbmRsZXIKKyAgIDpzeW5vcHNpczogRHVtcCB0aGUgUHl0aG9uIHRyYWNlYmFjay4KKworVGhpcyBtb2R1bGUgY29udGFpbnMgZnVuY3Rpb25zIHRvIGR1bXAgUHl0aG9uIHRyYWNlYmFja3MgZXhwbGljaXRseSwgb24gYSBmYXVsdCwKK2FmdGVyIGEgdGltZW91dCwgb3Igb24gYSB1c2VyIHNpZ25hbC4gQ2FsbCA6ZnVuYzpgZmF1bHRoYW5kbGVyLmVuYWJsZWAgdG8KK2luc3RhbGwgZmF1bHQgaGFuZGxlcnMgZm9yIHRoZSA6Y29uc3Q6YFNJR1NFR1ZgLCA6Y29uc3Q6YFNJR0ZQRWAsCis6Y29uc3Q6YFNJR0FCUlRgLCA6Y29uc3Q6YFNJR0JVU2AsIGFuZCA6Y29uc3Q6YFNJR0lMTGAgc2lnbmFscy4gWW91IGNhbiBhbHNvCitlbmFibGUgdGhlbSBhdCBzdGFydHVwIGJ5IHNldHRpbmcgdGhlIDplbnZ2YXI6YFBZVEhPTkZBVUxUSEFORExFUmAgZW52aXJvbm1lbnQKK3ZhcmlhYmxlIG9yIGJ5IHVzaW5nIDpvcHRpb246YC1YYCBgYGZhdWx0aGFuZGxlcmBgIGNvbW1hbmQgbGluZSBvcHRpb24uCisKK1RoZSBmYXVsdCBoYW5kbGVyIGlzIGNvbXBhdGlibGUgd2l0aCBzeXN0ZW0gZmF1bHQgaGFuZGxlcnMgbGlrZSBBcHBvcnQgb3IgdGhlCitXaW5kb3dzIGZhdWx0IGhhbmRsZXIuIFRoZSBtb2R1bGUgdXNlcyBhbiBhbHRlcm5hdGl2ZSBzdGFjayBmb3Igc2lnbmFsIGhhbmRsZXJzCitpZiB0aGUgOmM6ZnVuYzpgc2lnYWx0c3RhY2tgIGZ1bmN0aW9uIGlzIGF2YWlsYWJsZS4gVGhpcyBhbGxvd3MgaXQgdG8gZHVtcCB0aGUKK3RyYWNlYmFjayBldmVuIG9uIGEgc3RhY2sgb3ZlcmZsb3cuCisKK1RoZSBmYXVsdCBoYW5kbGVyIGlzIGNhbGxlZCBvbiBjYXRhc3Ryb3BoaWMgY2FzZXMgYW5kIHRoZXJlZm9yZSBjYW4gb25seSB1c2UKK3NpZ25hbC1zYWZlIGZ1bmN0aW9ucyAoZS5nLiBpdCBjYW5ub3QgYWxsb2NhdGUgbWVtb3J5IG9uIHRoZSBoZWFwKS4gQmVjYXVzZSBvZgordGhpcyBsaW1pdGF0aW9uIHRyYWNlYmFjayBkdW1waW5nIGlzIG1pbmltYWwgY29tcGFyZWQgdG8gbm9ybWFsIFB5dGhvbgordHJhY2ViYWNrczoKKworKiBPbmx5IEFTQ0lJIGlzIHN1cHBvcnRlZC4gVGhlIGBgYmFja3NsYXNocmVwbGFjZWBgIGVycm9yIGhhbmRsZXIgaXMgdXNlZCBvbgorICBlbmNvZGluZy4KKyogRWFjaCBzdHJpbmcgaXMgbGltaXRlZCB0byAxMDAgY2hhcmFjdGVycy4KKyogT25seSB0aGUgZmlsZW5hbWUsIHRoZSBmdW5jdGlvbiBuYW1lIGFuZCB0aGUgbGluZSBudW1iZXIgYXJlCisgIGRpc3BsYXllZC4gKG5vIHNvdXJjZSBjb2RlKQorKiBJdCBpcyBsaW1pdGVkIHRvIDEwMCBmcmFtZXMgYW5kIDEwMCB0aHJlYWRzLgorCitCeSBkZWZhdWx0LCB0aGUgUHl0aG9uIHRyYWNlYmFjayBpcyB3cml0dGVuIHRvIDpkYXRhOmBzeXMuc3RkZXJyYC4gVG8gc2VlCit0cmFjZWJhY2tzLCBhcHBsaWNhdGlvbnMgbXVzdCBiZSBydW4gaW4gdGhlIHRlcm1pbmFsLiBBIGxvZyBmaWxlIGNhbgorYWx0ZXJuYXRpdmVseSBiZSBwYXNzZWQgdG8gOmZ1bmM6YGZhdWx0aGFuZGxlci5lbmFibGVgLgorCitUaGUgbW9kdWxlIGlzIGltcGxlbWVudGVkIGluIEMsIHNvIHRyYWNlYmFja3MgY2FuIGJlIGR1bXBlZCBvbiBhIGNyYXNoIG9yIHdoZW4KK1B5dGhvbiBpcyBkZWFkbG9ja2VkLgorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCitEdW1wIHRoZSB0cmFjZWJhY2sKKy0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiBmdW5jdGlvbjo6IGR1bXBfdHJhY2ViYWNrKGZpbGU9c3lzLnN0ZGVyciwgYWxsX3RocmVhZHM9VHJ1ZSkKKworICAgRHVtcCB0aGUgdHJhY2ViYWNrcyBvZiBhbGwgdGhyZWFkcyBpbnRvICpmaWxlKi4gSWYgKmFsbF90aHJlYWRzKiBpcworICAgYGBGYWxzZWBgLCBkdW1wIG9ubHkgdGhlIGN1cnJlbnQgdGhyZWFkLgorCisKK0ZhdWx0IGhhbmRsZXIgc3RhdGUKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gZnVuY3Rpb246OiBlbmFibGUoZmlsZT1zeXMuc3RkZXJyLCBhbGxfdGhyZWFkcz1UcnVlKQorCisgICBFbmFibGUgdGhlIGZhdWx0IGhhbmRsZXI6IGluc3RhbGwgaGFuZGxlcnMgZm9yIHRoZSA6Y29uc3Q6YFNJR1NFR1ZgLAorICAgOmNvbnN0OmBTSUdGUEVgLCA6Y29uc3Q6YFNJR0FCUlRgLCA6Y29uc3Q6YFNJR0JVU2AgYW5kIDpjb25zdDpgU0lHSUxMYAorICAgc2lnbmFscyB0byBkdW1wIHRoZSBQeXRob24gdHJhY2ViYWNrLiBJZiAqYWxsX3RocmVhZHMqIGlzIGBgVHJ1ZWBgLAorICAgcHJvZHVjZSB0cmFjZWJhY2tzIGZvciBldmVyeSBydW5uaW5nIHRocmVhZC4gT3RoZXJ3aXNlLCBkdW1wIG9ubHkgdGhlIGN1cnJlbnQKKyAgIHRocmVhZC4KKworLi4gZnVuY3Rpb246OiBkaXNhYmxlKCkKKworICAgRGlzYWJsZSB0aGUgZmF1bHQgaGFuZGxlcjogdW5pbnN0YWxsIHRoZSBzaWduYWwgaGFuZGxlcnMgaW5zdGFsbGVkIGJ5CisgICA6ZnVuYzpgZW5hYmxlYC4KKworLi4gZnVuY3Rpb246OiBpc19lbmFibGVkKCkKKworICAgQ2hlY2sgaWYgdGhlIGZhdWx0IGhhbmRsZXIgaXMgZW5hYmxlZC4KKworCitEdW1wIHRoZSB0cmFjZWJhY2tzIGFmdGVyIGEgdGltZW91dAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gZnVuY3Rpb246OiBkdW1wX3RyYWNlYmFja3NfbGF0ZXIodGltZW91dCwgcmVwZWF0PUZhbHNlLCBmaWxlPXN5cy5zdGRlcnIsIGV4aXQ9RmFsc2UpCisKKyAgIER1bXAgdGhlIHRyYWNlYmFja3Mgb2YgYWxsIHRocmVhZHMsIGFmdGVyIGEgdGltZW91dCBvZiAqdGltZW91dCogc2Vjb25kcywgb3IKKyAgIGV2ZXJ5ICp0aW1lb3V0KiBzZWNvbmRzIGlmICpyZXBlYXQqIGlzIGBgVHJ1ZWBgLiAgSWYgKmV4aXQqIGlzIGBgVHJ1ZWBgLCBjYWxsCisgICA6YzpmdW5jOmBfZXhpdGAgd2l0aCBzdGF0dXM9MSBhZnRlciBkdW1waW5nIHRoZSB0cmFjZWJhY2tzLiAgKE5vdGUKKyAgIDpjOmZ1bmM6YF9leGl0YCBleGl0cyB0aGUgcHJvY2VzcyBpbW1lZGlhdGVseSwgd2hpY2ggbWVhbnMgaXQgZG9lc24ndCBkbyBhbnkKKyAgIGNsZWFudXAgbGlrZSBmbHVzaGluZyBmaWxlIGJ1ZmZlcnMuKSBJZiB0aGUgZnVuY3Rpb24gaXMgY2FsbGVkIHR3aWNlLCB0aGUgbmV3CisgICBjYWxsIHJlcGxhY2VzIHByZXZpb3VzIHBhcmFtZXRlcnMgYW5kIHJlc2V0cyB0aGUgdGltZW91dC4gVGhlIHRpbWVyIGhhcyBhCisgICBzdWItc2Vjb25kIHJlc29sdXRpb24uCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgaW1wbGVtZW50ZWQgdXNpbmcgYSB3YXRjaGRvZyB0aHJlYWQgYW5kIHRoZXJlZm9yZSBpcyBub3QKKyAgIGF2YWlsYWJsZSBpZiBQeXRob24gaXMgY29tcGlsZWQgd2l0aCB0aHJlYWRzIGRpc2FibGVkLgorCisuLiBmdW5jdGlvbjo6IGNhbmNlbF9kdW1wX3RyYWNlYmFja3NfbGF0ZXIoKQorCisgICBDYW5jZWwgdGhlIGxhc3QgY2FsbCB0byA6ZnVuYzpgZHVtcF90cmFjZWJhY2tzX2xhdGVyYC4KKworCitEdW1wIHRoZSB0cmFjZWJhY2sgb24gYSB1c2VyIHNpZ25hbAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gZnVuY3Rpb246OiByZWdpc3RlcihzaWdudW0sIGZpbGU9c3lzLnN0ZGVyciwgYWxsX3RocmVhZHM9VHJ1ZSwgY2hhaW49RmFsc2UpCisKKyAgIFJlZ2lzdGVyIGEgdXNlciBzaWduYWw6IGluc3RhbGwgYSBoYW5kbGVyIGZvciB0aGUgKnNpZ251bSogc2lnbmFsIHRvIGR1bXAKKyAgIHRoZSB0cmFjZWJhY2sgb2YgYWxsIHRocmVhZHMsIG9yIG9mIHRoZSBjdXJyZW50IHRocmVhZCBpZiAqYWxsX3RocmVhZHMqIGlzCisgICBgYEZhbHNlYGAsIGludG8gKmZpbGUqLiBDYWxsIHRoZSBwcmV2aW91cyBoYW5kbGVyIGlmIGNoYWluIGlzIGBgVHJ1ZWBgLgorCisgICBOb3QgYXZhaWxhYmxlIG9uIFdpbmRvd3MuCisKKy4uIGZ1bmN0aW9uOjogdW5yZWdpc3RlcihzaWdudW0pCisKKyAgIFVucmVnaXN0ZXIgYSB1c2VyIHNpZ25hbDogdW5pbnN0YWxsIHRoZSBoYW5kbGVyIG9mIHRoZSAqc2lnbnVtKiBzaWduYWwKKyAgIGluc3RhbGxlZCBieSA6ZnVuYzpgcmVnaXN0ZXJgLiBSZXR1cm4gYGBUcnVlYGAgaWYgdGhlIHNpZ25hbCB3YXMgcmVnaXN0ZXJlZCwKKyAgIGBgRmFsc2VgYCBvdGhlcndpc2UuCisKKyAgIE5vdCBhdmFpbGFibGUgb24gV2luZG93cy4KKworCitGaWxlIGRlc2NyaXB0b3IgaXNzdWUKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCis6ZnVuYzpgZW5hYmxlYCwgOmZ1bmM6YGR1bXBfdHJhY2ViYWNrc19sYXRlcmAgYW5kIDpmdW5jOmByZWdpc3RlcmAga2VlcCB0aGUKK2ZpbGUgZGVzY3JpcHRvciBvZiB0aGVpciAqZmlsZSogYXJndW1lbnQuIElmIHRoZSBmaWxlIGlzIGNsb3NlZCBhbmQgaXRzIGZpbGUKK2Rlc2NyaXB0b3IgaXMgcmV1c2VkIGJ5IGEgbmV3IGZpbGUsIG9yIGlmIDpmdW5jOmBvcy5kdXAyYCBpcyB1c2VkIHRvIHJlcGxhY2UKK3RoZSBmaWxlIGRlc2NyaXB0b3IsIHRoZSB0cmFjZWJhY2sgd2lsbCBiZSB3cml0dGVuIGludG8gYSBkaWZmZXJlbnQgZmlsZS4gQ2FsbAordGhlc2UgZnVuY3Rpb25zIGFnYWluIGVhY2ggdGltZSB0aGF0IHRoZSBmaWxlIGlzIHJlcGxhY2VkLgorCisKK0V4YW1wbGUKKy0tLS0tLS0KKworRXhhbXBsZSBvZiBhIHNlZ21lbnRhdGlvbiBmYXVsdCBvbiBMaW51eDogOjoKKworICAgICQgcHl0aG9uIC1xIC1YIGZhdWx0aGFuZGxlcgorICAgID4+PiBpbXBvcnQgY3R5cGVzCisgICAgPj4+IGN0eXBlcy5zdHJpbmdfYXQoMCkKKyAgICBGYXRhbCBQeXRob24gZXJyb3I6IFNlZ21lbnRhdGlvbiBmYXVsdAorCisgICAgQ3VycmVudCB0aHJlYWQgMHgwMDAwN2ZiODk5ZjM5NzAwOgorICAgICAgRmlsZSAiL2hvbWUvcHl0aG9uL2NweXRob24vTGliL2N0eXBlcy9fX2luaXRfXy5weSIsIGxpbmUgNDg2IGluIHN0cmluZ19hdAorICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMSBpbiA8bW9kdWxlPgorICAgIFNlZ21lbnRhdGlvbiBmYXVsdAorCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9mY250bC5yc3QgYi9Eb2MvbGlicmFyeS9mY250bC5yc3QKaW5kZXggNjE5MjQwMC4uOWE5Y2RjMSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZmNudGwucnN0CisrKyBiL0RvYy9saWJyYXJ5L2ZjbnRsLnJzdApAQCAtMTksNiArMTksMTEgQEAKIGBgc3lzLnN0ZGluLmZpbGVubygpYGAsIG9yIGEgOmNsYXNzOmBpby5JT0Jhc2VgIG9iamVjdCwgc3VjaCBhcyBgYHN5cy5zdGRpbmBgCiBpdHNlbGYsIHdoaWNoIHByb3ZpZGVzIGEgOm1ldGg6YGZpbGVub2AgdGhhdCByZXR1cm5zIGEgZ2VudWluZSBmaWxlIGRlc2NyaXB0b3IuCiAKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBPcGVyYXRpb25zIGluIHRoaXMgbW9kdWxlIHVzZWQgdG8gcmFpc2UgYSA6ZXhjOmBJT0Vycm9yYCB3aGVyZSB0aGV5IG5vdworICAgcmFpc2UgYSA6ZXhjOmBPU0Vycm9yYC4KKworCiBUaGUgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnM6CiAKIApAQCAtNDAsNyArNDUsNyBAQAogICAgbGFyZ2VyIHRoYW4gMTAyNCBieXRlcywgdGhpcyBpcyBtb3N0IGxpa2VseSB0byByZXN1bHQgaW4gYSBzZWdtZW50YXRpb24KICAgIHZpb2xhdGlvbiBvciBhIG1vcmUgc3VidGxlIGRhdGEgY29ycnVwdGlvbi4KIAotICAgSWYgdGhlIDpjOmZ1bmM6YGZjbnRsYCBmYWlscywgYW4gOmV4YzpgSU9FcnJvcmAgaXMgcmFpc2VkLgorICAgSWYgdGhlIDpjOmZ1bmM6YGZjbnRsYCBmYWlscywgYW4gOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkLgogCiAKIC4uIGZ1bmN0aW9uOjogaW9jdGwoZmQsIG9wWywgYXJnWywgbXV0YXRlX2ZsYWddXSkKQEAgLTEwNyw3ICsxMTIsNyBAQAogICAgV2hlbiAqb3BlcmF0aW9uKiBpcyA6Y29uc3Q6YExPQ0tfU0hgIG9yIDpjb25zdDpgTE9DS19FWGAsIGl0IGNhbiBhbHNvIGJlCiAgICBiaXR3aXNlIE9SZWQgd2l0aCA6Y29uc3Q6YExPQ0tfTkJgIHRvIGF2b2lkIGJsb2NraW5nIG9uIGxvY2sgYWNxdWlzaXRpb24uCiAgICBJZiA6Y29uc3Q6YExPQ0tfTkJgIGlzIHVzZWQgYW5kIHRoZSBsb2NrIGNhbm5vdCBiZSBhY3F1aXJlZCwgYW4KLSAgIDpleGM6YElPRXJyb3JgIHdpbGwgYmUgcmFpc2VkIGFuZCB0aGUgZXhjZXB0aW9uIHdpbGwgaGF2ZSBhbiAqZXJybm8qCisgICA6ZXhjOmBPU0Vycm9yYCB3aWxsIGJlIHJhaXNlZCBhbmQgdGhlIGV4Y2VwdGlvbiB3aWxsIGhhdmUgYW4gKmVycm5vKgogICAgYXR0cmlidXRlIHNldCB0byA6Y29uc3Q6YEVBQ0NFU2Agb3IgOmNvbnN0OmBFQUdBSU5gIChkZXBlbmRpbmcgb24gdGhlCiAgICBvcGVyYXRpbmcgc3lzdGVtOyBmb3IgcG9ydGFiaWxpdHksIGNoZWNrIGZvciBib3RoIHZhbHVlcykuICBPbiBhdCBsZWFzdCBzb21lCiAgICBzeXN0ZW1zLCA6Y29uc3Q6YExPQ0tfRVhgIGNhbiBvbmx5IGJlIHVzZWQgaWYgdGhlIGZpbGUgZGVzY3JpcHRvciByZWZlcnMgdG8gYQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZmlsZWlucHV0LnJzdCBiL0RvYy9saWJyYXJ5L2ZpbGVpbnB1dC5yc3QKaW5kZXggYWM0NDMxMS4uZjhlYzQzNiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZmlsZWlucHV0LnJzdAorKysgYi9Eb2MvbGlicmFyeS9maWxlaW5wdXQucnN0CkBAIC0yOCw3ICsyOCwxMCBAQAogQWxsIGZpbGVzIGFyZSBvcGVuZWQgaW4gdGV4dCBtb2RlIGJ5IGRlZmF1bHQsIGJ1dCB5b3UgY2FuIG92ZXJyaWRlIHRoaXMgYnkKIHNwZWNpZnlpbmcgdGhlICptb2RlKiBwYXJhbWV0ZXIgaW4gdGhlIGNhbGwgdG8gOmZ1bmM6YC5pbnB1dGAgb3IKIDpjbGFzczpgRmlsZUlucHV0YC4gIElmIGFuIEkvTyBlcnJvciBvY2N1cnMgZHVyaW5nIG9wZW5pbmcgb3IgcmVhZGluZyBhIGZpbGUsCi06ZXhjOmBJT0Vycm9yYCBpcyByYWlzZWQuCis6ZXhjOmBPU0Vycm9yYCBpcyByYWlzZWQuCisKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICA6ZXhjOmBJT0Vycm9yYCB1c2VkIHRvIGJlIHJhaXNlZDsgaXQgaXMgbm93IGFuIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgogCiBJZiBgYHN5cy5zdGRpbmBgIGlzIHVzZWQgbW9yZSB0aGFuIG9uY2UsIHRoZSBzZWNvbmQgYW5kIGZ1cnRoZXIgdXNlIHdpbGwgcmV0dXJuCiBubyBsaW5lcywgZXhjZXB0IHBlcmhhcHMgZm9yIGludGVyYWN0aXZlIHVzZSwgb3IgaWYgaXQgaGFzIGJlZW4gZXhwbGljaXRseSByZXNldApAQCAtMTY4LDEwICsxNzEsNiBAQAogaXQgaXMgZGVsZXRlZCB3aGVuIHRoZSBvdXRwdXQgZmlsZSBpcyBjbG9zZWQuICBJbi1wbGFjZSBmaWx0ZXJpbmcgaXMgZGlzYWJsZWQKIHdoZW4gc3RhbmRhcmQgaW5wdXQgaXMgcmVhZC4KIAotLi4gbm90ZTo6Ci0KLSAgIFRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIGRvZXMgbm90IHdvcmsgZm9yIE1TLURPUyA4KzMgZmlsZXN5c3RlbXMuCi0KIAogVGhlIHR3byBmb2xsb3dpbmcgb3BlbmluZyBob29rcyBhcmUgcHJvdmlkZWQgYnkgdGhpcyBtb2R1bGU6CiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2Z0cGxpYi5yc3QgYi9Eb2MvbGlicmFyeS9mdHBsaWIucnN0CmluZGV4IDViYmVmNGYuLjNjYzI5NWEgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2Z0cGxpYi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZnRwbGliLnJzdApAQCAtNDAsNyArNDAsNyBAQAogCiBUaGUgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBpdGVtczoKIAotLi4gY2xhc3M6OiBGVFAoaG9zdD0nJywgdXNlcj0nJywgcGFzc3dkPScnLCBhY2N0PScnWywgdGltZW91dF0pCisuLiBjbGFzczo6IEZUUChob3N0PScnLCB1c2VyPScnLCBwYXNzd2Q9JycsIGFjY3Q9JycsIHRpbWVvdXQ9Tm9uZSwgc291cmNlX2FkZHJlc3M9Tm9uZSkKIAogICAgUmV0dXJuIGEgbmV3IGluc3RhbmNlIG9mIHRoZSA6Y2xhc3M6YEZUUGAgY2xhc3MuICBXaGVuICpob3N0KiBpcyBnaXZlbiwgdGhlCiAgICBtZXRob2QgY2FsbCBgYGNvbm5lY3QoaG9zdClgYCBpcyBtYWRlLiAgV2hlbiAqdXNlciogaXMgZ2l2ZW4sIGFkZGl0aW9uYWxseQpAQCAtNDgsNyArNDgsOCBAQAogICAgKmFjY3QqIGRlZmF1bHQgdG8gdGhlIGVtcHR5IHN0cmluZyB3aGVuIG5vdCBnaXZlbikuICBUaGUgb3B0aW9uYWwgKnRpbWVvdXQqCiAgICBwYXJhbWV0ZXIgc3BlY2lmaWVzIGEgdGltZW91dCBpbiBzZWNvbmRzIGZvciBibG9ja2luZyBvcGVyYXRpb25zIGxpa2UgdGhlCiAgICBjb25uZWN0aW9uIGF0dGVtcHQgKGlmIGlzIG5vdCBzcGVjaWZpZWQsIHRoZSBnbG9iYWwgZGVmYXVsdCB0aW1lb3V0IHNldHRpbmcKLSAgIHdpbGwgYmUgdXNlZCkuCisgICB3aWxsIGJlIHVzZWQpLiAqc291cmNlX2FkZHJlc3MqIGlzIGEgMi10dXBsZSBgYChob3N0LCBwb3J0KWBgIGZvciB0aGUgc29ja2V0CisgICB0byBiaW5kIHRvIGFzIGl0cyBzb3VyY2UgYWRkcmVzcyBiZWZvcmUgY29ubmVjdGluZy4KIAogICAgOmNsYXNzOmBGVFBgIGNsYXNzIHN1cHBvcnRzIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50LiBIZXJlIGlzIGEgc2FtcGxlCiAgICBvbiBob3cgdXNpbmcgaXQ6CkBAIC02OCw4ICs2OSwxMSBAQAogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIKICAgICAgIFN1cHBvcnQgZm9yIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50IHdhcyBhZGRlZC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICpzb3VyY2VfYWRkcmVzcyogcGFyYW1ldGVyIHdhcyBhZGRlZC4KIAotLi4gY2xhc3M6OiBGVFBfVExTKGhvc3Q9JycsIHVzZXI9JycsIHBhc3N3ZD0nJywgYWNjdD0nJywgW2tleWZpbGVbLCBjZXJ0ZmlsZVssIGNvbnRleHRbLCB0aW1lb3V0XV1dXSkKKworLi4gY2xhc3M6OiBGVFBfVExTKGhvc3Q9JycsIHVzZXI9JycsIHBhc3N3ZD0nJywgYWNjdD0nJywga2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lLCBjb250ZXh0PU5vbmUsIHRpbWVvdXQ9Tm9uZSwgc291cmNlX2FkZHJlc3M9Tm9uZSkKIAogICAgQSA6Y2xhc3M6YEZUUGAgc3ViY2xhc3Mgd2hpY2ggYWRkcyBUTFMgc3VwcG9ydCB0byBGVFAgYXMgZGVzY3JpYmVkIGluCiAgICA6cmZjOmA0MjE3YC4KQEAgLTgwLDEwICs4NCwxNSBAQAogICAgcHJpdmF0ZSBrZXkgYW5kIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgbmFtZSBmb3IgdGhlIFNTTCBjb25uZWN0aW9uLgogICAgKmNvbnRleHQqIHBhcmFtZXRlciBpcyBhIDpjbGFzczpgc3NsLlNTTENvbnRleHRgIG9iamVjdCB3aGljaCBhbGxvd3MKICAgIGJ1bmRsaW5nIFNTTCBjb25maWd1cmF0aW9uIG9wdGlvbnMsIGNlcnRpZmljYXRlcyBhbmQgcHJpdmF0ZSBrZXlzIGludG8gYQotICAgc2luZ2xlIChwb3RlbnRpYWxseSBsb25nLWxpdmVkKSBzdHJ1Y3R1cmUuCisgICBzaW5nbGUgKHBvdGVudGlhbGx5IGxvbmctbGl2ZWQpIHN0cnVjdHVyZS4gKnNvdXJjZV9hZGRyZXNzKiBpcyBhIDItdHVwbGUKKyAgIGBgKGhvc3QsIHBvcnQpYGAgZm9yIHRoZSBzb2NrZXQgdG8gYmluZCB0byBhcyBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlCisgICBjb25uZWN0aW5nLgogCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICpzb3VyY2VfYWRkcmVzcyogcGFyYW1ldGVyIHdhcyBhZGRlZC4KKwogICAgSGVyZSdzIGEgc2FtcGxlIHNlc3Npb24gdXNpbmcgdGhlIDpjbGFzczpgRlRQX1RMU2AgY2xhc3M6CiAKICAgID4+PiBmcm9tIGZ0cGxpYiBpbXBvcnQgRlRQX1RMUwpAQCAtMTM1LDggKzE0NCw3IEBACiAgICBUaGUgc2V0IG9mIGFsbCBleGNlcHRpb25zIChhcyBhIHR1cGxlKSB0aGF0IG1ldGhvZHMgb2YgOmNsYXNzOmBGVFBgCiAgICBpbnN0YW5jZXMgbWF5IHJhaXNlIGFzIGEgcmVzdWx0IG9mIHByb2JsZW1zIHdpdGggdGhlIEZUUCBjb25uZWN0aW9uIChhcwogICAgb3Bwb3NlZCB0byBwcm9ncmFtbWluZyBlcnJvcnMgbWFkZSBieSB0aGUgY2FsbGVyKS4gIFRoaXMgc2V0IGluY2x1ZGVzIHRoZQotICAgZm91ciBleGNlcHRpb25zIGxpc3RlZCBhYm92ZSBhcyB3ZWxsIGFzIDpleGM6YHNvY2tldC5lcnJvcmAgYW5kCi0gICA6ZXhjOmBJT0Vycm9yYC4KKyAgIGZvdXIgZXhjZXB0aW9ucyBsaXN0ZWQgYWJvdmUgYXMgd2VsbCBhcyA6ZXhjOmBPU0Vycm9yYC4KIAogCiAuLiBzZWVhbHNvOjoKQEAgLTE3NCw3ICsxODIsNyBAQAogICAgZGVidWdnaW5nIG91dHB1dCwgbG9nZ2luZyBlYWNoIGxpbmUgc2VudCBhbmQgcmVjZWl2ZWQgb24gdGhlIGNvbnRyb2wgY29ubmVjdGlvbi4KIAogCi0uLiBtZXRob2Q6OiBGVFAuY29ubmVjdChob3N0PScnLCBwb3J0PTBbLCB0aW1lb3V0XSkKKy4uIG1ldGhvZDo6IEZUUC5jb25uZWN0KGhvc3Q9JycsIHBvcnQ9MCwgdGltZW91dD1Ob25lLCBzb3VyY2VfYWRkcmVzcz1Ob25lKQogCiAgICBDb25uZWN0IHRvIHRoZSBnaXZlbiBob3N0IGFuZCBwb3J0LiAgVGhlIGRlZmF1bHQgcG9ydCBudW1iZXIgaXMgYGAyMWBgLCBhcwogICAgc3BlY2lmaWVkIGJ5IHRoZSBGVFAgcHJvdG9jb2wgc3BlY2lmaWNhdGlvbi4gIEl0IGlzIHJhcmVseSBuZWVkZWQgdG8gc3BlY2lmeSBhCkBAIC0xODIsMTAgKzE5MCwxNCBAQAogICAgaW5zdGFuY2U7IGl0IHNob3VsZCBub3QgYmUgY2FsbGVkIGF0IGFsbCBpZiBhIGhvc3Qgd2FzIGdpdmVuIHdoZW4gdGhlIGluc3RhbmNlCiAgICB3YXMgY3JlYXRlZC4gIEFsbCBvdGhlciBtZXRob2RzIGNhbiBvbmx5IGJlIHVzZWQgYWZ0ZXIgYSBjb25uZWN0aW9uIGhhcyBiZWVuCiAgICBtYWRlLgotCiAgICBUaGUgb3B0aW9uYWwgKnRpbWVvdXQqIHBhcmFtZXRlciBzcGVjaWZpZXMgYSB0aW1lb3V0IGluIHNlY29uZHMgZm9yIHRoZQogICAgY29ubmVjdGlvbiBhdHRlbXB0LiBJZiBubyAqdGltZW91dCogaXMgcGFzc2VkLCB0aGUgZ2xvYmFsIGRlZmF1bHQgdGltZW91dAogICAgc2V0dGluZyB3aWxsIGJlIHVzZWQuCisgICAqc291cmNlX2FkZHJlc3MqIGlzIGEgMi10dXBsZSBgYChob3N0LCBwb3J0KWBgIGZvciB0aGUgc29ja2V0IHRvIGJpbmQgdG8gYXMKKyAgIGl0cyBzb3VyY2UgYWRkcmVzcyBiZWZvcmUgY29ubmVjdGluZy4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICpzb3VyY2VfYWRkcmVzcyogcGFyYW1ldGVyIHdhcyBhZGRlZC4KIAogCiAuLiBtZXRob2Q6OiBGVFAuZ2V0d2VsY29tZSgpCkBAIC0yNDEsMTMgKzI1MywxMiBAQAogCiAgICBSZXRyaWV2ZSBhIGZpbGUgb3IgZGlyZWN0b3J5IGxpc3RpbmcgaW4gQVNDSUkgdHJhbnNmZXIgbW9kZS4gICpjbWQqIHNob3VsZCBiZQogICAgYW4gYXBwcm9wcmlhdGUgYGBSRVRSYGAgY29tbWFuZCAoc2VlIDptZXRoOmByZXRyYmluYXJ5YCkgb3IgYSBjb21tYW5kIHN1Y2ggYXMKLSAgIGBgTElTVGBgLCBgYE5MU1RgYCBvciBgYE1MU0RgYCAodXN1YWxseSBqdXN0IHRoZSBzdHJpbmcgYGAnTElTVCdgYCkuCisgICBgYExJU1RgYCBvciBgYE5MU1RgYCAodXN1YWxseSBqdXN0IHRoZSBzdHJpbmcgYGAnTElTVCdgYCkuCiAgICBgYExJU1RgYCByZXRyaWV2ZXMgYSBsaXN0IG9mIGZpbGVzIGFuZCBpbmZvcm1hdGlvbiBhYm91dCB0aG9zZSBmaWxlcy4KLSAgIGBgTkxTVGBgIHJldHJpZXZlcyBhIGxpc3Qgb2YgZmlsZSBuYW1lcy4gIE9uIHNvbWUgc2VydmVycywgYGBNTFNEYGAgcmV0cmlldmVzCi0gICBhIG1hY2hpbmUgcmVhZGFibGUgbGlzdCBvZiBmaWxlcyBhbmQgaW5mb3JtYXRpb24gYWJvdXQgdGhvc2UgZmlsZXMuICBUaGUKLSAgICpjYWxsYmFjayogZnVuY3Rpb24gaXMgY2FsbGVkIGZvciBlYWNoIGxpbmUgd2l0aCBhIHN0cmluZyBhcmd1bWVudCBjb250YWluaW5nCi0gICB0aGUgbGluZSB3aXRoIHRoZSB0cmFpbGluZyBDUkxGIHN0cmlwcGVkLiAgVGhlIGRlZmF1bHQgKmNhbGxiYWNrKiBwcmludHMgdGhlCi0gICBsaW5lIHRvIGBgc3lzLnN0ZG91dGBgLgorICAgYGBOTFNUYGAgcmV0cmlldmVzIGEgbGlzdCBvZiBmaWxlIG5hbWVzLgorICAgVGhlICpjYWxsYmFjayogZnVuY3Rpb24gaXMgY2FsbGVkIGZvciBlYWNoIGxpbmUgd2l0aCBhIHN0cmluZyBhcmd1bWVudAorICAgY29udGFpbmluZyB0aGUgbGluZSB3aXRoIHRoZSB0cmFpbGluZyBDUkxGIHN0cmlwcGVkLiAgVGhlIGRlZmF1bHQgKmNhbGxiYWNrKgorICAgcHJpbnRzIHRoZSBsaW5lIHRvIGBgc3lzLnN0ZG91dGBgLgogCiAKIC4uIG1ldGhvZDo6IEZUUC5zZXRfcGFzdihib29sZWFuKQpAQCAtMzA3LDYgKzMxOCwyMCBAQAogICAgaW4gOm1ldGg6YHRyYW5zZmVyY21kYC4KIAogCisuLiBtZXRob2Q6OiBGVFAubWxzZChwYXRoPSIiLCBmYWN0cz1bXSkKKworICAgTGlzdCBhIGRpcmVjdG9yeSBpbiBhIHN0YW5kYXJkaXplZCBmb3JtYXQgYnkgdXNpbmcgTUxTRCBjb21tYW5kCisgICAoOnJmYzpgMzY1OWApLiAgSWYgKnBhdGgqIGlzIG9taXR0ZWQgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGlzIGFzc3VtZWQuCisgICAqZmFjdHMqIGlzIGEgbGlzdCBvZiBzdHJpbmdzIHJlcHJlc2VudGluZyB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiBkZXNpcmVkCisgICAoZS5nLiBgYFsidHlwZSIsICJzaXplIiwgInBlcm0iXWBgKS4gIFJldHVybiBhIGdlbmVyYXRvciBvYmplY3QgeWllbGRpbmcgYQorICAgdHVwbGUgb2YgdHdvIGVsZW1lbnRzIGZvciBldmVyeSBmaWxlIGZvdW5kIGluIHBhdGguICBGaXJzdCBlbGVtZW50IGlzIHRoZQorICAgZmlsZSBuYW1lLCB0aGUgc2Vjb25kIG9uZSBpcyBhIGRpY3Rpb25hcnkgY29udGFpbmluZyBmYWN0cyBhYm91dCB0aGUgZmlsZQorICAgbmFtZS4gIENvbnRlbnQgb2YgdGhpcyBkaWN0aW9uYXJ5IG1pZ2h0IGJlIGxpbWl0ZWQgYnkgdGhlICpmYWN0cyogYXJndW1lbnQKKyAgIGJ1dCBzZXJ2ZXIgaXMgbm90IGd1YXJhbnRlZWQgdG8gcmV0dXJuIGFsbCByZXF1ZXN0ZWQgZmFjdHMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIG1ldGhvZDo6IEZUUC5ubHN0KGFyZ3VtZW50WywgLi4uXSkKIAogICAgUmV0dXJuIGEgbGlzdCBvZiBmaWxlIG5hbWVzIGFzIHJldHVybmVkIGJ5IHRoZSBgYE5MU1RgYCBjb21tYW5kLiAgVGhlCkBAIC0zMTQsNiArMzM5LDggQEAKICAgIGRpcmVjdG9yeSkuICBNdWx0aXBsZSBhcmd1bWVudHMgY2FuIGJlIHVzZWQgdG8gcGFzcyBub24tc3RhbmRhcmQgb3B0aW9ucyB0bwogICAgdGhlIGBgTkxTVGBgIGNvbW1hbmQuCiAKKyAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjMgdXNlIDptZXRoOmBtbHNkYCBpbnN0ZWFkLgorCiAKIC4uIG1ldGhvZDo6IEZUUC5kaXIoYXJndW1lbnRbLCAuLi5dKQogCkBAIC0zMjQsNiArMzUxLDggQEAKICAgIGFzIGEgKmNhbGxiYWNrKiBmdW5jdGlvbiBhcyBmb3IgOm1ldGg6YHJldHJsaW5lc2A7IHRoZSBkZWZhdWx0IHByaW50cyB0bwogICAgYGBzeXMuc3Rkb3V0YGAuICBUaGlzIG1ldGhvZCByZXR1cm5zIGBgTm9uZWBgLgogCisgICAuLiBkZXByZWNhdGVkOjogMy4zIHVzZSA6bWV0aDpgbWxzZGAgaW5zdGVhZC4KKwogCiAuLiBtZXRob2Q6OiBGVFAucmVuYW1lKGZyb21uYW1lLCB0b25hbWUpCiAKQEAgLTM5Niw2ICs0MjUsMTQgQEAKIAogICAgU2V0IHVwIHNlY3VyZSBjb250cm9sIGNvbm5lY3Rpb24gYnkgdXNpbmcgVExTIG9yIFNTTCwgZGVwZW5kaW5nIG9uIHdoYXQgc3BlY2lmaWVkIGluIDptZXRoOmBzc2xfdmVyc2lvbmAgYXR0cmlidXRlLgogCisuLiBtZXRob2Q6OiBGVFBfVExTLmNjYygpCisKKyAgIFJldmVydCBjb250cm9sIGNoYW5uZWwgYmFjayB0byBwbGFpbnRleHQuICBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gdGFrZQorICAgYWR2YW50YWdlIG9mIGZpcmV3YWxscyB0aGF0IGtub3cgaG93IHRvIGhhbmRsZSBOQVQgd2l0aCBub24tc2VjdXJlIEZUUAorICAgd2l0aG91dCBvcGVuaW5nIGZpeGVkIHBvcnRzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogLi4gbWV0aG9kOjogRlRQX1RMUy5wcm90X3AoKQogCiAgICBTZXQgdXAgc2VjdXJlIGRhdGEgY29ubmVjdGlvbi4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2Z1bmN0aW9ucy5yc3QgYi9Eb2MvbGlicmFyeS9mdW5jdGlvbnMucnN0CmluZGV4IGY4MzVkY2YuLmU0YjE0YjggMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2Z1bmN0aW9ucy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZnVuY3Rpb25zLnJzdApAQCAtMTUyLDEwICsxNTIsNiBAQAogICAgMSwxMTQsMTExICgweDEwRkZGRiBpbiBiYXNlIDE2KS4gIDpleGM6YFZhbHVlRXJyb3JgIHdpbGwgYmUgcmFpc2VkIGlmICppKiBpcwogICAgb3V0c2lkZSB0aGF0IHJhbmdlLgogCi0gICBOb3RlIHRoYXQgb24gbmFycm93IFVuaWNvZGUgYnVpbGRzLCB0aGUgcmVzdWx0IGlzIGEgc3RyaW5nIG9mCi0gICBsZW5ndGggdHdvIGZvciAqaSogZ3JlYXRlciB0aGFuIDY1LDUzNSAoMHhGRkZGIGluIGhleGFkZWNpbWFsKS4KLQotCiAKIC4uIGZ1bmN0aW9uOjogY2xhc3NtZXRob2QoZnVuY3Rpb24pCiAKQEAgLTc4MCwxMCArNzc2LDEwIEBACiAgICA6bWV0aDpgX19pbmRleF9fYCBtZXRob2QgdGhhdCByZXR1cm5zIGFuIGludGVnZXIuCiAKIAotLi4gZnVuY3Rpb246OiBvcGVuKGZpbGUsIG1vZGU9J3InLCBidWZmZXJpbmc9LTEsIGVuY29kaW5nPU5vbmUsIGVycm9ycz1Ob25lLCBuZXdsaW5lPU5vbmUsIGNsb3NlZmQ9VHJ1ZSkKKy4uIGZ1bmN0aW9uOjogb3BlbihmaWxlLCBtb2RlPSdyJywgYnVmZmVyaW5nPS0xLCBlbmNvZGluZz1Ob25lLCBlcnJvcnM9Tm9uZSwgbmV3bGluZT1Ob25lLCBjbG9zZWZkPVRydWUsIG9wZW5lcj1Ob25lKQogCiAgICBPcGVuICpmaWxlKiBhbmQgcmV0dXJuIGEgY29ycmVzcG9uZGluZyBzdHJlYW0uICBJZiB0aGUgZmlsZSBjYW5ub3QgYmUgb3BlbmVkLAotICAgYW4gOmV4YzpgSU9FcnJvcmAgaXMgcmFpc2VkLgorICAgYW4gOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkLgogCiAgICAqZmlsZSogaXMgZWl0aGVyIGEgc3RyaW5nIG9yIGJ5dGVzIG9iamVjdCBnaXZpbmcgdGhlIHBhdGhuYW1lIChhYnNvbHV0ZSBvcgogICAgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkpIG9mIHRoZSBmaWxlIHRvIGJlIG9wZW5lZCBvcgpAQCAtODg3LDYgKzg4MywxNSBAQAogICAgY2xvc2VkLiAgSWYgYSBmaWxlbmFtZSBpcyBnaXZlbiAqY2xvc2VmZCogaGFzIG5vIGVmZmVjdCBhbmQgbXVzdCBiZSBgYFRydWVgYAogICAgKHRoZSBkZWZhdWx0KS4KIAorICAgQSBjdXN0b20gb3BlbmVyIGNhbiBiZSB1c2VkIGJ5IHBhc3NpbmcgYSBjYWxsYWJsZSBhcyAqb3BlbmVyKi4gVGhlIHVuZGVybHlpbmcKKyAgIGZpbGUgZGVzY3JpcHRvciBmb3IgdGhlIGZpbGUgb2JqZWN0IGlzIHRoZW4gb2J0YWluZWQgYnkgY2FsbGluZyAqb3BlbmVyKiB3aXRoCisgICAoKmZpbGUqLCAqZmxhZ3MqKS4gKm9wZW5lciogbXVzdCByZXR1cm4gYW4gb3BlbiBmaWxlIGRlc2NyaXB0b3IgKHBhc3NpbmcKKyAgIDptb2Q6YG9zLm9wZW5gIGFzICpvcGVuZXIqIHJlc3VsdHMgaW4gZnVuY3Rpb25hbGl0eSBzaW1pbGFyIHRvIHBhc3NpbmcKKyAgIGBgTm9uZWBgKS4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSAqb3BlbmVyKiBwYXJhbWV0ZXIgd2FzIGFkZGVkLgorCiAgICBUaGUgdHlwZSBvZiBmaWxlIG9iamVjdCByZXR1cm5lZCBieSB0aGUgOmZ1bmM6YG9wZW5gIGZ1bmN0aW9uIGRlcGVuZHMgb24gdGhlCiAgICBtb2RlLiAgV2hlbiA6ZnVuYzpgb3BlbmAgaXMgdXNlZCB0byBvcGVuIGEgZmlsZSBpbiBhIHRleHQgbW9kZSAoYGAndydgYCwKICAgIGBgJ3InYGAsIGBgJ3d0J2BgLCBgYCdydCdgYCwgZXRjLiksIGl0IHJldHVybnMgYSBzdWJjbGFzcyBvZgpAQCAtOTEyLDYgKzkxNyw5IEBACiAgICAod2hlcmUgOmZ1bmM6YG9wZW5gIGlzIGRlY2xhcmVkKSwgOm1vZDpgb3NgLCA6bW9kOmBvcy5wYXRoYCwgOm1vZDpgdGVtcGZpbGVgLAogICAgYW5kIDptb2Q6YHNodXRpbGAuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICA6ZXhjOmBJT0Vycm9yYCB1c2VkIHRvIGJlIHJhaXNlZCwgaXQgaXMgbm93IGFuIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgorCiAKIC4uIFhYWCB3b3JrcyBmb3IgYnl0ZXMgdG9vLCBidXQgc2hvdWxkIGl0PwogLi4gZnVuY3Rpb246OiBvcmQoYykKQEAgLTkyMSw5ICs5MjksNiBAQAogICAgcG9pbnQgb2YgdGhhdCBjaGFyYWN0ZXIuICBGb3IgZXhhbXBsZSwgYGBvcmQoJ2EnKWBgIHJldHVybnMgdGhlIGludGVnZXIgYGA5N2BgCiAgICBhbmQgYGBvcmQoJ1x1MjAyMCcpYGAgcmV0dXJucyBgYDgyMjRgYC4gIFRoaXMgaXMgdGhlIGludmVyc2Ugb2YgOmZ1bmM6YGNocmAuCiAKLSAgIE9uIHdpZGUgVW5pY29kZSBidWlsZHMsIGlmIHRoZSBhcmd1bWVudCBsZW5ndGggaXMgbm90IG9uZSwgYQotICAgOmV4YzpgVHlwZUVycm9yYCB3aWxsIGJlIHJhaXNlZC4gIE9uIG5hcnJvdyBVbmljb2RlIGJ1aWxkcywgc3RyaW5ncwotICAgb2YgbGVuZ3RoIHR3byBhcmUgYWNjZXB0ZWQgd2hlbiB0aGV5IGZvcm0gYSBVVEYtMTYgc3Vycm9nYXRlIHBhaXIuCiAKIC4uIGZ1bmN0aW9uOjogcG93KHgsIHlbLCB6XSkKIApAQCAtOTQxLDcgKzk0Niw3IEBACiAgICBtdXN0IGJlIG9mIGludGVnZXIgdHlwZXMsIGFuZCAqeSogbXVzdCBiZSBub24tbmVnYXRpdmUuCiAKIAotLi4gZnVuY3Rpb246OiBwcmludChbb2JqZWN0LCAuLi5dLCAqLCBzZXA9JyAnLCBlbmQ9J1xcbicsIGZpbGU9c3lzLnN0ZG91dCkKKy4uIGZ1bmN0aW9uOjogcHJpbnQoW29iamVjdCwgLi4uXSwgKiwgc2VwPScgJywgZW5kPSdcXG4nLCBmaWxlPXN5cy5zdGRvdXQsIGZsdXNoPUZhbHNlKQogCiAgICBQcmludCAqb2JqZWN0KlwocykgdG8gdGhlIHN0cmVhbSAqZmlsZSosIHNlcGFyYXRlZCBieSAqc2VwKiBhbmQgZm9sbG93ZWQgYnkKICAgICplbmQqLiAgKnNlcCosICplbmQqIGFuZCAqZmlsZSosIGlmIHByZXNlbnQsIG11c3QgYmUgZ2l2ZW4gYXMga2V5d29yZApAQCAtOTU0LDkgKzk1OSwxMiBAQAogICAgKmVuZCouCiAKICAgIFRoZSAqZmlsZSogYXJndW1lbnQgbXVzdCBiZSBhbiBvYmplY3Qgd2l0aCBhIGBgd3JpdGUoc3RyaW5nKWBgIG1ldGhvZDsgaWYgaXQKLSAgIGlzIG5vdCBwcmVzZW50IG9yIGBgTm9uZWBgLCA6ZGF0YTpgc3lzLnN0ZG91dGAgd2lsbCBiZSB1c2VkLiBPdXRwdXQgYnVmZmVyaW5nCi0gICBpcyBkZXRlcm1pbmVkIGJ5ICpmaWxlKi4gVXNlIGBgZmlsZS5mbHVzaCgpYGAgdG8gZW5zdXJlLCBmb3IgaW5zdGFuY2UsCi0gICBpbW1lZGlhdGUgYXBwZWFyYW5jZSBvbiBhIHNjcmVlbi4KKyAgIGlzIG5vdCBwcmVzZW50IG9yIGBgTm9uZWBgLCA6ZGF0YTpgc3lzLnN0ZG91dGAgd2lsbCBiZSB1c2VkLiAgV2hldGhlciBvdXRwdXQKKyAgIGlzIGJ1ZmZlcmVkIGlzIHVzdWFsbHkgZGV0ZXJtaW5lZCBieSAqZmlsZSosIGJ1dCBpZiB0aGUgICpmbHVzaCoga2V5d29yZAorICAgYXJndW1lbnQgaXMgdHJ1ZSwgdGhlIHN0cmVhbSBpcyBmb3JjaWJseSBmbHVzaGVkLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgdGhlICpmbHVzaCoga2V5d29yZCBhcmd1bWVudC4KIAogCiAuLiBmdW5jdGlvbjo6IHByb3BlcnR5KGZnZXQ9Tm9uZSwgZnNldD1Ob25lLCBmZGVsPU5vbmUsIGRvYz1Ob25lKQpAQCAtMTAzOSw3ICsxMDQ3LDkgQEAKICAgIC4uLl1gYC4gIElmICpzdGVwKiBpcyBwb3NpdGl2ZSwgdGhlIGxhc3QgZWxlbWVudCBpcyB0aGUgbGFyZ2VzdCBgYHN0YXJ0ICsgaSAqCiAgICBzdGVwYGAgbGVzcyB0aGFuICpzdG9wKjsgaWYgKnN0ZXAqIGlzIG5lZ2F0aXZlLCB0aGUgbGFzdCBlbGVtZW50IGlzIHRoZQogICAgc21hbGxlc3QgYGBzdGFydCArIGkgKiBzdGVwYGAgZ3JlYXRlciB0aGFuICpzdG9wKi4gICpzdGVwKiBtdXN0IG5vdCBiZSB6ZXJvCi0gICAob3IgZWxzZSA6ZXhjOmBWYWx1ZUVycm9yYCBpcyByYWlzZWQpLiAgRXhhbXBsZToKKyAgIChvciBlbHNlIDpleGM6YFZhbHVlRXJyb3JgIGlzIHJhaXNlZCkuICBSYW5nZSBvYmplY3RzIGhhdmUgcmVhZC1vbmx5IGRhdGEKKyAgIGF0dHJpYnV0ZXMgOmF0dHI6YHN0YXJ0YCwgOmF0dHI6YHN0b3BgIGFuZCA6YXR0cjpgc3RlcGAgd2hpY2ggcmV0dXJuIHRoZQorICAgYXJndW1lbnQgdmFsdWVzIChvciB0aGVpciBkZWZhdWx0KS4gIEV4YW1wbGU6CiAKICAgICAgID4+PiBsaXN0KHJhbmdlKDEwKSkKICAgICAgIFswLCAxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5XQpAQCAtMTA3Niw2ICsxMDg2LDEzIEBACiAgICAgICA+Pj4gclstMV0KICAgICAgIDE4CiAKKyAgIFRlc3RpbmcgcmFuZ2Ugb2JqZWN0cyBmb3IgZXF1YWxpdHkgd2l0aCBgYD09YGAgYW5kIGBgIT1gYCBjb21wYXJlcworICAgdGhlbSBhcyBzZXF1ZW5jZXMuICBUaGF0IGlzLCB0d28gcmFuZ2Ugb2JqZWN0cyBhcmUgY29uc2lkZXJlZCBlcXVhbCBpZgorICAgdGhleSByZXByZXNlbnQgdGhlIHNhbWUgc2VxdWVuY2Ugb2YgdmFsdWVzLiAgKE5vdGUgdGhhdCB0d28gcmFuZ2UKKyAgIG9iamVjdHMgdGhhdCBjb21wYXJlIGVxdWFsIG1pZ2h0IGhhdmUgZGlmZmVyZW50IDphdHRyOmBzdGFydGAsCisgICA6YXR0cjpgc3RvcGAgYW5kIDphdHRyOmBzdGVwYCBhdHRyaWJ1dGVzLCBmb3IgZXhhbXBsZSBgYHJhbmdlKDApID09CisgICByYW5nZSgyLCAxLCAzKWBgIG9yIGBgcmFuZ2UoMCwgMywgMikgPT0gcmFuZ2UoMCwgNCwgMilgYC4pCisKICAgIFJhbmdlcyBjb250YWluaW5nIGFic29sdXRlIHZhbHVlcyBsYXJnZXIgdGhhbiA6ZGF0YTpgc3lzLm1heHNpemVgIGFyZSBwZXJtaXR0ZWQKICAgIGJ1dCBzb21lIGZlYXR1cmVzIChzdWNoIGFzIDpmdW5jOmBsZW5gKSB3aWxsIHJhaXNlIDpleGM6YE92ZXJmbG93RXJyb3JgLgogCkBAIC0xMDg1LDYgKzExMDIsMTQgQEAKICAgICAgIFRlc3QgaW50ZWdlcnMgZm9yIG1lbWJlcnNoaXAgaW4gY29uc3RhbnQgdGltZSBpbnN0ZWFkIG9mIGl0ZXJhdGluZwogICAgICAgdGhyb3VnaCBhbGwgaXRlbXMuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBEZWZpbmUgJz09JyBhbmQgJyE9JyB0byBjb21wYXJlIHJhbmdlIG9iamVjdHMgYmFzZWQgb24gdGhlCisgICAgICBzZXF1ZW5jZSBvZiB2YWx1ZXMgdGhleSBkZWZpbmUgKGluc3RlYWQgb2YgY29tcGFyaW5nIGJhc2VkIG9uCisgICAgICBvYmplY3QgaWRlbnRpdHkpLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgICAgIFRoZSA6YXR0cjpgc3RhcnRgLCA6YXR0cjpgc3RvcGAgYW5kIDphdHRyOmBzdGVwYCBhdHRyaWJ1dGVzLgorCiAKIC4uIGZ1bmN0aW9uOjogcmVwcihvYmplY3QpCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2Z1bmN0b29scy5yc3QgYi9Eb2MvbGlicmFyeS9mdW5jdG9vbHMucnN0CmluZGV4IDA0NzQzZDMuLjA1Zjk3YjEgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2Z1bmN0b29scy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZnVuY3Rvb2xzLnJzdApAQCAtNDAsNyArNDAsNyBAQAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKIAotLi4gZGVjb3JhdG9yOjogbHJ1X2NhY2hlKG1heHNpemU9MTAwKQorLi4gZGVjb3JhdG9yOjogbHJ1X2NhY2hlKG1heHNpemU9MTAwLCB0eXBlZD1GYWxzZSkKIAogICAgRGVjb3JhdG9yIHRvIHdyYXAgYSBmdW5jdGlvbiB3aXRoIGEgbWVtb2l6aW5nIGNhbGxhYmxlIHRoYXQgc2F2ZXMgdXAgdG8gdGhlCiAgICAqbWF4c2l6ZSogbW9zdCByZWNlbnQgY2FsbHMuICBJdCBjYW4gc2F2ZSB0aW1lIHdoZW4gYW4gZXhwZW5zaXZlIG9yIEkvTyBib3VuZApAQCAtNTIsNiArNTIsMTAgQEAKICAgIElmICptYXhzaXplKiBpcyBzZXQgdG8gTm9uZSwgdGhlIExSVSBmZWF0dXJlIGlzIGRpc2FibGVkIGFuZCB0aGUgY2FjaGUKICAgIGNhbiBncm93IHdpdGhvdXQgYm91bmQuCiAKKyAgIElmICp0eXBlZCogaXMgc2V0IHRvIFRydWUsIGZ1bmN0aW9uIGFyZ3VtZW50cyBvZiBkaWZmZXJlbnQgdHlwZXMgd2lsbCBiZQorICAgY2FjaGVkIHNlcGFyYXRlbHkuICBGb3IgZXhhbXBsZSwgYGBmKDMpYGAgYW5kIGBgZigzLjApYGAgd2lsbCBiZSB0cmVhdGVkCisgICBhcyBkaXN0aW5jdCBjYWxscyB3aXRoIGRpc3RpbmN0IHJlc3VsdHMuCisKICAgIFRvIGhlbHAgbWVhc3VyZSB0aGUgZWZmZWN0aXZlbmVzcyBvZiB0aGUgY2FjaGUgYW5kIHR1bmUgdGhlICptYXhzaXplKgogICAgcGFyYW1ldGVyLCB0aGUgd3JhcHBlZCBmdW5jdGlvbiBpcyBpbnN0cnVtZW50ZWQgd2l0aCBhIDpmdW5jOmBjYWNoZV9pbmZvYAogICAgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgOnRlcm06YG5hbWVkIHR1cGxlYCBzaG93aW5nICpoaXRzKiwgKm1pc3NlcyosCkBAIC02Nyw4ICs3MSw4IEBACiAKICAgIEFuIGBMUlUgKGxlYXN0IHJlY2VudGx5IHVzZWQpIGNhY2hlCiAgICA8aHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9DYWNoZV9hbGdvcml0aG1zI0xlYXN0X1JlY2VudGx5X1VzZWQ+YF8gd29ya3MKLSAgIGJlc3Qgd2hlbiBtb3JlIHJlY2VudCBjYWxscyBhcmUgdGhlIGJlc3QgcHJlZGljdG9ycyBvZiB1cGNvbWluZyBjYWxscyAoZm9yCi0gICBleGFtcGxlLCB0aGUgbW9zdCBwb3B1bGFyIGFydGljbGVzIG9uIGEgbmV3cyBzZXJ2ZXIgdGVuZCB0byBjaGFuZ2UgZGFpbHkpLgorICAgYmVzdCB3aGVuIHRoZSBtb3N0IHJlY2VudCBjYWxscyBhcmUgdGhlIGJlc3QgcHJlZGljdG9ycyBvZiB1cGNvbWluZyBjYWxscyAoZm9yCisgICBleGFtcGxlLCB0aGUgbW9zdCBwb3B1bGFyIGFydGljbGVzIG9uIGEgbmV3cyBzZXJ2ZXIgdGVuZCB0byBjaGFuZ2UgZWFjaCBkYXkpLgogICAgVGhlIGNhY2hlJ3Mgc2l6ZSBsaW1pdCBhc3N1cmVzIHRoYXQgdGhlIGNhY2hlIGRvZXMgbm90IGdyb3cgd2l0aG91dCBib3VuZCBvbgogICAgbG9uZy1ydW5uaW5nIHByb2Nlc3NlcyBzdWNoIGFzIHdlYiBzZXJ2ZXJzLgogCkBAIC0xMTEsNiArMTE1LDkgQEAKIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBZGRlZCB0aGUgKnR5cGVkKiBvcHRpb24uCisKIC4uIGRlY29yYXRvcjo6IHRvdGFsX29yZGVyaW5nCiAKICAgIEdpdmVuIGEgY2xhc3MgZGVmaW5pbmcgb25lIG9yIG1vcmUgcmljaCBjb21wYXJpc29uIG9yZGVyaW5nIG1ldGhvZHMsIHRoaXMKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2dldHRleHQucnN0IGIvRG9jL2xpYnJhcnkvZ2V0dGV4dC5yc3QKaW5kZXggMGZhMDIyYy4uODI1MzExYiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZ2V0dGV4dC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZ2V0dGV4dC5yc3QKQEAgLTE4NSwxMCArMTg1LDEzIEBACiAgICB0cmFuc2xhdGlvbiBvYmplY3QgZnJvbSB0aGUgY2FjaGU7IHRoZSBhY3R1YWwgaW5zdGFuY2UgZGF0YSBpcyBzdGlsbCBzaGFyZWQgd2l0aAogICAgdGhlIGNhY2hlLgogCi0gICBJZiBubyA6ZmlsZTpgLm1vYCBmaWxlIGlzIGZvdW5kLCB0aGlzIGZ1bmN0aW9uIHJhaXNlcyA6ZXhjOmBJT0Vycm9yYCBpZgorICAgSWYgbm8gOmZpbGU6YC5tb2AgZmlsZSBpcyBmb3VuZCwgdGhpcyBmdW5jdGlvbiByYWlzZXMgOmV4YzpgT1NFcnJvcmAgaWYKICAgICpmYWxsYmFjayogaXMgZmFsc2UgKHdoaWNoIGlzIHRoZSBkZWZhdWx0KSwgYW5kIHJldHVybnMgYQogICAgOmNsYXNzOmBOdWxsVHJhbnNsYXRpb25zYCBpbnN0YW5jZSBpZiAqZmFsbGJhY2sqIGlzIHRydWUuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICA6ZXhjOmBJT0Vycm9yYCB1c2VkIHRvIGJlIHJhaXNlZCBpbnN0ZWFkIG9mIDpleGM6YE9TRXJyb3JgLgorCiAKIC4uIGZ1bmN0aW9uOjogaW5zdGFsbChkb21haW4sIGxvY2FsZWRpcj1Ob25lLCBjb2Rlc2V0PU5vbmUsIG5hbWVzPU5vbmUpCiAKQEAgLTM0Miw3ICszNDUsNyBAQAogCiBJZiB0aGUgOmZpbGU6YC5tb2AgZmlsZSdzIG1hZ2ljIG51bWJlciBpcyBpbnZhbGlkLCBvciBpZiBvdGhlciBwcm9ibGVtcyBvY2N1cgogd2hpbGUgcmVhZGluZyB0aGUgZmlsZSwgaW5zdGFudGlhdGluZyBhIDpjbGFzczpgR05VVHJhbnNsYXRpb25zYCBjbGFzcyBjYW4gcmFpc2UKLTpleGM6YElPRXJyb3JgLgorOmV4YzpgT1NFcnJvcmAuCiAKIFRoZSBmb2xsb3dpbmcgbWV0aG9kcyBhcmUgb3ZlcnJpZGRlbiBmcm9tIHRoZSBiYXNlIGNsYXNzIGltcGxlbWVudGF0aW9uOgogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9nemlwLnJzdCBiL0RvYy9saWJyYXJ5L2d6aXAucnN0CmluZGV4IDk0MjJlYTkuLjllNTc5OTAgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2d6aXAucnN0CisrKyBiL0RvYy9saWJyYXJ5L2d6aXAucnN0CkBAIC03MSw3ICs3MSw3IEBACiAKICAgIDpjbGFzczpgR3ppcEZpbGVgIHN1cHBvcnRzIHRoZSA6Y2xhc3M6YGlvLkJ1ZmZlcmVkSU9CYXNlYCBpbnRlcmZhY2UsCiAgICBpbmNsdWRpbmcgaXRlcmF0aW9uIGFuZCB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudC4gIE9ubHkgdGhlCi0gICA6bWV0aDpgcmVhZDFgIGFuZCA6bWV0aDpgdHJ1bmNhdGVgIG1ldGhvZHMgYXJlbid0IGltcGxlbWVudGVkLgorICAgOm1ldGg6YHRydW5jYXRlYCBtZXRob2QgaXNuJ3QgaW1wbGVtZW50ZWQuCiAKICAgIDpjbGFzczpgR3ppcEZpbGVgIGFsc28gcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBtZXRob2Q6CiAKQEAgLTkzLDYgKzkzLDkgQEAKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCiAgICAgICBTdXBwb3J0IGZvciB1bnNlZWthYmxlIGZpbGVzIHdhcyBhZGRlZC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSA6bWV0aDpgaW8uQnVmZmVyZWRJT0Jhc2UucmVhZDFgIG1ldGhvZCBpcyBub3cgaW1wbGVtZW50ZWQuCisKIAogLi4gZnVuY3Rpb246OiBvcGVuKGZpbGVuYW1lLCBtb2RlPSdyYicsIGNvbXByZXNzbGV2ZWw9OSkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvaHR0cC5jbGllbnQucnN0IGIvRG9jL2xpYnJhcnkvaHR0cC5jbGllbnQucnN0CmluZGV4IDUyZmJlNTcuLmYwZGE4ZWUgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2h0dHAuY2xpZW50LnJzdAorKysgYi9Eb2MvbGlicmFyeS9odHRwLmNsaWVudC5yc3QKQEAgLTUwMiw2ICs1MDIsMTIgQEAKIAogICAgUmVhZHMgYW5kIHJldHVybnMgdGhlIHJlc3BvbnNlIGJvZHksIG9yIHVwIHRvIHRoZSBuZXh0ICphbXQqIGJ5dGVzLgogCisuLiBtZXRob2Q6OiBIVFRQUmVzcG9uc2UucmVhZGludG8oYikKKworICAgUmVhZHMgdXAgdG8gdGhlIG5leHQgbGVuKGIpIGJ5dGVzIG9mIHRoZSByZXNwb25zZSBib2R5IGludG8gdGhlIGJ1ZmZlciAqYiouCisgICBSZXR1cm5zIHRoZSBudW1iZXIgb2YgYnl0ZXMgcmVhZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCiAKIC4uIG1ldGhvZDo6IEhUVFBSZXNwb25zZS5nZXRoZWFkZXIobmFtZSwgZGVmYXVsdD1Ob25lKQogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9odHRwLmNvb2tpZWphci5yc3QgYi9Eb2MvbGlicmFyeS9odHRwLmNvb2tpZWphci5yc3QKaW5kZXggOTc3MTQ5Ni4uMWZlNzc1ZiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvaHR0cC5jb29raWVqYXIucnN0CisrKyBiL0RvYy9saWJyYXJ5L2h0dHAuY29va2llamFyLnJzdApAQCAtNDAsNyArNDAsMTEgQEAKIC4uIGV4Y2VwdGlvbjo6IExvYWRFcnJvcgogCiAgICBJbnN0YW5jZXMgb2YgOmNsYXNzOmBGaWxlQ29va2llSmFyYCByYWlzZSB0aGlzIGV4Y2VwdGlvbiBvbiBmYWlsdXJlIHRvIGxvYWQKLSAgIGNvb2tpZXMgZnJvbSBhIGZpbGUuICA6ZXhjOmBMb2FkRXJyb3JgIGlzIGEgc3ViY2xhc3Mgb2YgOmV4YzpgSU9FcnJvcmAuCisgICBjb29raWVzIGZyb20gYSBmaWxlLiAgOmV4YzpgTG9hZEVycm9yYCBpcyBhIHN1YmNsYXNzIG9mIDpleGM6YE9TRXJyb3JgLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgTG9hZEVycm9yIHdhcyBtYWRlIGEgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAgaW5zdGVhZCBvZgorICAgICAgOmV4YzpgSU9FcnJvcmAuCiAKIAogVGhlIGZvbGxvd2luZyBjbGFzc2VzIGFyZSBwcm92aWRlZDoKQEAgLTI1Nyw5ICsyNjEsMTIgQEAKICAgIEFyZ3VtZW50cyBhcmUgYXMgZm9yIDptZXRoOmBzYXZlYC4KIAogICAgVGhlIG5hbWVkIGZpbGUgbXVzdCBiZSBpbiB0aGUgZm9ybWF0IHVuZGVyc3Rvb2QgYnkgdGhlIGNsYXNzLCBvcgotICAgOmV4YzpgTG9hZEVycm9yYCB3aWxsIGJlIHJhaXNlZC4gIEFsc28sIDpleGM6YElPRXJyb3JgIG1heSBiZSByYWlzZWQsIGZvcgorICAgOmV4YzpgTG9hZEVycm9yYCB3aWxsIGJlIHJhaXNlZC4gIEFsc28sIDpleGM6YE9TRXJyb3JgIG1heSBiZSByYWlzZWQsIGZvcgogICAgZXhhbXBsZSBpZiB0aGUgZmlsZSBkb2VzIG5vdCBleGlzdC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIDpleGM6YElPRXJyb3JgIHVzZWQgdG8gYmUgcmFpc2VkLCBpdCBpcyBub3cgYW4gYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCisKIAogLi4gbWV0aG9kOjogRmlsZUNvb2tpZUphci5yZXZlcnQoZmlsZW5hbWU9Tm9uZSwgaWdub3JlX2Rpc2NhcmQ9RmFsc2UsIGlnbm9yZV9leHBpcmVzPUZhbHNlKQogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9odHRwLnNlcnZlci5yc3QgYi9Eb2MvbGlicmFyeS9odHRwLnNlcnZlci5yc3QKaW5kZXggZTNhM2ExMC4uZDlhYWE3MiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvaHR0cC5zZXJ2ZXIucnN0CisrKyBiL0RvYy9saWJyYXJ5L2h0dHAuc2VydmVyLnJzdApAQCAtMTc5LDE5ICsxNzksMjkgQEAKIAogICAgLi4gbWV0aG9kOjogc2VuZF9yZXNwb25zZShjb2RlLCBtZXNzYWdlPU5vbmUpCiAKLSAgICAgIFNlbmRzIGEgcmVzcG9uc2UgaGVhZGVyIGFuZCBsb2dzIHRoZSBhY2NlcHRlZCByZXF1ZXN0LiBUaGUgSFRUUCByZXNwb25zZQotICAgICAgbGluZSBpcyBzZW50LCBmb2xsb3dlZCBieSAqU2VydmVyKiBhbmQgKkRhdGUqIGhlYWRlcnMuIFRoZSB2YWx1ZXMgZm9yCi0gICAgICB0aGVzZSB0d28gaGVhZGVycyBhcmUgcGlja2VkIHVwIGZyb20gdGhlIDptZXRoOmB2ZXJzaW9uX3N0cmluZ2AgYW5kCi0gICAgICA6bWV0aDpgZGF0ZV90aW1lX3N0cmluZ2AgbWV0aG9kcywgcmVzcGVjdGl2ZWx5LgorICAgICAgQWRkcyBhIHJlc3BvbnNlIGhlYWRlciB0byB0aGUgaGVhZGVycyBidWZmZXIgYW5kIGxvZ3MgdGhlIGFjY2VwdGVkCisgICAgICByZXF1ZXN0LiBUaGUgSFRUUCByZXNwb25zZSBsaW5lIGlzIHdyaXR0ZW4gdG8gdGhlIGludGVybmFsIGJ1ZmZlciwKKyAgICAgIGZvbGxvd2VkIGJ5ICpTZXJ2ZXIqIGFuZCAqRGF0ZSogaGVhZGVycy4gVGhlIHZhbHVlcyBmb3IgdGhlc2UgdHdvIGhlYWRlcnMKKyAgICAgIGFyZSBwaWNrZWQgdXAgZnJvbSB0aGUgOm1ldGg6YHZlcnNpb25fc3RyaW5nYCBhbmQKKyAgICAgIDptZXRoOmBkYXRlX3RpbWVfc3RyaW5nYCBtZXRob2RzLCByZXNwZWN0aXZlbHkuIElmIHRoZSBzZXJ2ZXIgZG9lcyBub3QKKyAgICAgIGludGVuZCB0byBzZW5kIGFueSBvdGhlciBoZWFkZXJzIHVzaW5nIHRoZSA6bWV0aDpgc2VuZF9oZWFkZXJgIG1ldGhvZCwKKyAgICAgIHRoZW4gOm1ldGg6YHNlbmRfcmVzcG9uc2VgIHNob3VsZCBiZSBmb2xsb3dlZCBieSBhIDptZXRoOmBlbmRfaGVhZGVyc2AKKyAgICAgIGNhbGwuCisKKyAgICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAgICBIZWFkZXJzIGFyZSBzdG9yZWQgdG8gYW4gaW50ZXJuYWwgYnVmZmVyIGFuZCA6bWV0aDpgZW5kX2hlYWRlcnNgCisgICAgICAgICBuZWVkcyB0byBiZSBjYWxsZWQgZXhwbGljaXRseS4KKwogCiAgICAuLiBtZXRob2Q6OiBzZW5kX2hlYWRlcihrZXl3b3JkLCB2YWx1ZSkKIAotICAgICAgU3RvcmVzIHRoZSBIVFRQIGhlYWRlciB0byBhbiBpbnRlcm5hbCBidWZmZXIgd2hpY2ggd2lsbCBiZSB3cml0dGVuIHRvIHRoZQotICAgICAgb3V0cHV0IHN0cmVhbSB3aGVuIDptZXRoOmBlbmRfaGVhZGVyc2AgbWV0aG9kIGlzIGludm9rZWQuCi0gICAgICAqa2V5d29yZCogc2hvdWxkIHNwZWNpZnkgdGhlIGhlYWRlciBrZXl3b3JkLCB3aXRoICp2YWx1ZSoKLSAgICAgIHNwZWNpZnlpbmcgaXRzIHZhbHVlLgorICAgICAgQWRkcyB0aGUgSFRUUCBoZWFkZXIgdG8gYW4gaW50ZXJuYWwgYnVmZmVyIHdoaWNoIHdpbGwgYmUgd3JpdHRlbiB0byB0aGUKKyAgICAgIG91dHB1dCBzdHJlYW0gd2hlbiBlaXRoZXIgOm1ldGg6YGVuZF9oZWFkZXJzYCBvciA6bWV0aDpgZmx1c2hfaGVhZGVyc2AgaXMKKyAgICAgIGludm9rZWQuICprZXl3b3JkKiBzaG91bGQgc3BlY2lmeSB0aGUgaGVhZGVyIGtleXdvcmQsIHdpdGggKnZhbHVlKgorICAgICAgc3BlY2lmeWluZyBpdHMgdmFsdWUuIE5vdGUgdGhhdCwgYWZ0ZXIgdGhlIHNlbmRfaGVhZGVyIGNhbGxzIGFyZSBkb25lLAorICAgICAgOm1ldGg6YGVuZF9oZWFkZXJzYCBNVVNUIEJFIGNhbGxlZCBpbiBvcmRlciB0byBjb21wbGV0ZSB0aGUgb3BlcmF0aW9uLgogCi0gICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMiBTdG9yaW5nIHRoZSBoZWFkZXJzIGluIGFuIGludGVybmFsIGJ1ZmZlcgorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIgSGVhZGVycyBhcmUgc3RvcmVkIGluIGFuIGludGVybmFsIGJ1ZmZlci4KIAogCiAgICAuLiBtZXRob2Q6OiBzZW5kX3Jlc3BvbnNlX29ubHkoY29kZSwgbWVzc2FnZT1Ob25lKQpAQCAtMjA1LDEwICsyMTUsMTkgQEAKIAogICAgLi4gbWV0aG9kOjogZW5kX2hlYWRlcnMoKQogCi0gICAgICBXcml0ZSB0aGUgYnVmZmVyZWQgSFRUUCBoZWFkZXJzIHRvIHRoZSBvdXRwdXQgc3RyZWFtIGFuZCBzZW5kIGEgYmxhbmsKLSAgICAgIGxpbmUsIGluZGljYXRpbmcgdGhlIGVuZCBvZiB0aGUgSFRUUCBoZWFkZXJzIGluIHRoZSByZXNwb25zZS4KKyAgICAgIEFkZHMgYSBibGFuayBsaW5lCisgICAgICAoaW5kaWNhdGluZyB0aGUgZW5kIG9mIHRoZSBIVFRQIGhlYWRlcnMgaW4gdGhlIHJlc3BvbnNlKQorICAgICAgdG8gdGhlIGhlYWRlcnMgYnVmZmVyIGFuZCBjYWxscyA6bWV0aDpgZmx1c2hfaGVhZGVycygpYC4KIAotICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIgV3JpdGluZyB0aGUgYnVmZmVyZWQgaGVhZGVycyB0byB0aGUgb3V0cHV0IHN0cmVhbS4KKyAgICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCisgICAgICAgICBUaGUgYnVmZmVyZWQgaGVhZGVycyBhcmUgd3JpdHRlbiB0byB0aGUgb3V0cHV0IHN0cmVhbS4KKworICAgLi4gbWV0aG9kOjogZmx1c2hfaGVhZGVycygpCisKKyAgICAgIEZpbmFsbHkgc2VuZCB0aGUgaGVhZGVycyB0byB0aGUgb3V0cHV0IHN0cmVhbSBhbmQgZmx1c2ggdGhlIGludGVybmFsCisgICAgICBoZWFkZXJzIGJ1ZmZlci4KKworICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCiAKICAgIC4uIG1ldGhvZDo6IGxvZ19yZXF1ZXN0KGNvZGU9Jy0nLCBzaXplPSctJykKIApAQCAtMjk5LDcgKzMxOCw3IEBACiAgICAgICByZXNwb25zZSBpZiB0aGUgOmZ1bmM6YGxpc3RkaXJgIGZhaWxzLgogCiAgICAgICBJZiB0aGUgcmVxdWVzdCB3YXMgbWFwcGVkIHRvIGEgZmlsZSwgaXQgaXMgb3BlbmVkIGFuZCB0aGUgY29udGVudHMgYXJlCi0gICAgICByZXR1cm5lZC4gIEFueSA6ZXhjOmBJT0Vycm9yYCBleGNlcHRpb24gaW4gb3BlbmluZyB0aGUgcmVxdWVzdGVkIGZpbGUgaXMKKyAgICAgIHJldHVybmVkLiAgQW55IDpleGM6YE9TRXJyb3JgIGV4Y2VwdGlvbiBpbiBvcGVuaW5nIHRoZSByZXF1ZXN0ZWQgZmlsZSBpcwogICAgICAgbWFwcGVkIHRvIGEgYGA0MDRgYCwgYGAnRmlsZSBub3QgZm91bmQnYGAgZXJyb3IuIE90aGVyd2lzZSwgdGhlIGNvbnRlbnQKICAgICAgIHR5cGUgaXMgZ3Vlc3NlZCBieSBjYWxsaW5nIHRoZSA6bWV0aDpgZ3Vlc3NfdHlwZWAgbWV0aG9kLCB3aGljaCBpbiB0dXJuCiAgICAgICB1c2VzIHRoZSAqZXh0ZW5zaW9uc19tYXAqIHZhcmlhYmxlLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvaW1hcGxpYi5yc3QgYi9Eb2MvbGlicmFyeS9pbWFwbGliLnJzdAppbmRleCAzZjQ1Yzk1Li4wMzgzNTVjIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9pbWFwbGliLnJzdAorKysgYi9Eb2MvbGlicmFyeS9pbWFwbGliLnJzdApAQCAtNjQsMTQgKzY0LDIxIEBACiBUaGVyZSdzIGFsc28gYSBzdWJjbGFzcyBmb3Igc2VjdXJlIGNvbm5lY3Rpb25zOgogCiAKLS4uIGNsYXNzOjogSU1BUDRfU1NMKGhvc3Q9JycsIHBvcnQ9SU1BUDRfU1NMX1BPUlQsIGtleWZpbGU9Tm9uZSwgY2VydGZpbGU9Tm9uZSkKKy4uIGNsYXNzOjogSU1BUDRfU1NMKGhvc3Q9JycsIHBvcnQ9SU1BUDRfU1NMX1BPUlQsIGtleWZpbGU9Tm9uZSwgY2VydGZpbGU9Tm9uZSwgc3NsX2NvbnRleHQ9Tm9uZSkKIAogICAgVGhpcyBpcyBhIHN1YmNsYXNzIGRlcml2ZWQgZnJvbSA6Y2xhc3M6YElNQVA0YCB0aGF0IGNvbm5lY3RzIG92ZXIgYW4gU1NMCiAgICBlbmNyeXB0ZWQgc29ja2V0ICh0byB1c2UgdGhpcyBjbGFzcyB5b3UgbmVlZCBhIHNvY2tldCBtb2R1bGUgdGhhdCB3YXMgY29tcGlsZWQKICAgIHdpdGggU1NMIHN1cHBvcnQpLiAgSWYgKmhvc3QqIGlzIG5vdCBzcGVjaWZpZWQsIGBgJydgYCAodGhlIGxvY2FsIGhvc3QpIGlzIHVzZWQuCiAgICBJZiAqcG9ydCogaXMgb21pdHRlZCwgdGhlIHN0YW5kYXJkIElNQVA0LW92ZXItU1NMIHBvcnQgKDk5MykgaXMgdXNlZC4gICprZXlmaWxlKgogICAgYW5kICpjZXJ0ZmlsZSogYXJlIGFsc28gb3B0aW9uYWwgLSB0aGV5IGNhbiBjb250YWluIGEgUEVNIGZvcm1hdHRlZCBwcml2YXRlIGtleQotICAgYW5kIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgZm9yIHRoZSBTU0wgY29ubmVjdGlvbi4KKyAgIGFuZCBjZXJ0aWZpY2F0ZSBjaGFpbiBmaWxlIGZvciB0aGUgU1NMIGNvbm5lY3Rpb24uICpzc2xfY29udGV4dCogcGFyYW1ldGVyIGlzIGEKKyAgIDpjbGFzczpgc3NsLlNTTENvbnRleHRgIG9iamVjdCB3aGljaCBhbGxvd3MgYnVuZGxpbmcgU1NMIGNvbmZpZ3VyYXRpb24KKyAgIG9wdGlvbnMsIGNlcnRpZmljYXRlcyBhbmQgcHJpdmF0ZSBrZXlzIGludG8gYSBzaW5nbGUgKHBvdGVudGlhbGx5IGxvbmctbGl2ZWQpCisgICBzdHJ1Y3R1cmUuIE5vdGUgdGhhdCB0aGUgKmtleWZpbGUqLypjZXJ0ZmlsZSogcGFyYW1ldGVycyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIHdpdGggKnNzbF9jb250ZXh0KiwKKyAgIGEgOmNsYXNzOmBWYWx1ZUVycm9yYCBpcyB0aHJvd24gaWYgKmtleWZpbGUqLypjZXJ0ZmlsZSogaXMgcHJvdmlkZWQgYWxvbmcgd2l0aCAqc3NsX2NvbnRleHQqLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgKnNzbF9jb250ZXh0KiBwYXJhbWV0ZXIgYWRkZWQuCiAKIAogVGhlIHNlY29uZCBzdWJjbGFzcyBhbGxvd3MgZm9yIGNvbm5lY3Rpb25zIGNyZWF0ZWQgYnkgYSBjaGlsZCBwcm9jZXNzOgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvaW1wb3J0bGliLnJzdCBiL0RvYy9saWJyYXJ5L2ltcG9ydGxpYi5yc3QKaW5kZXggYzlmNzQyYS4uZTVjYzI3ZiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvaW1wb3J0bGliLnJzdAorKysgYi9Eb2MvbGlicmFyeS9pbXBvcnRsaWIucnN0CkBAIC04Niw2ICs4NiwxNyBAQAogICAgIHRoYXQgd2FzIGltcG9ydGVkIChlLmcuIGBgcGtnLm1vZGBgKSwgd2hpbGUgOmZ1bmM6YF9faW1wb3J0X19gIHJldHVybnMgdGhlCiAgICAgdG9wLWxldmVsIHBhY2thZ2Ugb3IgbW9kdWxlIChlLmcuIGBgcGtnYGApLgogCisuLiBmdW5jdGlvbjo6IGludmFsaWRhdGVfY2FjaGVzKCkKKworICAgSW52YWxpZGF0ZSB0aGUgaW50ZXJuYWwgY2FjaGVzIG9mIHRoZSBmaW5kZXJzIHN0b3JlZCBhdAorICAgOmRhdGE6YHN5cy5wYXRoX2ltcG9ydGVyX2NhY2hlYC4gSWYgYSBmaW5kZXIgaW1wbGVtZW50cworICAgOm1ldGg6YGFiYy5GaW5kZXIuaW52YWxpZGF0ZV9jYWNoZXMoKWAgdGhlbiBpdCB3aWxsIGJlIGNhbGxlZCB0byBwZXJmb3JtIHRoZQorICAgaW52YWxpZGF0aW9uLiAgVGhpcyBmdW5jdGlvbiBtYXkgYmUgbmVlZGVkIGlmIHNvbWUgbW9kdWxlcyBhcmUgaW5zdGFsbGVkCisgICB3aGlsZSB5b3VyIHByb2dyYW0gaXMgcnVubmluZyBhbmQgeW91IGV4cGVjdCB0aGUgcHJvZ3JhbSB0byBub3RpY2UgdGhlCisgICBjaGFuZ2VzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogCiA6bW9kOmBpbXBvcnRsaWIuYWJjYCAtLSBBYnN0cmFjdCBiYXNlIGNsYXNzZXMgcmVsYXRlZCB0byBpbXBvcnQKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMTExLDYgKzEyMiwxMiBAQAogICAgICAgICBiZSB0aGUgdmFsdWUgb2YgOmF0dHI6YF9fcGF0aF9fYCBmcm9tIHRoZSBwYXJlbnQgcGFja2FnZS4gSWYgYSBsb2FkZXIKICAgICAgICAgY2Fubm90IGJlIGZvdW5kLCBgYE5vbmVgYCBpcyByZXR1cm5lZC4KIAorICAgLi4gbWV0aG9kOjogaW52YWxpZGF0ZV9jYWNoZXMoKQorCisgICAgICAgIEFuIG9wdGlvbmFsIG1ldGhvZCB3aGljaCwgd2hlbiBjYWxsZWQsIHNob3VsZCBpbnZhbGlkYXRlIGFueSBpbnRlcm5hbAorICAgICAgICBjYWNoZSB1c2VkIGJ5IHRoZSBmaW5kZXIuIFVzZWQgYnkgOmZ1bmM6YGludmFsaWRhdGVfY2FjaGVzKClgIHdoZW4KKyAgICAgICAgaW52YWxpZGF0aW5nIHRoZSBjYWNoZXMgb2YgYWxsIGNhY2hlZCBmaW5kZXJzLgorCiAKIC4uIGNsYXNzOjogTG9hZGVyCiAKQEAgLTIzOSwxMSArMjU2LDMwIEBACiAgICAgb3B0aW1pemF0aW9uIHRvIHNwZWVkIHVwIGxvYWRpbmcgYnkgcmVtb3ZpbmcgdGhlIHBhcnNpbmcgc3RlcCBvZiBQeXRob24ncwogICAgIGNvbXBpbGVyLCBhbmQgc28gbm8gYnl0ZWNvZGUtc3BlY2lmaWMgQVBJIGlzIGV4cG9zZWQuCiAKKyAgICAuLiBtZXRob2Q6OiBwYXRoX3N0YXRzKHNlbGYsIHBhdGgpCisKKyAgICAgICAgT3B0aW9uYWwgYWJzdHJhY3QgbWV0aG9kIHdoaWNoIHJldHVybnMgYSA6Y2xhc3M6YGRpY3RgIGNvbnRhaW5pbmcKKyAgICAgICAgbWV0YWRhdGEgYWJvdXQgdGhlIHNwZWNpZmVkIHBhdGguICBTdXBwb3J0ZWQgZGljdGlvbmFyeSBrZXlzIGFyZToKKworICAgICAgICAtIGBgJ210aW1lJ2BgIChtYW5kYXRvcnkpOiBhbiBpbnRlZ2VyIG9yIGZsb2F0aW5nLXBvaW50IG51bWJlcgorICAgICAgICAgIHJlcHJlc2VudGluZyB0aGUgbW9kaWZpY2F0aW9uIHRpbWUgb2YgdGhlIHNvdXJjZSBjb2RlOworICAgICAgICAtIGBgJ3NpemUnYGAgKG9wdGlvbmFsKTogdGhlIHNpemUgaW4gYnl0ZXMgb2YgdGhlIHNvdXJjZSBjb2RlLgorCisgICAgICAgIEFueSBvdGhlciBrZXlzIGluIHRoZSBkaWN0aW9uYXJ5IGFyZSBpZ25vcmVkLCB0byBhbGxvdyBmb3IgZnV0dXJlCisgICAgICAgIGV4dGVuc2lvbnMuCisKKyAgICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKICAgICAuLiBtZXRob2Q6OiBwYXRoX210aW1lKHNlbGYsIHBhdGgpCiAKICAgICAgICAgT3B0aW9uYWwgYWJzdHJhY3QgbWV0aG9kIHdoaWNoIHJldHVybnMgdGhlIG1vZGlmaWNhdGlvbiB0aW1lIGZvciB0aGUKICAgICAgICAgc3BlY2lmaWVkIHBhdGguCiAKKyAgICAgICAgLi4gZGVwcmVjYXRlZDo6IDMuMworICAgICAgICAgICBUaGlzIG1ldGhvZCBpcyBkZXByZWNhdGVkIGluIGZhdm91ciBvZiA6bWV0aDpgcGF0aF9zdGF0c2AuICBZb3UgZG9uJ3QKKyAgICAgICAgICAgaGF2ZSB0byBpbXBsZW1lbnQgaXQsIGJ1dCBpdCBpcyBzdGlsbCBhdmFpbGFibGUgZm9yIGNvbXBhdGliaWxpdHkKKyAgICAgICAgICAgcHVycG9zZXMuCisKICAgICAuLiBtZXRob2Q6OiBzZXRfZGF0YShzZWxmLCBwYXRoLCBkYXRhKQogCiAgICAgICAgIE9wdGlvbmFsIGFic3RyYWN0IG1ldGhvZCB3aGljaCB3cml0ZXMgdGhlIHNwZWNpZmllZCBieXRlcyB0byBhIGZpbGUKQEAgLTQ0MSw3ICs0NzcsOSBAQAogCiAgICAgVGhpcyBjbGFzcyBkb2VzIG5vdCBwZXJmZWN0bHkgbWlycm9yIHRoZSBzZW1hbnRpY3Mgb2YgOmtleXdvcmQ6YGltcG9ydGAgaW4KICAgICB0ZXJtcyBvZiA6ZGF0YTpgc3lzLnBhdGhgLiBObyBpbXBsaWNpdCBwYXRoIGhvb2tzIGFyZSBhc3N1bWVkIGZvcgotICAgIHNpbXBsaWZpY2F0aW9uIG9mIHRoZSBjbGFzcyBhbmQgaXRzIHNlbWFudGljcy4KKyAgICBzaW1wbGlmaWNhdGlvbiBvZiB0aGUgY2xhc3MgYW5kIGl0cyBzZW1hbnRpY3MuIFRoaXMgaW1wbGllcyB0aGF0IHdoZW4KKyAgICBgYE5vbmVgYCBpcyBmb3VuZCBpbiA6ZGF0YTpgc3lzLnBhdGhfaW1wb3J0ZXJfY2FjaGVgIHRoYXQgaXQgaXMgc2ltcGx5CisgICAgaWdub3JlZCBpbnN0ZWFkIG9mIGltcGx5aW5nIGEgZGVmYXVsdCBmaW5kZXIuCiAKICAgICBPbmx5IGNsYXNzIG1ldGhvZHMgYXJlIGRlZmluZWQgYnkgdGhpcyBjbGFzcyB0byBhbGxldmlhdGUgdGhlIG5lZWQgZm9yCiAgICAgaW5zdGFudGlhdGlvbi4KQEAgLTQ1MSw3ICs0ODksNyBAQAogICAgICAgICBDbGFzcyBtZXRob2QgdGhhdCBhdHRlbXB0cyB0byBmaW5kIGEgOnRlcm06YGxvYWRlcmAgZm9yIHRoZSBtb2R1bGUKICAgICAgICAgc3BlY2lmaWVkIGJ5ICpmdWxsbmFtZSogb24gOmRhdGE6YHN5cy5wYXRoYCBvciwgaWYgZGVmaW5lZCwgb24KICAgICAgICAgKnBhdGgqLiBGb3IgZWFjaCBwYXRoIGVudHJ5IHRoYXQgaXMgc2VhcmNoZWQsCi0gICAgICAgIDpkYXRhOmBzeXMucGF0aF9pbXBvcnRlcl9jYWNoZWAgaXMgY2hlY2tlZC4gSWYgYW4gbm9uLWZhbHNlIG9iamVjdCBpcworICAgICAgICA6ZGF0YTpgc3lzLnBhdGhfaW1wb3J0ZXJfY2FjaGVgIGlzIGNoZWNrZWQuIElmIGEgbm9uLWZhbHNlIG9iamVjdCBpcwogICAgICAgICBmb3VuZCB0aGVuIGl0IGlzIHVzZWQgYXMgdGhlIDp0ZXJtOmBmaW5kZXJgIHRvIGxvb2sgZm9yIHRoZSBtb2R1bGUKICAgICAgICAgYmVpbmcgc2VhcmNoZWQgZm9yLiBJZiBubyBlbnRyeSBpcyBmb3VuZCBpbgogICAgICAgICA6ZGF0YTpgc3lzLnBhdGhfaW1wb3J0ZXJfY2FjaGVgLCB0aGVuIDpkYXRhOmBzeXMucGF0aF9ob29rc2AgaXMKQEAgLTQ2NCw3ICs1MDIsNyBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIC4uIG1vZHVsZTo6IGltcG9ydGxpYi51dGlsCi0gICAgOnN5bm9wc2lzOiBJbXBvcnRlcnMgYW5kIHBhdGggaG9va3MKKyAgICA6c3lub3BzaXM6IFV0aWxpdHkgY29kZSBmb3IgaW1wb3J0ZXJzCiAKIFRoaXMgbW9kdWxlIGNvbnRhaW5zIHRoZSB2YXJpb3VzIG9iamVjdHMgdGhhdCBoZWxwIGluIHRoZSBjb25zdHJ1Y3Rpb24gb2YKIGFuIDp0ZXJtOmBpbXBvcnRlcmAuCkBAIC01MDAsNyArNTM4LDcgQEAKICAgICB0byBzZXQgdGhlIDphdHRyOmBfX2xvYWRlcl9fYAogICAgIGF0dHJpYnV0ZSBvbiBsb2FkZWQgbW9kdWxlcy4gSWYgdGhlIGF0dHJpYnV0ZSBpcyBhbHJlYWR5IHNldCB0aGUgZGVjb3JhdG9yCiAgICAgZG9lcyBub3RoaW5nLiBJdCBpcyBhc3N1bWVkIHRoYXQgdGhlIGZpcnN0IHBvc2l0aW9uYWwgYXJndW1lbnQgdG8gdGhlCi0gICAgd3JhcHBlZCBtZXRob2QgaXMgd2hhdCA6YXR0cjpgX19sb2FkZXJfX2Agc2hvdWxkIGJlIHNldCB0by4KKyAgICB3cmFwcGVkIG1ldGhvZCAoaS5lLiBgYHNlbGZgYCkgaXMgd2hhdCA6YXR0cjpgX19sb2FkZXJfX2Agc2hvdWxkIGJlIHNldCB0by4KIAogLi4gZGVjb3JhdG9yOjogc2V0X3BhY2thZ2UKIApAQCAtNTExLDggKzU0OSw4IEBACiAgICAgc2V0IG9uIGFuZCBub3QgdGhlIG1vZHVsZSBmb3VuZCBpbiA6ZGF0YTpgc3lzLm1vZHVsZXNgLgogCiAgICAgUmVsaWFuY2Ugb24gdGhpcyBkZWNvcmF0b3IgaXMgZGlzY291cmFnZWQgd2hlbiBpdCBpcyBwb3NzaWJsZSB0byBzZXQKLSAgICA6YXR0cjpgX19wYWNrYWdlX19gIGJlZm9yZSB0aGUgZXhlY3V0aW9uIG9mIHRoZSBjb2RlIGlzIHBvc3NpYmxlLiBCeQotICAgIHNldHRpbmcgaXQgYmVmb3JlIHRoZSBjb2RlIGZvciB0aGUgbW9kdWxlIGlzIGV4ZWN1dGVkIGl0IGFsbG93cyB0aGUKLSAgICBhdHRyaWJ1dGUgdG8gYmUgdXNlZCBhdCB0aGUgZ2xvYmFsIGxldmVsIG9mIHRoZSBtb2R1bGUgZHVyaW5nCisgICAgOmF0dHI6YF9fcGFja2FnZV9fYCBiZWZvcmUgaW1wb3J0aW5nLiBCeQorICAgIHNldHRpbmcgaXQgYmVmb3JlaGFuZCB0aGUgY29kZSBmb3IgdGhlIG1vZHVsZSBpcyBleGVjdXRlZCB3aXRoIHRoZQorICAgIGF0dHJpYnV0ZSBzZXQgYW5kIHRodXMgY2FuIGJlIHVzZWQgYnkgZ2xvYmFsIGxldmVsIGNvZGUgZHVyaW5nCiAgICAgaW5pdGlhbGl6YXRpb24uCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2luc3BlY3QucnN0IGIvRG9jL2xpYnJhcnkvaW5zcGVjdC5yc3QKaW5kZXggZDEyN2NlOC4uYWM2YWU5OSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvaW5zcGVjdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvaW5zcGVjdC5yc3QKQEAgLTM1NSwxNyArMzU1LDI1IEBACiAgICBhcmd1bWVudCBtYXkgYmUgYSBtb2R1bGUsIGNsYXNzLCBtZXRob2QsIGZ1bmN0aW9uLCB0cmFjZWJhY2ssIGZyYW1lLCBvciBjb2RlCiAgICBvYmplY3QuICBUaGUgc291cmNlIGNvZGUgaXMgcmV0dXJuZWQgYXMgYSBsaXN0IG9mIHRoZSBsaW5lcyBjb3JyZXNwb25kaW5nIHRvIHRoZQogICAgb2JqZWN0IGFuZCB0aGUgbGluZSBudW1iZXIgaW5kaWNhdGVzIHdoZXJlIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSB0aGUgZmlyc3QKLSAgIGxpbmUgb2YgY29kZSB3YXMgZm91bmQuICBBbiA6ZXhjOmBJT0Vycm9yYCBpcyByYWlzZWQgaWYgdGhlIHNvdXJjZSBjb2RlIGNhbm5vdAorICAgbGluZSBvZiBjb2RlIHdhcyBmb3VuZC4gIEFuIDpleGM6YE9TRXJyb3JgIGlzIHJhaXNlZCBpZiB0aGUgc291cmNlIGNvZGUgY2Fubm90CiAgICBiZSByZXRyaWV2ZWQuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICA6ZXhjOmBPU0Vycm9yYCBpcyByYWlzZWQgaW5zdGVhZCBvZiA6ZXhjOmBJT0Vycm9yYCwgbm93IGFuIGFsaWFzIG9mIHRoZQorICAgICAgZm9ybWVyLgorCiAKIC4uIGZ1bmN0aW9uOjogZ2V0c291cmNlKG9iamVjdCkKIAogICAgUmV0dXJuIHRoZSB0ZXh0IG9mIHRoZSBzb3VyY2UgY29kZSBmb3IgYW4gb2JqZWN0LiBUaGUgYXJndW1lbnQgbWF5IGJlIGEgbW9kdWxlLAogICAgY2xhc3MsIG1ldGhvZCwgZnVuY3Rpb24sIHRyYWNlYmFjaywgZnJhbWUsIG9yIGNvZGUgb2JqZWN0LiAgVGhlIHNvdXJjZSBjb2RlIGlzCi0gICByZXR1cm5lZCBhcyBhIHNpbmdsZSBzdHJpbmcuICBBbiA6ZXhjOmBJT0Vycm9yYCBpcyByYWlzZWQgaWYgdGhlIHNvdXJjZSBjb2RlCisgICByZXR1cm5lZCBhcyBhIHNpbmdsZSBzdHJpbmcuICBBbiA6ZXhjOmBPU0Vycm9yYCBpcyByYWlzZWQgaWYgdGhlIHNvdXJjZSBjb2RlCiAgICBjYW5ub3QgYmUgcmV0cmlldmVkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkIGluc3RlYWQgb2YgOmV4YzpgSU9FcnJvcmAsIG5vdyBhbiBhbGlhcyBvZiB0aGUKKyAgICAgIGZvcm1lci4KKwogCiAuLiBmdW5jdGlvbjo6IGNsZWFuZG9jKGRvYykKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvaW8ucnN0IGIvRG9jL2xpYnJhcnkvaW8ucnN0CmluZGV4IGJlY2M0YTIuLjRkNTY0YmIgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2lvLnJzdAorKysgYi9Eb2MvbGlicmFyeS9pby5yc3QKQEAgLTMzLDYgKzMzLDEwIEBACiB3aWxsIHJhaXNlIGEgYGBUeXBlRXJyb3JgYC4gIFNvIHdpbGwgZ2l2aW5nIGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0IHRvIHRoZQogYGB3cml0ZSgpYGAgbWV0aG9kIG9mIGEgdGV4dCBzdHJlYW0uCiAKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBPcGVyYXRpb25zIGRlZmluZWQgaW4gdGhpcyBtb2R1bGUgdXNlZCB0byByYWlzZSA6ZXhjOmBJT0Vycm9yYCwgd2hpY2ggaXMKKyAgIG5vdyBhbiBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KKwogCiBUZXh0IEkvTwogXl5eXl5eXl4KQEAgLTEwOSwyMSArMTEzLDEzIEBACiAKIC4uIGV4Y2VwdGlvbjo6IEJsb2NraW5nSU9FcnJvcgogCi0gICBFcnJvciByYWlzZWQgd2hlbiBibG9ja2luZyB3b3VsZCBvY2N1ciBvbiBhIG5vbi1ibG9ja2luZyBzdHJlYW0uICBJdCBpbmhlcml0cwotICAgOmV4YzpgSU9FcnJvcmAuCi0KLSAgIEluIGFkZGl0aW9uIHRvIHRob3NlIG9mIDpleGM6YElPRXJyb3JgLCA6ZXhjOmBCbG9ja2luZ0lPRXJyb3JgIGhhcyBvbmUKLSAgIGF0dHJpYnV0ZToKLQotICAgLi4gYXR0cmlidXRlOjogY2hhcmFjdGVyc193cml0dGVuCi0KLSAgICAgIEFuIGludGVnZXIgY29udGFpbmluZyB0aGUgbnVtYmVyIG9mIGNoYXJhY3RlcnMgd3JpdHRlbiB0byB0aGUgc3RyZWFtCi0gICAgICBiZWZvcmUgaXQgYmxvY2tlZC4KKyAgIFRoaXMgaXMgYSBjb21wYXRpYmlsaXR5IGFsaWFzIGZvciB0aGUgYnVpbHRpbiA6ZXhjOmBCbG9ja2luZ0lPRXJyb3JgCisgICBleGNlcHRpb24uCiAKIAogLi4gZXhjZXB0aW9uOjogVW5zdXBwb3J0ZWRPcGVyYXRpb24KIAotICAgQW4gZXhjZXB0aW9uIGluaGVyaXRpbmcgOmV4YzpgSU9FcnJvcmAgYW5kIDpleGM6YFZhbHVlRXJyb3JgIHRoYXQgaXMgcmFpc2VkCisgICBBbiBleGNlcHRpb24gaW5oZXJpdGluZyA6ZXhjOmBPU0Vycm9yYCBhbmQgOmV4YzpgVmFsdWVFcnJvcmAgdGhhdCBpcyByYWlzZWQKICAgIHdoZW4gYW4gdW5zdXBwb3J0ZWQgb3BlcmF0aW9uIGlzIGNhbGxlZCBvbiBhIHN0cmVhbS4KIAogCkBAIC0yMDIsOCArMTk4LDggQEAKICAgIEV2ZW4gdGhvdWdoIDpjbGFzczpgSU9CYXNlYCBkb2VzIG5vdCBkZWNsYXJlIDptZXRoOmByZWFkYCwgOm1ldGg6YHJlYWRpbnRvYCwKICAgIG9yIDptZXRoOmB3cml0ZWAgYmVjYXVzZSB0aGVpciBzaWduYXR1cmVzIHdpbGwgdmFyeSwgaW1wbGVtZW50YXRpb25zIGFuZAogICAgY2xpZW50cyBzaG91bGQgY29uc2lkZXIgdGhvc2UgbWV0aG9kcyBwYXJ0IG9mIHRoZSBpbnRlcmZhY2UuICBBbHNvLAotICAgaW1wbGVtZW50YXRpb25zIG1heSByYWlzZSBhIDpleGM6YElPRXJyb3JgIHdoZW4gb3BlcmF0aW9ucyB0aGV5IGRvIG5vdAotICAgc3VwcG9ydCBhcmUgY2FsbGVkLgorICAgaW1wbGVtZW50YXRpb25zIG1heSByYWlzZSBhIDpleGM6YFZhbHVlRXJyb3JgIChvciA6ZXhjOmBVbnN1cHBvcnRlZE9wZXJhdGlvbmApCisgICB3aGVuIG9wZXJhdGlvbnMgdGhleSBkbyBub3Qgc3VwcG9ydCBhcmUgY2FsbGVkLgogCiAgICBUaGUgYmFzaWMgdHlwZSB1c2VkIGZvciBiaW5hcnkgZGF0YSByZWFkIGZyb20gb3Igd3JpdHRlbiB0byBhIGZpbGUgaXMKICAgIDpjbGFzczpgYnl0ZXNgLiAgOmNsYXNzOmBieXRlYXJyYXlgXHMgYXJlIGFjY2VwdGVkIHRvbywgYW5kIGluIHNvbWUgY2FzZXMKQEAgLTIxMSw3ICsyMDcsNyBAQAogICAgOmNsYXNzOmBzdHJgIGRhdGEuCiAKICAgIE5vdGUgdGhhdCBjYWxsaW5nIGFueSBtZXRob2QgKGV2ZW4gaW5xdWlyaWVzKSBvbiBhIGNsb3NlZCBzdHJlYW0gaXMKLSAgIHVuZGVmaW5lZC4gIEltcGxlbWVudGF0aW9ucyBtYXkgcmFpc2UgOmV4YzpgSU9FcnJvcmAgaW4gdGhpcyBjYXNlLgorICAgdW5kZWZpbmVkLiAgSW1wbGVtZW50YXRpb25zIG1heSByYWlzZSA6ZXhjOmBWYWx1ZUVycm9yYCBpbiB0aGlzIGNhc2UuCiAKICAgIElPQmFzZSAoYW5kIGl0cyBzdWJjbGFzc2VzKSBzdXBwb3J0IHRoZSBpdGVyYXRvciBwcm90b2NvbCwgbWVhbmluZyB0aGF0IGFuCiAgICA6Y2xhc3M6YElPQmFzZWAgb2JqZWN0IGNhbiBiZSBpdGVyYXRlZCBvdmVyIHlpZWxkaW5nIHRoZSBsaW5lcyBpbiBhIHN0cmVhbS4KQEAgLTI0NCw3ICsyNDAsNyBAQAogICAgLi4gbWV0aG9kOjogZmlsZW5vKCkKIAogICAgICAgUmV0dXJuIHRoZSB1bmRlcmx5aW5nIGZpbGUgZGVzY3JpcHRvciAoYW4gaW50ZWdlcikgb2YgdGhlIHN0cmVhbSBpZiBpdAotICAgICAgZXhpc3RzLiAgQW4gOmV4YzpgSU9FcnJvcmAgaXMgcmFpc2VkIGlmIHRoZSBJTyBvYmplY3QgZG9lcyBub3QgdXNlIGEgZmlsZQorICAgICAgZXhpc3RzLiAgQW4gOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkIGlmIHRoZSBJTyBvYmplY3QgZG9lcyBub3QgdXNlIGEgZmlsZQogICAgICAgZGVzY3JpcHRvci4KIAogICAgLi4gbWV0aG9kOjogZmx1c2goKQpAQCAtMjYwLDcgKzI1Niw3IEBACiAgICAuLiBtZXRob2Q6OiByZWFkYWJsZSgpCiAKICAgICAgIFJldHVybiBgYFRydWVgYCBpZiB0aGUgc3RyZWFtIGNhbiBiZSByZWFkIGZyb20uICBJZiBGYWxzZSwgOm1ldGg6YHJlYWRgCi0gICAgICB3aWxsIHJhaXNlIDpleGM6YElPRXJyb3JgLgorICAgICAgd2lsbCByYWlzZSA6ZXhjOmBPU0Vycm9yYC4KIAogICAgLi4gbWV0aG9kOjogcmVhZGxpbmUobGltaXQ9LTEpCiAKQEAgLTI5OCw3ICsyOTQsNyBAQAogICAgLi4gbWV0aG9kOjogc2Vla2FibGUoKQogCiAgICAgICBSZXR1cm4gYGBUcnVlYGAgaWYgdGhlIHN0cmVhbSBzdXBwb3J0cyByYW5kb20gYWNjZXNzLiAgSWYgYGBGYWxzZWBgLAotICAgICAgOm1ldGg6YHNlZWtgLCA6bWV0aDpgdGVsbGAgYW5kIDptZXRoOmB0cnVuY2F0ZWAgd2lsbCByYWlzZSA6ZXhjOmBJT0Vycm9yYC4KKyAgICAgIDptZXRoOmBzZWVrYCwgOm1ldGg6YHRlbGxgIGFuZCA6bWV0aDpgdHJ1bmNhdGVgIHdpbGwgcmFpc2UgOmV4YzpgT1NFcnJvcmAuCiAKICAgIC4uIG1ldGhvZDo6IHRlbGwoKQogCkBAIC0zMTYsNyArMzEyLDcgQEAKICAgIC4uIG1ldGhvZDo6IHdyaXRhYmxlKCkKIAogICAgICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIHRoZSBzdHJlYW0gc3VwcG9ydHMgd3JpdGluZy4gIElmIGBgRmFsc2VgYCwKLSAgICAgIDptZXRoOmB3cml0ZWAgYW5kIDptZXRoOmB0cnVuY2F0ZWAgd2lsbCByYWlzZSA6ZXhjOmBJT0Vycm9yYC4KKyAgICAgIDptZXRoOmB3cml0ZWAgYW5kIDptZXRoOmB0cnVuY2F0ZWAgd2lsbCByYWlzZSA6ZXhjOmBPU0Vycm9yYC4KIAogICAgLi4gbWV0aG9kOjogd3JpdGVsaW5lcyhsaW5lcykKIApAQCAtNDUwLDcgKzQ0Niw3IEBACiAKICAgICAgIFdyaXRlIHRoZSBnaXZlbiBieXRlcyBvciBieXRlYXJyYXkgb2JqZWN0LCAqYiogYW5kIHJldHVybiB0aGUgbnVtYmVyCiAgICAgICBvZiBieXRlcyB3cml0dGVuIChuZXZlciBsZXNzIHRoYW4gYGBsZW4oYilgYCwgc2luY2UgaWYgdGhlIHdyaXRlIGZhaWxzCi0gICAgICBhbiA6ZXhjOmBJT0Vycm9yYCB3aWxsIGJlIHJhaXNlZCkuICBEZXBlbmRpbmcgb24gdGhlIGFjdHVhbAorICAgICAgYW4gOmV4YzpgT1NFcnJvcmAgd2lsbCBiZSByYWlzZWQpLiAgRGVwZW5kaW5nIG9uIHRoZSBhY3R1YWwKICAgICAgIGltcGxlbWVudGF0aW9uLCB0aGVzZSBieXRlcyBtYXkgYmUgcmVhZGlseSB3cml0dGVuIHRvIHRoZSB1bmRlcmx5aW5nCiAgICAgICBzdHJlYW0sIG9yIGhlbGQgaW4gYSBidWZmZXIgZm9yIHBlcmZvcm1hbmNlIGFuZCBsYXRlbmN5IHJlYXNvbnMuCiAKQEAgLTQ2Miw3ICs0NTgsNyBAQAogUmF3IEZpbGUgSS9PCiBeXl5eXl5eXl5eXl4KIAotLi4gY2xhc3M6OiBGaWxlSU8obmFtZSwgbW9kZT0ncicsIGNsb3NlZmQ9VHJ1ZSkKKy4uIGNsYXNzOjogRmlsZUlPKG5hbWUsIG1vZGU9J3InLCBjbG9zZWZkPVRydWUsIG9wZW5lcj1Ob25lKQogCiAgICA6Y2xhc3M6YEZpbGVJT2AgcmVwcmVzZW50cyBhbiBPUy1sZXZlbCBmaWxlIGNvbnRhaW5pbmcgYnl0ZXMgZGF0YS4KICAgIEl0IGltcGxlbWVudHMgdGhlIDpjbGFzczpgUmF3SU9CYXNlYCBpbnRlcmZhY2UgKGFuZCB0aGVyZWZvcmUgdGhlCkBAIC00NzUsMTQgKzQ3MSwyNyBAQAogICAgKiBhbiBpbnRlZ2VyIHJlcHJlc2VudGluZyB0aGUgbnVtYmVyIG9mIGFuIGV4aXN0aW5nIE9TLWxldmVsIGZpbGUgZGVzY3JpcHRvcgogICAgICB0byB3aGljaCB0aGUgcmVzdWx0aW5nIDpjbGFzczpgRmlsZUlPYCBvYmplY3Qgd2lsbCBnaXZlIGFjY2Vzcy4KIAotICAgVGhlICptb2RlKiBjYW4gYmUgYGAncidgYCwgYGAndydgYCBvciBgYCdhJ2BgIGZvciByZWFkaW5nIChkZWZhdWx0KSwgd3JpdGluZywKLSAgIG9yIGFwcGVuZGluZy4gIFRoZSBmaWxlIHdpbGwgYmUgY3JlYXRlZCBpZiBpdCBkb2Vzbid0IGV4aXN0IHdoZW4gb3BlbmVkIGZvcgotICAgd3JpdGluZyBvciBhcHBlbmRpbmc7IGl0IHdpbGwgYmUgdHJ1bmNhdGVkIHdoZW4gb3BlbmVkIGZvciB3cml0aW5nLiAgQWRkIGEKKyAgIFRoZSAqbW9kZSogY2FuIGJlIGBgJ3InYGAsIGBgJ3cnYGAsIGBgJ3gnYGAgb3IgYGAnYSdgYCBmb3IgcmVhZGluZworICAgKGRlZmF1bHQpLCB3cml0aW5nLCBleGNsdXNpdmUgY3JlYXRpb24gb3IgYXBwZW5kaW5nLiBUaGUgZmlsZSB3aWxsIGJlCisgICBjcmVhdGVkIGlmIGl0IGRvZXNuJ3QgZXhpc3Qgd2hlbiBvcGVuZWQgZm9yIHdyaXRpbmcgb3IgYXBwZW5kaW5nOyBpdCB3aWxsIGJlCisgICB0cnVuY2F0ZWQgd2hlbiBvcGVuZWQgZm9yIHdyaXRpbmcuIDpleGM6YEZpbGVFeGlzdHNFcnJvcmAgd2lsbCBiZSByYWlzZWQgaWYKKyAgIGl0IGFscmVhZHkgZXhpc3RzIHdoZW4gb3BlbmVkIGZvciBjcmVhdGluZy4gT3BlbmluZyBhIGZpbGUgZm9yIGNyZWF0aW5nCisgICBpbXBsaWVzIHdyaXRpbmcsIHNvIHRoaXMgbW9kZSBiZWhhdmVzIGluIGEgc2ltaWxhciB3YXkgdG8gYGAndydgYC4gQWRkIGEKICAgIGBgJysnYGAgdG8gdGhlIG1vZGUgdG8gYWxsb3cgc2ltdWx0YW5lb3VzIHJlYWRpbmcgYW5kIHdyaXRpbmcuCiAKICAgIFRoZSA6bWV0aDpgcmVhZGAgKHdoZW4gY2FsbGVkIHdpdGggYSBwb3NpdGl2ZSBhcmd1bWVudCksIDptZXRoOmByZWFkaW50b2AKICAgIGFuZCA6bWV0aDpgd3JpdGVgIG1ldGhvZHMgb24gdGhpcyBjbGFzcyB3aWxsIG9ubHkgbWFrZSBvbmUgc3lzdGVtIGNhbGwuCiAKKyAgIEEgY3VzdG9tIG9wZW5lciBjYW4gYmUgdXNlZCBieSBwYXNzaW5nIGEgY2FsbGFibGUgYXMgKm9wZW5lciouIFRoZSB1bmRlcmx5aW5nCisgICBmaWxlIGRlc2NyaXB0b3IgZm9yIHRoZSBmaWxlIG9iamVjdCBpcyB0aGVuIG9idGFpbmVkIGJ5IGNhbGxpbmcgKm9wZW5lciogd2l0aAorICAgKCpuYW1lKiwgKmZsYWdzKikuICpvcGVuZXIqIG11c3QgcmV0dXJuIGFuIG9wZW4gZmlsZSBkZXNjcmlwdG9yIChwYXNzaW5nCisgICA6bW9kOmBvcy5vcGVuYCBhcyAqb3BlbmVyKiByZXN1bHRzIGluIGZ1bmN0aW9uYWxpdHkgc2ltaWxhciB0byBwYXNzaW5nCisgICBgYE5vbmVgYCkuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKm9wZW5lciogcGFyYW1ldGVyIHdhcyBhZGRlZC4KKyAgICAgIFRoZSBgYCd4J2BgIG1vZGUgd2FzIGFkZGVkLgorCiAgICBJbiBhZGRpdGlvbiB0byB0aGUgYXR0cmlidXRlcyBhbmQgbWV0aG9kcyBmcm9tIDpjbGFzczpgSU9CYXNlYCBhbmQKICAgIDpjbGFzczpgUmF3SU9CYXNlYCwgOmNsYXNzOmBGaWxlSU9gIHByb3ZpZGVzIHRoZSBmb2xsb3dpbmcgZGF0YQogICAgYXR0cmlidXRlcyBhbmQgbWV0aG9kczoKQEAgLTczNiw3ICs3NDUsOCBAQAogICAgICAgd3JpdHRlbi4KIAogCi0uLiBjbGFzczo6IFRleHRJT1dyYXBwZXIoYnVmZmVyLCBlbmNvZGluZz1Ob25lLCBlcnJvcnM9Tm9uZSwgbmV3bGluZT1Ob25lLCBsaW5lX2J1ZmZlcmluZz1GYWxzZSkKKy4uIGNsYXNzOjogVGV4dElPV3JhcHBlcihidWZmZXIsIGVuY29kaW5nPU5vbmUsIGVycm9ycz1Ob25lLCBuZXdsaW5lPU5vbmUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lX2J1ZmZlcmluZz1GYWxzZSwgd3JpdGVfdGhyb3VnaD1GYWxzZSkKIAogICAgQSBidWZmZXJlZCB0ZXh0IHN0cmVhbSBvdmVyIGEgOmNsYXNzOmBCdWZmZXJlZElPQmFzZWAgYmluYXJ5IHN0cmVhbS4KICAgIEl0IGluaGVyaXRzIDpjbGFzczpgVGV4dElPQmFzZWAuCkBAIC03NjcsNiArNzc3LDEzIEBACiAgICBJZiAqbGluZV9idWZmZXJpbmcqIGlzIGBgVHJ1ZWBgLCA6bWV0aDpgZmx1c2hgIGlzIGltcGxpZWQgd2hlbiBhIGNhbGwgdG8KICAgIHdyaXRlIGNvbnRhaW5zIGEgbmV3bGluZSBjaGFyYWN0ZXIuCiAKKyAgIElmICp3cml0ZV90aHJvdWdoKiBpcyBgYFRydWVgYCwgY2FsbHMgdG8gOm1ldGg6YHdyaXRlYCBhcmUgZ3VhcmFudGVlZAorICAgbm90IHRvIGJlIGJ1ZmZlcmVkOiBhbnkgZGF0YSB3cml0dGVuIG9uIHRoZSA6Y2xhc3M6YFRleHRJT1dyYXBwZXJgCisgICBvYmplY3QgaXMgaW1tZWRpYXRlbHkgaGFuZGxlZCB0byBpdHMgdW5kZXJseWluZyBiaW5hcnkgKmJ1ZmZlciouCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKndyaXRlX3Rocm91Z2gqIGFyZ3VtZW50IGhhcyBiZWVuIGFkZGVkLgorCiAgICA6Y2xhc3M6YFRleHRJT1dyYXBwZXJgIHByb3ZpZGVzIG9uZSBhdHRyaWJ1dGUgaW4gYWRkaXRpb24gdG8gdGhvc2Ugb2YKICAgIDpjbGFzczpgVGV4dElPQmFzZWAgYW5kIGl0cyBwYXJlbnRzOgogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9pdGVydG9vbHMucnN0IGIvRG9jL2xpYnJhcnkvaXRlcnRvb2xzLnJzdAppbmRleCBkMWQxMTg4Li45OTRhMjVhIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9pdGVydG9vbHMucnN0CisrKyBiL0RvYy9saWJyYXJ5L2l0ZXJ0b29scy5yc3QKQEAgLTQ2LDcgKzQ2LDcgQEAKID09PT09PT09PT09PT09PT09PT09ICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT0gICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIEl0ZXJhdG9yICAgICAgICAgICAgICAgIEFyZ3VtZW50cyAgICAgICAgICAgICAgICAgICAgICAgUmVzdWx0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4YW1wbGUKID09PT09PT09PT09PT09PT09PT09ICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT0gICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLTpmdW5jOmBhY2N1bXVsYXRlYCAgICAgIHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDAsIHAwK3AxLCBwMCtwMStwMiwgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgYWNjdW11bGF0ZShbMSwyLDMsNCw1XSkgLS0+IDEgMyA2IDEwIDE1YGAKKzpmdW5jOmBhY2N1bXVsYXRlYCAgICAgIHAgWyxmdW5jXSAgICAgICAgICAgICAgICAgICAgICAgcDAsIHAwK3AxLCBwMCtwMStwMiwgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgYWNjdW11bGF0ZShbMSwyLDMsNCw1XSkgLS0+IDEgMyA2IDEwIDE1YGAKIDpmdW5jOmBjaGFpbmAgICAgICAgICAgIHAsIHEsIC4uLiAgICAgICAgICAgICAgICAgICAgICAgcDAsIHAxLCAuLi4gcGxhc3QsIHEwLCBxMSwgLi4uICAgICAgICAgICAgICAgICAgICAgIGBgY2hhaW4oJ0FCQycsICdERUYnKSAtLT4gQSBCIEMgRCBFIEZgYAogOmZ1bmM6YGNvbXByZXNzYCAgICAgICAgZGF0YSwgc2VsZWN0b3JzICAgICAgICAgICAgICAgICAoZFswXSBpZiBzWzBdKSwgKGRbMV0gaWYgc1sxXSksIC4uLiAgICAgICAgICAgICAgICAgYGBjb21wcmVzcygnQUJDREVGJywgWzEsMCwxLDAsMSwxXSkgLS0+IEEgQyBFIEZgYAogOmZ1bmM6YGRyb3B3aGlsZWAgICAgICAgcHJlZCwgc2VxICAgICAgICAgICAgICAgICAgICAgICBzZXFbbl0sIHNlcVtuKzFdLCBzdGFydGluZyB3aGVuIHByZWQgZmFpbHMgICAgICAgICAgYGBkcm9wd2hpbGUobGFtYmRhIHg6IHg8NSwgWzEsNCw2LDQsMV0pIC0tPiA2IDQgMWBgCkBAIC04NCwyMyArODQsNjEgQEAKIHN0cmVhbXMgb2YgaW5maW5pdGUgbGVuZ3RoLCBzbyB0aGV5IHNob3VsZCBvbmx5IGJlIGFjY2Vzc2VkIGJ5IGZ1bmN0aW9ucyBvcgogbG9vcHMgdGhhdCB0cnVuY2F0ZSB0aGUgc3RyZWFtLgogCi0uLiBmdW5jdGlvbjo6IGFjY3VtdWxhdGUoaXRlcmFibGUpCisuLiBmdW5jdGlvbjo6IGFjY3VtdWxhdGUoaXRlcmFibGVbLCBmdW5jXSkKIAogICAgIE1ha2UgYW4gaXRlcmF0b3IgdGhhdCByZXR1cm5zIGFjY3VtdWxhdGVkIHN1bXMuIEVsZW1lbnRzIG1heSBiZSBhbnkgYWRkYWJsZQotICAgIHR5cGUgaW5jbHVkaW5nIDpjbGFzczpgRGVjaW1hbGAgb3IgOmNsYXNzOmBGcmFjdGlvbmAuICBFcXVpdmFsZW50IHRvOjoKKyAgICB0eXBlIGluY2x1ZGluZyA6Y2xhc3M6YERlY2ltYWxgIG9yIDpjbGFzczpgRnJhY3Rpb25gLiAgSWYgdGhlIG9wdGlvbmFsCisgICAgKmZ1bmMqIGFyZ3VtZW50IGlzIHN1cHBsaWVkLCBpdCBzaG91bGQgYmUgYSBmdW5jdGlvbiBvZiB0d28gYXJndW1lbnRzCisgICAgYW5kIGl0IHdpbGwgYmUgdXNlZCBpbnN0ZWFkIG9mIGFkZGl0aW9uLgogCi0gICAgICAgIGRlZiBhY2N1bXVsYXRlKGl0ZXJhYmxlKToKKyAgICBFcXVpdmFsZW50IHRvOjoKKworICAgICAgICBkZWYgYWNjdW11bGF0ZShpdGVyYWJsZSwgZnVuYz1vcGVyYXRvci5hZGQpOgogICAgICAgICAgICAgJ1JldHVybiBydW5uaW5nIHRvdGFscycKICAgICAgICAgICAgICMgYWNjdW11bGF0ZShbMSwyLDMsNCw1XSkgLS0+IDEgMyA2IDEwIDE1CisgICAgICAgICAgICAjIGFjY3VtdWxhdGUoWzEsMiwzLDQsNV0sIG9wZXJhdG9yLm11bCkgLS0+IDEgMiA2IDI0IDEyMAogICAgICAgICAgICAgaXQgPSBpdGVyKGl0ZXJhYmxlKQogICAgICAgICAgICAgdG90YWwgPSBuZXh0KGl0KQogICAgICAgICAgICAgeWllbGQgdG90YWwKICAgICAgICAgICAgIGZvciBlbGVtZW50IGluIGl0OgotICAgICAgICAgICAgICAgIHRvdGFsID0gdG90YWwgKyBlbGVtZW50CisgICAgICAgICAgICAgICAgdG90YWwgPSBmdW5jKHRvdGFsLCBlbGVtZW50KQogICAgICAgICAgICAgICAgIHlpZWxkIHRvdGFsCiAKKyAgICBUaGVyZSBhcmUgYSBudW1iZXIgb2YgdXNlcyBmb3IgdGhlICpmdW5jKiBhcmd1bWVudC4gIEl0IGNhbiBiZSBzZXQgdG8KKyAgICA6ZnVuYzpgbWluYCBmb3IgYSBydW5uaW5nIG1pbmltdW0sIDpmdW5jOmBtYXhgIGZvciBhIHJ1bm5pbmcgbWF4aW11bSwgb3IKKyAgICA6ZnVuYzpgb3BlcmF0b3IubXVsYCBmb3IgYSBydW5uaW5nIHByb2R1Y3QuICBBbW9ydGl6YXRpb24gdGFibGVzIGNhbiBiZQorICAgIGJ1aWx0IGJ5IGFjY3VtdWxhdGluZyBpbnRlcmVzdCBhbmQgYXBwbHlpbmcgcGF5bWVudHMuICBGaXJzdC1vcmRlcgorICAgIGByZWN1cnJlbmNlIHJlbGF0aW9ucyA8aHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9SZWN1cnJlbmNlX3JlbGF0aW9uPmBfCisgICAgY2FuIGJlIG1vZGVsZWQgYnkgc3VwcGx5aW5nIHRoZSBpbml0aWFsIHZhbHVlIGluIHRoZSBpdGVyYWJsZSBhbmQgdXNpbmcgb25seQorICAgIHRoZSBhY2N1bXVsYXRlZCB0b3RhbCBpbiAqZnVuYyogYXJndW1lbnQ6OgorCisgICAgICA+Pj4gZGF0YSA9IFszLCA0LCA2LCAyLCAxLCA5LCAwLCA3LCA1LCA4XQorICAgICAgPj4+IGxpc3QoYWNjdW11bGF0ZShkYXRhLCBvcGVyYXRvci5tdWwpKSAgICAgIyBydW5uaW5nIHByb2R1Y3QKKyAgICAgIFszLCAxMiwgNzIsIDE0NCwgMTQ0LCAxMjk2LCAwLCAwLCAwLCAwXQorICAgICAgPj4+IGxpc3QoYWNjdW11bGF0ZShkYXRhLCBtYXgpKSAgICAgICAgICAgICAgIyBydW5uaW5nIG1heGltdW0KKyAgICAgIFszLCA0LCA2LCA2LCA2LCA5LCA5LCA5LCA5LCA5XQorCisgICAgICAjIEFtb3J0aXplIGEgNSUgbG9hbiBvZiAxMDAwIHdpdGggNCBhbm51YWwgcGF5bWVudHMgb2YgOTAKKyAgICAgID4+PiBjYXNoZmxvd3MgPSBbMTAwMCwgLTkwLCAtOTAsIC05MCwgLTkwXQorICAgICAgPj4+IGxpc3QoYWNjdW11bGF0ZShjYXNoZmxvd3MsIGxhbWJkYSBiYWwsIHBtdDogYmFsKjEuMDUgKyBwbXQpKQorICAgICAgWzEwMDAsIDk2MC4wLCA5MTguMCwgODczLjkwMDAwMDAwMDAwMDEsIDgyNy41OTUwMDAwMDAwMDAxXQorCisgICAgICAjIENoYW90aWMgcmVjdXJyZW5jZSByZWxhdGlvbiBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0xvZ2lzdGljX21hcAorICAgICAgPj4+IGxvZ2lzdGljX21hcCA9IGxhbWJkYSB4LCBfOiAgciAqIHggKiAoMSAtIHgpCisgICAgICA+Pj4gciA9IDMuOAorICAgICAgPj4+IHgwID0gMC40CisgICAgICA+Pj4gaW5wdXRzID0gcmVwZWF0KHgwLCAzNikgICAgICMgb25seSB0aGUgaW5pdGlhbCB2YWx1ZSBpcyB1c2VkCisgICAgICA+Pj4gW2Zvcm1hdCh4LCAnLjJmJykgZm9yIHggaW4gYWNjdW11bGF0ZShpbnB1dHMsIGxvZ2lzdGljX21hcCldCisgICAgICBbJzAuNDAnLCAnMC45MScsICcwLjMwJywgJzAuODEnLCAnMC42MCcsICcwLjkyJywgJzAuMjknLCAnMC43OScsICcwLjYzJywKKyAgICAgICAnMC44OCcgLCcwLjM5JywgJzAuOTAnLCAnMC4zMycsICcwLjg0JywgJzAuNTInLCAnMC45NScsICcwLjE4JywgJzAuNTcnLAorICAgICAgICcwLjkzJywgJzAuMjUnLCAnMC43MScsICcwLjc5JywgJzAuNjMnLCAnMC44OCcsICcwLjM5JywgJzAuOTEnLCAnMC4zMicsCisgICAgICAgJzAuODMnLCAnMC41NCcsICcwLjk1JywgJzAuMjAnLCAnMC42MCcsICcwLjkxJywgJzAuMzAnLCAnMC44MCcsICcwLjYwJ10KKwogICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCisgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICBBZGRlZCB0aGUgb3B0aW9uYWwgKmZ1bmMqIHBhcmFtZXRlci4KKwogLi4gZnVuY3Rpb246OiBjaGFpbigqaXRlcmFibGVzKQogCiAgICBNYWtlIGFuIGl0ZXJhdG9yIHRoYXQgcmV0dXJucyBlbGVtZW50cyBmcm9tIHRoZSBmaXJzdCBpdGVyYWJsZSB1bnRpbCBpdCBpcwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvbG9nZ2luZy5oYW5kbGVycy5yc3QgYi9Eb2MvbGlicmFyeS9sb2dnaW5nLmhhbmRsZXJzLnJzdAppbmRleCBjNGRkNDM4Li41MWU0NzZiIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9sb2dnaW5nLmhhbmRsZXJzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9sb2dnaW5nLmhhbmRsZXJzLnJzdApAQCAtMTY0LDYgKzE2NCw4NyBAQAogICAgICAgY2hhbmdlZC4gIElmIGl0IGhhcywgdGhlIGV4aXN0aW5nIHN0cmVhbSBpcyBmbHVzaGVkIGFuZCBjbG9zZWQgYW5kIHRoZQogICAgICAgZmlsZSBvcGVuZWQgYWdhaW4sIGJlZm9yZSBvdXRwdXR0aW5nIHRoZSByZWNvcmQgdG8gdGhlIGZpbGUuCiAKKy4uIF9iYXNlLXJvdGF0aW5nLWhhbmRsZXI6CisKK0Jhc2VSb3RhdGluZ0hhbmRsZXIKK15eXl5eXl5eXl5eXl5eXl5eXl4KKworVGhlIDpjbGFzczpgQmFzZVJvdGF0aW5nSGFuZGxlcmAgY2xhc3MsIGxvY2F0ZWQgaW4gdGhlIDptb2Q6YGxvZ2dpbmcuaGFuZGxlcnNgCittb2R1bGUsIGlzIHRoZSBiYXNlIGNsYXNzIGZvciB0aGUgcm90YXRpbmcgZmlsZSBoYW5kbGVycywKKzpjbGFzczpgUm90YXRpbmdGaWxlSGFuZGxlcmAgYW5kIDpjbGFzczpgVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyYC4gWW91IHNob3VsZAorbm90IG5lZWQgdG8gaW5zdGFudGlhdGUgdGhpcyBjbGFzcywgYnV0IGl0IGhhcyBhdHRyaWJ1dGVzIGFuZCBtZXRob2RzIHlvdSBtYXkKK25lZWQgdG8gb3ZlcnJpZGUuCisKKy4uIGNsYXNzOjogQmFzZVJvdGF0aW5nSGFuZGxlcihmaWxlbmFtZSwgbW9kZSwgZW5jb2Rpbmc9Tm9uZSwgZGVsYXk9RmFsc2UpCisKKyAgIFRoZSBwYXJhbWV0ZXJzIGFyZSBhcyBmb3IgOmNsYXNzOmBGaWxlSGFuZGxlcmAuIFRoZSBhdHRyaWJ1dGVzIGFyZToKKworICAgLi4gYXR0cmlidXRlOjogbmFtZXIKKworICAgICAgSWYgdGhpcyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGEgY2FsbGFibGUsIHRoZSA6bWV0aDpgcm90YXRpb25fZmlsZW5hbWVgCisgICAgICBtZXRob2QgZGVsZWdhdGVzIHRvIHRoaXMgY2FsbGFibGUuIFRoZSBwYXJhbWV0ZXJzIHBhc3NlZCB0byB0aGUgY2FsbGFibGUKKyAgICAgIGFyZSB0aG9zZSBwYXNzZWQgdG8gOm1ldGg6YHJvdGF0aW9uX2ZpbGVuYW1lYC4KKworICAgICAgLi4gbm90ZTo6IFRoZSBuYW1lciBmdW5jdGlvbiBpcyBjYWxsZWQgcXVpdGUgYSBmZXcgdGltZXMgZHVyaW5nIHJvbGxvdmVyLAorICAgICAgICAgc28gaXQgc2hvdWxkIGJlIGFzIHNpbXBsZSBhbmQgYXMgZmFzdCBhcyBwb3NzaWJsZS4gSXQgc2hvdWxkIGFsc28KKyAgICAgICAgIHJldHVybiB0aGUgc2FtZSBvdXRwdXQgZXZlcnkgdGltZSBmb3IgYSBnaXZlbiBpbnB1dCwgb3RoZXJ3aXNlIHRoZQorICAgICAgICAgcm9sbG92ZXIgYmVoYXZpb3VyIG1heSBub3Qgd29yayBhcyBleHBlY3RlZC4KKworICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworICAgLi4gYXR0cmlidXRlOjogQmFzZVJvdGF0aW5nSGFuZGxlci5yb3RhdG9yCisKKyAgICAgIElmIHRoaXMgYXR0cmlidXRlIGlzIHNldCB0byBhIGNhbGxhYmxlLCB0aGUgOm1ldGg6YHJvdGF0ZWAgbWV0aG9kCisgICAgICBkZWxlZ2F0ZXMgdG8gdGhpcyBjYWxsYWJsZS4gIFRoZSBwYXJhbWV0ZXJzIHBhc3NlZCB0byB0aGUgY2FsbGFibGUgYXJlCisgICAgICB0aG9zZSBwYXNzZWQgdG8gOm1ldGg6YHJvdGF0ZWAuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisgICAuLiBtZXRob2Q6OiBCYXNlUm90YXRpbmdIYW5kbGVyLnJvdGF0aW9uX2ZpbGVuYW1lKGRlZmF1bHRfbmFtZSkKKworICAgICAgTW9kaWZ5IHRoZSBmaWxlbmFtZSBvZiBhIGxvZyBmaWxlIHdoZW4gcm90YXRpbmcuCisKKyAgICAgIFRoaXMgaXMgcHJvdmlkZWQgc28gdGhhdCBhIGN1c3RvbSBmaWxlbmFtZSBjYW4gYmUgcHJvdmlkZWQuCisKKyAgICAgIFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIGNhbGxzIHRoZSAnbmFtZXInIGF0dHJpYnV0ZSBvZiB0aGUgaGFuZGxlciwKKyAgICAgIGlmIGl0J3MgY2FsbGFibGUsIHBhc3NpbmcgdGhlIGRlZmF1bHQgbmFtZSB0byBpdC4gSWYgdGhlIGF0dHJpYnV0ZSBpc24ndAorICAgICAgY2FsbGFibGUgKHRoZSBkZWZhdWx0IGlzIGBgTm9uZWBgKSwgdGhlIG5hbWUgaXMgcmV0dXJuZWQgdW5jaGFuZ2VkLgorCisgICAgICA6cGFyYW0gZGVmYXVsdF9uYW1lOiBUaGUgZGVmYXVsdCBuYW1lIGZvciB0aGUgbG9nIGZpbGUuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKyAgIC4uIG1ldGhvZDo6IEJhc2VSb3RhdGluZ0hhbmRsZXIucm90YXRlKHNvdXJjZSwgZGVzdCkKKworICAgICAgV2hlbiByb3RhdGluZywgcm90YXRlIHRoZSBjdXJyZW50IGxvZy4KKworICAgICAgVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gY2FsbHMgdGhlICdyb3RhdG9yJyBhdHRyaWJ1dGUgb2YgdGhlIGhhbmRsZXIsCisgICAgICBpZiBpdCdzIGNhbGxhYmxlLCBwYXNzaW5nIHRoZSBzb3VyY2UgYW5kIGRlc3QgYXJndW1lbnRzIHRvIGl0LiBJZiB0aGUKKyAgICAgIGF0dHJpYnV0ZSBpc24ndCBjYWxsYWJsZSAodGhlIGRlZmF1bHQgaXMgYGBOb25lYGApLCB0aGUgc291cmNlIGlzIHNpbXBseQorICAgICAgcmVuYW1lZCB0byB0aGUgZGVzdGluYXRpb24uCisKKyAgICAgIDpwYXJhbSBzb3VyY2U6IFRoZSBzb3VyY2UgZmlsZW5hbWUuIFRoaXMgaXMgbm9ybWFsbHkgdGhlIGJhc2UKKyAgICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lLCBlLmcuICd0ZXN0LmxvZycKKyAgICAgIDpwYXJhbSBkZXN0OiAgIFRoZSBkZXN0aW5hdGlvbiBmaWxlbmFtZS4gVGhpcyBpcyBub3JtYWxseQorICAgICAgICAgICAgICAgICAgICAgd2hhdCB0aGUgc291cmNlIGlzIHJvdGF0ZWQgdG8sIGUuZy4gJ3Rlc3QubG9nLjEnLgorCisgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworVGhlIHJlYXNvbiB0aGUgYXR0cmlidXRlcyBleGlzdCBpcyB0byBzYXZlIHlvdSBoYXZpbmcgdG8gc3ViY2xhc3MgLSB5b3UgY2FuIHVzZQordGhlIHNhbWUgY2FsbGFibGVzIGZvciBpbnN0YW5jZXMgb2YgOmNsYXNzOmBSb3RhdGluZ0ZpbGVIYW5kbGVyYCBhbmQKKzpjbGFzczpgVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyYC4gSWYgZWl0aGVyIHRoZSBuYW1lciBvciByb3RhdG9yIGNhbGxhYmxlCityYWlzZXMgYW4gZXhjZXB0aW9uLCB0aGlzIHdpbGwgYmUgaGFuZGxlZCBpbiB0aGUgc2FtZSB3YXkgYXMgYW55IG90aGVyCitleGNlcHRpb24gZHVyaW5nIGFuIDptZXRoOmBlbWl0YCBjYWxsLCBpLmUuIHZpYSB0aGUgOm1ldGg6YGhhbmRsZUVycm9yYCBtZXRob2QKK29mIHRoZSBoYW5kbGVyLgorCitJZiB5b3UgbmVlZCB0byBtYWtlIG1vcmUgc2lnbmlmaWNhbnQgY2hhbmdlcyB0byByb3RhdGlvbiBwcm9jZXNzaW5nLCB5b3UgY2FuCitvdmVycmlkZSB0aGUgbWV0aG9kcy4KKworRm9yIGFuIGV4YW1wbGUsIHNlZSA6cmVmOmBjb29rYm9vay1yb3RhdG9yLW5hbWVyYC4KKworCiAuLiBfcm90YXRpbmctZmlsZS1oYW5kbGVyOgogCiBSb3RhdGluZ0ZpbGVIYW5kbGVyCkBAIC00NTIsNiArNTMzLDE1IEBACiAgICAgICAgICBiZWhhdmlvdXIpIGJ1dCBjYW4gYmUgc2V0IHRvIGBgRmFsc2VgYCBvbiBhIGBgU3lzTG9nSGFuZGxlcmBgIGluc3RhbmNlCiAgICAgICAgICBpbiBvcmRlciBmb3IgdGhhdCBpbnN0YW5jZSB0byAqbm90KiBhcHBlbmQgdGhlIE5VTCB0ZXJtaW5hdG9yLgogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgKFNlZTogOmlzc3VlOmAxMjQxOWAuKSBJbiBlYXJsaWVyIHZlcnNpb25zLCB0aGVyZSB3YXMgbm8gZmFjaWxpdHkgZm9yCisgICAgICAgICBhbiAiaWRlbnQiIG9yICJ0YWciIHByZWZpeCB0byBpZGVudGlmeSB0aGUgc291cmNlIG9mIHRoZSBtZXNzYWdlLiBUaGlzCisgICAgICAgICBjYW4gbm93IGJlIHNwZWNpZmllZCB1c2luZyBhIGNsYXNzLWxldmVsIGF0dHJpYnV0ZSwgZGVmYXVsdGluZyB0bworICAgICAgICAgYGAiImBgIHRvIHByZXNlcnZlIGV4aXN0aW5nIGJlaGF2aW91ciwgYnV0IHdoaWNoIGNhbiBiZSBvdmVycmlkZGVuIG9uCisgICAgICAgICBhIGBgU3lzTG9nSGFuZGxlcmBgIGluc3RhbmNlIGluIG9yZGVyIGZvciB0aGF0IGluc3RhbmNlIHRvIHByZXBlbmQKKyAgICAgICAgIHRoZSBpZGVudCB0byBldmVyeSBtZXNzYWdlIGhhbmRsZWQuIE5vdGUgdGhhdCB0aGUgcHJvdmlkZWQgaWRlbnQgbXVzdAorICAgICAgICAgYmUgdGV4dCwgbm90IGJ5dGVzLCBhbmQgaXMgcHJlcGVuZGVkIHRvIHRoZSBtZXNzYWdlIGV4YWN0bHkgYXMgaXMuCisKICAgIC4uIG1ldGhvZDo6IGVuY29kZVByaW9yaXR5KGZhY2lsaXR5LCBwcmlvcml0eSkKIAogICAgICAgRW5jb2RlcyB0aGUgZmFjaWxpdHkgYW5kIHByaW9yaXR5IGludG8gYW4gaW50ZWdlci4gWW91IGNhbiBwYXNzIGluIHN0cmluZ3MKQEAgLTY5MCw3ICs3ODAsNyBAQAogCiAgICAuLiBtZXRob2Q6OiBjbG9zZSgpCiAKLSAgICAgIENhbGxzIDptZXRoOmBmbHVzaGAsIHNldHMgdGhlIHRhcmdldCB0byA6Y29uc3Q6YE5vbmVgIGFuZCBjbGVhcnMgdGhlCisgICAgICBDYWxscyA6bWV0aDpgZmx1c2hgLCBzZXRzIHRoZSB0YXJnZXQgdG8gYGBOb25lYGAgYW5kIGNsZWFycyB0aGUKICAgICAgIGJ1ZmZlci4KIAogCkBAIC04NTksNiArOTQ5LDE1IEBACiAgICAgICBOb3RlIHRoYXQgaWYgeW91IGRvbid0IGNhbGwgdGhpcyBiZWZvcmUgeW91ciBhcHBsaWNhdGlvbiBleGl0cywgdGhlcmUKICAgICAgIG1heSBiZSBzb21lIHJlY29yZHMgc3RpbGwgbGVmdCBvbiB0aGUgcXVldWUsIHdoaWNoIHdvbid0IGJlIHByb2Nlc3NlZC4KIAorICAgLi4gbWV0aG9kOjogZW5xdWV1ZV9zZW50aW5lbCgpCisKKyAgICAgIFdyaXRlcyBhIHNlbnRpbmVsIHRvIHRoZSBxdWV1ZSB0byB0ZWxsIHRoZSBsaXN0ZW5lciB0byBxdWl0LiBUaGlzCisgICAgICBpbXBsZW1lbnRhdGlvbiB1c2VzIGBgcHV0X25vd2FpdCgpYGAuICBZb3UgbWF5IHdhbnQgdG8gb3ZlcnJpZGUgdGhpcworICAgICAgbWV0aG9kIGlmIHlvdSB3YW50IHRvIHVzZSB0aW1lb3V0cyBvciB3b3JrIHdpdGggY3VzdG9tIHF1ZXVlCisgICAgICBpbXBsZW1lbnRhdGlvbnMuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAKIC4uIHNlZWFsc286OgogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9sb2dnaW5nLnJzdCBiL0RvYy9saWJyYXJ5L2xvZ2dpbmcucnN0CmluZGV4IDEwMDViNzkuLmMyYzZhNmYgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2xvZ2dpbmcucnN0CisrKyBiL0RvYy9saWJyYXJ5L2xvZ2dpbmcucnN0CkBAIC0yMDAsNiArMjAwLDkgQEAKICAgIExvZ3MgYSBtZXNzYWdlIHdpdGggbGV2ZWwgOmNvbnN0OmBXQVJOSU5HYCBvbiB0aGlzIGxvZ2dlci4gVGhlIGFyZ3VtZW50cyBhcmUKICAgIGludGVycHJldGVkIGFzIGZvciA6bWV0aDpgZGVidWdgLgogCisgICAuLiBub3RlOjogVGhlcmUgaXMgYW4gb2Jzb2xldGUgbWV0aG9kIGBgd2FybmBgIHdoaWNoIGlzIGZ1bmN0aW9uYWxseQorICAgICAgaWRlbnRpY2FsIHRvIGBgd2FybmluZ2BgLiBBcyBgYHdhcm5gYCBpcyBkZXByZWNhdGVkLCBwbGVhc2UgZG8gbm90IHVzZQorICAgICAgaXQgLSB1c2UgYGB3YXJuaW5nYGAgaW5zdGVhZC4KIAogLi4gbWV0aG9kOjogTG9nZ2VyLmVycm9yKG1zZywgKmFyZ3MsICoqa3dhcmdzKQogCkBAIC00NzksNiArNDgyLDE5IEBACiAgICAgICB3YW50IGFsbCBsb2dnaW5nIHRpbWVzIHRvIGJlIHNob3duIGluIEdNVCwgc2V0IHRoZSBgYGNvbnZlcnRlcmBgCiAgICAgICBhdHRyaWJ1dGUgaW4gdGhlIGBgRm9ybWF0dGVyYGAgY2xhc3MuCiAKKyAgICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAgICBQcmV2aW91c2x5LCB0aGUgZGVmYXVsdCBJU08gODYwMSBmb3JtYXQgd2FzIGhhcmQtY29kZWQgYXMgaW4gdGhpcworICAgICAgICAgZXhhbXBsZTogYGAyMDEwLTA5LTA2IDIyOjM4OjE1LDI5MmBgIHdoZXJlIHRoZSBwYXJ0IGJlZm9yZSB0aGUgY29tbWEgaXMKKyAgICAgICAgIGhhbmRsZWQgYnkgYSBzdHJwdGltZSBmb3JtYXQgc3RyaW5nIChgYCclWS0lbS0lZCAlSDolTTolUydgYCksIGFuZCB0aGUKKyAgICAgICAgIHBhcnQgYWZ0ZXIgdGhlIGNvbW1hIGlzIGEgbWlsbGlzZWNvbmQgdmFsdWUuIEJlY2F1c2Ugc3RycHRpbWUgZG9lcyBub3QKKyAgICAgICAgIGhhdmUgYSBmb3JtYXQgcGxhY2Vob2xkZXIgZm9yIG1pbGxpc2Vjb25kcywgdGhlIG1pbGxpc2Vjb25kIHZhbHVlIGlzCisgICAgICAgICBhcHBlbmRlZCB1c2luZyBhbm90aGVyIGZvcm1hdCBzdHJpbmcsIGBgJyVzLCUwM2QnYGAg4oCTIGFuZCBib3RoIG9mIHRoZXNlCisgICAgICAgICBmb3JtYXQgc3RyaW5ncyBoYXZlIGJlZW4gaGFyZGNvZGVkIGludG8gdGhpcyBtZXRob2QuIFdpdGggdGhlIGNoYW5nZSwKKyAgICAgICAgIHRoZXNlIHN0cmluZ3MgYXJlIGRlZmluZWQgYXMgY2xhc3MtbGV2ZWwgYXR0cmlidXRlcyB3aGljaCBjYW4gYmUKKyAgICAgICAgIG92ZXJyaWRkZW4gYXQgdGhlIGluc3RhbmNlIGxldmVsIHdoZW4gZGVzaXJlZC4gVGhlIG5hbWVzIG9mIHRoZQorICAgICAgICAgYXR0cmlidXRlcyBhcmUgYGBkZWZhdWx0X3RpbWVfZm9ybWF0YGAgKGZvciB0aGUgc3RycHRpbWUgZm9ybWF0IHN0cmluZykKKyAgICAgICAgIGFuZCBgYGRlZmF1bHRfbXNlY19mb3JtYXRgYCAoZm9yIGFwcGVuZGluZyB0aGUgbWlsbGlzZWNvbmQgdmFsdWUpLgorCiAgICAuLiBtZXRob2Q6OiBmb3JtYXRFeGNlcHRpb24oZXhjX2luZm8pCiAKICAgICAgIEZvcm1hdHMgdGhlIHNwZWNpZmllZCBleGNlcHRpb24gaW5mb3JtYXRpb24gKGEgc3RhbmRhcmQgZXhjZXB0aW9uIHR1cGxlIGFzCkBAIC04ODUsOCArOTAxLDEyIEBACiAKIC4uIGZ1bmN0aW9uOjogd2FybmluZyhtc2csICphcmdzLCAqKmt3YXJncykKIAotICAgTG9ncyBhIG1lc3NhZ2Ugd2l0aCBsZXZlbCA6Y29uc3Q6YFdBUk5JTkdgIG9uIHRoZSByb290IGxvZ2dlci4gVGhlIGFyZ3VtZW50cyBhcmUKLSAgIGludGVycHJldGVkIGFzIGZvciA6ZnVuYzpgZGVidWdgLgorICAgTG9ncyBhIG1lc3NhZ2Ugd2l0aCBsZXZlbCA6Y29uc3Q6YFdBUk5JTkdgIG9uIHRoZSByb290IGxvZ2dlci4gVGhlIGFyZ3VtZW50cworICAgYXJlIGludGVycHJldGVkIGFzIGZvciA6ZnVuYzpgZGVidWdgLgorCisgICAuLiBub3RlOjogVGhlcmUgaXMgYW4gb2Jzb2xldGUgZnVuY3Rpb24gYGB3YXJuYGAgd2hpY2ggaXMgZnVuY3Rpb25hbGx5CisgICAgICBpZGVudGljYWwgdG8gYGB3YXJuaW5nYGAuIEFzIGBgd2FybmBgIGlzIGRlcHJlY2F0ZWQsIHBsZWFzZSBkbyBub3QgdXNlCisgICAgICBpdCAtIHVzZSBgYHdhcm5pbmdgYCBpbnN0ZWFkLgogCiAKIC4uIGZ1bmN0aW9uOjogZXJyb3IobXNnLCAqYXJncywgKiprd2FyZ3MpCkBAIC0xMDExLDEyICsxMDMxLDI3IEBACiAgICB8IGBgc3RyZWFtYGAgICB8IFVzZSB0aGUgc3BlY2lmaWVkIHN0cmVhbSB0byBpbml0aWFsaXplIHRoZSAgfAogICAgfCAgICAgICAgICAgICAgfCBTdHJlYW1IYW5kbGVyLiBOb3RlIHRoYXQgdGhpcyBhcmd1bWVudCBpcyAgIHwKICAgIHwgICAgICAgICAgICAgIHwgaW5jb21wYXRpYmxlIHdpdGggJ2ZpbGVuYW1lJyAtIGlmIGJvdGggYXJlICB8Ci0gICB8ICAgICAgICAgICAgICB8IHByZXNlbnQsICdzdHJlYW0nIGlzIGlnbm9yZWQuICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgfCBwcmVzZW50LCBhIGBgVmFsdWVFcnJvcmBgIGlzIHJhaXNlZC4gICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IGBgaGFuZGxlcnNgYCB8IElmIHNwZWNpZmllZCwgdGhpcyBzaG91bGQgYmUgYW4gaXRlcmFibGUgb2YgfAorICAgfCAgICAgICAgICAgICAgfCBhbHJlYWR5IGNyZWF0ZWQgaGFuZGxlcnMgdG8gYWRkIHRvIHRoZSByb290IHwKKyAgIHwgICAgICAgICAgICAgIHwgbG9nZ2VyLiBBbnkgaGFuZGxlcnMgd2hpY2ggZG9uJ3QgYWxyZWFkeSAgICB8CisgICB8ICAgICAgICAgICAgICB8IGhhdmUgYSBmb3JtYXR0ZXIgc2V0IHdpbGwgYmUgYXNzaWduZWQgdGhlICAgfAorICAgfCAgICAgICAgICAgICAgfCBkZWZhdWx0IGZvcm1hdHRlciBjcmVhdGVkIGluIHRoaXMgZnVuY3Rpb24uIHwKKyAgIHwgICAgICAgICAgICAgIHwgTm90ZSB0aGF0IHRoaXMgYXJndW1lbnQgaXMgaW5jb21wYXRpYmxlICAgICB8CisgICB8ICAgICAgICAgICAgICB8IHdpdGggJ2ZpbGVuYW1lJyBvciAnc3RyZWFtJyAtIGlmIGJvdGggYXJlICAgfAorICAgfCAgICAgICAgICAgICAgfCBwcmVzZW50LCBhIGBgVmFsdWVFcnJvcmBgIGlzIHJhaXNlZC4gICAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCiAgICAgICBUaGUgYGBzdHlsZWBgIGFyZ3VtZW50IHdhcyBhZGRlZC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSBgYGhhbmRsZXJzYGAgYXJndW1lbnQgd2FzIGFkZGVkLiBBZGRpdGlvbmFsIGNoZWNrcyB3ZXJlIGFkZGVkIHRvCisgICAgICBjYXRjaCBzaXR1YXRpb25zIHdoZXJlIGluY29tcGF0aWJsZSBhcmd1bWVudHMgYXJlIHNwZWNpZmllZCAoZS5nLgorICAgICAgYGBoYW5kbGVyc2BgIHRvZ2V0aGVyIHdpdGggYGBzdHJlYW1gYCBvciBgYGZpbGVuYW1lYGAsIG9yIGBgc3RyZWFtYGAKKyAgICAgIHRvZ2V0aGVyIHdpdGggYGBmaWxlbmFtZWBgKS4KKwogCiAuLiBmdW5jdGlvbjo6IHNodXRkb3duKCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvbHptYS5yc3QgYi9Eb2MvbGlicmFyeS9sem1hLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYWUwNWI2Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvbHptYS5yc3QKQEAgLTAsMCArMSwzNDkgQEAKKzptb2Q6YGx6bWFgIC0tLSBDb21wcmVzc2lvbiB1c2luZyB0aGUgTFpNQSBhbGdvcml0aG0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogbHptYQorICAgOnN5bm9wc2lzOiBBIFB5dGhvbiB3cmFwcGVyIGZvciB0aGUgbGlibHptYSBjb21wcmVzc2lvbiBsaWJyYXJ5LgorLi4gbW9kdWxlYXV0aG9yOjogTmFkZWVtIFZhd2RhIDxuYWRlZW0udmF3ZGFAZ21haWwuY29tPgorLi4gc2VjdGlvbmF1dGhvcjo6IE5hZGVlbSBWYXdkYSA8bmFkZWVtLnZhd2RhQGdtYWlsLmNvbT4KKworLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgY2xhc3NlcyBhbmQgY29udmVuaWVuY2UgZnVuY3Rpb25zIGZvciBjb21wcmVzc2luZyBhbmQKK2RlY29tcHJlc3NpbmcgZGF0YSB1c2luZyB0aGUgTFpNQSBjb21wcmVzc2lvbiBhbGdvcml0aG0uIEFsc28gaW5jbHVkZWQgaXMgYSBmaWxlCitpbnRlcmZhY2Ugc3VwcG9ydGluZyB0aGUgYGAueHpgYCBhbmQgbGVnYWN5IGBgLmx6bWFgYCBmaWxlIGZvcm1hdHMgdXNlZCBieSB0aGUKKzpwcm9ncmFtOmB4emAgdXRpbGl0eSwgYXMgd2VsbCBhcyByYXcgY29tcHJlc3NlZCBzdHJlYW1zLgorCitUaGUgaW50ZXJmYWNlIHByb3ZpZGVkIGJ5IHRoaXMgbW9kdWxlIGlzIHZlcnkgc2ltaWxhciB0byB0aGF0IG9mIHRoZSA6bW9kOmBiejJgCittb2R1bGUuIEhvd2V2ZXIsIG5vdGUgdGhhdCA6Y2xhc3M6YExaTUFGaWxlYCBpcyAqbm90KiB0aHJlYWQtc2FmZSwgdW5saWtlCis6Y2xhc3M6YGJ6Mi5CWjJGaWxlYCwgc28gaWYgeW91IG5lZWQgdG8gdXNlIGEgc2luZ2xlIDpjbGFzczpgTFpNQUZpbGVgIGluc3RhbmNlCitmcm9tIG11bHRpcGxlIHRocmVhZHMsIGl0IGlzIG5lY2Vzc2FyeSB0byBwcm90ZWN0IGl0IHdpdGggYSBsb2NrLgorCisKKy4uIGV4Y2VwdGlvbjo6IExaTUFFcnJvcgorCisgICBUaGlzIGV4Y2VwdGlvbiBpcyByYWlzZWQgd2hlbiBhbiBlcnJvciBvY2N1cnMgZHVyaW5nIGNvbXByZXNzaW9uIG9yCisgICBkZWNvbXByZXNzaW9uLCBvciB3aGlsZSBpbml0aWFsaXppbmcgdGhlIGNvbXByZXNzb3IvZGVjb21wcmVzc29yIHN0YXRlLgorCisKK1JlYWRpbmcgYW5kIHdyaXRpbmcgY29tcHJlc3NlZCBmaWxlcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIGNsYXNzOjogTFpNQUZpbGUoZmlsZW5hbWU9Tm9uZSwgbW9kZT0iciIsIFwqLCBmaWxlb2JqPU5vbmUsIGZvcm1hdD1Ob25lLCBjaGVjaz0tMSwgcHJlc2V0PU5vbmUsIGZpbHRlcnM9Tm9uZSkKKworICAgT3BlbiBhbiBMWk1BLWNvbXByZXNzZWQgZmlsZS4KKworICAgQW4gOmNsYXNzOmBMWk1BRmlsZWAgY2FuIHdyYXAgYW4gZXhpc3RpbmcgOnRlcm06YGZpbGUgb2JqZWN0YCAoZ2l2ZW4gYnkKKyAgICpmaWxlb2JqKiksIG9yIG9wZXJhdGUgZGlyZWN0bHkgb24gYSBuYW1lZCBmaWxlIChuYW1lZCBieSAqZmlsZW5hbWUqKS4KKyAgIEV4YWN0bHkgb25lIG9mIHRoZXNlIHR3byBwYXJhbWV0ZXJzIHNob3VsZCBiZSBwcm92aWRlZC4gSWYgKmZpbGVvYmoqIGlzCisgICBwcm92aWRlZCwgaXQgaXMgbm90IGNsb3NlZCB3aGVuIHRoZSA6Y2xhc3M6YExaTUFGaWxlYCBpcyBjbG9zZWQuCisKKyAgIFRoZSAqbW9kZSogYXJndW1lbnQgY2FuIGJlIGVpdGhlciBgYCJyImBgIGZvciByZWFkaW5nIChkZWZhdWx0KSwgYGAidyJgYCBmb3IKKyAgIG92ZXJ3cml0aW5nLCBvciBgYCJhImBgIGZvciBhcHBlbmRpbmcuIElmICpmaWxlb2JqKiBpcyBwcm92aWRlZCwgYSBtb2RlIG9mCisgICBgYCJ3ImBgIGRvZXMgbm90IHRydW5jYXRlIHRoZSBmaWxlLCBhbmQgaXMgaW5zdGVhZCBlcXVpdmFsZW50IHRvIGBgImEiYGAuCisKKyAgIFdoZW4gb3BlbmluZyBhIGZpbGUgZm9yIHJlYWRpbmcsIHRoZSBpbnB1dCBmaWxlIG1heSBiZSB0aGUgY29uY2F0ZW5hdGlvbiBvZgorICAgbXVsdGlwbGUgc2VwYXJhdGUgY29tcHJlc3NlZCBzdHJlYW1zLiBUaGVzZSBhcmUgdHJhbnNwYXJlbnRseSBkZWNvZGVkIGFzIGEKKyAgIHNpbmdsZSBsb2dpY2FsIHN0cmVhbS4KKworICAgV2hlbiBvcGVuaW5nIGEgZmlsZSBmb3IgcmVhZGluZywgdGhlICpmb3JtYXQqIGFuZCAqZmlsdGVycyogYXJndW1lbnRzIGhhdmUKKyAgIHRoZSBzYW1lIG1lYW5pbmdzIGFzIGZvciA6Y2xhc3M6YExaTUFEZWNvbXByZXNzb3JgLiBJbiB0aGlzIGNhc2UsIHRoZSAqY2hlY2sqCisgICBhbmQgKnByZXNldCogYXJndW1lbnRzIHNob3VsZCBub3QgYmUgdXNlZC4KKworICAgV2hlbiBvcGVuaW5nIGEgZmlsZSBmb3Igd3JpdGluZywgdGhlICpmb3JtYXQqLCAqY2hlY2sqLCAqcHJlc2V0KiBhbmQKKyAgICpmaWx0ZXJzKiBhcmd1bWVudHMgaGF2ZSB0aGUgc2FtZSBtZWFuaW5ncyBhcyBmb3IgOmNsYXNzOmBMWk1BQ29tcHJlc3NvcmAuCisKKyAgIDpjbGFzczpgTFpNQUZpbGVgIHN1cHBvcnRzIGFsbCB0aGUgbWVtYmVycyBzcGVjaWZpZWQgYnkKKyAgIDpjbGFzczpgaW8uQnVmZmVyZWRJT0Jhc2VgLCBleGNlcHQgZm9yIDptZXRoOmBkZXRhY2hgIGFuZCA6bWV0aDpgdHJ1bmNhdGVgLgorICAgSXRlcmF0aW9uIGFuZCB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudCBhcmUgc3VwcG9ydGVkLgorCisgICBUaGUgZm9sbG93aW5nIG1ldGhvZCBpcyBhbHNvIHByb3ZpZGVkOgorCisgICAuLiBtZXRob2Q6OiBwZWVrKHNpemU9LTEpCisKKyAgICAgIFJldHVybiBidWZmZXJlZCBkYXRhIHdpdGhvdXQgYWR2YW5jaW5nIHRoZSBmaWxlIHBvc2l0aW9uLiBBdCBsZWFzdCBvbmUKKyAgICAgIGJ5dGUgb2YgZGF0YSB3aWxsIGJlIHJldHVybmVkLCB1bmxlc3MgRU9GIGhhcyBiZWVuIHJlYWNoZWQuIFRoZSBleGFjdAorICAgICAgbnVtYmVyIG9mIGJ5dGVzIHJldHVybmVkIGlzIHVuc3BlY2lmaWVkICh0aGUgKnNpemUqIGFyZ3VtZW50IGlzIGlnbm9yZWQpLgorCisKK0NvbXByZXNzaW5nIGFuZCBkZWNvbXByZXNzaW5nIGRhdGEgaW4gbWVtb3J5CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiBjbGFzczo6IExaTUFDb21wcmVzc29yKGZvcm1hdD1GT1JNQVRfWFosIGNoZWNrPS0xLCBwcmVzZXQ9Tm9uZSwgZmlsdGVycz1Ob25lKQorCisgICBDcmVhdGUgYSBjb21wcmVzc29yIG9iamVjdCwgd2hpY2ggY2FuIGJlIHVzZWQgdG8gY29tcHJlc3MgZGF0YSBpbmNyZW1lbnRhbGx5LgorCisgICBGb3IgYSBtb3JlIGNvbnZlbmllbnQgd2F5IG9mIGNvbXByZXNzaW5nIGEgc2luZ2xlIGNodW5rIG9mIGRhdGEsIHNlZQorICAgOmZ1bmM6YGNvbXByZXNzYC4KKworICAgVGhlICpmb3JtYXQqIGFyZ3VtZW50IHNwZWNpZmllcyB3aGF0IGNvbnRhaW5lciBmb3JtYXQgc2hvdWxkIGJlIHVzZWQuCisgICBQb3NzaWJsZSB2YWx1ZXMgYXJlOgorCisgICAqIDpjb25zdDpgRk9STUFUX1haYDogVGhlIGBgLnh6YGAgY29udGFpbmVyIGZvcm1hdC4KKyAgICAgIFRoaXMgaXMgdGhlIGRlZmF1bHQgZm9ybWF0LgorCisgICAqIDpjb25zdDpgRk9STUFUX0FMT05FYDogVGhlIGxlZ2FjeSBgYC5sem1hYGAgY29udGFpbmVyIGZvcm1hdC4KKyAgICAgIFRoaXMgZm9ybWF0IGlzIG1vcmUgbGltaXRlZCB0aGFuIGBgLnh6YGAgLS0gaXQgZG9lcyBub3Qgc3VwcG9ydCBpbnRlZ3JpdHkKKyAgICAgIGNoZWNrcyBvciBtdWx0aXBsZSBmaWx0ZXJzLgorCisgICAqIDpjb25zdDpgRk9STUFUX1JBV2A6IEEgcmF3IGRhdGEgc3RyZWFtLCBub3QgdXNpbmcgYW55IGNvbnRhaW5lciBmb3JtYXQuCisgICAgICBUaGlzIGZvcm1hdCBzcGVjaWZpZXIgZG9lcyBub3Qgc3VwcG9ydCBpbnRlZ3JpdHkgY2hlY2tzLCBhbmQgcmVxdWlyZXMgdGhhdAorICAgICAgeW91IGFsd2F5cyBzcGVjaWZ5IGEgY3VzdG9tIGZpbHRlciBjaGFpbiAoZm9yIGJvdGggY29tcHJlc3Npb24gYW5kCisgICAgICBkZWNvbXByZXNzaW9uKS4gQWRkaXRpb25hbGx5LCBkYXRhIGNvbXByZXNzZWQgaW4gdGhpcyBtYW5uZXIgY2Fubm90IGJlCisgICAgICBkZWNvbXByZXNzZWQgdXNpbmcgOmNvbnN0OmBGT1JNQVRfQVVUT2AgKHNlZSA6Y2xhc3M6YExaTUFEZWNvbXByZXNzb3JgKS4KKworICAgVGhlICpjaGVjayogYXJndW1lbnQgc3BlY2lmaWVzIHRoZSB0eXBlIG9mIGludGVncml0eSBjaGVjayB0byBpbmNsdWRlIGluIHRoZQorICAgY29tcHJlc3NlZCBkYXRhLiBUaGlzIGNoZWNrIGlzIHVzZWQgd2hlbiBkZWNvbXByZXNzaW5nLCB0byBlbnN1cmUgdGhhdCB0aGUKKyAgIGRhdGEgaGFzIG5vdCBiZWVuIGNvcnJ1cHRlZC4gUG9zc2libGUgdmFsdWVzIGFyZToKKworICAgKiA6Y29uc3Q6YENIRUNLX05PTkVgOiBObyBpbnRlZ3JpdHkgY2hlY2suCisgICAgIFRoaXMgaXMgdGhlIGRlZmF1bHQgKGFuZCB0aGUgb25seSBhY2NlcHRhYmxlIHZhbHVlKSBmb3IKKyAgICAgOmNvbnN0OmBGT1JNQVRfQUxPTkVgIGFuZCA6Y29uc3Q6YEZPUk1BVF9SQVdgLgorCisgICAqIDpjb25zdDpgQ0hFQ0tfQ1JDMzJgOiAzMi1iaXQgQ3ljbGljIFJlZHVuZGFuY3kgQ2hlY2suCisKKyAgICogOmNvbnN0OmBDSEVDS19DUkM2NGA6IDY0LWJpdCBDeWNsaWMgUmVkdW5kYW5jeSBDaGVjay4KKyAgICAgVGhpcyBpcyB0aGUgZGVmYXVsdCBmb3IgOmNvbnN0OmBGT1JNQVRfWFpgLgorCisgICAqIDpjb25zdDpgQ0hFQ0tfU0hBMjU2YDogMjU2LWJpdCBTZWN1cmUgSGFzaCBBbGdvcml0aG0uCisKKyAgIElmIHRoZSBzcGVjaWZpZWQgY2hlY2sgaXMgbm90IHN1cHBvcnRlZCwgYW4gOmNsYXNzOmBMWk1BRXJyb3JgIGlzIHJhaXNlZC4KKworICAgVGhlIGNvbXByZXNzaW9uIHNldHRpbmdzIGNhbiBiZSBzcGVjaWZpZWQgZWl0aGVyIGFzIGEgcHJlc2V0IGNvbXByZXNzaW9uCisgICBsZXZlbCAod2l0aCB0aGUgKnByZXNldCogYXJndW1lbnQpLCBvciBpbiBkZXRhaWwgYXMgYSBjdXN0b20gZmlsdGVyIGNoYWluCisgICAod2l0aCB0aGUgKmZpbHRlcnMqIGFyZ3VtZW50KS4KKworICAgVGhlICpwcmVzZXQqIGFyZ3VtZW50IChpZiBwcm92aWRlZCkgc2hvdWxkIGJlIGFuIGludGVnZXIgYmV0d2VlbiBgYDBgYCBhbmQKKyAgIGBgOWBgIChpbmNsdXNpdmUpLCBvcHRpb25hbGx5IE9SLWVkIHdpdGggdGhlIGNvbnN0YW50CisgICA6Y29uc3Q6YFBSRVNFVF9FWFRSRU1FYC4gSWYgbmVpdGhlciAqcHJlc2V0KiBub3IgKmZpbHRlcnMqIGFyZSBnaXZlbiwgdGhlCisgICBkZWZhdWx0IGJlaGF2aW9yIGlzIHRvIHVzZSA6Y29uc3Q6YFBSRVNFVF9ERUZBVUxUYCAocHJlc2V0IGxldmVsIGBgNmBgKS4KKyAgIEhpZ2hlciBwcmVzZXRzIHByb2R1Y2Ugc21hbGxlciBvdXRwdXQsIGJ1dCBtYWtlIHRoZSBjb21wcmVzc2lvbiBwcm9jZXNzCisgICBzbG93ZXIuCisKKyAgIC4uIG5vdGU6OgorCisgICAgICBJbiBhZGRpdGlvbiB0byBiZWluZyBtb3JlIENQVS1pbnRlbnNpdmUsIGNvbXByZXNzaW9uIHdpdGggaGlnaGVyIHByZXNldHMKKyAgICAgIGFsc28gcmVxdWlyZXMgbXVjaCBtb3JlIG1lbW9yeSAoYW5kIHByb2R1Y2VzIG91dHB1dCB0aGF0IG5lZWRzIG1vcmUgbWVtb3J5CisgICAgICB0byBkZWNvbXByZXNzKS4gV2l0aCBwcmVzZXQgYGA5YGAgZm9yIGV4YW1wbGUsIHRoZSBvdmVyaGVhZCBmb3IgYW4KKyAgICAgIDpjbGFzczpgTFpNQUNvbXByZXNzb3JgIG9iamVjdCBjYW4gYmUgYXMgaGlnaCBhcyA4MDBNaUIuIEZvciB0aGlzIHJlYXNvbiwKKyAgICAgIGl0IGlzIGdlbmVyYWxseSBiZXN0IHRvIHN0aWNrIHdpdGggdGhlIGRlZmF1bHQgcHJlc2V0LgorCisgICBUaGUgKmZpbHRlcnMqIGFyZ3VtZW50IChpZiBwcm92aWRlZCkgc2hvdWxkIGJlIGEgZmlsdGVyIGNoYWluIHNwZWNpZmllci4KKyAgIFNlZSA6cmVmOmBmaWx0ZXItY2hhaW4tc3BlY3NgIGZvciBkZXRhaWxzLgorCisgICAuLiBtZXRob2Q6OiBjb21wcmVzcyhkYXRhKQorCisgICAgICBDb21wcmVzcyAqZGF0YSogKGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0KSwgcmV0dXJuaW5nIGEgOmNsYXNzOmBieXRlc2AKKyAgICAgIG9iamVjdCBjb250YWluaW5nIGNvbXByZXNzZWQgZGF0YSBmb3IgYXQgbGVhc3QgcGFydCBvZiB0aGUgaW5wdXQuIFNvbWUgb2YKKyAgICAgICpkYXRhKiBtYXkgYmUgYnVmZmVyZWQgaW50ZXJuYWxseSwgZm9yIHVzZSBpbiBsYXRlciBjYWxscyB0bworICAgICAgOm1ldGg6YGNvbXByZXNzYCBhbmQgOm1ldGg6YGZsdXNoYC4gVGhlIHJldHVybmVkIGRhdGEgc2hvdWxkIGJlCisgICAgICBjb25jYXRlbmF0ZWQgd2l0aCB0aGUgb3V0cHV0IG9mIGFueSBwcmV2aW91cyBjYWxscyB0byA6bWV0aDpgY29tcHJlc3NgLgorCisgICAuLiBtZXRob2Q6OiBmbHVzaCgpCisKKyAgICAgIEZpbmlzaCB0aGUgY29tcHJlc3Npb24gcHJvY2VzcywgcmV0dXJuaW5nIGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0CisgICAgICBjb250YWluaW5nIGFueSBkYXRhIHN0b3JlZCBpbiB0aGUgY29tcHJlc3NvcidzIGludGVybmFsIGJ1ZmZlcnMuCisKKyAgICAgIFRoZSBjb21wcmVzc29yIGNhbm5vdCBiZSB1c2VkIGFmdGVyIHRoaXMgbWV0aG9kIGhhcyBiZWVuIGNhbGxlZC4KKworCisuLiBjbGFzczo6IExaTUFEZWNvbXByZXNzb3IoZm9ybWF0PUZPUk1BVF9BVVRPLCBtZW1saW1pdD1Ob25lLCBmaWx0ZXJzPU5vbmUpCisKKyAgIENyZWF0ZSBhIGRlY29tcHJlc3NvciBvYmplY3QsIHdoaWNoIGNhbiBiZSB1c2VkIHRvIGRlY29tcHJlc3MgZGF0YQorICAgaW5jcmVtZW50YWxseS4KKworICAgRm9yIGEgbW9yZSBjb252ZW5pZW50IHdheSBvZiBkZWNvbXByZXNzaW5nIGFuIGVudGlyZSBjb21wcmVzc2VkIHN0cmVhbSBhdAorICAgb25jZSwgc2VlIDpmdW5jOmBkZWNvbXByZXNzYC4KKworICAgVGhlICpmb3JtYXQqIGFyZ3VtZW50IHNwZWNpZmllcyB0aGUgY29udGFpbmVyIGZvcm1hdCB0aGF0IHNob3VsZCBiZSB1c2VkLiBUaGUKKyAgIGRlZmF1bHQgaXMgOmNvbnN0OmBGT1JNQVRfQVVUT2AsIHdoaWNoIGNhbiBkZWNvbXByZXNzIGJvdGggYGAueHpgYCBhbmQKKyAgIGBgLmx6bWFgYCBmaWxlcy4gT3RoZXIgcG9zc2libGUgdmFsdWVzIGFyZSA6Y29uc3Q6YEZPUk1BVF9YWmAsCisgICA6Y29uc3Q6YEZPUk1BVF9BTE9ORWAsIGFuZCA6Y29uc3Q6YEZPUk1BVF9SQVdgLgorCisgICBUaGUgKm1lbWxpbWl0KiBhcmd1bWVudCBzcGVjaWZpZXMgYSBsaW1pdCAoaW4gYnl0ZXMpIG9uIHRoZSBhbW91bnQgb2YgbWVtb3J5CisgICB0aGF0IHRoZSBkZWNvbXByZXNzb3IgY2FuIHVzZS4gV2hlbiB0aGlzIGFyZ3VtZW50IGlzIHVzZWQsIGRlY29tcHJlc3Npb24gd2lsbAorICAgZmFpbCB3aXRoIGFuIDpjbGFzczpgTFpNQUVycm9yYCBpZiBpdCBpcyBub3QgcG9zc2libGUgdG8gZGVjb21wcmVzcyB0aGUgaW5wdXQKKyAgIHdpdGhpbiB0aGUgZ2l2ZW4gbWVtb3J5IGxpbWl0LgorCisgICBUaGUgKmZpbHRlcnMqIGFyZ3VtZW50IHNwZWNpZmllcyB0aGUgZmlsdGVyIGNoYWluIHRoYXQgd2FzIHVzZWQgdG8gY3JlYXRlCisgICB0aGUgc3RyZWFtIGJlaW5nIGRlY29tcHJlc3NlZC4gVGhpcyBhcmd1bWVudCBpcyByZXF1aXJlZCBpZiAqZm9ybWF0KiBpcworICAgOmNvbnN0OmBGT1JNQVRfUkFXYCwgYnV0IHNob3VsZCBub3QgYmUgdXNlZCBmb3Igb3RoZXIgZm9ybWF0cy4KKyAgIFNlZSA6cmVmOmBmaWx0ZXItY2hhaW4tc3BlY3NgIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGZpbHRlciBjaGFpbnMuCisKKyAgIC4uIG5vdGU6OgorICAgICAgVGhpcyBjbGFzcyBkb2VzIG5vdCB0cmFuc3BhcmVudGx5IGhhbmRsZSBpbnB1dHMgY29udGFpbmluZyBtdWx0aXBsZQorICAgICAgY29tcHJlc3NlZCBzdHJlYW1zLCB1bmxpa2UgOmZ1bmM6YGRlY29tcHJlc3NgIGFuZCA6Y2xhc3M6YExaTUFGaWxlYC4gVG8KKyAgICAgIGRlY29tcHJlc3MgYSBtdWx0aS1zdHJlYW0gaW5wdXQgd2l0aCA6Y2xhc3M6YExaTUFEZWNvbXByZXNzb3JgLCB5b3UgbXVzdAorICAgICAgY3JlYXRlIGEgbmV3IGRlY29tcHJlc3NvciBmb3IgZWFjaCBzdHJlYW0uCisKKyAgIC4uIG1ldGhvZDo6IGRlY29tcHJlc3MoZGF0YSkKKworICAgICAgRGVjb21wcmVzcyAqZGF0YSogKGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0KSwgcmV0dXJuaW5nIGEgOmNsYXNzOmBieXRlc2AKKyAgICAgIG9iamVjdCBjb250YWluaW5nIHRoZSBkZWNvbXByZXNzZWQgZGF0YSBmb3IgYXQgbGVhc3QgcGFydCBvZiB0aGUgaW5wdXQuCisgICAgICBTb21lIG9mICpkYXRhKiBtYXkgYmUgYnVmZmVyZWQgaW50ZXJuYWxseSwgZm9yIHVzZSBpbiBsYXRlciBjYWxscyB0bworICAgICAgOm1ldGg6YGRlY29tcHJlc3NgLiBUaGUgcmV0dXJuZWQgZGF0YSBzaG91bGQgYmUgY29uY2F0ZW5hdGVkIHdpdGggdGhlCisgICAgICBvdXRwdXQgb2YgYW55IHByZXZpb3VzIGNhbGxzIHRvIDptZXRoOmBkZWNvbXByZXNzYC4KKworICAgLi4gYXR0cmlidXRlOjogY2hlY2sKKworICAgICAgVGhlIElEIG9mIHRoZSBpbnRlZ3JpdHkgY2hlY2sgdXNlZCBieSB0aGUgaW5wdXQgc3RyZWFtLiBUaGlzIG1heSBiZQorICAgICAgOmNvbnN0OmBDSEVDS19VTktOT1dOYCB1bnRpbCBlbm91Z2ggb2YgdGhlIGlucHV0IGhhcyBiZWVuIGRlY29kZWQgdG8KKyAgICAgIGRldGVybWluZSB3aGF0IGludGVncml0eSBjaGVjayBpdCB1c2VzLgorCisgICAuLiBhdHRyaWJ1dGU6OiBlb2YKKworICAgICAgVHJ1ZSBpZiB0aGUgZW5kLW9mLXN0cmVhbSBtYXJrZXIgaGFzIGJlZW4gcmVhY2hlZC4KKworICAgLi4gYXR0cmlidXRlOjogdW51c2VkX2RhdGEKKworICAgICAgRGF0YSBmb3VuZCBhZnRlciB0aGUgZW5kIG9mIHRoZSBjb21wcmVzc2VkIHN0cmVhbS4KKworICAgICAgQmVmb3JlIHRoZSBlbmQgb2YgdGhlIHN0cmVhbSBpcyByZWFjaGVkLCB0aGlzIHdpbGwgYmUgYGBiIiJgYC4KKworCisuLiBmdW5jdGlvbjo6IGNvbXByZXNzKGRhdGEsIGZvcm1hdD1GT1JNQVRfWFosIGNoZWNrPS0xLCBwcmVzZXQ9Tm9uZSwgZmlsdGVycz1Ob25lKQorCisgICBDb21wcmVzcyAqZGF0YSogKGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0KSwgcmV0dXJuaW5nIHRoZSBjb21wcmVzc2VkIGRhdGEgYXMgYQorICAgOmNsYXNzOmBieXRlc2Agb2JqZWN0LgorCisgICBTZWUgOmNsYXNzOmBMWk1BQ29tcHJlc3NvcmAgYWJvdmUgZm9yIGEgZGVzY3JpcHRpb24gb2YgdGhlICpmb3JtYXQqLCAqY2hlY2sqLAorICAgKnByZXNldCogYW5kICpmaWx0ZXJzKiBhcmd1bWVudHMuCisKKworLi4gZnVuY3Rpb246OiBkZWNvbXByZXNzKGRhdGEsIGZvcm1hdD1GT1JNQVRfQVVUTywgbWVtbGltaXQ9Tm9uZSwgZmlsdGVycz1Ob25lKQorCisgICBEZWNvbXByZXNzICpkYXRhKiAoYSA6Y2xhc3M6YGJ5dGVzYCBvYmplY3QpLCByZXR1cm5pbmcgdGhlIHVuY29tcHJlc3NlZCBkYXRhCisgICBhcyBhIDpjbGFzczpgYnl0ZXNgIG9iamVjdC4KKworICAgSWYgKmRhdGEqIGlzIHRoZSBjb25jYXRlbmF0aW9uIG9mIG11bHRpcGxlIGRpc3RpbmN0IGNvbXByZXNzZWQgc3RyZWFtcywKKyAgIGRlY29tcHJlc3MgYWxsIG9mIHRoZXNlIHN0cmVhbXMsIGFuZCByZXR1cm4gdGhlIGNvbmNhdGVuYXRpb24gb2YgdGhlIHJlc3VsdHMuCisKKyAgIFNlZSA6Y2xhc3M6YExaTUFEZWNvbXByZXNzb3JgIGFib3ZlIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZSAqZm9ybWF0KiwKKyAgICptZW1saW1pdCogYW5kICpmaWx0ZXJzKiBhcmd1bWVudHMuCisKKworTWlzY2VsbGFuZW91cworLS0tLS0tLS0tLS0tLQorCisuLiBmdW5jdGlvbjo6IGNoZWNrX2lzX3N1cHBvcnRlZChjaGVjaykKKworICAgUmV0dXJucyB0cnVlIGlmIHRoZSBnaXZlbiBpbnRlZ3JpdHkgY2hlY2sgaXMgc3VwcG9ydGVkIG9uIHRoaXMgc3lzdGVtLgorCisgICA6Y29uc3Q6YENIRUNLX05PTkVgIGFuZCA6Y29uc3Q6YENIRUNLX0NSQzMyYCBhcmUgYWx3YXlzIHN1cHBvcnRlZC4KKyAgIDpjb25zdDpgQ0hFQ0tfQ1JDNjRgIGFuZCA6Y29uc3Q6YENIRUNLX1NIQTI1NmAgbWF5IGJlIHVuYXZhaWxhYmxlIGlmIHlvdSBhcmUKKyAgIHVzaW5nIGEgdmVyc2lvbiBvZiA6cHJvZ3JhbTpgbGlibHptYWAgdGhhdCB3YXMgY29tcGlsZWQgd2l0aCBhIGxpbWl0ZWQKKyAgIGZlYXR1cmUgc2V0LgorCisKKy4uIF9maWx0ZXItY2hhaW4tc3BlY3M6CisKK1NwZWNpZnlpbmcgY3VzdG9tIGZpbHRlciBjaGFpbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworQSBmaWx0ZXIgY2hhaW4gc3BlY2lmaWVyIGlzIGEgc2VxdWVuY2Ugb2YgZGljdGlvbmFyaWVzLCB3aGVyZSBlYWNoIGRpY3Rpb25hcnkKK2NvbnRhaW5zIHRoZSBJRCBhbmQgb3B0aW9ucyBmb3IgYSBzaW5nbGUgZmlsdGVyLiBFYWNoIGRpY3Rpb25hcnkgbXVzdCBjb250YWluCit0aGUga2V5IGBgImlkImBgLCBhbmQgbWF5IGNvbnRhaW4gYWRkaXRpb25hbCBrZXlzIHRvIHNwZWNpZnkgZmlsdGVyLWRlcGVuZGVudAorb3B0aW9ucy4gVmFsaWQgZmlsdGVyIElEcyBhcmUgYXMgZm9sbG93czoKKworKiBDb21wcmVzc2lvbiBmaWx0ZXJzOgorICAgKiA6Y29uc3Q6YEZJTFRFUl9MWk1BMWAgKGZvciB1c2Ugd2l0aCA6Y29uc3Q6YEZPUk1BVF9BTE9ORWApCisgICAqIDpjb25zdDpgRklMVEVSX0xaTUEyYCAoZm9yIHVzZSB3aXRoIDpjb25zdDpgRk9STUFUX1haYCBhbmQgOmNvbnN0OmBGT1JNQVRfUkFXYCkKKworKiBEZWx0YSBmaWx0ZXI6CisgICAqIDpjb25zdDpgRklMVEVSX0RFTFRBYAorCisqIEJyYW5jaC1DYWxsLUp1bXAgKEJDSikgZmlsdGVyczoKKyAgICogOmNvbnN0OmBGSUxURVJfWDg2YAorICAgKiA6Y29uc3Q6YEZJTFRFUl9JQTY0YAorICAgKiA6Y29uc3Q6YEZJTFRFUl9BUk1gCisgICAqIDpjb25zdDpgRklMVEVSX0FSTVRIVU1CYAorICAgKiA6Y29uc3Q6YEZJTFRFUl9QT1dFUlBDYAorICAgKiA6Y29uc3Q6YEZJTFRFUl9TUEFSQ2AKKworQSBmaWx0ZXIgY2hhaW4gY2FuIGNvbnNpc3Qgb2YgdXAgdG8gNCBmaWx0ZXJzLCBhbmQgY2Fubm90IGJlIGVtcHR5LiBUaGUgbGFzdAorZmlsdGVyIGluIHRoZSBjaGFpbiBtdXN0IGJlIGEgY29tcHJlc3Npb24gZmlsdGVyLCBhbmQgYW55IG90aGVyIGZpbHRlcnMgbXVzdCBiZQorZGVsdGEgb3IgQkNKIGZpbHRlcnMuCisKK0NvbXByZXNzaW9uIGZpbHRlcnMgc3VwcG9ydCB0aGUgZm9sbG93aW5nIG9wdGlvbnMgKHNwZWNpZmllZCBhcyBhZGRpdGlvbmFsCitlbnRyaWVzIGluIHRoZSBkaWN0aW9uYXJ5IHJlcHJlc2VudGluZyB0aGUgZmlsdGVyKToKKworICAgKiBgYHByZXNldGBgOiBBIGNvbXByZXNzaW9uIHByZXNldCB0byB1c2UgYXMgYSBzb3VyY2Ugb2YgZGVmYXVsdCB2YWx1ZXMgZm9yCisgICAgIG9wdGlvbnMgdGhhdCBhcmUgbm90IHNwZWNpZmllZCBleHBsaWNpdGx5LgorICAgKiBgYGRpY3Rfc2l6ZWBgOiBEaWN0aW9uYXJ5IHNpemUgaW4gYnl0ZXMuIFRoaXMgc2hvdWxkIGJlIGJldHdlZW4gNEtpQiBhbmQKKyAgICAgMS41R2lCIChpbmNsdXNpdmUpLgorICAgKiBgYGxjYGA6IE51bWJlciBvZiBsaXRlcmFsIGNvbnRleHQgYml0cy4KKyAgICogYGBscGBgOiBOdW1iZXIgb2YgbGl0ZXJhbCBwb3NpdGlvbiBiaXRzLiBUaGUgc3VtIGBgbGMgKyBscGBgIG11c3QgYmUgYXQKKyAgICAgbW9zdCA0LgorICAgKiBgYHBiYGA6IE51bWJlciBvZiBwb3NpdGlvbiBiaXRzOyBtdXN0IGJlIGF0IG1vc3QgNC4KKyAgICogYGBtb2RlYGA6IDpjb25zdDpgTU9ERV9GQVNUYCBvciA6Y29uc3Q6YE1PREVfTk9STUFMYC4KKyAgICogYGBuaWNlX2xlbmBgOiBXaGF0IHNob3VsZCBiZSBjb25zaWRlcmVkIGEgIm5pY2UgbGVuZ3RoIiBmb3IgYSBtYXRjaC4KKyAgICAgVGhpcyBzaG91bGQgYmUgMjczIG9yIGxlc3MuCisgICAqIGBgbWZgYDogV2hhdCBtYXRjaCBmaW5kZXIgdG8gdXNlIC0tIDpjb25zdDpgTUZfSEMzYCwgOmNvbnN0OmBNRl9IQzRgLAorICAgICA6Y29uc3Q6YE1GX0JUMmAsIDpjb25zdDpgTUZfQlQzYCwgb3IgOmNvbnN0OmBNRl9CVDRgLgorICAgKiBgYGRlcHRoYGA6IE1heGltdW0gc2VhcmNoIGRlcHRoIHVzZWQgYnkgbWF0Y2ggZmluZGVyLiAwIChkZWZhdWx0KSBtZWFucyB0bworICAgICBzZWxlY3QgYXV0b21hdGljYWxseSBiYXNlZCBvbiBvdGhlciBmaWx0ZXIgb3B0aW9ucy4KKworVGhlIGRlbHRhIGZpbHRlciBzdG9yZXMgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gYnl0ZXMsIHByb2R1Y2luZyBtb3JlIHJlcGV0aXRpdmUKK2lucHV0IGZvciB0aGUgY29tcHJlc3NvciBpbiBjZXJ0YWluIGNpcmN1bXN0YW5jZXMuIEl0IG9ubHkgc3VwcG9ydHMgYSBzaW5nbGUKK1RoZSBkZWx0YSBmaWx0ZXIgc3VwcG9ydHMgb25seSBvbmUgb3B0aW9uLCBgYGRpc3RgYC4gVGhpcyBpbmRpY2F0ZXMgdGhlIGRpc3RhbmNlCitiZXR3ZWVuIGJ5dGVzIHRvIGJlIHN1YnRyYWN0ZWQuIFRoZSBkZWZhdWx0IGlzIDEsIGkuZS4gdGFrZSB0aGUgZGlmZmVyZW5jZXMKK2JldHdlZW4gYWRqYWNlbnQgYnl0ZXMuCisKK1RoZSBCQ0ogZmlsdGVycyBhcmUgaW50ZW5kZWQgdG8gYmUgYXBwbGllZCB0byBtYWNoaW5lIGNvZGUuIFRoZXkgY29udmVydAorcmVsYXRpdmUgYnJhbmNoZXMsIGNhbGxzIGFuZCBqdW1wcyBpbiB0aGUgY29kZSB0byB1c2UgYWJzb2x1dGUgYWRkcmVzc2luZywgd2l0aAordGhlIGFpbSBvZiBpbmNyZWFzaW5nIHRoZSByZWR1bmRhbmN5IHRoYXQgY2FuIGJlIGV4cGxvaXRlZCBieSB0aGUgY29tcHJlc3Nvci4KK1RoZXNlIGZpbHRlcnMgc3VwcG9ydCBvbmUgb3B0aW9uLCBgYHN0YXJ0X29mZnNldGBgLiBUaGlzIHNwZWNpZmllcyB0aGUgYWRkcmVzcwordGhhdCBzaG91bGQgYmUgbWFwcGVkIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGlucHV0IGRhdGEuIFRoZSBkZWZhdWx0IGlzIDAuCisKKworRXhhbXBsZXMKKy0tLS0tLS0tCisKK1JlYWRpbmcgaW4gYSBjb21wcmVzc2VkIGZpbGU6OgorCisgICBpbXBvcnQgbHptYQorICAgd2l0aCBsem1hLkxaTUFGaWxlKCJmaWxlLnh6IikgYXMgZjoKKyAgICAgIGZpbGVfY29udGVudCA9IGYucmVhZCgpCisKK0NyZWF0aW5nIGEgY29tcHJlc3NlZCBmaWxlOjoKKworICAgaW1wb3J0IGx6bWEKKyAgIGRhdGEgPSBiIkluc2VydCBEYXRhIEhlcmUiCisgICB3aXRoIGx6bWEuTFpNQUZpbGUoImZpbGUueHoiLCAidyIpIGFzIGY6CisgICAgICBmLndyaXRlKGRhdGEpCisKK0NvbXByZXNzaW5nIGRhdGEgaW4gbWVtb3J5OjoKKworICAgaW1wb3J0IGx6bWEKKyAgIGRhdGFfaW4gPSBiIkluc2VydCBEYXRhIEhlcmUiCisgICBkYXRhX291dCA9IGx6bWEuY29tcHJlc3MoZGF0YV9pbikKKworSW5jcmVtZW50YWwgY29tcHJlc3Npb246OgorCisgICBpbXBvcnQgbHptYQorICAgbHpjID0gbHptYS5MWk1BQ29tcHJlc3NvcigpCisgICBvdXQxID0gbHpjLmNvbXByZXNzKGIiU29tZSBkYXRhXG4iKQorICAgb3V0MiA9IGx6Yy5jb21wcmVzcyhiIkFub3RoZXIgcGllY2Ugb2YgZGF0YVxuIikKKyAgIG91dDMgPSBsemMuY29tcHJlc3MoYiJFdmVuIG1vcmUgZGF0YVxuIikKKyAgIG91dDQgPSBsemMuZmx1c2goKQorICAgIyBDb25jYXRlbmF0ZSBhbGwgdGhlIHBhcnRpYWwgcmVzdWx0czoKKyAgIHJlc3VsdCA9IGIiIi5qb2luKFtvdXQxLCBvdXQyLCBvdXQzLCBvdXQ0XSkKKworV3JpdGluZyBjb21wcmVzc2VkIGRhdGEgdG8gYW4gYWxyZWFkeS1vcGVuIGZpbGU6OgorCisgICBpbXBvcnQgbHptYQorICAgd2l0aCBvcGVuKCJmaWxlLnh6IiwgIndiIikgYXMgZjoKKyAgICAgICBmLndyaXRlKGIiVGhpcyBkYXRhIHdpbGwgbm90IGJlIGNvbXByZXNzZWRcbiIpCisgICAgICAgd2l0aCBsem1hLkxaTUFGaWxlKGZpbGVvYmo9ZiwgbW9kZT0idyIpIGFzIGx6ZjoKKyAgICAgICAgICAgbHpmLndyaXRlKGIiVGhpcyAqd2lsbCogYmUgY29tcHJlc3NlZFxuIikKKyAgICAgICBmLndyaXRlKGIiTm90IGNvbXByZXNzZWRcbiIpCisKK0NyZWF0aW5nIGEgY29tcHJlc3NlZCBmaWxlIHVzaW5nIGEgY3VzdG9tIGZpbHRlciBjaGFpbjo6CisKKyAgIGltcG9ydCBsem1hCisgICBteV9maWx0ZXJzID0gWworICAgICAgIHsiaWQiOiBsem1hLkZJTFRFUl9ERUxUQSwgImRpc3QiOiA1fSwKKyAgICAgICB7ImlkIjogbHptYS5GSUxURVJfTFpNQTIsICJwcmVzZXQiOiA3IHwgbHptYS5QUkVTRVRfRVhUUkVNRX0sCisgICBdCisgICB3aXRoIGx6bWEuTFpNQUZpbGUoImZpbGUueHoiLCAidyIsIGZpbHRlcnM9bXlfZmlsdGVycykgYXMgZjoKKyAgICAgICBmLndyaXRlKGIiYmxhaCBibGFoIGJsYWgiKQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvbWF0aC5yc3QgYi9Eb2MvbGlicmFyeS9tYXRoLnJzdAppbmRleCA5OGM1YjMzLi42MmMwZjM0IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9tYXRoLnJzdAorKysgYi9Eb2MvbGlicmFyeS9tYXRoLnJzdApAQCAtMTg0LDYgKzE4NCwxOSBAQAogICAgcmVzdWx0IGlzIGNhbGN1bGF0ZWQgaW4gYSB3YXkgd2hpY2ggaXMgYWNjdXJhdGUgZm9yICp4KiBuZWFyIHplcm8uCiAKIAorLi4gZnVuY3Rpb246OiBsb2cyKHgpCisKKyAgIFJldHVybiB0aGUgYmFzZS0yIGxvZ2FyaXRobSBvZiAqeCouIFRoaXMgaXMgdXN1YWxseSBtb3JlIGFjY3VyYXRlIHRoYW4KKyAgIGBgbG9nKHgsIDIpYGAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisgICAuLiBzZWVhbHNvOjoKKworICAgICAgOm1ldGg6YGludC5iaXRfbGVuZ3RoYCByZXR1cm5zIHRoZSBudW1iZXIgb2YgYml0cyBuZWNlc3NhcnkgdG8gcmVwcmVzZW50CisgICAgICBhbiBpbnRlZ2VyIGluIGJpbmFyeSwgZXhjbHVkaW5nIHRoZSBzaWduIGFuZCBsZWFkaW5nIHplcm9zLgorCisKIC4uIGZ1bmN0aW9uOjogbG9nMTAoeCkKIAogICAgUmV0dXJuIHRoZSBiYXNlLTEwIGxvZ2FyaXRobSBvZiAqeCouICBUaGlzIGlzIHVzdWFsbHkgbW9yZSBhY2N1cmF0ZQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvbW1hcC5yc3QgYi9Eb2MvbGlicmFyeS9tbWFwLnJzdAppbmRleCA1ZjBmMDA0Li4xYTE5YTdlIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9tbWFwLnJzdAorKysgYi9Eb2MvbGlicmFyeS9tbWFwLnJzdApAQCAtMTk2LDEyICsxOTYsMTYgQEAKICAgICAgIG1vdmUgd2lsbCByYWlzZSBhIDpleGM6YFR5cGVFcnJvcmAgZXhjZXB0aW9uLgogCiAKLSAgIC4uIG1ldGhvZDo6IHJlYWQobnVtKQorICAgLi4gbWV0aG9kOjogcmVhZChbbl0pCiAKLSAgICAgIFJldHVybiBhIDpjbGFzczpgYnl0ZXNgIGNvbnRhaW5pbmcgdXAgdG8gKm51bSogYnl0ZXMgc3RhcnRpbmcgZnJvbSB0aGUKLSAgICAgIGN1cnJlbnQgZmlsZSBwb3NpdGlvbjsgdGhlIGZpbGUgcG9zaXRpb24gaXMgdXBkYXRlZCB0byBwb2ludCBhZnRlciB0aGUKLSAgICAgIGJ5dGVzIHRoYXQgd2VyZSByZXR1cm5lZC4KKyAgICAgIFJldHVybiBhIDpjbGFzczpgYnl0ZXNgIGNvbnRhaW5pbmcgdXAgdG8gKm4qIGJ5dGVzIHN0YXJ0aW5nIGZyb20gdGhlCisgICAgICBjdXJyZW50IGZpbGUgcG9zaXRpb24uIElmIHRoZSBhcmd1bWVudCBpcyBvbWl0dGVkLCAqTm9uZSogb3IgbmVnYXRpdmUsCisgICAgICByZXR1cm4gYWxsIGJ5dGVzIGZyb20gdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiB0byB0aGUgZW5kIG9mIHRoZQorICAgICAgbWFwcGluZy4gVGhlIGZpbGUgcG9zaXRpb24gaXMgdXBkYXRlZCB0byBwb2ludCBhZnRlciB0aGUgYnl0ZXMgdGhhdCB3ZXJlCisgICAgICByZXR1cm5lZC4KIAorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICAgIEFyZ3VtZW50IGNhbiBiZSBvbWl0dGVkIG9yICpOb25lKi4KIAogICAgLi4gbWV0aG9kOjogcmVhZF9ieXRlKCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvbXN2Y3J0LnJzdCBiL0RvYy9saWJyYXJ5L21zdmNydC5yc3QKaW5kZXggODg5YTBjNS4uOWQyMzcyMCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvbXN2Y3J0LnJzdAorKysgYi9Eb2MvbGlicmFyeS9tc3ZjcnQucnN0CkBAIC0yMCw2ICsyMCwxMSBAQAogZm9yIGludGVybmF0aW9uYWxpemVkIGFwcGxpY2F0aW9ucy4gVGhlIHdpZGUgY2hhciBBUEkgc2hvdWxkIGJlIHVzZWQgd2hlcmUKIGV2ZXIgcG9zc2libGUKIAorLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIE9wZXJhdGlvbnMgaW4gdGhpcyBtb2R1bGUgbm93IHJhaXNlIDpleGM6YE9TRXJyb3JgIHdoZXJlIDpleGM6YElPRXJyb3JgCisgICB3YXMgcmFpc2VkLgorCisKIC4uIF9tc3ZjcnQtZmlsZXM6CiAKIEZpbGUgT3BlcmF0aW9ucwpAQCAtMjksNyArMzQsNyBAQAogLi4gZnVuY3Rpb246OiBsb2NraW5nKGZkLCBtb2RlLCBuYnl0ZXMpCiAKICAgIExvY2sgcGFydCBvZiBhIGZpbGUgYmFzZWQgb24gZmlsZSBkZXNjcmlwdG9yICpmZCogZnJvbSB0aGUgQyBydW50aW1lLiAgUmFpc2VzCi0gICA6ZXhjOmBJT0Vycm9yYCBvbiBmYWlsdXJlLiAgVGhlIGxvY2tlZCByZWdpb24gb2YgdGhlIGZpbGUgZXh0ZW5kcyBmcm9tIHRoZQorICAgOmV4YzpgT1NFcnJvcmAgb24gZmFpbHVyZS4gIFRoZSBsb2NrZWQgcmVnaW9uIG9mIHRoZSBmaWxlIGV4dGVuZHMgZnJvbSB0aGUKICAgIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiBmb3IgKm5ieXRlcyogYnl0ZXMsIGFuZCBtYXkgY29udGludWUgYmV5b25kIHRoZSBlbmQgb2YgdGhlCiAgICBmaWxlLiAgKm1vZGUqIG11c3QgYmUgb25lIG9mIHRoZSA6Y29uc3Q6YExLX1wqYCBjb25zdGFudHMgbGlzdGVkIGJlbG93LiBNdWx0aXBsZQogICAgcmVnaW9ucyBpbiBhIGZpbGUgbWF5IGJlIGxvY2tlZCBhdCB0aGUgc2FtZSB0aW1lLCBidXQgbWF5IG5vdCBvdmVybGFwLiAgQWRqYWNlbnQKQEAgLTQxLDEzICs0NiwxMyBAQAogCiAgICBMb2NrcyB0aGUgc3BlY2lmaWVkIGJ5dGVzLiBJZiB0aGUgYnl0ZXMgY2Fubm90IGJlIGxvY2tlZCwgdGhlIHByb2dyYW0KICAgIGltbWVkaWF0ZWx5IHRyaWVzIGFnYWluIGFmdGVyIDEgc2Vjb25kLiAgSWYsIGFmdGVyIDEwIGF0dGVtcHRzLCB0aGUgYnl0ZXMgY2Fubm90Ci0gICBiZSBsb2NrZWQsIDpleGM6YElPRXJyb3JgIGlzIHJhaXNlZC4KKyAgIGJlIGxvY2tlZCwgOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkLgogCiAKIC4uIGRhdGE6OiBMS19OQkxDSwogICAgICAgICAgIExLX05CUkxDSwogCi0gICBMb2NrcyB0aGUgc3BlY2lmaWVkIGJ5dGVzLiBJZiB0aGUgYnl0ZXMgY2Fubm90IGJlIGxvY2tlZCwgOmV4YzpgSU9FcnJvcmAgaXMKKyAgIExvY2tzIHRoZSBzcGVjaWZpZWQgYnl0ZXMuIElmIHRoZSBieXRlcyBjYW5ub3QgYmUgbG9ja2VkLCA6ZXhjOmBPU0Vycm9yYCBpcwogICAgcmFpc2VkLgogCiAKQEAgLTczLDcgKzc4LDcgQEAKIAogLi4gZnVuY3Rpb246OiBnZXRfb3NmaGFuZGxlKGZkKQogCi0gICBSZXR1cm4gdGhlIGZpbGUgaGFuZGxlIGZvciB0aGUgZmlsZSBkZXNjcmlwdG9yICpmZCouICBSYWlzZXMgOmV4YzpgSU9FcnJvcmAgaWYKKyAgIFJldHVybiB0aGUgZmlsZSBoYW5kbGUgZm9yIHRoZSBmaWxlIGRlc2NyaXB0b3IgKmZkKi4gIFJhaXNlcyA6ZXhjOmBPU0Vycm9yYCBpZgogICAgKmZkKiBpcyBub3QgcmVjb2duaXplZC4KIAogCkBAIC0xNDQsNCArMTQ5LDQgQEAKIC4uIGZ1bmN0aW9uOjogaGVhcG1pbigpCiAKICAgIEZvcmNlIHRoZSA6YzpmdW5jOmBtYWxsb2NgIGhlYXAgdG8gY2xlYW4gaXRzZWxmIHVwIGFuZCByZXR1cm4gdW51c2VkIGJsb2NrcyB0bwotICAgdGhlIG9wZXJhdGluZyBzeXN0ZW0uICBPbiBmYWlsdXJlLCB0aGlzIHJhaXNlcyA6ZXhjOmBJT0Vycm9yYC4KKyAgIHRoZSBvcGVyYXRpbmcgc3lzdGVtLiAgT24gZmFpbHVyZSwgdGhpcyByYWlzZXMgOmV4YzpgT1NFcnJvcmAuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcucnN0IGIvRG9jL2xpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLnJzdAppbmRleCA3ZGIyYWVkLi5kOGUxZDkyIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcucnN0CisrKyBiL0RvYy9saWJyYXJ5L211bHRpcHJvY2Vzc2luZy5yc3QKQEAgLTI5Nyw3ICsyOTcsNyBAQAogOmNsYXNzOmBQcm9jZXNzYCBhbmQgZXhjZXB0aW9ucwogfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCi0uLiBjbGFzczo6IFByb2Nlc3MoW2dyb3VwWywgdGFyZ2V0WywgbmFtZVssIGFyZ3NbLCBrd2FyZ3NdXV1dXSkKKy4uIGNsYXNzOjogUHJvY2VzcyhbZ3JvdXBbLCB0YXJnZXRbLCBuYW1lWywgYXJnc1ssIGt3YXJnc11dXV1dLCAqLCBkYWVtb249Tm9uZSkKIAogICAgUHJvY2VzcyBvYmplY3RzIHJlcHJlc2VudCBhY3Rpdml0eSB0aGF0IGlzIHJ1biBpbiBhIHNlcGFyYXRlIHByb2Nlc3MuIFRoZQogICAgOmNsYXNzOmBQcm9jZXNzYCBjbGFzcyBoYXMgZXF1aXZhbGVudHMgb2YgYWxsIHRoZSBtZXRob2RzIG9mCkBAIC0zMTIsMTMgKzMxMiwxOSBAQAogICAgOnN1YjpgMWAsTlwgOnN1YjpgMmAsLi4uLE5cIDpzdWI6YGtgIGlzIGEgc2VxdWVuY2Ugb2YgaW50ZWdlcnMgd2hvc2UgbGVuZ3RoCiAgICBpcyBkZXRlcm1pbmVkIGJ5IHRoZSAqZ2VuZXJhdGlvbiogb2YgdGhlIHByb2Nlc3MuICAqYXJncyogaXMgdGhlIGFyZ3VtZW50CiAgICB0dXBsZSBmb3IgdGhlIHRhcmdldCBpbnZvY2F0aW9uLiAgKmt3YXJncyogaXMgYSBkaWN0aW9uYXJ5IG9mIGtleXdvcmQKLSAgIGFyZ3VtZW50cyBmb3IgdGhlIHRhcmdldCBpbnZvY2F0aW9uLiAgQnkgZGVmYXVsdCwgbm8gYXJndW1lbnRzIGFyZSBwYXNzZWQgdG8KLSAgICp0YXJnZXQqLgorICAgYXJndW1lbnRzIGZvciB0aGUgdGFyZ2V0IGludm9jYXRpb24uICBJZiBwcm92aWRlZCwgdGhlIGtleXdvcmQtb25seSAqZGFlbW9uKiBhcmd1bWVudAorICAgc2V0cyB0aGUgcHJvY2VzcyA6YXR0cjpgZGFlbW9uYCBmbGFnIHRvIGBgVHJ1ZWBgIG9yIGBgRmFsc2VgYC4gIElmIGBgTm9uZWBgCisgICAodGhlIGRlZmF1bHQpLCB0aGlzIGZsYWcgd2lsbCBiZSBpbmhlcml0ZWQgZnJvbSB0aGUgY3JlYXRpbmcgcHJvY2Vzcy4KKworICAgQnkgZGVmYXVsdCwgbm8gYXJndW1lbnRzIGFyZSBwYXNzZWQgdG8gKnRhcmdldCouCiAKICAgIElmIGEgc3ViY2xhc3Mgb3ZlcnJpZGVzIHRoZSBjb25zdHJ1Y3RvciwgaXQgbXVzdCBtYWtlIHN1cmUgaXQgaW52b2tlcyB0aGUKICAgIGJhc2UgY2xhc3MgY29uc3RydWN0b3IgKDptZXRoOmBQcm9jZXNzLl9faW5pdF9fYCkgYmVmb3JlIGRvaW5nIGFueXRoaW5nIGVsc2UKICAgIHRvIHRoZSBwcm9jZXNzLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgdGhlICpkYWVtb24qIGFyZ3VtZW50LgorCiAgICAuLiBtZXRob2Q6OiBydW4oKQogCiAgICAgICBNZXRob2QgcmVwcmVzZW50aW5nIHRoZSBwcm9jZXNzJ3MgYWN0aXZpdHkuCkBAIC0zMzcsMTAgKzM0Myw5IEBACiAKICAgIC4uIG1ldGhvZDo6IGpvaW4oW3RpbWVvdXRdKQogCi0gICAgICBCbG9jayB0aGUgY2FsbGluZyB0aHJlYWQgdW50aWwgdGhlIHByb2Nlc3Mgd2hvc2UgOm1ldGg6YGpvaW5gIG1ldGhvZCBpcwotICAgICAgY2FsbGVkIHRlcm1pbmF0ZXMgb3IgdW50aWwgdGhlIG9wdGlvbmFsIHRpbWVvdXQgb2NjdXJzLgotCi0gICAgICBJZiAqdGltZW91dCogaXMgYGBOb25lYGAgdGhlbiB0aGVyZSBpcyBubyB0aW1lb3V0LgorICAgICAgSWYgdGhlIG9wdGlvbmFsIGFyZ3VtZW50ICp0aW1lb3V0KiBpcyBgYE5vbmVgYCAodGhlIGRlZmF1bHQpLCB0aGUgbWV0aG9kCisgICAgICBibG9ja3MgdW50aWwgdGhlIHByb2Nlc3Mgd2hvc2UgOm1ldGg6YGpvaW5gIG1ldGhvZCBpcyBjYWxsZWQgdGVybWluYXRlcy4KKyAgICAgIElmICp0aW1lb3V0KiBpcyBhIHBvc2l0aXZlIG51bWJlciwgaXQgYmxvY2tzIGF0IG1vc3QgKnRpbWVvdXQqIHNlY29uZHMuCiAKICAgICAgIEEgcHJvY2VzcyBjYW4gYmUgam9pbmVkIG1hbnkgdGltZXMuCiAKQEAgLTQwNSw2ICs0MTAsMjEgQEAKIAogICAgICAgU2VlIDpyZWY6YG11bHRpcHJvY2Vzc2luZy1hdXRoLWtleXNgLgogCisgICAuLiBhdHRyaWJ1dGU6OiBzZW50aW5lbAorCisgICAgICBBIG51bWVyaWMgaGFuZGxlIG9mIGEgc3lzdGVtIG9iamVjdCB3aGljaCB3aWxsIGJlY29tZSAicmVhZHkiIHdoZW4KKyAgICAgIHRoZSBwcm9jZXNzIGVuZHMuCisKKyAgICAgIFlvdSBjYW4gdXNlIHRoaXMgdmFsdWUgaWYgeW91IHdhbnQgdG8gd2FpdCBvbiBzZXZlcmFsIGV2ZW50cyBhdAorICAgICAgb25jZSB1c2luZyA6ZnVuYzpgbXVsdGlwcm9jZXNzaW5nLmNvbm5lY3Rpb24ud2FpdGAuICBPdGhlcndpc2UKKyAgICAgIGNhbGxpbmcgOm1ldGg6YGpvaW4oKWAgaXMgc2ltcGxlci4KKworICAgICAgT24gV2luZG93cywgdGhpcyBpcyBhbiBPUyBoYW5kbGUgdXNhYmxlIHdpdGggdGhlIGBgV2FpdEZvclNpbmdsZU9iamVjdGBgCisgICAgICBhbmQgYGBXYWl0Rm9yTXVsdGlwbGVPYmplY3RzYGAgZmFtaWx5IG9mIEFQSSBjYWxscy4gIE9uIFVuaXgsIHRoaXMgaXMKKyAgICAgIGEgZmlsZSBkZXNjcmlwdG9yIHVzYWJsZSB3aXRoIHByaW1pdGl2ZXMgZnJvbSB0aGUgOm1vZDpgc2VsZWN0YCBtb2R1bGUuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAgICAuLiBtZXRob2Q6OiB0ZXJtaW5hdGUoKQogCiAgICAgICBUZXJtaW5hdGUgdGhlIHByb2Nlc3MuICBPbiBVbml4IHRoaXMgaXMgZG9uZSB1c2luZyB0aGUgYGBTSUdURVJNYGAgc2lnbmFsOwpAQCAtNDY0LDcgKzQ4NCw3IEBACiBGb3IgcGFzc2luZyBtZXNzYWdlcyBvbmUgY2FuIHVzZSA6ZnVuYzpgUGlwZWAgKGZvciBhIGNvbm5lY3Rpb24gYmV0d2VlbiB0d28KIHByb2Nlc3Nlcykgb3IgYSBxdWV1ZSAod2hpY2ggYWxsb3dzIG11bHRpcGxlIHByb2R1Y2VycyBhbmQgY29uc3VtZXJzKS4KIAotVGhlIDpjbGFzczpgUXVldWVgLCA6Y2xhc3M6YG11bHRpcHJvY2Vzc2luZy5xdWV1ZXMuU2ltcGxlUXVldWVgIGFuZCA6Y2xhc3M6YEpvaW5hYmxlUXVldWVgIHR5cGVzIGFyZSBtdWx0aS1wcm9kdWNlciwKK1RoZSA6Y2xhc3M6YFF1ZXVlYCwgOmNsYXNzOmBTaW1wbGVRdWV1ZWAgYW5kIDpjbGFzczpgSm9pbmFibGVRdWV1ZWAgdHlwZXMgYXJlIG11bHRpLXByb2R1Y2VyLAogbXVsdGktY29uc3VtZXIgRklGTyBxdWV1ZXMgbW9kZWxsZWQgb24gdGhlIDpjbGFzczpgcXVldWUuUXVldWVgIGNsYXNzIGluIHRoZQogc3RhbmRhcmQgbGlicmFyeS4gIFRoZXkgZGlmZmVyIGluIHRoYXQgOmNsYXNzOmBRdWV1ZWAgbGFja3MgdGhlCiA6bWV0aDpgfnF1ZXVlLlF1ZXVlLnRhc2tfZG9uZWAgYW5kIDptZXRoOmB+cXVldWUuUXVldWUuam9pbmAgbWV0aG9kcyBpbnRyb2R1Y2VkCkBAIC02MTAsNyArNjMwLDcgQEAKICAgICAgIGV4aXRzIC0tIHNlZSA6bWV0aDpgam9pbl90aHJlYWRgLgogCiAKLS4uIGNsYXNzOjogbXVsdGlwcm9jZXNzaW5nLnF1ZXVlcy5TaW1wbGVRdWV1ZSgpCisuLiBjbGFzczo6IFNpbXBsZVF1ZXVlKCkKIAogICAgSXQgaXMgYSBzaW1wbGlmaWVkIDpjbGFzczpgUXVldWVgIHR5cGUsIHZlcnkgY2xvc2UgdG8gYSBsb2NrZWQgOmNsYXNzOmBQaXBlYC4KIApAQCAtNzY2LDYgKzc4Niw5IEBACiAgICAgICAqdGltZW91dCogaXMgYSBudW1iZXIgdGhlbiB0aGlzIHNwZWNpZmllcyB0aGUgbWF4aW11bSB0aW1lIGluIHNlY29uZHMgdG8KICAgICAgIGJsb2NrLiAgSWYgKnRpbWVvdXQqIGlzIGBgTm9uZWBgIHRoZW4gYW4gaW5maW5pdGUgdGltZW91dCBpcyB1c2VkLgogCisgICAgICBOb3RlIHRoYXQgbXVsdGlwbGUgY29ubmVjdGlvbiBvYmplY3RzIG1heSBiZSBwb2xsZWQgYXQgb25jZSBieQorICAgICAgdXNpbmcgOmZ1bmM6YG11bHRpcHJvY2Vzc2luZy5jb25uZWN0aW9uLndhaXRgLgorCiAgICAuLiBtZXRob2Q6OiBzZW5kX2J5dGVzKGJ1ZmZlclssIG9mZnNldFssIHNpemVdXSkKIAogICAgICAgU2VuZCBieXRlIGRhdGEgZnJvbSBhbiBvYmplY3Qgc3VwcG9ydGluZyB0aGUgYnVmZmVyIGludGVyZmFjZSBhcyBhCkBAIC03ODQsOSArODA3LDE0IEBACiAgICAgICB0byByZWNlaXZlIGFuZCB0aGUgb3RoZXIgZW5kIGhhcyBjbG9zZWQuCiAKICAgICAgIElmICptYXhsZW5ndGgqIGlzIHNwZWNpZmllZCBhbmQgdGhlIG1lc3NhZ2UgaXMgbG9uZ2VyIHRoYW4gKm1heGxlbmd0aCoKLSAgICAgIHRoZW4gOmV4YzpgSU9FcnJvcmAgaXMgcmFpc2VkIGFuZCB0aGUgY29ubmVjdGlvbiB3aWxsIG5vIGxvbmdlciBiZQorICAgICAgdGhlbiA6ZXhjOmBPU0Vycm9yYCBpcyByYWlzZWQgYW5kIHRoZSBjb25uZWN0aW9uIHdpbGwgbm8gbG9uZ2VyIGJlCiAgICAgICByZWFkYWJsZS4KIAorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICAgIFRoaXMgZnVuY3Rpb24gdXNlZCB0byByYWlzZSBhIDpleGM6YElPRXJyb3JgLCB3aGljaCBpcyBub3cgYW4KKyAgICAgICAgIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgorCisKICAgIC4uIG1ldGhvZDo6IHJlY3ZfYnl0ZXNfaW50byhidWZmZXJbLCBvZmZzZXRdKQogCiAgICAgICBSZWFkIGludG8gKmJ1ZmZlciogYSBjb21wbGV0ZSBtZXNzYWdlIG9mIGJ5dGUgZGF0YSBzZW50IGZyb20gdGhlIG90aGVyIGVuZApAQCAtMTY1Nyw2ICsxNjg1LDI0IEBACiAgICAgICByZXR1cm5lZCBpdGVyYXRvciBzaG91bGQgYmUgY29uc2lkZXJlZCBhcmJpdHJhcnkuICAoT25seSB3aGVuIHRoZXJlIGlzCiAgICAgICBvbmx5IG9uZSB3b3JrZXIgcHJvY2VzcyBpcyB0aGUgb3JkZXIgZ3VhcmFudGVlZCB0byBiZSAiY29ycmVjdCIuKQogCisgICAuLiBtZXRob2Q6OiBzdGFybWFwKGZ1bmMsIGl0ZXJhYmxlWywgY2h1bmtzaXplXSkKKworICAgICAgTGlrZSA6bWV0aDpgbWFwYCBleGNlcHQgdGhhdCB0aGUgZWxlbWVudHMgb2YgdGhlIGBpdGVyYWJsZWAgYXJlIGV4cGVjdGVkCisgICAgICB0byBiZSBpdGVyYWJsZXMgdGhhdCBhcmUgdW5wYWNrZWQgYXMgYXJndW1lbnRzLgorCisgICAgICBIZW5jZSBhbiBgaXRlcmFibGVgIG9mIGBbKDEsMiksICgzLCA0KV1gIHJlc3VsdHMgaW4gYFtmdW5jKDEsMiksCisgICAgICBmdW5jKDMsNCldYC4KKworICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKyAgIC4uIG1ldGhvZDo6IHN0YXJtYXBfYXN5bmMoZnVuYywgaXRlcmFibGVbLCBjaHVua3NpemVbLCBjYWxsYmFja1ssIGVycm9yX2JhY2tdXV0pCisKKyAgICAgIEEgY29tYmluYXRpb24gb2YgOm1ldGg6YHN0YXJtYXBgIGFuZCA6bWV0aDpgbWFwX2FzeW5jYCB0aGF0IGl0ZXJhdGVzIG92ZXIKKyAgICAgIGBpdGVyYWJsZWAgb2YgaXRlcmFibGVzIGFuZCBjYWxscyBgZnVuY2Agd2l0aCB0aGUgaXRlcmFibGVzIHVucGFja2VkLgorICAgICAgUmV0dXJucyBhIHJlc3VsdCBvYmplY3QuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAgICAuLiBtZXRob2Q6OiBjbG9zZSgpCiAKICAgICAgIFByZXZlbnRzIGFueSBtb3JlIHRhc2tzIGZyb20gYmVpbmcgc3VibWl0dGVkIHRvIHRoZSBwb29sLiAgT25jZSBhbGwgdGhlCkBAIC0xNzM3LDggKzE3ODMsOSBAQAogCiBIb3dldmVyLCB0aGUgOm1vZDpgbXVsdGlwcm9jZXNzaW5nLmNvbm5lY3Rpb25gIG1vZHVsZSBhbGxvd3Mgc29tZSBleHRyYQogZmxleGliaWxpdHkuICBJdCBiYXNpY2FsbHkgZ2l2ZXMgYSBoaWdoIGxldmVsIG1lc3NhZ2Ugb3JpZW50ZWQgQVBJIGZvciBkZWFsaW5nCi13aXRoIHNvY2tldHMgb3IgV2luZG93cyBuYW1lZCBwaXBlcywgYW5kIGFsc28gaGFzIHN1cHBvcnQgZm9yICpkaWdlc3QKLWF1dGhlbnRpY2F0aW9uKiB1c2luZyB0aGUgOm1vZDpgaG1hY2AgbW9kdWxlLgord2l0aCBzb2NrZXRzIG9yIFdpbmRvd3MgbmFtZWQgcGlwZXMuICBJdCBhbHNvIGhhcyBzdXBwb3J0IGZvciAqZGlnZXN0CithdXRoZW50aWNhdGlvbiogdXNpbmcgdGhlIDptb2Q6YGhtYWNgIG1vZHVsZSwgYW5kIGZvciBwb2xsaW5nCittdWx0aXBsZSBjb25uZWN0aW9ucyBhdCB0aGUgc2FtZSB0aW1lLgogCiAKIC4uIGZ1bmN0aW9uOjogZGVsaXZlcl9jaGFsbGVuZ2UoY29ubmVjdGlvbiwgYXV0aGtleSkKQEAgLTE4MzYsNiArMTg4MywzOCBAQAogICAgICAgVGhlIGFkZHJlc3MgZnJvbSB3aGljaCB0aGUgbGFzdCBhY2NlcHRlZCBjb25uZWN0aW9uIGNhbWUuICBJZiB0aGlzIGlzCiAgICAgICB1bmF2YWlsYWJsZSB0aGVuIGl0IGlzIGBgTm9uZWBgLgogCisuLiBmdW5jdGlvbjo6IHdhaXQob2JqZWN0X2xpc3QsIHRpbWVvdXQ9Tm9uZSkKKworICAgV2FpdCB0aWxsIGFuIG9iamVjdCBpbiAqb2JqZWN0X2xpc3QqIGlzIHJlYWR5LiAgUmV0dXJucyB0aGUgbGlzdCBvZgorICAgdGhvc2Ugb2JqZWN0cyBpbiAqb2JqZWN0X2xpc3QqIHdoaWNoIGFyZSByZWFkeS4gIElmICp0aW1lb3V0KiBpcyBhCisgICBmbG9hdCB0aGVuIHRoZSBjYWxsIGJsb2NrcyBmb3IgYXQgbW9zdCB0aGF0IG1hbnkgc2Vjb25kcy4gIElmCisgICAqdGltZW91dCogaXMgYGBOb25lYGAgdGhlbiBpdCB3aWxsIGJsb2NrIGZvciBhbiB1bmxpbWl0ZWQgcGVyaW9kLgorCisgICBGb3IgYm90aCBVbml4IGFuZCBXaW5kb3dzLCBhbiBvYmplY3QgY2FuIGFwcGVhciBpbiAqb2JqZWN0X2xpc3QqIGlmCisgICBpdCBpcworCisgICAqIGEgcmVhZGFibGUgOmNsYXNzOmB+bXVsdGlwcm9jZXNzaW5nLkNvbm5lY3Rpb25gIG9iamVjdDsKKyAgICogYSBjb25uZWN0ZWQgYW5kIHJlYWRhYmxlIDpjbGFzczpgc29ja2V0LnNvY2tldGAgb2JqZWN0OyBvcgorICAgKiB0aGUgOmF0dHI6YH5tdWx0aXByb2Nlc3NpbmcuUHJvY2Vzcy5zZW50aW5lbGAgYXR0cmlidXRlIG9mIGEKKyAgICAgOmNsYXNzOmB+bXVsdGlwcm9jZXNzaW5nLlByb2Nlc3NgIG9iamVjdC4KKworICAgQSBjb25uZWN0aW9uIG9yIHNvY2tldCBvYmplY3QgaXMgcmVhZHkgd2hlbiB0aGVyZSBpcyBkYXRhIGF2YWlsYWJsZQorICAgdG8gYmUgcmVhZCBmcm9tIGl0LCBvciB0aGUgb3RoZXIgZW5kIGhhcyBiZWVuIGNsb3NlZC4KKworICAgKipVbml4Kio6IGBgd2FpdChvYmplY3RfbGlzdCwgdGltZW91dClgYCBhbG1vc3QgZXF1aXZhbGVudAorICAgYGBzZWxlY3Quc2VsZWN0KG9iamVjdF9saXN0LCBbXSwgW10sIHRpbWVvdXQpYGAuICBUaGUgZGlmZmVyZW5jZSBpcworICAgdGhhdCwgaWYgOmZ1bmM6YHNlbGVjdC5zZWxlY3RgIGlzIGludGVycnVwdGVkIGJ5IGEgc2lnbmFsLCBpdCBjYW4KKyAgIHJhaXNlIDpleGM6YE9TRXJyb3JgIHdpdGggYW4gZXJyb3IgbnVtYmVyIG9mIGBgRUlOVFJgYCwgd2hlcmVhcworICAgOmZ1bmM6YHdhaXRgIHdpbGwgbm90LgorCisgICAqKldpbmRvd3MqKjogQW4gaXRlbSBpbiAqb2JqZWN0X2xpc3QqIG11c3QgZWl0aGVyIGJlIGFuIGludGVnZXIKKyAgIGhhbmRsZSB3aGljaCBpcyB3YWl0YWJsZSAoYWNjb3JkaW5nIHRvIHRoZSBkZWZpbml0aW9uIHVzZWQgYnkgdGhlCisgICBkb2N1bWVudGF0aW9uIG9mIHRoZSBXaW4zMiBmdW5jdGlvbiBgYFdhaXRGb3JNdWx0aXBsZU9iamVjdHMoKWBgKQorICAgb3IgaXQgY2FuIGJlIGFuIG9iamVjdCB3aXRoIGEgOm1ldGg6YGZpbGVub2AgbWV0aG9kIHdoaWNoIHJldHVybnMgYQorICAgc29ja2V0IGhhbmRsZSBvciBwaXBlIGhhbmRsZS4gIChOb3RlIHRoYXQgcGlwZSBoYW5kbGVzIGFuZCBzb2NrZXQKKyAgIGhhbmRsZXMgYXJlICoqbm90Kiogd2FpdGFibGUgaGFuZGxlcy4pCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiBUaGUgbW9kdWxlIGRlZmluZXMgdHdvIGV4Y2VwdGlvbnM6CiAKQEAgLTE4ODcsNiArMTk2Niw0MSBAQAogCiAgICBjb25uLmNsb3NlKCkKIAorVGhlIGZvbGxvd2luZyBjb2RlIHVzZXMgOmZ1bmM6YH5tdWx0aXByb2Nlc3NpbmcuY29ubmVjdGlvbi53YWl0YCB0bword2FpdCBmb3IgbWVzc2FnZXMgZnJvbSBtdWx0aXBsZSBwcm9jZXNzZXMgYXQgb25jZTo6CisKKyAgIGltcG9ydCB0aW1lLCByYW5kb20KKyAgIGZyb20gbXVsdGlwcm9jZXNzaW5nIGltcG9ydCBQcm9jZXNzLCBQaXBlLCBjdXJyZW50X3Byb2Nlc3MKKyAgIGZyb20gbXVsdGlwcm9jZXNzaW5nLmNvbm5lY3Rpb24gaW1wb3J0IHdhaXQKKworICAgZGVmIGZvbyh3KToKKyAgICAgICBmb3IgaSBpbiByYW5nZSgxMCk6CisgICAgICAgICAgIHcuc2VuZCgoaSwgY3VycmVudF9wcm9jZXNzKCkubmFtZSkpCisgICAgICAgdy5jbG9zZSgpCisKKyAgIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgICAgcmVhZGVycyA9IFtdCisKKyAgICAgICBmb3IgaSBpbiByYW5nZSg0KToKKyAgICAgICAgICAgciwgdyA9IFBpcGUoZHVwbGV4PUZhbHNlKQorICAgICAgICAgICByZWFkZXJzLmFwcGVuZChyKQorICAgICAgICAgICBwID0gUHJvY2Vzcyh0YXJnZXQ9Zm9vLCBhcmdzPSh3LCkpCisgICAgICAgICAgIHAuc3RhcnQoKQorICAgICAgICAgICAjIFdlIGNsb3NlIHRoZSB3cml0YWJsZSBlbmQgb2YgdGhlIHBpcGUgbm93IHRvIGJlIHN1cmUgdGhhdAorICAgICAgICAgICAjIHAgaXMgdGhlIG9ubHkgcHJvY2VzcyB3aGljaCBvd25zIGEgaGFuZGxlIGZvciBpdC4gIFRoaXMKKyAgICAgICAgICAgIyBlbnN1cmVzIHRoYXQgd2hlbiBwIGNsb3NlcyBpdHMgaGFuZGxlIGZvciB0aGUgd3JpdGFibGUgZW5kLAorICAgICAgICAgICAjIHdhaXQoKSB3aWxsIHByb21wdGx5IHJlcG9ydCB0aGUgcmVhZGFibGUgZW5kIGFzIGJlaW5nIHJlYWR5LgorICAgICAgICAgICB3LmNsb3NlKCkKKworICAgICAgIHdoaWxlIHJlYWRlcnM6CisgICAgICAgICAgIGZvciByIGluIHdhaXQocmVhZGVycyk6CisgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgbXNnID0gci5yZWN2KCkKKyAgICAgICAgICAgICAgIGV4Y2VwdCBFT0ZFcnJvcjoKKyAgICAgICAgICAgICAgICAgICByZWFkZXJzLnJlbW92ZShyKQorICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICBwcmludChtc2cpCisKIAogLi4gX211bHRpcHJvY2Vzc2luZy1hZGRyZXNzLWZvcm1hdHM6CiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L25udHBsaWIucnN0IGIvRG9jL2xpYnJhcnkvbm50cGxpYi5yc3QKaW5kZXggZWY1MDdlMS4uNjJkYTcyYyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvbm50cGxpYi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvbm50cGxpYi5yc3QKQEAgLTcwLDEwICs3MCwyMyBAQAogICAgY29ubmVjdGluZyB0byBhbiBOTlRQIHNlcnZlciBvbiB0aGUgbG9jYWwgbWFjaGluZSBhbmQgaW50ZW5kIHRvIGNhbGwKICAgIHJlYWRlci1zcGVjaWZpYyBjb21tYW5kcywgc3VjaCBhcyBgYGdyb3VwYGAuICBJZiB5b3UgZ2V0IHVuZXhwZWN0ZWQKICAgIDpleGM6YE5OVFBQZXJtYW5lbnRFcnJvcmBcIHMsIHlvdSBtaWdodCBuZWVkIHRvIHNldCAqcmVhZGVybW9kZSouCisgICA6Y2xhc3M6YE5OVFBgIGNsYXNzIHN1cHBvcnRzIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50IHRvCisgICB1bmNvbmRpdGlvbmFsbHkgY29uc3VtZSA6ZXhjOmBzb2NrZXQuZXJyb3JgIGV4Y2VwdGlvbnMgYW5kIHRvIGNsb3NlIHRoZSBOTlRQCisgICBjb25uZWN0aW9uIHdoZW4gZG9uZS4gSGVyZSBpcyBhIHNhbXBsZSBvbiBob3cgdXNpbmcgaXQ6CisKKyAgICA+Pj4gZnJvbSBubnRwbGliIGltcG9ydCBOTlRQCisgICAgPj4+IHdpdGggTk5UUCgnbmV3cy5nbWFuZS5vcmcnKSBhcyBuOgorICAgIC4uLiAgICAgbi5ncm91cCgnZ21hbmUuY29tcC5weXRob24uY29tbWl0dGVycycpCisgICAgLi4uCisgICAgKCcyMTEgMTc1NSAxIDE3NTUgZ21hbmUuY29tcC5weXRob24uY29tbWl0dGVycycsIDE3NTUsIDEsIDE3NTUsICdnbWFuZS5jb21wLnB5dGhvbi5jb21taXR0ZXJzJykKKyAgICA+Pj4KKwogCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgICAgKnVzZW5ldHJjKiBpcyBub3cgRmFsc2UgYnkgZGVmYXVsdC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFN1cHBvcnQgZm9yIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50IHdhcyBhZGRlZC4KIAogLi4gY2xhc3M6OiBOTlRQX1NTTChob3N0LCBwb3J0PTU2MywgdXNlcj1Ob25lLCBwYXNzd29yZD1Ob25lLCBzc2xfY29udGV4dD1Ob25lLCByZWFkZXJtb2RlPU5vbmUsIHVzZW5ldHJjPUZhbHNlLCBbdGltZW91dF0pCiAKQEAgLTUwNCw2ICs1MTcsOSBAQAogICAgYXJ0aWNsZSB3aXRoIG1lc3NhZ2UgSUQgKmlkKi4gIE1vc3Qgb2YgdGhlIHRpbWUsIHRoaXMgZXh0ZW5zaW9uIGlzIG5vdAogICAgZW5hYmxlZCBieSBOTlRQIHNlcnZlciBhZG1pbmlzdHJhdG9ycy4KIAorICAgLi4gZGVwcmVjYXRlZDo6IDMuMworICAgICAgVGhlIFhQQVRIIGV4dGVuc2lvbiBpcyBub3QgYWN0aXZlbHkgdXNlZC4KKwogCiAuLiBYWFggZGVwcmVjYXRlZDoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvb3MucnN0IGIvRG9jL2xpYnJhcnkvb3MucnN0CmluZGV4IGJlMzIyYTAuLjc0Yjg5YjggMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L29zLnJzdAorKysgYi9Eb2MvbGlicmFyeS9vcy5yc3QKQEAgLTIyMSw2ICsyMjEsMTcgQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peC4KIAogCisuLiBmdW5jdGlvbjo6IGdldGdyb3VwbGlzdCh1c2VyLCBncm91cCkKKworICAgUmV0dXJuIGxpc3Qgb2YgZ3JvdXAgaWRzIHRoYXQgKnVzZXIqIGJlbG9uZ3MgdG8uIElmICpncm91cCogaXMgbm90IGluIHRoZQorICAgbGlzdCwgaXQgaXMgaW5jbHVkZWQ7IHR5cGljYWxseSwgKmdyb3VwKiBpcyBzcGVjaWZpZWQgYXMgdGhlIGdyb3VwIElECisgICBmaWVsZCBmcm9tIHRoZSBwYXNzd29yZCByZWNvcmQgZm9yICp1c2VyKi4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IGdldGdyb3VwcygpCiAKICAgIFJldHVybiBsaXN0IG9mIHN1cHBsZW1lbnRhbCBncm91cCBpZHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJyZW50IHByb2Nlc3MuCkBAIC0yODgsNiArMjk5LDIyIEBACiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgICAgQWRkZWQgc3VwcG9ydCBmb3IgV2luZG93cy4KIAorLi4gZnVuY3Rpb246OiBnZXRwcmlvcml0eSh3aGljaCwgd2hvKQorCisgICAuLiBpbmRleDo6IHNpbmdsZTogcHJvY2Vzczsgc2NoZWR1bGluZyBwcmlvcml0eQorCisgICBHZXQgcHJvZ3JhbSBzY2hlZHVsaW5nIHByaW9yaXR5LiBUaGUgdmFsdWUgKndoaWNoKiBpcyBvbmUgb2YKKyAgIDpjb25zdDpgUFJJT19QUk9DRVNTYCwgOmNvbnN0OmBQUklPX1BHUlBgLCBvciA6Y29uc3Q6YFBSSU9fVVNFUmAsIGFuZCAqd2hvKgorICAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gKndoaWNoKiAoYSBwcm9jZXNzIGlkZW50aWZpZXIgZm9yCisgICA6Y29uc3Q6YFBSSU9fUFJPQ0VTU2AsIHByb2Nlc3MgZ3JvdXAgaWRlbnRpZmllciBmb3IgOmNvbnN0OmBQUklPX1BHUlBgLCBhbmQgYQorICAgdXNlciBJRCBmb3IgOmNvbnN0OmBQUklPX1VTRVJgKS4gQSB6ZXJvIHZhbHVlIGZvciAqd2hvKiBkZW5vdGVzCisgICAocmVzcGVjdGl2ZWx5KSB0aGUgY2FsbGluZyBwcm9jZXNzLCB0aGUgcHJvY2VzcyBncm91cCBvZiB0aGUgY2FsbGluZyBwcm9jZXNzLAorICAgb3IgdGhlIHJlYWwgdXNlciBJRCBvZiB0aGUgY2FsbGluZyBwcm9jZXNzLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIC4uIGZ1bmN0aW9uOjogZ2V0cmVzdWlkKCkKIAogICAgUmV0dXJuIGEgdHVwbGUgKHJ1aWQsIGV1aWQsIHN1aWQpIGRlbm90aW5nIHRoZSBjdXJyZW50IHByb2Nlc3MncwpAQCAtMzM4LDYgKzM2NSwxNSBAQAogCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAorLi4gZGF0YTo6IFBSSU9fUFJPQ0VTUworICAgICAgICAgIFBSSU9fUEdSUAorICAgICAgICAgIFBSSU9fVVNFUgorCisgICBQYXJhbWV0ZXJzIGZvciA6ZnVuYzpgZ2V0cHJpb3JpdHlgIGFuZCA6ZnVuYzpgc2V0cHJpb3JpdHlgIGZ1bmN0aW9ucy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogLi4gZnVuY3Rpb246OiBwdXRlbnYoa2V5LCB2YWx1ZSkKIApAQCAtNDA3LDYgKzQ0MywyNSBAQAogICAgQXZhaWxhYmlsaXR5OiBVbml4LgogCiAKKy4uIGZ1bmN0aW9uOjogc2V0cHJpb3JpdHkod2hpY2gsIHdobywgcHJpb3JpdHkpCisKKyAgIC4uIGluZGV4Ojogc2luZ2xlOiBwcm9jZXNzOyBzY2hlZHVsaW5nIHByaW9yaXR5CisKKyAgIFNldCBwcm9ncmFtIHNjaGVkdWxpbmcgcHJpb3JpdHkuIFRoZSB2YWx1ZSAqd2hpY2gqIGlzIG9uZSBvZgorICAgOmNvbnN0OmBQUklPX1BST0NFU1NgLCA6Y29uc3Q6YFBSSU9fUEdSUGAsIG9yIDpjb25zdDpgUFJJT19VU0VSYCwgYW5kICp3aG8qCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byAqd2hpY2gqIChhIHByb2Nlc3MgaWRlbnRpZmllciBmb3IKKyAgIDpjb25zdDpgUFJJT19QUk9DRVNTYCwgcHJvY2VzcyBncm91cCBpZGVudGlmaWVyIGZvciA6Y29uc3Q6YFBSSU9fUEdSUGAsIGFuZCBhCisgICB1c2VyIElEIGZvciA6Y29uc3Q6YFBSSU9fVVNFUmApLiBBIHplcm8gdmFsdWUgZm9yICp3aG8qIGRlbm90ZXMKKyAgIChyZXNwZWN0aXZlbHkpIHRoZSBjYWxsaW5nIHByb2Nlc3MsIHRoZSBwcm9jZXNzIGdyb3VwIG9mIHRoZSBjYWxsaW5nIHByb2Nlc3MsCisgICBvciB0aGUgcmVhbCB1c2VyIElEIG9mIHRoZSBjYWxsaW5nIHByb2Nlc3MuCisgICAqcHJpb3JpdHkqIGlzIGEgdmFsdWUgaW4gdGhlIHJhbmdlIC0yMCB0byAxOS4gVGhlIGRlZmF1bHQgcHJpb3JpdHkgaXMgMDsKKyAgIGxvd2VyIHByaW9yaXRpZXMgY2F1c2UgbW9yZSBmYXZvcmFibGUgc2NoZWR1bGluZy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogc2V0cmVnaWQocmdpZCwgZWdpZCkKIAogICAgU2V0IHRoZSBjdXJyZW50IHByb2Nlc3MncyByZWFsIGFuZCBlZmZlY3RpdmUgZ3JvdXAgaWRzLgpAQCAtNTM2LDcgKzU5MSw4IEBACiAgICB0aGUgYnVpbHQtaW4gOmZ1bmM6YG9wZW5gIGZ1bmN0aW9uLgogCiAgICBXaGVuIHNwZWNpZmllZCwgdGhlICptb2RlKiBhcmd1bWVudCBtdXN0IHN0YXJ0IHdpdGggb25lIG9mIHRoZSBsZXR0ZXJzCi0gICBgYCdyJ2BgLCBgYCd3J2BgLCBvciBgYCdhJ2BgLCBvdGhlcndpc2UgYSA6ZXhjOmBWYWx1ZUVycm9yYCBpcyByYWlzZWQuCisgICBgYCdyJ2BgLCBgYCd3J2BgLCBgYCd4J2BgIG9yIGBgJ2EnYGAsIG90aGVyd2lzZSBhIDpleGM6YFZhbHVlRXJyb3JgIGlzCisgICByYWlzZWQuCiAKICAgIE9uIFVuaXgsIHdoZW4gdGhlICptb2RlKiBhcmd1bWVudCBzdGFydHMgd2l0aCBgYCdhJ2BgLCB0aGUgKk9fQVBQRU5EKiBmbGFnIGlzCiAgICBzZXQgb24gdGhlIGZpbGUgZGVzY3JpcHRvciAod2hpY2ggdGhlIDpjOmZ1bmM6YGZkb3BlbmAgaW1wbGVtZW50YXRpb24gYWxyZWFkeQpAQCAtNTQ0LDYgKzYwMCw4IEBACiAKICAgIEF2YWlsYWJpbGl0eTogVW5peCwgV2luZG93cy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSBgYCd4J2BgIG1vZGUgd2FzIGFkZGVkLgogCiAuLiBfb3MtZmQtb3BzOgogCkBAIC01NjQsNiArNjIyLDIxIEBACiBkZXNjcmlwdG9yIGRpcmVjdGx5IHdpbGwgYnlwYXNzIHRoZSBmaWxlIG9iamVjdCBtZXRob2RzLCBpZ25vcmluZyBhc3BlY3RzIHN1Y2gKIGFzIGludGVybmFsIGJ1ZmZlcmluZyBvZiBkYXRhLgogCisuLiBkYXRhOjogQVRfU1lNTElOS19OT0ZPTExPVworICAgICAgICAgIEFUX0VBQ0NFU1MKKyAgICAgICAgICBBVF9GRENXRAorICAgICAgICAgIEFUX1JFTU9WRURJUgorICAgICAgICAgIEFUX1NZTUxJTktfRk9MTE9XCisgICAgICAgICAgVVRJTUVfTk9XCisgICAgICAgICAgVVRJTUVfT01JVAorCisgICBUaGVzZSBwYXJhbWV0ZXJzIGFyZSB1c2VkIGFzIGZsYWdzIHRvIHRoZSBcKmF0IGZhbWlseSBvZiBmdW5jdGlvbnMuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBjbG9zZShmZCkKIAogICAgQ2xvc2UgZmlsZSBkZXNjcmlwdG9yICpmZCouCkBAIC02MTIsNiArNjg1LDE5IEBACiAgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MuCiAKIAorLi4gZnVuY3Rpb246OiBmYWNjZXNzYXQoZGlyZmQsIHBhdGgsIG1vZGUsIGZsYWdzPTApCisKKyAgIExpa2UgOmZ1bmM6YGFjY2Vzc2AgYnV0IGlmICpwYXRoKiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRpcmZkKi4KKyAgICpmbGFncyogaXMgb3B0aW9uYWwgYW5kIGNhbiBiZSBjb25zdHJ1Y3RlZCBieSBPUmluZyB0b2dldGhlciB6ZXJvIG9yIG1vcmUKKyAgIG9mIHRoZXNlIHZhbHVlczogOmRhdGE6YEFUX1NZTUxJTktfTk9GT0xMT1dgLCA6ZGF0YTpgQVRfRUFDQ0VTU2AuCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogZmNobW9kKGZkLCBtb2RlKQogCiAgICBDaGFuZ2UgdGhlIG1vZGUgb2YgdGhlIGZpbGUgZ2l2ZW4gYnkgKmZkKiB0byB0aGUgbnVtZXJpYyAqbW9kZSouICBTZWUgdGhlIGRvY3MKQEAgLTYyMCw2ICs3MDYsMTggQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peC4KIAogCisuLiBmdW5jdGlvbjo6IGZjaG1vZGF0KGRpcmZkLCBwYXRoLCBtb2RlLCBmbGFncz0wKQorCisgICBMaWtlIDpmdW5jOmBjaG1vZGAgYnV0IGlmICpwYXRoKiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRpcmZkKi4KKyAgICpmbGFncyogaXMgb3B0aW9uYWwgYW5kIG1heSBiZSAwIG9yIDpkYXRhOmBBVF9TWU1MSU5LX05PRk9MTE9XYC4KKyAgIElmICpwYXRoKiBpcyByZWxhdGl2ZSBhbmQgKmRpcmZkKiBpcyB0aGUgc3BlY2lhbCB2YWx1ZSA6ZGF0YTpgQVRfRkRDV0RgLCB0aGVuICpwYXRoKgorICAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBmY2hvd24oZmQsIHVpZCwgZ2lkKQogCiAgICBDaGFuZ2UgdGhlIG93bmVyIGFuZCBncm91cCBpZCBvZiB0aGUgZmlsZSBnaXZlbiBieSAqZmQqIHRvIHRoZSBudW1lcmljICp1aWQqCkBAIC02MjgsNiArNzI2LDE4IEBACiAgICBBdmFpbGFiaWxpdHk6IFVuaXguCiAKIAorLi4gZnVuY3Rpb246OiBmY2hvd25hdChkaXJmZCwgcGF0aCwgdWlkLCBnaWQsIGZsYWdzPTApCisKKyAgIExpa2UgOmZ1bmM6YGNob3duYCBidXQgaWYgKnBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqZGlyZmQqLgorICAgKmZsYWdzKiBpcyBvcHRpb25hbCBhbmQgbWF5IGJlIDAgb3IgOmRhdGE6YEFUX1NZTUxJTktfTk9GT0xMT1dgLgorICAgSWYgKnBhdGgqIGlzIHJlbGF0aXZlIGFuZCAqZGlyZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4gKnBhdGgqCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IGZkYXRhc3luYyhmZCkKIAogICAgRm9yY2Ugd3JpdGUgb2YgZmlsZSB3aXRoIGZpbGVkZXNjcmlwdG9yICpmZCogdG8gZGlzay4gRG9lcyBub3QgZm9yY2UgdXBkYXRlIG9mCkBAIC02MzksNiArNzQ5LDQ3IEBACiAgICAgICBUaGlzIGZ1bmN0aW9uIGlzIG5vdCBhdmFpbGFibGUgb24gTWFjT1MuCiAKIAorLi4gZnVuY3Rpb246OiBmZ2V0eGF0dHIoZmQsIGF0dHIpCisKKyAgIFRoaXMgd29ya3MgZXhhY3RseSBsaWtlIDpmdW5jOmBnZXR4YXR0cmAgYnV0IG9wZXJhdGVzIG9uIGEgZmlsZSBkZXNjcmlwdG9yLAorICAgKmZkKiwgaW5zdGVhZCBvZiBhIHBhdGguCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBmbGlzdHhhdHRyKGZkKQorCisgICBUaGlzIGlzIGV4YWN0bHkgbGlrZSA6ZnVuYzpgbGlzdHhhdHRyYCBidXQgb3BlcmF0ZXMgb24gYSBmaWxlIGRlc2NyaXB0b3IsCisgICAqZmQqLCBpbnN0ZWFkIG9mIGEgcGF0aC4KKworICAgQXZhaWxhYmlsaXR5OiBMaW51eAorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IGZsaXN0ZGlyKGZkKQorCisgICBMaWtlIDpmdW5jOmBsaXN0ZGlyYCwgYnV0IHVzZXMgYSBmaWxlIGRlc2NyaXB0b3IgaW5zdGVhZCBhbmQgYWx3YXlzIHJldHVybnMKKyAgIHN0cmluZ3MuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBmZXhlY3ZlKGZkLCBhcmdzLCBlbnYpCisKKyAgIEV4ZWN1dGUgdGhlIHByb2dyYW0gc3BlY2lmaWVkIGJ5IGEgZmlsZSBkZXNjcmlwdG9yICpmZCogd2l0aCBhcmd1bWVudHMgZ2l2ZW4KKyAgIGJ5ICphcmdzKiBhbmQgZW52aXJvbm1lbnQgZ2l2ZW4gYnkgKmVudiosIHJlcGxhY2luZyB0aGUgY3VycmVudCBwcm9jZXNzLgorICAgKmFyZ3MqIGFuZCAqZW52KiBhcmUgZ2l2ZW4gYXMgaW4gOmZ1bmM6YGV4ZWN2ZWAuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBmcGF0aGNvbmYoZmQsIG5hbWUpCiAKICAgIFJldHVybiBzeXN0ZW0gY29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbiByZWxldmFudCB0byBhbiBvcGVuIGZpbGUuICpuYW1lKgpAQCAtNjYzLDYgKzgxNCwxNyBAQAogCiAgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MuCiAKKy4uIGZ1bmN0aW9uOjogZnN0YXRhdChkaXJmZCwgcGF0aCwgZmxhZ3M9MCkKKworICAgTGlrZSA6ZnVuYzpgc3RhdGAgYnV0IGlmICpwYXRoKiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRpcmZkKi4KKyAgICpmbGFncyogaXMgb3B0aW9uYWwgYW5kIG1heSBiZSAwIG9yIDpkYXRhOmBBVF9TWU1MSU5LX05PRk9MTE9XYC4KKyAgIElmICpwYXRoKiBpcyByZWxhdGl2ZSBhbmQgKmRpcmZkKiBpcyB0aGUgc3BlY2lhbCB2YWx1ZSA6ZGF0YTpgQVRfRkRDV0RgLCB0aGVuICpwYXRoKgorICAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIAogLi4gZnVuY3Rpb246OiBmc3RhdHZmcyhmZCkKIApAQCAtNjkyLDYgKzg1NCw4MCBAQAogICAgQXZhaWxhYmlsaXR5OiBVbml4LgogCiAKKy4uIGZ1bmN0aW9uOjogZnJlbW92ZXhhdHRyKGZkLCBhdHRyKQorCisgICBUaGlzIHdvcmtzIGV4YWN0bHkgbGlrZSA6ZnVuYzpgcmVtb3ZleGF0dHJgIGJ1dCBvcGVyYXRlcyBvbiBhIGZpbGUKKyAgIGRlc2NyaXB0b3IsICpmZCosIGluc3RlYWQgb2YgYSBwYXRoLgorCisgICBBdmFpbGFiaWxpdHk6IExpbnV4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogZnNldHhhdHRyKGZkLCBhdHRyLCB2YWx1ZSwgZmxhZ3M9MCkKKworICAgVGhpcyB3b3JrcyBleGFjdGx5IGxpa2UgOmZ1bmM6YHNldHhhdHRyYCBidXQgb24gYSBmaWxlIGRlc2NyaXB0b3IsICpmZCosCisgICBpbnN0ZWFkIG9mIGEgcGF0aC4KKworCisgICBBdmFpbGFiaWxpdHk6IExpbnV4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogZnV0aW1lc2F0KGRpcmZkLCBwYXRoWywgdGltZXNdKQorCisgICBMaWtlIDpmdW5jOmB1dGltZWAgYnV0IGlmICpwYXRoKiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRpcmZkKi4KKyAgIElmICpwYXRoKiBpcyByZWxhdGl2ZSBhbmQgKmRpcmZkKiBpcyB0aGUgc3BlY2lhbCB2YWx1ZSA6ZGF0YTpgQVRfRkRDV0RgLCB0aGVuICpwYXRoKgorICAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuICAqdGltZXMqIG11c3QgYmUgYQorICAgMi10dXBsZSBvZiBudW1iZXJzLCBvZiB0aGUgZm9ybSBgYChhdGltZSwgbXRpbWUpYGAsIG9yIE5vbmUuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBmdXRpbWVucyhmZFssIGF0aW1lcywgbXRpbWVzXSkKKworICAgVXBkYXRlcyB0aGUgdGltZXN0YW1wcyBvZiBhIGZpbGUgc3BlY2lmaWVkIGJ5IHRoZSBmaWxlIGRlc2NyaXB0b3IgKmZkKiwgd2l0aAorICAgbmFub3NlY29uZCBwcmVjaXNpb24uCisgICBJZiBubyBzZWNvbmQgYXJndW1lbnQgaXMgZ2l2ZW4sIHNldCAqYXRpbWUqIGFuZCAqbXRpbWUqIHRvIHRoZSBjdXJyZW50IHRpbWUuCisgICAqYXRpbWVzKiBhbmQgKm10aW1lcyogbXVzdCBiZSAyLXR1cGxlcyBvZiBudW1iZXJzLCBvZiB0aGUgZm9ybQorICAgYGAoYXRpbWVfc2VjLCBhdGltZV9uc2VjKWBgIGFuZCBgYChtdGltZV9zZWMsIG10aW1lX25zZWMpYGAgcmVzcGVjdGl2ZWx5LAorICAgb3IgYGBOb25lYGAuCisgICBJZiAqYXRpbWVfbnNlYyogb3IgKm10aW1lX25zZWMqIGlzIHNwZWNpZmllZCBhcyA6ZGF0YTpgVVRJTUVfTk9XYCwgdGhlIGNvcnJlc3BvbmRpbmcKKyAgIHRpbWVzdGFtcCBpcyB1cGRhdGVkIHRvIHRoZSBjdXJyZW50IHRpbWUuCisgICBJZiAqYXRpbWVfbnNlYyogb3IgKm10aW1lX25zZWMqIGlzIHNwZWNpZmllZCBhcyA6ZGF0YTpgVVRJTUVfT01JVGAsIHRoZSBjb3JyZXNwb25kaW5nCisgICB0aW1lc3RhbXAgaXMgbm90IHVwZGF0ZWQuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZGF0YTo6IFVUSU1FX05PVworICAgICAgICAgIFVUSU1FX09NSVQKKworICAgRmxhZ3MgdXNlZCB3aXRoIDpmdW5jOmBmdXRpbWVuc2AgdG8gc3BlY2lmeSB0aGF0IHRoZSB0aW1lc3RhbXAgbXVzdCBiZQorICAgdXBkYXRlZCBlaXRoZXIgdG8gdGhlIGN1cnJlbnQgdGltZSBvciBub3QgdXBkYXRlZCBhdCBhbGwuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBmdXRpbWVzKGZkWywgdGltZXNdKQorCisgICBTZXQgdGhlIGFjY2VzcyBhbmQgbW9kaWZpZWQgdGltZSBvZiB0aGUgZmlsZSBzcGVjaWZpZWQgYnkgdGhlIGZpbGUKKyAgIGRlc2NyaXB0b3IgKmZkKiB0byB0aGUgZ2l2ZW4gdmFsdWVzLiAgKmF0aW1lcyogbXVzdCBiZSBhIDItdHVwbGUgb2YgbnVtYmVycywKKyAgIG9mIHRoZSBmb3JtIGBgKGF0aW1lLCBtdGltZSlgYCwgb3IgTm9uZS4gIElmIG5vIHNlY29uZCBhcmd1bWVudCBpcyB1c2VkLAorICAgc2V0IHRoZSBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWVzIHRvIHRoZSBjdXJyZW50IHRpbWUuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBpc2F0dHkoZmQpCiAKICAgIFJldHVybiBgYFRydWVgYCBpZiB0aGUgZmlsZSBkZXNjcmlwdG9yICpmZCogaXMgb3BlbiBhbmQgY29ubmVjdGVkIHRvIGEKQEAgLTcwMCw2ICs5MzYsNDQgQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peC4KIAogCisuLiBmdW5jdGlvbjo6IGxpbmthdChzcmNmZCwgc3JjcGF0aCwgZHN0ZmQsIGRzdHBhdGgsIGZsYWdzPTApCisKKyAgIExpa2UgOmZ1bmM6YGxpbmtgIGJ1dCBpZiAqc3JjcGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpzcmNmZCoKKyAgIGFuZCBpZiAqZHN0cGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpkc3RmZCouCisgICAqZmxhZ3MqIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciA6ZGF0YTpgQVRfU1lNTElOS19GT0xMT1dgLgorICAgSWYgKnNyY3BhdGgqIGlzIHJlbGF0aXZlIGFuZCAqc3JjZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4KKyAgICpzcmNwYXRoKiBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4gVGhpcworICAgYWxzbyBhcHBsaWVzIGZvciAqZHN0cGF0aCouCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBsb2NrZihmZCwgY21kLCBsZW4pCisKKyAgIEFwcGx5LCB0ZXN0IG9yIHJlbW92ZSBhIFBPU0lYIGxvY2sgb24gYW4gb3BlbiBmaWxlIGRlc2NyaXB0b3IuCisgICAqZmQqIGlzIGFuIG9wZW4gZmlsZSBkZXNjcmlwdG9yLgorICAgKmNtZCogc3BlY2lmaWVzIHRoZSBjb21tYW5kIHRvIHVzZSAtIG9uZSBvZiA6ZGF0YTpgRl9MT0NLYCwgOmRhdGE6YEZfVExPQ0tgLAorICAgOmRhdGE6YEZfVUxPQ0tgIG9yIDpkYXRhOmBGX1RFU1RgLgorICAgKmxlbiogc3BlY2lmaWVzIHRoZSBzZWN0aW9uIG9mIHRoZSBmaWxlIHRvIGxvY2suCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZGF0YTo6IEZfTE9DSworICAgICAgICAgIEZfVExPQ0sKKyAgICAgICAgICBGX1VMT0NLCisgICAgICAgICAgRl9URVNUCisKKyAgIEZsYWdzIHRoYXQgc3BlY2lmeSB3aGF0IGFjdGlvbiA6ZnVuYzpgbG9ja2ZgIHdpbGwgdGFrZS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogLi4gZnVuY3Rpb246OiBsc2VlayhmZCwgcG9zLCBob3cpCiAKICAgIFNldCB0aGUgY3VycmVudCBwb3NpdGlvbiBvZiBmaWxlIGRlc2NyaXB0b3IgKmZkKiB0byBwb3NpdGlvbiAqcG9zKiwgbW9kaWZpZWQKQEAgLTcxOSw2ICs5OTMsMzkgQEAKICAgIHJlc3BlY3RpdmVseS4gQXZhaWxhYmlsaXR5OiBXaW5kb3dzLCBVbml4LgogCiAKKy4uIGZ1bmN0aW9uOjogbWtkaXJhdChkaXJmZCwgcGF0aCwgbW9kZT0wbzc3NykKKworICAgTGlrZSA6ZnVuYzpgbWtkaXJgIGJ1dCBpZiAqcGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpkaXJmZCouCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogbWtmaWZvYXQoZGlyZmQsIHBhdGgsIG1vZGU9MG82NjYpCisKKyAgIExpa2UgOmZ1bmM6YG1rZmlmb2AgYnV0IGlmICpwYXRoKiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRpcmZkKi4KKyAgIElmICpwYXRoKiBpcyByZWxhdGl2ZSBhbmQgKmRpcmZkKiBpcyB0aGUgc3BlY2lhbCB2YWx1ZSA6ZGF0YTpgQVRfRkRDV0RgLCB0aGVuICpwYXRoKgorICAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBta25vZGF0KGRpcmZkLCBwYXRoLCBtb2RlPTBvNjAwLCBkZXZpY2U9MCkKKworICAgTGlrZSA6ZnVuYzpgbWtub2RgIGJ1dCBpZiAqcGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpkaXJmZCouCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogb3BlbihmaWxlLCBmbGFnc1ssIG1vZGVdKQogCiAgICBPcGVuIHRoZSBmaWxlICpmaWxlKiBhbmQgc2V0IHZhcmlvdXMgZmxhZ3MgYWNjb3JkaW5nIHRvICpmbGFncyogYW5kIHBvc3NpYmx5CkBAIC03NDEsNiArMTA0OCwxNyBAQAogICAgICAgd3JhcCBhIGZpbGUgZGVzY3JpcHRvciBpbiBhIGZpbGUgb2JqZWN0LCB1c2UgOmZ1bmM6YGZkb3BlbmAuCiAKIAorLi4gZnVuY3Rpb246OiBvcGVuYXQoZGlyZmQsIHBhdGgsIGZsYWdzLCBtb2RlPTBvNzc3KQorCisgICBMaWtlIDpmdW5jOmBvcGVuYCBidXQgaWYgKnBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqZGlyZmQqLgorICAgSWYgKnBhdGgqIGlzIHJlbGF0aXZlIGFuZCAqZGlyZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4gKnBhdGgqCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IG9wZW5wdHkoKQogCiAgICAuLiBpbmRleDo6IG1vZHVsZTogcHR5CkBAIC03NjAsNiArMTA3OCw3OSBAQAogICAgQXZhaWxhYmlsaXR5OiBVbml4LCBXaW5kb3dzLgogCiAKKy4uIGZ1bmN0aW9uOjogcGlwZTIoZmxhZ3MpCisKKyAgIENyZWF0ZSBhIHBpcGUgd2l0aCAqZmxhZ3MqIHNldCBhdG9taWNhbGx5LgorICAgKmZsYWdzKiBjYW4gYmUgY29uc3RydWN0ZWQgYnkgT1JpbmcgdG9nZXRoZXIgb25lIG9yIG1vcmUgb2YgdGhlc2UgdmFsdWVzOgorICAgOmRhdGE6YE9fTk9OQkxPQ0tgLCA6ZGF0YTpgT19DTE9FWEVDYC4KKyAgIFJldHVybiBhIHBhaXIgb2YgZmlsZSBkZXNjcmlwdG9ycyBgYChyLCB3KWBgIHVzYWJsZSBmb3IgcmVhZGluZyBhbmQgd3JpdGluZywKKyAgIHJlc3BlY3RpdmVseS4KKworICAgQXZhaWxhYmlsaXR5OiBzb21lIGZsYXZvcnMgb2YgVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBwb3NpeF9mYWxsb2NhdGUoZmQsIG9mZnNldCwgbGVuKQorCisgICBFbnN1cmVzIHRoYXQgZW5vdWdoIGRpc2sgc3BhY2UgaXMgYWxsb2NhdGVkIGZvciB0aGUgZmlsZSBzcGVjaWZpZWQgYnkgKmZkKgorICAgc3RhcnRpbmcgZnJvbSAqb2Zmc2V0KiBhbmQgY29udGludWluZyBmb3IgKmxlbiogYnl0ZXMuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBwb3NpeF9mYWR2aXNlKGZkLCBvZmZzZXQsIGxlbiwgYWR2aWNlKQorCisgICBBbm5vdW5jZXMgYW4gaW50ZW50aW9uIHRvIGFjY2VzcyBkYXRhIGluIGEgc3BlY2lmaWMgcGF0dGVybiB0aHVzIGFsbG93aW5nCisgICB0aGUga2VybmVsIHRvIG1ha2Ugb3B0aW1pemF0aW9ucy4KKyAgIFRoZSBhZHZpY2UgYXBwbGllcyB0byB0aGUgcmVnaW9uIG9mIHRoZSBmaWxlIHNwZWNpZmllZCBieSAqZmQqIHN0YXJ0aW5nIGF0CisgICAqb2Zmc2V0KiBhbmQgY29udGludWluZyBmb3IgKmxlbiogYnl0ZXMuCisgICAqYWR2aWNlKiBpcyBvbmUgb2YgOmRhdGE6YFBPU0lYX0ZBRFZfTk9STUFMYCwgOmRhdGE6YFBPU0lYX0ZBRFZfU0VRVUVOVElBTGAsCisgICA6ZGF0YTpgUE9TSVhfRkFEVl9SQU5ET01gLCA6ZGF0YTpgUE9TSVhfRkFEVl9OT1JFVVNFYCwKKyAgIDpkYXRhOmBQT1NJWF9GQURWX1dJTExORUVEYCBvciA6ZGF0YTpgUE9TSVhfRkFEVl9ET05UTkVFRGAuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZGF0YTo6IFBPU0lYX0ZBRFZfTk9STUFMCisgICAgICAgICAgUE9TSVhfRkFEVl9TRVFVRU5USUFMCisgICAgICAgICAgUE9TSVhfRkFEVl9SQU5ET00KKyAgICAgICAgICBQT1NJWF9GQURWX05PUkVVU0UKKyAgICAgICAgICBQT1NJWF9GQURWX1dJTExORUVECisgICAgICAgICAgUE9TSVhfRkFEVl9ET05UTkVFRAorCisgICBGbGFncyB0aGF0IGNhbiBiZSB1c2VkIGluICphZHZpY2UqIGluIDpmdW5jOmBwb3NpeF9mYWR2aXNlYCB0aGF0IHNwZWNpZnkKKyAgIHRoZSBhY2Nlc3MgcGF0dGVybiB0aGF0IGlzIGxpa2VseSB0byBiZSB1c2VkLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogcHJlYWQoZmQsIGJ1ZmZlcnNpemUsIG9mZnNldCkKKworICAgUmVhZCBmcm9tIGEgZmlsZSBkZXNjcmlwdG9yLCAqZmQqLCBhdCBhIHBvc2l0aW9uIG9mICpvZmZzZXQqLiBJdCB3aWxsIHJlYWQgdXAKKyAgIHRvICpidWZmZXJzaXplKiBudW1iZXIgb2YgYnl0ZXMuIFRoZSBmaWxlIG9mZnNldCByZW1haW5zIHVuY2hhbmdlZC4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHB3cml0ZShmZCwgc3RyaW5nLCBvZmZzZXQpCisKKyAgIFdyaXRlICpzdHJpbmcqIHRvIGEgZmlsZSBkZXNjcmlwdG9yLCAqZmQqLCBmcm9tICpvZmZzZXQqLCBsZWF2aW5nIHRoZSBmaWxlCisgICBvZmZzZXQgdW5jaGFuZ2VkLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogcmVhZChmZCwgbikKIAogICAgUmVhZCBhdCBtb3N0ICpuKiBieXRlcyBmcm9tIGZpbGUgZGVzY3JpcHRvciAqZmQqLiBSZXR1cm4gYSBieXRlc3RyaW5nIGNvbnRhaW5pbmcgdGhlCkBAIC03NzcsNiArMTE2OCw5MyBAQAogICAgICAgOm1ldGg6YH5maWxlLnJlYWRsaW5lYCBtZXRob2RzLgogCiAKKy4uIGZ1bmN0aW9uOjogc2VuZGZpbGUob3V0LCBpbiwgb2Zmc2V0LCBuYnl0ZXMpCisgICAgICAgICAgICAgIHNlbmRmaWxlKG91dCwgaW4sIG9mZnNldCwgbmJ5dGVzLCBoZWFkZXJzPU5vbmUsIHRyYWlsZXJzPU5vbmUsIGZsYWdzPTApCisKKyAgIENvcHkgKm5ieXRlcyogYnl0ZXMgZnJvbSBmaWxlIGRlc2NyaXB0b3IgKmluKiB0byBmaWxlIGRlc2NyaXB0b3IgKm91dCoKKyAgIHN0YXJ0aW5nIGF0ICpvZmZzZXQqLgorICAgUmV0dXJuIHRoZSBudW1iZXIgb2YgYnl0ZXMgc2VudC4gV2hlbiBFT0YgaXMgcmVhY2hlZCByZXR1cm4gMC4KKworICAgVGhlIGZpcnN0IGZ1bmN0aW9uIG5vdGF0aW9uIGlzIHN1cHBvcnRlZCBieSBhbGwgcGxhdGZvcm1zIHRoYXQgZGVmaW5lCisgICA6ZnVuYzpgc2VuZGZpbGVgLgorCisgICBPbiBMaW51eCwgaWYgKm9mZnNldCogaXMgZ2l2ZW4gYXMgYGBOb25lYGAsIHRoZSBieXRlcyBhcmUgcmVhZCBmcm9tIHRoZQorICAgY3VycmVudCBwb3NpdGlvbiBvZiAqaW4qIGFuZCB0aGUgcG9zaXRpb24gb2YgKmluKiBpcyB1cGRhdGVkLgorCisgICBUaGUgc2Vjb25kIGNhc2UgbWF5IGJlIHVzZWQgb24gTWFjIE9TIFggYW5kIEZyZWVCU0Qgd2hlcmUgKmhlYWRlcnMqIGFuZAorICAgKnRyYWlsZXJzKiBhcmUgYXJiaXRyYXJ5IHNlcXVlbmNlcyBvZiBidWZmZXJzIHRoYXQgYXJlIHdyaXR0ZW4gYmVmb3JlIGFuZAorICAgYWZ0ZXIgdGhlIGRhdGEgZnJvbSAqaW4qIGlzIHdyaXR0ZW4uIEl0IHJldHVybnMgdGhlIHNhbWUgYXMgdGhlIGZpcnN0IGNhc2UuCisKKyAgIE9uIE1hYyBPUyBYIGFuZCBGcmVlQlNELCBhIHZhbHVlIG9mIDAgZm9yICpuYnl0ZXMqIHNwZWNpZmllcyB0byBzZW5kIHVudGlsCisgICB0aGUgZW5kIG9mICppbiogaXMgcmVhY2hlZC4KKworICAgT24gU29sYXJpcywgKm91dCogbWF5IGJlIHRoZSBmaWxlIGRlc2NyaXB0b3Igb2YgYSByZWd1bGFyIGZpbGUgb3IgdGhlIGZpbGUKKyAgIGRlc2NyaXB0b3Igb2YgYSBzb2NrZXQuIE9uIGFsbCBvdGhlciBwbGF0Zm9ybXMsICpvdXQqIG11c3QgYmUgdGhlIGZpbGUKKyAgIGRlc2NyaXB0b3Igb2YgYW4gb3BlbiBzb2NrZXQuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZGF0YTo6IFNGX05PRElTS0lPCisgICAgICAgICAgU0ZfTU5PV0FJVAorICAgICAgICAgIFNGX1NZTkMKKworICAgUGFyYW1ldGVycyB0byB0aGUgOmZ1bmM6YHNlbmRmaWxlYCBmdW5jdGlvbiwgaWYgdGhlIGltcGxlbWVudGF0aW9uIHN1cHBvcnRzCisgICB0aGVtLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogcmVhZGxpbmthdChkaXJmZCwgcGF0aCkKKworICAgTGlrZSA6ZnVuYzpgcmVhZGxpbmtgIGJ1dCBpZiAqcGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpkaXJmZCouCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogcmVuYW1lYXQob2xkZGlyZmQsIG9sZHBhdGgsIG5ld2RpcmZkLCBuZXdwYXRoKQorCisgICBMaWtlIDpmdW5jOmByZW5hbWVgIGJ1dCBpZiAqb2xkcGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvCisgICAqb2xkZGlyZmQqIGFuZCBpZiAqbmV3cGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpuZXdkaXJmZCouCisgICBJZiAqb2xkcGF0aCogaXMgcmVsYXRpdmUgYW5kICpvbGRkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbgorICAgKm9sZHBhdGgqIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiBUaGlzCisgICBhbHNvIGFwcGxpZXMgZm9yICpuZXdwYXRoKi4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHN5bWxpbmthdChzcmMsIGRzdGZkLCBkc3QpCisKKyAgIExpa2UgOmZ1bmM6YHN5bWxpbmtgIGJ1dCBpZiAqZHN0KiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRzdGZkKi4KKyAgIElmICpkc3QqIGlzIHJlbGF0aXZlIGFuZCAqZHN0ZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4gKmRzdCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogcmVhZHYoZmQsIGJ1ZmZlcnMpCisKKyAgIFJlYWQgZnJvbSBhIGZpbGUgZGVzY3JpcHRvciBpbnRvIGEgbnVtYmVyIG9mIHdyaXRhYmxlIGJ1ZmZlcnMuICpidWZmZXJzKiBpcworICAgYW4gYXJiaXRyYXJ5IHNlcXVlbmNlIG9mIHdyaXRhYmxlIGJ1ZmZlcnMuIFJldHVybnMgdGhlIHRvdGFsIG51bWJlciBvZiBieXRlcworICAgcmVhZC4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IHRjZ2V0cGdycChmZCkKIAogICAgUmV0dXJuIHRoZSBwcm9jZXNzIGdyb3VwIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGVybWluYWwgZ2l2ZW4gYnkgKmZkKiAoYW4gb3BlbgpAQCAtODAyLDYgKzEyODAsMzggQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peC4KIAogCisuLiBmdW5jdGlvbjo6IHVubGlua2F0KGRpcmZkLCBwYXRoLCBmbGFncz0wKQorCisgICBMaWtlIDpmdW5jOmB1bmxpbmtgIGJ1dCBpZiAqcGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpkaXJmZCouCisgICAqZmxhZ3MqIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciA6ZGF0YTpgQVRfUkVNT1ZFRElSYC4gSWYgOmRhdGE6YEFUX1JFTU9WRURJUmAgaXMKKyAgIHNwZWNpZmllZCwgOmZ1bmM6YHVubGlua2F0YCBiZWhhdmVzIGxpa2UgOmZ1bmM6YHJtZGlyYC4KKyAgIElmICpwYXRoKiBpcyByZWxhdGl2ZSBhbmQgKmRpcmZkKiBpcyB0aGUgc3BlY2lhbCB2YWx1ZSA6ZGF0YTpgQVRfRkRDV0RgLCB0aGVuICpwYXRoKgorICAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiB1dGltZW5zYXQoZGlyZmQsIHBhdGhbLCBhdGltZT0oYXRpbWVfc2VjLCBhdGltZV9uc2VjKSwgbXRpbWU9KG10aW1lX3NlYywgbXRpbWVfbnNlYyksIGZsYWdzPTBdKQorCisgICBVcGRhdGVzIHRoZSB0aW1lc3RhbXBzIG9mIGEgZmlsZSB3aXRoIG5hbm9zZWNvbmQgcHJlY2lzaW9uLgorICAgVGhlICphdGltZSogYW5kICptdGltZSogdHVwbGVzIGRlZmF1bHQgdG8gYGBOb25lYGAsIHdoaWNoIHNldHMgdGhvc2UKKyAgIHZhbHVlcyB0byB0aGUgY3VycmVudCB0aW1lLgorICAgSWYgKmF0aW1lX25zZWMqIG9yICptdGltZV9uc2VjKiBpcyBzcGVjaWZpZWQgYXMgOmRhdGE6YFVUSU1FX05PV2AsIHRoZSBjb3JyZXNwb25kaW5nCisgICB0aW1lc3RhbXAgaXMgdXBkYXRlZCB0byB0aGUgY3VycmVudCB0aW1lLgorICAgSWYgKmF0aW1lX25zZWMqIG9yICptdGltZV9uc2VjKiBpcyBzcGVjaWZpZWQgYXMgOmRhdGE6YFVUSU1FX09NSVRgLCB0aGUgY29ycmVzcG9uZGluZworICAgdGltZXN0YW1wIGlzIG5vdCB1cGRhdGVkLgorICAgSWYgKnBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqZGlyZmQqLgorICAgKmZsYWdzKiBpcyBvcHRpb25hbCBhbmQgbWF5IGJlIDAgKHRoZSBkZWZhdWx0KSBvciA6ZGF0YTpgQVRfU1lNTElOS19OT0ZPTExPV2AuCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogd3JpdGUoZmQsIHN0cikKIAogICAgV3JpdGUgdGhlIGJ5dGVzdHJpbmcgaW4gKnN0ciogdG8gZmlsZSBkZXNjcmlwdG9yICpmZCouIFJldHVybiB0aGUgbnVtYmVyIG9mCkBAIC04MTgsNiArMTMyOCwxNyBAQAogICAgICAgOm1ldGg6YH5maWxlLndyaXRlYCBtZXRob2QuCiAKIAorLi4gZnVuY3Rpb246OiB3cml0ZXYoZmQsIGJ1ZmZlcnMpCisKKyAgIFdyaXRlIHRoZSBjb250ZW50cyBvZiAqYnVmZmVycyogdG8gZmlsZSBkZXNjcmlwdG9yICpmZCosIHdoZXJlICpidWZmZXJzKgorICAgaXMgYW4gYXJiaXRyYXJ5IHNlcXVlbmNlIG9mIGJ1ZmZlcnMuCisgICBSZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgd3JpdHRlbi4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBfb3Blbi1jb25zdGFudHM6CiAKIGBgb3BlbigpYGAgZmxhZyBjb25zdGFudHMKQEAgLTg0OSw5ICsxMzcwLDEyIEBACiAgICAgICAgICAgT19OT0NUVFkKICAgICAgICAgICBPX1NITE9DSwogICAgICAgICAgIE9fRVhMT0NLCisgICAgICAgICAgT19DTE9FWEVDCiAKICAgIFRoZXNlIGNvbnN0YW50cyBhcmUgb25seSBhdmFpbGFibGUgb24gVW5peC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZCA6ZGF0YTpgT19DTE9FWEVDYCBjb25zdGFudC4KIAogLi4gZGF0YTo6IE9fQklOQVJZCiAgICAgICAgICAgT19OT0lOSEVSSVQKQEAgLTg3NCw2ICsxMzk4LDU2IEBACiAgICB0aGUgQyBsaWJyYXJ5LgogCiAKKy4uIGRhdGE6OiBSVExEX0xBWlkKKyAgICAgICAgICBSVExEX05PVworICAgICAgICAgIFJUTERfR0xPQkFMCisgICAgICAgICAgUlRMRF9MT0NBTAorICAgICAgICAgIFJUTERfTk9ERUxFVEUKKyAgICAgICAgICBSVExEX05PTE9BRAorICAgICAgICAgIFJUTERfREVFUEJJTkQKKworICAgU2VlIHRoZSBVbml4IG1hbnVhbCBwYWdlIDptYW5wYWdlOmBkbG9wZW4oMylgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBfdGVybWluYWwtc2l6ZToKKworUXVlcnlpbmcgdGhlIHNpemUgb2YgYSB0ZXJtaW5hbAorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZnVuY3Rpb246OiBnZXRfdGVybWluYWxfc2l6ZShmZD1TVERPVVRfRklMRU5PKQorCisgICBSZXR1cm4gdGhlIHNpemUgb2YgdGhlIHRlcm1pbmFsIHdpbmRvdyBhcyBgYChjb2x1bW5zLCBsaW5lcylgYCwKKyAgIHR1cGxlIG9mIHR5cGUgOmNsYXNzOmB0ZXJtaW5hbF9zaXplYC4KKworICAgVGhlIG9wdGlvbmFsIGFyZ3VtZW50IGBgZmRgYCAoZGVmYXVsdCBgYFNURE9VVF9GSUxFTk9gYCwgb3Igc3RhbmRhcmQKKyAgIG91dHB1dCkgc3BlY2lmaWVzIHdoaWNoIGZpbGUgZGVzY3JpcHRvciBzaG91bGQgYmUgcXVlcmllZC4KKworICAgSWYgdGhlIGZpbGUgZGVzY3JpcHRvciBpcyBub3QgY29ubmVjdGVkIHRvIGEgdGVybWluYWwsIGFuIDpleGM6YE9TRXJyb3JgCisgICBpcyB0aHJvd24uCisKKyAgIDpmdW5jOmBzaHV0aWwuZ2V0X3Rlcm1pbmFsX3NpemVgIGlzIHRoZSBoaWdoLWxldmVsIGZ1bmN0aW9uIHdoaWNoCisgICBzaG91bGQgbm9ybWFsbHkgYmUgdXNlZCwgYGBvcy5nZXRfdGVybWluYWxfc2l6ZWBgIGlzIHRoZSBsb3ctbGV2ZWwKKyAgIGltcGxlbWVudGF0aW9uLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MuCisKKy4uIGNsYXNzOjogdGVybWluYWxfc2l6ZSh0dXBsZSkKKworICAgQSB0dXBsZSBvZiBgYChjb2x1bW5zLCBsaW5lcylgYCBmb3IgaG9sZGluZyB0ZXJtaW5hbCB3aW5kb3cgc2l6ZS4KKworICAgLi4gYXR0cmlidXRlOjogY29sdW1ucworCisgICAgICBXaWR0aCBvZiB0aGUgdGVybWluYWwgd2luZG93IGluIGNoYXJhY3RlcnMuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IGxpbmVzCisKKyAgICAgIEhlaWdodCBvZiB0aGUgdGVybWluYWwgd2luZG93IGluIGNoYXJhY3RlcnMuCisKKwogLi4gX29zLWZpbGUtZGlyOgogCiBGaWxlcyBhbmQgRGlyZWN0b3JpZXMKQEAgLTkwOSwxMSArMTQ4Myw4IEBACiAKICAgICAgICAgIHRyeToKICAgICAgICAgICAgICBmcCA9IG9wZW4oIm15ZmlsZSIpCi0gICAgICAgICBleGNlcHQgSU9FcnJvciBhcyBlOgotICAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRUFDQ0VTOgotICAgICAgICAgICAgICAgICByZXR1cm4gInNvbWUgZGVmYXVsdCBkYXRhIgotICAgICAgICAgICAgICMgTm90IGEgcGVybWlzc2lvbiBlcnJvci4KLSAgICAgICAgICAgICByYWlzZQorICAgICAgICAgZXhjZXB0IFBlcm1pc3Npb25FcnJvcjoKKyAgICAgICAgICAgICByZXR1cm4gInNvbWUgZGVmYXVsdCBkYXRhIgogICAgICAgICAgZWxzZToKICAgICAgICAgICAgICB3aXRoIGZwOgogICAgICAgICAgICAgICAgICByZXR1cm4gZnAucmVhZCgpCkBAIC0xMDQ5LDkgKzE2MjAsMjMgQEAKICAgIENoYW5nZSB0aGUgb3duZXIgYW5kIGdyb3VwIGlkIG9mICpwYXRoKiB0byB0aGUgbnVtZXJpYyAqdWlkKiBhbmQgKmdpZCouIFRvIGxlYXZlCiAgICBvbmUgb2YgdGhlIGlkcyB1bmNoYW5nZWQsIHNldCBpdCB0byAtMS4KIAorICAgU2VlIDpmdW5jOmBzaHV0aWwuY2hvd25gIGZvciBhIGhpZ2hlci1sZXZlbCBmdW5jdGlvbiB0aGF0IGFjY2VwdHMgbmFtZXMgaW4KKyAgIGFkZGl0aW9uIHRvIG51bWVyaWMgaWRzLgorCiAgICBBdmFpbGFiaWxpdHk6IFVuaXguCiAKIAorLi4gZnVuY3Rpb246OiBnZXR4YXR0cihwYXRoLCBhdHRyKQorCisgICBSZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSBleHRlbmRlZCBmaWxlc3lzdGVtIGF0dHJpYnV0ZSAqYXR0ciogZm9yCisgICAqcGF0aCouICphdHRyKiBjYW4gYmUgYnl0ZXMgb3Igc3RyLiBJZiBpdCBpcyBzdHIsIGl0IGlzIGVuY29kZWQgd2l0aCB0aGUKKyAgIGZpbGVzeXN0ZW0gZW5jb2RpbmcuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBsY2hmbGFncyhwYXRoLCBmbGFncykKIAogICAgU2V0IHRoZSBmbGFncyBvZiAqcGF0aCogdG8gdGhlIG51bWVyaWMgKmZsYWdzKiwgbGlrZSA6ZnVuYzpgY2hmbGFnc2AsIGJ1dCBkbyBub3QKQEAgLTEwNzcsNiArMTY2MiwxNSBAQAogICAgQXZhaWxhYmlsaXR5OiBVbml4LgogCiAKKy4uIGZ1bmN0aW9uOjogbGdldHhhdHRyKHBhdGgsIGF0dHIpCisKKyAgIFRoaXMgd29ya3MgZXhhY3RseSBsaWtlIDpmdW5jOmBnZXR4YXR0cmAgYnV0IGRvZXNuJ3QgZm9sbG93IHN5bWxpbmtzLgorCisgICBBdmFpbGFiaWxpdHk6IExpbnV4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogbGluayhzb3VyY2UsIGxpbmtfbmFtZSkKIAogICAgQ3JlYXRlIGEgaGFyZCBsaW5rIHBvaW50aW5nIHRvICpzb3VyY2UqIG5hbWVkICpsaW5rX25hbWUqLgpAQCAtMTEwMSw2ICsxNjk1LDQ0IEBACiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgICAgVGhlICpwYXRoKiBwYXJhbWV0ZXIgYmVjYW1lIG9wdGlvbmFsLgogCisKKy4uIGZ1bmN0aW9uOjogbGlzdHhhdHRyKHBhdGgpCisKKyAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIGV4dGVuZGVkIGZpbGVzeXN0ZW0gYXR0cmlidXRlcyBvbiAqcGF0aCouIEF0dHJpYnV0ZXMgYXJlCisgICByZXR1cm5lZCBhcyBzdHJpbmcgZGVjb2RlZCB3aXRoIHRoZSBmaWxlc3lzdGVtIGVuY29kaW5nLgorCisgICBBdmFpbGFiaWxpdHk6IExpbnV4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogbGxpc3R4YXR0cihwYXRoKQorCisgICBUaGlzIHdvcmtzIGV4YWN0bHkgbGlrZSA6ZnVuYzpgbGlzdHhhdHRyYCBidXQgZG9lc24ndCBmb2xsb3cgc3ltbGlua3MuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBscmVtb3ZleGF0dHIocGF0aCwgYXR0cikKKworICAgVGhpcyB3b3JrcyBleGFjdGx5IGxpa2UgOmZ1bmM6YHJlbW92ZXhhdHRyYCBidXQgZG9lc24ndCBmb2xsb3cgc3ltbGlua3MuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBsc2V0eGF0dHIocGF0aCwgYXR0ciwgdmFsdWUsIGZsYWdzPTApCisKKyAgIFRoaXMgd29ya3MgZXhhY3RseSBsaWtlIDpmdW5jOmBzZXR4YXR0cmAgYnV0IGRvZXNuJ3QgZm9sbG93IHN5bWxpbmtzLgorCisgICBBdmFpbGFiaWxpdHk6IExpbnV4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogbHN0YXQocGF0aCkKIAogICAgUGVyZm9ybSB0aGUgZXF1aXZhbGVudCBvZiBhbiA6YzpmdW5jOmBsc3RhdGAgc3lzdGVtIGNhbGwgb24gdGhlIGdpdmVuIHBhdGguCkBAIC0xMTEyLDYgKzE3NDQsMTggQEAKICAgICAgIEFkZGVkIHN1cHBvcnQgZm9yIFdpbmRvd3MgNi4wIChWaXN0YSkgc3ltYm9saWMgbGlua3MuCiAKIAorLi4gZnVuY3Rpb246OiBsdXRpbWVzKHBhdGhbLCB0aW1lc10pCisKKyAgIExpa2UgOmZ1bmM6YHV0aW1lYCwgYnV0IGlmICpwYXRoKiBpcyBhIHN5bWJvbGljIGxpbmssIGl0IGlzIG5vdAorICAgZGVyZWZlcmVuY2VkLiAgKnRpbWVzKiBtdXN0IGJlIGEgMi10dXBsZSBvZiBudW1iZXJzLCBvZiB0aGUgZm9ybQorICAgYGAoYXRpbWUsIG10aW1lKWBgLCBvciBOb25lLgorCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBta2ZpZm8ocGF0aFssIG1vZGVdKQogCiAgICBDcmVhdGUgYSBGSUZPIChhIG5hbWVkIHBpcGUpIG5hbWVkICpwYXRoKiB3aXRoIG51bWVyaWMgbW9kZSAqbW9kZSouICBUaGUKQEAgLTEyNjMsNiArMTkwNywxNyBAQAogICAgc3VjY2Vzc2Z1bGx5IHJlbW92ZWQuCiAKIAorLi4gZnVuY3Rpb246OiByZW1vdmV4YXR0cihwYXRoLCBhdHRyKQorCisgICBSZW1vdmVzIHRoZSBleHRlbmRlZCBmaWxlc3lzdGVtIGF0dHJpYnV0ZSAqYXR0ciogZnJvbSAqcGF0aCouICphdHRyKiBzaG91bGQKKyAgIGJlIGJ5dGVzIG9yIHN0ci4gSWYgaXQgaXMgYSBzdHJpbmcsIGl0IGlzIGVuY29kZWQgd2l0aCB0aGUgZmlsZXN5c3RlbQorICAgZW5jb2RpbmcuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiByZW5hbWUoc3JjLCBkc3QpCiAKICAgIFJlbmFtZSB0aGUgZmlsZSBvciBkaXJlY3RvcnkgKnNyYyogdG8gKmRzdCouICBJZiAqZHN0KiBpcyBhIGRpcmVjdG9yeSwKQEAgLTEyNzEsOCArMTkyNiw5IEBACiAgICBVbml4IGZsYXZvcnMgaWYgKnNyYyogYW5kICpkc3QqIGFyZSBvbiBkaWZmZXJlbnQgZmlsZXN5c3RlbXMuICBJZiBzdWNjZXNzZnVsLAogICAgdGhlIHJlbmFtaW5nIHdpbGwgYmUgYW4gYXRvbWljIG9wZXJhdGlvbiAodGhpcyBpcyBhIFBPU0lYIHJlcXVpcmVtZW50KS4gIE9uCiAgICBXaW5kb3dzLCBpZiAqZHN0KiBhbHJlYWR5IGV4aXN0cywgOmV4YzpgT1NFcnJvcmAgd2lsbCBiZSByYWlzZWQgZXZlbiBpZiBpdCBpcyBhCi0gICBmaWxlOyB0aGVyZSBtYXkgYmUgbm8gd2F5IHRvIGltcGxlbWVudCBhbiBhdG9taWMgcmVuYW1lIHdoZW4gKmRzdCogbmFtZXMgYW4KLSAgIGV4aXN0aW5nIGZpbGUuCisgICBmaWxlLgorCisgICBJZiB5b3Ugd2FudCBjcm9zcy1wbGF0Zm9ybSBvdmVyd3JpdGluZyBvZiB0aGUgZGVzdGluYXRpb24sIHVzZSA6ZnVuYzpgcmVwbGFjZWAuCiAKICAgIEF2YWlsYWJpbGl0eTogVW5peCwgV2luZG93cy4KIApAQCAtMTI5MCw2ICsxOTQ2LDE5IEBACiAgICAgICBwZXJtaXNzaW9ucyBuZWVkZWQgdG8gcmVtb3ZlIHRoZSBsZWFmIGRpcmVjdG9yeSBvciBmaWxlLgogCiAKKy4uIGZ1bmN0aW9uOjogcmVwbGFjZShzcmMsIGRzdCkKKworICAgUmVuYW1lIHRoZSBmaWxlIG9yIGRpcmVjdG9yeSAqc3JjKiB0byAqZHN0Ki4gIElmICpkc3QqIGlzIGEgZGlyZWN0b3J5LAorICAgOmV4YzpgT1NFcnJvcmAgd2lsbCBiZSByYWlzZWQuICBJZiAqZHN0KiBleGlzdHMgYW5kIGlzIGEgZmlsZSwgaXQgd2lsbAorICAgYmUgcmVwbGFjZWQgc2lsZW50bHkgaWYgdGhlIHVzZXIgaGFzIHBlcm1pc3Npb24uICBUaGUgb3BlcmF0aW9uIG1heSBmYWlsCisgICBpZiAqc3JjKiBhbmQgKmRzdCogYXJlIG9uIGRpZmZlcmVudCBmaWxlc3lzdGVtcy4gIElmIHN1Y2Nlc3NmdWwsCisgICB0aGUgcmVuYW1pbmcgd2lsbCBiZSBhbiBhdG9taWMgb3BlcmF0aW9uICh0aGlzIGlzIGEgUE9TSVggcmVxdWlyZW1lbnQpLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBybWRpcihwYXRoKQogCiAgICBSZW1vdmUgKGRlbGV0ZSkgdGhlIGRpcmVjdG9yeSAqcGF0aCouICBPbmx5IHdvcmtzIHdoZW4gdGhlIGRpcmVjdG9yeSBpcwpAQCAtMTI5OSw2ICsxOTY4LDQ0IEBACiAgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MuCiAKIAorLi4gZGF0YTo6IFhBVFRSX1NJWkVfTUFYCisKKyAgIFRoZSBtYXhpbXVtIHNpemUgdGhlIHZhbHVlIG9mIGFuIGV4dGVuZGVkIGF0dHJpYnV0ZSBjYW4gYmUuIEN1cnJlbnRseSwgdGhpcworICAgaXMgNjQga2lsb2J5dGVzIG9uIExpbnV4LgorCisKKy4uIGRhdGE6OiBYQVRUUl9DUkVBVEUKKworICAgVGhpcyBpcyBhIHBvc3NpYmxlIHZhbHVlIGZvciB0aGUgZmxhZ3MgYXJndW1lbnQgaW4gOmZ1bmM6YHNldHhhdHRyYC4gSXQKKyAgIGluZGljYXRlcyB0aGUgb3BlcmF0aW9uIG11c3QgY3JlYXRlIGFuIGF0dHJpYnV0ZS4KKworCisuLiBkYXRhOjogWEFUVFJfUkVQTEFDRQorCisgICBUaGlzIGlzIGEgcG9zc2libGUgdmFsdWUgZm9yIHRoZSBmbGFncyBhcmd1bWVudCBpbiA6ZnVuYzpgc2V0eGF0dHJgLiBJdAorICAgaW5kaWNhdGVzIHRoZSBvcGVyYXRpb24gbXVzdCByZXBsYWNlIGFuIGV4aXN0aW5nIGF0dHJpYnV0ZS4KKworCisuLiBmdW5jdGlvbjo6IHNldHhhdHRyKHBhdGgsIGF0dHIsIHZhbHVlLCBmbGFncz0wKQorCisgICBTZXQgdGhlIGV4dGVuZGVkIGZpbGVzeXN0ZW0gYXR0cmlidXRlICphdHRyKiBvbiAqcGF0aCogdG8gKnZhbHVlKi4gKmF0dHIqCisgICBtdXN0IGJlIGEgYnl0ZXMgb3Igc3RyIHdpdGggbm8gZW1iZWRkZWQgTlVMcy4gSWYgaXQgaXMgc3RyLCBpdCBpcyBlbmNvZGVkCisgICB3aXRoIHRoZSBmaWxlc3lzdGVtIGVuY29kaW5nLiAqZmxhZ3MqIG1heSBiZSA6ZGF0YTpgWEFUVFJfUkVQTEFDRWAgb3IKKyAgIDpkYXRhOmBYQVRUUl9DUkVBVEVgLiBJZiA6ZGF0YTpgWEFUVFJfUkVQTEFDRWAgaXMgZ2l2ZW4gYW5kIHRoZSBhdHRyaWJ1dGUKKyAgIGRvZXMgbm90IGV4aXN0LCBgYEVFWElTVFNgYCB3aWxsIGJlIHJhaXNlZC4gSWYgOmRhdGE6YFhBVFRSX0NSRUFURWAgaXMgZ2l2ZW4KKyAgIGFuZCB0aGUgYXR0cmlidXRlIGFscmVhZHkgZXhpc3RzLCB0aGUgYXR0cmlidXRlIHdpbGwgbm90IGJlIGNyZWF0ZWQgYW5kCisgICBgYEVOT0RBVEFgYCB3aWxsIGJlIHJhaXNlZC4KKworICAgQXZhaWxhYmlsaXR5OiBMaW51eAorCisgICAuLiBub3RlOjoKKworICAgICAgQSBidWcgaW4gTGludXgga2VybmVsIHZlcnNpb25zIGxlc3MgdGhhbiAyLjYuMzkgY2F1c2VkIHRoZSBmbGFncyBhcmd1bWVudAorICAgICAgdG8gYmUgaWdub3JlZCBvbiBzb21lIGZpbGVzeXN0ZW1zLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IHN0YXQocGF0aCkKIAogICAgUGVyZm9ybSB0aGUgZXF1aXZhbGVudCBvZiBhIDpjOmZ1bmM6YHN0YXRgIHN5c3RlbSBjYWxsIG9uIHRoZSBnaXZlbiBwYXRoLgpAQCAtMTQ1Myw2ICsyMTYwLDI1IEBACiAgICAgICBBZGRlZCBzdXBwb3J0IGZvciBXaW5kb3dzIDYuMCAoVmlzdGEpIHN5bWJvbGljIGxpbmtzLgogCiAKKy4uIGZ1bmN0aW9uOjogc3luYygpCisKKyAgIEZvcmNlIHdyaXRlIG9mIGV2ZXJ5dGhpbmcgdG8gZGlzay4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHRydW5jYXRlKHBhdGgsIGxlbmd0aCkKKworICAgVHJ1bmNhdGUgdGhlIGZpbGUgY29ycmVzcG9uZGluZyB0byAqcGF0aCosIHNvIHRoYXQgaXQgaXMgYXQgbW9zdAorICAgKmxlbmd0aCogYnl0ZXMgaW4gc2l6ZS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IHVubGluayhwYXRoKQogCiAgICBSZW1vdmUgKGRlbGV0ZSkgdGhlIGZpbGUgKnBhdGgqLiAgVGhpcyBpcyB0aGUgc2FtZSBmdW5jdGlvbiBhcwpAQCAtMTQ2MiwxOCArMjE4OCwxOSBAQAogICAgQXZhaWxhYmlsaXR5OiBVbml4LCBXaW5kb3dzLgogCiAKLS4uIGZ1bmN0aW9uOjogdXRpbWUocGF0aCwgdGltZXMpCisuLiBmdW5jdGlvbjo6IHV0aW1lKHBhdGhbLCB0aW1lc10pCiAKICAgIFNldCB0aGUgYWNjZXNzIGFuZCBtb2RpZmllZCB0aW1lcyBvZiB0aGUgZmlsZSBzcGVjaWZpZWQgYnkgKnBhdGgqLiBJZiAqdGltZXMqCi0gICBpcyBgYE5vbmVgYCwgdGhlbiB0aGUgZmlsZSdzIGFjY2VzcyBhbmQgbW9kaWZpZWQgdGltZXMgYXJlIHNldCB0byB0aGUgY3VycmVudAotICAgdGltZS4gKFRoZSBlZmZlY3QgaXMgc2ltaWxhciB0byBydW5uaW5nIHRoZSBVbml4IHByb2dyYW0gOnByb2dyYW06YHRvdWNoYCBvbgotICAgdGhlIHBhdGguKSAgT3RoZXJ3aXNlLCAqdGltZXMqIG11c3QgYmUgYSAyLXR1cGxlIG9mIG51bWJlcnMsIG9mIHRoZSBmb3JtCi0gICBgYChhdGltZSwgbXRpbWUpYGAgd2hpY2ggaXMgdXNlZCB0byBzZXQgdGhlIGFjY2VzcyBhbmQgbW9kaWZpZWQgdGltZXMsCi0gICByZXNwZWN0aXZlbHkuIFdoZXRoZXIgYSBkaXJlY3RvcnkgY2FuIGJlIGdpdmVuIGZvciAqcGF0aCogZGVwZW5kcyBvbiB3aGV0aGVyCi0gICB0aGUgb3BlcmF0aW5nIHN5c3RlbSBpbXBsZW1lbnRzIGRpcmVjdG9yaWVzIGFzIGZpbGVzIChmb3IgZXhhbXBsZSwgV2luZG93cwotICAgZG9lcyBub3QpLiAgTm90ZSB0aGF0IHRoZSBleGFjdCB0aW1lcyB5b3Ugc2V0IGhlcmUgbWF5IG5vdCBiZSByZXR1cm5lZCBieSBhCi0gICBzdWJzZXF1ZW50IDpmdW5jOmB+b3Muc3RhdGAgY2FsbCwgZGVwZW5kaW5nIG9uIHRoZSByZXNvbHV0aW9uIHdpdGggd2hpY2ggeW91cgotICAgb3BlcmF0aW5nIHN5c3RlbSByZWNvcmRzIGFjY2VzcyBhbmQgbW9kaWZpY2F0aW9uIHRpbWVzOyBzZWUgOmZ1bmM6YH5vcy5zdGF0YC4KKyAgIGlzIGBgTm9uZWBgIG9yIG5vdCBzcGVjaWZpZWQsIHRoZW4gdGhlIGZpbGUncyBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWVzIGFyZQorICAgc2V0IHRvIHRoZSBjdXJyZW50IHRpbWUuIChUaGUgZWZmZWN0IGlzIHNpbWlsYXIgdG8gcnVubmluZyB0aGUgVW5peCBwcm9ncmFtCisgICA6cHJvZ3JhbTpgdG91Y2hgIG9uIHRoZSBwYXRoLikgIE90aGVyd2lzZSwgKnRpbWVzKiBtdXN0IGJlIGEgMi10dXBsZSBvZgorICAgbnVtYmVycywgb2YgdGhlIGZvcm0gYGAoYXRpbWUsIG10aW1lKWBgIHdoaWNoIGlzIHVzZWQgdG8gc2V0IHRoZSBhY2Nlc3MgYW5kCisgICBtb2RpZmllZCB0aW1lcywgcmVzcGVjdGl2ZWx5LiBXaGV0aGVyIGEgZGlyZWN0b3J5IGNhbiBiZSBnaXZlbiBmb3IgKnBhdGgqCisgICBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIG9wZXJhdGluZyBzeXN0ZW0gaW1wbGVtZW50cyBkaXJlY3RvcmllcyBhcyBmaWxlcworICAgKGZvciBleGFtcGxlLCBXaW5kb3dzIGRvZXMgbm90KS4gIE5vdGUgdGhhdCB0aGUgZXhhY3QgdGltZXMgeW91IHNldCBoZXJlIG1heQorICAgbm90IGJlIHJldHVybmVkIGJ5IGEgc3Vic2VxdWVudCA6ZnVuYzpgfm9zLnN0YXRgIGNhbGwsIGRlcGVuZGluZyBvbiB0aGUKKyAgIHJlc29sdXRpb24gd2l0aCB3aGljaCB5b3VyIG9wZXJhdGluZyBzeXN0ZW0gcmVjb3JkcyBhY2Nlc3MgYW5kIG1vZGlmaWNhdGlvbgorICAgdGltZXM7IHNlZSA6ZnVuYzpgfm9zLnN0YXRgLgogCiAgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MuCiAKQEAgLTE1NjEsNiArMjI4OCw1NyBAQAogICAgICAgICAgICAgICBvcy5ybWRpcihvcy5wYXRoLmpvaW4ocm9vdCwgbmFtZSkpCiAKIAorLi4gZnVuY3Rpb246OiBmd2Fsayh0b3AsIHRvcGRvd249VHJ1ZSwgb25lcnJvcj1Ob25lLCBmb2xsb3dsaW5rcz1GYWxzZSkKKworICAgLi4gaW5kZXg6OgorICAgICAgc2luZ2xlOiBkaXJlY3Rvcnk7IHdhbGtpbmcKKyAgICAgIHNpbmdsZTogZGlyZWN0b3J5OyB0cmF2ZXJzYWwKKworICAgVGhpcyBiZWhhdmVzIGV4YWN0bHkgbGlrZSA6ZnVuYzpgd2Fsa2AsIGV4Y2VwdCB0aGF0IGl0IHlpZWxkcyBhIDQtdHVwbGUKKyAgIGBgKGRpcnBhdGgsIGRpcm5hbWVzLCBmaWxlbmFtZXMsIGRpcmZkKWBgLgorCisgICAqZGlycGF0aCosICpkaXJuYW1lcyogYW5kICpmaWxlbmFtZXMqIGFyZSBpZGVudGljYWwgdG8gOmZ1bmM6YHdhbGtgIG91dHB1dCwKKyAgIGFuZCAqZGlyZmQqIGlzIGEgZmlsZSBkZXNjcmlwdG9yIHJlZmVycmluZyB0byB0aGUgZGlyZWN0b3J5ICpkaXJwYXRoKi4KKworICAgLi4gbm90ZTo6CisKKyAgICAgIFNpbmNlIDpmdW5jOmBmd2Fsa2AgeWllbGRzIGZpbGUgZGVzY3JpcHRvcnMsIHRob3NlIGFyZSBvbmx5IHZhbGlkIHVudGlsCisgICAgICB0aGUgbmV4dCBpdGVyYXRpb24gc3RlcCwgc28geW91IHNob3VsZCBkdXBsaWNhdGUgdGhlbSAoZS5nLiB3aXRoCisgICAgICA6ZnVuYzpgZHVwYCkgaWYgeW91IHdhbnQgdG8ga2VlcCB0aGVtIGxvbmdlci4KKworICAgVGhpcyBleGFtcGxlIGRpc3BsYXlzIHRoZSBudW1iZXIgb2YgYnl0ZXMgdGFrZW4gYnkgbm9uLWRpcmVjdG9yeSBmaWxlcyBpbiBlYWNoCisgICBkaXJlY3RvcnkgdW5kZXIgdGhlIHN0YXJ0aW5nIGRpcmVjdG9yeSwgZXhjZXB0IHRoYXQgaXQgZG9lc24ndCBsb29rIHVuZGVyIGFueQorICAgQ1ZTIHN1YmRpcmVjdG9yeTo6CisKKyAgICAgIGltcG9ydCBvcworICAgICAgZm9yIHJvb3QsIGRpcnMsIGZpbGVzLCByb290ZmQgaW4gb3MuZndhbGsoJ3B5dGhvbi9MaWIvZW1haWwnKToKKyAgICAgICAgICBwcmludChyb290LCAiY29uc3VtZXMiLCBlbmQ9IiIpCisgICAgICAgICAgcHJpbnQoc3VtKFtvcy5mc3RhdGF0KHJvb3RmZCwgbmFtZSkuc3Rfc2l6ZSBmb3IgbmFtZSBpbiBmaWxlc10pLAorICAgICAgICAgICAgICAgIGVuZD0iIikKKyAgICAgICAgICBwcmludCgiYnl0ZXMgaW4iLCBsZW4oZmlsZXMpLCAibm9uLWRpcmVjdG9yeSBmaWxlcyIpCisgICAgICAgICAgaWYgJ0NWUycgaW4gZGlyczoKKyAgICAgICAgICAgICAgZGlycy5yZW1vdmUoJ0NWUycpICAjIGRvbid0IHZpc2l0IENWUyBkaXJlY3RvcmllcworCisgICBJbiB0aGUgbmV4dCBleGFtcGxlLCB3YWxraW5nIHRoZSB0cmVlIGJvdHRvbS11cCBpcyBlc3NlbnRpYWw6CisgICA6ZnVuYzpgdW5saW5rYXRgIGRvZXNuJ3QgYWxsb3cgZGVsZXRpbmcgYSBkaXJlY3RvcnkgYmVmb3JlIHRoZSBkaXJlY3RvcnkgaXMKKyAgIGVtcHR5OjoKKworICAgICAgIyBEZWxldGUgZXZlcnl0aGluZyByZWFjaGFibGUgZnJvbSB0aGUgZGlyZWN0b3J5IG5hbWVkIGluICJ0b3AiLAorICAgICAgIyBhc3N1bWluZyB0aGVyZSBhcmUgbm8gc3ltYm9saWMgbGlua3MuCisgICAgICAjIENBVVRJT046ICBUaGlzIGlzIGRhbmdlcm91cyEgIEZvciBleGFtcGxlLCBpZiB0b3AgPT0gJy8nLCBpdAorICAgICAgIyBjb3VsZCBkZWxldGUgYWxsIHlvdXIgZGlzayBmaWxlcy4KKyAgICAgIGltcG9ydCBvcworICAgICAgZm9yIHJvb3QsIGRpcnMsIGZpbGVzLCByb290ZmQgaW4gb3MuZndhbGsodG9wLCB0b3Bkb3duPUZhbHNlKToKKyAgICAgICAgICBmb3IgbmFtZSBpbiBmaWxlczoKKyAgICAgICAgICAgICAgb3MudW5saW5rYXQocm9vdGZkLCBuYW1lKQorICAgICAgICAgIGZvciBuYW1lIGluIGRpcnM6CisgICAgICAgICAgICAgIG9zLnVubGlua2F0KHJvb3RmZCwgbmFtZSwgb3MuQVRfUkVNT1ZFRElSKQorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIF9vcy1wcm9jZXNzOgogCiBQcm9jZXNzIE1hbmFnZW1lbnQKQEAgLTE4MjUsNiArMjYwMyw4IEBACiAgICB3aWxsIGJlIHNldCB0byAqc2lnKi4gVGhlIFdpbmRvd3MgdmVyc2lvbiBvZiA6ZnVuYzpga2lsbGAgYWRkaXRpb25hbGx5IHRha2VzCiAgICBwcm9jZXNzIGhhbmRsZXMgdG8gYmUga2lsbGVkLgogCisgICBTZWUgYWxzbyA6ZnVuYzpgc2lnbmFsLnB0aHJlYWRfa2lsbGAuCisKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogICAgICAgV2luZG93cyBzdXBwb3J0LgogCkBAIC0yMDM1LDYgKzI4MTUsNTggQEAKIAogICAgQXZhaWxhYmlsaXR5OiBVbml4LgogCisuLiBmdW5jdGlvbjo6IHdhaXRpZChpZHR5cGUsIGlkLCBvcHRpb25zKQorCisgICBXYWl0IGZvciB0aGUgY29tcGxldGlvbiBvZiBvbmUgb3IgbW9yZSBjaGlsZCBwcm9jZXNzZXMuCisgICAqaWR0eXBlKiBjYW4gYmUgOmRhdGE6YFBfUElEYCwgOmRhdGE6YFBfUEdJRGAgb3IgOmRhdGE6YFBfQUxMYC4KKyAgICppZCogc3BlY2lmaWVzIHRoZSBwaWQgdG8gd2FpdCBvbi4KKyAgICpvcHRpb25zKiBpcyBjb25zdHJ1Y3RlZCBmcm9tIHRoZSBPUmluZyBvZiBvbmUgb3IgbW9yZSBvZiA6ZGF0YTpgV0VYSVRFRGAsCisgICA6ZGF0YTpgV1NUT1BQRURgIG9yIDpkYXRhOmBXQ09OVElOVUVEYCBhbmQgYWRkaXRpb25hbGx5IG1heSBiZSBPUmVkIHdpdGgKKyAgIDpkYXRhOmBXTk9IQU5HYCBvciA6ZGF0YTpgV05PV0FJVGAuIFRoZSByZXR1cm4gdmFsdWUgaXMgYW4gb2JqZWN0CisgICByZXByZXNlbnRpbmcgdGhlIGRhdGEgY29udGFpbmVkIGluIHRoZSA6Yzp0eXBlOmBzaWdpbmZvX3RgIHN0cnVjdHVyZSwgbmFtZWx5OgorICAgOmF0dHI6YHNpX3BpZGAsIDphdHRyOmBzaV91aWRgLCA6YXR0cjpgc2lfc2lnbm9gLCA6YXR0cjpgc2lfc3RhdHVzYCwKKyAgIDphdHRyOmBzaV9jb2RlYCBvciBgYE5vbmVgYCBpZiA6ZGF0YTpgV05PSEFOR2AgaXMgc3BlY2lmaWVkIGFuZCB0aGVyZSBhcmUgbm8KKyAgIGNoaWxkcmVuIGluIGEgd2FpdGFibGUgc3RhdGUuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGRhdGE6OiBQX1BJRAorICAgICAgICAgIFBfUEdJRAorICAgICAgICAgIFBfQUxMCisKKyAgIFRoZXNlIGFyZSB0aGUgcG9zc2libGUgdmFsdWVzIGZvciAqaWR0eXBlKiBpbiA6ZnVuYzpgd2FpdGlkYC4gVGhleSBhZmZlY3QKKyAgIGhvdyAqaWQqIGlzIGludGVycHJldGVkLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogV0VYSVRFRAorICAgICAgICAgIFdTVE9QUEVECisgICAgICAgICAgV05PV0FJVAorCisgICBGbGFncyB0aGF0IGNhbiBiZSB1c2VkIGluICpvcHRpb25zKiBpbiA6ZnVuYzpgd2FpdGlkYCB0aGF0IHNwZWNpZnkgd2hhdAorICAgY2hpbGQgc2lnbmFsIHRvIHdhaXQgZm9yLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGRhdGE6OiBDTERfRVhJVEVECisgICAgICAgICAgQ0xEX0RVTVBFRAorICAgICAgICAgIENMRF9UUkFQUEVECisgICAgICAgICAgQ0xEX0NPTlRJTlVFRAorCisgICBUaGVzZSBhcmUgdGhlIHBvc3NpYmxlIHZhbHVlcyBmb3IgOmF0dHI6YHNpX2NvZGVgIGluIHRoZSByZXN1bHQgcmV0dXJuZWQgYnkKKyAgIDpmdW5jOmB3YWl0aWRgLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAKIC4uIGZ1bmN0aW9uOjogd2FpdHBpZChwaWQsIG9wdGlvbnMpCiAKQEAgLTIxNzYsNiArMzAwOCwxNTUgQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peC4KIAogCitJbnRlcmZhY2UgdG8gdGhlIHNjaGVkdWxlcgorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlc2UgZnVuY3Rpb25zIGNvbnRyb2wgaG93IGEgcHJvY2VzcyBpcyBhbGxvY2F0ZWQgQ1BVIHRpbWUgYnkgdGhlIG9wZXJhdGluZworc3lzdGVtLiBUaGV5IGFyZSBvbmx5IGF2YWlsYWJsZSBvbiBzb21lIFVuaXggcGxhdGZvcm1zLiBGb3IgbW9yZSBkZXRhaWxlZAoraW5mb3JtYXRpb24sIGNvbnN1bHQgeW91ciBVbml4IG1hbnBhZ2VzLgorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworVGhlIGZvbGxvd2luZyBzY2hlZHVsaW5nIHBvbGljaWVzIGFyZSBleHBvc2VkIGlmIHRoZXkgYXJlIGEgc3VwcG9ydGVkIGJ5IHRoZQorb3BlcmF0aW5nIHN5c3RlbS4KKworLi4gZGF0YTo6IFNDSEVEX09USEVSCisKKyAgIFRoZSBkZWZhdWx0IHNjaGVkdWxpbmcgcG9saWN5LgorCisuLiBkYXRhOjogU0NIRURfQkFUQ0gKKworICAgU2NoZWR1bGluZyBwb2xpY3kgZm9yIENQVS1pbnRlbnNpdmUgcHJvY2Vzc2VzIHRoYXQgdHJpZXMgdG8gcHJlc2VydmUKKyAgIGludGVyYWN0aXZpdHkgb24gdGhlIHJlc3Qgb2YgdGhlIGNvbXB1dGVyLgorCisuLiBkYXRhOjogU0NIRURfSURMRQorCisgICBTY2hlZHVsaW5nIHBvbGljeSBmb3IgZXh0cmVtZWx5IGxvdyBwcmlvcml0eSBiYWNrZ3JvdW5kIHRhc2tzLgorCisuLiBkYXRhOjogU0NIRURfU1BPUkFESUMKKworICAgU2NoZWR1bGluZyBwb2xpY3kgZm9yIHNwb3JhZGljIHNlcnZlciBwcm9ncmFtcy4KKworLi4gZGF0YTo6IFNDSEVEX0ZJRk8KKworICAgQSBGaXJzdCBJbiBGaXJzdCBPdXQgc2NoZWR1bGluZyBwb2xpY3kuCisKKy4uIGRhdGE6OiBTQ0hFRF9SUgorCisgICBBIHJvdW5kLXJvYmluIHNjaGVkdWxpbmcgcG9saWN5LgorCisuLiBkYXRhOjogU0NIRURfUkVTRVRfT05fRk9SSworCisgICBUaGlzIGZsYWcgY2FuIE9SJ2VkIHdpdGggYW55IG90aGVyIHNjaGVkdWxpbmcgcG9saWN5LiBXaGVuIGEgcHJvY2VzcyB3aXRoCisgICB0aGlzIGZsYWcgc2V0IGZvcmtzLCBpdHMgY2hpbGQncyBzY2hlZHVsaW5nIHBvbGljeSBhbmQgcHJpb3JpdHkgYXJlIHJlc2V0IHRvCisgICB0aGUgZGVmYXVsdC4KKworCisuLiBjbGFzczo6IHNjaGVkX3BhcmFtKHNjaGVkX3ByaW9yaXR5KQorCisgICBUaGlzIGNsYXNzIHJlcHJlc2VudHMgdHVuYWJsZSBzY2hlZHVsaW5nIHBhcmFtZXRlcnMgdXNlZCBpbgorICAgOmZ1bmM6YHNjaGVkX3NldHBhcmFtYCwgOmZ1bmM6YHNjaGVkX3NldHNjaGVkdWxlcmAsIGFuZAorICAgOmZ1bmM6YHNjaGVkX2dldHBhcmFtYC4gSXQgaXMgaW1tdXRhYmxlLgorCisgICBBdCB0aGUgbW9tZW50LCB0aGVyZSBpcyBvbmx5IG9uZSBwb3NzaWJsZSBwYXJhbWV0ZXI6CisKKyAgIC4uIGF0dHJpYnV0ZTo6IHNjaGVkX3ByaW9yaXR5CisKKyAgICAgIFRoZSBzY2hlZHVsaW5nIHByaW9yaXR5IGZvciBhIHNjaGVkdWxpbmcgcG9saWN5LgorCisKKy4uIGZ1bmN0aW9uOjogc2NoZWRfZ2V0X3ByaW9yaXR5X21pbihwb2xpY3kpCisKKyAgIEdldCB0aGUgbWluaW11bSBwcmlvcml0eSB2YWx1ZSBmb3IgKnBvbGljeSouICpwb2xpY3kqIGlzIG9uZSBvZiB0aGUKKyAgIHNjaGVkdWxpbmcgcG9saWN5IGNvbnN0YW50cyBhYm92ZS4KKworCisuLiBmdW5jdGlvbjo6IHNjaGVkX2dldF9wcmlvcml0eV9tYXgocG9saWN5KQorCisgICBHZXQgdGhlIG1heGltdW0gcHJpb3JpdHkgdmFsdWUgZm9yICpwb2xpY3kqLiAqcG9saWN5KiBpcyBvbmUgb2YgdGhlCisgICBzY2hlZHVsaW5nIHBvbGljeSBjb25zdGFudHMgYWJvdmUuCisKKworLi4gZnVuY3Rpb246OiBzY2hlZF9zZXRzY2hlZHVsZXIocGlkLCBwb2xpY3ksIHBhcmFtKQorCisgICBTZXQgdGhlIHNjaGVkdWxpbmcgcG9saWN5IGZvciB0aGUgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKi4gQSAqcGlkKiBvZiAwIG1lYW5zCisgICB0aGUgY2FsbGluZyBwcm9jZXNzLiAqcG9saWN5KiBpcyBvbmUgb2YgdGhlIHNjaGVkdWxpbmcgcG9saWN5IGNvbnN0YW50cworICAgYWJvdmUuICpwYXJhbSogaXMgYSA6Y2xhc3M6YHNjaGVkX3BhcmFtYCBpbnN0YW5jZS4KKworCisuLiBmdW5jdGlvbjo6IHNjaGVkX2dldHNjaGVkdWxlcihwaWQpCisKKyAgIFJldHVybiB0aGUgc2NoZWR1bGluZyBwb2xpY3kgZm9yIHRoZSBwcm9jZXNzIHdpdGggUElEICpwaWQqLiBBICpwaWQqIG9mIDAKKyAgIG1lYW5zIHRoZSBjYWxsaW5nIHByb2Nlc3MuIFRoZSByZXN1bHQgaXMgb25lIG9mIHRoZSBzY2hlZHVsaW5nIHBvbGljeQorICAgY29uc3RhbnRzIGFib3ZlLgorCisKKy4uIGZ1bmN0aW9uOjogc2NoZWRfc2V0cGFyYW0ocGlkLCBwYXJhbSkKKworICAgU2V0IGEgc2NoZWR1bGluZyBwYXJhbWV0ZXJzIGZvciB0aGUgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKi4gQSAqcGlkKiBvZiAwIG1lYW5zCisgICB0aGUgY2FsbGluZyBwcm9jZXNzLiAqcGFyYW0qIGlzIGEgOmNsYXNzOmBzY2hlZF9wYXJhbWAgaW5zdGFuY2UuCisKKworLi4gZnVuY3Rpb246OiBzY2hlZF9nZXRwYXJhbShwaWQpCisKKyAgIFJldHVybiB0aGUgc2NoZWR1bGluZyBwYXJhbWV0ZXJzIGFzIGEgOmNsYXNzOmBzY2hlZF9wYXJhbWAgaW5zdGFuY2UgZm9yIHRoZQorICAgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKi4gQSAqcGlkKiBvZiAwIG1lYW5zIHRoZSBjYWxsaW5nIHByb2Nlc3MuCisKKworLi4gZnVuY3Rpb246OiBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwocGlkKQorCisgICBSZXR1cm4gdGhlIHJvdW5kLXJvYmluIHF1YW50dW0gaW4gc2Vjb25kcyBmb3IgdGhlIHByb2Nlc3Mgd2l0aCBQSUQgKnBpZCouIEEKKyAgICpwaWQqIG9mIDAgbWVhbnMgdGhlIGNhbGxpbmcgcHJvY2Vzcy4KKworCisuLiBmdW5jdGlvbjo6IHNjaGVkX3lpZWxkKCkKKworICAgVm9sdW50YXJpbHkgcmVsaW5xdWlzaCB0aGUgQ1BVLgorCisKKy4uIGNsYXNzOjogY3B1X3NldChuY3B1cykKKworICAgOmNsYXNzOmBjcHVfc2V0YCByZXByZXNlbnRzIGEgc2V0IG9mIENQVXMgb24gd2hpY2ggYSBwcm9jZXNzIGlzIGVsaWdpYmxlIHRvCisgICBydW4uICpuY3B1cyogaXMgdGhlIG51bWJlciBvZiBDUFVzIHRoZSBzZXQgc2hvdWxkIGRlc2NyaWJlLiBNZXRob2RzIG9uCisgICA6Y2xhc3M6YGNwdV9zZXRgIGFsbG93IENQVXMgdG8gYmUgYWRkIG9yIHJlbW92ZWQuCisKKyAgIDpjbGFzczpgY3B1X3NldGAgc3VwcG9ydHMgdGhlIEFORCwgT1IsIGFuZCBYT1IgYml0d2lzZSBvcGVyYXRpb25zLiBGb3IKKyAgIGV4YW1wbGUsIGdpdmVuIHR3byBjcHVfc2V0cywgYGBvbmVgYCBhbmQgYGB0d29gYCwgYGBvbmUgfCB0d29gYCByZXR1cm5zIGEKKyAgIDpjbGFzczpgY3B1X3NldGAgY29udGFpbmluZyB0aGUgY3B1cyBlbmFibGVkIGJvdGggaW4gYGBvbmVgYCBhbmQgYGB0d29gYC4KKworICAgLi4gbWV0aG9kOjogc2V0KGkpCisKKyAgICAgIEVuYWJsZSBDUFUgKmkqLgorCisgICAuLiBtZXRob2Q6OiBjbGVhcihpKQorCisgICAgICBSZW1vdmUgQ1BVICppKi4KKworICAgLi4gbWV0aG9kOjogaXNzZXQoaSkKKworICAgICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIENQVSAqaSogaXMgZW5hYmxlZCBpbiB0aGUgc2V0LgorCisgICAuLiBtZXRob2Q6OiBjb3VudCgpCisKKyAgICAgIFJldHVybiB0aGUgbnVtYmVyIG9mIGVuYWJsZWQgQ1BVcyBpbiB0aGUgc2V0LgorCisgICAuLiBtZXRob2Q6OiB6ZXJvKCkKKworICAgICAgQ2xlYXIgdGhlIHNldCBjb21wbGV0ZWx5LgorCisKKy4uIGZ1bmN0aW9uOjogc2NoZWRfc2V0YWZmaW5pdHkocGlkLCBtYXNrKQorCisgICBSZXN0cmljdCB0aGUgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKiB0byBhIHNldCBvZiBDUFVzLiAqbWFzayogaXMgYQorICAgOmNsYXNzOmBjcHVfc2V0YCBpbnN0YW5jZS4KKworCisuLiBmdW5jdGlvbjo6IHNjaGVkX2dldGFmZmluaXR5KHBpZCwgc2l6ZSkKKworICAgUmV0dXJuIHRoZSA6Y2xhc3M6YGNwdV9zZXRgIHRoZSBwcm9jZXNzIHdpdGggUElEICpwaWQqIGlzIHJlc3RyaWN0ZWQgdG8uIFRoZQorICAgcmVzdWx0IHdpbGwgY29udGFpbiAqc2l6ZSogQ1BVcy4KKworCiAuLiBfb3MtcGF0aDoKIAogTWlzY2VsbGFuZW91cyBTeXN0ZW0gSW5mb3JtYXRpb24KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L29zc2F1ZGlvZGV2LnJzdCBiL0RvYy9saWJyYXJ5L29zc2F1ZGlvZGV2LnJzdAppbmRleCAwYTA4NDI4Li41MWM1ODU3IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9vc3NhdWRpb2Rldi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvb3NzYXVkaW9kZXYucnN0CkBAIC0zOCw2ICszOCwxMCBAQAogICAgVGhpcyBwcm9iYWJseSBhbGwgd2FycmFudHMgYSBmb290bm90ZSBvciB0d28sIGJ1dCBJIGRvbid0IHVuZGVyc3RhbmQKICAgIHRoaW5ncyB3ZWxsIGVub3VnaCByaWdodCBub3cgdG8gd3JpdGUgaXQhICAgLS1HUFcKIAorLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIE9wZXJhdGlvbnMgaW4gdGhpcyBtb2R1bGUgbm93IHJhaXNlIDpleGM6YE9TRXJyb3JgIHdoZXJlIDpleGM6YElPRXJyb3JgCisgICB3YXMgcmFpc2VkLgorCiAKIC4uIHNlZWFsc286OgogCkBAIC01Niw3ICs2MCw3IEBACiAgICB3aGF0IHdlbnQgd3JvbmcuCiAKICAgIChJZiA6bW9kOmBvc3NhdWRpb2RldmAgcmVjZWl2ZXMgYW4gZXJyb3IgZnJvbSBhIHN5c3RlbSBjYWxsIHN1Y2ggYXMKLSAgIDpjOmZ1bmM6YG9wZW5gLCA6YzpmdW5jOmB3cml0ZWAsIG9yIDpjOmZ1bmM6YGlvY3RsYCwgaXQgcmFpc2VzIDpleGM6YElPRXJyb3JgLgorICAgOmM6ZnVuYzpgb3BlbmAsIDpjOmZ1bmM6YHdyaXRlYCwgb3IgOmM6ZnVuYzpgaW9jdGxgLCBpdCByYWlzZXMgOmV4YzpgT1NFcnJvcmAuCiAgICBFcnJvcnMgZGV0ZWN0ZWQgZGlyZWN0bHkgYnkgOm1vZDpgb3NzYXVkaW9kZXZgIHJlc3VsdCBpbiA6ZXhjOmBPU1NBdWRpb0Vycm9yYC4pCiAKICAgIChGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIHRoZSBleGNlcHRpb24gY2xhc3MgaXMgYWxzbyBhdmFpbGFibGUgYXMKQEAgLTE2OCw3ICsxNzIsNyBAQAogY29ycmVzcG9uZGVuY2UgaXMgb2J2aW91czogZm9yIGV4YW1wbGUsIDptZXRoOmBzZXRmbXRgIGNvcnJlc3BvbmRzIHRvIHRoZQogYGBTTkRDVExfRFNQX1NFVEZNVGBgIGlvY3RsLCBhbmQgOm1ldGg6YHN5bmNgIHRvIGBgU05EQ1RMX0RTUF9TWU5DYGAgKHRoaXMgY2FuCiBiZSB1c2VmdWwgd2hlbiBjb25zdWx0aW5nIHRoZSBPU1MgZG9jdW1lbnRhdGlvbikuICBJZiB0aGUgdW5kZXJseWluZwotOmZ1bmM6YGlvY3RsYCBmYWlscywgdGhleSBhbGwgcmFpc2UgOmV4YzpgSU9FcnJvcmAuCis6ZnVuYzpgaW9jdGxgIGZhaWxzLCB0aGV5IGFsbCByYWlzZSA6ZXhjOmBPU0Vycm9yYC4KIAogCiAuLiBtZXRob2Q6OiBvc3NfYXVkaW9fZGV2aWNlLm5vbmJsb2NrKCkKQEAgLTM0NCw3ICszNDgsNyBAQAogLi4gbWV0aG9kOjogb3NzX21peGVyX2RldmljZS5jbG9zZSgpCiAKICAgIFRoaXMgbWV0aG9kIGNsb3NlcyB0aGUgb3BlbiBtaXhlciBkZXZpY2UgZmlsZS4gIEFueSBmdXJ0aGVyIGF0dGVtcHRzIHRvIHVzZSB0aGUKLSAgIG1peGVyIGFmdGVyIHRoaXMgZmlsZSBpcyBjbG9zZWQgd2lsbCByYWlzZSBhbiA6ZXhjOmBJT0Vycm9yYC4KKyAgIG1peGVyIGFmdGVyIHRoaXMgZmlsZSBpcyBjbG9zZWQgd2lsbCByYWlzZSBhbiA6ZXhjOmBPU0Vycm9yYC4KIAogCiAuLiBtZXRob2Q6OiBvc3NfbWl4ZXJfZGV2aWNlLmZpbGVubygpCkBAIC00MDMsNyArNDA3LDcgQEAKICAgIHJldHVybmVkLCBidXQgYm90aCB2b2x1bWVzIGFyZSB0aGUgc2FtZS4KIAogICAgUmFpc2VzIDpleGM6YE9TU0F1ZGlvRXJyb3JgIGlmIGFuIGludmFsaWQgY29udHJvbCB3YXMgaXMgc3BlY2lmaWVkLCBvcgotICAgOmV4YzpgSU9FcnJvcmAgaWYgYW4gdW5zdXBwb3J0ZWQgY29udHJvbCBpcyBzcGVjaWZpZWQuCisgICA6ZXhjOmBPU0Vycm9yYCBpZiBhbiB1bnN1cHBvcnRlZCBjb250cm9sIGlzIHNwZWNpZmllZC4KIAogCiAuLiBtZXRob2Q6OiBvc3NfbWl4ZXJfZGV2aWNlLnNldChjb250cm9sLCAobGVmdCwgcmlnaHQpKQpAQCAtNDI3LDcgKzQzMSw3IEBACiAuLiBtZXRob2Q6OiBvc3NfbWl4ZXJfZGV2aWNlLnNldF9yZWNzcmMoYml0bWFzaykKIAogICAgQ2FsbCB0aGlzIGZ1bmN0aW9uIHRvIHNwZWNpZnkgYSByZWNvcmRpbmcgc291cmNlLiAgUmV0dXJucyBhIGJpdG1hc2sgaW5kaWNhdGluZwotICAgdGhlIG5ldyByZWNvcmRpbmcgc291cmNlIChvciBzb3VyY2VzKSBpZiBzdWNjZXNzZnVsOyByYWlzZXMgOmV4YzpgSU9FcnJvcmAgaWYgYW4KKyAgIHRoZSBuZXcgcmVjb3JkaW5nIHNvdXJjZSAob3Igc291cmNlcykgaWYgc3VjY2Vzc2Z1bDsgcmFpc2VzIDpleGM6YE9TRXJyb3JgIGlmIGFuCiAgICBpbnZhbGlkIHNvdXJjZSB3YXMgc3BlY2lmaWVkLiAgVG8gc2V0IHRoZSBjdXJyZW50IHJlY29yZGluZyBzb3VyY2UgdG8gdGhlCiAgICBtaWNyb3Bob25lIGlucHV0OjoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLW1pc2MucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLW1pc2MucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlNTYyNDcKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmctbWlzYy5yc3QKQEAgLTAsMCArMSwyNyBAQAorLi4gdGVtcG9yYXJ5IGZpbGUgZm9yIG1vZHVsZXMgdGhhdCBkb24ndCBuZWVkIGEgZGVkaWNhdGVkIGZpbGUgeWV0CisKKzptb2Q6YHBhY2thZ2luZy5lcnJvcnNgIC0tLSBQYWNrYWdpbmcgZXhjZXB0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5lcnJvcnMKKyAgIDpzeW5vcHNpczogUGFja2FnaW5nIGV4Y2VwdGlvbnMuCisKKworUHJvdmlkZXMgZXhjZXB0aW9ucyB1c2VkIGJ5IHRoZSBQYWNrYWdpbmcgbW9kdWxlcy4gIE5vdGUgdGhhdCBQYWNrYWdpbmcgbW9kdWxlcworbWF5IHJhaXNlIHN0YW5kYXJkIGV4Y2VwdGlvbnM7IGluIHBhcnRpY3VsYXIsIFN5c3RlbUV4aXQgaXMgdXN1YWxseSByYWlzZWQgZm9yCitlcnJvcnMgdGhhdCBhcmUgb2J2aW91c2x5IHRoZSBlbmQtdXNlcidzIGZhdWx0IChlLmcuIGJhZCBjb21tYW5kLWxpbmUgYXJndW1lbnRzKS4KKworVGhpcyBtb2R1bGUgaXMgc2FmZSB0byB1c2UgaW4gYGBmcm9tIC4uLiBpbXBvcnQgKmBgIG1vZGU7IGl0IG9ubHkgZXhwb3J0cworc3ltYm9scyB3aG9zZSBuYW1lcyBzdGFydCB3aXRoIGBgUGFja2FnaW5nYGAgYW5kIGVuZCB3aXRoIGBgRXJyb3JgYC4KKworCis6bW9kOmBwYWNrYWdpbmcubWFuaWZlc3RgIC0tLSBUaGUgTWFuaWZlc3QgY2xhc3MKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcubWFuaWZlc3QKKyAgIDpzeW5vcHNpczogVGhlIE1hbmlmZXN0IGNsYXNzLCB1c2VkIGZvciBwb2tpbmcgYWJvdXQgdGhlIGZpbGUgc3lzdGVtIGFuZAorICAgICAgICAgICAgICBidWlsZGluZyBsaXN0cyBvZiBmaWxlcy4KKworCitUaGlzIG1vZHVsZSBwcm92aWRlcyB0aGUgOmNsYXNzOmBNYW5pZmVzdGAgY2xhc3MsIHVzZWQgZm9yIHBva2luZyBhYm91dCB0aGUKK2ZpbGVzeXN0ZW0gYW5kIGJ1aWxkaW5nIGxpc3RzIG9mIGZpbGVzLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmNvbW1hbmQucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmNvbW1hbmQucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZhODUzNTEKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuY29tbWFuZC5yc3QKQEAgLTAsMCArMSwxMTEgQEAKKzptb2Q6YHBhY2thZ2luZy5jb21tYW5kYCAtLS0gU3RhbmRhcmQgUGFja2FnaW5nIGNvbW1hbmRzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcuY29tbWFuZAorICAgOnN5bm9wc2lzOiBTdGFuZGFyZCBwYWNrYWdpbmcgY29tbWFuZHMuCisKKworVGhpcyBzdWJwYWNrYWdlIGNvbnRhaW5zIG9uZSBtb2R1bGUgZm9yIGVhY2ggc3RhbmRhcmQgUGFja2FnaW5nIGNvbW1hbmQsIHN1Y2ggYXMKKzpjb21tYW5kOmBidWlsZGAgIG9yIDpjb21tYW5kOmB1cGxvYWRgLiAgRWFjaCBjb21tYW5kIGlzIGltcGxlbWVudGVkIGFzIGEKK3NlcGFyYXRlIG1vZHVsZSwgd2l0aCB0aGUgY29tbWFuZCBuYW1lIGFzIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgYW5kIG9mIHRoZQorY2xhc3MgZGVmaW5lZCB0aGVyZWluLgorCisKKworOm1vZDpgcGFja2FnaW5nLmNvbW1hbmQuY21kYCAtLS0gQWJzdHJhY3QgYmFzZSBjbGFzcyBmb3IgUGFja2FnaW5nIGNvbW1hbmRzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmNvbW1hbmQuY21kCisgICA6c3lub3BzaXM6IEFic3RyYWN0IGJhc2UgY2xhc3MgZm9yIGNvbW1hbmRzLgorCisKK1RoaXMgbW9kdWxlIHN1cHBsaWVzIHRoZSBhYnN0cmFjdCBiYXNlIGNsYXNzIDpjbGFzczpgQ29tbWFuZGAuICBUaGlzIGNsYXNzIGlzCitzdWJjbGFzc2VkIGJ5IHRoZSBtb2R1bGVzIGluIHRoZSBwYWNrYWdpbmcuY29tbWFuZCBzdWJwYWNrYWdlLgorCisKKy4uIGNsYXNzOjogQ29tbWFuZChkaXN0KQorCisgICBBYnN0cmFjdCBiYXNlIGNsYXNzIGZvciBkZWZpbmluZyBjb21tYW5kIGNsYXNzZXMsIHRoZSAid29ya2VyIGJlZXMiIG9mIHRoZQorICAgUGFja2FnaW5nLiAgQSB1c2VmdWwgYW5hbG9neSBmb3IgY29tbWFuZCBjbGFzc2VzIGlzIHRvIHRoaW5rIG9mIHRoZW0gYXMKKyAgIHN1YnJvdXRpbmVzIHdpdGggbG9jYWwgdmFyaWFibGVzIGNhbGxlZCAqb3B0aW9ucyouICBUaGUgb3B0aW9ucyBhcmUgZGVjbGFyZWQKKyAgIGluIDptZXRoOmBpbml0aWFsaXplX29wdGlvbnNgIGFuZCBkZWZpbmVkIChnaXZlbiB0aGVpciBmaW5hbCB2YWx1ZXMpIGluCisgICA6bWV0aDpgZmluYWxpemVfb3B0aW9uc2AsIGJvdGggb2Ygd2hpY2ggbXVzdCBiZSBkZWZpbmVkIGJ5IGV2ZXJ5IGNvbW1hbmQKKyAgIGNsYXNzLiAgVGhlIGRpc3RpbmN0aW9uIGJldHdlZW4gdGhlIHR3byBpcyBuZWNlc3NhcnkgYmVjYXVzZSBvcHRpb24gdmFsdWVzCisgICBtaWdodCBjb21lIGZyb20gdGhlIG91dHNpZGUgd29ybGQgKGNvbW1hbmQgbGluZSwgY29uZmlnIGZpbGUsIC4uLiksIGFuZCBhbnkKKyAgIG9wdGlvbnMgZGVwZW5kZW50IG9uIG90aGVyIG9wdGlvbnMgbXVzdCBiZSBjb21wdXRlZCBhZnRlciB0aGVzZSBvdXRzaWRlCisgICBpbmZsdWVuY2VzIGhhdmUgYmVlbiBwcm9jZXNzZWQgLS0tIGhlbmNlIDptZXRoOmBmaW5hbGl6ZV9vcHRpb25zYC4gIFRoZSBib2R5CisgICBvZiB0aGUgc3Vicm91dGluZSwgd2hlcmUgaXQgZG9lcyBhbGwgaXRzIHdvcmsgYmFzZWQgb24gdGhlIHZhbHVlcyBvZiBpdHMKKyAgIG9wdGlvbnMsIGlzIHRoZSA6bWV0aDpgcnVuYCBtZXRob2QsIHdoaWNoIG11c3QgYWxzbyBiZSBpbXBsZW1lbnRlZCBieSBldmVyeQorICAgY29tbWFuZCBjbGFzcy4KKworICAgVGhlIGNsYXNzIGNvbnN0cnVjdG9yIHRha2VzIGEgc2luZ2xlIGFyZ3VtZW50ICpkaXN0KiwgYQorICAgOmNsYXNzOmB+cGFja2FnaW5nLmRpc3QuRGlzdHJpYnV0aW9uYCBpbnN0YW5jZS4KKworCitDcmVhdGluZyBhIG5ldyBQYWNrYWdpbmcgY29tbWFuZAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhpcyBzZWN0aW9uIG91dGxpbmVzIHRoZSBzdGVwcyB0byBjcmVhdGUgYSBuZXcgUGFja2FnaW5nIGNvbW1hbmQuCisKKy4uIFhYWCB0aGUgZm9sbG93aW5nIHBhcmFncmFwaCBpcyBmb2N1c2VkIG9uIHRoZSBzdGRsaWI7IGV4cGFuZCBpdCB0byBkb2N1bWVudAorICAgaG93IHRvIHdyaXRlIGFuZCByZWdpc3RlciBhIGNvbW1hbmQgaW4gdGhpcmQtcGFydHkgcHJvamVjdHMKKworQSBuZXcgY29tbWFuZCBsaXZlcyBpbiBhIG1vZHVsZSBpbiB0aGUgOm1vZDpgcGFja2FnaW5nLmNvbW1hbmRgIHBhY2thZ2UuIFRoZXJlCitpcyBhIHNhbXBsZSB0ZW1wbGF0ZSBpbiB0aGF0IGRpcmVjdG9yeSBjYWxsZWQgOmZpbGU6YGNvbW1hbmRfdGVtcGxhdGVgLiAgQ29weQordGhpcyBmaWxlIHRvIGEgbmV3IG1vZHVsZSB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgdGhlIG5ldyBjb21tYW5kIHlvdSdyZQoraW1wbGVtZW50aW5nLiAgVGhpcyBtb2R1bGUgc2hvdWxkIGltcGxlbWVudCBhIGNsYXNzIHdpdGggdGhlIHNhbWUgbmFtZSBhcyB0aGUKK21vZHVsZSAoYW5kIHRoZSBjb21tYW5kKS4gIFNvLCBmb3IgaW5zdGFuY2UsIHRvIGNyZWF0ZSB0aGUgY29tbWFuZAorYGBwZWVsX2JhbmFuYWBgIChzbyB0aGF0IHVzZXJzIGNhbiBydW4gYGBzZXR1cC5weSBwZWVsX2JhbmFuYWBgKSwgeW91J2QgY29weQorOmZpbGU6YGNvbW1hbmRfdGVtcGxhdGVgIHRvIDpmaWxlOmBwYWNrYWdpbmcvY29tbWFuZC9wZWVsX2JhbmFuYS5weWAsIHRoZW4gZWRpdAoraXQgc28gdGhhdCBpdCdzIGltcGxlbWVudGluZyB0aGUgY2xhc3MgOmNsYXNzOmBwZWVsX2JhbmFuYWAsIGEgc3ViY2xhc3Mgb2YKKzpjbGFzczpgQ29tbWFuZGAuICBJdCBtdXN0IGRlZmluZSB0aGUgZm9sbG93aW5nIG1ldGhvZHM6CisKKy4uIG1ldGhvZDo6IENvbW1hbmQuaW5pdGlhbGl6ZV9vcHRpb25zKCkKKworICAgU2V0IGRlZmF1bHQgdmFsdWVzIGZvciBhbGwgdGhlIG9wdGlvbnMgdGhhdCB0aGlzIGNvbW1hbmQgc3VwcG9ydHMuICBOb3RlIHRoYXQKKyAgIHRoZXNlIGRlZmF1bHRzIG1heSBiZSBvdmVycmlkZGVuIGJ5IG90aGVyIGNvbW1hbmRzLCBieSB0aGUgc2V0dXAgc2NyaXB0LCBieQorICAgY29uZmlnIGZpbGVzLCBvciBieSB0aGUgY29tbWFuZCBsaW5lLiAgVGh1cywgdGhpcyBpcyBub3QgdGhlIHBsYWNlIHRvIGNvZGUKKyAgIGRlcGVuZGVuY2llcyBiZXR3ZWVuIG9wdGlvbnM7IGdlbmVyYWxseSwgOm1ldGg6YGluaXRpYWxpemVfb3B0aW9uc2AKKyAgIGltcGxlbWVudGF0aW9ucyBhcmUganVzdCBhIGJ1bmNoIG9mIGBgc2VsZi5mb28gPSBOb25lYGAgYXNzaWdubWVudHMuCisKKworLi4gbWV0aG9kOjogQ29tbWFuZC5maW5hbGl6ZV9vcHRpb25zKCkKKworICAgU2V0IGZpbmFsIHZhbHVlcyBmb3IgYWxsIHRoZSBvcHRpb25zIHRoYXQgdGhpcyBjb21tYW5kIHN1cHBvcnRzLiBUaGlzIGlzCisgICBhbHdheXMgY2FsbGVkIGFzIGxhdGUgYXMgcG9zc2libGUsIGkuZS4gYWZ0ZXIgYW55IG9wdGlvbiBhc3NpZ25tZW50cyBmcm9tIHRoZQorICAgY29tbWFuZCBsaW5lIG9yIGZyb20gb3RoZXIgY29tbWFuZHMgaGF2ZSBiZWVuIGRvbmUuICBUaHVzLCB0aGlzIGlzIHRoZSBwbGFjZQorICAgdG8gY29kZSBvcHRpb24gZGVwZW5kZW5jaWVzOiBpZiAqZm9vKiBkZXBlbmRzIG9uICpiYXIqLCB0aGVuIGl0IGlzIHNhZmUgdG8KKyAgIHNldCAqZm9vKiBmcm9tICpiYXIqIGFzIGxvbmcgYXMgKmZvbyogc3RpbGwgaGFzIHRoZSBzYW1lIHZhbHVlIGl0IHdhcworICAgYXNzaWduZWQgaW4gOm1ldGg6YGluaXRpYWxpemVfb3B0aW9uc2AuCisKKworLi4gbWV0aG9kOjogQ29tbWFuZC5ydW4oKQorCisgICBBIGNvbW1hbmQncyByYWlzb24gZCdldHJlOiBjYXJyeSBvdXQgdGhlIGFjdGlvbiBpdCBleGlzdHMgdG8gcGVyZm9ybSwKKyAgIGNvbnRyb2xsZWQgYnkgdGhlIG9wdGlvbnMgaW5pdGlhbGl6ZWQgaW4gOm1ldGg6YGluaXRpYWxpemVfb3B0aW9uc2AsCisgICBjdXN0b21pemVkIGJ5IG90aGVyIGNvbW1hbmRzLCB0aGUgc2V0dXAgc2NyaXB0LCB0aGUgY29tbWFuZCBsaW5lLCBhbmQgY29uZmlnCisgICBmaWxlcywgYW5kIGZpbmFsaXplZCBpbiA6bWV0aDpgZmluYWxpemVfb3B0aW9uc2AuICBBbGwgdGVybWluYWwgb3V0cHV0IGFuZAorICAgZmlsZXN5c3RlbSBpbnRlcmFjdGlvbiBzaG91bGQgYmUgZG9uZSBieSA6bWV0aDpgcnVuYC4KKworCitDb21tYW5kIGNsYXNzZXMgbWF5IGRlZmluZSB0aGlzIGF0dHJpYnV0ZToKKworCisuLiBhdHRyaWJ1dGU6OiBDb21tYW5kLnN1Yl9jb21tYW5kcworCisgICAqc3ViX2NvbW1hbmRzKiBmb3JtYWxpemVzIHRoZSBub3Rpb24gb2YgYSAiZmFtaWx5IiBvZiBjb21tYW5kcywKKyAgIGUuZy4gYGBpbnN0YWxsX2Rpc3RgYCBhcyB0aGUgcGFyZW50IHdpdGggc3ViLWNvbW1hbmRzIGBgaW5zdGFsbF9saWJgYCwKKyAgIGBgaW5zdGFsbF9oZWFkZXJzYGAsIGV0Yy4gIFRoZSBwYXJlbnQgb2YgYSBmYW1pbHkgb2YgY29tbWFuZHMgZGVmaW5lcworICAgKnN1Yl9jb21tYW5kcyogYXMgYSBjbGFzcyBhdHRyaWJ1dGU7IGl0J3MgYSBsaXN0IG9mIDItdHVwbGVzIGBgKGNvbW1hbmRfbmFtZSwKKyAgIHByZWRpY2F0ZSlgYCwgd2l0aCAqY29tbWFuZF9uYW1lKiBhIHN0cmluZyBhbmQgKnByZWRpY2F0ZSogYSBmdW5jdGlvbiwgYQorICAgc3RyaW5nIG9yIGBgTm9uZWBgLiAgKnByZWRpY2F0ZSogaXMgYSBtZXRob2Qgb2YgdGhlIHBhcmVudCBjb21tYW5kIHRoYXQKKyAgIGRldGVybWluZXMgd2hldGhlciB0aGUgY29ycmVzcG9uZGluZyBjb21tYW5kIGlzIGFwcGxpY2FibGUgaW4gdGhlIGN1cnJlbnQKKyAgIHNpdHVhdGlvbi4gIChFLmcuIGBgaW5zdGFsbF9oZWFkZXJzYGAgaXMgb25seSBhcHBsaWNhYmxlIGlmIHdlIGhhdmUgYW55IEMKKyAgIGhlYWRlciBmaWxlcyB0byBpbnN0YWxsLikgIElmICpwcmVkaWNhdGUqIGlzIGBgTm9uZWBgLCB0aGF0IGNvbW1hbmQgaXMgYWx3YXlzCisgICBhcHBsaWNhYmxlLgorCisgICAqc3ViX2NvbW1hbmRzKiBpcyB1c3VhbGx5IGRlZmluZWQgYXQgdGhlICplbmQqIG9mIGEgY2xhc3MsIGJlY2F1c2UKKyAgIHByZWRpY2F0ZXMgY2FuIGJlIG1ldGhvZHMgb2YgdGhlIGNsYXNzLCBzbyB0aGV5IG11c3QgYWxyZWFkeSBoYXZlIGJlZW4KKyAgIGRlZmluZWQuICBUaGUgY2Fub25pY2FsIGV4YW1wbGUgaXMgdGhlIDpjb21tYW5kOmBpbnN0YWxsX2Rpc3RgIGNvbW1hbmQuCisKKy4uIFhYWCBkb2N1bWVudCBob3cgdG8gYWRkIGEgY3VzdG9tIGNvbW1hbmQgdG8gYW5vdGhlciBvbmUncyBzdWJjb21tYW5kcwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmNvbXBpbGVyLnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5jb21waWxlci5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjIzYzU1MQotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5jb21waWxlci5yc3QKQEAgLTAsMCArMSw2ODEgQEAKKzptb2Q6YHBhY2thZ2luZy5jb21waWxlcmAgLS0tIENvbXBpbGVyIGNsYXNzZXMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmNvbXBpbGVyCisgICA6c3lub3BzaXM6IENvbXBpbGVyIGNsYXNzZXMgdG8gYnVpbGQgQy9DKysgZXh0ZW5zaW9ucyBvciBsaWJyYXJpZXMuCisKKworVGhpcyBzdWJwYWNrYWdlIGNvbnRhaW5zIGFuIGFic3RyYWN0IGJhc2UgY2xhc3MgcmVwcmVzZW50aW5nIGEgY29tcGlsZXIgYW5kCitjb25jcmV0ZSBpbXBsZW1lbnRhdGlvbnMgZm9yIGNvbW1vbiBjb21waWxlcnMuICBUaGUgY29tcGlsZXIgY2xhc3NlcyBzaG91bGQgbm90CitiZSBpbnN0YW50aWF0ZWQgZGlyZWN0bHksIGJ1dCBjcmVhdGVkIHVzaW5nIHRoZSA6ZnVuYzpgbmV3X2NvbXBpbGVyYCBmYWN0b3J5CitmdW5jdGlvbi4gIENvbXBpbGVyIHR5cGVzIHByb3ZpZGVkIGJ5IFBhY2thZ2luZyBhcmUgbGlzdGVkIGluCis6cmVmOmBwYWNrYWdpbmctc3RhbmRhcmQtY29tcGlsZXJzYC4KKworCitQdWJsaWMgZnVuY3Rpb25zCistLS0tLS0tLS0tLS0tLS0tCisKKy4uIGZ1bmN0aW9uOjogbmV3X2NvbXBpbGVyKHBsYXQ9Tm9uZSwgY29tcGlsZXI9Tm9uZSwgZHJ5X3J1bj1GYWxzZSwgZm9yY2U9RmFsc2UpCisKKyAgIEZhY3RvcnkgZnVuY3Rpb24gdG8gZ2VuZXJhdGUgYW4gaW5zdGFuY2Ugb2Ygc29tZQorICAgOmNsYXNzOmB+LmNjb21waWxlci5DQ29tcGlsZXJgIHN1YmNsYXNzIGZvciB0aGUgcmVxdWVzdGVkIHBsYXRmb3JtIG9yCisgICBjb21waWxlciB0eXBlLgorCisgICBJZiBubyBhcmd1bWVudCBpcyBnaXZlbiBmb3IgKnBsYXQqIGFuZCAqY29tcGlsZXIqLCB0aGUgZGVmYXVsdCBjb21waWxlciB0eXBlCisgICBmb3IgdGhlIHBsYXRmb3JtICg6YXR0cjpgb3MubmFtZWApIHdpbGwgYmUgdXNlZDogYGAndW5peCdgYCBmb3IgVW5peCBhbmQKKyAgIE1hYyBPUyBYLCBgYCdtc3ZjJ2BgIGZvciBXaW5kb3dzLgorCisgICBJZiAqcGxhdCogaXMgZ2l2ZW4sIGl0IG11c3QgYmUgb25lIG9mIGBgJ3Bvc2l4J2BgLCBgYCdkYXJ3aW4nYGAgb3IgYGAnbnQnYGAuCisgICBBbiBpbnZhbGlkIHZhbHVlIHdpbGwgbm90IHJhaXNlIGFuIGV4Y2VwdGlvbiBidXQgdXNlIHRoZSBkZWZhdWx0IGNvbXBpbGVyCisgICB0eXBlIGZvciB0aGUgY3VycmVudCBwbGF0Zm9ybS4KKworICAgLi4gWFhYIGVycm9ycyBzaG91bGQgbmV2ZXIgcGFzcyBzaWxlbnRseTsgdGhpcyBiZWhhdmlvciBpcyBwYXJ0aWN1bGFybHkKKyAgICAgIGhhcm1mdWwgd2hlbiBhIGNvbXBpbGVyIHR5cGUgaXMgZ2l2ZW4gYXMgZmlyc3QgYXJndW1lbnQKKworICAgSWYgKmNvbXBpbGVyKiBpcyBnaXZlbiwgKnBsYXQqIHdpbGwgYmUgaWdub3JlZCwgYWxsb3dpbmcgeW91IHRvIGdldCBmb3IKKyAgIGV4YW1wbGUgYSBgYCd1bml4J2BgIGNvbXBpbGVyIG9iamVjdCB1bmRlciBXaW5kb3dzIG9yIGFuIGBgJ21zdmMnYGAgY29tcGlsZXIKKyAgIHVuZGVyIFVuaXguICBIb3dldmVyLCBub3QgYWxsIGNvbXBpbGVyIHR5cGVzIGNhbiBiZSBpbnN0YW50aWF0ZWQgb24gZXZlcnkKKyAgIHBsYXRmb3JtLgorCisKKy4uIGZ1bmN0aW9uOjogY3VzdG9taXplX2NvbXBpbGVyKGNvbXBpbGVyKQorCisgICBEbyBhbnkgcGxhdGZvcm0tc3BlY2lmaWMgY3VzdG9taXphdGlvbiBvZiBhIENDb21waWxlciBpbnN0YW5jZS4gIE1haW5seQorICAgbmVlZGVkIG9uIFVuaXggdG8gcGx1ZyBpbiB0aGUgaW5mb3JtYXRpb24gdGhhdCB2YXJpZXMgYWNyb3NzIFVuaWNlcyBhbmQgaXMKKyAgIHN0b3JlZCBpbiBDUHl0aG9uJ3MgTWFrZWZpbGUuCisKKworLi4gZnVuY3Rpb246OiBnZW5fbGliX29wdGlvbnMoY29tcGlsZXIsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMsIGxpYnJhcmllcykKKworICAgR2VuZXJhdGUgbGlua2VyIG9wdGlvbnMgZm9yIHNlYXJjaGluZyBsaWJyYXJ5IGRpcmVjdG9yaWVzIGFuZCBsaW5raW5nIHdpdGgKKyAgIHNwZWNpZmljIGxpYnJhcmllcy4gICpsaWJyYXJpZXMqIGFuZCAqbGlicmFyeV9kaXJzKiBhcmUsIHJlc3BlY3RpdmVseSwgbGlzdHMKKyAgIG9mIGxpYnJhcnkgbmFtZXMgKG5vdCBmaWxlbmFtZXMhKSBhbmQgc2VhcmNoIGRpcmVjdG9yaWVzLiAgUmV0dXJucyBhIGxpc3Qgb2YKKyAgIGNvbW1hbmQtbGluZSBvcHRpb25zIHN1aXRhYmxlIGZvciB1c2Ugd2l0aCBzb21lIGNvbXBpbGVyIChkZXBlbmRpbmcgb24gdGhlCisgICB0d28gZm9ybWF0IHN0cmluZ3MgcGFzc2VkIGluKS4KKworCisuLiBmdW5jdGlvbjo6IGdlbl9wcmVwcm9jZXNzX29wdGlvbnMobWFjcm9zLCBpbmNsdWRlX2RpcnMpCisKKyAgIEdlbmVyYXRlIEMgcHJlcHJvY2Vzc29yIG9wdGlvbnMgKDpvcHRpb246YC1EYCwgOm9wdGlvbjpgLVVgLCA6b3B0aW9uOmAtSWApIGFzCisgICB1c2VkIGJ5IGF0IGxlYXN0IHR3byB0eXBlcyBvZiBjb21waWxlcnM6IHRoZSB0eXBpY2FsIFVuaXggY29tcGlsZXIgYW5kIFZpc3VhbAorICAgQysrLiAqbWFjcm9zKiBpcyB0aGUgdXN1YWwgdGhpbmcsIGEgbGlzdCBvZiAxLSBvciAyLXR1cGxlcywgd2hlcmUgYGAobmFtZSwpYGAKKyAgIG1lYW5zIHVuZGVmaW5lICg6b3B0aW9uOmAtVWApIG1hY3JvICpuYW1lKiwgYW5kIGBgKG5hbWUsIHZhbHVlKWBgIG1lYW5zCisgICBkZWZpbmUgKDpvcHRpb246YC1EYCkgbWFjcm8gKm5hbWUqIHRvICp2YWx1ZSouICAqaW5jbHVkZV9kaXJzKiBpcyBqdXN0IGEgbGlzdAorICAgb2YgZGlyZWN0b3J5IG5hbWVzIHRvIGJlIGFkZGVkIHRvIHRoZSBoZWFkZXIgZmlsZSBzZWFyY2ggcGF0aCAoOm9wdGlvbjpgLUlgKS4KKyAgIFJldHVybnMgYSBsaXN0IG9mIGNvbW1hbmQtbGluZSBvcHRpb25zIHN1aXRhYmxlIGZvciBlaXRoZXIgVW5peCBjb21waWxlcnMgb3IKKyAgIFZpc3VhbCBDKysuCisKKworLi4gZnVuY3Rpb246OiBnZXRfZGVmYXVsdF9jb21waWxlcihvc25hbWUsIHBsYXRmb3JtKQorCisgICBEZXRlcm1pbmUgdGhlIGRlZmF1bHQgY29tcGlsZXIgdG8gdXNlIGZvciB0aGUgZ2l2ZW4gcGxhdGZvcm0uCisKKyAgICpvc25hbWUqIHNob3VsZCBiZSBvbmUgb2YgdGhlIHN0YW5kYXJkIFB5dGhvbiBPUyBuYW1lcyAoaS5lLiB0aGUgb25lcworICAgcmV0dXJuZWQgYnkgYGBvcy5uYW1lYGApIGFuZCAqcGxhdGZvcm0qIHRoZSBjb21tb24gdmFsdWUgcmV0dXJuZWQgYnkKKyAgIGBgc3lzLnBsYXRmb3JtYGAgZm9yIHRoZSBwbGF0Zm9ybSBpbiBxdWVzdGlvbi4KKworICAgVGhlIGRlZmF1bHQgdmFsdWVzIGFyZSBgYG9zLm5hbWVgYCBhbmQgYGBzeXMucGxhdGZvcm1gYC4KKworCisuLiBmdW5jdGlvbjo6IHNldF9jb21waWxlcihsb2NhdGlvbikKKworICAgQWRkIG9yIGNoYW5nZSBhIGNvbXBpbGVyCisKKworLi4gZnVuY3Rpb246OiBzaG93X2NvbXBpbGVycygpCisKKyAgIFByaW50IGxpc3Qgb2YgYXZhaWxhYmxlIGNvbXBpbGVycyAodXNlZCBieSB0aGUgOm9wdGlvbjpgLS1oZWxwLWNvbXBpbGVyYAorICAgb3B0aW9ucyB0byA6Y29tbWFuZDpgYnVpbGRgLCA6Y29tbWFuZDpgYnVpbGRfZXh0YCwgOmNvbW1hbmQ6YGJ1aWxkX2NsaWJgKS4KKworCisuLiBfcGFja2FnaW5nLXN0YW5kYXJkLWNvbXBpbGVyczoKKworU3RhbmRhcmQgY29tcGlsZXJzCistLS0tLS0tLS0tLS0tLS0tLS0KKworQ29uY3JldGUgc3ViY2xhc3NlcyBvZiA6Y2xhc3M6YH4uY2NvbXBpbGVyLkNDb21waWxlcmAgYXJlIHByb3ZpZGVkIGluIHN1Ym1vZHVsZXMKK29mIHRoZSA6bW9kOmBwYWNrYWdpbmcuY29tcGlsZXJgIHBhY2thZ2UuICBZb3UgZG8gbm90IG5lZWQgdG8gaW1wb3J0IHRoZW0sIHVzaW5nCis6ZnVuYzpgbmV3X2NvbXBpbGVyYCBpcyB0aGUgcHVibGljIEFQSSB0byB1c2UuICBUaGlzIHRhYmxlIGRvY3VtZW50cyB0aGUKK3N0YW5kYXJkIGNvbXBpbGVyczsgYmUgYXdhcmUgdGhhdCB0aGV5IGNhbiBiZSByZXBsYWNlZCBieSBvdGhlciBjbGFzc2VzIG9uIHlvdXIKK3BsYXRmb3JtLgorCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PQorbmFtZSAgICAgICAgICAgIGRlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdGVzCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PQorYGAndW5peCdgYCAgICAgIHR5cGljYWwgVW5peC1zdHlsZSBjb21tYW5kLWxpbmUgQyBjb21waWxlciAgICAgICAgICAgICAgIFsjXV8KK2BgJ21zdmMnYGAgICAgICBNaWNyb3NvZnQgY29tcGlsZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbI11fCitgYCdiY3BwJ2BgICAgICAgQm9ybGFuZCBDKysgY29tcGlsZXIKK2BgJ2N5Z3dpbidgYCAgICBDeWd3aW4gY29tcGlsZXIgKFdpbmRvd3MgcG9ydCBvZiBHQ0MpCitgYCdtaW5ndzMyJ2BgICAgTWluZ3czMiBwb3J0IG9mIEdDQyAoc2FtZSBhcyBDeWd3aW4gaW4gbm8tQ3lnd2luIG1vZGUpCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PQorCisKKy4uIFsjXSBUaGUgVW5peCBjb21waWxlciBjbGFzcyBhc3N1bWVzIHRoaXMgYmVoYXZpb3I6CisKKyAgICAgICAqIG1hY3JvcyBkZWZpbmVkIHdpdGggOm9wdGlvbjpgLURuYW1lWz12YWx1ZV1gCisKKyAgICAgICAqIG1hY3JvcyB1bmRlZmluZWQgd2l0aCA6b3B0aW9uOmAtVW5hbWVgCisKKyAgICAgICAqIGluY2x1ZGUgc2VhcmNoIGRpcmVjdG9yaWVzIHNwZWNpZmllZCB3aXRoIDpvcHRpb246YC1JZGlyYAorCisgICAgICAgKiBsaWJyYXJpZXMgc3BlY2lmaWVkIHdpdGggOm9wdGlvbjpgLWxsaWJgCisKKyAgICAgICAqIGxpYnJhcnkgc2VhcmNoIGRpcmVjdG9yaWVzIHNwZWNpZmllZCB3aXRoIDpvcHRpb246YC1MZGlyYAorCisgICAgICAgKiBjb21waWxlIGhhbmRsZWQgYnkgOnByb2dyYW06YGNjYCAob3Igc2ltaWxhcikgZXhlY3V0YWJsZSB3aXRoCisgICAgICAgICA6b3B0aW9uOmAtY2Agb3B0aW9uOiBjb21waWxlcyA6ZmlsZTpgLmNgIHRvIDpmaWxlOmAub2AKKworICAgICAgICogbGluayBzdGF0aWMgbGlicmFyeSBoYW5kbGVkIGJ5IDpwcm9ncmFtOmBhcmAgY29tbWFuZCAocG9zc2libHkgd2l0aAorICAgICAgICAgOnByb2dyYW06YHJhbmxpYmApCisKKyAgICAgICAqIGxpbmsgc2hhcmVkIGxpYnJhcnkgaGFuZGxlZCBieSA6cHJvZ3JhbTpgY2NgIDpvcHRpb246YC1zaGFyZWRgCisKKworLi4gWyNdIE9uIFdpbmRvd3MsIGV4dGVuc2lvbiBtb2R1bGVzIHR5cGljYWxseSBuZWVkIHRvIGJlIGNvbXBpbGVkIHdpdGggdGhlIHNhbWUKKyAgICAgICBjb21waWxlciB0aGF0IHdhcyB1c2VkIHRvIGNvbXBpbGUgQ1B5dGhvbiAoZm9yIGV4YW1wbGUgTWljcm9zb2Z0IFZpc3VhbAorICAgICAgIFN0dWRpbyAuTkVUIDIwMDMgZm9yIENQeXRob24gMi40IGFuZCAyLjUpLiAgVGhlIEFNRDY0IGFuZCBJdGFuaXVtCisgICAgICAgYmluYXJpZXMgYXJlIGNyZWF0ZWQgdXNpbmcgdGhlIFBsYXRmb3JtIFNESy4KKworICAgICAgIFVuZGVyIHRoZSBob29kLCB0aGVyZSBhcmUgYWN0dWFsbHkgdHdvIGRpZmZlcmVudCBzdWJjbGFzc2VzIG9mCisgICAgICAgOmNsYXNzOmB+LmNjb21waWxlci5DQ29tcGlsZXJgIGRlZmluZWQ6IG9uZSBpcyBjb21wYXRpYmxlIHdpdGggTVNWQyAyMDA1CisgICAgICAgYW5kIDIwMDgsIHRoZSBvdGhlciB3b3JrcyB3aXRoIG9sZGVyIHZlcnNpb25zLiAgVGhpcyBzaG91bGQgbm90IGJlIGEKKyAgICAgICBjb25jZXJuIGZvciByZWd1bGFyIHVzZSBvZiB0aGUgZnVuY3Rpb25zIGluIHRoaXMgbW9kdWxlLgorCisgICAgICAgUGFja2FnaW5nIHdpbGwgbm9ybWFsbHkgY2hvb3NlIHRoZSByaWdodCBjb21waWxlciwgbGlua2VyIGV0Yy4gb24gaXRzCisgICAgICAgb3duLiAgVG8gb3ZlcnJpZGUgdGhpcyBjaG9pY2UsIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMKKyAgICAgICAqRElTVFVUSUxTX1VTRV9TREsqIGFuZCAqTVNTZGsqIG11c3QgYmUgYm90aCBzZXQuICAqTVNTZGsqIGluZGljYXRlcyB0aGF0CisgICAgICAgdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQgaGFzIGJlZW4gc2V0dXAgYnkgdGhlIFNESydzIGBgU2V0RW52LkNtZGBgCisgICAgICAgc2NyaXB0LCBvciB0aGF0IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgaGFkIGJlZW4gcmVnaXN0ZXJlZCB3aGVuIHRoZQorICAgICAgIFNESyB3YXMgaW5zdGFsbGVkOyAqRElTVFVUSUxTX1VTRV9TREsqIGluZGljYXRlcyB0aGF0IHRoZSB1c2VyIGhhcyBtYWRlCisgICAgICAgYW4gZXhwbGljaXQgY2hvaWNlIHRvIG92ZXJyaWRlIHRoZSBjb21waWxlciBzZWxlY3Rpb24gZG9uZSBieSBQYWNrYWdpbmcuCisKKyAgICAgICAuLiBUT0RPIGRvY3VtZW50IHRoZSBlbnZ2YXJzIGluIERvYy91c2luZyBhbmQgdGhlIG1hbiBwYWdlCisKKworOm1vZDpgcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlcmAgLS0tIENDb21waWxlciBiYXNlIGNsYXNzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlcgorICAgOnN5bm9wc2lzOiBBYnN0cmFjdCBDQ29tcGlsZXIgY2xhc3MuCisKKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgdGhlIGFic3RyYWN0IGJhc2UgY2xhc3MgZm9yIHRoZSA6Y2xhc3M6YENDb21waWxlcmAKK2NsYXNzZXMuICBBIDpjbGFzczpgQ0NvbXBpbGVyYCBpbnN0YW5jZSBjYW4gYmUgdXNlZCBmb3IgYWxsIHRoZSBjb21waWxlIGFuZAorbGluayBzdGVwcyBuZWVkZWQgdG8gYnVpbGQgYSBzaW5nbGUgcHJvamVjdC4gTWV0aG9kcyBhcmUgcHJvdmlkZWQgdG8gc2V0CitvcHRpb25zIGZvciB0aGUgY29tcGlsZXIgLS0tIG1hY3JvIGRlZmluaXRpb25zLCBpbmNsdWRlIGRpcmVjdG9yaWVzLCBsaW5rIHBhdGgsCitsaWJyYXJpZXMgYW5kIHRoZSBsaWtlLgorCisuLiBjbGFzczo6IENDb21waWxlcihkcnlfcnVuPUZhbHNlLCBmb3JjZT1GYWxzZSkKKworICAgVGhlIGFic3RyYWN0IGJhc2UgY2xhc3MgOmNsYXNzOmBDQ29tcGlsZXJgIGRlZmluZXMgdGhlIGludGVyZmFjZSB0aGF0IG11c3QgYmUKKyAgIGltcGxlbWVudGVkIGJ5IHJlYWwgY29tcGlsZXIgY2xhc3Nlcy4gIFRoZSBjbGFzcyBhbHNvIGhhcyBzb21lIHV0aWxpdHkKKyAgIG1ldGhvZHMgdXNlZCBieSBzZXZlcmFsIGNvbXBpbGVyIGNsYXNzZXMuCisKKyAgIFRoZSBiYXNpYyBpZGVhIGJlaGluZCBhIGNvbXBpbGVyIGFic3RyYWN0aW9uIGNsYXNzIGlzIHRoYXQgZWFjaCBpbnN0YW5jZSBjYW4KKyAgIGJlIHVzZWQgZm9yIGFsbCB0aGUgY29tcGlsZS9saW5rIHN0ZXBzIGluIGJ1aWxkaW5nIGEgc2luZ2xlIHByb2plY3QuICBUaHVzLAorICAgYXR0cmlidXRlcyBjb21tb24gdG8gYWxsIG9mIHRob3NlIGNvbXBpbGUgYW5kIGxpbmsgc3RlcHMgLS0tIGluY2x1ZGUKKyAgIGRpcmVjdG9yaWVzLCBtYWNyb3MgdG8gZGVmaW5lLCBsaWJyYXJpZXMgdG8gbGluayBhZ2FpbnN0LCBldGMuIC0tLSBhcmUKKyAgIGF0dHJpYnV0ZXMgb2YgdGhlIGNvbXBpbGVyIGluc3RhbmNlLiAgVG8gYWxsb3cgZm9yIHZhcmlhYmlsaXR5IGluIGhvdworICAgaW5kaXZpZHVhbCBmaWxlcyBhcmUgdHJlYXRlZCwgbW9zdCBvZiB0aG9zZSBhdHRyaWJ1dGVzIG1heSBiZSB2YXJpZWQgb24gYQorICAgcGVyLWNvbXBpbGF0aW9uIG9yIHBlci1saW5rIGJhc2lzLgorCisgICBUaGUgY29uc3RydWN0b3IgZm9yIGVhY2ggc3ViY2xhc3MgY3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgQ29tcGlsZXIgb2JqZWN0LgorICAgRmxhZ3MgYXJlICpkcnlfcnVuKiAoZG9uJ3QgYWN0dWFsbHkgZXhlY3V0ZQorICAgdGhlIHN0ZXBzKSBhbmQgKmZvcmNlKiAocmVidWlsZCBldmVyeXRoaW5nLCByZWdhcmRsZXNzIG9mIGRlcGVuZGVuY2llcykuICBBbGwKKyAgIG9mIHRoZXNlIGZsYWdzIGRlZmF1bHQgdG8gYGBGYWxzZWBgIChvZmYpLiBOb3RlIHRoYXQgeW91IHByb2JhYmx5IGRvbid0IHdhbnQgdG8KKyAgIGluc3RhbnRpYXRlIDpjbGFzczpgQ0NvbXBpbGVyYCBvciBvbmUgb2YgaXRzIHN1YmNsYXNzZXMgZGlyZWN0bHkgLSB1c2UgdGhlCisgICA6ZnVuYzpgbmV3X2NvbXBpbGVyYCBmYWN0b3J5IGZ1bmN0aW9uIGluc3RlYWQuCisKKyAgIFRoZSBmb2xsb3dpbmcgbWV0aG9kcyBhbGxvdyB5b3UgdG8gbWFudWFsbHkgYWx0ZXIgY29tcGlsZXIgb3B0aW9ucyBmb3IgdGhlCisgICBpbnN0YW5jZSBvZiB0aGUgQ29tcGlsZXIgY2xhc3MuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmFkZF9pbmNsdWRlX2RpcihkaXIpCisKKyAgICAgIEFkZCAqZGlyKiB0byB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgZm9yIGhlYWRlcgorICAgICAgZmlsZXMuICBUaGUgY29tcGlsZXIgaXMgaW5zdHJ1Y3RlZCB0byBzZWFyY2ggZGlyZWN0b3JpZXMgaW4gdGhlIG9yZGVyIGluCisgICAgICB3aGljaCB0aGV5IGFyZSBzdXBwbGllZCBieSBzdWNjZXNzaXZlIGNhbGxzIHRvIDptZXRoOmBhZGRfaW5jbHVkZV9kaXJgLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zZXRfaW5jbHVkZV9kaXJzKGRpcnMpCisKKyAgICAgIFNldCB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgdG8gKmRpcnMqIChhIGxpc3Qgb2YKKyAgICAgIHN0cmluZ3MpLiBPdmVycmlkZXMgYW55IHByZWNlZGluZyBjYWxscyB0byA6bWV0aDpgYWRkX2luY2x1ZGVfZGlyYDsKKyAgICAgIHN1YnNlcXVlbnQgY2FsbHMgdG8gOm1ldGg6YGFkZF9pbmNsdWRlX2RpcmAgYWRkIHRvIHRoZSBsaXN0IHBhc3NlZCB0bworICAgICAgOm1ldGg6YHNldF9pbmNsdWRlX2RpcnNgLiBUaGlzIGRvZXMgbm90IGFmZmVjdCBhbnkgbGlzdCBvZiBzdGFuZGFyZAorICAgICAgaW5jbHVkZSBkaXJlY3RvcmllcyB0aGF0IHRoZSBjb21waWxlciBtYXkgc2VhcmNoIGJ5IGRlZmF1bHQuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmFkZF9saWJyYXJ5KGxpYm5hbWUpCisKKyAgICAgIEFkZCAqbGlibmFtZSogdG8gdGhlIGxpc3Qgb2YgbGlicmFyaWVzIHRoYXQgd2lsbCBiZSBpbmNsdWRlZCBpbiBhbGwgbGlua3MKKyAgICAgIGRyaXZlbiBieSB0aGlzIGNvbXBpbGVyIG9iamVjdC4gIE5vdGUgdGhhdCAqbGlibmFtZSogc2hvdWxkICpub3QqIGJlIHRoZQorICAgICAgbmFtZSBvZiBhIGZpbGUgY29udGFpbmluZyBhIGxpYnJhcnksIGJ1dCB0aGUgbmFtZSBvZiB0aGUgbGlicmFyeSBpdHNlbGY6CisgICAgICB0aGUgYWN0dWFsIGZpbGVuYW1lIHdpbGwgYmUgaW5mZXJyZWQgYnkgdGhlIGxpbmtlciwgdGhlIGNvbXBpbGVyLCBvciB0aGUKKyAgICAgIGNvbXBpbGVyIGNsYXNzIChkZXBlbmRpbmcgb24gdGhlIHBsYXRmb3JtKS4KKworICAgICAgVGhlIGxpbmtlciB3aWxsIGJlIGluc3RydWN0ZWQgdG8gbGluayBhZ2FpbnN0IGxpYnJhcmllcyBpbiB0aGUgb3JkZXIgdGhleQorICAgICAgd2VyZSBzdXBwbGllZCB0byA6bWV0aDpgYWRkX2xpYnJhcnlgIGFuZC9vciA6bWV0aDpgc2V0X2xpYnJhcmllc2AuICBJdCBpcworICAgICAgcGVyZmVjdGx5IHZhbGlkIHRvIGR1cGxpY2F0ZSBsaWJyYXJ5IG5hbWVzOyB0aGUgbGlua2VyIHdpbGwgYmUgaW5zdHJ1Y3RlZAorICAgICAgdG8gbGluayBhZ2FpbnN0IGxpYnJhcmllcyBhcyBtYW55IHRpbWVzIGFzIHRoZXkgYXJlIG1lbnRpb25lZC4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuc2V0X2xpYnJhcmllcyhsaWJuYW1lcykKKworICAgICAgU2V0IHRoZSBsaXN0IG9mIGxpYnJhcmllcyB0byBiZSBpbmNsdWRlZCBpbiBhbGwgbGlua3MgZHJpdmVuIGJ5IHRoaXMKKyAgICAgIGNvbXBpbGVyIG9iamVjdCB0byAqbGlibmFtZXMqIChhIGxpc3Qgb2Ygc3RyaW5ncykuICBUaGlzIGRvZXMgbm90IGFmZmVjdAorICAgICAgYW55IHN0YW5kYXJkIHN5c3RlbSBsaWJyYXJpZXMgdGhhdCB0aGUgbGlua2VyIG1heSBpbmNsdWRlIGJ5IGRlZmF1bHQuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmFkZF9saWJyYXJ5X2RpcihkaXIpCisKKyAgICAgIEFkZCAqZGlyKiB0byB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgZm9yIGxpYnJhcmllcworICAgICAgc3BlY2lmaWVkIHRvIDptZXRoOmBhZGRfbGlicmFyeWAgYW5kIDptZXRoOmBzZXRfbGlicmFyaWVzYC4gIFRoZSBsaW5rZXIKKyAgICAgIHdpbGwgYmUgaW5zdHJ1Y3RlZCB0byBzZWFyY2ggZm9yIGxpYnJhcmllcyBpbiB0aGUgb3JkZXIgdGhleSBhcmUgc3VwcGxpZWQKKyAgICAgIHRvIDptZXRoOmBhZGRfbGlicmFyeV9kaXJgIGFuZC9vciA6bWV0aDpgc2V0X2xpYnJhcnlfZGlyc2AuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLnNldF9saWJyYXJ5X2RpcnMoZGlycykKKworICAgICAgU2V0IHRoZSBsaXN0IG9mIGxpYnJhcnkgc2VhcmNoIGRpcmVjdG9yaWVzIHRvICpkaXJzKiAoYSBsaXN0IG9mIHN0cmluZ3MpLgorICAgICAgVGhpcyBkb2VzIG5vdCBhZmZlY3QgYW55IHN0YW5kYXJkIGxpYnJhcnkgc2VhcmNoIHBhdGggdGhhdCB0aGUgbGlua2VyIG1heQorICAgICAgc2VhcmNoIGJ5IGRlZmF1bHQuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmFkZF9ydW50aW1lX2xpYnJhcnlfZGlyKGRpcikKKworICAgICAgQWRkICpkaXIqIHRvIHRoZSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRoYXQgd2lsbCBiZSBzZWFyY2hlZCBmb3Igc2hhcmVkCisgICAgICBsaWJyYXJpZXMgYXQgcnVudGltZS4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuc2V0X3J1bnRpbWVfbGlicmFyeV9kaXJzKGRpcnMpCisKKyAgICAgIFNldCB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIHNoYXJlZCBsaWJyYXJpZXMgYXQgcnVudGltZSB0bworICAgICAgKmRpcnMqIChhIGxpc3Qgb2Ygc3RyaW5ncykuICBUaGlzIGRvZXMgbm90IGFmZmVjdCBhbnkgc3RhbmRhcmQgc2VhcmNoIHBhdGgKKyAgICAgIHRoYXQgdGhlIHJ1bnRpbWUgbGlua2VyIG1heSBzZWFyY2ggYnkgZGVmYXVsdC4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuZGVmaW5lX21hY3JvKG5hbWVbLCB2YWx1ZT1Ob25lXSkKKworICAgICAgRGVmaW5lIGEgcHJlcHJvY2Vzc29yIG1hY3JvIGZvciBhbGwgY29tcGlsYXRpb25zIGRyaXZlbiBieSB0aGlzIGNvbXBpbGVyCisgICAgICBvYmplY3QuIFRoZSBvcHRpb25hbCBwYXJhbWV0ZXIgKnZhbHVlKiBzaG91bGQgYmUgYSBzdHJpbmc7IGlmIGl0IGlzIG5vdAorICAgICAgc3VwcGxpZWQsIHRoZW4gdGhlIG1hY3JvIHdpbGwgYmUgZGVmaW5lZCB3aXRob3V0IGFuIGV4cGxpY2l0IHZhbHVlIGFuZCB0aGUKKyAgICAgIGV4YWN0IG91dGNvbWUgZGVwZW5kcyBvbiB0aGUgY29tcGlsZXIgdXNlZCAoWFhYIHRydWU/IGRvZXMgQU5TSSBzYXkKKyAgICAgIGFueXRoaW5nIGFib3V0IHRoaXM/KQorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci51bmRlZmluZV9tYWNybyhuYW1lKQorCisgICAgICBVbmRlZmluZSBhIHByZXByb2Nlc3NvciBtYWNybyBmb3IgYWxsIGNvbXBpbGF0aW9ucyBkcml2ZW4gYnkgdGhpcyBjb21waWxlcgorICAgICAgb2JqZWN0LiAgSWYgdGhlIHNhbWUgbWFjcm8gaXMgZGVmaW5lZCBieSA6bWV0aDpgZGVmaW5lX21hY3JvYCBhbmQKKyAgICAgIHVuZGVmaW5lZCBieSA6bWV0aDpgdW5kZWZpbmVfbWFjcm9gIHRoZSBsYXN0IGNhbGwgdGFrZXMgcHJlY2VkZW5jZQorICAgICAgKGluY2x1ZGluZyBtdWx0aXBsZSByZWRlZmluaXRpb25zIG9yIHVuZGVmaW5pdGlvbnMpLiAgSWYgdGhlIG1hY3JvIGlzCisgICAgICByZWRlZmluZWQvdW5kZWZpbmVkIG9uIGEgcGVyLWNvbXBpbGF0aW9uIGJhc2lzIChpLmUuIGluIHRoZSBjYWxsIHRvCisgICAgICA6bWV0aDpgY29tcGlsZWApLCB0aGVuIHRoYXQgdGFrZXMgcHJlY2VkZW5jZS4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuYWRkX2xpbmtfb2JqZWN0KG9iamVjdCkKKworICAgICAgQWRkICpvYmplY3QqIHRvIHRoZSBsaXN0IG9mIG9iamVjdCBmaWxlcyAob3IgYW5hbG9ndWVzLCBzdWNoIGFzIGV4cGxpY2l0bHkKKyAgICAgIG5hbWVkIGxpYnJhcnkgZmlsZXMgb3IgdGhlIG91dHB1dCBvZiAicmVzb3VyY2UgY29tcGlsZXJzIikgdG8gYmUgaW5jbHVkZWQKKyAgICAgIGluIGV2ZXJ5IGxpbmsgZHJpdmVuIGJ5IHRoaXMgY29tcGlsZXIgb2JqZWN0LgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zZXRfbGlua19vYmplY3RzKG9iamVjdHMpCisKKyAgICAgIFNldCB0aGUgbGlzdCBvZiBvYmplY3QgZmlsZXMgKG9yIGFuYWxvZ3VlcykgdG8gYmUgaW5jbHVkZWQgaW4gZXZlcnkgbGluaworICAgICAgdG8gKm9iamVjdHMqLiAgVGhpcyBkb2VzIG5vdCBhZmZlY3QgYW55IHN0YW5kYXJkIG9iamVjdCBmaWxlcyB0aGF0IHRoZQorICAgICAgbGlua2VyIG1heSBpbmNsdWRlIGJ5IGRlZmF1bHQgKHN1Y2ggYXMgc3lzdGVtIGxpYnJhcmllcykuCisKKyAgIFRoZSBmb2xsb3dpbmcgbWV0aG9kcyBpbXBsZW1lbnQgbWV0aG9kcyBmb3IgYXV0b2RldGVjdGlvbiBvZiBjb21waWxlcgorICAgb3B0aW9ucywgcHJvdmlkaW5nIHNvbWUgZnVuY3Rpb25hbGl0eSBzaW1pbGFyIHRvIEdOVSA6cHJvZ3JhbTpgYXV0b2NvbmZgLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5kZXRlY3RfbGFuZ3VhZ2Uoc291cmNlcykKKworICAgICAgRGV0ZWN0IHRoZSBsYW5ndWFnZSBvZiBhIGdpdmVuIGZpbGUsIG9yIGxpc3Qgb2YgZmlsZXMuIFVzZXMgdGhlIGluc3RhbmNlCisgICAgICBhdHRyaWJ1dGVzIDphdHRyOmBsYW5ndWFnZV9tYXBgIChhIGRpY3Rpb25hcnkpLCBhbmQgOmF0dHI6YGxhbmd1YWdlX29yZGVyYAorICAgICAgKGEgbGlzdCkgdG8gZG8gdGhlIGpvYi4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuZmluZF9saWJyYXJ5X2ZpbGUoZGlycywgbGliWywgZGVidWc9MF0pCisKKyAgICAgIFNlYXJjaCB0aGUgc3BlY2lmaWVkIGxpc3Qgb2YgZGlyZWN0b3JpZXMgZm9yIGEgc3RhdGljIG9yIHNoYXJlZCBsaWJyYXJ5IGZpbGUKKyAgICAgICpsaWIqIGFuZCByZXR1cm4gdGhlIGZ1bGwgcGF0aCB0byB0aGF0IGZpbGUuICBJZiAqZGVidWcqIGlzIHRydWUsIGxvb2sgZm9yIGEKKyAgICAgIGRlYnVnZ2luZyB2ZXJzaW9uIChpZiB0aGF0IG1ha2VzIHNlbnNlIG9uIHRoZSBjdXJyZW50IHBsYXRmb3JtKS4gIFJldHVybgorICAgICAgYGBOb25lYGAgaWYgKmxpYiogd2Fzbid0IGZvdW5kIGluIGFueSBvZiB0aGUgc3BlY2lmaWVkIGRpcmVjdG9yaWVzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5oYXNfZnVuY3Rpb24oZnVuY25hbWUgWywgaW5jbHVkZXM9Tm9uZSwgaW5jbHVkZV9kaXJzPU5vbmUsIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZV0pCisKKyAgICAgIFJldHVybiBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyICpmdW5jbmFtZSogaXMgc3VwcG9ydGVkIG9uIHRoZSBjdXJyZW50CisgICAgICBwbGF0Zm9ybS4gIFRoZSBvcHRpb25hbCBhcmd1bWVudHMgY2FuIGJlIHVzZWQgdG8gYXVnbWVudCB0aGUgY29tcGlsYXRpb24KKyAgICAgIGVudmlyb25tZW50IGJ5IHByb3ZpZGluZyBhZGRpdGlvbmFsIGluY2x1ZGUgZmlsZXMgYW5kIHBhdGhzIGFuZCBsaWJyYXJpZXMgYW5kCisgICAgICBwYXRocy4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIubGlicmFyeV9kaXJfb3B0aW9uKGRpcikKKworICAgICAgUmV0dXJuIHRoZSBjb21waWxlciBvcHRpb24gdG8gYWRkICpkaXIqIHRvIHRoZSBsaXN0IG9mIGRpcmVjdG9yaWVzIHNlYXJjaGVkIGZvcgorICAgICAgbGlicmFyaWVzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5saWJyYXJ5X29wdGlvbihsaWIpCisKKyAgICAgIFJldHVybiB0aGUgY29tcGlsZXIgb3B0aW9uIHRvIGFkZCAqZGlyKiB0byB0aGUgbGlzdCBvZiBsaWJyYXJpZXMgbGlua2VkIGludG8gdGhlCisgICAgICBzaGFyZWQgbGlicmFyeSBvciBleGVjdXRhYmxlLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5ydW50aW1lX2xpYnJhcnlfZGlyX29wdGlvbihkaXIpCisKKyAgICAgIFJldHVybiB0aGUgY29tcGlsZXIgb3B0aW9uIHRvIGFkZCAqZGlyKiB0byB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyBzZWFyY2hlZCBmb3IKKyAgICAgIHJ1bnRpbWUgbGlicmFyaWVzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zZXRfZXhlY3V0YWJsZXMoKiphcmdzKQorCisgICAgICBEZWZpbmUgdGhlIGV4ZWN1dGFibGVzIChhbmQgb3B0aW9ucyBmb3IgdGhlbSkgdGhhdCB3aWxsIGJlIHJ1biB0byBwZXJmb3JtIHRoZQorICAgICAgdmFyaW91cyBzdGFnZXMgb2YgY29tcGlsYXRpb24uICBUaGUgZXhhY3Qgc2V0IG9mIGV4ZWN1dGFibGVzIHRoYXQgbWF5IGJlCisgICAgICBzcGVjaWZpZWQgaGVyZSBkZXBlbmRzIG9uIHRoZSBjb21waWxlciBjbGFzcyAodmlhIHRoZSAnZXhlY3V0YWJsZXMnIGNsYXNzCisgICAgICBhdHRyaWJ1dGUpLCBidXQgbW9zdCB3aWxsIGhhdmU6CisKKyAgICAgICstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICB8IGF0dHJpYnV0ZSAgICB8IGRlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICAgKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSsKKyAgICAgIHwgKmNvbXBpbGVyKiAgIHwgdGhlIEMvQysrIGNvbXBpbGVyICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgICArLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgfCAqbGlua2VyX3NvKiAgfCBsaW5rZXIgdXNlZCB0byBjcmVhdGUgc2hhcmVkIG9iamVjdHMgYW5kIHwKKyAgICAgIHwgICAgICAgICAgICAgIHwgbGlicmFyaWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgICArLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgfCAqbGlua2VyX2V4ZSogfCBsaW5rZXIgdXNlZCB0byBjcmVhdGUgYmluYXJ5IGV4ZWN1dGFibGVzIHwKKyAgICAgICstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICB8ICphcmNoaXZlciogICB8IHN0YXRpYyBsaWJyYXJ5IGNyZWF0b3IgICAgICAgICAgICAgICAgICAgfAorICAgICAgKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKworICAgICAgT24gcGxhdGZvcm1zIHdpdGggYSBjb21tYW5kIGxpbmUgKFVuaXgsIERPUy9XaW5kb3dzKSwgZWFjaCBvZiB0aGVzZSBpcyBhIHN0cmluZworICAgICAgdGhhdCB3aWxsIGJlIHNwbGl0IGludG8gZXhlY3V0YWJsZSBuYW1lIGFuZCAob3B0aW9uYWwpIGxpc3Qgb2YgYXJndW1lbnRzLgorICAgICAgKFNwbGl0dGluZyB0aGUgc3RyaW5nIGlzIGRvbmUgc2ltaWxhcmx5IHRvIGhvdyBVbml4IHNoZWxscyBvcGVyYXRlOiB3b3JkcyBhcmUKKyAgICAgIGRlbGltaXRlZCBieSBzcGFjZXMsIGJ1dCBxdW90ZXMgYW5kIGJhY2tzbGFzaGVzIGNhbiBvdmVycmlkZSB0aGlzLiAgU2VlCisgICAgICA6ZnVuYzpgcGFja2FnaW5nLnV0aWwuc3BsaXRfcXVvdGVkYC4pCisKKyAgIFRoZSBmb2xsb3dpbmcgbWV0aG9kcyBpbnZva2Ugc3RhZ2VzIGluIHRoZSBidWlsZCBwcm9jZXNzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5jb21waWxlKHNvdXJjZXNbLCBvdXRwdXRfZGlyPU5vbmUsIG1hY3Jvcz1Ob25lLCBpbmNsdWRlX2RpcnM9Tm9uZSwgZGVidWc9MCwgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLCBkZXBlbmRzPU5vbmVdKQorCisgICAgICBDb21waWxlIG9uZSBvciBtb3JlIHNvdXJjZSBmaWxlcy4gR2VuZXJhdGVzIG9iamVjdCBmaWxlcyAoZS5nLiB0cmFuc2Zvcm1zIGEKKyAgICAgIDpmaWxlOmAuY2AgZmlsZSB0byBhIDpmaWxlOmAub2AgZmlsZS4pCisKKyAgICAgICpzb3VyY2VzKiBtdXN0IGJlIGEgbGlzdCBvZiBmaWxlbmFtZXMsIG1vc3QgbGlrZWx5IEMvQysrIGZpbGVzLCBidXQgaW4gcmVhbGl0eQorICAgICAgYW55dGhpbmcgdGhhdCBjYW4gYmUgaGFuZGxlZCBieSBhIHBhcnRpY3VsYXIgY29tcGlsZXIgYW5kIGNvbXBpbGVyIGNsYXNzIChlLmcuCisgICAgICBhbiBgYCdtc3ZjJ2BgIGNvbXBpbGVyIGNhbiBoYW5kbGUgcmVzb3VyY2UgZmlsZXMgaW4gKnNvdXJjZXMqKS4gIFJldHVybiBhIGxpc3Qgb2YKKyAgICAgIG9iamVjdCBmaWxlbmFtZXMsIG9uZSBwZXIgc291cmNlIGZpbGVuYW1lIGluICpzb3VyY2VzKi4gIERlcGVuZGluZyBvbiB0aGUKKyAgICAgIGltcGxlbWVudGF0aW9uLCBub3QgYWxsIHNvdXJjZSBmaWxlcyB3aWxsIG5lY2Vzc2FyaWx5IGJlIGNvbXBpbGVkLCBidXQgYWxsCisgICAgICBjb3JyZXNwb25kaW5nIG9iamVjdCBmaWxlbmFtZXMgd2lsbCBiZSByZXR1cm5lZC4KKworICAgICAgSWYgKm91dHB1dF9kaXIqIGlzIGdpdmVuLCBvYmplY3QgZmlsZXMgd2lsbCBiZSBwdXQgdW5kZXIgaXQsIHdoaWxlIHJldGFpbmluZworICAgICAgdGhlaXIgb3JpZ2luYWwgcGF0aCBjb21wb25lbnQuICBUaGF0IGlzLCA6ZmlsZTpgZm9vL2Jhci5jYCBub3JtYWxseSBjb21waWxlcyB0bworICAgICAgOmZpbGU6YGZvby9iYXIub2AgKGZvciBhIFVuaXggaW1wbGVtZW50YXRpb24pOyBpZiAqb3V0cHV0X2RpciogaXMgKmJ1aWxkKiwgdGhlbgorICAgICAgaXQgd291bGQgY29tcGlsZSB0byA6ZmlsZTpgYnVpbGQvZm9vL2Jhci5vYC4KKworICAgICAgKm1hY3JvcyosIGlmIGdpdmVuLCBtdXN0IGJlIGEgbGlzdCBvZiBtYWNybyBkZWZpbml0aW9ucy4gIEEgbWFjcm8gZGVmaW5pdGlvbiBpcworICAgICAgZWl0aGVyIGEgYGAobmFtZSwgdmFsdWUpYGAgMi10dXBsZSBvciBhIGBgKG5hbWUsKWBgIDEtdHVwbGUuIFRoZSBmb3JtZXIgZGVmaW5lcworICAgICAgYSBtYWNybzsgaWYgdGhlIHZhbHVlIGlzIGBgTm9uZWBgLCB0aGUgbWFjcm8gaXMgZGVmaW5lZCB3aXRob3V0IGFuIGV4cGxpY2l0CisgICAgICB2YWx1ZS4gIFRoZSAxLXR1cGxlIGNhc2UgdW5kZWZpbmVzIGEgbWFjcm8uICBMYXRlcgorICAgICAgZGVmaW5pdGlvbnMvcmVkZWZpbml0aW9ucy91bmRlZmluaXRpb25zIHRha2UgcHJlY2VkZW5jZS4KKworICAgICAgKmluY2x1ZGVfZGlycyosIGlmIGdpdmVuLCBtdXN0IGJlIGEgbGlzdCBvZiBzdHJpbmdzLCB0aGUgZGlyZWN0b3JpZXMgdG8gYWRkIHRvCisgICAgICB0aGUgZGVmYXVsdCBpbmNsdWRlIGZpbGUgc2VhcmNoIHBhdGggZm9yIHRoaXMgY29tcGlsYXRpb24gb25seS4KKworICAgICAgKmRlYnVnKiBpcyBhIGJvb2xlYW47IGlmIHRydWUsIHRoZSBjb21waWxlciB3aWxsIGJlIGluc3RydWN0ZWQgdG8gb3V0cHV0IGRlYnVnCisgICAgICBzeW1ib2xzIGluIChvciBhbG9uZ3NpZGUpIHRoZSBvYmplY3QgZmlsZShzKS4KKworICAgICAgKmV4dHJhX3ByZWFyZ3MqIGFuZCAqZXh0cmFfcG9zdGFyZ3MqIGFyZSBpbXBsZW1lbnRhdGlvbi1kZXBlbmRlbnQuIE9uIHBsYXRmb3JtcworICAgICAgdGhhdCBoYXZlIHRoZSBub3Rpb24gb2YgYSBjb21tYW5kIGxpbmUgKGUuZy4gVW5peCwgRE9TL1dpbmRvd3MpLCB0aGV5IGFyZSBtb3N0CisgICAgICBsaWtlbHkgbGlzdHMgb2Ygc3RyaW5nczogZXh0cmEgY29tbWFuZC1saW5lIGFyZ3VtZW50cyB0byBwcmVwZW5kL2FwcGVuZCB0byB0aGUKKyAgICAgIGNvbXBpbGVyIGNvbW1hbmQgbGluZS4gIE9uIG90aGVyIHBsYXRmb3JtcywgY29uc3VsdCB0aGUgaW1wbGVtZW50YXRpb24gY2xhc3MKKyAgICAgIGRvY3VtZW50YXRpb24uICBJbiBhbnkgZXZlbnQsIHRoZXkgYXJlIGludGVuZGVkIGFzIGFuIGVzY2FwZSBoYXRjaCBmb3IgdGhvc2UKKyAgICAgIG9jY2FzaW9ucyB3aGVuIHRoZSBhYnN0cmFjdCBjb21waWxlciBmcmFtZXdvcmsgZG9lc24ndCBjdXQgdGhlIG11c3RhcmQuCisKKyAgICAgICpkZXBlbmRzKiwgaWYgZ2l2ZW4sIGlzIGEgbGlzdCBvZiBmaWxlbmFtZXMgdGhhdCBhbGwgdGFyZ2V0cyBkZXBlbmQgb24uICBJZiBhCisgICAgICBzb3VyY2UgZmlsZSBpcyBvbGRlciB0aGFuIGFueSBmaWxlIGluIGRlcGVuZHMsIHRoZW4gdGhlIHNvdXJjZSBmaWxlIHdpbGwgYmUKKyAgICAgIHJlY29tcGlsZWQuICBUaGlzIHN1cHBvcnRzIGRlcGVuZGVuY3kgdHJhY2tpbmcsIGJ1dCBvbmx5IGF0IGEgY29hcnNlCisgICAgICBncmFudWxhcml0eS4KKworICAgICAgUmFpc2VzIDpleGM6YENvbXBpbGVFcnJvcmAgb24gZmFpbHVyZS4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuY3JlYXRlX3N0YXRpY19saWIob2JqZWN0cywgb3V0cHV0X2xpYm5hbWVbLCBvdXRwdXRfZGlyPU5vbmUsIGRlYnVnPTAsIHRhcmdldF9sYW5nPU5vbmVdKQorCisgICAgICBMaW5rIGEgYnVuY2ggb2Ygc3R1ZmYgdG9nZXRoZXIgdG8gY3JlYXRlIGEgc3RhdGljIGxpYnJhcnkgZmlsZS4gVGhlICJidW5jaCBvZgorICAgICAgc3R1ZmYiIGNvbnNpc3RzIG9mIHRoZSBsaXN0IG9mIG9iamVjdCBmaWxlcyBzdXBwbGllZCBhcyAqb2JqZWN0cyosIHRoZSBleHRyYQorICAgICAgb2JqZWN0IGZpbGVzIHN1cHBsaWVkIHRvIDptZXRoOmBhZGRfbGlua19vYmplY3RgIGFuZC9vcgorICAgICAgOm1ldGg6YHNldF9saW5rX29iamVjdHNgLCB0aGUgbGlicmFyaWVzIHN1cHBsaWVkIHRvIDptZXRoOmBhZGRfbGlicmFyeWAgYW5kL29yCisgICAgICA6bWV0aDpgc2V0X2xpYnJhcmllc2AsIGFuZCB0aGUgbGlicmFyaWVzIHN1cHBsaWVkIGFzICpsaWJyYXJpZXMqIChpZiBhbnkpLgorCisgICAgICAqb3V0cHV0X2xpYm5hbWUqIHNob3VsZCBiZSBhIGxpYnJhcnkgbmFtZSwgbm90IGEgZmlsZW5hbWU7IHRoZSBmaWxlbmFtZSB3aWxsIGJlCisgICAgICBpbmZlcnJlZCBmcm9tIHRoZSBsaWJyYXJ5IG5hbWUuICAqb3V0cHV0X2RpciogaXMgdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgbGlicmFyeQorICAgICAgZmlsZSB3aWxsIGJlIHB1dC4gWFhYIGRlZmF1bHRzIHRvIHdoYXQ/CisKKyAgICAgICpkZWJ1ZyogaXMgYSBib29sZWFuOyBpZiB0cnVlLCBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24gd2lsbCBiZSBpbmNsdWRlZCBpbiB0aGUKKyAgICAgIGxpYnJhcnkgKG5vdGUgdGhhdCBvbiBtb3N0IHBsYXRmb3JtcywgaXQgaXMgdGhlIGNvbXBpbGUgc3RlcCB3aGVyZSB0aGlzIG1hdHRlcnM6CisgICAgICB0aGUgKmRlYnVnKiBmbGFnIGlzIGluY2x1ZGVkIGhlcmUganVzdCBmb3IgY29uc2lzdGVuY3kpLgorCisgICAgICAqdGFyZ2V0X2xhbmcqIGlzIHRoZSB0YXJnZXQgbGFuZ3VhZ2UgZm9yIHdoaWNoIHRoZSBnaXZlbiBvYmplY3RzIGFyZSBiZWluZworICAgICAgY29tcGlsZWQuIFRoaXMgYWxsb3dzIHNwZWNpZmljIGxpbmthZ2UgdGltZSB0cmVhdG1lbnQgb2YgY2VydGFpbiBsYW5ndWFnZXMuCisKKyAgICAgIFJhaXNlcyA6ZXhjOmBMaWJFcnJvcmAgb24gZmFpbHVyZS4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIubGluayh0YXJnZXRfZGVzYywgb2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lWywgb3V0cHV0X2Rpcj1Ob25lLCBsaWJyYXJpZXM9Tm9uZSwgbGlicmFyeV9kaXJzPU5vbmUsIHJ1bnRpbWVfbGlicmFyeV9kaXJzPU5vbmUsIGV4cG9ydF9zeW1ib2xzPU5vbmUsIGRlYnVnPTAsIGV4dHJhX3ByZWFyZ3M9Tm9uZSwgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwgYnVpbGRfdGVtcD1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lXSkKKworICAgICAgTGluayBhIGJ1bmNoIG9mIHN0dWZmIHRvZ2V0aGVyIHRvIGNyZWF0ZSBhbiBleGVjdXRhYmxlIG9yIHNoYXJlZCBsaWJyYXJ5IGZpbGUuCisKKyAgICAgIFRoZSAiYnVuY2ggb2Ygc3R1ZmYiIGNvbnNpc3RzIG9mIHRoZSBsaXN0IG9mIG9iamVjdCBmaWxlcyBzdXBwbGllZCBhcyAqb2JqZWN0cyouCisgICAgICAqb3V0cHV0X2ZpbGVuYW1lKiBzaG91bGQgYmUgYSBmaWxlbmFtZS4gIElmICpvdXRwdXRfZGlyKiBpcyBzdXBwbGllZCwKKyAgICAgICpvdXRwdXRfZmlsZW5hbWUqIGlzIHJlbGF0aXZlIHRvIGl0IChpLmUuICpvdXRwdXRfZmlsZW5hbWUqIGNhbiBwcm92aWRlCisgICAgICBkaXJlY3RvcnkgY29tcG9uZW50cyBpZiBuZWVkZWQpLgorCisgICAgICAqbGlicmFyaWVzKiBpcyBhIGxpc3Qgb2YgbGlicmFyaWVzIHRvIGxpbmsgYWdhaW5zdC4gIFRoZXNlIGFyZSBsaWJyYXJ5IG5hbWVzLAorICAgICAgbm90IGZpbGVuYW1lcywgc2luY2UgdGhleSdyZSB0cmFuc2xhdGVkIGludG8gZmlsZW5hbWVzIGluIGEgcGxhdGZvcm0tc3BlY2lmaWMKKyAgICAgIHdheSAoZS5nLiAqZm9vKiBiZWNvbWVzIDpmaWxlOmBsaWJmb28uYWAgb24gVW5peCBhbmQgOmZpbGU6YGZvby5saWJgIG9uCisgICAgICBET1MvV2luZG93cykuICBIb3dldmVyLCB0aGV5IGNhbiBpbmNsdWRlIGEgZGlyZWN0b3J5IGNvbXBvbmVudCwgd2hpY2ggbWVhbnMgdGhlCisgICAgICBsaW5rZXIgd2lsbCBsb29rIGluIHRoYXQgc3BlY2lmaWMgZGlyZWN0b3J5IHJhdGhlciB0aGFuIHNlYXJjaGluZyBhbGwgdGhlIG5vcm1hbAorICAgICAgbG9jYXRpb25zLgorCisgICAgICAqbGlicmFyeV9kaXJzKiwgaWYgc3VwcGxpZWQsIHNob3VsZCBiZSBhIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvcgorICAgICAgbGlicmFyaWVzIHRoYXQgd2VyZSBzcGVjaWZpZWQgYXMgYmFyZSBsaWJyYXJ5IG5hbWVzIChpLmUuIG5vIGRpcmVjdG9yeQorICAgICAgY29tcG9uZW50KS4gIFRoZXNlIGFyZSBvbiB0b3Agb2YgdGhlIHN5c3RlbSBkZWZhdWx0IGFuZCB0aG9zZSBzdXBwbGllZCB0bworICAgICAgOm1ldGg6YGFkZF9saWJyYXJ5X2RpcmAgYW5kL29yIDptZXRoOmBzZXRfbGlicmFyeV9kaXJzYC4gICpydW50aW1lX2xpYnJhcnlfZGlycyoKKyAgICAgIGlzIGEgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgZW1iZWRkZWQgaW50byB0aGUgc2hhcmVkIGxpYnJhcnkgYW5kIHVzZWQKKyAgICAgIHRvIHNlYXJjaCBmb3Igb3RoZXIgc2hhcmVkIGxpYnJhcmllcyB0aGF0IFwqaXRcKiBkZXBlbmRzIG9uIGF0IHJ1bi10aW1lLiAgKFRoaXMKKyAgICAgIG1heSBvbmx5IGJlIHJlbGV2YW50IG9uIFVuaXguKQorCisgICAgICAqZXhwb3J0X3N5bWJvbHMqIGlzIGEgbGlzdCBvZiBzeW1ib2xzIHRoYXQgdGhlIHNoYXJlZCBsaWJyYXJ5IHdpbGwgZXhwb3J0LgorICAgICAgKFRoaXMgYXBwZWFycyB0byBiZSByZWxldmFudCBvbmx5IG9uIFdpbmRvd3MuKQorCisgICAgICAqZGVidWcqIGlzIGFzIGZvciA6bWV0aDpgY29tcGlsZWAgYW5kIDptZXRoOmBjcmVhdGVfc3RhdGljX2xpYmAsIHdpdGggdGhlCisgICAgICBzbGlnaHQgZGlzdGluY3Rpb24gdGhhdCBpdCBhY3R1YWxseSBtYXR0ZXJzIG9uIG1vc3QgcGxhdGZvcm1zIChhcyBvcHBvc2VkIHRvCisgICAgICA6bWV0aDpgY3JlYXRlX3N0YXRpY19saWJgLCB3aGljaCBpbmNsdWRlcyBhICpkZWJ1ZyogZmxhZyBtb3N0bHkgZm9yIGZvcm0ncworICAgICAgc2FrZSkuCisKKyAgICAgICpleHRyYV9wcmVhcmdzKiBhbmQgKmV4dHJhX3Bvc3RhcmdzKiBhcmUgYXMgZm9yIDptZXRoOmBjb21waWxlYCAoZXhjZXB0IG9mCisgICAgICBjb3Vyc2UgdGhhdCB0aGV5IHN1cHBseSBjb21tYW5kLWxpbmUgYXJndW1lbnRzIGZvciB0aGUgcGFydGljdWxhciBsaW5rZXIgYmVpbmcKKyAgICAgIHVzZWQpLgorCisgICAgICAqdGFyZ2V0X2xhbmcqIGlzIHRoZSB0YXJnZXQgbGFuZ3VhZ2UgZm9yIHdoaWNoIHRoZSBnaXZlbiBvYmplY3RzIGFyZSBiZWluZworICAgICAgY29tcGlsZWQuIFRoaXMgYWxsb3dzIHNwZWNpZmljIGxpbmthZ2UgdGltZSB0cmVhdG1lbnQgb2YgY2VydGFpbiBsYW5ndWFnZXMuCisKKyAgICAgIFJhaXNlcyA6ZXhjOmBMaW5rRXJyb3JgIG9uIGZhaWx1cmUuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmxpbmtfZXhlY3V0YWJsZShvYmplY3RzLCBvdXRwdXRfcHJvZ25hbWVbLCBvdXRwdXRfZGlyPU5vbmUsIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwgZGVidWc9MCwgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lXSkKKworICAgICAgTGluayBhbiBleGVjdXRhYmxlLiAgKm91dHB1dF9wcm9nbmFtZSogaXMgdGhlIG5hbWUgb2YgdGhlIGZpbGUgZXhlY3V0YWJsZSwgd2hpbGUKKyAgICAgICpvYmplY3RzKiBhcmUgYSBsaXN0IG9mIG9iamVjdCBmaWxlbmFtZXMgdG8gbGluayBpbi4gT3RoZXIgYXJndW1lbnRzIGFyZSBhcyBmb3IKKyAgICAgIHRoZSA6bWV0aDpgbGlua2AgbWV0aG9kLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5saW5rX3NoYXJlZF9saWIob2JqZWN0cywgb3V0cHV0X2xpYm5hbWVbLCBvdXRwdXRfZGlyPU5vbmUsIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwgZXhwb3J0X3N5bWJvbHM9Tm9uZSwgZGVidWc9MCwgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLCBidWlsZF90ZW1wPU5vbmUsIHRhcmdldF9sYW5nPU5vbmVdKQorCisgICAgICBMaW5rIGEgc2hhcmVkIGxpYnJhcnkuICpvdXRwdXRfbGlibmFtZSogaXMgdGhlIG5hbWUgb2YgdGhlIG91dHB1dCBsaWJyYXJ5LAorICAgICAgd2hpbGUgKm9iamVjdHMqIGlzIGEgbGlzdCBvZiBvYmplY3QgZmlsZW5hbWVzIHRvIGxpbmsgaW4uIE90aGVyIGFyZ3VtZW50cyBhcmUKKyAgICAgIGFzIGZvciB0aGUgOm1ldGg6YGxpbmtgIG1ldGhvZC4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIubGlua19zaGFyZWRfb2JqZWN0KG9iamVjdHMsIG91dHB1dF9maWxlbmFtZVssIG91dHB1dF9kaXI9Tm9uZSwgbGlicmFyaWVzPU5vbmUsIGxpYnJhcnlfZGlycz1Ob25lLCBydW50aW1lX2xpYnJhcnlfZGlycz1Ob25lLCBleHBvcnRfc3ltYm9scz1Ob25lLCBkZWJ1Zz0wLCBleHRyYV9wcmVhcmdzPU5vbmUsIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGJ1aWxkX3RlbXA9Tm9uZSwgdGFyZ2V0X2xhbmc9Tm9uZV0pCisKKyAgICAgIExpbmsgYSBzaGFyZWQgb2JqZWN0LiAqb3V0cHV0X2ZpbGVuYW1lKiBpcyB0aGUgbmFtZSBvZiB0aGUgc2hhcmVkIG9iamVjdCB0aGF0CisgICAgICB3aWxsIGJlIGNyZWF0ZWQsIHdoaWxlICpvYmplY3RzKiBpcyBhIGxpc3Qgb2Ygb2JqZWN0IGZpbGVuYW1lcyB0byBsaW5rIGluLgorICAgICAgT3RoZXIgYXJndW1lbnRzIGFyZSBhcyBmb3IgdGhlIDptZXRoOmBsaW5rYCBtZXRob2QuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLnByZXByb2Nlc3Moc291cmNlWywgb3V0cHV0X2ZpbGU9Tm9uZSwgbWFjcm9zPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLCBleHRyYV9wcmVhcmdzPU5vbmUsIGV4dHJhX3Bvc3RhcmdzPU5vbmVdKQorCisgICAgICBQcmVwcm9jZXNzIGEgc2luZ2xlIEMvQysrIHNvdXJjZSBmaWxlLCBuYW1lZCBpbiAqc291cmNlKi4gT3V0cHV0IHdpbGwgYmUgd3JpdHRlbgorICAgICAgdG8gZmlsZSBuYW1lZCAqb3V0cHV0X2ZpbGUqLCBvciAqc3Rkb3V0KiBpZiAqb3V0cHV0X2ZpbGUqIG5vdCBzdXBwbGllZC4KKyAgICAgICptYWNyb3MqIGlzIGEgbGlzdCBvZiBtYWNybyBkZWZpbml0aW9ucyBhcyBmb3IgOm1ldGg6YGNvbXBpbGVgLCB3aGljaCB3aWxsCisgICAgICBhdWdtZW50IHRoZSBtYWNyb3Mgc2V0IHdpdGggOm1ldGg6YGRlZmluZV9tYWNyb2AgYW5kIDptZXRoOmB1bmRlZmluZV9tYWNyb2AuCisgICAgICAqaW5jbHVkZV9kaXJzKiBpcyBhIGxpc3Qgb2YgZGlyZWN0b3J5IG5hbWVzIHRoYXQgd2lsbCBiZSBhZGRlZCB0byB0aGUgZGVmYXVsdAorICAgICAgbGlzdCwgaW4gdGhlIHNhbWUgd2F5IGFzIDptZXRoOmBhZGRfaW5jbHVkZV9kaXJgLgorCisgICAgICBSYWlzZXMgOmV4YzpgUHJlcHJvY2Vzc0Vycm9yYCBvbiBmYWlsdXJlLgorCisgICBUaGUgZm9sbG93aW5nIHV0aWxpdHkgbWV0aG9kcyBhcmUgZGVmaW5lZCBieSB0aGUgOmNsYXNzOmBDQ29tcGlsZXJgIGNsYXNzLCBmb3IKKyAgIHVzZSBieSB0aGUgdmFyaW91cyBjb25jcmV0ZSBzdWJjbGFzc2VzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5leGVjdXRhYmxlX2ZpbGVuYW1lKGJhc2VuYW1lWywgc3RyaXBfZGlyPTAsIG91dHB1dF9kaXI9JyddKQorCisgICAgICBSZXR1cm5zIHRoZSBmaWxlbmFtZSBvZiB0aGUgZXhlY3V0YWJsZSBmb3IgdGhlIGdpdmVuICpiYXNlbmFtZSouICBUeXBpY2FsbHkgZm9yCisgICAgICBub24tV2luZG93cyBwbGF0Zm9ybXMgdGhpcyBpcyB0aGUgc2FtZSBhcyB0aGUgYmFzZW5hbWUsIHdoaWxlIFdpbmRvd3Mgd2lsbCBnZXQKKyAgICAgIGEgOmZpbGU6YC5leGVgIGFkZGVkLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5saWJyYXJ5X2ZpbGVuYW1lKGxpYm5hbWVbLCBsaWJfdHlwZT0nc3RhdGljJywgc3RyaXBfZGlyPTAsIG91dHB1dF9kaXI9JyddKQorCisgICAgICBSZXR1cm5zIHRoZSBmaWxlbmFtZSBmb3IgdGhlIGdpdmVuIGxpYnJhcnkgbmFtZSBvbiB0aGUgY3VycmVudCBwbGF0Zm9ybS4gT24gVW5peAorICAgICAgYSBsaWJyYXJ5IHdpdGggKmxpYl90eXBlKiBvZiBgYCdzdGF0aWMnYGAgd2lsbCB0eXBpY2FsbHkgYmUgb2YgdGhlIGZvcm0KKyAgICAgIDpmaWxlOmBsaWJsaWJuYW1lLmFgLCB3aGlsZSBhICpsaWJfdHlwZSogb2YgYGAnZHluYW1pYydgYCB3aWxsIGJlIG9mIHRoZSBmb3JtCisgICAgICA6ZmlsZTpgbGlibGlibmFtZS5zb2AuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLm9iamVjdF9maWxlbmFtZXMoc291cmNlX2ZpbGVuYW1lc1ssIHN0cmlwX2Rpcj0wLCBvdXRwdXRfZGlyPScnXSkKKworICAgICAgUmV0dXJucyB0aGUgbmFtZSBvZiB0aGUgb2JqZWN0IGZpbGVzIGZvciB0aGUgZ2l2ZW4gc291cmNlIGZpbGVzLgorICAgICAgKnNvdXJjZV9maWxlbmFtZXMqIHNob3VsZCBiZSBhIGxpc3Qgb2YgZmlsZW5hbWVzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zaGFyZWRfb2JqZWN0X2ZpbGVuYW1lKGJhc2VuYW1lWywgc3RyaXBfZGlyPTAsIG91dHB1dF9kaXI9JyddKQorCisgICAgICBSZXR1cm5zIHRoZSBuYW1lIG9mIGEgc2hhcmVkIG9iamVjdCBmaWxlIGZvciB0aGUgZ2l2ZW4gZmlsZSBuYW1lICpiYXNlbmFtZSouCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmV4ZWN1dGUoZnVuYywgYXJnc1ssIG1zZz1Ob25lLCBsZXZlbD0xXSkKKworICAgICAgSW52b2tlcyA6ZnVuYzpgcGFja2FnaW5nLnV0aWwuZXhlY3V0ZWAgVGhpcyBtZXRob2QgaW52b2tlcyBhIFB5dGhvbiBmdW5jdGlvbgorICAgICAgKmZ1bmMqIHdpdGggdGhlIGdpdmVuIGFyZ3VtZW50cyAqYXJncyosIGFmdGVyIGxvZ2dpbmcgYW5kIHRha2luZyBpbnRvIGFjY291bnQKKyAgICAgIHRoZSAqZHJ5X3J1biogZmxhZy4gWFhYIHNlZSBhbHNvLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zcGF3bihjbWQpCisKKyAgICAgIEludm9rZXMgOmZ1bmM6YHBhY2thZ2luZy51dGlsLnNwYXduYC4gVGhpcyBpbnZva2VzIGFuIGV4dGVybmFsIHByb2Nlc3MgdG8gcnVuCisgICAgICB0aGUgZ2l2ZW4gY29tbWFuZC4gWFhYIHNlZSBhbHNvLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5ta3BhdGgobmFtZVssIG1vZGU9NTExXSkKKworICAgICAgSW52b2tlcyA6ZnVuYzpgcGFja2FnaW5nLmRpcl91dGlsLm1rcGF0aGAuIFRoaXMgY3JlYXRlcyBhIGRpcmVjdG9yeSBhbmQgYW55CisgICAgICBtaXNzaW5nIGFuY2VzdG9yIGRpcmVjdG9yaWVzLiBYWFggc2VlIGFsc28uCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLm1vdmVfZmlsZShzcmMsIGRzdCkKKworICAgICAgSW52b2tlcyA6bWV0aDpgcGFja2FnaW5nLmZpbGVfdXRpbC5tb3ZlX2ZpbGVgLiBSZW5hbWVzICpzcmMqIHRvICpkc3QqLiAgWFhYIHNlZQorICAgICAgYWxzby4KKworCis6bW9kOmBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uYCAtLS0gVGhlIEV4dGVuc2lvbiBjbGFzcworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmNvbXBpbGVyLmV4dGVuc2lvbgorICAgOnN5bm9wc2lzOiBDbGFzcyB1c2VkIHRvIHJlcHJlc2VudCBDL0MrKyBleHRlbnNpb24gbW9kdWxlcy4KKworCitUaGlzIG1vZHVsZSBwcm92aWRlcyB0aGUgOmNsYXNzOmBFeHRlbnNpb25gIGNsYXNzLCB1c2VkIHRvIHJlcHJlc2VudCBDL0MrKworZXh0ZW5zaW9uIG1vZHVsZXMuCisKKy4uIGNsYXNzOjogRXh0ZW5zaW9uCisKKyAgIFRoZSBFeHRlbnNpb24gY2xhc3MgZGVzY3JpYmVzIGEgc2luZ2xlIEMgb3IgQysrIGV4dGVuc2lvbiBtb2R1bGUuICBJdCBhY2NlcHRzCisgICB0aGUgZm9sbG93aW5nIGtleXdvcmQgYXJndW1lbnRzIGluIGl0cyBjb25zdHJ1Y3RvcjoKKworICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IGFyZ3VtZW50IG5hbWUgICAgICAgICAgfCB2YWx1ZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0eXBlICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICs9PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09KworICAgfCAqbmFtZSogICAgICAgICAgICAgICAgIHwgdGhlIGZ1bGwgbmFtZSBvZiB0aGUgICAgICAgICAgIHwgc3RyaW5nICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBleHRlbnNpb24sIGluY2x1ZGluZyBhbnkgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHBhY2thZ2VzIC0tLSBpLmUuICpub3QqIGEgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZmlsZW5hbWUgb3IgcGF0aG5hbWUsIGJ1dCAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBQeXRob24gZG90dGVkIG5hbWUgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqc291cmNlcyogICAgICAgICAgICAgIHwgbGlzdCBvZiBzb3VyY2UgZmlsZW5hbWVzLCAgICAgIHwgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCByZWxhdGl2ZSB0byB0aGUgZGlzdHJpYnV0aW9uICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHJvb3QgKHdoZXJlIHRoZSBzZXR1cCBzY3JpcHQgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgbGl2ZXMpLCBpbiBVbml4IGZvcm0gKHNsYXNoLSAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBzZXBhcmF0ZWQpIGZvciBwb3J0YWJpbGl0eS4gICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IFNvdXJjZSBmaWxlcyBtYXkgYmUgQywgQysrLCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgU1dJRyAoLmkpLCBwbGF0Zm9ybS1zcGVjaWZpYyAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCByZXNvdXJjZSBmaWxlcywgb3Igd2hhdGV2ZXIgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGVsc2UgaXMgcmVjb2duaXplZCBieSB0aGUgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgOmNvbW1hbmQ6YGJ1aWxkX2V4dGAgY29tbWFuZCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBhcyBzb3VyY2UgZm9yIGEgUHl0aG9uICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGV4dGVuc2lvbi4gICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICppbmNsdWRlX2RpcnMqICAgICAgICAgfCBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIHNlYXJjaCAgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGZvciBDL0MrKyBoZWFkZXIgZmlsZXMgKGluICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgVW5peCBmb3JtIGZvciBwb3J0YWJpbGl0eSkgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmRlZmluZV9tYWNyb3MqICAgICAgICB8IGxpc3Qgb2YgbWFjcm9zIHRvIGRlZmluZTsgZWFjaCB8IGxpc3Qgb2YgdHVwbGVzICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgbWFjcm8gaXMgZGVmaW5lZCB1c2luZyBhICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCAyLXR1cGxlIGBgKG5hbWUsIHZhbHVlKWBgLCAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHdoZXJlICp2YWx1ZSogaXMgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZWl0aGVyIHRoZSBzdHJpbmcgdG8gZGVmaW5lIGl0IHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCB0byBvciBgYE5vbmVgYCB0byBkZWZpbmUgaXQgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHdpdGhvdXQgYSBwYXJ0aWN1bGFyIHZhbHVlICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgKGVxdWl2YWxlbnQgb2YgYGAjZGVmaW5lIEZPT2BgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBpbiBzb3VyY2Ugb3IgOm9wdGlvbjpgLURGT09gICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IG9uIFVuaXggQyBjb21waWxlciBjb21tYW5kICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgbGluZSkgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKnVuZGVmX21hY3JvcyogICAgICAgICB8IGxpc3Qgb2YgbWFjcm9zIHRvIHVuZGVmaW5lICAgICB8IGxpc3Qgb2Ygc3RyaW5ncyAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZXhwbGljaXRseSAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmxpYnJhcnlfZGlycyogICAgICAgICB8IGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoICB8IGxpc3Qgb2Ygc3RyaW5ncyAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZm9yIEMvQysrIGxpYnJhcmllcyBhdCBsaW5rICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCB0aW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqbGlicmFyaWVzKiAgICAgICAgICAgIHwgbGlzdCBvZiBsaWJyYXJ5IG5hbWVzIChub3QgICAgIHwgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBmaWxlbmFtZXMgb3IgcGF0aHMpIHRvIGxpbmsgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGFnYWluc3QgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpydW50aW1lX2xpYnJhcnlfZGlycyogfCBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIHNlYXJjaCAgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGZvciBDL0MrKyBsaWJyYXJpZXMgYXQgcnVuICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgdGltZSAoZm9yIHNoYXJlZCBleHRlbnNpb25zLCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCB0aGlzIGlzIHdoZW4gdGhlIGV4dGVuc2lvbiBpcyAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGxvYWRlZCkgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpleHRyYV9vYmplY3RzKiAgICAgICAgfCBsaXN0IG9mIGV4dHJhIGZpbGVzIHRvIGxpbmsgICAgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHdpdGggKGUuZy4gb2JqZWN0IGZpbGVzIG5vdCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgaW1wbGllZCBieSAnc291cmNlcycsIHN0YXRpYyAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBsaWJyYXJ5IHRoYXQgbXVzdCBiZSAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGV4cGxpY2l0bHkgc3BlY2lmaWVkLCBiaW5hcnkgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgcmVzb3VyY2UgZmlsZXMsIGV0Yy4pICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmV4dHJhX2NvbXBpbGVfYXJncyogICB8IGFueSBleHRyYSBwbGF0Zm9ybS0gYW5kICAgICAgICB8IGxpc3Qgb2Ygc3RyaW5ncyAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgY29tcGlsZXItc3BlY2lmaWMgaW5mb3JtYXRpb24gIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCB0byB1c2Ugd2hlbiBjb21waWxpbmcgdGhlICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHNvdXJjZSBmaWxlcyBpbiAnc291cmNlcycuIEZvciB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgcGxhdGZvcm1zIGFuZCBjb21waWxlcnMgd2hlcmUgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBhIGNvbW1hbmQgbGluZSBtYWtlcyBzZW5zZSwgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHRoaXMgaXMgdHlwaWNhbGx5IGEgbGlzdCBvZiAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgY29tbWFuZC1saW5lIGFyZ3VtZW50cywgYnV0ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBmb3Igb3RoZXIgcGxhdGZvcm1zIGl0IGNvdWxkICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGJlIGFueXRoaW5nLiAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpleHRyYV9saW5rX2FyZ3MqICAgICAgfCBhbnkgZXh0cmEgcGxhdGZvcm0tIGFuZCAgICAgICAgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGNvbXBpbGVyLXNwZWNpZmljIGluZm9ybWF0aW9uICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgdG8gdXNlIHdoZW4gbGlua2luZyBvYmplY3QgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBmaWxlcyB0b2dldGhlciB0byBjcmVhdGUgdGhlICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGV4dGVuc2lvbiAob3IgdG8gY3JlYXRlIGEgbmV3ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgc3RhdGljIFB5dGhvbiBpbnRlcnByZXRlcikuICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBTaW1pbGFyIGludGVycHJldGF0aW9uIGFzIGZvciAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8ICdleHRyYV9jb21waWxlX2FyZ3MnLiAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpleHBvcnRfc3ltYm9scyogICAgICAgfCBsaXN0IG9mIHN5bWJvbHMgdG8gYmUgZXhwb3J0ZWQgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGZyb20gYSBzaGFyZWQgZXh0ZW5zaW9uLiBOb3QgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgdXNlZCBvbiBhbGwgcGxhdGZvcm1zLCBhbmQgbm90IHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBnZW5lcmFsbHkgbmVjZXNzYXJ5IGZvciBQeXRob24gfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGV4dGVuc2lvbnMsIHdoaWNoIHR5cGljYWxseSAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZXhwb3J0IGV4YWN0bHkgb25lIHN5bWJvbDogICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBgYGluaXRgYCArIGV4dGVuc2lvbl9uYW1lLiAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqZGVwZW5kcyogICAgICAgICAgICAgIHwgbGlzdCBvZiBmaWxlcyB0aGF0IHRoZSAgICAgICAgIHwgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBleHRlbnNpb24gZGVwZW5kcyBvbiAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqbGFuZ3VhZ2UqICAgICAgICAgICAgIHwgZXh0ZW5zaW9uIGxhbmd1YWdlIChpLmUuICAgICAgIHwgc3RyaW5nICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBgYCdjJ2BgLCBgYCdjKysnYGAsICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGBgJ29iamMnYGApLiBXaWxsIGJlIGRldGVjdGVkICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZnJvbSB0aGUgc291cmNlIGV4dGVuc2lvbnMgaWYgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBub3QgcHJvdmlkZWQuICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqb3B0aW9uYWwqICAgICAgICAgICAgIHwgc3BlY2lmaWVzIHRoYXQgYSBidWlsZCBmYWlsdXJlIHwgYm9vbGVhbiAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBpbiB0aGUgZXh0ZW5zaW9uIHNob3VsZCBub3QgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGFib3J0IHRoZSBidWlsZCBwcm9jZXNzLCBidXQgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgc2ltcGx5IHNraXAgdGhlIGV4dGVuc2lvbi4gICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKworVG8gZGlzdHJpYnV0ZSBleHRlbnNpb24gbW9kdWxlcyB0aGF0IGxpdmUgaW4gYSBwYWNrYWdlIChlLmcuIGBgcGFja2FnZS5leHRgYCksCit5b3UgbmVlZCB0byBjcmVhdGUgYSA6ZmlsZTpge3BhY2thZ2V9L19faW5pdF9fLnB5YCBmaWxlIHRvIGxldCBQeXRob24gcmVjb2duaXplCithbmQgaW1wb3J0IHlvdXIgbW9kdWxlLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmRhdGFiYXNlLnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kYXRhYmFzZS5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWQ3NTBmMAotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kYXRhYmFzZS5yc3QKQEAgLTAsMCArMSwzNDUgQEAKKzptb2Q6YHBhY2thZ2luZy5kYXRhYmFzZWAgLS0tIERhdGFiYXNlIG9mIGluc3RhbGxlZCBkaXN0cmlidXRpb25zCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcuZGF0YWJhc2UKKyAgIDpzeW5vcHNpczogRnVuY3Rpb25zIHRvIHF1ZXJ5IGFuZCBtYW5pcHVsYXRlIGluc3RhbGxlZCBkaXN0cmlidXRpb25zLgorCisKK1RoaXMgbW9kdWxlIHByb3ZpZGVzIGFuIGltcGxlbWVudGF0aW9uIG9mIDpQRVA6YDM3NmAuICBJdCB3YXMgb3JpZ2luYWxseQoraW50ZW5kZWQgdG8gbGFuZCBpbiA6bW9kOmBwa2d1dGlsYCwgYnV0IHdpdGggdGhlIGluY2x1c2lvbiBvZiBQYWNrYWdpbmcgaW4gdGhlCitzdGFuZGFyZCBsaWJyYXJ5LCBpdCB3YXMgdGhvdWdodCBiZXN0IHRvIGluY2x1ZGUgaXQgaW4gYSBzdWJtb2R1bGUgb2YKKzptb2Q6YHBhY2thZ2luZ2AsIGxlYXZpbmcgOm1vZDpgcGtndXRpbGAgdG8gZGVhbCB3aXRoIGltcG9ydHMuCisKK0luc3RhbGxlZCBQeXRob24gZGlzdHJpYnV0aW9ucyBhcmUgcmVwcmVzZW50ZWQgYnkgaW5zdGFuY2VzIG9mCis6Y2xhc3M6YERpc3RyaWJ1dGlvbmAsIG9yIDpjbGFzczpgRWdnSW5mb0Rpc3RyaWJ1dGlvbmAgZm9yIGxlZ2FjeSBlZ2cgZm9ybWF0cy4KK01vc3QgZnVuY3Rpb25zIGFsc28gcHJvdmlkZSBhbiBleHRyYSBhcmd1bWVudCBgYHVzZV9lZ2dfaW5mb2BgIHRvIHRha2UgbGVnYWN5CitkaXN0cmlidXRpb25zIGludG8gYWNjb3VudC4KKworRm9yIHRoZSBwdXJwb3NlIG9mIHRoaXMgbW9kdWxlLCAiaW5zdGFsbGVkIiBtZWFucyB0aGF0IHRoZSBkaXN0cmlidXRpb24ncworOmZpbGU6YC5kaXN0LWluZm9gLCA6ZmlsZTpgLmVnZy1pbmZvYCBvciA6ZmlsZTpgZWdnYCBkaXJlY3Rvcnkgb3IgZmlsZSBpcyBmb3VuZAorb24gOmRhdGE6YHN5cy5wYXRoYC4gIEZvciBleGFtcGxlLCBpZiB0aGUgcGFyZW50IGRpcmVjdG9yeSBvZiBhCis6ZmlsZTpgZGlzdC1pbmZvYCBkaXJlY3RvcnkgIGlzIGFkZGVkIHRvIDplbnZ2YXI6YFBZVEhPTlBBVEhgLCB0aGVuIGl0IHdpbGwgYmUKK2F2YWlsYWJsZSBpbiB0aGUgZGF0YWJhc2UuCisKK0NsYXNzZXMgcmVwcmVzZW50aW5nIGluc3RhbGxlZCBkaXN0cmlidXRpb25zCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiBjbGFzczo6IERpc3RyaWJ1dGlvbihwYXRoKQorCisgICBDbGFzcyByZXByZXNlbnRpbmcgYW4gaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbi4gIEl0IGlzIGRpZmZlcmVudCBmcm9tCisgICA6Y2xhc3M6YHBhY2thZ2luZy5kaXN0LkRpc3RyaWJ1dGlvbmAgd2hpY2ggaG9sZHMgdGhlIGxpc3Qgb2YgZmlsZXMsIHRoZQorICAgbWV0YWRhdGEgYW5kIG9wdGlvbnMgZHVyaW5nIHRoZSBydW4gb2YgYSBQYWNrYWdpbmcgY29tbWFuZC4KKworICAgSW5zdGFudGlhdGUgd2l0aCB0aGUgKnBhdGgqIHRvIGEgYGAuZGlzdC1pbmZvYGAgZGlyZWN0b3J5LiAgSW5zdGFuY2VzIGNhbiBiZQorICAgY29tcGFyZWQgYW5kIHNvcnRlZC4gIE90aGVyIGF2YWlsYWJsZSBtZXRob2RzIGFyZToKKworICAgLi4gWFhYIGRlc2NyaWJlIGhvdyBjb21wYXJpc29uIHdvcmtzCisKKyAgIC4uIG1ldGhvZDo6IGdldF9kaXN0aW5mb19maWxlKHBhdGgsIGJpbmFyeT1GYWxzZSkKKworICAgICAgUmV0dXJuIGEgcmVhZC1vbmx5IGZpbGUgb2JqZWN0IGZvciBhIGZpbGUgbG9jYXRlZCBhdAorICAgICAgOmZpbGU6YHtwcm9qZWN0fS17dmVyc2lvbn0uZGlzdC1pbmZvL3twYXRofWAuICAqcGF0aCogc2hvdWxkIGJlIGEKKyAgICAgIGBgJy8nYGAtc2VwYXJhdGVkIHBhdGggcmVsYXRpdmUgdG8gdGhlIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeSBvciBhbgorICAgICAgYWJzb2x1dGUgcGF0aDsgaWYgaXQgaXMgYW4gYWJzb2x1dGUgcGF0aCBhbmQgZG9lc24ndCBzdGFydCB3aXRoIHRoZSBwYXRoCisgICAgICB0byB0aGUgOmZpbGU6YC5kaXN0LWluZm9gIGRpcmVjdG9yeSwgYSA6Y2xhc3M6YFBhY2thZ2luZ0Vycm9yYCBpcyByYWlzZWQuCisKKyAgICAgIElmICpiaW5hcnkqIGlzIGBgVHJ1ZWBgLCB0aGUgZmlsZSBpcyBvcGVuZWQgaW4gYmluYXJ5IG1vZGUuCisKKyAgIC4uIG1ldGhvZDo6IGdldF9yZXNvdXJjZV9wYXRoKHJlbGF0aXZlX3BhdGgpCisKKyAgICAgIC4uIFRPRE8KKworICAgLi4gbWV0aG9kOjogbGlzdF9kaXN0aW5mb19maWxlcyhsb2NhbD1GYWxzZSkKKworICAgICAgUmV0dXJuIGFuIGl0ZXJhdG9yIG92ZXIgYWxsIGZpbGVzIGxvY2F0ZWQgaW4gdGhlIDpmaWxlOmAuZGlzdC1pbmZvYAorICAgICAgZGlyZWN0b3J5LiAgSWYgKmxvY2FsKiBpcyBgYFRydWVgYCwgZWFjaCByZXR1cm5lZCBwYXRoIGlzIHRyYW5zZm9ybWVkIGludG8KKyAgICAgIGEgbG9jYWwgYWJzb2x1dGUgcGF0aCwgb3RoZXJ3aXNlIHRoZSByYXcgdmFsdWUgZm91bmQgaW4gdGhlIDpmaWxlOmBSRUNPUkRgCisgICAgICBmaWxlIGlzIHJldHVybmVkLgorCisgICAuLiBtZXRob2Q6OiAgbGlzdF9pbnN0YWxsZWRfZmlsZXMobG9jYWw9RmFsc2UpCisKKyAgICAgIEl0ZXJhdGUgb3ZlciB0aGUgZmlsZXMgaW5zdGFsbGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbiBhbmQgcmVnaXN0ZXJlZCBpbgorICAgICAgdGhlIDpmaWxlOmBSRUNPUkRgIGZpbGUgYW5kIHlpZWxkIGEgdHVwbGUgYGAocGF0aCwgbWQ1LCBzaXplKWBgIGZvciBlYWNoCisgICAgICBsaW5lLiAgSWYgKmxvY2FsKiBpcyBgYFRydWVgYCwgdGhlIHJldHVybmVkIHBhdGggaXMgdHJhbnNmb3JtZWQgaW50byBhCisgICAgICBsb2NhbCBhYnNvbHV0ZSBwYXRoLCBvdGhlcndpc2UgdGhlIHJhdyB2YWx1ZSBpcyByZXR1cm5lZC4KKworICAgICAgQSBsb2NhbCBhYnNvbHV0ZSBwYXRoIGlzIGFuIGFic29sdXRlIHBhdGggaW4gd2hpY2ggb2NjdXJyZW5jZXMgb2YgYGAnLydgYAorICAgICAgaGF2ZSBiZWVuIHJlcGxhY2VkIGJ5IDpkYXRhOmBvcy5zZXBgLgorCisgICAuLiBtZXRob2Q6OiB1c2VzKHBhdGgpCisKKyAgICAgIENoZWNrIHdoZXRoZXIgKnBhdGgqIHdhcyBpbnN0YWxsZWQgYnkgdGhpcyBkaXN0cmlidXRpb24gKGkuZS4gaWYgdGhlIHBhdGgKKyAgICAgIGlzIHByZXNlbnQgaW4gdGhlIDpmaWxlOmBSRUNPUkRgIGZpbGUpLiAgKnBhdGgqIGNhbiBiZSBhIGxvY2FsIGFic29sdXRlCisgICAgICBwYXRoIG9yIGEgcmVsYXRpdmUgYGAnLydgYC1zZXBhcmF0ZWQgcGF0aC4gIFJldHVybnMgYSBib29sZWFuLgorCisgICBBdmFpbGFibGUgYXR0cmlidXRlczoKKworICAgLi4gYXR0cmlidXRlOjogbWV0YWRhdGEKKworICAgICAgSW5zdGFuY2Ugb2YgOmNsYXNzOmBwYWNrYWdpbmcubWV0YWRhdGEuTWV0YWRhdGFgIGZpbGxlZCB3aXRoIHRoZSBjb250ZW50cworICAgICAgb2YgdGhlIDpmaWxlOmB7cHJvamVjdH0te3ZlcnNpb259LmRpc3QtaW5mby9NRVRBREFUQWAgZmlsZS4KKworICAgLi4gYXR0cmlidXRlOjogbmFtZQorCisgICAgICBTaG9ydGN1dCBmb3IgYGBtZXRhZGF0YVsnTmFtZSddYGAuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IHZlcnNpb24KKworICAgICAgU2hvcnRjdXQgZm9yIGBgbWV0YWRhdGFbJ1ZlcnNpb24nXWBgLgorCisgICAuLiBhdHRyaWJ1dGU6OiByZXF1ZXN0ZWQKKworICAgICAgQm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhpcyBkaXN0cmlidXRpb24gd2FzIHJlcXVlc3RlZCBieSB0aGUgdXNlciBvZgorICAgICAgYXV0b21hdGljYWxseSBpbnN0YWxsZWQgYXMgYSBkZXBlbmRlbmN5LgorCisKKy4uIGNsYXNzOjogRWdnSW5mb0Rpc3RyaWJ1dGlvbihwYXRoKQorCisgICBDbGFzcyByZXByZXNlbnRpbmcgYSBsZWdhY3kgZGlzdHJpYnV0aW9uLiAgSXQgaXMgY29tcGF0aWJsZSB3aXRoIGRpc3R1dGlscycKKyAgIGFuZCBzZXR1cHRvb2xzJyA6ZmlsZTpgLmVnZy1pbmZvYCBhbmQgOmZpbGU6YC5lZ2dgIGZpbGVzIGFuZCBkaXJlY3Rvcmllcy4KKworICAgLi4gRklYTUUgc2hvdWxkIGJlIG5hbWVkIEVnZ0Rpc3RyaWJ1dGlvbgorCisgICBJbnN0YW50aWF0ZSB3aXRoIHRoZSAqcGF0aCogdG8gYW4gZWdnIGZpbGUgb3IgZGlyZWN0b3J5LiAgSW5zdGFuY2VzIGNhbiBiZQorICAgY29tcGFyZWQgYW5kIHNvcnRlZC4gIE90aGVyIGF2YWlsYWJsZSBtZXRob2RzIGFyZToKKworICAgLi4gbWV0aG9kOjogbGlzdF9pbnN0YWxsZWRfZmlsZXMobG9jYWw9RmFsc2UpCisKKyAgIC4uIG1ldGhvZDo6IHVzZXMocGF0aCkKKworICAgQXZhaWxhYmxlIGF0dHJpYnV0ZXM6CisKKyAgIC4uIGF0dHJpYnV0ZTo6IG1ldGFkYXRhCisKKyAgICAgIEluc3RhbmNlIG9mIDpjbGFzczpgcGFja2FnaW5nLm1ldGFkYXRhLk1ldGFkYXRhYCBmaWxsZWQgd2l0aCB0aGUgY29udGVudHMKKyAgICAgIG9mIHRoZSA6ZmlsZTpge3Byb2plY3QtdmVyc2lvbn0uZWdnLWluZm8vUEtHLUlORk9gIG9yCisgICAgICA6ZmlsZTpge3Byb2plY3QtdmVyc2lvbn0uZWdnYCBmaWxlLgorCisgICAuLiBhdHRyaWJ1dGU6OiBuYW1lCisKKyAgICAgIFNob3J0Y3V0IGZvciBgYG1ldGFkYXRhWydOYW1lJ11gYC4KKworICAgLi4gYXR0cmlidXRlOjogdmVyc2lvbgorCisgICAgICBTaG9ydGN1dCBmb3IgYGBtZXRhZGF0YVsnVmVyc2lvbiddYGAuCisKKworRnVuY3Rpb25zIHRvIHdvcmsgd2l0aCB0aGUgZGF0YWJhc2UKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIGZ1bmN0aW9uOjogZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lLCB1c2VfZWdnX2luZm89RmFsc2UsIHBhdGhzPU5vbmUpCisKKyAgIFJldHVybiBhbiBpbnN0YW5jZSBvZiA6Y2xhc3M6YERpc3RyaWJ1dGlvbmAgb3IgOmNsYXNzOmBFZ2dJbmZvRGlzdHJpYnV0aW9uYAorICAgZm9yIHRoZSBmaXJzdCBpbnN0YWxsZWQgZGlzdHJpYnV0aW9uIG1hdGNoaW5nICpuYW1lKi4gIEVnZyBkaXN0cmlidXRpb25zIGFyZQorICAgY29uc2lkZXJlZCBvbmx5IGlmICp1c2VfZWdnX2luZm8qIGlzIHRydWU7IGlmIGJvdGggYSBkaXN0LWluZm8gYW5kIGFuIGVnZworICAgZmlsZSBhcmUgZm91bmQsIHRoZSBkaXN0LWluZm8gcHJldmFpbHMuICBUaGUgZGlyZWN0b3JpZXMgdG8gYmUgc2VhcmNoZWQgYXJlCisgICBnaXZlbiBpbiAqcGF0aHMqLCB3aGljaCBkZWZhdWx0cyB0byA6ZGF0YTpgc3lzLnBhdGhgLiAgUmV0dXJucyBgYE5vbmVgYCBpZiBubworICAgbWF0Y2hpbmcgZGlzdHJpYnV0aW9uIGlzIGZvdW5kLgorCisgICAuLiBGSVhNRSBwYXJhbSBzaG91bGQgYmUgbmFtZWQgdXNlX2VnZworCisKKy4uIGZ1bmN0aW9uOjogZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPUZhbHNlLCBwYXRocz1Ob25lKQorCisgICBSZXR1cm4gYW4gaXRlcmF0b3Igb2YgOmNsYXNzOmBEaXN0cmlidXRpb25gIGluc3RhbmNlcyBmb3IgYWxsIGluc3RhbGxlZAorICAgZGlzdHJpYnV0aW9ucyBmb3VuZCBpbiAqcGF0aHMqIChkZWZhdWx0cyB0byA6ZGF0YTpgc3lzLnBhdGhgKS4gIElmCisgICAqdXNlX2VnZ19pbmZvKiBpcyB0cnVlLCBhbHNvIHJldHVybiBpbnN0YW5jZXMgb2YgOmNsYXNzOmBFZ2dJbmZvRGlzdHJpYnV0aW9uYAorICAgZm9yIGxlZ2FjeSBkaXN0cmlidXRpb25zIGZvdW5kLgorCisKKy4uIGZ1bmN0aW9uOjogZ2V0X2ZpbGVfdXNlcnMocGF0aCkKKworICAgUmV0dXJuIGFuIGl0ZXJhdG9yIG92ZXIgYWxsIGRpc3RyaWJ1dGlvbnMgdXNpbmcgKnBhdGgqLCBhIGxvY2FsIGFic29sdXRlIHBhdGgKKyAgIG9yIGEgcmVsYXRpdmUgYGAnLydgYC1zZXBhcmF0ZWQgcGF0aC4KKworICAgLi4gWFhYIGRvZXMgdGhpcyB3b3JrIHdpdGggcHJlZml4ZXMgb3IgZnVsbCBmaWxlIHBhdGggb25seT8KKworCisuLiBmdW5jdGlvbjo6IG9ic29sZXRlc19kaXN0cmlidXRpb24obmFtZSwgdmVyc2lvbj1Ob25lLCB1c2VfZWdnX2luZm89RmFsc2UpCisKKyAgIFJldHVybiBhbiBpdGVyYXRvciBvdmVyIGFsbCBkaXN0cmlidXRpb25zIHRoYXQgZGVjbGFyZSB0aGV5IG9ic29sZXRlICpuYW1lKi4KKyAgICp2ZXJzaW9uKiBpcyBhbiBvcHRpb25hbCBhcmd1bWVudCB0byBtYXRjaCBvbmx5IHNwZWNpZmljIHJlbGVhc2VzIChzZWUKKyAgIDptb2Q6YHBhY2thZ2luZy52ZXJzaW9uYCkuICBJZiAqdXNlX2VnZ19pbmZvKiBpcyB0cnVlLCBsZWdhY3kgZWdnCisgICBkaXN0cmlidXRpb25zIHdpbGwgYmUgY29uc2lkZXJlZCBhcyB3ZWxsLgorCisKKy4uIGZ1bmN0aW9uOjogcHJvdmlkZXNfZGlzdHJpYnV0aW9uKG5hbWUsIHZlcnNpb249Tm9uZSwgdXNlX2VnZ19pbmZvPUZhbHNlKQorCisgICBSZXR1cm4gYW4gaXRlcmF0b3Igb3ZlciBhbGwgZGlzdHJpYnV0aW9ucyB0aGF0IGRlY2xhcmUgdGhleSBwcm92aWRlICpuYW1lKi4KKyAgICp2ZXJzaW9uKiBpcyBhbiBvcHRpb25hbCBhcmd1bWVudCB0byBtYXRjaCBvbmx5IHNwZWNpZmljIHJlbGVhc2VzIChzZWUKKyAgIDptb2Q6YHBhY2thZ2luZy52ZXJzaW9uYCkuICBJZiAqdXNlX2VnZ19pbmZvKiBpcyB0cnVlLCBsZWdhY3kgZWdnCisgICBkaXN0cmlidXRpb25zIHdpbGwgYmUgY29uc2lkZXJlZCBhcyB3ZWxsLgorCisKK1V0aWxpdHkgZnVuY3Rpb25zCistLS0tLS0tLS0tLS0tLS0tLQorCisuLiBmdW5jdGlvbjo6IGRpc3RpbmZvX2Rpcm5hbWUobmFtZSwgdmVyc2lvbikKKworICAgRXNjYXBlICpuYW1lKiBhbmQgKnZlcnNpb24qIGludG8gYSBmaWxlbmFtZS1zYWZlIGZvcm0gYW5kIHJldHVybiB0aGUKKyAgIGRpcmVjdG9yeSBuYW1lIGJ1aWx0IGZyb20gdGhlbSwgZm9yIGV4YW1wbGUKKyAgIDpmaWxlOmB7c2FmZW5hbWV9LXtzYWZldmVyc2lvbn0uZGlzdC1pbmZvLmAgIEluICpuYW1lKiwgcnVucyBvZgorICAgbm9uLWFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFyZSByZXBsYWNlZCB3aXRoIG9uZSBgYCdfJ2BgOyBpbiAqdmVyc2lvbiosCisgICBzcGFjZXMgYmVjb21lIGRvdHMsIGFuZCBydW5zIG9mIG90aGVyIG5vbi1hbHBoYW51bWVyaWMgY2hhcmFjdGVycyAoZXhjZXB0CisgICBkb3RzKSBhIHJlcGxhY2VkIGJ5IG9uZSBgYCctJ2BgLgorCisgICAuLiBYWFggd3RoIHNwYWNlcyBpbiB2ZXJzaW9uIG51bWJlcnM/CisKK0ZvciBwZXJmb3JtYW5jZSBwdXJwb3NlcywgdGhlIGxpc3Qgb2YgZGlzdHJpYnV0aW9ucyBpcyBiZWluZyBpbnRlcm5hbGx5CitjYWNoZWQuICAgQ2FjaGluZyBpcyBlbmFibGVkIGJ5IGRlZmF1bHQsIGJ1dCB5b3UgY2FuIGNvbnRyb2wgaXQgd2l0aCB0aGVzZQorZnVuY3Rpb25zOgorCisuLiBmdW5jdGlvbjo6IGNsZWFyX2NhY2hlKCkKKworICAgQ2xlYXIgdGhlIGNhY2hlLgorCisuLiBmdW5jdGlvbjo6IGRpc2FibGVfY2FjaGUoKQorCisgICBEaXNhYmxlIHRoZSBjYWNoZSwgd2l0aG91dCBjbGVhcmluZyBpdC4KKworLi4gZnVuY3Rpb246OiBlbmFibGVfY2FjaGUoKQorCisgICBFbmFibGUgdGhlIGludGVybmFsIGNhY2hlLCB3aXRob3V0IGNsZWFyaW5nIGl0LgorCisKK0V4YW1wbGVzCistLS0tLS0tLQorCitQcmludGluZyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgYSBkaXN0cmlidXRpb24KK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitHaXZlbiB0aGUgbmFtZSBvZiBhbiBpbnN0YWxsZWQgZGlzdHJpYnV0aW9uLCB3ZSBzaGFsbCBwcmludCBvdXQgYWxsCitpbmZvcm1hdGlvbiB0aGF0IGNhbiBiZSBvYnRhaW5lZCB1c2luZyBmdW5jdGlvbnMgcHJvdmlkZWQgaW4gdGhpcyBtb2R1bGU6OgorCisgICBpbXBvcnQgc3lzCisgICBpbXBvcnQgcGFja2FnaW5nLmRhdGFiYXNlCisKKyAgIHRyeToKKyAgICAgICBuYW1lID0gc3lzLmFyZ3ZbMV0KKyAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgIHN5cy5leGl0KCdOb3QgZW5vdWdoIGFyZ3VtZW50cycpCisKKyAgICMgZmlyc3QgY3JlYXRlIHRoZSBEaXN0cmlidXRpb24gaW5zdGFuY2UKKyAgIGRpc3QgPSBwYWNrYWdpbmcuZGF0YWJhc2UuRGlzdHJpYnV0aW9uKHBhdGgpCisgICBpZiBkaXN0IGlzIE5vbmU6CisgICAgICAgc3lzLmV4aXQoJ05vIHN1Y2ggZGlzdHJpYnV0aW9uJykKKworICAgcHJpbnQoJ0luZm9ybWF0aW9uIGFib3V0ICVyJyAlIGRpc3QubmFtZSkKKyAgIHByaW50KCkKKworICAgcHJpbnQoJ0ZpbGVzJykKKyAgIHByaW50KCc9PT09PScpCisgICBmb3IgcGF0aCwgbWQ1LCBzaXplIGluIGRpc3QubGlzdF9pbnN0YWxsZWRfZmlsZXMoKToKKyAgICAgICBwcmludCgnKiBQYXRoOiAlcycgJSBwYXRoKQorICAgICAgIHByaW50KCcgIEhhc2ggJXMsIFNpemU6ICVzIGJ5dGVzJyAlIChtZDUsIHNpemUpKQorICAgcHJpbnQoKQorCisgICBwcmludCgnTWV0YWRhdGEnKQorICAgcHJpbnQoJz09PT09PT09JykKKyAgIGZvciBrZXksIHZhbHVlIGluIGRpc3QubWV0YWRhdGEuaXRlbXMoKToKKyAgICAgICBwcmludCgnJTIwczogJXMnICUgKGtleSwgdmFsdWUpKQorICAgcHJpbnQoKQorCisgICBwcmludCgnRXh0cmEnKQorICAgcHJpbnQoJz09PT09JykKKyAgIGlmIGRpc3QucmVxdWVzdGVkOgorICAgICAgIHByaW50KCcqIEl0IHdhcyBpbnN0YWxsZWQgYnkgdXNlciByZXF1ZXN0JykKKyAgIGVsc2U6CisgICAgICAgcHJpbnQoJyogSXQgd2FzIGluc3RhbGxlZCBhcyBhIGRlcGVuZGVuY3knKQorCitJZiB3ZSBzYXZlIHRoZSBzY3JpcHQgYWJvdmUgYXMgYGBwcmludF9pbmZvLnB5YGAsIHdlIGNhbiB1c2UgaXQgdG8gZXh0cmFjdAoraW5mb3JtYXRpb24gZnJvbSBhIDpmaWxlOmAuZGlzdC1pbmZvYCBkaXJlY3RvcnkuICBCeSB0eXBpbmcgaW4gdGhlIGNvbnNvbGU6CisKKy4uIGNvZGUtYmxvY2s6OiBzaAorCisgICBweXRob24gcHJpbnRfaW5mby5weSBjaG94aWUKKword2UgZ2V0IHRoZSBmb2xsb3dpbmcgb3V0cHV0OgorCisuLiBjb2RlLWJsb2NrOjogbm9uZQorCisgICBJbmZvcm1hdGlvbiBhYm91dCAnY2hveGllJworCisgICBGaWxlcworICAgPT09PT0KKyAgICogUGF0aDogLi4vdG1wL2Rpc3R1dGlsczIvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS90cnVmZmxlcy5weQorICAgICBIYXNoIDVlMDUyZGI2YTQ3OGQwNmJhZDlhZTAzM2U2YmMwOGFmLCBTaXplOiAxMTEgYnl0ZXMKKyAgICogUGF0aDogLi4vdG1wL2Rpc3R1dGlsczIvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS9jaG94aWUvY2hvY29sYXRlLnB5CisgICAgIEhhc2ggYWM1NmJmNDk2ZDhkMWQyNmY4NjYyMzViOTVmMzEwMzAsIFNpemU6IDIxNCBieXRlcworICAgKiBQYXRoOiAuLi90bXAvZGlzdHV0aWxzMi90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45L2Nob3hpZS9fX2luaXRfXy5weQorICAgICBIYXNoIDQxNmFhYjA4ZGZhODQ2ZjQ3MzEyOWU4OWE3NjI1YmJjLCBTaXplOiAyNSBieXRlcworICAgKiBQYXRoOiAuLi90bXAvZGlzdHV0aWxzMi90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9JTlNUQUxMRVIKKyAgICAgSGFzaCBkNDFkOGNkOThmMDBiMjA0ZTk4MDA5OThlY2Y4NDI3ZSwgU2l6ZTogMCBieXRlcworICAgKiBQYXRoOiAuLi90bXAvZGlzdHV0aWxzMi90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9NRVRBREFUQQorICAgICBIYXNoIDY5NmEyMDk5NjdmZWYzYzhiOGY1YTdiYjEwMzg2Mzg1LCBTaXplOiAyMjUgYnl0ZXMKKyAgICogUGF0aDogLi4vdG1wL2Rpc3R1dGlsczIvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS5kaXN0LWluZm8vUkVRVUVTVEVECisgICAgIEhhc2ggZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UsIFNpemU6IDAgYnl0ZXMKKyAgICogUGF0aDogLi4vdG1wL2Rpc3R1dGlsczIvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS5kaXN0LWluZm8vUkVDT1JECisgICAgIEhhc2ggTm9uZSwgU2l6ZTogTm9uZSBieXRlcworCisgICBNZXRhZGF0YQorICAgPT09PT09PT0KKyAgICAgICBNZXRhZGF0YS1WZXJzaW9uOiAxLjIKKyAgICAgICAgICAgICAgICAgICBOYW1lOiBjaG94aWUKKyAgICAgICAgICAgICAgICBWZXJzaW9uOiAyLjAuMC45CisgICAgICAgICAgICAgICBQbGF0Zm9ybTogW10KKyAgICAgU3VwcG9ydGVkLVBsYXRmb3JtOiBVTktOT1dOCisgICAgICAgICAgICAgICAgU3VtbWFyeTogQ2hvY29sYXRlIHdpdGggYSBraWNrIQorICAgICAgICAgICAgRGVzY3JpcHRpb246IFVOS05PV04KKyAgICAgICAgICAgICAgIEtleXdvcmRzOiBbXQorICAgICAgICAgICAgICBIb21lLXBhZ2U6IFVOS05PV04KKyAgICAgICAgICAgICAgICAgQXV0aG9yOiBVTktOT1dOCisgICAgICAgICAgIEF1dGhvci1lbWFpbDogVU5LTk9XTgorICAgICAgICAgICAgIE1haW50YWluZXI6IFVOS05PV04KKyAgICAgICBNYWludGFpbmVyLWVtYWlsOiBVTktOT1dOCisgICAgICAgICAgICAgICAgTGljZW5zZTogVU5LTk9XTgorICAgICAgICAgICAgIENsYXNzaWZpZXI6IFtdCisgICAgICAgICAgIERvd25sb2FkLVVSTDogVU5LTk9XTgorICAgICAgICAgT2Jzb2xldGVzLURpc3Q6IFsndHJ1ZmZsZXMgKDw9MC44LD49MC41KScsICd0cnVmZmxlcyAoPD0wLjksPj0wLjYpJ10KKyAgICAgICAgICAgIFByb2plY3QtVVJMOiBbXQorICAgICAgICAgIFByb3ZpZGVzLURpc3Q6IFsndHJ1ZmZsZXMgKDEuMCknXQorICAgICAgICAgIFJlcXVpcmVzLURpc3Q6IFsndG93ZWwtc3R1ZmYgKDAuMSknXQorICAgICAgICBSZXF1aXJlcy1QeXRob246IFVOS05PV04KKyAgICAgIFJlcXVpcmVzLUV4dGVybmFsOiBbXQorCisgIEV4dHJhCisgID09PT09CisgICogSXQgd2FzIGluc3RhbGxlZCBhcyBhIGRlcGVuZGVuY3kKKworCitHZXR0aW5nIG1ldGFkYXRhIGFib3V0IGEgZGlzdHJpYnV0aW9uCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1NvbWV0aW1lcyB5b3UncmUgbm90IGludGVyZXN0ZWQgYWJvdXQgdGhlIHBhY2thZ2luZyBpbmZvcm1hdGlvbiBjb250YWluZWQgaW4gYQorZnVsbCA6Y2xhc3M6YERpc3RyaWJ1dGlvbmAgb2JqZWN0IGJ1dCBqdXN0IHdhbnQgdG8gZG8gc29tZXRoaW5nIHdpdGggaXRzCis6YXR0cjpgfkRpc3RyaWJ1dGlvbi5tZXRhZGF0YWA6OgorCisgICA+Pj4gZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0IGdldF9kaXN0cmlidXRpb24KKyAgID4+PiBpbmZvID0gZ2V0X2Rpc3RyaWJ1dGlvbignY2hvY29sYXRlJykubWV0YWRhdGEKKyAgID4+PiBpbmZvWydLZXl3b3JkcyddCisgICBbJ2Nvb2tpbmcnLCAnaGFwcGluZXNzJ10KKworCitGaW5kaW5nIG91dCBvYnNvbGV0ZWQgZGlzdHJpYnV0aW9ucworXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KKworTm93LCB3ZSB0YWNrbGUgYSBkaWZmZXJlbnQgcHJvYmxlbSwgd2UgYXJlIGludGVyZXN0ZWQgaW4gZmluZGluZyBvdXQKK3doaWNoIGRpc3RyaWJ1dGlvbnMgaGF2ZSBiZWVuIG9ic29sZXRlZC4gVGhpcyBjYW4gYmUgZWFzaWx5IGRvbmUgYXMgZm9sbG93czo6CisKKyAgaW1wb3J0IHBhY2thZ2luZy5kYXRhYmFzZQorCisgICMgaXRlcmF0ZSBvdmVyIGFsbCBkaXN0cmlidXRpb25zIGluIHRoZSBzeXN0ZW0KKyAgZm9yIGRpc3QgaW4gcGFja2FnaW5nLmRhdGFiYXNlLmdldF9kaXN0cmlidXRpb25zKCk6CisgICAgICBuYW1lLCB2ZXJzaW9uID0gZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24KKyAgICAgICMgZmluZCBvdXQgd2hpY2ggZGlzdHJpYnV0aW9ucyBvYnNvbGV0ZSB0aGlzIG5hbWUvdmVyc2lvbiBjb21iaW5hdGlvbgorICAgICAgcmVwbGFjZW1lbnRzID0gcGFja2FnaW5nLmRhdGFiYXNlLm9ic29sZXRlc19kaXN0cmlidXRpb24obmFtZSwgdmVyc2lvbikKKyAgICAgIGlmIHJlcGxhY2VtZW50czoKKyAgICAgICAgICBwcmludCgnJXIgJXMgaXMgb2Jzb2xldGVkIGJ5JyAlIChuYW1lLCB2ZXJzaW9uKSwKKyAgICAgICAgICAgICAgICAnLCAnLmpvaW4ocmVwcihyLm5hbWUpIGZvciByIGluIHJlcGxhY2VtZW50cykpCisKK1RoaXMgaXMgaG93IHRoZSBvdXRwdXQgbWlnaHQgbG9vayBsaWtlOgorCisuLiBjb2RlLWJsb2NrOjogbm9uZQorCisgICdzdHJhd2JlcnJ5JyAwLjYgaXMgb2Jzb2xldGVkIGJ5ICdjaG94aWUnCisgICdncmFtbWFyJyAxLjBhNCBpcyBvYnNvbGV0ZWQgYnkgJ3Rvd2VsLXN0dWZmJwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmRlcGdyYXBoLnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kZXBncmFwaC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzM4NDc4OAotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kZXBncmFwaC5yc3QKQEAgLTAsMCArMSwxOTkgQEAKKzptb2Q6YHBhY2thZ2luZy5kZXBncmFwaGAgLS0tIERlcGVuZGVuY3kgZ3JhcGggYnVpbGRlcgorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5kZXBncmFwaAorICAgOnN5bm9wc2lzOiBHcmFwaCBidWlsZGVyIGZvciBkZXBlbmRlbmNpZXMgYmV0d2VlbiByZWxlYXNlcy4KKworCitUaGlzIG1vZHVsZSBwcm92aWRlcyB0aGUgbWVhbnMgdG8gYW5hbHlzZSB0aGUgZGVwZW5kZW5jaWVzIGJldHdlZW4gdmFyaW91cworZGlzdHJpYnV0aW9ucyBhbmQgdG8gY3JlYXRlIGEgZ3JhcGggcmVwcmVzZW50aW5nIHRoZXNlIGRlcGVuZGVuY3kgcmVsYXRpb25zaGlwcy4KK0luIHRoaXMgZG9jdW1lbnQsICJkaXN0cmlidXRpb24iIHJlZmVycyB0byBhbiBpbnN0YW5jZSBvZgorOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRGlzdHJpYnV0aW9uYCBvcgorOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRWdnSW5mb0Rpc3RyaWJ1dGlvbmAuCisKKy4uIFhYWCB0ZXJtaW5vbG9neSBwcm9ibGVtIHdpdGggZGlzdCB2cy4gcmVsZWFzZTogZGlzdHMgYXJlIGluc3RhbGxlZCwgYnV0IGRlcHMKKyAgIHVzZSByZWxlYXNlcworCisuLiBYWFggZXhwbGFpbiBob3cgdG8gdXNlIGl0IHdpdGggZGlzdHMgbm90IGluc3RhbGxlZDogRGlzdHJpYnV0aW9uIGNhbiBvbmx5IGJlCisgICBpbnN0YW50aWF0ZWQgd2l0aCBhIHBhdGgsIGJ1dCB0aGlzIG1vZHVsZSBpcyB1c2VmdWwgZm9yIHJlbW90ZSBkaXN0IHRvbworCisuLiBYWFggZnVuY3Rpb25zIHNob3VsZCBhY2NlcHQgYW5kIHJldHVybiBpdGVyYXRvcnMsIG5vdCBsaXN0cworCisKK1RoZSA6Y2xhc3M6YERlcGVuZGVuY3lHcmFwaGAgY2xhc3MKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gY2xhc3M6OiBEZXBlbmRlbmN5R3JhcGgKKworICAgUmVwcmVzZW50IGEgZGVwZW5kZW5jeSBncmFwaCBiZXR3ZWVuIHJlbGVhc2VzLiAgVGhlIG5vZGVzIGFyZSBkaXN0cmlidXRpb24KKyAgIGluc3RhbmNlczsgdGhlIGVkZ2UgbW9kZWwgZGVwZW5kZW5jaWVzLiAgQW4gZWRnZSBmcm9tIGBgYWBgIHRvIGBgYmBgIG1lYW5zCisgICB0aGF0IGBgYWBgIGRlcGVuZHMgb24gYGBiYGAuCisKKyAgIC4uIG1ldGhvZDo6IGFkZF9kaXN0cmlidXRpb24oZGlzdHJpYnV0aW9uKQorCisgICAgICBBZGQgKmRpc3RyaWJ1dGlvbiogdG8gdGhlIGdyYXBoLgorCisgICAuLiBtZXRob2Q6OiBhZGRfZWRnZSh4LCB5LCBsYWJlbD1Ob25lKQorCisgICAgICBBZGQgYW4gZWRnZSBmcm9tIGRpc3RyaWJ1dGlvbiAqeCogdG8gZGlzdHJpYnV0aW9uICp5KiB3aXRoIHRoZSBnaXZlbgorICAgICAgKmxhYmVsKiAoc3RyaW5nKS4KKworICAgLi4gbWV0aG9kOjogYWRkX21pc3NpbmcoZGlzdHJpYnV0aW9uLCByZXF1aXJlbWVudCkKKworICAgICAgQWRkIGEgbWlzc2luZyAqcmVxdWlyZW1lbnQqIChzdHJpbmcpIGZvciB0aGUgZ2l2ZW4gKmRpc3RyaWJ1dGlvbiouCisKKyAgIC4uIG1ldGhvZDo6IHJlcHJfbm9kZShkaXN0LCBsZXZlbD0xKQorCisgICAgICBQcmludCBhIHN1YmdyYXBoIHN0YXJ0aW5nIGZyb20gKmRpc3QqLiAgKmxldmVsKiBnaXZlcyB0aGUgZGVwdGggb2YgdGhlCisgICAgICBzdWJncmFwaC4KKworICAgRGlyZWN0IGFjY2VzcyB0byB0aGUgZ3JhcGggbm9kZXMgYW5kIGVkZ2VzIGlzIHByb3ZpZGVkIHRocm91Z2ggdGhlc2UKKyAgIGF0dHJpYnV0ZXM6CisKKyAgIC4uIGF0dHJpYnV0ZTo6IGFkamFjZW5jeV9saXN0CisKKyAgICAgIERpY3Rpb25hcnkgbWFwcGluZyBkaXN0cmlidXRpb25zIHRvIGEgbGlzdCBvZiBgYChvdGhlciwgbGFiZWwpYGAgdHVwbGVzCisgICAgICB3aGVyZSAgYGBvdGhlcmBgIGlzIGEgZGlzdHJpYnV0aW9uIGFuZCB0aGUgZWRnZSBpcyBsYWJlbGVkIHdpdGggYGBsYWJlbGBgCisgICAgICAoaS5lLiB0aGUgdmVyc2lvbiBzcGVjaWZpZXIsIGlmIHN1Y2ggd2FzIHByb3ZpZGVkKS4KKworICAgLi4gYXR0cmlidXRlOjogcmV2ZXJzZV9saXN0CisKKyAgICAgIERpY3Rpb25hcnkgbWFwcGluZyBkaXN0cmlidXRpb25zIHRvIGEgbGlzdCBvZiBwcmVkZWNlc3NvcnMuICBUaGlzIGFsbG93cworICAgICAgZWZmaWNpZW50IHRyYXZlcnNhbC4KKworICAgLi4gYXR0cmlidXRlOjogbWlzc2luZworCisgICAgICBEaWN0aW9uYXJ5IG1hcHBpbmcgZGlzdHJpYnV0aW9ucyB0byBhIGxpc3Qgb2YgcmVxdWlyZW1lbnRzIHRoYXQgd2VyZSBub3QKKyAgICAgIHByb3ZpZGVkIGJ5IGFueSBkaXN0cmlidXRpb24uCisKKworQXV4aWxpYXJ5IGZ1bmN0aW9ucworLS0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiBmdW5jdGlvbjo6IGRlcGVuZGVudF9kaXN0cyhkaXN0cywgZGlzdCkKKworICAgUmVjdXJzaXZlbHkgZ2VuZXJhdGUgYSBsaXN0IG9mIGRpc3RyaWJ1dGlvbnMgZnJvbSAqZGlzdHMqIHRoYXQgYXJlIGRlcGVuZGVudAorICAgb24gKmRpc3QqLgorCisgICAuLiBYWFggd2hhdCBkb2VzIG1lbWJlciBtZWFuIGhlcmU6ICJkaXN0IGlzIGEgbWVtYmVyIG9mICpkaXN0cyogZm9yIHdoaWNoIHdlCisgICAgICBhcmUgaW50ZXJlc3RlZCIKKworLi4gZnVuY3Rpb246OiBnZW5lcmF0ZV9ncmFwaChkaXN0cykKKworICAgR2VuZXJhdGUgYSA6Y2xhc3M6YERlcGVuZGVuY3lHcmFwaGAgZnJvbSB0aGUgZ2l2ZW4gbGlzdCBvZiBkaXN0cmlidXRpb25zLgorCisgICAuLiBYWFggbWFrZSB0aGlzIGFsdGVybmF0ZSBjb25zdHJ1Y3RvciBhIERlcEdyYXBoIGNsYXNzbWV0aG9kIG9yIHJlbmFtZTsKKyAgICAgICdnZW5lcmF0ZScgY2FuIHN1Z2dlc3QgaXQgY3JlYXRlcyBhIGZpbGUgb3IgYW4gaW1hZ2UsIHVzZSAnbWFrZScKKworLi4gZnVuY3Rpb246OiBncmFwaF90b19kb3QoZ3JhcGgsIGYsIHNraXBfZGlzY29ubmVjdGVkPVRydWUpCisKKyAgIFdyaXRlIGEgRE9UIG91dHB1dCBmb3IgdGhlIGdyYXBoIHRvIHRoZSBmaWxlLWxpa2Ugb2JqZWN0ICpmKi4KKworICAgSWYgKnNraXBfZGlzY29ubmVjdGVkKiBpcyB0cnVlLCBhbGwgZGlzdHJpYnV0aW9ucyB0aGF0IGFyZSBub3QgZGVwZW5kZW50IG9uCisgICBhbnkgb3RoZXIgZGlzdHJpYnV0aW9uIGFyZSBza2lwcGVkLgorCisgICAuLiBYWFggd2h5IGlzIHRoaXMgbm90IGEgRGVwR3JhcGggbWV0aG9kPworCisKK0V4YW1wbGUgVXNhZ2UKKy0tLS0tLS0tLS0tLS0KKworRGVwaWN0IGFsbCBkZXBlbmRlbmNpZXNzIGluIHRoZSBzeXN0ZW0KK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK0ZpcnN0LCB3ZSBzaGFsbCBnZW5lcmF0ZSBhIGdyYXBoIG9mIGFsbCB0aGUgZGlzdHJpYnV0aW9ucyBvbiB0aGUgc3lzdGVtCithbmQgdGhlbiBjcmVhdGUgYW4gaW1hZ2Ugb3V0IG9mIGl0IHVzaW5nIHRoZSB0b29scyBwcm92aWRlZCBieQorYEdyYXBodml6IDxodHRwOi8vd3d3LmdyYXBodml6Lm9yZy8+YF86OgorCisgICBmcm9tIHBhY2thZ2luZy5kYXRhYmFzZSBpbXBvcnQgZ2V0X2Rpc3RyaWJ1dGlvbnMKKyAgIGZyb20gcGFja2FnaW5nLmRlcGdyYXBoIGltcG9ydCBnZW5lcmF0ZV9ncmFwaAorCisgICBkaXN0cyA9IGxpc3QoZ2V0X2Rpc3RyaWJ1dGlvbnMoKSkKKyAgIGdyYXBoID0gZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisKK0l0IHdvdWxkIGJlIGludGVyZXN0aW5nIHRvIHByaW50IG91dCB0aGUgbWlzc2luZyByZXF1aXJlbWVudHMuICBUaGlzIGNhbiBiZSBkb25lCithcyBmb2xsb3dzOjoKKworICAgZm9yIGRpc3QsIHJlcXMgaW4gZ3JhcGgubWlzc2luZy5pdGVtcygpOgorICAgICAgIGlmIHJlcXM6CisgICAgICAgICAgIHJlcXMgPSAnICwnLmpvaW4ocmVwcihyZXEpIGZvciByZXEgaW4gcmVxcykKKyAgICAgICAgICAgcHJpbnQoJ01pc3NpbmcgZGVwZW5kZW5jaWVzIGZvciAlcjogJXMnICUgKGRpc3QubmFtZSwgcmVxcykpCisKK0V4YW1wbGUgb3V0cHV0IGlzOgorCisuLiBjb2RlLWJsb2NrOjogbm9uZQorCisgICBNaXNzaW5nIGRlcGVuZGVuY2llcyBmb3IgJ1R1cmJvQ2hlZXRhaCc6ICdDaGVldGFoJworICAgTWlzc2luZyBkZXBlbmRlbmNpZXMgZm9yICdUdXJib0dlYXJzJzogJ0NvbmZpZ09iaicsICdEZWNvcmF0b3JUb29scycsICdSdWxlRGlzcGF0Y2gnCisgICBNaXNzaW5nIGRlcGVuZGVuY2llcyBmb3IgJ2pvY2tleSc6ICdQeUtERTQua2RlY29yZScsICdQeUtERTQua2RldWknLCAnUHlRdDQuUXRDb3JlJywgJ1B5UXQ0LlF0R3VpJworICAgTWlzc2luZyBkZXBlbmRlbmNpZXMgZm9yICdUdXJib0tpZCc6ICdraWQnCisgICBNaXNzaW5nIGRlcGVuZGVuY2llcyBmb3IgJ1R1cmJvSnNvbjogJ0RlY29yYXRvclRvb2xzJywgJ1J1bGVEaXNwYXRjaCcKKworTm93LCB3ZSBwcm9jZWVkIHdpdGggZ2VuZXJhdGluZyBhIGdyYXBoaWNhbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgZ3JhcGguIEZpcnN0Cit3ZSB3cml0ZSBpdCB0byBhIGZpbGUsIGFuZCB0aGVuIHdlIGdlbmVyYXRlIGEgUE5HIGltYWdlIHVzaW5nIHRoZQorOnByb2dyYW06YGRvdGAgY29tbWFuZC1saW5lIHRvb2w6OgorCisgICBmcm9tIHBhY2thZ2luZy5kZXBncmFwaCBpbXBvcnQgZ3JhcGhfdG9fZG90CisgICB3aXRoIG9wZW4oJ291dHB1dC5kb3QnLCAndycpIGFzIGY6CisgICAgICAjIG9ubHkgc2hvdyB0aGUgaW50ZXJlc3RpbmcgZGlzdHJpYnV0aW9ucywgc2tpcHBpbmcgdGhlIGRpc2Nvbm5lY3RlZCBvbmVzCisgICAgICBncmFwaF90b19kb3QoZ3JhcGgsIGYsIHNraXBfZGlzY29ubmVjdGVkPVRydWUpCisKK1dlIGNhbiBjcmVhdGUgdGhlIGZpbmFsIHBpY3R1cmUgdXNpbmc6CisKKy4uIGNvZGUtYmxvY2s6OiBzaAorCisgICAkIGRvdCAtVHBuZyBvdXRwdXQuZG90ID4gb3V0cHV0LnBuZworCitBbiBleGFtcGxlIHJlc3VsdCBpczoKKworLi4gZmlndXJlOjogZGVwZ3JhcGgtb3V0cHV0LnBuZworICAgOmFsdDogRXhhbXBsZSBQTkcgb3V0cHV0IGZyb20gcGFja2FnaW5nLmRlcGdyYXBoIGFuZCBkb3QKKworSWYgeW91IHdhbnQgdG8gaW5jbHVkZSBlZ2cgZGlzdHJpYnV0aW9ucyBhcyB3ZWxsLCB0aGVuIHRoZSBjb2RlIHJlcXVpcmVzIG9ubHkKK29uZSBjaGFuZ2UsIG5hbWVseSB0aGUgbGluZTo6CisKKyAgIGRpc3RzID0gbGlzdChwYWNrYWdpbmcuZGF0YWJhc2UuZ2V0X2Rpc3RyaWJ1dGlvbnMoKSkKKworaGFzIHRvIGJlIHJlcGxhY2VkIHdpdGg6OgorCisgICBkaXN0cyA9IGxpc3QocGFja2FnaW5nLmRhdGFiYXNlLmdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbz1UcnVlKSkKKworT24gbWFueSBwbGF0Zm9ybXMsIGEgcmljaGVyIGdyYXBoIGlzIG9idGFpbmVkIGJlY2F1c2UgYXQgdGhlIG1vbWVudCBtb3N0CitkaXN0cmlidXRpb25zIGFyZSBwcm92aWRlZCBpbiB0aGUgZWdnIHJhdGhlciB0aGFuIHRoZSBuZXcgc3RhbmRhcmQKK2BgLmRpc3QtaW5mb2BgIGZvcm1hdC4KKworLi4gWFhYIG1pc3NpbmcgaW1hZ2UKKworICAgQW4gZXhhbXBsZSBvZiBhIG1vcmUgaW52b2x2ZWQgZ3JhcGggZm9yIGlsbHVzdHJhdGl2ZSByZWFzb25zIGNhbiBiZSBzZWVuCisgICBoZXJlOgorCisgICAuLiBpbWFnZTo6IGRlcGdyYXBoX2JpZy5wbmcKKworCitMaXN0IGFsbCBkZXBlbmRlbnQgZGlzdHJpYnV0aW9ucworXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KKworV2Ugd2lsbCBsaXN0IGFsbCBkaXN0cmlidXRpb25zIHRoYXQgYXJlIGRlcGVuZGVudCBvbiBzb21lIGdpdmVuIGRpc3RpYnV0aW9uLgorVGhpcyB0aW1lLCBlZ2cgZGlzdHJpYnV0aW9ucyB3aWxsIGJlIGNvbnNpZGVyZWQgYXMgd2VsbDo6CisKKyAgIGltcG9ydCBzeXMKKyAgIGZyb20gcGFja2FnaW5nLmRhdGFiYXNlIGltcG9ydCBnZXRfZGlzdHJpYnV0aW9uLCBnZXRfZGlzdHJpYnV0aW9ucworICAgZnJvbSBwYWNrYWdpbmcuZGVwZ3JhcGggaW1wb3J0IGRlcGVuZGVudF9kaXN0cworCisgICBkaXN0cyA9IGxpc3QoZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPVRydWUpKQorICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24oJ2JhY29uJywgdXNlX2VnZ19pbmZvPVRydWUpCisgICBpZiBkaXN0IGlzIE5vbmU6CisgICAgICAgc3lzLmV4aXQoJ05vIHN1Y2ggZGlzdHJpYnV0aW9uIGluIHRoZSBzeXN0ZW0nKQorCisgICBkZXBzID0gZGVwZW5kZW50X2Rpc3RzKGRpc3RzLCBkaXN0KQorICAgZGVwcyA9ICcsICcuam9pbihyZXByKHgubmFtZSkgZm9yIHggaW4gZGVwcykKKyAgIHByaW50KCdEaXN0cmlidXRpb25zIGRlcGVuZGluZyBvbiAlcjogJXMnICUgKGRpc3QubmFtZSwgZGVwcykpCisKK0FuZCB0aGlzIGlzIGV4YW1wbGUgb3V0cHV0OgorCisuLiB3aXRoIHRoZSBkZXBlbmRlbmN5IHJlbGF0aW9uc2hpcHMgYXMgaW4gdGhlIHByZXZpb3VzIHNlY3Rpb24KKyAgIChkZXBncmFwaF9iaWcpCisKKy4uIGNvZGUtYmxvY2s6OiBub25lCisKKyAgIERpc3RyaWJ1dGlvbnMgZGVwZW5kaW5nIG9uICdiYWNvbic6ICd0b3dlbC1zdHVmZicsICdjaG94aWUnLCAnZ3JhbW1hcicKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kaXN0LnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kaXN0LnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNWNiNjJiCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmRpc3QucnN0CkBAIC0wLDAgKzEsMTA4IEBACis6bW9kOmBwYWNrYWdpbmcuZGlzdGAgLS0tIFRoZSBEaXN0cmlidXRpb24gY2xhc3MKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcuZGlzdAorICAgOnN5bm9wc2lzOiBDb3JlIERpc3RyaWJ1dGlvbiBjbGFzcy4KKworCitUaGlzIG1vZHVsZSBwcm92aWRlcyB0aGUgOmNsYXNzOmBEaXN0cmlidXRpb25gIGNsYXNzLCB3aGljaCByZXByZXNlbnRzIHRoZQorbW9kdWxlIGRpc3RyaWJ1dGlvbiBiZWluZyBidWlsdC9wYWNrYWdlZC9kaXN0cmlidXRlZC9pbnN0YWxsZWQuCisKKy4uIGNsYXNzOjogRGlzdHJpYnV0aW9uKGFyZ3VtZW50cykKKworICAgQSA6Y2xhc3M6YERpc3RyaWJ1dGlvbmAgZGVzY3JpYmVzIGhvdyB0byBidWlsZCwgcGFja2FnZSwgZGlzdHJpYnV0ZSBhbmQKKyAgIGluc3RhbGwgYSBQeXRob24gcHJvamVjdC4KKworICAgVGhlIGFyZ3VtZW50cyBhY2NlcHRlZCBieSB0aGUgY29uc3RydWN0b3IgYXJlIGxhaWQgb3V0IGluIHRoZSBmb2xsb3dpbmcKKyAgIHRhYmxlLiAgU29tZSBvZiB0aGVtIHdpbGwgZW5kIHVwIGluIGEgbWV0YWRhdGEgb2JqZWN0LCB0aGUgcmVzdCB3aWxsIGJlY29tZQorICAgZGF0YSBhdHRyaWJ1dGVzIG9mIHRoZSA6Y2xhc3M6YERpc3RyaWJ1dGlvbmAgaW5zdGFuY2UuCisKKyAgIC4uIFRPRE8gaW1wcm92ZSBjb25zdHJ1Y3RvciB0byB0YWtlIGEgTWV0YWRhdGEgb2JqZWN0ICsgbmFtZWQgcGFyYW1zPworICAgICAgKGkuZS4gRGlzdHJpYnV0aW9uKG1ldGFkYXRhLCBjbWRjbGFzcywgcHlfbW9kdWxlcywgZXRjKQorICAgLi4gVE9ETyBhbHNvIHJlbW92ZSBvYnNvbGV0ZSg/KSBzY3JpcHRfbmFtZSwgZXRjLiBwYXJhbWV0ZXJzPyAgc2VlIHdoYXQKKyAgICAgIHB5MmV4ZSBhbmQgb3RoZXIgdG9vbHMgbmVlZAorCisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgYXJndW1lbnQgbmFtZSAgICAgIHwgdmFsdWUgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdHlwZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKz09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rCisgICB8ICpuYW1lKiAgICAgICAgICAgICB8IFRoZSBuYW1lIG9mIHRoZSBwcm9qZWN0ICAgICAgICB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqdmVyc2lvbiogICAgICAgICAgfCBUaGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlICAgICAgfCBhIHN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHJlbGVhc2U7IHNlZSAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgOm1vZDpgcGFja2FnaW5nLnZlcnNpb25gICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpzdW1tYXJ5KiAgICAgICAgICB8IEEgc2luZ2xlIGxpbmUgZGVzY3JpYmluZyB0aGUgICB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgcHJvamVjdCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpkZXNjcmlwdGlvbiogICAgICB8IExvbmdlciBkZXNjcmlwdGlvbiBvZiB0aGUgICAgICB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgcHJvamVjdCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICphdXRob3IqICAgICAgICAgICB8IFRoZSBuYW1lIG9mIHRoZSBwcm9qZWN0IGF1dGhvciB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqYXV0aG9yX2VtYWlsKiAgICAgfCBUaGUgZW1haWwgYWRkcmVzcyBvZiB0aGUgICAgICAgfCBhIHN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHByb2plY3QgYXV0aG9yICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqbWFpbnRhaW5lciogICAgICAgfCBUaGUgbmFtZSBvZiB0aGUgY3VycmVudCAgICAgICAgfCBhIHN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IG1haW50YWluZXIsIGlmIGRpZmZlcmVudCBmcm9tICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgdGhlIGF1dGhvciAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICptYWludGFpbmVyX2VtYWlsKiB8IFRoZSBlbWFpbCBhZGRyZXNzIG9mIHRoZSAgICAgICB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgY3VycmVudCBtYWludGFpbmVyLCBpZiAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCBkaWZmZXJlbnQgZnJvbSB0aGUgYXV0aG9yICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmhvbWVfcGFnZSogICAgICAgIHwgQSBVUkwgZm9yIHRoZSBwcm9lamN0ICAgICAgICAgIHwgYSBzdHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCAoaG9tZXBhZ2UpICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmRvd25sb2FkX3VybCogICAgIHwgQSBVUkwgdG8gZG93bmxvYWQgdGhlIHByb2plY3QgIHwgYSBzdHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpwYWNrYWdlcyogICAgICAgICB8IEEgbGlzdCBvZiBQeXRob24gcGFja2FnZXMgdGhhdCB8IGEgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgcGFja2FnaW5nIHdpbGwgbWFuaXB1bGF0ZSAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpweV9tb2R1bGVzKiAgICAgICB8IEEgbGlzdCBvZiBQeXRob24gbW9kdWxlcyB0aGF0ICB8IGEgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgcGFja2FnaW5nIHdpbGwgbWFuaXB1bGF0ZSAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpzY3JpcHRzKiAgICAgICAgICB8IEEgbGlzdCBvZiBzdGFuZGFsb25lIHNjcmlwdHMgICB8IGEgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgdG8gYmUgYnVpbHQgYW5kIGluc3RhbGxlZCAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpleHRfbW9kdWxlcyogICAgICB8IEEgbGlzdCBvZiBQeXRob24gZXh0ZW5zaW9ucyB0byB8IGEgbGlzdCBvZiBpbnN0YW5jZXMgb2YgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgYmUgYnVpbHQgICAgICAgICAgICAgICAgICAgICAgIHwgOmNsYXNzOmBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uLkV4dGVuc2lvbmAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpjbGFzc2lmaWVycyogICAgICB8IEEgbGlzdCBvZiBjYXRlZ29yaWVzIGZvciB0aGUgICB8IGEgbGlzdCBvZiBzdHJpbmdzOyB2YWxpZCBjbGFzc2lmaWVycyBhcmUgbGlzdGVkIG9uIGBQeVBpICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgZGlzdHJpYnV0aW9uICAgICAgICAgICAgICAgICAgIHwgPGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaT86YWN0aW9uPWxpc3RfY2xhc3NpZmllcnM+YF8uICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpkaXN0Y2xhc3MqICAgICAgICB8IHRoZSA6Y2xhc3M6YERpc3RyaWJ1dGlvbmAgICAgICB8IGEgc3ViY2xhc3Mgb2YgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgY2xhc3MgdG8gdXNlICAgICAgICAgICAgICAgICAgIHwgOmNsYXNzOmBwYWNrYWdpbmcuZGlzdC5EaXN0cmlidXRpb25gICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpzY3JpcHRfbmFtZSogICAgICB8IFRoZSBuYW1lIG9mIHRoZSBzZXR1cC5weSAgICAgICB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgc2NyaXB0IC0gZGVmYXVsdHMgdG8gICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCBgYHN5cy5hcmd2WzBdYGAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKnNjcmlwdF9hcmdzKiAgICAgIHwgQXJndW1lbnRzIHRvIHN1cHBseSB0byB0aGUgICAgIHwgYSBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCBzZXR1cCBzY3JpcHQgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKm9wdGlvbnMqICAgICAgICAgIHwgZGVmYXVsdCBvcHRpb25zIGZvciB0aGUgc2V0dXAgIHwgYSBzdHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCBzY3JpcHQgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmxpY2Vuc2UqICAgICAgICAgIHwgVGhlIGxpY2Vuc2UgZm9yIHRoZSAgICAgICAgICAgIHwgYSBzdHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCBkaXN0cmlidXRpb247IHNob3VsZCBiZSB1c2VkICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHdoZW4gdGhlcmUgaXMgbm8gc3VpdGFibGUgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgTGljZW5zZSBjbGFzc2lmaWVyLCBvciB0byAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCByZWZpbmUgYSBjbGFzc2lmaWVyICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmtleXdvcmRzKiAgICAgICAgIHwgRGVzY3JpcHRpdmUga2V5d29yZHM7IHVzZWQgYnkgIHwgYSBsaXN0IG9mIHN0cmluZ3Mgb3IgYSBjb21tYS1zZXBhcmF0ZWQgc3RyaW5nICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCBjYXRhbG9ncyBzdWNoIGFzIFB5UEkgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKnBsYXRmb3JtcyogICAgICAgIHwgUGxhdGZvcm1zIGNvbXBhdGlibGUgd2l0aCB0aGlzIHwgYSBsaXN0IG9mIHN0cmluZ3Mgb3IgYSBjb21tYS1zZXBhcmF0ZWQgc3RyaW5nICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCBkaXN0cmlidXRpb247IHNob3VsZCBiZSB1c2VkICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHdoZW4gdGhlcmUgaXMgbm8gc3VpdGFibGUgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgUGxhdGZvcm0gY2xhc3NpZmllciAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpjbWRjbGFzcyogICAgICAgICB8IEEgbWFwcGluZyBvZiBjb21tYW5kIG5hbWVzIHRvICB8IGEgZGljdGlvbmFyeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgOmNsYXNzOmBDb21tYW5kYCBzdWJjbGFzc2VzICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpkYXRhX2ZpbGVzKiAgICAgICB8IEEgbGlzdCBvZiBkYXRhIGZpbGVzIHRvICAgICAgICB8IGEgbGlzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgaW5zdGFsbCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpwYWNrYWdlX2RpciogICAgICB8IEEgbWFwcGluZyBvZiBQeXRob24gcGFja2FnZXMgICB8IGEgZGljdGlvbmFyeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgdG8gZGlyZWN0b3J5IG5hbWVzICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuZmFuY3lfZ2V0b3B0LnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5mYW5jeV9nZXRvcHQucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJjNjkzNDEKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuZmFuY3lfZ2V0b3B0LnJzdApAQCAtMCwwICsxLDc1IEBACis6bW9kOmBwYWNrYWdpbmcuZmFuY3lfZ2V0b3B0YCAtLS0gV3JhcHBlciBhcm91bmQgdGhlIGdldG9wdCBtb2R1bGUKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcuZmFuY3lfZ2V0b3B0CisgICA6c3lub3BzaXM6IEFkZGl0aW9uYWwgZ2V0b3B0IGZ1bmN0aW9uYWxpdHkuCisKKworLi4gd2FybmluZzo6CisgICBUaGlzIG1vZHVsZSBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlcGxhY2VkIHdpdGggOm1vZDpgb3B0cGFyc2VgLgorCitUaGlzIG1vZHVsZSBwcm92aWRlcyBhIHdyYXBwZXIgYXJvdW5kIHRoZSBzdGFuZGFyZCA6bW9kOmBnZXRvcHRgIG1vZHVsZSB0aGF0Citwcm92aWRlcyB0aGUgZm9sbG93aW5nIGFkZGl0aW9uYWwgZmVhdHVyZXM6CisKKyogc2hvcnQgYW5kIGxvbmcgb3B0aW9ucyBhcmUgdGllZCB0b2dldGhlcgorCisqIG9wdGlvbnMgaGF2ZSBoZWxwIHN0cmluZ3MsIHNvIDpmdW5jOmBmYW5jeV9nZXRvcHRgIGNvdWxkIHBvdGVudGlhbGx5IGNyZWF0ZSBhCisgIGNvbXBsZXRlIHVzYWdlIHN1bW1hcnkKKworKiBvcHRpb25zIHNldCBhdHRyaWJ1dGVzIG9mIGEgcGFzc2VkLWluIG9iamVjdAorCisqIGJvb2xlYW4gb3B0aW9ucyBjYW4gaGF2ZSAibmVnYXRpdmUgYWxpYXNlcyIgLS0tIGUuZy4gaWYgOm9wdGlvbjpgLS1xdWlldGAgaXMKKyAgdGhlICJuZWdhdGl2ZSBhbGlhcyIgb2YgOm9wdGlvbjpgLS12ZXJib3NlYCwgdGhlbiA6b3B0aW9uOmAtLXF1aWV0YCBvbiB0aGUKKyAgY29tbWFuZCBsaW5lIHNldHMgKnZlcmJvc2UqIHRvIGZhbHNlLgorCisuLiBmdW5jdGlvbjo6IGZhbmN5X2dldG9wdChvcHRpb25zLCBuZWdhdGl2ZV9vcHQsIG9iamVjdCwgYXJncykKKworICAgV3JhcHBlciBmdW5jdGlvbi4gKm9wdGlvbnMqIGlzIGEgbGlzdCBvZiBgYChsb25nX29wdGlvbiwgc2hvcnRfb3B0aW9uLAorICAgaGVscF9zdHJpbmcpYGAgMy10dXBsZXMgYXMgZGVzY3JpYmVkIGluIHRoZSBjb25zdHJ1Y3RvciBmb3IKKyAgIDpjbGFzczpgRmFuY3lHZXRvcHRgLiAqbmVnYXRpdmVfb3B0KiBzaG91bGQgYmUgYSBkaWN0aW9uYXJ5IG1hcHBpbmcgb3B0aW9uIG5hbWVzCisgICB0byBvcHRpb24gbmFtZXMsIGJvdGggdGhlIGtleSBhbmQgdmFsdWUgc2hvdWxkIGJlIGluIHRoZSAqb3B0aW9ucyogbGlzdC4KKyAgICpvYmplY3QqIGlzIGFuIG9iamVjdCB3aGljaCB3aWxsIGJlIHVzZWQgdG8gc3RvcmUgdmFsdWVzIChzZWUgdGhlIDptZXRoOmBnZXRvcHRgCisgICBtZXRob2Qgb2YgdGhlIDpjbGFzczpgRmFuY3lHZXRvcHRgIGNsYXNzKS4gKmFyZ3MqIGlzIHRoZSBhcmd1bWVudCBsaXN0LiBXaWxsIHVzZQorICAgYGBzeXMuYXJndlsxOl1gYCBpZiB5b3UgcGFzcyBgYE5vbmVgYCBhcyAqYXJncyouCisKKworLi4gY2xhc3M6OiBGYW5jeUdldG9wdChbb3B0aW9uX3RhYmxlPU5vbmVdKQorCisgICBUaGUgb3B0aW9uX3RhYmxlIGlzIGEgbGlzdCBvZiAzLXR1cGxlczogYGAobG9uZ19vcHRpb24sIHNob3J0X29wdGlvbiwKKyAgIGhlbHBfc3RyaW5nKWBgCisKKyAgIElmIGFuIG9wdGlvbiB0YWtlcyBhbiBhcmd1bWVudCwgaXRzICpsb25nX29wdGlvbiogc2hvdWxkIGhhdmUgYGAnPSdgYCBhcHBlbmRlZDsKKyAgICpzaG9ydF9vcHRpb24qIHNob3VsZCBqdXN0IGJlIGEgc2luZ2xlIGNoYXJhY3Rlciwgbm8gYGAnOidgYCBpbiBhbnkgY2FzZS4KKyAgICpzaG9ydF9vcHRpb24qIHNob3VsZCBiZSBgYE5vbmVgYCBpZiBhICpsb25nX29wdGlvbiogZG9lc24ndCBoYXZlIGEKKyAgIGNvcnJlc3BvbmRpbmcgKnNob3J0X29wdGlvbiouIEFsbCBvcHRpb24gdHVwbGVzIG11c3QgaGF2ZSBsb25nIG9wdGlvbnMuCisKK1RoZSA6Y2xhc3M6YEZhbmN5R2V0b3B0YCBjbGFzcyBwcm92aWRlcyB0aGUgZm9sbG93aW5nIG1ldGhvZHM6CisKKworLi4gbWV0aG9kOjogRmFuY3lHZXRvcHQuZ2V0b3B0KFthcmdzPU5vbmUsIG9iamVjdD1Ob25lXSkKKworICAgUGFyc2UgY29tbWFuZC1saW5lIG9wdGlvbnMgaW4gYXJncy4gU3RvcmUgYXMgYXR0cmlidXRlcyBvbiAqb2JqZWN0Ki4KKworICAgSWYgKmFyZ3MqIGlzIGBgTm9uZWBgIG9yIG5vdCBzdXBwbGllZCwgdXNlcyBgYHN5cy5hcmd2WzE6XWBgLiAgSWYgKm9iamVjdCogaXMKKyAgIGBgTm9uZWBgIG9yIG5vdCBzdXBwbGllZCwgY3JlYXRlcyBhIG5ldyA6Y2xhc3M6YE9wdGlvbkR1bW15YCBpbnN0YW5jZSwgc3RvcmVzCisgICBvcHRpb24gdmFsdWVzIHRoZXJlLCBhbmQgcmV0dXJucyBhIHR1cGxlIGBgKGFyZ3MsIG9iamVjdClgYC4gIElmICpvYmplY3QqIGlzCisgICBzdXBwbGllZCwgaXQgaXMgbW9kaWZpZWQgaW4gcGxhY2UgYW5kIDpmdW5jOmBnZXRvcHRgIGp1c3QgcmV0dXJucyAqYXJncyo7IGluCisgICBib3RoIGNhc2VzLCB0aGUgcmV0dXJuZWQgKmFyZ3MqIGlzIGEgbW9kaWZpZWQgY29weSBvZiB0aGUgcGFzc2VkLWluICphcmdzKiBsaXN0LAorICAgd2hpY2ggaXMgbGVmdCB1bnRvdWNoZWQuCisKKyAgIC4uIFRPRE8gYW5kIGFyZ3MgcmV0dXJuZWQgYXJlPworCisKKy4uIG1ldGhvZDo6IEZhbmN5R2V0b3B0LmdldF9vcHRpb25fb3JkZXIoKQorCisgICBSZXR1cm5zIHRoZSBsaXN0IG9mIGBgKG9wdGlvbiwgdmFsdWUpYGAgdHVwbGVzIHByb2Nlc3NlZCBieSB0aGUgcHJldmlvdXMgcnVuIG9mCisgICA6bWV0aDpgZ2V0b3B0YCAgUmFpc2VzIDpleGM6YFJ1bnRpbWVFcnJvcmAgaWYgOm1ldGg6YGdldG9wdGAgaGFzbid0IGJlZW4gY2FsbGVkCisgICB5ZXQuCisKKworLi4gbWV0aG9kOjogRmFuY3lHZXRvcHQuZ2VuZXJhdGVfaGVscChbaGVhZGVyPU5vbmVdKQorCisgICBHZW5lcmF0ZSBoZWxwIHRleHQgKGEgbGlzdCBvZiBzdHJpbmdzLCBvbmUgcGVyIHN1Z2dlc3RlZCBsaW5lIG9mIG91dHB1dCkgZnJvbQorICAgdGhlIG9wdGlvbiB0YWJsZSBmb3IgdGhpcyA6Y2xhc3M6YEZhbmN5R2V0b3B0YCBvYmplY3QuCisKKyAgIElmIHN1cHBsaWVkLCBwcmludHMgdGhlIHN1cHBsaWVkICpoZWFkZXIqIGF0IHRoZSB0b3Agb2YgdGhlIGhlbHAuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuaW5zdGFsbC5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuaW5zdGFsbC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2UwMDc1MAotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5pbnN0YWxsLnJzdApAQCAtMCwwICsxLDExMiBAQAorOm1vZDpgcGFja2FnaW5nLmluc3RhbGxgIC0tLSBJbnN0YWxsYXRpb24gdG9vbHMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5pbnN0YWxsCisgICA6c3lub3BzaXM6IERvd25sb2FkIGFuZCBpbnN0YWxsYXRpb24gYnVpbGRpbmcgYmxvY2tzCisKKworUGFja2FnaW5nIHByb3ZpZGVzIGEgc2V0IG9mIHRvb2xzIHRvIGRlYWwgd2l0aCBkb3dubG9hZHMgYW5kIGluc3RhbGxhdGlvbiBvZgorZGlzdHJpYnV0aW9ucy4gIFRoZWlyIHJvbGUgaXMgdG8gZG93bmxvYWQgdGhlIGRpc3RyaWJ1dGlvbiBmcm9tIGluZGV4ZXMsIHJlc29sdmUKK3RoZSBkZXBlbmRlbmNpZXMsIGFuZCBwcm92aWRlIGEgc2FmZSB3YXkgdG8gaW5zdGFsbCBkaXN0cmlidXRpb25zLiAgQW4gb3BlcmF0aW9uCit0aGF0IGZhaWxzIHdpbGwgY2xlYW5seSByb2xsIGJhY2ssIG5vdCBsZWF2ZSBoYWxmLWluc3RhbGxlZCBkaXN0cmlidXRpb25zIG9uIHRoZQorc3lzdGVtLiAgSGVyZSdzIHRoZSBiYXNpYyBwcm9jZXNzIGZvbGxvd2VkOgorCisjLiBNb3ZlIGFsbCBkaXN0cmlidXRpb25zIHRoYXQgd2lsbCBiZSByZW1vdmVkIHRvIGEgdGVtcG9yYXJ5IGxvY2F0aW9uLgorCisjLiBJbnN0YWxsIGFsbCB0aGUgZGlzdHJpYnV0aW9ucyB0aGF0IHdpbGwgYmUgaW5zdGFsbGVkIGluIGEgdGVtcG9yYXJ5IGxvY2F0aW9uLgorCisjLiBJZiB0aGUgaW5zdGFsbGF0aW9uIGZhaWxzLCBtb3ZlIHRoZSBzYXZlZCBkaXN0cmlidXRpb25zIGJhY2sgdG8gdGhlaXIKKyAgIGxvY2F0aW9uIGFuZCBkZWxldGUgdGhlIGluc3RhbGxlZCBkaXN0cmlidXRpb25zLgorCisjLiBPdGhlcndpc2UsIG1vdmUgdGhlIGluc3RhbGxlZCBkaXN0cmlidXRpb25zIHRvIHRoZSByaWdodCBsb2NhdGlvbiBhbmQgZGVsZXRlCisgICB0aGUgdGVtcG9yYXJ5IGxvY2F0aW9ucy4KKworVGhpcyBpcyBhIGhpZ2hlci1sZXZlbCBtb2R1bGUgYnVpbHQgb24gOm1vZDpgcGFja2FnaW5nLmRhdGFiYXNlYCBhbmQKKzptb2Q6YHBhY2thZ2luZy5weXBpYC4KKworCitQdWJsaWMgZnVuY3Rpb25zCistLS0tLS0tLS0tLS0tLS0tCisKKy4uIGZ1bmN0aW9uOjogZ2V0X2luZm9zKHJlcXVpcmVtZW50cywgaW5kZXg9Tm9uZSwgaW5zdGFsbGVkPU5vbmUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcl9maW5hbD1UcnVlKQorCisgICBSZXR1cm4gaW5mb3JtYXRpb24gYWJvdXQgd2hhdCdzIGdvaW5nIHRvIGJlIGluc3RhbGxlZCBhbmQgdXBncmFkZWQuCisgICAqcmVxdWlyZW1lbnRzKiBpcyBhIHN0cmluZyBjb250YWluaW5nIHRoZSByZXF1aXJlbWVudHMgZm9yIHRoaXMKKyAgIHByb2plY3QsIGZvciBleGFtcGxlIGBgJ0Zvb0JhciAxLjEnYGAgb3IgYGAnQmFyQmF6ICg8MS4yKSdgYC4KKworICAgLi4gWFhYIGFyZSByZXF1aXJlbWVudHMgY29tbWEtc2VwYXJhdGVkPworCisgICBJZiB5b3Ugd2FudCB0byB1c2UgYW5vdGhlciBpbmRleCB0aGFuIHRoZSBtYWluIFB5UEksIGdpdmUgaXRzIFVSSSBhcyAqaW5kZXgqCisgICBhcmd1bWVudC4KKworICAgKmluc3RhbGxlZCogaXMgYSBsaXN0IG9mIGFscmVhZHkgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbnMgdXNlZCB0byBmaW5kCisgICBzYXRpc2ZpZWQgZGVwZW5kZW5jaWVzLCBvYnNvbGV0ZWQgZGlzdHJpYnV0aW9ucyBhbmQgZXZlbnR1YWwgY29uZmxpY3RzLgorCisgICBCeSBkZWZhdWx0LCBhbHBoYSwgYmV0YSBhbmQgY2FuZGlkYXRlIHZlcnNpb25zIGFyZSBub3QgcGlja2VkIHVwLiAgU2V0CisgICAqcHJlZmVyX2ZpbmFsKiB0byBmYWxzZSB0byBhY2NlcHQgdGhlbSB0b28uCisKKyAgIFRoZSByZXN1bHRzIGFyZSByZXR1cm5lZCBpbiBhIGRpY3Rpb25hcnkgY29udGFpbmluZyBhbGwgdGhlIGluZm9ybWF0aW9uCisgICBuZWVkZWQgdG8gcGVyZm9ybSBpbnN0YWxsYXRpb24gb2YgdGhlIHJlcXVpcmVtZW50cyB3aXRoIHRoZQorICAgOmZ1bmM6YGluc3RhbGxfZnJvbV9pbmZvc2AgZnVuY3Rpb246CisKKyAgID4+PiBnZXRfaW5zdGFsbF9pbmZvKCJGb29CYXIgKDw9MS4yKSIpCisgICB7J2luc3RhbGwnOiBbPEZvb0JhciAxLjE+XSwgJ3JlbW92ZSc6IFtdLCAnY29uZmxpY3QnOiBbXX0KKworICAgLi4gVE9ETyBzaG91bGQgcmV0dXJuIHR1cGxlIG9yIG5hbWVkIHR1cGxlLCBub3QgZGljdAorICAgLi4gVE9ETyB1c2UgInByZWRpY2F0ZSIgb3IgInJlcXVpcmVtZW50IiBjb25zaXN0ZW50bHkgaW4gdmVyc2lvbiBhbmQgaGVyZQorICAgLi4gRklYTUUgImluZm8iIGNhbm5vdCBiZSBwbHVyYWwgaW4gRW5nbGlzaCwgcy9pbmZvcy9pbmZvLworCisKKy4uIGZ1bmN0aW9uOjogaW5zdGFsbChwcm9qZWN0KQorCisKKy4uIGZ1bmN0aW9uOjogaW5zdGFsbF9kaXN0cyhkaXN0cywgcGF0aCwgcGF0aHM9Tm9uZSkKKworICAgU2FmZWx5IGluc3RhbGwgYWxsIGRpc3RyaWJ1dGlvbnMgcHJvdmlkZWQgaW4gKmRpc3RzKiBpbnRvICpwYXRoKi4gICpwYXRocyogaXMKKyAgIGEgbGlzdCBvZiBwYXRocyB3aGVyZSBhbHJlYWR5LWluc3RhbGxlZCBkaXN0cmlidXRpb25zIHdpbGwgYmUgbG9va2VkIGZvciB0bworICAgZmluZCBzYXRpc2ZpZWQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMgKGRlZmF1bHQ6IDpkYXRhOmBzeXMucGF0aGApLgorICAgUmV0dXJucyBhIGxpc3Qgb2YgaW5zdGFsbGVkIGRpc3RzLgorCisgICAuLiBGSVhNRSBkaXN0cyBhcmUgaW5zdGFuY2VzIG9mIHdoYXQ/CisKKworLi4gZnVuY3Rpb246OiBpbnN0YWxsX2Zyb21faW5mb3MoaW5zdGFsbF9wYXRoPU5vbmUsIGluc3RhbGw9W10sIHJlbW92ZT1bXSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmxpY3RzPVtdLCBwYXRocz1Ob25lKQorCisgICBTYWZlbHkgaW5zdGFsbCBhbmQgcmVtb3ZlIGdpdmVuIGRpc3RyaWJ1dGlvbnMuICBUaGlzIGZ1bmN0aW9uIGlzIGRlc2lnbmVkIHRvCisgICB3b3JrIHdpdGggdGhlIHJldHVybiB2YWx1ZSBvZiA6ZnVuYzpgZ2V0X2luZm9zYDogKmluc3RhbGwqLCAqcmVtb3ZlKiBhbmQKKyAgICpjb25mbGljdHMqIHNob3VsZCBiZSBsaXN0IG9mIGRpc3RyaWJ1dGlvbnMgcmV0dXJuZWQgYnkgOmZ1bmM6YGdldF9pbmZvc2AuCisgICBJZiAqaW5zdGFsbCogaXMgbm90IGVtcHR5LCAqaW5zdGFsbF9wYXRoKiBtdXN0IGJlIGdpdmVuIHRvIHNwZWNpZnkgdGhlIHBhdGgKKyAgIHdoZXJlIHRoZSBkaXN0cmlidXRpb25zIHNob3VsZCBiZSBpbnN0YWxsZWQuICAqcGF0aHMqIGlzIGEgbGlzdCBvZiBwYXRocworICAgd2hlcmUgYWxyZWFkeS1pbnN0YWxsZWQgZGlzdHJpYnV0aW9ucyB3aWxsIGJlIGxvb2tlZCBmb3IgKGRlZmF1bHQ6CisgICA6ZGF0YTpgc3lzLnBhdGhgKS4KKworICAgVGhpcyBmdW5jdGlvbiBpcyBhIHZlcnkgYmFzaWMgaW5zdGFsbGVyOyBpZiAqY29uZmxpY3RzKiBpcyBub3QgZW1wdHksIHRoZQorICAgc3lzdGVtIHdpbGwgYmUgaW4gYSBjb25mbGljdGluZyBzdGF0ZSBhZnRlciB0aGUgZnVuY3Rpb24gY29tcGxldGVzLiAgSXQgaXMgYQorICAgYnVpbGRpbmcgYmxvY2sgZm9yIG1vcmUgc29waGlzdGljYXRlZCBpbnN0YWxsZXJzIHdpdGggY29uZmxpY3QgcmVzb2x1dGlvbgorICAgc3lzdGVtcy4KKworICAgLi4gVE9ETyBkb2N1bWVudCB0eXBpY2FsIHZhbHVlIGZvciBpbnN0YWxsX3BhdGgKKyAgIC4uIFRPRE8gZG9jdW1lbnQgaW50ZWdyYXRpb24gd2l0aCBkZWZhdWx0IHNjaGVtZXMsIGVzcC4gdXNlciBzaXRlLXBhY2thZ2VzCisKKworLi4gZnVuY3Rpb246OiBpbnN0YWxsX2xvY2FsX3Byb2plY3QocGF0aCkKKworICAgSW5zdGFsbCBhIGRpc3RyaWJ1dGlvbiBmcm9tIGEgc291cmNlIGRpcmVjdG9yeSwgd2hpY2ggbXVzdCBjb250YWluIGVpdGhlciBhCisgICBQYWNrYWdpbmctY29tcGxpYW50IDpmaWxlOmBzZXR1cC5jZmdgIGZpbGUgb3IgYSBsZWdhY3kgRGlzdHV0aWxzCisgICA6ZmlsZTpgc2V0dXAucHlgIHNjcmlwdCAoaW4gd2hpY2ggY2FzZSBEaXN0dXRpbHMgd2lsbCBiZSB1c2VkIHVuZGVyIHRoZSBob29kCisgICB0byBwZXJmb3JtIHRoZSBpbnN0YWxsYXRpb24pLgorCisKKy4uIGZ1bmN0aW9uOjogIHJlbW92ZShwcm9qZWN0X25hbWUsIHBhdGhzPU5vbmUsIGF1dG9fY29uZmlybT1UcnVlKQorCisgICBSZW1vdmUgb25lIGRpc3RyaWJ1dGlvbiBmcm9tIHRoZSBzeXN0ZW0uCisKKyAgIC4uIEZJWE1FIHRoaXMgaXMgdGhlIG9ubHkgZnVuY3Rpb24gdXNpbmcgInByb2plY3QiIGluc3RlYWQgb2YgZGlzdC9yZWxlYXNlCisKKy4uCisgICBFeGFtcGxlIHVzYWdlCisgICAtLS0tLS0tLS0tLS0tLQorCisgICBHZXQgdGhlIHNjaGVtZSBvZiB3aGF0J3MgZ29ubmEgYmUgaW5zdGFsbGVkIGlmIHdlIGluc3RhbGwgImZvb2JhciI6CmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9wYWNrYWdpbmcubWV0YWRhdGEucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLm1ldGFkYXRhLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMzJkNjlkCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLm1ldGFkYXRhLnJzdApAQCAtMCwwICsxLDEyMiBAQAorOm1vZDpgcGFja2FnaW5nLm1ldGFkYXRhYCAtLS0gTWV0YWRhdGEgaGFuZGxpbmcKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5tZXRhZGF0YQorICAgOnN5bm9wc2lzOiBDbGFzcyBob2xkaW5nIHRoZSBtZXRhZGF0YSBvZiBhIHJlbGVhc2UuCisKKworLi4gVE9ETyB1c2Ugc3BoaW54LWF1dG9nZW4gdG8gZ2VuZXJhdGUgYmFzaWMgZG9jIGZyb20gdGhlIGRvY3N0cmluZ3MKKworLi4gY2xhc3M6OiBNZXRhZGF0YQorCisgICBUaGlzIGNsYXNzIGNhbiByZWFkIGFuZCB3cml0ZSBtZXRhZGF0YSBmaWxlcyBjb21wbHlpbmcgd2l0aCBhbnkgb2YgdGhlCisgICBkZWZpbmVkIHZlcnNpb25zOiAxLjAgKDpQRVA6YDI0MWApLCAxLjEgKDpQRVA6YDMxNGApIGFuZCAxLjIgKDpQRVA6YDM0NWApLiAgSXQKKyAgIGltcGxlbWVudHMgbWV0aG9kcyB0byBwYXJzZSBNZXRhZGF0YSBmaWxlcyBhbmQgd3JpdGUgdGhlbSwgYW5kIGEgbWFwcGluZworICAgaW50ZXJmYWNlIHRvIGl0cyBjb250ZW50cy4KKworICAgVGhlIDpQRVA6YDM0NWAgaW1wbGVtZW50YXRpb24gc3VwcG9ydHMgdGhlIG1pY3JvLWxhbmd1YWdlIGZvciB0aGUgZW52aXJvbm1lbnQKKyAgIG1hcmtlcnMsIGFuZCBkaXNwbGF5cyB3YXJuaW5ncyB3aGVuIHZlcnNpb25zIHRoYXQgYXJlIHN1cHBvc2VkIHRvIGJlCisgICA6UEVQOmAzODZgLWNvbXBsaWFudCBhcmUgdmlvbGF0aW5nIHRoZSBzcGVjaWZpY2F0aW9uLgorCisKK1JlYWRpbmcgbWV0YWRhdGEKKy0tLS0tLS0tLS0tLS0tLS0KKworVGhlIDpjbGFzczpgTWV0YWRhdGFgIGNsYXNzIGNhbiBiZSBpbnN0YW50aWF0ZWQKK3dpdGggdGhlIHBhdGggb2YgdGhlIG1ldGFkYXRhIGZpbGUsIGFuZCBwcm92aWRlcyBhIGRpY3QtbGlrZSBpbnRlcmZhY2UgdG8gdGhlCit2YWx1ZXM6OgorCisgICA+Pj4gZnJvbSBwYWNrYWdpbmcubWV0YWRhdGEgaW1wb3J0IE1ldGFkYXRhCisgICA+Pj4gbWV0YWRhdGEgPSBNZXRhZGF0YSgnUEtHLUlORk8nKQorICAgPj4+IG1ldGFkYXRhLmtleXMoKVs6NV0KKyAgICgnTWV0YWRhdGEtVmVyc2lvbicsICdOYW1lJywgJ1ZlcnNpb24nLCAnUGxhdGZvcm0nLCAnU3VwcG9ydGVkLVBsYXRmb3JtJykKKyAgID4+PiBtZXRhZGF0YVsnTmFtZSddCisgICAnQ0xWYXVsdCcKKyAgID4+PiBtZXRhZGF0YVsnVmVyc2lvbiddCisgICAnMC41JworICAgPj4+IG1ldGFkYXRhWydSZXF1aXJlcy1EaXN0J10KKyAgIFsicHl3aW4zMjsgc3lzLnBsYXRmb3JtID09ICd3aW4zMiciLCAiU3BoaW54Il0KKworCitUaGUgZmllbGRzIHRoYXQgc3VwcG9ydCBlbnZpcm9ubWVudCBtYXJrZXJzIGNhbiBiZSBhdXRvbWF0aWNhbGx5IGlnbm9yZWQgaWYKK3RoZSBvYmplY3QgaXMgaW5zdGFudGlhdGVkIHVzaW5nIHRoZSBgYHBsYXRmb3JtX2RlcGVuZGVudGBgIG9wdGlvbi4KKzpjbGFzczpgTWV0YWRhdGFgIHdpbGwgaW50ZXJwcmV0IGluIHRoaXMgY2FzZQordGhlIG1hcmtlcnMgYW5kIHdpbGwgYXV0b21hdGljYWxseSByZW1vdmUgdGhlIGZpZWxkcyB0aGF0IGFyZSBub3QgY29tcGxpYW50Cit3aXRoIHRoZSBydW5uaW5nIGVudmlyb25tZW50LiBIZXJlJ3MgYW4gZXhhbXBsZSB1bmRlciBNYWMgT1MgWC4gVGhlIHdpbjMyCitkZXBlbmRlbmN5IHdlIHNhdyBlYXJsaWVyIGlzIGlnbm9yZWQ6OgorCisgICA+Pj4gZnJvbSBwYWNrYWdpbmcubWV0YWRhdGEgaW1wb3J0IE1ldGFkYXRhCisgICA+Pj4gbWV0YWRhdGEgPSBNZXRhZGF0YSgnUEtHLUlORk8nLCBwbGF0Zm9ybV9kZXBlbmRlbnQ9VHJ1ZSkKKyAgID4+PiBtZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddCisgICBbJ1NwaGlueCddCisKKworSWYgeW91IHdhbnQgdG8gcHJvdmlkZSB5b3VyIG93biBleGVjdXRpb24gY29udGV4dCwgbGV0J3Mgc2F5IHRvIHRlc3QgdGhlCittZXRhZGF0YSB1bmRlciBhIHBhcnRpY3VsYXIgZW52aXJvbm1lbnQgdGhhdCBpcyBub3QgdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQsCit5b3UgY2FuIHByb3ZpZGUgeW91ciBvd24gdmFsdWVzIGluIHRoZSBgYGV4ZWN1dGlvbl9jb250ZXh0YGAgb3B0aW9uLCB3aGljaAoraXMgdGhlIGRpY3QgdGhhdCBtYXkgY29udGFpbiBvbmUgb3IgbW9yZSBrZXlzIG9mIHRoZSBjb250ZXh0IHRoZSBtaWNyby1sYW5ndWFnZQorZXhwZWN0cy4KKworSGVyZSdzIGFuIGV4YW1wbGUsIHNpbXVsYXRpbmcgYSB3aW4zMiBlbnZpcm9ubWVudDo6CisKKyAgID4+PiBmcm9tIHBhY2thZ2luZy5tZXRhZGF0YSBpbXBvcnQgTWV0YWRhdGEKKyAgID4+PiBjb250ZXh0ID0geydzeXMucGxhdGZvcm0nOiAnd2luMzInfQorICAgPj4+IG1ldGFkYXRhID0gTWV0YWRhdGEoJ1BLRy1JTkZPJywgcGxhdGZvcm1fZGVwZW5kZW50PVRydWUsCisgICAuLi4gICAgICAgICAgICAgICAgICAgICBleGVjdXRpb25fY29udGV4dD1jb250ZXh0KQorICAgLi4uCisgICA+Pj4gbWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSA9IFsicHl3aW4zMjsgc3lzLnBsYXRmb3JtID09ICd3aW4zMiciLAorICAgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlNwaGlueCJdCisgICAuLi4KKyAgID4+PiBtZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddCisgICBbJ3B5d2luMzInLCAnU3BoaW54J10KKworCitXcml0aW5nIG1ldGFkYXRhCistLS0tLS0tLS0tLS0tLS0tCisKK1dyaXRpbmcgbWV0YWRhdGEgY2FuIGJlIGRvbmUgdXNpbmcgdGhlIGBgd3JpdGVgYCBtZXRob2Q6OgorCisgICA+Pj4gbWV0YWRhdGEud3JpdGUoJy90by9teS9QS0ctSU5GTycpCisKK1RoZSBjbGFzcyB3aWxsIHBpY2sgdGhlIGJlc3QgdmVyc2lvbiBmb3IgdGhlIG1ldGFkYXRhLCBkZXBlbmRpbmcgb24gdGhlIHZhbHVlcworcHJvdmlkZWQuIElmIGFsbCB0aGUgdmFsdWVzIHByb3ZpZGVkIGV4aXN0IGluIGFsbCB2ZXJzaW9ucywgdGhlIGNsYXNzIHdpbGwKK3VzZSA6YXR0cjpgUEtHX0lORk9fUFJFRkVSUkVEX1ZFUlNJT05gLiAgSXQgaXMgc2V0IGJ5IGRlZmF1bHQgdG8gMS4wLCB0aGUgbW9zdAord2lkZXNwcmVhZCB2ZXJzaW9uLgorCisKK0NvbmZsaWN0IGNoZWNraW5nIGFuZCBiZXN0IHZlcnNpb24KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworU29tZSBmaWVsZHMgaW4gOlBFUDpgMzQ1YCBoYXZlIHRvIGNvbXBseSB3aXRoIHRoZSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9uCitkZWZpbmVkIGluIDpQRVA6YDM4NmAuICBXaGVuIHRoZXkgZG9uJ3QgY29tcGx5LCBhIHdhcm5pbmcgaXMgZW1pdHRlZDo6CisKKyAgID4+PiBmcm9tIHBhY2thZ2luZy5tZXRhZGF0YSBpbXBvcnQgTWV0YWRhdGEKKyAgID4+PiBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgID4+PiBtZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddID0gWydGdW5reSAoR3Jvb3ZpZSknXQorICAgIkZ1bmt5IChHcm9vdmllKSIgaXMgbm90IGEgdmFsaWQgcHJlZGljYXRlCisgICA+Pj4gbWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSA9IFsnRnVua3kgKDEuMiknXQorCitTZWUgYWxzbyA6bW9kOmBwYWNrYWdpbmcudmVyc2lvbmAuCisKKworLi4gVE9ETyB0YWxrIGFib3V0IGNoZWNrKCkKKworCis6bW9kOmBwYWNrYWdpbmcubWFya2Vyc2AgLS0tIEVudmlyb25tZW50IG1hcmtlcnMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcubWFya2VycworICAgOnN5bm9wc2lzOiBNaWNyby1sYW5ndWFnZSBmb3IgZW52aXJvbm1lbnQgbWFya2VycworCisKK1RoaXMgaXMgYW4gaW1wbGVtZW50YXRpb24gb2YgZW52aXJvbm1lbnQgbWFya2VycyBgYXMgZGVmaW5lZCBpbiBQRVAgMzQ1Cis8aHR0cDovL3d3dy5weXRob24ub3JnL2Rldi9wZXBzL3BlcC0wMzQ1LyNlbnZpcm9ubWVudC1tYXJrZXJzPmBfLiAgSXQgaXMgdXNlZAorZm9yIHNvbWUgbWV0YWRhdGEgZmllbGRzLgorCisuLiBmdW5jdGlvbjo6IGludGVycHJldChtYXJrZXIsIGV4ZWN1dGlvbl9jb250ZXh0PU5vbmUpCisKKyAgIEludGVycHJldCBhIG1hcmtlciBhbmQgcmV0dXJuIGEgYm9vbGVhbiByZXN1bHQgZGVwZW5kaW5nIG9uIHRoZSBlbnZpcm9ubWVudC4KKyAgIEV4YW1wbGU6CisKKyAgICAgID4+PiBpbnRlcnByZXQoInB5dGhvbl92ZXJzaW9uID4gJzEuMCciKQorICAgICAgVHJ1ZQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnB5cGkuZGlzdC5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucHlwaS5kaXN0LnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYWFhYWI3Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnB5cGkuZGlzdC5yc3QKQEAgLTAsMCArMSwxMTQgQEAKKzptb2Q6YHBhY2thZ2luZy5weXBpLmRpc3RgIC0tLSBDbGFzc2VzIHJlcHJlc2VudGluZyBxdWVyeSByZXN1bHRzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcucHlwaS5kaXN0CisgICA6c3lub3BzaXM6IENsYXNzZXMgcmVwcmVzZW50aW5nIHRoZSByZXN1bHRzIG9mIHF1ZXJpZXMgdG8gaW5kZXhlcy4KKworCitJbmZvcm1hdGlvbiBjb21pbmcgZnJvbSB0aGUgaW5kZXhlcyBpcyBoZWxkIGluIGluc3RhbmNlcyBvZiB0aGUgY2xhc3NlcyBkZWZpbmVkCitpbiB0aGlzIG1vZHVsZS4KKworS2VlcCBpbiBtaW5kIHRoYXQgZWFjaCBwcm9qZWN0IChlZy4gRm9vQmFyKSBjYW4gaGF2ZSBzZXZlcmFsIHJlbGVhc2VzCisoZWcuIDEuMSwgMS4yLCAxLjMpLCBhbmQgZWFjaCBvZiB0aGVzZSByZWxlYXNlcyBjYW4gYmUgcHJvdmlkZWQgaW4gbXVsdGlwbGUKK2Rpc3RyaWJ1dGlvbnMgKGVnLiBhIHNvdXJjZSBkaXN0cmlidXRpb24sIGEgYmluYXJ5IG9uZSwgZXRjKS4KKworCitSZWxlYXNlSW5mbworLS0tLS0tLS0tLS0KKworRWFjaCByZWxlYXNlIGhhcyBhIHByb2plY3QgbmFtZSwgdmVyc2lvbiwgbWV0YWRhdGEsIGFuZCByZWxhdGVkIGRpc3RyaWJ1dGlvbnMuCisKK1RoaXMgaW5mb3JtYXRpb24gaXMgc3RvcmVkIGluIDpjbGFzczpgUmVsZWFzZUluZm9gCitvYmplY3RzLgorCisuLiBjbGFzczo6IFJlbGVhc2VJbmZvCisKKworRGlzdEluZm8KKy0tLS0tLS0tLQorCis6Y2xhc3M6YERpc3RJbmZvYCBpcyBhIHNpbXBsZSBjbGFzcyB0aGF0IGNvbnRhaW5zCitpbmZvcm1hdGlvbiByZWxhdGVkIHRvIGRpc3RyaWJ1dGlvbnM7IG1haW5seSB0aGUgVVJMcyB3aGVyZSBkaXN0cmlidXRpb25zCitjYW4gYmUgZm91bmQuCisKKy4uIGNsYXNzOjogRGlzdEluZm8KKworCitSZWxlYXNlc0xpc3QKKy0tLS0tLS0tLS0tLQorCitUaGUgOm1vZDpgfnBhY2thZ2luZy5weXBpLmRpc3RgIG1vZHVsZSBwcm92aWRlcyBhIGNsYXNzIHdoaWNoIHdvcmtzCit3aXRoIGxpc3RzIG9mIDpjbGFzczpgUmVsZWFzZUluZm9gIGNsYXNzZXM7Cit1c2VkIHRvIGZpbHRlciBhbmQgb3JkZXIgcmVzdWx0cy4KKworLi4gY2xhc3M6OiBSZWxlYXNlc0xpc3QKKworCitFeGFtcGxlIHVzYWdlCistLS0tLS0tLS0tLS0tCisKK0J1aWxkIGEgbGlzdCBvZiByZWxlYXNlcyBhbmQgb3JkZXIgdGhlbQorXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK0Fzc3VtaW5nIHdlIGhhdmUgYSBsaXN0IG9mIHJlbGVhc2VzOjoKKworICAgPj4+IGZyb20gcGFja2FnaW5nLnB5cGkuZGlzdCBpbXBvcnQgUmVsZWFzZXNMaXN0LCBSZWxlYXNlSW5mbworICAgPj4+IGZiMTAgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMCIpCisgICA+Pj4gZmIxMSA9IFJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4xIikKKyAgID4+PiBmYjExYSA9IFJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4xYTEiKQorICAgPj4+IFJlbGVhc2VzTGlzdCgiRm9vQmFyIiwgW2ZiMTEsIGZiMTFhLCBmYjEwXSkKKyAgID4+PiByZWxlYXNlcy5zb3J0X3JlbGVhc2VzKCkKKyAgID4+PiByZWxlYXNlcy5nZXRfdmVyc2lvbnMoKQorICAgWycxLjEnLCAnMS4xYTEnLCAnMS4wJ10KKyAgID4+PiByZWxlYXNlcy5hZGRfcmVsZWFzZSgiMS4yYTEiKQorICAgPj4+IHJlbGVhc2VzLmdldF92ZXJzaW9ucygpCisgICBbJzEuMScsICcxLjFhMScsICcxLjAnLCAnMS4yYTEnXQorICAgPj4+IHJlbGVhc2VzLnNvcnRfcmVsZWFzZXMoKQorICAgWycxLjJhMScsICcxLjEnLCAnMS4xYTEnLCAnMS4wJ10KKyAgID4+PiByZWxlYXNlcy5zb3J0X3JlbGVhc2VzKHByZWZlcl9maW5hbD1UcnVlKQorICAgPj4+IHJlbGVhc2VzLmdldF92ZXJzaW9ucygpCisgICBbJzEuMScsICcxLjAnLCAnMS4yYTEnLCAnMS4xYTEnXQorCisKK0FkZCBkaXN0cmlidXRpb24gcmVsYXRlZCBpbmZvcm1hdGlvbiB0byByZWxlYXNlcworXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK0l0J3MgZWFzeSB0byBhZGQgZGlzdHJpYnV0aW9uIGluZm9ybWF0aW9uIHRvIHJlbGVhc2VzOjoKKworICAgPj4+IGZyb20gcGFja2FnaW5nLnB5cGkuZGlzdCBpbXBvcnQgUmVsZWFzZXNMaXN0LCBSZWxlYXNlSW5mbworICAgPj4+IHIgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMCIpCisgICA+Pj4gci5hZGRfZGlzdHJpYnV0aW9uKCJzZGlzdCIsIHVybD0iaHR0cDovL2V4YW1wbGUub3JnL2Zvb2Jhci0xLjAudGFyLmd6IikKKyAgID4+PiByLmRpc3RzCisgICB7J3NkaXN0JzogRm9vQmFyIDEuMCBzZGlzdH0KKyAgID4+PiByWydzZGlzdCddLnVybAorICAgeyd1cmwnOiAnaHR0cDovL2V4YW1wbGUub3JnL2Zvb2Jhci0xLjAudGFyLmd6JywgJ2hhc2huYW1lJzogTm9uZSwgJ2hhc2h2YWwnOgorICAgTm9uZSwgJ2lzX2V4dGVybmFsJzogVHJ1ZX0KKworCitHZXR0aW5nIGF0dHJpYnV0ZXMgZnJvbSB0aGUgZGlzdCBvYmplY3RzCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1RvIGFic3RyYWN0IHF1ZXJ5aW5nIGluZm9ybWF0aW9uIHJldHVybmVkIGZyb20gdGhlIGluZGV4ZXMsIGF0dHJpYnV0ZXMgYW5kCityZWxlYXNlIGluZm9ybWF0aW9uIGNhbiBiZSByZXRyaWV2ZWQgZGlyZWN0bHkgZnJvbSBkaXN0IG9iamVjdHMuCisKK0ZvciBpbnN0YW5jZSwgaWYgeW91IGhhdmUgYSByZWxlYXNlIGluc3RhbmNlIHRoYXQgZG9lcyBub3QgY29udGFpbiB0aGUgbWV0YWRhdGEKK2F0dHJpYnV0ZSwgaXQgY2FuIGJlIGZldGNoZWQgYnkgdXNpbmcgdGhlICJmZXRjaF9tZXRhZGF0YSIgbWV0aG9kOjoKKworICAgPj4+IHIgPSBSZWxlYXNlKCJGb29CYXIiLCAiMS4xIikKKyAgID4+PiBwcmludCByLm1ldGFkYXRhCisgICBOb25lICMgbWV0YWRhdGEgZmllbGQgaXMgYWN0dWFsbHkgc2V0IHRvICJOb25lIgorICAgPj4+IHIuZmV0Y2hfbWV0YWRhdGEoKQorICAgPE1ldGFkYXRhIGZvciBGb29CYXIgMS4xPgorCisuLiBYWFggYWRkIHByb3BlciByb2xlcyB0byB0aGVzZSBjb25zdHJ1Y3RzCisKKworSXQncyBwb3NzaWJsZSB0byByZXRyaWV2ZSBhIHByb2plY3QncyByZWxlYXNlcyAoYGZldGNoX3JlbGVhc2VzYCksCittZXRhZGF0YSAoYGZldGNoX21ldGFkYXRhYCkgYW5kIGRpc3RyaWJ1dGlvbnMgKGBmZXRjaF9kaXN0cmlidXRpb25zYCkgdXNpbmcKK2Egc2ltaWxhciB3b3JrIGZsb3cuCisKKy4uIFhYWCB3aGF0IGlzIHBvc3NpYmxlPworCitJbnRlcm5hbGx5LCB0aGlzIGlzIHBvc3NpYmxlIGJlY2F1c2Ugd2hpbGUgcmV0cmlldmluZyBpbmZvcm1hdGlvbiBhYm91dAorcHJvamVjdHMsIHJlbGVhc2VzIG9yIGRpc3RyaWJ1dGlvbnMsIGEgcmVmZXJlbmNlIHRvIHRoZSBjbGllbnQgdXNlZCBpcworc3RvcmVkIHdoaWNoIGNhbiBiZSBhY2Nlc3NlZCB1c2luZyB0aGUgb2JqZWN0cyBgX2luZGV4YCBhdHRyaWJ1dGUuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucHlwaS5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucHlwaS5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTQ2MDJjZQotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5weXBpLnJzdApAQCAtMCwwICsxLDc0IEBACis6bW9kOmBwYWNrYWdpbmcucHlwaWAgLS0tIEludGVyZmFjZSB0byBwcm9qZWN0cyBpbmRleGVzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5weXBpCisgICA6c3lub3BzaXM6IExvdy1sZXZlbCBhbmQgaGlnaC1sZXZlbCBBUElzIHRvIHF1ZXJ5IHByb2plY3RzIGluZGV4ZXMuCisKKworUGFja2FnaW5nIHF1ZXJpZXMgUHlQSSB0byBnZXQgaW5mb3JtYXRpb24gYWJvdXQgcHJvamVjdHMgb3IgZG93bmxvYWQgdGhlbS4gIFRoZQorbG93LWxldmVsIGZhY2lsaXRpZXMgdXNlZCBpbnRlcm5hbGx5IGFyZSBhbHNvIHBhcnQgb2YgdGhlIHB1YmxpYyBBUEkgZGVzaWduZWQgdG8KK2JlIHVzZWQgYnkgb3RoZXIgdG9vbHMuCisKK1RoZSA6bW9kOmBwYWNrYWdpbmcucHlwaWAgcGFja2FnZSBwcm92aWRlcyB0aG9zZSBmYWNpbGl0aWVzLCB3aGljaCBjYW4gYmUKK3VzZWQgdG8gYWNjZXNzIGluZm9ybWF0aW9uIGFib3V0IFB5dGhvbiBwcm9qZWN0cyByZWdpc3RlcmVkIGF0IGluZGV4ZXMsIHRoZQorbWFpbiBvbmUgYmVpbmcgUHlQSSwgbG9jYXRlZCBhZCBodHRwOi8vcHlwaS5weXRob24ub3JnLy4KKworVGhlcmUgaXMgdHdvIHdheXMgdG8gcmV0cmlldmUgZGF0YSBmcm9tIHRoZXNlIGluZGV4ZXM6IGEgc2NyZWVuLXNjcmFwaW5nCitpbnRlcmZhY2UgY2FsbGVkIHRoZSAic2ltcGxlIEFQSSIsIGFuZCBYTUwtUlBDLiAgVGhlIGZpcnN0IG9uZSB1c2VzIEhUTUwgcGFnZXMKK2xvY2F0ZWQgdW5kZXIgaHR0cDovL3B5cGkucHl0aG9uLm9yZy9zaW1wbGUvLCB0aGUgc2Vjb25kIG9uZSBtYWtlcyBYTUwtUlBDCityZXF1ZXN0cyB0byBodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGkvLiAgQWxsIGZ1bmN0aW9ucyBhbmQgY2xhc3NlcyBhbHNvIHdvcmsKK3dpdGggb3RoZXIgaW5kZXhlcyBzdWNoIGFzIG1pcnJvcnMsIHdoaWNoIHR5cGljYWxseSBpbXBsZW1lbnQgb25seSB0aGUgc2ltcGxlCitpbnRlcmZhY2UuCisKK1BhY2thZ2luZyBwcm92aWRlcyBhIGNsYXNzIHRoYXQgd3JhcHMgYm90aCBBUElzIHRvIHByb3ZpZGUgZnVsbCBxdWVyeSBhbmQKK2Rvd25sb2FkIGZ1bmN0aW9uYWxpdHk6IDpjbGFzczpgcGFja2FnaW5nLnB5cGkuY2xpZW50LkNsaWVudFdyYXBwZXJgLiAgSWYgeW91Cit3YW50IG1vcmUgY29udHJvbCwgeW91IGNhbiB1c2UgdGhlIHVuZGVybHlpbmcgY2xhc3NlcworOmNsYXNzOmBwYWNrYWdpbmcucHlwaS5zaW1wbGUuQ3Jhd2xlcmAgYW5kIDpjbGFzczpgcGFja2FnaW5nLnB5cGkueG1scnBjLkNsaWVudGAKK3RvIGNvbm5lY3QgdG8gb25lIHNwZWNpZmljIGludGVyZmFjZS4KKworCis6bW9kOmBwYWNrYWdpbmcucHlwaS5jbGllbnRgIC0tLSBIaWdoLWxldmVsIHF1ZXJ5IEFQSQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLnB5cGkuY2xpZW50CisgICA6c3lub3BzaXM6IFdyYXBwZXIgYXJvdW5kIDptb2Q7YHBhY2thZ2luZy5weXBpLnhtbHJwY2AgYW5kCisgICAgICAgICAgICAgIDptb2Q6YHBhY2thZ2luZy5weXBpLnNpbXBsZWAgdG8gcXVlcnkgaW5kZXhlcy4KKworCitUaGlzIG1vZHVsZSBwcm92aWRlcyBhIGhpZ2gtbGV2ZWwgQVBJIHRvIHF1ZXJ5IGluZGV4ZXMgYW5kIHNlYXJjaAorZm9yIHJlbGVhc2VzIGFuZCBkaXN0cmlidXRpb25zLiBUaGUgYWltIG9mIHRoaXMgbW9kdWxlIGlzIHRvIGNob29zZSB0aGUgYmVzdAord2F5IHRvIHF1ZXJ5IHRoZSBBUEkgYXV0b21hdGljYWxseSwgZWl0aGVyIHVzaW5nIFhNTC1SUEMgb3IgdGhlIHNpbXBsZSBpbmRleCwKK3dpdGggYSBwcmVmZXJlbmNlIHRvd2FyZCB0aGUgbGF0dGVyLgorCisuLiBjbGFzczo6IENsaWVudFdyYXBwZXIKKworICAgSW5zdGFuY2VzIG9mIHRoaXMgY2xhc3Mgd2lsbCB1c2UgdGhlIHNpbXBsZSBpbnRlcmZhY2Ugb3IgWE1MLVJQQyByZXF1ZXN0cyB0bworICAgcXVlcnkgaW5kZXhlcyBhbmQgcmV0dXJuIDpjbGFzczpgcGFja2FnaW5nLnB5cGkuZGlzdC5SZWxlYXNlSW5mb2AgYW5kCisgICA6Y2xhc3M6YHBhY2thZ2luZy5weXBpLmRpc3QuUmVsZWFzZXNMaXN0YCBvYmplY3RzLgorCisgICAuLiBtZXRob2Q6OiBmaW5kX3Byb2plY3RzCisKKyAgIC4uIG1ldGhvZDo6IGdldF9yZWxlYXNlCisKKyAgIC4uIG1ldGhvZDo6IGdldF9yZWxlYXNlcworCisKKzptb2Q6YHBhY2thZ2luZy5weXBpLmJhc2VgIC0tLSBCYXNlIGNsYXNzIGZvciBpbmRleCBjcmF3bGVycworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5weXBpLmJhc2UKKyAgIDpzeW5vcHNpczogQmFzZSBjbGFzcyB1c2VkIHRvIGltcGxlbWVudCBjcmF3bGVycy4KKworCisuLiBjbGFzczo6IEJhc2VDbGllbnQocHJlZmVyX2ZpbmFsLCBwcmVmZXJfc291cmNlKQorCisgICBCYXNlIGNsYXNzIGNvbnRhaW5pbmcgY29tbW9uIG1ldGhvZHMgZm9yIHRoZSBpbmRleCBjcmF3bGVycyBvciBjbGllbnRzLiAgT25lCisgICBtZXRob2QgaXMgY3VycmVudGx5IGRlZmluZWQ6CisKKyAgIC4uIG1ldGhvZDo6IGRvd25sb2FkX2Rpc3RyaWJ1dGlvbihyZXF1aXJlbWVudHMsIHRlbXBfcGF0aD1Ob25lLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlZmVyX3NvdXJjZT1Ob25lLCBwcmVmZXJfZmluYWw9Tm9uZSkKKworICAgICAgRG93bmxvYWQgYSBkaXN0cmlidXRpb24gZnJvbSB0aGUgbGFzdCByZWxlYXNlIGFjY29yZGluZyB0byB0aGUKKyAgICAgIHJlcXVpcmVtZW50cy4gIElmICp0ZW1wX3BhdGgqIGlzIHByb3ZpZGVkLCBkb3dubG9hZCB0byB0aGlzIHBhdGgsCisgICAgICBvdGhlcndpc2UsIGNyZWF0ZSBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIHRoZSBkb3dubG9hZC4gIElmIGEgcmVsZWFzZSBpcworICAgICAgZm91bmQsIHRoZSBmdWxsIHBhdGggdG8gdGhlIGRvd25sb2FkZWQgZmlsZSBpcyByZXR1cm5lZC4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5weXBpLnNpbXBsZS5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucHlwaS5zaW1wbGUucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY1NzliMTgKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucHlwaS5zaW1wbGUucnN0CkBAIC0wLDAgKzEsMjE4IEBACis6bW9kOmBwYWNrYWdpbmcucHlwaS5zaW1wbGVgIC0tLSBDcmF3bGVyIHVzaW5nIHRoZSBQeVBJICJzaW1wbGUiIGludGVyZmFjZQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLnB5cGkuc2ltcGxlCisgICA6c3lub3BzaXM6IENyYXdsZXIgdXNpbmcgdGhlIHNjcmVlbi1zY3JhcGluZyAic2ltcGxlIiBpbnRlcmZhY2UgdG8gZmV0Y2ggaW5mbworICAgICAgICAgICAgICBhbmQgZGlzdHJpYnV0aW9ucy4KKworCitUaGUgY2xhc3MgcHJvdmlkZWQgYnkgOm1vZDpgcGFja2FnaW5nLnB5cGkuc2ltcGxlYCBjYW4gYWNjZXNzIHByb2plY3QgaW5kZXhlcworYW5kIHByb3ZpZGUgdXNlZnVsIGluZm9ybWF0aW9uIGFib3V0IGRpc3RyaWJ1dGlvbnMuICBQeVBJLCBvdGhlciBpbmRleGVzIGFuZAorbG9jYWwgaW5kZXhlcyBhcmUgc3VwcG9ydGVkLgorCitZb3Ugc2hvdWxkIHVzZSB0aGlzIG1vZHVsZSB0byBzZWFyY2ggZGlzdHJpYnV0aW9ucyBieSBuYW1lIGFuZCB2ZXJzaW9ucywgcHJvY2VzcworaW5kZXggZXh0ZXJuYWwgcGFnZXMgYW5kIGRvd25sb2FkIGRpc3RyaWJ1dGlvbnMuICBJdCBpcyBub3Qgc3VpdGVkIGZvciB0aGluZ3MKK3RoYXQgd2lsbCBlbmQgdXAgaW4gdG9vIGxvbmcgaW5kZXggcHJvY2Vzc2luZyAobGlrZSAiZmluZGluZyBhbGwgZGlzdHJpYnV0aW9ucword2l0aCBhIHNwZWNpZmljIHZlcnNpb24sIG5vIG1hdHRlciB0aGUgbmFtZSIpOyB1c2UgOm1vZDpgcGFja2FnaW5nLnB5cGkueG1scnBjYAorZm9yIHRoYXQuCisKKworQVBJCistLS0KKworLi4gY2xhc3M6OiBDcmF3bGVyKGluZGV4X3VybD1ERUZBVUxUX1NJTVBMRV9JTkRFWF9VUkwsIFwKKyAgICAgICAgICAgICAgICAgICBwcmVmZXJfZmluYWw9RmFsc2UsIHByZWZlcl9zb3VyY2U9VHJ1ZSwgXAorICAgICAgICAgICAgICAgICAgIGhvc3RzPSgnKicsKSwgZm9sbG93X2V4dGVybmFscz1GYWxzZSwgXAorICAgICAgICAgICAgICAgICAgIG1pcnJvcnNfdXJsPU5vbmUsIG1pcnJvcnM9Tm9uZSwgdGltZW91dD0xNSwgXAorICAgICAgICAgICAgICAgICAgIG1pcnJvcnNfbWF4X3RyaWVzPTApCisKKyAgICAgICppbmRleF91cmwqIGlzIHRoZSBhZGRyZXNzIG9mIHRoZSBpbmRleCB0byB1c2UgZm9yIHJlcXVlc3RzLgorCisgICAgICBUaGUgZmlyc3QgdHdvIHBhcmFtZXRlcnMgY29udHJvbCB0aGUgcXVlcnkgcmVzdWx0cy4gICpwcmVmZXJfZmluYWwqCisgICAgICBpbmRpY2F0ZXMgd2hldGhlciBhIGZpbmFsIHZlcnNpb24gKG5vdCBhbHBoYSwgYmV0YSBvciBjYW5kaWRhdGUpIGlzIHRvIGJlCisgICAgICBwcmVmZXJyZWQgb3ZlciBhIG5ld2VyIGJ1dCBub24tZmluYWwgdmVyc2lvbiAoZm9yIGV4YW1wbGUsIHdoZXRoZXIgdG8gcGljaworICAgICAgdXAgMS4wIG92ZXIgMi4wYTMpLiAgSXQgaXMgdXNlZCBvbmx5IGZvciBxdWVyaWVzIHRoYXQgZG9uJ3QgZ2l2ZSBhIHZlcnNpb24KKyAgICAgIGFyZ3VtZW50LiAgTGlrZXdpc2UsICpwcmVmZXJfc291cmNlKiB0ZWxscyB3aGV0aGVyIHRvIHByZWZlciBhIHNvdXJjZQorICAgICAgZGlzdHJpYnV0aW9uIG92ZXIgYSBiaW5hcnkgb25lLCBpZiBubyBkaXN0cmlidXRpb24gYXJndW1lbnQgd2FzIHByb2RpdmVkLgorCisgICAgICBPdGhlciBwYXJhbWV0ZXJzIGFyZSByZWxhdGVkIHRvIGV4dGVybmFsIGxpbmtzICh0aGF0IGlzIGxpbmtzIHRoYXQgZ28KKyAgICAgIG91dHNpZGUgdGhlIHNpbXBsZSBpbmRleCk6ICpob3N0cyogaXMgYSBsaXN0IG9mIGhvc3RzIGFsbG93ZWQgdG8gYmUKKyAgICAgIHByb2Nlc3NlZCBpZiAqZm9sbG93X2V4dGVybmFscyogaXMgdHJ1ZSAoZGVmYXVsdCBiZWhhdmlvciBpcyB0byBmb2xsb3cgYWxsCisgICAgICBob3N0cyksICpmb2xsb3dfZXh0ZXJuYWxzKiBlbmFibGVzIG9yIGRpc2FibGVzIGZvbGxvd2luZyBleHRlcm5hbCBsaW5rcworICAgICAgKGRlZmF1bHQgaXMgZmFsc2UsIG1lYW5pbmcgZGlzYWJsZWQpLgorCisgICAgICBUaGUgcmVtYWluaW5nIHBhcmFtZXRlcnMgYXJlIHJlbGF0ZWQgdG8gdGhlIG1pcnJvcmluZyBpbmZyYXN0cnVjdHVyZQorICAgICAgZGVmaW5lZCBpbiA6UEVQOmAzODFgLiAgKm1pcnJvcnNfdXJsKiBnaXZlcyBhIFVSTCB0byBsb29rIG9uIGZvciBETlMKKyAgICAgIHJlY29yZHMgZ2l2aW5nIG1pcnJvciBhZHJlc3NlczsgKm1pcnJvcnMqIGlzIGEgbGlzdCBvZiBtaXJyb3IgVVJMcyAoc2VlCisgICAgICB0aGUgUEVQKS4gIElmIGJvdGggKm1pcnJvcnMqIGFuZCAqbWlycm9yc191cmwqIGFyZSBnaXZlbiwgKm1pcnJvcnNfdXJsKgorICAgICAgd2lsbCBvbmx5IGJlIHVzZWQgaWYgKm1pcnJvcnMqIGlzIHNldCB0byBgYE5vbmVgYC4gICp0aW1lb3V0KiBpcyB0aGUgdGltZQorICAgICAgKGluIHNlY29uZHMpIHRvIHdhaXQgYmVmb3JlIGNvbnNpZGVyaW5nIGEgVVJMIGhhcyB0aW1lZCBvdXQ7CisgICAgICAqbWlycm9yc19tYXhfdHJpZXMiKiBpcyB0aGUgbnVtYmVyIG9mIHRpbWVzIHRvIHRyeSByZXF1ZXN0aW5nIGluZm9ybWF0aW9ucworICAgICAgb24gbWlycm9ycyBiZWZvcmUgc3dpdGNoaW5nLgorCisgICAgICBUaGUgZm9sbG93aW5nIG1ldGhvZHMgYXJlIGRlZmluZWQ6CisKKyAgICAgIC4uIG1ldGhvZDo6IGdldF9kaXN0cmlidXRpb25zKHByb2plY3RfbmFtZSwgdmVyc2lvbikKKworICAgICAgICAgUmV0dXJuIHRoZSBkaXN0cmlidXRpb25zIGZvdW5kIGluIHRoZSBpbmRleCBmb3IgdGhlIGdpdmVuIHJlbGVhc2UuCisKKyAgICAgIC4uIG1ldGhvZDo6IGdldF9tZXRhZGF0YShwcm9qZWN0X25hbWUsIHZlcnNpb24pCisKKyAgICAgICAgIFJldHVybiB0aGUgbWV0YWRhdGEgZm91bmQgb24gdGhlIGluZGV4IGZvciB0aGlzIHByb2plY3QgbmFtZSBhbmQKKyAgICAgICAgIHZlcnNpb24uICBDdXJyZW50bHkgZG93bmxvYWRzIGFuZCB1bnBhY2tzIGEgZGlzdHJpYnV0aW9uIHRvIHJlYWQgdGhlCisgICAgICAgICBQS0ctSU5GTyBmaWxlLgorCisgICAgICAuLiBtZXRob2Q6OiBnZXRfcmVsZWFzZShyZXF1aXJlbWVudHMsIHByZWZlcl9maW5hbD1Ob25lKQorCisgICAgICAgICBSZXR1cm4gb25lIHJlbGVhc2UgdGhhdCBmdWxmaWxscyB0aGUgZ2l2ZW4gcmVxdWlyZW1lbnRzLgorCisgICAgICAuLiBtZXRob2Q6OiBnZXRfcmVsZWFzZXMocmVxdWlyZW1lbnRzLCBwcmVmZXJfZmluYWw9Tm9uZSwgZm9yY2VfdXBkYXRlPUZhbHNlKQorCisgICAgICAgICBTZWFyY2ggZm9yIHJlbGVhc2VzIGFuZCByZXR1cm4gYQorICAgICAgICAgOmNsYXNzOmB+cGFja2FnaW5nLnB5cGkuZGlzdC5SZWxlYXNlc0xpc3RgIG9iamVjdCBjb250YWluaW5nIHRoZQorICAgICAgICAgcmVzdWx0cy4KKworICAgICAgLi4gbWV0aG9kOjogc2VhcmNoX3Byb2plY3RzKG5hbWU9Tm9uZSkKKworICAgICAgICAgU2VhcmNoIHRoZSBpbmRleCBmb3IgcHJvamVjdHMgY29udGFpbmluZyB0aGUgZ2l2ZW4gbmFtZSBhbmQgcmV0dXJuIGEKKyAgICAgICAgIGxpc3Qgb2YgbWF0Y2hpbmcgbmFtZXMuCisKKyAgIFNlZSBhbHNvIHRoZSBiYXNlIGNsYXNzIDpjbGFzczpgcGFja2FnaW5nLnB5cGkuYmFzZS5CYXNlQ2xpZW50YCBmb3IgaW5oZXJpdGVkCisgICBtZXRob2RzLgorCisKKy4uIGRhdGE6OiBERUZBVUxUX1NJTVBMRV9JTkRFWF9VUkwKKworICAgVGhlIGFkZHJlc3MgdXNlZCBieSBkZWZhdWx0IGJ5IHRoZSBjcmF3bGVyIGNsYXNzLiAgSXQgaXMgY3VycmVudGx5CisgICBgYCdodHRwOi8vYS5weXBpLnB5dGhvbi5vcmcvc2ltcGxlLydgYCwgdGhlIG1haW4gUHlQSSBpbnN0YWxsYXRpb24uCisKKworCisKK1VzYWdlIEV4YW1wbGVzCistLS0tLS0tLS0tLS0tLS0KKworVG8gaGVscCB5b3UgdW5kZXJzdGFuZCBob3cgdXNpbmcgdGhlIGBDcmF3bGVyYCBjbGFzcywgaGVyZSBhcmUgc29tZSBiYXNpYwordXNhZ2VzLgorCitSZXF1ZXN0IHRoZSBzaW1wbGUgaW5kZXggdG8gZ2V0IGEgc3BlY2lmaWMgZGlzdHJpYnV0aW9uCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1N1cHBvc2luZyB5b3Ugd2FudCB0byBzY2FuIGFuIGluZGV4IHRvIGdldCBhIGxpc3Qgb2YgZGlzdHJpYnV0aW9ucyBmb3IKK3RoZSAiZm9vYmFyIiBwcm9qZWN0LiBZb3UgY2FuIHVzZSB0aGUgImdldF9yZWxlYXNlcyIgbWV0aG9kIGZvciB0aGF0LgorVGhlIGdldF9yZWxlYXNlcyBtZXRob2Qgd2lsbCBicm93c2UgdGhlIHByb2plY3QgcGFnZSwgYW5kIHJldHVybgorOmNsYXNzOmBSZWxlYXNlSW5mb2AgIG9iamVjdHMgZm9yIGVhY2ggZm91bmQgbGluayB0aGF0IHJlbHkgb24gZG93bmxvYWRzLiA6OgorCisgICA+Pj4gZnJvbSBwYWNrYWdpbmcucHlwaS5zaW1wbGUgaW1wb3J0IENyYXdsZXIKKyAgID4+PiBjcmF3bGVyID0gQ3Jhd2xlcigpCisgICA+Pj4gY3Jhd2xlci5nZXRfcmVsZWFzZXMoIkZvb0JhciIpCisgICBbPFJlbGVhc2VJbmZvICJGb29iYXIgMS4xIj4sIDxSZWxlYXNlSW5mbyAiRm9vYmFyIDEuMiI+XQorCisKK05vdGUgdGhhdCB5b3UgYWxzbyBjYW4gcmVxdWVzdCB0aGUgY2xpZW50IGFib3V0IHNwZWNpZmljIHZlcnNpb25zLCB1c2luZyB2ZXJzaW9uCitzcGVjaWZpZXJzIChkZXNjcmliZWQgaW4gYFBFUCAzNDUKKzxodHRwOi8vd3d3LnB5dGhvbi5vcmcvZGV2L3BlcHMvcGVwLTAzNDUvI3ZlcnNpb24tc3BlY2lmaWVycz5gXyk6OgorCisgICA+Pj4gY2xpZW50LmdldF9yZWxlYXNlcygiRm9vQmFyIDwgMS4yIikKKyAgIFs8UmVsZWFzZUluZm8gIkZvb0JhciAxLjEiPiwgXQorCisKK2BnZXRfcmVsZWFzZXNgIHJldHVybnMgYSBsaXN0IG9mIDpjbGFzczpgUmVsZWFzZUluZm9gLCBidXQgeW91IGFsc28gY2FuIGdldCB0aGUKK2Jlc3QgZGlzdHJpYnV0aW9uIHRoYXQgZnVsbGZpbCB5b3VyIHJlcXVpcmVtZW50cywgdXNpbmcgImdldF9yZWxlYXNlIjo6CisKKyAgID4+PiBjbGllbnQuZ2V0X3JlbGVhc2UoIkZvb0JhciA8IDEuMiIpCisgICA8UmVsZWFzZUluZm8gIkZvb0JhciAxLjEiPgorCisKK0Rvd25sb2FkIGRpc3RyaWJ1dGlvbnMKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl4KKworQXMgaXQgY2FuIGdldCB0aGUgdXJscyBvZiBkaXN0cmlidXRpb25zIHByb3ZpZGVkIGJ5IFB5UEksIHRoZSBgQ3Jhd2xlcmAKK2NsaWVudCBhbHNvIGNhbiBkb3dubG9hZCB0aGUgZGlzdHJpYnV0aW9ucyBhbmQgcHV0IGl0IGZvciB5b3UgaW4gYSB0ZW1wb3JhcnkKK2Rlc3RpbmF0aW9uOjoKKworICAgPj4+IGNsaWVudC5kb3dubG9hZCgiZm9vYmFyIikKKyAgIC90bXAvdGVtcF9kaXIvZm9vYmFyLTEuMi50YXIuZ3oKKworCitZb3UgYWxzbyBjYW4gc3BlY2lmeSB0aGUgZGlyZWN0b3J5IHlvdSB3YW50IHRvIGRvd25sb2FkIHRvOjoKKworICAgPj4+IGNsaWVudC5kb3dubG9hZCgiZm9vYmFyIiwgIi9wYXRoL3RvL215L2RpciIpCisgICAvcGF0aC90by9teS9kaXIvZm9vYmFyLTEuMi50YXIuZ3oKKworCitXaGlsZSBkb3dubG9hZGluZywgdGhlIG1kNSBvZiB0aGUgYXJjaGl2ZSB3aWxsIGJlIGNoZWNrZWQsIGlmIG5vdCBtYXRjaGVzLCBpdAord2lsbCB0cnkgYW5vdGhlciB0aW1lLCB0aGVuIGlmIGZhaWxzIGFnYWluLCByYWlzZSBgTUQ1SGFzaERvZXNOb3RNYXRjaEVycm9yYC4KKworSW50ZXJuYWxseSwgdGhhdCdzIG5vdCB0aGUgQ3Jhd2xlciB3aGljaCBkb3dubG9hZCB0aGUgZGlzdHJpYnV0aW9ucywgYnV0IHRoZQorYERpc3RyaWJ1dGlvbkluZm9gIGNsYXNzLiBQbGVhc2UgcmVmZXIgdG8gdGhpcyBkb2N1bWVudGF0aW9uIGZvciBtb3JlIGRldGFpbHMuCisKKworRm9sbG93aW5nIFB5UEkgZXh0ZXJuYWwgbGlua3MKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1RoZSBkZWZhdWx0IGJlaGF2aW9yIGZvciBwYWNrYWdpbmcgaXMgdG8gKm5vdCogZm9sbG93IHRoZSBsaW5rcyBwcm92aWRlZAorYnkgSFRNTCBwYWdlcyBpbiB0aGUgInNpbXBsZSBpbmRleCIsIHRvIGZpbmQgZGlzdHJpYnV0aW9ucyByZWxhdGVkCitkb3dubG9hZHMuCisKK0l0J3MgcG9zc2libGUgdG8gdGVsbCB0aGUgUHlQSUNsaWVudCB0byBmb2xsb3cgZXh0ZXJuYWwgbGlua3MgYnkgc2V0dGluZyB0aGUKK2Bmb2xsb3dfZXh0ZXJuYWxzYCBhdHRyaWJ1dGUsIG9uIGluc3RhbnRpYXRpb24gb3IgYWZ0ZXI6OgorCisgICA+Pj4gY2xpZW50ID0gQ3Jhd2xlcihmb2xsb3dfZXh0ZXJuYWxzPVRydWUpCisKK29yIDo6CisKKyAgID4+PiBjbGllbnQgPSBDcmF3bGVyKCkKKyAgID4+PiBjbGllbnQuZm9sbG93X2V4dGVybmFscyA9IFRydWUKKworCitXb3JraW5nIHdpdGggZXh0ZXJuYWwgaW5kZXhlcywgYW5kIG1pcnJvcnMKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitUaGUgZGVmYXVsdCBgQ3Jhd2xlcmAgYmVoYXZpb3IgaXMgdG8gcmVseSBvbiB0aGUgUHl0aG9uIFBhY2thZ2UgaW5kZXggc3RvcmVkCitvbiBQeVBJIChodHRwOi8vcHlwaS5weXRob24ub3JnL3NpbXBsZSkuCisKK0FzIHlvdSBjYW4gbmVlZCB0byB3b3JrIHdpdGggYSBsb2NhbCBpbmRleCwgb3IgcHJpdmF0ZSBpbmRleGVzLCB5b3UgY2FuIHNwZWNpZnkKK2l0IHVzaW5nIHRoZSBpbmRleF91cmwgcGFyYW1ldGVyOjoKKworICAgPj4+IGNsaWVudCA9IENyYXdsZXIoaW5kZXhfdXJsPSJmaWxlOi8vZmlsZXN5c3RlbS9wYXRoLyIpCisKK29yIDo6CisKKyAgID4+PiBjbGllbnQgPSBDcmF3bGVyKGluZGV4X3VybD0iaHR0cDovL3NvbWUuc3BlY2lmaWMudXJsLyIpCisKKworWW91IGFsc28gY2FuIHNwZWNpZnkgbWlycm9ycyB0byBmYWxsYmFjayBvbiBpbiBjYXNlIHRoZSBmaXJzdCBpbmRleF91cmwgeW91Citwcm92aWRlZCBkb2VzbnQgcmVzcG9uZCwgb3Igbm90IGNvcnJlY3RseS4gVGhlIGRlZmF1bHQgYmVoYXZpb3IgZm9yCitgQ3Jhd2xlcmAgaXMgdG8gdXNlIHRoZSBsaXN0IHByb3ZpZGVkIGJ5IFB5dGhvbi5vcmcgRE5TIHJlY29yZHMsIGFzCitkZXNjcmliZWQgaW4gdGhlIDpQRVA6YDM4MWAgYWJvdXQgbWlycm9yaW5nIGluZnJhc3RydWN0dXJlLgorCitJZiB5b3UgZG9uJ3Qgd2FudCB0byByZWx5IG9uIHRoZXNlLCB5b3UgY291bGQgc3BlY2lmeSB0aGUgbGlzdCBvZiBtaXJyb3JzIHlvdQord2FudCB0byB0cnkgYnkgc3BlY2lmeWluZyB0aGUgYG1pcnJvcnNgIGF0dHJpYnV0ZS4gSXQncyBhIHNpbXBsZSBpdGVyYWJsZTo6CisKKyAgID4+PiBtaXJyb3JzID0gWyJodHRwOi8vZmlyc3QubWlycm9yIiwiaHR0cDovL3NlY29uZC5taXJyb3IiXQorICAgPj4+IGNsaWVudCA9IENyYXdsZXIobWlycm9ycz1taXJyb3JzKQorCisKK1NlYXJjaGluZyBpbiB0aGUgc2ltcGxlIGluZGV4CiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitJdCdzIHBvc3NpYmxlIHRvIHNlYXJjaCBmb3IgcHJvamVjdHMgd2l0aCBzcGVjaWZpYyBuYW1lcyBpbiB0aGUgcGFja2FnZSBpbmRleC4KK0Fzc3VtaW5nIHlvdSB3YW50IHRvIGZpbmQgYWxsIHByb2plY3RzIGNvbnRhaW5pbmcgdGhlICJkaXN0dXRpbHMiIGtleXdvcmQ6OgorCisgICA+Pj4gYy5zZWFyY2hfcHJvamVjdHMoImRpc3R1dGlscyIpCisgICBbPFByb2plY3QgImNvbGxlY3RpdmUucmVjaXBlLmRpc3R1dGlscyI+LCA8UHJvamVjdCAiRGlzdHV0aWxzIj4sIDxQcm9qZWN0CisgICAiUGFja2FnaW5nIj4sIDxQcm9qZWN0ICJkaXN0dXRpbHNjcm9zcyI+LCA8UHJvamVjdCAibHBkaXN0dXRpbHMiPiwgPFByb2plY3QKKyAgICJ0YXJhcy5yZWNpcGUuZGlzdHV0aWxzIj4sIDxQcm9qZWN0ICJ6ZXJva3Nwb3QucmVjaXBlLmRpc3R1dGlscyI+XQorCisKK1lvdSBjYW4gYWxzbyBzZWFyY2ggdGhlIHByb2plY3RzIHN0YXJ0aW5nIHdpdGggYSBzcGVjaWZpYyB0ZXh0LCBvciBlbmRpbmcgd2l0aAordGhhdCB0ZXh0LCB1c2luZyBhIHdpbGRjYXJkOjoKKworICAgPj4+IGMuc2VhcmNoX3Byb2plY3RzKCJkaXN0dXRpbHMqIikKKyAgIFs8UHJvamVjdCAiRGlzdHV0aWxzIj4sIDxQcm9qZWN0ICJQYWNrYWdpbmciPiwgPFByb2plY3QgImRpc3R1dGlsc2Nyb3NzIj5dCisKKyAgID4+PiBjLnNlYXJjaF9wcm9qZWN0cygiKmRpc3R1dGlscyIpCisgICBbPFByb2plY3QgImNvbGxlY3RpdmUucmVjaXBlLmRpc3R1dGlscyI+LCA8UHJvamVjdCAiRGlzdHV0aWxzIj4sIDxQcm9qZWN0CisgICAibHBkaXN0dXRpbHMiPiwgPFByb2plY3QgInRhcmFzLnJlY2lwZS5kaXN0dXRpbHMiPiwgPFByb2plY3QKKyAgICJ6ZXJva3Nwb3QucmVjaXBlLmRpc3R1dGlscyI+XQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnB5cGkueG1scnBjLnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5weXBpLnhtbHJwYy5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTI0MmU0YwotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5weXBpLnhtbHJwYy5yc3QKQEAgLTAsMCArMSwxNDMgQEAKKzptb2Q6YHBhY2thZ2luZy5weXBpLnhtbHJwY2AgLS0tIENyYXdsZXIgdXNpbmcgdGhlIFB5UEkgWE1MLVJQQyBpbnRlcmZhY2UKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLnB5cGkueG1scnBjCisgICA6c3lub3BzaXM6IENsaWVudCB1c2luZyBYTUwtUlBDIHJlcXVlc3RzIHRvIGZldGNoIGluZm8gYW5kIGRpc3RyaWJ1dGlvbnMuCisKKworSW5kZXhlcyBjYW4gYmUgcXVlcmllZCB1c2luZyBYTUwtUlBDIGNhbGxzLCBhbmQgUGFja2FnaW5nIHByb3ZpZGVzIGEgc2ltcGxlCit3YXkgdG8gaW50ZXJmYWNlIHdpdGggWE1MLVJQQy4KKworWW91IHNob3VsZCAqKnVzZSoqIFhNTC1SUEMgd2hlbjoKKworKiBTZWFyY2hpbmcgdGhlIGluZGV4IGZvciBwcm9qZWN0cyAqKm9uIG90aGVyIGZpZWxkcyB0aGFuIHByb2plY3QKKyAgbmFtZXMqKi4gRm9yIGluc3RhbmNlLCB5b3UgY2FuIHNlYXJjaCBmb3IgcHJvamVjdHMgYmFzZWQgb24gdGhlCisgIGF1dGhvcl9lbWFpbCBmaWVsZC4KKyogU2VhcmNoaW5nIGFsbCB0aGUgdmVyc2lvbnMgdGhhdCBoYXZlIGV4aXN0ZWQgZm9yIGEgcHJvamVjdC4KKyogeW91IHdhbnQgdG8gcmV0cmlldmUgTUVUQURBVEFzIGluZm9ybWF0aW9uIGZyb20gcmVsZWFzZXMgb3IKKyAgZGlzdHJpYnV0aW9ucy4KKworCitZb3Ugc2hvdWxkICoqYXZvaWQgdXNpbmcqKiBYTUwtUlBDIG1ldGhvZCBjYWxscyB3aGVuOgorCisqIFJldHJpZXZpbmcgdGhlIGxhc3QgdmVyc2lvbiBvZiBhIHByb2plY3QKKyogR2V0dGluZyB0aGUgcHJvamVjdHMgd2l0aCBhIHNwZWNpZmljIG5hbWUgYW5kIHZlcnNpb24uCisqIFRoZSBzaW1wbGUgaW5kZXggY2FuIG1hdGNoIHlvdXIgbmVlZHMKKworCitXaGVuIGRlYWxpbmcgd2l0aCBpbmRleGVzLCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgaW5kZXggcXVlcmllcyB3aWxsIGFsd2F5cworcmV0dXJuIHlvdSA6Y2xhc3M6YHBhY2thZ2luZy5weXBpLmRpc3QuUmVsZWFzZUluZm9gIGFuZAorOmNsYXNzOmBwYWNrYWdpbmcucHlwaS5kaXN0LlJlbGVhc2VzTGlzdGAgb2JqZWN0cy4KKworU29tZSBtZXRob2RzIGhlcmUgc2hhcmUgY29tbW9uIEFQSXMgd2l0aCB0aGUgb25lIHlvdSBjYW4gZmluZCBvbgorOmNsYXNzOmBwYWNrYWdpbmcucHlwaS5zaW1wbGVgLCBpbnRlcm5hbGx5LCA6Y2xhc3M6YHBhY2thZ2luZy5weXBpLmNsaWVudGAKK2lzIGluaGVyaXRlZCBieSA6Y2xhc3M6YENsaWVudGAKKworCitBUEkKKy0tLQorCisuLiBjbGFzczo6IENsaWVudAorCisKK1VzYWdlIGV4YW1wbGVzCistLS0tLS0tLS0tLS0tLQorCitVc2UgY2FzZSBkZXNjcmliZWQgaGVyZSBhcmUgdXNlIGNhc2UgdGhhdCBhcmUgbm90IGNvbW1vbiB0byB0aGUgb3RoZXIgY2xpZW50cy4KK0lmIHlvdSB3YW50IHRvIHNlZSBhbGwgdGhlIG1ldGhvZHMsIHBsZWFzZSByZWZlciB0byBBUEkgb3IgdG8gdXNhZ2UgZXhhbXBsZXMKK2Rlc2NyaWJlZCBpbiA6Y2xhc3M6YHBhY2thZ2luZy5weXBpLmNsaWVudC5DbGllbnRgCisKKworRmluZGluZyByZWxlYXNlcworXl5eXl5eXl5eXl5eXl5eXgorCitJdCdzIGEgY29tbW9uIHVzZSBjYXNlIHRvIHNlYXJjaCBmb3IgInRoaW5ncyIgd2l0aGluIHRoZSBpbmRleC4gV2UgY2FuCitiYXNpY2FsbHkgc2VhcmNoIGZvciBwcm9qZWN0cyBieSB0aGVpciBuYW1lLCB3aGljaCBpcyB0aGUgbW9zdCB1c2VkIHdheSBmb3IKK3VzZXJzIChlZy4gImdpdmUgbWUgdGhlIGxhc3QgdmVyc2lvbiBvZiB0aGUgRm9vQmFyIHByb2plY3QiKS4KKworVGhpcyBjYW4gYmUgYWNjb21wbGlzaGVkIHVzaW5nIHRoZSBmb2xsb3dpbmcgc3ludGF4OjoKKworICAgPj4+IGNsaWVudCA9IHhtbHJwYy5DbGllbnQoKQorICAgPj4+IGNsaWVudC5nZXRfcmVsZWFzZSgiRm9vYmFyICg8PSAxLjMpKQorICAgPEZvb0JhciAxLjIuMT4KKyAgID4+PiBjbGllbnQuZ2V0X3JlbGVhc2VzKCJGb29CYXIgKDw9IDEuMykiKQorICAgW0Zvb0JhciAxLjEsIEZvb0JhciAxLjEuMSwgRm9vQmFyIDEuMiwgRm9vQmFyIDEuMi4xXQorCisKK0FuZCB3ZSBhbHNvIGNhbiBmaW5kIGZvciBzcGVjaWZpYyBmaWVsZHM6OgorCisgICA+Pj4gY2xpZW50LnNlYXJjaF9wcm9qZWN0cyhmaWVsZD12YWx1ZSkKKworCitZb3UgY291bGQgc3BlY2lmeSB0aGUgb3BlcmF0b3IgdG8gdXNlLCBkZWZhdWx0IGlzICJvciI6OgorCisgICA+Pj4gY2xpZW50LnNlYXJjaF9wcm9qZWN0cyhmaWVsZD12YWx1ZSwgb3BlcmF0b3I9ImFuZCIpCisKKworVGhlIHNwZWNpZmljIGZpZWxkcyB5b3UgY2FuIHNlYXJjaCBhcmU6CisKKyogbmFtZQorKiB2ZXJzaW9uCisqIGF1dGhvcgorKiBhdXRob3JfZW1haWwKKyogbWFpbnRhaW5lcgorKiBtYWludGFpbmVyX2VtYWlsCisqIGhvbWVfcGFnZQorKiBsaWNlbnNlCisqIHN1bW1hcnkKKyogZGVzY3JpcHRpb24KKyoga2V5d29yZHMKKyogcGxhdGZvcm0KKyogZG93bmxvYWRfdXJsCisKKworR2V0dGluZyBtZXRhZGF0YSBpbmZvcm1hdGlvbgorXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitYTUwtUlBDIGlzIGEgcHJlZmVycmVkIHdheSB0byByZXRyaWV2ZSBtZXRhZGF0YSBpbmZvcm1hdGlvbiBmcm9tIGluZGV4ZXMuCitJdCdzIHJlYWxseSBzaW1wbGUgdG8gZG8gc286OgorCisgICA+Pj4gY2xpZW50ID0geG1scnBjLkNsaWVudCgpCisgICA+Pj4gY2xpZW50LmdldF9tZXRhZGF0YSgiRm9vQmFyIiwgIjEuMSIpCisgICA8UmVsZWFzZUluZm8gRm9vQmFyIDEuMT4KKworCitBc3N1bWluZyB3ZSBhbHJlYWR5IGhhdmUgYSA6Y2xhc3M6YHBhY2thZ2luZy5weXBpLlJlbGVhc2VJbmZvYCBvYmplY3QgZGVmaW5lZCwKK2l0J3MgcG9zc2libGUgdG8gcGFzcyBpdCB0byB0aGUgeG1scnBjIGNsaWVudCB0byByZXRyaWV2ZSBhbmQgY29tcGxldGUgaXRzCittZXRhZGF0YTo6CisKKyAgID4+PiBmb29iYXIxMSA9IFJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4xIikKKyAgID4+PiBjbGllbnQgPSB4bWxycGMuQ2xpZW50KCkKKyAgID4+PiByZXR1cm5lZF9yZWxlYXNlID0gY2xpZW50LmdldF9tZXRhZGF0YShyZWxlYXNlPWZvb2JhcjExKQorICAgPj4+IHJldHVybmVkX3JlbGVhc2UKKyAgIDxSZWxlYXNlSW5mbyBGb29CYXIgMS4xPgorCisKK0dldCBhbGwgdGhlIHJlbGVhc2VzIG9mIGEgcHJvamVjdAorXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1RvIHJldHJpZXZlIGFsbCB0aGUgcmVsZWFzZXMgZm9yIGEgcHJvamVjdCwgeW91IGNhbiBidWlsZCB0aGVtIHVzaW5nCitgZ2V0X3JlbGVhc2VzYDo6CisKKyAgID4+PiBjbGllbnQgPSB4bWxycGMuQ2xpZW50KCkKKyAgID4+PiBjbGllbnQuZ2V0X3JlbGVhc2VzKCJGb29CYXIiKQorICAgWzxSZWxlYXNlSW5mbyBGb29CYXIgMC45PiwgPFJlbGVhc2VJbmZvIEZvb0JhciAxLjA+LCA8UmVsZWFzZUluZm8gMS4xPl0KKworCitHZXQgaW5mb3JtYXRpb24gYWJvdXQgZGlzdHJpYnV0aW9ucworXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK0luZGV4ZXMgaGF2ZSBpbmZvcm1hdGlvbiBhYm91dCBwcm9qZWN0cywgcmVsZWFzZXMgKiphbmQqKiBkaXN0cmlidXRpb25zLgorSWYgeW91J3JlIG5vdCBmYW1pbGlhciB3aXRoIHRob3NlLCBwbGVhc2UgcmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gb2YKKzptb2Q6YHBhY2thZ2luZy5weXBpLmRpc3RgLgorCitJdCdzIHBvc3NpYmxlIHRvIHJldHJpZXZlIGluZm9ybWF0aW9uIGFib3V0IGRpc3RyaWJ1dGlvbnMsIGUuZyAid2hhdCBhcmUgdGhlCitleGlzdGluZyBkaXN0cmlidXRpb25zIGZvciB0aGlzIHJlbGVhc2UgPyBIb3cgdG8gcmV0cmlldmUgdGhlbSA/Ijo6CisKKyAgID4+PiBjbGllbnQgPSB4bWxycGMuQ2xpZW50KCkKKyAgID4+PiByZWxlYXNlID0gY2xpZW50LmdldF9kaXN0cmlidXRpb25zKCJGb29CYXIiLCAiMS4xIikKKyAgID4+PiByZWxlYXNlLmRpc3RzCisgICB7J3NkaXN0JzogPEZvb0JhciAxLjEgc2Rpc3Q+LCAnYmRpc3QnOiA8Rm9vQmFyIDEuMSBiZGlzdD59CisKK0FzIHlvdSBzZWUsIHRoaXMgZG9lcyBub3QgcmV0dXJuIGEgbGlzdCBvZiBkaXN0cmlidXRpb25zLCBidXQgYSByZWxlYXNlLAorYmVjYXVzZSBhIHJlbGVhc2UgY2FuIGJlIHVzZWQgbGlrZSBhIGxpc3Qgb2YgZGlzdHJpYnV0aW9ucy4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM2YmZmNDcKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucnN0CkBAIC0wLDAgKzEsNzUgQEAKKzptb2Q6YHBhY2thZ2luZ2AgLS0tIFBhY2thZ2luZyBzdXBwb3J0Cis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcKKyAgIDpzeW5vcHNpczogUGFja2FnaW5nIHN5c3RlbSBhbmQgYnVpbGRpbmcgYmxvY2tzIGZvciBvdGhlciBwYWNrYWdpbmcgc3lzdGVtcy4KKy4uIHNlY3Rpb25hdXRob3I6OiBGcmVkIEwuIERyYWtlLCBKci4gPGZkcmFrZUBhY20ub3JnPiwgZGlzdHV0aWxzIGFuZCBwYWNrYWdpbmcKKyAgICAgICAgICAgICAgICAgICBjb250cmlidXRvcnMKKworCitUaGUgOm1vZDpgcGFja2FnaW5nYCBwYWNrYWdlIHByb3ZpZGVzIHN1cHBvcnQgZm9yIGJ1aWxkaW5nLCBwYWNrYWdpbmcsCitkaXN0cmlidXRpbmcgYW5kIGluc3RhbGxpbmcgYWRkaXRpb25hbCBwcm9qZWN0cyBpbnRvIGEgUHl0aG9uIGluc3RhbGxhdGlvbi4KK1Byb2plY3RzIG1heSBpbmNsdWRlIFB5dGhvbiBtb2R1bGVzLCBleHRlbnNpb24gbW9kdWxlcywgcGFja2FnZXMgYW5kIHNjcmlwdHMuCis6bW9kOmBwYWNrYWdpbmdgIGFsc28gcHJvdmlkZXMgYnVpbGRpbmcgYmxvY2tzIGZvciBvdGhlciBwYWNrYWdpbmcgc3lzdGVtcwordGhhdCBhcmUgbm90IHRpZWQgdG8gdGhlIGNvbW1hbmQgc3lzdGVtLgorCitUaGlzIG1hbnVhbCBpcyB0aGUgcmVmZXJlbmNlIGRvY3VtZW50YXRpb24gZm9yIHRob3NlIHN0YW5kYWxvbmUgYnVpbGRpbmcKK2Jsb2NrcyBhbmQgZm9yIGV4dGVuZGluZyBQYWNrYWdpbmcuIElmIHlvdSdyZSBsb29raW5nIGZvciB0aGUgdXNlci1jZW50cmljCitndWlkZXMgdG8gaW5zdGFsbCBhIHByb2plY3Qgb3IgcGFja2FnZSB5b3VyIG93biBjb2RlLCBoZWFkIHRvIGBTZWUgYWxzb2BfXy4KKworCitCdWlsZGluZyBibG9ja3MKKy0tLS0tLS0tLS0tLS0tLQorCisuLiB0b2N0cmVlOjoKKyAgIDptYXhkZXB0aDogMgorCisgICBwYWNrYWdpbmctbWlzYworICAgcGFja2FnaW5nLnZlcnNpb24KKyAgIHBhY2thZ2luZy5tZXRhZGF0YQorICAgcGFja2FnaW5nLmRhdGFiYXNlCisgICBwYWNrYWdpbmcuZGVwZ3JhcGgKKyAgIHBhY2thZ2luZy5weXBpCisgICBwYWNrYWdpbmcucHlwaS5kaXN0CisgICBwYWNrYWdpbmcucHlwaS5zaW1wbGUKKyAgIHBhY2thZ2luZy5weXBpLnhtbHJwYworICAgcGFja2FnaW5nLmluc3RhbGwKKworCitUaGUgY29tbWFuZCBtYWNoaW5lcnkKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiB0b2N0cmVlOjoKKyAgIDptYXhkZXB0aDogMgorCisgICBwYWNrYWdpbmcuZGlzdAorICAgcGFja2FnaW5nLmNvbW1hbmQKKyAgIHBhY2thZ2luZy5jb21waWxlcgorICAgcGFja2FnaW5nLmZhbmN5X2dldG9wdAorCisKK090aGVyIHV0aWxpdGllcworLS0tLS0tLS0tLS0tLS0tLQorCisuLiB0b2N0cmVlOjoKKyAgIDptYXhkZXB0aDogMgorCisgICBwYWNrYWdpbmcudXRpbAorICAgcGFja2FnaW5nLnRlc3RzLnB5cGlfc2VydmVyCisKKy4uIFhYWCBtaXNzaW5nOiBjb21wYXQgY29uZmlnIGNyZWF0ZSAoZGlyX3V0aWwpIHJ1biBweXBpLntiYXNlLG1pcnJvcnN9CisKKworLi4gX186CisKKy4uIHNlZWFsc286OgorCisgICA6cmVmOmBwYWNrYWdpbmctaW5kZXhgCisgICAgICBUaGUgbWFudWFsIGZvciBkZXZlbG9wZXJzIG9mIFB5dGhvbiBwcm9qZWN0cyB3aG8gd2FudCB0byBwYWNrYWdlIGFuZAorICAgICAgZGlzdHJpYnV0ZSB0aGVtLiBUaGlzIGRlc2NyaWJlcyBob3cgdG8gdXNlIDptb2Q6YHBhY2thZ2luZ2AgdG8gbWFrZQorICAgICAgcHJvamVjdHMgZWFzaWx5IGZvdW5kIGFuZCBhZGRlZCB0byBhbiBleGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLgorCisgICA6cmVmOmBwYWNrYWdpbmctaW5zdGFsbC1pbmRleGAKKyAgICAgIEEgdXNlci1jZW50ZXJlZCBtYW51YWwgd2hpY2ggaW5jbHVkZXMgaW5mb3JtYXRpb24gb24gYWRkaW5nIHByb2plY3RzCisgICAgICBpbnRvIGFuIGV4aXN0aW5nIFB5dGhvbiBpbnN0YWxsYXRpb24uICBZb3UgZG8gbm90IG5lZWQgdG8gYmUgYSBQeXRob24KKyAgICAgIHByb2dyYW1tZXIgdG8gcmVhZCB0aGlzIG1hbnVhbC4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlci5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcudGVzdHMucHlwaV9zZXJ2ZXIucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYzYjc3MjAKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcudGVzdHMucHlwaV9zZXJ2ZXIucnN0CkBAIC0wLDAgKzEsMTA1IEBACis6bW9kOmBwYWNrYWdpbmcudGVzdHMucHlwaV9zZXJ2ZXJgIC0tLSBQeVBJIG1vY2sgc2VydmVyCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlcgorICAgOnN5bm9wc2lzOiBNb2NrIHNlcnZlciB1c2VkIHRvIHRlc3QgUHlQSS1yZWxhdGVkIG1vZHVsZXMgYW5kIGNvbW1hbmRzLgorCisKK1doZW4geW91IGFyZSB0ZXN0aW5nIGNvZGUgdGhhdCB3b3JrcyB3aXRoIFBhY2thZ2luZywgeW91IG1pZ2h0IGZpbmQgdGhlc2UgdG9vbHMKK3VzZWZ1bC4KKworCitUaGUgbW9jayBzZXJ2ZXIKKy0tLS0tLS0tLS0tLS0tLQorCisuLiBjbGFzczo6IFB5UElTZXJ2ZXIKKworICAgUHlQSVNlcnZlciBpcyBhIGNsYXNzIHRoYXQgaW1wbGVtZW50cyBhbiBIVFRQIHNlcnZlciBydW5uaW5nIGluIGEgc2VwYXJhdGUKKyAgIHRocmVhZC4gQWxsIGl0IGRvZXMgaXMgcmVjb3JkIHRoZSByZXF1ZXN0cyBmb3IgZnVydGhlciBpbnNwZWN0aW9uLiBUaGUgcmVjb3JkZWQKKyAgIGRhdGEgaXMgYXZhaWxhYmxlIHVuZGVyIGBgcmVxdWVzdHNgYCBhdHRyaWJ1dGUuIFRoZSBkZWZhdWx0CisgICBIVFRQIHJlc3BvbnNlIGNhbiBiZSBvdmVycmlkZGVuIHdpdGggdGhlIGBgZGVmYXVsdF9yZXNwb25zZV9zdGF0dXNgYCwKKyAgIGBgZGVmYXVsdF9yZXNwb25zZV9oZWFkZXJzYGAgYW5kIGBgZGVmYXVsdF9yZXNwb25zZV9kYXRhYGAgYXR0cmlidXRlcy4KKworICAgQnkgZGVmYXVsdCwgd2hlbiBhY2Nlc3NpbmcgdGhlIHNlcnZlciB3aXRoIHVybHMgYmVnaW5uaW5nIHdpdGggYC9zaW1wbGUvYCwKKyAgIHRoZSBzZXJ2ZXIgYWxzbyByZWNvcmQgeW91ciByZXF1ZXN0cywgYnV0IHdpbGwgbG9vayBmb3IgZmlsZXMgdW5kZXIKKyAgIHRoZSBgL3Rlc3RzL3B5cGlzZXJ2ZXIvc2ltcGxlL2AgcGF0aC4KKworICAgWW91IGNhbiB0ZWxsIHRoZSBzZXZlciB0byBzZXJ2ZSBzdGF0aWMgZmlsZXMgZm9yIG90aGVyIHBhdGhzLiBUaGlzIGNvdWxkIGJlCisgICBhY2NvbXBsaXNoZWQgYnkgdXNpbmcgdGhlIGBzdGF0aWNfdXJpX3BhdGhzYCBwYXJhbWV0ZXIsIGFzIGJlbG93OjoKKworICAgICAgc2VydmVyID0gUHlQSVNlcnZlcihzdGF0aWNfdXJpX3BhdGhzPVsiZmlyc3RfcGF0aCIsICJzZWNvbmRfcGF0aCJdKQorCisKKyAgIFlvdSBuZWVkIHRvIGNyZWF0ZSB0aGUgY29udGVudCB0aGF0IHdpbGwgYmUgc2VydmVkIHVuZGVyIHRoZQorICAgYC90ZXN0cy9weXBpc2VydmVyL2RlZmF1bHRgIHBhdGguIElmIHlvdSB3YW50IHRvIHNlcnZlIGNvbnRlbnQgZnJvbSBhbm90aGVyCisgICBwbGFjZSwgeW91IGFsc28gY2FuIHNwZWNpZnkgYW5vdGhlciBmaWxlc3lzdGVtIHBhdGggKHdoaWNoIG5lZWRzIHRvIGJlIHVuZGVyCisgICBgdGVzdHMvcHlwaXNlcnZlci9gLiBUaGlzIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgc2VydmVyLCBhbmQKKyAgIGl0IHdpbGwgbm90IHNlcnZlIGNvbnRlbnQgZnJvbSB0aGUgYGRlZmF1bHRgIGRpciA6OgorCisgICAgICBzZXJ2ZXIgPSBQeVBJU2VydmVyKHN0YXRpY19maWxlc3lzdGVtX3BhdGhzPVsicGF0aC90by95b3VyL2RpciJdKQorCisKKyAgIElmIHlvdSBqdXN0IG5lZWQgdG8gYWRkIHNvbWUgcGF0aHMgdG8gdGhlIGV4aXN0aW5nIG9uZXMsIHlvdSBjYW4gZG8gYXMgc2hvd24sCisgICBrZWVwaW5nIGluIG1pbmQgdGhhdCB0aGUgc2VydmVyIHdpbGwgYWx3YXlzIHRyeSB0byBsb2FkIHBhdGhzIGluIHJldmVyc2Ugb3JkZXIKKyAgIChlLmcgaGVyZSwgdHJ5ICJhbm90aGVyL3N1cGVyL3BhdGgiIHRoZW4gdGhlIGRlZmF1bHQgb25lKSA6OgorCisgICAgICBzZXJ2ZXIgPSBQeVBJU2VydmVyKHRlc3Rfc3RhdGljX3BhdGg9ImFub3RoZXIvc3VwZXIvcGF0aCIpCisgICAgICBzZXJ2ZXIgPSBQeVBJU2VydmVyKCJhbm90aGVyL3N1cGVyL3BhdGgiKQorICAgICAgIyBvcgorICAgICAgc2VydmVyLnN0YXRpY19maWxlc3lzdGVtX3BhdGhzLmFwcGVuZCgiYW5vdGhlci9zdXBlci9wYXRoIikKKworCisgICBBcyBhIHJlc3VsdCBvZiB3aGF0LCBpbiB5b3VyIHRlc3RzLCB3aGlsZSB5b3UgbmVlZCB0byB1c2UgdGhlIFB5UElTZXJ2ZXIsIGluCisgICBvcmRlciB0byBpc29sYXRlcyB0aGUgdGVzdCBjYXNlcywgdGhlIGJlc3QgcHJhY3RpY2UgaXMgdG8gcGxhY2UgdGhlIGNvbW1vbiBmaWxlcworICAgaW4gdGhlIGBkZWZhdWx0YCBmb2xkZXIsIGFuZCB0byBjcmVhdGUgYSBkaXJlY3RvcnkgZm9yIGVhY2ggc3BlY2lmaWMgdGVzdCBjYXNlOjoKKworICAgICAgc2VydmVyID0gUHlQSVNlcnZlcihzdGF0aWNfZmlsZXN5c3RlbV9wYXRocyA9IFsiZGVmYXVsdCIsICJ0ZXN0X3B5cGlfc2VydmVyIl0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY191cmlfcGF0aHM9WyJzaW1wbGUiLCAiZXh0ZXJuYWwiXSkKKworCitCYXNlIGNsYXNzIGFuZCBkZWNvcmF0b3IgZm9yIHRlc3RzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIGNsYXNzOjogUHlQSVNlcnZlclRlc3RDYXNlCisKKyAgIGBgUHlQSVNlcnZlclRlc3RDYXNlYGAgaXMgYSB0ZXN0IGNhc2UgY2xhc3Mgd2l0aCBzZXRVcCBhbmQgdGVhckRvd24gbWV0aG9kcyB0aGF0CisgICB0YWtlIGNhcmUgb2YgYSBzaW5nbGUgUHlQSVNlcnZlciBpbnN0YW5jZSBhdHRhY2hlZCBhcyBhIGBgcHlwaWBgIGF0dHJpYnV0ZSBvbgorICAgdGhlIHRlc3QgY2xhc3MuIFVzZSBpdCBhcyBvbmUgb2YgdGhlIGJhc2UgY2xhc3NlcyBpbiB5b3VyIHRlc3QgY2FzZTo6CisKKworICAgICAgY2xhc3MgVXBsb2FkVGVzdENhc2UoUHlQSVNlcnZlclRlc3RDYXNlKToKKworICAgICAgICAgIGRlZiB0ZXN0X3NvbWV0aGluZyhzZWxmKToKKyAgICAgICAgICAgICAgY21kID0gc2VsZi5wcmVwYXJlX2NvbW1hbmQoKQorICAgICAgICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgICAgICAgIGNtZC5yZXBvc2l0b3J5ID0gc2VsZi5weXBpLmZ1bGxfYWRkcmVzcworICAgICAgICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAgICAgICBlbnZpcm9uLCByZXF1ZXN0X2RhdGEgPSBzZWxmLnB5cGkucmVxdWVzdHNbLTFdCisgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVxdWVzdF9kYXRhLCBFWFBFQ1RFRF9SRVFVRVNUX0RBVEEpCisKKworLi4gZGVjb3JhdG9yOjogdXNlX3B5cGlfc2VydmVyCisKKyAgIFlvdSBhbHNvIGNhbiB1c2UgYSBkZWNvcmF0b3IgZm9yIHlvdXIgdGVzdHMsIGlmIHlvdSBkbyBub3QgbmVlZCB0aGUgc2FtZSBzZXJ2ZXIKKyAgIGluc3RhbmNlIGFsb25nIGFsbCB5b3UgdGVzdCBjYXNlLiBTbywgeW91IGNhbiBzcGVjaWZ5LCBmb3IgZWFjaCB0ZXN0IG1ldGhvZCwKKyAgIHNvbWUgaW5pdGlhbGlzYXRpb24gcGFyYW1ldGVycyBmb3IgdGhlIHNlcnZlci4KKworICAgRm9yIHRoaXMsIHlvdSBuZWVkIHRvIGFkZCBhIGBzZXJ2ZXJgIHBhcmFtZXRlciB0byB5b3VyIG1ldGhvZCwgbGlrZSB0aGlzOjoKKworICAgICAgY2xhc3MgU2FtcGxlVGVzdENhc2UoVGVzdENhc2UpOgorCisgICAgICAgICAgQHVzZV9weXBpX3NlcnZlcigpCisgICAgICAgICAgZGVmIHRlc3Rfc29tZXRoaW5nKHNlbGYsIHNlcnZlcik6CisgICAgICAgICAgICAgIC4uLgorCisKKyAgIFRoZSBkZWNvcmF0b3Igd2lsbCBpbnN0YW50aWF0ZSB0aGUgc2VydmVyIGZvciB5b3UsIGFuZCBydW4gYW5kIHN0b3AgaXQganVzdAorICAgYmVmb3JlIGFuZCBhZnRlciB5b3VyIG1ldGhvZCBjYWxsLiBZb3UgYWxzbyBjYW4gcGFzcyB0aGUgc2VydmVyIGluaXRpYWxpemVyLAorICAganVzdCBsaWtlIHRoaXM6OgorCisgICAgICBjbGFzcyBTYW1wbGVUZXN0Q2FzZShUZXN0Q2FzZSk6CisKKyAgICAgICAgICBAdXNlX3B5cGlfc2VydmVyKCJ0ZXN0X2Nhc2VfbmFtZSIpCisgICAgICAgICAgZGVmIHRlc3Rfc29tZXRoaW5nKHNlbGYsIHNlcnZlcik6CisgICAgICAgICAgICAgIC4uLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnV0aWwucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnV0aWwucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU2MjhjMzIKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcudXRpbC5yc3QKQEAgLTAsMCArMSwxNTUgQEAKKzptb2Q6YHBhY2thZ2luZy51dGlsYCAtLS0gTWlzY2VsbGFuZW91cyB1dGlsaXR5IGZ1bmN0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy51dGlsCisgICA6c3lub3BzaXM6IE1pc2NlbGxhbmVvdXMgdXRpbGl0eSBmdW5jdGlvbnMuCisKKworVGhpcyBtb2R1bGUgY29udGFpbnMgdmFyaW91cyBoZWxwZXJzIGZvciB0aGUgb3RoZXIgbW9kdWxlcy4KKworLi4gWFhYIGEgbnVtYmVyIG9mIGZ1bmN0aW9ucyBhcmUgbWlzc2luZywgYnV0IHRoZSBtb2R1bGUgbWF5IGJlIHNwbGl0IGZpcnN0CisgICAoaXQncyBnaW5vcm1vdXMgcmlnaHQgbm93LCBzb21lIHRoaW5ncyBjb3VsZCBnbyB0byBjb21wYXQgZm9yIGV4YW1wbGUpCisKKy4uIGZ1bmN0aW9uOjogZ2V0X3BsYXRmb3JtKCkKKworICAgUmV0dXJuIGEgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgY3VycmVudCBwbGF0Zm9ybS4gIFRoaXMgaXMgdXNlZCBtYWlubHkgdG8KKyAgIGRpc3Rpbmd1aXNoIHBsYXRmb3JtLXNwZWNpZmljIGJ1aWxkIGRpcmVjdG9yaWVzIGFuZCBwbGF0Zm9ybS1zcGVjaWZpYyBidWlsdAorICAgZGlzdHJpYnV0aW9ucy4gIFR5cGljYWxseSBpbmNsdWRlcyB0aGUgT1MgbmFtZSBhbmQgdmVyc2lvbiBhbmQgdGhlCisgICBhcmNoaXRlY3R1cmUgKGFzIHN1cHBsaWVkIGJ5ICdvcy51bmFtZSgpJyksIGFsdGhvdWdoIHRoZSBleGFjdCBpbmZvcm1hdGlvbgorICAgaW5jbHVkZWQgZGVwZW5kcyBvbiB0aGUgT1M7IGUuZy4gZm9yIElSSVggdGhlIGFyY2hpdGVjdHVyZSBpc24ndCBwYXJ0aWN1bGFybHkKKyAgIGltcG9ydGFudCAoSVJJWCBvbmx5IHJ1bnMgb24gU0dJIGhhcmR3YXJlKSwgYnV0IGZvciBMaW51eCB0aGUga2VybmVsIHZlcnNpb24KKyAgIGlzbid0IHBhcnRpY3VsYXJseSBpbXBvcnRhbnQuCisKKyAgIEV4YW1wbGVzIG9mIHJldHVybmVkIHZhbHVlczoKKworICAgKiBgYGxpbnV4LWk1ODZgYAorICAgKiBgYGxpbnV4LWFscGhhYGAKKyAgICogYGBzb2xhcmlzLTIuNi1zdW40dWBgCisgICAqIGBgaXJpeC01LjNgYAorICAgKiBgYGlyaXg2NC02LjJgYAorCisgICBGb3Igbm9uLVBPU0lYIHBsYXRmb3JtcywgY3VycmVudGx5IGp1c3QgcmV0dXJucyBgYHN5cy5wbGF0Zm9ybWBgLgorCisgICBGb3IgTWFjIE9TIFggc3lzdGVtcyB0aGUgT1MgdmVyc2lvbiByZWZsZWN0cyB0aGUgbWluaW1hbCB2ZXJzaW9uIG9uIHdoaWNoCisgICBiaW5hcmllcyB3aWxsIHJ1biAodGhhdCBpcywgdGhlIHZhbHVlIG9mIGBgTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUYGAKKyAgIGR1cmluZyB0aGUgYnVpbGQgb2YgUHl0aG9uKSwgbm90IHRoZSBPUyB2ZXJzaW9uIG9mIHRoZSBjdXJyZW50IHN5c3RlbS4KKworICAgRm9yIHVuaXZlcnNhbCBiaW5hcnkgYnVpbGRzIG9uIE1hYyBPUyBYIHRoZSBhcmNoaXRlY3R1cmUgdmFsdWUgcmVmbGVjdHMKKyAgIHRoZSB1bml2ZXJhbCBiaW5hcnkgc3RhdHVzIGluc3RlYWQgb2YgdGhlIGFyY2hpdGVjdHVyZSBvZiB0aGUgY3VycmVudAorICAgcHJvY2Vzc29yLiBGb3IgMzItYml0IHVuaXZlcnNhbCBiaW5hcmllcyB0aGUgYXJjaGl0ZWN0dXJlIGlzIGBgZmF0YGAsCisgICBmb3IgNjQtYml0IHVuaXZlcnNhbCBiaW5hcmllcyB0aGUgYXJjaGl0ZWN0dXJlIGlzIGBgZmF0NjRgYCwgYW5kCisgICBmb3IgNC13YXkgdW5pdmVyc2FsIGJpbmFyaWVzIHRoZSBhcmNoaXRlY3R1cmUgaXMgYGB1bml2ZXJzYWxgYC4gU3RhcnRpbmcKKyAgIGZyb20gUHl0aG9uIDIuNyBhbmQgUHl0aG9uIDMuMiB0aGUgYXJjaGl0ZWN0dXJlIGBgZmF0M2BgIGlzIHVzZWQgZm9yCisgICBhIDMtd2F5IHVuaXZlcnNhbCBidWlsZCAocHBjLCBpMzg2LCB4ODZfNjQpIGFuZCBgYGludGVsYGAgaXMgdXNlZCBmb3IKKyAgIGEgdW5pdmVyYWwgYnVpbGQgd2l0aCB0aGUgaTM4NiBhbmQgeDg2XzY0IGFyY2hpdGVjdHVyZXMKKworICAgRXhhbXBsZXMgb2YgcmV0dXJuZWQgdmFsdWVzIG9uIE1hYyBPUyBYOgorCisgICAqIGBgbWFjb3N4LTEwLjMtcHBjYGAKKworICAgKiBgYG1hY29zeC0xMC4zLWZhdGBgCisKKyAgICogYGBtYWNvc3gtMTAuNS11bml2ZXJzYWxgYAorCisgICAqIGBgbWFjb3N4LTEwLjYtaW50ZWxgYAorCisgICAuLiBYWFggcmVpbnZlbnRpb24gb2YgcGxhdGZvcm0gbW9kdWxlPworCisKKy4uIGZ1bmN0aW9uOjogY29udmVydF9wYXRoKHBhdGhuYW1lKQorCisgICBSZXR1cm4gJ3BhdGhuYW1lJyBhcyBhIG5hbWUgdGhhdCB3aWxsIHdvcmsgb24gdGhlIG5hdGl2ZSBmaWxlc3lzdGVtLCBpLmUuCisgICBzcGxpdCBpdCBvbiAnLycgYW5kIHB1dCBpdCBiYWNrIHRvZ2V0aGVyIGFnYWluIHVzaW5nIHRoZSBjdXJyZW50IGRpcmVjdG9yeQorICAgc2VwYXJhdG9yLiBOZWVkZWQgYmVjYXVzZSBmaWxlbmFtZXMgaW4gdGhlIHNldHVwIHNjcmlwdCBhcmUgYWx3YXlzIHN1cHBsaWVkCisgICBpbiBVbml4IHN0eWxlLCBhbmQgaGF2ZSB0byBiZSBjb252ZXJ0ZWQgdG8gdGhlIGxvY2FsIGNvbnZlbnRpb24gYmVmb3JlIHdlCisgICBjYW4gYWN0dWFsbHkgdXNlIHRoZW0gaW4gdGhlIGZpbGVzeXN0ZW0uICBSYWlzZXMgOmV4YzpgVmFsdWVFcnJvcmAgb24KKyAgIG5vbi1Vbml4LWlzaCBzeXN0ZW1zIGlmICpwYXRobmFtZSogZWl0aGVyIHN0YXJ0cyBvciBlbmRzIHdpdGggYSBzbGFzaC4KKworCisuLiBmdW5jdGlvbjo6IGNoYW5nZV9yb290KG5ld19yb290LCBwYXRobmFtZSkKKworICAgUmV0dXJuICpwYXRobmFtZSogd2l0aCAqbmV3X3Jvb3QqIHByZXBlbmRlZC4gIElmICpwYXRobmFtZSogaXMgcmVsYXRpdmUsIHRoaXMKKyAgIGlzIGVxdWl2YWxlbnQgdG8gYGBvcy5wYXRoLmpvaW4obmV3X3Jvb3QscGF0aG5hbWUpYGAgT3RoZXJ3aXNlLCBpdCByZXF1aXJlcworICAgbWFraW5nICpwYXRobmFtZSogcmVsYXRpdmUgYW5kIHRoZW4gam9pbmluZyB0aGUgdHdvLCB3aGljaCBpcyB0cmlja3kgb24KKyAgIERPUy9XaW5kb3dzLgorCisKKy4uIGZ1bmN0aW9uOjogY2hlY2tfZW52aXJvbigpCisKKyAgIEVuc3VyZSB0aGF0ICdvcy5lbnZpcm9uJyBoYXMgYWxsIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgd2UgZ3VhcmFudGVlIHRoYXQKKyAgIHVzZXJzIGNhbiB1c2UgaW4gY29uZmlnIGZpbGVzLCBjb21tYW5kLWxpbmUgb3B0aW9ucywgZXRjLiAgQ3VycmVudGx5IHRoaXMKKyAgIGluY2x1ZGVzOgorCisgICAqIDplbnZ2YXI6YEhPTUVgIC0gdXNlcidzIGhvbWUgZGlyZWN0b3J5IChVbml4IG9ubHkpCisgICAqIDplbnZ2YXI6YFBMQVRgIC0gZGVzY3JpcHRpb24gb2YgdGhlIGN1cnJlbnQgcGxhdGZvcm0sIGluY2x1ZGluZyBoYXJkd2FyZQorICAgICBhbmQgT1MgKHNlZSA6ZnVuYzpgZ2V0X3BsYXRmb3JtYCkKKworCisuLiBmdW5jdGlvbjo6IGZpbmRfZXhlY3V0YWJsZShleGVjdXRhYmxlLCBwYXRoPU5vbmUpCisKKyAgIFNlYXJjaCB0aGUgcGF0aCBmb3IgYSBnaXZlbiBleGVjdXRhYmxlIG5hbWUuCisKKworLi4gZnVuY3Rpb246OiBleGVjdXRlKGZ1bmMsIGFyZ3MsIG1zZz1Ob25lLCBkcnlfcnVuPUZhbHNlKQorCisgICBQZXJmb3JtIHNvbWUgYWN0aW9uIHRoYXQgYWZmZWN0cyB0aGUgb3V0c2lkZSB3b3JsZCAoZm9yIGluc3RhbmNlLCB3cml0aW5nIHRvCisgICB0aGUgZmlsZXN5c3RlbSkuICBTdWNoIGFjdGlvbnMgYXJlIHNwZWNpYWwgYmVjYXVzZSB0aGV5IGFyZSBkaXNhYmxlZCBieSB0aGUKKyAgICpkcnlfcnVuKiBmbGFnLiAgVGhpcyBtZXRob2QgdGFrZXMgY2FyZSBvZiBhbGwgdGhhdCBidXJlYXVjcmFjeSBmb3IgeW91OworICAgYWxsIHlvdSBoYXZlIHRvIGRvIGlzIHN1cHBseSB0aGUgZnVuY3Rpb24gdG8gY2FsbCBhbmQgYW4gYXJndW1lbnQgdHVwbGUgZm9yCisgICBpdCAodG8gZW1ib2R5IHRoZSAiZXh0ZXJuYWwgYWN0aW9uIiBiZWluZyBwZXJmb3JtZWQpLCBhbmQgYW4gb3B0aW9uYWwgbWVzc2FnZQorICAgdG8gcHJpbnQuCisKKworLi4gZnVuY3Rpb246OiBuZXdlcihzb3VyY2UsIHRhcmdldCkKKworICAgUmV0dXJuIHRydWUgaWYgKnNvdXJjZSogZXhpc3RzIGFuZCBpcyBtb3JlIHJlY2VudGx5IG1vZGlmaWVkIHRoYW4gKnRhcmdldCosCisgICBvciBpZiAqc291cmNlKiBleGlzdHMgYW5kICp0YXJnZXQqIGRvZXNuJ3QuIFJldHVybiBmYWxzZSBpZiBib3RoIGV4aXN0IGFuZAorICAgKnRhcmdldCogaXMgdGhlIHNhbWUgYWdlIG9yIG5ld2VyIHRoYW4gKnNvdXJjZSouIFJhaXNlCisgICA6ZXhjOmBQYWNrYWdpbmdGaWxlRXJyb3JgIGlmICpzb3VyY2UqIGRvZXMgbm90IGV4aXN0LgorCisKKy4uIGZ1bmN0aW9uOjogc3RydG9ib29sKHZhbCkKKworICAgQ29udmVydCBhIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0cnV0aCB0byB0cnVlICgxKSBvciBmYWxzZSAoMCkuCisKKyAgIFRydWUgdmFsdWVzIGFyZSBgYHlgYCwgYGB5ZXNgYCwgYGB0YGAsIGBgdHJ1ZWBgLCBgYG9uYGAgYW5kIGBgMWBgOyBmYWxzZQorICAgdmFsdWVzIGFyZSBgYG5gYCwgYGBub2BgLCBgYGZgYCwgYGBmYWxzZWBgLCBgYG9mZmBgIGFuZCBgYDBgYC4gIFJhaXNlcworICAgOmV4YzpgVmFsdWVFcnJvcmAgaWYgKnZhbCogaXMgYW55dGhpbmcgZWxzZS4KKworCisuLiBmdW5jdGlvbjo6IGJ5dGVfY29tcGlsZShweV9maWxlcywgb3B0aW1pemU9MCwgZm9yY2U9MCwgcHJlZml4PU5vbmUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2VfZGlyPU5vbmUsIGRyeV9ydW49MCwgZGlyZWN0PU5vbmUpCisKKyAgIEJ5dGUtY29tcGlsZSBhIGNvbGxlY3Rpb24gb2YgUHl0aG9uIHNvdXJjZSBmaWxlcyB0byBlaXRoZXIgOmZpbGU6YC5weWNgIG9yCisgICA6ZmlsZTpgLnB5b2AgZmlsZXMgaW4gYSA6ZmlsZTpgX19weWNhY2hlX19gIHN1YmRpcmVjdG9yeSAoc2VlIDpwZXA6YDMxNDdgKSwKKyAgIG9yIHRvIHRoZSBzYW1lIGRpcmVjdG9yeSB3aGVuIHVzaW5nIHRoZSBkaXN0dXRpbHMyIGJhY2twb3J0IG9uIFB5dGhvbgorICAgdmVyc2lvbnMgb2xkZXIgdGhhbiAzLjIuCisKKyAgICpweV9maWxlcyogaXMgYSBsaXN0IG9mIGZpbGVzIHRvIGNvbXBpbGU7IGFueSBmaWxlcyB0aGF0IGRvbid0IGVuZCBpbgorICAgOmZpbGU6YC5weWAgYXJlIHNpbGVudGx5IHNraXBwZWQuICAqb3B0aW1pemUqIG11c3QgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmc6CisKKyAgICogYGAwYGAgLSBkb24ndCBvcHRpbWl6ZSAoZ2VuZXJhdGUgOmZpbGU6YC5weWNgKQorICAgKiBgYDFgYCAtIG5vcm1hbCBvcHRpbWl6YXRpb24gKGxpa2UgYGBweXRob24gLU9gYCkKKyAgICogYGAyYGAgLSBleHRyYSBvcHRpbWl6YXRpb24gKGxpa2UgYGBweXRob24gLU9PYGApCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgaW5kZXBlbmRlbnQgZnJvbSB0aGUgcnVubmluZyBQeXRob24ncyA6b3B0aW9uOmAtT2Agb3IKKyAgIDpvcHRpb246YC1CYCBvcHRpb25zOyBpdCBpcyBmdWxseSBjb250cm9sbGVkIGJ5IHRoZSBwYXJhbWV0ZXJzIHBhc3NlZCBpbi4KKworICAgSWYgKmZvcmNlKiBpcyB0cnVlLCBhbGwgZmlsZXMgYXJlIHJlY29tcGlsZWQgcmVnYXJkbGVzcyBvZiB0aW1lc3RhbXBzLgorCisgICBUaGUgc291cmNlIGZpbGVuYW1lIGVuY29kZWQgaW4gZWFjaCA6dGVybTpgYnl0ZWNvZGVgIGZpbGUgZGVmYXVsdHMgdG8gdGhlIGZpbGVuYW1lcworICAgbGlzdGVkIGluICpweV9maWxlcyo7IHlvdSBjYW4gbW9kaWZ5IHRoZXNlIHdpdGggKnByZWZpeCogYW5kICpiYXNlZGlyKi4KKyAgICpwcmVmaXgqIGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBzdHJpcHBlZCBvZmYgb2YgZWFjaCBzb3VyY2UgZmlsZW5hbWUsIGFuZAorICAgKmJhc2VfZGlyKiBpcyBhIGRpcmVjdG9yeSBuYW1lIHRoYXQgd2lsbCBiZSBwcmVwZW5kZWQgKGFmdGVyICpwcmVmaXgqIGlzCisgICBzdHJpcHBlZCkuICBZb3UgY2FuIHN1cHBseSBlaXRoZXIgb3IgYm90aCAob3IgbmVpdGhlcikgb2YgKnByZWZpeCogYW5kCisgICAqYmFzZV9kaXIqLCBhcyB5b3Ugd2lzaC4KKworICAgSWYgKmRyeV9ydW4qIGlzIHRydWUsIGRvZXNuJ3QgYWN0dWFsbHkgZG8gYW55dGhpbmcgdGhhdCB3b3VsZCBhZmZlY3QgdGhlCisgICBmaWxlc3lzdGVtLgorCisgICBCeXRlLWNvbXBpbGF0aW9uIGlzIGVpdGhlciBkb25lIGRpcmVjdGx5IGluIHRoaXMgaW50ZXJwcmV0ZXIgcHJvY2VzcyB3aXRoIHRoZQorICAgc3RhbmRhcmQgOm1vZDpgcHlfY29tcGlsZWAgbW9kdWxlLCBvciBpbmRpcmVjdGx5IGJ5IHdyaXRpbmcgYSB0ZW1wb3JhcnkKKyAgIHNjcmlwdCBhbmQgZXhlY3V0aW5nIGl0LiAgTm9ybWFsbHksIHlvdSBzaG91bGQgbGV0IDpmdW5jOmBieXRlX2NvbXBpbGVgCisgICBmaWd1cmUgb3V0IHRvIHVzZSBkaXJlY3QgY29tcGlsYXRpb24gb3Igbm90IChzZWUgdGhlIHNvdXJjZSBmb3IgZGV0YWlscykuCisgICBUaGUgKmRpcmVjdCogZmxhZyBpcyB1c2VkIGJ5IHRoZSBzY3JpcHQgZ2VuZXJhdGVkIGluIGluZGlyZWN0IG1vZGU7IHVubGVzcworICAgeW91IGtub3cgd2hhdCB5b3UncmUgZG9pbmcsIGxlYXZlIGl0IHNldCB0byBgYE5vbmVgYC4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BhY2thZ2luZy52ZXJzaW9uLnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy52ZXJzaW9uLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMzZjZGFiCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnZlcnNpb24ucnN0CkBAIC0wLDAgKzEsMTA0IEBACis6bW9kOmBwYWNrYWdpbmcudmVyc2lvbmAgLS0tIFZlcnNpb24gbnVtYmVyIGNsYXNzZXMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcudmVyc2lvbgorICAgOnN5bm9wc2lzOiBDbGFzc2VzIHRoYXQgcmVwcmVzZW50IHByb2plY3QgdmVyc2lvbiBudW1iZXJzLgorCisKK1RoaXMgbW9kdWxlIGNvbnRhaW5zIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucyB1c2VmdWwgdG8gZGVhbCB3aXRoIHZlcnNpb24gbnVtYmVycy4KK0l0J3MgYW4gaW1wbGVtZW50YXRpb24gb2YgdmVyc2lvbiBzcGVjaWZpZXJzIGBhcyBkZWZpbmVkIGluIFBFUCAzNDUKKzxodHRwOi8vd3d3LnB5dGhvbi5vcmcvZGV2L3BlcHMvcGVwLTAzNDUvI3ZlcnNpb24tc3BlY2lmaWVycz5gXy4KKworCitWZXJzaW9uIG51bWJlcnMKKy0tLS0tLS0tLS0tLS0tLQorCisuLiBjbGFzczo6IE5vcm1hbGl6ZWRWZXJzaW9uKHNlbGYsIHMsIGVycm9yX29uX2h1Z2VfbWFqb3JfbnVtPVRydWUpCisKKyAgIEEgc3BlY2lmaWMgdmVyc2lvbiBvZiBhIGRpc3RyaWJ1dGlvbiwgYXMgZGVzY3JpYmVkIGluIFBFUCAzNDUuICAqcyogaXMgYQorICAgc3RyaW5nIG9iamVjdCBjb250YWluaW5nIHRoZSB2ZXJzaW9uIG51bWJlciAoZm9yIGV4YW1wbGUgYGAnMS4yYjEnYGApLAorICAgKmVycm9yX29uX2h1Z2VfbWFqb3JfbnVtKiBhIGJvb2xlYW4gc3BlY2lmeWluZyB3aGV0aGVyIHRvIGNvbnNpZGVyIGFuCisgICBhcHBhcmVudCB1c2Ugb2YgYSB5ZWFyIG9yIGZ1bGwgZGF0ZSBhcyB0aGUgbWFqb3IgdmVyc2lvbiBudW1iZXIgYW4gZXJyb3IuCisKKyAgIFRoZSByYXRpb25hbGUgZm9yIHRoZSBzZWNvbmQgYXJndW1lbnQgaXMgdGhhdCB0aGVyZSB3ZXJlIHByb2plY3RzIHVzaW5nIHllYXJzCisgICBvciBmdWxsIGRhdGVzIGFzIHZlcnNpb24gbnVtYmVycywgd2hpY2ggY291bGQgY2F1c2UgcHJvYmxlbXMgd2l0aCBzb21lCisgICBwYWNrYWdpbmcgc3lzdGVtcyBzb3J0aW5nLgorCisgICBJbnN0YW5jZXMgb2YgdGhpcyBjbGFzcyBjYW4gYmUgY29tcGFyZWQgYW5kIHNvcnRlZDo6CisKKyAgICAgID4+PiBOb3JtYWxpemVkVmVyc2lvbignMS4yYjEnKSA8IE5vcm1hbGl6ZWRWZXJzaW9uKCcxLjInKQorICAgICAgVHJ1ZQorCisgICA6Y2xhc3M6YE5vcm1hbGl6ZWRWZXJzaW9uYCBpcyB1c2VkIGludGVybmFsbHkgYnkgOmNsYXNzOmBWZXJzaW9uUHJlZGljYXRlYCB0bworICAgZG8gaXRzIHdvcmsuCisKKworLi4gY2xhc3M6OiBJcnJhdGlvbmFsVmVyc2lvbkVycm9yCisKKyAgIEV4Y2VwdGlvbiByYWlzZWQgd2hlbiBhbiBpbnZhbGlkIHN0cmluZyBpcyBnaXZlbiB0bworICAgOmNsYXNzOmBOb3JtYWxpemVkVmVyc2lvbmAuCisKKyAgICAgID4+PiBOb3JtYWxpemVkVmVyc2lvbigiaXJyYXRpb25hbF92ZXJzaW9uX251bWJlciIpCisgICAgICAuLi4KKyAgICAgIElycmF0aW9uYWxWZXJzaW9uRXJyb3I6IGlycmF0aW9uYWxfdmVyc2lvbl9udW1iZXIKKworCisuLiBmdW5jdGlvbjo6IHN1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uKHMpCisKKyAgIEJlZm9yZSBzdGFuZGFyZGl6YXRpb24gaW4gUEVQIDM4NiwgdmFyaW91cyBzY2hlbWVzIHdlcmUgaW4gdXNlLiAgUGFja2FnaW5nCisgICBwcm92aWRlcyBhIGZ1bmN0aW9uIHRvIHRyeSB0byBjb252ZXJ0IGFueSBzdHJpbmcgdG8gYSB2YWxpZCwgbm9ybWFsaXplZAorICAgdmVyc2lvbjo6CisKKyAgICAgID4+PiBzdWdnZXN0X25vcm1hbGl6ZWRfdmVyc2lvbignMi4xLXJjMScpCisgICAgICAyLjFjMQorCisKKyAgIElmIDpmdW5jOmBzdWdnZXN0X25vcm1hbGl6ZWRfdmVyc2lvbmAgY2FuJ3QgbWFrZSBzZW5zZSBvZiB0aGUgZ2l2ZW4gc3RyaW5nLAorICAgaXQgd2lsbCByZXR1cm4gYGBOb25lYGA6OgorCisgICAgICA+Pj4gcHJpbnQoc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb24oJ25vdCBhIHZlcnNpb24nKSkKKyAgICAgIE5vbmUKKworCitWZXJzaW9uIHByZWRpY2F0ZXMKKy0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiBjbGFzczo6IFZlcnNpb25QcmVkaWNhdGUocHJlZGljYXRlKQorCisgICBUaGlzIGNsYXNzIGRlYWxzIHdpdGggdGhlIHBhcnNpbmcgb2YgZmllbGQgdmFsdWVzIGxpa2UKKyAgIGBgUHJvamVjdE5hbWUgKD49dmVyc2lvbilgYC4KKworICAgLi4gbWV0aG9kOjogbWF0Y2godmVyc2lvbikKKworICAgICAgVGVzdCBpZiBhIHZlcnNpb24gbnVtYmVyIG1hdGNoZXMgdGhlIHByZWRpY2F0ZToKKworICAgICAgICAgPj4+IHZlcnNpb24gPSBWZXJzaW9uUHJlZGljYXRlKCJQcm9qZWN0TmFtZSAoPDEuMiwgPjEuMCkiKQorICAgICAgICAgPj4+IHZlcnNpb24ubWF0Y2goIjEuMi4xIikKKyAgICAgICAgIEZhbHNlCisgICAgICAgICA+Pj4gdmVyc2lvbi5tYXRjaCgiMS4xLjEiKQorICAgICAgICAgVHJ1ZQorCisKK1ZhbGlkYXRpb24gaGVscGVycworLS0tLS0tLS0tLS0tLS0tLS0tCisKK0lmIHlvdSB3YW50IHRvIHVzZSA6dGVybTpgTEJZTGAtc3R5bGUgY2hlY2tzIGluc3RlYWQgb2YgaW5zdGFudGlhdGluZyB0aGUKK2NsYXNzZXMgYW5kIGNhdGNoaW5nIDpjbGFzczpgSXJyYXRpb25hbFZlcnNpb25FcnJvcmAgYW5kIDpjbGFzczpgVmFsdWVFcnJvcmAsCit5b3UgY2FuIHVzZSB0aGVzZSBmdW5jdGlvbnM6CisKKy4uIGZ1bmN0aW9uOjogaXNfdmFsaWRfdmVyc2lvbihwcmVkaWNhdGUpCisKKyAgIENoZWNrIHdoZXRoZXIgdGhlIGdpdmVuIHN0cmluZyBpcyBhIHZhbGlkIHZlcnNpb24gbnVtYmVyLiAgRXhhbXBsZSBvZiB2YWxpZAorICAgc3RyaW5nczogYGAnMS4yJ2BgLCAgYGAnNC4yLjAuZGV2NCdgYCwgYGAnMi41LjQucG9zdDInYGAuCisKKworLi4gZnVuY3Rpb246OiBpc192YWxpZF92ZXJzaW9ucyhwcmVkaWNhdGUpCisKKyAgIENoZWNrIHdoZXRoZXIgdGhlIGdpdmVuIHN0cmluZyBpcyBhIHZhbGlkIHZhbHVlIGZvciBzcGVjaWZ5aW5nIG11bHRpcGxlCisgICB2ZXJzaW9ucywgc3VjaCBhcyBpbiB0aGUgUmVxdWlyZXMtUHl0aG9uIGZpZWxkLiAgRXhhbXBsZTogYGAnMi43LCA+PTMuMidgYC4KKworCisuLiBmdW5jdGlvbjo6IGlzX3ZhbGlkX3ByZWRpY2F0ZShwcmVkaWNhdGUpCisKKyAgIENoZWNrIHdoZXRoZXIgdGhlIGdpdmVuIHN0cmluZyBpcyBhIHZhbGlkIHZlcnNpb24gcHJlZGljYXRlLiAgRXhhbXBsZXM6CisgICBgYCdzb21lLnByb2plY3QgPT0gNC41LCA8PSA0LjcnYGAsIGBgJ3NwZWNpYWxsaWIgKD4gMS4wLCAhPSAxLjQuMiwgPCAyLjApJ2BgLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGlja2xlLnJzdCBiL0RvYy9saWJyYXJ5L3BpY2tsZS5yc3QKaW5kZXggYmYwYTcyZS4uMWI4NWJmYSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvcGlja2xlLnJzdAorKysgYi9Eb2MvbGlicmFyeS9waWNrbGUucnN0CkBAIC0yODUsNiArMjg1LDI5IEBACiAKICAgICAgIFNlZSA6cmVmOmBwaWNrbGUtcGVyc2lzdGVudGAgZm9yIGRldGFpbHMgYW5kIGV4YW1wbGVzIG9mIHVzZXMuCiAKKyAgIC4uIGF0dHJpYnV0ZTo6IGRpc3BhdGNoX3RhYmxlCisKKyAgICAgIEEgcGlja2xlciBvYmplY3QncyBkaXNwYXRjaCB0YWJsZSBpcyBhIHJlZ2lzdHJ5IG9mICpyZWR1Y3Rpb24KKyAgICAgIGZ1bmN0aW9ucyogb2YgdGhlIGtpbmQgd2hpY2ggY2FuIGJlIGRlY2xhcmVkIHVzaW5nCisgICAgICA6ZnVuYzpgY29weXJlZy5waWNrbGVgLiAgSXQgaXMgYSBtYXBwaW5nIHdob3NlIGtleXMgYXJlIGNsYXNzZXMKKyAgICAgIGFuZCB3aG9zZSB2YWx1ZXMgYXJlIHJlZHVjdGlvbiBmdW5jdGlvbnMuICBBIHJlZHVjdGlvbiBmdW5jdGlvbgorICAgICAgdGFrZXMgYSBzaW5nbGUgYXJndW1lbnQgb2YgdGhlIGFzc29jaWF0ZWQgY2xhc3MgYW5kIHNob3VsZAorICAgICAgY29uZm9ybSB0byB0aGUgc2FtZSBpbnRlcmZhY2UgYXMgYSA6bWV0aDpgfm9iamVjdC5fX3JlZHVjZV9fYAorICAgICAgbWV0aG9kLgorCisgICAgICBCeSBkZWZhdWx0LCBhIHBpY2tsZXIgb2JqZWN0IHdpbGwgbm90IGhhdmUgYQorICAgICAgOmF0dHI6YGRpc3BhdGNoX3RhYmxlYCBhdHRyaWJ1dGUsIGFuZCBpdCB3aWxsIGluc3RlYWQgdXNlIHRoZQorICAgICAgZ2xvYmFsIGRpc3BhdGNoIHRhYmxlIG1hbmFnZWQgYnkgdGhlIDptb2Q6YGNvcHlyZWdgIG1vZHVsZS4KKyAgICAgIEhvd2V2ZXIsIHRvIGN1c3RvbWl6ZSB0aGUgcGlja2xpbmcgZm9yIGEgc3BlY2lmaWMgcGlja2xlciBvYmplY3QKKyAgICAgIG9uZSBjYW4gc2V0IHRoZSA6YXR0cjpgZGlzcGF0Y2hfdGFibGVgIGF0dHJpYnV0ZSB0byBhIGRpY3QtbGlrZQorICAgICAgb2JqZWN0LiAgQWx0ZXJuYXRpdmVseSwgaWYgYSBzdWJjbGFzcyBvZiA6Y2xhc3M6YFBpY2tsZXJgIGhhcyBhCisgICAgICA6YXR0cjpgZGlzcGF0Y2hfdGFibGVgIGF0dHJpYnV0ZSB0aGVuIHRoaXMgd2lsbCBiZSB1c2VkIGFzIHRoZQorICAgICAgZGVmYXVsdCBkaXNwYXRjaCB0YWJsZSBmb3IgaW5zdGFuY2VzIG9mIHRoYXQgY2xhc3MuCisKKyAgICAgIFNlZSA6cmVmOmBwaWNrbGUtZGlzcGF0Y2hgIGZvciB1c2FnZSBleGFtcGxlcy4KKworICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKICAgIC4uIGF0dHJpYnV0ZTo6IGZhc3QKIAogICAgICAgRGVwcmVjYXRlZC4gRW5hYmxlIGZhc3QgbW9kZSBpZiBzZXQgdG8gYSB0cnVlIHZhbHVlLiAgVGhlIGZhc3QgbW9kZQpAQCAtNTc1LDYgKzU5OCw0NCBAQAogCiAuLiBsaXRlcmFsaW5jbHVkZTo6IC4uL2luY2x1ZGVzL2RicGlja2xlLnB5CiAKKy4uIF9waWNrbGUtZGlzcGF0Y2g6CisKK0Rpc3BhdGNoIFRhYmxlcworXl5eXl5eXl5eXl5eXl5eCisKK0lmIG9uZSB3YW50cyB0byBjdXN0b21pemUgcGlja2xpbmcgb2Ygc29tZSBjbGFzc2VzIHdpdGhvdXQgZGlzdHVyYmluZworYW55IG90aGVyIGNvZGUgd2hpY2ggZGVwZW5kcyBvbiBwaWNrbGluZywgdGhlbiBvbmUgY2FuIGNyZWF0ZSBhCitwaWNrbGVyIHdpdGggYSBwcml2YXRlIGRpc3BhdGNoIHRhYmxlLgorCitUaGUgZ2xvYmFsIGRpc3BhdGNoIHRhYmxlIG1hbmFnZWQgYnkgdGhlIDptb2Q6YGNvcHlyZWdgIG1vZHVsZSBpcworYXZhaWxhYmxlIGFzIDpkYXRhOmBjb3B5cmVnLmRpc3BhdGNoX3RhYmxlYC4gIFRoZXJlZm9yZSwgb25lIG1heQorY2hvb3NlIHRvIHVzZSBhIG1vZGlmaWVkIGNvcHkgb2YgOmRhdGE6YGNvcHlyZWcuZGlzcGF0Y2hfdGFibGVgIGFzIGEKK3ByaXZhdGUgZGlzcGF0Y2ggdGFibGUuCisKK0ZvciBleGFtcGxlIDo6CisKKyAgIGYgPSBpby5CeXRlc0lPKCkKKyAgIHAgPSBwaWNrbGUuUGlja2xlcihmKQorICAgcC5kaXNwYXRjaF90YWJsZSA9IGNvcHlyZWcuZGlzcGF0Y2hfdGFibGUuY29weSgpCisgICBwLmRpc3BhdGNoX3RhYmxlW1NvbWVDbGFzc10gPSByZWR1Y2VfU29tZUNsYXNzCisKK2NyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgOmNsYXNzOmBwaWNrbGUuUGlja2xlcmAgd2l0aCBhIHByaXZhdGUgZGlzcGF0Y2gKK3RhYmxlIHdoaWNoIGhhbmRsZXMgdGhlIGBgU29tZUNsYXNzYGAgY2xhc3Mgc3BlY2lhbGx5LiAgQWx0ZXJuYXRpdmVseSwKK3RoZSBjb2RlIDo6CisKKyAgIGNsYXNzIE15UGlja2xlcihwaWNrbGUuUGlja2xlcik6CisgICAgICAgZGlzcGF0Y2hfdGFibGUgPSBjb3B5cmVnLmRpc3BhdGNoX3RhYmxlLmNvcHkoKQorICAgICAgIGRpc3BhdGNoX3RhYmxlW1NvbWVDbGFzc10gPSByZWR1Y2VfU29tZUNsYXNzCisgICBmID0gaW8uQnl0ZXNJTygpCisgICBwID0gTXlQaWNrbGVyKGYpCisKK2RvZXMgdGhlIHNhbWUsIGJ1dCBhbGwgaW5zdGFuY2VzIG9mIGBgTXlQaWNrbGVyYGAgd2lsbCBieSBkZWZhdWx0CitzaGFyZSB0aGUgc2FtZSBkaXNwYXRjaCB0YWJsZS4gIFRoZSBlcXVpdmFsZW50IGNvZGUgdXNpbmcgdGhlCis6bW9kOmBjb3B5cmVnYCBtb2R1bGUgaXMgOjoKKworICAgY29weXJlZy5waWNrbGUoU29tZUNsYXNzLCByZWR1Y2VfU29tZUNsYXNzKQorICAgZiA9IGlvLkJ5dGVzSU8oKQorICAgcCA9IHBpY2tsZS5QaWNrbGVyKGYpCiAKIC4uIF9waWNrbGUtc3RhdGU6CiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BsYXRmb3JtLnJzdCBiL0RvYy9saWJyYXJ5L3BsYXRmb3JtLnJzdAppbmRleCA4NWVjYTlhLi45MzhjMjcwIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9wbGF0Zm9ybS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvcGxhdGZvcm0ucnN0CkBAIC0yMTQsNiArMjE0LDEwIEBACiAgICBwcmVmZXJyaW5nIDpmdW5jOmB3aW4zMnBpcGUucG9wZW5gLiAgT24gV2luZG93cyBOVCwgOmZ1bmM6YHdpbjMycGlwZS5wb3BlbmAKICAgIHNob3VsZCB3b3JrOyBvbiBXaW5kb3dzIDl4IGl0IGhhbmdzIGR1ZSB0byBidWdzIGluIHRoZSBNUyBDIGxpYnJhcnkuCiAKKyAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gaXMgb2Jzb2xldGUuICBVc2UgdGhlIDptb2Q6YHN1YnByb2Nlc3NgIG1vZHVsZS4gIENoZWNrCisgICAgICBlc3BlY2lhbGx5IHRoZSA6cmVmOmBzdWJwcm9jZXNzLXJlcGxhY2VtZW50c2Agc2VjdGlvbi4KKwogCiBNYWMgT1MgUGxhdGZvcm0KIC0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcHl0aG9uLnJzdCBiL0RvYy9saWJyYXJ5L3B5dGhvbi5yc3QKaW5kZXggYjY3ZmJmYy4uMDdlYWRiNCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvcHl0aG9uLnJzdAorKysgYi9Eb2MvbGlicmFyeS9weXRob24ucnN0CkBAIC0yNSw0ICsyNSw1IEBACiAgICBpbnNwZWN0LnJzdAogICAgc2l0ZS5yc3QKICAgIGZwZWN0bC5yc3QKKyAgIHBhY2thZ2luZy5yc3QKICAgIGRpc3R1dGlscy5yc3QKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3JhbmRvbS5yc3QgYi9Eb2MvbGlicmFyeS9yYW5kb20ucnN0CmluZGV4IDMxY2I5NDUuLjJiMTBlNmUgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3JhbmRvbS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvcmFuZG9tLnJzdApAQCAtNDMsNiArNDMsMTIgQEAKIHVzZXMgdGhlIHN5c3RlbSBmdW5jdGlvbiA6ZnVuYzpgb3MudXJhbmRvbWAgdG8gZ2VuZXJhdGUgcmFuZG9tIG51bWJlcnMKIGZyb20gc291cmNlcyBwcm92aWRlZCBieSB0aGUgb3BlcmF0aW5nIHN5c3RlbS4KIAorLi4gd2FybmluZzo6CisKKyAgIFRoZSBnZW5lcmF0b3JzIG9mIHRoZSA6bW9kOmByYW5kb21gIG1vZHVsZSBzaG91bGQgbm90IGJlIHVzZWQgZm9yIHNlY3VyaXR5CisgICBwdXJwb3Nlcy4gVXNlIDpmdW5jOmBzc2wuUkFORF9ieXRlc2AgaWYgeW91IHJlcXVpcmUgYSBjcnlwdG9ncmFwaGljYWxseQorICAgc2VjdXJlIHBzZXVkb3JhbmRvbSBudW1iZXIgZ2VuZXJhdG9yLgorCiAKIEJvb2trZWVwaW5nIGZ1bmN0aW9uczoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcmUucnN0IGIvRG9jL2xpYnJhcnkvcmUucnN0CmluZGV4IDkzMjI0ZjEuLjYwYzJmODYgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3JlLnJzdAorKysgYi9Eb2MvbGlicmFyeS9yZS5yc3QKQEAgLTY4MSw5ICs2ODEsMTIgQEAKIAogLi4gZnVuY3Rpb246OiBlc2NhcGUoc3RyaW5nKQogCi0gICBSZXR1cm4gKnN0cmluZyogd2l0aCBhbGwgbm9uLWFscGhhbnVtZXJpY3MgYmFja3NsYXNoZWQ7IHRoaXMgaXMgdXNlZnVsIGlmIHlvdQotICAgd2FudCB0byBtYXRjaCBhbiBhcmJpdHJhcnkgbGl0ZXJhbCBzdHJpbmcgdGhhdCBtYXkgaGF2ZSByZWd1bGFyIGV4cHJlc3Npb24KLSAgIG1ldGFjaGFyYWN0ZXJzIGluIGl0LgorICAgRXNjYXBlIGFsbCB0aGUgY2hhcmFjdGVycyBpbiBwYXR0ZXJuIGV4Y2VwdCBBU0NJSSBsZXR0ZXJzLCBudW1iZXJzIGFuZCBgYCdfJ2BgLgorICAgVGhpcyBpcyB1c2VmdWwgaWYgeW91IHdhbnQgdG8gbWF0Y2ggYW4gYXJiaXRyYXJ5IGxpdGVyYWwgc3RyaW5nIHRoYXQgbWF5CisgICBoYXZlIHJlZ3VsYXIgZXhwcmVzc2lvbiBtZXRhY2hhcmFjdGVycyBpbiBpdC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSBgYCdfJ2BgIGNoYXJhY3RlciBpcyBubyBsb25nZXIgZXNjYXBlZC4KIAogCiAuLiBmdW5jdGlvbjo6IHB1cmdlKCkKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3JlYWRsaW5lLnJzdCBiL0RvYy9saWJyYXJ5L3JlYWRsaW5lLnJzdAppbmRleCBhYjU1MTk3Li4xMTM0NjE5IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9yZWFkbGluZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvcmVhZGxpbmUucnN0CkBAIC0xOTksNyArMTk5LDcgQEAKICAgIGhpc3RmaWxlID0gb3MucGF0aC5qb2luKG9zLnBhdGguZXhwYW5kdXNlcigifiIpLCAiLnB5aGlzdCIpCiAgICB0cnk6CiAgICAgICAgcmVhZGxpbmUucmVhZF9oaXN0b3J5X2ZpbGUoaGlzdGZpbGUpCi0gICBleGNlcHQgSU9FcnJvcjoKKyAgIGV4Y2VwdCBGaWxlTm90Rm91bmRFcnJvcjoKICAgICAgICBwYXNzCiAgICBpbXBvcnQgYXRleGl0CiAgICBhdGV4aXQucmVnaXN0ZXIocmVhZGxpbmUud3JpdGVfaGlzdG9yeV9maWxlLCBoaXN0ZmlsZSkKQEAgLTIyNCw3ICsyMjQsNyBAQAogICAgICAgICAgICBpZiBoYXNhdHRyKHJlYWRsaW5lLCAicmVhZF9oaXN0b3J5X2ZpbGUiKToKICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICByZWFkbGluZS5yZWFkX2hpc3RvcnlfZmlsZShoaXN0ZmlsZSkKLSAgICAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yOgorICAgICAgICAgICAgICAgZXhjZXB0IEZpbGVOb3RGb3VuZEVycm9yOgogICAgICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgICAgIGF0ZXhpdC5yZWdpc3RlcihzZWxmLnNhdmVfaGlzdG9yeSwgaGlzdGZpbGUpCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3Jlc291cmNlLnJzdCBiL0RvYy9saWJyYXJ5L3Jlc291cmNlLnJzdAppbmRleCBjMTZiMDEzLi4wM2E3Y2I1IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9yZXNvdXJjZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvcmVzb3VyY2UucnN0CkBAIC0xNCwxMyArMTQsMTUgQEAKIFN5bWJvbGljIGNvbnN0YW50cyBhcmUgdXNlZCB0byBzcGVjaWZ5IHBhcnRpY3VsYXIgc3lzdGVtIHJlc291cmNlcyBhbmQgdG8KIHJlcXVlc3QgdXNhZ2UgaW5mb3JtYXRpb24gYWJvdXQgZWl0aGVyIHRoZSBjdXJyZW50IHByb2Nlc3Mgb3IgaXRzIGNoaWxkcmVuLgogCi1BIHNpbmdsZSBleGNlcHRpb24gaXMgZGVmaW5lZCBmb3IgZXJyb3JzOgorQW4gOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkIG9uIHN5c2NhbGwgZmFpbHVyZS4KIAogCiAuLiBleGNlcHRpb246OiBlcnJvcgogCi0gICBUaGUgZnVuY3Rpb25zIGRlc2NyaWJlZCBiZWxvdyBtYXkgcmFpc2UgdGhpcyBlcnJvciBpZiB0aGUgdW5kZXJseWluZyBzeXN0ZW0gY2FsbAotICAgZmFpbHVyZXMgdW5leHBlY3RlZGx5LgorICAgQSBkZXByZWNhdGVkIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgRm9sbG93aW5nIDpwZXA6YDMxNTFgLCB0aGlzIGNsYXNzIHdhcyBtYWRlIGFuIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgogCiAKIFJlc291cmNlIExpbWl0cwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvc2NoZWQucnN0IGIvRG9jL2xpYnJhcnkvc2NoZWQucnN0CmluZGV4IDAwMGRiYTAuLjk1N2JkZDMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3NjaGVkLnJzdAorKysgYi9Eb2MvbGlicmFyeS9zY2hlZC5yc3QKQEAgLTE0LDcgKzE0LDcgQEAKIFRoZSA6bW9kOmBzY2hlZGAgbW9kdWxlIGRlZmluZXMgYSBjbGFzcyB3aGljaCBpbXBsZW1lbnRzIGEgZ2VuZXJhbCBwdXJwb3NlIGV2ZW50CiBzY2hlZHVsZXI6CiAKLS4uIGNsYXNzOjogc2NoZWR1bGVyKHRpbWVmdW5jLCBkZWxheWZ1bmMpCisuLiBjbGFzczo6IHNjaGVkdWxlcih0aW1lZnVuYz10aW1lLnRpbWUsIGRlbGF5ZnVuYz10aW1lLnNsZWVwKQogCiAgICBUaGUgOmNsYXNzOmBzY2hlZHVsZXJgIGNsYXNzIGRlZmluZXMgYSBnZW5lcmljIGludGVyZmFjZSB0byBzY2hlZHVsaW5nIGV2ZW50cy4KICAgIEl0IG5lZWRzIHR3byBmdW5jdGlvbnMgdG8gYWN0dWFsbHkgZGVhbCB3aXRoIHRoZSAib3V0c2lkZSB3b3JsZCIgLS0tICp0aW1lZnVuYyoKQEAgLTI1LDYgKzI1LDEyIEBACiAgICBldmVudCBpcyBydW4gdG8gYWxsb3cgb3RoZXIgdGhyZWFkcyBhbiBvcHBvcnR1bml0eSB0byBydW4gaW4gbXVsdGktdGhyZWFkZWQKICAgIGFwcGxpY2F0aW9ucy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICp0aW1lZnVuYyogYW5kICpkZWxheWZ1bmMqIHBhcmFtZXRlcnMgYXJlIG9wdGlvbmFsLgorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIDpjbGFzczpgc2NoZWR1bGVyYCBjbGFzcyBjYW4gYmUgc2FmZWx5IHVzZWQgaW4gbXVsdGktdGhyZWFkZWQKKyAgICAgIGVudmlyb25tZW50cy4KKwogRXhhbXBsZTo6CiAKICAgID4+PiBpbXBvcnQgc2NoZWQsIHRpbWUKQEAgLTQ0LDMzICs1MCw2IEBACiAgICBGcm9tIHByaW50X3RpbWUgOTMwMzQzNzAwLjI3MwogICAgOTMwMzQzNzAwLjI3NgogCi1JbiBtdWx0aS10aHJlYWRlZCBlbnZpcm9ubWVudHMsIHRoZSA6Y2xhc3M6YHNjaGVkdWxlcmAgY2xhc3MgaGFzIGxpbWl0YXRpb25zCi13aXRoIHJlc3BlY3QgdG8gdGhyZWFkLXNhZmV0eSwgaW5hYmlsaXR5IHRvIGluc2VydCBhIG5ldyB0YXNrIGJlZm9yZQotdGhlIG9uZSBjdXJyZW50bHkgcGVuZGluZyBpbiBhIHJ1bm5pbmcgc2NoZWR1bGVyLCBhbmQgaG9sZGluZyB1cCB0aGUgbWFpbgotdGhyZWFkIHVudGlsIHRoZSBldmVudCBxdWV1ZSBpcyBlbXB0eS4gIEluc3RlYWQsIHRoZSBwcmVmZXJyZWQgYXBwcm9hY2gKLWlzIHRvIHVzZSB0aGUgOmNsYXNzOmB0aHJlYWRpbmcuVGltZXJgIGNsYXNzIGluc3RlYWQuCi0KLUV4YW1wbGU6OgotCi0gICAgPj4+IGltcG9ydCB0aW1lCi0gICAgPj4+IGZyb20gdGhyZWFkaW5nIGltcG9ydCBUaW1lcgotICAgID4+PiBkZWYgcHJpbnRfdGltZSgpOgotICAgIC4uLiAgICAgcHJpbnQoIkZyb20gcHJpbnRfdGltZSIsIHRpbWUudGltZSgpKQotICAgIC4uLgotICAgID4+PiBkZWYgcHJpbnRfc29tZV90aW1lcygpOgotICAgIC4uLiAgICAgcHJpbnQodGltZS50aW1lKCkpCi0gICAgLi4uICAgICBUaW1lcig1LCBwcmludF90aW1lLCAoKSkuc3RhcnQoKQotICAgIC4uLiAgICAgVGltZXIoMTAsIHByaW50X3RpbWUsICgpKS5zdGFydCgpCi0gICAgLi4uICAgICB0aW1lLnNsZWVwKDExKSAgIyBzbGVlcCB3aGlsZSB0aW1lLWRlbGF5IGV2ZW50cyBleGVjdXRlCi0gICAgLi4uICAgICBwcmludCh0aW1lLnRpbWUoKSkKLSAgICAuLi4KLSAgICA+Pj4gcHJpbnRfc29tZV90aW1lcygpCi0gICAgOTMwMzQzNjkwLjI1NwotICAgIEZyb20gcHJpbnRfdGltZSA5MzAzNDM2OTUuMjc0Ci0gICAgRnJvbSBwcmludF90aW1lIDkzMDM0MzcwMC4yNzMKLSAgICA5MzAzNDM3MDEuMzAxCi0KLQogLi4gX3NjaGVkdWxlci1vYmplY3RzOgogCiBTY2hlZHVsZXIgT2JqZWN0cwpAQCAtNzksMjYgKzU4LDM4IEBACiA6Y2xhc3M6YHNjaGVkdWxlcmAgaW5zdGFuY2VzIGhhdmUgdGhlIGZvbGxvd2luZyBtZXRob2RzIGFuZCBhdHRyaWJ1dGVzOgogCiAKLS4uIG1ldGhvZDo6IHNjaGVkdWxlci5lbnRlcmFicyh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCkKKy4uIG1ldGhvZDo6IHNjaGVkdWxlci5lbnRlcmFicyh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudD1bXSwga3dhcmdzPXt9KQogCiAgICBTY2hlZHVsZSBhIG5ldyBldmVudC4gVGhlICp0aW1lKiBhcmd1bWVudCBzaG91bGQgYmUgYSBudW1lcmljIHR5cGUgY29tcGF0aWJsZQogICAgd2l0aCB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSAqdGltZWZ1bmMqIGZ1bmN0aW9uIHBhc3NlZCAgdG8gdGhlIGNvbnN0cnVjdG9yLgogICAgRXZlbnRzIHNjaGVkdWxlZCBmb3IgdGhlIHNhbWUgKnRpbWUqIHdpbGwgYmUgZXhlY3V0ZWQgaW4gdGhlIG9yZGVyIG9mIHRoZWlyCiAgICAqcHJpb3JpdHkqLgogCi0gICBFeGVjdXRpbmcgdGhlIGV2ZW50IG1lYW5zIGV4ZWN1dGluZyBgYGFjdGlvbigqYXJndW1lbnQpYGAuICAqYXJndW1lbnQqIG11c3QgYmUgYQotICAgc2VxdWVuY2UgaG9sZGluZyB0aGUgcGFyYW1ldGVycyBmb3IgKmFjdGlvbiouCisgICBFeGVjdXRpbmcgdGhlIGV2ZW50IG1lYW5zIGV4ZWN1dGluZyBgYGFjdGlvbigqYXJndW1lbnQsICoqa3dhcmdzKWBgLgorICAgKmFyZ3VtZW50KiBtdXN0IGJlIGEgc2VxdWVuY2UgaG9sZGluZyB0aGUgcGFyYW1ldGVycyBmb3IgKmFjdGlvbiouCisgICAqa3dhcmdzKiBtdXN0IGJlIGEgZGljdGlvbmFyeSBob2xkaW5nIHRoZSBrZXl3b3JkIHBhcmFtZXRlcnMgZm9yICphY3Rpb24qLgogCiAgICBSZXR1cm4gdmFsdWUgaXMgYW4gZXZlbnQgd2hpY2ggbWF5IGJlIHVzZWQgZm9yIGxhdGVyIGNhbmNlbGxhdGlvbiBvZiB0aGUgZXZlbnQKICAgIChzZWUgOm1ldGg6YGNhbmNlbGApLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgKmFyZ3VtZW50KiBwYXJhbWV0ZXIgaXMgb3B0aW9uYWwuCiAKLS4uIG1ldGhvZDo6IHNjaGVkdWxlci5lbnRlcihkZWxheSwgcHJpb3JpdHksIGFjdGlvbiwgYXJndW1lbnQpCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgICAgICprd2FyZ3MqIHBhcmFtZXRlciB3YXMgYWRkZWQuCisKKworLi4gbWV0aG9kOjogc2NoZWR1bGVyLmVudGVyKGRlbGF5LCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudD1bXSwga3dhcmdzPXt9KQogCiAgICBTY2hlZHVsZSBhbiBldmVudCBmb3IgKmRlbGF5KiBtb3JlIHRpbWUgdW5pdHMuIE90aGVyIHRoYW4gdGhlIHJlbGF0aXZlIHRpbWUsIHRoZQogICAgb3RoZXIgYXJndW1lbnRzLCB0aGUgZWZmZWN0IGFuZCB0aGUgcmV0dXJuIHZhbHVlIGFyZSB0aGUgc2FtZSBhcyB0aG9zZSBmb3IKICAgIDptZXRoOmBlbnRlcmFic2AuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqYXJndW1lbnQqIHBhcmFtZXRlciBpcyBvcHRpb25hbC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisgICAgICAqa3dhcmdzKiBwYXJhbWV0ZXIgd2FzIGFkZGVkLgogCiAuLiBtZXRob2Q6OiBzY2hlZHVsZXIuY2FuY2VsKGV2ZW50KQogCkBAIC0xMTEsMTIgKzEwMiwxNSBAQAogICAgUmV0dXJuIHRydWUgaWYgdGhlIGV2ZW50IHF1ZXVlIGlzIGVtcHR5LgogCiAKLS4uIG1ldGhvZDo6IHNjaGVkdWxlci5ydW4oKQorLi4gbWV0aG9kOjogc2NoZWR1bGVyLnJ1bihibG9ja2luZz1UcnVlKQogCi0gICBSdW4gYWxsIHNjaGVkdWxlZCBldmVudHMuIFRoaXMgZnVuY3Rpb24gd2lsbCB3YWl0ICAodXNpbmcgdGhlIDpmdW5jOmBkZWxheWZ1bmNgCisgICBSdW4gYWxsIHNjaGVkdWxlZCBldmVudHMuIFRoaXMgbWV0aG9kIHdpbGwgd2FpdCAgKHVzaW5nIHRoZSA6ZnVuYzpgZGVsYXlmdW5jYAogICAgZnVuY3Rpb24gcGFzc2VkIHRvIHRoZSBjb25zdHJ1Y3RvcikgZm9yIHRoZSBuZXh0IGV2ZW50LCB0aGVuIGV4ZWN1dGUgaXQgYW5kIHNvCiAgICBvbiB1bnRpbCB0aGVyZSBhcmUgbm8gbW9yZSBzY2hlZHVsZWQgZXZlbnRzLgogCisgICBJZiAqYmxvY2tpbmcqIGlzIEZhbHNlIGV4ZWN1dGVzIHRoZSBzY2hlZHVsZWQgZXZlbnRzIGR1ZSB0byBleHBpcmUgc29vbmVzdAorICAgKGlmIGFueSkgYW5kIHRoZW4gcmV0dXJuLgorCiAgICBFaXRoZXIgKmFjdGlvbiogb3IgKmRlbGF5ZnVuYyogY2FuIHJhaXNlIGFuIGV4Y2VwdGlvbi4gIEluIGVpdGhlciBjYXNlLCB0aGUKICAgIHNjaGVkdWxlciB3aWxsIG1haW50YWluIGEgY29uc2lzdGVudCBzdGF0ZSBhbmQgcHJvcGFnYXRlIHRoZSBleGNlcHRpb24uICBJZiBhbgogICAgZXhjZXB0aW9uIGlzIHJhaXNlZCBieSAqYWN0aW9uKiwgdGhlIGV2ZW50IHdpbGwgbm90IGJlIGF0dGVtcHRlZCBpbiBmdXR1cmUgY2FsbHMKQEAgLTEyNyw2ICsxMjEsOSBAQAogICAgdGhlIGNhbGxpbmcgY29kZSBpcyByZXNwb25zaWJsZSBmb3IgY2FuY2VsaW5nICBldmVudHMgd2hpY2ggYXJlIG5vIGxvbmdlcgogICAgcGVydGluZW50LgogCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgICAgICpibG9ja2luZyogcGFyYW1ldGVyIHdhcyBhZGRlZC4KKwogLi4gYXR0cmlidXRlOjogc2NoZWR1bGVyLnF1ZXVlCiAKICAgIFJlYWQtb25seSBhdHRyaWJ1dGUgcmV0dXJuaW5nIGEgbGlzdCBvZiB1cGNvbWluZyBldmVudHMgaW4gdGhlIG9yZGVyIHRoZXkKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NlbGVjdC5yc3QgYi9Eb2MvbGlicmFyeS9zZWxlY3QucnN0CmluZGV4IGYxZmQxMjYuLmQ5ZDgwMmIgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3NlbGVjdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc2VsZWN0LnJzdApAQCAtNiw3ICs2LDggQEAKIAogCiBUaGlzIG1vZHVsZSBwcm92aWRlcyBhY2Nlc3MgdG8gdGhlIDpjOmZ1bmM6YHNlbGVjdGAgYW5kIDpjOmZ1bmM6YHBvbGxgIGZ1bmN0aW9ucwotYXZhaWxhYmxlIGluIG1vc3Qgb3BlcmF0aW5nIHN5c3RlbXMsIDpjOmZ1bmM6YGVwb2xsYCBhdmFpbGFibGUgb24gTGludXggMi41KyBhbmQKK2F2YWlsYWJsZSBpbiBtb3N0IG9wZXJhdGluZyBzeXN0ZW1zLCA6YzpmdW5jOmBkZXZwb2xsYCBhdmFpbGFibGUgb24KK1NvbGFyaXMgYW5kIGRlcml2YXRpdmVzLCA6YzpmdW5jOmBlcG9sbGAgYXZhaWxhYmxlIG9uIExpbnV4IDIuNSsgYW5kCiA6YzpmdW5jOmBrcXVldWVgIGF2YWlsYWJsZSBvbiBtb3N0IEJTRC4KIE5vdGUgdGhhdCBvbiBXaW5kb3dzLCBpdCBvbmx5IHdvcmtzIGZvciBzb2NrZXRzOyBvbiBvdGhlciBvcGVyYXRpbmcgc3lzdGVtcywKIGl0IGFsc28gd29ya3MgZm9yIG90aGVyIGZpbGUgdHlwZXMgKGluIHBhcnRpY3VsYXIsIG9uIFVuaXgsIGl0IHdvcmtzIG9uIHBpcGVzKS4KQEAgLTE4LDE3ICsxOSwzOSBAQAogCiAuLiBleGNlcHRpb246OiBlcnJvcgogCi0gICBUaGUgZXhjZXB0aW9uIHJhaXNlZCB3aGVuIGFuIGVycm9yIG9jY3Vycy4gIFRoZSBhY2NvbXBhbnlpbmcgdmFsdWUgaXMgYSBwYWlyCi0gICBjb250YWluaW5nIHRoZSBudW1lcmljIGVycm9yIGNvZGUgZnJvbSA6YzpkYXRhOmBlcnJub2AgYW5kIHRoZSBjb3JyZXNwb25kaW5nCi0gICBzdHJpbmcsIGFzIHdvdWxkIGJlIHByaW50ZWQgYnkgdGhlIEMgZnVuY3Rpb24gOmM6ZnVuYzpgcGVycm9yYC4KKyAgIEEgZGVwcmVjYXRlZCBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEZvbGxvd2luZyA6cGVwOmAzMTUxYCwgdGhpcyBjbGFzcyB3YXMgbWFkZSBhbiBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogCi0uLiBmdW5jdGlvbjo6IGVwb2xsKHNpemVoaW50PS0xKQorLi4gZnVuY3Rpb246OiBkZXZwb2xsKCkKIAotICAgKE9ubHkgc3VwcG9ydGVkIG9uIExpbnV4IDIuNS40NCBhbmQgbmV3ZXIuKSAgUmV0dXJucyBhbiBlZGdlIHBvbGxpbmcgb2JqZWN0LAotICAgd2hpY2ggY2FuIGJlIHVzZWQgYXMgRWRnZSBvciBMZXZlbCBUcmlnZ2VyZWQgaW50ZXJmYWNlIGZvciBJL08gZXZlbnRzOyBzZWUKLSAgIHNlY3Rpb24gOnJlZjpgZXBvbGwtb2JqZWN0c2AgYmVsb3cgZm9yIHRoZSBtZXRob2RzIHN1cHBvcnRlZCBieSBlcG9sbGluZwotICAgb2JqZWN0cy4KKyAgIChPbmx5IHN1cHBvcnRlZCBvbiBTb2xhcmlzIGFuZCBkZXJpdmF0aXZlcy4pICBSZXR1cm5zIGEgYGAvZGV2L3BvbGxgYAorICAgcG9sbGluZyBvYmplY3Q7IHNlZSBzZWN0aW9uIDpyZWY6YGRldnBvbGwtb2JqZWN0c2AgYmVsb3cgZm9yIHRoZQorICAgbWV0aG9kcyBzdXBwb3J0ZWQgYnkgZGV2cG9sbCBvYmplY3RzLgorCisgICA6YzpmdW5jOmBkZXZwb2xsYCBvYmplY3RzIGFyZSBsaW5rZWQgdG8gdGhlIG51bWJlciBvZiBmaWxlCisgICBkZXNjcmlwdG9ycyBhbGxvd2VkIGF0IHRoZSB0aW1lIG9mIGluc3RhbnRpYXRpb24uIElmIHlvdXIgcHJvZ3JhbQorICAgcmVkdWNlcyB0aGlzIHZhbHVlLCA6YzpmdW5jOmBkZXZwb2xsYCB3aWxsIGZhaWwuIElmIHlvdXIgcHJvZ3JhbQorICAgaW5jcmVhc2VzIHRoaXMgdmFsdWUsIDpjOmZ1bmM6YGRldnBvbGxgIG1heSByZXR1cm4gYW4KKyAgIGluY29tcGxldGUgbGlzdCBvZiBhY3RpdmUgZmlsZSBkZXNjcmlwdG9ycy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGZ1bmN0aW9uOjogZXBvbGwoc2l6ZWhpbnQ9LTEsIGZsYWdzPTApCisKKyAgIChPbmx5IHN1cHBvcnRlZCBvbiBMaW51eCAyLjUuNDQgYW5kIG5ld2VyLikgUmV0dXJuIGFuIGVkZ2UgcG9sbGluZyBvYmplY3QsCisgICB3aGljaCBjYW4gYmUgdXNlZCBhcyBFZGdlIG9yIExldmVsIFRyaWdnZXJlZCBpbnRlcmZhY2UgZm9yIEkvTworICAgZXZlbnRzLiAqc2l6ZWhpbnQqIGlzIGRlcHJlY2F0ZWQgYW5kIGNvbXBsZXRlbHkgaWdub3JlZC4gKmZsYWdzKiBjYW4gYmUgc2V0CisgICB0byA6Y29uc3Q6YEVQT0xMX0NMT0VYRUNgLCB3aGljaCBjYXVzZXMgdGhlIGVwb2xsIGRlc2NyaXB0b3IgdG8gYmUgY2xvc2VkCisgICBhdXRvbWF0aWNhbGx5IHdoZW4gOmZ1bmM6YG9zLmV4ZWN2ZWAgaXMgY2FsbGVkLiBTZWUgc2VjdGlvbgorICAgOnJlZjpgZXBvbGwtb2JqZWN0c2AgYmVsb3cgZm9yIHRoZSBtZXRob2RzIHN1cHBvcnRlZCBieSBlcG9sbGluZyBvYmplY3RzLgorCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisKKyAgICAgIEFkZGVkIHRoZSAqZmxhZ3MqIHBhcmFtZXRlci4KIAogCiAuLiBmdW5jdGlvbjo6IHBvbGwoKQpAQCAtMTA2LDYgKzEyOSw3NCBAQAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKIAorLi4gX2RldnBvbGwtb2JqZWN0czoKKworYGAvZGV2L3BvbGxgYCBQb2xsaW5nIE9iamVjdHMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgaHR0cDovL2RldmVsb3BlcnMuc3VuLmNvbS9zb2xhcmlzL2FydGljbGVzL3VzaW5nX2RldnBvbGwuaHRtbAorICAgaHR0cDovL2RldmVsb3BlcnMuc3VuLmNvbS9zb2xhcmlzL2FydGljbGVzL3BvbGxpbmdfZWZmaWNpZW50Lmh0bWwKKworU29sYXJpcyBhbmQgZGVyaXZhdGl2ZXMgaGF2ZSBgYC9kZXYvcG9sbGBgLiBXaGlsZSA6YzpmdW5jOmBzZWxlY3RgIGlzCitPKGhpZ2hlc3QgZmlsZSBkZXNjcmlwdG9yKSBhbmQgOmM6ZnVuYzpgcG9sbGAgaXMgTyhudW1iZXIgb2YgZmlsZQorZGVzY3JpcHRvcnMpLCBgYC9kZXYvcG9sbGBgIGlzIE8oYWN0aXZlIGZpbGUgZGVzY3JpcHRvcnMpLgorCitgYC9kZXYvcG9sbGBgIGJlaGF2aW91ciBpcyB2ZXJ5IGNsb3NlIHRvIHRoZSBzdGFuZGFyZCA6YzpmdW5jOmBwb2xsYAorb2JqZWN0LgorCisKKy4uIG1ldGhvZDo6IGRldnBvbGwucmVnaXN0ZXIoZmRbLCBldmVudG1hc2tdKQorCisgICBSZWdpc3RlciBhIGZpbGUgZGVzY3JpcHRvciB3aXRoIHRoZSBwb2xsaW5nIG9iamVjdC4gIEZ1dHVyZSBjYWxscyB0byB0aGUKKyAgIDptZXRoOmBwb2xsYCBtZXRob2Qgd2lsbCB0aGVuIGNoZWNrIHdoZXRoZXIgdGhlIGZpbGUgZGVzY3JpcHRvciBoYXMgYW55IHBlbmRpbmcKKyAgIEkvTyBldmVudHMuICAqZmQqIGNhbiBiZSBlaXRoZXIgYW4gaW50ZWdlciwgb3IgYW4gb2JqZWN0IHdpdGggYSA6bWV0aDpgZmlsZW5vYAorICAgbWV0aG9kIHRoYXQgcmV0dXJucyBhbiBpbnRlZ2VyLiAgRmlsZSBvYmplY3RzIGltcGxlbWVudCA6bWV0aDpgZmlsZW5vYCwgc28gdGhleQorICAgY2FuIGFsc28gYmUgdXNlZCBhcyB0aGUgYXJndW1lbnQuCisKKyAgICpldmVudG1hc2sqIGlzIGFuIG9wdGlvbmFsIGJpdG1hc2sgZGVzY3JpYmluZyB0aGUgdHlwZSBvZiBldmVudHMgeW91IHdhbnQgdG8KKyAgIGNoZWNrIGZvci4gVGhlIGNvbnN0YW50cyBhcmUgdGhlIHNhbWUgdGhhdCB3aXRoIDpjOmZ1bmM6YHBvbGxgCisgICBvYmplY3QuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGEgY29tYmluYXRpb24gb2YgdGhlIGNvbnN0YW50cyA6Y29uc3Q6YFBPTExJTmAsCisgICA6Y29uc3Q6YFBPTExQUklgLCBhbmQgOmNvbnN0OmBQT0xMT1VUYC4KKworICAgLi4gd2FybmluZzo6CisKKyAgICAgIFJlZ2lzdGVyaW5nIGEgZmlsZSBkZXNjcmlwdG9yIHRoYXQncyBhbHJlYWR5IHJlZ2lzdGVyZWQgaXMgbm90IGFuCisgICAgICBlcnJvciwgYnV0IHRoZSByZXN1bHQgaXMgdW5kZWZpbmVkLiBUaGUgYXBwcm9waWF0ZSBhY3Rpb24gaXMgdG8KKyAgICAgIHVucmVnaXN0ZXIgb3IgbW9kaWZ5IGl0IGZpcnN0LiBUaGlzIGlzIGFuIGltcG9ydGFudCBkaWZmZXJlbmNlCisgICAgICBjb21wYXJlZCB3aXRoIDpjOmZ1bmM6YHBvbGxgLgorCisKKy4uIG1ldGhvZDo6IGRldnBvbGwubW9kaWZ5KGZkWywgZXZlbnRtYXNrXSkKKworICAgVGhpcyBtZXRob2QgZG9lcyBhbiA6bWV0aDpgdW5yZWdpc3RlcmAgZm9sbG93ZWQgYnkgYQorICAgOm1ldGg6YHJlZ2lzdGVyYC4gSXQgaXMgKGEgYml0KSBtb3JlIGVmZmljaWVudCB0aGF0IGRvaW5nIHRoZSBzYW1lCisgICBleHBsaWNpdGx5LgorCisKKy4uIG1ldGhvZDo6IGRldnBvbGwudW5yZWdpc3RlcihmZCkKKworICAgUmVtb3ZlIGEgZmlsZSBkZXNjcmlwdG9yIGJlaW5nIHRyYWNrZWQgYnkgYSBwb2xsaW5nIG9iamVjdC4gIEp1c3QgbGlrZSB0aGUKKyAgIDptZXRoOmByZWdpc3RlcmAgbWV0aG9kLCAqZmQqIGNhbiBiZSBhbiBpbnRlZ2VyIG9yIGFuIG9iamVjdCB3aXRoIGEKKyAgIDptZXRoOmBmaWxlbm9gIG1ldGhvZCB0aGF0IHJldHVybnMgYW4gaW50ZWdlci4KKworICAgQXR0ZW1wdGluZyB0byByZW1vdmUgYSBmaWxlIGRlc2NyaXB0b3IgdGhhdCB3YXMgbmV2ZXIgcmVnaXN0ZXJlZCBpcworICAgc2FmZWx5IGlnbm9yZWQuCisKKworLi4gbWV0aG9kOjogZGV2cG9sbC5wb2xsKFt0aW1lb3V0XSkKKworICAgUG9sbHMgdGhlIHNldCBvZiByZWdpc3RlcmVkIGZpbGUgZGVzY3JpcHRvcnMsIGFuZCByZXR1cm5zIGEgcG9zc2libHktZW1wdHkgbGlzdAorICAgY29udGFpbmluZyBgYChmZCwgZXZlbnQpYGAgMi10dXBsZXMgZm9yIHRoZSBkZXNjcmlwdG9ycyB0aGF0IGhhdmUgZXZlbnRzIG9yCisgICBlcnJvcnMgdG8gcmVwb3J0LiAqZmQqIGlzIHRoZSBmaWxlIGRlc2NyaXB0b3IsIGFuZCAqZXZlbnQqIGlzIGEgYml0bWFzayB3aXRoCisgICBiaXRzIHNldCBmb3IgdGhlIHJlcG9ydGVkIGV2ZW50cyBmb3IgdGhhdCBkZXNjcmlwdG9yIC0tLSA6Y29uc3Q6YFBPTExJTmAgZm9yCisgICB3YWl0aW5nIGlucHV0LCA6Y29uc3Q6YFBPTExPVVRgIHRvIGluZGljYXRlIHRoYXQgdGhlIGRlc2NyaXB0b3IgY2FuIGJlIHdyaXR0ZW4KKyAgIHRvLCBhbmQgc28gZm9ydGguIEFuIGVtcHR5IGxpc3QgaW5kaWNhdGVzIHRoYXQgdGhlIGNhbGwgdGltZWQgb3V0IGFuZCBubyBmaWxlCisgICBkZXNjcmlwdG9ycyBoYWQgYW55IGV2ZW50cyB0byByZXBvcnQuIElmICp0aW1lb3V0KiBpcyBnaXZlbiwgaXQgc3BlY2lmaWVzIHRoZQorICAgbGVuZ3RoIG9mIHRpbWUgaW4gbWlsbGlzZWNvbmRzIHdoaWNoIHRoZSBzeXN0ZW0gd2lsbCB3YWl0IGZvciBldmVudHMgYmVmb3JlCisgICByZXR1cm5pbmcuIElmICp0aW1lb3V0KiBpcyBvbWl0dGVkLCAtMSwgb3IgOmNvbnN0OmBOb25lYCwgdGhlIGNhbGwgd2lsbAorICAgYmxvY2sgdW50aWwgdGhlcmUgaXMgYW4gZXZlbnQgZm9yIHRoaXMgcG9sbCBvYmplY3QuCisKKwogLi4gX2Vwb2xsLW9iamVjdHM6CiAKIEVkZ2UgYW5kIExldmVsIFRyaWdnZXIgUG9sbGluZyAoZXBvbGwpIE9iamVjdHMKQEAgLTE2NSwxMSArMjU2LDYgQEAKIAogICAgUmVnaXN0ZXIgYSBmZCBkZXNjcmlwdG9yIHdpdGggdGhlIGVwb2xsIG9iamVjdC4KIAotICAgLi4gbm90ZTo6Ci0KLSAgICAgUmVnaXN0ZXJpbmcgYSBmaWxlIGRlc2NyaXB0b3IgdGhhdCdzIGFscmVhZHkgcmVnaXN0ZXJlZCByYWlzZXMgYW4KLSAgICAgSU9FcnJvciAtLSBjb250cmFyeSB0byA6cmVmOmBwb2xsLW9iamVjdHNgJ3MgcmVnaXN0ZXIuCi0KIAogLi4gbWV0aG9kOjogZXBvbGwubW9kaWZ5KGZkLCBldmVudG1hc2spCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NobGV4LnJzdCBiL0RvYy9saWJyYXJ5L3NobGV4LnJzdAppbmRleCAwMTEzZmI3Li45NDFlMDkwIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9zaGxleC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc2hsZXgucnN0CkBAIC0zNCw2ICszNCw0MCBAQAogICAgICAgcGFzc2luZyBgYE5vbmVgYCBmb3IgKnMqIHdpbGwgcmVhZCB0aGUgc3RyaW5nIHRvIHNwbGl0IGZyb20gc3RhbmRhcmQKICAgICAgIGlucHV0LgogCisKKy4uIGZ1bmN0aW9uOjogcXVvdGUocykKKworICAgUmV0dXJuIGEgc2hlbGwtZXNjYXBlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgKnMqLiAgVGhlIHJldHVybmVkIHZhbHVlIGlzIGEKKyAgIHN0cmluZyB0aGF0IGNhbiBzYWZlbHkgYmUgdXNlZCBhcyBvbmUgdG9rZW4gaW4gYSBzaGVsbCBjb21tYW5kIGxpbmUsIGZvcgorICAgY2FzZXMgd2hlcmUgeW91IGNhbm5vdCB1c2UgYSBsaXN0LgorCisgICBUaGlzIGlkaW9tIHdvdWxkIGJlIHVuc2FmZTo6CisKKyAgICAgID4+PiBmaWxlbmFtZSA9ICdzb21lZmlsZTsgcm0gLXJmIH4nCisgICAgICA+Pj4gY29tbWFuZCA9ICdscyAtbCB7fScuZm9ybWF0KGZpbGVuYW1lKQorICAgICAgPj4+IHByaW50KGNvbW1hbmQpICAjIGV4ZWN1dGVkIGJ5IGEgc2hlbGw6IGJvb20hCisgICAgICBscyAtbCBzb21lZmlsZTsgcm0gLXJmIH4KKworICAgOmZ1bmM6YHF1b3RlYCBsZXRzIHlvdSBwbHVnIHRoZSBzZWN1cml0eSBob2xlOjoKKworICAgICAgPj4+IGNvbW1hbmQgPSAnbHMgLWwge30nLmZvcm1hdChxdW90ZShmaWxlbmFtZSkpCisgICAgICA+Pj4gcHJpbnQoY29tbWFuZCkKKyAgICAgIGxzIC1sICdzb21lZmlsZTsgcm0gLXJmIH4nCisgICAgICA+Pj4gcmVtb3RlX2NvbW1hbmQgPSAnc3NoIGhvbWUge30nLmZvcm1hdChxdW90ZShjb21tYW5kKSkKKyAgICAgID4+PiBwcmludChyZW1vdGVfY29tbWFuZCkKKyAgICAgIHNzaCBob21lICdscyAtbCAnIiciJ3NvbWVmaWxlOyBybSAtcmYgficiJyInJworCisgICBUaGUgcXVvdGluZyBpcyBjb21wYXRpYmxlIHdpdGggVU5JWCBzaGVsbHMgYW5kIHdpdGggOmZ1bmM6YHNwbGl0YDoKKworICAgICAgPj4+IHJlbW90ZV9jb21tYW5kID0gc3BsaXQocmVtb3RlX2NvbW1hbmQpCisgICAgICA+Pj4gcmVtb3RlX2NvbW1hbmQKKyAgICAgIFsnc3NoJywgJ2hvbWUnLCAibHMgLWwgJ3NvbWVmaWxlOyBybSAtcmYgficiXQorICAgICAgPj4+IGNvbW1hbmQgPSBzcGxpdChyZW1vdGVfY29tbWFuZFstMV0pCisgICAgICA+Pj4gY29tbWFuZAorICAgICAgWydscycsICctbCcsICdzb21lZmlsZTsgcm0gLXJmIH4nXQorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogVGhlIDptb2Q6YHNobGV4YCBtb2R1bGUgZGVmaW5lcyB0aGUgZm9sbG93aW5nIGNsYXNzOgogCiAKQEAgLTI4Miw1ICszMTYsNCBAQAogCiAqIEVPRiBpcyBzaWduYWxlZCB3aXRoIGEgOmNvbnN0OmBOb25lYCB2YWx1ZTsKIAotKiBRdW90ZWQgZW1wdHkgc3RyaW5ncyAoYGAnJ2BgKSBhcmUgYWxsb3dlZDsKLQorKiBRdW90ZWQgZW1wdHkgc3RyaW5ncyAoYGAnJ2BgKSBhcmUgYWxsb3dlZC4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NodXRpbC5yc3QgYi9Eb2MvbGlicmFyeS9zaHV0aWwucnN0CmluZGV4IDE4ZjY0ODUuLjIxZWU5NGYgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3NodXRpbC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc2h1dGlsLnJzdApAQCAtNDcsNDUgKzQ3LDY5IEBACiAgICBiZSBjb3BpZWQuCiAKIAotLi4gZnVuY3Rpb246OiBjb3B5ZmlsZShzcmMsIGRzdCkKKy4uIGZ1bmN0aW9uOjogY29weWZpbGUoc3JjLCBkc3RbLCBzeW1saW5rcz1GYWxzZV0pCiAKICAgIENvcHkgdGhlIGNvbnRlbnRzIChubyBtZXRhZGF0YSkgb2YgdGhlIGZpbGUgbmFtZWQgKnNyYyogdG8gYSBmaWxlIG5hbWVkCiAgICAqZHN0Ki4gICpkc3QqIG11c3QgYmUgdGhlIGNvbXBsZXRlIHRhcmdldCBmaWxlIG5hbWU7IGxvb2sgYXQKICAgIDpmdW5jOmBzaHV0aWwuY29weWAgZm9yIGEgY29weSB0aGF0IGFjY2VwdHMgYSB0YXJnZXQgZGlyZWN0b3J5IHBhdGguICBJZgogICAgKnNyYyogYW5kICpkc3QqIGFyZSB0aGUgc2FtZSBmaWxlcywgOmV4YzpgRXJyb3JgIGlzIHJhaXNlZC4KLSAgIFRoZSBkZXN0aW5hdGlvbiBsb2NhdGlvbiBtdXN0IGJlIHdyaXRhYmxlOyBvdGhlcndpc2UsICBhbiA6ZXhjOmBJT0Vycm9yYCBleGNlcHRpb24KKworICAgVGhlIGRlc3RpbmF0aW9uIGxvY2F0aW9uIG11c3QgYmUgd3JpdGFibGU7IG90aGVyd2lzZSwgIGFuIDpleGM6YE9TRXJyb3JgIGV4Y2VwdGlvbgogICAgd2lsbCBiZSByYWlzZWQuIElmICpkc3QqIGFscmVhZHkgZXhpc3RzLCBpdCB3aWxsIGJlIHJlcGxhY2VkLiAgIFNwZWNpYWwgZmlsZXMKICAgIHN1Y2ggYXMgY2hhcmFjdGVyIG9yIGJsb2NrIGRldmljZXMgYW5kIHBpcGVzIGNhbm5vdCBiZSBjb3BpZWQgd2l0aCB0aGlzCiAgICBmdW5jdGlvbi4gICpzcmMqIGFuZCAqZHN0KiBhcmUgcGF0aCBuYW1lcyBnaXZlbiBhcyBzdHJpbmdzLgogCisgICBJZiAqc3ltbGlua3MqIGlzIHRydWUgYW5kICpzcmMqIGlzIGEgc3ltYm9saWMgbGluaywgYSBuZXcgc3ltYm9saWMgbGluayB3aWxsCisgICBiZSBjcmVhdGVkIGluc3RlYWQgb2YgY29weWluZyB0aGUgZmlsZSAqc3JjKiBwb2ludHMgdG8uCiAKLS4uIGZ1bmN0aW9uOjogY29weW1vZGUoc3JjLCBkc3QpCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgOmV4YzpgSU9FcnJvcmAgdXNlZCB0byBiZSByYWlzZWQgaW5zdGVhZCBvZiA6ZXhjOmBPU0Vycm9yYC4KKyAgICAgIEFkZGVkICpzeW1saW5rcyogYXJndW1lbnQuCisKKworLi4gZnVuY3Rpb246OiBjb3B5bW9kZShzcmMsIGRzdFssIHN5bWxpbmtzPUZhbHNlXSkKIAogICAgQ29weSB0aGUgcGVybWlzc2lvbiBiaXRzIGZyb20gKnNyYyogdG8gKmRzdCouICBUaGUgZmlsZSBjb250ZW50cywgb3duZXIsIGFuZAotICAgZ3JvdXAgYXJlIHVuYWZmZWN0ZWQuICAqc3JjKiBhbmQgKmRzdCogYXJlIHBhdGggbmFtZXMgZ2l2ZW4gYXMgc3RyaW5ncy4KKyAgIGdyb3VwIGFyZSB1bmFmZmVjdGVkLiAgKnNyYyogYW5kICpkc3QqIGFyZSBwYXRoIG5hbWVzIGdpdmVuIGFzIHN0cmluZ3MuICBJZgorICAgKnN5bWxpbmtzKiBpcyB0cnVlLCAqc3JjKiBhIHN5bWJvbGljIGxpbmsgYW5kIHRoZSBvcGVyYXRpbmcgc3lzdGVtIHN1cHBvcnRzCisgICBtb2RlcyBmb3Igc3ltYm9saWMgbGlua3MgKGZvciBleGFtcGxlIEJTRC1iYXNlZCBvbmVzKSwgdGhlIG1vZGUgb2YgdGhlIGxpbmsKKyAgIHdpbGwgYmUgY29waWVkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgKnN5bWxpbmtzKiBhcmd1bWVudC4KIAotLi4gZnVuY3Rpb246OiBjb3B5c3RhdChzcmMsIGRzdCkKKy4uIGZ1bmN0aW9uOjogY29weXN0YXQoc3JjLCBkc3RbLCBzeW1saW5rcz1GYWxzZV0pCiAKICAgIENvcHkgdGhlIHBlcm1pc3Npb24gYml0cywgbGFzdCBhY2Nlc3MgdGltZSwgbGFzdCBtb2RpZmljYXRpb24gdGltZSwgYW5kIGZsYWdzCiAgICBmcm9tICpzcmMqIHRvICpkc3QqLiAgVGhlIGZpbGUgY29udGVudHMsIG93bmVyLCBhbmQgZ3JvdXAgYXJlIHVuYWZmZWN0ZWQuICAqc3JjKgotICAgYW5kICpkc3QqIGFyZSBwYXRoIG5hbWVzIGdpdmVuIGFzIHN0cmluZ3MuCisgICBhbmQgKmRzdCogYXJlIHBhdGggbmFtZXMgZ2l2ZW4gYXMgc3RyaW5ncy4gIElmICpzcmMqIGFuZCAqZHN0KiBhcmUgYm90aAorICAgc3ltYm9saWMgbGlua3MgYW5kICpzeW1saW5rcyogdHJ1ZSwgdGhlIHN0YXRzIG9mIHRoZSBsaW5rIHdpbGwgYmUgY29waWVkIGFzCisgICBmYXIgYXMgdGhlIHBsYXRmb3JtIGFsbG93cy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkICpzeW1saW5rcyogYXJndW1lbnQuCiAKLS4uIGZ1bmN0aW9uOjogY29weShzcmMsIGRzdCkKKy4uIGZ1bmN0aW9uOjogY29weShzcmMsIGRzdFssIHN5bWxpbmtzPUZhbHNlXSkpCiAKICAgIENvcHkgdGhlIGZpbGUgKnNyYyogdG8gdGhlIGZpbGUgb3IgZGlyZWN0b3J5ICpkc3QqLiAgSWYgKmRzdCogaXMgYSBkaXJlY3RvcnksIGEKICAgIGZpbGUgd2l0aCB0aGUgc2FtZSBiYXNlbmFtZSBhcyAqc3JjKiAgaXMgY3JlYXRlZCAob3Igb3ZlcndyaXR0ZW4pIGluIHRoZQogICAgZGlyZWN0b3J5IHNwZWNpZmllZC4gIFBlcm1pc3Npb24gYml0cyBhcmUgY29waWVkLiAgKnNyYyogYW5kICpkc3QqIGFyZSBwYXRoCi0gICBuYW1lcyBnaXZlbiBhcyBzdHJpbmdzLgorICAgbmFtZXMgZ2l2ZW4gYXMgc3RyaW5ncy4gIElmICpzeW1saW5rcyogaXMgdHJ1ZSwgc3ltYm9saWMgbGlua3Mgd29uJ3QgYmUKKyAgIGZvbGxvd2VkIGJ1dCByZWNyZWF0ZWQgaW5zdGVhZCAtLSB0aGlzIHJlc2VtYmxlcyBHTlUncyA6cHJvZ3JhbTpgY3AgLVBgLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgKnN5bWxpbmtzKiBhcmd1bWVudC4KIAotLi4gZnVuY3Rpb246OiBjb3B5MihzcmMsIGRzdCkKKy4uIGZ1bmN0aW9uOjogY29weTIoc3JjLCBkc3RbLCBzeW1saW5rcz1GYWxzZV0pCiAKICAgIFNpbWlsYXIgdG8gOmZ1bmM6YHNodXRpbC5jb3B5YCwgYnV0IG1ldGFkYXRhIGlzIGNvcGllZCBhcyB3ZWxsIC0tIGluIGZhY3QsCiAgICB0aGlzIGlzIGp1c3QgOmZ1bmM6YHNodXRpbC5jb3B5YCBmb2xsb3dlZCBieSA6ZnVuYzpgY29weXN0YXRgLiAgVGhpcyBpcwotICAgc2ltaWxhciB0byB0aGUgVW5peCBjb21tYW5kIDpwcm9ncmFtOmBjcCAtcGAuCisgICBzaW1pbGFyIHRvIHRoZSBVbml4IGNvbW1hbmQgOnByb2dyYW06YGNwIC1wYC4gIElmICpzeW1saW5rcyogaXMgdHJ1ZSwKKyAgIHN5bWJvbGljIGxpbmtzIHdvbid0IGJlIGZvbGxvd2VkIGJ1dCByZWNyZWF0ZWQgaW5zdGVhZCAtLSB0aGlzIHJlc2VtYmxlcworICAgR05VJ3MgOnByb2dyYW06YGNwIC1QYC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkICpzeW1saW5rcyogYXJndW1lbnQuCiAKIC4uIGZ1bmN0aW9uOjogaWdub3JlX3BhdHRlcm5zKFwqcGF0dGVybnMpCiAKQEAgLTEwMyw5ICsxMjcsOSBAQAogICAgOmZ1bmM6YHNodXRpbC5jb3B5MmAuCiAKICAgIElmICpzeW1saW5rcyogaXMgdHJ1ZSwgc3ltYm9saWMgbGlua3MgaW4gdGhlIHNvdXJjZSB0cmVlIGFyZSByZXByZXNlbnRlZCBhcwotICAgc3ltYm9saWMgbGlua3MgaW4gdGhlIG5ldyB0cmVlLCBidXQgdGhlIG1ldGFkYXRhIG9mIHRoZSBvcmlnaW5hbCBsaW5rcyBpcyBOT1QKLSAgIGNvcGllZDsgaWYgZmFsc2Ugb3Igb21pdHRlZCwgdGhlIGNvbnRlbnRzIGFuZCBtZXRhZGF0YSBvZiB0aGUgbGlua2VkIGZpbGVzCi0gICBhcmUgY29waWVkIHRvIHRoZSBuZXcgdHJlZS4KKyAgIHN5bWJvbGljIGxpbmtzIGluIHRoZSBuZXcgdHJlZSBhbmQgdGhlIG1ldGFkYXRhIG9mIHRoZSBvcmlnaW5hbCBsaW5rcyB3aWxsCisgICBiZSBjb3BpZWQgYXMgZmFyIGFzIHRoZSBwbGF0Zm9ybSBhbGxvd3M7IGlmIGZhbHNlIG9yIG9taXR0ZWQsIHRoZSBjb250ZW50cworICAgYW5kIG1ldGFkYXRhIG9mIHRoZSBsaW5rZWQgZmlsZXMgYXJlIGNvcGllZCB0byB0aGUgbmV3IHRyZWUuCiAKICAgIFdoZW4gKnN5bWxpbmtzKiBpcyBmYWxzZSwgaWYgdGhlIGZpbGUgcG9pbnRlZCBieSB0aGUgc3ltbGluayBkb2Vzbid0CiAgICBleGlzdCwgYSBleGNlcHRpb24gd2lsbCBiZSBhZGRlZCBpbiB0aGUgbGlzdCBvZiBlcnJvcnMgcmFpc2VkIGluCkBAIC0xMjksNyArMTUzLDcgQEAKICAgIElmICpjb3B5X2Z1bmN0aW9uKiBpcyBnaXZlbiwgaXQgbXVzdCBiZSBhIGNhbGxhYmxlIHRoYXQgd2lsbCBiZSB1c2VkIHRvIGNvcHkKICAgIGVhY2ggZmlsZS4gSXQgd2lsbCBiZSBjYWxsZWQgd2l0aCB0aGUgc291cmNlIHBhdGggYW5kIHRoZSBkZXN0aW5hdGlvbiBwYXRoCiAgICBhcyBhcmd1bWVudHMuIEJ5IGRlZmF1bHQsIDpmdW5jOmBzaHV0aWwuY29weTJgIGlzIHVzZWQsIGJ1dCBhbnkgZnVuY3Rpb24KLSAgIHRoYXQgc3VwcG9ydHMgdGhlIHNhbWUgc2lnbmF0dXJlIChsaWtlIDpmdW5jOmBjb3B5YCkgY2FuIGJlIHVzZWQuCisgICB0aGF0IHN1cHBvcnRzIHRoZSBzYW1lIHNpZ25hdHVyZSAobGlrZSA6ZnVuYzpgc2h1dGlsLmNvcHlgKSBjYW4gYmUgdXNlZC4KIAogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIKICAgICAgIEFkZGVkIHRoZSAqY29weV9mdW5jdGlvbiogYXJndW1lbnQgdG8gYmUgYWJsZSB0byBwcm92aWRlIGEgY3VzdG9tIGNvcHkKQEAgLTEzOSw2ICsxNjMsOSBAQAogICAgICAgQWRkZWQgdGhlICppZ25vcmVfZGFuZ2xpbmdfc3ltbGlua3MqIGFyZ3VtZW50IHRvIHNpbGVudCBkYW5nbGluZyBzeW1saW5rcwogICAgICAgZXJyb3JzIHdoZW4gKnN5bWxpbmtzKiBpcyBmYWxzZS4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIENvcHkgbWV0YWRhdGEgd2hlbiAqc3ltbGlua3MqIGlzIGZhbHNlLgorCiAKIC4uIGZ1bmN0aW9uOjogcm10cmVlKHBhdGgsIGlnbm9yZV9lcnJvcnM9RmFsc2UsIG9uZXJyb3I9Tm9uZSkKIApAQCAtMTczLDcgKzIwMCwzNSBAQAogCiAgICBJZiB0aGUgZGVzdGluYXRpb24gaXMgb24gdGhlIGN1cnJlbnQgZmlsZXN5c3RlbSwgdGhlbiA6ZnVuYzpgb3MucmVuYW1lYCBpcwogICAgdXNlZC4gIE90aGVyd2lzZSwgKnNyYyogaXMgY29waWVkICh1c2luZyA6ZnVuYzpgc2h1dGlsLmNvcHkyYCkgdG8gKmRzdCogYW5kCi0gICB0aGVuIHJlbW92ZWQuCisgICB0aGVuIHJlbW92ZWQuIEluIGNhc2Ugb2Ygc3ltbGlua3MsIGEgbmV3IHN5bWxpbmsgcG9pbnRpbmcgdG8gdGhlIHRhcmdldCBvZgorICAgKnNyYyogd2lsbCBiZSBjcmVhdGVkIGluIG9yIGFzICpkc3QqIGFuZCAqc3JjKiB3aWxsIGJlIHJlbW92ZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBZGRlZCBleHBsaWNpdCBzeW1saW5rIGhhbmRsaW5nIGZvciBmb3JlaWduIGZpbGVzeXN0ZW1zLCB0aHVzIGFkYXB0aW5nCisgICAgICBpdCB0byB0aGUgYmVoYXZpb3Igb2YgR05VJ3MgOnByb2dyYW06YG12YC4KKworLi4gZnVuY3Rpb246OiBkaXNrX3VzYWdlKHBhdGgpCisKKyAgIFJldHVybiBkaXNrIHVzYWdlIHN0YXRpc3RpY3MgYWJvdXQgdGhlIGdpdmVuIHBhdGggYXMgYSA6dGVybTpgbmFtZWQgdHVwbGVgCisgICB3aXRoIHRoZSBhdHRyaWJ1dGVzICp0b3RhbCosICp1c2VkKiBhbmQgKmZyZWUqLCB3aGljaCBhcmUgdGhlIGFtb3VudCBvZgorICAgdG90YWwsIHVzZWQgYW5kIGZyZWUgc3BhY2UsIGluIGJ5dGVzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworICAgQXZhaWxhYmlsaXR5OiBVbml4LCBXaW5kb3dzLgorCisuLiBmdW5jdGlvbjo6IGNob3duKHBhdGgsIHVzZXI9Tm9uZSwgZ3JvdXA9Tm9uZSkKKworICAgQ2hhbmdlIG93bmVyICp1c2VyKiBhbmQvb3IgKmdyb3VwKiBvZiB0aGUgZ2l2ZW4gKnBhdGgqLgorCisgICAqdXNlciogY2FuIGJlIGEgc3lzdGVtIHVzZXIgbmFtZSBvciBhIHVpZDsgdGhlIHNhbWUgYXBwbGllcyB0byAqZ3JvdXAqLiBBdAorICAgbGVhc3Qgb25lIGFyZ3VtZW50IGlzIHJlcXVpcmVkLgorCisgICBTZWUgYWxzbyA6ZnVuYzpgb3MuY2hvd25gLCB0aGUgdW5kZXJseWluZyBmdW5jdGlvbi4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCiAuLiBleGNlcHRpb246OiBFcnJvcgpAQCAtNDA2LDMgKzQ2MSwzNiBAQAogICAgIC1ydy0tLS0tLS0gdGFyZWsvc3RhZmYgICAgMTY3NSAyMDA4LTA2LTA5IDEzOjI2OjU0IC4vaWRfcnNhCiAgICAgLXJ3LXItLXItLSB0YXJlay9zdGFmZiAgICAgMzk3IDIwMDgtMDYtMDkgMTM6MjY6NTQgLi9pZF9yc2EucHViCiAgICAgLXJ3LXItLXItLSB0YXJlay9zdGFmZiAgIDM3MTkyIDIwMTAtMDItMDYgMTg6MjM6MTAgLi9rbm93bl9ob3N0cworCisKK1F1ZXJ5aW5nIHRoZSBzaXplIG9mIHRoZSBvdXRwdXQgdGVybWluYWwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGZ1bmN0aW9uOjogZ2V0X3Rlcm1pbmFsX3NpemUoZmFsbGJhY2s9KGNvbHVtbnMsIGxpbmVzKSkKKworICAgR2V0IHRoZSBzaXplIG9mIHRoZSB0ZXJtaW5hbCB3aW5kb3cuCisKKyAgIEZvciBlYWNoIG9mIHRoZSB0d28gZGltZW5zaW9ucywgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLCBgYENPTFVNTlNgYAorICAgYW5kIGBgTElORVNgYCByZXNwZWN0aXZlbHksIGlzIGNoZWNrZWQuIElmIHRoZSB2YXJpYWJsZSBpcyBkZWZpbmVkIGFuZAorICAgdGhlIHZhbHVlIGlzIGEgcG9zaXRpdmUgaW50ZWdlciwgaXQgaXMgdXNlZC4KKworICAgV2hlbiBgYENPTFVNTlNgYCBvciBgYExJTkVTYGAgaXMgbm90IGRlZmluZWQsIHdoaWNoIGlzIHRoZSBjb21tb24gY2FzZSwKKyAgIHRoZSB0ZXJtaW5hbCBjb25uZWN0ZWQgdG8gOmRhdGE6YHN5cy5fX3N0ZG91dF9fYCBpcyBxdWVyaWVkCisgICBieSBpbnZva2luZyA6ZnVuYzpgb3MuZ2V0X3Rlcm1pbmFsX3NpemVgLgorCisgICBJZiB0aGUgdGVybWluYWwgc2l6ZSBjYW5ub3QgYmUgc3VjY2Vzc2Z1bGx5IHF1ZXJpZWQsIGVpdGhlciBiZWNhdXNlCisgICB0aGUgc3lzdGVtIGRvZXNuJ3Qgc3VwcG9ydCBxdWVyeWluZywgb3IgYmVjYXVzZSB3ZSBhcmUgbm90CisgICBjb25uZWN0ZWQgdG8gYSB0ZXJtaW5hbCwgdGhlIHZhbHVlIGdpdmVuIGluIGBgZmFsbGJhY2tgYCBwYXJhbWV0ZXIKKyAgIGlzIHVzZWQuIGBgZmFsbGJhY2tgYCBkZWZhdWx0cyB0byBgYCg4MCwgMjQpYGAgd2hpY2ggaXMgdGhlIGRlZmF1bHQKKyAgIHNpemUgdXNlZCBieSBtYW55IHRlcm1pbmFsIGVtdWxhdG9ycy4KKworICAgVGhlIHZhbHVlIHJldHVybmVkIGlzIGEgbmFtZWQgdHVwbGUgb2YgdHlwZSA6Y2xhc3M6YG9zLnRlcm1pbmFsX3NpemVgLgorCisgICBTZWUgYWxzbzogVGhlIFNpbmdsZSBVTklYIFNwZWNpZmljYXRpb24sIFZlcnNpb24gMiwKKyAgIGBPdGhlciBFbnZpcm9ubWVudCBWYXJpYWJsZXNgXy4KKworLi4gX2BPdGhlciBFbnZpcm9ubWVudCBWYXJpYWJsZXNgOgorICAgaHR0cDovL3B1YnMub3Blbmdyb3VwLm9yZy9vbmxpbmVwdWJzLzc5MDg3OTkveGJkL2VudnZhci5odG1sI3RhZ18wMDJfMDAzCisKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NpZ25hbC5yc3QgYi9Eb2MvbGlicmFyeS9zaWduYWwucnN0CmluZGV4IDY5OGIxZTcuLjA0YWZkOWUgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3NpZ25hbC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc2lnbmFsLnJzdApAQCAtMTMsOSArMTMsNiBAQAogICB1bmRlcmx5aW5nIGltcGxlbWVudGF0aW9uKSwgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoYW5kbGVyIGZvcgogICA6Y29uc3Q6YFNJR0NITERgLCB3aGljaCBmb2xsb3dzIHRoZSB1bmRlcmx5aW5nIGltcGxlbWVudGF0aW9uLgogCi0qIFRoZXJlIGlzIG5vIHdheSB0byAiYmxvY2siIHNpZ25hbHMgdGVtcG9yYXJpbHkgZnJvbSBjcml0aWNhbCBzZWN0aW9ucyAoc2luY2UKLSAgdGhpcyBpcyBub3Qgc3VwcG9ydGVkIGJ5IGFsbCBVbml4IGZsYXZvcnMpLgotCiAqIEFsdGhvdWdoIFB5dGhvbiBzaWduYWwgaGFuZGxlcnMgYXJlIGNhbGxlZCBhc3luY2hyb25vdXNseSBhcyBmYXIgYXMgdGhlIFB5dGhvbgogICB1c2VyIGlzIGNvbmNlcm5lZCwgdGhleSBjYW4gb25seSBvY2N1ciBiZXR3ZWVuIHRoZSAiYXRvbWljIiBpbnN0cnVjdGlvbnMgb2YgdGhlCiAgIFB5dGhvbiBpbnRlcnByZXRlci4gIFRoaXMgbWVhbnMgdGhhdCBzaWduYWxzIGFycml2aW5nIGR1cmluZyBsb25nIGNhbGN1bGF0aW9ucwpAQCAtMTE5LDYgKzExNiwyOCBAQAogICAgaW4gdXNlciBhbmQga2VybmVsIHNwYWNlLiBTSUdQUk9GIGlzIGRlbGl2ZXJlZCB1cG9uIGV4cGlyYXRpb24uCiAKIAorLi4gZGF0YTo6IFNJR19CTE9DSworCisgICBBIHBvc3NpYmxlIHZhbHVlIGZvciB0aGUgKmhvdyogcGFyYW1ldGVyIHRvIDpmdW5jOmBwdGhyZWFkX3NpZ21hc2tgCisgICBpbmRpY2F0aW5nIHRoYXQgc2lnbmFscyBhcmUgdG8gYmUgYmxvY2tlZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGRhdGE6OiBTSUdfVU5CTE9DSworCisgICBBIHBvc3NpYmxlIHZhbHVlIGZvciB0aGUgKmhvdyogcGFyYW1ldGVyIHRvIDpmdW5jOmBwdGhyZWFkX3NpZ21hc2tgCisgICBpbmRpY2F0aW5nIHRoYXQgc2lnbmFscyBhcmUgdG8gYmUgdW5ibG9ja2VkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZGF0YTo6IFNJR19TRVRNQVNLCisKKyAgIEEgcG9zc2libGUgdmFsdWUgZm9yIHRoZSAqaG93KiBwYXJhbWV0ZXIgdG8gOmZ1bmM6YHB0aHJlYWRfc2lnbWFza2AKKyAgIGluZGljYXRpbmcgdGhhdCB0aGUgc2lnbmFsIG1hc2sgaXMgdG8gYmUgcmVwbGFjZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIFRoZSA6bW9kOmBzaWduYWxgIG1vZHVsZSBkZWZpbmVzIG9uZSBleGNlcHRpb246CiAKIC4uIGV4Y2VwdGlvbjo6IEl0aW1lckVycm9yCkBAIC0xMjYsNyArMTQ1LDExIEBACiAgICBSYWlzZWQgdG8gc2lnbmFsIGFuIGVycm9yIGZyb20gdGhlIHVuZGVybHlpbmcgOmZ1bmM6YHNldGl0aW1lcmAgb3IKICAgIDpmdW5jOmBnZXRpdGltZXJgIGltcGxlbWVudGF0aW9uLiBFeHBlY3QgdGhpcyBlcnJvciBpZiBhbiBpbnZhbGlkCiAgICBpbnRlcnZhbCB0aW1lciBvciBhIG5lZ2F0aXZlIHRpbWUgaXMgcGFzc2VkIHRvIDpmdW5jOmBzZXRpdGltZXJgLgotICAgVGhpcyBlcnJvciBpcyBhIHN1YnR5cGUgb2YgOmV4YzpgSU9FcnJvcmAuCisgICBUaGlzIGVycm9yIGlzIGEgc3VidHlwZSBvZiA6ZXhjOmBPU0Vycm9yYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisgICAgICBUaGlzIGVycm9yIHVzZWQgdG8gYmUgYSBzdWJ0eXBlIG9mIDpleGM6YElPRXJyb3JgLCB3aGljaCBpcyBub3cgYW4KKyAgICAgIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgogCiAKIFRoZSA6bW9kOmBzaWduYWxgIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zOgpAQCAtMTYwLDYgKzE4Myw2MCBAQAogICAgd2lsbCB0aGVuIGJlIGNhbGxlZC4gIFJldHVybnMgbm90aGluZy4gIE5vdCBvbiBXaW5kb3dzLiAoU2VlIHRoZSBVbml4IG1hbiBwYWdlCiAgICA6bWFucGFnZTpgc2lnbmFsKDIpYC4pCiAKKyAgIFNlZSBhbHNvIDpmdW5jOmBzaWd3YWl0YCwgOmZ1bmM6YHNpZ3dhaXRpbmZvYCwgOmZ1bmM6YHNpZ3RpbWVkd2FpdGAgYW5kCisgICA6ZnVuYzpgc2lncGVuZGluZ2AuCisKKworLi4gZnVuY3Rpb246OiBwdGhyZWFkX2tpbGwodGhyZWFkX2lkLCBzaWdudW0pCisKKyAgIFNlbmQgdGhlIHNpZ25hbCAqc2lnbnVtKiB0byB0aGUgdGhyZWFkICp0aHJlYWRfaWQqLCBhbm90aGVyIHRocmVhZCBpbiB0aGUgc2FtZQorICAgcHJvY2VzcyBhcyB0aGUgY2FsbGVyLiAgVGhlIHNpZ25hbCBpcyBhc3luY2hyb25vdXNseSBkaXJlY3RlZCB0byB0aHJlYWQuCisKKyAgIFVzZSA6ZnVuYzpgdGhyZWFkaW5nLmdldF9pZGVudCgpYCBvciB0aGUgOmF0dHI6YH50aHJlYWRpbmcuVGhyZWFkLmlkZW50YAorICAgYXR0cmlidXRlIG9mIDphdHRyOmB0aHJlYWRpbmcuVGhyZWFkYCB0byBnZXQgYSAndGhyZWFkIGlkZW50aWZpZXInIGZvcgorICAgKnRocmVhZF9pZCouCisKKyAgIElmICpzaWdudW0qIGlzIDAsIHRoZW4gbm8gc2lnbmFsIGlzIHNlbnQsIGJ1dCBlcnJvciBjaGVja2luZyBpcyBzdGlsbAorICAgcGVyZm9ybWVkOyB0aGlzIGNhbiBiZSB1c2VkIHRvIGNoZWNrIGlmIGEgdGhyZWFkIGlzIHN0aWxsIHJ1bm5pbmcuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peCAoc2VlIHRoZSBtYW4gcGFnZSA6bWFucGFnZTpgcHRocmVhZF9raWxsKDMpYCBmb3IgZnVydGhlcgorICAgaW5mb3JtYXRpb24pLgorCisgICBTZWUgYWxzbyA6ZnVuYzpgb3Mua2lsbGAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogcHRocmVhZF9zaWdtYXNrKGhvdywgbWFzaykKKworICAgRmV0Y2ggYW5kL29yIGNoYW5nZSB0aGUgc2lnbmFsIG1hc2sgb2YgdGhlIGNhbGxpbmcgdGhyZWFkLiAgVGhlIHNpZ25hbCBtYXNrCisgICBpcyB0aGUgc2V0IG9mIHNpZ25hbHMgd2hvc2UgZGVsaXZlcnkgaXMgY3VycmVudGx5IGJsb2NrZWQgZm9yIHRoZSBjYWxsZXIuCisgICBSZXR1cm4gdGhlIG9sZCBzaWduYWwgbWFzayBhcyBhIHNldCBvZiBzaWduYWxzLgorCisgICBUaGUgYmVoYXZpb3Igb2YgdGhlIGNhbGwgaXMgZGVwZW5kZW50IG9uIHRoZSB2YWx1ZSBvZiAqaG93KiwgYXMgZm9sbG93cy4KKworICAgICogOmRhdGE6YFNJR19CTE9DS2A6IFRoZSBzZXQgb2YgYmxvY2tlZCBzaWduYWxzIGlzIHRoZSB1bmlvbiBvZiB0aGUgY3VycmVudAorICAgICAgc2V0IGFuZCB0aGUgKm1hc2sqIGFyZ3VtZW50LgorICAgICogOmRhdGE6YFNJR19VTkJMT0NLYDogVGhlIHNpZ25hbHMgaW4gKm1hc2sqIGFyZSByZW1vdmVkIGZyb20gdGhlIGN1cnJlbnQKKyAgICAgIHNldCBvZiBibG9ja2VkIHNpZ25hbHMuICBJdCBpcyBwZXJtaXNzaWJsZSB0byBhdHRlbXB0IHRvIHVuYmxvY2sgYQorICAgICAgc2lnbmFsIHdoaWNoIGlzIG5vdCBibG9ja2VkLgorICAgICogOmRhdGE6YFNJR19TRVRNQVNLYDogVGhlIHNldCBvZiBibG9ja2VkIHNpZ25hbHMgaXMgc2V0IHRvIHRoZSAqbWFzayoKKyAgICAgIGFyZ3VtZW50LgorCisgICAqbWFzayogaXMgYSBzZXQgb2Ygc2lnbmFsIG51bWJlcnMgKGUuZy4gezpjb25zdDpgc2lnbmFsLlNJR0lOVGAsCisgICA6Y29uc3Q6YHNpZ25hbC5TSUdURVJNYH0pLiBVc2UgYGByYW5nZSgxLCBzaWduYWwuTlNJRylgYCBmb3IgYSBmdWxsIG1hc2sKKyAgIGluY2x1ZGluZyBhbGwgc2lnbmFscy4KKworICAgRm9yIGV4YW1wbGUsIGBgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX0JMT0NLLCBbXSlgYCByZWFkcyB0aGUKKyAgIHNpZ25hbCBtYXNrIG9mIHRoZSBjYWxsaW5nIHRocmVhZC4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LiBTZWUgdGhlIG1hbiBwYWdlIDptYW5wYWdlOmBzaWdwcm9jbWFzaygzKWAgYW5kCisgICA6bWFucGFnZTpgcHRocmVhZF9zaWdtYXNrKDMpYCBmb3IgZnVydGhlciBpbmZvcm1hdGlvbi4KKworICAgU2VlIGFsc28gOmZ1bmM6YHBhdXNlYCwgOmZ1bmM6YHNpZ3BlbmRpbmdgIGFuZCA6ZnVuYzpgc2lnd2FpdGAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAKIC4uIGZ1bmN0aW9uOjogc2V0aXRpbWVyKHdoaWNoLCBzZWNvbmRzWywgaW50ZXJ2YWxdKQogCkBAIC0xODksMTMgKzI2NiwxNyBAQAogCiAuLiBmdW5jdGlvbjo6IHNldF93YWtldXBfZmQoZmQpCiAKLSAgIFNldCB0aGUgd2FrZXVwIGZkIHRvICpmZCouICBXaGVuIGEgc2lnbmFsIGlzIHJlY2VpdmVkLCBhIGBgJ1wwJ2BgIGJ5dGUgaXMKLSAgIHdyaXR0ZW4gdG8gdGhlIGZkLiAgVGhpcyBjYW4gYmUgdXNlZCBieSBhIGxpYnJhcnkgdG8gd2FrZXVwIGEgcG9sbCBvciBzZWxlY3QKLSAgIGNhbGwsIGFsbG93aW5nIHRoZSBzaWduYWwgdG8gYmUgZnVsbHkgcHJvY2Vzc2VkLgorICAgU2V0IHRoZSB3YWtldXAgZmlsZSBkZXNjcmlwdG9yIHRvICpmZCouICBXaGVuIGEgc2lnbmFsIGlzIHJlY2VpdmVkLCB0aGUKKyAgIHNpZ25hbCBudW1iZXIgaXMgd3JpdHRlbiBhcyBhIHNpbmdsZSBieXRlIGludG8gdGhlIGZkLiAgVGhpcyBjYW4gYmUgdXNlZCBieQorICAgYSBsaWJyYXJ5IHRvIHdha2V1cCBhIHBvbGwgb3Igc2VsZWN0IGNhbGwsIGFsbG93aW5nIHRoZSBzaWduYWwgdG8gYmUgZnVsbHkKKyAgIHByb2Nlc3NlZC4KIAogICAgVGhlIG9sZCB3YWtldXAgZmQgaXMgcmV0dXJuZWQuICAqZmQqIG11c3QgYmUgbm9uLWJsb2NraW5nLiAgSXQgaXMgdXAgdG8gdGhlCiAgICBsaWJyYXJ5IHRvIHJlbW92ZSBhbnkgYnl0ZXMgYmVmb3JlIGNhbGxpbmcgcG9sbCBvciBzZWxlY3QgYWdhaW4uCiAKKyAgIFVzZSBmb3IgZXhhbXBsZSBgYHN0cnVjdC51bnBhY2soJyV1QicgJSBsZW4oZGF0YSksIGRhdGEpYGAgdG8gZGVjb2RlIHRoZQorICAgc2lnbmFsIG51bWJlcnMgbGlzdC4KKwogICAgV2hlbiB0aHJlYWRzIGFyZSBlbmFibGVkLCB0aGlzIGZ1bmN0aW9uIGNhbiBvbmx5IGJlIGNhbGxlZCBmcm9tIHRoZSBtYWluIHRocmVhZDsKICAgIGF0dGVtcHRpbmcgdG8gY2FsbCBpdCBmcm9tIG90aGVyIHRocmVhZHMgd2lsbCBjYXVzZSBhIDpleGM6YFZhbHVlRXJyb3JgCiAgICBleGNlcHRpb24gdG8gYmUgcmFpc2VkLgpAQCAtMjM1LDYgKzMxNiw3MyBAQAogICAgOmNvbnN0OmBTSUdURVJNYC4gQSA6ZXhjOmBWYWx1ZUVycm9yYCB3aWxsIGJlIHJhaXNlZCBpbiBhbnkgb3RoZXIgY2FzZS4KIAogCisuLiBmdW5jdGlvbjo6IHNpZ3BlbmRpbmcoKQorCisgICBFeGFtaW5lIHRoZSBzZXQgb2Ygc2lnbmFscyB0aGF0IGFyZSBwZW5kaW5nIGZvciBkZWxpdmVyeSB0byB0aGUgY2FsbGluZworICAgdGhyZWFkIChpLmUuLCB0aGUgc2lnbmFscyB3aGljaCBoYXZlIGJlZW4gcmFpc2VkIHdoaWxlIGJsb2NrZWQpLiAgUmV0dXJuIHRoZQorICAgc2V0IG9mIHRoZSBwZW5kaW5nIHNpZ25hbHMuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peCAoc2VlIHRoZSBtYW4gcGFnZSA6bWFucGFnZTpgc2lncGVuZGluZygyKWAgZm9yIGZ1cnRoZXIKKyAgIGluZm9ybWF0aW9uKS4KKworICAgU2VlIGFsc28gOmZ1bmM6YHBhdXNlYCwgOmZ1bmM6YHB0aHJlYWRfc2lnbWFza2AgYW5kIDpmdW5jOmBzaWd3YWl0YC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBzaWd3YWl0KHNpZ3NldCkKKworICAgU3VzcGVuZCBleGVjdXRpb24gb2YgdGhlIGNhbGxpbmcgdGhyZWFkIHVudGlsIHRoZSBkZWxpdmVyeSBvZiBvbmUgb2YgdGhlCisgICBzaWduYWxzIHNwZWNpZmllZCBpbiB0aGUgc2lnbmFsIHNldCAqc2lnc2V0Ki4gIFRoZSBmdW5jdGlvbiBhY2NlcHRzIHRoZSBzaWduYWwKKyAgIChyZW1vdmVzIGl0IGZyb20gdGhlIHBlbmRpbmcgbGlzdCBvZiBzaWduYWxzKSwgYW5kIHJldHVybnMgdGhlIHNpZ25hbCBudW1iZXIuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peCAoc2VlIHRoZSBtYW4gcGFnZSA6bWFucGFnZTpgc2lnd2FpdCgzKWAgZm9yIGZ1cnRoZXIKKyAgIGluZm9ybWF0aW9uKS4KKworICAgU2VlIGFsc28gOmZ1bmM6YHBhdXNlYCwgOmZ1bmM6YHB0aHJlYWRfc2lnbWFza2AsIDpmdW5jOmBzaWdwZW5kaW5nYCwKKyAgIDpmdW5jOmBzaWd3YWl0aW5mb2AgYW5kIDpmdW5jOmBzaWd0aW1lZHdhaXRgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHNpZ3dhaXRpbmZvKHNpZ3NldCkKKworICAgU3VzcGVuZCBleGVjdXRpb24gb2YgdGhlIGNhbGxpbmcgdGhyZWFkIHVudGlsIHRoZSBkZWxpdmVyeSBvZiBvbmUgb2YgdGhlCisgICBzaWduYWxzIHNwZWNpZmllZCBpbiB0aGUgc2lnbmFsIHNldCAqc2lnc2V0Ki4gIFRoZSBmdW5jdGlvbiBhY2NlcHRzIHRoZQorICAgc2lnbmFsIGFuZCByZW1vdmVzIGl0IGZyb20gdGhlIHBlbmRpbmcgbGlzdCBvZiBzaWduYWxzLiBJZiBvbmUgb2YgdGhlCisgICBzaWduYWxzIGluICpzaWdzZXQqIGlzIGFscmVhZHkgcGVuZGluZyBmb3IgdGhlIGNhbGxpbmcgdGhyZWFkLCB0aGUgZnVuY3Rpb24KKyAgIHdpbGwgcmV0dXJuIGltbWVkaWF0ZWx5IHdpdGggaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBzaWduYWwuIFRoZSBzaWduYWwKKyAgIGhhbmRsZXIgaXMgbm90IGNhbGxlZCBmb3IgdGhlIGRlbGl2ZXJlZCBzaWduYWwuIFRoZSBmdW5jdGlvbiByYWlzZXMgYW4KKyAgIDpleGM6YEludGVycnVwdGVkRXJyb3JgIGlmIGl0IGlzIGludGVycnVwdGVkIGJ5IGEgc2lnbmFsIHRoYXQgaXMgbm90IGluCisgICAqc2lnc2V0Ki4KKworICAgVGhlIHJldHVybiB2YWx1ZSBpcyBhbiBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBkYXRhIGNvbnRhaW5lZCBpbiB0aGUKKyAgIDpjOnR5cGU6YHNpZ2luZm9fdGAgc3RydWN0dXJlLCBuYW1lbHk6IDphdHRyOmBzaV9zaWdub2AsIDphdHRyOmBzaV9jb2RlYCwKKyAgIDphdHRyOmBzaV9lcnJub2AsIDphdHRyOmBzaV9waWRgLCA6YXR0cjpgc2lfdWlkYCwgOmF0dHI6YHNpX3N0YXR1c2AsCisgICA6YXR0cjpgc2lfYmFuZGAuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peCAoc2VlIHRoZSBtYW4gcGFnZSA6bWFucGFnZTpgc2lnd2FpdGluZm8oMilgIGZvciBmdXJ0aGVyCisgICBpbmZvcm1hdGlvbikuCisKKyAgIFNlZSBhbHNvIDpmdW5jOmBwYXVzZWAsIDpmdW5jOmBzaWd3YWl0YCBhbmQgOmZ1bmM6YHNpZ3RpbWVkd2FpdGAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogc2lndGltZWR3YWl0KHNpZ3NldCwgdGltZW91dCkKKworICAgTGlrZSA6ZnVuYzpgc2lnd2FpdGluZm9gLCBidXQgdGFrZXMgYW4gYWRkaXRpb25hbCAqdGltZW91dCogYXJndW1lbnQKKyAgIHNwZWNpZnlpbmcgYSB0aW1lb3V0LiBJZiAqdGltZW91dCogaXMgc3BlY2lmaWVkIGFzIDpjb25zdDpgMGAsIGEgcG9sbCBpcworICAgcGVyZm9ybWVkLiBSZXR1cm5zIDpjb25zdDpgTm9uZWAgaWYgYSB0aW1lb3V0IG9jY3Vycy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4IChzZWUgdGhlIG1hbiBwYWdlIDptYW5wYWdlOmBzaWd0aW1lZHdhaXQoMilgIGZvciBmdXJ0aGVyCisgICBpbmZvcm1hdGlvbikuCisKKyAgIFNlZSBhbHNvIDpmdW5jOmBwYXVzZWAsIDpmdW5jOmBzaWd3YWl0YCBhbmQgOmZ1bmM6YHNpZ3dhaXRpbmZvYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gX3NpZ25hbC1leGFtcGxlOgogCiBFeGFtcGxlCkBAIC0yNTEsNyArMzk5LDcgQEAKIAogICAgZGVmIGhhbmRsZXIoc2lnbnVtLCBmcmFtZSk6CiAgICAgICAgcHJpbnQoJ1NpZ25hbCBoYW5kbGVyIGNhbGxlZCB3aXRoIHNpZ25hbCcsIHNpZ251bSkKLSAgICAgICByYWlzZSBJT0Vycm9yKCJDb3VsZG4ndCBvcGVuIGRldmljZSEiKQorICAgICAgIHJhaXNlIE9TRXJyb3IoIkNvdWxkbid0IG9wZW4gZGV2aWNlISIpCiAKICAgICMgU2V0IHRoZSBzaWduYWwgaGFuZGxlciBhbmQgYSA1LXNlY29uZCBhbGFybQogICAgc2lnbmFsLnNpZ25hbChzaWduYWwuU0lHQUxSTSwgaGFuZGxlcikKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NpdGUucnN0IGIvRG9jL2xpYnJhcnkvc2l0ZS5yc3QKaW5kZXggZGI5NmFkZC4uYjk4Nzg5NyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvc2l0ZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc2l0ZS5yc3QKQEAgLTE2LDcgKzE2LDE0IEBACiAuLiBpbmRleDo6IHRyaXBsZTogbW9kdWxlOyBzZWFyY2g7IHBhdGgKIAogSW1wb3J0aW5nIHRoaXMgbW9kdWxlIHdpbGwgYXBwZW5kIHNpdGUtc3BlY2lmaWMgcGF0aHMgdG8gdGhlIG1vZHVsZSBzZWFyY2ggcGF0aAotYW5kIGFkZCBhIGZldyBidWlsdGlucy4KK2FuZCBhZGQgYSBmZXcgYnVpbHRpbnMsIHVubGVzcyA6b3B0aW9uOmAtU2Agd2FzIHVzZWQuICBJbiB0aGF0IGNhc2UsIHRoaXMgbW9kdWxlCitjYW4gYmUgc2FmZWx5IGltcG9ydGVkIHdpdGggbm8gYXV0b21hdGljIG1vZGlmaWNhdGlvbnMgdG8gdGhlIG1vZHVsZSBzZWFyY2ggcGF0aAorb3IgYWRkaXRpb25zIHRvIHRoZSBidWlsdGlucy4gIFRvIGV4cGxpY2l0bHkgdHJpZ2dlciB0aGUgdXN1YWwgc2l0ZS1zcGVjaWZpYworYWRkaXRpb25zLCBjYWxsIHRoZSA6ZnVuYzpgc2l0ZS5tYWluYCBmdW5jdGlvbi4KKworLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIEltcG9ydGluZyB0aGUgbW9kdWxlIHVzZWQgdG8gdHJpZ2dlciBwYXRocyBtYW5pcHVsYXRpb24gZXZlbiB3aGVuIHVzaW5nCisgICA6b3B0aW9uOmAtU2AuCiAKIC4uIGluZGV4OjoKICAgIHBhaXI6IHNpdGUtcHl0aG9uOyBkaXJlY3RvcnkKQEAgLTEyNywxMCArMTM0LDIxIEBACiAgICA6ZnVuYzpgZ2V0dXNlcmJhc2VgIGhhc24ndCBiZWVuIGNhbGxlZCB5ZXQuICBEZWZhdWx0IHZhbHVlIGlzCiAgICA6ZmlsZTpgfi8ubG9jYWxgIGZvciBVTklYIGFuZCBNYWMgT1MgWCBub24tZnJhbWV3b3JrIGJ1aWxkcywKICAgIDpmaWxlOmB+L0xpYnJhcnkvUHl0aG9uL3tYLll9YCBmb3IgTWFjIGZyYW1ld29yayBidWlsZHMsIGFuZAotICAgOmZpbGU6YHslQVBQREFUQSV9XFxQeXRob25gIGZvciBXaW5kb3dzLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGJ5IERpc3R1dGlscyB0bworICAgOmZpbGU6YHslQVBQREFUQSV9XFxQeXRob25gIGZvciBXaW5kb3dzLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGJ5IFBhY2thZ2luZyB0bwogICAgY29tcHV0ZSB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yaWVzIGZvciBzY3JpcHRzLCBkYXRhIGZpbGVzLCBQeXRob24gbW9kdWxlcywKLSAgIGV0Yy4gZm9yIHRoZSA6cmVmOmB1c2VyIGluc3RhbGxhdGlvbiBzY2hlbWUgPGluc3QtYWx0LWluc3RhbGwtdXNlcj5gLiAgU2VlCi0gICBhbHNvIDplbnZ2YXI6YFBZVEhPTlVTRVJCQVNFYC4KKyAgIGV0Yy4gZm9yIHRoZSA6cmVmOmB1c2VyIGluc3RhbGxhdGlvbiBzY2hlbWUgPHBhY2thZ2luZy1hbHQtaW5zdGFsbC11c2VyPmAuCisgICBTZWUgYWxzbyA6ZW52dmFyOmBQWVRIT05VU0VSQkFTRWAuCisKKworLi4gZnVuY3Rpb246OiBtYWluKCkKKworICAgQWRkcyBhbGwgdGhlIHN0YW5kYXJkIHNpdGUtc3BlY2lmaWMgZGlyZWN0b3JpZXMgdG8gdGhlIG1vZHVsZSBzZWFyY2gKKyAgIHBhdGguICBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCBhdXRvbWF0aWNhbGx5IHdoZW4gdGhpcyBtb2R1bGUgaXMgaW1wb3J0ZWQsCisgICB1bmxlc3MgdGhlIDpwcm9ncmFtOmBweXRob25gIGludGVycHJldGVyIHdhcyBzdGFydGVkIHdpdGggdGhlIDpvcHRpb246YC1TYAorICAgZmxhZy4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlZCB0byBiZSBjYWxsZWQgdW5jb25kaXRpb25uYWxseS4KIAogCiAuLiBmdW5jdGlvbjo6IGFkZHNpdGVkaXIoc2l0ZWRpciwga25vd25fcGF0aHM9Tm9uZSkKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NtdHBsaWIucnN0IGIvRG9jL2xpYnJhcnkvc210cGxpYi5yc3QKaW5kZXggMzEwMWFiNy4uNDVjNWQ2ZCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvc210cGxpYi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc210cGxpYi5yc3QKQEAgLTIwLDcgKzIwLDcgQEAKIFByb3RvY29sKSBhbmQgOnJmYzpgMTg2OWAgKFNNVFAgU2VydmljZSBFeHRlbnNpb25zKS4KIAogCi0uLiBjbGFzczo6IFNNVFAoaG9zdD0nJywgcG9ydD0wLCBsb2NhbF9ob3N0bmFtZT1Ob25lWywgdGltZW91dF0pCisuLiBjbGFzczo6IFNNVFAoaG9zdD0nJywgcG9ydD0wLCBsb2NhbF9ob3N0bmFtZT1Ob25lWywgdGltZW91dF0sIHNvdXJjZV9hZGRyZXNzPU5vbmUpCiAKICAgIEEgOmNsYXNzOmBTTVRQYCBpbnN0YW5jZSBlbmNhcHN1bGF0ZXMgYW4gU01UUCBjb25uZWN0aW9uLiAgSXQgaGFzIG1ldGhvZHMKICAgIHRoYXQgc3VwcG9ydCBhIGZ1bGwgcmVwZXJ0b2lyZSBvZiBTTVRQIGFuZCBFU01UUCBvcGVyYXRpb25zLiBJZiB0aGUgb3B0aW9uYWwKQEAgLTI5LDEzICsyOSwzNCBAQAogICAgcmFpc2VkIGlmIHRoZSBzcGVjaWZpZWQgaG9zdCBkb2Vzbid0IHJlc3BvbmQgY29ycmVjdGx5LiBUaGUgb3B0aW9uYWwKICAgICp0aW1lb3V0KiBwYXJhbWV0ZXIgc3BlY2lmaWVzIGEgdGltZW91dCBpbiBzZWNvbmRzIGZvciBibG9ja2luZyBvcGVyYXRpb25zCiAgICBsaWtlIHRoZSBjb25uZWN0aW9uIGF0dGVtcHQgKGlmIG5vdCBzcGVjaWZpZWQsIHRoZSBnbG9iYWwgZGVmYXVsdCB0aW1lb3V0Ci0gICBzZXR0aW5nIHdpbGwgYmUgdXNlZCkuCisgICBzZXR0aW5nIHdpbGwgYmUgdXNlZCkuIFRoZSBvcHRpb25hbCBzb3VyY2VfYWRkcmVzcyBwYXJhbWV0ZXIgYWxsb3dzIHRvIGJpbmQgdG8gc29tZQorICAgc3BlY2lmaWMgc291cmNlIGFkZHJlc3MgaW4gYSBtYWNoaW5lIHdpdGggbXVsdGlwbGUgbmV0d29yayBpbnRlcmZhY2VzLAorICAgYW5kL29yIHRvIHNvbWUgc3BlY2lmaWMgc291cmNlIFRDUCBwb3J0LiBJdCB0YWtlcyBhIDItdHVwbGUgKGhvc3QsIHBvcnQpLAorICAgZm9yIHRoZSBzb2NrZXQgdG8gYmluZCB0byBhcyBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlIGNvbm5lY3RpbmcuIElmCisgICBvbWl0dGVkIChvciBpZiBob3N0IG9yIHBvcnQgYXJlIGBgJydgYCBhbmQvb3IgMCByZXNwZWN0aXZlbHkpIHRoZSBPUyBkZWZhdWx0CisgICBiZWhhdmlvciB3aWxsIGJlIHVzZWQuCiAKICAgIEZvciBub3JtYWwgdXNlLCB5b3Ugc2hvdWxkIG9ubHkgcmVxdWlyZSB0aGUgaW5pdGlhbGl6YXRpb24vY29ubmVjdCwKICAgIDptZXRoOmBzZW5kbWFpbGAsIGFuZCA6bWV0aDpgcXVpdGAgbWV0aG9kcy4gIEFuIGV4YW1wbGUgaXMgaW5jbHVkZWQgYmVsb3cuCiAKKyAgIFRoZSA6Y2xhc3M6YFNNVFBgIGNsYXNzIHN1cHBvcnRzIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50LiAgV2hlbiB1c2VkCisgICBsaWtlIHRoaXMsIHRoZSBTTVRQIGBgUVVJVGBgIGNvbW1hbmQgaXMgaXNzdWVkIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGUKKyAgIDprZXl3b3JkOmB3aXRoYCBzdGF0ZW1lbnQgZXhpdHMuICBFLmcuOjoKIAotLi4gY2xhc3M6OiBTTVRQX1NTTChob3N0PScnLCBwb3J0PTAsIGxvY2FsX2hvc3RuYW1lPU5vbmUsIGtleWZpbGU9Tm9uZSwgY2VydGZpbGU9Tm9uZVssIHRpbWVvdXRdKQorICAgID4+PiBmcm9tIHNtdHBsaWIgaW1wb3J0IFNNVFAKKyAgICA+Pj4gd2l0aCBTTVRQKCJkb21haW4ub3JnIikgYXMgc210cDoKKyAgICAuLi4gICAgIHNtdHAubm9vcCgpCisgICAgLi4uCisgICAgKDI1MCwgYidPaycpCisgICAgPj4+CisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBTdXBwb3J0IGZvciB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudCB3YXMgYWRkZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBzb3VyY2VfYWRkcmVzcyBhcmd1bWVudCB3YXMgYWRkZWQuCisKKy4uIGNsYXNzOjogU01UUF9TU0woaG9zdD0nJywgcG9ydD0wLCBsb2NhbF9ob3N0bmFtZT1Ob25lLCBrZXlmaWxlPU5vbmUsIGNlcnRmaWxlPU5vbmVbLCB0aW1lb3V0XSwgY29udGV4dD1Ob25lLCBzb3VyY2VfYWRkcmVzcz1Ob25lKQogCiAgICBBIDpjbGFzczpgU01UUF9TU0xgIGluc3RhbmNlIGJlaGF2ZXMgZXhhY3RseSB0aGUgc2FtZSBhcyBpbnN0YW5jZXMgb2YKICAgIDpjbGFzczpgU01UUGAuIDpjbGFzczpgU01UUF9TU0xgIHNob3VsZCBiZSB1c2VkIGZvciBzaXR1YXRpb25zIHdoZXJlIFNTTCBpcwpAQCAtNDMsMTggKzY0LDMzIEBACiAgICBub3QgYXBwcm9wcmlhdGUuIElmICpob3N0KiBpcyBub3Qgc3BlY2lmaWVkLCB0aGUgbG9jYWwgaG9zdCBpcyB1c2VkLiBJZgogICAgKnBvcnQqIGlzIHplcm8sIHRoZSBzdGFuZGFyZCBTTVRQLW92ZXItU1NMIHBvcnQgKDQ2NSkgaXMgdXNlZC4gKmtleWZpbGUqCiAgICBhbmQgKmNlcnRmaWxlKiBhcmUgYWxzbyBvcHRpb25hbCwgYW5kIGNhbiBjb250YWluIGEgUEVNIGZvcm1hdHRlZCBwcml2YXRlIGtleQotICAgYW5kIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgZm9yIHRoZSBTU0wgY29ubmVjdGlvbi4gVGhlIG9wdGlvbmFsICp0aW1lb3V0KgorICAgYW5kIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgZm9yIHRoZSBTU0wgY29ubmVjdGlvbi4gKmNvbnRleHQqIGFsc28gb3B0aW9uYWwsIGNhbiBjb250YWluCisgICBhIFNTTENvbnRleHQsIGFuZCBpcyBhbiBhbHRlcm5hdGl2ZSB0byBrZXlmaWxlIGFuZCBjZXJ0ZmlsZTsgSWYgaXQgaXMgc3BlY2lmaWVkIGJvdGgKKyAgIGtleWZpbGUgYW5kIGNlcnRmaWxlIG11c3QgYmUgTm9uZS4gIFRoZSBvcHRpb25hbCAqdGltZW91dCoKICAgIHBhcmFtZXRlciBzcGVjaWZpZXMgYSB0aW1lb3V0IGluIHNlY29uZHMgZm9yIGJsb2NraW5nIG9wZXJhdGlvbnMgbGlrZSB0aGUKICAgIGNvbm5lY3Rpb24gYXR0ZW1wdCAoaWYgbm90IHNwZWNpZmllZCwgdGhlIGdsb2JhbCBkZWZhdWx0IHRpbWVvdXQgc2V0dGluZwotICAgd2lsbCBiZSB1c2VkKS4KKyAgIHdpbGwgYmUgdXNlZCkuIFRoZSBvcHRpb25hbCBzb3VyY2VfYWRkcmVzcyBwYXJhbWV0ZXIgYWxsb3dzIHRvIGJpbmQgdG8gc29tZQorICAgc3BlY2lmaWMgc291cmNlIGFkZHJlc3MgaW4gYSBtYWNoaW5lIHdpdGggbXVsdGlwbGUgbmV0d29yayBpbnRlcmZhY2VzLAorICAgYW5kL29yIHRvIHNvbWUgc3BlY2lmaWMgc291cmNlIHRjcCBwb3J0LiBJdCB0YWtlcyBhIDItdHVwbGUgKGhvc3QsIHBvcnQpLAorICAgZm9yIHRoZSBzb2NrZXQgdG8gYmluZCB0byBhcyBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlIGNvbm5lY3RpbmcuIElmCisgICBvbWl0dGVkIChvciBpZiBob3N0IG9yIHBvcnQgYXJlIGBgJydgYCBhbmQvb3IgMCByZXNwZWN0aXZlbHkpIHRoZSBPUyBkZWZhdWx0CisgICBiZWhhdmlvciB3aWxsIGJlIHVzZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqY29udGV4dCogd2FzIGFkZGVkLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgc291cmNlX2FkZHJlc3MgYXJndW1lbnQgd2FzIGFkZGVkLgogCiAKLS4uIGNsYXNzOjogTE1UUChob3N0PScnLCBwb3J0PUxNVFBfUE9SVCwgbG9jYWxfaG9zdG5hbWU9Tm9uZSkKKy4uIGNsYXNzOjogTE1UUChob3N0PScnLCBwb3J0PUxNVFBfUE9SVCwgbG9jYWxfaG9zdG5hbWU9Tm9uZSwgc291cmNlX2FkZHJlc3M9Tm9uZSkKIAogICAgVGhlIExNVFAgcHJvdG9jb2wsIHdoaWNoIGlzIHZlcnkgc2ltaWxhciB0byBFU01UUCwgaXMgaGVhdmlseSBiYXNlZCBvbiB0aGUKLSAgIHN0YW5kYXJkIFNNVFAgY2xpZW50LiBJdCdzIGNvbW1vbiB0byB1c2UgVW5peCBzb2NrZXRzIGZvciBMTVRQLCBzbyBvdXIgOm1ldGg6YGNvbm5lY3RgCi0gICBtZXRob2QgbXVzdCBzdXBwb3J0IHRoYXQgYXMgd2VsbCBhcyBhIHJlZ3VsYXIgaG9zdDpwb3J0IHNlcnZlci4gVG8gc3BlY2lmeSBhCi0gICBVbml4IHNvY2tldCwgeW91IG11c3QgdXNlIGFuIGFic29sdXRlIHBhdGggZm9yICpob3N0Kiwgc3RhcnRpbmcgd2l0aCBhICcvJy4KKyAgIHN0YW5kYXJkIFNNVFAgY2xpZW50LiBJdCdzIGNvbW1vbiB0byB1c2UgVW5peCBzb2NrZXRzIGZvciBMTVRQLCBzbyBvdXIKKyAgIDptZXRoOmBjb25uZWN0YCBtZXRob2QgbXVzdCBzdXBwb3J0IHRoYXQgYXMgd2VsbCBhcyBhIHJlZ3VsYXIgaG9zdDpwb3J0CisgICBzZXJ2ZXIuIFRoZSBvcHRpb25hbCBhcmd1bWVudHMgbG9jYWxfaG9zdG5hbWUgYW5kIHNvdXJjZV9hZGRyZXNzIGhhdmUgdGhlCisgICBzYW1lIG1lYW5pbmcgYXMgdGhhdCBvZiBTTVRQIGNsaWVudC4gVG8gc3BlY2lmeSBhIFVuaXggc29ja2V0LCB5b3UgbXVzdCB1c2UKKyAgIGFuIGFic29sdXRlIHBhdGggZm9yICpob3N0Kiwgc3RhcnRpbmcgd2l0aCBhICcvJy4KIAogICAgQXV0aGVudGljYXRpb24gaXMgc3VwcG9ydGVkLCB1c2luZyB0aGUgcmVndWxhciBTTVRQIG1lY2hhbmlzbS4gV2hlbiB1c2luZyBhIFVuaXgKICAgIHNvY2tldCwgTE1UUCBnZW5lcmFsbHkgZG9uJ3Qgc3VwcG9ydCBvciByZXF1aXJlIGFueSBhdXRoZW50aWNhdGlvbiwgYnV0IHlvdXIKQEAgLTI0Miw3ICsyNzgsNyBAQAogICAgICAgTm8gc3VpdGFibGUgYXV0aGVudGljYXRpb24gbWV0aG9kIHdhcyBmb3VuZC4KIAogCi0uLiBtZXRob2Q6OiBTTVRQLnN0YXJ0dGxzKGtleWZpbGU9Tm9uZSwgY2VydGZpbGU9Tm9uZSkKKy4uIG1ldGhvZDo6IFNNVFAuc3RhcnR0bHMoa2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lLCBjb250ZXh0PU5vbmUpCiAKICAgIFB1dCB0aGUgU01UUCBjb25uZWN0aW9uIGluIFRMUyAoVHJhbnNwb3J0IExheWVyIFNlY3VyaXR5KSBtb2RlLiAgQWxsIFNNVFAKICAgIGNvbW1hbmRzIHRoYXQgZm9sbG93IHdpbGwgYmUgZW5jcnlwdGVkLiAgWW91IHNob3VsZCB0aGVuIGNhbGwgOm1ldGg6YGVobG9gCkBAIC0yNTEsNiArMjg3LDkgQEAKICAgIElmICprZXlmaWxlKiBhbmQgKmNlcnRmaWxlKiBhcmUgcHJvdmlkZWQsIHRoZXNlIGFyZSBwYXNzZWQgdG8gdGhlIDptb2Q6YHNvY2tldGAKICAgIG1vZHVsZSdzIDpmdW5jOmBzc2xgIGZ1bmN0aW9uLgogCisgICBPcHRpb25hbCAqY29udGV4dCogcGFyYW1ldGVyIGlzIGEgOmNsYXNzOmBzc2wuU1NMQ29udGV4dGAgb2JqZWN0OyBUaGlzIGlzIGFuIGFsdGVybmF0aXZlIHRvCisgICB1c2luZyBhIGtleWZpbGUgYW5kIGEgY2VydGZpbGUgYW5kIGlmIHNwZWNpZmllZCBib3RoICprZXlmaWxlKiBhbmQgKmNlcnRmaWxlKiBzaG91bGQgYmUgTm9uZS4KKwogICAgSWYgdGhlcmUgaGFzIGJlZW4gbm8gcHJldmlvdXMgYGBFSExPYGAgb3IgYGBIRUxPYGAgY29tbWFuZCB0aGlzIHNlc3Npb24sCiAgICB0aGlzIG1ldGhvZCB0cmllcyBFU01UUCBgYEVITE9gYCBmaXJzdC4KIApAQCAtMjYzLDYgKzMwMiw5IEBACiAgICA6ZXhjOmBSdW50aW1lRXJyb3JgCiAgICAgIFNTTC9UTFMgc3VwcG9ydCBpcyBub3QgYXZhaWxhYmxlIHRvIHlvdXIgUHl0aG9uIGludGVycHJldGVyLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgKmNvbnRleHQqIHdhcyBhZGRlZC4KKwogCiAuLiBtZXRob2Q6OiBTTVRQLnNlbmRtYWlsKGZyb21fYWRkciwgdG9fYWRkcnMsIG1zZywgbWFpbF9vcHRpb25zPVtdLCByY3B0X29wdGlvbnM9W10pCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NvY2tldC5yc3QgYi9Eb2MvbGlicmFyeS9zb2NrZXQucnN0CmluZGV4IGYyMzZkMzAuLjY5ZmEzNzggMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3NvY2tldC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc29ja2V0LnJzdApAQCAtNDAsOSArNDAsMjMgQEAKIERlcGVuZGluZyBvbiB0aGUgc3lzdGVtIGFuZCB0aGUgYnVpbGQgb3B0aW9ucywgdmFyaW91cyBzb2NrZXQgZmFtaWxpZXMKIGFyZSBzdXBwb3J0ZWQgYnkgdGhpcyBtb2R1bGUuCiAKLVNvY2tldCBhZGRyZXNzZXMgYXJlIHJlcHJlc2VudGVkIGFzIGZvbGxvd3M6CitUaGUgYWRkcmVzcyBmb3JtYXQgcmVxdWlyZWQgYnkgYSBwYXJ0aWN1bGFyIHNvY2tldCBvYmplY3QgaXMgYXV0b21hdGljYWxseQorc2VsZWN0ZWQgYmFzZWQgb24gdGhlIGFkZHJlc3MgZmFtaWx5IHNwZWNpZmllZCB3aGVuIHRoZSBzb2NrZXQgb2JqZWN0IHdhcworY3JlYXRlZC4gIFNvY2tldCBhZGRyZXNzZXMgYXJlIHJlcHJlc2VudGVkIGFzIGZvbGxvd3M6CiAKLS0gQSBzaW5nbGUgc3RyaW5nIGlzIHVzZWQgZm9yIHRoZSA6Y29uc3Q6YEFGX1VOSVhgIGFkZHJlc3MgZmFtaWx5LgorLSBUaGUgYWRkcmVzcyBvZiBhbiA6Y29uc3Q6YEFGX1VOSVhgIHNvY2tldCBib3VuZCB0byBhIGZpbGUgc3lzdGVtIG5vZGUKKyAgaXMgcmVwcmVzZW50ZWQgYXMgYSBzdHJpbmcsIHVzaW5nIHRoZSBmaWxlIHN5c3RlbSBlbmNvZGluZyBhbmQgdGhlCisgIGBgJ3N1cnJvZ2F0ZWVzY2FwZSdgYCBlcnJvciBoYW5kbGVyIChzZWUgOnBlcDpgMzgzYCkuICBBbiBhZGRyZXNzIGluCisgIExpbnV4J3MgYWJzdHJhY3QgbmFtZXNwYWNlIGlzIHJldHVybmVkIGFzIGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0IHdpdGgKKyAgYW4gaW5pdGlhbCBudWxsIGJ5dGU7IG5vdGUgdGhhdCBzb2NrZXRzIGluIHRoaXMgbmFtZXNwYWNlIGNhbgorICBjb21tdW5pY2F0ZSB3aXRoIG5vcm1hbCBmaWxlIHN5c3RlbSBzb2NrZXRzLCBzbyBwcm9ncmFtcyBpbnRlbmRlZCB0bworICBydW4gb24gTGludXggbWF5IG5lZWQgdG8gZGVhbCB3aXRoIGJvdGggdHlwZXMgb2YgYWRkcmVzcy4gIEEgc3RyaW5nIG9yCisgIDpjbGFzczpgYnl0ZXNgIG9iamVjdCBjYW4gYmUgdXNlZCBmb3IgZWl0aGVyIHR5cGUgb2YgYWRkcmVzcyB3aGVuCisgIHBhc3NpbmcgaXQgYXMgYW4gYXJndW1lbnQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBQcmV2aW91c2x5LCA6Y29uc3Q6YEFGX1VOSVhgIHNvY2tldCBwYXRocyB3ZXJlIGFzc3VtZWQgdG8gdXNlIFVURi04CisgICAgICBlbmNvZGluZy4KIAogLSBBIHBhaXIgYGAoaG9zdCwgcG9ydClgYCBpcyB1c2VkIGZvciB0aGUgOmNvbnN0OmBBRl9JTkVUYCBhZGRyZXNzIGZhbWlseSwKICAgd2hlcmUgKmhvc3QqIGlzIGEgc3RyaW5nIHJlcHJlc2VudGluZyBlaXRoZXIgYSBob3N0bmFtZSBpbiBJbnRlcm5ldCBkb21haW4KQEAgLTgwLDYgKzk0LDE5IEBACiAgICAgSWYgKmFkZHJfdHlwZSogaXMgOmNvbnN0OmBUSVBDX0FERFJfSURgLCB0aGVuICp2MSogaXMgdGhlIG5vZGUsICp2MiogaXMgdGhlCiAgICAgcmVmZXJlbmNlLCBhbmQgKnYzKiBzaG91bGQgYmUgc2V0IHRvIDAuCiAKKy0gQSB0dXBsZSBgYChpbnRlcmZhY2UsIClgYCBpcyB1c2VkIGZvciB0aGUgOmNvbnN0OmBBRl9DQU5gIGFkZHJlc3MgZmFtaWx5LAorICB3aGVyZSAqaW50ZXJmYWNlKiBpcyBhIHN0cmluZyByZXByZXNlbnRpbmcgYSBuZXR3b3JrIGludGVyZmFjZSBuYW1lIGxpa2UKKyAgYGAnY2FuMCdgYC4gVGhlIG5ldHdvcmsgaW50ZXJmYWNlIG5hbWUgYGAnJ2BgIGNhbiBiZSB1c2VkIHRvIHJlY2VpdmUgcGFja2V0cworICBmcm9tIGFsbCBuZXR3b3JrIGludGVyZmFjZXMgb2YgdGhpcyBmYW1pbHkuCisKKy0gQSBzdHJpbmcgb3IgYSB0dXBsZSBgYChpZCwgdW5pdClgYCBpcyB1c2VkIGZvciB0aGUgOmNvbnN0OmBTWVNQUk9UT19DT05UUk9MYAorICBwcm90b2NvbCBvZiB0aGUgOmNvbnN0OmBQRl9TWVNURU1gIGZhbWlseS4gVGhlIHN0cmluZyBpcyB0aGUgbmFtZSBvZiBhCisgIGtlcm5lbCBjb250cm9sIHVzaW5nIGEgZHluYW1pY2FsbHktYXNzaWduZWQgSUQuIFRoZSB0dXBsZSBjYW4gYmUgdXNlZCBpZiBJRAorICBhbmQgdW5pdCBudW1iZXIgb2YgdGhlIGtlcm5lbCBjb250cm9sIGFyZSBrbm93biBvciBpZiBhIHJlZ2lzdGVyZWQgSUQgaXMKKyAgdXNlZC4KKworICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogLSBDZXJ0YWluIG90aGVyIGFkZHJlc3MgZmFtaWxpZXMgKDpjb25zdDpgQUZfQkxVRVRPT1RIYCwgOmNvbnN0OmBBRl9QQUNLRVRgKQogICBzdXBwb3J0IHNwZWNpZmljIHJlcHJlc2VudGF0aW9ucy4KIApAQCAtOTksOCArMTI2LDkgQEAKIG51bWVyaWMgYWRkcmVzcyBpbiAqaG9zdCogcG9ydGlvbi4KIAogQWxsIGVycm9ycyByYWlzZSBleGNlcHRpb25zLiAgVGhlIG5vcm1hbCBleGNlcHRpb25zIGZvciBpbnZhbGlkIGFyZ3VtZW50IHR5cGVzCi1hbmQgb3V0LW9mLW1lbW9yeSBjb25kaXRpb25zIGNhbiBiZSByYWlzZWQ7IGVycm9ycyByZWxhdGVkIHRvIHNvY2tldCBvciBhZGRyZXNzCi1zZW1hbnRpY3MgcmFpc2UgOmV4Yzpgc29ja2V0LmVycm9yYCBvciBvbmUgb2YgaXRzIHN1YmNsYXNzZXMuCithbmQgb3V0LW9mLW1lbW9yeSBjb25kaXRpb25zIGNhbiBiZSByYWlzZWQ7IHN0YXJ0aW5nIGZyb20gUHl0aG9uIDMuMywgZXJyb3JzCityZWxhdGVkIHRvIHNvY2tldCBvciBhZGRyZXNzIHNlbWFudGljcyByYWlzZSA6ZXhjOmBPU0Vycm9yYCBvciBvbmUgb2YgaXRzCitzdWJjbGFzc2VzICh0aGV5IHVzZWQgdG8gcmFpc2UgOmV4Yzpgc29ja2V0LmVycm9yYCkuCiAKIE5vbi1ibG9ja2luZyBtb2RlIGlzIHN1cHBvcnRlZCB0aHJvdWdoIDptZXRoOmB+c29ja2V0LnNldGJsb2NraW5nYC4gIEEKIGdlbmVyYWxpemF0aW9uIG9mIHRoaXMgYmFzZWQgb24gdGltZW91dHMgaXMgc3VwcG9ydGVkIHRocm91Z2gKQEAgLTExNSwyMCArMTQzLDE1IEBACiAKIC4uIGV4Y2VwdGlvbjo6IGVycm9yCiAKLSAgIC4uIGluZGV4OjogbW9kdWxlOiBlcnJubworICAgQSBkZXByZWNhdGVkIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgogCi0gICBBIHN1YmNsYXNzIG9mIDpleGM6YElPRXJyb3JgLCB0aGlzIGV4Y2VwdGlvbiBpcyByYWlzZWQgZm9yIHNvY2tldC1yZWxhdGVkCi0gICBlcnJvcnMuICBJdCBpcyByZWNvbW1lbmRlZCB0aGF0IHlvdSBpbnNwZWN0IGl0cyBgYGVycm5vYGAgYXR0cmlidXRlIHRvCi0gICBkaXNjcmltaW5hdGUgYmV0d2VlbiBkaWZmZXJlbnQga2luZHMgb2YgZXJyb3JzLgotCi0gICAuLiBzZWVhbHNvOjoKLSAgICAgIFRoZSA6bW9kOmBlcnJub2AgbW9kdWxlIGNvbnRhaW5zIHN5bWJvbGljIG5hbWVzIGZvciB0aGUgZXJyb3IgY29kZXMKLSAgICAgIGRlZmluZWQgYnkgdGhlIHVuZGVybHlpbmcgb3BlcmF0aW5nIHN5c3RlbS4KKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBGb2xsb3dpbmcgOnBlcDpgMzE1MWAsIHRoaXMgY2xhc3Mgd2FzIG1hZGUgYW4gYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCiAKIAogLi4gZXhjZXB0aW9uOjogaGVycm9yCiAKLSAgIEEgc3ViY2xhc3Mgb2YgOmV4Yzpgc29ja2V0LmVycm9yYCwgdGhpcyBleGNlcHRpb24gaXMgcmFpc2VkIGZvcgorICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBPU0Vycm9yYCwgdGhpcyBleGNlcHRpb24gaXMgcmFpc2VkIGZvcgogICAgYWRkcmVzcy1yZWxhdGVkIGVycm9ycywgaS5lLiBmb3IgZnVuY3Rpb25zIHRoYXQgdXNlICpoX2Vycm5vKiBpbiB0aGUgUE9TSVgKICAgIEMgQVBJLCBpbmNsdWRpbmcgOmZ1bmM6YGdldGhvc3RieW5hbWVfZXhgIGFuZCA6ZnVuYzpgZ2V0aG9zdGJ5YWRkcmAuCiAgICBUaGUgYWNjb21wYW55aW5nIHZhbHVlIGlzIGEgcGFpciBgYChoX2Vycm5vLCBzdHJpbmcpYGAgcmVwcmVzZW50aW5nIGFuCkBAIC0xMzYsMTAgKzE1OSwxMiBAQAogICAgKnN0cmluZyogcmVwcmVzZW50cyB0aGUgZGVzY3JpcHRpb24gb2YgKmhfZXJybm8qLCBhcyByZXR1cm5lZCBieSB0aGUKICAgIDpjOmZ1bmM6YGhzdHJlcnJvcmAgQyBmdW5jdGlvbi4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgY2xhc3Mgd2FzIG1hZGUgYSBzdWJjbGFzcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogLi4gZXhjZXB0aW9uOjogZ2FpZXJyb3IKIAotICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBzb2NrZXQuZXJyb3JgLCB0aGlzIGV4Y2VwdGlvbiBpcyByYWlzZWQgZm9yCisgICBBIHN1YmNsYXNzIG9mIDpleGM6YE9TRXJyb3JgLCB0aGlzIGV4Y2VwdGlvbiBpcyByYWlzZWQgZm9yCiAgICBhZGRyZXNzLXJlbGF0ZWQgZXJyb3JzIGJ5IDpmdW5jOmBnZXRhZGRyaW5mb2AgYW5kIDpmdW5jOmBnZXRuYW1laW5mb2AuCiAgICBUaGUgYWNjb21wYW55aW5nIHZhbHVlIGlzIGEgcGFpciBgYChlcnJvciwgc3RyaW5nKWBgIHJlcHJlc2VudGluZyBhbiBlcnJvcgogICAgcmV0dXJuZWQgYnkgYSBsaWJyYXJ5IGNhbGwuICAqc3RyaW5nKiByZXByZXNlbnRzIHRoZSBkZXNjcmlwdGlvbiBvZgpAQCAtMTQ3LDE1ICsxNzIsMTkgQEAKICAgIG51bWVyaWMgKmVycm9yKiB2YWx1ZSB3aWxsIG1hdGNoIG9uZSBvZiB0aGUgOmNvbnN0OmBFQUlfXCpgIGNvbnN0YW50cwogICAgZGVmaW5lZCBpbiB0aGlzIG1vZHVsZS4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgY2xhc3Mgd2FzIG1hZGUgYSBzdWJjbGFzcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogLi4gZXhjZXB0aW9uOjogdGltZW91dAogCi0gICBBIHN1YmNsYXNzIG9mIDpleGM6YHNvY2tldC5lcnJvcmAsIHRoaXMgZXhjZXB0aW9uIGlzIHJhaXNlZCB3aGVuIGEgdGltZW91dAorICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBPU0Vycm9yYCwgdGhpcyBleGNlcHRpb24gaXMgcmFpc2VkIHdoZW4gYSB0aW1lb3V0CiAgICBvY2N1cnMgb24gYSBzb2NrZXQgd2hpY2ggaGFzIGhhZCB0aW1lb3V0cyBlbmFibGVkIHZpYSBhIHByaW9yIGNhbGwgdG8KICAgIDptZXRoOmB+c29ja2V0LnNldHRpbWVvdXRgIChvciBpbXBsaWNpdGx5IHRocm91Z2gKICAgIDpmdW5jOmB+c29ja2V0LnNldGRlZmF1bHR0aW1lb3V0YCkuICBUaGUgYWNjb21wYW55aW5nIHZhbHVlIGlzIGEgc3RyaW5nCiAgICB3aG9zZSB2YWx1ZSBpcyBjdXJyZW50bHkgYWx3YXlzICJ0aW1lZCBvdXQiLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhpcyBjbGFzcyB3YXMgbWFkZSBhIHN1YmNsYXNzIG9mIDpleGM6YE9TRXJyb3JgLgogCiAuLiBkYXRhOjogQUZfVU5JWAogICAgICAgICAgIEFGX0lORVQKQEAgLTE5OCw2ICsyMjcsNyBAQAogICAgICAgICAgIFNPTUFYQ09OTgogICAgICAgICAgIE1TR18qCiAgICAgICAgICAgU09MXyoKKyAgICAgICAgICBTQ01fKgogICAgICAgICAgIElQUFJPVE9fKgogICAgICAgICAgIElQUE9SVF8qCiAgICAgICAgICAgSU5BRERSXyoKQEAgLTIxNSw2ICsyNDUsMzIgQEAKICAgIGluIHRoZSBVbml4IGhlYWRlciBmaWxlcyBhcmUgZGVmaW5lZDsgZm9yIGEgZmV3IHN5bWJvbHMsIGRlZmF1bHQgdmFsdWVzIGFyZQogICAgcHJvdmlkZWQuCiAKKy4uIGRhdGE6OiBBRl9DQU4KKyAgICAgICAgICBQRl9DQU4KKyAgICAgICAgICBTT0xfQ0FOXyoKKyAgICAgICAgICBDQU5fKgorCisgICBNYW55IGNvbnN0YW50cyBvZiB0aGVzZSBmb3JtcywgZG9jdW1lbnRlZCBpbiB0aGUgTGludXggZG9jdW1lbnRhdGlvbiwgYXJlCisgICBhbHNvIGRlZmluZWQgaW4gdGhlIHNvY2tldCBtb2R1bGUuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXggPj0gMi42LjI1LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBkYXRhOjogQUZfUkRTCisgICAgICAgICAgUEZfUkRTCisgICAgICAgICAgU09MX1JEUworICAgICAgICAgIFJEU18qCisKKyAgIE1hbnkgY29uc3RhbnRzIG9mIHRoZXNlIGZvcm1zLCBkb2N1bWVudGVkIGluIHRoZSBMaW51eCBkb2N1bWVudGF0aW9uLCBhcmUKKyAgIGFsc28gZGVmaW5lZCBpbiB0aGUgc29ja2V0IG1vZHVsZS4KKworICAgQXZhaWxhYmlsaXR5OiBMaW51eCA+PSAyLjYuMzAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGRhdGE6OiBTSU9fKgogICAgICAgICAgIFJDVkFMTF8qCiAKQEAgLTM5MywxMCArNDQ5LDE1IEBACiAKICAgIENyZWF0ZSBhIG5ldyBzb2NrZXQgdXNpbmcgdGhlIGdpdmVuIGFkZHJlc3MgZmFtaWx5LCBzb2NrZXQgdHlwZSBhbmQgcHJvdG9jb2wKICAgIG51bWJlci4gIFRoZSBhZGRyZXNzIGZhbWlseSBzaG91bGQgYmUgOmNvbnN0OmBBRl9JTkVUYCAodGhlIGRlZmF1bHQpLAotICAgOmNvbnN0OmBBRl9JTkVUNmAgb3IgOmNvbnN0OmBBRl9VTklYYC4gIFRoZSBzb2NrZXQgdHlwZSBzaG91bGQgYmUKLSAgIDpjb25zdDpgU09DS19TVFJFQU1gICh0aGUgZGVmYXVsdCksIDpjb25zdDpgU09DS19ER1JBTWAgb3IgcGVyaGFwcyBvbmUgb2YgdGhlCi0gICBvdGhlciBgYFNPQ0tfYGAgY29uc3RhbnRzLiAgVGhlIHByb3RvY29sIG51bWJlciBpcyB1c3VhbGx5IHplcm8gYW5kIG1heSBiZQotICAgb21pdHRlZCBpbiB0aGF0IGNhc2UuCisgICA6Y29uc3Q6YEFGX0lORVQ2YCwgOmNvbnN0OmBBRl9VTklYYCwgOmNvbnN0OmBBRl9DQU5gIG9yIDpjb25zdDpgQUZfUkRTYC4gVGhlCisgICBzb2NrZXQgdHlwZSBzaG91bGQgYmUgOmNvbnN0OmBTT0NLX1NUUkVBTWAgKHRoZSBkZWZhdWx0KSwKKyAgIDpjb25zdDpgU09DS19ER1JBTWAsIDpjb25zdDpgU09DS19SQVdgIG9yIHBlcmhhcHMgb25lIG9mIHRoZSBvdGhlciBgYFNPQ0tfYGAKKyAgIGNvbnN0YW50cy4gVGhlIHByb3RvY29sIG51bWJlciBpcyB1c3VhbGx5IHplcm8gYW5kIG1heSBiZSBvbWl0dGVkIGluIHRoYXQKKyAgIGNhc2Ugb3IgOmNvbnN0OmBDQU5fUkFXYCBpbiBjYXNlIHRoZSBhZGRyZXNzIGZhbWlseSBpcyA6Y29uc3Q6YEFGX0NBTmAuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgQUZfQ0FOIGZhbWlseSB3YXMgYWRkZWQuCisgICAgICBUaGUgQUZfUkRTIGZhbWlseSB3YXMgYWRkZWQuCiAKIAogLi4gZnVuY3Rpb246OiBzb2NrZXRwYWlyKFtmYW1pbHlbLCB0eXBlWywgcHJvdG9dXV0pCkBAIC00NjQsNyArNTI1LDcgQEAKICAgIFVuaXggbWFudWFsIHBhZ2UgOm1hbnBhZ2U6YGluZXQoMylgIGZvciBkZXRhaWxzLgogCiAgICBJZiB0aGUgSVB2NCBhZGRyZXNzIHN0cmluZyBwYXNzZWQgdG8gdGhpcyBmdW5jdGlvbiBpcyBpbnZhbGlkLAotICAgOmV4Yzpgc29ja2V0LmVycm9yYCB3aWxsIGJlIHJhaXNlZC4gTm90ZSB0aGF0IGV4YWN0bHkgd2hhdCBpcyB2YWxpZCBkZXBlbmRzIG9uCisgICA6ZXhjOmBPU0Vycm9yYCB3aWxsIGJlIHJhaXNlZC4gTm90ZSB0aGF0IGV4YWN0bHkgd2hhdCBpcyB2YWxpZCBkZXBlbmRzIG9uCiAgICB0aGUgdW5kZXJseWluZyBDIGltcGxlbWVudGF0aW9uIG9mIDpjOmZ1bmM6YGluZXRfYXRvbmAuCiAKICAgIDpmdW5jOmBpbmV0X2F0b25gIGRvZXMgbm90IHN1cHBvcnQgSVB2NiwgYW5kIDpmdW5jOmBpbmV0X3B0b25gIHNob3VsZCBiZSB1c2VkCkBAIC00ODEsNyArNTQyLDcgQEAKICAgIGFyZ3VtZW50LgogCiAgICBJZiB0aGUgYnl0ZSBzZXF1ZW5jZSBwYXNzZWQgdG8gdGhpcyBmdW5jdGlvbiBpcyBub3QgZXhhY3RseSA0IGJ5dGVzIGluCi0gICBsZW5ndGgsIDpleGM6YHNvY2tldC5lcnJvcmAgd2lsbCBiZSByYWlzZWQuIDpmdW5jOmBpbmV0X250b2FgIGRvZXMgbm90CisgICBsZW5ndGgsIDpleGM6YE9TRXJyb3JgIHdpbGwgYmUgcmFpc2VkLiA6ZnVuYzpgaW5ldF9udG9hYCBkb2VzIG5vdAogICAgc3VwcG9ydCBJUHY2LCBhbmQgOmZ1bmM6YGluZXRfbnRvcGAgc2hvdWxkIGJlIHVzZWQgaW5zdGVhZCBmb3IgSVB2NC92NiBkdWFsCiAgICBzdGFjayBzdXBwb3J0LgogCkBAIC00OTUsNyArNTU2LDcgQEAKIAogICAgU3VwcG9ydGVkIHZhbHVlcyBmb3IgKmFkZHJlc3NfZmFtaWx5KiBhcmUgY3VycmVudGx5IDpjb25zdDpgQUZfSU5FVGAgYW5kCiAgICA6Y29uc3Q6YEFGX0lORVQ2YC4gSWYgdGhlIElQIGFkZHJlc3Mgc3RyaW5nICppcF9zdHJpbmcqIGlzIGludmFsaWQsCi0gICA6ZXhjOmBzb2NrZXQuZXJyb3JgIHdpbGwgYmUgcmFpc2VkLiBOb3RlIHRoYXQgZXhhY3RseSB3aGF0IGlzIHZhbGlkIGRlcGVuZHMgb24KKyAgIDpleGM6YE9TRXJyb3JgIHdpbGwgYmUgcmFpc2VkLiBOb3RlIHRoYXQgZXhhY3RseSB3aGF0IGlzIHZhbGlkIGRlcGVuZHMgb24KICAgIGJvdGggdGhlIHZhbHVlIG9mICphZGRyZXNzX2ZhbWlseSogYW5kIHRoZSB1bmRlcmx5aW5nIGltcGxlbWVudGF0aW9uIG9mCiAgICA6YzpmdW5jOmBpbmV0X3B0b25gLgogCkBAIC01MTMsMTEgKzU3NCw1NCBAQAogICAgU3VwcG9ydGVkIHZhbHVlcyBmb3IgKmFkZHJlc3NfZmFtaWx5KiBhcmUgY3VycmVudGx5IDpjb25zdDpgQUZfSU5FVGAgYW5kCiAgICA6Y29uc3Q6YEFGX0lORVQ2YC4gSWYgdGhlIHN0cmluZyAqcGFja2VkX2lwKiBpcyBub3QgdGhlIGNvcnJlY3QgbGVuZ3RoIGZvciB0aGUKICAgIHNwZWNpZmllZCBhZGRyZXNzIGZhbWlseSwgOmV4YzpgVmFsdWVFcnJvcmAgd2lsbCBiZSByYWlzZWQuICBBCi0gICA6ZXhjOmBzb2NrZXQuZXJyb3JgIGlzIHJhaXNlZCBmb3IgZXJyb3JzIGZyb20gdGhlIGNhbGwgdG8gOmZ1bmM6YGluZXRfbnRvcGAuCisgICA6ZXhjOmBPU0Vycm9yYCBpcyByYWlzZWQgZm9yIGVycm9ycyBmcm9tIHRoZSBjYWxsIHRvIDpmdW5jOmBpbmV0X250b3BgLgogCiAgICBBdmFpbGFiaWxpdHk6IFVuaXggKG1heWJlIG5vdCBhbGwgcGxhdGZvcm1zKS4KIAogCisuLgorICAgWFhYOiBBcmUgc2VuZG1zZygpLCByZWN2bXNnKCkgYW5kIENNU0dfKigpIGF2YWlsYWJsZSBvbiBhbnkKKyAgIG5vbi1Vbml4IHBsYXRmb3Jtcz8gIFRoZSBvbGQgKG9ic29sZXRlPykgNC4yQlNEIGZvcm0gb2YgdGhlCisgICBpbnRlcmZhY2UsIGluIHdoaWNoIHN0cnVjdCBtc2doZHIgaGFzIG5vIG1zZ19jb250cm9sIG9yCisgICBtc2dfY29udHJvbGxlbiBtZW1iZXJzLCBpcyBub3QgY3VycmVudGx5IHN1cHBvcnRlZC4KKworLi4gZnVuY3Rpb246OiBDTVNHX0xFTihsZW5ndGgpCisKKyAgIFJldHVybiB0aGUgdG90YWwgbGVuZ3RoLCB3aXRob3V0IHRyYWlsaW5nIHBhZGRpbmcsIG9mIGFuIGFuY2lsbGFyeQorICAgZGF0YSBpdGVtIHdpdGggYXNzb2NpYXRlZCBkYXRhIG9mIHRoZSBnaXZlbiAqbGVuZ3RoKi4gIFRoaXMgdmFsdWUKKyAgIGNhbiBvZnRlbiBiZSB1c2VkIGFzIHRoZSBidWZmZXIgc2l6ZSBmb3IgOm1ldGg6YH5zb2NrZXQucmVjdm1zZ2AgdG8KKyAgIHJlY2VpdmUgYSBzaW5nbGUgaXRlbSBvZiBhbmNpbGxhcnkgZGF0YSwgYnV0IDpyZmM6YDM1NDJgIHJlcXVpcmVzCisgICBwb3J0YWJsZSBhcHBsaWNhdGlvbnMgdG8gdXNlIDpmdW5jOmBDTVNHX1NQQUNFYCBhbmQgdGh1cyBpbmNsdWRlCisgICBzcGFjZSBmb3IgcGFkZGluZywgZXZlbiB3aGVuIHRoZSBpdGVtIHdpbGwgYmUgdGhlIGxhc3QgaW4gdGhlCisgICBidWZmZXIuICBSYWlzZXMgOmV4YzpgT3ZlcmZsb3dFcnJvcmAgaWYgKmxlbmd0aCogaXMgb3V0c2lkZSB0aGUKKyAgIHBlcm1pc3NpYmxlIHJhbmdlIG9mIHZhbHVlcy4KKworICAgQXZhaWxhYmlsaXR5OiBtb3N0IFVuaXggcGxhdGZvcm1zLCBwb3NzaWJseSBvdGhlcnMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogQ01TR19TUEFDRShsZW5ndGgpCisKKyAgIFJldHVybiB0aGUgYnVmZmVyIHNpemUgbmVlZGVkIGZvciA6bWV0aDpgfnNvY2tldC5yZWN2bXNnYCB0bworICAgcmVjZWl2ZSBhbiBhbmNpbGxhcnkgZGF0YSBpdGVtIHdpdGggYXNzb2NpYXRlZCBkYXRhIG9mIHRoZSBnaXZlbgorICAgKmxlbmd0aCosIGFsb25nIHdpdGggYW55IHRyYWlsaW5nIHBhZGRpbmcuICBUaGUgYnVmZmVyIHNwYWNlIG5lZWRlZAorICAgdG8gcmVjZWl2ZSBtdWx0aXBsZSBpdGVtcyBpcyB0aGUgc3VtIG9mIHRoZSA6ZnVuYzpgQ01TR19TUEFDRWAKKyAgIHZhbHVlcyBmb3IgdGhlaXIgYXNzb2NpYXRlZCBkYXRhIGxlbmd0aHMuICBSYWlzZXMKKyAgIDpleGM6YE92ZXJmbG93RXJyb3JgIGlmICpsZW5ndGgqIGlzIG91dHNpZGUgdGhlIHBlcm1pc3NpYmxlIHJhbmdlCisgICBvZiB2YWx1ZXMuCisKKyAgIE5vdGUgdGhhdCBzb21lIHN5c3RlbXMgbWlnaHQgc3VwcG9ydCBhbmNpbGxhcnkgZGF0YSB3aXRob3V0CisgICBwcm92aWRpbmcgdGhpcyBmdW5jdGlvbi4gIEFsc28gbm90ZSB0aGF0IHNldHRpbmcgdGhlIGJ1ZmZlciBzaXplCisgICB1c2luZyB0aGUgcmVzdWx0cyBvZiB0aGlzIGZ1bmN0aW9uIG1heSBub3QgcHJlY2lzZWx5IGxpbWl0IHRoZQorICAgYW1vdW50IG9mIGFuY2lsbGFyeSBkYXRhIHRoYXQgY2FuIGJlIHJlY2VpdmVkLCBzaW5jZSBhZGRpdGlvbmFsCisgICBkYXRhIG1heSBiZSBhYmxlIHRvIGZpdCBpbnRvIHRoZSBwYWRkaW5nIGFyZWEuCisKKyAgIEF2YWlsYWJpbGl0eTogbW9zdCBVbml4IHBsYXRmb3JtcywgcG9zc2libHkgb3RoZXJzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IGdldGRlZmF1bHR0aW1lb3V0KCkKIAogICAgUmV0dXJuIHRoZSBkZWZhdWx0IHRpbWVvdXQgaW4gc2Vjb25kcyAoZmxvYXQpIGZvciBuZXcgc29ja2V0IG9iamVjdHMuIEEgdmFsdWUKQEAgLTUzMyw2ICs2MzcsNDkgQEAKICAgIG1lYW5pbmdzLgogCiAKKy4uIGZ1bmN0aW9uOjogc2V0aG9zdG5hbWUobmFtZSkKKworICAgU2V0IHRoZSBtYWNoaW5lJ3MgaG9zdG5hbWUgdG8gKm5hbWUqLiAgVGhpcyB3aWxsIHJhaXNlIGEKKyAgIDpleGM6YE9TRXJyb3JgIGlmIHlvdSBkb24ndCBoYXZlIGVub3VnaCByaWdodHMuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBpZl9uYW1laW5kZXgoKQorCisgICBSZXR1cm4gYSBsaXN0IG9mIG5ldHdvcmsgaW50ZXJmYWNlIGluZm9ybWF0aW9uCisgICAoaW5kZXggaW50LCBuYW1lIHN0cmluZykgdHVwbGVzLgorICAgOmV4YzpgT1NFcnJvcmAgaWYgdGhlIHN5c3RlbSBjYWxsIGZhaWxzLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogaWZfbmFtZXRvaW5kZXgoaWZfbmFtZSkKKworICAgUmV0dXJuIGEgbmV0d29yayBpbnRlcmZhY2UgaW5kZXggbnVtYmVyIGNvcnJlc3BvbmRpbmcgdG8gYW4KKyAgIGludGVyZmFjZSBuYW1lLgorICAgOmV4YzpgT1NFcnJvcmAgaWYgbm8gaW50ZXJmYWNlIHdpdGggdGhlIGdpdmVuIG5hbWUgZXhpc3RzLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogaWZfaW5kZXh0b25hbWUoaWZfaW5kZXgpCisKKyAgIFJldHVybiBhIG5ldHdvcmsgaW50ZXJmYWNlIG5hbWUgY29ycmVzcG9uZGluZyB0byBhCisgICBpbnRlcmZhY2UgaW5kZXggbnVtYmVyLgorICAgOmV4YzpgT1NFcnJvcmAgaWYgbm8gaW50ZXJmYWNlIHdpdGggdGhlIGdpdmVuIGluZGV4IGV4aXN0cy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBkYXRhOjogU29ja2V0VHlwZQogCiAgICBUaGlzIGlzIGEgUHl0aG9uIHR5cGUgb2JqZWN0IHRoYXQgcmVwcmVzZW50cyB0aGUgc29ja2V0IG9iamVjdCB0eXBlLiBJdCBpcyB0aGUKQEAgLTcwNiw2ICs4NTMsMTA5IEBACiAgICB0byB6ZXJvLiAoVGhlIGZvcm1hdCBvZiAqYWRkcmVzcyogZGVwZW5kcyBvbiB0aGUgYWRkcmVzcyBmYW1pbHkgLS0tIHNlZSBhYm92ZS4pCiAKIAorLi4gbWV0aG9kOjogc29ja2V0LnJlY3Ztc2coYnVmc2l6ZVssIGFuY2J1ZnNpemVbLCBmbGFnc11dKQorCisgICBSZWNlaXZlIG5vcm1hbCBkYXRhICh1cCB0byAqYnVmc2l6ZSogYnl0ZXMpIGFuZCBhbmNpbGxhcnkgZGF0YSBmcm9tCisgICB0aGUgc29ja2V0LiAgVGhlICphbmNidWZzaXplKiBhcmd1bWVudCBzZXRzIHRoZSBzaXplIGluIGJ5dGVzIG9mCisgICB0aGUgaW50ZXJuYWwgYnVmZmVyIHVzZWQgdG8gcmVjZWl2ZSB0aGUgYW5jaWxsYXJ5IGRhdGE7IGl0IGRlZmF1bHRzCisgICB0byAwLCBtZWFuaW5nIHRoYXQgbm8gYW5jaWxsYXJ5IGRhdGEgd2lsbCBiZSByZWNlaXZlZC4gIEFwcHJvcHJpYXRlCisgICBidWZmZXIgc2l6ZXMgZm9yIGFuY2lsbGFyeSBkYXRhIGNhbiBiZSBjYWxjdWxhdGVkIHVzaW5nCisgICA6ZnVuYzpgQ01TR19TUEFDRWAgb3IgOmZ1bmM6YENNU0dfTEVOYCwgYW5kIGl0ZW1zIHdoaWNoIGRvIG5vdCBmaXQKKyAgIGludG8gdGhlIGJ1ZmZlciBtaWdodCBiZSB0cnVuY2F0ZWQgb3IgZGlzY2FyZGVkLiAgVGhlICpmbGFncyoKKyAgIGFyZ3VtZW50IGRlZmF1bHRzIHRvIDAgYW5kIGhhcyB0aGUgc2FtZSBtZWFuaW5nIGFzIGZvcgorICAgOm1ldGg6YHJlY3ZgLgorCisgICBUaGUgcmV0dXJuIHZhbHVlIGlzIGEgNC10dXBsZTogYGAoZGF0YSwgYW5jZGF0YSwgbXNnX2ZsYWdzLAorICAgYWRkcmVzcylgYC4gIFRoZSAqZGF0YSogaXRlbSBpcyBhIDpjbGFzczpgYnl0ZXNgIG9iamVjdCBob2xkaW5nIHRoZQorICAgbm9uLWFuY2lsbGFyeSBkYXRhIHJlY2VpdmVkLiAgVGhlICphbmNkYXRhKiBpdGVtIGlzIGEgbGlzdCBvZiB6ZXJvCisgICBvciBtb3JlIHR1cGxlcyBgYChjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSlgYCByZXByZXNlbnRpbmcKKyAgIHRoZSBhbmNpbGxhcnkgZGF0YSAoY29udHJvbCBtZXNzYWdlcykgcmVjZWl2ZWQ6ICpjbXNnX2xldmVsKiBhbmQKKyAgICpjbXNnX3R5cGUqIGFyZSBpbnRlZ2VycyBzcGVjaWZ5aW5nIHRoZSBwcm90b2NvbCBsZXZlbCBhbmQKKyAgIHByb3RvY29sLXNwZWNpZmljIHR5cGUgcmVzcGVjdGl2ZWx5LCBhbmQgKmNtc2dfZGF0YSogaXMgYQorICAgOmNsYXNzOmBieXRlc2Agb2JqZWN0IGhvbGRpbmcgdGhlIGFzc29jaWF0ZWQgZGF0YS4gIFRoZSAqbXNnX2ZsYWdzKgorICAgaXRlbSBpcyB0aGUgYml0d2lzZSBPUiBvZiB2YXJpb3VzIGZsYWdzIGluZGljYXRpbmcgY29uZGl0aW9ucyBvbgorICAgdGhlIHJlY2VpdmVkIG1lc3NhZ2U7IHNlZSB5b3VyIHN5c3RlbSBkb2N1bWVudGF0aW9uIGZvciBkZXRhaWxzLgorICAgSWYgdGhlIHJlY2VpdmluZyBzb2NrZXQgaXMgdW5jb25uZWN0ZWQsICphZGRyZXNzKiBpcyB0aGUgYWRkcmVzcyBvZgorICAgdGhlIHNlbmRpbmcgc29ja2V0LCBpZiBhdmFpbGFibGU7IG90aGVyd2lzZSwgaXRzIHZhbHVlIGlzCisgICB1bnNwZWNpZmllZC4KKworICAgT24gc29tZSBzeXN0ZW1zLCA6bWV0aDpgc2VuZG1zZ2AgYW5kIDptZXRoOmByZWN2bXNnYCBjYW4gYmUgdXNlZCB0bworICAgcGFzcyBmaWxlIGRlc2NyaXB0b3JzIGJldHdlZW4gcHJvY2Vzc2VzIG92ZXIgYW4gOmNvbnN0OmBBRl9VTklYYAorICAgc29ja2V0LiAgV2hlbiB0aGlzIGZhY2lsaXR5IGlzIHVzZWQgKGl0IGlzIG9mdGVuIHJlc3RyaWN0ZWQgdG8KKyAgIDpjb25zdDpgU09DS19TVFJFQU1gIHNvY2tldHMpLCA6bWV0aDpgcmVjdm1zZ2Agd2lsbCByZXR1cm4sIGluIGl0cworICAgYW5jaWxsYXJ5IGRhdGEsIGl0ZW1zIG9mIHRoZSBmb3JtIGBgKHNvY2tldC5TT0xfU09DS0VULAorICAgc29ja2V0LlNDTV9SSUdIVFMsIGZkcylgYCwgd2hlcmUgKmZkcyogaXMgYSA6Y2xhc3M6YGJ5dGVzYCBvYmplY3QKKyAgIHJlcHJlc2VudGluZyB0aGUgbmV3IGZpbGUgZGVzY3JpcHRvcnMgYXMgYSBiaW5hcnkgYXJyYXkgb2YgdGhlCisgICBuYXRpdmUgQyA6Yzp0eXBlOmBpbnRgIHR5cGUuICBJZiA6bWV0aDpgcmVjdm1zZ2AgcmFpc2VzIGFuCisgICBleGNlcHRpb24gYWZ0ZXIgdGhlIHN5c3RlbSBjYWxsIHJldHVybnMsIGl0IHdpbGwgZmlyc3QgYXR0ZW1wdCB0bworICAgY2xvc2UgYW55IGZpbGUgZGVzY3JpcHRvcnMgcmVjZWl2ZWQgdmlhIHRoaXMgbWVjaGFuaXNtLgorCisgICBTb21lIHN5c3RlbXMgZG8gbm90IGluZGljYXRlIHRoZSB0cnVuY2F0ZWQgbGVuZ3RoIG9mIGFuY2lsbGFyeSBkYXRhCisgICBpdGVtcyB3aGljaCBoYXZlIGJlZW4gb25seSBwYXJ0aWFsbHkgcmVjZWl2ZWQuICBJZiBhbiBpdGVtIGFwcGVhcnMKKyAgIHRvIGV4dGVuZCBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgYnVmZmVyLCA6bWV0aDpgcmVjdm1zZ2Agd2lsbCBpc3N1ZQorICAgYSA6ZXhjOmBSdW50aW1lV2FybmluZ2AsIGFuZCB3aWxsIHJldHVybiB0aGUgcGFydCBvZiBpdCB3aGljaCBpcworICAgaW5zaWRlIHRoZSBidWZmZXIgcHJvdmlkZWQgaXQgaGFzIG5vdCBiZWVuIHRydW5jYXRlZCBiZWZvcmUgdGhlCisgICBzdGFydCBvZiBpdHMgYXNzb2NpYXRlZCBkYXRhLgorCisgICBPbiBzeXN0ZW1zIHdoaWNoIHN1cHBvcnQgdGhlIDpjb25zdDpgU0NNX1JJR0hUU2AgbWVjaGFuaXNtLCB0aGUKKyAgIGZvbGxvd2luZyBmdW5jdGlvbiB3aWxsIHJlY2VpdmUgdXAgdG8gKm1heGZkcyogZmlsZSBkZXNjcmlwdG9ycywKKyAgIHJldHVybmluZyB0aGUgbWVzc2FnZSBkYXRhIGFuZCBhIGxpc3QgY29udGFpbmluZyB0aGUgZGVzY3JpcHRvcnMKKyAgICh3aGlsZSBpZ25vcmluZyB1bmV4cGVjdGVkIGNvbmRpdGlvbnMgc3VjaCBhcyB1bnJlbGF0ZWQgY29udHJvbAorICAgbWVzc2FnZXMgYmVpbmcgcmVjZWl2ZWQpLiAgU2VlIGFsc28gOm1ldGg6YHNlbmRtc2dgLiA6OgorCisgICAgICBpbXBvcnQgc29ja2V0LCBhcnJheQorCisgICAgICBkZWYgcmVjdl9mZHMoc29jaywgbXNnbGVuLCBtYXhmZHMpOgorICAgICAgICAgIGZkcyA9IGFycmF5LmFycmF5KCJpIikgICAjIEFycmF5IG9mIGludHMKKyAgICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc29jay5yZWN2bXNnKG1zZ2xlbiwgc29ja2V0LkNNU0dfTEVOKG1heGZkcyAqIGZkcy5pdGVtc2l6ZSkpCisgICAgICAgICAgZm9yIGNtc2dfbGV2ZWwsIGNtc2dfdHlwZSwgY21zZ19kYXRhIGluIGFuY2RhdGE6CisgICAgICAgICAgICAgIGlmIChjbXNnX2xldmVsID09IHNvY2tldC5TT0xfU09DS0VUIGFuZCBjbXNnX3R5cGUgPT0gc29ja2V0LlNDTV9SSUdIVFMpOgorICAgICAgICAgICAgICAgICAgIyBBcHBlbmQgZGF0YSwgaWdub3JpbmcgYW55IHRydW5jYXRlZCBpbnRlZ2VycyBhdCB0aGUgZW5kLgorICAgICAgICAgICAgICAgICAgZmRzLmZyb21zdHJpbmcoY21zZ19kYXRhWzpsZW4oY21zZ19kYXRhKSAtIChsZW4oY21zZ19kYXRhKSAlIGZkcy5pdGVtc2l6ZSldKQorICAgICAgICAgIHJldHVybiBtc2csIGxpc3QoZmRzKQorCisgICBBdmFpbGFiaWxpdHk6IG1vc3QgVW5peCBwbGF0Zm9ybXMsIHBvc3NpYmx5IG90aGVycy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gbWV0aG9kOjogc29ja2V0LnJlY3Ztc2dfaW50byhidWZmZXJzWywgYW5jYnVmc2l6ZVssIGZsYWdzXV0pCisKKyAgIFJlY2VpdmUgbm9ybWFsIGRhdGEgYW5kIGFuY2lsbGFyeSBkYXRhIGZyb20gdGhlIHNvY2tldCwgYmVoYXZpbmcgYXMKKyAgIDptZXRoOmByZWN2bXNnYCB3b3VsZCwgYnV0IHNjYXR0ZXIgdGhlIG5vbi1hbmNpbGxhcnkgZGF0YSBpbnRvIGEKKyAgIHNlcmllcyBvZiBidWZmZXJzIGluc3RlYWQgb2YgcmV0dXJuaW5nIGEgbmV3IGJ5dGVzIG9iamVjdC4gIFRoZQorICAgKmJ1ZmZlcnMqIGFyZ3VtZW50IG11c3QgYmUgYW4gaXRlcmFibGUgb2Ygb2JqZWN0cyB0aGF0IGV4cG9ydAorICAgd3JpdGFibGUgYnVmZmVycyAoZS5nLiA6Y2xhc3M6YGJ5dGVhcnJheWAgb2JqZWN0cyk7IHRoZXNlIHdpbGwgYmUKKyAgIGZpbGxlZCB3aXRoIHN1Y2Nlc3NpdmUgY2h1bmtzIG9mIHRoZSBub24tYW5jaWxsYXJ5IGRhdGEgdW50aWwgaXQKKyAgIGhhcyBhbGwgYmVlbiB3cml0dGVuIG9yIHRoZXJlIGFyZSBubyBtb3JlIGJ1ZmZlcnMuICBUaGUgb3BlcmF0aW5nCisgICBzeXN0ZW0gbWF5IHNldCBhIGxpbWl0ICg6ZnVuYzpgfm9zLnN5c2NvbmZgIHZhbHVlIGBgU0NfSU9WX01BWGBgKQorICAgb24gdGhlIG51bWJlciBvZiBidWZmZXJzIHRoYXQgY2FuIGJlIHVzZWQuICBUaGUgKmFuY2J1ZnNpemUqIGFuZAorICAgKmZsYWdzKiBhcmd1bWVudHMgaGF2ZSB0aGUgc2FtZSBtZWFuaW5nIGFzIGZvciA6bWV0aDpgcmVjdm1zZ2AuCisKKyAgIFRoZSByZXR1cm4gdmFsdWUgaXMgYSA0LXR1cGxlOiBgYChuYnl0ZXMsIGFuY2RhdGEsIG1zZ19mbGFncywKKyAgIGFkZHJlc3MpYGAsIHdoZXJlICpuYnl0ZXMqIGlzIHRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgb2YKKyAgIG5vbi1hbmNpbGxhcnkgZGF0YSB3cml0dGVuIGludG8gdGhlIGJ1ZmZlcnMsIGFuZCAqYW5jZGF0YSosCisgICAqbXNnX2ZsYWdzKiBhbmQgKmFkZHJlc3MqIGFyZSB0aGUgc2FtZSBhcyBmb3IgOm1ldGg6YHJlY3Ztc2dgLgorCisgICBFeGFtcGxlOjoKKworICAgICAgPj4+IGltcG9ydCBzb2NrZXQKKyAgICAgID4+PiBzMSwgczIgPSBzb2NrZXQuc29ja2V0cGFpcigpCisgICAgICA+Pj4gYjEgPSBieXRlYXJyYXkoYictLS0tJykKKyAgICAgID4+PiBiMiA9IGJ5dGVhcnJheShiJzAxMjM0NTY3ODknKQorICAgICAgPj4+IGIzID0gYnl0ZWFycmF5KGInLS0tLS0tLS0tLS0tLS0nKQorICAgICAgPj4+IHMxLnNlbmQoYidNYXJ5IGhhZCBhIGxpdHRsZSBsYW1iJykKKyAgICAgIDIyCisgICAgICA+Pj4gczIucmVjdm1zZ19pbnRvKFtiMSwgbWVtb3J5dmlldyhiMilbMjo5XSwgYjNdKQorICAgICAgKDIyLCBbXSwgMCwgTm9uZSkKKyAgICAgID4+PiBbYjEsIGIyLCBiM10KKyAgICAgIFtieXRlYXJyYXkoYidNYXJ5JyksIGJ5dGVhcnJheShiJzAxIGhhZCBhIDknKSwgYnl0ZWFycmF5KGInbGl0dGxlIGxhbWItLS0nKV0KKworICAgQXZhaWxhYmlsaXR5OiBtb3N0IFVuaXggcGxhdGZvcm1zLCBwb3NzaWJseSBvdGhlcnMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIG1ldGhvZDo6IHNvY2tldC5yZWN2ZnJvbV9pbnRvKGJ1ZmZlclssIG5ieXRlc1ssIGZsYWdzXV0pCiAKICAgIFJlY2VpdmUgZGF0YSBmcm9tIHRoZSBzb2NrZXQsIHdyaXRpbmcgaXQgaW50byAqYnVmZmVyKiBpbnN0ZWFkIG9mIGNyZWF0aW5nIGEKQEAgLTc1NCw2ICsxMDA0LDQxIEBACiAgICBhYm92ZS4pCiAKIAorLi4gbWV0aG9kOjogc29ja2V0LnNlbmRtc2coYnVmZmVyc1ssIGFuY2RhdGFbLCBmbGFnc1ssIGFkZHJlc3NdXV0pCisKKyAgIFNlbmQgbm9ybWFsIGFuZCBhbmNpbGxhcnkgZGF0YSB0byB0aGUgc29ja2V0LCBnYXRoZXJpbmcgdGhlCisgICBub24tYW5jaWxsYXJ5IGRhdGEgZnJvbSBhIHNlcmllcyBvZiBidWZmZXJzIGFuZCBjb25jYXRlbmF0aW5nIGl0CisgICBpbnRvIGEgc2luZ2xlIG1lc3NhZ2UuICBUaGUgKmJ1ZmZlcnMqIGFyZ3VtZW50IHNwZWNpZmllcyB0aGUKKyAgIG5vbi1hbmNpbGxhcnkgZGF0YSBhcyBhbiBpdGVyYWJsZSBvZiBidWZmZXItY29tcGF0aWJsZSBvYmplY3RzCisgICAoZS5nLiA6Y2xhc3M6YGJ5dGVzYCBvYmplY3RzKTsgdGhlIG9wZXJhdGluZyBzeXN0ZW0gbWF5IHNldCBhIGxpbWl0CisgICAoOmZ1bmM6YH5vcy5zeXNjb25mYCB2YWx1ZSBgYFNDX0lPVl9NQVhgYCkgb24gdGhlIG51bWJlciBvZiBidWZmZXJzCisgICB0aGF0IGNhbiBiZSB1c2VkLiAgVGhlICphbmNkYXRhKiBhcmd1bWVudCBzcGVjaWZpZXMgdGhlIGFuY2lsbGFyeQorICAgZGF0YSAoY29udHJvbCBtZXNzYWdlcykgYXMgYW4gaXRlcmFibGUgb2YgemVybyBvciBtb3JlIHR1cGxlcworICAgYGAoY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEpYGAsIHdoZXJlICpjbXNnX2xldmVsKiBhbmQKKyAgICpjbXNnX3R5cGUqIGFyZSBpbnRlZ2VycyBzcGVjaWZ5aW5nIHRoZSBwcm90b2NvbCBsZXZlbCBhbmQKKyAgIHByb3RvY29sLXNwZWNpZmljIHR5cGUgcmVzcGVjdGl2ZWx5LCBhbmQgKmNtc2dfZGF0YSogaXMgYQorICAgYnVmZmVyLWNvbXBhdGlibGUgb2JqZWN0IGhvbGRpbmcgdGhlIGFzc29jaWF0ZWQgZGF0YS4gIE5vdGUgdGhhdAorICAgc29tZSBzeXN0ZW1zIChpbiBwYXJ0aWN1bGFyLCBzeXN0ZW1zIHdpdGhvdXQgOmZ1bmM6YENNU0dfU1BBQ0VgKQorICAgbWlnaHQgc3VwcG9ydCBzZW5kaW5nIG9ubHkgb25lIGNvbnRyb2wgbWVzc2FnZSBwZXIgY2FsbC4gIFRoZQorICAgKmZsYWdzKiBhcmd1bWVudCBkZWZhdWx0cyB0byAwIGFuZCBoYXMgdGhlIHNhbWUgbWVhbmluZyBhcyBmb3IKKyAgIDptZXRoOmBzZW5kYC4gIElmICphZGRyZXNzKiBpcyBzdXBwbGllZCBhbmQgbm90IGBgTm9uZWBgLCBpdCBzZXRzIGEKKyAgIGRlc3RpbmF0aW9uIGFkZHJlc3MgZm9yIHRoZSBtZXNzYWdlLiAgVGhlIHJldHVybiB2YWx1ZSBpcyB0aGUKKyAgIG51bWJlciBvZiBieXRlcyBvZiBub24tYW5jaWxsYXJ5IGRhdGEgc2VudC4KKworICAgVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBzZW5kcyB0aGUgbGlzdCBvZiBmaWxlIGRlc2NyaXB0b3JzICpmZHMqCisgICBvdmVyIGFuIDpjb25zdDpgQUZfVU5JWGAgc29ja2V0LCBvbiBzeXN0ZW1zIHdoaWNoIHN1cHBvcnQgdGhlCisgICA6Y29uc3Q6YFNDTV9SSUdIVFNgIG1lY2hhbmlzbS4gIFNlZSBhbHNvIDptZXRoOmByZWN2bXNnYC4gOjoKKworICAgICAgaW1wb3J0IHNvY2tldCwgYXJyYXkKKworICAgICAgZGVmIHNlbmRfZmRzKHNvY2ssIG1zZywgZmRzKToKKyAgICAgICAgICByZXR1cm4gc29jay5zZW5kbXNnKFttc2ddLCBbKHNvY2tldC5TT0xfU09DS0VULCBzb2NrZXQuU0NNX1JJR0hUUywgYXJyYXkuYXJyYXkoImkiLCBmZHMpKV0pCisKKyAgIEF2YWlsYWJpbGl0eTogbW9zdCBVbml4IHBsYXRmb3JtcywgcG9zc2libHkgb3RoZXJzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBtZXRob2Q6OiBzb2NrZXQuc2V0YmxvY2tpbmcoZmxhZykKIAogICAgU2V0IGJsb2NraW5nIG9yIG5vbi1ibG9ja2luZyBtb2RlIG9mIHRoZSBzb2NrZXQ6IGlmICpmbGFnKiBpcyBmYWxzZSwgdGhlCkBAIC03OTUsOSArMTA4MCw3IEBACiAgICBTaHV0IGRvd24gb25lIG9yIGJvdGggaGFsdmVzIG9mIHRoZSBjb25uZWN0aW9uLiAgSWYgKmhvdyogaXMgOmNvbnN0OmBTSFVUX1JEYCwKICAgIGZ1cnRoZXIgcmVjZWl2ZXMgYXJlIGRpc2FsbG93ZWQuICBJZiAqaG93KiBpcyA6Y29uc3Q6YFNIVVRfV1JgLCBmdXJ0aGVyIHNlbmRzCiAgICBhcmUgZGlzYWxsb3dlZC4gIElmICpob3cqIGlzIDpjb25zdDpgU0hVVF9SRFdSYCwgZnVydGhlciBzZW5kcyBhbmQgcmVjZWl2ZXMgYXJlCi0gICBkaXNhbGxvd2VkLiAgRGVwZW5kaW5nIG9uIHRoZSBwbGF0Zm9ybSwgc2h1dHRpbmcgZG93biBvbmUgaGFsZiBvZiB0aGUgY29ubmVjdGlvbgotICAgY2FuIGFsc28gY2xvc2UgdGhlIG9wcG9zaXRlIGhhbGYgKGUuZy4gb24gTWFjIE9TIFgsIGBgc2h1dGRvd24oU0hVVF9XUilgYCBkb2VzCi0gICBub3QgYWxsb3cgZnVydGhlciByZWFkcyBvbiB0aGUgb3RoZXIgZW5kIG9mIHRoZSBjb25uZWN0aW9uKS4KKyAgIGRpc2FsbG93ZWQuCiAKIE5vdGUgdGhhdCB0aGVyZSBhcmUgbm8gbWV0aG9kcyA6bWV0aDpgcmVhZGAgb3IgOm1ldGg6YHdyaXRlYDsgdXNlCiA6bWV0aDpgfnNvY2tldC5yZWN2YCBhbmQgOm1ldGg6YH5zb2NrZXQuc2VuZGAgd2l0aG91dCAqZmxhZ3MqIGFyZ3VtZW50IGluc3RlYWQuCkBAIC05NDIsMTMgKzEyMjUsMTMgQEAKICAgICAgICBhZiwgc29ja3R5cGUsIHByb3RvLCBjYW5vbm5hbWUsIHNhID0gcmVzCiAgICAgICAgdHJ5OgogICAgICAgICAgICBzID0gc29ja2V0LnNvY2tldChhZiwgc29ja3R5cGUsIHByb3RvKQotICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3IgYXMgbXNnOgorICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIG1zZzoKICAgICAgICAgICAgcyA9IE5vbmUKICAgICAgICAgICAgY29udGludWUKICAgICAgICB0cnk6CiAgICAgICAgICAgIHMuYmluZChzYSkKICAgICAgICAgICAgcy5saXN0ZW4oMSkKLSAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIG1zZzoKKyAgICAgICBleGNlcHQgT1NFcnJvciBhcyBtc2c6CiAgICAgICAgICAgIHMuY2xvc2UoKQogICAgICAgICAgICBzID0gTm9uZQogICAgICAgICAgICBjb250aW51ZQpAQCAtOTc3LDEyICsxMjYwLDEyIEBACiAgICAgICAgYWYsIHNvY2t0eXBlLCBwcm90bywgY2Fub25uYW1lLCBzYSA9IHJlcwogICAgICAgIHRyeToKICAgICAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoYWYsIHNvY2t0eXBlLCBwcm90bykKLSAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIG1zZzoKKyAgICAgICBleGNlcHQgT1NFcnJvciBhcyBtc2c6CiAgICAgICAgICAgIHMgPSBOb25lCiAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgdHJ5OgogICAgICAgICAgICBzLmNvbm5lY3Qoc2EpCi0gICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBtc2c6CisgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgbXNnOgogICAgICAgICAgICBzLmNsb3NlKCkKICAgICAgICAgICAgcyA9IE5vbmUKICAgICAgICAgICAgY29udGludWUKQEAgLTk5Niw3ICsxMjc5LDcgQEAKICAgIHByaW50KCdSZWNlaXZlZCcsIHJlcHIoZGF0YSkpCiAKIAotVGhlIGxhc3QgZXhhbXBsZSBzaG93cyBob3cgdG8gd3JpdGUgYSB2ZXJ5IHNpbXBsZSBuZXR3b3JrIHNuaWZmZXIgd2l0aCByYXcKK1RoZSBuZXh0IGV4YW1wbGUgc2hvd3MgaG93IHRvIHdyaXRlIGEgdmVyeSBzaW1wbGUgbmV0d29yayBzbmlmZmVyIHdpdGggcmF3CiBzb2NrZXRzIG9uIFdpbmRvd3MuIFRoZSBleGFtcGxlIHJlcXVpcmVzIGFkbWluaXN0cmF0b3IgcHJpdmlsZWdlcyB0byBtb2RpZnkKIHRoZSBpbnRlcmZhY2U6OgogCkBAIC0xMDIxLDExICsxMzA0LDUxIEBACiAgICAjIGRpc2FibGVkIHByb21pc2N1b3VzIG1vZGUKICAgIHMuaW9jdGwoc29ja2V0LlNJT19SQ1ZBTEwsIHNvY2tldC5SQ1ZBTExfT0ZGKQogCitUaGUgbGFzdCBleGFtcGxlIHNob3dzIGhvdyB0byB1c2UgdGhlIHNvY2tldCBpbnRlcmZhY2UgdG8gY29tbXVuaWNhdGUgdG8gYSBDQU4KK25ldHdvcmsuIFRoaXMgZXhhbXBsZSBtaWdodCByZXF1aXJlIHNwZWNpYWwgcHJpdmlsZWRnZTo6CisKKyAgIGltcG9ydCBzb2NrZXQKKyAgIGltcG9ydCBzdHJ1Y3QKKworCisgICAjIENBTiBmcmFtZSBwYWNraW5nL3VucGFja2luZyAoc2VlICdzdHJ1Y3QgY2FuX2ZyYW1lJyBpbiA8bGludXgvY2FuLmg+KQorCisgICBjYW5fZnJhbWVfZm10ID0gIj1JQjN4OHMiCisgICBjYW5fZnJhbWVfc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShjYW5fZnJhbWVfZm10KQorCisgICBkZWYgYnVpbGRfY2FuX2ZyYW1lKGNhbl9pZCwgZGF0YSk6CisgICAgICAgY2FuX2RsYyA9IGxlbihkYXRhKQorICAgICAgIGRhdGEgPSBkYXRhLmxqdXN0KDgsIGInXHgwMCcpCisgICAgICAgcmV0dXJuIHN0cnVjdC5wYWNrKGNhbl9mcmFtZV9mbXQsIGNhbl9pZCwgY2FuX2RsYywgZGF0YSkKKworICAgZGVmIGRpc3NlY3RfY2FuX2ZyYW1lKGZyYW1lKToKKyAgICAgICBjYW5faWQsIGNhbl9kbGMsIGRhdGEgPSBzdHJ1Y3QudW5wYWNrKGNhbl9mcmFtZV9mbXQsIGZyYW1lKQorICAgICAgIHJldHVybiAoY2FuX2lkLCBjYW5fZGxjLCBkYXRhWzpjYW5fZGxjXSkKKworCisgICAjIGNyZWF0ZSBhIHJhdyBzb2NrZXQgYW5kIGJpbmQgaXQgdG8gdGhlICd2Y2FuMCcgaW50ZXJmYWNlCisgICBzID0gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfQ0FOLCBzb2NrZXQuU09DS19SQVcsIHNvY2tldC5DQU5fUkFXKQorICAgcy5iaW5kKCgndmNhbjAnLCkpCisKKyAgIHdoaWxlIFRydWU6CisgICAgICAgY2YsIGFkZHIgPSBzLnJlY3Zmcm9tKGNhbl9mcmFtZV9zaXplKQorCisgICAgICAgcHJpbnQoJ1JlY2VpdmVkOiBjYW5faWQ9JXgsIGNhbl9kbGM9JXgsIGRhdGE9JXMnICUgZGlzc2VjdF9jYW5fZnJhbWUoY2YpKQorCisgICAgICAgdHJ5OgorICAgICAgICAgICBzLnNlbmQoY2YpCisgICAgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgICAgIHByaW50KCdFcnJvciBzZW5kaW5nIENBTiBmcmFtZScpCisKKyAgICAgICB0cnk6CisgICAgICAgICAgIHMuc2VuZChidWlsZF9jYW5fZnJhbWUoMHgwMSwgYidceDAxXHgwMlx4MDMnKSkKKyAgICAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgICAgcHJpbnQoJ0Vycm9yIHNlbmRpbmcgQ0FOIGZyYW1lJykKIAogUnVubmluZyBhbiBleGFtcGxlIHNldmVyYWwgdGltZXMgd2l0aCB0b28gc21hbGwgZGVsYXkgYmV0d2VlbiBleGVjdXRpb25zLCBjb3VsZAogbGVhZCB0byB0aGlzIGVycm9yOjoKIAotICAgc29ja2V0LmVycm9yOiBbRXJybm8gOThdIEFkZHJlc3MgYWxyZWFkeSBpbiB1c2UKKyAgIE9TRXJyb3I6IFtFcnJubyA5OF0gQWRkcmVzcyBhbHJlYWR5IGluIHVzZQogCiBUaGlzIGlzIGJlY2F1c2UgdGhlIHByZXZpb3VzIGV4ZWN1dGlvbiBoYXMgbGVmdCB0aGUgc29ja2V0IGluIGEgYGBUSU1FX1dBSVRgYAogc3RhdGUsIGFuZCBjYW4ndCBiZSBpbW1lZGlhdGVseSByZXVzZWQuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9zb2NrZXRzZXJ2ZXIucnN0IGIvRG9jL2xpYnJhcnkvc29ja2V0c2VydmVyLnJzdAppbmRleCA1Mjg3ZjE3Li43ZGMwY2M3IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9zb2NrZXRzZXJ2ZXIucnN0CisrKyBiL0RvYy9saWJyYXJ5L3NvY2tldHNlcnZlci5yc3QKQEAgLTE1NCw5ICsxNTQsMjEgQEAKIC4uIG1ldGhvZDo6IEJhc2VTZXJ2ZXIuc2VydmVfZm9yZXZlcihwb2xsX2ludGVydmFsPTAuNSkKIAogICAgSGFuZGxlIHJlcXVlc3RzIHVudGlsIGFuIGV4cGxpY2l0IDptZXRoOmBzaHV0ZG93bmAgcmVxdWVzdC4KLSAgIFBvbGwgZm9yIHNodXRkb3duIGV2ZXJ5ICpwb2xsX2ludGVydmFsKiBzZWNvbmRzLiBJZ25vcmVzIDphdHRyOmBzZWxmLnRpbWVvdXRgLgotICAgSWYgeW91IG5lZWQgdG8gZG8gcGVyaW9kaWMgdGFza3MsIGRvIHRoZW0gaW4gYW5vdGhlciB0aHJlYWQuCisgICBQb2xsIGZvciBzaHV0ZG93biBldmVyeSAqcG9sbF9pbnRlcnZhbCogc2Vjb25kcy4gSWdub3JlcyA6YXR0cjpgc2VsZi50aW1lb3V0YC4gIEl0IGFsc28gY2FsbHMKKyAgIDptZXRoOmBzZXJ2aWNlX2FjdGlvbnNgIHdoaWNoIG1heSBiZSB1c2VkIGJ5IGEgc3ViY2xhc3Mgb3IgTWl4aW4gdG8gcHJvdmlkZQorICAgdmFyaW91cyBjbGVhbnVwIGFjdGlvbnMuICBGb3IgZS5nLiBGb3JraW5nTWl4aW4gY2xhc3MgdXNlcworICAgOm1ldGg6YHNlcnZpY2VfYWN0aW9uc2AgdG8gY2xlYW51cCB0aGUgem9tYmllIGNoaWxkIHByb2Nlc3Nlcy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICBBZGRlZCBzZXJ2aWNlX2FjdGlvbnMgY2FsbCB0byB0aGUgc2VydmVfZm9yZXZlciBtZXRob2QuCisKKworLi4gbWV0aG9kOjogQmFzZVNlcnZlci5zZXJ2aWNlX2FjdGlvbnMoKQorCisgICBUaGlzIGlzIGNhbGxlZCBieSB0aGUgc2VydmVfZm9yZXZlciBsb29wLiBUaGlzIG1ldGhvZCBpcyBjYW4gYmUgb3ZlcnJpZGRlbgorICAgYnkgTWl4aW4ncyB0byBhZGQgY2xlYW51cCBvciBzZXJ2aWNlIHNwZWNpZmljIGFjdGlvbnMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAuLiBtZXRob2Q6OiBCYXNlU2VydmVyLnNodXRkb3duKCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvc3FsaXRlMy5yc3QgYi9Eb2MvbGlicmFyeS9zcWxpdGUzLnJzdAppbmRleCA0MWRiNWMzLi5lYTkyMDMyIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9zcWxpdGUzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9zcWxpdGUzLnJzdApAQCAtMzY5LDYgKzM2OSwyMiBAQAogICAgbWV0aG9kIHdpdGggOmNvbnN0OmBOb25lYCBmb3IgKmhhbmRsZXIqLgogCiAKKy4uIG1ldGhvZDo6IENvbm5lY3Rpb24uc2V0X3RyYWNlX2NhbGxiYWNrKHRyYWNlX2NhbGxiYWNrKQorCisgICBSZWdpc3RlcnMgKnRyYWNlX2NhbGxiYWNrKiB0byBiZSBjYWxsZWQgZm9yIGVhY2ggU1FMIHN0YXRlbWVudCB0aGF0IGlzCisgICBhY3R1YWxseSBleGVjdXRlZCBieSB0aGUgU1FMaXRlIGJhY2tlbmQuCisKKyAgIFRoZSBvbmx5IGFyZ3VtZW50IHBhc3NlZCB0byB0aGUgY2FsbGJhY2sgaXMgdGhlIHN0YXRlbWVudCAoYXMgc3RyaW5nKSB0aGF0CisgICBpcyBiZWluZyBleGVjdXRlZC4gVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgY2FsbGJhY2sgaXMgaWdub3JlZC4gTm90ZSB0aGF0CisgICB0aGUgYmFja2VuZCBkb2VzIG5vdCBvbmx5IHJ1biBzdGF0ZW1lbnRzIHBhc3NlZCB0byB0aGUgOm1ldGg6YEN1cnNvci5leGVjdXRlYAorICAgbWV0aG9kcy4gIE90aGVyIHNvdXJjZXMgaW5jbHVkZSB0aGUgdHJhbnNhY3Rpb24gbWFuYWdlbWVudCBvZiB0aGUgUHl0aG9uCisgICBtb2R1bGUgYW5kIHRoZSBleGVjdXRpb24gb2YgdHJpZ2dlcnMgZGVmaW5lZCBpbiB0aGUgY3VycmVudCBkYXRhYmFzZS4KKworICAgUGFzc2luZyA6Y29uc3Q6YE5vbmVgIGFzICp0cmFjZV9jYWxsYmFjayogd2lsbCBkaXNhYmxlIHRoZSB0cmFjZSBjYWxsYmFjay4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gbWV0aG9kOjogQ29ubmVjdGlvbi5lbmFibGVfbG9hZF9leHRlbnNpb24oZW5hYmxlZCkKIAogICAgVGhpcyByb3V0aW5lIGFsbG93cy9kaXNhbGxvd3MgdGhlIFNRTGl0ZSBlbmdpbmUgdG8gbG9hZCBTUUxpdGUgZXh0ZW5zaW9ucwpAQCAtNDIwLDEwICs0MzYsNiBAQAogICAgOm1vZDpgc3FsaXRlM2AgbW9kdWxlIHdpbGwgcmV0dXJuIFVuaWNvZGUgb2JqZWN0cyBmb3IgYGBURVhUYGAuIElmIHlvdSB3YW50IHRvCiAgICByZXR1cm4gYnl0ZXN0cmluZ3MgaW5zdGVhZCwgeW91IGNhbiBzZXQgaXQgdG8gOmNsYXNzOmBieXRlc2AuCiAKLSAgIEZvciBlZmZpY2llbmN5IHJlYXNvbnMsIHRoZXJlJ3MgYWxzbyBhIHdheSB0byByZXR1cm4gOmNsYXNzOmBzdHJgIG9iamVjdHMKLSAgIG9ubHkgZm9yIG5vbi1BU0NJSSBkYXRhLCBhbmQgOmNsYXNzOmBieXRlc2Agb3RoZXJ3aXNlLiBUbyBhY3RpdmF0ZSBpdCwgc2V0Ci0gICB0aGlzIGF0dHJpYnV0ZSB0byA6Y29uc3Q6YHNxbGl0ZTMuT3B0aW1pemVkVW5pY29kZWAuCi0KICAgIFlvdSBjYW4gYWxzbyBzZXQgaXQgdG8gYW55IG90aGVyIGNhbGxhYmxlIHRoYXQgYWNjZXB0cyBhIHNpbmdsZSBieXRlc3RyaW5nCiAgICBwYXJhbWV0ZXIgYW5kIHJldHVybnMgdGhlIHJlc3VsdGluZyBvYmplY3QuCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NzbC5yc3QgYi9Eb2MvbGlicmFyeS9zc2wucnN0CmluZGV4IDhjZDA3ZDcuLjc2OTE5OTYgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3NzbC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc3NsLnJzdApAQCAtNTMsOSArNTMsNTMgQEAKICAgIChjdXJyZW50bHkgcHJvdmlkZWQgYnkgdGhlIE9wZW5TU0wgbGlicmFyeSkuICBUaGlzIHNpZ25pZmllcyBzb21lCiAgICBwcm9ibGVtIGluIHRoZSBoaWdoZXItbGV2ZWwgZW5jcnlwdGlvbiBhbmQgYXV0aGVudGljYXRpb24gbGF5ZXIgdGhhdCdzCiAgICBzdXBlcmltcG9zZWQgb24gdGhlIHVuZGVybHlpbmcgbmV0d29yayBjb25uZWN0aW9uLiAgVGhpcyBlcnJvcgotICAgaXMgYSBzdWJ0eXBlIG9mIDpleGM6YHNvY2tldC5lcnJvcmAsIHdoaWNoIGluIHR1cm4gaXMgYSBzdWJ0eXBlIG9mCi0gICA6ZXhjOmBJT0Vycm9yYC4gIFRoZSBlcnJvciBjb2RlIGFuZCBtZXNzYWdlIG9mIDpleGM6YFNTTEVycm9yYCBpbnN0YW5jZXMKLSAgIGFyZSBwcm92aWRlZCBieSB0aGUgT3BlblNTTCBsaWJyYXJ5LgorICAgaXMgYSBzdWJ0eXBlIG9mIDpleGM6YE9TRXJyb3JgLiAgVGhlIGVycm9yIGNvZGUgYW5kIG1lc3NhZ2Ugb2YKKyAgIDpleGM6YFNTTEVycm9yYCBpbnN0YW5jZXMgYXJlIHByb3ZpZGVkIGJ5IHRoZSBPcGVuU1NMIGxpYnJhcnkuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICA6ZXhjOmBTU0xFcnJvcmAgdXNlZCB0byBiZSBhIHN1YnR5cGUgb2YgOmV4Yzpgc29ja2V0LmVycm9yYC4KKworLi4gZXhjZXB0aW9uOjogU1NMWmVyb1JldHVybkVycm9yCisKKyAgIEEgc3ViY2xhc3Mgb2YgOmV4YzpgU1NMRXJyb3JgIHJhaXNlZCB3aGVuIHRyeWluZyB0byByZWFkIG9yIHdyaXRlIGFuZAorICAgdGhlIFNTTCBjb25uZWN0aW9uIGhhcyBiZWVuIGNsb3NlZCBjbGVhbmx5LiAgTm90ZSB0aGF0IHRoaXMgZG9lc24ndAorICAgbWVhbiB0aGF0IHRoZSB1bmRlcmx5aW5nIHRyYW5zcG9ydCAocmVhZCBUQ1ApIGhhcyBiZWVuIGNsb3NlZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGV4Y2VwdGlvbjo6IFNTTFdhbnRSZWFkRXJyb3IKKworICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBTU0xFcnJvcmAgcmFpc2VkIGJ5IGEgOnJlZjpgbm9uLWJsb2NraW5nIFNTTCBzb2NrZXQKKyAgIDxzc2wtbm9uYmxvY2tpbmc+YCB3aGVuIHRyeWluZyB0byByZWFkIG9yIHdyaXRlIGRhdGEsIGJ1dCBtb3JlIGRhdGEgbmVlZHMKKyAgIHRvIGJlIHJlY2VpdmVkIG9uIHRoZSB1bmRlcmx5aW5nIFRDUCB0cmFuc3BvcnQgYmVmb3JlIHRoZSByZXF1ZXN0IGNhbiBiZQorICAgZnVsZmlsbGVkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZXhjZXB0aW9uOjogU1NMV2FudFdyaXRlRXJyb3IKKworICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBTU0xFcnJvcmAgcmFpc2VkIGJ5IGEgOnJlZjpgbm9uLWJsb2NraW5nIFNTTCBzb2NrZXQKKyAgIDxzc2wtbm9uYmxvY2tpbmc+YCB3aGVuIHRyeWluZyB0byByZWFkIG9yIHdyaXRlIGRhdGEsIGJ1dCBtb3JlIGRhdGEgbmVlZHMKKyAgIHRvIGJlIHNlbnQgb24gdGhlIHVuZGVybHlpbmcgVENQIHRyYW5zcG9ydCBiZWZvcmUgdGhlIHJlcXVlc3QgY2FuIGJlCisgICBmdWxmaWxsZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBleGNlcHRpb246OiBTU0xTeXNjYWxsRXJyb3IKKworICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBTU0xFcnJvcmAgcmFpc2VkIHdoZW4gYSBzeXN0ZW0gZXJyb3Igd2FzIGVuY291bnRlcmVkCisgICB3aGlsZSB0cnlpbmcgdG8gZnVsZmlsbCBhbiBvcGVyYXRpb24gb24gYSBTU0wgc29ja2V0LiAgVW5mb3J0dW5hdGVseSwKKyAgIHRoZXJlIGlzIG5vIGVhc3kgd2F5IHRvIGluc3BlY3QgdGhlIG9yaWdpbmFsIGVycm5vIG51bWJlci4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGV4Y2VwdGlvbjo6IFNTTEVPRkVycm9yCisKKyAgIEEgc3ViY2xhc3Mgb2YgOmV4YzpgU1NMRXJyb3JgIHJhaXNlZCB3aGVuIHRoZSBTU0wgY29ubmVjdGlvbiBoYXMgYmVlbgorICAgdGVybWluYXRlZCBhYnJ1cHRseS4gIEdlbmVyYWxseSwgeW91IHNob3VsZG4ndCB0cnkgdG8gcmV1c2UgdGhlIHVuZGVybHlpbmcKKyAgIHRyYW5zcG9ydCB3aGVuIHRoaXMgZXJyb3IgaXMgZW5jb3VudGVyZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAuLiBleGNlcHRpb246OiBDZXJ0aWZpY2F0ZUVycm9yCiAKQEAgLTE2MSw2ICsyMDUsMzUgQEAKIFJhbmRvbSBnZW5lcmF0aW9uCiBeXl5eXl5eXl5eXl5eXl5eXgogCisuLiBmdW5jdGlvbjo6IFJBTkRfYnl0ZXMobnVtKQorCisgICBSZXR1cm5zICpudW0qIGNyeXB0b2dyYXBoaWNhbGx5IHN0cm9uZyBwc2V1ZG8tcmFuZG9tIGJ5dGVzLiBSYWlzZXMgYW4KKyAgIDpjbGFzczpgU1NMRXJyb3JgIGlmIHRoZSBQUk5HIGhhcyBub3QgYmVlbiBzZWVkZWQgd2l0aCBlbm91Z2ggZGF0YSBvciBpZiB0aGUKKyAgIG9wZXJhdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50IFJBTkQgbWV0aG9kLiA6ZnVuYzpgUkFORF9zdGF0dXNgCisgICBjYW4gYmUgdXNlZCB0byBjaGVjayB0aGUgc3RhdHVzIG9mIHRoZSBQUk5HIGFuZCA6ZnVuYzpgUkFORF9hZGRgIGNhbiBiZSB1c2VkCisgICB0byBzZWVkIHRoZSBQUk5HLgorCisgICBSZWFkIHRoZSBXaWtpcGVkaWEgYXJ0aWNsZSwgYENyeXB0b2dyYXBoaWNhbGx5IHNlY3VyZSBwc2V1ZG9yYW5kb20gbnVtYmVyCisgICBnZW5lcmF0b3IgKENTUFJORykKKyAgIDxodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0NyeXB0b2dyYXBoaWNhbGx5X3NlY3VyZV9wc2V1ZG9yYW5kb21fbnVtYmVyX2dlbmVyYXRvcj5gXywKKyAgIHRvIGdldCB0aGUgcmVxdWlyZW1lbnRzIG9mIGEgY3J5cHRvZ3JhcGhpY2FsbHkgZ2VuZXJhdG9yLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZnVuY3Rpb246OiBSQU5EX3BzZXVkb19ieXRlcyhudW0pCisKKyAgIFJldHVybnMgKGJ5dGVzLCBpc19jcnlwdG9ncmFwaGljKTogYnl0ZXMgYXJlICpudW0qIHBzZXVkby1yYW5kb20gYnl0ZXMsCisgICBpc19jcnlwdG9ncmFwaGljIGlzIFRydWUgaWYgdGhlIGJ5dGVzIGdlbmVyYXRlZCBhcmUgY3J5cHRvZ3JhcGhpY2FsbHkKKyAgIHN0cm9uZy4gUmFpc2VzIGFuIDpjbGFzczpgU1NMRXJyb3JgIGlmIHRoZSBvcGVyYXRpb24gaXMgbm90IHN1cHBvcnRlZCBieSB0aGUKKyAgIGN1cnJlbnQgUkFORCBtZXRob2QuCisKKyAgIEdlbmVyYXRlZCBwc2V1ZG8tcmFuZG9tIGJ5dGUgc2VxdWVuY2VzIHdpbGwgYmUgdW5pcXVlIGlmIHRoZXkgYXJlIG9mCisgICBzdWZmaWNpZW50IGxlbmd0aCwgYnV0IGFyZSBub3QgbmVjZXNzYXJpbHkgdW5wcmVkaWN0YWJsZS4gVGhleSBjYW4gYmUgdXNlZAorICAgZm9yIG5vbi1jcnlwdG9ncmFwaGljIHB1cnBvc2VzIGFuZCBmb3IgY2VydGFpbiBwdXJwb3NlcyBpbiBjcnlwdG9ncmFwaGljCisgICBwcm90b2NvbHMsIGJ1dCB1c3VhbGx5IG5vdCBmb3Iga2V5IGdlbmVyYXRpb24gZXRjLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogLi4gZnVuY3Rpb246OiBSQU5EX3N0YXR1cygpCiAKICAgIFJldHVybnMgVHJ1ZSBpZiB0aGUgU1NMIHBzZXVkby1yYW5kb20gbnVtYmVyIGdlbmVyYXRvciBoYXMgYmVlbiBzZWVkZWQgd2l0aApAQCAtMTcwLDcgKzI0Myw3IEBACiAKIC4uIGZ1bmN0aW9uOjogUkFORF9lZ2QocGF0aCkKIAotICAgSWYgeW91IGFyZSBydW5uaW5nIGFuIGVudHJvcHktZ2F0aGVyaW5nIGRhZW1vbiAoRUdEKSBzb21ld2hlcmUsIGFuZCBgYHBhdGhgYAorICAgSWYgeW91IGFyZSBydW5uaW5nIGFuIGVudHJvcHktZ2F0aGVyaW5nIGRhZW1vbiAoRUdEKSBzb21ld2hlcmUsIGFuZCAqcGF0aCoKICAgIGlzIHRoZSBwYXRobmFtZSBvZiBhIHNvY2tldCBjb25uZWN0aW9uIG9wZW4gdG8gaXQsIHRoaXMgd2lsbCByZWFkIDI1NiBieXRlcwogICAgb2YgcmFuZG9tbmVzcyBmcm9tIHRoZSBzb2NrZXQsIGFuZCBhZGQgaXQgdG8gdGhlIFNTTCBwc2V1ZG8tcmFuZG9tIG51bWJlcgogICAgZ2VuZXJhdG9yIHRvIGluY3JlYXNlIHRoZSBzZWN1cml0eSBvZiBnZW5lcmF0ZWQgc2VjcmV0IGtleXMuICBUaGlzIGlzCkBAIC0xODEsOCArMjU0LDggQEAKIAogLi4gZnVuY3Rpb246OiBSQU5EX2FkZChieXRlcywgZW50cm9weSkKIAotICAgTWl4ZXMgdGhlIGdpdmVuIGBgYnl0ZXNgYCBpbnRvIHRoZSBTU0wgcHNldWRvLXJhbmRvbSBudW1iZXIgZ2VuZXJhdG9yLiAgVGhlCi0gICBwYXJhbWV0ZXIgYGBlbnRyb3B5YGAgKGEgZmxvYXQpIGlzIGEgbG93ZXIgYm91bmQgb24gdGhlIGVudHJvcHkgY29udGFpbmVkIGluCisgICBNaXhlcyB0aGUgZ2l2ZW4gKmJ5dGVzKiBpbnRvIHRoZSBTU0wgcHNldWRvLXJhbmRvbSBudW1iZXIgZ2VuZXJhdG9yLiAgVGhlCisgICBwYXJhbWV0ZXIgKmVudHJvcHkqIChhIGZsb2F0KSBpcyBhIGxvd2VyIGJvdW5kIG9uIHRoZSBlbnRyb3B5IGNvbnRhaW5lZCBpbgogICAgc3RyaW5nIChzbyB5b3UgY2FuIGFsd2F5cyB1c2UgOmNvbnN0OmAwLjBgKS4gIFNlZSA6cmZjOmAxNzUwYCBmb3IgbW9yZQogICAgaW5mb3JtYXRpb24gb24gc291cmNlcyBvZiBlbnRyb3B5LgogCkBAIC0yMzgsNiArMzExLDkgQEAKICAgIHdpbGwgYXR0ZW1wdCB0byB2YWxpZGF0ZSB0aGUgc2VydmVyIGNlcnRpZmljYXRlIGFnYWluc3QgdGhhdCBzZXQgb2Ygcm9vdAogICAgY2VydGlmaWNhdGVzLCBhbmQgd2lsbCBmYWlsIGlmIHRoZSB2YWxpZGF0aW9uIGF0dGVtcHQgZmFpbHMuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGZ1bmN0aW9uIGlzIG5vdyBJUHY2LWNvbXBhdGlibGUuCisKIC4uIGZ1bmN0aW9uOjogREVSX2NlcnRfdG9fUEVNX2NlcnQoREVSX2NlcnRfYnl0ZXMpCiAKICAgIEdpdmVuIGEgY2VydGlmaWNhdGUgYXMgYSBERVItZW5jb2RlZCBibG9iIG9mIGJ5dGVzLCByZXR1cm5zIGEgUEVNLWVuY29kZWQKQEAgLTM0NSw2ICs0MjEsNDYgQEAKIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKKy4uIGRhdGE6OiBPUF9DSVBIRVJfU0VSVkVSX1BSRUZFUkVOQ0UKKworICAgVXNlIHRoZSBzZXJ2ZXIncyBjaXBoZXIgb3JkZXJpbmcgcHJlZmVyZW5jZSwgcmF0aGVyIHRoYW4gdGhlIGNsaWVudCdzLgorICAgVGhpcyBvcHRpb24gaGFzIG5vIGVmZmVjdCBvbiBjbGllbnQgc29ja2V0cyBhbmQgU1NMdjIgc2VydmVyIHNvY2tldHMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogT1BfU0lOR0xFX0RIX1VTRQorCisgICBQcmV2ZW50cyByZS11c2Ugb2YgdGhlIHNhbWUgREgga2V5IGZvciBkaXN0aW5jdCBTU0wgc2Vzc2lvbnMuICBUaGlzCisgICBpbXByb3ZlcyBmb3J3YXJkIHNlY3JlY3kgYnV0IHJlcXVpcmVzIG1vcmUgY29tcHV0YXRpb25hbCByZXNvdXJjZXMuCisgICBUaGlzIG9wdGlvbiBvbmx5IGFwcGxpZXMgdG8gc2VydmVyIHNvY2tldHMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogT1BfU0lOR0xFX0VDREhfVVNFCisKKyAgIFByZXZlbnRzIHJlLXVzZSBvZiB0aGUgc2FtZSBFQ0RIIGtleSBmb3IgZGlzdGluY3QgU1NMIHNlc3Npb25zLiAgVGhpcworICAgaW1wcm92ZXMgZm9yd2FyZCBzZWNyZWN5IGJ1dCByZXF1aXJlcyBtb3JlIGNvbXB1dGF0aW9uYWwgcmVzb3VyY2VzLgorICAgVGhpcyBvcHRpb24gb25seSBhcHBsaWVzIHRvIHNlcnZlciBzb2NrZXRzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZGF0YTo6IE9QX05PX0NPTVBSRVNTSU9OCisKKyAgIERpc2FibGUgY29tcHJlc3Npb24gb24gdGhlIFNTTCBjaGFubmVsLiAgVGhpcyBpcyB1c2VmdWwgaWYgdGhlIGFwcGxpY2F0aW9uCisgICBwcm90b2NvbCBzdXBwb3J0cyBpdHMgb3duIGNvbXByZXNzaW9uIHNjaGVtZS4KKworICAgVGhpcyBvcHRpb24gaXMgb25seSBhdmFpbGFibGUgd2l0aCBPcGVuU1NMIDEuMC4wIGFuZCBsYXRlci4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGRhdGE6OiBIQVNfRUNESAorCisgICBXaGV0aGVyIHRoZSBPcGVuU1NMIGxpYnJhcnkgaGFzIGJ1aWx0LWluIHN1cHBvcnQgZm9yIEVsbGlwdGljIEN1cnZlLWJhc2VkCisgICBEaWZmaWUtSGVsbG1hbiBrZXkgZXhjaGFuZ2UuICBUaGlzIHNob3VsZCBiZSB0cnVlIHVubGVzcyB0aGUgZmVhdHVyZSB3YXMKKyAgIGV4cGxpY2l0bHkgZGlzYWJsZWQgYnkgdGhlIGRpc3RyaWJ1dG9yLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogLi4gZGF0YTo6IEhBU19TTkkKIAogICAgV2hldGhlciB0aGUgT3BlblNTTCBsaWJyYXJ5IGhhcyBidWlsdC1pbiBzdXBwb3J0IGZvciB0aGUgKlNlcnZlciBOYW1lCkBAIC0zNTQsNiArNDcwLDEzIEBACiAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCisuLiBkYXRhOjogQ0hBTk5FTF9CSU5ESU5HX1RZUEVTCisKKyAgIExpc3Qgb2Ygc3VwcG9ydGVkIFRMUyBjaGFubmVsIGJpbmRpbmcgdHlwZXMuICBTdHJpbmdzIGluIHRoaXMgbGlzdAorICAgY2FuIGJlIHVzZWQgYXMgYXJndW1lbnRzIHRvIDptZXRoOmBTU0xTb2NrZXQuZ2V0X2NoYW5uZWxfYmluZGluZ2AuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAuLiBkYXRhOjogT1BFTlNTTF9WRVJTSU9OCiAKICAgIFRoZSB2ZXJzaW9uIHN0cmluZyBvZiB0aGUgT3BlblNTTCBsaWJyYXJ5IGxvYWRlZCBieSB0aGUgaW50ZXJwcmV0ZXI6OgpAQCAtNDYzLDYgKzU4NiwyOCBAQAogICAgdmVyc2lvbiBvZiB0aGUgU1NMIHByb3RvY29sIHRoYXQgZGVmaW5lcyBpdHMgdXNlLCBhbmQgdGhlIG51bWJlciBvZiBzZWNyZXQKICAgIGJpdHMgYmVpbmcgdXNlZC4gIElmIG5vIGNvbm5lY3Rpb24gaGFzIGJlZW4gZXN0YWJsaXNoZWQsIHJldHVybnMgYGBOb25lYGAuCiAKKy4uIG1ldGhvZDo6IFNTTFNvY2tldC5jb21wcmVzc2lvbigpCisKKyAgIFJldHVybiB0aGUgY29tcHJlc3Npb24gYWxnb3JpdGhtIGJlaW5nIHVzZWQgYXMgYSBzdHJpbmcsIG9yIGBgTm9uZWBgCisgICBpZiB0aGUgY29ubmVjdGlvbiBpc24ndCBjb21wcmVzc2VkLgorCisgICBJZiB0aGUgaGlnaGVyLWxldmVsIHByb3RvY29sIHN1cHBvcnRzIGl0cyBvd24gY29tcHJlc3Npb24gbWVjaGFuaXNtLAorICAgeW91IGNhbiB1c2UgOmRhdGE6YE9QX05PX0NPTVBSRVNTSU9OYCB0byBkaXNhYmxlIFNTTC1sZXZlbCBjb21wcmVzc2lvbi4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIG1ldGhvZDo6IFNTTFNvY2tldC5nZXRfY2hhbm5lbF9iaW5kaW5nKGNiX3R5cGU9InRscy11bmlxdWUiKQorCisgICBHZXQgY2hhbm5lbCBiaW5kaW5nIGRhdGEgZm9yIGN1cnJlbnQgY29ubmVjdGlvbiwgYXMgYSBieXRlcyBvYmplY3QuICBSZXR1cm5zCisgICBgYE5vbmVgYCBpZiBub3QgY29ubmVjdGVkIG9yIHRoZSBoYW5kc2hha2UgaGFzIG5vdCBiZWVuIGNvbXBsZXRlZC4KKworICAgVGhlICpjYl90eXBlKiBwYXJhbWV0ZXIgYWxsb3cgc2VsZWN0aW9uIG9mIHRoZSBkZXNpcmVkIGNoYW5uZWwgYmluZGluZworICAgdHlwZS4gVmFsaWQgY2hhbm5lbCBiaW5kaW5nIHR5cGVzIGFyZSBsaXN0ZWQgaW4gdGhlCisgICA6ZGF0YTpgQ0hBTk5FTF9CSU5ESU5HX1RZUEVTYCBsaXN0LiAgQ3VycmVudGx5IG9ubHkgdGhlICd0bHMtdW5pcXVlJyBjaGFubmVsCisgICBiaW5kaW5nLCBkZWZpbmVkIGJ5IDpyZmM6YDU5MjlgLCBpcyBzdXBwb3J0ZWQuICA6ZXhjOmBWYWx1ZUVycm9yYCB3aWxsIGJlCisgICByYWlzZWQgaWYgYW4gdW5zdXBwb3J0ZWQgY2hhbm5lbCBiaW5kaW5nIHR5cGUgaXMgcmVxdWVzdGVkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogLi4gbWV0aG9kOjogU1NMU29ja2V0LnVud3JhcCgpCiAKQEAgLTUwMiw3ICs2NDcsNyBAQAogCiA6Y2xhc3M6YFNTTENvbnRleHRgIG9iamVjdHMgaGF2ZSB0aGUgZm9sbG93aW5nIG1ldGhvZHMgYW5kIGF0dHJpYnV0ZXM6CiAKLS4uIG1ldGhvZDo6IFNTTENvbnRleHQubG9hZF9jZXJ0X2NoYWluKGNlcnRmaWxlLCBrZXlmaWxlPU5vbmUpCisuLiBtZXRob2Q6OiBTU0xDb250ZXh0LmxvYWRfY2VydF9jaGFpbihjZXJ0ZmlsZSwga2V5ZmlsZT1Ob25lLCBwYXNzd29yZD1Ob25lKQogCiAgICBMb2FkIGEgcHJpdmF0ZSBrZXkgYW5kIHRoZSBjb3JyZXNwb25kaW5nIGNlcnRpZmljYXRlLiAgVGhlICpjZXJ0ZmlsZSoKICAgIHN0cmluZyBtdXN0IGJlIHRoZSBwYXRoIHRvIGEgc2luZ2xlIGZpbGUgaW4gUEVNIGZvcm1hdCBjb250YWluaW5nIHRoZQpAQCAtNTEzLDkgKzY1OCwyNSBAQAogICAgOnJlZjpgc3NsLWNlcnRpZmljYXRlc2AgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaG93IHRoZSBjZXJ0aWZpY2F0ZQogICAgaXMgc3RvcmVkIGluIHRoZSAqY2VydGZpbGUqLgogCisgICBUaGUgKnBhc3N3b3JkKiBhcmd1bWVudCBtYXkgYmUgYSBmdW5jdGlvbiB0byBjYWxsIHRvIGdldCB0aGUgcGFzc3dvcmQgZm9yCisgICBkZWNyeXB0aW5nIHRoZSBwcml2YXRlIGtleS4gIEl0IHdpbGwgb25seSBiZSBjYWxsZWQgaWYgdGhlIHByaXZhdGUga2V5IGlzCisgICBlbmNyeXB0ZWQgYW5kIGEgcGFzc3dvcmQgaXMgbmVjZXNzYXJ5LiAgSXQgd2lsbCBiZSBjYWxsZWQgd2l0aCBubyBhcmd1bWVudHMsCisgICBhbmQgaXQgc2hvdWxkIHJldHVybiBhIHN0cmluZywgYnl0ZXMsIG9yIGJ5dGVhcnJheS4gIElmIHRoZSByZXR1cm4gdmFsdWUgaXMKKyAgIGEgc3RyaW5nIGl0IHdpbGwgYmUgZW5jb2RlZCBhcyBVVEYtOCBiZWZvcmUgdXNpbmcgaXQgdG8gZGVjcnlwdCB0aGUga2V5LgorICAgQWx0ZXJuYXRpdmVseSBhIHN0cmluZywgYnl0ZXMsIG9yIGJ5dGVhcnJheSB2YWx1ZSBtYXkgYmUgc3VwcGxpZWQgZGlyZWN0bHkKKyAgIGFzIHRoZSAqcGFzc3dvcmQqIGFyZ3VtZW50LiAgSXQgd2lsbCBiZSBpZ25vcmVkIGlmIHRoZSBwcml2YXRlIGtleSBpcyBub3QKKyAgIGVuY3J5cHRlZCBhbmQgbm8gcGFzc3dvcmQgaXMgbmVlZGVkLgorCisgICBJZiB0aGUgKnBhc3N3b3JkKiBhcmd1bWVudCBpcyBub3Qgc3BlY2lmaWVkIGFuZCBhIHBhc3N3b3JkIGlzIHJlcXVpcmVkLAorICAgT3BlblNTTCdzIGJ1aWx0LWluIHBhc3N3b3JkIHByb21wdGluZyBtZWNoYW5pc20gd2lsbCBiZSB1c2VkIHRvCisgICBpbnRlcmFjdGl2ZWx5IHByb21wdCB0aGUgdXNlciBmb3IgYSBwYXNzd29yZC4KKwogICAgQW4gOmNsYXNzOmBTU0xFcnJvcmAgaXMgcmFpc2VkIGlmIHRoZSBwcml2YXRlIGtleSBkb2Vzbid0CiAgICBtYXRjaCB3aXRoIHRoZSBjZXJ0aWZpY2F0ZS4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIE5ldyBvcHRpb25hbCBhcmd1bWVudCAqcGFzc3dvcmQqLgorCiAuLiBtZXRob2Q6OiBTU0xDb250ZXh0LmxvYWRfdmVyaWZ5X2xvY2F0aW9ucyhjYWZpbGU9Tm9uZSwgY2FwYXRoPU5vbmUpCiAKICAgIExvYWQgYSBzZXQgb2YgImNlcnRpZmljYXRpb24gYXV0aG9yaXR5IiAoQ0EpIGNlcnRpZmljYXRlcyB1c2VkIHRvIHZhbGlkYXRlCkBAIC01NTQsNiArNzE1LDM4IEBACiAgICAgICB3aGVuIGNvbm5lY3RlZCwgdGhlIDptZXRoOmBTU0xTb2NrZXQuY2lwaGVyYCBtZXRob2Qgb2YgU1NMIHNvY2tldHMgd2lsbAogICAgICAgZ2l2ZSB0aGUgY3VycmVudGx5IHNlbGVjdGVkIGNpcGhlci4KIAorLi4gbWV0aG9kOjogU1NMQ29udGV4dC5sb2FkX2RoX3BhcmFtcyhkaGZpbGUpCisKKyAgIExvYWQgdGhlIGtleSBnZW5lcmF0aW9uIHBhcmFtZXRlcnMgZm9yIERpZmZpZS1IZWxtYW4gKERIKSBrZXkgZXhjaGFuZ2UuCisgICBVc2luZyBESCBrZXkgZXhjaGFuZ2UgaW1wcm92ZXMgZm9yd2FyZCBzZWNyZWN5IGF0IHRoZSBleHBlbnNlIG9mCisgICBjb21wdXRhdGlvbmFsIHJlc291cmNlcyAoYm90aCBvbiB0aGUgc2VydmVyIGFuZCBvbiB0aGUgY2xpZW50KS4KKyAgIFRoZSAqZGhmaWxlKiBwYXJhbWV0ZXIgc2hvdWxkIGJlIHRoZSBwYXRoIHRvIGEgZmlsZSBjb250YWluaW5nIERICisgICBwYXJhbWV0ZXJzIGluIFBFTSBmb3JtYXQuCisKKyAgIFRoaXMgc2V0dGluZyBkb2Vzbid0IGFwcGx5IHRvIGNsaWVudCBzb2NrZXRzLiAgWW91IGNhbiBhbHNvIHVzZSB0aGUKKyAgIDpkYXRhOmBPUF9TSU5HTEVfREhfVVNFYCBvcHRpb24gdG8gZnVydGhlciBpbXByb3ZlIHNlY3VyaXR5LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gbWV0aG9kOjogU1NMQ29udGV4dC5zZXRfZWNkaF9jdXJ2ZShjdXJ2ZV9uYW1lKQorCisgICBTZXQgdGhlIGN1cnZlIG5hbWUgZm9yIEVsbGlwdGljIEN1cnZlLWJhc2VkIERpZmZpZS1IZWxsbWFuIChFQ0RIKSBrZXkKKyAgIGV4Y2hhbmdlLiAgRUNESCBpcyBzaWduaWZpY2FudGx5IGZhc3RlciB0aGFuIHJlZ3VsYXIgREggd2hpbGUgYXJndWFibHkKKyAgIGFzIHNlY3VyZS4gIFRoZSAqY3VydmVfbmFtZSogcGFyYW1ldGVyIHNob3VsZCBiZSBhIHN0cmluZyBkZXNjcmliaW5nCisgICBhIHdlbGwta25vd24gZWxsaXB0aWMgY3VydmUsIGZvciBleGFtcGxlIGBgcHJpbWUyNTZ2MWBgIGZvciBhIHdpZGVseQorICAgc3VwcG9ydGVkIGN1cnZlLgorCisgICBUaGlzIHNldHRpbmcgZG9lc24ndCBhcHBseSB0byBjbGllbnQgc29ja2V0cy4gIFlvdSBjYW4gYWxzbyB1c2UgdGhlCisgICA6ZGF0YTpgT1BfU0lOR0xFX0VDREhfVVNFYCBvcHRpb24gdG8gZnVydGhlciBpbXByb3ZlIHNlY3VyaXR5LgorCisgICBUaGlzIG1ldGhvZCBpcyBub3QgYXZhaWxhYmxlIGlmIDpkYXRhOmBIQVNfRUNESGAgaXMgRmFsc2UuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisgICAuLiBzZWVhbHNvOjoKKyAgICAgIGBTU0wvVExTICYgUGVyZmVjdCBGb3J3YXJkIFNlY3JlY3kgPGh0dHA6Ly92aW5jZW50LmJlcm5hdC5pbS9lbi9ibG9nLzIwMTEtc3NsLXBlcmZlY3QtZm9yd2FyZC1zZWNyZWN5Lmh0bWw+YF8KKyAgICAgICAgIFZpbmNlbnQgQmVybmF0LgorCiAuLiBtZXRob2Q6OiBTU0xDb250ZXh0LndyYXBfc29ja2V0KHNvY2ssIHNlcnZlcl9zaWRlPUZhbHNlLCBcCiAgICAgICBkb19oYW5kc2hha2Vfb25fY29ubmVjdD1UcnVlLCBzdXBwcmVzc19yYWdnZWRfZW9mcz1UcnVlLCBcCiAgICAgICBzZXJ2ZXJfaG9zdG5hbWU9Tm9uZSkKQEAgLTk2OCwxMyArMTE2MSwxMCBAQAogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzb2NrLmRvX2hhbmRzaGFrZSgpCiAgICAgICAgICAgICBicmVhawotICAgICAgICBleGNlcHQgc3NsLlNTTEVycm9yIGFzIGVycjoKLSAgICAgICAgICAgIGlmIGVyci5hcmdzWzBdID09IHNzbC5TU0xfRVJST1JfV0FOVF9SRUFEOgotICAgICAgICAgICAgICAgIHNlbGVjdC5zZWxlY3QoW3NvY2tdLCBbXSwgW10pCi0gICAgICAgICAgICBlbGlmIGVyci5hcmdzWzBdID09IHNzbC5TU0xfRVJST1JfV0FOVF9XUklURToKLSAgICAgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtdLCBbc29ja10sIFtdKQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBleGNlcHQgc3NsLlNTTFdhbnRSZWFkRXJyb3I6CisgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtzb2NrXSwgW10sIFtdKQorICAgICAgICBleGNlcHQgc3NsLlNTTFdhbnRXcml0ZUVycm9yOgorICAgICAgICAgICAgc2VsZWN0LnNlbGVjdChbXSwgW3NvY2tdLCBbXSkKIAogCiAuLiBfc3NsLXNlY3VyaXR5OgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvc3RkdHlwZXMucnN0IGIvRG9jL2xpYnJhcnkvc3RkdHlwZXMucnN0CmluZGV4IDE1M2VlNDQuLmNlODM3NTcgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3N0ZHR5cGVzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9zdGR0eXBlcy5yc3QKQEAgLTE1LDYgKzE1LDEwIEBACiBUaGUgcHJpbmNpcGFsIGJ1aWx0LWluIHR5cGVzIGFyZSBudW1lcmljcywgc2VxdWVuY2VzLCBtYXBwaW5ncywgY2xhc3NlcywKIGluc3RhbmNlcyBhbmQgZXhjZXB0aW9ucy4KIAorU29tZSBjb2xsZWN0aW9uIGNsYXNzZXMgYXJlIG11dGFibGUuICBUaGUgbWV0aG9kcyB0aGF0IGFkZCwgc3VidHJhY3QsIG9yCityZWFycmFuZ2UgdGhlaXIgbWVtYmVycyBpbiBwbGFjZSwgYW5kIGRvbid0IHJldHVybiBhIHNwZWNpZmljIGl0ZW0sIG5ldmVyIHJldHVybgordGhlIGNvbGxlY3Rpb24gaW5zdGFuY2UgaXRzZWxmIGJ1dCBgYE5vbmVgYC4KKwogU29tZSBvcGVyYXRpb25zIGFyZSBzdXBwb3J0ZWQgYnkgc2V2ZXJhbCBvYmplY3QgdHlwZXM7IGluIHBhcnRpY3VsYXIsCiBwcmFjdGljYWxseSBhbGwgb2JqZWN0cyBjYW4gYmUgY29tcGFyZWQsIHRlc3RlZCBmb3IgdHJ1dGggdmFsdWUsIGFuZCBjb252ZXJ0ZWQKIHRvIGEgc3RyaW5nICh3aXRoIHRoZSA6ZnVuYzpgcmVwcmAgZnVuY3Rpb24gb3IgdGhlIHNsaWdodGx5IGRpZmZlcmVudApAQCAtOTk4LDYgKzEwMDIsMjMgQEAKICAgIHJlc3QgbG93ZXJjYXNlZC4KIAogCisuLiBtZXRob2Q6OiBzdHIuY2FzZWZvbGQoKQorCisgICBSZXR1cm4gYSBjYXNlZm9sZGVkIGNvcHkgb2YgdGhlIHN0cmluZy4gQ2FzZWZvbGRlZCBzdHJpbmdzIG1heSBiZSB1c2VkIGZvcgorICAgY2FzZWxlc3MgbWF0Y2hpbmcuCisKKyAgIENhc2Vmb2xkaW5nIGlzIHNpbWlsYXIgdG8gbG93ZXJjYXNpbmcgYnV0IG1vcmUgYWdncmVzc2l2ZSBiZWNhdXNlIGl0IGlzCisgICBpbnRlbmRlZCB0byByZW1vdmUgYWxsIGNhc2UgZGlzdGluY3Rpb25zIGluIGEgc3RyaW5nLiBGb3IgZXhhbXBsZSwgdGhlIEdlcm1hbgorICAgbG93ZXJjYXNlIGxldHRlciBgYCfDnydgYCBpcyBlcXVpdmFsZW50IHRvIGBgInNzImBgLiBTaW5jZSBpdCBpcyBhbHJlYWR5CisgICBsb3dlcmNhc2UsIDptZXRoOmBsb3dlcmAgd291bGQgZG8gbm90aGluZyB0byBgYCfDnydgYDsgOm1ldGg6YGNhc2Vmb2xkYAorICAgY29udmVydHMgaXQgdG8gYGAic3MiYGAuCisKKyAgIFRoZSBjYXNlZm9sZGluZyBhbGdvcml0aG0gaXMgZGVzY3JpYmVkIGluIHNlY3Rpb24gMy4xMyBvZiB0aGUgVW5pY29kZQorICAgU3RhbmRhcmQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIG1ldGhvZDo6IHN0ci5jZW50ZXIod2lkdGhbLCBmaWxsY2hhcl0pCiAKICAgIFJldHVybiBjZW50ZXJlZCBpbiBhIHN0cmluZyBvZiBsZW5ndGggKndpZHRoKi4gUGFkZGluZyBpcyBkb25lIHVzaW5nIHRoZQpAQCAtMTIwNSw2ICsxMjI2LDkgQEAKICAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGFsbCB0aGUgY2FzZWQgY2hhcmFjdGVycyBbNF1fIGNvbnZlcnRlZCB0bwogICAgbG93ZXJjYXNlLgogCisgICBUaGUgbG93ZXJjYXNpbmcgYWxnb3JpdGhtIHVzZWQgaXMgZGVzY3JpYmVkIGluIHNlY3Rpb24gMy4xMyBvZiB0aGUgVW5pY29kZQorICAgU3RhbmRhcmQuCisKIAogLi4gbWV0aG9kOjogc3RyLmxzdHJpcChbY2hhcnNdKQogCkBAIC0xMjc3LDcgKzEzMDEsNyBAQAogICAgdHdvIGVtcHR5IHN0cmluZ3MsIGZvbGxvd2VkIGJ5IHRoZSBzdHJpbmcgaXRzZWxmLgogCiAKLS4uIG1ldGhvZDo6IHN0ci5yc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pCisuLiBtZXRob2Q6OiBzdHIucnNwbGl0KHNlcD1Ob25lLCBtYXhzcGxpdD0tMSkKIAogICAgUmV0dXJuIGEgbGlzdCBvZiB0aGUgd29yZHMgaW4gdGhlIHN0cmluZywgdXNpbmcgKnNlcCogYXMgdGhlIGRlbGltaXRlciBzdHJpbmcuCiAgICBJZiAqbWF4c3BsaXQqIGlzIGdpdmVuLCBhdCBtb3N0ICptYXhzcGxpdCogc3BsaXRzIGFyZSBkb25lLCB0aGUgKnJpZ2h0bW9zdCoKQEAgLTEyOTksNyArMTMyMyw3IEBACiAgICAgICAnbWlzc2lzcycKIAogCi0uLiBtZXRob2Q6OiBzdHIuc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pCisuLiBtZXRob2Q6OiBzdHIuc3BsaXQoc2VwPU5vbmUsIG1heHNwbGl0PS0xKQogCiAgICBSZXR1cm4gYSBsaXN0IG9mIHRoZSB3b3JkcyBpbiB0aGUgc3RyaW5nLCB1c2luZyAqc2VwKiBhcyB0aGUgZGVsaW1pdGVyCiAgICBzdHJpbmcuICBJZiAqbWF4c3BsaXQqIGlzIGdpdmVuLCBhdCBtb3N0ICptYXhzcGxpdCogc3BsaXRzIGFyZSBkb25lICh0aHVzLApAQCAtMTM1Niw3ICsxMzgwLDggQEAKIC4uIG1ldGhvZDo6IHN0ci5zd2FwY2FzZSgpCiAKICAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIHVwcGVyY2FzZSBjaGFyYWN0ZXJzIGNvbnZlcnRlZCB0byBsb3dlcmNhc2UgYW5kCi0gICB2aWNlIHZlcnNhLgorICAgdmljZSB2ZXJzYS4gTm90ZSB0aGF0IGl0IGlzIG5vdCBuZWNlc3NhcmlseSB0cnVlIHRoYXQKKyAgIGBgcy5zd2FwY2FzZSgpLnN3YXBjYXNlKCkgPT0gc2BgLgogCiAKIC4uIG1ldGhvZDo6IHN0ci50aXRsZSgpCkBAIC0xNDA3LDcgKzE0MzIsMTEgQEAKICAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGFsbCB0aGUgY2FzZWQgY2hhcmFjdGVycyBbNF1fIGNvbnZlcnRlZCB0bwogICAgdXBwZXJjYXNlLiAgTm90ZSB0aGF0IGBgc3RyLnVwcGVyKCkuaXN1cHBlcigpYGAgbWlnaHQgYmUgYGBGYWxzZWBgIGlmIGBgc2BgCiAgICBjb250YWlucyB1bmNhc2VkIGNoYXJhY3RlcnMgb3IgaWYgdGhlIFVuaWNvZGUgY2F0ZWdvcnkgb2YgdGhlIHJlc3VsdGluZwotICAgY2hhcmFjdGVyKHMpIGlzIG5vdCAiTHUiIChMZXR0ZXIsIHVwcGVyY2FzZSksIGJ1dCBlLmcuICJMdCIgKExldHRlciwgdGl0bGVjYXNlKS4KKyAgIGNoYXJhY3RlcihzKSBpcyBub3QgIkx1IiAoTGV0dGVyLCB1cHBlcmNhc2UpLCBidXQgZS5nLiAiTHQiIChMZXR0ZXIsCisgICB0aXRsZWNhc2UpLgorCisgICBUaGUgdXBwZXJjYXNpbmcgYWxnb3JpdGhtIHVzZWQgaXMgZGVzY3JpYmVkIGluIHNlY3Rpb24gMy4xMyBvZiB0aGUgVW5pY29kZQorICAgU3RhbmRhcmQuCiAKIAogLi4gbWV0aG9kOjogc3RyLnpmaWxsKHdpZHRoKQpAQCAtMTY3Miw2ICsxNzAxLDggQEAKICAgIHNpbmdsZTogYXBwZW5kKCkgKHNlcXVlbmNlIG1ldGhvZCkKICAgIHNpbmdsZTogZXh0ZW5kKCkgKHNlcXVlbmNlIG1ldGhvZCkKICAgIHNpbmdsZTogY291bnQoKSAoc2VxdWVuY2UgbWV0aG9kKQorICAgc2luZ2xlOiBjbGVhcigpIChzZXF1ZW5jZSBtZXRob2QpCisgICBzaW5nbGU6IGNvcHkoKSAoc2VxdWVuY2UgbWV0aG9kKQogICAgc2luZ2xlOiBpbmRleCgpIChzZXF1ZW5jZSBtZXRob2QpCiAgICBzaW5nbGU6IGluc2VydCgpIChzZXF1ZW5jZSBtZXRob2QpCiAgICBzaW5nbGU6IHBvcCgpIChzZXF1ZW5jZSBtZXRob2QpCkBAIC0xNzAzLDYgKzE3MzQsMTIgQEAKIHwgYGBzLmV4dGVuZCh4KWBgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2xlbihzKTpsZW4ocyldID0gICB8IFwoMikgICAgICAgICAgICAgICAgfAogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgeGBgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8CiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgYGBzLmNsZWFyKClgYCAgICAgICAgICAgICAgICB8IHJlbW92ZSBhbGwgaXRlbXMgZnJvbSBgYHNgYCAgICB8ICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgYGBzLmNvcHkoKWBgICAgICAgICAgICAgICAgICB8IHJldHVybiBhIHNoYWxsb3cgY29weSBvZiBgYHNgYCB8ICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKIHwgYGBzLmNvdW50KHgpYGAgICAgICAgICAgICAgICB8IHJldHVybiBudW1iZXIgb2YgKmkqJ3MgZm9yICAgICB8ICAgICAgICAgICAgICAgICAgICAgfAogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgd2hpY2ggYGBzW2ldID09IHhgYCAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8CiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKQEAgLTE3ODEsNiArMTgxOCw5IEBACiAoOCkKICAgIDptZXRoOmBzb3J0YCBpcyBub3Qgc3VwcG9ydGVkIGJ5IDpjbGFzczpgYnl0ZWFycmF5YCBvYmplY3RzLgogCisgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisgICAgICAgOm1ldGg6YGNsZWFyYCBhbmQgOm1ldGg6YCFjb3B5YCBtZXRob2RzLgorCiAKIC4uIF9ieXRlcy1tZXRob2RzOgogCkBAIC0xNzk4LDYgKzE4MzgsMTIgQEAKIFdoZXJldmVyIG9uZSBvZiB0aGVzZSBtZXRob2RzIG5lZWRzIHRvIGludGVycHJldCB0aGUgYnl0ZXMgYXMgY2hhcmFjdGVycwogKGUuZy4gdGhlIDpmdW5jOmBpcy4uLmAgbWV0aG9kcyksIHRoZSBBU0NJSSBjaGFyYWN0ZXIgc2V0IGlzIGFzc3VtZWQuCiAKKy4uIHZlcnNpb25hZGRlZDo6IDMuMworICAgVGhlIGZ1bmN0aW9ucyA6ZnVuYzpgY291bnRgLCA6ZnVuYzpgZmluZGAsIDpmdW5jOmBpbmRleGAsCisgICA6ZnVuYzpgcmZpbmRgIGFuZCA6ZnVuYzpgcmluZGV4YCBoYXZlIGFkZGl0aW9uYWwgc2VtYW50aWNzIGNvbXBhcmVkIHRvCisgICB0aGUgY29ycmVzcG9uZGluZyBzdHJpbmcgZnVuY3Rpb25zOiBUaGV5IGFsc28gYWNjZXB0IGFuIGludGVnZXIgaW4KKyAgIHJhbmdlIDAgdG8gMjU1IChhIGJ5dGUpIGFzIHRoZWlyIGZpcnN0IGFyZ3VtZW50LgorCiAuLiBub3RlOjoKIAogICAgVGhlIG1ldGhvZHMgb24gYnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzIGRvbid0IGFjY2VwdCBzdHJpbmdzIGFzIHRoZWlyCkBAIC0yMzM2LDcgKzIzODIsNyBAQAogCiA6Y2xhc3M6YG1lbW9yeXZpZXdgIG9iamVjdHMgYWxsb3cgUHl0aG9uIGNvZGUgdG8gYWNjZXNzIHRoZSBpbnRlcm5hbCBkYXRhCiBvZiBhbiBvYmplY3QgdGhhdCBzdXBwb3J0cyB0aGUgOnJlZjpgYnVmZmVyIHByb3RvY29sIDxidWZmZXJvYmplY3RzPmAgd2l0aG91dAotY29weWluZy4gIE1lbW9yeSBpcyBnZW5lcmFsbHkgaW50ZXJwcmV0ZWQgYXMgc2ltcGxlIGJ5dGVzLgorY29weWluZy4KIAogLi4gY2xhc3M6OiBtZW1vcnl2aWV3KG9iaikKIApAQCAtMjM1MCw0MyArMjM5Niw5MiBAQAogICAgaXMgYSBzaW5nbGUgYnl0ZSwgYnV0IG90aGVyIHR5cGVzIHN1Y2ggYXMgOmNsYXNzOmBhcnJheS5hcnJheWAgbWF5IGhhdmUKICAgIGJpZ2dlciBlbGVtZW50cy4KIAotICAgYGBsZW4odmlldylgYCByZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIG1lbW9yeXZpZXcsCi0gICAqdmlldyouICBUaGUgOmNsYXNzOmB+bWVtb3J5dmlldy5pdGVtc2l6ZWAgYXR0cmlidXRlIHdpbGwgZ2l2ZSB5b3UgdGhlCisgICBgYGxlbih2aWV3KWBgIGlzIGVxdWFsIHRvIHRoZSBsZW5ndGggb2YgOmNsYXNzOmB+bWVtb3J5dmlldy50b2xpc3RgLgorICAgSWYgYGB2aWV3Lm5kaW0gPSAwYGAsIHRoZSBsZW5ndGggaXMgMS4gSWYgYGB2aWV3Lm5kaW0gPSAxYGAsIHRoZSBsZW5ndGgKKyAgIGlzIGVxdWFsIHRvIHRoZSBudW1iZXIgb2YgZWxlbWVudHMgaW4gdGhlIHZpZXcuIEZvciBoaWdoZXIgZGltZW5zaW9ucywKKyAgIHRoZSBsZW5ndGggaXMgZXF1YWwgdG8gdGhlIGxlbmd0aCBvZiB0aGUgbmVzdGVkIGxpc3QgcmVwcmVzZW50YXRpb24gb2YKKyAgIHRoZSB2aWV3LiBUaGUgOmNsYXNzOmB+bWVtb3J5dmlldy5pdGVtc2l6ZWAgYXR0cmlidXRlIHdpbGwgZ2l2ZSB5b3UgdGhlCiAgICBudW1iZXIgb2YgYnl0ZXMgaW4gYSBzaW5nbGUgZWxlbWVudC4KIAotICAgQSA6Y2xhc3M6YG1lbW9yeXZpZXdgIHN1cHBvcnRzIHNsaWNpbmcgdG8gZXhwb3NlIGl0cyBkYXRhLiAgVGFraW5nIGEgc2luZ2xlCi0gICBpbmRleCB3aWxsIHJldHVybiBhIHNpbmdsZSBlbGVtZW50IGFzIGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0LiAgRnVsbAotICAgc2xpY2luZyB3aWxsIHJlc3VsdCBpbiBhIHN1YnZpZXc6OgorICAgQSA6Y2xhc3M6YG1lbW9yeXZpZXdgIHN1cHBvcnRzIHNsaWNpbmcgdG8gZXhwb3NlIGl0cyBkYXRhLiBJZgorICAgOmNsYXNzOmB+bWVtb3J5dmlldy5mb3JtYXRgIGlzIG9uZSBvZiB0aGUgbmF0aXZlIGZvcm1hdCBzcGVjaWZpZXJzCisgICBmcm9tIHRoZSA6bW9kOmBzdHJ1Y3RgIG1vZHVsZSwgaW5kZXhpbmcgd2lsbCByZXR1cm4gYSBzaW5nbGUgZWxlbWVudAorICAgd2l0aCB0aGUgY29ycmVjdCB0eXBlLiBGdWxsIHNsaWNpbmcgd2lsbCByZXN1bHQgaW4gYSBzdWJ2aWV3OjoKIAotICAgICAgPj4+IHYgPSBtZW1vcnl2aWV3KGInYWJjZWZnJykKLSAgICAgID4+PiB2WzFdCi0gICAgICBiJ2InCi0gICAgICA+Pj4gdlstMV0KLSAgICAgIGInZycKLSAgICAgID4+PiB2WzE6NF0KLSAgICAgIDxtZW1vcnkgYXQgMHg3N2FiMjg+Ci0gICAgICA+Pj4gYnl0ZXModlsxOjRdKQotICAgICAgYidiY2UnCisgICAgPj4+IHYgPSBtZW1vcnl2aWV3KGInYWJjZWZnJykKKyAgICA+Pj4gdlsxXQorICAgIDk4CisgICAgPj4+IHZbLTFdCisgICAgMTAzCisgICAgPj4+IHZbMTo0XQorICAgIDxtZW1vcnkgYXQgMHg3ZjNkZGM5ZjQzNTA+CisgICAgPj4+IGJ5dGVzKHZbMTo0XSkKKyAgICBiJ2JjZScKIAotICAgSWYgdGhlIG9iamVjdCB0aGUgbWVtb3J5dmlldyBpcyBvdmVyIHN1cHBvcnRzIGNoYW5naW5nIGl0cyBkYXRhLCB0aGUKLSAgIG1lbW9yeXZpZXcgc3VwcG9ydHMgc2xpY2UgYXNzaWdubWVudDo6CisgICBPdGhlciBuYXRpdmUgZm9ybWF0czo6CisKKyAgICAgID4+PiBpbXBvcnQgYXJyYXkKKyAgICAgID4+PiBhID0gYXJyYXkuYXJyYXkoJ2wnLCBbLTExMTExMTExLCAyMjIyMjIyMiwgLTMzMzMzMzMzLCA0NDQ0NDQ0NF0pCisgICAgICA+Pj4gYVswXQorICAgICAgLTExMTExMTExCisgICAgICA+Pj4gYVstMV0KKyAgICAgIDQ0NDQ0NDQ0CisgICAgICA+Pj4gYVsyOjNdLnRvbGlzdCgpCisgICAgICBbLTMzMzMzMzMzXQorICAgICAgPj4+IGFbOjoyXS50b2xpc3QoKQorICAgICAgWy0xMTExMTExMSwgLTMzMzMzMzMzXQorICAgICAgPj4+IGFbOjotMV0udG9saXN0KCkKKyAgICAgIFs0NDQ0NDQ0NCwgLTMzMzMzMzMzLCAyMjIyMjIyMiwgLTExMTExMTExXQorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworICAgSWYgdGhlIHVuZGVybHlpbmcgb2JqZWN0IGlzIHdyaXRhYmxlLCB0aGUgbWVtb3J5dmlldyBzdXBwb3J0cyBzbGljZQorICAgYXNzaWdubWVudC4gUmVzaXppbmcgaXMgbm90IGFsbG93ZWQ6OgogCiAgICAgICA+Pj4gZGF0YSA9IGJ5dGVhcnJheShiJ2FiY2VmZycpCiAgICAgICA+Pj4gdiA9IG1lbW9yeXZpZXcoZGF0YSkKICAgICAgID4+PiB2LnJlYWRvbmx5CiAgICAgICBGYWxzZQotICAgICAgPj4+IHZbMF0gPSBiJ3onCisgICAgICA+Pj4gdlswXSA9IG9yZChiJ3onKQogICAgICAgPj4+IGRhdGEKICAgICAgIGJ5dGVhcnJheShiJ3piY2VmZycpCiAgICAgICA+Pj4gdlsxOjRdID0gYicxMjMnCiAgICAgICA+Pj4gZGF0YQogICAgICAgYnl0ZWFycmF5KGInejEyM2ZnJykKLSAgICAgID4+PiB2WzJdID0gYidzcGFtJworICAgICAgPj4+IHZbMjozXSA9IGInc3BhbScKICAgICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMSwgaW4gPG1vZHVsZT4KLSAgICAgIFZhbHVlRXJyb3I6IGNhbm5vdCBtb2RpZnkgc2l6ZSBvZiBtZW1vcnl2aWV3IG9iamVjdAorICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMSwgaW4gPG1vZHVsZT4KKyAgICAgIFZhbHVlRXJyb3I6IG1lbW9yeXZpZXcgYXNzaWdubWVudDogbHZhbHVlIGFuZCBydmFsdWUgaGF2ZSBkaWZmZXJlbnQgc3RydWN0dXJlcworICAgICAgPj4+IHZbMjo2XSA9IGInc3BhbScKKyAgICAgID4+PiBkYXRhCisgICAgICBieXRlYXJyYXkoYid6MXNwYW0nKQogCi0gICBOb3RpY2UgaG93IHRoZSBzaXplIG9mIHRoZSBtZW1vcnl2aWV3IG9iamVjdCBjYW5ub3QgYmUgY2hhbmdlZC4KKyAgIE1lbW9yeXZpZXdzIG9mIGhhc2hhYmxlIChyZWFkLW9ubHkpIHR5cGVzIGFyZSBhbHNvIGhhc2hhYmxlLiBUaGUgaGFzaAorICAgaXMgZGVmaW5lZCBhcyBgYGhhc2gobSkgPT0gaGFzaChtLnRvYnl0ZXMoKSlgYDo6CisKKyAgICAgID4+PiB2ID0gbWVtb3J5dmlldyhiJ2FiY2VmZycpCisgICAgICA+Pj4gaGFzaCh2KSA9PSBoYXNoKGInYWJjZWZnJykKKyAgICAgIFRydWUKKyAgICAgID4+PiBoYXNoKHZbMjo0XSkgPT0gaGFzaChiJ2NlJykKKyAgICAgIFRydWUKKyAgICAgID4+PiBoYXNoKHZbOjotMl0pID09IGhhc2goYidhYmNlZmcnWzo6LTJdKQorICAgICAgVHJ1ZQorCisgICBIYXNoaW5nIG9mIG11bHRpLWRpbWVuc2lvbmFsIG9iamVjdHMgaXMgc3VwcG9ydGVkOjoKKworICAgICAgPj4+IGJ1ZiA9IGJ5dGVzKGxpc3QocmFuZ2UoMTIpKSkKKyAgICAgID4+PiB4ID0gbWVtb3J5dmlldyhidWYpCisgICAgICA+Pj4geSA9IHguY2FzdCgnQicsIHNoYXBlPVsyLDIsM10pCisgICAgICA+Pj4geC50b2xpc3QoKQorICAgICAgWzAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMV0KKyAgICAgID4+PiB5LnRvbGlzdCgpCisgICAgICBbW1swLCAxLCAyXSwgWzMsIDQsIDVdXSwgW1s2LCA3LCA4XSwgWzksIDEwLCAxMV1dXQorICAgICAgPj4+IGhhc2goeCkgPT0gaGFzaCh5KSA9PSBoYXNoKHkudG9ieXRlcygpKQorICAgICAgVHJ1ZQorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgTWVtb3J5dmlldyBvYmplY3RzIGFyZSBub3cgaGFzaGFibGUuCisKIAogICAgOmNsYXNzOmBtZW1vcnl2aWV3YCBoYXMgc2V2ZXJhbCBtZXRob2RzOgogCkBAIC0yNDAxLDEyICsyNDk2LDIwIEBACiAgICAgICAgICA+Pj4gYnl0ZXMobSkKICAgICAgICAgIGInYWJjJwogCisgICAgICBGb3Igbm9uLWNvbnRpZ3VvdXMgYXJyYXlzIHRoZSByZXN1bHQgaXMgZXF1YWwgdG8gdGhlIGZsYXR0ZW5lZCBsaXN0CisgICAgICByZXByZXNlbnRhdGlvbiB3aXRoIGFsbCBlbGVtZW50cyBjb252ZXJ0ZWQgdG8gYnl0ZXMuCisKICAgIC4uIG1ldGhvZDo6IHRvbGlzdCgpCiAKLSAgICAgIFJldHVybiB0aGUgZGF0YSBpbiB0aGUgYnVmZmVyIGFzIGEgbGlzdCBvZiBpbnRlZ2Vycy4gOjoKKyAgICAgIFJldHVybiB0aGUgZGF0YSBpbiB0aGUgYnVmZmVyIGFzIGEgbGlzdCBvZiBlbGVtZW50cy4gOjoKIAogICAgICAgICAgPj4+IG1lbW9yeXZpZXcoYidhYmMnKS50b2xpc3QoKQogICAgICAgICAgWzk3LCA5OCwgOTldCisgICAgICAgICA+Pj4gaW1wb3J0IGFycmF5CisgICAgICAgICA+Pj4gYSA9IGFycmF5LmFycmF5KCdkJywgWzEuMSwgMi4yLCAzLjNdKQorICAgICAgICAgPj4+IG0gPSBtZW1vcnl2aWV3KGEpCisgICAgICAgICA+Pj4gbS50b2xpc3QoKQorICAgICAgICAgWzEuMSwgMi4yLCAzLjNdCiAKICAgIC4uIG1ldGhvZDo6IHJlbGVhc2UoKQogCkBAIC0yNDMzLDcgKzI1MzYsNyBAQAogICAgICAgICAgPj4+IHdpdGggbWVtb3J5dmlldyhiJ2FiYycpIGFzIG06CiAgICAgICAgICAuLi4gICAgIG1bMF0KICAgICAgICAgIC4uLgotICAgICAgICAgYidhJworICAgICAgICAgOTcKICAgICAgICAgID4+PiBtWzBdCiAgICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgICAgICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDEsIGluIDxtb2R1bGU+CkBAIC0yNDQxLDQ1ICsyNTQ0LDIxOSBAQAogCiAgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAorICAgLi4gbWV0aG9kOjogY2FzdChmb3JtYXRbLCBzaGFwZV0pCisKKyAgICAgIENhc3QgYSBtZW1vcnl2aWV3IHRvIGEgbmV3IGZvcm1hdCBvciBzaGFwZS4gKnNoYXBlKiBkZWZhdWx0cyB0bworICAgICAgYGBbYnl0ZV9sZW5ndGgvL25ld19pdGVtc2l6ZV1gYCwgd2hpY2ggbWVhbnMgdGhhdCB0aGUgcmVzdWx0IHZpZXcKKyAgICAgIHdpbGwgYmUgb25lLWRpbWVuc2lvbmFsLiBUaGUgcmV0dXJuIHZhbHVlIGlzIGEgbmV3IG1lbW9yeXZpZXcsIGJ1dAorICAgICAgdGhlIGJ1ZmZlciBpdHNlbGYgaXMgbm90IGNvcGllZC4gU3VwcG9ydGVkIGNhc3RzIGFyZSAxRCAtPiBDLWNvbnRpZ3VvdXMKKyAgICAgIGFuZCBDLWNvbnRpZ3VvdXMgLT4gMUQuIE9uZSBvZiB0aGUgZm9ybWF0cyBtdXN0IGJlIGEgYnl0ZSBmb3JtYXQKKyAgICAgICgnQicsICdiJyBvciAnYycpLiBUaGUgYnl0ZSBsZW5ndGggb2YgdGhlIHJlc3VsdCBtdXN0IGJlIHRoZSBzYW1lCisgICAgICBhcyB0aGUgb3JpZ2luYWwgbGVuZ3RoLgorCisgICAgICBDYXN0IDFEL2xvbmcgdG8gMUQvdW5zaWduZWQgYnl0ZXM6OgorCisgICAgICAgICA+Pj4gaW1wb3J0IGFycmF5CisgICAgICAgICA+Pj4gYSA9IGFycmF5LmFycmF5KCdsJywgWzEsMiwzXSkKKyAgICAgICAgID4+PiB4ID0gbWVtb3J5dmlldyhhKQorICAgICAgICAgPj4+IHguZm9ybWF0CisgICAgICAgICAnbCcKKyAgICAgICAgID4+PiB4Lml0ZW1zaXplCisgICAgICAgICA4CisgICAgICAgICA+Pj4gbGVuKHgpCisgICAgICAgICAzCisgICAgICAgICA+Pj4geC5uYnl0ZXMKKyAgICAgICAgIDI0CisgICAgICAgICA+Pj4geSA9IHguY2FzdCgnQicpCisgICAgICAgICA+Pj4geS5mb3JtYXQKKyAgICAgICAgICdCJworICAgICAgICAgPj4+IHkuaXRlbXNpemUKKyAgICAgICAgIDEKKyAgICAgICAgID4+PiBsZW4oeSkKKyAgICAgICAgIDI0CisgICAgICAgICA+Pj4geS5uYnl0ZXMKKyAgICAgICAgIDI0CisKKyAgICAgIENhc3QgMUQvdW5zaWduZWQgYnl0ZXMgdG8gMUQvY2hhcjo6CisKKyAgICAgICAgID4+PiBiID0gYnl0ZWFycmF5KGInenl6JykKKyAgICAgICAgID4+PiB4ID0gbWVtb3J5dmlldyhiKQorICAgICAgICAgPj4+IHhbMF0gPSBiJ2EnCisgICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAgICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDEsIGluIDxtb2R1bGU+CisgICAgICAgICBWYWx1ZUVycm9yOiBtZW1vcnl2aWV3OiBpbnZhbGlkIHZhbHVlIGZvciBmb3JtYXQgIkIiCisgICAgICAgICA+Pj4geSA9IHguY2FzdCgnYycpCisgICAgICAgICA+Pj4geVswXSA9IGInYScKKyAgICAgICAgID4+PiBiCisgICAgICAgICBieXRlYXJyYXkoYidheXonKQorCisgICAgICBDYXN0IDFEL2J5dGVzIHRvIDNEL2ludHMgdG8gMUQvc2lnbmVkIGNoYXI6OgorCisgICAgICAgICA+Pj4gaW1wb3J0IHN0cnVjdAorICAgICAgICAgPj4+IGJ1ZiA9IHN0cnVjdC5wYWNrKCJpIioxMiwgKmxpc3QocmFuZ2UoMTIpKSkKKyAgICAgICAgID4+PiB4ID0gbWVtb3J5dmlldyhidWYpCisgICAgICAgICA+Pj4geSA9IHguY2FzdCgnaScsIHNoYXBlPVsyLDIsM10pCisgICAgICAgICA+Pj4geS50b2xpc3QoKQorICAgICAgICAgW1tbMCwgMSwgMl0sIFszLCA0LCA1XV0sIFtbNiwgNywgOF0sIFs5LCAxMCwgMTFdXV0KKyAgICAgICAgID4+PiB5LmZvcm1hdAorICAgICAgICAgJ2knCisgICAgICAgICA+Pj4geS5pdGVtc2l6ZQorICAgICAgICAgNAorICAgICAgICAgPj4+IGxlbih5KQorICAgICAgICAgMgorICAgICAgICAgPj4+IHkubmJ5dGVzCisgICAgICAgICA0OAorICAgICAgICAgPj4+IHogPSB5LmNhc3QoJ2InKQorICAgICAgICAgPj4+IHouZm9ybWF0CisgICAgICAgICAnYicKKyAgICAgICAgID4+PiB6Lml0ZW1zaXplCisgICAgICAgICAxCisgICAgICAgICA+Pj4gbGVuKHopCisgICAgICAgICA0OAorICAgICAgICAgPj4+IHoubmJ5dGVzCisgICAgICAgICA0OAorCisgICAgICBDYXN0IDFEL3Vuc2lnbmVkIGNoYXIgdG8gdG8gMkQvdW5zaWduZWQgbG9uZzo6CisKKyAgICAgICAgID4+PiBidWYgPSBzdHJ1Y3QucGFjaygiTCIqNiwgKmxpc3QocmFuZ2UoNikpKQorICAgICAgICAgPj4+IHggPSBtZW1vcnl2aWV3KGJ1ZikKKyAgICAgICAgID4+PiB5ID0geC5jYXN0KCdMJywgc2hhcGU9WzIsM10pCisgICAgICAgICA+Pj4gbGVuKHkpCisgICAgICAgICAyCisgICAgICAgICA+Pj4geS5uYnl0ZXMKKyAgICAgICAgIDQ4CisgICAgICAgICA+Pj4geS50b2xpc3QoKQorICAgICAgICAgW1swLCAxLCAyXSwgWzMsIDQsIDVdXQorCisgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogICAgVGhlcmUgYXJlIGFsc28gc2V2ZXJhbCByZWFkb25seSBhdHRyaWJ1dGVzIGF2YWlsYWJsZToKIAorICAgLi4gYXR0cmlidXRlOjogb2JqCisKKyAgICAgIFRoZSB1bmRlcmx5aW5nIG9iamVjdCBvZiB0aGUgbWVtb3J5dmlldzo6CisKKyAgICAgICAgID4+PiBiICA9IGJ5dGVhcnJheShiJ3h5eicpCisgICAgICAgICA+Pj4gbSA9IG1lbW9yeXZpZXcoYikKKyAgICAgICAgID4+PiBtLm9iaiBpcyBiCisgICAgICAgICBUcnVlCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisgICAuLiBhdHRyaWJ1dGU6OiBuYnl0ZXMKKworICAgICAgYGBuYnl0ZXMgPT0gcHJvZHVjdChzaGFwZSkgKiBpdGVtc2l6ZSA9PSBsZW4obS50b2J5dGVzKCkpYGAuIFRoaXMgaXMKKyAgICAgIHRoZSBhbW91bnQgb2Ygc3BhY2UgaW4gYnl0ZXMgdGhhdCB0aGUgYXJyYXkgd291bGQgdXNlIGluIGEgY29udGlndW91cworICAgICAgcmVwcmVzZW50YXRpb24uIEl0IGlzIG5vdCBuZWNlc3NhcmlseSBlcXVhbCB0byBsZW4obSk6OgorCisgICAgICAgICA+Pj4gaW1wb3J0IGFycmF5CisgICAgICAgICA+Pj4gYSA9IGFycmF5LmFycmF5KCdpJywgWzEsMiwzLDQsNV0pCisgICAgICAgICA+Pj4gbSA9IG1lbW9yeXZpZXcoYSkKKyAgICAgICAgID4+PiBsZW4obSkKKyAgICAgICAgIDUKKyAgICAgICAgID4+PiBtLm5ieXRlcworICAgICAgICAgMjAKKyAgICAgICAgID4+PiB5ID0gbVs6OjJdCisgICAgICAgICA+Pj4gbGVuKHkpCisgICAgICAgICAzCisgICAgICAgICA+Pj4geS5uYnl0ZXMKKyAgICAgICAgIDEyCisgICAgICAgICA+Pj4gbGVuKHkudG9ieXRlcygpKQorICAgICAgICAgMTIKKworICAgICAgTXVsdGktZGltZW5zaW9uYWwgYXJyYXlzOjoKKworICAgICAgICAgPj4+IGltcG9ydCBzdHJ1Y3QKKyAgICAgICAgID4+PiBidWYgPSBzdHJ1Y3QucGFjaygiZCIqMTIsICpbMS41KnggZm9yIHggaW4gcmFuZ2UoMTIpXSkKKyAgICAgICAgID4+PiB4ID0gbWVtb3J5dmlldyhidWYpCisgICAgICAgICA+Pj4geSA9IHguY2FzdCgnZCcsIHNoYXBlPVszLDRdKQorICAgICAgICAgPj4+IHkudG9saXN0KCkKKyAgICAgICAgIFtbMC4wLCAxLjUsIDMuMCwgNC41XSwgWzYuMCwgNy41LCA5LjAsIDEwLjVdLCBbMTIuMCwgMTMuNSwgMTUuMCwgMTYuNV1dCisgICAgICAgICA+Pj4gbGVuKHkpCisgICAgICAgICAzCisgICAgICAgICA+Pj4geS5uYnl0ZXMKKyAgICAgICAgIDk2CisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisgICAuLiBhdHRyaWJ1dGU6OiByZWFkb25seQorCisgICAgICBBIGJvb2wgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBtZW1vcnkgaXMgcmVhZCBvbmx5LgorCiAgICAuLiBhdHRyaWJ1dGU6OiBmb3JtYXQKIAogICAgICAgQSBzdHJpbmcgY29udGFpbmluZyB0aGUgZm9ybWF0IChpbiA6bW9kOmBzdHJ1Y3RgIG1vZHVsZSBzdHlsZSkgZm9yIGVhY2gKLSAgICAgIGVsZW1lbnQgaW4gdGhlIHZpZXcuICBUaGlzIGRlZmF1bHRzIHRvIGBgJ0InYGAsIGEgc2ltcGxlIGJ5dGVzdHJpbmcuCisgICAgICBlbGVtZW50IGluIHRoZSB2aWV3LiBBIG1lbW9yeXZpZXcgY2FuIGJlIGNyZWF0ZWQgZnJvbSBleHBvcnRlcnMgd2l0aAorICAgICAgYXJiaXRyYXJ5IGZvcm1hdCBzdHJpbmdzLCBidXQgc29tZSBtZXRob2RzIChlLmcuIDptZXRoOmB0b2xpc3RgKSBhcmUKKyAgICAgIHJlc3RyaWN0ZWQgdG8gbmF0aXZlIHNpbmdsZSBlbGVtZW50IGZvcm1hdHMuIFNwZWNpYWwgY2FyZSBtdXN0IGJlIHRha2VuCisgICAgICB3aGVuIGNvbXBhcmluZyBtZW1vcnl2aWV3cy4gU2luY2UgY29tcGFyaXNvbnMgYXJlIHJlcXVpcmVkIHRvIHJldHVybiBhCisgICAgICB2YWx1ZSBmb3IgYGA9PWBgIGFuZCBgYCE9YGAsIHR3byBtZW1vcnl2aWV3cyByZWZlcmVuY2luZyB0aGUgc2FtZQorICAgICAgZXhwb3J0ZXIgY2FuIGNvbXBhcmUgYXMgbm90LWVxdWFsIGlmIHRoZSBleHBvcnRlcidzIGZvcm1hdCBpcyBub3QKKyAgICAgIHVuZGVyc3Rvb2Q6OgorCisgICAgICAgICA+Pj4gZnJvbSBjdHlwZXMgaW1wb3J0IEJpZ0VuZGlhblN0cnVjdHVyZSwgY19sb25nCisgICAgICAgICA+Pj4gY2xhc3MgQkVQb2ludChCaWdFbmRpYW5TdHJ1Y3R1cmUpOgorICAgICAgICAgLi4uICAgICBfZmllbGRzXyA9IFsoIngiLCBjX2xvbmcpLCAoInkiLCBjX2xvbmcpXQorICAgICAgICAgLi4uCisgICAgICAgICA+Pj4gcG9pbnQgPSBCRVBvaW50KDEwMCwgMjAwKQorICAgICAgICAgPj4+IGEgPSBtZW1vcnl2aWV3KHBvaW50KQorICAgICAgICAgPj4+IGIgPSBtZW1vcnl2aWV3KHBvaW50KQorICAgICAgICAgPj4+IGEgPT0gYgorICAgICAgICAgRmFsc2UKKyAgICAgICAgID4+PiBhLnRvbGlzdCgpCisgICAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAgICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDEsIGluIDxtb2R1bGU+CisgICAgICAgICBOb3RJbXBsZW1lbnRlZEVycm9yOiBtZW1vcnl2aWV3OiB1bnN1cHBvcnRlZCBmb3JtYXQgVHs+bDp4Oj5sOnk6fQogCiAgICAuLiBhdHRyaWJ1dGU6OiBpdGVtc2l6ZQogCiAgICAgICBUaGUgc2l6ZSBpbiBieXRlcyBvZiBlYWNoIGVsZW1lbnQgb2YgdGhlIG1lbW9yeXZpZXc6OgogCi0gICAgICAgICA+Pj4gbSA9IG1lbW9yeXZpZXcoYXJyYXkuYXJyYXkoJ0gnLCBbMSwyLDNdKSkKKyAgICAgICAgID4+PiBpbXBvcnQgYXJyYXksIHN0cnVjdAorICAgICAgICAgPj4+IG0gPSBtZW1vcnl2aWV3KGFycmF5LmFycmF5KCdIJywgWzMyMDAwLCAzMjAwMSwgMzIwMDJdKSkKICAgICAgICAgID4+PiBtLml0ZW1zaXplCiAgICAgICAgICAyCiAgICAgICAgICA+Pj4gbVswXQotICAgICAgICAgYidceDAxXHgwMCcKLSAgICAgICAgID4+PiBsZW4obVswXSkgPT0gbS5pdGVtc2l6ZQorICAgICAgICAgMzIwMDAKKyAgICAgICAgID4+PiBzdHJ1Y3QuY2FsY3NpemUoJ0gnKSA9PSBtLml0ZW1zaXplCiAgICAgICAgICBUcnVlCiAKLSAgIC4uIGF0dHJpYnV0ZTo6IHNoYXBlCi0KLSAgICAgIEEgdHVwbGUgb2YgaW50ZWdlcnMgdGhlIGxlbmd0aCBvZiA6YXR0cjpgbmRpbWAgZ2l2aW5nIHRoZSBzaGFwZSBvZiB0aGUKLSAgICAgIG1lbW9yeSBhcyBhIE4tZGltZW5zaW9uYWwgYXJyYXkuCi0KICAgIC4uIGF0dHJpYnV0ZTo6IG5kaW0KIAogICAgICAgQW4gaW50ZWdlciBpbmRpY2F0aW5nIGhvdyBtYW55IGRpbWVuc2lvbnMgb2YgYSBtdWx0aS1kaW1lbnNpb25hbCBhcnJheSB0aGUKICAgICAgIG1lbW9yeSByZXByZXNlbnRzLgogCisgICAuLiBhdHRyaWJ1dGU6OiBzaGFwZQorCisgICAgICBBIHR1cGxlIG9mIGludGVnZXJzIHRoZSBsZW5ndGggb2YgOmF0dHI6YG5kaW1gIGdpdmluZyB0aGUgc2hhcGUgb2YgdGhlCisgICAgICBtZW1vcnkgYXMgYSBOLWRpbWVuc2lvbmFsIGFycmF5LgorCiAgICAuLiBhdHRyaWJ1dGU6OiBzdHJpZGVzCiAKICAgICAgIEEgdHVwbGUgb2YgaW50ZWdlcnMgdGhlIGxlbmd0aCBvZiA6YXR0cjpgbmRpbWAgZ2l2aW5nIHRoZSBzaXplIGluIGJ5dGVzIHRvCiAgICAgICBhY2Nlc3MgZWFjaCBlbGVtZW50IGZvciBlYWNoIGRpbWVuc2lvbiBvZiB0aGUgYXJyYXkuCiAKLSAgIC4uIGF0dHJpYnV0ZTo6IHJlYWRvbmx5CisgICAuLiBhdHRyaWJ1dGU6OiBzdWJvZmZzZXRzCiAKLSAgICAgIEEgYm9vbCBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIG1lbW9yeSBpcyByZWFkIG9ubHkuCisgICAgICBVc2VkIGludGVybmFsbHkgZm9yIFBJTC1zdHlsZSBhcnJheXMuIFRoZSB2YWx1ZSBpcyBpbmZvcm1hdGlvbmFsIG9ubHkuCiAKLSAgIC4uIG1lbW9yeXZpZXcuc3Vib2Zmc2V0cyBpc24ndCBkb2N1bWVudGVkIGJlY2F1c2UgaXQgb25seSBzZWVtcyB1c2VmdWwgZm9yIEMKKyAgIC4uIGF0dHJpYnV0ZTo6IGNfY29udGlndW91cworCisgICAgICBBIGJvb2wgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBtZW1vcnkgaXMgQy1jb250aWd1b3VzLgorCisgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworICAgLi4gYXR0cmlidXRlOjogZl9jb250aWd1b3VzCisKKyAgICAgIEEgYm9vbCBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIG1lbW9yeSBpcyBGb3J0cmFuIGNvbnRpZ3VvdXMuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisgICAuLiBhdHRyaWJ1dGU6OiBjb250aWd1b3VzCisKKyAgICAgIEEgYm9vbCBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIG1lbW9yeSBpcyBjb250aWd1b3VzLgorCisgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCiAuLiBfdHlwZWNvbnRleHRtYW5hZ2VyOgpAQCAtMjcwMyw3ICsyOTgwLDcgQEAKIAogVGhpcyBvYmplY3QgaXMgcmV0dXJuZWQgYnkgZnVuY3Rpb25zIHRoYXQgZG9uJ3QgZXhwbGljaXRseSByZXR1cm4gYSB2YWx1ZS4gIEl0CiBzdXBwb3J0cyBubyBzcGVjaWFsIG9wZXJhdGlvbnMuICBUaGVyZSBpcyBleGFjdGx5IG9uZSBudWxsIG9iamVjdCwgbmFtZWQKLWBgTm9uZWBgIChhIGJ1aWx0LWluIG5hbWUpLgorYGBOb25lYGAgKGEgYnVpbHQtaW4gbmFtZSkuICBgYHR5cGUoTm9uZSkoKWBgIHByb2R1Y2VzIHRoZSBzYW1lIHNpbmdsZXRvbi4KIAogSXQgaXMgd3JpdHRlbiBhcyBgYE5vbmVgYC4KIApAQCAtMjcxMyw5ICsyOTkwLDExIEBACiBUaGUgRWxsaXBzaXMgT2JqZWN0CiAtLS0tLS0tLS0tLS0tLS0tLS0tCiAKLVRoaXMgb2JqZWN0IGlzIGNvbW1vbmx5IHVzZWQgYnkgc2xpY2luZyAoc2VlIDpyZWY6YHNsaWNpbmdzYCkuICBJdCBzdXBwb3J0cyBubwotc3BlY2lhbCBvcGVyYXRpb25zLiAgVGhlcmUgaXMgZXhhY3RseSBvbmUgZWxsaXBzaXMgb2JqZWN0LCBuYW1lZAotOmNvbnN0OmBFbGxpcHNpc2AgKGEgYnVpbHQtaW4gbmFtZSkuCitUaGlzIG9iamVjdCBpcyBjb21tb25seSB1c2VkIGJ5IHNsaWNpbmcgKHNlZSA6cmVmOmBzbGljaW5nc2ApLCBidXQgbWF5IGFsc28KK2JlIHVzZWQgaW4gb3RoZXIgc2l0dWF0aW9ucyB3aGVyZSBhIHNlbnRpbmVsIHZhbHVlIG90aGVyIHRoYW4gOmNvbnN0OmBOb25lYAoraXMgbmVlZGVkLiAgSXQgc3VwcG9ydHMgbm8gc3BlY2lhbCBvcGVyYXRpb25zLiAgVGhlcmUgaXMgZXhhY3RseSBvbmUgZWxsaXBzaXMKK29iamVjdCwgbmFtZWQgOmNvbnN0OmBFbGxpcHNpc2AgKGEgYnVpbHQtaW4gbmFtZSkuICBgYHR5cGUoRWxsaXBzaXMpKClgYAorcHJvZHVjZXMgdGhlIDpjb25zdDpgRWxsaXBzaXNgIHNpbmdsZXRvbi4KIAogSXQgaXMgd3JpdHRlbiBhcyBgYEVsbGlwc2lzYGAgb3IgYGAuLi5gYC4KIApAQCAtMjcyNyw3ICszMDA2LDggQEAKIAogVGhpcyBvYmplY3QgaXMgcmV0dXJuZWQgZnJvbSBjb21wYXJpc29ucyBhbmQgYmluYXJ5IG9wZXJhdGlvbnMgd2hlbiB0aGV5IGFyZQogYXNrZWQgdG8gb3BlcmF0ZSBvbiB0eXBlcyB0aGV5IGRvbid0IHN1cHBvcnQuIFNlZSA6cmVmOmBjb21wYXJpc29uc2AgZm9yIG1vcmUKLWluZm9ybWF0aW9uLgoraW5mb3JtYXRpb24uICBUaGVyZSBpcyBleGFjdGx5IG9uZSBgYE5vdEltcGxlbWVudGVkYGAgb2JqZWN0LgorYGB0eXBlKE5vdEltcGxlbWVudGVkKSgpYGAgcHJvZHVjZXMgdGhlIHNpbmdsZXRvbiBpbnN0YW5jZS4KIAogSXQgaXMgd3JpdHRlbiBhcyBgYE5vdEltcGxlbWVudGVkYGAuCiAKQEAgLTI3OTMsNiArMzA3MywxMyBAQAogICAgVGhlIG5hbWUgb2YgdGhlIGNsYXNzIG9yIHR5cGUuCiAKIAorLi4gYXR0cmlidXRlOjogY2xhc3MuX19xdWFsbmFtZV9fCisKKyAgIFRoZSA6dGVybTpgcXVhbGlmaWVkIG5hbWVgIG9mIHRoZSBjbGFzcyBvciB0eXBlLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBhdHRyaWJ1dGU6OiBjbGFzcy5fX21yb19fCiAKICAgIFRoaXMgYXR0cmlidXRlIGlzIGEgdHVwbGUgb2YgY2xhc3NlcyB0aGF0IGFyZSBjb25zaWRlcmVkIHdoZW4gbG9va2luZyBmb3IKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3N0cnVjdC5yc3QgYi9Eb2MvbGlicmFyeS9zdHJ1Y3QucnN0CmluZGV4IDEyODIwZTAuLjk5NDUwNmMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3N0cnVjdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc3RydWN0LnJzdApAQCAtMTg3LDE3ICsxODcsMjQgQEAKIHwgYGBRYGAgIHwgOmM6dHlwZTpgdW5zaWduZWQgbG9uZyAgIHwgaW50ZWdlciAgICAgICAgICAgIHwgOCAgICAgICAgICAgICAgfCBcKDIpLCBcKDMpIHwKIHwgICAgICAgIHwgbG9uZ2AgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHwKICstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKLXwgYGBmYGAgIHwgOmM6dHlwZTpgZmxvYXRgICAgICAgICAgIHwgZmxvYXQgICAgICAgICAgICAgIHwgNCAgICAgICAgICAgICAgfCBcKDQpICAgICAgIHwKK3wgYGBuYGAgIHwgOmM6dHlwZTpgc3NpemVfdGAgICAgICAgIHwgaW50ZWdlciAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfCBcKDQpICAgICAgIHwKICstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKLXwgYGBkYGAgIHwgOmM6dHlwZTpgZG91YmxlYCAgICAgICAgIHwgZmxvYXQgICAgICAgICAgICAgIHwgOCAgICAgICAgICAgICAgfCBcKDQpICAgICAgIHwKK3wgYGBOYGAgIHwgOmM6dHlwZTpgc2l6ZV90YCAgICAgICAgIHwgaW50ZWdlciAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfCBcKDQpICAgICAgIHwKKystLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKK3wgYGBmYGAgIHwgOmM6dHlwZTpgZmxvYXRgICAgICAgICAgIHwgZmxvYXQgICAgICAgICAgICAgIHwgNCAgICAgICAgICAgICAgfCBcKDUpICAgICAgIHwKKystLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKK3wgYGBkYGAgIHwgOmM6dHlwZTpgZG91YmxlYCAgICAgICAgIHwgZmxvYXQgICAgICAgICAgICAgIHwgOCAgICAgICAgICAgICAgfCBcKDUpICAgICAgIHwKICstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKIHwgYGBzYGAgIHwgOmM6dHlwZTpgY2hhcltdYCAgICAgICAgIHwgYnl0ZXMgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHwKICstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKIHwgYGBwYGAgIHwgOmM6dHlwZTpgY2hhcltdYCAgICAgICAgIHwgYnl0ZXMgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHwKICstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKLXwgYGBQYGAgIHwgOmM6dHlwZTpgdm9pZCBcKmAgICAgICAgIHwgaW50ZWdlciAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfCBcKDUpICAgICAgIHwKK3wgYGBQYGAgIHwgOmM6dHlwZTpgdm9pZCBcKmAgICAgICAgIHwgaW50ZWdlciAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgfCBcKDYpICAgICAgIHwKICstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKIAorLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIEFkZGVkIHN1cHBvcnQgZm9yIHRoZSBgYCduJ2BgIGFuZCBgYCdOJ2BgIGZvcm1hdHMuCisKIE5vdGVzOgogCiAoMSkKQEAgLTIxOSwxMSArMjI2LDE3IEBACiAgICAgICBVc2Ugb2YgdGhlIDptZXRoOmBfX2luZGV4X19gIG1ldGhvZCBmb3Igbm9uLWludGVnZXJzIGlzIG5ldyBpbiAzLjIuCiAKICg0KQorICAgVGhlIGBgJ24nYGAgYW5kIGBgJ04nYGAgY29udmVyc2lvbiBjb2RlcyBhcmUgb25seSBhdmFpbGFibGUgZm9yIHRoZSBuYXRpdmUKKyAgIHNpemUgKHNlbGVjdGVkIGFzIHRoZSBkZWZhdWx0IG9yIHdpdGggdGhlIGBgJ0AnYGAgYnl0ZSBvcmRlciBjaGFyYWN0ZXIpLgorICAgRm9yIHRoZSBzdGFuZGFyZCBzaXplLCB5b3UgY2FuIHVzZSB3aGljaGV2ZXIgb2YgdGhlIG90aGVyIGludGVnZXIgZm9ybWF0cworICAgZml0cyB5b3VyIGFwcGxpY2F0aW9uLgorCisoNSkKICAgIEZvciB0aGUgYGAnZidgYCBhbmQgYGAnZCdgYCBjb252ZXJzaW9uIGNvZGVzLCB0aGUgcGFja2VkIHJlcHJlc2VudGF0aW9uIHVzZXMKICAgIHRoZSBJRUVFIDc1NCBiaW5hcnkzMiAoZm9yIGBgJ2YnYGApIG9yIGJpbmFyeTY0IChmb3IgYGAnZCdgYCkgZm9ybWF0LAogICAgcmVnYXJkbGVzcyBvZiB0aGUgZmxvYXRpbmctcG9pbnQgZm9ybWF0IHVzZWQgYnkgdGhlIHBsYXRmb3JtLgogCi0oNSkKKyg2KQogICAgVGhlIGBgJ1AnYGAgZm9ybWF0IGNoYXJhY3RlciBpcyBvbmx5IGF2YWlsYWJsZSBmb3IgdGhlIG5hdGl2ZSBieXRlIG9yZGVyaW5nCiAgICAoc2VsZWN0ZWQgYXMgdGhlIGRlZmF1bHQgb3Igd2l0aCB0aGUgYGAnQCdgYCBieXRlIG9yZGVyIGNoYXJhY3RlcikuIFRoZSBieXRlCiAgICBvcmRlciBjaGFyYWN0ZXIgYGAnPSdgYCBjaG9vc2VzIHRvIHVzZSBsaXR0bGUtIG9yIGJpZy1lbmRpYW4gb3JkZXJpbmcgYmFzZWQKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3N1YnByb2Nlc3MucnN0IGIvRG9jL2xpYnJhcnkvc3VicHJvY2Vzcy5yc3QKaW5kZXggYjdlODdhYi4uZWU4ODM3OSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvc3VicHJvY2Vzcy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc3VicHJvY2Vzcy5yc3QKQEAgLTMwLDE2ICszMCwyMSBAQAogdXNlIGNhc2VzLCB0aGUgdW5kZXJseWluZyA6Y2xhc3M6YFBvcGVuYCBpbnRlcmZhY2UgY2FuIGJlIHVzZWQgZGlyZWN0bHkuCiAKIAotLi4gZnVuY3Rpb246OiBjYWxsKGFyZ3MsICosIHN0ZGluPU5vbmUsIHN0ZG91dD1Ob25lLCBzdGRlcnI9Tm9uZSwgc2hlbGw9RmFsc2UpCisuLiBmdW5jdGlvbjo6IGNhbGwoYXJncywgKiwgc3RkaW49Tm9uZSwgc3Rkb3V0PU5vbmUsIHN0ZGVycj1Ob25lLCBzaGVsbD1GYWxzZSwgdGltZW91dD1Ob25lKQogCiAgICBSdW4gdGhlIGNvbW1hbmQgZGVzY3JpYmVkIGJ5ICphcmdzKi4gIFdhaXQgZm9yIGNvbW1hbmQgdG8gY29tcGxldGUsIHRoZW4KICAgIHJldHVybiB0aGUgOmF0dHI6YHJldHVybmNvZGVgIGF0dHJpYnV0ZS4KIAogICAgVGhlIGFyZ3VtZW50cyBzaG93biBhYm92ZSBhcmUgbWVyZWx5IHRoZSBtb3N0IGNvbW1vbiBvbmVzLCBkZXNjcmliZWQgYmVsb3cKLSAgIGluIDpyZWY6YGZyZXF1ZW50bHktdXNlZC1hcmd1bWVudHNgIChoZW5jZSB0aGUgc2xpZ2h0bHkgb2RkIG5vdGF0aW9uIGluCi0gICB0aGUgYWJicmV2aWF0ZWQgc2lnbmF0dXJlKS4gVGhlIGZ1bGwgZnVuY3Rpb24gc2lnbmF0dXJlIGlzIHRoZSBzYW1lIGFzCi0gICB0aGF0IG9mIHRoZSA6Y2xhc3M6YFBvcGVuYCBjb25zdHJ1Y3RvciAtIHRoaXMgZnVuY3Rpb25zIHBhc3NlcyBhbGwKLSAgIHN1cHBsaWVkIGFyZ3VtZW50cyBkaXJlY3RseSB0aHJvdWdoIHRvIHRoYXQgaW50ZXJmYWNlLgorICAgaW4gOnJlZjpgZnJlcXVlbnRseS11c2VkLWFyZ3VtZW50c2AgKGhlbmNlIHRoZSB1c2Ugb2Yga2V5d29yZC1vbmx5IG5vdGF0aW9uCisgICBpbiB0aGUgYWJicmV2aWF0ZWQgc2lnbmF0dXJlKS4gVGhlIGZ1bGwgZnVuY3Rpb24gc2lnbmF0dXJlIGlzIGxhcmdlbHkgdGhlCisgICBzYW1lIGFzIHRoYXQgb2YgdGhlIDpjbGFzczpgUG9wZW5gIGNvbnN0cnVjdG9yIC0gdGhpcyBmdW5jdGlvbiBwYXNzZXMgYWxsCisgICBzdXBwbGllZCBhcmd1bWVudHMgb3RoZXIgdGhhbiAqdGltZW91dCogZGlyZWN0bHkgdGhyb3VnaCB0byB0aGF0IGludGVyZmFjZS4KKworICAgVGhlICp0aW1lb3V0KiBhcmd1bWVudCBpcyBwYXNzZWQgdG8gOm1ldGg6YFBvcGVuLndhaXRgLiBJZiB0aGUgdGltZW91dAorICAgZXhwaXJlcywgdGhlIGNoaWxkIHByb2Nlc3Mgd2lsbCBiZSBraWxsZWQgYW5kIHRoZW4gd2FpdGVkIGZvciBhZ2Fpbi4gIFRoZQorICAgOmV4YzpgVGltZW91dEV4cGlyZWRgIGV4Y2VwdGlvbiB3aWxsIGJlIHJlLXJhaXNlZCBhZnRlciB0aGUgY2hpbGQgcHJvY2VzcworICAgaGFzIHRlcm1pbmF0ZWQuCiAKICAgIEV4YW1wbGVzOjoKIApAQCAtNjIsOCArNjcsMTEgQEAKICAgICAgIHByb2Nlc3MgbWF5IGJsb2NrIGlmIGl0IGdlbmVyYXRlcyBlbm91Z2ggb3V0cHV0IHRvIGEgcGlwZSB0byBmaWxsIHVwCiAgICAgICB0aGUgT1MgcGlwZSBidWZmZXIuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqdGltZW91dCogd2FzIGFkZGVkLgogCi0uLiBmdW5jdGlvbjo6IGNoZWNrX2NhbGwoYXJncywgKiwgc3RkaW49Tm9uZSwgc3Rkb3V0PU5vbmUsIHN0ZGVycj1Ob25lLCBzaGVsbD1GYWxzZSkKKworLi4gZnVuY3Rpb246OiBjaGVja19jYWxsKGFyZ3MsICosIHN0ZGluPU5vbmUsIHN0ZG91dD1Ob25lLCBzdGRlcnI9Tm9uZSwgc2hlbGw9RmFsc2UsIHRpbWVvdXQ9Tm9uZSkKIAogICAgUnVuIGNvbW1hbmQgd2l0aCBhcmd1bWVudHMuICBXYWl0IGZvciBjb21tYW5kIHRvIGNvbXBsZXRlLiBJZiB0aGUgcmV0dXJuCiAgICBjb2RlIHdhcyB6ZXJvIHRoZW4gcmV0dXJuLCBvdGhlcndpc2UgcmFpc2UgOmV4YzpgQ2FsbGVkUHJvY2Vzc0Vycm9yYC4gVGhlCkBAIC03MSwxMCArNzksMTUgQEAKICAgIDphdHRyOmByZXR1cm5jb2RlYCBhdHRyaWJ1dGUuCiAKICAgIFRoZSBhcmd1bWVudHMgc2hvd24gYWJvdmUgYXJlIG1lcmVseSB0aGUgbW9zdCBjb21tb24gb25lcywgZGVzY3JpYmVkIGJlbG93Ci0gICBpbiA6cmVmOmBmcmVxdWVudGx5LXVzZWQtYXJndW1lbnRzYCAoaGVuY2UgdGhlIHNsaWdodGx5IG9kZCBub3RhdGlvbiBpbgotICAgdGhlIGFiYnJldmlhdGVkIHNpZ25hdHVyZSkuIFRoZSBmdWxsIGZ1bmN0aW9uIHNpZ25hdHVyZSBpcyB0aGUgc2FtZSBhcwotICAgdGhhdCBvZiB0aGUgOmNsYXNzOmBQb3BlbmAgY29uc3RydWN0b3IgLSB0aGlzIGZ1bmN0aW9ucyBwYXNzZXMgYWxsCi0gICBzdXBwbGllZCBhcmd1bWVudHMgZGlyZWN0bHkgdGhyb3VnaCB0byB0aGF0IGludGVyZmFjZS4KKyAgIGluIDpyZWY6YGZyZXF1ZW50bHktdXNlZC1hcmd1bWVudHNgIChoZW5jZSB0aGUgdXNlIG9mIGtleXdvcmQtb25seSBub3RhdGlvbgorICAgaW4gdGhlIGFiYnJldmlhdGVkIHNpZ25hdHVyZSkuIFRoZSBmdWxsIGZ1bmN0aW9uIHNpZ25hdHVyZSBpcyBsYXJnZWx5IHRoZQorICAgc2FtZSBhcyB0aGF0IG9mIHRoZSA6Y2xhc3M6YFBvcGVuYCBjb25zdHJ1Y3RvciAtIHRoaXMgZnVuY3Rpb24gcGFzc2VzIGFsbAorICAgc3VwcGxpZWQgYXJndW1lbnRzIG90aGVyIHRoYW4gKnRpbWVvdXQqIGRpcmVjdGx5IHRocm91Z2ggdG8gdGhhdCBpbnRlcmZhY2UuCisKKyAgIFRoZSAqdGltZW91dCogYXJndW1lbnQgaXMgcGFzc2VkIHRvIDptZXRoOmBQb3Blbi53YWl0YC4gSWYgdGhlIHRpbWVvdXQKKyAgIGV4cGlyZXMsIHRoZSBjaGlsZCBwcm9jZXNzIHdpbGwgYmUga2lsbGVkIGFuZCB0aGVuIHdhaXRlZCBmb3IgYWdhaW4uICBUaGUKKyAgIDpleGM6YFRpbWVvdXRFeHBpcmVkYCBleGNlcHRpb24gd2lsbCBiZSByZS1yYWlzZWQgYWZ0ZXIgdGhlIGNoaWxkIHByb2Nlc3MKKyAgIGhhcyB0ZXJtaW5hdGVkLgogCiAgICBFeGFtcGxlczo6CiAKQEAgLTg2LDggKzk5LDYgQEAKICAgICAgICAgIC4uLgogICAgICAgc3VicHJvY2Vzcy5DYWxsZWRQcm9jZXNzRXJyb3I6IENvbW1hbmQgJ2V4aXQgMScgcmV0dXJuZWQgbm9uLXplcm8gZXhpdCBzdGF0dXMgMQogCi0gICAuLiB2ZXJzaW9uYWRkZWQ6OiAyLjUKLQogICAgLi4gd2FybmluZzo6CiAKICAgICAgIEludm9raW5nIHRoZSBzeXN0ZW0gc2hlbGwgd2l0aCBgYHNoZWxsPVRydWVgYCBjYW4gYmUgYSBzZWN1cml0eSBoYXphcmQKQEAgLTEwMSw4ICsxMTIsMTEgQEAKICAgICAgIHByb2Nlc3MgbWF5IGJsb2NrIGlmIGl0IGdlbmVyYXRlcyBlbm91Z2ggb3V0cHV0IHRvIGEgcGlwZSB0byBmaWxsIHVwCiAgICAgICB0aGUgT1MgcGlwZSBidWZmZXIuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqdGltZW91dCogd2FzIGFkZGVkLgogCi0uLiBmdW5jdGlvbjo6IGNoZWNrX291dHB1dChhcmdzLCAqLCBzdGRpbj1Ob25lLCBzdGRlcnI9Tm9uZSwgc2hlbGw9RmFsc2UsIHVuaXZlcnNhbF9uZXdsaW5lcz1GYWxzZSkKKworLi4gZnVuY3Rpb246OiBjaGVja19vdXRwdXQoYXJncywgKiwgc3RkaW49Tm9uZSwgc3RkZXJyPU5vbmUsIHNoZWxsPUZhbHNlLCB1bml2ZXJzYWxfbmV3bGluZXM9RmFsc2UsIHRpbWVvdXQ9Tm9uZSkKIAogICAgUnVuIGNvbW1hbmQgd2l0aCBhcmd1bWVudHMgYW5kIHJldHVybiBpdHMgb3V0cHV0IGFzIGEgYnl0ZSBzdHJpbmcuCiAKQEAgLTExMiwxMSArMTI2LDE3IEBACiAgICBhdHRyaWJ1dGUuCiAKICAgIFRoZSBhcmd1bWVudHMgc2hvd24gYWJvdmUgYXJlIG1lcmVseSB0aGUgbW9zdCBjb21tb24gb25lcywgZGVzY3JpYmVkIGJlbG93Ci0gICBpbiA6cmVmOmBmcmVxdWVudGx5LXVzZWQtYXJndW1lbnRzYCAoaGVuY2UgdGhlIHNsaWdodGx5IG9kZCBub3RhdGlvbiBpbgotICAgdGhlIGFiYnJldmlhdGVkIHNpZ25hdHVyZSkuIFRoZSBmdWxsIGZ1bmN0aW9uIHNpZ25hdHVyZSBpcyBsYXJnZWx5IHRoZQotICAgc2FtZSBhcyB0aGF0IG9mIHRoZSA6Y2xhc3M6YFBvcGVuYCBjb25zdHJ1Y3RvciwgZXhjZXB0IHRoYXQgKnN0ZG91dCogaXMKLSAgIG5vdCBwZXJtaXR0ZWQgYXMgaXQgaXMgdXNlZCBpbnRlcm5hbGx5LiBBbGwgb3RoZXIgc3VwcGxpZWQgYXJndW1lbnRzIGFyZQotICAgcGFzc2VkIGRpcmVjdGx5IHRocm91Z2ggdG8gdGhlIDpjbGFzczpgUG9wZW5gIGNvbnN0cnVjdG9yLgorICAgaW4gOnJlZjpgZnJlcXVlbnRseS11c2VkLWFyZ3VtZW50c2AgKGhlbmNlIHRoZSB1c2Ugb2Yga2V5d29yZC1vbmx5IG5vdGF0aW9uCisgICBpbiB0aGUgYWJicmV2aWF0ZWQgc2lnbmF0dXJlKS4gVGhlIGZ1bGwgZnVuY3Rpb24gc2lnbmF0dXJlIGlzIGxhcmdlbHkgdGhlCisgICBzYW1lIGFzIHRoYXQgb2YgdGhlIDpjbGFzczpgUG9wZW5gIGNvbnN0cnVjdG9yIC0gdGhpcyBmdW5jdGlvbnMgcGFzc2VzIGFsbAorICAgc3VwcGxpZWQgYXJndW1lbnRzIG90aGVyIHRoYW4gKnRpbWVvdXQqIGRpcmVjdGx5IHRocm91Z2ggdG8gdGhhdCBpbnRlcmZhY2UuCisgICBJbiBhZGRpdGlvbiwgKnN0ZG91dCogaXMgbm90IHBlcm1pdHRlZCBhcyBhbiBhcmd1bWVudCwgYXMgaXQgaXMgdXNlZAorICAgaW50ZXJuYWxseSB0byBjb2xsZWN0IHRoZSBvdXRwdXQgZnJvbSB0aGUgc3VicHJvY2Vzcy4KKworICAgVGhlICp0aW1lb3V0KiBhcmd1bWVudCBpcyBwYXNzZWQgdG8gOm1ldGg6YFBvcGVuLndhaXRgLiBJZiB0aGUgdGltZW91dAorICAgZXhwaXJlcywgdGhlIGNoaWxkIHByb2Nlc3Mgd2lsbCBiZSBraWxsZWQgYW5kIHRoZW4gd2FpdGVkIGZvciBhZ2Fpbi4gIFRoZQorICAgOmV4YzpgVGltZW91dEV4cGlyZWRgIGV4Y2VwdGlvbiB3aWxsIGJlIHJlLXJhaXNlZCBhZnRlciB0aGUgY2hpbGQgcHJvY2VzcworICAgaGFzIHRlcm1pbmF0ZWQuCiAKICAgIEV4YW1wbGVzOjoKIApAQCAtMTQ3LDcgKzE2Nyw3IEBACiAgICAgICAuLi4gICAgIHNoZWxsPVRydWUpCiAgICAgICAnbHM6IG5vbl9leGlzdGVudF9maWxlOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5XG4nCiAKLSAgIC4uIHZlcnNpb25hZGRlZDo6IDIuNworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4xCiAKICAgIC4uIHdhcm5pbmc6OgogCkBAIC0xNjEsNiArMTgxLDE4IEBACiAgICAgICByZWFkIGluIHRoZSBjdXJyZW50IHByb2Nlc3MsIHRoZSBjaGlsZCBwcm9jZXNzIG1heSBibG9jayBpZiBpdAogICAgICAgZ2VuZXJhdGVzIGVub3VnaCBvdXRwdXQgdG8gdGhlIHBpcGUgdG8gZmlsbCB1cCB0aGUgT1MgcGlwZSBidWZmZXIuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqdGltZW91dCogd2FzIGFkZGVkLgorCisKKy4uIGRhdGE6OiBERVZOVUxMCisKKyAgIFNwZWNpYWwgdmFsdWUgdGhhdCBjYW4gYmUgdXNlZCBhcyB0aGUgKnN0ZGluKiwgKnN0ZG91dCogb3IgKnN0ZGVyciogYXJndW1lbnQKKyAgIHRvIDpjbGFzczpgUG9wZW5gIGFuZCBpbmRpY2F0ZXMgdGhhdCB0aGUgc3BlY2lhbCBmaWxlIDpkYXRhOmBvcy5kZXZudWxsYAorICAgd2lsbCBiZSB1c2VkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogCiAuLiBkYXRhOjogUElQRQogCkBAIC0xOTYsMTMgKzIyOCwxNCBAQAogCiAgICAqc3RkaW4qLCAqc3Rkb3V0KiBhbmQgKnN0ZGVyciogc3BlY2lmeSB0aGUgZXhlY3V0ZWQgcHJvZ3JhbSdzIHN0YW5kYXJkIGlucHV0LAogICAgc3RhbmRhcmQgb3V0cHV0IGFuZCBzdGFuZGFyZCBlcnJvciBmaWxlIGhhbmRsZXMsIHJlc3BlY3RpdmVseS4gIFZhbGlkIHZhbHVlcwotICAgYXJlIDpkYXRhOmBQSVBFYCwgYW4gZXhpc3RpbmcgZmlsZSBkZXNjcmlwdG9yIChhIHBvc2l0aXZlIGludGVnZXIpLCBhbgotICAgZXhpc3RpbmcgZmlsZSBvYmplY3QsIGFuZCBgYE5vbmVgYC4gIDpkYXRhOmBQSVBFYCBpbmRpY2F0ZXMgdGhhdCBhIG5ldyBwaXBlCi0gICB0byB0aGUgY2hpbGQgc2hvdWxkIGJlIGNyZWF0ZWQuICBXaXRoIHRoZSBkZWZhdWx0IHNldHRpbmdzIG9mIGBgTm9uZWBgLCBubwotICAgcmVkaXJlY3Rpb24gd2lsbCBvY2N1cjsgdGhlIGNoaWxkJ3MgZmlsZSBoYW5kbGVzIHdpbGwgYmUgaW5oZXJpdGVkIGZyb20gdGhlCi0gICBwYXJlbnQuICBBZGRpdGlvbmFsbHksICpzdGRlcnIqIGNhbiBiZSA6ZGF0YTpgU1RET1VUYCwgd2hpY2ggaW5kaWNhdGVzIHRoYXQKLSAgIHRoZSBzdGRlcnIgZGF0YSBmcm9tIHRoZSBjaGlsZCBwcm9jZXNzIHNob3VsZCBiZSBjYXB0dXJlZCBpbnRvIHRoZSBzYW1lIGZpbGUKLSAgIGhhbmRsZSBhcyBmb3Igc3Rkb3V0LgorICAgYXJlIDpkYXRhOmBQSVBFYCwgOmRhdGE6YERFVk5VTExgLCBhbiBleGlzdGluZyBmaWxlIGRlc2NyaXB0b3IgKGEgcG9zaXRpdmUKKyAgIGludGVnZXIpLCBhbiBleGlzdGluZyBmaWxlIG9iamVjdCwgYW5kIGBgTm9uZWBgLiAgOmRhdGE6YFBJUEVgIGluZGljYXRlcworICAgdGhhdCBhIG5ldyBwaXBlIHRvIHRoZSBjaGlsZCBzaG91bGQgYmUgY3JlYXRlZC4gIDpkYXRhOmBERVZOVUxMYCBpbmRpY2F0ZXMKKyAgIHRoYXQgdGhlIHNwZWNpYWwgZmlsZSA6ZGF0YTpgb3MuZGV2bnVsbGAgd2lsbCBiZSB1c2VkLiAgV2l0aCB0aGUgZGVmYXVsdAorICAgc2V0dGluZ3Mgb2YgYGBOb25lYGAsIG5vIHJlZGlyZWN0aW9uIHdpbGwgb2NjdXI7IHRoZSBjaGlsZCdzIGZpbGUgaGFuZGxlcworICAgd2lsbCBiZSBpbmhlcml0ZWQgZnJvbSB0aGUgcGFyZW50LiAgQWRkaXRpb25hbGx5LCAqc3RkZXJyKiBjYW4gYmUKKyAgIDpkYXRhOmBTVERPVVRgLCB3aGljaCBpbmRpY2F0ZXMgdGhhdCB0aGUgc3RkZXJyIGRhdGEgZnJvbSB0aGUgY2hpbGQKKyAgIHByb2Nlc3Mgc2hvdWxkIGJlIGNhcHR1cmVkIGludG8gdGhlIHNhbWUgZmlsZSBoYW5kbGUgYXMgZm9yICpzdGRvdXQqLgogCiAgICBXaGVuICpzdGRvdXQqIG9yICpzdGRlcnIqIGFyZSBwaXBlcyBhbmQgKnVuaXZlcnNhbF9uZXdsaW5lcyogaXMKICAgIDpjb25zdDpgVHJ1ZWAgdGhlbiB0aGUgb3V0cHV0IGRhdGEgaXMgYXNzdW1lZCB0byBiZSBlbmNvZGVkIGFzIFVURi04IGFuZApAQCAtMzMxLDEzICszNjQsMTQgQEAKIAogICAgKnN0ZGluKiwgKnN0ZG91dCogYW5kICpzdGRlcnIqIHNwZWNpZnkgdGhlIGV4ZWN1dGVkIHByb2dyYW0ncyBzdGFuZGFyZCBpbnB1dCwKICAgIHN0YW5kYXJkIG91dHB1dCBhbmQgc3RhbmRhcmQgZXJyb3IgZmlsZSBoYW5kbGVzLCByZXNwZWN0aXZlbHkuICBWYWxpZCB2YWx1ZXMKLSAgIGFyZSA6ZGF0YTpgUElQRWAsIGFuIGV4aXN0aW5nIGZpbGUgZGVzY3JpcHRvciAoYSBwb3NpdGl2ZSBpbnRlZ2VyKSwgYW4KLSAgIGV4aXN0aW5nIDp0ZXJtOmBmaWxlIG9iamVjdGAsIGFuZCBgYE5vbmVgYC4gIDpkYXRhOmBQSVBFYCBpbmRpY2F0ZXMgdGhhdCBhCi0gICBuZXcgcGlwZSB0byB0aGUgY2hpbGQgc2hvdWxkIGJlIGNyZWF0ZWQuICBXaXRoIHRoZSBkZWZhdWx0IHNldHRpbmdzIG9mCi0gICBgYE5vbmVgYCwgbm8gcmVkaXJlY3Rpb24gd2lsbCBvY2N1cjsgdGhlIGNoaWxkJ3MgZmlsZSBoYW5kbGVzIHdpbGwgYmUKLSAgIGluaGVyaXRlZCBmcm9tIHRoZSBwYXJlbnQuICBBZGRpdGlvbmFsbHksICpzdGRlcnIqIGNhbiBiZSA6ZGF0YTpgU1RET1VUYCwKLSAgIHdoaWNoIGluZGljYXRlcyB0aGF0IHRoZSBzdGRlcnIgZGF0YSBmcm9tIHRoZSBhcHBsaWNhdGlvbnMgc2hvdWxkIGJlCi0gICBjYXB0dXJlZCBpbnRvIHRoZSBzYW1lIGZpbGUgaGFuZGxlIGFzIGZvciBzdGRvdXQuCisgICBhcmUgOmRhdGE6YFBJUEVgLCA6ZGF0YTpgREVWTlVMTGAsIGFuIGV4aXN0aW5nIGZpbGUgZGVzY3JpcHRvciAoYSBwb3NpdGl2ZQorICAgaW50ZWdlciksIGFuIGV4aXN0aW5nIDp0ZXJtOmBmaWxlIG9iamVjdGAsIGFuZCBgYE5vbmVgYC4gIDpkYXRhOmBQSVBFYAorICAgaW5kaWNhdGVzIHRoYXQgYSBuZXcgcGlwZSB0byB0aGUgY2hpbGQgc2hvdWxkIGJlIGNyZWF0ZWQuICA6ZGF0YTpgREVWTlVMTGAKKyAgIGluZGljYXRlcyB0aGF0IHRoZSBzcGVjaWFsIGZpbGUgOmRhdGE6YG9zLmRldm51bGxgIHdpbGwgYmUgdXNlZC4gV2l0aCB0aGUKKyAgIGRlZmF1bHQgc2V0dGluZ3Mgb2YgYGBOb25lYGAsIG5vIHJlZGlyZWN0aW9uIHdpbGwgb2NjdXI7IHRoZSBjaGlsZCdzIGZpbGUKKyAgIGhhbmRsZXMgd2lsbCBiZSBpbmhlcml0ZWQgZnJvbSB0aGUgcGFyZW50LiAgQWRkaXRpb25hbGx5LCAqc3RkZXJyKiBjYW4gYmUKKyAgIDpkYXRhOmBTVERPVVRgLCB3aGljaCBpbmRpY2F0ZXMgdGhhdCB0aGUgc3RkZXJyIGRhdGEgZnJvbSB0aGUgYXBwbGljYXRpb25zCisgICBzaG91bGQgYmUgY2FwdHVyZWQgaW50byB0aGUgc2FtZSBmaWxlIGhhbmRsZSBhcyBmb3Igc3Rkb3V0LgogCiAgICBJZiAqcHJlZXhlY19mbiogaXMgc2V0IHRvIGEgY2FsbGFibGUgb2JqZWN0LCB0aGlzIG9iamVjdCB3aWxsIGJlIGNhbGxlZCBpbiB0aGUKICAgIGNoaWxkIHByb2Nlc3MganVzdCBiZWZvcmUgdGhlIGNoaWxkIGlzIGV4ZWN1dGVkLgpAQCAtNDU2LDYgKzQ5MCwxNSBAQAogOmV4YzpgQ2FsbGVkUHJvY2Vzc0Vycm9yYCBpZiB0aGUgY2FsbGVkIHByb2Nlc3MgcmV0dXJucyBhIG5vbi16ZXJvIHJldHVybgogY29kZS4KIAorQWxsIG9mIHRoZSBmdW5jdGlvbnMgYW5kIG1ldGhvZHMgdGhhdCBhY2NlcHQgYSAqdGltZW91dCogcGFyYW1ldGVyLCBzdWNoIGFzCis6ZnVuYzpgY2FsbGAgYW5kIDptZXRoOmBQb3Blbi5jb21tdW5pY2F0ZWAgd2lsbCByYWlzZSA6ZXhjOmBUaW1lb3V0RXhwaXJlZGAgaWYKK3RoZSB0aW1lb3V0IGV4cGlyZXMgYmVmb3JlIHRoZSBwcm9jZXNzIGV4aXRzLgorCitFeGNlcHRpb25zIGRlZmluZWQgaW4gdGhpcyBtb2R1bGUgYWxsIGluaGVyaXQgZnJvbSA6ZXhjOmBTdWJwcm9jZXNzRXJyb3JgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgICAgIFRoZSA6ZXhjOmBTdWJwcm9jZXNzRXJyb3JgIGJhc2UgY2xhc3Mgd2FzIGFkZGVkLgorCiAKIFNlY3VyaXR5CiBeXl5eXl5eXgpAQCAtNDc5LDExICs1MjIsMTUgQEAKICAgIGF0dHJpYnV0ZS4KIAogCi0uLiBtZXRob2Q6OiBQb3Blbi53YWl0KCkKKy4uIG1ldGhvZDo6IFBvcGVuLndhaXQodGltZW91dD1Ob25lKQogCiAgICBXYWl0IGZvciBjaGlsZCBwcm9jZXNzIHRvIHRlcm1pbmF0ZS4gIFNldCBhbmQgcmV0dXJuIDphdHRyOmByZXR1cm5jb2RlYAogICAgYXR0cmlidXRlLgogCisgICBJZiB0aGUgcHJvY2VzcyBkb2VzIG5vdCB0ZXJtaW5hdGUgYWZ0ZXIgKnRpbWVvdXQqIHNlY29uZHMsIHJhaXNlIGEKKyAgIDpleGM6YFRpbWVvdXRFeHBpcmVkYCBleGNlcHRpb24uICBJdCBpcyBzYWZlIHRvIGNhdGNoIHRoaXMgZXhjZXB0aW9uIGFuZAorICAgcmV0cnkgdGhlIHdhaXQuCisKICAgIC4uIHdhcm5pbmc6OgogCiAgICAgICBUaGlzIHdpbGwgZGVhZGxvY2sgd2hlbiB1c2luZyBgYHN0ZG91dD1QSVBFYGAgYW5kL29yCkBAIC00OTEsMTMgKzUzOCwxNyBAQAogICAgICAgYSBwaXBlIHN1Y2ggdGhhdCBpdCBibG9ja3Mgd2FpdGluZyBmb3IgdGhlIE9TIHBpcGUgYnVmZmVyIHRvCiAgICAgICBhY2NlcHQgbW9yZSBkYXRhLiAgVXNlIDptZXRoOmBjb21tdW5pY2F0ZWAgdG8gYXZvaWQgdGhhdC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICp0aW1lb3V0KiB3YXMgYWRkZWQuCiAKLS4uIG1ldGhvZDo6IFBvcGVuLmNvbW11bmljYXRlKGlucHV0PU5vbmUpCisKKy4uIG1ldGhvZDo6IFBvcGVuLmNvbW11bmljYXRlKGlucHV0PU5vbmUsIHRpbWVvdXQ9Tm9uZSkKIAogICAgSW50ZXJhY3Qgd2l0aCBwcm9jZXNzOiBTZW5kIGRhdGEgdG8gc3RkaW4uICBSZWFkIGRhdGEgZnJvbSBzdGRvdXQgYW5kIHN0ZGVyciwKLSAgIHVudGlsIGVuZC1vZi1maWxlIGlzIHJlYWNoZWQuICBXYWl0IGZvciBwcm9jZXNzIHRvIHRlcm1pbmF0ZS4gVGhlIG9wdGlvbmFsCi0gICAqaW5wdXQqIGFyZ3VtZW50IHNob3VsZCBiZSBhIGJ5dGUgc3RyaW5nIHRvIGJlIHNlbnQgdG8gdGhlIGNoaWxkIHByb2Nlc3MsIG9yCi0gICBgYE5vbmVgYCwgaWYgbm8gZGF0YSBzaG91bGQgYmUgc2VudCB0byB0aGUgY2hpbGQuCisgICB1bnRpbCBlbmQtb2YtZmlsZSBpcyByZWFjaGVkLiAgV2FpdCBmb3IgcHJvY2VzcyB0byB0ZXJtaW5hdGUuICBUaGUgb3B0aW9uYWwKKyAgICppbnB1dCogYXJndW1lbnQgc2hvdWxkIGJlIGRhdGEgdG8gYmUgc2VudCB0byB0aGUgY2hpbGQgcHJvY2Vzcywgb3IKKyAgIGBgTm9uZWBgLCBpZiBubyBkYXRhIHNob3VsZCBiZSBzZW50IHRvIHRoZSBjaGlsZC4gIFRoZSB0eXBlIG9mICppbnB1dCoKKyAgIG11c3QgYmUgYnl0ZXMgb3IsIGlmICp1bml2ZXJzYWxfbmV3bGluZXMqIHdhcyBgYFRydWVgYCwgYSBzdHJpbmcuCiAKICAgIDptZXRoOmBjb21tdW5pY2F0ZWAgcmV0dXJucyBhIHR1cGxlIGBgKHN0ZG91dGRhdGEsIHN0ZGVycmRhdGEpYGAuCiAKQEAgLTUwNiwxMSArNTU3LDI5IEBACiAgICBgYE5vbmVgYCBpbiB0aGUgcmVzdWx0IHR1cGxlLCB5b3UgbmVlZCB0byBnaXZlIGBgc3Rkb3V0PVBJUEVgYCBhbmQvb3IKICAgIGBgc3RkZXJyPVBJUEVgYCB0b28uCiAKKyAgIElmIHRoZSBwcm9jZXNzIGRvZXMgbm90IHRlcm1pbmF0ZSBhZnRlciAqdGltZW91dCogc2Vjb25kcywgYQorICAgOmV4YzpgVGltZW91dEV4cGlyZWRgIGV4Y2VwdGlvbiB3aWxsIGJlIHJhaXNlZC4gIENhdGNoaW5nIHRoaXMgZXhjZXB0aW9uIGFuZAorICAgcmV0cnlpbmcgY29tbXVuaWNhdGlvbiB3aWxsIG5vdCBsb3NlIGFueSBvdXRwdXQuCisKKyAgIFRoZSBjaGlsZCBwcm9jZXNzIGlzIG5vdCBraWxsZWQgaWYgdGhlIHRpbWVvdXQgZXhwaXJlcywgc28gaW4gb3JkZXIgdG8KKyAgIGNsZWFudXAgcHJvcGVybHkgYSB3ZWxsLWJlaGF2ZWQgYXBwbGljYXRpb24gc2hvdWxkIGtpbGwgdGhlIGNoaWxkIHByb2Nlc3MgYW5kCisgICBmaW5pc2ggY29tbXVuaWNhdGlvbjo6CisKKyAgICAgIHByb2MgPSBzdWJwcm9jZXNzLlBvcGVuKC4uLikKKyAgICAgIHRyeToKKyAgICAgICAgICBvdXRzLCBlcnJzID0gcHJvYy5jb21tdW5pY2F0ZSh0aW1lb3V0PTE1KQorICAgICAgZXhjZXB0IFRpbWVvdXRFeHBpcmVkOgorICAgICAgICAgIHByb2Mua2lsbCgpCisgICAgICAgICAgb3V0cywgZXJycyA9IHByb2MuY29tbXVuaWNhdGUoKQorCiAgICAuLiBub3RlOjoKIAogICAgICAgVGhlIGRhdGEgcmVhZCBpcyBidWZmZXJlZCBpbiBtZW1vcnksIHNvIGRvIG5vdCB1c2UgdGhpcyBtZXRob2QgaWYgdGhlIGRhdGEKICAgICAgIHNpemUgaXMgbGFyZ2Ugb3IgdW5saW1pdGVkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgKnRpbWVvdXQqIHdhcyBhZGRlZC4KKwogCiAuLiBtZXRob2Q6OiBQb3Blbi5zZW5kX3NpZ25hbChzaWduYWwpCiAKQEAgLTk1MiwzICsxMDIxLDkgQEAKICAgIGJhY2tzbGFzaC4gIElmIHRoZSBudW1iZXIgb2YgYmFja3NsYXNoZXMgaXMgb2RkLCB0aGUgbGFzdAogICAgYmFja3NsYXNoIGVzY2FwZXMgdGhlIG5leHQgZG91YmxlIHF1b3RhdGlvbiBtYXJrIGFzCiAgICBkZXNjcmliZWQgaW4gcnVsZSAzLgorCisKKy4uIHNlZWFsc286OgorCisgICA6bW9kOmBzaGxleGAKKyAgICAgIE1vZHVsZSB3aGljaCBwcm92aWRlcyBmdW5jdGlvbiB0byBwYXJzZSBhbmQgZXNjYXBlIGNvbW1hbmQgbGluZXMuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9zeXMucnN0IGIvRG9jL2xpYnJhcnkvc3lzLnJzdAppbmRleCAwZTRhZGVjLi45NjQ1MGM1IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9zeXMucnN0CisrKyBiL0RvYy9saWJyYXJ5L3N5cy5yc3QKQEAgLTIzNSwxNCArMjM1LDEzIEBACiAKIC4uIGRhdGE6OiBmbGFncwogCi0gICBUaGUgc3RydWN0IHNlcXVlbmNlICpmbGFncyogZXhwb3NlcyB0aGUgc3RhdHVzIG9mIGNvbW1hbmQgbGluZSBmbGFncy4gVGhlCi0gICBhdHRyaWJ1dGVzIGFyZSByZWFkIG9ubHkuCisgICBUaGUgOnRlcm06YHN0cnVjdCBzZXF1ZW5jZWAgKmZsYWdzKiBleHBvc2VzIHRoZSBzdGF0dXMgb2YgY29tbWFuZCBsaW5lCisgICBmbGFncy4gVGhlIGF0dHJpYnV0ZXMgYXJlIHJlYWQgb25seS4KIAogICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAgIGF0dHJpYnV0ZSAgICAgICAgICAgICAgICAgICAgIGZsYWcKICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICA6Y29uc3Q6YGRlYnVnYCAgICAgICAgICAgICAgICA6b3B0aW9uOmAtZGAKLSAgIDpjb25zdDpgZGl2aXNpb25fd2FybmluZ2AgICAgIDpvcHRpb246YC1RYAogICAgOmNvbnN0OmBpbnNwZWN0YCAgICAgICAgICAgICAgOm9wdGlvbjpgLWlgCiAgICA6Y29uc3Q6YGludGVyYWN0aXZlYCAgICAgICAgICA6b3B0aW9uOmAtaWAKICAgIDpjb25zdDpgb3B0aW1pemVgICAgICAgICAgICAgIDpvcHRpb246YC1PYCBvciA6b3B0aW9uOmAtT09gCkBAIC0yNjIsMTUgKzI2MSwxOCBAQAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yLjMKICAgICAgIFRoZSBgYGhhc2hfcmFuZG9taXphdGlvbmBgIGF0dHJpYnV0ZS4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFJlbW92ZWQgb2Jzb2xldGUgYGBkaXZpc2lvbl93YXJuaW5nYGAgYXR0cmlidXRlLgorCiAKIC4uIGRhdGE6OiBmbG9hdF9pbmZvCiAKLSAgIEEgc3RydWN0c2VxIGhvbGRpbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZsb2F0IHR5cGUuIEl0IGNvbnRhaW5zIGxvdyBsZXZlbAotICAgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByZWNpc2lvbiBhbmQgaW50ZXJuYWwgcmVwcmVzZW50YXRpb24uICBUaGUgdmFsdWVzCi0gICBjb3JyZXNwb25kIHRvIHRoZSB2YXJpb3VzIGZsb2F0aW5nLXBvaW50IGNvbnN0YW50cyBkZWZpbmVkIGluIHRoZSBzdGFuZGFyZAotICAgaGVhZGVyIGZpbGUgOmZpbGU6YGZsb2F0LmhgIGZvciB0aGUgJ0MnIHByb2dyYW1taW5nIGxhbmd1YWdlOyBzZWUgc2VjdGlvbgotICAgNS4yLjQuMi4yIG9mIHRoZSAxOTk5IElTTy9JRUMgQyBzdGFuZGFyZCBbQzk5XV8sICdDaGFyYWN0ZXJpc3RpY3Mgb2YKLSAgIGZsb2F0aW5nIHR5cGVzJywgZm9yIGRldGFpbHMuCisgICBBIDp0ZXJtOmBzdHJ1Y3Qgc2VxdWVuY2VgIGhvbGRpbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZsb2F0IHR5cGUuIEl0CisgICBjb250YWlucyBsb3cgbGV2ZWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByZWNpc2lvbiBhbmQgaW50ZXJuYWwKKyAgIHJlcHJlc2VudGF0aW9uLiAgVGhlIHZhbHVlcyBjb3JyZXNwb25kIHRvIHRoZSB2YXJpb3VzIGZsb2F0aW5nLXBvaW50CisgICBjb25zdGFudHMgZGVmaW5lZCBpbiB0aGUgc3RhbmRhcmQgaGVhZGVyIGZpbGUgOmZpbGU6YGZsb2F0LmhgIGZvciB0aGUgJ0MnCisgICBwcm9ncmFtbWluZyBsYW5ndWFnZTsgc2VlIHNlY3Rpb24gNS4yLjQuMi4yIG9mIHRoZSAxOTk5IElTTy9JRUMgQyBzdGFuZGFyZAorICAgW0M5OV1fLCAnQ2hhcmFjdGVyaXN0aWNzIG9mIGZsb2F0aW5nIHR5cGVzJywgZm9yIGRldGFpbHMuCiAKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKICAgIHwgYXR0cmlidXRlICAgICAgICAgICB8IGZsb2F0LmggbWFjcm8gIHwgZXhwbGFuYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKQEAgLTUyMCw4ICs1MjIsOSBAQAogCiAuLiBkYXRhOjogaGFzaF9pbmZvCiAKLSAgIEEgc3RydWN0c2VxIGdpdmluZyBwYXJhbWV0ZXJzIG9mIHRoZSBudW1lcmljIGhhc2ggaW1wbGVtZW50YXRpb24uICBGb3IKLSAgIG1vcmUgZGV0YWlscyBhYm91dCBoYXNoaW5nIG9mIG51bWVyaWMgdHlwZXMsIHNlZSA6cmVmOmBudW1lcmljLWhhc2hgLgorICAgQSA6dGVybTpgc3RydWN0IHNlcXVlbmNlYCBnaXZpbmcgcGFyYW1ldGVycyBvZiB0aGUgbnVtZXJpYyBoYXNoCisgICBpbXBsZW1lbnRhdGlvbi4gIEZvciBtb3JlIGRldGFpbHMgYWJvdXQgaGFzaGluZyBvZiBudW1lcmljIHR5cGVzLCBzZWUKKyAgIDpyZWY6YG51bWVyaWMtaGFzaGAuCiAKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IGF0dHJpYnV0ZSAgICAgICAgICAgfCBleHBsYW5hdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfApAQCAtNTU2LDggKzU1OSw4IEBACiAKICAgIFRoaXMgaXMgY2FsbGVkIGBgaGV4dmVyc2lvbmBgIHNpbmNlIGl0IG9ubHkgcmVhbGx5IGxvb2tzIG1lYW5pbmdmdWwgd2hlbiB2aWV3ZWQKICAgIGFzIHRoZSByZXN1bHQgb2YgcGFzc2luZyBpdCB0byB0aGUgYnVpbHQtaW4gOmZ1bmM6YGhleGAgZnVuY3Rpb24uICBUaGUKLSAgIHN0cnVjdCBzZXF1ZW5jZSAgOmRhdGE6YHN5cy52ZXJzaW9uX2luZm9gIG1heSBiZSB1c2VkIGZvciBhIG1vcmUgaHVtYW4tZnJpZW5kbHkKLSAgIGVuY29kaW5nIG9mIHRoZSBzYW1lIGluZm9ybWF0aW9uLgorICAgOnRlcm06YHN0cnVjdCBzZXF1ZW5jZWAgIDpkYXRhOmBzeXMudmVyc2lvbl9pbmZvYCBtYXkgYmUgdXNlZCBmb3IgYSBtb3JlCisgICBodW1hbi1mcmllbmRseSBlbmNvZGluZyBvZiB0aGUgc2FtZSBpbmZvcm1hdGlvbi4KIAogICAgVGhlIGBgaGV4dmVyc2lvbmBgIGlzIGEgMzItYml0IG51bWJlciB3aXRoIHRoZSBmb2xsb3dpbmcgbGF5b3V0OgogCkBAIC01ODUsOCArNTg4LDggQEAKIAogLi4gZGF0YTo6IGludF9pbmZvCiAKLSAgIEEgc3RydWN0IHNlcXVlbmNlIHRoYXQgaG9sZHMgaW5mb3JtYXRpb24gYWJvdXQgUHl0aG9uJ3MKLSAgIGludGVybmFsIHJlcHJlc2VudGF0aW9uIG9mIGludGVnZXJzLiAgVGhlIGF0dHJpYnV0ZXMgYXJlIHJlYWQgb25seS4KKyAgIEEgOnRlcm06YHN0cnVjdCBzZXF1ZW5jZWAgdGhhdCBob2xkcyBpbmZvcm1hdGlvbiBhYm91dCBQeXRob24ncyBpbnRlcm5hbAorICAgcmVwcmVzZW50YXRpb24gb2YgaW50ZWdlcnMuICBUaGUgYXR0cmlidXRlcyBhcmUgcmVhZCBvbmx5LgogCiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCBBdHRyaWJ1dGUgICAgICAgICAgICAgICB8IEV4cGxhbmF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKQEAgLTY0MSw5ICs2NDQsMTMgQEAKIAogLi4gZGF0YTo6IG1heHVuaWNvZGUKIAotICAgQW4gaW50ZWdlciBnaXZpbmcgdGhlIGxhcmdlc3Qgc3VwcG9ydGVkIGNvZGUgcG9pbnQgZm9yIGEgVW5pY29kZSBjaGFyYWN0ZXIuICBUaGUKLSAgIHZhbHVlIG9mIHRoaXMgZGVwZW5kcyBvbiB0aGUgY29uZmlndXJhdGlvbiBvcHRpb24gdGhhdCBzcGVjaWZpZXMgd2hldGhlciBVbmljb2RlCi0gICBjaGFyYWN0ZXJzIGFyZSBzdG9yZWQgYXMgVUNTLTIgb3IgVUNTLTQuCisgICBBbiBpbnRlZ2VyIGdpdmluZyB0aGUgdmFsdWUgb2YgdGhlIGxhcmdlc3QgVW5pY29kZSBjb2RlIHBvaW50LAorICAgaS5lLiBgYDExMTQxMTFgYCAoYGAweDEwRkZGRmBgIGluIGhleGFkZWNpbWFsKS4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEJlZm9yZSA6cGVwOmAzOTNgLCBgYHN5cy5tYXh1bmljb2RlYGAgdXNlZCB0byBiZSBlaXRoZXIgYGAweEZGRkZgYAorICAgICAgb3IgYGAweDEwRkZGRmBgLCBkZXBlbmRpbmcgb24gdGhlIGNvbmZpZ3VyYXRpb24gb3B0aW9uIHRoYXQgc3BlY2lmaWVkCisgICAgICB3aGV0aGVyIFVuaWNvZGUgY2hhcmFjdGVycyB3ZXJlIHN0b3JlZCBhcyBVQ1MtMiBvciBVQ1MtNC4KIAogCiAuLiBkYXRhOjogbWV0YV9wYXRoCkBAIC03MTgsMzYgKzcyNSwzNSBAQAogICAgVGhpcyBzdHJpbmcgY29udGFpbnMgYSBwbGF0Zm9ybSBpZGVudGlmaWVyIHRoYXQgY2FuIGJlIHVzZWQgdG8gYXBwZW5kCiAgICBwbGF0Zm9ybS1zcGVjaWZpYyBjb21wb25lbnRzIHRvIDpkYXRhOmBzeXMucGF0aGAsIGZvciBpbnN0YW5jZS4KIAotICAgRm9yIG1vc3QgVW5peCBzeXN0ZW1zLCB0aGlzIGlzIHRoZSBsb3dlcmNhc2VkIE9TIG5hbWUgYXMgcmV0dXJuZWQgYnkgYGB1bmFtZQotICAgLXNgYCB3aXRoIHRoZSBmaXJzdCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIGFzIHJldHVybmVkIGJ5IGBgdW5hbWUgLXJgYCBhcHBlbmRlZCwKLSAgIGUuZy4gYGAnc3Vub3M1J2BgLCAqYXQgdGhlIHRpbWUgd2hlbiBQeXRob24gd2FzIGJ1aWx0Ki4gIFVubGVzcyB5b3Ugd2FudCB0bwotICAgdGVzdCBmb3IgYSBzcGVjaWZpYyBzeXN0ZW0gdmVyc2lvbiwgaXQgaXMgdGhlcmVmb3JlIHJlY29tbWVuZGVkIHRvIHVzZSB0aGUKLSAgIGZvbGxvd2luZyBpZGlvbTo6CisgICBGb3IgVW5peCBzeXN0ZW1zLCBleGNlcHQgb24gTGludXgsIHRoaXMgaXMgdGhlIGxvd2VyY2FzZWQgT1MgbmFtZSBhcworICAgcmV0dXJuZWQgYnkgYGB1bmFtZSAtc2BgIHdpdGggdGhlIGZpcnN0IHBhcnQgb2YgdGhlIHZlcnNpb24gYXMgcmV0dXJuZWQgYnkKKyAgIGBgdW5hbWUgLXJgYCBhcHBlbmRlZCwgZS5nLiBgYCdzdW5vczUnYGAgb3IgYGAnZnJlZWJzZDgnYGAsICphdCB0aGUgdGltZQorICAgd2hlbiBQeXRob24gd2FzIGJ1aWx0Ki4gIFVubGVzcyB5b3Ugd2FudCB0byB0ZXN0IGZvciBhIHNwZWNpZmljIHN5c3RlbQorICAgdmVyc2lvbiwgaXQgaXMgdGhlcmVmb3JlIHJlY29tbWVuZGVkIHRvIHVzZSB0aGUgZm9sbG93aW5nIGlkaW9tOjoKIAogICAgICAgaWYgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ2ZyZWVic2QnKToKICAgICAgICAgICAjIEZyZWVCU0Qtc3BlY2lmaWMgY29kZSBoZXJlLi4uCiAgICAgICBlbGlmIHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdsaW51eCcpOgogICAgICAgICAgICMgTGludXgtc3BlY2lmaWMgY29kZSBoZXJlLi4uCiAKLSAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yLjIKLSAgICAgIFNpbmNlIGxvdHMgb2YgY29kZSBjaGVjayBmb3IgYGBzeXMucGxhdGZvcm0gPT0gJ2xpbnV4MidgYCwgYW5kIHRoZXJlIGlzCi0gICAgICBubyBlc3NlbnRpYWwgY2hhbmdlIGJldHdlZW4gTGludXggMi54IGFuZCAzLngsIGBgc3lzLnBsYXRmb3JtYGAgaXMgYWx3YXlzCi0gICAgICBzZXQgdG8gYGAnbGludXgyJ2BgLCBldmVuIG9uIExpbnV4IDMueC4gIEluIFB5dGhvbiAzLjMgYW5kIGxhdGVyLCB0aGUKLSAgICAgIHZhbHVlIHdpbGwgYWx3YXlzIGJlIHNldCB0byBgYCdsaW51eCdgYCwgc28gaXQgaXMgcmVjb21tZW5kZWQgdG8gYWx3YXlzCi0gICAgICB1c2UgdGhlIGBgc3RhcnRzd2l0aGBgIGlkaW9tIHByZXNlbnRlZCBhYm92ZS4KLQogICAgRm9yIG90aGVyIHN5c3RlbXMsIHRoZSB2YWx1ZXMgYXJlOgogCi0gICA9PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PQotICAgU3lzdGVtICAgICAgICAgICAgICAgICA6ZGF0YTpgcGxhdGZvcm1gIHZhbHVlCi0gICA9PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PQotICAgTGludXggKDIueCAqYW5kKiAzLngpICBgYCdsaW51eDInYGAKLSAgIFdpbmRvd3MgICAgICAgICAgICAgICAgYGAnd2luMzInYGAKLSAgIFdpbmRvd3MvQ3lnd2luICAgICAgICAgYGAnY3lnd2luJ2BgCi0gICBNYWMgT1MgWCAgICAgICAgICAgICAgIGBgJ2RhcndpbidgYAotICAgT1MvMiAgICAgICAgICAgICAgICAgICBgYCdvczInYGAKLSAgIE9TLzIgRU1YICAgICAgICAgICAgICAgYGAnb3MyZW14J2BgCi0gICA9PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PQorICAgPT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAgIFN5c3RlbSAgICAgICAgICAgOmRhdGE6YHBsYXRmb3JtYCB2YWx1ZQorICAgPT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAgIExpbnV4ICAgICAgICAgICAgYGAnbGludXgnYGAKKyAgIFdpbmRvd3MgICAgICAgICAgYGAnd2luMzInYGAKKyAgIFdpbmRvd3MvQ3lnd2luICAgYGAnY3lnd2luJ2BgCisgICBNYWMgT1MgWCAgICAgICAgIGBgJ2RhcndpbidgYAorICAgT1MvMiAgICAgICAgICAgICBgYCdvczInYGAKKyAgIE9TLzIgRU1YICAgICAgICAgYGAnb3MyZW14J2BgCisgICA9PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgT24gTGludXgsIDphdHRyOmBzeXMucGxhdGZvcm1gIGRvZXNuJ3QgY29udGFpbiB0aGUgbWFqb3IgdmVyc2lvbiBhbnltb3JlLgorICAgICAgSXQgaXMgYWx3YXlzIGBgJ2xpbnV4J2BgLCBpbnN0ZWFkIG9mIGBgJ2xpbnV4MidgYCBvciBgYCdsaW51eDMnYGAuICBTaW5jZQorICAgICAgb2xkZXIgUHl0aG9uIHZlcnNpb25zIGluY2x1ZGUgdGhlIHZlcnNpb24gbnVtYmVyLCBpdCBpcyByZWNvbW1lbmRlZCB0bworICAgICAgYWx3YXlzIHVzZSB0aGUgYGBzdGFydHN3aXRoYGAgaWRpb20gcHJlc2VudGVkIGFib3ZlLgogCiAgICAuLiBzZWVhbHNvOjoKIApAQCAtNzY0LDcgKzc3MCw3IEBACiAgICBpbmRlcGVuZGVudCBQeXRob24gZmlsZXMgYXJlIGluc3RhbGxlZDsgYnkgZGVmYXVsdCwgdGhpcyBpcyB0aGUgc3RyaW5nCiAgICBgYCcvdXNyL2xvY2FsJ2BgLiAgVGhpcyBjYW4gYmUgc2V0IGF0IGJ1aWxkIHRpbWUgd2l0aCB0aGUgYGAtLXByZWZpeGBgCiAgICBhcmd1bWVudCB0byB0aGUgOnByb2dyYW06YGNvbmZpZ3VyZWAgc2NyaXB0LiAgVGhlIG1haW4gY29sbGVjdGlvbiBvZiBQeXRob24KLSAgIGxpYnJhcnkgbW9kdWxlcyBpcyBpbnN0YWxsZWQgaW4gdGhlIGRpcmVjdG9yeSA6ZmlsZTpge3ByZWZpeH0vbGliL3B5dGhvbntYLll9YGAKKyAgIGxpYnJhcnkgbW9kdWxlcyBpcyBpbnN0YWxsZWQgaW4gdGhlIGRpcmVjdG9yeSA6ZmlsZTpge3ByZWZpeH0vbGliL3B5dGhvbntYLll9YAogICAgd2hpbGUgdGhlIHBsYXRmb3JtIGluZGVwZW5kZW50IGhlYWRlciBmaWxlcyAoYWxsIGV4Y2VwdCA6ZmlsZTpgcHljb25maWcuaGApIGFyZQogICAgc3RvcmVkIGluIDpmaWxlOmB7cHJlZml4fS9pbmNsdWRlL3B5dGhvbntYLll9YCwgd2hlcmUgKlguWSogaXMgdGhlIHZlcnNpb24KICAgIG51bWJlciBvZiBQeXRob24sIGZvciBleGFtcGxlIGBgMy4yYGAuCkBAIC04MDYsMTEgKzgxMiwxMSBAQAogICAgdGhlIGludGVycHJldGVyIGxvYWRzIGV4dGVuc2lvbiBtb2R1bGVzLiAgQW1vbmcgb3RoZXIgdGhpbmdzLCB0aGlzIHdpbGwgZW5hYmxlIGEKICAgIGxhenkgcmVzb2x2aW5nIG9mIHN5bWJvbHMgd2hlbiBpbXBvcnRpbmcgYSBtb2R1bGUsIGlmIGNhbGxlZCBhcwogICAgYGBzeXMuc2V0ZGxvcGVuZmxhZ3MoMClgYC4gIFRvIHNoYXJlIHN5bWJvbHMgYWNyb3NzIGV4dGVuc2lvbiBtb2R1bGVzLCBjYWxsIGFzCi0gICBgYHN5cy5zZXRkbG9wZW5mbGFncyhjdHlwZXMuUlRMRF9HTE9CQUwpYGAuICBTeW1ib2xpYyBuYW1lcyBmb3IgdGhlCi0gICBmbGFnIG1vZHVsZXMgY2FuIGJlIGVpdGhlciBmb3VuZCBpbiB0aGUgOm1vZDpgY3R5cGVzYCBtb2R1bGUsIG9yIGluIHRoZSA6bW9kOmBETEZDTmAKLSAgIG1vZHVsZS4gSWYgOm1vZDpgRExGQ05gIGlzIG5vdCBhdmFpbGFibGUsIGl0IGNhbiBiZSBnZW5lcmF0ZWQgZnJvbQotICAgOmZpbGU6YC91c3IvaW5jbHVkZS9kbGZjbi5oYCB1c2luZyB0aGUgOnByb2dyYW06YGgycHlgIHNjcmlwdC4gQXZhaWxhYmlsaXR5OgotICAgVW5peC4KKyAgIGBgc3lzLnNldGRsb3BlbmZsYWdzKG9zLlJUTERfR0xPQkFMKWBgLiAgU3ltYm9saWMgbmFtZXMgZm9yIHRoZSBmbGFnIG1vZHVsZXMKKyAgIGNhbiBiZSBmb3VuZCBpbiB0aGUgOm1vZDpgb3NgIG1vZHVsZSAoYGBSVExEX3h4eGBgIGNvbnN0YW50cywgZS5nLgorICAgOmRhdGE6YG9zLlJUTERfTEFaWWApLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCiAKIC4uIGZ1bmN0aW9uOjogc2V0cHJvZmlsZShwcm9maWxlZnVuYykKIApAQCAtMTAwMywyMiArMTAwOSwzMyBAQAogICAgICAgIHRvIGEgY29uc29sZSBhbmQgUHl0aG9uIGFwcHMgc3RhcnRlZCB3aXRoIDpwcm9ncmFtOmBweXRob253YC4KIAogCi0uLiBkYXRhOjogc3VidmVyc2lvbgorLi4gZGF0YTo6IHRocmVhZF9pbmZvCiAKLSAgIEEgdHJpcGxlIChyZXBvLCBicmFuY2gsIHZlcnNpb24pIHJlcHJlc2VudGluZyB0aGUgU3VidmVyc2lvbiBpbmZvcm1hdGlvbiBvZiB0aGUKLSAgIFB5dGhvbiBpbnRlcnByZXRlci4gKnJlcG8qIGlzIHRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LCBgYCdDUHl0aG9uJ2BgLgotICAgKmJyYW5jaCogaXMgYSBzdHJpbmcgb2Ygb25lIG9mIHRoZSBmb3JtcyBgYCd0cnVuaydgYCwgYGAnYnJhbmNoZXMvbmFtZSdgYCBvcgotICAgYGAndGFncy9uYW1lJ2BgLiAqdmVyc2lvbiogaXMgdGhlIG91dHB1dCBvZiBgYHN2bnZlcnNpb25gYCwgaWYgdGhlIGludGVycHJldGVyCi0gICB3YXMgYnVpbHQgZnJvbSBhIFN1YnZlcnNpb24gY2hlY2tvdXQ7IGl0IGNvbnRhaW5zIHRoZSByZXZpc2lvbiBudW1iZXIgKHJhbmdlKQotICAgYW5kIHBvc3NpYmx5IGEgdHJhaWxpbmcgJ00nIGlmIHRoZXJlIHdlcmUgbG9jYWwgbW9kaWZpY2F0aW9ucy4gSWYgdGhlIHRyZWUgd2FzCi0gICBleHBvcnRlZCAob3Igc3ZudmVyc2lvbiB3YXMgbm90IGF2YWlsYWJsZSksIGl0IGlzIHRoZSByZXZpc2lvbiBvZgotICAgYGBJbmNsdWRlL3BhdGNobGV2ZWwuaGBgIGlmIHRoZSBicmFuY2ggaXMgYSB0YWcuIE90aGVyd2lzZSwgaXQgaXMgYGBOb25lYGAuCisgICBBIDp0ZXJtOmBzdHJ1Y3Qgc2VxdWVuY2VgIGhvbGRpbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRocmVhZAorICAgaW1wbGVtZW50YXRpb24uCiAKLSAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjIuMQotICAgICAgUHl0aG9uIGlzIG5vdyBgZGV2ZWxvcGVkIDxodHRwOi8vZG9jcy5weXRob24ub3JnL2Rldmd1aWRlLz5gXyB1c2luZwotICAgICAgTWVyY3VyaWFsLiAgSW4gcmVjZW50IFB5dGhvbiAzLjIgYnVnZml4IHJlbGVhc2VzLCA6ZGF0YTpgc3VidmVyc2lvbmAKLSAgICAgIHRoZXJlZm9yZSBjb250YWlucyBwbGFjZWhvbGRlciBpbmZvcm1hdGlvbi4gIEl0IGlzIHJlbW92ZWQgaW4gUHl0aG9uCi0gICAgICAzLjMuCisgICArLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgQXR0cmlidXRlICAgICAgICB8IEV4cGxhbmF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKz09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rCisgICB8IDpjb25zdDpgbmFtZWAgICAgfCBOYW1lIG9mIHRoZSB0aHJlYWQgaW1wbGVtZW50YXRpb246ICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgIHwgICogYGAnbnQnYGA6IFdpbmRvd3MgdGhyZWFkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgfCAgKiBgYCdvczInYGA6IE9TLzIgdGhyZWFkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICB8ICAqIGBgJ3B0aHJlYWQnYGA6IFBPU0lYIHRocmVhZHMgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgIHwgICogYGAnc29sYXJpcydgYDogU29sYXJpcyB0aHJlYWRzICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgOmNvbnN0OmBsb2NrYCAgICB8IE5hbWUgb2YgdGhlIGxvY2sgaW1wbGVtZW50YXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgfCAgKiBgYCdzZW1hcGhvcmUnYGA6IGEgbG9jayB1c2VzIGEgc2VtYXBob3JlICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICB8ICAqIGBgJ211dGV4K2NvbmQnYGA6IGEgbG9jayB1c2VzIGEgbXV0ZXggICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgIHwgICAgYW5kIGEgY29uZGl0aW9uIHZhcmlhYmxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgfCAgKiBgYE5vbmVgYCBpZiB0aGlzIGluZm9ybWF0aW9uIGlzIHVua25vd24gICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCA6Y29uc3Q6YHZlcnNpb25gIHwgTmFtZSBhbmQgdmVyc2lvbiBvZiB0aGUgdGhyZWFkIGxpYnJhcnkuIEl0IGlzIGEgc3RyaW5nLCB8CisgICB8ICAgICAgICAgICAgICAgICAgfCBvciBgYE5vbmVgYCBpZiB0aGVzZSBpbmZvcm1hdGlvbnMgYXJlIHVua25vd24uICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCiAuLiBkYXRhOjogdHJhY2ViYWNrbGltaXQKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3RhcmZpbGUucnN0IGIvRG9jL2xpYnJhcnkvdGFyZmlsZS5yc3QKaW5kZXggNDZlNDkwMC4uOTJlOWRmNyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvdGFyZmlsZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvdGFyZmlsZS5yc3QKQEAgLTEzLDEzICsxMywxMyBAQAogLS0tLS0tLS0tLS0tLS0KIAogVGhlIDptb2Q6YHRhcmZpbGVgIG1vZHVsZSBtYWtlcyBpdCBwb3NzaWJsZSB0byByZWFkIGFuZCB3cml0ZSB0YXIKLWFyY2hpdmVzLCBpbmNsdWRpbmcgdGhvc2UgdXNpbmcgZ3ppcCBvciBiejIgY29tcHJlc3Npb24uCithcmNoaXZlcywgaW5jbHVkaW5nIHRob3NlIHVzaW5nIGd6aXAsIGJ6MiBhbmQgbHptYSBjb21wcmVzc2lvbi4KIFVzZSB0aGUgOm1vZDpgemlwZmlsZWAgbW9kdWxlIHRvIHJlYWQgb3Igd3JpdGUgOmZpbGU6YC56aXBgIGZpbGVzLCBvciB0aGUKIGhpZ2hlci1sZXZlbCBmdW5jdGlvbnMgaW4gOnJlZjpgc2h1dGlsIDxhcmNoaXZpbmctb3BlcmF0aW9ucz5gLgogCiBTb21lIGZhY3RzIGFuZCBmaWd1cmVzOgogCi0qIHJlYWRzIGFuZCB3cml0ZXMgOm1vZDpgZ3ppcGAgYW5kIDptb2Q6YGJ6MmAgY29tcHJlc3NlZCBhcmNoaXZlcy4KKyogcmVhZHMgYW5kIHdyaXRlcyA6bW9kOmBnemlwYCwgOm1vZDpgYnoyYCBhbmQgOm1vZDpgbHptYWAgY29tcHJlc3NlZCBhcmNoaXZlcy4KIAogKiByZWFkL3dyaXRlIHN1cHBvcnQgZm9yIHRoZSBQT1NJWC4xLTE5ODggKHVzdGFyKSBmb3JtYXQuCiAKQEAgLTMzLDYgKzMzLDkgQEAKICAgY2hhcmFjdGVyIGRldmljZXMgYW5kIGJsb2NrIGRldmljZXMgYW5kIGlzIGFibGUgdG8gYWNxdWlyZSBhbmQgcmVzdG9yZSBmaWxlCiAgIGluZm9ybWF0aW9uIGxpa2UgdGltZXN0YW1wLCBhY2Nlc3MgcGVybWlzc2lvbnMgYW5kIG93bmVyLgogCisuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgQWRkZWQgc3VwcG9ydCBmb3IgOm1vZDpgbHptYWAgY29tcHJlc3Npb24uCisKIAogLi4gZnVuY3Rpb246OiBvcGVuKG5hbWU9Tm9uZSwgbW9kZT0ncicsIGZpbGVvYmo9Tm9uZSwgYnVmc2l6ZT0xMDI0MCwgXCpcKmt3YXJncykKIApAQCAtNTYsNiArNTksOCBAQAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IGBgJ3I6YnoyJ2BgICAgICAgfCBPcGVuIGZvciByZWFkaW5nIHdpdGggYnppcDIgY29tcHJlc3Npb24uICAgIHwKICAgICstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCBgYCdyOnh6J2BgICAgICAgIHwgT3BlbiBmb3IgcmVhZGluZyB3aXRoIGx6bWEgY29tcHJlc3Npb24uICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKICAgIHwgYGAnYScgb3IgJ2E6J2BgICB8IE9wZW4gZm9yIGFwcGVuZGluZyB3aXRoIG5vIGNvbXByZXNzaW9uLiBUaGUgfAogICAgfCAgICAgICAgICAgICAgICAgIHwgZmlsZSBpcyBjcmVhdGVkIGlmIGl0IGRvZXMgbm90IGV4aXN0LiAgICAgICB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKQEAgLTY1LDExICs3MCwxMyBAQAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IGBgJ3c6YnoyJ2BgICAgICAgfCBPcGVuIGZvciBiemlwMiBjb21wcmVzc2VkIHdyaXRpbmcuICAgICAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCBgYCd3Onh6J2BgICAgICAgIHwgT3BlbiBmb3IgbHptYSBjb21wcmVzc2VkIHdyaXRpbmcuICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKIAotICAgTm90ZSB0aGF0IGBgJ2E6Z3onYGAgb3IgYGAnYTpiejInYGAgaXMgbm90IHBvc3NpYmxlLiBJZiAqbW9kZSogaXMgbm90IHN1aXRhYmxlCi0gICB0byBvcGVuIGEgY2VydGFpbiAoY29tcHJlc3NlZCkgZmlsZSBmb3IgcmVhZGluZywgOmV4YzpgUmVhZEVycm9yYCBpcyByYWlzZWQuIFVzZQotICAgKm1vZGUqIGBgJ3InYGAgdG8gYXZvaWQgdGhpcy4gIElmIGEgY29tcHJlc3Npb24gbWV0aG9kIGlzIG5vdCBzdXBwb3J0ZWQsCi0gICA6ZXhjOmBDb21wcmVzc2lvbkVycm9yYCBpcyByYWlzZWQuCisgICBOb3RlIHRoYXQgYGAnYTpneidgYCwgYGAnYTpiejInYGAgb3IgYGAnYTp4eidgYCBpcyBub3QgcG9zc2libGUuIElmICptb2RlKgorICAgaXMgbm90IHN1aXRhYmxlIHRvIG9wZW4gYSBjZXJ0YWluIChjb21wcmVzc2VkKSBmaWxlIGZvciByZWFkaW5nLAorICAgOmV4YzpgUmVhZEVycm9yYCBpcyByYWlzZWQuIFVzZSAqbW9kZSogYGAncidgYCB0byBhdm9pZCB0aGlzLiAgSWYgYQorICAgY29tcHJlc3Npb24gbWV0aG9kIGlzIG5vdCBzdXBwb3J0ZWQsIDpleGM6YENvbXByZXNzaW9uRXJyb3JgIGlzIHJhaXNlZC4KIAogICAgSWYgKmZpbGVvYmoqIGlzIHNwZWNpZmllZCwgaXQgaXMgdXNlZCBhcyBhbiBhbHRlcm5hdGl2ZSB0byBhIDp0ZXJtOmBmaWxlIG9iamVjdGAKICAgIG9wZW5lZCBpbiBiaW5hcnkgbW9kZSBmb3IgKm5hbWUqLiBJdCBpcyBzdXBwb3NlZCB0byBiZSBhdCBwb3NpdGlvbiAwLgpAQCAtMTAwLDYgKzEwNyw5IEBACiAgICB8IGBgJ3J8YnoyJ2BgIHwgT3BlbiBhIGJ6aXAyIGNvbXByZXNzZWQgKnN0cmVhbSogZm9yICAgICAgIHwKICAgIHwgICAgICAgICAgICAgfCByZWFkaW5nLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAogICAgKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IGBgJ3J8eHonYGAgIHwgT3BlbiBhIGx6bWEgY29tcHJlc3NlZCAqc3RyZWFtKiBmb3IgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgfCByZWFkaW5nLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IGBgJ3d8J2BgICAgIHwgT3BlbiBhbiB1bmNvbXByZXNzZWQgKnN0cmVhbSogZm9yIHdyaXRpbmcuIHwKICAgICstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCBgYCd3fGd6J2BgICB8IE9wZW4gYSBnemlwIGNvbXByZXNzZWQgKnN0cmVhbSogZm9yICAgICAgICB8CkBAIC0xMDgsNiArMTE4LDkgQEAKICAgIHwgYGAnd3xiejInYGAgfCBPcGVuIGEgYnppcDIgY29tcHJlc3NlZCAqc3RyZWFtKiBmb3IgICAgICAgfAogICAgfCAgICAgICAgICAgICB8IHdyaXRpbmcuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiAgICArLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgYGAnd3x4eidgYCAgfCBPcGVuIGFuIGx6bWEgY29tcHJlc3NlZCAqc3RyZWFtKiBmb3IgICAgICAgfAorICAgfCAgICAgICAgICAgICB8IHdyaXRpbmcuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKIAogCiAuLiBjbGFzczo6IFRhckZpbGUKQEAgLTI2Myw5ICsyNzYsOSBAQAogCiAgICBJZiAqZXJyb3JsZXZlbCogaXMgYGAwYGAsIGFsbCBlcnJvcnMgYXJlIGlnbm9yZWQgd2hlbiB1c2luZyA6bWV0aDpgVGFyRmlsZS5leHRyYWN0YC4KICAgIE5ldmVydGhlbGVzcywgdGhleSBhcHBlYXIgYXMgZXJyb3IgbWVzc2FnZXMgaW4gdGhlIGRlYnVnIG91dHB1dCwgd2hlbiBkZWJ1Z2dpbmcKLSAgIGlzIGVuYWJsZWQuICBJZiBgYDFgYCwgYWxsICpmYXRhbCogZXJyb3JzIGFyZSByYWlzZWQgYXMgOmV4YzpgT1NFcnJvcmAgb3IKLSAgIDpleGM6YElPRXJyb3JgIGV4Y2VwdGlvbnMuIElmIGBgMmBgLCBhbGwgKm5vbi1mYXRhbCogZXJyb3JzIGFyZSByYWlzZWQgYXMKLSAgIDpleGM6YFRhckVycm9yYCBleGNlcHRpb25zIGFzIHdlbGwuCisgICBpcyBlbmFibGVkLiAgSWYgYGAxYGAsIGFsbCAqZmF0YWwqIGVycm9ycyBhcmUgcmFpc2VkIGFzIDpleGM6YE9TRXJyb3JgCisgICBleGNlcHRpb25zLiBJZiBgYDJgYCwgYWxsICpub24tZmF0YWwqIGVycm9ycyBhcmUgcmFpc2VkIGFzIDpleGM6YFRhckVycm9yYAorICAgZXhjZXB0aW9ucyBhcyB3ZWxsLgogCiAgICBUaGUgKmVuY29kaW5nKiBhbmQgKmVycm9ycyogYXJndW1lbnRzIGRlZmluZSB0aGUgY2hhcmFjdGVyIGVuY29kaW5nIHRvIGJlCiAgICB1c2VkIGZvciByZWFkaW5nIG9yIHdyaXRpbmcgdGhlIGFyY2hpdmUgYW5kIGhvdyBjb252ZXJzaW9uIGVycm9ycyBhcmUgZ29pbmcKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3RlbG5ldGxpYi5yc3QgYi9Eb2MvbGlicmFyeS90ZWxuZXRsaWIucnN0CmluZGV4IDY0NjYzNGQuLjliYzc5YzUgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3RlbG5ldGxpYi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvdGVsbmV0bGliLnJzdApAQCAtMTYyLDkgKzE2MiwxMyBAQAogLi4gbWV0aG9kOjogVGVsbmV0LndyaXRlKGJ1ZmZlcikKIAogICAgV3JpdGUgYSBieXRlIHN0cmluZyB0byB0aGUgc29ja2V0LCBkb3VibGluZyBhbnkgSUFDIGNoYXJhY3RlcnMuIFRoaXMgY2FuCi0gICBibG9jayBpZiB0aGUgY29ubmVjdGlvbiBpcyBibG9ja2VkLiAgTWF5IHJhaXNlIDpleGM6YHNvY2tldC5lcnJvcmAgaWYgdGhlCisgICBibG9jayBpZiB0aGUgY29ubmVjdGlvbiBpcyBibG9ja2VkLiAgTWF5IHJhaXNlIDpleGM6YE9TRXJyb3JgIGlmIHRoZQogICAgY29ubmVjdGlvbiBpcyBjbG9zZWQuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIG1ldGhvZCB1c2VkIHRvIHJhaXNlIDpleGM6YHNvY2tldC5lcnJvcmAsIHdoaWNoIGlzIG5vdyBhbiBhbGlhcworICAgICAgb2YgOmV4YzpgT1NFcnJvcmAuCisKIAogLi4gbWV0aG9kOjogVGVsbmV0LmludGVyYWN0KCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdGVtcGZpbGUucnN0IGIvRG9jL2xpYnJhcnkvdGVtcGZpbGUucnN0CmluZGV4IGZmZjZjNGUuLmRmZWIyNTAgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3RlbXBmaWxlLnJzdAorKysgYi9Eb2MvbGlicmFyeS90ZW1wZmlsZS5yc3QKQEAgLTI1LDcgKzI1LDcgQEAKIAogQWxzbywgYWxsIHRoZSB1c2VyLWNhbGxhYmxlIGZ1bmN0aW9ucyBub3cgdGFrZSBhZGRpdGlvbmFsIGFyZ3VtZW50cyB3aGljaAogYWxsb3cgZGlyZWN0IGNvbnRyb2wgb3ZlciB0aGUgbG9jYXRpb24gYW5kIG5hbWUgb2YgdGVtcG9yYXJ5IGZpbGVzLiAgSXQgaXMKLW5vIGxvbmdlciBuZWNlc3NhcnkgdG8gdXNlIHRoZSBnbG9iYWwgKnRlbXBkaXIqIGFuZCAqdGVtcGxhdGUqIHZhcmlhYmxlcy4KK25vIGxvbmdlciBuZWNlc3NhcnkgdG8gdXNlIHRoZSBnbG9iYWwgKnRlbXBkaXIqIHZhcmlhYmxlLgogVG8gbWFpbnRhaW4gYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgdGhlIGFyZ3VtZW50IG9yZGVyIGlzIHNvbWV3aGF0IG9kZDsgaXQKIGlzIHJlY29tbWVuZGVkIHRvIHVzZSBrZXl3b3JkIGFyZ3VtZW50cyBmb3IgY2xhcml0eS4KIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdGVzdC5yc3QgYi9Eb2MvbGlicmFyeS90ZXN0LnJzdAppbmRleCBjMjdlZTA4Li41ZTRhMWNiIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS90ZXN0LnJzdAorKysgYi9Eb2MvbGlicmFyeS90ZXN0LnJzdApAQCAtMjIzLDE0ICsyMjMsMTQgQEAKIAogLi4gZGF0YTo6IHZlcmJvc2UKIAotICAgOmNvbnN0OmBUcnVlYCB3aGVuIHZlcmJvc2Ugb3V0cHV0IGlzIGVuYWJsZWQuIFNob3VsZCBiZSBjaGVja2VkIHdoZW4gbW9yZQorICAgYGBUcnVlYGAgd2hlbiB2ZXJib3NlIG91dHB1dCBpcyBlbmFibGVkLiBTaG91bGQgYmUgY2hlY2tlZCB3aGVuIG1vcmUKICAgIGRldGFpbGVkIGluZm9ybWF0aW9uIGlzIGRlc2lyZWQgYWJvdXQgYSBydW5uaW5nIHRlc3QuICp2ZXJib3NlKiBpcyBzZXQgYnkKICAgIDptb2Q6YHRlc3QucmVncnRlc3RgLgogCiAKIC4uIGRhdGE6OiBpc19qeXRob24KIAotICAgOmNvbnN0OmBUcnVlYCBpZiB0aGUgcnVubmluZyBpbnRlcnByZXRlciBpcyBKeXRob24uCisgICBgYFRydWVgYCBpZiB0aGUgcnVubmluZyBpbnRlcnByZXRlciBpcyBKeXRob24uCiAKIAogLi4gZGF0YTo6IFRFU1RGTgpAQCAtMjQ5LDcgKzI0OSw3IEBACiAKIC4uIGZ1bmN0aW9uOjogaXNfcmVzb3VyY2VfZW5hYmxlZChyZXNvdXJjZSkKIAotICAgUmV0dXJuIDpjb25zdDpgVHJ1ZWAgaWYgKnJlc291cmNlKiBpcyBlbmFibGVkIGFuZCBhdmFpbGFibGUuIFRoZSBsaXN0IG9mCisgICBSZXR1cm4gYGBUcnVlYGAgaWYgKnJlc291cmNlKiBpcyBlbmFibGVkIGFuZCBhdmFpbGFibGUuIFRoZSBsaXN0IG9mCiAgICBhdmFpbGFibGUgcmVzb3VyY2VzIGlzIG9ubHkgc2V0IHdoZW4gOm1vZDpgdGVzdC5yZWdydGVzdGAgaXMgZXhlY3V0aW5nIHRoZQogICAgdGVzdHMuCiAKQEAgLTI1OCw3ICsyNTgsNyBAQAogCiAgICBSYWlzZSA6ZXhjOmBSZXNvdXJjZURlbmllZGAgaWYgKnJlc291cmNlKiBpcyBub3QgYXZhaWxhYmxlLiAqbXNnKiBpcyB0aGUKICAgIGFyZ3VtZW50IHRvIDpleGM6YFJlc291cmNlRGVuaWVkYCBpZiBpdCBpcyByYWlzZWQuIEFsd2F5cyByZXR1cm5zCi0gICA6Y29uc3Q6YFRydWVgIGlmIGNhbGxlZCBieSBhIGZ1bmN0aW9uIHdob3NlIGBgX19uYW1lX19gYCBpcyBgYCdfX21haW5fXydgYC4KKyAgIGBgVHJ1ZWBgIGlmIGNhbGxlZCBieSBhIGZ1bmN0aW9uIHdob3NlIGBgX19uYW1lX19gYCBpcyBgYCdfX21haW5fXydgYC4KICAgIFVzZWQgd2hlbiB0ZXN0cyBhcmUgZXhlY3V0ZWQgYnkgOm1vZDpgdGVzdC5yZWdydGVzdGAuCiAKIApAQCAtMjg2LDYgKzI4NiwxNSBAQAogICAgVGhpcyB3aWxsIHJ1biBhbGwgdGVzdHMgZGVmaW5lZCBpbiB0aGUgbmFtZWQgbW9kdWxlLgogCiAKKy4uIGZ1bmN0aW9uOjogcnVuX2RvY3Rlc3QobW9kdWxlLCB2ZXJib3NpdHk9Tm9uZSkKKworICAgUnVuIDpmdW5jOmBkb2N0ZXN0LnRlc3Rtb2RgIG9uIHRoZSBnaXZlbiAqbW9kdWxlKi4gIFJldHVybgorICAgYGAoZmFpbHVyZV9jb3VudCwgdGVzdF9jb3VudClgYC4KKworICAgSWYgKnZlcmJvc2l0eSogaXMgYGBOb25lYGAsIDpmdW5jOmBkb2N0ZXN0LnRlc3Rtb2RgIGlzIHJ1biB3aXRoIHZlcmJvc2l0eQorICAgc2V0IHRvIDpkYXRhOmB2ZXJib3NlYC4gIE90aGVyd2lzZSwgaXQgaXMgcnVuIHdpdGggdmVyYm9zaXR5IHNldCB0bworICAgYGBOb25lYGAuCisKIC4uIGZ1bmN0aW9uOjogY2hlY2tfd2FybmluZ3MoXCpmaWx0ZXJzLCBxdWlldD1UcnVlKQogCiAgICBBIGNvbnZlbmllbmNlIHdyYXBwZXIgZm9yIDpmdW5jOmB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpYCB0aGF0IG1ha2VzIGl0CkBAIC0yOTYsMTIgKzMwNSwxMiBAQAogCiAgICBgYGNoZWNrX3dhcm5pbmdzYGAgYWNjZXB0cyAyLXR1cGxlcyBvZiB0aGUgZm9ybSBgYCgibWVzc2FnZSByZWdleHAiLAogICAgV2FybmluZ0NhdGVnb3J5KWBgIGFzIHBvc2l0aW9uYWwgYXJndW1lbnRzLiBJZiBvbmUgb3IgbW9yZSAqZmlsdGVycyogYXJlCi0gICBwcm92aWRlZCwgb3IgaWYgdGhlIG9wdGlvbmFsIGtleXdvcmQgYXJndW1lbnQgKnF1aWV0KiBpcyA6Y29uc3Q6YEZhbHNlYCwKKyAgIHByb3ZpZGVkLCBvciBpZiB0aGUgb3B0aW9uYWwga2V5d29yZCBhcmd1bWVudCAqcXVpZXQqIGlzIGBgRmFsc2VgYCwKICAgIGl0IGNoZWNrcyB0byBtYWtlIHN1cmUgdGhlIHdhcm5pbmdzIGFyZSBhcyBleHBlY3RlZDogIGVhY2ggc3BlY2lmaWVkIGZpbHRlcgogICAgbXVzdCBtYXRjaCBhdCBsZWFzdCBvbmUgb2YgdGhlIHdhcm5pbmdzIHJhaXNlZCBieSB0aGUgZW5jbG9zZWQgY29kZSBvciB0aGUKICAgIHRlc3QgZmFpbHMsIGFuZCBpZiBhbnkgd2FybmluZ3MgYXJlIHJhaXNlZCB0aGF0IGRvIG5vdCBtYXRjaCBhbnkgb2YgdGhlCiAgICBzcGVjaWZpZWQgZmlsdGVycyB0aGUgdGVzdCBmYWlscy4gIFRvIGRpc2FibGUgdGhlIGZpcnN0IG9mIHRoZXNlIGNoZWNrcywKLSAgIHNldCAqcXVpZXQqIHRvIDpjb25zdDpgVHJ1ZWAuCisgICBzZXQgKnF1aWV0KiB0byBgYFRydWVgYC4KIAogICAgSWYgbm8gYXJndW1lbnRzIGFyZSBzcGVjaWZpZWQsIGl0IGRlZmF1bHRzIHRvOjoKIApAQCAtMzE2LDcgKzMyNSw3IEBACiAgICByZXByZXNlbnRpbmcgdGhlIG1vc3QgcmVjZW50IHdhcm5pbmcgY2FuIGFsc28gYmUgYWNjZXNzZWQgZGlyZWN0bHkgdGhyb3VnaAogICAgdGhlIHJlY29yZGVyIG9iamVjdCAoc2VlIGV4YW1wbGUgYmVsb3cpLiAgSWYgbm8gd2FybmluZyBoYXMgYmVlbiByYWlzZWQsCiAgICB0aGVuIGFueSBvZiB0aGUgYXR0cmlidXRlcyB0aGF0IHdvdWxkIG90aGVyd2lzZSBiZSBleHBlY3RlZCBvbiBhbiBvYmplY3QKLSAgIHJlcHJlc2VudGluZyBhIHdhcm5pbmcgd2lsbCByZXR1cm4gOmNvbnN0OmBOb25lYC4KKyAgIHJlcHJlc2VudGluZyBhIHdhcm5pbmcgd2lsbCByZXR1cm4gYGBOb25lYGAuCiAKICAgIFRoZSByZWNvcmRlciBvYmplY3QgYWxzbyBoYXMgYSA6bWV0aDpgcmVzZXRgIG1ldGhvZCwgd2hpY2ggY2xlYXJzIHRoZQogICAgd2FybmluZ3MgbGlzdC4KQEAgLTM1NCw3ICszNjMsNyBAQAogCiAuLiBmdW5jdGlvbjo6IGNhcHR1cmVkX3N0ZG91dCgpCiAKLSAgIFRoaXMgaXMgYSBjb250ZXh0IG1hbmFnZXIgdGhhdCBydW5zIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50IGJvZHkgdXNpbmcKKyAgIEEgY29udGV4dCBtYW5hZ2VyIHRoYXQgcnVucyB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudCBib2R5IHVzaW5nCiAgICBhIDpjbGFzczpgU3RyaW5nSU8uU3RyaW5nSU9gIG9iamVjdCBhcyBzeXMuc3Rkb3V0LiAgVGhhdCBvYmplY3QgY2FuIGJlCiAgICByZXRyaWV2ZWQgdXNpbmcgdGhlIGBgYXNgYCBjbGF1c2Ugb2YgdGhlIDprZXl3b3JkOmB3aXRoYCBzdGF0ZW1lbnQuCiAKQEAgLTM2NSw2ICszNzQsNTcgQEAKICAgICAgIGFzc2VydCBzLmdldHZhbHVlKCkgPT0gImhlbGxvIgogCiAKKy4uIGZ1bmN0aW9uOjogdGVtcF9jd2QobmFtZT0ndGVtcGN3ZCcsIHF1aWV0PUZhbHNlLCBwYXRoPU5vbmUpCisKKyAgIEEgY29udGV4dCBtYW5hZ2VyIHRoYXQgdGVtcG9yYXJpbHkgY2hhbmdlcyB0aGUgY3VycmVudCB3b3JraW5nCisgICBkaXJlY3RvcnkgKENXRCkuCisKKyAgIEFuIGV4aXN0aW5nIHBhdGggbWF5IGJlIHByb3ZpZGVkIGFzICpwYXRoKiwgaW4gd2hpY2ggY2FzZSB0aGlzIGZ1bmN0aW9uCisgICBtYWtlcyBubyBjaGFuZ2VzIHRvIHRoZSBmaWxlIHN5c3RlbS4KKworICAgT3RoZXJ3aXNlLCB0aGUgbmV3IENXRCBpcyBjcmVhdGVkIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhbmQgaXQncyBuYW1lZAorICAgKm5hbWUqLiAgSWYgKnF1aWV0KiBpcyBgYEZhbHNlYGAgYW5kIGl0J3Mgbm90IHBvc3NpYmxlIHRvIGNyZWF0ZSBvcgorICAgY2hhbmdlIHRoZSBDV0QsIGFuIGVycm9yIGlzIHJhaXNlZC4gIElmIGl0J3MgYGBUcnVlYGAsIG9ubHkgYSB3YXJuaW5nCisgICBpcyByYWlzZWQgYW5kIHRoZSBvcmlnaW5hbCBDV0QgaXMgdXNlZC4KKworCisuLiBmdW5jdGlvbjo6IHRlbXBfdW1hc2sodW1hc2spCisKKyAgIEEgY29udGV4dCBtYW5hZ2VyIHRoYXQgdGVtcG9yYXJpbHkgc2V0cyB0aGUgcHJvY2VzcyB1bWFzay4KKworCisuLiBmdW5jdGlvbjo6IGNhbl9zeW1saW5rKCkKKworICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIHRoZSBPUyBzdXBwb3J0cyBzeW1ib2xpYyBsaW5rcywgYGBGYWxzZWBgCisgICBvdGhlcndpc2UuCisKKworLi4gZGVjb3JhdG9yOjogc2tpcF91bmxlc3Nfc3ltbGluaygpCisKKyAgIEEgZGVjb3JhdG9yIGZvciBydW5uaW5nIHRlc3RzIHRoYXQgcmVxdWlyZSBzdXBwb3J0IGZvciBzeW1ib2xpYyBsaW5rcy4KKworCisuLiBkZWNvcmF0b3I6OiBhbnRpY2lwYXRlX2ZhaWx1cmUoY29uZGl0aW9uKQorCisgICBBIGRlY29yYXRvciB0byBjb25kaXRpb25hbGx5IG1hcmsgdGVzdHMgd2l0aAorICAgOmZ1bmM6YHVuaXR0ZXN0LmV4cGVjdGVkRmFpbHVyZWAuIEFueSB1c2Ugb2YgdGhpcyBkZWNvcmF0b3Igc2hvdWxkCisgICBoYXZlIGFuIGFzc29jaWF0ZWQgY29tbWVudCBpZGVudGlmeWluZyB0aGUgcmVsZXZhbnQgdHJhY2tlciBpc3N1ZS4KKworCisuLiBkZWNvcmF0b3I6OiBydW5fd2l0aF9sb2NhbGUoY2F0c3RyLCAqbG9jYWxlcykKKworICAgQSBkZWNvcmF0b3IgZm9yIHJ1bm5pbmcgYSBmdW5jdGlvbiBpbiBhIGRpZmZlcmVudCBsb2NhbGUsIGNvcnJlY3RseQorICAgcmVzZXR0aW5nIGl0IGFmdGVyIGl0IGhhcyBmaW5pc2hlZC4gICpjYXRzdHIqIGlzIHRoZSBsb2NhbGUgY2F0ZWdvcnkgYXMKKyAgIGEgc3RyaW5nIChmb3IgZXhhbXBsZSBgYCJMQ19BTEwiYGApLiAgVGhlICpsb2NhbGVzKiBwYXNzZWQgd2lsbCBiZSB0cmllZAorICAgc2VxdWVudGlhbGx5LCBhbmQgdGhlIGZpcnN0IHZhbGlkIGxvY2FsZSB3aWxsIGJlIHVzZWQuCisKKworLi4gZnVuY3Rpb246OiBtYWtlX2JhZF9mZCgpCisKKyAgIENyZWF0ZSBhbiBpbnZhbGlkIGZpbGUgZGVzY3JpcHRvciBieSBvcGVuaW5nIGFuZCBjbG9zaW5nIGEgdGVtcG9yYXJ5IGZpbGUsCisgICBhbmQgcmV0dXJuaW5nIGl0cyBkZXNjcmlwb3IuCisKKwogLi4gZnVuY3Rpb246OiBpbXBvcnRfbW9kdWxlKG5hbWUsIGRlcHJlY2F0ZWQ9RmFsc2UpCiAKICAgIFRoaXMgZnVuY3Rpb24gaW1wb3J0cyBhbmQgcmV0dXJucyB0aGUgbmFtZWQgbW9kdWxlLiBVbmxpa2UgYSBub3JtYWwKQEAgLTM3Miw3ICs0MzIsNyBAQAogICAgY2Fubm90IGJlIGltcG9ydGVkLgogCiAgICBNb2R1bGUgYW5kIHBhY2thZ2UgZGVwcmVjYXRpb24gbWVzc2FnZXMgYXJlIHN1cHByZXNzZWQgZHVyaW5nIHRoaXMgaW1wb3J0Ci0gICBpZiAqZGVwcmVjYXRlZCogaXMgOmNvbnN0OmBUcnVlYC4KKyAgIGlmICpkZXByZWNhdGVkKiBpcyBgYFRydWVgYC4KIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4xCiAKQEAgLTM5Niw5ICs0NTYsOSBAQAogICAgYGBzeXMubW9kdWxlc2BgIHdoZW4gdGhlIGZyZXNoIGltcG9ydCBpcyBjb21wbGV0ZS4KIAogICAgTW9kdWxlIGFuZCBwYWNrYWdlIGRlcHJlY2F0aW9uIG1lc3NhZ2VzIGFyZSBzdXBwcmVzc2VkIGR1cmluZyB0aGlzIGltcG9ydAotICAgaWYgKmRlcHJlY2F0ZWQqIGlzIDpjb25zdDpgVHJ1ZWAuCisgICBpZiAqZGVwcmVjYXRlZCogaXMgYGBUcnVlYGAuCiAKLSAgIFRoaXMgZnVuY3Rpb24gd2lsbCByYWlzZSA6ZXhjOmB1bml0dGVzdC5Ta2lwVGVzdGAgaXMgdGhlIG5hbWVkIG1vZHVsZQorICAgVGhpcyBmdW5jdGlvbiB3aWxsIHJhaXNlIDpleGM6YHVuaXR0ZXN0LlNraXBUZXN0YCBpZiB0aGUgbmFtZWQgbW9kdWxlCiAgICBjYW5ub3QgYmUgaW1wb3J0ZWQuCiAKICAgIEV4YW1wbGUgdXNlOjoKQEAgLTQxMyw2ICs0NzMsNDggQEAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMQogCiAKKy4uIGZ1bmN0aW9uOjogYmluZF9wb3J0KHNvY2ssIGhvc3Q9SE9TVCkKKworICAgQmluZCB0aGUgc29ja2V0IHRvIGEgZnJlZSBwb3J0IGFuZCByZXR1cm4gdGhlIHBvcnQgbnVtYmVyLiAgUmVsaWVzIG9uCisgICBlcGhlbWVyYWwgcG9ydHMgaW4gb3JkZXIgdG8gZW5zdXJlIHdlIGFyZSB1c2luZyBhbiB1bmJvdW5kIHBvcnQuICBUaGlzIGlzCisgICBpbXBvcnRhbnQgYXMgbWFueSB0ZXN0cyBtYXkgYmUgcnVubmluZyBzaW11bHRhbmVvdXNseSwgZXNwZWNpYWxseSBpbiBhCisgICBidWlsZGJvdCBlbnZpcm9ubWVudC4gIFRoaXMgbWV0aG9kIHJhaXNlcyBhbiBleGNlcHRpb24gaWYgdGhlCisgICBgYHNvY2suZmFtaWx5YGAgaXMgOmNvbnN0OmB+c29ja2V0LkFGX0lORVRgIGFuZCBgYHNvY2sudHlwZWBgIGlzCisgICA6Y29uc3Q6YH5zb2NrZXQuU09DS19TVFJFQU1gLCBhbmQgdGhlIHNvY2tldCBoYXMKKyAgIDpjb25zdDpgfnNvY2tldC5TT19SRVVTRUFERFJgIG9yIDpjb25zdDpgfnNvY2tldC5TT19SRVVTRVBPUlRgIHNldCBvbiBpdC4KKyAgIFRlc3RzIHNob3VsZCBuZXZlciBzZXQgdGhlc2Ugc29ja2V0IG9wdGlvbnMgZm9yIFRDUC9JUCBzb2NrZXRzLgorICAgVGhlIG9ubHkgY2FzZSBmb3Igc2V0dGluZyB0aGVzZSBvcHRpb25zIGlzIHRlc3RpbmcgbXVsdGljYXN0aW5nIHZpYQorICAgbXVsdGlwbGUgVURQIHNvY2tldHMuCisKKyAgIEFkZGl0aW9uYWxseSwgaWYgdGhlIDpjb25zdDpgfnNvY2tldC5TT19FWENMVVNJVkVBRERSVVNFYCBzb2NrZXQgb3B0aW9uIGlzCisgICBhdmFpbGFibGUgKGkuZS4gb24gV2luZG93cyksIGl0IHdpbGwgYmUgc2V0IG9uIHRoZSBzb2NrZXQuICBUaGlzIHdpbGwKKyAgIHByZXZlbnQgYW55b25lIGVsc2UgZnJvbSBiaW5kaW5nIHRvIG91ciBob3N0L3BvcnQgZm9yIHRoZSBkdXJhdGlvbiBvZiB0aGUKKyAgIHRlc3QuCisKKworLi4gZnVuY3Rpb246OiBmaW5kX3VudXNlZF9wb3J0KGZhbWlseT1zb2NrZXQuQUZfSU5FVCwgc29ja3R5cGU9c29ja2V0LlNPQ0tfU1RSRUFNKQorCisgICBSZXR1cm5zIGFuIHVudXNlZCBwb3J0IHRoYXQgc2hvdWxkIGJlIHN1aXRhYmxlIGZvciBiaW5kaW5nLiAgVGhpcyBpcworICAgYWNoaWV2ZWQgYnkgY3JlYXRpbmcgYSB0ZW1wb3Jhcnkgc29ja2V0IHdpdGggdGhlIHNhbWUgZmFtaWx5IGFuZCB0eXBlIGFzCisgICB0aGUgYGBzb2NrYGAgcGFyYW1ldGVyIChkZWZhdWx0IGlzIDpjb25zdDpgfnNvY2tldC5BRl9JTkVUYCwKKyAgIDpjb25zdDpgfnNvY2tldC5TT0NLX1NUUkVBTWApLAorICAgYW5kIGJpbmRpbmcgaXQgdG8gdGhlIHNwZWNpZmllZCBob3N0IGFkZHJlc3MgKGRlZmF1bHRzIHRvIGBgMC4wLjAuMGBgKQorICAgd2l0aCB0aGUgcG9ydCBzZXQgdG8gMCwgZWxpY2l0aW5nIGFuIHVudXNlZCBlcGhlbWVyYWwgcG9ydCBmcm9tIHRoZSBPUy4KKyAgIFRoZSB0ZW1wb3Jhcnkgc29ja2V0IGlzIHRoZW4gY2xvc2VkIGFuZCBkZWxldGVkLCBhbmQgdGhlIGVwaGVtZXJhbCBwb3J0IGlzCisgICByZXR1cm5lZC4KKworICAgRWl0aGVyIHRoaXMgbWV0aG9kIG9yIDpmdW5jOmBiaW5kX3BvcnRgIHNob3VsZCBiZSB1c2VkIGZvciBhbnkgdGVzdHMKKyAgIHdoZXJlIGEgc2VydmVyIHNvY2tldCBuZWVkcyB0byBiZSBib3VuZCB0byBhIHBhcnRpY3VsYXIgcG9ydCBmb3IgdGhlCisgICBkdXJhdGlvbiBvZiB0aGUgdGVzdC4KKyAgIFdoaWNoIG9uZSB0byB1c2UgZGVwZW5kcyBvbiB3aGV0aGVyIHRoZSBjYWxsaW5nIGNvZGUgaXMgY3JlYXRpbmcgYSBweXRob24KKyAgIHNvY2tldCwgb3IgaWYgYW4gdW51c2VkIHBvcnQgbmVlZHMgdG8gYmUgcHJvdmlkZWQgaW4gYSBjb25zdHJ1Y3RvcgorICAgb3IgcGFzc2VkIHRvIGFuIGV4dGVybmFsIHByb2dyYW0gKGkuZS4gdGhlIGBgLWFjY2VwdGBgIGFyZ3VtZW50IHRvCisgICBvcGVuc3NsJ3Mgc19zZXJ2ZXIgbW9kZSkuICBBbHdheXMgcHJlZmVyIDpmdW5jOmBiaW5kX3BvcnRgIG92ZXIKKyAgIDpmdW5jOmBmaW5kX3VudXNlZF9wb3J0YCB3aGVyZSBwb3NzaWJsZS4gIFVzaW5nIGEgaGFyZCBjb2RlZCBwb3J0IGlzCisgICBkaXNjb3VyYWdlZCBzaW5jZSBpdCBjYW4gbWFrZXMgbXVsdGlwbGUgaW5zdGFuY2VzIG9mIHRoZSB0ZXN0IGltcG9zc2libGUgdG8KKyAgIHJ1biBzaW11bHRhbmVvdXNseSwgd2hpY2ggaXMgYSBwcm9ibGVtIGZvciBidWlsZGJvdHMuCisKKwogVGhlIDptb2Q6YHRlc3Quc3VwcG9ydGAgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBjbGFzc2VzOgogCiAuLiBjbGFzczo6IFRyYW5zaWVudFJlc291cmNlKGV4YywgKiprd2FyZ3MpCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS90aHJlYWRpbmcucnN0IGIvRG9jL2xpYnJhcnkvdGhyZWFkaW5nLnJzdAppbmRleCA5YjNhZmZkLi4yYjQzZWU1IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS90aHJlYWRpbmcucnN0CisrKyBiL0RvYy9saWJyYXJ5L3RocmVhZGluZy5yc3QKQEAgLTIwLDE3ICsyMCw2IEBACiAgICBtZXRob2RzIGFuZCBmdW5jdGlvbnMgaW4gdGhpcyBtb2R1bGUgaW4gdGhlIFB5dGhvbiAyLnggc2VyaWVzIGFyZSBzdGlsbAogICAgc3VwcG9ydGVkIGJ5IHRoaXMgbW9kdWxlLgogCi0uLiBpbXBsLWRldGFpbDo6Ci0KLSAgIER1ZSB0byB0aGUgOnRlcm06YEdsb2JhbCBJbnRlcnByZXRlciBMb2NrYCwgaW4gQ1B5dGhvbiBvbmx5IG9uZSB0aHJlYWQKLSAgIGNhbiBleGVjdXRlIFB5dGhvbiBjb2RlIGF0IG9uY2UgKGV2ZW4gdGhvdWdoIGNlcnRhaW4gcGVyZm9ybWFuY2Utb3JpZW50ZWQKLSAgIGxpYnJhcmllcyBtaWdodCBvdmVyY29tZSB0aGlzIGxpbWl0YXRpb24pLgotICAgSWYgeW91IHdhbnQgeW91ciBhcHBsaWNhdGlvbiB0byBtYWtlIGJldHRlciBvZiB1c2Ugb2YgdGhlIGNvbXB1dGF0aW9uYWwKLSAgIHJlc291cmNlcyBvZiBtdWx0aS1jb3JlIG1hY2hpbmVzLCB5b3UgYXJlIGFkdmlzZWQgdG8gdXNlCi0gICA6bW9kOmBtdWx0aXByb2Nlc3NpbmdgIG9yIDpjbGFzczpgY29uY3VycmVudC5mdXR1cmVzLlByb2Nlc3NQb29sRXhlY3V0b3JgLgotICAgSG93ZXZlciwgdGhyZWFkaW5nIGlzIHN0aWxsIGFuIGFwcHJvcHJpYXRlIG1vZGVsIGlmIHlvdSB3YW50IHRvIHJ1bgotICAgbXVsdGlwbGUgSS9PLWJvdW5kIHRhc2tzIHNpbXVsdGFuZW91c2x5LgotCiAKIFRoaXMgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgYW5kIG9iamVjdHM6CiAKQEAgLTU5LDYgKzQ4LDE3IEBACiAgICByZXR1cm5lZC4KIAogCisuLiBmdW5jdGlvbjo6IGdldF9pZGVudCgpCisKKyAgIFJldHVybiB0aGUgJ3RocmVhZCBpZGVudGlmaWVyJyBvZiB0aGUgY3VycmVudCB0aHJlYWQuICBUaGlzIGlzIGEgbm9uemVybworICAgaW50ZWdlci4gIEl0cyB2YWx1ZSBoYXMgbm8gZGlyZWN0IG1lYW5pbmc7IGl0IGlzIGludGVuZGVkIGFzIGEgbWFnaWMgY29va2llCisgICB0byBiZSB1c2VkIGUuZy4gdG8gaW5kZXggYSBkaWN0aW9uYXJ5IG9mIHRocmVhZC1zcGVjaWZpYyBkYXRhLiAgVGhyZWFkCisgICBpZGVudGlmaWVycyBtYXkgYmUgcmVjeWNsZWQgd2hlbiBhIHRocmVhZCBleGl0cyBhbmQgYW5vdGhlciB0aHJlYWQgaXMKKyAgIGNyZWF0ZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogZW51bWVyYXRlKCkKIAogICAgUmV0dXJuIGEgbGlzdCBvZiBhbGwgOmNsYXNzOmBUaHJlYWRgIG9iamVjdHMgY3VycmVudGx5IGFsaXZlLiAgVGhlIGxpc3QKQEAgLTI0MSw3ICsyNDEsNyBAQAogQSB0aHJlYWQgY2FuIGJlIGZsYWdnZWQgYXMgYSAiZGFlbW9uIHRocmVhZCIuICBUaGUgc2lnbmlmaWNhbmNlIG9mIHRoaXMgZmxhZyBpcwogdGhhdCB0aGUgZW50aXJlIFB5dGhvbiBwcm9ncmFtIGV4aXRzIHdoZW4gb25seSBkYWVtb24gdGhyZWFkcyBhcmUgbGVmdC4gIFRoZQogaW5pdGlhbCB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgY3JlYXRpbmcgdGhyZWFkLiAgVGhlIGZsYWcgY2FuIGJlIHNldAotdGhyb3VnaCB0aGUgOmF0dHI6YGRhZW1vbmAgcHJvcGVydHkuCit0aHJvdWdoIHRoZSA6YXR0cjpgZGFlbW9uYCBwcm9wZXJ0eSBvciB0aGUgKmRhZW1vbiogY29uc3RydWN0b3IgYXJndW1lbnQuCiAKIFRoZXJlIGlzIGEgIm1haW4gdGhyZWFkIiBvYmplY3Q7IHRoaXMgY29ycmVzcG9uZHMgdG8gdGhlIGluaXRpYWwgdGhyZWFkIG9mCiBjb250cm9sIGluIHRoZSBQeXRob24gcHJvZ3JhbS4gIEl0IGlzIG5vdCBhIGRhZW1vbiB0aHJlYWQuCkBAIC0yNTQsNyArMjU0LDggQEAKIGltcG9zc2libGUgdG8gZGV0ZWN0IHRoZSB0ZXJtaW5hdGlvbiBvZiBhbGllbiB0aHJlYWRzLgogCiAKLS4uIGNsYXNzOjogVGhyZWFkKGdyb3VwPU5vbmUsIHRhcmdldD1Ob25lLCBuYW1lPU5vbmUsIGFyZ3M9KCksIGt3YXJncz17fSkKKy4uIGNsYXNzOjogVGhyZWFkKGdyb3VwPU5vbmUsIHRhcmdldD1Ob25lLCBuYW1lPU5vbmUsIGFyZ3M9KCksIGt3YXJncz17fSwKKyAgICAgICAgICAgICAgICAgIHZlcmJvc2U9Tm9uZSwgKiwgZGFlbW9uPU5vbmUpCiAKICAgIFRoaXMgY29uc3RydWN0b3Igc2hvdWxkIGFsd2F5cyBiZSBjYWxsZWQgd2l0aCBrZXl3b3JkIGFyZ3VtZW50cy4gIEFyZ3VtZW50cwogICAgYXJlOgpAQCAtMjczLDEwICsyNzQsMTkgQEAKICAgICprd2FyZ3MqIGlzIGEgZGljdGlvbmFyeSBvZiBrZXl3b3JkIGFyZ3VtZW50cyBmb3IgdGhlIHRhcmdldCBpbnZvY2F0aW9uLgogICAgRGVmYXVsdHMgdG8gYGB7fWBgLgogCisgICAqdmVyYm9zZSogaXMgYSBmbGFnIHVzZWQgZm9yIGRlYnVnZ2luZyBtZXNzYWdlcy4KKworICAgSWYgbm90IGBgTm9uZWBgLCAqZGFlbW9uKiBleHBsaWNpdGx5IHNldHMgd2hldGhlciB0aGUgdGhyZWFkIGlzIGRhZW1vbmljLgorICAgSWYgYGBOb25lYGAgKHRoZSBkZWZhdWx0KSwgdGhlIGRhZW1vbmljIHByb3BlcnR5IGlzIGluaGVyaXRlZCBmcm9tIHRoZQorICAgY3VycmVudCB0aHJlYWQuCisKICAgIElmIHRoZSBzdWJjbGFzcyBvdmVycmlkZXMgdGhlIGNvbnN0cnVjdG9yLCBpdCBtdXN0IG1ha2Ugc3VyZSB0byBpbnZva2UgdGhlCiAgICBiYXNlIGNsYXNzIGNvbnN0cnVjdG9yIChgYFRocmVhZC5fX2luaXRfXygpYGApIGJlZm9yZSBkb2luZyBhbnl0aGluZyBlbHNlIHRvCiAgICB0aGUgdGhyZWFkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgdGhlICpkYWVtb24qIGFyZ3VtZW50LgorCiAgICAuLiBtZXRob2Q6OiBzdGFydCgpCiAKICAgICAgIFN0YXJ0IHRoZSB0aHJlYWQncyBhY3Rpdml0eS4KQEAgLTMzMywxMCArMzQzLDEwIEBACiAgICAuLiBhdHRyaWJ1dGU6OiBpZGVudAogCiAgICAgICBUaGUgJ3RocmVhZCBpZGVudGlmaWVyJyBvZiB0aGlzIHRocmVhZCBvciBgYE5vbmVgYCBpZiB0aGUgdGhyZWFkIGhhcyBub3QKLSAgICAgIGJlZW4gc3RhcnRlZC4gIFRoaXMgaXMgYSBub256ZXJvIGludGVnZXIuICBTZWUgdGhlCi0gICAgICA6ZnVuYzpgdGhyZWFkLmdldF9pZGVudCgpYCBmdW5jdGlvbi4gIFRocmVhZCBpZGVudGlmaWVycyBtYXkgYmUgcmVjeWNsZWQKLSAgICAgIHdoZW4gYSB0aHJlYWQgZXhpdHMgYW5kIGFub3RoZXIgdGhyZWFkIGlzIGNyZWF0ZWQuICBUaGUgaWRlbnRpZmllciBpcwotICAgICAgYXZhaWxhYmxlIGV2ZW4gYWZ0ZXIgdGhlIHRocmVhZCBoYXMgZXhpdGVkLgorICAgICAgYmVlbiBzdGFydGVkLiAgVGhpcyBpcyBhIG5vbnplcm8gaW50ZWdlci4gIFNlZSB0aGUgOmZ1bmM6YGdldF9pZGVudCgpYAorICAgICAgZnVuY3Rpb24uICBUaHJlYWQgaWRlbnRpZmllcnMgbWF5IGJlIHJlY3ljbGVkIHdoZW4gYSB0aHJlYWQgZXhpdHMgYW5kCisgICAgICBhbm90aGVyIHRocmVhZCBpcyBjcmVhdGVkLiAgVGhlIGlkZW50aWZpZXIgaXMgYXZhaWxhYmxlIGV2ZW4gYWZ0ZXIgdGhlCisgICAgICB0aHJlYWQgaGFzIGV4aXRlZC4KIAogICAgLi4gbWV0aG9kOjogaXNfYWxpdmUoKQogCkBAIC0zNjQsNiArMzc0LDE4IEBACiAgICAgICBwcm9wZXJ0eSBpbnN0ZWFkLgogCiAKKy4uIGltcGwtZGV0YWlsOjoKKworICAgRHVlIHRvIHRoZSA6dGVybTpgR2xvYmFsIEludGVycHJldGVyIExvY2tgLCBpbiBDUHl0aG9uIG9ubHkgb25lIHRocmVhZAorICAgY2FuIGV4ZWN1dGUgUHl0aG9uIGNvZGUgYXQgb25jZSAoZXZlbiB0aG91Z2ggY2VydGFpbiBwZXJmb3JtYW5jZS1vcmllbnRlZAorICAgbGlicmFyaWVzIG1pZ2h0IG92ZXJjb21lIHRoaXMgbGltaXRhdGlvbikuCisgICBJZiB5b3Ugd2FudCB5b3VyIGFwcGxpY2F0aW9uIHRvIG1ha2UgYmV0dGVyIG9mIHVzZSBvZiB0aGUgY29tcHV0YXRpb25hbAorICAgcmVzb3VyY2VzIG9mIG11bHRpLWNvcmUgbWFjaGluZXMsIHlvdSBhcmUgYWR2aXNlZCB0byB1c2UKKyAgIDptb2Q6YG11bHRpcHJvY2Vzc2luZ2Agb3IgOmNsYXNzOmBjb25jdXJyZW50LmZ1dHVyZXMuUHJvY2Vzc1Bvb2xFeGVjdXRvcmAuCisgICBIb3dldmVyLCB0aHJlYWRpbmcgaXMgc3RpbGwgYW4gYXBwcm9wcmlhdGUgbW9kZWwgaWYgeW91IHdhbnQgdG8gcnVuCisgICBtdWx0aXBsZSBJL08tYm91bmQgdGFza3Mgc2ltdWx0YW5lb3VzbHkuCisKKwogLi4gX2xvY2stb2JqZWN0czoKIAogTG9jayBPYmplY3RzCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS90aW1lLnJzdCBiL0RvYy9saWJyYXJ5L3RpbWUucnN0CmluZGV4IDdjNDY0YWMuLjgxN2Y1YTUgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3RpbWUucnN0CisrKyBiL0RvYy9saWJyYXJ5L3RpbWUucnN0CkBAIC00MSwyNSArNDEsNiBAQAogICBwYXJzZWQsIHRoZXkgYXJlIGNvbnZlcnRlZCBhY2NvcmRpbmcgdG8gdGhlIFBPU0lYIGFuZCBJU08gQyBzdGFuZGFyZHM6IHZhbHVlcwogICA2OS0tOTkgYXJlIG1hcHBlZCB0byAxOTY5LS0xOTk5LCBhbmQgdmFsdWVzIDAtLTY4IGFyZSBtYXBwZWQgdG8gMjAwMC0tMjA2OC4KIAotICBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgeWVhcnMgd2l0aCBsZXNzIHRoYW4gNCBkaWdpdHMgYXJlIHRyZWF0ZWQKLSAgc3BlY2lhbGx5IGJ5IDpmdW5jOmBhc2N0aW1lYCwgOmZ1bmM6YG1rdGltZWAsIGFuZCA6ZnVuYzpgc3RyZnRpbWVgIGZ1bmN0aW9ucwotICB0aGF0IG9wZXJhdGUgb24gYSA5LXR1cGxlIG9yIDpjbGFzczpgc3RydWN0X3RpbWVgIHZhbHVlcy4gSWYgeWVhciAodGhlIGZpcnN0Ci0gIHZhbHVlIGluIHRoZSA5LXR1cGxlKSBpcyBzcGVjaWZpZWQgd2l0aCBsZXNzIHRoYW4gNCBkaWdpdHMsIGl0cyBpbnRlcnByZXRhdGlvbgotICBkZXBlbmRzIG9uIHRoZSB2YWx1ZSBvZiBgYGFjY2VwdDJkeWVhcmBgIHZhcmlhYmxlLgotCi0gIElmIGBgYWNjZXB0MmR5ZWFyYGAgaXMgdHJ1ZSAoZGVmYXVsdCksIGEgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBiZWhhdmlvciBpcwotICBpbnZva2VkIGFzIGZvbGxvd3M6Ci0KLSAgICAtIGZvciAyLWRpZ2l0IHllYXIsIGNlbnR1cnkgaXMgZ3Vlc3NlZCBhY2NvcmRpbmcgdG8gUE9TSVggcnVsZXMgZm9yCi0gICAgICBgYCV5YGAgc3RycHRpbWUgZm9ybWF0LiAgQSBkZXByZWNhdGlvbiB3YXJuaW5nIGlzIGlzc3VlZCB3aGVuIGNlbnR1cnkKLSAgICAgIGluZm9ybWF0aW9uIGlzIGd1ZXNzZWQgaW4gdGhpcyB3YXkuCi0KLSAgICAtIGZvciAzLWRpZ2l0IG9yIG5lZ2F0aXZlIHllYXIsIGEgOmV4YzpgVmFsdWVFcnJvcmAgZXhjZXB0aW9uIGlzIHJhaXNlZC4KLQotICBJZiBgYGFjY2VwdDJkeWVhcmBgIGlzIGZhbHNlIChzZXQgYnkgdGhlIHByb2dyYW0gb3IgYXMgYSByZXN1bHQgb2YgYQotICBub24tZW1wdHkgdmFsdWUgYXNzaWduZWQgdG8gYGBQWVRIT05ZMktgYCBlbnZpcm9ubWVudCB2YXJpYWJsZSkgYWxsIHllYXIKLSAgdmFsdWVzIGFyZSBpbnRlcnByZXRlZCBhcyBnaXZlbi4KLQogLi4gaW5kZXg6OgogICAgc2luZ2xlOiBVVEMKICAgIHNpbmdsZTogQ29vcmRpbmF0ZWQgVW5pdmVyc2FsIFRpbWUKQEAgLTExNywyNCArOTgsNiBAQAogCiBUaGUgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgYW5kIGRhdGEgaXRlbXM6CiAKLQotLi4gZGF0YTo6IGFjY2VwdDJkeWVhcgotCi0gICBCb29sZWFuIHZhbHVlIGluZGljYXRpbmcgd2hldGhlciB0d28tZGlnaXQgeWVhciB2YWx1ZXMgd2lsbCBiZQotICAgbWFwcGVkIHRvIDE5NjktLTIwNjggcmFuZ2UgYnkgOmZ1bmM6YGFzY3RpbWVgLCA6ZnVuYzpgbWt0aW1lYCwgYW5kCi0gICA6ZnVuYzpgc3RyZnRpbWVgIGZ1bmN0aW9ucy4gIFRoaXMgaXMgdHJ1ZSBieSBkZWZhdWx0LCBidXQgd2lsbCBiZQotICAgc2V0IHRvIGZhbHNlIGlmIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSA6ZW52dmFyOmBQWVRIT05ZMktgIGhhcwotICAgYmVlbiBzZXQgdG8gYSBub24tZW1wdHkgc3RyaW5nLiAgSXQgbWF5IGFsc28gYmUgbW9kaWZpZWQgYXQgcnVuCi0gICB0aW1lLgotCi0gICAuLiBkZXByZWNhdGVkOjogMy4yCi0gICAgICBNYXBwaW5nIG9mIDItZGlnaXQgeWVhciB2YWx1ZXMgYnkgOmZ1bmM6YGFzY3RpbWVgLAotICAgICAgOmZ1bmM6YG1rdGltZWAsIGFuZCA6ZnVuYzpgc3RyZnRpbWVgIGZ1bmN0aW9ucyB0byAxOTY5LS0yMDY4Ci0gICAgICByYW5nZSBpcyBkZXByZWNhdGVkLiAgUHJvZ3JhbXMgdGhhdCBuZWVkIHRvIHByb2Nlc3MgMi1kaWdpdAotICAgICAgeWVhcnMgc2hvdWxkIHVzZSBgYCV5YGAgY29kZSBhdmFpbGFibGUgaW4gOmZ1bmM6YHN0cnB0aW1lYAotICAgICAgZnVuY3Rpb24gb3IgY29udmVydCAyLWRpZ2l0IHllYXIgdmFsdWVzIHRvIDQtZGlnaXQgdGhlbXNlbHZlcy4KLQotCiAuLiBkYXRhOjogYWx0em9uZQogCiAgICBUaGUgb2Zmc2V0IG9mIHRoZSBsb2NhbCBEU1QgdGltZXpvbmUsIGluIHNlY29uZHMgd2VzdCBvZiBVVEMsIGlmIG9uZSBpcyBkZWZpbmVkLgpAQCAtMTUyLDcgKzExNSw4IEBACiAKICAgIC4uIG5vdGU6OgogCi0gICAgICBVbmxpa2UgdGhlIEMgZnVuY3Rpb24gb2YgdGhlIHNhbWUgbmFtZSwgdGhlcmUgaXMgbm8gdHJhaWxpbmcgbmV3bGluZS4KKyAgICAgIFVubGlrZSB0aGUgQyBmdW5jdGlvbiBvZiB0aGUgc2FtZSBuYW1lLCA6ZnVuYzpgYXNjdGltZWAgZG9lcyBub3QgYWRkIGEKKyAgICAgIHRyYWlsaW5nIG5ld2xpbmUuCiAKIAogLi4gZnVuY3Rpb246OiBjbG9jaygpCkBAIC0xNzMsNiArMTM3LDUzIEBACiAgICBtaWNyb3NlY29uZC4KIAogCisuLiBmdW5jdGlvbjo6IGNsb2NrX2dldHJlcyhjbGtfaWQpCisKKyAgIFJldHVybiB0aGUgcmVzb2x1dGlvbiAocHJlY2lzaW9uKSBvZiB0aGUgc3BlY2lmaWVkIGNsb2NrICpjbGtfaWQqLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZnVuY3Rpb246OiBjbG9ja19nZXR0aW1lKGNsa19pZCkKKworICAgUmV0dXJuIHRoZSB0aW1lIG9mIHRoZSBzcGVjaWZpZWQgY2xvY2sgKmNsa19pZCouCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogQ0xPQ0tfUkVBTFRJTUUKKworICAgU3lzdGVtLXdpZGUgcmVhbC10aW1lIGNsb2NrLiBTZXR0aW5nIHRoaXMgY2xvY2sgcmVxdWlyZXMgYXBwcm9wcmlhdGUKKyAgIHByaXZpbGVnZXMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogQ0xPQ0tfTU9OT1RPTklDCisKKyAgIENsb2NrIHRoYXQgY2Fubm90IGJlIHNldCBhbmQgcmVwcmVzZW50cyBtb25vdG9uaWMgdGltZSBzaW5jZSBzb21lCisgICB1bnNwZWNpZmllZCBzdGFydGluZyBwb2ludC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGRhdGE6OiBDTE9DS19NT05PVE9OSUNfUkFXCisKKyAgIFNpbWlsYXIgdG8gOmRhdGE6YENMT0NLX01PTk9UT05JQ2AsIGJ1dCBwcm92aWRlcyBhY2Nlc3MgdG8gYSByYXcKKyAgIGhhcmR3YXJlLWJhc2VkIHRpbWUgdGhhdCBpcyBub3Qgc3ViamVjdCB0byBOVFAgYWRqdXN0bWVudHMuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXggMi42LjI4IG9yIGxhdGVyLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZGF0YTo6IENMT0NLX1BST0NFU1NfQ1BVVElNRV9JRAorCisgICBIaWdoLXJlc29sdXRpb24gcGVyLXByb2Nlc3MgdGltZXIgZnJvbSB0aGUgQ1BVLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZGF0YTo6IENMT0NLX1RIUkVBRF9DUFVUSU1FX0lECisKKyAgIFRocmVhZC1zcGVjaWZpYyBDUFUtdGltZSBjbG9jay4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIC4uIGZ1bmN0aW9uOjogY3RpbWUoW3NlY3NdKQogCiAgICBDb252ZXJ0IGEgdGltZSBleHByZXNzZWQgaW4gc2Vjb25kcyBzaW5jZSB0aGUgZXBvY2ggdG8gYSBzdHJpbmcgcmVwcmVzZW50aW5nCkBAIC0yMTUsNiArMjI2LDE1IEBACiAgICBUaGUgZWFybGllc3QgZGF0ZSBmb3Igd2hpY2ggaXQgY2FuIGdlbmVyYXRlIGEgdGltZSBpcyBwbGF0Zm9ybS1kZXBlbmRlbnQuCiAKIAorLi4gZnVuY3Rpb246OiBtb25vdG9uaWMoKQorCisgICBNb25vdG9uaWMgbm9uLWRlY3JlYXNpbmcgY2xvY2suIFRoZSBjbG9jayBpcyBub3QgcmVsYXRlZCB0byB0aGUgc3lzdGVtIGNsb2NrCisgICBhbmQgY2Fubm90IGdvIGJhY2t3YXJkLiAgVGhlIHJlZmVyZW5jZSBwb2ludCBvZiB0aGUgcmV0dXJuZWQKKyAgIHZhbHVlIGlzIHVuZGVmaW5lZCBzbyBvbmx5IHRoZSBkaWZmZXJlbmNlIG9mIGNvbnNlY3V0aXZlIGNhbGxzIGlzIHZhbGlkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IHNsZWVwKHNlY3MpCiAKICAgIFN1c3BlbmQgZXhlY3V0aW9uIGZvciB0aGUgZ2l2ZW4gbnVtYmVyIG9mIHNlY29uZHMuICBUaGUgYXJndW1lbnQgbWF5IGJlIGEKQEAgLTMwOCw3ICszMjgsNyBAQAogICAgfCBgYCV5YGAgICAgfCBZZWFyIHdpdGhvdXQgY2VudHVyeSBhcyBhIGRlY2ltYWwgbnVtYmVyICAgICAgIHwgICAgICAgfAogICAgfCAgICAgICAgICAgfCBbMDAsOTldLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAogICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotICAgfCBgYCVZYGAgICAgfCBZZWFyIHdpdGggY2VudHVyeSBhcyBhIGRlY2ltYWwgbnVtYmVyLiAgICAgICAgIHwgXCg0KSAgfAorICAgfCBgYCVZYGAgICAgfCBZZWFyIHdpdGggY2VudHVyeSBhcyBhIGRlY2ltYWwgbnVtYmVyLiAgICAgICAgIHwgICAgICAgfAogICAgfCAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAogICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwogICAgfCBgYCVaYGAgICAgfCBUaW1lIHpvbmUgbmFtZSAobm8gY2hhcmFjdGVycyBpZiBubyB0aW1lIHpvbmUgIHwgICAgICAgfApAQCAtMzMyLDEyICszNTIsNiBAQAogICAgICAgV2hlbiB1c2VkIHdpdGggdGhlIDpmdW5jOmBzdHJwdGltZWAgZnVuY3Rpb24sIGBgJVVgYCBhbmQgYGAlV2BgIGFyZSBvbmx5IHVzZWQgaW4KICAgICAgIGNhbGN1bGF0aW9ucyB3aGVuIHRoZSBkYXkgb2YgdGhlIHdlZWsgYW5kIHRoZSB5ZWFyIGFyZSBzcGVjaWZpZWQuCiAKLSAgICg0KQotICAgICAgUHJvZHVjZXMgZGlmZmVyZW50IHJlc3VsdHMgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZSBvZgotICAgICAgYGB0aW1lLmFjY2VwdDJkeWVhcmBgIHZhcmlhYmxlLiAgU2VlIDpyZWY6YFllYXIgMjAwMCAoWTJLKQotICAgICAgaXNzdWVzIDx0aW1lLXkya2lzc3Vlcz5gIGZvciBkZXRhaWxzLgotCi0KICAgIEhlcmUgaXMgYW4gZXhhbXBsZSwgYSBmb3JtYXQgZm9yIGRhdGVzIGNvbXBhdGlibGUgd2l0aCB0aGF0IHNwZWNpZmllZCAgaW4gdGhlCiAgICA6cmZjOmAyODIyYCBJbnRlcm5ldCBlbWFpbCBzdGFuZGFyZC4gIFsjXV8gOjoKIApAQCAtNDE4LDggKzQzMiw3IEBACiAgICArLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKIAogICAgTm90ZSB0aGF0IHVubGlrZSB0aGUgQyBzdHJ1Y3R1cmUsIHRoZSBtb250aCB2YWx1ZSBpcyBhIHJhbmdlIG9mIFsxLCAxMl0sIG5vdAotICAgWzAsIDExXS4gIEEgeWVhciB2YWx1ZSB3aWxsIGJlIGhhbmRsZWQgYXMgZGVzY3JpYmVkIHVuZGVyIDpyZWY6YFllYXIgMjAwMAotICAgKFkySykgaXNzdWVzIDx0aW1lLXkya2lzc3Vlcz5gIGFib3ZlLiAgQSBgYC0xYGAgYXJndW1lbnQgYXMgdGhlIGRheWxpZ2h0CisgICBbMCwgMTFdLiAgQSBgYC0xYGAgYXJndW1lbnQgYXMgdGhlIGRheWxpZ2h0CiAgICBzYXZpbmdzIGZsYWcsIHBhc3NlZCB0byA6ZnVuYzpgbWt0aW1lYCB3aWxsIHVzdWFsbHkgcmVzdWx0IGluIHRoZSBjb3JyZWN0CiAgICBkYXlsaWdodCBzYXZpbmdzIHN0YXRlIHRvIGJlIGZpbGxlZCBpbi4KIApAQCAtNTM0LDYgKzU0NywyMCBAQAogICAgICAgKCdFRVQnLCAnRUVTVCcpCiAKIAorLi4gZnVuY3Rpb246OiB3YWxsY2xvY2soKQorCisgICAuLiBpbmRleDo6CisgICAgICBzaW5nbGU6IFdhbGxjbG9jaworICAgICAgc2luZ2xlOiBiZW5jaG1hcmtpbmcKKworICAgUmV0dXJuIHRoZSBjdXJyZW50IHRpbWUgaW4gZnJhY3Rpb25zIG9mIGEgc2Vjb25kIHRvIHRoZSBzeXN0ZW0ncyBiZXN0IGFiaWxpdHkuCisgICBVc2UgdGhpcyB3aGVuIHRoZSBtb3N0IGFjY3VyYXRlIHJlcHJlc2VudGF0aW9uIG9mIHdhbGwtY2xvY2sgaXMgcmVxdWlyZWQsIGkuZS4KKyAgIHdoZW4gInByb2Nlc3NvciB0aW1lIiBpcyBpbmFwcHJvcHJpYXRlLiAgVGhlIHJlZmVyZW5jZSBwb2ludCBvZiB0aGUgcmV0dXJuZWQKKyAgIHZhbHVlIGlzIHVuZGVmaW5lZCBzbyBvbmx5IHRoZSBkaWZmZXJlbmNlIG9mIGNvbnNlY3V0aXZlIGNhbGxzIGlzIHZhbGlkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBzZWVhbHNvOjoKIAogICAgTW9kdWxlIDptb2Q6YGRhdGV0aW1lYApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdG9rZW5pemUucnN0IGIvRG9jL2xpYnJhcnkvdG9rZW5pemUucnN0CmluZGV4IDcwOTE5Y2EuLjM3ZDlmNDEgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3Rva2VuaXplLnJzdAorKysgYi9Eb2MvbGlicmFyeS90b2tlbml6ZS5yc3QKQEAgLTE3LDkgKzE3LDExIEBACiAKIFRvIHNpbXBsaWZ5IHRva2VuIHN0cmVhbSBoYW5kbGluZywgYWxsIDpyZWY6YG9wZXJhdG9yc2AgYW5kIDpyZWY6YGRlbGltaXRlcnNgCiB0b2tlbnMgYXJlIHJldHVybmVkIHVzaW5nIHRoZSBnZW5lcmljIDpkYXRhOmB0b2tlbi5PUGAgdG9rZW4gdHlwZS4gIFRoZSBleGFjdAotdHlwZSBjYW4gYmUgZGV0ZXJtaW5lZCBieSBjaGVja2luZyB0aGUgdG9rZW4gYGBzdHJpbmdgYCBmaWVsZCBvbiB0aGUKLTp0ZXJtOmBuYW1lZCB0dXBsZWAgcmV0dXJuZWQgZnJvbSA6ZnVuYzpgdG9rZW5pemUudG9rZW5pemVgIGZvciB0aGUgY2hhcmFjdGVyCi1zZXF1ZW5jZSB0aGF0IGlkZW50aWZpZXMgYSBzcGVjaWZpYyBvcGVyYXRvciB0b2tlbi4KK3R5cGUgY2FuIGJlIGRldGVybWluZWQgYnkgY2hlY2tpbmcgdGhlIGBgZXhhY3RfdHlwZWBgIHByb3BlcnR5IG9uIHRoZQorOnRlcm06YG5hbWVkIHR1cGxlYCByZXR1cm5lZCBmcm9tIDpmdW5jOmB0b2tlbml6ZS50b2tlbml6ZWAuCisKK1Rva2VuaXppbmcgSW5wdXQKKy0tLS0tLS0tLS0tLS0tLS0KIAogVGhlIHByaW1hcnkgZW50cnkgcG9pbnQgaXMgYSA6dGVybTpgZ2VuZXJhdG9yYDoKIApAQCAtMzksOSArNDEsMTcgQEAKICAgIHJldHVybmVkIGFzIGEgOnRlcm06YG5hbWVkIHR1cGxlYCB3aXRoIHRoZSBmaWVsZCBuYW1lczoKICAgIGBgdHlwZSBzdHJpbmcgc3RhcnQgZW5kIGxpbmVgYC4KIAorICAgVGhlIHJldHVybmVkIDp0ZXJtOmBuYW1lZCB0dXBsZWAgaGFzIGEgYWRkaXRpb25hbCBwcm9wZXJ0eSBuYW1lZAorICAgYGBleGFjdF90eXBlYGAgdGhhdCBjb250YWlucyB0aGUgZXhhY3Qgb3BlcmF0b3IgdHlwZSBmb3IKKyAgIDpkYXRhOmB0b2tlbi5PUGAgdG9rZW5zLiAgRm9yIGFsbCBvdGhlciB0b2tlbiB0eXBlcyBgYGV4YWN0X3R5cGVgYAorICAgZXF1YWxzIHRoZSBuYW1lZCB0dXBsZSBgYHR5cGVgYCBmaWVsZC4KKwogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjEKICAgICAgIEFkZGVkIHN1cHBvcnQgZm9yIG5hbWVkIHR1cGxlcy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkIHN1cHBvcnQgZm9yIGBgZXhhY3RfdHlwZWBgLgorCiAgICA6ZnVuYzpgdG9rZW5pemVgIGRldGVybWluZXMgdGhlIHNvdXJjZSBlbmNvZGluZyBvZiB0aGUgZmlsZSBieSBsb29raW5nIGZvciBhCiAgICBVVEYtOCBCT00gb3IgZW5jb2RpbmcgY29va2llLCBhY2NvcmRpbmcgdG8gOnBlcDpgMjYzYC4KIApAQCAtMTIyLDYgKzEzMiwzOCBAQAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKIAorLi4gX3Rva2VuaXplLWNsaToKKworQ29tbWFuZC1MaW5lIFVzYWdlCistLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKK1RoZSA6bW9kOmB0b2tlbml6ZWAgbW9kdWxlIGNhbiBiZSBleGVjdXRlZCBhcyBhIHNjcmlwdCBmcm9tIHRoZSBjb21tYW5kIGxpbmUuCitJdCBpcyBhcyBzaW1wbGUgYXM6CisKKy4uIGNvZGUtYmxvY2s6OiBzaAorCisgICBweXRob24gLW0gdG9rZW5pemUgWy1lXSBbZmlsZW5hbWUucHldCisKK1RoZSBmb2xsb3dpbmcgb3B0aW9ucyBhcmUgYWNjZXB0ZWQ6CisKKy4uIHByb2dyYW06OiB0b2tlbml6ZQorCisuLiBjbWRvcHRpb246OiAtaCwgLS1oZWxwCisKKyAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UgYW5kIGV4aXQKKworLi4gY21kb3B0aW9uOjogLWUsIC0tZXhhY3QKKworICAgZGlzcGxheSB0b2tlbiBuYW1lcyB1c2luZyB0aGUgZXhhY3QgdHlwZQorCitJZiA6ZmlsZTpgZmlsZW5hbWUucHlgIGlzIHNwZWNpZmllZCBpdHMgY29udGVudHMgYXJlIHRva2VuaXplZCB0byBzdGRvdXQuCitPdGhlcndpc2UsIHRva2VuaXphdGlvbiBpcyBwZXJmb3JtZWQgb24gc3RkaW4uCisKK0V4YW1wbGVzCistLS0tLS0tLS0tLS0tLS0tLS0KKwogRXhhbXBsZSBvZiBhIHNjcmlwdCByZXdyaXRlciB0aGF0IHRyYW5zZm9ybXMgZmxvYXQgbGl0ZXJhbHMgaW50byBEZWNpbWFsCiBvYmplY3RzOjoKIApAQCAtMTY0LDMgKzIwNiw2MyBAQAogICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoKHRva251bSwgdG9rdmFsKSkKICAgICAgICAgcmV0dXJuIHVudG9rZW5pemUocmVzdWx0KS5kZWNvZGUoJ3V0Zi04JykKIAorRXhhbXBsZSBvZiB0b2tlbml6aW5nIGZyb20gdGhlIGNvbW1hbmQgbGluZS4gIFRoZSBzY3JpcHQ6OgorCisgICAgZGVmIHNheV9oZWxsbygpOgorICAgICAgICBwcmludCgiSGVsbG8sIFdvcmxkISIpCisKKyAgICBzYXlfaGVsbG8oKQorCit3aWxsIGJlIHRva2VuaXplZCB0byB0aGUgZm9sbG93aW5nIG91dHB1dCB3aGVyZSB0aGUgZmlyc3QgY29sdW1uIGlzIHRoZSByYW5nZQorb2YgdGhlIGxpbmUvY29sdW1uIGNvb3JkaW5hdGVzIHdoZXJlIHRoZSB0b2tlbiBpcyBmb3VuZCwgdGhlIHNlY29uZCBjb2x1bW4gaXMKK3RoZSBuYW1lIG9mIHRoZSB0b2tlbiwgYW5kIHRoZSBmaW5hbCBjb2x1bW4gaXMgdGhlIHZhbHVlIG9mIHRoZSB0b2tlbiAoaWYgYW55KQorCisuLiBjb2RlLWJsb2NrOjogc2gKKworICAgICQgcHl0aG9uIC1tIHRva2VuaXplIGhlbGxvLnB5CisgICAgMCwwLTAsMDogICAgICAgICAgICBFTkNPRElORyAgICAgICAndXRmLTgnCisgICAgMSwwLTEsMzogICAgICAgICAgICBOQU1FICAgICAgICAgICAnZGVmJworICAgIDEsNC0xLDEzOiAgICAgICAgICAgTkFNRSAgICAgICAgICAgJ3NheV9oZWxsbycKKyAgICAxLDEzLTEsMTQ6ICAgICAgICAgIE9QICAgICAgICAgICAgICcoJworICAgIDEsMTQtMSwxNTogICAgICAgICAgT1AgICAgICAgICAgICAgJyknCisgICAgMSwxNS0xLDE2OiAgICAgICAgICBPUCAgICAgICAgICAgICAnOicKKyAgICAxLDE2LTEsMTc6ICAgICAgICAgIE5FV0xJTkUgICAgICAgICdcbicKKyAgICAyLDAtMiw0OiAgICAgICAgICAgIElOREVOVCAgICAgICAgICcgICAgJworICAgIDIsNC0yLDk6ICAgICAgICAgICAgTkFNRSAgICAgICAgICAgJ3ByaW50JworICAgIDIsOS0yLDEwOiAgICAgICAgICAgT1AgICAgICAgICAgICAgJygnCisgICAgMiwxMC0yLDI1OiAgICAgICAgICBTVFJJTkcgICAgICAgICAnIkhlbGxvLCBXb3JsZCEiJworICAgIDIsMjUtMiwyNjogICAgICAgICAgT1AgICAgICAgICAgICAgJyknCisgICAgMiwyNi0yLDI3OiAgICAgICAgICBORVdMSU5FICAgICAgICAnXG4nCisgICAgMywwLTMsMTogICAgICAgICAgICBOTCAgICAgICAgICAgICAnXG4nCisgICAgNCwwLTQsMDogICAgICAgICAgICBERURFTlQgICAgICAgICAnJworICAgIDQsMC00LDk6ICAgICAgICAgICAgTkFNRSAgICAgICAgICAgJ3NheV9oZWxsbycKKyAgICA0LDktNCwxMDogICAgICAgICAgIE9QICAgICAgICAgICAgICcoJworICAgIDQsMTAtNCwxMTogICAgICAgICAgT1AgICAgICAgICAgICAgJyknCisgICAgNCwxMS00LDEyOiAgICAgICAgICBORVdMSU5FICAgICAgICAnXG4nCisgICAgNSwwLTUsMDogICAgICAgICAgICBFTkRNQVJLRVIgICAgICAnJworCitUaGUgZXhhY3QgdG9rZW4gdHlwZSBuYW1lcyBjYW4gYmUgZGlzcGxheWVkIHVzaW5nIHRoZSBgYC1lYGAgb3B0aW9uOgorCisuLiBjb2RlLWJsb2NrOjogc2gKKworICAgICQgcHl0aG9uIC1tIHRva2VuaXplIC1lIGhlbGxvLnB5CisgICAgMCwwLTAsMDogICAgICAgICAgICBFTkNPRElORyAgICAgICAndXRmLTgnCisgICAgMSwwLTEsMzogICAgICAgICAgICBOQU1FICAgICAgICAgICAnZGVmJworICAgIDEsNC0xLDEzOiAgICAgICAgICAgTkFNRSAgICAgICAgICAgJ3NheV9oZWxsbycKKyAgICAxLDEzLTEsMTQ6ICAgICAgICAgIExQQVIgICAgICAgICAgICcoJworICAgIDEsMTQtMSwxNTogICAgICAgICAgUlBBUiAgICAgICAgICAgJyknCisgICAgMSwxNS0xLDE2OiAgICAgICAgICBDT0xPTiAgICAgICAgICAnOicKKyAgICAxLDE2LTEsMTc6ICAgICAgICAgIE5FV0xJTkUgICAgICAgICdcbicKKyAgICAyLDAtMiw0OiAgICAgICAgICAgIElOREVOVCAgICAgICAgICcgICAgJworICAgIDIsNC0yLDk6ICAgICAgICAgICAgTkFNRSAgICAgICAgICAgJ3ByaW50JworICAgIDIsOS0yLDEwOiAgICAgICAgICAgTFBBUiAgICAgICAgICAgJygnCisgICAgMiwxMC0yLDI1OiAgICAgICAgICBTVFJJTkcgICAgICAgICAnIkhlbGxvLCBXb3JsZCEiJworICAgIDIsMjUtMiwyNjogICAgICAgICAgUlBBUiAgICAgICAgICAgJyknCisgICAgMiwyNi0yLDI3OiAgICAgICAgICBORVdMSU5FICAgICAgICAnXG4nCisgICAgMywwLTMsMTogICAgICAgICAgICBOTCAgICAgICAgICAgICAnXG4nCisgICAgNCwwLTQsMDogICAgICAgICAgICBERURFTlQgICAgICAgICAnJworICAgIDQsMC00LDk6ICAgICAgICAgICAgTkFNRSAgICAgICAgICAgJ3NheV9oZWxsbycKKyAgICA0LDktNCwxMDogICAgICAgICAgIExQQVIgICAgICAgICAgICcoJworICAgIDQsMTAtNCwxMTogICAgICAgICAgUlBBUiAgICAgICAgICAgJyknCisgICAgNCwxMS00LDEyOiAgICAgICAgICBORVdMSU5FICAgICAgICAnXG4nCisgICAgNSwwLTUsMDogICAgICAgICAgICBFTkRNQVJLRVIgICAgICAnJwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdW5pY29kZWRhdGEucnN0IGIvRG9jL2xpYnJhcnkvdW5pY29kZWRhdGEucnN0CmluZGV4IDQyNDAwZGYuLmI3MzVhNjkgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3VuaWNvZGVkYXRhLnJzdAorKysgYi9Eb2MvbGlicmFyeS91bmljb2RlZGF0YS5yc3QKQEAgLTE1LDggKzE1LDggQEAKIAogVGhpcyBtb2R1bGUgcHJvdmlkZXMgYWNjZXNzIHRvIHRoZSBVbmljb2RlIENoYXJhY3RlciBEYXRhYmFzZSAoVUNEKSB3aGljaAogZGVmaW5lcyBjaGFyYWN0ZXIgcHJvcGVydGllcyBmb3IgYWxsIFVuaWNvZGUgY2hhcmFjdGVycy4gVGhlIGRhdGEgY29udGFpbmVkIGluCi10aGlzIGRhdGFiYXNlIGlzIGNvbXBpbGVkIGZyb20gdGhlIGBVQ0QgdmVyc2lvbiA2LjAuMAotPGh0dHA6Ly93d3cudW5pY29kZS5vcmcvUHVibGljLzYuMC4wL3VjZD5gXy4KK3RoaXMgZGF0YWJhc2UgaXMgY29tcGlsZWQgZnJvbSB0aGUgYFVDRCB2ZXJzaW9uIDYuMS4wCis8aHR0cDovL3d3dy51bmljb2RlLm9yZy9QdWJsaWMvNi4xLjAvdWNkPmBfLgogCiBUaGUgbW9kdWxlIHVzZXMgdGhlIHNhbWUgbmFtZXMgYW5kIHN5bWJvbHMgYXMgZGVmaW5lZCBieSBVbmljb2RlCiBTdGFuZGFyZCBBbm5leCAjNDQsIGAiVW5pY29kZSBDaGFyYWN0ZXIgRGF0YWJhc2UiCkBAIC0yOSw2ICsyOSw5IEBACiAgICBMb29rIHVwIGNoYXJhY3RlciBieSBuYW1lLiAgSWYgYSBjaGFyYWN0ZXIgd2l0aCB0aGUgZ2l2ZW4gbmFtZSBpcyBmb3VuZCwgcmV0dXJuCiAgICB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIuICBJZiBub3QgZm91bmQsIDpleGM6YEtleUVycm9yYCBpcyByYWlzZWQuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBTdXBwb3J0IGZvciBuYW1lIGFsaWFzZXMgWyNdXyBhbmQgbmFtZWQgc2VxdWVuY2VzIFsjXV8gaGFzIGJlZW4gYWRkZWQuCisKIAogLi4gZnVuY3Rpb246OiBuYW1lKGNoclssIGRlZmF1bHRdKQogCkBAIC0xNjAsMyArMTYzLDkgQEAKICAgID4+PiB1bmljb2RlZGF0YS5iaWRpcmVjdGlvbmFsKCdcdTA2NjAnKSAjICdBJ3JhYmljLCAnTid1bWJlcgogICAgJ0FOJwogCisKKy4uIHJ1YnJpYzo6IEZvb3Rub3RlcworCisuLiBbI10gaHR0cDovL3d3dy51bmljb2RlLm9yZy9QdWJsaWMvNi4xLjAvdWNkL05hbWVBbGlhc2VzLnR4dAorCisuLiBbI10gaHR0cDovL3d3dy51bmljb2RlLm9yZy9QdWJsaWMvNi4xLjAvdWNkL05hbWVkU2VxdWVuY2VzLnR4dApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdW5pdHRlc3QucnN0IGIvRG9jL2xpYnJhcnkvdW5pdHRlc3QucnN0CmluZGV4IGJkZjA3YTQuLjg5MzgzMTIgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3VuaXR0ZXN0LnJzdAorKysgYi9Eb2MvbGlicmFyeS91bml0dGVzdC5yc3QKQEAgLTc5MiwxMSArNzkyLDE0IEBACiAgICAgICBSdW4gdGhlIHRlc3QsIGNvbGxlY3RpbmcgdGhlIHJlc3VsdCBpbnRvIHRoZSB0ZXN0IHJlc3VsdCBvYmplY3QgcGFzc2VkIGFzCiAgICAgICAqcmVzdWx0Ki4gIElmICpyZXN1bHQqIGlzIG9taXR0ZWQgb3IgYGBOb25lYGAsIGEgdGVtcG9yYXJ5IHJlc3VsdAogICAgICAgb2JqZWN0IGlzIGNyZWF0ZWQgKGJ5IGNhbGxpbmcgdGhlIDptZXRoOmBkZWZhdWx0VGVzdFJlc3VsdGAgbWV0aG9kKSBhbmQKLSAgICAgIHVzZWQuIFRoZSByZXN1bHQgb2JqZWN0IGlzIG5vdCByZXR1cm5lZCB0byA6bWV0aDpgcnVuYCdzIGNhbGxlci4KKyAgICAgIHVzZWQuIFRoZSByZXN1bHQgb2JqZWN0IGlzIHJldHVybmVkIHRvIDptZXRoOmBydW5gJ3MgY2FsbGVyLgogCiAgICAgICBUaGUgc2FtZSBlZmZlY3QgbWF5IGJlIGhhZCBieSBzaW1wbHkgY2FsbGluZyB0aGUgOmNsYXNzOmBUZXN0Q2FzZWAKICAgICAgIGluc3RhbmNlLgogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgUHJldmlvdXMgdmVyc2lvbnMgb2YgYGBydW5gYCBkaWQgbm90IHJldHVybiB0aGUgcmVzdWx0LiBOZWl0aGVyIGRpZAorICAgICAgICAgY2FsbGluZyBhbiBpbnN0YW5jZS4KIAogICAgLi4gbWV0aG9kOjogc2tpcFRlc3QocmVhc29uKQogCkBAIC04NTcsMTAgKzg2MCwxMSBAQAogICAgfCA8VGVzdENhc2UuYXNzZXJ0Tm90SXNJbnN0YW5jZT5gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rCiAKLSAgIEFsbCB0aGUgYXNzZXJ0IG1ldGhvZHMgKGV4Y2VwdCA6bWV0aDpgYXNzZXJ0UmFpc2VzYCwKLSAgIDptZXRoOmBhc3NlcnRSYWlzZXNSZWdleGAsIDptZXRoOmBhc3NlcnRXYXJuc2AsIDptZXRoOmBhc3NlcnRXYXJuc1JlZ2V4YCkKLSAgIGFjY2VwdCBhICptc2cqIGFyZ3VtZW50IHRoYXQsIGlmIHNwZWNpZmllZCwgaXMgdXNlZCBhcyB0aGUgZXJyb3IgbWVzc2FnZSBvbgotICAgZmFpbHVyZSAoc2VlIGFsc28gOmRhdGE6YGxvbmdNZXNzYWdlYCkuCisgICBBbGwgdGhlIGFzc2VydCBtZXRob2RzIGFjY2VwdCBhICptc2cqIGFyZ3VtZW50IHRoYXQsIGlmIHNwZWNpZmllZCwgaXMgdXNlZAorICAgYXMgdGhlIGVycm9yIG1lc3NhZ2Ugb24gZmFpbHVyZSAoc2VlIGFsc28gOmRhdGE6YGxvbmdNZXNzYWdlYCkuCisgICBOb3RlIHRoYXQgdGhlICptc2cqIGtleXdvcmQgYXJndW1lbnQgY2FuIGJlIHBhc3NlZCB0byA6bWV0aDpgYXNzZXJ0UmFpc2VzYCwKKyAgIDptZXRoOmBhc3NlcnRSYWlzZXNSZWdleGAsIDptZXRoOmBhc3NlcnRXYXJuc2AsIDptZXRoOmBhc3NlcnRXYXJuc1JlZ2V4YAorICAgb25seSB3aGVuIHRoZXkgYXJlIHVzZWQgYXMgYSBjb250ZXh0IG1hbmFnZXIuCiAKICAgIC4uIG1ldGhvZDo6IGFzc2VydEVxdWFsKGZpcnN0LCBzZWNvbmQsIG1zZz1Ob25lKQogCkBAIC05NTUsNyArOTU5LDcgQEAKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKwogCiAgICAuLiBtZXRob2Q6OiBhc3NlcnRSYWlzZXMoZXhjZXB0aW9uLCBjYWxsYWJsZSwgKmFyZ3MsICoqa3dkcykKLSAgICAgICAgICAgICAgIGFzc2VydFJhaXNlcyhleGNlcHRpb24pCisgICAgICAgICAgICAgICBhc3NlcnRSYWlzZXMoZXhjZXB0aW9uLCBtc2c9Tm9uZSkKIAogICAgICAgVGVzdCB0aGF0IGFuIGV4Y2VwdGlvbiBpcyByYWlzZWQgd2hlbiAqY2FsbGFibGUqIGlzIGNhbGxlZCB3aXRoIGFueQogICAgICAgcG9zaXRpb25hbCBvciBrZXl3b3JkIGFyZ3VtZW50cyB0aGF0IGFyZSBhbHNvIHBhc3NlZCB0bwpAQCAtOTY0LDEyICs5NjgsMTYgQEAKICAgICAgIFRvIGNhdGNoIGFueSBvZiBhIGdyb3VwIG9mIGV4Y2VwdGlvbnMsIGEgdHVwbGUgY29udGFpbmluZyB0aGUgZXhjZXB0aW9uCiAgICAgICBjbGFzc2VzIG1heSBiZSBwYXNzZWQgYXMgKmV4Y2VwdGlvbiouCiAKLSAgICAgIElmIG9ubHkgdGhlICpleGNlcHRpb24qIGFyZ3VtZW50IGlzIGdpdmVuLCByZXR1cm5zIGEgY29udGV4dCBtYW5hZ2VyIHNvCi0gICAgICB0aGF0IHRoZSBjb2RlIHVuZGVyIHRlc3QgY2FuIGJlIHdyaXR0ZW4gaW5saW5lIHJhdGhlciB0aGFuIGFzIGEgZnVuY3Rpb246OgorICAgICAgSWYgb25seSB0aGUgKmV4Y2VwdGlvbiogYW5kIHBvc3NpYmx5IHRoZSAqbXNnKiBhcmd1bWVudHMgYXJlIGdpdmVuLAorICAgICAgcmV0dXJuIGEgY29udGV4dCBtYW5hZ2VyIHNvIHRoYXQgdGhlIGNvZGUgdW5kZXIgdGVzdCBjYW4gYmUgd3JpdHRlbgorICAgICAgaW5saW5lIHJhdGhlciB0aGFuIGFzIGEgZnVuY3Rpb246OgogCiAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFNvbWVFeGNlcHRpb24pOgogICAgICAgICAgICAgIGRvX3NvbWV0aGluZygpCiAKKyAgICAgIFdoZW4gdXNlZCBhcyBhIGNvbnRleHQgbWFuYWdlciwgOm1ldGg6YGFzc2VydFJhaXNlc2AgYWNjZXB0cyB0aGUKKyAgICAgIGFkZGl0aW9uYWwga2V5d29yZCBhcmd1bWVudCAqbXNnKi4KKwogICAgICAgVGhlIGNvbnRleHQgbWFuYWdlciB3aWxsIHN0b3JlIHRoZSBjYXVnaHQgZXhjZXB0aW9uIG9iamVjdCBpbiBpdHMKICAgICAgIDphdHRyOmBleGNlcHRpb25gIGF0dHJpYnV0ZS4gIFRoaXMgY2FuIGJlIHVzZWZ1bCBpZiB0aGUgaW50ZW50aW9uCiAgICAgICBpcyB0byBwZXJmb3JtIGFkZGl0aW9uYWwgY2hlY2tzIG9uIHRoZSBleGNlcHRpb24gcmFpc2VkOjoKQEAgLTk4Niw5ICs5OTQsMTIgQEAKICAgICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCiAgICAgICAgICBBZGRlZCB0aGUgOmF0dHI6YGV4Y2VwdGlvbmAgYXR0cmlidXRlLgogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgQWRkZWQgdGhlICptc2cqIGtleXdvcmQgYXJndW1lbnQgd2hlbiB1c2VkIGFzIGEgY29udGV4dCBtYW5hZ2VyLgorCiAKICAgIC4uIG1ldGhvZDo6IGFzc2VydFJhaXNlc1JlZ2V4KGV4Y2VwdGlvbiwgcmVnZXgsIGNhbGxhYmxlLCAqYXJncywgKiprd2RzKQotICAgICAgICAgICAgICAgYXNzZXJ0UmFpc2VzUmVnZXgoZXhjZXB0aW9uLCByZWdleCkKKyAgICAgICAgICAgICAgIGFzc2VydFJhaXNlc1JlZ2V4KGV4Y2VwdGlvbiwgcmVnZXgsIG1zZz1Ob25lKQogCiAgICAgICBMaWtlIDptZXRoOmBhc3NlcnRSYWlzZXNgIGJ1dCBhbHNvIHRlc3RzIHRoYXQgKnJlZ2V4KiBtYXRjaGVzCiAgICAgICBvbiB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSByYWlzZWQgZXhjZXB0aW9uLiAgKnJlZ2V4KiBtYXkgYmUKQEAgLTEwMDUsMTIgKzEwMTYsMTYgQEAKIAogICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4xCiAgICAgICAgICB1bmRlciB0aGUgbmFtZSBgYGFzc2VydFJhaXNlc1JlZ2V4cGBgLgorCiAgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgICAgICAgUmVuYW1lZCB0byA6bWV0aDpgYXNzZXJ0UmFpc2VzUmVnZXhgLgogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgQWRkZWQgdGhlICptc2cqIGtleXdvcmQgYXJndW1lbnQgd2hlbiB1c2VkIGFzIGEgY29udGV4dCBtYW5hZ2VyLgorCiAKICAgIC4uIG1ldGhvZDo6IGFzc2VydFdhcm5zKHdhcm5pbmcsIGNhbGxhYmxlLCAqYXJncywgKiprd2RzKQotICAgICAgICAgICAgICAgYXNzZXJ0V2FybnMod2FybmluZykKKyAgICAgICAgICAgICAgIGFzc2VydFdhcm5zKHdhcm5pbmcsIG1zZz1Ob25lKQogCiAgICAgICBUZXN0IHRoYXQgYSB3YXJuaW5nIGlzIHRyaWdnZXJlZCB3aGVuICpjYWxsYWJsZSogaXMgY2FsbGVkIHdpdGggYW55CiAgICAgICBwb3NpdGlvbmFsIG9yIGtleXdvcmQgYXJndW1lbnRzIHRoYXQgYXJlIGFsc28gcGFzc2VkIHRvCkBAIC0xMDE5LDEyICsxMDM0LDE2IEBACiAgICAgICBUbyBjYXRjaCBhbnkgb2YgYSBncm91cCBvZiB3YXJuaW5ncywgYSB0dXBsZSBjb250YWluaW5nIHRoZSB3YXJuaW5nCiAgICAgICBjbGFzc2VzIG1heSBiZSBwYXNzZWQgYXMgKndhcm5pbmdzKi4KIAotICAgICAgSWYgb25seSB0aGUgKndhcm5pbmcqIGFyZ3VtZW50IGlzIGdpdmVuLCByZXR1cm5zIGEgY29udGV4dCBtYW5hZ2VyIHNvCi0gICAgICB0aGF0IHRoZSBjb2RlIHVuZGVyIHRlc3QgY2FuIGJlIHdyaXR0ZW4gaW5saW5lIHJhdGhlciB0aGFuIGFzIGEgZnVuY3Rpb246OgorICAgICAgSWYgb25seSB0aGUgKndhcm5pbmcqIGFuZCBwb3NzaWJseSB0aGUgKm1zZyogYXJndW1lbnRzIGFyZSBnaXZlbiwKKyAgICAgIHJldHVybnMgYSBjb250ZXh0IG1hbmFnZXIgc28gdGhhdCB0aGUgY29kZSB1bmRlciB0ZXN0IGNhbiBiZSB3cml0dGVuCisgICAgICBpbmxpbmUgcmF0aGVyIHRoYW4gYXMgYSBmdW5jdGlvbjo6CiAKICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRXYXJucyhTb21lV2FybmluZyk6CiAgICAgICAgICAgICAgZG9fc29tZXRoaW5nKCkKIAorICAgICAgV2hlbiB1c2VkIGFzIGEgY29udGV4dCBtYW5hZ2VyLCA6bWV0aDpgYXNzZXJ0UmFpc2VzYCBhY2NlcHRzIHRoZQorICAgICAgYWRkaXRpb25hbCBrZXl3b3JkIGFyZ3VtZW50ICptc2cqLgorCiAgICAgICBUaGUgY29udGV4dCBtYW5hZ2VyIHdpbGwgc3RvcmUgdGhlIGNhdWdodCB3YXJuaW5nIG9iamVjdCBpbiBpdHMKICAgICAgIDphdHRyOmB3YXJuaW5nYCBhdHRyaWJ1dGUsIGFuZCB0aGUgc291cmNlIGxpbmUgd2hpY2ggdHJpZ2dlcmVkIHRoZQogICAgICAgd2FybmluZ3MgaW4gdGhlIDphdHRyOmBmaWxlbmFtZWAgYW5kIDphdHRyOmBsaW5lbm9gIGF0dHJpYnV0ZXMuCkBAIC0xMDQyLDkgKzEwNjEsMTIgQEAKIAogICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKKyAgICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAgICBBZGRlZCB0aGUgKm1zZyoga2V5d29yZCBhcmd1bWVudCB3aGVuIHVzZWQgYXMgYSBjb250ZXh0IG1hbmFnZXIuCisKIAogICAgLi4gbWV0aG9kOjogYXNzZXJ0V2FybnNSZWdleCh3YXJuaW5nLCByZWdleCwgY2FsbGFibGUsICphcmdzLCAqKmt3ZHMpCi0gICAgICAgICAgICAgICBhc3NlcnRXYXJuc1JlZ2V4KHdhcm5pbmcsIHJlZ2V4KQorICAgICAgICAgICAgICAgYXNzZXJ0V2FybnNSZWdleCh3YXJuaW5nLCByZWdleCwgbXNnPU5vbmUpCiAKICAgICAgIExpa2UgOm1ldGg6YGFzc2VydFdhcm5zYCBidXQgYWxzbyB0ZXN0cyB0aGF0ICpyZWdleCogbWF0Y2hlcyBvbiB0aGUKICAgICAgIG1lc3NhZ2Ugb2YgdGhlIHRyaWdnZXJlZCB3YXJuaW5nLiAgKnJlZ2V4KiBtYXkgYmUgYSByZWd1bGFyIGV4cHJlc3Npb24KQEAgLTEwNjIsNiArMTA4NCw4IEBACiAKICAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgQWRkZWQgdGhlICptc2cqIGtleXdvcmQgYXJndW1lbnQgd2hlbiB1c2VkIGFzIGEgY29udGV4dCBtYW5hZ2VyLgogCiAKICAgIFRoZXJlIGFyZSBhbHNvIG90aGVyIG1ldGhvZHMgdXNlZCB0byBwZXJmb3JtIG1vcmUgc3BlY2lmaWMgY2hlY2tzLCBzdWNoIGFzOgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdXJsbGliLmVycm9yLnJzdCBiL0RvYy9saWJyYXJ5L3VybGxpYi5lcnJvci5yc3QKaW5kZXggMjgyMzI5Zi4uZTIwZGIyNyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvdXJsbGliLmVycm9yLnJzdAorKysgYi9Eb2MvbGlicmFyeS91cmxsaWIuZXJyb3IucnN0CkBAIC04LDIxICs4LDIzIEBACiAKIAogVGhlIDptb2Q6YHVybGxpYi5lcnJvcmAgbW9kdWxlIGRlZmluZXMgdGhlIGV4Y2VwdGlvbiBjbGFzc2VzIGZvciBleGNlcHRpb25zCi1yYWlzZWQgYnkgOm1vZDpgdXJsbGliLnJlcXVlc3RgLiAgVGhlIGJhc2UgZXhjZXB0aW9uIGNsYXNzIGlzIDpleGM6YFVSTEVycm9yYCwKLXdoaWNoIGluaGVyaXRzIGZyb20gOmV4YzpgSU9FcnJvcmAuCityYWlzZWQgYnkgOm1vZDpgdXJsbGliLnJlcXVlc3RgLiAgVGhlIGJhc2UgZXhjZXB0aW9uIGNsYXNzIGlzIDpleGM6YFVSTEVycm9yYC4KIAogVGhlIGZvbGxvd2luZyBleGNlcHRpb25zIGFyZSByYWlzZWQgYnkgOm1vZDpgdXJsbGliLmVycm9yYCBhcyBhcHByb3ByaWF0ZToKIAogLi4gZXhjZXB0aW9uOjogVVJMRXJyb3IKIAogICAgVGhlIGhhbmRsZXJzIHJhaXNlIHRoaXMgZXhjZXB0aW9uIChvciBkZXJpdmVkIGV4Y2VwdGlvbnMpIHdoZW4gdGhleSBydW4gaW50bwotICAgYSBwcm9ibGVtLiAgSXQgaXMgYSBzdWJjbGFzcyBvZiA6ZXhjOmBJT0Vycm9yYC4KKyAgIGEgcHJvYmxlbS4gIEl0IGlzIGEgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAuCiAKICAgIC4uIGF0dHJpYnV0ZTo6IHJlYXNvbgogCiAgICAgICBUaGUgcmVhc29uIGZvciB0aGlzIGVycm9yLiAgSXQgY2FuIGJlIGEgbWVzc2FnZSBzdHJpbmcgb3IgYW5vdGhlcgotICAgICAgZXhjZXB0aW9uIGluc3RhbmNlICg6ZXhjOmBzb2NrZXQuZXJyb3JgIGZvciByZW1vdGUgVVJMcywgOmV4YzpgT1NFcnJvcmAKLSAgICAgIGZvciBsb2NhbCBVUkxzKS4KKyAgICAgIGV4Y2VwdGlvbiBpbnN0YW5jZS4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIDpleGM6YFVSTEVycm9yYCBoYXMgYmVlbiBtYWRlIGEgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAgaW5zdGVhZAorICAgICAgb2YgOmV4YzpgSU9FcnJvcmAuCiAKIAogLi4gZXhjZXB0aW9uOjogSFRUUEVycm9yCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS91cmxsaWIucmVxdWVzdC5yc3QgYi9Eb2MvbGlicmFyeS91cmxsaWIucmVxdWVzdC5yc3QKaW5kZXggY2M3NTlhNC4uMjlhODQxMyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvdXJsbGliLnJlcXVlc3QucnN0CisrKyBiL0RvYy9saWJyYXJ5L3VybGxpYi5yZXF1ZXN0LnJzdApAQCAtMTMyLDcgKzEzMiw3IEBACiAKIFRoZSBmb2xsb3dpbmcgY2xhc3NlcyBhcmUgcHJvdmlkZWQ6CiAKLS4uIGNsYXNzOjogUmVxdWVzdCh1cmwsIGRhdGE9Tm9uZSwgaGVhZGVycz17fSwgb3JpZ2luX3JlcV9ob3N0PU5vbmUsIHVudmVyaWZpYWJsZT1GYWxzZSkKKy4uIGNsYXNzOjogUmVxdWVzdCh1cmwsIGRhdGE9Tm9uZSwgaGVhZGVycz17fSwgb3JpZ2luX3JlcV9ob3N0PU5vbmUsIHVudmVyaWZpYWJsZT1GYWxzZSwgbWV0aG9kPU5vbmUpCiAKICAgIFRoaXMgY2xhc3MgaXMgYW4gYWJzdHJhY3Rpb24gb2YgYSBVUkwgcmVxdWVzdC4KIApAQCAtMTQwLDggKzE0MCw4IEBACiAKICAgICpkYXRhKiBtYXkgYmUgYSBzdHJpbmcgc3BlY2lmeWluZyBhZGRpdGlvbmFsIGRhdGEgdG8gc2VuZCB0byB0aGUKICAgIHNlcnZlciwgb3IgYGBOb25lYGAgaWYgbm8gc3VjaCBkYXRhIGlzIG5lZWRlZC4gIEN1cnJlbnRseSBIVFRQCi0gICByZXF1ZXN0cyBhcmUgdGhlIG9ubHkgb25lcyB0aGF0IHVzZSAqZGF0YSo7IHRoZSBIVFRQIHJlcXVlc3Qgd2lsbAotICAgYmUgYSBQT1NUIGluc3RlYWQgb2YgYSBHRVQgd2hlbiB0aGUgKmRhdGEqIHBhcmFtZXRlciBpcyBwcm92aWRlZC4KKyAgIHJlcXVlc3RzIGFyZSB0aGUgb25seSBvbmVzIHRoYXQgdXNlICpkYXRhKiwgaW4gb3JkZXIgdG8gY2hvb3NlIGJldHdlZW4KKyAgIGBgJ0dFVCdgYCBhbmQgYGAnUE9TVCdgYCB3aGVuICptZXRob2QqIGlzIG5vdCBzcGVjaWZpZWQuCiAgICAqZGF0YSogc2hvdWxkIGJlIGEgYnVmZmVyIGluIHRoZSBzdGFuZGFyZAogICAgOm1pbWV0eXBlOmBhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWRgIGZvcm1hdC4gIFRoZQogICAgOmZ1bmM6YHVybGxpYi5wYXJzZS51cmxlbmNvZGVgIGZ1bmN0aW9uIHRha2VzIGEgbWFwcGluZyBvciBzZXF1ZW5jZQpAQCAtMTU3LDggKzE1Nyw4IEBACiAgICA6bW9kOmB1cmxsaWJgJ3MgZGVmYXVsdCB1c2VyIGFnZW50IHN0cmluZyBpcwogICAgYGAiUHl0aG9uLXVybGxpYi8yLjYiYGAgKG9uIFB5dGhvbiAyLjYpLgogCi0gICBUaGUgZmluYWwgdHdvIGFyZ3VtZW50cyBhcmUgb25seSBvZiBpbnRlcmVzdCBmb3IgY29ycmVjdCBoYW5kbGluZwotICAgb2YgdGhpcmQtcGFydHkgSFRUUCBjb29raWVzOgorICAgVGhlIGZvbGxvd2luZyB0d28gYXJndW1lbnRzLCAqb3JpZ2luX3JlcV9ob3N0KiBhbmQgKnVudmVyaWZpYWJsZSosCisgICBhcmUgb25seSBvZiBpbnRlcmVzdCBmb3IgY29ycmVjdCBoYW5kbGluZyBvZiB0aGlyZC1wYXJ0eSBIVFRQIGNvb2tpZXM6CiAKICAgICpvcmlnaW5fcmVxX2hvc3QqIHNob3VsZCBiZSB0aGUgcmVxdWVzdC1ob3N0IG9mIHRoZSBvcmlnaW4KICAgIHRyYW5zYWN0aW9uLCBhcyBkZWZpbmVkIGJ5IDpyZmM6YDI5NjVgLiAgSXQgZGVmYXVsdHMgdG8KQEAgLTE3NSw2ICsxNzUsMTMgQEAKICAgIGRvY3VtZW50LCBhbmQgdGhlIHVzZXIgaGFkIG5vIG9wdGlvbiB0byBhcHByb3ZlIHRoZSBhdXRvbWF0aWMKICAgIGZldGNoaW5nIG9mIHRoZSBpbWFnZSwgdGhpcyBzaG91bGQgYmUgdHJ1ZS4KIAorICAgKm1ldGhvZCogc2hvdWxkIGJlIGEgc3RyaW5nIHRoYXQgaW5kaWNhdGVzIHRoZSBIVFRQIHJlcXVlc3QgbWV0aG9kIHRoYXQKKyAgIHdpbGwgYmUgdXNlZCAoZS5nLiBgYCdIRUFEJ2BgKS4gIEl0cyB2YWx1ZSBpcyBzdG9yZWQgaW4gdGhlCisgICA6YXR0cjpgflJlcXVlc3QubWV0aG9kYCBhdHRyaWJ1dGUgYW5kIGlzIHVzZWQgYnkgOm1ldGg6YGdldF9tZXRob2QoKWAuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgOmF0dHI6YFJlcXVlc3QubWV0aG9kYCBhcmd1bWVudCBpcyBhZGRlZCB0byB0aGUgUmVxdWVzdCBjbGFzcy4KKwogCiAuLiBjbGFzczo6IE9wZW5lckRpcmVjdG9yKCkKIApAQCAtMjQwLDEwICsyNDcsMTEgQEAKIAogLi4gY2xhc3M6OiBIVFRQQmFzaWNBdXRoSGFuZGxlcihwYXNzd29yZF9tZ3I9Tm9uZSkKIAotICAgSGFuZGxlIGF1dGhlbnRpY2F0aW9uIHdpdGggdGhlIHJlbW90ZSBob3N0LiAqcGFzc3dvcmRfbWdyKiwgaWYgZ2l2ZW4sIHNob3VsZCBiZQotICAgc29tZXRoaW5nIHRoYXQgaXMgY29tcGF0aWJsZSB3aXRoIDpjbGFzczpgSFRUUFBhc3N3b3JkTWdyYDsgcmVmZXIgdG8gc2VjdGlvbgotICAgOnJlZjpgaHR0cC1wYXNzd29yZC1tZ3JgIGZvciBpbmZvcm1hdGlvbiBvbiB0aGUgaW50ZXJmYWNlIHRoYXQgbXVzdCBiZQotICAgc3VwcG9ydGVkLgorICAgSGFuZGxlIGF1dGhlbnRpY2F0aW9uIHdpdGggdGhlIHJlbW90ZSBob3N0LiAqcGFzc3dvcmRfbWdyKiwgaWYgZ2l2ZW4sIHNob3VsZAorICAgYmUgc29tZXRoaW5nIHRoYXQgaXMgY29tcGF0aWJsZSB3aXRoIDpjbGFzczpgSFRUUFBhc3N3b3JkTWdyYDsgcmVmZXIgdG8KKyAgIHNlY3Rpb24gOnJlZjpgaHR0cC1wYXNzd29yZC1tZ3JgIGZvciBpbmZvcm1hdGlvbiBvbiB0aGUgaW50ZXJmYWNlIHRoYXQgbXVzdAorICAgYmUgc3VwcG9ydGVkLiBIVFRQQmFzaWNBdXRoSGFuZGxlciB3aWxsIHJhaXNlIGEgOmV4YzpgVmFsdWVFcnJvcmAgd2hlbgorICAgcHJlc2VudGVkIHdpdGggYSB3cm9uZyBBdXRoZW50aWNhdGlvbiBzY2hlbWUuCiAKIAogLi4gY2xhc3M6OiBQcm94eUJhc2ljQXV0aEhhbmRsZXIocGFzc3dvcmRfbWdyPU5vbmUpCkBAIC0yNjUsMTAgKzI3MywxOSBAQAogCiAuLiBjbGFzczo6IEhUVFBEaWdlc3RBdXRoSGFuZGxlcihwYXNzd29yZF9tZ3I9Tm9uZSkKIAotICAgSGFuZGxlIGF1dGhlbnRpY2F0aW9uIHdpdGggdGhlIHJlbW90ZSBob3N0LiAqcGFzc3dvcmRfbWdyKiwgaWYgZ2l2ZW4sIHNob3VsZCBiZQotICAgc29tZXRoaW5nIHRoYXQgaXMgY29tcGF0aWJsZSB3aXRoIDpjbGFzczpgSFRUUFBhc3N3b3JkTWdyYDsgcmVmZXIgdG8gc2VjdGlvbgotICAgOnJlZjpgaHR0cC1wYXNzd29yZC1tZ3JgIGZvciBpbmZvcm1hdGlvbiBvbiB0aGUgaW50ZXJmYWNlIHRoYXQgbXVzdCBiZQotICAgc3VwcG9ydGVkLgorICAgSGFuZGxlIGF1dGhlbnRpY2F0aW9uIHdpdGggdGhlIHJlbW90ZSBob3N0LiAqcGFzc3dvcmRfbWdyKiwgaWYgZ2l2ZW4sIHNob3VsZAorICAgYmUgc29tZXRoaW5nIHRoYXQgaXMgY29tcGF0aWJsZSB3aXRoIDpjbGFzczpgSFRUUFBhc3N3b3JkTWdyYDsgcmVmZXIgdG8KKyAgIHNlY3Rpb24gOnJlZjpgaHR0cC1wYXNzd29yZC1tZ3JgIGZvciBpbmZvcm1hdGlvbiBvbiB0aGUgaW50ZXJmYWNlIHRoYXQgbXVzdAorICAgYmUgc3VwcG9ydGVkLiBXaGVuIGJvdGggRGlnZXN0IEF1dGhlbnRpY2F0aW9uIEhhbmRsZXIgYW5kIEJhc2ljCisgICBBdXRoZW50aWNhdGlvbiBIYW5kbGVyIGFyZSBib3RoIGFkZGVkLCBEaWdlc3QgQXV0aGVudGljYXRpb24gaXMgYWx3YXlzIHRyaWVkCisgICBmaXJzdC4gSWYgdGhlIERpZ2VzdCBBdXRoZW50aWNhdGlvbiByZXR1cm5zIGEgNDB4IHJlc3BvbnNlIGFnYWluLCBpdCBpcyBzZW50CisgICB0byBCYXNpYyBBdXRoZW50aWNhdGlvbiBoYW5kbGVyIHRvIEhhbmRsZS4gIFRoaXMgSGFuZGxlciBtZXRob2Qgd2lsbCByYWlzZSBhCisgICA6ZXhjOmBWYWx1ZUVycm9yYCB3aGVuIHByZXNlbnRlZCB3aXRoIGFuIGF1dGhlbnRpY2F0aW9uIHNjaGVtZSBvdGhlciB0aGFuCisgICBEaWdlc3Qgb3IgQmFzaWMuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBSYWlzZSA6ZXhjOmBWYWx1ZUVycm9yYCBvbiB1bnN1cHBvcnRlZCBBdXRoZW50aWNhdGlvbiBTY2hlbWUuCisKIAogCiAuLiBjbGFzczo6IFByb3h5RGlnZXN0QXV0aEhhbmRsZXIocGFzc3dvcmRfbWdyPU5vbmUpCkBAIC0zNTksNiArMzc2LDE1IEBACiAgICBib29sZWFuLCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgcmVxdWVzdCBpcyB1bnZlcmlmaWFibGUgYXMgZGVmaW5lZAogICAgYnkgUkZDIDI5NjUuCiAKKy4uIGF0dHJpYnV0ZTo6IFJlcXVlc3QubWV0aG9kCisKKyAgIFRoZSBIVFRQIHJlcXVlc3QgbWV0aG9kIHRvIHVzZS4gIFRoaXMgdmFsdWUgaXMgdXNlZCBieQorICAgOm1ldGg6YH5SZXF1ZXN0LmdldF9tZXRob2RgIHRvIG92ZXJyaWRlIHRoZSBjb21wdXRlZCBIVFRQIHJlcXVlc3QKKyAgIG1ldGhvZCB0aGF0IHdvdWxkIG90aGVyd2lzZSBiZSByZXR1cm5lZC4gIFRoaXMgYXR0cmlidXRlIGlzIGluaXRpYWxpemVkIHdpdGgKKyAgIHRoZSB2YWx1ZSBvZiB0aGUgKm1ldGhvZCogYXJndW1lbnQgcGFzc2VkIHRvIHRoZSBjb25zdHJ1Y3Rvci4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIC4uIG1ldGhvZDo6IFJlcXVlc3QuYWRkX2RhdGEoZGF0YSkKIAogICAgU2V0IHRoZSA6Y2xhc3M6YFJlcXVlc3RgIGRhdGEgdG8gKmRhdGEqLiAgVGhpcyBpcyBpZ25vcmVkIGJ5IGFsbCBoYW5kbGVycyBleGNlcHQKQEAgLTM2OCw4ICszOTQsMTMgQEAKIAogLi4gbWV0aG9kOjogUmVxdWVzdC5nZXRfbWV0aG9kKCkKIAotICAgUmV0dXJuIGEgc3RyaW5nIGluZGljYXRpbmcgdGhlIEhUVFAgcmVxdWVzdCBtZXRob2QuICBUaGlzIGlzIG9ubHkgbWVhbmluZ2Z1bCBmb3IKLSAgIEhUVFAgcmVxdWVzdHMsIGFuZCBjdXJyZW50bHkgYWx3YXlzIHJldHVybnMgYGAnR0VUJ2BgIG9yIGBgJ1BPU1QnYGAuCisgICBSZXR1cm4gYSBzdHJpbmcgaW5kaWNhdGluZyB0aGUgSFRUUCByZXF1ZXN0IG1ldGhvZC4gIElmCisgICA6YXR0cjpgUmVxdWVzdC5tZXRob2RgIGlzIG5vdCBgYE5vbmVgYCwgcmV0dXJuIGl0cyB2YWx1ZSwgb3RoZXJ3aXNlIHJldHVybgorICAgYGAnR0VUJ2BgIGlmIDphdHRyOmBSZXF1ZXN0LmRhdGFgIGlzIGBgTm9uZWBgLCBvciBgYCdQT1NUJ2BgIGlmIGl0J3Mgbm90LgorICAgVGhpcyBpcyBvbmx5IG1lYW5pbmdmdWwgZm9yIEhUVFAgcmVxdWVzdHMuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBnZXRfbWV0aG9kIG5vdyBsb29rcyBhdCB0aGUgdmFsdWUgb2YgOmF0dHI6YFJlcXVlc3QubWV0aG9kYC4KIAogCiAuLiBtZXRob2Q6OiBSZXF1ZXN0Lmhhc19kYXRhKCkKQEAgLTExNjIsNyArMTE5Myw3IEBACiAgICAqa2V5X2ZpbGUqIGFuZCAqY2VydF9maWxlKiBhcmUgc3VwcG9ydGVkIHRvIHByb3ZpZGUgYW4gIFNTTCBrZXkgYW5kIGNlcnRpZmljYXRlOwogICAgYm90aCBhcmUgbmVlZGVkIHRvIHN1cHBvcnQgY2xpZW50IGF1dGhlbnRpY2F0aW9uLgogCi0gICA6Y2xhc3M6YFVSTG9wZW5lcmAgb2JqZWN0cyB3aWxsIHJhaXNlIGFuIDpleGM6YElPRXJyb3JgIGV4Y2VwdGlvbiBpZiB0aGUgc2VydmVyCisgICA6Y2xhc3M6YFVSTG9wZW5lcmAgb2JqZWN0cyB3aWxsIHJhaXNlIGFuIDpleGM6YE9TRXJyb3JgIGV4Y2VwdGlvbiBpZiB0aGUgc2VydmVyCiAgICByZXR1cm5zIGFuIGVycm9yIGNvZGUuCiAKICAgICAuLiBtZXRob2Q6OiBvcGVuKGZ1bGx1cmwsIGRhdGE9Tm9uZSkKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3dhcm5pbmdzLnJzdCBiL0RvYy9saWJyYXJ5L3dhcm5pbmdzLnJzdAppbmRleCA4YWYxOWEyLi44Mzg3ZjVhIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS93YXJuaW5ncy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvd2FybmluZ3MucnN0CkBAIC0zMzksOCArMzM5LDcgQEAKICAgIFdyaXRlIGEgd2FybmluZyB0byBhIGZpbGUuICBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBjYWxscwogICAgYGBmb3JtYXR3YXJuaW5nKG1lc3NhZ2UsIGNhdGVnb3J5LCBmaWxlbmFtZSwgbGluZW5vLCBsaW5lKWBgIGFuZCB3cml0ZXMgdGhlCiAgICByZXN1bHRpbmcgc3RyaW5nIHRvICpmaWxlKiwgd2hpY2ggZGVmYXVsdHMgdG8gYGBzeXMuc3RkZXJyYGAuICBZb3UgbWF5IHJlcGxhY2UKLSAgIHRoaXMgZnVuY3Rpb24gd2l0aCBhbiBhbHRlcm5hdGl2ZSBpbXBsZW1lbnRhdGlvbiBieSBhc3NpZ25pbmcgdG8KLSAgIGBgd2FybmluZ3Muc2hvd3dhcm5pbmdgYC4KKyAgIHRoaXMgZnVuY3Rpb24gd2l0aCBhbnkgY2FsbGFibGUgYnkgYXNzaWduaW5nIHRvIGBgd2FybmluZ3Muc2hvd3dhcm5pbmdgYC4KICAgICpsaW5lKiBpcyBhIGxpbmUgb2Ygc291cmNlIGNvZGUgdG8gYmUgaW5jbHVkZWQgaW4gdGhlIHdhcm5pbmcKICAgIG1lc3NhZ2U7IGlmICpsaW5lKiBpcyBub3Qgc3VwcGxpZWQsIDpmdW5jOmBzaG93d2FybmluZ2Agd2lsbAogICAgdHJ5IHRvIHJlYWQgdGhlIGxpbmUgc3BlY2lmaWVkIGJ5ICpmaWxlbmFtZSogYW5kICpsaW5lbm8qLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvd2ViYnJvd3Nlci5yc3QgYi9Eb2MvbGlicmFyeS93ZWJicm93c2VyLnJzdAppbmRleCAyM2JhNmM1Li45Y2Y4YzUwIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS93ZWJicm93c2VyLnJzdAorKysgYi9Eb2MvbGlicmFyeS93ZWJicm93c2VyLnJzdApAQCAtOTYsNDcgKzk2LDU1IEBACiBtYXkgYmUgcGFzc2VkIHRvIHRoZSA6ZnVuYzpgZ2V0YCBmdW5jdGlvbiBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgaW5zdGFudGlhdGlvbnMKIGZvciB0aGUgY29udHJvbGxlciBjbGFzc2VzLCBhbGwgZGVmaW5lZCBpbiB0aGlzIG1vZHVsZS4KIAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IFR5cGUgTmFtZSAgICAgICAgICAgICB8IENsYXNzIE5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzIHwKLSs9PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09KwotfCBgYCdtb3ppbGxhJ2BgICAgICAgICAgfCA6Y2xhc3M6YE1vemlsbGEoJ21vemlsbGEnKWAgICAgICAgICAgICAgfCAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAnZmlyZWZveCdgYCAgICAgICAgIHwgOmNsYXNzOmBNb3ppbGxhKCdtb3ppbGxhJylgICAgICAgICAgICAgIHwgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ25ldHNjYXBlJ2BgICAgICAgICB8IDpjbGFzczpgTW96aWxsYSgnbmV0c2NhcGUnKWAgICAgICAgICAgICB8ICAgICAgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdnYWxlb24nYGAgICAgICAgICAgfCA6Y2xhc3M6YEdhbGVvbignZ2FsZW9uJylgICAgICAgICAgICAgICAgfCAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAnZXBpcGhhbnknYGAgICAgICAgIHwgOmNsYXNzOmBHYWxlb24oJ2VwaXBoYW55JylgICAgICAgICAgICAgIHwgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ3NraXBzdG9uZSdgYCAgICAgICB8IDpjbGFzczpgQmFja2dyb3VuZEJyb3dzZXIoJ3NraXBzdG9uZScpYCB8ICAgICAgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdrZm1jbGllbnQnYGAgICAgICAgfCA6Y2xhc3M6YEtvbnF1ZXJvcigpYCAgICAgICAgICAgICAgICAgICAgfCBcKDEpICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAna29ucXVlcm9yJ2BgICAgICAgIHwgOmNsYXNzOmBLb25xdWVyb3IoKWAgICAgICAgICAgICAgICAgICAgIHwgXCgxKSAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ2tmbSdgYCAgICAgICAgICAgICB8IDpjbGFzczpgS29ucXVlcm9yKClgICAgICAgICAgICAgICAgICAgICB8IFwoMSkgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdtb3NhaWMnYGAgICAgICAgICAgfCA6Y2xhc3M6YEJhY2tncm91bmRCcm93c2VyKCdtb3NhaWMnKWAgICAgfCAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAnb3BlcmEnYGAgICAgICAgICAgIHwgOmNsYXNzOmBPcGVyYSgpYCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ2dyYWlsJ2BgICAgICAgICAgICB8IDpjbGFzczpgR3JhaWwoKWAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdsaW5rcydgYCAgICAgICAgICAgfCA6Y2xhc3M6YEdlbmVyaWNCcm93c2VyKCdsaW5rcycpYCAgICAgICAgfCAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAnZWxpbmtzJ2BgICAgICAgICAgIHwgOmNsYXNzOmBFbGlua3MoJ2VsaW5rcycpYCAgICAgICAgICAgICAgIHwgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ2x5bngnYGAgICAgICAgICAgICB8IDpjbGFzczpgR2VuZXJpY0Jyb3dzZXIoJ2x5bngnKWAgICAgICAgICB8ICAgICAgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCd3M20nYGAgICAgICAgICAgICAgfCA6Y2xhc3M6YEdlbmVyaWNCcm93c2VyKCd3M20nKWAgICAgICAgICAgfCAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAnd2luZG93cy1kZWZhdWx0J2BgIHwgOmNsYXNzOmBXaW5kb3dzRGVmYXVsdGAgICAgICAgICAgICAgICAgIHwgXCgyKSAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ2ludGVybmV0LWNvbmZpZydgYCB8IDpjbGFzczpgSW50ZXJuZXRDb25maWdgICAgICAgICAgICAgICAgICB8IFwoMykgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdtYWNvc3gnYGAgICAgICAgICAgfCA6Y2xhc3M6YE1hY09TWCgnZGVmYXVsdCcpYCAgICAgICAgICAgICAgfCBcKDQpICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgVHlwZSBOYW1lICAgICAgICAgICAgICB8IENsYXNzIE5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzIHwKKys9PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKK3wgYGAnbW96aWxsYSdgYCAgICAgICAgICB8IDpjbGFzczpgTW96aWxsYSgnbW96aWxsYScpYCAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnZmlyZWZveCdgYCAgICAgICAgICB8IDpjbGFzczpgTW96aWxsYSgnbW96aWxsYScpYCAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnbmV0c2NhcGUnYGAgICAgICAgICB8IDpjbGFzczpgTW96aWxsYSgnbmV0c2NhcGUnKWAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnZ2FsZW9uJ2BgICAgICAgICAgICB8IDpjbGFzczpgR2FsZW9uKCdnYWxlb24nKWAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnZXBpcGhhbnknYGAgICAgICAgICB8IDpjbGFzczpgR2FsZW9uKCdlcGlwaGFueScpYCAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnc2tpcHN0b25lJ2BgICAgICAgICB8IDpjbGFzczpgQmFja2dyb3VuZEJyb3dzZXIoJ3NraXBzdG9uZScpYCB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAna2ZtY2xpZW50J2BgICAgICAgICB8IDpjbGFzczpgS29ucXVlcm9yKClgICAgICAgICAgICAgICAgICAgICB8IFwoMSkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAna29ucXVlcm9yJ2BgICAgICAgICB8IDpjbGFzczpgS29ucXVlcm9yKClgICAgICAgICAgICAgICAgICAgICB8IFwoMSkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAna2ZtJ2BgICAgICAgICAgICAgICB8IDpjbGFzczpgS29ucXVlcm9yKClgICAgICAgICAgICAgICAgICAgICB8IFwoMSkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnbW9zYWljJ2BgICAgICAgICAgICB8IDpjbGFzczpgQmFja2dyb3VuZEJyb3dzZXIoJ21vc2FpYycpYCAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnb3BlcmEnYGAgICAgICAgICAgICB8IDpjbGFzczpgT3BlcmEoKWAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnZ3JhaWwnYGAgICAgICAgICAgICB8IDpjbGFzczpgR3JhaWwoKWAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnbGlua3MnYGAgICAgICAgICAgICB8IDpjbGFzczpgR2VuZXJpY0Jyb3dzZXIoJ2xpbmtzJylgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnZWxpbmtzJ2BgICAgICAgICAgICB8IDpjbGFzczpgRWxpbmtzKCdlbGlua3MnKWAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnbHlueCdgYCAgICAgICAgICAgICB8IDpjbGFzczpgR2VuZXJpY0Jyb3dzZXIoJ2x5bngnKWAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAndzNtJ2BgICAgICAgICAgICAgICB8IDpjbGFzczpgR2VuZXJpY0Jyb3dzZXIoJ3czbScpYCAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnd2luZG93cy1kZWZhdWx0J2BgICB8IDpjbGFzczpgV2luZG93c0RlZmF1bHRgICAgICAgICAgICAgICAgICB8IFwoMikgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnaW50ZXJuZXQtY29uZmlnJ2BgICB8IDpjbGFzczpgSW50ZXJuZXRDb25maWdgICAgICAgICAgICAgICAgICB8IFwoMykgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnbWFjb3N4J2BgICAgICAgICAgICB8IDpjbGFzczpgTWFjT1NYKCdkZWZhdWx0JylgICAgICAgICAgICAgICB8IFwoNCkgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnZ29vZ2xlLWNocm9tZSdgYCAgICB8IDpjbGFzczpgQ2hyb21lKCdnb29nbGUtY2hyb21lJylgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnY2hyb21lJ2BgICAgICAgICAgICB8IDpjbGFzczpgQ2hyb21lKCdjaHJvbWUnKWAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnY2hyb21pdW0nYGAgICAgICAgICB8IDpjbGFzczpgQ2hyb21pdW0oJ2Nocm9taXVtJylgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnY2hyb21pdW0tYnJvd3NlcidgYCB8IDpjbGFzczpgQ2hyb21pdW0oJ2Nocm9taXVtLWJyb3dzZXInKWAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKIAogTm90ZXM6CiAKQEAgLTE1NiwxMiArMTY0LDE1IEBACiAoNCkKICAgIE9ubHkgb24gTWFjIE9TIFggcGxhdGZvcm0uCiAKKy4uIHZlcnNpb25hZGRlZDo6IDMuMworICAgU3VwcG9ydCBmb3IgQ2hyb21lL0Nocm9taXVtIGhhcyBiZWVuIGFkZGVkLgorCiBIZXJlIGFyZSBzb21lIHNpbXBsZSBleGFtcGxlczo6CiAKLSAgIHVybCA9ICdodHRwOi8vd3d3LnB5dGhvbi5vcmcvJworICAgdXJsID0gJ2h0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvJwogCiAgICAjIE9wZW4gVVJMIGluIGEgbmV3IHRhYiwgaWYgYSBicm93c2VyIHdpbmRvdyBpcyBhbHJlYWR5IG9wZW4uCi0gICB3ZWJicm93c2VyLm9wZW5fbmV3X3RhYih1cmwgKyAnZG9jLycpCisgICB3ZWJicm93c2VyLm9wZW5fbmV3X3RhYih1cmwpCiAKICAgICMgT3BlbiBVUkwgaW4gbmV3IHdpbmRvdywgcmFpc2luZyB0aGUgd2luZG93IGlmIHBvc3NpYmxlLgogICAgd2ViYnJvd3Nlci5vcGVuX25ldyh1cmwpCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS93aW5yZWcucnN0IGIvRG9jL2xpYnJhcnkvd2lucmVnLnJzdAppbmRleCA1Y2YzMGVlLi4zNzY3NTJlIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS93aW5yZWcucnN0CisrKyBiL0RvYy9saWJyYXJ5L3dpbnJlZy5yc3QKQEAgLTM4LDcgKzM4LDExIEBACiAgICAqa2V5KiBpcyB0aGUgcHJlZGVmaW5lZCBoYW5kbGUgdG8gY29ubmVjdCB0by4KIAogICAgVGhlIHJldHVybiB2YWx1ZSBpcyB0aGUgaGFuZGxlIG9mIHRoZSBvcGVuZWQga2V5LiBJZiB0aGUgZnVuY3Rpb24gZmFpbHMsIGEKLSAgIDpleGM6YFdpbmRvd3NFcnJvcmAgZXhjZXB0aW9uIGlzIHJhaXNlZC4KKyAgIDpleGM6YE9TRXJyb3JgIGV4Y2VwdGlvbiBpcyByYWlzZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGZ1bmN0aW9uIHVzZWQgdG8gcmFpc2UgYSA6ZXhjOmBXaW5kb3dzRXJyb3JgLCB3aGljaCBpcyBub3cgYW4KKyAgICAgIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgogCiAKIC4uIGZ1bmN0aW9uOjogQ3JlYXRlS2V5KGtleSwgc3ViX2tleSkKQEAgLTU3LDcgKzYxLDExIEBACiAgICBJZiB0aGUga2V5IGFscmVhZHkgZXhpc3RzLCB0aGlzIGZ1bmN0aW9uIG9wZW5zIHRoZSBleGlzdGluZyBrZXkuCiAKICAgIFRoZSByZXR1cm4gdmFsdWUgaXMgdGhlIGhhbmRsZSBvZiB0aGUgb3BlbmVkIGtleS4gSWYgdGhlIGZ1bmN0aW9uIGZhaWxzLCBhCi0gICA6ZXhjOmBXaW5kb3dzRXJyb3JgIGV4Y2VwdGlvbiBpcyByYWlzZWQuCisgICA6ZXhjOmBPU0Vycm9yYCBleGNlcHRpb24gaXMgcmFpc2VkLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhpcyBmdW5jdGlvbiB1c2VkIHRvIHJhaXNlIGEgOmV4YzpgV2luZG93c0Vycm9yYCwgd2hpY2ggaXMgbm93IGFuCisgICAgICBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogCiAuLiBmdW5jdGlvbjo6IENyZWF0ZUtleUV4KGtleSwgc3ViX2tleSwgcmVzZXJ2ZWQ9MCwgYWNjZXNzPUtFWV9BTExfQUNDRVNTKQpAQCAtODIsMTAgKzkwLDE0IEBACiAgICBJZiB0aGUga2V5IGFscmVhZHkgZXhpc3RzLCB0aGlzIGZ1bmN0aW9uIG9wZW5zIHRoZSBleGlzdGluZyBrZXkuCiAKICAgIFRoZSByZXR1cm4gdmFsdWUgaXMgdGhlIGhhbmRsZSBvZiB0aGUgb3BlbmVkIGtleS4gSWYgdGhlIGZ1bmN0aW9uIGZhaWxzLCBhCi0gICA6ZXhjOmBXaW5kb3dzRXJyb3JgIGV4Y2VwdGlvbiBpcyByYWlzZWQuCisgICA6ZXhjOmBPU0Vycm9yYCBleGNlcHRpb24gaXMgcmFpc2VkLgogCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlZCB0byByYWlzZSBhIDpleGM6YFdpbmRvd3NFcnJvcmAsIHdoaWNoIGlzIG5vdyBhbgorICAgICAgYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCisKIAogLi4gZnVuY3Rpb246OiBEZWxldGVLZXkoa2V5LCBzdWJfa2V5KQogCkBAIC0xMDAsNyArMTEyLDExIEBACiAgICAqVGhpcyBtZXRob2QgY2FuIG5vdCBkZWxldGUga2V5cyB3aXRoIHN1YmtleXMuKgogCiAgICBJZiB0aGUgbWV0aG9kIHN1Y2NlZWRzLCB0aGUgZW50aXJlIGtleSwgaW5jbHVkaW5nIGFsbCBvZiBpdHMgdmFsdWVzLCBpcyByZW1vdmVkLgotICAgSWYgdGhlIG1ldGhvZCBmYWlscywgYSA6ZXhjOmBXaW5kb3dzRXJyb3JgIGV4Y2VwdGlvbiBpcyByYWlzZWQuCisgICBJZiB0aGUgbWV0aG9kIGZhaWxzLCBhIDpleGM6YE9TRXJyb3JgIGV4Y2VwdGlvbiBpcyByYWlzZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGZ1bmN0aW9uIHVzZWQgdG8gcmFpc2UgYSA6ZXhjOmBXaW5kb3dzRXJyb3JgLCB3aGljaCBpcyBub3cgYW4KKyAgICAgIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgogCiAKIC4uIGZ1bmN0aW9uOjogRGVsZXRlS2V5RXgoa2V5LCBzdWJfa2V5LCBhY2Nlc3M9S0VZX0FMTF9BQ0NFU1MsIHJlc2VydmVkPTApCkBAIC0xMjksMTIgKzE0NSwxNiBAQAogICAgKlRoaXMgbWV0aG9kIGNhbiBub3QgZGVsZXRlIGtleXMgd2l0aCBzdWJrZXlzLioKIAogICAgSWYgdGhlIG1ldGhvZCBzdWNjZWVkcywgdGhlIGVudGlyZSBrZXksIGluY2x1ZGluZyBhbGwgb2YgaXRzIHZhbHVlcywgaXMKLSAgIHJlbW92ZWQuIElmIHRoZSBtZXRob2QgZmFpbHMsIGEgOmV4YzpgV2luZG93c0Vycm9yYCBleGNlcHRpb24gaXMgcmFpc2VkLgorICAgcmVtb3ZlZC4gSWYgdGhlIG1ldGhvZCBmYWlscywgYSA6ZXhjOmBPU0Vycm9yYCBleGNlcHRpb24gaXMgcmFpc2VkLgogCiAgICBPbiB1bnN1cHBvcnRlZCBXaW5kb3dzIHZlcnNpb25zLCA6ZXhjOmBOb3RJbXBsZW1lbnRlZEVycm9yYCBpcyByYWlzZWQuCiAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhpcyBmdW5jdGlvbiB1c2VkIHRvIHJhaXNlIGEgOmV4YzpgV2luZG93c0Vycm9yYCwgd2hpY2ggaXMgbm93IGFuCisgICAgICBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KKwogCiAuLiBmdW5jdGlvbjo6IERlbGV0ZVZhbHVlKGtleSwgdmFsdWUpCiAKQEAgLTE1Niw5ICsxNzYsMTMgQEAKICAgICppbmRleCogaXMgYW4gaW50ZWdlciB0aGF0IGlkZW50aWZpZXMgdGhlIGluZGV4IG9mIHRoZSBrZXkgdG8gcmV0cmlldmUuCiAKICAgIFRoZSBmdW5jdGlvbiByZXRyaWV2ZXMgdGhlIG5hbWUgb2Ygb25lIHN1YmtleSBlYWNoIHRpbWUgaXQgaXMgY2FsbGVkLiAgSXQgaXMKLSAgIHR5cGljYWxseSBjYWxsZWQgcmVwZWF0ZWRseSB1bnRpbCBhIDpleGM6YFdpbmRvd3NFcnJvcmAgZXhjZXB0aW9uIGlzCisgICB0eXBpY2FsbHkgY2FsbGVkIHJlcGVhdGVkbHkgdW50aWwgYSA6ZXhjOmBPU0Vycm9yYCBleGNlcHRpb24gaXMKICAgIHJhaXNlZCwgaW5kaWNhdGluZywgbm8gbW9yZSB2YWx1ZXMgYXJlIGF2YWlsYWJsZS4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlZCB0byByYWlzZSBhIDpleGM6YFdpbmRvd3NFcnJvcmAsIHdoaWNoIGlzIG5vdyBhbgorICAgICAgYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCisKIAogLi4gZnVuY3Rpb246OiBFbnVtVmFsdWUoa2V5LCBpbmRleCkKIApAQCAtMTcwLDcgKzE5NCw3IEBACiAgICAqaW5kZXgqIGlzIGFuIGludGVnZXIgdGhhdCBpZGVudGlmaWVzIHRoZSBpbmRleCBvZiB0aGUgdmFsdWUgdG8gcmV0cmlldmUuCiAKICAgIFRoZSBmdW5jdGlvbiByZXRyaWV2ZXMgdGhlIG5hbWUgb2Ygb25lIHN1YmtleSBlYWNoIHRpbWUgaXQgaXMgY2FsbGVkLiBJdCBpcwotICAgdHlwaWNhbGx5IGNhbGxlZCByZXBlYXRlZGx5LCB1bnRpbCBhIDpleGM6YFdpbmRvd3NFcnJvcmAgZXhjZXB0aW9uIGlzCisgICB0eXBpY2FsbHkgY2FsbGVkIHJlcGVhdGVkbHksIHVudGlsIGEgOmV4YzpgT1NFcnJvcmAgZXhjZXB0aW9uIGlzCiAgICByYWlzZWQsIGluZGljYXRpbmcgbm8gbW9yZSB2YWx1ZXMuCiAKICAgIFRoZSByZXN1bHQgaXMgYSB0dXBsZSBvZiAzIGl0ZW1zOgpAQCAtMTg5LDYgKzIxMywxMCBAQAogICAgfCAgICAgICB8IDptZXRoOmBTZXRWYWx1ZUV4YCkgICAgICAgICAgICAgICAgICAgICAgICB8CiAgICArLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlZCB0byByYWlzZSBhIDpleGM6YFdpbmRvd3NFcnJvcmAsIHdoaWNoIGlzIG5vdyBhbgorICAgICAgYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCisKIAogLi4gZnVuY3Rpb246OiBFeHBhbmRFbnZpcm9ubWVudFN0cmluZ3Moc3RyKQogCkBAIC0yNjAsMTAgKzI4OCwxNCBAQAogCiAgICBUaGUgcmVzdWx0IGlzIGEgbmV3IGhhbmRsZSB0byB0aGUgc3BlY2lmaWVkIGtleS4KIAotICAgSWYgdGhlIGZ1bmN0aW9uIGZhaWxzLCA6ZXhjOmBXaW5kb3dzRXJyb3JgIGlzIHJhaXNlZC4KKyAgIElmIHRoZSBmdW5jdGlvbiBmYWlscywgOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkLgogCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMiBBbGxvdyB0aGUgdXNlIG9mIG5hbWVkIGFyZ3VtZW50cy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlZCB0byByYWlzZSBhIDpleGM6YFdpbmRvd3NFcnJvcmAsIHdoaWNoIGlzIG5vdyBhbgorICAgICAgYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCisKIAogLi4gZnVuY3Rpb246OiBPcGVuS2V5RXgoKQogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS94bWwuZXRyZWUuZWxlbWVudHRyZWUucnN0IGIvRG9jL2xpYnJhcnkveG1sLmV0cmVlLmVsZW1lbnR0cmVlLnJzdAppbmRleCBhNDZkOTlkLi4wN2VjMjJkIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS94bWwuZXRyZWUuZWxlbWVudHRyZWUucnN0CisrKyBiL0RvYy9saWJyYXJ5L3htbC5ldHJlZS5lbGVtZW50dHJlZS5yc3QKQEAgLTMyLDE3ICszMiwxOCBAQAogVGhlIDpjbGFzczpgRWxlbWVudFRyZWVgIGNsYXNzIGNhbiBiZSB1c2VkIHRvIHdyYXAgYW4gZWxlbWVudCBzdHJ1Y3R1cmUsIGFuZAogY29udmVydCBpdCBmcm9tIGFuZCB0byBYTUwuCiAKLUEgQyBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIEFQSSBpcyBhdmFpbGFibGUgYXMgOm1vZDpgeG1sLmV0cmVlLmNFbGVtZW50VHJlZWAuCi0KIFNlZSBodHRwOi8vZWZmYm90Lm9yZy96b25lL2VsZW1lbnQtaW5kZXguaHRtIGZvciB0dXRvcmlhbHMgYW5kIGxpbmtzIHRvIG90aGVyCi1kb2NzLiAgRnJlZHJpayBMdW5kaCdzIHBhZ2UgaXMgYWxzbyB0aGUgbG9jYXRpb24gb2YgdGhlIGRldmVsb3BtZW50IHZlcnNpb24gb2YKLXRoZSB4bWwuZXRyZWUuRWxlbWVudFRyZWUuCitkb2NzLgogCiAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgVGhlIEVsZW1lbnRUcmVlIEFQSSBpcyB1cGRhdGVkIHRvIDEuMy4gIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUKICAgIGBJbnRyb2R1Y2luZyBFbGVtZW50VHJlZSAxLjMKICAgIDxodHRwOi8vZWZmYm90Lm9yZy96b25lL2VsZW1lbnR0cmVlLTEzLWludHJvLmh0bT5gXy4KIAorLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIFRoaXMgbW9kdWxlIHdpbGwgdXNlIGEgZmFzdCBpbXBsZW1lbnRhdGlvbiB3aGVuZXZlciBhdmFpbGFibGUuCisgICBUaGUgOm1vZDpgeG1sLmV0cmVlLmNFbGVtZW50VHJlZWAgbW9kdWxlIGlzIGRlcHJlY2F0ZWQuCisKIAogLi4gX2VsZW1lbnR0cmVlLWZ1bmN0aW9uczoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkveG1scnBjLmNsaWVudC5yc3QgYi9Eb2MvbGlicmFyeS94bWxycGMuY2xpZW50LnJzdAppbmRleCBlNzI3NzBhLi4xODcxYzk5IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS94bWxycGMuY2xpZW50LnJzdAorKysgYi9Eb2MvbGlicmFyeS94bWxycGMuY2xpZW50LnJzdApAQCAtOCw3ICs4LDcgQEAKIAogCiAuLiBYWFggTm90IGV2ZXJ5dGhpbmcgaXMgZG9jdW1lbnRlZCB5ZXQuICBJdCBtaWdodCBiZSBnb29kIHRvIGRlc2NyaWJlCi0gICBNYXJzaGFsbGVyLCBVbm1hcnNoYWxsZXIsIGdldHBhcnNlciwgZHVtcHMsIGxvYWRzLCBhbmQgVHJhbnNwb3J0LgorICAgTWFyc2hhbGxlciwgVW5tYXJzaGFsbGVyLCBnZXRwYXJzZXIgYW5kIFRyYW5zcG9ydC4KIAogKipTb3VyY2UgY29kZToqKiA6c291cmNlOmBMaWIveG1scnBjL2NsaWVudC5weWAKIApAQCAtMjEsNyArMjEsMTIgQEAKIGJldHdlZW4gY29uZm9ybWFibGUgUHl0aG9uIG9iamVjdHMgYW5kIFhNTCBvbiB0aGUgd2lyZS4KIAogCi0uLiBjbGFzczo6IFNlcnZlclByb3h5KHVyaSwgdHJhbnNwb3J0PU5vbmUsIGVuY29kaW5nPU5vbmUsIHZlcmJvc2U9RmFsc2UsIGFsbG93X25vbmU9RmFsc2UsIHVzZV9kYXRldGltZT1GYWxzZSkKKy4uIGNsYXNzOjogU2VydmVyUHJveHkodXJpLCB0cmFuc3BvcnQ9Tm9uZSwgZW5jb2Rpbmc9Tm9uZSwgdmVyYm9zZT1GYWxzZSwgXAorICAgICAgICAgICAgICAgICAgICAgICBhbGxvd19ub25lPUZhbHNlLCB1c2VfZGF0ZXRpbWU9RmFsc2UsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKnVzZV9idWlsdGluX3R5cGVzKiBmbGFnIHdhcyBhZGRlZC4KIAogICAgQSA6Y2xhc3M6YFNlcnZlclByb3h5YCBpbnN0YW5jZSBpcyBhbiBvYmplY3QgdGhhdCBtYW5hZ2VzIGNvbW11bmljYXRpb24gd2l0aCBhCiAgICByZW1vdGUgWE1MLVJQQyBzZXJ2ZXIuICBUaGUgcmVxdWlyZWQgZmlyc3QgYXJndW1lbnQgaXMgYSBVUkkgKFVuaWZvcm0gUmVzb3VyY2UKQEAgLTM0LDkgKzM5LDEzIEBACiAgICBYTUw7IHRoZSBkZWZhdWx0IGJlaGF2aW91ciBpcyBmb3IgYGBOb25lYGAgdG8gcmFpc2UgYSA6ZXhjOmBUeXBlRXJyb3JgLiBUaGlzIGlzCiAgICBhIGNvbW1vbmx5LXVzZWQgZXh0ZW5zaW9uIHRvIHRoZSBYTUwtUlBDIHNwZWNpZmljYXRpb24sIGJ1dCBpc24ndCBzdXBwb3J0ZWQgYnkKICAgIGFsbCBjbGllbnRzIGFuZCBzZXJ2ZXJzOyBzZWUgaHR0cDovL29udG9zeXMuY29tL3htbC1ycGMvZXh0ZW5zaW9ucy5waHAgZm9yIGEKLSAgIGRlc2NyaXB0aW9uLiAgVGhlICp1c2VfZGF0ZXRpbWUqIGZsYWcgY2FuIGJlIHVzZWQgdG8gY2F1c2UgZGF0ZS90aW1lIHZhbHVlcyB0bwotICAgYmUgcHJlc2VudGVkIGFzIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdHM7IHRoaXMgaXMgZmFsc2UgYnkgZGVmYXVsdC4KLSAgIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdHMgbWF5IGJlIHBhc3NlZCB0byBjYWxscy4KKyAgIGRlc2NyaXB0aW9uLiAgVGhlICp1c2VfYnVpbHRpbl90eXBlcyogZmxhZyBjYW4gYmUgdXNlZCB0byBjYXVzZSBkYXRlL3RpbWUgdmFsdWVzCisgICB0byBiZSBwcmVzZW50ZWQgYXMgOmNsYXNzOmBkYXRldGltZS5kYXRldGltZWAgb2JqZWN0cyBhbmQgYmluYXJ5IGRhdGEgdG8gYmUKKyAgIHByZXNlbnRlZCBhcyA6Y2xhc3M6YGJ5dGVzYCBvYmplY3RzOyB0aGlzIGZsYWcgaXMgZmFsc2UgYnkgZGVmYXVsdC4KKyAgIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIGFuZCA6Y2xhc3M6YGJ5dGVzYCBvYmplY3RzIG1heSBiZSBwYXNzZWQgdG8gY2FsbHMuCisKKyAgIFRoZSBvYnNvbGV0ZSAqdXNlX2RhdGV0aW1lKiBmbGFnIGlzIHNpbWlsYXIgdG8gKnVzZV9idWlsdGluX3R5cGVzKiBidXQgaXQKKyAgIGFwcGxpZXMgb25seSB0byBkYXRlL3RpbWUgdmFsdWVzLgogCiAgICBCb3RoIHRoZSBIVFRQIGFuZCBIVFRQUyB0cmFuc3BvcnRzIHN1cHBvcnQgdGhlIFVSTCBzeW50YXggZXh0ZW5zaW9uIGZvciBIVFRQCiAgICBCYXNpYyBBdXRoZW50aWNhdGlvbjogYGBodHRwOi8vdXNlcjpwYXNzQGhvc3Q6cG9ydC9wYXRoYGAuICBUaGUgIGBgdXNlcjpwYXNzYGAKQEAgLTc4LDEyICs4NywxMiBAQAogICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb25seSB0aGVpciAqX19kaWN0X18qIGF0dHJpYnV0ZSBpcyAgICAgICAgICB8CiAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0cmFuc21pdHRlZC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotICAgfCA6Y29uc3Q6YGRhdGVzYCAgICAgICAgICAgICAgICAgIHwgaW4gc2Vjb25kcyBzaW5jZSB0aGUgZXBvY2ggKHBhc3MgaW4gYW4gICAgICB8Ci0gICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBpbnN0YW5jZSBvZiB0aGUgOmNsYXNzOmBEYXRlVGltZWAgY2xhc3MpIG9yIHwKKyAgIHwgOmNvbnN0OmBkYXRlc2AgICAgICAgICAgICAgICAgICB8IEluIHNlY29uZHMgc2luY2UgdGhlIGVwb2NoLiAgUGFzcyBpbiBhbiAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgaW5zdGFuY2Ugb2YgdGhlIDpjbGFzczpgRGF0ZVRpbWVgIGNsYXNzIG9yICB8CiAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIGluc3RhbmNlLiAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotICAgfCA6Y29uc3Q6YGJpbmFyeSBkYXRhYCAgICAgICAgICAgIHwgcGFzcyBpbiBhbiBpbnN0YW5jZSBvZiB0aGUgOmNsYXNzOmBCaW5hcnlgICB8Ci0gICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB3cmFwcGVyIGNsYXNzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgOmNvbnN0OmBiaW5hcnkgZGF0YWAgICAgICAgICAgICB8IFBhc3MgaW4gYW4gaW5zdGFuY2Ugb2YgdGhlIDpjbGFzczpgQmluYXJ5YCAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgd3JhcHBlciBjbGFzcyBvciBhIDpjbGFzczpgYnl0ZXNgIGluc3RhbmNlLiB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKIAogICAgVGhpcyBpcyB0aGUgZnVsbCBzZXQgb2YgZGF0YSB0eXBlcyBzdXBwb3J0ZWQgYnkgWE1MLVJQQy4gIE1ldGhvZCBjYWxscyBtYXkgYWxzbwpAQCAtOTgsOCArMTA3LDkgQEAKICAgIGVuc3VyZSB0aGF0IHRoZSBzdHJpbmcgaXMgZnJlZSBvZiBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGFsbG93ZWQgaW4gWE1MLCBzdWNoIGFzCiAgICB0aGUgY29udHJvbCBjaGFyYWN0ZXJzIHdpdGggQVNDSUkgdmFsdWVzIGJldHdlZW4gMCBhbmQgMzEgKGV4Y2VwdCwgb2YgY291cnNlLAogICAgdGFiLCBuZXdsaW5lIGFuZCBjYXJyaWFnZSByZXR1cm4pOyBmYWlsaW5nIHRvIGRvIHRoaXMgd2lsbCByZXN1bHQgaW4gYW4gWE1MLVJQQwotICAgcmVxdWVzdCB0aGF0IGlzbid0IHdlbGwtZm9ybWVkIFhNTC4gIElmIHlvdSBoYXZlIHRvIHBhc3MgYXJiaXRyYXJ5IHN0cmluZ3MgdmlhCi0gICBYTUwtUlBDLCB1c2UgdGhlIDpjbGFzczpgQmluYXJ5YCB3cmFwcGVyIGNsYXNzIGRlc2NyaWJlZCBiZWxvdy4KKyAgIHJlcXVlc3QgdGhhdCBpc24ndCB3ZWxsLWZvcm1lZCBYTUwuICBJZiB5b3UgaGF2ZSB0byBwYXNzIGFyYml0cmFyeSBieXRlcworICAgdmlhIFhNTC1SUEMsIHVzZSB0aGUgOmNsYXNzOmBieXRlc2AgY2xhc3Mgb3IgdGhlIGNsYXNzOmBCaW5hcnlgIHdyYXBwZXIgY2xhc3MKKyAgIGRlc2NyaWJlZCBiZWxvdy4KIAogICAgOmNsYXNzOmBTZXJ2ZXJgIGlzIHJldGFpbmVkIGFzIGFuIGFsaWFzIGZvciA6Y2xhc3M6YFNlcnZlclByb3h5YCBmb3IgYmFja3dhcmRzCiAgICBjb21wYXRpYmlsaXR5LiAgTmV3IGNvZGUgc2hvdWxkIHVzZSA6Y2xhc3M6YFNlcnZlclByb3h5YC4KQEAgLTI0OSw3ICsyNTksNyBAQAogQmluYXJ5IE9iamVjdHMKIC0tLS0tLS0tLS0tLS0tCiAKLVRoaXMgY2xhc3MgbWF5IGJlIGluaXRpYWxpemVkIGZyb20gc3RyaW5nIGRhdGEgKHdoaWNoIG1heSBpbmNsdWRlIE5VTHMpLiBUaGUKK1RoaXMgY2xhc3MgbWF5IGJlIGluaXRpYWxpemVkIGZyb20gYnl0ZXMgZGF0YSAod2hpY2ggbWF5IGluY2x1ZGUgTlVMcykuIFRoZQogcHJpbWFyeSBhY2Nlc3MgdG8gdGhlIGNvbnRlbnQgb2YgYSA6Y2xhc3M6YEJpbmFyeWAgb2JqZWN0IGlzIHByb3ZpZGVkIGJ5IGFuCiBhdHRyaWJ1dGU6CiAKQEAgLTI1NywxNSArMjY3LDE1IEBACiAuLiBhdHRyaWJ1dGU6OiBCaW5hcnkuZGF0YQogCiAgICBUaGUgYmluYXJ5IGRhdGEgZW5jYXBzdWxhdGVkIGJ5IHRoZSA6Y2xhc3M6YEJpbmFyeWAgaW5zdGFuY2UuICBUaGUgZGF0YSBpcwotICAgcHJvdmlkZWQgYXMgYW4gOC1iaXQgc3RyaW5nLgorICAgcHJvdmlkZWQgYXMgYSA6Y2xhc3M6YGJ5dGVzYCBvYmplY3QuCiAKIDpjbGFzczpgQmluYXJ5YCBvYmplY3RzIGhhdmUgdGhlIGZvbGxvd2luZyBtZXRob2RzLCBzdXBwb3J0ZWQgbWFpbmx5IGZvcgogaW50ZXJuYWwgdXNlIGJ5IHRoZSBtYXJzaGFsbGluZy91bm1hcnNoYWxsaW5nIGNvZGU6CiAKIAotLi4gbWV0aG9kOjogQmluYXJ5LmRlY29kZShzdHJpbmcpCisuLiBtZXRob2Q6OiBCaW5hcnkuZGVjb2RlKGJ5dGVzKQogCi0gICBBY2NlcHQgYSBiYXNlNjQgc3RyaW5nIGFuZCBkZWNvZGUgaXQgYXMgdGhlIGluc3RhbmNlJ3MgbmV3IGRhdGEuCisgICBBY2NlcHQgYSBiYXNlNjQgOmNsYXNzOmBieXRlc2Agb2JqZWN0IGFuZCBkZWNvZGUgaXQgYXMgdGhlIGluc3RhbmNlJ3MgbmV3IGRhdGEuCiAKIAogLi4gbWV0aG9kOjogQmluYXJ5LmVuY29kZShvdXQpCkBAIC00NzEsMTQgKzQ4MSwyMSBAQAogICAgaXQgdmlhIGFuIGV4dGVuc2lvbiwgIHByb3ZpZGUgYSB0cnVlIHZhbHVlIGZvciAqYWxsb3dfbm9uZSouCiAKIAotLi4gZnVuY3Rpb246OiBsb2FkcyhkYXRhLCB1c2VfZGF0ZXRpbWU9RmFsc2UpCisuLiBmdW5jdGlvbjo6IGxvYWRzKGRhdGEsIHVzZV9kYXRldGltZT1GYWxzZSwgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpCiAKICAgIENvbnZlcnQgYW4gWE1MLVJQQyByZXF1ZXN0IG9yIHJlc3BvbnNlIGludG8gUHl0aG9uIG9iamVjdHMsIGEgYGAocGFyYW1zLAogICAgbWV0aG9kbmFtZSlgYC4gICpwYXJhbXMqIGlzIGEgdHVwbGUgb2YgYXJndW1lbnQ7ICptZXRob2RuYW1lKiBpcyBhIHN0cmluZywgb3IKICAgIGBgTm9uZWBgIGlmIG5vIG1ldGhvZCBuYW1lIGlzIHByZXNlbnQgaW4gdGhlIHBhY2tldC4gSWYgdGhlIFhNTC1SUEMgcGFja2V0CiAgICByZXByZXNlbnRzIGEgZmF1bHQgY29uZGl0aW9uLCB0aGlzIGZ1bmN0aW9uIHdpbGwgcmFpc2UgYSA6ZXhjOmBGYXVsdGAgZXhjZXB0aW9uLgotICAgVGhlICp1c2VfZGF0ZXRpbWUqIGZsYWcgY2FuIGJlIHVzZWQgdG8gY2F1c2UgZGF0ZS90aW1lIHZhbHVlcyB0byBiZSBwcmVzZW50ZWQgYXMKLSAgIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdHM7IHRoaXMgaXMgZmFsc2UgYnkgZGVmYXVsdC4KKyAgIFRoZSAqdXNlX2J1aWx0aW5fdHlwZXMqIGZsYWcgY2FuIGJlIHVzZWQgdG8gY2F1c2UgZGF0ZS90aW1lIHZhbHVlcyB0byBiZQorICAgcHJlc2VudGVkIGFzIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdHMgYW5kIGJpbmFyeSBkYXRhIHRvIGJlCisgICBwcmVzZW50ZWQgYXMgOmNsYXNzOmBieXRlc2Agb2JqZWN0czsgdGhpcyBmbGFnIGlzIGZhbHNlIGJ5IGRlZmF1bHQuCisKKyAgIFRoZSBvYnNvbGV0ZSAqdXNlX2RhdGV0aW1lKiBmbGFnIGlzIHNpbWlsYXIgdG8gKnVzZV9idWlsdGluX3R5cGVzKiBidXQgaXQKKyAgIGFwcGxpZXMgb25seSB0byBkYXRlL3RpbWUgdmFsdWVzLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhlICp1c2VfYnVpbHRpbl90eXBlcyogZmxhZyB3YXMgYWRkZWQuCiAKIAogLi4gX3htbHJwYy1jbGllbnQtZXhhbXBsZToKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3htbHJwYy5zZXJ2ZXIucnN0IGIvRG9jL2xpYnJhcnkveG1scnBjLnNlcnZlci5yc3QKaW5kZXggNjdmZWJhNi4uNjQ5M2ZkNCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkveG1scnBjLnNlcnZlci5yc3QKKysrIGIvRG9jL2xpYnJhcnkveG1scnBjLnNlcnZlci5yc3QKQEAgLTE2LDcgKzE2LDkgQEAKIDpjbGFzczpgQ0dJWE1MUlBDUmVxdWVzdEhhbmRsZXJgLgogCiAKLS4uIGNsYXNzOjogU2ltcGxlWE1MUlBDU2VydmVyKGFkZHIsIHJlcXVlc3RIYW5kbGVyPVNpbXBsZVhNTFJQQ1JlcXVlc3RIYW5kbGVyLCBsb2dSZXF1ZXN0cz1UcnVlLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lLCBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlKQorLi4gY2xhc3M6OiBTaW1wbGVYTUxSUENTZXJ2ZXIoYWRkciwgcmVxdWVzdEhhbmRsZXI9U2ltcGxlWE1MUlBDUmVxdWVzdEhhbmRsZXIsXAorICAgICAgICAgICAgICAgbG9nUmVxdWVzdHM9VHJ1ZSwgYWxsb3dfbm9uZT1GYWxzZSwgZW5jb2Rpbmc9Tm9uZSxcCisgICAgICAgICAgICAgICBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSkKIAogICAgQ3JlYXRlIGEgbmV3IHNlcnZlciBpbnN0YW5jZS4gIFRoaXMgY2xhc3MgcHJvdmlkZXMgbWV0aG9kcyBmb3IgcmVnaXN0cmF0aW9uIG9mCiAgICBmdW5jdGlvbnMgdGhhdCBjYW4gYmUgY2FsbGVkIGJ5IHRoZSBYTUwtUlBDIHByb3RvY29sLiAgVGhlICpyZXF1ZXN0SGFuZGxlcioKQEAgLTI1LDE4ICsyNywzMSBAQAogICAgYXJlIHBhc3NlZCB0byB0aGUgOmNsYXNzOmBzb2NrZXRzZXJ2ZXIuVENQU2VydmVyYCBjb25zdHJ1Y3Rvci4gIElmICpsb2dSZXF1ZXN0cyoKICAgIGlzIHRydWUgKHRoZSBkZWZhdWx0KSwgcmVxdWVzdHMgd2lsbCBiZSBsb2dnZWQ7IHNldHRpbmcgdGhpcyBwYXJhbWV0ZXIgdG8gZmFsc2UKICAgIHdpbGwgdHVybiBvZmYgbG9nZ2luZy4gICBUaGUgKmFsbG93X25vbmUqIGFuZCAqZW5jb2RpbmcqIHBhcmFtZXRlcnMgYXJlIHBhc3NlZAotICAgb24gdG8gIDptb2Q6YHhtbHJwYy5jbGllbnRgIGFuZCBjb250cm9sIHRoZSBYTUwtUlBDIHJlc3BvbnNlcyB0aGF0IHdpbGwgYmUgcmV0dXJuZWQKKyAgIG9uIHRvIDptb2Q6YHhtbHJwYy5jbGllbnRgIGFuZCBjb250cm9sIHRoZSBYTUwtUlBDIHJlc3BvbnNlcyB0aGF0IHdpbGwgYmUgcmV0dXJuZWQKICAgIGZyb20gdGhlIHNlcnZlci4gVGhlICpiaW5kX2FuZF9hY3RpdmF0ZSogcGFyYW1ldGVyIGNvbnRyb2xzIHdoZXRoZXIKICAgIDptZXRoOmBzZXJ2ZXJfYmluZGAgYW5kIDptZXRoOmBzZXJ2ZXJfYWN0aXZhdGVgIGFyZSBjYWxsZWQgaW1tZWRpYXRlbHkgYnkgdGhlCiAgICBjb25zdHJ1Y3RvcjsgaXQgZGVmYXVsdHMgdG8gdHJ1ZS4gU2V0dGluZyBpdCB0byBmYWxzZSBhbGxvd3MgY29kZSB0byBtYW5pcHVsYXRlCiAgICB0aGUgKmFsbG93X3JldXNlX2FkZHJlc3MqIGNsYXNzIHZhcmlhYmxlIGJlZm9yZSB0aGUgYWRkcmVzcyBpcyBib3VuZC4KKyAgIFRoZSAqdXNlX2J1aWx0aW5fdHlwZXMqIHBhcmFtZXRlciBpcyBwYXNzZWQgdG8gdGhlCisgICA6ZnVuYzpgfnhtbHJwYy5jbGllbnQubG9hZHNgIGZ1bmN0aW9uIGFuZCBjb250cm9scyB3aGljaCB0eXBlcyBhcmUgcHJvY2Vzc2VkCisgICB3aGVuIGRhdGUvdGltZXMgdmFsdWVzIG9yIGJpbmFyeSBkYXRhIGFyZSByZWNlaXZlZDsgaXQgZGVmYXVsdHMgdG8gZmFsc2UuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKnVzZV9idWlsdGluX3R5cGVzKiBmbGFnIHdhcyBhZGRlZC4KIAogCi0uLiBjbGFzczo6IENHSVhNTFJQQ1JlcXVlc3RIYW5kbGVyKGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUpCisuLiBjbGFzczo6IENHSVhNTFJQQ1JlcXVlc3RIYW5kbGVyKGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsXAorICAgICAgICAgICAgICAgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpCiAKICAgIENyZWF0ZSBhIG5ldyBpbnN0YW5jZSB0byBoYW5kbGUgWE1MLVJQQyByZXF1ZXN0cyBpbiBhIENHSSBlbnZpcm9ubWVudC4gIFRoZQogICAgKmFsbG93X25vbmUqIGFuZCAqZW5jb2RpbmcqIHBhcmFtZXRlcnMgYXJlIHBhc3NlZCBvbiB0byA6bW9kOmB4bWxycGMuY2xpZW50YAogICAgYW5kIGNvbnRyb2wgdGhlIFhNTC1SUEMgcmVzcG9uc2VzIHRoYXQgd2lsbCBiZSByZXR1cm5lZCBmcm9tIHRoZSBzZXJ2ZXIuCisgICBUaGUgKnVzZV9idWlsdGluX3R5cGVzKiBwYXJhbWV0ZXIgaXMgcGFzc2VkIHRvIHRoZQorICAgOmZ1bmM6YH54bWxycGMuY2xpZW50LmxvYWRzYCBmdW5jdGlvbiBhbmQgY29udHJvbHMgd2hpY2ggdHlwZXMgYXJlIHByb2Nlc3NlZAorICAgd2hlbiBkYXRlL3RpbWVzIHZhbHVlcyBvciBiaW5hcnkgZGF0YSBhcmUgcmVjZWl2ZWQ7IGl0IGRlZmF1bHRzIHRvIGZhbHNlLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhlICp1c2VfYnVpbHRpbl90eXBlcyogZmxhZyB3YXMgYWRkZWQuCiAKIAogLi4gY2xhc3M6OiBTaW1wbGVYTUxSUENSZXF1ZXN0SGFuZGxlcigpCkBAIC0yMzMsMTIgKzI0OCwxNyBAQAogOmNsYXNzOmBEb2NDR0lYTUxSUENSZXF1ZXN0SGFuZGxlcmAuCiAKIAotLi4gY2xhc3M6OiBEb2NYTUxSUENTZXJ2ZXIoYWRkciwgcmVxdWVzdEhhbmRsZXI9RG9jWE1MUlBDUmVxdWVzdEhhbmRsZXIsIGxvZ1JlcXVlc3RzPVRydWUsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUpCisuLiBjbGFzczo6IERvY1hNTFJQQ1NlcnZlcihhZGRyLCByZXF1ZXN0SGFuZGxlcj1Eb2NYTUxSUENSZXF1ZXN0SGFuZGxlcixcCisgICAgICAgICAgICAgICBsb2dSZXF1ZXN0cz1UcnVlLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lLFwKKyAgICAgICAgICAgICAgIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUsIHVzZV9idWlsdGluX3R5cGVzPVRydWUpCiAKICAgIENyZWF0ZSBhIG5ldyBzZXJ2ZXIgaW5zdGFuY2UuIEFsbCBwYXJhbWV0ZXJzIGhhdmUgdGhlIHNhbWUgbWVhbmluZyBhcyBmb3IKICAgIDpjbGFzczpgU2ltcGxlWE1MUlBDU2VydmVyYDsgKnJlcXVlc3RIYW5kbGVyKiBkZWZhdWx0cyB0bwogICAgOmNsYXNzOmBEb2NYTUxSUENSZXF1ZXN0SGFuZGxlcmAuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKnVzZV9idWlsdGluX3R5cGVzKiBmbGFnIHdhcyBhZGRlZC4KKwogCiAuLiBjbGFzczo6IERvY0NHSVhNTFJQQ1JlcXVlc3RIYW5kbGVyKCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvemlwaW1wb3J0LnJzdCBiL0RvYy9saWJyYXJ5L3ppcGltcG9ydC5yc3QKaW5kZXggNGYxNzA5Mi4uYjQ3YzM1YiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvemlwaW1wb3J0LnJzdAorKysgYi9Eb2MvbGlicmFyeS96aXBpbXBvcnQucnN0CkBAIC04NSw5ICs4NSwxMiBAQAogCiAgICAuLiBtZXRob2Q6OiBnZXRfZGF0YShwYXRobmFtZSkKIAotICAgICAgUmV0dXJuIHRoZSBkYXRhIGFzc29jaWF0ZWQgd2l0aCAqcGF0aG5hbWUqLiBSYWlzZSA6ZXhjOmBJT0Vycm9yYCBpZiB0aGUKKyAgICAgIFJldHVybiB0aGUgZGF0YSBhc3NvY2lhdGVkIHdpdGggKnBhdGhuYW1lKi4gUmFpc2UgOmV4YzpgT1NFcnJvcmAgaWYgdGhlCiAgICAgICBmaWxlIHdhc24ndCBmb3VuZC4KIAorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICAgIDpleGM6YElPRXJyb3JgIHVzZWQgdG8gYmUgcmFpc2VkIGluc3RlYWQgb2YgOmV4YzpgT1NFcnJvcmAuCisKIAogICAgLi4gbWV0aG9kOjogZ2V0X2ZpbGVuYW1lKGZ1bGxuYW1lKQogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS96bGliLnJzdCBiL0RvYy9saWJyYXJ5L3psaWIucnN0CmluZGV4IDg5N2Q5MTkuLjFlOWEyYmMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3psaWIucnN0CisrKyBiL0RvYy9saWJyYXJ5L3psaWIucnN0CkBAIC0xMjAsNiArMTIwLDcgQEAKICAgIHdvbid0IGZpdCBpbnRvIG1lbW9yeSBhdCBvbmNlLiAgVGhlICp3Yml0cyogcGFyYW1ldGVyIGNvbnRyb2xzIHRoZSBzaXplIG9mIHRoZQogICAgd2luZG93IGJ1ZmZlci4KIAorCiBDb21wcmVzc2lvbiBvYmplY3RzIHN1cHBvcnQgdGhlIGZvbGxvd2luZyBtZXRob2RzOgogCiAKQEAgLTE1MCw3ICsxNTEsNyBAQAogICAgY29tcHJlc3MgYSBzZXQgb2YgZGF0YSB0aGF0IHNoYXJlIGEgY29tbW9uIGluaXRpYWwgcHJlZml4LgogCiAKLURlY29tcHJlc3Npb24gb2JqZWN0cyBzdXBwb3J0IHRoZSBmb2xsb3dpbmcgbWV0aG9kcywgYW5kIHR3byBhdHRyaWJ1dGVzOgorRGVjb21wcmVzc2lvbiBvYmplY3RzIHN1cHBvcnQgdGhlIGZvbGxvd2luZyBtZXRob2RzIGFuZCBhdHRyaWJ1dGVzOgogCiAKIC4uIGF0dHJpYnV0ZTo6IERlY29tcHJlc3MudW51c2VkX2RhdGEKQEAgLTE2MCwxMyArMTYxLDYgQEAKICAgIGF2YWlsYWJsZS4gIElmIHRoZSB3aG9sZSBieXRlc3RyaW5nIHR1cm5lZCBvdXQgdG8gY29udGFpbiBjb21wcmVzc2VkIGRhdGEsIHRoaXMgaXMKICAgIGBgYiIiYGAsIGFuIGVtcHR5IGJ5dGVzIG9iamVjdC4KIAotICAgVGhlIG9ubHkgd2F5IHRvIGRldGVybWluZSB3aGVyZSBhIGJ5dGVzdHJpbmcgb2YgY29tcHJlc3NlZCBkYXRhIGVuZHMgaXMgYnkgYWN0dWFsbHkKLSAgIGRlY29tcHJlc3NpbmcgaXQuICBUaGlzIG1lYW5zIHRoYXQgd2hlbiBjb21wcmVzc2VkIGRhdGEgaXMgY29udGFpbmVkIHBhcnQgb2YgYQotICAgbGFyZ2VyIGZpbGUsIHlvdSBjYW4gb25seSBmaW5kIHRoZSBlbmQgb2YgaXQgYnkgcmVhZGluZyBkYXRhIGFuZCBmZWVkaW5nIGl0Ci0gICBmb2xsb3dlZCBieSBzb21lIG5vbi1lbXB0eSBieXRlc3RyaW5nIGludG8gYSBkZWNvbXByZXNzaW9uIG9iamVjdCdzCi0gICA6bWV0aDpgZGVjb21wcmVzc2AgbWV0aG9kIHVudGlsIHRoZSA6YXR0cjpgdW51c2VkX2RhdGFgIGF0dHJpYnV0ZSBpcyBubyBsb25nZXIKLSAgIGVtcHR5LgotCiAKIC4uIGF0dHJpYnV0ZTo6IERlY29tcHJlc3MudW5jb25zdW1lZF90YWlsCiAKQEAgLTE3Nyw2ICsxNzEsMTcgQEAKICAgIDptZXRoOmBkZWNvbXByZXNzYCBtZXRob2QgY2FsbCBpbiBvcmRlciB0byBnZXQgY29ycmVjdCBvdXRwdXQuCiAKIAorLi4gYXR0cmlidXRlOjogRGVjb21wcmVzcy5lb2YKKworICAgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgZW5kIG9mIHRoZSBjb21wcmVzc2VkIGRhdGEgc3RyZWFtIGhhcyBiZWVuCisgICByZWFjaGVkLgorCisgICBUaGlzIG1ha2VzIGl0IHBvc3NpYmxlIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gYSBwcm9wZXJseS1mb3JtZWQgY29tcHJlc3NlZAorICAgc3RyZWFtLCBhbmQgYW4gaW5jb21wbGV0ZSBvciB0cnVuY2F0ZWQgb25lLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBtZXRob2Q6OiBEZWNvbXByZXNzLmRlY29tcHJlc3MoZGF0YVssIG1heF9sZW5ndGhdKQogCiAgICBEZWNvbXByZXNzICpkYXRhKiwgcmV0dXJuaW5nIGEgYnl0ZXMgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIHVuY29tcHJlc3NlZCBkYXRhCkBAIC0yMTEsNiArMjE2LDI0IEBACiAgICBzZWVrcyBpbnRvIHRoZSBzdHJlYW0gYXQgYSBmdXR1cmUgcG9pbnQuCiAKIAorSW5mb3JtYXRpb24gYWJvdXQgdGhlIHZlcnNpb24gb2YgdGhlIHpsaWIgbGlicmFyeSBpbiB1c2UgaXMgYXZhaWxhYmxlIHRocm91Z2gKK3RoZSBmb2xsb3dpbmcgY29uc3RhbnRzOgorCisKKy4uIGRhdGE6OiBaTElCX1ZFUlNJT04KKworICAgVGhlIHZlcnNpb24gc3RyaW5nIG9mIHRoZSB6bGliIGxpYnJhcnkgdGhhdCB3YXMgdXNlZCBmb3IgYnVpbGRpbmcgdGhlIG1vZHVsZS4KKyAgIFRoaXMgbWF5IGJlIGRpZmZlcmVudCBmcm9tIHRoZSB6bGliIGxpYnJhcnkgYWN0dWFsbHkgdXNlZCBhdCBydW50aW1lLCB3aGljaAorICAgaXMgYXZhaWxhYmxlIGFzIDpjb25zdDpgWkxJQl9SVU5USU1FX1ZFUlNJT05gLgorCisKKy4uIGRhdGE6OiBaTElCX1JVTlRJTUVfVkVSU0lPTgorCisgICBUaGUgdmVyc2lvbiBzdHJpbmcgb2YgdGhlIHpsaWIgbGlicmFyeSBhY3R1YWxseSBsb2FkZWQgYnkgdGhlIGludGVycHJldGVyLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBzZWVhbHNvOjoKIAogICAgTW9kdWxlIDptb2Q6YGd6aXBgCmRpZmYgLS1naXQgYS9Eb2MvbGljZW5zZS5yc3QgYi9Eb2MvbGljZW5zZS5yc3QKaW5kZXggY2IyMGM4My4uOWQ2ZWYyNCAxMDA2NDQKLS0tIGEvRG9jL2xpY2Vuc2UucnN0CisrKyBiL0RvYy9saWNlbnNlLnJzdApAQCAtMTE4LDcgKzExOCw3IEBACiArLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwogfCAzLjIuMiAgICAgICAgICB8IDMuMi4xICAgICAgICB8IDIwMTEgICAgICAgfCBQU0YgICAgICAgIHwgeWVzICAgICAgICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCi18IDMuMi4zICAgICAgICAgIHwgMy4yLjIgICAgICAgIHwgMjAxMiAgICAgICB8IFBTRiAgICAgICAgfCB5ZXMgICAgICAgICAgICAgfAorfCAzLjMuMCAgICAgICAgICB8IDMuMiAgICAgICAgICB8IDIwMTIgICAgICAgfCBQU0YgICAgICAgIHwgeWVzICAgICAgICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCiAKIC4uIG5vdGU6OgpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9idWlsdGRpc3QucnN0IGIvRG9jL3BhY2thZ2luZy9idWlsdGRpc3QucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFkOWEzNDkKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvcGFja2FnaW5nL2J1aWx0ZGlzdC5yc3QKQEAgLTAsMCArMSwzMDIgQEAKKy4uIF9wYWNrYWdpbmctYnVpbHQtZGlzdDoKKworKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQ3JlYXRpbmcgQnVpbHQgRGlzdHJpYnV0aW9ucworKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorCitBICJidWlsdCBkaXN0cmlidXRpb24iIGlzIHdoYXQgeW91J3JlIHByb2JhYmx5IHVzZWQgdG8gdGhpbmtpbmcgb2YgZWl0aGVyIGFzIGEKKyJiaW5hcnkgcGFja2FnZSIgb3IgYW4gImluc3RhbGxlciIgKGRlcGVuZGluZyBvbiB5b3VyIGJhY2tncm91bmQpLiAgSXQncyBub3QKK25lY2Vzc2FyaWx5IGJpbmFyeSwgdGhvdWdoLCBiZWNhdXNlIGl0IG1pZ2h0IGNvbnRhaW4gb25seSBQeXRob24gc291cmNlIGNvZGUKK2FuZC9vciBieXRlLWNvZGU7IGFuZCB3ZSBkb24ndCBjYWxsIGl0IGEgcGFja2FnZSwgYmVjYXVzZSB0aGF0IHdvcmQgaXMgYWxyZWFkeQorc3Bva2VuIGZvciBpbiBQeXRob24uICAoQW5kICJpbnN0YWxsZXIiIGlzIGEgdGVybSBzcGVjaWZpYyB0byB0aGUgd29ybGQgb2YKK21haW5zdHJlYW0gZGVza3RvcCBzeXN0ZW1zLikKKworQSBidWlsdCBkaXN0cmlidXRpb24gaXMgaG93IHlvdSBtYWtlIGxpZmUgYXMgZWFzeSBhcyBwb3NzaWJsZSBmb3IgaW5zdGFsbGVycyBvZgoreW91ciBtb2R1bGUgZGlzdHJpYnV0aW9uOiBmb3IgdXNlcnMgb2YgUlBNLWJhc2VkIExpbnV4IHN5c3RlbXMsIGl0J3MgYSBiaW5hcnkKK1JQTTsgZm9yIFdpbmRvd3MgdXNlcnMsIGl0J3MgYW4gZXhlY3V0YWJsZSBpbnN0YWxsZXI7IGZvciBEZWJpYW4tYmFzZWQgTGludXgKK3VzZXJzLCBpdCdzIGEgRGViaWFuIHBhY2thZ2U7IGFuZCBzbyBmb3J0aC4gIE9idmlvdXNseSwgbm8gb25lIHBlcnNvbiB3aWxsIGJlCithYmxlIHRvIGNyZWF0ZSBidWlsdCBkaXN0cmlidXRpb25zIGZvciBldmVyeSBwbGF0Zm9ybSB1bmRlciB0aGUgc3VuLCBzbyB0aGUKK0Rpc3R1dGlscyBhcmUgZGVzaWduZWQgdG8gZW5hYmxlIG1vZHVsZSBkZXZlbG9wZXJzIHRvIGNvbmNlbnRyYXRlIG9uIHRoZWlyCitzcGVjaWFsdHktLS13cml0aW5nIGNvZGUgYW5kIGNyZWF0aW5nIHNvdXJjZSBkaXN0cmlidXRpb25zLS0td2hpbGUgYW4KK2ludGVybWVkaWFyeSBzcGVjaWVzIGNhbGxlZCAqcGFja2FnZXJzKiBzcHJpbmdzIHVwIHRvIHR1cm4gc291cmNlIGRpc3RyaWJ1dGlvbnMKK2ludG8gYnVpbHQgZGlzdHJpYnV0aW9ucyBmb3IgYXMgbWFueSBwbGF0Zm9ybXMgYXMgdGhlcmUgYXJlIHBhY2thZ2Vycy4KKworT2YgY291cnNlLCB0aGUgbW9kdWxlIGRldmVsb3BlciBjb3VsZCBiZSBoaXMgb3duIHBhY2thZ2VyOyBvciB0aGUgcGFja2FnZXIgY291bGQKK2JlIGEgdm9sdW50ZWVyICJvdXQgdGhlcmUiIHNvbWV3aGVyZSB3aG8gaGFzIGFjY2VzcyB0byBhIHBsYXRmb3JtIHdoaWNoIHRoZQorb3JpZ2luYWwgZGV2ZWxvcGVyIGRvZXMgbm90OyBvciBpdCBjb3VsZCBiZSBzb2Z0d2FyZSBwZXJpb2RpY2FsbHkgZ3JhYmJpbmcgbmV3Citzb3VyY2UgZGlzdHJpYnV0aW9ucyBhbmQgdHVybmluZyB0aGVtIGludG8gYnVpbHQgZGlzdHJpYnV0aW9ucyBmb3IgYXMgbWFueQorcGxhdGZvcm1zIGFzIHRoZSBzb2Z0d2FyZSBoYXMgYWNjZXNzIHRvLiAgUmVnYXJkbGVzcyBvZiB3aG8gdGhleSBhcmUsIGEgcGFja2FnZXIKK3VzZXMgdGhlIHNldHVwIHNjcmlwdCBhbmQgdGhlIDpjb21tYW5kOmBiZGlzdGAgY29tbWFuZCBmYW1pbHkgdG8gZ2VuZXJhdGUgYnVpbHQKK2Rpc3RyaWJ1dGlvbnMuCisKK0FzIGEgc2ltcGxlIGV4YW1wbGUsIGlmIEkgcnVuIHRoZSBmb2xsb3dpbmcgY29tbWFuZCBpbiB0aGUgRGlzdHV0aWxzIHNvdXJjZQordHJlZTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBiZGlzdAorCit0aGVuIHRoZSBEaXN0dXRpbHMgYnVpbGRzIG15IG1vZHVsZSBkaXN0cmlidXRpb24gKHRoZSBEaXN0dXRpbHMgaXRzZWxmIGluIHRoaXMKK2Nhc2UpLCBkb2VzIGEgImZha2UiIGluc3RhbGxhdGlvbiAoYWxzbyBpbiB0aGUgOmZpbGU6YGJ1aWxkYCBkaXJlY3RvcnkpLCBhbmQKK2NyZWF0ZXMgdGhlIGRlZmF1bHQgdHlwZSBvZiBidWlsdCBkaXN0cmlidXRpb24gZm9yIG15IHBsYXRmb3JtLiAgVGhlIGRlZmF1bHQKK2Zvcm1hdCBmb3IgYnVpbHQgZGlzdHJpYnV0aW9ucyBpcyBhICJkdW1iIiB0YXIgZmlsZSBvbiBVbml4LCBhbmQgYSBzaW1wbGUKK2V4ZWN1dGFibGUgaW5zdGFsbGVyIG9uIFdpbmRvd3MuICAoVGhhdCB0YXIgZmlsZSBpcyBjb25zaWRlcmVkICJkdW1iIiBiZWNhdXNlIGl0CitoYXMgdG8gYmUgdW5wYWNrZWQgaW4gYSBzcGVjaWZpYyBsb2NhdGlvbiB0byB3b3JrLikKKworVGh1cywgdGhlIGFib3ZlIGNvbW1hbmQgb24gYSBVbml4IHN5c3RlbSBjcmVhdGVzCis6ZmlsZTpgRGlzdHV0aWxzLTEuMC57cGxhdH0udGFyLmd6YDsgdW5wYWNraW5nIHRoaXMgdGFyYmFsbCBmcm9tIHRoZSByaWdodCBwbGFjZQoraW5zdGFsbHMgdGhlIERpc3R1dGlscyBqdXN0IGFzIHRob3VnaCB5b3UgaGFkIGRvd25sb2FkZWQgdGhlIHNvdXJjZSBkaXN0cmlidXRpb24KK2FuZCBydW4gYGBweXRob24gc2V0dXAucHkgaW5zdGFsbGBgLiAgKFRoZSAicmlnaHQgcGxhY2UiIGlzIGVpdGhlciB0aGUgcm9vdCBvZgordGhlIGZpbGVzeXN0ZW0gb3IgIFB5dGhvbidzIDpmaWxlOmB7cHJlZml4fWAgZGlyZWN0b3J5LCBkZXBlbmRpbmcgb24gdGhlIG9wdGlvbnMKK2dpdmVuIHRvIHRoZSA6Y29tbWFuZDpgYmRpc3RfZHVtYmAgY29tbWFuZDsgdGhlIGRlZmF1bHQgaXMgdG8gbWFrZSBkdW1iCitkaXN0cmlidXRpb25zIHJlbGF0aXZlIHRvIDpmaWxlOmB7cHJlZml4fWAuKQorCitPYnZpb3VzbHksIGZvciBwdXJlIFB5dGhvbiBkaXN0cmlidXRpb25zLCB0aGlzIGlzbid0IGFueSBzaW1wbGVyIHRoYW4ganVzdAorcnVubmluZyBgYHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsYGBcIC0tLWJ1dCBmb3Igbm9uLXB1cmUgZGlzdHJpYnV0aW9ucywgd2hpY2gKK2luY2x1ZGUgZXh0ZW5zaW9ucyB0aGF0IHdvdWxkIG5lZWQgdG8gYmUgY29tcGlsZWQsIGl0IGNhbiBtZWFuIHRoZSBkaWZmZXJlbmNlCitiZXR3ZWVuIHNvbWVvbmUgYmVpbmcgYWJsZSB0byB1c2UgeW91ciBleHRlbnNpb25zIG9yIG5vdC4gIEFuZCBjcmVhdGluZyAic21hcnQiCitidWlsdCBkaXN0cmlidXRpb25zLCBzdWNoIGFzIGFuIGV4ZWN1dGFibGUgaW5zdGFsbGVyIGZvcgorV2luZG93cywgaXMgZmFyIG1vcmUgY29udmVuaWVudCBmb3IgdXNlcnMgZXZlbiBpZiB5b3VyIGRpc3RyaWJ1dGlvbiBkb2Vzbid0CitpbmNsdWRlIGFueSBleHRlbnNpb25zLgorCitUaGUgOmNvbW1hbmQ6YGJkaXN0YCBjb21tYW5kIGhhcyBhIDpvcHRpb246YC0tZm9ybWF0c2Agb3B0aW9uLCBzaW1pbGFyIHRvIHRoZQorOmNvbW1hbmQ6YHNkaXN0YCBjb21tYW5kLCB3aGljaCB5b3UgY2FuIHVzZSB0byBzZWxlY3QgdGhlIHR5cGVzIG9mIGJ1aWx0CitkaXN0cmlidXRpb24gdG8gZ2VuZXJhdGU6IGZvciBleGFtcGxlLCA6OgorCisgICBweXRob24gc2V0dXAucHkgYmRpc3QgLS1mb3JtYXQ9emlwCisKK3dvdWxkLCB3aGVuIHJ1biBvbiBhIFVuaXggc3lzdGVtLCBjcmVhdGUgOmZpbGU6YERpc3R1dGlscy0xLjAue3BsYXR9LnppcGBcCistLS1hZ2FpbiwgdGhpcyBhcmNoaXZlIHdvdWxkIGJlIHVucGFja2VkIGZyb20gdGhlIHJvb3QgZGlyZWN0b3J5IHRvIGluc3RhbGwgdGhlCitEaXN0dXRpbHMuCisKK1RoZSBhdmFpbGFibGUgZm9ybWF0cyBmb3IgYnVpbHQgZGlzdHJpYnV0aW9ucyBhcmU6CisKKystLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IEZvcm1hdCAgICAgIHwgRGVzY3JpcHRpb24gICAgICAgICAgICAgICAgICB8IE5vdGVzICAgfAorKz09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PSsKK3wgYGBnenRhcmBgICAgfCBnemlwcGVkIHRhciBmaWxlICAgICAgICAgICAgIHwgKDEpLCgzKSB8Cit8ICAgICAgICAgICAgIHwgKDpmaWxlOmAudGFyLmd6YCkgICAgICAgICAgICB8ICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSsKK3wgYGB0YXJgYCAgICAgfCB0YXIgZmlsZSAoOmZpbGU6YC50YXJgKSAgICAgIHwgXCgzKSAgICB8CisrLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKworfCBgYHppcGBgICAgICB8IHppcCBmaWxlICg6ZmlsZTpgLnppcGApICAgICAgfCAoMiksKDQpIHwKKystLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgd2luaW5zdGBgIHwgc2VsZi1leHRyYWN0aW5nIFpJUCBmaWxlIGZvciB8IFwoNCkgICAgfAorfCAgICAgICAgICAgICB8IFdpbmRvd3MgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgbXNpYGAgICAgIHwgTWljcm9zb2Z0IEluc3RhbGxlci4gICAgICAgICB8ICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSsKKworCitOb3RlczoKKworKDEpCisgICBkZWZhdWx0IG9uIFVuaXgKKworKDIpCisgICBkZWZhdWx0IG9uIFdpbmRvd3MKKworKDMpCisgICByZXF1aXJlcyBleHRlcm5hbCB1dGlsaXRpZXM6IDpwcm9ncmFtOmB0YXJgIGFuZCBwb3NzaWJseSBvbmUgb2YgOnByb2dyYW06YGd6aXBgCisgICBvciA6cHJvZ3JhbTpgYnppcDJgCisKKyg0KQorICAgcmVxdWlyZXMgZWl0aGVyIGV4dGVybmFsIDpwcm9ncmFtOmB6aXBgIHV0aWxpdHkgb3IgOm1vZDpgemlwZmlsZWAgbW9kdWxlIChwYXJ0CisgICBvZiB0aGUgc3RhbmRhcmQgUHl0aG9uIGxpYnJhcnkgc2luY2UgUHl0aG9uIDEuNikKKworWW91IGRvbid0IGhhdmUgdG8gdXNlIHRoZSA6Y29tbWFuZDpgYmRpc3RgIGNvbW1hbmQgd2l0aCB0aGUgOm9wdGlvbjpgLS1mb3JtYXRzYAorb3B0aW9uOyB5b3UgY2FuIGFsc28gdXNlIHRoZSBjb21tYW5kIHRoYXQgZGlyZWN0bHkgaW1wbGVtZW50cyB0aGUgZm9ybWF0IHlvdSdyZQoraW50ZXJlc3RlZCBpbi4gIFNvbWUgb2YgdGhlc2UgOmNvbW1hbmQ6YGJkaXN0YCAic3ViLWNvbW1hbmRzIiBhY3R1YWxseSBnZW5lcmF0ZQorc2V2ZXJhbCBzaW1pbGFyIGZvcm1hdHM7IGZvciBpbnN0YW5jZSwgdGhlIDpjb21tYW5kOmBiZGlzdF9kdW1iYCBjb21tYW5kCitnZW5lcmF0ZXMgYWxsIHRoZSAiZHVtYiIgYXJjaGl2ZSBmb3JtYXRzIChgYHRhcmBgLCBgYGd6dGFyYGAsIGFuZAorYGB6aXBgYCkuICBUaGUgOmNvbW1hbmQ6YGJkaXN0YCBzdWItY29tbWFuZHMsIGFuZCB0aGUgZm9ybWF0cyBnZW5lcmF0ZWQgYnkKK2VhY2gsIGFyZToKKworKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBDb21tYW5kICAgICAgICAgICAgICAgICAgfCBGb3JtYXRzICAgICAgICAgICAgICAgfAorKz09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09KworfCA6Y29tbWFuZDpgYmRpc3RfZHVtYmAgICAgfCB0YXIsIGd6dGFyLCB6aXAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCA6Y29tbWFuZDpgYmRpc3Rfd2luaW5zdGAgfCB3aW5pbnN0ICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCA6Y29tbWFuZDpgYmRpc3RfbXNpYCAgICAgfCBtc2kgICAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCitUaGUgZm9sbG93aW5nIHNlY3Rpb25zIGdpdmUgZGV0YWlscyBvbiB0aGUgaW5kaXZpZHVhbCA6Y29tbWFuZDpgYmRpc3RfXCpgCitjb21tYW5kcy4KKworCisuLiBfcGFja2FnaW5nLWNyZWF0aW5nLWR1bWI6CisKK0NyZWF0aW5nIGR1bWIgYnVpbHQgZGlzdHJpYnV0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIFhYWCBOZWVkIHRvIGRvY3VtZW50IGFic29sdXRlIHZzLiBwcmVmaXgtcmVsYXRpdmUgcGFja2FnZXMgaGVyZSwgYnV0IGZpcnN0CisgICAgICAgSSBoYXZlIHRvIGltcGxlbWVudCBpdCEKKworCisuLiBfcGFja2FnaW5nLWNyZWF0aW5nLXdpbmluc3Q6CisKK0NyZWF0aW5nIFdpbmRvd3MgSW5zdGFsbGVycworPT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0V4ZWN1dGFibGUgaW5zdGFsbGVycyBhcmUgdGhlIG5hdHVyYWwgZm9ybWF0IGZvciBiaW5hcnkgZGlzdHJpYnV0aW9ucyBvbgorV2luZG93cy4gIFRoZXkgZGlzcGxheSBhIG5pY2UgZ3JhcGhpY2FsIHVzZXIgaW50ZXJmYWNlLCBkaXNwbGF5IHNvbWUgaW5mb3JtYXRpb24KK2Fib3V0IHRoZSBtb2R1bGUgZGlzdHJpYnV0aW9uIHRvIGJlIGluc3RhbGxlZCB0YWtlbiBmcm9tIHRoZSBtZXRhZGF0YSBpbiB0aGUKK3NldHVwIHNjcmlwdCwgbGV0IHRoZSB1c2VyIHNlbGVjdCBhIGZldyBvcHRpb25zLCBhbmQgc3RhcnQgb3IgY2FuY2VsIHRoZQoraW5zdGFsbGF0aW9uLgorCitTaW5jZSB0aGUgbWV0YWRhdGEgaXMgdGFrZW4gZnJvbSB0aGUgc2V0dXAgc2NyaXB0LCBjcmVhdGluZyBXaW5kb3dzIGluc3RhbGxlcnMKK2lzIHVzdWFsbHkgYXMgZWFzeSBhcyBydW5uaW5nOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJkaXN0X3dpbmluc3QKKworb3IgdGhlIDpjb21tYW5kOmBiZGlzdGAgY29tbWFuZCB3aXRoIHRoZSA6b3B0aW9uOmAtLWZvcm1hdHNgIG9wdGlvbjo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBiZGlzdCAtLWZvcm1hdHM9d2luaW5zdAorCitJZiB5b3UgaGF2ZSBhIHB1cmUgbW9kdWxlIGRpc3RyaWJ1dGlvbiAob25seSBjb250YWluaW5nIHB1cmUgUHl0aG9uIG1vZHVsZXMgYW5kCitwYWNrYWdlcyksIHRoZSByZXN1bHRpbmcgaW5zdGFsbGVyIHdpbGwgYmUgdmVyc2lvbiBpbmRlcGVuZGVudCBhbmQgaGF2ZSBhIG5hbWUKK2xpa2UgOmZpbGU6YGZvby0xLjAud2luMzIuZXhlYC4gIFRoZXNlIGluc3RhbGxlcnMgY2FuIGV2ZW4gYmUgY3JlYXRlZCBvbiBVbml4CitwbGF0Zm9ybXMgb3IgTWFjIE9TIFguCisKK0lmIHlvdSBoYXZlIGEgbm9uLXB1cmUgZGlzdHJpYnV0aW9uLCB0aGUgZXh0ZW5zaW9ucyBjYW4gb25seSBiZSBjcmVhdGVkIG9uIGEKK1dpbmRvd3MgcGxhdGZvcm0sIGFuZCB3aWxsIGJlIFB5dGhvbiB2ZXJzaW9uIGRlcGVuZGVudC4gVGhlIGluc3RhbGxlciBmaWxlbmFtZQord2lsbCByZWZsZWN0IHRoaXMgYW5kIG5vdyBoYXMgdGhlIGZvcm0gOmZpbGU6YGZvby0xLjAud2luMzItcHkyLjAuZXhlYC4gIFlvdQoraGF2ZSB0byBjcmVhdGUgYSBzZXBhcmF0ZSBpbnN0YWxsZXIgZm9yIGV2ZXJ5IFB5dGhvbiB2ZXJzaW9uIHlvdSB3YW50IHRvCitzdXBwb3J0LgorCitUaGUgaW5zdGFsbGVyIHdpbGwgdHJ5IHRvIGNvbXBpbGUgcHVyZSBtb2R1bGVzIGludG8gOnRlcm06YGJ5dGVjb2RlYCBhZnRlciBpbnN0YWxsYXRpb24KK29uIHRoZSB0YXJnZXQgc3lzdGVtIGluIG5vcm1hbCBhbmQgb3B0aW1pemluZyBtb2RlLiAgSWYgeW91IGRvbid0IHdhbnQgdGhpcyB0bworaGFwcGVuIGZvciBzb21lIHJlYXNvbiwgeW91IGNhbiBydW4gdGhlIDpjb21tYW5kOmBiZGlzdF93aW5pbnN0YCBjb21tYW5kIHdpdGgKK3RoZSA6b3B0aW9uOmAtLW5vLXRhcmdldC1jb21waWxlYCBhbmQvb3IgdGhlIDpvcHRpb246YC0tbm8tdGFyZ2V0LW9wdGltaXplYAorb3B0aW9uLgorCitCeSBkZWZhdWx0IHRoZSBpbnN0YWxsZXIgd2lsbCBkaXNwbGF5IHRoZSBjb29sICJQeXRob24gUG93ZXJlZCIgbG9nbyB3aGVuIGl0IGlzCitydW4sIGJ1dCB5b3UgY2FuIGFsc28gc3VwcGx5IHlvdXIgb3duIDE1MngyNjEgYml0bWFwIHdoaWNoIG11c3QgYmUgYSBXaW5kb3dzCis6ZmlsZTpgLmJtcGAgZmlsZSB3aXRoIHRoZSA6b3B0aW9uOmAtLWJpdG1hcGAgb3B0aW9uLgorCitUaGUgaW5zdGFsbGVyIHdpbGwgYWxzbyBkaXNwbGF5IGEgbGFyZ2UgdGl0bGUgb24gdGhlIGRlc2t0b3AgYmFja2dyb3VuZCB3aW5kb3cKK3doZW4gaXQgaXMgcnVuLCB3aGljaCBpcyBjb25zdHJ1Y3RlZCBmcm9tIHRoZSBuYW1lIG9mIHlvdXIgZGlzdHJpYnV0aW9uIGFuZCB0aGUKK3ZlcnNpb24gbnVtYmVyLiAgVGhpcyBjYW4gYmUgY2hhbmdlZCB0byBhbm90aGVyIHRleHQgYnkgdXNpbmcgdGhlCis6b3B0aW9uOmAtLXRpdGxlYCBvcHRpb24uCisKK1RoZSBpbnN0YWxsZXIgZmlsZSB3aWxsIGJlIHdyaXR0ZW4gdG8gdGhlICJkaXN0cmlidXRpb24gZGlyZWN0b3J5IiAtLS0gbm9ybWFsbHkKKzpmaWxlOmBkaXN0L2AsIGJ1dCBjdXN0b21pemFibGUgd2l0aCB0aGUgOm9wdGlvbjpgLS1kaXN0LWRpcmAgb3B0aW9uLgorCisuLiBfcGFja2FnaW5nLWNyb3NzLWNvbXBpbGUtd2luZG93czoKKworQ3Jvc3MtY29tcGlsaW5nIG9uIFdpbmRvd3MKKz09PT09PT09PT09PT09PT09PT09PT09PT09CisKK1N0YXJ0aW5nIHdpdGggUHl0aG9uIDIuNiwgcGFja2FnaW5nIGlzIGNhcGFibGUgb2YgY3Jvc3MtY29tcGlsaW5nIGJldHdlZW4KK1dpbmRvd3MgcGxhdGZvcm1zLiAgSW4gcHJhY3RpY2UsIHRoaXMgbWVhbnMgdGhhdCB3aXRoIHRoZSBjb3JyZWN0IHRvb2xzCitpbnN0YWxsZWQsIHlvdSBjYW4gdXNlIGEgMzJiaXQgdmVyc2lvbiBvZiBXaW5kb3dzIHRvIGNyZWF0ZSA2NGJpdCBleHRlbnNpb25zCithbmQgdmljZS12ZXJzYS4KKworVG8gYnVpbGQgZm9yIGFuIGFsdGVybmF0ZSBwbGF0Zm9ybSwgc3BlY2lmeSB0aGUgOm9wdGlvbjpgLS1wbGF0LW5hbWVgIG9wdGlvbgordG8gdGhlIGJ1aWxkIGNvbW1hbmQuICBWYWxpZCB2YWx1ZXMgYXJlIGN1cnJlbnRseSAnd2luMzInLCAnd2luLWFtZDY0JyBhbmQKKyd3aW4taWE2NCcuICBGb3IgZXhhbXBsZSwgb24gYSAzMmJpdCB2ZXJzaW9uIG9mIFdpbmRvd3MsIHlvdSBjb3VsZCBleGVjdXRlOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tcGxhdC1uYW1lPXdpbi1hbWQ2NAorCit0byBidWlsZCBhIDY0Yml0IHZlcnNpb24gb2YgeW91ciBleHRlbnNpb24uICBUaGUgV2luZG93cyBJbnN0YWxsZXJzIGFsc28KK3N1cHBvcnQgdGhpcyBvcHRpb24sIHNvIHRoZSBjb21tYW5kOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tcGxhdC1uYW1lPXdpbi1hbWQ2NCBiZGlzdF93aW5pbnN0CisKK3dvdWxkIGNyZWF0ZSBhIDY0Yml0IGluc3RhbGxhdGlvbiBleGVjdXRhYmxlIG9uIHlvdXIgMzJiaXQgdmVyc2lvbiBvZiBXaW5kb3dzLgorCitUbyBjcm9zcy1jb21waWxlLCB5b3UgbXVzdCBkb3dubG9hZCB0aGUgUHl0aG9uIHNvdXJjZSBjb2RlIGFuZCBjcm9zcy1jb21waWxlCitQeXRob24gaXRzZWxmIGZvciB0aGUgcGxhdGZvcm0geW91IGFyZSB0YXJnZXR0aW5nIC0gaXQgaXMgbm90IHBvc3NpYmxlIGZyb20gYQorYmluYXJ5IGluc3RhbGx0aW9uIG9mIFB5dGhvbiAoYXMgdGhlIC5saWIgZXRjIGZpbGUgZm9yIG90aGVyIHBsYXRmb3JtcyBhcmUKK25vdCBpbmNsdWRlZC4pICBJbiBwcmFjdGljZSwgdGhpcyBtZWFucyB0aGUgdXNlciBvZiBhIDMyIGJpdCBvcGVyYXRpbmcKK3N5c3RlbSB3aWxsIG5lZWQgdG8gdXNlIFZpc3VhbCBTdHVkaW8gMjAwOCB0byBvcGVuIHRoZQorOmZpbGU6YFBDQnVpbGQvUENidWlsZC5zbG5gIHNvbHV0aW9uIGluIHRoZSBQeXRob24gc291cmNlIHRyZWUgYW5kIGJ1aWxkIHRoZQorIng2NCIgY29uZmlndXJhdGlvbiBvZiB0aGUgJ3B5dGhvbmNvcmUnIHByb2plY3QgYmVmb3JlIGNyb3NzLWNvbXBpbGluZworZXh0ZW5zaW9ucyBpcyBwb3NzaWJsZS4KKworTm90ZSB0aGF0IGJ5IGRlZmF1bHQsIFZpc3VhbCBTdHVkaW8gMjAwOCBkb2VzIG5vdCBpbnN0YWxsIDY0Yml0IGNvbXBpbGVycyBvcgordG9vbHMuICBZb3UgbWF5IG5lZWQgdG8gcmVleGVjdXRlIHRoZSBWaXN1YWwgU3R1ZGlvIHNldHVwIHByb2Nlc3MgYW5kIHNlbGVjdAordGhlc2UgdG9vbHMgKHVzaW5nIENvbnRyb2wgUGFuZWwtPltBZGQvUmVtb3ZlXSBQcm9ncmFtcyBpcyBhIGNvbnZlbmllbnQgd2F5IHRvCitjaGVjayBvciBtb2RpZnkgeW91ciBleGlzdGluZyBpbnN0YWxsLikKKworLi4gX3BhY2thZ2luZy1wb3N0aW5zdGFsbGF0aW9uLXNjcmlwdDoKKworVGhlIFBvc3RpbnN0YWxsYXRpb24gc2NyaXB0CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworU3RhcnRpbmcgd2l0aCBQeXRob24gMi4zLCBhIHBvc3RpbnN0YWxsYXRpb24gc2NyaXB0IGNhbiBiZSBzcGVjaWZpZWQgd2l0aCB0aGUKKzpvcHRpb246YC0taW5zdGFsbC1zY3JpcHRgIG9wdGlvbi4gIFRoZSBiYXNlbmFtZSBvZiB0aGUgc2NyaXB0IG11c3QgYmUKK3NwZWNpZmllZCwgYW5kIHRoZSBzY3JpcHQgZmlsZW5hbWUgbXVzdCBhbHNvIGJlIGxpc3RlZCBpbiB0aGUgc2NyaXB0cyBhcmd1bWVudAordG8gdGhlIHNldHVwIGZ1bmN0aW9uLgorCitUaGlzIHNjcmlwdCB3aWxsIGJlIHJ1biBhdCBpbnN0YWxsYXRpb24gdGltZSBvbiB0aGUgdGFyZ2V0IHN5c3RlbSBhZnRlciBhbGwgdGhlCitmaWxlcyBoYXZlIGJlZW4gY29waWVkLCB3aXRoIGBgYXJndlsxXWBgIHNldCB0byA6b3B0aW9uOmAtaW5zdGFsbGAsIGFuZCBhZ2FpbiBhdAordW5pbnN0YWxsYXRpb24gdGltZSBiZWZvcmUgdGhlIGZpbGVzIGFyZSByZW1vdmVkIHdpdGggYGBhcmd2WzFdYGAgc2V0IHRvCis6b3B0aW9uOmAtcmVtb3ZlYC4KKworVGhlIGluc3RhbGxhdGlvbiBzY3JpcHQgcnVucyBlbWJlZGRlZCBpbiB0aGUgd2luZG93cyBpbnN0YWxsZXIsIGV2ZXJ5IG91dHB1dAorKGBgc3lzLnN0ZG91dGBgLCBgYHN5cy5zdGRlcnJgYCkgaXMgcmVkaXJlY3RlZCBpbnRvIGEgYnVmZmVyIGFuZCB3aWxsIGJlCitkaXNwbGF5ZWQgaW4gdGhlIEdVSSBhZnRlciB0aGUgc2NyaXB0IGhhcyBmaW5pc2hlZC4KKworU29tZSBmdW5jdGlvbnMgZXNwZWNpYWxseSB1c2VmdWwgaW4gdGhpcyBjb250ZXh0IGFyZSBhdmFpbGFibGUgYXMgYWRkaXRpb25hbAorYnVpbHQtaW4gZnVuY3Rpb25zIGluIHRoZSBpbnN0YWxsYXRpb24gc2NyaXB0LgorCisuLiBjdXJyZW50bW9kdWxlOjogYmRpc3Rfd2luaW5zdC1wb3N0aW5zdC1zY3JpcHQKKworLi4gZnVuY3Rpb246OiBkaXJlY3RvcnlfY3JlYXRlZChwYXRoKQorICAgICAgICAgICAgICBmaWxlX2NyZWF0ZWQocGF0aCkKKworICAgVGhlc2UgZnVuY3Rpb25zIHNob3VsZCBiZSBjYWxsZWQgd2hlbiBhIGRpcmVjdG9yeSBvciBmaWxlIGlzIGNyZWF0ZWQgYnkgdGhlCisgICBwb3N0aW5zdGFsbCBzY3JpcHQgYXQgaW5zdGFsbGF0aW9uIHRpbWUuICBJdCB3aWxsIHJlZ2lzdGVyICpwYXRoKiB3aXRoIHRoZQorICAgdW5pbnN0YWxsZXIsIHNvIHRoYXQgaXQgd2lsbCBiZSByZW1vdmVkIHdoZW4gdGhlIGRpc3RyaWJ1dGlvbiBpcyB1bmluc3RhbGxlZC4KKyAgIFRvIGJlIHNhZmUsIGRpcmVjdG9yaWVzIGFyZSBvbmx5IHJlbW92ZWQgaWYgdGhleSBhcmUgZW1wdHkuCisKKworLi4gZnVuY3Rpb246OiBnZXRfc3BlY2lhbF9mb2xkZXJfcGF0aChjc2lkbF9zdHJpbmcpCisKKyAgIFRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gcmV0cmlldmUgc3BlY2lhbCBmb2xkZXIgbG9jYXRpb25zIG9uIFdpbmRvd3MgbGlrZQorICAgdGhlIFN0YXJ0IE1lbnUgb3IgdGhlIERlc2t0b3AuICBJdCByZXR1cm5zIHRoZSBmdWxsIHBhdGggdG8gdGhlIGZvbGRlci4KKyAgICpjc2lkbF9zdHJpbmcqIG11c3QgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmcgc3RyaW5nczo6CisKKyAgICAgICJDU0lETF9BUFBEQVRBIgorCisgICAgICAiQ1NJRExfQ09NTU9OX1NUQVJUTUVOVSIKKyAgICAgICJDU0lETF9TVEFSVE1FTlUiCisKKyAgICAgICJDU0lETF9DT01NT05fREVTS1RPUERJUkVDVE9SWSIKKyAgICAgICJDU0lETF9ERVNLVE9QRElSRUNUT1JZIgorCisgICAgICAiQ1NJRExfQ09NTU9OX1NUQVJUVVAiCisgICAgICAiQ1NJRExfU1RBUlRVUCIKKworICAgICAgIkNTSURMX0NPTU1PTl9QUk9HUkFNUyIKKyAgICAgICJDU0lETF9QUk9HUkFNUyIKKworICAgICAgIkNTSURMX0ZPTlRTIgorCisgICBJZiB0aGUgZm9sZGVyIGNhbm5vdCBiZSByZXRyaWV2ZWQsIDpleGM6YE9TRXJyb3JgIGlzIHJhaXNlZC4KKworICAgV2hpY2ggZm9sZGVycyBhcmUgYXZhaWxhYmxlIGRlcGVuZHMgb24gdGhlIGV4YWN0IFdpbmRvd3MgdmVyc2lvbiwgYW5kIHByb2JhYmx5CisgICBhbHNvIHRoZSBjb25maWd1cmF0aW9uLiAgRm9yIGRldGFpbHMgcmVmZXIgdG8gTWljcm9zb2Z0J3MgZG9jdW1lbnRhdGlvbiBvZiB0aGUKKyAgIDpjOmZ1bmM6YFNIR2V0U3BlY2lhbEZvbGRlclBhdGhgIGZ1bmN0aW9uLgorCisKKy4uIGZ1bmN0aW9uOjogY3JlYXRlX3Nob3J0Y3V0KHRhcmdldCwgZGVzY3JpcHRpb24sIGZpbGVuYW1lWywgYXJndW1lbnRzWywgd29ya2RpclssIGljb25wYXRoWywgaWNvbmluZGV4XV1dXSkKKworICAgVGhpcyBmdW5jdGlvbiBjcmVhdGVzIGEgc2hvcnRjdXQuICp0YXJnZXQqIGlzIHRoZSBwYXRoIHRvIHRoZSBwcm9ncmFtIHRvIGJlCisgICBzdGFydGVkIGJ5IHRoZSBzaG9ydGN1dC4gKmRlc2NyaXB0aW9uKiBpcyB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIHNob3J0Y3V0LgorICAgKmZpbGVuYW1lKiBpcyB0aGUgdGl0bGUgb2YgdGhlIHNob3J0Y3V0IHRoYXQgdGhlIHVzZXIgd2lsbCBzZWUuICphcmd1bWVudHMqCisgICBzcGVjaWZpZXMgdGhlIGNvbW1hbmQtbGluZSBhcmd1bWVudHMsIGlmIGFueS4gKndvcmtkaXIqIGlzIHRoZSB3b3JraW5nIGRpcmVjdG9yeQorICAgZm9yIHRoZSBwcm9ncmFtLiAqaWNvbnBhdGgqIGlzIHRoZSBmaWxlIGNvbnRhaW5pbmcgdGhlIGljb24gZm9yIHRoZSBzaG9ydGN1dCwKKyAgIGFuZCAqaWNvbmluZGV4KiBpcyB0aGUgaW5kZXggb2YgdGhlIGljb24gaW4gdGhlIGZpbGUgKmljb25wYXRoKi4gIEFnYWluLCBmb3IKKyAgIGRldGFpbHMgY29uc3VsdCB0aGUgTWljcm9zb2Z0IGRvY3VtZW50YXRpb24gZm9yIHRoZSA6Y2xhc3M6YElTaGVsbExpbmtgCisgICBpbnRlcmZhY2UuCisKKworVmlzdGEgVXNlciBBY2Nlc3MgQ29udHJvbCAoVUFDKQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitTdGFydGluZyB3aXRoIFB5dGhvbiAyLjYsIGJkaXN0X3dpbmluc3Qgc3VwcG9ydHMgYSA6b3B0aW9uOmAtLXVzZXItYWNjZXNzLWNvbnRyb2xgCitvcHRpb24uICBUaGUgZGVmYXVsdCBpcyAnbm9uZScgKG1lYW5pbmcgbm8gVUFDIGhhbmRsaW5nIGlzIGRvbmUpLCBhbmQgb3RoZXIKK3ZhbGlkIHZhbHVlcyBhcmUgJ2F1dG8nIChtZWFuaW5nIHByb21wdCBmb3IgVUFDIGVsZXZhdGlvbiBpZiBQeXRob24gd2FzCitpbnN0YWxsZWQgZm9yIGFsbCB1c2VycykgYW5kICdmb3JjZScgKG1lYW5pbmcgYWx3YXlzIHByb21wdCBmb3IgZWxldmF0aW9uKS4KZGlmZiAtLWdpdCBhL0RvYy9wYWNrYWdpbmcvY29tbWFuZGhvb2tzLnJzdCBiL0RvYy9wYWNrYWdpbmcvY29tbWFuZGhvb2tzLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMjYxZDAwCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9jb21tYW5kaG9va3MucnN0CkBAIC0wLDAgKzEsNDcgQEAKKy4uIFRPRE8gaW50ZWdyYXRlIHRoaXMgaW4gY29tbWFuZHJlZiBhbmQgY29uZmlnZmlsZQorCisuLiBfcGFja2FnaW5nLWNvbW1hbmQtaG9va3M6CisKKz09PT09PT09PT09PT0KK0NvbW1hbmQgaG9va3MKKz09PT09PT09PT09PT0KKworUGFja2FnaW5nIHByb3ZpZGVzIGEgd2F5IG9mIGV4dGVuZGluZyBpdHMgY29tbWFuZHMgYnkgdGhlIHVzZSBvZiBwcmUtIGFuZAorcG9zdC1jb21tYW5kIGhvb2tzLiAgSG9va3MgYXJlIFB5dGhvbiBmdW5jdGlvbnMgKG9yIGFueSBjYWxsYWJsZSBvYmplY3QpIHRoYXQKK3Rha2UgYSBjb21tYW5kIG9iamVjdCBhcyBhcmd1bWVudC4gIFRoZXkncmUgc3BlY2lmaWVkIGluIDpyZWY6YGNvbmZpZyBmaWxlcworPHBhY2thZ2luZy1jb25maWctZmlsZW5hbWVzPmAgdXNpbmcgdGhlaXIgZnVsbHkgcXVhbGlmaWVkIG5hbWVzLiAgQWZ0ZXIgYQorY29tbWFuZCBpcyBmaW5hbGl6ZWQgKGl0cyBvcHRpb25zIGFyZSBwcm9jZXNzZWQpLCB0aGUgcHJlLWNvbW1hbmQgaG9va3MgYXJlCitleGVjdXRlZCwgdGhlbiB0aGUgY29tbWFuZCBpdHNlbGYgaXMgcnVuLCBhbmQgZmluYWxseSB0aGUgcG9zdC1jb21tYW5kIGhvb2tzIGFyZQorZXhlY3V0ZWQuCisKK1NlZSBhbHNvIGdsb2JhbCBzZXR1cCBob29rcyBpbiA6cmVmOmBzZXR1cGNmZy1zcGVjYC4KKworCisuLiBfcGFja2FnaW5nLWZpbmRpbmctaG9va3M6CisKK0ZpbmRpbmcgaG9va3MKKz09PT09PT09PT09PT0KKworQXMgYSBob29rIGlzIGNvbmZpZ3VyZWQgd2l0aCBhIFB5dGhvbiBkb3R0ZWQgbmFtZSwgaXQgbXVzdCBlaXRoZXIgYmUgZGVmaW5lZCBpbgorYSBtb2R1bGUgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIG9yIGluIGEgbW9kdWxlIHByZXNlbnQgaW4gdGhlIHByb2plY3QKK2RpcmVjdG9yeSwgd2hlcmUgdGhlIDpmaWxlOmBzZXR1cC5jZmdgIGZpbGUgbGl2ZXM6OgorCisgICMgZmlsZTogX3NldHVwaG9va3MucHkKKworICBkZWYgaG9vayhpbnN0YWxsX2NtZCk6CisgICAgICBtZXRhZGF0YSA9IGluc3RhbGxfY21kLmRpc3QubWV0YWRhdGEKKyAgICAgIHByaW50KCdIb29rZWQgd2hpbGUgaW5zdGFsbGluZyAlciAlcyEnICUgKG1ldGFkYXRhWydOYW1lJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YVsnVmVyc2lvbiddKSkKKworVGhlbiB5b3UgbmVlZCB0byBjb25maWd1cmUgaXQgaW4gOmZpbGU6YHNldHVwLmNmZ2A6OgorCisgIFtpbnN0YWxsX2Rpc3RdCisgIHByZS1ob29rLmEgPSBfc2V0dXBob29rcy5ob29rCisKK1BhY2thZ2luZyB3aWxsIGFkZCB0aGUgcHJvamVjdCBkaXJlY3RvcnkgdG8gOmRhdGE6YHN5cy5wYXRoYCBhbmQgZmluZCB0aGUKK2BgX3NldHVwaG9va3NgYCBtb2R1bGUuCisKK0hvb2tzIGRlZmluZWQgaW4gZGlmZmVyZW50IGNvbmZpZyBmaWxlcyAoc3lzdGVtLXdpZGUsIHVzZXItd2lkZSBhbmQKK3Byb2plY3Qtd2lkZSkgZG8gbm90IG92ZXJyaWRlIGVhY2ggb3RoZXIgYXMgbG9uZyBhcyB0aGV5IGFyZSBzcGVjaWZpZWQgd2l0aAorZGlmZmVyZW50IGFsaWFzZXMgKGFkZGl0aW9uYWwgbmFtZXMgYWZ0ZXIgdGhlIGRvdCkuICBUaGUgYWxpYXMgaW4gdGhlIGV4YW1wbGUKK2Fib3ZlIGlzIGBgYWBgLgpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9jb21tYW5kcmVmLnJzdCBiL0RvYy9wYWNrYWdpbmcvY29tbWFuZHJlZi5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjE2NWI1NgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9wYWNrYWdpbmcvY29tbWFuZHJlZi5yc3QKQEAgLTAsMCArMSwzNzQgQEAKKy4uIF9wYWNrYWdpbmctY29tbWFuZC1yZWZlcmVuY2U6CisKKyoqKioqKioqKioqKioqKioqCitDb21tYW5kIFJlZmVyZW5jZQorKioqKioqKioqKioqKioqKioKKworVGhpcyByZWZlcmVuY2UgYnJpZWZseSBkb2N1bWVudHMgYWxsIHN0YW5kYXJkIFBhY2thZ2luZyBjb21tYW5kcyBhbmQgc29tZSBvZgordGhlaXIgb3B0aW9ucy4KKworLi4gRklYTUUgZG9lcyBub3Qgd29yazogVXNlIHB5c2V0dXAgcnVuIC0taGVscC1jb21tYW5kcyB0byBsaXN0IGFsbAorICAgc3RhbmRhcmQgYW5kIGV4dHJhIGNvbW1hbmRzIGF2YWlsYXZibGUgb24geW91ciBzeXN0ZW0sIHdpdGggdGhlaXIKKyAgIGRlc2NyaXB0aW9uLiAgVXNlIHB5c2V0dXAgcnVuIDxjb21tYW5kPiAtLWhlbHAgdG8gZ2V0IGhlbHAgYWJvdXQgdGhlIG9wdGlvbnMKKyAgIG9mIG9uZSBjb21tYW5kLgorCisuLiBYWFggc2VjdGlvbnMgZnJvbSB0aGlzIGRvY3VtZW50IHNob3VsZCBiZSBtZXJnZWQgd2l0aCBvdGhlciBkb2NzIChlLmcuIGNoZWNrCisgICBhbmQgdXBsb2FkIHdpdGggdXBsb2FkaW5nLnJzdCwgaW5zdGFsbF8qIHdpdGggaW5zdGFsbC9pbnN0YWxsLnJzdCwgZXRjLik7CisgICB0aGVyZSBpcyBubyB2YWx1ZSBpbiBwYXJ0aWFsbHkgZHVwbGljYXRpbmcgaW5mb3JtYXRpb24uICB0aGlzIGZpbGUgY291bGQKKyAgIGhvd2V2ZXIgc2VydmUgYXMgYW4gaW5kZXgsIGkuZS4ganVzdCBhIGxpc3Qgb2YgYWxsIGNvbW1hbmRzIHdpdGggbGlua3MgdG8KKyAgIGV2ZXJ5IHNlY3Rpb24gdGhhdCBkZXNjcmliZXMgb3B0aW9ucyBvciB1c2FnZQorCisKK1ByZXBhcmluZyBkaXN0cmlidXRpb25zCis9PT09PT09PT09PT09PT09PT09PT09PQorCis6Y29tbWFuZDpgY2hlY2tgCistLS0tLS0tLS0tLS0tLS0tCisKK1BlcmZvcm0gc29tZSB0ZXN0cyBvbiB0aGUgbWV0YWRhdGEgb2YgYSBkaXN0cmlidXRpb24uCisKK0ZvciBleGFtcGxlLCBpdCB2ZXJpZmllcyB0aGF0IGFsbCByZXF1aXJlZCBtZXRhZGF0YSBmaWVsZHMgYXJlIHByb3ZpZGVkIGluIHRoZQorOmZpbGU6YHNldHVwLmNmZ2AgZmlsZS4KKworLi4gVE9ETyBkb2N1bWVudCByZVNUIGNoZWNrcworCisKKzpjb21tYW5kOmB0ZXN0YAorLS0tLS0tLS0tLS0tLS0tCisKK1J1biBhIHRlc3Qgc3VpdGUuCisKK1doZW4gZG9pbmcgdGVzdC1kcml2ZW4gZGV2ZWxvcG1lbnQsIG9yIHJ1bm5pbmcgYXV0b21hdGVkIGJ1aWxkcyB0aGF0IG5lZWQKK3Rlc3RpbmcgYmVmb3JlIHRoZXkgYXJlIGluc3RhbGxlZCBmb3IgZG93bmxvYWRpbmcgb3IgdXNlLCBpdCdzIG9mdGVuIHVzZWZ1bCB0bworYmUgYWJsZSB0byBydW4gYSBwcm9qZWN0J3MgdW5pdCB0ZXN0cyB3aXRob3V0IGFjdHVhbGx5IGluc3RhbGxpbmcgdGhlIHByb2plY3QKK2FueXdoZXJlLiAgVGhlIDpjb21tYW5kOmB0ZXN0YCBjb21tYW5kIHJ1bnMgcHJvamVjdCdzIHVuaXQgdGVzdHMgd2l0aG91dAorYWN0dWFsbHkgaW5zdGFsbGluZyBpdCwgYnkgdGVtcG9yYXJpbHkgcHV0dGluZyB0aGUgcHJvamVjdCdzIHNvdXJjZSBvbgorOmRhdGE6YHN5cy5wYXRoYCwgYWZ0ZXIgZmlyc3QgcnVubmluZyA6Y29tbWFuZDpgYnVpbGRfZXh0IC1pYCB0byBlbnN1cmUgdGhhdCBhbnkKK0MgZXh0ZW5zaW9ucyBhcmUgYnVpbHQuCisKK1lvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBpbiBvbmUgb2YgdHdvIHdheXM6IGVpdGhlciBieSBzcGVjaWZ5aW5nIGEKK3VuaXR0ZXN0LWNvbXBhdGlibGUgdGVzdCBzdWl0ZSBmb3IgeW91ciBwcm9qZWN0IChvciBhbnkgY2FsbGFibGUgdGhhdCByZXR1cm5zCitpdCkgb3IgYnkgcGFzc2luZyBhIHRlc3QgcnVubmVyIGZ1bmN0aW9uIHRoYXQgd2lsbCBydW4geW91ciB0ZXN0cyBhbmQgZGlzcGxheQorcmVzdWx0cyBpbiB0aGUgY29uc29sZS4gIEJvdGggb3B0aW9ucyB0YWtlIGEgUHl0aG9uIGRvdHRlZCBuYW1lIGluIHRoZSBmb3JtCitgYHBhY2thZ2UubW9kdWxlLmNhbGxhYmxlYGAgdG8gc3BlY2lmeSB0aGUgb2JqZWN0IHRvIHVzZS4KKworSWYgbm9uZSBvZiB0aGVzZSBvcHRpb25zIGFyZSBzcGVjaWZpZWQsIFBhY2thZ2luZyB3aWxsIHRyeSB0byBwZXJmb3JtIHRlc3QKK2Rpc2NvdmVyeSB1c2luZyBlaXRoZXIgdW5pdHRlc3QgKGZvciBQeXRob24gMy4yIGFuZCBoaWdoZXIpIG9yIHVuaXR0ZXN0MiAoZm9yCitvbGRlciB2ZXJzaW9ucywgaWYgaW5zdGFsbGVkKS4KKworLi4gdGhpcyBpcyBhIHBzZXVkby1jb21tYW5kIG5hbWUgdXNlZCB0byBkaXNhbWJpZ3VhdGUgdGhlIG9wdGlvbnMgaW4gaW5kZXhlcyBhbmQKKyAgIGxpbmtzCisuLiBwcm9ncmFtOjogcGFja2FnaW5nIHRlc3QKKworLi4gY21kb3B0aW9uOjogLS1zdWl0ZT1OQU1FLCAtcyBOQU1FCisKKyAgIFNwZWNpZnkgdGhlIHRlc3Qgc3VpdGUgKG9yIG1vZHVsZSwgY2xhc3MsIG9yIG1ldGhvZCkgdG8gYmUgcnVuLiAgVGhlIGRlZmF1bHQKKyAgIGZvciB0aGlzIG9wdGlvbiBjYW4gYmUgc2V0IGJ5IGluIHRoZSBwcm9qZWN0J3MgOmZpbGU6YHNldHVwLmNmZ2AgZmlsZToKKworICAgLi4gY29kZS1ibG9jazo6IGNmZworCisgICAgICBbdGVzdF0KKyAgICAgIHN1aXRlID0gbXlwYWNrYWdlLnRlc3RzLmdldF9hbGxfdGVzdHMKKworLi4gY21kb3B0aW9uOjogLS1ydW5uZXI9TkFNRSwgLXIgTkFNRQorCisgICBTcGVjaWZ5IHRoZSB0ZXN0IHJ1bm5lciB0byBiZSBjYWxsZWQuCisKKworOmNvbW1hbmQ6YGNvbmZpZ2AKKy0tLS0tLS0tLS0tLS0tLS0tCisKK1BlcmZvcm0gZGlzdHJpYnV0aW9uIGNvbmZpZ3VyYXRpb24uCisKKworVGhlIGJ1aWxkIHN0ZXAKKz09PT09PT09PT09PT09CisKK1RoaXMgc3RlcCBpcyBtYWlubHkgdXNlZnVsIHRvIGNvbXBpbGUgQy9DKysgbGlicmFyaWVzIG9yIGV4dGVuc2lvbiBtb2R1bGVzLiAgVGhlCitidWlsZCBjb21tYW5kcyBjYW4gYmUgcnVuIG1hbnVhbGx5IHRvIGNoZWNrIGZvciBzeW50YXggZXJyb3JzIG9yIHBhY2thZ2luZworaXNzdWVzIChmb3IgZXhhbXBsZSBpZiB0aGUgYWRkaXRpb24gb2YgYSBuZXcgc291cmNlIGZpbGUgd2FzIGZvcmdvdHRlbiBpbiB0aGUKKzpmaWxlOmBzZXR1cC5jZmdgIGZpbGUpLCBhbmQgaXMgYWxzbyBydW4gYXV0b21hdGljYWxseSBieSBjb21tYW5kcyB3aGljaCBuZWVkCitpdC4gIFBhY2thZ2luZyBjaGVja3MgdGhlIG10aW1lIG9mIHNvdXJjZSBhbmQgYnVpbHQgZmlsZXMgdG8gYXZvaWQgcmUtYnVpbGRpbmcKK2lmIGl0J3Mgbm90IG5lY2Vzc2FyeS4KKworCis6Y29tbWFuZDpgYnVpbGRgCistLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGFsbCBmaWxlcyBvZiBhIGRpc3RyaWJ1dGlvbiwgZGVsZWdhdGluZyB0byB0aGUgb3RoZXIgOmNvbW1hbmQ6YGJ1aWxkXypgCitjb21tYW5kcyB0byBkbyB0aGUgd29yay4KKworCis6Y29tbWFuZDpgYnVpbGRfY2xpYmAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitCdWlsZCBDIGxpYnJhcmllcy4KKworCis6Y29tbWFuZDpgYnVpbGRfZXh0YAorLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworQnVpbGQgQy9DKysgZXh0ZW5zaW9uIG1vZHVsZXMuCisKKworOmNvbW1hbmQ6YGJ1aWxkX3B5YAorLS0tLS0tLS0tLS0tLS0tLS0tLQorCitCdWlsZCB0aGUgUHl0aG9uIG1vZHVsZXMgKGp1c3QgY29weSB0aGVtIHRvIHRoZSBidWlsZCBkaXJlY3RvcnkpIGFuZAorOnRlcm06YGJ5dGUtY29tcGlsZSA8Ynl0ZWNvZGU+YCB0aGVtIHRvIDpmaWxlOmAucHljYCBhbmQvb3IgOmZpbGU6YC5weW9gIGZpbGVzLgorCitUaGUgYnl0ZSBjb21waWxhdGlvbiBpcyBjb250cm9sbGVkIGJ5IHR3byBzZXRzIG9mIG9wdGlvbnM6CisKKy0gYGAtLWNvbXBpbGVgYCBhbmQgYGAtLW5vLWNvbXBpbGVgYCBhcmUgdXNlZCB0byBjb250cm9sIHRoZSBjcmVhdGlvbiBvZgorICA6ZmlsZTpgLnB5Y2AgZmlsZXM7IHRoZSBkZWZhdWx0IGlzIGBgLS1uby1jb21waWxlYGAuCisKKy0gYGAtLW9wdGltaXplIE5gYCAob3IgYGAtT05gYCkgaXMgdXNlZCB0byBjb250cm9sIHRoZSBjcmVhdGlvbiBvZiA6ZmlsZTpgLnB5b2AKKyAgZmlsZXM6IGBgLU8xYGAgdHVybnMgb24gYmFzaWMgb3B0aW1pemF0aW9ucywgYGAtTzJgYCBhbHNvIGRpc2NhcmRzIGRvY3N0cmluZ3MsCisgIGBgLU8wYGAgZG9lcyBub3QgY3JlYXRlIDpmaWxlOmAucHlvYCBmaWxlczsgdGhlIGRlZmF1bHQgaXMgYGAtTzBgYC4KKworWW91IGNhbiBtaXggYW5kIG1hdGNoIHRoZXNlIG9wdGlvbnM6IGZvciBleGFtcGxlLCBgYC0tbm8tY29tcGlsZSAtLW9wdGltaXplIDJgYAord2lsbCBjcmVhdGUgOmZpbGU6YC5weW9gIGZpbGVzIGJ1dCBubyA6ZmlsZTpgLnB5Y2AgZmlsZXMuCisKKy4uIFhYWCB0aGVzZSBvcHRpb24gcm9sZXMgZG8gbm90IHdvcmsKKworQ2FsbGluZyBQeXRob24gd2l0aCA6b3B0aW9uOmAtT2Agb3IgOm9wdGlvbjpgLUJgIGRvZXMgbm90IGNvbnRyb2wgdGhlIGNyZWF0aW9uCitvZiBieXRlY29kZSBmaWxlcywgb25seSB0aGUgb3B0aW9ucyBkZXNjcmliZWQgYWJvdmUgZG8uCisKKworOmNvbW1hbmQ6YGJ1aWxkX3NjcmlwdHNgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0J1aWxkIHRoZSBzY3JpcHRzIChqdXN0IGNvcHkgdGhlbSB0byB0aGUgYnVpbGQgZGlyZWN0b3J5IGFuZCBhZGp1c3QgdGhlaXIKK3NoZWJhbmcgaWYgdGhleSdyZSBQeXRob24gc2NyaXB0cykuCisKKworOmNvbW1hbmQ6YGNsZWFuYAorLS0tLS0tLS0tLS0tLS0tLQorCitDbGVhbiB0aGUgYnVpbGQgdHJlZSBvZiB0aGUgcmVsZWFzZS4KKworLi4gcHJvZ3JhbTo6IHBhY2thZ2luZyBjbGVhbgorCisuLiBjbWRvcHRpb246OiAtLWFsbCwgLWEKKworICAgUmVtb3ZlIGJ1aWxkIGRpcmVjdG9yaWVzIGZvciBtb2R1bGVzLCBzY3JpcHRzLCBldGMuLCBub3Qgb25seSB0ZW1wb3JhcnkgYnVpbGQKKyAgIGJ5LXByb2R1Y3RzLgorCisKK0NyZWF0aW5nIHNvdXJjZSBhbmQgYnVpbHQgZGlzdHJpYnV0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKzpjb21tYW5kOmBzZGlzdGAKKy0tLS0tLS0tLS0tLS0tLS0KKworQnVpbGQgYSBzb3VyY2UgZGlzdHJpYnV0aW9uIGZvciBhIHJlbGVhc2UuCisKK0l0IGlzIHJlY29tbWVuZGVkIHRoYXQgeW91IGFsd2F5cyBidWlsZCBhbmQgdXBsb2FkIGEgc291cmNlIGRpc3RyaWJ1dGlvbi4gIFVzZXJzCitvZiBPU2VzIHdpdGggZWFzeSBhY2Nlc3MgdG8gY29tcGlsZXJzIGFuZCB1c2VycyBvZiBhZHZhbmNlZCBwYWNrYWdpbmcgdG9vbHMgd2lsbAorcHJlZmVyIHRvIGNvbXBpbGUgZnJvbSBzb3VyY2UgcmF0aGVyIHRoYW4gdXNpbmcgcHJlLWJ1aWx0IGRpc3RyaWJ1dGlvbnMuICBGb3IKK1dpbmRvd3MgdXNlcnMsIHByb3ZpZGluZyBhIGJpbmFyeSBpbnN0YWxsZXIgaXMgYWxzbyByZWNvbW1lbmRlZCBwcmFjdGljZS4KKworCis6Y29tbWFuZDpgYmRpc3RgCistLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGEgYmluYXJ5IGRpc3RyaWJ1dGlvbiBmb3IgYSByZWxlYXNlLgorCitUaGlzIGNvbW1hbmQgd2lsbCBjYWxsIG90aGVyIDpjb21tYW5kOmBiZGlzdF8qYCBjb21tYW5kcyB0byBjcmVhdGUgb25lIG9yIG1vcmUKK2Rpc3RyaWJ1dGlvbnMgZGVwZW5kaW5nIG9uIHRoZSBvcHRpb25zIGdpdmVuLiAgVGhlIGRlZmF1bHQgaXMgdG8gY3JlYXRlIGEKKy50YXIuZ3ogYXJjaGl2ZSBvbiBVbml4IGFuZCBhIHppcCBhcmNoaXZlIG9uIFdpbmRvd3Mgb3IgT1MvMi4KKworLi4gcHJvZ3JhbTo6IHBhY2thZ2luZyBiZGlzdAorCisuLiBjbWRvcHRpb246OiAtLWZvcm1hdHMKKworICAgQmluYXJ5IGZvcm1hdHMgdG8gYnVpbGQgKGNvbW1hLXNlcGFyYXRlZCBsaXN0KS4KKworLi4gY21kb3B0aW9uOjogLS1zaG93LWZvcm1hdHMKKworICAgRHVtcCBsaXN0IG9mIGF2YWlsYWJsZSBmb3JtYXRzLgorCisKKzpjb21tYW5kOmBiZGlzdF9kdW1iYAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGEgImR1bWIiIGluc3RhbGxlciwgYSBzaW1wbGUgYXJjaGl2ZSBvZiBmaWxlcyB0aGF0IGNvdWxkIGJlIHVucGFja2VkIHVuZGVyCitgYCRwcmVmaXhgYCBvciBgYCRleGVjX3ByZWZpeGBgLgorCisKKzpjb21tYW5kOmBiZGlzdF93aW5pbnN0YAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGEgV2luZG93cyBpbnN0YWxsZXIuCisKKworOmNvbW1hbmQ6YGJkaXN0X21zaWAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGEgYE1pY3Jvc29mdCBJbnN0YWxsZXJgXyAoLm1zaSkgZmlsZS4KKworLi4gX01pY3Jvc29mdCBJbnN0YWxsZXI6IGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9jYzE4NTY4OChWUy44NSkuYXNweAorCitJbiBtb3N0IGNhc2VzLCB0aGUgOmNvbW1hbmQ6YGJkaXN0X21zaWAgaW5zdGFsbGVyIGlzIGEgYmV0dGVyIGNob2ljZSB0aGFuIHRoZQorOmNvbW1hbmQ6YGJkaXN0X3dpbmluc3RgIGluc3RhbGxlciwgYmVjYXVzZSBpdCBwcm92aWRlcyBiZXR0ZXIgc3VwcG9ydCBmb3IgV2luNjQKK3BsYXRmb3JtcywgYWxsb3dzIGFkbWluaXN0cmF0b3JzIHRvIHBlcmZvcm0gbm9uLWludGVyYWN0aXZlIGluc3RhbGxhdGlvbnMsIGFuZAorYWxsb3dzIGluc3RhbGxhdGlvbiB0aHJvdWdoIGdyb3VwIHBvbGljaWVzLgorCisKK1B1Ymxpc2hpbmcgZGlzdHJpYnV0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09CisKKzpjb21tYW5kOmByZWdpc3RlcmAKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhpcyBjb21tYW5kIHJlZ2lzdGVycyB0aGUgY3VycmVudCByZWxlYXNlIHdpdGggdGhlIFB5dGhvbiBQYWNrYWdlIEluZGV4LiAgVGhpcworaXMgZGVzY3JpYmVkIGluIG1vcmUgZGV0YWlsIGluIDpQRVA6YDMwMWAuCisKKy4uIFRPRE8gZXhwbGFpbiB1c2VyIGFuZCBwcm9qZWN0IHJlZ2lzdHJhdGlvbiB3aXRoIHRoZSB3ZWIgVUkKKworCis6Y29tbWFuZDpgdXBsb2FkYAorLS0tLS0tLS0tLS0tLS0tLS0KKworVXBsb2FkIHNvdXJjZSBhbmQvb3IgYmluYXJ5IGRpc3RyaWJ1dGlvbnMgdG8gUHlQSS4KKworVGhlIGRpc3RyaWJ1dGlvbnMgaGF2ZSB0byBiZSBidWlsdCBvbiB0aGUgc2FtZSBjb21tYW5kIGxpbmUgYXMgdGhlCis6Y29tbWFuZDpgdXBsb2FkYCBjb21tYW5kOyBzZWUgOnJlZjpgcGFja2FnaW5nLXBhY2thZ2UtdXBsb2FkYCBmb3IgbW9yZSBpbmZvLgorCisuLiBwcm9ncmFtOjogcGFja2FnaW5nIHVwbG9hZAorCisuLiBjbWRvcHRpb246OiAtLXNpZ24sIC1zCisKKyAgIFNpZ24gZWFjaCB1cGxvYWRlZCBmaWxlIHVzaW5nIEdQRyAoR05VIFByaXZhY3kgR3VhcmQpLiAgVGhlIGBgZ3BnYGAgcHJvZ3JhbQorICAgbXVzdCBiZSBhdmFpbGFibGUgZm9yIGV4ZWN1dGlvbiBvbiB0aGUgc3lzdGVtIGBgUEFUSGBgLgorCisuLiBjbWRvcHRpb246OiAtLWlkZW50aXR5PU5BTUUsIC1pIE5BTUUKKworICAgU3BlY2lmeSB0aGUgaWRlbnRpdHkgb3Iga2V5IG5hbWUgZm9yIEdQRyB0byB1c2Ugd2hlbiBzaWduaW5nLiAgVGhlIHZhbHVlIG9mCisgICB0aGlzIG9wdGlvbiB3aWxsIGJlIHBhc3NlZCB0aHJvdWdoIHRoZSBgYC0tbG9jYWwtdXNlcmBgIG9wdGlvbiBvZiB0aGUKKyAgIGBgZ3BnYGAgcHJvZ3JhbS4KKworLi4gY21kb3B0aW9uOjogLS1zaG93LXJlc3BvbnNlCisKKyAgIERpc3BsYXkgdGhlIGZ1bGwgcmVzcG9uc2UgdGV4dCBmcm9tIHNlcnZlcjsgdGhpcyBpcyB1c2VmdWwgZm9yIGRlYnVnZ2luZworICAgUHlQSSBwcm9ibGVtcy4KKworLi4gY21kb3B0aW9uOjogLS1yZXBvc2l0b3J5PVVSTCwgLXIgVVJMCisKKyAgIFRoZSBVUkwgb2YgdGhlIHJlcG9zaXRvcnkgdG8gdXBsb2FkIHRvLiAgRGVmYXVsdHMgdG8KKyAgIGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaSAoaS5lLiwgdGhlIG1haW4gUHlQSSBpbnN0YWxsYXRpb24pLgorCisuLiBjbWRvcHRpb246OiAtLXVwbG9hZC1kb2NzCisKKyAgIEFsc28gcnVuIDpjb21tYW5kOmB1cGxvYWRfZG9jc2AuICBNYWlubHkgdXNlZnVsIGFzIGEgZGVmYXVsdCB2YWx1ZSBpbgorICAgOmZpbGU6YHNldHVwLmNmZ2AgKG9uIHRoZSBjb21tYW5kIGxpbmUsIGl0J3Mgc2hvcnRlciB0byBqdXN0IHR5cGUgYm90aAorICAgY29tbWFuZHMpLgorCisKKzpjb21tYW5kOmB1cGxvYWRfZG9jc2AKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVXBsb2FkIEhUTUwgZG9jdW1lbnRhdGlvbiB0byBQeVBJLgorCitQeVBJIG5vdyBzdXBwb3J0cyBwdWJsaXNoaW5nIHByb2plY3QgZG9jdW1lbnRhdGlvbiBhdCBhIFVSSSBvZiB0aGUgZm9ybQorYGBodHRwOi8vcGFja2FnZXMucHl0aG9uLm9yZy88cHJvamVjdD5gYC4gIDpjb21tYW5kOmB1cGxvYWRfZG9jc2AgIHdpbGwgY3JlYXRlCit0aGUgbmVjZXNzYXJ5IHppcCBmaWxlIG91dCBvZiBhIGRvY3VtZW50YXRpb24gZGlyZWN0b3J5IGFuZCB3aWxsIHBvc3QgdG8gdGhlCityZXBvc2l0b3J5LgorCitOb3RlIHRoYXQgdG8gdXBsb2FkIHRoZSBkb2N1bWVudGF0aW9uIG9mIGEgcHJvamVjdCwgdGhlIGNvcnJlc3BvbmRpbmcgdmVyc2lvbgorbXVzdCBhbHJlYWR5IGJlIHJlZ2lzdGVyZWQgd2l0aCBQeVBJLCB1c2luZyB0aGUgOmNvbW1hbmQ6YHJlZ2lzdGVyYCBjb21tYW5kIC0tLQoranVzdCBsaWtlIHdpdGggOmNvbW1hbmQ6YHVwbG9hZGAuCisKK0Fzc3VtaW5nIHRoZXJlIGlzIGFuIGBgRXhhbXBsZWBgIHByb2plY3Qgd2l0aCBkb2N1bWVudGF0aW9uIGluIHRoZSBzdWJkaXJlY3RvcnkKKzpmaWxlOmBkb2NzYCwgZm9yIGV4YW1wbGU6OgorCisgICBFeGFtcGxlLworICAgICAgZXhhbXBsZS5weQorICAgICAgc2V0dXAuY2ZnCisgICAgICBkb2NzLworICAgICAgICAgYnVpbGQvCisgICAgICAgICAgICBodG1sLworICAgICAgICAgICAgICAgaW5kZXguaHRtbAorICAgICAgICAgICAgICAgdGlwc190cmlja3MuaHRtbAorICAgICAgICAgY29uZi5weQorICAgICAgICAgaW5kZXgudHh0CisgICAgICAgICB0aXBzX3RyaWNrcy50eHQKKworWW91IGNhbiBzaW1wbHkgc3BlY2lmeSB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIEhUTUwgZmlsZXMgaW4geW91cgorOmZpbGU6YHNldHVwLmNmZ2AgZmlsZToKKworLi4gY29kZS1ibG9jazo6IGNmZworCisgICBbdXBsb2FkX2RvY3NdCisgICB1cGxvYWQtZGlyID0gZG9jcy9idWlsZC9odG1sCisKKworLi4gcHJvZ3JhbTo6IHBhY2thZ2luZyB1cGxvYWRfZG9jcworCisuLiBjbWRvcHRpb246OiAtLXVwbG9hZC1kaXIKKworICAgVGhlIGRpcmVjdG9yeSB0byBiZSB1cGxvYWRlZCB0byB0aGUgcmVwb3NpdG9yeS4gQnkgZGVmYXVsdCBkb2N1bWVudGF0aW9uCisgICBpcyBzZWFyY2hlZCBmb3IgaW4gYGBkb2NzYGAgKG9yIGBgZG9jYGApIGRpcmVjdG9yeSBpbiBwcm9qZWN0IHJvb3QuCisKKy4uIGNtZG9wdGlvbjo6IC0tc2hvdy1yZXNwb25zZQorCisgICBEaXNwbGF5IHRoZSBmdWxsIHJlc3BvbnNlIHRleHQgZnJvbSBzZXJ2ZXI7IHRoaXMgaXMgdXNlZnVsIGZvciBkZWJ1Z2dpbmcKKyAgIFB5UEkgcHJvYmxlbXMuCisKKy4uIGNtZG9wdGlvbjo6IC0tcmVwb3NpdG9yeT1VUkwsIC1yIFVSTAorCisgICBUaGUgVVJMIG9mIHRoZSByZXBvc2l0b3J5IHRvIHVwbG9hZCB0by4gIERlZmF1bHRzIHRvCisgICBodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGkgKGkuZS4sIHRoZSBtYWluIFB5UEkgaW5zdGFsbGF0aW9uKS4KKworCitUaGUgaW5zdGFsbCBzdGVwCis9PT09PT09PT09PT09PT09CisKK1RoZXNlIGNvbW1hbmRzIGFyZSB1c2VkIGJ5IGVuZC11c2VycyBvZiBhIHByb2plY3QgdXNpbmcgOnByb2dyYW06YHB5c2V0dXBgIG9yCithbm90aGVyIGNvbXBhdGlibGUgaW5zdGFsbGVyLiAgRWFjaCBjb21tYW5kIHdpbGwgcnVuIHRoZSBjb3JyZXNwb25kaW5nCis6Y29tbWFuZDpgYnVpbGRfKmAgY29tbWFuZCBhbmQgdGhlbiBtb3ZlIHRoZSBidWlsdCBmaWxlcyB0byB0aGVpciBkZXN0aW5hdGlvbiBvbgordGhlIHRhcmdldCBzeXN0ZW0uCisKKworOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0luc3RhbGwgYSBkaXN0cmlidXRpb24sIGRlbGVnYXRpbmcgdG8gdGhlIG90aGVyIDpjb21tYW5kOmBpbnN0YWxsXypgIGNvbW1hbmRzIHRvCitkbyB0aGUgd29yay4gIFNlZSA6cmVmOmBwYWNrYWdpbmctaG93LWluc3RhbGwtd29ya3NgIGZvciBjb21wbGV0ZSB1c2FnZQoraW5zdHJ1Y3Rpb25zLgorCisKKzpjb21tYW5kOmBpbnN0YWxsX2RhdGFgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitJbnN0YWxsIGRhdGEgZmlsZXMuCisKKworOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGluZm9gCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworSW5zdGFsbCBmaWxlcyByZWNvcmRpbmcgZGV0YWlscyBvZiB0aGUgaW5zdGFsbGF0aW9uIGFzIHNwZWNpZmllZCBpbiA6UEVQOmAzNzZgLgorCisKKzpjb21tYW5kOmBpbnN0YWxsX2hlYWRlcnNgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitJbnN0YWxsIEMvQysrIGhlYWRlciBmaWxlcy4KKworCis6Y29tbWFuZDpgaW5zdGFsbF9saWJgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0luc3RhbGwgYWxsIG1vZHVsZXMgKGV4dGVuc2lvbnMgYW5kIHB1cmUgUHl0aG9uKS4KKworLi4gWFhYIHdoYXQgYWJvdXQgQyBsaWJyYXJpZXMgY3JlYXRlZCB3aXRoIGJ1aWxkX2NsaWI/CisKK1NpbWlsYXJseSB0byBgYGJ1aWxkX3B5YGAsIHRoZXJlIGFyZSBvcHRpb25zIHRvIGNvbnRyb2wgdGhlIGNvbXBpbGF0aW9uIG9mCitQeXRob24gY29kZSB0byA6dGVybTpgYnl0ZWNvZGVgIGZpbGVzIChzZWUgYWJvdmUpLiAgQnkgZGVmYXVsdCwgOmZpbGU6YC5weWNgCitmaWxlcyB3aWxsIGJlIGNyZWF0ZWQgKGBgLS1jb21waWxlYGApIGFuZCA6ZmlsZTpgLnB5b2AgZmlsZXMgd2lsbCBub3QKKyhgYC0tb3B0aW1pemUgMGBgKS4KKworCis6Y29tbWFuZDpgaW5zdGFsbF9zY3JpcHRzYAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworSW5zdGFsbCBzY3JpcHRzLgpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9jb25maWdmaWxlLnJzdCBiL0RvYy9wYWNrYWdpbmcvY29uZmlnZmlsZS5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODI1YjVjYgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9wYWNrYWdpbmcvY29uZmlnZmlsZS5yc3QKQEAgLTAsMCArMSwxMjUgQEAKKy4uIF9wYWNrYWdpbmctc2V0dXAtY29uZmlnOgorCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK1dyaXRpbmcgdGhlIFNldHVwIENvbmZpZ3VyYXRpb24gRmlsZQorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisKK09mdGVuLCBpdCdzIG5vdCBwb3NzaWJsZSB0byB3cml0ZSBkb3duIGV2ZXJ5dGhpbmcgbmVlZGVkIHRvIGJ1aWxkIGEgZGlzdHJpYnV0aW9uCisqYSBwcmlvcmkqOiB5b3UgbWF5IG5lZWQgdG8gZ2V0IHNvbWUgaW5mb3JtYXRpb24gZnJvbSB0aGUgdXNlciwgb3IgZnJvbSB0aGUKK3VzZXIncyBzeXN0ZW0sIGluIG9yZGVyIHRvIHByb2NlZWQuICBBcyBsb25nIGFzIHRoYXQgaW5mb3JtYXRpb24gaXMgZmFpcmx5CitzaW1wbGUtLS1hIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBDIGhlYWRlciBmaWxlcyBvciBsaWJyYXJpZXMsIGZvcgorZXhhbXBsZS0tLXRoZW4gcHJvdmlkaW5nIGEgY29uZmlndXJhdGlvbiBmaWxlLCA6ZmlsZTpgc2V0dXAuY2ZnYCwgZm9yIHVzZXJzIHRvCitlZGl0IGlzIGEgY2hlYXAgYW5kIGVhc3kgd2F5IHRvIHNvbGljaXQgaXQuICBDb25maWd1cmF0aW9uIGZpbGVzIGFsc28gbGV0IHlvdQorcHJvdmlkZSBkZWZhdWx0IHZhbHVlcyBmb3IgYW55IGNvbW1hbmQgb3B0aW9uLCB3aGljaCB0aGUgaW5zdGFsbGVyIGNhbiB0aGVuCitvdmVycmlkZSBlaXRoZXIgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBlZGl0aW5nIHRoZSBjb25maWcgZmlsZS4KKworVGhlIHNldHVwIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyBhIHVzZWZ1bCBtaWRkbGUtZ3JvdW5kIGJldHdlZW4gdGhlIHNldHVwIHNjcmlwdAorLS0td2hpY2gsIGlkZWFsbHksIHdvdWxkIGJlIG9wYXF1ZSB0byBpbnN0YWxsZXJzIFsjXV8tLS1hbmQgdGhlIGNvbW1hbmQgbGluZSB0bwordGhlIHNldHVwIHNjcmlwdCwgd2hpY2ggaXMgb3V0c2lkZSBvZiB5b3VyIGNvbnRyb2wgYW5kIGVudGlyZWx5IHVwIHRvIHRoZQoraW5zdGFsbGVyLiAgSW4gZmFjdCwgOmZpbGU6YHNldHVwLmNmZ2AgKGFuZCBhbnkgb3RoZXIgRGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24KK2ZpbGVzIHByZXNlbnQgb24gdGhlIHRhcmdldCBzeXN0ZW0pIGFyZSBwcm9jZXNzZWQgYWZ0ZXIgdGhlIGNvbnRlbnRzIG9mIHRoZQorc2V0dXAgc2NyaXB0LCBidXQgYmVmb3JlIHRoZSBjb21tYW5kIGxpbmUuICBUaGlzIGhhcyAgc2V2ZXJhbCB1c2VmdWwKK2NvbnNlcXVlbmNlczoKKworLi4gSWYgeW91IGhhdmUgbW9yZSBhZHZhbmNlZCBuZWVkcywgc3VjaCBhcyBkZXRlcm1pbmluZyB3aGljaCBleHRlbnNpb25zIHRvCisgICBidWlsZCBiYXNlZCBvbiB3aGF0IGNhcGFiaWxpdGllcyBhcmUgcHJlc2VudCBvbiB0aGUgdGFyZ2V0IHN5c3RlbSwgdGhlbiB5b3UKKyAgIG5lZWQgdGhlIERpc3R1dGlscyBhdXRvLWNvbmZpZ3VyYXRpb24gZmFjaWxpdHkuICBUaGlzIHN0YXJ0ZWQgdG8gYXBwZWFyIGluCisgICBEaXN0dXRpbHMgMC45IGJ1dCwgYXMgb2YgdGhpcyB3cml0aW5nLCBpc24ndCBtYXR1cmUgb3Igc3RhYmxlIGVub3VnaCB5ZXQKKyAgIGZvciByZWFsLXdvcmxkIHVzZS4KKworKiBpbnN0YWxsZXJzIGNhbiBvdmVycmlkZSBzb21lIG9mIHdoYXQgeW91IHB1dCBpbiA6ZmlsZTpgc2V0dXAucHlgIGJ5IGVkaXRpbmcKKyAgOmZpbGU6YHNldHVwLmNmZ2AKKworKiB5b3UgY2FuIHByb3ZpZGUgbm9uLXN0YW5kYXJkIGRlZmF1bHRzIGZvciBvcHRpb25zIHRoYXQgYXJlIG5vdCBlYXNpbHkgc2V0IGluCisgIDpmaWxlOmBzZXR1cC5weWAKKworKiBpbnN0YWxsZXJzIGNhbiBvdmVycmlkZSBhbnl0aGluZyBpbiA6ZmlsZTpgc2V0dXAuY2ZnYCB1c2luZyB0aGUgY29tbWFuZC1saW5lCisgIG9wdGlvbnMgdG8gOmZpbGU6YHNldHVwLnB5YAorCitUaGUgYmFzaWMgc3ludGF4IG9mIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgaXMgc2ltcGxlOjoKKworICAgW2NvbW1hbmRdCisgICBvcHRpb24gPSB2YWx1ZQorICAgLi4uCisKK3doZXJlICpjb21tYW5kKiBpcyBvbmUgb2YgdGhlIERpc3R1dGlscyBjb21tYW5kcyAoZS5nLiA6Y29tbWFuZDpgYnVpbGRfcHlgLAorOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGApLCBhbmQgKm9wdGlvbiogaXMgb25lIG9mIHRoZSBvcHRpb25zIHRoYXQgY29tbWFuZCBzdXBwb3J0cy4KK0FueSBudW1iZXIgb2Ygb3B0aW9ucyBjYW4gYmUgc3VwcGxpZWQgZm9yIGVhY2ggY29tbWFuZCwgYW5kIGFueSBudW1iZXIgb2YKK2NvbW1hbmQgc2VjdGlvbnMgY2FuIGJlIGluY2x1ZGVkIGluIHRoZSBmaWxlLiAgQmxhbmsgbGluZXMgYXJlIGlnbm9yZWQsIGFzIGFyZQorY29tbWVudHMsIHdoaWNoIHJ1biBmcm9tIGEgYGAnIydgYCBjaGFyYWN0ZXIgdW50aWwgdGhlIGVuZCBvZiB0aGUgbGluZS4gIExvbmcKK29wdGlvbiB2YWx1ZXMgY2FuIGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBsaW5lcyBzaW1wbHkgYnkgaW5kZW50aW5nIHRoZQorY29udGludWF0aW9uIGxpbmVzLgorCitZb3UgY2FuIGZpbmQgb3V0IHRoZSBsaXN0IG9mIG9wdGlvbnMgc3VwcG9ydGVkIGJ5IGEgcGFydGljdWxhciBjb21tYW5kIHdpdGggdGhlCit1bml2ZXJzYWwgOm9wdGlvbjpgLS1oZWxwYCBvcHRpb24sIGUuZy4gOjoKKworICAgPiBweXRob24gc2V0dXAucHkgLS1oZWxwIGJ1aWxkX2V4dAorICAgWy4uLl0KKyAgIE9wdGlvbnMgZm9yICdidWlsZF9leHQnIGNvbW1hbmQ6CisgICAgIC0tYnVpbGQtbGliICgtYikgICAgIGRpcmVjdG9yeSBmb3IgY29tcGlsZWQgZXh0ZW5zaW9uIG1vZHVsZXMKKyAgICAgLS1idWlsZC10ZW1wICgtdCkgICAgZGlyZWN0b3J5IGZvciB0ZW1wb3JhcnkgZmlsZXMgKGJ1aWxkIGJ5LXByb2R1Y3RzKQorICAgICAtLWlucGxhY2UgKC1pKSAgICAgICBpZ25vcmUgYnVpbGQtbGliIGFuZCBwdXQgY29tcGlsZWQgZXh0ZW5zaW9ucyBpbnRvIHRoZQorICAgICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgZGlyZWN0b3J5IGFsb25nc2lkZSB5b3VyIHB1cmUgUHl0aG9uIG1vZHVsZXMKKyAgICAgLS1pbmNsdWRlLWRpcnMgKC1JKSAgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIGhlYWRlciBmaWxlcworICAgICAtLWRlZmluZSAoLUQpICAgICAgICBDIHByZXByb2Nlc3NvciBtYWNyb3MgdG8gZGVmaW5lCisgICAgIC0tdW5kZWYgKC1VKSAgICAgICAgIEMgcHJlcHJvY2Vzc29yIG1hY3JvcyB0byB1bmRlZmluZQorICAgICAtLXN3aWctb3B0cyAgICAgICAgICBsaXN0IG9mIFNXSUcgY29tbWFuZC1saW5lIG9wdGlvbnMKKyAgIFsuLi5dCisKKy4uIFhYWCBkbyB3ZSB3YW50IHRvIHN1cHBvcnQgYGBzZXR1cC5weSAtLWhlbHAgbWV0YWRhdGFgYD8KKworTm90ZSB0aGF0IGFuIG9wdGlvbiBzcGVsbGVkIDpvcHRpb246YC0tZm9vLWJhcmAgb24gdGhlIGNvbW1hbmQgbGluZSAgaXMgc3BlbGxlZAorOm9wdGlvbjpgZm9vX2JhcmAgaW4gY29uZmlndXJhdGlvbiBmaWxlcy4KKworRm9yIGV4YW1wbGUsIHNheSB5b3Ugd2FudCB5b3VyIGV4dGVuc2lvbnMgdG8gYmUgYnVpbHQgImluLXBsYWNlIi0tLXRoYXQgaXMsIHlvdQoraGF2ZSBhbiBleHRlbnNpb24gOm1vZDpgcGtnLmV4dGAsIGFuZCB5b3Ugd2FudCB0aGUgY29tcGlsZWQgZXh0ZW5zaW9uIGZpbGUKKyg6ZmlsZTpgZXh0LnNvYCBvbiBVbml4LCBzYXkpIHRvIGJlIHB1dCBpbiB0aGUgc2FtZSBzb3VyY2UgZGlyZWN0b3J5IGFzIHlvdXIKK3B1cmUgUHl0aG9uIG1vZHVsZXMgOm1vZDpgcGtnLm1vZDFgIGFuZCA6bW9kOmBwa2cubW9kMmAuICBZb3UgY2FuIGFsd2F5cyB1c2UgdGhlCis6b3B0aW9uOmAtLWlucGxhY2VgIG9wdGlvbiBvbiB0aGUgY29tbWFuZCBsaW5lIHRvIGVuc3VyZSB0aGlzOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkX2V4dCAtLWlucGxhY2UKKworQnV0IHRoaXMgcmVxdWlyZXMgdGhhdCB5b3UgYWx3YXlzIHNwZWNpZnkgdGhlIDpjb21tYW5kOmBidWlsZF9leHRgIGNvbW1hbmQKK2V4cGxpY2l0bHksIGFuZCByZW1lbWJlciB0byBwcm92aWRlIDpvcHRpb246YC0taW5wbGFjZWAuIEFuIGVhc2llciB3YXkgaXMgdG8KKyJzZXQgYW5kIGZvcmdldCIgdGhpcyBvcHRpb24sIGJ5IGVuY29kaW5nIGl0IGluIDpmaWxlOmBzZXR1cC5jZmdgLCB0aGUKK2NvbmZpZ3VyYXRpb24gZmlsZSBmb3IgdGhpcyBkaXN0cmlidXRpb246OgorCisgICBbYnVpbGRfZXh0XQorICAgaW5wbGFjZSA9IDEKKworVGhpcyB3aWxsIGFmZmVjdCBhbGwgYnVpbGRzIG9mIHRoaXMgbW9kdWxlIGRpc3RyaWJ1dGlvbiwgd2hldGhlciBvciBub3QgeW91CitleHBsaWNpdGx5IHNwZWNpZnkgOmNvbW1hbmQ6YGJ1aWxkX2V4dGAuICBJZiB5b3UgaW5jbHVkZSA6ZmlsZTpgc2V0dXAuY2ZnYCBpbgoreW91ciBzb3VyY2UgZGlzdHJpYnV0aW9uLCBpdCB3aWxsIGFsc28gYWZmZWN0IGVuZC11c2VyIGJ1aWxkcy0tLXdoaWNoIGlzCitwcm9iYWJseSBhIGJhZCBpZGVhIGZvciB0aGlzIG9wdGlvbiwgc2luY2UgYWx3YXlzIGJ1aWxkaW5nIGV4dGVuc2lvbnMgaW4tcGxhY2UKK3dvdWxkIGJyZWFrIGluc3RhbGxhdGlvbiBvZiB0aGUgbW9kdWxlIGRpc3RyaWJ1dGlvbi4gIEluIGNlcnRhaW4gcGVjdWxpYXIgY2FzZXMsCit0aG91Z2gsIG1vZHVsZXMgYXJlIGJ1aWx0IHJpZ2h0IGluIHRoZWlyIGluc3RhbGxhdGlvbiBkaXJlY3RvcnksIHNvIHRoaXMgaXMKK2NvbmNlaXZhYmx5IGEgdXNlZnVsIGFiaWxpdHkuICAoRGlzdHJpYnV0aW5nIGV4dGVuc2lvbnMgdGhhdCBleHBlY3QgdG8gYmUgYnVpbHQKK2luIHRoZWlyIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkgaXMgYWxtb3N0IGFsd2F5cyBhIGJhZCBpZGVhLCB0aG91Z2guKQorCitBbm90aGVyIGV4YW1wbGU6IGNlcnRhaW4gY29tbWFuZHMgdGFrZSBvcHRpb25zIHRoYXQgdmFyeSBmcm9tIHByb2plY3QgdG8KK3Byb2plY3QgYnV0IG5vdCBkZXBlbmRpbmcgb24gdGhlIGluc3RhbGxhdGlvbiBzeXN0ZW0sIGZvciBleGFtcGxlLAorOmNvbW1hbmQ6YHRlc3RgIG5lZWRzIHRvIGtub3cgd2hlcmUgeW91ciB0ZXN0IHN1aXRlIGlzIGxvY2F0ZWQgYW5kIHdoYXQgdGVzdAorcnVubmVyIHRvIHVzZTsgbGlrZXdpc2UsIDpjb21tYW5kOmB1cGxvYWRfZG9jc2AgY2FuIGZpbmQgSFRNTCBkb2N1bWVudGF0aW9uIGluCithIDpmaWxlOmBkb2NgIG9yIDpmaWxlOmBkb2NzYCBkaXJlY3RvcnksIGJ1dCBuZWVkcyBhbiBvcHRpb24gdG8gZmluZCBmaWxlcyBpbgorOmZpbGU6YGRvY3MvYnVpbGQvaHRtbGAuICBJbnN0ZWFkIG9mIGhhdmluZyB0byB0eXBlIG91dCB0aGVzZSBvcHRpb25zIGVhY2gKK3RpbWUgeW91IHdhbnQgdG8gcnVuIHRoZSBjb21tYW5kLCB5b3UgY2FuIHB1dCB0aGVtIGluIHRoZSBwcm9qZWN0J3MKKzpmaWxlOmBzZXR1cC5jZmdgOjoKKworICAgW3Rlc3RdCisgICBzdWl0ZSA9IHBhY2thZ2luZy50ZXN0cworCisgICBbdXBsb2FkX2RvY3NdCisgICB1cGxvYWQtZGlyID0gZG9jcy9idWlsZC9odG1sCisKKworLi4gc2VlYWxzbzo6CisKKyAgIDpyZWY6YHBhY2thZ2luZy1jb25maWctc3ludGF4YCBpbiAiSW5zdGFsbGluZyBQeXRob24gUHJvamVjdHMiCisgICAgICBNb3JlIGluZm9ybWF0aW9uIG9uIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIGlzIGF2YWlsYWJsZSBpbiB0aGUgbWFudWFsIGZvcgorICAgICAgc3lzdGVtIGFkbWluaXN0cmF0b3JzLgorCisKKy4uIHJ1YnJpYzo6IEZvb3Rub3RlcworCisuLiBbI10gVGhpcyBpZGVhbCBwcm9iYWJseSB3b24ndCBiZSBhY2hpZXZlZCB1bnRpbCBhdXRvLWNvbmZpZ3VyYXRpb24gaXMgZnVsbHkKKyAgIHN1cHBvcnRlZCBieSB0aGUgRGlzdHV0aWxzLgpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9leGFtcGxlcy5yc3QgYi9Eb2MvcGFja2FnaW5nL2V4YW1wbGVzLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41OTRhZGUwCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9leGFtcGxlcy5yc3QKQEAgLTAsMCArMSwzMzQgQEAKKy4uIF9wYWNrYWdpbmctZXhhbXBsZXM6CisKKyoqKioqKioqCitFeGFtcGxlcworKioqKioqKioKKworVGhpcyBjaGFwdGVyIHByb3ZpZGVzIGEgbnVtYmVyIG9mIGJhc2ljIGV4YW1wbGVzIHRvIGhlbHAgZ2V0IHN0YXJ0ZWQgd2l0aAorUGFja2FnaW5nLgorCisKKy4uIF9wYWNrYWdpbmctcHVyZS1tb2Q6CisKK1B1cmUgUHl0aG9uIGRpc3RyaWJ1dGlvbiAoYnkgbW9kdWxlKQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0lmIHlvdSdyZSBqdXN0IGRpc3RyaWJ1dGluZyBhIGNvdXBsZSBvZiBtb2R1bGVzLCBlc3BlY2lhbGx5IGlmIHRoZXkgZG9uJ3QgbGl2ZQoraW4gYSBwYXJ0aWN1bGFyIHBhY2thZ2UsIHlvdSBjYW4gc3BlY2lmeSB0aGVtIGluZGl2aWR1YWxseSB1c2luZyB0aGUKKzpvcHRpb246YHB5X21vZHVsZXNgIG9wdGlvbiBpbiB0aGUgc2V0dXAgc2NyaXB0LgorCitJbiB0aGUgc2ltcGxlc3QgY2FzZSwgeW91J2xsIGhhdmUgdHdvIGZpbGVzIHRvIHdvcnJ5IGFib3V0OiBhIHNldHVwIHNjcmlwdCBhbmQKK3RoZSBzaW5nbGUgbW9kdWxlIHlvdSdyZSBkaXN0cmlidXRpbmcsIDpmaWxlOmBmb28ucHlgIGluIHRoaXMgZXhhbXBsZTo6CisKKyAgIDxyb290Pi8KKyAgICAgICAgICBzZXR1cC5weQorICAgICAgICAgIGZvby5weQorCisoSW4gYWxsIGRpYWdyYW1zIGluIHRoaXMgc2VjdGlvbiwgKjxyb290Piogd2lsbCByZWZlciB0byB0aGUgZGlzdHJpYnV0aW9uIHJvb3QKK2RpcmVjdG9yeS4pICBBIG1pbmltYWwgc2V0dXAgc2NyaXB0IHRvIGRlc2NyaWJlIHRoaXMgc2l0dWF0aW9uIHdvdWxkIGJlOjoKKworICAgZnJvbSBwYWNrYWdpbmcuY29yZSBpbXBvcnQgc2V0dXAKKyAgIHNldHVwKG5hbWU9J2ZvbycsCisgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgcHlfbW9kdWxlcz1bJ2ZvbyddKQorCitOb3RlIHRoYXQgdGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiBpcyBzcGVjaWZpZWQgaW5kZXBlbmRlbnRseSB3aXRoIHRoZQorOm9wdGlvbjpgbmFtZWAgb3B0aW9uLCBhbmQgdGhlcmUncyBubyBydWxlIHRoYXQgc2F5cyBpdCBoYXMgdG8gYmUgdGhlIHNhbWUgYXMKK3RoZSBuYW1lIG9mIHRoZSBzb2xlIG1vZHVsZSBpbiB0aGUgZGlzdHJpYnV0aW9uIChhbHRob3VnaCB0aGF0J3MgcHJvYmFibHkgYSBnb29kCitjb252ZW50aW9uIHRvIGZvbGxvdykuICBIb3dldmVyLCB0aGUgZGlzdHJpYnV0aW9uIG5hbWUgaXMgdXNlZCB0byBnZW5lcmF0ZQorZmlsZW5hbWVzLCBzbyB5b3Ugc2hvdWxkIHN0aWNrIHRvIGxldHRlcnMsIGRpZ2l0cywgdW5kZXJzY29yZXMsIGFuZCBoeXBoZW5zLgorCitTaW5jZSA6b3B0aW9uOmBweV9tb2R1bGVzYCBpcyBhIGxpc3QsIHlvdSBjYW4gb2YgY291cnNlIHNwZWNpZnkgbXVsdGlwbGUKK21vZHVsZXMsIGUuZy4gaWYgeW91J3JlIGRpc3RyaWJ1dGluZyBtb2R1bGVzIDptb2Q6YGZvb2AgYW5kIDptb2Q6YGJhcmAsIHlvdXIKK3NldHVwIG1pZ2h0IGxvb2sgbGlrZSB0aGlzOjoKKworICAgPHJvb3Q+LworICAgICAgICAgIHNldHVwLnB5CisgICAgICAgICAgZm9vLnB5CisgICAgICAgICAgYmFyLnB5CisKK2FuZCB0aGUgc2V0dXAgc2NyaXB0IG1pZ2h0IGJlICA6OgorCisgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBweV9tb2R1bGVzPVsnZm9vJywgJ2JhciddKQorCitZb3UgY2FuIHB1dCBtb2R1bGUgc291cmNlIGZpbGVzIGludG8gYW5vdGhlciBkaXJlY3RvcnksIGJ1dCBpZiB5b3UgaGF2ZSBlbm91Z2gKK21vZHVsZXMgdG8gZG8gdGhhdCwgaXQncyBwcm9iYWJseSBlYXNpZXIgdG8gc3BlY2lmeSBtb2R1bGVzIGJ5IHBhY2thZ2UgcmF0aGVyCit0aGFuIGxpc3RpbmcgdGhlbSBpbmRpdmlkdWFsbHkuCisKKworLi4gX3BhY2thZ2luZy1wdXJlLXBrZzoKKworUHVyZSBQeXRob24gZGlzdHJpYnV0aW9uIChieSBwYWNrYWdlKQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitJZiB5b3UgaGF2ZSBtb3JlIHRoYW4gYSBjb3VwbGUgb2YgbW9kdWxlcyB0byBkaXN0cmlidXRlLCBlc3BlY2lhbGx5IGlmIHRoZXkgYXJlCitpbiBtdWx0aXBsZSBwYWNrYWdlcywgaXQncyBwcm9iYWJseSBlYXNpZXIgdG8gc3BlY2lmeSB3aG9sZSBwYWNrYWdlcyByYXRoZXIgdGhhbgoraW5kaXZpZHVhbCBtb2R1bGVzLiAgVGhpcyB3b3JrcyBldmVuIGlmIHlvdXIgbW9kdWxlcyBhcmUgbm90IGluIGEgcGFja2FnZTsgeW91CitjYW4ganVzdCB0ZWxsIHRoZSBEaXN0dXRpbHMgdG8gcHJvY2VzcyBtb2R1bGVzIGZyb20gdGhlIHJvb3QgcGFja2FnZSwgYW5kIHRoYXQKK3dvcmtzIHRoZSBzYW1lIGFzIGFueSBvdGhlciBwYWNrYWdlIChleGNlcHQgdGhhdCB5b3UgZG9uJ3QgaGF2ZSB0byBoYXZlIGFuCis6ZmlsZTpgX19pbml0X18ucHlgIGZpbGUpLgorCitUaGUgc2V0dXAgc2NyaXB0IGZyb20gdGhlIGxhc3QgZXhhbXBsZSBjb3VsZCBhbHNvIGJlIHdyaXR0ZW4gYXMgIDo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBzZXR1cChuYW1lPSdmb29iYXInLAorICAgICAgICAgdmVyc2lvbj0nMS4wJywKKyAgICAgICAgIHBhY2thZ2VzPVsnJ10pCisKKyhUaGUgZW1wdHkgc3RyaW5nIHN0YW5kcyBmb3IgdGhlIHJvb3QgcGFja2FnZS4pCisKK0lmIHRob3NlIHR3byBmaWxlcyBhcmUgbW92ZWQgaW50byBhIHN1YmRpcmVjdG9yeSwgYnV0IHJlbWFpbiBpbiB0aGUgcm9vdAorcGFja2FnZSwgZS5nLjo6CisKKyAgIDxyb290Pi8KKyAgICAgICAgICBzZXR1cC5weQorICAgICAgICAgIHNyYy8KKyAgICAgICAgICAgICAgZm9vLnB5CisgICAgICAgICAgICAgIGJhci5weQorCit0aGVuIHlvdSB3b3VsZCBzdGlsbCBzcGVjaWZ5IHRoZSByb290IHBhY2thZ2UsIGJ1dCB5b3UgaGF2ZSB0byB0ZWxsIHRoZQorRGlzdHV0aWxzIHdoZXJlIHNvdXJjZSBmaWxlcyBpbiB0aGUgcm9vdCBwYWNrYWdlIGxpdmU6OgorCisgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBwYWNrYWdlX2Rpcj17Jyc6ICdzcmMnfSwKKyAgICAgICAgIHBhY2thZ2VzPVsnJ10pCisKK01vcmUgdHlwaWNhbGx5LCB0aG91Z2gsIHlvdSB3aWxsIHdhbnQgdG8gZGlzdHJpYnV0ZSBtdWx0aXBsZSBtb2R1bGVzIGluIHRoZSBzYW1lCitwYWNrYWdlIChvciBpbiBzdWItcGFja2FnZXMpLiAgRm9yIGV4YW1wbGUsIGlmIHRoZSA6bW9kOmBmb29gICBhbmQgOm1vZDpgYmFyYAorbW9kdWxlcyBiZWxvbmcgaW4gcGFja2FnZSA6bW9kOmBmb29iYXJgLCBvbmUgd2F5IHRvIGxheSBvdXQgeW91ciBzb3VyY2UgdHJlZSBpcworCis6OgorCisgICA8cm9vdD4vCisgICAgICAgICAgc2V0dXAucHkKKyAgICAgICAgICBmb29iYXIvCisgICAgICAgICAgICAgICAgIF9faW5pdF9fLnB5CisgICAgICAgICAgICAgICAgIGZvby5weQorICAgICAgICAgICAgICAgICBiYXIucHkKKworVGhpcyBpcyBpbiBmYWN0IHRoZSBkZWZhdWx0IGxheW91dCBleHBlY3RlZCBieSB0aGUgRGlzdHV0aWxzLCBhbmQgdGhlIG9uZSB0aGF0CityZXF1aXJlcyB0aGUgbGVhc3Qgd29yayB0byBkZXNjcmliZSBpbiB5b3VyIHNldHVwIHNjcmlwdDo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBzZXR1cChuYW1lPSdmb29iYXInLAorICAgICAgICAgdmVyc2lvbj0nMS4wJywKKyAgICAgICAgIHBhY2thZ2VzPVsnZm9vYmFyJ10pCisKK0lmIHlvdSB3YW50IHRvIHB1dCBtb2R1bGVzIGluIGRpcmVjdG9yaWVzIG5vdCBuYW1lZCBmb3IgdGhlaXIgcGFja2FnZSwgdGhlbiB5b3UKK25lZWQgdG8gdXNlIHRoZSA6b3B0aW9uOmBwYWNrYWdlX2RpcmAgb3B0aW9uIGFnYWluLiAgRm9yIGV4YW1wbGUsIGlmIHRoZQorOmZpbGU6YHNyY2AgZGlyZWN0b3J5IGhvbGRzIG1vZHVsZXMgaW4gdGhlIDptb2Q6YGZvb2JhcmAgcGFja2FnZTo6CisKKyAgIDxyb290Pi8KKyAgICAgICAgICBzZXR1cC5weQorICAgICAgICAgIHNyYy8KKyAgICAgICAgICAgICAgX19pbml0X18ucHkKKyAgICAgICAgICAgICAgZm9vLnB5CisgICAgICAgICAgICAgIGJhci5weQorCithbiBhcHByb3ByaWF0ZSBzZXR1cCBzY3JpcHQgd291bGQgYmUgIDo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBzZXR1cChuYW1lPSdmb29iYXInLAorICAgICAgICAgdmVyc2lvbj0nMS4wJywKKyAgICAgICAgIHBhY2thZ2VfZGlyPXsnZm9vYmFyJzogJ3NyYyd9LAorICAgICAgICAgcGFja2FnZXM9Wydmb29iYXInXSkKKworT3IsIHlvdSBtaWdodCBwdXQgbW9kdWxlcyBmcm9tIHlvdXIgbWFpbiBwYWNrYWdlIHJpZ2h0IGluIHRoZSBkaXN0cmlidXRpb24KK3Jvb3Q6OgorCisgICA8cm9vdD4vCisgICAgICAgICAgc2V0dXAucHkKKyAgICAgICAgICBfX2luaXRfXy5weQorICAgICAgICAgIGZvby5weQorICAgICAgICAgIGJhci5weQorCitpbiB3aGljaCBjYXNlIHlvdXIgc2V0dXAgc2NyaXB0IHdvdWxkIGJlICA6OgorCisgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBwYWNrYWdlX2Rpcj17J2Zvb2Jhcic6ICcnfSwKKyAgICAgICAgIHBhY2thZ2VzPVsnZm9vYmFyJ10pCisKKyhUaGUgZW1wdHkgc3RyaW5nIGFsc28gc3RhbmRzIGZvciB0aGUgY3VycmVudCBkaXJlY3RvcnkuKQorCitJZiB5b3UgaGF2ZSBzdWItcGFja2FnZXMsIHRoZXkgbXVzdCBiZSBleHBsaWNpdGx5IGxpc3RlZCBpbiA6b3B0aW9uOmBwYWNrYWdlc2AsCitidXQgYW55IGVudHJpZXMgaW4gOm9wdGlvbjpgcGFja2FnZV9kaXJgIGF1dG9tYXRpY2FsbHkgZXh0ZW5kIHRvIHN1Yi1wYWNrYWdlcy4KKyhJbiBvdGhlciB3b3JkcywgdGhlIERpc3R1dGlscyBkb2VzICpub3QqIHNjYW4geW91ciBzb3VyY2UgdHJlZSwgdHJ5aW5nIHRvCitmaWd1cmUgb3V0IHdoaWNoIGRpcmVjdG9yaWVzIGNvcnJlc3BvbmQgdG8gUHl0aG9uIHBhY2thZ2VzIGJ5IGxvb2tpbmcgZm9yCis6ZmlsZTpgX19pbml0X18ucHlgIGZpbGVzLikgIFRodXMsIGlmIHRoZSBkZWZhdWx0IGxheW91dCBncm93cyBhIHN1Yi1wYWNrYWdlOjoKKworICAgPHJvb3Q+LworICAgICAgICAgIHNldHVwLnB5CisgICAgICAgICAgZm9vYmFyLworICAgICAgICAgICAgICAgICBfX2luaXRfXy5weQorICAgICAgICAgICAgICAgICBmb28ucHkKKyAgICAgICAgICAgICAgICAgYmFyLnB5CisgICAgICAgICAgICAgICAgIHN1YmZvby8KKyAgICAgICAgICAgICAgICAgICAgICAgIF9faW5pdF9fLnB5CisgICAgICAgICAgICAgICAgICAgICAgICBibGFoLnB5CisKK3RoZW4gdGhlIGNvcnJlc3BvbmRpbmcgc2V0dXAgc2NyaXB0IHdvdWxkIGJlICA6OgorCisgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBwYWNrYWdlcz1bJ2Zvb2JhcicsICdmb29iYXIuc3ViZm9vJ10pCisKKyhBZ2FpbiwgdGhlIGVtcHR5IHN0cmluZyBpbiA6b3B0aW9uOmBwYWNrYWdlX2RpcmAgc3RhbmRzIGZvciB0aGUgY3VycmVudAorZGlyZWN0b3J5LikKKworCisuLiBfcGFja2FnaW5nLXNpbmdsZS1leHQ6CisKK1NpbmdsZSBleHRlbnNpb24gbW9kdWxlCis9PT09PT09PT09PT09PT09PT09PT09PQorCitFeHRlbnNpb24gbW9kdWxlcyBhcmUgc3BlY2lmaWVkIHVzaW5nIHRoZSA6b3B0aW9uOmBleHRfbW9kdWxlc2Agb3B0aW9uLgorOm9wdGlvbjpgcGFja2FnZV9kaXJgIGhhcyBubyBlZmZlY3Qgb24gd2hlcmUgZXh0ZW5zaW9uIHNvdXJjZSBmaWxlcyBhcmUgZm91bmQ7CitpdCBvbmx5IGFmZmVjdHMgdGhlIHNvdXJjZSBmb3IgcHVyZSBQeXRob24gbW9kdWxlcy4gIFRoZSBzaW1wbGVzdCAgY2FzZSwgYQorc2luZ2xlIGV4dGVuc2lvbiBtb2R1bGUgaW4gYSBzaW5nbGUgQyBzb3VyY2UgZmlsZSwgaXM6OgorCisgICA8cm9vdD4vCisgICAgICAgICAgc2V0dXAucHkKKyAgICAgICAgICBmb28uYworCitJZiB0aGUgOm1vZDpgZm9vYCBleHRlbnNpb24gYmVsb25ncyBpbiB0aGUgcm9vdCBwYWNrYWdlLCB0aGUgc2V0dXAgc2NyaXB0IGZvcgordGhpcyBjb3VsZCBiZSAgOjoKKworICAgZnJvbSBwYWNrYWdpbmcuY29yZSBpbXBvcnQgc2V0dXAsIEV4dGVuc2lvbgorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBleHRfbW9kdWxlcz1bRXh0ZW5zaW9uKCdmb28nLCBbJ2Zvby5jJ10pXSkKKworSWYgdGhlIGV4dGVuc2lvbiBhY3R1YWxseSBiZWxvbmdzIGluIGEgcGFja2FnZSwgc2F5IDptb2Q6YGZvb3BrZ2AsIHRoZW4KKworV2l0aCBleGFjdGx5IHRoZSBzYW1lIHNvdXJjZSB0cmVlIGxheW91dCwgdGhpcyBleHRlbnNpb24gY2FuIGJlIHB1dCBpbiB0aGUKKzptb2Q6YGZvb3BrZ2AgcGFja2FnZSBzaW1wbHkgYnkgY2hhbmdpbmcgdGhlIG5hbWUgb2YgdGhlIGV4dGVuc2lvbjo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwLCBFeHRlbnNpb24KKyAgIHNldHVwKG5hbWU9J2Zvb2JhcicsCisgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgcGFja2FnZXM9Wydmb29wa2cnXSwKKyAgICAgICAgIGV4dF9tb2R1bGVzPVtFeHRlbnNpb24oJ2Zvb3BrZy5mb28nLCBbJ2Zvby5jJ10pXSkKKworCitDaGVja2luZyBtZXRhZGF0YQorPT09PT09PT09PT09PT09PT0KKworVGhlIGBgY2hlY2tgYCBjb21tYW5kIGFsbG93cyB5b3UgdG8gdmVyaWZ5IGlmIHlvdXIgcHJvamVjdCdzIG1ldGFkYXRhCittZWV0cyB0aGUgbWluaW11bSByZXF1aXJlbWVudHMgdG8gYnVpbGQgYSBkaXN0cmlidXRpb24uCisKK1RvIHJ1biBpdCwganVzdCBjYWxsIGl0IHVzaW5nIHlvdXIgOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQuIElmIHNvbWV0aGluZyBpcworbWlzc2luZywgYGBjaGVja2BgIHdpbGwgZGlzcGxheSBhIHdhcm5pbmcuCisKK0xldCdzIHRha2UgYW4gZXhhbXBsZSB3aXRoIGEgc2ltcGxlIHNjcmlwdDo6CisKKyAgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorCisgICAgc2V0dXAobmFtZT0nZm9vYmFyJykKKworLi4gVE9ETyBjb25maWd1cmUgbG9nZ2luZyBTdHJlYW1IYW5kbGVyIHRvIG1hdGNoIHRoaXMgb3V0cHV0CisKK1J1bm5pbmcgdGhlIGBgY2hlY2tgYCBjb21tYW5kIHdpbGwgZGlzcGxheSBzb21lIHdhcm5pbmdzOjoKKworICAgICQgcHl0aG9uIHNldHVwLnB5IGNoZWNrCisgICAgcnVubmluZyBjaGVjaworICAgIHdhcm5pbmc6IGNoZWNrOiBtaXNzaW5nIHJlcXVpcmVkIG1ldGFkYXRhOiB2ZXJzaW9uLCBob21lX3BhZ2UKKyAgICB3YXJuaW5nOiBjaGVjazogbWlzc2luZyBtZXRhZGF0YTogZWl0aGVyIChhdXRob3IgYW5kIGF1dGhvcl9lbWFpbCkgb3IKKyAgICAgICAgICAgICAobWFpbnRhaW5lciBhbmQgbWFpbnRhaW5lcl9lbWFpbCkgbXVzdCBiZSBzdXBwbGllZAorCisKK0lmIHlvdSB1c2UgdGhlIHJlU3RydWN0dXJlZFRleHQgc3ludGF4IGluIHRoZSBgYGxvbmdfZGVzY3JpcHRpb25gYCBmaWVsZCBhbmQKK2BEb2N1dGlscyA8aHR0cDovL2RvY3V0aWxzLnNvdXJjZWZvcmdlLm5ldC8+YF8gaXMgaW5zdGFsbGVkIHlvdSBjYW4gY2hlY2sgaWYKK3RoZSBzeW50YXggaXMgZmluZSB3aXRoIHRoZSBgYGNoZWNrYGAgY29tbWFuZCwgdXNpbmcgdGhlIGBgcmVzdHJ1Y3R1cmVkdGV4dGBgCitvcHRpb24uCisKK0ZvciBleGFtcGxlLCBpZiB0aGUgOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQgaXMgY2hhbmdlZCBsaWtlIHRoaXM6OgorCisgICAgZnJvbSBwYWNrYWdpbmcuY29yZSBpbXBvcnQgc2V0dXAKKworICAgIGRlc2MgPSAiIiJcCisgICAgV2VsY29tZSB0byBmb29iYXIhCisgICAgPT09PT09PT09PT09PT09CisKKyAgICBUaGlzIGlzIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgYGBmb29iYXJgYCBwcm9qZWN0LgorICAgICIiIgorCisgICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgIGF1dGhvcj11J1RhcmVrIFppYWTDqScsCisgICAgICAgICAgYXV0aG9yX2VtYWlsPSd0YXJla0B6aWFkZS5vcmcnLAorICAgICAgICAgIHN1bW1hcnk9J0Zvb2JhciB1dGlsaXRpZXMnCisgICAgICAgICAgZGVzY3JpcHRpb249ZGVzYywKKyAgICAgICAgICBob21lX3BhZ2U9J2h0dHA6Ly9leGFtcGxlLmNvbScpCisKK1doZXJlIHRoZSBsb25nIGRlc2NyaXB0aW9uIGlzIGJyb2tlbiwgYGBjaGVja2BgIHdpbGwgYmUgYWJsZSB0byBkZXRlY3QgaXQKK2J5IHVzaW5nIHRoZSA6bW9kOmBkb2N1dGlsc2AgcGFyc2VyOjoKKworICAgICQgcHl0aG9uIHNldHVwLnB5IGNoZWNrIC0tcmVzdHJ1Y3R1cmVkdGV4dAorICAgIHJ1bm5pbmcgY2hlY2sKKyAgICB3YXJuaW5nOiBjaGVjazogVGl0bGUgdW5kZXJsaW5lIHRvbyBzaG9ydC4gKGxpbmUgMikKKyAgICB3YXJuaW5nOiBjaGVjazogQ291bGQgbm90IGZpbmlzaCB0aGUgcGFyc2luZy4KKworCisuLiBfcGFja2FnaW5nLXJlYWRpbmctbWV0YWRhdGE6CisKK1JlYWRpbmcgdGhlIG1ldGFkYXRhCis9PT09PT09PT09PT09PT09PT09PQorCitUaGUgOmZ1bmM6YHBhY2thZ2luZy5jb3JlLnNldHVwYCBmdW5jdGlvbiBwcm92aWRlcyBhIGNvbW1hbmQtbGluZSBpbnRlcmZhY2UKK3RoYXQgYWxsb3dzIHlvdSB0byBxdWVyeSB0aGUgbWV0YWRhdGEgZmllbGRzIG9mIGEgcHJvamVjdCB0aHJvdWdoIHRoZQorOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQgb2YgYSBnaXZlbiBwcm9qZWN0OjoKKworICAgICQgcHl0aG9uIHNldHVwLnB5IC0tbmFtZQorICAgIGZvb2JhcgorCitUaGlzIGNhbGwgcmVhZHMgdGhlIGBgbmFtZWBgIG1ldGFkYXRhIGJ5IHJ1bm5pbmcgdGhlCis6ZnVuYzpgcGFja2FnaW5nLmNvcmUuc2V0dXBgICBmdW5jdGlvbi4gV2hlbiBhIHNvdXJjZSBvciBiaW5hcnkKK2Rpc3RyaWJ1dGlvbiBpcyBjcmVhdGVkIHdpdGggRGlzdHV0aWxzLCB0aGUgbWV0YWRhdGEgZmllbGRzIGFyZSB3cml0dGVuCitpbiBhIHN0YXRpYyBmaWxlIGNhbGxlZCA6ZmlsZTpgUEtHLUlORk9gLiBXaGVuIGEgRGlzdHV0aWxzLWJhc2VkIHByb2plY3QgaXMKK2luc3RhbGxlZCBpbiBQeXRob24sIHRoZSA6ZmlsZTpgUEtHLUlORk9gIGZpbGUgaXMgY29waWVkIGFsb25nc2lkZSB0aGUgbW9kdWxlcworYW5kIHBhY2thZ2VzIG9mIHRoZSBkaXN0cmlidXRpb24gdW5kZXIgOmZpbGU6YE5BTUUtVkVSU0lPTi1weVguWC5lZ2ctaW5mb2AsCit3aGVyZSBgYE5BTUVgYCBpcyB0aGUgbmFtZSBvZiB0aGUgcHJvamVjdCwgYGBWRVJTSU9OYGAgaXRzIHZlcnNpb24gYXMgZGVmaW5lZAoraW4gdGhlIE1ldGFkYXRhLCBhbmQgYGBweVguWGBgIHRoZSBtYWpvciBhbmQgbWlub3IgdmVyc2lvbiBvZiBQeXRob24gbGlrZQorYGAyLjdgYCBvciBgYDMuMmBgLgorCitZb3UgY2FuIHJlYWQgYmFjayB0aGlzIHN0YXRpYyBmaWxlLCBieSB1c2luZyB0aGUKKzpjbGFzczpgcGFja2FnaW5nLmRpc3QuTWV0YWRhdGFgIGNsYXNzIGFuZCBpdHMKKzpmdW5jOmByZWFkX3BrZ19maWxlYCBtZXRob2Q6OgorCisgICAgPj4+IGZyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YQorICAgID4+PiBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICA+Pj4gbWV0YWRhdGEucmVhZF9wa2dfZmlsZShvcGVuKCdkaXN0cmlidXRlLTAuNi44LXB5Mi43LmVnZy1pbmZvJykpCisgICAgPj4+IG1ldGFkYXRhLm5hbWUKKyAgICAnZGlzdHJpYnV0ZScKKyAgICA+Pj4gbWV0YWRhdGEudmVyc2lvbgorICAgICcwLjYuOCcKKyAgICA+Pj4gbWV0YWRhdGEuZGVzY3JpcHRpb24KKyAgICAnRWFzaWx5IGRvd25sb2FkLCBidWlsZCwgaW5zdGFsbCwgdXBncmFkZSwgYW5kIHVuaW5zdGFsbCBQeXRob24gcGFja2FnZXMnCisKK05vdGljZSB0aGF0IHRoZSBjbGFzcyBjYW4gYWxzbyBiZSBpbnN0YW50aWF0ZWQgd2l0aCBhIG1ldGFkYXRhIGZpbGUgcGF0aCB0bworbG9hZHMgaXRzIHZhbHVlczo6CisKKyAgICA+Pj4gcGtnX2luZm9fcGF0aCA9ICdkaXN0cmlidXRlLTAuNi44LXB5Mi43LmVnZy1pbmZvJworICAgID4+PiBNZXRhZGF0YShwa2dfaW5mb19wYXRoKS5uYW1lCisgICAgJ2Rpc3RyaWJ1dGUnCisKKworLi4gWFhYIFRoZXNlIGNvbW1lbnRzIGhhdmUgYmVlbiBoZXJlIGZvciBhdCBsZWFzdCB0ZW4geWVhcnMuIFdyaXRlIHRoZQorICAgICAgIHNlY3Rpb25zIG9yIGRlbGV0ZSB0aGUgY29tbWVudHMgKHdlIGNhbiBtYXliZSBhc2sgR3JlZyBXYXJkIGFib3V0CisgICAgICAgdGhlIHBsYW5uZWQgY29udGVudHMpLiAoVW5pbmRlbnQgdG8gbWFrZSB0aGVtIHNlY3Rpb24gdGl0bGVzKQorCisgICAgLi4gbXVsdGlwbGUtZXh0OjoKKworICAgICAgIE11bHRpcGxlIGV4dGVuc2lvbiBtb2R1bGVzCisgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgICAgIFB1dHRpbmcgaXQgYWxsIHRvZ2V0aGVyCisgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT0KZGlmZiAtLWdpdCBhL0RvYy9wYWNrYWdpbmcvZXh0ZW5kaW5nLnJzdCBiL0RvYy9wYWNrYWdpbmcvZXh0ZW5kaW5nLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMmQzODYzCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9leHRlbmRpbmcucnN0CkBAIC0wLDAgKzEsOTUgQEAKKy4uIF9leHRlbmRpbmctcGFja2FnaW5nOgorCisqKioqKioqKioqKioqKioqKioqCitFeHRlbmRpbmcgRGlzdHV0aWxzCisqKioqKioqKioqKioqKioqKioqCisKK0Rpc3R1dGlscyBjYW4gYmUgZXh0ZW5kZWQgaW4gdmFyaW91cyB3YXlzLiAgTW9zdCBleHRlbnNpb25zIHRha2UgdGhlIGZvcm0gb2YgbmV3Citjb21tYW5kcyBvciByZXBsYWNlbWVudHMgZm9yIGV4aXN0aW5nIGNvbW1hbmRzLiAgTmV3IGNvbW1hbmRzIG1heSBiZSB3cml0dGVuIHRvCitzdXBwb3J0IG5ldyB0eXBlcyBvZiBwbGF0Zm9ybS1zcGVjaWZpYyBwYWNrYWdpbmcsIGZvciBleGFtcGxlLCB3aGlsZQorcmVwbGFjZW1lbnRzIGZvciBleGlzdGluZyBjb21tYW5kcyBtYXkgYmUgbWFkZSB0byBtb2RpZnkgZGV0YWlscyBvZiBob3cgdGhlCitjb21tYW5kIG9wZXJhdGVzIG9uIGEgcGFja2FnZS4KKworTW9zdCBleHRlbnNpb25zIG9mIHRoZSBwYWNrYWdpbmcgYXJlIG1hZGUgd2l0aGluIDpmaWxlOmBzZXR1cC5weWAgc2NyaXB0cyB0aGF0Cit3YW50IHRvIG1vZGlmeSBleGlzdGluZyBjb21tYW5kczsgbWFueSBzaW1wbHkgYWRkIGEgZmV3IGZpbGUgZXh0ZW5zaW9ucyB0aGF0CitzaG91bGQgYmUgY29waWVkIGludG8gcGFja2FnZXMgaW4gYWRkaXRpb24gdG8gOmZpbGU6YC5weWAgZmlsZXMgYXMgYQorY29udmVuaWVuY2UuCisKK01vc3QgcGFja2FnaW5nIGNvbW1hbmQgaW1wbGVtZW50YXRpb25zIGFyZSBzdWJjbGFzc2VzIG9mIHRoZQorOmNsYXNzOmBwYWNrYWdpbmcuY21kLkNvbW1hbmRgIGNsYXNzLiAgTmV3IGNvbW1hbmRzIG1heSBkaXJlY3RseSBpbmhlcml0IGZyb20KKzpjbGFzczpgQ29tbWFuZGAsIHdoaWxlIHJlcGxhY2VtZW50cyBvZnRlbiBkZXJpdmUgZnJvbSA6Y2xhc3M6YENvbW1hbmRgCitpbmRpcmVjdGx5LCBkaXJlY3RseSBzdWJjbGFzc2luZyB0aGUgY29tbWFuZCB0aGV5IGFyZSByZXBsYWNpbmcuICBDb21tYW5kcyBhcmUKK3JlcXVpcmVkIHRvIGRlcml2ZSBmcm9tIDpjbGFzczpgQ29tbWFuZGAuCisKKy4uIC4uIF9leHRlbmQtZXhpc3Rpbmc6CisgICAgICBFeHRlbmRpbmcgZXhpc3RpbmcgY29tbWFuZHMKKyAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisKKy4uIC4uIF9uZXctY29tbWFuZHM6CisgICAgICBXcml0aW5nIG5ldyBjb21tYW5kcworICAgICAgPT09PT09PT09PT09PT09PT09PT0KKworCitJbnRlZ3JhdGluZyBuZXcgY29tbWFuZHMKKz09PT09PT09PT09PT09PT09PT09PT09PQorCitUaGVyZSBhcmUgZGlmZmVyZW50IHdheXMgdG8gaW50ZWdyYXRlIG5ldyBjb21tYW5kIGltcGxlbWVudGF0aW9ucyBpbnRvCitwYWNrYWdpbmcuICBUaGUgbW9zdCBkaWZmaWN1bHQgaXMgdG8gbG9iYnkgZm9yIHRoZSBpbmNsdXNpb24gb2YgdGhlIG5ldyBmZWF0dXJlcworaW4gcGFja2FnaW5nIGl0c2VsZiwgYW5kIHdhaXQgZm9yIChhbmQgcmVxdWlyZSkgYSB2ZXJzaW9uIG9mIFB5dGhvbiB0aGF0Citwcm92aWRlcyB0aGF0IHN1cHBvcnQuICBUaGlzIGlzIHJlYWxseSBoYXJkIGZvciBtYW55IHJlYXNvbnMuCisKK1RoZSBtb3N0IGNvbW1vbiwgYW5kIHBvc3NpYmx5IHRoZSBtb3N0IHJlYXNvbmFibGUgZm9yIG1vc3QgbmVlZHMsIGlzIHRvIGluY2x1ZGUKK3RoZSBuZXcgaW1wbGVtZW50YXRpb25zIHdpdGggeW91ciA6ZmlsZTpgc2V0dXAucHlgIHNjcmlwdCwgYW5kIGNhdXNlIHRoZQorOmZ1bmM6YHBhY2thZ2luZy5jb3JlLnNldHVwYCBmdW5jdGlvbiB1c2UgdGhlbTo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJ1aWxkX3B5IGltcG9ydCBidWlsZF9weSBhcyBfYnVpbGRfcHkKKworICAgY2xhc3MgYnVpbGRfcHkoX2J1aWxkX3B5KToKKyAgICAgICAiIiJTcGVjaWFsaXplZCBQeXRob24gc291cmNlIGJ1aWxkZXIuIiIiCisKKyAgICAgICAjIGltcGxlbWVudCB3aGF0ZXZlciBuZWVkcyB0byBiZSBkaWZmZXJlbnQuLi4KKworICAgc2V0dXAoLi4uLCBjbWRjbGFzcz17J2J1aWxkX3B5JzogYnVpbGRfcHl9KQorCitUaGlzIGFwcHJvYWNoIGlzIG1vc3QgdmFsdWFibGUgaWYgdGhlIG5ldyBpbXBsZW1lbnRhdGlvbnMgbXVzdCBiZSB1c2VkIHRvIHVzZSBhCitwYXJ0aWN1bGFyIHBhY2thZ2UsIGFzIGV2ZXJ5b25lIGludGVyZXN0ZWQgaW4gdGhlIHBhY2thZ2Ugd2lsbCBuZWVkIHRvIGhhdmUgdGhlCituZXcgY29tbWFuZCBpbXBsZW1lbnRhdGlvbi4KKworQmVnaW5uaW5nIHdpdGggUHl0aG9uIDIuNCwgYSB0aGlyZCBvcHRpb24gaXMgYXZhaWxhYmxlLCBpbnRlbmRlZCB0byBhbGxvdyBuZXcKK2NvbW1hbmRzIHRvIGJlIGFkZGVkIHdoaWNoIGNhbiBzdXBwb3J0IGV4aXN0aW5nIDpmaWxlOmBzZXR1cC5weWAgc2NyaXB0cyB3aXRob3V0CityZXF1aXJpbmcgbW9kaWZpY2F0aW9ucyB0byB0aGUgUHl0aG9uIGluc3RhbGxhdGlvbi4gIFRoaXMgaXMgZXhwZWN0ZWQgdG8gYWxsb3cKK3RoaXJkLXBhcnR5IGV4dGVuc2lvbnMgdG8gcHJvdmlkZSBzdXBwb3J0IGZvciBhZGRpdGlvbmFsIHBhY2thZ2luZyBzeXN0ZW1zLCBidXQKK3RoZSBjb21tYW5kcyBjYW4gYmUgdXNlZCBmb3IgYW55dGhpbmcgcGFja2FnaW5nIGNvbW1hbmRzIGNhbiBiZSB1c2VkIGZvci4gIEEgbmV3Citjb25maWd1cmF0aW9uIG9wdGlvbiwgOm9wdGlvbjpgY29tbWFuZF9wYWNrYWdlc2AgKGNvbW1hbmQtbGluZSBvcHRpb24KKzpvcHRpb246YC0tY29tbWFuZC1wYWNrYWdlc2ApLCBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGFkZGl0aW9uYWwgcGFja2FnZXMgdG8gYmUKK3NlYXJjaGVkIGZvciBtb2R1bGVzIGltcGxlbWVudGluZyBjb21tYW5kcy4gIExpa2UgYWxsIHBhY2thZ2luZyBvcHRpb25zLCB0aGlzCitjYW4gYmUgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUgb3IgaW4gYSBjb25maWd1cmF0aW9uIGZpbGUuICBUaGlzIG9wdGlvbgorY2FuIG9ubHkgYmUgc2V0IGluIHRoZSBgYFtnbG9iYWxdYGAgc2VjdGlvbiBvZiBhIGNvbmZpZ3VyYXRpb24gZmlsZSwgb3IgYmVmb3JlCithbnkgY29tbWFuZHMgb24gdGhlIGNvbW1hbmQgbGluZS4gIElmIHNldCBpbiBhIGNvbmZpZ3VyYXRpb24gZmlsZSwgaXQgY2FuIGJlCitvdmVycmlkZGVuIGZyb20gdGhlIGNvbW1hbmQgbGluZTsgc2V0dGluZyBpdCB0byBhbiBlbXB0eSBzdHJpbmcgb24gdGhlIGNvbW1hbmQKK2xpbmUgY2F1c2VzIHRoZSBkZWZhdWx0IHRvIGJlIHVzZWQuICBUaGlzIHNob3VsZCBuZXZlciBiZSBzZXQgaW4gYSBjb25maWd1cmF0aW9uCitmaWxlIHByb3ZpZGVkIHdpdGggYSBwYWNrYWdlLgorCitUaGlzIG5ldyBvcHRpb24gY2FuIGJlIHVzZWQgdG8gYWRkIGFueSBudW1iZXIgb2YgcGFja2FnZXMgdG8gdGhlIGxpc3Qgb2YKK3BhY2thZ2VzIHNlYXJjaGVkIGZvciBjb21tYW5kIGltcGxlbWVudGF0aW9uczsgbXVsdGlwbGUgcGFja2FnZSBuYW1lcyBzaG91bGQgYmUKK3NlcGFyYXRlZCBieSBjb21tYXMuICBXaGVuIG5vdCBzcGVjaWZpZWQsIHRoZSBzZWFyY2ggaXMgb25seSBwZXJmb3JtZWQgaW4gdGhlCis6bW9kOmBwYWNrYWdpbmcuY29tbWFuZGAgcGFja2FnZS4gIFdoZW4gOmZpbGU6YHNldHVwLnB5YCBpcyBydW4gd2l0aCB0aGUgb3B0aW9uCis6b3B0aW9uOmAtLWNvbW1hbmQtcGFja2FnZXNgIDpvcHRpb246YGRpc3RjbWRzLGJ1aWxkY21kc2AsIGhvd2V2ZXIsIHRoZSBwYWNrYWdlcworOm1vZDpgcGFja2FnaW5nLmNvbW1hbmRgLCA6bW9kOmBkaXN0Y21kc2AsIGFuZCA6bW9kOmBidWlsZGNtZHNgIHdpbGwgYmUgc2VhcmNoZWQKK2luIHRoYXQgb3JkZXIuICBOZXcgY29tbWFuZHMgYXJlIGV4cGVjdGVkIHRvIGJlIGltcGxlbWVudGVkIGluIG1vZHVsZXMgb2YgdGhlCitzYW1lIG5hbWUgYXMgdGhlIGNvbW1hbmQgYnkgY2xhc3NlcyBzaGFyaW5nIHRoZSBzYW1lIG5hbWUuICBHaXZlbiB0aGUgZXhhbXBsZQorY29tbWFuZC1saW5lIG9wdGlvbiBhYm92ZSwgdGhlIGNvbW1hbmQgOmNvbW1hbmQ6YGJkaXN0X29wZW5wa2dgIGNvdWxkIGJlCitpbXBsZW1lbnRlZCBieSB0aGUgY2xhc3MgOmNsYXNzOmBkaXN0Y21kcy5iZGlzdF9vcGVucGtnLmJkaXN0X29wZW5wa2dgIG9yCis6Y2xhc3M6YGJ1aWxkY21kcy5iZGlzdF9vcGVucGtnLmJkaXN0X29wZW5wa2dgLgorCisKK0FkZGluZyBuZXcgZGlzdHJpYnV0aW9uIHR5cGVzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitDb21tYW5kcyB0aGF0IGNyZWF0ZSBkaXN0cmlidXRpb25zIChmaWxlcyBpbiB0aGUgOmZpbGU6YGRpc3QvYCBkaXJlY3RvcnkpIG5lZWQKK3RvIGFkZCBgYChjb21tYW5kLCBmaWxlbmFtZSlgYCBwYWlycyB0byBgYHNlbGYuZGlzdHJpYnV0aW9uLmRpc3RfZmlsZXNgYCBzbyB0aGF0Cis6Y29tbWFuZDpgdXBsb2FkYCBjYW4gdXBsb2FkIGl0IHRvIFB5UEkuICBUaGUgKmZpbGVuYW1lKiBpbiB0aGUgcGFpciBjb250YWlucyBubworcGF0aCBpbmZvcm1hdGlvbiwgb25seSB0aGUgbmFtZSBvZiB0aGUgZmlsZSBpdHNlbGYuICBJbiBkcnktcnVuIG1vZGUsIHBhaXJzCitzaG91bGQgc3RpbGwgYmUgYWRkZWQgdG8gcmVwcmVzZW50IHdoYXQgd291bGQgaGF2ZSBiZWVuIGNyZWF0ZWQuCmRpZmYgLS1naXQgYS9Eb2MvcGFja2FnaW5nL2luZGV4LnJzdCBiL0RvYy9wYWNrYWdpbmcvaW5kZXgucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzZDBkZWMKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvcGFja2FnaW5nL2luZGV4LnJzdApAQCAtMCwwICsxLDQ1IEBACisuLiBfcGFja2FnaW5nLWluZGV4OgorCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyBEaXN0cmlidXRpbmcgUHl0aG9uIFByb2plY3RzCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKworOkF1dGhvcnM6IFRoZSBGZWxsb3dzaGlwIG9mIHRoZSBQYWNrYWdpbmcKKzpFbWFpbDogZGlzdHV0aWxzLXNpZ0BweXRob24ub3JnCis6UmVsZWFzZTogfHZlcnNpb258Cis6RGF0ZTogfHRvZGF5fAorCitUaGlzIGRvY3VtZW50IGRlc2NyaWJlcyBQYWNrYWdpbmcgZm9yIFB5dGhvbiBhdXRob3JzLCBkZXNjcmliaW5nIGhvdyB0byB1c2UgdGhlCittb2R1bGUgdG8gbWFrZSBQeXRob24gYXBwbGljYXRpb25zLCBwYWNrYWdlcyBvciBtb2R1bGVzIGVhc2lseSBhdmFpbGFibGUgdG8gYQord2lkZXIgYXVkaWVuY2Ugd2l0aCB2ZXJ5IGxpdHRsZSBvdmVyaGVhZCBmb3IgYnVpbGQvcmVsZWFzZS9pbnN0YWxsIG1lY2hhbmljcy4KKworLi4gdG9jdHJlZTo6CisgICA6bWF4ZGVwdGg6IDIKKyAgIDpudW1iZXJlZDoKKworICAgdHV0b3JpYWwKKyAgIHNldHVwY2ZnCisgICBpbnRyb2R1Y3Rpb24KKyAgIHNldHVwc2NyaXB0CisgICBjb25maWdmaWxlCisgICBzb3VyY2VkaXN0CisgICBidWlsdGRpc3QKKyAgIHBhY2thZ2VpbmRleAorICAgdXBsb2FkaW5nCisgICBleGFtcGxlcworICAgZXh0ZW5kaW5nCisgICBjb21tYW5kaG9va3MKKyAgIGNvbW1hbmRyZWYKKworCisuLiBzZWVhbHNvOjoKKworICAgOnJlZjpgcGFja2FnaW5nLWluc3RhbGwtaW5kZXhgCisgICAgICBBIHVzZXItY2VudGVyZWQgbWFudWFsIHdoaWNoIGluY2x1ZGVzIGluZm9ybWF0aW9uIG9uIGFkZGluZyBwcm9qZWN0cworICAgICAgaW50byBhbiBleGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLiAgWW91IGRvIG5vdCBuZWVkIHRvIGJlIGEgUHl0aG9uCisgICAgICBwcm9ncmFtbWVyIHRvIHJlYWQgdGhpcyBtYW51YWwuCisKKyAgIDptb2Q6YHBhY2thZ2luZ2AKKyAgICAgIEEgbGlicmFyeSByZWZlcmVuY2UgZm9yIGRldmVsb3BlcnMgb2YgcGFja2FnaW5nIHRvb2xzIHdhbnRpbmcgdG8gdXNlCisgICAgICBzdGFuZGFsb25lIGJ1aWxkaW5nIGJsb2NrcyBsaWtlIDptb2Q6YH5wYWNrYWdpbmcudmVyc2lvbmAgb3IKKyAgICAgIDptb2Q6YH5wYWNrYWdpbmcubWV0YWRhdGFgLCBvciBleHRlbmQgUGFja2FnaW5nIGl0c2VsZi4KZGlmZiAtLWdpdCBhL0RvYy9wYWNrYWdpbmcvaW50cm9kdWN0aW9uLnJzdCBiL0RvYy9wYWNrYWdpbmcvaW50cm9kdWN0aW9uLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNzU3ZmZjCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9pbnRyb2R1Y3Rpb24ucnN0CkBAIC0wLDAgKzEsMTkzIEBACisuLiBfcGFja2FnaW5nLWludHJvOgorCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQW4gSW50cm9kdWN0aW9uIHRvIFBhY2thZ2luZworKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKworVGhpcyBkb2N1bWVudCBjb3ZlcnMgdXNpbmcgUGFja2FnaW5nIHRvIGRpc3RyaWJ1dGUgeW91ciBQeXRob24gbW9kdWxlcywKK2NvbmNlbnRyYXRpbmcgb24gdGhlIHJvbGUgb2YgZGV2ZWxvcGVyL2Rpc3RyaWJ1dG9yLiAgSWYgeW91J3JlIGxvb2tpbmcgZm9yCitpbmZvcm1hdGlvbiBvbiBpbnN0YWxsaW5nIFB5dGhvbiBtb2R1bGVzIHlvdSBzaG91bGQgcmVmZXIgdG8gdGhlCis6cmVmOmBwYWNrYWdpbmctaW5zdGFsbC1pbmRleGAgY2hhcHRlci4KKworVGhyb3VnaG91dCB0aGlzIGRvY3VtZW50YXRpb24sIHRoZSB0ZXJtcyAiRGlzdHV0aWxzIiwgInRoZSBEaXN0dXRpbHMiIGFuZAorIlBhY2thZ2luZyIgd2lsbCBiZSB1c2VkIGludGVyY2hhbmdlYWJseS4KKworLi4gX3BhY2thZ2luZy1jb25jZXB0czoKKworQ29uY2VwdHMgJiBUZXJtaW5vbG9neQorPT09PT09PT09PT09PT09PT09PT09PQorCitVc2luZyBEaXN0dXRpbHMgaXMgcXVpdGUgc2ltcGxlIGJvdGggZm9yIG1vZHVsZSBkZXZlbG9wZXJzIGFuZCBmb3IKK3VzZXJzL2FkbWluaXN0cmF0b3JzIGluc3RhbGxpbmcgdGhpcmQtcGFydHkgbW9kdWxlcy4gIEFzIGEgZGV2ZWxvcGVyLCB5b3VyCityZXNwb25zaWJpbGl0aWVzIChhcGFydCBmcm9tIHdyaXRpbmcgc29saWQsIHdlbGwtZG9jdW1lbnRlZCBhbmQgd2VsbC10ZXN0ZWQKK2NvZGUsIG9mIGNvdXJzZSEpIGFyZToKKworKiB3cml0aW5nIGEgc2V0dXAgc2NyaXB0ICg6ZmlsZTpgc2V0dXAucHlgIGJ5IGNvbnZlbnRpb24pCisKKyogKG9wdGlvbmFsKSB3cml0aW5nIGEgc2V0dXAgY29uZmlndXJhdGlvbiBmaWxlCisKKyogY3JlYXRpbmcgYSBzb3VyY2UgZGlzdHJpYnV0aW9uCisKKyogKG9wdGlvbmFsKSBjcmVhdGluZyBvbmUgb3IgbW9yZSAiYnVpbHQiIChiaW5hcnkpIGRpc3RyaWJ1dGlvbnMgb2YgeW91cgorICBwcm9qZWN0CisKK0FsbCBvZiB0aGVzZSB0YXNrcyBhcmUgY292ZXJlZCBpbiB0aGlzIGRvY3VtZW50LgorCitOb3QgYWxsIG1vZHVsZSBkZXZlbG9wZXJzIGhhdmUgYWNjZXNzIHRvIG11bHRpcGxlIHBsYXRmb3Jtcywgc28gb25lIGNhbm5vdAorZXhwZWN0IHRoZW0gdG8gY3JlYXRlIGJ1aWxkdCBkaXN0cmlidXRpb25zIGZvciBldmVyeSBwbGF0Zm9ybS4gIFRvIHJlbWVkeQordGhpcywgaXQgaXMgaG9wZWQgdGhhdCBpbnRlcm1lZGlhcmllcyBjYWxsZWQgKnBhY2thZ2Vycyogd2lsbCBhcmlzZSB0byBhZGRyZXNzCit0aGlzIG5lZWQuICBQYWNrYWdlcnMgdGFrZSBzb3VyY2UgZGlzdHJpYnV0aW9ucyByZWxlYXNlZCBieSBtb2R1bGUgZGV2ZWxvcGVycywKK2J1aWxkIHRoZW0gb24gb25lIG9yIG1vcmUgcGxhdGZvcm1zIGFuZCByZWxlYXNlIHRoZSByZXN1bHRpbmcgYnVpbHQKK2Rpc3RyaWJ1dGlvbnMuICBUaHVzLCB1c2VycyBvbiBhIGdyZWF0ZXIgcmFuZ2Ugb2YgcGxhdGZvcm1zIHdpbGwgYmUgYWJsZSB0bworaW5zdGFsbCB0aGUgbW9zdCBwb3B1bGFyIFB5dGhvbiBtb2R1bGVzIGluIHRoZSBtb3N0IG5hdHVyYWwgd2F5IGZvciB0aGVpcgorcGxhdGZvcm0gd2l0aG91dCBoYXZpbmcgdG8gcnVuIGEgc2V0dXAgc2NyaXB0IG9yIGNvbXBpbGUgYSBzaW5nbGUgbGluZSBvZiBjb2RlLgorCisKKy4uIF9wYWNrYWdpbmctc2ltcGxlLWV4YW1wbGU6CisKK0EgU2ltcGxlIEV4YW1wbGUKKz09PT09PT09PT09PT09PT0KKworQSBzZXR1cCBzY3JpcHQgaXMgdXN1YWxseSBxdWl0ZSBzaW1wbGUsIGFsdGhvdWdoIHNpbmNlIGl0J3Mgd3JpdHRlbiBpbiBQeXRob24KK3RoZXJlIGFyZSBubyBhcmJpdHJhcnkgbGltaXRzIHRvIHdoYXQgeW91IGNhbiBkbyB3aXRoIGl0LCB0aG91Z2ggeW91IHNob3VsZCBiZQorY2FyZWZ1bCBhYm91dCBwdXR0aW5nIGV4cGVuc2l2ZSBvcGVyYXRpb25zIGluIHlvdXIgc2V0dXAgc2NyaXB0LgorVW5saWtlLCBzYXksIEF1dG9jb25mLXN0eWxlIGNvbmZpZ3VyZSBzY3JpcHRzIHRoZSBzZXR1cCBzY3JpcHQgbWF5IGJlIHJ1bgorbXVsdGlwbGUgdGltZXMgaW4gdGhlIGNvdXJzZSBvZiBidWlsZGluZyBhbmQgaW5zdGFsbGluZyBhIG1vZHVsZQorZGlzdHJpYnV0aW9uLgorCitJZiBhbGwgeW91IHdhbnQgdG8gZG8gaXMgZGlzdHJpYnV0ZSBhIG1vZHVsZSBjYWxsZWQgOm1vZDpgZm9vYCwgY29udGFpbmVkIGluIGEKK2ZpbGUgOmZpbGU6YGZvby5weWAsIHRoZW4geW91ciBzZXR1cCBzY3JpcHQgY2FuIGJlIGFzIHNpbXBsZSBhczo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBzZXR1cChuYW1lPSdmb28nLAorICAgICAgICAgdmVyc2lvbj0nMS4wJywKKyAgICAgICAgIHB5X21vZHVsZXM9Wydmb28nXSkKKworU29tZSBvYnNlcnZhdGlvbnM6CisKKyogbW9zdCBpbmZvcm1hdGlvbiB0aGF0IHlvdSBzdXBwbHkgdG8gdGhlIERpc3R1dGlscyBpcyBzdXBwbGllZCBhcyBrZXl3b3JkCisgIGFyZ3VtZW50cyB0byB0aGUgOmZ1bmM6YHNldHVwYCBmdW5jdGlvbgorCisqIHRob3NlIGtleXdvcmQgYXJndW1lbnRzIGZhbGwgaW50byB0d28gY2F0ZWdvcmllczogcGFja2FnZSBtZXRhZGF0YSAobmFtZSwKKyAgdmVyc2lvbiBudW1iZXIsIGV0Yy4pIGFuZCBpbmZvcm1hdGlvbiBhYm91dCB3aGF0J3MgaW4gdGhlIHBhY2thZ2UgKGEgbGlzdAorICBvZiBwdXJlIFB5dGhvbiBtb2R1bGVzIGluIHRoaXMgY2FzZSkKKworKiBtb2R1bGVzIGFyZSBzcGVjaWZpZWQgYnkgbW9kdWxlIG5hbWUsIG5vdCBmaWxlbmFtZSAodGhlIHNhbWUgd2lsbCBob2xkIHRydWUKKyAgZm9yIHBhY2thZ2VzIGFuZCBleHRlbnNpb25zKQorCisqIGl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3Ugc3VwcGx5IGEgbGl0dGxlIG1vcmUgbWV0YWRhdGEgdGhhbiB3ZSBoYXZlIGluIHRoZQorICBleGFtcGxlLiAgSW4gcGFydGljdWxhciB5b3VyIG5hbWUsIGVtYWlsIGFkZHJlc3MgYW5kIGEgVVJMIGZvciB0aGUKKyAgcHJvamVjdCBpZiBhcHByb3ByaWF0ZSAoc2VlIHNlY3Rpb24gOnJlZjpgcGFja2FnaW5nLXNldHVwLXNjcmlwdGAgZm9yIGFuIGV4YW1wbGUpCisKK1RvIGNyZWF0ZSBhIHNvdXJjZSBkaXN0cmlidXRpb24gZm9yIHRoaXMgbW9kdWxlIHlvdSB3b3VsZCBjcmVhdGUgYSBzZXR1cAorc2NyaXB0LCA6ZmlsZTpgc2V0dXAucHlgLCBjb250YWluaW5nIHRoZSBhYm92ZSBjb2RlIGFuZCBydW46OgorCisgICBweXRob24gc2V0dXAucHkgc2Rpc3QKKword2hpY2ggd2lsbCBjcmVhdGUgYW4gYXJjaGl2ZSBmaWxlIChlLmcuLCB0YXJiYWxsIG9uIFVuaXgsIFpJUCBmaWxlIG9uIFdpbmRvd3MpCitjb250YWluaW5nIHlvdXIgc2V0dXAgc2NyaXB0IDpmaWxlOmBzZXR1cC5weWAsIGFuZCB5b3VyIG1vZHVsZSA6ZmlsZTpgZm9vLnB5YC4KK1RoZSBhcmNoaXZlIGZpbGUgd2lsbCBiZSBuYW1lZCA6ZmlsZTpgZm9vLTEuMC50YXIuZ3pgIChvciA6ZmlsZTpgLnppcGApLCBhbmQKK3dpbGwgdW5wYWNrIGludG8gYSBkaXJlY3RvcnkgOmZpbGU6YGZvby0xLjBgLgorCitJZiBhbiBlbmQtdXNlciB3aXNoZXMgdG8gaW5zdGFsbCB5b3VyIDptb2Q6YGZvb2AgbW9kdWxlIGFsbCBoZSBoYXMgdG8gZG8gaXMKK2Rvd25sb2FkIDpmaWxlOmBmb28tMS4wLnRhci5nemAgKG9yIDpmaWxlOmAuemlwYCksIHVucGFjayBpdCwgYW5kIGZyb20gdGhlCis6ZmlsZTpgZm9vLTEuMGAgZGlyZWN0b3J5IHJ1biA6OgorCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbAorCit3aGljaCB3aWxsIGNvcHkgOmZpbGU6YGZvby5weWAgdG8gdGhlIGFwcHJvcHJpYXRlIGRpcmVjdG9yeSBmb3IKK3RoaXJkLXBhcnR5IG1vZHVsZXMgaW4gdGhlaXIgUHl0aG9uIGluc3RhbGxhdGlvbi4KKworVGhpcyBzaW1wbGUgZXhhbXBsZSBkZW1vbnN0cmF0ZXMgc29tZSBmdW5kYW1lbnRhbCBjb25jZXB0cyBvZiBEaXN0dXRpbHMuCitGaXJzdCwgYm90aCBkZXZlbG9wZXJzIGFuZCBpbnN0YWxsZXJzIGhhdmUgdGhlIHNhbWUgYmFzaWMgdXNlciBpbnRlcmZhY2UsIGkuZS4KK3RoZSBzZXR1cCBzY3JpcHQuICBUaGUgZGlmZmVyZW5jZSBpcyB3aGljaCBEaXN0dXRpbHMgKmNvbW1hbmRzKiB0aGV5IHVzZTogdGhlCis6Y29tbWFuZDpgc2Rpc3RgIGNvbW1hbmQgaXMgYWxtb3N0IGV4Y2x1c2l2ZWx5IGZvciBtb2R1bGUgZGV2ZWxvcGVycywgd2hpbGUKKzpjb21tYW5kOmBpbnN0YWxsYCBpcyBtb3JlIG9mdGVuIHVzZWQgYnkgaW5zdGFsbGVycyAoYWx0aG91Z2ggc29tZSBkZXZlbG9wZXJzCit3aWxsIHdhbnQgdG8gaW5zdGFsbCB0aGVpciBvd24gY29kZSBvY2Nhc2lvbmFsbHkpLgorCitJZiB5b3Ugd2FudCB0byBtYWtlIHRoaW5ncyByZWFsbHkgZWFzeSBmb3IgeW91ciB1c2VycywgeW91IGNhbiBjcmVhdGUgbW9yZQordGhhbiBvbmUgYnVpbHQgZGlzdHJpYnV0aW9ucyBmb3IgdGhlbS4gIEZvciBpbnN0YW5jZSwgaWYgeW91IGFyZSBydW5uaW5nIG9uIGEKK1dpbmRvd3MgbWFjaGluZSBhbmQgd2FudCB0byBtYWtlIHRoaW5ncyBlYXN5IGZvciBvdGhlciBXaW5kb3dzIHVzZXJzLCB5b3UgY2FuCitjcmVhdGUgYW4gZXhlY3V0YWJsZSBpbnN0YWxsZXIgKHRoZSBtb3N0IGFwcHJvcHJpYXRlIHR5cGUgb2YgYnVpbHQgZGlzdHJpYnV0aW9uCitmb3IgdGhpcyBwbGF0Zm9ybSkgd2l0aCB0aGUgOmNvbW1hbmQ6YGJkaXN0X3dpbmluc3RgIGNvbW1hbmQuICBGb3IgZXhhbXBsZTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBiZGlzdF93aW5pbnN0CisKK3dpbGwgY3JlYXRlIGFuIGV4ZWN1dGFibGUgaW5zdGFsbGVyLCA6ZmlsZTpgZm9vLTEuMC53aW4zMi5leGVgLCBpbiB0aGUgY3VycmVudAorZGlyZWN0b3J5LiAgWW91IGNhbiBmaW5kIG91dCB3aGF0IGRpc3RyaWJ1dGlvbiBmb3JtYXRzIGFyZSBhdmFpbGFibGUgYXQgYW55IHRpbWUKK2J5IHJ1bm5pbmcgOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJkaXN0IC0taGVscC1mb3JtYXRzCisKKworLi4gX3BhY2thZ2luZy1weXRob24tdGVybXM6CisKK0dlbmVyYWwgUHl0aG9uIHRlcm1pbm9sb2d5Cis9PT09PT09PT09PT09PT09PT09PT09PT09PQorCitJZiB5b3UncmUgcmVhZGluZyB0aGlzIGRvY3VtZW50LCB5b3UgcHJvYmFibHkgaGF2ZSBhIGdvb2QgaWRlYSBvZiB3aGF0IFB5dGhvbgorbW9kdWxlcywgZXh0ZW5zaW9ucyBhbmQgc28gZm9ydGggYXJlLiAgTmV2ZXJ0aGVsZXNzLCBqdXN0IHRvIGJlIHN1cmUgdGhhdAorZXZlcnlvbmUgaXMgb24gdGhlIHNhbWUgcGFnZSwgaGVyZSdzIGEgcXVpY2sgb3ZlcnZpZXcgb2YgUHl0aG9uIHRlcm1zOgorCittb2R1bGUKKyAgIFRoZSBiYXNpYyB1bml0IG9mIGNvZGUgcmV1c2FiaWxpdHkgaW4gUHl0aG9uOiBhIGJsb2NrIG9mIGNvZGUgaW1wb3J0ZWQgYnkKKyAgIHNvbWUgb3RoZXIgY29kZS4gIFRocmVlIHR5cGVzIG9mIG1vZHVsZXMgYXJlIGltcG9ydGFudCB0byB1cyBoZXJlOiBwdXJlCisgICBQeXRob24gbW9kdWxlcywgZXh0ZW5zaW9uIG1vZHVsZXMgYW5kIHBhY2thZ2VzLgorCitwdXJlIFB5dGhvbiBtb2R1bGUKKyAgIEEgbW9kdWxlIHdyaXR0ZW4gaW4gUHl0aG9uIGFuZCBjb250YWluZWQgaW4gYSBzaW5nbGUgOmZpbGU6YC5weWAgZmlsZSAoYW5kCisgICBwb3NzaWJseSBhc3NvY2lhdGVkIDpmaWxlOmAucHljYCBhbmQvb3IgOmZpbGU6YC5weW9gIGZpbGVzKS4gIFNvbWV0aW1lcworICAgcmVmZXJyZWQgdG8gYXMgYSAicHVyZSBtb2R1bGUuIgorCitleHRlbnNpb24gbW9kdWxlCisgICBBIG1vZHVsZSB3cml0dGVuIGluIHRoZSBsb3ctbGV2ZWwgbGFuZ3VhZ2Ugb2YgdGhlIFB5dGhvbiBpbXBsZW1lbnRhdGlvbjogQy9DKysKKyAgIGZvciBQeXRob24sIEphdmEgZm9yIEp5dGhvbi4gIFR5cGljYWxseSBjb250YWluZWQgaW4gYSBzaW5nbGUgZHluYW1pY2FsbHkKKyAgIGxvYWRlZCBwcmUtY29tcGlsZWQgZmlsZSwgZS5nLiBhIHNoYXJlZCBvYmplY3QgKDpmaWxlOmAuc29gKSBmaWxlIGZvciBQeXRob24KKyAgIGV4dGVuc2lvbnMgb24gVW5peCwgYSBETEwgKGdpdmVuIHRoZSA6ZmlsZTpgLnB5ZGAgZXh0ZW5zaW9uKSBmb3IgUHl0aG9uCisgICBleHRlbnNpb25zIG9uIFdpbmRvd3MsIG9yIGEgSmF2YSBjbGFzcyBmaWxlIGZvciBKeXRob24gZXh0ZW5zaW9ucy4gIE5vdGUgdGhhdAorICAgY3VycmVudGx5IERpc3R1dGlscyBvbmx5IGhhbmRsZXMgQy9DKysgZXh0ZW5zaW9ucyBmb3IgUHl0aG9uLgorCitwYWNrYWdlCisgICBBIG1vZHVsZSB0aGF0IGNvbnRhaW5zIG90aGVyIG1vZHVsZXMsIHR5cGljYWxseSBjb250YWluZWQgaW4gYSBkaXJlY3Rvcnkgb2YKKyAgIHRoZSBmaWxlc3lzdGVtIGFuZCBkaXN0aW5ndWlzaGVkIGZyb20gb3RoZXIgZGlyZWN0b3JpZXMgYnkgdGhlIHByZXNlbmNlIG9mIGEKKyAgIGZpbGUgOmZpbGU6YF9faW5pdF9fLnB5YC4KKworcm9vdCBwYWNrYWdlCisgICBUaGUgcm9vdCBvZiB0aGUgaGllcmFyY2h5IG9mIHBhY2thZ2VzLiAgKFRoaXMgaXNuJ3QgcmVhbGx5IGEgcGFja2FnZSwKKyAgIHNpbmNlIGl0IGRvZXNuJ3QgaGF2ZSBhbiA6ZmlsZTpgX19pbml0X18ucHlgIGZpbGUuICBCdXQuLi4gd2UgaGF2ZSB0bworICAgY2FsbCBpdCBzb21ldGhpbmcsIHJpZ2h0PykgIFRoZSB2YXN0IG1ham9yaXR5IG9mIHRoZSBzdGFuZGFyZCBsaWJyYXJ5IGlzCisgICBpbiB0aGUgcm9vdCBwYWNrYWdlLCBhcyBhcmUgbWFueSBzbWFsbCBzdGFuZGFsb25lIHRoaXJkLXBhcnR5IG1vZHVsZXMgdGhhdAorICAgZG9uJ3QgYmVsb25nIHRvIGEgbGFyZ2VyIG1vZHVsZSBjb2xsZWN0aW9uLiAgVW5saWtlIHJlZ3VsYXIgcGFja2FnZXMsCisgICBtb2R1bGVzIGluIHRoZSByb290IHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIG1hbnkgZGlyZWN0b3JpZXM6IGluIGZhY3QsCisgICBldmVyeSBkaXJlY3RvcnkgbGlzdGVkIGluIGBgc3lzLnBhdGhgYCBjb250cmlidXRlcyBtb2R1bGVzIHRvIHRoZSByb290CisgICBwYWNrYWdlLgorCisKKy4uIF9wYWNrYWdpbmctdGVybToKKworRGlzdHV0aWxzLXNwZWNpZmljIHRlcm1pbm9sb2d5Cis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlIGZvbGxvd2luZyB0ZXJtcyBhcHBseSBtb3JlIHNwZWNpZmljYWxseSB0byB0aGUgZG9tYWluIG9mIGRpc3RyaWJ1dGluZyBQeXRob24KK21vZHVsZXMgdXNpbmcgRGlzdHV0aWxzOgorCittb2R1bGUgZGlzdHJpYnV0aW9uCisgICBBIGNvbGxlY3Rpb24gb2YgUHl0aG9uIG1vZHVsZXMgZGlzdHJpYnV0ZWQgdG9nZXRoZXIgYXMgYSBzaW5nbGUgZG93bmxvYWRhYmxlCisgICByZXNvdXJjZSBhbmQgbWVhbnQgdG8gYmUgaW5zdGFsbGVkIGFsbCBhcyBvbmUuICBFeGFtcGxlcyBvZiBzb21lIHdlbGwta25vd24KKyAgIG1vZHVsZSBkaXN0cmlidXRpb25zIGFyZSBOdW1QeSwgU2NpUHksIFBJTCAodGhlIFB5dGhvbiBJbWFnaW5nCisgICBMaWJyYXJ5KSBvciBteEJhc2UuICAoTW9kdWxlIGRpc3RyaWJ1dGlvbnMgd291bGQgYmUgY2FsbGVkIGEgKnBhY2thZ2UqLAorICAgZXhjZXB0IHRoYXQgdGVybSBpcyBhbHJlYWR5IHRha2VuIGluIHRoZSBQeXRob24gY29udGV4dDogYSBzaW5nbGUgbW9kdWxlCisgICBkaXN0cmlidXRpb24gbWF5IGNvbnRhaW4gemVybywgb25lLCBvciBtYW55IFB5dGhvbiBwYWNrYWdlcy4pCisKK3B1cmUgbW9kdWxlIGRpc3RyaWJ1dGlvbgorICAgQSBtb2R1bGUgZGlzdHJpYnV0aW9uIHRoYXQgY29udGFpbnMgb25seSBwdXJlIFB5dGhvbiBtb2R1bGVzIGFuZCBwYWNrYWdlcy4KKyAgIFNvbWV0aW1lcyByZWZlcnJlZCB0byBhcyBhICJwdXJlIGRpc3RyaWJ1dGlvbi4iCisKK25vbi1wdXJlIG1vZHVsZSBkaXN0cmlidXRpb24KKyAgIEEgbW9kdWxlIGRpc3RyaWJ1dGlvbiB0aGF0IGNvbnRhaW5zIGF0IGxlYXN0IG9uZSBleHRlbnNpb24gbW9kdWxlLiAgU29tZXRpbWVzCisgICByZWZlcnJlZCB0byBhcyBhICJub24tcHVyZSBkaXN0cmlidXRpb24uIgorCitkaXN0cmlidXRpb24gcm9vdAorICAgVGhlIHRvcC1sZXZlbCBkaXJlY3Rvcnkgb2YgeW91ciBzb3VyY2UgdHJlZSAob3IgIHNvdXJjZSBkaXN0cmlidXRpb24pLiAgVGhlCisgICBkaXJlY3Rvcnkgd2hlcmUgOmZpbGU6YHNldHVwLnB5YCBleGlzdHMuICBHZW5lcmFsbHkgIDpmaWxlOmBzZXR1cC5weWAgd2lsbAorICAgYmUgcnVuIGZyb20gdGhpcyBkaXJlY3RvcnkuCmRpZmYgLS1naXQgYS9Eb2MvcGFja2FnaW5nL3BhY2thZ2VpbmRleC5yc3QgYi9Eb2MvcGFja2FnaW5nL3BhY2thZ2VpbmRleC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2QxZDU5OAotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9wYWNrYWdpbmcvcGFja2FnZWluZGV4LnJzdApAQCAtMCwwICsxLDEwNCBAQAorLi4gX3BhY2thZ2luZy1wYWNrYWdlLWluZGV4OgorCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitSZWdpc3RlcmluZyB3aXRoIHRoZSBQYWNrYWdlIEluZGV4CisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisKK1RoZSBQeXRob24gUGFja2FnZSBJbmRleCAoUHlQSSkgaG9sZHMgbWV0YWRhdGEgZGVzY3JpYmluZyBkaXN0cmlidXRpb25zCitwYWNrYWdlZCB3aXRoIHBhY2thZ2luZy4gVGhlIHBhY2thZ2luZyBjb21tYW5kIDpjb21tYW5kOmByZWdpc3RlcmAgaXMgdXNlZCB0bworc3VibWl0IHlvdXIgZGlzdHJpYnV0aW9uJ3MgbWV0YWRhdGEgdG8gdGhlIGluZGV4LiBJdCBpcyBpbnZva2VkIGFzIGZvbGxvd3M6OgorCisgICAgcHl0aG9uIHNldHVwLnB5IHJlZ2lzdGVyCisKK0Rpc3R1dGlscyB3aWxsIHJlc3BvbmQgd2l0aCB0aGUgZm9sbG93aW5nIHByb21wdDo6CisKKyAgICBydW5uaW5nIHJlZ2lzdGVyCisgICAgV2UgbmVlZCB0byBrbm93IHdobyB5b3UgYXJlLCBzbyBwbGVhc2UgY2hvb3NlIGVpdGhlcjoKKyAgICAgICAgMS4gdXNlIHlvdXIgZXhpc3RpbmcgbG9naW4sCisgICAgICAgIDIuIHJlZ2lzdGVyIGFzIGEgbmV3IHVzZXIsCisgICAgICAgIDMuIGhhdmUgdGhlIHNlcnZlciBnZW5lcmF0ZSBhIG5ldyBwYXNzd29yZCBmb3IgeW91IChhbmQgZW1haWwgaXQgdG8geW91KSwgb3IKKyAgICAgICAgNC4gcXVpdAorICAgIFlvdXIgc2VsZWN0aW9uIFtkZWZhdWx0IDFdOgorCitOb3RlOiBpZiB5b3VyIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBhcmUgc2F2ZWQgbG9jYWxseSwgeW91IHdpbGwgbm90IHNlZSB0aGlzCittZW51LgorCitJZiB5b3UgaGF2ZSBub3QgcmVnaXN0ZXJlZCB3aXRoIFB5UEksIHRoZW4geW91IHdpbGwgbmVlZCB0byBkbyBzbyBub3cuIFlvdQorc2hvdWxkIGNob29zZSBvcHRpb24gMiwgYW5kIGVudGVyIHlvdXIgZGV0YWlscyBhcyByZXF1aXJlZC4gU29vbiBhZnRlcgorc3VibWl0dGluZyB5b3VyIGRldGFpbHMsIHlvdSB3aWxsIHJlY2VpdmUgYW4gZW1haWwgd2hpY2ggd2lsbCBiZSB1c2VkIHRvIGNvbmZpcm0KK3lvdXIgcmVnaXN0cmF0aW9uLgorCitPbmNlIHlvdSBhcmUgcmVnaXN0ZXJlZCwgeW91IG1heSBjaG9vc2Ugb3B0aW9uIDEgZnJvbSB0aGUgbWVudS4gWW91IHdpbGwgYmUKK3Byb21wdGVkIGZvciB5b3VyIFB5UEkgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBhbmQgOmNvbW1hbmQ6YHJlZ2lzdGVyYCB3aWxsIHRoZW4KK3N1Ym1pdCB5b3VyIG1ldGFkYXRhIHRvIHRoZSBpbmRleC4KKworWW91IG1heSBzdWJtaXQgYW55IG51bWJlciBvZiB2ZXJzaW9ucyBvZiB5b3VyIGRpc3RyaWJ1dGlvbiB0byB0aGUgaW5kZXguIElmIHlvdQorYWx0ZXIgdGhlIG1ldGFkYXRhIGZvciBhIHBhcnRpY3VsYXIgdmVyc2lvbiwgeW91IG1heSBzdWJtaXQgaXQgYWdhaW4gYW5kIHRoZQoraW5kZXggd2lsbCBiZSB1cGRhdGVkLgorCitQeVBJIGhvbGRzIGEgcmVjb3JkIGZvciBlYWNoIChuYW1lLCB2ZXJzaW9uKSBjb21iaW5hdGlvbiBzdWJtaXR0ZWQuIFRoZSBmaXJzdAordXNlciB0byBzdWJtaXQgaW5mb3JtYXRpb24gZm9yIGEgZ2l2ZW4gbmFtZSBpcyBkZXNpZ25hdGVkIHRoZSBPd25lciBvZiB0aGF0CituYW1lLiBUaGV5IG1heSBzdWJtaXQgY2hhbmdlcyB0aHJvdWdoIHRoZSA6Y29tbWFuZDpgcmVnaXN0ZXJgIGNvbW1hbmQgb3IgdGhyb3VnaAordGhlIHdlYiBpbnRlcmZhY2UuIFRoZXkgbWF5IGFsc28gZGVzaWduYXRlIG90aGVyIHVzZXJzIGFzIE93bmVycyBvciBNYWludGFpbmVycy4KK01haW50YWluZXJzIG1heSBlZGl0IHRoZSBwYWNrYWdlIGluZm9ybWF0aW9uLCBidXQgbm90IGRlc2lnbmF0ZSBvdGhlciBPd25lcnMgb3IKK01haW50YWluZXJzLgorCitCeSBkZWZhdWx0IFB5UEkgd2lsbCBsaXN0IGFsbCB2ZXJzaW9ucyBvZiBhIGdpdmVuIHBhY2thZ2UuIFRvIGhpZGUgY2VydGFpbgordmVyc2lvbnMsIHRoZSBIaWRkZW4gcHJvcGVydHkgc2hvdWxkIGJlIHNldCB0byB5ZXMuIFRoaXMgbXVzdCBiZSBlZGl0ZWQgdGhyb3VnaAordGhlIHdlYiBpbnRlcmZhY2UuCisKKworLi4gX3BhY2thZ2luZy1weXBpcmM6CisKK1RoZSAucHlwaXJjIGZpbGUKKz09PT09PT09PT09PT09PT0KKworVGhlIGZvcm1hdCBvZiB0aGUgOmZpbGU6YC5weXBpcmNgIGZpbGUgaXMgYXMgZm9sbG93czo6CisKKyAgICBbcGFja2FnaW5nXQorICAgIGluZGV4LXNlcnZlcnMgPQorICAgICAgICBweXBpCisKKyAgICBbcHlwaV0KKyAgICByZXBvc2l0b3J5OiA8cmVwb3NpdG9yeS11cmw+CisgICAgdXNlcm5hbWU6IDx1c2VybmFtZT4KKyAgICBwYXNzd29yZDogPHBhc3N3b3JkPgorCitUaGUgKnBhY2thZ2luZyogc2VjdGlvbiBkZWZpbmVzIGEgKmluZGV4LXNlcnZlcnMqIHZhcmlhYmxlIHRoYXQgbGlzdHMgdGhlCituYW1lIG9mIGFsbCBzZWN0aW9ucyBkZXNjcmliaW5nIGEgcmVwb3NpdG9yeS4KKworRWFjaCBzZWN0aW9uIGRlc2NyaWJpbmcgYSByZXBvc2l0b3J5IGRlZmluZXMgdGhyZWUgdmFyaWFibGVzOgorCistICpyZXBvc2l0b3J5KiwgdGhhdCBkZWZpbmVzIHRoZSB1cmwgb2YgdGhlIFB5UEkgc2VydmVyLiBEZWZhdWx0cyB0bworICAgIGBgaHR0cDovL3d3dy5weXRob24ub3JnL3B5cGlgYC4KKy0gKnVzZXJuYW1lKiwgd2hpY2ggaXMgdGhlIHJlZ2lzdGVyZWQgdXNlcm5hbWUgb24gdGhlIFB5UEkgc2VydmVyLgorLSAqcGFzc3dvcmQqLCB0aGF0IHdpbGwgYmUgdXNlZCB0byBhdXRoZW50aWNhdGUuIElmIG9taXR0ZWQgdGhlIHVzZXIKKyAgICB3aWxsIGJlIHByb21wdCB0byB0eXBlIGl0IHdoZW4gbmVlZGVkLgorCitJZiB5b3Ugd2FudCB0byBkZWZpbmUgYW5vdGhlciBzZXJ2ZXIgYSBuZXcgc2VjdGlvbiBjYW4gYmUgY3JlYXRlZCBhbmQKK2xpc3RlZCBpbiB0aGUgKmluZGV4LXNlcnZlcnMqIHZhcmlhYmxlOjoKKworICAgIFtwYWNrYWdpbmddCisgICAgaW5kZXgtc2VydmVycyA9CisgICAgICAgIHB5cGkKKyAgICAgICAgb3RoZXIKKworICAgIFtweXBpXQorICAgIHJlcG9zaXRvcnk6IDxyZXBvc2l0b3J5LXVybD4KKyAgICB1c2VybmFtZTogPHVzZXJuYW1lPgorICAgIHBhc3N3b3JkOiA8cGFzc3dvcmQ+CisKKyAgICBbb3RoZXJdCisgICAgcmVwb3NpdG9yeTogaHR0cDovL2V4YW1wbGUuY29tL3B5cGkKKyAgICB1c2VybmFtZTogPHVzZXJuYW1lPgorICAgIHBhc3N3b3JkOiA8cGFzc3dvcmQ+CisKKzpjb21tYW5kOmByZWdpc3RlcmAgY2FuIHRoZW4gYmUgY2FsbGVkIHdpdGggdGhlIC1yIG9wdGlvbiB0byBwb2ludCB0aGUKK3JlcG9zaXRvcnkgdG8gd29yayB3aXRoOjoKKworICAgIHB5dGhvbiBzZXR1cC5weSByZWdpc3RlciAtciBodHRwOi8vZXhhbXBsZS5jb20vcHlwaQorCitGb3IgY29udmVuaWVuY2UsIHRoZSBuYW1lIG9mIHRoZSBzZWN0aW9uIHRoYXQgZGVzY3JpYmVzIHRoZSByZXBvc2l0b3J5CittYXkgYWxzbyBiZSB1c2VkOjoKKworICAgIHB5dGhvbiBzZXR1cC5weSByZWdpc3RlciAtciBvdGhlcgpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9zZXR1cGNmZy5yc3QgYi9Eb2MvcGFja2FnaW5nL3NldHVwY2ZnLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMzgxMDE3Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9zZXR1cGNmZy5yc3QKQEAgLTAsMCArMSw4OTAgQEAKKy4uIGhpZ2hsaWdodGxhbmc6OiBjZmcKKworLi4gX3NldHVwY2ZnLXNwZWM6CisKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK1NwZWNpZmljYXRpb24gb2YgdGhlIDpmaWxlOmBzZXR1cC5jZmdgIGZpbGUKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKworOnZlcnNpb246IDAuOQorCitUaGlzIGRvY3VtZW50IGRlc2NyaWJlcyB0aGUgOmZpbGU6YHNldHVwLmNmZ2AsIGFuIGluaS1zdHlsZSBjb25maWd1cmF0aW9uIGZpbGUKK3VzZWQgYnkgUGFja2FnaW5nIHRvIHJlcGxhY2UgdGhlIDpmaWxlOmBzZXR1cC5weWAgZmlsZSB1c2VkIGJ5IERpc3R1dGlscy4KK1RoaXMgc3BlY2lmaWNhdGlvbiBpcyBsYW5ndWFnZS1hZ25vc3RpYywgYW5kIHdpbGwgdGhlcmVmb3JlIHJlcGVhdCBzb21lCitpbmZvcm1hdGlvbiB0aGF0J3MgYWxyZWFkeSBkb2N1bWVudGVkIGZvciBQeXRob24gaW4gdGhlCis6Y2xhc3M6YGNvbmZpZ3BhcnNlci5SYXdDb25maWdQYXJzZXJgIGRvY3VtZW50YXRpb24uCisKKy4uIGNvbnRlbnRzOjoKKyAgIDpkZXB0aDogMworICAgOmxvY2FsOgorCisKKy4uIF9zZXR1cGNmZy1zeW50YXg6CisKK1N5bnRheAorPT09PT09CisKK1RoZSBpbmktc3R5bGUgZm9ybWF0IHVzZWQgaW4gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyBhIHNpbXBsZSBjb2xsZWN0aW9uIG9mCitzZWN0aW9ucyB0aGF0IGdyb3VwIHNldHMgb2Yga2V5LXZhbHVlIGZpZWxkcyBzZXBhcmF0ZWQgYnkgYGA9YGAgb3IgYGA6YGAgYW5kCitvcHRpb25hbCB3aGl0ZXNwYWNlLiAgTGluZXMgc3RhcnRpbmcgd2l0aCBgYCNgYCBvciBgYDtgYCBhcmUgY29tbWVudHMgYW5kIHdpbGwKK2JlIGlnbm9yZWQuICBFbXB0eSBsaW5lcyBhcmUgYWxzbyBpZ25vcmVkLiAgRXhhbXBsZTo6CisKKyAgIFtzZWN0aW9uMV0KKyAgICMgY29tbWVudAorICAgbmFtZSA9IHZhbHVlCisgICBuYW1lMiA9ICJvdGhlciB2YWx1ZSIKKworICAgW3NlY3Rpb24yXQorICAgZm9vID0gYmFyCisKKworUGFyc2luZyB2YWx1ZXMKKy0tLS0tLS0tLS0tLS0tLQorCitIZXJlIGFyZSBhIHNldCBvZiBydWxlcyB0byBwYXJzZSB2YWx1ZXM6CisKKy0gSWYgYSB2YWx1ZSBpcyBxdW90ZWQgd2l0aCBgYCJgYCBjaGFycywgaXQncyBhIHN0cmluZy4gIElmIGEgcXVvdGUgY2hhcmFjdGVyIGlzCisgIHByZXNlbnQgaW4gdGhlIHF1b3RlZCB2YWx1ZSwgaXQgY2FuIGJlIGVzY2FwZWQgYXMgYGBcImBgIG9yIGxlZnQgYXMtaXMuCisKKy0gSWYgdGhlIHZhbHVlIGlzIGBgdHJ1ZWBgLCBgYHRgYCwgYGB5ZXNgYCwgYGB5YGAgKGNhc2UtaW5zZW5zaXRpdmUpIG9yIGBgMWBgLAorICBpdCdzIGNvbnZlcnRlZCB0byB0aGUgbGFuZ3VhZ2UgZXF1aXZhbGVudCBvZiBhIGBgVHJ1ZWBgIHZhbHVlOyBpZiBpdCdzCisgIGBgZmFsc2VgYCwgYGBmYGAsIGBgbm9gYCwgYGBuYGAgKGNhc2UtaW5zZW5zaXRpdmUpIG9yIGBgMGBgLCBpdCdzIGNvbnZlcnRlZCB0bworICB0aGUgZXF1aXZhbGVudCBvZiBgYEZhbHNlYGAuCisKKy0gQSB2YWx1ZSBjYW4gY29udGFpbiBtdWx0aXBsZSBsaW5lcy4gIFdoZW4gcmVhZCwgbGluZXMgYXJlIGNvbnZlcnRlZCBpbnRvIGEKKyAgc2VxdWVuY2Ugb2YgdmFsdWVzLiAgRWFjaCBsaW5lIGFmdGVyIHRoZSBmaXJzdCBtdXN0IHN0YXJ0IHdpdGggYSBsZWFzdCBvbmUKKyAgc3BhY2Ugb3IgdGFiIGNoYXJhY3RlcjsgdGhpcyBsZWFkaW5nIGluZGVudGF0aW9uIHdpbGwgYmUgc3RyaXBwZWQuCisKKy0gQWxsIG90aGVyIHZhbHVlcyBhcmUgY29uc2lkZXJlZCBzdHJpbmdzLgorCitFeGFtcGxlczo6CisKKyAgIFtzZWN0aW9uXQorICAgZm9vID0gb25lCisgICAgICAgICB0d28KKyAgICAgICAgIHRocmVlCisKKyAgIGJhciA9IGZhbHNlCisgICBiYXogPSAxLjMKKyAgIGJvbyA9ICJvayIKKyAgIGJlZWUgPSAid3FkcXcgcG9qcGogd1wiZGRxIgorCisKK0V4dGVuZGluZyBmaWxlcworLS0tLS0tLS0tLS0tLS0tCisKK0EgY29uZmlndXJhdGlvbiBmaWxlIGNhbiBiZSBleHRlbmRlZCAoaS5lLiBpbmNsdWRlZCkgYnkgb3RoZXIgZmlsZXMuICBGb3IgdGhpcywKK2EgYGBERUZBVUxUYGAgc2VjdGlvbiBtdXN0IGNvbnRhaW4gYW4gYGBleHRlbmRzYGAga2V5IHdob3NlIHZhbHVlIHBvaW50cyB0byBvbmUKK29yIG1vcmUgZmlsZXMgd2hpY2ggd2lsbCBiZSBtZXJnZWQgaW50byB0aGUgY3VycmVudCBmaWxlcyBieSBhZGRpbmcgbmV3IHNlY3Rpb25zCithbmQgZmllbGRzLiAgSWYgYSBmaWxlIGxvYWRlZCBieSBgYGV4dGVuZHNgYCBjb250YWlucyBzZWN0aW9ucyBvciBrZXlzIHRoYXQKK2FscmVhZHkgZXhpc3QgaW4gdGhlIG9yaWdpbmFsIGZpbGUsIHRoZXkgd2lsbCBub3Qgb3ZlcnJpZGUgdGhlIHByZXZpb3VzIHZhbHVlcy4KKworQ29udGVudHMgb2YgOmZpbGU6YG9uZS5jZmdgOjoKKworICAgIFtzZWN0aW9uMV0KKyAgICBuYW1lID0gdmFsdWUKKworICAgIFtzZWN0aW9uMl0KKyAgICBmb28gPSBmb28gZnJvbSBvbmUuY2ZnCisKK0NvbnRlbnRzIG9mIDpmaWxlOmB0d28uY2ZnYDo6CisKKyAgICBbREVGQVVMVF0KKyAgICBleHRlbmRzID0gb25lLmNmZworCisgICAgW3NlY3Rpb24yXQorICAgIGZvbyA9IGZvbyBmcm9tIHR3by5jZmcKKyAgICBiYXogPSBiYXogZnJvbSB0d28uY2ZnCisKK1RoZSByZXN1bHQgb2YgcGFyc2luZyA6ZmlsZTpgdHdvLmNmZ2AgaXMgZXF1aXZhbGVudCB0byB0aGlzIGZpbGU6OgorCisgICAgW3NlY3Rpb24xXQorICAgIG5hbWUgPSB2YWx1ZQorCisgICAgW3NlY3Rpb24yXQorICAgIGZvbyA9IGZvbyBmcm9tIG9uZS5jZmcKKyAgICBiYXogPSBiYXogZnJvbSB0d28uY2ZnCisKK0V4YW1wbGUgdXNlIG9mIG11bHRpLWxpbmUgbm90YXRpb24gdG8gaW5jbHVkZSBtb3JlIHRoYW4gb25lIGZpbGU6OgorCisgICAgW0RFRkFVTFRdCisgICAgZXh0ZW5kcyA9IG9uZS5jZmcKKyAgICAgICAgICAgICAgdHdvLmNmZworCitXaGVuIHNldmVyYWwgZmlsZXMgYXJlIHByb3ZpZGVkLCB0aGV5IGFyZSBwcm9jZXNzZWQgc2VxdWVudGlhbGx5LCBmb2xsb3dpbmcgdGhlCitwcmVjZWRlbmNlIHJ1bGVzIGV4cGxhaW5lZCBhYm92ZS4gIFRoaXMgbWVhbnMgdGhhdCB0aGUgbGlzdCBvZiBmaWxlcyBzaG91bGQgZ28KK2Zyb20gbW9zdCBzcGVjaWFsaXplZCB0byBtb3N0IGNvbW1vbi4KKworKipUb29scyB3aWxsIG5lZWQgdG8gcHJvdmlkZSBhIHdheSB0byBwcm9kdWNlIGEgbWVyZ2VkIHZlcnNpb24gb2YgdGhlCitmaWxlKiouICBUaGlzIHdpbGwgYmUgdXNlZnVsIHRvIGxldCB1c2VycyBwdWJsaXNoIGEgc2luZ2xlIGZpbGUuCisKKworLi4gX3NldHVwY2ZnLXNlY3Rpb25zOgorCitEZXNjcmlwdGlvbiBvZiBzZWN0aW9ucyBhbmQgZmllbGRzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0VhY2ggc2VjdGlvbiBjb250YWlucyBhIGRlc2NyaXB0aW9uIG9mIGl0cyBvcHRpb25zLgorCistIE9wdGlvbnMgdGhhdCBhcmUgbWFya2VkICptdWx0aSogY2FuIGhhdmUgbXVsdGlwbGUgdmFsdWVzLCBvbmUgdmFsdWUgcGVyCisgIGxpbmUuCistIE9wdGlvbnMgdGhhdCBhcmUgbWFya2VkICpvcHRpb25hbCogY2FuIGJlIG9taXR0ZWQuCistIE9wdGlvbnMgdGhhdCBhcmUgbWFya2VkICplbnZpcm9uKiBjYW4gdXNlIGVudmlyb25tZW50IG1hcmtlcnMsIGFzIGRlc2NyaWJlZAorICBpbiA6UEVQOmAzNDVgLgorCisKK1RoZSBzZWN0aW9ucyBhcmU6CisKK2dsb2JhbAorICAgR2xvYmFsIG9wdGlvbnMgbm90IHJlbGF0ZWQgdG8gb25lIGNvbW1hbmQuCisKK21ldGFkYXRhCisgICBOYW1lLCB2ZXJzaW9uIGFuZCBvdGhlciBpbmZvcm1hdGlvbiBkZWZpbmVkIGJ5IDpQRVA6YDM0NWAuCisKK2ZpbGVzCisgICBNb2R1bGVzLCBzY3JpcHRzLCBkYXRhLCBkb2N1bWVudGF0aW9uIGFuZCBvdGhlciBmaWxlcyB0byBpbmNsdWRlIGluIHRoZQorICAgZGlzdHJpYnV0aW9uLgorCitleHRlbnNpb24gc2VjdGlvbnMKKyAgIE9wdGlvbnMgdXNlZCB0byBidWlsZCBleHRlbnNpb24gbW9kdWxlcy4KKworY29tbWFuZCBzZWN0aW9ucworICAgT3B0aW9ucyBnaXZlbiBmb3Igc3BlY2lmaWMgY29tbWFuZHMsIGlkZW50aWNhbCB0byB0aG9zZSB0aGF0IGNhbiBiZSBnaXZlbgorICAgb24gdGhlIGNvbW1hbmQgbGluZS4KKworCisuLiBfc2V0dXBjZmctc2VjdGlvbi1nbG9iYWw6CisKK0dsb2JhbCBvcHRpb25zCistLS0tLS0tLS0tLS0tLQorCitDb250YWlucyBnbG9iYWwgb3B0aW9ucyBmb3IgUGFja2FnaW5nLiBUaGlzIHNlY3Rpb24gaXMgc2hhcmVkIHdpdGggRGlzdHV0aWxzLgorCisKK2NvbW1hbmRzCisgICBEZWZpbmVkIFBhY2thZ2luZyBjb21tYW5kLiBBIGNvbW1hbmQgaXMgZGVmaW5lZCBieSBpdHMgZnVsbHkKKyAgIHF1YWxpZmllZCBuYW1lLiAqb3B0aW9uYWwqLCAqbXVsdGkqCisKKyAgIEV4YW1wbGVzOjoKKworICAgICAgW2dsb2JhbF0KKyAgICAgIGNvbW1hbmRzID0KKyAgICAgICAgICBwYWNrYWdlLnNldHVwLkN1c3RvbVNkaXN0Q29tbWFuZAorICAgICAgICAgIHBhY2thZ2Uuc2V0dXAuQmRpc3REZWIKKworY29tcGlsZXJzCisgICBEZWZpbmVkIFBhY2thZ2luZyBjb21waWxlci4gQSBjb21waWxlciBpcyBkZWZpbmVkIGJ5IGl0cyBmdWxseQorICAgcXVhbGlmaWVkIG5hbWUuICpvcHRpb25hbCosICptdWx0aSoKKworICAgRXhhbXBsZTo6CisKKyAgICAgIFtnbG9iYWxdCisgICAgICBjb21waWxlcnMgPQorICAgICAgICAgIGhvdGNvbXBpbGVyLlNtYXJ0Q0NvbXBpbGVyCisKK3NldHVwX2hvb2tzCisgICBEZWZpbmVzIGEgbGlzdCBvZiBjYWxsYWJsZXMgdG8gYmUgY2FsbGVkIHJpZ2h0IGFmdGVyIHRoZSA6ZmlsZTpgc2V0dXAuY2ZnYAorICAgZmlsZSBpcyByZWFkLCBiZWZvcmUgYW55IG90aGVyIHByb2Nlc3NpbmcuICBFYWNoIHZhbHVlIGlzIGEgUHl0aG9uIGRvdHRlZAorICAgbmFtZSB0byBhbiBvYmplY3QsIHdoaWNoIGhhcyB0byBiZSBkZWZpbmVkIGluIGEgbW9kdWxlIHByZXNlbnQgaW4gdGhlIHByb2plY3QKKyAgIGRpcmVjdG9yeSBhbG9uc2lkZSA6ZmlsZTpgc2V0dXAuY2ZnYCBvciBvbiBQeXRob24ncyA6ZGF0YTpgc3lzLnBhdGhgIChzZWUKKyAgIDpyZWY6YHBhY2thZ2luZy1maW5kaW5nLWhvb2tzYCkuICBUaGUgY2FsbGFibGVzIGFyZSBleGVjdXRlZCBpbiB0aGUKKyAgIG9yZGVyIHRoZXkncmUgZm91bmQgaW4gdGhlIGZpbGU7IGlmIG9uZSBvZiB0aGVtIGNhbm5vdCBiZSBmb3VuZCwgdG9vbHMgc2hvdWxkCisgICBub3Qgc3RvcCwgYnV0IGZvciBleGFtcGxlIHByb2R1Y2UgYSB3YXJuaW5nIGFuZCBjb250aW51ZSB3aXRoIHRoZSBuZXh0IGxpbmUuCisgICBFYWNoIGNhbGxhYmxlIHJlY2VpdmVzIHRoZSBjb25maWd1cmF0aW9uIGFzIGEgZGljdGlvbmFyeSAoa2V5cyBhcmUKKyAgIDpmaWxlOmBzZXR1cC5jZmdgIHNlY3Rpb25zLCB2YWx1ZXMgYXJlIGRpY3Rpb25hcmllcyBvZiBmaWVsZHMpIGFuZCBjYW4gbWFrZQorICAgYW55IGNoYW5nZSB0byBpdC4gICpvcHRpb25hbCosICptdWx0aSoKKworICAgRXhhbXBsZTo6CisKKyAgICAgIFtnbG9iYWxdCisgICAgICBzZXR1cF9ob29rcyA9IF9zZXR1cGhvb2tzLmN1c3RvbWl6ZV9jb25maWcKKworCisKKy4uIF9zZXR1cGNmZy1zZWN0aW9uLW1ldGFkYXRhOgorCitNZXRhZGF0YQorLS0tLS0tLS0KKworVGhlIG1ldGFkYXRhIHNlY3Rpb24gY29udGFpbnMgdGhlIG1ldGFkYXRhIGZvciB0aGUgcHJvamVjdCBhcyBkZXNjcmliZWQgaW4KKzpQRVA6YDM0NWAuICBGaWVsZCBuYW1lcyBhcmUgY2FzZS1pbnNlbnNpdGl2ZS4KKworRmllbGRzOgorCituYW1lCisgICBOYW1lIG9mIHRoZSBwcm9qZWN0LgorCit2ZXJzaW9uCisgICBWZXJzaW9uIG9mIHRoZSBwcm9qZWN0LiBNdXN0IGNvbXBseSB3aXRoIDpQRVA6YDM4NmAuCisKK3BsYXRmb3JtCisgICBQbGF0Zm9ybSBzcGVjaWZpY2F0aW9uIGRlc2NyaWJpbmcgYW4gb3BlcmF0aW5nIHN5c3RlbQorICAgc3VwcG9ydGVkIGJ5IHRoZSBkaXN0cmlidXRpb24gd2hpY2ggaXMgbm90IGxpc3RlZCBpbiB0aGUgIk9wZXJhdGluZyBTeXN0ZW0iCisgICBUcm92ZSBjbGFzc2lmaWVycyAoOlBFUDpgMzAxYCkuICAqb3B0aW9uYWwqLCAqbXVsdGkqCisKK3N1cHBvcnRlZC1wbGF0Zm9ybQorICAgQmluYXJ5IGRpc3RyaWJ1dGlvbnMgY29udGFpbmluZyBhIFBLRy1JTkZPIGZpbGUgd2lsbAorICAgdXNlIHRoZSBTdXBwb3J0ZWQtUGxhdGZvcm0gZmllbGQgaW4gdGhlaXIgbWV0YWRhdGEgdG8gc3BlY2lmeSB0aGUgT1MgYW5kCisgICBDUFUgZm9yIHdoaWNoIHRoZSBiaW5hcnkgZGlzdHJpYnV0aW9uIHdhcyBjb21waWxlZC4gIFRoZSBzZW1hbnRpY3Mgb2YKKyAgIHRoZSBTdXBwb3J0ZWQtUGxhdGZvcm0gZmllbGQgYXJlIGZyZWUgZm9ybS4gKm9wdGlvbmFsKiwgKm11bHRpKgorCitzdW1tYXJ5CisgICBBIG9uZS1saW5lIHN1bW1hcnkgb2Ygd2hhdCB0aGUgZGlzdHJpYnV0aW9uIGRvZXMuCisgICAoVXNlZCB0byBiZSBjYWxsZWQgKmRlc2NyaXB0aW9uKiBpbiBEaXN0dXRpbHMxLikKKworZGVzY3JpcHRpb24KKyAgIEEgbG9uZ2VyIGRlc2NyaXB0aW9uLiAoVXNlZCB0byBiZSBjYWxsZWQgKmxvbmdfZGVzY3JpcHRpb24qCisgICBpbiBEaXN0dXRpbHMxLikgQSBmaWxlIGNhbiBiZSBwcm92aWRlZCBpbiB0aGUgKmRlc2NyaXB0aW9uLWZpbGUqIGZpZWxkLgorICAgKm9wdGlvbmFsKgorCitrZXl3b3JkcworICAgQSBsaXN0IG9mIGFkZGl0aW9uYWwga2V5d29yZHMgdG8gYmUgdXNlZCB0byBhc3Npc3Qgc2VhcmNoaW5nCisgICBmb3IgdGhlIGRpc3RyaWJ1dGlvbiBpbiBhIGxhcmdlciBjYXRhbG9nLiBDb21tYSBvciBzcGFjZS1zZXBhcmF0ZWQuCisgICAqb3B0aW9uYWwqCisKK2hvbWUtcGFnZQorICAgVGhlIFVSTCBmb3IgdGhlIGRpc3RyaWJ1dGlvbidzIGhvbWUgcGFnZS4KKworZG93bmxvYWQtdXJsCisgICBUaGUgVVJMIGZyb20gd2hpY2ggdGhpcyB2ZXJzaW9uIG9mIHRoZSBkaXN0cmlidXRpb24KKyAgIGNhbiBiZSBkb3dubG9hZGVkLiAqb3B0aW9uYWwqCisKK2F1dGhvcgorICAgQXV0aG9yJ3MgbmFtZS4gKm9wdGlvbmFsKgorCithdXRob3ItZW1haWwKKyAgIEF1dGhvcidzIGUtbWFpbC4gKm9wdGlvbmFsKgorCittYWludGFpbmVyCisgICBNYWludGFpbmVyJ3MgbmFtZS4gKm9wdGlvbmFsKgorCittYWludGFpbmVyLWVtYWlsCisgICBNYWludGFpbmVyJ3MgZS1tYWlsLiAqb3B0aW9uYWwqCisKK2xpY2Vuc2UKKyAgIEEgdGV4dCBpbmRpY2F0aW5nIHRoZSB0ZXJtIG9mIHVzZXMsIHdoZW4gYSB0cm92ZSBjbGFzc2lmaWVyIGRvZXMKKyAgIG5vdCBtYXRjaC4gKm9wdGlvbmFsKi4KKworY2xhc3NpZmllcnMKKyAgIENsYXNzaWZpY2F0aW9uIGZvciB0aGUgZGlzdHJpYnV0aW9uLCBhcyBkZXNjcmliZWQgaW4gUEVQIDMwMS4KKyAgICpvcHRpb25hbCosICptdWx0aSosICplbnZpcm9uKgorCityZXF1aXJlcy1kaXN0CisgICBuYW1lIG9mIGFub3RoZXIgcGFja2FnaW5nIHByb2plY3QgcmVxdWlyZWQgYXMgYSBkZXBlbmRlbmN5LgorICAgVGhlIGZvcm1hdCBpcyAqbmFtZSAodmVyc2lvbikqIHdoZXJlIHZlcnNpb24gaXMgYW4gb3B0aW9uYWwKKyAgIHZlcnNpb24gZGVjbGFyYXRpb24sIGFzIGRlc2NyaWJlZCBpbiBQRVAgMzQ1LiAqb3B0aW9uYWwqLCAqbXVsdGkqLCAqZW52aXJvbioKKworcHJvdmlkZXMtZGlzdAorICAgbmFtZSBvZiBhbm90aGVyIHBhY2thZ2luZyBwcm9qZWN0IGNvbnRhaW5lZCB3aXRoaW4gdGhpcworICAgZGlzdHJpYnV0aW9uLiBTYW1lIGZvcm1hdCB0aGFuICpyZXF1aXJlcy1kaXN0Ki4gKm9wdGlvbmFsKiwgKm11bHRpKiwKKyAgICplbnZpcm9uKgorCitvYnNvbGV0ZXMtZGlzdAorICAgbmFtZSBvZiBhbm90aGVyIHBhY2thZ2luZyBwcm9qZWN0IHRoaXMgdmVyc2lvbiBvYnNvbGV0ZXMuCisgICBTYW1lIGZvcm1hdCB0aGFuICpyZXF1aXJlcy1kaXN0Ki4gKm9wdGlvbmFsKiwgKm11bHRpKiwgKmVudmlyb24qCisKK3JlcXVpcmVzLXB5dGhvbgorICAgU3BlY2lmaWVzIHRoZSBQeXRob24gdmVyc2lvbiB0aGUgZGlzdHJpYnV0aW9uIHJlcXVpcmVzLiAgVGhlIHZhbHVlIGlzIGEKKyAgIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHZlcnNpb24gcHJlZGljYXRlcywgYXMgZGVzY3JpYmVkIGluIFBFUCAzNDUuCisgICAqb3B0aW9uYWwqLCAqZW52aXJvbioKKworcmVxdWlyZXMtZXh0ZXJuYWxzCisgICBhIGRlcGVuZGVuY3kgaW4gdGhlIHN5c3RlbS4gVGhpcyBmaWVsZCBpcyBmcmVlLWZvcm0sCisgICBhbmQganVzdCBhIGhpbnQgZm9yIGRvd25zdHJlYW0gbWFpbnRhaW5lcnMuICpvcHRpb25hbCosICptdWx0aSosCisgICAqZW52aXJvbioKKworcHJvamVjdC11cmwKKyAgIEEgbGFiZWwsIGZvbGxvd2VkIGJ5IGEgYnJvd3NhYmxlIFVSTCBmb3IgdGhlIHByb2plY3QuCisgICAibGFiZWwsIHVybCIuIFRoZSBsYWJlbCBpcyBsaW1pdGVkIHRvIDMyIHNpZ25zLiAqb3B0aW9uYWwqLCAqbXVsdGkqCisKK09uZSBleHRyYSBmaWVsZCBub3QgcHJlc2VudCBpbiBQRVAgMzQ1IGlzIHN1cHBvcnRlZDoKKworZGVzY3JpcHRpb24tZmlsZQorICAgUGF0aCB0byBhIHRleHQgZmlsZSB0aGF0IHdpbGwgYmUgdXNlZCB0byBmaWxsIHRoZSBgYGRlc2NyaXB0aW9uYGAgZmllbGQuCisgICBNdWx0aXBsZSB2YWx1ZXMgYXJlIGFjY2VwdGVkOyB0aGV5IG11c3QgYmUgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuCisgICBgYGRlc2NyaXB0aW9uLWZpbGVgYCBhbmQgYGBkZXNjcmlwdGlvbmBgIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuICAqb3B0aW9uYWwqCisKKworCitFeGFtcGxlOjoKKworICAgW21ldGFkYXRhXQorICAgbmFtZSA9IHB5cGkycnBtCisgICB2ZXJzaW9uID0gMC4xCisgICBhdXRob3IgPSBUYXJlayBaaWFkw6kKKyAgIGF1dGhvci1lbWFpbCA9IHRhcmVrQHppYWRlLm9yZworICAgc3VtbWFyeSA9IFNjcmlwdCB0aGF0IHRyYW5zZm9ybXMgYW4gc2Rpc3QgYXJjaGl2ZSBpbnRvIGEgUlBNIHBhY2thZ2UKKyAgIGRlc2NyaXB0aW9uLWZpbGUgPSBSRUFETUUKKyAgIGhvbWUtcGFnZSA9IGh0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL3B5cGkycnBtL3dpa2kvSG9tZQorICAgcHJvamVjdC11cmw6CisgICAgICAgUmVwb3NpdG9yeSwgaHR0cDovL2JpdGJ1Y2tldC5vcmcvdGFyZWsvcHlwaTJycG0vCisgICAgICAgUlNTIGZlZWQsIGh0dHBzOi8vYml0YnVja2V0Lm9yZy90YXJlay9weXBpMnJwbS9yc3MKKyAgIGNsYXNzaWZpZXIgPQorICAgICAgIERldmVsb3BtZW50IFN0YXR1cyA6OiAzIC0gQWxwaGEKKyAgICAgICBMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBNb3ppbGxhIFB1YmxpYyBMaWNlbnNlIDEuMSAoTVBMIDEuMSkKKworWW91IHNob3VsZCBub3QgZ2l2ZSBhbnkgZXhwbGljaXQgdmFsdWUgZm9yIG1ldGFkYXRhLXZlcnNpb246IGl0IHdpbGwgYmUgZ3Vlc3NlZAorZnJvbSB0aGUgZmllbGRzIHByZXNlbnQgaW4gdGhlIGZpbGUuCisKKworLi4gX3NldHVwY2ZnLXNlY3Rpb24tZmlsZXM6CisKK0ZpbGVzCistLS0tLQorCitUaGlzIHNlY3Rpb24gZGVzY3JpYmVzIHRoZSBmaWxlcyBpbmNsdWRlZCBpbiB0aGUgcHJvamVjdC4KKworcGFja2FnZXNfcm9vdAorICAgdGhlIHJvb3QgZGlyZWN0b3J5IGNvbnRhaW5pbmcgYWxsIHBhY2thZ2VzIGFuZCBtb2R1bGVzCisgICAoZGVmYXVsdDogY3VycmVudCBkaXJlY3RvcnksIGkuZS4gdGhlIHByb2plY3QncyB0b3AtbGV2ZWwKKyAgIGRpcmVjdG9yeSB3aGVyZSA6ZmlsZTpgc2V0dXAuY2ZnYCBsaXZlcykuICAqb3B0aW9uYWwqCisKK3BhY2thZ2VzCisgICBhIGxpc3Qgb2YgcGFja2FnZXMgdGhlIHByb2plY3QgaW5jbHVkZXMgKm9wdGlvbmFsKiwgKm11bHRpKgorCittb2R1bGVzCisgICBhIGxpc3Qgb2YgcGFja2FnZXMgdGhlIHByb2plY3QgaW5jbHVkZXMgKm9wdGlvbmFsKiwgKm11bHRpKgorCitzY3JpcHRzCisgICBhIGxpc3Qgb2Ygc2NyaXB0cyB0aGUgcHJvamVjdCBpbmNsdWRlcyAqb3B0aW9uYWwqLCAqbXVsdGkqCisKK2V4dHJhX2ZpbGVzCisgICBhIGxpc3Qgb2YgcGF0dGVybnMgZm9yIGFkZGl0aW9uYWwgZmlsZXMgdG8gaW5jbHVkZSBpbiBzb3VyY2UgZGlzdHJpYnV0aW9ucworICAgKHNlZSA6cmVmOmBwYWNrYWdpbmctbWFuaWZlc3RgKSAqb3B0aW9uYWwqLCAqbXVsdGkqCisKK0V4YW1wbGU6OgorCisgICBbZmlsZXNdCisgICBwYWNrYWdlc19yb290ID0gc3JjCisgICBwYWNrYWdlcyA9CisgICAgICAgcHlwaTJycG0KKyAgICAgICBweXBpMnJwbS5jb21tYW5kCisKKyAgIHNjcmlwdHMgPQorICAgICAgIHB5cGkycnBtL3B5cGkycnBtLnB5CisKKyAgIGV4dHJhX2ZpbGVzID0KKyAgICAgICBzZXR1cC5weQorICAgICAgIFJFQURNRQorCisKKy4uIE5vdGU6OgorICAgVGhlIDpmaWxlOmBzZXR1cC5jZmdgIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyBpbmNsdWRlZCBieSBkZWZhdWx0LiAgQ29udHJhcnkgdG8KKyAgIERpc3R1dGlscywgOmZpbGU6YFJFQURNRWAgKG9yIDpmaWxlOmBSRUFETUUudHh0YCkgYW5kIDpmaWxlOmBzZXR1cC5weWAgYXJlCisgICBub3QgaW5jbHVkZWQgYnkgZGVmYXVsdC4KKworCitSZXNvdXJjZXMKK15eXl5eXl5eXgorCitUaGlzIHNlY3Rpb24gZGVzY3JpYmVzIHRoZSBmaWxlcyB1c2VkIGJ5IHRoZSBwcm9qZWN0IHdoaWNoIG11c3Qgbm90IGJlIGluc3RhbGxlZAoraW4gdGhlIHNhbWUgcGxhY2UgdGhhdCBweXRob24gbW9kdWxlcyBvciBsaWJyYXJpZXMsIHRoZXkgYXJlIGNhbGxlZAorKipyZXNvdXJjZXMqKi4gVGhleSBhcmUgZm9yIGV4YW1wbGUgZG9jdW1lbnRhdGlvbiBmaWxlcywgc2NyaXB0IGZpbGVzLAorZGF0YWJhc2VzLCBldGMuLi4KKworRm9yIGRlY2xhcmluZyByZXNvdXJjZXMsIHlvdSBtdXN0IHVzZSB0aGlzIG5vdGF0aW9uOjoKKworICAgc291cmNlID0gZGVzdGluYXRpb24KKworRGF0YS1maWxlcyBhcmUgZGVjbGFyZWQgaW4gdGhlICoqcmVzb3VyY2VzKiogZmllbGQgaW4gdGhlICoqZmlsZSoqIHNlY3Rpb24sIGZvcgorZXhhbXBsZTo6CisKKyAgIFtmaWxlc10KKyAgIHJlc291cmNlcyA9CisgICAgICAgc291cmNlMSA9IGRlc3RpbmF0aW9uMQorICAgICAgIHNvdXJjZTIgPSBkZXN0aW5hdGlvbjIKKworVGhlICoqc291cmNlKiogcGFydCBvZiB0aGUgZGVjbGFyYXRpb24gYXJlIHJlbGF0aXZlIHBhdGhzIG9mIHJlc291cmNlcyBmaWxlcworKHVzaW5nIHVuaXggcGF0aCBzZXBhcmF0b3IgKiovKiopLiBGb3IgZXhhbXBsZSwgaWYgeW91J3ZlIHRoaXMgc291cmNlIHRyZWU6OgorCisgICBmb28vCisgICAgICBkb2MvCisgICAgICAgICBkb2MubWFuCisgICAgICBzY3JpcHRzLworICAgICAgICAgZm9vLnNoCisKK1lvdXIgc2V0dXAuY2ZnIHdpbGwgbG9vayBsaWtlOjoKKworICAgW2ZpbGVzXQorICAgcmVzb3VyY2VzID0KKyAgICAgICBkb2MvZG9jLm1hbiA9IGRlc3RpbmF0aW9uX2RvYworICAgICAgIHNjcmlwdHMvZm9vLnNoID0gZGVzdGluYXRpb25fc2NyaXB0cworCitUaGUgZmluYWwgcGF0aHMgd2hlcmUgZmlsZXMgd2lsbCBiZSBwbGFjZWQgYXJlIGNvbXBvc2VkIGJ5IDogKipzb3VyY2UqKiArCisqKmRlc3RpbmF0aW9uKiouIEluIHRoZSBwcmV2aW91cyBleGFtcGxlLCAqKmRvYy9kb2MubWFuKiogd2lsbCBiZSBwbGFjZWQgaW4KKyoqZGVzdGluYXRpb25fZG9jL2RvYy9kb2MubWFuKiogYW5kICoqc2NyaXB0cy9mb28uc2gqKiB3aWxsIGJlIHBsYWNlZCBpbgorKipkZXN0aW5hdGlvbl9zY3JpcHRzL3NjcmlwdHMvZm9vLnNoKiouIChJZiB5b3Ugd2FudCBtb3JlIGNvbnRyb2wgb24gdGhlIGZpbmFsCitwYXRoLCB0YWtlIGEgbG9vayBhdCA6cmVmOmBzZXR1cGNmZy1yZXNvdXJjZXMtYmFzZS1wcmVmaXhgKS4KKworVGhlICoqZGVzdGluYXRpb24qKiBwYXJ0IG9mIHJlc291cmNlcyBkZWNsYXJhdGlvbiBhcmUgcGF0aHMgd2l0aCBjYXRlZ29yaWVzLgorSW5kZWVkLCBpdCdzIGdlbmVyYWxseSBhIGJhZCBpZGVhIHRvIGdpdmUgYWJzb2x1dGUgcGF0aCBhcyBpdCB3aWxsIGJlIGNyb3NzCitpbmNvbXBhdGlibGUuIFNvLCB5b3UgbXVzdCB1c2UgcmVzb3VyY2VzIGNhdGVnb3JpZXMgaW4geW91ciAqKmRlc3RpbmF0aW9uKioKK2RlY2xhcmF0aW9uLiBDYXRlZ29yaWVzIHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlaXIgcmVhbCBwYXRoIGF0IHRoZSBpbnN0YWxsYXRpb24KK3RpbWUuIFVzaW5nIGNhdGVnb3JpZXMgaXMgYWxsIGJlbmVmaXQsIHlvdXIgZGVjbGFyYXRpb24gd2lsbCBiZSBzaW1wbGVyLCBjcm9zcworcGxhdGZvcm0gYW5kIGl0IHdpbGwgYWxsb3cgcGFja2FnZXIgdG8gcGxhY2UgcmVzb3VyY2VzIGZpbGVzIHdoZXJlIHRoZXkgd2FudAord2l0aG91dCBicmVha2luZyB5b3VyIGNvZGUuCisKK0NhdGVnb3JpZXMgY2FuIGJlIHNwZWNpZmllZCBieSB1c2luZyB0aGlzIHN5bnRheDo6CisKKyAgIHtjYXRlZ29yeX0KKworRGVmYXVsdCBjYXRlZ29yaWVzIGFyZToKKworKiBjb25maWcKKyogYXBwZGF0YQorKiBhcHBkYXRhLmFyY2gKKyogYXBwZGF0YS5wZXJzaXN0ZW50CisqIGFwcGRhdGEuZGlzcG9zYWJsZQorKiBoZWxwCisqIGljb24KKyogc2NyaXB0cworKiBkb2MKKyogaW5mbworKiBtYW4KKworQSBzcGVjaWFsIGNhdGVnb3J5IGFsc28gZXhpc3RzICoqe2Rpc3RyaWJ1dGlvbi5uYW1lfSoqIHRoYXQgd2lsbCBiZSByZXBsYWNlZCBieQordGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiwgYnV0IGFzIG1vc3Qgb2YgdGhlIGRlZmF1bHRzIGNhdGVnb3JpZXMgdXNlIHRoZW0sCitzbyBpdCdzIG5vdCBuZWNlc3NhcnkgdG8gYWRkICoqe2Rpc3RyaWJ1dGlvbi5uYW1lfSoqIGludG8geW91ciBkZXN0aW5hdGlvbi4KKworSWYgeW91IHVzZSBjYXRlZ29yaWVzIGluIHlvdXIgZGVjbGFyYXRpb25zLCBhbmQgeW91IGFyZSBlbmNvdXJhZ2VkIHRvIGRvLCBmaW5hbAorcGF0aCB3aWxsIGJlOjoKKworICAgc291cmNlICsgZGVzdGluYXRpb25fZXhwYW5kZWQKKworLi4gX2V4YW1wbGVfZmluYWxfcGF0aDoKKworRm9yIGV4YW1wbGUsIGlmIHlvdSBoYXZlIHRoaXMgc2V0dXAuY2ZnOjoKKworICAgW21ldGFkYXRhXQorICAgbmFtZSA9IGZvbworCisgICBbZmlsZXNdCisgICByZXNvdXJjZXMgPQorICAgICAgIGRvYy9kb2MubWFuID0ge2RvY30KKworQW5kIGlmICoqe2RvY30qKiBpcyByZXBsYWNlZCBieSAqKntkYXRhZGlyfS9kb2Mve2Rpc3RyaWJ1dGlvbi5uYW1lfSoqLCBmaW5hbAorcGF0aCB3aWxsIGJlOjoKKworICAge2RhdGFkaXJ9L2RvYy9mb28vZG9jL2RvYy5tYW4KKworV2hlcmUge2RhdGFmaXJ9IGNhdGVnb3J5IHdpbGwgYmUgcGxhdGZvcm0tZGVwZW5kZW50LgorCisKK01vcmUgY29udHJvbCBvbiBzb3VyY2UgcGFydAorIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiCisKK0dsb2Igc3ludGF4CisnJycnJycnJycnJworCitXaGVuIHlvdSBkZWNsYXJlIHNvdXJjZSBmaWxlLCB5b3UgY2FuIHVzZSBhIGdsb2ItbGlrZSBzeW50YXggdG8gbWF0Y2ggbXVsdGlwbGVzIGZpbGUsIGZvciBleGFtcGxlOjoKKworICAgc2NyaXB0cy8qID0ge3NjcmlwdH0KKworV2lsbCBtYXRjaCBhbGwgdGhlIGZpbGVzIGluIHRoZSBzY3JpcHRzIGRpcmVjdG9yeSBhbmQgcGxhY2VkIHRoZW0gaW4gdGhlIHNjcmlwdCBjYXRlZ29yeS4KKworR2xvYiB0b2tlbnMgYXJlOgorCisgKiBgYCpgYDogbWF0Y2ggYWxsIGZpbGVzLgorICogYGA/YGA6IG1hdGNoIGFueSBjaGFyYWN0ZXIuCisgKiBgYCoqYGA6IG1hdGNoIGFueSBsZXZlbCBvZiB0cmVlIHJlY3Vyc2lvbiAoZXZlbiAwKS4KKyAqIGBge31gYDogd2lsbCBtYXRjaCBhbnkgcGFydCBzZXBhcmF0ZWQgYnkgY29tbWEgKGV4YW1wbGU6IGBge3NoLGJhdH1gYCkuCisKKy4uIFRPRE8gQWRkIGV4YW1wbGVzCisKK09yZGVyIG9mIGRlY2xhcmF0aW9uCisnJycnJycnJycnJycnJycnJycnJworCitUaGUgb3JkZXIgb2YgZGVjbGFyYXRpb24gaXMgaW1wb3J0YW50IGlmIG9uZSBmaWxlIG1hdGNoIG11bHRpcGxlIHJ1bGVzLiBUaGUgbGFzdAorcnVsZXMgbWF0Y2hlZCBieSBmaWxlIGlzIHVzZWQsIHRoaXMgaXMgdXNlZnVsIGlmIHlvdSBoYXZlIHRoaXMgc291cmNlIHRyZWU6OgorCisgICBmb28vCisgICAgICBkb2MvCisgICAgICAgICBpbmRleC5yc3QKKyAgICAgICAgIHNldHVwLnJzdAorICAgICAgICAgZG9jdW1lbnRhdGlvbi50eHQKKyAgICAgICAgIGRvYy50ZXgKKyAgICAgICAgIFJFQURNRQorCitBbmQgeW91IHdhbnQgYWxsIHRoZSBmaWxlcyBpbiB0aGUgZG9jIGRpcmVjdG9yeSB0byBiZSBwbGFjZWQgaW4ge2RvY30gY2F0ZWdvcnksCitidXQgUkVBRE1FIG11c3QgYmUgcGxhY2VkIGluIHtoZWxwfSBjYXRlZ29yeSwgaW5zdGVhZCBvZiBsaXN0aW5nIGFsbCB0aGUgZmlsZXMKK29uZSBieSBvbmUsIHlvdSBjYW4gZGVjbGFyZSB0aGVtIGluIHRoaXMgd2F5OjoKKworICAgW2ZpbGVzXQorICAgcmVzb3VyY2VzID0KKyAgICAgICBkb2MvKiA9IHtkb2N9CisgICAgICAgZG9jL1JFQURNRSA9IHtoZWxwfQorCitFeGNsdWRlCisnJycnJycnCisKK1lvdSBjYW4gZXhjbHVkZSBzb21lIGZpbGVzIG9mIHJlc291cmNlcyBkZWNsYXJhdGlvbiBieSBnaXZpbmcgbm8gZGVzdGluYXRpb24sIGl0CitjYW4gYmUgdXNlZnVsIGlmIHlvdSBoYXZlIGEgbm9uLXJlc291cmNlcyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBvZgorcmVzb3VyY2VzIGZpbGVzOjoKKworICAgZm9vLworICAgICAgZG9jLworICAgICAgICAgUkVMRUFTRVMKKyAgICAgICAgIGRvYy50ZXgKKyAgICAgICAgIGRvY3VtZW50YXRpb24udHh0CisgICAgICAgICBkb2N1LnJzdAorCitZb3VyICoqZmlsZXMqKiBzZWN0aW9uIHdpbGwgYmU6OgorCisgICBbZmlsZXNdCisgICByZXNvdXJjZXMgPQorICAgICAgIGRvYy8qID0ge2RvY30KKyAgICAgICBkb2MvUkVMRUFTRVMgPQorCitNb3JlIGNvbnRyb2wgb24gZGVzdGluYXRpb24gcGFydAorIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKKworLi4gX3NldHVwY2ZnLXJlc291cmNlcy1iYXNlLXByZWZpeDoKKworRGVmaW5pbmcgYSBiYXNlIHByZWZpeAorJycnJycnJycnJycnJycnJycnJycnJworCitXaGVuIHlvdSBkZWZpbmUgeW91ciByZXNvdXJjZXMsIHlvdSBjYW4gaGF2ZSBtb3JlIGNvbnRyb2wgb2YgaG93IHRoZSBmaW5hbCBwYXRoCitpcyBjb21wdXRlZC4KKworQnkgZGVmYXVsdCwgdGhlIGZpbmFsIHBhdGggaXM6OgorCisgICBkZXN0aW5hdGlvbiArIHNvdXJjZQorCitUaGlzIGNhbiBnZW5lcmF0ZSBsb25nIHBhdGhzLCBmb3IgZXhhbXBsZSAoZXhhbXBsZV9maW5hbF9wYXRoXyk6OgorCisgICB7ZGF0YWRpcn0vZG9jL2Zvby9kb2MvZG9jLm1hbgorCitXaGVuIHlvdSBkZWNsYXJlIHlvdXIgc291cmNlLCB5b3UgY2FuIHVzZSB3aGl0ZXNwYWNlIHRvIHNwbGl0IHRoZSBzb3VyY2UgaW4KKyoqcHJlZml4KiogKipzdWZmaXgqKi4gIFNvLCBmb3IgZXhhbXBsZSwgaWYgeW91IGhhdmUgdGhpcyBzb3VyY2U6OgorCisgICBkb2NzLyBkb2MubWFuCisKK1RoZSAqKnByZWZpeCoqIGlzICJkb2NzLyIgYW5kIHRoZSAqKnN1ZmZpeCoqIGlzICJkb2MuaHRtbCIuCisKKy4uIG5vdGU6OgorCisgICBTZXBhcmF0b3IgY2FuIGJlIHBsYWNlZCBhZnRlciBhIHBhdGggc2VwYXJhdG9yIG9yIHJlcGxhY2UgaXQuIFNvIHRoZXNlIHR3bworICAgc291cmNlcyBhcmUgZXF1aXZhbGVudDo6CisKKyAgICAgIGRvY3MvIGRvYy5tYW4KKyAgICAgIGRvY3MgZG9jLm1hbgorCisuLiBub3RlOjoKKworICAgR2xvYiBzeW50YXggaXMgd29ya2luZyB0aGUgc2FtZSB3YXkgd2l0aCBzdGFuZGFyZCBzb3VyY2UgYW5kIHNwbGl0IHNvdXJjZS4KKyAgIFNvIHRoZXNlIHJ1bGVzOjoKKworICAgICAgZG9jcy8qCisgICAgICBkb2NzLyAqCisgICAgICBkb2NzICoKKworICAgV2lsbCBtYXRjaCBhbGwgdGhlIGZpbGVzIGluIHRoZSBkb2NzIGRpcmVjdG9yeS4KKworV2hlbiB5b3UgdXNlIHNwbGl0IHNvdXJjZSwgdGhlIGZpbmFsIHBhdGggaXMgY29tcHV0ZWQgdGhpcyB3YXk6OgorCisgICBkZXN0aW5hdGlvbiArIHByZWZpeAorCitTbyBmb3IgZXhhbXBsZSwgaWYgeW91IGhhdmUgdGhpcyBzZXR1cC5jZmc6OgorCisgICBbbWV0YWRhdGFdCisgICBuYW1lID0gZm9vCisKKyAgIFtmaWxlc10KKyAgIHJlc291cmNlcyA9CisgICAgICAgZG9jLyBkb2MubWFuID0ge2RvY30KKworQW5kIGlmICoqe2RvY30qKiBpcyByZXBsYWNlZCBieSAqKntkYXRhZGlyfS9kb2Mve2Rpc3RyaWJ1dGlvbi5uYW1lfSoqLCBmaW5hbAorcGF0aCB3aWxsIGJlOjoKKworICAge2RhdGFkaXJ9L2RvYy9mb28vZG9jLm1hbgorCisKK092ZXJ3cml0aW5nIHBhdGhzIGZvciBjYXRlZ29yaWVzCisiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIgorCitUaGlzIHBhcnQgaXMgaW50ZW5kZWQgZm9yIHN5c3RlbSBhZG1pbmlzdHJhdG9ycyBvciBkb3duc3RyZWFtIE9TIHBhY2thZ2Vycy4KKworVGhlIHJlYWwgcGF0aHMgb2YgY2F0ZWdvcmllcyBhcmUgcmVnaXN0ZXJlZCBpbiB0aGUgKnN5c2NvbmZpZy5jZmcqIGZpbGUKK2luc3RhbGxlZCBpbiB5b3VyIHB5dGhvbiBpbnN0YWxsYXRpb24uIFRoaXMgZmlsZSB1c2VzIGFuIGluaSBmb3JtYXQgdG9vLgorVGhlIGNvbnRlbnQgb2YgdGhlIGZpbGUgaXMgb3JnYW5pemVkIGludG8gc2V2ZXJhbCBzZWN0aW9uczoKKworKiBnbG9iYWxzOiBTdGFuZGFyZCBjYXRlZ29yaWVzJ3MgcGF0aHMuCisqIHBvc2l4X3ByZWZpeDogU3RhbmRhcmQgcGF0aHMgZm9yIGNhdGVnb3JpZXMgYW5kIGluc3RhbGxhdGlvbiBwYXRocyBmb3IgcG9zaXgKKyAgc3lzdGVtLgorKiBvdGhlciBvbmVzIFhYWAorCitTdGFuZGFyZCBjYXRlZ29yaWVzIHBhdGhzIGFyZSBwbGF0Zm9ybSBpbmRlcGVuZGVudCwgdGhleSBnZW5lcmFsbHkgcmVmZXJzIHRvCitvdGhlciBjYXRlZ29yaWVzLCB3aGljaCBhcmUgcGxhdGZvcm0gZGVwZW5kZW50LiA6bW9kOmBzeXNjb25maWdgIHdpbGwgY2hvb3NlCit0aGVzZSBjYXRlZ29yeSBmcm9tIHNlY3Rpb25zIG1hdGNoaW5nIG9zLm5hbWUuIEZvciBleGFtcGxlOjoKKworICAgZG9jID0ge2RhdGFkaXJ9L2RvYy97ZGlzdHJpYnV0aW9uLm5hbWV9CisKK0l0IHJlZmVycyB0byBkYXRhZGlyIGNhdGVnb3J5LCB3aGljaCBjYW4gYmUgZGlmZmVyZW50IGJldHdlZW4gcGxhdGZvcm1zLiBJbgorcG9zaXggc3lzdGVtLCBpdCBtYXkgYmU6OgorCisgICBkYXRhZGlyID0gL3Vzci9zaGFyZQorCitTbyB0aGUgZmluYWwgcGF0aCB3aWxsIGJlOjoKKworICAgZG9jID0gL3Vzci9zaGFyZS9kb2Mve2Rpc3RyaWJ1dGlvbi5uYW1lfQorCitUaGUgcGxhdGZvcm0tZGVwZW5kZW50IGNhdGVnb3JpZXMgYXJlOgorCisqIGNvbmZkaXIKKyogZGF0YWRpcgorKiBsaWJkaXIKKyogYmFzZQorCisKK0RlZmluaW5nIGV4dHJhIGNhdGVnb3JpZXMKKyIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKKworLi4gVE9ETworCisKK0V4YW1wbGVzCisiIiIiIiIiIgorCitUaGVzZSBleGFtcGxlcyBhcmUgaW5jcmVtZW50YWwgYnV0IHdvcmsgdW5pdGFyaWx5LgorCitSZXNvdXJjZXMgaW4gcm9vdCBkaXIKKycnJycnJycnJycnJycnJycnJycnJworCitTb3VyY2UgdHJlZTo6CisKKyAgIGJhYmFyLTEuMC8KKyAgICAgIFJFQURNRQorICAgICAgYmFiYXIuc2gKKyAgICAgIGxhdW5jaC5zaAorICAgICAgYmFiYXIucHkKKworOmZpbGU6YHNldHVwLmNmZ2A6OgorCisgICBbZmlsZXNdCisgICByZXNvdXJjZXMgPQorICAgICAgIFJFQURNRSA9IHtkb2N9CisgICAgICAgKi5zaCA9IHtzY3JpcHRzfQorCitTbyBiYWJhci5zaCBhbmQgbGF1bmNoLnNoIHdpbGwgYmUgcGxhY2VkIGluIHtzY3JpcHRzfSBkaXJlY3RvcnkuCisKK05vdyBsZXQncyBtb3ZlIGFsbCB0aGUgc2NyaXB0cyBpbnRvIGEgc2NyaXB0cyBkaXJlY3RvcnkuCisKK1Jlc291cmNlcyBpbiBzdWItZGlyZWN0b3J5CisnJycnJycnJycnJycnJycnJycnJycnJycnJworCitTb3VyY2UgdHJlZTo6CisKKyAgIGJhYmFyLTEuMS8KKyAgICAgIFJFQURNRQorICAgICAgc2NyaXB0cy8KKyAgICAgICAgIGJhYmFyLnNoCisgICAgICAgICBsYXVuY2guc2gKKyAgICAgICAgIExBVU5DSAorICAgICAgYmFiYXIucHkKKworOmZpbGU6YHNldHVwLmNmZ2A6OgorCisgICBbZmlsZXNdCisgICByZXNvdXJjZXMgPQorICAgICAgIFJFQURNRSA9IHtkb2N9CisgICAgICAgc2NyaXB0cy8gTEFVTkNIID0ge2RvY30KKyAgICAgICBzY3JpcHRzLyAqLnNoID0ge3NjcmlwdHN9CisKK0l0J3MgaW1wb3J0YW50IHRvIHVzZSB0aGUgc2VwYXJhdG9yIGFmdGVyIHNjcmlwdHMvIHRvIGluc3RhbGwgYWxsIHRoZSBzaGVsbAorc2NyaXB0cyBpbnRvIHtzY3JpcHRzfSBpbnN0ZWFkIG9mIHtzY3JpcHRzfS9zY3JpcHRzLgorCitOb3cgbGV0J3MgYWRkIHNvbWUgZG9jcy4KKworUmVzb3VyY2VzIGluIG11bHRpcGxlIHN1Yi1kaXJlY3RvcmllcworJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJworCitTb3VyY2UgdHJlZTo6CisKKyAgIGJhYmFyLTEuMi8KKyAgICAgIFJFQURNRQorICAgICAgc2NyaXB0cy8KKyAgICAgICAgIGJhYmFyLnNoCisgICAgICAgICBsYXVuY2guc2gKKyAgICAgICAgIExBVU5DSAorICAgICAgZG9jcy8KKyAgICAgICAgIGFwaQorICAgICAgICAgbWFuCisgICAgICBiYWJhci5weQorCis6ZmlsZTpgc2V0dXAuY2ZnYDo6CisKKyAgIFtmaWxlc10KKyAgIHJlc291cmNlcyA9CisgICAgICAgIFJFQURNRSA9IHtkb2N9CisgICAgICAgIHNjcmlwdHMvIExBVU5DSCA9IHtkb2N9CisgICAgICAgIHNjcmlwdHMvICouc2ggPSB7c2NyaXB0c30KKyAgICAgICAgZG9jLyAqID0ge2RvY30KKyAgICAgICAgZG9jLyBtYW4gPSB7bWFufQorCitZb3Ugd2FudCB0byBwbGFjZSBhbGwgdGhlIGZpbGUgaW4gdGhlIGRvY3Mgc2NyaXB0IGludG8ge2RvY30gY2F0ZWdvcnksIGluc3RlYWQKK29mIG1hbiwgd2hpY2ggbXVzdCBiZSBwbGFjZWQgaW50byB7bWFufSBjYXRlZ29yeSwgd2Ugd2lsbCB1c2UgdGhlIG9yZGVyIG9mCitkZWNsYXJhdGlvbiBvZiBnbG9icyB0byBjaG9vc2UgdGhlIGRlc3RpbmF0aW9uLCB0aGUgbGFzdCBnbG9iIHRoYXQgbWF0Y2ggdGhlCitmaWxlIGlzIHVzZWQuCisKK05vdyBsZXQncyBhZGQgc29tZSBzY3JpcHRzIGZvciB3aW5kb3dzIHVzZXJzLgorCitDb21wbGV0ZSBleGFtcGxlCisnJycnJycnJycnJycnJycnCisKK1NvdXJjZSB0cmVlOjoKKworICAgYmFiYXItMS4zLworICAgICAgUkVBRE1FCisgICAgICBkb2MvCisgICAgICAgICBhcGkKKyAgICAgICAgIG1hbgorICAgICAgc2NyaXB0cy8KKyAgICAgICAgIGJhYmFyLnNoCisgICAgICAgICBsYXVuY2guc2gKKyAgICAgICAgIGJhYmFyLmJhdAorICAgICAgICAgbGF1bmNoLmJhdAorICAgICAgICAgTEFVTkNICisKKzpmaWxlOmBzZXR1cC5jZmdgOjoKKworICAgIFtmaWxlc10KKyAgICByZXNvdXJjZXMgPQorICAgICAgICBSRUFETUUgPSB7ZG9jfQorICAgICAgICBzY3JpcHRzLyBMQVVOQ0ggPSB7ZG9jfQorICAgICAgICBzY3JpcHRzLyAqLntzaCxiYXR9ID0ge3NjcmlwdHN9CisgICAgICAgIGRvYy8gKiA9IHtkb2N9CisgICAgICAgIGRvYy8gbWFuID0ge21hbn0KKworV2UgdXNlIGJyYWNlIGV4cGFuc2lvbiBzeW50YXggdG8gcGxhY2UgYWxsIHRoZSBzaGVsbCBhbmQgYmF0Y2ggc2NyaXB0cyBpbnRvCit7c2NyaXB0c30gY2F0ZWdvcnkuCisKKworLi4gX3NldHVwY2ZnLXNlY3Rpb24tZXh0ZW5zaW9uczoKKworRXh0ZW5zaW9uIG1vZHVsZXMgc2VjdGlvbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0lmIGEgcHJvamVjdCBpbmNsdWRlcyBleHRlbnNpb24gbW9kdWxlcyB3cml0dGVuIGluIEMgb3IgQysrLCBlYWNoIG9uZSBvZiB0aGVtCituZWVkcyB0byBoYXZlIGl0cyBvcHRpb25zIGRlZmluZWQgaW4gYSBkZWRpY2F0ZWQgc2VjdGlvbi4gIEhlcmUncyBhbiBleGFtcGxlOjoKKworICAgW2ZpbGVzXQorICAgcGFja2FnZXMgPSBjb2NvbnV0CisKKyAgIFtleHRlbnNpb246IGNvY29udXQuX2Zhc3Rjb2NvbnV0XQorICAgbGFuZ3VhZ2UgPSBjeHgKKyAgIHNvdXJjZXMgPSBjeHhfc3JjL2Nvbm9udXRfdXRpbHMuY3h4CisgICAgICAgICAgICAgY3h4X3NyYy9weXRob25fbW9kdWxlLmN4eAorICAgaW5jbHVkZV9kaXJzID0gL3Vzci9pbmNsdWRlL2dlY29kZQorICAgICAgICAgICAgICAgICAgL3Vzci9pbmNsdWRlL2JsaXR6CisgICBleHRyYV9jb21waWxlX2FyZ3MgPQorICAgICAgIC1mUElDIC1PMgorICAgICAgIC1ER0VDT0RFX1ZFUlNJT049JCguL2dlY29kZV92ZXJzaW9uKSAtLSBzeXMucGxhdGZvcm0gIT0gJ3dpbjMyJworICAgICAgIC9ER0VDT0RFX1ZFUlNJT049d2luMzIgLS0gc3lzLnBsYXRmb3JtID09ICd3aW4zMicKKworVGhlIHNlY3Rpb24gbmFtZSBtdXN0IHN0YXJ0IHdpdGggYGBleHRlbnNpb246YGA7IHRoZSByaWdodC1oYW5kIHBhcnQgaXMgdXNlZCBhcwordGhlIGZ1bGwgbmFtZSAoaW5jbHVkaW5nIGEgcGFyZW50IHBhY2thZ2UsIGlmIGFueSkgb2YgdGhlIGV4dGVuc2lvbi4gIFdoaXRlc3BhY2UKK2Fyb3VuZCB0aGUgZXh0ZW5zaW9uIG5hbWUgaXMgYWxsb3dlZC4gIElmIHRoZSBleHRlbnNpb24gbW9kdWxlIGlzIG5vdCBzdGFuZGFsb25lCisoZS5nLiBgYF9iaXNlY3RgYCkgYnV0IHBhcnQgb2YgYSBwYWNrYWdlIChlLmcuIGBgdGhpbmcuX3NwZWVkdXBzYGApLCB0aGUgcGFyZW50CitwYWNrYWdlIG11c3QgYmUgbGlzdGVkIGluIHRoZSBgYHBhY2thZ2VzYGAgZmllbGQuCitWYWxpZCBmaWVsZHMgYW5kIHRoZWlyIHZhbHVlcyBhcmUgbGlzdGVkIGluIHRoZSBkb2N1bWVudGF0aW9uIG9mIHRoZQorOmNsYXNzOmBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uLkV4dGVuc2lvbmAgY2xhc3M7IHZhbHVlcyBkb2N1bWVudGVkIGFzCitQeXRob24gbGlzdHMgdHJhbnNsYXRlIHRvIG11bHRpLWxpbmUgdmFsdWVzIGluIHRoZSBjb25maWd1cmF0aW9uIGZpbGUuICBJbgorYWRkaXRpb24sIG11bHRpLWxpbmUgdmFsdWVzIGFjY2VwdCBlbnZpcm9ubWVudCBtYXJrZXJzIG9uIGVhY2ggbGluZSwgYWZ0ZXIgYQorYGAtLWBgLgorCisKKy4uIF9zZXR1cGNmZy1zZWN0aW9uLWNvbW1hbmRzOgorCitDb21tYW5kcyBzZWN0aW9ucworLS0tLS0tLS0tLS0tLS0tLS0KKworVG8gcGFzcyBvcHRpb25zIHRvIGNvbW1hbmRzIHdpdGhvdXQgaGF2aW5nIHRvIHR5cGUgdGhlbSBvbiB0aGUgY29tbWFuZCBsaW5lCitmb3IgZWFjaCBpbnZvY2F0aW9uLCB5b3UgY2FuIHdyaXRlIHRoZW0gaW4gdGhlIDpmaWxlOmBzZXR1cC5jZmdgIGZpbGUsIGluIGEKK3NlY3Rpb24gbmFtZWQgYWZ0ZXIgdGhlIGNvbW1hbmQuICBFeGFtcGxlOjoKKworICAgW3NkaXN0XQorICAgIyBzcGVjaWFsIGZ1bmN0aW9uIHRvIGFkZCBjdXN0b20gZmlsZXMKKyAgIG1hbmlmZXN0LWJ1aWxkZXJzID0gcGFja2FnZS5zZXR1cC5saXN0X2V4dHJhX2ZpbGVzCisKKyAgIFtidWlsZF0KKyAgIHVzZS0ydG8zID0gVHJ1ZQorCisgICBbYnVpbGRfZXh0XQorICAgaW5wbGFjZSA9IG9uCisKKyAgIFtjaGVja10KKyAgIHN0cmljdCA9IG9uCisgICBhbGwgPSBvbgorCitPcHRpb24gdmFsdWVzIGdpdmVuIGluIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgY2FuIGJlIG92ZXJyaWRlbiBvbiB0aGUgY29tbWFuZAorbGluZS4gIFNlZSA6cmVmOmBwYWNrYWdpbmctc2V0dXAtY29uZmlnYCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKworVGhlc2Ugc2VjdGlvbnMgYXJlIGFsc28gdXNlZCB0byBkZWZpbmUgOnJlZjpgY29tbWFuZCBob29rcworPHBhY2thZ2luZy1jb21tYW5kLWhvb2tzPmAuCisKKworLi4gX3NldHVwY2ZnLWV4dGVuc2liaWxpdHk6CisKK0V4dGVuc2liaWxpdHkKKz09PT09PT09PT09PT0KKworRXZlcnkgc2VjdGlvbiBjYW4gaGF2ZSBmaWVsZHMgdGhhdCBhcmUgbm90IHBhcnQgb2YgdGhpcyBzcGVjaWZpY2F0aW9uLiAgVGhleSBhcmUKK2NhbGxlZCAqKmV4dGVuc2lvbnMqKi4KKworQW4gZXh0ZW5zaW9uIGZpZWxkIHN0YXJ0cyB3aXRoIGBgWC1gYC4gIEV4YW1wbGU6OgorCisgICBbbWV0YWRhdGFdCisgICBuYW1lID0gRGlzdHJpYnV0ZQorICAgWC1EZWJpYW4tTmFtZSA9IHB5dGhvbi1kaXN0cmlidXRlCisKKworLi4gX3NldHVwY2ZnLWNoYW5nZXM6CisKK0NoYW5nZXMgaW4gdGhlIHNwZWNpZmljYXRpb24KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlIHZlcnNpb25pbmcgc2NoZW1lIGZvciB0aGlzIHNwZWNpZmljYXRpb24gaXMgKipNQUpPUi5NSU5PUioqLiAgQ2hhbmdlcyBpbiB0aGUKK3NwZWNpZmljYXRpb24gd2lsbCBjYXVzZSB0aGUgdmVyc2lvbiBudW1iZXIgdG8gYmUgdXBkYXRlZC4KKworQ2hhbmdlcyB0byB0aGUgbWlub3IgbnVtYmVyIHJlZmxlY3QgYmFja3dhcmRzLWNvbXBhdGlibGUgY2hhbmdlczoKKworLSBOZXcgZmllbGRzIGFuZCBzZWN0aW9ucyAob3B0aW9uYWwgb3IgbWFuZGF0b3J5KSBjYW4gYmUgYWRkZWQuCistIE9wdGlvbmFsIGZpZWxkcyBjYW4gYmUgcmVtb3ZlZC4KKworVGhlIG1ham9yIG51bWJlciB3aWxsIGJlIGluY3JlbWVudGVkIGZvciBiYWNrd2FyZHMtaW5jb21wYXRpYmxlIGNoYW5nZXM6CisKKy0gTWFuZGF0b3J5IGZpZWxkcyBvciBzZWN0aW9ucyBhcmUgcmVtb3ZlZC4KKy0gRmllbGRzIGNoYW5nZSB0aGVpciBtZWFuaW5nLgorCitBcyBhIGNvbnNlcXVlbmNlLCBhIHRvb2wgd3JpdHRlbiB0byBjb25zdW1lIDEuNSBoYXMgdGhlc2UgcHJvcGVydGllczoKKworLSBDYW4gcmVhZCAxLjEsIDEuMiBhbmQgYWxsIHZlcnNpb25zIDwgMS41LCBzaW5jZSB0aGUgdG9vbCBrbm93cyB3aGF0CisgIG9wdGlvbmFsIGZpZWxkcyB3ZXJlbid0IHRoZXJlLgorCisgIC4uIFhYWCBjbGFyaWZ5CisKKy0gQ2FuIGFsc28gcmVhZCAxLjYgYW5kIG90aGVyIDEueCB2ZXJzaW9uczogVGhlIHRvb2wgd2lsbCBqdXN0IGlnbm9yZSBmaWVsZHMgaXQKKyAgZG9lc24ndCBrbm93IGFib3V0LCBldmVuIGlmIHRoZXkgYXJlIG1hbmRhdG9yeSBpbiB0aGUgbmV3IHZlcnNpb24uICBJZgorICBvcHRpb25hbCBmaWVsZHMgd2VyZSByZW1vdmVkLCB0aGUgdG9vbCB3aWxsIGp1c3QgY29uc2lkZXIgdGhlbSBhYnNlbnQuCisKKy0gQ2Fubm90IHJlYWQgMi54IGFuZCBzaG91bGQgcmVmdXNlIHRvIGludGVycHJldCBzdWNoIGZpbGVzLgorCitBIHRvb2wgd3JpdHRlbiB0byBwcm9kdWNlIDEueCBzaG91bGQgaGF2ZSB0aGVzZSBwcm9wZXJ0aWVzOgorCistIFdyaXRlcyBhbGwgbWFuZGF0b3J5IGZpZWxkcy4KKy0gTWF5IHdyaXRlIG9wdGlvbmFsIGZpZWxkcy4KKworCisuLiBfc2V0dXBjZmctYWNrczoKKworQWNrbm93bGVkZ21lbnRzCis9PT09PT09PT09PT09PT0KKworVGhpcyBzcGVjaWZpY2F0aW9uIGluY2x1ZGVzIHdvcmsgYW5kIGZlZWRiYWNrIGZyb20gdGhlc2UgcGVvcGxlOgorCistIFRhcmVrIFppYWTDqQorLSBKdWxpZW4gSmVoYW5uZXQKKy0gQm9yaXMgRmVsZAorLSDDiXJpYyBBcmF1am8KKworKElmIHlvdXIgbmFtZSBpcyBtaXNzaW5nLCBwbGVhc2UgOnJlZjpgbGV0IHVzIGtub3cgPHJlcG9ydGluZy1idWdzPmAuKQpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9zZXR1cHNjcmlwdC5yc3QgYi9Eb2MvcGFja2FnaW5nL3NldHVwc2NyaXB0LnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYWZkZTIwCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9zZXR1cHNjcmlwdC5yc3QKQEAgLTAsMCArMSw2OTMgQEAKKy4uIF9wYWNrYWdpbmctc2V0dXAtc2NyaXB0OgorCisqKioqKioqKioqKioqKioqKioqKioqKioKK1dyaXRpbmcgdGhlIFNldHVwIFNjcmlwdAorKioqKioqKioqKioqKioqKioqKioqKioqCisKK1RoZSBzZXR1cCBzY3JpcHQgaXMgdGhlIGNlbnRlciBvZiBhbGwgYWN0aXZpdHkgaW4gYnVpbGRpbmcsIGRpc3RyaWJ1dGluZywgYW5kCitpbnN0YWxsaW5nIG1vZHVsZXMgdXNpbmcgRGlzdHV0aWxzLiAgVGhlIG1haW4gcHVycG9zZSBvZiB0aGUgc2V0dXAgc2NyaXB0IGlzCit0byBkZXNjcmliZSB5b3VyIG1vZHVsZSBkaXN0cmlidXRpb24gdG8gRGlzdHV0aWxzLCBzbyB0aGF0IHRoZSB2YXJpb3VzCitjb21tYW5kcyB0aGF0IG9wZXJhdGUgb24geW91ciBtb2R1bGVzIGRvIHRoZSByaWdodCB0aGluZy4gIEFzIHdlIHNhdyBpbiBzZWN0aW9uCis6cmVmOmBwYWNrYWdpbmctc2ltcGxlLWV4YW1wbGVgLCB0aGUgc2V0dXAgc2NyaXB0IGNvbnNpc3RzIG1haW5seSBvZiBhCitjYWxsIHRvIDpmdW5jOmBzZXR1cGAgd2hlcmUgdGhlIG1vc3QgaW5mb3JtYXRpb24gaXMgc3VwcGxpZWQgYXMKK2tleXdvcmQgYXJndW1lbnRzIHRvIDpmdW5jOmBzZXR1cGAuCisKK0hlcmUncyBhIHNsaWdodGx5IG1vcmUgaW52b2x2ZWQgZXhhbXBsZSwgd2hpY2ggd2UnbGwgZm9sbG93IGZvciB0aGUgbmV4dCBjb3VwbGUKK29mIHNlY3Rpb25zOiBhIHNldHVwIHNjcmlwdCB0aGF0IGNvdWxkIGJlIHVzZWQgZm9yIFBhY2thZ2luZyBpdHNlbGY6OgorCisgICAgIyEvdXNyL2Jpbi9lbnYgcHl0aG9uCisKKyAgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cCwgZmluZF9wYWNrYWdlcworCisgICAgc2V0dXAobmFtZT0nUGFja2FnaW5nJywKKyAgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgIHN1bW1hcnk9J1B5dGhvbiBEaXN0cmlidXRpb24gVXRpbGl0aWVzJywKKyAgICAgICAgICBrZXl3b3Jkcz1bJ3BhY2thZ2luZycsICdwYWNrYWdpbmcnXSwKKyAgICAgICAgICBhdXRob3I9dSdUYXJlayBaaWFkw6knLAorICAgICAgICAgIGF1dGhvcl9lbWFpbD0ndGFyZWtAemlhZGUub3JnJywKKyAgICAgICAgICBob21lX3BhZ2U9J2h0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL3BhY2thZ2luZy93aWtpL0hvbWUnLAorICAgICAgICAgIGxpY2Vuc2U9J1BTRicsCisgICAgICAgICAgcGFja2FnZXM9ZmluZF9wYWNrYWdlcygpKQorCisKK1RoZXJlIGFyZSBvbmx5IHR3byBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoaXMgYW5kIHRoZSB0cml2aWFsIG9uZS1maWxlCitkaXN0cmlidXRpb24gcHJlc2VudGVkIGluIHNlY3Rpb24gOnJlZjpgcGFja2FnaW5nLXNpbXBsZS1leGFtcGxlYDogbW9yZQorbWV0YWRhdGEgYW5kIHRoZSBzcGVjaWZpY2F0aW9uIG9mIHB1cmUgUHl0aG9uIG1vZHVsZXMgYnkgcGFja2FnZSByYXRoZXIgdGhhbgorYnkgbW9kdWxlLiAgVGhpcyBpcyBpbXBvcnRhbnQgc2luY2UgUmlzdHV0aWxzIGNvbnNpc3Qgb2YgYSBjb3VwbGUgb2YgZG96ZW4KK21vZHVsZXMgc3BsaXQgaW50byAoc28gZmFyKSB0d28gcGFja2FnZXM7IGFuIGV4cGxpY2l0IGxpc3Qgb2YgZXZlcnkgbW9kdWxlCit3b3VsZCBiZSB0ZWRpb3VzIHRvIGdlbmVyYXRlIGFuZCBkaWZmaWN1bHQgdG8gbWFpbnRhaW4uICBGb3IgbW9yZSBpbmZvcm1hdGlvbgorb24gdGhlIGFkZGl0aW9uYWwgbWV0YWRhdGEsIHNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1tZXRhZGF0YWAuCisKK05vdGUgdGhhdCBhbnkgcGF0aG5hbWVzIChmaWxlcyBvciBkaXJlY3Rvcmllcykgc3VwcGxpZWQgaW4gdGhlIHNldHVwIHNjcmlwdAorc2hvdWxkIGJlIHdyaXR0ZW4gdXNpbmcgdGhlIFVuaXggY29udmVudGlvbiwgaS5lLiBzbGFzaC1zZXBhcmF0ZWQuICBUaGUKK0Rpc3R1dGlscyB3aWxsIHRha2UgY2FyZSBvZiBjb252ZXJ0aW5nIHRoaXMgcGxhdGZvcm0tbmV1dHJhbCByZXByZXNlbnRhdGlvbiBpbnRvCit3aGF0ZXZlciBpcyBhcHByb3ByaWF0ZSBvbiB5b3VyIGN1cnJlbnQgcGxhdGZvcm0gYmVmb3JlIGFjdHVhbGx5IHVzaW5nIHRoZQorcGF0aG5hbWUuICBUaGlzIG1ha2VzIHlvdXIgc2V0dXAgc2NyaXB0IHBvcnRhYmxlIGFjcm9zcyBvcGVyYXRpbmcgc3lzdGVtcywgd2hpY2gKK29mIGNvdXJzZSBpcyBvbmUgb2YgdGhlIG1ham9yIGdvYWxzIG9mIHRoZSBEaXN0dXRpbHMuICBJbiB0aGlzIHNwaXJpdCwgYWxsCitwYXRobmFtZXMgaW4gdGhpcyBkb2N1bWVudCBhcmUgc2xhc2gtc2VwYXJhdGVkLgorCitUaGlzLCBvZiBjb3Vyc2UsIG9ubHkgYXBwbGllcyB0byBwYXRobmFtZXMgZ2l2ZW4gdG8gRGlzdHV0aWxzIGZ1bmN0aW9ucy4gIElmCit5b3UsIGZvciBleGFtcGxlLCB1c2Ugc3RhbmRhcmQgUHl0aG9uIGZ1bmN0aW9ucyBzdWNoIGFzIDpmdW5jOmBnbG9iLmdsb2JgIG9yCis6ZnVuYzpgb3MubGlzdGRpcmAgdG8gc3BlY2lmeSBmaWxlcywgeW91IHNob3VsZCBiZSBjYXJlZnVsIHRvIHdyaXRlIHBvcnRhYmxlCitjb2RlIGluc3RlYWQgb2YgaGFyZGNvZGluZyBwYXRoIHNlcGFyYXRvcnM6OgorCisgICAgZ2xvYi5nbG9iKG9zLnBhdGguam9pbignbXlkaXInLCAnc3ViZGlyJywgJyouaHRtbCcpKQorICAgIG9zLmxpc3RkaXIob3MucGF0aC5qb2luKCdteWRpcicsICdzdWJkaXInKSkKKworCisuLiBfcGFja2FnaW5nLWxpc3RpbmctcGFja2FnZXM6CisKK0xpc3Rpbmcgd2hvbGUgcGFja2FnZXMKKz09PT09PT09PT09PT09PT09PT09PT0KKworVGhlIDpvcHRpb246YHBhY2thZ2VzYCBvcHRpb24gdGVsbHMgdGhlIERpc3R1dGlscyB0byBwcm9jZXNzIChidWlsZCwgZGlzdHJpYnV0ZSwKK2luc3RhbGwsIGV0Yy4pIGFsbCBwdXJlIFB5dGhvbiBtb2R1bGVzIGZvdW5kIGluIGVhY2ggcGFja2FnZSBtZW50aW9uZWQgaW4gdGhlCis6b3B0aW9uOmBwYWNrYWdlc2AgbGlzdC4gIEluIG9yZGVyIHRvIGRvIHRoaXMsIG9mIGNvdXJzZSwgdGhlcmUgaGFzIHRvIGJlIGEKK2NvcnJlc3BvbmRlbmNlIGJldHdlZW4gcGFja2FnZSBuYW1lcyBhbmQgZGlyZWN0b3JpZXMgaW4gdGhlIGZpbGVzeXN0ZW0uICBUaGUKK2RlZmF1bHQgY29ycmVzcG9uZGVuY2UgaXMgdGhlIG1vc3Qgb2J2aW91cyBvbmUsIGkuZS4gcGFja2FnZSA6bW9kOmBwYWNrYWdpbmdgIGlzCitmb3VuZCBpbiB0aGUgZGlyZWN0b3J5IDpmaWxlOmBwYWNrYWdpbmdgIHJlbGF0aXZlIHRvIHRoZSBkaXN0cmlidXRpb24gcm9vdC4KK1RodXMsIHdoZW4geW91IHNheSBgYHBhY2thZ2VzID0gWydmb28nXWBgIGluIHlvdXIgc2V0dXAgc2NyaXB0LCB5b3UgYXJlCitwcm9taXNpbmcgdGhhdCB0aGUgRGlzdHV0aWxzIHdpbGwgZmluZCBhIGZpbGUgOmZpbGU6YGZvby9fX2luaXRfXy5weWAgKHdoaWNoCittaWdodCBiZSBzcGVsbGVkIGRpZmZlcmVudGx5IG9uIHlvdXIgc3lzdGVtLCBidXQgeW91IGdldCB0aGUgaWRlYSkgcmVsYXRpdmUgdG8KK3RoZSBkaXJlY3Rvcnkgd2hlcmUgeW91ciBzZXR1cCBzY3JpcHQgbGl2ZXMuICBJZiB5b3UgYnJlYWsgdGhpcyBwcm9taXNlLCB0aGUKK0Rpc3R1dGlscyB3aWxsIGlzc3VlIGEgd2FybmluZyBidXQgc3RpbGwgcHJvY2VzcyB0aGUgYnJva2VuIHBhY2thZ2UgYW55d2F5LgorCitJZiB5b3UgdXNlIGEgZGlmZmVyZW50IGNvbnZlbnRpb24gdG8gbGF5IG91dCB5b3VyIHNvdXJjZSBkaXJlY3RvcnksIHRoYXQncyBubworcHJvYmxlbTogeW91IGp1c3QgaGF2ZSB0byBzdXBwbHkgdGhlIDpvcHRpb246YHBhY2thZ2VfZGlyYCBvcHRpb24gdG8gdGVsbCB0aGUKK0Rpc3R1dGlscyBhYm91dCB5b3VyIGNvbnZlbnRpb24uICBGb3IgZXhhbXBsZSwgc2F5IHlvdSBrZWVwIGFsbCBQeXRob24gc291cmNlCit1bmRlciA6ZmlsZTpgbGliYCwgc28gdGhhdCBtb2R1bGVzIGluIHRoZSAicm9vdCBwYWNrYWdlIiAoaS5lLiwgbm90IGluIGFueQorcGFja2FnZSBhdCBhbGwpIGFyZSBpbiA6ZmlsZTpgbGliYCwgbW9kdWxlcyBpbiB0aGUgOm1vZDpgZm9vYCBwYWNrYWdlIGFyZSBpbgorOmZpbGU6YGxpYi9mb29gLCBhbmQgc28gZm9ydGguICBUaGVuIHlvdSB3b3VsZCBwdXQgOjoKKworICAgIHBhY2thZ2VfZGlyID0geycnOiAnbGliJ30KKworaW4geW91ciBzZXR1cCBzY3JpcHQuICBUaGUga2V5cyB0byB0aGlzIGRpY3Rpb25hcnkgYXJlIHBhY2thZ2UgbmFtZXMsIGFuZCBhbgorZW1wdHkgcGFja2FnZSBuYW1lIHN0YW5kcyBmb3IgdGhlIHJvb3QgcGFja2FnZS4gIFRoZSB2YWx1ZXMgYXJlIGRpcmVjdG9yeSBuYW1lcworcmVsYXRpdmUgdG8geW91ciBkaXN0cmlidXRpb24gcm9vdC4gIEluIHRoaXMgY2FzZSwgd2hlbiB5b3Ugc2F5IGBgcGFja2FnZXMgPQorWydmb28nXWBgLCB5b3UgYXJlIHByb21pc2luZyB0aGF0IHRoZSBmaWxlIDpmaWxlOmBsaWIvZm9vL19faW5pdF9fLnB5YCBleGlzdHMuCisKK0Fub3RoZXIgcG9zc2libGUgY29udmVudGlvbiBpcyB0byBwdXQgdGhlIDptb2Q6YGZvb2AgcGFja2FnZSByaWdodCBpbgorOmZpbGU6YGxpYmAsIHRoZSA6bW9kOmBmb28uYmFyYCBwYWNrYWdlIGluIDpmaWxlOmBsaWIvYmFyYCwgZXRjLiAgVGhpcyB3b3VsZCBiZQord3JpdHRlbiBpbiB0aGUgc2V0dXAgc2NyaXB0IGFzIDo6CisKKyAgICBwYWNrYWdlX2RpciA9IHsnZm9vJzogJ2xpYid9CisKK0EgYGBwYWNrYWdlOiBkaXJgYCBlbnRyeSBpbiB0aGUgOm9wdGlvbjpgcGFja2FnZV9kaXJgIGRpY3Rpb25hcnkgaW1wbGljaXRseQorYXBwbGllcyB0byBhbGwgcGFja2FnZXMgYmVsb3cgKnBhY2thZ2UqLCBzbyB0aGUgOm1vZDpgZm9vLmJhcmAgY2FzZSBpcworYXV0b21hdGljYWxseSBoYW5kbGVkIGhlcmUuICBJbiB0aGlzIGV4YW1wbGUsIGhhdmluZyBgYHBhY2thZ2VzID0gWydmb28nLAorJ2Zvby5iYXInXWBgIHRlbGxzIHRoZSBEaXN0dXRpbHMgdG8gbG9vayBmb3IgOmZpbGU6YGxpYi9fX2luaXRfXy5weWAgYW5kCis6ZmlsZTpgbGliL2Jhci9fX2luaXRfXy5weWAuICAoS2VlcCBpbiBtaW5kIHRoYXQgYWx0aG91Z2ggOm9wdGlvbjpgcGFja2FnZV9kaXJgCithcHBsaWVzIHJlY3Vyc2l2ZWx5LCB5b3UgbXVzdCBleHBsaWNpdGx5IGxpc3QgYWxsIHBhY2thZ2VzIGluCis6b3B0aW9uOmBwYWNrYWdlc2A6IHRoZSBEaXN0dXRpbHMgd2lsbCAqbm90KiByZWN1cnNpdmVseSBzY2FuIHlvdXIgc291cmNlIHRyZWUKK2xvb2tpbmcgZm9yIGFueSBkaXJlY3Rvcnkgd2l0aCBhbiA6ZmlsZTpgX19pbml0X18ucHlgIGZpbGUuKQorCisKKy4uIF9wYWNrYWdpbmctbGlzdGluZy1tb2R1bGVzOgorCitMaXN0aW5nIGluZGl2aWR1YWwgbW9kdWxlcworPT09PT09PT09PT09PT09PT09PT09PT09PT0KKworRm9yIGEgc21hbGwgbW9kdWxlIGRpc3RyaWJ1dGlvbiwgeW91IG1pZ2h0IHByZWZlciB0byBsaXN0IGFsbCBtb2R1bGVzIHJhdGhlcgordGhhbiBsaXN0aW5nIHBhY2thZ2VzLS0tZXNwZWNpYWxseSB0aGUgY2FzZSBvZiBhIHNpbmdsZSBtb2R1bGUgdGhhdCBnb2VzIGluIHRoZQorInJvb3QgcGFja2FnZSIgKGkuZS4sIG5vIHBhY2thZ2UgYXQgYWxsKS4gIFRoaXMgc2ltcGxlc3QgY2FzZSB3YXMgc2hvd24gaW4KK3NlY3Rpb24gOnJlZjpgcGFja2FnaW5nLXNpbXBsZS1leGFtcGxlYDsgaGVyZSBpcyBhIHNsaWdodGx5IG1vcmUgaW52b2x2ZWQKK2V4YW1wbGU6OgorCisgICAgcHlfbW9kdWxlcyA9IFsnbW9kMScsICdwa2cubW9kMiddCisKK1RoaXMgZGVzY3JpYmVzIHR3byBtb2R1bGVzLCBvbmUgb2YgdGhlbSBpbiB0aGUgInJvb3QiIHBhY2thZ2UsIHRoZSBvdGhlciBpbiB0aGUKKzptb2Q6YHBrZ2AgcGFja2FnZS4gIEFnYWluLCB0aGUgZGVmYXVsdCBwYWNrYWdlL2RpcmVjdG9yeSBsYXlvdXQgaW1wbGllcyB0aGF0Cit0aGVzZSB0d28gbW9kdWxlcyBjYW4gYmUgZm91bmQgaW4gOmZpbGU6YG1vZDEucHlgIGFuZCA6ZmlsZTpgcGtnL21vZDIucHlgLCBhbmQKK3RoYXQgOmZpbGU6YHBrZy9fX2luaXRfXy5weWAgZXhpc3RzIGFzIHdlbGwuIEFuZCBhZ2FpbiwgeW91IGNhbiBvdmVycmlkZSB0aGUKK3BhY2thZ2UvZGlyZWN0b3J5IGNvcnJlc3BvbmRlbmNlIHVzaW5nIHRoZSA6b3B0aW9uOmBwYWNrYWdlX2RpcmAgb3B0aW9uLgorCisKKy4uIF9wYWNrYWdpbmctZGVzY3JpYmluZy1leHRlbnNpb25zOgorCitEZXNjcmliaW5nIGV4dGVuc2lvbiBtb2R1bGVzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0p1c3QgYXMgd3JpdGluZyBQeXRob24gZXh0ZW5zaW9uIG1vZHVsZXMgaXMgYSBiaXQgbW9yZSBjb21wbGljYXRlZCB0aGFuIHdyaXRpbmcKK3B1cmUgUHl0aG9uIG1vZHVsZXMsIGRlc2NyaWJpbmcgdGhlbSB0byB0aGUgRGlzdHV0aWxzIGlzIGEgYml0IG1vcmUgY29tcGxpY2F0ZWQuCitVbmxpa2UgcHVyZSBtb2R1bGVzLCBpdCdzIG5vdCBlbm91Z2gganVzdCB0byBsaXN0IG1vZHVsZXMgb3IgcGFja2FnZXMgYW5kIGV4cGVjdAordGhlIERpc3R1dGlscyB0byBnbyBvdXQgYW5kIGZpbmQgdGhlIHJpZ2h0IGZpbGVzOyB5b3UgaGF2ZSB0byBzcGVjaWZ5IHRoZQorZXh0ZW5zaW9uIG5hbWUsIHNvdXJjZSBmaWxlKHMpLCBhbmQgYW55IGNvbXBpbGUvbGluayByZXF1aXJlbWVudHMgKGluY2x1ZGUKK2RpcmVjdG9yaWVzLCBsaWJyYXJpZXMgdG8gbGluayB3aXRoLCBldGMuKS4KKworLi4gWFhYIHJlYWQgb3ZlciB0aGlzIHNlY3Rpb24KKworQWxsIG9mIHRoaXMgaXMgZG9uZSB0aHJvdWdoIGFub3RoZXIga2V5d29yZCBhcmd1bWVudCB0byA6ZnVuYzpgc2V0dXBgLCB0aGUKKzpvcHRpb246YGV4dF9tb2R1bGVzYCBvcHRpb24uICA6b3B0aW9uOmBleHRfbW9kdWxlc2AgaXMganVzdCBhIGxpc3Qgb2YKKzpjbGFzczpgRXh0ZW5zaW9uYCBpbnN0YW5jZXMsIGVhY2ggb2Ygd2hpY2ggZGVzY3JpYmVzIGEgc2luZ2xlIGV4dGVuc2lvbiBtb2R1bGUuCitTdXBwb3NlIHlvdXIgZGlzdHJpYnV0aW9uIGluY2x1ZGVzIGEgc2luZ2xlIGV4dGVuc2lvbiwgY2FsbGVkIDptb2Q6YGZvb2AgYW5kCitpbXBsZW1lbnRlZCBieSA6ZmlsZTpgZm9vLmNgLiAgSWYgbm8gYWRkaXRpb25hbCBpbnN0cnVjdGlvbnMgdG8gdGhlCitjb21waWxlci9saW5rZXIgYXJlIG5lZWRlZCwgZGVzY3JpYmluZyB0aGlzIGV4dGVuc2lvbiBpcyBxdWl0ZSBzaW1wbGU6OgorCisgICAgRXh0ZW5zaW9uKCdmb28nLCBbJ2Zvby5jJ10pCisKK1RoZSA6Y2xhc3M6YEV4dGVuc2lvbmAgY2xhc3MgY2FuIGJlIGltcG9ydGVkIGZyb20gOm1vZDpgcGFja2FnaW5nLmNvcmVgIGFsb25nCit3aXRoIDpmdW5jOmBzZXR1cGAuICBUaHVzLCB0aGUgc2V0dXAgc2NyaXB0IGZvciBhIG1vZHVsZSBkaXN0cmlidXRpb24gdGhhdAorY29udGFpbnMgb25seSB0aGlzIG9uZSBleHRlbnNpb24gYW5kIG5vdGhpbmcgZWxzZSBtaWdodCBiZTo6CisKKyAgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cCwgRXh0ZW5zaW9uCisgICAgc2V0dXAobmFtZT0nZm9vJywKKyAgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgIGV4dF9tb2R1bGVzPVtFeHRlbnNpb24oJ2ZvbycsIFsnZm9vLmMnXSldKQorCitUaGUgOmNsYXNzOmBFeHRlbnNpb25gIGNsYXNzIChhY3R1YWxseSwgdGhlIHVuZGVybHlpbmcgZXh0ZW5zaW9uLWJ1aWxkaW5nCittYWNoaW5lcnkgaW1wbGVtZW50ZWQgYnkgdGhlIDpjb21tYW5kOmBidWlsZF9leHRgIGNvbW1hbmQpIHN1cHBvcnRzIGEgZ3JlYXQgZGVhbAorb2YgZmxleGliaWxpdHkgaW4gZGVzY3JpYmluZyBQeXRob24gZXh0ZW5zaW9ucywgd2hpY2ggaXMgZXhwbGFpbmVkIGluIHRoZQorZm9sbG93aW5nIHNlY3Rpb25zLgorCisKK0V4dGVuc2lvbiBuYW1lcyBhbmQgcGFja2FnZXMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIGZpcnN0IGFyZ3VtZW50IHRvIHRoZSA6Y2xhc3M6YEV4dGVuc2lvbmAgY29uc3RydWN0b3IgaXMgYWx3YXlzIHRoZSBuYW1lIG9mCit0aGUgZXh0ZW5zaW9uLCBpbmNsdWRpbmcgYW55IHBhY2thZ2UgbmFtZXMuICBGb3IgZXhhbXBsZSwgOjoKKworICAgIEV4dGVuc2lvbignZm9vJywgWydzcmMvZm9vMS5jJywgJ3NyYy9mb28yLmMnXSkKKworZGVzY3JpYmVzIGFuIGV4dGVuc2lvbiB0aGF0IGxpdmVzIGluIHRoZSByb290IHBhY2thZ2UsIHdoaWxlIDo6CisKKyAgICBFeHRlbnNpb24oJ3BrZy5mb28nLCBbJ3NyYy9mb28xLmMnLCAnc3JjL2ZvbzIuYyddKQorCitkZXNjcmliZXMgdGhlIHNhbWUgZXh0ZW5zaW9uIGluIHRoZSA6bW9kOmBwa2dgIHBhY2thZ2UuICBUaGUgc291cmNlIGZpbGVzIGFuZAorcmVzdWx0aW5nIG9iamVjdCBjb2RlIGFyZSBpZGVudGljYWwgaW4gYm90aCBjYXNlczsgdGhlIG9ubHkgZGlmZmVyZW5jZSBpcyB3aGVyZQoraW4gdGhlIGZpbGVzeXN0ZW0gKGFuZCB0aGVyZWZvcmUgd2hlcmUgaW4gUHl0aG9uJ3MgbmFtZXNwYWNlIGhpZXJhcmNoeSkgdGhlCityZXN1bHRpbmcgZXh0ZW5zaW9uIGxpdmVzLgorCitJZiB5b3VyIGRpc3RyaWJ1dGlvbiBjb250YWlucyBvbmx5IG9uZSBvciBtb3JlIGV4dGVuc2lvbiBtb2R1bGVzIGluIGEgcGFja2FnZSwKK3lvdSBuZWVkIHRvIGNyZWF0ZSBhIDpmaWxlOmB7cGFja2FnZX0vX19pbml0X18ucHlgIGZpbGUgYW55d2F5LCBvdGhlcndpc2UgUHl0aG9uCit3b24ndCBiZSBhYmxlIHRvIGltcG9ydCBhbnl0aGluZy4KKworSWYgeW91IGhhdmUgYSBudW1iZXIgb2YgZXh0ZW5zaW9ucyBhbGwgaW4gdGhlIHNhbWUgcGFja2FnZSAob3IgYWxsIHVuZGVyIHRoZQorc2FtZSBiYXNlIHBhY2thZ2UpLCB1c2UgdGhlIDpvcHRpb246YGV4dF9wYWNrYWdlYCBrZXl3b3JkIGFyZ3VtZW50IHRvCis6ZnVuYzpgc2V0dXBgLiAgRm9yIGV4YW1wbGUsIDo6CisKKyAgICBzZXR1cCguLi4sCisgICAgICAgICAgZXh0X3BhY2thZ2U9J3BrZycsCisgICAgICAgICAgZXh0X21vZHVsZXM9W0V4dGVuc2lvbignZm9vJywgWydmb28uYyddKSwKKyAgICAgICAgICAgICAgICAgICAgICAgRXh0ZW5zaW9uKCdzdWJwa2cuYmFyJywgWydiYXIuYyddKV0pCisKK3dpbGwgY29tcGlsZSA6ZmlsZTpgZm9vLmNgIHRvIHRoZSBleHRlbnNpb24gOm1vZDpgcGtnLmZvb2AsIGFuZCA6ZmlsZTpgYmFyLmNgIHRvCis6bW9kOmBwa2cuc3VicGtnLmJhcmAuCisKKworRXh0ZW5zaW9uIHNvdXJjZSBmaWxlcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgc2Vjb25kIGFyZ3VtZW50IHRvIHRoZSA6Y2xhc3M6YEV4dGVuc2lvbmAgY29uc3RydWN0b3IgaXMgYSBsaXN0IG9mIHNvdXJjZQorZmlsZXMuICBTaW5jZSB0aGUgRGlzdHV0aWxzIGN1cnJlbnRseSBvbmx5IHN1cHBvcnQgQywgQysrLCBhbmQgT2JqZWN0aXZlLUMKK2V4dGVuc2lvbnMsIHRoZXNlIGFyZSBub3JtYWxseSBDL0MrKy9PYmplY3RpdmUtQyBzb3VyY2UgZmlsZXMuICAoQmUgc3VyZSB0byB1c2UKK2FwcHJvcHJpYXRlIGV4dGVuc2lvbnMgdG8gZGlzdGluZ3Vpc2ggQysrXCBzb3VyY2UgZmlsZXM6IDpmaWxlOmAuY2NgIGFuZAorOmZpbGU6YC5jcHBgIHNlZW0gdG8gYmUgcmVjb2duaXplZCBieSBib3RoIFVuaXggYW5kIFdpbmRvd3MgY29tcGlsZXJzLikKKworSG93ZXZlciwgeW91IGNhbiBhbHNvIGluY2x1ZGUgU1dJRyBpbnRlcmZhY2UgKDpmaWxlOmAuaWApIGZpbGVzIGluIHRoZSBsaXN0OyB0aGUKKzpjb21tYW5kOmBidWlsZF9leHRgIGNvbW1hbmQga25vd3MgaG93IHRvIGRlYWwgd2l0aCBTV0lHIGV4dGVuc2lvbnM6IGl0IHdpbGwgcnVuCitTV0lHIG9uIHRoZSBpbnRlcmZhY2UgZmlsZSBhbmQgY29tcGlsZSB0aGUgcmVzdWx0aW5nIEMvQysrIGZpbGUgaW50byB5b3VyCitleHRlbnNpb24uCisKKy4uIFhYWCBTV0lHIHN1cHBvcnQgaXMgcm91Z2ggYXJvdW5kIHRoZSBlZGdlcyBhbmQgbGFyZ2VseSB1bnRlc3RlZCEKKworVGhpcyB3YXJuaW5nIG5vdHdpdGhzdGFuZGluZywgb3B0aW9ucyB0byBTV0lHIGNhbiBiZSBjdXJyZW50bHkgcGFzc2VkIGxpa2UKK3RoaXM6OgorCisgICAgc2V0dXAoLi4uLAorICAgICAgICAgIGV4dF9tb2R1bGVzPVtFeHRlbnNpb24oJ19mb28nLCBbJ2Zvby5pJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2lnX29wdHM9WyctbW9kZXJuJywgJy1JLi4vaW5jbHVkZSddKV0sCisgICAgICAgICAgcHlfbW9kdWxlcz1bJ2ZvbyddKQorCitPciBvbiB0aGUgY29tbWFuZCBsaW5lIGxpa2UgdGhpczo6CisKKyAgICA+IHB5dGhvbiBzZXR1cC5weSBidWlsZF9leHQgLS1zd2lnLW9wdHM9Ii1tb2Rlcm4gLUkuLi9pbmNsdWRlIgorCitPbiBzb21lIHBsYXRmb3JtcywgeW91IGNhbiBpbmNsdWRlIG5vbi1zb3VyY2UgZmlsZXMgdGhhdCBhcmUgcHJvY2Vzc2VkIGJ5IHRoZQorY29tcGlsZXIgYW5kIGluY2x1ZGVkIGluIHlvdXIgZXh0ZW5zaW9uLiAgQ3VycmVudGx5LCB0aGlzIGp1c3QgbWVhbnMgV2luZG93cworbWVzc2FnZSB0ZXh0ICg6ZmlsZTpgLm1jYCkgZmlsZXMgYW5kIHJlc291cmNlIGRlZmluaXRpb24gKDpmaWxlOmAucmNgKSBmaWxlcyBmb3IKK1Zpc3VhbCBDKysuIFRoZXNlIHdpbGwgYmUgY29tcGlsZWQgdG8gYmluYXJ5IHJlc291cmNlICg6ZmlsZTpgLnJlc2ApIGZpbGVzIGFuZAorbGlua2VkIGludG8gdGhlIGV4ZWN1dGFibGUuCisKKworUHJlcHJvY2Vzc29yIG9wdGlvbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RocmVlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byA6Y2xhc3M6YEV4dGVuc2lvbmAgd2lsbCBoZWxwIGlmIHlvdSBuZWVkIHRvIHNwZWNpZnkKK2luY2x1ZGUgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIG9yIHByZXByb2Nlc3NvciBtYWNyb3MgdG8gZGVmaW5lL3VuZGVmaW5lOgorYGBpbmNsdWRlX2RpcnNgYCwgYGBkZWZpbmVfbWFjcm9zYGAsIGFuZCBgYHVuZGVmX21hY3Jvc2BgLgorCitGb3IgZXhhbXBsZSwgaWYgeW91ciBleHRlbnNpb24gcmVxdWlyZXMgaGVhZGVyIGZpbGVzIGluIHRoZSA6ZmlsZTpgaW5jbHVkZWAKK2RpcmVjdG9yeSB1bmRlciB5b3VyIGRpc3RyaWJ1dGlvbiByb290LCB1c2UgdGhlIGBgaW5jbHVkZV9kaXJzYGAgb3B0aW9uOjoKKworICAgIEV4dGVuc2lvbignZm9vJywgWydmb28uYyddLCBpbmNsdWRlX2RpcnM9WydpbmNsdWRlJ10pCisKK1lvdSBjYW4gc3BlY2lmeSBhYnNvbHV0ZSBkaXJlY3RvcmllcyB0aGVyZTsgaWYgeW91IGtub3cgdGhhdCB5b3VyIGV4dGVuc2lvbiB3aWxsCitvbmx5IGJlIGJ1aWx0IG9uIFVuaXggc3lzdGVtcyB3aXRoIFgxMVI2IGluc3RhbGxlZCB0byA6ZmlsZTpgL3VzcmAsIHlvdSBjYW4gZ2V0Cithd2F5IHdpdGggOjoKKworICAgIEV4dGVuc2lvbignZm9vJywgWydmb28uYyddLCBpbmNsdWRlX2RpcnM9WycvdXNyL2luY2x1ZGUvWDExJ10pCisKK1lvdSBzaG91bGQgYXZvaWQgdGhpcyBzb3J0IG9mIG5vbi1wb3J0YWJsZSB1c2FnZSBpZiB5b3UgcGxhbiB0byBkaXN0cmlidXRlIHlvdXIKK2NvZGU6IGl0J3MgcHJvYmFibHkgYmV0dGVyIHRvIHdyaXRlIEMgY29kZSBsaWtlICA6OgorCisgICAgI2luY2x1ZGUgPFgxMS9YbGliLmg+CisKK0lmIHlvdSBuZWVkIHRvIGluY2x1ZGUgaGVhZGVyIGZpbGVzIGZyb20gc29tZSBvdGhlciBQeXRob24gZXh0ZW5zaW9uLCB5b3UgY2FuCit0YWtlIGFkdmFudGFnZSBvZiB0aGUgZmFjdCB0aGF0IGhlYWRlciBmaWxlcyBhcmUgaW5zdGFsbGVkIGluIGEgY29uc2lzdGVudCB3YXkKK2J5IHRoZSBEaXN0dXRpbHMgOmNvbW1hbmQ6YGluc3RhbGxfaGVhZGVyYCBjb21tYW5kLiAgRm9yIGV4YW1wbGUsIHRoZSBOdW1lcmljYWwKK1B5dGhvbiBoZWFkZXIgZmlsZXMgYXJlIGluc3RhbGxlZCAob24gYSBzdGFuZGFyZCBVbml4IGluc3RhbGxhdGlvbikgdG8KKzpmaWxlOmAvdXNyL2xvY2FsL2luY2x1ZGUvcHl0aG9uMS41L051bWVyaWNhbGAuIChUaGUgZXhhY3QgbG9jYXRpb24gd2lsbCBkaWZmZXIKK2FjY29yZGluZyB0byB5b3VyIHBsYXRmb3JtIGFuZCBQeXRob24gaW5zdGFsbGF0aW9uLikgIFNpbmNlIHRoZSBQeXRob24gaW5jbHVkZQorZGlyZWN0b3J5LS0tXCA6ZmlsZTpgL3Vzci9sb2NhbC9pbmNsdWRlL3B5dGhvbjEuNWAgaW4gdGhpcyBjYXNlLS0taXMgYWx3YXlzCitpbmNsdWRlZCBpbiB0aGUgc2VhcmNoIHBhdGggd2hlbiBidWlsZGluZyBQeXRob24gZXh0ZW5zaW9ucywgdGhlIGJlc3QgYXBwcm9hY2gKK2lzIHRvIHdyaXRlIEMgY29kZSBsaWtlICA6OgorCisgICAgI2luY2x1ZGUgPE51bWVyaWNhbC9hcnJheW9iamVjdC5oPgorCisuLiBUT0RPIGNoZWNrIGlmIGl0J3MgZDIuc3lzY29uZmlnIG9yIHRoZSBuZXcgc3lzY29uZmlnIG1vZHVsZSBub3cKKworSWYgeW91IG11c3QgcHV0IHRoZSA6ZmlsZTpgTnVtZXJpY2FsYCBpbmNsdWRlIGRpcmVjdG9yeSByaWdodCBpbnRvIHlvdXIgaGVhZGVyCitzZWFyY2ggcGF0aCwgdGhvdWdoLCB5b3UgY2FuIGZpbmQgdGhhdCBkaXJlY3RvcnkgdXNpbmcgdGhlIERpc3R1dGlscworOm1vZDpgcGFja2FnaW5nLnN5c2NvbmZpZ2AgbW9kdWxlOjoKKworICAgIGZyb20gcGFja2FnaW5nLnN5c2NvbmZpZyBpbXBvcnQgZ2V0X3B5dGhvbl9pbmMKKyAgICBpbmNkaXIgPSBvcy5wYXRoLmpvaW4oZ2V0X3B5dGhvbl9pbmMocGxhdF9zcGVjaWZpYz0xKSwgJ051bWVyaWNhbCcpCisgICAgc2V0dXAoLi4uLAorICAgICAgICAgIEV4dGVuc2lvbiguLi4sIGluY2x1ZGVfZGlycz1baW5jZGlyXSkpCisKK0V2ZW4gdGhvdWdoIHRoaXMgaXMgcXVpdGUgcG9ydGFibGUtLS1pdCB3aWxsIHdvcmsgb24gYW55IFB5dGhvbiBpbnN0YWxsYXRpb24sCityZWdhcmRsZXNzIG9mIHBsYXRmb3JtLS0taXQncyBwcm9iYWJseSBlYXNpZXIgdG8ganVzdCB3cml0ZSB5b3VyIEMgY29kZSBpbiB0aGUKK3NlbnNpYmxlIHdheS4KKworWW91IGNhbiBkZWZpbmUgYW5kIHVuZGVmaW5lIHByZXByb2Nlc3NvciBtYWNyb3Mgd2l0aCB0aGUgYGBkZWZpbmVfbWFjcm9zYGAgYW5kCitgYHVuZGVmX21hY3Jvc2BgIG9wdGlvbnMuIGBgZGVmaW5lX21hY3Jvc2BgIHRha2VzIGEgbGlzdCBvZiBgYChuYW1lLCB2YWx1ZSlgYAordHVwbGVzLCB3aGVyZSBgYG5hbWVgYCBpcyB0aGUgbmFtZSBvZiB0aGUgbWFjcm8gdG8gZGVmaW5lIChhIHN0cmluZykgYW5kCitgYHZhbHVlYGAgaXMgaXRzIHZhbHVlOiBlaXRoZXIgYSBzdHJpbmcgb3IgYGBOb25lYGAuICAoRGVmaW5pbmcgYSBtYWNybyBgYEZPT2BgCit0byBgYE5vbmVgYCBpcyB0aGUgZXF1aXZhbGVudCBvZiBhIGJhcmUgYGAjZGVmaW5lIEZPT2BgIGluIHlvdXIgQyBzb3VyY2U6IHdpdGgKK21vc3QgY29tcGlsZXJzLCB0aGlzIHNldHMgYGBGT09gYCB0byB0aGUgc3RyaW5nIGBgMWBgLikgIGBgdW5kZWZfbWFjcm9zYGAgaXMKK2p1c3QgYSBsaXN0IG9mIG1hY3JvcyB0byB1bmRlZmluZS4KKworRm9yIGV4YW1wbGU6OgorCisgICAgRXh0ZW5zaW9uKC4uLiwKKyAgICAgICAgICAgICAgZGVmaW5lX21hY3Jvcz1bKCdOREVCVUcnLCAnMScpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ0hBVkVfU1RSRlRJTUUnLCBOb25lKV0sCisgICAgICAgICAgICAgIHVuZGVmX21hY3Jvcz1bJ0hBVkVfRk9PJywgJ0hBVkVfQkFSJ10pCisKK2lzIHRoZSBlcXVpdmFsZW50IG9mIGhhdmluZyB0aGlzIGF0IHRoZSB0b3Agb2YgZXZlcnkgQyBzb3VyY2UgZmlsZTo6CisKKyAgICAjZGVmaW5lIE5ERUJVRyAxCisgICAgI2RlZmluZSBIQVZFX1NUUkZUSU1FCisgICAgI3VuZGVmIEhBVkVfRk9PCisgICAgI3VuZGVmIEhBVkVfQkFSCisKKworTGlicmFyeSBvcHRpb25zCistLS0tLS0tLS0tLS0tLS0KKworWW91IGNhbiBhbHNvIHNwZWNpZnkgdGhlIGxpYnJhcmllcyB0byBsaW5rIGFnYWluc3Qgd2hlbiBidWlsZGluZyB5b3VyIGV4dGVuc2lvbiwKK2FuZCB0aGUgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciB0aG9zZSBsaWJyYXJpZXMuICBUaGUgYGBsaWJyYXJpZXNgYCBvcHRpb24gaXMKK2EgbGlzdCBvZiBsaWJyYXJpZXMgdG8gbGluayBhZ2FpbnN0LCBgYGxpYnJhcnlfZGlyc2BgIGlzIGEgbGlzdCBvZiBkaXJlY3RvcmllcwordG8gc2VhcmNoIGZvciBsaWJyYXJpZXMgYXQgIGxpbmstdGltZSwgYW5kIGBgcnVudGltZV9saWJyYXJ5X2RpcnNgYCBpcyBhIGxpc3Qgb2YKK2RpcmVjdG9yaWVzIHRvICBzZWFyY2ggZm9yIHNoYXJlZCAoZHluYW1pY2FsbHkgbG9hZGVkKSBsaWJyYXJpZXMgYXQgcnVuLXRpbWUuCisKK0ZvciBleGFtcGxlLCBpZiB5b3UgbmVlZCB0byBsaW5rIGFnYWluc3QgbGlicmFyaWVzIGtub3duIHRvIGJlIGluIHRoZSBzdGFuZGFyZAorbGlicmFyeSBzZWFyY2ggcGF0aCBvbiB0YXJnZXQgc3lzdGVtcyA6OgorCisgICAgRXh0ZW5zaW9uKC4uLiwKKyAgICAgICAgICAgICAgbGlicmFyaWVzPVsnZ2RibScsICdyZWFkbGluZSddKQorCitJZiB5b3UgbmVlZCB0byBsaW5rIHdpdGggbGlicmFyaWVzIGluIGEgbm9uLXN0YW5kYXJkIGxvY2F0aW9uLCB5b3UnbGwgaGF2ZSB0bworaW5jbHVkZSB0aGUgbG9jYXRpb24gaW4gYGBsaWJyYXJ5X2RpcnNgYDo6CisKKyAgICBFeHRlbnNpb24oLi4uLAorICAgICAgICAgICAgICBsaWJyYXJ5X2RpcnM9WycvdXNyL1gxMVI2L2xpYiddLAorICAgICAgICAgICAgICBsaWJyYXJpZXM9WydYMTEnLCAnWHQnXSkKKworKEFnYWluLCB0aGlzIHNvcnQgb2Ygbm9uLXBvcnRhYmxlIGNvbnN0cnVjdCBzaG91bGQgYmUgYXZvaWRlZCBpZiB5b3UgaW50ZW5kIHRvCitkaXN0cmlidXRlIHlvdXIgY29kZS4pCisKKy4uIFhYWCBTaG91bGQgbWVudGlvbiBjbGliIGxpYnJhcmllcyBoZXJlIG9yIHNvbWV3aGVyZSBlbHNlIQorCisKK090aGVyIG9wdGlvbnMKKy0tLS0tLS0tLS0tLS0KKworVGhlcmUgYXJlIHN0aWxsIHNvbWUgb3RoZXIgb3B0aW9ucyB3aGljaCBjYW4gYmUgdXNlZCB0byBoYW5kbGUgc3BlY2lhbCBjYXNlcy4KKworVGhlIDpvcHRpb246YG9wdGlvbmFsYCBvcHRpb24gaXMgYSBib29sZWFuOyBpZiBpdCBpcyB0cnVlLAorYSBidWlsZCBmYWlsdXJlIGluIHRoZSBleHRlbnNpb24gd2lsbCBub3QgYWJvcnQgdGhlIGJ1aWxkIHByb2Nlc3MsIGJ1dAoraW5zdGVhZCBzaW1wbHkgbm90IGluc3RhbGwgdGhlIGZhaWxpbmcgZXh0ZW5zaW9uLgorCitUaGUgOm9wdGlvbjpgZXh0cmFfb2JqZWN0c2Agb3B0aW9uIGlzIGEgbGlzdCBvZiBvYmplY3QgZmlsZXMgdG8gYmUgcGFzc2VkIHRvIHRoZQorbGlua2VyLiBUaGVzZSBmaWxlcyBtdXN0IG5vdCBoYXZlIGV4dGVuc2lvbnMsIGFzIHRoZSBkZWZhdWx0IGV4dGVuc2lvbiBmb3IgdGhlCitjb21waWxlciBpcyB1c2VkLgorCis6b3B0aW9uOmBleHRyYV9jb21waWxlX2FyZ3NgIGFuZCA6b3B0aW9uOmBleHRyYV9saW5rX2FyZ3NgIGNhbiBiZSB1c2VkIHRvCitzcGVjaWZ5IGFkZGl0aW9uYWwgY29tbWFuZC1saW5lIG9wdGlvbnMgZm9yIHRoZSByZXNwZWN0aXZlIGNvbXBpbGVyIGFuZCBsaW5rZXIKK2NvbW1hbmQgbGluZXMuCisKKzpvcHRpb246YGV4cG9ydF9zeW1ib2xzYCBpcyBvbmx5IHVzZWZ1bCBvbiBXaW5kb3dzLiAgSXQgY2FuIGNvbnRhaW4gYSBsaXN0IG9mCitzeW1ib2xzIChmdW5jdGlvbnMgb3IgdmFyaWFibGVzKSB0byBiZSBleHBvcnRlZC4gVGhpcyBvcHRpb24gaXMgbm90IG5lZWRlZCB3aGVuCitidWlsZGluZyBjb21waWxlZCBleHRlbnNpb25zOiBEaXN0dXRpbHMgIHdpbGwgYXV0b21hdGljYWxseSBhZGQgYGBpbml0bW9kdWxlYGAKK3RvIHRoZSBsaXN0IG9mIGV4cG9ydGVkIHN5bWJvbHMuCisKK1RoZSA6b3B0aW9uOmBkZXBlbmRzYCBvcHRpb24gaXMgYSBsaXN0IG9mIGZpbGVzIHRoYXQgdGhlIGV4dGVuc2lvbiBkZXBlbmRzIG9uCisoZm9yIGV4YW1wbGUgaGVhZGVyIGZpbGVzKS4gVGhlIGJ1aWxkIGNvbW1hbmQgd2lsbCBjYWxsIHRoZSBjb21waWxlciBvbiB0aGUKK3NvdXJjZXMgdG8gcmVidWlsZCBleHRlbnNpb24gaWYgYW55IG9uIHRoaXMgZmlsZXMgaGFzIGJlZW4gbW9kaWZpZWQgc2luY2UgdGhlCitwcmV2aW91cyBidWlsZC4KKworUmVsYXRpb25zaGlwcyBiZXR3ZWVuIERpc3RyaWJ1dGlvbnMgYW5kIFBhY2thZ2VzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gRklYTUUgcmV3cml0ZSB0byB1cGRhdGUgdG8gUEVQIDM0NSAoYnV0IHdpdGhvdXQgZGlzdC9yZWxlYXNlIGNvbmZ1c2lvbikKKworQSBkaXN0cmlidXRpb24gbWF5IHJlbGF0ZSB0byBwYWNrYWdlcyBpbiB0aHJlZSBzcGVjaWZpYyB3YXlzOgorCisjLiBJdCBjYW4gcmVxdWlyZSBwYWNrYWdlcyBvciBtb2R1bGVzLgorCisjLiBJdCBjYW4gcHJvdmlkZSBwYWNrYWdlcyBvciBtb2R1bGVzLgorCisjLiBJdCBjYW4gb2Jzb2xldGUgcGFja2FnZXMgb3IgbW9kdWxlcy4KKworVGhlc2UgcmVsYXRpb25zaGlwcyBjYW4gYmUgc3BlY2lmaWVkIHVzaW5nIGtleXdvcmQgYXJndW1lbnRzIHRvIHRoZQorOmZ1bmM6YHBhY2thZ2luZy5jb3JlLnNldHVwYCBmdW5jdGlvbi4KKworRGVwZW5kZW5jaWVzIG9uIG90aGVyIFB5dGhvbiBtb2R1bGVzIGFuZCBwYWNrYWdlcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHN1cHBseWluZwordGhlICpyZXF1aXJlcyoga2V5d29yZCBhcmd1bWVudCB0byA6ZnVuYzpgc2V0dXBgLiBUaGUgdmFsdWUgbXVzdCBiZSBhIGxpc3Qgb2YKK3N0cmluZ3MuICBFYWNoIHN0cmluZyBzcGVjaWZpZXMgYSBwYWNrYWdlIHRoYXQgaXMgcmVxdWlyZWQsIGFuZCBvcHRpb25hbGx5IHdoYXQKK3ZlcnNpb25zIGFyZSBzdWZmaWNpZW50LgorCitUbyBzcGVjaWZ5IHRoYXQgYW55IHZlcnNpb24gb2YgYSBtb2R1bGUgb3IgcGFja2FnZSBpcyByZXF1aXJlZCwgdGhlIHN0cmluZworc2hvdWxkIGNvbnNpc3QgZW50aXJlbHkgb2YgdGhlIG1vZHVsZSBvciBwYWNrYWdlIG5hbWUuIEV4YW1wbGVzIGluY2x1ZGUKK2BgJ215bW9kdWxlJ2BgIGFuZCBgYCd4bWwucGFyc2Vycy5leHBhdCdgYC4KKworSWYgc3BlY2lmaWMgdmVyc2lvbnMgYXJlIHJlcXVpcmVkLCBhIHNlcXVlbmNlIG9mIHF1YWxpZmllcnMgY2FuIGJlIHN1cHBsaWVkIGluCitwYXJlbnRoZXNlcy4gIEVhY2ggcXVhbGlmaWVyIG1heSBjb25zaXN0IG9mIGEgY29tcGFyaXNvbiBvcGVyYXRvciBhbmQgYSB2ZXJzaW9uCitudW1iZXIuICBUaGUgYWNjZXB0ZWQgY29tcGFyaXNvbiBvcGVyYXRvcnMgYXJlOjoKKworICAgIDwgICAgPiAgICA9PQorICAgIDw9ICAgPj0gICAhPQorCitUaGVzZSBjYW4gYmUgY29tYmluZWQgYnkgdXNpbmcgbXVsdGlwbGUgcXVhbGlmaWVycyBzZXBhcmF0ZWQgYnkgY29tbWFzIChhbmQKK29wdGlvbmFsIHdoaXRlc3BhY2UpLiAgSW4gdGhpcyBjYXNlLCBhbGwgb2YgdGhlIHF1YWxpZmllcnMgbXVzdCBiZSBtYXRjaGVkOyBhCitsb2dpY2FsIEFORCBpcyB1c2VkIHRvIGNvbWJpbmUgdGhlIGV2YWx1YXRpb25zLgorCitMZXQncyBsb29rIGF0IGEgYnVuY2ggb2YgZXhhbXBsZXM6CisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IFJlcXVpcmVzIEV4cHJlc3Npb24gICAgIHwgRXhwbGFuYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKz09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSsKK3wgYGA9PTEuMGBgICAgICAgICAgICAgICAgfCBPbmx5IHZlcnNpb24gYGAxLjBgYCBpcyBjb21wYXRpYmxlICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBgYD4xLjAsICE9MS41LjEsIDwyLjBgYCB8IEFueSB2ZXJzaW9uIGFmdGVyIGBgMS4wYGAgYW5kIGJlZm9yZSBgYDIuMGBgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAgfCBpcyBjb21wYXRpYmxlLCBleGNlcHQgYGAxLjUuMWBgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCitOb3cgdGhhdCB3ZSBjYW4gc3BlY2lmeSBkZXBlbmRlbmNpZXMsIHdlIGFsc28gbmVlZCB0byBiZSBhYmxlIHRvIHNwZWNpZnkgd2hhdCB3ZQorcHJvdmlkZSB0aGF0IG90aGVyIGRpc3RyaWJ1dGlvbnMgY2FuIHJlcXVpcmUuICBUaGlzIGlzIGRvbmUgdXNpbmcgdGhlICpwcm92aWRlcyoKK2tleXdvcmQgYXJndW1lbnQgdG8gOmZ1bmM6YHNldHVwYC4gVGhlIHZhbHVlIGZvciB0aGlzIGtleXdvcmQgaXMgYSBsaXN0IG9mCitzdHJpbmdzLCBlYWNoIG9mIHdoaWNoIG5hbWVzIGEgUHl0aG9uIG1vZHVsZSBvciBwYWNrYWdlLCBhbmQgb3B0aW9uYWxseQoraWRlbnRpZmllcyB0aGUgdmVyc2lvbi4gIElmIHRoZSB2ZXJzaW9uIGlzIG5vdCBzcGVjaWZpZWQsIGl0IGlzIGFzc3VtZWQgdG8gbWF0Y2gKK3RoYXQgb2YgdGhlIGRpc3RyaWJ1dGlvbi4KKworU29tZSBleGFtcGxlczoKKworKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBQcm92aWRlcyBFeHByZXNzaW9uIHwgRXhwbGFuYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKz09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KworfCBgYG15cGtnYGAgICAgICAgICAgIHwgUHJvdmlkZSBgYG15cGtnYGAsIHVzaW5nIHRoZSBkaXN0cmlidXRpb24gICAgfAorfCAgICAgICAgICAgICAgICAgICAgIHwgdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBgYG15cGtnICgxLjEpYGAgICAgIHwgUHJvdmlkZSBgYG15cGtnYGAgdmVyc2lvbiAxLjEsIHJlZ2FyZGxlc3Mgb2YgfAorfCAgICAgICAgICAgICAgICAgICAgIHwgdGhlIGRpc3RyaWJ1dGlvbiB2ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCitBIHBhY2thZ2UgY2FuIGRlY2xhcmUgdGhhdCBpdCBvYnNvbGV0ZXMgb3RoZXIgcGFja2FnZXMgdXNpbmcgdGhlICpvYnNvbGV0ZXMqCitrZXl3b3JkIGFyZ3VtZW50LiAgVGhlIHZhbHVlIGZvciB0aGlzIGlzIHNpbWlsYXIgdG8gdGhhdCBvZiB0aGUgKnJlcXVpcmVzKgora2V5d29yZDogYSBsaXN0IG9mIHN0cmluZ3MgZ2l2aW5nIG1vZHVsZSBvciBwYWNrYWdlIHNwZWNpZmllcnMuICBFYWNoIHNwZWNpZmllcgorY29uc2lzdHMgb2YgYSBtb2R1bGUgb3IgcGFja2FnZSBuYW1lIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgb25lIG9yIG1vcmUgdmVyc2lvbgorcXVhbGlmaWVycy4gIFZlcnNpb24gcXVhbGlmaWVycyBhcmUgZ2l2ZW4gaW4gcGFyZW50aGVzZXMgYWZ0ZXIgdGhlIG1vZHVsZSBvcgorcGFja2FnZSBuYW1lLgorCitUaGUgdmVyc2lvbnMgaWRlbnRpZmllZCBieSB0aGUgcXVhbGlmaWVycyBhcmUgdGhvc2UgdGhhdCBhcmUgb2Jzb2xldGVkIGJ5IHRoZQorZGlzdHJpYnV0aW9uIGJlaW5nIGRlc2NyaWJlZC4gIElmIG5vIHF1YWxpZmllcnMgYXJlIGdpdmVuLCBhbGwgdmVyc2lvbnMgb2YgdGhlCituYW1lZCBtb2R1bGUgb3IgcGFja2FnZSBhcmUgdW5kZXJzdG9vZCB0byBiZSBvYnNvbGV0ZWQuCisKKy4uIF9wYWNrYWdpbmctaW5zdGFsbGluZy1zY3JpcHRzOgorCitJbnN0YWxsaW5nIFNjcmlwdHMKKz09PT09PT09PT09PT09PT09PQorCitTbyBmYXIgd2UgaGF2ZSBiZWVuIGRlYWxpbmcgd2l0aCBwdXJlIGFuZCBub24tcHVyZSBQeXRob24gbW9kdWxlcywgd2hpY2ggYXJlCit1c3VhbGx5IG5vdCBydW4gYnkgdGhlbXNlbHZlcyBidXQgaW1wb3J0ZWQgYnkgc2NyaXB0cy4KKworU2NyaXB0cyBhcmUgZmlsZXMgY29udGFpbmluZyBQeXRob24gc291cmNlIGNvZGUsIGludGVuZGVkIHRvIGJlIHN0YXJ0ZWQgZnJvbSB0aGUKK2NvbW1hbmQgbGluZS4gIFNjcmlwdHMgZG9uJ3QgcmVxdWlyZSBEaXN0dXRpbHMgdG8gZG8gYW55dGhpbmcgdmVyeSBjb21wbGljYXRlZC4KK1RoZSBvbmx5IGNsZXZlciBmZWF0dXJlIGlzIHRoYXQgaWYgdGhlIGZpcnN0IGxpbmUgb2YgdGhlIHNjcmlwdCBzdGFydHMgd2l0aAorYGAjIWBgIGFuZCBjb250YWlucyB0aGUgd29yZCAicHl0aG9uIiwgdGhlIERpc3R1dGlscyB3aWxsIGFkanVzdCB0aGUgZmlyc3QgbGluZQordG8gcmVmZXIgdG8gdGhlIGN1cnJlbnQgaW50ZXJwcmV0ZXIgbG9jYXRpb24uIEJ5IGRlZmF1bHQsIGl0IGlzIHJlcGxhY2VkIHdpdGgKK3RoZSBjdXJyZW50IGludGVycHJldGVyIGxvY2F0aW9uLiAgVGhlIDpvcHRpb246YC0tZXhlY3V0YWJsZWAgKG9yIDpvcHRpb246YC1lYCkKK29wdGlvbiB3aWxsIGFsbG93IHRoZSBpbnRlcnByZXRlciBwYXRoIHRvIGJlIGV4cGxpY2l0bHkgb3ZlcnJpZGRlbi4KKworVGhlIDpvcHRpb246YHNjcmlwdHNgIG9wdGlvbiBzaW1wbHkgaXMgYSBsaXN0IG9mIGZpbGVzIHRvIGJlIGhhbmRsZWQgaW4gdGhpcword2F5LiAgRnJvbSB0aGUgUHlYTUwgc2V0dXAgc2NyaXB0OjoKKworICAgIHNldHVwKC4uLiwKKyAgICAgICAgICBzY3JpcHRzPVsnc2NyaXB0cy94bWxwcm9jX3BhcnNlJywgJ3NjcmlwdHMveG1scHJvY192YWwnXSkKKworQWxsIHRoZSBzY3JpcHRzIHdpbGwgYWxzbyBiZSBhZGRlZCB0byB0aGUgYGBNQU5JRkVTVGBgIGZpbGUgaWYgbm8gdGVtcGxhdGUgaXMKK3Byb3ZpZGVkLiBTZWUgOnJlZjpgcGFja2FnaW5nLW1hbmlmZXN0YC4KKworLi4gX3BhY2thZ2luZy1pbnN0YWxsaW5nLXBhY2thZ2UtZGF0YToKKworSW5zdGFsbGluZyBQYWNrYWdlIERhdGEKKz09PT09PT09PT09PT09PT09PT09PT09CisKK09mdGVuLCBhZGRpdGlvbmFsIGZpbGVzIG5lZWQgdG8gYmUgaW5zdGFsbGVkIGludG8gYSBwYWNrYWdlLiAgVGhlc2UgZmlsZXMgYXJlCitvZnRlbiBkYXRhIHRoYXQncyBjbG9zZWx5IHJlbGF0ZWQgdG8gdGhlIHBhY2thZ2UncyBpbXBsZW1lbnRhdGlvbiwgb3IgdGV4dCBmaWxlcworY29udGFpbmluZyBkb2N1bWVudGF0aW9uIHRoYXQgbWlnaHQgYmUgb2YgaW50ZXJlc3QgdG8gcHJvZ3JhbW1lcnMgdXNpbmcgdGhlCitwYWNrYWdlLiAgVGhlc2UgZmlsZXMgYXJlIGNhbGxlZCA6ZGZuOmBwYWNrYWdlIGRhdGFgLgorCitQYWNrYWdlIGRhdGEgY2FuIGJlIGFkZGVkIHRvIHBhY2thZ2VzIHVzaW5nIHRoZSBgYHBhY2thZ2VfZGF0YWBgIGtleXdvcmQKK2FyZ3VtZW50IHRvIHRoZSA6ZnVuYzpgc2V0dXBgIGZ1bmN0aW9uLiAgVGhlIHZhbHVlIG11c3QgYmUgYSBtYXBwaW5nIGZyb20KK3BhY2thZ2UgbmFtZSB0byBhIGxpc3Qgb2YgcmVsYXRpdmUgcGF0aCBuYW1lcyB0aGF0IHNob3VsZCBiZSBjb3BpZWQgaW50byB0aGUKK3BhY2thZ2UuICBUaGUgcGF0aHMgYXJlIGludGVycHJldGVkIGFzIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUKK3BhY2thZ2UgKGluZm9ybWF0aW9uIGZyb20gdGhlIGBgcGFja2FnZV9kaXJgYCBtYXBwaW5nIGlzIHVzZWQgaWYgYXBwcm9wcmlhdGUpOwordGhhdCBpcywgdGhlIGZpbGVzIGFyZSBleHBlY3RlZCB0byBiZSBwYXJ0IG9mIHRoZSBwYWNrYWdlIGluIHRoZSBzb3VyY2UKK2RpcmVjdG9yaWVzLiBUaGV5IG1heSBjb250YWluIGdsb2IgcGF0dGVybnMgYXMgd2VsbC4KKworVGhlIHBhdGggbmFtZXMgbWF5IGNvbnRhaW4gZGlyZWN0b3J5IHBvcnRpb25zOyBhbnkgbmVjZXNzYXJ5IGRpcmVjdG9yaWVzIHdpbGwgYmUKK2NyZWF0ZWQgaW4gdGhlIGluc3RhbGxhdGlvbi4KKworRm9yIGV4YW1wbGUsIGlmIGEgcGFja2FnZSBzaG91bGQgY29udGFpbiBhIHN1YmRpcmVjdG9yeSB3aXRoIHNldmVyYWwgZGF0YSBmaWxlcywKK3RoZSBmaWxlcyBjYW4gYmUgYXJyYW5nZWQgbGlrZSB0aGlzIGluIHRoZSBzb3VyY2UgdHJlZTo6CisKKyAgICBzZXR1cC5weQorICAgIHNyYy8KKyAgICAgICAgbXlwa2cvCisgICAgICAgICAgICAgIF9faW5pdF9fLnB5CisgICAgICAgICAgICAgIG1vZHVsZS5weQorICAgICAgICAgICAgICBkYXRhLworICAgICAgICAgICAgICAgICAgIHRhYmxlcy5kYXQKKyAgICAgICAgICAgICAgICAgICBzcG9vbnMuZGF0CisgICAgICAgICAgICAgICAgICAgZm9ya3MuZGF0CisKK1RoZSBjb3JyZXNwb25kaW5nIGNhbGwgdG8gOmZ1bmM6YHNldHVwYCBtaWdodCBiZTo6CisKKyAgICBzZXR1cCguLi4sCisgICAgICAgICAgcGFja2FnZXM9WydteXBrZyddLAorICAgICAgICAgIHBhY2thZ2VfZGlyPXsnbXlwa2cnOiAnc3JjL215cGtnJ30sCisgICAgICAgICAgcGFja2FnZV9kYXRhPXsnbXlwa2cnOiBbJ2RhdGEvKi5kYXQnXX0pCisKKworQWxsIHRoZSBmaWxlcyB0aGF0IG1hdGNoIGBgcGFja2FnZV9kYXRhYGAgd2lsbCBiZSBhZGRlZCB0byB0aGUgYGBNQU5JRkVTVGBgCitmaWxlIGlmIG5vIHRlbXBsYXRlIGlzIHByb3ZpZGVkLiBTZWUgOnJlZjpgcGFja2FnaW5nLW1hbmlmZXN0YC4KKworCisuLiBfcGFja2FnaW5nLWFkZGl0aW9uYWwtZmlsZXM6CisKK0luc3RhbGxpbmcgQWRkaXRpb25hbCBGaWxlcworPT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK1RoZSA6b3B0aW9uOmBkYXRhX2ZpbGVzYCBvcHRpb24gY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhZGRpdGlvbmFsIGZpbGVzIG5lZWRlZAorYnkgdGhlIG1vZHVsZSBkaXN0cmlidXRpb246IGNvbmZpZ3VyYXRpb24gZmlsZXMsIG1lc3NhZ2UgY2F0YWxvZ3MsIGRhdGEgZmlsZXMsCithbnl0aGluZyB3aGljaCBkb2Vzbid0IGZpdCBpbiB0aGUgcHJldmlvdXMgY2F0ZWdvcmllcy4KKworOm9wdGlvbjpgZGF0YV9maWxlc2Agc3BlY2lmaWVzIGEgc2VxdWVuY2Ugb2YgKCpkaXJlY3RvcnkqLCAqZmlsZXMqKSBwYWlycyBpbiB0aGUKK2ZvbGxvd2luZyB3YXk6OgorCisgICAgc2V0dXAoLi4uLAorICAgICAgICAgIGRhdGFfZmlsZXM9WygnYml0bWFwcycsIFsnYm0vYjEuZ2lmJywgJ2JtL2IyLmdpZiddKSwKKyAgICAgICAgICAgICAgICAgICAgICAoJ2NvbmZpZycsIFsnY2ZnL2RhdGEuY2ZnJ10pLAorICAgICAgICAgICAgICAgICAgICAgICgnL2V0Yy9pbml0LmQnLCBbJ2luaXQtc2NyaXB0J10pXSkKKworTm90ZSB0aGF0IHlvdSBjYW4gc3BlY2lmeSB0aGUgZGlyZWN0b3J5IG5hbWVzIHdoZXJlIHRoZSBkYXRhIGZpbGVzIHdpbGwgYmUKK2luc3RhbGxlZCwgYnV0IHlvdSBjYW5ub3QgcmVuYW1lIHRoZSBkYXRhIGZpbGVzIHRoZW1zZWx2ZXMuCisKK0VhY2ggKCpkaXJlY3RvcnkqLCAqZmlsZXMqKSBwYWlyIGluIHRoZSBzZXF1ZW5jZSBzcGVjaWZpZXMgdGhlIGluc3RhbGxhdGlvbgorZGlyZWN0b3J5IGFuZCB0aGUgZmlsZXMgdG8gaW5zdGFsbCB0aGVyZS4gIElmICpkaXJlY3RvcnkqIGlzIGEgcmVsYXRpdmUgcGF0aCwgaXQKK2lzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBpbnN0YWxsYXRpb24gcHJlZml4IChQeXRob24ncyBgYHN5cy5wcmVmaXhgYCBmb3IKK3B1cmUtUHl0aG9uIHBhY2thZ2VzLCBgYHN5cy5leGVjX3ByZWZpeGBgIGZvciBwYWNrYWdlcyB0aGF0IGNvbnRhaW4gZXh0ZW5zaW9uCittb2R1bGVzKS4gIEVhY2ggZmlsZSBuYW1lIGluICpmaWxlcyogaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlCis6ZmlsZTpgc2V0dXAucHlgIHNjcmlwdCBhdCB0aGUgdG9wIG9mIHRoZSBwYWNrYWdlIHNvdXJjZSBkaXN0cmlidXRpb24uICBObworZGlyZWN0b3J5IGluZm9ybWF0aW9uIGZyb20gKmZpbGVzKiBpcyB1c2VkIHRvIGRldGVybWluZSB0aGUgZmluYWwgbG9jYXRpb24gb2YKK3RoZSBpbnN0YWxsZWQgZmlsZTsgb25seSB0aGUgbmFtZSBvZiB0aGUgZmlsZSBpcyB1c2VkLgorCitZb3UgY2FuIHNwZWNpZnkgdGhlIDpvcHRpb246YGRhdGFfZmlsZXNgIG9wdGlvbnMgYXMgYSBzaW1wbGUgc2VxdWVuY2Ugb2YgZmlsZXMKK3dpdGhvdXQgc3BlY2lmeWluZyBhIHRhcmdldCBkaXJlY3RvcnksIGJ1dCB0aGlzIGlzIG5vdCByZWNvbW1lbmRlZCwgYW5kIHRoZQorOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGAgY29tbWFuZCB3aWxsIHByaW50IGEgd2FybmluZyBpbiB0aGlzIGNhc2UuIFRvIGluc3RhbGwgZGF0YQorZmlsZXMgZGlyZWN0bHkgaW4gdGhlIHRhcmdldCBkaXJlY3RvcnksIGFuIGVtcHR5IHN0cmluZyBzaG91bGQgYmUgZ2l2ZW4gYXMgdGhlCitkaXJlY3RvcnkuCisKK0FsbCB0aGUgZmlsZXMgdGhhdCBtYXRjaCBgYGRhdGFfZmlsZXNgYCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBgYE1BTklGRVNUYGAgZmlsZQoraWYgbm8gdGVtcGxhdGUgaXMgcHJvdmlkZWQuIFNlZSA6cmVmOmBwYWNrYWdpbmctbWFuaWZlc3RgLgorCisKKworLi4gX3BhY2thZ2luZy1tZXRhZGF0YToKKworTWV0YWRhdGEgcmVmZXJlbmNlCis9PT09PT09PT09PT09PT09PT0KKworVGhlIHNldHVwIHNjcmlwdCBtYXkgaW5jbHVkZSBhZGRpdGlvbmFsIG1ldGFkYXRhIGJleW9uZCB0aGUgbmFtZSBhbmQgdmVyc2lvbi4KK1RoaXMgdGFibGUgZGVzY3JpYmVzIHJlcXVpcmVkIGFuZCBhZGRpdGlvbmFsIGluZm9ybWF0aW9uOgorCisuLiBUT0RPIHN5bmNocm9uaXplIHdpdGggc2V0dXBjZmc7IGxpbmsgdG8gaXQgKGJ1dCBkb24ndCByZW1vdmUgaXQsIGl0J3MgYQorICAgdXNlZnVsIHN1bW1hcnkpCisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgTWV0YS1EYXRhICAgICAgICAgICAgfCBEZXNjcmlwdGlvbiAgICAgICAgICAgICAgIHwgVmFsdWUgICAgICAgICAgIHwgTm90ZXMgIHwKKys9PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PSs9PT09PT09PSsKK3wgYGBuYW1lYGAgICAgICAgICAgICAgfCBuYW1lIG9mIHRoZSBwcm9qZWN0ICAgICAgIHwgc2hvcnQgc3RyaW5nICAgIHwgXCgxKSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGB2ZXJzaW9uYGAgICAgICAgICAgfCB2ZXJzaW9uIG9mIHRoaXMgcmVsZWFzZSAgIHwgc2hvcnQgc3RyaW5nICAgIHwgKDEpKDIpIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBhdXRob3JgYCAgICAgICAgICAgfCBwcm9qZWN0IGF1dGhvcidzIG5hbWUgICAgIHwgc2hvcnQgc3RyaW5nICAgIHwgXCgzKSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBhdXRob3JfZW1haWxgYCAgICAgfCBlbWFpbCBhZGRyZXNzIG9mIHRoZSAgICAgIHwgZW1haWwgYWRkcmVzcyAgIHwgXCgzKSAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0IGF1dGhvciAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBtYWludGFpbmVyYGAgICAgICAgfCBwcm9qZWN0IG1haW50YWluZXIncyBuYW1lIHwgc2hvcnQgc3RyaW5nICAgIHwgXCgzKSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBtYWludGFpbmVyX2VtYWlsYGAgfCBlbWFpbCBhZGRyZXNzIG9mIHRoZSAgICAgIHwgZW1haWwgYWRkcmVzcyAgIHwgXCgzKSAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0IG1haW50YWluZXIgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBob21lX3BhZ2VgYCAgICAgICAgfCBob21lIHBhZ2UgZm9yIHRoZSBwcm9qZWN0IHwgVVJMICAgICAgICAgICAgIHwgXCgxKSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBzdW1tYXJ5YGAgICAgICAgICAgfCBzaG9ydCBkZXNjcmlwdGlvbiBvZiB0aGUgIHwgc2hvcnQgc3RyaW5nICAgIHwgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBkZXNjcmlwdGlvbmBgICAgICAgfCBsb25nZXIgZGVzY3JpcHRpb24gb2YgdGhlIHwgbG9uZyBzdHJpbmcgICAgIHwgXCg1KSAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBkb3dubG9hZF91cmxgYCAgICAgfCBsb2NhdGlvbiB3aGVyZSB0aGUgICAgICAgIHwgVVJMICAgICAgICAgICAgIHwgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0IG1heSBiZSBkb3dubG9hZGVkIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBjbGFzc2lmaWVyc2BgICAgICAgfCBhIGxpc3Qgb2YgY2xhc3NpZmllcnMgICAgIHwgbGlzdCBvZiBzdHJpbmdzIHwgXCg0KSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBwbGF0Zm9ybXNgYCAgICAgICAgfCBhIGxpc3Qgb2YgcGxhdGZvcm1zICAgICAgIHwgbGlzdCBvZiBzdHJpbmdzIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBsaWNlbnNlYGAgICAgICAgICAgfCBsaWNlbnNlIGZvciB0aGUgcmVsZWFzZSAgIHwgc2hvcnQgc3RyaW5nICAgIHwgXCg2KSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKKworTm90ZXM6CisKKygxKQorICAgIFRoZXNlIGZpZWxkcyBhcmUgcmVxdWlyZWQuCisKKygyKQorICAgIEl0IGlzIHJlY29tbWVuZGVkIHRoYXQgdmVyc2lvbnMgdGFrZSB0aGUgZm9ybSAqbWFqb3IubWlub3JbLnBhdGNoWy5zdWJdXSouCisKKygzKQorICAgIEVpdGhlciB0aGUgYXV0aG9yIG9yIHRoZSBtYWludGFpbmVyIG11c3QgYmUgaWRlbnRpZmllZC4KKworKDQpCisgICAgVGhlIGxpc3Qgb2YgY2xhc3NpZmllcnMgaXMgYXZhaWxhYmxlIGZyb20gdGhlIGBQeVBJIHdlYnNpdGUKKyAgICA8aHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpPmBfLiBTZWUgYWxzbyA6bW9kOmBwYWNrYWdpbmcuY3JlYXRlYC4KKworKDUpCisgICAgVGhlIGBgZGVzY3JpcHRpb25gYCBmaWVsZCBpcyB1c2VkIGJ5IFB5UEkgd2hlbiB5b3UgYXJlIHJlZ2lzdGVyaW5nIGEKKyAgICByZWxlYXNlLCB0byBidWlsZCBpdHMgUHlQSSBwYWdlLgorCisoNikKKyAgICBUaGUgYGBsaWNlbnNlYGAgZmllbGQgaXMgYSB0ZXh0IGluZGljYXRpbmcgdGhlIGxpY2Vuc2UgY292ZXJpbmcgdGhlCisgICAgZGlzdHJpYnV0aW9uIHdoZXJlIHRoZSBsaWNlbnNlIGlzIG5vdCBhIHNlbGVjdGlvbiBmcm9tIHRoZSAiTGljZW5zZSIgVHJvdmUKKyAgICBjbGFzc2lmaWVycy4gU2VlIHRoZSBgYENsYXNzaWZpZXJgYCBmaWVsZC4gTm90aWNlIHRoYXQKKyAgICB0aGVyZSdzIGEgYGBsaWNlbmNlYGAgZGlzdHJpYnV0aW9uIG9wdGlvbiB3aGljaCBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbAorICAgIGFjdHMgYXMgYW4gYWxpYXMgZm9yIGBgbGljZW5zZWBgLgorCisnc2hvcnQgc3RyaW5nJworICAgIEEgc2luZ2xlIGxpbmUgb2YgdGV4dCwgbm90IG1vcmUgdGhhbiAyMDAgY2hhcmFjdGVycy4KKworJ2xvbmcgc3RyaW5nJworICAgIE11bHRpcGxlIGxpbmVzIG9mIHBsYWluIHRleHQgaW4gcmVTdHJ1Y3R1cmVkVGV4dCBmb3JtYXQgKHNlZQorICAgIGh0dHA6Ly9kb2N1dGlscy5zZi5uZXQvKS4KKworJ2xpc3Qgb2Ygc3RyaW5ncycKKyAgICBTZWUgYmVsb3cuCisKK0luIFB5dGhvbiAyLngsICJzdHJpbmcgdmFsdWUiIG1lYW5zIGEgdW5pY29kZSBvYmplY3QuIElmIGEgYnl0ZSBzdHJpbmcgKHN0ciBvcgorYnl0ZXMpIGlzIGdpdmVuLCBpdCBoYXMgdG8gYmUgdmFsaWQgQVNDSUkuCisKKy4uIFRPRE8gbW92ZSB0aGlzIHNlY3Rpb24gdG8gdGhlIHZlcnNpb24gZG9jdW1lbnQsIGtlZXAgYSBzdW1tYXJ5LCBhZGQgYSBsaW5rCisKK0VuY29kaW5nIHRoZSB2ZXJzaW9uIGluZm9ybWF0aW9uIGlzIGFuIGFydCBpbiBpdHNlbGYuIFB5dGhvbiBwcm9qZWN0cyBnZW5lcmFsbHkKK2FkaGVyZSB0byB0aGUgdmVyc2lvbiBmb3JtYXQgKm1ham9yLm1pbm9yWy5wYXRjaF1bc3ViXSouIFRoZSBtYWpvciBudW1iZXIgaXMgMAorZm9yIGluaXRpYWwsIGV4cGVyaW1lbnRhbCByZWxlYXNlcyBvZiBzb2Z0d2FyZS4gSXQgaXMgaW5jcmVtZW50ZWQgZm9yIHJlbGVhc2VzCit0aGF0IHJlcHJlc2VudCBtYWpvciBtaWxlc3RvbmVzIGluIGEgcHJvamVjdC4gVGhlIG1pbm9yIG51bWJlciBpcyBpbmNyZW1lbnRlZAord2hlbiBpbXBvcnRhbnQgbmV3IGZlYXR1cmVzIGFyZSBhZGRlZCB0byB0aGUgcHJvamVjdC4gVGhlIHBhdGNoIG51bWJlcgoraW5jcmVtZW50cyB3aGVuIGJ1Zy1maXggcmVsZWFzZXMgYXJlIG1hZGUuIEFkZGl0aW9uYWwgdHJhaWxpbmcgdmVyc2lvbgoraW5mb3JtYXRpb24gaXMgc29tZXRpbWVzIHVzZWQgdG8gaW5kaWNhdGUgc3ViLXJlbGVhc2VzLiAgVGhlc2UgYXJlCisiYTEsYTIsLi4uLGFOIiAoZm9yIGFscGhhIHJlbGVhc2VzLCB3aGVyZSBmdW5jdGlvbmFsaXR5IGFuZCBBUEkgbWF5IGNoYW5nZSksCisiYjEsYjIsLi4uLGJOIiAoZm9yIGJldGEgcmVsZWFzZXMsIHdoaWNoIG9ubHkgZml4IGJ1Z3MpIGFuZCAicHIxLHByMiwuLi4scHJOIgorKGZvciBmaW5hbCBwcmUtcmVsZWFzZSByZWxlYXNlIHRlc3RpbmcpLiBTb21lIGV4YW1wbGVzOgorCiswLjEuMAorICAgIHRoZSBmaXJzdCwgZXhwZXJpbWVudGFsIHJlbGVhc2Ugb2YgYSBwcm9qZWN0CisKKzEuMC4xYTIKKyAgICB0aGUgc2Vjb25kIGFscGhhIHJlbGVhc2Ugb2YgdGhlIGZpcnN0IHBhdGNoIHZlcnNpb24gb2YgMS4wCisKKzpvcHRpb246YGNsYXNzaWZpZXJzYCBhcmUgc3BlY2lmaWVkIGluIGEgUHl0aG9uIGxpc3Q6OgorCisgICAgc2V0dXAoLi4uLAorICAgICAgICAgIGNsYXNzaWZpZXJzPVsKKyAgICAgICAgICAgICAgJ0RldmVsb3BtZW50IFN0YXR1cyA6OiA0IC0gQmV0YScsCisgICAgICAgICAgICAgICdFbnZpcm9ubWVudCA6OiBDb25zb2xlJywKKyAgICAgICAgICAgICAgJ0Vudmlyb25tZW50IDo6IFdlYiBFbnZpcm9ubWVudCcsCisgICAgICAgICAgICAgICdJbnRlbmRlZCBBdWRpZW5jZSA6OiBFbmQgVXNlcnMvRGVza3RvcCcsCisgICAgICAgICAgICAgICdJbnRlbmRlZCBBdWRpZW5jZSA6OiBEZXZlbG9wZXJzJywKKyAgICAgICAgICAgICAgJ0ludGVuZGVkIEF1ZGllbmNlIDo6IFN5c3RlbSBBZG1pbmlzdHJhdG9ycycsCisgICAgICAgICAgICAgICdMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBQeXRob24gU29mdHdhcmUgRm91bmRhdGlvbiBMaWNlbnNlJywKKyAgICAgICAgICAgICAgJ09wZXJhdGluZyBTeXN0ZW0gOjogTWFjT1MgOjogTWFjT1MgWCcsCisgICAgICAgICAgICAgICdPcGVyYXRpbmcgU3lzdGVtIDo6IE1pY3Jvc29mdCA6OiBXaW5kb3dzJywKKyAgICAgICAgICAgICAgJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVgnLAorICAgICAgICAgICAgICAnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uJywKKyAgICAgICAgICAgICAgJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IEVtYWlsJywKKyAgICAgICAgICAgICAgJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcycsCisgICAgICAgICAgICAgICdUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBCdWcgVHJhY2tpbmcnLAorICAgICAgICAgICAgICBdKQorCisKK0RlYnVnZ2luZyB0aGUgc2V0dXAgc2NyaXB0Cis9PT09PT09PT09PT09PT09PT09PT09PT09PQorCitTb21ldGltZXMgdGhpbmdzIGdvIHdyb25nLCBhbmQgdGhlIHNldHVwIHNjcmlwdCBkb2Vzbid0IGRvIHdoYXQgdGhlIGRldmVsb3Blcgord2FudHMuCisKK0Rpc3R1dGlscyBjYXRjaGVzIGFueSBleGNlcHRpb25zIHdoZW4gcnVubmluZyB0aGUgc2V0dXAgc2NyaXB0LCBhbmQgcHJpbnQgYQorc2ltcGxlIGVycm9yIG1lc3NhZ2UgYmVmb3JlIHRoZSBzY3JpcHQgaXMgdGVybWluYXRlZC4gIFRoZSBtb3RpdmF0aW9uIGZvciB0aGlzCitiZWhhdmlvdXIgaXMgdG8gbm90IGNvbmZ1c2UgYWRtaW5pc3RyYXRvcnMgd2hvIGRvbid0IGtub3cgbXVjaCBhYm91dCBQeXRob24gYW5kCithcmUgdHJ5aW5nIHRvIGluc3RhbGwgYSBwcm9qZWN0LiAgSWYgdGhleSBnZXQgYSBiaWcgbG9uZyB0cmFjZWJhY2sgZnJvbSBkZWVwCitpbnNpZGUgdGhlIGd1dHMgb2YgRGlzdHV0aWxzLCB0aGV5IG1heSB0aGluayB0aGUgcHJvamVjdCBvciB0aGUgUHl0aG9uCitpbnN0YWxsYXRpb24gaXMgYnJva2VuIGJlY2F1c2UgdGhleSBkb24ndCByZWFkIGFsbCB0aGUgd2F5IGRvd24gdG8gdGhlIGJvdHRvbQorYW5kIHNlZSB0aGF0IGl0J3MgYSBwZXJtaXNzaW9uIHByb2JsZW0uCisKKy4uIEZJWE1FIERJU1RVVElMU19ERUJVRyBpcyBkZWFkLCBkb2N1bWVudCBsb2dnaW5nL3dhcm5pbmdzIGhlcmUKKworT24gdGhlIG90aGVyIGhhbmQsIHRoaXMgZG9lc24ndCBoZWxwIHRoZSBkZXZlbG9wZXIgdG8gZmluZCB0aGUgY2F1c2Ugb2YgdGhlCitmYWlsdXJlLiBGb3IgdGhpcyBwdXJwb3NlLCB0aGUgRElTVFVUSUxTX0RFQlVHIGVudmlyb25tZW50IHZhcmlhYmxlIGNhbiBiZSBzZXQKK3RvIGFueXRoaW5nIGV4Y2VwdCBhbiBlbXB0eSBzdHJpbmcsIGFuZCBQYWNrYWdpbmcgd2lsbCBub3cgcHJpbnQgZGV0YWlsZWQKK2luZm9ybWF0aW9uIGFib3V0IHdoYXQgaXQgaXMgZG9pbmcsIGFuZCBwcmludHMgdGhlIGZ1bGwgdHJhY2ViYWNrIGluIGNhc2UgYW4KK2V4Y2VwdGlvbiBvY2N1cnMuCmRpZmYgLS1naXQgYS9Eb2MvcGFja2FnaW5nL3NvdXJjZWRpc3QucnN0IGIvRG9jL3BhY2thZ2luZy9zb3VyY2VkaXN0LnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yY2VkYzE1Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9zb3VyY2VkaXN0LnJzdApAQCAtMCwwICsxLDI2NiBAQAorLi4gX3BhY2thZ2luZy1zb3VyY2UtZGlzdDoKKworKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitDcmVhdGluZyBhIFNvdXJjZSBEaXN0cmlidXRpb24KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorCitBcyBzaG93biBpbiBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1zaW1wbGUtZXhhbXBsZWAsIHlvdSB1c2UgdGhlIDpjb21tYW5kOmBzZGlzdGAgY29tbWFuZAordG8gY3JlYXRlIGEgc291cmNlIGRpc3RyaWJ1dGlvbi4gIEluIHRoZSBzaW1wbGVzdCBjYXNlLCA6OgorCisgICBweXRob24gc2V0dXAucHkgc2Rpc3QKKworKGFzc3VtaW5nIHlvdSBoYXZlbid0IHNwZWNpZmllZCBhbnkgOmNvbW1hbmQ6YHNkaXN0YCBvcHRpb25zIGluIHRoZSBzZXR1cCBzY3JpcHQKK29yIGNvbmZpZyBmaWxlKSwgOmNvbW1hbmQ6YHNkaXN0YCBjcmVhdGVzIHRoZSBhcmNoaXZlIG9mIHRoZSBkZWZhdWx0IGZvcm1hdCBmb3IKK3RoZSBjdXJyZW50IHBsYXRmb3JtLiAgVGhlIGRlZmF1bHQgZm9ybWF0IGlzIGEgZ3ppcCdlZCB0YXIgZmlsZQorKDpmaWxlOmAudGFyLmd6YCkgb24gVW5peCwgYW5kIFpJUCBmaWxlIG9uIFdpbmRvd3MuCisKK1lvdSBjYW4gc3BlY2lmeSBhcyBtYW55IGZvcm1hdHMgYXMgeW91IGxpa2UgdXNpbmcgdGhlIDpvcHRpb246YC0tZm9ybWF0c2AKK29wdGlvbiwgZm9yIGV4YW1wbGU6OgorCisgICBweXRob24gc2V0dXAucHkgc2Rpc3QgLS1mb3JtYXRzPWd6dGFyLHppcAorCit0byBjcmVhdGUgYSBnemlwcGVkIHRhcmJhbGwgYW5kIGEgemlwIGZpbGUuICBUaGUgYXZhaWxhYmxlIGZvcm1hdHMgYXJlOgorCisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IEZvcm1hdCAgICB8IERlc2NyaXB0aW9uICAgICAgICAgICAgIHwgTm90ZXMgICB8CisrPT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT0rCit8IGBgemlwYGAgICB8IHppcCBmaWxlICg6ZmlsZTpgLnppcGApIHwgKDEpLCgzKSB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgZ3p0YXJgYCB8IGd6aXAnZWQgdGFyIGZpbGUgICAgICAgIHwgXCgyKSAgICB8Cit8ICAgICAgICAgICB8ICg6ZmlsZTpgLnRhci5nemApICAgICAgIHwgICAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgYnp0YXJgYCB8IGJ6aXAyJ2VkIHRhciBmaWxlICAgICAgIHwgICAgICAgICB8Cit8ICAgICAgICAgICB8ICg6ZmlsZTpgLnRhci5iejJgKSAgICAgIHwgICAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgdGFyYGAgICB8IHRhciBmaWxlICg6ZmlsZTpgLnRhcmApIHwgICAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCisKK05vdGVzOgorCisoMSkKKyAgIGRlZmF1bHQgb24gV2luZG93cworCisoMikKKyAgIGRlZmF1bHQgb24gVW5peAorCisoMykKKyAgIHJlcXVpcmVzIGVpdGhlciBleHRlcm5hbCA6cHJvZ3JhbTpgemlwYCB1dGlsaXR5IG9yIDptb2Q6YHppcGZpbGVgIG1vZHVsZSAocGFydAorICAgb2YgdGhlIHN0YW5kYXJkIFB5dGhvbiBsaWJyYXJ5IHNpbmNlIFB5dGhvbiAxLjYpCisKK1doZW4gdXNpbmcgYW55IGBgdGFyYGAgZm9ybWF0IChgYGd6dGFyYGAsIGBgYnp0YXJgYCBvcgorYGB0YXJgYCkgdW5kZXIgVW5peCwgeW91IGNhbiBzcGVjaWZ5IHRoZSBgYG93bmVyYGAgYW5kIGBgZ3JvdXBgYCBuYW1lcwordGhhdCB3aWxsIGJlIHNldCBmb3IgZWFjaCBtZW1iZXIgb2YgdGhlIGFyY2hpdmUuCisKK0ZvciBleGFtcGxlLCBpZiB5b3Ugd2FudCBhbGwgZmlsZXMgb2YgdGhlIGFyY2hpdmUgdG8gYmUgb3duZWQgYnkgcm9vdDo6CisKKyAgICBweXRob24gc2V0dXAucHkgc2Rpc3QgLS1vd25lcj1yb290IC0tZ3JvdXA9cm9vdAorCisKKy4uIF9wYWNrYWdpbmctbWFuaWZlc3Q6CisKK1NwZWNpZnlpbmcgdGhlIGZpbGVzIHRvIGRpc3RyaWJ1dGUKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworSWYgeW91IGRvbid0IHN1cHBseSBhbiBleHBsaWNpdCBsaXN0IG9mIGZpbGVzIChvciBpbnN0cnVjdGlvbnMgb24gaG93IHRvCitnZW5lcmF0ZSBvbmUpLCB0aGUgOmNvbW1hbmQ6YHNkaXN0YCBjb21tYW5kIHB1dHMgYSBtaW5pbWFsIGRlZmF1bHQgc2V0IGludG8gdGhlCitzb3VyY2UgZGlzdHJpYnV0aW9uOgorCisqIGFsbCBQeXRob24gc291cmNlIGZpbGVzIGltcGxpZWQgYnkgdGhlIDpvcHRpb246YHB5X21vZHVsZXNgIGFuZAorICA6b3B0aW9uOmBwYWNrYWdlc2Agb3B0aW9ucworCisqIGFsbCBDIHNvdXJjZSBmaWxlcyBtZW50aW9uZWQgaW4gdGhlIDpvcHRpb246YGV4dF9tb2R1bGVzYCBvcgorICA6b3B0aW9uOmBsaWJyYXJpZXNgIG9wdGlvbnMKKworKiBzY3JpcHRzIGlkZW50aWZpZWQgYnkgdGhlIDpvcHRpb246YHNjcmlwdHNgIG9wdGlvbgorICBTZWUgOnJlZjpgcGFja2FnaW5nLWluc3RhbGxpbmctc2NyaXB0c2AuCisKKyogYW55dGhpbmcgdGhhdCBsb29rcyBsaWtlIGEgdGVzdCBzY3JpcHQ6IDpmaWxlOmB0ZXN0L3Rlc3RcKi5weWAgKGN1cnJlbnRseSwgdGhlCisgIFBhY2thZ2luZyBkb24ndCBkbyBhbnl0aGluZyB3aXRoIHRlc3Qgc2NyaXB0cyBleGNlcHQgaW5jbHVkZSB0aGVtIGluIHNvdXJjZQorICBkaXN0cmlidXRpb25zLCBidXQgaW4gdGhlIGZ1dHVyZSB0aGVyZSB3aWxsIGJlIGEgc3RhbmRhcmQgZm9yIHRlc3RpbmcgUHl0aG9uCisgIG1vZHVsZSBkaXN0cmlidXRpb25zKQorCisqIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgOmZpbGU6YHNldHVwLmNmZ2AKKworKiBhbGwgZmlsZXMgdGhhdCBtYXRjaGVzIHRoZSBgYHBhY2thZ2VfZGF0YWBgIG1ldGFkYXRhLgorICBTZWUgOnJlZjpgcGFja2FnaW5nLWluc3RhbGxpbmctcGFja2FnZS1kYXRhYC4KKworKiBhbGwgZmlsZXMgdGhhdCBtYXRjaGVzIHRoZSBgYGRhdGFfZmlsZXNgYCBtZXRhZGF0YS4KKyAgU2VlIDpyZWY6YHBhY2thZ2luZy1hZGRpdGlvbmFsLWZpbGVzYC4KKworQ29udHJhcnkgdG8gRGlzdHV0aWxzLCA6ZmlsZTpgUkVBRE1FYCAob3IgOmZpbGU6YFJFQURNRS50eHRgKSBhbmQKKzpmaWxlOmBzZXR1cC5weWAgYXJlIG5vdCBpbmNsdWRlZCBieSBkZWZhdWx0LgorCitTb21ldGltZXMgdGhpcyBpcyBlbm91Z2gsIGJ1dCB1c3VhbGx5IHlvdSB3aWxsIHdhbnQgdG8gc3BlY2lmeSBhZGRpdGlvbmFsIGZpbGVzCit0byBkaXN0cmlidXRlLiAgVGhlIHR5cGljYWwgd2F5IHRvIGRvIHRoaXMgaXMgdG8gd3JpdGUgYSAqbWFuaWZlc3QgdGVtcGxhdGUqLAorY2FsbGVkIDpmaWxlOmBNQU5JRkVTVC5pbmAgYnkgZGVmYXVsdC4gIFRoZSBtYW5pZmVzdCB0ZW1wbGF0ZSBpcyBqdXN0IGEgbGlzdCBvZgoraW5zdHJ1Y3Rpb25zIGZvciBob3cgdG8gZ2VuZXJhdGUgeW91ciBtYW5pZmVzdCBmaWxlLCA6ZmlsZTpgTUFOSUZFU1RgLCB3aGljaCBpcwordGhlIGV4YWN0IGxpc3Qgb2YgZmlsZXMgdG8gaW5jbHVkZSBpbiB5b3VyIHNvdXJjZSBkaXN0cmlidXRpb24uICBUaGUKKzpjb21tYW5kOmBzZGlzdGAgY29tbWFuZCBwcm9jZXNzZXMgdGhpcyB0ZW1wbGF0ZSBhbmQgZ2VuZXJhdGVzIGEgbWFuaWZlc3QgYmFzZWQKK29uIGl0cyBpbnN0cnVjdGlvbnMgYW5kIHdoYXQgaXQgZmluZHMgaW4gdGhlIGZpbGVzeXN0ZW0uCisKK0lmIHlvdSBwcmVmZXIgdG8gcm9sbCB5b3VyIG93biBtYW5pZmVzdCBmaWxlLCB0aGUgZm9ybWF0IGlzIHNpbXBsZTogb25lIGZpbGVuYW1lCitwZXIgbGluZSwgcmVndWxhciBmaWxlcyAob3Igc3ltbGlua3MgdG8gdGhlbSkgb25seS4gIElmIHlvdSBkbyBzdXBwbHkgeW91ciBvd24KKzpmaWxlOmBNQU5JRkVTVGAsIHlvdSBtdXN0IHNwZWNpZnkgZXZlcnl0aGluZzogdGhlIGRlZmF1bHQgc2V0IG9mIGZpbGVzCitkZXNjcmliZWQgYWJvdmUgZG9lcyBub3QgYXBwbHkgaW4gdGhpcyBjYXNlLgorCis6ZmlsZTpgTUFOSUZFU1RgIGZpbGVzIHN0YXJ0IHdpdGggYSBjb21tZW50IGluZGljYXRpbmcgdGhleSBhcmUgZ2VuZXJhdGVkLgorRmlsZXMgd2l0aG91dCB0aGlzIGNvbW1lbnQgYXJlIG5vdCBvdmVyd3JpdHRlbiBvciByZW1vdmVkLgorCitTZWUgOnJlZjpgcGFja2FnaW5nLW1hbmlmZXN0LXRlbXBsYXRlYCBzZWN0aW9uIGZvciBhIHN5bnRheCByZWZlcmVuY2UuCisKKworLi4gX3BhY2thZ2luZy1tYW5pZmVzdC1vcHRpb25zOgorCitNYW5pZmVzdC1yZWxhdGVkIG9wdGlvbnMKKz09PT09PT09PT09PT09PT09PT09PT09PQorCitUaGUgbm9ybWFsIGNvdXJzZSBvZiBvcGVyYXRpb25zIGZvciB0aGUgOmNvbW1hbmQ6YHNkaXN0YCBjb21tYW5kIGlzIGFzIGZvbGxvd3M6CisKKyogaWYgdGhlIG1hbmlmZXN0IGZpbGUsIDpmaWxlOmBNQU5JRkVTVGAgZG9lc24ndCBleGlzdCwgcmVhZCA6ZmlsZTpgTUFOSUZFU1QuaW5gCisgIGFuZCBjcmVhdGUgdGhlIG1hbmlmZXN0CisKKyogaWYgbmVpdGhlciA6ZmlsZTpgTUFOSUZFU1RgIG5vciA6ZmlsZTpgTUFOSUZFU1QuaW5gIGV4aXN0LCBjcmVhdGUgYSBtYW5pZmVzdAorICB3aXRoIGp1c3QgdGhlIGRlZmF1bHQgZmlsZSBzZXQKKworKiBpZiBlaXRoZXIgOmZpbGU6YE1BTklGRVNULmluYCBvciB0aGUgc2V0dXAgc2NyaXB0ICg6ZmlsZTpgc2V0dXAucHlgKSBhcmUgbW9yZQorICByZWNlbnQgdGhhbiA6ZmlsZTpgTUFOSUZFU1RgLCByZWNyZWF0ZSA6ZmlsZTpgTUFOSUZFU1RgIGJ5IHJlYWRpbmcKKyAgOmZpbGU6YE1BTklGRVNULmluYAorCisqIHVzZSB0aGUgbGlzdCBvZiBmaWxlcyBub3cgaW4gOmZpbGU6YE1BTklGRVNUYCAoZWl0aGVyIGp1c3QgZ2VuZXJhdGVkIG9yIHJlYWQKKyAgaW4pIHRvIGNyZWF0ZSB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBhcmNoaXZlKHMpCisKK1RoZXJlIGFyZSBhIGNvdXBsZSBvZiBvcHRpb25zIHRoYXQgbW9kaWZ5IHRoaXMgYmVoYXZpb3VyLiAgRmlyc3QsIHVzZSB0aGUKKzpvcHRpb246YC0tbm8tZGVmYXVsdHNgIGFuZCA6b3B0aW9uOmAtLW5vLXBydW5lYCB0byBkaXNhYmxlIHRoZSBzdGFuZGFyZAorImluY2x1ZGUiIGFuZCAiZXhjbHVkZSIgc2V0cy4KKworU2Vjb25kLCB5b3UgbWlnaHQganVzdCB3YW50IHRvIChyZSlnZW5lcmF0ZSB0aGUgbWFuaWZlc3QsIGJ1dCBub3QgY3JlYXRlIGEKK3NvdXJjZSBkaXN0cmlidXRpb246OgorCisgICBweXRob24gc2V0dXAucHkgc2Rpc3QgLS1tYW5pZmVzdC1vbmx5CisKKzpvcHRpb246YC1vYCBpcyBhIHNob3J0Y3V0IGZvciA6b3B0aW9uOmAtLW1hbmlmZXN0LW9ubHlgLgorCisKKy4uIF9wYWNrYWdpbmctbWFuaWZlc3QtdGVtcGxhdGU6CisKK1RoZSBNQU5JRkVTVC5pbiB0ZW1wbGF0ZQorPT09PT09PT09PT09PT09PT09PT09PT09CisKK0EgOmZpbGU6YE1BTklGRVNULmluYCBmaWxlIGNhbiBiZSBhZGRlZCBpbiBhIHByb2plY3QgdG8gZGVmaW5lIHRoZSBsaXN0IG9mCitmaWxlcyB0byBpbmNsdWRlIGluIHRoZSBkaXN0cmlidXRpb24gYnVpbHQgYnkgdGhlIDpjb21tYW5kOmBzZGlzdGAgY29tbWFuZC4KKworV2hlbiA6Y29tbWFuZDpgc2Rpc3RgIGlzIHJ1biwgaXQgd2lsbCBsb29rIGZvciB0aGUgOmZpbGU6YE1BTklGRVNULmluYCBmaWxlCithbmQgaW50ZXJwcmV0IGl0IHRvIGdlbmVyYXRlIHRoZSA6ZmlsZTpgTUFOSUZFU1RgIGZpbGUgdGhhdCBjb250YWlucyB0aGUKK2xpc3Qgb2YgZmlsZXMgdGhhdCB3aWxsIGJlIGluY2x1ZGVkIGluIHRoZSBwYWNrYWdlLgorCitUaGlzIG1lY2hhbmlzbSBjYW4gYmUgdXNlZCB3aGVuIHRoZSBkZWZhdWx0IGxpc3Qgb2YgZmlsZXMgaXMgbm90IGVub3VnaC4KKyhTZWUgOnJlZjpgcGFja2FnaW5nLW1hbmlmZXN0YCkuCisKK1ByaW5jaXBsZQorLS0tLS0tLS0tCisKK1RoZSBtYW5pZmVzdCB0ZW1wbGF0ZSBoYXMgb25lIGNvbW1hbmQgcGVyIGxpbmUsIHdoZXJlIGVhY2ggY29tbWFuZCBzcGVjaWZpZXMgYQorc2V0IG9mIGZpbGVzIHRvIGluY2x1ZGUgb3IgZXhjbHVkZSBmcm9tIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uLiAgRm9yIGFuCitleGFtcGxlLCBsZXQncyBsb29rIGF0IHRoZSBQYWNrYWdpbmcnIG93biBtYW5pZmVzdCB0ZW1wbGF0ZTo6CisKKyAgIGluY2x1ZGUgKi50eHQKKyAgIHJlY3Vyc2l2ZS1pbmNsdWRlIGV4YW1wbGVzICoudHh0ICoucHkKKyAgIHBydW5lIGV4YW1wbGVzL3NhbXBsZT8vYnVpbGQKKworVGhlIG1lYW5pbmdzIHNob3VsZCBiZSBmYWlybHkgY2xlYXI6IGluY2x1ZGUgYWxsIGZpbGVzIGluIHRoZSBkaXN0cmlidXRpb24gcm9vdAorbWF0Y2hpbmcgOmZpbGU6YFwqLnR4dGAsIGFsbCBmaWxlcyBhbnl3aGVyZSB1bmRlciB0aGUgOmZpbGU6YGV4YW1wbGVzYCBkaXJlY3RvcnkKK21hdGNoaW5nIDpmaWxlOmBcKi50eHRgIG9yIDpmaWxlOmBcKi5weWAsIGFuZCBleGNsdWRlIGFsbCBkaXJlY3RvcmllcyBtYXRjaGluZworOmZpbGU6YGV4YW1wbGVzL3NhbXBsZT8vYnVpbGRgLiAgQWxsIG9mIHRoaXMgaXMgZG9uZSAqYWZ0ZXIqIHRoZSBzdGFuZGFyZAoraW5jbHVkZSBzZXQsIHNvIHlvdSBjYW4gZXhjbHVkZSBmaWxlcyBmcm9tIHRoZSBzdGFuZGFyZCBzZXQgd2l0aCBleHBsaWNpdAoraW5zdHJ1Y3Rpb25zIGluIHRoZSBtYW5pZmVzdCB0ZW1wbGF0ZS4gIChPciwgeW91IGNhbiB1c2UgdGhlCis6b3B0aW9uOmAtLW5vLWRlZmF1bHRzYCBvcHRpb24gdG8gZGlzYWJsZSB0aGUgc3RhbmRhcmQgc2V0IGVudGlyZWx5LikKKworVGhlIG9yZGVyIG9mIGNvbW1hbmRzIGluIHRoZSBtYW5pZmVzdCB0ZW1wbGF0ZSBtYXR0ZXJzOiBpbml0aWFsbHksIHdlIGhhdmUgdGhlCitsaXN0IG9mIGRlZmF1bHQgZmlsZXMgYXMgZGVzY3JpYmVkIGFib3ZlLCBhbmQgZWFjaCBjb21tYW5kIGluIHRoZSB0ZW1wbGF0ZSBhZGRzCit0byBvciByZW1vdmVzIGZyb20gdGhhdCBsaXN0IG9mIGZpbGVzLiAgT25jZSB3ZSBoYXZlIGZ1bGx5IHByb2Nlc3NlZCB0aGUKK21hbmlmZXN0IHRlbXBsYXRlLCB3ZSByZW1vdmUgZmlsZXMgdGhhdCBzaG91bGQgbm90IGJlIGluY2x1ZGVkIGluIHRoZSBzb3VyY2UKK2Rpc3RyaWJ1dGlvbjoKKworKiBhbGwgZmlsZXMgaW4gdGhlIFBhY2thZ2luZyAiYnVpbGQiIHRyZWUgKGRlZmF1bHQgOmZpbGU6YGJ1aWxkL2ApCisKKyogYWxsIGZpbGVzIGluIGRpcmVjdG9yaWVzIG5hbWVkIDpmaWxlOmBSQ1NgLCA6ZmlsZTpgQ1ZTYCwgOmZpbGU6YC5zdm5gLAorICA6ZmlsZTpgLmhnYCwgOmZpbGU6YC5naXRgLCA6ZmlsZTpgLmJ6cmAgb3IgOmZpbGU6YF9kYXJjc2AKKworTm93IHdlIGhhdmUgb3VyIGNvbXBsZXRlIGxpc3Qgb2YgZmlsZXMsIHdoaWNoIGlzIHdyaXR0ZW4gdG8gdGhlIG1hbmlmZXN0IGZvcgorZnV0dXJlIHJlZmVyZW5jZSwgYW5kIHRoZW4gdXNlZCB0byBidWlsZCB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBhcmNoaXZlKHMpLgorCitZb3UgY2FuIGRpc2FibGUgdGhlIGRlZmF1bHQgc2V0IG9mIGluY2x1ZGVkIGZpbGVzIHdpdGggdGhlCis6b3B0aW9uOmAtLW5vLWRlZmF1bHRzYCBvcHRpb24sIGFuZCB5b3UgY2FuIGRpc2FibGUgdGhlIHN0YW5kYXJkIGV4Y2x1ZGUgc2V0Cit3aXRoIDpvcHRpb246YC0tbm8tcHJ1bmVgLgorCitGb2xsb3dpbmcgdGhlIFBhY2thZ2luZycgb3duIG1hbmlmZXN0IHRlbXBsYXRlLCBsZXQncyB0cmFjZSBob3cgdGhlCis6Y29tbWFuZDpgc2Rpc3RgIGNvbW1hbmQgYnVpbGRzIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGluY2x1ZGUgaW4gdGhlIFBhY2thZ2luZworc291cmNlIGRpc3RyaWJ1dGlvbjoKKworIy4gaW5jbHVkZSBhbGwgUHl0aG9uIHNvdXJjZSBmaWxlcyBpbiB0aGUgOmZpbGU6YHBhY2thZ2luZ2AgYW5kCisgICA6ZmlsZTpgcGFja2FnaW5nL2NvbW1hbmRgIHN1YmRpcmVjdG9yaWVzIChiZWNhdXNlIHBhY2thZ2VzIGNvcnJlc3BvbmRpbmcgdG8KKyAgIHRob3NlIHR3byBkaXJlY3RvcmllcyB3ZXJlIG1lbnRpb25lZCBpbiB0aGUgOm9wdGlvbjpgcGFja2FnZXNgIG9wdGlvbiBpbiB0aGUKKyAgIHNldHVwIHNjcmlwdC0tLXNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1zZXR1cC1zY3JpcHRgKQorCisjLiBpbmNsdWRlIDpmaWxlOmBSRUFETUUudHh0YCwgOmZpbGU6YHNldHVwLnB5YCwgYW5kIDpmaWxlOmBzZXR1cC5jZmdgIChzdGFuZGFyZAorICAgZmlsZXMpCisKKyMuIGluY2x1ZGUgOmZpbGU6YHRlc3QvdGVzdFwqLnB5YCAoc3RhbmRhcmQgZmlsZXMpCisKKyMuIGluY2x1ZGUgOmZpbGU6YFwqLnR4dGAgaW4gdGhlIGRpc3RyaWJ1dGlvbiByb290ICh0aGlzIHdpbGwgZmluZAorICAgOmZpbGU6YFJFQURNRS50eHRgIGEgc2Vjb25kIHRpbWUsIGJ1dCBzdWNoIHJlZHVuZGFuY2llcyBhcmUgd2VlZGVkIG91dCBsYXRlcikKKworIy4gaW5jbHVkZSBhbnl0aGluZyBtYXRjaGluZyA6ZmlsZTpgXCoudHh0YCBvciA6ZmlsZTpgXCoucHlgIGluIHRoZSBzdWItdHJlZQorICAgdW5kZXIgOmZpbGU6YGV4YW1wbGVzYCwKKworIy4gZXhjbHVkZSBhbGwgZmlsZXMgaW4gdGhlIHN1Yi10cmVlcyBzdGFydGluZyBhdCBkaXJlY3RvcmllcyBtYXRjaGluZworICAgOmZpbGU6YGV4YW1wbGVzL3NhbXBsZT8vYnVpbGRgXCAtLS10aGlzIG1heSBleGNsdWRlIGZpbGVzIGluY2x1ZGVkIGJ5IHRoZQorICAgcHJldmlvdXMgdHdvIHN0ZXBzLCBzbyBpdCdzIGltcG9ydGFudCB0aGF0IHRoZSBgYHBydW5lYGAgY29tbWFuZCBpbiB0aGUgbWFuaWZlc3QKKyAgIHRlbXBsYXRlIGNvbWVzIGFmdGVyIHRoZSBgYHJlY3Vyc2l2ZS1pbmNsdWRlYGAgY29tbWFuZAorCisjLiBleGNsdWRlIHRoZSBlbnRpcmUgOmZpbGU6YGJ1aWxkYCB0cmVlLCBhbmQgYW55IDpmaWxlOmBSQ1NgLCA6ZmlsZTpgQ1ZTYCwKKyAgIDpmaWxlOmAuc3ZuYCwgOmZpbGU6YC5oZ2AsIDpmaWxlOmAuZ2l0YCwgOmZpbGU6YC5ienJgIGFuZCA6ZmlsZTpgX2RhcmNzYAorICAgZGlyZWN0b3JpZXMKKworSnVzdCBsaWtlIGluIHRoZSBzZXR1cCBzY3JpcHQsIGZpbGUgYW5kIGRpcmVjdG9yeSBuYW1lcyBpbiB0aGUgbWFuaWZlc3QgdGVtcGxhdGUKK3Nob3VsZCBhbHdheXMgYmUgc2xhc2gtc2VwYXJhdGVkOyB0aGUgUGFja2FnaW5nIHdpbGwgdGFrZSBjYXJlIG9mIGNvbnZlcnRpbmcKK3RoZW0gdG8gdGhlIHN0YW5kYXJkIHJlcHJlc2VudGF0aW9uIG9uIHlvdXIgcGxhdGZvcm0uIFRoYXQgd2F5LCB0aGUgbWFuaWZlc3QKK3RlbXBsYXRlIGlzIHBvcnRhYmxlIGFjcm9zcyBvcGVyYXRpbmcgc3lzdGVtcy4KKworQ29tbWFuZHMKKy0tLS0tLS0tCisKK1RoZSBtYW5pZmVzdCB0ZW1wbGF0ZSBjb21tYW5kcyBhcmU6CisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBDb21tYW5kICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IERlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSsKK3wgOmNvbW1hbmQ6YGluY2x1ZGUgcGF0MSBwYXQyIC4uLmAgICAgICAgICAgfCBpbmNsdWRlIGFsbCBmaWxlcyBtYXRjaGluZyBhbnkgb2YgdGhlIGxpc3RlZCAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHBhdHRlcm5zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YGV4Y2x1ZGUgcGF0MSBwYXQyIC4uLmAgICAgICAgICAgfCBleGNsdWRlIGFsbCBmaWxlcyBtYXRjaGluZyBhbnkgb2YgdGhlIGxpc3RlZCAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHBhdHRlcm5zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YHJlY3Vyc2l2ZS1pbmNsdWRlIGRpciBwYXQxIHBhdDIgfCBpbmNsdWRlIGFsbCBmaWxlcyB1bmRlciAqZGlyKiBtYXRjaGluZyBhbnkgb2YgfAorfCAuLi5gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRoZSBsaXN0ZWQgcGF0dGVybnMgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YHJlY3Vyc2l2ZS1leGNsdWRlIGRpciBwYXQxIHBhdDIgfCBleGNsdWRlIGFsbCBmaWxlcyB1bmRlciAqZGlyKiBtYXRjaGluZyBhbnkgb2YgfAorfCAuLi5gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRoZSBsaXN0ZWQgcGF0dGVybnMgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YGdsb2JhbC1pbmNsdWRlIHBhdDEgcGF0MiAuLi5gICAgfCBpbmNsdWRlIGFsbCBmaWxlcyBhbnl3aGVyZSBpbiB0aGUgc291cmNlIHRyZWUgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG1hdGNoaW5nIC0tLSAmIGFueSBvZiB0aGUgbGlzdGVkIHBhdHRlcm5zICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YGdsb2JhbC1leGNsdWRlIHBhdDEgcGF0MiAuLi5gICAgfCBleGNsdWRlIGFsbCBmaWxlcyBhbnl3aGVyZSBpbiB0aGUgc291cmNlIHRyZWUgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG1hdGNoaW5nIC0tLSAmIGFueSBvZiB0aGUgbGlzdGVkIHBhdHRlcm5zICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YHBydW5lIGRpcmAgICAgICAgICAgICAgICAgICAgICAgfCBleGNsdWRlIGFsbCBmaWxlcyB1bmRlciAqZGlyKiAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IDpjb21tYW5kOmBncmFmdCBkaXJgICAgICAgICAgICAgICAgICAgICAgIHwgaW5jbHVkZSBhbGwgZmlsZXMgdW5kZXIgKmRpciogICAgICAgICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCitUaGUgcGF0dGVybnMgaGVyZSBhcmUgVW5peC1zdHlsZSAiZ2xvYiIgcGF0dGVybnM6IGBgKmBgIG1hdGNoZXMgYW55IHNlcXVlbmNlIG9mCityZWd1bGFyIGZpbGVuYW1lIGNoYXJhY3RlcnMsIGBgP2BgIG1hdGNoZXMgYW55IHNpbmdsZSByZWd1bGFyIGZpbGVuYW1lCitjaGFyYWN0ZXIsIGFuZCBgYFtyYW5nZV1gYCBtYXRjaGVzIGFueSBvZiB0aGUgY2hhcmFjdGVycyBpbiAqcmFuZ2UqIChlLmcuLAorYGBhLXpgYCwgYGBhLXpBLVpgYCwgYGBhLWYwLTlfLmBgKS4gIFRoZSBkZWZpbml0aW9uIG9mICJyZWd1bGFyIGZpbGVuYW1lCitjaGFyYWN0ZXIiIGlzIHBsYXRmb3JtLXNwZWNpZmljOiBvbiBVbml4IGl0IGlzIGFueXRoaW5nIGV4Y2VwdCBzbGFzaDsgb24gV2luZG93cworYW55dGhpbmcgZXhjZXB0IGJhY2tzbGFzaCBvciBjb2xvbi4KZGlmZiAtLWdpdCBhL0RvYy9wYWNrYWdpbmcvdHV0b3JpYWwucnN0IGIvRG9jL3BhY2thZ2luZy90dXRvcmlhbC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDRmNDFlNQotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9wYWNrYWdpbmcvdHV0b3JpYWwucnN0CkBAIC0wLDAgKzEsMTEyIEBACis9PT09PT09PT09PT09PT09PT0KK1BhY2thZ2luZyB0dXRvcmlhbAorPT09PT09PT09PT09PT09PT09CisKK1dlbGNvbWUgdG8gdGhlIFBhY2thZ2luZyB0dXRvcmlhbCEgV2Ugd2lsbCBsZWFybiBob3cgdG8gdXNlIFBhY2thZ2luZwordG8gcGFja2FnZSB5b3VyIHByb2plY3QuCisKKy4uIFRPRE8gbWVyZ2Ugd2l0aCBpbnRyb2R1Y3Rpb24ucnN0CisKKworR2V0dGluZyBzdGFydGVkCistLS0tLS0tLS0tLS0tLS0KKworUGFja2FnaW5nIHdvcmtzIHdpdGggdGhlICpzZXR1cC5jZmcqIGZpbGUuIEl0IGNvbnRhaW5zIGFsbCB0aGUgbWV0YWRhdGEgZm9yCit5b3VyIHByb2plY3QsIGFzIGRlZmluZWQgaW4gUEVQIDM0NSwgYnV0IGFsc28gZGVjbGFyZSB3aGF0IHlvdXIgcHJvamVjdAorY29udGFpbnMuCisKK0xldCdzIHNheSB5b3UgaGF2ZSBhIHByb2plY3QgY2FsbGVkICpDTFZhdWx0KiBjb250YWluaW5nIG9uZSBwYWNrYWdlIGNhbGxlZAorKmNsdmF1bHQqLCBhbmQgYSBmZXcgc2NyaXB0cyBpbnNpZGUuIFlvdSBjYW4gdXNlIHRoZSAqcHlzZXR1cCogc2NyaXB0IHRvIGNyZWF0ZQorYSAqc2V0dXAuY2ZnKiBmaWxlIGZvciB0aGUgcHJvamVjdC4gVGhlIHNjcmlwdCB3aWxsIGFzayB5b3UgYSBmZXcgcXVlc3Rpb25zOjoKKworICAgJCBta2RpciBDTFZhdWx0CisgICAkIGNkIENMVmF1bHQKKyAgICQgcHlzZXR1cCBjcmVhdGUKKyAgIFByb2plY3QgbmFtZSBbQ0xWYXVsdF06CisgICBDdXJyZW50IHZlcnNpb24gbnVtYmVyOiAwLjEKKyAgIFBhY2thZ2UgZGVzY3JpcHRpb246CisgICA+Q29tbWFuZC1saW5lIHV0aWxpdHkgdG8gc3RvcmUgYW5kIHJldHJpZXZlIHBhc3N3b3JkcworICAgQXV0aG9yIG5hbWU6IFRhcmVrIFppYWRlCisgICBBdXRob3IgZS1tYWlsIGFkZHJlc3M6IHRhcmVrQHppYWRlLm9yZworICAgUHJvamVjdCBIb21lIFBhZ2U6IGh0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL2NsdmF1bHQKKyAgIERvIHlvdSB3YW50IHRvIGFkZCBhIHBhY2thZ2UgPyAoeS9uKTogeQorICAgUGFja2FnZSBuYW1lOiBjbHZhdWx0CisgICBEbyB5b3Ugd2FudCB0byBhZGQgYSBwYWNrYWdlID8gKHkvbik6IG4KKyAgIERvIHlvdSB3YW50IHRvIHNldCBUcm92ZSBjbGFzc2lmaWVycz8gKHkvbik6IHkKKyAgIFBsZWFzZSBzZWxlY3QgdGhlIHByb2plY3Qgc3RhdHVzOgorCisgICAxIC0gUGxhbm5pbmcKKyAgIDIgLSBQcmUtQWxwaGEKKyAgIDMgLSBBbHBoYQorICAgNCAtIEJldGEKKyAgIDUgLSBQcm9kdWN0aW9uL1N0YWJsZQorICAgNiAtIE1hdHVyZQorICAgNyAtIEluYWN0aXZlCisKKyAgIFN0YXR1czogMworICAgV2hhdCBsaWNlbnNlIGRvIHlvdSB1c2U6IEdQTAorICAgTWF0Y2hpbmcgbGljZW5zZXM6CisKKyAgIDEpIExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChHUEwpCisgICAyKSBMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgTGlicmFyeSBvciBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoTEdQTCkKKworICAgVHlwZSB0aGUgbnVtYmVyIG9mIHRoZSBsaWNlbnNlIHlvdSB3aXNoIHRvIHVzZSBvciA/IHRvIHRyeSBhZ2Fpbjo6IDEKKyAgIERvIHlvdSB3YW50IHRvIHNldCBvdGhlciB0cm92ZSBpZGVudGlmaWVycyAoeS9uKSBbbl06IG4KKyAgIFdyb3RlICJzZXR1cC5jZmciLgorCisKK0Egc2V0dXAuY2ZnIGZpbGUgaXMgY3JlYXRlZCwgY29udGFpbmluZyB0aGUgbWV0YWRhdGEgb2YgeW91ciBwcm9qZWN0IGFuZCB0aGUKK2xpc3Qgb2YgdGhlIHBhY2thZ2VzIGl0IGNvbnRhaW5zOjoKKworICAgJCBjYXQgc2V0dXAuY2ZnCisgICBbbWV0YWRhdGFdCisgICBuYW1lID0gQ0xWYXVsdAorICAgdmVyc2lvbiA9IDAuMQorICAgYXV0aG9yID0gVGFyZWsgWmlhZGUKKyAgIGF1dGhvcl9lbWFpbCA9IHRhcmVrQHppYWRlLm9yZworICAgZGVzY3JpcHRpb24gPSBDb21tYW5kLWxpbmUgdXRpbGl0eSB0byBzdG9yZSBhbmQgcmV0cmlldmUgcGFzc3dvcmRzCisgICBob21lX3BhZ2UgPSBodHRwOi8vYml0YnVja2V0Lm9yZy90YXJlay9jbHZhdWx0CisKKyAgIGNsYXNzaWZpZXIgPSBEZXZlbG9wbWVudCBTdGF0dXMgOjogMyAtIEFscGhhCisgICAgICAgTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKEdQTCkKKworICAgW2ZpbGVzXQorICAgcGFja2FnZXMgPSBjbHZhdWx0CisKKworT3VyIHByb2plY3Qgd2lsbCBkZXBlbmQgb24gdGhlICprZXlyaW5nKiBwcm9qZWN0LiBMZXQncyBhZGQgaXQgaW4gdGhlCitbbWV0YWRhdGFdIHNlY3Rpb246OgorCisgICBbbWV0YWRhdGFdCisgICAuLi4KKyAgIHJlcXVpcmVzX2Rpc3QgPQorICAgICAgIGtleXJpbmcKKworCitSdW5uaW5nIGNvbW1hbmRzCistLS0tLS0tLS0tLS0tLS0tCisKK1lvdSBjYW4gcnVuIHVzZWZ1bCBjb21tYW5kcyBvbiB5b3VyIHByb2plY3Qgb25jZSB0aGUgc2V0dXAuY2ZnIGZpbGUgaXMgcmVhZHk6CisKKy0gc2Rpc3Q6IGNyZWF0ZXMgYSBzb3VyY2UgZGlzdHJpYnV0aW9uCistIHJlZ2lzdGVyOiByZWdpc3RlciB5b3VyIHByb2plY3QgdG8gUHlQSQorLSB1cGxvYWQ6IHVwbG9hZCB0aGUgZGlzdHJpYnV0aW9uIHRvIFB5UEkKKy0gaW5zdGFsbF9kaXN0OiBpbnN0YWxsIGl0CisKK0FsbCBjb21tYW5kcyBhcmUgcnVuIHVzaW5nIHRoZSBydW4gc2NyaXB0OjoKKworICAgJCBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QKKyAgICQgcHlzZXR1cCBydW4gc2Rpc3QKKyAgICQgcHlzZXR1cCBydW4gdXBsb2FkCisKK0lmIHlvdSB3YW50IHRvIHB1c2ggYSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9mIHlvdXIgcHJvamVjdCB0byBQeVBJLCBkbzo6CisKKyAgICQgcHlzZXR1cCBydW4gc2Rpc3QgcmVnaXN0ZXIgdXBsb2FkCisKKworSW5zdGFsbGluZyB0aGUgcHJvamVjdAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgcHJvamVjdCBjYW4gYmUgaW5zdGFsbGVkIGJ5IG1hbnVhbGx5IHJ1bm5pbmcgdGhlIHBhY2thZ2luZyBpbnN0YWxsIGNvbW1hbmQ6OgorCisgICAkIHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdApkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy91cGxvYWRpbmcucnN0IGIvRG9jL3BhY2thZ2luZy91cGxvYWRpbmcucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI5NzUxOGIKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvcGFja2FnaW5nL3VwbG9hZGluZy5yc3QKQEAgLTAsMCArMSw4MCBAQAorLi4gX3BhY2thZ2luZy1wYWNrYWdlLXVwbG9hZDoKKworKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitVcGxvYWRpbmcgUGFja2FnZXMgdG8gdGhlIFBhY2thZ2UgSW5kZXgKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorCitUaGUgUHl0aG9uIFBhY2thZ2UgSW5kZXggKFB5UEkpIG5vdCBvbmx5IHN0b3JlcyB0aGUgcGFja2FnZSBpbmZvLCBidXQgYWxzbyB0aGUKK3BhY2thZ2UgZGF0YSBpZiB0aGUgYXV0aG9yIG9mIHRoZSBwYWNrYWdlIHdpc2hlcyB0by4gVGhlIHBhY2thZ2luZyBjb21tYW5kCis6Y29tbWFuZDpgdXBsb2FkYCBwdXNoZXMgdGhlIGRpc3RyaWJ1dGlvbiBmaWxlcyB0byBQeVBJLgorCitUaGUgY29tbWFuZCBpcyBpbnZva2VkIGltbWVkaWF0ZWx5IGFmdGVyIGJ1aWxkaW5nIG9uZSBvciBtb3JlIGRpc3RyaWJ1dGlvbgorZmlsZXMuICBGb3IgZXhhbXBsZSwgdGhlIGNvbW1hbmQgOjoKKworICAgIHB5dGhvbiBzZXR1cC5weSBzZGlzdCBiZGlzdF93aW5pbnN0IHVwbG9hZAorCit3aWxsIGNhdXNlIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIGFuZCB0aGUgV2luZG93cyBpbnN0YWxsZXIgdG8gYmUgdXBsb2FkZWQgdG8KK1B5UEkuICBOb3RlIHRoYXQgdGhlc2Ugd2lsbCBiZSB1cGxvYWRlZCBldmVuIGlmIHRoZXkgYXJlIGJ1aWx0IHVzaW5nIGFuIGVhcmxpZXIKK2ludm9jYXRpb24gb2YgOmZpbGU6YHNldHVwLnB5YCwgYnV0IHRoYXQgb25seSBkaXN0cmlidXRpb25zIG5hbWVkIG9uIHRoZSBjb21tYW5kCitsaW5lIGZvciB0aGUgaW52b2NhdGlvbiBpbmNsdWRpbmcgdGhlIDpjb21tYW5kOmB1cGxvYWRgIGNvbW1hbmQgYXJlIHVwbG9hZGVkLgorCitUaGUgOmNvbW1hbmQ6YHVwbG9hZGAgY29tbWFuZCB1c2VzIHRoZSB1c2VybmFtZSwgcGFzc3dvcmQsIGFuZCByZXBvc2l0b3J5IFVSTAorZnJvbSB0aGUgOmZpbGU6YCRIT01FLy5weXBpcmNgIGZpbGUgKHNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1weXBpcmNgIGZvciBtb3JlIG9uIHRoaXMKK2ZpbGUpLiBJZiBhIDpjb21tYW5kOmByZWdpc3RlcmAgY29tbWFuZCB3YXMgcHJldmlvdXNseSBjYWxsZWQgaW4gdGhlIHNhbWUKK2NvbW1hbmQsIGFuZCBpZiB0aGUgcGFzc3dvcmQgd2FzIGVudGVyZWQgaW4gdGhlIHByb21wdCwgOmNvbW1hbmQ6YHVwbG9hZGAgd2lsbAorcmV1c2UgdGhlIGVudGVyZWQgcGFzc3dvcmQuIFRoaXMgaXMgdXNlZnVsIGlmIHlvdSBkbyBub3Qgd2FudCB0byBzdG9yZSBhIGNsZWFyCit0ZXh0IHBhc3N3b3JkIGluIHRoZSA6ZmlsZTpgJEhPTUUvLnB5cGlyY2AgZmlsZS4KKworWW91IGNhbiBzcGVjaWZ5IGFub3RoZXIgUHlQSSBzZXJ2ZXIgd2l0aCB0aGUgOm9wdGlvbjpgLS1yZXBvc2l0b3J5PSp1cmwqYAorb3B0aW9uOjoKKworICAgIHB5dGhvbiBzZXR1cC5weSBzZGlzdCBiZGlzdF93aW5pbnN0IHVwbG9hZCAtciBodHRwOi8vZXhhbXBsZS5jb20vcHlwaQorCitTZWUgc2VjdGlvbiA6cmVmOmBwYWNrYWdpbmctcHlwaXJjYCBmb3IgbW9yZSBvbiBkZWZpbmluZyBzZXZlcmFsIHNlcnZlcnMuCisKK1lvdSBjYW4gdXNlIHRoZSA6b3B0aW9uOmAtLXNpZ25gIG9wdGlvbiB0byB0ZWxsIDpjb21tYW5kOmB1cGxvYWRgIHRvIHNpZ24gZWFjaAordXBsb2FkZWQgZmlsZSB1c2luZyBHUEcgKEdOVSBQcml2YWN5IEd1YXJkKS4gIFRoZSA6cHJvZ3JhbTpgZ3BnYCBwcm9ncmFtIG11c3QKK2JlIGF2YWlsYWJsZSBmb3IgZXhlY3V0aW9uIG9uIHRoZSBzeXN0ZW0gOmVudnZhcjpgUEFUSGAuICBZb3UgY2FuIGFsc28gc3BlY2lmeQord2hpY2gga2V5IHRvIHVzZSBmb3Igc2lnbmluZyB1c2luZyB0aGUgOm9wdGlvbjpgLS1pZGVudGl0eT0qbmFtZSpgIG9wdGlvbi4KKworT3RoZXIgOmNvbW1hbmQ6YHVwbG9hZGAgb3B0aW9ucyBpbmNsdWRlIDpvcHRpb246YC0tcmVwb3NpdG9yeT08dXJsPmAgb3IKKzpvcHRpb246YC0tcmVwb3NpdG9yeT08c2VjdGlvbj5gIHdoZXJlICp1cmwqIGlzIHRoZSB1cmwgb2YgdGhlIHNlcnZlciBhbmQKKypzZWN0aW9uKiB0aGUgbmFtZSBvZiB0aGUgc2VjdGlvbiBpbiA6ZmlsZTpgJEhPTUUvLnB5cGlyY2AsIGFuZAorOm9wdGlvbjpgLS1zaG93LXJlc3BvbnNlYCAod2hpY2ggZGlzcGxheXMgdGhlIGZ1bGwgcmVzcG9uc2UgdGV4dCBmcm9tIHRoZSBQeVBJCitzZXJ2ZXIgZm9yIGhlbHAgaW4gZGVidWdnaW5nIHVwbG9hZCBwcm9ibGVtcykuCisKK1B5UEkgcGFja2FnZSBkaXNwbGF5Cis9PT09PT09PT09PT09PT09PT09PQorCitUaGUgYGBkZXNjcmlwdGlvbmBgIGZpZWxkIHBsYXlzIGEgc3BlY2lhbCByb2xlIGF0IFB5UEkuIEl0IGlzIHVzZWQgYnkKK3RoZSBzZXJ2ZXIgdG8gZGlzcGxheSBhIGhvbWUgcGFnZSBmb3IgdGhlIHJlZ2lzdGVyZWQgcGFja2FnZS4KKworSWYgeW91IHVzZSB0aGUgYHJlU3RydWN0dXJlZFRleHQgPGh0dHA6Ly9kb2N1dGlscy5zb3VyY2Vmb3JnZS5uZXQvcnN0Lmh0bWw+YF8KK3N5bnRheCBmb3IgdGhpcyBmaWVsZCwgUHlQSSB3aWxsIHBhcnNlIGl0IGFuZCBkaXNwbGF5IGFuIEhUTUwgb3V0cHV0IGZvcgordGhlIHBhY2thZ2UgaG9tZSBwYWdlLgorCitUaGUgYGBkZXNjcmlwdGlvbmBgIGZpZWxkIGNhbiBiZSBmaWxsZWQgZnJvbSBhIHRleHQgZmlsZSBsb2NhdGVkIGluIHRoZQorcHJvamVjdDo6CisKKyAgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorCisgICAgZnAgPSBvcGVuKCdSRUFETUUudHh0JykKKyAgICB0cnk6CisgICAgICAgIGRlc2NyaXB0aW9uID0gZnAucmVhZCgpCisgICAgZmluYWxseToKKyAgICAgICAgZnAuY2xvc2UoKQorCisgICAgc2V0dXAobmFtZT0nUGFja2FnaW5nJywKKyAgICAgICAgICBkZXNjcmlwdGlvbj1kZXNjcmlwdGlvbikKKworSW4gdGhhdCBjYXNlLCA6ZmlsZTpgUkVBRE1FLnR4dGAgaXMgYSByZWd1bGFyIHJlU3RydWN0dXJlZFRleHQgdGV4dCBmaWxlIGxvY2F0ZWQKK2luIHRoZSByb290IG9mIHRoZSBwYWNrYWdlIGJlc2lkZXMgOmZpbGU6YHNldHVwLnB5YC4KKworVG8gcHJldmVudCByZWdpc3RlcmluZyBicm9rZW4gcmVTdHJ1Y3R1cmVkVGV4dCBjb250ZW50LCB5b3UgY2FuIHVzZSB0aGUKKzpwcm9ncmFtOmByc3QyaHRtbGAgcHJvZ3JhbSB0aGF0IGlzIHByb3ZpZGVkIGJ5IHRoZSA6bW9kOmBkb2N1dGlsc2AgcGFja2FnZQorYW5kIGNoZWNrIHRoZSBgYGRlc2NyaXB0aW9uYGAgZnJvbSB0aGUgY29tbWFuZCBsaW5lOjoKKworICAgICQgcHl0aG9uIHNldHVwLnB5IC0tZGVzY3JpcHRpb24gfCByc3QyaHRtbC5weSA+IG91dHB1dC5odG1sCisKKzptb2Q6YGRvY3V0aWxzYCB3aWxsIGRpc3BsYXkgYSB3YXJuaW5nIGlmIHRoZXJlJ3Mgc29tZXRoaW5nIHdyb25nIHdpdGggeW91cgorc3ludGF4LgpkaWZmIC0tZ2l0IGEvRG9jL3JlZmVyZW5jZS9kYXRhbW9kZWwucnN0IGIvRG9jL3JlZmVyZW5jZS9kYXRhbW9kZWwucnN0CmluZGV4IDdkY2Q0NTkuLjFmMWE2NjAgMTAwNjQ0Ci0tLSBhL0RvYy9yZWZlcmVuY2UvZGF0YW1vZGVsLnJzdAorKysgYi9Eb2MvcmVmZXJlbmNlL2RhdGFtb2RlbC5yc3QKQEAgLTI3NiwxNiArMjc2LDE2IEBACiAgICAgICAgICAgICBzaW5nbGU6IGludGVnZXIKICAgICAgICAgICAgIHNpbmdsZTogVW5pY29kZQogCi0gICAgICAgICBUaGUgaXRlbXMgb2YgYSBzdHJpbmcgb2JqZWN0IGFyZSBVbmljb2RlIGNvZGUgdW5pdHMuICBBIFVuaWNvZGUgY29kZQotICAgICAgICAgdW5pdCBpcyByZXByZXNlbnRlZCBieSBhIHN0cmluZyBvYmplY3Qgb2Ygb25lIGl0ZW0gYW5kIGNhbiBob2xkIGVpdGhlcgotICAgICAgICAgYSAxNi1iaXQgb3IgMzItYml0IHZhbHVlIHJlcHJlc2VudGluZyBhIFVuaWNvZGUgb3JkaW5hbCAodGhlIG1heGltdW0KLSAgICAgICAgIHZhbHVlIGZvciB0aGUgb3JkaW5hbCBpcyBnaXZlbiBpbiBgYHN5cy5tYXh1bmljb2RlYGAsIGFuZCBkZXBlbmRzIG9uCi0gICAgICAgICBob3cgUHl0aG9uIGlzIGNvbmZpZ3VyZWQgYXQgY29tcGlsZSB0aW1lKS4gIFN1cnJvZ2F0ZSBwYWlycyBtYXkgYmUKLSAgICAgICAgIHByZXNlbnQgaW4gdGhlIFVuaWNvZGUgb2JqZWN0LCBhbmQgd2lsbCBiZSByZXBvcnRlZCBhcyB0d28gc2VwYXJhdGUKLSAgICAgICAgIGl0ZW1zLiAgVGhlIGJ1aWx0LWluIGZ1bmN0aW9ucyA6ZnVuYzpgY2hyYCBhbmQgOmZ1bmM6YG9yZGAgY29udmVydAotICAgICAgICAgYmV0d2VlbiBjb2RlIHVuaXRzIGFuZCBub25uZWdhdGl2ZSBpbnRlZ2VycyByZXByZXNlbnRpbmcgdGhlIFVuaWNvZGUKLSAgICAgICAgIG9yZGluYWxzIGFzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgU3RhbmRhcmQgMy4wLiBDb252ZXJzaW9uIGZyb20gYW5kIHRvCi0gICAgICAgICBvdGhlciBlbmNvZGluZ3MgYXJlIHBvc3NpYmxlIHRocm91Z2ggdGhlIHN0cmluZyBtZXRob2QgOm1ldGg6YGVuY29kZWAuCisgICAgICAgICBBIHN0cmluZyBpcyBhIHNlcXVlbmNlIG9mIHZhbHVlcyB0aGF0IHJlcHJlc2VudCBVbmljb2RlIGNvZGVwb2ludHMuCisgICAgICAgICBBbGwgdGhlIGNvZGVwb2ludHMgaW4gcmFuZ2UgYGBVKzAwMDAgLSBVKzEwRkZGRmBgIGNhbiBiZSByZXByZXNlbnRlZAorICAgICAgICAgaW4gYSBzdHJpbmcuICBQeXRob24gZG9lc24ndCBoYXZlIGEgOmM6dHlwZTpgY2hyYCB0eXBlLCBhbmQKKyAgICAgICAgIGV2ZXJ5IGNoYXJhY3RlciBpbiB0aGUgc3RyaW5nIGlzIHJlcHJlc2VudGVkIGFzIGEgc3RyaW5nIG9iamVjdAorICAgICAgICAgd2l0aCBsZW5ndGggYGAxYGAuICBUaGUgYnVpbHQtaW4gZnVuY3Rpb24gOmZ1bmM6YG9yZGAgY29udmVydHMgYQorICAgICAgICAgY2hhcmFjdGVyIHRvIGl0cyBjb2RlcG9pbnQgKGFzIGFuIGludGVnZXIpOyA6ZnVuYzpgY2hyYCBjb252ZXJ0cworICAgICAgICAgYW4gaW50ZWdlciBpbiByYW5nZSBgYDAgLSAxMEZGRkZgYCB0byB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIuCisgICAgICAgICA6bWV0aDpgc3RyLmVuY29kZWAgY2FuIGJlIHVzZWQgdG8gY29udmVydCBhIDpjbGFzczpgc3RyYCB0bworICAgICAgICAgOmNsYXNzOmBieXRlc2AgdXNpbmcgdGhlIGdpdmVuIGVuY29kaW5nLCBhbmQgOm1ldGg6YGJ5dGVzLmRlY29kZWAgY2FuCisgICAgICAgICBiZSB1c2VkIHRvIGFjaGlldmUgdGhlIG9wcG9zaXRlLgogCiAgICAgICBUdXBsZXMKICAgICAgICAgIC4uIGluZGV4OjoKQEAgLTQ0OCw2ICs0NDgsMTEgQEAKICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rCiAgICAgICB8IDphdHRyOmBfX25hbWVfX2AgICAgICAgIHwgVGhlIGZ1bmN0aW9uJ3MgbmFtZSAgICAgICAgICAgfCBXcml0YWJsZSAgfAogICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSsKKyAgICAgIHwgOmF0dHI6YF9fcXVhbG5hbWVfX2AgICAgfCBUaGUgZnVuY3Rpb24ncyAgICAgICAgICAgICAgICB8IFdyaXRhYmxlICB8CisgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgOnRlcm06YHF1YWxpZmllZCBuYW1lYCAgICAgICAgfCAgICAgICAgICAgfAorICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgIHwKKyAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMgICAgICAgICB8ICAgICAgICAgICB8CisgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKwogICAgICAgfCA6YXR0cjpgX19tb2R1bGVfX2AgICAgICB8IFRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgdGhlICAgIHwgV3JpdGFibGUgIHwKICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgfCBmdW5jdGlvbiB3YXMgZGVmaW5lZCBpbiwgb3IgICB8ICAgICAgICAgICB8CiAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBOb25lYGAgaWYgdW5hdmFpbGFibGUuICAgICAgfCAgICAgICAgICAgfApAQCAtMTI3Miw3ICsxMjc3LDI3IEBACiAgICBpbmhlcml0YW5jZSBvZiA6bWV0aDpgX19oYXNoX19gIHdpbGwgYmUgYmxvY2tlZCwganVzdCBhcyBpZiA6YXR0cjpgX19oYXNoX19gCiAgICBoYWQgYmVlbiBleHBsaWNpdGx5IHNldCB0byA6Y29uc3Q6YE5vbmVgLgogCi0gICBTZWUgYWxzbyB0aGUgOm9wdGlvbjpgLVJgIGNvbW1hbmQtbGluZSBvcHRpb24uCisKKyAgIC4uIG5vdGU6OgorCisgICAgICBOb3RlIGJ5IGRlZmF1bHQgdGhlIDptZXRoOmBfX2hhc2hfX2AgdmFsdWVzIG9mIHN0ciwgYnl0ZXMgYW5kIGRhdGV0aW1lCisgICAgICBvYmplY3RzIGFyZSAic2FsdGVkIiB3aXRoIGFuIHVucHJlZGljdGFibGUgcmFuZG9tIHZhbHVlLiAgQWx0aG91Z2ggdGhleQorICAgICAgcmVtYWluIGNvbnN0YW50IHdpdGhpbiBhbiBpbmRpdmlkdWFsIFB5dGhvbiBwcm9jZXNzLCB0aGV5IGFyZSBub3QKKyAgICAgIHByZWRpY3RhYmxlIGJldHdlZW4gcmVwZWF0ZWQgaW52b2NhdGlvbnMgb2YgUHl0aG9uLgorCisgICAgICBUaGlzIGlzIGludGVuZGVkIHRvIHByb3ZpZGUgcHJvdGVjdGlvbiBhZ2FpbnN0IGEgZGVuaWFsLW9mLXNlcnZpY2UgY2F1c2VkCisgICAgICBieSBjYXJlZnVsbHktY2hvc2VuIGlucHV0cyB0aGF0IGV4cGxvaXQgdGhlIHdvcnN0IGNhc2UgcGVyZm9ybWFuY2Ugb2YgYQorICAgICAgZGljdCBpbnNlcnRpb24sIE8obl4yKSBjb21wbGV4aXR5LiAgU2VlCisgICAgICBodHRwOi8vd3d3Lm9jZXJ0Lm9yZy9hZHZpc29yaWVzL29jZXJ0LTIwMTEtMDAzLmh0bWwgZm9yIGRldGFpbHMuCisKKyAgICAgIENoYW5naW5nIGhhc2ggdmFsdWVzIGFmZmVjdHMgdGhlIG9yZGVyIGluIHdoaWNoIGtleXMgYXJlIHJldHJpZXZlZCBmcm9tIGEKKyAgICAgIGRpY3QuICBOb3RlIFB5dGhvbiBoYXMgbmV2ZXIgbWFkZSBndWFyYW50ZWVzIGFib3V0IHRoaXMgb3JkZXJpbmcgKGFuZCBpdAorICAgICAgdHlwaWNhbGx5IHZhcmllcyBiZXR3ZWVuIDMyLWJpdCBhbmQgNjQtYml0IGJ1aWxkcykuCisKKyAgICAgIFNlZSBhbHNvIDplbnZ2YXI6YFBZVEhPTkhBU0hTRUVEYC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEhhc2ggcmFuZG9taXphdGlvbiBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuCiAKIAogLi4gbWV0aG9kOjogb2JqZWN0Ll9fYm9vbF9fKHNlbGYpCkBAIC0xMzUzLDcgKzEzNzgsOCBAQAogCiAuLiBtZXRob2Q6OiBvYmplY3QuX19kaXJfXyhzZWxmKQogCi0gICBDYWxsZWQgd2hlbiA6ZnVuYzpgZGlyYCBpcyBjYWxsZWQgb24gdGhlIG9iamVjdC4gIEEgbGlzdCBtdXN0IGJlIHJldHVybmVkLgorICAgQ2FsbGVkIHdoZW4gOmZ1bmM6YGRpcmAgaXMgY2FsbGVkIG9uIHRoZSBvYmplY3QuIEEgc2VxdWVuY2UgbXVzdCBiZQorICAgcmV0dXJuZWQuIDpmdW5jOmBkaXJgIGNvbnZlcnRzIHRoZSByZXR1cm5lZCBzZXF1ZW5jZSB0byBhIGxpc3QgYW5kIHNvcnRzIGl0LgogCiAKIC4uIF9kZXNjcmlwdG9yczoKZGlmZiAtLWdpdCBhL0RvYy9yZWZlcmVuY2UvZXhwcmVzc2lvbnMucnN0IGIvRG9jL3JlZmVyZW5jZS9leHByZXNzaW9ucy5yc3QKaW5kZXggNWI2ODQ2OC4uOTYyNGI2MCAxMDA2NDQKLS0tIGEvRG9jL3JlZmVyZW5jZS9leHByZXNzaW9ucy5yc3QKKysrIGIvRG9jL3JlZmVyZW5jZS9leHByZXNzaW9ucy5yc3QKQEAgLTMxOCw3ICszMTgsNyBAQAogCiAuLiBwcm9kdWN0aW9ubGlzdDo6CiAgICB5aWVsZF9hdG9tOiAiKCIgYHlpZWxkX2V4cHJlc3Npb25gICIpIgotICAgeWllbGRfZXhwcmVzc2lvbjogInlpZWxkIiBbYGV4cHJlc3Npb25fbGlzdGBdCisgICB5aWVsZF9leHByZXNzaW9uOiAieWllbGQiIFtgZXhwcmVzc2lvbl9saXN0YCB8ICJmcm9tIiBgZXhwcmVzc2lvbmBdCiAKIFRoZSA6a2V5d29yZDpgeWllbGRgIGV4cHJlc3Npb24gaXMgb25seSB1c2VkIHdoZW4gZGVmaW5pbmcgYSBnZW5lcmF0b3IgZnVuY3Rpb24sCiBhbmQgY2FuIG9ubHkgYmUgdXNlZCBpbiB0aGUgYm9keSBvZiBhIGZ1bmN0aW9uIGRlZmluaXRpb24uICBVc2luZyBhCkBAIC0zMzYsNyArMzM2LDEwIEBACiB0aGUgZ2VuZXJhdG9yJ3MgbWV0aG9kcywgdGhlIGZ1bmN0aW9uIGNhbiBwcm9jZWVkIGV4YWN0bHkgYXMgaWYgdGhlCiA6a2V5d29yZDpgeWllbGRgIGV4cHJlc3Npb24gd2FzIGp1c3QgYW5vdGhlciBleHRlcm5hbCBjYWxsLiAgVGhlIHZhbHVlIG9mIHRoZQogOmtleXdvcmQ6YHlpZWxkYCBleHByZXNzaW9uIGFmdGVyIHJlc3VtaW5nIGRlcGVuZHMgb24gdGhlIG1ldGhvZCB3aGljaCByZXN1bWVkCi10aGUgZXhlY3V0aW9uLgordGhlIGV4ZWN1dGlvbi4gSWYgOm1ldGg6YF9fbmV4dF9fYCBpcyB1c2VkICh0eXBpY2FsbHkgdmlhIGVpdGhlciBhCis6a2V5d29yZDpgZm9yYCBvciB0aGUgOmZ1bmM6YG5leHRgIGJ1aWx0aW4pIHRoZW4gdGhlIHJlc3VsdCBpcyA6Y29uc3Q6YE5vbmVgLAorb3RoZXJ3aXNlLCBpZiA6bWV0aDpgc2VuZGAgaXMgdXNlZCwgdGhlbiB0aGUgcmVzdWx0IHdpbGwgYmUgdGhlIHZhbHVlIHBhc3NlZAoraW4gdG8gdGhhdCBtZXRob2QuCiAKIC4uIGluZGV4Ojogc2luZ2xlOiBjb3JvdXRpbmUKIApAQCAtMzQ2LDEyICszNDksMzIgQEAKIHdoZXJlIHNob3VsZCB0aGUgZXhlY3V0aW9uIGNvbnRpbnVlIGFmdGVyIGl0IHlpZWxkczsgdGhlIGNvbnRyb2wgaXMgYWx3YXlzCiB0cmFuc2ZlcnJlZCB0byB0aGUgZ2VuZXJhdG9yJ3MgY2FsbGVyLgogCi1UaGUgOmtleXdvcmQ6YHlpZWxkYCBzdGF0ZW1lbnQgaXMgYWxsb3dlZCBpbiB0aGUgOmtleXdvcmQ6YHRyeWAgY2xhdXNlIG9mIGEKKzprZXl3b3JkOmB5aWVsZGAgZXhwcmVzc2lvbnMgYXJlIGFsbG93ZWQgaW4gdGhlIDprZXl3b3JkOmB0cnlgIGNsYXVzZSBvZiBhCiA6a2V5d29yZDpgdHJ5YCAuLi4gIDprZXl3b3JkOmBmaW5hbGx5YCBjb25zdHJ1Y3QuICBJZiB0aGUgZ2VuZXJhdG9yIGlzIG5vdAogcmVzdW1lZCBiZWZvcmUgaXQgaXMgZmluYWxpemVkIChieSByZWFjaGluZyBhIHplcm8gcmVmZXJlbmNlIGNvdW50IG9yIGJ5IGJlaW5nCiBnYXJiYWdlIGNvbGxlY3RlZCksIHRoZSBnZW5lcmF0b3ItaXRlcmF0b3IncyA6bWV0aDpgY2xvc2VgIG1ldGhvZCB3aWxsIGJlCiBjYWxsZWQsIGFsbG93aW5nIGFueSBwZW5kaW5nIDprZXl3b3JkOmBmaW5hbGx5YCBjbGF1c2VzIHRvIGV4ZWN1dGUuCiAKK1doZW4gYGB5aWVsZCBmcm9tIDxleHByPmBgIGlzIHVzZWQsIGl0IHRyZWF0cyB0aGUgc3VwcGxpZWQgZXhwcmVzc2lvbiBhcworYSBzdWJpdGVyYXRvci4gQWxsIHZhbHVlcyBwcm9kdWNlZCBieSB0aGF0IHN1Yml0ZXJhdG9yIGFyZSBwYXNzZWQgZGlyZWN0bHkKK3RvIHRoZSBjYWxsZXIgb2YgdGhlIGN1cnJlbnQgZ2VuZXJhdG9yJ3MgbWV0aG9kcy4gQW55IHZhbHVlcyBwYXNzZWQgaW4gd2l0aAorOm1ldGg6YHNlbmRgIGFuZCBhbnkgZXhjZXB0aW9ucyBwYXNzZWQgaW4gd2l0aCA6bWV0aDpgdGhyb3dgIGFyZSBwYXNzZWQgdG8KK3RoZSB1bmRlcmx5aW5nIGl0ZXJhdG9yIGlmIGl0IGhhcyB0aGUgYXBwcm9wcmlhdGUgbWV0aG9kcy4gSWYgdGhpcyBpcyBub3QgdGhlCitjYXNlLCB0aGVuIDptZXRoOmBzZW5kYCB3aWxsIHJhaXNlIDpleGM6YEF0dHJpYnV0ZUVycm9yYCBvciA6ZXhjOmBUeXBlRXJyb3JgLAord2hpbGUgOm1ldGg6YHRocm93YCB3aWxsIGp1c3QgcmFpc2UgdGhlIHBhc3NlZCBpbiBleGNlcHRpb24gaW1tZWRpYXRlbHkuCisKK1doZW4gdGhlIHVuZGVybHlpbmcgaXRlcmF0b3IgaXMgY29tcGxldGUsIHRoZSA6YXR0cjpgflN0b3BJdGVyYXRpb24udmFsdWVgCithdHRyaWJ1dGUgb2YgdGhlIHJhaXNlZCA6ZXhjOmBTdG9wSXRlcmF0aW9uYCBpbnN0YW5jZSBiZWNvbWVzIHRoZSB2YWx1ZSBvZgordGhlIHlpZWxkIGV4cHJlc3Npb24uIEl0IGNhbiBiZSBlaXRoZXIgc2V0IGV4cGxpY2l0bHkgd2hlbiByYWlzaW5nCis6ZXhjOmBTdG9wSXRlcmF0aW9uYCwgb3IgYXV0b21hdGljYWxseSB3aGVuIHRoZSBzdWItaXRlcmF0b3IgaXMgYSBnZW5lcmF0b3IKKyhieSByZXR1cm5pbmcgYSB2YWx1ZSBmcm9tIHRoZSBzdWItZ2VuZXJhdG9yKS4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkIGBgeWllbGQgZnJvbSA8ZXhwcj5gYCB0byBkZWxlZ2F0ZSBjb250cm9sIGZsb3cgdG8gYSBzdWJpdGVyYXRvcgorCitUaGUgcGFyZW50aGVzZXMgY2FuIGJlIG9taXR0ZWQgd2hlbiB0aGUgOmtleXdvcmQ6YHlpZWxkYCBleHByZXNzaW9uIGlzIHRoZQorc29sZSBleHByZXNzaW9uIG9uIHRoZSByaWdodCBoYW5kIHNpZGUgb2YgYW4gYXNzaWdubWVudCBzdGF0ZW1lbnQuCisKIC4uIGluZGV4Ojogb2JqZWN0OiBnZW5lcmF0b3IKIAogVGhlIGZvbGxvd2luZyBnZW5lcmF0b3IncyBtZXRob2RzIGNhbiBiZSB1c2VkIHRvIGNvbnRyb2wgdGhlIGV4ZWN1dGlvbiBvZiBhCkBAIC00NDQsNiArNDY3LDEwIEBACiAgICAgICBUaGUgcHJvcG9zYWwgdG8gZW5oYW5jZSB0aGUgQVBJIGFuZCBzeW50YXggb2YgZ2VuZXJhdG9ycywgbWFraW5nIHRoZW0KICAgICAgIHVzYWJsZSBhcyBzaW1wbGUgY29yb3V0aW5lcy4KIAorICAgOnBlcDpgMDM4MGAgLSBTeW50YXggZm9yIERlbGVnYXRpbmcgdG8gYSBTdWJnZW5lcmF0b3IKKyAgICAgIFRoZSBwcm9wb3NhbCB0byBpbnRyb2R1Y2UgdGhlIDp0b2tlbjpgeWllbGRfZnJvbWAgc3ludGF4LCBtYWtpbmcgZGVsZWdhdGlvbgorICAgICAgdG8gc3ViLWdlbmVyYXRvcnMgZWFzeS4KKwogCiAuLiBfcHJpbWFyaWVzOgogCmRpZmYgLS1naXQgYS9Eb2MvcmVmZXJlbmNlL2xleGljYWxfYW5hbHlzaXMucnN0IGIvRG9jL3JlZmVyZW5jZS9sZXhpY2FsX2FuYWx5c2lzLnJzdAppbmRleCA0YjQ5NzM4Li5jOTRhNDdmIDEwMDY0NAotLS0gYS9Eb2MvcmVmZXJlbmNlL2xleGljYWxfYW5hbHlzaXMucnN0CisrKyBiL0RvYy9yZWZlcmVuY2UvbGV4aWNhbF9hbmFseXNpcy5yc3QKQEAgLTQwMSw3ICs0MDEsNyBAQAogCiAuLiBwcm9kdWN0aW9ubGlzdDo6CiAgICBzdHJpbmdsaXRlcmFsOiBbYHN0cmluZ3ByZWZpeGBdKGBzaG9ydHN0cmluZ2AgfCBgbG9uZ3N0cmluZ2ApCi0gICBzdHJpbmdwcmVmaXg6ICJyIiB8ICJSIgorICAgc3RyaW5ncHJlZml4OiAiciIgfCAidSIgfCAidXIiIHwgIlIiIHwgIlUiIHwgIlVSIiB8ICJVciIgfCAidVIiCiAgICBzaG9ydHN0cmluZzogIiciIGBzaG9ydHN0cmluZ2l0ZW1gKiAiJyIgfCAnIicgYHNob3J0c3RyaW5naXRlbWAqICciJwogICAgbG9uZ3N0cmluZzogIicnJyIgYGxvbmdzdHJpbmdpdGVtYCogIicnJyIgfCAnIiIiJyBgbG9uZ3N0cmluZ2l0ZW1gKiAnIiIiJwogICAgc2hvcnRzdHJpbmdpdGVtOiBgc2hvcnRzdHJpbmdjaGFyYCB8IGBzdHJpbmdlc2NhcGVzZXFgCkBAIC00MTIsNyArNDEyLDcgQEAKIAogLi4gcHJvZHVjdGlvbmxpc3Q6OgogICAgYnl0ZXNsaXRlcmFsOiBgYnl0ZXNwcmVmaXhgKGBzaG9ydGJ5dGVzYCB8IGBsb25nYnl0ZXNgKQotICAgYnl0ZXNwcmVmaXg6ICJiIiB8ICJCIiB8ICJiciIgfCAiQnIiIHwgImJSIiB8ICJCUiIKKyAgIGJ5dGVzcHJlZml4OiAiYiIgfCAiQiIgfCAiYnIiIHwgIkJyIiB8ICJiUiIgfCAiQlIiIHwgInJiIiB8ICJyQiIgfCAiUmIiIHwgIlJCIgogICAgc2hvcnRieXRlczogIiciIGBzaG9ydGJ5dGVzaXRlbWAqICInIiB8ICciJyBgc2hvcnRieXRlc2l0ZW1gKiAnIicKICAgIGxvbmdieXRlczogIicnJyIgYGxvbmdieXRlc2l0ZW1gKiAiJycnIiB8ICciIiInIGBsb25nYnl0ZXNpdGVtYCogJyIiIicKICAgIHNob3J0Ynl0ZXNpdGVtOiBgc2hvcnRieXRlc2NoYXJgIHwgYGJ5dGVzZXNjYXBlc2VxYApAQCAtNDQxLDExICs0NDEsMjMgQEAKIG1heSBvbmx5IGNvbnRhaW4gQVNDSUkgY2hhcmFjdGVyczsgYnl0ZXMgd2l0aCBhIG51bWVyaWMgdmFsdWUgb2YgMTI4IG9yIGdyZWF0ZXIKIG11c3QgYmUgZXhwcmVzc2VkIHdpdGggZXNjYXBlcy4KIAorQXMgb2YgUHl0aG9uIDMuMyBpdCBpcyBwb3NzaWJsZSBhZ2FpbiB0byBwcmVmaXggdW5pY29kZSBzdHJpbmdzIHdpdGggYQorYGB1YGAgcHJlZml4IHRvIHNpbXBsaWZ5IG1haW50ZW5hbmNlIG9mIGR1YWwgMi54IGFuZCAzLnggY29kZWJhc2VzLgorCiBCb3RoIHN0cmluZyBhbmQgYnl0ZXMgbGl0ZXJhbHMgbWF5IG9wdGlvbmFsbHkgYmUgcHJlZml4ZWQgd2l0aCBhIGxldHRlciBgYCdyJ2BgCiBvciBgYCdSJ2BgOyBzdWNoIHN0cmluZ3MgYXJlIGNhbGxlZCA6ZGZuOmByYXcgc3RyaW5nc2AgYW5kIHRyZWF0IGJhY2tzbGFzaGVzIGFzCiBsaXRlcmFsIGNoYXJhY3RlcnMuICBBcyBhIHJlc3VsdCwgaW4gc3RyaW5nIGxpdGVyYWxzLCBgYCdcVSdgYCBhbmQgYGAnXHUnYGAKIGVzY2FwZXMgaW4gcmF3IHN0cmluZ3MgYXJlIG5vdCB0cmVhdGVkIHNwZWNpYWxseS4KIAorICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisgICAgICBUaGUgYGAncmInYGAgcHJlZml4IG9mIHJhdyBieXRlcyBsaXRlcmFscyBoYXMgYmVlbiBhZGRlZCBhcyBhIHN5bm9ueW0KKyAgICAgIG9mIGBgJ2JyJ2BgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgICAgIFN1cHBvcnQgZm9yIHRoZSB1bmljb2RlIGxlZ2FjeSBsaXRlcmFsIChgYHUndmFsdWUnYGApIGFuZCBvdGhlcgorICAgICAgdmVyc2lvbnMgd2VyZSByZWludHJvZHVjZWQgdG8gc2ltcGxpZnkgdGhlIG1haW50ZW5hbmNlIG9mIGR1YWwKKyAgICAgIFB5dGhvbiAyLnggYW5kIDMueCBjb2RlYmFzZXMuICBTZWUgOnBlcDpgNDE0YCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKwogSW4gdHJpcGxlLXF1b3RlZCBzdHJpbmdzLCB1bmVzY2FwZWQgbmV3bGluZXMgYW5kIHF1b3RlcyBhcmUgYWxsb3dlZCAoYW5kIGFyZQogcmV0YWluZWQpLCBleGNlcHQgdGhhdCB0aHJlZSB1bmVzY2FwZWQgcXVvdGVzIGluIGEgcm93IHRlcm1pbmF0ZSB0aGUgc3RyaW5nLiAgKEEKICJxdW90ZSIgaXMgdGhlIGNoYXJhY3RlciB1c2VkIHRvIG9wZW4gdGhlIHN0cmluZywgaS5lLiBlaXRoZXIgYGAnYGAgb3IgYGAiYGAuKQpAQCAtNDkyLDEzICs1MDQsMTMgQEAKICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKIHwgRXNjYXBlIFNlcXVlbmNlIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzIHwKICs9PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKLXwgYGBcTntuYW1lfWBgICAgIHwgQ2hhcmFjdGVyIG5hbWVkICpuYW1lKiBpbiB0aGUgICB8ICAgICAgIHwKK3wgYGBcTntuYW1lfWBgICAgIHwgQ2hhcmFjdGVyIG5hbWVkICpuYW1lKiBpbiB0aGUgICB8IFwoNCkgIHwKIHwgICAgICAgICAgICAgICAgIHwgVW5pY29kZSBkYXRhYmFzZSAgICAgICAgICAgICAgICB8ICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGBcdXh4eHhgYCAgICAgIHwgQ2hhcmFjdGVyIHdpdGggMTYtYml0IGhleCB2YWx1ZSB8IFwoNCkgIHwKK3wgYGBcdXh4eHhgYCAgICAgIHwgQ2hhcmFjdGVyIHdpdGggMTYtYml0IGhleCB2YWx1ZSB8IFwoNSkgIHwKIHwgICAgICAgICAgICAgICAgIHwgKnh4eHgqICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGBcVXh4eHh4eHh4YGAgIHwgQ2hhcmFjdGVyIHdpdGggMzItYml0IGhleCB2YWx1ZSB8IFwoNSkgIHwKK3wgYGBcVXh4eHh4eHh4YGAgIHwgQ2hhcmFjdGVyIHdpdGggMzItYml0IGhleCB2YWx1ZSB8IFwoNikgIHwKIHwgICAgICAgICAgICAgICAgIHwgKnh4eHh4eHh4KiAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKIApAQCAtNTE2LDEwICs1MjgsMTQgQEAKICAgIHdpdGggdGhlIGdpdmVuIHZhbHVlLgogCiAoNCkKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBTdXBwb3J0IGZvciBuYW1lIGFsaWFzZXMgWyNdXyBoYXMgYmVlbiBhZGRlZC4KKworKDUpCiAgICBJbmRpdmlkdWFsIGNvZGUgdW5pdHMgd2hpY2ggZm9ybSBwYXJ0cyBvZiBhIHN1cnJvZ2F0ZSBwYWlyIGNhbiBiZSBlbmNvZGVkIHVzaW5nCiAgICB0aGlzIGVzY2FwZSBzZXF1ZW5jZS4gIEV4YWN0bHkgZm91ciBoZXggZGlnaXRzIGFyZSByZXF1aXJlZC4KIAotKDUpCisoNikKICAgIEFueSBVbmljb2RlIGNoYXJhY3RlciBjYW4gYmUgZW5jb2RlZCB0aGlzIHdheSwgYnV0IGNoYXJhY3RlcnMgb3V0c2lkZSB0aGUgQmFzaWMKICAgIE11bHRpbGluZ3VhbCBQbGFuZSAoQk1QKSB3aWxsIGJlIGVuY29kZWQgdXNpbmcgYSBzdXJyb2dhdGUgcGFpciBpZiBQeXRob24gaXMKICAgIGNvbXBpbGVkIHRvIHVzZSAxNi1iaXQgY29kZSB1bml0cyAodGhlIGRlZmF1bHQpLiAgRXhhY3RseSBlaWdodCBoZXggZGlnaXRzCkBAIC03MDYsMyArNzIyLDggQEAKIG9jY3VycmVuY2Ugb3V0c2lkZSBzdHJpbmcgbGl0ZXJhbHMgYW5kIGNvbW1lbnRzIGlzIGFuIHVuY29uZGl0aW9uYWwgZXJyb3I6OgogCiAgICAkICAgICAgID8gICAgICAgYAorCisKKy4uIHJ1YnJpYzo6IEZvb3Rub3RlcworCisuLiBbI10gaHR0cDovL3d3dy51bmljb2RlLm9yZy9QdWJsaWMvNi4xLjAvdWNkL05hbWVBbGlhc2VzLnR4dApkaWZmIC0tZ2l0IGEvRG9jL3JlZmVyZW5jZS9zaW1wbGVfc3RtdHMucnN0IGIvRG9jL3JlZmVyZW5jZS9zaW1wbGVfc3RtdHMucnN0CmluZGV4IDM0ZWQ5MmYuLjNiZDA4OTQgMTAwNjQ0Ci0tLSBhL0RvYy9yZWZlcmVuY2Uvc2ltcGxlX3N0bXRzLnJzdAorKysgYi9Eb2MvcmVmZXJlbmNlL3NpbXBsZV9zdG10cy5yc3QKQEAgLTQyNSwxMCArNDI1LDEwIEBACiA6a2V5d29yZDpgZmluYWxseWAgY2xhdXNlLCB0aGF0IDprZXl3b3JkOmBmaW5hbGx5YCBjbGF1c2UgaXMgZXhlY3V0ZWQgYmVmb3JlCiByZWFsbHkgbGVhdmluZyB0aGUgZnVuY3Rpb24uCiAKLUluIGEgZ2VuZXJhdG9yIGZ1bmN0aW9uLCB0aGUgOmtleXdvcmQ6YHJldHVybmAgc3RhdGVtZW50IGlzIG5vdCBhbGxvd2VkIHRvCi1pbmNsdWRlIGFuIDp0b2tlbjpgZXhwcmVzc2lvbl9saXN0YC4gIEluIHRoYXQgY29udGV4dCwgYSBiYXJlIDprZXl3b3JkOmByZXR1cm5gCi1pbmRpY2F0ZXMgdGhhdCB0aGUgZ2VuZXJhdG9yIGlzIGRvbmUgYW5kIHdpbGwgY2F1c2UgOmV4YzpgU3RvcEl0ZXJhdGlvbmAgdG8gYmUKLXJhaXNlZC4KK0luIGEgZ2VuZXJhdG9yIGZ1bmN0aW9uLCB0aGUgOmtleXdvcmQ6YHJldHVybmAgc3RhdGVtZW50IGluZGljYXRlcyB0aGF0IHRoZQorZ2VuZXJhdG9yIGlzIGRvbmUgYW5kIHdpbGwgY2F1c2UgOmV4YzpgU3RvcEl0ZXJhdGlvbmAgdG8gYmUgcmFpc2VkLiBUaGUgcmV0dXJuZWQKK3ZhbHVlIChpZiBhbnkpIGlzIHVzZWQgYXMgYW4gYXJndW1lbnQgdG8gY29uc3RydWN0IDpleGM6YFN0b3BJdGVyYXRpb25gIGFuZAorYmVjb21lcyB0aGUgOmF0dHI6YFN0b3BJdGVyYXRpb24udmFsdWVgIGF0dHJpYnV0ZS4KIAogCiAuLiBfeWllbGQ6CkBAIC00NTAsNiArNDUwLDcgQEAKIGFuZCBpcyBvbmx5IHVzZWQgaW4gdGhlIGJvZHkgb2YgdGhlIGdlbmVyYXRvciBmdW5jdGlvbi4gVXNpbmcgYSA6a2V5d29yZDpgeWllbGRgCiBzdGF0ZW1lbnQgaW4gYSBmdW5jdGlvbiBkZWZpbml0aW9uIGlzIHN1ZmZpY2llbnQgdG8gY2F1c2UgdGhhdCBkZWZpbml0aW9uIHRvCiBjcmVhdGUgYSBnZW5lcmF0b3IgZnVuY3Rpb24gaW5zdGVhZCBvZiBhIG5vcm1hbCBmdW5jdGlvbi4KKwogV2hlbiBhIGdlbmVyYXRvciBmdW5jdGlvbiBpcyBjYWxsZWQsIGl0IHJldHVybnMgYW4gaXRlcmF0b3Iga25vd24gYXMgYSBnZW5lcmF0b3IKIGl0ZXJhdG9yLCBvciBtb3JlIGNvbW1vbmx5LCBhIGdlbmVyYXRvci4gIFRoZSBib2R5IG9mIHRoZSBnZW5lcmF0b3IgZnVuY3Rpb24gaXMKIGV4ZWN1dGVkIGJ5IGNhbGxpbmcgdGhlIDpmdW5jOmBuZXh0YCBmdW5jdGlvbiBvbiB0aGUgZ2VuZXJhdG9yIHJlcGVhdGVkbHkgdW50aWwKQEAgLTQ2OSwxNCArNDcwLDI4IEBACiBnYXJiYWdlIGNvbGxlY3RlZCksIHRoZSBnZW5lcmF0b3ItaXRlcmF0b3IncyA6bWV0aDpgY2xvc2VgIG1ldGhvZCB3aWxsIGJlCiBjYWxsZWQsIGFsbG93aW5nIGFueSBwZW5kaW5nIDprZXl3b3JkOmBmaW5hbGx5YCBjbGF1c2VzIHRvIGV4ZWN1dGUuCiAKK1doZW4gYGB5aWVsZCBmcm9tIDxleHByPmBgIGlzIHVzZWQsIGl0IHRyZWF0cyB0aGUgc3VwcGxpZWQgZXhwcmVzc2lvbiBhcworYSBzdWJpdGVyYXRvciwgcHJvZHVjaW5nIHZhbHVlcyBmcm9tIGl0IHVudGlsIHRoZSB1bmRlcmx5aW5nIGl0ZXJhdG9yIGlzCitleGhhdXN0ZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBZGRlZCBgYHlpZWxkIGZyb20gPGV4cHI+YGAgdG8gZGVsZWdhdGUgY29udHJvbCBmbG93IHRvIGEgc3ViaXRlcmF0b3IKKworRm9yIGZ1bGwgZGV0YWlscyBvZiA6a2V5d29yZDpgeWllbGRgIHNlbWFudGljcywgcmVmZXIgdG8gdGhlIDpyZWY6YHlpZWxkZXhwcmAKK3NlY3Rpb24uCisKIC4uIHNlZWFsc286OgogCiAgICA6cGVwOmAwMjU1YCAtIFNpbXBsZSBHZW5lcmF0b3JzCiAgICAgICBUaGUgcHJvcG9zYWwgZm9yIGFkZGluZyBnZW5lcmF0b3JzIGFuZCB0aGUgOmtleXdvcmQ6YHlpZWxkYCBzdGF0ZW1lbnQgdG8gUHl0aG9uLgogCiAgICA6cGVwOmAwMzQyYCAtIENvcm91dGluZXMgdmlhIEVuaGFuY2VkIEdlbmVyYXRvcnMKLSAgICAgIFRoZSBwcm9wb3NhbCB0aGF0LCBhbW9uZyBvdGhlciBnZW5lcmF0b3IgZW5oYW5jZW1lbnRzLCBwcm9wb3NlZCBhbGxvd2luZwotICAgICAgOmtleXdvcmQ6YHlpZWxkYCB0byBhcHBlYXIgaW5zaWRlIGEgOmtleXdvcmQ6YHRyeWAgLi4uIDprZXl3b3JkOmBmaW5hbGx5YCBibG9jay4KKyAgICAgIFRoZSBwcm9wb3NhbCB0byBlbmhhbmNlIHRoZSBBUEkgYW5kIHN5bnRheCBvZiBnZW5lcmF0b3JzLCBtYWtpbmcgdGhlbQorICAgICAgdXNhYmxlIGFzIHNpbXBsZSBjb3JvdXRpbmVzLgorCisgICA6cGVwOmAwMzgwYCAtIFN5bnRheCBmb3IgRGVsZWdhdGluZyB0byBhIFN1YmdlbmVyYXRvcgorICAgICAgVGhlIHByb3Bvc2FsIHRvIGludHJvZHVjZSB0aGUgOnRva2VuOmB5aWVsZF9mcm9tYCBzeW50YXgsIG1ha2luZyBkZWxlZ2F0aW9uCisgICAgICB0byBzdWItZ2VuZXJhdG9ycyBlYXN5LgogCiAKIC4uIF9yYWlzZToKZGlmZiAtLWdpdCBhL0RvYy90b29scy9zcGhpbnhleHQvaW5kZXhjb250ZW50Lmh0bWwgYi9Eb2MvdG9vbHMvc3BoaW54ZXh0L2luZGV4Y29udGVudC5odG1sCmluZGV4IDdmODU0NzAuLmFiZTE3ZjMgMTAwNjQ0Ci0tLSBhL0RvYy90b29scy9zcGhpbnhleHQvaW5kZXhjb250ZW50Lmh0bWwKKysrIGIvRG9jL3Rvb2xzL3NwaGlueGV4dC9pbmRleGNvbnRlbnQuaHRtbApAQCAtMjAsMTAgKzIwLDEwIEBACiAgICAgICAgICA8c3BhbiBjbGFzcz0ibGlua2Rlc2NyIj50dXRvcmlhbCBmb3IgQy9DKysgcHJvZ3JhbW1lcnM8L3NwYW4+PC9wPgogICAgICAgPHAgY2xhc3M9ImJpZ2xpbmsiPjxhIGNsYXNzPSJiaWdsaW5rIiBocmVmPSJ7eyBwYXRodG8oImMtYXBpL2luZGV4IikgfX0iPlB5dGhvbi9DIEFQSTwvYT48YnIvPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImxpbmtkZXNjciI+cmVmZXJlbmNlIGZvciBDL0MrKyBwcm9ncmFtbWVyczwvc3Bhbj48L3A+Ci0gICAgICA8cCBjbGFzcz0iYmlnbGluayI+PGEgY2xhc3M9ImJpZ2xpbmsiIGhyZWY9Int7IHBhdGh0bygiaW5zdGFsbC9pbmRleCIpIH19Ij5JbnN0YWxsaW5nIFB5dGhvbiBNb2R1bGVzPC9hPjxici8+Ci0gICAgICAgICA8c3BhbiBjbGFzcz0ibGlua2Rlc2NyIj5pbmZvcm1hdGlvbiBmb3IgaW5zdGFsbGVycyAmYW1wOyBzeXMtYWRtaW5zPC9zcGFuPjwvcD4KLSAgICAgIDxwIGNsYXNzPSJiaWdsaW5rIj48YSBjbGFzcz0iYmlnbGluayIgaHJlZj0ie3sgcGF0aHRvKCJkaXN0dXRpbHMvaW5kZXgiKSB9fSI+RGlzdHJpYnV0aW5nIFB5dGhvbiBNb2R1bGVzPC9hPjxici8+Ci0gICAgICAgICA8c3BhbiBjbGFzcz0ibGlua2Rlc2NyIj5zaGFyaW5nIG1vZHVsZXMgd2l0aCBvdGhlcnM8L3NwYW4+PC9wPgorICAgICAgPHAgY2xhc3M9ImJpZ2xpbmsiPjxhIGNsYXNzPSJiaWdsaW5rIiBocmVmPSJ7eyBwYXRodG8oImluc3RhbGwvaW5kZXgiKSB9fSI+SW5zdGFsbGluZyBQeXRob24gUHJvamVjdHM8L2E+PGJyLz4KKyAgICAgICAgIDxzcGFuIGNsYXNzPSJsaW5rZGVzY3IiPmZpbmRpbmcgYW5kIGluc3RhbGxpbmcgbW9kdWxlcyBhbmQgYXBwbGljYXRpb25zPC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPSJiaWdsaW5rIj48YSBjbGFzcz0iYmlnbGluayIgaHJlZj0ie3sgcGF0aHRvKCJwYWNrYWdpbmcvaW5kZXgiKSB9fSI+RGlzdHJpYnV0aW5nIFB5dGhvbiBQcm9qZWN0czwvYT48YnIvPgorICAgICAgICAgPHNwYW4gY2xhc3M9ImxpbmtkZXNjciI+cGFja2FnaW5nIGFuZCBkaXN0cmlidXRpbmcgbW9kdWxlcyBhbmQgYXBwbGljYXRpb25zPC9zcGFuPjwvcD4KICAgICAgIDxwIGNsYXNzPSJiaWdsaW5rIj48YSBjbGFzcz0iYmlnbGluayIgaHJlZj0ie3sgcGF0aHRvKCJmYXEvaW5kZXgiKSB9fSI+RkFRczwvYT48YnIvPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImxpbmtkZXNjciI+ZnJlcXVlbnRseSBhc2tlZCBxdWVzdGlvbnMgKHdpdGggYW5zd2VycyEpPC9zcGFuPjwvcD4KICAgICA8L3RkPjwvdHI+CmRpZmYgLS1naXQgYS9Eb2MvdG9vbHMvc3BoaW54ZXh0L2luZGV4c2lkZWJhci5odG1sIGIvRG9jL3Rvb2xzL3NwaGlueGV4dC9pbmRleHNpZGViYXIuaHRtbAppbmRleCA2NzI0OTJlLi4zYWQyNGY5IDEwMDY0NAotLS0gYS9Eb2MvdG9vbHMvc3BoaW54ZXh0L2luZGV4c2lkZWJhci5odG1sCisrKyBiL0RvYy90b29scy9zcGhpbnhleHQvaW5kZXhzaWRlYmFyLmh0bWwKQEAgLTMsNyArMyw3IEBACiAJICAgIDxoMz5Eb2NzIGZvciBvdGhlciB2ZXJzaW9uczwvaDM+CiAJICAgIDx1bD4KIAkgICAgICA8bGk+PGEgaHJlZj0iaHR0cDovL2RvY3MucHl0aG9uLm9yZy8yLjcvIj5QeXRob24gMi43IChzdGFibGUpPC9hPjwvbGk+Ci0JICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvMy4xLyI+UHl0aG9uIDMuMSAoc3RhYmxlKTwvYT48L2xpPgorCSAgICAgIDxsaT48YSBocmVmPSJodHRwOi8vZG9jcy5weXRob24ub3JnLzMuMi8iPlB5dGhvbiAzLjIgKHN0YWJsZSk8L2E+PC9saT4KICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cucHl0aG9uLm9yZy9kb2MvdmVyc2lvbnMvIj5PbGQgdmVyc2lvbnM8L2E+PC9saT4KICAgICAgICAgICAgIDwvdWw+CiAKZGlmZiAtLWdpdCBhL0RvYy90b29scy9zcGhpbnhleHQvcHlzcGVjaWZpYy5weSBiL0RvYy90b29scy9zcGhpbnhleHQvcHlzcGVjaWZpYy5weQppbmRleCA0MzI5MjgxLi5mMzU5NTMwIDEwMDY0NAotLS0gYS9Eb2MvdG9vbHMvc3BoaW54ZXh0L3B5c3BlY2lmaWMucHkKKysrIGIvRG9jL3Rvb2xzL3NwaGlueGV4dC9weXNwZWNpZmljLnB5CkBAIC01LDEyICs1LDEyIEBACiAKICAgICBTcGhpbnggZXh0ZW5zaW9uIHdpdGggUHl0aG9uIGRvYy1zcGVjaWZpYyBtYXJrdXAuCiAKLSAgICA6Y29weXJpZ2h0OiAyMDA4LCAyMDA5LCAyMDEwIGJ5IEdlb3JnIEJyYW5kbC4KKyAgICA6Y29weXJpZ2h0OiAyMDA4LCAyMDA5LCAyMDEwLCAyMDExLCAyMDEyIGJ5IEdlb3JnIEJyYW5kbC4KICAgICA6bGljZW5zZTogUHl0aG9uIGxpY2Vuc2UuCiAiIiIKIAogSVNTVUVfVVJJID0gJ2h0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWUlcycKLVNPVVJDRV9VUkkgPSAnaHR0cDovL2hnLnB5dGhvbi5vcmcvY3B5dGhvbi9maWxlLzMuMi8lcycKK1NPVVJDRV9VUkkgPSAnaHR0cDovL2hnLnB5dGhvbi5vcmcvY3B5dGhvbi9maWxlL2RlZmF1bHQvJXMnCiAKIGZyb20gZG9jdXRpbHMgaW1wb3J0IG5vZGVzLCB1dGlscwogZnJvbSBzcGhpbngudXRpbC5ub2RlcyBpbXBvcnQgc3BsaXRfZXhwbGljaXRfdGl0bGUKQEAgLTIwMSwxMSArMjAxLDEyIEBACiAgICAgICAgICAgICBkb2N1bWVudC5hcHBlbmQoZG9jdHJlZS5pZHNbbGFiZWxpZF0pCiAgICAgICAgICAgICBkZXN0aW5hdGlvbiA9IFN0cmluZ091dHB1dChlbmNvZGluZz0ndXRmLTgnKQogICAgICAgICAgICAgd3JpdGVyLndyaXRlKGRvY3VtZW50LCBkZXN0aW5hdGlvbikKLSAgICAgICAgICAgIHNlbGYudG9waWNzW2xhYmVsXSA9IHN0cih3cml0ZXIub3V0cHV0KQorICAgICAgICAgICAgc2VsZi50b3BpY3NbbGFiZWxdID0gd3JpdGVyLm91dHB1dC5lbmNvZGUoJ3V0Zi04JykKIAogICAgIGRlZiBmaW5pc2goc2VsZik6CiAgICAgICAgIGYgPSBvcGVuKHBhdGguam9pbihzZWxmLm91dGRpciwgJ3RvcGljcy5weScpLCAndycpCiAgICAgICAgIHRyeToKKyAgICAgICAgICAgIGYud3JpdGUoJyMgLSotIGNvZGluZzogdXRmLTggLSotXG4nKQogICAgICAgICAgICAgZi53cml0ZSgnIyBBdXRvZ2VuZXJhdGVkIGJ5IFNwaGlueCBvbiAlc1xuJyAlIGFzY3RpbWUoKSkKICAgICAgICAgICAgIGYud3JpdGUoJ3RvcGljcyA9ICcgKyBwZm9ybWF0KHNlbGYudG9waWNzKSArICdcbicpCiAgICAgICAgIGZpbmFsbHk6CmRpZmYgLS1naXQgYS9Eb2MvdG9vbHMvc3BoaW54ZXh0L3N1c3AtaWdub3JlZC5jc3YgYi9Eb2MvdG9vbHMvc3BoaW54ZXh0L3N1c3AtaWdub3JlZC5jc3YKaW5kZXggNTA3NmFlZC4uYTNkOGQwYiAxMDA2NDQKLS0tIGEvRG9jL3Rvb2xzL3NwaGlueGV4dC9zdXNwLWlnbm9yZWQuY3N2CisrKyBiL0RvYy90b29scy9zcGhpbnhleHQvc3VzcC1pZ25vcmVkLmNzdgpAQCAtMSwxNiArMSwyNCBAQAogYy1hcGkvYXJnLCw6cmVmLCJQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICIiT3xPOnJlZiIiLCAmb2JqZWN0LCAmY2FsbGJhY2spIgogYy1hcGkvbGlzdCwsOmhpZ2gsbGlzdFtsb3c6aGlnaF0KIGMtYXBpL2xpc3QsLDpoaWdoLGxpc3RbbG93OmhpZ2hdID0gaXRlbWxpc3QKK2MtYXBpL3NlcXVlbmNlLCw6aTIsZGVsIG9baTE6aTJdCiBjLWFwaS9zZXF1ZW5jZSwsOmkyLG9baTE6aTJdCiBjLWFwaS9zZXF1ZW5jZSwsOmkyLG9baTE6aTJdID0gdgotYy1hcGkvc2VxdWVuY2UsLDppMixkZWwgb1tpMTppMl0KIGMtYXBpL3VuaWNvZGUsLDplbmQsc3RyW3N0YXJ0OmVuZF0KK2MtYXBpL3VuaWNvZGUsLDpzdGFydCx1bmljb2RlW3N0YXJ0OnN0YXJ0K2xlbmd0aF0KK2Rpc3R1dGlscy9leGFtcGxlcywyNjcsYCxUaGlzIGlzIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgYGBmb29iYXJgYCBwYWNrYWdlLgogZGlzdHV0aWxzL3NldHVwc2NyaXB0LCw6OiwKIGV4dGVuZGluZy9lbWJlZGRpbmcsLDpudW1hcmdzLCJpZighUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiIjpudW1hcmdzIiIpKSIKLWV4dGVuZGluZy9leHRlbmRpbmcsLDpzZXQsImlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICIiTzpzZXRfY2FsbGJhY2siIiwgJnRlbXApKSB7IgogZXh0ZW5kaW5nL2V4dGVuZGluZywsOm15ZnVuY3Rpb24sIlB5QXJnX1BhcnNlVHVwbGUoYXJncywgIiJEOm15ZnVuY3Rpb24iIiwgJmMpOyIKK2V4dGVuZGluZy9leHRlbmRpbmcsLDpzZXQsImlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICIiTzpzZXRfY2FsbGJhY2siIiwgJnRlbXApKSB7IgogZXh0ZW5kaW5nL25ld3R5cGVzLCw6Y2FsbCwiaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICIic3NzOmNhbGwiIiwgJmFyZzEsICZhcmcyLCAmYXJnMykpIHsiCiBleHRlbmRpbmcvd2luZG93cywsOmluaXRzcGFtLC9leHBvcnQ6aW5pdHNwYW0KK2ZhcS9wcm9ncmFtbWluZywsOmNociwiPj00LjApIG9yIDErZih4Yyx5Yyx4KngteSp5K3hjLDIuMCp4KnkreWMsay0xLGYpOmYoeGMseWMseCx5LGssZik6Y2hyKCIKK2ZhcS9wcm9ncmFtbWluZywsOjosZm9yIHggaW4gc2VxdWVuY2VbOjotMV06CitmYXEvcHJvZ3JhbW1pbmcsLDpyZWR1Y2UsInByaW50KChsYW1iZGEgUnUsUm8sSXUsSW8sSU0sU3gsU3k6cmVkdWNlKGxhbWJkYSB4LHk6eCt5LG1hcChsYW1iZGEgeSwiCitmYXEvcHJvZ3JhbW1pbmcsLDpyZWR1Y2UsIlN4PVN4LFN5PVN5OnJlZHVjZShsYW1iZGEgeCx5OngreSxtYXAobGFtYmRhIHgseGM9UnUseWM9eWMsUnU9UnUsUm89Um8sIgorZmFxL3dpbmRvd3MsMjI5LDpFT0YsQHNldGxvY2FsIGVuYWJsZWV4dGVuc2lvbnMgJiBweXRob24gLXggJX5mMCAlKiAmIGdvdG8gOkVPRgorZmFxL3dpbmRvd3MsMzkzLDpSRUcsLnB5IDpSRUdfU1o6IGM6XDxwYXRoIHRvIHB5dGhvbj5ccHl0aG9uLmV4ZSAtdSAlcyAlcwogaG93dG8vY3BvcnRpbmcsLDphZGQsImlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiImlpOmFkZF9pbnRzIiIsICZvbmUsICZ0d28pKSIKIGhvd3RvL2Nwb3J0aW5nLCw6ZW5jb2RlLCJpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIiJPOmVuY29kZV9vYmplY3QiIiwgJm15b2JqKSkiCiBob3d0by9jcG9ydGluZywsOnNheSwiaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICIiVTpzYXlfaGVsbG8iIiwgJm5hbWUpKSIKQEAgLTIyLDE5ICszMCw1MyBAQAogaG93dG8vY3Vyc2VzLCw6cmVkLCJUaGV5IGFyZTogMDpibGFjaywgMTpyZWQsIDI6Z3JlZW4sIDM6eWVsbG93LCA0OmJsdWUsIDU6bWFnZW50YSwgNjpjeWFuLCBhbmQiCiBob3d0by9jdXJzZXMsLDp3aGl0ZSwiNzp3aGl0ZS4iCiBob3d0by9jdXJzZXMsLDp5ZWxsb3csIlRoZXkgYXJlOiAwOmJsYWNrLCAxOnJlZCwgMjpncmVlbiwgMzp5ZWxsb3csIDQ6Ymx1ZSwgNTptYWdlbnRhLCA2OmN5YW4sIGFuZCIKK2hvd3RvL2xvZ2dpbmcsLDpBbmQsIldBUk5JTkc6QW5kIHRoaXMsIHRvbyIKK2hvd3RvL2xvZ2dpbmcsLDpBbmQsIldBUk5JTkc6cm9vdDpBbmQgdGhpcywgdG9vIgoraG93dG8vbG9nZ2luZywsOkRvaW5nLElORk86cm9vdDpEb2luZyBzb21ldGhpbmcKK2hvd3RvL2xvZ2dpbmcsLDpGaW5pc2hlZCxJTkZPOnJvb3Q6RmluaXNoZWQKK2hvd3RvL2xvZ2dpbmcsLDpsb2dnZXIsc2V2ZXJpdHk6bG9nZ2VyIG5hbWU6bWVzc2FnZQoraG93dG8vbG9nZ2luZywsOkxvb2ssV0FSTklORzpyb290Okxvb2sgYmVmb3JlIHlvdSBsZWFwIQoraG93dG8vbG9nZ2luZywsOm1lc3NhZ2Usc2V2ZXJpdHk6bG9nZ2VyIG5hbWU6bWVzc2FnZQoraG93dG8vbG9nZ2luZywsOnJvb3QsREVCVUc6cm9vdDpUaGlzIG1lc3NhZ2Ugc2hvdWxkIGdvIHRvIHRoZSBsb2cgZmlsZQoraG93dG8vbG9nZ2luZywsOnJvb3QsSU5GTzpyb290OkRvaW5nIHNvbWV0aGluZworaG93dG8vbG9nZ2luZywsOnJvb3QsSU5GTzpyb290OkZpbmlzaGVkCitob3d0by9sb2dnaW5nLCw6cm9vdCxJTkZPOnJvb3Q6U28gc2hvdWxkIHRoaXMKK2hvd3RvL2xvZ2dpbmcsLDpyb290LElORk86cm9vdDpTdGFydGVkCitob3d0by9sb2dnaW5nLCw6cm9vdCwiV0FSTklORzpyb290OkFuZCB0aGlzLCB0b28iCitob3d0by9sb2dnaW5nLCw6cm9vdCxXQVJOSU5HOnJvb3Q6TG9vayBiZWZvcmUgeW91IGxlYXAhCitob3d0by9sb2dnaW5nLCw6cm9vdCxXQVJOSU5HOnJvb3Q6V2F0Y2ggb3V0IQoraG93dG8vbG9nZ2luZywsOlNvLElORk86cm9vdDpTbyBzaG91bGQgdGhpcworaG93dG8vbG9nZ2luZywsOlNvLElORk86U28gc2hvdWxkIHRoaXMKK2hvd3RvL2xvZ2dpbmcsLDpTdGFydGVkLElORk86cm9vdDpTdGFydGVkCitob3d0by9sb2dnaW5nLCw6VGhpcyxERUJVRzpyb290OlRoaXMgbWVzc2FnZSBzaG91bGQgZ28gdG8gdGhlIGxvZyBmaWxlCitob3d0by9sb2dnaW5nLCw6VGhpcyxERUJVRzpUaGlzIG1lc3NhZ2Ugc2hvdWxkIGFwcGVhciBvbiB0aGUgY29uc29sZQoraG93dG8vbG9nZ2luZywsOldhdGNoLFdBUk5JTkc6cm9vdDpXYXRjaCBvdXQhCitob3d0by9weXBvcnRpbmcsNzUsOjosIyBtYWtlIHN1cmUgdG8gdXNlIDo6IFB5dGhvbiAqYW5kKiA6OiBQeXRob24gOjogMyBzbworaG93dG8vcHlwb3J0aW5nLDc1LDo6LCInUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uJywiCitob3d0by9weXBvcnRpbmcsNzUsOjosJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAzJwogaG93dG8vcmVnZXgsLDo6LAogaG93dG8vcmVnZXgsLDpmb28sKD86Zm9vKQogaG93dG8vdXJsbGliMiwsOmV4YW1wbGUsImZvciBleGFtcGxlICIiam9lQHBhc3N3b3JkOmV4YW1wbGUuY29tIiIiCiBob3d0by93ZWJzZXJ2ZXJzLCwuLiBpbWFnZTosLi4gaW1hZ2U6OiBodHRwLnBuZwogbGlicmFyeS9hdWRpb29wLCw6aXBvcywiIyBmYWN0b3IgPSBhdWRpb29wLmZpbmRmYWN0b3IoaW5fdGVzdFtpcG9zKjI6aXBvcyoyK2xlbihvdXRfdGVzdCldLCIKK2xpYnJhcnkvYmlzZWN0LDMyLDpoaSxhbGwodmFsID49IHggZm9yIHZhbCBpbiBhW2k6aGldKQorbGlicmFyeS9iaXNlY3QsNDIsOmhpLGFsbCh2YWwgPiB4IGZvciB2YWwgaW4gYVtpOmhpXSkKK2xpYnJhcnkvY29uZmlncGFyc2VyLCw6aG9tZSxteV9kaXI6ICR7Q29tbW9uOmhvbWVfZGlyfS90d29zaGVkcworbGlicmFyeS9jb25maWdwYXJzZXIsLDpvcHRpb24sJHtzZWN0aW9uOm9wdGlvbn0KK2xpYnJhcnkvY29uZmlncGFyc2VyLCw6cGF0aCxweXRob25fZGlyOiAke0ZyYW1ld29ya3M6cGF0aH0vUHl0aG9uL1ZlcnNpb25zLyR7RnJhbWV3b3JrczpQeXRob259CitsaWJyYXJ5L2NvbmZpZ3BhcnNlciwsOlB5dGhvbixweXRob25fZGlyOiAke0ZyYW1ld29ya3M6cGF0aH0vUHl0aG9uL1ZlcnNpb25zLyR7RnJhbWV3b3JrczpQeXRob259CitsaWJyYXJ5L2NvbmZpZ3BhcnNlciwsYCwjIFNldCB0aGUgb3B0aW9uYWwgYHJhd2AgYXJndW1lbnQgb2YgZ2V0KCkgdG8gVHJ1ZSBpZiB5b3Ugd2lzaCB0byBkaXNhYmxlCitsaWJyYXJ5L2NvbmZpZ3BhcnNlciwsOnN5c3RlbSxwYXRoOiAke0NvbW1vbjpzeXN0ZW1fZGlyfS9MaWJyYXJ5L0ZyYW1ld29ya3MvCitsaWJyYXJ5L2NvbmZpZ3BhcnNlciwsYCwjIFRoZSBvcHRpb25hbCBgZmFsbGJhY2tgIGFyZ3VtZW50IGNhbiBiZSB1c2VkIHRvIHByb3ZpZGUgYSBmYWxsYmFjayB2YWx1ZQorbGlicmFyeS9jb25maWdwYXJzZXIsLGAsIyBUaGUgb3B0aW9uYWwgYHZhcnNgIGFyZ3VtZW50IGlzIGEgZGljdCB3aXRoIG1lbWJlcnMgdGhhdCB3aWxsIHRha2UKIGxpYnJhcnkvZGF0ZXRpbWUsLDpNTSwKIGxpYnJhcnkvZGF0ZXRpbWUsLDpTUywKIGxpYnJhcnkvZGVjaW1hbCwsOm9wdGlvbmFsLCJ0cmFpbG5lZzpvcHRpb25hbCB0cmFpbGluZyBtaW51cyBpbmRpY2F0b3IiCiBsaWJyYXJ5L2RpZmZsaWIsLDphaGksYVthbG86YWhpXQogbGlicmFyeS9kaWZmbGliLCw6YmhpLGJbYmxvOmJoaV0KK2xpYnJhcnkvZGlmZmxpYiwsOmkxLAogbGlicmFyeS9kaWZmbGliLCw6aTIsCiBsaWJyYXJ5L2RpZmZsaWIsLDpqMiwKLWxpYnJhcnkvZGlmZmxpYiwsOmkxLAogbGlicmFyeS9kaXMsLDpUT1MsCiBsaWJyYXJ5L2RpcywsYCxUT1MgPSBgVE9TYAogbGlicmFyeS9kb2N0ZXN0LCxgLGBgZmFjdG9yaWFsYGAgZnJvbSB0aGUgYGBleGFtcGxlYGAgbW9kdWxlOgpAQCAtNDQsOTYgKzg2LDE2NCBAQAogbGlicmFyeS9mdW5jdGlvbnMsLDpzdG9wLCJhW3N0YXJ0OnN0b3AsIGldIgogbGlicmFyeS9mdW5jdGlvbnMsLDpzdG9wLGFbc3RhcnQ6c3RvcDpzdGVwXQogbGlicmFyeS9ob3RzaG90LCw6bGluZW5vLCJuY2FsbHMgIHRvdHRpbWUgIHBlcmNhbGwgIGN1bXRpbWUgIHBlcmNhbGwgZmlsZW5hbWU6bGluZW5vKGZ1bmN0aW9uKSIKK2xpYnJhcnkvaHR0cC5jbGllbnQsNTIsOnBvcnQsaG9zdDpwb3J0CiBsaWJyYXJ5L2h0dHBsaWIsLDpwb3J0LGhvc3Q6cG9ydAotbGlicmFyeS9pbWFwbGliLCw6TU0sIiIiREQtTW1tLVlZWVkgSEg6TU06U1MgK0hITU0iIiIKLWxpYnJhcnkvaW1hcGxpYiwsOlNTLCIiIkRELU1tbS1ZWVlZIEhIOk1NOlNTICtISE1NIiIiCi1saWJyYXJ5L2l0ZXJ0b29scywsOnN0b3AsZWxlbWVudHMgZnJvbSBzZXFbc3RhcnQ6c3RvcDpzdGVwXQorbGlicmFyeS9pbWFwbGliLCw6TU0sIiIiREQtTW1tLVlZWVkgSEg6TU06U1MiCitsaWJyYXJ5L2ltYXBsaWIsLDpTUywiIiJERC1NbW0tWVlZWSBISDpNTTpTUyIKIGxpYnJhcnkvaXRlcnRvb2xzLCw6c3RlcCxlbGVtZW50cyBmcm9tIHNlcVtzdGFydDpzdG9wOnN0ZXBdCitsaWJyYXJ5L2l0ZXJ0b29scywsOnN0b3AsZWxlbWVudHMgZnJvbSBzZXFbc3RhcnQ6c3RvcDpzdGVwXQogbGlicmFyeS9saW5lY2FjaGUsLDpzeXMsInN5czp4OjM6MzpzeXM6L2RldjovYmluL3NoIgogbGlicmFyeS9sb2dnaW5nLCw6QW5kLAorbGlicmFyeS9sb2dnaW5nLCw6RG9pbmcsSU5GTzpyb290OkRvaW5nIHNvbWV0aGluZworbGlicmFyeS9sb2dnaW5nLCw6RmluaXNoZWQsSU5GTzpyb290OkZpbmlzaGVkCitsaWJyYXJ5L2xvZ2dpbmcsLDpsb2dnZXIsc2V2ZXJpdHk6bG9nZ2VyIG5hbWU6bWVzc2FnZQorbGlicmFyeS9sb2dnaW5nLCw6TG9vayxXQVJOSU5HOnJvb3Q6TG9vayBiZWZvcmUgeW91IGxlYXAhCitsaWJyYXJ5L2xvZ2dpbmcsLDptZXNzYWdlLHNldmVyaXR5OmxvZ2dlciBuYW1lOm1lc3NhZ2UKIGxpYnJhcnkvbG9nZ2luZywsOnBhY2thZ2UxLAogbGlicmFyeS9sb2dnaW5nLCw6cGFja2FnZTIsCi1saWJyYXJ5L2xvZ2dpbmcsLDpyb290LAotbGlicmFyeS9sb2dnaW5nLCw6VGhpcywKIGxpYnJhcnkvbG9nZ2luZywsOnBvcnQsaG9zdDpwb3J0CitsaWJyYXJ5L2xvZ2dpbmcsLDpyb290LAorbGlicmFyeS9sb2dnaW5nLCw6U28sSU5GTzpyb290OlNvIHNob3VsZCB0aGlzCitsaWJyYXJ5L2xvZ2dpbmcsLDpTbyxJTkZPOlNvIHNob3VsZCB0aGlzCitsaWJyYXJ5L2xvZ2dpbmcsLDpTdGFydGVkLElORk86cm9vdDpTdGFydGVkCitsaWJyYXJ5L2xvZ2dpbmcsLDpUaGlzLAorbGlicmFyeS9sb2dnaW5nLCw6V2F0Y2gsV0FSTklORzpyb290OldhdGNoIG91dCEKK2xpYnJhcnkvbG9nZ2luZy5oYW5kbGVycywsOnBvcnQsaG9zdDpwb3J0CiBsaWJyYXJ5L21tYXAsLDppMixvYmpbaTE6aTJdCi1saWJyYXJ5L211bHRpcHJvY2Vzc2luZywsOnF1ZXVlLCI+Pj4gUXVldWVNYW5hZ2VyLnJlZ2lzdGVyKCdnZXRfcXVldWUnLCBjYWxsYWJsZT1sYW1iZGE6cXVldWUpIgotbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsIj4+PiBsLl9jYWxsbWV0aG9kKCdfX2dldGl0ZW1fXycsICgyMCwpKSAgICAgIyBlcXVpdiB0byBgbFsyMF1gIgotbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsIj4+PiBsLl9jYWxsbWV0aG9kKCdfX2dldHNsaWNlX18nLCAoMiwgNykpICAgIyBlcXVpdiB0byBgbFsyOjddYCIKLWxpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLCMgYEJhc2VNYW5hZ2VyYC4KLWxpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLCMgYFBvb2wuaW1hcCgpYCAod2hpY2ggd2lsbCBzYXZlIG9uIHRoZSBhbW91bnQgb2YgY29kZSBuZWVkZWQgYW55d2F5KS4KK2xpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLCMgQWRkIG1vcmUgdGFza3MgdXNpbmcgYHB1dCgpYAogbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsIyBBIHRlc3QgZmlsZSBmb3IgdGhlIGBtdWx0aXByb2Nlc3NpbmdgIHBhY2thZ2UKIGxpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLCMgQSB0ZXN0IG9mIGBtdWx0aXByb2Nlc3NpbmcuUG9vbGAgY2xhc3MKLWxpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLCMgQWRkIG1vcmUgdGFza3MgdXNpbmcgYHB1dCgpYAorbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsIyBgQmFzZU1hbmFnZXJgLgorbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsYENsdXN0ZXJgIGlzIGEgc3ViY2xhc3Mgb2YgYFN5bmNNYW5hZ2VyYCBzbyBpdCBhbGxvd3MgY3JlYXRpb24gb2YKIGxpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLCMgY3JlYXRlIHNlcnZlciBmb3IgYSBgSG9zdE1hbmFnZXJgIG9iamVjdAogbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsIyBEZXBlbmRzIG9uIGBtdWx0aXByb2Nlc3NpbmdgIHBhY2thZ2UgLS0gdGVzdGVkIHdpdGggYHByb2Nlc3NpbmctMC42MGAKK2xpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLGBob3N0bmFtZWAgZ2l2ZXMgdGhlIG5hbWUgb2YgdGhlIGhvc3QuICBJZiBob3N0bmFtZSBpcyBub3QKIGxpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLCMgaW4gdGhlIG9yaWdpbmFsIG9yZGVyIHRoZW4gY29uc2lkZXIgdXNpbmcgYFBvb2wubWFwKClgIG9yCitsaWJyYXJ5L211bHRpcHJvY2Vzc2luZywsYCwiPj4+IGwuX2NhbGxtZXRob2QoJ19fZ2V0aXRlbV9fJywgKDIwLCkpICAgICAjIGVxdWl2IHRvIGBsWzIwXWAiCitsaWJyYXJ5L211bHRpcHJvY2Vzc2luZywsYCwiPj4+IGwuX2NhbGxtZXRob2QoJ19fZ2V0c2xpY2VfXycsICgyLCA3KSkgICAjIGVxdWl2IHRvIGBsWzI6N11gIgogbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsIyBOb3Qgc3VyZSBpZiB3ZSBzaG91bGQgc3luY2hyb25pemUgYWNjZXNzIHRvIGBzb2NrZXQuYWNjZXB0KClgIG1ldGhvZCBieQogbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsIyBvYmplY3QuICAoV2UgaW1wb3J0IGBtdWx0aXByb2Nlc3NpbmcucmVkdWN0aW9uYCB0byBlbmFibGUgdGhpcyBwaWNrbGluZy4pCitsaWJyYXJ5L211bHRpcHJvY2Vzc2luZywsYCwjIGBQb29sLmltYXAoKWAgKHdoaWNoIHdpbGwgc2F2ZSBvbiB0aGUgYW1vdW50IG9mIGNvZGUgbmVlZGVkIGFueXdheSkuCitsaWJyYXJ5L211bHRpcHJvY2Vzc2luZywsOnF1ZXVlLCI+Pj4gUXVldWVNYW5hZ2VyLnJlZ2lzdGVyKCdnZXRfcXVldWUnLCBjYWxsYWJsZT1sYW1iZGE6cXVldWUpIgogbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsIyByZWdpc3RlciB0aGUgRm9vIGNsYXNzOyBtYWtlIGBmKClgIGFuZCBgZygpYCBhY2Nlc3NpYmxlIHZpYSBwcm94eQogbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsIyByZWdpc3RlciB0aGUgRm9vIGNsYXNzOyBtYWtlIGBnKClgIGFuZCBgX2goKWAgYWNjZXNzaWJsZSB2aWEgcHJveHkKIGxpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLCMgcmVnaXN0ZXIgdGhlIGdlbmVyYXRvciBmdW5jdGlvbiBiYXo7IHVzZSBgR2VuZXJhdG9yUHJveHlgIHRvIG1ha2UgcHJveGllcwotbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcsLGAsYENsdXN0ZXJgIGlzIGEgc3ViY2xhc3Mgb2YgYFN5bmNNYW5hZ2VyYCBzbyBpdCBhbGxvd3MgY3JlYXRpb24gb2YKLWxpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLGBob3N0bmFtZWAgZ2l2ZXMgdGhlIG5hbWUgb2YgdGhlIGhvc3QuICBJZiBob3N0bmFtZSBpcyBub3QKIGxpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLCxgLGBzbG90c2AgaXMgdXNlZCB0byBzcGVjaWZ5IHRoZSBudW1iZXIgb2Ygc2xvdHMgZm9yIHByb2Nlc3NlcyBvbgorbGlicmFyeS9ubnRwbGliLCw6Ynl0ZXMsOmJ5dGVzCitsaWJyYXJ5L25udHBsaWIsLDpieXRlcywiWyd4cmVmJywgJ2Zyb20nLCAnOmxpbmVzJywgJzpieXRlcycsICdyZWZlcmVuY2VzJywgJ2RhdGUnLCAnbWVzc2FnZS1pZCcsICdzdWJqZWN0J10iCitsaWJyYXJ5L25udHBsaWIsLDpsaW5lcyw6bGluZXMKK2xpYnJhcnkvbm50cGxpYiwsOmxpbmVzLCJbJ3hyZWYnLCAnZnJvbScsICc6bGluZXMnLCAnOmJ5dGVzJywgJ3JlZmVyZW5jZXMnLCAnZGF0ZScsICdtZXNzYWdlLWlkJywgJ3N1YmplY3QnXSIKIGxpYnJhcnkvb3B0cGFyc2UsLDpsZW4sImRlbCBwYXJzZXIucmFyZ3NbOmxlbih2YWx1ZSldIgogbGlicmFyeS9vcy5wYXRoLCw6Zm9vLGM6Zm9vCiBsaWJyYXJ5L3BhcnNlciwsYCwiIiJNYWtlIGEgZnVuY3Rpb24gdGhhdCByYWlzZXMgYW4gYXJndW1lbnQgdG8gdGhlIGV4cG9uZW50IGBleHBgLiIiIgorbGlicmFyeS9wZGIsLDpsaW5lbm8sZmlsZW5hbWU6bGluZW5vCitsaWJyYXJ5L3BkYiwsOmxpbmVubyxbZmlsZW5hbWU6bGluZW5vIHwgYnBudW1iZXIgW2JwbnVtYmVyIC4uLl1dCitsaWJyYXJ5L3BpY2tsZSwsOm1lbW9yeSwiY29ubiA9IHNxbGl0ZTMuY29ubmVjdCgiIjptZW1vcnk6IiIpIgogbGlicmFyeS9wb3NpeCwsYCwiQ0ZMQUdTPSIiYGdldGNvbmYgTEZTX0NGTEFHU2AiIiBPUFQ9IiItZyAtTzIgJENGTEFHUyIiIgotbGlicmFyeS9wcm9maWxlLCw6bGluZW5vLG5jYWxscyAgdG90dGltZSAgcGVyY2FsbCAgY3VtdGltZSAgcGVyY2FsbCBmaWxlbmFtZTpsaW5lbm8oZnVuY3Rpb24pCitsaWJyYXJ5L3BwcmludCwyMDksOjosIidjbGFzc2lmaWVycyc6IFsnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDQgLSBCZXRhJywiCitsaWJyYXJ5L3BwcmludCwyMDksOjosIidJbnRlbmRlZCBBdWRpZW5jZSA6OiBEZXZlbG9wZXJzJywiCitsaWJyYXJ5L3BwcmludCwyMDksOjosIidMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBNSVQgTGljZW5zZScsIgorbGlicmFyeS9wcHJpbnQsMjA5LDo6LCInTmF0dXJhbCBMYW5ndWFnZSA6OiBFbmdsaXNoJywiCitsaWJyYXJ5L3BwcmludCwyMDksOjosIidPcGVyYXRpbmcgU3lzdGVtIDo6IE9TIEluZGVwZW5kZW50JywiCitsaWJyYXJ5L3BwcmludCwyMDksOjosIidQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24nLCIKK2xpYnJhcnkvcHByaW50LDIwOSw6OiwiJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyJywiCitsaWJyYXJ5L3BwcmludCwyMDksOjosIidQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMi42JywiCitsaWJyYXJ5L3BwcmludCwyMDksOjosIidQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMi43JywiCitsaWJyYXJ5L3BwcmludCwyMDksOjosIidUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMnLCIKK2xpYnJhcnkvcHByaW50LDIwOSw6OiwiJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcyA6OiBQeXRob24gTW9kdWxlcyddLCIKIGxpYnJhcnkvcHJvZmlsZSwsOmxpbmVubyxmaWxlbmFtZTpsaW5lbm8oZnVuY3Rpb24pCitsaWJyYXJ5L3Byb2ZpbGUsLDpsaW5lbm8sbmNhbGxzICB0b3R0aW1lICBwZXJjYWxsICBjdW10aW1lICBwZXJjYWxsIGZpbGVuYW1lOmxpbmVubyhmdW5jdGlvbikKK2xpYnJhcnkvcHJvZmlsZSwsOmxpbmVubywiKHNvcnQgYnkgZmlsZW5hbWU6bGluZW5vKSwiCiBsaWJyYXJ5L3B5ZXhwYXQsLDplbGVtMSw8cHk6ZWxlbTEgLz4KIGxpYnJhcnkvcHlleHBhdCwsOnB5LCJ4bWxuczpweSA9ICIiaHR0cDovL3d3dy5weXRob24ub3JnL25zLyIiPiIKIGxpYnJhcnkvcmVwciwsYCwicmV0dXJuIGBvYmpgIgogbGlicmFyeS9zbXRwbGliLCw6cG9ydCwiYXMgd2VsbCBhcyBhIHJlZ3VsYXIgaG9zdDpwb3J0IHNlcnZlci4iCitsaWJyYXJ5L3NtdHBsaWIsLDpwb3J0LG1ldGhvZCBtdXN0IHN1cHBvcnQgdGhhdCBhcyB3ZWxsIGFzIGEgcmVndWxhciBob3N0OnBvcnQKK2xpYnJhcnkvc29ja2V0LCw6OiwiKDEwLCAxLCA2LCAnJywgKCcyMDAxOjg4ODoyMDAwOmQ6OmEyJywgODAsIDAsIDApKV0iCiBsaWJyYXJ5L3NvY2tldCwsOjosJzVhZWY6MmI6OjgnCi1saWJyYXJ5L3NxbGl0ZTMsLDptZW1vcnksCitsaWJyYXJ5L3NvY2tldCwsOmNhbiwicmV0dXJuIChjYW5faWQsIGNhbl9kbGMsIGRhdGFbOmNhbl9kbGNdKSIKK2xpYnJhcnkvc29ja2V0LCw6bGVuLGZkcy5mcm9tc3RyaW5nKGNtc2dfZGF0YVs6bGVuKGNtc2dfZGF0YSkgLSAobGVuKGNtc2dfZGF0YSkgJSBmZHMuaXRlbXNpemUpXSkKK2xpYnJhcnkvc3FsaXRlMywsOmFnZSwiY3VyLmV4ZWN1dGUoIiJzZWxlY3QgKiBmcm9tIHBlb3BsZSB3aGVyZSBuYW1lX2xhc3Q9OndobyBhbmQgYWdlPTphZ2UiIiwgeyIid2hvIiI6IHdobywgIiJhZ2UiIjogYWdlfSkiCiBsaWJyYXJ5L3NxbGl0ZTMsLDphZ2UsInNlbGVjdCBuYW1lX2xhc3QsIGFnZSBmcm9tIHBlb3BsZSB3aGVyZSBuYW1lX2xhc3Q9OndobyBhbmQgYWdlPTphZ2UiCi1saWJyYXJ5L3NxbGl0ZTMsLDp3aG8sInNlbGVjdCBuYW1lX2xhc3QsIGFnZSBmcm9tIHBlb3BsZSB3aGVyZSBuYW1lX2xhc3Q9OndobyBhbmQgYWdlPTphZ2UiCi1saWJyYXJ5L3NzbCwsOk15LCJPcmdhbml6YXRpb24gTmFtZSAoZWcsIGNvbXBhbnkpIFtJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGRdOk15IE9yZ2FuaXphdGlvbiwgSW5jLiIKK2xpYnJhcnkvc3FsaXRlMywsOm1lbW9yeSwKK2xpYnJhcnkvc3FsaXRlMywsOndobywiY3VyLmV4ZWN1dGUoIiJzZWxlY3QgKiBmcm9tIHBlb3BsZSB3aGVyZSBuYW1lX2xhc3Q9OndobyBhbmQgYWdlPTphZ2UiIiwgeyIid2hvIiI6IHdobywgIiJhZ2UiIjogYWdlfSkiCiBsaWJyYXJ5L3NzbCwsOk15LCJPcmdhbml6YXRpb25hbCBVbml0IE5hbWUgKGVnLCBzZWN0aW9uKSBbXTpNeSBHcm91cCIKK2xpYnJhcnkvc3NsLCw6TXksIk9yZ2FuaXphdGlvbiBOYW1lIChlZywgY29tcGFueSkgW0ludGVybmV0IFdpZGdpdHMgUHR5IEx0ZF06TXkgT3JnYW5pemF0aW9uLCBJbmMuIgogbGlicmFyeS9zc2wsLDpteXNlcnZlciwiQ29tbW9uIE5hbWUgKGVnLCBZT1VSIG5hbWUpIFtdOm15c2VydmVyLm15Z3JvdXAubXlvcmdhbml6YXRpb24uY29tIgogbGlicmFyeS9zc2wsLDpNeVN0YXRlLFN0YXRlIG9yIFByb3ZpbmNlIE5hbWUgKGZ1bGwgbmFtZSkgW1NvbWUtU3RhdGVdOk15U3RhdGUKIGxpYnJhcnkvc3NsLCw6b3BzLEVtYWlsIEFkZHJlc3MgW106b3BzQG15c2VydmVyLm15Z3JvdXAubXlvcmdhbml6YXRpb24uY29tCiBsaWJyYXJ5L3NzbCwsOlNvbWUsIkxvY2FsaXR5IE5hbWUgKGVnLCBjaXR5KSBbXTpTb21lIENpdHkiCiBsaWJyYXJ5L3NzbCwsOlVTLENvdW50cnkgTmFtZSAoMiBsZXR0ZXIgY29kZSkgW0FVXTpVUworbGlicmFyeS9zdGR0eXBlcywsOjosPj4+IGFbOjotMV0udG9saXN0KCkKK2xpYnJhcnkvc3RkdHlwZXMsLDo6LD4+PiBhWzo6Ml0udG9saXN0KCkKK2xpYnJhcnkvc3RkdHlwZXMsLDplbmQsc1tzdGFydDplbmRdCitsaWJyYXJ5L3N0ZHR5cGVzLCw6Oiw+Pj4gaGFzaCh2Wzo6LTJdKSA9PSBoYXNoKGInYWJjZWZnJ1s6Oi0yXSkKIGxpYnJhcnkvc3RkdHlwZXMsLDpsZW4sc1tsZW4ocyk6bGVuKHMpXQotbGlicmFyeS9zdGR0eXBlcywsOmxlbixzW2xlbihzKTpsZW4ocyldCitsaWJyYXJ5L3N0ZHR5cGVzLCw6Oiw+Pj4geSA9IG1bOjoyXQogbGlicmFyeS9zdHJpbmcsLDplbmQsc1tzdGFydDplbmRdCi1saWJyYXJ5L3N0cmluZywsOmVuZCxzW3N0YXJ0OmVuZF0KLWxpYnJhcnkvc3VicHJvY2VzcywsYCwib3V0cHV0PWBteWNtZCBteWFyZ2AiCiBsaWJyYXJ5L3N1YnByb2Nlc3MsLGAsIm91dHB1dD1gZG1lc2cgfCBncmVwIGhkYWAiCitsaWJyYXJ5L3N1YnByb2Nlc3MsLGAsIm91dHB1dD1gbXljbWQgbXlhcmdgIgorbGlicmFyeS90YXJmaWxlLCw6YnoyLAogbGlicmFyeS90YXJmaWxlLCw6Y29tcHJlc3Npb24sZmlsZW1vZGVbOmNvbXByZXNzaW9uXQogbGlicmFyeS90YXJmaWxlLCw6Z3osCi1saWJyYXJ5L3RhcmZpbGUsLDpiejIsCitsaWJyYXJ5L3RhcmZpbGUsLDp4eiwnYTp4eicKK2xpYnJhcnkvdGFyZmlsZSwsOnh6LCdyOnh6JworbGlicmFyeS90YXJmaWxlLCw6eHosJ3c6eHonCiBsaWJyYXJ5L3RpbWUsLDptbSwKIGxpYnJhcnkvdGltZSwsOnNzLAogbGlicmFyeS90dXJ0bGUsLDo6LEV4YW1wbGU6OgotbGlicmFyeS91cmxsaWIsLDpwb3J0LDpwb3J0CiBsaWJyYXJ5L3VybGxpYjIsLDpwYXNzd29yZCwiIiJqb2U6cGFzc3dvcmRAcHl0aG9uLm9yZyIiIgorbGlicmFyeS91cmxsaWIsLDpwb3J0LDpwb3J0CitsaWJyYXJ5L3VybGxpYi5yZXF1ZXN0LCw6Y2xvc2UsQ29ubmVjdGlvbjpjbG9zZQorbGlicmFyeS91cmxsaWIucmVxdWVzdCwsOmxhbmcsInhtbG5zPSIiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIiIHhtbDpsYW5nPSIiZW4iIiBsYW5nPSIiZW4iIj5cblxuPGhlYWQ+XG4iCitsaWJyYXJ5L3VybGxpYi5yZXF1ZXN0LCw6cGFzc3dvcmQsIiIiam9lOnBhc3N3b3JkQHB5dGhvbi5vcmciIiIKIGxpYnJhcnkvdXVpZCwsOnV1aWQsdXJuOnV1aWQ6MTIzNDU2NzgtMTIzNC01Njc4LTEyMzQtNTY3ODEyMzQ1Njc4Ci1saWJyYXJ5L3htbHJwY2xpYiwsOnBhc3MsaHR0cDovL3VzZXI6cGFzc0Bob3N0OnBvcnQvcGF0aAotbGlicmFyeS94bWxycGNsaWIsLDpwYXNzLHVzZXI6cGFzcwotbGlicmFyeS94bWxycGNsaWIsLDpwb3J0LGh0dHA6Ly91c2VyOnBhc3NAaG9zdDpwb3J0L3BhdGgKK2xpYnJhcnkveG1scnBjLmNsaWVudCwsOnBhc3MsaHR0cDovL3VzZXI6cGFzc0Bob3N0OnBvcnQvcGF0aAorbGlicmFyeS94bWxycGMuY2xpZW50LCw6cGFzcyx1c2VyOnBhc3MKK2xpYnJhcnkveG1scnBjLmNsaWVudCwsOnBvcnQsaHR0cDovL3VzZXI6cGFzc0Bob3N0OnBvcnQvcGF0aAorbGljZW5zZSwsYCwiYGBTb2Z0d2FyZScnKSwgdG8gZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIgorbGljZW5zZSwsYCwiVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIGBgQVMgSVMnJywgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwiCitsaWNlbnNlLCxgLCogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBFUklDIFlPVU5HIGBgQVMgSVMnJyBBTkQKK2xpY2Vuc2UsLGAsVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorbGljZW5zZSwsYCwqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIE9wZW5TU0wgUFJPSkVDVCBgYEFTIElTJycgQU5EIEFOWQogbGljZW5zZSwsYCxUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBQUk9KRUNUIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAogbGljZW5zZSwsOnpvb2tvLG1haWx0bzp6b29rb0B6b29rby5jb20KLWxpY2Vuc2UsLGAsVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotcmVmZXJlbmNlL2RhdGFtb2RlbCwsOnN0ZXAsYVtpOmo6c3RlcF0KK3BhY2thZ2luZy9leGFtcGxlcywsYCxUaGlzIGlzIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgYGBmb29iYXJgYCBwcm9qZWN0LgorcGFja2FnaW5nL3NldHVwY2ZnLCw6OixEZXZlbG9wbWVudCBTdGF0dXMgOjogMyAtIEFscGhhCitwYWNrYWdpbmcvc2V0dXBjZmcsLDo6LExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IE1vemlsbGEgUHVibGljIExpY2Vuc2UgMS4xIChNUEwgMS4xKQorcGFja2FnaW5nL3NldHVwc2NyaXB0LCw6OiwiJ0RldmVsb3BtZW50IFN0YXR1cyA6OiA0IC0gQmV0YScsIgorcGFja2FnaW5nL3NldHVwc2NyaXB0LCw6OiwiJ0Vudmlyb25tZW50IDo6IENvbnNvbGUnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidFbnZpcm9ubWVudCA6OiBXZWIgRW52aXJvbm1lbnQnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidJbnRlbmRlZCBBdWRpZW5jZSA6OiBEZXZlbG9wZXJzJywiCitwYWNrYWdpbmcvc2V0dXBzY3JpcHQsLDo6LCInSW50ZW5kZWQgQXVkaWVuY2UgOjogRW5kIFVzZXJzL0Rlc2t0b3AnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidJbnRlbmRlZCBBdWRpZW5jZSA6OiBTeXN0ZW0gQWRtaW5pc3RyYXRvcnMnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBQeXRob24gU29mdHdhcmUgRm91bmRhdGlvbiBMaWNlbnNlJywiCitwYWNrYWdpbmcvc2V0dXBzY3JpcHQsLDo6LCInT3BlcmF0aW5nIFN5c3RlbSA6OiBNYWNPUyA6OiBNYWNPUyBYJywiCitwYWNrYWdpbmcvc2V0dXBzY3JpcHQsLDo6LCInT3BlcmF0aW5nIFN5c3RlbSA6OiBNaWNyb3NvZnQgOjogV2luZG93cycsIgorcGFja2FnaW5nL3NldHVwc2NyaXB0LCw6OiwiJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVgnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24nLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCcsIgorcGFja2FnaW5nL3NldHVwc2NyaXB0LCw6OiwiJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcycsIgorcGFja2FnaW5nL3NldHVwc2NyaXB0LCw6OiwiJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IEJ1ZyBUcmFja2luZycsIgorcGFja2FnaW5nL3R1dG9yaWFsLCw6OiwxKSBMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoR1BMKQorcGFja2FnaW5nL3R1dG9yaWFsLCw6OiwyKSBMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgTGlicmFyeSBvciBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoTEdQTCkKK3BhY2thZ2luZy90dXRvcmlhbCwsOjosY2xhc3NpZmllciA9IERldmVsb3BtZW50IFN0YXR1cyA6OiAzIC0gQWxwaGEKK3BhY2thZ2luZy90dXRvcmlhbCwsOjosTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKEdQTCkKK3BhY2thZ2luZy90dXRvcmlhbCwsOjosVHlwZSB0aGUgbnVtYmVyIG9mIHRoZSBsaWNlbnNlIHlvdSB3aXNoIHRvIHVzZSBvciA/IHRvIHRyeSBhZ2Fpbjo6IDEKIHJlZmVyZW5jZS9kYXRhbW9kZWwsLDptYXgsCi1yZWZlcmVuY2UvZXhwcmVzc2lvbnMsLDppbmRleCx4W2luZGV4OmluZGV4XQorcmVmZXJlbmNlL2RhdGFtb2RlbCwsOnN0ZXAsYVtpOmo6c3RlcF0KIHJlZmVyZW5jZS9leHByZXNzaW9ucywsOmRhdHVtLHtrZXk6ZGF0dW0uLi59CiByZWZlcmVuY2UvZXhwcmVzc2lvbnMsLGAsYGV4cHJlc3Npb25zLi4uYAorcmVmZXJlbmNlL2V4cHJlc3Npb25zLCw6aW5kZXgseFtpbmRleDppbmRleF0KIHJlZmVyZW5jZS9ncmFtbWFyLCw6b3V0cHV0LCNkaWFncmFtOm91dHB1dAogcmVmZXJlbmNlL2dyYW1tYXIsLDpydWxlcywjZGlhZ3JhbTpydWxlcwotcmVmZXJlbmNlL2dyYW1tYXIsLDp0b2tlbiwjZGlhZ3JhbTp0b2tlbgogcmVmZXJlbmNlL2dyYW1tYXIsLGAsJ2AnIHRlc3RsaXN0MSAnYCcKLXJlZmVyZW5jZS9sZXhpY2FsX2FuYWx5c2lzLCw6ZmlsZWVuY29kaW5nLCMgdmltOmZpbGVlbmNvZGluZz08ZW5jb2RpbmctbmFtZT4KK3JlZmVyZW5jZS9ncmFtbWFyLCw6dG9rZW4sI2RpYWdyYW06dG9rZW4KIHJlZmVyZW5jZS9sZXhpY2FsX2FuYWx5c2lzLCxgLCIsICAgICAgIDogICAgICAgLiAgICAgICBgICAgICAgID0gICAgICAgOyIKLXR1dG9yaWFsL2RhdGFzdHJ1Y3R1cmVzLCw6dmFsdWUsa2V5OnZhbHVlIHBhaXJzIHdpdGhpbiB0aGUgYnJhY2VzIGFkZHMgaW5pdGlhbCBrZXk6dmFsdWUgcGFpcnMKK3JlZmVyZW5jZS9sZXhpY2FsX2FuYWx5c2lzLCxgLCQgICAgICAgPyAgICAgICBgCityZWZlcmVuY2UvbGV4aWNhbF9hbmFseXNpcywsOmZpbGVlbmNvZGluZywjIHZpbTpmaWxlZW5jb2Rpbmc9PGVuY29kaW5nLW5hbWU+CiB0dXRvcmlhbC9kYXRhc3RydWN0dXJlcywsOnZhbHVlLEl0IGlzIGFsc28gcG9zc2libGUgdG8gZGVsZXRlIGEga2V5OnZhbHVlCi10dXRvcmlhbC9zdGRsaWIyLCw6c3RhcnQsImZpZWxkcyA9IHN0cnVjdC51bnBhY2soJzxJSUlISCcsIGRhdGFbc3RhcnQ6c3RhcnQrMTZdKSIKLXR1dG9yaWFsL3N0ZGxpYjIsLDpzdGFydCxleHRyYSA9IGRhdGFbc3RhcnQ6c3RhcnQrZXh0cmFfc2l6ZV0KLXR1dG9yaWFsL3N0ZGxpYjIsLDpzdGFydCxmaWxlbmFtZSA9IGRhdGFbc3RhcnQ6c3RhcnQrZmlsZW5hbWVzaXplXQordHV0b3JpYWwvZGF0YXN0cnVjdHVyZXMsLDp2YWx1ZSxrZXk6dmFsdWUgcGFpcnMgd2l0aGluIHRoZSBicmFjZXMgYWRkcyBpbml0aWFsIGtleTp2YWx1ZSBwYWlycwogdHV0b3JpYWwvc3RkbGliMiwsOmNvbmZpZywibG9nZ2luZy53YXJuaW5nKCdXYXJuaW5nOmNvbmZpZyBmaWxlICVzIG5vdCBmb3VuZCcsICdzZXJ2ZXIuY29uZicpIgogdHV0b3JpYWwvc3RkbGliMiwsOmNvbmZpZyxXQVJOSU5HOnJvb3Q6V2FybmluZzpjb25maWcgZmlsZSBzZXJ2ZXIuY29uZiBub3QgZm91bmQKIHR1dG9yaWFsL3N0ZGxpYjIsLDpDcml0aWNhbCxDUklUSUNBTDpyb290OkNyaXRpY2FsIGVycm9yIC0tIHNodXR0aW5nIGRvd24KQEAgLTE0MSwxNSArMjUxLDE2IEBACiB0dXRvcmlhbC9zdGRsaWIyLCw6cm9vdCxDUklUSUNBTDpyb290OkNyaXRpY2FsIGVycm9yIC0tIHNodXR0aW5nIGRvd24KIHR1dG9yaWFsL3N0ZGxpYjIsLDpyb290LEVSUk9SOnJvb3Q6RXJyb3Igb2NjdXJyZWQKIHR1dG9yaWFsL3N0ZGxpYjIsLDpyb290LFdBUk5JTkc6cm9vdDpXYXJuaW5nOmNvbmZpZyBmaWxlIHNlcnZlci5jb25mIG5vdCBmb3VuZAordHV0b3JpYWwvc3RkbGliMiwsOnN0YXJ0LGV4dHJhID0gZGF0YVtzdGFydDpzdGFydCtleHRyYV9zaXplXQordHV0b3JpYWwvc3RkbGliMiwsOnN0YXJ0LCJmaWVsZHMgPSBzdHJ1Y3QudW5wYWNrKCc8SUlJSEgnLCBkYXRhW3N0YXJ0OnN0YXJ0KzE2XSkiCit0dXRvcmlhbC9zdGRsaWIyLCw6c3RhcnQsZmlsZW5hbWUgPSBkYXRhW3N0YXJ0OnN0YXJ0K2ZpbGVuYW1lc2l6ZV0KIHR1dG9yaWFsL3N0ZGxpYjIsLDpXYXJuaW5nLFdBUk5JTkc6cm9vdDpXYXJuaW5nOmNvbmZpZyBmaWxlIHNlcnZlci5jb25mIG5vdCBmb3VuZAotdXNpbmcvY21kbGluZSwsOmxpbmUsZmlsZTpsaW5lOiBjYXRlZ29yeTogbWVzc2FnZQogdXNpbmcvY21kbGluZSwsOmNhdGVnb3J5LGFjdGlvbjptZXNzYWdlOmNhdGVnb3J5Om1vZHVsZTpsaW5lCit1c2luZy9jbWRsaW5lLCw6ZXJyb3JoYW5kbGVyLDplcnJvcmhhbmRsZXIKIHVzaW5nL2NtZGxpbmUsLDpsaW5lLGFjdGlvbjptZXNzYWdlOmNhdGVnb3J5Om1vZHVsZTpsaW5lCit1c2luZy9jbWRsaW5lLCw6bGluZSxmaWxlOmxpbmU6IGNhdGVnb3J5OiBtZXNzYWdlCiB1c2luZy9jbWRsaW5lLCw6bWVzc2FnZSxhY3Rpb246bWVzc2FnZTpjYXRlZ29yeTptb2R1bGU6bGluZQogdXNpbmcvY21kbGluZSwsOm1vZHVsZSxhY3Rpb246bWVzc2FnZTpjYXRlZ29yeTptb2R1bGU6bGluZQotdXNpbmcvY21kbGluZSwsOmVycm9yaGFuZGxlciw6ZXJyb3JoYW5kbGVyCi11c2luZy93aW5kb3dzLDE2MixgLGBgIHRoaXMgZml4ZXMgc3ludGF4IGhpZ2hsaWdodGluZyBlcnJvcnMgaW4gc29tZSBlZGl0b3JzIGR1ZSB0byB0aGUgXFxcXCBoYWNrZXJ5Ci11c2luZy93aW5kb3dzLDE3MCxgLGBgCiB3aGF0c25ldy8yLjAsNDE4LDpsZW4sCiB3aGF0c25ldy8yLjMsLDo6LAogd2hhdHNuZXcvMi4zLCw6Y29uZmlnLApAQCAtMTYzLDExMyArMjc0LDI2IEBACiB3aGF0c25ldy8yLjUsLDptZW1vcnksOm1lbW9yeToKIHdoYXRzbmV3LzIuNSwsOnN0ZXAsW3N0YXJ0OnN0b3A6c3RlcF0KIHdoYXRzbmV3LzIuNSwsOnN0b3AsW3N0YXJ0OnN0b3A6c3RlcF0KLWRpc3R1dGlscy9leGFtcGxlcywyNjcsYCxUaGlzIGlzIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgYGBmb29iYXJgYCBwYWNrYWdlLgotZmFxL3Byb2dyYW1taW5nLCw6cmVkdWNlLCJwcmludCgobGFtYmRhIFJ1LFJvLEl1LElvLElNLFN4LFN5OnJlZHVjZShsYW1iZGEgeCx5OngreSxtYXAobGFtYmRhIHksIgotZmFxL3Byb2dyYW1taW5nLCw6cmVkdWNlLCJTeD1TeCxTeT1TeTpyZWR1Y2UobGFtYmRhIHgseTp4K3ksbWFwKGxhbWJkYSB4LHhjPVJ1LHljPXljLFJ1PVJ1LFJvPVJvLCIKLWZhcS9wcm9ncmFtbWluZywsOmNociwiPj00LjApIG9yIDErZih4Yyx5Yyx4KngteSp5K3hjLDIuMCp4KnkreWMsay0xLGYpOmYoeGMseWMseCx5LGssZik6Y2hyKCIKLWZhcS9wcm9ncmFtbWluZywsOjosZm9yIHggaW4gc2VxdWVuY2VbOjotMV06Ci1mYXEvd2luZG93cywyMjksOkVPRixAc2V0bG9jYWwgZW5hYmxlZXh0ZW5zaW9ucyAmIHB5dGhvbiAteCAlfmYwICUqICYgZ290byA6RU9GCi1mYXEvd2luZG93cywzOTMsOlJFRywucHkgOlJFR19TWjogYzpcPHBhdGggdG8gcHl0aG9uPlxweXRob24uZXhlIC11ICVzICVzCi1saWJyYXJ5L2Jpc2VjdCwzMiw6aGksYWxsKHZhbCA+PSB4IGZvciB2YWwgaW4gYVtpOmhpXSkKLWxpYnJhcnkvYmlzZWN0LDQyLDpoaSxhbGwodmFsID4geCBmb3IgdmFsIGluIGFbaTpoaV0pCi1saWJyYXJ5L2h0dHAuY2xpZW50LDUyLDpwb3J0LGhvc3Q6cG9ydAotbGlicmFyeS9ubnRwbGliLCw6Ynl0ZXMsOmJ5dGVzCi1saWJyYXJ5L25udHBsaWIsLDpsaW5lcyw6bGluZXMKLWxpYnJhcnkvbm50cGxpYiwsOmxpbmVzLCJbJ3hyZWYnLCAnZnJvbScsICc6bGluZXMnLCAnOmJ5dGVzJywgJ3JlZmVyZW5jZXMnLCAnZGF0ZScsICdtZXNzYWdlLWlkJywgJ3N1YmplY3QnXSIKLWxpYnJhcnkvbm50cGxpYiwsOmJ5dGVzLCJbJ3hyZWYnLCAnZnJvbScsICc6bGluZXMnLCAnOmJ5dGVzJywgJ3JlZmVyZW5jZXMnLCAnZGF0ZScsICdtZXNzYWdlLWlkJywgJ3N1YmplY3QnXSIKLWxpYnJhcnkvcGlja2xlLCw6bWVtb3J5LCJjb25uID0gc3FsaXRlMy5jb25uZWN0KCIiOm1lbW9yeToiIikiCi1saWJyYXJ5L3Byb2ZpbGUsLDpsaW5lbm8sIihzb3J0IGJ5IGZpbGVuYW1lOmxpbmVubyksIgotbGlicmFyeS9zb2NrZXQsLDo6LCIoMTAsIDEsIDYsICcnLCAoJzIwMDE6ODg4OjIwMDA6ZDo6YTInLCA4MCwgMCwgMCkpXSIKLWxpYnJhcnkvc3RkdHlwZXMsLDplbmQsc1tzdGFydDplbmRdCi1saWJyYXJ5L3N0ZHR5cGVzLCw6ZW5kLHNbc3RhcnQ6ZW5kXQotbGlicmFyeS91cmxsaWIucmVxdWVzdCwsOmNsb3NlLENvbm5lY3Rpb246Y2xvc2UKLWxpYnJhcnkvdXJsbGliLnJlcXVlc3QsLDpwYXNzd29yZCwiIiJqb2U6cGFzc3dvcmRAcHl0aG9uLm9yZyIiIgotbGlicmFyeS91cmxsaWIucmVxdWVzdCwsOmxhbmcsInhtbG5zPSIiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIiIHhtbDpsYW5nPSIiZW4iIiBsYW5nPSIiZW4iIj5cblxuPGhlYWQ+XG4iCi1saWJyYXJ5L3htbHJwYy5jbGllbnQsMTAzLDpwYXNzLGh0dHA6Ly91c2VyOnBhc3NAaG9zdDpwb3J0L3BhdGgKLWxpYnJhcnkveG1scnBjLmNsaWVudCwxMDMsOnBvcnQsaHR0cDovL3VzZXI6cGFzc0Bob3N0OnBvcnQvcGF0aAotbGlicmFyeS94bWxycGMuY2xpZW50LDEwMyw6cGFzcyx1c2VyOnBhc3MKLWxpY2Vuc2UsLGAsKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkKLWxpY2Vuc2UsLGAsKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEVSSUMgWU9VTkcgYGBBUyBJUycnIEFORAotbGljZW5zZSwsYCwiYGBTb2Z0d2FyZScnKSwgdG8gZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIgotbGljZW5zZSwsYCwiVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIGBgQVMgSVMnJywgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwiCi1yZWZlcmVuY2UvbGV4aWNhbF9hbmFseXNpcyw3MDQsYCwkICAgICAgID8gICAgICAgYAotd2hhdHNuZXcvMi43LDczNSw6U3VuZGF5LCcyMDA5OjQ6U3VuZGF5Jwotd2hhdHNuZXcvMi43LDg2Miw6OiwiZXhwb3J0IFBZVEhPTldBUk5JTkdTPWFsbCxlcnJvcjo6OkNvb2tpZTowIgotd2hhdHNuZXcvMi43LDg2Miw6Q29va2llLCJleHBvcnQgUFlUSE9OV0FSTklOR1M9YWxsLGVycm9yOjo6Q29va2llOjAiCi13aGF0c25ldy8yLjcsMTYxOSw6Oiw+Pj4gdXJscGFyc2UudXJscGFyc2UoJ2h0dHA6Ly9bMTA4MDo6ODo4MDA6MjAwQzo0MTdBXS9mb28nKQogd2hhdHNuZXcvMi43LDE2MTksOjosIlBhcnNlUmVzdWx0KHNjaGVtZT0naHR0cCcsIG5ldGxvYz0nWzEwODA6Ojg6ODAwOjIwMEM6NDE3QV0nLCIKLWxpYnJhcnkvY29uZmlncGFyc2VyLCxgLCMgU2V0IHRoZSBvcHRpb25hbCBgcmF3YCBhcmd1bWVudCBvZiBnZXQoKSB0byBUcnVlIGlmIHlvdSB3aXNoIHRvIGRpc2FibGUKLWxpYnJhcnkvY29uZmlncGFyc2VyLCxgLCMgVGhlIG9wdGlvbmFsIGB2YXJzYCBhcmd1bWVudCBpcyBhIGRpY3Qgd2l0aCBtZW1iZXJzIHRoYXQgd2lsbCB0YWtlCi1saWJyYXJ5L2NvbmZpZ3BhcnNlciwsYCwjIFRoZSBvcHRpb25hbCBgZmFsbGJhY2tgIGFyZ3VtZW50IGNhbiBiZSB1c2VkIHRvIHByb3ZpZGUgYSBmYWxsYmFjayB2YWx1ZQotbGlicmFyeS9jb25maWdwYXJzZXIsLDpvcHRpb24sJHtzZWN0aW9uOm9wdGlvbn0KLWxpYnJhcnkvY29uZmlncGFyc2VyLCw6c3lzdGVtLHBhdGg6ICR7Q29tbW9uOnN5c3RlbV9kaXJ9L0xpYnJhcnkvRnJhbWV3b3Jrcy8KLWxpYnJhcnkvY29uZmlncGFyc2VyLCw6aG9tZSxteV9kaXI6ICR7Q29tbW9uOmhvbWVfZGlyfS90d29zaGVkcwotbGlicmFyeS9jb25maWdwYXJzZXIsLDpwYXRoLHB5dGhvbl9kaXI6ICR7RnJhbWV3b3JrczpwYXRofS9QeXRob24vVmVyc2lvbnMvJHtGcmFtZXdvcmtzOlB5dGhvbn0KLWxpYnJhcnkvY29uZmlncGFyc2VyLCw6UHl0aG9uLHB5dGhvbl9kaXI6ICR7RnJhbWV3b3JrczpwYXRofS9QeXRob24vVmVyc2lvbnMvJHtGcmFtZXdvcmtzOlB5dGhvbn0KLWxpYnJhcnkvcGRiLCw6bGluZW5vLFtmaWxlbmFtZTpsaW5lbm8gfCBicG51bWJlciBbYnBudW1iZXIgLi4uXV0KLWxpYnJhcnkvcGRiLCw6bGluZW5vLGZpbGVuYW1lOmxpbmVubwotbGlicmFyeS9sb2dnaW5nLCw6V2F0Y2gsV0FSTklORzpyb290OldhdGNoIG91dCEKLWxpYnJhcnkvbG9nZ2luZywsOlNvLElORk86cm9vdDpTbyBzaG91bGQgdGhpcwotbGlicmFyeS9sb2dnaW5nLCw6U3RhcnRlZCxJTkZPOnJvb3Q6U3RhcnRlZAotbGlicmFyeS9sb2dnaW5nLCw6RG9pbmcsSU5GTzpyb290OkRvaW5nIHNvbWV0aGluZwotbGlicmFyeS9sb2dnaW5nLCw6RmluaXNoZWQsSU5GTzpyb290OkZpbmlzaGVkCi1saWJyYXJ5L2xvZ2dpbmcsLDpMb29rLFdBUk5JTkc6cm9vdDpMb29rIGJlZm9yZSB5b3UgbGVhcCEKLWxpYnJhcnkvbG9nZ2luZywsOlNvLElORk86U28gc2hvdWxkIHRoaXMKLWxpYnJhcnkvbG9nZ2luZywsOmxvZ2dlcixzZXZlcml0eTpsb2dnZXIgbmFtZTptZXNzYWdlCi1saWJyYXJ5L2xvZ2dpbmcsLDptZXNzYWdlLHNldmVyaXR5OmxvZ2dlciBuYW1lOm1lc3NhZ2UKLXdoYXRzbmV3LzMuMiwsOmRpcmVjdG9yeSwuLi4gICAke2J1aWxkb3V0OmRpcmVjdG9yeX0vZG93bmxvYWRzL2Rpc3QKLXdoYXRzbmV3LzMuMiwsOmxvY2F0aW9uLC4uLiB6b3BlOS1sb2NhdGlvbiA9ICR7em9wZTk6bG9jYXRpb259Ci13aGF0c25ldy8zLjIsLDpwcmVmaXgsLi4uIHpvcGUtY29uZiA9ICR7Y3VzdG9tOnByZWZpeH0vZXRjL3pvcGUuY29uZgotaG93dG8vbG9nZ2luZywsOnJvb3QsV0FSTklORzpyb290OldhdGNoIG91dCEKLWhvd3RvL2xvZ2dpbmcsLDpXYXRjaCxXQVJOSU5HOnJvb3Q6V2F0Y2ggb3V0IQotaG93dG8vbG9nZ2luZywsOnJvb3QsREVCVUc6cm9vdDpUaGlzIG1lc3NhZ2Ugc2hvdWxkIGdvIHRvIHRoZSBsb2cgZmlsZQotaG93dG8vbG9nZ2luZywsOlRoaXMsREVCVUc6cm9vdDpUaGlzIG1lc3NhZ2Ugc2hvdWxkIGdvIHRvIHRoZSBsb2cgZmlsZQotaG93dG8vbG9nZ2luZywsOnJvb3QsSU5GTzpyb290OlNvIHNob3VsZCB0aGlzCi1ob3d0by9sb2dnaW5nLCw6U28sSU5GTzpyb290OlNvIHNob3VsZCB0aGlzCi1ob3d0by9sb2dnaW5nLCw6cm9vdCwiV0FSTklORzpyb290OkFuZCB0aGlzLCB0b28iCi1ob3d0by9sb2dnaW5nLCw6QW5kLCJXQVJOSU5HOnJvb3Q6QW5kIHRoaXMsIHRvbyIKLWhvd3RvL2xvZ2dpbmcsLDpyb290LElORk86cm9vdDpTdGFydGVkCi1ob3d0by9sb2dnaW5nLCw6U3RhcnRlZCxJTkZPOnJvb3Q6U3RhcnRlZAotaG93dG8vbG9nZ2luZywsOnJvb3QsSU5GTzpyb290OkRvaW5nIHNvbWV0aGluZwotaG93dG8vbG9nZ2luZywsOkRvaW5nLElORk86cm9vdDpEb2luZyBzb21ldGhpbmcKLWhvd3RvL2xvZ2dpbmcsLDpyb290LElORk86cm9vdDpGaW5pc2hlZAotaG93dG8vbG9nZ2luZywsOkZpbmlzaGVkLElORk86cm9vdDpGaW5pc2hlZAotaG93dG8vbG9nZ2luZywsOnJvb3QsV0FSTklORzpyb290Okxvb2sgYmVmb3JlIHlvdSBsZWFwIQotaG93dG8vbG9nZ2luZywsOkxvb2ssV0FSTklORzpyb290Okxvb2sgYmVmb3JlIHlvdSBsZWFwIQotaG93dG8vbG9nZ2luZywsOlRoaXMsREVCVUc6VGhpcyBtZXNzYWdlIHNob3VsZCBhcHBlYXIgb24gdGhlIGNvbnNvbGUKLWhvd3RvL2xvZ2dpbmcsLDpTbyxJTkZPOlNvIHNob3VsZCB0aGlzCi1ob3d0by9sb2dnaW5nLCw6QW5kLCJXQVJOSU5HOkFuZCB0aGlzLCB0b28iCi1ob3d0by9sb2dnaW5nLCw6bG9nZ2VyLHNldmVyaXR5OmxvZ2dlciBuYW1lOm1lc3NhZ2UKLWhvd3RvL2xvZ2dpbmcsLDptZXNzYWdlLHNldmVyaXR5OmxvZ2dlciBuYW1lOm1lc3NhZ2UKLWxpYnJhcnkvbG9nZ2luZy5oYW5kbGVycywsOnBvcnQsaG9zdDpwb3J0Ci1saWJyYXJ5L2ltYXBsaWIsMTE2LDpNTSwiIiJERC1NbW0tWVlZWSBISDpNTTpTUyIKLWxpYnJhcnkvaW1hcGxpYiwxMTYsOlNTLCIiIkRELU1tbS1ZWVlZIEhIOk1NOlNTIgotd2hhdHNuZXcvMy4yLCw6OiwiJCBleHBvcnQgUFlUSE9OV0FSTklOR1M9J2lnbm9yZTo6UnVudGltZVdhcm5pbmc6OixvbmNlOjpVbmljb2RlV2FybmluZzo6JyIKLWhvd3RvL3B5cG9ydGluZyw3NSw6OiwjIG1ha2Ugc3VyZSB0byB1c2UgOjogUHl0aG9uICphbmQqIDo6IFB5dGhvbiA6OiAzIHNvCi1ob3d0by9weXBvcnRpbmcsNzUsOjosIidQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24nLCIKLWhvd3RvL3B5cG9ydGluZyw3NSw6OiwnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IDMnCi13aGF0c25ldy8zLjIsLDpneiwiPj4+IHdpdGggdGFyZmlsZS5vcGVuKG5hbWU9J215YXJjaGl2ZS50YXIuZ3onLCBtb2RlPSd3Omd6JykgYXMgdGY6Igotd2hhdHNuZXcvMy4yLCw6ZGlyZWN0b3J5LCR7YnVpbGRvdXQ6ZGlyZWN0b3J5fS9kb3dubG9hZHMvZGlzdAotd2hhdHNuZXcvMy4yLCw6bG9jYXRpb24sem9wZTktbG9jYXRpb24gPSAke3pvcGU5OmxvY2F0aW9ufQotd2hhdHNuZXcvMy4yLCw6cHJlZml4LHpvcGUtY29uZiA9ICR7Y3VzdG9tOnByZWZpeH0vZXRjL3pvcGUuY29uZgotd2hhdHNuZXcvMy4yLCw6YmVlZiw+Pj4gdXJsbGliLnBhcnNlLnVybHBhcnNlKCdodHRwOi8vW2RlYWQ6YmVlZjpjYWZlOjU0MTc6YWZmZTo4RkEzOmRlYWY6ZmVlZF0vZm9vLycpCi13aGF0c25ldy8zLjIsLDpjYWZlLD4+PiB1cmxsaWIucGFyc2UudXJscGFyc2UoJ2h0dHA6Ly9bZGVhZDpiZWVmOmNhZmU6NTQxNzphZmZlOjhGQTM6ZGVhZjpmZWVkXS9mb28vJykKLXdoYXRzbmV3LzMuMiwsOmFmZmUsPj4+IHVybGxpYi5wYXJzZS51cmxwYXJzZSgnaHR0cDovL1tkZWFkOmJlZWY6Y2FmZTo1NDE3OmFmZmU6OEZBMzpkZWFmOmZlZWRdL2Zvby8nKQotd2hhdHNuZXcvMy4yLCw6ZGVhZiw+Pj4gdXJsbGliLnBhcnNlLnVybHBhcnNlKCdodHRwOi8vW2RlYWQ6YmVlZjpjYWZlOjU0MTc6YWZmZTo4RkEzOmRlYWY6ZmVlZF0vZm9vLycpCi13aGF0c25ldy8zLjIsLDpmZWVkLD4+PiB1cmxsaWIucGFyc2UudXJscGFyc2UoJ2h0dHA6Ly9bZGVhZDpiZWVmOmNhZmU6NTQxNzphZmZlOjhGQTM6ZGVhZjpmZWVkXS9mb28vJykKLXdoYXRzbmV3LzMuMiwsOmJlZWYsIm5ldGxvYz0nW2RlYWQ6YmVlZjpjYWZlOjU0MTc6YWZmZTo4RkEzOmRlYWY6ZmVlZF0nLCIKLXdoYXRzbmV3LzMuMiwsOmNhZmUsIm5ldGxvYz0nW2RlYWQ6YmVlZjpjYWZlOjU0MTc6YWZmZTo4RkEzOmRlYWY6ZmVlZF0nLCIKK3doYXRzbmV3LzIuNywxNjE5LDo6LD4+PiB1cmxwYXJzZS51cmxwYXJzZSgnaHR0cDovL1sxMDgwOjo4OjgwMDoyMDBDOjQxN0FdL2ZvbycpCit3aGF0c25ldy8yLjcsNzM1LDpTdW5kYXksJzIwMDk6NDpTdW5kYXknCit3aGF0c25ldy8yLjcsODYyLDpDb29raWUsImV4cG9ydCBQWVRIT05XQVJOSU5HUz1hbGwsZXJyb3I6OjpDb29raWU6MCIKK3doYXRzbmV3LzIuNyw4NjIsOjosImV4cG9ydCBQWVRIT05XQVJOSU5HUz1hbGwsZXJyb3I6OjpDb29raWU6MCIKIHdoYXRzbmV3LzMuMiwsOmFmZmUsIm5ldGxvYz0nW2RlYWQ6YmVlZjpjYWZlOjU0MTc6YWZmZTo4RkEzOmRlYWY6ZmVlZF0nLCIKK3doYXRzbmV3LzMuMiwsOmFmZmUsPj4+IHVybGxpYi5wYXJzZS51cmxwYXJzZSgnaHR0cDovL1tkZWFkOmJlZWY6Y2FmZTo1NDE3OmFmZmU6OEZBMzpkZWFmOmZlZWRdL2Zvby8nKQord2hhdHNuZXcvMy4yLCw6YmVlZiwibmV0bG9jPSdbZGVhZDpiZWVmOmNhZmU6NTQxNzphZmZlOjhGQTM6ZGVhZjpmZWVkXScsIgord2hhdHNuZXcvMy4yLCw6YmVlZiw+Pj4gdXJsbGliLnBhcnNlLnVybHBhcnNlKCdodHRwOi8vW2RlYWQ6YmVlZjpjYWZlOjU0MTc6YWZmZTo4RkEzOmRlYWY6ZmVlZF0vZm9vLycpCit3aGF0c25ldy8zLjIsLDpjYWZlLCJuZXRsb2M9J1tkZWFkOmJlZWY6Y2FmZTo1NDE3OmFmZmU6OEZBMzpkZWFmOmZlZWRdJywiCit3aGF0c25ldy8zLjIsLDpjYWZlLD4+PiB1cmxsaWIucGFyc2UudXJscGFyc2UoJ2h0dHA6Ly9bZGVhZDpiZWVmOmNhZmU6NTQxNzphZmZlOjhGQTM6ZGVhZjpmZWVkXS9mb28vJykKIHdoYXRzbmV3LzMuMiwsOmRlYWYsIm5ldGxvYz0nW2RlYWQ6YmVlZjpjYWZlOjU0MTc6YWZmZTo4RkEzOmRlYWY6ZmVlZF0nLCIKK3doYXRzbmV3LzMuMiwsOmRlYWYsPj4+IHVybGxpYi5wYXJzZS51cmxwYXJzZSgnaHR0cDovL1tkZWFkOmJlZWY6Y2FmZTo1NDE3OmFmZmU6OEZBMzpkZWFmOmZlZWRdL2Zvby8nKQord2hhdHNuZXcvMy4yLCw6ZGlyZWN0b3J5LC4uLiAgICR7YnVpbGRvdXQ6ZGlyZWN0b3J5fS9kb3dubG9hZHMvZGlzdAord2hhdHNuZXcvMy4yLCw6ZGlyZWN0b3J5LCR7YnVpbGRvdXQ6ZGlyZWN0b3J5fS9kb3dubG9hZHMvZGlzdAord2hhdHNuZXcvMy4yLCw6OiwiJCBleHBvcnQgUFlUSE9OV0FSTklOR1M9J2lnbm9yZTo6UnVudGltZVdhcm5pbmc6OixvbmNlOjpVbmljb2RlV2FybmluZzo6JyIKIHdoYXRzbmV3LzMuMiwsOmZlZWQsIm5ldGxvYz0nW2RlYWQ6YmVlZjpjYWZlOjU0MTc6YWZmZTo4RkEzOmRlYWY6ZmVlZF0nLCIKLWxpYnJhcnkvcHByaW50LDIwOSw6OiwiJ2NsYXNzaWZpZXJzJzogWydEZXZlbG9wbWVudCBTdGF0dXMgOjogNCAtIEJldGEnLCIKLWxpYnJhcnkvcHByaW50LDIwOSw6OiwiJ0ludGVuZGVkIEF1ZGllbmNlIDo6IERldmVsb3BlcnMnLCIKLWxpYnJhcnkvcHByaW50LDIwOSw6OiwiJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IE1JVCBMaWNlbnNlJywiCi1saWJyYXJ5L3BwcmludCwyMDksOjosIidOYXR1cmFsIExhbmd1YWdlIDo6IEVuZ2xpc2gnLCIKLWxpYnJhcnkvcHByaW50LDIwOSw6OiwiJ09wZXJhdGluZyBTeXN0ZW0gOjogT1MgSW5kZXBlbmRlbnQnLCIKLWxpYnJhcnkvcHByaW50LDIwOSw6OiwiJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbicsIgotbGlicmFyeS9wcHJpbnQsMjA5LDo6LCInUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IDInLCIKLWxpYnJhcnkvcHByaW50LDIwOSw6OiwiJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjYnLCIKLWxpYnJhcnkvcHByaW50LDIwOSw6OiwiJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjcnLCIKLWxpYnJhcnkvcHByaW50LDIwOSw6OiwiJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcycsIgotbGlicmFyeS9wcHJpbnQsMjA5LDo6LCInVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzIDo6IFB5dGhvbiBNb2R1bGVzJ10sIgord2hhdHNuZXcvMy4yLCw6ZmVlZCw+Pj4gdXJsbGliLnBhcnNlLnVybHBhcnNlKCdodHRwOi8vW2RlYWQ6YmVlZjpjYWZlOjU0MTc6YWZmZTo4RkEzOmRlYWY6ZmVlZF0vZm9vLycpCit3aGF0c25ldy8zLjIsLDpneiwiPj4+IHdpdGggdGFyZmlsZS5vcGVuKG5hbWU9J215YXJjaGl2ZS50YXIuZ3onLCBtb2RlPSd3Omd6JykgYXMgdGY6Igord2hhdHNuZXcvMy4yLCw6bG9jYXRpb24sLi4uIHpvcGU5LWxvY2F0aW9uID0gJHt6b3BlOTpsb2NhdGlvbn0KK3doYXRzbmV3LzMuMiwsOmxvY2F0aW9uLHpvcGU5LWxvY2F0aW9uID0gJHt6b3BlOTpsb2NhdGlvbn0KK3doYXRzbmV3LzMuMiwsOnByZWZpeCwuLi4gem9wZS1jb25mID0gJHtjdXN0b206cHJlZml4fS9ldGMvem9wZS5jb25mCit3aGF0c25ldy8zLjIsLDpwcmVmaXgsem9wZS1jb25mID0gJHtjdXN0b206cHJlZml4fS9ldGMvem9wZS5jb25mCmRpZmYgLS1naXQgYS9Eb2MvdHV0b3JpYWwvY2xhc3Nlcy5yc3QgYi9Eb2MvdHV0b3JpYWwvY2xhc3Nlcy5yc3QKaW5kZXggNjhjNGU1ZC4uMzMxNzFjZCAxMDA2NDQKLS0tIGEvRG9jL3R1dG9yaWFsL2NsYXNzZXMucnN0CisrKyBiL0RvYy90dXRvcmlhbC9jbGFzc2VzLnJzdApAQCAtNjk1LDkgKzY5NSw5IEBACiAgICBjbGFzcyBEKEMpOgogICAgICAgIHBhc3MKIAotICAgZm9yIGMgaW4gW0IsIEMsIERdOgorICAgZm9yIGNscyBpbiBbQiwgQywgRF06CiAgICAgICAgdHJ5OgotICAgICAgICAgICByYWlzZSBjKCkKKyAgICAgICAgICAgcmFpc2UgY2xzKCkKICAgICAgICBleGNlcHQgRDoKICAgICAgICAgICAgcHJpbnQoIkQiKQogICAgICAgIGV4Y2VwdCBDOgpkaWZmIC0tZ2l0IGEvRG9jL3R1dG9yaWFsL2RhdGFzdHJ1Y3R1cmVzLnJzdCBiL0RvYy90dXRvcmlhbC9kYXRhc3RydWN0dXJlcy5yc3QKaW5kZXggNWZiNzJmZC4uODNiMzAxMiAxMDA2NDQKLS0tIGEvRG9jL3R1dG9yaWFsL2RhdGFzdHJ1Y3R1cmVzLnJzdAorKysgYi9Eb2MvdHV0b3JpYWwvZGF0YXN0cnVjdHVyZXMucnN0CkBAIC0xOSwxMyArMTksMTMgQEAKIC4uIG1ldGhvZDo6IGxpc3QuYXBwZW5kKHgpCiAgICA6bm9pbmRleDoKIAotICAgQWRkIGFuIGl0ZW0gdG8gdGhlIGVuZCBvZiB0aGUgbGlzdDsgZXF1aXZhbGVudCB0byBgYGFbbGVuKGEpOl0gPSBbeF1gYC4KKyAgIEFkZCBhbiBpdGVtIHRvIHRoZSBlbmQgb2YgdGhlIGxpc3QuICBFcXVpdmFsZW50IHRvIGBgYVtsZW4oYSk6XSA9IFt4XWBgLgogCiAKIC4uIG1ldGhvZDo6IGxpc3QuZXh0ZW5kKEwpCiAgICA6bm9pbmRleDoKIAotICAgRXh0ZW5kIHRoZSBsaXN0IGJ5IGFwcGVuZGluZyBhbGwgdGhlIGl0ZW1zIGluIHRoZSBnaXZlbiBsaXN0OyBlcXVpdmFsZW50IHRvCisgICBFeHRlbmQgdGhlIGxpc3QgYnkgYXBwZW5kaW5nIGFsbCB0aGUgaXRlbXMgaW4gdGhlIGdpdmVuIGxpc3QuICBFcXVpdmFsZW50IHRvCiAgICBgYGFbbGVuKGEpOl0gPSBMYGAuCiAKIApAQCAtNDAsOCArNDAsOCBAQAogLi4gbWV0aG9kOjogbGlzdC5yZW1vdmUoeCkKICAgIDpub2luZGV4OgogCi0gICBSZW1vdmUgdGhlIGZpcnN0IGl0ZW0gZnJvbSB0aGUgbGlzdCB3aG9zZSB2YWx1ZSBpcyAqeCouIEl0IGlzIGFuIGVycm9yIGlmIHRoZXJlCi0gICBpcyBubyBzdWNoIGl0ZW0uCisgICBSZW1vdmUgdGhlIGZpcnN0IGl0ZW0gZnJvbSB0aGUgbGlzdCB3aG9zZSB2YWx1ZSBpcyAqeCouICBJdCBpcyBhbiBlcnJvciBpZgorICAgdGhlcmUgaXMgbm8gc3VjaCBpdGVtLgogCiAKIC4uIG1ldGhvZDo6IGxpc3QucG9wKFtpXSkKQEAgLTcwLDEzICs3MCwxNCBAQAogLi4gbWV0aG9kOjogbGlzdC5zb3J0KCkKICAgIDpub2luZGV4OgogCi0gICBTb3J0IHRoZSBpdGVtcyBvZiB0aGUgbGlzdCwgaW4gcGxhY2UuCisgICBTb3J0IHRoZSBpdGVtcyBvZiB0aGUgbGlzdCBpbiBwbGFjZS4KIAogCiAuLiBtZXRob2Q6OiBsaXN0LnJldmVyc2UoKQogICAgOm5vaW5kZXg6CiAKLSAgIFJldmVyc2UgdGhlIGVsZW1lbnRzIG9mIHRoZSBsaXN0LCBpbiBwbGFjZS4KKyAgIFJldmVyc2UgdGhlIGVsZW1lbnRzIG9mIHRoZSBsaXN0IGluIHBsYWNlLgorCiAKIEFuIGV4YW1wbGUgdGhhdCB1c2VzIG1vc3Qgb2YgdGhlIGxpc3QgbWV0aG9kczo6CiAKQEAgLTk5LDYgKzEwMCwxMCBAQAogICAgPj4+IGEKICAgIFstMSwgMSwgNjYuMjUsIDMzMywgMzMzLCAxMjM0LjVdCiAKK1lvdSBtaWdodCBoYXZlIG5vdGljZWQgdGhhdCBtZXRob2RzIGxpa2UgYGBpbnNlcnRgYCwgYGByZW1vdmVgYCBvciBgYHNvcnRgYCB0aGF0Cittb2RpZnkgdGhlIGxpc3QgaGF2ZSBubyByZXR1cm4gdmFsdWUgcHJpbnRlZCAtLSB0aGV5IHJldHVybiBgYE5vbmVgYC4gWzFdXyAgVGhpcworaXMgYSBkZXNpZ24gcHJpbmNpcGxlIGZvciBhbGwgbXV0YWJsZSBkYXRhIHN0cnVjdHVyZXMgaW4gUHl0aG9uLgorCiAKIC4uIF90dXQtbGlzdHMtYXMtc3RhY2tzOgogCkBAIC00NjgsNyArNDczLDcgQEAKIAogUGVyZm9ybWluZyBgYGxpc3QoZC5rZXlzKCkpYGAgb24gYSBkaWN0aW9uYXJ5IHJldHVybnMgYSBsaXN0IG9mIGFsbCB0aGUga2V5cwogdXNlZCBpbiB0aGUgZGljdGlvbmFyeSwgaW4gYXJiaXRyYXJ5IG9yZGVyIChpZiB5b3Ugd2FudCBpdCBzb3J0ZWQsIGp1c3QgdXNlCi1gYHNvcnRlZChkLmtleXMoKSlgYCBpbnN0ZWFkKS4gWzFdXyAgVG8gY2hlY2sgd2hldGhlciBhIHNpbmdsZSBrZXkgaXMgaW4gdGhlCitgYHNvcnRlZChkLmtleXMoKSlgYCBpbnN0ZWFkKS4gWzJdXyAgVG8gY2hlY2sgd2hldGhlciBhIHNpbmdsZSBrZXkgaXMgaW4gdGhlCiBkaWN0aW9uYXJ5LCB1c2UgdGhlIDprZXl3b3JkOmBpbmAga2V5d29yZC4KIAogSGVyZSBpcyBhIHNtYWxsIGV4YW1wbGUgdXNpbmcgYSBkaWN0aW9uYXJ5OjoKQEAgLTY1Miw2ICs2NTcsOSBAQAogCiAuLiBydWJyaWM6OiBGb290bm90ZXMKIAotLi4gWzFdIENhbGxpbmcgYGBkLmtleXMoKWBgIHdpbGwgcmV0dXJuIGEgOmRmbjpgZGljdGlvbmFyeSB2aWV3YCBvYmplY3QuICBJdAorLi4gWzFdIE90aGVyIGxhbmd1YWdlcyBtYXkgcmV0dXJuIHRoZSBtdXRhdGVkIG9iamVjdCwgd2hpY2ggYWxsb3dzIG1ldGhvZAorICAgICAgIGNoYWluaW5nLCBzdWNoIGFzIGBgZC0+aW5zZXJ0KCJhIiktPnJlbW92ZSgiYiIpLT5zb3J0KCk7YGAuCisKKy4uIFsyXSBDYWxsaW5nIGBgZC5rZXlzKClgYCB3aWxsIHJldHVybiBhIDpkZm46YGRpY3Rpb25hcnkgdmlld2Agb2JqZWN0LiAgSXQKICAgICAgICBzdXBwb3J0cyBvcGVyYXRpb25zIGxpa2UgbWVtYmVyc2hpcCB0ZXN0IGFuZCBpdGVyYXRpb24sIGJ1dCBpdHMgY29udGVudHMKICAgICAgICBhcmUgbm90IGluZGVwZW5kZW50IG9mIHRoZSBvcmlnaW5hbCBkaWN0aW9uYXJ5IC0tIGl0IGlzIG9ubHkgYSAqdmlldyouCmRpZmYgLS1naXQgYS9Eb2MvdHV0b3JpYWwvaW50ZXJwcmV0ZXIucnN0IGIvRG9jL3R1dG9yaWFsL2ludGVycHJldGVyLnJzdAppbmRleCAyMzM4NDY1Li44ZjA4Y2Q4IDEwMDY0NAotLS0gYS9Eb2MvdHV0b3JpYWwvaW50ZXJwcmV0ZXIucnN0CisrKyBiL0RvYy90dXRvcmlhbC9pbnRlcnByZXRlci5yc3QKQEAgLTEwLDExICsxMCwxMSBAQAogSW52b2tpbmcgdGhlIEludGVycHJldGVyCiA9PT09PT09PT09PT09PT09PT09PT09PT0KIAotVGhlIFB5dGhvbiBpbnRlcnByZXRlciBpcyB1c3VhbGx5IGluc3RhbGxlZCBhcyA6ZmlsZTpgL3Vzci9sb2NhbC9iaW4vcHl0aG9uMy4yYAorVGhlIFB5dGhvbiBpbnRlcnByZXRlciBpcyB1c3VhbGx5IGluc3RhbGxlZCBhcyA6ZmlsZTpgL3Vzci9sb2NhbC9iaW4vcHl0aG9uMy4zYAogb24gdGhvc2UgbWFjaGluZXMgd2hlcmUgaXQgaXMgYXZhaWxhYmxlOyBwdXR0aW5nIDpmaWxlOmAvdXNyL2xvY2FsL2JpbmAgaW4geW91cgogVW5peCBzaGVsbCdzIHNlYXJjaCBwYXRoIG1ha2VzIGl0IHBvc3NpYmxlIHRvIHN0YXJ0IGl0IGJ5IHR5cGluZyB0aGUgY29tbWFuZCA6OgogCi0gICBweXRob24zLjIKKyAgIHB5dGhvbjMuMwogCiB0byB0aGUgc2hlbGwuIFsjXV8gU2luY2UgdGhlIGNob2ljZSBvZiB0aGUgZGlyZWN0b3J5IHdoZXJlIHRoZSBpbnRlcnByZXRlciBsaXZlcwogaXMgYW4gaW5zdGFsbGF0aW9uIG9wdGlvbiwgb3RoZXIgcGxhY2VzIGFyZSBwb3NzaWJsZTsgY2hlY2sgd2l0aCB5b3VyIGxvY2FsCkBAIC0yMiwxMSArMjIsMTEgQEAKIHBvcHVsYXIgYWx0ZXJuYXRpdmUgbG9jYXRpb24uKQogCiBPbiBXaW5kb3dzIG1hY2hpbmVzLCB0aGUgUHl0aG9uIGluc3RhbGxhdGlvbiBpcyB1c3VhbGx5IHBsYWNlZCBpbgotOmZpbGU6YEM6XFxQeXRob24zMmAsIHRob3VnaCB5b3UgY2FuIGNoYW5nZSB0aGlzIHdoZW4geW91J3JlIHJ1bm5pbmcgdGhlCis6ZmlsZTpgQzpcXFB5dGhvbjMzYCwgdGhvdWdoIHlvdSBjYW4gY2hhbmdlIHRoaXMgd2hlbiB5b3UncmUgcnVubmluZyB0aGUKIGluc3RhbGxlci4gIFRvIGFkZCB0aGlzIGRpcmVjdG9yeSB0byB5b3VyIHBhdGgsICB5b3UgY2FuIHR5cGUgdGhlIGZvbGxvd2luZwogY29tbWFuZCBpbnRvIHRoZSBjb21tYW5kIHByb21wdCBpbiBhIERPUyBib3g6OgogCi0gICBzZXQgcGF0aD0lcGF0aCU7QzpccHl0aG9uMzIKKyAgIHNldCBwYXRoPSVwYXRoJTtDOlxweXRob24zMwogCiBUeXBpbmcgYW4gZW5kLW9mLWZpbGUgY2hhcmFjdGVyICg6a2JkOmBDb250cm9sLURgIG9uIFVuaXgsIDprYmQ6YENvbnRyb2wtWmAgb24KIFdpbmRvd3MpIGF0IHRoZSBwcmltYXJ5IHByb21wdCBjYXVzZXMgdGhlIGludGVycHJldGVyIHRvIGV4aXQgd2l0aCBhIHplcm8gZXhpdApAQCAtOTMsOCArOTMsOCBAQAogcHJpbnRzIGEgd2VsY29tZSBtZXNzYWdlIHN0YXRpbmcgaXRzIHZlcnNpb24gbnVtYmVyIGFuZCBhIGNvcHlyaWdodCBub3RpY2UKIGJlZm9yZSBwcmludGluZyB0aGUgZmlyc3QgcHJvbXB0OjoKIAotICAgJCBweXRob24zLjIKLSAgIFB5dGhvbiAzLjIgKHB5M2ssIFNlcCAxMiAyMDA3LCAxMjoyMTowMikKKyAgICQgcHl0aG9uMy4zCisgICBQeXRob24gMy4zIChweTNrLCBTZXAgMTIgMjAwNywgMTI6MjE6MDIpCiAgICBbR0NDIDMuNC42IDIwMDYwNDA0IChSZWQgSGF0IDMuNC42LTgpXSBvbiBsaW51eDIKICAgIFR5cGUgImhlbHAiLCAiY29weXJpZ2h0IiwgImNyZWRpdHMiIG9yICJsaWNlbnNlIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KICAgID4+PgpAQCAtMTQ3LDcgKzE0Nyw3IEBACiBPbiBCU0QnaXNoIFVuaXggc3lzdGVtcywgUHl0aG9uIHNjcmlwdHMgY2FuIGJlIG1hZGUgZGlyZWN0bHkgZXhlY3V0YWJsZSwgbGlrZQogc2hlbGwgc2NyaXB0cywgYnkgcHV0dGluZyB0aGUgbGluZSA6OgogCi0gICAjISAvdXNyL2Jpbi9lbnYgcHl0aG9uMy4yCisgICAjISAvdXNyL2Jpbi9lbnYgcHl0aG9uMy4zCiAKIChhc3N1bWluZyB0aGF0IHRoZSBpbnRlcnByZXRlciBpcyBvbiB0aGUgdXNlcidzIDplbnZ2YXI6YFBBVEhgKSBhdCB0aGUgYmVnaW5uaW5nCiBvZiB0aGUgc2NyaXB0IGFuZCBnaXZpbmcgdGhlIGZpbGUgYW4gZXhlY3V0YWJsZSBtb2RlLiAgVGhlIGBgIyFgYCBtdXN0IGJlIHRoZQpkaWZmIC0tZ2l0IGEvRG9jL3R1dG9yaWFsL3N0ZGxpYi5yc3QgYi9Eb2MvdHV0b3JpYWwvc3RkbGliLnJzdAppbmRleCA5NzI5NzQzLi41MDBjYTdmIDEwMDY0NAotLS0gYS9Eb2MvdHV0b3JpYWwvc3RkbGliLnJzdAorKysgYi9Eb2MvdHV0b3JpYWwvc3RkbGliLnJzdApAQCAtMTUsNyArMTUsNyBAQAogCiAgICA+Pj4gaW1wb3J0IG9zCiAgICA+Pj4gb3MuZ2V0Y3dkKCkgICAgICAjIFJldHVybiB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeQotICAgJ0M6XFxQeXRob24zMScKKyAgICdDOlxcUHl0aG9uMzMnCiAgICA+Pj4gb3MuY2hkaXIoJy9zZXJ2ZXIvYWNjZXNzbG9ncycpICAgIyBDaGFuZ2UgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeQogICAgPj4+IG9zLnN5c3RlbSgnbWtkaXIgdG9kYXknKSAgICMgUnVuIHRoZSBjb21tYW5kIG1rZGlyIGluIHRoZSBzeXN0ZW0gc2hlbGwKICAgIDAKZGlmZiAtLWdpdCBhL0RvYy90dXRvcmlhbC9zdGRsaWIyLnJzdCBiL0RvYy90dXRvcmlhbC9zdGRsaWIyLnJzdAppbmRleCBmZTdmMDI3Li44NWM4OGRjIDEwMDY0NAotLS0gYS9Eb2MvdHV0b3JpYWwvc3RkbGliMi5yc3QKKysrIGIvRG9jL3R1dG9yaWFsL3N0ZGxpYjIucnN0CkBAIC0xNDEsNyArMTQxLDkgQEAKIAogICAgaW1wb3J0IHN0cnVjdAogCi0gICBkYXRhID0gb3BlbignbXlmaWxlLnppcCcsICdyYicpLnJlYWQoKQorICAgd2l0aCBvcGVuKCdteWZpbGUuemlwJywgJ3JiJykgYXMgZjoKKyAgICAgICBkYXRhID0gZi5yZWFkKCkKKwogICAgc3RhcnQgPSAwCiAgICBmb3IgaSBpbiByYW5nZSgzKTogICAgICAgICAgICAgICAgICAgICAgIyBzaG93IHRoZSBmaXJzdCAzIGZpbGUgaGVhZGVycwogICAgICAgIHN0YXJ0ICs9IDE0CkBAIC0yNzEsNyArMjczLDcgQEAKICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMSwgaW4gPG1vZHVsZT4KICAgICAgICBkWydwcmltYXJ5J10gICAgICAgICAgICAgICAgIyBlbnRyeSB3YXMgYXV0b21hdGljYWxseSByZW1vdmVkCi0gICAgIEZpbGUgIkM6L3B5dGhvbjMxL2xpYi93ZWFrcmVmLnB5IiwgbGluZSA0NiwgaW4gX19nZXRpdGVtX18KKyAgICAgRmlsZSAiQzovcHl0aG9uMzMvbGliL3dlYWtyZWYucHkiLCBsaW5lIDQ2LCBpbiBfX2dldGl0ZW1fXwogICAgICAgIG8gPSBzZWxmLmRhdGFba2V5XSgpCiAgICBLZXlFcnJvcjogJ3ByaW1hcnknCiAKZGlmZiAtLWdpdCBhL0RvYy91c2luZy9jbWRsaW5lLnJzdCBiL0RvYy91c2luZy9jbWRsaW5lLnJzdAppbmRleCAwZDEyMTI2Li40MGU4NTBlIDEwMDY0NAotLS0gYS9Eb2MvdXNpbmcvY21kbGluZS5yc3QKKysrIGIvRG9jL3VzaW5nL2NtZGxpbmUucnN0CkBAIC0yNCw3ICsyNCw3IEBACiAKIFdoZW4gaW52b2tpbmcgUHl0aG9uLCB5b3UgbWF5IHNwZWNpZnkgYW55IG9mIHRoZXNlIG9wdGlvbnM6OgogCi0gICAgcHl0aG9uIFstYkJkRWhpT1Jxc1N1dlZXeD9dIFstYyBjb21tYW5kIHwgLW0gbW9kdWxlLW5hbWUgfCBzY3JpcHQgfCAtIF0gW2FyZ3NdCisgICAgcHl0aG9uIFstYkJkRWhpT3FzU3V2Vld4P10gWy1jIGNvbW1hbmQgfCAtbSBtb2R1bGUtbmFtZSB8IHNjcmlwdCB8IC0gXSBbYXJnc10KIAogVGhlIG1vc3QgY29tbW9uIHVzZSBjYXNlIGlzLCBvZiBjb3Vyc2UsIGEgc2ltcGxlIGludm9jYXRpb24gb2YgYSBzY3JpcHQ6OgogCkBAIC0yNjMsNyArMjYzLDkgQEAKIC4uIGNtZG9wdGlvbjo6IC1TCiAKICAgIERpc2FibGUgdGhlIGltcG9ydCBvZiB0aGUgbW9kdWxlIDptb2Q6YHNpdGVgIGFuZCB0aGUgc2l0ZS1kZXBlbmRlbnQKLSAgIG1hbmlwdWxhdGlvbnMgb2YgOmRhdGE6YHN5cy5wYXRoYCB0aGF0IGl0IGVudGFpbHMuCisgICBtYW5pcHVsYXRpb25zIG9mIDpkYXRhOmBzeXMucGF0aGAgdGhhdCBpdCBlbnRhaWxzLiAgQWxzbyBkaXNhYmxlIHRoZXNlCisgICBtYW5pcHVsYXRpb25zIGlmIDptb2Q6YHNpdGVgIGlzIGV4cGxpY2l0bHkgaW1wb3J0ZWQgbGF0ZXIgKGNhbGwKKyAgIDpmdW5jOmBzaXRlLm1haW5gIGlmIHlvdSB3YW50IHRoZW0gdG8gYmUgdHJpZ2dlcmVkKS4KIAogCiAuLiBjbWRvcHRpb246OiAtdQpAQCAtNDcyLDcgKzQ3NCw3IEBACiAuLiBlbnZ2YXI6OiBQWVRIT05DQVNFT0sKIAogICAgSWYgdGhpcyBpcyBzZXQsIFB5dGhvbiBpZ25vcmVzIGNhc2UgaW4gOmtleXdvcmQ6YGltcG9ydGAgc3RhdGVtZW50cy4gIFRoaXMKLSAgIG9ubHkgd29ya3Mgb24gV2luZG93cywgT1MgWCwgYW5kIE9TLzIuCisgICBvbmx5IHdvcmtzIG9uIFdpbmRvd3MgYW5kIE9TIFguCiAKIAogLi4gZW52dmFyOjogUFlUSE9ORE9OVFdSSVRFQllURUNPREUKQEAgLTQ4NCw5ICs0ODYsOCBAQAogCiAuLiBlbnZ2YXI6OiBQWVRIT05IQVNIU0VFRAogCi0gICBJZiB0aGlzIHZhcmlhYmxlIGlzIHNldCB0byBgYHJhbmRvbWBgLCB0aGUgZWZmZWN0IGlzIHRoZSBzYW1lIGFzIHNwZWNpZnlpbmcKLSAgIHRoZSA6b3B0aW9uOmAtUmAgb3B0aW9uOiBhIHJhbmRvbSB2YWx1ZSBpcyB1c2VkIHRvIHNlZWQgdGhlIGhhc2hlcyBvZiBzdHIsCi0gICBieXRlcyBhbmQgZGF0ZXRpbWUgb2JqZWN0cy4KKyAgIElmIHRoaXMgdmFyaWFibGUgaXMgc2V0IHRvIGBgcmFuZG9tYGAsIGEgcmFuZG9tIHZhbHVlIGlzIHVzZWQgdG8gc2VlZCB0aGUKKyAgIGhhc2hlcyBvZiBzdHIsIGJ5dGVzIGFuZCBkYXRldGltZSBvYmplY3RzLgogCiAgICBJZiA6ZW52dmFyOmBQWVRIT05IQVNIU0VFRGAgaXMgc2V0IHRvIGFuIGludGVnZXIgdmFsdWUsIGl0IGlzIHVzZWQgYXMgYSBmaXhlZAogICAgc2VlZCBmb3IgZ2VuZXJhdGluZyB0aGUgaGFzaCgpIG9mIHRoZSB0eXBlcyBjb3ZlcmVkIGJ5IHRoZSBoYXNoCkBAIC00OTcsOCArNDk4LDcgQEAKICAgIHZhbHVlcy4KIAogICAgVGhlIGludGVnZXIgbXVzdCBiZSBhIGRlY2ltYWwgbnVtYmVyIGluIHRoZSByYW5nZSBbMCw0Mjk0OTY3Mjk1XS4gIFNwZWNpZnlpbmcKLSAgIHRoZSB2YWx1ZSAwIHdpbGwgbGVhZCB0byB0aGUgc2FtZSBoYXNoIHZhbHVlcyBhcyB3aGVuIGhhc2ggcmFuZG9taXphdGlvbiBpcwotICAgZGlzYWJsZWQuCisgICB0aGUgdmFsdWUgMCB3aWxsIGRpc2FibGUgaGFzaCByYW5kb21pemF0aW9uLgogCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIuMwogCkBAIC01MjgsOCArNTI4LDggQEAKIAogICAgRGVmaW5lcyB0aGUgOmRhdGE6YHVzZXIgYmFzZSBkaXJlY3RvcnkgPHNpdGUuVVNFUl9CQVNFPmAsIHdoaWNoIGlzIHVzZWQgdG8KICAgIGNvbXB1dGUgdGhlIHBhdGggb2YgdGhlIDpkYXRhOmB1c2VyIHNpdGUtcGFja2FnZXMgZGlyZWN0b3J5IDxzaXRlLlVTRVJfU0lURT5gCi0gICBhbmQgOnJlZjpgRGlzdHV0aWxzIGluc3RhbGxhdGlvbiBwYXRocyA8aW5zdC1hbHQtaW5zdGFsbC11c2VyPmAgZm9yIGBgcHl0aG9uCi0gICBzZXR1cC5weSBpbnN0YWxsIC0tdXNlcmBgLgorICAgYW5kIDpyZWY6YFBhY2thZ2luZyBpbnN0YWxsYXRpb24gcGF0aHMgPHBhY2thZ2luZy1hbHQtaW5zdGFsbC11c2VyPmAgZm9yCisgICBgYHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdCAtLXVzZXJgYC4KIAogICAgLi4gc2VlYWxzbzo6CiAKQEAgLTU0OCw2ICs1NDgsMTQgQEAKICAgIHNlcGFyYXRlZCBzdHJpbmcsIGl0IGlzIGVxdWl2YWxlbnQgdG8gc3BlY2lmeWluZyA6b3B0aW9uOmAtV2AgbXVsdGlwbGUKICAgIHRpbWVzLgogCisuLiBlbnZ2YXI6OiBQWVRIT05GQVVMVEhBTkRMRVIKKworICAgSWYgdGhpcyBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBzZXQsIDpmdW5jOmBmYXVsdGhhbmRsZXIuZW5hYmxlYCBpcyBjYWxsZWQKKyAgIGF0IHN0YXJ0dXA6IGluc3RhbGwgYSBoYW5kbGVyIGZvciA6Y29uc3Q6YFNJR1NFR1ZgLCA6Y29uc3Q6YFNJR0ZQRWAsCisgICA6Y29uc3Q6YFNJR0FCUlRgLCA6Y29uc3Q6YFNJR0JVU2AgYW5kIDpjb25zdDpgU0lHSUxMYCBzaWduYWxzIHRvIGR1bXAgdGhlCisgICBQeXRob24gdHJhY2ViYWNrLiAgVGhpcyBpcyBlcXVpdmFsZW50IHRvIDpvcHRpb246YC1YYCBgYGZhdWx0aGFuZGxlcmBgCisgICBvcHRpb24uCisKIAogRGVidWctbW9kZSB2YXJpYWJsZXMKIH5+fn5+fn5+fn5+fn5+fn5+fn5+CmRpZmYgLS1naXQgYS9Eb2Mvd2hhdHNuZXcvMy4yLnJzdCBiL0RvYy93aGF0c25ldy8zLjIucnN0CmluZGV4IDA1NTNlYzMuLjk5ODI3ZmYgMTAwNjQ0Ci0tLSBhL0RvYy93aGF0c25ldy8zLjIucnN0CisrKyBiL0RvYy93aGF0c25ldy8zLjIucnN0CkBAIC0yNzAsNyArMjcwLDcgQEAKICAgICAgIGUuc3VibWl0KHNodXRpbC5jb3B5LCAnc3JjMS50eHQnLCAnZGVzdDEudHh0JykKICAgICAgIGUuc3VibWl0KHNodXRpbC5jb3B5LCAnc3JjMi50eHQnLCAnZGVzdDIudHh0JykKICAgICAgIGUuc3VibWl0KHNodXRpbC5jb3B5LCAnc3JjMy50eHQnLCAnZGVzdDMudHh0JykKLSAgICAgIGUuc3VibWl0KHNodXRpbC5jb3B5LCAnc3JjNC50eHQnLCAnZGVzdDQudHh0JykKKyAgICAgIGUuc3VibWl0KHNodXRpbC5jb3B5LCAnc3JjMy50eHQnLCAnZGVzdDQudHh0JykKIAogLi4gc2VlYWxzbzo6CiAKQEAgLTIzNTQsNyArMjM1NCw3IEBACiAgIChDb250cmlidXRlZCBieSBBbnRvaW5lIFBpdHJvdTsgOmlzc3VlOmAzMDAxYC4pCiAKICogVGhlIGZhc3Qtc2VhcmNoIGFsZ29yaXRobSBpbiBzdHJpbmdsaWIgaXMgbm93IHVzZWQgYnkgdGhlIDptZXRoOmBzcGxpdGAsCi0gIDptZXRoOmBzcGxpdGxpbmVzYCBhbmQgOm1ldGg6YHJlcGxhY2VgIG1ldGhvZHMgb24KKyAgOm1ldGg6YHJzcGxpdGAsIDptZXRoOmBzcGxpdGxpbmVzYCBhbmQgOm1ldGg6YHJlcGxhY2VgIG1ldGhvZHMgb24KICAgOmNsYXNzOmBieXRlc2AsIDpjbGFzczpgYnl0ZWFycmF5YCBhbmQgOmNsYXNzOmBzdHJgIG9iamVjdHMuIExpa2V3aXNlLCB0aGUKICAgYWxnb3JpdGhtIGlzIGFsc28gdXNlZCBieSA6bWV0aDpgcmZpbmRgLCA6bWV0aDpgcmluZGV4YCwgOm1ldGg6YHJzcGxpdGAgYW5kCiAgIDptZXRoOmBycGFydGl0aW9uYC4KQEAgLTI0NzEsMTQgKzI0NzEsMTQgQEAKIAogSW4gYWRkaXRpb24gdG8gdGhlIGV4aXN0aW5nIFN1YnZlcnNpb24gY29kZSByZXBvc2l0b3J5IGF0IGh0dHA6Ly9zdm4ucHl0aG9uLm9yZwogdGhlcmUgaXMgbm93IGEgYE1lcmN1cmlhbCA8aHR0cDovL21lcmN1cmlhbC5zZWxlbmljLmNvbS8+YF8gcmVwb3NpdG9yeSBhdAotaHR0cDovL2hnLnB5dGhvbi5vcmcvXC4KK2h0dHA6Ly9oZy5weXRob24ub3JnLyAuCiAKIEFmdGVyIHRoZSAzLjIgcmVsZWFzZSwgdGhlcmUgYXJlIHBsYW5zIHRvIHN3aXRjaCB0byBNZXJjdXJpYWwgYXMgdGhlIHByaW1hcnkKIHJlcG9zaXRvcnkuICBUaGlzIGRpc3RyaWJ1dGVkIHZlcnNpb24gY29udHJvbCBzeXN0ZW0gc2hvdWxkIG1ha2UgaXQgZWFzaWVyIGZvcgogbWVtYmVycyBvZiB0aGUgY29tbXVuaXR5IHRvIGNyZWF0ZSBhbmQgc2hhcmUgZXh0ZXJuYWwgY2hhbmdlc2V0cy4gIFNlZQogOnBlcDpgMzg1YCBmb3IgZGV0YWlscy4KIAotVG8gbGVhcm4gdGhlIG5ldyB2ZXJzaW9uIGNvbnRyb2wgc3lzdGVtLCBzZWUgdGhlIGB0dXRvcmlhbCBieSBKb2VsCitUbyBsZWFybiB0byB1c2UgdGhlIG5ldyB2ZXJzaW9uIGNvbnRyb2wgc3lzdGVtLCBzZWUgdGhlIGB0dXRvcmlhbCBieSBKb2VsCiBTcG9sc2t5IDxodHRwOi8vaGdpbml0LmNvbT5gXyBvciB0aGUgYEd1aWRlIHRvIE1lcmN1cmlhbCBXb3JrZmxvd3MKIDxodHRwOi8vbWVyY3VyaWFsLnNlbGVuaWMuY29tL2d1aWRlLz5gXy4KIApkaWZmIC0tZ2l0IGEvRG9jL3doYXRzbmV3LzMuMy5yc3QgYi9Eb2Mvd2hhdHNuZXcvMy4zLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZWNiOGNlCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3doYXRzbmV3LzMuMy5yc3QKQEAgLTAsMCArMSwxMTU4IEBACisqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgIFdoYXQncyBOZXcgSW4gUHl0aG9uIDMuMworKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorCis6QXV0aG9yOiBSYXltb25kIEhldHRpbmdlcgorOlJlbGVhc2U6IHxyZWxlYXNlfAorOkRhdGU6IHx0b2RheXwKKworLi4gUnVsZXMgZm9yIG1haW50ZW5hbmNlOgorCisgICAqIEFueW9uZSBjYW4gYWRkIHRleHQgdG8gdGhpcyBkb2N1bWVudC4gIERvIG5vdCBzcGVuZCB2ZXJ5IG11Y2ggdGltZQorICAgb24gdGhlIHdvcmRpbmcgb2YgeW91ciBjaGFuZ2VzLCBiZWNhdXNlIHlvdXIgdGV4dCB3aWxsIHByb2JhYmx5CisgICBnZXQgcmV3cml0dGVuIHRvIHNvbWUgZGVncmVlLgorCisgICAqIFRoZSBtYWludGFpbmVyIHdpbGwgZ28gdGhyb3VnaCBNaXNjL05FV1MgcGVyaW9kaWNhbGx5IGFuZCBhZGQKKyAgIGNoYW5nZXM7IGl0J3MgdGhlcmVmb3JlIG1vcmUgaW1wb3J0YW50IHRvIGFkZCB5b3VyIGNoYW5nZXMgdG8KKyAgIE1pc2MvTkVXUyB0aGFuIHRvIHRoaXMgZmlsZS4KKworICAgKiBUaGlzIGlzIG5vdCBhIGNvbXBsZXRlIGxpc3Qgb2YgZXZlcnkgc2luZ2xlIGNoYW5nZTsgY29tcGxldGVuZXNzCisgICBpcyB0aGUgcHVycG9zZSBvZiBNaXNjL05FV1MuICBTb21lIGNoYW5nZXMgSSBjb25zaWRlciB0b28gc21hbGwKKyAgIG9yIGVzb3RlcmljIHRvIGluY2x1ZGUuICBJZiBzdWNoIGEgY2hhbmdlIGlzIGFkZGVkIHRvIHRoZSB0ZXh0LAorICAgSSdsbCBqdXN0IHJlbW92ZSBpdC4gIChUaGlzIGlzIGFub3RoZXIgcmVhc29uIHlvdSBzaG91bGRuJ3Qgc3BlbmQKKyAgIHRvbyBtdWNoIHRpbWUgb24gd3JpdGluZyB5b3VyIGFkZGl0aW9uLikKKworICAgKiBJZiB5b3Ugd2FudCB0byBkcmF3IHlvdXIgbmV3IHRleHQgdG8gdGhlIGF0dGVudGlvbiBvZiB0aGUKKyAgIG1haW50YWluZXIsIGFkZCAnWFhYJyB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBwYXJhZ3JhcGggb3IKKyAgIHNlY3Rpb24uCisKKyAgICogSXQncyBPSyB0byBqdXN0IGFkZCBhIGZyYWdtZW50YXJ5IG5vdGUgYWJvdXQgYSBjaGFuZ2UuICBGb3IKKyAgIGV4YW1wbGU6ICJYWFggRGVzY3JpYmUgdGhlIHRyYW5zbW9ncmlmeSgpIGZ1bmN0aW9uIGFkZGVkIHRvIHRoZQorICAgc29ja2V0IG1vZHVsZS4iICBUaGUgbWFpbnRhaW5lciB3aWxsIHJlc2VhcmNoIHRoZSBjaGFuZ2UgYW5kCisgICB3cml0ZSB0aGUgbmVjZXNzYXJ5IHRleHQuCisKKyAgICogWW91IGNhbiBjb21tZW50IG91dCB5b3VyIGFkZGl0aW9ucyBpZiB5b3UgbGlrZSwgYnV0IGl0J3Mgbm90CisgICBuZWNlc3NhcnkgKGVzcGVjaWFsbHkgd2hlbiBhIGZpbmFsIHJlbGVhc2UgaXMgc29tZSBtb250aHMgYXdheSkuCisKKyAgICogQ3JlZGl0IHRoZSBhdXRob3Igb2YgYSBwYXRjaCBvciBidWdmaXguICAgSnVzdCB0aGUgbmFtZSBpcworICAgc3VmZmljaWVudDsgdGhlIGUtbWFpbCBhZGRyZXNzIGlzbid0IG5lY2Vzc2FyeS4KKworICAgKiBJdCdzIGhlbHBmdWwgdG8gYWRkIHRoZSBidWcvcGF0Y2ggbnVtYmVyIGFzIGEgY29tbWVudDoKKworICAgWFhYIERlc2NyaWJlIHRoZSB0cmFuc21vZ3JpZnkoKSBmdW5jdGlvbiBhZGRlZCB0byB0aGUgc29ja2V0CisgICBtb2R1bGUuCisgICAoQ29udHJpYnV0ZWQgYnkgUC5ZLiBEZXZlbG9wZXIgaW4gOmlzc3VlOmAxMjM0NWAuKQorCisgICBUaGlzIHNhdmVzIHRoZSBtYWludGFpbmVyIHRoZSBlZmZvcnQgb2YgZ29pbmcgdGhyb3VnaCB0aGUgTWVyY3VyaWFsIGxvZworICAgd2hlbiByZXNlYXJjaGluZyBhIGNoYW5nZS4KKworVGhpcyBhcnRpY2xlIGV4cGxhaW5zIHRoZSBuZXcgZmVhdHVyZXMgaW4gUHl0aG9uIDMuMywgY29tcGFyZWQgdG8gMy4yLgorCisKKy4uIHBlcC0zMTE4LXVwZGF0ZToKKworUEVQIDMxMTg6IE5ldyBtZW1vcnl2aWV3IGltcGxlbWVudGF0aW9uIGFuZCBidWZmZXIgcHJvdG9jb2wgZG9jdW1lbnRhdGlvbgorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCis6aXNzdWU6YDEwMTgxYCAtIG1lbW9yeXZpZXcgYnVnIGZpeGVzIGFuZCBmZWF0dXJlcy4KKyAgV3JpdHRlbiBieSBTdGVmYW4gS3JhaC4KKworVGhlIG5ldyBtZW1vcnl2aWV3IGltcGxlbWVudGF0aW9uIGNvbXByZWhlbnNpdmVseSBmaXhlcyBhbGwgb3duZXJzaGlwIGFuZAorbGlmZXRpbWUgaXNzdWVzIG9mIGR5bmFtaWNhbGx5IGFsbG9jYXRlZCBmaWVsZHMgaW4gdGhlIFB5X2J1ZmZlciBzdHJ1Y3QKK3RoYXQgbGVkIHRvIG11bHRpcGxlIGNyYXNoIHJlcG9ydHMuIEFkZGl0aW9uYWxseSwgc2V2ZXJhbCBmdW5jdGlvbnMgdGhhdAorY3Jhc2hlZCBvciByZXR1cm5lZCBpbmNvcnJlY3QgcmVzdWx0cyBmb3Igbm9uLWNvbnRpZ3VvdXMgb3IgbXVsdGktZGltZW5zaW9uYWwKK2lucHV0IGhhdmUgYmVlbiBmaXhlZC4KKworVGhlIG1lbW9yeXZpZXcgb2JqZWN0IG5vdyBoYXMgYSBQRVAtMzExOCBjb21wbGlhbnQgZ2V0YnVmZmVycHJvYygpCit0aGF0IGNoZWNrcyB0aGUgY29uc3VtZXIncyByZXF1ZXN0IHR5cGUuIE1hbnkgbmV3IGZlYXR1cmVzIGhhdmUgYmVlbgorYWRkZWQsIG1vc3Qgb2YgdGhlbSB3b3JrIGluIGZ1bGwgZ2VuZXJhbGl0eSBmb3Igbm9uLWNvbnRpZ3VvdXMgYXJyYXlzCithbmQgYXJyYXlzIHdpdGggc3Vib2Zmc2V0cy4KKworVGhlIGRvY3VtZW50YXRpb24gaGFzIGJlZW4gdXBkYXRlZCwgY2xlYXJseSBzcGVsbGluZyBvdXQgcmVzcG9uc2liaWxpdGllcworZm9yIGJvdGggZXhwb3J0ZXJzIGFuZCBjb25zdW1lcnMuIEJ1ZmZlciByZXF1ZXN0IGZsYWdzIGFyZSBncm91cGVkIGludG8KK2Jhc2ljIGFuZCBjb21wb3VuZCBmbGFncy4gVGhlIG1lbW9yeSBsYXlvdXQgb2Ygbm9uLWNvbnRpZ3VvdXMgYW5kCittdWx0aS1kaW1lbnNpb25hbCBOdW1QeS1zdHlsZSBhcnJheXMgaXMgZXhwbGFpbmVkLgorCitGZWF0dXJlcworLS0tLS0tLS0KKworKiBBbGwgbmF0aXZlIHNpbmdsZSBjaGFyYWN0ZXIgZm9ybWF0IHNwZWNpZmllcnMgaW4gc3RydWN0IG1vZHVsZSBzeW50YXgKKyAgKG9wdGlvbmFsbHkgcHJlZml4ZWQgd2l0aCAnQCcpIGFyZSBub3cgc3VwcG9ydGVkLgorCisqIFdpdGggc29tZSByZXN0cmljdGlvbnMsIHRoZSBjYXN0KCkgbWV0aG9kIGFsbG93cyBjaGFuZ2luZyBvZiBmb3JtYXQgYW5kCisgIHNoYXBlIG9mIEMtY29udGlndW91cyBhcnJheXMuCisKKyogTXVsdGktZGltZW5zaW9uYWwgbGlzdCByZXByZXNlbnRhdGlvbnMgYXJlIHN1cHBvcnRlZCBmb3IgYW55IGFycmF5IHR5cGUuCisKKyogTXVsdGktZGltZW5zaW9uYWwgY29tcGFyaXNvbnMgYXJlIHN1cHBvcnRlZCBmb3IgYW55IGFycmF5IHR5cGUuCisKKyogQWxsIGFycmF5IHR5cGVzIGFyZSBoYXNoYWJsZSBpZiB0aGUgZXhwb3J0aW5nIG9iamVjdCBpcyBoYXNoYWJsZQorICBhbmQgdGhlIHZpZXcgaXMgcmVhZC1vbmx5LiAoQ29udHJpYnV0ZWQgYnkgQW50b2luZSBQaXRyb3UgaW4KKyAgOmlzc3VlOmAxMzQxMWApCisKKworKiBBcmJpdHJhcnkgc2xpY2luZyBvZiBhbnkgMS1EIGFycmF5cyB0eXBlIGlzIHN1cHBvcnRlZC4gRm9yIGV4YW1wbGUsIGl0CisgIGlzIG5vdyBwb3NzaWJsZSB0byByZXZlcnNlIGEgbWVtb3J5dmlldyBpbiBPKDEpIGJ5IHVzaW5nIGEgbmVnYXRpdmUgc3RlcC4KKworQVBJIGNoYW5nZXMKKy0tLS0tLS0tLS0tCisKKyogVGhlIG1heGltdW0gbnVtYmVyIG9mIGRpbWVuc2lvbnMgaXMgb2ZmaWNpYWxseSBsaW1pdGVkIHRvIDY0LgorCisqIFRoZSByZXByZXNlbnRhdGlvbiBvZiBlbXB0eSBzaGFwZSwgc3RyaWRlcyBhbmQgc3Vib2Zmc2V0cyBpcyBub3cKKyAgYW4gZW1wdHkgdHVwbGUgaW5zdGVhZCBvZiBOb25lLgorCisqIEFjY2Vzc2luZyBhIG1lbW9yeXZpZXcgZWxlbWVudCB3aXRoIGZvcm1hdCAnQicgKHVuc2lnbmVkIGJ5dGVzKQorICBub3cgcmV0dXJucyBhbiBpbnRlZ2VyIChpbiBhY2NvcmRhbmNlIHdpdGggdGhlIHN0cnVjdCBtb2R1bGUgc3ludGF4KS4KKyAgRm9yIHJldHVybmluZyBhIGJ5dGVzIG9iamVjdCB0aGUgdmlldyBtdXN0IGJlIGNhc3QgdG8gJ2MnIGZpcnN0LgorCisqIEZvciBmdXJ0aGVyIGNoYW5nZXMgc2VlIGBCdWlsZCBhbmQgQyBBUEkgQ2hhbmdlc2BfIGFuZCBgUG9ydGluZyBDIGNvZGVgXyAuCisKKy4uIF9wZXAtMzkzOgorCitQRVAgMzkzOiBGbGV4aWJsZSBTdHJpbmcgUmVwcmVzZW50YXRpb24KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitUaGUgVW5pY29kZSBzdHJpbmcgdHlwZSBpcyBjaGFuZ2VkIHRvIHN1cHBvcnQgbXVsdGlwbGUgaW50ZXJuYWwKK3JlcHJlc2VudGF0aW9ucywgZGVwZW5kaW5nIG9uIHRoZSBjaGFyYWN0ZXIgd2l0aCB0aGUgbGFyZ2VzdCBVbmljb2RlIG9yZGluYWwKKygxLCAyLCBvciA0IGJ5dGVzKSBpbiB0aGUgcmVwcmVzZW50ZWQgc3RyaW5nLiAgVGhpcyBhbGxvd3MgYSBzcGFjZS1lZmZpY2llbnQKK3JlcHJlc2VudGF0aW9uIGluIGNvbW1vbiBjYXNlcywgYnV0IGdpdmVzIGFjY2VzcyB0byBmdWxsIFVDUy00IG9uIGFsbAorc3lzdGVtcy4gIEZvciBjb21wYXRpYmlsaXR5IHdpdGggZXhpc3RpbmcgQVBJcywgc2V2ZXJhbCByZXByZXNlbnRhdGlvbnMgbWF5CitleGlzdCBpbiBwYXJhbGxlbDsgb3ZlciB0aW1lLCB0aGlzIGNvbXBhdGliaWxpdHkgc2hvdWxkIGJlIHBoYXNlZCBvdXQuCisKK09uIHRoZSBQeXRob24gc2lkZSwgdGhlcmUgc2hvdWxkIGJlIG5vIGRvd25zaWRlIHRvIHRoaXMgY2hhbmdlLgorCitPbiB0aGUgQyBBUEkgc2lkZSwgUEVQIDM5MyBpcyBmdWxseSBiYWNrd2FyZCBjb21wYXRpYmxlLiAgVGhlIGxlZ2FjeSBBUEkKK3Nob3VsZCByZW1haW4gYXZhaWxhYmxlIGF0IGxlYXN0IGZpdmUgeWVhcnMuICBBcHBsaWNhdGlvbnMgdXNpbmcgdGhlIGxlZ2FjeQorQVBJIHdpbGwgbm90IGZ1bGx5IGJlbmVmaXQgb2YgdGhlIG1lbW9yeSByZWR1Y3Rpb24sIG9yIC0gd29yc2UgLSBtYXkgdXNlCithIGJpdCBtb3JlIG1lbW9yeSwgYmVjYXVzZSBQeXRob24gbWF5IGhhdmUgdG8gbWFpbnRhaW4gdHdvIHZlcnNpb25zIG9mIGVhY2gKK3N0cmluZyAoaW4gdGhlIGxlZ2FjeSBmb3JtYXQgYW5kIGluIHRoZSBuZXcgZWZmaWNpZW50IHN0b3JhZ2UpLgorCitGdW5jdGlvbmFsaXR5CistLS0tLS0tLS0tLS0tCisKK0NoYW5nZXMgaW50cm9kdWNlZCBieSA6cGVwOmAzOTNgIGFyZSB0aGUgZm9sbG93aW5nOgorCisqIFB5dGhvbiBub3cgYWx3YXlzIHN1cHBvcnRzIHRoZSBmdWxsIHJhbmdlIG9mIFVuaWNvZGUgY29kZXBvaW50cywgaW5jbHVkaW5nCisgIG5vbi1CTVAgb25lcyAoaS5lLiBmcm9tIGBgVSswMDAwYGAgdG8gYGBVKzEwRkZGRmBgKS4gIFRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuCisgIG5hcnJvdyBhbmQgd2lkZSBidWlsZHMgbm8gbG9uZ2VyIGV4aXN0cyBhbmQgUHl0aG9uIG5vdyBiZWhhdmVzIGxpa2UgYSB3aWRlCisgIGJ1aWxkLCBldmVuIHVuZGVyIFdpbmRvd3MuCisKKyogV2l0aCB0aGUgZGVhdGggb2YgbmFycm93IGJ1aWxkcywgdGhlIHByb2JsZW1zIHNwZWNpZmljIHRvIG5hcnJvdyBidWlsZHMgaGF2ZQorICBhbHNvIGJlZW4gZml4ZWQsIGZvciBleGFtcGxlOgorCisgICogOmZ1bmM6YGxlbmAgbm93IGFsd2F5cyByZXR1cm5zIDEgZm9yIG5vbi1CTVAgY2hhcmFjdGVycywKKyAgICBzbyBgYGxlbignXFUwMDEwRkZGRicpID09IDFgYDsKKworICAqIHN1cnJvZ2F0ZSBwYWlycyBhcmUgbm90IHJlY29tYmluZWQgaW4gc3RyaW5nIGxpdGVyYWxzLAorICAgIHNvIGBgJ1x1REJGRlx1REZGRicgIT0gJ1xVMDAxMEZGRkYnYGA7CisKKyAgKiBpbmRleGluZyBvciBzbGljaW5nIG5vbi1CTVAgY2hhcmFjdGVycyByZXR1cm5zIHRoZSBleHBlY3RlZCB2YWx1ZSwKKyAgICBzbyBgYCdcVTAwMTBGRkZGJ1swXWBgIG5vdyByZXR1cm5zIGBgJ1xVMDAxMEZGRkYnYGAgYW5kIG5vdCBgYCdcdURCRkYnYGA7CisKKyAgKiBhbGwgb3RoZXIgZnVuY3Rpb25zIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5IG5vdyBjb3JyZWN0bHkgaGFuZGxlCisgICAgbm9uLUJNUCBjb2RlcG9pbnRzLgorCisqIFRoZSB2YWx1ZSBvZiA6ZGF0YTpgc3lzLm1heHVuaWNvZGVgIGlzIG5vdyBhbHdheXMgYGAxMTE0MTExYGAgKGBgMHgxMEZGRkZgYAorICBpbiBoZXhhZGVjaW1hbCkuICBUaGUgOmM6ZnVuYzpgUHlVbmljb2RlX0dldE1heGAgZnVuY3Rpb24gc3RpbGwgcmV0dXJucworICBlaXRoZXIgYGAweEZGRkZgYCBvciBgYDB4MTBGRkZGYGAgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIGFuZCBpdCBzaG91bGQKKyAgbm90IGJlIHVzZWQgd2l0aCB0aGUgbmV3IFVuaWNvZGUgQVBJIChzZWUgOmlzc3VlOmAxMzA1NGApLgorCisqIFRoZSA6ZmlsZTpgLi9jb25maWd1cmVgIGZsYWcgYGAtLXdpdGgtd2lkZS11bmljb2RlYGAgaGFzIGJlZW4gcmVtb3ZlZC4KKworUGVyZm9ybWFuY2UgYW5kIHJlc291cmNlIHVzYWdlCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIHN0b3JhZ2Ugb2YgVW5pY29kZSBzdHJpbmdzIG5vdyBkZXBlbmRzIG9uIHRoZSBoaWdoZXN0IGNvZGVwb2ludCBpbiB0aGUgc3RyaW5nOgorCisqIHB1cmUgQVNDSUkgYW5kIExhdGluMSBzdHJpbmdzIChgYFUrMDAwMC1VKzAwRkZgYCkgdXNlIDEgYnl0ZSBwZXIgY29kZXBvaW50OworCisqIEJNUCBzdHJpbmdzIChgYFUrMDAwMC1VK0ZGRkZgYCkgdXNlIDIgYnl0ZXMgcGVyIGNvZGVwb2ludDsKKworKiBub24tQk1QIHN0cmluZ3MgKGBgVSsxMDAwMC1VKzEwRkZGRmBgKSB1c2UgNCBieXRlcyBwZXIgY29kZXBvaW50LgorCitUaGUgbmV0IGVmZmVjdCBpcyB0aGF0IGZvciBtb3N0IGFwcGxpY2F0aW9ucywgbWVtb3J5IHVzYWdlIG9mIHN0cmluZworc3RvcmFnZSBzaG91bGQgZGVjcmVhc2Ugc2lnbmlmaWNhbnRseSAtIGVzcGVjaWFsbHkgY29tcGFyZWQgdG8gZm9ybWVyCit3aWRlIHVuaWNvZGUgYnVpbGRzIC0gYXMsIGluIG1hbnkgY2FzZXMsIHN0cmluZ3Mgd2lsbCBiZSBwdXJlIEFTQ0lJCitldmVuIGluIGludGVybmF0aW9uYWwgY29udGV4dHMgKGJlY2F1c2UgbWFueSBzdHJpbmdzIHN0b3JlIG5vbi1odW1hbgorbGFuZ3VhZ2UgZGF0YSwgc3VjaCBhcyBYTUwgZnJhZ21lbnRzLCBIVFRQIGhlYWRlcnMsIEpTT04tZW5jb2RlZCBkYXRhLAorZXRjLikuICBXZSBhbHNvIGhvcGUgdGhhdCBpdCB3aWxsLCBmb3IgdGhlIHNhbWUgcmVhc29ucywgaW5jcmVhc2UgQ1BVCitjYWNoZSBlZmZpY2llbmN5IG9uIG5vbi10cml2aWFsIGFwcGxpY2F0aW9ucy4gVGhlIG1lbW9yeSB1c2FnZSBvZgorUHl0aG9uIDMuMyBpcyB0d28gdG8gdGhyZWUgdGltZXMgc21hbGxlciB0aGFuIFB5dGhvbiAzLjIsIGFuZCBhIGxpdHRsZQorYml0IGJldHRlciB0aGFuIFB5dGhvbiAyLjcsIG9uIGEgRGphbmdvIGJlbmNobWFyayAoc2VlIHRoZSBQRVAgZm9yCitkZXRhaWxzKS4KKworCitQRVAgMzE1MTogUmV3b3JraW5nIHRoZSBPUyBhbmQgSU8gZXhjZXB0aW9uIGhpZXJhcmNoeQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworOnBlcDpgMzE1MWAgLSBSZXdvcmtpbmcgdGhlIE9TIGFuZCBJTyBleGNlcHRpb24gaGllcmFyY2h5CisgUEVQIHdyaXR0ZW4gYW5kIGltcGxlbWVudGVkIGJ5IEFudG9pbmUgUGl0cm91LgorCitUaGUgaGllcmFyY2h5IG9mIGV4Y2VwdGlvbnMgcmFpc2VkIGJ5IG9wZXJhdGluZyBzeXN0ZW0gZXJyb3JzIGlzIG5vdyBib3RoCitzaW1wbGlmaWVkIGFuZCBmaW5lci1ncmFpbmVkLgorCitZb3UgZG9uJ3QgaGF2ZSB0byB3b3JyeSBhbnltb3JlIGFib3V0IGNob29zaW5nIHRoZSBhcHByb3ByaWF0ZSBleGNlcHRpb24KK3R5cGUgYmV0d2VlbiA6ZXhjOmBPU0Vycm9yYCwgOmV4YzpgSU9FcnJvcmAsIDpleGM6YEVudmlyb25tZW50RXJyb3JgLAorOmV4YzpgV2luZG93c0Vycm9yYCwgOmV4YzpgbW1hcC5lcnJvcmAsIDpleGM6YHNvY2tldC5lcnJvcmAgb3IKKzpleGM6YHNlbGVjdC5lcnJvcmAuICBBbGwgdGhlc2UgZXhjZXB0aW9uIHR5cGVzIGFyZSBub3cgb25seSBvbmU6Cis6ZXhjOmBPU0Vycm9yYC4gIFRoZSBvdGhlciBuYW1lcyBhcmUga2VwdCBhcyBhbGlhc2VzIGZvciBjb21wYXRpYmlsaXR5CityZWFzb25zLgorCitBbHNvLCBpdCBpcyBub3cgZWFzaWVyIHRvIGNhdGNoIGEgc3BlY2lmaWMgZXJyb3IgY29uZGl0aW9uLiAgSW5zdGVhZCBvZgoraW5zcGVjdGluZyB0aGUgYGBlcnJub2BgIGF0dHJpYnV0ZSAob3IgYGBhcmdzWzBdYGApIGZvciBhIHBhcnRpY3VsYXIKK2NvbnN0YW50IGZyb20gdGhlIDptb2Q6YGVycm5vYCBtb2R1bGUsIHlvdSBjYW4gY2F0Y2ggdGhlIGFkZXF1YXRlCis6ZXhjOmBPU0Vycm9yYCBzdWJjbGFzcy4gIFRoZSBhdmFpbGFibGUgc3ViY2xhc3NlcyBhcmUgdGhlIGZvbGxvd2luZzoKKworKiA6ZXhjOmBCbG9ja2luZ0lPRXJyb3JgCisqIDpleGM6YENoaWxkUHJvY2Vzc0Vycm9yYAorKiA6ZXhjOmBDb25uZWN0aW9uRXJyb3JgCisqIDpleGM6YEZpbGVFeGlzdHNFcnJvcmAKKyogOmV4YzpgRmlsZU5vdEZvdW5kRXJyb3JgCisqIDpleGM6YEludGVycnVwdGVkRXJyb3JgCisqIDpleGM6YElzQURpcmVjdG9yeUVycm9yYAorKiA6ZXhjOmBOb3RBRGlyZWN0b3J5RXJyb3JgCisqIDpleGM6YFBlcm1pc3Npb25FcnJvcmAKKyogOmV4YzpgUHJvY2Vzc0xvb2t1cEVycm9yYAorKiA6ZXhjOmBUaW1lb3V0RXJyb3JgCisKK0FuZCB0aGUgOmV4YzpgQ29ubmVjdGlvbkVycm9yYCBpdHNlbGYgaGFzIGZpbmVyLWdyYWluZWQgc3ViY2xhc3NlczoKKworKiA6ZXhjOmBCcm9rZW5QaXBlRXJyb3JgCisqIDpleGM6YENvbm5lY3Rpb25BYm9ydGVkRXJyb3JgCisqIDpleGM6YENvbm5lY3Rpb25SZWZ1c2VkRXJyb3JgCisqIDpleGM6YENvbm5lY3Rpb25SZXNldEVycm9yYAorCitUaGFua3MgdG8gdGhlIG5ldyBleGNlcHRpb25zLCBjb21tb24gdXNhZ2VzIG9mIHRoZSA6bW9kOmBlcnJub2AgY2FuIG5vdyBiZQorYXZvaWRlZC4gIEZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIGNvZGUgd3JpdHRlbiBmb3IgUHl0aG9uIDMuMjo6CisKKyAgICBmcm9tIGVycm5vIGltcG9ydCBFTk9FTlQsIEVBQ0NFUywgRVBFUk0KKworICAgIHRyeToKKyAgICAgICAgd2l0aCBvcGVuKCJkb2N1bWVudC50eHQiKSBhcyBmOgorICAgICAgICAgICAgY29udGVudCA9IGYucmVhZCgpCisgICAgZXhjZXB0IElPRXJyb3IgYXMgZXJyOgorICAgICAgICBpZiBlcnIuZXJybm8gPT0gRU5PRU5UOgorICAgICAgICAgICAgcHJpbnQoImRvY3VtZW50LnR4dCBmaWxlIGlzIG1pc3NpbmciKQorICAgICAgICBlbGlmIGVyci5lcnJubyBpbiAoRUFDQ0VTLCBFUEVSTSk6CisgICAgICAgICAgICBwcmludCgiWW91IGFyZSBub3QgYWxsb3dlZCB0byByZWFkIGRvY3VtZW50LnR4dCIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZQorCitjYW4gbm93IGJlIHdyaXR0ZW4gd2l0aG91dCB0aGUgOm1vZDpgZXJybm9gIGltcG9ydCBhbmQgd2l0aG91dCBtYW51YWwKK2luc3BlY3Rpb24gb2YgZXhjZXB0aW9uIGF0dHJpYnV0ZXM6OgorCisgICAgdHJ5OgorICAgICAgICB3aXRoIG9wZW4oImRvY3VtZW50LnR4dCIpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50ID0gZi5yZWFkKCkKKyAgICBleGNlcHQgRmlsZU5vdEZvdW5kRXJyb3I6CisgICAgICAgIHByaW50KCJkb2N1bWVudC50eHQgZmlsZSBpcyBtaXNzaW5nIikKKyAgICBleGNlcHQgUGVybWlzc2lvbkVycm9yOgorICAgICAgICBwcmludCgiWW91IGFyZSBub3QgYWxsb3dlZCB0byByZWFkIGRvY3VtZW50LnR4dCIpCisKKworUEVQIDM4MDogU3ludGF4IGZvciBEZWxlZ2F0aW5nIHRvIGEgU3ViZ2VuZXJhdG9yCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworOnBlcDpgMzgwYCAtIFN5bnRheCBmb3IgRGVsZWdhdGluZyB0byBhIFN1YmdlbmVyYXRvcgorIFBFUCB3cml0dGVuIGJ5IEdyZWcgRXdpbmcuCisKK1BFUCAzODAgYWRkcyB0aGUgYGB5aWVsZCBmcm9tYGAgZXhwcmVzc2lvbiwgYWxsb3dpbmcgYSBnZW5lcmF0b3IgdG8gZGVsZWdhdGUKK3BhcnQgb2YgaXRzIG9wZXJhdGlvbnMgdG8gYW5vdGhlciBnZW5lcmF0b3IuIFRoaXMgYWxsb3dzIGEgc2VjdGlvbiBvZiBjb2RlCitjb250YWluaW5nICd5aWVsZCcgdG8gYmUgZmFjdG9yZWQgb3V0IGFuZCBwbGFjZWQgaW4gYW5vdGhlciBnZW5lcmF0b3IuCitBZGRpdGlvbmFsbHksIHRoZSBzdWJnZW5lcmF0b3IgaXMgYWxsb3dlZCB0byByZXR1cm4gd2l0aCBhIHZhbHVlLCBhbmQgdGhlCit2YWx1ZSBpcyBtYWRlIGF2YWlsYWJsZSB0byB0aGUgZGVsZWdhdGluZyBnZW5lcmF0b3IuCisKK1doaWxlIGRlc2lnbmVkIHByaW1hcmlseSBmb3IgdXNlIGluIGRlbGVnYXRpbmcgdG8gYSBzdWJnZW5lcmF0b3IsIHRoZSBgYHlpZWxkCitmcm9tYGAgZXhwcmVzc2lvbiBhY3R1YWxseSBhbGxvd3MgZGVsZWdhdGlvbiB0byBhcmJpdHJhcnkgc3ViaXRlcmF0b3JzLgorCitGb3Igc2ltcGxlIGl0ZXJhdG9ycywgYGB5aWVsZCBmcm9tIGl0ZXJhYmxlYGAgaXMgZXNzZW50aWFsbHkganVzdCBhIHNob3J0ZW5lZAorZm9ybSBvZiBgYGZvciBpdGVtIGluIGl0ZXJhYmxlOiB5aWVsZCBpdGVtYGA6OgorCisgICAgPj4+IGRlZiBnKHgpOgorICAgIC4uLiAgICAgeWllbGQgZnJvbSByYW5nZSh4LCAwLCAtMSkKKyAgICAuLi4gICAgIHlpZWxkIGZyb20gcmFuZ2UoeCkKKyAgICAuLi4KKyAgICA+Pj4gbGlzdChnKDUpKQorICAgIFs1LCA0LCAzLCAyLCAxLCAwLCAxLCAyLCAzLCA0XQorCitIb3dldmVyLCB1bmxpa2UgYW4gb3JkaW5hcnkgbG9vcCwgYGB5aWVsZCBmcm9tYGAgYWxsb3dzIHN1YmdlbmVyYXRvcnMgdG8KK3JlY2VpdmUgc2VudCBhbmQgdGhyb3duIHZhbHVlcyBkaXJlY3RseSBmcm9tIHRoZSBjYWxsaW5nIHNjb3BlLCBhbmQKK3JldHVybiBhIGZpbmFsIHZhbHVlIHRvIHRoZSBvdXRlciBnZW5lcmF0b3I6OgorCisgICAgPj4+IGRlZiBhY2N1bXVsYXRlKHN0YXJ0PTApOgorICAgIC4uLiAgICAgdGFsbHkgPSBzdGFydAorICAgIC4uLiAgICAgd2hpbGUgMToKKyAgICAuLi4gICAgICAgICBuZXh0ID0geWllbGQKKyAgICAuLi4gICAgICAgICBpZiBuZXh0IGlzIE5vbmU6CisgICAgLi4uICAgICAgICAgICAgIHJldHVybiB0YWxseQorICAgIC4uLiAgICAgICAgIHRhbGx5ICs9IG5leHQKKyAgICAuLi4KKyAgICA+Pj4gZGVmIGdhdGhlcl90YWxsaWVzKHRhbGxpZXMsIHN0YXJ0PTApOgorICAgIC4uLiAgICAgd2hpbGUgMToKKyAgICAuLi4gICAgICAgICB0YWxseSA9IHlpZWxkIGZyb20gYWNjdW11bGF0ZSgpCisgICAgLi4uICAgICAgICAgdGFsbGllcy5hcHBlbmQodGFsbHkpCisgICAgLi4uCisgICAgPj4+IHRhbGxpZXMgPSBbXQorICAgID4+PiBhY2MgPSBnYXRoZXJfdGFsbGllcyh0YWxsaWVzKQorICAgID4+PiBuZXh0KGFjYykgIyBFbnN1cmUgdGhlIGFjY3VtdWxhdG9yIGlzIHJlYWR5IHRvIGFjY2VwdCB2YWx1ZXMKKyAgICA+Pj4gZm9yIGkgaW4gcmFuZ2UoMTApOgorICAgIC4uLiAgICAgYWNjLnNlbmQoaSkKKyAgICAuLi4KKyAgICA+Pj4gYWNjLnNlbmQoTm9uZSkgIyBGaW5pc2ggdGhlIGZpcnN0IHRhbGx5CisgICAgPj4+IGZvciBpIGluIHJhbmdlKDUpOgorICAgIC4uLiAgICAgYWNjLnNlbmQoaSkKKyAgICAuLi4KKyAgICA+Pj4gYWNjLnNlbmQoTm9uZSkgIyBGaW5pc2ggdGhlIHNlY29uZCB0YWxseQorICAgID4+PiB0YWxsaWVzCisgICAgWzQ1LCAxMF0KKworVGhlIG1haW4gcHJpbmNpcGxlIGRyaXZpbmcgdGhpcyBjaGFuZ2UgaXMgdG8gYWxsb3cgZXZlbiBnZW5lcmF0b3JzIHRoYXQgYXJlCitkZXNpZ25lZCB0byBiZSB1c2VkIHdpdGggdGhlIGBgc2VuZGBgIGFuZCBgYHRocm93YGAgbWV0aG9kcyB0byBiZSBzcGxpdCBpbnRvCittdWx0aXBsZSBzdWJnZW5lcmF0b3JzIGFzIGVhc2lseSBhcyBhIHNpbmdsZSBsYXJnZSBmdW5jdGlvbiBjYW4gYmUgc3BsaXQgaW50bworbXVsdGlwbGUgc3ViZnVuY3Rpb25zLgorCisoSW1wbGVtZW50YXRpb24gYnkgR3JlZyBFd2luZywgaW50ZWdyYXRlZCBpbnRvIDMuMyBieSBSZW5hdWQgQmxhbmNoLCBSeWFuCitLZWxseSBhbmQgTmljayBDb2dobGFuLCBkb2N1bWVudGF0aW9uIGJ5IFpiaWduaWV3IErEmWRyemVqZXdza2ktU3ptZWsgYW5kCitOaWNrIENvZ2hsYW4pCisKKworUEVQIDQwOTogU3VwcHJlc3NpbmcgZXhjZXB0aW9uIGNvbnRleHQKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKzpwZXA6YDQwOWAgLSBTdXBwcmVzc2luZyBleGNlcHRpb24gY29udGV4dAorIFBFUCB3cml0dGVuIGJ5IEV0aGFuIEZ1cm1hbiwgaW1wbGVtZW50ZWQgYnkgRXRoYW4gRnVybWFuIGFuZCBOaWNrIENvZ2hsYW4uCisKK1BFUCA0MDkgaW50cm9kdWNlcyBuZXcgc3ludGF4IHRoYXQgYWxsb3dzIHRoZSBkaXNwbGF5IG9mIHRoZSBjaGFpbmVkCitleGNlcHRpb24gY29udGV4dCB0byBiZSBkaXNhYmxlZC4gVGhpcyBhbGxvd3MgY2xlYW5lciBlcnJvciBtZXNzYWdlcyBpbgorYXBwbGljYXRpb25zIHRoYXQgY29udmVydCBiZXR3ZWVuIGV4Y2VwdGlvbiB0eXBlczo6CisKKyAgICA+Pj4gY2xhc3MgRDoKKyAgICAuLi4gICAgIGRlZiBfX2luaXRfXyhzZWxmLCBleHRyYSk6CisgICAgLi4uICAgICAgICAgc2VsZi5fZXh0cmFfYXR0cmlidXRlcyA9IGV4dHJhCisgICAgLi4uICAgICBkZWYgX19nZXRhdHRyX18oc2VsZiwgYXR0cik6CisgICAgLi4uICAgICAgICAgdHJ5OgorICAgIC4uLiAgICAgICAgICAgICByZXR1cm4gc2VsZi5fZXh0cmFfYXR0cmlidXRlc1thdHRyXQorICAgIC4uLiAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAuLi4gICAgICAgICAgICAgcmFpc2UgQXR0cmlidXRlRXJyb3IoYXR0cikgZnJvbSBOb25lCisgICAgLi4uCisgICAgPj4+IEQoe30pLngKKyAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICBGaWxlICI8c3RkaW4+IiwgbGluZSAxLCBpbiA8bW9kdWxlPgorICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgOCwgaW4gX19nZXRhdHRyX18KKyAgICBBdHRyaWJ1dGVFcnJvcjogeAorCitXaXRob3V0IHRoZSBgYGZyb20gTm9uZWBgIHN1ZmZpeCB0byBzdXBwcmVzcyB0aGUgY2F1c2UsIHRoZSBvcmlnaW5hbAorZXhjZXB0aW9uIHdvdWxkIGJlIGRpc3BsYXllZCBieSBkZWZhdWx0OjoKKworICAgID4+PiBjbGFzcyBDOgorICAgIC4uLiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGV4dHJhKToKKyAgICAuLi4gICAgICAgICBzZWxmLl9leHRyYV9hdHRyaWJ1dGVzID0gZXh0cmEKKyAgICAuLi4gICAgIGRlZiBfX2dldGF0dHJfXyhzZWxmLCBhdHRyKToKKyAgICAuLi4gICAgICAgICB0cnk6CisgICAgLi4uICAgICAgICAgICAgIHJldHVybiBzZWxmLl9leHRyYV9hdHRyaWJ1dGVzW2F0dHJdCisgICAgLi4uICAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgIC4uLiAgICAgICAgICAgICByYWlzZSBBdHRyaWJ1dGVFcnJvcihhdHRyKQorICAgIC4uLgorICAgID4+PiBDKHt9KS54CisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgNiwgaW4gX19nZXRhdHRyX18KKyAgICBLZXlFcnJvcjogJ3gnCisKKyAgICBEdXJpbmcgaGFuZGxpbmcgb2YgdGhlIGFib3ZlIGV4Y2VwdGlvbiwgYW5vdGhlciBleGNlcHRpb24gb2NjdXJyZWQ6CisKKyAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICBGaWxlICI8c3RkaW4+IiwgbGluZSAxLCBpbiA8bW9kdWxlPgorICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgOCwgaW4gX19nZXRhdHRyX18KKyAgICBBdHRyaWJ1dGVFcnJvcjogeAorCitObyBkZWJ1Z2dpbmcgY2FwYWJpbGl0eSBpcyBsb3N0LCBhcyB0aGUgb3JpZ2luYWwgZXhjZXB0aW9uIGNvbnRleHQgcmVtYWlucworYXZhaWxhYmxlIGlmIG5lZWRlZCAoZm9yIGV4YW1wbGUsIGlmIGFuIGludGVydmVuaW5nIGxpYnJhcnkgaGFzIGluY29ycmVjdGx5CitzdXBwcmVzc2VkIHZhbHVhYmxlIHVuZGVybHlpbmcgZGV0YWlscyk6OgorCisgICAgPj4+IHRyeToKKyAgICAuLi4gICAgIEQoe30pLngKKyAgICAuLi4gZXhjZXB0IEF0dHJpYnV0ZUVycm9yIGFzIGV4YzoKKyAgICAuLi4gICAgIHByaW50KHJlcHIoZXhjLl9fY29udGV4dF9fKSkKKyAgICAuLi4KKyAgICBLZXlFcnJvcigneCcsKQorCisKK1BFUCA0MTQ6IEV4cGxpY2l0IFVuaWNvZGUgbGl0ZXJhbHMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKzpwZXA6YDQxNGAgLSBFeHBsaWNpdCBVbmljb2RlIGxpdGVyYWxzCisgUEVQIHdyaXR0ZW4gYnkgQXJtaW4gUm9uYWNoZXIuCisKK1RvIGVhc2UgdGhlIHRyYW5zaXRpb24gZnJvbSBQeXRob24gMiBmb3IgVW5pY29kZSBhd2FyZSBQeXRob24gYXBwbGljYXRpb25zCit0aGF0IG1ha2UgaGVhdnkgdXNlIG9mIFVuaWNvZGUgbGl0ZXJhbHMsIFB5dGhvbiAzLjMgb25jZSBhZ2FpbiBzdXBwb3J0cyB0aGUKKyJgYHVgYCIgcHJlZml4IGZvciBzdHJpbmcgbGl0ZXJhbHMuIFRoaXMgcHJlZml4IGhhcyBubyBzZW1hbnRpYyBzaWduaWZpY2FuY2UKK2luIFB5dGhvbiAzLCBpdCBpcyBwcm92aWRlZCBzb2xlbHkgdG8gcmVkdWNlIHRoZSBudW1iZXIgb2YgcHVyZWx5IG1lY2hhbmljYWwKK2NoYW5nZXMgaW4gbWlncmF0aW5nIHRvIFB5dGhvbiAzLCBtYWtpbmcgaXQgZWFzaWVyIGZvciBkZXZlbG9wZXJzIHRvIGZvY3VzIG9uCit0aGUgbW9yZSBzaWduaWZpY2FudCBzZW1hbnRpYyBjaGFuZ2VzIChzdWNoIGFzIHRoZSBzdHJpY3RlciBkZWZhdWx0CitzZXBhcmF0aW9uIG9mIGJpbmFyeSBhbmQgdGV4dCBkYXRhKS4KKworCitQRVAgMzE1NTogUXVhbGlmaWVkIG5hbWUgZm9yIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworOnBlcDpgMzE1NWAgLSBRdWFsaWZpZWQgbmFtZSBmb3IgY2xhc3NlcyBhbmQgZnVuY3Rpb25zCisgUEVQIHdyaXR0ZW4gYW5kIGltcGxlbWVudGVkIGJ5IEFudG9pbmUgUGl0cm91LgorCitGdW5jdGlvbnMgYW5kIGNsYXNzIG9iamVjdHMgaGF2ZSBhIG5ldyBgYF9fcXVhbG5hbWVfX2BgIGF0dHJpYnV0ZSByZXByZXNlbnRpbmcKK3RoZSAicGF0aCIgZnJvbSB0aGUgbW9kdWxlIHRvcC1sZXZlbCB0byB0aGVpciBkZWZpbml0aW9uLiAgRm9yIGdsb2JhbCBmdW5jdGlvbnMKK2FuZCBjbGFzc2VzLCB0aGlzIGlzIHRoZSBzYW1lIGFzIGBgX19uYW1lX19gYC4gIEZvciBvdGhlciBmdW5jdGlvbnMgYW5kIGNsYXNzZXMsCitpdCBwcm92aWRlcyBiZXR0ZXIgaW5mb3JtYXRpb24gYWJvdXQgd2hlcmUgdGhleSB3ZXJlIGFjdHVhbGx5IGRlZmluZWQsIGFuZAoraG93IHRoZXkgbWlnaHQgYmUgYWNjZXNzaWJsZSBmcm9tIHRoZSBnbG9iYWwgc2NvcGUuCisKK0V4YW1wbGUgd2l0aCAobm9uLWJvdW5kKSBtZXRob2RzOjoKKworICAgPj4+IGNsYXNzIEM6CisgICAuLi4gICAgIGRlZiBtZXRoKHNlbGYpOgorICAgLi4uICAgICAgICAgcGFzcworICAgPj4+IEMubWV0aC5fX25hbWVfXworICAgJ21ldGgnCisgICA+Pj4gQy5tZXRoLl9fcXVhbG5hbWVfXworICAgJ0MubWV0aCcKKworRXhhbXBsZSB3aXRoIG5lc3RlZCBjbGFzc2VzOjoKKworICAgPj4+IGNsYXNzIEM6CisgICAuLi4gICAgIGNsYXNzIEQ6CisgICAuLi4gICAgICAgICBkZWYgbWV0aChzZWxmKToKKyAgIC4uLiAgICAgICAgICAgICBwYXNzCisgICAuLi4KKyAgID4+PiBDLkQuX19uYW1lX18KKyAgICdEJworICAgPj4+IEMuRC5fX3F1YWxuYW1lX18KKyAgICdDLkQnCisgICA+Pj4gQy5ELm1ldGguX19uYW1lX18KKyAgICdtZXRoJworICAgPj4+IEMuRC5tZXRoLl9fcXVhbG5hbWVfXworICAgJ0MuRC5tZXRoJworCitFeGFtcGxlIHdpdGggbmVzdGVkIGZ1bmN0aW9uczo6CisKKyAgID4+PiBkZWYgb3V0ZXIoKToKKyAgIC4uLiAgICAgZGVmIGlubmVyKCk6CisgICAuLi4gICAgICAgICBwYXNzCisgICAuLi4gICAgIHJldHVybiBpbm5lcgorICAgLi4uCisgICA+Pj4gb3V0ZXIoKS5fX25hbWVfXworICAgJ2lubmVyJworICAgPj4+IG91dGVyKCkuX19xdWFsbmFtZV9fCisgICAnb3V0ZXIuPGxvY2Fscz4uaW5uZXInCisKK1RoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhvc2Ugb2JqZWN0cyBpcyBhbHNvIGNoYW5nZWQgdG8gaW5jbHVkZSB0aGUKK25ldywgbW9yZSBwcmVjaXNlIGluZm9ybWF0aW9uOjoKKworICAgPj4+IHN0cihDLkQpCisgICAiPGNsYXNzICdfX21haW5fXy5DLkQnPiIKKyAgID4+PiBzdHIoQy5ELm1ldGgpCisgICAnPGZ1bmN0aW9uIEMuRC5tZXRoIGF0IDB4N2Y0NmI5ZmUzMWUwPicKKworCitPdGhlciBMYW5ndWFnZSBDaGFuZ2VzCis9PT09PT09PT09PT09PT09PT09PT09CisKK1NvbWUgc21hbGxlciBjaGFuZ2VzIG1hZGUgdG8gdGhlIGNvcmUgUHl0aG9uIGxhbmd1YWdlIGFyZToKKworKiBBZGRlZCBzdXBwb3J0IGZvciBVbmljb2RlIG5hbWUgYWxpYXNlcyBhbmQgbmFtZWQgc2VxdWVuY2VzLgorICBCb3RoIDpmdW5jOmB1bmljb2RlZGF0YS5sb29rdXAoKWAgYW5kIGBgJ1xOey4uLn0nYGAgbm93IHJlc29sdmUgbmFtZSBhbGlhc2VzLAorICBhbmQgOmZ1bmM6YHVuaWNvZGVkYXRhLmxvb2t1cCgpYCByZXNvbHZlcyBuYW1lZCBzZXF1ZW5jZXMgdG9vLgorCisgIChDb250cmlidXRlZCBieSBFemlvIE1lbG90dGkgaW4gOmlzc3VlOmAxMjc1M2ApCisKKyogRXF1YWxpdHkgY29tcGFyaXNvbnMgb24gOmZ1bmM6YHJhbmdlYCBvYmplY3RzIG5vdyByZXR1cm4gYSByZXN1bHQgcmVmbGVjdGluZworICB0aGUgZXF1YWxpdHkgb2YgdGhlIHVuZGVybHlpbmcgc2VxdWVuY2VzIGdlbmVyYXRlZCBieSB0aG9zZSByYW5nZSBvYmplY3RzLgorCisgICg6aXNzdWU6YDEzMjAxYCkKKworKiBUaGUgYGBjb3VudCgpYGAsIGBgZmluZCgpYGAsIGBgcmZpbmQoKWBgLCBgYGluZGV4KClgYCBhbmQgYGByaW5kZXgoKWBgCisgIG1ldGhvZHMgb2YgOmNsYXNzOmBieXRlc2AgYW5kIDpjbGFzczpgYnl0ZWFycmF5YCBvYmplY3RzIG5vdyBhY2NlcHQgYW4KKyAgaW50ZWdlciBiZXR3ZWVuIDAgYW5kIDI1NSBhcyB0aGVpciBmaXJzdCBhcmd1bWVudC4KKworICAoOmlzc3VlOmAxMjE3MGApCisKKworTmV3IGFuZCBJbXByb3ZlZCBNb2R1bGVzCis9PT09PT09PT09PT09PT09PT09PT09PT0KKworYWJjCistLS0KKworSW1wcm92ZWQgc3VwcG9ydCBmb3IgYWJzdHJhY3QgYmFzZSBjbGFzc2VzIGNvbnRhaW5pbmcgZGVzY3JpcHRvcnMgY29tcG9zZWQgd2l0aAorYWJzdHJhY3QgbWV0aG9kcy4gVGhlIHJlY29tbWVuZGVkIGFwcHJvYWNoIHRvIGRlY2xhcmluZyBhYnN0cmFjdCBkZXNjcmlwdG9ycyBpcworbm93IHRvIHByb3ZpZGUgOmF0dHI6YF9faXNhYnN0cmFjdG1ldGhvZF9fYCBhcyBhIGR5bmFtaWNhbGx5IHVwZGF0ZWQKK3Byb3BlcnR5LiBUaGUgYnVpbHQtaW4gZGVzY3JpcHRvcnMgaGF2ZSBiZWVuIHVwZGF0ZWQgYWNjb3JkaW5nbHkuCisKKyAgKiA6Y2xhc3M6YGFiYy5hYnN0cmFjdHByb3BlcnR5YCBoYXMgYmVlbiBkZXByZWNhdGVkLCB1c2UgOmNsYXNzOmBwcm9wZXJ0eWAKKyAgICB3aXRoIDpmdW5jOmBhYmMuYWJzdHJhY3RtZXRob2RgIGluc3RlYWQuCisgICogOmNsYXNzOmBhYmMuYWJzdHJhY3RjbGFzc21ldGhvZGAgaGFzIGJlZW4gZGVwcmVjYXRlZCwgdXNlCisgICAgOmNsYXNzOmBjbGFzc21ldGhvZGAgd2l0aCA6ZnVuYzpgYWJjLmFic3RyYWN0bWV0aG9kYCBpbnN0ZWFkLgorICAqIDpjbGFzczpgYWJjLmFic3RyYWN0c3RhdGljbWV0aG9kYCBoYXMgYmVlbiBkZXByZWNhdGVkLCB1c2UKKyAgICA6Y2xhc3M6YHN0YXRpY21ldGhvZGAgd2l0aCA6ZnVuYzpgYWJjLmFic3RyYWN0bWV0aG9kYCBpbnN0ZWFkLgorCisoQ29udHJpYnV0ZWQgYnkgRGFycmVuIERhbGUgaW4gOmlzc3VlOmAxMTYxMGApCisKK2FycmF5CistLS0tLQorCitUaGUgOm1vZDpgYXJyYXlgIG1vZHVsZSBzdXBwb3J0cyB0aGUgOmM6dHlwZTpgbG9uZyBsb25nYCB0eXBlIHVzaW5nIGBgcWBgIGFuZAorYGBRYGAgdHlwZSBjb2Rlcy4KKworKENvbnRyaWJ1dGVkIGJ5IE9yZW4gVGlyb3NoIGFuZCBIaXJva2F6dSBZYW1hbW90byBpbiA6aXNzdWU6YDExNzI3MTFgKQorCisKK2J6MgorLS0tCisKK1RoZSA6bW9kOmBiejJgIG1vZHVsZSBoYXMgYmVlbiByZXdyaXR0ZW4gZnJvbSBzY3JhdGNoLiBJbiB0aGUgcHJvY2Vzcywgc2V2ZXJhbAorbmV3IGZlYXR1cmVzIGhhdmUgYmVlbiBhZGRlZDoKKworKiA6Y2xhc3M6YGJ6Mi5CWjJGaWxlYCBjYW4gbm93IHJlYWQgZnJvbSBhbmQgd3JpdGUgdG8gYXJiaXRyYXJ5IGZpbGUtbGlrZQorICBvYmplY3RzLCBieSBtZWFucyBvZiBpdHMgY29uc3RydWN0b3IncyAqZmlsZW9iaiogYXJndW1lbnQuCisKKyAgKENvbnRyaWJ1dGVkIGJ5IE5hZGVlbSBWYXdkYSBpbiA6aXNzdWU6YDU4NjNgKQorCisqIDpjbGFzczpgYnoyLkJaMkZpbGVgIGFuZCA6ZnVuYzpgYnoyLmRlY29tcHJlc3NgIGNhbiBub3cgZGVjb21wcmVzcworICBtdWx0aS1zdHJlYW0gaW5wdXRzIChzdWNoIGFzIHRob3NlIHByb2R1Y2VkIGJ5IHRoZSA6cHJvZ3JhbTpgcGJ6aXAyYCB0b29sKS4KKyAgOmNsYXNzOmBiejIuQloyRmlsZWAgY2FuIG5vdyBhbHNvIGJlIHVzZWQgdG8gY3JlYXRlIHRoaXMgdHlwZSBvZiBmaWxlLCB1c2luZworICB0aGUgYGAnYSdgYCAoYXBwZW5kKSBtb2RlLgorCisgIChDb250cmlidXRlZCBieSBOaXIgQWlkZXMgaW4gOmlzc3VlOmAxNjI1YCkKKworKiA6Y2xhc3M6YGJ6Mi5CWjJGaWxlYCBub3cgaW1wbGVtZW50cyBhbGwgb2YgdGhlIDpjbGFzczpgaW8uQnVmZmVyZWRJT0Jhc2VgIEFQSSwKKyAgZXhjZXB0IGZvciB0aGUgOm1ldGg6YGRldGFjaGAgYW5kIDptZXRoOmB0cnVuY2F0ZWAgbWV0aG9kcy4KKworCitjb2RlY3MKKy0tLS0tLQorCitUaGUgOm1vZDpgfmVuY29kaW5ncy5tYmNzYCBjb2RlYyBoYXMgYmVlbiByZXdyaXR0ZW4gdG8gaGFuZGxlIGNvcnJlY3RseQorYGByZXBsYWNlYGAgYW5kIGBgaWdub3JlYGAgZXJyb3IgaGFuZGxlcnMgb24gYWxsIFdpbmRvd3MgdmVyc2lvbnMuICBUaGUKKzptb2Q6YH5lbmNvZGluZ3MubWJjc2AgY29kZWMgbm93IHN1cHBvcnRzIGFsbCBlcnJvciBoYW5kbGVycywgaW5zdGVhZCBvZiBvbmx5CitgYHJlcGxhY2VgYCB0byBlbmNvZGUgYW5kIGBgaWdub3JlYGAgdG8gZGVjb2RlLgorCitBIG5ldyBXaW5kb3dzLW9ubHkgY29kZWMgaGFzIGJlZW4gYWRkZWQ6IGBgY3A2NTAwMWBgICg6aXNzdWU6YDEzMjE2YCkuIEl0IGlzIHRoZQorV2luZG93cyBjb2RlIHBhZ2UgNjUwMDEgKFdpbmRvd3MgVVRGLTgsIGBgQ1BfVVRGOGBgKS4gIEZvciBleGFtcGxlLCBpdCBpcyB1c2VkCitieSBgYHN5cy5zdGRvdXRgYCBpZiB0aGUgY29uc29sZSBvdXRwdXQgY29kZSBwYWdlIGlzIHNldCB0byBjcDY1MDAxIChlLmcuLCB1c2luZworYGBjaGNwIDY1MDAxYGAgY29tbWFuZCkuCisKK011bHRpYnl0ZSBDSksgZGVjb2RlcnMgbm93IHJlc3luY2hyb25pemUgZmFzdGVyLiAgVGhleSBvbmx5IGlnbm9yZSB0aGUgZmlyc3QKK2J5dGUgb2YgYW4gaW52YWxpZCBieXRlIHNlcXVlbmNlLiBGb3IgZXhhbXBsZSwgYGBiJ1x4ZmZcbicuZGVjb2RlKCdnYjIzMTInLAorJ3JlcGxhY2UnKWBgIG5vdyByZXR1cm5zIGEgYGBcbmBgIGFmdGVyIHRoZSByZXBsYWNlbWVudCBjaGFyYWN0ZXIuCisKKyg6aXNzdWU6YDEyMDE2YCkKKworSW5jcmVtZW50YWwgQ0pLIGNvZGVjIGVuY29kZXJzIGFyZSBubyBsb25nZXIgcmVzZXQgYXQgZWFjaCBjYWxsIHRvIHRoZWlyCitlbmNvZGUoKSBtZXRob2RzLiBGb3IgZXhhbXBsZTo6CisKKyAgICAkIC4vcHl0aG9uIC1xCisgICAgPj4+IGltcG9ydCBjb2RlY3MKKyAgICA+Pj4gZW5jb2RlciA9IGNvZGVjcy5nZXRpbmNyZW1lbnRhbGVuY29kZXIoJ2h6JykoJ3N0cmljdCcpCisgICAgPj4+IGInJy5qb2luKGVuY29kZXIuZW5jb2RlKHgpIGZvciB4IGluICdcdTUyZmZcdTY1YmRcdTY1YmNcdTRlYmFcdTMwMDIgQnllLicpCisgICAgYid+e05wSilsNkhLISN+fSBCeWUuJworCitUaGlzIGV4YW1wbGUgZ2l2ZXMgYGBiJ357TnB+fX57Sil+fX57bDZ+fX57SEt+fX57ISN+fSBCeWUuJ2BgIHdpdGggb2xkZXIgUHl0aG9uCit2ZXJzaW9ucy4KKworKDppc3N1ZTpgMTIxMDBgKQorCitUaGUgYGB1bmljb2RlX2ludGVybmFsYGAgY29kZWMgaGFzIGJlZW4gZGVwcmVjYXRlZC4KKworY3J5cHQKKy0tLS0tCisKK0FkZGl0aW9uIG9mIHNhbHQgYW5kIG1vZHVsYXIgY3J5cHQgZm9ybWF0IGFuZCB0aGUgOmZ1bmM6YH5jcnlwdC5ta3NhbHRgCitmdW5jdGlvbiB0byB0aGUgOm1vZDpgY3J5cHRgIG1vZHVsZS4KKworKDppc3N1ZTpgMTA5MjRgKQorCitjdXJzZXMKKy0tLS0tLQorCisgKiBJZiB0aGUgOm1vZDpgY3Vyc2VzYCBtb2R1bGUgaXMgbGlua2VkIHRvIHRoZSBuY3Vyc2VzdyBsaWJyYXJ5LCB1c2UgVW5pY29kZQorICAgZnVuY3Rpb25zIHdoZW4gVW5pY29kZSBzdHJpbmdzIG9yIGNoYXJhY3RlcnMgYXJlIHBhc3NlZCAoZS5nLgorICAgOmM6ZnVuYzpgd2FkZHdzdHJgKSwgYW5kIGJ5dGVzIGZ1bmN0aW9ucyBvdGhlcndpc2UgKGUuZy4gOmM6ZnVuYzpgd2FkZHN0cmApLgorICogVXNlIHRoZSBsb2NhbGUgZW5jb2RpbmcgaW5zdGVhZCBvZiBgYHV0Zi04YGAgdG8gZW5jb2RlIFVuaWNvZGUgc3RyaW5ncy4KKyAqIDpjbGFzczpgY3Vyc2VzLndpbmRvd2AgaGFzIGEgbmV3IDphdHRyOmBjdXJzZXMud2luZG93LmVuY29kaW5nYCBhdHRyaWJ1dGUuCisgKiBUaGUgOmNsYXNzOmBjdXJzZXMud2luZG93YCBjbGFzcyBoYXMgYSBuZXcgOm1ldGg6YH5jdXJzZXMud2luZG93LmdldF93Y2hgCisgICBtZXRob2QgdG8gZ2V0IGEgd2lkZSBjaGFyYWN0ZXIKKyAqIFRoZSA6bW9kOmBjdXJzZXNgIG1vZHVsZSBoYXMgYSBuZXcgOm1ldGg6YH5jdXJzZXMudW5nZXRfd2NoYCBmdW5jdGlvbiB0bworICAgcHVzaCBhIHdpZGUgY2hhcmFjdGVyIHNvIHRoZSBuZXh0IDptZXRoOmB+Y3Vyc2VzLndpbmRvdy5nZXRfd2NoYCB3aWxsIHJldHVybgorICAgaXQKKworKENvbnRyaWJ1dGVkIGJ5IEnDsWlnbyBTZXJuYSBpbiA6aXNzdWU6YDY3NTVgKQorCitmYXVsdGhhbmRsZXIKKy0tLS0tLS0tLS0tLQorCitOZXcgbW9kdWxlOiA6bW9kOmBmYXVsdGhhbmRsZXJgLgorCisgKiA6ZW52dmFyOmBQWVRIT05GQVVMVEhBTkRMRVJgCisgKiA6b3B0aW9uOmAtWGAgYGBmYXVsdGhhbmRsZXJgYAorCitmdHBsaWIKKy0tLS0tLQorCitUaGUgOmNsYXNzOmB+ZnRwbGliLkZUUF9UTFNgIGNsYXNzIG5vdyBwcm92aWRlcyBhIG5ldworOmZ1bmM6YH5mdHBsaWIuRlRQX1RMUy5jY2NgIGZ1bmN0aW9uIHRvIHJldmVydCBjb250cm9sIGNoYW5uZWwgYmFjayB0bworcGxhaW50ZXh0LiAgVGhpcyBjYW4gYmUgdXNlZnVsIHRvIHRha2UgYWR2YW50YWdlIG9mIGZpcmV3YWxscyB0aGF0IGtub3cgaG93IHRvCitoYW5kbGUgTkFUIHdpdGggbm9uLXNlY3VyZSBGVFAgd2l0aG91dCBvcGVuaW5nIGZpeGVkIHBvcnRzLgorCisoQ29udHJpYnV0ZWQgYnkgR2lhbXBhb2xvIFJvZG9sw6AgaW4gOmlzc3VlOmAxMjEzOWApCisKKworaW1hcGxpYgorLS0tLS0tLQorCitUaGUgOmNsYXNzOmB+aW1hcGxpYi5JTUFQNF9TU0xgIGNvbnN0cnVjdG9yIG5vdyBhY2NlcHRzIGFuIFNTTENvbnRleHQKK3BhcmFtZXRlciB0byBjb250cm9sIHBhcmFtZXRlcnMgb2YgdGhlIHNlY3VyZSBjaGFubmVsLgorCisoQ29udHJpYnV0ZWQgYnkgU2lqaW4gSm9zZXBoIGluIDppc3N1ZTpgODgwOGApCisKKworaW8KKy0tCisKK1RoZSA6ZnVuYzpgfmlvLm9wZW5gIGZ1bmN0aW9uIGhhcyBhIG5ldyBgYCd4J2BgIG1vZGUgdGhhdCBjYW4gYmUgdXNlZCB0bworZXhjbHVzaXZlbHkgY3JlYXRlIGEgbmV3IGZpbGUsIGFuZCByYWlzZSBhIDpleGM6YEZpbGVFeGlzdHNFcnJvcmAgaWYgdGhlIGZpbGUKK2FscmVhZHkgZXhpc3RzLiBJdCBpcyBiYXNlZCBvbiB0aGUgQzExICd4JyBtb2RlIHRvIGZvcGVuKCkuCisKKyhDb250cmlidXRlZCBieSBEYXZpZCBUb3duc2hlbmQgaW4gOmlzc3VlOmAxMjc2MGApCisKKworbHptYQorLS0tLQorCitUaGUgbmV3bHktYWRkZWQgOm1vZDpgbHptYWAgbW9kdWxlIHByb3ZpZGVzIGRhdGEgY29tcHJlc3Npb24gYW5kIGRlY29tcHJlc3Npb24KK3VzaW5nIHRoZSBMWk1BIGFsZ29yaXRobSwgaW5jbHVkaW5nIHN1cHBvcnQgZm9yIHRoZSBgYC54emBgIGFuZCBgYC5sem1hYGAKK2ZpbGUgZm9ybWF0cy4KKworKENvbnRyaWJ1dGVkIGJ5IE5hZGVlbSBWYXdkYSBhbmQgUGVyIMOYeXZpbmQgS2FybHNlbiBpbiA6aXNzdWU6YDY3MTVgKQorCisKK21hdGgKKy0tLS0KKworVGhlIDptb2Q6YG1hdGhgIG1vZHVsZSBoYXMgYSBuZXcgZnVuY3Rpb246CisKKyAgKiA6ZnVuYzpgfm1hdGgubG9nMmA6IHJldHVybiB0aGUgYmFzZS0yIGxvZ2FyaXRobSBvZiAqeCoKKyAgICAoV3JpdHRlbiBieSBNYXJrIERpY2tpbnNvbiBpbiA6aXNzdWU6YDExODg4YCkuCisKKworbm50cGxpYgorLS0tLS0tLQorCitUaGUgOmNsYXNzOmBubnRwbGliLk5OVFBgIGNsYXNzIG5vdyBzdXBwb3J0cyB0aGUgY29udGV4dCBtYW5hZ2VyIHByb3RvY29sIHRvCit1bmNvbmRpdGlvbmFsbHkgY29uc3VtZSA6ZXhjOmBzb2NrZXQuZXJyb3JgIGV4Y2VwdGlvbnMgYW5kIHRvIGNsb3NlIHRoZSBOTlRQCitjb25uZWN0aW9uIHdoZW4gZG9uZTo6CisKKyAgPj4+IGZyb20gbm50cGxpYiBpbXBvcnQgTk5UUAorICA+Pj4gd2l0aCBOTlRQKCduZXdzLmdtYW5lLm9yZycpIGFzIG46CisgIC4uLiAgICAgbi5ncm91cCgnZ21hbmUuY29tcC5weXRob24uY29tbWl0dGVycycpCisgIC4uLgorICAoJzIxMSAxNzU1IDEgMTc1NSBnbWFuZS5jb21wLnB5dGhvbi5jb21taXR0ZXJzJywgMTc1NSwgMSwgMTc1NSwgJ2dtYW5lLmNvbXAucHl0aG9uLmNvbW1pdHRlcnMnKQorICA+Pj4KKworKENvbnRyaWJ1dGVkIGJ5IEdpYW1wYW9sbyBSb2RvbMOgIGluIDppc3N1ZTpgOTc5NWApCisKKworb3MKKy0tCisKKyogVGhlIDptb2Q6YG9zYCBtb2R1bGUgaGFzIGEgbmV3IDpmdW5jOmB+b3MucGlwZTJgIGZ1bmN0aW9uIHRoYXQgbWFrZXMgaXQKKyAgcG9zc2libGUgdG8gY3JlYXRlIGEgcGlwZSB3aXRoIDpkYXRhOmB+b3MuT19DTE9FWEVDYCBvcgorICA6ZGF0YTpgfm9zLk9fTk9OQkxPQ0tgIGZsYWdzIHNldCBhdG9taWNhbGx5LiBUaGlzIGlzIGVzcGVjaWFsbHkgdXNlZnVsIHRvCisgIGF2b2lkIHJhY2UgY29uZGl0aW9ucyBpbiBtdWx0aS10aHJlYWRlZCBwcm9ncmFtcy4KKworKiBUaGUgOm1vZDpgb3NgIG1vZHVsZSBoYXMgYSBuZXcgOmZ1bmM6YH5vcy5zZW5kZmlsZWAgZnVuY3Rpb24gd2hpY2ggcHJvdmlkZXMKKyAgYW4gZWZmaWNlbnQgInplcm8tY29weSIgd2F5IGZvciBjb3B5aW5nIGRhdGEgZnJvbSBvbmUgZmlsZSAob3Igc29ja2V0KQorICBkZXNjcmlwdG9yIHRvIGFub3RoZXIuIFRoZSBwaHJhc2UgInplcm8tY29weSIgcmVmZXJzIHRvIHRoZSBmYWN0IHRoYXQgYWxsIG9mCisgIHRoZSBjb3B5aW5nIG9mIGRhdGEgYmV0d2VlbiB0aGUgdHdvIGRlc2NyaXB0b3JzIGlzIGRvbmUgZW50aXJlbHkgYnkgdGhlCisgIGtlcm5lbCwgd2l0aCBubyBjb3B5aW5nIG9mIGRhdGEgaW50byB1c2Vyc3BhY2UgYnVmZmVycy4gOmZ1bmM6YH5vcy5zZW5kZmlsZWAKKyAgY2FuIGJlIHVzZWQgdG8gZWZmaWNpZW50bHkgY29weSBkYXRhIGZyb20gYSBmaWxlIG9uIGRpc2sgdG8gYSBuZXR3b3JrIHNvY2tldCwKKyAgZS5nLiBmb3IgZG93bmxvYWRpbmcgYSBmaWxlLgorCisgIChQYXRjaCBzdWJtaXR0ZWQgYnkgUm9zcyBMYWdlcndhbGwgYW5kIEdpYW1wYW9sbyBSb2RvbMOgIGluIDppc3N1ZTpgMTA4ODJgLikKKworKiBUaGUgOm1vZDpgb3NgIG1vZHVsZSBoYXMgdHdvIG5ldyBmdW5jdGlvbnM6IDpmdW5jOmB+b3MuZ2V0cHJpb3JpdHlgIGFuZAorICA6ZnVuYzpgfm9zLnNldHByaW9yaXR5YC4gVGhleSBjYW4gYmUgdXNlZCB0byBnZXQgb3Igc2V0IHByb2Nlc3MKKyAgbmljZW5lc3MvcHJpb3JpdHkgaW4gYSBmYXNoaW9uIHNpbWlsYXIgdG8gOmZ1bmM6YG9zLm5pY2VgIGJ1dCBleHRlbmRlZCB0byBhbGwKKyAgcHJvY2Vzc2VzIGluc3RlYWQgb2YganVzdCB0aGUgY3VycmVudCBvbmUuCisKKyAgKFBhdGNoIHN1Ym1pdHRlZCBieSBHaWFtcGFvbG8gUm9kb2zDoCBpbiA6aXNzdWU6YDEwNzg0YC4pCisKKyogVGhlIDptb2Q6YG9zYCBtb2R1bGUgaGFzIGEgbmV3IDpmdW5jOmB+b3MuZndhbGtgIGZ1bmN0aW9uIHNpbWlsYXIgdG8KKyAgOmZ1bmM6YH5vcy53YWxrYCBleGNlcHQgdGhhdCBpdCBhbHNvIHlpZWxkcyBmaWxlIGRlc2NyaXB0b3JzIHJlZmVycmluZyB0byB0aGUKKyAgZGlyZWN0b3JpZXMgdmlzaXRlZC4gVGhpcyBpcyBlc3BlY2lhbGx5IHVzZWZ1bCB0byBhdm9pZCBzeW1saW5rIHJhY2VzLgorCisqICJhdCIgZnVuY3Rpb25zICg6aXNzdWU6YDQ3NjFgKToKKworICAqIDpmdW5jOmB+b3MuZmFjY2Vzc2F0YAorICAqIDpmdW5jOmB+b3MuZmNobW9kYXRgCisgICogOmZ1bmM6YH5vcy5mY2hvd25hdGAKKyAgKiA6ZnVuYzpgfm9zLmZzdGF0YXRgCisgICogOmZ1bmM6YH5vcy5mdXRpbWVzYXRgCisgICogOmZ1bmM6YH5vcy5saW5rYXRgCisgICogOmZ1bmM6YH5vcy5ta2RpcmF0YAorICAqIDpmdW5jOmB+b3MubWtmaWZvYXRgCisgICogOmZ1bmM6YH5vcy5ta25vZGF0YAorICAqIDpmdW5jOmB+b3Mub3BlbmF0YAorICAqIDpmdW5jOmB+b3MucmVhZGxpbmthdGAKKyAgKiA6ZnVuYzpgfm9zLnJlbmFtZWF0YAorICAqIDpmdW5jOmB+b3Muc3ltbGlua2F0YAorICAqIDpmdW5jOmB+b3MudW5saW5rYXRgCisgICogOmZ1bmM6YH5vcy51dGltZW5zYXRgCisKKyogZXh0ZW5kZWQgYXR0cmlidXRlcyAoOmlzc3VlOmAxMjcyMGApOgorCisgICogOmZ1bmM6YH5vcy5mZ2V0eGF0dHJgCisgICogOmZ1bmM6YH5vcy5mbGlzdHhhdHRyYAorICAqIDpmdW5jOmB+b3MuZnJlbW92ZXhhdHRyYAorICAqIDpmdW5jOmB+b3MuZnNldHhhdHRyYAorICAqIDpmdW5jOmB+b3MuZ2V0eGF0dHJgCisgICogOmZ1bmM6YH5vcy5sZ2V0eGF0dHJgCisgICogOmZ1bmM6YH5vcy5saXN0eGF0dHJgCisgICogOmZ1bmM6YH5vcy5sbGlzdHhhdHRyYAorICAqIDpmdW5jOmB+b3MubHJlbW92ZXhhdHRyYAorICAqIDpmdW5jOmB+b3MubHNldHhhdHRyYAorICAqIDpmdW5jOmB+b3MucmVtb3ZleGF0dHJgCisgICogOmZ1bmM6YH5vcy5zZXR4YXR0cmAKKworKiBTY2hlZHVsZXIgZnVuY3Rpb25zICg6aXNzdWU6YDEyNjU1YCk6CisKKyAgKiA6ZnVuYzpgfm9zLnNjaGVkX2dldF9wcmlvcml0eV9tYXhgCisgICogOmZ1bmM6YH5vcy5zY2hlZF9nZXRfcHJpb3JpdHlfbWluYAorICAqIDpmdW5jOmB+b3Muc2NoZWRfZ2V0YWZmaW5pdHlgCisgICogOmZ1bmM6YH5vcy5zY2hlZF9nZXRwYXJhbWAKKyAgKiA6ZnVuYzpgfm9zLnNjaGVkX2dldHNjaGVkdWxlcmAKKyAgKiA6ZnVuYzpgfm9zLnNjaGVkX3JyX2dldF9pbnRlcnZhbGAKKyAgKiA6ZnVuYzpgfm9zLnNjaGVkX3NldGFmZmluaXR5YAorICAqIDpmdW5jOmB+b3Muc2NoZWRfc2V0cGFyYW1gCisgICogOmZ1bmM6YH5vcy5zY2hlZF9zZXRzY2hlZHVsZXJgCisgICogOmZ1bmM6YH5vcy5zY2hlZF95aWVsZGAKKworKiBBZGQgc29tZSBleHRyYSBwb3NpeCBmdW5jdGlvbnMgdG8gdGhlIG9zIG1vZHVsZSAoOmlzc3VlOmAxMDgxMmApOgorCisgICogOmZ1bmM6YH5vcy5mZXhlY3ZlYAorICAqIDpmdW5jOmB+b3MuZnV0aW1lbnNgCisgICogOmZ1bmM6YH5vcy5mdXRpbWVzYAorICAqIDpmdW5jOmB+b3MubG9ja2ZgCisgICogOmZ1bmM6YH5vcy5sdXRpbWVzYAorICAqIDpmdW5jOmB+b3MucG9zaXhfZmFkdmlzZWAKKyAgKiA6ZnVuYzpgfm9zLnBvc2l4X2ZhbGxvY2F0ZWAKKyAgKiA6ZnVuYzpgfm9zLnByZWFkYAorICAqIDpmdW5jOmB+b3MucHdyaXRlYAorICAqIDpmdW5jOmB+b3MucmVhZHZgCisgICogOmZ1bmM6YH5vcy5zeW5jYAorICAqIDpmdW5jOmB+b3MudHJ1bmNhdGVgCisgICogOmZ1bmM6YH5vcy53YWl0aWRgCisgICogOmZ1bmM6YH5vcy53cml0ZXZgCisKKyogT3RoZXIgbmV3IGZ1bmN0aW9uczoKKworICAqIDpmdW5jOmB+b3MuZmxpc3RkaXJgICg6aXNzdWU6YDEwNzU1YCkKKyAgKiA6ZnVuYzpgfm9zLmdldGdyb3VwbGlzdGAgKDppc3N1ZTpgOTM0NGApCisKKworcGFja2FnaW5nCistLS0tLS0tLS0KKworOm1vZDpgZGlzdHV0aWxzYCBoYXMgdW5kZXJnb25lIGFkZGl0aW9ucyBhbmQgcmVmYWN0b3JpbmcgdW5kZXIgYSBuZXcgbmFtZSwKKzptb2Q6YHBhY2thZ2luZ2AsIHRvIGFsbG93IGRldmVsb3BlcnMgdG8gYnJlYWsgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4KKzptb2Q6YGRpc3R1dGlsc2AgaXMgc3RpbGwgcHJvdmlkZWQgaW4gdGhlIHN0YW5kYXJkIGxpYnJhcnksIGJ1dCB1c2VycyBhcmUKK2VuY291cmFnZWQgdG8gdHJhbnNpdGlvbiB0byA6bW9kOmBwYWNrYWdpbmdgLiAgRm9yIG9sZGVyIHZlcnNpb25zIG9mIFB5dGhvbiwgYQorYmFja3BvcnQgY29tcGF0aWJsZSB3aXRoIDIuNCsgYW5kIDMuMSsgd2lsbCBiZSBtYWRlIGF2YWlsYWJsZSBvbiBQeVBJIHVuZGVyIHRoZQorbmFtZSA6bW9kOmBkaXN0dXRpbHMyYC4KKworLi4gVE9ETyBhZGQgZXhhbXBsZXMgYW5kIGhvd3RvIHRvIHRoZSBwYWNrYWdpbmcgZG9jcyBhbmQgbGluayB0byB0aGVtCisKKworcHlkb2MKKy0tLS0tCisKK1RoZSBUayBHVUkgYW5kIHRoZSA6ZnVuYzpgfnB5ZG9jLnNlcnZlYCBmdW5jdGlvbiBoYXZlIGJlZW4gcmVtb3ZlZCBmcm9tIHRoZQorOm1vZDpgcHlkb2NgIG1vZHVsZTogYGBweWRvYyAtZ2BgIGFuZCA6ZnVuYzpgfnB5ZG9jLnNlcnZlYCBoYXZlIGJlZW4gZGVwcmVjYXRlZAoraW4gUHl0aG9uIDMuMi4KKworCitzY2hlZAorLS0tLS0KKworKiA6bWV0aDpgfnNjaGVkLnNjaGVkdWxlci5ydW5gIG5vdyBhY2NlcHRzIGEgKmJsb2NraW5nKiBwYXJhbWV0ZXIgd2hpY2ggd2hlbgorICBzZXQgdG8gRmFsc2UgbWFrZXMgdGhlIG1ldGhvZCBleGVjdXRlIHRoZSBzY2hlZHVsZWQgZXZlbnRzIGR1ZSB0byBleHBpcmUKKyAgc29vbmVzdCAoaWYgYW55KSBhbmQgdGhlbiByZXR1cm4gaW1tZWRpYXRlbHkuCisgIFRoaXMgaXMgdXNlZnVsIGluIGNhc2UgeW91IHdhbnQgdG8gdXNlIHRoZSA6Y2xhc3M6YH5zY2hlZC5zY2hlZHVsZXJgIGluCisgIG5vbi1ibG9ja2luZyBhcHBsaWNhdGlvbnMuICAoQ29udHJpYnV0ZWQgYnkgR2lhbXBhb2xvIFJvZG9sw6AgaW4gOmlzc3VlOmAxMzQ0OWApCisKKyogOmNsYXNzOmB+c2NoZWQuc2NoZWR1bGVyYCBjbGFzcyBjYW4gbm93IGJlIHNhZmVseSB1c2VkIGluIG11bHRpLXRocmVhZGVkCisgIGVudmlyb25tZW50cy4gIChDb250cmlidXRlZCBieSBKb3NpYWggQ2FybHNvbiBhbmQgR2lhbXBhb2xvIFJvZG9sw6AgaW4KKyAgOmlzc3VlOmA4Njg0YCkKKworKiAqdGltZWZ1bmMqIGFuZCAqZGVsYXlmdW5jdCogcGFyYW1ldGVycyBvZiA6Y2xhc3M6YH5zY2hlZC5zY2hlZHVsZXJgIGNsYXNzCisgIGNvbnN0cnVjdG9yIGFyZSBub3cgb3B0aW9uYWwgYW5kIGRlZmF1bHRzIHRvIDpmdW5jOmB0aW1lLnRpbWVgIGFuZAorICA6ZnVuYzpgdGltZS5zbGVlcGAgcmVzcGVjdGl2ZWx5LiAgKENvbnRyaWJ1dGVkIGJ5IENocmlzIENsYXJrIGluCisgIDppc3N1ZTpgMTMyNDVgKQorCisqIDptZXRoOmB+c2NoZWQuc2NoZWR1bGVyLmVudGVyYCBhbmQgOm1ldGg6YH5zY2hlZC5zY2hlZHVsZXIuZW50ZXJhYnNgCisgICphcmd1bWVudCogcGFyYW1ldGVyIGlzIG5vdyBvcHRpb25hbC4gIChDb250cmlidXRlZCBieSBDaHJpcyBDbGFyayBpbgorICA6aXNzdWU6YDEzMjQ1YCkKKworKiA6bWV0aDpgfnNjaGVkLnNjaGVkdWxlci5lbnRlcmAgYW5kIDptZXRoOmB+c2NoZWQuc2NoZWR1bGVyLmVudGVyYWJzYAorICBub3cgYWNjZXB0IGEgKmt3YXJncyogcGFyYW1ldGVyLiAgKENvbnRyaWJ1dGVkIGJ5IENocmlzIENsYXJrIGluCisgIDppc3N1ZTpgMTMyNDVgKQorCisKK3NodXRpbAorLS0tLS0tCisKKyogVGhlIDptb2Q6YHNodXRpbGAgbW9kdWxlIGhhcyB0aGVzZSBuZXcgZnVjdGlvbnM6CisKKyAgKiA6ZnVuYzpgfnNodXRpbC5kaXNrX3VzYWdlYDogcHJvdmlkZXMgdG90YWwsIHVzZWQgYW5kIGZyZWUgZGlzayBzcGFjZQorICAgIHN0YXRpc3RpY3MuIChDb250cmlidXRlZCBieSBHaWFtcGFvbG8gUm9kb2zDoCBpbiA6aXNzdWU6YDEyNDQyYCkKKyAgKiA6ZnVuYzpgfnNodXRpbC5jaG93bmA6IGFsbG93cyBvbmUgdG8gY2hhbmdlIHVzZXIgYW5kL29yIGdyb3VwIG9mIHRoZSBnaXZlbgorICAgIHBhdGggYWxzbyBzcGVjaWZ5aW5nIHRoZSB1c2VyL2dyb3VwIG5hbWVzIGFuZCBub3Qgb25seSB0aGVpciBudW1lcmljCisgICAgaWRzLiAoQ29udHJpYnV0ZWQgYnkgU2FuZHJvIFRvc2kgaW4gOmlzc3VlOmAxMjE5MWApCisKKworc2lnbmFsCistLS0tLS0KKworKiBUaGUgOm1vZDpgc2lnbmFsYCBtb2R1bGUgaGFzIG5ldyBmdW5jdGlvbnM6CisKKyAgKiA6ZnVuYzpgfnNpZ25hbC5wdGhyZWFkX3NpZ21hc2tgOiBmZXRjaCBhbmQvb3IgY2hhbmdlIHRoZSBzaWduYWwgbWFzayBvZiB0aGUKKyAgICBjYWxsaW5nIHRocmVhZCAoQ29udHJpYnV0ZWQgYnkgSmVhbi1QYXVsIENhbGRlcm9uZSBpbiA6aXNzdWU6YDg0MDdgKSA7CisgICogOmZ1bmM6YH5zaWduYWwucHRocmVhZF9raWxsYDogc2VuZCBhIHNpZ25hbCB0byBhIHRocmVhZCA7CisgICogOmZ1bmM6YH5zaWduYWwuc2lncGVuZGluZ2A6IGV4YW1pbmUgcGVuZGluZyBmdW5jdGlvbnMgOworICAqIDpmdW5jOmB+c2lnbmFsLnNpZ3dhaXRgOiB3YWl0IGEgc2lnbmFsLgorICAqIDpmdW5jOmB+c2lnbmFsLnNpZ3dhaXRpbmZvYDogd2FpdCBmb3IgYSBzaWduYWwsIHJldHVybmluZyBkZXRhaWxlZAorICAgIGluZm9ybWF0aW9uIGFib3V0IGl0LgorICAqIDpmdW5jOmB+c2lnbmFsLnNpZ3RpbWVkd2FpdGA6IGxpa2UgOmZ1bmM6YH5zaWduYWwuc2lnd2FpdGluZm9gIGJ1dCB3aXRoIGEKKyAgICB0aW1lb3V0LgorCisqIFRoZSBzaWduYWwgaGFuZGxlciB3cml0ZXMgdGhlIHNpZ25hbCBudW1iZXIgYXMgYSBzaW5nbGUgYnl0ZSBpbnN0ZWFkIG9mCisgIGEgbnVsIGJ5dGUgaW50byB0aGUgd2FrZXVwIGZpbGUgZGVzY3JpcHRvci4gU28gaXQgaXMgcG9zc2libGUgdG8gd2FpdCBtb3JlCisgIHRoYW4gb25lIHNpZ25hbCBhbmQga25vdyB3aGljaCBzaWduYWxzIHdlcmUgcmFpc2VkLgorCisqIDpmdW5jOmBzaWduYWwuc2lnbmFsYCBhbmQgOmZ1bmM6YHNpZ25hbC5zaWdpbnRlcnJ1cHRgIHJhaXNlIGFuIE9TRXJyb3IsCisgIGluc3RlYWQgb2YgYSBSdW50aW1lRXJyb3I6IE9TRXJyb3IgaGFzIGFuIGVycm5vIGF0dHJpYnV0ZS4KKworc210cGxpYgorLS0tLS0tLQorCitUaGUgOmNsYXNzOmB+c210cGxpYi5TTVRQX1NTTGAgY29uc3RydWN0b3IgYW5kIHRoZSA6bWV0aDpgfnNtdHBsaWIuU01UUC5zdGFydHRsc2AKK21ldGhvZCBub3cgYWNjZXB0IGFuIFNTTENvbnRleHQgcGFyYW1ldGVyIHRvIGNvbnRyb2wgcGFyYW1ldGVycyBvZiB0aGUgc2VjdXJlCitjaGFubmVsLgorCisoQ29udHJpYnV0ZWQgYnkgS2FzdW4gSGVyYXRoIGluIDppc3N1ZTpgODgwOWApCisKKworc29ja2V0CistLS0tLS0KKworKiBUaGUgOmNsYXNzOmB+c29ja2V0LnNvY2tldGAgY2xhc3Mgbm93IGV4cG9zZXMgYWRkaXRpb25hbCBtZXRob2RzIHRvIHByb2Nlc3MKKyAgYW5jaWxsYXJ5IGRhdGEgd2hlbiBzdXBwb3J0ZWQgYnkgdGhlIHVuZGVybHlpbmcgcGxhdGZvcm06CisKKyAgKiA6ZnVuYzpgfnNvY2tldC5zb2NrZXQuc2VuZG1zZ2AKKyAgKiA6ZnVuYzpgfnNvY2tldC5zb2NrZXQucmVjdm1zZ2AKKyAgKiA6ZnVuYzpgfnNvY2tldC5zb2NrZXQucmVjdm1zZ19pbnRvYAorCisgIChDb250cmlidXRlZCBieSBEYXZpZCBXYXRzb24gaW4gOmlzc3VlOmA2NTYwYCwgYmFzZWQgb24gYW4gZWFybGllciBwYXRjaCBieQorICBIZWlrbyBXdW5kcmFtKQorCisqIFRoZSA6Y2xhc3M6YH5zb2NrZXQuc29ja2V0YCBjbGFzcyBub3cgc3VwcG9ydHMgdGhlIFBGX0NBTiBwcm90b2NvbCBmYW1pbHkKKyAgKGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvU29ja2V0Y2FuKSwgb24gTGludXgKKyAgKGh0dHA6Ly9sd24ubmV0L0FydGljbGVzLzI1MzQyNSkuCisKKyAgKENvbnRyaWJ1dGVkIGJ5IE1hdHRoaWFzIEZ1Y2hzLCB1cGRhdGVkIGJ5IFRpYWdvIEdvbsOnYWx2ZXMgaW4gOmlzc3VlOmAxMDE0MWApCisKKyogVGhlIDpjbGFzczpgfnNvY2tldC5zb2NrZXRgIGNsYXNzIG5vdyBzdXBwb3J0cyB0aGUgUEZfUkRTIHByb3RvY29sIGZhbWlseQorICAoaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9SZWxpYWJsZV9EYXRhZ3JhbV9Tb2NrZXRzIGFuZAorICBodHRwOi8vb3NzLm9yYWNsZS5jb20vcHJvamVjdHMvcmRzLykuCisKKworc3NsCistLS0KKworKiBUaGUgOm1vZDpgc3NsYCBtb2R1bGUgaGFzIHR3byBuZXcgcmFuZG9tIGdlbmVyYXRpb24gZnVuY3Rpb25zOgorCisgICogOmZ1bmM6YH5zc2wuUkFORF9ieXRlc2A6IGdlbmVyYXRlIGNyeXB0b2dyYXBoaWNhbGx5IHN0cm9uZworICAgIHBzZXVkby1yYW5kb20gYnl0ZXMuCisgICogOmZ1bmM6YH5zc2wuUkFORF9wc2V1ZG9fYnl0ZXNgOiBnZW5lcmF0ZSBwc2V1ZG8tcmFuZG9tIGJ5dGVzLgorCisgIChDb250cmlidXRlZCBieSBWaWN0b3IgU3Rpbm5lciBpbiA6aXNzdWU6YDEyMDQ5YCkKKworKiBUaGUgOm1vZDpgc3NsYCBtb2R1bGUgbm93IGV4cG9zZXMgYSBmaW5lci1ncmFpbmVkIGV4Y2VwdGlvbiBoaWVyYXJjaHkKKyAgaW4gb3JkZXIgdG8gbWFrZSBpdCBlYXNpZXIgdG8gaW5zcGVjdCB0aGUgdmFyaW91cyBraW5kcyBvZiBlcnJvcnMuCisKKyAgKENvbnRyaWJ1dGVkIGJ5IEFudG9pbmUgUGl0cm91IGluIDppc3N1ZTpgMTExODNgKQorCisqIDptZXRoOmB+c3NsLlNTTENvbnRleHQubG9hZF9jZXJ0X2NoYWluYCBub3cgYWNjZXB0cyBhICpwYXNzd29yZCogYXJndW1lbnQKKyAgdG8gYmUgdXNlZCBpZiB0aGUgcHJpdmF0ZSBrZXkgaXMgZW5jcnlwdGVkLgorCisgIChDb250cmlidXRlZCBieSBBZGFtIFNpbXBraW5zIGluIDppc3N1ZTpgMTI4MDNgKQorCisqIERpZmZpZS1IZWxsbWFuIGtleSBleGNoYW5nZSwgYm90aCByZWd1bGFyIGFuZCBFbGxpcHRpYyBDdXJ2ZS1iYXNlZCwgaXMKKyAgbm93IHN1cHBvcnRlZCB0aHJvdWdoIHRoZSA6bWV0aDpgfnNzbC5TU0xDb250ZXh0LmxvYWRfZGhfcGFyYW1zYCBhbmQKKyAgOm1ldGg6YH5zc2wuU1NMQ29udGV4dC5zZXRfZWNkaF9jdXJ2ZWAgbWV0aG9kcy4KKworICAoQ29udHJpYnV0ZWQgYnkgQW50b2luZSBQaXRyb3UgaW4gOmlzc3VlOmAxMzYyNmAgYW5kIDppc3N1ZTpgMTM2MjdgKQorCisqIFNTTCBzb2NrZXRzIGhhdmUgYSBuZXcgOm1ldGg6YH5zc2wuU1NMU29ja2V0LmdldF9jaGFubmVsX2JpbmRpbmdgIG1ldGhvZAorICBhbGxvd2luZyB0aGUgaW1wbGVtZW50YXRpb24gb2YgY2VydGFpbiBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc21zIHN1Y2ggYXMKKyAgU0NSQU0tU0hBLTEtUExVUy4KKworICAoQ29udHJpYnV0ZWQgYnkgSmFjZWsgS29uaWVjem55IGluIDppc3N1ZTpgMTI1NTFgKQorCisqIFlvdSBjYW4gcXVlcnkgdGhlIFNTTCBjb21wcmVzc2lvbiBhbGdvcml0aG0gdXNlZCBieSBhbiBTU0wgc29ja2V0LCB0aGFua3MKKyAgdG8gaXRzIG5ldyA6bWV0aDpgfnNzbC5TU0xTb2NrZXQuY29tcHJlc3Npb25gIG1ldGhvZC4KKworICAoQ29udHJpYnV0ZWQgYnkgQW50b2luZSBQaXRyb3UgaW4gOmlzc3VlOmAxMzYzNGApCisKKworc3lzCistLS0KKworKiBUaGUgOm1vZDpgc3lzYCBtb2R1bGUgaGFzIGEgbmV3IDpkYXRhOmB+c3lzLnRocmVhZF9pbmZvYCA6dGVybTpgc3RydWN0CisgIHNlcXVlbmNlYCBob2xkaW5nIGluZm9ybWF0aW9ucyBhYm91dCB0aGUgdGhyZWFkIGltcGxlbWVudGF0aW9uLgorCisgICg6aXNzdWU6YDExMjIzYCkKKworCit0aW1lCistLS0tCisKK1RoZSA6bW9kOmB0aW1lYCBtb2R1bGUgaGFzIG5ldyBmdW5jdGlvbnM6CisKKyogOmZ1bmM6YH50aW1lLmNsb2NrX2dldHJlc2AgYW5kIDpmdW5jOmB+dGltZS5jbG9ja19nZXR0aW1lYCBmdW5jdGlvbnMgYW5kCisgIGBgQ0xPQ0tfeHh4YGAgY29uc3RhbnRzLgorKiA6ZnVuYzpgfnRpbWUubW9ub3RvbmljYDogbW9ub3RvbmljIGNsb2NrLgorKiA6ZnVuYzpgfnRpbWUud2FsbGNsb2NrYC4KKworKENvbnRyaWJ1dGVkIGJ5IFZpY3RvciBTdGlubmVyIGluIDppc3N1ZTpgMTAyNzhgKQorCisKK3VybGxpYgorLS0tLS0tCisKK1RoZSA6Y2xhc3M6YH51cmxsaWIucmVxdWVzdC5SZXF1ZXN0YCBjbGFzcywgbm93IGFjY2VwdHMgYSAqbWV0aG9kKiBhcmd1bWVudAordXNlZCBieSA6bWV0aDpgfnVybGxpYi5yZXF1ZXN0LlJlcXVlc3QuZ2V0X21ldGhvZGAgdG8gZGV0ZXJtaW5lIHdoYXQgSFRUUCBtZXRob2QKK3Nob3VsZCBiZSB1c2VkLiAgRm9yIGV4YW1wbGUsIHRoaXMgd2lsbCBzZW5kIGEgYGAnSEVBRCdgYCByZXF1ZXN0OjoKKworICAgPj4+IHVybG9wZW4oUmVxdWVzdCgnaHR0cDovL3d3dy5weXRob24ub3JnJywgbWV0aG9kPSdIRUFEJykpCisKKyg6aXNzdWU6YDE2NzMwMDdgKQorCisKK09wdGltaXphdGlvbnMKKz09PT09PT09PT09PT0KKworTWFqb3IgcGVyZm9ybWFuY2UgZW5oYW5jZW1lbnRzIGhhdmUgYmVlbiBhZGRlZDoKKworKiBUaGFua3MgdG8gdGhlIDpwZXA6YDM5M2AsIHNvbWUgb3BlcmF0aW9ucyBvbiBVbmljb2RlIHN0cmluZ3MgaGFzIGJlZW4gb3B0aW1pemVkOgorCisgICogdGhlIG1lbW9yeSBmb290cHJpbnQgaXMgZGl2aWRlZCBieSAyIHRvIDQgZGVwZW5kaW5nIG9uIHRoZSB0ZXh0CisgICogZW5jb2RlIGFuIEFTQ0lJIHN0cmluZyB0byBVVEYtOCBkb2Vzbid0IG5lZWQgdG8gZW5jb2RlIGNoYXJhY3RlcnMgYW55bW9yZSwKKyAgICB0aGUgVVRGLTggcmVwcmVzZW50YXRpb24gaXMgc2hhcmVkIHdpdGggdGhlIEFTQ0lJIHJlcHJlc2VudGF0aW9uCisgICogdGhlIFVURi04IGVuY29kZXIgaGFzIGJlZW4gb3B0aW1pemVkCisgICogcmVwZWF0aW5nIGEgc2luZ2xlIEFTQ0lJIGxldHRlciBhbmQgZ2V0dGluZyBhIHN1YnN0cmluZyBvZiBhIEFTQ0lJIHN0cmluZ3MKKyAgICBpcyA0IHRpbWVzIGZhc3RlcgorCisKK0J1aWxkIGFuZCBDIEFQSSBDaGFuZ2VzCis9PT09PT09PT09PT09PT09PT09PT09PQorCitDaGFuZ2VzIHRvIFB5dGhvbidzIGJ1aWxkIHByb2Nlc3MgYW5kIHRvIHRoZSBDIEFQSSBpbmNsdWRlOgorCisqIE5ldyA6cGVwOmAzMTE4YCByZWxhdGVkIGZ1bmN0aW9uOgorCisgICogOmM6ZnVuYzpgUHlNZW1vcnlWaWV3X0Zyb21NZW1vcnlgCisKKyogVGhlIDpwZXA6YDM5M2AgYWRkZWQgbmV3IFVuaWNvZGUgdHlwZXMsIG1hY3JvcyBhbmQgZnVuY3Rpb25zOgorCisgICogSGlnaC1sZXZlbCBBUEk6CisKKyAgICAqIDpjOmZ1bmM6YFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVyc2AKKyAgICAqIDpjOmZ1bmM6YFB5VW5pY29kZV9GaW5kQ2hhcmAKKyAgICAqIDpjOmZ1bmM6YFB5VW5pY29kZV9HZXRMZW5ndGhgLCA6YzptYWNybzpgUHlVbmljb2RlX0dFVF9MRU5HVEhgCisgICAgKiA6YzpmdW5jOmBQeVVuaWNvZGVfTmV3YAorICAgICogOmM6ZnVuYzpgUHlVbmljb2RlX1N1YnN0cmluZ2AKKyAgICAqIDpjOmZ1bmM6YFB5VW5pY29kZV9SZWFkQ2hhcmAsIDpjOmZ1bmM6YFB5VW5pY29kZV9Xcml0ZUNoYXJgCisKKyAgKiBMb3ctbGV2ZWwgQVBJOgorCisgICAgKiA6Yzp0eXBlOmBQeV9VQ1MxYCwgOmM6dHlwZTpgUHlfVUNTMmAsIDpjOnR5cGU6YFB5X1VDUzRgIHR5cGVzCisgICAgKiA6Yzp0eXBlOmBQeUFTQ0lJT2JqZWN0YCBhbmQgOmM6dHlwZTpgUHlDb21wYWN0VW5pY29kZU9iamVjdGAgc3RydWN0dXJlcworICAgICogOmM6bWFjcm86YFB5VW5pY29kZV9SRUFEWWAKKyAgICAqIDpjOmZ1bmM6YFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGFgCisgICAgKiA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVQ1M0YCwgOmM6ZnVuYzpgUHlVbmljb2RlX0FzVUNTNENvcHlgCisgICAgKiA6YzptYWNybzpgUHlVbmljb2RlX0RBVEFgLCA6YzptYWNybzpgUHlVbmljb2RlXzFCWVRFX0RBVEFgLAorICAgICAgOmM6bWFjcm86YFB5VW5pY29kZV8yQllURV9EQVRBYCwgOmM6bWFjcm86YFB5VW5pY29kZV80QllURV9EQVRBYAorICAgICogOmM6bWFjcm86YFB5VW5pY29kZV9LSU5EYCB3aXRoIDpjOnR5cGU6YFB5VW5pY29kZV9LaW5kYCBlbnVtOgorICAgICAgOmM6ZGF0YTpgUHlVbmljb2RlX1dDSEFSX0tJTkRgLCA6YzpkYXRhOmBQeVVuaWNvZGVfMUJZVEVfS0lORGAsCisgICAgICA6YzpkYXRhOmBQeVVuaWNvZGVfMkJZVEVfS0lORGAsIDpjOmRhdGE6YFB5VW5pY29kZV80QllURV9LSU5EYAorICAgICogOmM6bWFjcm86YFB5VW5pY29kZV9SRUFEYCwgOmM6bWFjcm86YFB5VW5pY29kZV9SRUFEX0NIQVJgLCA6YzptYWNybzpgUHlVbmljb2RlX1dSSVRFYAorICAgICogOmM6bWFjcm86YFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRWAKKworCisKK0RlcHJlY2F0ZWQKKz09PT09PT09PT0KKworVW5zdXBwb3J0ZWQgT3BlcmF0aW5nIFN5c3RlbXMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK09TLzIgYW5kIFZNUyBhcmUgbm8gbG9uZ2VyIHN1cHBvcnRlZCBkdWUgdG8gdGhlIGxhY2sgb2YgYSBtYWludGFpbmVyLgorCitXaW5kb3dzIDIwMDAgYW5kIFdpbmRvd3MgcGxhdGZvcm1zIHdoaWNoIHNldCBgYENPTVNQRUNgYCB0byBgYGNvbW1hbmQuY29tYGAKK2FyZSBubyBsb25nZXIgc3VwcG9ydGVkIGR1ZSB0byBtYWludGVuYW5jZSBidXJkZW4uCisKKworRGVwcmVjYXRlZCBQeXRob24gbW9kdWxlcywgZnVuY3Rpb25zIGFuZCBtZXRob2RzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworKiBUaGUgOm1vZDpgcGFja2FnaW5nYCBtb2R1bGUgcmVwbGFjZXMgdGhlIDptb2Q6YGRpc3R1dGlsc2AgbW9kdWxlCisqIFRoZSBgYHVuaWNvZGVfaW50ZXJuYWxgYCBjb2RlYyBoYXMgYmVlbiBkZXByZWNhdGVkIGJlY2F1c2Ugb2YgdGhlCisgIDpwZXA6YDM5M2AsIHVzZSBVVEYtOCwgVVRGLTE2IChgYHV0Zi0xNi1sZWBgIG9yIGBgdXRmLTE2LWJlYGApLCBvciBVVEYtMzIKKyAgKGBgdXRmLTMyLWxlYGAgb3IgYGB1dGYtMzItYmVgYCkKKyogOm1ldGg6YGZ0cGxpYi5GVFAubmxzdGAgYW5kIDptZXRoOmBmdHBsaWIuRlRQLmRpcmA6IHVzZQorICA6bWV0aDpgZnRwbGliLkZUUC5tbHNkYAorKiA6ZnVuYzpgcGxhdGZvcm0ucG9wZW5gOiB1c2UgdGhlIDptb2Q6YHN1YnByb2Nlc3NgIG1vZHVsZS4gQ2hlY2sgZXNwZWNpYWxseQorICB0aGUgOnJlZjpgc3VicHJvY2Vzcy1yZXBsYWNlbWVudHNgIHNlY3Rpb24uCisqIDppc3N1ZTpgMTMzNzRgOiBUaGUgV2luZG93cyBieXRlcyBBUEkgaGFzIGJlZW4gZGVwcmVjYXRlZCBpbiB0aGUgOm1vZDpgb3NgCisgIG1vZHVsZS4gVXNlIFVuaWNvZGUgZmlsZW5hbWVzLCBpbnN0ZWFkIG9mIGJ5dGVzIGZpbGVuYW1lcywgdG8gbm90IGRlcGVuZCBvbgorICB0aGUgQU5TSSBjb2RlIHBhZ2UgYW55bW9yZSBhbmQgdG8gc3VwcG9ydCBhbnkgZmlsZW5hbWUuCisqIDppc3N1ZTpgMTM5ODhgOiBUaGUgOm1vZDpgeG1sLmV0cmVlLmNFbGVtZW50VHJlZWAgbW9kdWxlIGlzIGRlcHJlY2F0ZWQuICBUaGUKKyAgYWNjZWxlcmF0b3IgaXMgdXNlZCBhdXRvbWF0aWNhbGx5IHdoZW5ldmVyIGF2YWlsYWJsZS4KKworCitEZXByZWNhdGVkIGZ1bmN0aW9ucyBhbmQgdHlwZXMgb2YgdGhlIEMgQVBJCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBoYXMgYmVlbiBkZXByZWNhdGVkIGJ5IHRoZSA6cGVwOmAzOTNgIGFuZCB3aWxsIGJlCityZW1vdmVkIGluIFB5dGhvbiA0LiBBbGwgZnVuY3Rpb25zIHVzaW5nIHRoaXMgdHlwZSBhcmUgZGVwcmVjYXRlZDoKKworVW5pY29kZSBmdW5jdGlvbnMgYW5kIG1ldGhvZHMgdXNpbmcgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYW5kCis6Yzp0eXBlOmBQeV9VTklDT0RFKmAgdHlwZXM6CisKKyAqIDpjOm1hY3JvOmBQeVVuaWNvZGVfRnJvbVVuaWNvZGVgOiB1c2UgOmM6ZnVuYzpgUHlVbmljb2RlX0Zyb21XaWRlQ2hhcmAgb3IKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGFgCisgKiA6YzptYWNybzpgUHlVbmljb2RlX0FTX1VOSUNPREVgLCA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVbmljb2RlYCwKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplYDogdXNlIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nYAorICogOmM6bWFjcm86YFB5VW5pY29kZV9BU19EQVRBYDogdXNlIDpjOm1hY3JvOmBQeVVuaWNvZGVfREFUQWAgd2l0aAorICAgOmM6bWFjcm86YFB5VW5pY29kZV9SRUFEYCBhbmQgOmM6bWFjcm86YFB5VW5pY29kZV9XUklURWAKKyAqIDpjOm1hY3JvOmBQeVVuaWNvZGVfR0VUX1NJWkVgLCA6YzpmdW5jOmBQeVVuaWNvZGVfR2V0U2l6ZWA6IHVzZQorICAgOmM6bWFjcm86YFB5VW5pY29kZV9HRVRfTEVOR1RIYCBvciA6YzpmdW5jOmBQeVVuaWNvZGVfR2V0TGVuZ3RoYAorICogOmM6bWFjcm86YFB5VW5pY29kZV9HRVRfREFUQV9TSVpFYDogdXNlCisgICBgYFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikgKiBQeVVuaWNvZGVfS0lORChzdHIpYGAgKG9ubHkgd29yayBvbiByZWFkeQorICAgc3RyaW5ncykKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VuaWNvZGVDb3B5YDogdXNlIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VDUzRDb3B5YCBvcgorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0FzV2lkZUNoYXJTdHJpbmdgCisgKiA6YzpmdW5jOmBQeVVuaWNvZGVfR2V0TWF4YAorCisKK0Z1bmN0aW9ucyBhbmQgbWFjcm9zIG1hbmlwdWxhdGluZyBQeV9VTklDT0RFKiBzdHJpbmdzOgorCisgKiA6YzptYWNybzpgUHlfVU5JQ09ERV9zdHJsZW5gOiB1c2UgOmM6ZnVuYzpgUHlVbmljb2RlX0dldExlbmd0aGAgb3IKKyAgIDpjOm1hY3JvOmBQeVVuaWNvZGVfR0VUX0xFTkdUSGAKKyAqIDpjOm1hY3JvOmBQeV9VTklDT0RFX3N0cmNhdGA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnNgIG9yCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfRnJvbUZvcm1hdGAKKyAqIDpjOm1hY3JvOmBQeV9VTklDT0RFX3N0cmNweWAsIDpjOm1hY3JvOmBQeV9VTklDT0RFX3N0cm5jcHlgLAorICAgOmM6bWFjcm86YFB5X1VOSUNPREVfQ09QWWA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnNgIG9yCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfU3Vic3RyaW5nYAorICogOmM6bWFjcm86YFB5X1VOSUNPREVfc3RyY21wYDogdXNlIDpjOmZ1bmM6YFB5VW5pY29kZV9Db21wYXJlYAorICogOmM6bWFjcm86YFB5X1VOSUNPREVfc3RybmNtcGA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfVGFpbG1hdGNoYAorICogOmM6bWFjcm86YFB5X1VOSUNPREVfc3RyY2hyYCwgOmM6bWFjcm86YFB5X1VOSUNPREVfc3RycmNocmA6IHVzZQorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0ZpbmRDaGFyYAorICogOmM6bWFjcm86YFB5X1VOSUNPREVfRklMTGA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfRmlsbGAKKyAqIDpjOm1hY3JvOmBQeV9VTklDT0RFX01BVENIYAorCitFbmNvZGVyczoKKworICogOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZWA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQXNFbmNvZGVkT2JqZWN0YAorICogOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZVVURjdgCisgKiA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlVVRGOGA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVVEY4YCBvcgorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0FzVVRGOFN0cmluZ2AKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVVVEYzMmAKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVVVEYxNmAKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVVbmljb2RlRXNjYXBlOmAgdXNlCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nYAorICogOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGU6YCB1c2UKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmdgCisgKiA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlTGF0aW4xYDogdXNlIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc0xhdGluMVN0cmluZ2AKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVBU0NJSWA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQXNBU0NJSVN0cmluZ2AKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVDaGFybWFwYAorICogOmM6ZnVuYzpgUHlVbmljb2RlX1RyYW5zbGF0ZUNoYXJtYXBgCisgKiA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlTUJDU2A6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQXNNQkNTU3RyaW5nYCBvcgorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZUNvZGVQYWdlYCAod2l0aCBgYENQX0FDUGBgIGNvZGVfcGFnZSkKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVEZWNpbWFsYCwKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsVG9BU0NJSWAKKworCitQb3J0aW5nIHRvIFB5dGhvbiAzLjMKKz09PT09PT09PT09PT09PT09PT09PQorCitUaGlzIHNlY3Rpb24gbGlzdHMgcHJldmlvdXNseSBkZXNjcmliZWQgY2hhbmdlcyBhbmQgb3RoZXIgYnVnZml4ZXMKK3RoYXQgbWF5IHJlcXVpcmUgY2hhbmdlcyB0byB5b3VyIGNvZGUuCisKK1BvcnRpbmcgUHl0aG9uIGNvZGUKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gWFhYIGFkZCBhIHBvaW50IGFib3V0IGhhc2ggcmFuZG9taXphdGlvbiBhbmQgdGhhdCBpdCdzIGFsd2F5cyBvbiBpbiAzLjMKKworKiA6aXNzdWU6YDEyMzI2YDogT24gTGludXgsIHN5cy5wbGF0Zm9ybSBkb2Vzbid0IGNvbnRhaW4gdGhlIG1ham9yIHZlcnNpb24KKyAgYW55bW9yZS4gSXQgaXMgbm93IGFsd2F5cyAnbGludXgnLCBpbnN0ZWFkIG9mICdsaW51eDInIG9yICdsaW51eDMnIGRlcGVuZGluZworICBvbiB0aGUgTGludXggdmVyc2lvbiB1c2VkIHRvIGJ1aWxkIFB5dGhvbi4gUmVwbGFjZSBzeXMucGxhdGZvcm0gPT0gJ2xpbnV4MicKKyAgd2l0aCBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbGludXgnKSwgb3IgZGlyZWN0bHkgc3lzLnBsYXRmb3JtID09ICdsaW51eCcgaWYKKyAgeW91IGRvbid0IG5lZWQgdG8gc3VwcG9ydCBvbGRlciBQeXRob24gdmVyc2lvbnMuCisKK1BvcnRpbmcgQyBjb2RlCistLS0tLS0tLS0tLS0tLQorCisqIEluIHRoZSBjb3Vyc2Ugb2YgY2hhbmdlcyB0byB0aGUgYnVmZmVyIEFQSSB0aGUgdW5kb2N1bWVudGVkCisgIDpjOm1lbWJlcjpgflB5X2J1ZmZlci5zbWFsbHRhYmxlYCBtZW1iZXIgb2YgdGhlCisgIDpjOnR5cGU6YFB5X2J1ZmZlcmAgc3RydWN0dXJlIGhhcyBiZWVuIHJlbW92ZWQgYW5kIHRoZQorICBsYXlvdXQgb2YgdGhlIDpjOnR5cGU6YFB5TWVtb3J5Vmlld09iamVjdGAgaGFzIGNoYW5nZWQuCisKKyAgQWxsIGV4dGVuc2lvbnMgcmVseWluZyBvbiB0aGUgcmVsZXZhbnQgcGFydHMgaW4gYGBtZW1vcnlvYmplY3QuaGBgCisgIG9yIGBgb2JqZWN0LmhgYCBtdXN0IGJlIHJlYnVpbHQuCisKKyogRHVlIHRvIDpyZWY6YFBFUCAzOTMgPHBlcC0zOTM+YCwgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIHR5cGUgYW5kIGFsbAorICBmdW5jdGlvbnMgdXNpbmcgdGhpcyB0eXBlIGFyZSBkZXByZWNhdGVkIChidXQgd2lsbCBzdGF5IGF2YWlsYWJsZSBmb3IKKyAgYXQgbGVhc3QgZml2ZSB5ZWFycykuICBJZiB5b3Ugd2VyZSB1c2luZyBsb3ctbGV2ZWwgVW5pY29kZSBBUElzIHRvCisgIGNvbnN0cnVjdCBhbmQgYWNjZXNzIHVuaWNvZGUgb2JqZWN0cyBhbmQgeW91IHdhbnQgdG8gYmVuZWZpdCBvZiB0aGUKKyAgbWVtb3J5IGZvb3RwcmludCByZWR1Y3Rpb24gcHJvdmlkZWQgYnkgdGhlIFBFUCAzOTMsIHlvdSBoYXZlIHRvIGNvbnZlcnQKKyAgeW91ciBjb2RlIHRvIHRoZSBuZXcgOmRvYzpgVW5pY29kZSBBUEkgPC4uL2MtYXBpL3VuaWNvZGU+YC4KKworICBIb3dldmVyLCBpZiB5b3Ugb25seSBoYXZlIGJlZW4gdXNpbmcgaGlnaC1sZXZlbCBmdW5jdGlvbnMgc3VjaCBhcworICA6YzpmdW5jOmBQeVVuaWNvZGVfQ29uY2F0KClgLCA6YzpmdW5jOmBQeVVuaWNvZGVfSm9pbmAgb3IKKyAgOmM6ZnVuYzpgUHlVbmljb2RlX0Zyb21Gb3JtYXQoKWAsIHlvdXIgY29kZSB3aWxsIGF1dG9tYXRpY2FsbHkgdGFrZQorICBhZHZhbnRhZ2Ugb2YgdGhlIG5ldyB1bmljb2RlIHJlcHJlc2VudGF0aW9ucy4KKworQnVpbGRpbmcgQyBleHRlbnNpb25zCistLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworKiBUaGUgcmFuZ2Ugb2YgcG9zc2libGUgZmlsZSBuYW1lcyBmb3IgQyBleHRlbnNpb25zIGhhcyBiZWVuIG5hcnJvd2VkLgorICBWZXJ5IHJhcmVseSB1c2VkIHNwZWxsaW5ncyBoYXZlIGJlZW4gc3VwcHJlc3NlZDogdW5kZXIgUE9TSVgsIGZpbGVzCisgIG5hbWVkIGBgeHh4bW9kdWxlLnNvYGAsIGBgeHh4bW9kdWxlLmFiaTMuc29gYCBhbmQKKyAgYGB4eHhtb2R1bGUuY3B5dGhvbi0qLnNvYGAgYXJlIG5vIGxvbmdlciByZWNvZ25pemVkIGFzIGltcGxlbWVudGluZworICB0aGUgYGB4eHhgYCBtb2R1bGUuICBJZiB5b3UgaGFkIGJlZW4gZ2VuZXJhdGluZyBzdWNoIGZpbGVzLCB5b3UgaGF2ZQorICB0byBzd2l0Y2ggdG8gdGhlIG90aGVyIHNwZWxsaW5ncyAoaS5lLiwgcmVtb3ZlIHRoZSBgYG1vZHVsZWBgIHN0cmluZworICBmcm9tIHRoZSBmaWxlIG5hbWVzKS4KKworICAoaW1wbGVtZW50ZWQgaW4gOmlzc3VlOmAxNDA0MGAuKQorCisKK090aGVyIGlzc3VlcworLS0tLS0tLS0tLS0tCisKKy4uIElzc3VlICMxMTU5MTogV2hlbiA6cHJvZ3JhbTpgcHl0aG9uYCB3YXMgc3RhcnRlZCB3aXRoIDpvcHRpb246YC1TYCwKKyAgIGBgaW1wb3J0IHNpdGVgYCB3aWxsIG5vdCBhZGQgc2l0ZS1zcGVjaWZpYyBwYXRocyB0byB0aGUgbW9kdWxlIHNlYXJjaAorICAgcGF0aHMuICBJbiBwcmV2aW91cyB2ZXJzaW9ucywgaXQgZGlkLiAgU2VlIGNoYW5nZXNldCBmb3IgZG9jIGNoYW5nZXMgaW4KKyAgIHZhcmlvdXMgZmlsZXMuICBDb250cmlidXRlZCBieSBDYXJsIE1leWVyIHdpdGggZWRpdGlvbnMgYnkgw4lyaWMgQXJhdWpvLgorCisuLiBJc3N1ZSAjMTA5OTg6IHRoZSAtUSBjb21tYW5kLWxpbmUgZmxhZyBhbmQgcmVsYXRlZCBhcnRpZmFjdHMgaGF2ZSBiZWVuCisgICByZW1vdmVkLiAgQ29kZSBjaGVja2luZyBzeXMuZmxhZ3MuZGl2aXNpb25fd2FybmluZyB3aWxsIG5lZWQgdXBkYXRpbmcuCisgICBDb250cmlidXRlZCBieSDDiXJpYyBBcmF1am8uCmRpZmYgLS1naXQgYS9Eb2Mvd2hhdHNuZXcvaW5kZXgucnN0IGIvRG9jL3doYXRzbmV3L2luZGV4LnJzdAppbmRleCA4MjIwYmQyLi5jNjA4MThhIDEwMDY0NAotLS0gYS9Eb2Mvd2hhdHNuZXcvaW5kZXgucnN0CisrKyBiL0RvYy93aGF0c25ldy9pbmRleC5yc3QKQEAgLTExLDYgKzExLDcgQEAKIC4uIHRvY3RyZWU6OgogICAgOm1heGRlcHRoOiAyCiAKKyAgIDMuMy5yc3QKICAgIDMuMi5yc3QKICAgIDMuMS5yc3QKICAgIDMuMC5yc3QKZGlmZiAtLWdpdCBhL0dyYW1tYXIvR3JhbW1hciBiL0dyYW1tYXIvR3JhbW1hcgppbmRleCBjZWE2OGRlLi5kN2FhZmZkIDEwMDY0NAotLS0gYS9HcmFtbWFyL0dyYW1tYXIKKysrIGIvR3JhbW1hci9HcmFtbWFyCkBAIC0xMyw3ICsxMyw3IEBACiAjIFN0YXJ0IHN5bWJvbHMgZm9yIHRoZSBncmFtbWFyOgogIyAgICAgICBzaW5nbGVfaW5wdXQgaXMgYSBzaW5nbGUgaW50ZXJhY3RpdmUgc3RhdGVtZW50OwogIyAgICAgICBmaWxlX2lucHV0IGlzIGEgbW9kdWxlIG9yIHNlcXVlbmNlIG9mIGNvbW1hbmRzIHJlYWQgZnJvbSBhbiBpbnB1dCBmaWxlOwotIyAgICAgICBldmFsX2lucHV0IGlzIHRoZSBpbnB1dCBmb3IgdGhlIGV2YWwoKSBhbmQgaW5wdXQoKSBmdW5jdGlvbnMuCisjICAgICAgIGV2YWxfaW5wdXQgaXMgdGhlIGlucHV0IGZvciB0aGUgZXZhbCgpIGZ1bmN0aW9ucy4KICMgTkI6IGNvbXBvdW5kX3N0bXQgaW4gc2luZ2xlX2lucHV0IGlzIGZvbGxvd2VkIGJ5IGV4dHJhIE5FV0xJTkUhCiBzaW5nbGVfaW5wdXQ6IE5FV0xJTkUgfCBzaW1wbGVfc3RtdCB8IGNvbXBvdW5kX3N0bXQgTkVXTElORQogZmlsZV9pbnB1dDogKE5FV0xJTkUgfCBzdG10KSogRU5ETUFSS0VSCkBAIC0xMjksNCArMTI5LDUgQEAKICMgbm90IHVzZWQgaW4gZ3JhbW1hciwgYnV0IG1heSBhcHBlYXIgaW4gIm5vZGUiIHBhc3NlZCBmcm9tIFBhcnNlciB0byBDb21waWxlcgogZW5jb2RpbmdfZGVjbDogTkFNRQogCi15aWVsZF9leHByOiAneWllbGQnIFt0ZXN0bGlzdF0KK3lpZWxkX2V4cHI6ICd5aWVsZCcgW3lpZWxkX2FyZ10KK3lpZWxkX2FyZzogJ2Zyb20nIHRlc3QgfCB0ZXN0bGlzdApkaWZmIC0tZ2l0IGEvSW5jbHVkZS9QeXRob24tYXN0LmggYi9JbmNsdWRlL1B5dGhvbi1hc3QuaAppbmRleCAwYWQ3ODhiLi43YWQ2Y2IzIDEwMDY0NAotLS0gYS9JbmNsdWRlL1B5dGhvbi1hc3QuaAorKysgYi9JbmNsdWRlL1B5dGhvbi1hc3QuaApAQCAtMzYsNiArMzYsOCBAQAogCiB0eXBlZGVmIHN0cnVjdCBfYWxpYXMgKmFsaWFzX3R5OwogCit0eXBlZGVmIHN0cnVjdCBfd2l0aGl0ZW0gKndpdGhpdGVtX3R5OworCiAKIGVudW0gX21vZF9raW5kIHtNb2R1bGVfa2luZD0xLCBJbnRlcmFjdGl2ZV9raW5kPTIsIEV4cHJlc3Npb25fa2luZD0zLAogICAgICAgICAgICAgICAgICBTdWl0ZV9raW5kPTR9OwpAQCAtNjQsMTAgKzY2LDkgQEAKIGVudW0gX3N0bXRfa2luZCB7RnVuY3Rpb25EZWZfa2luZD0xLCBDbGFzc0RlZl9raW5kPTIsIFJldHVybl9raW5kPTMsCiAgICAgICAgICAgICAgICAgICBEZWxldGVfa2luZD00LCBBc3NpZ25fa2luZD01LCBBdWdBc3NpZ25fa2luZD02LCBGb3Jfa2luZD03LAogICAgICAgICAgICAgICAgICAgV2hpbGVfa2luZD04LCBJZl9raW5kPTksIFdpdGhfa2luZD0xMCwgUmFpc2Vfa2luZD0xMSwKLSAgICAgICAgICAgICAgICAgIFRyeUV4Y2VwdF9raW5kPTEyLCBUcnlGaW5hbGx5X2tpbmQ9MTMsIEFzc2VydF9raW5kPTE0LAotICAgICAgICAgICAgICAgICAgSW1wb3J0X2tpbmQ9MTUsIEltcG9ydEZyb21fa2luZD0xNiwgR2xvYmFsX2tpbmQ9MTcsCi0gICAgICAgICAgICAgICAgICBOb25sb2NhbF9raW5kPTE4LCBFeHByX2tpbmQ9MTksIFBhc3Nfa2luZD0yMCwgQnJlYWtfa2luZD0yMSwKLSAgICAgICAgICAgICAgICAgIENvbnRpbnVlX2tpbmQ9MjJ9OworICAgICAgICAgICAgICAgICAgVHJ5X2tpbmQ9MTIsIEFzc2VydF9raW5kPTEzLCBJbXBvcnRfa2luZD0xNCwKKyAgICAgICAgICAgICAgICAgIEltcG9ydEZyb21fa2luZD0xNSwgR2xvYmFsX2tpbmQ9MTYsIE5vbmxvY2FsX2tpbmQ9MTcsCisgICAgICAgICAgICAgICAgICBFeHByX2tpbmQ9MTgsIFBhc3Nfa2luZD0xOSwgQnJlYWtfa2luZD0yMCwgQ29udGludWVfa2luZD0yMX07CiBzdHJ1Y3QgX3N0bXQgewogICAgICAgICBlbnVtIF9zdG10X2tpbmQga2luZDsKICAgICAgICAgdW5pb24gewpAQCAtMTI4LDggKzEyOSw3IEBACiAgICAgICAgICAgICAgICAgfSBJZjsKICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICBzdHJ1Y3QgewotICAgICAgICAgICAgICAgICAgICAgICAgZXhwcl90eSBjb250ZXh0X2V4cHI7Ci0gICAgICAgICAgICAgICAgICAgICAgICBleHByX3R5IG9wdGlvbmFsX3ZhcnM7CisgICAgICAgICAgICAgICAgICAgICAgICBhc2RsX3NlcSAqaXRlbXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBhc2RsX3NlcSAqYm9keTsKICAgICAgICAgICAgICAgICB9IFdpdGg7CiAgICAgICAgICAgICAgICAgCkBAIC0xNDIsMTIgKzE0Miw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBhc2RsX3NlcSAqYm9keTsKICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxICpoYW5kbGVyczsKICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxICpvcmVsc2U7Ci0gICAgICAgICAgICAgICAgfSBUcnlFeGNlcHQ7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAgc3RydWN0IHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxICpib2R5OwogICAgICAgICAgICAgICAgICAgICAgICAgYXNkbF9zZXEgKmZpbmFsYm9keTsKLSAgICAgICAgICAgICAgICB9IFRyeUZpbmFsbHk7CisgICAgICAgICAgICAgICAgfSBUcnk7CiAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgc3RydWN0IHsKICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJfdHkgdGVzdDsKQEAgLTE4NCwxMCArMTgwLDEwIEBACiBlbnVtIF9leHByX2tpbmQge0Jvb2xPcF9raW5kPTEsIEJpbk9wX2tpbmQ9MiwgVW5hcnlPcF9raW5kPTMsIExhbWJkYV9raW5kPTQsCiAgICAgICAgICAgICAgICAgICBJZkV4cF9raW5kPTUsIERpY3Rfa2luZD02LCBTZXRfa2luZD03LCBMaXN0Q29tcF9raW5kPTgsCiAgICAgICAgICAgICAgICAgICBTZXRDb21wX2tpbmQ9OSwgRGljdENvbXBfa2luZD0xMCwgR2VuZXJhdG9yRXhwX2tpbmQ9MTEsCi0gICAgICAgICAgICAgICAgICBZaWVsZF9raW5kPTEyLCBDb21wYXJlX2tpbmQ9MTMsIENhbGxfa2luZD0xNCwgTnVtX2tpbmQ9MTUsCi0gICAgICAgICAgICAgICAgICBTdHJfa2luZD0xNiwgQnl0ZXNfa2luZD0xNywgRWxsaXBzaXNfa2luZD0xOCwKLSAgICAgICAgICAgICAgICAgIEF0dHJpYnV0ZV9raW5kPTE5LCBTdWJzY3JpcHRfa2luZD0yMCwgU3RhcnJlZF9raW5kPTIxLAotICAgICAgICAgICAgICAgICAgTmFtZV9raW5kPTIyLCBMaXN0X2tpbmQ9MjMsIFR1cGxlX2tpbmQ9MjR9OworICAgICAgICAgICAgICAgICAgWWllbGRfa2luZD0xMiwgWWllbGRGcm9tX2tpbmQ9MTMsIENvbXBhcmVfa2luZD0xNCwKKyAgICAgICAgICAgICAgICAgIENhbGxfa2luZD0xNSwgTnVtX2tpbmQ9MTYsIFN0cl9raW5kPTE3LCBCeXRlc19raW5kPTE4LAorICAgICAgICAgICAgICAgICAgRWxsaXBzaXNfa2luZD0xOSwgQXR0cmlidXRlX2tpbmQ9MjAsIFN1YnNjcmlwdF9raW5kPTIxLAorICAgICAgICAgICAgICAgICAgU3RhcnJlZF9raW5kPTIyLCBOYW1lX2tpbmQ9MjMsIExpc3Rfa2luZD0yNCwgVHVwbGVfa2luZD0yNX07CiBzdHJ1Y3QgX2V4cHIgewogICAgICAgICBlbnVtIF9leHByX2tpbmQga2luZDsKICAgICAgICAgdW5pb24gewpAQCAtMjUzLDYgKzI0OSwxMCBAQAogICAgICAgICAgICAgICAgIH0gWWllbGQ7CiAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgc3RydWN0IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJfdHkgdmFsdWU7CisgICAgICAgICAgICAgICAgfSBZaWVsZEZyb207CisgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgc3RydWN0IHsKICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJfdHkgbGVmdDsKICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfaW50X3NlcSAqb3BzOwogICAgICAgICAgICAgICAgICAgICAgICAgYXNkbF9zZXEgKmNvbXBhcmF0b3JzOwpAQCAtMjc1LDcgKzI3NSw3IEBACiAgICAgICAgICAgICAgICAgfSBTdHI7CiAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgc3RydWN0IHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZyBzOworICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZXMgczsKICAgICAgICAgICAgICAgICB9IEJ5dGVzOwogICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgIHN0cnVjdCB7CkBAIC0zODMsNiArMzgzLDExIEBACiAgICAgICAgIGlkZW50aWZpZXIgYXNuYW1lOwogfTsKIAorc3RydWN0IF93aXRoaXRlbSB7CisgICAgICAgIGV4cHJfdHkgY29udGV4dF9leHByOworICAgICAgICBleHByX3R5IG9wdGlvbmFsX3ZhcnM7Cit9OworCiAKICNkZWZpbmUgTW9kdWxlKGEwLCBhMSkgX1B5X01vZHVsZShhMCwgYTEpCiBtb2RfdHkgX1B5X01vZHVsZShhc2RsX3NlcSAqIGJvZHksIFB5QXJlbmEgKmFyZW5hKTsKQEAgLTQyMSwxOCArNDI2LDE2IEBACiAjZGVmaW5lIElmKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUpIF9QeV9JZihhMCwgYTEsIGEyLCBhMywgYTQsIGE1KQogc3RtdF90eSBfUHlfSWYoZXhwcl90eSB0ZXN0LCBhc2RsX3NlcSAqIGJvZHksIGFzZGxfc2VxICogb3JlbHNlLCBpbnQgbGluZW5vLAogICAgICAgICAgICAgICAgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKLSNkZWZpbmUgV2l0aChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KSBfUHlfV2l0aChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KQotc3RtdF90eSBfUHlfV2l0aChleHByX3R5IGNvbnRleHRfZXhwciwgZXhwcl90eSBvcHRpb25hbF92YXJzLCBhc2RsX3NlcSAqIGJvZHksCi0gICAgICAgICAgICAgICAgIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hICphcmVuYSk7CisjZGVmaW5lIFdpdGgoYTAsIGExLCBhMiwgYTMsIGE0KSBfUHlfV2l0aChhMCwgYTEsIGEyLCBhMywgYTQpCitzdG10X3R5IF9QeV9XaXRoKGFzZGxfc2VxICogaXRlbXMsIGFzZGxfc2VxICogYm9keSwgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsCisgICAgICAgICAgICAgICAgIFB5QXJlbmEgKmFyZW5hKTsKICNkZWZpbmUgUmFpc2UoYTAsIGExLCBhMiwgYTMsIGE0KSBfUHlfUmFpc2UoYTAsIGExLCBhMiwgYTMsIGE0KQogc3RtdF90eSBfUHlfUmFpc2UoZXhwcl90eSBleGMsIGV4cHJfdHkgY2F1c2UsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LAogICAgICAgICAgICAgICAgICAgUHlBcmVuYSAqYXJlbmEpOwotI2RlZmluZSBUcnlFeGNlcHQoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSkgX1B5X1RyeUV4Y2VwdChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KQotc3RtdF90eSBfUHlfVHJ5RXhjZXB0KGFzZGxfc2VxICogYm9keSwgYXNkbF9zZXEgKiBoYW5kbGVycywgYXNkbF9zZXEgKiBvcmVsc2UsCi0gICAgICAgICAgICAgICAgICAgICAgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKLSNkZWZpbmUgVHJ5RmluYWxseShhMCwgYTEsIGEyLCBhMywgYTQpIF9QeV9UcnlGaW5hbGx5KGEwLCBhMSwgYTIsIGEzLCBhNCkKLXN0bXRfdHkgX1B5X1RyeUZpbmFsbHkoYXNkbF9zZXEgKiBib2R5LCBhc2RsX3NlcSAqIGZpbmFsYm9keSwgaW50IGxpbmVubywgaW50Ci0gICAgICAgICAgICAgICAgICAgICAgIGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKKyNkZWZpbmUgVHJ5KGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2KSBfUHlfVHJ5KGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2KQorc3RtdF90eSBfUHlfVHJ5KGFzZGxfc2VxICogYm9keSwgYXNkbF9zZXEgKiBoYW5kbGVycywgYXNkbF9zZXEgKiBvcmVsc2UsCisgICAgICAgICAgICAgICAgYXNkbF9zZXEgKiBmaW5hbGJvZHksIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hCisgICAgICAgICAgICAgICAgKmFyZW5hKTsKICNkZWZpbmUgQXNzZXJ0KGEwLCBhMSwgYTIsIGEzLCBhNCkgX1B5X0Fzc2VydChhMCwgYTEsIGEyLCBhMywgYTQpCiBzdG10X3R5IF9QeV9Bc3NlcnQoZXhwcl90eSB0ZXN0LCBleHByX3R5IG1zZywgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsCiAgICAgICAgICAgICAgICAgICAgUHlBcmVuYSAqYXJlbmEpOwpAQCAtNDkwLDYgKzQ5Myw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgY29sX29mZnNldCwgUHlBcmVuYSAqYXJlbmEpOwogI2RlZmluZSBZaWVsZChhMCwgYTEsIGEyLCBhMykgX1B5X1lpZWxkKGEwLCBhMSwgYTIsIGEzKQogZXhwcl90eSBfUHlfWWllbGQoZXhwcl90eSB2YWx1ZSwgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKKyNkZWZpbmUgWWllbGRGcm9tKGEwLCBhMSwgYTIsIGEzKSBfUHlfWWllbGRGcm9tKGEwLCBhMSwgYTIsIGEzKQorZXhwcl90eSBfUHlfWWllbGRGcm9tKGV4cHJfdHkgdmFsdWUsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hCisgICAgICAgICAgICAgICAgICAgICAgKmFyZW5hKTsKICNkZWZpbmUgQ29tcGFyZShhMCwgYTEsIGEyLCBhMywgYTQsIGE1KSBfUHlfQ29tcGFyZShhMCwgYTEsIGEyLCBhMywgYTQsIGE1KQogZXhwcl90eSBfUHlfQ29tcGFyZShleHByX3R5IGxlZnQsIGFzZGxfaW50X3NlcSAqIG9wcywgYXNkbF9zZXEgKiBjb21wYXJhdG9ycywKICAgICAgICAgICAgICAgICAgICAgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKQEAgLTUwMiw3ICs1MDgsNyBAQAogI2RlZmluZSBTdHIoYTAsIGExLCBhMiwgYTMpIF9QeV9TdHIoYTAsIGExLCBhMiwgYTMpCiBleHByX3R5IF9QeV9TdHIoc3RyaW5nIHMsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hICphcmVuYSk7CiAjZGVmaW5lIEJ5dGVzKGEwLCBhMSwgYTIsIGEzKSBfUHlfQnl0ZXMoYTAsIGExLCBhMiwgYTMpCi1leHByX3R5IF9QeV9CeXRlcyhzdHJpbmcgcywgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKK2V4cHJfdHkgX1B5X0J5dGVzKGJ5dGVzIHMsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hICphcmVuYSk7CiAjZGVmaW5lIEVsbGlwc2lzKGEwLCBhMSwgYTIpIF9QeV9FbGxpcHNpcyhhMCwgYTEsIGEyKQogZXhwcl90eSBfUHlfRWxsaXBzaXMoaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKICNkZWZpbmUgQXR0cmlidXRlKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUpIF9QeV9BdHRyaWJ1dGUoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSkKQEAgLTU0Nyw2ICs1NTMsOSBAQAoga2V5d29yZF90eSBfUHlfa2V5d29yZChpZGVudGlmaWVyIGFyZywgZXhwcl90eSB2YWx1ZSwgUHlBcmVuYSAqYXJlbmEpOwogI2RlZmluZSBhbGlhcyhhMCwgYTEsIGEyKSBfUHlfYWxpYXMoYTAsIGExLCBhMikKIGFsaWFzX3R5IF9QeV9hbGlhcyhpZGVudGlmaWVyIG5hbWUsIGlkZW50aWZpZXIgYXNuYW1lLCBQeUFyZW5hICphcmVuYSk7CisjZGVmaW5lIHdpdGhpdGVtKGEwLCBhMSwgYTIpIF9QeV93aXRoaXRlbShhMCwgYTEsIGEyKQord2l0aGl0ZW1fdHkgX1B5X3dpdGhpdGVtKGV4cHJfdHkgY29udGV4dF9leHByLCBleHByX3R5IG9wdGlvbmFsX3ZhcnMsIFB5QXJlbmEKKyAgICAgICAgICAgICAgICAgICAgICAgICAqYXJlbmEpOwogCiBQeU9iamVjdCogUHlBU1RfbW9kMm9iaihtb2RfdHkgdCk7CiBtb2RfdHkgUHlBU1Rfb2JqMm1vZChQeU9iamVjdCogYXN0LCBQeUFyZW5hKiBhcmVuYSwgaW50IG1vZGUpOwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9QeXRob24uaCBiL0luY2x1ZGUvUHl0aG9uLmgKaW5kZXggNTk3MmZmYS4uMDFiOThmOSAxMDA2NDQKLS0tIGEvSW5jbHVkZS9QeXRob24uaAorKysgYi9JbmNsdWRlL1B5dGhvbi5oCkBAIC00OCw2ICs0OCw3IEBACiAjaW5jbHVkZSA8YXNzZXJ0Lmg+CiAKICNpbmNsdWRlICJweXBvcnQuaCIKKyNpbmNsdWRlICJweW1hY3JvLmgiCiAKICNpbmNsdWRlICJweWF0b21pYy5oIgogCkBAIC0xMjYsNDMgKzEyNyw2IEBACiAjaW5jbHVkZSAicHlzdHJjbXAuaCIKICNpbmNsdWRlICJkdG9hLmgiCiAjaW5jbHVkZSAiZmlsZXV0aWxzLmgiCi0KLSNpZmRlZiBfX2NwbHVzcGx1cwotZXh0ZXJuICJDIiB7Ci0jZW5kaWYKLQotLyogX1B5X01hbmdsZSBpcyBkZWZpbmVkIGluIGNvbXBpbGUuYyAqLwotI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQotUHlBUElfRlVOQyhQeU9iamVjdCopIF9QeV9NYW5nbGUoUHlPYmplY3QgKnAsIFB5T2JqZWN0ICpuYW1lKTsKLSNlbmRpZgotCi0jaWZkZWYgX19jcGx1c3BsdXMKLX0KLSNlbmRpZgotCi0vKiBBcmd1bWVudCBtdXN0IGJlIGEgY2hhciBvciBhbiBpbnQgaW4gWy0xMjgsIDEyN10gb3IgWzAsIDI1NV0uICovCi0jZGVmaW5lIFB5X0NIQVJNQVNLKGMpICAgICAgICAgICgodW5zaWduZWQgY2hhcikoKGMpICYgMHhmZikpCi0KICNpbmNsdWRlICJweWZwZS5oIgogCi0vKiBUaGVzZSBkZWZpbml0aW9ucyBtdXN0IG1hdGNoIGNvcnJlc3BvbmRpbmcgZGVmaW5pdGlvbnMgaW4gZ3JhbWluaXQuaC4KLSAgIFRoZXJlJ3MgY29kZSBpbiBjb21waWxlLmMgdGhhdCBjaGVja3MgdGhhdCB0aGV5IGFyZSB0aGUgc2FtZS4gKi8KLSNkZWZpbmUgUHlfc2luZ2xlX2lucHV0IDI1NgotI2RlZmluZSBQeV9maWxlX2lucHV0IDI1NwotI2RlZmluZSBQeV9ldmFsX2lucHV0IDI1OAotCi0jaWZkZWYgSEFWRV9QVEgKLS8qIEdOVSBwdGggdXNlci1zcGFjZSB0aHJlYWQgc3VwcG9ydCAqLwotI2luY2x1ZGUgPHB0aC5oPgotI2VuZGlmCi0KLS8qIERlZmluZSBtYWNyb3MgZm9yIGlubGluZSBkb2N1bWVudGF0aW9uLiAqLwotI2RlZmluZSBQeURvY19WQVIobmFtZSkgc3RhdGljIGNoYXIgbmFtZVtdCi0jZGVmaW5lIFB5RG9jX1NUUlZBUihuYW1lLHN0cikgUHlEb2NfVkFSKG5hbWUpID0gUHlEb2NfU1RSKHN0cikKLSNpZmRlZiBXSVRIX0RPQ19TVFJJTkdTCi0jZGVmaW5lIFB5RG9jX1NUUihzdHIpIHN0cgotI2Vsc2UKLSNkZWZpbmUgUHlEb2NfU1RSKHN0cikgIiIKLSNlbmRpZgotCiAjZW5kaWYgLyogIVB5X1BZVEhPTl9IICovCmRpZmYgLS1naXQgYS9JbmNsdWRlL2Fic3RyYWN0LmggYi9JbmNsdWRlL2Fic3RyYWN0LmgKaW5kZXggMGZlMDk1Ni4uM2E5OWM0ZSAxMDA2NDQKLS0tIGEvSW5jbHVkZS9hYnN0cmFjdC5oCisrKyBiL0luY2x1ZGUvYWJzdHJhY3QuaApAQCAtNyw2ICs3LDcgQEAKICNpZmRlZiBQWV9TU0laRV9UX0NMRUFOCiAjZGVmaW5lIFB5T2JqZWN0X0NhbGxGdW5jdGlvbiBfUHlPYmplY3RfQ2FsbEZ1bmN0aW9uX1NpemVUCiAjZGVmaW5lIFB5T2JqZWN0X0NhbGxNZXRob2QgX1B5T2JqZWN0X0NhbGxNZXRob2RfU2l6ZVQKKyNkZWZpbmUgX1B5T2JqZWN0X0NhbGxNZXRob2RJZCBfUHlPYmplY3RfQ2FsbE1ldGhvZElkX1NpemVUCiAjZW5kaWYKIAogLyogQWJzdHJhY3QgT2JqZWN0IEludGVyZmFjZSAobWFueSB0aGFua3MgdG8gSmltIEZ1bHRvbikgKi8KQEAgLTMwNywxMSArMzA4LDIyIEBACiAgICAgIFB5dGhvbiBleHByZXNzaW9uOiBvLm1ldGhvZChhcmdzKS4KICAgICAgICAqLwogCisgICAgIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5T2JqZWN0X0NhbGxNZXRob2RJZChQeU9iamVjdCAqbywgX1B5X0lkZW50aWZpZXIgKm1ldGhvZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqZm9ybWF0LCAuLi4pOworCisgICAgICAgLyoKKyAgICAgICAgIExpa2UgUHlPYmplY3RfQ2FsbE1ldGhvZCwgYnV0IGV4cGVjdCBhIF9QeV9JZGVudGlmaWVyKiBhcyB0aGUKKyAgICAgICAgIG1ldGhvZCBuYW1lLgorICAgICAgICovCisKICAgICAgUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlPYmplY3RfQ2FsbEZ1bmN0aW9uX1NpemVUKFB5T2JqZWN0ICpjYWxsYWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmZvcm1hdCwgLi4uKTsKICAgICAgUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlPYmplY3RfQ2FsbE1ldGhvZF9TaXplVChQeU9iamVjdCAqbywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmZvcm1hdCwgLi4uKTsKKyAgICAgUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkX1NpemVUKFB5T2JqZWN0ICpvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9QeV9JZGVudGlmaWVyICpuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmZvcm1hdCwgLi4uKTsKIAogICAgICBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MoUHlPYmplY3QgKmNhbGxhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uKTsKQEAgLTU0Nyw3ICs1NTksNyBAQAogICAgIC8qIENvcHkgdGhlIGRhdGEgZnJvbSB0aGUgc3JjIGJ1ZmZlciB0byB0aGUgYnVmZmVyIG9mIGRlc3RpbmF0aW9uCiAgICAgICovCiAKLSAgICAgUHlBUElfRlVOQyhpbnQpIFB5QnVmZmVyX0lzQ29udGlndW91cyhQeV9idWZmZXIgKnZpZXcsIGNoYXIgZm9ydCk7CisgICAgIFB5QVBJX0ZVTkMoaW50KSBQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoY29uc3QgUHlfYnVmZmVyICp2aWV3LCBjaGFyIGZvcnQpOwogCiAKICAgICAgUHlBUElfRlVOQyh2b2lkKSBQeUJ1ZmZlcl9GaWxsQ29udGlndW91c1N0cmlkZXMoaW50IG5kaW1zLApAQCAtMTAxNCw3ICsxMDI2LDcgQEAKIAogICAgICBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5U2VxdWVuY2VfRmFzdChQeU9iamVjdCAqbywgY29uc3QgY2hhciogbSk7CiAgICAgICAgLyoKLSAgICAgUmV0dXJucyB0aGUgc2VxdWVuY2UsIG8sIGFzIGEgdHVwbGUsIHVubGVzcyBpdCdzIGFscmVhZHkgYQorICAgICBSZXR1cm5zIHRoZSBzZXF1ZW5jZSwgbywgYXMgYSBsaXN0LCB1bmxlc3MgaXQncyBhbHJlYWR5IGEKICAgICAgdHVwbGUgb3IgbGlzdC4gIFVzZSBQeVNlcXVlbmNlX0Zhc3RfR0VUX0lURU0gdG8gYWNjZXNzIHRoZQogICAgICBtZW1iZXJzIG9mIHRoaXMgbGlzdCwgYW5kIFB5U2VxdWVuY2VfRmFzdF9HRVRfU0laRSB0byBnZXQgaXRzIGxlbmd0aC4KIApkaWZmIC0tZ2l0IGEvSW5jbHVkZS9hc2RsLmggYi9JbmNsdWRlL2FzZGwuaAppbmRleCA5YmIwNjk3Li40MmJiYmY4IDEwMDY0NAotLS0gYS9JbmNsdWRlL2FzZGwuaAorKysgYi9JbmNsdWRlL2FzZGwuaApAQCAtMyw2ICszLDcgQEAKIAogdHlwZWRlZiBQeU9iamVjdCAqIGlkZW50aWZpZXI7CiB0eXBlZGVmIFB5T2JqZWN0ICogc3RyaW5nOwordHlwZWRlZiBQeU9iamVjdCAqIGJ5dGVzOwogdHlwZWRlZiBQeU9iamVjdCAqIG9iamVjdDsKIAogLyogSXQgd291bGQgYmUgbmljZSBpZiB0aGUgY29kZSBnZW5lcmF0ZWQgYnkgYXNkbF9jLnB5IHdhcyBjb21wbGV0ZWx5CmRpZmYgLS1naXQgYS9JbmNsdWRlL2FzdC5oIGIvSW5jbHVkZS9hc3QuaAppbmRleCBhMDE1MzM2Li4wNTVlOGRjIDEwMDY0NAotLS0gYS9JbmNsdWRlL2FzdC5oCisrKyBiL0luY2x1ZGUvYXN0LmgKQEAgLTQsNiArNCw3IEBACiBleHRlcm4gIkMiIHsKICNlbmRpZgogCitQeUFQSV9GVU5DKGludCkgUHlBU1RfVmFsaWRhdGUobW9kX3R5KTsKIFB5QVBJX0ZVTkMobW9kX3R5KSBQeUFTVF9Gcm9tTm9kZSgKICAgICBjb25zdCBub2RlICpuLAogICAgIFB5Q29tcGlsZXJGbGFncyAqZmxhZ3MsCmRpZmYgLS1naXQgYS9JbmNsdWRlL2NvZGUuaCBiL0luY2x1ZGUvY29kZS5oCmluZGV4IGU3NzNiNmEuLjdjN2U1YmYgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvY29kZS5oCisrKyBiL0luY2x1ZGUvY29kZS5oCkBAIC0yMiw2ICsyMiw3IEBACiAgICAgUHlPYmplY3QgKmNvX2ZyZWV2YXJzOwkvKiB0dXBsZSBvZiBzdHJpbmdzIChmcmVlIHZhcmlhYmxlIG5hbWVzKSAqLwogICAgIFB5T2JqZWN0ICpjb19jZWxsdmFyczsgICAgICAvKiB0dXBsZSBvZiBzdHJpbmdzIChjZWxsIHZhcmlhYmxlIG5hbWVzKSAqLwogICAgIC8qIFRoZSByZXN0IGRvZXNuJ3QgY291bnQgZm9yIGhhc2ggb3IgY29tcGFyaXNvbnMgKi8KKyAgICB1bnNpZ25lZCBjaGFyICpjb19jZWxsMmFyZzsgLyogTWFwcyBjZWxsIHZhcnMgd2hpY2ggYXJlIGFyZ3VtZW50cy4gKi8KICAgICBQeU9iamVjdCAqY29fZmlsZW5hbWU7CS8qIHVuaWNvZGUgKHdoZXJlIGl0IHdhcyBsb2FkZWQgZnJvbSkgKi8KICAgICBQeU9iamVjdCAqY29fbmFtZTsJCS8qIHVuaWNvZGUgKG5hbWUsIGZvciByZWZlcmVuY2UpICovCiAgICAgaW50IGNvX2ZpcnN0bGluZW5vOwkJLyogZmlyc3Qgc291cmNlIGxpbmUgbnVtYmVyICovCkBAIC01Nyw2ICs1OCwxMSBAQAogCiAjZGVmaW5lIENPX0ZVVFVSRV9CQVJSWV9BU19CREZMICAweDQwMDAwCiAKKy8qIFRoaXMgdmFsdWUgaXMgZm91bmQgaW4gdGhlIGNvX2NlbGwyYXJnIGFycmF5IHdoZW4gdGhlIGFzc29jaWF0ZWQgY2VsbAorICAgdmFyaWFibGUgZG9lcyBub3QgY29ycmVzcG9uZCB0byBhbiBhcmd1bWVudC4gVGhlIG1heGltdW0gbnVtYmVyIG9mCisgICBhcmd1bWVudHMgaXMgMjU1IChpbmRleGVkIHVwIHRvIDI1NCksIHNvIDI1NSB3b3JrIGFzIGEgc3BlY2lhbCBmbGFnLiovCisjZGVmaW5lIENPX0NFTExfTk9UX0FOX0FSRyAyNTUKKwogLyogVGhpcyBzaG91bGQgYmUgZGVmaW5lZCBpZiBhIGZ1dHVyZSBzdGF0ZW1lbnQgbW9kaWZpZXMgdGhlIHN5bnRheC4KICAgIEZvciBleGFtcGxlLCB3aGVuIGEga2V5d29yZCBpcyBhZGRlZC4KICovCmRpZmYgLS1naXQgYS9JbmNsdWRlL2NvZGVjcy5oIGIvSW5jbHVkZS9jb2RlY3MuaAppbmRleCBkZmYwOWU3Li4wZDllOWI0IDEwMDY0NAotLS0gYS9JbmNsdWRlL2NvZGVjcy5oCisrKyBiL0luY2x1ZGUvY29kZWNzLmgKQEAgLTE3NCw2ICsxNzQsOCBAQAogLyogcmVwbGFjZSB0aGUgdW5pY29kZSBlbmNvZGUgZXJyb3Igd2l0aCBiYWNrc2xhc2ggZXNjYXBlcyAoXHgsIFx1IGFuZCBcVSkgKi8KIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlDb2RlY19CYWNrc2xhc2hSZXBsYWNlRXJyb3JzKFB5T2JqZWN0ICpleGMpOwogCitQeUFQSV9EQVRBKGNvbnN0IGNoYXIgKikgUHlfaGV4ZGlnaXRzOworCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9jb21waWxlLmggYi9JbmNsdWRlL2NvbXBpbGUuaAppbmRleCBiYzUzYjM5Li5hYzI2MzZkIDEwMDY0NAotLS0gYS9JbmNsdWRlL2NvbXBpbGUuaAorKysgYi9JbmNsdWRlL2NvbXBpbGUuaApAQCAtMSw3ICsxLDcgQEAKLSNpZm5kZWYgUHlfTElNSVRFRF9BUEkKICNpZm5kZWYgUHlfQ09NUElMRV9ICiAjZGVmaW5lIFB5X0NPTVBJTEVfSAogCisjaWZuZGVmIFB5X0xJTUlURURfQVBJCiAjaW5jbHVkZSAiY29kZS5oIgogCiAjaWZkZWYgX19jcGx1c3BsdXMKQEAgLTM4LDkgKzM4LDE5IEBACiAgICAgUHlBcmVuYSAqYXJlbmEpOwogUHlBUElfRlVOQyhQeUZ1dHVyZUZlYXR1cmVzICopIFB5RnV0dXJlX0Zyb21BU1Qoc3RydWN0IF9tb2QgKiwgY29uc3QgY2hhciAqKTsKIAorLyogX1B5X01hbmdsZSBpcyBkZWZpbmVkIGluIGNvbXBpbGUuYyAqLworUHlBUElfRlVOQyhQeU9iamVjdCopIF9QeV9NYW5nbGUoUHlPYmplY3QgKnAsIFB5T2JqZWN0ICpuYW1lKTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKLSNlbmRpZiAvKiAhUHlfQ09NUElMRV9IICovCisKICNlbmRpZiAvKiAhUHlfTElNSVRFRF9BUEkgKi8KKworLyogVGhlc2UgZGVmaW5pdGlvbnMgbXVzdCBtYXRjaCBjb3JyZXNwb25kaW5nIGRlZmluaXRpb25zIGluIGdyYW1pbml0LmguCisgICBUaGVyZSdzIGNvZGUgaW4gY29tcGlsZS5jIHRoYXQgY2hlY2tzIHRoYXQgdGhleSBhcmUgdGhlIHNhbWUuICovCisjZGVmaW5lIFB5X3NpbmdsZV9pbnB1dCAyNTYKKyNkZWZpbmUgUHlfZmlsZV9pbnB1dCAyNTcKKyNkZWZpbmUgUHlfZXZhbF9pbnB1dCAyNTgKKworI2VuZGlmIC8qICFQeV9DT01QSUxFX0ggKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvY29tcGxleG9iamVjdC5oIGIvSW5jbHVkZS9jb21wbGV4b2JqZWN0LmgKaW5kZXggYzM3OWIwOC4uM2U0ZWNmZiAxMDA2NDQKLS0tIGEvSW5jbHVkZS9jb21wbGV4b2JqZWN0LmgKKysrIGIvSW5jbHVkZS9jb21wbGV4b2JqZWN0LmgKQEAgLTY0LDggKzY0LDkgQEAKICAgIChBZHZhbmNlZCBTdHJpbmcgRm9ybWF0dGluZykuICovCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIF9QeUNvbXBsZXhfRm9ybWF0QWR2YW5jZWQoUHlPYmplY3QgKm9iaiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFICpmb3JtYXRfc3BlYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmZvcm1hdF9zcGVjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQpOwogI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9kYXRldGltZS5oIGIvSW5jbHVkZS9kYXRldGltZS5oCmluZGV4IGRiNTdhMTguLjQxZTNiY2YgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZGF0ZXRpbWUuaAorKysgYi9JbmNsdWRlL2RhdGV0aW1lLmgKQEAgLTEzNSw2ICsxMzUsMTIgQEAKICAgICAgKCgoUHlEYXRlVGltZV9UaW1lKilvKS0+ZGF0YVs0XSA8PCA4KSAgfCAgICAgICAgICAgXAogICAgICAgKChQeURhdGVUaW1lX1RpbWUqKW8pLT5kYXRhWzVdKQogCisvKiBBcHBseSBmb3IgdGltZSBkZWx0YSBpbnN0YW5jZXMgKi8KKyNkZWZpbmUgUHlEYXRlVGltZV9ERUxUQV9HRVRfREFZUyhvKSAgICAgICAgICgoKFB5RGF0ZVRpbWVfRGVsdGEqKW8pLT5kYXlzKQorI2RlZmluZSBQeURhdGVUaW1lX0RFTFRBX0dFVF9TRUNPTkRTKG8pICAgICAgKCgoUHlEYXRlVGltZV9EZWx0YSopbyktPnNlY29uZHMpCisjZGVmaW5lIFB5RGF0ZVRpbWVfREVMVEFfR0VUX01JQ1JPU0VDT05EUyhvKSAgICAgICAgICAgIFwKKyAgICAoKChQeURhdGVUaW1lX0RlbHRhKilvKS0+bWljcm9zZWNvbmRzKQorCiAKIC8qIERlZmluZSBzdHJ1Y3R1cmUgZm9yIEMgQVBJLiAqLwogdHlwZWRlZiBzdHJ1Y3QgewpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9kZXNjcm9iamVjdC5oIGIvSW5jbHVkZS9kZXNjcm9iamVjdC5oCmluZGV4IDY0NmIzY2MuLmUyYmE5N2YgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZGVzY3JvYmplY3QuaAorKysgYi9JbmNsdWRlL2Rlc2Nyb2JqZWN0LmgKQEAgLTQyLDYgKzQyLDcgQEAKICAgICBQeU9iamVjdF9IRUFECiAgICAgUHlUeXBlT2JqZWN0ICpkX3R5cGU7CiAgICAgUHlPYmplY3QgKmRfbmFtZTsKKyAgICBQeU9iamVjdCAqZF9xdWFsbmFtZTsKIH0gUHlEZXNjck9iamVjdDsKIAogI2RlZmluZSBQeURlc2NyX0NPTU1PTiBQeURlc2NyT2JqZWN0IGRfY29tbW9uCmRpZmYgLS1naXQgYS9JbmNsdWRlL2RpY3RvYmplY3QuaCBiL0luY2x1ZGUvZGljdG9iamVjdC5oCmluZGV4IGIwMjY3ODUuLmVkNDRlMjAgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZGljdG9iamVjdC5oCisrKyBiL0luY2x1ZGUvZGljdG9iamVjdC5oCkBAIC0xMjksNiArMTI5LDggQEAKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5RGljdF9OZXdQcmVzaXplZChQeV9zc2l6ZV90IG1pbnVzZWQpOwogUHlBUElfRlVOQyh2b2lkKSBfUHlEaWN0X01heWJlVW50cmFjayhQeU9iamVjdCAqbXApOwogUHlBUElfRlVOQyhpbnQpIF9QeURpY3RfSGFzT25seVN0cmluZ0tleXMoUHlPYmplY3QgKm1wKTsKKworUHlBUElfRlVOQyhpbnQpIFB5RGljdF9DbGVhckZyZWVMaXN0KHZvaWQpOwogI2VuZGlmCiAKIC8qIFB5RGljdF9VcGRhdGUobXAsIG90aGVyKSBpcyBlcXVpdmFsZW50IHRvIFB5RGljdF9NZXJnZShtcCwgb3RoZXIsIDEpLiAqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9lcnJjb2RlLmggYi9JbmNsdWRlL2VycmNvZGUuaAppbmRleCA2YmIzY2MxLi41OTQ2Njg2IDEwMDY0NAotLS0gYS9JbmNsdWRlL2VycmNvZGUuaAorKysgYi9JbmNsdWRlL2VycmNvZGUuaApAQCAtMzAsNiArMzAsNyBAQAogI2RlZmluZSBFX0VPTFMJCTI0CS8qIEVPTCBpbiBzaW5nbGUtcXVvdGVkIHN0cmluZyAqLwogI2RlZmluZSBFX0xJTkVDT05UCTI1CS8qIFVuZXhwZWN0ZWQgY2hhcmFjdGVycyBhZnRlciBhIGxpbmUgY29udGludWF0aW9uICovCiAjZGVmaW5lIEVfSURFTlRJRklFUiAgICAyNiAgICAgIC8qIEludmFsaWQgY2hhcmFjdGVycyBpbiBpZGVudGlmaWVyICovCisjZGVmaW5lIEVfQkFEU0lOR0xFCTI3CS8qIElsbC1mb3JtZWQgc2luZ2xlIHN0YXRlbWVudCBpbnB1dCAqLwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBhL0luY2x1ZGUvZmlsZXV0aWxzLmggYi9JbmNsdWRlL2ZpbGV1dGlscy5oCmluZGV4IDJmYWRlOWIuLjdjMThjZjIgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZmlsZXV0aWxzLmgKKysrIGIvSW5jbHVkZS9maWxldXRpbHMuaApAQCAtNSw2ICs1LDggQEAKIGV4dGVybiAiQyIgewogI2VuZGlmCiAKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5X2RldmljZV9lbmNvZGluZyhpbnQpOworCiBQeUFQSV9GVU5DKHdjaGFyX3QgKikgX1B5X2NoYXIyd2NoYXIoCiAgICAgY29uc3QgY2hhciAqYXJnLAogICAgIHNpemVfdCAqc2l6ZSk7CmRpZmYgLS1naXQgYS9JbmNsdWRlL2Zsb2F0b2JqZWN0LmggYi9JbmNsdWRlL2Zsb2F0b2JqZWN0LmgKaW5kZXggOTBmMGE0NS4uMGNhNDg4MSAxMDA2NDQKLS0tIGEvSW5jbHVkZS9mbG9hdG9iamVjdC5oCisrKyBiL0luY2x1ZGUvZmxvYXRvYmplY3QuaApAQCAtMjcsMTIgKzI3LDEyIEBACiAjZGVmaW5lIFB5X1JFVFVSTl9OQU4gcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZShQeV9OQU4pCiAjZW5kaWYKIAotI2RlZmluZSBQeV9SRVRVUk5fSU5GKHNpZ24pIGRvCQkJCQlcCi0JaWYgKGNvcHlzaWduKDEuLCBzaWduKSA9PSAxLikgewkJCQlcCi0JCXJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUoUHlfSFVHRV9WQUwpOwlcCi0JfSBlbHNlIHsJCQkJCQlcCi0JCXJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUoLVB5X0hVR0VfVkFMKTsJXAotCX0gd2hpbGUoMCkKKyNkZWZpbmUgUHlfUkVUVVJOX0lORihzaWduKSBkbyAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBpZiAoY29weXNpZ24oMS4sIHNpZ24pID09IDEuKSB7ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZShQeV9IVUdFX1ZBTCk7ICAgIFwKKyAgICB9IGVsc2UgeyAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZSgtUHlfSFVHRV9WQUwpOyAgIFwKKyAgICB9IHdoaWxlKDApCiAKIFB5QVBJX0ZVTkMoZG91YmxlKSBQeUZsb2F0X0dldE1heCh2b2lkKTsKIFB5QVBJX0ZVTkMoZG91YmxlKSBQeUZsb2F0X0dldE1pbih2b2lkKTsKQEAgLTExMyw4ICsxMTMsOSBAQAogLyogRm9ybWF0IHRoZSBvYmplY3QgYmFzZWQgb24gdGhlIGZvcm1hdF9zcGVjLCBhcyBkZWZpbmVkIGluIFBFUCAzMTAxCiAgICAoQWR2YW5jZWQgU3RyaW5nIEZvcm1hdHRpbmcpLiAqLwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlGbG9hdF9Gb3JtYXRBZHZhbmNlZChQeU9iamVjdCAqb2JqLAotCQkJCQkgICAgICAgUHlfVU5JQ09ERSAqZm9ybWF0X3NwZWMsCi0JCQkJCSAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQpOwogI2VuZGlmIC8qIFB5X0xJTUlURURfQVBJICovCiAKICNpZmRlZiBfX2NwbHVzcGx1cwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9mcmFtZW9iamVjdC5oIGIvSW5jbHVkZS9mcmFtZW9iamVjdC5oCmluZGV4IDFmYjY0YmIuLjU1NDQ3YjcgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZnJhbWVvYmplY3QuaAorKysgYi9JbmNsdWRlL2ZyYW1lb2JqZWN0LmgKQEAgLTksNDUgKzksNDYgQEAKICNlbmRpZgogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gICAgaW50IGJfdHlwZTsJCQkvKiB3aGF0IGtpbmQgb2YgYmxvY2sgdGhpcyBpcyAqLwotICAgIGludCBiX2hhbmRsZXI7CQkvKiB3aGVyZSB0byBqdW1wIHRvIGZpbmQgaGFuZGxlciAqLwotICAgIGludCBiX2xldmVsOwkJLyogdmFsdWUgc3RhY2sgbGV2ZWwgdG8gcG9wIHRvICovCisgICAgaW50IGJfdHlwZTsgICAgICAgICAgICAgICAgIC8qIHdoYXQga2luZCBvZiBibG9jayB0aGlzIGlzICovCisgICAgaW50IGJfaGFuZGxlcjsgICAgICAgICAgICAgIC8qIHdoZXJlIHRvIGp1bXAgdG8gZmluZCBoYW5kbGVyICovCisgICAgaW50IGJfbGV2ZWw7ICAgICAgICAgICAgICAgIC8qIHZhbHVlIHN0YWNrIGxldmVsIHRvIHBvcCB0byAqLwogfSBQeVRyeUJsb2NrOwogCiB0eXBlZGVmIHN0cnVjdCBfZnJhbWUgewogICAgIFB5T2JqZWN0X1ZBUl9IRUFECi0gICAgc3RydWN0IF9mcmFtZSAqZl9iYWNrOwkvKiBwcmV2aW91cyBmcmFtZSwgb3IgTlVMTCAqLwotICAgIFB5Q29kZU9iamVjdCAqZl9jb2RlOwkvKiBjb2RlIHNlZ21lbnQgKi8KLSAgICBQeU9iamVjdCAqZl9idWlsdGluczsJLyogYnVpbHRpbiBzeW1ib2wgdGFibGUgKFB5RGljdE9iamVjdCkgKi8KLSAgICBQeU9iamVjdCAqZl9nbG9iYWxzOwkvKiBnbG9iYWwgc3ltYm9sIHRhYmxlIChQeURpY3RPYmplY3QpICovCi0gICAgUHlPYmplY3QgKmZfbG9jYWxzOwkJLyogbG9jYWwgc3ltYm9sIHRhYmxlIChhbnkgbWFwcGluZykgKi8KLSAgICBQeU9iamVjdCAqKmZfdmFsdWVzdGFjazsJLyogcG9pbnRzIGFmdGVyIHRoZSBsYXN0IGxvY2FsICovCisgICAgc3RydWN0IF9mcmFtZSAqZl9iYWNrOyAgICAgIC8qIHByZXZpb3VzIGZyYW1lLCBvciBOVUxMICovCisgICAgUHlDb2RlT2JqZWN0ICpmX2NvZGU7ICAgICAgIC8qIGNvZGUgc2VnbWVudCAqLworICAgIFB5T2JqZWN0ICpmX2J1aWx0aW5zOyAgICAgICAvKiBidWlsdGluIHN5bWJvbCB0YWJsZSAoUHlEaWN0T2JqZWN0KSAqLworICAgIFB5T2JqZWN0ICpmX2dsb2JhbHM7ICAgICAgICAvKiBnbG9iYWwgc3ltYm9sIHRhYmxlIChQeURpY3RPYmplY3QpICovCisgICAgUHlPYmplY3QgKmZfbG9jYWxzOyAgICAgICAgIC8qIGxvY2FsIHN5bWJvbCB0YWJsZSAoYW55IG1hcHBpbmcpICovCisgICAgUHlPYmplY3QgKipmX3ZhbHVlc3RhY2s7ICAgIC8qIHBvaW50cyBhZnRlciB0aGUgbGFzdCBsb2NhbCAqLwogICAgIC8qIE5leHQgZnJlZSBzbG90IGluIGZfdmFsdWVzdGFjay4gIEZyYW1lIGNyZWF0aW9uIHNldHMgdG8gZl92YWx1ZXN0YWNrLgogICAgICAgIEZyYW1lIGV2YWx1YXRpb24gdXN1YWxseSBOVUxMcyBpdCwgYnV0IGEgZnJhbWUgdGhhdCB5aWVsZHMgc2V0cyBpdAogICAgICAgIHRvIHRoZSBjdXJyZW50IHN0YWNrIHRvcC4gKi8KICAgICBQeU9iamVjdCAqKmZfc3RhY2t0b3A7Ci0gICAgUHlPYmplY3QgKmZfdHJhY2U7CQkvKiBUcmFjZSBmdW5jdGlvbiAqLworICAgIFB5T2JqZWN0ICpmX3RyYWNlOyAgICAgICAgICAvKiBUcmFjZSBmdW5jdGlvbiAqLworICAgIFB5T2JqZWN0ICpmX3lpZWxkZnJvbTsgICAgICAvKiBJdGVyYXRvciBiZWluZyBkZWxlZ2F0ZWQgdG8gYnkgeWllbGQgZnJvbSAqLwogCi0JLyogSW4gYSBnZW5lcmF0b3IsIHdlIG5lZWQgdG8gYmUgYWJsZSB0byBzd2FwIGJldHdlZW4gdGhlIGV4Y2VwdGlvbgotCSAgIHN0YXRlIGluc2lkZSB0aGUgZ2VuZXJhdG9yIGFuZCB0aGUgZXhjZXB0aW9uIHN0YXRlIG9mIHRoZSBjYWxsaW5nCi0JICAgZnJhbWUgKHdoaWNoIHNob3VsZG4ndCBiZSBpbXBhY3RlZCB3aGVuIHRoZSBnZW5lcmF0b3IgInlpZWxkcyIKLQkgICBmcm9tIGFuIGV4Y2VwdCBoYW5kbGVyKS4KLQkgICBUaGVzZSB0aHJlZSBmaWVsZHMgZXhpc3QgZXhhY3RseSBmb3IgdGhhdCwgYW5kIGFyZSB1bnVzZWQgZm9yCi0JICAgbm9uLWdlbmVyYXRvciBmcmFtZXMuIFNlZSB0aGUgU0FWRV9FWENfU1RBVEUgYW5kIFNXQVBfRVhDX1NUQVRFCi0JICAgbWFjcm9zIGluIGNldmFsLmMgZm9yIGRldGFpbHMgb2YgdGhlaXIgdXNlLiAqLworICAgICAgICAvKiBJbiBhIGdlbmVyYXRvciwgd2UgbmVlZCB0byBiZSBhYmxlIHRvIHN3YXAgYmV0d2VlbiB0aGUgZXhjZXB0aW9uCisgICAgICAgICAgIHN0YXRlIGluc2lkZSB0aGUgZ2VuZXJhdG9yIGFuZCB0aGUgZXhjZXB0aW9uIHN0YXRlIG9mIHRoZSBjYWxsaW5nCisgICAgICAgICAgIGZyYW1lICh3aGljaCBzaG91bGRuJ3QgYmUgaW1wYWN0ZWQgd2hlbiB0aGUgZ2VuZXJhdG9yICJ5aWVsZHMiCisgICAgICAgICAgIGZyb20gYW4gZXhjZXB0IGhhbmRsZXIpLgorICAgICAgICAgICBUaGVzZSB0aHJlZSBmaWVsZHMgZXhpc3QgZXhhY3RseSBmb3IgdGhhdCwgYW5kIGFyZSB1bnVzZWQgZm9yCisgICAgICAgICAgIG5vbi1nZW5lcmF0b3IgZnJhbWVzLiBTZWUgdGhlIFNBVkVfRVhDX1NUQVRFIGFuZCBTV0FQX0VYQ19TVEFURQorICAgICAgICAgICBtYWNyb3MgaW4gY2V2YWwuYyBmb3IgZGV0YWlscyBvZiB0aGVpciB1c2UuICovCiAgICAgUHlPYmplY3QgKmZfZXhjX3R5cGUsICpmX2V4Y192YWx1ZSwgKmZfZXhjX3RyYWNlYmFjazsKIAogICAgIFB5VGhyZWFkU3RhdGUgKmZfdHN0YXRlOwotICAgIGludCBmX2xhc3RpOwkJLyogTGFzdCBpbnN0cnVjdGlvbiBpZiBjYWxsZWQgKi8KKyAgICBpbnQgZl9sYXN0aTsgICAgICAgICAgICAgICAgLyogTGFzdCBpbnN0cnVjdGlvbiBpZiBjYWxsZWQgKi8KICAgICAvKiBDYWxsIFB5RnJhbWVfR2V0TGluZU51bWJlcigpIGluc3RlYWQgb2YgcmVhZGluZyB0aGlzIGZpZWxkCiAgICAgICAgZGlyZWN0bHkuICBBcyBvZiAyLjMgZl9saW5lbm8gaXMgb25seSB2YWxpZCB3aGVuIHRyYWNpbmcgaXMKICAgICAgICBhY3RpdmUgKGkuZS4gd2hlbiBmX3RyYWNlIGlzIHNldCkuICBBdCBvdGhlciB0aW1lcyB3ZSB1c2UKICAgICAgICBQeUNvZGVfQWRkcjJMaW5lIHRvIGNhbGN1bGF0ZSB0aGUgbGluZSBmcm9tIHRoZSBjdXJyZW50CiAgICAgICAgYnl0ZWNvZGUgaW5kZXguICovCi0gICAgaW50IGZfbGluZW5vOwkJLyogQ3VycmVudCBsaW5lIG51bWJlciAqLwotICAgIGludCBmX2libG9jazsJCS8qIGluZGV4IGluIGZfYmxvY2tzdGFjayAqLworICAgIGludCBmX2xpbmVubzsgICAgICAgICAgICAgICAvKiBDdXJyZW50IGxpbmUgbnVtYmVyICovCisgICAgaW50IGZfaWJsb2NrOyAgICAgICAgICAgICAgIC8qIGluZGV4IGluIGZfYmxvY2tzdGFjayAqLwogICAgIFB5VHJ5QmxvY2sgZl9ibG9ja3N0YWNrW0NPX01BWEJMT0NLU107IC8qIGZvciB0cnkgYW5kIGxvb3AgYmxvY2tzICovCi0gICAgUHlPYmplY3QgKmZfbG9jYWxzcGx1c1sxXTsJLyogbG9jYWxzK3N0YWNrLCBkeW5hbWljYWxseSBzaXplZCAqLworICAgIFB5T2JqZWN0ICpmX2xvY2Fsc3BsdXNbMV07ICAvKiBsb2NhbHMrc3RhY2ssIGR5bmFtaWNhbGx5IHNpemVkICovCiB9IFB5RnJhbWVPYmplY3Q7CiAKIApkaWZmIC0tZ2l0IGEvSW5jbHVkZS9mdW5jb2JqZWN0LmggYi9JbmNsdWRlL2Z1bmNvYmplY3QuaAppbmRleCA1MjFkODdiLi5jYzE0MjZjIDEwMDY0NAotLS0gYS9JbmNsdWRlL2Z1bmNvYmplY3QuaAorKysgYi9JbmNsdWRlL2Z1bmNvYmplY3QuaApAQCAtMzEsNiArMzEsNyBAQAogICAgIFB5T2JqZWN0ICpmdW5jX3dlYWtyZWZsaXN0OwkvKiBMaXN0IG9mIHdlYWsgcmVmZXJlbmNlcyAqLwogICAgIFB5T2JqZWN0ICpmdW5jX21vZHVsZTsJLyogVGhlIF9fbW9kdWxlX18gYXR0cmlidXRlLCBjYW4gYmUgYW55dGhpbmcgKi8KICAgICBQeU9iamVjdCAqZnVuY19hbm5vdGF0aW9uczsJLyogQW5ub3RhdGlvbnMsIGEgZGljdCBvciBOVUxMICovCisgICAgUHlPYmplY3QgKmZ1bmNfcXVhbG5hbWU7ICAgIC8qIFRoZSBxdWFsaWZpZWQgbmFtZSAqLwogCiAgICAgLyogSW52YXJpYW50OgogICAgICAqICAgICBmdW5jX2Nsb3N1cmUgY29udGFpbnMgdGhlIGJpbmRpbmdzIGZvciBmdW5jX2NvZGUtPmNvX2ZyZWV2YXJzLCBzbwpAQCAtNDQsNiArNDUsNyBAQAogI2RlZmluZSBQeUZ1bmN0aW9uX0NoZWNrKG9wKSAoUHlfVFlQRShvcCkgPT0gJlB5RnVuY3Rpb25fVHlwZSkKIAogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUZ1bmN0aW9uX05ldyhQeU9iamVjdCAqLCBQeU9iamVjdCAqKTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlGdW5jdGlvbl9OZXdXaXRoUXVhbE5hbWUoUHlPYmplY3QgKiwgUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5RnVuY3Rpb25fR2V0Q29kZShQeU9iamVjdCAqKTsKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlGdW5jdGlvbl9HZXRHbG9iYWxzKFB5T2JqZWN0ICopOwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUZ1bmN0aW9uX0dldE1vZHVsZShQeU9iamVjdCAqKTsKZGlmZiAtLWdpdCBhL0luY2x1ZGUvZ2Vub2JqZWN0LmggYi9JbmNsdWRlL2dlbm9iamVjdC5oCmluZGV4IGQyOWZiMWUuLmU3YTFjMDEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZ2Vub2JqZWN0LmgKKysrIGIvSW5jbHVkZS9nZW5vYmplY3QuaApAQCAtMTEsMjAgKzExLDIwIEBACiBzdHJ1Y3QgX2ZyYW1lOyAvKiBBdm9pZCBpbmNsdWRpbmcgZnJhbWVvYmplY3QuaCAqLwogCiB0eXBlZGVmIHN0cnVjdCB7Ci0JUHlPYmplY3RfSEVBRAotCS8qIFRoZSBnaV8gcHJlZml4IGlzIGludGVuZGVkIHRvIHJlbWluZCBvZiBnZW5lcmF0b3ItaXRlcmF0b3IuICovCisgICAgUHlPYmplY3RfSEVBRAorICAgIC8qIFRoZSBnaV8gcHJlZml4IGlzIGludGVuZGVkIHRvIHJlbWluZCBvZiBnZW5lcmF0b3ItaXRlcmF0b3IuICovCiAKLQkvKiBOb3RlOiBnaV9mcmFtZSBjYW4gYmUgTlVMTCBpZiB0aGUgZ2VuZXJhdG9yIGlzICJmaW5pc2hlZCIgKi8KLQlzdHJ1Y3QgX2ZyYW1lICpnaV9mcmFtZTsKKyAgICAvKiBOb3RlOiBnaV9mcmFtZSBjYW4gYmUgTlVMTCBpZiB0aGUgZ2VuZXJhdG9yIGlzICJmaW5pc2hlZCIgKi8KKyAgICBzdHJ1Y3QgX2ZyYW1lICpnaV9mcmFtZTsKIAotCS8qIFRydWUgaWYgZ2VuZXJhdG9yIGlzIGJlaW5nIGV4ZWN1dGVkLiAqLwotCWludCBnaV9ydW5uaW5nOworICAgIC8qIFRydWUgaWYgZ2VuZXJhdG9yIGlzIGJlaW5nIGV4ZWN1dGVkLiAqLworICAgIGludCBnaV9ydW5uaW5nOwogICAgIAotCS8qIFRoZSBjb2RlIG9iamVjdCBiYWNraW5nIHRoZSBnZW5lcmF0b3IgKi8KLQlQeU9iamVjdCAqZ2lfY29kZTsKKyAgICAvKiBUaGUgY29kZSBvYmplY3QgYmFja2luZyB0aGUgZ2VuZXJhdG9yICovCisgICAgUHlPYmplY3QgKmdpX2NvZGU7CiAKLQkvKiBMaXN0IG9mIHdlYWsgcmVmZXJlbmNlLiAqLwotCVB5T2JqZWN0ICpnaV93ZWFrcmVmbGlzdDsKKyAgICAvKiBMaXN0IG9mIHdlYWsgcmVmZXJlbmNlLiAqLworICAgIFB5T2JqZWN0ICpnaV93ZWFrcmVmbGlzdDsKIH0gUHlHZW5PYmplY3Q7CiAKIFB5QVBJX0RBVEEoUHlUeXBlT2JqZWN0KSBQeUdlbl9UeXBlOwpAQCAtMzQsNiArMzQsNyBAQAogCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5R2VuX05ldyhzdHJ1Y3QgX2ZyYW1lICopOwogUHlBUElfRlVOQyhpbnQpIFB5R2VuX05lZWRzRmluYWxpemluZyhQeUdlbk9iamVjdCAqKTsKK1B5QVBJX0ZVTkMoaW50KSBQeUdlbl9GZXRjaFN0b3BJdGVyYXRpb25WYWx1ZShQeU9iamVjdCAqKik7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9ncmFtaW5pdC5oIGIvSW5jbHVkZS9ncmFtaW5pdC5oCmluZGV4IGUwZTI3ZjkuLjNlYzk0OWEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZ3JhbWluaXQuaAorKysgYi9JbmNsdWRlL2dyYW1pbml0LmgKQEAgLTgxLDMgKzgxLDQgQEAKICNkZWZpbmUgY29tcF9pZiAzMzQKICNkZWZpbmUgZW5jb2RpbmdfZGVjbCAzMzUKICNkZWZpbmUgeWllbGRfZXhwciAzMzYKKyNkZWZpbmUgeWllbGRfYXJnIDMzNwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9pbXBvcnQuaCBiL0luY2x1ZGUvaW1wb3J0LmgKaW5kZXggNDAwZTk3Yy4uNDU1NDQxMTEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvaW1wb3J0LmgKKysrIGIvSW5jbHVkZS9pbXBvcnQuaApAQCAtMjQsNyArMjQsMTYgQEAKICAgICBjaGFyICpwYXRobmFtZSwgICAgICAgICAgICAgLyogZGVjb2RlZCBmcm9tIHRoZSBmaWxlc3lzdGVtIGVuY29kaW5nICovCiAgICAgY2hhciAqY3BhdGhuYW1lICAgICAgICAgICAgIC8qIGRlY29kZWQgZnJvbSB0aGUgZmlsZXN5c3RlbSBlbmNvZGluZyAqLwogICAgICk7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlT2JqZWN0KAorICAgIFB5T2JqZWN0ICpuYW1lLAorICAgIFB5T2JqZWN0ICpjbywKKyAgICBQeU9iamVjdCAqcGF0aG5hbWUsCisgICAgUHlPYmplY3QgKmNwYXRobmFtZQorICAgICk7CiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5SW1wb3J0X0dldE1vZHVsZURpY3Qodm9pZCk7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5SW1wb3J0X0FkZE1vZHVsZU9iamVjdCgKKyAgICBQeU9iamVjdCAqbmFtZQorICAgICk7CiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5SW1wb3J0X0FkZE1vZHVsZSgKICAgICBjb25zdCBjaGFyICpuYW1lICAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KICAgICApOwpAQCAtMzUsNyArNDQsMTQgQEAKICAgICBjb25zdCBjaGFyICpuYW1lICAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KICAgICApOwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbCgKLSAgICBjaGFyICpuYW1lLCAgICAgICAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KKyAgICBjb25zdCBjaGFyICpuYW1lLCAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KKyAgICBQeU9iamVjdCAqZ2xvYmFscywKKyAgICBQeU9iamVjdCAqbG9jYWxzLAorICAgIFB5T2JqZWN0ICpmcm9tbGlzdCwKKyAgICBpbnQgbGV2ZWwKKyAgICApOworUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbE9iamVjdCgKKyAgICBQeU9iamVjdCAqbmFtZSwKICAgICBQeU9iamVjdCAqZ2xvYmFscywKICAgICBQeU9iamVjdCAqbG9jYWxzLAogICAgIFB5T2JqZWN0ICpmcm9tbGlzdCwKQEAgLTQ5LDYgKzY1LDkgQEAKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlJbXBvcnRfSW1wb3J0KFB5T2JqZWN0ICpuYW1lKTsKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlJbXBvcnRfUmVsb2FkTW9kdWxlKFB5T2JqZWN0ICptKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlJbXBvcnRfQ2xlYW51cCh2b2lkKTsKK1B5QVBJX0ZVTkMoaW50KSBQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGVPYmplY3QoCisgICAgUHlPYmplY3QgKm5hbWUKKyAgICApOwogUHlBUElfRlVOQyhpbnQpIFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZSgKICAgICBjaGFyICpuYW1lICAgICAgICAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KICAgICApOwpAQCAtNjUsMTcgKzg0LDE3IEBACiBQeUFQSV9GVU5DKHZvaWQpIF9QeUltcG9ydF9SZUluaXRMb2NrKHZvaWQpOwogCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopX1B5SW1wb3J0X0ZpbmRCdWlsdGluKAotICAgIGNoYXIgKm5hbWUgICAgICAgICAgICAgICAgICAvKiBVVEYtOCBlbmNvZGVkIHN0cmluZyAqLworICAgIGNvbnN0IGNoYXIgKm5hbWUgICAgICAgICAgICAvKiBVVEYtOCBlbmNvZGVkIHN0cmluZyAqLwogICAgICk7Ci1QeUFQSV9GVU5DKFB5T2JqZWN0ICopX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25Vbmljb2RlKGNoYXIgKiwgUHlPYmplY3QgKik7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25PYmplY3QoUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CiBQeUFQSV9GVU5DKGludClfUHlJbXBvcnRfRml4dXBCdWlsdGluKAogICAgIFB5T2JqZWN0ICptb2QsCiAgICAgY2hhciAqbmFtZSAgICAgICAgICAgICAgICAgIC8qIFVURi04IGVuY29kZWQgc3RyaW5nICovCiAgICAgKTsKLVB5QVBJX0ZVTkMoaW50KV9QeUltcG9ydF9GaXh1cEV4dGVuc2lvblVuaWNvZGUoUHlPYmplY3QqLCBjaGFyICosIFB5T2JqZWN0ICopOworUHlBUElfRlVOQyhpbnQpX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uT2JqZWN0KFB5T2JqZWN0KiwgUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CiAKIHN0cnVjdCBfaW5pdHRhYiB7Ci0gICAgY2hhciAqbmFtZTsKKyAgICBjaGFyICpuYW1lOyAgICAgICAgICAgICAgICAgLyogQVNDSUkgZW5jb2RlZCBzdHJpbmcgKi8KICAgICBQeU9iamVjdCogKCppbml0ZnVuYykodm9pZCk7CiB9OwogUHlBUElfREFUQShzdHJ1Y3QgX2luaXR0YWIgKikgUHlJbXBvcnRfSW5pdHRhYjsKZGlmZiAtLWdpdCBhL0luY2x1ZGUvaW50cmNoZWNrLmggYi9JbmNsdWRlL2ludHJjaGVjay5oCmluZGV4IDNiNjdlZDAuLmY1M2ZlZTEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvaW50cmNoZWNrLmgKKysrIGIvSW5jbHVkZS9pbnRyY2hlY2suaApAQCAtOCw2ICs4LDEyIEBACiBQeUFQSV9GVU5DKGludCkgUHlPU19JbnRlcnJ1cHRPY2N1cnJlZCh2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlPU19Jbml0SW50ZXJydXB0cyh2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlPU19BZnRlckZvcmsodm9pZCk7CitQeUFQSV9GVU5DKGludCkgX1B5T1NfSXNNYWluVGhyZWFkKHZvaWQpOworCisjaWZkZWYgTVNfV0lORE9XUworLyogd2luZG93cy5oIGlzIG5vdCBpbmNsdWRlZCBieSBQeXRob24uaCBzbyB1c2Ugdm9pZCogaW5zdGVhZCBvZiBIQU5ETEUgKi8KK1B5QVBJX0ZVTkModm9pZCopIF9QeU9TX1NpZ2ludEV2ZW50KHZvaWQpOworI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9saXN0b2JqZWN0LmggYi9JbmNsdWRlL2xpc3RvYmplY3QuaAppbmRleCA5NDliMWEzLi42ZmQzNzRiIDEwMDY0NAotLS0gYS9JbmNsdWRlL2xpc3RvYmplY3QuaAorKysgYi9JbmNsdWRlL2xpc3RvYmplY3QuaApAQCAtNjIsNiArNjIsOCBAQAogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUxpc3RfQXNUdXBsZShQeU9iamVjdCAqKTsKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5TGlzdF9FeHRlbmQoUHlMaXN0T2JqZWN0ICosIFB5T2JqZWN0ICopOworCitQeUFQSV9GVU5DKGludCkgUHlMaXN0X0NsZWFyRnJlZUxpc3Qodm9pZCk7CiAjZW5kaWYKIAogLyogTWFjcm8sIHRyYWRpbmcgc2FmZXR5IGZvciBzcGVlZCAqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9sb25nb2JqZWN0LmggYi9JbmNsdWRlL2xvbmdvYmplY3QuaAppbmRleCBjMDk1NjVhLi5jNThkZGY0IDEwMDY0NAotLS0gYS9JbmNsdWRlL2xvbmdvYmplY3QuaAorKysgYi9JbmNsdWRlL2xvbmdvYmplY3QuaApAQCAtMTIsNyArMTIsNyBAQAogUHlBUElfREFUQShQeVR5cGVPYmplY3QpIFB5TG9uZ19UeXBlOwogCiAjZGVmaW5lIFB5TG9uZ19DaGVjayhvcCkgXAotCQlQeVR5cGVfRmFzdFN1YmNsYXNzKFB5X1RZUEUob3ApLCBQeV9UUEZMQUdTX0xPTkdfU1VCQ0xBU1MpCisgICAgICAgIFB5VHlwZV9GYXN0U3ViY2xhc3MoUHlfVFlQRShvcCksIFB5X1RQRkxBR1NfTE9OR19TVUJDTEFTUykKICNkZWZpbmUgUHlMb25nX0NoZWNrRXhhY3Qob3ApIChQeV9UWVBFKG9wKSA9PSAmUHlMb25nX1R5cGUpCiAKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlMb25nX0Zyb21Mb25nKGxvbmcpOwpAQCAtODAsNiArODAsNyBAQAogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUxvbmdfRnJvbVN0cmluZyhjaGFyICosIGNoYXIgKiosIGludCk7CiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5TG9uZ19Gcm9tVW5pY29kZShQeV9VTklDT0RFKiwgUHlfc3NpemVfdCwgaW50KTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlMb25nX0Zyb21Vbmljb2RlT2JqZWN0KFB5T2JqZWN0ICp1LCBpbnQgYmFzZSk7CiAjZW5kaWYKIAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQpAQCAtMTIxLDggKzEyMiw4IEBACiAgICAgIGVub3VnaCBtZW1vcnkgdG8gY3JlYXRlIHRoZSBQeXRob24gbG9uZy4KICovCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIF9QeUxvbmdfRnJvbUJ5dGVBcnJheSgKLQljb25zdCB1bnNpZ25lZCBjaGFyKiBieXRlcywgc2l6ZV90IG4sCi0JaW50IGxpdHRsZV9lbmRpYW4sIGludCBpc19zaWduZWQpOworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGJ5dGVzLCBzaXplX3QgbiwKKyAgICBpbnQgbGl0dGxlX2VuZGlhbiwgaW50IGlzX3NpZ25lZCk7CiAKIC8qIF9QeUxvbmdfQXNCeXRlQXJyYXk6IENvbnZlcnQgdGhlIGxlYXN0LXNpZ25pZmljYW50IDgqbiBiaXRzIG9mIGxvbmcKICAgIHYgdG8gYSBiYXNlLTI1NiBpbnRlZ2VyLCBzdG9yZWQgaW4gYXJyYXkgYnl0ZXMuICBOb3JtYWxseSByZXR1cm4gMCwKQEAgLTE0NCw4ICsxNDUsOCBAQAogICAgICBjYXNlLCBidXQgYnl0ZXMgaG9sZHMgdGhlIGxlYXN0LXNpZ25maWNhbnQgbiBieXRlcyBvZiB0aGUgdHJ1ZSB2YWx1ZS4KICovCiBQeUFQSV9GVU5DKGludCkgX1B5TG9uZ19Bc0J5dGVBcnJheShQeUxvbmdPYmplY3QqIHYsCi0JdW5zaWduZWQgY2hhciogYnl0ZXMsIHNpemVfdCBuLAotCWludCBsaXR0bGVfZW5kaWFuLCBpbnQgaXNfc2lnbmVkKTsKKyAgICB1bnNpZ25lZCBjaGFyKiBieXRlcywgc2l6ZV90IG4sCisgICAgaW50IGxpdHRsZV9lbmRpYW4sIGludCBpc19zaWduZWQpOwogCiAKIC8qIF9QeUxvbmdfRm9ybWF0OiBDb252ZXJ0IHRoZSBsb25nIHRvIGEgc3RyaW5nIG9iamVjdCB3aXRoIGdpdmVuIGJhc2UsCkBAIC0xNTUsOCArMTU2LDkgQEAKIC8qIEZvcm1hdCB0aGUgb2JqZWN0IGJhc2VkIG9uIHRoZSBmb3JtYXRfc3BlYywgYXMgZGVmaW5lZCBpbiBQRVAgMzEwMQogICAgKEFkdmFuY2VkIFN0cmluZyBGb3JtYXR0aW5nKS4gKi8KIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5TG9uZ19Gb3JtYXRBZHZhbmNlZChQeU9iamVjdCAqb2JqLAotCQkJCQkgICAgICBQeV9VTklDT0RFICpmb3JtYXRfc3BlYywKLQkJCQkJICAgICAgUHlfc3NpemVfdCBmb3JtYXRfc3BlY19sZW4pOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kKTsKICNlbmRpZiAvKiBQeV9MSU1JVEVEX0FQSSAqLwogCiAvKiBUaGVzZSBhcmVuJ3QgcmVhbGx5IHBhcnQgb2YgdGhlIGxvbmcgb2JqZWN0LCBidXQgdGhleSdyZSBoYW5keS4gVGhlCmRpZmYgLS1naXQgYS9JbmNsdWRlL21lbW9yeW9iamVjdC5oIGIvSW5jbHVkZS9tZW1vcnlvYmplY3QuaAppbmRleCA2MmVjYmQ2Li40YWM2ZjY1IDEwMDY0NAotLS0gYS9JbmNsdWRlL21lbW9yeW9iamVjdC5oCisrKyBiL0luY2x1ZGUvbWVtb3J5b2JqZWN0LmgKQEAgLTYsNjkgKzYsNjQgQEAKIGV4dGVybiAiQyIgewogI2VuZGlmCiAKKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0RBVEEoUHlUeXBlT2JqZWN0KSBfUHlNYW5hZ2VkQnVmZmVyX1R5cGU7CisjZW5kaWYKIFB5QVBJX0RBVEEoUHlUeXBlT2JqZWN0KSBQeU1lbW9yeVZpZXdfVHlwZTsKIAogI2RlZmluZSBQeU1lbW9yeVZpZXdfQ2hlY2sob3ApIChQeV9UWVBFKG9wKSA9PSAmUHlNZW1vcnlWaWV3X1R5cGUpCiAKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKLS8qIEdldCBhIHBvaW50ZXIgdG8gdGhlIHVuZGVybHlpbmcgUHlfYnVmZmVyIG9mIGEgbWVtb3J5dmlldyBvYmplY3QuICovCisvKiBHZXQgYSBwb2ludGVyIHRvIHRoZSBtZW1vcnl2aWV3J3MgcHJpdmF0ZSBjb3B5IG9mIHRoZSBleHBvcnRlcidzIGJ1ZmZlci4gKi8KICNkZWZpbmUgUHlNZW1vcnlWaWV3X0dFVF9CVUZGRVIob3ApICgmKChQeU1lbW9yeVZpZXdPYmplY3QgKikob3ApKS0+dmlldykKLS8qIEdldCBhIHBvaW50ZXIgdG8gdGhlIFB5T2JqZWN0IGZyb20gd2hpY2ggb3JpZ2luYXRlcyBhIG1lbW9yeXZpZXcgb2JqZWN0LiAqLworLyogR2V0IGEgcG9pbnRlciB0byB0aGUgZXhwb3J0aW5nIG9iamVjdCAodGhpcyBtYXkgYmUgTlVMTCEpLiAqLwogI2RlZmluZSBQeU1lbW9yeVZpZXdfR0VUX0JBU0Uob3ApICgoKFB5TWVtb3J5Vmlld09iamVjdCAqKShvcCkpLT52aWV3Lm9iaikKICNlbmRpZgogCi0KLVB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlNZW1vcnlWaWV3X0dldENvbnRpZ3VvdXMoUHlPYmplY3QgKmJhc2UsIAotCQkJCQkJICBpbnQgYnVmZmVydHlwZSwgCi0JCQkJCQkgIGNoYXIgZm9ydCk7Ci0KLSAgICAvKiBSZXR1cm4gYSBjb250aWd1b3VzIGNodW5rIG9mIG1lbW9yeSByZXByZXNlbnRpbmcgdGhlIGJ1ZmZlcgotICAgICAgIGZyb20gYW4gb2JqZWN0IGluIGEgbWVtb3J5IHZpZXcgb2JqZWN0LiAgSWYgYSBjb3B5IGlzIG1hZGUgdGhlbiB0aGUKLSAgICAgICBiYXNlIG9iamVjdCBmb3IgdGhlIG1lbW9yeSB2aWV3IHdpbGwgYmUgYSAqbmV3KiBieXRlcyBvYmplY3QuIAotICAgICAgIAotICAgICAgIE90aGVyd2lzZSwgdGhlIGJhc2Utb2JqZWN0IHdpbGwgYmUgdGhlIG9iamVjdCBpdHNlbGYgYW5kIG5vIAotICAgICAgIGRhdGEtY29weWluZyB3aWxsIGJlIGRvbmUuIAotCi0gICAgICAgVGhlIGJ1ZmZlcnR5cGUgYXJndW1lbnQgY2FuIGJlIFB5QlVGX1JFQUQsIFB5QlVGX1dSSVRFLAotICAgICAgIFB5QlVGX1NIQURPVyB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgcmV0dXJuZWQgYnVmZmVyCi0gICAgICAgc2hvdWxkIGJlIFJFQURPTkxZLCBXUklUQUJMRSwgb3Igc2V0IHRvIHVwZGF0ZSB0aGUKLSAgICAgICBvcmlnaW5hbCBidWZmZXIgaWYgYSBjb3B5IG11c3QgYmUgbWFkZS4gIElmIGJ1ZmZlcnR5cGUgaXMKLSAgICAgICBQeUJVRl9XUklURSBhbmQgdGhlIGJ1ZmZlciBpcyBub3QgY29udGlndW91cyBhbiBlcnJvciB3aWxsCi0gICAgICAgYmUgcmFpc2VkLiAgSW4gdGhpcyBjaXJjdW1zdGFuY2UsIHRoZSB1c2VyIGNhbiB1c2UKLSAgICAgICBQeUJVRl9TSEFET1cgdG8gZW5zdXJlIHRoYXQgYSBhIHdyaXRhYmxlIHRlbXBvcmFyeQotICAgICAgIGNvbnRpZ3VvdXMgYnVmZmVyIGlzIHJldHVybmVkLiAgVGhlIGNvbnRlbnRzIG9mIHRoaXMKLSAgICAgICBjb250aWd1b3VzIGJ1ZmZlciB3aWxsIGJlIGNvcGllZCBiYWNrIGludG8gdGhlIG9yaWdpbmFsCi0gICAgICAgb2JqZWN0IGFmdGVyIHRoZSBtZW1vcnl2aWV3IG9iamVjdCBpcyBkZWxldGVkIGFzIGxvbmcgYXMKLSAgICAgICB0aGUgb3JpZ2luYWwgb2JqZWN0IGlzIHdyaXRhYmxlIGFuZCBhbGxvd3Mgc2V0dGluZyBhbgotICAgICAgIGV4Y2x1c2l2ZSB3cml0ZSBsb2NrLiBJZiB0aGlzIGlzIG5vdCBhbGxvd2VkIGJ5IHRoZQotICAgICAgIG9yaWdpbmFsIG9iamVjdCwgdGhlbiBhIEJ1ZmZlckVycm9yIGlzIHJhaXNlZC4KLSAgICAgICAKLSAgICAgICBJZiB0aGUgb2JqZWN0IGlzIG11bHRpLWRpbWVuc2lvbmFsIGFuZCBpZiBmb3J0cmFuIGlzICdGJywKLSAgICAgICB0aGUgZmlyc3QgZGltZW5zaW9uIG9mIHRoZSB1bmRlcmx5aW5nIGFycmF5IHdpbGwgdmFyeSB0aGUKLSAgICAgICBmYXN0ZXN0IGluIHRoZSBidWZmZXIuICBJZiBmb3J0cmFuIGlzICdDJywgdGhlbiB0aGUgbGFzdAotICAgICAgIGRpbWVuc2lvbiB3aWxsIHZhcnkgdGhlIGZhc3Rlc3QgKEMtc3R5bGUgY29udGlndW91cykuICBJZgotICAgICAgIGZvcnRyYW4gaXMgJ0EnLCB0aGVuIGl0IGRvZXMgbm90IG1hdHRlciBhbmQgeW91IHdpbGwgZ2V0Ci0gICAgICAgd2hhdGV2ZXIgdGhlIG9iamVjdCBkZWNpZGVzIGlzIG1vcmUgZWZmaWNpZW50LiAgCi0KLSAgICAgICBBIG5ldyByZWZlcmVuY2UgaXMgcmV0dXJuZWQgdGhhdCBtdXN0IGJlIERFQ1JFRidkIHdoZW4gZmluaXNoZWQuCi0gICAgKi8KLQogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeU1lbW9yeVZpZXdfRnJvbU9iamVjdChQeU9iamVjdCAqYmFzZSk7Ci0KK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlNZW1vcnlWaWV3X0Zyb21NZW1vcnkoY2hhciAqbWVtLCBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBmbGFncyk7CiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5TWVtb3J5Vmlld19Gcm9tQnVmZmVyKFB5X2J1ZmZlciAqaW5mbyk7Ci0gICAgLyogY3JlYXRlIG5ldyBpZiBidWZwdHIgaXMgTlVMTCAKLSAgICAgICAgd2lsbCBiZSBhIG5ldyBieXRlc29iamVjdCBpbiBiYXNlICovCiAjZW5kaWYKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlNZW1vcnlWaWV3X0dldENvbnRpZ3VvdXMoUHlPYmplY3QgKmJhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBidWZmZXJ0eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyIG9yZGVyKTsKIAogCi0vKiBUaGUgc3RydWN0IGlzIGRlY2xhcmVkIGhlcmUgc28gdGhhdCBtYWNyb3MgY2FuIHdvcmssIGJ1dCBpdCBzaG91bGRuJ3QKLSAgIGJlIGNvbnNpZGVyZWQgcHVibGljLiBEb24ndCBhY2Nlc3MgdGhvc2UgZmllbGRzIGRpcmVjdGx5LCB1c2UgdGhlIG1hY3JvcworLyogVGhlIHN0cnVjdHMgYXJlIGRlY2xhcmVkIGhlcmUgc28gdGhhdCBtYWNyb3MgY2FuIHdvcmssIGJ1dCB0aGV5IHNob3VsZG4ndAorICAgYmUgY29uc2lkZXJlZCBwdWJsaWMuIERvbid0IGFjY2VzcyB0aGVpciBmaWVsZHMgZGlyZWN0bHksIHVzZSB0aGUgbWFjcm9zCiAgICBhbmQgZnVuY3Rpb25zIGluc3RlYWQhICovCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCisjZGVmaW5lIF9QeV9NQU5BR0VEX0JVRkZFUl9SRUxFQVNFRCAgICAweDAwMSAgLyogYWNjZXNzIHRvIGV4cG9ydGVyIGJsb2NrZWQgKi8KKyNkZWZpbmUgX1B5X01BTkFHRURfQlVGRkVSX0ZSRUVfRk9STUFUIDB4MDAyICAvKiBmcmVlIGZvcm1hdCAqLwogdHlwZWRlZiBzdHJ1Y3QgewogICAgIFB5T2JqZWN0X0hFQUQKLSAgICBQeV9idWZmZXIgdmlldzsKKyAgICBpbnQgZmxhZ3M7ICAgICAgICAgIC8qIHN0YXRlIGZsYWdzICovCisgICAgUHlfc3NpemVfdCBleHBvcnRzOyAvKiBudW1iZXIgb2YgZGlyZWN0IG1lbW9yeXZpZXcgZXhwb3J0cyAqLworICAgIFB5X2J1ZmZlciBtYXN0ZXI7IC8qIHNuYXBzaG90IGJ1ZmZlciBvYnRhaW5lZCBmcm9tIHRoZSBvcmlnaW5hbCBleHBvcnRlciAqLworfSBfUHlNYW5hZ2VkQnVmZmVyT2JqZWN0OworCisKKy8qIHN0YXRpYyBzdG9yYWdlIHVzZWQgZm9yIGNhc3RpbmcgYmV0d2VlbiBmb3JtYXRzICovCisjZGVmaW5lIF9QeV9NRU1PUllWSUVXX01BWF9GT1JNQVQgMyAvKiBtdXN0IGJlID49IDMgKi8KKworLyogbWVtb3J5dmlldyBzdGF0ZSBmbGFncyAqLworI2RlZmluZSBfUHlfTUVNT1JZVklFV19SRUxFQVNFRCAgICAweDAwMSAgLyogYWNjZXNzIHRvIG1hc3RlciBidWZmZXIgYmxvY2tlZCAqLworI2RlZmluZSBfUHlfTUVNT1JZVklFV19DICAgICAgICAgICAweDAwMiAgLyogQy1jb250aWd1b3VzIGxheW91dCAqLworI2RlZmluZSBfUHlfTUVNT1JZVklFV19GT1JUUkFOICAgICAweDAwNCAgLyogRm9ydHJhbiBjb250aWd1b3VzIGxheW91dCAqLworI2RlZmluZSBfUHlfTUVNT1JZVklFV19TQ0FMQVIgICAgICAweDAwOCAgLyogc2NhbGFyOiBuZGltID0gMCAqLworI2RlZmluZSBfUHlfTUVNT1JZVklFV19QSUwgICAgICAgICAweDAxMCAgLyogUElMLXN0eWxlIGxheW91dCAqLworCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlPYmplY3RfVkFSX0hFQUQKKyAgICBfUHlNYW5hZ2VkQnVmZmVyT2JqZWN0ICptYnVmOyAvKiBtYW5hZ2VkIGJ1ZmZlciAqLworICAgIFB5X2hhc2hfdCBoYXNoOyAgICAgICAgICAgICAgIC8qIGhhc2ggdmFsdWUgZm9yIHJlYWQtb25seSB2aWV3cyAqLworICAgIGludCBmbGFnczsgICAgICAgICAgICAgICAgICAgIC8qIHN0YXRlIGZsYWdzICovCisgICAgUHlfc3NpemVfdCBleHBvcnRzOyAgICAgICAgICAgLyogbnVtYmVyIG9mIGJ1ZmZlciByZS1leHBvcnRzICovCisgICAgUHlfYnVmZmVyIHZpZXc7ICAgICAgICAgICAgICAgLyogcHJpdmF0ZSBjb3B5IG9mIHRoZSBleHBvcnRlcidzIHZpZXcgKi8KKyAgICBjaGFyIGZvcm1hdFtfUHlfTUVNT1JZVklFV19NQVhfRk9STUFUXTsgLyogdXNlZCBmb3IgY2FzdGluZyAqLworICAgIFB5X3NzaXplX3Qgb2JfYXJyYXlbMV07ICAgICAgIC8qIHNoYXBlLCBzdHJpZGVzLCBzdWJvZmZzZXRzICovCiB9IFB5TWVtb3J5Vmlld09iamVjdDsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9JbmNsdWRlL21ldGhvZG9iamVjdC5oIGIvSW5jbHVkZS9tZXRob2RvYmplY3QuaAppbmRleCA3ZTY3YzBiLi5kNzk4ZDEzIDEwMDY0NAotLS0gYS9JbmNsdWRlL21ldGhvZG9iamVjdC5oCisrKyBiL0luY2x1ZGUvbWV0aG9kb2JqZWN0LmgKQEAgLTMwLDcgKzMwLDggQEAKICNkZWZpbmUgUHlDRnVuY3Rpb25fR0VUX0ZVTkNUSU9OKGZ1bmMpIFwKICAgICAgICAgKCgoUHlDRnVuY3Rpb25PYmplY3QgKilmdW5jKSAtPiBtX21sIC0+IG1sX21ldGgpCiAjZGVmaW5lIFB5Q0Z1bmN0aW9uX0dFVF9TRUxGKGZ1bmMpIFwKLQkoKChQeUNGdW5jdGlvbk9iamVjdCAqKWZ1bmMpIC0+IG1fc2VsZikKKyAgICAgICAgKCgoUHlDRnVuY3Rpb25PYmplY3QgKilmdW5jKSAtPiBtX21sIC0+IG1sX2ZsYWdzICYgTUVUSF9TVEFUSUMgPyBcCisgICAgICAgICBOVUxMIDogKChQeUNGdW5jdGlvbk9iamVjdCAqKWZ1bmMpIC0+IG1fc2VsZikKICNkZWZpbmUgUHlDRnVuY3Rpb25fR0VUX0ZMQUdTKGZ1bmMpIFwKIAkoKChQeUNGdW5jdGlvbk9iamVjdCAqKWZ1bmMpIC0+IG1fbWwgLT4gbWxfZmxhZ3MpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL0luY2x1ZGUvbW9kdWxlb2JqZWN0LmggYi9JbmNsdWRlL21vZHVsZW9iamVjdC5oCmluZGV4IDdiMmJmMWMuLjgwMTNkZDkgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvbW9kdWxlb2JqZWN0LmgKKysrIGIvSW5jbHVkZS9tb2R1bGVvYmplY3QuaApAQCAtMTIsMTAgKzEyLDE0IEBACiAjZGVmaW5lIFB5TW9kdWxlX0NoZWNrKG9wKSBQeU9iamVjdF9UeXBlQ2hlY2sob3AsICZQeU1vZHVsZV9UeXBlKQogI2RlZmluZSBQeU1vZHVsZV9DaGVja0V4YWN0KG9wKSAoUHlfVFlQRShvcCkgPT0gJlB5TW9kdWxlX1R5cGUpCiAKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlNb2R1bGVfTmV3T2JqZWN0KAorICAgIFB5T2JqZWN0ICpuYW1lCisgICAgKTsKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlNb2R1bGVfTmV3KAogICAgIGNvbnN0IGNoYXIgKm5hbWUgICAgICAgICAgICAvKiBVVEYtOCBlbmNvZGVkIHN0cmluZyAqLwogICAgICk7CiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5TW9kdWxlX0dldERpY3QoUHlPYmplY3QgKik7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5TW9kdWxlX0dldE5hbWVPYmplY3QoUHlPYmplY3QgKik7CiBQeUFQSV9GVU5DKGNvbnN0IGNoYXIgKikgUHlNb2R1bGVfR2V0TmFtZShQeU9iamVjdCAqKTsKIFB5QVBJX0ZVTkMoY29uc3QgY2hhciAqKSBQeU1vZHVsZV9HZXRGaWxlbmFtZShQeU9iamVjdCAqKTsKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlNb2R1bGVfR2V0RmlsZW5hbWVPYmplY3QoUHlPYmplY3QgKik7CmRpZmYgLS1naXQgYS9JbmNsdWRlL25vZGUuaCBiL0luY2x1ZGUvbm9kZS5oCmluZGV4IGUyM2U3MDkuLmQxNjExOTUgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvbm9kZS5oCisrKyBiL0luY2x1ZGUvbm9kZS5oCkBAIC0yOCw2ICsyOCw3IEBACiAjZGVmaW5lIFJDSElMRChuLCBpKQkoQ0hJTEQobiwgTkNIKG4pICsgaSkpCiAjZGVmaW5lIFRZUEUobikJCSgobiktPm5fdHlwZSkKICNkZWZpbmUgU1RSKG4pCQkoKG4pLT5uX3N0cikKKyNkZWZpbmUgTElORU5PKG4pICAgICAgICgobiktPm5fbGluZW5vKQogCiAvKiBBc3NlcnQgdGhhdCB0aGUgdHlwZSBvZiBhIG5vZGUgaXMgd2hhdCB3ZSBleHBlY3QgKi8KICNkZWZpbmUgUkVRKG4sIHR5cGUpIGFzc2VydChUWVBFKG4pID09ICh0eXBlKSkKZGlmZiAtLWdpdCBhL0luY2x1ZGUvb2JqZWN0LmggYi9JbmNsdWRlL29iamVjdC5oCmluZGV4IDMxNTc2NmMuLjliMzA1NWQgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvb2JqZWN0LmgKKysrIGIvSW5jbHVkZS9vYmplY3QuaApAQCAtMTE3LDYgKzExNywzNSBAQAogI2RlZmluZSBQeV9UWVBFKG9iKSAgICAgICAgICAgICAoKChQeU9iamVjdCopKG9iKSktPm9iX3R5cGUpCiAjZGVmaW5lIFB5X1NJWkUob2IpICAgICAgICAgICAgICgoKFB5VmFyT2JqZWN0Kikob2IpKS0+b2Jfc2l6ZSkKIAorLyoqKioqKioqKioqKioqKioqKioqKiBTdHJpbmcgTGl0ZXJhbHMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qIFRoaXMgc3RydWN0dXJlIGhlbHBzIG1hbmFnaW5nIHN0YXRpYyBzdHJpbmdzLiBUaGUgYmFzaWMgdXNhZ2UgZ29lcyBsaWtlIHRoaXM6CisgICBJbnN0ZWFkIG9mIGRvaW5nCisKKyAgICAgICByID0gUHlPYmplY3RfQ2FsbE1ldGhvZChvLCAiZm9vIiwgImFyZ3MiLCAuLi4pOworCisgICBkbworCisgICAgICAgX1B5X0lERU5USUZJRVIoZm9vKTsKKyAgICAgICAuLi4KKyAgICAgICByID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChvLCAmUHlJZF9mb28sICJhcmdzIiwgLi4uKTsKKworICAgUHlJZF9mb28gaXMgYSBzdGF0aWMgdmFyaWFibGUsIGVpdGhlciBvbiBibG9jayBsZXZlbCBvciBmaWxlIGxldmVsLiBPbiBmaXJzdAorICAgdXNhZ2UsIHRoZSBzdHJpbmcgImZvbyIgaXMgaW50ZXJuZWQsIGFuZCB0aGUgc3RydWN0dXJlcyBhcmUgbGlua2VkLiBPbiBpbnRlcnByZXRlcgorICAgc2h1dGRvd24sIGFsbCBzdHJpbmdzIGFyZSByZWxlYXNlZCAodGhyb3VnaCBfUHlVbmljb2RlX0NsZWFyU3RhdGljU3RyaW5ncykuCisKKyAgIEFsdGVybmF0aXZlbHksIF9QeV9zdGF0aWNfc3RyaW5nIGFsbG93cyB0byBjaG9vc2UgdGhlIHZhcmlhYmxlIG5hbWUuCisgICBfUHlVbmljb2RlX0Zyb21JZCByZXR1cm5zIGEgYm9ycm93ZWQgcmVmZXJlbmNlIHRvIHRoZSBpbnRlcm5lZCBzdHJpbmcuCisgICBfUHlPYmplY3Rfe0dldCxTZXQsSGFzfUF0dHJJZCBhcmUgX19nZXRhdHRyX18gdmVyc2lvbnMgdXNpbmcgX1B5X0lkZW50aWZpZXIqLgorKi8KK3R5cGVkZWYgc3RydWN0IF9QeV9JZGVudGlmaWVyIHsKKyAgICBzdHJ1Y3QgX1B5X0lkZW50aWZpZXIgKm5leHQ7CisgICAgY29uc3QgY2hhciogc3RyaW5nOworICAgIFB5T2JqZWN0ICpvYmplY3Q7Cit9IF9QeV9JZGVudGlmaWVyOworCisjZGVmaW5lIF9QeV9zdGF0aWNfc3RyaW5nKHZhcm5hbWUsIHZhbHVlKSAgc3RhdGljIF9QeV9JZGVudGlmaWVyIHZhcm5hbWUgPSB7IDAsIHZhbHVlLCAwIH0KKyNkZWZpbmUgX1B5X0lERU5USUZJRVIodmFybmFtZSkgX1B5X3N0YXRpY19zdHJpbmcoUHlJZF8jI3Zhcm5hbWUsICN2YXJuYW1lKQorCiAvKgogVHlwZSBvYmplY3RzIGNvbnRhaW4gYSBzdHJpbmcgY29udGFpbmluZyB0aGUgdHlwZSBuYW1lICh0byBoZWxwIHNvbWV3aGF0CiBpbiBkZWJ1Z2dpbmcpLCB0aGUgYWxsb2NhdGlvbiBwYXJhbWV0ZXJzIChzZWUgUHlPYmplY3RfTmV3KCkgYW5kCkBAIC0xNTcsMTUgKzE4NiwxNiBAQAogICAgIFB5X3NzaXplX3QgKnNoYXBlOwogICAgIFB5X3NzaXplX3QgKnN0cmlkZXM7CiAgICAgUHlfc3NpemVfdCAqc3Vib2Zmc2V0czsKLSAgICBQeV9zc2l6ZV90IHNtYWxsdGFibGVbMl07ICAvKiBzdGF0aWMgc3RvcmUgZm9yIHNoYXBlIGFuZCBzdHJpZGVzIG9mCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9uby1kaW1lbnNpb25hbCBidWZmZXJzLiAqLwogICAgIHZvaWQgKmludGVybmFsOwogfSBQeV9idWZmZXI7CiAKIHR5cGVkZWYgaW50ICgqZ2V0YnVmZmVycHJvYykoUHlPYmplY3QgKiwgUHlfYnVmZmVyICosIGludCk7CiB0eXBlZGVmIHZvaWQgKCpyZWxlYXNlYnVmZmVycHJvYykoUHlPYmplY3QgKiwgUHlfYnVmZmVyICopOwogCi0gICAgLyogRmxhZ3MgZm9yIGdldHRpbmcgYnVmZmVycyAqLworLyogTWF4aW11bSBudW1iZXIgb2YgZGltZW5zaW9ucyAqLworI2RlZmluZSBQeUJVRl9NQVhfTkRJTSA2NAorCisvKiBGbGFncyBmb3IgZ2V0dGluZyBidWZmZXJzICovCiAjZGVmaW5lIFB5QlVGX1NJTVBMRSAwCiAjZGVmaW5lIFB5QlVGX1dSSVRBQkxFIDB4MDAwMQogLyogIHdlIHVzZWQgdG8gaW5jbHVkZSBhbiBFLCBiYWNrd2FyZHMgY29tcGF0aWJsZSBhbGlhcyAgKi8KQEAgLTQxOCw3ICs0NDgsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIGdpdmVuIG9wZXJhdG9yIChlLmcuIF9fZ2V0aXRlbV9fKS4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VlIGFkZF9vcGVyYXRvcnMoKSBpbiB0eXBlb2JqZWN0LmMgLiAqLwogICAgIFB5QnVmZmVyUHJvY3MgYXNfYnVmZmVyOwotICAgIFB5T2JqZWN0ICpodF9uYW1lLCAqaHRfc2xvdHM7CisgICAgUHlPYmplY3QgKmh0X25hbWUsICpodF9zbG90cywgKmh0X3F1YWxuYW1lOwogICAgIC8qIGhlcmUgYXJlIG9wdGlvbmFsIHVzZXIgc2xvdHMsIGZvbGxvd2VkIGJ5IHRoZSBtZW1iZXJzLiAqLwogfSBQeUhlYXBUeXBlT2JqZWN0OwogCkBAIC00NDgsMTMgKzQ3OCwxNCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqLCBQeU9iamVjdCAqKTsKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5VHlwZV9Mb29rdXAoUHlUeXBlT2JqZWN0ICosIFB5T2JqZWN0ICopOwotUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChQeU9iamVjdCAqLCBjaGFyICosIFB5T2JqZWN0ICoqKTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoUHlPYmplY3QgKiwgX1B5X0lkZW50aWZpZXIgKik7CiBQeUFQSV9GVU5DKFB5VHlwZU9iamVjdCAqKSBfUHlUeXBlX0NhbGN1bGF0ZU1ldGFjbGFzcyhQeVR5cGVPYmplY3QgKiwgUHlPYmplY3QgKik7CiAjZW5kaWYKIFB5QVBJX0ZVTkModW5zaWduZWQgaW50KSBQeVR5cGVfQ2xlYXJDYWNoZSh2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlUeXBlX01vZGlmaWVkKFB5VHlwZU9iamVjdCAqKTsKIAogLyogR2VuZXJpYyBvcGVyYXRpb25zIG9uIG9iamVjdHMgKi8KK3N0cnVjdCBfUHlfSWRlbnRpZmllcjsKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKIFB5QVBJX0ZVTkMoaW50KSBQeU9iamVjdF9QcmludChQeU9iamVjdCAqLCBGSUxFICosIGludCk7CiBQeUFQSV9GVU5DKHZvaWQpIF9QeV9CcmVha1BvaW50KHZvaWQpOwpAQCAtNDcyLDYgKzUwMywxMCBAQAogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeU9iamVjdF9HZXRBdHRyKFB5T2JqZWN0ICosIFB5T2JqZWN0ICopOwogUHlBUElfRlVOQyhpbnQpIFB5T2JqZWN0X1NldEF0dHIoUHlPYmplY3QgKiwgUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CiBQeUFQSV9GVU5DKGludCkgUHlPYmplY3RfSGFzQXR0cihQeU9iamVjdCAqLCBQeU9iamVjdCAqKTsKK1B5QVBJX0ZVTkMoaW50KSBfUHlPYmplY3RfSXNBYnN0cmFjdChQeU9iamVjdCAqKTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5T2JqZWN0X0dldEF0dHJJZChQeU9iamVjdCAqLCBzdHJ1Y3QgX1B5X0lkZW50aWZpZXIgKik7CitQeUFQSV9GVU5DKGludCkgX1B5T2JqZWN0X1NldEF0dHJJZChQeU9iamVjdCAqLCBzdHJ1Y3QgX1B5X0lkZW50aWZpZXIgKiwgUHlPYmplY3QgKik7CitQeUFQSV9GVU5DKGludCkgX1B5T2JqZWN0X0hhc0F0dHJJZChQeU9iamVjdCAqLCBzdHJ1Y3QgX1B5X0lkZW50aWZpZXIgKik7CiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICoqKSBfUHlPYmplY3RfR2V0RGljdFB0cihQeU9iamVjdCAqKTsKICNlbmRpZgpAQCAtNDgyLDYgKzUxNyw4IEBACiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5T2JqZWN0X0dlbmVyaWNHZXRBdHRyKFB5T2JqZWN0ICosIFB5T2JqZWN0ICopOwogUHlBUElfRlVOQyhpbnQpIFB5T2JqZWN0X0dlbmVyaWNTZXRBdHRyKFB5T2JqZWN0ICosCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5T2JqZWN0X0dlbmVyaWNHZXREaWN0KFB5T2JqZWN0ICosIHZvaWQgKik7CitQeUFQSV9GVU5DKGludCkgUHlPYmplY3RfR2VuZXJpY1NldERpY3QoUHlPYmplY3QgKiwgUHlPYmplY3QgKiwgdm9pZCAqKTsKIFB5QVBJX0ZVTkMoUHlfaGFzaF90KSBQeU9iamVjdF9IYXNoKFB5T2JqZWN0ICopOwogUHlBUElfRlVOQyhQeV9oYXNoX3QpIFB5T2JqZWN0X0hhc2hOb3RJbXBsZW1lbnRlZChQeU9iamVjdCAqKTsKIFB5QVBJX0ZVTkMoaW50KSBQeU9iamVjdF9Jc1RydWUoUHlPYmplY3QgKik7CkBAIC01MTUsNiArNTUyLDcgQEAKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKIFB5QVBJX0ZVTkMoUHlfaGFzaF90KSBfUHlfSGFzaERvdWJsZShkb3VibGUpOwogUHlBUElfRlVOQyhQeV9oYXNoX3QpIF9QeV9IYXNoUG9pbnRlcih2b2lkKik7CitQeUFQSV9GVU5DKFB5X2hhc2hfdCkgX1B5X0hhc2hCeXRlcyh1bnNpZ25lZCBjaGFyKiwgUHlfc3NpemVfdCk7CiAjZW5kaWYKIAogdHlwZWRlZiBzdHJ1Y3QgewpAQCAtODAzLDYgKzg0MSwxMCBAQAogUHlBUElfREFUQShQeU9iamVjdCkgX1B5X05vdEltcGxlbWVudGVkU3RydWN0OyAvKiBEb24ndCB1c2UgdGhpcyBkaXJlY3RseSAqLwogI2RlZmluZSBQeV9Ob3RJbXBsZW1lbnRlZCAoJl9QeV9Ob3RJbXBsZW1lbnRlZFN0cnVjdCkKIAorLyogTWFjcm8gZm9yIHJldHVybmluZyBQeV9Ob3RJbXBsZW1lbnRlZCBmcm9tIGEgZnVuY3Rpb24gKi8KKyNkZWZpbmUgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEIFwKKyAgICByZXR1cm4gUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKSwgUHlfTm90SW1wbGVtZW50ZWQKKwogLyogUmljaCBjb21wYXJpc29uIG9wY29kZXMgKi8KICNkZWZpbmUgUHlfTFQgMAogI2RlZmluZSBQeV9MRSAxCmRpZmYgLS1naXQgYS9JbmNsdWRlL29wY29kZS5oIGIvSW5jbHVkZS9vcGNvZGUuaAppbmRleCA2YjEwOTQ0Li5hOTAxODRkIDEwMDY0NAotLS0gYS9JbmNsdWRlL29wY29kZS5oCisrKyBiL0luY2x1ZGUvb3Bjb2RlLmgKQEAgLTcsMTE3ICs3LDExNyBAQAogCiAvKiBJbnN0cnVjdGlvbiBvcGNvZGVzIGZvciBjb21waWxlZCBjb2RlICovCiAKLSNkZWZpbmUgU1RPUF9DT0RFCTAKLSNkZWZpbmUgUE9QX1RPUAkJMQotI2RlZmluZSBST1RfVFdPCQkyCi0jZGVmaW5lIFJPVF9USFJFRQkzCi0jZGVmaW5lIERVUF9UT1AJCTQKKyNkZWZpbmUgUE9QX1RPUCAgICAgICAgIDEKKyNkZWZpbmUgUk9UX1RXTyAgICAgICAgIDIKKyNkZWZpbmUgUk9UX1RIUkVFICAgICAgIDMKKyNkZWZpbmUgRFVQX1RPUCAgICAgICAgIDQKICNkZWZpbmUgRFVQX1RPUF9UV08gICAgIDUKLSNkZWZpbmUgTk9QCQk5CisjZGVmaW5lIE5PUCAgICAgICAgICAgICA5CiAKLSNkZWZpbmUgVU5BUllfUE9TSVRJVkUJMTAKLSNkZWZpbmUgVU5BUllfTkVHQVRJVkUJMTEKLSNkZWZpbmUgVU5BUllfTk9UCTEyCisjZGVmaW5lIFVOQVJZX1BPU0lUSVZFICAxMAorI2RlZmluZSBVTkFSWV9ORUdBVElWRSAgMTEKKyNkZWZpbmUgVU5BUllfTk9UICAgICAgIDEyCiAKLSNkZWZpbmUgVU5BUllfSU5WRVJUCTE1CisjZGVmaW5lIFVOQVJZX0lOVkVSVCAgICAxNQogCi0jZGVmaW5lIEJJTkFSWV9QT1dFUgkxOQorI2RlZmluZSBCSU5BUllfUE9XRVIgICAgMTkKIAotI2RlZmluZSBCSU5BUllfTVVMVElQTFkJMjAKKyNkZWZpbmUgQklOQVJZX01VTFRJUExZIDIwCiAKLSNkZWZpbmUgQklOQVJZX01PRFVMTwkyMgotI2RlZmluZSBCSU5BUllfQURECTIzCi0jZGVmaW5lIEJJTkFSWV9TVUJUUkFDVAkyNAotI2RlZmluZSBCSU5BUllfU1VCU0NSCTI1CisjZGVmaW5lIEJJTkFSWV9NT0RVTE8gICAyMgorI2RlZmluZSBCSU5BUllfQUREICAgICAgMjMKKyNkZWZpbmUgQklOQVJZX1NVQlRSQUNUIDI0CisjZGVmaW5lIEJJTkFSWV9TVUJTQ1IgICAyNQogI2RlZmluZSBCSU5BUllfRkxPT1JfRElWSURFIDI2CiAjZGVmaW5lIEJJTkFSWV9UUlVFX0RJVklERSAyNwogI2RlZmluZSBJTlBMQUNFX0ZMT09SX0RJVklERSAyOAogI2RlZmluZSBJTlBMQUNFX1RSVUVfRElWSURFIDI5CiAKLSNkZWZpbmUgU1RPUkVfTUFQCTU0Ci0jZGVmaW5lIElOUExBQ0VfQURECTU1Ci0jZGVmaW5lIElOUExBQ0VfU1VCVFJBQ1QJNTYKLSNkZWZpbmUgSU5QTEFDRV9NVUxUSVBMWQk1NworI2RlZmluZSBTVE9SRV9NQVAgICAgICAgNTQKKyNkZWZpbmUgSU5QTEFDRV9BREQgICAgIDU1CisjZGVmaW5lIElOUExBQ0VfU1VCVFJBQ1QgICAgICAgIDU2CisjZGVmaW5lIElOUExBQ0VfTVVMVElQTFkgICAgICAgIDU3CiAKLSNkZWZpbmUgSU5QTEFDRV9NT0RVTE8JNTkKLSNkZWZpbmUgU1RPUkVfU1VCU0NSCTYwCi0jZGVmaW5lIERFTEVURV9TVUJTQ1IJNjEKKyNkZWZpbmUgSU5QTEFDRV9NT0RVTE8gIDU5CisjZGVmaW5lIFNUT1JFX1NVQlNDUiAgICA2MAorI2RlZmluZSBERUxFVEVfU1VCU0NSICAgNjEKIAotI2RlZmluZSBCSU5BUllfTFNISUZUCTYyCi0jZGVmaW5lIEJJTkFSWV9SU0hJRlQJNjMKLSNkZWZpbmUgQklOQVJZX0FORAk2NAotI2RlZmluZSBCSU5BUllfWE9SCTY1Ci0jZGVmaW5lIEJJTkFSWV9PUgk2NgotI2RlZmluZSBJTlBMQUNFX1BPV0VSCTY3Ci0jZGVmaW5lIEdFVF9JVEVSCTY4Ci0jZGVmaW5lIFNUT1JFX0xPQ0FMUwk2OQotI2RlZmluZSBQUklOVF9FWFBSCTcwCisjZGVmaW5lIEJJTkFSWV9MU0hJRlQgICA2MgorI2RlZmluZSBCSU5BUllfUlNISUZUICAgNjMKKyNkZWZpbmUgQklOQVJZX0FORCAgICAgIDY0CisjZGVmaW5lIEJJTkFSWV9YT1IgICAgICA2NQorI2RlZmluZSBCSU5BUllfT1IgICAgICAgNjYKKyNkZWZpbmUgSU5QTEFDRV9QT1dFUiAgIDY3CisjZGVmaW5lIEdFVF9JVEVSICAgICAgICA2OAorI2RlZmluZSBTVE9SRV9MT0NBTFMgICAgNjkKKyNkZWZpbmUgUFJJTlRfRVhQUiAgICAgIDcwCiAjZGVmaW5lIExPQURfQlVJTERfQ0xBU1MgNzEKKyNkZWZpbmUgWUlFTERfRlJPTSAgICAgIDcyCiAKLSNkZWZpbmUgSU5QTEFDRV9MU0hJRlQJNzUKLSNkZWZpbmUgSU5QTEFDRV9SU0hJRlQJNzYKLSNkZWZpbmUgSU5QTEFDRV9BTkQJNzcKLSNkZWZpbmUgSU5QTEFDRV9YT1IJNzgKLSNkZWZpbmUgSU5QTEFDRV9PUgk3OQotI2RlZmluZSBCUkVBS19MT09QCTgwCisjZGVmaW5lIElOUExBQ0VfTFNISUZUICA3NQorI2RlZmluZSBJTlBMQUNFX1JTSElGVCAgNzYKKyNkZWZpbmUgSU5QTEFDRV9BTkQgICAgIDc3CisjZGVmaW5lIElOUExBQ0VfWE9SICAgICA3OAorI2RlZmluZSBJTlBMQUNFX09SICAgICAgNzkKKyNkZWZpbmUgQlJFQUtfTE9PUCAgICAgIDgwCiAjZGVmaW5lIFdJVEhfQ0xFQU5VUCAgICA4MQogCi0jZGVmaW5lIFJFVFVSTl9WQUxVRQk4MwotI2RlZmluZSBJTVBPUlRfU1RBUgk4NAorI2RlZmluZSBSRVRVUk5fVkFMVUUgICAgODMKKyNkZWZpbmUgSU1QT1JUX1NUQVIgICAgIDg0CiAKLSNkZWZpbmUgWUlFTERfVkFMVUUJODYKLSNkZWZpbmUgUE9QX0JMT0NLCTg3Ci0jZGVmaW5lIEVORF9GSU5BTExZCTg4Ci0jZGVmaW5lIFBPUF9FWENFUFQJODkKKyNkZWZpbmUgWUlFTERfVkFMVUUgICAgIDg2CisjZGVmaW5lIFBPUF9CTE9DSyAgICAgICA4NworI2RlZmluZSBFTkRfRklOQUxMWSAgICAgODgKKyNkZWZpbmUgUE9QX0VYQ0VQVCAgICAgIDg5CiAKLSNkZWZpbmUgSEFWRV9BUkdVTUVOVAk5MAkvKiBPcGNvZGVzIGZyb20gaGVyZSBoYXZlIGFuIGFyZ3VtZW50OiAqLworI2RlZmluZSBIQVZFX0FSR1VNRU5UICAgOTAgICAgICAvKiBPcGNvZGVzIGZyb20gaGVyZSBoYXZlIGFuIGFyZ3VtZW50OiAqLwogCi0jZGVmaW5lIFNUT1JFX05BTUUJOTAJLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCi0jZGVmaW5lIERFTEVURV9OQU1FCTkxCS8qICIiICovCi0jZGVmaW5lIFVOUEFDS19TRVFVRU5DRQk5MgkvKiBOdW1iZXIgb2Ygc2VxdWVuY2UgaXRlbXMgKi8KLSNkZWZpbmUgRk9SX0lURVIJOTMKKyNkZWZpbmUgU1RPUkVfTkFNRSAgICAgIDkwICAgICAgLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCisjZGVmaW5lIERFTEVURV9OQU1FICAgICA5MSAgICAgIC8qICIiICovCisjZGVmaW5lIFVOUEFDS19TRVFVRU5DRSA5MiAgICAgIC8qIE51bWJlciBvZiBzZXF1ZW5jZSBpdGVtcyAqLworI2RlZmluZSBGT1JfSVRFUiAgICAgICAgOTMKICNkZWZpbmUgVU5QQUNLX0VYICAgICAgIDk0ICAgICAgLyogTnVtIGl0ZW1zIGJlZm9yZSB2YXJpYWJsZSBwYXJ0ICsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKE51bSBpdGVtcyBhZnRlciB2YXJpYWJsZSBwYXJ0IDw8IDgpICovCiAKLSNkZWZpbmUgU1RPUkVfQVRUUgk5NQkvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KLSNkZWZpbmUgREVMRVRFX0FUVFIJOTYJLyogIiIgKi8KLSNkZWZpbmUgU1RPUkVfR0xPQkFMCTk3CS8qICIiICovCi0jZGVmaW5lIERFTEVURV9HTE9CQUwJOTgJLyogIiIgKi8KKyNkZWZpbmUgU1RPUkVfQVRUUiAgICAgIDk1ICAgICAgLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCisjZGVmaW5lIERFTEVURV9BVFRSICAgICA5NiAgICAgIC8qICIiICovCisjZGVmaW5lIFNUT1JFX0dMT0JBTCAgICA5NyAgICAgIC8qICIiICovCisjZGVmaW5lIERFTEVURV9HTE9CQUwgICA5OCAgICAgIC8qICIiICovCiAKLSNkZWZpbmUgTE9BRF9DT05TVAkxMDAJLyogSW5kZXggaW4gY29uc3QgbGlzdCAqLwotI2RlZmluZSBMT0FEX05BTUUJMTAxCS8qIEluZGV4IGluIG5hbWUgbGlzdCAqLwotI2RlZmluZSBCVUlMRF9UVVBMRQkxMDIJLyogTnVtYmVyIG9mIHR1cGxlIGl0ZW1zICovCi0jZGVmaW5lIEJVSUxEX0xJU1QJMTAzCS8qIE51bWJlciBvZiBsaXN0IGl0ZW1zICovCi0jZGVmaW5lIEJVSUxEX1NFVAkxMDQgICAgIC8qIE51bWJlciBvZiBzZXQgaXRlbXMgKi8KLSNkZWZpbmUgQlVJTERfTUFQCTEwNQkvKiBBbHdheXMgemVybyBmb3Igbm93ICovCi0jZGVmaW5lIExPQURfQVRUUgkxMDYJLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCi0jZGVmaW5lIENPTVBBUkVfT1AJMTA3CS8qIENvbXBhcmlzb24gb3BlcmF0b3IgKi8KLSNkZWZpbmUgSU1QT1JUX05BTUUJMTA4CS8qIEluZGV4IGluIG5hbWUgbGlzdCAqLwotI2RlZmluZSBJTVBPUlRfRlJPTQkxMDkJLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCisjZGVmaW5lIExPQURfQ09OU1QgICAgICAxMDAgICAgIC8qIEluZGV4IGluIGNvbnN0IGxpc3QgKi8KKyNkZWZpbmUgTE9BRF9OQU1FICAgICAgIDEwMSAgICAgLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCisjZGVmaW5lIEJVSUxEX1RVUExFICAgICAxMDIgICAgIC8qIE51bWJlciBvZiB0dXBsZSBpdGVtcyAqLworI2RlZmluZSBCVUlMRF9MSVNUICAgICAgMTAzICAgICAvKiBOdW1iZXIgb2YgbGlzdCBpdGVtcyAqLworI2RlZmluZSBCVUlMRF9TRVQgICAgICAgMTA0ICAgICAvKiBOdW1iZXIgb2Ygc2V0IGl0ZW1zICovCisjZGVmaW5lIEJVSUxEX01BUCAgICAgICAxMDUgICAgIC8qIEFsd2F5cyB6ZXJvIGZvciBub3cgKi8KKyNkZWZpbmUgTE9BRF9BVFRSICAgICAgIDEwNiAgICAgLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCisjZGVmaW5lIENPTVBBUkVfT1AgICAgICAxMDcgICAgIC8qIENvbXBhcmlzb24gb3BlcmF0b3IgKi8KKyNkZWZpbmUgSU1QT1JUX05BTUUgICAgIDEwOCAgICAgLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCisjZGVmaW5lIElNUE9SVF9GUk9NICAgICAxMDkgICAgIC8qIEluZGV4IGluIG5hbWUgbGlzdCAqLwogCi0jZGVmaW5lIEpVTVBfRk9SV0FSRAkxMTAJLyogTnVtYmVyIG9mIGJ5dGVzIHRvIHNraXAgKi8KLSNkZWZpbmUgSlVNUF9JRl9GQUxTRV9PUl9QT1AgMTExCS8qIFRhcmdldCBieXRlIG9mZnNldCBmcm9tIGJlZ2lubmluZyBvZiBjb2RlICovCi0jZGVmaW5lIEpVTVBfSUZfVFJVRV9PUl9QT1AgMTEyCS8qICIiICovCi0jZGVmaW5lIEpVTVBfQUJTT0xVVEUJMTEzCS8qICIiICovCi0jZGVmaW5lIFBPUF9KVU1QX0lGX0ZBTFNFIDExNAkvKiAiIiAqLwotI2RlZmluZSBQT1BfSlVNUF9JRl9UUlVFIDExNQkvKiAiIiAqLworI2RlZmluZSBKVU1QX0ZPUldBUkQgICAgMTEwICAgICAvKiBOdW1iZXIgb2YgYnl0ZXMgdG8gc2tpcCAqLworI2RlZmluZSBKVU1QX0lGX0ZBTFNFX09SX1BPUCAxMTEgICAgICAgIC8qIFRhcmdldCBieXRlIG9mZnNldCBmcm9tIGJlZ2lubmluZyBvZiBjb2RlICovCisjZGVmaW5lIEpVTVBfSUZfVFJVRV9PUl9QT1AgMTEyIC8qICIiICovCisjZGVmaW5lIEpVTVBfQUJTT0xVVEUgICAxMTMgICAgIC8qICIiICovCisjZGVmaW5lIFBPUF9KVU1QX0lGX0ZBTFNFIDExNCAgIC8qICIiICovCisjZGVmaW5lIFBPUF9KVU1QX0lGX1RSVUUgMTE1ICAgIC8qICIiICovCiAKLSNkZWZpbmUgTE9BRF9HTE9CQUwJMTE2CS8qIEluZGV4IGluIG5hbWUgbGlzdCAqLworI2RlZmluZSBMT0FEX0dMT0JBTCAgICAgMTE2ICAgICAvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KIAotI2RlZmluZSBDT05USU5VRV9MT09QCTExOQkvKiBTdGFydCBvZiBsb29wIChhYnNvbHV0ZSkgKi8KLSNkZWZpbmUgU0VUVVBfTE9PUAkxMjAJLyogVGFyZ2V0IGFkZHJlc3MgKHJlbGF0aXZlKSAqLwotI2RlZmluZSBTRVRVUF9FWENFUFQJMTIxCS8qICIiICovCi0jZGVmaW5lIFNFVFVQX0ZJTkFMTFkJMTIyCS8qICIiICovCisjZGVmaW5lIENPTlRJTlVFX0xPT1AgICAxMTkgICAgIC8qIFN0YXJ0IG9mIGxvb3AgKGFic29sdXRlKSAqLworI2RlZmluZSBTRVRVUF9MT09QICAgICAgMTIwICAgICAvKiBUYXJnZXQgYWRkcmVzcyAocmVsYXRpdmUpICovCisjZGVmaW5lIFNFVFVQX0VYQ0VQVCAgICAxMjEgICAgIC8qICIiICovCisjZGVmaW5lIFNFVFVQX0ZJTkFMTFkgICAxMjIgICAgIC8qICIiICovCiAKLSNkZWZpbmUgTE9BRF9GQVNUCTEyNAkvKiBMb2NhbCB2YXJpYWJsZSBudW1iZXIgKi8KLSNkZWZpbmUgU1RPUkVfRkFTVAkxMjUJLyogTG9jYWwgdmFyaWFibGUgbnVtYmVyICovCi0jZGVmaW5lIERFTEVURV9GQVNUCTEyNgkvKiBMb2NhbCB2YXJpYWJsZSBudW1iZXIgKi8KKyNkZWZpbmUgTE9BRF9GQVNUICAgICAgIDEyNCAgICAgLyogTG9jYWwgdmFyaWFibGUgbnVtYmVyICovCisjZGVmaW5lIFNUT1JFX0ZBU1QgICAgICAxMjUgICAgIC8qIExvY2FsIHZhcmlhYmxlIG51bWJlciAqLworI2RlZmluZSBERUxFVEVfRkFTVCAgICAgMTI2ICAgICAvKiBMb2NhbCB2YXJpYWJsZSBudW1iZXIgKi8KIAotI2RlZmluZSBSQUlTRV9WQVJBUkdTCTEzMAkvKiBOdW1iZXIgb2YgcmFpc2UgYXJndW1lbnRzICgxLCAyIG9yIDMpICovCisjZGVmaW5lIFJBSVNFX1ZBUkFSR1MgICAxMzAgICAgIC8qIE51bWJlciBvZiByYWlzZSBhcmd1bWVudHMgKDEsIDIgb3IgMykgKi8KIC8qIENBTExfRlVOQ1RJT05fWFhYIG9wY29kZXMgZGVmaW5lZCBiZWxvdyBkZXBlbmQgb24gdGhpcyBkZWZpbml0aW9uICovCi0jZGVmaW5lIENBTExfRlVOQ1RJT04JMTMxCS8qICNhcmdzICsgKCNrd2FyZ3M8PDgpICovCi0jZGVmaW5lIE1BS0VfRlVOQ1RJT04JMTMyCS8qICNkZWZhdWx0cyArICNrd2RlZmF1bHRzPDw4ICsgI2Fubm90YXRpb25zPDwxNiAqLwotI2RlZmluZSBCVUlMRF9TTElDRSAJMTMzCS8qIE51bWJlciBvZiBpdGVtcyAqLworI2RlZmluZSBDQUxMX0ZVTkNUSU9OICAgMTMxICAgICAvKiAjYXJncyArICgja3dhcmdzPDw4KSAqLworI2RlZmluZSBNQUtFX0ZVTkNUSU9OICAgMTMyICAgICAvKiAjZGVmYXVsdHMgKyAja3dkZWZhdWx0czw8OCArICNhbm5vdGF0aW9uczw8MTYgKi8KKyNkZWZpbmUgQlVJTERfU0xJQ0UgICAgIDEzMyAgICAgLyogTnVtYmVyIG9mIGl0ZW1zICovCiAKICNkZWZpbmUgTUFLRV9DTE9TVVJFICAgIDEzNCAgICAgLyogc2FtZSBhcyBNQUtFX0ZVTkNUSU9OICovCiAjZGVmaW5lIExPQURfQ0xPU1VSRSAgICAxMzUgICAgIC8qIExvYWQgZnJlZSB2YXJpYWJsZSBmcm9tIGNsb3N1cmUgKi8KQEAgLTEyNyw5ICsxMjcsOSBAQAogCiAvKiBUaGUgbmV4dCAzIG9wY29kZXMgbXVzdCBiZSBjb250aWd1b3VzIGFuZCBzYXRpc2Z5CiAgICAoQ0FMTF9GVU5DVElPTl9WQVIgLSBDQUxMX0ZVTkNUSU9OKSAmIDMgPT0gMSAgKi8KLSNkZWZpbmUgQ0FMTF9GVU5DVElPTl9WQVIgICAgICAgICAgMTQwCS8qICNhcmdzICsgKCNrd2FyZ3M8PDgpICovCi0jZGVmaW5lIENBTExfRlVOQ1RJT05fS1cgICAgICAgICAgIDE0MQkvKiAjYXJncyArICgja3dhcmdzPDw4KSAqLwotI2RlZmluZSBDQUxMX0ZVTkNUSU9OX1ZBUl9LVyAgICAgICAxNDIJLyogI2FyZ3MgKyAoI2t3YXJnczw8OCkgKi8KKyNkZWZpbmUgQ0FMTF9GVU5DVElPTl9WQVIgICAgICAgICAgMTQwICAvKiAjYXJncyArICgja3dhcmdzPDw4KSAqLworI2RlZmluZSBDQUxMX0ZVTkNUSU9OX0tXICAgICAgICAgICAxNDEgIC8qICNhcmdzICsgKCNrd2FyZ3M8PDgpICovCisjZGVmaW5lIENBTExfRlVOQ1RJT05fVkFSX0tXICAgICAgIDE0MiAgLyogI2FyZ3MgKyAoI2t3YXJnczw8OCkgKi8KIAogI2RlZmluZSBTRVRVUF9XSVRIIDE0MwogCkBAIC0xNDksNyArMTQ5LDcgQEAKIAogCiBlbnVtIGNtcF9vcCB7UHlDbXBfTFQ9UHlfTFQsIFB5Q21wX0xFPVB5X0xFLCBQeUNtcF9FUT1QeV9FUSwgUHlDbXBfTkU9UHlfTkUsIFB5Q21wX0dUPVB5X0dULCBQeUNtcF9HRT1QeV9HRSwKLQkgICAgIFB5Q21wX0lOLCBQeUNtcF9OT1RfSU4sIFB5Q21wX0lTLCBQeUNtcF9JU19OT1QsIFB5Q21wX0VYQ19NQVRDSCwgUHlDbXBfQkFEfTsKKyAgICAgICAgICAgICBQeUNtcF9JTiwgUHlDbXBfTk9UX0lOLCBQeUNtcF9JUywgUHlDbXBfSVNfTk9ULCBQeUNtcF9FWENfTUFUQ0gsIFB5Q21wX0JBRH07CiAKICNkZWZpbmUgSEFTX0FSRyhvcCkgKChvcCkgPj0gSEFWRV9BUkdVTUVOVCkKIApkaWZmIC0tZ2l0IGEvSW5jbHVkZS9wYXJzZXRvay5oIGIvSW5jbHVkZS9wYXJzZXRvay5oCmluZGV4IDRiNzY5NGYuLjkxMWRmYzEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvcGFyc2V0b2suaAorKysgYi9JbmNsdWRlL3BhcnNldG9rLmgKQEAgLTksNyArOSwxMCBAQAogCiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgaW50IGVycm9yOwotICAgIGNvbnN0IGNoYXIgKmZpbGVuYW1lOyAgICAgICAvKiBkZWNvZGVkIGZyb20gdGhlIGZpbGVzeXN0ZW0gZW5jb2RpbmcgKi8KKyNpZm5kZWYgUEdFTgorICAgIC8qIFRoZSBmaWxlbmFtZSBpcyB1c2VsZXNzIGZvciBwZ2VuLCBzZWUgY29tbWVudCBpbiB0b2tfc3RhdGUgc3RydWN0dXJlICovCisgICAgUHlPYmplY3QgKmZpbGVuYW1lOworI2VuZGlmCiAgICAgaW50IGxpbmVubzsKICAgICBpbnQgb2Zmc2V0OwogICAgIGNoYXIgKnRleHQ7ICAgICAgICAgICAgICAgICAvKiBVVEYtOC1lbmNvZGVkIHN0cmluZyAqLwpAQCAtNjYsOCArNjksMTAgQEAKICAgICBwZXJyZGV0YWlsICplcnJfcmV0LAogICAgIGludCAqZmxhZ3MpOwogCi0vKiBOb3RlIHRoYXQgaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIGRlZmluZWQgaW4gcHl0aG9ucnVuLmMgbm90IHBhcnNldG9rLmMuICovCisvKiBOb3RlIHRoYXQgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgYXJlIGRlZmluZWQgaW4gcHl0aG9ucnVuLmMsCisgICBub3QgaW4gcGFyc2V0b2suYyAqLwogUHlBUElfRlVOQyh2b2lkKSBQeVBhcnNlcl9TZXRFcnJvcihwZXJyZGV0YWlsICopOworUHlBUElfRlVOQyh2b2lkKSBQeVBhcnNlcl9DbGVhckVycm9yKHBlcnJkZXRhaWwgKik7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9wYXRjaGxldmVsLmggYi9JbmNsdWRlL3BhdGNobGV2ZWwuaAppbmRleCAzMzQ0NzhkLi5lMjQ3ODc1IDEwMDY0NAotLS0gYS9JbmNsdWRlL3BhdGNobGV2ZWwuaAorKysgYi9JbmNsdWRlL3BhdGNobGV2ZWwuaApAQCAtMTcsMTkgKzE3LDE1IEBACiAvKiBWZXJzaW9uIHBhcnNlZCBvdXQgaW50byBudW1lcmljIHZhbHVlcyAqLwogLyotLXN0YXJ0IGNvbnN0YW50cy0tKi8KICNkZWZpbmUgUFlfTUFKT1JfVkVSU0lPTgkzCi0jZGVmaW5lIFBZX01JTk9SX1ZFUlNJT04JMgotI2RlZmluZSBQWV9NSUNST19WRVJTSU9OCTMKLSNkZWZpbmUgUFlfUkVMRUFTRV9MRVZFTAlQWV9SRUxFQVNFX0xFVkVMX0dBTU1BCisjZGVmaW5lIFBZX01JTk9SX1ZFUlNJT04JMworI2RlZmluZSBQWV9NSUNST19WRVJTSU9OCTAKKyNkZWZpbmUgUFlfUkVMRUFTRV9MRVZFTAlQWV9SRUxFQVNFX0xFVkVMX0FMUEhBCiAjZGVmaW5lIFBZX1JFTEVBU0VfU0VSSUFMCTEKIAogLyogVmVyc2lvbiBhcyBhIHN0cmluZyAqLwotI2RlZmluZSBQWV9WRVJTSU9OICAgICAgCSIzLjIuM3JjMSIKKyNkZWZpbmUgUFlfVkVSU0lPTiAgICAgIAkiMy4zLjBhMSsiCiAvKi0tZW5kIGNvbnN0YW50cy0tKi8KIAotLyogU3VidmVyc2lvbiBSZXZpc2lvbiBudW1iZXIgb2YgdGhpcyBmaWxlIChub3Qgb2YgdGhlIHJlcG9zaXRvcnkpLiBFbXB0eQotICAgc2luY2UgTWVyY3VyaWFsIG1pZ3JhdGlvbi4gKi8KLSNkZWZpbmUgUFlfUEFUQ0hMRVZFTF9SRVZJU0lPTiAgIiIKLQogLyogVmVyc2lvbiBhcyBhIHNpbmdsZSA0LWJ5dGUgaGV4IG51bWJlciwgZS5nLiAweDAxMDUwMkIyID09IDEuNS4yYjIuCiAgICBVc2UgdGhpcyBmb3IgbnVtZXJpYyBjb21wYXJpc29ucywgZS5nLiAjaWYgUFlfVkVSU0lPTl9IRVggPj0gLi4uICovCiAjZGVmaW5lIFBZX1ZFUlNJT05fSEVYICgoUFlfTUFKT1JfVkVSU0lPTiA8PCAyNCkgfCBcCmRpZmYgLS1naXQgYS9JbmNsdWRlL3B5X2N1cnNlcy5oIGIvSW5jbHVkZS9weV9jdXJzZXMuaAppbmRleCBhODkxYzQyLi5mMmMwOGY2IDEwMDY0NAotLS0gYS9JbmNsdWRlL3B5X2N1cnNlcy5oCisrKyBiL0luY2x1ZGUvcHlfY3Vyc2VzLmgKQEAgLTc2LDYgKzc2LDcgQEAKIHR5cGVkZWYgc3RydWN0IHsKIAlQeU9iamVjdF9IRUFECiAJV0lORE9XICp3aW47CisJY2hhciAqZW5jb2Rpbmc7CiB9IFB5Q3Vyc2VzV2luZG93T2JqZWN0OwogCiAjZGVmaW5lIFB5Q3Vyc2VzV2luZG93X0NoZWNrKHYpCSAoUHlfVFlQRSh2KSA9PSAmUHlDdXJzZXNXaW5kb3dfVHlwZSkKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHlkZWJ1Zy5oIGIvSW5jbHVkZS9weWRlYnVnLmgKaW5kZXggZTIzY2JkYy4uOTdjMmY4YyAxMDA2NDQKLS0tIGEvSW5jbHVkZS9weWRlYnVnLmgKKysrIGIvSW5jbHVkZS9weWRlYnVnLmgKQEAgLTE2LDcgKzE2LDYgQEAKIFB5QVBJX0RBVEEoaW50KSBQeV9Vc2VDbGFzc0V4Y2VwdGlvbnNGbGFnOwogUHlBUElfREFUQShpbnQpIFB5X0Zyb3plbkZsYWc7CiBQeUFQSV9EQVRBKGludCkgUHlfSWdub3JlRW52aXJvbm1lbnRGbGFnOwotUHlBUElfREFUQShpbnQpIFB5X0RpdmlzaW9uV2FybmluZ0ZsYWc7CiBQeUFQSV9EQVRBKGludCkgUHlfRG9udFdyaXRlQnl0ZWNvZGVGbGFnOwogUHlBUElfREFUQShpbnQpIFB5X05vVXNlclNpdGVEaXJlY3Rvcnk7CiBQeUFQSV9EQVRBKGludCkgUHlfVW5idWZmZXJlZFN0ZGlvRmxhZzsKQEAgLTI3LDggKzI2LDYgQEAKICAgIFBZVEhPTlBBVEggYW5kIFBZVEhPTkhPTUUgZnJvbSB0aGUgZW52aXJvbm1lbnQgKi8KICNkZWZpbmUgUHlfR0VURU5WKHMpIChQeV9JZ25vcmVFbnZpcm9ubWVudEZsYWcgPyBOVUxMIDogZ2V0ZW52KHMpKQogCi1QeUFQSV9GVU5DKHZvaWQpIFB5X0ZhdGFsRXJyb3IoY29uc3QgY2hhciAqbWVzc2FnZSk7Ci0KICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9JbmNsdWRlL3B5ZXJyb3JzLmggYi9JbmNsdWRlL3B5ZXJyb3JzLmgKaW5kZXggNGJiM2MwMS4uMWU0MmViYiAxMDA2NDQKLS0tIGEvSW5jbHVkZS9weWVycm9ycy5oCisrKyBiL0luY2x1ZGUvcHllcnJvcnMuaApAQCAtNDUsMTggKzQ1LDIzIEBACiAgICAgUHlPYmplY3QgKm15ZXJybm87CiAgICAgUHlPYmplY3QgKnN0cmVycm9yOwogICAgIFB5T2JqZWN0ICpmaWxlbmFtZTsKLX0gUHlFbnZpcm9ubWVudEVycm9yT2JqZWN0OwotCiAjaWZkZWYgTVNfV0lORE9XUworICAgIFB5T2JqZWN0ICp3aW5lcnJvcjsKKyNlbmRpZgorICAgIFB5X3NzaXplX3Qgd3JpdHRlbjsgICAvKiBvbmx5IGZvciBCbG9ja2luZ0lPRXJyb3IsIC0xIG90aGVyd2lzZSAqLworfSBQeU9TRXJyb3JPYmplY3Q7CisKIHR5cGVkZWYgc3RydWN0IHsKICAgICBQeUV4Y2VwdGlvbl9IRUFECi0gICAgUHlPYmplY3QgKm15ZXJybm87Ci0gICAgUHlPYmplY3QgKnN0cmVycm9yOwotICAgIFB5T2JqZWN0ICpmaWxlbmFtZTsKLSAgICBQeU9iamVjdCAqd2luZXJyb3I7Ci19IFB5V2luZG93c0Vycm9yT2JqZWN0OworICAgIFB5T2JqZWN0ICp2YWx1ZTsKK30gUHlTdG9wSXRlcmF0aW9uT2JqZWN0OworCisvKiBDb21wYXRpYmlsaXR5IHR5cGVkZWZzICovCit0eXBlZGVmIFB5T1NFcnJvck9iamVjdCBQeUVudmlyb25tZW50RXJyb3JPYmplY3Q7CisjaWZkZWYgTVNfV0lORE9XUwordHlwZWRlZiBQeU9TRXJyb3JPYmplY3QgUHlXaW5kb3dzRXJyb3JPYmplY3Q7CiAjZW5kaWYKLSNlbmRpZgorI2VuZGlmIC8qICFQeV9MSU1JVEVEX0FQSSAqLwogCiAvKiBFcnJvciBoYW5kbGluZyBkZWZpbml0aW9ucyAqLwogCkBAIC03MCw3ICs3NSwxNyBAQAogUHlBUElfRlVOQyh2b2lkKSBQeUVycl9DbGVhcih2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlFcnJfRmV0Y2goUHlPYmplY3QgKiosIFB5T2JqZWN0ICoqLCBQeU9iamVjdCAqKik7CiBQeUFQSV9GVU5DKHZvaWQpIFB5RXJyX1Jlc3RvcmUoUHlPYmplY3QgKiwgUHlPYmplY3QgKiwgUHlPYmplY3QgKik7Ci1QeUFQSV9GVU5DKHZvaWQpIFB5X0ZhdGFsRXJyb3IoY29uc3QgY2hhciAqbWVzc2FnZSk7CisKKyNpZiBkZWZpbmVkKF9fY2xhbmdfXykgfHwgXAorICAgIChkZWZpbmVkKF9fR05VQ19fKSAmJiBcCisgICAgICgoX19HTlVDX01BSk9SX18gPj0gMykgfHwgXAorICAgICAgKF9fR05VQ19NQUpPUl9fID09IDIpICYmIChfX0dOVUNfTUlOT1JfXyA+PSA1KSkpCisjZGVmaW5lIF9QeV9OT19SRVRVUk4gX19hdHRyaWJ1dGVfXygoX19ub3JldHVybl9fKSkKKyNlbHNlCisjZGVmaW5lIF9QeV9OT19SRVRVUk4KKyNlbmRpZgorCitQeUFQSV9GVU5DKHZvaWQpIFB5X0ZhdGFsRXJyb3IoY29uc3QgY2hhciAqbWVzc2FnZSkgX1B5X05PX1JFVFVSTjsKIAogI2lmIGRlZmluZWQoUHlfREVCVUcpIHx8IGRlZmluZWQoUHlfTElNSVRFRF9BUEkpCiAjZGVmaW5lIF9QeUVycl9PQ0NVUlJFRCgpIFB5RXJyX09jY3VycmVkKCkKQEAgLTkwLDYgKzEwNSw3IEBACiAvKiBDYXVzZSBtYW5pcHVsYXRpb24gKFBFUCAzMTM0KSAqLwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUV4Y2VwdGlvbl9HZXRDYXVzZShQeU9iamVjdCAqKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlFeGNlcHRpb25fU2V0Q2F1c2UoUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CitQeUFQSV9GVU5DKGludCkgX1B5RXhjZXB0aW9uX1NldENhdXNlQ2hlY2tlZChQeU9iamVjdCAqLCBQeU9iamVjdCAqKTsKIAogLyogQ29udGV4dCBtYW5pcHVsYXRpb24gKFBFUCAzMTM0KSAqLwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUV4Y2VwdGlvbl9HZXRDb250ZXh0KFB5T2JqZWN0ICopOwpAQCAtMTIyLDEwICsxMzgsOSBAQAogCiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0Fzc2VydGlvbkVycm9yOwogUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19BdHRyaWJ1dGVFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfQnVmZmVyRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0VPRkVycm9yOwogUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19GbG9hdGluZ1BvaW50RXJyb3I7Ci1QeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0Vudmlyb25tZW50RXJyb3I7Ci1QeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0lPRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX09TRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0ltcG9ydEVycm9yOwogUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19JbmRleEVycm9yOwpAQCAtMTUwLDYgKzE2NSwyNyBAQAogUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Vbmljb2RlVHJhbnNsYXRlRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1ZhbHVlRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1plcm9EaXZpc2lvbkVycm9yOworCitQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0Jsb2NraW5nSU9FcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfQnJva2VuUGlwZUVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19DaGlsZFByb2Nlc3NFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfQ29ubmVjdGlvbkVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Db25uZWN0aW9uQWJvcnRlZEVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Db25uZWN0aW9uUmVmdXNlZEVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Db25uZWN0aW9uUmVzZXRFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfRmlsZUV4aXN0c0Vycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19GaWxlTm90Rm91bmRFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfSW50ZXJydXB0ZWRFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfSXNBRGlyZWN0b3J5RXJyb3I7CitQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX05vdEFEaXJlY3RvcnlFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfUGVybWlzc2lvbkVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Qcm9jZXNzTG9va3VwRXJyb3I7CitQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1RpbWVvdXRFcnJvcjsKKworCisvKiBDb21wYXRpYmlsaXR5IGFsaWFzZXMgKi8KK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfRW52aXJvbm1lbnRFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfSU9FcnJvcjsKICNpZmRlZiBNU19XSU5ET1dTCiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1dpbmRvd3NFcnJvcjsKICNlbmRpZgpAQCAtMTU3LDggKzE5Myw2IEBACiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1ZNU0Vycm9yOwogI2VuZGlmCiAKLVB5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfQnVmZmVyRXJyb3I7Ci0KIFB5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfUmVjdXJzaW9uRXJyb3JJbnN0OwogCiAvKiBQcmVkZWZpbmVkIHdhcm5pbmcgY2F0ZWdvcmllcyAqLwpAQCAtMTk4LDggKzIzMiw2IEBACiAgICAgKTsKIAogI2lmZGVmIE1TX1dJTkRPV1MKLVB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnJXaXRoRmlsZW5hbWVPYmplY3QoCi0gICAgaW50LCBjb25zdCBjaGFyICopOwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUVycl9TZXRGcm9tV2luZG93c0VycldpdGhGaWxlbmFtZSgKICAgICBpbnQgaWVyciwKICAgICBjb25zdCBjaGFyICpmaWxlbmFtZSAgICAgICAgLyogZGVjb2RlZCBmcm9tIHRoZSBmaWxlc3lzdGVtIGVuY29kaW5nICovCkBAIC0yOTMsNiArMzI1LDEyIEBACiAgICAgUHlfc3NpemVfdCBlbmQsCiAgICAgY29uc3QgY2hhciAqcmVhc29uICAgICAgICAgIC8qIFVURi04IGVuY29kZWQgc3RyaW5nICovCiAgICAgKTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0NyZWF0ZSgKKyAgICBQeU9iamVjdCAqb2JqZWN0LAorICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgUHlfc3NpemVfdCBlbmQsCisgICAgY29uc3QgY2hhciAqcmVhc29uICAgICAgICAgIC8qIFVURi04IGVuY29kZWQgc3RyaW5nICovCisgICAgKTsKICNlbmRpZgogCiAvKiBnZXQgdGhlIGVuY29kaW5nIGF0dHJpYnV0ZSAqLwpAQCAtMzQ4LDYgKzM4Niw4IEBACiAgICAgY29uc3QgY2hhciAqcmVhc29uICAgICAgICAgIC8qIFVURi04IGVuY29kZWQgc3RyaW5nICovCiAgICAgKTsKIAorLyogY3JlYXRlIGEgU3RvcEl0ZXJhdGlvbiBleGNlcHRpb24gd2l0aCB0aGUgZ2l2ZW4gdmFsdWUgKi8KK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlTdG9wSXRlcmF0aW9uX0NyZWF0ZShQeU9iamVjdCAqKTsKIAogLyogVGhlc2UgQVBJcyBhcmVuJ3QgcmVhbGx5IHBhcnQgb2YgdGhlIGVycm9yIGltcGxlbWVudGF0aW9uLCBidXQKICAgIG9mdGVuIG5lZWRlZCB0byBmb3JtYXQgZXJyb3IgbWVzc2FnZXM7IHRoZSBuYXRpdmUgQyBsaWIgQVBJcyBhcmUKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHltYWNyby5oIGIvSW5jbHVkZS9weW1hY3JvLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWRjMGM2MQotLS0gL2Rldi9udWxsCisrKyBiL0luY2x1ZGUvcHltYWNyby5oCkBAIC0wLDAgKzEsNTUgQEAKKyNpZm5kZWYgUHlfUFlNQUNST19ICisjZGVmaW5lIFB5X1BZTUFDUk9fSAorCisjZGVmaW5lIFB5X01JTih4LCB5KSAoKCh4KSA+ICh5KSkgPyAoeSkgOiAoeCkpCisjZGVmaW5lIFB5X01BWCh4LCB5KSAoKCh4KSA+ICh5KSkgPyAoeCkgOiAoeSkpCisKKy8qIEFyZ3VtZW50IG11c3QgYmUgYSBjaGFyIG9yIGFuIGludCBpbiBbLTEyOCwgMTI3XSBvciBbMCwgMjU1XS4gKi8KKyNkZWZpbmUgUHlfQ0hBUk1BU0soYykgKCh1bnNpZ25lZCBjaGFyKSgoYykgJiAweGZmKSkKKworCisvKiBBc3NlcnQgYSBidWlsZC10aW1lIGRlcGVuZGVuY3ksIGFzIGFuIGV4cHJlc3Npb24uCisKKyAgIFlvdXIgY29tcGlsZSB3aWxsIGZhaWwgaWYgdGhlIGNvbmRpdGlvbiBpc24ndCB0cnVlLCBvciBjYW4ndCBiZSBldmFsdWF0ZWQKKyAgIGJ5IHRoZSBjb21waWxlci4gVGhpcyBjYW4gYmUgdXNlZCBpbiBhbiBleHByZXNzaW9uOiBpdHMgdmFsdWUgaXMgMC4KKworICAgRXhhbXBsZToKKworICAgI2RlZmluZSBmb29fdG9fY2hhcihmb28pICBcCisgICAgICAgKChjaGFyICopKGZvbykgICAgICAgIFwKKyAgICAgICAgKyBQeV9CVUlMRF9BU1NFUlRfRVhQUihvZmZzZXRvZihzdHJ1Y3QgZm9vLCBzdHJpbmcpID09IDApKQorCisgICBXcml0dGVuIGJ5IFJ1c3R5IFJ1c3NlbGwsIHB1YmxpYyBkb21haW4sIGh0dHA6Ly9jY29kZWFyY2hpdmUubmV0LyAqLworI2RlZmluZSBQeV9CVUlMRF9BU1NFUlRfRVhQUihjb25kKSBcCisgICAgKHNpemVvZihjaGFyIFsxIC0gMiohKGNvbmQpXSkgLSAxKQorCisvKiBHZXQgdGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiBhIHZpc2libGUgYXJyYXkKKworICAgVGhpcyBkb2VzIG5vdCB3b3JrIG9uIHBvaW50ZXJzLCBvciBhcnJheXMgZGVjbGFyZWQgYXMgW10sIG9yIGZ1bmN0aW9uCisgICBwYXJhbWV0ZXJzLiBXaXRoIGNvcnJlY3QgY29tcGlsZXIgc3VwcG9ydCwgc3VjaCB1c2FnZSB3aWxsIGNhdXNlIGEgYnVpbGQKKyAgIGVycm9yIChzZWUgUHlfQlVJTERfQVNTRVJUX0VYUFIpLgorCisgICBXcml0dGVuIGJ5IFJ1c3R5IFJ1c3NlbGwsIHB1YmxpYyBkb21haW4sIGh0dHA6Ly9jY29kZWFyY2hpdmUubmV0LyAqLworI2lmIGRlZmluZWQoX19HTlVDX18pCisvKiBUd28gZ2NjIGV4dGVuc2lvbnMuCisgICAmYVswXSBkZWdyYWRlcyB0byBhIHBvaW50ZXI6IGEgZGlmZmVyZW50IHR5cGUgZnJvbSBhbiBhcnJheSAqLworI2RlZmluZSBQeV9BUlJBWV9MRU5HVEgoYXJyYXkpIFwKKyAgICAoc2l6ZW9mKGFycmF5KSAvIHNpemVvZigoYXJyYXkpWzBdKSBcCisgICAgICsgUHlfQlVJTERfQVNTRVJUX0VYUFIoIV9fYnVpbHRpbl90eXBlc19jb21wYXRpYmxlX3AodHlwZW9mKGFycmF5KSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVvZigmKGFycmF5KVswXSkpKSkKKyNlbHNlCisjZGVmaW5lIFB5X0FSUkFZX0xFTkdUSChhcnJheSkgXAorICAgIChzaXplb2YoYXJyYXkpIC8gc2l6ZW9mKChhcnJheSlbMF0pKQorI2VuZGlmCisKKworLyogRGVmaW5lIG1hY3JvcyBmb3IgaW5saW5lIGRvY3VtZW50YXRpb24uICovCisjZGVmaW5lIFB5RG9jX1ZBUihuYW1lKSBzdGF0aWMgY2hhciBuYW1lW10KKyNkZWZpbmUgUHlEb2NfU1RSVkFSKG5hbWUsc3RyKSBQeURvY19WQVIobmFtZSkgPSBQeURvY19TVFIoc3RyKQorI2lmZGVmIFdJVEhfRE9DX1NUUklOR1MKKyNkZWZpbmUgUHlEb2NfU1RSKHN0cikgc3RyCisjZWxzZQorI2RlZmluZSBQeURvY19TVFIoc3RyKSAiIgorI2VuZGlmCisKKyNlbmRpZiAvKiBQeV9QWU1BQ1JPX0ggKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHltYXRoLmggYi9JbmNsdWRlL3B5bWF0aC5oCmluZGV4IGI0ZWRhNjYuLjYyYTZjNDIgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvcHltYXRoLmgKKysrIGIvSW5jbHVkZS9weW1hdGguaApAQCAtMzcsMTIgKzM3LDYgQEAKICNlbmRpZiAvKiBfX1NURENfXyAqLwogI2VuZGlmIC8qIF9NU0NfVkVSICovCiAKLSNpZmRlZiBfT1NGX1NPVVJDRQotLyogT1NGMSA1LjEgZG9lc24ndCBtYWtlIHRoZXNlIGF2YWlsYWJsZSB3aXRoIFhPUEVOX1NPVVJDRV9FWFRFTkRFRCBkZWZpbmVkICovCi1leHRlcm4gaW50IGZpbml0ZShkb3VibGUpOwotZXh0ZXJuIGRvdWJsZSBjb3B5c2lnbihkb3VibGUsIGRvdWJsZSk7Ci0jZW5kaWYKLQogLyogSGlnaCBwcmVjaXNpb24gZGVmaW50aW9uIG9mIHBpIGFuZCBlIChFdWxlcikKICAqIFRoZSB2YWx1ZXMgYXJlIHRha2VuIGZyb20gbGliYzYncyBtYXRoLmguCiAgKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHlwb3J0LmggYi9JbmNsdWRlL3B5cG9ydC5oCmluZGV4IDI2OWJhNjguLjFmZDRkY2MgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvcHlwb3J0LmgKKysrIGIvSW5jbHVkZS9weXBvcnQuaApAQCAtMTM1LDcgKzEzNSw3IEBACiAjZGVmaW5lIF9QeUhBU0hfTVVMVElQTElFUiAxMDAwMDAzICAvKiAweGY0MjQzICovCiAKIC8qIFBhcmFtZXRlcnMgdXNlZCBmb3IgdGhlIG51bWVyaWMgaGFzaCBpbXBsZW1lbnRhdGlvbi4gIFNlZSBub3RlcyBmb3IKLSAgIF9QeUhhc2hfRG91YmxlIGluIE9iamVjdHMvb2JqZWN0LmMuICBOdW1lcmljIGhhc2hlcyBhcmUgYmFzZWQgb24KKyAgIF9QeV9IYXNoRG91YmxlIGluIE9iamVjdHMvb2JqZWN0LmMuICBOdW1lcmljIGhhc2hlcyBhcmUgYmFzZWQgb24KICAgIHJlZHVjdGlvbiBtb2R1bG8gdGhlIHByaW1lIDIqKl9QeUhBU0hfQklUUyAtIDEuICovCiAKICNpZiBTSVpFT0ZfVk9JRF9QID49IDgKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHlzdGF0ZS5oIGIvSW5jbHVkZS9weXN0YXRlLmgKaW5kZXggYjVmZTFhZC4uMWJiYjRlMiAxMDA2NDQKLS0tIGEvSW5jbHVkZS9weXN0YXRlLmgKKysrIGIvSW5jbHVkZS9weXN0YXRlLmgKQEAgLTc0LDkgKzc0LDkgQEAKICAgICBzdHJ1Y3QgX2ZyYW1lICpmcmFtZTsKICAgICBpbnQgcmVjdXJzaW9uX2RlcHRoOwogICAgIGNoYXIgb3ZlcmZsb3dlZDsgLyogVGhlIHN0YWNrIGhhcyBvdmVyZmxvd2VkLiBBbGxvdyA1MCBtb3JlIGNhbGxzCi0JCSAgICAgICAgdG8gaGFuZGxlIHRoZSBydW50aW1lIGVycm9yLiAqLwotICAgIGNoYXIgcmVjdXJzaW9uX2NyaXRpY2FsOyAvKiBUaGUgY3VycmVudCBjYWxscyBtdXN0IG5vdCBjYXVzZSAKLQkJCQlhIHN0YWNrIG92ZXJmbG93LiAqLworICAgICAgICAgICAgICAgICAgICAgICAgdG8gaGFuZGxlIHRoZSBydW50aW1lIGVycm9yLiAqLworICAgIGNoYXIgcmVjdXJzaW9uX2NyaXRpY2FsOyAvKiBUaGUgY3VycmVudCBjYWxscyBtdXN0IG5vdCBjYXVzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHN0YWNrIG92ZXJmbG93LiAqLwogICAgIC8qICd0cmFjaW5nJyBrZWVwcyB0cmFjayBvZiB0aGUgZXhlY3V0aW9uIGRlcHRoIHdoZW4gdHJhY2luZy9wcm9maWxpbmcuCiAgICAgICAgVGhpcyBpcyB0byBwcmV2ZW50IHRoZSBhY3R1YWwgdHJhY2UvcHJvZmlsZSBjb2RlIGZyb20gYmVpbmcgcmVjb3JkZWQgaW4KICAgICAgICB0aGUgdHJhY2UvcHJvZmlsZS4gKi8KQEAgLTE2MCw2ICsxNjAsOCBAQAogICAgIGVudW0ge1B5R0lMU3RhdGVfTE9DS0VELCBQeUdJTFN0YXRlX1VOTE9DS0VEfQogICAgICAgICBQeUdJTFN0YXRlX1NUQVRFOwogCisjaWZkZWYgV0lUSF9USFJFQUQKKwogLyogRW5zdXJlIHRoYXQgdGhlIGN1cnJlbnQgdGhyZWFkIGlzIHJlYWR5IHRvIGNhbGwgdGhlIFB5dGhvbgogICAgQyBBUEksIHJlZ2FyZGxlc3Mgb2YgdGhlIGN1cnJlbnQgc3RhdGUgb2YgUHl0aG9uLCBvciBvZiBpdHMKICAgIHRocmVhZCBsb2NrLiAgVGhpcyBtYXkgYmUgY2FsbGVkIGFzIG1hbnkgdGltZXMgYXMgZGVzaXJlZApAQCAtMjAxLDYgKzIwMyw4IEBACiAqLwogUHlBUElfRlVOQyhQeVRocmVhZFN0YXRlICopIFB5R0lMU3RhdGVfR2V0VGhpc1RocmVhZFN0YXRlKHZvaWQpOwogCisjZW5kaWYgICAvKiAjaWZkZWYgV0lUSF9USFJFQUQgKi8KKwogLyogVGhlIGltcGxlbWVudGF0aW9uIG9mIHN5cy5fY3VycmVudF9mcmFtZXMoKSAgUmV0dXJucyBhIGRpY3QgbWFwcGluZwogICAgdGhyZWFkIGlkIHRvIHRoYXQgdGhyZWFkJ3MgY3VycmVudCBmcmFtZS4KICovCmRpZmYgLS1naXQgYS9JbmNsdWRlL3B5dGhvbnJ1bi5oIGIvSW5jbHVkZS9weXRob25ydW4uaAppbmRleCBlMjQ0Y2U3Li43NGFiOTg2IDEwMDY0NAotLS0gYS9JbmNsdWRlL3B5dGhvbnJ1bi5oCisrKyBiL0luY2x1ZGUvcHl0aG9ucnVuLmgKQEAgLTE3OSw5ICsxNzksNiBAQAogUHlBUElfRlVOQyhjb25zdCBjaGFyICopIFB5X0dldENvbXBpbGVyKHZvaWQpOwogUHlBUElfRlVOQyhjb25zdCBjaGFyICopIFB5X0dldEJ1aWxkSW5mbyh2b2lkKTsKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKLVB5QVBJX0ZVTkMoY29uc3QgY2hhciAqKSBfUHlfc3ZudmVyc2lvbih2b2lkKTsKLVB5QVBJX0ZVTkMoY29uc3QgY2hhciAqKSBQeV9TdWJ2ZXJzaW9uUmV2aXNpb24odm9pZCk7Ci1QeUFQSV9GVU5DKGNvbnN0IGNoYXIgKikgUHlfU3VidmVyc2lvblNob3J0QnJhbmNoKHZvaWQpOwogUHlBUElfRlVOQyhjb25zdCBjaGFyICopIF9QeV9oZ2lkZW50aWZpZXIodm9pZCk7CiBQeUFQSV9GVU5DKGNvbnN0IGNoYXIgKikgX1B5X2hndmVyc2lvbih2b2lkKTsKICNlbmRpZgpAQCAtMjE1LDYgKzIxMiw3IEBACiBQeUFQSV9GVU5DKHZvaWQpIFB5RmxvYXRfRmluaSh2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlPU19GaW5pSW50ZXJydXB0cyh2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgX1B5R0NfRmluaSh2b2lkKTsKK1B5QVBJX0ZVTkModm9pZCkgUHlTbGljZV9GaW5pKHZvaWQpOwogCiBQeUFQSV9EQVRBKFB5VGhyZWFkU3RhdGUgKikgX1B5X0ZpbmFsaXppbmc7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHl0aHJlYWQuaCBiL0luY2x1ZGUvcHl0aHJlYWQuaAppbmRleCA5ODA2YzYxLi42ZTlmMzAzIDEwMDY0NAotLS0gYS9JbmNsdWRlL3B5dGhyZWFkLmgKKysrIGIvSW5jbHVkZS9weXRocmVhZC5oCkBAIC0zMiw3ICszMiw3IEBACiAgICBvbiBhIGxvY2sgKHNlZSBQeVRocmVhZF9hY3F1aXJlX2xvY2tfdGltZWQoKSBiZWxvdykuCiAgICBQWV9USU1FT1VUX01BWCBpcyB0aGUgaGlnaGVzdCB1c2FibGUgdmFsdWUgKGluIG1pY3Jvc2Vjb25kcykgb2YgdGhhdAogICAgdHlwZSwgYW5kIGRlcGVuZHMgb24gdGhlIHN5c3RlbSB0aHJlYWRpbmcgQVBJLgotICAgCisKICAgIE5PVEU6IHRoaXMgaXNuJ3QgdGhlIHNhbWUgdmFsdWUgYXMgYF90aHJlYWQuVElNRU9VVF9NQVhgLiAgVGhlIF90aHJlYWQKICAgIG1vZHVsZSBleHBvc2VzIGEgaGlnaGVyLWxldmVsIEFQSSwgd2l0aCB0aW1lb3V0cyBleHByZXNzZWQgaW4gc2Vjb25kcwogICAgYW5kIGZsb2F0aW5nLXBvaW50IG51bWJlcnMgYWxsb3dlZC4KQEAgLTc0LDYgKzc0LDggQEAKIFB5QVBJX0ZVTkMoc2l6ZV90KSBQeVRocmVhZF9nZXRfc3RhY2tzaXplKHZvaWQpOwogUHlBUElfRlVOQyhpbnQpIFB5VGhyZWFkX3NldF9zdGFja3NpemUoc2l6ZV90KTsKIAorUHlBUElfRlVOQyhQeU9iamVjdCopIFB5VGhyZWFkX0dldEluZm8odm9pZCk7CisKIC8qIFRocmVhZCBMb2NhbCBTdG9yYWdlIChUTFMpIEFQSSAqLwogUHlBUElfRlVOQyhpbnQpIFB5VGhyZWFkX2NyZWF0ZV9rZXkodm9pZCk7CiBQeUFQSV9GVU5DKHZvaWQpIFB5VGhyZWFkX2RlbGV0ZV9rZXkoaW50KTsKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHl0aW1lLmggYi9JbmNsdWRlL3B5dGltZS5oCmluZGV4IGQ3MDdiZGIuLjJlYTY0YzkgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvcHl0aW1lLmgKKysrIGIvSW5jbHVkZS9weXRpbWUuaApAQCAtMyw2ICszLDcgQEAKICNkZWZpbmUgUHlfUFlUSU1FX0gKIAogI2luY2x1ZGUgInB5Y29uZmlnLmgiIC8qIGluY2x1ZGUgZm9yIGRlZmluZXMgKi8KKyNpbmNsdWRlICJvYmplY3QuaCIKIAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiBTeW1ib2xzIGFuZCBtYWNyb3MgdG8gc3VwcGx5IHBsYXRmb3JtLWluZGVwZW5kZW50IGludGVyZmFjZXMgdG8gdGltZSByZWxhdGVkCkBAIC0zNyw2ICszOCwxNiBAQAogICAgICgodHZfZW5kLnR2X3NlYyAtIHR2X3N0YXJ0LnR2X3NlYykgKyBcCiAgICAgICh0dl9lbmQudHZfdXNlYyAtIHR2X3N0YXJ0LnR2X3VzZWMpICogMC4wMDAwMDEpCiAKKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKKy8qIENvbnZlcnQgYSBudW1iZXIgb2Ygc2Vjb25kcywgaW50IG9yIGZsb2F0LCB0byBhIHRpbWVzcGVjIHN0cnVjdHVyZS4KKyAgIG5zZWMgaXMgYWx3YXlzIGluIHRoZSByYW5nZSBbMDsgOTk5OTk5OTk5XS4gRm9yIGV4YW1wbGUsIC0xLjIgaXMgY29udmVydGVkCisgICB0byAoLTIsIDgwMDAwMDAwMCkuICovCitQeUFQSV9GVU5DKGludCkgX1B5VGltZV9PYmplY3RUb1RpbWVzcGVjKAorICAgIFB5T2JqZWN0ICpvYmosCisgICAgdGltZV90ICpzZWMsCisgICAgbG9uZyAqbnNlYyk7CisjZW5kaWYKKwogLyogRHVtbXkgdG8gZm9yY2UgbGlua2luZy4gKi8KIFB5QVBJX0ZVTkModm9pZCkgX1B5VGltZV9Jbml0KHZvaWQpOwogCmRpZmYgLS1naXQgYS9JbmNsdWRlL3NldG9iamVjdC5oIGIvSW5jbHVkZS9zZXRvYmplY3QuaAppbmRleCA2MjM0MTExLi4wMGU1MzQ0IDEwMDY0NAotLS0gYS9JbmNsdWRlL3NldG9iamVjdC5oCisrKyBiL0luY2x1ZGUvc2V0b2JqZWN0LmgKQEAgLTk5LDYgKzk5LDggQEAKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlTZXRfUG9wKFB5T2JqZWN0ICpzZXQpOwogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQogUHlBUElfRlVOQyhpbnQpIF9QeVNldF9VcGRhdGUoUHlPYmplY3QgKnNldCwgUHlPYmplY3QgKml0ZXJhYmxlKTsKKworUHlBUElfRlVOQyhpbnQpIFB5U2V0X0NsZWFyRnJlZUxpc3Qodm9pZCk7CiAjZW5kaWYKIAogI2lmZGVmIF9fY3BsdXNwbHVzCmRpZmYgLS1naXQgYS9JbmNsdWRlL3N0cnVjdG1lbWJlci5oIGIvSW5jbHVkZS9zdHJ1Y3RtZW1iZXIuaAppbmRleCAwYjg1YjJhLi40MGMwNGU5IDEwMDY0NAotLS0gYS9JbmNsdWRlL3N0cnVjdG1lbWJlci5oCisrKyBiL0luY2x1ZGUvc3RydWN0bWVtYmVyLmgKQEAgLTksMTYgKzksNiBAQAogCiAjaW5jbHVkZSA8c3RkZGVmLmg+IC8qIEZvciBvZmZzZXRvZiAqLwogCi0vKiBUaGUgb2Zmc2V0b2YoKSBtYWNybyBjYWxjdWxhdGVzIHRoZSBvZmZzZXQgb2YgYSBzdHJ1Y3R1cmUgbWVtYmVyCi0gICBpbiBpdHMgc3RydWN0dXJlLiAgVW5mb3J0dW5hdGVseSB0aGlzIGNhbm5vdCBiZSB3cml0dGVuIGRvd24KLSAgIHBvcnRhYmx5LCBoZW5jZSBpdCBpcyBwcm92aWRlZCBieSBhIFN0YW5kYXJkIEMgaGVhZGVyIGZpbGUuCi0gICBGb3IgcHJlLVN0YW5kYXJkIEMgY29tcGlsZXJzLCBoZXJlIGlzIGEgdmVyc2lvbiB0aGF0IHVzdWFsbHkgd29ya3MKLSAgIChidXQgd2F0Y2ggb3V0ISk6ICovCi0KLSNpZm5kZWYgb2Zmc2V0b2YKLSNkZWZpbmUgb2Zmc2V0b2YodHlwZSwgbWVtYmVyKSAoIChpbnQpICYgKCh0eXBlKikwKSAtPiBtZW1iZXIgKQotI2VuZGlmCi0KIC8qIEFuIGFycmF5IG9mIFB5TWVtYmVyRGVmIHN0cnVjdHVyZXMgZGVmaW5lcyB0aGUgbmFtZSwgdHlwZSBhbmQgb2Zmc2V0CiAgICBvZiBzZWxlY3RlZCBtZW1iZXJzIG9mIGEgQyBzdHJ1Y3R1cmUuICBUaGVzZSBjYW4gYmUgcmVhZCBieQogICAgUHlNZW1iZXJfR2V0T25lKCkgYW5kIHNldCBieSBQeU1lbWJlcl9TZXRPbmUoKSAoZXhjZXB0IGlmIHRoZWlyIFJFQURPTkxZCmRpZmYgLS1naXQgYS9JbmNsdWRlL3N5bXRhYmxlLmggYi9JbmNsdWRlL3N5bXRhYmxlLmgKaW5kZXggZmQ3ZGUwNC4uODJmNjI2OSAxMDA2NDQKLS0tIGEvSW5jbHVkZS9zeW10YWJsZS5oCisrKyBiL0luY2x1ZGUvc3ltdGFibGUuaApAQCAtMjMsMTAgKzIzLDEzIEBACiAgICAgUHlPYmplY3QgKnN0X2Jsb2NrczsgICAgICAgICAgICAvKiBkaWN0OiBtYXAgQVNUIG5vZGUgYWRkcmVzc2VzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiAgICAgICB0byBzeW1ib2wgdGFibGUgZW50cmllcyAqLwogICAgIFB5T2JqZWN0ICpzdF9zdGFjazsgICAgICAgICAgICAgLyogbGlzdDogc3RhY2sgb2YgbmFtZXNwYWNlIGluZm8gKi8KLSAgICBQeU9iamVjdCAqc3RfZ2xvYmFsOyAgICAgICAgICAgIC8qIGJvcnJvd2VkIHJlZiB0byBzdF90b3AtPnN0X3N5bWJvbHMgKi8KLSAgICBpbnQgc3RfbmJsb2NrczsgICAgICAgICAgICAgICAgIC8qIG51bWJlciBvZiBibG9ja3MgdXNlZCAqLworICAgIFB5T2JqZWN0ICpzdF9nbG9iYWw7ICAgICAgICAgICAgLyogYm9ycm93ZWQgcmVmIHRvIHN0X3RvcC0+c3RlX3N5bWJvbHMgKi8KKyAgICBpbnQgc3RfbmJsb2NrczsgICAgICAgICAgICAgICAgIC8qIG51bWJlciBvZiBibG9ja3MgdXNlZC4ga2VwdCBmb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNpc3RlbmN5IHdpdGggdGhlIGNvcnJlc3BvbmRpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGVyIHN0cnVjdHVyZSAqLwogICAgIFB5T2JqZWN0ICpzdF9wcml2YXRlOyAgICAgICAgICAgLyogbmFtZSBvZiBjdXJyZW50IGNsYXNzIG9yIE5VTEwgKi8KLSAgICBQeUZ1dHVyZUZlYXR1cmVzICpzdF9mdXR1cmU7ICAgIC8qIG1vZHVsZSdzIGZ1dHVyZSBmZWF0dXJlcyAqLworICAgIFB5RnV0dXJlRmVhdHVyZXMgKnN0X2Z1dHVyZTsgICAgLyogbW9kdWxlJ3MgZnV0dXJlIGZlYXR1cmVzIHRoYXQgYWZmZWN0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgc3ltYm9sIHRhYmxlICovCiB9OwogCiB0eXBlZGVmIHN0cnVjdCBfc3ltdGFibGVfZW50cnkgewpAQCAtMzQsNyArMzcsNyBAQAogICAgIFB5T2JqZWN0ICpzdGVfaWQ7ICAgICAgICAvKiBpbnQ6IGtleSBpbiBzdGVfdGFibGUtPnN0X2Jsb2NrcyAqLwogICAgIFB5T2JqZWN0ICpzdGVfc3ltYm9sczsgICAvKiBkaWN0OiB2YXJpYWJsZSBuYW1lcyB0byBmbGFncyAqLwogICAgIFB5T2JqZWN0ICpzdGVfbmFtZTsgICAgICAvKiBzdHJpbmc6IG5hbWUgb2YgY3VycmVudCBibG9jayAqLwotICAgIFB5T2JqZWN0ICpzdGVfdmFybmFtZXM7ICAvKiBsaXN0IG9mIHZhcmlhYmxlIG5hbWVzICovCisgICAgUHlPYmplY3QgKnN0ZV92YXJuYW1lczsgIC8qIGxpc3Qgb2YgZnVuY3Rpb24gcGFyYW1ldGVycyAqLwogICAgIFB5T2JqZWN0ICpzdGVfY2hpbGRyZW47ICAvKiBsaXN0IG9mIGNoaWxkIGJsb2NrcyAqLwogICAgIF9QeV9ibG9ja190eSBzdGVfdHlwZTsgICAvKiBtb2R1bGUsIGNsYXNzLCBvciBmdW5jdGlvbiAqLwogICAgIGludCBzdGVfdW5vcHRpbWl6ZWQ7ICAgICAvKiBmYWxzZSBpZiBuYW1lc3BhY2UgaXMgb3B0aW1pemVkICovCmRpZmYgLS1naXQgYS9JbmNsdWRlL3RyYWNlYmFjay5oIGIvSW5jbHVkZS90cmFjZWJhY2suaAppbmRleCA2OWUzZDA1Li43NzM0NzA3IDEwMDY0NAotLS0gYS9JbmNsdWRlL3RyYWNlYmFjay5oCisrKyBiL0luY2x1ZGUvdHJhY2ViYWNrLmgKQEAgLTUsNiArNSw4IEBACiBleHRlcm4gIkMiIHsKICNlbmRpZgogCisjaW5jbHVkZSAicHlzdGF0ZS5oIgorCiBzdHJ1Y3QgX2ZyYW1lOwogCiAvKiBUcmFjZWJhY2sgaW50ZXJmYWNlICovCkBAIC0yOCw2ICszMCw0MiBAQAogUHlBUElfREFUQShQeVR5cGVPYmplY3QpIFB5VHJhY2VCYWNrX1R5cGU7CiAjZGVmaW5lIFB5VHJhY2VCYWNrX0NoZWNrKHYpIChQeV9UWVBFKHYpID09ICZQeVRyYWNlQmFja19UeXBlKQogCisvKiBXcml0ZSB0aGUgUHl0aG9uIHRyYWNlYmFjayBpbnRvIHRoZSBmaWxlICdmZCcuIEZvciBleGFtcGxlOgorCisgICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGZpcnN0KToKKyAgICAgICAgIEZpbGUgInh4eCIsIGxpbmUgeHh4IGluIDx4eHg+CisgICAgICAgICBGaWxlICJ4eHgiLCBsaW5lIHh4eCBpbiA8eHh4PgorICAgICAgICAgLi4uCisgICAgICAgICBGaWxlICJ4eHgiLCBsaW5lIHh4eCBpbiA8eHh4PgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIHdyaXR0ZW4gZm9yIGRlYnVnIHB1cnBvc2Ugb25seSwgdG8gZHVtcCB0aGUgdHJhY2ViYWNrIGluCisgICB0aGUgd29yc3QgY2FzZTogYWZ0ZXIgYSBzZWdtZW50YXRpb24gZmF1bHQsIGF0IGZhdGFsIGVycm9yLCBldGMuIFRoYXQncyB3aHksCisgICBpdCBpcyB2ZXJ5IGxpbWl0ZWQuIFN0cmluZ3MgYXJlIHRydW5jYXRlZCB0byAxMDAgY2hhcmFjdGVycyBhbmQgZW5jb2RlZCB0bworICAgQVNDSUkgd2l0aCBiYWNrc2xhc2hyZXBsYWNlLiBJdCBkb2Vzbid0IHdyaXRlIHRoZSBzb3VyY2UgY29kZSwgb25seSB0aGUKKyAgIGZ1bmN0aW9uIG5hbWUsIGZpbGVuYW1lIGFuZCBsaW5lIG51bWJlciBvZiBlYWNoIGZyYW1lLiBXcml0ZSBvbmx5IHRoZSBmaXJzdAorICAgMTAwIGZyYW1lczogaWYgdGhlIHRyYWNlYmFjayBpcyB0cnVuY2F0ZWQsIHdyaXRlIHRoZSBsaW5lICIgLi4uIi4KKworICAgVGhpcyBmdW5jdGlvbiBpcyBzaWduYWwgc2FmZS4gKi8KKworUHlBUElfREFUQSh2b2lkKSBfUHlfRHVtcFRyYWNlYmFjaygKKyAgICBpbnQgZmQsCisgICAgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlKTsKKworLyogV3JpdGUgdGhlIHRyYWNlYmFjayBvZiBhbGwgdGhyZWFkcyBpbnRvIHRoZSBmaWxlICdmZCcuIGN1cnJlbnRfdGhyZWFkIGNhbiBiZQorICAgTlVMTC4gUmV0dXJuIE5VTEwgb24gc3VjY2Vzcywgb3IgYW4gZXJyb3IgbWVzc2FnZSBvbiBlcnJvci4KKworICAgVGhpcyBmdW5jdGlvbiBpcyB3cml0dGVuIGZvciBkZWJ1ZyBwdXJwb3NlIG9ubHkuIEl0IGNhbGxzCisgICBfUHlfRHVtcFRyYWNlYmFjaygpIGZvciBlYWNoIHRocmVhZCwgYW5kIHNvIGhhcyB0aGUgc2FtZSBsaW1pdGF0aW9ucy4gSXQKKyAgIG9ubHkgd3JpdGUgdGhlIHRyYWNlYmFjayBvZiB0aGUgZmlyc3QgMTAwIHRocmVhZHM6IHdyaXRlICIuLi4iIGlmIHRoZXJlIGFyZQorICAgbW9yZSB0aHJlYWRzLgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIHNpZ25hbCBzYWZlLiAqLworCitQeUFQSV9EQVRBKGNvbnN0IGNoYXIqKSBfUHlfRHVtcFRyYWNlYmFja1RocmVhZHMoCisgICAgaW50IGZkLCBQeUludGVycHJldGVyU3RhdGUgKmludGVycCwKKyAgICBQeVRocmVhZFN0YXRlICpjdXJyZW50X3RocmVhZCk7CisKKwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL0luY2x1ZGUvdWNuaGFzaC5oIGIvSW5jbHVkZS91Y25oYXNoLmgKaW5kZXggNzBmZGYxMy4uOGRlOWJhMCAxMDA2NDQKLS0tIGEvSW5jbHVkZS91Y25oYXNoLmgKKysrIGIvSW5jbHVkZS91Y25oYXNoLmgKQEAgLTE5LDExICsxOSwxMyBAQAogICAgICAgIHN1Y2Nlc3MsIHplcm8gaWYgbm90LiAgRG9lcyBub3Qgc2V0IFB5dGhvbiBleGNlcHRpb25zLiAKICAgICAgICBJZiBzZWxmIGlzIE5VTEwsIGRhdGEgY29tZSBmcm9tIHRoZSBkZWZhdWx0IHZlcnNpb24gb2YgdGhlIGRhdGFiYXNlLgogICAgICAgIElmIGl0IGlzIG5vdCBOVUxMLCBpdCBzaG91bGQgYmUgYSB1bmljb2RlZGF0YS51Y2RfWF9ZX1ogb2JqZWN0ICovCi0gICAgaW50ICgqZ2V0bmFtZSkoUHlPYmplY3QgKnNlbGYsIFB5X1VDUzQgY29kZSwgY2hhciogYnVmZmVyLCBpbnQgYnVmbGVuKTsKKyAgICBpbnQgKCpnZXRuYW1lKShQeU9iamVjdCAqc2VsZiwgUHlfVUNTNCBjb2RlLCBjaGFyKiBidWZmZXIsIGludCBidWZsZW4sCisgICAgICAgICAgICAgICAgICAgaW50IHdpdGhfYWxpYXNfYW5kX3NlcSk7CiAKICAgICAvKiBHZXQgY2hhcmFjdGVyIGNvZGUgZm9yIGEgZ2l2ZW4gbmFtZS4gIFNhbWUgZXJyb3IgaGFuZGxpbmcKICAgICAgICBhcyBmb3IgZ2V0bmFtZS4gKi8KLSAgICBpbnQgKCpnZXRjb2RlKShQeU9iamVjdCAqc2VsZiwgY29uc3QgY2hhciogbmFtZSwgaW50IG5hbWVsZW4sIFB5X1VDUzQqIGNvZGUpOworICAgIGludCAoKmdldGNvZGUpKFB5T2JqZWN0ICpzZWxmLCBjb25zdCBjaGFyKiBuYW1lLCBpbnQgbmFtZWxlbiwgUHlfVUNTNCogY29kZSwKKyAgICAgICAgICAgICAgICAgICBpbnQgd2l0aF9uYW1lZF9zZXEpOwogCiB9IF9QeVVuaWNvZGVfTmFtZV9DQVBJOwogCmRpZmYgLS1naXQgYS9JbmNsdWRlL3VuaWNvZGVvYmplY3QuaCBiL0luY2x1ZGUvdW5pY29kZW9iamVjdC5oCmluZGV4IDM3OWE5MGMuLjhmNzQ5OTUgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvdW5pY29kZW9iamVjdC5oCisrKyBiL0luY2x1ZGUvdW5pY29kZW9iamVjdC5oCkBAIC02NCwxNiArNjQsMTUgQEAKIC8qIFB5dGhvbiAzLnggcmVxdWlyZXMgdW5pY29kZSAqLwogI2RlZmluZSBQeV9VU0lOR19VTklDT0RFCiAKLS8qIEZJWE1FOiBNdkwncyBuZXcgaW1wbGVtZW50YXRpb24gYXNzdW1lcyB0aGF0IFB5X1VOSUNPREVfU0laRSBpcwotICAgcHJvcGVybHkgc2V0LCBidXQgdGhlIGRlZmF1bHQgcnVsZXMgYmVsb3cgZG9lc24ndCBzZXQgaXQuICBJJ2xsCi0gICBzb3J0IHRoaXMgb3V0IHNvbWUgb3RoZXIgZGF5IC0tIGZyZWRyaWtAcHl0aG9ud2FyZS5jb20gKi8KLQotI2lmbmRlZiBQeV9VTklDT0RFX1NJWkUKLSNlcnJvciBNdXN0IGRlZmluZSBQeV9VTklDT0RFX1NJWkUKKyNpZm5kZWYgU0laRU9GX1dDSEFSX1QKKyNlcnJvciBNdXN0IGRlZmluZSBTSVpFT0ZfV0NIQVJfVAogI2VuZGlmCiAKLS8qIFNldHRpbmcgUHlfVU5JQ09ERV9XSURFIGVuYWJsZXMgVUNTLTQgc3RvcmFnZS4gIE90aGVyd2lzZSwgVW5pY29kZQotICAgc3RyaW5ncyBhcmUgc3RvcmVkIGFzIFVDUy0yICh3aXRoIGxpbWl0ZWQgc3VwcG9ydCBmb3IgVVRGLTE2KSAqLworI2RlZmluZSBQeV9VTklDT0RFX1NJWkUgU0laRU9GX1dDSEFSX1QKKworLyogSWYgd2NoYXJfdCBjYW4gYmUgdXNlZCBmb3IgVUNTLTQgc3RvcmFnZSwgc2V0IFB5X1VOSUNPREVfV0lERS4KKyAgIE90aGVyd2lzZSwgVW5pY29kZSBzdHJpbmdzIGFyZSBzdG9yZWQgYXMgVUNTLTIgKHdpdGggbGltaXRlZCBzdXBwb3J0CisgICBmb3IgVVRGLTE2KSAqLwogCiAjaWYgUHlfVU5JQ09ERV9TSVpFID49IDQKICNkZWZpbmUgUHlfVU5JQ09ERV9XSURFCkBAIC04NCwxOSArODMsMTQgQEAKIC8qICNkZWZpbmUgSEFWRV9XQ0hBUl9IICovCiAvKiAjZGVmaW5lIEhBVkVfVVNBQkxFX1dDSEFSX1QgKi8KIAotLyogRGVmYXVsdHMgZm9yIHZhcmlvdXMgcGxhdGZvcm1zICovCi0jaWZuZGVmIFBZX1VOSUNPREVfVFlQRQorLyogUHlfVU5JQ09ERSB3YXMgdGhlIG5hdGl2ZSBVbmljb2RlIHN0b3JhZ2UgZm9ybWF0IChjb2RlIHVuaXQpIHVzZWQgYnkKKyAgIFB5dGhvbiBhbmQgcmVwcmVzZW50cyBhIHNpbmdsZSBVbmljb2RlIGVsZW1lbnQgaW4gdGhlIFVuaWNvZGUgdHlwZS4KKyAgIFdpdGggUEVQIDM5MywgUHlfVU5JQ09ERSBpcyBkZXByZWNhdGVkIGFuZCByZXBsYWNlZCB3aXRoIGEKKyAgIHR5cGVkZWYgdG8gd2NoYXJfdC4gKi8KIAotLyogV2luZG93cyBoYXMgYSB1c2FibGUgd2NoYXJfdCB0eXBlICh1bmxlc3Mgd2UncmUgdXNpbmcgVUNTLTQpICovCi0jIGlmIGRlZmluZWQoTVNfV0lOMzIpICYmIFB5X1VOSUNPREVfU0laRSA9PSAyCi0jICBkZWZpbmUgSEFWRV9VU0FCTEVfV0NIQVJfVAotIyAgZGVmaW5lIFBZX1VOSUNPREVfVFlQRSB3Y2hhcl90Ci0jIGVuZGlmCi0KLSMgaWYgZGVmaW5lZChQeV9VTklDT0RFX1dJREUpCi0jICBkZWZpbmUgUFlfVU5JQ09ERV9UWVBFIFB5X1VDUzQKLSMgZW5kaWYKLQorI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQorI2RlZmluZSBQWV9VTklDT0RFX1RZUEUgd2NoYXJfdAordHlwZWRlZiB3Y2hhcl90IFB5X1VOSUNPREU7CiAjZW5kaWYKIAogLyogSWYgdGhlIGNvbXBpbGVyIHByb3ZpZGVzIGEgd2NoYXJfdCB0eXBlIHdlIHRyeSB0byBzdXBwb3J0IGl0CkBAIC0xMDksNiArMTAzLDEwIEBACiAjIGVuZGlmCiAjZW5kaWYKIAorI2lmIGRlZmluZWQoTVNfV0lORE9XUykKKyMgIGRlZmluZSBIQVZFX01CQ1MKKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9XQ0hBUl9ICiAvKiBXb3JrIGFyb3VuZCBhIGNvc21ldGljIGJ1ZyBpbiBCU0RJIDQueCB3Y2hhci5oOyB0aGFua3MgdG8gVGhvbWFzIFdvdXRlcnMgKi8KICMgaWZkZWYgX0hBVkVfQlNESQpAQCAtMTE3LDIwMSArMTE1LDI0IEBACiAjICBpbmNsdWRlIDx3Y2hhci5oPgogI2VuZGlmCiAKLS8qCi0gKiBVc2UgdGhpcyB0eXBlZGVmIHdoZW4geW91IG5lZWQgdG8gcmVwcmVzZW50IGEgVVRGLTE2IHN1cnJvZ2F0ZSBwYWlyCi0gKiBhcyBzaW5nbGUgdW5zaWduZWQgaW50ZWdlci4KLSAqLwotI2lmIFNJWkVPRl9JTlQgPj0gNAorLyogUHlfVUNTNCBhbmQgUHlfVUNTMiBhcmUgdHlwZWRlZnMgZm9yIHRoZSByZXNwZWN0aXZlCisgICB1bmljb2RlIHJlcHJlc2VudGF0aW9ucy4gKi8KKyNpZiBTSVpFT0ZfSU5UID09IDQKIHR5cGVkZWYgdW5zaWduZWQgaW50IFB5X1VDUzQ7Ci0jZWxpZiBTSVpFT0ZfTE9ORyA+PSA0CisjZWxpZiBTSVpFT0ZfTE9ORyA9PSA0CiB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgUHlfVUNTNDsKLSNlbmRpZgotCi0vKiBQeV9VTklDT0RFIGlzIHRoZSBuYXRpdmUgVW5pY29kZSBzdG9yYWdlIGZvcm1hdCAoY29kZSB1bml0KSB1c2VkIGJ5Ci0gICBQeXRob24gYW5kIHJlcHJlc2VudHMgYSBzaW5nbGUgVW5pY29kZSBlbGVtZW50IGluIHRoZSBVbmljb2RlCi0gICB0eXBlLiAqLwotCi0jaWZuZGVmIFB5X0xJTUlURURfQVBJCi10eXBlZGVmIFBZX1VOSUNPREVfVFlQRSBQeV9VTklDT0RFOwotI2VuZGlmCi0KLS8qIC0tLSBVQ1MtMi9VQ1MtNCBOYW1lIE1hbmdsaW5nIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwotCi0vKiBVbmljb2RlIEFQSSBuYW1lcyBhcmUgbWFuZ2xlZCB0byBhc3N1cmUgdGhhdCBVQ1MtMiBhbmQgVUNTLTQgYnVpbGRzCi0gICBwcm9kdWNlIGRpZmZlcmVudCBleHRlcm5hbCBuYW1lcyBhbmQgdGh1cyBjYXVzZSBpbXBvcnQgZXJyb3JzIGluCi0gICBjYXNlIFB5dGhvbiBpbnRlcnByZXRlcnMgYW5kIGV4dGVuc2lvbnMgd2l0aCBtaXhlZCBjb21waWxlZCBpbgotICAgVW5pY29kZSB3aWR0aCBhc3N1bXB0aW9ucyBhcmUgY29tYmluZWQuICovCi0KLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0KLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nIFB5VW5pY29kZVVDUzJfQXNBU0NJSVN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzQ2hhcm1hcFN0cmluZyBQeVVuaWNvZGVVQ1MyX0FzQ2hhcm1hcFN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzRGVjb2RlZE9iamVjdCBQeVVuaWNvZGVVQ1MyX0FzRGVjb2RlZE9iamVjdAotIyBkZWZpbmUgUHlVbmljb2RlX0FzRGVjb2RlZFVuaWNvZGUgUHlVbmljb2RlVUNTMl9Bc0RlY29kZWRVbmljb2RlCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNFbmNvZGVkT2JqZWN0IFB5VW5pY29kZVVDUzJfQXNFbmNvZGVkT2JqZWN0Ci0jIGRlZmluZSBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nIFB5VW5pY29kZVVDUzJfQXNFbmNvZGVkU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNFbmNvZGVkVW5pY29kZSBQeVVuaWNvZGVVQ1MyX0FzRW5jb2RlZFVuaWNvZGUKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0xhdGluMVN0cmluZyBQeVVuaWNvZGVVQ1MyX0FzTGF0aW4xU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nIFB5VW5pY29kZVVDUzJfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNVVEYzMlN0cmluZyBQeVVuaWNvZGVVQ1MyX0FzVVRGMzJTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1VURjE2U3RyaW5nIFB5VW5pY29kZVVDUzJfQXNVVEYxNlN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzVVRGOFN0cmluZyBQeVVuaWNvZGVVQ1MyX0FzVVRGOFN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzVW5pY29kZSBQeVVuaWNvZGVVQ1MyX0FzVW5pY29kZQotIyBkZWZpbmUgUHlVbmljb2RlX0FzVW5pY29kZUVzY2FwZVN0cmluZyBQeVVuaWNvZGVVQ1MyX0FzVW5pY29kZUVzY2FwZVN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzV2lkZUNoYXIgUHlVbmljb2RlVUNTMl9Bc1dpZGVDaGFyCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNXaWRlQ2hhclN0cmluZyBQeVVuaWNvZGVVQ1MyX0FzV2lkZUNoYXJTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9DbGVhckZyZWVMaXN0IFB5VW5pY29kZVVDUzJfQ2xlYXJGcmVlbGlzdAotIyBkZWZpbmUgUHlVbmljb2RlX0NvbXBhcmUgUHlVbmljb2RlVUNTMl9Db21wYXJlCi0jIGRlZmluZSBQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyBQeVVuaWNvZGVVQ1MyX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Db25jYXQgUHlVbmljb2RlVUNTMl9Db25jYXQKLSMgZGVmaW5lIFB5VW5pY29kZV9BcHBlbmQgUHlVbmljb2RlVUNTMl9BcHBlbmQKLSMgZGVmaW5lIFB5VW5pY29kZV9BcHBlbmRBbmREZWwgUHlVbmljb2RlVUNTMl9BcHBlbmRBbmREZWwKLSMgZGVmaW5lIFB5VW5pY29kZV9Db250YWlucyBQeVVuaWNvZGVVQ1MyX0NvbnRhaW5zCi0jIGRlZmluZSBQeVVuaWNvZGVfQ291bnQgUHlVbmljb2RlVUNTMl9Db3VudAotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZSBQeVVuaWNvZGVVQ1MyX0RlY29kZQotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZUFTQ0lJIFB5VW5pY29kZVVDUzJfRGVjb2RlQVNDSUkKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVDaGFybWFwIFB5VW5pY29kZVVDUzJfRGVjb2RlQ2hhcm1hcAotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZUxhdGluMSBQeVVuaWNvZGVVQ1MyX0RlY29kZUxhdGluMQotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdCBQeVVuaWNvZGVVQ1MyX0RlY29kZUZTRGVmYXVsdAotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUgUHlVbmljb2RlVUNTMl9EZWNvZGVGU0RlZmF1bHRBbmRTaXplCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlUmF3VW5pY29kZUVzY2FwZSBQeVVuaWNvZGVVQ1MyX0RlY29kZVJhd1VuaWNvZGVFc2NhcGUKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVVVEYzMiBQeVVuaWNvZGVVQ1MyX0RlY29kZVVURjMyCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlVVRGMzJTdGF0ZWZ1bCBQeVVuaWNvZGVVQ1MyX0RlY29kZVVURjMyU3RhdGVmdWwKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVVVEYxNiBQeVVuaWNvZGVVQ1MyX0RlY29kZVVURjE2Ci0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlVVRGMTZTdGF0ZWZ1bCBQeVVuaWNvZGVVQ1MyX0RlY29kZVVURjE2U3RhdGVmdWwKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVVVEY4IFB5VW5pY29kZVVDUzJfRGVjb2RlVVRGOAotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bCBQeVVuaWNvZGVVQ1MyX0RlY29kZVVURjhTdGF0ZWZ1bAotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVuaWNvZGVFc2NhcGUgUHlVbmljb2RlVUNTMl9EZWNvZGVVbmljb2RlRXNjYXBlCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlIFB5VW5pY29kZVVDUzJfRW5jb2RlCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlQVNDSUkgUHlVbmljb2RlVUNTMl9FbmNvZGVBU0NJSQotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZUNoYXJtYXAgUHlVbmljb2RlVUNTMl9FbmNvZGVDaGFybWFwCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlRGVjaW1hbCBQeVVuaWNvZGVVQ1MyX0VuY29kZURlY2ltYWwKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVMYXRpbjEgUHlVbmljb2RlVUNTMl9FbmNvZGVMYXRpbjEKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVSYXdVbmljb2RlRXNjYXBlIFB5VW5pY29kZVVDUzJfRW5jb2RlUmF3VW5pY29kZUVzY2FwZQotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZVVURjMyIFB5VW5pY29kZVVDUzJfRW5jb2RlVVRGMzIKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVVVEYxNiBQeVVuaWNvZGVVQ1MyX0VuY29kZVVURjE2Ci0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlVVRGOCBQeVVuaWNvZGVVQ1MyX0VuY29kZVVURjgKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVVbmljb2RlRXNjYXBlIFB5VW5pY29kZVVDUzJfRW5jb2RlVW5pY29kZUVzY2FwZQotIyBkZWZpbmUgUHlVbmljb2RlX0ZpbmQgUHlVbmljb2RlVUNTMl9GaW5kCi0jIGRlZmluZSBQeVVuaWNvZGVfRm9ybWF0IFB5VW5pY29kZVVDUzJfRm9ybWF0Ci0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbUVuY29kZWRPYmplY3QgUHlVbmljb2RlVUNTMl9Gcm9tRW5jb2RlZE9iamVjdAotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21Gb3JtYXQgUHlVbmljb2RlVUNTMl9Gcm9tRm9ybWF0Ci0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbUZvcm1hdFYgUHlVbmljb2RlVUNTMl9Gcm9tRm9ybWF0VgotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21PYmplY3QgUHlVbmljb2RlVUNTMl9Gcm9tT2JqZWN0Ci0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbU9yZGluYWwgUHlVbmljb2RlVUNTMl9Gcm9tT3JkaW5hbAotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21TdHJpbmcgUHlVbmljb2RlVUNTMl9Gcm9tU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUgUHlVbmljb2RlVUNTMl9Gcm9tU3RyaW5nQW5kU2l6ZQotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21Vbmljb2RlIFB5VW5pY29kZVVDUzJfRnJvbVVuaWNvZGUKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIgUHlVbmljb2RlVUNTMl9Gcm9tV2lkZUNoYXIKLSMgZGVmaW5lIFB5VW5pY29kZV9GU0NvbnZlcnRlciBQeVVuaWNvZGVVQ1MyX0ZTQ29udmVydGVyCi0jIGRlZmluZSBQeVVuaWNvZGVfRlNEZWNvZGVyIFB5VW5pY29kZVVDUzJfRlNEZWNvZGVyCi0jIGRlZmluZSBQeVVuaWNvZGVfR2V0RGVmYXVsdEVuY29kaW5nIFB5VW5pY29kZVVDUzJfR2V0RGVmYXVsdEVuY29kaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfR2V0TWF4IFB5VW5pY29kZVVDUzJfR2V0TWF4Ci0jIGRlZmluZSBQeVVuaWNvZGVfR2V0U2l6ZSBQeVVuaWNvZGVVQ1MyX0dldFNpemUKLSMgZGVmaW5lIFB5VW5pY29kZV9Jc0lkZW50aWZpZXIgUHlVbmljb2RlVUNTMl9Jc0lkZW50aWZpZXIKLSMgZGVmaW5lIFB5VW5pY29kZV9Kb2luIFB5VW5pY29kZVVDUzJfSm9pbgotIyBkZWZpbmUgUHlVbmljb2RlX1BhcnRpdGlvbiBQeVVuaWNvZGVVQ1MyX1BhcnRpdGlvbgotIyBkZWZpbmUgUHlVbmljb2RlX1JQYXJ0aXRpb24gUHlVbmljb2RlVUNTMl9SUGFydGl0aW9uCi0jIGRlZmluZSBQeVVuaWNvZGVfUlNwbGl0IFB5VW5pY29kZVVDUzJfUlNwbGl0Ci0jIGRlZmluZSBQeVVuaWNvZGVfUmVwbGFjZSBQeVVuaWNvZGVVQ1MyX1JlcGxhY2UKLSMgZGVmaW5lIFB5VW5pY29kZV9SZXNpemUgUHlVbmljb2RlVUNTMl9SZXNpemUKLSMgZGVmaW5lIFB5VW5pY29kZV9SaWNoQ29tcGFyZSBQeVVuaWNvZGVVQ1MyX1JpY2hDb21wYXJlCi0jIGRlZmluZSBQeVVuaWNvZGVfU3BsaXQgUHlVbmljb2RlVUNTMl9TcGxpdAotIyBkZWZpbmUgUHlVbmljb2RlX1NwbGl0bGluZXMgUHlVbmljb2RlVUNTMl9TcGxpdGxpbmVzCi0jIGRlZmluZSBQeVVuaWNvZGVfVGFpbG1hdGNoIFB5VW5pY29kZVVDUzJfVGFpbG1hdGNoCi0jIGRlZmluZSBQeVVuaWNvZGVfVHJhbnNsYXRlIFB5VW5pY29kZVVDUzJfVHJhbnNsYXRlCi0jIGRlZmluZSBQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcCBQeVVuaWNvZGVVQ1MyX1RyYW5zbGF0ZUNoYXJtYXAKLSMgZGVmaW5lIF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyBfUHlVbmljb2RlVUNTMl9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nCi0jIGRlZmluZSBfUHlVbmljb2RlX0ZpbmkgX1B5VW5pY29kZVVDUzJfRmluaQotIyBkZWZpbmUgX1B5VW5pY29kZV9Jbml0IF9QeVVuaWNvZGVVQ1MyX0luaXQKLSMgZGVmaW5lIFB5VW5pY29kZV9zdHJkdXAgUHlVbmljb2RlVUNTMl9zdHJkdXAKLQogI2Vsc2UKLQotIyBkZWZpbmUgUHlVbmljb2RlX0FzQVNDSUlTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc0FTQ0lJU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNDaGFybWFwU3RyaW5nIFB5VW5pY29kZVVDUzRfQXNDaGFybWFwU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNEZWNvZGVkT2JqZWN0IFB5VW5pY29kZVVDUzRfQXNEZWNvZGVkT2JqZWN0Ci0jIGRlZmluZSBQeVVuaWNvZGVfQXNEZWNvZGVkVW5pY29kZSBQeVVuaWNvZGVVQ1M0X0FzRGVjb2RlZFVuaWNvZGUKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0VuY29kZWRPYmplY3QgUHlVbmljb2RlVUNTNF9Bc0VuY29kZWRPYmplY3QKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc0VuY29kZWRTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0VuY29kZWRVbmljb2RlIFB5VW5pY29kZVVDUzRfQXNFbmNvZGVkVW5pY29kZQotIyBkZWZpbmUgUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nIFB5VW5pY29kZVVDUzRfQXNMYXRpbjFTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1VURjMyU3RyaW5nIFB5VW5pY29kZVVDUzRfQXNVVEYzMlN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzVVRGMTZTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc1VURjE2U3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNVVEY4U3RyaW5nIFB5VW5pY29kZVVDUzRfQXNVVEY4U3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNVbmljb2RlIFB5VW5pY29kZVVDUzRfQXNVbmljb2RlCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nIFB5VW5pY29kZVVDUzRfQXNVbmljb2RlRXNjYXBlU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNXaWRlQ2hhciBQeVVuaWNvZGVVQ1M0X0FzV2lkZUNoYXIKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nIFB5VW5pY29kZVVDUzRfQXNXaWRlQ2hhclN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0NsZWFyRnJlZUxpc3QgUHlVbmljb2RlVUNTNF9DbGVhckZyZWVsaXN0Ci0jIGRlZmluZSBQeVVuaWNvZGVfQ29tcGFyZSBQeVVuaWNvZGVVQ1M0X0NvbXBhcmUKLSMgZGVmaW5lIFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nIFB5VW5pY29kZVVDUzRfQ29tcGFyZVdpdGhBU0NJSVN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0NvbmNhdCBQeVVuaWNvZGVVQ1M0X0NvbmNhdAotIyBkZWZpbmUgUHlVbmljb2RlX0FwcGVuZCBQeVVuaWNvZGVVQ1M0X0FwcGVuZAotIyBkZWZpbmUgUHlVbmljb2RlX0FwcGVuZEFuZERlbCBQeVVuaWNvZGVVQ1M0X0FwcGVuZEFuZERlbAotIyBkZWZpbmUgUHlVbmljb2RlX0NvbnRhaW5zIFB5VW5pY29kZVVDUzRfQ29udGFpbnMKLSMgZGVmaW5lIFB5VW5pY29kZV9Db3VudCBQeVVuaWNvZGVVQ1M0X0NvdW50Ci0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlIFB5VW5pY29kZVVDUzRfRGVjb2RlCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlQVNDSUkgUHlVbmljb2RlVUNTNF9EZWNvZGVBU0NJSQotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZUNoYXJtYXAgUHlVbmljb2RlVUNTNF9EZWNvZGVDaGFybWFwCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlTGF0aW4xIFB5VW5pY29kZVVDUzRfRGVjb2RlTGF0aW4xCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0IFB5VW5pY29kZVVDUzRfRGVjb2RlRlNEZWZhdWx0Ci0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZSBQeVVuaWNvZGVVQ1M0X0RlY29kZUZTRGVmYXVsdEFuZFNpemUKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVSYXdVbmljb2RlRXNjYXBlIFB5VW5pY29kZVVDUzRfRGVjb2RlUmF3VW5pY29kZUVzY2FwZQotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVURjMyIFB5VW5pY29kZVVDUzRfRGVjb2RlVVRGMzIKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVVVEYzMlN0YXRlZnVsIFB5VW5pY29kZVVDUzRfRGVjb2RlVVRGMzJTdGF0ZWZ1bAotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVURjE2IFB5VW5pY29kZVVDUzRfRGVjb2RlVVRGMTYKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVVVEYxNlN0YXRlZnVsIFB5VW5pY29kZVVDUzRfRGVjb2RlVVRGMTZTdGF0ZWZ1bAotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVURjggUHlVbmljb2RlVUNTNF9EZWNvZGVVVEY4Ci0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsIFB5VW5pY29kZVVDUzRfRGVjb2RlVVRGOFN0YXRlZnVsCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZSBQeVVuaWNvZGVVQ1M0X0RlY29kZVVuaWNvZGVFc2NhcGUKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGUgUHlVbmljb2RlVUNTNF9FbmNvZGUKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVBU0NJSSBQeVVuaWNvZGVVQ1M0X0VuY29kZUFTQ0lJCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlQ2hhcm1hcCBQeVVuaWNvZGVVQ1M0X0VuY29kZUNoYXJtYXAKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVEZWNpbWFsIFB5VW5pY29kZVVDUzRfRW5jb2RlRGVjaW1hbAotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZUxhdGluMSBQeVVuaWNvZGVVQ1M0X0VuY29kZUxhdGluMQotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGUgUHlVbmljb2RlVUNTNF9FbmNvZGVSYXdVbmljb2RlRXNjYXBlCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlVVRGMzIgUHlVbmljb2RlVUNTNF9FbmNvZGVVVEYzMgotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZVVURjE2IFB5VW5pY29kZVVDUzRfRW5jb2RlVVRGMTYKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVVVEY4IFB5VW5pY29kZVVDUzRfRW5jb2RlVVRGOAotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUgUHlVbmljb2RlVUNTNF9FbmNvZGVVbmljb2RlRXNjYXBlCi0jIGRlZmluZSBQeVVuaWNvZGVfRmluZCBQeVVuaWNvZGVVQ1M0X0ZpbmQKLSMgZGVmaW5lIFB5VW5pY29kZV9Gb3JtYXQgUHlVbmljb2RlVUNTNF9Gb3JtYXQKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tRW5jb2RlZE9iamVjdCBQeVVuaWNvZGVVQ1M0X0Zyb21FbmNvZGVkT2JqZWN0Ci0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbUZvcm1hdCBQeVVuaWNvZGVVQ1M0X0Zyb21Gb3JtYXQKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tRm9ybWF0ViBQeVVuaWNvZGVVQ1M0X0Zyb21Gb3JtYXRWCi0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbU9iamVjdCBQeVVuaWNvZGVVQ1M0X0Zyb21PYmplY3QKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tT3JkaW5hbCBQeVVuaWNvZGVVQ1M0X0Zyb21PcmRpbmFsCi0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbVN0cmluZyBQeVVuaWNvZGVVQ1M0X0Zyb21TdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZSBQeVVuaWNvZGVVQ1M0X0Zyb21TdHJpbmdBbmRTaXplCi0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUgUHlVbmljb2RlVUNTNF9Gcm9tVW5pY29kZQotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21XaWRlQ2hhciBQeVVuaWNvZGVVQ1M0X0Zyb21XaWRlQ2hhcgotIyBkZWZpbmUgUHlVbmljb2RlX0ZTQ29udmVydGVyIFB5VW5pY29kZVVDUzRfRlNDb252ZXJ0ZXIKLSMgZGVmaW5lIFB5VW5pY29kZV9GU0RlY29kZXIgUHlVbmljb2RlVUNTNF9GU0RlY29kZXIKLSMgZGVmaW5lIFB5VW5pY29kZV9HZXREZWZhdWx0RW5jb2RpbmcgUHlVbmljb2RlVUNTNF9HZXREZWZhdWx0RW5jb2RpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9HZXRNYXggUHlVbmljb2RlVUNTNF9HZXRNYXgKLSMgZGVmaW5lIFB5VW5pY29kZV9HZXRTaXplIFB5VW5pY29kZVVDUzRfR2V0U2l6ZQotIyBkZWZpbmUgUHlVbmljb2RlX0lzSWRlbnRpZmllciBQeVVuaWNvZGVVQ1M0X0lzSWRlbnRpZmllcgotIyBkZWZpbmUgUHlVbmljb2RlX0pvaW4gUHlVbmljb2RlVUNTNF9Kb2luCi0jIGRlZmluZSBQeVVuaWNvZGVfUGFydGl0aW9uIFB5VW5pY29kZVVDUzRfUGFydGl0aW9uCi0jIGRlZmluZSBQeVVuaWNvZGVfUlBhcnRpdGlvbiBQeVVuaWNvZGVVQ1M0X1JQYXJ0aXRpb24KLSMgZGVmaW5lIFB5VW5pY29kZV9SU3BsaXQgUHlVbmljb2RlVUNTNF9SU3BsaXQKLSMgZGVmaW5lIFB5VW5pY29kZV9SZXBsYWNlIFB5VW5pY29kZVVDUzRfUmVwbGFjZQotIyBkZWZpbmUgUHlVbmljb2RlX1Jlc2l6ZSBQeVVuaWNvZGVVQ1M0X1Jlc2l6ZQotIyBkZWZpbmUgUHlVbmljb2RlX1JpY2hDb21wYXJlIFB5VW5pY29kZVVDUzRfUmljaENvbXBhcmUKLSMgZGVmaW5lIFB5VW5pY29kZV9TcGxpdCBQeVVuaWNvZGVVQ1M0X1NwbGl0Ci0jIGRlZmluZSBQeVVuaWNvZGVfU3BsaXRsaW5lcyBQeVVuaWNvZGVVQ1M0X1NwbGl0bGluZXMKLSMgZGVmaW5lIFB5VW5pY29kZV9UYWlsbWF0Y2ggUHlVbmljb2RlVUNTNF9UYWlsbWF0Y2gKLSMgZGVmaW5lIFB5VW5pY29kZV9UcmFuc2xhdGUgUHlVbmljb2RlVUNTNF9UcmFuc2xhdGUKLSMgZGVmaW5lIFB5VW5pY29kZV9UcmFuc2xhdGVDaGFybWFwIFB5VW5pY29kZVVDUzRfVHJhbnNsYXRlQ2hhcm1hcAotIyBkZWZpbmUgX1B5VW5pY29kZV9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nIF9QeVVuaWNvZGVVQ1M0X0FzRGVmYXVsdEVuY29kZWRTdHJpbmcKLSMgZGVmaW5lIF9QeVVuaWNvZGVfRmluaSBfUHlVbmljb2RlVUNTNF9GaW5pCi0jIGRlZmluZSBfUHlVbmljb2RlX0luaXQgX1B5VW5pY29kZVVDUzRfSW5pdAotIyBkZWZpbmUgUHlVbmljb2RlX3N0cmR1cCBQeVVuaWNvZGVVQ1M0X3N0cmR1cAotCisjZXJyb3IgIkNvdWxkIG5vdCBmaW5kIGEgcHJvcGVyIHR5cGVkZWYgZm9yIFB5X1VDUzQiCiAjZW5kaWYKIAorI2lmIFNJWkVPRl9TSE9SVCA9PSAyCit0eXBlZGVmIHVuc2lnbmVkIHNob3J0IFB5X1VDUzI7CisjZWxzZQorI2Vycm9yICJDb3VsZCBub3QgZmluZCBhIHByb3BlciB0eXBlZGVmIGZvciBQeV9VQ1MyIgorI2VuZGlmCisKK3R5cGVkZWYgdW5zaWduZWQgY2hhciBQeV9VQ1MxOworCiAvKiAtLS0gSW50ZXJuYWwgVW5pY29kZSBPcGVyYXRpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAogLyogU2luY2Ugc3BsaXR0aW5nIG9uIHdoaXRlc3BhY2UgaXMgYW4gaW1wb3J0YW50IHVzZSBjYXNlLCBhbmQKQEAgLTM1MCw3ICsxNzEsNyBAQAogICAgIFB5X1VOSUNPREVfSVNESUdJVChjaCkgfHwgXAogICAgIFB5X1VOSUNPREVfSVNOVU1FUklDKGNoKSkKIAotI2RlZmluZSBQeV9VTklDT0RFX0NPUFkodGFyZ2V0LCBzb3VyY2UsIGxlbmd0aCkgICAgICAgICAgICAgICAgICAgICAgICAgXAorI2RlZmluZSBQeV9VTklDT0RFX0NPUFkodGFyZ2V0LCBzb3VyY2UsIGxlbmd0aCkgXAogICAgIFB5X01FTUNQWSgodGFyZ2V0KSwgKHNvdXJjZSksIChsZW5ndGgpKnNpemVvZihQeV9VTklDT0RFKSkKIAogI2RlZmluZSBQeV9VTklDT0RFX0ZJTEwodGFyZ2V0LCB2YWx1ZSwgbGVuZ3RoKSBcCkBAIC0zNTgsMTMgKzE3OSwyNyBAQAogICAgIGZvciAoaV8gPSAwOyBpXyA8IChsZW5ndGgpOyBpXysrKSB0X1tpX10gPSB2XztcCiAgICAgfSB3aGlsZSAoMCkKIAorLyogbWFjcm9zIHRvIHdvcmsgd2l0aCBzdXJyb2dhdGVzICovCisjZGVmaW5lIFB5X1VOSUNPREVfSVNfU1VSUk9HQVRFKGNoKSAoMHhEODAwIDw9IGNoICYmIGNoIDw9IDB4REZGRikKKyNkZWZpbmUgUHlfVU5JQ09ERV9JU19ISUdIX1NVUlJPR0FURShjaCkgKDB4RDgwMCA8PSBjaCAmJiBjaCA8PSAweERCRkYpCisjZGVmaW5lIFB5X1VOSUNPREVfSVNfTE9XX1NVUlJPR0FURShjaCkgKDB4REMwMCA8PSBjaCAmJiBjaCA8PSAweERGRkYpCisvKiBKb2luIHR3byBzdXJyb2dhdGUgY2hhcmFjdGVycyBhbmQgcmV0dXJuIGEgc2luZ2xlIFB5X1VDUzQgdmFsdWUuICovCisjZGVmaW5lIFB5X1VOSUNPREVfSk9JTl9TVVJST0dBVEVTKGhpZ2gsIGxvdykgIFwKKyAgICAoKCgoKFB5X1VDUzQpKGhpZ2gpICYgMHgwM0ZGKSA8PCAxMCkgfCAgICAgIFwKKyAgICAgICgoUHlfVUNTNCkobG93KSAmIDB4MDNGRikpICsgMHgxMDAwMCkKKy8qIGhpZ2ggc3Vycm9nYXRlID0gdG9wIDEwIGJpdHMgYWRkZWQgdG8gRDgwMCAqLworI2RlZmluZSBQeV9VTklDT0RFX0hJR0hfU1VSUk9HQVRFKGNoKSAoMHhEODAwIHwgKCgoY2gpIC0gMHgxMDAwMCkgPj4gMTApKQorLyogbG93IHN1cnJvZ2F0ZSA9IGJvdHRvbSAxMCBiaXRzIGFkZGVkIHRvIERDMDAgKi8KKyNkZWZpbmUgUHlfVU5JQ09ERV9MT1dfU1VSUk9HQVRFKGNoKSAoMHhEQzAwIHwgKCgoY2gpIC0gMHgxMDAwMCkgJiAweDNGRikpCisKIC8qIENoZWNrIGlmIHN1YnN0cmluZyBtYXRjaGVzIGF0IGdpdmVuIG9mZnNldC4gIFRoZSBvZmZzZXQgbXVzdCBiZQogICAgdmFsaWQsIGFuZCB0aGUgc3Vic3RyaW5nIG11c3Qgbm90IGJlIGVtcHR5LiAqLwogCiAjZGVmaW5lIFB5X1VOSUNPREVfTUFUQ0goc3RyaW5nLCBvZmZzZXQsIHN1YnN0cmluZykgXAotICAgICgoKigoc3RyaW5nKS0+c3RyICsgKG9mZnNldCkpID09ICooKHN1YnN0cmluZyktPnN0cikpICYmIFwKLSAgICAoKCooKHN0cmluZyktPnN0ciArIChvZmZzZXQpICsgKHN1YnN0cmluZyktPmxlbmd0aC0xKSA9PSAqKChzdWJzdHJpbmcpLT5zdHIgKyAoc3Vic3RyaW5nKS0+bGVuZ3RoLTEpKSkgJiYgXAotICAgICAhbWVtY21wKChzdHJpbmcpLT5zdHIgKyAob2Zmc2V0KSwgKHN1YnN0cmluZyktPnN0ciwgKHN1YnN0cmluZyktPmxlbmd0aCpzaXplb2YoUHlfVU5JQ09ERSkpKQorICAgICgoKigoc3RyaW5nKS0+d3N0ciArIChvZmZzZXQpKSA9PSAqKChzdWJzdHJpbmcpLT53c3RyKSkgJiYgXAorICAgICAoKCooKHN0cmluZyktPndzdHIgKyAob2Zmc2V0KSArIChzdWJzdHJpbmcpLT53c3RyX2xlbmd0aC0xKSA9PSAqKChzdWJzdHJpbmcpLT53c3RyICsgKHN1YnN0cmluZyktPndzdHJfbGVuZ3RoLTEpKSkgJiYgXAorICAgICAhbWVtY21wKChzdHJpbmcpLT53c3RyICsgKG9mZnNldCksIChzdWJzdHJpbmcpLT53c3RyLCAoc3Vic3RyaW5nKS0+d3N0cl9sZW5ndGgqc2l6ZW9mKFB5X1VOSUNPREUpKSkKKwogI2VuZGlmIC8qIFB5X0xJTUlURURfQVBJICovCiAKICNpZmRlZiBfX2NwbHVzcGx1cwpAQCAtMzc0LDQxICsyMDksMzc0IEBACiAvKiAtLS0gVW5pY29kZSBUeXBlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQorCisvKiBBU0NJSS1vbmx5IHN0cmluZ3MgY3JlYXRlZCB0aHJvdWdoIFB5VW5pY29kZV9OZXcgdXNlIHRoZSBQeUFTQ0lJT2JqZWN0CisgICBzdHJ1Y3R1cmUuIHN0YXRlLmFzY2lpIGFuZCBzdGF0ZS5jb21wYWN0IGFyZSBzZXQsIGFuZCB0aGUgZGF0YQorICAgaW1tZWRpYXRlbHkgZm9sbG93IHRoZSBzdHJ1Y3R1cmUuIHV0ZjhfbGVuZ3RoIGFuZCB3c3RyX2xlbmd0aCBjYW4gYmUgZm91bmQKKyAgIGluIHRoZSBsZW5ndGggZmllbGQ7IHRoZSB1dGY4IHBvaW50ZXIgaXMgZXF1YWwgdG8gdGhlIGRhdGEgcG9pbnRlci4gKi8KIHR5cGVkZWYgc3RydWN0IHsKKyAgICAvKiBUaGVyZSBhcmUgNCBmb3JtcyBvZiBVbmljb2RlIHN0cmluZ3M6CisKKyAgICAgICAtIGNvbXBhY3QgYXNjaWk6CisKKyAgICAgICAgICogc3RydWN0dXJlID0gUHlBU0NJSU9iamVjdAorICAgICAgICAgKiB0ZXN0OiBQeVVuaWNvZGVfSVNfQ09NUEFDVF9BU0NJSShvcCkKKyAgICAgICAgICoga2luZCA9IFB5VW5pY29kZV8xQllURV9LSU5ECisgICAgICAgICAqIGNvbXBhY3QgPSAxCisgICAgICAgICAqIGFzY2lpID0gMQorICAgICAgICAgKiByZWFkeSA9IDEKKyAgICAgICAgICogKGxlbmd0aCBpcyB0aGUgbGVuZ3RoIG9mIHRoZSB1dGY4IGFuZCB3c3RyIHN0cmluZ3MpCisgICAgICAgICAqIChkYXRhIHN0YXJ0cyBqdXN0IGFmdGVyIHRoZSBzdHJ1Y3R1cmUpCisgICAgICAgICAqIChzaW5jZSBBU0NJSSBpcyBkZWNvZGVkIGZyb20gVVRGLTgsIHRoZSB1dGY4IHN0cmluZyBhcmUgdGhlIGRhdGEpCisKKyAgICAgICAtIGNvbXBhY3Q6CisKKyAgICAgICAgICogc3RydWN0dXJlID0gUHlDb21wYWN0VW5pY29kZU9iamVjdAorICAgICAgICAgKiB0ZXN0OiBQeVVuaWNvZGVfSVNfQ09NUEFDVChvcCkgJiYgIVB5VW5pY29kZV9JU19BU0NJSShvcCkKKyAgICAgICAgICoga2luZCA9IFB5VW5pY29kZV8xQllURV9LSU5ELCBQeVVuaWNvZGVfMkJZVEVfS0lORCBvcgorICAgICAgICAgICBQeVVuaWNvZGVfNEJZVEVfS0lORAorICAgICAgICAgKiBjb21wYWN0ID0gMQorICAgICAgICAgKiByZWFkeSA9IDEKKyAgICAgICAgICogYXNjaWkgPSAwCisgICAgICAgICAqIHV0ZjggaXMgbm90IHNoYXJlZCB3aXRoIGRhdGEKKyAgICAgICAgICogdXRmOF9sZW5ndGggPSAwIGlmIHV0ZjggaXMgTlVMTAorICAgICAgICAgKiB3c3RyIGlzIHNoYXJlZCB3aXRoIGRhdGEgYW5kIHdzdHJfbGVuZ3RoPWxlbmd0aAorICAgICAgICAgICBpZiBraW5kPVB5VW5pY29kZV8yQllURV9LSU5EIGFuZCBzaXplb2Yod2NoYXJfdCk9MgorICAgICAgICAgICBvciBpZiBraW5kPVB5VW5pY29kZV80QllURV9LSU5EIGFuZCBzaXplb2Yod2NoYXJfdCk9NAorICAgICAgICAgKiB3c3RyX2xlbmd0aCA9IDAgaWYgd3N0ciBpcyBOVUxMCisgICAgICAgICAqIChkYXRhIHN0YXJ0cyBqdXN0IGFmdGVyIHRoZSBzdHJ1Y3R1cmUpCisKKyAgICAgICAtIGxlZ2FjeSBzdHJpbmcsIG5vdCByZWFkeToKKworICAgICAgICAgKiBzdHJ1Y3R1cmUgPSBQeVVuaWNvZGVPYmplY3QKKyAgICAgICAgICogdGVzdDoga2luZCA9PSBQeVVuaWNvZGVfV0NIQVJfS0lORAorICAgICAgICAgKiBsZW5ndGggPSAwICh1c2Ugd3N0cl9sZW5ndGgpCisgICAgICAgICAqIGhhc2ggPSAtMQorICAgICAgICAgKiBraW5kID0gUHlVbmljb2RlX1dDSEFSX0tJTkQKKyAgICAgICAgICogY29tcGFjdCA9IDAKKyAgICAgICAgICogYXNjaWkgPSAwCisgICAgICAgICAqIHJlYWR5ID0gMAorICAgICAgICAgKiBpbnRlcm5lZCA9IFNTVEFURV9OT1RfSU5URVJORUQKKyAgICAgICAgICogd3N0ciBpcyBub3QgTlVMTAorICAgICAgICAgKiBkYXRhLmFueSBpcyBOVUxMCisgICAgICAgICAqIHV0ZjggaXMgTlVMTAorICAgICAgICAgKiB1dGY4X2xlbmd0aCA9IDAKKworICAgICAgIC0gbGVnYWN5IHN0cmluZywgcmVhZHk6CisKKyAgICAgICAgICogc3RydWN0dXJlID0gUHlVbmljb2RlT2JqZWN0IHN0cnVjdHVyZQorICAgICAgICAgKiB0ZXN0OiAhUHlVbmljb2RlX0lTX0NPTVBBQ1Qob3ApICYmIGtpbmQgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQKKyAgICAgICAgICoga2luZCA9IFB5VW5pY29kZV8xQllURV9LSU5ELCBQeVVuaWNvZGVfMkJZVEVfS0lORCBvcgorICAgICAgICAgICBQeVVuaWNvZGVfNEJZVEVfS0lORAorICAgICAgICAgKiBjb21wYWN0ID0gMAorICAgICAgICAgKiByZWFkeSA9IDEKKyAgICAgICAgICogZGF0YS5hbnkgaXMgbm90IE5VTEwKKyAgICAgICAgICogdXRmOCBpcyBzaGFyZWQgYW5kIHV0ZjhfbGVuZ3RoID0gbGVuZ3RoIHdpdGggZGF0YS5hbnkgaWYgYXNjaWkgPSAxCisgICAgICAgICAqIHV0ZjhfbGVuZ3RoID0gMCBpZiB1dGY4IGlzIE5VTEwKKyAgICAgICAgICogd3N0ciBpcyBzaGFyZWQgd2l0aCBkYXRhLmFueSBhbmQgd3N0cl9sZW5ndGggPSBsZW5ndGgKKyAgICAgICAgICAgaWYga2luZD1QeVVuaWNvZGVfMkJZVEVfS0lORCBhbmQgc2l6ZW9mKHdjaGFyX3QpPTIKKyAgICAgICAgICAgb3IgaWYga2luZD1QeVVuaWNvZGVfNEJZVEVfS0lORCBhbmQgc2l6ZW9mKHdjaGFyXzQpPTQKKyAgICAgICAgICogd3N0cl9sZW5ndGggPSAwIGlmIHdzdHIgaXMgTlVMTAorCisgICAgICAgQ29tcGFjdCBzdHJpbmdzIHVzZSBvbmx5IG9uZSBtZW1vcnkgYmxvY2sgKHN0cnVjdHVyZSArIGNoYXJhY3RlcnMpLAorICAgICAgIHdoZXJlYXMgbGVnYWN5IHN0cmluZ3MgdXNlIG9uZSBibG9jayBmb3IgdGhlIHN0cnVjdHVyZSBhbmQgb25lIGJsb2NrCisgICAgICAgZm9yIGNoYXJhY3RlcnMuCisKKyAgICAgICBMZWdhY3kgc3RyaW5ncyBhcmUgY3JlYXRlZCBieSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoKSBhbmQKKyAgICAgICBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgc2l6ZSkgZnVuY3Rpb25zLiBUaGV5IGJlY29tZSByZWFkeQorICAgICAgIHdoZW4gUHlVbmljb2RlX1JFQURZKCkgaXMgY2FsbGVkLgorCisgICAgICAgU2VlIGFsc28gX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KCkuCisgICAgKi8KICAgICBQeU9iamVjdF9IRUFECi0gICAgUHlfc3NpemVfdCBsZW5ndGg7ICAgICAgICAgIC8qIExlbmd0aCBvZiByYXcgVW5pY29kZSBkYXRhIGluIGJ1ZmZlciAqLwotICAgIFB5X1VOSUNPREUgKnN0cjsgICAgICAgICAgICAvKiBSYXcgVW5pY29kZSBidWZmZXIgKi8KKyAgICBQeV9zc2l6ZV90IGxlbmd0aDsgICAgICAgICAgLyogTnVtYmVyIG9mIGNvZGUgcG9pbnRzIGluIHRoZSBzdHJpbmcgKi8KICAgICBQeV9oYXNoX3QgaGFzaDsgICAgICAgICAgICAgLyogSGFzaCB2YWx1ZTsgLTEgaWYgbm90IHNldCAqLwotICAgIGludCBzdGF0ZTsgICAgICAgICAgICAgICAgICAvKiAhPSAwIGlmIGludGVybmVkLiBJbiB0aGlzIGNhc2UgdGhlIHR3bwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiByZWZlcmVuY2VzIGZyb20gdGhlIGRpY3Rpb25hcnkgdG8gdGhpcyBvYmplY3QKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogYXJlICpub3QqIGNvdW50ZWQgaW4gb2JfcmVmY250LiAqLwotICAgIFB5T2JqZWN0ICpkZWZlbmM7ICAgICAgICAgICAvKiAoRGVmYXVsdCkgRW5jb2RlZCB2ZXJzaW9uIGFzIFB5dGhvbgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcsIG9yIE5VTEw7IHRoaXMgaXMgdXNlZCBmb3IKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1wbGVtZW50aW5nIHRoZSBidWZmZXIgcHJvdG9jb2wgKi8KKyAgICBzdHJ1Y3QgeworICAgICAgICAvKgorICAgICAgICAgICBTU1RBVEVfTk9UX0lOVEVSTkVEICgwKQorICAgICAgICAgICBTU1RBVEVfSU5URVJORURfTU9SVEFMICgxKQorICAgICAgICAgICBTU1RBVEVfSU5URVJORURfSU1NT1JUQUwgKDIpCisKKyAgICAgICAgICAgSWYgaW50ZXJuZWQgIT0gU1NUQVRFX05PVF9JTlRFUk5FRCwgdGhlIHR3byByZWZlcmVuY2VzIGZyb20gdGhlCisgICAgICAgICAgIGRpY3Rpb25hcnkgdG8gdGhpcyBvYmplY3QgYXJlICpub3QqIGNvdW50ZWQgaW4gb2JfcmVmY250LgorICAgICAgICAgKi8KKyAgICAgICAgdW5zaWduZWQgaW50IGludGVybmVkOjI7CisgICAgICAgIC8qIENoYXJhY3RlciBzaXplOgorCisgICAgICAgICAgIC0gUHlVbmljb2RlX1dDSEFSX0tJTkQgKDApOgorCisgICAgICAgICAgICAgKiBjaGFyYWN0ZXIgdHlwZSA9IHdjaGFyX3QgKDE2IG9yIDMyIGJpdHMsIGRlcGVuZGluZyBvbiB0aGUKKyAgICAgICAgICAgICAgIHBsYXRmb3JtKQorCisgICAgICAgICAgIC0gUHlVbmljb2RlXzFCWVRFX0tJTkQgKDEpOgorCisgICAgICAgICAgICAgKiBjaGFyYWN0ZXIgdHlwZSA9IFB5X1VDUzEgKDggYml0cywgdW5zaWduZWQpCisgICAgICAgICAgICAgKiBhbGwgY2hhcmFjdGVycyBhcmUgaW4gdGhlIHJhbmdlIFUrMDAwMC1VKzAwRkYgKGxhdGluMSkKKyAgICAgICAgICAgICAqIGlmIGFzY2lpIGlzIHNldCwgYWxsIGNoYXJhY3RlcnMgYXJlIGluIHRoZSByYW5nZSBVKzAwMDAtVSswMDdGCisgICAgICAgICAgICAgICAoQVNDSUkpLCBvdGhlcndpc2UgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciBpcyBpbiB0aGUgcmFuZ2UKKyAgICAgICAgICAgICAgIFUrMDA4MC1VKzAwRkYKKworICAgICAgICAgICAtIFB5VW5pY29kZV8yQllURV9LSU5EICgyKToKKworICAgICAgICAgICAgICogY2hhcmFjdGVyIHR5cGUgPSBQeV9VQ1MyICgxNiBiaXRzLCB1bnNpZ25lZCkKKyAgICAgICAgICAgICAqIGFsbCBjaGFyYWN0ZXJzIGFyZSBpbiB0aGUgcmFuZ2UgVSswMDAwLVUrRkZGRiAoQk1QKQorICAgICAgICAgICAgICogYXQgbGVhc3Qgb25lIGNoYXJhY3RlciBpcyBpbiB0aGUgcmFuZ2UgVSswMTAwLVUrRkZGRgorCisgICAgICAgICAgIC0gUHlVbmljb2RlXzRCWVRFX0tJTkQgKDQpOgorCisgICAgICAgICAgICAgKiBjaGFyYWN0ZXIgdHlwZSA9IFB5X1VDUzQgKDMyIGJpdHMsIHVuc2lnbmVkKQorICAgICAgICAgICAgICogYWxsIGNoYXJhY3RlcnMgYXJlIGluIHRoZSByYW5nZSBVKzAwMDAtVSsxMEZGRkYKKyAgICAgICAgICAgICAqIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIgaXMgaW4gdGhlIHJhbmdlIFUrMTAwMDAtVSsxMEZGRkYKKyAgICAgICAgICovCisgICAgICAgIHVuc2lnbmVkIGludCBraW5kOjM7CisgICAgICAgIC8qIENvbXBhY3QgaXMgd2l0aCByZXNwZWN0IHRvIHRoZSBhbGxvY2F0aW9uIHNjaGVtZS4gQ29tcGFjdCB1bmljb2RlCisgICAgICAgICAgIG9iamVjdHMgb25seSByZXF1aXJlIG9uZSBtZW1vcnkgYmxvY2sgd2hpbGUgbm9uLWNvbXBhY3Qgb2JqZWN0cyB1c2UKKyAgICAgICAgICAgb25lIGJsb2NrIGZvciB0aGUgUHlVbmljb2RlT2JqZWN0IHN0cnVjdCBhbmQgYW5vdGhlciBmb3IgaXRzIGRhdGEKKyAgICAgICAgICAgYnVmZmVyLiAqLworICAgICAgICB1bnNpZ25lZCBpbnQgY29tcGFjdDoxOworICAgICAgICAvKiBUaGUgc3RyaW5nIG9ubHkgY29udGFpbnMgY2hhcmFjdGVycyBpbiB0aGUgcmFuZ2UgVSswMDAwLVUrMDA3RiAoQVNDSUkpCisgICAgICAgICAgIGFuZCB0aGUga2luZCBpcyBQeVVuaWNvZGVfMUJZVEVfS0lORC4gSWYgYXNjaWkgaXMgc2V0IGFuZCBjb21wYWN0IGlzCisgICAgICAgICAgIHNldCwgdXNlIHRoZSBQeUFTQ0lJT2JqZWN0IHN0cnVjdHVyZS4gKi8KKyAgICAgICAgdW5zaWduZWQgaW50IGFzY2lpOjE7CisgICAgICAgIC8qIFRoZSByZWFkeSBmbGFnIGluZGljYXRlcyB3aGV0aGVyIHRoZSBvYmplY3QgbGF5b3V0IGlzIGluaXRpYWxpemVkCisgICAgICAgICAgIGNvbXBsZXRlbHkuIFRoaXMgbWVhbnMgdGhhdCB0aGlzIGlzIGVpdGhlciBhIGNvbXBhY3Qgb2JqZWN0LCBvcgorICAgICAgICAgICB0aGUgZGF0YSBwb2ludGVyIGlzIGZpbGxlZCBvdXQuIFRoZSBiaXQgaXMgcmVkdW5kYW50LCBhbmQgaGVscHMKKyAgICAgICAgICAgdG8gbWluaW1pemUgdGhlIHRlc3QgaW4gUHlVbmljb2RlX0lTX1JFQURZKCkuICovCisgICAgICAgIHVuc2lnbmVkIGludCByZWFkeToxOworICAgIH0gc3RhdGU7CisgICAgd2NoYXJfdCAqd3N0cjsgICAgICAgICAgICAgIC8qIHdjaGFyX3QgcmVwcmVzZW50YXRpb24gKG51bGwtdGVybWluYXRlZCkgKi8KK30gUHlBU0NJSU9iamVjdDsKKworLyogTm9uLUFTQ0lJIHN0cmluZ3MgYWxsb2NhdGVkIHRocm91Z2ggUHlVbmljb2RlX05ldyB1c2UgdGhlCisgICBQeUNvbXBhY3RVbmljb2RlT2JqZWN0IHN0cnVjdHVyZS4gc3RhdGUuY29tcGFjdCBpcyBzZXQsIGFuZCB0aGUgZGF0YQorICAgaW1tZWRpYXRlbHkgZm9sbG93IHRoZSBzdHJ1Y3R1cmUuICovCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlBU0NJSU9iamVjdCBfYmFzZTsKKyAgICBQeV9zc2l6ZV90IHV0ZjhfbGVuZ3RoOyAgICAgLyogTnVtYmVyIG9mIGJ5dGVzIGluIHV0ZjgsIGV4Y2x1ZGluZyB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogdGVybWluYXRpbmcgXDAuICovCisgICAgY2hhciAqdXRmODsgICAgICAgICAgICAgICAgIC8qIFVURi04IHJlcHJlc2VudGF0aW9uIChudWxsLXRlcm1pbmF0ZWQpICovCisgICAgUHlfc3NpemVfdCB3c3RyX2xlbmd0aDsgICAgIC8qIE51bWJlciBvZiBjb2RlIHBvaW50cyBpbiB3c3RyLCBwb3NzaWJsZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiBzdXJyb2dhdGVzIGNvdW50IGFzIHR3byBjb2RlIHBvaW50cy4gKi8KK30gUHlDb21wYWN0VW5pY29kZU9iamVjdDsKKworLyogU3RyaW5ncyBhbGxvY2F0ZWQgdGhyb3VnaCBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgbGVuKSB1c2UgdGhlCisgICBQeVVuaWNvZGVPYmplY3Qgc3RydWN0dXJlLiBUaGUgYWN0dWFsIHN0cmluZyBkYXRhIGlzIGluaXRpYWxseSBpbiB0aGUgd3N0cgorICAgYmxvY2ssIGFuZCBjb3BpZWQgaW50byB0aGUgZGF0YSBibG9jayB1c2luZyBfUHlVbmljb2RlX1JlYWR5LiAqLwordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5Q29tcGFjdFVuaWNvZGVPYmplY3QgX2Jhc2U7CisgICAgdW5pb24geworICAgICAgICB2b2lkICphbnk7CisgICAgICAgIFB5X1VDUzEgKmxhdGluMTsKKyAgICAgICAgUHlfVUNTMiAqdWNzMjsKKyAgICAgICAgUHlfVUNTNCAqdWNzNDsKKyAgICB9IGRhdGE7ICAgICAgICAgICAgICAgICAgICAgLyogQ2Fub25pY2FsLCBzbWFsbGVzdC1mb3JtIFVuaWNvZGUgYnVmZmVyICovCiB9IFB5VW5pY29kZU9iamVjdDsKICNlbmRpZgogCiBQeUFQSV9EQVRBKFB5VHlwZU9iamVjdCkgUHlVbmljb2RlX1R5cGU7CiBQeUFQSV9EQVRBKFB5VHlwZU9iamVjdCkgUHlVbmljb2RlSXRlcl9UeXBlOwogCi0jZGVmaW5lIFNTVEFURV9OT1RfSU5URVJORUQgMAotI2RlZmluZSBTU1RBVEVfSU5URVJORURfTU9SVEFMIDEKLSNkZWZpbmUgU1NUQVRFX0lOVEVSTkVEX0lNTU9SVEFMIDIKLQogI2RlZmluZSBQeVVuaWNvZGVfQ2hlY2sob3ApIFwKICAgICAgICAgICAgICAgICAgUHlUeXBlX0Zhc3RTdWJjbGFzcyhQeV9UWVBFKG9wKSwgUHlfVFBGTEFHU19VTklDT0RFX1NVQkNMQVNTKQogI2RlZmluZSBQeVVuaWNvZGVfQ2hlY2tFeGFjdChvcCkgKFB5X1RZUEUob3ApID09ICZQeVVuaWNvZGVfVHlwZSkKIAogLyogRmFzdCBhY2Nlc3MgbWFjcm9zICovCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCi0jZGVmaW5lIFB5VW5pY29kZV9HRVRfU0laRShvcCkgXAotICAgIChhc3NlcnQoUHlVbmljb2RlX0NoZWNrKG9wKSksKCgoUHlVbmljb2RlT2JqZWN0ICopKG9wKSktPmxlbmd0aCkpCisKKyNkZWZpbmUgUHlVbmljb2RlX1dTVFJfTEVOR1RIKG9wKSBcCisgICAgKFB5VW5pY29kZV9JU19DT01QQUNUX0FTQ0lJKG9wKSA/ICAgICAgICAgICAgICAgICAgXAorICAgICAoKFB5QVNDSUlPYmplY3QqKW9wKS0+bGVuZ3RoIDogICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKChQeUNvbXBhY3RVbmljb2RlT2JqZWN0KilvcCktPndzdHJfbGVuZ3RoKQorCisvKiBSZXR1cm5zIHRoZSBkZXByZWNhdGVkIFB5X1VOSUNPREUgcmVwcmVzZW50YXRpb24ncyBzaXplIGluIGNvZGUgdW5pdHMKKyAgICh0aGlzIGluY2x1ZGVzIHN1cnJvZ2F0ZSBwYWlycyBhcyAyIHVuaXRzKS4KKyAgIElmIHRoZSBQeV9VTklDT0RFIHJlcHJlc2VudGF0aW9uIGlzIG5vdCBhdmFpbGFibGUsIGl0IHdpbGwgYmUgY29tcHV0ZWQKKyAgIG9uIHJlcXVlc3QuICBVc2UgUHlVbmljb2RlX0dFVF9MRU5HVEgoKSBmb3IgdGhlIGxlbmd0aCBpbiBjb2RlIHBvaW50cy4gKi8KKworI2RlZmluZSBQeVVuaWNvZGVfR0VUX1NJWkUob3ApICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKCgoUHlBU0NJSU9iamVjdCAqKShvcCkpLT53c3RyKSA/ICAgICAgICAgICAgICAgXAorICAgICAgUHlVbmljb2RlX1dTVFJfTEVOR1RIKG9wKSA6ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAoKHZvaWQpUHlVbmljb2RlX0FzVW5pY29kZSgoUHlPYmplY3QgKikob3ApKSwgIFwKKyAgICAgICBhc3NlcnQoKChQeUFTQ0lJT2JqZWN0ICopKG9wKSktPndzdHIpLCAgICAgICAgXAorICAgICAgIFB5VW5pY29kZV9XU1RSX0xFTkdUSChvcCkpKQorCiAjZGVmaW5lIFB5VW5pY29kZV9HRVRfREFUQV9TSVpFKG9wKSBcCi0gICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwoKChQeVVuaWNvZGVPYmplY3QgKikob3ApKS0+bGVuZ3RoICogc2l6ZW9mKFB5X1VOSUNPREUpKSkKKyAgICAoUHlVbmljb2RlX0dFVF9TSVpFKG9wKSAqIFB5X1VOSUNPREVfU0laRSkKKworLyogQWxpYXMgZm9yIFB5VW5pY29kZV9Bc1VuaWNvZGUoKS4gIFRoaXMgd2lsbCBjcmVhdGUgYSB3Y2hhcl90L1B5X1VOSUNPREUKKyAgIHJlcHJlc2VudGF0aW9uIG9uIGRlbWFuZC4gIFVzaW5nIHRoaXMgbWFjcm8gaXMgdmVyeSBpbmVmZmljaWVudCBub3csCisgICB0cnkgdG8gcG9ydCB5b3VyIGNvZGUgdG8gdXNlIHRoZSBuZXcgUHlVbmljb2RlXypCWVRFX0RBVEEoKSBtYWNyb3Mgb3IKKyAgIHVzZSBQeVVuaWNvZGVfV1JJVEUoKSBhbmQgUHlVbmljb2RlX1JFQUQoKS4gKi8KKwogI2RlZmluZSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvcCkgXAotICAgIChhc3NlcnQoUHlVbmljb2RlX0NoZWNrKG9wKSksKCgoUHlVbmljb2RlT2JqZWN0ICopKG9wKSktPnN0cikpCisgICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwgXAorICAgICAoKChQeUFTQ0lJT2JqZWN0ICopKG9wKSktPndzdHIpID8gKCgoUHlBU0NJSU9iamVjdCAqKShvcCkpLT53c3RyKSA6IFwKKyAgICAgIFB5VW5pY29kZV9Bc1VuaWNvZGUoKFB5T2JqZWN0ICopKG9wKSkpCisKICNkZWZpbmUgUHlVbmljb2RlX0FTX0RBVEEob3ApIFwKLSAgICAoYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhvcCkpLCgoY29uc3QgY2hhciAqKSgoUHlVbmljb2RlT2JqZWN0ICopKG9wKSktPnN0cikpCisgICAgKChjb25zdCBjaGFyICopKFB5VW5pY29kZV9BU19VTklDT0RFKG9wKSkpCisKKworLyogLS0tIEZsZXhpYmxlIFN0cmluZyBSZXByZXNlbnRhdGlvbiBIZWxwZXIgTWFjcm9zIChQRVAgMzkzKSAtLS0tLS0tLS0tLS0tLSAqLworCisvKiBWYWx1ZXMgZm9yIFB5QVNDSUlPYmplY3Quc3RhdGU6ICovCisKKy8qIEludGVybmluZyBzdGF0ZS4gKi8KKyNkZWZpbmUgU1NUQVRFX05PVF9JTlRFUk5FRCAwCisjZGVmaW5lIFNTVEFURV9JTlRFUk5FRF9NT1JUQUwgMQorI2RlZmluZSBTU1RBVEVfSU5URVJORURfSU1NT1JUQUwgMgorCisvKiBSZXR1cm4gdHJ1ZSBpZiB0aGUgc3RyaW5nIGNvbnRhaW5zIG9ubHkgQVNDSUkgY2hhcmFjdGVycywgb3IgMCBpZiBub3QuIFRoZQorICAgc3RyaW5nIG1heSBiZSBjb21wYWN0IChQeVVuaWNvZGVfSVNfQ09NUEFDVF9BU0NJSSkgb3Igbm90LCBidXQgbXVzdCBiZQorICAgcmVhZHkuICovCisjZGVmaW5lIFB5VW5pY29kZV9JU19BU0NJSShvcCkgICAgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoUHlVbmljb2RlX0NoZWNrKG9wKSksICAgICAgICAgICAgICAgIFwKKyAgICAgYXNzZXJ0KFB5VW5pY29kZV9JU19SRUFEWShvcCkpLCAgICAgICAgICAgICBcCisgICAgICgoUHlBU0NJSU9iamVjdCopb3ApLT5zdGF0ZS5hc2NpaSkKKworLyogUmV0dXJuIHRydWUgaWYgdGhlIHN0cmluZyBpcyBjb21wYWN0IG9yIDAgaWYgbm90LgorICAgTm8gdHlwZSBjaGVja3Mgb3IgUmVhZHkgY2FsbHMgYXJlIHBlcmZvcm1lZC4gKi8KKyNkZWZpbmUgUHlVbmljb2RlX0lTX0NPTVBBQ1Qob3ApIFwKKyAgICAoKChQeUFTQ0lJT2JqZWN0Kikob3ApKS0+c3RhdGUuY29tcGFjdCkKKworLyogUmV0dXJuIHRydWUgaWYgdGhlIHN0cmluZyBpcyBhIGNvbXBhY3QgQVNDSUkgc3RyaW5nICh1c2UgUHlBU0NJSU9iamVjdAorICAgc3RydWN0dXJlKSwgb3IgMCBpZiBub3QuICBObyB0eXBlIGNoZWNrcyBvciBSZWFkeSBjYWxscyBhcmUgcGVyZm9ybWVkLiAqLworI2RlZmluZSBQeVVuaWNvZGVfSVNfQ09NUEFDVF9BU0NJSShvcCkgICAgICAgICAgICAgICAgIFwKKyAgICAoKChQeUFTQ0lJT2JqZWN0KilvcCktPnN0YXRlLmFzY2lpICYmIFB5VW5pY29kZV9JU19DT01QQUNUKG9wKSkKKworZW51bSBQeVVuaWNvZGVfS2luZCB7CisvKiBTdHJpbmcgY29udGFpbnMgb25seSB3c3RyIGJ5dGUgY2hhcmFjdGVycy4gIFRoaXMgaXMgb25seSBwb3NzaWJsZQorICAgd2hlbiB0aGUgc3RyaW5nIHdhcyBjcmVhdGVkIHdpdGggYSBsZWdhY3kgQVBJIGFuZCBfUHlVbmljb2RlX1JlYWR5KCkKKyAgIGhhcyBub3QgYmVlbiBjYWxsZWQgeWV0LiAgKi8KKyAgICBQeVVuaWNvZGVfV0NIQVJfS0lORCA9IDAsCisvKiBSZXR1cm4gdmFsdWVzIG9mIHRoZSBQeVVuaWNvZGVfS0lORCgpIG1hY3JvOiAqLworICAgIFB5VW5pY29kZV8xQllURV9LSU5EID0gMSwKKyAgICBQeVVuaWNvZGVfMkJZVEVfS0lORCA9IDIsCisgICAgUHlVbmljb2RlXzRCWVRFX0tJTkQgPSA0Cit9OworCisvKiBSZXR1cm4gcG9pbnRlcnMgdG8gdGhlIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiBjYXN0IHRvIHVuc2lnbmVkIGNoYXIsCisgICBQeV9VQ1MyLCBvciBQeV9VQ1M0IGZvciBkaXJlY3QgY2hhcmFjdGVyIGFjY2Vzcy4KKyAgIE5vIGNoZWNrcyBhcmUgcGVyZm9ybWVkLCB1c2UgUHlVbmljb2RlX0tJTkQoKSBiZWZvcmUgdG8gZW5zdXJlCisgICB0aGVzZSB3aWxsIHdvcmsgY29ycmVjdGx5LiAqLworCisjZGVmaW5lIFB5VW5pY29kZV8xQllURV9EQVRBKG9wKSAoKFB5X1VDUzEqKVB5VW5pY29kZV9EQVRBKG9wKSkKKyNkZWZpbmUgUHlVbmljb2RlXzJCWVRFX0RBVEEob3ApICgoUHlfVUNTMiopUHlVbmljb2RlX0RBVEEob3ApKQorI2RlZmluZSBQeVVuaWNvZGVfNEJZVEVfREFUQShvcCkgKChQeV9VQ1M0KilQeVVuaWNvZGVfREFUQShvcCkpCisKKy8qIFJldHVybiBvbmUgb2YgdGhlIFB5VW5pY29kZV8qX0tJTkQgdmFsdWVzIGRlZmluZWQgYWJvdmUuICovCisjZGVmaW5lIFB5VW5pY29kZV9LSU5EKG9wKSBcCisgICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwgXAorICAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKG9wKSksICAgICAgICAgICAgXAorICAgICAoKFB5QVNDSUlPYmplY3QgKikob3ApKS0+c3RhdGUua2luZCkKKworLyogUmV0dXJuIGEgdm9pZCBwb2ludGVyIHRvIHRoZSByYXcgdW5pY29kZSBidWZmZXIuICovCisjZGVmaW5lIF9QeVVuaWNvZGVfQ09NUEFDVF9EQVRBKG9wKSAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoUHlVbmljb2RlX0lTX0FTQ0lJKG9wKSA/ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKCh2b2lkKikoKFB5QVNDSUlPYmplY3QqKShvcCkgKyAxKSkgOiAgICAgICAgICAgICAgXAorICAgICAoKHZvaWQqKSgoUHlDb21wYWN0VW5pY29kZU9iamVjdCopKG9wKSArIDEpKSkKKworI2RlZmluZSBfUHlVbmljb2RlX05PTkNPTVBBQ1RfREFUQShvcCkgICAgICAgICAgICAgICAgICBcCisgICAgKGFzc2VydCgoKFB5VW5pY29kZU9iamVjdCopKG9wKSktPmRhdGEuYW55KSwgICAgICAgIFwKKyAgICAgKCgoKFB5VW5pY29kZU9iamVjdCAqKShvcCkpLT5kYXRhLmFueSkpKQorCisjZGVmaW5lIFB5VW5pY29kZV9EQVRBKG9wKSBcCisgICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwgXAorICAgICBQeVVuaWNvZGVfSVNfQ09NUEFDVChvcCkgPyBfUHlVbmljb2RlX0NPTVBBQ1RfREFUQShvcCkgOiAgIFwKKyAgICAgX1B5VW5pY29kZV9OT05DT01QQUNUX0RBVEEob3ApKQorCisvKiBJbiB0aGUgYWNjZXNzIG1hY3JvcyBiZWxvdywgImtpbmQiIG1heSBiZSBldmFsdWF0ZWQgbW9yZSB0aGFuIG9uY2UuCisgICBBbGwgb3RoZXIgbWFjcm8gcGFyYW1ldGVycyBhcmUgZXZhbHVhdGVkIGV4YWN0bHkgb25jZSwgc28gaXQgaXMgc2FmZQorICAgdG8gcHV0IHNpZGUgZWZmZWN0cyBpbnRvIHRoZW0gKHN1Y2ggYXMgaW5jcmVhc2luZyB0aGUgaW5kZXgpLiAqLworCisvKiBXcml0ZSBpbnRvIHRoZSBjYW5vbmljYWwgcmVwcmVzZW50YXRpb24sIHRoaXMgbWFjcm8gZG9lcyBub3QgZG8gYW55IHNhbml0eQorICAgY2hlY2tzIGFuZCBpcyBpbnRlbmRlZCBmb3IgdXNhZ2UgaW4gbG9vcHMuICBUaGUgY2FsbGVyIHNob3VsZCBjYWNoZSB0aGUKKyAgIGtpbmQgYW5kIGRhdGEgcG9pbnRlcnMgb2J0YWluZWQgZnJvbSBvdGhlciBtYWNybyBjYWxscy4KKyAgIGluZGV4IGlzIHRoZSBpbmRleCBpbiB0aGUgc3RyaW5nIChzdGFydHMgYXQgMCkgYW5kIHZhbHVlIGlzIHRoZSBuZXcKKyAgIGNvZGUgcG9pbnQgdmFsdWUgd2hpY2ggc2hvdWxkIGJlIHdyaXR0ZW4gdG8gdGhhdCBsb2NhdGlvbi4gKi8KKyNkZWZpbmUgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGluZGV4LCB2YWx1ZSkgXAorICAgIGRvIHsgXAorICAgICAgICBzd2l0Y2ggKChraW5kKSkgeyBcCisgICAgICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6IHsgXAorICAgICAgICAgICAgKChQeV9VQ1MxICopKGRhdGEpKVsoaW5kZXgpXSA9IChQeV9VQ1MxKSh2YWx1ZSk7IFwKKyAgICAgICAgICAgIGJyZWFrOyBcCisgICAgICAgIH0gXAorICAgICAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOiB7IFwKKyAgICAgICAgICAgICgoUHlfVUNTMiAqKShkYXRhKSlbKGluZGV4KV0gPSAoUHlfVUNTMikodmFsdWUpOyBcCisgICAgICAgICAgICBicmVhazsgXAorICAgICAgICB9IFwKKyAgICAgICAgZGVmYXVsdDogeyBcCisgICAgICAgICAgICBhc3NlcnQoKGtpbmQpID09IFB5VW5pY29kZV80QllURV9LSU5EKTsgXAorICAgICAgICAgICAgKChQeV9VQ1M0ICopKGRhdGEpKVsoaW5kZXgpXSA9IChQeV9VQ1M0KSh2YWx1ZSk7IFwKKyAgICAgICAgfSBcCisgICAgICAgIH0gXAorICAgIH0gd2hpbGUgKDApCisKKy8qIFJlYWQgYSBjb2RlIHBvaW50IGZyb20gdGhlIHN0cmluZydzIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbi4gIE5vIGNoZWNrcworICAgb3IgcmVhZHkgY2FsbHMgYXJlIHBlcmZvcm1lZC4gKi8KKyNkZWZpbmUgUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaW5kZXgpIFwKKyAgICAoKFB5X1VDUzQpIFwKKyAgICAoKGtpbmQpID09IFB5VW5pY29kZV8xQllURV9LSU5EID8gXAorICAgICAgICAoKGNvbnN0IFB5X1VDUzEgKikoZGF0YSkpWyhpbmRleCldIDogXAorICAgICAgICAoKGtpbmQpID09IFB5VW5pY29kZV8yQllURV9LSU5EID8gXAorICAgICAgICAgICAgKChjb25zdCBQeV9VQ1MyICopKGRhdGEpKVsoaW5kZXgpXSA6IFwKKyAgICAgICAgICAgICgoY29uc3QgUHlfVUNTNCAqKShkYXRhKSlbKGluZGV4KV0gXAorICAgICAgICApIFwKKyAgICApKQorCisvKiBQeVVuaWNvZGVfUkVBRF9DSEFSKCkgaXMgbGVzcyBlZmZpY2llbnQgdGhhbiBQeVVuaWNvZGVfUkVBRCgpIGJlY2F1c2UgaXQKKyAgIGNhbGxzIFB5VW5pY29kZV9LSU5EKCkgYW5kIG1pZ2h0IGNhbGwgaXQgdHdpY2UuICBGb3Igc2luZ2xlIHJlYWRzLCB1c2UKKyAgIFB5VW5pY29kZV9SRUFEX0NIQVIsIGZvciBtdWx0aXBsZSBjb25zZWN1dGl2ZSByZWFkcyBjYWxsZXJzIHNob3VsZAorICAgY2FjaGUga2luZCBhbmQgdXNlIFB5VW5pY29kZV9SRUFEIGluc3RlYWQuICovCisjZGVmaW5lIFB5VW5pY29kZV9SRUFEX0NIQVIodW5pY29kZSwgaW5kZXgpIFwKKyAgICAoYXNzZXJ0KFB5VW5pY29kZV9DaGVjayh1bmljb2RlKSksICAgICAgICAgIFwKKyAgICAgYXNzZXJ0KFB5VW5pY29kZV9JU19SRUFEWSh1bmljb2RlKSksICAgICAgIFwKKyAgICAgKFB5X1VDUzQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgKFB5VW5pY29kZV9LSU5EKCh1bmljb2RlKSkgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQgPyBcCisgICAgICAgICAgICAoKGNvbnN0IFB5X1VDUzEgKikoUHlVbmljb2RlX0RBVEEoKHVuaWNvZGUpKSkpWyhpbmRleCldIDogXAorICAgICAgICAgICAgKFB5VW5pY29kZV9LSU5EKCh1bmljb2RlKSkgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQgPyBcCisgICAgICAgICAgICAgICAgKChjb25zdCBQeV9VQ1MyICopKFB5VW5pY29kZV9EQVRBKCh1bmljb2RlKSkpKVsoaW5kZXgpXSA6IFwKKyAgICAgICAgICAgICAgICAoKGNvbnN0IFB5X1VDUzQgKikoUHlVbmljb2RlX0RBVEEoKHVuaWNvZGUpKSkpWyhpbmRleCldIFwKKyAgICAgICAgICAgICkgXAorICAgICAgICApKQorCisvKiBSZXR1cm5zIHRoZSBsZW5ndGggb2YgdGhlIHVuaWNvZGUgc3RyaW5nLiBUaGUgY2FsbGVyIGhhcyB0byBtYWtlIHN1cmUgdGhhdAorICAgdGhlIHN0cmluZyBoYXMgaXQncyBjYW5vbmljYWwgcmVwcmVzZW50YXRpb24gc2V0IGJlZm9yZSBjYWxsaW5nCisgICB0aGlzIG1hY3JvLiAgQ2FsbCBQeVVuaWNvZGVfKEZBU1RfKVJlYWR5IHRvIGVuc3VyZSB0aGF0LiAqLworI2RlZmluZSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvcCkgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoUHlVbmljb2RlX0NoZWNrKG9wKSksICAgICAgICAgICAgICAgXAorICAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKG9wKSksICAgICAgICAgICAgXAorICAgICAoKFB5QVNDSUlPYmplY3QgKikob3ApKS0+bGVuZ3RoKQorCisKKy8qIEZhc3QgY2hlY2sgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgYW4gb2JqZWN0IGlzIHJlYWR5LiBFcXVpdmFsZW50IHRvCisgICBQeVVuaWNvZGVfSVNfQ09NUEFDVChvcCkgfHwgKChQeVVuaWNvZGVPYmplY3QqKShvcCkpLT5kYXRhLmFueSkgKi8KKworI2RlZmluZSBQeVVuaWNvZGVfSVNfUkVBRFkob3ApICgoKFB5QVNDSUlPYmplY3QqKW9wKS0+c3RhdGUucmVhZHkpCisKKy8qIFB5VW5pY29kZV9SRUFEWSgpIGRvZXMgbGVzcyB3b3JrIHRoYW4gX1B5VW5pY29kZV9SZWFkeSgpIGluIHRoZSBiZXN0CisgICBjYXNlLiAgSWYgdGhlIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiBpcyBub3QgeWV0IHNldCwgaXQgd2lsbCBzdGlsbCBjYWxsCisgICBfUHlVbmljb2RlX1JlYWR5KCkuCisgICBSZXR1cm5zIDAgb24gc3VjY2VzcyBhbmQgLTEgb24gZXJyb3JzLiAqLworI2RlZmluZSBQeVVuaWNvZGVfUkVBRFkob3ApICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoUHlVbmljb2RlX0NoZWNrKG9wKSksICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIChQeVVuaWNvZGVfSVNfUkVBRFkob3ApID8gICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIDAgOiBfUHlVbmljb2RlX1JlYWR5KChQeU9iamVjdCAqKShvcCkpKSkKKworLyogUmV0dXJuIGEgbWF4aW11bSBjaGFyYWN0ZXIgdmFsdWUgd2hpY2ggaXMgc3VpdGFibGUgZm9yIGNyZWF0aW5nIGFub3RoZXIKKyAgIHN0cmluZyBiYXNlZCBvbiBvcC4gIFRoaXMgaXMgYWx3YXlzIGFuIGFwcHJveGltYXRpb24gYnV0IG1vcmUgZWZmaWNpZW50CisgICB0aGFuIGl0ZXJhdGluZyBvdmVyIHRoZSBzdHJpbmcuICovCisjZGVmaW5lIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShvcCkgXAorICAgIChhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKG9wKSksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoUHlVbmljb2RlX0lTX0FTQ0lJKG9wKSA/ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgKDB4N2YpIDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgKFB5VW5pY29kZV9LSU5EKG9wKSA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCA/ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICgweGZmVSkgOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgIChQeVVuaWNvZGVfS0lORChvcCkgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQgPyAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAoMHhmZmZmVSkgOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAoMHgxMGZmZmZVKSkpKSkKKwogI2VuZGlmCiAKIC8qIC0tLSBDb25zdGFudHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwpAQCAtNDE4LDEyICs1ODYsODcgQEAKICAgIFVuaWNvZGUgY2hhcmFjdGVyIFUrRkZGRCBpcyB0aGUgb2ZmaWNpYWwgUkVQTEFDRU1FTlQgQ0hBUkFDVEVSIGluCiAgICBVbmljb2RlIDMuMC4gKi8KIAotI2RlZmluZSBQeV9VTklDT0RFX1JFUExBQ0VNRU5UX0NIQVJBQ1RFUiAoKFB5X1VOSUNPREUpIDB4RkZGRCkKKyNkZWZpbmUgUHlfVU5JQ09ERV9SRVBMQUNFTUVOVF9DSEFSQUNURVIgKChQeV9VQ1M0KSAweEZGRkQpCiAKIC8qID09PSBQdWJsaWMgQVBJID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwogCiAvKiAtLS0gUGxhaW4gUHlfVU5JQ09ERSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAorLyogV2l0aCBQRVAgMzkzLCB0aGlzIGlzIHRoZSByZWNvbW1lbmRlZCB3YXkgdG8gYWxsb2NhdGUgYSBuZXcgdW5pY29kZSBvYmplY3QuCisgICBUaGlzIGZ1bmN0aW9uIHdpbGwgYWxsb2NhdGUgdGhlIG9iamVjdCBhbmQgaXRzIGJ1ZmZlciBpbiBhIHNpbmdsZSBtZW1vcnkKKyAgIGJsb2NrLiAgT2JqZWN0cyBjcmVhdGVkIHVzaW5nIHRoaXMgZnVuY3Rpb24gYXJlIG5vdCByZXNpemFibGUuICovCisjaWZuZGVmIFB5X0xJTUlURURfQVBJCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX05ldygKKyAgICBQeV9zc2l6ZV90IHNpemUsICAgICAgICAgICAgLyogTnVtYmVyIG9mIGNvZGUgcG9pbnRzIGluIHRoZSBuZXcgc3RyaW5nICovCisgICAgUHlfVUNTNCBtYXhjaGFyICAgICAgICAgICAgIC8qIG1heGltdW0gY29kZSBwb2ludCB2YWx1ZSBpbiB0aGUgc3RyaW5nICovCisgICAgKTsKKyNlbmRpZgorCisvKiBJbml0aWFsaXplcyB0aGUgY2Fub25pY2FsIHN0cmluZyByZXByZXNlbnRhdGlvbiBmcm9tIGEgdGhlIGRlcHJlY2F0ZWQKKyAgIHdzdHIvUHlfVU5JQ09ERSByZXByZXNlbnRhdGlvbi4gVGhpcyBmdW5jdGlvbiBpcyB1c2VkIHRvIGNvbnZlcnQgVW5pY29kZQorICAgb2JqZWN0cyB3aGljaCB3ZXJlIGNyZWF0ZWQgdXNpbmcgdGhlIG9sZCBBUEkgdG8gdGhlIG5ldyBmbGV4aWJsZSBmb3JtYXQKKyAgIGludHJvZHVjZWQgd2l0aCBQRVAgMzkzLgorCisgICBEb24ndCBjYWxsIHRoaXMgZnVuY3Rpb24gZGlyZWN0bHksIHVzZSB0aGUgcHVibGljIFB5VW5pY29kZV9SRUFEWSgpIG1hY3JvCisgICBpbnN0ZWFkLiAqLworI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQorUHlBUElfRlVOQyhpbnQpIF9QeVVuaWNvZGVfUmVhZHkoCisgICAgUHlPYmplY3QgKnVuaWNvZGUgICAgICAgICAgIC8qIFVuaWNvZGUgb2JqZWN0ICovCisgICAgKTsKKyNlbmRpZgorCisvKiBHZXQgYSBjb3B5IG9mIGEgVW5pY29kZSBzdHJpbmcuICovCisjaWZuZGVmIFB5X0xJTUlURURfQVBJCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgX1B5VW5pY29kZV9Db3B5KAorICAgIFB5T2JqZWN0ICp1bmljb2RlCisgICAgKTsKKyNlbmRpZgorCisvKiBDb3B5IGNoYXJhY3RlciBmcm9tIG9uZSB1bmljb2RlIG9iamVjdCBpbnRvIGFub3RoZXIsIHRoaXMgZnVuY3Rpb24gcGVyZm9ybXMKKyAgIGNoYXJhY3RlciBjb252ZXJzaW9uIHdoZW4gbmVjZXNzYXJ5IGFuZCBmYWxscyBiYWNrIHRvIG1lbWNweSgpIGlmIHBvc3NpYmxlLgorCisgICBGYWlsIGlmIHRvIGlzIHRvbyBzbWFsbCAoc21hbGxlciB0aGFuICpob3dfbWFueSogb3Igc21hbGxlciB0aGFuCisgICBsZW4oZnJvbSktZnJvbV9zdGFydCksIG9yIGlmIGtpbmQoZnJvbVtmcm9tX3N0YXJ0OmZyb21fc3RhcnQraG93X21hbnldKSA+CisgICBraW5kKHRvKSwgb3IgaWYgKnRvKiBoYXMgbW9yZSB0aGFuIDEgcmVmZXJlbmNlLgorCisgICBSZXR1cm4gdGhlIG51bWJlciBvZiB3cml0dGVuIGNoYXJhY3Rlciwgb3IgcmV0dXJuIC0xIGFuZCByYWlzZSBhbiBleGNlcHRpb24KKyAgIG9uIGVycm9yLgorCisgICBQc2V1ZG8tY29kZToKKworICAgICAgIGhvd19tYW55ID0gbWluKGhvd19tYW55LCBsZW4oZnJvbSkgLSBmcm9tX3N0YXJ0KQorICAgICAgIHRvW3RvX3N0YXJ0OnRvX3N0YXJ0K2hvd19tYW55XSA9IGZyb21bZnJvbV9zdGFydDpmcm9tX3N0YXJ0K2hvd19tYW55XQorICAgICAgIHJldHVybiBob3dfbWFueQorCisgICBOb3RlOiBUaGUgZnVuY3Rpb24gZG9lc24ndCB3cml0ZSBhIHRlcm1pbmF0aW5nIG51bGwgY2hhcmFjdGVyLgorICAgKi8KKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkMoUHlfc3NpemVfdCkgUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzKAorICAgIFB5T2JqZWN0ICp0bywKKyAgICBQeV9zc2l6ZV90IHRvX3N0YXJ0LAorICAgIFB5T2JqZWN0ICpmcm9tLAorICAgIFB5X3NzaXplX3QgZnJvbV9zdGFydCwKKyAgICBQeV9zc2l6ZV90IGhvd19tYW55CisgICAgKTsKKyNlbmRpZgorCisvKiBGaWxsIGEgc3RyaW5nIHdpdGggYSBjaGFyYWN0ZXI6IHdyaXRlIGZpbGxfY2hhciBpbnRvCisgICB1bmljb2RlW3N0YXJ0OnN0YXJ0K2xlbmd0aF0uCisKKyAgIEZhaWwgaWYgZmlsbF9jaGFyIGlzIGJpZ2dlciB0aGFuIHRoZSBzdHJpbmcgbWF4aW11bSBjaGFyYWN0ZXIsIG9yIGlmIHRoZQorICAgc3RyaW5nIGhhcyBtb3JlIHRoYW4gMSByZWZlcmVuY2UuCisKKyAgIFJldHVybiB0aGUgbnVtYmVyIG9mIHdyaXR0ZW4gY2hhcmFjdGVyLCBvciByZXR1cm4gLTEgYW5kIHJhaXNlIGFuIGV4Y2VwdGlvbgorICAgb24gZXJyb3IuICovCisjaWZuZGVmIFB5X0xJTUlURURfQVBJCitQeUFQSV9GVU5DKFB5X3NzaXplX3QpIFB5VW5pY29kZV9GaWxsKAorICAgIFB5T2JqZWN0ICp1bmljb2RlLAorICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgUHlfc3NpemVfdCBsZW5ndGgsCisgICAgUHlfVUNTNCBmaWxsX2NoYXIKKyAgICApOworI2VuZGlmCisKIC8qIENyZWF0ZSBhIFVuaWNvZGUgT2JqZWN0IGZyb20gdGhlIFB5X1VOSUNPREUgYnVmZmVyIHUgb2YgdGhlIGdpdmVuCiAgICBzaXplLgogCkBAIC00NDgsMTMgKzY5MSw0NSBAQAogICAgICk7CiAKIC8qIFNpbWlsYXIgdG8gUHlVbmljb2RlX0Zyb21Vbmljb2RlKCksIGJ1dCB1IHBvaW50cyB0byBudWxsLXRlcm1pbmF0ZWQKLSAgIFVURi04IGVuY29kZWQgYnl0ZXMgKi8KKyAgIFVURi04IGVuY29kZWQgYnl0ZXMuICBUaGUgc2l6ZSBpcyBkZXRlcm1pbmVkIHdpdGggc3RybGVuKCkuICovCiBQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX0Zyb21TdHJpbmcoCiAgICAgY29uc3QgY2hhciAqdSAgICAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KICAgICApOwogCisvKiBDcmVhdGUgYSBuZXcgc3RyaW5nIGZyb20gYSBidWZmZXIgb2YgUHlfVUNTMSwgUHlfVUNTMiBvciBQeV9VQ1M0IGNoYXJhY3RlcnMuCisgICBTY2FuIHRoZSBzdHJpbmcgdG8gZmluZCB0aGUgbWF4aW11bSBjaGFyYWN0ZXIuICovCisjaWZuZGVmIFB5X0xJTUlURURfQVBJCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YSgKKyAgICBpbnQga2luZCwKKyAgICBjb25zdCB2b2lkICpidWZmZXIsCisgICAgUHlfc3NpemVfdCBzaXplKTsKKyNlbmRpZgorCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX1N1YnN0cmluZygKKyAgICBQeU9iamVjdCAqc3RyLAorICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgUHlfc3NpemVfdCBlbmQpOworCisvKiBDb3B5IHRoZSBzdHJpbmcgaW50byBhIFVDUzQgYnVmZmVyIGluY2x1ZGluZyB0aGUgbnVsbCBjaGFyYWN0ZXIgaWYgY29weV9udWxsCisgICBpcyBzZXQuIFJldHVybiBOVUxMIGFuZCByYWlzZSBhbiBleGNlcHRpb24gb24gZXJyb3IuIFJhaXNlIGEgVmFsdWVFcnJvciBpZgorICAgdGhlIGJ1ZmZlciBpcyBzbWFsbGVyIHRoYW4gdGhlIHN0cmluZy4gUmV0dXJuIGJ1ZmZlciBvbiBzdWNjZXNzLgorCisgICBidWZsZW4gaXMgdGhlIGxlbmd0aCBvZiB0aGUgYnVmZmVyIGluIChQeV9VQ1M0KSBjaGFyYWN0ZXJzLiAqLworUHlBUElfRlVOQyhQeV9VQ1M0KikgUHlVbmljb2RlX0FzVUNTNCgKKyAgICBQeU9iamVjdCAqdW5pY29kZSwKKyAgICBQeV9VQ1M0KiBidWZmZXIsCisgICAgUHlfc3NpemVfdCBidWZsZW4sCisgICAgaW50IGNvcHlfbnVsbCk7CisKKy8qIENvcHkgdGhlIHN0cmluZyBpbnRvIGEgVUNTNCBidWZmZXIuIEEgbmV3IGJ1ZmZlciBpcyBhbGxvY2F0ZWQgdXNpbmcKKyAqIFB5TWVtX01hbGxvYzsgaWYgdGhpcyBmYWlscywgTlVMTCBpcyByZXR1cm5lZCB3aXRoIGEgbWVtb3J5IGVycm9yCisgICBleGNlcHRpb24gc2V0LiAqLworUHlBUElfRlVOQyhQeV9VQ1M0KikgUHlVbmljb2RlX0FzVUNTNENvcHkoUHlPYmplY3QgKnVuaWNvZGUpOworCiAvKiBSZXR1cm4gYSByZWFkLW9ubHkgcG9pbnRlciB0byB0aGUgVW5pY29kZSBvYmplY3QncyBpbnRlcm5hbAotICAgUHlfVU5JQ09ERSBidWZmZXIuICovCisgICBQeV9VTklDT0RFIGJ1ZmZlci4KKyAgIElmIHRoZSB3Y2hhcl90L1B5X1VOSUNPREUgcmVwcmVzZW50YXRpb24gaXMgbm90IHlldCBhdmFpbGFibGUsIHRoaXMKKyAgIGZ1bmN0aW9uIHdpbGwgY2FsY3VsYXRlIGl0LiAqLwogCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKFB5X1VOSUNPREUgKikgUHlVbmljb2RlX0FzVW5pY29kZSgKQEAgLTQ2MiwzMCArNzM3LDY5IEBACiAgICAgKTsKICNlbmRpZgogCisvKiBSZXR1cm4gYSByZWFkLW9ubHkgcG9pbnRlciB0byB0aGUgVW5pY29kZSBvYmplY3QncyBpbnRlcm5hbAorICAgUHlfVU5JQ09ERSBidWZmZXIgYW5kIHNhdmUgdGhlIGxlbmd0aCBhdCBzaXplLgorICAgSWYgdGhlIHdjaGFyX3QvUHlfVU5JQ09ERSByZXByZXNlbnRhdGlvbiBpcyBub3QgeWV0IGF2YWlsYWJsZSwgdGhpcworICAgZnVuY3Rpb24gd2lsbCBjYWxjdWxhdGUgaXQuICovCisKKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkMoUHlfVU5JQ09ERSAqKSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZSgKKyAgICBQeU9iamVjdCAqdW5pY29kZSwgICAgICAgICAgLyogVW5pY29kZSBvYmplY3QgKi8KKyAgICBQeV9zc2l6ZV90ICpzaXplICAgICAgICAgICAgLyogbG9jYXRpb24gd2hlcmUgdG8gc2F2ZSB0aGUgbGVuZ3RoICovCisgICAgKTsKKyNlbmRpZgorCiAvKiBHZXQgdGhlIGxlbmd0aCBvZiB0aGUgVW5pY29kZSBvYmplY3QuICovCiAKK1B5QVBJX0ZVTkMoUHlfc3NpemVfdCkgUHlVbmljb2RlX0dldExlbmd0aCgKKyAgICBQeU9iamVjdCAqdW5pY29kZQorKTsKKworLyogR2V0IHRoZSBudW1iZXIgb2YgUHlfVU5JQ09ERSB1bml0cyBpbiB0aGUKKyAgIHN0cmluZyByZXByZXNlbnRhdGlvbi4gKi8KKwogUHlBUElfRlVOQyhQeV9zc2l6ZV90KSBQeVVuaWNvZGVfR2V0U2l6ZSgKICAgICBQeU9iamVjdCAqdW5pY29kZSAgICAgICAgICAgLyogVW5pY29kZSBvYmplY3QgKi8KICAgICApOwogCisvKiBSZWFkIGEgY2hhcmFjdGVyIGZyb20gdGhlIHN0cmluZy4gKi8KKworUHlBUElfRlVOQyhQeV9VQ1M0KSBQeVVuaWNvZGVfUmVhZENoYXIoCisgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgUHlfc3NpemVfdCBpbmRleAorICAgICk7CisKKy8qIFdyaXRlIGEgY2hhcmFjdGVyIHRvIHRoZSBzdHJpbmcuIFRoZSBzdHJpbmcgbXVzdCBoYXZlIGJlZW4gY3JlYXRlZCB0aHJvdWdoCisgICBQeVVuaWNvZGVfTmV3LCBtdXN0IG5vdCBiZSBzaGFyZWQsIGFuZCBtdXN0IG5vdCBoYXZlIGJlZW4gaGFzaGVkIHlldC4KKworICAgUmV0dXJuIDAgb24gc3VjY2VzcywgLTEgb24gZXJyb3IuICovCisKK1B5QVBJX0ZVTkMoaW50KSBQeVVuaWNvZGVfV3JpdGVDaGFyKAorICAgIFB5T2JqZWN0ICp1bmljb2RlLAorICAgIFB5X3NzaXplX3QgaW5kZXgsCisgICAgUHlfVUNTNCBjaGFyYWN0ZXIKKyAgICApOworCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiAvKiBHZXQgdGhlIG1heGltdW0gb3JkaW5hbCBmb3IgYSBVbmljb2RlIGNoYXJhY3Rlci4gKi8KIFB5QVBJX0ZVTkMoUHlfVU5JQ09ERSkgUHlVbmljb2RlX0dldE1heCh2b2lkKTsKICNlbmRpZgogCi0vKiBSZXNpemUgYW4gYWxyZWFkeSBhbGxvY2F0ZWQgVW5pY29kZSBvYmplY3QgdG8gdGhlIG5ldyBzaXplIGxlbmd0aC4KKy8qIFJlc2l6ZSBhbiBVbmljb2RlIG9iamVjdC4gVGhlIGxlbmd0aCBpcyB0aGUgbnVtYmVyIG9mIGNoYXJhY3RlcnMsIGV4Y2VwdAorICAgaWYgdGhlIGtpbmQgb2YgdGhlIHN0cmluZyBpcyBQeVVuaWNvZGVfV0NIQVJfS0lORDogaW4gdGhpcyBjYXNlLCB0aGUgbGVuZ3RoCisgICBpcyB0aGUgbnVtYmVyIG9mIFB5X1VOSUNPREUgY2hhcmFjdGVycy4KIAogICAgKnVuaWNvZGUgaXMgbW9kaWZpZWQgdG8gcG9pbnQgdG8gdGhlIG5ldyAocmVzaXplZCkgb2JqZWN0IGFuZCAwCiAgICByZXR1cm5lZCBvbiBzdWNjZXNzLgogCi0gICBUaGlzIEFQSSBtYXkgb25seSBiZSBjYWxsZWQgYnkgdGhlIGZ1bmN0aW9uIHdoaWNoIGFsc28gY2FsbGVkIHRoZQotICAgVW5pY29kZSBjb25zdHJ1Y3Rvci4gVGhlIHJlZmNvdW50IG9uIHRoZSBvYmplY3QgbXVzdCBiZSAxLiBPdGhlcndpc2UsCi0gICBhbiBlcnJvciBpcyByZXR1cm5lZC4KKyAgIFRyeSB0byByZXNpemUgdGhlIHN0cmluZyBpbiBwbGFjZSAod2hpY2ggaXMgdXN1YWxseSBmYXN0ZXIgdGhhbiBhbGxvY2F0aW5nCisgICBhIG5ldyBzdHJpbmcgYW5kIGNvcHkgY2hhcmFjdGVycyksIG9yIGNyZWF0ZSBhIG5ldyBzdHJpbmcuCiAKICAgIEVycm9yIGhhbmRsaW5nIGlzIGltcGxlbWVudGVkIGFzIGZvbGxvd3M6IGFuIGV4Y2VwdGlvbiBpcyBzZXQsIC0xCiAgICBpcyByZXR1cm5lZCBhbmQgKnVuaWNvZGUgbGVmdCB1bnRvdWNoZWQuCiAKLSovCisgICBXQVJOSU5HOiBUaGUgZnVuY3Rpb24gZG9lc24ndCBjaGVjayBzdHJpbmcgY29udGVudCwgdGhlIHJlc3VsdCBtYXkgbm90IGJlIGEKKyAgICAgICAgICAgIHN0cmluZyBpbiBjYW5vbmljYWwgcmVwcmVzZW50YXRpb24uICovCiAKIFB5QVBJX0ZVTkMoaW50KSBQeVVuaWNvZGVfUmVzaXplKAogICAgIFB5T2JqZWN0ICoqdW5pY29kZSwgICAgICAgICAvKiBQb2ludGVyIHRvIHRoZSBVbmljb2RlIG9iamVjdCAqLwpAQCAtNTQ1LDggKzg1OSw5IEBACiAvKiBGb3JtYXQgdGhlIG9iamVjdCBiYXNlZCBvbiB0aGUgZm9ybWF0X3NwZWMsIGFzIGRlZmluZWQgaW4gUEVQIDMxMDEKICAgIChBZHZhbmNlZCBTdHJpbmcgRm9ybWF0dGluZykuICovCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIF9QeVVuaWNvZGVfRm9ybWF0QWR2YW5jZWQoUHlPYmplY3QgKm9iaiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFICpmb3JtYXRfc3BlYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmZvcm1hdF9zcGVjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQpOwogI2VuZGlmCiAKIFB5QVBJX0ZVTkModm9pZCkgUHlVbmljb2RlX0ludGVybkluUGxhY2UoUHlPYmplY3QgKiopOwpAQCAtNTU5LDcgKzg3NCw4IEBACiAjZW5kaWYKIAogLyogVXNlIG9ubHkgaWYgeW91IGtub3cgaXQncyBhIHN0cmluZyAqLwotI2RlZmluZSBQeVVuaWNvZGVfQ0hFQ0tfSU5URVJORUQob3ApICgoKFB5VW5pY29kZU9iamVjdCAqKShvcCkpLT5zdGF0ZSkKKyNkZWZpbmUgUHlVbmljb2RlX0NIRUNLX0lOVEVSTkVEKG9wKSBcCisgICAgKCgoUHlBU0NJSU9iamVjdCAqKShvcCkpLT5zdGF0ZS5pbnRlcm5lZCkKIAogLyogLS0tIHdjaGFyX3Qgc3VwcG9ydCBmb3IgcGxhdGZvcm1zIHdoaWNoIHN1cHBvcnQgaXQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKQEAgLTYwNiw2ICs5MjIsMTAgQEAKICAgICBQeV9zc2l6ZV90ICpzaXplICAgICAgICAgICAgLyogbnVtYmVyIG9mIGNoYXJhY3RlcnMgb2YgdGhlIHJlc3VsdCAqLwogICAgICk7CiAKKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkModm9pZCopIF9QeVVuaWNvZGVfQXNLaW5kKFB5T2JqZWN0ICpzLCB1bnNpZ25lZCBpbnQga2luZCk7CisjZW5kaWYKKwogI2VuZGlmCiAKIC8qIC0tLSBVbmljb2RlIG9yZGluYWxzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwpAQCAtNjUxLDUwICs5NzEsNDIgQEAKIAogLyogLS0tIE1hbmFnZSB0aGUgZGVmYXVsdCBlbmNvZGluZyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLS8qIFJldHVybiBhIFB5dGhvbiBzdHJpbmcgaG9sZGluZyB0aGUgZGVmYXVsdCBlbmNvZGVkIHZhbHVlIG9mIHRoZQotICAgVW5pY29kZSBvYmplY3QuCi0KLSAgIFNhbWUgYXMgUHlVbmljb2RlX0FzVVRGOFN0cmluZygpIGV4Y2VwdAotICAgdGhlIHJlc3VsdGluZyBzdHJpbmcgaXMgY2FjaGVkIGluIHRoZSBVbmljb2RlIG9iamVjdCBmb3Igc3Vic2VxdWVudAotICAgdXNhZ2UgYnkgdGhpcyBmdW5jdGlvbi4gVGhlIGNhY2hlZCB2ZXJzaW9uIGlzIG5lZWRlZCB0byBpbXBsZW1lbnQKLSAgIHRoZSBjaGFyYWN0ZXIgYnVmZmVyIGludGVyZmFjZSBhbmQgd2lsbCBsaXZlIChhdCBsZWFzdCkgYXMgbG9uZyBhcwotICAgdGhlIFVuaWNvZGUgb2JqZWN0IGl0c2VsZi4KLQotICAgVGhlIHJlZmNvdW50IG9mIHRoZSBzdHJpbmcgaXMgKm5vdCogaW5jcmVtZW50ZWQuCi0KLSAgICoqKiBFeHBvcnRlZCBmb3IgaW50ZXJuYWwgdXNlIGJ5IHRoZSBpbnRlcnByZXRlciBvbmx5ICEhISAqKioKLQotKi8KLQotI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQotUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlVbmljb2RlX0FzRGVmYXVsdEVuY29kZWRTdHJpbmcoCi0gICAgUHlPYmplY3QgKnVuaWNvZGUsCi0gICAgY29uc3QgY2hhciAqZXJyb3JzKTsKLSNlbmRpZgotCiAvKiBSZXR1cm5zIGEgcG9pbnRlciB0byB0aGUgZGVmYXVsdCBlbmNvZGluZyAoVVRGLTgpIG9mIHRoZQogICAgVW5pY29kZSBvYmplY3QgdW5pY29kZSBhbmQgdGhlIHNpemUgb2YgdGhlIGVuY29kZWQgcmVwcmVzZW50YXRpb24KICAgIGluIGJ5dGVzIHN0b3JlZCBpbiAqc2l6ZS4KIAogICAgSW4gY2FzZSBvZiBhbiBlcnJvciwgbm8gKnNpemUgaXMgc2V0LgogCisgICBUaGlzIGZ1bmN0aW9uIGNhY2hlcyB0aGUgVVRGLTggZW5jb2RlZCBzdHJpbmcgaW4gdGhlIHVuaWNvZGVvYmplY3QKKyAgIGFuZCBzdWJzZXF1ZW50IGNhbGxzIHdpbGwgcmV0dXJuIHRoZSBzYW1lIHN0cmluZy4gIFRoZSBtZW1vcnkgaXMgcmVsZWFzZWQKKyAgIHdoZW4gdGhlIHVuaWNvZGVvYmplY3QgaXMgZGVhbGxvY2F0ZWQuCisKKyAgIF9QeVVuaWNvZGVfQXNTdHJpbmdBbmRTaXplIGlzIGEgI2RlZmluZSBmb3IgUHlVbmljb2RlX0FzVVRGOEFuZFNpemUgdG8KKyAgIHN1cHBvcnQgdGhlIHByZXZpb3VzIGludGVybmFsIGZ1bmN0aW9uIHdpdGggdGhlIHNhbWUgYmVoYXZpb3VyLgorCiAgICAqKiogVGhpcyBBUEkgaXMgZm9yIGludGVycHJldGVyIElOVEVSTkFMIFVTRSBPTkxZIGFuZCB3aWxsIGxpa2VseQogICAgKioqIGJlIHJlbW92ZWQgb3IgY2hhbmdlZCBpbiB0aGUgZnV0dXJlLgogCiAgICAqKiogSWYgeW91IG5lZWQgdG8gYWNjZXNzIHRoZSBVbmljb2RlIG9iamVjdCBhcyBVVEYtOCBieXRlcyBzdHJpbmcsCiAgICAqKiogcGxlYXNlIHVzZSBQeVVuaWNvZGVfQXNVVEY4U3RyaW5nKCkgaW5zdGVhZC4KLQogKi8KIAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQotUHlBUElfRlVOQyhjaGFyICopIF9QeVVuaWNvZGVfQXNTdHJpbmdBbmRTaXplKAorUHlBUElfRlVOQyhjaGFyICopIFB5VW5pY29kZV9Bc1VURjhBbmRTaXplKAogICAgIFB5T2JqZWN0ICp1bmljb2RlLAogICAgIFB5X3NzaXplX3QgKnNpemUpOworI2RlZmluZSBfUHlVbmljb2RlX0FzU3RyaW5nQW5kU2l6ZSBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZQogI2VuZGlmCiAKIC8qIFJldHVybnMgYSBwb2ludGVyIHRvIHRoZSBkZWZhdWx0IGVuY29kaW5nIChVVEYtOCkgb2YgdGhlCiAgICBVbmljb2RlIG9iamVjdCB1bmljb2RlLgogCisgICBMaWtlIFB5VW5pY29kZV9Bc1VURjhBbmRTaXplKCksIHRoaXMgYWxzbyBjYWNoZXMgdGhlIFVURi04IHJlcHJlc2VudGF0aW9uCisgICBpbiB0aGUgdW5pY29kZW9iamVjdC4KKworICAgX1B5VW5pY29kZV9Bc1N0cmluZyBpcyBhICNkZWZpbmUgZm9yIFB5VW5pY29kZV9Bc1VURjggdG8KKyAgIHN1cHBvcnQgdGhlIHByZXZpb3VzIGludGVybmFsIGZ1bmN0aW9uIHdpdGggdGhlIHNhbWUgYmVoYXZpb3VyLgorCiAgICBVc2Ugb2YgdGhpcyBBUEkgaXMgREVQUkVDQVRFRCBzaW5jZSBubyBzaXplIGluZm9ybWF0aW9uIGNhbiBiZQogICAgZXh0cmFjdGVkIGZyb20gdGhlIHJldHVybmVkIGRhdGEuCiAKQEAgLTcwNyw3ICsxMDE5LDggQEAKICovCiAKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKLVB5QVBJX0ZVTkMoY2hhciAqKSBfUHlVbmljb2RlX0FzU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKTsKK1B5QVBJX0ZVTkMoY2hhciAqKSBQeVVuaWNvZGVfQXNVVEY4KFB5T2JqZWN0ICp1bmljb2RlKTsKKyNkZWZpbmUgX1B5VW5pY29kZV9Bc1N0cmluZyBQeVVuaWNvZGVfQXNVVEY4CiAjZW5kaWYKIAogLyogUmV0dXJucyAidXRmLTgiLiAgKi8KQEAgLTgxMiw2ICsxMTI1LDEyIEBACiAgICAgaW50IGJhc2U2NFdoaXRlU3BhY2UsICAgICAgIC8qIEVuY29kZSB3aGl0ZXNwYWNlIChzcCwgaHQsIG5sLCBjcikgaW4gYmFzZTY0ICovCiAgICAgY29uc3QgY2hhciAqZXJyb3JzICAgICAgICAgIC8qIGVycm9yIGhhbmRsaW5nICovCiAgICAgKTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBfUHlVbmljb2RlX0VuY29kZVVURjcoCisgICAgUHlPYmplY3QgKnVuaWNvZGUsICAgICAgICAgIC8qIFVuaWNvZGUgb2JqZWN0ICovCisgICAgaW50IGJhc2U2NFNldE8sICAgICAgICAgICAgIC8qIEVuY29kZSBSRkMyMTUyIFNldCBPIGNoYXJhY3RlcnMgaW4gYmFzZTY0ICovCisgICAgaW50IGJhc2U2NFdoaXRlU3BhY2UsICAgICAgIC8qIEVuY29kZSB3aGl0ZXNwYWNlIChzcCwgaHQsIG5sLCBjcikgaW4gYmFzZTY0ICovCisgICAgY29uc3QgY2hhciAqZXJyb3JzICAgICAgICAgIC8qIGVycm9yIGhhbmRsaW5nICovCisgICAgKTsKICNlbmRpZgogCiAvKiAtLS0gVVRGLTggQ29kZWNzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KQEAgLTgzNCw2ICsxMTUzLDEwIEBACiAgICAgKTsKIAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQorUHlBUElfRlVOQyhQeU9iamVjdCopIF9QeVVuaWNvZGVfQXNVVEY4U3RyaW5nKAorICAgIFB5T2JqZWN0ICp1bmljb2RlLAorICAgIGNvbnN0IGNoYXIgKmVycm9ycyk7CisKIFB5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfRW5jb2RlVVRGOCgKICAgICBjb25zdCBQeV9VTklDT0RFICpkYXRhLCAgICAgLyogVW5pY29kZSBjaGFyIGJ1ZmZlciAqLwogICAgIFB5X3NzaXplX3QgbGVuZ3RoLCAgICAgICAgICAvKiBudW1iZXIgb2YgUHlfVU5JQ09ERSBjaGFycyB0byBlbmNvZGUgKi8KQEAgLTkxNSw2ICsxMjM4LDExIEBACiAgICAgY29uc3QgY2hhciAqZXJyb3JzLCAgICAgICAgIC8qIGVycm9yIGhhbmRsaW5nICovCiAgICAgaW50IGJ5dGVvcmRlciAgICAgICAgICAgICAgIC8qIGJ5dGVvcmRlciB0byB1c2UgMD1CT00rbmF0aXZlOy0xPUxFLDE9QkUgKi8KICAgICApOworUHlBUElfRlVOQyhQeU9iamVjdCopIF9QeVVuaWNvZGVfRW5jb2RlVVRGMzIoCisgICAgUHlPYmplY3QgKm9iamVjdCwgICAgICAgICAgIC8qIFVuaWNvZGUgb2JqZWN0ICovCisgICAgY29uc3QgY2hhciAqZXJyb3JzLCAgICAgICAgIC8qIGVycm9yIGhhbmRsaW5nICovCisgICAgaW50IGJ5dGVvcmRlciAgICAgICAgICAgICAgIC8qIGJ5dGVvcmRlciB0byB1c2UgMD1CT00rbmF0aXZlOy0xPUxFLDE9QkUgKi8KKyAgICApOwogI2VuZGlmCiAKIC8qIC0tLSBVVEYtMTYgQ29kZWNzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwpAQCAtOTk1LDYgKzEzMjMsMTEgQEAKICAgICBjb25zdCBjaGFyICplcnJvcnMsICAgICAgICAgLyogZXJyb3IgaGFuZGxpbmcgKi8KICAgICBpbnQgYnl0ZW9yZGVyICAgICAgICAgICAgICAgLyogYnl0ZW9yZGVyIHRvIHVzZSAwPUJPTStuYXRpdmU7LTE9TEUsMT1CRSAqLwogICAgICk7CitQeUFQSV9GVU5DKFB5T2JqZWN0KikgX1B5VW5pY29kZV9FbmNvZGVVVEYxNigKKyAgICBQeU9iamVjdCogdW5pY29kZSwgICAgICAgICAgLyogVW5pY29kZSBvYmplY3QgKi8KKyAgICBjb25zdCBjaGFyICplcnJvcnMsICAgICAgICAgLyogZXJyb3IgaGFuZGxpbmcgKi8KKyAgICBpbnQgYnl0ZW9yZGVyICAgICAgICAgICAgICAgLyogYnl0ZW9yZGVyIHRvIHVzZSAwPUJPTStuYXRpdmU7LTE9TEUsMT1CRSAqLworICAgICk7CiAjZW5kaWYKIAogLyogLS0tIFVuaWNvZGUtRXNjYXBlIENvZGVjcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCkBAIC0xMDY0LDYgKzEzOTcsMTAgQEAKICAgICApOwogCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgX1B5VW5pY29kZV9Bc0xhdGluMVN0cmluZygKKyAgICBQeU9iamVjdCogdW5pY29kZSwKKyAgICBjb25zdCBjaGFyKiBlcnJvcnMpOworCiBQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX0VuY29kZUxhdGluMSgKICAgICBjb25zdCBQeV9VTklDT0RFICpkYXRhLCAgICAgLyogVW5pY29kZSBjaGFyIGJ1ZmZlciAqLwogICAgIFB5X3NzaXplX3QgbGVuZ3RoLCAgICAgICAgICAvKiBOdW1iZXIgb2YgUHlfVU5JQ09ERSBjaGFycyB0byBlbmNvZGUgKi8KQEAgLTEwODgsNiArMTQyNSwxMCBAQAogICAgICk7CiAKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBfUHlVbmljb2RlX0FzQVNDSUlTdHJpbmcoCisgICAgUHlPYmplY3QqIHVuaWNvZGUsCisgICAgY29uc3QgY2hhciogZXJyb3JzKTsKKwogUHlBUElfRlVOQyhQeU9iamVjdCopIFB5VW5pY29kZV9FbmNvZGVBU0NJSSgKICAgICBjb25zdCBQeV9VTklDT0RFICpkYXRhLCAgICAgLyogVW5pY29kZSBjaGFyIGJ1ZmZlciAqLwogICAgIFB5X3NzaXplX3QgbGVuZ3RoLCAgICAgICAgICAvKiBOdW1iZXIgb2YgUHlfVU5JQ09ERSBjaGFycyB0byBlbmNvZGUgKi8KQEAgLTExMzksNiArMTQ4MCwxMiBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodW5pY29kZSBvcmRpbmFsIC0+IGNoYXIgb3JkaW5hbCkgKi8KICAgICBjb25zdCBjaGFyICplcnJvcnMgICAgICAgICAgLyogZXJyb3IgaGFuZGxpbmcgKi8KICAgICApOworUHlBUElfRlVOQyhQeU9iamVjdCopIF9QeVVuaWNvZGVfRW5jb2RlQ2hhcm1hcCgKKyAgICBQeU9iamVjdCAqdW5pY29kZSwgICAgICAgICAgLyogVW5pY29kZSBvYmplY3QgKi8KKyAgICBQeU9iamVjdCAqbWFwcGluZywgICAgICAgICAgLyogY2hhcmFjdGVyIG1hcHBpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVuaWNvZGUgb3JkaW5hbCAtPiBjaGFyIG9yZGluYWwpICovCisgICAgY29uc3QgY2hhciAqZXJyb3JzICAgICAgICAgIC8qIGVycm9yIGhhbmRsaW5nICovCisgICAgKTsKICNlbmRpZgogCiAvKiBUcmFuc2xhdGUgYSBQeV9VTklDT0RFIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gbGVuZ3RoIGJ5IGFwcGx5aW5nIGEKQEAgLTExNjMsNyArMTUxMCw3IEBACiAgICAgKTsKICNlbmRpZgogCi0jaWZkZWYgTVNfV0lOMzIKKyNpZmRlZiBIQVZFX01CQ1MKIAogLyogLS0tIE1CQ1MgY29kZWNzIGZvciBXaW5kb3dzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKQEAgLTExODAsNiArMTUyNywxNCBAQAogICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkICAgICAgICAvKiBieXRlcyBjb25zdW1lZCAqLwogICAgICk7CiAKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfRGVjb2RlQ29kZVBhZ2VTdGF0ZWZ1bCgKKyAgICBpbnQgY29kZV9wYWdlLCAgICAgICAgICAgICAgLyogY29kZSBwYWdlIG51bWJlciAqLworICAgIGNvbnN0IGNoYXIgKnN0cmluZywgICAgICAgICAvKiBlbmNvZGVkIHN0cmluZyAqLworICAgIFB5X3NzaXplX3QgbGVuZ3RoLCAgICAgICAgICAvKiBzaXplIG9mIHN0cmluZyAqLworICAgIGNvbnN0IGNoYXIgKmVycm9ycywgICAgICAgICAvKiBlcnJvciBoYW5kbGluZyAqLworICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkICAgICAgICAvKiBieXRlcyBjb25zdW1lZCAqLworICAgICk7CisKIFB5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfQXNNQkNTU3RyaW5nKAogICAgIFB5T2JqZWN0ICp1bmljb2RlICAgICAgICAgICAvKiBVbmljb2RlIG9iamVjdCAqLwogICAgICk7CkBAIC0xMTg3LDEyICsxNTQyLDE4IEBACiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX0VuY29kZU1CQ1MoCiAgICAgY29uc3QgUHlfVU5JQ09ERSAqZGF0YSwgICAgIC8qIFVuaWNvZGUgY2hhciBidWZmZXIgKi8KLSAgICBQeV9zc2l6ZV90IGxlbmd0aCwgICAgICAgICAgLyogTnVtYmVyIG9mIFB5X1VOSUNPREUgY2hhcnMgdG8gZW5jb2RlICovCisgICAgUHlfc3NpemVfdCBsZW5ndGgsICAgICAgICAgIC8qIG51bWJlciBvZiBQeV9VTklDT0RFIGNoYXJzIHRvIGVuY29kZSAqLwogICAgIGNvbnN0IGNoYXIgKmVycm9ycyAgICAgICAgICAvKiBlcnJvciBoYW5kbGluZyAqLwogICAgICk7CiAjZW5kaWYKIAotI2VuZGlmIC8qIE1TX1dJTjMyICovCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX0VuY29kZUNvZGVQYWdlKAorICAgIGludCBjb2RlX3BhZ2UsICAgICAgICAgICAgICAvKiBjb2RlIHBhZ2UgbnVtYmVyICovCisgICAgUHlPYmplY3QgKnVuaWNvZGUsICAgICAgICAgIC8qIFVuaWNvZGUgb2JqZWN0ICovCisgICAgY29uc3QgY2hhciAqZXJyb3JzICAgICAgICAgIC8qIGVycm9yIGhhbmRsaW5nICovCisgICAgKTsKKworI2VuZGlmIC8qIEhBVkVfTUJDUyAqLwogCiAvKiAtLS0gRGVjaW1hbCBFbmNvZGVyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIApAQCAtMTI0MCw2ICsxNjAxLDQ5IEBACiAgICAgKTsKICNlbmRpZgogCisvKiBTaW1pbGFyIHRvIFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsVG9BU0NJSSgpLCBidXQgdGFrZXMgYSBQeU9iamVjdAorICAgYXMgYXJndW1lbnQgaW5zdGVhZCBvZiBhIHJhdyBidWZmZXIgYW5kIGxlbmd0aC4gIFRoaXMgZnVuY3Rpb24gYWRkaXRpb25hbGx5CisgICB0cmFuc2Zvcm1zIHNwYWNlcyB0byBBU0NJSSBiZWNhdXNlIHRoaXMgaXMgd2hhdCB0aGUgY2FsbGVycyBpbiBsb25nb2JqZWN0LAorICAgZmxvYXRvYmplY3QsIGFuZCBjb21wbGV4b2JqZWN0IGRpZCBhbnl3YXlzLiAqLworCisjaWZuZGVmIFB5X0xJTUlURURfQVBJCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgX1B5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsQW5kU3BhY2VUb0FTQ0lJKAorICAgIFB5T2JqZWN0ICp1bmljb2RlICAgICAgICAgICAvKiBVbmljb2RlIG9iamVjdCAqLworICAgICk7CisjZW5kaWYKKworLyogLS0tIExvY2FsZSBlbmNvZGluZyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KKworLyogRGVjb2RlIGEgc3RyaW5nIGZyb20gdGhlIGN1cnJlbnQgbG9jYWxlIGVuY29kaW5nLiBUaGUgZGVjb2RlciBpcyBzdHJpY3QgaWYKKyAgICpzdXJyb2dhdGVlc2NhcGUqIGlzIGVxdWFsIHRvIHplcm8sIG90aGVyd2lzZSBpdCB1c2VzIHRoZSAnc3Vycm9nYXRlZXNjYXBlJworICAgZXJyb3IgaGFuZGxlciAoUEVQIDM4MykgdG8gZXNjYXBlIHVuZGVjb2RhYmxlIGJ5dGVzLiBJZiBhIGJ5dGUgc2VxdWVuY2UgY2FuCisgICBiZSBkZWNvZGVkIGFzIGEgc3Vycm9nYXRlIGNoYXJhY3RlciBhbmQgKnN1cnJvZ2F0ZWVzY2FwZSogaXMgbm90IGVxdWFsIHRvCisgICB6ZXJvLCB0aGUgYnl0ZSBzZXF1ZW5jZSBpcyBlc2NhcGVkIHVzaW5nIHRoZSAnc3Vycm9nYXRlZXNjYXBlJyBlcnJvciBoYW5kbGVyCisgICBpbnN0ZWFkIG9mIGJlaW5nIGRlY29kZWQuICpzdHIqIG11c3QgZW5kIHdpdGggYSBudWxsIGNoYXJhY3RlciBidXQgY2Fubm90CisgICBjb250YWluIGVtYmVkZGVkIG51bGwgY2hhcmFjdGVycy4gKi8KKworUHlBUElfRlVOQyhQeU9iamVjdCopIFB5VW5pY29kZV9EZWNvZGVMb2NhbGVBbmRTaXplKAorICAgIGNvbnN0IGNoYXIgKnN0ciwKKyAgICBQeV9zc2l6ZV90IGxlbiwKKyAgICBjb25zdCBjaGFyICplcnJvcnMpOworCisvKiBTaW1pbGFyIHRvIFB5VW5pY29kZV9EZWNvZGVMb2NhbGVBbmRTaXplKCksIGJ1dCBjb21wdXRlIHRoZSBzdHJpbmcKKyAgIGxlbmd0aCB1c2luZyBzdHJsZW4oKS4gKi8KKworUHlBUElfRlVOQyhQeU9iamVjdCopIFB5VW5pY29kZV9EZWNvZGVMb2NhbGUoCisgICAgY29uc3QgY2hhciAqc3RyLAorICAgIGNvbnN0IGNoYXIgKmVycm9ycyk7CisKKy8qIEVuY29kZSBhIFVuaWNvZGUgb2JqZWN0IHRvIHRoZSBjdXJyZW50IGxvY2FsZSBlbmNvZGluZy4gVGhlIGVuY29kZXIgaXMKKyAgIHN0cmljdCBpcyAqc3Vycm9nYXRlZXNjYXBlKiBpcyBlcXVhbCB0byB6ZXJvLCBvdGhlcndpc2UgdGhlCisgICAic3Vycm9nYXRlZXNjYXBlIiBlcnJvciBoYW5kbGVyIGlzIHVzZWQuIFJldHVybiBhIGJ5dGVzIG9iamVjdC4gVGhlIHN0cmluZworICAgY2Fubm90IGNvbnRhaW4gZW1iZWRkZWQgbnVsbCBjaGFyYWN0ZXJzLi4gKi8KKworUHlBUElfRlVOQyhQeU9iamVjdCopIFB5VW5pY29kZV9FbmNvZGVMb2NhbGUoCisgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgY29uc3QgY2hhciAqZXJyb3JzCisgICAgKTsKKwogLyogLS0tIEZpbGUgc3lzdGVtIGVuY29kaW5nIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAogLyogUGFyc2VUdXBsZSBjb252ZXJ0ZXI6IGVuY29kZSBzdHIgb2JqZWN0cyB0byBieXRlcyB1c2luZwpAQCAtMTI5Miw3ICsxNjk2LDcgQEAKIAogICAgVGhlc2UgYXJlIGNhcGFibGUgb2YgaGFuZGxpbmcgVW5pY29kZSBvYmplY3RzIGFuZCBzdHJpbmdzIG9uIGlucHV0CiAgICAod2UgcmVmZXIgdG8gdGhlbSBhcyBzdHJpbmdzIGluIHRoZSBkZXNjcmlwdGlvbnMpIGFuZCByZXR1cm4KLSAgIFVuaWNvZGUgb2JqZWN0cyBvciBpbnRlZ2VycyBhcyBhcHBvcnByaWF0ZS4gKi8KKyAgIFVuaWNvZGUgb2JqZWN0cyBvciBpbnRlZ2VycyBhcyBhcHByb3ByaWF0ZS4gKi8KIAogLyogQ29uY2F0IHR3byBzdHJpbmdzIGdpdmluZyBhIG5ldyBVbmljb2RlIHN0cmluZy4gKi8KIApAQCAtMTQyNyw2ICsxODMxLDE1IEBACiAgICAgaW50IGRpcmVjdGlvbiAgICAgICAgICAgICAgIC8qIEZpbmQgZGlyZWN0aW9uOiArMSBmb3J3YXJkLCAtMSBiYWNrd2FyZCAqLwogICAgICk7CiAKKy8qIExpa2UgUHlVbmljb2RlX0ZpbmQsIGJ1dCBzZWFyY2ggZm9yIHNpbmdsZSBjaGFyYWN0ZXIgb25seS4gKi8KK1B5QVBJX0ZVTkMoUHlfc3NpemVfdCkgUHlVbmljb2RlX0ZpbmRDaGFyKAorICAgIFB5T2JqZWN0ICpzdHIsCisgICAgUHlfVUNTNCBjaCwKKyAgICBQeV9zc2l6ZV90IHN0YXJ0LAorICAgIFB5X3NzaXplX3QgZW5kLAorICAgIGludCBkaXJlY3Rpb24KKyAgICApOworCiAvKiBDb3VudCB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIHN1YnN0ciBpbiBzdHJbc3RhcnQ6ZW5kXS4gKi8KIAogUHlBUElfRlVOQyhQeV9zc2l6ZV90KSBQeVVuaWNvZGVfQ291bnQoCkBAIC0xNDYzLDcgKzE4NzYsNyBAQAogLyogUmljaCBjb21wYXJlIHR3byBzdHJpbmdzIGFuZCByZXR1cm4gb25lIG9mIHRoZSBmb2xsb3dpbmc6CiAKICAgIC0gTlVMTCBpbiBjYXNlIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkCi0gICAtIFB5X1RydWUgb3IgUHlfRmFsc2UgZm9yIHN1Y2Nlc3NmdWx5IGNvbXBhcmlzb25zCisgICAtIFB5X1RydWUgb3IgUHlfRmFsc2UgZm9yIHN1Y2Nlc3NmdWxseSBjb21wYXJpc29ucwogICAgLSBQeV9Ob3RJbXBsZW1lbnRlZCBpbiBjYXNlIHRoZSB0eXBlIGNvbWJpbmF0aW9uIGlzIHVua25vd24KIAogICAgTm90ZSB0aGF0IFB5X0VRIGFuZCBQeV9ORSBjb21wYXJpc29ucyBjYW4gY2F1c2UgYSBVbmljb2RlV2FybmluZyBpbgpAQCAtMTUxNCwzNSArMTkyNywyNiBAQAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQogLyogRXh0ZXJuYWxseSB2aXNpYmxlIGZvciBzdHIuc3RyaXAodW5pY29kZSkgKi8KIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5VW5pY29kZV9YU3RyaXAoCi0gICAgUHlVbmljb2RlT2JqZWN0ICpzZWxmLAorICAgIFB5T2JqZWN0ICpzZWxmLAogICAgIGludCBzdHJpcHR5cGUsCiAgICAgUHlPYmplY3QgKnNlcG9iagogICAgICk7CiAjZW5kaWYKIAotLyogVXNpbmcgdGhlIGN1cnJlbnQgbG9jYWxlLCBpbnNlcnQgdGhlIHRob3VzYW5kcyBncm91cGluZwotICAgaW50byB0aGUgc3RyaW5nIHBvaW50ZWQgdG8gYnkgYnVmZmVyLiAgRm9yIHRoZSBhcmd1bWVudCBkZXNjcmlwdGlvbnMsCi0gICBzZWUgT2JqZWN0cy9zdHJpbmdsaWIvbG9jYWxldXRpbC5oICovCi0KLSNpZm5kZWYgUHlfTElNSVRFRF9BUEkKLVB5QVBJX0ZVTkMoUHlfc3NpemVfdCkgX1B5VW5pY29kZV9JbnNlcnRUaG91c2FuZHNHcm91cGluZ0xvY2FsZShQeV9VTklDT0RFICpidWZmZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG5fYnVmZmVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfVU5JQ09ERSAqZGlnaXRzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuX2RpZ2l0cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWluX3dpZHRoKTsKLSNlbmRpZgotCiAvKiBVc2luZyBleHBsaWNpdCBwYXNzZWQtaW4gdmFsdWVzLCBpbnNlcnQgdGhlIHRob3VzYW5kcyBncm91cGluZwogICAgaW50byB0aGUgc3RyaW5nIHBvaW50ZWQgdG8gYnkgYnVmZmVyLiAgRm9yIHRoZSBhcmd1bWVudCBkZXNjcmlwdGlvbnMsCiAgICBzZWUgT2JqZWN0cy9zdHJpbmdsaWIvbG9jYWxldXRpbC5oICovCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCi1QeUFQSV9GVU5DKFB5X3NzaXplX3QpIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcoUHlfVU5JQ09ERSAqYnVmZmVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuX2J1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgKmRpZ2l0cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgbl9kaWdpdHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1pbl93aWR0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmdyb3VwaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqdGhvdXNhbmRzX3NlcCk7CitQeUFQSV9GVU5DKFB5X3NzaXplX3QpIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcoCisgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgUHlfc3NpemVfdCBpbmRleCwKKyAgICBQeV9zc2l6ZV90IG5fYnVmZmVyLAorICAgIHZvaWQgKmRpZ2l0cywKKyAgICBQeV9zc2l6ZV90IG5fZGlnaXRzLAorICAgIFB5X3NzaXplX3QgbWluX3dpZHRoLAorICAgIGNvbnN0IGNoYXIgKmdyb3VwaW5nLAorICAgIFB5T2JqZWN0ICp0aG91c2FuZHNfc2VwLAorICAgIFB5X1VDUzQgKm1heGNoYXIpOwogI2VuZGlmCiAvKiA9PT0gQ2hhcmFjdGVycyBUeXBlIEFQSXMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KIApAQCAtMTU5OCw2ICsyMDAyLDM0IEBACiAgICAgUHlfVUNTNCBjaCAgICAgICAvKiBVbmljb2RlIGNoYXJhY3RlciAqLwogICAgICk7CiAKK1B5QVBJX0ZVTkMoaW50KSBfUHlVbmljb2RlX1RvTG93ZXJGdWxsKAorICAgIFB5X1VDUzQgY2gsICAgICAgIC8qIFVuaWNvZGUgY2hhcmFjdGVyICovCisgICAgUHlfVUNTNCAqcmVzCisgICAgKTsKKworUHlBUElfRlVOQyhpbnQpIF9QeVVuaWNvZGVfVG9UaXRsZUZ1bGwoCisgICAgUHlfVUNTNCBjaCwgICAgICAgLyogVW5pY29kZSBjaGFyYWN0ZXIgKi8KKyAgICBQeV9VQ1M0ICpyZXMKKyAgICApOworCitQeUFQSV9GVU5DKGludCkgX1B5VW5pY29kZV9Ub1VwcGVyRnVsbCgKKyAgICBQeV9VQ1M0IGNoLCAgICAgICAvKiBVbmljb2RlIGNoYXJhY3RlciAqLworICAgIFB5X1VDUzQgKnJlcworICAgICk7CisKK1B5QVBJX0ZVTkMoaW50KSBfUHlVbmljb2RlX1RvRm9sZGVkRnVsbCgKKyAgICBQeV9VQ1M0IGNoLCAgICAgICAvKiBVbmljb2RlIGNoYXJhY3RlciAqLworICAgIFB5X1VDUzQgKnJlcworICAgICk7CisKK1B5QVBJX0ZVTkMoaW50KSBfUHlVbmljb2RlX0lzQ2FzZUlnbm9yYWJsZSgKKyAgICBQeV9VQ1M0IGNoICAgICAgICAgLyogVW5pY29kZSBjaGFyYWN0ZXIgKi8KKyAgICApOworCitQeUFQSV9GVU5DKGludCkgX1B5VW5pY29kZV9Jc0Nhc2VkKAorICAgIFB5X1VDUzQgY2ggICAgICAgICAvKiBVbmljb2RlIGNoYXJhY3RlciAqLworICAgICk7CisKIFB5QVBJX0ZVTkMoaW50KSBfUHlVbmljb2RlX1RvRGVjaW1hbERpZ2l0KAogICAgIFB5X1VDUzQgY2ggICAgICAgLyogVW5pY29kZSBjaGFyYWN0ZXIgKi8KICAgICApOwpAQCAtMTY3Niw2ICsyMTA4LDE3IEBACiAgICAgKTsKICNlbmRpZiAvKiBQeV9MSU1JVEVEX0FQSSAqLwogCisjaWYgZGVmaW5lZChQeV9ERUJVRykgJiYgIWRlZmluZWQoUHlfTElNSVRFRF9BUEkpCitQeUFQSV9GVU5DKGludCkgX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KAorICAgIFB5T2JqZWN0ICpvcCwKKyAgICBpbnQgY2hlY2tfY29udGVudCk7CisjZW5kaWYKKworLyogUmV0dXJuIGFuIGludGVybmVkIFVuaWNvZGUgb2JqZWN0IGZvciBhbiBJZGVudGlmaWVyOyBtYXkgZmFpbCBpZiB0aGVyZSBpcyBubyBtZW1vcnkuKi8KK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBfUHlVbmljb2RlX0Zyb21JZChfUHlfSWRlbnRpZmllciopOworLyogQ2xlYXIgYWxsIHN0YXRpYyBzdHJpbmdzLiAqLworUHlBUElfRlVOQyh2b2lkKSBfUHlVbmljb2RlX0NsZWFyU3RhdGljU3RyaW5ncyh2b2lkKTsKKwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL0xJQ0VOU0UgYi9MSUNFTlNFCmluZGV4IDQzMzg4ZTcuLjIzNWI1NjggMTAwNjQ0Ci0tLSBhL0xJQ0VOU0UKKysrIGIvTElDRU5TRQpAQCAtNzMsNyArNzMsNyBAQAogICAgIDMuMiAgICAgICAgICAgICAzLjEgICAgICAgICAyMDExICAgICAgICBQU0YgICAgICAgICB5ZXMKICAgICAzLjIuMSAgICAgICAgICAgMy4yICAgICAgICAgMjAxMSAgICAgICAgUFNGICAgICAgICAgeWVzCiAgICAgMy4yLjIgICAgICAgICAgIDMuMi4xICAgICAgIDIwMTEgICAgICAgIFBTRiAgICAgICAgIHllcwotICAgIDMuMi4zICAgICAgICAgICAzLjIuMiAgICAgICAyMDEyICAgICAgICBQU0YgICAgICAgICB5ZXMKKyAgICAzLjMuMCAgICAgICAgICAgMy4yICAgICAgICAgMjAxMiAgICAgICAgUFNGICAgICAgICAgeWVzCiAKIEZvb3Rub3RlczoKIApkaWZmIC0tZ2l0IGEvTGliL19kdW1teV90aHJlYWQucHkgYi9MaWIvX2R1bW15X3RocmVhZC5weQppbmRleCBlZDUwNTIwLi4xM2IxZjI2IDEwMDY0NAotLS0gYS9MaWIvX2R1bW15X3RocmVhZC5weQorKysgYi9MaWIvX2R1bW15X3RocmVhZC5weQpAQCAtMjQsMTEgKzI0LDcgQEAKICMgaW1wb3J0cyBhcmUgZG9uZSB3aGVuIG5lZWRlZCBvbiBhIGZ1bmN0aW9uLWJ5LWZ1bmN0aW9uIGJhc2lzLiAgU2luY2UgdGhyZWFkcwogIyBhcmUgZGlzYWJsZWQsIHRoZSBpbXBvcnQgbG9jayBzaG91bGQgbm90IGJlIGFuIGlzc3VlIGFueXdheSAoPz8pLgogCi1jbGFzcyBlcnJvcihFeGNlcHRpb24pOgotICAgICIiIkR1bW15IGltcGxlbWVudGF0aW9uIG9mIF90aHJlYWQuZXJyb3IuIiIiCi0KLSAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MpOgotICAgICAgICBzZWxmLmFyZ3MgPSBhcmdzCitlcnJvciA9IFJ1bnRpbWVFcnJvcgogCiBkZWYgc3RhcnRfbmV3X3RocmVhZChmdW5jdGlvbiwgYXJncywga3dhcmdzPXt9KToKICAgICAiIiJEdW1teSBpbXBsZW1lbnRhdGlvbiBvZiBfdGhyZWFkLnN0YXJ0X25ld190aHJlYWQoKS4KZGlmZiAtLWdpdCBhL0xpYi9fcHlpby5weSBiL0xpYi9fcHlpby5weQppbmRleCBhMmZhZWIzLi5mNjYyOTBmIDEwMDY0NAotLS0gYS9MaWIvX3B5aW8ucHkKKysrIGIvTGliL19weWlvLnB5CkBAIC0xNSw3ICsxNSw2IEBACiAKIGltcG9ydCBpbwogZnJvbSBpbyBpbXBvcnQgKF9fYWxsX18sIFNFRUtfU0VULCBTRUVLX0NVUiwgU0VFS19FTkQpCi1mcm9tIGVycm5vIGltcG9ydCBFSU5UUgogCiAjIG9wZW4oKSB1c2VzIHN0X2Jsa3NpemUgd2hlbmV2ZXIgd2UgY2FuCiBERUZBVUxUX0JVRkZFUl9TSVpFID0gOCAqIDEwMjQgICMgYnl0ZXMKQEAgLTI0LDIwICsyMywxMiBAQAogIyBkZWZpbmVkIGluIGlvLnB5LiBXZSBkb24ndCB1c2UgcmVhbCBpbmhlcml0YW5jZSB0aG91Z2gsIGJlY2F1c2Ugd2UgZG9uJ3QKICMgd2FudCB0byBpbmhlcml0IHRoZSBDIGltcGxlbWVudGF0aW9ucy4KIAotCi1jbGFzcyBCbG9ja2luZ0lPRXJyb3IoSU9FcnJvcik6Ci0KLSAgICAiIiJFeGNlcHRpb24gcmFpc2VkIHdoZW4gSS9PIHdvdWxkIGJsb2NrIG9uIGEgbm9uLWJsb2NraW5nIEkvTyBzdHJlYW0uIiIiCi0KLSAgICBkZWYgX19pbml0X18oc2VsZiwgZXJybm8sIHN0cmVycm9yLCBjaGFyYWN0ZXJzX3dyaXR0ZW49MCk6Ci0gICAgICAgIHN1cGVyKCkuX19pbml0X18oZXJybm8sIHN0cmVycm9yKQotICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShjaGFyYWN0ZXJzX3dyaXR0ZW4sIGludCk6Ci0gICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoImNoYXJhY3RlcnNfd3JpdHRlbiBtdXN0IGJlIGEgaW50ZWdlciIpCi0gICAgICAgIHNlbGYuY2hhcmFjdGVyc193cml0dGVuID0gY2hhcmFjdGVyc193cml0dGVuCisjIFJlYmluZCBmb3IgY29tcGF0aWJpbGl0eQorQmxvY2tpbmdJT0Vycm9yID0gQmxvY2tpbmdJT0Vycm9yCiAKIAogZGVmIG9wZW4oZmlsZSwgbW9kZT0iciIsIGJ1ZmZlcmluZz0tMSwgZW5jb2Rpbmc9Tm9uZSwgZXJyb3JzPU5vbmUsCi0gICAgICAgICBuZXdsaW5lPU5vbmUsIGNsb3NlZmQ9VHJ1ZSk6CisgICAgICAgICBuZXdsaW5lPU5vbmUsIGNsb3NlZmQ9VHJ1ZSwgb3BlbmVyPU5vbmUpOgogCiAgICAgciIiIk9wZW4gZmlsZSBhbmQgcmV0dXJuIGEgc3RyZWFtLiAgUmFpc2UgSU9FcnJvciB1cG9uIGZhaWx1cmUuCiAKQEAgLTQ3LDIxICszOCwyMiBAQAogICAgIHdyYXBwZWQuIChJZiBhIGZpbGUgZGVzY3JpcHRvciBpcyBnaXZlbiwgaXQgaXMgY2xvc2VkIHdoZW4gdGhlCiAgICAgcmV0dXJuZWQgSS9PIG9iamVjdCBpcyBjbG9zZWQsIHVubGVzcyBjbG9zZWZkIGlzIHNldCB0byBGYWxzZS4pCiAKLSAgICBtb2RlIGlzIGFuIG9wdGlvbmFsIHN0cmluZyB0aGF0IHNwZWNpZmllcyB0aGUgbW9kZSBpbiB3aGljaCB0aGUgZmlsZQotICAgIGlzIG9wZW5lZC4gSXQgZGVmYXVsdHMgdG8gJ3InIHdoaWNoIG1lYW5zIG9wZW4gZm9yIHJlYWRpbmcgaW4gdGV4dAotICAgIG1vZGUuICBPdGhlciBjb21tb24gdmFsdWVzIGFyZSAndycgZm9yIHdyaXRpbmcgKHRydW5jYXRpbmcgdGhlIGZpbGUgaWYKLSAgICBpdCBhbHJlYWR5IGV4aXN0cyksIGFuZCAnYScgZm9yIGFwcGVuZGluZyAod2hpY2ggb24gc29tZSBVbml4IHN5c3RlbXMsCi0gICAgbWVhbnMgdGhhdCBhbGwgd3JpdGVzIGFwcGVuZCB0byB0aGUgZW5kIG9mIHRoZSBmaWxlIHJlZ2FyZGxlc3Mgb2YgdGhlCi0gICAgY3VycmVudCBzZWVrIHBvc2l0aW9uKS4gSW4gdGV4dCBtb2RlLCBpZiBlbmNvZGluZyBpcyBub3Qgc3BlY2lmaWVkIHRoZQotICAgIGVuY29kaW5nIHVzZWQgaXMgcGxhdGZvcm0gZGVwZW5kZW50LiAoRm9yIHJlYWRpbmcgYW5kIHdyaXRpbmcgcmF3Ci0gICAgYnl0ZXMgdXNlIGJpbmFyeSBtb2RlIGFuZCBsZWF2ZSBlbmNvZGluZyB1bnNwZWNpZmllZC4pIFRoZSBhdmFpbGFibGUKLSAgICBtb2RlcyBhcmU6CisgICAgbW9kZSBpcyBhbiBvcHRpb25hbCBzdHJpbmcgdGhhdCBzcGVjaWZpZXMgdGhlIG1vZGUgaW4gd2hpY2ggdGhlIGZpbGUgaXMKKyAgICBvcGVuZWQuIEl0IGRlZmF1bHRzIHRvICdyJyB3aGljaCBtZWFucyBvcGVuIGZvciByZWFkaW5nIGluIHRleHQgbW9kZS4gT3RoZXIKKyAgICBjb21tb24gdmFsdWVzIGFyZSAndycgZm9yIHdyaXRpbmcgKHRydW5jYXRpbmcgdGhlIGZpbGUgaWYgaXQgYWxyZWFkeQorICAgIGV4aXN0cyksICd4JyBmb3IgZXhjbHVzaXZlIGNyZWF0aW9uIG9mIGEgbmV3IGZpbGUsIGFuZCAnYScgZm9yIGFwcGVuZGluZworICAgICh3aGljaCBvbiBzb21lIFVuaXggc3lzdGVtcywgbWVhbnMgdGhhdCBhbGwgd3JpdGVzIGFwcGVuZCB0byB0aGUgZW5kIG9mIHRoZQorICAgIGZpbGUgcmVnYXJkbGVzcyBvZiB0aGUgY3VycmVudCBzZWVrIHBvc2l0aW9uKS4gSW4gdGV4dCBtb2RlLCBpZiBlbmNvZGluZyBpcworICAgIG5vdCBzcGVjaWZpZWQgdGhlIGVuY29kaW5nIHVzZWQgaXMgcGxhdGZvcm0gZGVwZW5kZW50LiAoRm9yIHJlYWRpbmcgYW5kCisgICAgd3JpdGluZyByYXcgYnl0ZXMgdXNlIGJpbmFyeSBtb2RlIGFuZCBsZWF2ZSBlbmNvZGluZyB1bnNwZWNpZmllZC4pIFRoZQorICAgIGF2YWlsYWJsZSBtb2RlcyBhcmU6CiAKICAgICA9PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAgQ2hhcmFjdGVyIE1lYW5pbmcKICAgICAtLS0tLS0tLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgJ3InICAgICAgIG9wZW4gZm9yIHJlYWRpbmcgKGRlZmF1bHQpCiAgICAgJ3cnICAgICAgIG9wZW4gZm9yIHdyaXRpbmcsIHRydW5jYXRpbmcgdGhlIGZpbGUgZmlyc3QKKyAgICAneCcgICAgICAgY3JlYXRlIGEgbmV3IGZpbGUgYW5kIG9wZW4gaXQgZm9yIHdyaXRpbmcKICAgICAnYScgICAgICAgb3BlbiBmb3Igd3JpdGluZywgYXBwZW5kaW5nIHRvIHRoZSBlbmQgb2YgdGhlIGZpbGUgaWYgaXQgZXhpc3RzCiAgICAgJ2InICAgICAgIGJpbmFyeSBtb2RlCiAgICAgJ3QnICAgICAgIHRleHQgbW9kZSAoZGVmYXVsdCkKQEAgLTcyLDcgKzY0LDggQEAKIAogICAgIFRoZSBkZWZhdWx0IG1vZGUgaXMgJ3J0JyAob3BlbiBmb3IgcmVhZGluZyB0ZXh0KS4gRm9yIGJpbmFyeSByYW5kb20KICAgICBhY2Nlc3MsIHRoZSBtb2RlICd3K2InIG9wZW5zIGFuZCB0cnVuY2F0ZXMgdGhlIGZpbGUgdG8gMCBieXRlcywgd2hpbGUKLSAgICAncitiJyBvcGVucyB0aGUgZmlsZSB3aXRob3V0IHRydW5jYXRpb24uCisgICAgJ3IrYicgb3BlbnMgdGhlIGZpbGUgd2l0aG91dCB0cnVuY2F0aW9uLiBUaGUgJ3gnIG1vZGUgaW1wbGllcyAndycgYW5kCisgICAgcmFpc2VzIGFuIGBGaWxlRXhpc3RzRXJyb3JgIGlmIHRoZSBmaWxlIGFscmVhZHkgZXhpc3RzLgogCiAgICAgUHl0aG9uIGRpc3Rpbmd1aXNoZXMgYmV0d2VlbiBmaWxlcyBvcGVuZWQgaW4gYmluYXJ5IGFuZCB0ZXh0IG1vZGVzLAogICAgIGV2ZW4gd2hlbiB0aGUgdW5kZXJseWluZyBvcGVyYXRpbmcgc3lzdGVtIGRvZXNuJ3QuIEZpbGVzIG9wZW5lZCBpbgpAQCAtMTMyLDYgKzEyNSwxMiBAQAogICAgIGJlIGtlcHQgb3BlbiB3aGVuIHRoZSBmaWxlIGlzIGNsb3NlZC4gVGhpcyBkb2VzIG5vdCB3b3JrIHdoZW4gYSBmaWxlIG5hbWUgaXMKICAgICBnaXZlbiBhbmQgbXVzdCBiZSBUcnVlIGluIHRoYXQgY2FzZS4KIAorICAgIEEgY3VzdG9tIG9wZW5lciBjYW4gYmUgdXNlZCBieSBwYXNzaW5nIGEgY2FsbGFibGUgYXMgKm9wZW5lciouIFRoZQorICAgIHVuZGVybHlpbmcgZmlsZSBkZXNjcmlwdG9yIGZvciB0aGUgZmlsZSBvYmplY3QgaXMgdGhlbiBvYnRhaW5lZCBieSBjYWxsaW5nCisgICAgKm9wZW5lciogd2l0aCAoKmZpbGUqLCAqZmxhZ3MqKS4gKm9wZW5lciogbXVzdCByZXR1cm4gYW4gb3BlbiBmaWxlCisgICAgZGVzY3JpcHRvciAocGFzc2luZyBvcy5vcGVuIGFzICpvcGVuZXIqIHJlc3VsdHMgaW4gZnVuY3Rpb25hbGl0eSBzaW1pbGFyIHRvCisgICAgcGFzc2luZyBOb25lKS4KKwogICAgIG9wZW4oKSByZXR1cm5zIGEgZmlsZSBvYmplY3Qgd2hvc2UgdHlwZSBkZXBlbmRzIG9uIHRoZSBtb2RlLCBhbmQKICAgICB0aHJvdWdoIHdoaWNoIHRoZSBzdGFuZGFyZCBmaWxlIG9wZXJhdGlvbnMgc3VjaCBhcyByZWFkaW5nIGFuZCB3cml0aW5nCiAgICAgYXJlIHBlcmZvcm1lZC4gV2hlbiBvcGVuKCkgaXMgdXNlZCB0byBvcGVuIGEgZmlsZSBpbiBhIHRleHQgbW9kZSAoJ3cnLApAQCAtMTU3LDggKzE1Niw5IEBACiAgICAgaWYgZXJyb3JzIGlzIG5vdCBOb25lIGFuZCBub3QgaXNpbnN0YW5jZShlcnJvcnMsIHN0cik6CiAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiaW52YWxpZCBlcnJvcnM6ICVyIiAlIGVycm9ycykKICAgICBtb2RlcyA9IHNldChtb2RlKQotICAgIGlmIG1vZGVzIC0gc2V0KCJhcndiK3RVIikgb3IgbGVuKG1vZGUpID4gbGVuKG1vZGVzKToKKyAgICBpZiBtb2RlcyAtIHNldCgiYXhyd2IrdFUiKSBvciBsZW4obW9kZSkgPiBsZW4obW9kZXMpOgogICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJpbnZhbGlkIG1vZGU6ICVyIiAlIG1vZGUpCisgICAgY3JlYXRpbmcgPSAieCIgaW4gbW9kZXMKICAgICByZWFkaW5nID0gInIiIGluIG1vZGVzCiAgICAgd3JpdGluZyA9ICJ3IiBpbiBtb2RlcwogICAgIGFwcGVuZGluZyA9ICJhIiBpbiBtb2RlcwpAQCAtMTY2LDE0ICsxNjYsMTQgQEAKICAgICB0ZXh0ID0gInQiIGluIG1vZGVzCiAgICAgYmluYXJ5ID0gImIiIGluIG1vZGVzCiAgICAgaWYgIlUiIGluIG1vZGVzOgotICAgICAgICBpZiB3cml0aW5nIG9yIGFwcGVuZGluZzoKKyAgICAgICAgaWYgY3JlYXRpbmcgb3Igd3JpdGluZyBvciBhcHBlbmRpbmc6CiAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJjYW4ndCB1c2UgVSBhbmQgd3JpdGluZyBtb2RlIGF0IG9uY2UiKQogICAgICAgICByZWFkaW5nID0gVHJ1ZQogICAgIGlmIHRleHQgYW5kIGJpbmFyeToKICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY2FuJ3QgaGF2ZSB0ZXh0IGFuZCBiaW5hcnkgbW9kZSBhdCBvbmNlIikKLSAgICBpZiByZWFkaW5nICsgd3JpdGluZyArIGFwcGVuZGluZyA+IDE6CisgICAgaWYgY3JlYXRpbmcgKyByZWFkaW5nICsgd3JpdGluZyArIGFwcGVuZGluZyA+IDE6CiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImNhbid0IGhhdmUgcmVhZC93cml0ZS9hcHBlbmQgbW9kZSBhdCBvbmNlIikKLSAgICBpZiBub3QgKHJlYWRpbmcgb3Igd3JpdGluZyBvciBhcHBlbmRpbmcpOgorICAgIGlmIG5vdCAoY3JlYXRpbmcgb3IgcmVhZGluZyBvciB3cml0aW5nIG9yIGFwcGVuZGluZyk6CiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIm11c3QgaGF2ZSBleGFjdGx5IG9uZSBvZiByZWFkL3dyaXRlL2FwcGVuZCBtb2RlIikKICAgICBpZiBiaW5hcnkgYW5kIGVuY29kaW5nIGlzIG5vdCBOb25lOgogICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJiaW5hcnkgbW9kZSBkb2Vzbid0IHRha2UgYW4gZW5jb2RpbmcgYXJndW1lbnQiKQpAQCAtMTgyLDExICsxODIsMTIgQEAKICAgICBpZiBiaW5hcnkgYW5kIG5ld2xpbmUgaXMgbm90IE5vbmU6CiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImJpbmFyeSBtb2RlIGRvZXNuJ3QgdGFrZSBhIG5ld2xpbmUgYXJndW1lbnQiKQogICAgIHJhdyA9IEZpbGVJTyhmaWxlLAorICAgICAgICAgICAgICAgICAoY3JlYXRpbmcgYW5kICJ4IiBvciAiIikgKwogICAgICAgICAgICAgICAgICAocmVhZGluZyBhbmQgInIiIG9yICIiKSArCiAgICAgICAgICAgICAgICAgICh3cml0aW5nIGFuZCAidyIgb3IgIiIpICsKICAgICAgICAgICAgICAgICAgKGFwcGVuZGluZyBhbmQgImEiIG9yICIiKSArCiAgICAgICAgICAgICAgICAgICh1cGRhdGluZyBhbmQgIisiIG9yICIiKSwKLSAgICAgICAgICAgICAgICAgY2xvc2VmZCkKKyAgICAgICAgICAgICAgICAgY2xvc2VmZCwgb3BlbmVyPW9wZW5lcikKICAgICBsaW5lX2J1ZmZlcmluZyA9IEZhbHNlCiAgICAgaWYgYnVmZmVyaW5nID09IDEgb3IgYnVmZmVyaW5nIDwgMCBhbmQgcmF3LmlzYXR0eSgpOgogICAgICAgICBidWZmZXJpbmcgPSAtMQpAQCAtMjA4LDcgKzIwOSw3IEBACiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImNhbid0IGhhdmUgdW5idWZmZXJlZCB0ZXh0IEkvTyIpCiAgICAgaWYgdXBkYXRpbmc6CiAgICAgICAgIGJ1ZmZlciA9IEJ1ZmZlcmVkUmFuZG9tKHJhdywgYnVmZmVyaW5nKQotICAgIGVsaWYgd3JpdGluZyBvciBhcHBlbmRpbmc6CisgICAgZWxpZiBjcmVhdGluZyBvciB3cml0aW5nIG9yIGFwcGVuZGluZzoKICAgICAgICAgYnVmZmVyID0gQnVmZmVyZWRXcml0ZXIocmF3LCBidWZmZXJpbmcpCiAgICAgZWxpZiByZWFkaW5nOgogICAgICAgICBidWZmZXIgPSBCdWZmZXJlZFJlYWRlcihyYXcsIGJ1ZmZlcmluZykKQEAgLTk0OCwxNSArOTQ5LDE5IEBACiAgICAgICAgICMgU3BlY2lhbCBjYXNlIGZvciB3aGVuIHRoZSBudW1iZXIgb2YgYnl0ZXMgdG8gcmVhZCBpcyB1bnNwZWNpZmllZC4KICAgICAgICAgaWYgbiBpcyBOb25lIG9yIG4gPT0gLTE6CiAgICAgICAgICAgICBzZWxmLl9yZXNldF9yZWFkX2J1ZigpCisgICAgICAgICAgICBpZiBoYXNhdHRyKHNlbGYucmF3LCAncmVhZGFsbCcpOgorICAgICAgICAgICAgICAgIGNodW5rID0gc2VsZi5yYXcucmVhZGFsbCgpCisgICAgICAgICAgICAgICAgaWYgY2h1bmsgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGJ1Zltwb3M6XSBvciBOb25lCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGJ1Zltwb3M6XSArIGNodW5rCiAgICAgICAgICAgICBjaHVua3MgPSBbYnVmW3BvczpdXSAgIyBTdHJpcCB0aGUgY29uc3VtZWQgYnl0ZXMuCiAgICAgICAgICAgICBjdXJyZW50X3NpemUgPSAwCiAgICAgICAgICAgICB3aGlsZSBUcnVlOgogICAgICAgICAgICAgICAgICMgUmVhZCB1bnRpbCBFT0Ygb3IgdW50aWwgcmVhZCgpIHdvdWxkIGJsb2NrLgogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgY2h1bmsgPSBzZWxmLnJhdy5yZWFkKCkKLSAgICAgICAgICAgICAgICBleGNlcHQgSU9FcnJvciBhcyBlOgotICAgICAgICAgICAgICAgICAgICBpZiBlLmVycm5vICE9IEVJTlRSOgotICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgICAgICBpZiBjaHVuayBpbiBlbXB0eV92YWx1ZXM6CiAgICAgICAgICAgICAgICAgICAgIG5vZGF0YV92YWwgPSBjaHVuawpAQCAtOTc4LDkgKzk4Myw3IEBACiAgICAgICAgIHdoaWxlIGF2YWlsIDwgbjoKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBjaHVuayA9IHNlbGYucmF3LnJlYWQod2FudGVkKQotICAgICAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZToKLSAgICAgICAgICAgICAgICBpZiBlLmVycm5vICE9IEVJTlRSOgotICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgZXhjZXB0IEludGVycnVwdGVkRXJyb3I6CiAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgIGlmIGNodW5rIGluIGVtcHR5X3ZhbHVlczoKICAgICAgICAgICAgICAgICBub2RhdGFfdmFsID0gY2h1bmsKQEAgLTEwMTMsOSArMTAxNiw3IEBACiAgICAgICAgICAgICB3aGlsZSBUcnVlOgogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgY3VycmVudCA9IHNlbGYucmF3LnJlYWQodG9fcmVhZCkKLSAgICAgICAgICAgICAgICBleGNlcHQgSU9FcnJvciBhcyBlOgotICAgICAgICAgICAgICAgICAgICBpZiBlLmVycm5vICE9IEVJTlRSOgotICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgaWYgY3VycmVudDoKQEAgLTExMjAsMTMgKzExMjEsMTEgQEAKICAgICAgICAgd2hpbGUgc2VsZi5fd3JpdGVfYnVmOgogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIG4gPSBzZWxmLnJhdy53cml0ZShzZWxmLl93cml0ZV9idWYpCisgICAgICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKKyAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgZXhjZXB0IEJsb2NraW5nSU9FcnJvcjoKICAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoInNlbGYucmF3IHNob3VsZCBpbXBsZW1lbnQgUmF3SU9CYXNlOiBpdCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaG91bGQgbm90IHJhaXNlIEJsb2NraW5nSU9FcnJvciIpCi0gICAgICAgICAgICBleGNlcHQgSU9FcnJvciBhcyBlOgotICAgICAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gRUlOVFI6Ci0gICAgICAgICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgIGlmIG4gaXMgTm9uZToKICAgICAgICAgICAgICAgICByYWlzZSBCbG9ja2luZ0lPRXJyb3IoCiAgICAgICAgICAgICAgICAgICAgIGVycm5vLkVBR0FJTiwKQEAgLTE1MTUsNiArMTUxNCw3IEBACiAgICAgICAgIHNlbGYuX3NuYXBzaG90ID0gTm9uZSAgIyBpbmZvIGZvciByZWNvbnN0cnVjdGluZyBkZWNvZGVyIHN0YXRlCiAgICAgICAgIHNlbGYuX3NlZWthYmxlID0gc2VsZi5fdGVsbGluZyA9IHNlbGYuYnVmZmVyLnNlZWthYmxlKCkKICAgICAgICAgc2VsZi5faGFzX3JlYWQxID0gaGFzYXR0cihzZWxmLmJ1ZmZlciwgJ3JlYWQxJykKKyAgICAgICAgc2VsZi5fYjJjcmF0aW8gPSAwLjAKIAogICAgICAgICBpZiBzZWxmLl9zZWVrYWJsZSBhbmQgc2VsZi53cml0YWJsZSgpOgogICAgICAgICAgICAgcG9zaXRpb24gPSBzZWxmLmJ1ZmZlci50ZWxsKCkKQEAgLTE2ODUsNyArMTY4NSwxMiBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgaW5wdXRfY2h1bmsgPSBzZWxmLmJ1ZmZlci5yZWFkKHNlbGYuX0NIVU5LX1NJWkUpCiAgICAgICAgIGVvZiA9IG5vdCBpbnB1dF9jaHVuawotICAgICAgICBzZWxmLl9zZXRfZGVjb2RlZF9jaGFycyhzZWxmLl9kZWNvZGVyLmRlY29kZShpbnB1dF9jaHVuaywgZW9mKSkKKyAgICAgICAgZGVjb2RlZF9jaGFycyA9IHNlbGYuX2RlY29kZXIuZGVjb2RlKGlucHV0X2NodW5rLCBlb2YpCisgICAgICAgIHNlbGYuX3NldF9kZWNvZGVkX2NoYXJzKGRlY29kZWRfY2hhcnMpCisgICAgICAgIGlmIGRlY29kZWRfY2hhcnM6CisgICAgICAgICAgICBzZWxmLl9iMmNyYXRpbyA9IGxlbihpbnB1dF9jaHVuaykgLyBsZW4oc2VsZi5fZGVjb2RlZF9jaGFycykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuX2IyY3JhdGlvID0gMC4wCiAKICAgICAgICAgaWYgc2VsZi5fdGVsbGluZzoKICAgICAgICAgICAgICMgQXQgdGhlIHNuYXBzaG90IHBvaW50LCBsZW4oZGVjX2J1ZmZlcikgYnl0ZXMgYmVmb3JlIHRoZSByZWFkLApAQCAtMTczOSwyMCArMTc0NCw1NiBAQAogICAgICAgICAjIGZvcndhcmQgdW50aWwgaXQgZ2l2ZXMgdXMgZW5vdWdoIGRlY29kZWQgY2hhcmFjdGVycy4KICAgICAgICAgc2F2ZWRfc3RhdGUgPSBkZWNvZGVyLmdldHN0YXRlKCkKICAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBGYXN0IHNlYXJjaCBmb3IgYW4gYWNjZXB0YWJsZSBzdGFydCBwb2ludCwgY2xvc2UgdG8gb3VyCisgICAgICAgICAgICAjIGN1cnJlbnQgcG9zLgorICAgICAgICAgICAgIyBSYXRpb25hbGU6IGNhbGxpbmcgZGVjb2Rlci5kZWNvZGUoKSBoYXMgYSBsYXJnZSBvdmVyaGVhZAorICAgICAgICAgICAgIyByZWdhcmRsZXNzIG9mIGNodW5rIHNpemU7IHdlIHdhbnQgdGhlIG51bWJlciBvZiBzdWNoIGNhbGxzIHRvCisgICAgICAgICAgICAjIGJlIE8oMSkgaW4gbW9zdCBzaXR1YXRpb25zIChjb21tb24gZGVjb2RlcnMsIG5vbi1jcmF6eSBpbnB1dCkuCisgICAgICAgICAgICAjIEFjdHVhbGx5LCBpdCB3aWxsIGJlIGV4YWN0bHkgMSBmb3IgZml4ZWQtc2l6ZSBjb2RlY3MgKGFsbAorICAgICAgICAgICAgIyA4LWJpdCBjb2RlY3MsIGFsc28gVVRGLTE2IGFuZCBVVEYtMzIpLgorICAgICAgICAgICAgc2tpcF9ieXRlcyA9IGludChzZWxmLl9iMmNyYXRpbyAqIGNoYXJzX3RvX3NraXApCisgICAgICAgICAgICBza2lwX2JhY2sgPSAxCisgICAgICAgICAgICBhc3NlcnQgc2tpcF9ieXRlcyA8PSBsZW4obmV4dF9pbnB1dCkKKyAgICAgICAgICAgIHdoaWxlIHNraXBfYnl0ZXMgPiAwOgorICAgICAgICAgICAgICAgIGRlY29kZXIuc2V0c3RhdGUoKGInJywgZGVjX2ZsYWdzKSkKKyAgICAgICAgICAgICAgICAjIERlY29kZSB1cCB0byB0ZW1wdGF0aXZlIHN0YXJ0IHBvaW50CisgICAgICAgICAgICAgICAgbiA9IGxlbihkZWNvZGVyLmRlY29kZShuZXh0X2lucHV0Wzpza2lwX2J5dGVzXSkpCisgICAgICAgICAgICAgICAgaWYgbiA8PSBjaGFyc190b19za2lwOgorICAgICAgICAgICAgICAgICAgICBiLCBkID0gZGVjb2Rlci5nZXRzdGF0ZSgpCisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBiOgorICAgICAgICAgICAgICAgICAgICAgICAgIyBCZWZvcmUgcG9zIGFuZCBubyBieXRlcyBidWZmZXJlZCBpbiBkZWNvZGVyID0+IE9LCisgICAgICAgICAgICAgICAgICAgICAgICBkZWNfZmxhZ3MgPSBkCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyc190b19za2lwIC09IG4KKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgICMgU2tpcCBiYWNrIGJ5IGJ1ZmZlcmVkIGFtb3VudCBhbmQgcmVzZXQgaGV1cmlzdGljCisgICAgICAgICAgICAgICAgICAgIHNraXBfYnl0ZXMgLT0gbGVuKGIpCisgICAgICAgICAgICAgICAgICAgIHNraXBfYmFjayA9IDEKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAjIFdlJ3JlIHRvbyBmYXIgYWhlYWQsIHNraXAgYmFjayBhIGJpdAorICAgICAgICAgICAgICAgICAgICBza2lwX2J5dGVzIC09IHNraXBfYmFjaworICAgICAgICAgICAgICAgICAgICBza2lwX2JhY2sgPSBza2lwX2JhY2sgKiAyCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNraXBfYnl0ZXMgPSAwCisgICAgICAgICAgICAgICAgZGVjb2Rlci5zZXRzdGF0ZSgoYicnLCBkZWNfZmxhZ3MpKQorCiAgICAgICAgICAgICAjIE5vdGUgb3VyIGluaXRpYWwgc3RhcnQgcG9pbnQuCi0gICAgICAgICAgICBkZWNvZGVyLnNldHN0YXRlKChiJycsIGRlY19mbGFncykpCi0gICAgICAgICAgICBzdGFydF9wb3MgPSBwb3NpdGlvbgotICAgICAgICAgICAgc3RhcnRfZmxhZ3MsIGJ5dGVzX2ZlZCwgY2hhcnNfZGVjb2RlZCA9IGRlY19mbGFncywgMCwgMAotICAgICAgICAgICAgbmVlZF9lb2YgPSAwCisgICAgICAgICAgICBzdGFydF9wb3MgPSBwb3NpdGlvbiArIHNraXBfYnl0ZXMKKyAgICAgICAgICAgIHN0YXJ0X2ZsYWdzID0gZGVjX2ZsYWdzCisgICAgICAgICAgICBpZiBjaGFyc190b19za2lwID09IDA6CisgICAgICAgICAgICAgICAgIyBXZSBoYXZlbid0IG1vdmVkIGZyb20gdGhlIHN0YXJ0IHBvaW50LgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9wYWNrX2Nvb2tpZShzdGFydF9wb3MsIHN0YXJ0X2ZsYWdzKQogCiAgICAgICAgICAgICAjIEZlZWQgdGhlIGRlY29kZXIgb25lIGJ5dGUgYXQgYSB0aW1lLiAgQXMgd2UgZ28sIG5vdGUgdGhlCiAgICAgICAgICAgICAjIG5lYXJlc3QgInNhZmUgc3RhcnQgcG9pbnQiIGJlZm9yZSB0aGUgY3VycmVudCBsb2NhdGlvbgogICAgICAgICAgICAgIyAoYSBwb2ludCB3aGVyZSB0aGUgZGVjb2RlciBoYXMgbm90aGluZyBidWZmZXJlZCwgc28gc2VlaygpCiAgICAgICAgICAgICAjIGNhbiBzYWZlbHkgc3RhcnQgZnJvbSB0aGVyZSBhbmQgYWR2YW5jZSB0byB0aGlzIGxvY2F0aW9uKS4KLSAgICAgICAgICAgIG5leHRfYnl0ZSA9IGJ5dGVhcnJheSgxKQotICAgICAgICAgICAgZm9yIG5leHRfYnl0ZVswXSBpbiBuZXh0X2lucHV0OgorICAgICAgICAgICAgYnl0ZXNfZmVkID0gMAorICAgICAgICAgICAgbmVlZF9lb2YgPSAwCisgICAgICAgICAgICAjIENoYXJzIGRlY29kZWQgc2luY2UgYHN0YXJ0X3Bvc2AKKyAgICAgICAgICAgIGNoYXJzX2RlY29kZWQgPSAwCisgICAgICAgICAgICBmb3IgaSBpbiByYW5nZShza2lwX2J5dGVzLCBsZW4obmV4dF9pbnB1dCkpOgogICAgICAgICAgICAgICAgIGJ5dGVzX2ZlZCArPSAxCi0gICAgICAgICAgICAgICAgY2hhcnNfZGVjb2RlZCArPSBsZW4oZGVjb2Rlci5kZWNvZGUobmV4dF9ieXRlKSkKKyAgICAgICAgICAgICAgICBjaGFyc19kZWNvZGVkICs9IGxlbihkZWNvZGVyLmRlY29kZShuZXh0X2lucHV0W2k6aSsxXSkpCiAgICAgICAgICAgICAgICAgZGVjX2J1ZmZlciwgZGVjX2ZsYWdzID0gZGVjb2Rlci5nZXRzdGF0ZSgpCiAgICAgICAgICAgICAgICAgaWYgbm90IGRlY19idWZmZXIgYW5kIGNoYXJzX2RlY29kZWQgPD0gY2hhcnNfdG9fc2tpcDoKICAgICAgICAgICAgICAgICAgICAgIyBEZWNvZGVyIGJ1ZmZlciBpcyBlbXB0eSwgc28gdGhpcyBpcyBhIHNhZmUgc3RhcnQgcG9pbnQuCmRpZmYgLS1naXQgYS9MaWIvYWJjLnB5IGIvTGliL2FiYy5weQppbmRleCBhNmMyZGM0Li4wOTc3OGU4IDEwMDY0NAotLS0gYS9MaWIvYWJjLnB5CisrKyBiL0xpYi9hYmMucHkKQEAgLTI2LDcgKzI2LDggQEAKIAogCiBjbGFzcyBhYnN0cmFjdGNsYXNzbWV0aG9kKGNsYXNzbWV0aG9kKToKLSAgICAiIiJBIGRlY29yYXRvciBpbmRpY2F0aW5nIGFic3RyYWN0IGNsYXNzbWV0aG9kcy4KKyAgICAiIiIKKyAgICBBIGRlY29yYXRvciBpbmRpY2F0aW5nIGFic3RyYWN0IGNsYXNzbWV0aG9kcy4KIAogICAgIFNpbWlsYXIgdG8gYWJzdHJhY3RtZXRob2QuCiAKQEAgLTM2LDYgKzM3LDkgQEAKICAgICAgICAgICAgIEBhYnN0cmFjdGNsYXNzbWV0aG9kCiAgICAgICAgICAgICBkZWYgbXlfYWJzdHJhY3RfY2xhc3NtZXRob2QoY2xzLCAuLi4pOgogICAgICAgICAgICAgICAgIC4uLgorCisgICAgJ2Fic3RyYWN0Y2xhc3NtZXRob2QnIGlzIGRlcHJlY2F0ZWQuIFVzZSAnY2xhc3NtZXRob2QnIHdpdGgKKyAgICAnYWJzdHJhY3RtZXRob2QnIGluc3RlYWQuCiAgICAgIiIiCiAKICAgICBfX2lzYWJzdHJhY3RtZXRob2RfXyA9IFRydWUKQEAgLTQ2LDcgKzUwLDggQEAKIAogCiBjbGFzcyBhYnN0cmFjdHN0YXRpY21ldGhvZChzdGF0aWNtZXRob2QpOgotICAgICIiIkEgZGVjb3JhdG9yIGluZGljYXRpbmcgYWJzdHJhY3Qgc3RhdGljbWV0aG9kcy4KKyAgICAiIiIKKyAgICBBIGRlY29yYXRvciBpbmRpY2F0aW5nIGFic3RyYWN0IHN0YXRpY21ldGhvZHMuCiAKICAgICBTaW1pbGFyIHRvIGFic3RyYWN0bWV0aG9kLgogCkBAIC01Niw2ICs2MSw5IEBACiAgICAgICAgICAgICBAYWJzdHJhY3RzdGF0aWNtZXRob2QKICAgICAgICAgICAgIGRlZiBteV9hYnN0cmFjdF9zdGF0aWNtZXRob2QoLi4uKToKICAgICAgICAgICAgICAgICAuLi4KKworICAgICdhYnN0cmFjdHN0YXRpY21ldGhvZCcgaXMgZGVwcmVjYXRlZC4gVXNlICdzdGF0aWNtZXRob2QnIHdpdGgKKyAgICAnYWJzdHJhY3RtZXRob2QnIGluc3RlYWQuCiAgICAgIiIiCiAKICAgICBfX2lzYWJzdHJhY3RtZXRob2RfXyA9IFRydWUKQEAgLTY2LDcgKzc0LDggQEAKIAogCiBjbGFzcyBhYnN0cmFjdHByb3BlcnR5KHByb3BlcnR5KToKLSAgICAiIiJBIGRlY29yYXRvciBpbmRpY2F0aW5nIGFic3RyYWN0IHByb3BlcnRpZXMuCisgICAgIiIiCisgICAgQSBkZWNvcmF0b3IgaW5kaWNhdGluZyBhYnN0cmFjdCBwcm9wZXJ0aWVzLgogCiAgICAgUmVxdWlyZXMgdGhhdCB0aGUgbWV0YWNsYXNzIGlzIEFCQ01ldGEgb3IgZGVyaXZlZCBmcm9tIGl0LiAgQQogICAgIGNsYXNzIHRoYXQgaGFzIGEgbWV0YWNsYXNzIGRlcml2ZWQgZnJvbSBBQkNNZXRhIGNhbm5vdCBiZQpAQCAtODgsNyArOTcsMTEgQEAKICAgICAgICAgICAgIGRlZiBnZXR4KHNlbGYpOiAuLi4KICAgICAgICAgICAgIGRlZiBzZXR4KHNlbGYsIHZhbHVlKTogLi4uCiAgICAgICAgICAgICB4ID0gYWJzdHJhY3Rwcm9wZXJ0eShnZXR4LCBzZXR4KQorCisgICAgJ2Fic3RyYWN0cHJvcGVydHknIGlzIGRlcHJlY2F0ZWQuIFVzZSAncHJvcGVydHknIHdpdGggJ2Fic3RyYWN0bWV0aG9kJworICAgIGluc3RlYWQuCiAgICAgIiIiCisKICAgICBfX2lzYWJzdHJhY3RtZXRob2RfXyA9IFRydWUKIAogCkBAIC0xMzMsMTEgKzE0NiwxNCBAQAogICAgICAgICByZXR1cm4gY2xzCiAKICAgICBkZWYgcmVnaXN0ZXIoY2xzLCBzdWJjbGFzcyk6Ci0gICAgICAgICIiIlJlZ2lzdGVyIGEgdmlydHVhbCBzdWJjbGFzcyBvZiBhbiBBQkMuIiIiCisgICAgICAgICIiIlJlZ2lzdGVyIGEgdmlydHVhbCBzdWJjbGFzcyBvZiBhbiBBQkMuCisKKyAgICAgICAgUmV0dXJucyB0aGUgc3ViY2xhc3MsIHRvIGFsbG93IHVzYWdlIGFzIGEgY2xhc3MgZGVjb3JhdG9yLgorICAgICAgICAiIiIKICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc3ViY2xhc3MsIHR5cGUpOgogICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJDYW4gb25seSByZWdpc3RlciBjbGFzc2VzIikKICAgICAgICAgaWYgaXNzdWJjbGFzcyhzdWJjbGFzcywgY2xzKToKLSAgICAgICAgICAgIHJldHVybiAgIyBBbHJlYWR5IGEgc3ViY2xhc3MKKyAgICAgICAgICAgIHJldHVybiBzdWJjbGFzcyAgIyBBbHJlYWR5IGEgc3ViY2xhc3MKICAgICAgICAgIyBTdWJ0bGU6IHRlc3QgZm9yIGN5Y2xlcyAqYWZ0ZXIqIHRlc3RpbmcgZm9yICJhbHJlYWR5IGEgc3ViY2xhc3MiOwogICAgICAgICAjIHRoaXMgbWVhbnMgd2UgYWxsb3cgWC5yZWdpc3RlcihYKSBhbmQgaW50ZXJwcmV0IGl0IGFzIGEgbm8tb3AuCiAgICAgICAgIGlmIGlzc3ViY2xhc3MoY2xzLCBzdWJjbGFzcyk6CkBAIC0xNDUsNiArMTYxLDcgQEAKICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiUmVmdXNpbmcgdG8gY3JlYXRlIGFuIGluaGVyaXRhbmNlIGN5Y2xlIikKICAgICAgICAgY2xzLl9hYmNfcmVnaXN0cnkuYWRkKHN1YmNsYXNzKQogICAgICAgICBBQkNNZXRhLl9hYmNfaW52YWxpZGF0aW9uX2NvdW50ZXIgKz0gMSAgIyBJbnZhbGlkYXRlIG5lZ2F0aXZlIGNhY2hlCisgICAgICAgIHJldHVybiBzdWJjbGFzcwogCiAgICAgZGVmIF9kdW1wX3JlZ2lzdHJ5KGNscywgZmlsZT1Ob25lKToKICAgICAgICAgIiIiRGVidWcgaGVscGVyIHRvIHByaW50IHRoZSBBQkMgcmVnaXN0cnkuIiIiCmRpZmYgLS1naXQgYS9MaWIvYXJncGFyc2UucHkgYi9MaWIvYXJncGFyc2UucHkKaW5kZXggMjIwMmI1Ny4uODdkMGNlZiAxMDA2NDQKLS0tIGEvTGliL2FyZ3BhcnNlLnB5CisrKyBiL0xpYi9hcmdwYXJzZS5weQpAQCAtNzEsNiArNzEsNyBAQAogICAgICdBcmd1bWVudERlZmF1bHRzSGVscEZvcm1hdHRlcicsCiAgICAgJ1Jhd0Rlc2NyaXB0aW9uSGVscEZvcm1hdHRlcicsCiAgICAgJ1Jhd1RleHRIZWxwRm9ybWF0dGVyJywKKyAgICAnTWV0YXZhclR5cGVIZWxwRm9ybWF0dGVyJywKICAgICAnTmFtZXNwYWNlJywKICAgICAnQWN0aW9uJywKICAgICAnT05FX09SX01PUkUnLApAQCAtNDE5LDcgKzQyMCw4IEBACiAKICAgICAgICAgICAgICMgcHJvZHVjZSBhbGwgYXJnIHN0cmluZ3MKICAgICAgICAgICAgIGVsaWYgbm90IGFjdGlvbi5vcHRpb25fc3RyaW5nczoKLSAgICAgICAgICAgICAgICBwYXJ0ID0gc2VsZi5fZm9ybWF0X2FyZ3MoYWN0aW9uLCBhY3Rpb24uZGVzdCkKKyAgICAgICAgICAgICAgICBkZWZhdWx0ID0gc2VsZi5fZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3JfcG9zaXRpb25hbChhY3Rpb24pCisgICAgICAgICAgICAgICAgcGFydCA9IHNlbGYuX2Zvcm1hdF9hcmdzKGFjdGlvbiwgZGVmYXVsdCkKIAogICAgICAgICAgICAgICAgICMgaWYgaXQncyBpbiBhIGdyb3VwLCBzdHJpcCB0aGUgb3V0ZXIgW10KICAgICAgICAgICAgICAgICBpZiBhY3Rpb24gaW4gZ3JvdXBfYWN0aW9uczoKQEAgLTQ0MSw3ICs0NDMsNyBAQAogICAgICAgICAgICAgICAgICMgaWYgdGhlIE9wdGlvbmFsIHRha2VzIGEgdmFsdWUsIGZvcm1hdCBpczoKICAgICAgICAgICAgICAgICAjICAgIC1zIEFSR1Mgb3IgLS1sb25nIEFSR1MKICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBkZWZhdWx0ID0gYWN0aW9uLmRlc3QudXBwZXIoKQorICAgICAgICAgICAgICAgICAgICBkZWZhdWx0ID0gc2VsZi5fZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3Jfb3B0aW9uYWwoYWN0aW9uKQogICAgICAgICAgICAgICAgICAgICBhcmdzX3N0cmluZyA9IHNlbGYuX2Zvcm1hdF9hcmdzKGFjdGlvbiwgZGVmYXVsdCkKICAgICAgICAgICAgICAgICAgICAgcGFydCA9ICclcyAlcycgJSAob3B0aW9uX3N0cmluZywgYXJnc19zdHJpbmcpCiAKQEAgLTUyNyw3ICs1MjksOCBAQAogCiAgICAgZGVmIF9mb3JtYXRfYWN0aW9uX2ludm9jYXRpb24oc2VsZiwgYWN0aW9uKToKICAgICAgICAgaWYgbm90IGFjdGlvbi5vcHRpb25fc3RyaW5nczoKLSAgICAgICAgICAgIG1ldGF2YXIsID0gc2VsZi5fbWV0YXZhcl9mb3JtYXR0ZXIoYWN0aW9uLCBhY3Rpb24uZGVzdCkoMSkKKyAgICAgICAgICAgIGRlZmF1bHQgPSBzZWxmLl9nZXRfZGVmYXVsdF9tZXRhdmFyX2Zvcl9wb3NpdGlvbmFsKGFjdGlvbikKKyAgICAgICAgICAgIG1ldGF2YXIsID0gc2VsZi5fbWV0YXZhcl9mb3JtYXR0ZXIoYWN0aW9uLCBkZWZhdWx0KSgxKQogICAgICAgICAgICAgcmV0dXJuIG1ldGF2YXIKIAogICAgICAgICBlbHNlOgpAQCAtNTQxLDcgKzU0NCw3IEBACiAgICAgICAgICAgICAjIGlmIHRoZSBPcHRpb25hbCB0YWtlcyBhIHZhbHVlLCBmb3JtYXQgaXM6CiAgICAgICAgICAgICAjICAgIC1zIEFSR1MsIC0tbG9uZyBBUkdTCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGRlZmF1bHQgPSBhY3Rpb24uZGVzdC51cHBlcigpCisgICAgICAgICAgICAgICAgZGVmYXVsdCA9IHNlbGYuX2dldF9kZWZhdWx0X21ldGF2YXJfZm9yX29wdGlvbmFsKGFjdGlvbikKICAgICAgICAgICAgICAgICBhcmdzX3N0cmluZyA9IHNlbGYuX2Zvcm1hdF9hcmdzKGFjdGlvbiwgZGVmYXVsdCkKICAgICAgICAgICAgICAgICBmb3Igb3B0aW9uX3N0cmluZyBpbiBhY3Rpb24ub3B0aW9uX3N0cmluZ3M6CiAgICAgICAgICAgICAgICAgICAgIHBhcnRzLmFwcGVuZCgnJXMgJXMnICUgKG9wdGlvbl9zdHJpbmcsIGFyZ3Nfc3RyaW5nKSkKQEAgLTYxOSw2ICs2MjIsMTIgQEAKICAgICBkZWYgX2dldF9oZWxwX3N0cmluZyhzZWxmLCBhY3Rpb24pOgogICAgICAgICByZXR1cm4gYWN0aW9uLmhlbHAKIAorICAgIGRlZiBfZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3Jfb3B0aW9uYWwoc2VsZiwgYWN0aW9uKToKKyAgICAgICAgcmV0dXJuIGFjdGlvbi5kZXN0LnVwcGVyKCkKKworICAgIGRlZiBfZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3JfcG9zaXRpb25hbChzZWxmLCBhY3Rpb24pOgorICAgICAgICByZXR1cm4gYWN0aW9uLmRlc3QKKwogCiBjbGFzcyBSYXdEZXNjcmlwdGlvbkhlbHBGb3JtYXR0ZXIoSGVscEZvcm1hdHRlcik6CiAgICAgIiIiSGVscCBtZXNzYWdlIGZvcm1hdHRlciB3aGljaCByZXRhaW5zIGFueSBmb3JtYXR0aW5nIGluIGRlc2NyaXB0aW9ucy4KQEAgLTYyOCw3ICs2MzcsNyBAQAogICAgICIiIgogCiAgICAgZGVmIF9maWxsX3RleHQoc2VsZiwgdGV4dCwgd2lkdGgsIGluZGVudCk6Ci0gICAgICAgIHJldHVybiAnJy5qb2luKFtpbmRlbnQgKyBsaW5lIGZvciBsaW5lIGluIHRleHQuc3BsaXRsaW5lcyhUcnVlKV0pCisgICAgICAgIHJldHVybiAnJy5qb2luKGluZGVudCArIGxpbmUgZm9yIGxpbmUgaW4gdGV4dC5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpKQogCiAKIGNsYXNzIFJhd1RleHRIZWxwRm9ybWF0dGVyKFJhd0Rlc2NyaXB0aW9uSGVscEZvcm1hdHRlcik6CkBAIC02NTksNiArNjY4LDIyIEBACiAgICAgICAgIHJldHVybiBoZWxwCiAKIAorY2xhc3MgTWV0YXZhclR5cGVIZWxwRm9ybWF0dGVyKEhlbHBGb3JtYXR0ZXIpOgorICAgICIiIkhlbHAgbWVzc2FnZSBmb3JtYXR0ZXIgd2hpY2ggdXNlcyB0aGUgYXJndW1lbnQgJ3R5cGUnIGFzIHRoZSBkZWZhdWx0CisgICAgbWV0YXZhciB2YWx1ZSAoaW5zdGVhZCBvZiB0aGUgYXJndW1lbnQgJ2Rlc3QnKQorCisgICAgT25seSB0aGUgbmFtZSBvZiB0aGlzIGNsYXNzIGlzIGNvbnNpZGVyZWQgYSBwdWJsaWMgQVBJLiBBbGwgdGhlIG1ldGhvZHMKKyAgICBwcm92aWRlZCBieSB0aGUgY2xhc3MgYXJlIGNvbnNpZGVyZWQgYW4gaW1wbGVtZW50YXRpb24gZGV0YWlsLgorICAgICIiIgorCisgICAgZGVmIF9nZXRfZGVmYXVsdF9tZXRhdmFyX2Zvcl9vcHRpb25hbChzZWxmLCBhY3Rpb24pOgorICAgICAgICByZXR1cm4gYWN0aW9uLnR5cGUuX19uYW1lX18KKworICAgIGRlZiBfZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3JfcG9zaXRpb25hbChzZWxmLCBhY3Rpb24pOgorICAgICAgICByZXR1cm4gYWN0aW9uLnR5cGUuX19uYW1lX18KKworCisKICMgPT09PT09PT09PT09PT09PT09PT09CiAjIE9wdGlvbnMgYW5kIEFyZ3VtZW50cwogIyA9PT09PT09PT09PT09PT09PT09PT0KQEAgLTE5NDAsMTcgKzE5NjUsMTIgQEAKICAgICAgICAgIyBpZiB3ZSBkaWRuJ3QgY29uc3VtZSBhbGwgdGhlIGFyZ3VtZW50IHN0cmluZ3MsIHRoZXJlIHdlcmUgZXh0cmFzCiAgICAgICAgIGV4dHJhcy5leHRlbmQoYXJnX3N0cmluZ3Nbc3RvcF9pbmRleDpdKQogCi0gICAgICAgICMgaWYgd2UgZGlkbid0IHVzZSBhbGwgdGhlIFBvc2l0aW9uYWwgb2JqZWN0cywgdGhlcmUgd2VyZSB0b28gZmV3Ci0gICAgICAgICMgYXJnIHN0cmluZ3Mgc3VwcGxpZWQuCi0gICAgICAgIGlmIHBvc2l0aW9uYWxzOgotICAgICAgICAgICAgc2VsZi5lcnJvcihfKCd0b28gZmV3IGFyZ3VtZW50cycpKQotCiAgICAgICAgICMgbWFrZSBzdXJlIGFsbCByZXF1aXJlZCBhY3Rpb25zIHdlcmUgcHJlc2VudAotICAgICAgICBmb3IgYWN0aW9uIGluIHNlbGYuX2FjdGlvbnM6Ci0gICAgICAgICAgICBpZiBhY3Rpb24ucmVxdWlyZWQ6Ci0gICAgICAgICAgICAgICAgaWYgYWN0aW9uIG5vdCBpbiBzZWVuX2FjdGlvbnM6Ci0gICAgICAgICAgICAgICAgICAgIG5hbWUgPSBfZ2V0X2FjdGlvbl9uYW1lKGFjdGlvbikKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5lcnJvcihfKCdhcmd1bWVudCAlcyBpcyByZXF1aXJlZCcpICUgbmFtZSkKKyAgICAgICAgcmVxdWlyZWRfYWN0aW9ucyA9IFtfZ2V0X2FjdGlvbl9uYW1lKGFjdGlvbikgZm9yIGFjdGlvbiBpbiBzZWxmLl9hY3Rpb25zCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgYWN0aW9uLnJlcXVpcmVkIGFuZCBhY3Rpb24gbm90IGluIHNlZW5fYWN0aW9uc10KKyAgICAgICAgaWYgcmVxdWlyZWRfYWN0aW9uczoKKyAgICAgICAgICAgIHNlbGYuZXJyb3IoXygndGhlIGZvbGxvd2luZyBhcmd1bWVudHMgYXJlIHJlcXVpcmVkOiAlcycpICUKKyAgICAgICAgICAgICAgICAgICAgICAgJywgJy5qb2luKHJlcXVpcmVkX2FjdGlvbnMpKQogCiAgICAgICAgICMgbWFrZSBzdXJlIGFsbCByZXF1aXJlZCBncm91cHMgaGFkIG9uZSBvcHRpb24gcHJlc2VudAogICAgICAgICBmb3IgZ3JvdXAgaW4gc2VsZi5fbXV0dWFsbHlfZXhjbHVzaXZlX2dyb3VwczoKZGlmZiAtLWdpdCBhL0xpYi9hc3QucHkgYi9MaWIvYXN0LnB5CmluZGV4IGZiNWFkYWMuLjEzZjU5ZjkgMTAwNjQ0Ci0tLSBhL0xpYi9hc3QucHkKKysrIGIvTGliL2FzdC5weQpAQCAtMjUsNyArMjUsNiBAQAogICAgIDpsaWNlbnNlOiBQeXRob24gTGljZW5zZS4KICIiIgogZnJvbSBfYXN0IGltcG9ydCAqCi1mcm9tIF9hc3QgaW1wb3J0IF9fdmVyc2lvbl9fCiAKIAogZGVmIHBhcnNlKHNvdXJjZSwgZmlsZW5hbWU9Jzx1bmtub3duPicsIG1vZGU9J2V4ZWMnKToKZGlmZiAtLWdpdCBhL0xpYi9hc3luY2hhdC5weSBiL0xpYi9hc3luY2hhdC5weQppbmRleCA2NTU4NTEyLi4yMTk5ZDFiIDEwMDY0NAotLS0gYS9MaWIvYXN5bmNoYXQucHkKKysrIGIvTGliL2FzeW5jaGF0LnB5CkBAIC03NSw3ICs3NSw3IEBACiAgICAgIyBzaWduIG9mIGFuIGFwcGxpY2F0aW9uIGJ1ZyB0aGF0IHdlIGRvbid0IHdhbnQgdG8gcGFzcyBzaWxlbnRseQogCiAgICAgdXNlX2VuY29kaW5nICAgICAgICAgICAgPSAwCi0gICAgZW5jb2RpbmcgICAgICAgICAgICAgICAgPSAnbGF0aW4xJworICAgIGVuY29kaW5nICAgICAgICAgICAgICAgID0gJ2xhdGluLTEnCiAKICAgICBkZWYgX19pbml0X18gKHNlbGYsIHNvY2s9Tm9uZSwgbWFwPU5vbmUpOgogICAgICAgICAjIGZvciBzdHJpbmcgdGVybWluYXRvciBtYXRjaGluZwpkaWZmIC0tZ2l0IGEvTGliL2FzeW5jb3JlLnB5IGIvTGliL2FzeW5jb3JlLnB5CmluZGV4IDdmNDJkMzkuLjkyMDQ0NGQgMTAwNjQ0Ci0tLSBhL0xpYi9hc3luY29yZS5weQorKysgYi9MaWIvYXN5bmNvcmUucHkKQEAgLTU0LDcgKzU0LDcgQEAKIAogaW1wb3J0IG9zCiBmcm9tIGVycm5vIGltcG9ydCBFQUxSRUFEWSwgRUlOUFJPR1JFU1MsIEVXT1VMREJMT0NLLCBFQ09OTlJFU0VULCBFSU5WQUwsIFwKLSAgICAgRU5PVENPTk4sIEVTSFVURE9XTiwgRUlOVFIsIEVJU0NPTk4sIEVCQURGLCBFQ09OTkFCT1JURUQsIEVQSVBFLCBFQUdBSU4sIFwKKyAgICAgRU5PVENPTk4sIEVTSFVURE9XTiwgRUlTQ09OTiwgRUJBREYsIEVDT05OQUJPUlRFRCwgRVBJUEUsIEVBR0FJTiwgXAogICAgICBlcnJvcmNvZGUKIAogX0RJU0NPTk5FQ1RFRCA9IGZyb3plbnNldCgoRUNPTk5SRVNFVCwgRU5PVENPTk4sIEVTSFVURE9XTiwgRUNPTk5BQk9SVEVELCBFUElQRSwKQEAgLTE0MywxMSArMTQzLDggQEAKIAogICAgICAgICB0cnk6CiAgICAgICAgICAgICByLCB3LCBlID0gc2VsZWN0LnNlbGVjdChyLCB3LCBlLCB0aW1lb3V0KQotICAgICAgICBleGNlcHQgc2VsZWN0LmVycm9yIGFzIGVycjoKLSAgICAgICAgICAgIGlmIGVyci5hcmdzWzBdICE9IEVJTlRSOgotICAgICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKKyAgICAgICAgICAgIHJldHVybgogCiAgICAgICAgIGZvciBmZCBpbiByOgogICAgICAgICAgICAgb2JqID0gbWFwLmdldChmZCkKQEAgLTE4NCwxNSArMTgxLDEwIEBACiAgICAgICAgICAgICBpZiBvYmoud3JpdGFibGUoKSBhbmQgbm90IG9iai5hY2NlcHRpbmc6CiAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gc2VsZWN0LlBPTExPVVQKICAgICAgICAgICAgIGlmIGZsYWdzOgotICAgICAgICAgICAgICAgICMgT25seSBjaGVjayBmb3IgZXhjZXB0aW9ucyBpZiBvYmplY3Qgd2FzIGVpdGhlciByZWFkYWJsZQotICAgICAgICAgICAgICAgICMgb3Igd3JpdGFibGUuCi0gICAgICAgICAgICAgICAgZmxhZ3MgfD0gc2VsZWN0LlBPTExFUlIgfCBzZWxlY3QuUE9MTEhVUCB8IHNlbGVjdC5QT0xMTlZBTAogICAgICAgICAgICAgICAgIHBvbGxzdGVyLnJlZ2lzdGVyKGZkLCBmbGFncykKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgciA9IHBvbGxzdGVyLnBvbGwodGltZW91dCkKLSAgICAgICAgZXhjZXB0IHNlbGVjdC5lcnJvciBhcyBlcnI6Ci0gICAgICAgICAgICBpZiBlcnIuYXJnc1swXSAhPSBFSU5UUjoKLSAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKICAgICAgICAgICAgIHIgPSBbXQogICAgICAgICBmb3IgZmQsIGZsYWdzIGluIHI6CiAgICAgICAgICAgICBvYmogPSBtYXAuZ2V0KGZkKQpAQCAtMjkxLDcgKzI4Myw3IEBACiAgICAgICAgICAgICBkZWwgbWFwW2ZkXQogICAgICAgICBzZWxmLl9maWxlbm8gPSBOb25lCiAKLSAgICBkZWYgY3JlYXRlX3NvY2tldChzZWxmLCBmYW1pbHksIHR5cGUpOgorICAgIGRlZiBjcmVhdGVfc29ja2V0KHNlbGYsIGZhbWlseT1zb2NrZXQuQUZfSU5FVCwgdHlwZT1zb2NrZXQuU09DS19TVFJFQU0pOgogICAgICAgICBzZWxmLmZhbWlseV9hbmRfdHlwZSA9IGZhbWlseSwgdHlwZQogICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldChmYW1pbHksIHR5cGUpCiAgICAgICAgIHNvY2suc2V0YmxvY2tpbmcoMCkKZGlmZiAtLWdpdCBhL0xpYi9iYXNlNjQucHkgYi9MaWIvYmFzZTY0LnB5CmluZGV4IDg5NWQ4MTMuLmVkY2M0YmUgMTAwNzU1Ci0tLSBhL0xpYi9iYXNlNjQucHkKKysrIGIvTGliL2Jhc2U2NC5weQpAQCAtMjksNiArMjksMTYgQEAKIAogYnl0ZXNfdHlwZXMgPSAoYnl0ZXMsIGJ5dGVhcnJheSkgICMgVHlwZXMgYWNjZXB0YWJsZSBhcyBiaW5hcnkgZGF0YQogCitkZWYgX2J5dGVzX2Zyb21fZGVjb2RlX2RhdGEocyk6CisgICAgaWYgaXNpbnN0YW5jZShzLCBzdHIpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXR1cm4gcy5lbmNvZGUoJ2FzY2lpJykKKyAgICAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ3N0cmluZyBhcmd1bWVudCBzaG91bGQgY29udGFpbiBvbmx5IEFTQ0lJIGNoYXJhY3RlcnMnKQorICAgIGVsaWYgaXNpbnN0YW5jZShzLCBieXRlc190eXBlcyk6CisgICAgICAgIHJldHVybiBzCisgICAgZWxzZToKKyAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJhcmd1bWVudCBzaG91bGQgYmUgYnl0ZXMgb3IgQVNDSUkgc3RyaW5nLCBub3QgJXMiICUgcy5fX2NsYXNzX18uX19uYW1lX18pCiAKIGRlZiBfdHJhbnNsYXRlKHMsIGFsdGNoYXJzKToKICAgICBpZiBub3QgaXNpbnN0YW5jZShzLCBieXRlc190eXBlcyk6CkBAIC03OSwxMiArODksOSBAQAogICAgIGRpc2NhcmRlZCBwcmlvciB0byB0aGUgcGFkZGluZyBjaGVjay4gIElmIHZhbGlkYXRlIGlzIFRydWUsCiAgICAgbm9uLWJhc2U2NC1hbHBoYWJldCBjaGFyYWN0ZXJzIGluIHRoZSBpbnB1dCByZXN1bHQgaW4gYSBiaW5hc2NpaS5FcnJvci4KICAgICAiIiIKLSAgICBpZiBub3QgaXNpbnN0YW5jZShzLCBieXRlc190eXBlcyk6Ci0gICAgICAgIHJhaXNlIFR5cGVFcnJvcigiZXhwZWN0ZWQgYnl0ZXMsIG5vdCAlcyIgJSBzLl9fY2xhc3NfXy5fX25hbWVfXykKKyAgICBzID0gX2J5dGVzX2Zyb21fZGVjb2RlX2RhdGEocykKICAgICBpZiBhbHRjaGFycyBpcyBub3QgTm9uZToKLSAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoYWx0Y2hhcnMsIGJ5dGVzX3R5cGVzKToKLSAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiZXhwZWN0ZWQgYnl0ZXMsIG5vdCAlcyIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIGFsdGNoYXJzLl9fY2xhc3NfXy5fX25hbWVfXykKKyAgICAgICAgYWx0Y2hhcnMgPSBfYnl0ZXNfZnJvbV9kZWNvZGVfZGF0YShhbHRjaGFycykKICAgICAgICAgYXNzZXJ0IGxlbihhbHRjaGFycykgPT0gMiwgcmVwcihhbHRjaGFycykKICAgICAgICAgcyA9IF90cmFuc2xhdGUocywge2NocihhbHRjaGFyc1swXSk6IGInKycsIGNocihhbHRjaGFyc1sxXSk6IGInLyd9KQogICAgIGlmIHZhbGlkYXRlIGFuZCBub3QgcmUubWF0Y2goYideW0EtWmEtejAtOSsvXSo9ezAsMn0kJywgcyk6CkBAIC0yMTEsOCArMjE4LDcgQEAKICAgICB0aGUgaW5wdXQgaXMgaW5jb3JyZWN0bHkgcGFkZGVkIG9yIGlmIHRoZXJlIGFyZSBub24tYWxwaGFiZXQKICAgICBjaGFyYWN0ZXJzIHByZXNlbnQgaW4gdGhlIGlucHV0LgogICAgICIiIgotICAgIGlmIG5vdCBpc2luc3RhbmNlKHMsIGJ5dGVzX3R5cGVzKToKLSAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJleHBlY3RlZCBieXRlcywgbm90ICVzIiAlIHMuX19jbGFzc19fLl9fbmFtZV9fKQorICAgIHMgPSBfYnl0ZXNfZnJvbV9kZWNvZGVfZGF0YShzKQogICAgIHF1YW50YSwgbGVmdG92ZXIgPSBkaXZtb2QobGVuKHMpLCA4KQogICAgIGlmIGxlZnRvdmVyOgogICAgICAgICByYWlzZSBiaW5hc2NpaS5FcnJvcignSW5jb3JyZWN0IHBhZGRpbmcnKQpAQCAtMjIwLDggKzIyNiw3IEBACiAgICAgIyBGYWxzZSwgb3IgdGhlIGNoYXJhY3RlciB0byBtYXAgdGhlIGRpZ2l0IDEgKG9uZSkgdG8uICBJdCBzaG91bGQgYmUKICAgICAjIGVpdGhlciBMIChlbCkgb3IgSSAoZXllKS4KICAgICBpZiBtYXAwMSBpcyBub3QgTm9uZToKLSAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UobWFwMDEsIGJ5dGVzX3R5cGVzKToKLSAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiZXhwZWN0ZWQgYnl0ZXMsIG5vdCAlcyIgJSBtYXAwMS5fX2NsYXNzX18uX19uYW1lX18pCisgICAgICAgIG1hcDAxID0gX2J5dGVzX2Zyb21fZGVjb2RlX2RhdGEobWFwMDEpCiAgICAgICAgIGFzc2VydCBsZW4obWFwMDEpID09IDEsIHJlcHIobWFwMDEpCiAgICAgICAgIHMgPSBfdHJhbnNsYXRlKHMsIHtiJzAnOiBiJ08nLCBiJzEnOiBtYXAwMX0pCiAgICAgaWYgY2FzZWZvbGQ6CkBAIC0yOTIsOCArMjk3LDcgQEAKICAgICBzIHdlcmUgaW5jb3JyZWN0bHkgcGFkZGVkIG9yIGlmIHRoZXJlIGFyZSBub24tYWxwaGFiZXQgY2hhcmFjdGVycwogICAgIHByZXNlbnQgaW4gdGhlIHN0cmluZy4KICAgICAiIiIKLSAgICBpZiBub3QgaXNpbnN0YW5jZShzLCBieXRlc190eXBlcyk6Ci0gICAgICAgIHJhaXNlIFR5cGVFcnJvcigiZXhwZWN0ZWQgYnl0ZXMsIG5vdCAlcyIgJSBzLl9fY2xhc3NfXy5fX25hbWVfXykKKyAgICBzID0gX2J5dGVzX2Zyb21fZGVjb2RlX2RhdGEocykKICAgICBpZiBjYXNlZm9sZDoKICAgICAgICAgcyA9IHMudXBwZXIoKQogICAgIGlmIHJlLnNlYXJjaChiJ1teMC05QS1GXScsIHMpOgpkaWZmIC0tZ2l0IGEvTGliL2JpbmhleC5weSBiL0xpYi9iaW5oZXgucHkKaW5kZXggOTk5YTY3NS4uN2JmOTI3OCAxMDA2NDQKLS0tIGEvTGliL2JpbmhleC5weQorKysgYi9MaWIvYmluaGV4LnB5CkBAIC0yMyw3ICsyMyw2IEBACiAjCiBpbXBvcnQgaW8KIGltcG9ydCBvcwotaW1wb3J0IHN5cwogaW1wb3J0IHN0cnVjdAogaW1wb3J0IGJpbmFzY2lpCiAKZGlmZiAtLWdpdCBhL0xpYi9iejIucHkgYi9MaWIvYnoyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUxYjlhYzQKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvYnoyLnB5CkBAIC0wLDAgKzEsNDI0IEBACisiIiJJbnRlcmZhY2UgdG8gdGhlIGxpYmJ6aXAyIGNvbXByZXNzaW9uIGxpYnJhcnkuCisKK1RoaXMgbW9kdWxlIHByb3ZpZGVzIGEgZmlsZSBpbnRlcmZhY2UsIGNsYXNzZXMgZm9yIGluY3JlbWVudGFsCisoZGUpY29tcHJlc3Npb24sIGFuZCBmdW5jdGlvbnMgZm9yIG9uZS1zaG90IChkZSljb21wcmVzc2lvbi4KKyIiIgorCitfX2FsbF9fID0gWyJCWjJGaWxlIiwgIkJaMkNvbXByZXNzb3IiLCAiQloyRGVjb21wcmVzc29yIiwgImNvbXByZXNzIiwKKyAgICAgICAgICAgImRlY29tcHJlc3MiXQorCitfX2F1dGhvcl9fID0gIk5hZGVlbSBWYXdkYSA8bmFkZWVtLnZhd2RhQGdtYWlsLmNvbT4iCisKK2ltcG9ydCBpbworaW1wb3J0IHdhcm5pbmdzCisKK3RyeToKKyAgICBmcm9tIHRocmVhZGluZyBpbXBvcnQgUkxvY2sKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBmcm9tIGR1bW15X3RocmVhZGluZyBpbXBvcnQgUkxvY2sKKworZnJvbSBfYnoyIGltcG9ydCBCWjJDb21wcmVzc29yLCBCWjJEZWNvbXByZXNzb3IKKworCitfTU9ERV9DTE9TRUQgICA9IDAKK19NT0RFX1JFQUQgICAgID0gMQorX01PREVfUkVBRF9FT0YgPSAyCitfTU9ERV9XUklURSAgICA9IDMKKworX0JVRkZFUl9TSVpFID0gODE5MgorCisKK2NsYXNzIEJaMkZpbGUoaW8uQnVmZmVyZWRJT0Jhc2UpOgorCisgICAgIiIiQSBmaWxlIG9iamVjdCBwcm92aWRpbmcgdHJhbnNwYXJlbnQgYnppcDIgKGRlKWNvbXByZXNzaW9uLgorCisgICAgQSBCWjJGaWxlIGNhbiBhY3QgYXMgYSB3cmFwcGVyIGZvciBhbiBleGlzdGluZyBmaWxlIG9iamVjdCwgb3IgcmVmZXIKKyAgICBkaXJlY3RseSB0byBhIG5hbWVkIGZpbGUgb24gZGlzay4KKworICAgIE5vdGUgdGhhdCBCWjJGaWxlIHByb3ZpZGVzIGEgKmJpbmFyeSogZmlsZSBpbnRlcmZhY2UgLSBkYXRhIHJlYWQgaXMKKyAgICByZXR1cm5lZCBhcyBieXRlcywgYW5kIGRhdGEgdG8gYmUgd3JpdHRlbiBzaG91bGQgYmUgZ2l2ZW4gYXMgYnl0ZXMuCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWU9Tm9uZSwgbW9kZT0iciIsIGJ1ZmZlcmluZz1Ob25lLAorICAgICAgICAgICAgICAgICBjb21wcmVzc2xldmVsPTksICosIGZpbGVvYmo9Tm9uZSk6CisgICAgICAgICIiIk9wZW4gYSBiemlwMi1jb21wcmVzc2VkIGZpbGUuCisKKyAgICAgICAgSWYgZmlsZW5hbWUgaXMgZ2l2ZW4sIG9wZW4gdGhlIG5hbWVkIGZpbGUuIE90aGVyd2lzZSwgb3BlcmF0ZSBvbgorICAgICAgICB0aGUgZmlsZSBvYmplY3QgZ2l2ZW4gYnkgZmlsZW9iai4gRXhhY3RseSBvbmUgb2YgdGhlc2UgdHdvCisgICAgICAgIHBhcmFtZXRlcnMgc2hvdWxkIGJlIHByb3ZpZGVkLgorCisgICAgICAgIG1vZGUgY2FuIGJlICdyJyBmb3IgcmVhZGluZyAoZGVmYXVsdCksICd3JyBmb3IgKG92ZXIpd3JpdGluZywgb3IKKyAgICAgICAgJ2EnIGZvciBhcHBlbmRpbmcuCisKKyAgICAgICAgYnVmZmVyaW5nIGlzIGlnbm9yZWQuIEl0cyB1c2UgaXMgZGVwcmVjYXRlZC4KKworICAgICAgICBJZiBtb2RlIGlzICd3JyBvciAnYScsIGNvbXByZXNzbGV2ZWwgY2FuIGJlIGEgbnVtYmVyIGJldHdlZW4gMQorICAgICAgICBhbmQgOSBzcGVjaWZ5aW5nIHRoZSBsZXZlbCBvZiBjb21wcmVzc2lvbjogMSBwcm9kdWNlcyB0aGUgbGVhc3QKKyAgICAgICAgY29tcHJlc3Npb24sIGFuZCA5IChkZWZhdWx0KSBwcm9kdWNlcyB0aGUgbW9zdCBjb21wcmVzc2lvbi4KKworICAgICAgICBJZiBtb2RlIGlzICdyJywgdGhlIGlucHV0IGZpbGUgbWF5IGJlIHRoZSBjb25jYXRlbmF0aW9uIG9mCisgICAgICAgIG11bHRpcGxlIGNvbXByZXNzZWQgc3RyZWFtcy4KKyAgICAgICAgIiIiCisgICAgICAgICMgVGhpcyBsb2NrIG11c3QgYmUgcmVjdXJzaXZlLCBzbyB0aGF0IEJ1ZmZlcmVkSU9CYXNlJ3MKKyAgICAgICAgIyByZWFkbGluZSgpLCByZWFkbGluZXMoKSBhbmQgd3JpdGVsaW5lcygpIGRvbid0IGRlYWRsb2NrLgorICAgICAgICBzZWxmLl9sb2NrID0gUkxvY2soKQorICAgICAgICBzZWxmLl9mcCA9IE5vbmUKKyAgICAgICAgc2VsZi5fY2xvc2VmcCA9IEZhbHNlCisgICAgICAgIHNlbGYuX21vZGUgPSBfTU9ERV9DTE9TRUQKKyAgICAgICAgc2VsZi5fcG9zID0gMAorICAgICAgICBzZWxmLl9zaXplID0gLTEKKworICAgICAgICBpZiBidWZmZXJpbmcgaXMgbm90IE5vbmU6CisgICAgICAgICAgICB3YXJuaW5ncy53YXJuKCJVc2Ugb2YgJ2J1ZmZlcmluZycgYXJndW1lbnQgaXMgZGVwcmVjYXRlZCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIERlcHJlY2F0aW9uV2FybmluZykKKworICAgICAgICBpZiBub3QgKDEgPD0gY29tcHJlc3NsZXZlbCA8PSA5KToKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImNvbXByZXNzbGV2ZWwgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIDkiKQorCisgICAgICAgIGlmIG1vZGUgaW4gKCIiLCAiciIsICJyYiIpOgorICAgICAgICAgICAgbW9kZSA9ICJyYiIKKyAgICAgICAgICAgIG1vZGVfY29kZSA9IF9NT0RFX1JFQUQKKyAgICAgICAgICAgIHNlbGYuX2RlY29tcHJlc3NvciA9IEJaMkRlY29tcHJlc3NvcigpCisgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBOb25lCisgICAgICAgIGVsaWYgbW9kZSBpbiAoInciLCAid2IiKToKKyAgICAgICAgICAgIG1vZGUgPSAid2IiCisgICAgICAgICAgICBtb2RlX2NvZGUgPSBfTU9ERV9XUklURQorICAgICAgICAgICAgc2VsZi5fY29tcHJlc3NvciA9IEJaMkNvbXByZXNzb3IoY29tcHJlc3NsZXZlbCkKKyAgICAgICAgZWxpZiBtb2RlIGluICgiYSIsICJhYiIpOgorICAgICAgICAgICAgbW9kZSA9ICJhYiIKKyAgICAgICAgICAgIG1vZGVfY29kZSA9IF9NT0RFX1dSSVRFCisgICAgICAgICAgICBzZWxmLl9jb21wcmVzc29yID0gQloyQ29tcHJlc3Nvcihjb21wcmVzc2xldmVsKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSW52YWxpZCBtb2RlOiB7IXJ9Ii5mb3JtYXQobW9kZSkpCisKKyAgICAgICAgaWYgZmlsZW5hbWUgaXMgbm90IE5vbmUgYW5kIGZpbGVvYmogaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2ZwID0gb3BlbihmaWxlbmFtZSwgbW9kZSkKKyAgICAgICAgICAgIHNlbGYuX2Nsb3NlZnAgPSBUcnVlCisgICAgICAgICAgICBzZWxmLl9tb2RlID0gbW9kZV9jb2RlCisgICAgICAgIGVsaWYgZmlsZW9iaiBpcyBub3QgTm9uZSBhbmQgZmlsZW5hbWUgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2ZwID0gZmlsZW9iagorICAgICAgICAgICAgc2VsZi5fbW9kZSA9IG1vZGVfY29kZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiTXVzdCBnaXZlIGV4YWN0bHkgb25lIG9mIGZpbGVuYW1lIGFuZCBmaWxlb2JqIikKKworICAgIGRlZiBjbG9zZShzZWxmKToKKyAgICAgICAgIiIiRmx1c2ggYW5kIGNsb3NlIHRoZSBmaWxlLgorCisgICAgICAgIE1heSBiZSBjYWxsZWQgbW9yZSB0aGFuIG9uY2Ugd2l0aG91dCBlcnJvci4gT25jZSB0aGUgZmlsZSBpcworICAgICAgICBjbG9zZWQsIGFueSBvdGhlciBvcGVyYXRpb24gb24gaXQgd2lsbCByYWlzZSBhIFZhbHVlRXJyb3IuCisgICAgICAgICIiIgorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICBpZiBzZWxmLl9tb2RlID09IF9NT0RFX0NMT1NFRDoKKyAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBpZiBzZWxmLl9tb2RlIGluIChfTU9ERV9SRUFELCBfTU9ERV9SRUFEX0VPRik6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2RlY29tcHJlc3NvciA9IE5vbmUKKyAgICAgICAgICAgICAgICBlbGlmIHNlbGYuX21vZGUgPT0gX01PREVfV1JJVEU6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2ZwLndyaXRlKHNlbGYuX2NvbXByZXNzb3IuZmx1c2goKSkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fY29tcHJlc3NvciA9IE5vbmUKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLl9jbG9zZWZwOgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fZnAuY2xvc2UoKQorICAgICAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2ZwID0gTm9uZQorICAgICAgICAgICAgICAgICAgICBzZWxmLl9jbG9zZWZwID0gRmFsc2UKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fbW9kZSA9IF9NT0RFX0NMT1NFRAorICAgICAgICAgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBOb25lCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgY2xvc2VkKHNlbGYpOgorICAgICAgICAiIiJUcnVlIGlmIHRoaXMgZmlsZSBpcyBjbG9zZWQuIiIiCisgICAgICAgIHJldHVybiBzZWxmLl9tb2RlID09IF9NT0RFX0NMT1NFRAorCisgICAgZGVmIGZpbGVubyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBmaWxlIGRlc2NyaXB0b3IgZm9yIHRoZSB1bmRlcmx5aW5nIGZpbGUuIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX25vdF9jbG9zZWQoKQorICAgICAgICByZXR1cm4gc2VsZi5fZnAuZmlsZW5vKCkKKworICAgIGRlZiBzZWVrYWJsZShzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIHdoZXRoZXIgdGhlIGZpbGUgc3VwcG9ydHMgc2Vla2luZy4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYucmVhZGFibGUoKSBhbmQgc2VsZi5fZnAuc2Vla2FibGUoKQorCisgICAgZGVmIHJlYWRhYmxlKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gd2hldGhlciB0aGUgZmlsZSB3YXMgb3BlbmVkIGZvciByZWFkaW5nLiIiIgorICAgICAgICBzZWxmLl9jaGVja19ub3RfY2xvc2VkKCkKKyAgICAgICAgcmV0dXJuIHNlbGYuX21vZGUgaW4gKF9NT0RFX1JFQUQsIF9NT0RFX1JFQURfRU9GKQorCisgICAgZGVmIHdyaXRhYmxlKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gd2hldGhlciB0aGUgZmlsZSB3YXMgb3BlbmVkIGZvciB3cml0aW5nLiIiIgorICAgICAgICBzZWxmLl9jaGVja19ub3RfY2xvc2VkKCkKKyAgICAgICAgcmV0dXJuIHNlbGYuX21vZGUgPT0gX01PREVfV1JJVEUKKworICAgICMgTW9kZS1jaGVja2luZyBoZWxwZXIgZnVuY3Rpb25zLgorCisgICAgZGVmIF9jaGVja19ub3RfY2xvc2VkKHNlbGYpOgorICAgICAgICBpZiBzZWxmLmNsb3NlZDoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKQorCisgICAgZGVmIF9jaGVja19jYW5fcmVhZChzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYucmVhZGFibGUoKToKKyAgICAgICAgICAgIHJhaXNlIGlvLlVuc3VwcG9ydGVkT3BlcmF0aW9uKCJGaWxlIG5vdCBvcGVuIGZvciByZWFkaW5nIikKKworICAgIGRlZiBfY2hlY2tfY2FuX3dyaXRlKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi53cml0YWJsZSgpOgorICAgICAgICAgICAgcmFpc2UgaW8uVW5zdXBwb3J0ZWRPcGVyYXRpb24oIkZpbGUgbm90IG9wZW4gZm9yIHdyaXRpbmciKQorCisgICAgZGVmIF9jaGVja19jYW5fc2VlayhzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYucmVhZGFibGUoKToKKyAgICAgICAgICAgIHJhaXNlIGlvLlVuc3VwcG9ydGVkT3BlcmF0aW9uKCJTZWVraW5nIGlzIG9ubHkgc3VwcG9ydGVkICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvbiBmaWxlcyBvcGVuIGZvciByZWFkaW5nIikKKyAgICAgICAgaWYgbm90IHNlbGYuX2ZwLnNlZWthYmxlKCk6CisgICAgICAgICAgICByYWlzZSBpby5VbnN1cHBvcnRlZE9wZXJhdGlvbigiVGhlIHVuZGVybHlpbmcgZmlsZSBvYmplY3QgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRvZXMgbm90IHN1cHBvcnQgc2Vla2luZyIpCisKKyAgICAjIEZpbGwgdGhlIHJlYWRhaGVhZCBidWZmZXIgaWYgaXQgaXMgZW1wdHkuIFJldHVybnMgRmFsc2Ugb24gRU9GLgorICAgIGRlZiBfZmlsbF9idWZmZXIoc2VsZik6CisgICAgICAgIGlmIHNlbGYuX2J1ZmZlcjoKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisKKyAgICAgICAgaWYgc2VsZi5fZGVjb21wcmVzc29yLnVudXNlZF9kYXRhOgorICAgICAgICAgICAgcmF3YmxvY2sgPSBzZWxmLl9kZWNvbXByZXNzb3IudW51c2VkX2RhdGEKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhd2Jsb2NrID0gc2VsZi5fZnAucmVhZChfQlVGRkVSX1NJWkUpCisKKyAgICAgICAgaWYgbm90IHJhd2Jsb2NrOgorICAgICAgICAgICAgaWYgc2VsZi5fZGVjb21wcmVzc29yLmVvZjoKKyAgICAgICAgICAgICAgICBzZWxmLl9tb2RlID0gX01PREVfUkVBRF9FT0YKKyAgICAgICAgICAgICAgICBzZWxmLl9zaXplID0gc2VsZi5fcG9zCisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlIEVPRkVycm9yKCJDb21wcmVzc2VkIGZpbGUgZW5kZWQgYmVmb3JlIHRoZSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImVuZC1vZi1zdHJlYW0gbWFya2VyIHdhcyByZWFjaGVkIikKKworICAgICAgICAjIENvbnRpbnVlIHRvIG5leHQgc3RyZWFtLgorICAgICAgICBpZiBzZWxmLl9kZWNvbXByZXNzb3IuZW9mOgorICAgICAgICAgICAgc2VsZi5fZGVjb21wcmVzc29yID0gQloyRGVjb21wcmVzc29yKCkKKworICAgICAgICBzZWxmLl9idWZmZXIgPSBzZWxmLl9kZWNvbXByZXNzb3IuZGVjb21wcmVzcyhyYXdibG9jaykKKyAgICAgICAgcmV0dXJuIFRydWUKKworICAgICMgUmVhZCBkYXRhIHVudGlsIEVPRi4KKyAgICAjIElmIHJldHVybl9kYXRhIGlzIGZhbHNlLCBjb25zdW1lIHRoZSBkYXRhIHdpdGhvdXQgcmV0dXJuaW5nIGl0LgorICAgIGRlZiBfcmVhZF9hbGwoc2VsZiwgcmV0dXJuX2RhdGE9VHJ1ZSk6CisgICAgICAgIGJsb2NrcyA9IFtdCisgICAgICAgIHdoaWxlIHNlbGYuX2ZpbGxfYnVmZmVyKCk6CisgICAgICAgICAgICBpZiByZXR1cm5fZGF0YToKKyAgICAgICAgICAgICAgICBibG9ja3MuYXBwZW5kKHNlbGYuX2J1ZmZlcikKKyAgICAgICAgICAgIHNlbGYuX3BvcyArPSBsZW4oc2VsZi5fYnVmZmVyKQorICAgICAgICAgICAgc2VsZi5fYnVmZmVyID0gTm9uZQorICAgICAgICBpZiByZXR1cm5fZGF0YToKKyAgICAgICAgICAgIHJldHVybiBiIiIuam9pbihibG9ja3MpCisKKyAgICAjIFJlYWQgYSBibG9jayBvZiB1cCB0byBuIGJ5dGVzLgorICAgICMgSWYgcmV0dXJuX2RhdGEgaXMgZmFsc2UsIGNvbnN1bWUgdGhlIGRhdGEgd2l0aG91dCByZXR1cm5pbmcgaXQuCisgICAgZGVmIF9yZWFkX2Jsb2NrKHNlbGYsIG4sIHJldHVybl9kYXRhPVRydWUpOgorICAgICAgICBibG9ja3MgPSBbXQorICAgICAgICB3aGlsZSBuID4gMCBhbmQgc2VsZi5fZmlsbF9idWZmZXIoKToKKyAgICAgICAgICAgIGlmIG4gPCBsZW4oc2VsZi5fYnVmZmVyKToKKyAgICAgICAgICAgICAgICBkYXRhID0gc2VsZi5fYnVmZmVyWzpuXQorICAgICAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IHNlbGYuX2J1ZmZlcltuOl0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYuX2J1ZmZlcgorICAgICAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKyAgICAgICAgICAgIGlmIHJldHVybl9kYXRhOgorICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoZGF0YSkKKyAgICAgICAgICAgIHNlbGYuX3BvcyArPSBsZW4oZGF0YSkKKyAgICAgICAgICAgIG4gLT0gbGVuKGRhdGEpCisgICAgICAgIGlmIHJldHVybl9kYXRhOgorICAgICAgICAgICAgcmV0dXJuIGIiIi5qb2luKGJsb2NrcykKKworICAgIGRlZiBwZWVrKHNlbGYsIG49MCk6CisgICAgICAgICIiIlJldHVybiBidWZmZXJlZCBkYXRhIHdpdGhvdXQgYWR2YW5jaW5nIHRoZSBmaWxlIHBvc2l0aW9uLgorCisgICAgICAgIEFsd2F5cyByZXR1cm5zIGF0IGxlYXN0IG9uZSBieXRlIG9mIGRhdGEsIHVubGVzcyBhdCBFT0YuCisgICAgICAgIFRoZSBleGFjdCBudW1iZXIgb2YgYnl0ZXMgcmV0dXJuZWQgaXMgdW5zcGVjaWZpZWQuCisgICAgICAgICIiIgorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICBzZWxmLl9jaGVja19jYW5fcmVhZCgpCisgICAgICAgICAgICBpZiBzZWxmLl9tb2RlID09IF9NT0RFX1JFQURfRU9GIG9yIG5vdCBzZWxmLl9maWxsX2J1ZmZlcigpOgorICAgICAgICAgICAgICAgIHJldHVybiBiIiIKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9idWZmZXIKKworICAgIGRlZiByZWFkKHNlbGYsIHNpemU9LTEpOgorICAgICAgICAiIiJSZWFkIHVwIHRvIHNpemUgdW5jb21wcmVzc2VkIGJ5dGVzIGZyb20gdGhlIGZpbGUuCisKKyAgICAgICAgSWYgc2l6ZSBpcyBuZWdhdGl2ZSBvciBvbWl0dGVkLCByZWFkIHVudGlsIEVPRiBpcyByZWFjaGVkLgorICAgICAgICBSZXR1cm5zIGInJyBpZiB0aGUgZmlsZSBpcyBhbHJlYWR5IGF0IEVPRi4KKyAgICAgICAgIiIiCisgICAgICAgIHdpdGggc2VsZi5fbG9jazoKKyAgICAgICAgICAgIHNlbGYuX2NoZWNrX2Nhbl9yZWFkKCkKKyAgICAgICAgICAgIGlmIHNlbGYuX21vZGUgPT0gX01PREVfUkVBRF9FT0Ygb3Igc2l6ZSA9PSAwOgorICAgICAgICAgICAgICAgIHJldHVybiBiIiIKKyAgICAgICAgICAgIGVsaWYgc2l6ZSA8IDA6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3JlYWRfYWxsKCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3JlYWRfYmxvY2soc2l6ZSkKKworICAgIGRlZiByZWFkMShzZWxmLCBzaXplPS0xKToKKyAgICAgICAgIiIiUmVhZCB1cCB0byBzaXplIHVuY29tcHJlc3NlZCBieXRlcyB3aXRoIGF0IG1vc3Qgb25lIHJlYWQKKyAgICAgICAgZnJvbSB0aGUgdW5kZXJseWluZyBzdHJlYW0uCisKKyAgICAgICAgUmV0dXJucyBiJycgaWYgdGhlIGZpbGUgaXMgYXQgRU9GLgorICAgICAgICAiIiIKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgc2VsZi5fY2hlY2tfY2FuX3JlYWQoKQorICAgICAgICAgICAgaWYgKHNpemUgPT0gMCBvciBzZWxmLl9tb2RlID09IF9NT0RFX1JFQURfRU9GIG9yCisgICAgICAgICAgICAgICAgbm90IHNlbGYuX2ZpbGxfYnVmZmVyKCkpOgorICAgICAgICAgICAgICAgIHJldHVybiBiIiIKKyAgICAgICAgICAgIGlmIDAgPCBzaXplIDwgbGVuKHNlbGYuX2J1ZmZlcik6CisgICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYuX2J1ZmZlcls6c2l6ZV0KKyAgICAgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBzZWxmLl9idWZmZXJbc2l6ZTpdCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGRhdGEgPSBzZWxmLl9idWZmZXIKKyAgICAgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBOb25lCisgICAgICAgICAgICBzZWxmLl9wb3MgKz0gbGVuKGRhdGEpCisgICAgICAgICAgICByZXR1cm4gZGF0YQorCisgICAgZGVmIHJlYWRpbnRvKHNlbGYsIGIpOgorICAgICAgICAiIiJSZWFkIHVwIHRvIGxlbihiKSBieXRlcyBpbnRvIGIuCisKKyAgICAgICAgUmV0dXJucyB0aGUgbnVtYmVyIG9mIGJ5dGVzIHJlYWQgKDAgZm9yIEVPRikuCisgICAgICAgICIiIgorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICByZXR1cm4gaW8uQnVmZmVyZWRJT0Jhc2UucmVhZGludG8oc2VsZiwgYikKKworICAgIGRlZiByZWFkbGluZShzZWxmLCBzaXplPS0xKToKKyAgICAgICAgIiIiUmVhZCBhIGxpbmUgb2YgdW5jb21wcmVzc2VkIGJ5dGVzIGZyb20gdGhlIGZpbGUuCisKKyAgICAgICAgVGhlIHRlcm1pbmF0aW5nIG5ld2xpbmUgKGlmIHByZXNlbnQpIGlzIHJldGFpbmVkLiBJZiBzaXplIGlzCisgICAgICAgIG5vbi1uZWdhdGl2ZSwgbm8gbW9yZSB0aGFuIHNpemUgYnl0ZXMgd2lsbCBiZSByZWFkIChpbiB3aGljaAorICAgICAgICBjYXNlIHRoZSBsaW5lIG1heSBiZSBpbmNvbXBsZXRlKS4gUmV0dXJucyBiJycgaWYgYWxyZWFkeSBhdCBFT0YuCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgaGFzYXR0cihzaXplLCAiX19pbmRleF9fIik6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIkludGVnZXIgYXJndW1lbnQgZXhwZWN0ZWQiKQorICAgICAgICBzaXplID0gc2l6ZS5fX2luZGV4X18oKQorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICByZXR1cm4gaW8uQnVmZmVyZWRJT0Jhc2UucmVhZGxpbmUoc2VsZiwgc2l6ZSkKKworICAgIGRlZiByZWFkbGluZXMoc2VsZiwgc2l6ZT0tMSk6CisgICAgICAgICIiIlJlYWQgYSBsaXN0IG9mIGxpbmVzIG9mIHVuY29tcHJlc3NlZCBieXRlcyBmcm9tIHRoZSBmaWxlLgorCisgICAgICAgIHNpemUgY2FuIGJlIHNwZWNpZmllZCB0byBjb250cm9sIHRoZSBudW1iZXIgb2YgbGluZXMgcmVhZDogbm8KKyAgICAgICAgZnVydGhlciBsaW5lcyB3aWxsIGJlIHJlYWQgb25jZSB0aGUgdG90YWwgc2l6ZSBvZiB0aGUgbGluZXMgcmVhZAorICAgICAgICBzbyBmYXIgZXF1YWxzIG9yIGV4Y2VlZHMgc2l6ZS4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIG5vdCBoYXNhdHRyKHNpemUsICJfX2luZGV4X18iKToKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiSW50ZWdlciBhcmd1bWVudCBleHBlY3RlZCIpCisgICAgICAgIHNpemUgPSBzaXplLl9faW5kZXhfXygpCisgICAgICAgIHdpdGggc2VsZi5fbG9jazoKKyAgICAgICAgICAgIHJldHVybiBpby5CdWZmZXJlZElPQmFzZS5yZWFkbGluZXMoc2VsZiwgc2l6ZSkKKworICAgIGRlZiB3cml0ZShzZWxmLCBkYXRhKToKKyAgICAgICAgIiIiV3JpdGUgYSBieXRlIHN0cmluZyB0byB0aGUgZmlsZS4KKworICAgICAgICBSZXR1cm5zIHRoZSBudW1iZXIgb2YgdW5jb21wcmVzc2VkIGJ5dGVzIHdyaXR0ZW4sIHdoaWNoIGlzCisgICAgICAgIGFsd2F5cyBsZW4oZGF0YSkuIE5vdGUgdGhhdCBkdWUgdG8gYnVmZmVyaW5nLCB0aGUgZmlsZSBvbiBkaXNrCisgICAgICAgIG1heSBub3QgcmVmbGVjdCB0aGUgZGF0YSB3cml0dGVuIHVudGlsIGNsb3NlKCkgaXMgY2FsbGVkLgorICAgICAgICAiIiIKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgc2VsZi5fY2hlY2tfY2FuX3dyaXRlKCkKKyAgICAgICAgICAgIGNvbXByZXNzZWQgPSBzZWxmLl9jb21wcmVzc29yLmNvbXByZXNzKGRhdGEpCisgICAgICAgICAgICBzZWxmLl9mcC53cml0ZShjb21wcmVzc2VkKQorICAgICAgICAgICAgc2VsZi5fcG9zICs9IGxlbihkYXRhKQorICAgICAgICAgICAgcmV0dXJuIGxlbihkYXRhKQorCisgICAgZGVmIHdyaXRlbGluZXMoc2VsZiwgc2VxKToKKyAgICAgICAgIiIiV3JpdGUgYSBzZXF1ZW5jZSBvZiBieXRlIHN0cmluZ3MgdG8gdGhlIGZpbGUuCisKKyAgICAgICAgUmV0dXJucyB0aGUgbnVtYmVyIG9mIHVuY29tcHJlc3NlZCBieXRlcyB3cml0dGVuLgorICAgICAgICBzZXEgY2FuIGJlIGFueSBpdGVyYWJsZSB5aWVsZGluZyBieXRlIHN0cmluZ3MuCisKKyAgICAgICAgTGluZSBzZXBhcmF0b3JzIGFyZSBub3QgYWRkZWQgYmV0d2VlbiB0aGUgd3JpdHRlbiBieXRlIHN0cmluZ3MuCisgICAgICAgICIiIgorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICByZXR1cm4gaW8uQnVmZmVyZWRJT0Jhc2Uud3JpdGVsaW5lcyhzZWxmLCBzZXEpCisKKyAgICAjIFJld2luZCB0aGUgZmlsZSB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBkYXRhIHN0cmVhbS4KKyAgICBkZWYgX3Jld2luZChzZWxmKToKKyAgICAgICAgc2VsZi5fZnAuc2VlaygwLCAwKQorICAgICAgICBzZWxmLl9tb2RlID0gX01PREVfUkVBRAorICAgICAgICBzZWxmLl9wb3MgPSAwCisgICAgICAgIHNlbGYuX2RlY29tcHJlc3NvciA9IEJaMkRlY29tcHJlc3NvcigpCisgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKworICAgIGRlZiBzZWVrKHNlbGYsIG9mZnNldCwgd2hlbmNlPTApOgorICAgICAgICAiIiJDaGFuZ2UgdGhlIGZpbGUgcG9zaXRpb24uCisKKyAgICAgICAgVGhlIG5ldyBwb3NpdGlvbiBpcyBzcGVjaWZpZWQgYnkgb2Zmc2V0LCByZWxhdGl2ZSB0byB0aGUKKyAgICAgICAgcG9zaXRpb24gaW5kaWNhdGVkIGJ5IHdoZW5jZS4gVmFsdWVzIGZvciB3aGVuY2UgYXJlOgorCisgICAgICAgICAgICAwOiBzdGFydCBvZiBzdHJlYW0gKGRlZmF1bHQpOyBvZmZzZXQgbXVzdCBub3QgYmUgbmVnYXRpdmUKKyAgICAgICAgICAgIDE6IGN1cnJlbnQgc3RyZWFtIHBvc2l0aW9uCisgICAgICAgICAgICAyOiBlbmQgb2Ygc3RyZWFtOyBvZmZzZXQgbXVzdCBub3QgYmUgcG9zaXRpdmUKKworICAgICAgICBSZXR1cm5zIHRoZSBuZXcgZmlsZSBwb3NpdGlvbi4KKworICAgICAgICBOb3RlIHRoYXQgc2Vla2luZyBpcyBlbXVsYXRlZCwgc28gZGVwZW5kaW5nIG9uIHRoZSBwYXJhbWV0ZXJzLAorICAgICAgICB0aGlzIG9wZXJhdGlvbiBtYXkgYmUgZXh0cmVtZWx5IHNsb3cuCisgICAgICAgICIiIgorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICBzZWxmLl9jaGVja19jYW5fc2VlaygpCisKKyAgICAgICAgICAgICMgUmVjYWxjdWxhdGUgb2Zmc2V0IGFzIGFuIGFic29sdXRlIGZpbGUgcG9zaXRpb24uCisgICAgICAgICAgICBpZiB3aGVuY2UgPT0gMDoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBlbGlmIHdoZW5jZSA9PSAxOgorICAgICAgICAgICAgICAgIG9mZnNldCA9IHNlbGYuX3BvcyArIG9mZnNldAorICAgICAgICAgICAgZWxpZiB3aGVuY2UgPT0gMjoKKyAgICAgICAgICAgICAgICAjIFNlZWtpbmcgcmVsYXRpdmUgdG8gRU9GIC0gd2UgbmVlZCB0byBrbm93IHRoZSBmaWxlJ3Mgc2l6ZS4KKyAgICAgICAgICAgICAgICBpZiBzZWxmLl9zaXplIDwgMDoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fcmVhZF9hbGwocmV0dXJuX2RhdGE9RmFsc2UpCisgICAgICAgICAgICAgICAgb2Zmc2V0ID0gc2VsZi5fc2l6ZSArIG9mZnNldAorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJbnZhbGlkIHZhbHVlIGZvciB3aGVuY2U6IHt9Ii5mb3JtYXQod2hlbmNlKSkKKworICAgICAgICAgICAgIyBNYWtlIGl0IHNvIHRoYXQgb2Zmc2V0IGlzIHRoZSBudW1iZXIgb2YgYnl0ZXMgdG8gc2tpcCBmb3J3YXJkLgorICAgICAgICAgICAgaWYgb2Zmc2V0IDwgc2VsZi5fcG9zOgorICAgICAgICAgICAgICAgIHNlbGYuX3Jld2luZCgpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG9mZnNldCAtPSBzZWxmLl9wb3MKKworICAgICAgICAgICAgIyBSZWFkIGFuZCBkaXNjYXJkIGRhdGEgdW50aWwgd2UgcmVhY2ggdGhlIGRlc2lyZWQgcG9zaXRpb24uCisgICAgICAgICAgICBpZiBzZWxmLl9tb2RlICE9IF9NT0RFX1JFQURfRU9GOgorICAgICAgICAgICAgICAgIHNlbGYuX3JlYWRfYmxvY2sob2Zmc2V0LCByZXR1cm5fZGF0YT1GYWxzZSkKKworICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3BvcworCisgICAgZGVmIHRlbGwoc2VsZik6CisgICAgICAgICIiIlJldHVybiB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uLiIiIgorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICBzZWxmLl9jaGVja19ub3RfY2xvc2VkKCkKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9wb3MKKworCitkZWYgY29tcHJlc3MoZGF0YSwgY29tcHJlc3NsZXZlbD05KToKKyAgICAiIiJDb21wcmVzcyBhIGJsb2NrIG9mIGRhdGEuCisKKyAgICBjb21wcmVzc2xldmVsLCBpZiBnaXZlbiwgbXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDEgYW5kIDkuCisKKyAgICBGb3IgaW5jcmVtZW50YWwgY29tcHJlc3Npb24sIHVzZSBhIEJaMkNvbXByZXNzb3Igb2JqZWN0IGluc3RlYWQuCisgICAgIiIiCisgICAgY29tcCA9IEJaMkNvbXByZXNzb3IoY29tcHJlc3NsZXZlbCkKKyAgICByZXR1cm4gY29tcC5jb21wcmVzcyhkYXRhKSArIGNvbXAuZmx1c2goKQorCisKK2RlZiBkZWNvbXByZXNzKGRhdGEpOgorICAgICIiIkRlY29tcHJlc3MgYSBibG9jayBvZiBkYXRhLgorCisgICAgRm9yIGluY3JlbWVudGFsIGRlY29tcHJlc3Npb24sIHVzZSBhIEJaMkRlY29tcHJlc3NvciBvYmplY3QgaW5zdGVhZC4KKyAgICAiIiIKKyAgICBpZiBsZW4oZGF0YSkgPT0gMDoKKyAgICAgICAgcmV0dXJuIGIiIgorCisgICAgcmVzdWx0cyA9IFtdCisgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgZGVjb21wID0gQloyRGVjb21wcmVzc29yKCkKKyAgICAgICAgcmVzdWx0cy5hcHBlbmQoZGVjb21wLmRlY29tcHJlc3MoZGF0YSkpCisgICAgICAgIGlmIG5vdCBkZWNvbXAuZW9mOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiQ29tcHJlc3NlZCBkYXRhIGVuZGVkIGJlZm9yZSB0aGUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZW5kLW9mLXN0cmVhbSBtYXJrZXIgd2FzIHJlYWNoZWQiKQorICAgICAgICBpZiBub3QgZGVjb21wLnVudXNlZF9kYXRhOgorICAgICAgICAgICAgcmV0dXJuIGIiIi5qb2luKHJlc3VsdHMpCisgICAgICAgICMgVGhlcmUgaXMgdW51c2VkIGRhdGEgbGVmdCBvdmVyLiBQcm9jZWVkIHRvIG5leHQgc3RyZWFtLgorICAgICAgICBkYXRhID0gZGVjb21wLnVudXNlZF9kYXRhCmRpZmYgLS1naXQgYS9MaWIvY2dpLnB5IGIvTGliL2NnaS5weQppbmRleCA5MGEzMzQ1Li5lOTY0ZjBjIDEwMDc1NQotLS0gYS9MaWIvY2dpLnB5CisrKyBiL0xpYi9jZ2kucHkKQEAgLTc2LDcgKzc2LDcgQEAKICAgICBzZW5kIGFuIGVycm9yIG1lc3NhZ2UpLgogCiAgICAgIiIiCi0gICAgZ2xvYmFsIGxvZ2ZwLCBsb2cKKyAgICBnbG9iYWwgbG9nLCBsb2dmaWxlLCBsb2dmcAogICAgIGlmIGxvZ2ZpbGUgYW5kIG5vdCBsb2dmcDoKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgbG9nZnAgPSBvcGVuKGxvZ2ZpbGUsICJhIikKQEAgLTk2LDYgKzk2LDE1IEBACiAgICAgIiIiRHVtbXkgZnVuY3Rpb24sIGFzc2lnbmVkIHRvIGxvZyB3aGVuIGxvZ2dpbmcgaXMgZGlzYWJsZWQuIiIiCiAgICAgcGFzcwogCitkZWYgY2xvc2Vsb2coKToKKyAgICAiIiJDbG9zZSB0aGUgbG9nIGZpbGUuIiIiCisgICAgZ2xvYmFsIGxvZywgbG9nZmlsZSwgbG9nZnAKKyAgICBsb2dmaWxlID0gJycKKyAgICBpZiBsb2dmcDoKKyAgICAgICAgbG9nZnAuY2xvc2UoKQorICAgICAgICBsb2dmcCA9IE5vbmUKKyAgICBsb2cgPSBpbml0bG9nCisKIGxvZyA9IGluaXRsb2cgICAgICAgICAgICMgVGhlIGN1cnJlbnQgbG9nZ2luZyBmdW5jdGlvbgogCiAKQEAgLTEwMDMsNyArMTAxMiw3IEBACiBkZWYgZXNjYXBlKHMsIHF1b3RlPU5vbmUpOgogICAgICIiIkRlcHJlY2F0ZWQgQVBJLiIiIgogICAgIHdhcm4oImNnaS5lc2NhcGUgaXMgZGVwcmVjYXRlZCwgdXNlIGh0bWwuZXNjYXBlIGluc3RlYWQiLAotICAgICAgICAgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgc3RhY2tsZXZlbD0yKQorICAgICAgICAgRGVwcmVjYXRpb25XYXJuaW5nLCBzdGFja2xldmVsPTIpCiAgICAgcyA9IHMucmVwbGFjZSgiJiIsICImYW1wOyIpICMgTXVzdCBiZSBkb25lIGZpcnN0IQogICAgIHMgPSBzLnJlcGxhY2UoIjwiLCAiJmx0OyIpCiAgICAgcyA9IHMucmVwbGFjZSgiPiIsICImZ3Q7IikKZGlmZiAtLWdpdCBhL0xpYi9jZ2l0Yi5weSBiL0xpYi9jZ2l0Yi5weQppbmRleCA3YjUyYzhlLi5lM2NlMmNiIDEwMDY0NAotLS0gYS9MaWIvY2dpdGIucHkKKysrIGIvTGliL2NnaXRiLnB5CkBAIC0zMSw3ICszMSw2IEBACiBpbXBvcnQgdGltZQogaW1wb3J0IHRva2VuaXplCiBpbXBvcnQgdHJhY2ViYWNrCi1pbXBvcnQgdHlwZXMKIAogZGVmIHJlc2V0KCk6CiAgICAgIiIiUmV0dXJuIGEgc3RyaW5nIHRoYXQgcmVzZXRzIHRoZSBDR0kgYW5kIGJyb3dzZXIgdG8gYSBrbm93biBzdGF0ZS4iIiIKZGlmZiAtLWdpdCBhL0xpYi9jb2RlY3MucHkgYi9MaWIvY29kZWNzLnB5CmluZGV4IGIxNTBkNjQuLmU2M2EwYzYgMTAwNjQ0Ci0tLSBhL0xpYi9jb2RlY3MucHkKKysrIGIvTGliL2NvZGVjcy5weQpAQCAtNDg0LDcgKzQ4NCw3IEBACiAgICAgICAgICAgICAgICAgaWYgZmlyc3RsaW5lOgogICAgICAgICAgICAgICAgICAgICBuZXdjaGFycywgZGVjb2RlZGJ5dGVzID0gXAogICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5kZWNvZGUoZGF0YVs6ZXhjLnN0YXJ0XSwgc2VsZi5lcnJvcnMpCi0gICAgICAgICAgICAgICAgICAgIGxpbmVzID0gbmV3Y2hhcnMuc3BsaXRsaW5lcyhUcnVlKQorICAgICAgICAgICAgICAgICAgICBsaW5lcyA9IG5ld2NoYXJzLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKICAgICAgICAgICAgICAgICAgICAgaWYgbGVuKGxpbmVzKTw9MToKICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgICAgICAgICAgZWxzZToKQEAgLTUyNiw3ICs1MjYsNyBAQAogICAgICAgICAgICAgICAgIHNlbGYuY2hhcmJ1ZmZlciA9IHNlbGYubGluZWJ1ZmZlclswXQogICAgICAgICAgICAgICAgIHNlbGYubGluZWJ1ZmZlciA9IE5vbmUKICAgICAgICAgICAgIGlmIG5vdCBrZWVwZW5kczoKLSAgICAgICAgICAgICAgICBsaW5lID0gbGluZS5zcGxpdGxpbmVzKEZhbHNlKVswXQorICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lLnNwbGl0bGluZXMoa2VlcGVuZHM9RmFsc2UpWzBdCiAgICAgICAgICAgICByZXR1cm4gbGluZQogCiAgICAgICAgIHJlYWRzaXplID0gc2l6ZSBvciA3MgpAQCAtNTQzLDcgKzU0Myw3IEBACiAgICAgICAgICAgICAgICAgICAgIGRhdGEgKz0gc2VsZi5yZWFkKHNpemU9MSwgY2hhcnM9MSkKIAogICAgICAgICAgICAgbGluZSArPSBkYXRhCi0gICAgICAgICAgICBsaW5lcyA9IGxpbmUuc3BsaXRsaW5lcyhUcnVlKQorICAgICAgICAgICAgbGluZXMgPSBsaW5lLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKICAgICAgICAgICAgIGlmIGxpbmVzOgogICAgICAgICAgICAgICAgIGlmIGxlbihsaW5lcykgPiAxOgogICAgICAgICAgICAgICAgICAgICAjIE1vcmUgdGhhbiBvbmUgbGluZSByZXN1bHQ7IHRoZSBmaXJzdCBsaW5lIGlzIGEgZnVsbCBsaW5lCkBAIC01NTksMTAgKzU1OSwxMCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgIyBvbmx5IG9uZSByZW1haW5pbmcgbGluZSwgcHV0IGl0IGJhY2sgaW50byBjaGFyYnVmZmVyCiAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmNoYXJidWZmZXIgPSBsaW5lc1swXSArIHNlbGYuY2hhcmJ1ZmZlcgogICAgICAgICAgICAgICAgICAgICBpZiBub3Qga2VlcGVuZHM6Ci0gICAgICAgICAgICAgICAgICAgICAgICBsaW5lID0gbGluZS5zcGxpdGxpbmVzKEZhbHNlKVswXQorICAgICAgICAgICAgICAgICAgICAgICAgbGluZSA9IGxpbmUuc3BsaXRsaW5lcyhrZWVwZW5kcz1GYWxzZSlbMF0KICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICBsaW5lMHdpdGhlbmQgPSBsaW5lc1swXQotICAgICAgICAgICAgICAgIGxpbmUwd2l0aG91dGVuZCA9IGxpbmVzWzBdLnNwbGl0bGluZXMoRmFsc2UpWzBdCisgICAgICAgICAgICAgICAgbGluZTB3aXRob3V0ZW5kID0gbGluZXNbMF0uc3BsaXRsaW5lcyhrZWVwZW5kcz1GYWxzZSlbMF0KICAgICAgICAgICAgICAgICBpZiBsaW5lMHdpdGhlbmQgIT0gbGluZTB3aXRob3V0ZW5kOiAjIFdlIHJlYWxseSBoYXZlIGEgbGluZSBlbmQKICAgICAgICAgICAgICAgICAgICAgIyBQdXQgdGhlIHJlc3QgYmFjayB0b2dldGhlciBhbmQga2VlcCBpdCB1bnRpbCB0aGUgbmV4dCBjYWxsCiAgICAgICAgICAgICAgICAgICAgIHNlbGYuY2hhcmJ1ZmZlciA9IHNlbGYuX2VtcHR5X2NoYXJidWZmZXIuam9pbihsaW5lc1sxOl0pICsgXApAQCAtNTc1LDcgKzU3NSw3IEBACiAgICAgICAgICAgICAjIHdlIGRpZG4ndCBnZXQgYW55dGhpbmcgb3IgdGhpcyB3YXMgb3VyIG9ubHkgdHJ5CiAgICAgICAgICAgICBpZiBub3QgZGF0YSBvciBzaXplIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgIGlmIGxpbmUgYW5kIG5vdCBrZWVwZW5kczoKLSAgICAgICAgICAgICAgICAgICAgbGluZSA9IGxpbmUuc3BsaXRsaW5lcyhGYWxzZSlbMF0KKyAgICAgICAgICAgICAgICAgICAgbGluZSA9IGxpbmUuc3BsaXRsaW5lcyhrZWVwZW5kcz1GYWxzZSlbMF0KICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgaWYgcmVhZHNpemUgPCA4MDAwOgogICAgICAgICAgICAgICAgIHJlYWRzaXplICo9IDIKQEAgLTgwMyw3ICs4MDMsNyBAQAogCiAgICAgICAgIGRhdGEgPSBzZWxmLnJlYWRlci5yZWFkKCkKICAgICAgICAgZGF0YSwgYnl0ZXNlbmNvZGVkID0gc2VsZi5lbmNvZGUoZGF0YSwgc2VsZi5lcnJvcnMpCi0gICAgICAgIHJldHVybiBkYXRhLnNwbGl0bGluZXMoMSkKKyAgICAgICAgcmV0dXJuIGRhdGEuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQogCiAgICAgZGVmIF9fbmV4dF9fKHNlbGYpOgogCmRpZmYgLS1naXQgYS9MaWIvY29sbGVjdGlvbnMucHkgYi9MaWIvY29sbGVjdGlvbnMvX19pbml0X18ucHkKc2ltaWxhcml0eSBpbmRleCA5MiUKcmVuYW1lIGZyb20gTGliL2NvbGxlY3Rpb25zLnB5CnJlbmFtZSB0byBMaWIvY29sbGVjdGlvbnMvX19pbml0X18ucHkKaW5kZXggZWIyMDI0My4uYjFjODJiNCAxMDA2NDQKLS0tIGEvTGliL2NvbGxlY3Rpb25zLnB5CisrKyBiL0xpYi9jb2xsZWN0aW9ucy9fX2luaXRfXy5weQpAQCAtMSwxMCArMSwxMSBAQAogX19hbGxfXyA9IFsnZGVxdWUnLCAnZGVmYXVsdGRpY3QnLCAnbmFtZWR0dXBsZScsICdVc2VyRGljdCcsICdVc2VyTGlzdCcsCi0gICAgICAgICAgICAnVXNlclN0cmluZycsICdDb3VudGVyJywgJ09yZGVyZWREaWN0J10KLSMgRm9yIGJvb3RzdHJhcHBpbmcgcmVhc29ucywgdGhlIGNvbGxlY3Rpb24gQUJDcyBhcmUgZGVmaW5lZCBpbiBfYWJjb2xsLnB5LgotIyBUaGV5IHNob3VsZCBob3dldmVyIGJlIGNvbnNpZGVyZWQgYW4gaW50ZWdyYWwgcGFydCBvZiBjb2xsZWN0aW9ucy5weS4KLWZyb20gX2FiY29sbCBpbXBvcnQgKgotaW1wb3J0IF9hYmNvbGwKLV9fYWxsX18gKz0gX2FiY29sbC5fX2FsbF9fCisgICAgICAgICAgICAnVXNlclN0cmluZycsICdDb3VudGVyJywgJ09yZGVyZWREaWN0JywgJ0NoYWluTWFwJ10KKworIyBGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIGNvbnRpbnVlIHRvIG1ha2UgdGhlIGNvbGxlY3Rpb25zIEFCQ3MKKyMgYXZhaWxhYmxlIHRocm91Z2ggdGhlIGNvbGxlY3Rpb25zIG1vZHVsZS4KK2Zyb20gY29sbGVjdGlvbnMuYWJjIGltcG9ydCAqCitpbXBvcnQgY29sbGVjdGlvbnMuYWJjCitfX2FsbF9fICs9IGNvbGxlY3Rpb25zLmFiYy5fX2FsbF9fCiAKIGZyb20gX2NvbGxlY3Rpb25zIGltcG9ydCBkZXF1ZSwgZGVmYXVsdGRpY3QKIGZyb20gb3BlcmF0b3IgaW1wb3J0IGl0ZW1nZXR0ZXIgYXMgX2l0ZW1nZXR0ZXIKQEAgLTM2NCw4ICszNjUsOSBAQAogICAgIGV4Y2VwdCBTeW50YXhFcnJvciBhcyBlOgogICAgICAgICByYWlzZSBTeW50YXhFcnJvcihlLm1zZyArICc6XG5cbicgKyBjbGFzc19kZWZpbml0aW9uKQogICAgIHJlc3VsdCA9IG5hbWVzcGFjZVt0eXBlbmFtZV0KKyAgICByZXN1bHQuX3NvdXJjZSA9IGNsYXNzX2RlZmluaXRpb24KICAgICBpZiB2ZXJib3NlOgotICAgICAgICBwcmludChjbGFzc19kZWZpbml0aW9uKQorICAgICAgICBwcmludChyZXN1bHQuX3NvdXJjZSkKIAogICAgICMgRm9yIHBpY2tsaW5nIHRvIHdvcmssIHRoZSBfX21vZHVsZV9fIHZhcmlhYmxlIG5lZWRzIHRvIGJlIHNldCB0byB0aGUgZnJhbWUKICAgICAjIHdoZXJlIHRoZSBuYW1lZCB0dXBsZSBpcyBjcmVhdGVkLiAgQnlwYXNzIHRoaXMgc3RlcCBpbiBlbnZpcm9tZW50cyB3aGVyZQpAQCAtNjc0LDEyICs2NzYsODYgQEAKICAgICAgICAgICAgICAgICByZXN1bHRbZWxlbV0gPSBuZXdjb3VudAogICAgICAgICByZXR1cm4gcmVzdWx0CiAKKyAgICBkZWYgX19wb3NfXyhzZWxmKToKKyAgICAgICAgJ0FkZHMgYW4gZW1wdHkgY291bnRlciwgZWZmZWN0aXZlbHkgc3RyaXBwaW5nIG5lZ2F0aXZlIGFuZCB6ZXJvIGNvdW50cycKKyAgICAgICAgcmV0dXJuIHNlbGYgKyBDb3VudGVyKCkKKworICAgIGRlZiBfX25lZ19fKHNlbGYpOgorICAgICAgICAnJydTdWJ0cmFjdHMgZnJvbSBhbiBlbXB0eSBjb3VudGVyLiAgU3RyaXBzIHBvc2l0aXZlIGFuZCB6ZXJvIGNvdW50cywKKyAgICAgICAgYW5kIGZsaXBzIHRoZSBzaWduIG9uIG5lZ2F0aXZlIGNvdW50cy4KKworICAgICAgICAnJycKKyAgICAgICAgcmV0dXJuIENvdW50ZXIoKSAtIHNlbGYKKworICAgIGRlZiBfa2VlcF9wb3NpdGl2ZShzZWxmKToKKyAgICAgICAgJycnSW50ZXJuYWwgbWV0aG9kIHRvIHN0cmlwIGVsZW1lbnRzIHdpdGggYSBuZWdhdGl2ZSBvciB6ZXJvIGNvdW50JycnCisgICAgICAgIG5vbnBvc2l0aXZlID0gW2VsZW0gZm9yIGVsZW0sIGNvdW50IGluIHNlbGYuaXRlbXMoKSBpZiBub3QgY291bnQgPiAwXQorICAgICAgICBmb3IgZWxlbSBpbiBub25wb3NpdGl2ZToKKyAgICAgICAgICAgIGRlbCBzZWxmW2VsZW1dCisgICAgICAgIHJldHVybiBzZWxmCisKKyAgICBkZWYgX19pYWRkX18oc2VsZiwgb3RoZXIpOgorICAgICAgICAnJydJbnBsYWNlIGFkZCBmcm9tIGFub3RoZXIgY291bnRlciwga2VlcGluZyBvbmx5IHBvc2l0aXZlIGNvdW50cy4KKworICAgICAgICA+Pj4gYyA9IENvdW50ZXIoJ2FiYmInKQorICAgICAgICA+Pj4gYyArPSBDb3VudGVyKCdiY2MnKQorICAgICAgICA+Pj4gYworICAgICAgICBDb3VudGVyKHsnYic6IDQsICdjJzogMiwgJ2EnOiAxfSkKKworICAgICAgICAnJycKKyAgICAgICAgZm9yIGVsZW0sIGNvdW50IGluIG90aGVyLml0ZW1zKCk6CisgICAgICAgICAgICBzZWxmW2VsZW1dICs9IGNvdW50CisgICAgICAgIHJldHVybiBzZWxmLl9rZWVwX3Bvc2l0aXZlKCkKKworICAgIGRlZiBfX2lzdWJfXyhzZWxmLCBvdGhlcik6CisgICAgICAgICcnJ0lucGxhY2Ugc3VidHJhY3QgY291bnRlciwgYnV0IGtlZXAgb25seSByZXN1bHRzIHdpdGggcG9zaXRpdmUgY291bnRzLgorCisgICAgICAgID4+PiBjID0gQ291bnRlcignYWJiYmMnKQorICAgICAgICA+Pj4gYyAtPSBDb3VudGVyKCdiY2NkJykKKyAgICAgICAgPj4+IGMKKyAgICAgICAgQ291bnRlcih7J2InOiAyLCAnYSc6IDF9KQorCisgICAgICAgICcnJworICAgICAgICBmb3IgZWxlbSwgY291bnQgaW4gb3RoZXIuaXRlbXMoKToKKyAgICAgICAgICAgIHNlbGZbZWxlbV0gLT0gY291bnQKKyAgICAgICAgcmV0dXJuIHNlbGYuX2tlZXBfcG9zaXRpdmUoKQorCisgICAgZGVmIF9faW9yX18oc2VsZiwgb3RoZXIpOgorICAgICAgICAnJydJbnBsYWNlIHVuaW9uIGlzIHRoZSBtYXhpbXVtIG9mIHZhbHVlIGZyb20gZWl0aGVyIGNvdW50ZXIuCisKKyAgICAgICAgPj4+IGMgPSBDb3VudGVyKCdhYmJiJykKKyAgICAgICAgPj4+IGMgfD0gQ291bnRlcignYmNjJykKKyAgICAgICAgPj4+IGMKKyAgICAgICAgQ291bnRlcih7J2InOiAzLCAnYyc6IDIsICdhJzogMX0pCisKKyAgICAgICAgJycnCisgICAgICAgIGZvciBlbGVtLCBvdGhlcl9jb3VudCBpbiBvdGhlci5pdGVtcygpOgorICAgICAgICAgICAgY291bnQgPSBzZWxmW2VsZW1dCisgICAgICAgICAgICBpZiBvdGhlcl9jb3VudCA+IGNvdW50OgorICAgICAgICAgICAgICAgIHNlbGZbZWxlbV0gPSBvdGhlcl9jb3VudAorICAgICAgICByZXR1cm4gc2VsZi5fa2VlcF9wb3NpdGl2ZSgpCisKKyAgICBkZWYgX19pYW5kX18oc2VsZiwgb3RoZXIpOgorICAgICAgICAnJydJbnBsYWNlIGludGVyc2VjdGlvbiBpcyB0aGUgbWluaW11bSBvZiBjb3JyZXNwb25kaW5nIGNvdW50cy4KKworICAgICAgICA+Pj4gYyA9IENvdW50ZXIoJ2FiYmInKQorICAgICAgICA+Pj4gYyAmPSBDb3VudGVyKCdiY2MnKQorICAgICAgICA+Pj4gYworICAgICAgICBDb3VudGVyKHsnYic6IDF9KQorCisgICAgICAgICcnJworICAgICAgICBmb3IgZWxlbSwgY291bnQgaW4gc2VsZi5pdGVtcygpOgorICAgICAgICAgICAgb3RoZXJfY291bnQgPSBvdGhlcltlbGVtXQorICAgICAgICAgICAgaWYgb3RoZXJfY291bnQgPCBjb3VudDoKKyAgICAgICAgICAgICAgICBzZWxmW2VsZW1dID0gb3RoZXJfY291bnQKKyAgICAgICAgcmV0dXJuIHNlbGYuX2tlZXBfcG9zaXRpdmUoKQorCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjICBDaGFpbk1hcCAoaGVscGVyIGZvciBjb25maWdwYXJzZXIpCisjIyMgIENoYWluTWFwIChoZWxwZXIgZm9yIGNvbmZpZ3BhcnNlciBhbmQgc3RyaW5nLlRlbXBsYXRlKQogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAKLWNsYXNzIF9DaGFpbk1hcChNdXRhYmxlTWFwcGluZyk6CitjbGFzcyBDaGFpbk1hcChNdXRhYmxlTWFwcGluZyk6CiAgICAgJycnIEEgQ2hhaW5NYXAgZ3JvdXBzIG11bHRpcGxlIGRpY3RzIChvciBvdGhlciBtYXBwaW5ncykgdG9nZXRoZXIKICAgICB0byBjcmVhdGUgYSBzaW5nbGUsIHVwZGF0ZWFibGUgdmlldy4KIApAQCAtODkwLDYgKzk2Niw4IEBACiAgICAgZGVmIGluc2VydChzZWxmLCBpLCBpdGVtKTogc2VsZi5kYXRhLmluc2VydChpLCBpdGVtKQogICAgIGRlZiBwb3Aoc2VsZiwgaT0tMSk6IHJldHVybiBzZWxmLmRhdGEucG9wKGkpCiAgICAgZGVmIHJlbW92ZShzZWxmLCBpdGVtKTogc2VsZi5kYXRhLnJlbW92ZShpdGVtKQorICAgIGRlZiBjbGVhcihzZWxmKTogc2VsZi5kYXRhLmNsZWFyKCkKKyAgICBkZWYgY29weShzZWxmKTogcmV0dXJuIHNlbGYuX19jbGFzc19fKHNlbGYpCiAgICAgZGVmIGNvdW50KHNlbGYsIGl0ZW0pOiByZXR1cm4gc2VsZi5kYXRhLmNvdW50KGl0ZW0pCiAgICAgZGVmIGluZGV4KHNlbGYsIGl0ZW0sICphcmdzKTogcmV0dXJuIHNlbGYuZGF0YS5pbmRleChpdGVtLCAqYXJncykKICAgICBkZWYgcmV2ZXJzZShzZWxmKTogc2VsZi5kYXRhLnJldmVyc2UoKQpAQCAtMTAzNCw3ICsxMTEyLDcgQEAKICAgICAgICAgcmV0dXJuIHNlbGYuZGF0YS5zcGxpdChzZXAsIG1heHNwbGl0KQogICAgIGRlZiByc3BsaXQoc2VsZiwgc2VwPU5vbmUsIG1heHNwbGl0PS0xKToKICAgICAgICAgcmV0dXJuIHNlbGYuZGF0YS5yc3BsaXQoc2VwLCBtYXhzcGxpdCkKLSAgICBkZWYgc3BsaXRsaW5lcyhzZWxmLCBrZWVwZW5kcz0wKTogcmV0dXJuIHNlbGYuZGF0YS5zcGxpdGxpbmVzKGtlZXBlbmRzKQorICAgIGRlZiBzcGxpdGxpbmVzKHNlbGYsIGtlZXBlbmRzPUZhbHNlKTogcmV0dXJuIHNlbGYuZGF0YS5zcGxpdGxpbmVzKGtlZXBlbmRzKQogICAgIGRlZiBzdGFydHN3aXRoKHNlbGYsIHByZWZpeCwgc3RhcnQ9MCwgZW5kPV9zeXMubWF4c2l6ZSk6CiAgICAgICAgIHJldHVybiBzZWxmLmRhdGEuc3RhcnRzd2l0aChwcmVmaXgsIHN0YXJ0LCBlbmQpCiAgICAgZGVmIHN0cmlwKHNlbGYsIGNoYXJzPU5vbmUpOiByZXR1cm4gc2VsZi5fX2NsYXNzX18oc2VsZi5kYXRhLnN0cmlwKGNoYXJzKSkKZGlmZiAtLWdpdCBhL0xpYi9fYWJjb2xsLnB5IGIvTGliL2NvbGxlY3Rpb25zL2FiYy5weQpzaW1pbGFyaXR5IGluZGV4IDk2JQpyZW5hbWUgZnJvbSBMaWIvX2FiY29sbC5weQpyZW5hbWUgdG8gTGliL2NvbGxlY3Rpb25zL2FiYy5weQppbmRleCAyNDE3ZDE4Li43ZmJlODRkIDEwMDY0NAotLS0gYS9MaWIvX2FiY29sbC5weQorKysgYi9MaWIvY29sbGVjdGlvbnMvYWJjLnB5CkBAIC0zLDkgKzMsNyBAQAogCiAiIiJBYnN0cmFjdCBCYXNlIENsYXNzZXMgKEFCQ3MpIGZvciBjb2xsZWN0aW9ucywgYWNjb3JkaW5nIHRvIFBFUCAzMTE5LgogCi1ET04nVCBVU0UgVEhJUyBNT0RVTEUgRElSRUNUTFkhICBUaGUgY2xhc3NlcyBoZXJlIHNob3VsZCBiZSBpbXBvcnRlZAotdmlhIGNvbGxlY3Rpb25zOyB0aGV5IGFyZSBkZWZpbmVkIGhlcmUgb25seSB0byBhbGxldmlhdGUgY2VydGFpbgotYm9vdHN0cmFwcGluZyBpc3N1ZXMuICBVbml0IHRlc3RzIGFyZSBpbiB0ZXN0X2NvbGxlY3Rpb25zLgorVW5pdCB0ZXN0cyBhcmUgaW4gdGVzdF9jb2xsZWN0aW9ucy4KICIiIgogCiBmcm9tIGFiYyBpbXBvcnQgQUJDTWV0YSwgYWJzdHJhY3RtZXRob2QKQEAgLTQ4LDYgKzQ2LDggQEAKIAogY2xhc3MgSGFzaGFibGUobWV0YWNsYXNzPUFCQ01ldGEpOgogCisgICAgX19zbG90c19fID0gKCkKKwogICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBfX2hhc2hfXyhzZWxmKToKICAgICAgICAgcmV0dXJuIDAKQEAgLTY1LDYgKzY1LDggQEAKIAogY2xhc3MgSXRlcmFibGUobWV0YWNsYXNzPUFCQ01ldGEpOgogCisgICAgX19zbG90c19fID0gKCkKKwogICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBfX2l0ZXJfXyhzZWxmKToKICAgICAgICAgd2hpbGUgRmFsc2U6CkBAIC04MCw2ICs4Miw4IEBACiAKIGNsYXNzIEl0ZXJhdG9yKEl0ZXJhYmxlKToKIAorICAgIF9fc2xvdHNfXyA9ICgpCisKICAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgX19uZXh0X18oc2VsZik6CiAgICAgICAgIHJhaXNlIFN0b3BJdGVyYXRpb24KQEAgLTExMSw2ICsxMTUsOCBAQAogCiBjbGFzcyBTaXplZChtZXRhY2xhc3M9QUJDTWV0YSk6CiAKKyAgICBfX3Nsb3RzX18gPSAoKQorCiAgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIF9fbGVuX18oc2VsZik6CiAgICAgICAgIHJldHVybiAwCkBAIC0xMjUsNiArMTMxLDggQEAKIAogY2xhc3MgQ29udGFpbmVyKG1ldGFjbGFzcz1BQkNNZXRhKToKIAorICAgIF9fc2xvdHNfXyA9ICgpCisKICAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgX19jb250YWluc19fKHNlbGYsIHgpOgogICAgICAgICByZXR1cm4gRmFsc2UKQEAgLTEzOSw2ICsxNDcsOCBAQAogCiBjbGFzcyBDYWxsYWJsZShtZXRhY2xhc3M9QUJDTWV0YSk6CiAKKyAgICBfX3Nsb3RzX18gPSAoKQorCiAgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIF9fY2FsbF9fKHNlbGYsICphcmdzLCAqKmt3ZHMpOgogICAgICAgICByZXR1cm4gRmFsc2UKQEAgLTE2Niw2ICsxNzYsOCBAQAogICAgIHRoZW4gdGhlIG90aGVyIG9wZXJhdGlvbnMgd2lsbCBhdXRvbWF0aWNhbGx5IGZvbGxvdyBzdWl0LgogICAgICIiIgogCisgICAgX19zbG90c19fID0gKCkKKwogICAgIGRlZiBfX2xlX18oc2VsZiwgb3RoZXIpOgogICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShvdGhlciwgU2V0KToKICAgICAgICAgICAgIHJldHVybiBOb3RJbXBsZW1lbnRlZApAQCAtMjc3LDYgKzI4OSw4IEBACiAKIGNsYXNzIE11dGFibGVTZXQoU2V0KToKIAorICAgIF9fc2xvdHNfXyA9ICgpCisKICAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgYWRkKHNlbGYsIHZhbHVlKToKICAgICAgICAgIiIiQWRkIGFuIGVsZW1lbnQuIiIiCkBAIC0zNTAsNiArMzY0LDggQEAKIAogY2xhc3MgTWFwcGluZyhTaXplZCwgSXRlcmFibGUsIENvbnRhaW5lcik6CiAKKyAgICBfX3Nsb3RzX18gPSAoKQorCiAgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIF9fZ2V0aXRlbV9fKHNlbGYsIGtleSk6CiAgICAgICAgIHJhaXNlIEtleUVycm9yCkBAIC00NTMsNiArNDY5LDggQEAKIAogY2xhc3MgTXV0YWJsZU1hcHBpbmcoTWFwcGluZyk6CiAKKyAgICBfX3Nsb3RzX18gPSAoKQorCiAgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIF9fc2V0aXRlbV9fKHNlbGYsIGtleSwgdmFsdWUpOgogICAgICAgICByYWlzZSBLZXlFcnJvcgpAQCAtNTMyLDYgKzU1MCw4IEBACiAgICAgX19nZXRpdGVtX18sIGFuZCBfX2xlbl9fLgogICAgICIiIgogCisgICAgX19zbG90c19fID0gKCkKKwogICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBfX2dldGl0ZW1fXyhzZWxmLCBpbmRleCk6CiAgICAgICAgIHJhaXNlIEluZGV4RXJyb3IKQEAgLTU3NywxMiArNTk3LDE2IEBACiAgICAgWFhYIFNob3VsZCBhZGQgYWxsIHRoZWlyIG1ldGhvZHMuCiAgICAgIiIiCiAKKyAgICBfX3Nsb3RzX18gPSAoKQorCiBCeXRlU3RyaW5nLnJlZ2lzdGVyKGJ5dGVzKQogQnl0ZVN0cmluZy5yZWdpc3RlcihieXRlYXJyYXkpCiAKIAogY2xhc3MgTXV0YWJsZVNlcXVlbmNlKFNlcXVlbmNlKToKIAorICAgIF9fc2xvdHNfXyA9ICgpCisKICAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgX19zZXRpdGVtX18oc2VsZiwgaW5kZXgsIHZhbHVlKToKICAgICAgICAgcmFpc2UgSW5kZXhFcnJvcgpAQCAtNTk4LDYgKzYyMiwxMyBAQAogICAgIGRlZiBhcHBlbmQoc2VsZiwgdmFsdWUpOgogICAgICAgICBzZWxmLmluc2VydChsZW4oc2VsZiksIHZhbHVlKQogCisgICAgZGVmIGNsZWFyKHNlbGYpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgICAgIHNlbGYucG9wKCkKKyAgICAgICAgZXhjZXB0IEluZGV4RXJyb3I6CisgICAgICAgICAgICBwYXNzCisKICAgICBkZWYgcmV2ZXJzZShzZWxmKToKICAgICAgICAgbiA9IGxlbihzZWxmKQogICAgICAgICBmb3IgaSBpbiByYW5nZShuLy8yKToKZGlmZiAtLWdpdCBhL0xpYi9jb25jdXJyZW50L2Z1dHVyZXMvX2Jhc2UucHkgYi9MaWIvY29uY3VycmVudC9mdXR1cmVzL19iYXNlLnB5CmluZGV4IDc5YjkxZDQuLjNiMDk3YjUgMTAwNjQ0Ci0tLSBhL0xpYi9jb25jdXJyZW50L2Z1dHVyZXMvX2Jhc2UucHkKKysrIGIvTGliL2NvbmN1cnJlbnQvZnV0dXJlcy9fYmFzZS5weQpAQCAtNCw3ICs0LDYgQEAKIF9fYXV0aG9yX18gPSAnQnJpYW4gUXVpbmxhbiAoYnJpYW5Ac3dlZXRhcHAuY29tKScKIAogaW1wb3J0IGNvbGxlY3Rpb25zCi1pbXBvcnQgZnVuY3Rvb2xzCiBpbXBvcnQgbG9nZ2luZwogaW1wb3J0IHRocmVhZGluZwogaW1wb3J0IHRpbWUKQEAgLTUzNiwxNSArNTM1LDE5IEBACiAKICAgICAgICAgZnMgPSBbc2VsZi5zdWJtaXQoZm4sICphcmdzKSBmb3IgYXJncyBpbiB6aXAoKml0ZXJhYmxlcyldCiAKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgZm9yIGZ1dHVyZSBpbiBmczoKLSAgICAgICAgICAgICAgICBpZiB0aW1lb3V0IGlzIE5vbmU6Ci0gICAgICAgICAgICAgICAgICAgIHlpZWxkIGZ1dHVyZS5yZXN1bHQoKQotICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgIHlpZWxkIGZ1dHVyZS5yZXN1bHQoZW5kX3RpbWUgLSB0aW1lLnRpbWUoKSkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIGZvciBmdXR1cmUgaW4gZnM6Ci0gICAgICAgICAgICAgICAgZnV0dXJlLmNhbmNlbCgpCisgICAgICAgICMgWWllbGQgbXVzdCBiZSBoaWRkZW4gaW4gY2xvc3VyZSBzbyB0aGF0IHRoZSBmdXR1cmVzIGFyZSBzdWJtaXR0ZWQKKyAgICAgICAgIyBiZWZvcmUgdGhlIGZpcnN0IGl0ZXJhdG9yIHZhbHVlIGlzIHJlcXVpcmVkLgorICAgICAgICBkZWYgcmVzdWx0X2l0ZXJhdG9yKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgZm9yIGZ1dHVyZSBpbiBmczoKKyAgICAgICAgICAgICAgICAgICAgaWYgdGltZW91dCBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgZnV0dXJlLnJlc3VsdCgpCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICB5aWVsZCBmdXR1cmUucmVzdWx0KGVuZF90aW1lIC0gdGltZS50aW1lKCkpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIGZvciBmdXR1cmUgaW4gZnM6CisgICAgICAgICAgICAgICAgICAgIGZ1dHVyZS5jYW5jZWwoKQorICAgICAgICByZXR1cm4gcmVzdWx0X2l0ZXJhdG9yKCkKIAogICAgIGRlZiBzaHV0ZG93bihzZWxmLCB3YWl0PVRydWUpOgogICAgICAgICAiIiJDbGVhbi11cCB0aGUgcmVzb3VyY2VzIGFzc29jaWF0ZWQgd2l0aCB0aGUgRXhlY3V0b3IuCmRpZmYgLS1naXQgYS9MaWIvY29uY3VycmVudC9mdXR1cmVzL3Byb2Nlc3MucHkgYi9MaWIvY29uY3VycmVudC9mdXR1cmVzL3Byb2Nlc3MucHkKaW5kZXggZDNiYmUyYy4uMDQyMzhhNyAxMDA2NDQKLS0tIGEvTGliL2NvbmN1cnJlbnQvZnV0dXJlcy9wcm9jZXNzLnB5CisrKyBiL0xpYi9jb25jdXJyZW50L2Z1dHVyZXMvcHJvY2Vzcy5weQpAQCAtNDYsOSArNDYsMTIgQEAKIF9fYXV0aG9yX18gPSAnQnJpYW4gUXVpbmxhbiAoYnJpYW5Ac3dlZXRhcHAuY29tKScKIAogaW1wb3J0IGF0ZXhpdAoraW1wb3J0IG9zCiBmcm9tIGNvbmN1cnJlbnQuZnV0dXJlcyBpbXBvcnQgX2Jhc2UKIGltcG9ydCBxdWV1ZQogaW1wb3J0IG11bHRpcHJvY2Vzc2luZworZnJvbSBtdWx0aXByb2Nlc3NpbmcucXVldWVzIGltcG9ydCBTaW1wbGVRdWV1ZSwgRnVsbAorZnJvbSBtdWx0aXByb2Nlc3NpbmcuY29ubmVjdGlvbiBpbXBvcnQgd2FpdAogaW1wb3J0IHRocmVhZGluZwogaW1wb3J0IHdlYWtyZWYKIApAQCAtMTIxLDcgKzEyNCw3IEBACiAgICAgICAgIGNhbGxfaXRlbSA9IGNhbGxfcXVldWUuZ2V0KGJsb2NrPVRydWUpCiAgICAgICAgIGlmIGNhbGxfaXRlbSBpcyBOb25lOgogICAgICAgICAgICAgIyBXYWtlIHVwIHF1ZXVlIG1hbmFnZW1lbnQgdGhyZWFkCi0gICAgICAgICAgICByZXN1bHRfcXVldWUucHV0KE5vbmUpCisgICAgICAgICAgICByZXN1bHRfcXVldWUucHV0KG9zLmdldHBpZCgpKQogICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHIgPSBjYWxsX2l0ZW0uZm4oKmNhbGxfaXRlbS5hcmdzLCAqKmNhbGxfaXRlbS5rd2FyZ3MpCkBAIC0xOTMsNDYgKzE5Niw5MiBAQAogICAgICAgICByZXN1bHRfcXVldWU6IEEgbXVsdGlwcm9jZXNzaW5nLlF1ZXVlIG9mIF9SZXN1bHRJdGVtcyBnZW5lcmF0ZWQgYnkgdGhlCiAgICAgICAgICAgICBwcm9jZXNzIHdvcmtlcnMuCiAgICAgIiIiCi0gICAgbmJfc2h1dGRvd25fcHJvY2Vzc2VzID0gMAotICAgIGRlZiBzaHV0ZG93bl9vbmVfcHJvY2VzcygpOgotICAgICAgICAiIiJUZWxsIGEgd29ya2VyIHRvIHRlcm1pbmF0ZSwgd2hpY2ggd2lsbCBpbiB0dXJuIHdha2UgdXMgYWdhaW4iIiIKLSAgICAgICAgbm9ubG9jYWwgbmJfc2h1dGRvd25fcHJvY2Vzc2VzCi0gICAgICAgIGNhbGxfcXVldWUucHV0KE5vbmUpCi0gICAgICAgIG5iX3NodXRkb3duX3Byb2Nlc3NlcyArPSAxCisgICAgZXhlY3V0b3IgPSBOb25lCisKKyAgICBkZWYgc2h1dHRpbmdfZG93bigpOgorICAgICAgICByZXR1cm4gX3NodXRkb3duIG9yIGV4ZWN1dG9yIGlzIE5vbmUgb3IgZXhlY3V0b3IuX3NodXRkb3duX3RocmVhZAorCisgICAgZGVmIHNodXRkb3duX3dvcmtlcigpOgorICAgICAgICAjIFRoaXMgaXMgYW4gdXBwZXIgYm91bmQKKyAgICAgICAgbmJfY2hpbGRyZW5fYWxpdmUgPSBzdW0ocC5pc19hbGl2ZSgpIGZvciBwIGluIHByb2Nlc3Nlcy52YWx1ZXMoKSkKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMCwgbmJfY2hpbGRyZW5fYWxpdmUpOgorICAgICAgICAgICAgY2FsbF9xdWV1ZS5wdXRfbm93YWl0KE5vbmUpCisgICAgICAgICMgUmVsZWFzZSB0aGUgcXVldWUncyByZXNvdXJjZXMgYXMgc29vbiBhcyBwb3NzaWJsZS4KKyAgICAgICAgY2FsbF9xdWV1ZS5jbG9zZSgpCisgICAgICAgICMgSWYgLmpvaW4oKSBpcyBub3QgY2FsbGVkIG9uIHRoZSBjcmVhdGVkIHByb2Nlc3NlcyB0aGVuCisgICAgICAgICMgc29tZSBtdWx0aXByb2Nlc3NpbmcuUXVldWUgbWV0aG9kcyBtYXkgZGVhZGxvY2sgb24gTWFjIE9TIFguCisgICAgICAgIGZvciBwIGluIHByb2Nlc3Nlcy52YWx1ZXMoKToKKyAgICAgICAgICAgIHAuam9pbigpCisKKyAgICByZWFkZXIgPSByZXN1bHRfcXVldWUuX3JlYWRlcgorCiAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgX2FkZF9jYWxsX2l0ZW1fdG9fcXVldWUocGVuZGluZ193b3JrX2l0ZW1zLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3b3JrX2lkc19xdWV1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbF9xdWV1ZSkKIAotICAgICAgICByZXN1bHRfaXRlbSA9IHJlc3VsdF9xdWV1ZS5nZXQoYmxvY2s9VHJ1ZSkKLSAgICAgICAgaWYgcmVzdWx0X2l0ZW0gaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICB3b3JrX2l0ZW0gPSBwZW5kaW5nX3dvcmtfaXRlbXNbcmVzdWx0X2l0ZW0ud29ya19pZF0KLSAgICAgICAgICAgIGRlbCBwZW5kaW5nX3dvcmtfaXRlbXNbcmVzdWx0X2l0ZW0ud29ya19pZF0KLQotICAgICAgICAgICAgaWYgcmVzdWx0X2l0ZW0uZXhjZXB0aW9uOgotICAgICAgICAgICAgICAgIHdvcmtfaXRlbS5mdXR1cmUuc2V0X2V4Y2VwdGlvbihyZXN1bHRfaXRlbS5leGNlcHRpb24pCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHdvcmtfaXRlbS5mdXR1cmUuc2V0X3Jlc3VsdChyZXN1bHRfaXRlbS5yZXN1bHQpCisgICAgICAgIHNlbnRpbmVscyA9IFtwLnNlbnRpbmVsIGZvciBwIGluIHByb2Nlc3Nlcy52YWx1ZXMoKV0KKyAgICAgICAgYXNzZXJ0IHNlbnRpbmVscworICAgICAgICByZWFkeSA9IHdhaXQoW3JlYWRlcl0gKyBzZW50aW5lbHMpCisgICAgICAgIGlmIHJlYWRlciBpbiByZWFkeToKKyAgICAgICAgICAgIHJlc3VsdF9pdGVtID0gcmVhZGVyLnJlY3YoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBNYXJrIHRoZSBwcm9jZXNzIHBvb2wgYnJva2VuIHNvIHRoYXQgc3VibWl0cyBmYWlsIHJpZ2h0IG5vdy4KKyAgICAgICAgICAgIGV4ZWN1dG9yID0gZXhlY3V0b3JfcmVmZXJlbmNlKCkKKyAgICAgICAgICAgIGlmIGV4ZWN1dG9yIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGV4ZWN1dG9yLl9icm9rZW4gPSBUcnVlCisgICAgICAgICAgICAgICAgZXhlY3V0b3IuX3NodXRkb3duX3RocmVhZCA9IFRydWUKKyAgICAgICAgICAgICAgICBleGVjdXRvciA9IE5vbmUKKyAgICAgICAgICAgICMgQWxsIGZ1dHVyZXMgaW4gZmxpZ2h0IG11c3QgYmUgbWFya2VkIGZhaWxlZAorICAgICAgICAgICAgZm9yIHdvcmtfaWQsIHdvcmtfaXRlbSBpbiBwZW5kaW5nX3dvcmtfaXRlbXMuaXRlbXMoKToKKyAgICAgICAgICAgICAgICB3b3JrX2l0ZW0uZnV0dXJlLnNldF9leGNlcHRpb24oCisgICAgICAgICAgICAgICAgICAgIEJyb2tlblByb2Nlc3NQb29sKAorICAgICAgICAgICAgICAgICAgICAgICAgIkEgcHJvY2VzcyBpbiB0aGUgcHJvY2VzcyBwb29sIHdhcyAiCisgICAgICAgICAgICAgICAgICAgICAgICAidGVybWluYXRlZCBhYnJ1cHRseSB3aGlsZSB0aGUgZnV0dXJlIHdhcyAiCisgICAgICAgICAgICAgICAgICAgICAgICAicnVubmluZyBvciBwZW5kaW5nLiIKKyAgICAgICAgICAgICAgICAgICAgKSkKKyAgICAgICAgICAgIHBlbmRpbmdfd29ya19pdGVtcy5jbGVhcigpCisgICAgICAgICAgICAjIFRlcm1pbmF0ZSByZW1haW5pbmcgd29ya2VycyBmb3JjaWJseTogdGhlIHF1ZXVlcyBvciB0aGVpcgorICAgICAgICAgICAgIyBsb2NrcyBtYXkgYmUgaW4gYSBkaXJ0eSBzdGF0ZSBhbmQgYmxvY2sgZm9yZXZlci4KKyAgICAgICAgICAgIGZvciBwIGluIHByb2Nlc3Nlcy52YWx1ZXMoKToKKyAgICAgICAgICAgICAgICBwLnRlcm1pbmF0ZSgpCisgICAgICAgICAgICBzaHV0ZG93bl93b3JrZXIoKQorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGlmIGlzaW5zdGFuY2UocmVzdWx0X2l0ZW0sIGludCk6CisgICAgICAgICAgICAjIENsZWFuIHNodXRkb3duIG9mIGEgd29ya2VyIHVzaW5nIGl0cyBQSUQKKyAgICAgICAgICAgICMgKGF2b2lkcyBtYXJraW5nIHRoZSBleGVjdXRvciBicm9rZW4pCisgICAgICAgICAgICBhc3NlcnQgc2h1dHRpbmdfZG93bigpCisgICAgICAgICAgICBwID0gcHJvY2Vzc2VzLnBvcChyZXN1bHRfaXRlbSkKKyAgICAgICAgICAgIHAuam9pbigpCisgICAgICAgICAgICBpZiBub3QgcHJvY2Vzc2VzOgorICAgICAgICAgICAgICAgIHNodXRkb3duX3dvcmtlcigpCisgICAgICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGVsaWYgcmVzdWx0X2l0ZW0gaXMgbm90IE5vbmU6CisgICAgICAgICAgICB3b3JrX2l0ZW0gPSBwZW5kaW5nX3dvcmtfaXRlbXMucG9wKHJlc3VsdF9pdGVtLndvcmtfaWQsIE5vbmUpCisgICAgICAgICAgICAjIHdvcmtfaXRlbSBjYW4gYmUgTm9uZSBpZiBhbm90aGVyIHByb2Nlc3MgdGVybWluYXRlZCAoc2VlIGFib3ZlKQorICAgICAgICAgICAgaWYgd29ya19pdGVtIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGlmIHJlc3VsdF9pdGVtLmV4Y2VwdGlvbjoKKyAgICAgICAgICAgICAgICAgICAgd29ya19pdGVtLmZ1dHVyZS5zZXRfZXhjZXB0aW9uKHJlc3VsdF9pdGVtLmV4Y2VwdGlvbikKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICB3b3JrX2l0ZW0uZnV0dXJlLnNldF9yZXN1bHQocmVzdWx0X2l0ZW0ucmVzdWx0KQogICAgICAgICAjIENoZWNrIHdoZXRoZXIgd2Ugc2hvdWxkIHN0YXJ0IHNodXR0aW5nIGRvd24uCiAgICAgICAgIGV4ZWN1dG9yID0gZXhlY3V0b3JfcmVmZXJlbmNlKCkKICAgICAgICAgIyBObyBtb3JlIHdvcmsgaXRlbXMgY2FuIGJlIGFkZGVkIGlmOgogICAgICAgICAjICAgLSBUaGUgaW50ZXJwcmV0ZXIgaXMgc2h1dHRpbmcgZG93biBPUgogICAgICAgICAjICAgLSBUaGUgZXhlY3V0b3IgdGhhdCBvd25zIHRoaXMgd29ya2VyIGhhcyBiZWVuIGNvbGxlY3RlZCBPUgogICAgICAgICAjICAgLSBUaGUgZXhlY3V0b3IgdGhhdCBvd25zIHRoaXMgd29ya2VyIGhhcyBiZWVuIHNodXRkb3duLgotICAgICAgICBpZiBfc2h1dGRvd24gb3IgZXhlY3V0b3IgaXMgTm9uZSBvciBleGVjdXRvci5fc2h1dGRvd25fdGhyZWFkOgotICAgICAgICAgICAgIyBTaW5jZSBubyBuZXcgd29yayBpdGVtcyBjYW4gYmUgYWRkZWQsIGl0IGlzIHNhZmUgdG8gc2h1dGRvd24KLSAgICAgICAgICAgICMgdGhpcyB0aHJlYWQgaWYgdGhlcmUgYXJlIG5vIHBlbmRpbmcgd29yayBpdGVtcy4KLSAgICAgICAgICAgIGlmIG5vdCBwZW5kaW5nX3dvcmtfaXRlbXM6Ci0gICAgICAgICAgICAgICAgd2hpbGUgbmJfc2h1dGRvd25fcHJvY2Vzc2VzIDwgbGVuKHByb2Nlc3Nlcyk6Ci0gICAgICAgICAgICAgICAgICAgIHNodXRkb3duX29uZV9wcm9jZXNzKCkKLSAgICAgICAgICAgICAgICAjIElmIC5qb2luKCkgaXMgbm90IGNhbGxlZCBvbiB0aGUgY3JlYXRlZCBwcm9jZXNzZXMgdGhlbgotICAgICAgICAgICAgICAgICMgc29tZSBtdWx0aXByb2Nlc3NpbmcuUXVldWUgbWV0aG9kcyBtYXkgZGVhZGxvY2sgb24gTWFjIE9TCi0gICAgICAgICAgICAgICAgIyBYLgotICAgICAgICAgICAgICAgIGZvciBwIGluIHByb2Nlc3NlczoKLSAgICAgICAgICAgICAgICAgICAgcC5qb2luKCkKLSAgICAgICAgICAgICAgICBjYWxsX3F1ZXVlLmNsb3NlKCkKLSAgICAgICAgICAgICAgICByZXR1cm4KLSAgICAgICAgZGVsIGV4ZWN1dG9yCisgICAgICAgIGlmIHNodXR0aW5nX2Rvd24oKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAjIFNpbmNlIG5vIG5ldyB3b3JrIGl0ZW1zIGNhbiBiZSBhZGRlZCwgaXQgaXMgc2FmZSB0byBzaHV0ZG93bgorICAgICAgICAgICAgICAgICMgdGhpcyB0aHJlYWQgaWYgdGhlcmUgYXJlIG5vIHBlbmRpbmcgd29yayBpdGVtcy4KKyAgICAgICAgICAgICAgICBpZiBub3QgcGVuZGluZ193b3JrX2l0ZW1zOgorICAgICAgICAgICAgICAgICAgICBzaHV0ZG93bl93b3JrZXIoKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgICAgIGV4Y2VwdCBGdWxsOgorICAgICAgICAgICAgICAgICMgVGhpcyBpcyBub3QgYSBwcm9ibGVtOiB3ZSB3aWxsIGV2ZW50dWFsbHkgYmUgd29rZW4gdXAgKGluCisgICAgICAgICAgICAgICAgIyByZXN1bHRfcXVldWUuZ2V0KCkpIGFuZCBiZSBhYmxlIHRvIHNlbmQgYSBzZW50aW5lbCBhZ2Fpbi4KKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgIGV4ZWN1dG9yID0gTm9uZQogCiBfc3lzdGVtX2xpbWl0c19jaGVja2VkID0gRmFsc2UKIF9zeXN0ZW1fbGltaXRlZCA9IE5vbmUKQEAgLTI0Myw3ICsyOTIsNiBAQAogICAgICAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcihfc3lzdGVtX2xpbWl0ZWQpCiAgICAgX3N5c3RlbV9saW1pdHNfY2hlY2tlZCA9IFRydWUKICAgICB0cnk6Ci0gICAgICAgIGltcG9ydCBvcwogICAgICAgICBuc2Vtc19tYXggPSBvcy5zeXNjb25mKCJTQ19TRU1fTlNFTVNfTUFYIikKICAgICBleGNlcHQgKEF0dHJpYnV0ZUVycm9yLCBWYWx1ZUVycm9yKToKICAgICAgICAgIyBzeXNjb25mIG5vdCBhdmFpbGFibGUgb3Igc2V0dGluZyBub3QgYXZhaWxhYmxlCkBAIC0yNTksNiArMzA3LDE0IEBACiAgICAgX3N5c3RlbV9saW1pdGVkID0gInN5c3RlbSBwcm92aWRlcyB0b28gZmV3IHNlbWFwaG9yZXMgKCVkIGF2YWlsYWJsZSwgMjU2IG5lY2Vzc2FyeSkiICUgbnNlbXNfbWF4CiAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcihfc3lzdGVtX2xpbWl0ZWQpCiAKKworY2xhc3MgQnJva2VuUHJvY2Vzc1Bvb2woUnVudGltZUVycm9yKToKKyAgICAiIiIKKyAgICBSYWlzZWQgd2hlbiBhIHByb2Nlc3MgaW4gYSBQcm9jZXNzUG9vbEV4ZWN1dG9yIHRlcm1pbmF0ZWQgYWJydXB0bHkKKyAgICB3aGlsZSBhIGZ1dHVyZSB3YXMgaW4gdGhlIHJ1bm5pbmcgc3RhdGUuCisgICAgIiIiCisKKwogY2xhc3MgUHJvY2Vzc1Bvb2xFeGVjdXRvcihfYmFzZS5FeGVjdXRvcik6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIG1heF93b3JrZXJzPU5vbmUpOgogICAgICAgICAiIiJJbml0aWFsaXplcyBhIG5ldyBQcm9jZXNzUG9vbEV4ZWN1dG9yIGluc3RhbmNlLgpAQCAtMjgwLDE0ICszMzYsMjAgQEAKICAgICAgICAgIyBiZWNhdXNlIGZ1dHVyZXMgaW4gdGhlIGNhbGwgcXVldWUgY2Fubm90IGJlIGNhbmNlbGxlZC4KICAgICAgICAgc2VsZi5fY2FsbF9xdWV1ZSA9IG11bHRpcHJvY2Vzc2luZy5RdWV1ZShzZWxmLl9tYXhfd29ya2VycyArCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVhUUkFfUVVFVUVEX0NBTExTKQotICAgICAgICBzZWxmLl9yZXN1bHRfcXVldWUgPSBtdWx0aXByb2Nlc3NpbmcuUXVldWUoKQorICAgICAgICAjIEtpbGxlZCB3b3JrZXIgcHJvY2Vzc2VzIGNhbiBwcm9kdWNlIHNwdXJpb3VzICJicm9rZW4gcGlwZSIKKyAgICAgICAgIyB0cmFjZWJhY2tzIGluIHRoZSBxdWV1ZSdzIG93biB3b3JrZXIgdGhyZWFkLiBCdXQgd2UgZGV0ZWN0IGtpbGxlZAorICAgICAgICAjIHByb2Nlc3NlcyBhbnl3YXksIHNvIHNpbGVuY2UgdGhlIHRyYWNlYmFja3MuCisgICAgICAgIHNlbGYuX2NhbGxfcXVldWUuX2lnbm9yZV9lcGlwZSA9IFRydWUKKyAgICAgICAgc2VsZi5fcmVzdWx0X3F1ZXVlID0gU2ltcGxlUXVldWUoKQogICAgICAgICBzZWxmLl93b3JrX2lkcyA9IHF1ZXVlLlF1ZXVlKCkKICAgICAgICAgc2VsZi5fcXVldWVfbWFuYWdlbWVudF90aHJlYWQgPSBOb25lCi0gICAgICAgIHNlbGYuX3Byb2Nlc3NlcyA9IHNldCgpCisgICAgICAgICMgTWFwIG9mIHBpZHMgdG8gcHJvY2Vzc2VzCisgICAgICAgIHNlbGYuX3Byb2Nlc3NlcyA9IHt9CiAKICAgICAgICAgIyBTaHV0ZG93biBpcyBhIHR3by1zdGVwIHByb2Nlc3MuCiAgICAgICAgIHNlbGYuX3NodXRkb3duX3RocmVhZCA9IEZhbHNlCiAgICAgICAgIHNlbGYuX3NodXRkb3duX2xvY2sgPSB0aHJlYWRpbmcuTG9jaygpCisgICAgICAgIHNlbGYuX2Jyb2tlbiA9IEZhbHNlCiAgICAgICAgIHNlbGYuX3F1ZXVlX2NvdW50ID0gMAogICAgICAgICBzZWxmLl9wZW5kaW5nX3dvcmtfaXRlbXMgPSB7fQogCkBAIC0yOTcsNiArMzU5LDggQEAKICAgICAgICAgZGVmIHdlYWtyZWZfY2IoXywgcT1zZWxmLl9yZXN1bHRfcXVldWUpOgogICAgICAgICAgICAgcS5wdXQoTm9uZSkKICAgICAgICAgaWYgc2VsZi5fcXVldWVfbWFuYWdlbWVudF90aHJlYWQgaXMgTm9uZToKKyAgICAgICAgICAgICMgU3RhcnQgdGhlIHByb2Nlc3NlcyBzbyB0aGF0IHRoZWlyIHNlbnRpbmVscyBhcmUga25vd24uCisgICAgICAgICAgICBzZWxmLl9hZGp1c3RfcHJvY2Vzc19jb3VudCgpCiAgICAgICAgICAgICBzZWxmLl9xdWV1ZV9tYW5hZ2VtZW50X3RocmVhZCA9IHRocmVhZGluZy5UaHJlYWQoCiAgICAgICAgICAgICAgICAgICAgIHRhcmdldD1fcXVldWVfbWFuYWdlbWVudF93b3JrZXIsCiAgICAgICAgICAgICAgICAgICAgIGFyZ3M9KHdlYWtyZWYucmVmKHNlbGYsIHdlYWtyZWZfY2IpLApAQCAtMzE2LDEwICszODAsMTMgQEAKICAgICAgICAgICAgICAgICAgICAgYXJncz0oc2VsZi5fY2FsbF9xdWV1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fcmVzdWx0X3F1ZXVlKSkKICAgICAgICAgICAgIHAuc3RhcnQoKQotICAgICAgICAgICAgc2VsZi5fcHJvY2Vzc2VzLmFkZChwKQorICAgICAgICAgICAgc2VsZi5fcHJvY2Vzc2VzW3AucGlkXSA9IHAKIAogICAgIGRlZiBzdWJtaXQoc2VsZiwgZm4sICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgIHdpdGggc2VsZi5fc2h1dGRvd25fbG9jazoKKyAgICAgICAgICAgIGlmIHNlbGYuX2Jyb2tlbjoKKyAgICAgICAgICAgICAgICByYWlzZSBCcm9rZW5Qcm9jZXNzUG9vbCgnQSBjaGlsZCBwcm9jZXNzIHRlcm1pbmF0ZWQgJworICAgICAgICAgICAgICAgICAgICAnYWJydXB0bHksIHRoZSBwcm9jZXNzIHBvb2wgaXMgbm90IHVzYWJsZSBhbnltb3JlJykKICAgICAgICAgICAgIGlmIHNlbGYuX3NodXRkb3duX3RocmVhZDoKICAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoJ2Nhbm5vdCBzY2hlZHVsZSBuZXcgZnV0dXJlcyBhZnRlciBzaHV0ZG93bicpCiAKQEAgLTMzMyw3ICs0MDAsNiBAQAogICAgICAgICAgICAgc2VsZi5fcmVzdWx0X3F1ZXVlLnB1dChOb25lKQogCiAgICAgICAgICAgICBzZWxmLl9zdGFydF9xdWV1ZV9tYW5hZ2VtZW50X3RocmVhZCgpCi0gICAgICAgICAgICBzZWxmLl9hZGp1c3RfcHJvY2Vzc19jb3VudCgpCiAgICAgICAgICAgICByZXR1cm4gZgogICAgIHN1Ym1pdC5fX2RvY19fID0gX2Jhc2UuRXhlY3V0b3Iuc3VibWl0Ll9fZG9jX18KIApkaWZmIC0tZ2l0IGEvTGliL2NvbmN1cnJlbnQvZnV0dXJlcy90aHJlYWQucHkgYi9MaWIvY29uY3VycmVudC9mdXR1cmVzL3RocmVhZC5weQppbmRleCBmYmFjMDg4Li45NWJiNjgyIDEwMDY0NAotLS0gYS9MaWIvY29uY3VycmVudC9mdXR1cmVzL3RocmVhZC5weQorKysgYi9MaWIvY29uY3VycmVudC9mdXR1cmVzL3RocmVhZC5weQpAQCAtNzQsNyArNzQsNyBAQAogICAgICAgICAgICAgICAgIHdvcmtfcXVldWUucHV0KE5vbmUpCiAgICAgICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgICAgICBkZWwgZXhlY3V0b3IKLSAgICBleGNlcHQgQmFzZUV4Y2VwdGlvbiBhcyBlOgorICAgIGV4Y2VwdCBCYXNlRXhjZXB0aW9uOgogICAgICAgICBfYmFzZS5MT0dHRVIuY3JpdGljYWwoJ0V4Y2VwdGlvbiBpbiB3b3JrZXInLCBleGNfaW5mbz1UcnVlKQogCiBjbGFzcyBUaHJlYWRQb29sRXhlY3V0b3IoX2Jhc2UuRXhlY3V0b3IpOgpkaWZmIC0tZ2l0IGEvTGliL2NvbmZpZ3BhcnNlci5weSBiL0xpYi9jb25maWdwYXJzZXIucHkKaW5kZXggZDE0OGI4OC4uN2JjNDM5OCAxMDA2NDQKLS0tIGEvTGliL2NvbmZpZ3BhcnNlci5weQorKysgYi9MaWIvY29uZmlncGFyc2VyLnB5CkBAIC0xMTksNyArMTE5LDggQEAKICAgICAgICAgYmV0d2VlbiBrZXlzIGFuZCB2YWx1ZXMgYXJlIHN1cnJvdW5kZWQgYnkgc3BhY2VzLgogIiIiCiAKLWZyb20gY29sbGVjdGlvbnMgaW1wb3J0IE11dGFibGVNYXBwaW5nLCBPcmRlcmVkRGljdCBhcyBfZGVmYXVsdF9kaWN0LCBfQ2hhaW5NYXAKK2Zyb20gY29sbGVjdGlvbnMuYWJjIGltcG9ydCBNdXRhYmxlTWFwcGluZworZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgT3JkZXJlZERpY3QgYXMgX2RlZmF1bHRfZGljdCwgQ2hhaW5NYXAgYXMgX0NoYWluTWFwCiBpbXBvcnQgZnVuY3Rvb2xzCiBpbXBvcnQgaW8KIGltcG9ydCBpdGVydG9vbHMKZGlmZiAtLWdpdCBhL0xpYi9jb250ZXh0bGliLnB5IGIvTGliL2NvbnRleHRsaWIucHkKaW5kZXggNWViYmJjNi4uMmY4ZjAwZCAxMDA2NDQKLS0tIGEvTGliL2NvbnRleHRsaWIucHkKKysrIGIvTGliL2NvbnRleHRsaWIucHkKQEAgLTIsNyArMiw2IEBACiAKIGltcG9ydCBzeXMKIGZyb20gZnVuY3Rvb2xzIGltcG9ydCB3cmFwcwotZnJvbSB3YXJuaW5ncyBpbXBvcnQgd2FybgogCiBfX2FsbF9fID0gWyJjb250ZXh0bWFuYWdlciIsICJjbG9zaW5nIiwgIkNvbnRleHREZWNvcmF0b3IiXQogCmRpZmYgLS1naXQgYS9MaWIvY29weS5weSBiL0xpYi9jb3B5LnB5CmluZGV4IDA4OWQxMDEuLmQ5NjIwMWUgMTAwNjQ0Ci0tLSBhL0xpYi9jb3B5LnB5CisrKyBiL0xpYi9jb3B5LnB5CkBAIC0xNzMsOCArMTczLDEwIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1bihkZWVwKWNvcHlhYmxlIG9iamVjdCBvZiB0eXBlICVzIiAlIGNscykKICAgICAgICAgICAgICAgICB5ID0gX3JlY29uc3RydWN0KHgsIHJ2LCAxLCBtZW1vKQogCi0gICAgbWVtb1tkXSA9IHkKLSAgICBfa2VlcF9hbGl2ZSh4LCBtZW1vKSAjIE1ha2Ugc3VyZSB4IGxpdmVzIGF0IGxlYXN0IGFzIGxvbmcgYXMgZAorICAgICMgSWYgaXMgaXRzIG93biBjb3B5LCBkb24ndCBtZW1vaXplLgorICAgIGlmIHkgaXMgbm90IHg6CisgICAgICAgIG1lbW9bZF0gPSB5CisgICAgICAgIF9rZWVwX2FsaXZlKHgsIG1lbW8pICMgTWFrZSBzdXJlIHggbGl2ZXMgYXQgbGVhc3QgYXMgbG9uZyBhcyBkCiAgICAgcmV0dXJuIHkKIAogX2RlZXBjb3B5X2Rpc3BhdGNoID0gZCA9IHt9CkBAIC0yMTQsOSArMjE2LDEwIEBACiAgICAgeSA9IFtdCiAgICAgZm9yIGEgaW4geDoKICAgICAgICAgeS5hcHBlbmQoZGVlcGNvcHkoYSwgbWVtbykpCi0gICAgZCA9IGlkKHgpCisgICAgIyBXZSdyZSBub3QgZ29pbmcgdG8gcHV0IHRoZSB0dXBsZSBpbiB0aGUgbWVtbywgYnV0IGl0J3Mgc3RpbGwgaW1wb3J0YW50IHdlCisgICAgIyBjaGVjayBmb3IgaXQsIGluIGNhc2UgdGhlIHR1cGxlIGNvbnRhaW5zIHJlY3Vyc2l2ZSBtdXRhYmxlIHN0cnVjdHVyZXMuCiAgICAgdHJ5OgotICAgICAgICByZXR1cm4gbWVtb1tkXQorICAgICAgICByZXR1cm4gbWVtb1tpZCh4KV0KICAgICBleGNlcHQgS2V5RXJyb3I6CiAgICAgICAgIHBhc3MKICAgICBmb3IgaSBpbiByYW5nZShsZW4oeCkpOgpAQCAtMjI1LDcgKzIyOCw2IEBACiAgICAgICAgICAgICBicmVhawogICAgIGVsc2U6CiAgICAgICAgIHkgPSB4Ci0gICAgbWVtb1tkXSA9IHkKICAgICByZXR1cm4geQogZFt0dXBsZV0gPSBfZGVlcGNvcHlfdHVwbGUKIApAQCAtMzIxLDY4ICszMjMsMyBAQAogIyBIZWxwZXIgZm9yIGluc3RhbmNlIGNyZWF0aW9uIHdpdGhvdXQgY2FsbGluZyBfX2luaXRfXwogY2xhc3MgX0VtcHR5Q2xhc3M6CiAgICAgcGFzcwotCi1kZWYgX3Rlc3QoKToKLSAgICBsID0gW05vbmUsIDEsIDIsIDMuMTQsICd4eXp6eScsICgxLCAyKSwgWzMuMTQsICdhYmMnXSwKLSAgICAgICAgIHsnYWJjJzogJ0FCQyd9LCAoKSwgW10sIHt9XQotICAgIGwxID0gY29weShsKQotICAgIHByaW50KGwxPT1sKQotICAgIGwxID0gbWFwKGNvcHksIGwpCi0gICAgcHJpbnQobDE9PWwpCi0gICAgbDEgPSBkZWVwY29weShsKQotICAgIHByaW50KGwxPT1sKQotICAgIGNsYXNzIEM6Ci0gICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhcmc9Tm9uZSk6Ci0gICAgICAgICAgICBzZWxmLmEgPSAxCi0gICAgICAgICAgICBzZWxmLmFyZyA9IGFyZwotICAgICAgICAgICAgaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKLSAgICAgICAgICAgICAgICBpbXBvcnQgc3lzCi0gICAgICAgICAgICAgICAgZmlsZSA9IHN5cy5hcmd2WzBdCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGZpbGUgPSBfX2ZpbGVfXwotICAgICAgICAgICAgc2VsZi5mcCA9IG9wZW4oZmlsZSkKLSAgICAgICAgICAgIHNlbGYuZnAuY2xvc2UoKQotICAgICAgICBkZWYgX19nZXRzdGF0ZV9fKHNlbGYpOgotICAgICAgICAgICAgcmV0dXJuIHsnYSc6IHNlbGYuYSwgJ2FyZyc6IHNlbGYuYXJnfQotICAgICAgICBkZWYgX19zZXRzdGF0ZV9fKHNlbGYsIHN0YXRlKToKLSAgICAgICAgICAgIGZvciBrZXksIHZhbHVlIGluIHN0YXRlLml0ZW1zKCk6Ci0gICAgICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBrZXksIHZhbHVlKQotICAgICAgICBkZWYgX19kZWVwY29weV9fKHNlbGYsIG1lbW89Tm9uZSk6Ci0gICAgICAgICAgICBuZXcgPSBzZWxmLl9fY2xhc3NfXyhkZWVwY29weShzZWxmLmFyZywgbWVtbykpCi0gICAgICAgICAgICBuZXcuYSA9IHNlbGYuYQotICAgICAgICAgICAgcmV0dXJuIG5ldwotICAgIGMgPSBDKCdhcmd1bWVudCBza2V0Y2gnKQotICAgIGwuYXBwZW5kKGMpCi0gICAgbDIgPSBjb3B5KGwpCi0gICAgcHJpbnQobCA9PSBsMikKLSAgICBwcmludChsKQotICAgIHByaW50KGwyKQotICAgIGwyID0gZGVlcGNvcHkobCkKLSAgICBwcmludChsID09IGwyKQotICAgIHByaW50KGwpCi0gICAgcHJpbnQobDIpCi0gICAgbC5hcHBlbmQoe2xbMV06IGwsICd4eXonOiBsWzJdfSkKLSAgICBsMyA9IGNvcHkobCkKLSAgICBpbXBvcnQgcmVwcmxpYgotICAgIHByaW50KG1hcChyZXBybGliLnJlcHIsIGwpKQotICAgIHByaW50KG1hcChyZXBybGliLnJlcHIsIGwxKSkKLSAgICBwcmludChtYXAocmVwcmxpYi5yZXByLCBsMikpCi0gICAgcHJpbnQobWFwKHJlcHJsaWIucmVwciwgbDMpKQotICAgIGwzID0gZGVlcGNvcHkobCkKLSAgICBwcmludChtYXAocmVwcmxpYi5yZXByLCBsKSkKLSAgICBwcmludChtYXAocmVwcmxpYi5yZXByLCBsMSkpCi0gICAgcHJpbnQobWFwKHJlcHJsaWIucmVwciwgbDIpKQotICAgIHByaW50KG1hcChyZXBybGliLnJlcHIsIGwzKSkKLSAgICBjbGFzcyBvZGljdChkaWN0KToKLSAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGQgPSB7fSk6Ci0gICAgICAgICAgICBzZWxmLmEgPSA5OQotICAgICAgICAgICAgZGljdC5fX2luaXRfXyhzZWxmLCBkKQotICAgICAgICBkZWYgX19zZXRpdGVtX18oc2VsZiwgaywgaSk6Ci0gICAgICAgICAgICBkaWN0Ll9fc2V0aXRlbV9fKHNlbGYsIGssIGkpCi0gICAgICAgICAgICBzZWxmLmEKLSAgICBvID0gb2RpY3QoeyJBIiA6ICJCIn0pCi0gICAgeCA9IGRlZXBjb3B5KG8pCi0gICAgcHJpbnQobywgeCkKLQotaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKLSAgICBfdGVzdCgpCmRpZmYgLS1naXQgYS9MaWIvY3J5cHQucHkgYi9MaWIvY3J5cHQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTY1YjBjYgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9jcnlwdC5weQpAQCAtMCwwICsxLDYyIEBACisiIiJXcmFwcGVyIHRvIHRoZSBQT1NJWCBjcnlwdCBsaWJyYXJ5IGNhbGwgYW5kIGFzc29jaWF0ZWQgZnVuY3Rpb25hbGl0eS4iIiIKKworaW1wb3J0IF9jcnlwdAoraW1wb3J0IHN0cmluZworZnJvbSByYW5kb20gaW1wb3J0IGNob2ljZQorZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgbmFtZWR0dXBsZQorCisKK19zYWx0Y2hhcnMgPSBzdHJpbmcuYXNjaWlfbGV0dGVycyArIHN0cmluZy5kaWdpdHMgKyAnLi8nCisKKworY2xhc3MgX01ldGhvZChuYW1lZHR1cGxlKCdfTWV0aG9kJywgJ25hbWUgaWRlbnQgc2FsdF9jaGFycyB0b3RhbF9zaXplJykpOgorCisgICAgIiIiQ2xhc3MgcmVwcmVzZW50aW5nIGEgc2FsdCBtZXRob2QgcGVyIHRoZSBNb2R1bGFyIENyeXB0IEZvcm1hdCBvciB0aGUKKyAgICBsZWdhY3kgMi1jaGFyYWN0ZXIgY3J5cHQgbWV0aG9kLiIiIgorCisgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gJzxjcnlwdC5NRVRIT0Rfe30+Jy5mb3JtYXQoc2VsZi5uYW1lKQorCisKKworZGVmIG1rc2FsdChtZXRob2Q9Tm9uZSk6CisgICAgIiIiR2VuZXJhdGUgYSBzYWx0IGZvciB0aGUgc3BlY2lmaWVkIG1ldGhvZC4KKworICAgIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBzdHJvbmdlc3QgYXZhaWxhYmxlIG1ldGhvZCB3aWxsIGJlIHVzZWQuCisKKyAgICAiIiIKKyAgICBpZiBtZXRob2QgaXMgTm9uZToKKyAgICAgICAgbWV0aG9kID0gbWV0aG9kc1swXQorICAgIHMgPSAnJHt9JCcuZm9ybWF0KG1ldGhvZC5pZGVudCkgaWYgbWV0aG9kLmlkZW50IGVsc2UgJycKKyAgICBzICs9ICcnLmpvaW4oY2hvaWNlKF9zYWx0Y2hhcnMpIGZvciBfIGluIHJhbmdlKG1ldGhvZC5zYWx0X2NoYXJzKSkKKyAgICByZXR1cm4gcworCisKK2RlZiBjcnlwdCh3b3JkLCBzYWx0PU5vbmUpOgorICAgICIiIlJldHVybiBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIG9uZS13YXkgaGFzaCBvZiBhIHBhc3N3b3JkLCB3aXRoIGEgc2FsdAorICAgIHByZXBlbmRlZC4KKworICAgIElmIGBgc2FsdGBgIGlzIG5vdCBzcGVjaWZpZWQgb3IgaXMgYGBOb25lYGAsIHRoZSBzdHJvbmdlc3QKKyAgICBhdmFpbGFibGUgbWV0aG9kIHdpbGwgYmUgc2VsZWN0ZWQgYW5kIGEgc2FsdCBnZW5lcmF0ZWQuICBPdGhlcndpc2UsCisgICAgYGBzYWx0YGAgbWF5IGJlIG9uZSBvZiB0aGUgYGBjcnlwdC5NRVRIT0RfKmBgIHZhbHVlcywgb3IgYSBzdHJpbmcgYXMKKyAgICByZXR1cm5lZCBieSBgYGNyeXB0Lm1rc2FsdCgpYGAuCisKKyAgICAiIiIKKyAgICBpZiBzYWx0IGlzIE5vbmUgb3IgaXNpbnN0YW5jZShzYWx0LCBfTWV0aG9kKToKKyAgICAgICAgc2FsdCA9IG1rc2FsdChzYWx0KQorICAgIHJldHVybiBfY3J5cHQuY3J5cHQod29yZCwgc2FsdCkKKworCisjICBhdmFpbGFibGUgc2FsdGluZy9jcnlwdG8gbWV0aG9kcworTUVUSE9EX0NSWVBUID0gX01ldGhvZCgnQ1JZUFQnLCBOb25lLCAyLCAxMykKK01FVEhPRF9NRDUgPSBfTWV0aG9kKCdNRDUnLCAnMScsIDgsIDM0KQorTUVUSE9EX1NIQTI1NiA9IF9NZXRob2QoJ1NIQTI1NicsICc1JywgMTYsIDYzKQorTUVUSE9EX1NIQTUxMiA9IF9NZXRob2QoJ1NIQTUxMicsICc2JywgMTYsIDEwNikKKworbWV0aG9kcyA9IFtdCitmb3IgX21ldGhvZCBpbiAoTUVUSE9EX1NIQTUxMiwgTUVUSE9EX1NIQTI1NiwgTUVUSE9EX01ENSk6CisgICAgX3Jlc3VsdCA9IGNyeXB0KCcnLCBfbWV0aG9kKQorICAgIGlmIF9yZXN1bHQgYW5kIGxlbihfcmVzdWx0KSA9PSBfbWV0aG9kLnRvdGFsX3NpemU6CisgICAgICAgIG1ldGhvZHMuYXBwZW5kKF9tZXRob2QpCittZXRob2RzLmFwcGVuZChNRVRIT0RfQ1JZUFQpCitkZWwgX3Jlc3VsdCwgX21ldGhvZApkaWZmIC0tZ2l0IGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfY2FsbGJhY2tzLnB5IGIvTGliL2N0eXBlcy90ZXN0L3Rlc3RfY2FsbGJhY2tzLnB5CmluZGV4IGM3MjA3ZWEuLjU2MDBiNDMgMTAwNjQ0Ci0tLSBhL0xpYi9jdHlwZXMvdGVzdC90ZXN0X2NhbGxiYWNrcy5weQorKysgYi9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9jYWxsYmFja3MucHkKQEAgLTE0MCw3ICsxNDAsNyBAQAogICAgICAgICAgICAgZGVmIF9fZGVsX18oc2VsZik6CiAgICAgICAgICAgICAgICAgZ2MuY29sbGVjdCgpCiAgICAgICAgIENGVU5DVFlQRShOb25lKShsYW1iZGEgeD1OYXN0eSgpOiBOb25lKQotICAgICAgICAKKwogCiB0cnk6CiAgICAgV0lORlVOQ1RZUEUKZGlmZiAtLWdpdCBhL0xpYi9jdHlwZXMvdGVzdC90ZXN0X21lbWZ1bmN0aW9ucy5weSBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X21lbWZ1bmN0aW9ucy5weQppbmRleCBhYTIxMTNiLi5hZWM0YWFhIDEwMDY0NAotLS0gYS9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9tZW1mdW5jdGlvbnMucHkKKysrIGIvTGliL2N0eXBlcy90ZXN0L3Rlc3RfbWVtZnVuY3Rpb25zLnB5CkBAIC0xLDQgKzEsNSBAQAogaW1wb3J0IHN5cworZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiBpbXBvcnQgdW5pdHRlc3QKIGZyb20gY3R5cGVzIGltcG9ydCAqCiAKQEAgLTQ5LDYgKzUwLDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjYXN0KGEsIFBPSU5URVIoY19ieXRlKSlbOjc6N10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFs5N10pCiAKKyAgICBAc3VwcG9ydC5yZWZjb3VudF90ZXN0CiAgICAgZGVmIHRlc3Rfc3RyaW5nX2F0KHNlbGYpOgogICAgICAgICBzID0gc3RyaW5nX2F0KGIiZm9vIGJhciIpCiAgICAgICAgICMgWFhYIFRoZSBmb2xsb3dpbmcgbWF5IGJlIHdyb25nLCBkZXBlbmRpbmcgb24gaG93IFB5dGhvbgpkaWZmIC0tZ2l0IGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcGFyYW1ldGVycy5weSBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3BhcmFtZXRlcnMucHkKaW5kZXggZTgzZmQ5YS4uOTc2MmZiOSAxMDA2NDQKLS0tIGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcGFyYW1ldGVycy5weQorKysgYi9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9wYXJhbWV0ZXJzLnB5CkBAIC03MywxMyArNzMsMTAgQEAKICAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgogIyMgICAgICAgICAgICBwcmludCAiKE5vIGNfd2NoYXJfcCkiCiAgICAgICAgICAgICByZXR1cm4KLSAgICAgICAgcyA9ICIxMjMiCi0gICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNfd2NoYXJfcC5mcm9tX3BhcmFtKHMpLl9vYmogaXMgcykKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgY193Y2hhcl9wLmZyb21fcGFyYW0sIDQyKQogCi0gICAgICAgICAgICAjIG5ldyBpbiAwLjkuMTogY29udmVydCAoZGVjb2RlKSBhc2NpaSB0byB1bmljb2RlCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNfd2NoYXJfcC5mcm9tX3BhcmFtKCIxMjMiKS5fb2JqLCAiMTIzIikKKyAgICAgICAgY193Y2hhcl9wLmZyb21fcGFyYW0oIjEyMyIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjX3djaGFyX3AuZnJvbV9wYXJhbSwgNDIpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgY193Y2hhcl9wLmZyb21fcGFyYW0sIGIiMTIzXDM3NyIpCiAKICAgICAgICAgcGEgPSBjX3djaGFyX3AuZnJvbV9wYXJhbShjX3djaGFyX3AoIjEyMyIpKQpkaWZmIC0tZ2l0IGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcGVwMzExOC5weSBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3BlcDMxMTgucHkKaW5kZXggZmE2NDYxZi4uYWQxM2IwMSAxMDA2NDQKLS0tIGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcGVwMzExOC5weQorKysgYi9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9wZXAzMTE4LnB5CkBAIC0yNSwxNCArMjUsMTcgQEAKICAgICAgICAgICAgIHYgPSBtZW1vcnl2aWV3KG9iKQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobm9ybWFsaXplKHYuZm9ybWF0KSwgbm9ybWFsaXplKGZtdCkpCi0gICAgICAgICAgICAgICAgaWYgc2hhcGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgaWYgc2hhcGU6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHYpLCBzaGFwZVswXSkKICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbih2KSAqIHNpemVvZihpdGVtdHApLCBzaXplb2Yob2IpKQogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodi5pdGVtc2l6ZSwgc2l6ZW9mKGl0ZW10cCkpCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LnNoYXBlLCBzaGFwZSkKLSAgICAgICAgICAgICAgICAjIGN0eXBlcyBvYmplY3QgYWx3YXlzIGhhdmUgYSBub24tc3RyaWRlZCBtZW1vcnkgYmxvY2sKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYuc3RyaWRlcywgTm9uZSkKKyAgICAgICAgICAgICAgICAjIFhYWCBJc3N1ZSAjMTI4NTE6IFB5Q0RhdGFfTmV3R2V0QnVmZmVyKCkgbXVzdCBwcm92aWRlIHN0cmlkZXMKKyAgICAgICAgICAgICAgICAjICAgICBpZiByZXF1ZXN0ZWQuIG1lbW9yeXZpZXcgY3VycmVudGx5IHJlY29uc3RydWN0cyBtaXNzaW5nCisgICAgICAgICAgICAgICAgIyAgICAgc3RyaWRlIGluZm9ybWF0aW9uLCBzbyB0aGlzIGFzc2VydCB3aWxsIGZhaWwuCisgICAgICAgICAgICAgICAgIyBzZWxmLmFzc2VydEVxdWFsKHYuc3RyaWRlcywgKCkpCisKICAgICAgICAgICAgICAgICAjIHRoZXkgYXJlIGFsd2F5cyByZWFkL3dyaXRlCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh2LnJlYWRvbmx5KQogCkBAIC01MiwxNCArNTUsMTUgQEAKICAgICAgICAgICAgIHYgPSBtZW1vcnl2aWV3KG9iKQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodi5mb3JtYXQsIGZtdCkKLSAgICAgICAgICAgICAgICBpZiBzaGFwZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBpZiBzaGFwZToKICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4odiksIHNoYXBlWzBdKQogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHYpICogc2l6ZW9mKGl0ZW10cCksIHNpemVvZihvYikpCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2Lml0ZW1zaXplLCBzaXplb2YoaXRlbXRwKSkKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYuc2hhcGUsIHNoYXBlKQotICAgICAgICAgICAgICAgICMgY3R5cGVzIG9iamVjdCBhbHdheXMgaGF2ZSBhIG5vbi1zdHJpZGVkIG1lbW9yeSBibG9jawotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodi5zdHJpZGVzLCBOb25lKQorICAgICAgICAgICAgICAgICMgWFhYIElzc3VlICMxMjg1MQorICAgICAgICAgICAgICAgICMgc2VsZi5hc3NlcnRFcXVhbCh2LnN0cmlkZXMsICgpKQorCiAgICAgICAgICAgICAgICAgIyB0aGV5IGFyZSBhbHdheXMgcmVhZC93cml0ZQogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uodi5yZWFkb25seSkKIApAQCAtMTEwLDM0ICsxMTQsMzQgQEAKIAogICAgICMjIHNpbXBsZSB0eXBlcwogCi0gICAgKGNfY2hhciwgICAgICAgICAgICAgICAgICAgICI8YyIsICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBjX2NoYXIpLAotICAgIChjX2J5dGUsICAgICAgICAgICAgICAgICAgICAiPGIiLCAgICAgICAgICAgICAgICAgICBOb25lLCAgICAgICAgICAgY19ieXRlKSwKLSAgICAoY191Ynl0ZSwgICAgICAgICAgICAgICAgICAgIjxCIiwgICAgICAgICAgICAgICAgICAgTm9uZSwgICAgICAgICAgIGNfdWJ5dGUpLAotICAgIChjX3Nob3J0LCAgICAgICAgICAgICAgICAgICAiPGgiLCAgICAgICAgICAgICAgICAgICBOb25lLCAgICAgICAgICAgY19zaG9ydCksCi0gICAgKGNfdXNob3J0LCAgICAgICAgICAgICAgICAgICI8SCIsICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBjX3VzaG9ydCksCisgICAgKGNfY2hhciwgICAgICAgICAgICAgICAgICAgICI8YyIsICAgICAgICAgICAgICAgICAgICgpLCAgICAgICAgICAgY19jaGFyKSwKKyAgICAoY19ieXRlLCAgICAgICAgICAgICAgICAgICAgIjxiIiwgICAgICAgICAgICAgICAgICAgKCksICAgICAgICAgICBjX2J5dGUpLAorICAgIChjX3VieXRlLCAgICAgICAgICAgICAgICAgICAiPEIiLCAgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIGNfdWJ5dGUpLAorICAgIChjX3Nob3J0LCAgICAgICAgICAgICAgICAgICAiPGgiLCAgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIGNfc2hvcnQpLAorICAgIChjX3VzaG9ydCwgICAgICAgICAgICAgICAgICAiPEgiLCAgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIGNfdXNob3J0KSwKIAogICAgICMgY19pbnQgYW5kIGNfdWludCBtYXkgYmUgYWxpYXNlcyB0byBjX2xvbmcKLSAgICAjKGNfaW50LCAgICAgICAgICAgICAgICAgICAgICI8aSIsICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBjX2ludCksCi0gICAgIyhjX3VpbnQsICAgICAgICAgICAgICAgICAgICAiPEkiLCAgICAgICAgICAgICAgICAgICBOb25lLCAgICAgICAgICAgY191aW50KSwKKyAgICAjKGNfaW50LCAgICAgICAgICAgICAgICAgICAgICI8aSIsICAgICAgICAgICAgICAgICAgICgpLCAgICAgICAgICAgY19pbnQpLAorICAgICMoY191aW50LCAgICAgICAgICAgICAgICAgICAgIjxJIiwgICAgICAgICAgICAgICAgICAgKCksICAgICAgICAgICBjX3VpbnQpLAogCi0gICAgKGNfbG9uZywgICAgICAgICAgICAgICAgICAgICI8bCIsICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBjX2xvbmcpLAotICAgIChjX3Vsb25nLCAgICAgICAgICAgICAgICAgICAiPEwiLCAgICAgICAgICAgICAgICAgICBOb25lLCAgICAgICAgICAgY191bG9uZyksCisgICAgKGNfbG9uZywgICAgICAgICAgICAgICAgICAgICI8bCIsICAgICAgICAgICAgICAgICAgICgpLCAgICAgICAgICAgY19sb25nKSwKKyAgICAoY191bG9uZywgICAgICAgICAgICAgICAgICAgIjxMIiwgICAgICAgICAgICAgICAgICAgKCksICAgICAgICAgICBjX3Vsb25nKSwKIAogICAgICMgY19sb25nbG9uZyBhbmQgY191bG9uZ2xvbmcgYXJlIGFsaWFzZXMgb24gNjQtYml0IHBsYXRmb3JtcwogICAgICMoY19sb25nbG9uZywgICAgICAgICAgICAgICAgIjxxIiwgICAgICAgICAgICAgICAgICAgTm9uZSwgICAgICAgICAgIGNfbG9uZ2xvbmcpLAogICAgICMoY191bG9uZ2xvbmcsICAgICAgICAgICAgICAgIjxRIiwgICAgICAgICAgICAgICAgICAgTm9uZSwgICAgICAgICAgIGNfdWxvbmdsb25nKSwKIAotICAgIChjX2Zsb2F0LCAgICAgICAgICAgICAgICAgICAiPGYiLCAgICAgICAgICAgICAgICAgICBOb25lLCAgICAgICAgICAgY19mbG9hdCksCi0gICAgKGNfZG91YmxlLCAgICAgICAgICAgICAgICAgICI8ZCIsICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBjX2RvdWJsZSksCisgICAgKGNfZmxvYXQsICAgICAgICAgICAgICAgICAgICI8ZiIsICAgICAgICAgICAgICAgICAgICgpLCAgICAgICAgICAgY19mbG9hdCksCisgICAgKGNfZG91YmxlLCAgICAgICAgICAgICAgICAgICI8ZCIsICAgICAgICAgICAgICAgICAgICgpLCAgICAgICAgICAgY19kb3VibGUpLAogICAgICMgY19sb25nZG91YmxlIG1heSBiZSBhbiBhbGlhcyB0byBjX2RvdWJsZQogCi0gICAgKGNfYm9vbCwgICAgICAgICAgICAgICAgICAgICI8PyIsICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBjX2Jvb2wpLAotICAgIChweV9vYmplY3QsICAgICAgICAgICAgICAgICAiPE8iLCAgICAgICAgICAgICAgICAgICBOb25lLCAgICAgICAgICAgcHlfb2JqZWN0KSwKKyAgICAoY19ib29sLCAgICAgICAgICAgICAgICAgICAgIjw/IiwgICAgICAgICAgICAgICAgICAgKCksICAgICAgICAgICBjX2Jvb2wpLAorICAgIChweV9vYmplY3QsICAgICAgICAgICAgICAgICAiPE8iLCAgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIHB5X29iamVjdCksCiAKICAgICAjIyBwb2ludGVycwogCi0gICAgKFBPSU5URVIoY19ieXRlKSwgICAgICAgICAgICImPGIiLCAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBQT0lOVEVSKGNfYnl0ZSkpLAotICAgIChQT0lOVEVSKFBPSU5URVIoY19sb25nKSksICAiJiY8bCIsICAgICAgICAgICAgICAgICBOb25lLCAgICAgICAgICAgUE9JTlRFUihQT0lOVEVSKGNfbG9uZykpKSwKKyAgICAoUE9JTlRFUihjX2J5dGUpLCAgICAgICAgICAgIiY8YiIsICAgICAgICAgICAgICAgICAgKCksICAgICAgICAgICBQT0lOVEVSKGNfYnl0ZSkpLAorICAgIChQT0lOVEVSKFBPSU5URVIoY19sb25nKSksICAiJiY8bCIsICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIFBPSU5URVIoUE9JTlRFUihjX2xvbmcpKSksCiAKICAgICAjIyBhcnJheXMgYW5kIHBvaW50ZXJzCiAKQEAgLTE0NSwzMiArMTQ5LDMyIEBACiAgICAgKGNfZmxvYXQgKiA0ICogMyAqIDIsICAgICAgICIoMiwzLDQpPGYiLCAgICAgICAgICAgICgyLDMsNCksICAgICAgICBjX2Zsb2F0KSwKICAgICAoUE9JTlRFUihjX3Nob3J0KSAqIDIsICAgICAgIigyKSY8aCIsICAgICAgICAgICAgICAgKDIsKSwgICAgICAgICAgIFBPSU5URVIoY19zaG9ydCkpLAogICAgIChQT0lOVEVSKGNfc2hvcnQpICogMiAqIDMsICAiKDMsMikmPGgiLCAgICAgICAgICAgICAoMywyLCksICAgICAgICAgUE9JTlRFUihjX3Nob3J0KSksCi0gICAgKFBPSU5URVIoY19zaG9ydCAqIDIpLCAgICAgICImKDIpPGgiLCAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBQT0lOVEVSKGNfc2hvcnQpKSwKKyAgICAoUE9JTlRFUihjX3Nob3J0ICogMiksICAgICAgIiYoMik8aCIsICAgICAgICAgICAgICAgKCksICAgICAgICAgICBQT0lOVEVSKGNfc2hvcnQpKSwKIAogICAgICMjIHN0cnVjdHVyZXMgYW5kIHVuaW9ucwogCi0gICAgKFBvaW50LCAgICAgICAgICAgICAgICAgICAgICJUezxsOng6PGw6eTp9IiwgICAgICAgIE5vbmUsICAgICAgICAgICBQb2ludCksCisgICAgKFBvaW50LCAgICAgICAgICAgICAgICAgICAgICJUezxsOng6PGw6eTp9IiwgICAgICAgICgpLCAgICAgICAgICAgUG9pbnQpLAogICAgICMgcGFja2VkIHN0cnVjdHVyZXMgZG8gbm90IGltcGxlbWVudCB0aGUgcGVwCi0gICAgKFBhY2tlZFBvaW50LCAgICAgICAgICAgICAgICJCIiwgICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBQYWNrZWRQb2ludCksCi0gICAgKFBvaW50MiwgICAgICAgICAgICAgICAgICAgICJUezxsOng6PGw6eTp9IiwgICAgICAgIE5vbmUsICAgICAgICAgICBQb2ludDIpLAotICAgIChFbXB0eVN0cnVjdCwgICAgICAgICAgICAgICAiVHt9IiwgICAgICAgICAgICAgICAgICBOb25lLCAgICAgICAgICAgRW1wdHlTdHJ1Y3QpLAorICAgIChQYWNrZWRQb2ludCwgICAgICAgICAgICAgICAiQiIsICAgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIFBhY2tlZFBvaW50KSwKKyAgICAoUG9pbnQyLCAgICAgICAgICAgICAgICAgICAgIlR7PGw6eDo8bDp5On0iLCAgICAgICAgKCksICAgICAgICAgICBQb2ludDIpLAorICAgIChFbXB0eVN0cnVjdCwgICAgICAgICAgICAgICAiVHt9IiwgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIEVtcHR5U3RydWN0KSwKICAgICAjIHRoZSBwZXAgZG9lcyd0IHN1cHBvcnQgdW5pb25zCi0gICAgKGFVbmlvbiwgICAgICAgICAgICAgICAgICAgICJCIiwgICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBhVW5pb24pLAorICAgIChhVW5pb24sICAgICAgICAgICAgICAgICAgICAiQiIsICAgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIGFVbmlvbiksCiAKICAgICAjIyBwb2ludGVyIHRvIGluY29tcGxldGUgc3RydWN0dXJlCi0gICAgKEluY29tcGxldGUsICAgICAgICAgICAgICAgICJCIiwgICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBJbmNvbXBsZXRlKSwKLSAgICAoUE9JTlRFUihJbmNvbXBsZXRlKSwgICAgICAgIiZCIiwgICAgICAgICAgICAgICAgICAgTm9uZSwgICAgICAgICAgIFBPSU5URVIoSW5jb21wbGV0ZSkpLAorICAgIChJbmNvbXBsZXRlLCAgICAgICAgICAgICAgICAiQiIsICAgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIEluY29tcGxldGUpLAorICAgIChQT0lOVEVSKEluY29tcGxldGUpLCAgICAgICAiJkIiLCAgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIFBPSU5URVIoSW5jb21wbGV0ZSkpLAogCiAgICAgIyAnQ29tcGxldGUnIGlzIGEgc3RydWN0dXJlIHRoYXQgc3RhcnRzIGluY29tcGxldGUsIGJ1dCBpcyBjb21wbGV0ZWQgYWZ0ZXIgdGhlCiAgICAgIyBwb2ludGVyIHR5cGUgdG8gaXQgaGFzIGJlZW4gY3JlYXRlZC4KLSAgICAoQ29tcGxldGUsICAgICAgICAgICAgICAgICAgIlR7PGw6YTp9IiwgICAgICAgICAgICAgTm9uZSwgICAgICAgICAgIENvbXBsZXRlKSwKKyAgICAoQ29tcGxldGUsICAgICAgICAgICAgICAgICAgIlR7PGw6YTp9IiwgICAgICAgICAgICAgKCksICAgICAgICAgICBDb21wbGV0ZSksCiAgICAgIyBVbmZvcnR1bmF0ZWx5IHRoZSBwb2ludGVyIGZvcm1hdCBzdHJpbmcgaXMgbm90IGZpeGVkLi4uCi0gICAgKFBPSU5URVIoQ29tcGxldGUpLCAgICAgICAgICImQiIsICAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBQT0lOVEVSKENvbXBsZXRlKSksCisgICAgKFBPSU5URVIoQ29tcGxldGUpLCAgICAgICAgICImQiIsICAgICAgICAgICAgICAgICAgICgpLCAgICAgICAgICAgUE9JTlRFUihDb21wbGV0ZSkpLAogCiAgICAgIyMgb3RoZXIKIAogICAgICMgZnVuY3Rpb24gc2lnbmF0dXJlcyBhcmUgbm90IGltcGxlbWVudGVkCi0gICAgKENGVU5DVFlQRShOb25lKSwgICAgICAgICAgICJYe30iLCAgICAgICAgICAgICAgICAgIE5vbmUsICAgICAgICAgICBDRlVOQ1RZUEUoTm9uZSkpLAorICAgIChDRlVOQ1RZUEUoTm9uZSksICAgICAgICAgICAiWHt9IiwgICAgICAgICAgICAgICAgICAoKSwgICAgICAgICAgIENGVU5DVFlQRShOb25lKSksCiAKICAgICBdCiAKQEAgLTE4NiwxMCArMTkwLDEwIEBACiAjIGFuZCBsaXR0bGUgZW5kaWFuIG1hY2hpbmVzLgogIwogZW5kaWFuX3R5cGVzID0gWwotICAgIChCRVBvaW50LCAgICAgICAgICAgICAgICAgICAiVHs+bDp4Oj5sOnk6fSIsICAgICAgICBOb25lLCAgICAgICAgICAgQkVQb2ludCksCi0gICAgKExFUG9pbnQsICAgICAgICAgICAgICAgICAgICJUezxsOng6PGw6eTp9IiwgICAgICAgIE5vbmUsICAgICAgICAgICBMRVBvaW50KSwKLSAgICAoUE9JTlRFUihCRVBvaW50KSwgICAgICAgICAgIiZUez5sOng6Pmw6eTp9IiwgICAgICAgTm9uZSwgICAgICAgICAgIFBPSU5URVIoQkVQb2ludCkpLAotICAgIChQT0lOVEVSKExFUG9pbnQpLCAgICAgICAgICAiJlR7PGw6eDo8bDp5On0iLCAgICAgICBOb25lLCAgICAgICAgICAgUE9JTlRFUihMRVBvaW50KSksCisgICAgKEJFUG9pbnQsICAgICAgICAgICAgICAgICAgICJUez5sOng6Pmw6eTp9IiwgICAgICAgICgpLCAgICAgICAgICAgQkVQb2ludCksCisgICAgKExFUG9pbnQsICAgICAgICAgICAgICAgICAgICJUezxsOng6PGw6eTp9IiwgICAgICAgICgpLCAgICAgICAgICAgTEVQb2ludCksCisgICAgKFBPSU5URVIoQkVQb2ludCksICAgICAgICAgICImVHs+bDp4Oj5sOnk6fSIsICAgICAgICgpLCAgICAgICAgICAgUE9JTlRFUihCRVBvaW50KSksCisgICAgKFBPSU5URVIoTEVQb2ludCksICAgICAgICAgICImVHs8bDp4OjxsOnk6fSIsICAgICAgICgpLCAgICAgICAgICAgUE9JTlRFUihMRVBvaW50KSksCiAgICAgXQogCiBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgpkaWZmIC0tZ2l0IGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcHl0aG9uX2FwaS5weSBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3B5dGhvbl9hcGkucHkKaW5kZXggMWY0YzYwMy4uOWRlMzk4MCAxMDA2NDQKLS0tIGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcHl0aG9uX2FwaS5weQorKysgYi9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9weXRob25fYXBpLnB5CkBAIC0xLDUgKzEsNiBAQAogZnJvbSBjdHlwZXMgaW1wb3J0ICoKIGltcG9ydCB1bml0dGVzdCwgc3lzCitmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGZyb20gY3R5cGVzLnRlc3QgaW1wb3J0IGlzX3Jlc291cmNlX2VuYWJsZWQKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpAQCAtMjUsNiArMjYsNyBAQAogCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShiImFiY2RlZmdoaSIsIDMpLCBiImFiYyIpCiAKKyAgICBAc3VwcG9ydC5yZWZjb3VudF90ZXN0CiAgICAgZGVmIHRlc3RfUHlTdHJpbmdfRnJvbVN0cmluZyhzZWxmKToKICAgICAgICAgcHl0aG9uYXBpLlB5Qnl0ZXNfRnJvbVN0cmluZy5yZXN0eXBlID0gcHlfb2JqZWN0CiAgICAgICAgIHB5dGhvbmFwaS5QeUJ5dGVzX0Zyb21TdHJpbmcuYXJndHlwZXMgPSAoY19jaGFyX3AsKQpAQCAtNTYsNiArNTgsNyBAQAogICAgICAgICAgICAgZGVsIHJlcwogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChncmMoNDIpLCByZWY0MikKIAorICAgIEBzdXBwb3J0LnJlZmNvdW50X3Rlc3QKICAgICBkZWYgdGVzdF9QeU9ial9Gcm9tUHRyKHNlbGYpOgogICAgICAgICBzID0gImFiYyBkZWYgZ2hpIGprbCIKICAgICAgICAgcmVmID0gZ3JjKHMpCmRpZmYgLS1naXQgYS9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9yZWZjb3VudHMucHkgYi9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9yZWZjb3VudHMucHkKaW5kZXggMzVhODFhYS4uNTYxM2U3YSAxMDA2NDQKLS0tIGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcmVmY291bnRzLnB5CisrKyBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3JlZmNvdW50cy5weQpAQCAtMSw0ICsxLDUgQEAKIGltcG9ydCB1bml0dGVzdAorZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiBpbXBvcnQgY3R5cGVzCiBpbXBvcnQgZ2MKIApAQCAtMTAsNiArMTEsNyBAQAogCiBjbGFzcyBSZWZjb3VudFRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKIAorICAgIEBzdXBwb3J0LnJlZmNvdW50X3Rlc3QKICAgICBkZWYgdGVzdF8xKHNlbGYpOgogICAgICAgICBmcm9tIHN5cyBpbXBvcnQgZ2V0cmVmY291bnQgYXMgZ3JjCiAKQEAgLTM0LDYgKzM2LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChncmMoY2FsbGJhY2spLCAyKQogCiAKKyAgICBAc3VwcG9ydC5yZWZjb3VudF90ZXN0CiAgICAgZGVmIHRlc3RfcmVmY291bnQoc2VsZik6CiAgICAgICAgIGZyb20gc3lzIGltcG9ydCBnZXRyZWZjb3VudCBhcyBncmMKICAgICAgICAgZGVmIGZ1bmMoKmFyZ3MpOgpkaWZmIC0tZ2l0IGEvTGliL2N0eXBlcy90ZXN0L3Rlc3Rfc3RyaW5ncHRyLnB5IGIvTGliL2N0eXBlcy90ZXN0L3Rlc3Rfc3RyaW5ncHRyLnB5CmluZGV4IDNkMjVmYTUuLjk1Y2QxNjEgMTAwNjQ0Ci0tLSBhL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3N0cmluZ3B0ci5weQorKysgYi9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9zdHJpbmdwdHIucHkKQEAgLTEsNCArMSw1IEBACiBpbXBvcnQgdW5pdHRlc3QKK2Zyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogZnJvbSBjdHlwZXMgaW1wb3J0ICoKIAogaW1wb3J0IF9jdHlwZXNfdGVzdApAQCAtNyw2ICs4LDcgQEAKIAogY2xhc3MgU3RyaW5nUHRyVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgogCisgICAgQHN1cHBvcnQucmVmY291bnRfdGVzdAogICAgIGRlZiB0ZXN0X19QT0lOVEVSX2NfY2hhcihzZWxmKToKICAgICAgICAgY2xhc3MgWChTdHJ1Y3R1cmUpOgogICAgICAgICAgICAgX2ZpZWxkc18gPSBbKCJzdHIiLCBQT0lOVEVSKGNfY2hhcikpXQpkaWZmIC0tZ2l0IGEvTGliL2N0eXBlcy91dGlsLnB5IGIvTGliL2N0eXBlcy91dGlsLnB5CmluZGV4IDFiYjdkMWQuLjk3ZDBjMmYgMTAwNjQ0Ci0tLSBhL0xpYi9jdHlwZXMvdXRpbC5weQorKysgYi9MaWIvY3R5cGVzL3V0aWwucHkKQEAgLTEsNSArMSw2IEBACiBpbXBvcnQgc3lzLCBvcwogaW1wb3J0IGNvbnRleHRsaWIKK2ltcG9ydCBzdWJwcm9jZXNzCiAKICMgZmluZF9saWJyYXJ5KG5hbWUpIHJldHVybnMgdGhlIHBhdGhuYW1lIG9mIGEgbGlicmFyeSwgb3IgTm9uZS4KIGlmIG9zLm5hbWUgPT0gIm50IjoKQEAgLTEzNiwxNiArMTM3LDEyIEBACiAgICAgICAgICAgICBydiA9IGYuY2xvc2UoKQogICAgICAgICAgICAgaWYgcnYgPT0gMTA6CiAgICAgICAgICAgICAgICAgcmFpc2UgT1NFcnJvcignb2JqZHVtcCBjb21tYW5kIG5vdCBmb3VuZCcpCi0gICAgICAgICAgICB3aXRoIGNvbnRleHRsaWIuY2xvc2luZyhvcy5wb3BlbihjbWQpKSBhcyBmOgotICAgICAgICAgICAgICAgIGRhdGEgPSBmLnJlYWQoKQotICAgICAgICAgICAgcmVzID0gcmUuc2VhcmNoKHInXHNTT05BTUVccysoW15cc10rKScsIGRhdGEpCisgICAgICAgICAgICByZXMgPSByZS5zZWFyY2gocidcc1NPTkFNRVxzKyhbXlxzXSspJywgZHVtcCkKICAgICAgICAgICAgIGlmIG5vdCByZXM6CiAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKICAgICAgICAgICAgIHJldHVybiByZXMuZ3JvdXAoMSkKIAotICAgIGlmIChzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgiZnJlZWJzZCIpCi0gICAgICAgIG9yIHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCJvcGVuYnNkIikKLSAgICAgICAgb3Igc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoImRyYWdvbmZseSIpKToKKyAgICBpZiBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgoImZyZWVic2QiLCAib3BlbmJzZCIsICJkcmFnb25mbHkiKSk6CiAKICAgICAgICAgZGVmIF9udW1fdmVyc2lvbihsaWJuYW1lKToKICAgICAgICAgICAgICMgImxpYnh5ei5zby5NQUpPUi5NSU5PUiIgPT4gWyBNQUpPUiwgTUlOT1IgXQpAQCAtMTg3LDEzICsxODQsMTkgQEAKICAgICAgICAgICAgIGFiaV90eXBlID0gbWFjaF9tYXAuZ2V0KG1hY2hpbmUsICdsaWJjNicpCiAKICAgICAgICAgICAgICMgWFhYIGFzc3VtaW5nIEdMSUJDJ3MgbGRjb25maWcgKHdpdGggb3B0aW9uIC1wKQotICAgICAgICAgICAgZXhwciA9IHInXHMrKGxpYiVzXC5bXlxzXSspXHMrXCglcycgJSAocmUuZXNjYXBlKG5hbWUpLCBhYmlfdHlwZSkKLSAgICAgICAgICAgIHdpdGggY29udGV4dGxpYi5jbG9zaW5nKG9zLnBvcGVuKCdMQ19BTEw9QyBMQU5HPUMgL3NiaW4vbGRjb25maWcgLXAgMj4vZGV2L251bGwnKSkgYXMgZjoKLSAgICAgICAgICAgICAgICBkYXRhID0gZi5yZWFkKCkKLSAgICAgICAgICAgIHJlcyA9IHJlLnNlYXJjaChleHByLCBkYXRhKQotICAgICAgICAgICAgaWYgbm90IHJlczoKLSAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQotICAgICAgICAgICAgcmV0dXJuIHJlcy5ncm91cCgxKQorICAgICAgICAgICAgcmVnZXggPSBvcy5mc2VuY29kZSgKKyAgICAgICAgICAgICAgICAnXHMrKGxpYiVzXC5bXlxzXSspXHMrXCglcycgJSAocmUuZXNjYXBlKG5hbWUpLCBhYmlfdHlwZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgd2l0aCBzdWJwcm9jZXNzLlBvcGVuKFsnL3NiaW4vbGRjb25maWcnLCAnLXAnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkaW49c3VicHJvY2Vzcy5ERVZOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRlcnI9c3VicHJvY2Vzcy5ERVZOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnY9eydMQ19BTEwnOiAnQycsICdMQU5HJzogJ0MnfSkgYXMgcDoKKyAgICAgICAgICAgICAgICAgICAgcmVzID0gcmUuc2VhcmNoKHJlZ2V4LCBwLnN0ZG91dC5yZWFkKCkpCisgICAgICAgICAgICAgICAgICAgIGlmIHJlczoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvcy5mc2RlY29kZShyZXMuZ3JvdXAoMSkpCisgICAgICAgICAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCiAKICAgICAgICAgZGVmIGZpbmRfbGlicmFyeShuYW1lKToKICAgICAgICAgICAgIHJldHVybiBfZmluZFNvbmFtZV9sZGNvbmZpZyhuYW1lKSBvciBfZ2V0X3NvbmFtZShfZmluZExpYl9nY2MobmFtZSkpCmRpZmYgLS1naXQgYS9MaWIvY3Vyc2VzL19faW5pdF9fLnB5IGIvTGliL2N1cnNlcy9fX2luaXRfXy5weQppbmRleCBhM2U5ZGVmLi43YmZhNjY3IDEwMDY0NAotLS0gYS9MaWIvY3Vyc2VzL19faW5pdF9fLnB5CisrKyBiL0xpYi9jdXJzZXMvX19pbml0X18ucHkKQEAgLTExLDcgKzExLDYgQEAKICIiIgogCiBmcm9tIF9jdXJzZXMgaW1wb3J0ICoKLWZyb20gY3Vyc2VzLndyYXBwZXIgaW1wb3J0IHdyYXBwZXIKIGltcG9ydCBvcyBhcyBfb3MKIGltcG9ydCBzeXMgYXMgX3N5cwogCkBAIC01NSwzICs1NCw0OCBAQAogICAgIGhhc19rZXkKIGV4Y2VwdCBOYW1lRXJyb3I6CiAgICAgZnJvbSAuaGFzX2tleSBpbXBvcnQgaGFzX2tleQorCisjIFdyYXBwZXIgZm9yIHRoZSBlbnRpcmUgY3Vyc2VzLWJhc2VkIGFwcGxpY2F0aW9uLiAgUnVucyBhIGZ1bmN0aW9uIHdoaWNoCisjIHNob3VsZCBiZSB0aGUgcmVzdCBvZiB5b3VyIGN1cnNlcy1iYXNlZCBhcHBsaWNhdGlvbi4gIElmIHRoZSBhcHBsaWNhdGlvbgorIyByYWlzZXMgYW4gZXhjZXB0aW9uLCB3cmFwcGVyKCkgd2lsbCByZXN0b3JlIHRoZSB0ZXJtaW5hbCB0byBhIHNhbmUgc3RhdGUgc28KKyMgeW91IGNhbiByZWFkIHRoZSByZXN1bHRpbmcgdHJhY2ViYWNrLgorCitkZWYgd3JhcHBlcihmdW5jLCAqYXJncywgKiprd2RzKToKKyAgICAiIiJXcmFwcGVyIGZ1bmN0aW9uIHRoYXQgaW5pdGlhbGl6ZXMgY3Vyc2VzIGFuZCBjYWxscyBhbm90aGVyIGZ1bmN0aW9uLAorICAgIHJlc3RvcmluZyBub3JtYWwga2V5Ym9hcmQvc2NyZWVuIGJlaGF2aW9yIG9uIGVycm9yLgorICAgIFRoZSBjYWxsYWJsZSBvYmplY3QgJ2Z1bmMnIGlzIHRoZW4gcGFzc2VkIHRoZSBtYWluIHdpbmRvdyAnc3Rkc2NyJworICAgIGFzIGl0cyBmaXJzdCBhcmd1bWVudCwgZm9sbG93ZWQgYnkgYW55IG90aGVyIGFyZ3VtZW50cyBwYXNzZWQgdG8KKyAgICB3cmFwcGVyKCkuCisgICAgIiIiCisKKyAgICB0cnk6CisgICAgICAgICMgSW5pdGlhbGl6ZSBjdXJzZXMKKyAgICAgICAgc3Rkc2NyID0gaW5pdHNjcigpCisKKyAgICAgICAgIyBUdXJuIG9mZiBlY2hvaW5nIG9mIGtleXMsIGFuZCBlbnRlciBjYnJlYWsgbW9kZSwKKyAgICAgICAgIyB3aGVyZSBubyBidWZmZXJpbmcgaXMgcGVyZm9ybWVkIG9uIGtleWJvYXJkIGlucHV0CisgICAgICAgIG5vZWNobygpCisgICAgICAgIGNicmVhaygpCisKKyAgICAgICAgIyBJbiBrZXlwYWQgbW9kZSwgZXNjYXBlIHNlcXVlbmNlcyBmb3Igc3BlY2lhbCBrZXlzCisgICAgICAgICMgKGxpa2UgdGhlIGN1cnNvciBrZXlzKSB3aWxsIGJlIGludGVycHJldGVkIGFuZAorICAgICAgICAjIGEgc3BlY2lhbCB2YWx1ZSBsaWtlIGN1cnNlcy5LRVlfTEVGVCB3aWxsIGJlIHJldHVybmVkCisgICAgICAgIHN0ZHNjci5rZXlwYWQoMSkKKworICAgICAgICAjIFN0YXJ0IGNvbG9yLCB0b28uICBIYXJtbGVzcyBpZiB0aGUgdGVybWluYWwgZG9lc24ndCBoYXZlCisgICAgICAgICMgY29sb3I7IHVzZXIgY2FuIHRlc3Qgd2l0aCBoYXNfY29sb3IoKSBsYXRlciBvbi4gIFRoZSB0cnkvY2F0Y2gKKyAgICAgICAgIyB3b3JrcyBhcm91bmQgYSBtaW5vciBiaXQgb2Ygb3Zlci1jb25zY2llbnRpb3VzbmVzcyBpbiB0aGUgY3Vyc2VzCisgICAgICAgICMgbW9kdWxlIC0tIHRoZSBlcnJvciByZXR1cm4gZnJvbSBDIHN0YXJ0X2NvbG9yKCkgaXMgaWdub3JhYmxlLgorICAgICAgICB0cnk6CisgICAgICAgICAgICBzdGFydF9jb2xvcigpCisgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgIHBhc3MKKworICAgICAgICByZXR1cm4gZnVuYyhzdGRzY3IsICphcmdzLCAqKmt3ZHMpCisgICAgZmluYWxseToKKyAgICAgICAgIyBTZXQgZXZlcnl0aGluZyBiYWNrIHRvIG5vcm1hbAorICAgICAgICBpZiAnc3Rkc2NyJyBpbiBsb2NhbHMoKToKKyAgICAgICAgICAgIHN0ZHNjci5rZXlwYWQoMCkKKyAgICAgICAgICAgIGVjaG8oKQorICAgICAgICAgICAgbm9jYnJlYWsoKQorICAgICAgICAgICAgZW5kd2luKCkKZGlmZiAtLWdpdCBhL0xpYi9jdXJzZXMvd3JhcHBlci5weSBiL0xpYi9jdXJzZXMvd3JhcHBlci5weQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTE4M2NlNy4uMDAwMDAwMAotLS0gYS9MaWIvY3Vyc2VzL3dyYXBwZXIucHkKKysrIC9kZXYvbnVsbApAQCAtMSw1MCArMCwwIEBACi0iIiJjdXJzZXMud3JhcHBlcgotCi1Db250YWlucyBvbmUgZnVuY3Rpb24sIHdyYXBwZXIoKSwgd2hpY2ggcnVucyBhbm90aGVyIGZ1bmN0aW9uIHdoaWNoCi1zaG91bGQgYmUgdGhlIHJlc3Qgb2YgeW91ciBjdXJzZXMtYmFzZWQgYXBwbGljYXRpb24uICBJZiB0aGUKLWFwcGxpY2F0aW9uIHJhaXNlcyBhbiBleGNlcHRpb24sIHdyYXBwZXIoKSB3aWxsIHJlc3RvcmUgdGhlIHRlcm1pbmFsCi10byBhIHNhbmUgc3RhdGUgc28geW91IGNhbiByZWFkIHRoZSByZXN1bHRpbmcgdHJhY2ViYWNrLgotCi0iIiIKLQotaW1wb3J0IGN1cnNlcwotCi1kZWYgd3JhcHBlcihmdW5jLCAqYXJncywgKiprd2RzKToKLSAgICAiIiJXcmFwcGVyIGZ1bmN0aW9uIHRoYXQgaW5pdGlhbGl6ZXMgY3Vyc2VzIGFuZCBjYWxscyBhbm90aGVyIGZ1bmN0aW9uLAotICAgIHJlc3RvcmluZyBub3JtYWwga2V5Ym9hcmQvc2NyZWVuIGJlaGF2aW9yIG9uIGVycm9yLgotICAgIFRoZSBjYWxsYWJsZSBvYmplY3QgJ2Z1bmMnIGlzIHRoZW4gcGFzc2VkIHRoZSBtYWluIHdpbmRvdyAnc3Rkc2NyJwotICAgIGFzIGl0cyBmaXJzdCBhcmd1bWVudCwgZm9sbG93ZWQgYnkgYW55IG90aGVyIGFyZ3VtZW50cyBwYXNzZWQgdG8KLSAgICB3cmFwcGVyKCkuCi0gICAgIiIiCi0KLSAgICB0cnk6Ci0gICAgICAgICMgSW5pdGlhbGl6ZSBjdXJzZXMKLSAgICAgICAgc3Rkc2NyID0gY3Vyc2VzLmluaXRzY3IoKQotCi0gICAgICAgICMgVHVybiBvZmYgZWNob2luZyBvZiBrZXlzLCBhbmQgZW50ZXIgY2JyZWFrIG1vZGUsCi0gICAgICAgICMgd2hlcmUgbm8gYnVmZmVyaW5nIGlzIHBlcmZvcm1lZCBvbiBrZXlib2FyZCBpbnB1dAotICAgICAgICBjdXJzZXMubm9lY2hvKCkKLSAgICAgICAgY3Vyc2VzLmNicmVhaygpCi0KLSAgICAgICAgIyBJbiBrZXlwYWQgbW9kZSwgZXNjYXBlIHNlcXVlbmNlcyBmb3Igc3BlY2lhbCBrZXlzCi0gICAgICAgICMgKGxpa2UgdGhlIGN1cnNvciBrZXlzKSB3aWxsIGJlIGludGVycHJldGVkIGFuZAotICAgICAgICAjIGEgc3BlY2lhbCB2YWx1ZSBsaWtlIGN1cnNlcy5LRVlfTEVGVCB3aWxsIGJlIHJldHVybmVkCi0gICAgICAgIHN0ZHNjci5rZXlwYWQoMSkKLQotICAgICAgICAjIFN0YXJ0IGNvbG9yLCB0b28uICBIYXJtbGVzcyBpZiB0aGUgdGVybWluYWwgZG9lc24ndCBoYXZlCi0gICAgICAgICMgY29sb3I7IHVzZXIgY2FuIHRlc3Qgd2l0aCBoYXNfY29sb3IoKSBsYXRlciBvbi4gIFRoZSB0cnkvY2F0Y2gKLSAgICAgICAgIyB3b3JrcyBhcm91bmQgYSBtaW5vciBiaXQgb2Ygb3Zlci1jb25zY2llbnRpb3VzbmVzcyBpbiB0aGUgY3Vyc2VzCi0gICAgICAgICMgbW9kdWxlIC0tIHRoZSBlcnJvciByZXR1cm4gZnJvbSBDIHN0YXJ0X2NvbG9yKCkgaXMgaWdub3JhYmxlLgotICAgICAgICB0cnk6Ci0gICAgICAgICAgICBjdXJzZXMuc3RhcnRfY29sb3IoKQotICAgICAgICBleGNlcHQ6Ci0gICAgICAgICAgICBwYXNzCi0KLSAgICAgICAgcmV0dXJuIGZ1bmMoc3Rkc2NyLCAqYXJncywgKiprd2RzKQotICAgIGZpbmFsbHk6Ci0gICAgICAgICMgU2V0IGV2ZXJ5dGhpbmcgYmFjayB0byBub3JtYWwKLSAgICAgICAgaWYgJ3N0ZHNjcicgaW4gbG9jYWxzKCk6Ci0gICAgICAgICAgICBzdGRzY3Iua2V5cGFkKDApCi0gICAgICAgICAgICBjdXJzZXMuZWNobygpCi0gICAgICAgICAgICBjdXJzZXMubm9jYnJlYWsoKQotICAgICAgICAgICAgY3Vyc2VzLmVuZHdpbigpCmRpZmYgLS1naXQgYS9MaWIvZGF0ZXRpbWUucHkgYi9MaWIvZGF0ZXRpbWUucHkKaW5kZXggNjVmOTVkMi4uYzVlZWNhNCAxMDA2NDQKLS0tIGEvTGliL2RhdGV0aW1lLnB5CisrKyBiL0xpYi9kYXRldGltZS5weQpAQCAtMTcyLDEwICsxNzIsNiBAQAogCiAjIENvcnJlY3RseSBzdWJzdGl0dXRlIGZvciAleiBhbmQgJVogZXNjYXBlcyBpbiBzdHJmdGltZSBmb3JtYXRzLgogZGVmIF93cmFwX3N0cmZ0aW1lKG9iamVjdCwgZm9ybWF0LCB0aW1ldHVwbGUpOgotICAgIHllYXIgPSB0aW1ldHVwbGVbMF0KLSAgICBpZiB5ZWFyIDwgMTAwMDoKLSAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigieWVhcj0lZCBpcyBiZWZvcmUgMTAwMDsgdGhlIGRhdGV0aW1lIHN0cmZ0aW1lKCkgIgotICAgICAgICAgICAgICAgICAgICAgICAgICJtZXRob2RzIHJlcXVpcmUgeWVhciA+PSAxMDAwIiAlIHllYXIpCiAgICAgIyBEb24ndCBjYWxsIHV0Y29mZnNldCgpIG9yIHR6bmFtZSgpIHVubGVzcyBhY3R1YWxseSBuZWVkZWQuCiAgICAgZnJlcGxhY2UgPSBOb25lICMgdGhlIHN0cmluZyB0byB1c2UgZm9yICVmCiAgICAgenJlcGxhY2UgPSBOb25lICMgdGhlIHN0cmluZyB0byB1c2UgZm9yICV6CmRpZmYgLS1naXQgYS9MaWIvZGVjaW1hbC5weSBiL0xpYi9kZWNpbWFsLnB5CmluZGV4IGY1Mjc3YzUuLmU5NDYxODIgMTAwNjQ0Ci0tLSBhL0xpYi9kZWNpbWFsLnB5CisrKyBiL0xpYi9kZWNpbWFsLnB5CkBAIC0xODcxLDYgKzE4NzEsNyBAQAogICAgICAgICAiIiIKIAogICAgICAgICBvdGhlciA9IF9jb252ZXJ0X290aGVyKG90aGVyLCByYWlzZWl0PVRydWUpCisgICAgICAgIHRoaXJkID0gX2NvbnZlcnRfb3RoZXIodGhpcmQsIHJhaXNlaXQ9VHJ1ZSkKIAogICAgICAgICAjIGNvbXB1dGUgcHJvZHVjdDsgcmFpc2UgSW52YWxpZE9wZXJhdGlvbiBpZiBlaXRoZXIgb3BlcmFuZCBpcwogICAgICAgICAjIGEgc2lnbmFsaW5nIE5hTiBvciBpZiB0aGUgcHJvZHVjdCBpcyB6ZXJvIHRpbWVzIGluZmluaXR5LgpAQCAtMTkwMCw3ICsxOTAxLDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cihpbnQoc2VsZi5faW50KSAqIGludChvdGhlci5faW50KSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9leHAgKyBvdGhlci5fZXhwKQogCi0gICAgICAgIHRoaXJkID0gX2NvbnZlcnRfb3RoZXIodGhpcmQsIHJhaXNlaXQ9VHJ1ZSkKICAgICAgICAgcmV0dXJuIHByb2R1Y3QuX19hZGRfXyh0aGlyZCwgY29udGV4dCkKIAogICAgIGRlZiBfcG93ZXJfbW9kdWxvKHNlbGYsIG90aGVyLCBtb2R1bG8sIGNvbnRleHQ9Tm9uZSk6CkBAIC0yMDAxLDkgKzIwMDEsOSBAQAogICAgICAgICBub256ZXJvLiAgRm9yIGVmZmljaWVuY3ksIG90aGVyLl9leHAgc2hvdWxkIG5vdCBiZSB0b28gbGFyZ2UsCiAgICAgICAgIHNvIHRoYXQgMTAqKmFicyhvdGhlci5fZXhwKSBpcyBhIGZlYXNpYmxlIGNhbGN1bGF0aW9uLiIiIgogCi0gICAgICAgICMgSW4gdGhlIGNvbW1lbnRzIGJlbG93LCB3ZSB3cml0ZSB4IGZvciB0aGUgdmFsdWUgb2Ygc2VsZiBhbmQKLSAgICAgICAgIyB5IGZvciB0aGUgdmFsdWUgb2Ygb3RoZXIuICBXcml0ZSB4ID0geGMqMTAqKnhlIGFuZCB5ID0KLSAgICAgICAgIyB5YyoxMCoqeWUuCisgICAgICAgICMgSW4gdGhlIGNvbW1lbnRzIGJlbG93LCB3ZSB3cml0ZSB4IGZvciB0aGUgdmFsdWUgb2Ygc2VsZiBhbmQgeSBmb3IgdGhlCisgICAgICAgICMgdmFsdWUgb2Ygb3RoZXIuICBXcml0ZSB4ID0geGMqMTAqKnhlIGFuZCBhYnMoeSkgPSB5YyoxMCoqeWUsIHdpdGggeGMKKyAgICAgICAgIyBhbmQgeWMgcG9zaXRpdmUgaW50ZWdlcnMgbm90IGRpdmlzaWJsZSBieSAxMC4KIAogICAgICAgICAjIFRoZSBtYWluIHB1cnBvc2Ugb2YgdGhpcyBtZXRob2QgaXMgdG8gaWRlbnRpZnkgdGhlICpmYWlsdXJlKgogICAgICAgICAjIG9mIHgqKnkgdG8gYmUgZXhhY3RseSByZXByZXNlbnRhYmxlIHdpdGggYXMgbGl0dGxlIGVmZm9ydCBhcwpAQCAtMjAxMSwxMyArMjAxMSwxMiBAQAogICAgICAgICAjIGVsaW1pbmF0ZSB0aGUgcG9zc2liaWxpdHkgb2YgeCoqeSBiZWluZyBleGFjdC4gIE9ubHkgaWYgYWxsCiAgICAgICAgICMgdGhlc2UgdGVzdHMgYXJlIHBhc3NlZCBkbyB3ZSBnbyBvbiB0byBhY3R1YWxseSBjb21wdXRlIHgqKnkuCiAKLSAgICAgICAgIyBIZXJlJ3MgdGhlIG1haW4gaWRlYS4gIEZpcnN0IG5vcm1hbGl6ZSBib3RoIHggYW5kIHkuICBXZQotICAgICAgICAjIGV4cHJlc3MgeSBhcyBhIHJhdGlvbmFsIG0vbiwgd2l0aCBtIGFuZCBuIHJlbGF0aXZlbHkgcHJpbWUKLSAgICAgICAgIyBhbmQgbj4wLiAgVGhlbiBmb3IgeCoqeSB0byBiZSBleGFjdGx5IHJlcHJlc2VudGFibGUgKGF0Ci0gICAgICAgICMgKmFueSogcHJlY2lzaW9uKSwgeGMgbXVzdCBiZSB0aGUgbnRoIHBvd2VyIG9mIGEgcG9zaXRpdmUKLSAgICAgICAgIyBpbnRlZ2VyIGFuZCB4ZSBtdXN0IGJlIGRpdmlzaWJsZSBieSBuLiAgSWYgbSBpcyBuZWdhdGl2ZQotICAgICAgICAjIHRoZW4gYWRkaXRpb25hbGx5IHhjIG11c3QgYmUgYSBwb3dlciBvZiBlaXRoZXIgMiBvciA1LCBoZW5jZQotICAgICAgICAjIGEgcG93ZXIgb2YgMioqbiBvciA1KipuLgorICAgICAgICAjIEhlcmUncyB0aGUgbWFpbiBpZGVhLiAgRXhwcmVzcyB5IGFzIGEgcmF0aW9uYWwgbnVtYmVyIG0vbiwgd2l0aCBtIGFuZAorICAgICAgICAjIG4gcmVsYXRpdmVseSBwcmltZSBhbmQgbj4wLiAgVGhlbiBmb3IgeCoqeSB0byBiZSBleGFjdGx5CisgICAgICAgICMgcmVwcmVzZW50YWJsZSAoYXQgKmFueSogcHJlY2lzaW9uKSwgeGMgbXVzdCBiZSB0aGUgbnRoIHBvd2VyIG9mIGEKKyAgICAgICAgIyBwb3NpdGl2ZSBpbnRlZ2VyIGFuZCB4ZSBtdXN0IGJlIGRpdmlzaWJsZSBieSBuLiAgSWYgeSBpcyBuZWdhdGl2ZQorICAgICAgICAjIHRoZW4gYWRkaXRpb25hbGx5IHhjIG11c3QgYmUgYSBwb3dlciBvZiBlaXRoZXIgMiBvciA1LCBoZW5jZSBhIHBvd2VyCisgICAgICAgICMgb2YgMioqbiBvciA1KipuLgogICAgICAgICAjCiAgICAgICAgICMgVGhlcmUncyBhIGxpbWl0IHRvIGhvdyBzbWFsbCB8eXwgY2FuIGJlOiBpZiB5PW0vbiBhcyBhYm92ZQogICAgICAgICAjIHRoZW46CkBAIC0yMDg5LDIxICsyMDg4LDQzIEBACiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCiAgICAgICAgICAgICAgICAgIyBub3cgeGMgaXMgYSBwb3dlciBvZiAyOyBlIGlzIGl0cyBleHBvbmVudAogICAgICAgICAgICAgICAgIGUgPSBfbmJpdHMoeGMpLTEKLSAgICAgICAgICAgICAgICAjIGZpbmQgZSp5IGFuZCB4ZSp5OyBib3RoIG11c3QgYmUgaW50ZWdlcnMKLSAgICAgICAgICAgICAgICBpZiB5ZSA+PSAwOgotICAgICAgICAgICAgICAgICAgICB5X2FzX2ludCA9IHljKjEwKip5ZQotICAgICAgICAgICAgICAgICAgICBlID0gZSp5X2FzX2ludAotICAgICAgICAgICAgICAgICAgICB4ZSA9IHhlKnlfYXNfaW50Ci0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgdGVuX3BvdyA9IDEwKioteWUKLSAgICAgICAgICAgICAgICAgICAgZSwgcmVtYWluZGVyID0gZGl2bW9kKGUqeWMsIHRlbl9wb3cpCi0gICAgICAgICAgICAgICAgICAgIGlmIHJlbWFpbmRlcjoKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCi0gICAgICAgICAgICAgICAgICAgIHhlLCByZW1haW5kZXIgPSBkaXZtb2QoeGUqeWMsIHRlbl9wb3cpCi0gICAgICAgICAgICAgICAgICAgIGlmIHJlbWFpbmRlcjoKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICAgICAgICAgICAgICBpZiBlKjY1ID49IHAqOTM6ICMgOTMvNjUgPiBsb2coMTApL2xvZyg1KQorICAgICAgICAgICAgICAgICMgV2Ugbm93IGhhdmU6CisgICAgICAgICAgICAgICAgIworICAgICAgICAgICAgICAgICMgICB4ID0gMioqZSAqIDEwKip4ZSwgZSA+IDAsIGFuZCB5IDwgMC4KKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyBUaGUgZXhhY3QgcmVzdWx0IGlzOgorICAgICAgICAgICAgICAgICMKKyAgICAgICAgICAgICAgICAjICAgeCoqeSA9IDUqKigtZSp5KSAqIDEwKiooZSp5ICsgeGUqeSkKKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyBwcm92aWRlZCB0aGF0IGJvdGggZSp5IGFuZCB4ZSp5IGFyZSBpbnRlZ2Vycy4gIE5vdGUgdGhhdCBpZgorICAgICAgICAgICAgICAgICMgNSoqKC1lKnkpID49IDEwKipwLCB0aGVuIHRoZSByZXN1bHQgY2FuJ3QgYmUgZXhwcmVzc2VkCisgICAgICAgICAgICAgICAgIyBleGFjdGx5IHdpdGggcCBkaWdpdHMgb2YgcHJlY2lzaW9uLgorICAgICAgICAgICAgICAgICMKKyAgICAgICAgICAgICAgICAjIFVzaW5nIHRoZSBhYm92ZSwgd2UgY2FuIGd1YXJkIGFnYWluc3QgbGFyZ2UgdmFsdWVzIG9mIHllLgorICAgICAgICAgICAgICAgICMgOTMvNjUgaXMgYW4gdXBwZXIgYm91bmQgZm9yIGxvZygxMCkvbG9nKDUpLCBzbyBpZgorICAgICAgICAgICAgICAgICMKKyAgICAgICAgICAgICAgICAjICAgeWUgPj0gbGVuKHN0cig5MypwLy82NSkpCisgICAgICAgICAgICAgICAgIworICAgICAgICAgICAgICAgICMgdGhlbgorICAgICAgICAgICAgICAgICMKKyAgICAgICAgICAgICAgICAjICAgLWUqeSA+PSAteSA+PSAxMCoqeWUgPiA5MypwLzY1ID4gcCpsb2coMTApL2xvZyg1KSwKKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyBzbyA1KiooLWUqeSkgPj0gMTAqKnAsIGFuZCB0aGUgY29lZmZpY2llbnQgb2YgdGhlIHJlc3VsdAorICAgICAgICAgICAgICAgICMgY2FuJ3QgYmUgZXhwcmVzc2VkIGluIHAgZGlnaXRzLgorCisgICAgICAgICAgICAgICAgIyBlbWF4ID49IGxhcmdlc3QgZSBzdWNoIHRoYXQgNSoqZSA8IDEwKipwLgorICAgICAgICAgICAgICAgIGVtYXggPSBwKjkzLy82NQorICAgICAgICAgICAgICAgIGlmIHllID49IGxlbihzdHIoZW1heCkpOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgICAgICAgICAgICAgIyBGaW5kIC1lKnkgYW5kIC14ZSp5OyBib3RoIG11c3QgYmUgaW50ZWdlcnMKKyAgICAgICAgICAgICAgICBlID0gX2RlY2ltYWxfbHNoaWZ0X2V4YWN0KGUgKiB5YywgeWUpCisgICAgICAgICAgICAgICAgeGUgPSBfZGVjaW1hbF9sc2hpZnRfZXhhY3QoeGUgKiB5YywgeWUpCisgICAgICAgICAgICAgICAgaWYgZSBpcyBOb25lIG9yIHhlIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCisKKyAgICAgICAgICAgICAgICBpZiBlID4gZW1heDoKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKICAgICAgICAgICAgICAgICB4YyA9IDUqKmUKIApAQCAtMjExNywxOSArMjEzOCwyMCBAQAogICAgICAgICAgICAgICAgIHdoaWxlIHhjICUgNSA9PSAwOgogICAgICAgICAgICAgICAgICAgICB4YyAvLz0gNQogICAgICAgICAgICAgICAgICAgICBlIC09IDEKLSAgICAgICAgICAgICAgICBpZiB5ZSA+PSAwOgotICAgICAgICAgICAgICAgICAgICB5X2FzX2ludGVnZXIgPSB5YyoxMCoqeWUKLSAgICAgICAgICAgICAgICAgICAgZSA9IGUqeV9hc19pbnRlZ2VyCi0gICAgICAgICAgICAgICAgICAgIHhlID0geGUqeV9hc19pbnRlZ2VyCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgdGVuX3BvdyA9IDEwKioteWUKLSAgICAgICAgICAgICAgICAgICAgZSwgcmVtYWluZGVyID0gZGl2bW9kKGUqeWMsIHRlbl9wb3cpCi0gICAgICAgICAgICAgICAgICAgIGlmIHJlbWFpbmRlcjoKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCi0gICAgICAgICAgICAgICAgICAgIHhlLCByZW1haW5kZXIgPSBkaXZtb2QoeGUqeWMsIHRlbl9wb3cpCi0gICAgICAgICAgICAgICAgICAgIGlmIHJlbWFpbmRlcjoKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCi0gICAgICAgICAgICAgICAgaWYgZSozID49IHAqMTA6ICMgMTAvMyA+IGxvZygxMCkvbG9nKDIpCisKKyAgICAgICAgICAgICAgICAjIEd1YXJkIGFnYWluc3QgbGFyZ2UgdmFsdWVzIG9mIHllLCB1c2luZyB0aGUgc2FtZSBsb2dpYyBhcyBpbgorICAgICAgICAgICAgICAgICMgdGhlICd4YyBpcyBhIHBvd2VyIG9mIDInIGJyYW5jaC4gIDEwLzMgaXMgYW4gdXBwZXIgYm91bmQgZm9yCisgICAgICAgICAgICAgICAgIyBsb2coMTApL2xvZygyKS4KKyAgICAgICAgICAgICAgICBlbWF4ID0gcCoxMC8vMworICAgICAgICAgICAgICAgIGlmIHllID49IGxlbihzdHIoZW1heCkpOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgICAgICAgICAgICAgZSA9IF9kZWNpbWFsX2xzaGlmdF9leGFjdChlICogeWMsIHllKQorICAgICAgICAgICAgICAgIHhlID0gX2RlY2ltYWxfbHNoaWZ0X2V4YWN0KHhlICogeWMsIHllKQorICAgICAgICAgICAgICAgIGlmIGUgaXMgTm9uZSBvciB4ZSBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgICAgICAgICAgICAgaWYgZSA+IGVtYXg6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCiAgICAgICAgICAgICAgICAgeGMgPSAyKiplCiAgICAgICAgICAgICBlbHNlOgpAQCAtMzg4MSwyOCArMzkwMyw2IEBACiAgICAgICAgIHJldHVybiBuYwogICAgIF9fY29weV9fID0gY29weQogCi0gICAgIyBfY2xhbXAgaXMgcHJvdmlkZWQgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggdGhpcmQtcGFydHkKLSAgICAjIGNvZGUuICBNYXkgYmUgcmVtb3ZlZCBpbiBQeXRob24gPj0gMy4zLgotICAgIGRlZiBfZ2V0X2NsYW1wKHNlbGYpOgotICAgICAgICAiX2NsYW1wIG1pcnJvcnMgdGhlIGNsYW1wIGF0dHJpYnV0ZS4gIEl0cyB1c2UgaXMgZGVwcmVjYXRlZC4iCi0gICAgICAgIGltcG9ydCB3YXJuaW5ncwotICAgICAgICB3YXJuaW5ncy53YXJuKCdVc2Ugb2YgdGhlIF9jbGFtcCBhdHRyaWJ1dGUgaXMgZGVwcmVjYXRlZC4gJwotICAgICAgICAgICAgICAgICAgICAgICdQbGVhc2UgdXNlIGNsYW1wIGluc3RlYWQuJywKLSAgICAgICAgICAgICAgICAgICAgICBEZXByZWNhdGlvbldhcm5pbmcpCi0gICAgICAgIHJldHVybiBzZWxmLmNsYW1wCi0KLSAgICBkZWYgX3NldF9jbGFtcChzZWxmLCBjbGFtcCk6Ci0gICAgICAgICJfY2xhbXAgbWlycm9ycyB0aGUgY2xhbXAgYXR0cmlidXRlLiAgSXRzIHVzZSBpcyBkZXByZWNhdGVkLiIKLSAgICAgICAgaW1wb3J0IHdhcm5pbmdzCi0gICAgICAgIHdhcm5pbmdzLndhcm4oJ1VzZSBvZiB0aGUgX2NsYW1wIGF0dHJpYnV0ZSBpcyBkZXByZWNhdGVkLiAnCi0gICAgICAgICAgICAgICAgICAgICAgJ1BsZWFzZSB1c2UgY2xhbXAgaW5zdGVhZC4nLAotICAgICAgICAgICAgICAgICAgICAgIERlcHJlY2F0aW9uV2FybmluZykKLSAgICAgICAgc2VsZi5jbGFtcCA9IGNsYW1wCi0KLSAgICAjIGRvbid0IGJvdGhlciB3aXRoIF9kZWxfY2xhbXA7ICBubyBzYW5lIDNyZCBwYXJ0eSBjb2RlIHNob3VsZAotICAgICMgYmUgZGVsZXRpbmcgdGhlIF9jbGFtcCBhdHRyaWJ1dGUKLSAgICBfY2xhbXAgPSBwcm9wZXJ0eShfZ2V0X2NsYW1wLCBfc2V0X2NsYW1wKQotCiAgICAgZGVmIF9yYWlzZV9lcnJvcihzZWxmLCBjb25kaXRpb24sIGV4cGxhbmF0aW9uID0gTm9uZSwgKmFyZ3MpOgogICAgICAgICAiIiJIYW5kbGVzIGFuIGVycm9yCiAKQEAgLTU1MjksNiArNTUyOSwyNyBAQAogCiBfbmJpdHMgPSBpbnQuYml0X2xlbmd0aAogCitkZWYgX2RlY2ltYWxfbHNoaWZ0X2V4YWN0KG4sIGUpOgorICAgICIiIiBHaXZlbiBpbnRlZ2VycyBuIGFuZCBlLCByZXR1cm4gbiAqIDEwKiplIGlmIGl0J3MgYW4gaW50ZWdlciwgZWxzZSBOb25lLgorCisgICAgVGhlIGNvbXB1dGF0aW9uIGlzIGRlc2lnbmVkIHRvIGF2b2lkIGNvbXB1dGluZyBsYXJnZSBwb3dlcnMgb2YgMTAKKyAgICB1bm5lY2Vzc2FyaWx5LgorCisgICAgPj4+IF9kZWNpbWFsX2xzaGlmdF9leGFjdCgzLCA0KQorICAgIDMwMDAwCisgICAgPj4+IF9kZWNpbWFsX2xzaGlmdF9leGFjdCgzMDAsIC05OTk5OTk5OTkpICAjIHJldHVybnMgTm9uZQorCisgICAgIiIiCisgICAgaWYgbiA9PSAwOgorICAgICAgICByZXR1cm4gMAorICAgIGVsaWYgZSA+PSAwOgorICAgICAgICByZXR1cm4gbiAqIDEwKiplCisgICAgZWxzZToKKyAgICAgICAgIyB2YWxfbiA9IGxhcmdlc3QgcG93ZXIgb2YgMTAgZGl2aWRpbmcgbi4KKyAgICAgICAgc3RyX24gPSBzdHIoYWJzKG4pKQorICAgICAgICB2YWxfbiA9IGxlbihzdHJfbikgLSBsZW4oc3RyX24ucnN0cmlwKCcwJykpCisgICAgICAgIHJldHVybiBOb25lIGlmIHZhbF9uIDwgLWUgZWxzZSBuIC8vIDEwKiotZQorCiBkZWYgX3NxcnRfbmVhcmVzdChuLCBhKToKICAgICAiIiJDbG9zZXN0IGludGVnZXIgdG8gdGhlIHNxdWFyZSByb290IG9mIHRoZSBwb3NpdGl2ZSBpbnRlZ2VyIG4uICBhIGlzCiAgICAgYW4gaW5pdGlhbCBhcHByb3hpbWF0aW9uIHRvIHRoZSBzcXVhcmUgcm9vdC4gIEFueSBwb3NpdGl2ZSBpbnRlZ2VyCmRpZmYgLS1naXQgYS9MaWIvZGlmZmxpYi5weSBiL0xpYi9kaWZmbGliLnB5CmluZGV4IGU2Y2M2ZWUuLmFlMzc3ZDcgMTAwNjQ0Ci0tLSBhL0xpYi9kaWZmbGliLnB5CisrKyBiL0xpYi9kaWZmbGliLnB5CkBAIC0yMDQsNyArMjA0LDcgQEAKICAgICAgICAgIyAgICAgIHJldHVybmluZyB0cnVlIGlmZiB0aGUgZWxlbWVudCBpcyAianVuayIgLS0gdGhpcyBoYXMKICAgICAgICAgIyAgICAgIHN1YnRsZSBidXQgaGVscGZ1bCBlZmZlY3RzIG9uIHRoZSBhbGdvcml0aG0sIHdoaWNoIEknbGwKICAgICAgICAgIyAgICAgIGdldCBhcm91bmQgdG8gd3JpdGluZyB1cCBzb21lZGF5IDwwLjkgd2luaz4uCi0gICAgICAgICMgICAgICBET04nVCBVU0UhICBPbmx5IF9fY2hhaW5fYiB1c2VzIHRoaXMuICBVc2UgaXNianVuay4KKyAgICAgICAgIyAgICAgIERPTidUIFVTRSEgIE9ubHkgX19jaGFpbl9iIHVzZXMgdGhpcy4gIFVzZSAiaW4gc2VsZi5ianVuayIuCiAgICAgICAgICMgYmp1bmsKICAgICAgICAgIyAgICAgIHRoZSBpdGVtcyBpbiBiIGZvciB3aGljaCBpc2p1bmsgaXMgVHJ1ZS4KICAgICAgICAgIyBicG9wdWxhcgpAQCAtMjg3LDcgKzI4Nyw2IEBACiAgICAgIyB3aGVuIHNlbGYuaXNqdW5rIGlzIGRlZmluZWQsIGp1bmsgZWxlbWVudHMgZG9uJ3Qgc2hvdyB1cCBpbiB0aGlzCiAgICAgIyBtYXAgYXQgYWxsLCB3aGljaCBzdG9wcyB0aGUgY2VudHJhbCBmaW5kX2xvbmdlc3RfbWF0Y2ggbWV0aG9kCiAgICAgIyBmcm9tIHN0YXJ0aW5nIGFueSBtYXRjaGluZyBibG9jayBhdCBhIGp1bmsgZWxlbWVudCAuLi4KLSAgICAjIGFsc28gY3JlYXRlcyB0aGUgZmFzdCBpc2JqdW5rIGZ1bmN0aW9uIC4uLgogICAgICMgYjJqIGFsc28gZG9lcyBub3QgY29udGFpbiBlbnRyaWVzIGZvciAicG9wdWxhciIgZWxlbWVudHMsIG1lYW5pbmcKICAgICAjIGVsZW1lbnRzIHRoYXQgYWNjb3VudCBmb3IgbW9yZSB0aGFuIDEgKyAxJSBvZiB0aGUgdG90YWwgZWxlbWVudHMsIGFuZAogICAgICMgd2hlbiB0aGUgc2VxdWVuY2UgaXMgcmVhc29uYWJseSBsYXJnZSAoPj0gMjAwIGVsZW1lbnRzKTsgdGhpcyBjYW4KQEAgLTgwMCw3ICs3OTksNyBAQAogICAgIC4uLiAgIDIuIEV4cGxpY2l0IGlzIGJldHRlciB0aGFuIGltcGxpY2l0LgogICAgIC4uLiAgIDMuIFNpbXBsZSBpcyBiZXR0ZXIgdGhhbiBjb21wbGV4LgogICAgIC4uLiAgIDQuIENvbXBsZXggaXMgYmV0dGVyIHRoYW4gY29tcGxpY2F0ZWQuCi0gICAgLi4uICcnJy5zcGxpdGxpbmVzKDEpCisgICAgLi4uICcnJy5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCiAgICAgPj4+IGxlbih0ZXh0MSkKICAgICA0CiAgICAgPj4+IHRleHQxWzBdWy0xXQpAQCAtODA5LDcgKzgwOCw3IEBACiAgICAgLi4uICAgMy4gICBTaW1wbGUgaXMgYmV0dGVyIHRoYW4gY29tcGxleC4KICAgICAuLi4gICA0LiBDb21wbGljYXRlZCBpcyBiZXR0ZXIgdGhhbiBjb21wbGV4LgogICAgIC4uLiAgIDUuIEZsYXQgaXMgYmV0dGVyIHRoYW4gbmVzdGVkLgotICAgIC4uLiAnJycuc3BsaXRsaW5lcygxKQorICAgIC4uLiAnJycuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQogCiAgICAgTmV4dCB3ZSBpbnN0YW50aWF0ZSBhIERpZmZlciBvYmplY3Q6CiAKQEAgLTg5Niw4ICs4OTUsOCBAQAogCiAgICAgICAgIEV4YW1wbGU6CiAKLSAgICAgICAgPj4+IHByaW50KCcnLmpvaW4oRGlmZmVyKCkuY29tcGFyZSgnb25lXG50d29cbnRocmVlXG4nLnNwbGl0bGluZXMoMSksCi0gICAgICAgIC4uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ29yZVxudHJlZVxuZW11XG4nLnNwbGl0bGluZXMoMSkpKSwKKyAgICAgICAgPj4+IHByaW50KCcnLmpvaW4oRGlmZmVyKCkuY29tcGFyZSgnb25lXG50d29cbnRocmVlXG4nLnNwbGl0bGluZXMoVHJ1ZSksCisgICAgICAgIC4uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ29yZVxudHJlZVxuZW11XG4nLnNwbGl0bGluZXMoVHJ1ZSkpKSwKICAgICAgICAgLi4uICAgICAgIGVuZD0iIikKICAgICAgICAgLSBvbmUKICAgICAgICAgPyAgXgpAQCAtMTI2OSw4ICsxMjY4LDggQEAKIAogICAgIEV4YW1wbGU6CiAKLSAgICA+Pj4gcHJpbnQoJycuam9pbihjb250ZXh0X2RpZmYoJ29uZVxudHdvXG50aHJlZVxuZm91clxuJy5zcGxpdGxpbmVzKDEpLAotICAgIC4uLiAgICAgICAnemVyb1xub25lXG50cmVlXG5mb3VyXG4nLnNwbGl0bGluZXMoMSksICdPcmlnaW5hbCcsICdDdXJyZW50JykpLAorICAgID4+PiBwcmludCgnJy5qb2luKGNvbnRleHRfZGlmZignb25lXG50d29cbnRocmVlXG5mb3VyXG4nLnNwbGl0bGluZXMoVHJ1ZSksCisgICAgLi4uICAgICAgICd6ZXJvXG5vbmVcbnRyZWVcbmZvdXJcbicuc3BsaXRsaW5lcyhUcnVlKSwgJ09yaWdpbmFsJywgJ0N1cnJlbnQnKSksCiAgICAgLi4uICAgICAgIGVuZD0iIikKICAgICAqKiogT3JpZ2luYWwKICAgICAtLS0gQ3VycmVudApAQCAtMTMzOSw4ICsxMzM4LDggQEAKIAogICAgIEV4YW1wbGU6CiAKLSAgICA+Pj4gZGlmZiA9IG5kaWZmKCdvbmVcbnR3b1xudGhyZWVcbicuc3BsaXRsaW5lcygxKSwKLSAgICAuLi4gICAgICAgICAgICAgICdvcmVcbnRyZWVcbmVtdVxuJy5zcGxpdGxpbmVzKDEpKQorICAgID4+PiBkaWZmID0gbmRpZmYoJ29uZVxudHdvXG50aHJlZVxuJy5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpLAorICAgIC4uLiAgICAgICAgICAgICAgJ29yZVxudHJlZVxuZW11XG4nLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkpCiAgICAgPj4+IHByaW50KCcnLmpvaW4oZGlmZiksIGVuZD0iIikKICAgICAtIG9uZQogICAgID8gIF4KQEAgLTIwMzQsOCArMjAzMyw4IEBACiAKICAgICBFeGFtcGxlczoKIAotICAgID4+PiBkaWZmID0gbmRpZmYoJ29uZVxudHdvXG50aHJlZVxuJy5zcGxpdGxpbmVzKDEpLAotICAgIC4uLiAgICAgICAgICAgICAgJ29yZVxudHJlZVxuZW11XG4nLnNwbGl0bGluZXMoMSkpCisgICAgPj4+IGRpZmYgPSBuZGlmZignb25lXG50d29cbnRocmVlXG4nLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSksCisgICAgLi4uICAgICAgICAgICAgICAnb3JlXG50cmVlXG5lbXVcbicuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKSkKICAgICA+Pj4gZGlmZiA9IGxpc3QoZGlmZikKICAgICA+Pj4gcHJpbnQoJycuam9pbihyZXN0b3JlKGRpZmYsIDEpKSwgZW5kPSIiKQogICAgIG9uZQpkaWZmIC0tZ2l0IGEvTGliL2Rpc3R1dGlscy9fX2luaXRfXy5weSBiL0xpYi9kaXN0dXRpbHMvX19pbml0X18ucHkKaW5kZXggMzY5NzUwNS4uOGI0MjYxYSAxMDA2NDQKLS0tIGEvTGliL2Rpc3R1dGlscy9fX2luaXRfXy5weQorKysgYi9MaWIvZGlzdHV0aWxzL19faW5pdF9fLnB5CkBAIC0xMyw1ICsxMyw1IEBACiAjIFVwZGF0ZWQgYXV0b21hdGljYWxseSBieSB0aGUgUHl0aG9uIHJlbGVhc2UgcHJvY2Vzcy4KICMKICMtLXN0YXJ0IGNvbnN0YW50cy0tCi1fX3ZlcnNpb25fXyA9ICIzLjIuM3JjMSIKK19fdmVyc2lvbl9fID0gIjMuMy4wYTEiCiAjLS1lbmQgY29uc3RhbnRzLS0KZGlmZiAtLWdpdCBhL0xpYi9kaXN0dXRpbHMvY29tbWFuZC9iZGlzdF93aW5pbnN0LnB5IGIvTGliL2Rpc3R1dGlscy9jb21tYW5kL2JkaXN0X3dpbmluc3QucHkKaW5kZXggZTNlZDNhZC4uOTU5YThiZiAxMDA2NDQKLS0tIGEvTGliL2Rpc3R1dGlscy9jb21tYW5kL2JkaXN0X3dpbmluc3QucHkKKysrIGIvTGliL2Rpc3R1dGlscy9jb21tYW5kL2JkaXN0X3dpbmluc3QucHkKQEAgLTI2NSwxMSArMjY1LDExIEBACiAgICAgICAgIGNmZ2RhdGEgPSBjZmdkYXRhICsgYiJcMCIKICAgICAgICAgaWYgc2VsZi5wcmVfaW5zdGFsbF9zY3JpcHQ6CiAgICAgICAgICAgICAjIFdlIG5lZWQgdG8gbm9ybWFsaXplIG5ld2xpbmVzLCBzbyB3ZSBvcGVuIGluIHRleHQgbW9kZSBhbmQKLSAgICAgICAgICAgICMgY29udmVydCBiYWNrIHRvIGJ5dGVzLiAibGF0aW4xIiBzaW1wbHkgYXZvaWRzIGFueSBwb3NzaWJsZQorICAgICAgICAgICAgIyBjb252ZXJ0IGJhY2sgdG8gYnl0ZXMuICJsYXRpbi0xIiBzaW1wbHkgYXZvaWRzIGFueSBwb3NzaWJsZQogICAgICAgICAgICAgIyBmYWlsdXJlcy4KICAgICAgICAgICAgIHdpdGggb3BlbihzZWxmLnByZV9pbnN0YWxsX3NjcmlwdCwgInIiLAotICAgICAgICAgICAgICAgIGVuY29kaW5nPSJsYXRpbjEiKSBhcyBzY3JpcHQ6Ci0gICAgICAgICAgICAgICAgc2NyaXB0X2RhdGEgPSBzY3JpcHQucmVhZCgpLmVuY29kZSgibGF0aW4xIikKKyAgICAgICAgICAgICAgICBlbmNvZGluZz0ibGF0aW4tMSIpIGFzIHNjcmlwdDoKKyAgICAgICAgICAgICAgICBzY3JpcHRfZGF0YSA9IHNjcmlwdC5yZWFkKCkuZW5jb2RlKCJsYXRpbi0xIikKICAgICAgICAgICAgIGNmZ2RhdGEgPSBjZmdkYXRhICsgc2NyaXB0X2RhdGEgKyBiIlxuXDAiCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAjIGVtcHR5IHByZS1pbnN0YWxsIHNjcmlwdApkaWZmIC0tZ2l0IGEvTGliL2Rpc3R1dGlscy9jb21tYW5kL2J1aWxkX2V4dC5weSBiL0xpYi9kaXN0dXRpbHMvY29tbWFuZC9idWlsZF9leHQucHkKaW5kZXggMzRiNjFiZC4uNTlkMGNkMiAxMDA2NDQKLS0tIGEvTGliL2Rpc3R1dGlscy9jb21tYW5kL2J1aWxkX2V4dC5weQorKysgYi9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYnVpbGRfZXh0LnB5CkBAIC0yMzksOCArMjM5LDcgQEAKICAgICAgICAgIyBmb3IgZXh0ZW5zaW9ucyB1bmRlciBMaW51eCBvciBTb2xhcmlzIHdpdGggYSBzaGFyZWQgUHl0aG9uIGxpYnJhcnksCiAgICAgICAgICMgUHl0aG9uJ3MgbGlicmFyeSBkaXJlY3RvcnkgbXVzdCBiZSBhcHBlbmRlZCB0byBsaWJyYXJ5X2RpcnMKICAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdQeV9FTkFCTEVfU0hBUkVEJykKLSAgICAgICAgaWYgKChzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbGludXgnKSBvciBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnZ251JykKLSAgICAgICAgICAgICBvciBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnc3Vub3MnKSkKKyAgICAgICAgaWYgKHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCgnbGludXgnLCAnZ251JywgJ3N1bm9zJykpCiAgICAgICAgICAgICBhbmQgc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdQeV9FTkFCTEVfU0hBUkVEJykpOgogICAgICAgICAgICAgaWYgc3lzLmV4ZWN1dGFibGUuc3RhcnRzd2l0aChvcy5wYXRoLmpvaW4oc3lzLmV4ZWNfcHJlZml4LCAiYmluIikpOgogICAgICAgICAgICAgICAgICMgYnVpbGRpbmcgdGhpcmQgcGFydHkgZXh0ZW5zaW9ucwpkaWZmIC0tZ2l0IGEvTGliL2Rpc3R1dGlscy9jb21tYW5kL2J1aWxkX3NjcmlwdHMucHkgYi9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYnVpbGRfc2NyaXB0cy5weQppbmRleCBlYzQzNDc3Li40YjViMjJlIDEwMDY0NAotLS0gYS9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYnVpbGRfc2NyaXB0cy5weQorKysgYi9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYnVpbGRfc2NyaXB0cy5weQpAQCAtMTI2LDEwICsxMjYsOSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJUaGUgc2hlYmFuZyAoeyFyfSkgaXMgbm90IGRlY29kYWJsZSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb20gdGhlIHNjcmlwdCBlbmNvZGluZyAoe30pIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtYXQoc2hlYmFuZywgZW5jb2RpbmcpKQotICAgICAgICAgICAgICAgICAgICBvdXRmID0gb3BlbihvdXRmaWxlLCAid2IiKQotICAgICAgICAgICAgICAgICAgICBvdXRmLndyaXRlKHNoZWJhbmcpCi0gICAgICAgICAgICAgICAgICAgIG91dGYud3JpdGVsaW5lcyhmLnJlYWRsaW5lcygpKQotICAgICAgICAgICAgICAgICAgICBvdXRmLmNsb3NlKCkKKyAgICAgICAgICAgICAgICAgICAgd2l0aCBvcGVuKG91dGZpbGUsICJ3YiIpIGFzIG91dGY6CisgICAgICAgICAgICAgICAgICAgICAgICBvdXRmLndyaXRlKHNoZWJhbmcpCisgICAgICAgICAgICAgICAgICAgICAgICBvdXRmLndyaXRlbGluZXMoZi5yZWFkbGluZXMoKSkKICAgICAgICAgICAgICAgICBpZiBmOgogICAgICAgICAgICAgICAgICAgICBmLmNsb3NlKCkKICAgICAgICAgICAgIGVsc2U6CmRpZmYgLS1naXQgYS9MaWIvZGlzdHV0aWxzL3Rlc3RzL3Rlc3RfYXJjaGl2ZV91dGlsLnB5IGIvTGliL2Rpc3R1dGlscy90ZXN0cy90ZXN0X2FyY2hpdmVfdXRpbC5weQppbmRleCA4ZWRmYWI0Li4xYWZkZDQ2IDEwMDY0NAotLS0gYS9MaWIvZGlzdHV0aWxzL3Rlc3RzL3Rlc3RfYXJjaGl2ZV91dGlsLnB5CisrKyBiL0xpYi9kaXN0dXRpbHMvdGVzdHMvdGVzdF9hcmNoaXZlX3V0aWwucHkKQEAgLTEsNiArMSw4IEBACisjIC0qLSBjb2Rpbmc6IHV0Zi04IC0qLQogIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5hcmNoaXZlX3V0aWwuIiIiCiBpbXBvcnQgdW5pdHRlc3QKIGltcG9ydCBvcworaW1wb3J0IHN5cwogaW1wb3J0IHRhcmZpbGUKIGZyb20gb3MucGF0aCBpbXBvcnQgc3BsaXRkcml2ZQogaW1wb3J0IHdhcm5pbmdzCkBAIC0yNSw2ICsyNywxOCBAQAogZXhjZXB0IEltcG9ydEVycm9yOgogICAgIFpMSUJfU1VQUE9SVCA9IEZhbHNlCiAKK2RlZiBjYW5fZnNfZW5jb2RlKGZpbGVuYW1lKToKKyAgICAiIiIKKyAgICBSZXR1cm4gVHJ1ZSBpZiB0aGUgZmlsZW5hbWUgY2FuIGJlIHNhdmVkIGluIHRoZSBmaWxlIHN5c3RlbS4KKyAgICAiIiIKKyAgICBpZiBvcy5wYXRoLnN1cHBvcnRzX3VuaWNvZGVfZmlsZW5hbWVzOgorICAgICAgICByZXR1cm4gVHJ1ZQorICAgIHRyeToKKyAgICAgICAgZmlsZW5hbWUuZW5jb2RlKHN5cy5nZXRmaWxlc3lzdGVtZW5jb2RpbmcoKSkKKyAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICByZXR1cm4gVHJ1ZQorCiAKIGNsYXNzIEFyY2hpdmVVdGlsVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nU2lsZW5jZXIsCkBAIC0zMiw2ICs0NiwyOCBAQAogCiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoWkxJQl9TVVBQT1JULCAnTmVlZCB6bGliIHN1cHBvcnQgdG8gcnVuJykKICAgICBkZWYgdGVzdF9tYWtlX3RhcmJhbGwoc2VsZik6CisgICAgICAgIHNlbGYuX21ha2VfdGFyYmFsbCgnYXJjaGl2ZScpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhaTElCX1NVUFBPUlQsICdOZWVkIHpsaWIgc3VwcG9ydCB0byBydW4nKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGNhbl9mc19lbmNvZGUoJ8OlcmNoaXYnKSwKKyAgICAgICAgJ0ZpbGUgc3lzdGVtIGNhbm5vdCBoYW5kbGUgdGhpcyBmaWxlbmFtZScpCisgICAgZGVmIHRlc3RfbWFrZV90YXJiYWxsX2xhdGluMShzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIE1pcnJvciB0ZXN0X21ha2VfdGFyYmFsbCwgZXhjZXB0IGZpbGVuYW1lIGNvbnRhaW5zIGxhdGluIGNoYXJhY3RlcnMuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9tYWtlX3RhcmJhbGwoJ8OlcmNoaXYnKSAjIG5vdGUgdGhpcyBpc24ndCBhIHJlYWwgd29yZAorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoWkxJQl9TVVBQT1JULCAnTmVlZCB6bGliIHN1cHBvcnQgdG8gcnVuJykKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhjYW5fZnNfZW5jb2RlKCfjga7jgqLjg7zjgqvjgqTjg5YnKSwKKyAgICAgICAgJ0ZpbGUgc3lzdGVtIGNhbm5vdCBoYW5kbGUgdGhpcyBmaWxlbmFtZScpCisgICAgZGVmIHRlc3RfbWFrZV90YXJiYWxsX2V4dGVuZGVkKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgTWlycm9yIHRlc3RfbWFrZV90YXJiYWxsLCBleGNlcHQgZmlsZW5hbWUgY29udGFpbnMgZXh0ZW5kZWQKKyAgICAgICAgY2hhcmFjdGVycyBvdXRzaWRlIHRoZSBsYXRpbiBjaGFyc2V0LgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fbWFrZV90YXJiYWxsKCfjga7jgqLjg7zjgqvjgqTjg5YnKSAjIGphcGFuZXNlIGZvciBhcmNoaXZlCisKKyAgICBkZWYgX21ha2VfdGFyYmFsbChzZWxmLCB0YXJnZXRfbmFtZSk6CiAgICAgICAgICMgY3JlYXRpbmcgc29tZXRoaW5nIHRvIHRhcgogICAgICAgICB0bXBkaXIgPSBzZWxmLm1rZHRlbXAoKQogICAgICAgICBzZWxmLndyaXRlX2ZpbGUoW3RtcGRpciwgJ2ZpbGUxJ10sICd4eHgnKQpAQCAtNDMsNyArNzksNyBAQAogICAgICAgICB1bml0dGVzdC5za2lwVW5sZXNzKHNwbGl0ZHJpdmUodG1wZGlyKVswXSA9PSBzcGxpdGRyaXZlKHRtcGRpcjIpWzBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTb3VyY2UgYW5kIHRhcmdldCBzaG91bGQgYmUgb24gc2FtZSBkcml2ZSIpCiAKLSAgICAgICAgYmFzZV9uYW1lID0gb3MucGF0aC5qb2luKHRtcGRpcjIsICdhcmNoaXZlJykKKyAgICAgICAgYmFzZV9uYW1lID0gb3MucGF0aC5qb2luKHRtcGRpcjIsIHRhcmdldF9uYW1lKQogCiAgICAgICAgICMgd29ya2luZyB3aXRoIHJlbGF0aXZlIHBhdGhzIHRvIGF2b2lkIHRhciB3YXJuaW5ncwogICAgICAgICBvbGRfZGlyID0gb3MuZ2V0Y3dkKCkKQEAgLTU4LDcgKzk0LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKHRhcmJhbGwpKQogCiAgICAgICAgICMgdHJ5aW5nIGFuIHVuY29tcHJlc3NlZCBvbmUKLSAgICAgICAgYmFzZV9uYW1lID0gb3MucGF0aC5qb2luKHRtcGRpcjIsICdhcmNoaXZlJykKKyAgICAgICAgYmFzZV9uYW1lID0gb3MucGF0aC5qb2luKHRtcGRpcjIsIHRhcmdldF9uYW1lKQogICAgICAgICBvbGRfZGlyID0gb3MuZ2V0Y3dkKCkKICAgICAgICAgb3MuY2hkaXIodG1wZGlyKQogICAgICAgICB0cnk6CmRpZmYgLS1naXQgYS9MaWIvZGlzdHV0aWxzL3Rlc3RzL3Rlc3RfYmRpc3RfcnBtLnB5IGIvTGliL2Rpc3R1dGlscy90ZXN0cy90ZXN0X2JkaXN0X3JwbS5weQppbmRleCBhYjdhMWJmLi5iMDkwYjc5IDEwMDY0NAotLS0gYS9MaWIvZGlzdHV0aWxzL3Rlc3RzL3Rlc3RfYmRpc3RfcnBtLnB5CisrKyBiL0xpYi9kaXN0dXRpbHMvdGVzdHMvdGVzdF9iZGlzdF9ycG0ucHkKQEAgLTI4LDYgKzI4LDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc3lzLmV4ZWN1dGFibGUuZW5jb2RlKCJVVEYtOCIpCisgICAgICAgIGV4Y2VwdCBVbmljb2RlRW5jb2RlRXJyb3I6CisgICAgICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgic3lzLmV4ZWN1dGFibGUgaXMgbm90IGVuY29kYWJsZSB0byBVVEYtOCIpCisKICAgICAgICAgc3VwZXIoQnVpbGRScG1UZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQogICAgICAgICBzZWxmLm9sZF9sb2NhdGlvbiA9IG9zLmdldGN3ZCgpCiAgICAgICAgIHNlbGYub2xkX3N5c19hcmd2ID0gc3lzLmFyZ3YsIHN5cy5hcmd2WzpdCkBAIC00Miw3ICs0Nyw3IEBACiAKICAgICAgICAgIyBYWFggSSBhbSB1bmFibGUgeWV0IHRvIG1ha2UgdGhpcyB0ZXN0IHdvcmsgd2l0aG91dAogICAgICAgICAjIHNwdXJpb3VzIHNkdG91dC9zdGRlcnIgb3V0cHV0IHVuZGVyIE1hYyBPUyBYCi0gICAgICAgIGlmIHN5cy5wbGF0Zm9ybSAhPSAnbGludXgyJzoKKyAgICAgICAgaWYgbm90IHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdsaW51eCcpOgogICAgICAgICAgICAgcmV0dXJuCiAKICAgICAgICAgIyB0aGlzIHRlc3Qgd2lsbCBydW4gb25seSBpZiB0aGUgcnBtIGNvbW1hbmRzIGFyZSBmb3VuZApAQCAtODYsNyArOTEsNyBAQAogCiAgICAgICAgICMgWFhYIEkgYW0gdW5hYmxlIHlldCB0byBtYWtlIHRoaXMgdGVzdCB3b3JrIHdpdGhvdXQKICAgICAgICAgIyBzcHVyaW91cyBzZHRvdXQvc3RkZXJyIG91dHB1dCB1bmRlciBNYWMgT1MgWAotICAgICAgICBpZiBzeXMucGxhdGZvcm0gIT0gJ2xpbnV4Mic6CisgICAgICAgIGlmIG5vdCBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbGludXgnKToKICAgICAgICAgICAgIHJldHVybgogCiAgICAgICAgICMgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTE1MzMxNjQKZGlmZiAtLWdpdCBhL0xpYi9kb2N0ZXN0LnB5IGIvTGliL2RvY3Rlc3QucHkKaW5kZXggMjM0NzMzZS4uYWJhOThkYyAxMDA2NDQKLS0tIGEvTGliL2RvY3Rlc3QucHkKKysrIGIvTGliL2RvY3Rlc3QucHkKQEAgLTQ1OCw3ICs0NTgsNiBAQAogICAgICAgICByZXR1cm4gaGFzaCgoc2VsZi5zb3VyY2UsIHNlbGYud2FudCwgc2VsZi5saW5lbm8sIHNlbGYuaW5kZW50LAogICAgICAgICAgICAgICAgICAgICAgc2VsZi5leGNfbXNnKSkKIAotCiBjbGFzcyBEb2NUZXN0OgogICAgICIiIgogICAgIEEgY29sbGVjdGlvbiBvZiBkb2N0ZXN0IGV4YW1wbGVzIHRoYXQgc2hvdWxkIGJlIHJ1biBpbiBhIHNpbmdsZQpAQCAtMTM2Nyw3ICsxMzY2LDcgQEAKICAgICAgICAgbSA9IHNlbGYuX19MSU5FQ0FDSEVfRklMRU5BTUVfUkUubWF0Y2goZmlsZW5hbWUpCiAgICAgICAgIGlmIG0gYW5kIG0uZ3JvdXAoJ25hbWUnKSA9PSBzZWxmLnRlc3QubmFtZToKICAgICAgICAgICAgIGV4YW1wbGUgPSBzZWxmLnRlc3QuZXhhbXBsZXNbaW50KG0uZ3JvdXAoJ2V4YW1wbGVudW0nKSldCi0gICAgICAgICAgICByZXR1cm4gZXhhbXBsZS5zb3VyY2Uuc3BsaXRsaW5lcyhUcnVlKQorICAgICAgICAgICAgcmV0dXJuIGV4YW1wbGUuc291cmNlLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHJldHVybiBzZWxmLnNhdmVfbGluZWNhY2hlX2dldGxpbmVzKGZpbGVuYW1lLCBtb2R1bGVfZ2xvYmFscykKIApAQCAtMTQxMyw2ICsxNDEyLDcgQEAKICAgICAgICAgIyBOb3RlIHRoYXQgdGhlIGludGVyYWN0aXZlIG91dHB1dCB3aWxsIGdvIHRvICpvdXIqCiAgICAgICAgICMgc2F2ZV9zdGRvdXQsIGV2ZW4gaWYgdGhhdCdzIG5vdCB0aGUgcmVhbCBzeXMuc3Rkb3V0OyB0aGlzCiAgICAgICAgICMgYWxsb3dzIHVzIHRvIHdyaXRlIHRlc3QgY2FzZXMgZm9yIHRoZSBzZXRfdHJhY2UgYmVoYXZpb3IuCisgICAgICAgIHNhdmVfdHJhY2UgPSBzeXMuZ2V0dHJhY2UoKQogICAgICAgICBzYXZlX3NldF90cmFjZSA9IHBkYi5zZXRfdHJhY2UKICAgICAgICAgc2VsZi5kZWJ1Z2dlciA9IF9PdXRwdXRSZWRpcmVjdGluZ1BkYihzYXZlX3N0ZG91dCkKICAgICAgICAgc2VsZi5kZWJ1Z2dlci5yZXNldCgpCkBAIC0xNDMyLDYgKzE0MzIsNyBAQAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgc3lzLnN0ZG91dCA9IHNhdmVfc3Rkb3V0CiAgICAgICAgICAgICBwZGIuc2V0X3RyYWNlID0gc2F2ZV9zZXRfdHJhY2UKKyAgICAgICAgICAgIHN5cy5zZXR0cmFjZShzYXZlX3RyYWNlKQogICAgICAgICAgICAgbGluZWNhY2hlLmdldGxpbmVzID0gc2VsZi5zYXZlX2xpbmVjYWNoZV9nZXRsaW5lcwogICAgICAgICAgICAgc3lzLmRpc3BsYXlob29rID0gc2F2ZV9kaXNwbGF5aG9vawogICAgICAgICAgICAgaWYgY2xlYXJfZ2xvYnM6CkBAIC0xNjI4LDggKzE2MjksOCBAQAogICAgICAgICAjIENoZWNrIGlmIHdlIHNob3VsZCB1c2UgZGlmZi4KICAgICAgICAgaWYgc2VsZi5fZG9fYV9mYW5jeV9kaWZmKHdhbnQsIGdvdCwgb3B0aW9uZmxhZ3MpOgogICAgICAgICAgICAgIyBTcGxpdCB3YW50ICYgZ290IGludG8gbGluZXMuCi0gICAgICAgICAgICB3YW50X2xpbmVzID0gd2FudC5zcGxpdGxpbmVzKFRydWUpICAjIFRydWUgPT0ga2VlcCBsaW5lIGVuZHMKLSAgICAgICAgICAgIGdvdF9saW5lcyA9IGdvdC5zcGxpdGxpbmVzKFRydWUpCisgICAgICAgICAgICB3YW50X2xpbmVzID0gd2FudC5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCisgICAgICAgICAgICBnb3RfbGluZXMgPSBnb3Quc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQogICAgICAgICAgICAgIyBVc2UgZGlmZmxpYiB0byBmaW5kIHRoZWlyIGRpZmZlcmVuY2VzLgogICAgICAgICAgICAgaWYgb3B0aW9uZmxhZ3MgJiBSRVBPUlRfVURJRkY6CiAgICAgICAgICAgICAgICAgZGlmZiA9IGRpZmZsaWIudW5pZmllZF9kaWZmKHdhbnRfbGluZXMsIGdvdF9saW5lcywgbj0yKQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL19wYXJzZWFkZHIucHkgYi9MaWIvZW1haWwvX3BhcnNlYWRkci5weQppbmRleCBhMjk1NzU3Li4wMzQyNDY5IDEwMDY0NAotLS0gYS9MaWIvZW1haWwvX3BhcnNlYWRkci5weQorKysgYi9MaWIvZW1haWwvX3BhcnNlYWRkci5weQpAQCAtNDcsNiArNDcsMjEgQEAKIAogICAgIEFjY291bnRzIGZvciBtaWxpdGFyeSB0aW1lem9uZXMuCiAgICAgIiIiCisgICAgcmVzID0gX3BhcnNlZGF0ZV90eihkYXRhKQorICAgIGlmIHJlc1s5XSBpcyBOb25lOgorICAgICAgICByZXNbOV0gPSAwCisgICAgcmV0dXJuIHR1cGxlKHJlcykKKworZGVmIF9wYXJzZWRhdGVfdHooZGF0YSk6CisgICAgIiIiQ29udmVydCBkYXRlIHRvIGV4dGVuZGVkIHRpbWUgdHVwbGUuCisKKyAgICBUaGUgbGFzdCAoYWRkaXRpb25hbCkgZWxlbWVudCBpcyB0aGUgdGltZSB6b25lIG9mZnNldCBpbiBzZWNvbmRzLCBleGNlcHQgaWYKKyAgICB0aGUgdGltZXpvbmUgd2FzIHNwZWNpZmllZCBhcyAtMDAwMC4gIEluIHRoYXQgY2FzZSB0aGUgbGFzdCBlbGVtZW50IGlzCisgICAgTm9uZS4gIFRoaXMgaW5kaWNhdGVzIGEgVVRDIHRpbWVzdGFtcCB0aGF0IGV4cGxpY2l0bHkgZGVjbGFpbXMga25vd2xlZGdlIG9mCisgICAgdGhlIHNvdXJjZSB0aW1lem9uZSwgYXMgb3Bwb3NlZCB0byBhICswMDAwIHRpbWVzdGFtcCB0aGF0IGluZGljYXRlcyB0aGUKKyAgICBzb3VyY2UgdGltZXpvbmUgcmVhbGx5IHdhcyBVVEMuCisKKyAgICAiIiIKICAgICBkYXRhID0gZGF0YS5zcGxpdCgpCiAgICAgIyBUaGUgRldTIGFmdGVyIHRoZSBjb21tYSBhZnRlciB0aGUgZGF5LW9mLXdlZWsgaXMgb3B0aW9uYWwsIHNvIHNlYXJjaCBhbmQKICAgICAjIGFkanVzdCBmb3IgdGhpcy4KQEAgLTk5LDYgKzExNCwxNCBAQAogICAgICAgICB0c3MgPSAnMCcKICAgICBlbGlmIGxlbih0bSkgPT0gMzoKICAgICAgICAgW3RoaCwgdG1tLCB0c3NdID0gdG0KKyAgICBlbGlmIGxlbih0bSkgPT0gMSBhbmQgJy4nIGluIHRtWzBdOgorICAgICAgICAjIFNvbWUgbm9uLWNvbXBsaWFudCBNVUFzIHVzZSAnLicgdG8gc2VwYXJhdGUgdGltZSBlbGVtZW50cy4KKyAgICAgICAgdG0gPSB0bVswXS5zcGxpdCgnLicpCisgICAgICAgIGlmIGxlbih0bSkgPT0gMjoKKyAgICAgICAgICAgIFt0aGgsIHRtbV0gPSB0bQorICAgICAgICAgICAgdHNzID0gMAorICAgICAgICBlbGlmIGxlbih0bSkgPT0gMzoKKyAgICAgICAgICAgIFt0aGgsIHRtbSwgdHNzXSA9IHRtCiAgICAgZWxzZToKICAgICAgICAgcmV0dXJuIE5vbmUKICAgICB0cnk6CkBAIC0xMzAsNiArMTUzLDggQEAKICAgICAgICAgICAgIHR6b2Zmc2V0ID0gaW50KHR6KQogICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgaWYgdHpvZmZzZXQ9PTAgYW5kIHR6LnN0YXJ0c3dpdGgoJy0nKToKKyAgICAgICAgICAgIHR6b2Zmc2V0ID0gTm9uZQogICAgICMgQ29udmVydCBhIHRpbWV6b25lIG9mZnNldCBpbnRvIHNlY29uZHMgOyAtMDUwMCAtPiAtMTgwMDAKICAgICBpZiB0em9mZnNldDoKICAgICAgICAgaWYgdHpvZmZzZXQgPCAwOgpAQCAtMTM5LDcgKzE2NCw3IEBACiAgICAgICAgICAgICB0enNpZ24gPSAxCiAgICAgICAgIHR6b2Zmc2V0ID0gdHpzaWduICogKCAodHpvZmZzZXQvLzEwMCkqMzYwMCArICh0em9mZnNldCAlIDEwMCkqNjApCiAgICAgIyBEYXlsaWdodCBTYXZpbmcgVGltZSBmbGFnIGlzIHNldCB0byAtMSwgc2luY2UgRFNUIGlzIHVua25vd24uCi0gICAgcmV0dXJuIHl5LCBtbSwgZGQsIHRoaCwgdG1tLCB0c3MsIDAsIDEsIC0xLCB0em9mZnNldAorICAgIHJldHVybiBbeXksIG1tLCBkZCwgdGhoLCB0bW0sIHRzcywgMCwgMSwgLTEsIHR6b2Zmc2V0XQogCiAKIGRlZiBwYXJzZWRhdGUoZGF0YSk6CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvZXJyb3JzLnB5IGIvTGliL2VtYWlsL2Vycm9ycy5weQppbmRleCBkNTJhNjI0Li5jMDRkZWI0IDEwMDY0NAotLS0gYS9MaWIvZW1haWwvZXJyb3JzLnB5CisrKyBiL0xpYi9lbWFpbC9lcnJvcnMucHkKQEAgLTMyLDcgKzMyLDcgQEAKIAogDAogIyBUaGVzZSBhcmUgcGFyc2luZyBkZWZlY3RzIHdoaWNoIHRoZSBwYXJzZXIgd2FzIGFibGUgdG8gd29yayBhcm91bmQuCi1jbGFzcyBNZXNzYWdlRGVmZWN0OgorY2xhc3MgTWVzc2FnZURlZmVjdChFeGNlcHRpb24pOgogICAgICIiIkJhc2UgY2xhc3MgZm9yIGEgbWVzc2FnZSBkZWZlY3QuIiIiCiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgbGluZT1Ob25lKToKQEAgLTU1LDMgKzU1LDYgQEAKIAogY2xhc3MgTXVsdGlwYXJ0SW52YXJpYW50VmlvbGF0aW9uRGVmZWN0KE1lc3NhZ2VEZWZlY3QpOgogICAgICIiIkEgbWVzc2FnZSBjbGFpbWVkIHRvIGJlIGEgbXVsdGlwYXJ0IGJ1dCBubyBzdWJwYXJ0cyB3ZXJlIGZvdW5kLiIiIgorCitjbGFzcyBJbnZhbGlkTXVsdGlwYXJ0Q29udGVudFRyYW5zZmVyRW5jb2RpbmdEZWZlY3QoTWVzc2FnZURlZmVjdCk6CisgICAgIiIiQW4gaW52YWxpZCBjb250ZW50IHRyYW5zZmVyIGVuY29kaW5nIHdhcyBzZXQgb24gdGhlIG11bHRpcGFydCBpdHNlbGYuIiIiCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvZmVlZHBhcnNlci5weSBiL0xpYi9lbWFpbC9mZWVkcGFyc2VyLnB5CmluZGV4IDYwYTgzMjUuLmU3NTRkODkgMTAwNjQ0Ci0tLSBhL0xpYi9lbWFpbC9mZWVkcGFyc2VyLnB5CisrKyBiL0xpYi9lbWFpbC9mZWVkcGFyc2VyLnB5CkBAIC0yNSw2ICsyNSw3IEBACiAKIGZyb20gZW1haWwgaW1wb3J0IGVycm9ycwogZnJvbSBlbWFpbCBpbXBvcnQgbWVzc2FnZQorZnJvbSBlbWFpbCBpbXBvcnQgcG9saWN5CiAKIE5MQ1JFID0gcmUuY29tcGlsZSgnXHJcbnxccnxcbicpCiBOTENSRV9ib2wgPSByZS5jb21waWxlKCcoXHJcbnxccnxcbiknKQpAQCAtMTIwLDkgKzEyMSw2IEBACiAgICAgICAgICMgUmV2ZXJzZSBhbmQgaW5zZXJ0IGF0IHRoZSBmcm9udCBvZiB0aGUgbGluZXMuCiAgICAgICAgIHNlbGYuX2xpbmVzWzowXSA9IGxpbmVzWzo6LTFdCiAKLSAgICBkZWYgaXNfY2xvc2VkKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5fY2xvc2VkCi0KICAgICBkZWYgX19pdGVyX18oc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmCiAKQEAgLTEzNyw5ICsxMzUsMTYgQEAKIGNsYXNzIEZlZWRQYXJzZXI6CiAgICAgIiIiQSBmZWVkLXN0eWxlIHBhcnNlciBvZiBlbWFpbC4iIiIKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBfZmFjdG9yeT1tZXNzYWdlLk1lc3NhZ2UpOgotICAgICAgICAiIiJfZmFjdG9yeSBpcyBjYWxsZWQgd2l0aCBubyBhcmd1bWVudHMgdG8gY3JlYXRlIGEgbmV3IG1lc3NhZ2Ugb2JqIiIiCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIF9mYWN0b3J5PW1lc3NhZ2UuTWVzc2FnZSwgKiwgcG9saWN5PXBvbGljeS5kZWZhdWx0KToKKyAgICAgICAgIiIiX2ZhY3RvcnkgaXMgY2FsbGVkIHdpdGggbm8gYXJndW1lbnRzIHRvIGNyZWF0ZSBhIG5ldyBtZXNzYWdlIG9iagorCisgICAgICAgIFRoZSBwb2xpY3kga2V5d29yZCBzcGVjaWZpZXMgYSBwb2xpY3kgb2JqZWN0IHRoYXQgY29udHJvbHMgYSBudW1iZXIgb2YKKyAgICAgICAgYXNwZWN0cyBvZiB0aGUgcGFyc2VyJ3Mgb3BlcmF0aW9uLiAgVGhlIGRlZmF1bHQgcG9saWN5IG1haW50YWlucworICAgICAgICBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgorCisgICAgICAgICIiIgogICAgICAgICBzZWxmLl9mYWN0b3J5ID0gX2ZhY3RvcnkKKyAgICAgICAgc2VsZi5wb2xpY3kgPSBwb2xpY3kKICAgICAgICAgc2VsZi5faW5wdXQgPSBCdWZmZXJlZFN1YkZpbGUoKQogICAgICAgICBzZWxmLl9tc2dzdGFjayA9IFtdCiAgICAgICAgIHNlbGYuX3BhcnNlID0gc2VsZi5fcGFyc2VnZW4oKS5fX25leHRfXwpAQCAtMTcxLDcgKzE3Niw4IEBACiAgICAgICAgICMgTG9vayBmb3IgZmluYWwgc2V0IG9mIGRlZmVjdHMKICAgICAgICAgaWYgcm9vdC5nZXRfY29udGVudF9tYWludHlwZSgpID09ICdtdWx0aXBhcnQnIFwKICAgICAgICAgICAgICAgIGFuZCBub3Qgcm9vdC5pc19tdWx0aXBhcnQoKToKLSAgICAgICAgICAgIHJvb3QuZGVmZWN0cy5hcHBlbmQoZXJyb3JzLk11bHRpcGFydEludmFyaWFudFZpb2xhdGlvbkRlZmVjdCgpKQorICAgICAgICAgICAgZGVmZWN0ID0gZXJyb3JzLk11bHRpcGFydEludmFyaWFudFZpb2xhdGlvbkRlZmVjdCgpCisgICAgICAgICAgICBzZWxmLnBvbGljeS5oYW5kbGVfZGVmZWN0KHJvb3QsIGRlZmVjdCkKICAgICAgICAgcmV0dXJuIHJvb3QKIAogICAgIGRlZiBfbmV3X21lc3NhZ2Uoc2VsZik6CkBAIC0yODQsNyArMjkwLDggQEAKICAgICAgICAgICAgICAgICAjIGRlZmluZWQgYSBib3VuZGFyeS4gIFRoYXQncyBhIHByb2JsZW0gd2hpY2ggd2UnbGwgaGFuZGxlIGJ5CiAgICAgICAgICAgICAgICAgIyByZWFkaW5nIGV2ZXJ5dGhpbmcgdW50aWwgdGhlIEVPRiBhbmQgbWFya2luZyB0aGUgbWVzc2FnZSBhcwogICAgICAgICAgICAgICAgICMgZGVmZWN0aXZlLgotICAgICAgICAgICAgICAgIHNlbGYuX2N1ci5kZWZlY3RzLmFwcGVuZChlcnJvcnMuTm9Cb3VuZGFyeUluTXVsdGlwYXJ0RGVmZWN0KCkpCisgICAgICAgICAgICAgICAgZGVmZWN0ID0gZXJyb3JzLk5vQm91bmRhcnlJbk11bHRpcGFydERlZmVjdCgpCisgICAgICAgICAgICAgICAgc2VsZi5wb2xpY3kuaGFuZGxlX2RlZmVjdChzZWxmLl9jdXIsIGRlZmVjdCkKICAgICAgICAgICAgICAgICBsaW5lcyA9IFtdCiAgICAgICAgICAgICAgICAgZm9yIGxpbmUgaW4gc2VsZi5faW5wdXQ6CiAgICAgICAgICAgICAgICAgICAgIGlmIGxpbmUgaXMgTmVlZE1vcmVEYXRhOgpAQCAtMjkzLDYgKzMwMCwxMSBAQAogICAgICAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQobGluZSkKICAgICAgICAgICAgICAgICBzZWxmLl9jdXIuc2V0X3BheWxvYWQoRU1QVFlTVFJJTkcuam9pbihsaW5lcykpCiAgICAgICAgICAgICAgICAgcmV0dXJuCisgICAgICAgICAgICAjIE1ha2Ugc3VyZSBhIHZhbGlkIGNvbnRlbnQgdHlwZSB3YXMgc3BlY2lmaWVkIHBlciBSRkMgMjA0NTo2LjQuCisgICAgICAgICAgICBpZiAoc2VsZi5fY3VyLmdldCgnY29udGVudC10cmFuc2Zlci1lbmNvZGluZycsICc4Yml0JykubG93ZXIoKQorICAgICAgICAgICAgICAgICAgICBub3QgaW4gKCc3Yml0JywgJzhiaXQnLCAnYmluYXJ5JykpOgorICAgICAgICAgICAgICAgIGRlZmVjdCA9IGVycm9ycy5JbnZhbGlkTXVsdGlwYXJ0Q29udGVudFRyYW5zZmVyRW5jb2RpbmdEZWZlY3QoKQorICAgICAgICAgICAgICAgIHNlbGYucG9saWN5LmhhbmRsZV9kZWZlY3Qoc2VsZi5fY3VyLCBkZWZlY3QpCiAgICAgICAgICAgICAjIENyZWF0ZSBhIGxpbmUgbWF0Y2ggcHJlZGljYXRlIHdoaWNoIG1hdGNoZXMgdGhlIGludGVyLXBhcnQKICAgICAgICAgICAgICMgYm91bmRhcnkgYXMgd2VsbCBhcyB0aGUgZW5kLW9mLW11bHRpcGFydCBib3VuZGFyeS4gIERvbid0IHB1c2gKICAgICAgICAgICAgICMgdGhpcyBvbnRvIHRoZSBpbnB1dCBzdHJlYW0gdW50aWwgd2UndmUgc2Nhbm5lZCBwYXN0IHRoZQpAQCAtMzg4LDcgKzQwMCw4IEBACiAgICAgICAgICAgICAjIHRoYXQgYXMgYSBkZWZlY3QgYW5kIHN0b3JlIHRoZSBjYXB0dXJlZCB0ZXh0IGFzIHRoZSBwYXlsb2FkLgogICAgICAgICAgICAgIyBFdmVyeXRoaW5nIGZyb20gaGVyZSB0byB0aGUgRU9GIGlzIGVwaWxvZ3VlLgogICAgICAgICAgICAgaWYgY2FwdHVyaW5nX3ByZWFtYmxlOgotICAgICAgICAgICAgICAgIHNlbGYuX2N1ci5kZWZlY3RzLmFwcGVuZChlcnJvcnMuU3RhcnRCb3VuZGFyeU5vdEZvdW5kRGVmZWN0KCkpCisgICAgICAgICAgICAgICAgZGVmZWN0ID0gZXJyb3JzLlN0YXJ0Qm91bmRhcnlOb3RGb3VuZERlZmVjdCgpCisgICAgICAgICAgICAgICAgc2VsZi5wb2xpY3kuaGFuZGxlX2RlZmVjdChzZWxmLl9jdXIsIGRlZmVjdCkKICAgICAgICAgICAgICAgICBzZWxmLl9jdXIuc2V0X3BheWxvYWQoRU1QVFlTVFJJTkcuam9pbihwcmVhbWJsZSkpCiAgICAgICAgICAgICAgICAgZXBpbG9ndWUgPSBbXQogICAgICAgICAgICAgICAgIGZvciBsaW5lIGluIHNlbGYuX2lucHV0OgpAQCAtNDQwLDcgKzQ1Myw3IEBACiAgICAgICAgICAgICAgICAgICAgICMgaXMgaWxsZWdhbCwgc28gbGV0J3Mgbm90ZSB0aGUgZGVmZWN0LCBzdG9yZSB0aGUgaWxsZWdhbAogICAgICAgICAgICAgICAgICAgICAjIGxpbmUsIGFuZCBpZ25vcmUgaXQgZm9yIHB1cnBvc2VzIG9mIGhlYWRlcnMuCiAgICAgICAgICAgICAgICAgICAgIGRlZmVjdCA9IGVycm9ycy5GaXJzdEhlYWRlckxpbmVJc0NvbnRpbnVhdGlvbkRlZmVjdChsaW5lKQotICAgICAgICAgICAgICAgICAgICBzZWxmLl9jdXIuZGVmZWN0cy5hcHBlbmQoZGVmZWN0KQorICAgICAgICAgICAgICAgICAgICBzZWxmLnBvbGljeS5oYW5kbGVfZGVmZWN0KHNlbGYuX2N1ciwgZGVmZWN0KQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgICAgIGxhc3R2YWx1ZS5hcHBlbmQobGluZSkKICAgICAgICAgICAgICAgICBjb250aW51ZQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL2dlbmVyYXRvci5weSBiL0xpYi9lbWFpbC9nZW5lcmF0b3IucHkKaW5kZXggZjBlN2E5NS4uZDhiOGZhOSAxMDA2NDQKLS0tIGEvTGliL2VtYWlsL2dlbmVyYXRvci5weQorKysgYi9MaWIvZW1haWwvZ2VuZXJhdG9yLnB5CkBAIC0xMyw4ICsxMywxMCBAQAogaW1wb3J0IHdhcm5pbmdzCiAKIGZyb20gaW8gaW1wb3J0IFN0cmluZ0lPLCBCeXRlc0lPCitmcm9tIGVtYWlsIGltcG9ydCBwb2xpY3kKIGZyb20gZW1haWwuaGVhZGVyIGltcG9ydCBIZWFkZXIKIGZyb20gZW1haWwubWVzc2FnZSBpbXBvcnQgX2hhc19zdXJyb2dhdGVzCitpbXBvcnQgZW1haWwuY2hhcnNldCBhcyBfY2hhcnNldAogCiBVTkRFUlNDT1JFID0gJ18nCiBOTCA9ICdcbicgICMgWFhYOiBubyBsb25nZXIgdXNlZCBieSB0aGUgY29kZSBiZWxvdy4KQEAgLTMzLDcgKzM1LDggQEAKICAgICAjIFB1YmxpYyBpbnRlcmZhY2UKICAgICAjCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgb3V0ZnAsIG1hbmdsZV9mcm9tXz1UcnVlLCBtYXhoZWFkZXJsZW49NzgpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBvdXRmcCwgbWFuZ2xlX2Zyb21fPVRydWUsIG1heGhlYWRlcmxlbj1Ob25lLCAqLAorICAgICAgICAgICAgICAgICBwb2xpY3k9cG9saWN5LmRlZmF1bHQpOgogICAgICAgICAiIiJDcmVhdGUgdGhlIGdlbmVyYXRvciBmb3IgbWVzc2FnZSBmbGF0dGVuaW5nLgogCiAgICAgICAgIG91dGZwIGlzIHRoZSBvdXRwdXQgZmlsZS1saWtlIG9iamVjdCBmb3Igd3JpdGluZyB0aGUgbWVzc2FnZSB0by4gIEl0CkBAIC00OSwxNiArNTIsMjMgQEAKICAgICAgICAgZGVmaW5lZCBpbiB0aGUgSGVhZGVyIGNsYXNzLiAgU2V0IG1heGhlYWRlcmxlbiB0byB6ZXJvIHRvIGRpc2FibGUKICAgICAgICAgaGVhZGVyIHdyYXBwaW5nLiAgVGhlIGRlZmF1bHQgaXMgNzgsIGFzIHJlY29tbWVuZGVkIChidXQgbm90IHJlcXVpcmVkKQogICAgICAgICBieSBSRkMgMjgyMi4KKworICAgICAgICBUaGUgcG9saWN5IGtleXdvcmQgc3BlY2lmaWVzIGEgcG9saWN5IG9iamVjdCB0aGF0IGNvbnRyb2xzIGEgbnVtYmVyIG9mCisgICAgICAgIGFzcGVjdHMgb2YgdGhlIGdlbmVyYXRvcidzIG9wZXJhdGlvbi4gIFRoZSBkZWZhdWx0IHBvbGljeSBtYWludGFpbnMKKyAgICAgICAgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4KKwogICAgICAgICAiIiIKICAgICAgICAgc2VsZi5fZnAgPSBvdXRmcAogICAgICAgICBzZWxmLl9tYW5nbGVfZnJvbV8gPSBtYW5nbGVfZnJvbV8KLSAgICAgICAgc2VsZi5fbWF4aGVhZGVybGVuID0gbWF4aGVhZGVybGVuCisgICAgICAgIHNlbGYuX21heGhlYWRlcmxlbiA9IChtYXhoZWFkZXJsZW4gaWYgbWF4aGVhZGVybGVuIGlzIG5vdCBOb25lIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGljeS5tYXhfbGluZV9sZW5ndGgpCisgICAgICAgIHNlbGYucG9saWN5ID0gcG9saWN5CiAKICAgICBkZWYgd3JpdGUoc2VsZiwgcyk6CiAgICAgICAgICMgSnVzdCBkZWxlZ2F0ZSB0byB0aGUgZmlsZSBvYmplY3QKICAgICAgICAgc2VsZi5fZnAud3JpdGUocykKIAotICAgIGRlZiBmbGF0dGVuKHNlbGYsIG1zZywgdW5peGZyb209RmFsc2UsIGxpbmVzZXA9J1xuJyk6CisgICAgZGVmIGZsYXR0ZW4oc2VsZiwgbXNnLCB1bml4ZnJvbT1GYWxzZSwgbGluZXNlcD1Ob25lKToKICAgICAgICAgciIiIlByaW50IHRoZSBtZXNzYWdlIG9iamVjdCB0cmVlIHJvb3RlZCBhdCBtc2cgdG8gdGhlIG91dHB1dCBmaWxlCiAgICAgICAgIHNwZWNpZmllZCB3aGVuIHRoZSBHZW5lcmF0b3IgaW5zdGFuY2Ugd2FzIGNyZWF0ZWQuCiAKQEAgLTcwLDE3ICs4MCwxNSBAQAogICAgICAgICBOb3RlIHRoYXQgZm9yIHN1Ym9iamVjdHMsIG5vIEZyb21fIGxpbmUgaXMgcHJpbnRlZC4KIAogICAgICAgICBsaW5lc2VwIHNwZWNpZmllcyB0aGUgY2hhcmFjdGVycyB1c2VkIHRvIGluZGljYXRlIGEgbmV3IGxpbmUgaW4KLSAgICAgICAgdGhlIG91dHB1dC4gIFRoZSBkZWZhdWx0IHZhbHVlIGlzIHRoZSBtb3N0IHVzZWZ1bCBmb3IgdHlwaWNhbAotICAgICAgICBQeXRob24gYXBwbGljYXRpb25zLCBidXQgaXQgY2FuIGJlIHNldCB0byBcclxuIHRvIHByb2R1Y2UgUkZDLWNvbXBsaWFudAotICAgICAgICBsaW5lIHNlcGFyYXRvcnMgd2hlbiBuZWVkZWQuCisgICAgICAgIHRoZSBvdXRwdXQuICBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBkZXRlcm1pbmVkIGJ5IHRoZSBwb2xpY3kuCiAKICAgICAgICAgIiIiCiAgICAgICAgICMgV2UgdXNlIHRoZSBfWFhYIGNvbnN0YW50cyBmb3Igb3BlcmF0aW5nIG9uIGRhdGEgdGhhdCBjb21lcyBkaXJlY3RseQogICAgICAgICAjIGZyb20gdGhlIG1zZywgYW5kIF9lbmNvZGVkX1hYWCBjb25zdGFudHMgZm9yIG9wZXJhdGluZyBvbiBkYXRhIHRoYXQKICAgICAgICAgIyBoYXMgYWxyZWFkeSBiZWVuIGNvbnZlcnRlZCAodG8gYnl0ZXMgaW4gdGhlIEJ5dGVzR2VuZXJhdG9yKSBhbmQKICAgICAgICAgIyBpbnNlcnRlZCBpbnRvIGEgdGVtcG9yYXJ5IGJ1ZmZlci4KLSAgICAgICAgc2VsZi5fTkwgPSBsaW5lc2VwCi0gICAgICAgIHNlbGYuX2VuY29kZWRfTkwgPSBzZWxmLl9lbmNvZGUobGluZXNlcCkKKyAgICAgICAgc2VsZi5fTkwgPSBsaW5lc2VwIGlmIGxpbmVzZXAgaXMgbm90IE5vbmUgZWxzZSBzZWxmLnBvbGljeS5saW5lc2VwCisgICAgICAgIHNlbGYuX2VuY29kZWRfTkwgPSBzZWxmLl9lbmNvZGUoc2VsZi5fTkwpCiAgICAgICAgIHNlbGYuX0VNUFRZID0gJycKICAgICAgICAgc2VsZi5fZW5jb2RlZF9FTVRQWSA9IHNlbGYuX2VuY29kZSgnJykKICAgICAgICAgaWYgdW5peGZyb206CkBAIC0yOTcsMTAgKzMwNSwxMiBAQAogICAgICAgICAjIG1lc3NhZ2UvcmZjODIyLiAgU3VjaCBtZXNzYWdlcyBhcmUgZ2VuZXJhdGVkIGJ5LCBmb3IgZXhhbXBsZSwKICAgICAgICAgIyBHcm91cHdpc2Ugd2hlbiBmb3J3YXJkaW5nIHVuYWRvcm5lZCBtZXNzYWdlcy4gIChJc3N1ZSA3OTcwLikgIFNvCiAgICAgICAgICMgaW4gdGhhdCBjYXNlIHdlIGp1c3QgZW1pdCB0aGUgc3RyaW5nIGJvZHkuCi0gICAgICAgIHBheWxvYWQgPSBtc2cuZ2V0X3BheWxvYWQoKQorICAgICAgICBwYXlsb2FkID0gbXNnLl9wYXlsb2FkCiAgICAgICAgIGlmIGlzaW5zdGFuY2UocGF5bG9hZCwgbGlzdCk6CiAgICAgICAgICAgICBnLmZsYXR0ZW4obXNnLmdldF9wYXlsb2FkKDApLCB1bml4ZnJvbT1GYWxzZSwgbGluZXNlcD1zZWxmLl9OTCkKICAgICAgICAgICAgIHBheWxvYWQgPSBzLmdldHZhbHVlKCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHBheWxvYWQgPSBzZWxmLl9lbmNvZGUocGF5bG9hZCkKICAgICAgICAgc2VsZi5fZnAud3JpdGUocGF5bG9hZCkKIAogICAgICMgVGhpcyB1c2VkIHRvIGJlIGEgbW9kdWxlIGxldmVsIGZ1bmN0aW9uOyB3ZSB1c2UgYSBjbGFzc21ldGhvZCBmb3IgdGhpcwpAQCAtMzM2LDcgKzM0NiwxMCBAQAogCiAgICAgRnVuY3Rpb25hbGx5IGlkZW50aWNhbCB0byB0aGUgYmFzZSBHZW5lcmF0b3IgZXhjZXB0IHRoYXQgdGhlIG91dHB1dCBpcwogICAgIGJ5dGVzIGFuZCBub3Qgc3RyaW5nLiAgV2hlbiBzdXJyb2dhdGVzIHdlcmUgdXNlZCBpbiB0aGUgaW5wdXQgdG8gZW5jb2RlCi0gICAgYnl0ZXMsIHRoZXNlIGFyZSBkZWNvZGVkIGJhY2sgdG8gYnl0ZXMgZm9yIG91dHB1dC4KKyAgICBieXRlcywgdGhlc2UgYXJlIGRlY29kZWQgYmFjayB0byBieXRlcyBmb3Igb3V0cHV0LiAgSWYgdGhlIHBvbGljeSBoYXMKKyAgICBtdXN0X2JlXzdiaXQgc2V0IHRydWUsIHRoZW4gdGhlIG1lc3NhZ2UgaXMgdHJhbnNmb3JtZWQgc3VjaCB0aGF0IHRoZQorICAgIG5vbi1BU0NJSSBieXRlcyBhcmUgcHJvcGVybHkgY29udGVudCB0cmFuc2ZlciBlbmNvZGVkLCB1c2luZyB0aGUKKyAgICBjaGFyc2V0IHVua25vd24tOGJpdC4KIAogICAgIFRoZSBvdXRmcCBvYmplY3QgbXVzdCBhY2NlcHQgYnl0ZXMgaW4gaXRzIHdyaXRlIG1ldGhvZC4KICAgICAiIiIKQEAgLTM1OSwyMSArMzcyLDIyIEBACiAgICAgICAgICMgc3RyaW5ncyB3aXRoIDhiaXQgYnl0ZXMuCiAgICAgICAgIGZvciBoLCB2IGluIG1zZy5faGVhZGVyczoKICAgICAgICAgICAgIHNlbGYud3JpdGUoJyVzOiAnICUgaCkKLSAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UodiwgSGVhZGVyKToKLSAgICAgICAgICAgICAgICBzZWxmLndyaXRlKHYuZW5jb2RlKG1heGxpbmVsZW49c2VsZi5fbWF4aGVhZGVybGVuKStOTCkKLSAgICAgICAgICAgIGVsaWYgX2hhc19zdXJyb2dhdGVzKHYpOgotICAgICAgICAgICAgICAgICMgSWYgd2UgaGF2ZSByYXcgOGJpdCBkYXRhIGluIGEgYnl0ZSBzdHJpbmcsIHdlIGhhdmUgbm8gaWRlYQotICAgICAgICAgICAgICAgICMgd2hhdCB0aGUgZW5jb2RpbmcgaXMuICBUaGVyZSBpcyBubyBzYWZlIHdheSB0byBzcGxpdCB0aGlzCi0gICAgICAgICAgICAgICAgIyBzdHJpbmcuICBJZiBpdCdzIGFzY2lpLXN1YnNldCwgdGhlbiB3ZSBjb3VsZCBkbyBhIG5vcm1hbAotICAgICAgICAgICAgICAgICMgYXNjaWkgc3BsaXQsIGJ1dCBpZiBpdCdzIG11bHRpYnl0ZSB0aGVuIHdlIGNvdWxkIGJyZWFrIHRoZQotICAgICAgICAgICAgICAgICMgc3RyaW5nLiAgVGhlcmUncyBubyB3YXkgdG8ga25vdyBzbyB0aGUgbGVhc3QgaGFybSBzZWVtcyB0bwotICAgICAgICAgICAgICAgICMgYmUgdG8gbm90IHNwbGl0IHRoZSBzdHJpbmcgYW5kIHJpc2sgaXQgYmVpbmcgdG9vIGxvbmcuCi0gICAgICAgICAgICAgICAgc2VsZi53cml0ZSh2K05MKQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAjIEhlYWRlcidzIGdvdCBsb3RzIG9mIHNtYXJ0cyBhbmQgdGhpcyBzdHJpbmcgaXMgc2FmZS4uLgotICAgICAgICAgICAgICAgIGhlYWRlciA9IEhlYWRlcih2LCBtYXhsaW5lbGVuPXNlbGYuX21heGhlYWRlcmxlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyX25hbWU9aCkKLSAgICAgICAgICAgICAgICBzZWxmLndyaXRlKGhlYWRlci5lbmNvZGUobGluZXNlcD1zZWxmLl9OTCkrc2VsZi5fTkwpCisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHYsIHN0cik6CisgICAgICAgICAgICAgICAgaWYgX2hhc19zdXJyb2dhdGVzKHYpOgorICAgICAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5wb2xpY3kubXVzdF9iZV83Yml0OgorICAgICAgICAgICAgICAgICAgICAgICAgIyBJZiB3ZSBoYXZlIHJhdyA4Yml0IGRhdGEgaW4gYSBieXRlIHN0cmluZywgd2UgaGF2ZSBubyBpZGVhCisgICAgICAgICAgICAgICAgICAgICAgICAjIHdoYXQgdGhlIGVuY29kaW5nIGlzLiAgVGhlcmUgaXMgbm8gc2FmZSB3YXkgdG8gc3BsaXQgdGhpcworICAgICAgICAgICAgICAgICAgICAgICAgIyBzdHJpbmcuICBJZiBpdCdzIGFzY2lpLXN1YnNldCwgdGhlbiB3ZSBjb3VsZCBkbyBhIG5vcm1hbAorICAgICAgICAgICAgICAgICAgICAgICAgIyBhc2NpaSBzcGxpdCwgYnV0IGlmIGl0J3MgbXVsdGlieXRlIHRoZW4gd2UgY291bGQgYnJlYWsgdGhlCisgICAgICAgICAgICAgICAgICAgICAgICAjIHN0cmluZy4gIFRoZXJlJ3Mgbm8gd2F5IHRvIGtub3cgc28gdGhlIGxlYXN0IGhhcm0gc2VlbXMgdG8KKyAgICAgICAgICAgICAgICAgICAgICAgICMgYmUgdG8gbm90IHNwbGl0IHRoZSBzdHJpbmcgYW5kIHJpc2sgaXQgYmVpbmcgdG9vIGxvbmcuCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLndyaXRlKHYrTkwpCisgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICAgICBoID0gSGVhZGVyKHYsIGNoYXJzZXQ9X2NoYXJzZXQuVU5LTk9XTjhCSVQsIGhlYWRlcl9uYW1lPWgpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgaCA9IEhlYWRlcih2LCBoZWFkZXJfbmFtZT1oKQorICAgICAgICAgICAgc2VsZi53cml0ZShoLmVuY29kZShsaW5lc2VwPXNlbGYuX05MLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhsaW5lbGVuPXNlbGYuX21heGhlYWRlcmxlbikrc2VsZi5fTkwpCiAgICAgICAgICMgQSBibGFuayBsaW5lIGFsd2F5cyBzZXBhcmF0ZXMgaGVhZGVycyBmcm9tIGJvZHkKICAgICAgICAgc2VsZi53cml0ZShzZWxmLl9OTCkKIApAQCAtMzgyLDcgKzM5Niw3IEBACiAgICAgICAgICMganVzdCB3cml0ZSBpdCBiYWNrIG91dC4KICAgICAgICAgaWYgbXNnLl9wYXlsb2FkIGlzIE5vbmU6CiAgICAgICAgICAgICByZXR1cm4KLSAgICAgICAgaWYgX2hhc19zdXJyb2dhdGVzKG1zZy5fcGF5bG9hZCk6CisgICAgICAgIGlmIF9oYXNfc3Vycm9nYXRlcyhtc2cuX3BheWxvYWQpIGFuZCBub3Qgc2VsZi5wb2xpY3kubXVzdF9iZV83Yml0OgogICAgICAgICAgICAgc2VsZi53cml0ZShtc2cuX3BheWxvYWQpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBzdXBlcihCeXRlc0dlbmVyYXRvcixzZWxmKS5faGFuZGxlX3RleHQobXNnKQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3BhcnNlci5weSBiL0xpYi9lbWFpbC9wYXJzZXIucHkKaW5kZXggNmNhYWZmNS4uMGY5MjE2MCAxMDA2NDQKLS0tIGEvTGliL2VtYWlsL3BhcnNlci5weQorKysgYi9MaWIvZW1haWwvcGFyc2VyLnB5CkBAIC00LDE4ICs0LDE5IEBACiAKICIiIkEgcGFyc2VyIG9mIFJGQyAyODIyIGFuZCBNSU1FIGVtYWlsIG1lc3NhZ2VzLiIiIgogCi1fX2FsbF9fID0gWydQYXJzZXInLCAnSGVhZGVyUGFyc2VyJ10KK19fYWxsX18gPSBbJ1BhcnNlcicsICdIZWFkZXJQYXJzZXInLCAnQnl0ZXNQYXJzZXInLCAnQnl0ZXNIZWFkZXJQYXJzZXInXQogCiBpbXBvcnQgd2FybmluZ3MKIGZyb20gaW8gaW1wb3J0IFN0cmluZ0lPLCBUZXh0SU9XcmFwcGVyCiAKIGZyb20gZW1haWwuZmVlZHBhcnNlciBpbXBvcnQgRmVlZFBhcnNlcgogZnJvbSBlbWFpbC5tZXNzYWdlIGltcG9ydCBNZXNzYWdlCitmcm9tIGVtYWlsIGltcG9ydCBwb2xpY3kKIAogCiAMCiBjbGFzcyBQYXJzZXI6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3cyk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIF9jbGFzcz1NZXNzYWdlLCAqLCBwb2xpY3k9cG9saWN5LmRlZmF1bHQpOgogICAgICAgICAiIiJQYXJzZXIgb2YgUkZDIDI4MjIgYW5kIE1JTUUgZW1haWwgbWVzc2FnZXMuCiAKICAgICAgICAgQ3JlYXRlcyBhbiBpbi1tZW1vcnkgb2JqZWN0IHRyZWUgcmVwcmVzZW50aW5nIHRoZSBlbWFpbCBtZXNzYWdlLCB3aGljaApAQCAtMzAsMjggKzMxLDE0IEBACiAgICAgICAgIF9jbGFzcyBpcyB0aGUgY2xhc3MgdG8gaW5zdGFudGlhdGUgZm9yIG5ldyBtZXNzYWdlIG9iamVjdHMgd2hlbiB0aGV5CiAgICAgICAgIG11c3QgYmUgY3JlYXRlZC4gIFRoaXMgY2xhc3MgbXVzdCBoYXZlIGEgY29uc3RydWN0b3IgdGhhdCBjYW4gdGFrZQogICAgICAgICB6ZXJvIGFyZ3VtZW50cy4gIERlZmF1bHQgaXMgTWVzc2FnZS5NZXNzYWdlLgorCisgICAgICAgIFRoZSBwb2xpY3kga2V5d29yZCBzcGVjaWZpZXMgYSBwb2xpY3kgb2JqZWN0IHRoYXQgY29udHJvbHMgYSBudW1iZXIgb2YKKyAgICAgICAgYXNwZWN0cyBvZiB0aGUgcGFyc2VyJ3Mgb3BlcmF0aW9uLiAgVGhlIGRlZmF1bHQgcG9saWN5IG1haW50YWlucworICAgICAgICBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgorCiAgICAgICAgICIiIgotICAgICAgICBpZiBsZW4oYXJncykgPj0gMToKLSAgICAgICAgICAgIGlmICdfY2xhc3MnIGluIGt3czoKLSAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIk11bHRpcGxlIHZhbHVlcyBmb3Iga2V5d29yZCBhcmcgJ19jbGFzcyciKQotICAgICAgICAgICAga3dzWydfY2xhc3MnXSA9IGFyZ3NbMF0KLSAgICAgICAgaWYgbGVuKGFyZ3MpID09IDI6Ci0gICAgICAgICAgICBpZiAnc3RyaWN0JyBpbiBrd3M6Ci0gICAgICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJNdWx0aXBsZSB2YWx1ZXMgZm9yIGtleXdvcmQgYXJnICdzdHJpY3QnIikKLSAgICAgICAgICAgIGt3c1snc3RyaWN0J10gPSBhcmdzWzFdCi0gICAgICAgIGlmIGxlbihhcmdzKSA+IDI6Ci0gICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoJ1RvbyBtYW55IGFyZ3VtZW50cycpCi0gICAgICAgIGlmICdfY2xhc3MnIGluIGt3czoKLSAgICAgICAgICAgIHNlbGYuX2NsYXNzID0ga3dzWydfY2xhc3MnXQotICAgICAgICAgICAgZGVsIGt3c1snX2NsYXNzJ10KLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNlbGYuX2NsYXNzID0gTWVzc2FnZQotICAgICAgICBpZiAnc3RyaWN0JyBpbiBrd3M6Ci0gICAgICAgICAgICB3YXJuaW5ncy53YXJuKCInc3RyaWN0JyBhcmd1bWVudCBpcyBkZXByZWNhdGVkIChhbmQgaWdub3JlZCkiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBEZXByZWNhdGlvbldhcm5pbmcsIDIpCi0gICAgICAgICAgICBkZWwga3dzWydzdHJpY3QnXQotICAgICAgICBpZiBrd3M6Ci0gICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoJ1VuZXhwZWN0ZWQga2V5d29yZCBhcmd1bWVudHMnKQorICAgICAgICBzZWxmLl9jbGFzcyA9IF9jbGFzcworICAgICAgICBzZWxmLnBvbGljeSA9IHBvbGljeQogCiAgICAgZGVmIHBhcnNlKHNlbGYsIGZwLCBoZWFkZXJzb25seT1GYWxzZSk6CiAgICAgICAgICIiIkNyZWF0ZSBhIG1lc3NhZ2Ugc3RydWN0dXJlIGZyb20gdGhlIGRhdGEgaW4gYSBmaWxlLgpAQCAtNjEsNyArNDgsNyBAQAogICAgICAgICBwYXJzaW5nIGFmdGVyIHJlYWRpbmcgdGhlIGhlYWRlcnMgb3Igbm90LiAgVGhlIGRlZmF1bHQgaXMgRmFsc2UsCiAgICAgICAgIG1lYW5pbmcgaXQgcGFyc2VzIHRoZSBlbnRpcmUgY29udGVudHMgb2YgdGhlIGZpbGUuCiAgICAgICAgICIiIgotICAgICAgICBmZWVkcGFyc2VyID0gRmVlZFBhcnNlcihzZWxmLl9jbGFzcykKKyAgICAgICAgZmVlZHBhcnNlciA9IEZlZWRQYXJzZXIoc2VsZi5fY2xhc3MsIHBvbGljeT1zZWxmLnBvbGljeSkKICAgICAgICAgaWYgaGVhZGVyc29ubHk6CiAgICAgICAgICAgICBmZWVkcGFyc2VyLl9zZXRfaGVhZGVyc29ubHkoKQogICAgICAgICB3aGlsZSBUcnVlOgpAQCAtMTM0LDMgKzEyMSwxMSBAQAogICAgICAgICAiIiIKICAgICAgICAgdGV4dCA9IHRleHQuZGVjb2RlKCdBU0NJSScsIGVycm9ycz0nc3Vycm9nYXRlZXNjYXBlJykKICAgICAgICAgcmV0dXJuIHNlbGYucGFyc2VyLnBhcnNlc3RyKHRleHQsIGhlYWRlcnNvbmx5KQorCisKK2NsYXNzIEJ5dGVzSGVhZGVyUGFyc2VyKEJ5dGVzUGFyc2VyKToKKyAgICBkZWYgcGFyc2Uoc2VsZiwgZnAsIGhlYWRlcnNvbmx5PVRydWUpOgorICAgICAgICByZXR1cm4gQnl0ZXNQYXJzZXIucGFyc2Uoc2VsZiwgZnAsIGhlYWRlcnNvbmx5PVRydWUpCisKKyAgICBkZWYgcGFyc2VieXRlcyhzZWxmLCB0ZXh0LCBoZWFkZXJzb25seT1UcnVlKToKKyAgICAgICAgcmV0dXJuIEJ5dGVzUGFyc2VyLnBhcnNlYnl0ZXMoc2VsZiwgdGV4dCwgaGVhZGVyc29ubHk9VHJ1ZSkKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC9wb2xpY3kucHkgYi9MaWIvZW1haWwvcG9saWN5LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4ODc3YTIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvZW1haWwvcG9saWN5LnB5CkBAIC0wLDAgKzEsMTc0IEBACisiIiJQb2xpY3kgZnJhbWV3b3JrIGZvciB0aGUgZW1haWwgcGFja2FnZS4KKworQWxsb3dzIGZpbmUgZ3JhaW5lZCBmZWF0dXJlIGNvbnRyb2wgb2YgaG93IHRoZSBwYWNrYWdlIHBhcnNlcyBhbmQgZW1pdHMgZGF0YS4KKyIiIgorCitfX2FsbF9fID0gWworICAgICdQb2xpY3knLAorICAgICdkZWZhdWx0JywKKyAgICAnc3RyaWN0JywKKyAgICAnU01UUCcsCisgICAgJ0hUVFAnLAorICAgIF0KKworCitjbGFzcyBfUG9saWN5QmFzZToKKworICAgICIiIlBvbGljeSBPYmplY3QgYmFzaWMgZnJhbWV3b3JrLgorCisgICAgVGhpcyBjbGFzcyBpcyB1c2VsZXNzIHVubGVzcyBzdWJjbGFzc2VkLiAgQSBzdWJjbGFzcyBzaG91bGQgZGVmaW5lCisgICAgY2xhc3MgYXR0cmlidXRlcyB3aXRoIGRlZmF1bHRzIGZvciBhbnkgdmFsdWVzIHRoYXQgYXJlIHRvIGJlCisgICAgbWFuYWdlZCBieSB0aGUgUG9saWN5IG9iamVjdC4gIFRoZSBjb25zdHJ1Y3RvciB3aWxsIHRoZW4gYWxsb3cKKyAgICBub24tZGVmYXVsdCB2YWx1ZXMgdG8gYmUgc2V0IGZvciB0aGVzZSBhdHRyaWJ1dGVzIGF0IGluc3RhbmNlCisgICAgY3JlYXRpb24gdGltZS4gIFRoZSBpbnN0YW5jZSB3aWxsIGJlIGNhbGxhYmxlLCB0YWtpbmcgdGhlc2Ugc2FtZQorICAgIGF0dHJpYnV0ZXMga2V5d29yZCBhcmd1bWVudHMsIGFuZCByZXR1cm5pbmcgYSBuZXcgaW5zdGFuY2UKKyAgICBpZGVudGljYWwgdG8gdGhlIGNhbGxlZCBpbnN0YW5jZSBleGNlcHQgZm9yIHRob3NlIHZhbHVlcyBjaGFuZ2VkCisgICAgYnkgdGhlIGtleXdvcmQgYXJndW1lbnRzLiAgSW5zdGFuY2VzIG1heSBiZSBhZGRlZCwgeWllbGRpbmcgbmV3CisgICAgaW5zdGFuY2VzIHdpdGggYW55IG5vbi1kZWZhdWx0IHZhbHVlcyBmcm9tIHRoZSByaWdodCBoYW5kCisgICAgb3BlcmFuZCBvdmVycmlkaW5nIHRob3NlIGluIHRoZSBsZWZ0IGhhbmQgb3BlcmFuZC4gIFRoYXQgaXMsCisKKyAgICAgICAgQSArIEIgPT0gQSg8bm9uLWRlZmF1bHQgdmFsdWVzIG9mIEI+KQorCisgICAgVGhlIHJlcHIgb2YgYW4gaW5zdGFuY2UgY2FuIGJlIHVzZWQgdG8gcmVjb25zdHJ1Y3QgdGhlIG9iamVjdAorICAgIGlmIGFuZCBvbmx5IGlmIHRoZSByZXByIG9mIHRoZSB2YWx1ZXMgY2FuIGJlIHVzZWQgdG8gcmVjb25zdHJ1Y3QKKyAgICB0aG9zZSB2YWx1ZXMuCisKKyAgICAiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqKmt3KToKKyAgICAgICAgIiIiQ3JlYXRlIG5ldyBQb2xpY3ksIHBvc3NpYmx5IG92ZXJyaWRpbmcgc29tZSBkZWZhdWx0cy4KKworICAgICAgICBTZWUgY2xhc3MgZG9jc3RyaW5nIGZvciBhIGxpc3Qgb2Ygb3ZlcnJpZGFibGUgYXR0cmlidXRlcy4KKworICAgICAgICAiIiIKKyAgICAgICAgZm9yIG5hbWUsIHZhbHVlIGluIGt3Lml0ZW1zKCk6CisgICAgICAgICAgICBpZiBoYXNhdHRyKHNlbGYsIG5hbWUpOgorICAgICAgICAgICAgICAgIHN1cGVyKF9Qb2xpY3lCYXNlLHNlbGYpLl9fc2V0YXR0cl9fKG5hbWUsIHZhbHVlKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICJ7IXJ9IGlzIGFuIGludmFsaWQga2V5d29yZCBhcmd1bWVudCBmb3Ige30iLmZvcm1hdCgKKyAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUsIHNlbGYuX19jbGFzc19fLl9fbmFtZV9fKSkKKworICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKKyAgICAgICAgYXJncyA9IFsgInt9PXshcn0iLmZvcm1hdChuYW1lLCB2YWx1ZSkKKyAgICAgICAgICAgICAgICAgZm9yIG5hbWUsIHZhbHVlIGluIHNlbGYuX19kaWN0X18uaXRlbXMoKSBdCisgICAgICAgIHJldHVybiAie30oe30pIi5mb3JtYXQoc2VsZi5fX2NsYXNzX18uX19uYW1lX18sIGFyZ3MgaWYgYXJncyBlbHNlICcnKQorCisgICAgZGVmIGNsb25lKHNlbGYsICoqa3cpOgorICAgICAgICAiIiJSZXR1cm4gYSBuZXcgaW5zdGFuY2Ugd2l0aCBzcGVjaWZpZWQgYXR0cmlidXRlcyBjaGFuZ2VkLgorCisgICAgICAgIFRoZSBuZXcgaW5zdGFuY2UgaGFzIHRoZSBzYW1lIGF0dHJpYnV0ZSB2YWx1ZXMgYXMgdGhlIGN1cnJlbnQgb2JqZWN0LAorICAgICAgICBleGNlcHQgZm9yIHRoZSBjaGFuZ2VzIHBhc3NlZCBpbiBhcyBrZXl3b3JkIGFyZ3VtZW50cy4KKworICAgICAgICAiIiIKKyAgICAgICAgZm9yIGF0dHIsIHZhbHVlIGluIHNlbGYuX19kaWN0X18uaXRlbXMoKToKKyAgICAgICAgICAgIGlmIGF0dHIgbm90IGluIGt3OgorICAgICAgICAgICAgICAgIGt3W2F0dHJdID0gdmFsdWUKKyAgICAgICAgcmV0dXJuIHNlbGYuX19jbGFzc19fKCoqa3cpCisKKyAgICBkZWYgX19zZXRhdHRyX18oc2VsZiwgbmFtZSwgdmFsdWUpOgorICAgICAgICBpZiBoYXNhdHRyKHNlbGYsIG5hbWUpOgorICAgICAgICAgICAgbXNnID0gInshcn0gb2JqZWN0IGF0dHJpYnV0ZSB7IXJ9IGlzIHJlYWQtb25seSIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG1zZyA9ICJ7IXJ9IG9iamVjdCBoYXMgbm8gYXR0cmlidXRlIHshcn0iCisgICAgICAgIHJhaXNlIEF0dHJpYnV0ZUVycm9yKG1zZy5mb3JtYXQoc2VsZi5fX2NsYXNzX18uX19uYW1lX18sIG5hbWUpKQorCisgICAgZGVmIF9fYWRkX18oc2VsZiwgb3RoZXIpOgorICAgICAgICAiIiJOb24tZGVmYXVsdCB2YWx1ZXMgZnJvbSByaWdodCBvcGVyYW5kIG92ZXJyaWRlIHRob3NlIGZyb20gbGVmdC4KKworICAgICAgICBUaGUgb2JqZWN0IHJldHVybmVkIGlzIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBzdWJjbGFzcy4KKworICAgICAgICAiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuY2xvbmUoKipvdGhlci5fX2RpY3RfXykKKworCitjbGFzcyBQb2xpY3koX1BvbGljeUJhc2UpOgorCisgICAgIiIiQ29udHJvbHMgZm9yIGhvdyBtZXNzYWdlcyBhcmUgaW50ZXJwcmV0ZWQgYW5kIGZvcm1hdHRlZC4KKworICAgIE1vc3Qgb2YgdGhlIGNsYXNzZXMgYW5kIG1hbnkgb2YgdGhlIG1ldGhvZHMgaW4gdGhlIGVtYWlsIHBhY2thZ2UKKyAgICBhY2NlcHQgUG9saWN5IG9iamVjdHMgYXMgcGFyYW1ldGVycy4gIEEgUG9saWN5IG9iamVjdCBjb250YWlucyBhIHNldAorICAgIG9mIHZhbHVlcyBhbmQgZnVuY3Rpb25zIHRoYXQgY29udHJvbCBob3cgaW5wdXQgaXMgaW50ZXJwcmV0ZWQgYW5kIGhvdworICAgIG91dHB1dCBpcyByZW5kZXJlZC4gIEZvciBleGFtcGxlLCB0aGUgcGFyYW1ldGVyICdyYWlzZV9vbl9kZWZlY3QnCisgICAgY29udHJvbHMgd2hldGhlciBvciBub3QgYW4gUkZDIHZpb2xhdGlvbiB0aHJvd3MgYW4gZXJyb3Igb3Igbm90LAorICAgIHdoaWxlICdtYXhfbGluZV9sZW5ndGgnIGNvbnRyb2xzIHRoZSBtYXhpbXVtIGxlbmd0aCBvZiBvdXRwdXQgbGluZXMKKyAgICB3aGVuIGEgTWVzc2FnZSBpcyBzZXJpYWxpemVkLgorCisgICAgQW55IHZhbGlkIGF0dHJpYnV0ZSBtYXkgYmUgb3ZlcnJpZGRlbiB3aGVuIGEgUG9saWN5IGlzIGNyZWF0ZWQgYnkKKyAgICBwYXNzaW5nIGl0IGFzIGEga2V5d29yZCBhcmd1bWVudCB0byB0aGUgY29uc3RydWN0b3IuICBQb2xpY3kKKyAgICBvYmplY3RzIGFyZSBpbW11dGFibGUsIGJ1dCBhIG5ldyBQb2xpY3kgb2JqZWN0IGNhbiBiZSBjcmVhdGVkCisgICAgd2l0aCBvbmx5IGNlcnRhaW4gdmFsdWVzIGNoYW5nZWQgYnkgY2FsbGluZyB0aGUgUG9saWN5IGluc3RhbmNlCisgICAgd2l0aCBrZXl3b3JkIGFyZ3VtZW50cy4gIFBvbGljeSBvYmplY3RzIGNhbiBhbHNvIGJlIGFkZGVkLAorICAgIHByb2R1Y2luZyBhIG5ldyBQb2xpY3kgb2JqZWN0IGluIHdoaWNoIHRoZSBub24tZGVmYXVsdCBhdHRyaWJ1dGVzCisgICAgc2V0IGluIHRoZSByaWdodCBoYW5kIG9wZXJhbmQgb3ZlcndyaXRlIHRob3NlIHNwZWNpZmllZCBpbiB0aGUKKyAgICBsZWZ0IG9wZXJhbmQuCisKKyAgICBTZXR0YWJsZSBhdHRyaWJ1dGVzOgorCisgICAgcmFpc2Vfb25fZGVmZWN0ICAgICAtLSBJZiB0cnVlLCB0aGVuIGRlZmVjdHMgc2hvdWxkIGJlIHJhaXNlZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgYXMgZXJyb3JzLiAgRGVmYXVsdCBGYWxzZS4KKworICAgIGxpbmVzZXAgICAgICAgICAgICAgLS0gc3RyaW5nIGNvbnRhaW5pbmcgdGhlIHZhbHVlIHRvIHVzZSBhcworICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VwYXJhdGlvbiBiZXR3ZWVuIG91dHB1dCBsaW5lcy4gIERlZmF1bHQgJ1xuJy4KKworICAgIG11c3RfYmVfN2JpdCAgICAgICAgLS0gb3V0cHV0IG11c3QgY29udGFpbiBvbmx5IDdiaXQgY2xlYW4gZGF0YS4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHQgRmFsc2UuCisKKyAgICBtYXhfbGluZV9sZW5ndGggICAgIC0tIG1heGltdW0gbGVuZ3RoIG9mIGxpbmVzLCBleGNsdWRpbmcgJ2xpbmVzZXAnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZHVyaW5nIHNlcmlhbGl6YXRpb24uICBOb25lIG1lYW5zIG5vIGxpbmUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHdyYXBwaW5nIGlzIGRvbmUuICBEZWZhdWx0IGlzIDc4LgorCisgICAgTWV0aG9kczoKKworICAgIHJlZ2lzdGVyX2RlZmVjdChvYmosIGRlZmVjdCkKKyAgICAgICAgZGVmZWN0IGlzIGEgRGVmZWN0IGluc3RhbmNlLiAgVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gYXBwZW5kcyBkZWZlY3QKKyAgICAgICAgdG8gdGhlIG9ianMgJ2RlZmVjdHMnIGF0dHJpYnV0ZS4KKworICAgIGhhbmRsZV9kZWZlY3Qob2JqLCBkZWZlY3QpCisgICAgICAgIGludGVuZGVkIHRvIGJlIGNhbGxlZCBieSBwYXJzZXIgY29kZSB0aGF0IGZpbmRzIGEgZGVmZWN0LiAgSWYKKyAgICAgICAgcmFpc2Vfb25fZGVmZWN0IGlzIFRydWUsIGRlZmVjdCBpcyByYWlzZWQgYXMgYW4gZXJyb3IsIG90aGVyd2lzZQorICAgICAgICByZWdpc3Rlcl9kZWZlY3QgaXMgY2FsbGVkLgorCisgICAgIiIiCisKKyAgICByYWlzZV9vbl9kZWZlY3QgPSBGYWxzZQorICAgIGxpbmVzZXAgPSAnXG4nCisgICAgbXVzdF9iZV83Yml0ID0gRmFsc2UKKyAgICBtYXhfbGluZV9sZW5ndGggPSA3OAorCisgICAgZGVmIGhhbmRsZV9kZWZlY3Qoc2VsZiwgb2JqLCBkZWZlY3QpOgorICAgICAgICAiIiJCYXNlZCBvbiBwb2xpY3ksIGVpdGhlciByYWlzZSBkZWZlY3Qgb3IgY2FsbCByZWdpc3Rlcl9kZWZlY3QuCisKKyAgICAgICAgICAgIGhhbmRsZV9kZWZlY3Qob2JqLCBkZWZlY3QpCisKKyAgICAgICAgZGVmZWN0IHNob3VsZCBiZSBhIERlZmVjdCBzdWJjbGFzcywgYnV0IGluIGFueSBjYXNlIG11c3QgYmUgYW4KKyAgICAgICAgRXhjZXB0aW9uIHN1YmNsYXNzLiAgb2JqIGlzIHRoZSBvYmplY3Qgb24gd2hpY2ggdGhlIGRlZmVjdCBzaG91bGQgYmUKKyAgICAgICAgcmVnaXN0ZXJlZCBpZiBpdCBpcyBub3QgcmFpc2VkLiAgSWYgdGhlIHJhaXNlX29uX2RlZmVjdCBpcyBUcnVlLCB0aGUKKyAgICAgICAgZGVmZWN0IGlzIHJhaXNlZCBhcyBhbiBlcnJvciwgb3RoZXJ3aXNlIHRoZSBvYmplY3QgYW5kIHRoZSBkZWZlY3QgYXJlCisgICAgICAgIHBhc3NlZCB0byByZWdpc3Rlcl9kZWZlY3QuCisKKyAgICAgICAgVGhpcyBjbGFzcyBpcyBpbnRlbmRlZCB0byBiZSBjYWxsZWQgYnkgcGFyc2VycyB0aGF0IGRpc2NvdmVyIGRlZmVjdHMsCisgICAgICAgIGFuZCB3aWxsIG5vdCBiZSBjYWxsZWQgZnJvbSBjb2RlIHVzaW5nIHRoZSBsaWJyYXJ5IHVubGVzcyB0aGF0IGNvZGUgaXMKKyAgICAgICAgaW1wbGVtZW50aW5nIGFuIGFsdGVybmF0ZSBwYXJzZXIuCisKKyAgICAgICAgIiIiCisgICAgICAgIGlmIHNlbGYucmFpc2Vfb25fZGVmZWN0OgorICAgICAgICAgICAgcmFpc2UgZGVmZWN0CisgICAgICAgIHNlbGYucmVnaXN0ZXJfZGVmZWN0KG9iaiwgZGVmZWN0KQorCisgICAgZGVmIHJlZ2lzdGVyX2RlZmVjdChzZWxmLCBvYmosIGRlZmVjdCk6CisgICAgICAgICIiIlJlY29yZCAnZGVmZWN0JyBvbiAnb2JqJy4KKworICAgICAgICBDYWxsZWQgYnkgaGFuZGxlX2RlZmVjdCBpZiByYWlzZV9vbl9kZWZlY3QgaXMgRmFsc2UuICBUaGlzIG1ldGhvZCBpcworICAgICAgICBwYXJ0IG9mIHRoZSBQb2xpY3kgQVBJIHNvIHRoYXQgUG9saWN5IHN1YmNsYXNzZXMgY2FuIGltcGxlbWVudCBjdXN0b20KKyAgICAgICAgZGVmZWN0IGhhbmRsaW5nLiAgVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gY2FsbHMgdGhlIGFwcGVuZCBtZXRob2QKKyAgICAgICAgb2YgdGhlIGRlZmVjdHMgYXR0cmlidXRlIG9mIG9iai4KKworICAgICAgICAiIiIKKyAgICAgICAgb2JqLmRlZmVjdHMuYXBwZW5kKGRlZmVjdCkKKworCitkZWZhdWx0ID0gUG9saWN5KCkKK3N0cmljdCA9IGRlZmF1bHQuY2xvbmUocmFpc2Vfb25fZGVmZWN0PVRydWUpCitTTVRQID0gZGVmYXVsdC5jbG9uZShsaW5lc2VwPSdcclxuJykKK0hUVFAgPSBkZWZhdWx0LmNsb25lKGxpbmVzZXA9J1xyXG4nLCBtYXhfbGluZV9sZW5ndGg9Tm9uZSkKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC91dGlscy5weSBiL0xpYi9lbWFpbC91dGlscy5weQppbmRleCBhYzRkYTM3Li5hZWNlYTY1IDEwMDY0NAotLS0gYS9MaWIvZW1haWwvdXRpbHMucHkKKysrIGIvTGliL2VtYWlsL3V0aWxzLnB5CkBAIC0xMSwxMiArMTEsMTQgQEAKICAgICAnZW5jb2RlX3JmYzIyMzEnLAogICAgICdmb3JtYXRhZGRyJywKICAgICAnZm9ybWF0ZGF0ZScsCisgICAgJ2Zvcm1hdF9kYXRldGltZScsCiAgICAgJ2dldGFkZHJlc3NlcycsCiAgICAgJ21ha2VfbXNnaWQnLAogICAgICdta3RpbWVfdHonLAogICAgICdwYXJzZWFkZHInLAogICAgICdwYXJzZWRhdGUnLAogICAgICdwYXJzZWRhdGVfdHonLAorICAgICdwYXJzZWRhdGVfdG9fZGF0ZXRpbWUnLAogICAgICd1bnF1b3RlJywKICAgICBdCiAKQEAgLTI2LDYgKzI4LDcgQEAKIGltcG9ydCBiYXNlNjQKIGltcG9ydCByYW5kb20KIGltcG9ydCBzb2NrZXQKK2ltcG9ydCBkYXRldGltZQogaW1wb3J0IHVybGxpYi5wYXJzZQogaW1wb3J0IHdhcm5pbmdzCiBmcm9tIGlvIGltcG9ydCBTdHJpbmdJTwpAQCAtMzcsMTEgKzQwLDEzIEBACiAjIFdlIG5lZWQgd29ybWFyb3VuZHMgZm9yIGJ1Z3MgaW4gdGhlc2UgbWV0aG9kcyBpbiBvbGRlciBQeXRob25zIChzZWUgYmVsb3cpCiBmcm9tIGVtYWlsLl9wYXJzZWFkZHIgaW1wb3J0IHBhcnNlZGF0ZSBhcyBfcGFyc2VkYXRlCiBmcm9tIGVtYWlsLl9wYXJzZWFkZHIgaW1wb3J0IHBhcnNlZGF0ZV90eiBhcyBfcGFyc2VkYXRlX3R6Citmcm9tIGVtYWlsLl9wYXJzZWFkZHIgaW1wb3J0IF9wYXJzZWRhdGVfdHogYXMgX19wYXJzZWRhdGVfdHoKIAogZnJvbSBxdW9wcmkgaW1wb3J0IGRlY29kZXN0cmluZyBhcyBfcWRlY29kZQogCiAjIEludHJhcGFja2FnZSBpbXBvcnRzCiBmcm9tIGVtYWlsLmVuY29kZXJzIGltcG9ydCBfYmVuY29kZSwgX3FlbmNvZGUKK2Zyb20gZW1haWwuY2hhcnNldCBpbXBvcnQgQ2hhcnNldAogCiBDT01NQVNQQUNFID0gJywgJwogRU1QVFlTVFJJTkcgPSAnJwpAQCAtNTYsMjEgKzYxLDM2IEBACiAKICMgSGVscGVycwogCi1kZWYgZm9ybWF0YWRkcihwYWlyKToKK2RlZiBmb3JtYXRhZGRyKHBhaXIsIGNoYXJzZXQ9J3V0Zi04Jyk6CiAgICAgIiIiVGhlIGludmVyc2Ugb2YgcGFyc2VhZGRyKCksIHRoaXMgdGFrZXMgYSAyLXR1cGxlIG9mIHRoZSBmb3JtCiAgICAgKHJlYWxuYW1lLCBlbWFpbF9hZGRyZXNzKSBhbmQgcmV0dXJucyB0aGUgc3RyaW5nIHZhbHVlIHN1aXRhYmxlCiAgICAgZm9yIGFuIFJGQyAyODIyIEZyb20sIFRvIG9yIENjIGhlYWRlci4KIAogICAgIElmIHRoZSBmaXJzdCBlbGVtZW50IG9mIHBhaXIgaXMgZmFsc2UsIHRoZW4gdGhlIHNlY29uZCBlbGVtZW50IGlzCiAgICAgcmV0dXJuZWQgdW5tb2RpZmllZC4KKworICAgIE9wdGlvbmFsIGNoYXJzZXQgaWYgZ2l2ZW4gaXMgdGhlIGNoYXJhY3RlciBzZXQgdGhhdCBpcyB1c2VkIHRvIGVuY29kZQorICAgIHJlYWxuYW1lIGluIGNhc2UgcmVhbG5hbWUgaXMgbm90IEFTQ0lJIHNhZmUuICBDYW4gYmUgYW4gaW5zdGFuY2Ugb2Ygc3RyIG9yCisgICAgYSBDaGFyc2V0LWxpa2Ugb2JqZWN0IHdoaWNoIGhhcyBhIGhlYWRlcl9lbmNvZGUgbWV0aG9kLiAgRGVmYXVsdCBpcworICAgICd1dGYtOCcuCiAgICAgIiIiCiAgICAgbmFtZSwgYWRkcmVzcyA9IHBhaXIKKyAgICAjIFRoZSBhZGRyZXNzIE1VU1QgKHBlciBSRkMpIGJlIGFzY2lpLCBzbyB0aHJvdyBhIFVuaWNvZGVFcnJvciBpZiBpdCBpc24ndC4KKyAgICBhZGRyZXNzLmVuY29kZSgnYXNjaWknKQogICAgIGlmIG5hbWU6Ci0gICAgICAgIHF1b3RlcyA9ICcnCi0gICAgICAgIGlmIHNwZWNpYWxzcmUuc2VhcmNoKG5hbWUpOgotICAgICAgICAgICAgcXVvdGVzID0gJyInCi0gICAgICAgIG5hbWUgPSBlc2NhcGVzcmUuc3ViKHInXFxcZzwwPicsIG5hbWUpCi0gICAgICAgIHJldHVybiAnJXMlcyVzIDwlcz4nICUgKHF1b3RlcywgbmFtZSwgcXVvdGVzLCBhZGRyZXNzKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBuYW1lLmVuY29kZSgnYXNjaWknKQorICAgICAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShjaGFyc2V0LCBzdHIpOgorICAgICAgICAgICAgICAgIGNoYXJzZXQgPSBDaGFyc2V0KGNoYXJzZXQpCisgICAgICAgICAgICBlbmNvZGVkX25hbWUgPSBjaGFyc2V0LmhlYWRlcl9lbmNvZGUobmFtZSkKKyAgICAgICAgICAgIHJldHVybiAiJXMgPCVzPiIgJSAoZW5jb2RlZF9uYW1lLCBhZGRyZXNzKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcXVvdGVzID0gJycKKyAgICAgICAgICAgIGlmIHNwZWNpYWxzcmUuc2VhcmNoKG5hbWUpOgorICAgICAgICAgICAgICAgIHF1b3RlcyA9ICciJworICAgICAgICAgICAgbmFtZSA9IGVzY2FwZXNyZS5zdWIocidcXFxnPDA+JywgbmFtZSkKKyAgICAgICAgICAgIHJldHVybiAnJXMlcyVzIDwlcz4nICUgKHF1b3RlcywgbmFtZSwgcXVvdGVzLCBhZGRyZXNzKQogICAgIHJldHVybiBhZGRyZXNzCiAKIApAQCAtOTQsNiArMTE0LDE0IEBACiAgICcnJywgcmUuVkVSQk9TRSB8IHJlLklHTk9SRUNBU0UpCiAKIAorZGVmIF9mb3JtYXRfdGltZXR1cGxlX2FuZF96b25lKHRpbWV0dXBsZSwgem9uZSk6CisgICAgcmV0dXJuICclcywgJTAyZCAlcyAlMDRkICUwMmQ6JTAyZDolMDJkICVzJyAlICgKKyAgICAgICAgWydNb24nLCAnVHVlJywgJ1dlZCcsICdUaHUnLCAnRnJpJywgJ1NhdCcsICdTdW4nXVt0aW1ldHVwbGVbNl1dLAorICAgICAgICB0aW1ldHVwbGVbMl0sCisgICAgICAgIFsnSmFuJywgJ0ZlYicsICdNYXInLCAnQXByJywgJ01heScsICdKdW4nLAorICAgICAgICAgJ0p1bCcsICdBdWcnLCAnU2VwJywgJ09jdCcsICdOb3YnLCAnRGVjJ11bdGltZXR1cGxlWzFdIC0gMV0sCisgICAgICAgIHRpbWV0dXBsZVswXSwgdGltZXR1cGxlWzNdLCB0aW1ldHVwbGVbNF0sIHRpbWV0dXBsZVs1XSwKKyAgICAgICAgem9uZSkKIAogZGVmIGZvcm1hdGRhdGUodGltZXZhbD1Ob25lLCBsb2NhbHRpbWU9RmFsc2UsIHVzZWdtdD1GYWxzZSk6CiAgICAgIiIiUmV0dXJucyBhIGRhdGUgc3RyaW5nIGFzIHNwZWNpZmllZCBieSBSRkMgMjgyMiwgZS5nLjoKQEAgLTEzOCwxNCArMTY2LDI1IEBACiAgICAgICAgICAgICB6b25lID0gJ0dNVCcKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHpvbmUgPSAnLTAwMDAnCi0gICAgcmV0dXJuICclcywgJTAyZCAlcyAlMDRkICUwMmQ6JTAyZDolMDJkICVzJyAlICgKLSAgICAgICAgWydNb24nLCAnVHVlJywgJ1dlZCcsICdUaHUnLCAnRnJpJywgJ1NhdCcsICdTdW4nXVtub3dbNl1dLAotICAgICAgICBub3dbMl0sCi0gICAgICAgIFsnSmFuJywgJ0ZlYicsICdNYXInLCAnQXByJywgJ01heScsICdKdW4nLAotICAgICAgICAgJ0p1bCcsICdBdWcnLCAnU2VwJywgJ09jdCcsICdOb3YnLCAnRGVjJ11bbm93WzFdIC0gMV0sCi0gICAgICAgIG5vd1swXSwgbm93WzNdLCBub3dbNF0sIG5vd1s1XSwKLSAgICAgICAgem9uZSkKKyAgICByZXR1cm4gX2Zvcm1hdF90aW1ldHVwbGVfYW5kX3pvbmUobm93LCB6b25lKQogCitkZWYgZm9ybWF0X2RhdGV0aW1lKGR0LCB1c2VnbXQ9RmFsc2UpOgorICAgICIiIlR1cm4gYSBkYXRldGltZSBpbnRvIGEgZGF0ZSBzdHJpbmcgYXMgc3BlY2lmaWVkIGluIFJGQyAyODIyLgorCisgICAgSWYgdXNlZ210IGlzIFRydWUsIGR0IG11c3QgYmUgYW4gYXdhcmUgZGF0ZXRpbWUgd2l0aCBhbiBvZmZzZXQgb2YgemVyby4gIEluCisgICAgdGhpcyBjYXNlICdHTVQnIHdpbGwgYmUgcmVuZGVyZWQgaW5zdGVhZCBvZiB0aGUgbm9ybWFsICswMDAwIHJlcXVpcmVkIGJ5CisgICAgUkZDMjgyMi4gIFRoaXMgaXMgdG8gc3VwcG9ydCBIVFRQIGhlYWRlcnMgaW52b2x2aW5nIGRhdGUgc3RhbXBzLgorICAgICIiIgorICAgIG5vdyA9IGR0LnRpbWV0dXBsZSgpCisgICAgaWYgdXNlZ210OgorICAgICAgICBpZiBkdC50emluZm8gaXMgTm9uZSBvciBkdC50emluZm8gIT0gZGF0ZXRpbWUudGltZXpvbmUudXRjOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigidXNlZ210IG9wdGlvbiByZXF1aXJlcyBhIFVUQyBkYXRldGltZSIpCisgICAgICAgIHpvbmUgPSAnR01UJworICAgIGVsaWYgZHQudHppbmZvIGlzIE5vbmU6CisgICAgICAgIHpvbmUgPSAnLTAwMDAnCisgICAgZWxzZToKKyAgICAgICAgem9uZSA9IGR0LnN0cmZ0aW1lKCIleiIpCisgICAgcmV0dXJuIF9mb3JtYXRfdGltZXR1cGxlX2FuZF96b25lKG5vdywgem9uZSkKIAogCiBkZWYgbWFrZV9tc2dpZChpZHN0cmluZz1Ob25lLCBkb21haW49Tm9uZSk6CkBAIC0xODcsNiArMjI2LDE1IEBACiAgICAgICAgIHJldHVybiBOb25lCiAgICAgcmV0dXJuIF9wYXJzZWRhdGVfdHooZGF0YSkKIAorZGVmIHBhcnNlZGF0ZV90b19kYXRldGltZShkYXRhKToKKyAgICBpZiBub3QgZGF0YToKKyAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAqZHR1cGxlLCB0eiA9IF9fcGFyc2VkYXRlX3R6KGRhdGEpCisgICAgaWYgdHogaXMgTm9uZToKKyAgICAgICAgcmV0dXJuIGRhdGV0aW1lLmRhdGV0aW1lKCpkdHVwbGVbOjZdKQorICAgIHJldHVybiBkYXRldGltZS5kYXRldGltZSgqZHR1cGxlWzo2XSwKKyAgICAgICAgICAgIHR6aW5mbz1kYXRldGltZS50aW1lem9uZShkYXRldGltZS50aW1lZGVsdGEoc2Vjb25kcz10eikpKQorCiAKIGRlZiBwYXJzZWFkZHIoYWRkcik6CiAgICAgYWRkcnMgPSBfQWRkcmVzc0xpc3QoYWRkcikuYWRkcmVzc2xpc3QKZGlmZiAtLWdpdCBhL0xpYi9lbmNvZGluZ3MvY3A2NTAwMS5weSBiL0xpYi9lbmNvZGluZ3MvY3A2NTAwMS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yODdlYjg3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL2VuY29kaW5ncy9jcDY1MDAxLnB5CkBAIC0wLDAgKzEsNDAgQEAKKyIiIgorQ29kZSBwYWdlIDY1MDAxOiBXaW5kb3dzIFVURi04IChDUF9VVEY4KS4KKyIiIgorCitpbXBvcnQgY29kZWNzCitpbXBvcnQgZnVuY3Rvb2xzCisKK2lmIG5vdCBoYXNhdHRyKGNvZGVjcywgJ2NvZGVfcGFnZV9lbmNvZGUnKToKKyAgICByYWlzZSBMb29rdXBFcnJvcigiY3A2NTAwMSBlbmNvZGluZyBpcyBvbmx5IGF2YWlsYWJsZSBvbiBXaW5kb3dzIikKKworIyMjIENvZGVjIEFQSXMKKworZW5jb2RlID0gZnVuY3Rvb2xzLnBhcnRpYWwoY29kZWNzLmNvZGVfcGFnZV9lbmNvZGUsIDY1MDAxKQorZGVjb2RlID0gZnVuY3Rvb2xzLnBhcnRpYWwoY29kZWNzLmNvZGVfcGFnZV9kZWNvZGUsIDY1MDAxKQorCitjbGFzcyBJbmNyZW1lbnRhbEVuY29kZXIoY29kZWNzLkluY3JlbWVudGFsRW5jb2Rlcik6CisgICAgZGVmIGVuY29kZShzZWxmLCBpbnB1dCwgZmluYWw9RmFsc2UpOgorICAgICAgICByZXR1cm4gZW5jb2RlKGlucHV0LCBzZWxmLmVycm9ycylbMF0KKworY2xhc3MgSW5jcmVtZW50YWxEZWNvZGVyKGNvZGVjcy5CdWZmZXJlZEluY3JlbWVudGFsRGVjb2Rlcik6CisgICAgX2J1ZmZlcl9kZWNvZGUgPSBkZWNvZGUKKworY2xhc3MgU3RyZWFtV3JpdGVyKGNvZGVjcy5TdHJlYW1Xcml0ZXIpOgorICAgIGVuY29kZSA9IGVuY29kZQorCitjbGFzcyBTdHJlYW1SZWFkZXIoY29kZWNzLlN0cmVhbVJlYWRlcik6CisgICAgZGVjb2RlID0gZGVjb2RlCisKKyMjIyBlbmNvZGluZ3MgbW9kdWxlIEFQSQorCitkZWYgZ2V0cmVnZW50cnkoKToKKyAgICByZXR1cm4gY29kZWNzLkNvZGVjSW5mbygKKyAgICAgICAgbmFtZT0nY3A2NTAwMScsCisgICAgICAgIGVuY29kZT1lbmNvZGUsCisgICAgICAgIGRlY29kZT1kZWNvZGUsCisgICAgICAgIGluY3JlbWVudGFsZW5jb2Rlcj1JbmNyZW1lbnRhbEVuY29kZXIsCisgICAgICAgIGluY3JlbWVudGFsZGVjb2Rlcj1JbmNyZW1lbnRhbERlY29kZXIsCisgICAgICAgIHN0cmVhbXJlYWRlcj1TdHJlYW1SZWFkZXIsCisgICAgICAgIHN0cmVhbXdyaXRlcj1TdHJlYW1Xcml0ZXIsCisgICAgKQpkaWZmIC0tZ2l0IGEvTGliL2VuY29kaW5ncy9pZG5hLnB5IGIvTGliL2VuY29kaW5ncy9pZG5hLnB5CmluZGV4IDU4M2JkZjEuLmVhNDA1ODUgMTAwNjQ0Ci0tLSBhL0xpYi9lbmNvZGluZ3MvaWRuYS5weQorKysgYi9MaWIvZW5jb2RpbmdzL2lkbmEucHkKQEAgLTE1Myw2ICsxNTMsMjAgQEAKICAgICAgICAgaWYgbm90IGlucHV0OgogICAgICAgICAgICAgcmV0dXJuIGInJywgMAogCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJlc3VsdCA9IGlucHV0LmVuY29kZSgnYXNjaWknKQorICAgICAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBBU0NJSSBuYW1lOiBmYXN0IHBhdGgKKyAgICAgICAgICAgIGxhYmVscyA9IHJlc3VsdC5zcGxpdChiJy4nKQorICAgICAgICAgICAgZm9yIGxhYmVsIGluIGxhYmVsc1s6LTFdOgorICAgICAgICAgICAgICAgIGlmIG5vdCAoMCA8IGxlbihsYWJlbCkgPCA2NCk6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFVuaWNvZGVFcnJvcigibGFiZWwgZW1wdHkgb3IgdG9vIGxvbmciKQorICAgICAgICAgICAgaWYgbGVuKGxhYmVsc1stMV0pID49IDY0OgorICAgICAgICAgICAgICAgIHJhaXNlIFVuaWNvZGVFcnJvcigibGFiZWwgdG9vIGxvbmciKQorICAgICAgICAgICAgcmV0dXJuIHJlc3VsdCwgbGVuKGlucHV0KQorCiAgICAgICAgIHJlc3VsdCA9IGJ5dGVhcnJheSgpCiAgICAgICAgIGxhYmVscyA9IGRvdHMuc3BsaXQoaW5wdXQpCiAgICAgICAgIGlmIGxhYmVscyBhbmQgbm90IGxhYmVsc1stMV06CkBAIC0xNzksNiArMTkzLDE0IEBACiAgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKGlucHV0LCBieXRlcyk6CiAgICAgICAgICAgICAjIFhYWCBvYnZpb3VzbHkgd3JvbmcsIHNlZSAjMzIzMgogICAgICAgICAgICAgaW5wdXQgPSBieXRlcyhpbnB1dCkKKworICAgICAgICBpZiBhY2VfcHJlZml4IG5vdCBpbiBpbnB1dDoKKyAgICAgICAgICAgICMgRmFzdCBwYXRoCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgcmV0dXJuIGlucHV0LmRlY29kZSgnYXNjaWknKSwgbGVuKGlucHV0KQorICAgICAgICAgICAgZXhjZXB0IFVuaWNvZGVEZWNvZGVFcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisKICAgICAgICAgbGFiZWxzID0gaW5wdXQuc3BsaXQoYiIuIikKIAogICAgICAgICBpZiBsYWJlbHMgYW5kIGxlbihsYWJlbHNbLTFdKSA9PSAwOgpkaWZmIC0tZ2l0IGEvTGliL2ZpbGVpbnB1dC5weSBiL0xpYi9maWxlaW5wdXQucHkKaW5kZXggNTU0YmViMi4uZGJiYmIyMSAxMDA2NDQKLS0tIGEvTGliL2ZpbGVpbnB1dC5weQorKysgYi9MaWIvZmlsZWlucHV0LnB5CkBAIC0zOTgsOSArMzk4LDggQEAKIAogCiBkZWYgaG9va19lbmNvZGVkKGVuY29kaW5nKToKLSAgICBpbXBvcnQgY29kZWNzCiAgICAgZGVmIG9wZW5ob29rKGZpbGVuYW1lLCBtb2RlKToKLSAgICAgICAgcmV0dXJuIGNvZGVjcy5vcGVuKGZpbGVuYW1lLCBtb2RlLCBlbmNvZGluZykKKyAgICAgICAgcmV0dXJuIG9wZW4oZmlsZW5hbWUsIG1vZGUsIGVuY29kaW5nPWVuY29kaW5nKQogICAgIHJldHVybiBvcGVuaG9vawogCiAKZGlmZiAtLWdpdCBhL0xpYi9mbm1hdGNoLnB5IGIvTGliL2ZubWF0Y2gucHkKaW5kZXggNzI2ZmJlNS4uZjQ0Njc2OSAxMDA2NDQKLS0tIGEvTGliL2ZubWF0Y2gucHkKKysrIGIvTGliL2ZubWF0Y2gucHkKQEAgLTM1LDkgKzM1LDkgQEAKICAgICBwYXQgPSBvcy5wYXRoLm5vcm1jYXNlKHBhdCkKICAgICByZXR1cm4gZm5tYXRjaGNhc2UobmFtZSwgcGF0KQogCi1AZnVuY3Rvb2xzLmxydV9jYWNoZShtYXhzaXplPTI1MCkKLWRlZiBfY29tcGlsZV9wYXR0ZXJuKHBhdCwgaXNfYnl0ZXM9RmFsc2UpOgotICAgIGlmIGlzX2J5dGVzOgorQGZ1bmN0b29scy5scnVfY2FjaGUobWF4c2l6ZT0yNTAsIHR5cGVkPVRydWUpCitkZWYgX2NvbXBpbGVfcGF0dGVybihwYXQpOgorICAgIGlmIGlzaW5zdGFuY2UocGF0LCBieXRlcyk6CiAgICAgICAgIHBhdF9zdHIgPSBzdHIocGF0LCAnSVNPLTg4NTktMScpCiAgICAgICAgIHJlc19zdHIgPSB0cmFuc2xhdGUocGF0X3N0cikKICAgICAgICAgcmVzID0gYnl0ZXMocmVzX3N0ciwgJ0lTTy04ODU5LTEnKQpAQCAtNDksNyArNDksNyBAQAogICAgICIiIlJldHVybiB0aGUgc3Vic2V0IG9mIHRoZSBsaXN0IE5BTUVTIHRoYXQgbWF0Y2ggUEFULiIiIgogICAgIHJlc3VsdCA9IFtdCiAgICAgcGF0ID0gb3MucGF0aC5ub3JtY2FzZShwYXQpCi0gICAgbWF0Y2ggPSBfY29tcGlsZV9wYXR0ZXJuKHBhdCwgaXNpbnN0YW5jZShwYXQsIGJ5dGVzKSkKKyAgICBtYXRjaCA9IF9jb21waWxlX3BhdHRlcm4ocGF0KQogICAgIGlmIG9zLnBhdGggaXMgcG9zaXhwYXRoOgogICAgICAgICAjIG5vcm1jYXNlIG9uIHBvc2l4IGlzIE5PUC4gT3B0aW1pemUgaXQgYXdheSBmcm9tIHRoZSBsb29wLgogICAgICAgICBmb3IgbmFtZSBpbiBuYW1lczoKQEAgLTY3LDcgKzY3LDcgQEAKICAgICBUaGlzIGlzIGEgdmVyc2lvbiBvZiBmbm1hdGNoKCkgd2hpY2ggZG9lc24ndCBjYXNlLW5vcm1hbGl6ZQogICAgIGl0cyBhcmd1bWVudHMuCiAgICAgIiIiCi0gICAgbWF0Y2ggPSBfY29tcGlsZV9wYXR0ZXJuKHBhdCwgaXNpbnN0YW5jZShwYXQsIGJ5dGVzKSkKKyAgICBtYXRjaCA9IF9jb21waWxlX3BhdHRlcm4ocGF0KQogICAgIHJldHVybiBtYXRjaChuYW1lKSBpcyBub3QgTm9uZQogCiAKZGlmZiAtLWdpdCBhL0xpYi9mdHBsaWIucHkgYi9MaWIvZnRwbGliLnB5CmluZGV4IDhlNTMwMjMuLjE4ODg3YTYgMTAwNjQ0Ci0tLSBhL0xpYi9mdHBsaWIucHkKKysrIGIvTGliL2Z0cGxpYi5weQpAQCAtMTAwLDE0ICsxMDAsMTUgQEAKICAgICBmaWxlID0gTm9uZQogICAgIHdlbGNvbWUgPSBOb25lCiAgICAgcGFzc2l2ZXNlcnZlciA9IDEKLSAgICBlbmNvZGluZyA9ICJsYXRpbjEiCisgICAgZW5jb2RpbmcgPSAibGF0aW4tMSIKIAogICAgICMgSW5pdGlhbGl6YXRpb24gbWV0aG9kIChjYWxsZWQgYnkgY2xhc3MgaW5zdGFudGlhdGlvbikuCiAgICAgIyBJbml0aWFsaXplIGhvc3QgdG8gbG9jYWxob3N0LCBwb3J0IHRvIHN0YW5kYXJkIGZ0cCBwb3J0CiAgICAgIyBPcHRpb25hbCBhcmd1bWVudHMgYXJlIGhvc3QgKGZvciBjb25uZWN0KCkpLAogICAgICMgYW5kIHVzZXIsIHBhc3N3ZCwgYWNjdCAoZm9yIGxvZ2luKCkpCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGhvc3Q9JycsIHVzZXI9JycsIHBhc3N3ZD0nJywgYWNjdD0nJywKLSAgICAgICAgICAgICAgICAgdGltZW91dD1fR0xPQkFMX0RFRkFVTFRfVElNRU9VVCk6CisgICAgICAgICAgICAgICAgIHRpbWVvdXQ9X0dMT0JBTF9ERUZBVUxUX1RJTUVPVVQsIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgorICAgICAgICBzZWxmLnNvdXJjZV9hZGRyZXNzID0gc291cmNlX2FkZHJlc3MKICAgICAgICAgc2VsZi50aW1lb3V0ID0gdGltZW91dAogICAgICAgICBpZiBob3N0OgogICAgICAgICAgICAgc2VsZi5jb25uZWN0KGhvc3QpCkBAIC0xMjgsMTAgKzEyOSwxMiBAQAogICAgICAgICAgICAgICAgIGlmIHNlbGYuc29jayBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICAgICAgc2VsZi5jbG9zZSgpCiAKLSAgICBkZWYgY29ubmVjdChzZWxmLCBob3N0PScnLCBwb3J0PTAsIHRpbWVvdXQ9LTk5OSk6CisgICAgZGVmIGNvbm5lY3Qoc2VsZiwgaG9zdD0nJywgcG9ydD0wLCB0aW1lb3V0PS05OTksIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAnJydDb25uZWN0IHRvIGhvc3QuICBBcmd1bWVudHMgYXJlOgogICAgICAgICAgLSBob3N0OiBob3N0bmFtZSB0byBjb25uZWN0IHRvIChzdHJpbmcsIGRlZmF1bHQgcHJldmlvdXMgaG9zdCkKICAgICAgICAgIC0gcG9ydDogcG9ydCB0byBjb25uZWN0IHRvIChpbnRlZ2VyLCBkZWZhdWx0IHByZXZpb3VzIHBvcnQpCisgICAgICAgICAtIHNvdXJjZV9hZGRyZXNzOiBhIDItdHVwbGUgKGhvc3QsIHBvcnQpIGZvciB0aGUgc29ja2V0IHRvIGJpbmQKKyAgICAgICAgICAgdG8gYXMgaXRzIHNvdXJjZSBhZGRyZXNzIGJlZm9yZSBjb25uZWN0aW5nLgogICAgICAgICAnJycKICAgICAgICAgaWYgaG9zdCAhPSAnJzoKICAgICAgICAgICAgIHNlbGYuaG9zdCA9IGhvc3QKQEAgLTEzOSw3ICsxNDIsMTAgQEAKICAgICAgICAgICAgIHNlbGYucG9ydCA9IHBvcnQKICAgICAgICAgaWYgdGltZW91dCAhPSAtOTk5OgogICAgICAgICAgICAgc2VsZi50aW1lb3V0ID0gdGltZW91dAotICAgICAgICBzZWxmLnNvY2sgPSBzb2NrZXQuY3JlYXRlX2Nvbm5lY3Rpb24oKHNlbGYuaG9zdCwgc2VsZi5wb3J0KSwgc2VsZi50aW1lb3V0KQorICAgICAgICBpZiBzb3VyY2VfYWRkcmVzcyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuc291cmNlX2FkZHJlc3MgPSBzb3VyY2VfYWRkcmVzcworICAgICAgICBzZWxmLnNvY2sgPSBzb2NrZXQuY3JlYXRlX2Nvbm5lY3Rpb24oKHNlbGYuaG9zdCwgc2VsZi5wb3J0KSwgc2VsZi50aW1lb3V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlX2FkZHJlc3M9c2VsZi5zb3VyY2VfYWRkcmVzcykKICAgICAgICAgc2VsZi5hZiA9IHNlbGYuc29jay5mYW1pbHkKICAgICAgICAgc2VsZi5maWxlID0gc2VsZi5zb2NrLm1ha2VmaWxlKCdyJywgZW5jb2Rpbmc9c2VsZi5lbmNvZGluZykKICAgICAgICAgc2VsZi53ZWxjb21lID0gc2VsZi5nZXRyZXNwKCkKQEAgLTE2OSwxMCArMTc1LDggQEAKIAogICAgICMgSW50ZXJuYWw6ICJzYW5pdGl6ZSIgYSBzdHJpbmcgZm9yIHByaW50aW5nCiAgICAgZGVmIHNhbml0aXplKHNlbGYsIHMpOgotICAgICAgICBpZiBzWzo1XSA9PSAncGFzcyAnIG9yIHNbOjVdID09ICdQQVNTICc6Ci0gICAgICAgICAgICBpID0gbGVuKHMpCi0gICAgICAgICAgICB3aGlsZSBpID4gNSBhbmQgc1tpLTFdIGluIHsnXHInLCAnXG4nfToKLSAgICAgICAgICAgICAgICBpID0gaS0xCisgICAgICAgIGlmIHNbOjVdIGluIHsncGFzcyAnLCAnUEFTUyAnfToKKyAgICAgICAgICAgIGkgPSBsZW4ocy5yc3RyaXAoJ1xyXG4nKSkKICAgICAgICAgICAgIHMgPSBzWzo1XSArICcqJyooaS01KSArIHNbaTpdCiAgICAgICAgIHJldHVybiByZXByKHMpCiAKQEAgLTMzNSw3ICszMzksOCBAQAogICAgICAgICBzaXplID0gTm9uZQogICAgICAgICBpZiBzZWxmLnBhc3NpdmVzZXJ2ZXI6CiAgICAgICAgICAgICBob3N0LCBwb3J0ID0gc2VsZi5tYWtlcGFzdigpCi0gICAgICAgICAgICBjb25uID0gc29ja2V0LmNyZWF0ZV9jb25uZWN0aW9uKChob3N0LCBwb3J0KSwgc2VsZi50aW1lb3V0KQorICAgICAgICAgICAgY29ubiA9IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoaG9zdCwgcG9ydCksIHNlbGYudGltZW91dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlX2FkZHJlc3M9c2VsZi5zb3VyY2VfYWRkcmVzcykKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBpZiByZXN0IGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgICAgICBzZWxmLnNlbmRjbWQoIlJFU1QgJXMiICUgcmVzdCkKQEAgLTM1NCw4ICszNTksNyBAQAogICAgICAgICAgICAgICAgIGNvbm4uY2xvc2UoKQogICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzb2NrID0gc2VsZi5tYWtlcG9ydCgpCi0gICAgICAgICAgICB0cnk6CisgICAgICAgICAgICB3aXRoIHNlbGYubWFrZXBvcnQoKSBhcyBzb2NrOgogICAgICAgICAgICAgICAgIGlmIHJlc3QgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2VuZGNtZCgiUkVTVCAlcyIgJSByZXN0KQogICAgICAgICAgICAgICAgIHJlc3AgPSBzZWxmLnNlbmRjbWQoY21kKQpAQCAtMzY3LDggKzM3MSw2IEBACiAgICAgICAgICAgICAgICAgY29ubiwgc29ja2FkZHIgPSBzb2NrLmFjY2VwdCgpCiAgICAgICAgICAgICAgICAgaWYgc2VsZi50aW1lb3V0IGlzIG5vdCBfR0xPQkFMX0RFRkFVTFRfVElNRU9VVDoKICAgICAgICAgICAgICAgICAgICAgY29ubi5zZXR0aW1lb3V0KHNlbGYudGltZW91dCkKLSAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgc29jay5jbG9zZSgpCiAgICAgICAgIGlmIHJlc3BbOjNdID09ICcxNTAnOgogICAgICAgICAgICAgIyB0aGlzIGlzIGNvbmRpdGlvbmFsIGluIGNhc2Ugd2UgcmVjZWl2ZWQgYSAxMjUKICAgICAgICAgICAgIHNpemUgPSBwYXJzZTE1MChyZXNwKQpAQCAtNDI2LDcgKzQyOCw3IEBACiAgICAgICAgICIiIlJldHJpZXZlIGRhdGEgaW4gbGluZSBtb2RlLiAgQSBuZXcgcG9ydCBpcyBjcmVhdGVkIGZvciB5b3UuCiAKICAgICAgICAgQXJnczoKLSAgICAgICAgICBjbWQ6IEEgUkVUUiwgTElTVCwgTkxTVCwgb3IgTUxTRCBjb21tYW5kLgorICAgICAgICAgIGNtZDogQSBSRVRSLCBMSVNULCBvciBOTFNUIGNvbW1hbmQuCiAgICAgICAgICAgY2FsbGJhY2s6IEFuIG9wdGlvbmFsIHNpbmdsZSBwYXJhbWV0ZXIgY2FsbGFibGUgdGhhdCBpcyBjYWxsZWQKICAgICAgICAgICAgICAgICAgICAgZm9yIGVhY2ggbGluZSB3aXRoIHRoZSB0cmFpbGluZyBDUkxGIHN0cmlwcGVkLgogICAgICAgICAgICAgICAgICAgICBbZGVmYXVsdDogcHJpbnRfbGluZSgpXQpAQCAtNTI3LDYgKzUyOSwzNCBAQAogICAgICAgICAgICAgICAgIGNtZCA9IGNtZCArICgnICcgKyBhcmcpCiAgICAgICAgIHNlbGYucmV0cmxpbmVzKGNtZCwgZnVuYykKIAorICAgIGRlZiBtbHNkKHNlbGYsIHBhdGg9IiIsIGZhY3RzPVtdKToKKyAgICAgICAgJycnTGlzdCBhIGRpcmVjdG9yeSBpbiBhIHN0YW5kYXJkaXplZCBmb3JtYXQgYnkgdXNpbmcgTUxTRAorICAgICAgICBjb21tYW5kIChSRkMtMzY1OSkuIElmIHBhdGggaXMgb21pdHRlZCB0aGUgY3VycmVudCBkaXJlY3RvcnkKKyAgICAgICAgaXMgYXNzdW1lZC4gImZhY3RzIiBpcyBhIGxpc3Qgb2Ygc3RyaW5ncyByZXByZXNlbnRpbmcgdGhlIHR5cGUKKyAgICAgICAgb2YgaW5mb3JtYXRpb24gZGVzaXJlZCAoZS5nLiBbInR5cGUiLCAic2l6ZSIsICJwZXJtIl0pLgorCisgICAgICAgIFJldHVybiBhIGdlbmVyYXRvciBvYmplY3QgeWllbGRpbmcgYSB0dXBsZSBvZiB0d28gZWxlbWVudHMKKyAgICAgICAgZm9yIGV2ZXJ5IGZpbGUgZm91bmQgaW4gcGF0aC4KKyAgICAgICAgRmlyc3QgZWxlbWVudCBpcyB0aGUgZmlsZSBuYW1lLCB0aGUgc2Vjb25kIG9uZSBpcyBhIGRpY3Rpb25hcnkKKyAgICAgICAgaW5jbHVkaW5nIGEgdmFyaWFibGUgbnVtYmVyIG9mICJmYWN0cyIgZGVwZW5kaW5nIG9uIHRoZSBzZXJ2ZXIKKyAgICAgICAgYW5kIHdoZXRoZXIgImZhY3RzIiBhcmd1bWVudCBoYXMgYmVlbiBwcm92aWRlZC4KKyAgICAgICAgJycnCisgICAgICAgIGlmIGZhY3RzOgorICAgICAgICAgICAgc2VsZi5zZW5kY21kKCJPUFRTIE1MU1QgIiArICI7Ii5qb2luKGZhY3RzKSArICI7IikKKyAgICAgICAgaWYgcGF0aDoKKyAgICAgICAgICAgIGNtZCA9ICJNTFNEICVzIiAlIHBhdGgKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGNtZCA9ICJNTFNEIgorICAgICAgICBsaW5lcyA9IFtdCisgICAgICAgIHNlbGYucmV0cmxpbmVzKGNtZCwgbGluZXMuYXBwZW5kKQorICAgICAgICBmb3IgbGluZSBpbiBsaW5lczoKKyAgICAgICAgICAgIGZhY3RzX2ZvdW5kLCBfLCBuYW1lID0gbGluZS5yc3RyaXAoQ1JMRikucGFydGl0aW9uKCcgJykKKyAgICAgICAgICAgIGVudHJ5ID0ge30KKyAgICAgICAgICAgIGZvciBmYWN0IGluIGZhY3RzX2ZvdW5kWzotMV0uc3BsaXQoIjsiKToKKyAgICAgICAgICAgICAgICBrZXksIF8sIHZhbHVlID0gZmFjdC5wYXJ0aXRpb24oIj0iKQorICAgICAgICAgICAgICAgIGVudHJ5W2tleS5sb3dlcigpXSA9IHZhbHVlCisgICAgICAgICAgICB5aWVsZCAobmFtZSwgZW50cnkpCisKICAgICBkZWYgcmVuYW1lKHNlbGYsIGZyb21uYW1lLCB0b25hbWUpOgogICAgICAgICAnJydSZW5hbWUgYSBmaWxlLicnJwogICAgICAgICByZXNwID0gc2VsZi5zZW5kY21kKCdSTkZSICcgKyBmcm9tbmFtZSkKQEAgLTU2MSwxMCArNTkxLDcgQEAKICAgICAgICAgcmVzcCA9IHNlbGYuc2VuZGNtZCgnU0laRSAnICsgZmlsZW5hbWUpCiAgICAgICAgIGlmIHJlc3BbOjNdID09ICcyMTMnOgogICAgICAgICAgICAgcyA9IHJlc3BbMzpdLnN0cmlwKCkKLSAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICByZXR1cm4gaW50KHMpCi0gICAgICAgICAgICBleGNlcHQgKE92ZXJmbG93RXJyb3IsIFZhbHVlRXJyb3IpOgotICAgICAgICAgICAgICAgIHJldHVybiBpbnQocykKKyAgICAgICAgICAgIHJldHVybiBpbnQocykKIAogICAgIGRlZiBta2Qoc2VsZiwgZGlybmFtZSk6CiAgICAgICAgICcnJ01ha2UgYSBkaXJlY3RvcnksIHJldHVybiBpdHMgZnVsbCBwYXRobmFtZS4nJycKQEAgLTU5NiwxMSArNjIzLDExIEBACiAKICAgICBkZWYgY2xvc2Uoc2VsZik6CiAgICAgICAgICcnJ0Nsb3NlIHRoZSBjb25uZWN0aW9uIHdpdGhvdXQgYXNzdW1pbmcgYW55dGhpbmcgYWJvdXQgaXQuJycnCi0gICAgICAgIGlmIHNlbGYuZmlsZToKKyAgICAgICAgaWYgc2VsZi5maWxlIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgc2VsZi5maWxlLmNsb3NlKCkKKyAgICAgICAgaWYgc2VsZi5zb2NrIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgc2VsZi5zb2NrLmNsb3NlKCkKLSAgICAgICAgICAgIHNlbGYuZmlsZSA9IHNlbGYuc29jayA9IE5vbmUKLQorICAgICAgICBzZWxmLmZpbGUgPSBzZWxmLnNvY2sgPSBOb25lCiAKIHRyeToKICAgICBpbXBvcnQgc3NsCkBAIC02NDQsNyArNjcxLDcgQEAKIAogICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdD0nJywgdXNlcj0nJywgcGFzc3dkPScnLCBhY2N0PScnLCBrZXlmaWxlPU5vbmUsCiAgICAgICAgICAgICAgICAgICAgICBjZXJ0ZmlsZT1Ob25lLCBjb250ZXh0PU5vbmUsCi0gICAgICAgICAgICAgICAgICAgICB0aW1lb3V0PV9HTE9CQUxfREVGQVVMVF9USU1FT1VUKToKKyAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9X0dMT0JBTF9ERUZBVUxUX1RJTUVPVVQsIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAgICAgaWYgY29udGV4dCBpcyBub3QgTm9uZSBhbmQga2V5ZmlsZSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJjb250ZXh0IGFuZCBrZXlmaWxlIGFyZ3VtZW50cyBhcmUgbXV0dWFsbHkgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4Y2x1c2l2ZSIpCkBAIC02NTUsNyArNjgyLDcgQEAKICAgICAgICAgICAgIHNlbGYuY2VydGZpbGUgPSBjZXJ0ZmlsZQogICAgICAgICAgICAgc2VsZi5jb250ZXh0ID0gY29udGV4dAogICAgICAgICAgICAgc2VsZi5fcHJvdF9wID0gRmFsc2UKLSAgICAgICAgICAgIEZUUC5fX2luaXRfXyhzZWxmLCBob3N0LCB1c2VyLCBwYXNzd2QsIGFjY3QsIHRpbWVvdXQpCisgICAgICAgICAgICBGVFAuX19pbml0X18oc2VsZiwgaG9zdCwgdXNlciwgcGFzc3dkLCBhY2N0LCB0aW1lb3V0LCBzb3VyY2VfYWRkcmVzcykKIAogICAgICAgICBkZWYgbG9naW4oc2VsZiwgdXNlcj0nJywgcGFzc3dkPScnLCBhY2N0PScnLCBzZWN1cmU9VHJ1ZSk6CiAgICAgICAgICAgICBpZiBzZWN1cmUgYW5kIG5vdCBpc2luc3RhbmNlKHNlbGYuc29jaywgc3NsLlNTTFNvY2tldCk6CkBAIC02NzksNiArNzA2LDE0IEBACiAgICAgICAgICAgICBzZWxmLmZpbGUgPSBzZWxmLnNvY2subWFrZWZpbGUobW9kZT0ncicsIGVuY29kaW5nPXNlbGYuZW5jb2RpbmcpCiAgICAgICAgICAgICByZXR1cm4gcmVzcAogCisgICAgICAgIGRlZiBjY2Moc2VsZik6CisgICAgICAgICAgICAnJydTd2l0Y2ggYmFjayB0byBhIGNsZWFyLXRleHQgY29udHJvbCBjb25uZWN0aW9uLicnJworICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc2VsZi5zb2NrLCBzc2wuU1NMU29ja2V0KToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJub3QgdXNpbmcgVExTIikKKyAgICAgICAgICAgIHJlc3AgPSBzZWxmLnZvaWRjbWQoJ0NDQycpCisgICAgICAgICAgICBzZWxmLnNvY2sgPSBzZWxmLnNvY2sudW53cmFwKCkKKyAgICAgICAgICAgIHJldHVybiByZXNwCisKICAgICAgICAgZGVmIHByb3RfcChzZWxmKToKICAgICAgICAgICAgICcnJ1NldCB1cCBzZWN1cmUgZGF0YSBjb25uZWN0aW9uLicnJwogICAgICAgICAgICAgIyBQUk9UIGRlZmluZXMgd2hldGhlciBvciBub3QgdGhlIGRhdGEgY2hhbm5lbCBpcyB0byBiZSBwcm90ZWN0ZWQuCkBAIC03MTUsOCArNzUwLDcgQEAKIAogICAgICAgICBkZWYgcmV0cmJpbmFyeShzZWxmLCBjbWQsIGNhbGxiYWNrLCBibG9ja3NpemU9ODE5MiwgcmVzdD1Ob25lKToKICAgICAgICAgICAgIHNlbGYudm9pZGNtZCgnVFlQRSBJJykKLSAgICAgICAgICAgIGNvbm4gPSBzZWxmLnRyYW5zZmVyY21kKGNtZCwgcmVzdCkKLSAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggc2VsZi50cmFuc2ZlcmNtZChjbWQsIHJlc3QpIGFzIGNvbm46CiAgICAgICAgICAgICAgICAgd2hpbGUgMToKICAgICAgICAgICAgICAgICAgICAgZGF0YSA9IGNvbm4ucmVjdihibG9ja3NpemUpCiAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBkYXRhOgpAQCAtNzI1LDggKzc1OSw2IEBACiAgICAgICAgICAgICAgICAgIyBzaHV0ZG93biBzc2wgbGF5ZXIKICAgICAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGNvbm4sIHNzbC5TU0xTb2NrZXQpOgogICAgICAgICAgICAgICAgICAgICBjb25uLnVud3JhcCgpCi0gICAgICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgICAgIGNvbm4uY2xvc2UoKQogICAgICAgICAgICAgcmV0dXJuIHNlbGYudm9pZHJlc3AoKQogCiAgICAgICAgIGRlZiByZXRybGluZXMoc2VsZiwgY21kLCBjYWxsYmFjayA9IE5vbmUpOgpAQCAtNzM0LDcgKzc2Niw3IEBACiAgICAgICAgICAgICByZXNwID0gc2VsZi5zZW5kY21kKCdUWVBFIEEnKQogICAgICAgICAgICAgY29ubiA9IHNlbGYudHJhbnNmZXJjbWQoY21kKQogICAgICAgICAgICAgZnAgPSBjb25uLm1ha2VmaWxlKCdyJywgZW5jb2Rpbmc9c2VsZi5lbmNvZGluZykKLSAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggZnAsIGNvbm46CiAgICAgICAgICAgICAgICAgd2hpbGUgMToKICAgICAgICAgICAgICAgICAgICAgbGluZSA9IGZwLnJlYWRsaW5lKCkKICAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5kZWJ1Z2dpbmcgPiAyOiBwcmludCgnKnJldHIqJywgcmVwcihsaW5lKSkKQEAgLTc0OCwxNSArNzgwLDExIEBACiAgICAgICAgICAgICAgICAgIyBzaHV0ZG93biBzc2wgbGF5ZXIKICAgICAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGNvbm4sIHNzbC5TU0xTb2NrZXQpOgogICAgICAgICAgICAgICAgICAgICBjb25uLnVud3JhcCgpCi0gICAgICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgICAgIGZwLmNsb3NlKCkKLSAgICAgICAgICAgICAgICBjb25uLmNsb3NlKCkKICAgICAgICAgICAgIHJldHVybiBzZWxmLnZvaWRyZXNwKCkKIAogICAgICAgICBkZWYgc3RvcmJpbmFyeShzZWxmLCBjbWQsIGZwLCBibG9ja3NpemU9ODE5MiwgY2FsbGJhY2s9Tm9uZSwgcmVzdD1Ob25lKToKICAgICAgICAgICAgIHNlbGYudm9pZGNtZCgnVFlQRSBJJykKLSAgICAgICAgICAgIGNvbm4gPSBzZWxmLnRyYW5zZmVyY21kKGNtZCwgcmVzdCkKLSAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggc2VsZi50cmFuc2ZlcmNtZChjbWQsIHJlc3QpIGFzIGNvbm46CiAgICAgICAgICAgICAgICAgd2hpbGUgMToKICAgICAgICAgICAgICAgICAgICAgYnVmID0gZnAucmVhZChibG9ja3NpemUpCiAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBidWY6IGJyZWFrCkBAIC03NjUsMTQgKzc5MywxMSBAQAogICAgICAgICAgICAgICAgICMgc2h1dGRvd24gc3NsIGxheWVyCiAgICAgICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShjb25uLCBzc2wuU1NMU29ja2V0KToKICAgICAgICAgICAgICAgICAgICAgY29ubi51bndyYXAoKQotICAgICAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgICAgICBjb25uLmNsb3NlKCkKICAgICAgICAgICAgIHJldHVybiBzZWxmLnZvaWRyZXNwKCkKIAogICAgICAgICBkZWYgc3RvcmxpbmVzKHNlbGYsIGNtZCwgZnAsIGNhbGxiYWNrPU5vbmUpOgogICAgICAgICAgICAgc2VsZi52b2lkY21kKCdUWVBFIEEnKQotICAgICAgICAgICAgY29ubiA9IHNlbGYudHJhbnNmZXJjbWQoY21kKQotICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2l0aCBzZWxmLnRyYW5zZmVyY21kKGNtZCkgYXMgY29ubjoKICAgICAgICAgICAgICAgICB3aGlsZSAxOgogICAgICAgICAgICAgICAgICAgICBidWYgPSBmcC5yZWFkbGluZSgpCiAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBidWY6IGJyZWFrCkBAIC03ODQsOCArODA5LDYgQEAKICAgICAgICAgICAgICAgICAjIHNodXRkb3duIHNzbCBsYXllcgogICAgICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoY29ubiwgc3NsLlNTTFNvY2tldCk6CiAgICAgICAgICAgICAgICAgICAgIGNvbm4udW53cmFwKCkKLSAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgY29ubi5jbG9zZSgpCiAgICAgICAgICAgICByZXR1cm4gc2VsZi52b2lkcmVzcCgpCiAKICAgICAgICAgZGVmIGFib3J0KHNlbGYpOgpAQCAtODE4LDExICs4NDEsNyBAQAogICAgIG0gPSBfMTUwX3JlLm1hdGNoKHJlc3ApCiAgICAgaWYgbm90IG06CiAgICAgICAgIHJldHVybiBOb25lCi0gICAgcyA9IG0uZ3JvdXAoMSkKLSAgICB0cnk6Ci0gICAgICAgIHJldHVybiBpbnQocykKLSAgICBleGNlcHQgKE92ZXJmbG93RXJyb3IsIFZhbHVlRXJyb3IpOgotICAgICAgICByZXR1cm4gaW50KHMpCisgICAgcmV0dXJuIGludChtLmdyb3VwKDEpKQogCiAKIF8yMjdfcmUgPSBOb25lCmRpZmYgLS1naXQgYS9MaWIvZnVuY3Rvb2xzLnB5IGIvTGliL2Z1bmN0b29scy5weQppbmRleCA4NWVhMjU3Li4wOTJiMWFiIDEwMDY0NAotLS0gYS9MaWIvZnVuY3Rvb2xzLnB5CisrKyBiL0xpYi9mdW5jdG9vbHMucHkKQEAgLTIxLDcgKzIxLDggQEAKICMgdXBkYXRlX3dyYXBwZXIoKSBhbmQgd3JhcHMoKSBhcmUgdG9vbHMgdG8gaGVscCB3cml0ZQogIyB3cmFwcGVyIGZ1bmN0aW9ucyB0aGF0IGNhbiBoYW5kbGUgbmFpdmUgaW50cm9zcGVjdGlvbgogCi1XUkFQUEVSX0FTU0lHTk1FTlRTID0gKCdfX21vZHVsZV9fJywgJ19fbmFtZV9fJywgJ19fZG9jX18nLCAnX19hbm5vdGF0aW9uc19fJykKK1dSQVBQRVJfQVNTSUdOTUVOVFMgPSAoJ19fbW9kdWxlX18nLCAnX19uYW1lX18nLCAnX19xdWFsbmFtZV9fJywgJ19fZG9jX18nLAorICAgICAgICAgICAgICAgICAgICAgICAnX19hbm5vdGF0aW9uc19fJykKIFdSQVBQRVJfVVBEQVRFUyA9ICgnX19kaWN0X18nLCkKIGRlZiB1cGRhdGVfd3JhcHBlcih3cmFwcGVyLAogICAgICAgICAgICAgICAgICAgIHdyYXBwZWQsCkBAIC0xMTQsMTQgKzExNSwyMyBAQAogICAgICAgICBfX2hhc2hfXyA9IE5vbmUKICAgICByZXR1cm4gSwogCit0cnk6CisgICAgZnJvbSBfZnVuY3Rvb2xzIGltcG9ydCBjbXBfdG9fa2V5CitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgcGFzcworCiBfQ2FjaGVJbmZvID0gbmFtZWR0dXBsZSgiQ2FjaGVJbmZvIiwgImhpdHMgbWlzc2VzIG1heHNpemUgY3VycnNpemUiKQogCi1kZWYgbHJ1X2NhY2hlKG1heHNpemU9MTAwKToKK2RlZiBscnVfY2FjaGUobWF4c2l6ZT0xMDAsIHR5cGVkPUZhbHNlKToKICAgICAiIiJMZWFzdC1yZWNlbnRseS11c2VkIGNhY2hlIGRlY29yYXRvci4KIAogICAgIElmICptYXhzaXplKiBpcyBzZXQgdG8gTm9uZSwgdGhlIExSVSBmZWF0dXJlcyBhcmUgZGlzYWJsZWQgYW5kIHRoZSBjYWNoZQogICAgIGNhbiBncm93IHdpdGhvdXQgYm91bmQuCiAKKyAgICBJZiAqdHlwZWQqIGlzIFRydWUsIGFyZ3VtZW50cyBvZiBkaWZmZXJlbnQgdHlwZXMgd2lsbCBiZSBjYWNoZWQgc2VwYXJhdGVseS4KKyAgICBGb3IgZXhhbXBsZSwgZigzLjApIGFuZCBmKDMpIHdpbGwgYmUgdHJlYXRlZCBhcyBkaXN0aW5jdCBjYWxscyB3aXRoCisgICAgZGlzdGluY3QgcmVzdWx0cy4KKwogICAgIEFyZ3VtZW50cyB0byB0aGUgY2FjaGVkIGZ1bmN0aW9uIG11c3QgYmUgaGFzaGFibGUuCiAKICAgICBWaWV3IHRoZSBjYWNoZSBzdGF0aXN0aWNzIG5hbWVkIHR1cGxlIChoaXRzLCBtaXNzZXMsIG1heHNpemUsIGN1cnJzaXplKSB3aXRoCkBAIC0xMzcsNyArMTQ3LDcgQEAKICAgICAjIHRvIGFsbG93IHRoZSBpbXBsZW1lbnRhdGlvbiB0byBjaGFuZ2UgKGluY2x1ZGluZyBhIHBvc3NpYmxlIEMgdmVyc2lvbikuCiAKICAgICBkZWYgZGVjb3JhdGluZ19mdW5jdGlvbih1c2VyX2Z1bmN0aW9uLAotICAgICAgICAgICAgICAgIHR1cGxlPXR1cGxlLCBzb3J0ZWQ9c29ydGVkLCBsZW49bGVuLCBLZXlFcnJvcj1LZXlFcnJvcik6CisgICAgICAgICAgICAqLCB0dXBsZT10dXBsZSwgc29ydGVkPXNvcnRlZCwgbWFwPW1hcCwgbGVuPWxlbiwgdHlwZT10eXBlLCBLZXlFcnJvcj1LZXlFcnJvcik6CiAKICAgICAgICAgaGl0cyA9IG1pc3NlcyA9IDAKICAgICAgICAga3dkX21hcmsgPSAob2JqZWN0KCksKSAgICAgICAgICAjIHNlcGFyYXRlcyBwb3NpdGlvbmFsIGFuZCBrZXl3b3JkIGFyZ3MKQEAgLTE1MSw3ICsxNjEsMTIgQEAKICAgICAgICAgICAgICAgICBub25sb2NhbCBoaXRzLCBtaXNzZXMKICAgICAgICAgICAgICAgICBrZXkgPSBhcmdzCiAgICAgICAgICAgICAgICAgaWYga3dkczoKLSAgICAgICAgICAgICAgICAgICAga2V5ICs9IGt3ZF9tYXJrICsgdHVwbGUoc29ydGVkKGt3ZHMuaXRlbXMoKSkpCisgICAgICAgICAgICAgICAgICAgIHNvcnRlZF9pdGVtcyA9IHR1cGxlKHNvcnRlZChrd2RzLml0ZW1zKCkpKQorICAgICAgICAgICAgICAgICAgICBrZXkgKz0ga3dkX21hcmsgKyBzb3J0ZWRfaXRlbXMKKyAgICAgICAgICAgICAgICBpZiB0eXBlZDoKKyAgICAgICAgICAgICAgICAgICAga2V5ICs9IHR1cGxlKG1hcCh0eXBlLCBhcmdzKSkKKyAgICAgICAgICAgICAgICAgICAgaWYga3dkczoKKyAgICAgICAgICAgICAgICAgICAgICAgIGtleSArPSB0dXBsZSh0eXBlKHYpIGZvciBrLCB2IGluIHNvcnRlZF9pdGVtcykKICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGNhY2hlW2tleV0KICAgICAgICAgICAgICAgICAgICAgaGl0cyArPSAxCkBAIC0xNzIsNyArMTg3LDEyIEBACiAgICAgICAgICAgICAgICAgbm9ubG9jYWwgaGl0cywgbWlzc2VzCiAgICAgICAgICAgICAgICAga2V5ID0gYXJncwogICAgICAgICAgICAgICAgIGlmIGt3ZHM6Ci0gICAgICAgICAgICAgICAgICAgIGtleSArPSBrd2RfbWFyayArIHR1cGxlKHNvcnRlZChrd2RzLml0ZW1zKCkpKQorICAgICAgICAgICAgICAgICAgICBzb3J0ZWRfaXRlbXMgPSB0dXBsZShzb3J0ZWQoa3dkcy5pdGVtcygpKSkKKyAgICAgICAgICAgICAgICAgICAga2V5ICs9IGt3ZF9tYXJrICsgc29ydGVkX2l0ZW1zCisgICAgICAgICAgICAgICAgaWYgdHlwZWQ6CisgICAgICAgICAgICAgICAgICAgIGtleSArPSB0dXBsZShtYXAodHlwZSwgYXJncykpCisgICAgICAgICAgICAgICAgICAgIGlmIGt3ZHM6CisgICAgICAgICAgICAgICAgICAgICAgICBrZXkgKz0gdHVwbGUodHlwZSh2KSBmb3IgaywgdiBpbiBzb3J0ZWRfaXRlbXMpCiAgICAgICAgICAgICAgICAgd2l0aCBsb2NrOgogICAgICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBjYWNoZVtrZXldCmRpZmYgLS1naXQgYS9MaWIvZ2V0b3B0LnB5IGIvTGliL2dldG9wdC5weQppbmRleCA5ODA4NjFkLi4zZDZlY2JkIDEwMDY0NAotLS0gYS9MaWIvZ2V0b3B0LnB5CisrKyBiL0xpYi9nZXRvcHQucHkKQEAgLTE5LDcgKzE5LDcgQEAKICMgR2Vycml0IEhvbGwgPGdlcnJpdEBubC5saW51eC5vcmc+IG1vdmVkIHRoZSBzdHJpbmctYmFzZWQgZXhjZXB0aW9ucwogIyB0byBjbGFzcy1iYXNlZCBleGNlcHRpb25zLgogIwotIyBQZXRlciDDg8KFc3RyYW5kIDxhc3RyYW5kQGx5c2F0b3IubGl1LnNlPiBhZGRlZCBnbnVfZ2V0b3B0KCkuCisjIFBldGVyIMOFc3RyYW5kIDxhc3RyYW5kQGx5c2F0b3IubGl1LnNlPiBhZGRlZCBnbnVfZ2V0b3B0KCkuCiAjCiAjIFRPRE8gZm9yIGdudV9nZXRvcHQoKToKICMKQEAgLTM0LDYgKzM0LDExIEBACiBfX2FsbF9fID0gWyJHZXRvcHRFcnJvciIsImVycm9yIiwiZ2V0b3B0IiwiZ251X2dldG9wdCJdCiAKIGltcG9ydCBvcwordHJ5OgorICAgIGZyb20gZ2V0dGV4dCBpbXBvcnQgZ2V0dGV4dCBhcyBfCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgIyBCb290c3RyYXBwaW5nIFB5dGhvbjogZ2V0dGV4dCdzIGRlcGVuZGVuY2llcyBub3QgYnVpbHQgeWV0CisgICAgZGVmIF8ocyk6IHJldHVybiBzCiAKIGNsYXNzIEdldG9wdEVycm9yKEV4Y2VwdGlvbik6CiAgICAgb3B0ID0gJycKQEAgLTE1MywxMCArMTU4LDEwIEBACiAgICAgaWYgaGFzX2FyZzoKICAgICAgICAgaWYgb3B0YXJnIGlzIE5vbmU6CiAgICAgICAgICAgICBpZiBub3QgYXJnczoKLSAgICAgICAgICAgICAgICByYWlzZSBHZXRvcHRFcnJvcignb3B0aW9uIC0tJXMgcmVxdWlyZXMgYXJndW1lbnQnICUgb3B0LCBvcHQpCisgICAgICAgICAgICAgICAgcmFpc2UgR2V0b3B0RXJyb3IoXygnb3B0aW9uIC0tJXMgcmVxdWlyZXMgYXJndW1lbnQnKSAlIG9wdCwgb3B0KQogICAgICAgICAgICAgb3B0YXJnLCBhcmdzID0gYXJnc1swXSwgYXJnc1sxOl0KICAgICBlbGlmIG9wdGFyZyBpcyBub3QgTm9uZToKLSAgICAgICAgcmFpc2UgR2V0b3B0RXJyb3IoJ29wdGlvbiAtLSVzIG11c3Qgbm90IGhhdmUgYW4gYXJndW1lbnQnICUgb3B0LCBvcHQpCisgICAgICAgIHJhaXNlIEdldG9wdEVycm9yKF8oJ29wdGlvbiAtLSVzIG11c3Qgbm90IGhhdmUgYW4gYXJndW1lbnQnKSAlIG9wdCwgb3B0KQogICAgIG9wdHMuYXBwZW5kKCgnLS0nICsgb3B0LCBvcHRhcmcgb3IgJycpKQogICAgIHJldHVybiBvcHRzLCBhcmdzCiAKQEAgLTE2Niw3ICsxNzEsNyBAQAogZGVmIGxvbmdfaGFzX2FyZ3Mob3B0LCBsb25nb3B0cyk6CiAgICAgcG9zc2liaWxpdGllcyA9IFtvIGZvciBvIGluIGxvbmdvcHRzIGlmIG8uc3RhcnRzd2l0aChvcHQpXQogICAgIGlmIG5vdCBwb3NzaWJpbGl0aWVzOgotICAgICAgICByYWlzZSBHZXRvcHRFcnJvcignb3B0aW9uIC0tJXMgbm90IHJlY29nbml6ZWQnICUgb3B0LCBvcHQpCisgICAgICAgIHJhaXNlIEdldG9wdEVycm9yKF8oJ29wdGlvbiAtLSVzIG5vdCByZWNvZ25pemVkJykgJSBvcHQsIG9wdCkKICAgICAjIElzIHRoZXJlIGFuIGV4YWN0IG1hdGNoPwogICAgIGlmIG9wdCBpbiBwb3NzaWJpbGl0aWVzOgogICAgICAgICByZXR1cm4gRmFsc2UsIG9wdApAQCAtMTc2LDcgKzE4MSw3IEBACiAgICAgaWYgbGVuKHBvc3NpYmlsaXRpZXMpID4gMToKICAgICAgICAgIyBYWFggc2luY2UgcG9zc2liaWxpdGllcyBjb250YWlucyBhbGwgdmFsaWQgY29udGludWF0aW9ucywgbWlnaHQgYmUKICAgICAgICAgIyBuaWNlIHRvIHdvcmsgdGhlbSBpbnRvIHRoZSBlcnJvciBtc2cKLSAgICAgICAgcmFpc2UgR2V0b3B0RXJyb3IoJ29wdGlvbiAtLSVzIG5vdCBhIHVuaXF1ZSBwcmVmaXgnICUgb3B0LCBvcHQpCisgICAgICAgIHJhaXNlIEdldG9wdEVycm9yKF8oJ29wdGlvbiAtLSVzIG5vdCBhIHVuaXF1ZSBwcmVmaXgnKSAlIG9wdCwgb3B0KQogICAgIGFzc2VydCBsZW4ocG9zc2liaWxpdGllcykgPT0gMQogICAgIHVuaXF1ZV9tYXRjaCA9IHBvc3NpYmlsaXRpZXNbMF0KICAgICBoYXNfYXJnID0gdW5pcXVlX21hdGNoLmVuZHN3aXRoKCc9JykKQEAgLTE5MCw3ICsxOTUsNyBAQAogICAgICAgICBpZiBzaG9ydF9oYXNfYXJnKG9wdCwgc2hvcnRvcHRzKToKICAgICAgICAgICAgIGlmIG9wdHN0cmluZyA9PSAnJzoKICAgICAgICAgICAgICAgICBpZiBub3QgYXJnczoKLSAgICAgICAgICAgICAgICAgICAgcmFpc2UgR2V0b3B0RXJyb3IoJ29wdGlvbiAtJXMgcmVxdWlyZXMgYXJndW1lbnQnICUgb3B0LAorICAgICAgICAgICAgICAgICAgICByYWlzZSBHZXRvcHRFcnJvcihfKCdvcHRpb24gLSVzIHJlcXVpcmVzIGFyZ3VtZW50JykgJSBvcHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdCkKICAgICAgICAgICAgICAgICBvcHRzdHJpbmcsIGFyZ3MgPSBhcmdzWzBdLCBhcmdzWzE6XQogICAgICAgICAgICAgb3B0YXJnLCBvcHRzdHJpbmcgPSBvcHRzdHJpbmcsICcnCkBAIC0yMDMsNyArMjA4LDcgQEAKICAgICBmb3IgaSBpbiByYW5nZShsZW4oc2hvcnRvcHRzKSk6CiAgICAgICAgIGlmIG9wdCA9PSBzaG9ydG9wdHNbaV0gIT0gJzonOgogICAgICAgICAgICAgcmV0dXJuIHNob3J0b3B0cy5zdGFydHN3aXRoKCc6JywgaSsxKQotICAgIHJhaXNlIEdldG9wdEVycm9yKCdvcHRpb24gLSVzIG5vdCByZWNvZ25pemVkJyAlIG9wdCwgb3B0KQorICAgIHJhaXNlIEdldG9wdEVycm9yKF8oJ29wdGlvbiAtJXMgbm90IHJlY29nbml6ZWQnKSAlIG9wdCwgb3B0KQogCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgIGltcG9ydCBzeXMKZGlmZiAtLWdpdCBhL0xpYi9nZXRwYXNzLnB5IGIvTGliL2dldHBhc3MucHkKaW5kZXggZGMwMmJkMS4uMDA0NDc0MiAxMDA2NDQKLS0tIGEvTGliL2dldHBhc3MucHkKKysrIGIvTGliL2dldHBhc3MucHkKQEAgLTcyLDcgKzcyLDcgQEAKICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgdGVybWlvcy50Y3NldGF0dHIoZmQsIHRjc2V0YXR0cl9mbGFncywgb2xkKQogICAgICAgICAgICAgICAgIHN0cmVhbS5mbHVzaCgpICAjIGlzc3VlNzIwOAotICAgICAgICBleGNlcHQgdGVybWlvcy5lcnJvciBhcyBlOgorICAgICAgICBleGNlcHQgdGVybWlvcy5lcnJvcjoKICAgICAgICAgICAgIGlmIHBhc3N3ZCBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICAjIF9yYXdfaW5wdXQgc3VjY2VlZGVkLiAgVGhlIGZpbmFsIHRjc2V0YXR0ciBmYWlsZWQuICBSZXJhaXNlCiAgICAgICAgICAgICAgICAgIyBpbnN0ZWFkIG9mIGxlYXZpbmcgdGhlIHRlcm1pbmFsIGluIGFuIHVua25vd24gc3RhdGUuCkBAIC0xNDUsOCArMTQ1LDYgQEAKIAogICAgICIiIgogCi0gICAgaW1wb3J0IG9zCi0KICAgICBmb3IgbmFtZSBpbiAoJ0xPR05BTUUnLCAnVVNFUicsICdMTkFNRScsICdVU0VSTkFNRScpOgogICAgICAgICB1c2VyID0gb3MuZW52aXJvbi5nZXQobmFtZSkKICAgICAgICAgaWYgdXNlcjoKZGlmZiAtLWdpdCBhL0xpYi9nemlwLnB5IGIvTGliL2d6aXAucHkKaW5kZXggMWRlMjNiNi4uODVjM2UxNSAxMDA2NDQKLS0tIGEvTGliL2d6aXAucHkKKysrIGIvTGliL2d6aXAucHkKQEAgLTE2LDE4ICsxNiw2IEBACiAKIFJFQUQsIFdSSVRFID0gMSwgMgogCi1kZWYgVTMyKGkpOgotICAgICIiIlJldHVybiBpIGFzIGFuIHVuc2lnbmVkIGludGVnZXIsIGFzc3VtaW5nIGl0IGZpdHMgaW4gMzIgYml0cy4KLSAgICBJZiBpdCdzID49IDJHQiB3aGVuIHZpZXdlZCBhcyBhIDMyLWJpdCB1bnNpZ25lZCBpbnQsIHJldHVybiBhIGxvbmcuCi0gICAgIiIiCi0gICAgaWYgaSA8IDA6Ci0gICAgICAgIGkgKz0gMSA8PCAzMgotICAgIHJldHVybiBpCi0KLWRlZiBMT1dVMzIoaSk6Ci0gICAgIiIiUmV0dXJuIHRoZSBsb3ctb3JkZXIgMzIgYml0cywgYXMgYSBub24tbmVnYXRpdmUgaW50IiIiCi0gICAgcmV0dXJuIGkgJiAweEZGRkZGRkZGCi0KIGRlZiB3cml0ZTMydShvdXRwdXQsIHZhbHVlKToKICAgICAjIFRoZSBMIGZvcm1hdCB3cml0ZXMgdGhlIGJpdCBwYXR0ZXJuIGNvcnJlY3RseSB3aGV0aGVyIHNpZ25lZAogICAgICMgb3IgdW5zaWduZWQuCkBAIC0xNTMsNyArMTQxLDcgQEAKICAgICAgICAgIiIiCiAKICAgICAgICAgaWYgbW9kZSBhbmQgKCd0JyBpbiBtb2RlIG9yICdVJyBpbiBtb2RlKToKLSAgICAgICAgICAgIHJhaXNlIElPRXJyb3IoIk1vZGUgIiArIG1vZGUgKyAiIG5vdCBzdXBwb3J0ZWQiKQorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSW52YWxpZCBtb2RlOiB7IXJ9Ii5mb3JtYXQobW9kZSkpCiAgICAgICAgIGlmIG1vZGUgYW5kICdiJyBub3QgaW4gbW9kZToKICAgICAgICAgICAgIG1vZGUgKz0gJ2InCiAgICAgICAgIGlmIGZpbGVvYmogaXMgTm9uZToKQEAgLTE2NCwxMCArMTUyLDkgQEAKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgZmlsZW5hbWUgPSAnJwogICAgICAgICBpZiBtb2RlIGlzIE5vbmU6Ci0gICAgICAgICAgICBpZiBoYXNhdHRyKGZpbGVvYmosICdtb2RlJyk6IG1vZGUgPSBmaWxlb2JqLm1vZGUKLSAgICAgICAgICAgIGVsc2U6IG1vZGUgPSAncmInCisgICAgICAgICAgICBtb2RlID0gZ2V0YXR0cihmaWxlb2JqLCAnbW9kZScsICdyYicpCiAKLSAgICAgICAgaWYgbW9kZVswOjFdID09ICdyJzoKKyAgICAgICAgaWYgbW9kZS5zdGFydHN3aXRoKCdyJyk6CiAgICAgICAgICAgICBzZWxmLm1vZGUgPSBSRUFECiAgICAgICAgICAgICAjIFNldCBmbGFnIGluZGljYXRpbmcgc3RhcnQgb2YgYSBuZXcgbWVtYmVyCiAgICAgICAgICAgICBzZWxmLl9uZXdfbWVtYmVyID0gVHJ1ZQpAQCAtMTgyLDcgKzE2OSw3IEBACiAgICAgICAgICAgICBzZWxmLm1pbl9yZWFkc2l6ZSA9IDEwMAogICAgICAgICAgICAgZmlsZW9iaiA9IF9QYWRkZWRGaWxlKGZpbGVvYmopCiAKLSAgICAgICAgZWxpZiBtb2RlWzA6MV0gPT0gJ3cnIG9yIG1vZGVbMDoxXSA9PSAnYSc6CisgICAgICAgIGVsaWYgbW9kZS5zdGFydHN3aXRoKCgndycsICdhJykpOgogICAgICAgICAgICAgc2VsZi5tb2RlID0gV1JJVEUKICAgICAgICAgICAgIHNlbGYuX2luaXRfd3JpdGUoZmlsZW5hbWUpCiAgICAgICAgICAgICBzZWxmLmNvbXByZXNzID0gemxpYi5jb21wcmVzc29iaihjb21wcmVzc2xldmVsLApAQCAtMTkxLDcgKzE3OCw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6bGliLkRFRl9NRU1fTEVWRUwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKQogICAgICAgICBlbHNlOgotICAgICAgICAgICAgcmFpc2UgSU9FcnJvcigiTW9kZSAiICsgbW9kZSArICIgbm90IHN1cHBvcnRlZCIpCisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJbnZhbGlkIG1vZGU6IHshcn0iLmZvcm1hdChtb2RlKSkKIAogICAgICAgICBzZWxmLmZpbGVvYmogPSBmaWxlb2JqCiAgICAgICAgIHNlbGYub2Zmc2V0ID0gMApAQCAtMzUzLDYgKzM0MCwyOCBAQAogICAgICAgICBzZWxmLm9mZnNldCArPSBzaXplCiAgICAgICAgIHJldHVybiBjaHVuawogCisgICAgZGVmIHJlYWQxKHNlbGYsIHNpemU9LTEpOgorICAgICAgICBzZWxmLl9jaGVja19jbG9zZWQoKQorICAgICAgICBpZiBzZWxmLm1vZGUgIT0gUkVBRDoKKyAgICAgICAgICAgIGltcG9ydCBlcnJubworICAgICAgICAgICAgcmFpc2UgSU9FcnJvcihlcnJuby5FQkFERiwgInJlYWQxKCkgb24gd3JpdGUtb25seSBHemlwRmlsZSBvYmplY3QiKQorCisgICAgICAgIGlmIHNlbGYuZXh0cmFzaXplIDw9IDAgYW5kIHNlbGYuZmlsZW9iaiBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuIGInJworCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuX3JlYWQoKQorICAgICAgICBleGNlcHQgRU9GRXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGlmIHNpemUgPCAwIG9yIHNpemUgPiBzZWxmLmV4dHJhc2l6ZToKKyAgICAgICAgICAgIHNpemUgPSBzZWxmLmV4dHJhc2l6ZQorCisgICAgICAgIG9mZnNldCA9IHNlbGYub2Zmc2V0IC0gc2VsZi5leHRyYXN0YXJ0CisgICAgICAgIGNodW5rID0gc2VsZi5leHRyYWJ1ZltvZmZzZXQ6IG9mZnNldCArIHNpemVdCisgICAgICAgIHNlbGYuZXh0cmFzaXplIC09IHNpemUKKyAgICAgICAgc2VsZi5vZmZzZXQgKz0gc2l6ZQorICAgICAgICByZXR1cm4gY2h1bmsKKwogICAgIGRlZiBwZWVrKHNlbGYsIG4pOgogICAgICAgICBpZiBzZWxmLm1vZGUgIT0gUkVBRDoKICAgICAgICAgICAgIGltcG9ydCBlcnJubwpkaWZmIC0tZ2l0IGEvTGliL2h0dHAvY2xpZW50LnB5IGIvTGliL2h0dHAvY2xpZW50LnB5CmluZGV4IDc0NWI5OTkuLjAwMDIwNzIgMTAwNjQ0Ci0tLSBhL0xpYi9odHRwL2NsaWVudC5weQorKysgYi9MaWIvaHR0cC9jbGllbnQucHkKQEAgLTQ4NSwxMSArNDg1LDE3IEBACiAgICAgICAgICAgICBzZWxmLmNsb3NlKCkKICAgICAgICAgICAgIHJldHVybiBiIiIKIAotICAgICAgICBpZiBzZWxmLmNodW5rZWQ6Ci0gICAgICAgICAgICByZXR1cm4gc2VsZi5fcmVhZF9jaHVua2VkKGFtdCkKKyAgICAgICAgaWYgYW10IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgIyBBbW91bnQgaXMgZ2l2ZW4sIHNvIGNhbGwgYmFzZSBjbGFzcyB2ZXJzaW9uCisgICAgICAgICAgICAjICh3aGljaCBpcyBpbXBsZW1lbnRlZCBpbiB0ZXJtcyBvZiBzZWxmLnJlYWRpbnRvKQorICAgICAgICAgICAgcmV0dXJuIHN1cGVyKEhUVFBSZXNwb25zZSwgc2VsZikucmVhZChhbXQpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIEFtb3VudCBpcyBub3QgZ2l2ZW4gKHVuYm91bmRlZCByZWFkKSBzbyB3ZSBtdXN0IGNoZWNrIHNlbGYubGVuZ3RoCisgICAgICAgICAgICAjIGFuZCBzZWxmLmNodW5rZWQKIAotICAgICAgICBpZiBhbXQgaXMgTm9uZToKLSAgICAgICAgICAgICMgdW5ib3VuZGVkIHJlYWQKKyAgICAgICAgICAgIGlmIHNlbGYuY2h1bmtlZDoKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fcmVhZGFsbF9jaHVua2VkKCkKKwogICAgICAgICAgICAgaWYgc2VsZi5sZW5ndGggaXMgTm9uZToKICAgICAgICAgICAgICAgICBzID0gc2VsZi5mcC5yZWFkKCkKICAgICAgICAgICAgIGVsc2U6CkBAIC00OTgsNjEgKzUwNCw0OSBAQAogICAgICAgICAgICAgc2VsZi5jbG9zZSgpICAgICAgICAjIHdlIHJlYWQgZXZlcnl0aGluZwogICAgICAgICAgICAgcmV0dXJuIHMKIAorICAgIGRlZiByZWFkaW50byhzZWxmLCBiKToKKyAgICAgICAgaWYgc2VsZi5mcCBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuIDAKKworICAgICAgICBpZiBzZWxmLl9tZXRob2QgPT0gIkhFQUQiOgorICAgICAgICAgICAgc2VsZi5jbG9zZSgpCisgICAgICAgICAgICByZXR1cm4gMAorCisgICAgICAgIGlmIHNlbGYuY2h1bmtlZDoKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9yZWFkaW50b19jaHVua2VkKGIpCisKICAgICAgICAgaWYgc2VsZi5sZW5ndGggaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICBpZiBhbXQgPiBzZWxmLmxlbmd0aDoKKyAgICAgICAgICAgIGlmIGxlbihiKSA+IHNlbGYubGVuZ3RoOgogICAgICAgICAgICAgICAgICMgY2xpcCB0aGUgcmVhZCB0byB0aGUgImVuZCBvZiByZXNwb25zZSIKLSAgICAgICAgICAgICAgICBhbXQgPSBzZWxmLmxlbmd0aAorICAgICAgICAgICAgICAgIGIgPSBtZW1vcnl2aWV3KGIpWzA6c2VsZi5sZW5ndGhdCiAKICAgICAgICAgIyB3ZSBkbyBub3QgdXNlIF9zYWZlX3JlYWQoKSBoZXJlIGJlY2F1c2UgdGhpcyBtYXkgYmUgYSAud2lsbF9jbG9zZQogICAgICAgICAjIGNvbm5lY3Rpb24sIGFuZCB0aGUgdXNlciBpcyByZWFkaW5nIG1vcmUgYnl0ZXMgdGhhbiB3aWxsIGJlIHByb3ZpZGVkCiAgICAgICAgICMgKGZvciBleGFtcGxlLCByZWFkaW5nIGluIDFrIGNodW5rcykKLSAgICAgICAgcyA9IHNlbGYuZnAucmVhZChhbXQpCisgICAgICAgIG4gPSBzZWxmLmZwLnJlYWRpbnRvKGIpCiAgICAgICAgIGlmIHNlbGYubGVuZ3RoIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgc2VsZi5sZW5ndGggLT0gbGVuKHMpCisgICAgICAgICAgICBzZWxmLmxlbmd0aCAtPSBuCiAgICAgICAgICAgICBpZiBub3Qgc2VsZi5sZW5ndGg6CiAgICAgICAgICAgICAgICAgc2VsZi5jbG9zZSgpCi0gICAgICAgIHJldHVybiBzCisgICAgICAgIHJldHVybiBuCiAKLSAgICBkZWYgX3JlYWRfY2h1bmtlZChzZWxmLCBhbXQpOgotICAgICAgICBhc3NlcnQgc2VsZi5jaHVua2VkICE9IF9VTktOT1dOCi0gICAgICAgIGNodW5rX2xlZnQgPSBzZWxmLmNodW5rX2xlZnQKLSAgICAgICAgdmFsdWUgPSBbXQotICAgICAgICB3aGlsZSBUcnVlOgotICAgICAgICAgICAgaWYgY2h1bmtfbGVmdCBpcyBOb25lOgotICAgICAgICAgICAgICAgIGxpbmUgPSBzZWxmLmZwLnJlYWRsaW5lKF9NQVhMSU5FICsgMSkKLSAgICAgICAgICAgICAgICBpZiBsZW4obGluZSkgPiBfTUFYTElORToKLSAgICAgICAgICAgICAgICAgICAgcmFpc2UgTGluZVRvb0xvbmcoImNodW5rIHNpemUiKQotICAgICAgICAgICAgICAgIGkgPSBsaW5lLmZpbmQoYiI7IikKLSAgICAgICAgICAgICAgICBpZiBpID49IDA6Ci0gICAgICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lWzppXSAjIHN0cmlwIGNodW5rLWV4dGVuc2lvbnMKLSAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgIGNodW5rX2xlZnQgPSBpbnQobGluZSwgMTYpCi0gICAgICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6Ci0gICAgICAgICAgICAgICAgICAgICMgY2xvc2UgdGhlIGNvbm5lY3Rpb24gYXMgcHJvdG9jb2wgc3luY2hyb25pc2F0aW9uIGlzCi0gICAgICAgICAgICAgICAgICAgICMgcHJvYmFibHkgbG9zdAotICAgICAgICAgICAgICAgICAgICBzZWxmLmNsb3NlKCkKLSAgICAgICAgICAgICAgICAgICAgcmFpc2UgSW5jb21wbGV0ZVJlYWQoYicnLmpvaW4odmFsdWUpKQotICAgICAgICAgICAgICAgIGlmIGNodW5rX2xlZnQgPT0gMDoKLSAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgIGlmIGFtdCBpcyBOb25lOgotICAgICAgICAgICAgICAgIHZhbHVlLmFwcGVuZChzZWxmLl9zYWZlX3JlYWQoY2h1bmtfbGVmdCkpCi0gICAgICAgICAgICBlbGlmIGFtdCA8IGNodW5rX2xlZnQ6Ci0gICAgICAgICAgICAgICAgdmFsdWUuYXBwZW5kKHNlbGYuX3NhZmVfcmVhZChhbXQpKQotICAgICAgICAgICAgICAgIHNlbGYuY2h1bmtfbGVmdCA9IGNodW5rX2xlZnQgLSBhbXQKLSAgICAgICAgICAgICAgICByZXR1cm4gYicnLmpvaW4odmFsdWUpCi0gICAgICAgICAgICBlbGlmIGFtdCA9PSBjaHVua19sZWZ0OgotICAgICAgICAgICAgICAgIHZhbHVlLmFwcGVuZChzZWxmLl9zYWZlX3JlYWQoYW10KSkKLSAgICAgICAgICAgICAgICBzZWxmLl9zYWZlX3JlYWQoMikgICMgdG9zcyB0aGUgQ1JMRiBhdCB0aGUgZW5kIG9mIHRoZSBjaHVuawotICAgICAgICAgICAgICAgIHNlbGYuY2h1bmtfbGVmdCA9IE5vbmUKLSAgICAgICAgICAgICAgICByZXR1cm4gYicnLmpvaW4odmFsdWUpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHZhbHVlLmFwcGVuZChzZWxmLl9zYWZlX3JlYWQoY2h1bmtfbGVmdCkpCi0gICAgICAgICAgICAgICAgYW10IC09IGNodW5rX2xlZnQKKyAgICBkZWYgX3JlYWRfbmV4dF9jaHVua19zaXplKHNlbGYpOgorICAgICAgICAjIFJlYWQgdGhlIG5leHQgY2h1bmsgc2l6ZSBmcm9tIHRoZSBmaWxlCisgICAgICAgIGxpbmUgPSBzZWxmLmZwLnJlYWRsaW5lKF9NQVhMSU5FICsgMSkKKyAgICAgICAgaWYgbGVuKGxpbmUpID4gX01BWExJTkU6CisgICAgICAgICAgICByYWlzZSBMaW5lVG9vTG9uZygiY2h1bmsgc2l6ZSIpCisgICAgICAgIGkgPSBsaW5lLmZpbmQoYiI7IikKKyAgICAgICAgaWYgaSA+PSAwOgorICAgICAgICAgICAgbGluZSA9IGxpbmVbOmldICMgc3RyaXAgY2h1bmstZXh0ZW5zaW9ucworICAgICAgICB0cnk6CisgICAgICAgICAgICByZXR1cm4gaW50KGxpbmUsIDE2KQorICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICMgY2xvc2UgdGhlIGNvbm5lY3Rpb24gYXMgcHJvdG9jb2wgc3luY2hyb25pc2F0aW9uIGlzCisgICAgICAgICAgICAjIHByb2JhYmx5IGxvc3QKKyAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorICAgICAgICAgICAgcmFpc2UKIAotICAgICAgICAgICAgIyB3ZSByZWFkIHRoZSB3aG9sZSBjaHVuaywgZ2V0IGFub3RoZXIKLSAgICAgICAgICAgIHNlbGYuX3NhZmVfcmVhZCgyKSAgICAgICMgdG9zcyB0aGUgQ1JMRiBhdCB0aGUgZW5kIG9mIHRoZSBjaHVuawotICAgICAgICAgICAgY2h1bmtfbGVmdCA9IE5vbmUKLQorICAgIGRlZiBfcmVhZF9hbmRfZGlzY2FyZF90cmFpbGVyKHNlbGYpOgogICAgICAgICAjIHJlYWQgYW5kIGRpc2NhcmQgdHJhaWxlciB1cCB0byB0aGUgQ1JMRiB0ZXJtaW5hdG9yCiAgICAgICAgICMjIyBub3RlOiB3ZSBzaG91bGRuJ3QgaGF2ZSBhbnkgdHJhaWxlcnMhCiAgICAgICAgIHdoaWxlIFRydWU6CkBAIC01NjYsMTEgKzU2MCw3MiBAQAogICAgICAgICAgICAgaWYgbGluZSA9PSBiIlxyXG4iOgogICAgICAgICAgICAgICAgIGJyZWFrCiAKKyAgICBkZWYgX3JlYWRhbGxfY2h1bmtlZChzZWxmKToKKyAgICAgICAgYXNzZXJ0IHNlbGYuY2h1bmtlZCAhPSBfVU5LTk9XTgorICAgICAgICBjaHVua19sZWZ0ID0gc2VsZi5jaHVua19sZWZ0CisgICAgICAgIHZhbHVlID0gW10KKyAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgIGlmIGNodW5rX2xlZnQgaXMgTm9uZToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGNodW5rX2xlZnQgPSBzZWxmLl9yZWFkX25leHRfY2h1bmtfc2l6ZSgpCisgICAgICAgICAgICAgICAgICAgIGlmIGNodW5rX2xlZnQgPT0gMDoKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIEluY29tcGxldGVSZWFkKGInJy5qb2luKHZhbHVlKSkKKyAgICAgICAgICAgIHZhbHVlLmFwcGVuZChzZWxmLl9zYWZlX3JlYWQoY2h1bmtfbGVmdCkpCisKKyAgICAgICAgICAgICMgd2UgcmVhZCB0aGUgd2hvbGUgY2h1bmssIGdldCBhbm90aGVyCisgICAgICAgICAgICBzZWxmLl9zYWZlX3JlYWQoMikgICAgICAjIHRvc3MgdGhlIENSTEYgYXQgdGhlIGVuZCBvZiB0aGUgY2h1bmsKKyAgICAgICAgICAgIGNodW5rX2xlZnQgPSBOb25lCisKKyAgICAgICAgc2VsZi5fcmVhZF9hbmRfZGlzY2FyZF90cmFpbGVyKCkKKwogICAgICAgICAjIHdlIHJlYWQgZXZlcnl0aGluZzsgY2xvc2UgdGhlICJmaWxlIgogICAgICAgICBzZWxmLmNsb3NlKCkKIAogICAgICAgICByZXR1cm4gYicnLmpvaW4odmFsdWUpCiAKKyAgICBkZWYgX3JlYWRpbnRvX2NodW5rZWQoc2VsZiwgYik6CisgICAgICAgIGFzc2VydCBzZWxmLmNodW5rZWQgIT0gX1VOS05PV04KKyAgICAgICAgY2h1bmtfbGVmdCA9IHNlbGYuY2h1bmtfbGVmdAorCisgICAgICAgIHRvdGFsX2J5dGVzID0gMAorICAgICAgICBtdmIgPSBtZW1vcnl2aWV3KGIpCisgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICBpZiBjaHVua19sZWZ0IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBjaHVua19sZWZ0ID0gc2VsZi5fcmVhZF9uZXh0X2NodW5rX3NpemUoKQorICAgICAgICAgICAgICAgICAgICBpZiBjaHVua19sZWZ0ID09IDA6CisgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBJbmNvbXBsZXRlUmVhZChieXRlcyhiWzA6dG90YWxfYnl0ZXNdKSkKKworICAgICAgICAgICAgaWYgbGVuKG12YikgPCBjaHVua19sZWZ0OgorICAgICAgICAgICAgICAgIG4gPSBzZWxmLl9zYWZlX3JlYWRpbnRvKG12YikKKyAgICAgICAgICAgICAgICBzZWxmLmNodW5rX2xlZnQgPSBjaHVua19sZWZ0IC0gbgorICAgICAgICAgICAgICAgIHJldHVybiB0b3RhbF9ieXRlcyArIG4KKyAgICAgICAgICAgIGVsaWYgbGVuKG12YikgPT0gY2h1bmtfbGVmdDoKKyAgICAgICAgICAgICAgICBuID0gc2VsZi5fc2FmZV9yZWFkaW50byhtdmIpCisgICAgICAgICAgICAgICAgc2VsZi5fc2FmZV9yZWFkKDIpICAjIHRvc3MgdGhlIENSTEYgYXQgdGhlIGVuZCBvZiB0aGUgY2h1bmsKKyAgICAgICAgICAgICAgICBzZWxmLmNodW5rX2xlZnQgPSBOb25lCisgICAgICAgICAgICAgICAgcmV0dXJuIHRvdGFsX2J5dGVzICsgbgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICB0ZW1wX212YiA9IG12YlswOmNodW5rX2xlZnRdCisgICAgICAgICAgICAgICAgbiA9IHNlbGYuX3NhZmVfcmVhZGludG8odGVtcF9tdmIpCisgICAgICAgICAgICAgICAgbXZiID0gbXZiW246XQorICAgICAgICAgICAgICAgIHRvdGFsX2J5dGVzICs9IG4KKworICAgICAgICAgICAgIyB3ZSByZWFkIHRoZSB3aG9sZSBjaHVuaywgZ2V0IGFub3RoZXIKKyAgICAgICAgICAgIHNlbGYuX3NhZmVfcmVhZCgyKSAgICAgICMgdG9zcyB0aGUgQ1JMRiBhdCB0aGUgZW5kIG9mIHRoZSBjaHVuaworICAgICAgICAgICAgY2h1bmtfbGVmdCA9IE5vbmUKKworICAgICAgICBzZWxmLl9yZWFkX2FuZF9kaXNjYXJkX3RyYWlsZXIoKQorCisgICAgICAgICMgd2UgcmVhZCBldmVyeXRoaW5nOyBjbG9zZSB0aGUgImZpbGUiCisgICAgICAgIHNlbGYuY2xvc2UoKQorCisgICAgICAgIHJldHVybiB0b3RhbF9ieXRlcworCiAgICAgZGVmIF9zYWZlX3JlYWQoc2VsZiwgYW10KToKICAgICAgICAgIiIiUmVhZCB0aGUgbnVtYmVyIG9mIGJ5dGVzIHJlcXVlc3RlZCwgY29tcGVuc2F0aW5nIGZvciBwYXJ0aWFsIHJlYWRzLgogCkBAIC01OTQsNiArNjQ5LDIyIEBACiAgICAgICAgICAgICBhbXQgLT0gbGVuKGNodW5rKQogICAgICAgICByZXR1cm4gYiIiLmpvaW4ocykKIAorICAgIGRlZiBfc2FmZV9yZWFkaW50byhzZWxmLCBiKToKKyAgICAgICAgIiIiU2FtZSBhcyBfc2FmZV9yZWFkLCBidXQgZm9yIHJlYWRpbmcgaW50byBhIGJ1ZmZlci4iIiIKKyAgICAgICAgdG90YWxfYnl0ZXMgPSAwCisgICAgICAgIG12YiA9IG1lbW9yeXZpZXcoYikKKyAgICAgICAgd2hpbGUgdG90YWxfYnl0ZXMgPCBsZW4oYik6CisgICAgICAgICAgICBpZiBNQVhBTU9VTlQgPCBsZW4obXZiKToKKyAgICAgICAgICAgICAgICB0ZW1wX212YiA9IG12YlswOk1BWEFNT1VOVF0KKyAgICAgICAgICAgICAgICBuID0gc2VsZi5mcC5yZWFkaW50byh0ZW1wX212YikKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbiA9IHNlbGYuZnAucmVhZGludG8obXZiKQorICAgICAgICAgICAgaWYgbm90IG46CisgICAgICAgICAgICAgICAgcmFpc2UgSW5jb21wbGV0ZVJlYWQoYnl0ZXMobXZiWzA6dG90YWxfYnl0ZXNdKSwgbGVuKGIpKQorICAgICAgICAgICAgbXZiID0gbXZiW246XQorICAgICAgICAgICAgdG90YWxfYnl0ZXMgKz0gbgorICAgICAgICByZXR1cm4gdG90YWxfYnl0ZXMKKwogICAgIGRlZiBmaWxlbm8oc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLmZwLmZpbGVubygpCiAKQEAgLTcwMCw3ICs3NzEsNyBAQAogICAgICAgICBzZWxmLnNlbmQoY29ubmVjdF9ieXRlcykKICAgICAgICAgZm9yIGhlYWRlciwgdmFsdWUgaW4gc2VsZi5fdHVubmVsX2hlYWRlcnMuaXRlbXMoKToKICAgICAgICAgICAgIGhlYWRlcl9zdHIgPSAiJXM6ICVzXHJcbiIgJSAoaGVhZGVyLCB2YWx1ZSkKLSAgICAgICAgICAgIGhlYWRlcl9ieXRlcyA9IGhlYWRlcl9zdHIuZW5jb2RlKCJsYXRpbjEiKQorICAgICAgICAgICAgaGVhZGVyX2J5dGVzID0gaGVhZGVyX3N0ci5lbmNvZGUoImxhdGluLTEiKQogICAgICAgICAgICAgc2VsZi5zZW5kKGhlYWRlcl9ieXRlcykKICAgICAgICAgc2VsZi5zZW5kKGInXHJcbicpCiAKQEAgLTk0MCw3ICsxMDExLDcgQEAKICAgICAgICAgdmFsdWVzID0gbGlzdCh2YWx1ZXMpCiAgICAgICAgIGZvciBpLCBvbmVfdmFsdWUgaW4gZW51bWVyYXRlKHZhbHVlcyk6CiAgICAgICAgICAgICBpZiBoYXNhdHRyKG9uZV92YWx1ZSwgJ2VuY29kZScpOgotICAgICAgICAgICAgICAgIHZhbHVlc1tpXSA9IG9uZV92YWx1ZS5lbmNvZGUoJ2xhdGluMScpCisgICAgICAgICAgICAgICAgdmFsdWVzW2ldID0gb25lX3ZhbHVlLmVuY29kZSgnbGF0aW4tMScpCiAgICAgICAgICAgICBlbGlmIGlzaW5zdGFuY2Uob25lX3ZhbHVlLCBpbnQpOgogICAgICAgICAgICAgICAgIHZhbHVlc1tpXSA9IHN0cihvbmVfdmFsdWUpLmVuY29kZSgnYXNjaWknKQogICAgICAgICB2YWx1ZSA9IGInXHJcblx0Jy5qb2luKHZhbHVlcykKZGlmZiAtLWdpdCBhL0xpYi9odHRwL3NlcnZlci5weSBiL0xpYi9odHRwL3NlcnZlci5weQppbmRleCA2NjQyNzI5Li43OGZiY2RhIDEwMDY0NAotLS0gYS9MaWIvaHR0cC9zZXJ2ZXIucHkKKysrIGIvTGliL2h0dHAvc2VydmVyLnB5CkBAIC0xMDUsNiArMTA1LDcgQEAKIERFRkFVTFRfRVJST1JfTUVTU0FHRSA9ICIiIlwKIDwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxLy9FTiIKICAgICAgICAgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0L3N0cmljdC5kdGQiPgorPGh0bWw+CiAgICAgPGhlYWQ+CiAgICAgICAgIDxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9dXRmLTgiPgogICAgICAgICA8dGl0bGU+RXJyb3IgcmVzcG9uc2U8L3RpdGxlPgpAQCAtMzUyLDYgKzM1Myw3IEBACiAKICAgICAgICAgIiIiCiAgICAgICAgIHNlbGYuc2VuZF9yZXNwb25zZV9vbmx5KDEwMCkKKyAgICAgICAgc2VsZi5mbHVzaF9oZWFkZXJzKCkKICAgICAgICAgcmV0dXJuIFRydWUKIAogICAgIGRlZiBoYW5kbGVfb25lX3JlcXVlc3Qoc2VsZik6CkBAIC00MjksNyArNDMxLDggQEAKICAgICAgICAgICAgIHNlbGYud2ZpbGUud3JpdGUoY29udGVudC5lbmNvZGUoJ1VURi04JywgJ3JlcGxhY2UnKSkKIAogICAgIGRlZiBzZW5kX3Jlc3BvbnNlKHNlbGYsIGNvZGUsIG1lc3NhZ2U9Tm9uZSk6Ci0gICAgICAgICIiIlNlbmQgdGhlIHJlc3BvbnNlIGhlYWRlciBhbmQgbG9nIHRoZSByZXNwb25zZSBjb2RlLgorICAgICAgICAiIiJBZGQgdGhlIHJlc3BvbnNlIGhlYWRlciB0byB0aGUgaGVhZGVycyBidWZmZXIgYW5kIGxvZyB0aGUKKyAgICAgICAgcmVzcG9uc2UgY29kZS4KIAogICAgICAgICBBbHNvIHNlbmQgdHdvIHN0YW5kYXJkIGhlYWRlcnMgd2l0aCB0aGUgc2VydmVyIHNvZnR3YXJlCiAgICAgICAgIHZlcnNpb24gYW5kIHRoZSBjdXJyZW50IGRhdGUuCkBAIC00NDgsMTYgKzQ1MSwxOSBAQAogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBtZXNzYWdlID0gJycKICAgICAgICAgaWYgc2VsZi5yZXF1ZXN0X3ZlcnNpb24gIT0gJ0hUVFAvMC45JzoKLSAgICAgICAgICAgIHNlbGYud2ZpbGUud3JpdGUoKCIlcyAlZCAlc1xyXG4iICUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZWxmLnByb3RvY29sX3ZlcnNpb24sIGNvZGUsIG1lc3NhZ2UpKS5lbmNvZGUoJ2xhdGluMScsICdzdHJpY3QnKSkKKyAgICAgICAgICAgIGlmIG5vdCBoYXNhdHRyKHNlbGYsICdfaGVhZGVyc19idWZmZXInKToKKyAgICAgICAgICAgICAgICBzZWxmLl9oZWFkZXJzX2J1ZmZlciA9IFtdCisgICAgICAgICAgICBzZWxmLl9oZWFkZXJzX2J1ZmZlci5hcHBlbmQoKCIlcyAlZCAlc1xyXG4iICUKKyAgICAgICAgICAgICAgICAgICAgKHNlbGYucHJvdG9jb2xfdmVyc2lvbiwgY29kZSwgbWVzc2FnZSkpLmVuY29kZSgKKyAgICAgICAgICAgICAgICAgICAgICAgICdsYXRpbi0xJywgJ3N0cmljdCcpKQogCiAgICAgZGVmIHNlbmRfaGVhZGVyKHNlbGYsIGtleXdvcmQsIHZhbHVlKToKLSAgICAgICAgIiIiU2VuZCBhIE1JTUUgaGVhZGVyLiIiIgorICAgICAgICAiIiJTZW5kIGEgTUlNRSBoZWFkZXIgdG8gdGhlIGhlYWRlcnMgYnVmZmVyLiIiIgogICAgICAgICBpZiBzZWxmLnJlcXVlc3RfdmVyc2lvbiAhPSAnSFRUUC8wLjknOgogICAgICAgICAgICAgaWYgbm90IGhhc2F0dHIoc2VsZiwgJ19oZWFkZXJzX2J1ZmZlcicpOgogICAgICAgICAgICAgICAgIHNlbGYuX2hlYWRlcnNfYnVmZmVyID0gW10KICAgICAgICAgICAgIHNlbGYuX2hlYWRlcnNfYnVmZmVyLmFwcGVuZCgKLSAgICAgICAgICAgICAgICAoIiVzOiAlc1xyXG4iICUgKGtleXdvcmQsIHZhbHVlKSkuZW5jb2RlKCdsYXRpbjEnLCAnc3RyaWN0JykpCisgICAgICAgICAgICAgICAgKCIlczogJXNcclxuIiAlIChrZXl3b3JkLCB2YWx1ZSkpLmVuY29kZSgnbGF0aW4tMScsICdzdHJpY3QnKSkKIAogICAgICAgICBpZiBrZXl3b3JkLmxvd2VyKCkgPT0gJ2Nvbm5lY3Rpb24nOgogICAgICAgICAgICAgaWYgdmFsdWUubG93ZXIoKSA9PSAnY2xvc2UnOgpAQCAtNDY5LDYgKzQ3NSwxMCBAQAogICAgICAgICAiIiJTZW5kIHRoZSBibGFuayBsaW5lIGVuZGluZyB0aGUgTUlNRSBoZWFkZXJzLiIiIgogICAgICAgICBpZiBzZWxmLnJlcXVlc3RfdmVyc2lvbiAhPSAnSFRUUC8wLjknOgogICAgICAgICAgICAgc2VsZi5faGVhZGVyc19idWZmZXIuYXBwZW5kKGIiXHJcbiIpCisgICAgICAgICAgICBzZWxmLmZsdXNoX2hlYWRlcnMoKQorCisgICAgZGVmIGZsdXNoX2hlYWRlcnMoc2VsZik6CisgICAgICAgIGlmIGhhc2F0dHIoc2VsZiwgJ19oZWFkZXJzX2J1ZmZlcicpOgogICAgICAgICAgICAgc2VsZi53ZmlsZS53cml0ZShiIiIuam9pbihzZWxmLl9oZWFkZXJzX2J1ZmZlcikpCiAgICAgICAgICAgICBzZWxmLl9oZWFkZXJzX2J1ZmZlciA9IFtdCiAKQEAgLTcyMiwxMCArNzMyLDE2IEBACiAgICAgICAgIGxpc3Quc29ydChrZXk9bGFtYmRhIGE6IGEubG93ZXIoKSkKICAgICAgICAgciA9IFtdCiAgICAgICAgIGRpc3BsYXlwYXRoID0gaHRtbC5lc2NhcGUodXJsbGliLnBhcnNlLnVucXVvdGUoc2VsZi5wYXRoKSkKLSAgICAgICAgci5hcHBlbmQoJzwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCAzLjIgRmluYWwvL0VOIj4nKQotICAgICAgICByLmFwcGVuZCgiPGh0bWw+XG48dGl0bGU+RGlyZWN0b3J5IGxpc3RpbmcgZm9yICVzPC90aXRsZT5cbiIgJSBkaXNwbGF5cGF0aCkKLSAgICAgICAgci5hcHBlbmQoIjxib2R5PlxuPGgyPkRpcmVjdG9yeSBsaXN0aW5nIGZvciAlczwvaDI+XG4iICUgZGlzcGxheXBhdGgpCi0gICAgICAgIHIuYXBwZW5kKCI8aHI+XG48dWw+XG4iKQorICAgICAgICBlbmMgPSBzeXMuZ2V0ZmlsZXN5c3RlbWVuY29kaW5nKCkKKyAgICAgICAgdGl0bGUgPSAnRGlyZWN0b3J5IGxpc3RpbmcgZm9yICVzJyAlIGRpc3BsYXlwYXRoCisgICAgICAgIHIuYXBwZW5kKCc8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMS8vRU4iICcKKyAgICAgICAgICAgICAgICAgJyJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9zdHJpY3QuZHRkIj4nKQorICAgICAgICByLmFwcGVuZCgnPGh0bWw+XG48aGVhZD4nKQorICAgICAgICByLmFwcGVuZCgnPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiAnCisgICAgICAgICAgICAgICAgICdjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9JXMiPicgJSBlbmMpCisgICAgICAgIHIuYXBwZW5kKCc8dGl0bGU+JXM8L3RpdGxlPlxuPC9oZWFkPicgJSB0aXRsZSkKKyAgICAgICAgci5hcHBlbmQoJzxib2R5PlxuPGgxPiVzPC9oMT4nICUgdGl0bGUpCisgICAgICAgIHIuYXBwZW5kKCc8aHI+XG48dWw+JykKICAgICAgICAgZm9yIG5hbWUgaW4gbGlzdDoKICAgICAgICAgICAgIGZ1bGxuYW1lID0gb3MucGF0aC5qb2luKHBhdGgsIG5hbWUpCiAgICAgICAgICAgICBkaXNwbGF5bmFtZSA9IGxpbmtuYW1lID0gbmFtZQpAQCAtNzM2LDExICs3NTIsMTAgQEAKICAgICAgICAgICAgIGlmIG9zLnBhdGguaXNsaW5rKGZ1bGxuYW1lKToKICAgICAgICAgICAgICAgICBkaXNwbGF5bmFtZSA9IG5hbWUgKyAiQCIKICAgICAgICAgICAgICAgICAjIE5vdGU6IGEgbGluayB0byBhIGRpcmVjdG9yeSBkaXNwbGF5cyB3aXRoIEAgYW5kIGxpbmtzIHdpdGggLwotICAgICAgICAgICAgci5hcHBlbmQoJzxsaT48YSBocmVmPSIlcyI+JXM8L2E+XG4nCisgICAgICAgICAgICByLmFwcGVuZCgnPGxpPjxhIGhyZWY9IiVzIj4lczwvYT48L2xpPicKICAgICAgICAgICAgICAgICAgICAgJSAodXJsbGliLnBhcnNlLnF1b3RlKGxpbmtuYW1lKSwgaHRtbC5lc2NhcGUoZGlzcGxheW5hbWUpKSkKLSAgICAgICAgci5hcHBlbmQoIjwvdWw+XG48aHI+XG48L2JvZHk+XG48L2h0bWw+XG4iKQotICAgICAgICBlbmMgPSBzeXMuZ2V0ZmlsZXN5c3RlbWVuY29kaW5nKCkKLSAgICAgICAgZW5jb2RlZCA9ICcnLmpvaW4ocikuZW5jb2RlKGVuYykKKyAgICAgICAgci5hcHBlbmQoJzwvdWw+XG48aHI+XG48L2JvZHk+XG48L2h0bWw+XG4nKQorICAgICAgICBlbmNvZGVkID0gJ1xuJy5qb2luKHIpLmVuY29kZShlbmMpCiAgICAgICAgIGYgPSBpby5CeXRlc0lPKCkKICAgICAgICAgZi53cml0ZShlbmNvZGVkKQogICAgICAgICBmLnNlZWsoMCkKQEAgLTg4NSwxMSArOTAwLDcgQEAKIAogZGVmIGV4ZWN1dGFibGUocGF0aCk6CiAgICAgIiIiVGVzdCBmb3IgZXhlY3V0YWJsZSBmaWxlLiIiIgotICAgIHRyeToKLSAgICAgICAgc3QgPSBvcy5zdGF0KHBhdGgpCi0gICAgZXhjZXB0IG9zLmVycm9yOgotICAgICAgICByZXR1cm4gRmFsc2UKLSAgICByZXR1cm4gc3Quc3RfbW9kZSAmIDBvMTExICE9IDAKKyAgICByZXR1cm4gb3MuYWNjZXNzKHBhdGgsIG9zLlhfT0spCiAKIAogY2xhc3MgQ0dJSFRUUFJlcXVlc3RIYW5kbGVyKFNpbXBsZUhUVFBSZXF1ZXN0SGFuZGxlcik6CkBAIC0xMDAzLDcgKzEwMTQsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjcmlwdG5hbWUpCiAgICAgICAgICAgICByZXR1cm4KICAgICAgICAgaXNweSA9IHNlbGYuaXNfcHl0aG9uKHNjcmlwdG5hbWUpCi0gICAgICAgIGlmIG5vdCBpc3B5OgorICAgICAgICBpZiBzZWxmLmhhdmVfZm9yayBvciBub3QgaXNweToKICAgICAgICAgICAgIGlmIG5vdCBzZWxmLmlzX2V4ZWN1dGFibGUoc2NyaXB0ZmlsZSk6CiAgICAgICAgICAgICAgICAgc2VsZi5zZW5kX2Vycm9yKDQwMywgIkNHSSBzY3JpcHQgaXMgbm90IGV4ZWN1dGFibGUgKCVyKSIgJQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JpcHRuYW1lKQpAQCAtMTA3OCw2ICsxMDg5LDcgQEAKICAgICAgICAgICAgIGVudi5zZXRkZWZhdWx0KGssICIiKQogCiAgICAgICAgIHNlbGYuc2VuZF9yZXNwb25zZSgyMDAsICJTY3JpcHQgb3V0cHV0IGZvbGxvd3MiKQorICAgICAgICBzZWxmLmZsdXNoX2hlYWRlcnMoKQogCiAgICAgICAgIGRlY29kZWRfcXVlcnkgPSBxdWVyeS5yZXBsYWNlKCcrJywgJyAnKQogCmRpZmYgLS1naXQgYS9MaWIvaWRsZWxpYi9QeVNoZWxsLnB5IGIvTGliL2lkbGVsaWIvUHlTaGVsbC5weQppbmRleCA2YmYwYThjLi5mODg0YjI4IDEwMDY0NAotLS0gYS9MaWIvaWRsZWxpYi9QeVNoZWxsLnB5CisrKyBiL0xpYi9pZGxlbGliL1B5U2hlbGwucHkKQEAgLTQ2OCw2ICs0NjgsMTAgQEAKIAogICAgIGRlZiBraWxsX3N1YnByb2Nlc3Moc2VsZik6CiAgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYucnBjY2x0Lmxpc3RlbmluZ19zb2NrLmNsb3NlKCkKKyAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOiAgIyBubyBzb2NrZXQKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgdHJ5OgogICAgICAgICAgICAgc2VsZi5ycGNjbHQuY2xvc2UoKQogICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6ICAjIG5vIHNvY2tldAogICAgICAgICAgICAgcGFzcwpkaWZmIC0tZ2l0IGEvTGliL2lkbGVsaWIvY29uZmlnSGFuZGxlci5weSBiL0xpYi9pZGxlbGliL2NvbmZpZ0hhbmRsZXIucHkKaW5kZXggNzNiOGRiNS4uNzkzMTVlZiAxMDA2NDQKLS0tIGEvTGliL2lkbGVsaWIvY29uZmlnSGFuZGxlci5weQorKysgYi9MaWIvaWRsZWxpYi9jb25maWdIYW5kbGVyLnB5CkBAIC0xNDUsNyArMTQ1LDggQEAKICAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yOgogICAgICAgICAgICAgICAgIG9zLnVubGluayhmbmFtZSkKICAgICAgICAgICAgICAgICBjZmdGaWxlID0gb3BlbihmbmFtZSwgJ3cnKQotICAgICAgICAgICAgc2VsZi53cml0ZShjZmdGaWxlKQorICAgICAgICAgICAgd2l0aCBjZmdGaWxlOgorICAgICAgICAgICAgICAgIHNlbGYud3JpdGUoY2ZnRmlsZSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHNlbGYuUmVtb3ZlRmlsZSgpCiAKZGlmZiAtLWdpdCBhL0xpYi9pZGxlbGliL2lkbGV2ZXIucHkgYi9MaWIvaWRsZWxpYi9pZGxldmVyLnB5CmluZGV4IGNiY2RhMDUuLjc2YjhiYjggMTAwNjQ0Ci0tLSBhL0xpYi9pZGxlbGliL2lkbGV2ZXIucHkKKysrIGIvTGliL2lkbGVsaWIvaWRsZXZlci5weQpAQCAtMSArMSBAQAotSURMRV9WRVJTSU9OID0gIjMuMi4zcmMxIgorSURMRV9WRVJTSU9OID0gIjMuMy4wYTEiCmRpZmYgLS1naXQgYS9MaWIvaW1hcGxpYi5weSBiL0xpYi9pbWFwbGliLnB5CmluZGV4IDFmY2JhMjEuLmJkYTJhZTkgMTAwNjQ0Ci0tLSBhL0xpYi9pbWFwbGliLnB5CisrKyBiL0xpYi9pbWFwbGliLnB5CkBAIC0yNDksMTUgKzI0OSw3IEBACiAKICAgICBkZWYgcmVhZChzZWxmLCBzaXplKToKICAgICAgICAgIiIiUmVhZCAnc2l6ZScgYnl0ZXMgZnJvbSByZW1vdGUuIiIiCi0gICAgICAgIGNodW5rcyA9IFtdCi0gICAgICAgIHJlYWQgPSAwCi0gICAgICAgIHdoaWxlIHJlYWQgPCBzaXplOgotICAgICAgICAgICAgZGF0YSA9IHNlbGYuZmlsZS5yZWFkKG1pbihzaXplLXJlYWQsIDQwOTYpKQotICAgICAgICAgICAgaWYgbm90IGRhdGE6Ci0gICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgIHJlYWQgKz0gbGVuKGRhdGEpCi0gICAgICAgICAgICBjaHVua3MuYXBwZW5kKGRhdGEpCi0gICAgICAgIHJldHVybiBiJycuam9pbihjaHVua3MpCisgICAgICAgIHJldHVybiBzZWxmLmZpbGUucmVhZChzaXplKQogCiAKICAgICBkZWYgcmVhZGxpbmUoc2VsZik6CkBAIC0xMTc3LDI1ICsxMTY5LDQwIEBACiAKICAgICAgICAgIiIiSU1BUDQgY2xpZW50IGNsYXNzIG92ZXIgU1NMIGNvbm5lY3Rpb24KIAotICAgICAgICBJbnN0YW50aWF0ZSB3aXRoOiBJTUFQNF9TU0woW2hvc3RbLCBwb3J0Wywga2V5ZmlsZVssIGNlcnRmaWxlXV1dXSkKKyAgICAgICAgSW5zdGFudGlhdGUgd2l0aDogSU1BUDRfU1NMKFtob3N0WywgcG9ydFssIGtleWZpbGVbLCBjZXJ0ZmlsZVssIHNzbF9jb250ZXh0XV1dXV0pCiAKICAgICAgICAgICAgICAgICBob3N0IC0gaG9zdCdzIG5hbWUgKGRlZmF1bHQ6IGxvY2FsaG9zdCk7Ci0gICAgICAgICAgICAgICAgcG9ydCAtIHBvcnQgbnVtYmVyIChkZWZhdWx0OiBzdGFuZGFyZCBJTUFQNCBTU0wgcG9ydCkuCisgICAgICAgICAgICAgICAgcG9ydCAtIHBvcnQgbnVtYmVyIChkZWZhdWx0OiBzdGFuZGFyZCBJTUFQNCBTU0wgcG9ydCk7CiAgICAgICAgICAgICAgICAga2V5ZmlsZSAtIFBFTSBmb3JtYXR0ZWQgZmlsZSB0aGF0IGNvbnRhaW5zIHlvdXIgcHJpdmF0ZSBrZXkgKGRlZmF1bHQ6IE5vbmUpOwogICAgICAgICAgICAgICAgIGNlcnRmaWxlIC0gUEVNIGZvcm1hdHRlZCBjZXJ0aWZpY2F0ZSBjaGFpbiBmaWxlIChkZWZhdWx0OiBOb25lKTsKKyAgICAgICAgICAgICAgICBzc2xfY29udGV4dCAtIGEgU1NMQ29udGV4dCBvYmplY3QgdGhhdCBjb250YWlucyB5b3VyIGNlcnRpZmljYXRlIGNoYWluCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgcHJpdmF0ZSBrZXkgKGRlZmF1bHQ6IE5vbmUpCisgICAgICAgICAgICAgICAgTm90ZTogaWYgc3NsX2NvbnRleHQgaXMgcHJvdmlkZWQsIHRoZW4gcGFyYW1ldGVycyBrZXlmaWxlIG9yCisgICAgICAgICAgICAgICAgY2VydGZpbGUgc2hvdWxkIG5vdCBiZSBzZXQgb3RoZXJ3aXNlIFZhbHVlRXJyb3IgaXMgdGhyb3duLgogCiAgICAgICAgIGZvciBtb3JlIGRvY3VtZW50YXRpb24gc2VlIHRoZSBkb2NzdHJpbmcgb2YgdGhlIHBhcmVudCBjbGFzcyBJTUFQNC4KICAgICAgICAgIiIiCiAKIAotICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdCA9ICcnLCBwb3J0ID0gSU1BUDRfU1NMX1BPUlQsIGtleWZpbGUgPSBOb25lLCBjZXJ0ZmlsZSA9IE5vbmUpOgorICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdD0nJywgcG9ydD1JTUFQNF9TU0xfUE9SVCwga2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lLCBzc2xfY29udGV4dD1Ob25lKToKKyAgICAgICAgICAgIGlmIHNzbF9jb250ZXh0IGlzIG5vdCBOb25lIGFuZCBrZXlmaWxlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoInNzbF9jb250ZXh0IGFuZCBrZXlmaWxlIGFyZ3VtZW50cyBhcmUgbXV0dWFsbHkgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4Y2x1c2l2ZSIpCisgICAgICAgICAgICBpZiBzc2xfY29udGV4dCBpcyBub3QgTm9uZSBhbmQgY2VydGZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigic3NsX2NvbnRleHQgYW5kIGNlcnRmaWxlIGFyZ3VtZW50cyBhcmUgbXV0dWFsbHkgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4Y2x1c2l2ZSIpCisKICAgICAgICAgICAgIHNlbGYua2V5ZmlsZSA9IGtleWZpbGUKICAgICAgICAgICAgIHNlbGYuY2VydGZpbGUgPSBjZXJ0ZmlsZQorICAgICAgICAgICAgc2VsZi5zc2xfY29udGV4dCA9IHNzbF9jb250ZXh0CiAgICAgICAgICAgICBJTUFQNC5fX2luaXRfXyhzZWxmLCBob3N0LCBwb3J0KQogCiAgICAgICAgIGRlZiBfY3JlYXRlX3NvY2tldChzZWxmKToKICAgICAgICAgICAgIHNvY2sgPSBJTUFQNC5fY3JlYXRlX3NvY2tldChzZWxmKQotICAgICAgICAgICAgcmV0dXJuIHNzbC53cmFwX3NvY2tldChzb2NrLCBzZWxmLmtleWZpbGUsIHNlbGYuY2VydGZpbGUpCisgICAgICAgICAgICBpZiBzZWxmLnNzbF9jb250ZXh0OgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLnNzbF9jb250ZXh0LndyYXBfc29ja2V0KHNvY2spCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJldHVybiBzc2wud3JhcF9zb2NrZXQoc29jaywgc2VsZi5rZXlmaWxlLCBzZWxmLmNlcnRmaWxlKQogCiAgICAgICAgIGRlZiBvcGVuKHNlbGYsIGhvc3Q9JycsIHBvcnQ9SU1BUDRfU1NMX1BPUlQpOgogICAgICAgICAgICAgIiIiU2V0dXAgY29ubmVjdGlvbiB0byByZW1vdGUgc2VydmVyIG9uICJob3N0OnBvcnQiLgpkaWZmIC0tZ2l0IGEvTGliL2ltcG9ydGxpYi9fX2luaXRfXy5weSBiL0xpYi9pbXBvcnRsaWIvX19pbml0X18ucHkKaW5kZXggMmJhYWY5My4uNTdmYjI4NCAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi9fX2luaXRfXy5weQorKysgYi9MaWIvaW1wb3J0bGliL19faW5pdF9fLnB5CkBAIC0xLDEwMyArMSwxOSBAQAotIiIiQSBwdXJlIFB5dGhvbiBpbXBsZW1lbnRhdGlvbiBvZiBpbXBvcnQuCi0KLVJlZmVyZW5jZXMgb24gaW1wb3J0OgotCi0gICAgKiBMYW5ndWFnZSByZWZlcmVuY2UKLSAgICAgICAgICBodHRwOi8vZG9jcy5weXRob24ub3JnL3JlZi9pbXBvcnQuaHRtbAotICAgICogX19pbXBvcnRfXyBmdW5jdGlvbgotICAgICAgICAgIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvbGliL2J1aWx0LWluLWZ1bmNzLmh0bWwKLSAgICAqIFBhY2thZ2VzCi0gICAgICAgICAgaHR0cDovL3d3dy5weXRob24ub3JnL2RvYy9lc3NheXMvcGFja2FnZXMuaHRtbAotICAgICogUEVQIDIzNTogSW1wb3J0IG9uIENhc2UtSW5zZW5zaXRpdmUgUGxhdGZvcm1zCi0gICAgICAgICAgaHR0cDovL3d3dy5weXRob24ub3JnL2Rldi9wZXBzL3BlcC0wMjM1Ci0gICAgKiBQRVAgMjc1OiBJbXBvcnQgTW9kdWxlcyBmcm9tIFppcCBBcmNoaXZlcwotICAgICAgICAgIGh0dHA6Ly93d3cucHl0aG9uLm9yZy9kZXYvcGVwcy9wZXAtMDI3MwotICAgICogUEVQIDMwMjogTmV3IEltcG9ydCBIb29rcwotICAgICAgICAgIGh0dHA6Ly93d3cucHl0aG9uLm9yZy9kZXYvcGVwcy9wZXAtMDMwMi8KLSAgICAqIFBFUCAzMjg6IEltcG9ydHM6IE11bHRpLWxpbmUgYW5kIEFic29sdXRlL1JlbGF0aXZlCi0gICAgICAgICAgaHR0cDovL3d3dy5weXRob24ub3JnL2Rldi9wZXBzL3BlcC0wMzI4Ci0KLSIiIgotX19hbGxfXyA9IFsnX19pbXBvcnRfXycsICdpbXBvcnRfbW9kdWxlJ10KKyIiIkEgcHVyZSBQeXRob24gaW1wbGVtZW50YXRpb24gb2YgaW1wb3J0LiIiIgorX19hbGxfXyA9IFsnX19pbXBvcnRfXycsICdpbXBvcnRfbW9kdWxlJywgJ2ludmFsaWRhdGVfY2FjaGVzJ10KIAogZnJvbSAuIGltcG9ydCBfYm9vdHN0cmFwCiAKLWltcG9ydCBvcwotaW1wb3J0IHJlCi1pbXBvcnQgdG9rZW5pemUKKworIyBUbyBzaW1wbGlmeSBpbXBvcnRzIGluIHRlc3QgY29kZQorX3dfbG9uZyA9IF9ib290c3RyYXAuX3dfbG9uZworX3JfbG9uZyA9IF9ib290c3RyYXAuX3JfbG9uZworCiAKICMgQm9vdHN0cmFwIGhlbHAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKK2ltcG9ydCBpbXAKK2ltcG9ydCBzeXMKIAotZGVmIF9jYXNlX29rKGRpcmVjdG9yeSwgY2hlY2spOgotICAgICIiIkNoZWNrIGlmIHRoZSBkaXJlY3RvcnkgY29udGFpbnMgc29tZXRoaW5nIG1hdGNoaW5nICdjaGVjaycuCi0KLSAgICBObyBjaGVjayBpcyBkb25lIGlmIHRoZSBmaWxlL2RpcmVjdG9yeSBleGlzdHMgb3Igbm90LgotCi0gICAgIiIiCi0gICAgaWYgJ1BZVEhPTkNBU0VPSycgaW4gb3MuZW52aXJvbjoKLSAgICAgICAgcmV0dXJuIFRydWUKLSAgICBlbGlmIGNoZWNrIGluIG9zLmxpc3RkaXIoZGlyZWN0b3J5IGlmIGRpcmVjdG9yeSBlbHNlIG9zLmdldGN3ZCgpKToKLSAgICAgICAgcmV0dXJuIFRydWUKLSAgICByZXR1cm4gRmFsc2UKLQotCi1kZWYgX3dfbG9uZyh4KToKLSAgICAiIiJDb252ZXJ0IGEgMzItYml0IGludGVnZXIgdG8gbGl0dGxlLWVuZGlhbi4KLQotICAgIFhYWCBUZW1wb3JhcnkgdW50aWwgbWFyc2hhbCdzIGxvbmcgZnVuY3Rpb25zIGFyZSBleHBvc2VkLgotCi0gICAgIiIiCi0gICAgeCA9IGludCh4KQotICAgIGludF9ieXRlcyA9IFtdCi0gICAgaW50X2J5dGVzLmFwcGVuZCh4ICYgMHhGRikKLSAgICBpbnRfYnl0ZXMuYXBwZW5kKCh4ID4+IDgpICYgMHhGRikKLSAgICBpbnRfYnl0ZXMuYXBwZW5kKCh4ID4+IDE2KSAmIDB4RkYpCi0gICAgaW50X2J5dGVzLmFwcGVuZCgoeCA+PiAyNCkgJiAweEZGKQotICAgIHJldHVybiBieXRlYXJyYXkoaW50X2J5dGVzKQotCi0KLWRlZiBfcl9sb25nKGludF9ieXRlcyk6Ci0gICAgIiIiQ29udmVydCA0IGJ5dGVzIGluIGxpdHRsZS1lbmRpYW4gdG8gYW4gaW50ZWdlci4KLQotICAgIFhYWCBUZW1wb3JhcnkgdW50aWwgbWFyc2hhbCdzIGxvbmcgZnVuY3Rpb24gYXJlIGV4cG9zZWQuCi0KLSAgICAiIiIKLSAgICB4ID0gaW50X2J5dGVzWzBdCi0gICAgeCB8PSBpbnRfYnl0ZXNbMV0gPDwgOAotICAgIHggfD0gaW50X2J5dGVzWzJdIDw8IDE2Ci0gICAgeCB8PSBpbnRfYnl0ZXNbM10gPDwgMjQKLSAgICByZXR1cm4geAotCi0KLSMgUmVxdWlyZWQgYnVpbHQtaW4gbW9kdWxlcy4KLXRyeToKLSAgICBpbXBvcnQgcG9zaXggYXMgX29zCi1leGNlcHQgSW1wb3J0RXJyb3I6Ci0gICAgdHJ5OgotICAgICAgICBpbXBvcnQgbnQgYXMgX29zCi0gICAgZXhjZXB0IEltcG9ydEVycm9yOgotICAgICAgICB0cnk6Ci0gICAgICAgICAgICBpbXBvcnQgb3MyIGFzIF9vcwotICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6Ci0gICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcigncG9zaXgsIG50LCBvciBvczIgbW9kdWxlIHJlcXVpcmVkIGZvciBpbXBvcnRsaWInKQotX2Jvb3RzdHJhcC5fb3MgPSBfb3MKLWltcG9ydCBpbXAsIHN5cywgbWFyc2hhbCwgZXJybm8sIF9pbwotX2Jvb3RzdHJhcC5pbXAgPSBpbXAKLV9ib290c3RyYXAuc3lzID0gc3lzCi1fYm9vdHN0cmFwLm1hcnNoYWwgPSBtYXJzaGFsCi1fYm9vdHN0cmFwLmVycm5vID0gZXJybm8KLV9ib290c3RyYXAuX2lvID0gX2lvCi1pbXBvcnQgX3dhcm5pbmdzCi1fYm9vdHN0cmFwLl93YXJuaW5ncyA9IF93YXJuaW5ncwotCi0KLWZyb20gb3MgaW1wb3J0IHNlcAotIyBGb3Igb3MucGF0aC5qb2luIHJlcGxhY2VtZW50OyBwdWxsIGZyb20gSW5jbHVkZS9vc2RlZnMuaDpTRVAgLgotX2Jvb3RzdHJhcC5wYXRoX3NlcCA9IHNlcAotCi1fYm9vdHN0cmFwLl9jYXNlX29rID0gX2Nhc2Vfb2sKLW1hcnNoYWwuX3dfbG9uZyA9IF93X2xvbmcKLW1hcnNoYWwuX3JfbG9uZyA9IF9yX2xvbmcKK19ib290c3RyYXAuX3NldHVwKHN5cywgaW1wKQogCiAKICMgUHVibGljIEFQSSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKQEAgLTEwNSw2ICsyMSwxNCBAQAogZnJvbSAuX2Jvb3RzdHJhcCBpbXBvcnQgX19pbXBvcnRfXwogCiAKK2RlZiBpbnZhbGlkYXRlX2NhY2hlcygpOgorICAgICIiIkNhbGwgdGhlIGludmFsaWRhdGVfY2FjaGVzKCkgbWV0aG9kIG9uIGFsbCBmaW5kZXJzIHN0b3JlZCBpbgorICAgIHN5cy5wYXRoX2ltcG9ydGVyX2NhY2hlcyAod2hlcmUgaW1wbGVtZW50ZWQpLiIiIgorICAgIGZvciBmaW5kZXIgaW4gc3lzLnBhdGhfaW1wb3J0ZXJfY2FjaGUudmFsdWVzKCk6CisgICAgICAgIGlmIGhhc2F0dHIoZmluZGVyLCAnaW52YWxpZGF0ZV9jYWNoZXMnKToKKyAgICAgICAgICAgIGZpbmRlci5pbnZhbGlkYXRlX2NhY2hlcygpCisKKwogZGVmIGltcG9ydF9tb2R1bGUobmFtZSwgcGFja2FnZT1Ob25lKToKICAgICAiIiJJbXBvcnQgYSBtb2R1bGUuCiAKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvX2Jvb3RzdHJhcC5weSBiL0xpYi9pbXBvcnRsaWIvX2Jvb3RzdHJhcC5weQppbmRleCA5MGViMWE3Li5lMGY4NmZjIDEwMDY0NAotLS0gYS9MaWIvaW1wb3J0bGliL19ib290c3RyYXAucHkKKysrIGIvTGliL2ltcG9ydGxpYi9fYm9vdHN0cmFwLnB5CkBAIC03LDkgKzcsMTAgQEAKIAogIiIiCiAKLSMgSW5qZWN0ZWQgbW9kdWxlcyBhcmUgJ193YXJuaW5ncycsICdpbXAnLCAnc3lzJywgJ21hcnNoYWwnLCAnZXJybm8nLCAnX2lvJywKKyMgSW5qZWN0ZWQgbW9kdWxlcyBhcmUgJ193YXJuaW5ncycsICdpbXAnLCAnc3lzJywgJ21hcnNoYWwnLCAnX2lvJywKICMgYW5kICdfb3MnIChhLmsuYS4gJ3Bvc2l4JywgJ250JyBvciAnb3MyJykuCiAjIEluamVjdGVkIGF0dHJpYnV0ZSBpcyBwYXRoX3NlcC4KKyMgTW9zdCBpbmplY3Rpb24gaXMgaGFuZGxlZCBieSBfc2V0dXAoKS4KICMKICMgV2hlbiBlZGl0aW5nIHRoaXMgY29kZSBiZSBhd2FyZSB0aGF0IGNvZGUgZXhlY3V0ZWQgYXQgaW1wb3J0IHRpbWUgQ0FOTk9UCiAjIHJlZmVyZW5jZSBhbnkgaW5qZWN0ZWQgb2JqZWN0cyEgVGhpcyBpbmNsdWRlcyBub3Qgb25seSBnbG9iYWwgY29kZSBidXQgYWxzbwpAQCAtMTgsMTEgKzE5LDU3IEBACiAKICMgQm9vdHN0cmFwLXJlbGF0ZWQgY29kZSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAorQ0FTRV9JTlNFTlNJVElWRV9QTEFURk9STVMgPSAnd2luJywgJ2N5Z3dpbicsICdkYXJ3aW4nCisKKworZGVmIF9tYWtlX3JlbGF4X2Nhc2UoKToKKyAgICBpZiBhbnkobWFwKHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoLCBDQVNFX0lOU0VOU0lUSVZFX1BMQVRGT1JNUykpOgorICAgICAgICBkZWYgX3JlbGF4X2Nhc2UoKToKKyAgICAgICAgICAgICIiIlRydWUgaWYgZmlsZW5hbWVzIG11c3QgYmUgY2hlY2tlZCBjYXNlLWluc2Vuc2l0aXZlbHkuIiIiCisgICAgICAgICAgICByZXR1cm4gYidQWVRIT05DQVNFT0snIGluIF9vcy5lbnZpcm9uCisgICAgZWxzZToKKyAgICAgICAgZGVmIF9yZWxheF9jYXNlKCk6CisgICAgICAgICAgICAiIiJUcnVlIGlmIGZpbGVuYW1lcyBtdXN0IGJlIGNoZWNrZWQgY2FzZS1pbnNlbnNpdGl2ZWx5LiIiIgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgcmV0dXJuIF9yZWxheF9jYXNlCisKKworIyBUT0RPOiBFeHBvc2UgZnJvbSBtYXJzaGFsCitkZWYgX3dfbG9uZyh4KToKKyAgICAiIiJDb252ZXJ0IGEgMzItYml0IGludGVnZXIgdG8gbGl0dGxlLWVuZGlhbi4KKworICAgIFhYWCBUZW1wb3JhcnkgdW50aWwgbWFyc2hhbCdzIGxvbmcgZnVuY3Rpb25zIGFyZSBleHBvc2VkLgorCisgICAgIiIiCisgICAgeCA9IGludCh4KQorICAgIGludF9ieXRlcyA9IFtdCisgICAgaW50X2J5dGVzLmFwcGVuZCh4ICYgMHhGRikKKyAgICBpbnRfYnl0ZXMuYXBwZW5kKCh4ID4+IDgpICYgMHhGRikKKyAgICBpbnRfYnl0ZXMuYXBwZW5kKCh4ID4+IDE2KSAmIDB4RkYpCisgICAgaW50X2J5dGVzLmFwcGVuZCgoeCA+PiAyNCkgJiAweEZGKQorICAgIHJldHVybiBieXRlYXJyYXkoaW50X2J5dGVzKQorCisKKyMgVE9ETzogRXhwb3NlIGZyb20gbWFyc2hhbAorZGVmIF9yX2xvbmcoaW50X2J5dGVzKToKKyAgICAiIiJDb252ZXJ0IDQgYnl0ZXMgaW4gbGl0dGxlLWVuZGlhbiB0byBhbiBpbnRlZ2VyLgorCisgICAgWFhYIFRlbXBvcmFyeSB1bnRpbCBtYXJzaGFsJ3MgbG9uZyBmdW5jdGlvbiBhcmUgZXhwb3NlZC4KKworICAgICIiIgorICAgIHggPSBpbnRfYnl0ZXNbMF0KKyAgICB4IHw9IGludF9ieXRlc1sxXSA8PCA4CisgICAgeCB8PSBpbnRfYnl0ZXNbMl0gPDwgMTYKKyAgICB4IHw9IGludF9ieXRlc1szXSA8PCAyNAorICAgIHJldHVybiB4CisKKworCiAjIFhYWCBDb3VsZCBhbHNvIGV4cG9zZSBNb2R1bGVzL2dldHBhdGguYzpqb2lucGF0aCgpCiBkZWYgX3BhdGhfam9pbigqYXJncyk6CiAgICAgIiIiUmVwbGFjZW1lbnQgZm9yIG9zLnBhdGguam9pbi4iIiIKICAgICByZXR1cm4gcGF0aF9zZXAuam9pbih4WzotbGVuKHBhdGhfc2VwKV0gaWYgeC5lbmRzd2l0aChwYXRoX3NlcCkgZWxzZSB4Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gYXJncyBpZiB4KQorICAgICAgICAgICAgICAgICAgICAgICAgIGZvciB4IGluIGFyZ3MgaWYgeCkKIAogCiBkZWYgX3BhdGhfZXhpc3RzKHBhdGgpOgpAQCAtODAsMTAgKzEyNywzMiBAQAogICAgICAgICAgICAgcmV0dXJuIF9wYXRoX2pvaW4oX29zLmdldGN3ZCgpLCBwYXRoKQogCiAKK2RlZiBfd3JpdGVfYXRvbWljKHBhdGgsIGRhdGEpOgorICAgICIiIkJlc3QtZWZmb3J0IGZ1bmN0aW9uIHRvIHdyaXRlIGRhdGEgdG8gYSBwYXRoIGF0b21pY2FsbHkuCisgICAgQmUgcHJlcGFyZWQgdG8gaGFuZGxlIGEgRmlsZUV4aXN0c0Vycm9yIGlmIGNvbmN1cnJlbnQgd3JpdGluZyBvZiB0aGUKKyAgICB0ZW1wb3JhcnkgZmlsZSBpcyBhdHRlbXB0ZWQuIiIiCisgICAgIyBpZCgpIGlzIHVzZWQgdG8gZ2VuZXJhdGUgYSBwc2V1ZG8tcmFuZG9tIGZpbGVuYW1lLgorICAgIHBhdGhfdG1wID0gJ3t9Lnt9Jy5mb3JtYXQocGF0aCwgaWQocGF0aCkpCisgICAgZmQgPSBfb3Mub3BlbihwYXRoX3RtcCwgX29zLk9fRVhDTCB8IF9vcy5PX0NSRUFUIHwgX29zLk9fV1JPTkxZLCAwbzY2NikKKyAgICB0cnk6CisgICAgICAgICMgV2UgZmlyc3Qgd3JpdGUgZGF0YSB0byBhIHRlbXBvcmFyeSBmaWxlLCBhbmQgdGhlbiB1c2Ugb3MucmVwbGFjZSgpIHRvCisgICAgICAgICMgcGVyZm9ybSBhbiBhdG9taWMgcmVuYW1lLgorICAgICAgICB3aXRoIF9pby5GaWxlSU8oZmQsICd3YicpIGFzIGZpbGU6CisgICAgICAgICAgICBmaWxlLndyaXRlKGRhdGEpCisgICAgICAgIF9vcy5yZXBsYWNlKHBhdGhfdG1wLCBwYXRoKQorICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBfb3MudW5saW5rKHBhdGhfdG1wKQorICAgICAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgcmFpc2UKKworCiBkZWYgX3dyYXAobmV3LCBvbGQpOgogICAgICIiIlNpbXBsZSBzdWJzdGl0dXRlIGZvciBmdW5jdG9vbHMud3JhcHMuIiIiCi0gICAgZm9yIHJlcGxhY2UgaW4gWydfX21vZHVsZV9fJywgJ19fbmFtZV9fJywgJ19fZG9jX18nXToKLSAgICAgICAgc2V0YXR0cihuZXcsIHJlcGxhY2UsIGdldGF0dHIob2xkLCByZXBsYWNlKSkKKyAgICBmb3IgcmVwbGFjZSBpbiBbJ19fbW9kdWxlX18nLCAnX19uYW1lX18nLCAnX19xdWFsbmFtZV9fJywgJ19fZG9jX18nXToKKyAgICAgICAgaWYgaGFzYXR0cihvbGQsIHJlcGxhY2UpOgorICAgICAgICAgICAgc2V0YXR0cihuZXcsIHJlcGxhY2UsIGdldGF0dHIob2xkLCByZXBsYWNlKSkKICAgICBuZXcuX19kaWN0X18udXBkYXRlKG9sZC5fX2RpY3RfXykKIAogCkBAIC05MSwyOCArMTYwLDI5IEBACiAKICMgRmluZGVyL2xvYWRlciB1dGlsaXR5IGNvZGUgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAorCiBkZWYgc2V0X3BhY2thZ2UoZnhuKToKICAgICAiIiJTZXQgX19wYWNrYWdlX18gb24gdGhlIHJldHVybmVkIG1vZHVsZS4iIiIKLSAgICBkZWYgd3JhcHBlcigqYXJncywgKiprd2FyZ3MpOgorICAgIGRlZiBzZXRfcGFja2FnZV93cmFwcGVyKCphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgIG1vZHVsZSA9IGZ4bigqYXJncywgKiprd2FyZ3MpCiAgICAgICAgIGlmIG5vdCBoYXNhdHRyKG1vZHVsZSwgJ19fcGFja2FnZV9fJykgb3IgbW9kdWxlLl9fcGFja2FnZV9fIGlzIE5vbmU6CiAgICAgICAgICAgICBtb2R1bGUuX19wYWNrYWdlX18gPSBtb2R1bGUuX19uYW1lX18KICAgICAgICAgICAgIGlmIG5vdCBoYXNhdHRyKG1vZHVsZSwgJ19fcGF0aF9fJyk6CiAgICAgICAgICAgICAgICAgbW9kdWxlLl9fcGFja2FnZV9fID0gbW9kdWxlLl9fcGFja2FnZV9fLnJwYXJ0aXRpb24oJy4nKVswXQogICAgICAgICByZXR1cm4gbW9kdWxlCi0gICAgX3dyYXAod3JhcHBlciwgZnhuKQotICAgIHJldHVybiB3cmFwcGVyCisgICAgX3dyYXAoc2V0X3BhY2thZ2Vfd3JhcHBlciwgZnhuKQorICAgIHJldHVybiBzZXRfcGFja2FnZV93cmFwcGVyCiAKIAogZGVmIHNldF9sb2FkZXIoZnhuKToKICAgICAiIiJTZXQgX19sb2FkZXJfXyBvbiB0aGUgcmV0dXJuZWQgbW9kdWxlLiIiIgotICAgIGRlZiB3cmFwcGVyKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgZGVmIHNldF9sb2FkZXJfd3JhcHBlcihzZWxmLCAqYXJncywgKiprd2FyZ3MpOgogICAgICAgICBtb2R1bGUgPSBmeG4oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKQogICAgICAgICBpZiBub3QgaGFzYXR0cihtb2R1bGUsICdfX2xvYWRlcl9fJyk6CiAgICAgICAgICAgICBtb2R1bGUuX19sb2FkZXJfXyA9IHNlbGYKICAgICAgICAgcmV0dXJuIG1vZHVsZQotICAgIF93cmFwKHdyYXBwZXIsIGZ4bikKLSAgICByZXR1cm4gd3JhcHBlcgorICAgIF93cmFwKHNldF9sb2FkZXJfd3JhcHBlciwgZnhuKQorICAgIHJldHVybiBzZXRfbG9hZGVyX3dyYXBwZXIKIAogCiBkZWYgbW9kdWxlX2Zvcl9sb2FkZXIoZnhuKToKQEAgLTEyOCw3ICsxOTgsNyBAQAogICAgIHRoZSBzZWNvbmQgYXJndW1lbnQuCiAKICAgICAiIiIKLSAgICBkZWYgZGVjb3JhdGVkKHNlbGYsIGZ1bGxuYW1lLCAqYXJncywgKiprd2FyZ3MpOgorICAgIGRlZiBtb2R1bGVfZm9yX2xvYWRlcl93cmFwcGVyKHNlbGYsIGZ1bGxuYW1lLCAqYXJncywgKiprd2FyZ3MpOgogICAgICAgICBtb2R1bGUgPSBzeXMubW9kdWxlcy5nZXQoZnVsbG5hbWUpCiAgICAgICAgIGlzX3JlbG9hZCA9IGJvb2wobW9kdWxlKQogICAgICAgICBpZiBub3QgaXNfcmVsb2FkOgpAQCAtMTQzLDggKzIxMyw4IEBACiAgICAgICAgICAgICBpZiBub3QgaXNfcmVsb2FkOgogICAgICAgICAgICAgICAgIGRlbCBzeXMubW9kdWxlc1tmdWxsbmFtZV0KICAgICAgICAgICAgIHJhaXNlCi0gICAgX3dyYXAoZGVjb3JhdGVkLCBmeG4pCi0gICAgcmV0dXJuIGRlY29yYXRlZAorICAgIF93cmFwKG1vZHVsZV9mb3JfbG9hZGVyX3dyYXBwZXIsIGZ4bikKKyAgICByZXR1cm4gbW9kdWxlX2Zvcl9sb2FkZXJfd3JhcHBlcgogCiAKIGRlZiBfY2hlY2tfbmFtZShtZXRob2QpOgpAQCAtMTU1LDMyICsyMjUsMzIgQEAKICAgICBjb21wYXJlZCBhZ2FpbnN0LiBJZiB0aGUgY29tcGFyaXNvbiBmYWlscyB0aGVuIEltcG9ydEVycm9yIGlzIHJhaXNlZC4KIAogICAgICIiIgotICAgIGRlZiBpbm5lcihzZWxmLCBuYW1lLCAqYXJncywgKiprd2FyZ3MpOgorICAgIGRlZiBfY2hlY2tfbmFtZV93cmFwcGVyKHNlbGYsIG5hbWUsICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgIGlmIHNlbGYuX25hbWUgIT0gbmFtZToKICAgICAgICAgICAgIHJhaXNlIEltcG9ydEVycm9yKCJsb2FkZXIgY2Fubm90IGhhbmRsZSAlcyIgJSBuYW1lKQogICAgICAgICByZXR1cm4gbWV0aG9kKHNlbGYsIG5hbWUsICphcmdzLCAqKmt3YXJncykKLSAgICBfd3JhcChpbm5lciwgbWV0aG9kKQotICAgIHJldHVybiBpbm5lcgorICAgIF93cmFwKF9jaGVja19uYW1lX3dyYXBwZXIsIG1ldGhvZCkKKyAgICByZXR1cm4gX2NoZWNrX25hbWVfd3JhcHBlcgogCiAKIGRlZiBfcmVxdWlyZXNfYnVpbHRpbihmeG4pOgogICAgICIiIkRlY29yYXRvciB0byB2ZXJpZnkgdGhlIG5hbWVkIG1vZHVsZSBpcyBidWlsdC1pbi4iIiIKLSAgICBkZWYgd3JhcHBlcihzZWxmLCBmdWxsbmFtZSk6CisgICAgZGVmIF9yZXF1aXJlc19idWlsdGluX3dyYXBwZXIoc2VsZiwgZnVsbG5hbWUpOgogICAgICAgICBpZiBmdWxsbmFtZSBub3QgaW4gc3lzLmJ1aWx0aW5fbW9kdWxlX25hbWVzOgogICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IoInswfSBpcyBub3QgYSBidWlsdC1pbiBtb2R1bGUiLmZvcm1hdChmdWxsbmFtZSkpCiAgICAgICAgIHJldHVybiBmeG4oc2VsZiwgZnVsbG5hbWUpCi0gICAgX3dyYXAod3JhcHBlciwgZnhuKQotICAgIHJldHVybiB3cmFwcGVyCisgICAgX3dyYXAoX3JlcXVpcmVzX2J1aWx0aW5fd3JhcHBlciwgZnhuKQorICAgIHJldHVybiBfcmVxdWlyZXNfYnVpbHRpbl93cmFwcGVyCiAKIAogZGVmIF9yZXF1aXJlc19mcm96ZW4oZnhuKToKICAgICAiIiJEZWNvcmF0b3IgdG8gdmVyaWZ5IHRoZSBuYW1lZCBtb2R1bGUgaXMgZnJvemVuLiIiIgotICAgIGRlZiB3cmFwcGVyKHNlbGYsIGZ1bGxuYW1lKToKKyAgICBkZWYgX3JlcXVpcmVzX2Zyb3plbl93cmFwcGVyKHNlbGYsIGZ1bGxuYW1lKToKICAgICAgICAgaWYgbm90IGltcC5pc19mcm96ZW4oZnVsbG5hbWUpOgogICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IoInswfSBpcyBub3QgYSBmcm96ZW4gbW9kdWxlIi5mb3JtYXQoZnVsbG5hbWUpKQogICAgICAgICByZXR1cm4gZnhuKHNlbGYsIGZ1bGxuYW1lKQotICAgIF93cmFwKHdyYXBwZXIsIGZ4bikKLSAgICByZXR1cm4gd3JhcHBlcgorICAgIF93cmFwKF9yZXF1aXJlc19mcm96ZW5fd3JhcHBlciwgZnhuKQorICAgIHJldHVybiBfcmVxdWlyZXNfZnJvemVuX3dyYXBwZXIKIAogCiBkZWYgX3N1ZmZpeF9saXN0KHN1ZmZpeF90eXBlKToKQEAgLTI0MCw3ICszMTAsNyBAQAogICAgIEBjbGFzc21ldGhvZAogICAgIEBfcmVxdWlyZXNfYnVpbHRpbgogICAgIGRlZiBpc19wYWNrYWdlKGNscywgZnVsbG5hbWUpOgotICAgICAgICAiIiJSZXR1cm4gTm9uZSBhcyBidWlsdC1pbiBtb2R1bGUgYXJlIG5ldmVyIHBhY2thZ2VzLiIiIgorICAgICAgICAiIiJSZXR1cm4gTm9uZSBhcyBidWlsdC1pbiBtb2R1bGVzIGFyZSBuZXZlciBwYWNrYWdlcy4iIiIKICAgICAgICAgcmV0dXJuIEZhbHNlCiAKIApAQCAtMzAyLDI1ICszNzIsNDIgQEAKICAgICAgICAgZmlsZW5hbWUgPSBzZWxmLmdldF9maWxlbmFtZShmdWxsbmFtZSkucnBhcnRpdGlvbihwYXRoX3NlcClbMl0KICAgICAgICAgcmV0dXJuIGZpbGVuYW1lLnJzcGxpdCgnLicsIDEpWzBdID09ICdfX2luaXRfXycKIAotICAgIGRlZiBfYnl0ZXNfZnJvbV9ieXRlY29kZShzZWxmLCBmdWxsbmFtZSwgZGF0YSwgc291cmNlX210aW1lKToKKyAgICBkZWYgX2J5dGVzX2Zyb21fYnl0ZWNvZGUoc2VsZiwgZnVsbG5hbWUsIGRhdGEsIHNvdXJjZV9zdGF0cyk6CiAgICAgICAgICIiIlJldHVybiB0aGUgbWFyc2hhbGxlZCBieXRlcyBmcm9tIGJ5dGVjb2RlLCB2ZXJpZnlpbmcgdGhlIG1hZ2ljCi0gICAgICAgIG51bWJlciBhbmQgdGltZXN0YW1wIGFsb25nIHRoZSB3YXkuCisgICAgICAgIG51bWJlciwgdGltZXN0YW1wIGFuZCBzb3VyY2Ugc2l6ZSBhbG9uZyB0aGUgd2F5LgogCi0gICAgICAgIElmIHNvdXJjZV9tdGltZSBpcyBOb25lIHRoZW4gc2tpcCB0aGUgdGltZXN0YW1wIGNoZWNrLgorICAgICAgICBJZiBzb3VyY2Vfc3RhdHMgaXMgTm9uZSB0aGVuIHNraXAgdGhlIHRpbWVzdGFtcCBjaGVjay4KIAogICAgICAgICAiIiIKICAgICAgICAgbWFnaWMgPSBkYXRhWzo0XQogICAgICAgICByYXdfdGltZXN0YW1wID0gZGF0YVs0OjhdCisgICAgICAgIHJhd19zaXplID0gZGF0YVs4OjEyXQogICAgICAgICBpZiBsZW4obWFnaWMpICE9IDQgb3IgbWFnaWMgIT0gaW1wLmdldF9tYWdpYygpOgogICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IoImJhZCBtYWdpYyBudW1iZXIgaW4ge30iLmZvcm1hdChmdWxsbmFtZSkpCiAgICAgICAgIGVsaWYgbGVuKHJhd190aW1lc3RhbXApICE9IDQ6CiAgICAgICAgICAgICByYWlzZSBFT0ZFcnJvcigiYmFkIHRpbWVzdGFtcCBpbiB7fSIuZm9ybWF0KGZ1bGxuYW1lKSkKLSAgICAgICAgZWxpZiBzb3VyY2VfbXRpbWUgaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICBpZiBtYXJzaGFsLl9yX2xvbmcocmF3X3RpbWVzdGFtcCkgIT0gc291cmNlX210aW1lOgotICAgICAgICAgICAgICAgIHJhaXNlIEltcG9ydEVycm9yKCJieXRlY29kZSBpcyBzdGFsZSBmb3Ige30iLmZvcm1hdChmdWxsbmFtZSkpCisgICAgICAgIGVsaWYgbGVuKHJhd19zaXplKSAhPSA0OgorICAgICAgICAgICAgcmFpc2UgRU9GRXJyb3IoImJhZCBzaXplIGluIHt9Ii5mb3JtYXQoZnVsbG5hbWUpKQorICAgICAgICBpZiBzb3VyY2Vfc3RhdHMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc291cmNlX210aW1lID0gaW50KHNvdXJjZV9zdGF0c1snbXRpbWUnXSkKKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGlmIF9yX2xvbmcocmF3X3RpbWVzdGFtcCkgIT0gc291cmNlX210aW1lOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICJieXRlY29kZSBpcyBzdGFsZSBmb3Ige30iLmZvcm1hdChmdWxsbmFtZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc291cmNlX3NpemUgPSBzb3VyY2Vfc3RhdHNbJ3NpemUnXSAmIDB4RkZGRkZGRkYKKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGlmIF9yX2xvbmcocmF3X3NpemUpICE9IHNvdXJjZV9zaXplOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICJieXRlY29kZSBpcyBzdGFsZSBmb3Ige30iLmZvcm1hdChmdWxsbmFtZSkpCiAgICAgICAgICMgQ2FuJ3QgcmV0dXJuIHRoZSBjb2RlIG9iamVjdCBhcyBlcnJvcnMgZnJvbSBtYXJzaGFsIGxvYWRpbmcgbmVlZCB0bwogICAgICAgICAjIHByb3BhZ2F0ZSBldmVuIHdoZW4gc291cmNlIGlzIGF2YWlsYWJsZS4KLSAgICAgICAgcmV0dXJuIGRhdGFbODpdCisgICAgICAgIHJldHVybiBkYXRhWzEyOl0KIAogICAgIEBtb2R1bGVfZm9yX2xvYWRlcgogICAgIGRlZiBfbG9hZF9tb2R1bGUoc2VsZiwgbW9kdWxlLCAqLCBzb3VyY2VsZXNzPUZhbHNlKToKQEAgLTM0OCwxMiArNDM1LDIxIEBACiAgICAgZGVmIHBhdGhfbXRpbWUoc2VsZiwgcGF0aCk6CiAgICAgICAgICIiIk9wdGlvbmFsIG1ldGhvZCB0aGF0IHJldHVybnMgdGhlIG1vZGlmaWNhdGlvbiB0aW1lIChhbiBpbnQpIGZvciB0aGUKICAgICAgICAgc3BlY2lmaWVkIHBhdGgsIHdoZXJlIHBhdGggaXMgYSBzdHIuCi0KLSAgICAgICAgSW1wbGVtZW50aW5nIHRoaXMgbWV0aG9kIGFsbG93cyB0aGUgbG9hZGVyIHRvIHJlYWQgYnl0ZWNvZGUgZmlsZXMuCi0KICAgICAgICAgIiIiCiAgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IKIAorICAgIGRlZiBwYXRoX3N0YXRzKHNlbGYsIHBhdGgpOgorICAgICAgICAiIiJPcHRpb25hbCBtZXRob2QgcmV0dXJuaW5nIGEgbWV0YWRhdGEgZGljdCBmb3IgdGhlIHNwZWNpZmllZCBwYXRoCisgICAgICAgIHRvIGJ5IHRoZSBwYXRoIChzdHIpLgorICAgICAgICBQb3NzaWJsZSBrZXlzOgorICAgICAgICAtICdtdGltZScgKG1hbmRhdG9yeSkgaXMgdGhlIG51bWVyaWMgdGltZXN0YW1wIG9mIGxhc3Qgc291cmNlCisgICAgICAgICAgY29kZSBtb2RpZmljYXRpb247CisgICAgICAgIC0gJ3NpemUnIChvcHRpb25hbCkgaXMgdGhlIHNpemUgaW4gYnl0ZXMgb2YgdGhlIHNvdXJjZSBjb2RlLgorCisgICAgICAgIEltcGxlbWVudGluZyB0aGlzIG1ldGhvZCBhbGxvd3MgdGhlIGxvYWRlciB0byByZWFkIGJ5dGVjb2RlIGZpbGVzLgorICAgICAgICAiIiIKKyAgICAgICAgcmV0dXJuIHsnbXRpbWUnOiBzZWxmLnBhdGhfbXRpbWUocGF0aCl9CisKICAgICBkZWYgc2V0X2RhdGEoc2VsZiwgcGF0aCwgZGF0YSk6CiAgICAgICAgICIiIk9wdGlvbmFsIG1ldGhvZCB3aGljaCB3cml0ZXMgZGF0YSAoYnl0ZXMpIHRvIGEgZmlsZSBwYXRoIChhIHN0cikuCiAKQEAgLTM3OCw3ICs0NzQsNyBAQAogICAgIGRlZiBnZXRfY29kZShzZWxmLCBmdWxsbmFtZSk6CiAgICAgICAgICIiIkNvbmNyZXRlIGltcGxlbWVudGF0aW9uIG9mIEluc3BlY3RMb2FkZXIuZ2V0X2NvZGUuCiAKLSAgICAgICAgUmVhZGluZyBvZiBieXRlY29kZSByZXF1aXJlcyBwYXRoX210aW1lIHRvIGJlIGltcGxlbWVudGVkLiBUbyB3cml0ZQorICAgICAgICBSZWFkaW5nIG9mIGJ5dGVjb2RlIHJlcXVpcmVzIHBhdGhfc3RhdHMgdG8gYmUgaW1wbGVtZW50ZWQuIFRvIHdyaXRlCiAgICAgICAgIGJ5dGVjb2RlLCBzZXRfZGF0YSBtdXN0IGFsc28gYmUgaW1wbGVtZW50ZWQuCiAKICAgICAgICAgIiIiCkBAIC0zODcsMTAgKzQ4MywxMSBAQAogICAgICAgICBzb3VyY2VfbXRpbWUgPSBOb25lCiAgICAgICAgIGlmIGJ5dGVjb2RlX3BhdGggaXMgbm90IE5vbmU6CiAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgc291cmNlX210aW1lID0gc2VsZi5wYXRoX210aW1lKHNvdXJjZV9wYXRoKQorICAgICAgICAgICAgICAgIHN0ID0gc2VsZi5wYXRoX3N0YXRzKHNvdXJjZV9wYXRoKQogICAgICAgICAgICAgZXhjZXB0IE5vdEltcGxlbWVudGVkRXJyb3I6CiAgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzb3VyY2VfbXRpbWUgPSBpbnQoc3RbJ210aW1lJ10pCiAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICBkYXRhID0gc2VsZi5nZXRfZGF0YShieXRlY29kZV9wYXRoKQogICAgICAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yOgpAQCAtMzk4LDEyICs0OTUsMTMgQEAKICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgICAgICBieXRlc19kYXRhID0gc2VsZi5fYnl0ZXNfZnJvbV9ieXRlY29kZShmdWxsbmFtZSwgZGF0YSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZV9tdGltZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0KQogICAgICAgICAgICAgICAgICAgICBleGNlcHQgKEltcG9ydEVycm9yLCBFT0ZFcnJvcik6CiAgICAgICAgICAgICAgICAgICAgICAgICBwYXNzCiAgICAgICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgICAgICBmb3VuZCA9IG1hcnNoYWwubG9hZHMoYnl0ZXNfZGF0YSkKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoZm91bmQsIGNvZGVfdHlwZSk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1wLl9maXhfY29fZmlsZW5hbWUoZm91bmQsIHNvdXJjZV9wYXRoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmb3VuZAogICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgPSAiTm9uLWNvZGUgb2JqZWN0IGluIHt9IgpAQCAtNDEyLDEyICs1MTAsMTMgQEAKICAgICAgICAgY29kZV9vYmplY3QgPSBjb21waWxlKHNvdXJjZV9ieXRlcywgc291cmNlX3BhdGgsICdleGVjJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9udF9pbmhlcml0PVRydWUpCiAgICAgICAgIGlmIChub3Qgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGUgYW5kIGJ5dGVjb2RlX3BhdGggaXMgbm90IE5vbmUgYW5kCi0gICAgICAgICAgICAgICAgc291cmNlX210aW1lIGlzIG5vdCBOb25lKToKKyAgICAgICAgICAgIHNvdXJjZV9tdGltZSBpcyBub3QgTm9uZSk6CiAgICAgICAgICAgICAjIElmIGUuZy4gSnl0aG9uIGV2ZXIgaW1wbGVtZW50cyBpbXAuY2FjaGVfZnJvbV9zb3VyY2UgdG8gaGF2ZQogICAgICAgICAgICAgIyB0aGVpciBvd24gY2FjaGVkIGZpbGUgZm9ybWF0LCB0aGlzIGJsb2NrIG9mIGNvZGUgd2lsbCBtb3N0IGxpa2VseQogICAgICAgICAgICAgIyB0aHJvdyBhbiBleGNlcHRpb24uCiAgICAgICAgICAgICBkYXRhID0gYnl0ZWFycmF5KGltcC5nZXRfbWFnaWMoKSkKLSAgICAgICAgICAgIGRhdGEuZXh0ZW5kKG1hcnNoYWwuX3dfbG9uZyhzb3VyY2VfbXRpbWUpKQorICAgICAgICAgICAgZGF0YS5leHRlbmQoX3dfbG9uZyhzb3VyY2VfbXRpbWUpKQorICAgICAgICAgICAgZGF0YS5leHRlbmQoX3dfbG9uZyhsZW4oc291cmNlX2J5dGVzKSkpCiAgICAgICAgICAgICBkYXRhLmV4dGVuZChtYXJzaGFsLmR1bXBzKGNvZGVfb2JqZWN0KSkKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBzZWxmLnNldF9kYXRhKGJ5dGVjb2RlX3BhdGgsIGRhdGEpCkBAIC00NjIsOSArNTYxLDEwIEBACiAKICAgICAiIiJDb25jcmV0ZSBpbXBsZW1lbnRhdGlvbiBvZiBTb3VyY2VMb2FkZXIgdXNpbmcgdGhlIGZpbGUgc3lzdGVtLiIiIgogCi0gICAgZGVmIHBhdGhfbXRpbWUoc2VsZiwgcGF0aCk6Ci0gICAgICAgICIiIlJldHVybiB0aGUgbW9kaWZpY2F0aW9uIHRpbWUgZm9yIHRoZSBwYXRoLiIiIgotICAgICAgICByZXR1cm4gaW50KF9vcy5zdGF0KHBhdGgpLnN0X210aW1lKQorICAgIGRlZiBwYXRoX3N0YXRzKHNlbGYsIHBhdGgpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIG1ldGFkYXQgZm9yIHRoZSBwYXRoLiIiIgorICAgICAgICBzdCA9IF9vcy5zdGF0KHBhdGgpCisgICAgICAgIHJldHVybiB7J210aW1lJzogc3Quc3RfbXRpbWUsICdzaXplJzogc3Quc3Rfc2l6ZX0KIAogICAgIGRlZiBzZXRfZGF0YShzZWxmLCBwYXRoLCBkYXRhKToKICAgICAgICAgIiIiV3JpdGUgYnl0ZXMgZGF0YSB0byBhIGZpbGUuIiIiCkBAIC00NzksMjggKzU3OSwxOSBAQAogICAgICAgICAgICAgcGFyZW50ID0gX3BhdGhfam9pbihwYXJlbnQsIHBhcnQpCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgX29zLm1rZGlyKHBhcmVudCkKLSAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGV4YzoKKyAgICAgICAgICAgIGV4Y2VwdCBGaWxlRXhpc3RzRXJyb3I6CiAgICAgICAgICAgICAgICAgIyBQcm9iYWJseSBhbm90aGVyIFB5dGhvbiBwcm9jZXNzIGFscmVhZHkgY3JlYXRlZCB0aGUgZGlyLgotICAgICAgICAgICAgICAgIGlmIGV4Yy5lcnJubyA9PSBlcnJuby5FRVhJU1Q6Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgcmFpc2UKLSAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGV4YzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZXhjZXB0IFBlcm1pc3Npb25FcnJvcjoKICAgICAgICAgICAgICAgICAjIElmIGNhbid0IGdldCBwcm9wZXIgYWNjZXNzLCB0aGVuIGp1c3QgZm9yZ2V0IGFib3V0IHdyaXRpbmcKICAgICAgICAgICAgICAgICAjIHRoZSBkYXRhLgotICAgICAgICAgICAgICAgIGlmIGV4Yy5lcnJubyA9PSBlcnJuby5FQUNDRVM6Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybgotICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHdpdGggX2lvLkZpbGVJTyhwYXRoLCAnd2InKSBhcyBmaWxlOgotICAgICAgICAgICAgICAgIGZpbGUud3JpdGUoZGF0YSkKLSAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZXhjOgotICAgICAgICAgICAgIyBEb24ndCB3b3JyeSBpZiB5b3UgY2FuJ3Qgd3JpdGUgYnl0ZWNvZGUuCi0gICAgICAgICAgICBpZiBleGMuZXJybm8gPT0gZXJybm8uRUFDQ0VTOgogICAgICAgICAgICAgICAgIHJldHVybgotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICB0cnk6CisgICAgICAgICAgICBfd3JpdGVfYXRvbWljKHBhdGgsIGRhdGEpCisgICAgICAgIGV4Y2VwdCAoUGVybWlzc2lvbkVycm9yLCBGaWxlRXhpc3RzRXJyb3IpOgorICAgICAgICAgICAgIyBEb24ndCB3b3JyeSBpZiB5b3UgY2FuJ3Qgd3JpdGUgYnl0ZWNvZGUgb3Igc29tZW9uZSBpcyB3cml0aW5nCisgICAgICAgICAgICAjIGl0IGF0IHRoZSBzYW1lIHRpbWUuCisgICAgICAgICAgICBwYXNzCiAKIAogY2xhc3MgX1NvdXJjZWxlc3NGaWxlTG9hZGVyKF9GaWxlTG9hZGVyLCBfTG9hZGVyQmFzaWNzKToKQEAgLTUzNCwxMiArNjI1LDYgQEAKICAgICAiIiIKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBuYW1lLCBwYXRoKToKLSAgICAgICAgIiIiSW5pdGlhbGl6ZSB0aGUgbG9hZGVyLgotCi0gICAgICAgIElmIGlzX3BrZyBpcyBUcnVlIHRoZW4gYW4gZXhjZXB0aW9uIGlzIHJhaXNlZCBhcyBleHRlbnNpb24gbW9kdWxlcwotICAgICAgICBjYW5ub3QgYmUgdGhlIF9faW5pdF9fIG1vZHVsZSBmb3IgYW4gZXh0ZW5zaW9uIG1vZHVsZS4KLQotICAgICAgICAiIiIKICAgICAgICAgc2VsZi5fbmFtZSA9IG5hbWUKICAgICAgICAgc2VsZi5fcGF0aCA9IHBhdGgKIApAQCAtNjA4LDYgKzY5Myw4IEBACiAgICAgICAgIHRoZSBkZWZhdWx0IGhvb2ssIGZvciB3aGljaCBJbXBvcnRFcnJvciBpcyByYWlzZWQuCiAKICAgICAgICAgIiIiCisgICAgICAgIGlmIHBhdGggPT0gJyc6CisgICAgICAgICAgICBwYXRoID0gJy4nCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGZpbmRlciA9IHN5cy5wYXRoX2ltcG9ydGVyX2NhY2hlW3BhdGhdCiAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKQEAgLTY1OSwyOSArNzQ2LDYxIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBzdWZmaXggaW4gZGV0YWlsLnN1ZmZpeGVzKQogICAgICAgICBzZWxmLnBhY2thZ2VzID0gcGFja2FnZXMKICAgICAgICAgc2VsZi5tb2R1bGVzID0gbW9kdWxlcwotICAgICAgICBzZWxmLnBhdGggPSBwYXRoCisgICAgICAgICMgQmFzZSAoZGlyZWN0b3J5KSBwYXRoCisgICAgICAgIHNlbGYucGF0aCA9IHBhdGggb3IgJy4nCisgICAgICAgIHNlbGYuX3BhdGhfbXRpbWUgPSAtMQorICAgICAgICBzZWxmLl9wYXRoX2NhY2hlID0gc2V0KCkKKyAgICAgICAgc2VsZi5fcmVsYXhlZF9wYXRoX2NhY2hlID0gc2V0KCkKKworICAgIGRlZiBpbnZhbGlkYXRlX2NhY2hlcyhzZWxmKToKKyAgICAgICAgIiIiSW52YWxpZGF0ZSB0aGUgZGlyZWN0b3J5IG10aW1lLiIiIgorICAgICAgICBzZWxmLl9wYXRoX210aW1lID0gLTEKIAogICAgIGRlZiBmaW5kX21vZHVsZShzZWxmLCBmdWxsbmFtZSk6CiAgICAgICAgICIiIlRyeSB0byBmaW5kIGEgbG9hZGVyIGZvciB0aGUgc3BlY2lmaWVkIG1vZHVsZS4iIiIKICAgICAgICAgdGFpbF9tb2R1bGUgPSBmdWxsbmFtZS5ycGFydGl0aW9uKCcuJylbMl0KLSAgICAgICAgYmFzZV9wYXRoID0gX3BhdGhfam9pbihzZWxmLnBhdGgsIHRhaWxfbW9kdWxlKQotICAgICAgICBpZiBfcGF0aF9pc2RpcihiYXNlX3BhdGgpIGFuZCBfY2FzZV9vayhzZWxmLnBhdGgsIHRhaWxfbW9kdWxlKToKLSAgICAgICAgICAgIGZvciBzdWZmaXgsIGxvYWRlciBpbiBzZWxmLnBhY2thZ2VzOgotICAgICAgICAgICAgICAgIGluaXRfZmlsZW5hbWUgPSAnX19pbml0X18nICsgc3VmZml4Ci0gICAgICAgICAgICAgICAgZnVsbF9wYXRoID0gX3BhdGhfam9pbihiYXNlX3BhdGgsIGluaXRfZmlsZW5hbWUpCi0gICAgICAgICAgICAgICAgaWYgKF9wYXRoX2lzZmlsZShmdWxsX3BhdGgpIGFuZAotICAgICAgICAgICAgICAgICAgICAgICAgX2Nhc2Vfb2soYmFzZV9wYXRoLCBpbml0X2ZpbGVuYW1lKSk6Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiBsb2FkZXIoZnVsbG5hbWUsIGZ1bGxfcGF0aCkKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgbXNnID0gIk5vdCBpbXBvcnRpbmcgZGlyZWN0b3J5IHt9OiBtaXNzaW5nIF9faW5pdF9fIgotICAgICAgICAgICAgICAgIF93YXJuaW5ncy53YXJuKG1zZy5mb3JtYXQoYmFzZV9wYXRoKSwgSW1wb3J0V2FybmluZykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgbXRpbWUgPSBfb3Muc3RhdChzZWxmLnBhdGgpLnN0X210aW1lCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAgICAgbXRpbWUgPSAtMQorICAgICAgICBpZiBtdGltZSAhPSBzZWxmLl9wYXRoX210aW1lOgorICAgICAgICAgICAgc2VsZi5fZmlsbF9jYWNoZSgpCisgICAgICAgICAgICBzZWxmLl9wYXRoX210aW1lID0gbXRpbWUKKyAgICAgICAgIyB0YWlsX21vZHVsZSBrZWVwcyB0aGUgb3JpZ2luYWwgY2FzaW5nLCBmb3IgX19maWxlX18gYW5kIGZyaWVuZHMKKyAgICAgICAgaWYgX3JlbGF4X2Nhc2UoKToKKyAgICAgICAgICAgIGNhY2hlID0gc2VsZi5fcmVsYXhlZF9wYXRoX2NhY2hlCisgICAgICAgICAgICBjYWNoZV9tb2R1bGUgPSB0YWlsX21vZHVsZS5sb3dlcigpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBjYWNoZSA9IHNlbGYuX3BhdGhfY2FjaGUKKyAgICAgICAgICAgIGNhY2hlX21vZHVsZSA9IHRhaWxfbW9kdWxlCisgICAgICAgIGlmIGNhY2hlX21vZHVsZSBpbiBjYWNoZToKKyAgICAgICAgICAgIGJhc2VfcGF0aCA9IF9wYXRoX2pvaW4oc2VsZi5wYXRoLCB0YWlsX21vZHVsZSkKKyAgICAgICAgICAgIGlmIF9wYXRoX2lzZGlyKGJhc2VfcGF0aCk6CisgICAgICAgICAgICAgICAgZm9yIHN1ZmZpeCwgbG9hZGVyIGluIHNlbGYucGFja2FnZXM6CisgICAgICAgICAgICAgICAgICAgIGluaXRfZmlsZW5hbWUgPSAnX19pbml0X18nICsgc3VmZml4CisgICAgICAgICAgICAgICAgICAgIGZ1bGxfcGF0aCA9IF9wYXRoX2pvaW4oYmFzZV9wYXRoLCBpbml0X2ZpbGVuYW1lKQorICAgICAgICAgICAgICAgICAgICBpZiBfcGF0aF9pc2ZpbGUoZnVsbF9wYXRoKToKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBsb2FkZXIoZnVsbG5hbWUsIGZ1bGxfcGF0aCkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBtc2cgPSAiTm90IGltcG9ydGluZyBkaXJlY3Rvcnkge306IG1pc3NpbmcgX19pbml0X18iCisgICAgICAgICAgICAgICAgICAgIF93YXJuaW5ncy53YXJuKG1zZy5mb3JtYXQoYmFzZV9wYXRoKSwgSW1wb3J0V2FybmluZykKICAgICAgICAgZm9yIHN1ZmZpeCwgbG9hZGVyIGluIHNlbGYubW9kdWxlczoKLSAgICAgICAgICAgIG1vZF9maWxlbmFtZSA9IHRhaWxfbW9kdWxlICsgc3VmZml4Ci0gICAgICAgICAgICBmdWxsX3BhdGggPSBfcGF0aF9qb2luKHNlbGYucGF0aCwgbW9kX2ZpbGVuYW1lKQotICAgICAgICAgICAgaWYgX3BhdGhfaXNmaWxlKGZ1bGxfcGF0aCkgYW5kIF9jYXNlX29rKHNlbGYucGF0aCwgbW9kX2ZpbGVuYW1lKToKLSAgICAgICAgICAgICAgICByZXR1cm4gbG9hZGVyKGZ1bGxuYW1lLCBmdWxsX3BhdGgpCisgICAgICAgICAgICBpZiBjYWNoZV9tb2R1bGUgKyBzdWZmaXggaW4gY2FjaGU6CisgICAgICAgICAgICAgICAgZnVsbF9wYXRoID0gX3BhdGhfam9pbihzZWxmLnBhdGgsIHRhaWxfbW9kdWxlICsgc3VmZml4KQorICAgICAgICAgICAgICAgIGlmIF9wYXRoX2lzZmlsZShmdWxsX3BhdGgpOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gbG9hZGVyKGZ1bGxuYW1lLCBmdWxsX3BhdGgpCiAgICAgICAgIHJldHVybiBOb25lCiAKKyAgICBkZWYgX2ZpbGxfY2FjaGUoc2VsZik6CisgICAgICAgICIiIkZpbGwgdGhlIGNhY2hlIG9mIHBvdGVudGlhbCBtb2R1bGVzIGFuZCBwYWNrYWdlcyBmb3IgdGhpcyBkaXJlY3RvcnkuIiIiCisgICAgICAgIHBhdGggPSBzZWxmLnBhdGgKKyAgICAgICAgY29udGVudHMgPSBfb3MubGlzdGRpcihwYXRoKQorICAgICAgICAjIFdlIHN0b3JlIHR3byBjYWNoZWQgdmVyc2lvbnMsIHRvIGhhbmRsZSBydW50aW1lIGNoYW5nZXMgb2YgdGhlCisgICAgICAgICMgUFlUSE9OQ0FTRU9LIGVudmlyb25tZW50IHZhcmlhYmxlLgorICAgICAgICBzZWxmLl9wYXRoX2NhY2hlID0gc2V0KGNvbnRlbnRzKQorICAgICAgICBzZWxmLl9yZWxheGVkX3BhdGhfY2FjaGUgPSBzZXQoZm4ubG93ZXIoKSBmb3IgZm4gaW4gY29udGVudHMpCisKKwogY2xhc3MgX1NvdXJjZUZpbmRlckRldGFpbHM6CiAKICAgICBsb2FkZXIgPSBfU291cmNlRmlsZUxvYWRlcgpAQCAtNzU2LDQwICs4NzUsMTAwIEBACiAgICAgICAgIGltcC5yZWxlYXNlX2xvY2soKQogCiAKLV9JTVBMSUNJVF9NRVRBX1BBVEggPSBbQnVpbHRpbkltcG9ydGVyLCBGcm96ZW5JbXBvcnRlciwgX0RlZmF1bHRQYXRoRmluZGVyXQorZGVmIF9yZXNvbHZlX25hbWUobmFtZSwgcGFja2FnZSwgbGV2ZWwpOgorICAgICIiIlJlc29sdmUgYSByZWxhdGl2ZSBtb2R1bGUgbmFtZSB0byBhbiBhYnNvbHV0ZSBvbmUuIiIiCisgICAgYml0cyA9IHBhY2thZ2UucnNwbGl0KCcuJywgbGV2ZWwgLSAxKQorICAgIGlmIGxlbihiaXRzKSA8IGxldmVsOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdhdHRlbXB0ZWQgcmVsYXRpdmUgaW1wb3J0IGJleW9uZCB0b3AtbGV2ZWwgcGFja2FnZScpCisgICAgYmFzZSA9IGJpdHNbMF0KKyAgICByZXR1cm4gJ3swfS57MX0nLmZvcm1hdChiYXNlLCBuYW1lKSBpZiBuYW1lIGVsc2UgYmFzZQogCi1fRVJSX01TRyA9ICdObyBtb2R1bGUgbmFtZWQge30nCiAKLWRlZiBfZ2NkX2ltcG9ydChuYW1lLCBwYWNrYWdlPU5vbmUsIGxldmVsPTApOgotICAgICIiIkltcG9ydCBhbmQgcmV0dXJuIHRoZSBtb2R1bGUgYmFzZWQgb24gaXRzIG5hbWUsIHRoZSBwYWNrYWdlIHRoZSBjYWxsIGlzCi0gICAgYmVpbmcgbWFkZSBmcm9tLCBhbmQgdGhlIGxldmVsIGFkanVzdG1lbnQuCitkZWYgX2ZpbmRfbW9kdWxlKG5hbWUsIHBhdGgpOgorICAgICIiIkZpbmQgYSBtb2R1bGUncyBsb2FkZXIuIiIiCisgICAgbWV0YV9wYXRoID0gc3lzLm1ldGFfcGF0aCArIF9JTVBMSUNJVF9NRVRBX1BBVEgKKyAgICBmb3IgZmluZGVyIGluIG1ldGFfcGF0aDoKKyAgICAgICAgbG9hZGVyID0gZmluZGVyLmZpbmRfbW9kdWxlKG5hbWUsIHBhdGgpCisgICAgICAgIGlmIGxvYWRlciBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICMgVGhlIHBhcmVudCBpbXBvcnQgbWF5IGhhdmUgYWxyZWFkeSBpbXBvcnRlZCB0aGlzIG1vZHVsZS4KKyAgICAgICAgICAgIGlmIG5hbWUgbm90IGluIHN5cy5tb2R1bGVzOgorICAgICAgICAgICAgICAgIHJldHVybiBsb2FkZXIKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuIHN5cy5tb2R1bGVzW25hbWVdLl9fbG9hZGVyX18KKyAgICBlbHNlOgorICAgICAgICByZXR1cm4gTm9uZQogCi0gICAgVGhpcyBmdW5jdGlvbiByZXByZXNlbnRzIHRoZSBncmVhdGVzdCBjb21tb24gZGVub21pbmF0b3Igb2YgZnVuY3Rpb25hbGl0eQotICAgIGJldHdlZW4gaW1wb3J0X21vZHVsZSBhbmQgX19pbXBvcnRfXy4gVGhpcyBpbmNsdWRlcyBzZXR0dGluZyBfX3BhY2thZ2VfXyBpZgotICAgIHRoZSBsb2FkZXIgZGlkIG5vdC4KIAotICAgICIiIgorZGVmIF9zYW5pdHlfY2hlY2sobmFtZSwgcGFja2FnZSwgbGV2ZWwpOgorICAgICIiIlZlcmlmeSBhcmd1bWVudHMgYXJlICJzYW5lIi4iIiIKKyAgICBpZiBub3QgaXNpbnN0YW5jZShuYW1lLCBzdHIpOgorICAgICAgICByYWlzZSBUeXBlRXJyb3IoIm1vZHVsZSBuYW1lIG11c3QgYmUgc3RyLCBub3Qge30iLmZvcm1hdCh0eXBlKG5hbWUpKSkKKyAgICBpZiBsZXZlbCA8IDA6CisgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ2xldmVsIG11c3QgYmUgPj0gMCcpCiAgICAgaWYgcGFja2FnZToKLSAgICAgICAgaWYgbm90IGhhc2F0dHIocGFja2FnZSwgJ3JpbmRleCcpOgotICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiX19wYWNrYWdlX18gbm90IHNldCB0byBhIHN0cmluZyIpCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKHBhY2thZ2UsIHN0cik6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIl9fcGFja2FnZV9fIG5vdCBzZXQgdG8gYSBzdHJpbmciKQogICAgICAgICBlbGlmIHBhY2thZ2Ugbm90IGluIHN5cy5tb2R1bGVzOgogICAgICAgICAgICAgbXNnID0gKCJQYXJlbnQgbW9kdWxlIHswIXJ9IG5vdCBsb2FkZWQsIGNhbm5vdCBwZXJmb3JtIHJlbGF0aXZlICIKICAgICAgICAgICAgICAgICAgICAiaW1wb3J0IikKICAgICAgICAgICAgIHJhaXNlIFN5c3RlbUVycm9yKG1zZy5mb3JtYXQocGFja2FnZSkpCiAgICAgaWYgbm90IG5hbWUgYW5kIGxldmVsID09IDA6CiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkVtcHR5IG1vZHVsZSBuYW1lIikKKworCitfSU1QTElDSVRfTUVUQV9QQVRIID0gW0J1aWx0aW5JbXBvcnRlciwgRnJvemVuSW1wb3J0ZXIsIF9EZWZhdWx0UGF0aEZpbmRlcl0KKworX0VSUl9NU0cgPSAnTm8gbW9kdWxlIG5hbWVkIHshcn0nCisKK2RlZiBfZmluZF9hbmRfbG9hZChuYW1lLCBpbXBvcnRfKToKKyAgICAiIiJGaW5kIGFuZCBsb2FkIHRoZSBtb2R1bGUuIiIiCisgICAgcGF0aCA9IE5vbmUKKyAgICBwYXJlbnQgPSBuYW1lLnJwYXJ0aXRpb24oJy4nKVswXQorICAgIGlmIHBhcmVudDoKKyAgICAgICAgaWYgcGFyZW50IG5vdCBpbiBzeXMubW9kdWxlczoKKyAgICAgICAgICAgIGltcG9ydF8ocGFyZW50KQorICAgICAgICAjIEJhY2t3YXJkcy1jb21wYXRpYmlsaXR5OyBiZSBuaWNlciB0byBza2lwIHRoZSBkaWN0IGxvb2t1cC4KKyAgICAgICAgcGFyZW50X21vZHVsZSA9IHN5cy5tb2R1bGVzW3BhcmVudF0KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcGF0aCA9IHBhcmVudF9tb2R1bGUuX19wYXRoX18KKyAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgbXNnID0gKF9FUlJfTVNHICsgJzsge30gaXMgbm90IGEgcGFja2FnZScpLmZvcm1hdChuYW1lLCBwYXJlbnQpCisgICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcihtc2cpCisgICAgbG9hZGVyID0gX2ZpbmRfbW9kdWxlKG5hbWUsIHBhdGgpCisgICAgaWYgbG9hZGVyIGlzIE5vbmU6CisgICAgICAgIHJhaXNlIEltcG9ydEVycm9yKF9FUlJfTVNHLmZvcm1hdChuYW1lKSkKKyAgICBlbGlmIG5hbWUgbm90IGluIHN5cy5tb2R1bGVzOgorICAgICAgICAjIFRoZSBwYXJlbnQgaW1wb3J0IG1heSBoYXZlIGFscmVhZHkgaW1wb3J0ZWQgdGhpcyBtb2R1bGUuCisgICAgICAgIGxvYWRlci5sb2FkX21vZHVsZShuYW1lKQorICAgICMgQmFja3dhcmRzLWNvbXBhdGliaWxpdHk7IGJlIG5pY2VyIHRvIHNraXAgdGhlIGRpY3QgbG9va3VwLgorICAgIG1vZHVsZSA9IHN5cy5tb2R1bGVzW25hbWVdCisgICAgaWYgcGFyZW50OgorICAgICAgICAjIFNldCB0aGUgbW9kdWxlIGFzIGFuIGF0dHJpYnV0ZSBvbiBpdHMgcGFyZW50LgorICAgICAgICBwYXJlbnRfbW9kdWxlID0gc3lzLm1vZHVsZXNbcGFyZW50XQorICAgICAgICBzZXRhdHRyKHBhcmVudF9tb2R1bGUsIG5hbWUucnBhcnRpdGlvbignLicpWzJdLCBtb2R1bGUpCisgICAgIyBTZXQgX19wYWNrYWdlX18gaWYgdGhlIGxvYWRlciBkaWQgbm90LgorICAgIGlmIG5vdCBoYXNhdHRyKG1vZHVsZSwgJ19fcGFja2FnZV9fJykgb3IgbW9kdWxlLl9fcGFja2FnZV9fIGlzIE5vbmU6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG1vZHVsZS5fX3BhY2thZ2VfXyA9IG1vZHVsZS5fX25hbWVfXworICAgICAgICAgICAgaWYgbm90IGhhc2F0dHIobW9kdWxlLCAnX19wYXRoX18nKToKKyAgICAgICAgICAgICAgICBtb2R1bGUuX19wYWNrYWdlX18gPSBtb2R1bGUuX19wYWNrYWdlX18ucnBhcnRpdGlvbignLicpWzBdCisgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKyAgICByZXR1cm4gbW9kdWxlCisKKworZGVmIF9nY2RfaW1wb3J0KG5hbWUsIHBhY2thZ2U9Tm9uZSwgbGV2ZWw9MCk6CisgICAgIiIiSW1wb3J0IGFuZCByZXR1cm4gdGhlIG1vZHVsZSBiYXNlZCBvbiBpdHMgbmFtZSwgdGhlIHBhY2thZ2UgdGhlIGNhbGwgaXMKKyAgICBiZWluZyBtYWRlIGZyb20sIGFuZCB0aGUgbGV2ZWwgYWRqdXN0bWVudC4KKworICAgIFRoaXMgZnVuY3Rpb24gcmVwcmVzZW50cyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRlbm9taW5hdG9yIG9mIGZ1bmN0aW9uYWxpdHkKKyAgICBiZXR3ZWVuIGltcG9ydF9tb2R1bGUgYW5kIF9faW1wb3J0X18uIFRoaXMgaW5jbHVkZXMgc2V0dGluZyBfX3BhY2thZ2VfXyBpZgorICAgIHRoZSBsb2FkZXIgZGlkIG5vdC4KKworICAgICIiIgorICAgIF9zYW5pdHlfY2hlY2sobmFtZSwgcGFja2FnZSwgbGV2ZWwpCiAgICAgaWYgbGV2ZWwgPiAwOgotICAgICAgICBkb3QgPSBsZW4ocGFja2FnZSkKLSAgICAgICAgZm9yIHggaW4gcmFuZ2UobGV2ZWwsIDEsIC0xKToKLSAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICBkb3QgPSBwYWNrYWdlLnJpbmRleCgnLicsIDAsIGRvdCkKLSAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgotICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImF0dGVtcHRlZCByZWxhdGl2ZSBpbXBvcnQgYmV5b25kICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0b3AtbGV2ZWwgcGFja2FnZSIpCi0gICAgICAgIGlmIG5hbWU6Ci0gICAgICAgICAgICBuYW1lID0gInswfS57MX0iLmZvcm1hdChwYWNrYWdlWzpkb3RdLCBuYW1lKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgbmFtZSA9IHBhY2thZ2VbOmRvdF0KKyAgICAgICAgbmFtZSA9IF9yZXNvbHZlX25hbWUobmFtZSwgcGFja2FnZSwgbGV2ZWwpCiAgICAgd2l0aCBfSW1wb3J0TG9ja0NvbnRleHQoKToKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgbW9kdWxlID0gc3lzLm1vZHVsZXNbbmFtZV0KQEAgLTc5OSw0NSArOTc4LDQ2IEBACiAgICAgICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IobWVzc2FnZSkKICAgICAgICAgICAgIHJldHVybiBtb2R1bGUKICAgICAgICAgZXhjZXB0IEtleUVycm9yOgotICAgICAgICAgICAgcGFzcwotICAgICAgICBwYXJlbnQgPSBuYW1lLnJwYXJ0aXRpb24oJy4nKVswXQotICAgICAgICBwYXRoID0gTm9uZQotICAgICAgICBpZiBwYXJlbnQ6Ci0gICAgICAgICAgICBpZiBwYXJlbnQgbm90IGluIHN5cy5tb2R1bGVzOgotICAgICAgICAgICAgICAgIF9nY2RfaW1wb3J0KHBhcmVudCkKLSAgICAgICAgICAgICMgQmFja3dhcmRzLWNvbXBhdGliaWxpdHk7IGJlIG5pY2VyIHRvIHNraXAgdGhlIGRpY3QgbG9va3VwLgotICAgICAgICAgICAgcGFyZW50X21vZHVsZSA9IHN5cy5tb2R1bGVzW3BhcmVudF0KKyAgICAgICAgICAgIHBhc3MgICMgRG9uJ3Qgd2FudCB0byBjaGFpbiB0aGUgZXhjZXB0aW9uCisgICAgICAgIHJldHVybiBfZmluZF9hbmRfbG9hZChuYW1lLCBfZ2NkX2ltcG9ydCkKKworCitkZWYgX2hhbmRsZV9mcm9tbGlzdChtb2R1bGUsIGZyb21saXN0LCBpbXBvcnRfKToKKyAgICAiIiJGaWd1cmUgb3V0IHdoYXQgX19pbXBvcnRfXyBzaG91bGQgcmV0dXJuLgorCisgICAgVGhlIGltcG9ydF8gcGFyYW1ldGVyIGlzIGEgY2FsbGFibGUgd2hpY2ggdGFrZXMgdGhlIG5hbWUgb2YgbW9kdWxlIHRvCisgICAgaW1wb3J0LiBJdCBpcyByZXF1aXJlZCB0byBkZWNvdXBsZSB0aGUgZnVuY3Rpb24gZnJvbSBhc3N1bWluZyBpbXBvcnRsaWIncworICAgIGltcG9ydCBpbXBsZW1lbnRhdGlvbiBpcyBkZXNpcmVkLgorCisgICAgIiIiCisgICAgIyBUaGUgaGVsbCB0aGF0IGlzIGZyb21saXN0IC4uLgorICAgICMgSWYgYSBwYWNrYWdlIHdhcyBpbXBvcnRlZCwgdHJ5IHRvIGltcG9ydCBzdHVmZiBmcm9tIGZyb21saXN0LgorICAgIGlmIGhhc2F0dHIobW9kdWxlLCAnX19wYXRoX18nKToKKyAgICAgICAgaWYgJyonIGluIGZyb21saXN0IGFuZCBoYXNhdHRyKG1vZHVsZSwgJ19fYWxsX18nKToKKyAgICAgICAgICAgIGZyb21saXN0ID0gbGlzdChmcm9tbGlzdCkKKyAgICAgICAgICAgIGZyb21saXN0LnJlbW92ZSgnKicpCisgICAgICAgICAgICBmcm9tbGlzdC5leHRlbmQobW9kdWxlLl9fYWxsX18pCisgICAgICAgIGZvciB4IGluICh5IGZvciB5IGluIGZyb21saXN0IGlmIG5vdCBoYXNhdHRyKG1vZHVsZSwgeSkpOgogICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHBhdGggPSBwYXJlbnRfbW9kdWxlLl9fcGF0aF9fCi0gICAgICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6Ci0gICAgICAgICAgICAgICAgbXNnID0gKF9FUlJfTVNHICsgJzsge30gaXMgbm90IGEgcGFja2FnZScpLmZvcm1hdChuYW1lLCBwYXJlbnQpCi0gICAgICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IobXNnKQotICAgICAgICBtZXRhX3BhdGggPSBzeXMubWV0YV9wYXRoICsgX0lNUExJQ0lUX01FVEFfUEFUSAotICAgICAgICBmb3IgZmluZGVyIGluIG1ldGFfcGF0aDoKLSAgICAgICAgICAgIGxvYWRlciA9IGZpbmRlci5maW5kX21vZHVsZShuYW1lLCBwYXRoKQotICAgICAgICAgICAgaWYgbG9hZGVyIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgICAgICMgVGhlIHBhcmVudCBpbXBvcnQgbWF5IGhhdmUgYWxyZWFkeSBpbXBvcnRlZCB0aGlzIG1vZHVsZS4KLSAgICAgICAgICAgICAgICBpZiBuYW1lIG5vdCBpbiBzeXMubW9kdWxlczoKLSAgICAgICAgICAgICAgICAgICAgbG9hZGVyLmxvYWRfbW9kdWxlKG5hbWUpCi0gICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJhaXNlIEltcG9ydEVycm9yKF9FUlJfTVNHLmZvcm1hdChuYW1lKSkKLSAgICAgICAgIyBCYWNrd2FyZHMtY29tcGF0aWJpbGl0eTsgYmUgbmljZXIgdG8gc2tpcCB0aGUgZGljdCBsb29rdXAuCi0gICAgICAgIG1vZHVsZSA9IHN5cy5tb2R1bGVzW25hbWVdCi0gICAgICAgIGlmIHBhcmVudDoKLSAgICAgICAgICAgICMgU2V0IHRoZSBtb2R1bGUgYXMgYW4gYXR0cmlidXRlIG9uIGl0cyBwYXJlbnQuCi0gICAgICAgICAgICBzZXRhdHRyKHBhcmVudF9tb2R1bGUsIG5hbWUucnBhcnRpdGlvbignLicpWzJdLCBtb2R1bGUpCi0gICAgICAgICMgU2V0IF9fcGFja2FnZV9fIGlmIHRoZSBsb2FkZXIgZGlkIG5vdC4KLSAgICAgICAgaWYgbm90IGhhc2F0dHIobW9kdWxlLCAnX19wYWNrYWdlX18nKSBvciBtb2R1bGUuX19wYWNrYWdlX18gaXMgTm9uZToKLSAgICAgICAgICAgICMgV2F0Y2ggb3V0IGZvciB3aGF0IGNvbWVzIG91dCBvZiBzeXMubW9kdWxlcyB0byBub3QgYmUgYSBtb2R1bGUsCi0gICAgICAgICAgICAjIGUuZy4gYW4gaW50LgotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIG1vZHVsZS5fX3BhY2thZ2VfXyA9IG1vZHVsZS5fX25hbWVfXwotICAgICAgICAgICAgICAgIGlmIG5vdCBoYXNhdHRyKG1vZHVsZSwgJ19fcGF0aF9fJyk6Ci0gICAgICAgICAgICAgICAgICAgIG1vZHVsZS5fX3BhY2thZ2VfXyA9IG1vZHVsZS5fX3BhY2thZ2VfXy5ycGFydGl0aW9uKCcuJylbMF0KLSAgICAgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKKyAgICAgICAgICAgICAgICBpbXBvcnRfKCd7MH0uezF9Jy5mb3JtYXQobW9kdWxlLl9fbmFtZV9fLCB4KSkKKyAgICAgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvcjoKICAgICAgICAgICAgICAgICBwYXNzCi0gICAgICAgIHJldHVybiBtb2R1bGUKKyAgICByZXR1cm4gbW9kdWxlCisKKworZGVmIF9jYWxjX19fcGFja2FnZV9fKGdsb2JhbHMpOgorICAgICIiIkNhbGN1bGF0ZSB3aGF0IF9fcGFja2FnZV9fIHNob3VsZCBiZS4KKworICAgIF9fcGFja2FnZV9fIGlzIG5vdCBndWFyYW50ZWVkIHRvIGJlIGRlZmluZWQgb3IgY291bGQgYmUgc2V0IHRvIE5vbmUKKyAgICB0byByZXByZXNlbnQgdGhhdCBpdHMgcHJvcGVyIHZhbHVlIGlzIHVua25vd24uCisKKyAgICAiIiIKKyAgICBwYWNrYWdlID0gZ2xvYmFscy5nZXQoJ19fcGFja2FnZV9fJykKKyAgICBpZiBwYWNrYWdlIGlzIE5vbmU6CisgICAgICAgIHBhY2thZ2UgPSBnbG9iYWxzWydfX25hbWVfXyddCisgICAgICAgIGlmICdfX3BhdGhfXycgbm90IGluIGdsb2JhbHM6CisgICAgICAgICAgICBwYWNrYWdlID0gcGFja2FnZS5ycGFydGl0aW9uKCcuJylbMF0KKyAgICByZXR1cm4gcGFja2FnZQogCiAKIGRlZiBfX2ltcG9ydF9fKG5hbWUsIGdsb2JhbHM9e30sIGxvY2Fscz17fSwgZnJvbWxpc3Q9W10sIGxldmVsPTApOgpAQCAtODUxLDIwICsxMDMxLDExIEBACiAgICAgaW1wb3J0IChlLmcuIGBgZnJvbSAuLnBrZyBpbXBvcnQgbW9kYGAgd291bGQgaGF2ZSBhICdsZXZlbCcgb2YgMikuCiAKICAgICAiIiIKLSAgICBpZiBub3QgaGFzYXR0cihuYW1lLCAncnBhcnRpdGlvbicpOgotICAgICAgICByYWlzZSBUeXBlRXJyb3IoIm1vZHVsZSBuYW1lIG11c3QgYmUgc3RyLCBub3Qge30iLmZvcm1hdCh0eXBlKG5hbWUpKSkKICAgICBpZiBsZXZlbCA9PSAwOgogICAgICAgICBtb2R1bGUgPSBfZ2NkX2ltcG9ydChuYW1lKQogICAgIGVsc2U6Ci0gICAgICAgICMgX19wYWNrYWdlX18gaXMgbm90IGd1YXJhbnRlZWQgdG8gYmUgZGVmaW5lZCBvciBjb3VsZCBiZSBzZXQgdG8gTm9uZQotICAgICAgICAjIHRvIHJlcHJlc2VudCB0aGF0IGl0J3MgcHJvcGVyIHZhbHVlIGlzIHVua25vd24KLSAgICAgICAgcGFja2FnZSA9IGdsb2JhbHMuZ2V0KCdfX3BhY2thZ2VfXycpCi0gICAgICAgIGlmIHBhY2thZ2UgaXMgTm9uZToKLSAgICAgICAgICAgIHBhY2thZ2UgPSBnbG9iYWxzWydfX25hbWVfXyddCi0gICAgICAgICAgICBpZiAnX19wYXRoX18nIG5vdCBpbiBnbG9iYWxzOgotICAgICAgICAgICAgICAgIHBhY2thZ2UgPSBwYWNrYWdlLnJwYXJ0aXRpb24oJy4nKVswXQorICAgICAgICBwYWNrYWdlID0gX2NhbGNfX19wYWNrYWdlX18oZ2xvYmFscykKICAgICAgICAgbW9kdWxlID0gX2djZF9pbXBvcnQobmFtZSwgcGFja2FnZSwgbGV2ZWwpCi0gICAgIyBUaGUgaGVsbCB0aGF0IGlzIGZyb21saXN0IC4uLgogICAgIGlmIG5vdCBmcm9tbGlzdDoKICAgICAgICAgIyBSZXR1cm4gdXAgdG8gdGhlIGZpcnN0IGRvdCBpbiAnbmFtZScuIFRoaXMgaXMgY29tcGxpY2F0ZWQgYnkgdGhlIGZhY3QKICAgICAgICAgIyB0aGF0ICduYW1lJyBtYXkgYmUgcmVsYXRpdmUuCkBAIC04NzYsMTUgKzEwNDcsNjIgQEAKICAgICAgICAgICAgIGN1dF9vZmYgPSBsZW4obmFtZSkgLSBsZW4obmFtZS5wYXJ0aXRpb24oJy4nKVswXSkKICAgICAgICAgICAgIHJldHVybiBzeXMubW9kdWxlc1ttb2R1bGUuX19uYW1lX19bOi1jdXRfb2ZmXV0KICAgICBlbHNlOgotICAgICAgICAjIElmIGEgcGFja2FnZSB3YXMgaW1wb3J0ZWQsIHRyeSB0byBpbXBvcnQgc3R1ZmYgZnJvbSBmcm9tbGlzdC4KLSAgICAgICAgaWYgaGFzYXR0cihtb2R1bGUsICdfX3BhdGhfXycpOgotICAgICAgICAgICAgaWYgJyonIGluIGZyb21saXN0IGFuZCBoYXNhdHRyKG1vZHVsZSwgJ19fYWxsX18nKToKLSAgICAgICAgICAgICAgICBmcm9tbGlzdCA9IGxpc3QoZnJvbWxpc3QpCi0gICAgICAgICAgICAgICAgZnJvbWxpc3QucmVtb3ZlKCcqJykKLSAgICAgICAgICAgICAgICBmcm9tbGlzdC5leHRlbmQobW9kdWxlLl9fYWxsX18pCi0gICAgICAgICAgICBmb3IgeCBpbiAoeSBmb3IgeSBpbiBmcm9tbGlzdCBpZiBub3QgaGFzYXR0cihtb2R1bGUseSkpOgotICAgICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICAgICAgX2djZF9pbXBvcnQoJ3swfS57MX0nLmZvcm1hdChtb2R1bGUuX19uYW1lX18sIHgpKQotICAgICAgICAgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICAgICAgICAgICAgICAgICAgcGFzcwotICAgICAgICByZXR1cm4gbW9kdWxlCisgICAgICAgIHJldHVybiBfaGFuZGxlX2Zyb21saXN0KG1vZHVsZSwgZnJvbWxpc3QsIF9nY2RfaW1wb3J0KQorCisKK2RlZiBfc2V0dXAoc3lzX21vZHVsZSwgaW1wX21vZHVsZSk6CisgICAgIiIiU2V0dXAgaW1wb3J0bGliIGJ5IGltcG9ydGluZyBuZWVkZWQgYnVpbHQtaW4gbW9kdWxlcyBhbmQgaW5qZWN0aW5nIHRoZW0KKyAgICBpbnRvIHRoZSBnbG9iYWwgbmFtZXNwYWNlLgorCisgICAgQXMgc3lzIGlzIG5lZWRlZCBmb3Igc3lzLm1vZHVsZXMgYWNjZXNzIGFuZCBpbXAgaXMgbmVlZGVkIHRvIGxvYWQgYnVpbHQtaW4KKyAgICBtb2R1bGVzLCB0aG9zZSB0d28gbW9kdWxlcyBtdXN0IGJlIGV4cGxpY2l0bHkgcGFzc2VkIGluLgorCisgICAgIiIiCisgICAgZ2xvYmFsIGltcCwgc3lzCisgICAgaW1wID0gaW1wX21vZHVsZQorICAgIHN5cyA9IHN5c19tb2R1bGUKKworICAgIGZvciBtb2R1bGUgaW4gKGltcCwgc3lzKToKKyAgICAgICAgaWYgbm90IGhhc2F0dHIobW9kdWxlLCAnX19sb2FkZXJfXycpOgorICAgICAgICAgICAgbW9kdWxlLl9fbG9hZGVyX18gPSBCdWlsdGluSW1wb3J0ZXIKKworICAgIHNlbGZfbW9kdWxlID0gc3lzLm1vZHVsZXNbX19uYW1lX19dCisgICAgZm9yIGJ1aWx0aW5fbmFtZSBpbiAoJ19pbycsICdfd2FybmluZ3MnLCAnYnVpbHRpbnMnLCAnbWFyc2hhbCcpOgorICAgICAgICBpZiBidWlsdGluX25hbWUgbm90IGluIHN5cy5tb2R1bGVzOgorICAgICAgICAgICAgYnVpbHRpbl9tb2R1bGUgPSBCdWlsdGluSW1wb3J0ZXIubG9hZF9tb2R1bGUoYnVpbHRpbl9uYW1lKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgYnVpbHRpbl9tb2R1bGUgPSBzeXMubW9kdWxlc1tidWlsdGluX25hbWVdCisgICAgICAgIHNldGF0dHIoc2VsZl9tb2R1bGUsIGJ1aWx0aW5fbmFtZSwgYnVpbHRpbl9tb2R1bGUpCisKKyAgICBmb3IgYnVpbHRpbl9vcywgcGF0aF9zZXAgaW4gWygncG9zaXgnLCAnLycpLCAoJ250JywgJ1xcJyksICgnb3MyJywgJ1xcJyldOgorICAgICAgICBpZiBidWlsdGluX29zIGluIHN5cy5tb2R1bGVzOgorICAgICAgICAgICAgb3NfbW9kdWxlID0gc3lzLm1vZHVsZXNbYnVpbHRpbl9vc10KKyAgICAgICAgICAgIGJyZWFrCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgb3NfbW9kdWxlID0gQnVpbHRpbkltcG9ydGVyLmxvYWRfbW9kdWxlKGJ1aWx0aW5fb3MpCisgICAgICAgICAgICAgICAgIyBUT0RPOiByaXAgb3V0IG9zMiBjb2RlIGFmdGVyIDMuMyBpcyByZWxlYXNlZCBhcyBwZXIgUEVQIDExCisgICAgICAgICAgICAgICAgaWYgYnVpbHRpbl9vcyA9PSAnb3MyJyBhbmQgJ0VNWCBHQ0MnIGluIHN5cy52ZXJzaW9uOgorICAgICAgICAgICAgICAgICAgICBwYXRoX3NlcCA9ICcvJworICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICBlbHNlOgorICAgICAgICByYWlzZSBJbXBvcnRFcnJvcignaW1wb3J0bGliIHJlcXVpcmVzIHBvc2l4IG9yIG50JykKKyAgICBzZXRhdHRyKHNlbGZfbW9kdWxlLCAnX29zJywgb3NfbW9kdWxlKQorICAgIHNldGF0dHIoc2VsZl9tb2R1bGUsICdwYXRoX3NlcCcsIHBhdGhfc2VwKQorICAgICMgQ29uc3RhbnRzCisgICAgc2V0YXR0cihzZWxmX21vZHVsZSwgJ19yZWxheF9jYXNlJywgX21ha2VfcmVsYXhfY2FzZSgpKQorCisKK2RlZiBfaW5zdGFsbChzeXNfbW9kdWxlLCBpbXBfbW9kdWxlKToKKyAgICAiIiJJbnN0YWxsIGltcG9ydGxpYiBhcyB0aGUgaW1wbGVtZW50YXRpb24gb2YgaW1wb3J0LgorCisgICAgSXQgaXMgYXNzdW1lZCB0aGF0IGltcCBhbmQgc3lzIGhhdmUgYmVlbiBpbXBvcnRlZCBhbmQgaW5qZWN0ZWQgaW50byB0aGUKKyAgICBnbG9iYWwgbmFtZXNwYWNlIGZvciB0aGUgbW9kdWxlIHByaW9yIHRvIGNhbGxpbmcgdGhpcyBmdW5jdGlvbi4KKworICAgICIiIgorICAgIF9zZXR1cChzeXNfbW9kdWxlLCBpbXBfbW9kdWxlKQorICAgIG9yaWdfaW1wb3J0ID0gYnVpbHRpbnMuX19pbXBvcnRfXworICAgIGJ1aWx0aW5zLl9faW1wb3J0X18gPSBfX2ltcG9ydF9fCisgICAgYnVpbHRpbnMuX19vcmlnaW5hbF9pbXBvcnRfXyA9IG9yaWdfaW1wb3J0CmRpZmYgLS1naXQgYS9MaWIvaW1wb3J0bGliL2FiYy5weSBiL0xpYi9pbXBvcnRsaWIvYWJjLnB5CmluZGV4IGZhMzQzZjguLjIyYTdjMWEgMTAwNjQ0Ci0tLSBhL0xpYi9pbXBvcnRsaWIvYWJjLnB5CisrKyBiL0xpYi9pbXBvcnRsaWIvYWJjLnB5CkBAIC0xLDE1ICsxLDExIEBACiAiIiJBYnN0cmFjdCBiYXNlIGNsYXNzZXMgcmVsYXRlZCB0byBpbXBvcnQuIiIiCiBmcm9tIC4gaW1wb3J0IF9ib290c3RyYXAKIGZyb20gLiBpbXBvcnQgbWFjaGluZXJ5Ci1mcm9tIC4gaW1wb3J0IHV0aWwKIGltcG9ydCBhYmMKIGltcG9ydCBpbXAKLWltcG9ydCBpbwogaW1wb3J0IG1hcnNoYWwKLWltcG9ydCBvcy5wYXRoCiBpbXBvcnQgc3lzCiBpbXBvcnQgdG9rZW5pemUKLWltcG9ydCB0eXBlcwogaW1wb3J0IHdhcm5pbmdzCiAKIApAQCAtMTIzLDcgKzExOSwyMCBAQAogCiAgICAgZGVmIHBhdGhfbXRpbWUoc2VsZiwgcGF0aCk6CiAgICAgICAgICIiIlJldHVybiB0aGUgKGludCkgbW9kaWZpY2F0aW9uIHRpbWUgZm9yIHRoZSBwYXRoIChzdHIpLiIiIgotICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCisgICAgICAgIGlmIHNlbGYucGF0aF9zdGF0cy5fX2Z1bmNfXyBpcyBTb3VyY2VMb2FkZXIucGF0aF9zdGF0czoKKyAgICAgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IKKyAgICAgICAgcmV0dXJuIGludChzZWxmLnBhdGhfc3RhdHMocGF0aClbJ210aW1lJ10pCisKKyAgICBkZWYgcGF0aF9zdGF0cyhzZWxmLCBwYXRoKToKKyAgICAgICAgIiIiUmV0dXJuIGEgbWV0YWRhdGEgZGljdCBmb3IgdGhlIHNvdXJjZSBwb2ludGVkIHRvIGJ5IHRoZSBwYXRoIChzdHIpLgorICAgICAgICBQb3NzaWJsZSBrZXlzOgorICAgICAgICAtICdtdGltZScgKG1hbmRhdG9yeSkgaXMgdGhlIG51bWVyaWMgdGltZXN0YW1wIG9mIGxhc3Qgc291cmNlCisgICAgICAgICAgY29kZSBtb2RpZmljYXRpb247CisgICAgICAgIC0gJ3NpemUnIChvcHRpb25hbCkgaXMgdGhlIHNpemUgaW4gYnl0ZXMgb2YgdGhlIHNvdXJjZSBjb2RlLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgc2VsZi5wYXRoX210aW1lLl9fZnVuY19fIGlzIFNvdXJjZUxvYWRlci5wYXRoX210aW1lOgorICAgICAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcgorICAgICAgICByZXR1cm4geydtdGltZSc6IHNlbGYucGF0aF9tdGltZShwYXRoKX0KIAogICAgIGRlZiBzZXRfZGF0YShzZWxmLCBwYXRoLCBkYXRhKToKICAgICAgICAgIiIiV3JpdGUgdGhlIGJ5dGVzIHRvIHRoZSBwYXRoIChpZiBwb3NzaWJsZSkuCkBAIC0xOTUsNyArMjA0LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXNlIFNvdXJjZUxvYWRlciBpbnN0ZWFkLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlNlZSB0aGUgaW1wb3J0bGliIGRvY3VtZW50YXRpb24gb24gaG93IHRvIGJlICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29tcGF0aWJsZSB3aXRoIFB5dGhvbiAzLjEgb253YXJkcy4iLAotICAgICAgICAgICAgICAgICAgICAgICAgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgICAgICAgICAgICAgIERlcHJlY2F0aW9uV2FybmluZykKICAgICAgICAgcGF0aCA9IHNlbGYuc291cmNlX3BhdGgoZnVsbG5hbWUpCiAgICAgICAgIGlmIHBhdGggaXMgTm9uZToKICAgICAgICAgICAgIHJhaXNlIEltcG9ydEVycm9yCkBAIC0yMzQsNyArMjQzLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVtb3ZhbCBpbiBQeXRob24gMy40OyB1c2UgU291cmNlTG9hZGVyIGluc3RlYWQuICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiSWYgUHl0aG9uIDMuMSBjb21wYXRpYmlsaXR5IGlzIHJlcXVpcmVkLCBzZWUgdGhlICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGF0ZXN0IGRvY3VtZW50YXRpb24gZm9yIFB5TG9hZGVyLiIsCi0gICAgICAgICAgICAgICAgICAgICAgICBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKQorICAgICAgICAgICAgICAgICAgICAgICAgRGVwcmVjYXRpb25XYXJuaW5nKQogICAgICAgICBzb3VyY2VfdGltZXN0YW1wID0gc2VsZi5zb3VyY2VfbXRpbWUoZnVsbG5hbWUpCiAgICAgICAgICMgVHJ5IHRvIHVzZSBieXRlY29kZSBpZiBpdCBpcyBhdmFpbGFibGUuCiAgICAgICAgIGJ5dGVjb2RlX3BhdGggPSBzZWxmLmJ5dGVjb2RlX3BhdGgoZnVsbG5hbWUpCkBAIC0yNDMsMTUgKzI1MiwxNyBAQAogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIG1hZ2ljID0gZGF0YVs6NF0KICAgICAgICAgICAgICAgICBpZiBsZW4obWFnaWMpIDwgNDoKLSAgICAgICAgICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IoImJhZCBtYWdpYyBudW1iZXIgaW4ge30iLmZvcm1hdChmdWxsbmFtZSkpCisgICAgICAgICAgICAgICAgICAgIHJhaXNlIEltcG9ydEVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgImJhZCBtYWdpYyBudW1iZXIgaW4ge30iLmZvcm1hdChmdWxsbmFtZSkpCiAgICAgICAgICAgICAgICAgcmF3X3RpbWVzdGFtcCA9IGRhdGFbNDo4XQogICAgICAgICAgICAgICAgIGlmIGxlbihyYXdfdGltZXN0YW1wKSA8IDQ6CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlIEVPRkVycm9yKCJiYWQgdGltZXN0YW1wIGluIHt9Ii5mb3JtYXQoZnVsbG5hbWUpKQotICAgICAgICAgICAgICAgIHB5Y190aW1lc3RhbXAgPSBtYXJzaGFsLl9yX2xvbmcocmF3X3RpbWVzdGFtcCkKKyAgICAgICAgICAgICAgICBweWNfdGltZXN0YW1wID0gX2Jvb3RzdHJhcC5fcl9sb25nKHJhd190aW1lc3RhbXApCiAgICAgICAgICAgICAgICAgYnl0ZWNvZGUgPSBkYXRhWzg6XQogICAgICAgICAgICAgICAgICMgVmVyaWZ5IHRoYXQgdGhlIG1hZ2ljIG51bWJlciBpcyB2YWxpZC4KICAgICAgICAgICAgICAgICBpZiBpbXAuZ2V0X21hZ2ljKCkgIT0gbWFnaWM6Ci0gICAgICAgICAgICAgICAgICAgIHJhaXNlIEltcG9ydEVycm9yKCJiYWQgbWFnaWMgbnVtYmVyIGluIHt9Ii5mb3JtYXQoZnVsbG5hbWUpKQorICAgICAgICAgICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICJiYWQgbWFnaWMgbnVtYmVyIGluIHt9Ii5mb3JtYXQoZnVsbG5hbWUpKQogICAgICAgICAgICAgICAgICMgVmVyaWZ5IHRoYXQgdGhlIGJ5dGVjb2RlIGlzIG5vdCBzdGFsZSAob25seSBtYXR0ZXJzIHdoZW4KICAgICAgICAgICAgICAgICAjIHRoZXJlIGlzIHNvdXJjZSB0byBmYWxsIGJhY2sgb24uCiAgICAgICAgICAgICAgICAgaWYgc291cmNlX3RpbWVzdGFtcDoKQEAgLTI3OSw3ICsyOTAsNyBAQAogICAgICAgICAjIEdlbmVyYXRlIGJ5dGVjb2RlIGFuZCB3cml0ZSBpdCBvdXQuCiAgICAgICAgIGlmIG5vdCBzeXMuZG9udF93cml0ZV9ieXRlY29kZToKICAgICAgICAgICAgIGRhdGEgPSBieXRlYXJyYXkoaW1wLmdldF9tYWdpYygpKQotICAgICAgICAgICAgZGF0YS5leHRlbmQobWFyc2hhbC5fd19sb25nKHNvdXJjZV90aW1lc3RhbXApKQorICAgICAgICAgICAgZGF0YS5leHRlbmQoX2Jvb3RzdHJhcC5fd19sb25nKHNvdXJjZV90aW1lc3RhbXApKQogICAgICAgICAgICAgZGF0YS5leHRlbmQobWFyc2hhbC5kdW1wcyhjb2RlX29iamVjdCkpCiAgICAgICAgICAgICBzZWxmLndyaXRlX2J5dGVjb2RlKGZ1bGxuYW1lLCBkYXRhKQogICAgICAgICByZXR1cm4gY29kZV9vYmplY3QKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9fX21haW5fXy5weSBiL0xpYi9pbXBvcnRsaWIvdGVzdC9fX21haW5fXy5weQppbmRleCBkZWNjNTNkLi45MjE3MWIyIDEwMDY0NAotLS0gYS9MaWIvaW1wb3J0bGliL3Rlc3QvX19tYWluX18ucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L19fbWFpbl9fLnB5CkBAIC00LDI2ICs0LDI3IEBACiBidWlsdGlucy5fX2ltcG9ydF9fIGluc3RlYWQgb2YgaW1wb3J0bGliLl9faW1wb3J0X18uCiAKICIiIgotaW1wb3J0IGltcG9ydGxpYgogZnJvbSBpbXBvcnRsaWIudGVzdC5pbXBvcnRfIGltcG9ydCB1dGlsCiBpbXBvcnQgb3MucGF0aAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdAotaW1wb3J0IHN5cwogaW1wb3J0IHVuaXR0ZXN0CiAKIAogZGVmIHRlc3RfbWFpbigpOgotICAgIGlmICdfX3B5Y2FjaGVfXycgaW4gX19maWxlX186Ci0gICAgICAgIHBhcnRzID0gX19maWxlX18uc3BsaXQob3MucGF0aC5zZXApCi0gICAgICAgIHN0YXJ0X2RpciA9IHNlcC5qb2luKHBhcnRzWzotMl0pCi0gICAgZWxzZToKLSAgICAgICAgc3RhcnRfZGlyID0gb3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKQorICAgIHN0YXJ0X2RpciA9IG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykKICAgICB0b3BfZGlyID0gb3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShzdGFydF9kaXIpKQogICAgIHRlc3RfbG9hZGVyID0gdW5pdHRlc3QuVGVzdExvYWRlcigpCi0gICAgaWYgJy0tYnVpbHRpbicgaW4gc3lzLmFyZ3Y6Ci0gICAgICAgIHV0aWwudXNpbmdfX19pbXBvcnRfXyA9IFRydWUKICAgICBydW5fdW5pdHRlc3QodGVzdF9sb2FkZXIuZGlzY292ZXIoc3RhcnRfZGlyLCB0b3BfbGV2ZWxfZGlyPXRvcF9kaXIpKQogCiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgaW1wb3J0IGFyZ3BhcnNlCisKKyAgICBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcihkZXNjcmlwdGlvbj0nRXhlY3V0ZSB0aGUgaW1wb3J0bGliIHRlc3QgJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3VpdGUnKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy1iJywgJy0tYnVpbHRpbicsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsIGRlZmF1bHQ9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSd1c2UgYnVpbHRpbnMuX19pbXBvcnRfXygpIGluc3RlYWQgb2YgaW1wb3J0bGliJykKKyAgICBhcmdzID0gcGFyc2VyLnBhcnNlX2FyZ3MoKQorICAgIGlmIGFyZ3MuYnVpbHRpbjoKKyAgICAgICAgdXRpbC51c2luZ19fX2ltcG9ydF9fID0gVHJ1ZQogICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvaW1wb3J0bGliL3Rlc3QvYmVuY2htYXJrLnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L2JlbmNobWFyay5weQppbmRleCBiNWRlNmM2Li44N2IxNzc1IDEwMDY0NAotLS0gYS9MaWIvaW1wb3J0bGliL3Rlc3QvYmVuY2htYXJrLnB5CisrKyBiL0xpYi9pbXBvcnRsaWIvdGVzdC9iZW5jaG1hcmsucHkKQEAgLTksOSArOSwxMSBAQAogaW1wb3J0IGRlY2ltYWwKIGltcG9ydCBpbXAKIGltcG9ydCBpbXBvcnRsaWIKK2ltcG9ydCBqc29uCiBpbXBvcnQgb3MKIGltcG9ydCBweV9jb21waWxlCiBpbXBvcnQgc3lzCitpbXBvcnQgdGFibmFubnkKIGltcG9ydCB0aW1laXQKIAogCkBAIC01OSw3ICs2MSw3IEBACiAKIAogZGVmIHNvdXJjZV93b19ieXRlY29kZShzZWNvbmRzLCByZXBlYXQpOgotICAgICIiIlNvdXJjZSB3L28gYnl0ZWNvZGU6IHNpbXBsZSIiIgorICAgICIiIlNvdXJjZSB3L28gYnl0ZWNvZGU6IHNtYWxsIiIiCiAgICAgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGUgPSBUcnVlCiAgICAgdHJ5OgogICAgICAgICBuYW1lID0gJ19faW1wb3J0bGliX3Rlc3RfYmVuY2htYXJrX18nCkBAIC03MywyMyArNzUsMzAgQEAKICAgICAgICAgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGUgPSBGYWxzZQogCiAKLWRlZiBkZWNpbWFsX3dvX2J5dGVjb2RlKHNlY29uZHMsIHJlcGVhdCk6Ci0gICAgIiIiU291cmNlIHcvbyBieXRlY29kZTogZGVjaW1hbCIiIgotICAgIG5hbWUgPSAnZGVjaW1hbCcKLSAgICBkZWNpbWFsX2J5dGVjb2RlID0gaW1wLmNhY2hlX2Zyb21fc291cmNlKGRlY2ltYWwuX19maWxlX18pCi0gICAgaWYgb3MucGF0aC5leGlzdHMoZGVjaW1hbF9ieXRlY29kZSk6Ci0gICAgICAgIG9zLnVubGluayhkZWNpbWFsX2J5dGVjb2RlKQotICAgIHN5cy5kb250X3dyaXRlX2J5dGVjb2RlID0gVHJ1ZQotICAgIHRyeToKLSAgICAgICAgZm9yIHJlc3VsdCBpbiBiZW5jaChuYW1lLCBsYW1iZGE6IHN5cy5tb2R1bGVzLnBvcChuYW1lKSwgcmVwZWF0PXJlcGVhdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRzPXNlY29uZHMpOgotICAgICAgICAgICAgeWllbGQgcmVzdWx0Ci0gICAgZmluYWxseToKLSAgICAgICAgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGUgPSBGYWxzZQorZGVmIF93b19ieXRlY29kZShtb2R1bGUpOgorICAgIG5hbWUgPSBtb2R1bGUuX19uYW1lX18KKyAgICBkZWYgYmVuY2htYXJrX3dvX2J5dGVjb2RlKHNlY29uZHMsIHJlcGVhdCk6CisgICAgICAgICIiIlNvdXJjZSB3L28gYnl0ZWNvZGU6IHt9IiIiCisgICAgICAgIGJ5dGVjb2RlX3BhdGggPSBpbXAuY2FjaGVfZnJvbV9zb3VyY2UobW9kdWxlLl9fZmlsZV9fKQorICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhieXRlY29kZV9wYXRoKToKKyAgICAgICAgICAgIG9zLnVubGluayhieXRlY29kZV9wYXRoKQorICAgICAgICBzeXMuZG9udF93cml0ZV9ieXRlY29kZSA9IFRydWUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZm9yIHJlc3VsdCBpbiBiZW5jaChuYW1lLCBsYW1iZGE6IHN5cy5tb2R1bGVzLnBvcChuYW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVwZWF0PXJlcGVhdCwgc2Vjb25kcz1zZWNvbmRzKToKKyAgICAgICAgICAgICAgICB5aWVsZCByZXN1bHQKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHN5cy5kb250X3dyaXRlX2J5dGVjb2RlID0gRmFsc2UKKworICAgIGJlbmNobWFya193b19ieXRlY29kZS5fX2RvY19fID0gYmVuY2htYXJrX3dvX2J5dGVjb2RlLl9fZG9jX18uZm9ybWF0KG5hbWUpCisgICAgcmV0dXJuIGJlbmNobWFya193b19ieXRlY29kZQorCit0YWJuYW5ueV93b19ieXRlY29kZSA9IF93b19ieXRlY29kZSh0YWJuYW5ueSkKK2RlY2ltYWxfd29fYnl0ZWNvZGUgPSBfd29fYnl0ZWNvZGUoZGVjaW1hbCkKIAogCiBkZWYgc291cmNlX3dyaXRpbmdfYnl0ZWNvZGUoc2Vjb25kcywgcmVwZWF0KToKLSAgICAiIiJTb3VyY2Ugd3JpdGluZyBieXRlY29kZTogc2ltcGxlIiIiCisgICAgIiIiU291cmNlIHdyaXRpbmcgYnl0ZWNvZGU6IHNtYWxsIiIiCiAgICAgYXNzZXJ0IG5vdCBzeXMuZG9udF93cml0ZV9ieXRlY29kZQogICAgIG5hbWUgPSAnX19pbXBvcnRsaWJfdGVzdF9iZW5jaG1hcmtfXycKICAgICB3aXRoIHNvdXJjZV91dGlsLmNyZWF0ZV9tb2R1bGVzKG5hbWUpIGFzIG1hcHBpbmc6CkBAIC0xMDEsMTkgKzExMCwyNyBAQAogICAgICAgICAgICAgeWllbGQgcmVzdWx0CiAKIAotZGVmIGRlY2ltYWxfd3JpdGluZ19ieXRlY29kZShzZWNvbmRzLCByZXBlYXQpOgotICAgICIiIlNvdXJjZSB3cml0aW5nIGJ5dGVjb2RlOiBkZWNpbWFsIiIiCi0gICAgYXNzZXJ0IG5vdCBzeXMuZG9udF93cml0ZV9ieXRlY29kZQotICAgIG5hbWUgPSAnZGVjaW1hbCcKLSAgICBkZWYgY2xlYW51cCgpOgotICAgICAgICBzeXMubW9kdWxlcy5wb3AobmFtZSkKLSAgICAgICAgb3MudW5saW5rKGltcC5jYWNoZV9mcm9tX3NvdXJjZShkZWNpbWFsLl9fZmlsZV9fKSkKLSAgICBmb3IgcmVzdWx0IGluIGJlbmNoKG5hbWUsIGNsZWFudXAsIHJlcGVhdD1yZXBlYXQsIHNlY29uZHM9c2Vjb25kcyk6Ci0gICAgICAgIHlpZWxkIHJlc3VsdAorZGVmIF93cml0aW5nX2J5dGVjb2RlKG1vZHVsZSk6CisgICAgbmFtZSA9IG1vZHVsZS5fX25hbWVfXworICAgIGRlZiB3cml0aW5nX2J5dGVjb2RlX2JlbmNobWFyayhzZWNvbmRzLCByZXBlYXQpOgorICAgICAgICAiIiJTb3VyY2Ugd3JpdGluZyBieXRlY29kZToge30iIiIKKyAgICAgICAgYXNzZXJ0IG5vdCBzeXMuZG9udF93cml0ZV9ieXRlY29kZQorICAgICAgICBkZWYgY2xlYW51cCgpOgorICAgICAgICAgICAgc3lzLm1vZHVsZXMucG9wKG5hbWUpCisgICAgICAgICAgICBvcy51bmxpbmsoaW1wLmNhY2hlX2Zyb21fc291cmNlKG1vZHVsZS5fX2ZpbGVfXykpCisgICAgICAgIGZvciByZXN1bHQgaW4gYmVuY2gobmFtZSwgY2xlYW51cCwgcmVwZWF0PXJlcGVhdCwgc2Vjb25kcz1zZWNvbmRzKToKKyAgICAgICAgICAgIHlpZWxkIHJlc3VsdAorCisgICAgd3JpdGluZ19ieXRlY29kZV9iZW5jaG1hcmsuX19kb2NfXyA9ICgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd3JpdGluZ19ieXRlY29kZV9iZW5jaG1hcmsuX19kb2NfXy5mb3JtYXQobmFtZSkpCisgICAgcmV0dXJuIHdyaXRpbmdfYnl0ZWNvZGVfYmVuY2htYXJrCisKK3RhYm5hbm55X3dyaXRpbmdfYnl0ZWNvZGUgPSBfd3JpdGluZ19ieXRlY29kZSh0YWJuYW5ueSkKK2RlY2ltYWxfd3JpdGluZ19ieXRlY29kZSA9IF93cml0aW5nX2J5dGVjb2RlKGRlY2ltYWwpCiAKIAogZGVmIHNvdXJjZV91c2luZ19ieXRlY29kZShzZWNvbmRzLCByZXBlYXQpOgotICAgICIiIkJ5dGVjb2RlIHcvIHNvdXJjZTogc2ltcGxlIiIiCisgICAgIiIiU291cmNlIHcvIGJ5dGVjb2RlOiBzbWFsbCIiIgogICAgIG5hbWUgPSAnX19pbXBvcnRsaWJfdGVzdF9iZW5jaG1hcmtfXycKICAgICB3aXRoIHNvdXJjZV91dGlsLmNyZWF0ZV9tb2R1bGVzKG5hbWUpIGFzIG1hcHBpbmc6CiAgICAgICAgIHB5X2NvbXBpbGUuY29tcGlsZShtYXBwaW5nW25hbWVdKQpAQCAtMTIzLDI3ICsxNDAsNTYgQEAKICAgICAgICAgICAgIHlpZWxkIHJlc3VsdAogCiAKLWRlZiBkZWNpbWFsX3VzaW5nX2J5dGVjb2RlKHNlY29uZHMsIHJlcGVhdCk6Ci0gICAgIiIiQnl0ZWNvZGUgdy8gc291cmNlOiBkZWNpbWFsIiIiCi0gICAgbmFtZSA9ICdkZWNpbWFsJwotICAgIHB5X2NvbXBpbGUuY29tcGlsZShkZWNpbWFsLl9fZmlsZV9fKQotICAgIGZvciByZXN1bHQgaW4gYmVuY2gobmFtZSwgbGFtYmRhOiBzeXMubW9kdWxlcy5wb3AobmFtZSksIHJlcGVhdD1yZXBlYXQsCi0gICAgICAgICAgICAgICAgICAgICAgICBzZWNvbmRzPXNlY29uZHMpOgotICAgICAgICB5aWVsZCByZXN1bHQKK2RlZiBfdXNpbmdfYnl0ZWNvZGUobW9kdWxlKToKKyAgICBuYW1lID0gbW9kdWxlLl9fbmFtZV9fCisgICAgZGVmIHVzaW5nX2J5dGVjb2RlX2JlbmNobWFyayhzZWNvbmRzLCByZXBlYXQpOgorICAgICAgICAiIiJTb3VyY2Ugdy8gYnl0ZWNvZGU6IHt9IiIiCisgICAgICAgIHB5X2NvbXBpbGUuY29tcGlsZShtb2R1bGUuX19maWxlX18pCisgICAgICAgIGZvciByZXN1bHQgaW4gYmVuY2gobmFtZSwgbGFtYmRhOiBzeXMubW9kdWxlcy5wb3AobmFtZSksIHJlcGVhdD1yZXBlYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vjb25kcz1zZWNvbmRzKToKKyAgICAgICAgICAgIHlpZWxkIHJlc3VsdAorCisgICAgdXNpbmdfYnl0ZWNvZGVfYmVuY2htYXJrLl9fZG9jX18gPSAoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzaW5nX2J5dGVjb2RlX2JlbmNobWFyay5fX2RvY19fLmZvcm1hdChuYW1lKSkKKyAgICByZXR1cm4gdXNpbmdfYnl0ZWNvZGVfYmVuY2htYXJrCisKK3RhYm5hbm55X3VzaW5nX2J5dGVjb2RlID0gX3VzaW5nX2J5dGVjb2RlKHRhYm5hbm55KQorZGVjaW1hbF91c2luZ19ieXRlY29kZSA9IF91c2luZ19ieXRlY29kZShkZWNpbWFsKQogCiAKLWRlZiBtYWluKGltcG9ydF8pOgorZGVmIG1haW4oaW1wb3J0Xywgb3B0aW9ucyk6CisgICAgaWYgb3B0aW9ucy5zb3VyY2VfZmlsZToKKyAgICAgICAgd2l0aCBvcHRpb25zLnNvdXJjZV9maWxlOgorICAgICAgICAgICAgcHJldl9yZXN1bHRzID0ganNvbi5sb2FkKG9wdGlvbnMuc291cmNlX2ZpbGUpCisgICAgZWxzZToKKyAgICAgICAgcHJldl9yZXN1bHRzID0ge30KICAgICBfX2J1aWx0aW5zX18uX19pbXBvcnRfXyA9IGltcG9ydF8KICAgICBiZW5jaG1hcmtzID0gKGZyb21fY2FjaGUsIGJ1aWx0aW5fbW9kLAotICAgICAgICAgICAgICAgICAgc291cmNlX3VzaW5nX2J5dGVjb2RlLCBzb3VyY2Vfd29fYnl0ZWNvZGUsCiAgICAgICAgICAgICAgICAgICBzb3VyY2Vfd3JpdGluZ19ieXRlY29kZSwKLSAgICAgICAgICAgICAgICAgIGRlY2ltYWxfdXNpbmdfYnl0ZWNvZGUsIGRlY2ltYWxfd3JpdGluZ19ieXRlY29kZSwKLSAgICAgICAgICAgICAgICAgIGRlY2ltYWxfd29fYnl0ZWNvZGUsKQorICAgICAgICAgICAgICAgICAgc291cmNlX3dvX2J5dGVjb2RlLCBzb3VyY2VfdXNpbmdfYnl0ZWNvZGUsCisgICAgICAgICAgICAgICAgICB0YWJuYW5ueV93cml0aW5nX2J5dGVjb2RlLAorICAgICAgICAgICAgICAgICAgdGFibmFubnlfd29fYnl0ZWNvZGUsIHRhYm5hbm55X3VzaW5nX2J5dGVjb2RlLAorICAgICAgICAgICAgICAgICAgZGVjaW1hbF93cml0aW5nX2J5dGVjb2RlLAorICAgICAgICAgICAgICAgICAgZGVjaW1hbF93b19ieXRlY29kZSwgZGVjaW1hbF91c2luZ19ieXRlY29kZSwKKyAgICAgICAgICAgICAgICApCisgICAgaWYgb3B0aW9ucy5iZW5jaG1hcms6CisgICAgICAgIGZvciBiIGluIGJlbmNobWFya3M6CisgICAgICAgICAgICBpZiBiLl9fZG9jX18gPT0gb3B0aW9ucy5iZW5jaG1hcms6CisgICAgICAgICAgICAgICAgYmVuY2htYXJrcyA9IFtiXQorICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBwcmludCgnVW5rbm93biBiZW5jaG1hcms6IHshcn0nLmZvcm1hdChvcHRpb25zLmJlbmNobWFyaywKKyAgICAgICAgICAgICAgICAgIGZpbGU9c3lzLnN0ZGVycikpCisgICAgICAgICAgICBzeXMuZXhpdCgxKQogICAgIHNlY29uZHMgPSAxCiAgICAgc2Vjb25kc19wbHVyYWwgPSAncycgaWYgc2Vjb25kcyA+IDEgZWxzZSAnJwogICAgIHJlcGVhdCA9IDMKLSAgICBoZWFkZXIgPSAiTWVhc3VyaW5nIGltcG9ydHMvc2Vjb25kIG92ZXIge30gc2Vjb25ke30sIGJlc3Qgb3V0IG9mIHt9XG4iCi0gICAgcHJpbnQoaGVhZGVyLmZvcm1hdChzZWNvbmRzLCBzZWNvbmRzX3BsdXJhbCwgcmVwZWF0KSkKKyAgICBoZWFkZXIgPSAoJ01lYXN1cmluZyBpbXBvcnRzL3NlY29uZCBvdmVyIHt9IHNlY29uZHt9LCBiZXN0IG91dCBvZiB7fVxuJworICAgICAgICAgICAgICAnRW50aXJlIGJlbmNobWFyayBydW4gc2hvdWxkIHRha2UgYWJvdXQge30gc2Vjb25kc1xuJworICAgICAgICAgICAgICAnVXNpbmcgeyFyfSBhcyBfX2ltcG9ydF9fXG4nKQorICAgIHByaW50KGhlYWRlci5mb3JtYXQoc2Vjb25kcywgc2Vjb25kc19wbHVyYWwsIHJlcGVhdCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGxlbihiZW5jaG1hcmtzKSAqIHNlY29uZHMgKiByZXBlYXQsIF9faW1wb3J0X18pKQorICAgIG5ld19yZXN1bHRzID0ge30KICAgICBmb3IgYmVuY2htYXJrIGluIGJlbmNobWFya3M6CiAgICAgICAgIHByaW50KGJlbmNobWFyay5fX2RvY19fLCAiWyIsIGVuZD0nICcpCiAgICAgICAgIHN5cy5zdGRvdXQuZmx1c2goKQpAQCAtMTU0LDE5ICsyMDAsNDAgQEAKICAgICAgICAgICAgIHN5cy5zdGRvdXQuZmx1c2goKQogICAgICAgICBhc3NlcnQgbm90IHN5cy5kb250X3dyaXRlX2J5dGVjb2RlCiAgICAgICAgIHByaW50KCJdIiwgImJlc3QgaXMiLCBmb3JtYXQobWF4KHJlc3VsdHMpLCAnLGQnKSkKKyAgICAgICAgbmV3X3Jlc3VsdHNbYmVuY2htYXJrLl9fZG9jX19dID0gcmVzdWx0cworICAgIGlmIHByZXZfcmVzdWx0czoKKyAgICAgICAgcHJpbnQoJ1xuXG5Db21wYXJpbmcgbmV3IHZzLiBvbGRcbicpCisgICAgICAgIGZvciBiZW5jaG1hcmsgaW4gYmVuY2htYXJrczoKKyAgICAgICAgICAgIGJlbmNobWFya19uYW1lID0gYmVuY2htYXJrLl9fZG9jX18KKyAgICAgICAgICAgIG9sZF9yZXN1bHQgPSBtYXgocHJldl9yZXN1bHRzW2JlbmNobWFya19uYW1lXSkKKyAgICAgICAgICAgIG5ld19yZXN1bHQgPSBtYXgobmV3X3Jlc3VsdHNbYmVuY2htYXJrX25hbWVdKQorICAgICAgICAgICAgcmVzdWx0ID0gJ3s6LGR9IHZzLiB7OixkfSAoezolfSknLmZvcm1hdChuZXdfcmVzdWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbGRfcmVzdWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld19yZXN1bHQvb2xkX3Jlc3VsdCkKKyAgICAgICAgICAgIHByaW50KGJlbmNobWFya19uYW1lLCAnOicsIHJlc3VsdCkKKyAgICBpZiBvcHRpb25zLmRlc3RfZmlsZToKKyAgICAgICAgd2l0aCBvcHRpb25zLmRlc3RfZmlsZToKKyAgICAgICAgICAgIGpzb24uZHVtcChuZXdfcmVzdWx0cywgb3B0aW9ucy5kZXN0X2ZpbGUsIGluZGVudD0yKQogCiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6Ci0gICAgaW1wb3J0IG9wdHBhcnNlCisgICAgaW1wb3J0IGFyZ3BhcnNlCiAKLSAgICBwYXJzZXIgPSBvcHRwYXJzZS5PcHRpb25QYXJzZXIoKQotICAgIHBhcnNlci5hZGRfb3B0aW9uKCctYicsICctLWJ1aWx0aW4nLCBkZXN0PSdidWlsdGluJywgYWN0aW9uPSdzdG9yZV90cnVlJywKKyAgICBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcigpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLWInLCAnLS1idWlsdGluJywgZGVzdD0nYnVpbHRpbicsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsCiAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0PUZhbHNlLCBoZWxwPSJ1c2UgdGhlIGJ1aWx0LWluIF9faW1wb3J0X18iKQotICAgIG9wdGlvbnMsIGFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCi0gICAgaWYgYXJnczoKLSAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJ1bnJlY29nbml6ZWQgYXJnczoge30iLmZvcm1hdChhcmdzKSkKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctcicsICctLXJlYWQnLCBkZXN0PSdzb3VyY2VfZmlsZScsCisgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPWFyZ3BhcnNlLkZpbGVUeXBlKCdyJyksCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdmaWxlIHRvIHJlYWQgYmVuY2htYXJrIGRhdGEgZnJvbSB0byBjb21wYXJlICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FnYWluc3QnKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy13JywgJy0td3JpdGUnLCBkZXN0PSdkZXN0X2ZpbGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1hcmdwYXJzZS5GaWxlVHlwZSgndycpLAorICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0nZmlsZSB0byB3cml0ZSBiZW5jaG1hcmsgZGF0YSB0bycpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1iZW5jaG1hcmsnLCBkZXN0PSdiZW5jaG1hcmsnLAorICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0nc3BlY2lmaWMgYmVuY2htYXJrIHRvIHJ1bicpCisgICAgb3B0aW9ucyA9IHBhcnNlci5wYXJzZV9hcmdzKCkKICAgICBpbXBvcnRfID0gX19pbXBvcnRfXwogICAgIGlmIG5vdCBvcHRpb25zLmJ1aWx0aW46CiAgICAgICAgIGltcG9ydF8gPSBpbXBvcnRsaWIuX19pbXBvcnRfXwogCi0gICAgbWFpbihpbXBvcnRfKQorICAgIG1haW4oaW1wb3J0Xywgb3B0aW9ucykKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9leHRlbnNpb24vdGVzdF9jYXNlX3NlbnNpdGl2aXR5LnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L2V4dGVuc2lvbi90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKaW5kZXggZTA2MmZiNi4uYWRkODMwZCAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi90ZXN0L2V4dGVuc2lvbi90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L2V4dGVuc2lvbi90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKQEAgLTIwLDEyICsyMCwxOCBAQAogICAgIGRlZiB0ZXN0X2Nhc2Vfc2Vuc2l0aXZlKHNlbGYpOgogICAgICAgICB3aXRoIHN1cHBvcnQuRW52aXJvbm1lbnRWYXJHdWFyZCgpIGFzIGVudjoKICAgICAgICAgICAgIGVudi51bnNldCgnUFlUSE9OQ0FTRU9LJykKKyAgICAgICAgICAgIGlmIGInUFlUSE9OQ0FTRU9LJyBpbiBfYm9vdHN0cmFwLl9vcy5lbnZpcm9uOgorICAgICAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoJ29zLmVudmlyb24gY2hhbmdlcyBub3QgcmVmbGVjdGVkIGluICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdfb3MuZW52aXJvbicpCiAgICAgICAgICAgICBsb2FkZXIgPSBzZWxmLmZpbmRfbW9kdWxlKCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGxvYWRlcikKIAogICAgIGRlZiB0ZXN0X2Nhc2VfaW5zZW5zaXRpdml0eShzZWxmKToKICAgICAgICAgd2l0aCBzdXBwb3J0LkVudmlyb25tZW50VmFyR3VhcmQoKSBhcyBlbnY6CiAgICAgICAgICAgICBlbnYuc2V0KCdQWVRIT05DQVNFT0snLCAnMScpCisgICAgICAgICAgICBpZiBiJ1BZVEhPTkNBU0VPSycgbm90IGluIF9ib290c3RyYXAuX29zLmVudmlyb246CisgICAgICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgnb3MuZW52aXJvbiBjaGFuZ2VzIG5vdCByZWZsZWN0ZWQgaW4gJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19vcy5lbnZpcm9uJykKICAgICAgICAgICAgIGxvYWRlciA9IHNlbGYuZmluZF9tb2R1bGUoKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIobG9hZGVyLCAnbG9hZF9tb2R1bGUnKSkKIApkaWZmIC0tZ2l0IGEvTGliL2ltcG9ydGxpYi90ZXN0L2ltcG9ydF8vdGVzdF9fX3BhY2thZ2VfXy5weSBiL0xpYi9pbXBvcnRsaWIvdGVzdC9pbXBvcnRfL3Rlc3RfX19wYWNrYWdlX18ucHkKaW5kZXggNTA1NmFlNS4uNzgzY2RlMSAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi90ZXN0L2ltcG9ydF8vdGVzdF9fX3BhY2thZ2VfXy5weQorKysgYi9MaWIvaW1wb3J0bGliL3Rlc3QvaW1wb3J0Xy90ZXN0X19fcGFja2FnZV9fLnB5CkBAIC02Nyw3ICs2Nyw3IEBACiAKICAgICBkZWYgdGVzdF9idW5rX19wYWNrYWdlX18oc2VsZik6CiAgICAgICAgIGdsb2JhbHMgPSB7J19fcGFja2FnZV9fJzogNDJ9Ci0gICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKICAgICAgICAgICAgIGltcG9ydF91dGlsLmltcG9ydF8oJycsIGdsb2JhbHMsIHt9LCBbJ3JlbGltcG9ydCddLCAxKQogCiAKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9pbXBvcnRfL3Rlc3RfYXBpLnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L2ltcG9ydF8vdGVzdF9hcGkucHkKaW5kZXggOTA3NWQ0Mi4uMmZhMWY5MCAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi90ZXN0L2ltcG9ydF8vdGVzdF9hcGkucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L2ltcG9ydF8vdGVzdF9hcGkucHkKQEAgLTEyLDYgKzEyLDEzIEBACiAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKICAgICAgICAgICAgIHV0aWwuaW1wb3J0Xyg0MikKIAorICAgIGRlZiB0ZXN0X25lZ2F0aXZlX2xldmVsKHNlbGYpOgorICAgICAgICAjIFJhaXNlIFZhbHVlRXJyb3Igd2hlbiBhIG5lZ2F0aXZlIGxldmVsIGlzIHNwZWNpZmllZC4KKyAgICAgICAgIyBQRVAgMzI4IGRpZCBhd2F5IHdpdGggc3lzLm1vZHVsZSBOb25lIGVudHJpZXMgYW5kIHRoZSBhbWJpZ3VpdHkgb2YKKyAgICAgICAgIyBhYnNvbHV0ZS9yZWxhdGl2ZSBpbXBvcnRzLgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgdXRpbC5pbXBvcnRfKCdvcycsIGdsb2JhbHMoKSwgbGV2ZWw9LTEpCisKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9pbXBvcnRfL3Rlc3RfcGF0aC5weSBiL0xpYi9pbXBvcnRsaWIvdGVzdC9pbXBvcnRfL3Rlc3RfcGF0aC5weQppbmRleCAyZmFhMjMxLi41NzEzMzE5IDEwMDY0NAotLS0gYS9MaWIvaW1wb3J0bGliL3Rlc3QvaW1wb3J0Xy90ZXN0X3BhdGgucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L2ltcG9ydF8vdGVzdF9wYXRoLnB5CkBAIC03Myw2ICs3MywxNiBAQAogICAgICAgICAgICAgbG9hZGVyID0gbWFjaGluZXJ5LlBhdGhGaW5kZXIuZmluZF9tb2R1bGUobW9kdWxlKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGxvYWRlciBpcyBpbXBvcnRlcikKIAorICAgIGRlZiB0ZXN0X3BhdGhfaW1wb3J0ZXJfY2FjaGVfZW1wdHlfc3RyaW5nKHNlbGYpOgorICAgICAgICAjIFRoZSBlbXB0eSBzdHJpbmcgc2hvdWxkIGNyZWF0ZSBhIGZpbmRlciB1c2luZyB0aGUgY3dkLgorICAgICAgICBwYXRoID0gJycKKyAgICAgICAgbW9kdWxlID0gJzx0ZXN0IG1vZHVsZT4nCisgICAgICAgIGltcG9ydGVyID0gdXRpbC5tb2NrX21vZHVsZXMobW9kdWxlKQorICAgICAgICBob29rID0gaW1wb3J0X3V0aWwubW9ja19wYXRoX2hvb2sob3MuY3VyZGlyLCBpbXBvcnRlcj1pbXBvcnRlcikKKyAgICAgICAgd2l0aCB1dGlsLmltcG9ydF9zdGF0ZShwYXRoPVtwYXRoXSwgcGF0aF9ob29rcz1baG9va10pOgorICAgICAgICAgICAgbG9hZGVyID0gbWFjaGluZXJ5LlBhdGhGaW5kZXIuZmluZF9tb2R1bGUobW9kdWxlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhsb2FkZXIsIGltcG9ydGVyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihvcy5jdXJkaXIsIHN5cy5wYXRoX2ltcG9ydGVyX2NhY2hlKQogCiAKIGNsYXNzIERlZmF1bHRQYXRoRmluZGVyVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgpkaWZmIC0tZ2l0IGEvTGliL2ltcG9ydGxpYi90ZXN0L3JlZ3J0ZXN0LnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L3JlZ3J0ZXN0LnB5CmluZGV4IGIxMDNhZTcuLmRjMGViOTcgMTAwNjQ0Ci0tLSBhL0xpYi9pbXBvcnRsaWIvdGVzdC9yZWdydGVzdC5weQorKysgYi9MaWIvaW1wb3J0bGliL3Rlc3QvcmVncnRlc3QucHkKQEAgLTUsMTMgKzUsNiBAQAogT3RoZXJ3aXNlIGFsbCBjb21tYW5kLWxpbmUgb3B0aW9ucyB2YWxpZCBmb3IgdGVzdC5yZWdydGVzdCBhcmUgYWxzbyB2YWxpZCBmb3IKIHRoaXMgc2NyaXB0LgogCi1YWFggRkFJTElORwotICAqIHRlc3RfaW1wb3J0Ci0gICAgLSB0ZXN0X2luY29ycmVjdF9jb2RlX25hbWUKLSAgICAgICAgZmlsZSBuYW1lIGRpZmZlcmluZyBiZXR3ZWVuIF9fZmlsZV9fIGFuZCBjb19maWxlbmFtZSAocjY4MzYwIG9uIHRydW5rKQotICAgIC0gdGVzdF9pbXBvcnRfYnlfZmlsZW5hbWUKLSAgICAgICAgZXhjZXB0aW9uIGZvciB0cnlpbmcgdG8gaW1wb3J0IGJ5IGZpbGUgbmFtZSBkb2VzIG5vdCBtYXRjaAotCiAiIiIKIGltcG9ydCBpbXBvcnRsaWIKIGltcG9ydCBzeXMKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9hYmNfbG9hZGVyLnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2FiY19sb2FkZXIucHkKaW5kZXggMzI0NTkwNy4uMDFhY2RhNCAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2FiY19sb2FkZXIucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2FiY19sb2FkZXIucHkKQEAgLTQwLDggKzQwLDEwIEBACiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHBhdGgsIG1hZ2ljPWltcC5nZXRfbWFnaWMoKSk6CiAgICAgICAgIHN1cGVyKCkuX19pbml0X18ocGF0aCkKICAgICAgICAgc2VsZi5ieXRlY29kZV9wYXRoID0gaW1wLmNhY2hlX2Zyb21fc291cmNlKHNlbGYucGF0aCkKKyAgICAgICAgc2VsZi5zb3VyY2Vfc2l6ZSA9IGxlbihzZWxmLnNvdXJjZSkKICAgICAgICAgZGF0YSA9IGJ5dGVhcnJheShtYWdpYykKLSAgICAgICAgZGF0YS5leHRlbmQobWFyc2hhbC5fd19sb25nKHNlbGYuc291cmNlX210aW1lKSkKKyAgICAgICAgZGF0YS5leHRlbmQoaW1wb3J0bGliLl93X2xvbmcoc2VsZi5zb3VyY2VfbXRpbWUpKQorICAgICAgICBkYXRhLmV4dGVuZChpbXBvcnRsaWIuX3dfbG9uZyhzZWxmLnNvdXJjZV9zaXplKSkKICAgICAgICAgY29kZV9vYmplY3QgPSBjb21waWxlKHNlbGYuc291cmNlLCBzZWxmLnBhdGgsICdleGVjJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9udF9pbmhlcml0PVRydWUpCiAgICAgICAgIGRhdGEuZXh0ZW5kKG1hcnNoYWwuZHVtcHMoY29kZV9vYmplY3QpKQpAQCAtNTYsOSArNTgsOSBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmFpc2UgSU9FcnJvcgogCi0gICAgZGVmIHBhdGhfbXRpbWUoc2VsZiwgcGF0aCk6CisgICAgZGVmIHBhdGhfc3RhdHMoc2VsZiwgcGF0aCk6CiAgICAgICAgIGFzc2VydCBwYXRoID09IHNlbGYucGF0aAotICAgICAgICByZXR1cm4gc2VsZi5zb3VyY2VfbXRpbWUKKyAgICAgICAgcmV0dXJuIHsnbXRpbWUnOiBzZWxmLnNvdXJjZV9tdGltZSwgJ3NpemUnOiBzZWxmLnNvdXJjZV9zaXplfQogCiAgICAgZGVmIHNldF9kYXRhKHNlbGYsIHBhdGgsIGRhdGEpOgogICAgICAgICBzZWxmLndyaXR0ZW5bcGF0aF0gPSBieXRlcyhkYXRhKQpAQCAtMTAyLDcgKzEwNCw3IEBACiAgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImFsd2F5cyIpCiAgICAgICAgICAgICBwYXRoID0gc3VwZXIoKS5nZXRfZmlsZW5hbWUobmFtZSkKICAgICAgICAgICAgIGFzc2VydCBsZW4odykgPT0gMQotICAgICAgICAgICAgYXNzZXJ0IGlzc3ViY2xhc3Mod1swXS5jYXRlZ29yeSwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIGFzc2VydCBpc3N1YmNsYXNzKHdbMF0uY2F0ZWdvcnksIERlcHJlY2F0aW9uV2FybmluZykKICAgICAgICAgICAgIHJldHVybiBwYXRoCiAKIApAQCAtMTk4LDcgKzIwMCw3IEBACiAgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImFsd2F5cyIpCiAgICAgICAgICAgICBjb2RlX29iamVjdCA9IHN1cGVyKCkuZ2V0X2NvZGUobmFtZSkKICAgICAgICAgICAgIGFzc2VydCBsZW4odykgPT0gMQotICAgICAgICAgICAgYXNzZXJ0IGlzc3ViY2xhc3Mod1swXS5jYXRlZ29yeSwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIGFzc2VydCBpc3N1YmNsYXNzKHdbMF0uY2F0ZWdvcnksIERlcHJlY2F0aW9uV2FybmluZykKICAgICAgICAgICAgIHJldHVybiBjb2RlX29iamVjdAogCiBjbGFzcyBQeUxvYWRlclRlc3RzKHRlc3RpbmdfYWJjLkxvYWRlclRlc3RzKToKQEAgLTY1Niw3ICs2NTgsOCBAQAogICAgICAgICBpZiBieXRlY29kZV93cml0dGVuOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihzZWxmLmNhY2hlZCwgc2VsZi5sb2FkZXIud3JpdHRlbikKICAgICAgICAgICAgIGRhdGEgPSBieXRlYXJyYXkoaW1wLmdldF9tYWdpYygpKQotICAgICAgICAgICAgZGF0YS5leHRlbmQobWFyc2hhbC5fd19sb25nKHNlbGYubG9hZGVyLnNvdXJjZV9tdGltZSkpCisgICAgICAgICAgICBkYXRhLmV4dGVuZChpbXBvcnRsaWIuX3dfbG9uZyhzZWxmLmxvYWRlci5zb3VyY2VfbXRpbWUpKQorICAgICAgICAgICAgZGF0YS5leHRlbmQoaW1wb3J0bGliLl93X2xvbmcoc2VsZi5sb2FkZXIuc291cmNlX3NpemUpKQogICAgICAgICAgICAgZGF0YS5leHRlbmQobWFyc2hhbC5kdW1wcyhjb2RlX29iamVjdCkpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubG9hZGVyLndyaXR0ZW5bc2VsZi5jYWNoZWRdLCBieXRlcyhkYXRhKSkKIApAQCAtODQ3LDcgKzg1MCw3IEBACiAgICAgICAgICMgUmVxdWlyZWQgYWJzdHJhY3RtZXRob2RzLgogICAgICAgICBzZWxmLnJhaXNlc19Ob3RJbXBsZW1lbnRlZEVycm9yKGlucywgJ2dldF9maWxlbmFtZScsICdnZXRfZGF0YScpCiAgICAgICAgICMgT3B0aW9uYWwgYWJzdHJhY3RtZXRob2RzLgotICAgICAgICBzZWxmLnJhaXNlc19Ob3RJbXBsZW1lbnRlZEVycm9yKGlucywncGF0aF9tdGltZScsICdzZXRfZGF0YScpCisgICAgICAgIHNlbGYucmFpc2VzX05vdEltcGxlbWVudGVkRXJyb3IoaW5zLCdwYXRoX3N0YXRzJywgJ3NldF9kYXRhJykKIAogICAgIGRlZiB0ZXN0X1B5TG9hZGVyKHNlbGYpOgogICAgICAgICBzZWxmLnJhaXNlc19Ob3RJbXBsZW1lbnRlZEVycm9yKHNlbGYuUHlMb2FkZXIoKSwgJ3NvdXJjZV9wYXRoJywKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9jYXNlX3NlbnNpdGl2aXR5LnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKaW5kZXggNzM3NzdkZS4uNTY5ZjUxNiAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKQEAgLTM3LDYgKzM3LDkgQEAKICAgICBkZWYgdGVzdF9zZW5zaXRpdmUoc2VsZik6CiAgICAgICAgIHdpdGggdGVzdF9zdXBwb3J0LkVudmlyb25tZW50VmFyR3VhcmQoKSBhcyBlbnY6CiAgICAgICAgICAgICBlbnYudW5zZXQoJ1BZVEhPTkNBU0VPSycpCisgICAgICAgICAgICBpZiBiJ1BZVEhPTkNBU0VPSycgaW4gX2Jvb3RzdHJhcC5fb3MuZW52aXJvbjoKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCdvcy5lbnZpcm9uIGNoYW5nZXMgbm90IHJlZmxlY3RlZCBpbiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX29zLmVudmlyb24nKQogICAgICAgICAgICAgc2Vuc2l0aXZlLCBpbnNlbnNpdGl2ZSA9IHNlbGYuc2Vuc2l0aXZpdHlfdGVzdCgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFzYXR0cihzZW5zaXRpdmUsICdsb2FkX21vZHVsZScpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihzZWxmLm5hbWUsIHNlbnNpdGl2ZS5nZXRfZmlsZW5hbWUoc2VsZi5uYW1lKSkKQEAgLTQ1LDYgKzQ4LDkgQEAKICAgICBkZWYgdGVzdF9pbnNlbnNpdGl2ZShzZWxmKToKICAgICAgICAgd2l0aCB0ZXN0X3N1cHBvcnQuRW52aXJvbm1lbnRWYXJHdWFyZCgpIGFzIGVudjoKICAgICAgICAgICAgIGVudi5zZXQoJ1BZVEhPTkNBU0VPSycsICcxJykKKyAgICAgICAgICAgIGlmIGInUFlUSE9OQ0FTRU9LJyBub3QgaW4gX2Jvb3RzdHJhcC5fb3MuZW52aXJvbjoKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCdvcy5lbnZpcm9uIGNoYW5nZXMgbm90IHJlZmxlY3RlZCBpbiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX29zLmVudmlyb24nKQogICAgICAgICAgICAgc2Vuc2l0aXZlLCBpbnNlbnNpdGl2ZSA9IHNlbGYuc2Vuc2l0aXZpdHlfdGVzdCgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFzYXR0cihzZW5zaXRpdmUsICdsb2FkX21vZHVsZScpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihzZWxmLm5hbWUsIHNlbnNpdGl2ZS5nZXRfZmlsZW5hbWUoc2VsZi5uYW1lKSkKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9maWxlX2xvYWRlci5weSBiL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9maWxlX2xvYWRlci5weQppbmRleCBjN2E3ZDhmLi4yMWU3MThmIDEwMDY0NAotLS0gYS9MaWIvaW1wb3J0bGliL3Rlc3Qvc291cmNlL3Rlc3RfZmlsZV9sb2FkZXIucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2ZpbGVfbG9hZGVyLnB5CkBAIC03MSwxMSArNzEsNiBAQAogICAgICAgICAgICAgbW9kdWxlX2RpY3RfaWQgPSBpZChtb2R1bGUuX19kaWN0X18pCiAgICAgICAgICAgICB3aXRoIG9wZW4obWFwcGluZ1snX3RlbXAnXSwgJ3cnKSBhcyBmaWxlOgogICAgICAgICAgICAgICAgIGZpbGUud3JpdGUoInRlc3RpbmdfdmFyID0gNDJcbiIpCi0gICAgICAgICAgICAjIEZvciBmaWxlc3lzdGVtcyB3aGVyZSB0aGUgbXRpbWUgaXMgb25seSB0byBhIHNlY29uZCBncmFudWxhcml0eSwKLSAgICAgICAgICAgICMgZXZlcnl0aGluZyB0aGF0IGhhcyBoYXBwZW5lZCBhYm92ZSBjYW4gYmUgdG9vIGZhc3Q7Ci0gICAgICAgICAgICAjIGZvcmNlIGFuIG10aW1lIG9uIHRoZSBzb3VyY2UgdGhhdCBpcyBndWFyYW50ZWVkIHRvIGJlIGRpZmZlcmVudAotICAgICAgICAgICAgIyB0aGFuIHRoZSBvcmlnaW5hbCBtdGltZS4KLSAgICAgICAgICAgIGxvYWRlci5wYXRoX210aW1lID0gc2VsZi5mYWtlX210aW1lKGxvYWRlci5wYXRoX210aW1lKQogICAgICAgICAgICAgbW9kdWxlID0gbG9hZGVyLmxvYWRfbW9kdWxlKCdfdGVtcCcpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoJ3Rlc3RpbmdfdmFyJyBpbiBtb2R1bGUuX19kaWN0X18sCiAgICAgICAgICAgICAgICAgICAgICAgICAgIid0ZXN0aW5nX3Zhcicgbm90IGluICIKQEAgLTIxNSwxMCArMjEwLDE3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxfc291cmNlPWRlbF9zb3VyY2UpCiAgICAgICAgICAgICB0ZXN0KCdfdGVtcCcsIG1hcHBpbmcsIGJjX3BhdGgpCiAKKyAgICBkZWYgX3Rlc3RfcGFydGlhbF9zaXplKHNlbGYsIHRlc3QsICosIGRlbF9zb3VyY2U9RmFsc2UpOgorICAgICAgICB3aXRoIHNvdXJjZV91dGlsLmNyZWF0ZV9tb2R1bGVzKCdfdGVtcCcpIGFzIG1hcHBpbmc6CisgICAgICAgICAgICBiY19wYXRoID0gc2VsZi5tYW5pcHVsYXRlX2J5dGVjb2RlKCdfdGVtcCcsIG1hcHBpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgYmM6IGJjWzoxMV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxfc291cmNlPWRlbF9zb3VyY2UpCisgICAgICAgICAgICB0ZXN0KCdfdGVtcCcsIG1hcHBpbmcsIGJjX3BhdGgpCisKICAgICBkZWYgX3Rlc3Rfbm9fbWFyc2hhbChzZWxmLCAqLCBkZWxfc291cmNlPUZhbHNlKToKICAgICAgICAgd2l0aCBzb3VyY2VfdXRpbC5jcmVhdGVfbW9kdWxlcygnX3RlbXAnKSBhcyBtYXBwaW5nOgogICAgICAgICAgICAgYmNfcGF0aCA9IHNlbGYubWFuaXB1bGF0ZV9ieXRlY29kZSgnX3RlbXAnLCBtYXBwaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIGJjOiBiY1s6OF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgYmM6IGJjWzoxMl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxfc291cmNlPWRlbF9zb3VyY2UpCiAgICAgICAgICAgICBmaWxlX3BhdGggPSBtYXBwaW5nWydfdGVtcCddIGlmIG5vdCBkZWxfc291cmNlIGVsc2UgYmNfcGF0aAogICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhFT0ZFcnJvcik6CkBAIC0yMjcsNyArMjI5LDcgQEAKICAgICBkZWYgX3Rlc3Rfbm9uX2NvZGVfbWFyc2hhbChzZWxmLCAqLCBkZWxfc291cmNlPUZhbHNlKToKICAgICAgICAgd2l0aCBzb3VyY2VfdXRpbC5jcmVhdGVfbW9kdWxlcygnX3RlbXAnKSBhcyBtYXBwaW5nOgogICAgICAgICAgICAgYnl0ZWNvZGVfcGF0aCA9IHNlbGYubWFuaXB1bGF0ZV9ieXRlY29kZSgnX3RlbXAnLCBtYXBwaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIGJjOiBiY1s6OF0gKyBtYXJzaGFsLmR1bXBzKGInYWJjZCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIGJjOiBiY1s6MTJdICsgbWFyc2hhbC5kdW1wcyhiJ2FiY2QnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbF9zb3VyY2U9ZGVsX3NvdXJjZSkKICAgICAgICAgICAgIGZpbGVfcGF0aCA9IG1hcHBpbmdbJ190ZW1wJ10gaWYgbm90IGRlbF9zb3VyY2UgZWxzZSBieXRlY29kZV9wYXRoCiAgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEltcG9ydEVycm9yKToKQEAgLTIzNiw3ICsyMzgsNyBAQAogICAgIGRlZiBfdGVzdF9iYWRfbWFyc2hhbChzZWxmLCAqLCBkZWxfc291cmNlPUZhbHNlKToKICAgICAgICAgd2l0aCBzb3VyY2VfdXRpbC5jcmVhdGVfbW9kdWxlcygnX3RlbXAnKSBhcyBtYXBwaW5nOgogICAgICAgICAgICAgYnl0ZWNvZGVfcGF0aCA9IHNlbGYubWFuaXB1bGF0ZV9ieXRlY29kZSgnX3RlbXAnLCBtYXBwaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIGJjOiBiY1s6OF0gKyBiJzx0ZXN0PicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgYmM6IGJjWzoxMl0gKyBiJzx0ZXN0PicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxfc291cmNlPWRlbF9zb3VyY2UpCiAgICAgICAgICAgICBmaWxlX3BhdGggPSBtYXBwaW5nWydfdGVtcCddIGlmIG5vdCBkZWxfc291cmNlIGVsc2UgYnl0ZWNvZGVfcGF0aAogICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhFT0ZFcnJvcik6CkBAIC0yNjAsNyArMjYyLDcgQEAKICAgICAgICAgZGVmIHRlc3QobmFtZSwgbWFwcGluZywgYnl0ZWNvZGVfcGF0aCk6CiAgICAgICAgICAgICBzZWxmLmltcG9ydF8obWFwcGluZ1tuYW1lXSwgbmFtZSkKICAgICAgICAgICAgIHdpdGggb3BlbihieXRlY29kZV9wYXRoLCAncmInKSBhcyBmaWxlOgotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsZW4oZmlsZS5yZWFkKCkpLCA4KQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsZW4oZmlsZS5yZWFkKCkpLCAxMikKIAogICAgICAgICBzZWxmLl90ZXN0X2VtcHR5X2ZpbGUodGVzdCkKIApAQCAtMjY4LDcgKzI3MCw3IEBACiAgICAgICAgIGRlZiB0ZXN0KG5hbWUsIG1hcHBpbmcsIGJ5dGVjb2RlX3BhdGgpOgogICAgICAgICAgICAgc2VsZi5pbXBvcnRfKG1hcHBpbmdbbmFtZV0sIG5hbWUpCiAgICAgICAgICAgICB3aXRoIG9wZW4oYnl0ZWNvZGVfcGF0aCwgJ3JiJykgYXMgZmlsZToKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKGZpbGUucmVhZCgpKSwgOCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKGZpbGUucmVhZCgpKSwgMTIpCiAKICAgICAgICAgc2VsZi5fdGVzdF9wYXJ0aWFsX21hZ2ljKHRlc3QpCiAKQEAgLTI3OSw3ICsyODEsNyBAQAogICAgICAgICBkZWYgdGVzdChuYW1lLCBtYXBwaW5nLCBieXRlY29kZV9wYXRoKToKICAgICAgICAgICAgIHNlbGYuaW1wb3J0XyhtYXBwaW5nW25hbWVdLCBuYW1lKQogICAgICAgICAgICAgd2l0aCBvcGVuKGJ5dGVjb2RlX3BhdGgsICdyYicpIGFzIGZpbGU6Ci0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxlbihmaWxlLnJlYWQoKSksIDgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxlbihmaWxlLnJlYWQoKSksIDEyKQogCiAgICAgICAgIHNlbGYuX3Rlc3RfbWFnaWNfb25seSh0ZXN0KQogCkBAIC0zMDEsMTEgKzMwMywyMiBAQAogICAgICAgICBkZWYgdGVzdChuYW1lLCBtYXBwaW5nLCBiY19wYXRoKToKICAgICAgICAgICAgIHNlbGYuaW1wb3J0XyhtYXBwaW5nW25hbWVdLCBuYW1lKQogICAgICAgICAgICAgd2l0aCBvcGVuKGJjX3BhdGgsICdyYicpIGFzIGZpbGU6Ci0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxlbihmaWxlLnJlYWQoKSksIDgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxlbihmaWxlLnJlYWQoKSksIDEyKQogCiAgICAgICAgIHNlbGYuX3Rlc3RfcGFydGlhbF90aW1lc3RhbXAodGVzdCkKIAogICAgIEBzb3VyY2VfdXRpbC53cml0ZXNfYnl0ZWNvZGVfZmlsZXMKKyAgICBkZWYgdGVzdF9wYXJ0aWFsX3NpemUoc2VsZik6CisgICAgICAgICMgV2hlbiB0aGUgc2l6ZSBpcyBwYXJ0aWFsLCByZWdlbmVyYXRlIHRoZSAucHljLCBlbHNlCisgICAgICAgICMgcmFpc2UgRU9GRXJyb3IuCisgICAgICAgIGRlZiB0ZXN0KG5hbWUsIG1hcHBpbmcsIGJjX3BhdGgpOgorICAgICAgICAgICAgc2VsZi5pbXBvcnRfKG1hcHBpbmdbbmFtZV0sIG5hbWUpCisgICAgICAgICAgICB3aXRoIG9wZW4oYmNfcGF0aCwgJ3JiJykgYXMgZmlsZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKGZpbGUucmVhZCgpKSwgMTIpCisKKyAgICAgICAgc2VsZi5fdGVzdF9wYXJ0aWFsX3NpemUodGVzdCkKKworICAgIEBzb3VyY2VfdXRpbC53cml0ZXNfYnl0ZWNvZGVfZmlsZXMKICAgICBkZWYgdGVzdF9ub19tYXJzaGFsKHNlbGYpOgogICAgICAgICAjIFdoZW4gdGhlcmUgaXMgb25seSB0aGUgbWFnaWMgbnVtYmVyIGFuZCB0aW1lc3RhbXAsIHJhaXNlIEVPRkVycm9yLgogICAgICAgICBzZWxmLl90ZXN0X25vX21hcnNoYWwoKQpAQCAtNDAwLDYgKzQxMywxMyBAQAogCiAgICAgICAgIHNlbGYuX3Rlc3RfcGFydGlhbF90aW1lc3RhbXAodGVzdCwgZGVsX3NvdXJjZT1UcnVlKQogCisgICAgZGVmIHRlc3RfcGFydGlhbF9zaXplKHNlbGYpOgorICAgICAgICBkZWYgdGVzdChuYW1lLCBtYXBwaW5nLCBieXRlY29kZV9wYXRoKToKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoRU9GRXJyb3IpOgorICAgICAgICAgICAgICAgIHNlbGYuaW1wb3J0XyhieXRlY29kZV9wYXRoLCBuYW1lKQorCisgICAgICAgIHNlbGYuX3Rlc3RfcGFydGlhbF9zaXplKHRlc3QsIGRlbF9zb3VyY2U9VHJ1ZSkKKwogICAgIGRlZiB0ZXN0X25vX21hcnNoYWwoc2VsZik6CiAgICAgICAgIHNlbGYuX3Rlc3Rfbm9fbWFyc2hhbChkZWxfc291cmNlPVRydWUpCiAKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9maW5kZXIucHkgYi9MaWIvaW1wb3J0bGliL3Rlc3Qvc291cmNlL3Rlc3RfZmluZGVyLnB5CmluZGV4IDdiOTA4OGQuLjY4ZTlhZTcgMTAwNjQ0Ci0tLSBhL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9maW5kZXIucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2ZpbmRlci5weQpAQCAtMTQzLDYgKzE0MywxMyBAQAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgb3MudW5saW5rKCdtb2QucHknKQogCisgICAgZGVmIHRlc3RfaW52YWxpZGF0ZV9jYWNoZXMoc2VsZik6CisgICAgICAgICMgaW52YWxpZGF0ZV9jYWNoZXMoKSBzaG91bGQgcmVzZXQgdGhlIG10aW1lLgorICAgICAgICBmaW5kZXIgPSBfYm9vdHN0cmFwLl9GaWxlRmluZGVyKCcnLCBfYm9vdHN0cmFwLl9Tb3VyY2VGaW5kZXJEZXRhaWxzKCkpCisgICAgICAgIGZpbmRlci5fcGF0aF9tdGltZSA9IDQyCisgICAgICAgIGZpbmRlci5pbnZhbGlkYXRlX2NhY2hlcygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmluZGVyLl9wYXRoX210aW1lLCAtMSkKKwogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdApkaWZmIC0tZ2l0IGEvTGliL2ltcG9ydGxpYi90ZXN0L3Rlc3RfYXBpLnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L3Rlc3RfYXBpLnB5CmluZGV4IGExNTE2MjYuLmNjMTQ3YzIgMTAwNjQ0Ci0tLSBhL0xpYi9pbXBvcnRsaWIvdGVzdC90ZXN0X2FwaS5weQorKysgYi9MaWIvaW1wb3J0bGliL3Rlc3QvdGVzdF9hcGkucHkKQEAgLTg0LDYgKzg0LDM0IEBACiAgICAgICAgICAgICAgICAgaW1wb3J0bGliLmltcG9ydF9tb2R1bGUoJ2EuYicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYl9sb2FkX2NvdW50LCAxKQogCisKK2NsYXNzIEludmFsaWRhdGVDYWNoZVRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X21ldGhvZF9jYWxsZWQoc2VsZik6CisgICAgICAgICMgSWYgZGVmaW5lZCB0aGUgbWV0aG9kIHNob3VsZCBiZSBjYWxsZWQuCisgICAgICAgIGNsYXNzIEludmFsaWRhdGluZ051bGxGaW5kZXI6CisgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgKmlnbm9yZWQpOgorICAgICAgICAgICAgICAgIHNlbGYuY2FsbGVkID0gRmFsc2UKKyAgICAgICAgICAgIGRlZiBmaW5kX21vZHVsZShzZWxmLCAqYXJncyk6CisgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgICAgIGRlZiBpbnZhbGlkYXRlX2NhY2hlcyhzZWxmKToKKyAgICAgICAgICAgICAgICBzZWxmLmNhbGxlZCA9IFRydWUKKworICAgICAgICBrZXkgPSAnZ29ibGVkZWVnb29rJworICAgICAgICBpbnMgPSBJbnZhbGlkYXRpbmdOdWxsRmluZGVyKCkKKyAgICAgICAgc3lzLnBhdGhfaW1wb3J0ZXJfY2FjaGVba2V5XSA9IGlucworICAgICAgICBzZWxmLmFkZENsZWFudXAobGFtYmRhOiBzeXMucGF0aF9pbXBvcnRlcl9jYWNoZS5fX2RlbGl0ZW1fXyhrZXkpKQorICAgICAgICBpbXBvcnRsaWIuaW52YWxpZGF0ZV9jYWNoZXMoKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW5zLmNhbGxlZCkKKworICAgIGRlZiB0ZXN0X21ldGhvZF9sYWNraW5nKHNlbGYpOgorICAgICAgICAjIFRoZXJlIHNob3VsZCBiZSBubyBpc3N1ZXMgaWYgdGhlIG1ldGhvZCBpcyBub3QgZGVmaW5lZC4KKyAgICAgICAga2V5ID0gJ2dvYmJsZWRlZWdvb2snCisgICAgICAgIHN5cy5wYXRoX2ltcG9ydGVyX2NhY2hlW2tleV0gPSBpbXAuTnVsbEltcG9ydGVyKCdhYmMnKQorICAgICAgICBzZWxmLmFkZENsZWFudXAobGFtYmRhOiBzeXMucGF0aF9pbXBvcnRlcl9jYWNoZS5fX2RlbGl0ZW1fXyhrZXkpKQorICAgICAgICBpbXBvcnRsaWIuaW52YWxpZGF0ZV9jYWNoZXMoKSAgIyBTaG91bGRuJ3QgdHJpZ2dlciBhbiBleGNlcHRpb24uCisKKwogZGVmIHRlc3RfbWFpbigpOgogICAgIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QKICAgICBydW5fdW5pdHRlc3QoSW1wb3J0TW9kdWxlVGVzdHMpCmRpZmYgLS1naXQgYS9MaWIvaW1wb3J0bGliL3Rlc3QvdGVzdF91dGlsLnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L3Rlc3RfdXRpbC5weQppbmRleCA2MDI0NDdmLi5jN2NkYWQxIDEwMDY0NAotLS0gYS9MaWIvaW1wb3J0bGliL3Rlc3QvdGVzdF91dGlsLnB5CisrKyBiL0xpYi9pbXBvcnRsaWIvdGVzdC90ZXN0X3V0aWwucHkKQEAgLTU5LDYgKzU5LDExIEBACiAgICAgICAgICAgICBzZWxmLnJhaXNlX2V4Y2VwdGlvbihuYW1lKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhtb2R1bGUsIHN5cy5tb2R1bGVzW25hbWVdKQogCisgICAgZGVmIHRlc3RfZGVjb3JhdG9yX2F0dHJzKHNlbGYpOgorICAgICAgICBkZWYgZnhuKHNlbGYsIG1vZHVsZSk6IHBhc3MKKyAgICAgICAgd3JhcHBlZCA9IHV0aWwubW9kdWxlX2Zvcl9sb2FkZXIoZnhuKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZWQuX19uYW1lX18sIGZ4bi5fX25hbWVfXykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVkLl9fcXVhbG5hbWVfXywgZnhuLl9fcXVhbG5hbWVfXykKIAogY2xhc3MgU2V0UGFja2FnZVRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtMTA4LDYgKzExMywxMSBAQAogICAgICAgICAgICAgbW9kdWxlLl9fcGFja2FnZV9fID0gdmFsdWUKICAgICAgICAgICAgIHNlbGYudmVyaWZ5KG1vZHVsZSwgdmFsdWUpCiAKKyAgICBkZWYgdGVzdF9kZWNvcmF0b3JfYXR0cnMoc2VsZik6CisgICAgICAgIGRlZiBmeG4obW9kdWxlKTogcGFzcworICAgICAgICB3cmFwcGVkID0gdXRpbC5zZXRfcGFja2FnZShmeG4pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlZC5fX25hbWVfXywgZnhuLl9fbmFtZV9fKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZWQuX19xdWFsbmFtZV9fLCBmeG4uX19xdWFsbmFtZV9fKQogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CmRpZmYgLS1naXQgYS9MaWIvaW5zcGVjdC5weSBiL0xpYi9pbnNwZWN0LnB5CmluZGV4IDIwMzE3NTUuLmZjOWY2MTIgMTAwNjQ0Ci0tLSBhL0xpYi9pbnNwZWN0LnB5CisrKyBiL0xpYi9pbnNwZWN0LnB5CkBAIC0zMyw3ICszMyw2IEBACiBpbXBvcnQgb3MKIGltcG9ydCB0eXBlcwogaW1wb3J0IGl0ZXJ0b29scwotaW1wb3J0IHN0cmluZwogaW1wb3J0IHJlCiBpbXBvcnQgaW1wCiBpbXBvcnQgdG9rZW5pemUKQEAgLTkzMSw2ICs5MzAsNDMgQEAKICAgICAgICAgc3BlY3MuYXBwZW5kKGZvcm1hdHZhcmt3KHZhcmt3KSArIGZvcm1hdHZhbHVlKGxvY2Fsc1t2YXJrd10pKQogICAgIHJldHVybiAnKCcgKyAnLCAnLmpvaW4oc3BlY3MpICsgJyknCiAKK2RlZiBfbWlzc2luZ19hcmd1bWVudHMoZl9uYW1lLCBhcmduYW1lcywgcG9zLCB2YWx1ZXMpOgorICAgIG5hbWVzID0gW3JlcHIobmFtZSkgZm9yIG5hbWUgaW4gYXJnbmFtZXMgaWYgbmFtZSBub3QgaW4gdmFsdWVzXQorICAgIG1pc3NpbmcgPSBsZW4obmFtZXMpCisgICAgaWYgbWlzc2luZyA9PSAxOgorICAgICAgICBzID0gbmFtZXNbMF0KKyAgICBlbGlmIG1pc3NpbmcgPT0gMjoKKyAgICAgICAgcyA9ICJ7fSBhbmQge30iLmZvcm1hdCgqbmFtZXMpCisgICAgZWxzZToKKyAgICAgICAgdGFpbCA9ICIsIHt9IGFuZCB7fSIuZm9ybWF0KG5hbWVzWy0yOl0pCisgICAgICAgIGRlbCBuYW1lc1stMjpdCisgICAgICAgIHMgPSAiLCAiLmpvaW4obmFtZXMpICsgdGFpbAorICAgIHJhaXNlIFR5cGVFcnJvcigiJXMoKSBtaXNzaW5nICVpIHJlcXVpcmVkICVzIGFyZ3VtZW50JXM6ICVzIiAlCisgICAgICAgICAgICAgICAgICAgIChmX25hbWUsIG1pc3NpbmcsCisgICAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uYWwiIGlmIHBvcyBlbHNlICJrZXl3b3JkLW9ubHkiLAorICAgICAgICAgICAgICAgICAgICAgICIiIGlmIG1pc3NpbmcgPT0gMSBlbHNlICJzIiwgcykpCisKK2RlZiBfdG9vX21hbnkoZl9uYW1lLCBhcmdzLCBrd29ubHksIHZhcmFyZ3MsIGRlZmNvdW50LCBnaXZlbiwgdmFsdWVzKToKKyAgICBhdGxlYXN0ID0gbGVuKGFyZ3MpIC0gZGVmY291bnQKKyAgICBrd29ubHlfZ2l2ZW4gPSBsZW4oW2FyZyBmb3IgYXJnIGluIGt3b25seSBpZiBhcmcgaW4gdmFsdWVzXSkKKyAgICBpZiB2YXJhcmdzOgorICAgICAgICBwbHVyYWwgPSBhdGxlYXN0ICE9IDEKKyAgICAgICAgc2lnID0gImF0IGxlYXN0ICVkIiAlIChhdGxlYXN0LCkKKyAgICBlbGlmIGRlZmNvdW50OgorICAgICAgICBwbHVyYWwgPSBUcnVlCisgICAgICAgIHNpZyA9ICJmcm9tICVkIHRvICVkIiAlIChhdGxlYXN0LCBsZW4oYXJncykpCisgICAgZWxzZToKKyAgICAgICAgcGx1cmFsID0gbGVuKGFyZ3MpICE9IDEKKyAgICAgICAgc2lnID0gc3RyKGxlbihhcmdzKSkKKyAgICBrd29ubHlfc2lnID0gIiIKKyAgICBpZiBrd29ubHlfZ2l2ZW46CisgICAgICAgIG1zZyA9ICIgcG9zaXRpb25hbCBhcmd1bWVudCVzIChhbmQgJWQga2V5d29yZC1vbmx5IGFyZ3VtZW50JXMpIgorICAgICAgICBrd29ubHlfc2lnID0gKG1zZyAlICgicyIgaWYgZ2l2ZW4gIT0gMSBlbHNlICIiLCBrd29ubHlfZ2l2ZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIiBpZiBrd29ubHlfZ2l2ZW4gIT0gMSBlbHNlICIiKSkKKyAgICByYWlzZSBUeXBlRXJyb3IoIiVzKCkgdGFrZXMgJXMgcG9zaXRpb25hbCBhcmd1bWVudCVzIGJ1dCAlZCVzICVzIGdpdmVuIiAlCisgICAgICAgICAgICAoZl9uYW1lLCBzaWcsICJzIiBpZiBwbHVyYWwgZWxzZSAiIiwgZ2l2ZW4sIGt3b25seV9zaWcsCisgICAgICAgICAgICAgIndhcyIgaWYgZ2l2ZW4gPT0gMSBhbmQgbm90IGt3b25seV9naXZlbiBlbHNlICJ3ZXJlIikpCisKIGRlZiBnZXRjYWxsYXJncyhmdW5jLCAqcG9zaXRpb25hbCwgKipuYW1lZCk6CiAgICAgIiIiR2V0IHRoZSBtYXBwaW5nIG9mIGFyZ3VtZW50cyB0byB2YWx1ZXMuCiAKQEAgLTk0Miw2NCArOTc4LDUzIEBACiAgICAgZl9uYW1lID0gZnVuYy5fX25hbWVfXwogICAgIGFyZzJ2YWx1ZSA9IHt9CiAKKwogICAgIGlmIGlzbWV0aG9kKGZ1bmMpIGFuZCBmdW5jLl9fc2VsZl9fIGlzIG5vdCBOb25lOgogICAgICAgICAjIGltcGxpY2l0ICdzZWxmJyAob3IgJ2NscycgZm9yIGNsYXNzbWV0aG9kcykgYXJndW1lbnQKICAgICAgICAgcG9zaXRpb25hbCA9IChmdW5jLl9fc2VsZl9fLCkgKyBwb3NpdGlvbmFsCiAgICAgbnVtX3BvcyA9IGxlbihwb3NpdGlvbmFsKQotICAgIG51bV90b3RhbCA9IG51bV9wb3MgKyBsZW4obmFtZWQpCiAgICAgbnVtX2FyZ3MgPSBsZW4oYXJncykKICAgICBudW1fZGVmYXVsdHMgPSBsZW4oZGVmYXVsdHMpIGlmIGRlZmF1bHRzIGVsc2UgMAotICAgIGZvciBhcmcsIHZhbHVlIGluIHppcChhcmdzLCBwb3NpdGlvbmFsKToKLSAgICAgICAgYXJnMnZhbHVlW2FyZ10gPSB2YWx1ZQotICAgIGlmIHZhcmFyZ3M6Ci0gICAgICAgIGlmIG51bV9wb3MgPiBudW1fYXJnczoKLSAgICAgICAgICAgIGFyZzJ2YWx1ZVt2YXJhcmdzXSA9IHBvc2l0aW9uYWxbLShudW1fcG9zLW51bV9hcmdzKTpdCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBhcmcydmFsdWVbdmFyYXJnc10gPSAoKQotICAgIGVsaWYgMCA8IG51bV9hcmdzIDwgbnVtX3BvczoKLSAgICAgICAgcmFpc2UgVHlwZUVycm9yKCclcygpIHRha2VzICVzICVkIHBvc2l0aW9uYWwgJXMgKCVkIGdpdmVuKScgJSAoCi0gICAgICAgICAgICBmX25hbWUsICdhdCBtb3N0JyBpZiBkZWZhdWx0cyBlbHNlICdleGFjdGx5JywgbnVtX2FyZ3MsCi0gICAgICAgICAgICAnYXJndW1lbnRzJyBpZiBudW1fYXJncyA+IDEgZWxzZSAnYXJndW1lbnQnLCBudW1fdG90YWwpKQotICAgIGVsaWYgbnVtX2FyZ3MgPT0gMCBhbmQgbnVtX3RvdGFsOgotICAgICAgICBpZiB2YXJrdyBvciBrd29ubHlhcmdzOgotICAgICAgICAgICAgaWYgbnVtX3BvczoKLSAgICAgICAgICAgICAgICAjIFhYWDogV2Ugc2hvdWxkIHVzZSBudW1fcG9zLCBidXQgUHl0aG9uIGFsc28gdXNlcyBudW1fdG90YWw6Ci0gICAgICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCclcygpIHRha2VzIGV4YWN0bHkgMCBwb3NpdGlvbmFsIGFyZ3VtZW50cyAnCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoJWQgZ2l2ZW4pJyAlIChmX25hbWUsIG51bV90b3RhbCkpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoJyVzKCkgdGFrZXMgbm8gYXJndW1lbnRzICglZCBnaXZlbiknICUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZl9uYW1lLCBudW1fdG90YWwpKQogCi0gICAgZm9yIGFyZyBpbiBpdGVydG9vbHMuY2hhaW4oYXJncywga3dvbmx5YXJncyk6Ci0gICAgICAgIGlmIGFyZyBpbiBuYW1lZDoKLSAgICAgICAgICAgIGlmIGFyZyBpbiBhcmcydmFsdWU6Ci0gICAgICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCIlcygpIGdvdCBtdWx0aXBsZSB2YWx1ZXMgZm9yIGtleXdvcmQgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYXJndW1lbnQgJyVzJyIgJSAoZl9uYW1lLCBhcmcpKQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBhcmcydmFsdWVbYXJnXSA9IG5hbWVkLnBvcChhcmcpCi0gICAgZm9yIGt3b25seWFyZyBpbiBrd29ubHlhcmdzOgotICAgICAgICBpZiBrd29ubHlhcmcgbm90IGluIGFyZzJ2YWx1ZToKLSAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICBhcmcydmFsdWVba3dvbmx5YXJnXSA9IGt3b25seWRlZmF1bHRzW2t3b25seWFyZ10KLSAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKLSAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIiVzKCkgbmVlZHMga2V5d29yZC1vbmx5IGFyZ3VtZW50ICVzIiAlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmX25hbWUsIGt3b25seWFyZykpCi0gICAgaWYgZGVmYXVsdHM6ICAgICMgZmlsbCBpbiBhbnkgbWlzc2luZyB2YWx1ZXMgd2l0aCB0aGUgZGVmYXVsdHMKLSAgICAgICAgZm9yIGFyZywgdmFsdWUgaW4gemlwKGFyZ3NbLW51bV9kZWZhdWx0czpdLCBkZWZhdWx0cyk6Ci0gICAgICAgICAgICBpZiBhcmcgbm90IGluIGFyZzJ2YWx1ZToKLSAgICAgICAgICAgICAgICBhcmcydmFsdWVbYXJnXSA9IHZhbHVlCisgICAgbiA9IG1pbihudW1fcG9zLCBudW1fYXJncykKKyAgICBmb3IgaSBpbiByYW5nZShuKToKKyAgICAgICAgYXJnMnZhbHVlW2FyZ3NbaV1dID0gcG9zaXRpb25hbFtpXQorICAgIGlmIHZhcmFyZ3M6CisgICAgICAgIGFyZzJ2YWx1ZVt2YXJhcmdzXSA9IHR1cGxlKHBvc2l0aW9uYWxbbjpdKQorICAgIHBvc3NpYmxlX2t3YXJncyA9IHNldChhcmdzICsga3dvbmx5YXJncykKICAgICBpZiB2YXJrdzoKLSAgICAgICAgYXJnMnZhbHVlW3Zhcmt3XSA9IG5hbWVkCi0gICAgZWxpZiBuYW1lZDoKLSAgICAgICAgdW5leHBlY3RlZCA9IG5leHQoaXRlcihuYW1lZCkpCi0gICAgICAgIHJhaXNlIFR5cGVFcnJvcigiJXMoKSBnb3QgYW4gdW5leHBlY3RlZCBrZXl3b3JkIGFyZ3VtZW50ICclcyciICUKLSAgICAgICAgICAgICAgICAgICAgICAgIChmX25hbWUsIHVuZXhwZWN0ZWQpKQotICAgIHVuYXNzaWduZWQgPSBudW1fYXJncyAtIGxlbihbYXJnIGZvciBhcmcgaW4gYXJncyBpZiBhcmcgaW4gYXJnMnZhbHVlXSkKLSAgICBpZiB1bmFzc2lnbmVkOgotICAgICAgICBudW1fcmVxdWlyZWQgPSBudW1fYXJncyAtIG51bV9kZWZhdWx0cwotICAgICAgICByYWlzZSBUeXBlRXJyb3IoJyVzKCkgdGFrZXMgJXMgJWQgJXMgKCVkIGdpdmVuKScgJSAoCi0gICAgICAgICAgICBmX25hbWUsICdhdCBsZWFzdCcgaWYgZGVmYXVsdHMgZWxzZSAnZXhhY3RseScsIG51bV9yZXF1aXJlZCwKLSAgICAgICAgICAgICdhcmd1bWVudHMnIGlmIG51bV9yZXF1aXJlZCA+IDEgZWxzZSAnYXJndW1lbnQnLCBudW1fdG90YWwpKQorICAgICAgICBhcmcydmFsdWVbdmFya3ddID0ge30KKyAgICBmb3Iga3csIHZhbHVlIGluIG5hbWVkLml0ZW1zKCk6CisgICAgICAgIGlmIGt3IG5vdCBpbiBwb3NzaWJsZV9rd2FyZ3M6CisgICAgICAgICAgICBpZiBub3QgdmFya3c6CisgICAgICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCIlcygpIGdvdCBhbiB1bmV4cGVjdGVkIGtleXdvcmQgYXJndW1lbnQgJXIiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZfbmFtZSwga3cpKQorICAgICAgICAgICAgYXJnMnZhbHVlW3Zhcmt3XVtrd10gPSB2YWx1ZQorICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgaWYga3cgaW4gYXJnMnZhbHVlOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCIlcygpIGdvdCBtdWx0aXBsZSB2YWx1ZXMgZm9yIGFyZ3VtZW50ICVyIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZfbmFtZSwga3cpKQorICAgICAgICBhcmcydmFsdWVba3ddID0gdmFsdWUKKyAgICBpZiBudW1fcG9zID4gbnVtX2FyZ3MgYW5kIG5vdCB2YXJhcmdzOgorICAgICAgICBfdG9vX21hbnkoZl9uYW1lLCBhcmdzLCBrd29ubHlhcmdzLCB2YXJhcmdzLCBudW1fZGVmYXVsdHMsCisgICAgICAgICAgICAgICAgICAgbnVtX3BvcywgYXJnMnZhbHVlKQorICAgIGlmIG51bV9wb3MgPCBudW1fYXJnczoKKyAgICAgICAgcmVxID0gYXJnc1s6bnVtX2FyZ3MgLSBudW1fZGVmYXVsdHNdCisgICAgICAgIGZvciBhcmcgaW4gcmVxOgorICAgICAgICAgICAgaWYgYXJnIG5vdCBpbiBhcmcydmFsdWU6CisgICAgICAgICAgICAgICAgX21pc3NpbmdfYXJndW1lbnRzKGZfbmFtZSwgcmVxLCBUcnVlLCBhcmcydmFsdWUpCisgICAgICAgIGZvciBpLCBhcmcgaW4gZW51bWVyYXRlKGFyZ3NbbnVtX2FyZ3MgLSBudW1fZGVmYXVsdHM6XSk6CisgICAgICAgICAgICBpZiBhcmcgbm90IGluIGFyZzJ2YWx1ZToKKyAgICAgICAgICAgICAgICBhcmcydmFsdWVbYXJnXSA9IGRlZmF1bHRzW2ldCisgICAgbWlzc2luZyA9IDAKKyAgICBmb3Iga3dhcmcgaW4ga3dvbmx5YXJnczoKKyAgICAgICAgaWYga3dhcmcgbm90IGluIGFyZzJ2YWx1ZToKKyAgICAgICAgICAgIGlmIGt3YXJnIGluIGt3b25seWRlZmF1bHRzOgorICAgICAgICAgICAgICAgIGFyZzJ2YWx1ZVtrd2FyZ10gPSBrd29ubHlkZWZhdWx0c1trd2FyZ10KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbWlzc2luZyArPSAxCisgICAgaWYgbWlzc2luZzoKKyAgICAgICAgX21pc3NpbmdfYXJndW1lbnRzKGZfbmFtZSwga3dvbmx5YXJncywgRmFsc2UsIGFyZzJ2YWx1ZSkKICAgICByZXR1cm4gYXJnMnZhbHVlCiAKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gc3RhY2sgZnJhbWUgZXh0cmFjdGlvbgpkaWZmIC0tZ2l0IGEvTGliL2pzb24vZGVjb2Rlci5weSBiL0xpYi9qc29uL2RlY29kZXIucHkKaW5kZXggMzE3NGUzMS4uZTdjMDUzOSAxMDA2NDQKLS0tIGEvTGliL2pzb24vZGVjb2Rlci5weQorKysgYi9MaWIvanNvbi9kZWNvZGVyLnB5CkBAIC0xMjEsOCArMTIxLDcgQEAKICAgICAgICAgICAgICAgICBtc2cgPSAiSW52YWxpZCBcXHVYWFhYIGVzY2FwZSIKICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKGVycm1zZyhtc2csIHMsIGVuZCkpCiAgICAgICAgICAgICB1bmkgPSBpbnQoZXNjLCAxNikKLSAgICAgICAgICAgICMgQ2hlY2sgZm9yIHN1cnJvZ2F0ZSBwYWlyIG9uIFVDUy00IHN5c3RlbXMKLSAgICAgICAgICAgIGlmIDB4ZDgwMCA8PSB1bmkgPD0gMHhkYmZmIGFuZCBzeXMubWF4dW5pY29kZSA+IDY1NTM1OgorICAgICAgICAgICAgaWYgMHhkODAwIDw9IHVuaSA8PSAweGRiZmY6CiAgICAgICAgICAgICAgICAgbXNnID0gIkludmFsaWQgXFx1WFhYWFxcdVhYWFggc3Vycm9nYXRlIHBhaXIiCiAgICAgICAgICAgICAgICAgaWYgbm90IHNbZW5kICsgNTplbmQgKyA3XSA9PSAnXFx1JzoKICAgICAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcihlcnJtc2cobXNnLCBzLCBlbmQpKQpkaWZmIC0tZ2l0IGEvTGliL2xpYjJ0bzMvX19tYWluX18ucHkgYi9MaWIvbGliMnRvMy9fX21haW5fXy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MDY4OGJhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL2xpYjJ0bzMvX19tYWluX18ucHkKQEAgLTAsMCArMSw0IEBACitpbXBvcnQgc3lzCitmcm9tIC5tYWluIGltcG9ydCBtYWluCisKK3N5cy5leGl0KG1haW4oImxpYjJ0bzMuZml4ZXMiKSkKZGlmZiAtLWdpdCBhL0xpYi9saWIydG8zL2ZpeGVyX2Jhc2UucHkgYi9MaWIvbGliMnRvMy9maXhlcl9iYXNlLnB5CmluZGV4IGFmYzA0NjcuLmIxNzYwNTYgMTAwNjQ0Ci0tLSBhL0xpYi9saWIydG8zL2ZpeGVyX2Jhc2UucHkKKysrIGIvTGliL2xpYjJ0bzMvZml4ZXJfYmFzZS5weQpAQCAtMjcsNyArMjcsNiBAQAogICAgIHBhdHRlcm5fdHJlZSA9IE5vbmUgIyBUcmVlIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBwYXR0ZXJuCiAgICAgb3B0aW9ucyA9IE5vbmUgICMgT3B0aW9ucyBvYmplY3QgcGFzc2VkIHRvIGluaXRpYWxpemVyCiAgICAgZmlsZW5hbWUgPSBOb25lICMgVGhlIGZpbGVuYW1lIChzZXQgYnkgc2V0X2ZpbGVuYW1lKQotICAgIGxvZ2dlciA9IE5vbmUgICAjIEEgbG9nZ2VyIChzZXQgYnkgc2V0X2ZpbGVuYW1lKQogICAgIG51bWJlcnMgPSBpdGVydG9vbHMuY291bnQoMSkgIyBGb3IgbmV3X25hbWUoKQogICAgIHVzZWRfbmFtZXMgPSBzZXQoKSAjIEEgc2V0IG9mIGFsbCB1c2VkIE5BTUVzCiAgICAgb3JkZXIgPSAicG9zdCIgIyBEb2VzIHRoZSBmaXhlciBwcmVmZXIgcHJlLSBvciBwb3N0LW9yZGVyIHRyYXZlcnNhbApAQCAtNzAsMTIgKzY5LDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhfdHJlZT1UcnVlKQogCiAgICAgZGVmIHNldF9maWxlbmFtZShzZWxmLCBmaWxlbmFtZSk6Ci0gICAgICAgICIiIlNldCB0aGUgZmlsZW5hbWUsIGFuZCBhIGxvZ2dlciBkZXJpdmVkIGZyb20gaXQuCisgICAgICAgICIiIlNldCB0aGUgZmlsZW5hbWUuCiAKICAgICAgICAgVGhlIG1haW4gcmVmYWN0b3JpbmcgdG9vbCBzaG91bGQgY2FsbCB0aGlzLgogICAgICAgICAiIiIKICAgICAgICAgc2VsZi5maWxlbmFtZSA9IGZpbGVuYW1lCi0gICAgICAgIHNlbGYubG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoZmlsZW5hbWUpCiAKICAgICBkZWYgbWF0Y2goc2VsZiwgbm9kZSk6CiAgICAgICAgICIiIlJldHVybnMgbWF0Y2ggZm9yIGEgZ2l2ZW4gcGFyc2UgdHJlZSBub2RlLgpkaWZmIC0tZ2l0IGEvTGliL2xpYjJ0bzMvcmVmYWN0b3IucHkgYi9MaWIvbGliMnRvMy9yZWZhY3Rvci5weQppbmRleCA3Y2QwMzRhLi4xZTg1ODEwIDEwMDY0NAotLS0gYS9MaWIvbGliMnRvMy9yZWZhY3Rvci5weQorKysgYi9MaWIvbGliMnRvMy9yZWZhY3Rvci5weQpAQCAtNTY2LDcgKzU2Niw3IEBACiAgICAgICAgIGJsb2NrX2xpbmVubyA9IE5vbmUKICAgICAgICAgaW5kZW50ID0gTm9uZQogICAgICAgICBsaW5lbm8gPSAwCi0gICAgICAgIGZvciBsaW5lIGluIGlucHV0LnNwbGl0bGluZXMoVHJ1ZSk6CisgICAgICAgIGZvciBsaW5lIGluIGlucHV0LnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSk6CiAgICAgICAgICAgICBsaW5lbm8gKz0gMQogICAgICAgICAgICAgaWYgbGluZS5sc3RyaXAoKS5zdGFydHN3aXRoKHNlbGYuUFMxKToKICAgICAgICAgICAgICAgICBpZiBibG9jayBpcyBub3QgTm9uZToKQEAgLTYxMCw3ICs2MTAsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWUsIGxpbmVubywgZXJyLl9fY2xhc3NfXy5fX25hbWVfXywgZXJyKQogICAgICAgICAgICAgcmV0dXJuIGJsb2NrCiAgICAgICAgIGlmIHNlbGYucmVmYWN0b3JfdHJlZSh0cmVlLCBmaWxlbmFtZSk6Ci0gICAgICAgICAgICBuZXcgPSBzdHIodHJlZSkuc3BsaXRsaW5lcyhUcnVlKQorICAgICAgICAgICAgbmV3ID0gc3RyKHRyZWUpLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKICAgICAgICAgICAgICMgVW5kbyB0aGUgYWRqdXN0bWVudCBvZiB0aGUgbGluZSBudW1iZXJzIGluIHdyYXBfdG9rcygpIGJlbG93LgogICAgICAgICAgICAgY2xpcHBlZCwgbmV3ID0gbmV3WzpsaW5lbm8tMV0sIG5ld1tsaW5lbm8tMTpdCiAgICAgICAgICAgICBhc3NlcnQgY2xpcHBlZCA9PSBbIlxuIl0gKiAobGluZW5vLTEpLCBjbGlwcGVkCmRpZmYgLS1naXQgYS9MaWIvbG9nZ2luZy9fX2luaXRfXy5weSBiL0xpYi9sb2dnaW5nL19faW5pdF9fLnB5CmluZGV4IDQxOTFiMjIuLmU3OTAxOGYgMTAwNjQ0Ci0tLSBhL0xpYi9sb2dnaW5nL19faW5pdF9fLnB5CisrKyBiL0xpYi9sb2dnaW5nL19faW5pdF9fLnB5CkBAIC0zNiwxNSArMzYsOSBAQAogICAgICAgICAgICAnZ2V0TG9nUmVjb3JkRmFjdG9yeScsICdzZXRMb2dSZWNvcmRGYWN0b3J5JywgJ2xhc3RSZXNvcnQnXQogCiB0cnk6Ci0gICAgaW1wb3J0IGNvZGVjcwotZXhjZXB0IEltcG9ydEVycm9yOgotICAgIGNvZGVjcyA9IE5vbmUKLQotdHJ5OgotICAgIGltcG9ydCBfdGhyZWFkIGFzIHRocmVhZAogICAgIGltcG9ydCB0aHJlYWRpbmcKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICB0aHJlYWQgPSBOb25lCitleGNlcHQgSW1wb3J0RXJyb3I6ICNwcmFnbWE6IG5vIGNvdmVyCisgICAgdGhyZWFkaW5nID0gTm9uZQogCiBfX2F1dGhvcl9fICA9ICJWaW5heSBTYWppcCA8dmluYXlfc2FqaXBAcmVkLWRvdmUuY29tPiIKIF9fc3RhdHVzX18gID0gInByb2R1Y3Rpb24iCkBAIC02NSwxNiArNTksMTYgQEAKICAgICBfc3JjZmlsZSA9IF9fZmlsZV9fCiBfc3JjZmlsZSA9IG9zLnBhdGgubm9ybWNhc2UoX3NyY2ZpbGUpCiAKLSMgbmV4dCBiaXQgZmlsY2hlZCBmcm9tIDEuNS4yJ3MgaW5zcGVjdC5weQotZGVmIGN1cnJlbnRmcmFtZSgpOgotICAgICIiIlJldHVybiB0aGUgZnJhbWUgb2JqZWN0IGZvciB0aGUgY2FsbGVyJ3Mgc3RhY2sgZnJhbWUuIiIiCi0gICAgdHJ5OgotICAgICAgICByYWlzZSBFeGNlcHRpb24KLSAgICBleGNlcHQ6Ci0gICAgICAgIHJldHVybiBzeXMuZXhjX2luZm8oKVsyXS50Yl9mcmFtZS5mX2JhY2sKIAotaWYgaGFzYXR0cihzeXMsICdfZ2V0ZnJhbWUnKTogY3VycmVudGZyYW1lID0gbGFtYmRhOiBzeXMuX2dldGZyYW1lKDMpCi0jIGRvbmUgZmlsY2hpbmcKK2lmIGhhc2F0dHIoc3lzLCAnX2dldGZyYW1lJyk6CisgICAgY3VycmVudGZyYW1lID0gbGFtYmRhOiBzeXMuX2dldGZyYW1lKDMpCitlbHNlOiAjcHJhZ21hOiBubyBjb3ZlcgorICAgIGRlZiBjdXJyZW50ZnJhbWUoKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBmcmFtZSBvYmplY3QgZm9yIHRoZSBjYWxsZXIncyBzdGFjayBmcmFtZS4iIiIKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uCisgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgIHJldHVybiBzeXMuZXhjX2luZm8oKVsyXS50Yl9mcmFtZS5mX2JhY2sKIAogIyBfc3JjZmlsZSBpcyBvbmx5IHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBzeXMuX2dldGZyYW1lKCkuCiAjIFRvIHByb3ZpZGUgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb25zIG9mIFB5dGhvbiwgc2V0IF9zcmNmaWxlCkBAIC05MiwyMiArODYsMjIgQEAKICNyYWlzZUV4Y2VwdGlvbnMgaXMgdXNlZCB0byBzZWUgaWYgZXhjZXB0aW9ucyBkdXJpbmcgaGFuZGxpbmcgc2hvdWxkIGJlCiAjcHJvcGFnYXRlZAogIwotcmFpc2VFeGNlcHRpb25zID0gMQorcmFpc2VFeGNlcHRpb25zID0gVHJ1ZQogCiAjCiAjIElmIHlvdSBkb24ndCB3YW50IHRocmVhZGluZyBpbmZvcm1hdGlvbiBpbiB0aGUgbG9nLCBzZXQgdGhpcyB0byB6ZXJvCiAjCi1sb2dUaHJlYWRzID0gMQorbG9nVGhyZWFkcyA9IFRydWUKIAogIwogIyBJZiB5b3UgZG9uJ3Qgd2FudCBtdWx0aXByb2Nlc3NpbmcgaW5mb3JtYXRpb24gaW4gdGhlIGxvZywgc2V0IHRoaXMgdG8gemVybwogIwotbG9nTXVsdGlwcm9jZXNzaW5nID0gMQorbG9nTXVsdGlwcm9jZXNzaW5nID0gVHJ1ZQogCiAjCiAjIElmIHlvdSBkb24ndCB3YW50IHByb2Nlc3MgaW5mb3JtYXRpb24gaW4gdGhlIGxvZywgc2V0IHRoaXMgdG8gemVybwogIwotbG9nUHJvY2Vzc2VzID0gMQorbG9nUHJvY2Vzc2VzID0gVHJ1ZQogCiAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAjICAgTGV2ZWwgcmVsYXRlZCBzdHVmZgpAQCAtMTk3LDkgKzE5MSw5IEBACiAjdGhlIGxvY2sgd291bGQgYWxyZWFkeSBoYXZlIGJlZW4gYWNxdWlyZWQgLSBzbyB3ZSBuZWVkIGFuIFJMb2NrLgogI1RoZSBzYW1lIGFyZ3VtZW50IGFwcGxpZXMgdG8gTG9nZ2VycyBhbmQgTWFuYWdlci5sb2dnZXJEaWN0LgogIwotaWYgdGhyZWFkOgoraWYgdGhyZWFkaW5nOgogICAgIF9sb2NrID0gdGhyZWFkaW5nLlJMb2NrKCkKLWVsc2U6CitlbHNlOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgIF9sb2NrID0gTm9uZQogCiAKQEAgLTI1Miw3ICsyNDYsNyBAQAogICAgICAgICAjIGR1cmluZyBmb3JtYXR0aW5nLCB3ZSB0ZXN0IHRvIHNlZSBpZiB0aGUgYXJnIGlzIHByZXNlbnQgdXNpbmcKICAgICAgICAgIyAnaWYgc2VsZi5hcmdzOicuIElmIHRoZSBldmVudCBiZWluZyBsb2dnZWQgaXMgZS5nLiAnVmFsdWUgaXMgJWQnCiAgICAgICAgICMgYW5kIGlmIHRoZSBwYXNzZWQgYXJnIGZhaWxzICdpZiBzZWxmLmFyZ3M6JyB0aGVuIG5vIGZvcm1hdHRpbmcKLSAgICAgICAgIyBpcyBkb25lLiBGb3IgZXhhbXBsZSwgbG9nZ2VyLndhcm4oJ1ZhbHVlIGlzICVkJywgMCkgd291bGQgbG9nCisgICAgICAgICMgaXMgZG9uZS4gRm9yIGV4YW1wbGUsIGxvZ2dlci53YXJuaW5nKCdWYWx1ZSBpcyAlZCcsIDApIHdvdWxkIGxvZwogICAgICAgICAjICdWYWx1ZSBpcyAlZCcgaW5zdGVhZCBvZiAnVmFsdWUgaXMgMCcuCiAgICAgICAgICMgRm9yIHRoZSB1c2UgY2FzZSBvZiBwYXNzaW5nIGEgZGljdGlvbmFyeSwgdGhpcyBzaG91bGQgbm90IGJlIGEKICAgICAgICAgIyBwcm9ibGVtLgpAQCAtMjc2LDEzICsyNzAsMTMgQEAKICAgICAgICAgc2VsZi5jcmVhdGVkID0gY3QKICAgICAgICAgc2VsZi5tc2VjcyA9IChjdCAtIGludChjdCkpICogMTAwMAogICAgICAgICBzZWxmLnJlbGF0aXZlQ3JlYXRlZCA9IChzZWxmLmNyZWF0ZWQgLSBfc3RhcnRUaW1lKSAqIDEwMDAKLSAgICAgICAgaWYgbG9nVGhyZWFkcyBhbmQgdGhyZWFkOgotICAgICAgICAgICAgc2VsZi50aHJlYWQgPSB0aHJlYWQuZ2V0X2lkZW50KCkKKyAgICAgICAgaWYgbG9nVGhyZWFkcyBhbmQgdGhyZWFkaW5nOgorICAgICAgICAgICAgc2VsZi50aHJlYWQgPSB0aHJlYWRpbmcuZ2V0X2lkZW50KCkKICAgICAgICAgICAgIHNlbGYudGhyZWFkTmFtZSA9IHRocmVhZGluZy5jdXJyZW50X3RocmVhZCgpLm5hbWUKLSAgICAgICAgZWxzZToKKyAgICAgICAgZWxzZTogIyBwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICBzZWxmLnRocmVhZCA9IE5vbmUKICAgICAgICAgICAgIHNlbGYudGhyZWFkTmFtZSA9IE5vbmUKLSAgICAgICAgaWYgbm90IGxvZ011bHRpcHJvY2Vzc2luZzoKKyAgICAgICAgaWYgbm90IGxvZ011bHRpcHJvY2Vzc2luZzogIyBwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICBzZWxmLnByb2Nlc3NOYW1lID0gTm9uZQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgc2VsZi5wcm9jZXNzTmFtZSA9ICdNYWluUHJvY2VzcycKQEAgLTI5NCw3ICsyODgsNyBAQAogICAgICAgICAgICAgICAgICMgZm9yIGFuIGV4YW1wbGUKICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYucHJvY2Vzc05hbWUgPSBtcC5jdXJyZW50X3Byb2Nlc3MoKS5uYW1lCi0gICAgICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbjoKKyAgICAgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgICAgICAgICBwYXNzCiAgICAgICAgIGlmIGxvZ1Byb2Nlc3NlcyBhbmQgaGFzYXR0cihvcywgJ2dldHBpZCcpOgogICAgICAgICAgICAgc2VsZi5wcm9jZXNzID0gb3MuZ2V0cGlkKCkKQEAgLTQ2Niw2ICs0NjAsOSBAQAogICAgICAgICBzZWxmLl9mbXQgPSBzZWxmLl9zdHlsZS5fZm10CiAgICAgICAgIHNlbGYuZGF0ZWZtdCA9IGRhdGVmbXQKIAorICAgIGRlZmF1bHRfdGltZV9mb3JtYXQgPSAnJVktJW0tJWQgJUg6JU06JVMnCisgICAgZGVmYXVsdF9tc2VjX2Zvcm1hdCA9ICclcywlMDNkJworCiAgICAgZGVmIGZvcm1hdFRpbWUoc2VsZiwgcmVjb3JkLCBkYXRlZm10PU5vbmUpOgogICAgICAgICAiIiIKICAgICAgICAgUmV0dXJuIHRoZSBjcmVhdGlvbiB0aW1lIG9mIHRoZSBzcGVjaWZpZWQgTG9nUmVjb3JkIGFzIGZvcm1hdHRlZCB0ZXh0LgpAQCAtNDg4LDggKzQ4NSw4IEBACiAgICAgICAgIGlmIGRhdGVmbXQ6CiAgICAgICAgICAgICBzID0gdGltZS5zdHJmdGltZShkYXRlZm10LCBjdCkKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHQgPSB0aW1lLnN0cmZ0aW1lKCIlWS0lbS0lZCAlSDolTTolUyIsIGN0KQotICAgICAgICAgICAgcyA9ICIlcywlMDNkIiAlICh0LCByZWNvcmQubXNlY3MpICMgdGhlIHVzZSBvZiAlIGhlcmUgaXMgaW50ZXJuYWwKKyAgICAgICAgICAgIHQgPSB0aW1lLnN0cmZ0aW1lKHNlbGYuZGVmYXVsdF90aW1lX2Zvcm1hdCwgY3QpCisgICAgICAgICAgICBzID0gc2VsZi5kZWZhdWx0X21zZWNfZm9ybWF0ICUgKHQsIHJlY29yZC5tc2VjcykKICAgICAgICAgcmV0dXJuIHMKIAogICAgIGRlZiBmb3JtYXRFeGNlcHRpb24oc2VsZiwgZWkpOgpAQCAtNjQyLDExICs2MzksMTEgQEAKICAgICAgICAgeWVzLiBJZiBkZWVtZWQgYXBwcm9wcmlhdGUsIHRoZSByZWNvcmQgbWF5IGJlIG1vZGlmaWVkIGluLXBsYWNlLgogICAgICAgICAiIiIKICAgICAgICAgaWYgc2VsZi5ubGVuID09IDA6Ci0gICAgICAgICAgICByZXR1cm4gMQorICAgICAgICAgICAgcmV0dXJuIFRydWUKICAgICAgICAgZWxpZiBzZWxmLm5hbWUgPT0gcmVjb3JkLm5hbWU6Ci0gICAgICAgICAgICByZXR1cm4gMQorICAgICAgICAgICAgcmV0dXJuIFRydWUKICAgICAgICAgZWxpZiByZWNvcmQubmFtZS5maW5kKHNlbGYubmFtZSwgMCwgc2VsZi5ubGVuKSAhPSAwOgotICAgICAgICAgICAgcmV0dXJuIDAKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICByZXR1cm4gKHJlY29yZC5uYW1lW3NlbGYubmxlbl0gPT0gIi4iKQogCiBjbGFzcyBGaWx0ZXJlcihvYmplY3QpOgpAQCAtNjg2LDE0ICs2ODMsMTQgQEAKIAogICAgICAgICAgICBBbGxvdyBmaWx0ZXJzIHRvIGJlIGp1c3QgY2FsbGFibGVzLgogICAgICAgICAiIiIKLSAgICAgICAgcnYgPSAxCisgICAgICAgIHJ2ID0gVHJ1ZQogICAgICAgICBmb3IgZiBpbiBzZWxmLmZpbHRlcnM6CiAgICAgICAgICAgICBpZiBoYXNhdHRyKGYsICdmaWx0ZXInKToKICAgICAgICAgICAgICAgICByZXN1bHQgPSBmLmZpbHRlcihyZWNvcmQpCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHJlc3VsdCA9IGYocmVjb3JkKSAjIGFzc3VtZSBjYWxsYWJsZSAtIHdpbGwgcmFpc2UgaWYgbm90CiAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgotICAgICAgICAgICAgICAgIHJ2ID0gMAorICAgICAgICAgICAgICAgIHJ2ID0gRmFsc2UKICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICByZXR1cm4gcnYKIApAQCAtNzcxLDkgKzc2OCw5IEBACiAgICAgICAgICIiIgogICAgICAgICBBY3F1aXJlIGEgdGhyZWFkIGxvY2sgZm9yIHNlcmlhbGl6aW5nIGFjY2VzcyB0byB0aGUgdW5kZXJseWluZyBJL08uCiAgICAgICAgICIiIgotICAgICAgICBpZiB0aHJlYWQ6CisgICAgICAgIGlmIHRocmVhZGluZzoKICAgICAgICAgICAgIHNlbGYubG9jayA9IHRocmVhZGluZy5STG9jaygpCi0gICAgICAgIGVsc2U6CisgICAgICAgIGVsc2U6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICBzZWxmLmxvY2sgPSBOb25lCiAKICAgICBkZWYgYWNxdWlyZShzZWxmKToKQEAgLTc5Miw3ICs3ODksNyBAQAogCiAgICAgZGVmIHNldExldmVsKHNlbGYsIGxldmVsKToKICAgICAgICAgIiIiCi0gICAgICAgIFNldCB0aGUgbG9nZ2luZyBsZXZlbCBvZiB0aGlzIGhhbmRsZXIuCisgICAgICAgIFNldCB0aGUgbG9nZ2luZyBsZXZlbCBvZiB0aGlzIGhhbmRsZXIuICBsZXZlbCBtdXN0IGJlIGFuIGludCBvciBhIHN0ci4KICAgICAgICAgIiIiCiAgICAgICAgIHNlbGYubGV2ZWwgPSBfY2hlY2tMZXZlbChsZXZlbCkKIApAQCAtODg4LDcgKzg4NSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb25lLCBzeXMuc3RkZXJyKQogICAgICAgICAgICAgICAgIHN5cy5zdGRlcnIud3JpdGUoJ0xvZ2dlZCBmcm9tIGZpbGUgJXMsIGxpbmUgJXNcbicgJSAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmQuZmlsZW5hbWUsIHJlY29yZC5saW5lbm8pKQotICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICBleGNlcHQgSU9FcnJvcjogI3ByYWdtYTogbm8gY292ZXIKICAgICAgICAgICAgICAgICBwYXNzICAgICMgc2VlIGlzc3VlIDU5NzEKICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgZGVsIGVpCkBAIC05NDEsNyArOTM4LDcgQEAKICAgICAgICAgICAgIHN0cmVhbS53cml0ZShtc2cpCiAgICAgICAgICAgICBzdHJlYW0ud3JpdGUoc2VsZi50ZXJtaW5hdG9yKQogICAgICAgICAgICAgc2VsZi5mbHVzaCgpCi0gICAgICAgIGV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQsIFN5c3RlbUV4aXQpOgorICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KTogI3ByYWdtYTogbm8gY292ZXIKICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgIGV4Y2VwdDoKICAgICAgICAgICAgIHNlbGYuaGFuZGxlRXJyb3IocmVjb3JkKQpAQCAtOTUwLDE0ICs5NDcsMTIgQEAKICAgICAiIiIKICAgICBBIGhhbmRsZXIgY2xhc3Mgd2hpY2ggd3JpdGVzIGZvcm1hdHRlZCBsb2dnaW5nIHJlY29yZHMgdG8gZGlzayBmaWxlcy4KICAgICAiIiIKLSAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBlbmNvZGluZz1Ob25lLCBkZWxheT0wKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBlbmNvZGluZz1Ob25lLCBkZWxheT1GYWxzZSk6CiAgICAgICAgICIiIgogICAgICAgICBPcGVuIHRoZSBzcGVjaWZpZWQgZmlsZSBhbmQgdXNlIGl0IGFzIHRoZSBzdHJlYW0gZm9yIGxvZ2dpbmcuCiAgICAgICAgICIiIgogICAgICAgICAja2VlcCB0aGUgYWJzb2x1dGUgcGF0aCwgb3RoZXJ3aXNlIGRlcml2ZWQgY2xhc3NlcyB3aGljaCB1c2UgdGhpcwogICAgICAgICAjbWF5IGNvbWUgYSBjcm9wcGVyIHdoZW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGNoYW5nZXMKLSAgICAgICAgaWYgY29kZWNzIGlzIE5vbmU6Ci0gICAgICAgICAgICBlbmNvZGluZyA9IE5vbmUKICAgICAgICAgc2VsZi5iYXNlRmlsZW5hbWUgPSBvcy5wYXRoLmFic3BhdGgoZmlsZW5hbWUpCiAgICAgICAgIHNlbGYubW9kZSA9IG1vZGUKICAgICAgICAgc2VsZi5lbmNvZGluZyA9IGVuY29kaW5nCkBAIC05ODksMTEgKzk4NCw3IEBACiAgICAgICAgIE9wZW4gdGhlIGN1cnJlbnQgYmFzZSBmaWxlIHdpdGggdGhlIChvcmlnaW5hbCkgbW9kZSBhbmQgZW5jb2RpbmcuCiAgICAgICAgIFJldHVybiB0aGUgcmVzdWx0aW5nIHN0cmVhbS4KICAgICAgICAgIiIiCi0gICAgICAgIGlmIHNlbGYuZW5jb2RpbmcgaXMgTm9uZToKLSAgICAgICAgICAgIHN0cmVhbSA9IG9wZW4oc2VsZi5iYXNlRmlsZW5hbWUsIHNlbGYubW9kZSkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHN0cmVhbSA9IGNvZGVjcy5vcGVuKHNlbGYuYmFzZUZpbGVuYW1lLCBzZWxmLm1vZGUsIHNlbGYuZW5jb2RpbmcpCi0gICAgICAgIHJldHVybiBzdHJlYW0KKyAgICAgICAgcmV0dXJuIG9wZW4oc2VsZi5iYXNlRmlsZW5hbWUsIHNlbGYubW9kZSwgZW5jb2Rpbmc9c2VsZi5lbmNvZGluZykKIAogICAgIGRlZiBlbWl0KHNlbGYsIHJlY29yZCk6CiAgICAgICAgICIiIgpAQCAtMTIwNSwxMyArMTE5NiwxMyBAQAogICAgICAgICBzZWxmLm5hbWUgPSBuYW1lCiAgICAgICAgIHNlbGYubGV2ZWwgPSBfY2hlY2tMZXZlbChsZXZlbCkKICAgICAgICAgc2VsZi5wYXJlbnQgPSBOb25lCi0gICAgICAgIHNlbGYucHJvcGFnYXRlID0gMQorICAgICAgICBzZWxmLnByb3BhZ2F0ZSA9IFRydWUKICAgICAgICAgc2VsZi5oYW5kbGVycyA9IFtdCi0gICAgICAgIHNlbGYuZGlzYWJsZWQgPSAwCisgICAgICAgIHNlbGYuZGlzYWJsZWQgPSBGYWxzZQogCiAgICAgZGVmIHNldExldmVsKHNlbGYsIGxldmVsKToKICAgICAgICAgIiIiCi0gICAgICAgIFNldCB0aGUgbG9nZ2luZyBsZXZlbCBvZiB0aGlzIGxvZ2dlci4KKyAgICAgICAgU2V0IHRoZSBsb2dnaW5nIGxldmVsIG9mIHRoaXMgbG9nZ2VyLiAgbGV2ZWwgbXVzdCBiZSBhbiBpbnQgb3IgYSBzdHIuCiAgICAgICAgICIiIgogICAgICAgICBzZWxmLmxldmVsID0gX2NoZWNrTGV2ZWwobGV2ZWwpCiAKQEAgLTEyNTEsNyArMTI0MiwxMCBAQAogICAgICAgICBpZiBzZWxmLmlzRW5hYmxlZEZvcihXQVJOSU5HKToKICAgICAgICAgICAgIHNlbGYuX2xvZyhXQVJOSU5HLCBtc2csIGFyZ3MsICoqa3dhcmdzKQogCi0gICAgd2FybiA9IHdhcm5pbmcKKyAgICBkZWYgd2FybihzZWxmLCBtc2csICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHdhcm5pbmdzLndhcm4oIlRoZSAnd2FybicgbWV0aG9kIGlzIGRlcHJlY2F0ZWQsICIKKyAgICAgICAgICAgICJ1c2UgJ3dhcm5pbmcnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgIHNlbGYud2FybmluZyhtc2csICphcmdzLCAqKmt3YXJncykKIAogICAgIGRlZiBlcnJvcihzZWxmLCBtc2csICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgICIiIgpAQCAtMTM2MCw5ICsxMzU0LDkgQEAKICAgICAgICAgICAgICNJcm9uUHl0aG9uIGNhbiB1c2UgbG9nZ2luZy4KICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBmbiwgbG5vLCBmdW5jLCBzaW5mbyA9IHNlbGYuZmluZENhbGxlcihzdGFja19pbmZvKQotICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjogIyBwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICAgICAgZm4sIGxubywgZnVuYyA9ICIodW5rbm93biBmaWxlKSIsIDAsICIodW5rbm93biBmdW5jdGlvbikiCi0gICAgICAgIGVsc2U6CisgICAgICAgIGVsc2U6ICMgcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgZm4sIGxubywgZnVuYyA9ICIodW5rbm93biBmaWxlKSIsIDAsICIodW5rbm93biBmdW5jdGlvbikiCiAgICAgICAgIGlmIGV4Y19pbmZvOgogICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZXhjX2luZm8sIHR1cGxlKToKQEAgLTE0NzQsNyArMTQ2OCw3IEBACiAgICAgICAgIElzIHRoaXMgbG9nZ2VyIGVuYWJsZWQgZm9yIGxldmVsICdsZXZlbCc/CiAgICAgICAgICIiIgogICAgICAgICBpZiBzZWxmLm1hbmFnZXIuZGlzYWJsZSA+PSBsZXZlbDoKLSAgICAgICAgICAgIHJldHVybiAwCisgICAgICAgICAgICByZXR1cm4gRmFsc2UKICAgICAgICAgcmV0dXJuIGxldmVsID49IHNlbGYuZ2V0RWZmZWN0aXZlTGV2ZWwoKQogCiAgICAgZGVmIGdldENoaWxkKHNlbGYsIHN1ZmZpeCk6CkBAIC0xNTY0LDcgKzE1NTgsMTAgQEAKICAgICAgICAgIiIiCiAgICAgICAgIHNlbGYubG9nKFdBUk5JTkcsIG1zZywgKmFyZ3MsICoqa3dhcmdzKQogCi0gICAgd2FybiA9IHdhcm5pbmcKKyAgICBkZWYgd2FybihzZWxmLCBtc2csICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHdhcm5pbmdzLndhcm4oIlRoZSAnd2FybicgbWV0aG9kIGlzIGRlcHJlY2F0ZWQsICIKKyAgICAgICAgICAgICJ1c2UgJ3dhcm5pbmcnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgIHNlbGYud2FybmluZyhtc2csICphcmdzLCAqKmt3YXJncykKIAogICAgIGRlZiBlcnJvcihzZWxmLCBtc2csICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgICIiIgpAQCAtMTU3Niw3ICsxNTczLDcgQEAKICAgICAgICAgIiIiCiAgICAgICAgIERlbGVnYXRlIGFuIGV4Y2VwdGlvbiBjYWxsIHRvIHRoZSB1bmRlcmx5aW5nIGxvZ2dlci4KICAgICAgICAgIiIiCi0gICAgICAgIGt3YXJnc1siZXhjX2luZm8iXSA9IDEKKyAgICAgICAga3dhcmdzWyJleGNfaW5mbyJdID0gVHJ1ZQogICAgICAgICBzZWxmLmxvZyhFUlJPUiwgbXNnLCAqYXJncywgKiprd2FyZ3MpCiAKICAgICBkZWYgY3JpdGljYWwoc2VsZiwgbXNnLCAqYXJncywgKiprd2FyZ3MpOgpAQCAtMTY1OSw2ICsxNjU2LDEwIEBACiAgICAgc3RyZWFtICAgIFVzZSB0aGUgc3BlY2lmaWVkIHN0cmVhbSB0byBpbml0aWFsaXplIHRoZSBTdHJlYW1IYW5kbGVyLiBOb3RlCiAgICAgICAgICAgICAgIHRoYXQgdGhpcyBhcmd1bWVudCBpcyBpbmNvbXBhdGlibGUgd2l0aCAnZmlsZW5hbWUnIC0gaWYgYm90aAogICAgICAgICAgICAgICBhcmUgcHJlc2VudCwgJ3N0cmVhbScgaXMgaWdub3JlZC4KKyAgICBoYW5kbGVycyAgSWYgc3BlY2lmaWVkLCB0aGlzIHNob3VsZCBiZSBhbiBpdGVyYWJsZSBvZiBhbHJlYWR5IGNyZWF0ZWQKKyAgICAgICAgICAgICAgaGFuZGxlcnMsIHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHJvb3QgaGFuZGxlci4gQW55IGhhbmRsZXIKKyAgICAgICAgICAgICAgaW4gdGhlIGxpc3Qgd2hpY2ggZG9lcyBub3QgaGF2ZSBhIGZvcm1hdHRlciBhc3NpZ25lZCB3aWxsIGJlCisgICAgICAgICAgICAgIGFzc2lnbmVkIHRoZSBmb3JtYXR0ZXIgY3JlYXRlZCBpbiB0aGlzIGZ1bmN0aW9uLgogCiAgICAgTm90ZSB0aGF0IHlvdSBjb3VsZCBzcGVjaWZ5IGEgc3RyZWFtIGNyZWF0ZWQgdXNpbmcgb3BlbihmaWxlbmFtZSwgbW9kZSkKICAgICByYXRoZXIgdGhhbiBwYXNzaW5nIHRoZSBmaWxlbmFtZSBhbmQgbW9kZSBpbi4gSG93ZXZlciwgaXQgc2hvdWxkIGJlCkBAIC0xNjY2LDI3ICsxNjY3LDQ3IEBACiAgICAgdXNpbmcgc3lzLnN0ZG91dCBvciBzeXMuc3RkZXJyKSwgd2hlcmVhcyBGaWxlSGFuZGxlciBjbG9zZXMgaXRzIHN0cmVhbQogICAgIHdoZW4gdGhlIGhhbmRsZXIgaXMgY2xvc2VkLgogCi0gICAgLi4gdmVyc2lvbmNoYW5nZWQ6IDMuMgorICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCiAgICAgICAgQWRkZWQgdGhlIGBgc3R5bGVgYCBwYXJhbWV0ZXIuCisKKyAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgIEFkZGVkIHRoZSBgYGhhbmRsZXJzYGAgcGFyYW1ldGVyLiBBIGBgVmFsdWVFcnJvcmBgIGlzIG5vdyB0aHJvd24gZm9yCisgICAgICAgaW5jb21wYXRpYmxlIGFyZ3VtZW50cyAoZS5nLiBgYGhhbmRsZXJzYGAgc3BlY2lmaWVkIHRvZ2V0aGVyIHdpdGgKKyAgICAgICBgYGZpbGVuYW1lYGAvYGBmaWxlbW9kZWBgLCBvciBgYGZpbGVuYW1lYGAvYGBmaWxlbW9kZWBgIHNwZWNpZmllZAorICAgICAgIHRvZ2V0aGVyIHdpdGggYGBzdHJlYW1gYCwgb3IgYGBoYW5kbGVyc2BgIHNwZWNpZmllZCB0b2dldGhlciB3aXRoCisgICAgICAgYGBzdHJlYW1gYC4KICAgICAiIiIKICAgICAjIEFkZCB0aHJlYWQgc2FmZXR5IGluIGNhc2Ugc29tZW9uZSBtaXN0YWtlbmx5IGNhbGxzCiAgICAgIyBiYXNpY0NvbmZpZygpIGZyb20gbXVsdGlwbGUgdGhyZWFkcwogICAgIF9hY3F1aXJlTG9jaygpCiAgICAgdHJ5OgogICAgICAgICBpZiBsZW4ocm9vdC5oYW5kbGVycykgPT0gMDoKLSAgICAgICAgICAgIGZpbGVuYW1lID0ga3dhcmdzLmdldCgiZmlsZW5hbWUiKQotICAgICAgICAgICAgaWYgZmlsZW5hbWU6Ci0gICAgICAgICAgICAgICAgbW9kZSA9IGt3YXJncy5nZXQoImZpbGVtb2RlIiwgJ2EnKQotICAgICAgICAgICAgICAgIGhkbHIgPSBGaWxlSGFuZGxlcihmaWxlbmFtZSwgbW9kZSkKKyAgICAgICAgICAgIGhhbmRsZXJzID0ga3dhcmdzLmdldCgiaGFuZGxlcnMiKQorICAgICAgICAgICAgaWYgaGFuZGxlcnMgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBpZiAic3RyZWFtIiBpbiBrd2FyZ3MgYW5kICJmaWxlbmFtZSIgaW4ga3dhcmdzOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCInc3RyZWFtJyBhbmQgJ2ZpbGVuYW1lJyBzaG91bGQgbm90IGJlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BlY2lmaWVkIHRvZ2V0aGVyIikKICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgc3RyZWFtID0ga3dhcmdzLmdldCgic3RyZWFtIikKLSAgICAgICAgICAgICAgICBoZGxyID0gU3RyZWFtSGFuZGxlcihzdHJlYW0pCisgICAgICAgICAgICAgICAgaWYgInN0cmVhbSIgaW4ga3dhcmdzIG9yICJmaWxlbmFtZSIgaW4ga3dhcmdzOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCInc3RyZWFtJyBvciAnZmlsZW5hbWUnIHNob3VsZCBub3QgYmUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZWQgdG9nZXRoZXIgd2l0aCAnaGFuZGxlcnMnIikKKyAgICAgICAgICAgIGlmIGhhbmRsZXJzIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgZmlsZW5hbWUgPSBrd2FyZ3MuZ2V0KCJmaWxlbmFtZSIpCisgICAgICAgICAgICAgICAgaWYgZmlsZW5hbWU6CisgICAgICAgICAgICAgICAgICAgIG1vZGUgPSBrd2FyZ3MuZ2V0KCJmaWxlbW9kZSIsICdhJykKKyAgICAgICAgICAgICAgICAgICAgaCA9IEZpbGVIYW5kbGVyKGZpbGVuYW1lLCBtb2RlKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHN0cmVhbSA9IGt3YXJncy5nZXQoInN0cmVhbSIpCisgICAgICAgICAgICAgICAgICAgIGggPSBTdHJlYW1IYW5kbGVyKHN0cmVhbSkKKyAgICAgICAgICAgICAgICBoYW5kbGVycyA9IFtoXQogICAgICAgICAgICAgZnMgPSBrd2FyZ3MuZ2V0KCJmb3JtYXQiLCBCQVNJQ19GT1JNQVQpCiAgICAgICAgICAgICBkZnMgPSBrd2FyZ3MuZ2V0KCJkYXRlZm10IiwgTm9uZSkKICAgICAgICAgICAgIHN0eWxlID0ga3dhcmdzLmdldCgic3R5bGUiLCAnJScpCiAgICAgICAgICAgICBmbXQgPSBGb3JtYXR0ZXIoZnMsIGRmcywgc3R5bGUpCi0gICAgICAgICAgICBoZGxyLnNldEZvcm1hdHRlcihmbXQpCi0gICAgICAgICAgICByb290LmFkZEhhbmRsZXIoaGRscikKKyAgICAgICAgICAgIGZvciBoIGluIGhhbmRsZXJzOgorICAgICAgICAgICAgICAgIGlmIGguZm9ybWF0dGVyIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgICAgIGguc2V0Rm9ybWF0dGVyKGZtdCkKKyAgICAgICAgICAgICAgICByb290LmFkZEhhbmRsZXIoaCkKICAgICAgICAgICAgIGxldmVsID0ga3dhcmdzLmdldCgibGV2ZWwiKQogICAgICAgICAgICAgaWYgbGV2ZWwgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgcm9vdC5zZXRMZXZlbChsZXZlbCkKQEAgLTE3NTAsNyArMTc3MSwxMCBAQAogICAgICAgICBiYXNpY0NvbmZpZygpCiAgICAgcm9vdC53YXJuaW5nKG1zZywgKmFyZ3MsICoqa3dhcmdzKQogCi13YXJuID0gd2FybmluZworZGVmIHdhcm4obXNnLCAqYXJncywgKiprd2FyZ3MpOgorICAgIHdhcm5pbmdzLndhcm4oIlRoZSAnd2FybicgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCwgIgorICAgICAgICAidXNlICd3YXJuaW5nJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgIHdhcm5pbmcobXNnLCAqYXJncywgKiprd2FyZ3MpCiAKIGRlZiBpbmZvKG1zZywgKmFyZ3MsICoqa3dhcmdzKToKICAgICAiIiIKQEAgLTE4MzUsMTAgKzE4NTksMTAgQEAKICAgICBwYWNrYWdlLgogICAgICIiIgogICAgIGRlZiBoYW5kbGUoc2VsZiwgcmVjb3JkKToKLSAgICAgICAgcGFzcworICAgICAgICAiIiJTdHViLiIiIgogCiAgICAgZGVmIGVtaXQoc2VsZiwgcmVjb3JkKToKLSAgICAgICAgcGFzcworICAgICAgICAiIiJTdHViLiIiIgogCiAgICAgZGVmIGNyZWF0ZUxvY2soc2VsZik6CiAgICAgICAgIHNlbGYubG9jayA9IE5vbmUKZGlmZiAtLWdpdCBhL0xpYi9sb2dnaW5nL2NvbmZpZy5weSBiL0xpYi9sb2dnaW5nL2NvbmZpZy5weQppbmRleCAzNzNkYTJiLi41ZWY1YzkxIDEwMDY0NAotLS0gYS9MaWIvbG9nZ2luZy9jb25maWcucHkKKysrIGIvTGliL2xvZ2dpbmcvY29uZmlnLnB5CkBAIC0yNCwxMyArMjQsMTMgQEAKIFRvIHVzZSwgc2ltcGx5ICdpbXBvcnQgbG9nZ2luZycgYW5kIGxvZyBhd2F5IQogIiIiCiAKLWltcG9ydCBzeXMsIGxvZ2dpbmcsIGxvZ2dpbmcuaGFuZGxlcnMsIHNvY2tldCwgc3RydWN0LCBvcywgdHJhY2ViYWNrLCByZQotaW1wb3J0IHR5cGVzLCBpbworaW1wb3J0IHN5cywgbG9nZ2luZywgbG9nZ2luZy5oYW5kbGVycywgc29ja2V0LCBzdHJ1Y3QsIHRyYWNlYmFjaywgcmUKK2ltcG9ydCBpbwogCiB0cnk6CiAgICAgaW1wb3J0IF90aHJlYWQgYXMgdGhyZWFkCiAgICAgaW1wb3J0IHRocmVhZGluZwotZXhjZXB0IEltcG9ydEVycm9yOgorZXhjZXB0IEltcG9ydEVycm9yOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgIHRocmVhZCA9IE5vbmUKIAogZnJvbSBzb2NrZXRzZXJ2ZXIgaW1wb3J0IFRocmVhZGluZ1RDUFNlcnZlciwgU3RyZWFtUmVxdWVzdEhhbmRsZXIKQEAgLTk4LDkgKzk4LDYgQEAKIGRlZiBfc3RyaXBfc3BhY2VzKGFsaXN0KToKICAgICByZXR1cm4gbWFwKGxhbWJkYSB4OiB4LnN0cmlwKCksIGFsaXN0KQogCi1kZWYgX2VuY29kZWQocyk6Ci0gICAgcmV0dXJuIHMgaWYgaXNpbnN0YW5jZShzLCBzdHIpIGVsc2Ugcy5lbmNvZGUoJ3V0Zi04JykKLQogZGVmIF9jcmVhdGVfZm9ybWF0dGVycyhjcCk6CiAgICAgIiIiQ3JlYXRlIGFuZCByZXR1cm4gZm9ybWF0dGVycyIiIgogICAgIGZsaXN0ID0gY3BbImZvcm1hdHRlcnMiXVsia2V5cyJdCkBAIC0yMTUsNyArMjEyLDcgQEAKICAgICAjYXZvaWQgZGlzYWJsaW5nIGNoaWxkIGxvZ2dlcnMgb2YgZXhwbGljaXRseQogICAgICNuYW1lZCBsb2dnZXJzLiBXaXRoIGEgc29ydGVkIGxpc3QgaXQgaXMgZWFzaWVyCiAgICAgI3RvIGZpbmQgdGhlIGNoaWxkIGxvZ2dlcnMuCi0gICAgZXhpc3Rpbmcuc29ydChrZXk9X2VuY29kZWQpCisgICAgZXhpc3Rpbmcuc29ydCgpCiAgICAgI1dlJ2xsIGtlZXAgdGhlIGxpc3Qgb2YgZXhpc3RpbmcgbG9nZ2VycwogICAgICN3aGljaCBhcmUgY2hpbGRyZW4gb2YgbmFtZWQgbG9nZ2VycyBoZXJlLi4uCiAgICAgY2hpbGRfbG9nZ2VycyA9IFtdCkBAIC01ODgsNyArNTg1LDcgQEAKICAgICAgICAgICAgICAgICAjYXZvaWQgZGlzYWJsaW5nIGNoaWxkIGxvZ2dlcnMgb2YgZXhwbGljaXRseQogICAgICAgICAgICAgICAgICNuYW1lZCBsb2dnZXJzLiBXaXRoIGEgc29ydGVkIGxpc3QgaXQgaXMgZWFzaWVyCiAgICAgICAgICAgICAgICAgI3RvIGZpbmQgdGhlIGNoaWxkIGxvZ2dlcnMuCi0gICAgICAgICAgICAgICAgZXhpc3Rpbmcuc29ydChrZXk9X2VuY29kZWQpCisgICAgICAgICAgICAgICAgZXhpc3Rpbmcuc29ydCgpCiAgICAgICAgICAgICAgICAgI1dlJ2xsIGtlZXAgdGhlIGxpc3Qgb2YgZXhpc3RpbmcgbG9nZ2VycwogICAgICAgICAgICAgICAgICN3aGljaCBhcmUgY2hpbGRyZW4gb2YgbmFtZWQgbG9nZ2VycyBoZXJlLi4uCiAgICAgICAgICAgICAgICAgY2hpbGRfbG9nZ2VycyA9IFtdCkBAIC03ODYsNyArNzgzLDcgQEAKICAgICBhbmQgd2hpY2ggeW91IGNhbiBqb2luKCkgd2hlbiBhcHByb3ByaWF0ZS4gVG8gc3RvcCB0aGUgc2VydmVyLCBjYWxsCiAgICAgc3RvcExpc3RlbmluZygpLgogICAgICIiIgotICAgIGlmIG5vdCB0aHJlYWQ6CisgICAgaWYgbm90IHRocmVhZDogI3ByYWdtYTogbm8gY292ZXIKICAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcigibGlzdGVuKCkgbmVlZHMgdGhyZWFkaW5nIHRvIHdvcmsiKQogCiAgICAgY2xhc3MgQ29uZmlnU3RyZWFtSGFuZGxlcihTdHJlYW1SZXF1ZXN0SGFuZGxlcik6CkBAIC04MDQsNyArODAxLDYgQEAKICAgICAgICAgICAgIHN0cnVjdC5wYWNrKCI+TCIsIG4pLCBmb2xsb3dlZCBieSB0aGUgY29uZmlnIGZpbGUuCiAgICAgICAgICAgICBVc2VzIGZpbGVDb25maWcoKSB0byBkbyB0aGUgZ3J1bnQgd29yay4KICAgICAgICAgICAgICIiIgotICAgICAgICAgICAgaW1wb3J0IHRlbXBmaWxlCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgY29ubiA9IHNlbGYuY29ubmVjdGlvbgogICAgICAgICAgICAgICAgIGNodW5rID0gY29ubi5yZWN2KDQpCkBAIC04MjUsNyArODIxLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGUgPSBpby5TdHJpbmdJTyhjaHVuaykKICAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlQ29uZmlnKGZpbGUpCi0gICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQsIFN5c3RlbUV4aXQpOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2ViYWNrLnByaW50X2V4YygpCmRpZmYgLS1naXQgYS9MaWIvbG9nZ2luZy9oYW5kbGVycy5weSBiL0xpYi9sb2dnaW5nL2hhbmRsZXJzLnB5CmluZGV4IDcwOGVkYzUuLmVlMDA5NmEgMTAwNjQ0Ci0tLSBhL0xpYi9sb2dnaW5nL2hhbmRsZXJzLnB5CisrKyBiL0xpYi9sb2dnaW5nL2hhbmRsZXJzLnB5CkBAIC0yNCwxOCArMjQsMTQgQEAKICIiIgogCiBpbXBvcnQgbG9nZ2luZywgc29ja2V0LCBvcywgcGlja2xlLCBzdHJ1Y3QsIHRpbWUsIHJlCitmcm9tIGNvZGVjcyBpbXBvcnQgQk9NX1VURjgKIGZyb20gc3RhdCBpbXBvcnQgU1RfREVWLCBTVF9JTk8sIFNUX01USU1FCiBpbXBvcnQgcXVldWUKIHRyeToKICAgICBpbXBvcnQgdGhyZWFkaW5nCi1leGNlcHQgSW1wb3J0RXJyb3I6CitleGNlcHQgSW1wb3J0RXJyb3I6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgdGhyZWFkaW5nID0gTm9uZQogCi10cnk6Ci0gICAgaW1wb3J0IGNvZGVjcwotZXhjZXB0IEltcG9ydEVycm9yOgotICAgIGNvZGVjcyA9IE5vbmUKLQogIwogIyBTb21lIGNvbnN0YW50cy4uLgogIwpAQCAtNTUsMTUgKzUxLDE1IEBACiAgICAgTm90IG1lYW50IHRvIGJlIGluc3RhbnRpYXRlZCBkaXJlY3RseS4gIEluc3RlYWQsIHVzZSBSb3RhdGluZ0ZpbGVIYW5kbGVyCiAgICAgb3IgVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyLgogICAgICIiIgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmaWxlbmFtZSwgbW9kZSwgZW5jb2Rpbmc9Tm9uZSwgZGVsYXk9MCk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZpbGVuYW1lLCBtb2RlLCBlbmNvZGluZz1Ob25lLCBkZWxheT1GYWxzZSk6CiAgICAgICAgICIiIgogICAgICAgICBVc2UgdGhlIHNwZWNpZmllZCBmaWxlbmFtZSBmb3Igc3RyZWFtZWQgbG9nZ2luZwogICAgICAgICAiIiIKLSAgICAgICAgaWYgY29kZWNzIGlzIE5vbmU6Ci0gICAgICAgICAgICBlbmNvZGluZyA9IE5vbmUKICAgICAgICAgbG9nZ2luZy5GaWxlSGFuZGxlci5fX2luaXRfXyhzZWxmLCBmaWxlbmFtZSwgbW9kZSwgZW5jb2RpbmcsIGRlbGF5KQogICAgICAgICBzZWxmLm1vZGUgPSBtb2RlCiAgICAgICAgIHNlbGYuZW5jb2RpbmcgPSBlbmNvZGluZworICAgICAgICBzZWxmLm5hbWVyID0gTm9uZQorICAgICAgICBzZWxmLnJvdGF0b3IgPSBOb25lCiAKICAgICBkZWYgZW1pdChzZWxmLCByZWNvcmQpOgogICAgICAgICAiIiIKQEAgLTc2LDE3ICs3Miw1NSBAQAogICAgICAgICAgICAgaWYgc2VsZi5zaG91bGRSb2xsb3ZlcihyZWNvcmQpOgogICAgICAgICAgICAgICAgIHNlbGYuZG9Sb2xsb3ZlcigpCiAgICAgICAgICAgICBsb2dnaW5nLkZpbGVIYW5kbGVyLmVtaXQoc2VsZiwgcmVjb3JkKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKIAorICAgIGRlZiByb3RhdGlvbl9maWxlbmFtZShzZWxmLCBkZWZhdWx0X25hbWUpOgorICAgICAgICAiIiIKKyAgICAgICAgTW9kaWZ5IHRoZSBmaWxlbmFtZSBvZiBhIGxvZyBmaWxlIHdoZW4gcm90YXRpbmcuCisKKyAgICAgICAgVGhpcyBpcyBwcm92aWRlZCBzbyB0aGF0IGEgY3VzdG9tIGZpbGVuYW1lIGNhbiBiZSBwcm92aWRlZC4KKworICAgICAgICBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBjYWxscyB0aGUgJ25hbWVyJyBhdHRyaWJ1dGUgb2YgdGhlCisgICAgICAgIGhhbmRsZXIsIGlmIGl0J3MgY2FsbGFibGUsIHBhc3NpbmcgdGhlIGRlZmF1bHQgbmFtZSB0bworICAgICAgICBpdC4gSWYgdGhlIGF0dHJpYnV0ZSBpc24ndCBjYWxsYWJsZSAodGhlIGRlZmF1bHQgaXMgTm9uZSksIHRoZSBuYW1lCisgICAgICAgIGlzIHJldHVybmVkIHVuY2hhbmdlZC4KKworICAgICAgICA6cGFyYW0gZGVmYXVsdF9uYW1lOiBUaGUgZGVmYXVsdCBuYW1lIGZvciB0aGUgbG9nIGZpbGUuCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgY2FsbGFibGUoc2VsZi5uYW1lcik6CisgICAgICAgICAgICByZXN1bHQgPSBkZWZhdWx0X25hbWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJlc3VsdCA9IHNlbGYubmFtZXIoZGVmYXVsdF9uYW1lKQorICAgICAgICByZXR1cm4gcmVzdWx0CisKKyAgICBkZWYgcm90YXRlKHNlbGYsIHNvdXJjZSwgZGVzdCk6CisgICAgICAgICIiIgorICAgICAgICBXaGVuIHJvdGF0aW5nLCByb3RhdGUgdGhlIGN1cnJlbnQgbG9nLgorCisgICAgICAgIFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIGNhbGxzIHRoZSAncm90YXRvcicgYXR0cmlidXRlIG9mIHRoZQorICAgICAgICBoYW5kbGVyLCBpZiBpdCdzIGNhbGxhYmxlLCBwYXNzaW5nIHRoZSBzb3VyY2UgYW5kIGRlc3QgYXJndW1lbnRzIHRvCisgICAgICAgIGl0LiBJZiB0aGUgYXR0cmlidXRlIGlzbid0IGNhbGxhYmxlICh0aGUgZGVmYXVsdCBpcyBOb25lKSwgdGhlIHNvdXJjZQorICAgICAgICBpcyBzaW1wbHkgcmVuYW1lZCB0byB0aGUgZGVzdGluYXRpb24uCisKKyAgICAgICAgOnBhcmFtIHNvdXJjZTogVGhlIHNvdXJjZSBmaWxlbmFtZS4gVGhpcyBpcyBub3JtYWxseSB0aGUgYmFzZQorICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZSwgZS5nLiAndGVzdC5sb2cnCisgICAgICAgIDpwYXJhbSBkZXN0OiAgIFRoZSBkZXN0aW5hdGlvbiBmaWxlbmFtZS4gVGhpcyBpcyBub3JtYWxseQorICAgICAgICAgICAgICAgICAgICAgICB3aGF0IHRoZSBzb3VyY2UgaXMgcm90YXRlZCB0bywgZS5nLiAndGVzdC5sb2cuMScuCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgY2FsbGFibGUoc2VsZi5yb3RhdG9yKToKKyAgICAgICAgICAgIG9zLnJlbmFtZShzb3VyY2UsIGRlc3QpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLnJvdGF0b3Ioc291cmNlLCBkZXN0KQorCiBjbGFzcyBSb3RhdGluZ0ZpbGVIYW5kbGVyKEJhc2VSb3RhdGluZ0hhbmRsZXIpOgogICAgICIiIgogICAgIEhhbmRsZXIgZm9yIGxvZ2dpbmcgdG8gYSBzZXQgb2YgZmlsZXMsIHdoaWNoIHN3aXRjaGVzIGZyb20gb25lIGZpbGUKICAgICB0byB0aGUgbmV4dCB3aGVuIHRoZSBjdXJyZW50IGZpbGUgcmVhY2hlcyBhIGNlcnRhaW4gc2l6ZS4KICAgICAiIiIKLSAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBtYXhCeXRlcz0wLCBiYWNrdXBDb3VudD0wLCBlbmNvZGluZz1Ob25lLCBkZWxheT0wKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBtYXhCeXRlcz0wLCBiYWNrdXBDb3VudD0wLCBlbmNvZGluZz1Ob25lLCBkZWxheT1GYWxzZSk6CiAgICAgICAgICIiIgogICAgICAgICBPcGVuIHRoZSBzcGVjaWZpZWQgZmlsZSBhbmQgdXNlIGl0IGFzIHRoZSBzdHJlYW0gZm9yIGxvZ2dpbmcuCiAKQEAgLTEyNywxNiArMTYxLDE3IEBACiAgICAgICAgICAgICBzZWxmLnN0cmVhbSA9IE5vbmUKICAgICAgICAgaWYgc2VsZi5iYWNrdXBDb3VudCA+IDA6CiAgICAgICAgICAgICBmb3IgaSBpbiByYW5nZShzZWxmLmJhY2t1cENvdW50IC0gMSwgMCwgLTEpOgotICAgICAgICAgICAgICAgIHNmbiA9ICIlcy4lZCIgJSAoc2VsZi5iYXNlRmlsZW5hbWUsIGkpCi0gICAgICAgICAgICAgICAgZGZuID0gIiVzLiVkIiAlIChzZWxmLmJhc2VGaWxlbmFtZSwgaSArIDEpCisgICAgICAgICAgICAgICAgc2ZuID0gc2VsZi5yb3RhdGlvbl9maWxlbmFtZSgiJXMuJWQiICUgKHNlbGYuYmFzZUZpbGVuYW1lLCBpKSkKKyAgICAgICAgICAgICAgICBkZm4gPSBzZWxmLnJvdGF0aW9uX2ZpbGVuYW1lKCIlcy4lZCIgJSAoc2VsZi5iYXNlRmlsZW5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgKyAxKSkKICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhzZm4pOgogICAgICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhkZm4pOgogICAgICAgICAgICAgICAgICAgICAgICAgb3MucmVtb3ZlKGRmbikKICAgICAgICAgICAgICAgICAgICAgb3MucmVuYW1lKHNmbiwgZGZuKQotICAgICAgICAgICAgZGZuID0gc2VsZi5iYXNlRmlsZW5hbWUgKyAiLjEiCisgICAgICAgICAgICBkZm4gPSBzZWxmLnJvdGF0aW9uX2ZpbGVuYW1lKHNlbGYuYmFzZUZpbGVuYW1lICsgIi4xIikKICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGRmbik6CiAgICAgICAgICAgICAgICAgb3MucmVtb3ZlKGRmbikKLSAgICAgICAgICAgIG9zLnJlbmFtZShzZWxmLmJhc2VGaWxlbmFtZSwgZGZuKQorICAgICAgICAgICAgc2VsZi5yb3RhdGUoc2VsZi5iYXNlRmlsZW5hbWUsIGRmbikKICAgICAgICAgc2VsZi5tb2RlID0gJ3cnCiAgICAgICAgIHNlbGYuc3RyZWFtID0gc2VsZi5fb3BlbigpCiAKQEAgLTE4NCwxOSArMjE5LDE5IEBACiAgICAgICAgIGlmIHNlbGYud2hlbiA9PSAnUyc6CiAgICAgICAgICAgICBzZWxmLmludGVydmFsID0gMSAjIG9uZSBzZWNvbmQKICAgICAgICAgICAgIHNlbGYuc3VmZml4ID0gIiVZLSVtLSVkXyVILSVNLSVTIgotICAgICAgICAgICAgc2VsZi5leHRNYXRjaCA9IHIiXlxkezR9LVxkezJ9LVxkezJ9X1xkezJ9LVxkezJ9LVxkezJ9JCIKKyAgICAgICAgICAgIHNlbGYuZXh0TWF0Y2ggPSByIl5cZHs0fS1cZHsyfS1cZHsyfV9cZHsyfS1cZHsyfS1cZHsyfShcLlx3Kyk/JCIKICAgICAgICAgZWxpZiBzZWxmLndoZW4gPT0gJ00nOgogICAgICAgICAgICAgc2VsZi5pbnRlcnZhbCA9IDYwICMgb25lIG1pbnV0ZQogICAgICAgICAgICAgc2VsZi5zdWZmaXggPSAiJVktJW0tJWRfJUgtJU0iCi0gICAgICAgICAgICBzZWxmLmV4dE1hdGNoID0gciJeXGR7NH0tXGR7Mn0tXGR7Mn1fXGR7Mn0tXGR7Mn0kIgorICAgICAgICAgICAgc2VsZi5leHRNYXRjaCA9IHIiXlxkezR9LVxkezJ9LVxkezJ9X1xkezJ9LVxkezJ9KFwuXHcrKT8kIgogICAgICAgICBlbGlmIHNlbGYud2hlbiA9PSAnSCc6CiAgICAgICAgICAgICBzZWxmLmludGVydmFsID0gNjAgKiA2MCAjIG9uZSBob3VyCiAgICAgICAgICAgICBzZWxmLnN1ZmZpeCA9ICIlWS0lbS0lZF8lSCIKLSAgICAgICAgICAgIHNlbGYuZXh0TWF0Y2ggPSByIl5cZHs0fS1cZHsyfS1cZHsyfV9cZHsyfSQiCisgICAgICAgICAgICBzZWxmLmV4dE1hdGNoID0gciJeXGR7NH0tXGR7Mn0tXGR7Mn1fXGR7Mn0oXC5cdyspPyQiCiAgICAgICAgIGVsaWYgc2VsZi53aGVuID09ICdEJyBvciBzZWxmLndoZW4gPT0gJ01JRE5JR0hUJzoKICAgICAgICAgICAgIHNlbGYuaW50ZXJ2YWwgPSA2MCAqIDYwICogMjQgIyBvbmUgZGF5CiAgICAgICAgICAgICBzZWxmLnN1ZmZpeCA9ICIlWS0lbS0lZCIKLSAgICAgICAgICAgIHNlbGYuZXh0TWF0Y2ggPSByIl5cZHs0fS1cZHsyfS1cZHsyfSQiCisgICAgICAgICAgICBzZWxmLmV4dE1hdGNoID0gciJeXGR7NH0tXGR7Mn0tXGR7Mn0oXC5cdyspPyQiCiAgICAgICAgIGVsaWYgc2VsZi53aGVuLnN0YXJ0c3dpdGgoJ1cnKToKICAgICAgICAgICAgIHNlbGYuaW50ZXJ2YWwgPSA2MCAqIDYwICogMjQgKiA3ICMgb25lIHdlZWsKICAgICAgICAgICAgIGlmIGxlbihzZWxmLndoZW4pICE9IDI6CkBAIC0yMDUsNyArMjQwLDcgQEAKICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJbnZhbGlkIGRheSBzcGVjaWZpZWQgZm9yIHdlZWtseSByb2xsb3ZlcjogJXMiICUgc2VsZi53aGVuKQogICAgICAgICAgICAgc2VsZi5kYXlPZldlZWsgPSBpbnQoc2VsZi53aGVuWzFdKQogICAgICAgICAgICAgc2VsZi5zdWZmaXggPSAiJVktJW0tJWQiCi0gICAgICAgICAgICBzZWxmLmV4dE1hdGNoID0gciJeXGR7NH0tXGR7Mn0tXGR7Mn0kIgorICAgICAgICAgICAgc2VsZi5leHRNYXRjaCA9IHIiXlxkezR9LVxkezJ9LVxkezJ9KFwuXHcrKT8kIgogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSW52YWxpZCByb2xsb3ZlciBpbnRlcnZhbCBzcGVjaWZpZWQ6ICVzIiAlIHNlbGYud2hlbikKIApAQCAtMzI4LDEwICszNjMsMTEgQEAKICAgICAgICAgICAgIHRpbWVUdXBsZSA9IHRpbWUuZ210aW1lKHQpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICB0aW1lVHVwbGUgPSB0aW1lLmxvY2FsdGltZSh0KQotICAgICAgICBkZm4gPSBzZWxmLmJhc2VGaWxlbmFtZSArICIuIiArIHRpbWUuc3RyZnRpbWUoc2VsZi5zdWZmaXgsIHRpbWVUdXBsZSkKKyAgICAgICAgZGZuID0gc2VsZi5yb3RhdGlvbl9maWxlbmFtZShzZWxmLmJhc2VGaWxlbmFtZSArICIuIiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZS5zdHJmdGltZShzZWxmLnN1ZmZpeCwgdGltZVR1cGxlKSkKICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZGZuKToKICAgICAgICAgICAgIG9zLnJlbW92ZShkZm4pCi0gICAgICAgIG9zLnJlbmFtZShzZWxmLmJhc2VGaWxlbmFtZSwgZGZuKQorICAgICAgICBzZWxmLnJvdGF0ZShzZWxmLmJhc2VGaWxlbmFtZSwgZGZuKQogICAgICAgICBpZiBzZWxmLmJhY2t1cENvdW50ID4gMDoKICAgICAgICAgICAgIGZvciBzIGluIHNlbGYuZ2V0RmlsZXNUb0RlbGV0ZSgpOgogICAgICAgICAgICAgICAgIG9zLnJlbW92ZShzKQpAQCAtMzcyLDcgKzQwOCw3IEBACiAgICAgVGhpcyBoYW5kbGVyIGlzIGJhc2VkIG9uIGEgc3VnZ2VzdGlvbiBhbmQgcGF0Y2ggYnkgQ2hhZCBKLgogICAgIFNjaHJvZWRlci4KICAgICAiIiIKLSAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBlbmNvZGluZz1Ob25lLCBkZWxheT0wKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBlbmNvZGluZz1Ob25lLCBkZWxheT1GYWxzZSk6CiAgICAgICAgIGxvZ2dpbmcuRmlsZUhhbmRsZXIuX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGUsIGVuY29kaW5nLCBkZWxheSkKICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHNlbGYuYmFzZUZpbGVuYW1lKToKICAgICAgICAgICAgIHNlbGYuZGV2LCBzZWxmLmlubyA9IC0xLCAtMQpAQCAtMzkwLDcgKzQyNiw3IEBACiAgICAgICAgICIiIgogICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoc2VsZi5iYXNlRmlsZW5hbWUpOgogICAgICAgICAgICAgc3RhdCA9IE5vbmUKLSAgICAgICAgICAgIGNoYW5nZWQgPSAxCisgICAgICAgICAgICBjaGFuZ2VkID0gVHJ1ZQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgc3RhdCA9IG9zLnN0YXQoc2VsZi5iYXNlRmlsZW5hbWUpCiAgICAgICAgICAgICBjaGFuZ2VkID0gKHN0YXRbU1RfREVWXSAhPSBzZWxmLmRldikgb3IgKHN0YXRbU1RfSU5PXSAhPSBzZWxmLmlubykKQEAgLTQyMCwxNSArNDU2LDE1IEBACiAgICAgICAgICIiIgogICAgICAgICBJbml0aWFsaXplcyB0aGUgaGFuZGxlciB3aXRoIGEgc3BlY2lmaWMgaG9zdCBhZGRyZXNzIGFuZCBwb3J0LgogCi0gICAgICAgIFRoZSBhdHRyaWJ1dGUgJ2Nsb3NlT25FcnJvcicgaXMgc2V0IHRvIDEgLSB3aGljaCBtZWFucyB0aGF0IGlmCi0gICAgICAgIGEgc29ja2V0IGVycm9yIG9jY3VycywgdGhlIHNvY2tldCBpcyBzaWxlbnRseSBjbG9zZWQgYW5kIHRoZW4KLSAgICAgICAgcmVvcGVuZWQgb24gdGhlIG5leHQgbG9nZ2luZyBjYWxsLgorICAgICAgICBXaGVuIHRoZSBhdHRyaWJ1dGUgKmNsb3NlT25FcnJvciogaXMgc2V0IHRvIFRydWUgLSBpZiBhIHNvY2tldCBlcnJvcgorICAgICAgICBvY2N1cnMsIHRoZSBzb2NrZXQgaXMgc2lsZW50bHkgY2xvc2VkIGFuZCB0aGVuIHJlb3BlbmVkIG9uIHRoZSBuZXh0CisgICAgICAgIGxvZ2dpbmcgY2FsbC4KICAgICAgICAgIiIiCiAgICAgICAgIGxvZ2dpbmcuSGFuZGxlci5fX2luaXRfXyhzZWxmKQogICAgICAgICBzZWxmLmhvc3QgPSBob3N0CiAgICAgICAgIHNlbGYucG9ydCA9IHBvcnQKICAgICAgICAgc2VsZi5zb2NrID0gTm9uZQotICAgICAgICBzZWxmLmNsb3NlT25FcnJvciA9IDAKKyAgICAgICAgc2VsZi5jbG9zZU9uRXJyb3IgPSBGYWxzZQogICAgICAgICBzZWxmLnJldHJ5VGltZSA9IE5vbmUKICAgICAgICAgIwogICAgICAgICAjIEV4cG9uZW50aWFsIGJhY2tvZmYgcGFyYW1ldGVycy4KQEAgLTQ0NSw4ICs0ODEsMTIgQEAKICAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKICAgICAgICAgaWYgaGFzYXR0cihzLCAnc2V0dGltZW91dCcpOgogICAgICAgICAgICAgcy5zZXR0aW1lb3V0KHRpbWVvdXQpCi0gICAgICAgIHMuY29ubmVjdCgoc2VsZi5ob3N0LCBzZWxmLnBvcnQpKQotICAgICAgICByZXR1cm4gcworICAgICAgICB0cnk6CisgICAgICAgICAgICBzLmNvbm5lY3QoKHNlbGYuaG9zdCwgc2VsZi5wb3J0KSkKKyAgICAgICAgICAgIHJldHVybiBzCisgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6CisgICAgICAgICAgICBzLmNsb3NlKCkKKyAgICAgICAgICAgIHJhaXNlCiAKICAgICBkZWYgY3JlYXRlU29ja2V0KHNlbGYpOgogICAgICAgICAiIiIKQEAgLTQ1OSw3ICs0OTksNyBAQAogICAgICAgICAjIGlzIHRoZSBmaXJzdCB0aW1lIGJhY2sgYWZ0ZXIgYSBkaXNjb25uZWN0LCBvcgogICAgICAgICAjIHdlJ3ZlIHdhaXRlZCBsb25nIGVub3VnaC4KICAgICAgICAgaWYgc2VsZi5yZXRyeVRpbWUgaXMgTm9uZToKLSAgICAgICAgICAgIGF0dGVtcHQgPSAxCisgICAgICAgICAgICBhdHRlbXB0ID0gVHJ1ZQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgYXR0ZW1wdCA9IChub3cgPj0gc2VsZi5yZXRyeVRpbWUpCiAgICAgICAgIGlmIGF0dGVtcHQ6CkBAIC00OTIsMTQgKzUzMiwxNCBAQAogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIoc2VsZi5zb2NrLCAic2VuZGFsbCIpOgogICAgICAgICAgICAgICAgICAgICBzZWxmLnNvY2suc2VuZGFsbChzKQotICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZWxzZTogI3ByYWdtYTogbm8gY292ZXIKICAgICAgICAgICAgICAgICAgICAgc2VudHNvZmFyID0gMAogICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gbGVuKHMpCiAgICAgICAgICAgICAgICAgICAgIHdoaWxlIGxlZnQgPiAwOgogICAgICAgICAgICAgICAgICAgICAgICAgc2VudCA9IHNlbGYuc29jay5zZW5kKHNbc2VudHNvZmFyOl0pCiAgICAgICAgICAgICAgICAgICAgICAgICBzZW50c29mYXIgPSBzZW50c29mYXIgKyBzZW50CiAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gbGVmdCAtIHNlbnQKLSAgICAgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6CisgICAgICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgICAgIHNlbGYuc29jay5jbG9zZSgpCiAgICAgICAgICAgICAgICAgc2VsZi5zb2NrID0gTm9uZSAgIyBzbyB3ZSBjYW4gY2FsbCBjcmVhdGVTb2NrZXQgbmV4dCB0aW1lCiAKQEAgLTU0NCw3ICs1ODQsNyBAQAogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzID0gc2VsZi5tYWtlUGlja2xlKHJlY29yZCkKICAgICAgICAgICAgIHNlbGYuc2VuZChzKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKQEAgLTU3OCw3ICs2MTgsNyBAQAogICAgICAgICBJbml0aWFsaXplcyB0aGUgaGFuZGxlciB3aXRoIGEgc3BlY2lmaWMgaG9zdCBhZGRyZXNzIGFuZCBwb3J0LgogICAgICAgICAiIiIKICAgICAgICAgU29ja2V0SGFuZGxlci5fX2luaXRfXyhzZWxmLCBob3N0LCBwb3J0KQotICAgICAgICBzZWxmLmNsb3NlT25FcnJvciA9IDAKKyAgICAgICAgc2VsZi5jbG9zZU9uRXJyb3IgPSBGYWxzZQogCiAgICAgZGVmIG1ha2VTb2NrZXQoc2VsZik6CiAgICAgICAgICIiIgpAQCAtNzE5LDEwICs3NTksMTAgQEAKICAgICAgICAgc2VsZi5zb2NrdHlwZSA9IHNvY2t0eXBlCiAKICAgICAgICAgaWYgaXNpbnN0YW5jZShhZGRyZXNzLCBzdHIpOgotICAgICAgICAgICAgc2VsZi51bml4c29ja2V0ID0gMQorICAgICAgICAgICAgc2VsZi51bml4c29ja2V0ID0gVHJ1ZQogICAgICAgICAgICAgc2VsZi5fY29ubmVjdF91bml4c29ja2V0KGFkZHJlc3MpCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLnVuaXhzb2NrZXQgPSAwCisgICAgICAgICAgICBzZWxmLnVuaXhzb2NrZXQgPSBGYWxzZQogICAgICAgICAgICAgc2VsZi5zb2NrZXQgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrdHlwZSkKICAgICAgICAgICAgIGlmIHNvY2t0eXBlID09IHNvY2tldC5TT0NLX1NUUkVBTToKICAgICAgICAgICAgICAgICBzZWxmLnNvY2tldC5jb25uZWN0KGFkZHJlc3MpCkBAIC03NTcsOCArNzk3LDcgQEAKICAgICAgICAgIiIiCiAgICAgICAgIHNlbGYuYWNxdWlyZSgpCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIGlmIHNlbGYudW5peHNvY2tldDoKLSAgICAgICAgICAgICAgICBzZWxmLnNvY2tldC5jbG9zZSgpCisgICAgICAgICAgICBzZWxmLnNvY2tldC5jbG9zZSgpCiAgICAgICAgICAgICBsb2dnaW5nLkhhbmRsZXIuY2xvc2Uoc2VsZikKICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIHNlbGYucmVsZWFzZSgpCkBAIC03NzMsNiArODEyLDcgQEAKICAgICAgICAgIiIiCiAgICAgICAgIHJldHVybiBzZWxmLnByaW9yaXR5X21hcC5nZXQobGV2ZWxOYW1lLCAid2FybmluZyIpCiAKKyAgICBpZGVudCA9ICcnICAgICAgICAgICMgcHJlcGVuZGVkIHRvIGFsbCBtZXNzYWdlcwogICAgIGFwcGVuZF9udWwgPSBUcnVlICAgIyBzb21lIG9sZCBzeXNsb2cgZGFlbW9ucyBleHBlY3QgYSBOVUwgdGVybWluYXRvcgogCiAgICAgZGVmIGVtaXQoc2VsZiwgcmVjb3JkKToKQEAgLTc4Myw2ICs4MjMsOCBAQAogICAgICAgICBleGNlcHRpb24gaW5mb3JtYXRpb24gaXMgcHJlc2VudCwgaXQgaXMgTk9UIHNlbnQgdG8gdGhlIHNlcnZlci4KICAgICAgICAgIiIiCiAgICAgICAgIG1zZyA9IHNlbGYuZm9ybWF0KHJlY29yZCkKKyAgICAgICAgaWYgc2VsZi5pZGVudDoKKyAgICAgICAgICAgIG1zZyA9IHNlbGYuaWRlbnQgKyBtc2cKICAgICAgICAgaWYgc2VsZi5hcHBlbmRfbnVsOgogICAgICAgICAgICAgbXNnICs9ICdcMDAwJwogICAgICAgICAiIiIKQEAgLTc5NCw5ICs4MzYsNyBAQAogICAgICAgICBwcmlvID0gcHJpby5lbmNvZGUoJ3V0Zi04JykKICAgICAgICAgIyBNZXNzYWdlIGlzIGEgc3RyaW5nLiBDb252ZXJ0IHRvIGJ5dGVzIGFzIHJlcXVpcmVkIGJ5IFJGQyA1NDI0CiAgICAgICAgIG1zZyA9IG1zZy5lbmNvZGUoJ3V0Zi04JykKLSAgICAgICAgaWYgY29kZWNzOgotICAgICAgICAgICAgbXNnID0gY29kZWNzLkJPTV9VVEY4ICsgbXNnCi0gICAgICAgIG1zZyA9IHByaW8gKyBtc2cKKyAgICAgICAgbXNnID0gcHJpbyArIEJPTV9VVEY4ICsgbXNnCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGlmIHNlbGYudW5peHNvY2tldDoKICAgICAgICAgICAgICAgICB0cnk6CkBAIC04MDgsNyArODQ4LDcgQEAKICAgICAgICAgICAgICAgICBzZWxmLnNvY2tldC5zZW5kdG8obXNnLCBzZWxmLmFkZHJlc3MpCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHNlbGYuc29ja2V0LnNlbmRhbGwobXNnKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKQEAgLTg4NSw3ICs5MjUsNyBAQAogICAgICAgICAgICAgICAgIHNtdHAubG9naW4oc2VsZi51c2VybmFtZSwgc2VsZi5wYXNzd29yZCkKICAgICAgICAgICAgIHNtdHAuc2VuZG1haWwoc2VsZi5mcm9tYWRkciwgc2VsZi50b2FkZHJzLCBtc2cpCiAgICAgICAgICAgICBzbXRwLnF1aXQoKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKQEAgLTk3Miw3ICsxMDEyLDcgQEAKICAgICAgICAgICAgICAgICB0eXBlID0gc2VsZi5nZXRFdmVudFR5cGUocmVjb3JkKQogICAgICAgICAgICAgICAgIG1zZyA9IHNlbGYuZm9ybWF0KHJlY29yZCkKICAgICAgICAgICAgICAgICBzZWxmLl93ZWx1LlJlcG9ydEV2ZW50KHNlbGYuYXBwbmFtZSwgaWQsIGNhdCwgdHlwZSwgW21zZ10pCi0gICAgICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgICAgIGV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQsIFN5c3RlbUV4aXQpOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICAgICAgc2VsZi5oYW5kbGVFcnJvcihyZWNvcmQpCkBAIC0xMDU1LDkgKzEwOTUsMTEgQEAKICAgICAgICAgICAgICAgICBzID0gKCd1JXM6JXMnICUgc2VsZi5jcmVkZW50aWFscykuZW5jb2RlKCd1dGYtOCcpCiAgICAgICAgICAgICAgICAgcyA9ICdCYXNpYyAnICsgYmFzZTY0LmI2NGVuY29kZShzKS5zdHJpcCgpCiAgICAgICAgICAgICAgICAgaC5wdXRoZWFkZXIoJ0F1dGhvcml6YXRpb24nLCBzKQotICAgICAgICAgICAgaC5lbmRoZWFkZXJzKGRhdGEgaWYgc2VsZi5tZXRob2QgPT0gIlBPU1QiIGVsc2UgTm9uZSkKKyAgICAgICAgICAgIGguZW5kaGVhZGVycygpCisgICAgICAgICAgICBpZiBzZWxmLm1ldGhvZCA9PSAiUE9TVCI6CisgICAgICAgICAgICAgICAgaC5zZW5kKGRhdGEuZW5jb2RlKCd1dGYtOCcpKQogICAgICAgICAgICAgaC5nZXRyZXNwb25zZSgpICAgICNjYW4ndCBkbyBhbnl0aGluZyB3aXRoIHRoZSByZXN1bHQKLSAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6CisgICAgICAgIGV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQsIFN5c3RlbUV4aXQpOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgcmFpc2UKICAgICAgICAgZXhjZXB0OgogICAgICAgICAgICAgc2VsZi5oYW5kbGVFcnJvcihyZWNvcmQpCkBAIC0xMjM5LDcgKzEyODEsNyBAQAogICAgICAgICAiIiIKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgc2VsZi5lbnF1ZXVlKHNlbGYucHJlcGFyZShyZWNvcmQpKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKQEAgLTEzMzYsNiArMTM3OCwxNiBAQAogICAgICAgICAgICAgICAgIGV4Y2VwdCBxdWV1ZS5FbXB0eToKICAgICAgICAgICAgICAgICAgICAgYnJlYWsKIAorICAgICAgICBkZWYgZW5xdWV1ZV9zZW50aW5lbChzZWxmKToKKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgVGhpcyBpcyB1c2VkIHRvIGVucXVldWUgdGhlIHNlbnRpbmVsIHJlY29yZC4KKworICAgICAgICAgICAgVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gdXNlcyBwdXRfbm93YWl0LiBZb3UgbWF5IHdhbnQgdG8gb3ZlcnJpZGUgdGhpcworICAgICAgICAgICAgbWV0aG9kIGlmIHlvdSB3YW50IHRvIHVzZSB0aW1lb3V0cyBvciB3b3JrIHdpdGggY3VzdG9tIHF1ZXVlCisgICAgICAgICAgICBpbXBsZW1lbnRhdGlvbnMuCisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIHNlbGYucXVldWUucHV0X25vd2FpdChzZWxmLl9zZW50aW5lbCkKKwogICAgICAgICBkZWYgc3RvcChzZWxmKToKICAgICAgICAgICAgICIiIgogICAgICAgICAgICAgU3RvcCB0aGUgbGlzdGVuZXIuCkBAIC0xMzQ1LDYgKzEzOTcsNiBAQAogICAgICAgICAgICAgbWF5IGJlIHNvbWUgcmVjb3JkcyBzdGlsbCBsZWZ0IG9uIHRoZSBxdWV1ZSwgd2hpY2ggd29uJ3QgYmUgcHJvY2Vzc2VkLgogICAgICAgICAgICAgIiIiCiAgICAgICAgICAgICBzZWxmLl9zdG9wLnNldCgpCi0gICAgICAgICAgICBzZWxmLnF1ZXVlLnB1dF9ub3dhaXQoc2VsZi5fc2VudGluZWwpCisgICAgICAgICAgICBzZWxmLmVucXVldWVfc2VudGluZWwoKQogICAgICAgICAgICAgc2VsZi5fdGhyZWFkLmpvaW4oKQogICAgICAgICAgICAgc2VsZi5fdGhyZWFkID0gTm9uZQpkaWZmIC0tZ2l0IGEvTGliL2x6bWEucHkgYi9MaWIvbHptYS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNzg2OTkzCi0tLSAvZGV2L251bGwKKysrIGIvTGliL2x6bWEucHkKQEAgLTAsMCArMSw0MDEgQEAKKyIiIkludGVyZmFjZSB0byB0aGUgbGlibHptYSBjb21wcmVzc2lvbiBsaWJyYXJ5LgorCitUaGlzIG1vZHVsZSBwcm92aWRlcyBhIGNsYXNzIGZvciByZWFkaW5nIGFuZCB3cml0aW5nIGNvbXByZXNzZWQgZmlsZXMsCitjbGFzc2VzIGZvciBpbmNyZW1lbnRhbCAoZGUpY29tcHJlc3Npb24sIGFuZCBjb252ZW5pZW5jZSBmdW5jdGlvbnMgZm9yCitvbmUtc2hvdCAoZGUpY29tcHJlc3Npb24uCisKK1RoZXNlIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucyBzdXBwb3J0IGJvdGggdGhlIFhaIGFuZCBsZWdhY3kgTFpNQQorY29udGFpbmVyIGZvcm1hdHMsIGFzIHdlbGwgYXMgcmF3IGNvbXByZXNzZWQgZGF0YSBzdHJlYW1zLgorIiIiCisKK19fYWxsX18gPSBbCisgICAgIkNIRUNLX05PTkUiLCAiQ0hFQ0tfQ1JDMzIiLCAiQ0hFQ0tfQ1JDNjQiLCAiQ0hFQ0tfU0hBMjU2IiwKKyAgICAiQ0hFQ0tfSURfTUFYIiwgIkNIRUNLX1VOS05PV04iLAorICAgICJGSUxURVJfTFpNQTEiLCAiRklMVEVSX0xaTUEyIiwgIkZJTFRFUl9ERUxUQSIsICJGSUxURVJfWDg2IiwgIkZJTFRFUl9JQTY0IiwKKyAgICAiRklMVEVSX0FSTSIsICJGSUxURVJfQVJNVEhVTUIiLCAiRklMVEVSX1BPV0VSUEMiLCAiRklMVEVSX1NQQVJDIiwKKyAgICAiRk9STUFUX0FVVE8iLCAiRk9STUFUX1haIiwgIkZPUk1BVF9BTE9ORSIsICJGT1JNQVRfUkFXIiwKKyAgICAiTUZfSEMzIiwgIk1GX0hDNCIsICJNRl9CVDIiLCAiTUZfQlQzIiwgIk1GX0JUNCIsCisgICAgIk1PREVfRkFTVCIsICJNT0RFX05PUk1BTCIsICJQUkVTRVRfREVGQVVMVCIsICJQUkVTRVRfRVhUUkVNRSIsCisKKyAgICAiTFpNQUNvbXByZXNzb3IiLCAiTFpNQURlY29tcHJlc3NvciIsICJMWk1BRmlsZSIsICJMWk1BRXJyb3IiLAorICAgICJjb21wcmVzcyIsICJkZWNvbXByZXNzIiwgImNoZWNrX2lzX3N1cHBvcnRlZCIsCitdCisKK2ltcG9ydCBpbworZnJvbSBfbHptYSBpbXBvcnQgKgorCisKK19NT0RFX0NMT1NFRCAgID0gMAorX01PREVfUkVBRCAgICAgPSAxCitfTU9ERV9SRUFEX0VPRiA9IDIKK19NT0RFX1dSSVRFICAgID0gMworCitfQlVGRkVSX1NJWkUgPSA4MTkyCisKKworY2xhc3MgTFpNQUZpbGUoaW8uQnVmZmVyZWRJT0Jhc2UpOgorCisgICAgIiIiQSBmaWxlIG9iamVjdCBwcm92aWRpbmcgdHJhbnNwYXJlbnQgTFpNQSAoZGUpY29tcHJlc3Npb24uCisKKyAgICBBbiBMWk1BRmlsZSBjYW4gYWN0IGFzIGEgd3JhcHBlciBmb3IgYW4gZXhpc3RpbmcgZmlsZSBvYmplY3QsIG9yCisgICAgcmVmZXIgZGlyZWN0bHkgdG8gYSBuYW1lZCBmaWxlIG9uIGRpc2suCisKKyAgICBOb3RlIHRoYXQgTFpNQUZpbGUgcHJvdmlkZXMgYSAqYmluYXJ5KiBmaWxlIGludGVyZmFjZSAtIGRhdGEgcmVhZAorICAgIGlzIHJldHVybmVkIGFzIGJ5dGVzLCBhbmQgZGF0YSB0byBiZSB3cml0dGVuIG11c3QgYmUgZ2l2ZW4gYXMgYnl0ZXMuCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWU9Tm9uZSwgbW9kZT0iciIsICosCisgICAgICAgICAgICAgICAgIGZpbGVvYmo9Tm9uZSwgZm9ybWF0PU5vbmUsIGNoZWNrPS0xLAorICAgICAgICAgICAgICAgICBwcmVzZXQ9Tm9uZSwgZmlsdGVycz1Ob25lKToKKyAgICAgICAgIiIiT3BlbiBhbiBMWk1BLWNvbXByZXNzZWQgZmlsZS4KKworICAgICAgICBJZiBmaWxlbmFtZSBpcyBnaXZlbiwgb3BlbiB0aGUgbmFtZWQgZmlsZS4gT3RoZXJ3aXNlLCBvcGVyYXRlIG9uCisgICAgICAgIHRoZSBmaWxlIG9iamVjdCBnaXZlbiBieSBmaWxlb2JqLiBFeGFjdGx5IG9uZSBvZiB0aGVzZSB0d28KKyAgICAgICAgcGFyYW1ldGVycyBzaG91bGQgYmUgcHJvdmlkZWQuCisKKyAgICAgICAgbW9kZSBjYW4gYmUgInIiIGZvciByZWFkaW5nIChkZWZhdWx0KSwgInciIGZvciAob3Zlcil3cml0aW5nLCBvcgorICAgICAgICAiYSIgZm9yIGFwcGVuZGluZy4KKworICAgICAgICBmb3JtYXQgc3BlY2lmaWVzIHRoZSBjb250YWluZXIgZm9ybWF0IHRvIHVzZSBmb3IgdGhlIGZpbGUuCisgICAgICAgIElmIG1vZGUgaXMgInIiLCB0aGlzIGRlZmF1bHRzIHRvIEZPUk1BVF9BVVRPLiBPdGhlcndpc2UsIHRoZQorICAgICAgICBkZWZhdWx0IGlzIEZPUk1BVF9YWi4KKworICAgICAgICBjaGVjayBzcGVjaWZpZXMgdGhlIGludGVncml0eSBjaGVjayB0byB1c2UuIFRoaXMgYXJndW1lbnQgY2FuCisgICAgICAgIG9ubHkgYmUgdXNlZCB3aGVuIG9wZW5pbmcgYSBmaWxlIGZvciB3cml0aW5nLiBGb3IgRk9STUFUX1haLAorICAgICAgICB0aGUgZGVmYXVsdCBpcyBDSEVDS19DUkM2NC4gRk9STUFUX0FMT05FIGFuZCBGT1JNQVRfUkFXIGRvIG5vdAorICAgICAgICBzdXBwb3J0IGludGVncml0eSBjaGVja3MgLSBmb3IgdGhlc2UgZm9ybWF0cywgY2hlY2sgbXVzdCBiZQorICAgICAgICBvbWl0dGVkLCBvciBiZSBDSEVDS19OT05FLgorCisgICAgICAgIFdoZW4gb3BlbmluZyBhIGZpbGUgZm9yIHJlYWRpbmcsIHRoZSAqcHJlc2V0KiBhcmd1bWVudCBpcyBub3QKKyAgICAgICAgbWVhbmluZ2Z1bCwgYW5kIHNob3VsZCBiZSBvbWl0dGVkLiBUaGUgKmZpbHRlcnMqIGFyZ3VtZW50IHNob3VsZAorICAgICAgICBhbHNvIGJlIG9taXR0ZWQsIGV4Y2VwdCB3aGVuIGZvcm1hdCBpcyBGT1JNQVRfUkFXIChpbiB3aGljaCBjYXNlCisgICAgICAgIGl0IGlzIHJlcXVpcmVkKS4KKworICAgICAgICBXaGVuIG9wZW5pbmcgYSBmaWxlIGZvciB3cml0aW5nLCB0aGUgc2V0dGluZ3MgdXNlZCBieSB0aGUKKyAgICAgICAgY29tcHJlc3NvciBjYW4gYmUgc3BlY2lmaWVkIGVpdGhlciBhcyBhIHByZXNldCBjb21wcmVzc2lvbgorICAgICAgICBsZXZlbCAod2l0aCB0aGUgKnByZXNldCogYXJndW1lbnQpLCBvciBpbiBkZXRhaWwgYXMgYSBjdXN0b20KKyAgICAgICAgZmlsdGVyIGNoYWluICh3aXRoIHRoZSAqZmlsdGVycyogYXJndW1lbnQpLiBGb3IgRk9STUFUX1haIGFuZAorICAgICAgICBGT1JNQVRfQUxPTkUsIHRoZSBkZWZhdWx0IGlzIHRvIHVzZSB0aGUgUFJFU0VUX0RFRkFVTFQgcHJlc2V0CisgICAgICAgIGxldmVsLiBGb3IgRk9STUFUX1JBVywgdGhlIGNhbGxlciBtdXN0IGFsd2F5cyBzcGVjaWZ5IGEgZmlsdGVyCisgICAgICAgIGNoYWluOyB0aGUgcmF3IGNvbXByZXNzb3IgZG9lcyBub3Qgc3VwcG9ydCBwcmVzZXQgY29tcHJlc3Npb24KKyAgICAgICAgbGV2ZWxzLgorCisgICAgICAgIHByZXNldCAoaWYgcHJvdmlkZWQpIHNob3VsZCBiZSBhbiBpbnRlZ2VyIGluIHRoZSByYW5nZSAwLTksCisgICAgICAgIG9wdGlvbmFsbHkgT1ItZWQgd2l0aCB0aGUgY29uc3RhbnQgUFJFU0VUX0VYVFJFTUUuCisKKyAgICAgICAgZmlsdGVycyAoaWYgcHJvdmlkZWQpIHNob3VsZCBiZSBhIHNlcXVlbmNlIG9mIGRpY3RzLiBFYWNoIGRpY3QKKyAgICAgICAgc2hvdWxkIGhhdmUgYW4gZW50cnkgZm9yICJpZCIgaW5kaWNhdGluZyBJRCBvZiB0aGUgZmlsdGVyLCBwbHVzCisgICAgICAgIGFkZGl0aW9uYWwgZW50cmllcyBmb3Igb3B0aW9ucyB0byB0aGUgZmlsdGVyLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fZnAgPSBOb25lCisgICAgICAgIHNlbGYuX2Nsb3NlZnAgPSBGYWxzZQorICAgICAgICBzZWxmLl9tb2RlID0gX01PREVfQ0xPU0VECisgICAgICAgIHNlbGYuX3BvcyA9IDAKKyAgICAgICAgc2VsZi5fc2l6ZSA9IC0xCisKKyAgICAgICAgaWYgbW9kZSA9PSAiciI6CisgICAgICAgICAgICBpZiBjaGVjayAhPSAtMToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJDYW5ub3Qgc3BlY2lmeSBhbiBpbnRlZ3JpdHkgY2hlY2sgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIndoZW4gb3BlbmluZyBhIGZpbGUgZm9yIHJlYWRpbmciKQorICAgICAgICAgICAgaWYgcHJlc2V0IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkNhbm5vdCBzcGVjaWZ5IGEgcHJlc2V0IGNvbXByZXNzaW9uICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsZXZlbCB3aGVuIG9wZW5pbmcgYSBmaWxlIGZvciByZWFkaW5nIikKKyAgICAgICAgICAgIGlmIGZvcm1hdCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGZvcm1hdCA9IEZPUk1BVF9BVVRPCisgICAgICAgICAgICBtb2RlX2NvZGUgPSBfTU9ERV9SRUFECisgICAgICAgICAgICAjIFNhdmUgdGhlIGFyZ3MgdG8gcGFzcyB0byB0aGUgTFpNQURlY29tcHJlc3NvciBpbml0aWFsaXplci4KKyAgICAgICAgICAgICMgSWYgdGhlIGZpbGUgY29udGFpbnMgbXVsdGlwbGUgY29tcHJlc3NlZCBzdHJlYW1zLCBlYWNoCisgICAgICAgICAgICAjIHN0cmVhbSB3aWxsIG5lZWQgYSBzZXBhcmF0ZSBkZWNvbXByZXNzb3Igb2JqZWN0LgorICAgICAgICAgICAgc2VsZi5faW5pdF9hcmdzID0geyJmb3JtYXQiOmZvcm1hdCwgImZpbHRlcnMiOmZpbHRlcnN9CisgICAgICAgICAgICBzZWxmLl9kZWNvbXByZXNzb3IgPSBMWk1BRGVjb21wcmVzc29yKCoqc2VsZi5faW5pdF9hcmdzKQorICAgICAgICAgICAgc2VsZi5fYnVmZmVyID0gTm9uZQorICAgICAgICBlbGlmIG1vZGUgaW4gKCJ3IiwgImEiKToKKyAgICAgICAgICAgIGlmIGZvcm1hdCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGZvcm1hdCA9IEZPUk1BVF9YWgorICAgICAgICAgICAgbW9kZV9jb2RlID0gX01PREVfV1JJVEUKKyAgICAgICAgICAgIHNlbGYuX2NvbXByZXNzb3IgPSBMWk1BQ29tcHJlc3Nvcihmb3JtYXQ9Zm9ybWF0LCBjaGVjaz1jaGVjaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVzZXQ9cHJlc2V0LCBmaWx0ZXJzPWZpbHRlcnMpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJbnZhbGlkIG1vZGU6IHshcn0iLmZvcm1hdChtb2RlKSkKKworICAgICAgICBpZiBmaWxlbmFtZSBpcyBub3QgTm9uZSBhbmQgZmlsZW9iaiBpcyBOb25lOgorICAgICAgICAgICAgbW9kZSArPSAiYiIKKyAgICAgICAgICAgIHNlbGYuX2ZwID0gb3BlbihmaWxlbmFtZSwgbW9kZSkKKyAgICAgICAgICAgIHNlbGYuX2Nsb3NlZnAgPSBUcnVlCisgICAgICAgICAgICBzZWxmLl9tb2RlID0gbW9kZV9jb2RlCisgICAgICAgIGVsaWYgZmlsZW9iaiBpcyBub3QgTm9uZSBhbmQgZmlsZW5hbWUgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2ZwID0gZmlsZW9iagorICAgICAgICAgICAgc2VsZi5fbW9kZSA9IG1vZGVfY29kZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiTXVzdCBnaXZlIGV4YWN0bHkgb25lIG9mIGZpbGVuYW1lIGFuZCBmaWxlb2JqIikKKworICAgIGRlZiBjbG9zZShzZWxmKToKKyAgICAgICAgIiIiRmx1c2ggYW5kIGNsb3NlIHRoZSBmaWxlLgorCisgICAgICAgIE1heSBiZSBjYWxsZWQgbW9yZSB0aGFuIG9uY2Ugd2l0aG91dCBlcnJvci4gT25jZSB0aGUgZmlsZSBpcworICAgICAgICBjbG9zZWQsIGFueSBvdGhlciBvcGVyYXRpb24gb24gaXQgd2lsbCByYWlzZSBhIFZhbHVlRXJyb3IuCisgICAgICAgICIiIgorICAgICAgICBpZiBzZWxmLl9tb2RlID09IF9NT0RFX0NMT1NFRDoKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICB0cnk6CisgICAgICAgICAgICBpZiBzZWxmLl9tb2RlIGluIChfTU9ERV9SRUFELCBfTU9ERV9SRUFEX0VPRik6CisgICAgICAgICAgICAgICAgc2VsZi5fZGVjb21wcmVzc29yID0gTm9uZQorICAgICAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKyAgICAgICAgICAgIGVsaWYgc2VsZi5fbW9kZSA9PSBfTU9ERV9XUklURToKKyAgICAgICAgICAgICAgICBzZWxmLl9mcC53cml0ZShzZWxmLl9jb21wcmVzc29yLmZsdXNoKCkpCisgICAgICAgICAgICAgICAgc2VsZi5fY29tcHJlc3NvciA9IE5vbmUKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBpZiBzZWxmLl9jbG9zZWZwOgorICAgICAgICAgICAgICAgICAgICBzZWxmLl9mcC5jbG9zZSgpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHNlbGYuX2ZwID0gTm9uZQorICAgICAgICAgICAgICAgIHNlbGYuX2Nsb3NlZnAgPSBGYWxzZQorICAgICAgICAgICAgICAgIHNlbGYuX21vZGUgPSBfTU9ERV9DTE9TRUQKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBjbG9zZWQoc2VsZik6CisgICAgICAgICIiIlRydWUgaWYgdGhpcyBmaWxlIGlzIGNsb3NlZC4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX21vZGUgPT0gX01PREVfQ0xPU0VECisKKyAgICBkZWYgZmlsZW5vKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGZpbGUgZGVzY3JpcHRvciBmb3IgdGhlIHVuZGVybHlpbmcgZmlsZS4iIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfbm90X2Nsb3NlZCgpCisgICAgICAgIHJldHVybiBzZWxmLl9mcC5maWxlbm8oKQorCisgICAgZGVmIHNlZWthYmxlKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gd2hldGhlciB0aGUgZmlsZSBzdXBwb3J0cyBzZWVraW5nLiIiIgorICAgICAgICByZXR1cm4gc2VsZi5yZWFkYWJsZSgpIGFuZCBzZWxmLl9mcC5zZWVrYWJsZSgpCisKKyAgICBkZWYgcmVhZGFibGUoc2VsZik6CisgICAgICAgICIiIlJldHVybiB3aGV0aGVyIHRoZSBmaWxlIHdhcyBvcGVuZWQgZm9yIHJlYWRpbmcuIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX25vdF9jbG9zZWQoKQorICAgICAgICByZXR1cm4gc2VsZi5fbW9kZSBpbiAoX01PREVfUkVBRCwgX01PREVfUkVBRF9FT0YpCisKKyAgICBkZWYgd3JpdGFibGUoc2VsZik6CisgICAgICAgICIiIlJldHVybiB3aGV0aGVyIHRoZSBmaWxlIHdhcyBvcGVuZWQgZm9yIHdyaXRpbmcuIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX25vdF9jbG9zZWQoKQorICAgICAgICByZXR1cm4gc2VsZi5fbW9kZSA9PSBfTU9ERV9XUklURQorCisgICAgIyBNb2RlLWNoZWNraW5nIGhlbHBlciBmdW5jdGlvbnMuCisKKyAgICBkZWYgX2NoZWNrX25vdF9jbG9zZWQoc2VsZik6CisgICAgICAgIGlmIHNlbGYuY2xvc2VkOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSS9PIG9wZXJhdGlvbiBvbiBjbG9zZWQgZmlsZSIpCisKKyAgICBkZWYgX2NoZWNrX2Nhbl9yZWFkKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5yZWFkYWJsZSgpOgorICAgICAgICAgICAgcmFpc2UgaW8uVW5zdXBwb3J0ZWRPcGVyYXRpb24oIkZpbGUgbm90IG9wZW4gZm9yIHJlYWRpbmciKQorCisgICAgZGVmIF9jaGVja19jYW5fd3JpdGUoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLndyaXRhYmxlKCk6CisgICAgICAgICAgICByYWlzZSBpby5VbnN1cHBvcnRlZE9wZXJhdGlvbigiRmlsZSBub3Qgb3BlbiBmb3Igd3JpdGluZyIpCisKKyAgICBkZWYgX2NoZWNrX2Nhbl9zZWVrKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5yZWFkYWJsZSgpOgorICAgICAgICAgICAgcmFpc2UgaW8uVW5zdXBwb3J0ZWRPcGVyYXRpb24oIlNlZWtpbmcgaXMgb25seSBzdXBwb3J0ZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9uIGZpbGVzIG9wZW4gZm9yIHJlYWRpbmciKQorICAgICAgICBpZiBub3Qgc2VsZi5fZnAuc2Vla2FibGUoKToKKyAgICAgICAgICAgIHJhaXNlIGlvLlVuc3VwcG9ydGVkT3BlcmF0aW9uKCJUaGUgdW5kZXJseWluZyBmaWxlIG9iamVjdCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZG9lcyBub3Qgc3VwcG9ydCBzZWVraW5nIikKKworICAgICMgRmlsbCB0aGUgcmVhZGFoZWFkIGJ1ZmZlciBpZiBpdCBpcyBlbXB0eS4gUmV0dXJucyBGYWxzZSBvbiBFT0YuCisgICAgZGVmIF9maWxsX2J1ZmZlcihzZWxmKToKKyAgICAgICAgaWYgc2VsZi5fYnVmZmVyOgorICAgICAgICAgICAgcmV0dXJuIFRydWUKKworICAgICAgICBpZiBzZWxmLl9kZWNvbXByZXNzb3IudW51c2VkX2RhdGE6CisgICAgICAgICAgICByYXdibG9jayA9IHNlbGYuX2RlY29tcHJlc3Nvci51bnVzZWRfZGF0YQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmF3YmxvY2sgPSBzZWxmLl9mcC5yZWFkKF9CVUZGRVJfU0laRSkKKworICAgICAgICBpZiBub3QgcmF3YmxvY2s6CisgICAgICAgICAgICBpZiBzZWxmLl9kZWNvbXByZXNzb3IuZW9mOgorICAgICAgICAgICAgICAgIHNlbGYuX21vZGUgPSBfTU9ERV9SRUFEX0VPRgorICAgICAgICAgICAgICAgIHNlbGYuX3NpemUgPSBzZWxmLl9wb3MKKyAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmFpc2UgRU9GRXJyb3IoIkNvbXByZXNzZWQgZmlsZSBlbmRlZCBiZWZvcmUgdGhlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZW5kLW9mLXN0cmVhbSBtYXJrZXIgd2FzIHJlYWNoZWQiKQorCisgICAgICAgICMgQ29udGludWUgdG8gbmV4dCBzdHJlYW0uCisgICAgICAgIGlmIHNlbGYuX2RlY29tcHJlc3Nvci5lb2Y6CisgICAgICAgICAgICBzZWxmLl9kZWNvbXByZXNzb3IgPSBMWk1BRGVjb21wcmVzc29yKCoqc2VsZi5faW5pdF9hcmdzKQorCisgICAgICAgIHNlbGYuX2J1ZmZlciA9IHNlbGYuX2RlY29tcHJlc3Nvci5kZWNvbXByZXNzKHJhd2Jsb2NrKQorICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgIyBSZWFkIGRhdGEgdW50aWwgRU9GLgorICAgICMgSWYgcmV0dXJuX2RhdGEgaXMgZmFsc2UsIGNvbnN1bWUgdGhlIGRhdGEgd2l0aG91dCByZXR1cm5pbmcgaXQuCisgICAgZGVmIF9yZWFkX2FsbChzZWxmLCByZXR1cm5fZGF0YT1UcnVlKToKKyAgICAgICAgYmxvY2tzID0gW10KKyAgICAgICAgd2hpbGUgc2VsZi5fZmlsbF9idWZmZXIoKToKKyAgICAgICAgICAgIGlmIHJldHVybl9kYXRhOgorICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoc2VsZi5fYnVmZmVyKQorICAgICAgICAgICAgc2VsZi5fcG9zICs9IGxlbihzZWxmLl9idWZmZXIpCisgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBOb25lCisgICAgICAgIGlmIHJldHVybl9kYXRhOgorICAgICAgICAgICAgcmV0dXJuIGIiIi5qb2luKGJsb2NrcykKKworICAgICMgUmVhZCBhIGJsb2NrIG9mIHVwIHRvIG4gYnl0ZXMuCisgICAgIyBJZiByZXR1cm5fZGF0YSBpcyBmYWxzZSwgY29uc3VtZSB0aGUgZGF0YSB3aXRob3V0IHJldHVybmluZyBpdC4KKyAgICBkZWYgX3JlYWRfYmxvY2soc2VsZiwgbiwgcmV0dXJuX2RhdGE9VHJ1ZSk6CisgICAgICAgIGJsb2NrcyA9IFtdCisgICAgICAgIHdoaWxlIG4gPiAwIGFuZCBzZWxmLl9maWxsX2J1ZmZlcigpOgorICAgICAgICAgICAgaWYgbiA8IGxlbihzZWxmLl9idWZmZXIpOgorICAgICAgICAgICAgICAgIGRhdGEgPSBzZWxmLl9idWZmZXJbOm5dCisgICAgICAgICAgICAgICAgc2VsZi5fYnVmZmVyID0gc2VsZi5fYnVmZmVyW246XQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBkYXRhID0gc2VsZi5fYnVmZmVyCisgICAgICAgICAgICAgICAgc2VsZi5fYnVmZmVyID0gTm9uZQorICAgICAgICAgICAgaWYgcmV0dXJuX2RhdGE6CisgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChkYXRhKQorICAgICAgICAgICAgc2VsZi5fcG9zICs9IGxlbihkYXRhKQorICAgICAgICAgICAgbiAtPSBsZW4oZGF0YSkKKyAgICAgICAgaWYgcmV0dXJuX2RhdGE6CisgICAgICAgICAgICByZXR1cm4gYiIiLmpvaW4oYmxvY2tzKQorCisgICAgZGVmIHBlZWsoc2VsZiwgc2l6ZT0tMSk6CisgICAgICAgICIiIlJldHVybiBidWZmZXJlZCBkYXRhIHdpdGhvdXQgYWR2YW5jaW5nIHRoZSBmaWxlIHBvc2l0aW9uLgorCisgICAgICAgIEFsd2F5cyByZXR1cm5zIGF0IGxlYXN0IG9uZSBieXRlIG9mIGRhdGEsIHVubGVzcyBhdCBFT0YuCisgICAgICAgIFRoZSBleGFjdCBudW1iZXIgb2YgYnl0ZXMgcmV0dXJuZWQgaXMgdW5zcGVjaWZpZWQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9jaGVja19jYW5fcmVhZCgpCisgICAgICAgIGlmIHNlbGYuX21vZGUgPT0gX01PREVfUkVBRF9FT0Ygb3Igbm90IHNlbGYuX2ZpbGxfYnVmZmVyKCk6CisgICAgICAgICAgICByZXR1cm4gYiIiCisgICAgICAgIHJldHVybiBzZWxmLl9idWZmZXIKKworICAgIGRlZiByZWFkKHNlbGYsIHNpemU9LTEpOgorICAgICAgICAiIiJSZWFkIHVwIHRvIHNpemUgdW5jb21wcmVzc2VkIGJ5dGVzIGZyb20gdGhlIGZpbGUuCisKKyAgICAgICAgSWYgc2l6ZSBpcyBuZWdhdGl2ZSBvciBvbWl0dGVkLCByZWFkIHVudGlsIEVPRiBpcyByZWFjaGVkLgorICAgICAgICBSZXR1cm5zIGIiIiBpZiB0aGUgZmlsZSBpcyBhbHJlYWR5IGF0IEVPRi4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2Nhbl9yZWFkKCkKKyAgICAgICAgaWYgc2VsZi5fbW9kZSA9PSBfTU9ERV9SRUFEX0VPRiBvciBzaXplID09IDA6CisgICAgICAgICAgICByZXR1cm4gYiIiCisgICAgICAgIGVsaWYgc2l6ZSA8IDA6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fcmVhZF9hbGwoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3JlYWRfYmxvY2soc2l6ZSkKKworICAgIGRlZiByZWFkMShzZWxmLCBzaXplPS0xKToKKyAgICAgICAgIiIiUmVhZCB1cCB0byBzaXplIHVuY29tcHJlc3NlZCBieXRlcyB3aXRoIGF0IG1vc3Qgb25lIHJlYWQKKyAgICAgICAgZnJvbSB0aGUgdW5kZXJseWluZyBzdHJlYW0uCisKKyAgICAgICAgUmV0dXJucyBiIiIgaWYgdGhlIGZpbGUgaXMgYXQgRU9GLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2FuX3JlYWQoKQorICAgICAgICBpZiAoc2l6ZSA9PSAwIG9yIHNlbGYuX21vZGUgPT0gX01PREVfUkVBRF9FT0Ygb3IKKyAgICAgICAgICAgIG5vdCBzZWxmLl9maWxsX2J1ZmZlcigpKToKKyAgICAgICAgICAgIHJldHVybiBiIiIKKyAgICAgICAgaWYgMCA8IHNpemUgPCBsZW4oc2VsZi5fYnVmZmVyKToKKyAgICAgICAgICAgIGRhdGEgPSBzZWxmLl9idWZmZXJbOnNpemVdCisgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBzZWxmLl9idWZmZXJbc2l6ZTpdCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBkYXRhID0gc2VsZi5fYnVmZmVyCisgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBOb25lCisgICAgICAgIHNlbGYuX3BvcyArPSBsZW4oZGF0YSkKKyAgICAgICAgcmV0dXJuIGRhdGEKKworICAgIGRlZiB3cml0ZShzZWxmLCBkYXRhKToKKyAgICAgICAgIiIiV3JpdGUgYSBieXRlcyBvYmplY3QgdG8gdGhlIGZpbGUuCisKKyAgICAgICAgUmV0dXJucyB0aGUgbnVtYmVyIG9mIHVuY29tcHJlc3NlZCBieXRlcyB3cml0dGVuLCB3aGljaCBpcworICAgICAgICBhbHdheXMgbGVuKGRhdGEpLiBOb3RlIHRoYXQgZHVlIHRvIGJ1ZmZlcmluZywgdGhlIGZpbGUgb24gZGlzaworICAgICAgICBtYXkgbm90IHJlZmxlY3QgdGhlIGRhdGEgd3JpdHRlbiB1bnRpbCBjbG9zZSgpIGlzIGNhbGxlZC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2Nhbl93cml0ZSgpCisgICAgICAgIGNvbXByZXNzZWQgPSBzZWxmLl9jb21wcmVzc29yLmNvbXByZXNzKGRhdGEpCisgICAgICAgIHNlbGYuX2ZwLndyaXRlKGNvbXByZXNzZWQpCisgICAgICAgIHNlbGYuX3BvcyArPSBsZW4oZGF0YSkKKyAgICAgICAgcmV0dXJuIGxlbihkYXRhKQorCisgICAgIyBSZXdpbmQgdGhlIGZpbGUgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgZGF0YSBzdHJlYW0uCisgICAgZGVmIF9yZXdpbmQoc2VsZik6CisgICAgICAgIHNlbGYuX2ZwLnNlZWsoMCwgMCkKKyAgICAgICAgc2VsZi5fbW9kZSA9IF9NT0RFX1JFQUQKKyAgICAgICAgc2VsZi5fcG9zID0gMAorICAgICAgICBzZWxmLl9kZWNvbXByZXNzb3IgPSBMWk1BRGVjb21wcmVzc29yKCoqc2VsZi5faW5pdF9hcmdzKQorICAgICAgICBzZWxmLl9idWZmZXIgPSBOb25lCisKKyAgICBkZWYgc2VlayhzZWxmLCBvZmZzZXQsIHdoZW5jZT0wKToKKyAgICAgICAgIiIiQ2hhbmdlIHRoZSBmaWxlIHBvc2l0aW9uLgorCisgICAgICAgIFRoZSBuZXcgcG9zaXRpb24gaXMgc3BlY2lmaWVkIGJ5IG9mZnNldCwgcmVsYXRpdmUgdG8gdGhlCisgICAgICAgIHBvc2l0aW9uIGluZGljYXRlZCBieSB3aGVuY2UuIFBvc3NpYmxlIHZhbHVlcyBmb3Igd2hlbmNlIGFyZToKKworICAgICAgICAgICAgMDogc3RhcnQgb2Ygc3RyZWFtIChkZWZhdWx0KTogb2Zmc2V0IG11c3Qgbm90IGJlIG5lZ2F0aXZlCisgICAgICAgICAgICAxOiBjdXJyZW50IHN0cmVhbSBwb3NpdGlvbgorICAgICAgICAgICAgMjogZW5kIG9mIHN0cmVhbTsgb2Zmc2V0IG11c3Qgbm90IGJlIHBvc2l0aXZlCisKKyAgICAgICAgUmV0dXJucyB0aGUgbmV3IGZpbGUgcG9zaXRpb24uCisKKyAgICAgICAgTm90ZSB0aGF0IHNlZWtpbmcgaXMgZW11bGF0ZWQsIHNwIGRlcGVuZGluZyBvbiB0aGUgcGFyYW1ldGVycywKKyAgICAgICAgdGhpcyBvcGVyYXRpb24gbWF5IGJlIGV4dHJlbWVseSBzbG93LgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2FuX3NlZWsoKQorCisgICAgICAgICMgUmVjYWxjdWxhdGUgb2Zmc2V0IGFzIGFuIGFic29sdXRlIGZpbGUgcG9zaXRpb24uCisgICAgICAgIGlmIHdoZW5jZSA9PSAwOgorICAgICAgICAgICAgcGFzcworICAgICAgICBlbGlmIHdoZW5jZSA9PSAxOgorICAgICAgICAgICAgb2Zmc2V0ID0gc2VsZi5fcG9zICsgb2Zmc2V0CisgICAgICAgIGVsaWYgd2hlbmNlID09IDI6CisgICAgICAgICAgICAjIFNlZWtpbmcgcmVsYXRpdmUgdG8gRU9GIC0gd2UgbmVlZCB0byBrbm93IHRoZSBmaWxlJ3Mgc2l6ZS4KKyAgICAgICAgICAgIGlmIHNlbGYuX3NpemUgPCAwOgorICAgICAgICAgICAgICAgIHNlbGYuX3JlYWRfYWxsKHJldHVybl9kYXRhPUZhbHNlKQorICAgICAgICAgICAgb2Zmc2V0ID0gc2VsZi5fc2l6ZSArIG9mZnNldAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSW52YWxpZCB2YWx1ZSBmb3Igd2hlbmNlOiB7fSIuZm9ybWF0KHdoZW5jZSkpCisKKyAgICAgICAgIyBNYWtlIGl0IHNvIHRoYXQgb2Zmc2V0IGlzIHRoZSBudW1iZXIgb2YgYnl0ZXMgdG8gc2tpcCBmb3J3YXJkLgorICAgICAgICBpZiBvZmZzZXQgPCBzZWxmLl9wb3M6CisgICAgICAgICAgICBzZWxmLl9yZXdpbmQoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgb2Zmc2V0IC09IHNlbGYuX3BvcworCisgICAgICAgICMgUmVhZCBhbmQgZGlzY2FyZCBkYXRhIHVudGlsIHdlIHJlYWNoIHRoZSBkZXNpcmVkIHBvc2l0aW9uLgorICAgICAgICBpZiBzZWxmLl9tb2RlICE9IF9NT0RFX1JFQURfRU9GOgorICAgICAgICAgICAgc2VsZi5fcmVhZF9ibG9jayhvZmZzZXQsIHJldHVybl9kYXRhPUZhbHNlKQorCisgICAgICAgIHJldHVybiBzZWxmLl9wb3MKKworICAgIGRlZiB0ZWxsKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbi4iIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfbm90X2Nsb3NlZCgpCisgICAgICAgIHJldHVybiBzZWxmLl9wb3MKKworCitkZWYgY29tcHJlc3MoZGF0YSwgZm9ybWF0PUZPUk1BVF9YWiwgY2hlY2s9LTEsIHByZXNldD1Ob25lLCBmaWx0ZXJzPU5vbmUpOgorICAgICIiIkNvbXByZXNzIGEgYmxvY2sgb2YgZGF0YS4KKworICAgIFJlZmVyIHRvIExaTUFDb21wcmVzc29yJ3MgZG9jc3RyaW5nIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZQorICAgIG9wdGlvbmFsIGFyZ3VtZW50cyAqZm9ybWF0KiwgKmNoZWNrKiwgKnByZXNldCogYW5kICpmaWx0ZXJzKi4KKworICAgIEZvciBpbmNyZW1lbnRhbCBjb21wcmVzc2lvbiwgdXNlIGFuIExaTUFDb21wcmVzc29yIG9iamVjdCBpbnN0ZWFkLgorICAgICIiIgorICAgIGNvbXAgPSBMWk1BQ29tcHJlc3Nvcihmb3JtYXQsIGNoZWNrLCBwcmVzZXQsIGZpbHRlcnMpCisgICAgcmV0dXJuIGNvbXAuY29tcHJlc3MoZGF0YSkgKyBjb21wLmZsdXNoKCkKKworCitkZWYgZGVjb21wcmVzcyhkYXRhLCBmb3JtYXQ9Rk9STUFUX0FVVE8sIG1lbWxpbWl0PU5vbmUsIGZpbHRlcnM9Tm9uZSk6CisgICAgIiIiRGVjb21wcmVzcyBhIGJsb2NrIG9mIGRhdGEuCisKKyAgICBSZWZlciB0byBMWk1BRGVjb21wcmVzc29yJ3MgZG9jc3RyaW5nIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZQorICAgIG9wdGlvbmFsIGFyZ3VtZW50cyAqZm9ybWF0KiwgKmNoZWNrKiBhbmQgKmZpbHRlcnMqLgorCisgICAgRm9yIGluY3JlbWVudGFsIGRlY29tcHJlc3Npb24sIHVzZSBhIExaTUFEZWNvbXByZXNzb3Igb2JqZWN0IGluc3RlYWQuCisgICAgIiIiCisgICAgcmVzdWx0cyA9IFtdCisgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgZGVjb21wID0gTFpNQURlY29tcHJlc3Nvcihmb3JtYXQsIG1lbWxpbWl0LCBmaWx0ZXJzKQorICAgICAgICByZXN1bHRzLmFwcGVuZChkZWNvbXAuZGVjb21wcmVzcyhkYXRhKSkKKyAgICAgICAgaWYgbm90IGRlY29tcC5lb2Y6CisgICAgICAgICAgICByYWlzZSBMWk1BRXJyb3IoIkNvbXByZXNzZWQgZGF0YSBlbmRlZCBiZWZvcmUgdGhlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZW5kLW9mLXN0cmVhbSBtYXJrZXIgd2FzIHJlYWNoZWQiKQorICAgICAgICBpZiBub3QgZGVjb21wLnVudXNlZF9kYXRhOgorICAgICAgICAgICAgcmV0dXJuIGIiIi5qb2luKHJlc3VsdHMpCisgICAgICAgICMgVGhlcmUgaXMgdW51c2VkIGRhdGEgbGVmdCBvdmVyLiBQcm9jZWVkIHRvIG5leHQgc3RyZWFtLgorICAgICAgICBkYXRhID0gZGVjb21wLnVudXNlZF9kYXRhCmRpZmYgLS1naXQgYS9MaWIvbWFpbGJveC5weSBiL0xpYi9tYWlsYm94LnB5CmluZGV4IGE2Nzc3MjkuLjMyNWI5YzkgMTAwNjQ0Ci0tLSBhL0xpYi9tYWlsYm94LnB5CisrKyBiL0xpYi9tYWlsYm94LnB5CkBAIC0xMTA2LDggKzExMDYsNyBAQAogICAgIGRlZiBnZXRfc2VxdWVuY2VzKHNlbGYpOgogICAgICAgICAiIiJSZXR1cm4gYSBuYW1lLXRvLWtleS1saXN0IGRpY3Rpb25hcnkgdG8gZGVmaW5lIGVhY2ggc2VxdWVuY2UuIiIiCiAgICAgICAgIHJlc3VsdHMgPSB7fQotICAgICAgICBmID0gb3Blbihvcy5wYXRoLmpvaW4oc2VsZi5fcGF0aCwgJy5taF9zZXF1ZW5jZXMnKSwgJ3InKQotICAgICAgICB0cnk6CisgICAgICAgIHdpdGggb3Blbihvcy5wYXRoLmpvaW4oc2VsZi5fcGF0aCwgJy5taF9zZXF1ZW5jZXMnKSwgJ3InLCBlbmNvZGluZz0nQVNDSUknKSBhcyBmOgogICAgICAgICAgICAgYWxsX2tleXMgPSBzZXQoc2VsZi5rZXlzKCkpCiAgICAgICAgICAgICBmb3IgbGluZSBpbiBmOgogICAgICAgICAgICAgICAgIHRyeToKQEAgLTExMjYsMTMgKzExMjUsMTEgQEAKICAgICAgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgcmFpc2UgRm9ybWF0RXJyb3IoJ0ludmFsaWQgc2VxdWVuY2Ugc3BlY2lmaWNhdGlvbjogJXMnICUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS5yc3RyaXAoKSkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIGYuY2xvc2UoKQogICAgICAgICByZXR1cm4gcmVzdWx0cwogCiAgICAgZGVmIHNldF9zZXF1ZW5jZXMoc2VsZiwgc2VxdWVuY2VzKToKICAgICAgICAgIiIiU2V0IHNlcXVlbmNlcyB1c2luZyB0aGUgZ2l2ZW4gbmFtZS10by1rZXktbGlzdCBkaWN0aW9uYXJ5LiIiIgotICAgICAgICBmID0gb3Blbihvcy5wYXRoLmpvaW4oc2VsZi5fcGF0aCwgJy5taF9zZXF1ZW5jZXMnKSwgJ3IrJykKKyAgICAgICAgZiA9IG9wZW4ob3MucGF0aC5qb2luKHNlbGYuX3BhdGgsICcubWhfc2VxdWVuY2VzJyksICdyKycsIGVuY29kaW5nPSdBU0NJSScpCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIG9zLmNsb3NlKG9zLm9wZW4oZi5uYW1lLCBvcy5PX1dST05MWSB8IG9zLk9fVFJVTkMpKQogICAgICAgICAgICAgZm9yIG5hbWUsIGtleXMgaW4gc2VxdWVuY2VzLml0ZW1zKCk6CmRpZmYgLS1naXQgYS9MaWIvbWFpbGNhcC5weSBiL0xpYi9tYWlsY2FwLnB5CmluZGV4IDRhZTEzZDcuLjk5ZjQ5NTggMTAwNjQ0Ci0tLSBhL0xpYi9tYWlsY2FwLnB5CisrKyBiL0xpYi9tYWlsY2FwLnB5CkBAIC0zMywxMCArMzMsMTAgQEAKIAogZGVmIGxpc3RtYWlsY2FwZmlsZXMoKToKICAgICAiIiJSZXR1cm4gYSBsaXN0IG9mIGFsbCBtYWlsY2FwIGZpbGVzIGZvdW5kIG9uIHRoZSBzeXN0ZW0uIiIiCi0gICAgIyBYWFggQWN0dWFsbHksIHRoaXMgaXMgVW5peC1zcGVjaWZpYworICAgICMgVGhpcyBpcyBtb3N0bHkgYSBVbml4IHRoaW5nLCBidXQgd2UgdXNlIHRoZSBPUyBwYXRoIHNlcGFyYXRvciBhbnl3YXkKICAgICBpZiAnTUFJTENBUFMnIGluIG9zLmVudmlyb246Ci0gICAgICAgIHN0ciA9IG9zLmVudmlyb25bJ01BSUxDQVBTJ10KLSAgICAgICAgbWFpbGNhcHMgPSBzdHIuc3BsaXQoJzonKQorICAgICAgICBwYXRoc3RyID0gb3MuZW52aXJvblsnTUFJTENBUFMnXQorICAgICAgICBtYWlsY2FwcyA9IHBhdGhzdHIuc3BsaXQob3MucGF0aHNlcCkKICAgICBlbHNlOgogICAgICAgICBpZiAnSE9NRScgaW4gb3MuZW52aXJvbjoKICAgICAgICAgICAgIGhvbWUgPSBvcy5lbnZpcm9uWydIT01FJ10KZGlmZiAtLWdpdCBhL0xpYi9taW1ldHlwZXMucHkgYi9MaWIvbWltZXR5cGVzLnB5CmluZGV4IDRiMWUyZjkuLmZhNjIzMjYgMTAwNjQ0Ci0tLSBhL0xpYi9taW1ldHlwZXMucHkKKysrIGIvTGliL21pbWV0eXBlcy5weQpAQCAtMjQ5LDcgKzI0OSw2IEBACiAgICAgICAgICAgICAgICAgICAgIHlpZWxkIGN0eXBlCiAgICAgICAgICAgICAgICAgaSArPSAxCiAKLSAgICAgICAgZGVmYXVsdF9lbmNvZGluZyA9IHN5cy5nZXRkZWZhdWx0ZW5jb2RpbmcoKQogICAgICAgICB3aXRoIF93aW5yZWcuT3BlbktleShfd2lucmVnLkhLRVlfQ0xBU1NFU19ST09ULAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICByJ01JTUVcRGF0YWJhc2VcQ29udGVudCBUeXBlJykgYXMgbWltZWRiOgogICAgICAgICAgICAgZm9yIGN0eXBlIGluIGVudW1fdHlwZXMobWltZWRiKToKQEAgLTQzNCw2ICs0MzMsOCBAQAogICAgICAgICAnLmtzaCcgICAgOiAndGV4dC9wbGFpbicsCiAgICAgICAgICcubGF0ZXgnICA6ICdhcHBsaWNhdGlvbi94LWxhdGV4JywKICAgICAgICAgJy5tMXYnICAgIDogJ3ZpZGVvL21wZWcnLAorICAgICAgICAnLm0zdScgICAgOiAnYXBwbGljYXRpb24vdm5kLmFwcGxlLm1wZWd1cmwnLAorICAgICAgICAnLm0zdTgnICAgOiAnYXBwbGljYXRpb24vdm5kLmFwcGxlLm1wZWd1cmwnLAogICAgICAgICAnLm1hbicgICAgOiAnYXBwbGljYXRpb24veC10cm9mZi1tYW4nLAogICAgICAgICAnLm1lJyAgICAgOiAnYXBwbGljYXRpb24veC10cm9mZi1tZScsCiAgICAgICAgICcubWh0JyAgICA6ICdtZXNzYWdlL3JmYzgyMicsCmRpZmYgLS1naXQgYS9MaWIvbW9kdWxlZmluZGVyLnB5IGIvTGliL21vZHVsZWZpbmRlci5weQppbmRleCBmMDMzYmE5Li5jMDkxMGFhIDEwMDY0NAotLS0gYS9MaWIvbW9kdWxlZmluZGVyLnB5CisrKyBiL0xpYi9tb2R1bGVmaW5kZXIucHkKQEAgLTEsNiArMSw1IEBACiAiIiJGaW5kIG1vZHVsZXMgdXNlZCBieSBhIHNjcmlwdCwgdXNpbmcgaW50cm9zcGVjdGlvbi4iIiIKIAotZnJvbSBfX2Z1dHVyZV9fIGltcG9ydCBnZW5lcmF0b3JzCiBpbXBvcnQgZGlzCiBpbXBvcnQgaW1wCiBpbXBvcnQgbWFyc2hhbApAQCAtOSw4ICs4LDYgQEAKIGltcG9ydCB0eXBlcwogaW1wb3J0IHN0cnVjdAogCi1SRUFEX01PREUgPSAiclUiCi0KICMgWFhYIENsZWFuIHVwIG9uY2Ugc3RyOCdzIGNzdG9yIG1hdGNoZXMgYnl0ZXMuCiBMT0FEX0NPTlNUID0gYnl0ZXMoW2Rpcy5vcG5hbWUuaW5kZXgoJ0xPQURfQ09OU1QnKV0pCiBJTVBPUlRfTkFNRSA9IGJ5dGVzKFtkaXMub3BuYW1lLmluZGV4KCdJTVBPUlRfTkFNRScpXSkKQEAgLTI5LDkgKzI2LDcgQEAKIAogIyBBIFB1YmxpYyBpbnRlcmZhY2UKIGRlZiBBZGRQYWNrYWdlUGF0aChwYWNrYWdlbmFtZSwgcGF0aCk6Ci0gICAgcGF0aHMgPSBwYWNrYWdlUGF0aE1hcC5nZXQocGFja2FnZW5hbWUsIFtdKQotICAgIHBhdGhzLmFwcGVuZChwYXRoKQotICAgIHBhY2thZ2VQYXRoTWFwW3BhY2thZ2VuYW1lXSA9IHBhdGhzCisgICAgcGFja2FnZVBhdGhNYXAuc2V0ZGVmYXVsdChwYWNrYWdlbmFtZSwgW10pLmFwcGVuZChwYXRoKQogCiByZXBsYWNlUGFja2FnZU1hcCA9IHt9CiAKQEAgLTEwNiwxNCArMTAxLDE0IEBACiAKICAgICBkZWYgcnVuX3NjcmlwdChzZWxmLCBwYXRobmFtZSk6CiAgICAgICAgIHNlbGYubXNnKDIsICJydW5fc2NyaXB0IiwgcGF0aG5hbWUpCi0gICAgICAgIHdpdGggb3BlbihwYXRobmFtZSwgUkVBRF9NT0RFKSBhcyBmcDoKKyAgICAgICAgd2l0aCBvcGVuKHBhdGhuYW1lKSBhcyBmcDoKICAgICAgICAgICAgIHN0dWZmID0gKCIiLCAiciIsIGltcC5QWV9TT1VSQ0UpCiAgICAgICAgICAgICBzZWxmLmxvYWRfbW9kdWxlKCdfX21haW5fXycsIGZwLCBwYXRobmFtZSwgc3R1ZmYpCiAKICAgICBkZWYgbG9hZF9maWxlKHNlbGYsIHBhdGhuYW1lKToKICAgICAgICAgZGlyLCBuYW1lID0gb3MucGF0aC5zcGxpdChwYXRobmFtZSkKICAgICAgICAgbmFtZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChuYW1lKQotICAgICAgICB3aXRoIG9wZW4ocGF0aG5hbWUsIFJFQURfTU9ERSkgYXMgZnA6CisgICAgICAgIHdpdGggb3BlbihwYXRobmFtZSkgYXMgZnA6CiAgICAgICAgICAgICBzdHVmZiA9IChleHQsICJyIiwgaW1wLlBZX1NPVVJDRSkKICAgICAgICAgICAgIHNlbGYubG9hZF9tb2R1bGUobmFtZSwgZnAsIHBhdGhuYW1lLCBzdHVmZikKIApAQCAtMjcwLDcgKzI2NSw4IEBACiAgICAgICAgIHRyeToKICAgICAgICAgICAgIG0gPSBzZWxmLmxvYWRfbW9kdWxlKGZxbmFtZSwgZnAsIHBhdGhuYW1lLCBzdHVmZikKICAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIGlmIGZwOiBmcC5jbG9zZSgpCisgICAgICAgICAgICBpZiBmcDoKKyAgICAgICAgICAgICAgICBmcC5jbG9zZSgpCiAgICAgICAgIGlmIHBhcmVudDoKICAgICAgICAgICAgIHNldGF0dHIocGFyZW50LCBwYXJ0bmFtZSwgbSkKICAgICAgICAgc2VsZi5tc2dvdXQoMywgImltcG9ydF9tb2R1bGUgLT4iLCBtKQpAQCAtNjYyLDQgKzY1OCw0IEBACiAgICAgdHJ5OgogICAgICAgICBtZiA9IHRlc3QoKQogICAgIGV4Y2VwdCBLZXlib2FyZEludGVycnVwdDoKLSAgICAgICAgcHJpbnQoIlxuW2ludGVycnVwdF0iKQorICAgICAgICBwcmludCgiXG5baW50ZXJydXB0ZWRdIikKZGlmZiAtLWdpdCBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvX19pbml0X18ucHkgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL19faW5pdF9fLnB5CmluZGV4IGU2ZTE2YzguLmUwMTI0NDAgMTAwNjQ0Ci0tLSBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvX19pbml0X18ucHkKKysrIGIvTGliL211bHRpcHJvY2Vzc2luZy9fX2luaXRfXy5weQpAQCAtNDgsNyArNDgsNyBAQAogICAgICdNYW5hZ2VyJywgJ1BpcGUnLCAnY3B1X2NvdW50JywgJ2xvZ190b19zdGRlcnInLCAnZ2V0X2xvZ2dlcicsCiAgICAgJ2FsbG93X2Nvbm5lY3Rpb25fcGlja2xpbmcnLCAnQnVmZmVyVG9vU2hvcnQnLCAnVGltZW91dEVycm9yJywKICAgICAnTG9jaycsICdSTG9jaycsICdTZW1hcGhvcmUnLCAnQm91bmRlZFNlbWFwaG9yZScsICdDb25kaXRpb24nLAotICAgICdFdmVudCcsICdRdWV1ZScsICdKb2luYWJsZVF1ZXVlJywgJ1Bvb2wnLCAnVmFsdWUnLCAnQXJyYXknLAorICAgICdFdmVudCcsICdRdWV1ZScsICdTaW1wbGVRdWV1ZScsICdKb2luYWJsZVF1ZXVlJywgJ1Bvb2wnLCAnVmFsdWUnLCAnQXJyYXknLAogICAgICdSYXdWYWx1ZScsICdSYXdBcnJheScsICdTVUJERUJVRycsICdTVUJXQVJOSU5HJywKICAgICBdCiAKQEAgLTIyMyw2ICsyMjMsMTMgQEAKICAgICBmcm9tIG11bHRpcHJvY2Vzc2luZy5xdWV1ZXMgaW1wb3J0IEpvaW5hYmxlUXVldWUKICAgICByZXR1cm4gSm9pbmFibGVRdWV1ZShtYXhzaXplKQogCitkZWYgU2ltcGxlUXVldWUoKToKKyAgICAnJycKKyAgICBSZXR1cm5zIGEgcXVldWUgb2JqZWN0CisgICAgJycnCisgICAgZnJvbSBtdWx0aXByb2Nlc3NpbmcucXVldWVzIGltcG9ydCBTaW1wbGVRdWV1ZQorICAgIHJldHVybiBTaW1wbGVRdWV1ZSgpCisKIGRlZiBQb29sKHByb2Nlc3Nlcz1Ob25lLCBpbml0aWFsaXplcj1Ob25lLCBpbml0YXJncz0oKSwgbWF4dGFza3NwZXJjaGlsZD1Ob25lKToKICAgICAnJycKICAgICBSZXR1cm5zIGEgcHJvY2VzcyBwb29sIG9iamVjdApkaWZmIC0tZ2l0IGEvTGliL211bHRpcHJvY2Vzc2luZy9jb25uZWN0aW9uLnB5IGIvTGliL211bHRpcHJvY2Vzc2luZy9jb25uZWN0aW9uLnB5CmluZGV4IGRmMDBmMWQuLmNhMGM5NzMgMTAwNjQ0Ci0tLSBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvY29ubmVjdGlvbi5weQorKysgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL2Nvbm5lY3Rpb24ucHkKQEAgLTMyLDIxICszMiwzMSBAQAogIyBTVUNIIERBTUFHRS4KICMKIAotX19hbGxfXyA9IFsgJ0NsaWVudCcsICdMaXN0ZW5lcicsICdQaXBlJyBdCitfX2FsbF9fID0gWyAnQ2xpZW50JywgJ0xpc3RlbmVyJywgJ1BpcGUnLCAnd2FpdCcgXQogCitpbXBvcnQgaW8KIGltcG9ydCBvcwogaW1wb3J0IHN5cworaW1wb3J0IHBpY2tsZQoraW1wb3J0IHNlbGVjdAogaW1wb3J0IHNvY2tldAoraW1wb3J0IHN0cnVjdAogaW1wb3J0IGVycm5vCiBpbXBvcnQgdGltZQogaW1wb3J0IHRlbXBmaWxlCiBpbXBvcnQgaXRlcnRvb2xzCiAKIGltcG9ydCBfbXVsdGlwcm9jZXNzaW5nCi1mcm9tIG11bHRpcHJvY2Vzc2luZyBpbXBvcnQgY3VycmVudF9wcm9jZXNzLCBBdXRoZW50aWNhdGlvbkVycm9yCi1mcm9tIG11bHRpcHJvY2Vzc2luZy51dGlsIGltcG9ydCBnZXRfdGVtcF9kaXIsIEZpbmFsaXplLCBzdWJfZGVidWcsIGRlYnVnCi1mcm9tIG11bHRpcHJvY2Vzc2luZy5mb3JraW5nIGltcG9ydCBkdXBsaWNhdGUsIGNsb3NlCi0KK2Zyb20gbXVsdGlwcm9jZXNzaW5nIGltcG9ydCBjdXJyZW50X3Byb2Nlc3MsIEF1dGhlbnRpY2F0aW9uRXJyb3IsIEJ1ZmZlclRvb1Nob3J0Citmcm9tIG11bHRpcHJvY2Vzc2luZy51dGlsIGltcG9ydCAoCisgICAgZ2V0X3RlbXBfZGlyLCBGaW5hbGl6ZSwgc3ViX2RlYnVnLCBkZWJ1ZywgX2VpbnRyX3JldHJ5KQordHJ5OgorICAgIGZyb20gX211bHRpcHJvY2Vzc2luZyBpbXBvcnQgd2luMzIKKyAgICBmcm9tIF9zdWJwcm9jZXNzIGltcG9ydCBXQUlUX09CSkVDVF8wLCBXQUlUX1RJTUVPVVQsIElORklOSVRFCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgICAgIHJhaXNlCisgICAgd2luMzIgPSBOb25lCiAKICMKICMKQEAgLTExMSw2ICsxMjEsMzA2IEBACiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ2FkZHJlc3MgdHlwZSBvZiAlciB1bnJlY29nbml6ZWQnICUgYWRkcmVzcykKIAogIworIyBDb25uZWN0aW9uIGNsYXNzZXMKKyMKKworY2xhc3MgX0Nvbm5lY3Rpb25CYXNlOgorICAgIF9oYW5kbGUgPSBOb25lCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgaGFuZGxlLCByZWFkYWJsZT1UcnVlLCB3cml0YWJsZT1UcnVlKToKKyAgICAgICAgaGFuZGxlID0gaGFuZGxlLl9faW5kZXhfXygpCisgICAgICAgIGlmIGhhbmRsZSA8IDA6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJpbnZhbGlkIGhhbmRsZSIpCisgICAgICAgIGlmIG5vdCByZWFkYWJsZSBhbmQgbm90IHdyaXRhYmxlOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigKKyAgICAgICAgICAgICAgICAiYXQgbGVhc3Qgb25lIG9mIGByZWFkYWJsZWAgYW5kIGB3cml0YWJsZWAgbXVzdCBiZSBUcnVlIikKKyAgICAgICAgc2VsZi5faGFuZGxlID0gaGFuZGxlCisgICAgICAgIHNlbGYuX3JlYWRhYmxlID0gcmVhZGFibGUKKyAgICAgICAgc2VsZi5fd3JpdGFibGUgPSB3cml0YWJsZQorCisgICAgIyBYWFggc2hvdWxkIHdlIHVzZSB1dGlsLkZpbmFsaXplIGluc3RlYWQgb2YgYSBfX2RlbF9fPworCisgICAgZGVmIF9fZGVsX18oc2VsZik6CisgICAgICAgIGlmIHNlbGYuX2hhbmRsZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2Nsb3NlKCkKKworICAgIGRlZiBfY2hlY2tfY2xvc2VkKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9oYW5kbGUgaXMgTm9uZToKKyAgICAgICAgICAgIHJhaXNlIElPRXJyb3IoImhhbmRsZSBpcyBjbG9zZWQiKQorCisgICAgZGVmIF9jaGVja19yZWFkYWJsZShzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuX3JlYWRhYmxlOgorICAgICAgICAgICAgcmFpc2UgSU9FcnJvcigiY29ubmVjdGlvbiBpcyB3cml0ZS1vbmx5IikKKworICAgIGRlZiBfY2hlY2tfd3JpdGFibGUoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLl93cml0YWJsZToKKyAgICAgICAgICAgIHJhaXNlIElPRXJyb3IoImNvbm5lY3Rpb24gaXMgcmVhZC1vbmx5IikKKworICAgIGRlZiBfYmFkX21lc3NhZ2VfbGVuZ3RoKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl93cml0YWJsZToKKyAgICAgICAgICAgIHNlbGYuX3JlYWRhYmxlID0gRmFsc2UKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorICAgICAgICByYWlzZSBJT0Vycm9yKCJiYWQgbWVzc2FnZSBsZW5ndGgiKQorCisgICAgQHByb3BlcnR5CisgICAgZGVmIGNsb3NlZChzZWxmKToKKyAgICAgICAgIiIiVHJ1ZSBpZiB0aGUgY29ubmVjdGlvbiBpcyBjbG9zZWQiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX2hhbmRsZSBpcyBOb25lCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgcmVhZGFibGUoc2VsZik6CisgICAgICAgICIiIlRydWUgaWYgdGhlIGNvbm5lY3Rpb24gaXMgcmVhZGFibGUiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX3JlYWRhYmxlCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgd3JpdGFibGUoc2VsZik6CisgICAgICAgICIiIlRydWUgaWYgdGhlIGNvbm5lY3Rpb24gaXMgd3JpdGFibGUiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX3dyaXRhYmxlCisKKyAgICBkZWYgZmlsZW5vKHNlbGYpOgorICAgICAgICAiIiJGaWxlIGRlc2NyaXB0b3Igb3IgaGFuZGxlIG9mIHRoZSBjb25uZWN0aW9uIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2Nsb3NlZCgpCisgICAgICAgIHJldHVybiBzZWxmLl9oYW5kbGUKKworICAgIGRlZiBjbG9zZShzZWxmKToKKyAgICAgICAgIiIiQ2xvc2UgdGhlIGNvbm5lY3Rpb24iIiIKKyAgICAgICAgaWYgc2VsZi5faGFuZGxlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuX2Nsb3NlKCkKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgc2VsZi5faGFuZGxlID0gTm9uZQorCisgICAgZGVmIHNlbmRfYnl0ZXMoc2VsZiwgYnVmLCBvZmZzZXQ9MCwgc2l6ZT1Ob25lKToKKyAgICAgICAgIiIiU2VuZCB0aGUgYnl0ZXMgZGF0YSBmcm9tIGEgYnl0ZXMtbGlrZSBvYmplY3QiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2xvc2VkKCkKKyAgICAgICAgc2VsZi5fY2hlY2tfd3JpdGFibGUoKQorICAgICAgICBtID0gbWVtb3J5dmlldyhidWYpCisgICAgICAgICMgSEFDSyBmb3IgYnl0ZS1pbmRleGluZyBvZiBub24tYnl0ZXdpc2UgYnVmZmVycyAoZS5nLiBhcnJheS5hcnJheSkKKyAgICAgICAgaWYgbS5pdGVtc2l6ZSA+IDE6CisgICAgICAgICAgICBtID0gbWVtb3J5dmlldyhieXRlcyhtKSkKKyAgICAgICAgbiA9IGxlbihtKQorICAgICAgICBpZiBvZmZzZXQgPCAwOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigib2Zmc2V0IGlzIG5lZ2F0aXZlIikKKyAgICAgICAgaWYgbiA8IG9mZnNldDoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImJ1ZmZlciBsZW5ndGggPCBvZmZzZXQiKQorICAgICAgICBpZiBzaXplIGlzIE5vbmU6CisgICAgICAgICAgICBzaXplID0gbiAtIG9mZnNldAorICAgICAgICBlbGlmIHNpemUgPCAwOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigic2l6ZSBpcyBuZWdhdGl2ZSIpCisgICAgICAgIGVsaWYgb2Zmc2V0ICsgc2l6ZSA+IG46CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJidWZmZXIgbGVuZ3RoIDwgb2Zmc2V0ICsgc2l6ZSIpCisgICAgICAgIHNlbGYuX3NlbmRfYnl0ZXMobVtvZmZzZXQ6b2Zmc2V0ICsgc2l6ZV0pCisKKyAgICBkZWYgc2VuZChzZWxmLCBvYmopOgorICAgICAgICAiIiJTZW5kIGEgKHBpY2tsYWJsZSkgb2JqZWN0IiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2Nsb3NlZCgpCisgICAgICAgIHNlbGYuX2NoZWNrX3dyaXRhYmxlKCkKKyAgICAgICAgYnVmID0gcGlja2xlLmR1bXBzKG9iaiwgcHJvdG9jb2w9cGlja2xlLkhJR0hFU1RfUFJPVE9DT0wpCisgICAgICAgIHNlbGYuX3NlbmRfYnl0ZXMobWVtb3J5dmlldyhidWYpKQorCisgICAgZGVmIHJlY3ZfYnl0ZXMoc2VsZiwgbWF4bGVuZ3RoPU5vbmUpOgorICAgICAgICAiIiIKKyAgICAgICAgUmVjZWl2ZSBieXRlcyBkYXRhIGFzIGEgYnl0ZXMgb2JqZWN0LgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2xvc2VkKCkKKyAgICAgICAgc2VsZi5fY2hlY2tfcmVhZGFibGUoKQorICAgICAgICBpZiBtYXhsZW5ndGggaXMgbm90IE5vbmUgYW5kIG1heGxlbmd0aCA8IDA6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJuZWdhdGl2ZSBtYXhsZW5ndGgiKQorICAgICAgICBidWYgPSBzZWxmLl9yZWN2X2J5dGVzKG1heGxlbmd0aCkKKyAgICAgICAgaWYgYnVmIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLl9iYWRfbWVzc2FnZV9sZW5ndGgoKQorICAgICAgICByZXR1cm4gYnVmLmdldHZhbHVlKCkKKworICAgIGRlZiByZWN2X2J5dGVzX2ludG8oc2VsZiwgYnVmLCBvZmZzZXQ9MCk6CisgICAgICAgICIiIgorICAgICAgICBSZWNlaXZlIGJ5dGVzIGRhdGEgaW50byBhIHdyaXRlYWJsZSBidWZmZXItbGlrZSBvYmplY3QuCisgICAgICAgIFJldHVybiB0aGUgbnVtYmVyIG9mIGJ5dGVzIHJlYWQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9jaGVja19jbG9zZWQoKQorICAgICAgICBzZWxmLl9jaGVja19yZWFkYWJsZSgpCisgICAgICAgIHdpdGggbWVtb3J5dmlldyhidWYpIGFzIG06CisgICAgICAgICAgICAjIEdldCBieXRlc2l6ZSBvZiBhcmJpdHJhcnkgYnVmZmVyCisgICAgICAgICAgICBpdGVtc2l6ZSA9IG0uaXRlbXNpemUKKyAgICAgICAgICAgIGJ5dGVzaXplID0gaXRlbXNpemUgKiBsZW4obSkKKyAgICAgICAgICAgIGlmIG9mZnNldCA8IDA6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigibmVnYXRpdmUgb2Zmc2V0IikKKyAgICAgICAgICAgIGVsaWYgb2Zmc2V0ID4gYnl0ZXNpemU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigib2Zmc2V0IHRvbyBsYXJnZSIpCisgICAgICAgICAgICByZXN1bHQgPSBzZWxmLl9yZWN2X2J5dGVzKCkKKyAgICAgICAgICAgIHNpemUgPSByZXN1bHQudGVsbCgpCisgICAgICAgICAgICBpZiBieXRlc2l6ZSA8IG9mZnNldCArIHNpemU6CisgICAgICAgICAgICAgICAgcmFpc2UgQnVmZmVyVG9vU2hvcnQocmVzdWx0LmdldHZhbHVlKCkpCisgICAgICAgICAgICAjIE1lc3NhZ2UgY2FuIGZpdCBpbiBkZXN0CisgICAgICAgICAgICByZXN1bHQuc2VlaygwKQorICAgICAgICAgICAgcmVzdWx0LnJlYWRpbnRvKG1bb2Zmc2V0IC8vIGl0ZW1zaXplIDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvZmZzZXQgKyBzaXplKSAvLyBpdGVtc2l6ZV0pCisgICAgICAgICAgICByZXR1cm4gc2l6ZQorCisgICAgZGVmIHJlY3Yoc2VsZik6CisgICAgICAgICIiIlJlY2VpdmUgYSAocGlja2xhYmxlKSBvYmplY3QiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2xvc2VkKCkKKyAgICAgICAgc2VsZi5fY2hlY2tfcmVhZGFibGUoKQorICAgICAgICBidWYgPSBzZWxmLl9yZWN2X2J5dGVzKCkKKyAgICAgICAgcmV0dXJuIHBpY2tsZS5sb2FkcyhidWYuZ2V0YnVmZmVyKCkpCisKKyAgICBkZWYgcG9sbChzZWxmLCB0aW1lb3V0PTAuMCk6CisgICAgICAgICIiIldoZXRoZXIgdGhlcmUgaXMgYW55IGlucHV0IGF2YWlsYWJsZSB0byBiZSByZWFkIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2Nsb3NlZCgpCisgICAgICAgIHNlbGYuX2NoZWNrX3JlYWRhYmxlKCkKKyAgICAgICAgcmV0dXJuIHNlbGYuX3BvbGwodGltZW91dCkKKworCitpZiB3aW4zMjoKKworICAgIGNsYXNzIFBpcGVDb25uZWN0aW9uKF9Db25uZWN0aW9uQmFzZSk6CisgICAgICAgICIiIgorICAgICAgICBDb25uZWN0aW9uIGNsYXNzIGJhc2VkIG9uIGEgV2luZG93cyBuYW1lZCBwaXBlLgorICAgICAgICBPdmVybGFwcGVkIEkvTyBpcyB1c2VkLCBzbyB0aGUgaGFuZGxlcyBtdXN0IGhhdmUgYmVlbiBjcmVhdGVkCisgICAgICAgIHdpdGggRklMRV9GTEFHX09WRVJMQVBQRUQuCisgICAgICAgICIiIgorICAgICAgICBfZ290X2VtcHR5X21lc3NhZ2UgPSBGYWxzZQorCisgICAgICAgIGRlZiBfY2xvc2Uoc2VsZiwgX0Nsb3NlSGFuZGxlPXdpbjMyLkNsb3NlSGFuZGxlKToKKyAgICAgICAgICAgIF9DbG9zZUhhbmRsZShzZWxmLl9oYW5kbGUpCisKKyAgICAgICAgZGVmIF9zZW5kX2J5dGVzKHNlbGYsIGJ1Zik6CisgICAgICAgICAgICBvdiwgZXJyID0gd2luMzIuV3JpdGVGaWxlKHNlbGYuX2hhbmRsZSwgYnVmLCBvdmVybGFwcGVkPVRydWUpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaWYgZXJyID09IHdpbjMyLkVSUk9SX0lPX1BFTkRJTkc6CisgICAgICAgICAgICAgICAgICAgIHdhaXRyZXMgPSB3aW4zMi5XYWl0Rm9yTXVsdGlwbGVPYmplY3RzKAorICAgICAgICAgICAgICAgICAgICAgICAgW292LmV2ZW50XSwgRmFsc2UsIElORklOSVRFKQorICAgICAgICAgICAgICAgICAgICBhc3NlcnQgd2FpdHJlcyA9PSBXQUlUX09CSkVDVF8wCisgICAgICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICAgICAgb3YuY2FuY2VsKCkKKyAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICBud3JpdHRlbiwgZXJyID0gb3YuR2V0T3ZlcmxhcHBlZFJlc3VsdChUcnVlKQorICAgICAgICAgICAgYXNzZXJ0IGVyciA9PSAwCisgICAgICAgICAgICBhc3NlcnQgbndyaXR0ZW4gPT0gbGVuKGJ1ZikKKworICAgICAgICBkZWYgX3JlY3ZfYnl0ZXMoc2VsZiwgbWF4c2l6ZT1Ob25lKToKKyAgICAgICAgICAgIGlmIHNlbGYuX2dvdF9lbXB0eV9tZXNzYWdlOgorICAgICAgICAgICAgICAgIHNlbGYuX2dvdF9lbXB0eV9tZXNzYWdlID0gRmFsc2UKKyAgICAgICAgICAgICAgICByZXR1cm4gaW8uQnl0ZXNJTygpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGJzaXplID0gMTI4IGlmIG1heHNpemUgaXMgTm9uZSBlbHNlIG1pbihtYXhzaXplLCAxMjgpCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBvdiwgZXJyID0gd2luMzIuUmVhZEZpbGUoc2VsZi5faGFuZGxlLCBic2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJsYXBwZWQ9VHJ1ZSkKKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgaWYgZXJyID09IHdpbjMyLkVSUk9SX0lPX1BFTkRJTkc6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2FpdHJlcyA9IHdpbjMyLldhaXRGb3JNdWx0aXBsZU9iamVjdHMoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvdi5ldmVudF0sIEZhbHNlLCBJTkZJTklURSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnQgd2FpdHJlcyA9PSBXQUlUX09CSkVDVF8wCisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgICAgICAgICAgICAgIG92LmNhbmNlbCgpCisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgICAgICAgICAgbnJlYWQsIGVyciA9IG92LkdldE92ZXJsYXBwZWRSZXN1bHQoVHJ1ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIGVyciA9PSAwOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGYgPSBpby5CeXRlc0lPKCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmLndyaXRlKG92LmdldGJ1ZmZlcigpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmCisgICAgICAgICAgICAgICAgICAgICAgICBlbGlmIGVyciA9PSB3aW4zMi5FUlJPUl9NT1JFX0RBVEE6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2dldF9tb3JlX2RhdGEob3YsIG1heHNpemUpCisgICAgICAgICAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICAgICAgaWYgZS53aW5lcnJvciA9PSB3aW4zMi5FUlJPUl9CUk9LRU5fUElQRToKKyAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIEVPRkVycm9yCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJzaG91bGRuJ3QgZ2V0IGhlcmU7IGV4cGVjdGVkIEtleWJvYXJkSW50ZXJydXB0IikKKworICAgICAgICBkZWYgX3BvbGwoc2VsZiwgdGltZW91dCk6CisgICAgICAgICAgICBpZiAoc2VsZi5fZ290X2VtcHR5X21lc3NhZ2Ugb3IKKyAgICAgICAgICAgICAgICAgICAgICAgIHdpbjMyLlBlZWtOYW1lZFBpcGUoc2VsZi5faGFuZGxlKVswXSAhPSAwKToKKyAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgICAgICAgICAgaWYgdGltZW91dCA8IDA6CisgICAgICAgICAgICAgICAgdGltZW91dCA9IE5vbmUKKyAgICAgICAgICAgIHJldHVybiBib29sKHdhaXQoW3NlbGZdLCB0aW1lb3V0KSkKKworICAgICAgICBkZWYgX2dldF9tb3JlX2RhdGEoc2VsZiwgb3YsIG1heHNpemUpOgorICAgICAgICAgICAgYnVmID0gb3YuZ2V0YnVmZmVyKCkKKyAgICAgICAgICAgIGYgPSBpby5CeXRlc0lPKCkKKyAgICAgICAgICAgIGYud3JpdGUoYnVmKQorICAgICAgICAgICAgbGVmdCA9IHdpbjMyLlBlZWtOYW1lZFBpcGUoc2VsZi5faGFuZGxlKVsxXQorICAgICAgICAgICAgYXNzZXJ0IGxlZnQgPiAwCisgICAgICAgICAgICBpZiBtYXhzaXplIGlzIG5vdCBOb25lIGFuZCBsZW4oYnVmKSArIGxlZnQgPiBtYXhzaXplOgorICAgICAgICAgICAgICAgIHNlbGYuX2JhZF9tZXNzYWdlX2xlbmd0aCgpCisgICAgICAgICAgICBvdiwgZXJyID0gd2luMzIuUmVhZEZpbGUoc2VsZi5faGFuZGxlLCBsZWZ0LCBvdmVybGFwcGVkPVRydWUpCisgICAgICAgICAgICByYnl0ZXMsIGVyciA9IG92LkdldE92ZXJsYXBwZWRSZXN1bHQoVHJ1ZSkKKyAgICAgICAgICAgIGFzc2VydCBlcnIgPT0gMAorICAgICAgICAgICAgYXNzZXJ0IHJieXRlcyA9PSBsZWZ0CisgICAgICAgICAgICBmLndyaXRlKG92LmdldGJ1ZmZlcigpKQorICAgICAgICAgICAgcmV0dXJuIGYKKworCitjbGFzcyBDb25uZWN0aW9uKF9Db25uZWN0aW9uQmFzZSk6CisgICAgIiIiCisgICAgQ29ubmVjdGlvbiBjbGFzcyBiYXNlZCBvbiBhbiBhcmJpdHJhcnkgZmlsZSBkZXNjcmlwdG9yIChVbml4IG9ubHkpLCBvcgorICAgIGEgc29ja2V0IGhhbmRsZSAoV2luZG93cykuCisgICAgIiIiCisKKyAgICBpZiB3aW4zMjoKKyAgICAgICAgZGVmIF9jbG9zZShzZWxmLCBfY2xvc2U9d2luMzIuY2xvc2Vzb2NrZXQpOgorICAgICAgICAgICAgX2Nsb3NlKHNlbGYuX2hhbmRsZSkKKyAgICAgICAgX3dyaXRlID0gd2luMzIuc2VuZAorICAgICAgICBfcmVhZCA9IHdpbjMyLnJlY3YKKyAgICBlbHNlOgorICAgICAgICBkZWYgX2Nsb3NlKHNlbGYsIF9jbG9zZT1vcy5jbG9zZSk6CisgICAgICAgICAgICBfY2xvc2Uoc2VsZi5faGFuZGxlKQorICAgICAgICBfd3JpdGUgPSBvcy53cml0ZQorICAgICAgICBfcmVhZCA9IG9zLnJlYWQKKworICAgIGRlZiBfc2VuZChzZWxmLCBidWYsIHdyaXRlPV93cml0ZSk6CisgICAgICAgIHJlbWFpbmluZyA9IGxlbihidWYpCisgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICBuID0gd3JpdGUoc2VsZi5faGFuZGxlLCBidWYpCisgICAgICAgICAgICByZW1haW5pbmcgLT0gbgorICAgICAgICAgICAgaWYgcmVtYWluaW5nID09IDA6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIGJ1ZiA9IGJ1ZltuOl0KKworICAgIGRlZiBfcmVjdihzZWxmLCBzaXplLCByZWFkPV9yZWFkKToKKyAgICAgICAgYnVmID0gaW8uQnl0ZXNJTygpCisgICAgICAgIGhhbmRsZSA9IHNlbGYuX2hhbmRsZQorICAgICAgICByZW1haW5pbmcgPSBzaXplCisgICAgICAgIHdoaWxlIHJlbWFpbmluZyA+IDA6CisgICAgICAgICAgICBjaHVuayA9IHJlYWQoaGFuZGxlLCByZW1haW5pbmcpCisgICAgICAgICAgICBuID0gbGVuKGNodW5rKQorICAgICAgICAgICAgaWYgbiA9PSAwOgorICAgICAgICAgICAgICAgIGlmIHJlbWFpbmluZyA9PSBzaXplOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBFT0ZFcnJvcgorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIElPRXJyb3IoImdvdCBlbmQgb2YgZmlsZSBkdXJpbmcgbWVzc2FnZSIpCisgICAgICAgICAgICBidWYud3JpdGUoY2h1bmspCisgICAgICAgICAgICByZW1haW5pbmcgLT0gbgorICAgICAgICByZXR1cm4gYnVmCisKKyAgICBkZWYgX3NlbmRfYnl0ZXMoc2VsZiwgYnVmKToKKyAgICAgICAgIyBGb3Igd2lyZSBjb21wYXRpYmlsaXR5IHdpdGggMy4yIGFuZCBsb3dlcgorICAgICAgICBuID0gbGVuKGJ1ZikKKyAgICAgICAgc2VsZi5fc2VuZChzdHJ1Y3QucGFjaygiIWkiLCBuKSkKKyAgICAgICAgIyBUaGUgY29uZGl0aW9uIGlzIG5lY2Vzc2FyeSB0byBhdm9pZCAiYnJva2VuIHBpcGUiIGVycm9ycworICAgICAgICAjIHdoZW4gc2VuZGluZyBhIDAtbGVuZ3RoIGJ1ZmZlciBpZiB0aGUgb3RoZXIgZW5kIGNsb3NlZCB0aGUgcGlwZS4KKyAgICAgICAgaWYgbiA+IDA6CisgICAgICAgICAgICBzZWxmLl9zZW5kKGJ1ZikKKworICAgIGRlZiBfcmVjdl9ieXRlcyhzZWxmLCBtYXhzaXplPU5vbmUpOgorICAgICAgICBidWYgPSBzZWxmLl9yZWN2KDQpCisgICAgICAgIHNpemUsID0gc3RydWN0LnVucGFjaygiIWkiLCBidWYuZ2V0dmFsdWUoKSkKKyAgICAgICAgaWYgbWF4c2l6ZSBpcyBub3QgTm9uZSBhbmQgc2l6ZSA+IG1heHNpemU6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICByZXR1cm4gc2VsZi5fcmVjdihzaXplKQorCisgICAgZGVmIF9wb2xsKHNlbGYsIHRpbWVvdXQpOgorICAgICAgICBpZiB0aW1lb3V0IDwgMC4wOgorICAgICAgICAgICAgdGltZW91dCA9IE5vbmUKKyAgICAgICAgciA9IHdhaXQoW3NlbGYuX2hhbmRsZV0sIHRpbWVvdXQpCisgICAgICAgIHJldHVybiBib29sKHIpCisKKworIwogIyBQdWJsaWMgZnVuY3Rpb25zCiAjCiAKQEAgLTE4NiwyMSArNDk2LDE3IEBACiAgICAgICAgICcnJwogICAgICAgICBpZiBkdXBsZXg6CiAgICAgICAgICAgICBzMSwgczIgPSBzb2NrZXQuc29ja2V0cGFpcigpCi0gICAgICAgICAgICBjMSA9IF9tdWx0aXByb2Nlc3NpbmcuQ29ubmVjdGlvbihvcy5kdXAoczEuZmlsZW5vKCkpKQotICAgICAgICAgICAgYzIgPSBfbXVsdGlwcm9jZXNzaW5nLkNvbm5lY3Rpb24ob3MuZHVwKHMyLmZpbGVubygpKSkKLSAgICAgICAgICAgIHMxLmNsb3NlKCkKLSAgICAgICAgICAgIHMyLmNsb3NlKCkKKyAgICAgICAgICAgIGMxID0gQ29ubmVjdGlvbihzMS5kZXRhY2goKSkKKyAgICAgICAgICAgIGMyID0gQ29ubmVjdGlvbihzMi5kZXRhY2goKSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIGZkMSwgZmQyID0gb3MucGlwZSgpCi0gICAgICAgICAgICBjMSA9IF9tdWx0aXByb2Nlc3NpbmcuQ29ubmVjdGlvbihmZDEsIHdyaXRhYmxlPUZhbHNlKQotICAgICAgICAgICAgYzIgPSBfbXVsdGlwcm9jZXNzaW5nLkNvbm5lY3Rpb24oZmQyLCByZWFkYWJsZT1GYWxzZSkKKyAgICAgICAgICAgIGMxID0gQ29ubmVjdGlvbihmZDEsIHdyaXRhYmxlPUZhbHNlKQorICAgICAgICAgICAgYzIgPSBDb25uZWN0aW9uKGZkMiwgcmVhZGFibGU9RmFsc2UpCiAKICAgICAgICAgcmV0dXJuIGMxLCBjMgogCiBlbHNlOgogCi0gICAgZnJvbSBfbXVsdGlwcm9jZXNzaW5nIGltcG9ydCB3aW4zMgotCiAgICAgZGVmIFBpcGUoZHVwbGV4PVRydWUpOgogICAgICAgICAnJycKICAgICAgICAgUmV0dXJucyBwYWlyIG9mIGNvbm5lY3Rpb24gb2JqZWN0cyBhdCBlaXRoZXIgZW5kIG9mIGEgcGlwZQpAQCAtMjE2LDI2ICs1MjIsMjYgQEAKICAgICAgICAgICAgIG9ic2l6ZSwgaWJzaXplID0gMCwgQlVGU0laRQogCiAgICAgICAgIGgxID0gd2luMzIuQ3JlYXRlTmFtZWRQaXBlKAotICAgICAgICAgICAgYWRkcmVzcywgb3Blbm1vZGUsCisgICAgICAgICAgICBhZGRyZXNzLCBvcGVubW9kZSB8IHdpbjMyLkZJTEVfRkxBR19PVkVSTEFQUEVEIHwKKyAgICAgICAgICAgIHdpbjMyLkZJTEVfRkxBR19GSVJTVF9QSVBFX0lOU1RBTkNFLAogICAgICAgICAgICAgd2luMzIuUElQRV9UWVBFX01FU1NBR0UgfCB3aW4zMi5QSVBFX1JFQURNT0RFX01FU1NBR0UgfAogICAgICAgICAgICAgd2luMzIuUElQRV9XQUlULAogICAgICAgICAgICAgMSwgb2JzaXplLCBpYnNpemUsIHdpbjMyLk5NUFdBSVRfV0FJVF9GT1JFVkVSLCB3aW4zMi5OVUxMCiAgICAgICAgICAgICApCiAgICAgICAgIGgyID0gd2luMzIuQ3JlYXRlRmlsZSgKLSAgICAgICAgICAgIGFkZHJlc3MsIGFjY2VzcywgMCwgd2luMzIuTlVMTCwgd2luMzIuT1BFTl9FWElTVElORywgMCwgd2luMzIuTlVMTAorICAgICAgICAgICAgYWRkcmVzcywgYWNjZXNzLCAwLCB3aW4zMi5OVUxMLCB3aW4zMi5PUEVOX0VYSVNUSU5HLAorICAgICAgICAgICAgd2luMzIuRklMRV9GTEFHX09WRVJMQVBQRUQsIHdpbjMyLk5VTEwKICAgICAgICAgICAgICkKICAgICAgICAgd2luMzIuU2V0TmFtZWRQaXBlSGFuZGxlU3RhdGUoCiAgICAgICAgICAgICBoMiwgd2luMzIuUElQRV9SRUFETU9ERV9NRVNTQUdFLCBOb25lLCBOb25lCiAgICAgICAgICAgICApCiAKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgd2luMzIuQ29ubmVjdE5hbWVkUGlwZShoMSwgd2luMzIuTlVMTCkKLSAgICAgICAgZXhjZXB0IFdpbmRvd3NFcnJvciBhcyBlOgotICAgICAgICAgICAgaWYgZS5hcmdzWzBdICE9IHdpbjMyLkVSUk9SX1BJUEVfQ09OTkVDVEVEOgotICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgIG92ZXJsYXBwZWQgPSB3aW4zMi5Db25uZWN0TmFtZWRQaXBlKGgxLCBvdmVybGFwcGVkPVRydWUpCisgICAgICAgIF8sIGVyciA9IG92ZXJsYXBwZWQuR2V0T3ZlcmxhcHBlZFJlc3VsdChUcnVlKQorICAgICAgICBhc3NlcnQgZXJyID09IDAKIAotICAgICAgICBjMSA9IF9tdWx0aXByb2Nlc3NpbmcuUGlwZUNvbm5lY3Rpb24oaDEsIHdyaXRhYmxlPWR1cGxleCkKLSAgICAgICAgYzIgPSBfbXVsdGlwcm9jZXNzaW5nLlBpcGVDb25uZWN0aW9uKGgyLCByZWFkYWJsZT1kdXBsZXgpCisgICAgICAgIGMxID0gUGlwZUNvbm5lY3Rpb24oaDEsIHdyaXRhYmxlPWR1cGxleCkKKyAgICAgICAgYzIgPSBQaXBlQ29ubmVjdGlvbihoMiwgcmVhZGFibGU9ZHVwbGV4KQogCiAgICAgICAgIHJldHVybiBjMSwgYzIKIApAQCAtMjUwLDExICs1NTYsMTQgQEAKICAgICBkZWYgX19pbml0X18oc2VsZiwgYWRkcmVzcywgZmFtaWx5LCBiYWNrbG9nPTEpOgogICAgICAgICBzZWxmLl9zb2NrZXQgPSBzb2NrZXQuc29ja2V0KGdldGF0dHIoc29ja2V0LCBmYW1pbHkpKQogICAgICAgICB0cnk6Ci0gICAgICAgICAgICBzZWxmLl9zb2NrZXQuc2V0c29ja29wdChzb2NrZXQuU09MX1NPQ0tFVCwgc29ja2V0LlNPX1JFVVNFQUREUiwgMSkKKyAgICAgICAgICAgICMgU09fUkVVU0VBRERSIGhhcyBkaWZmZXJlbnQgc2VtYW50aWNzIG9uIFdpbmRvd3MgKGlzc3VlICMyNTUwKS4KKyAgICAgICAgICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgICAgICAgICBzZWxmLl9zb2NrZXQuc2V0c29ja29wdChzb2NrZXQuU09MX1NPQ0tFVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuU09fUkVVU0VBRERSLCAxKQogICAgICAgICAgICAgc2VsZi5fc29ja2V0LmJpbmQoYWRkcmVzcykKICAgICAgICAgICAgIHNlbGYuX3NvY2tldC5saXN0ZW4oYmFja2xvZykKICAgICAgICAgICAgIHNlbGYuX2FkZHJlc3MgPSBzZWxmLl9zb2NrZXQuZ2V0c29ja25hbWUoKQotICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yOgorICAgICAgICBleGNlcHQgT1NFcnJvcjoKICAgICAgICAgICAgIHNlbGYuX3NvY2tldC5jbG9zZSgpCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBzZWxmLl9mYW1pbHkgPSBmYW1pbHkKQEAgLTI3MCw3ICs1NzksNyBAQAogICAgIGRlZiBhY2NlcHQoc2VsZik6CiAgICAgICAgIHMsIHNlbGYuX2xhc3RfYWNjZXB0ZWQgPSBzZWxmLl9zb2NrZXQuYWNjZXB0KCkKICAgICAgICAgZmQgPSBkdXBsaWNhdGUocy5maWxlbm8oKSkKLSAgICAgICAgY29ubiA9IF9tdWx0aXByb2Nlc3NpbmcuQ29ubmVjdGlvbihmZCkKKyAgICAgICAgY29ubiA9IENvbm5lY3Rpb24oZmQpCiAgICAgICAgIHMuY2xvc2UoKQogICAgICAgICByZXR1cm4gY29ubgogCkBAIC0yODYsMjMgKzU5NSw5IEBACiAgICAgJycnCiAgICAgZmFtaWx5ID0gYWRkcmVzc190eXBlKGFkZHJlc3MpCiAgICAgd2l0aCBzb2NrZXQuc29ja2V0KCBnZXRhdHRyKHNvY2tldCwgZmFtaWx5KSApIGFzIHM6Ci0gICAgICAgIHQgPSBfaW5pdF90aW1lb3V0KCkKLQotICAgICAgICB3aGlsZSAxOgotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHMuY29ubmVjdChhZGRyZXNzKQotICAgICAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlOgotICAgICAgICAgICAgICAgIGlmIGUuYXJnc1swXSAhPSBlcnJuby5FQ09OTlJFRlVTRUQgb3IgX2NoZWNrX3RpbWVvdXQodCk6Ci0gICAgICAgICAgICAgICAgICAgIGRlYnVnKCdmYWlsZWQgdG8gY29ubmVjdCB0byBhZGRyZXNzICVzJywgYWRkcmVzcykKLSAgICAgICAgICAgICAgICAgICAgcmFpc2UKLSAgICAgICAgICAgICAgICB0aW1lLnNsZWVwKDAuMDEpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICByYWlzZQotCisgICAgICAgIHMuY29ubmVjdChhZGRyZXNzKQogICAgICAgICBmZCA9IGR1cGxpY2F0ZShzLmZpbGVubygpKQotICAgIGNvbm4gPSBfbXVsdGlwcm9jZXNzaW5nLkNvbm5lY3Rpb24oZmQpCisgICAgY29ubiA9IENvbm5lY3Rpb24oZmQpCiAgICAgcmV0dXJuIGNvbm4KIAogIwpAQCAtMzE3LDM5ICs2MTIsNDEgQEAKICAgICAgICAgJycnCiAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhZGRyZXNzLCBiYWNrbG9nPU5vbmUpOgogICAgICAgICAgICAgc2VsZi5fYWRkcmVzcyA9IGFkZHJlc3MKLSAgICAgICAgICAgIGhhbmRsZSA9IHdpbjMyLkNyZWF0ZU5hbWVkUGlwZSgKLSAgICAgICAgICAgICAgICBhZGRyZXNzLCB3aW4zMi5QSVBFX0FDQ0VTU19EVVBMRVgsCi0gICAgICAgICAgICAgICAgd2luMzIuUElQRV9UWVBFX01FU1NBR0UgfCB3aW4zMi5QSVBFX1JFQURNT0RFX01FU1NBR0UgfAotICAgICAgICAgICAgICAgIHdpbjMyLlBJUEVfV0FJVCwKLSAgICAgICAgICAgICAgICB3aW4zMi5QSVBFX1VOTElNSVRFRF9JTlNUQU5DRVMsIEJVRlNJWkUsIEJVRlNJWkUsCi0gICAgICAgICAgICAgICAgd2luMzIuTk1QV0FJVF9XQUlUX0ZPUkVWRVIsIHdpbjMyLk5VTEwKLSAgICAgICAgICAgICAgICApCi0gICAgICAgICAgICBzZWxmLl9oYW5kbGVfcXVldWUgPSBbaGFuZGxlXQorICAgICAgICAgICAgc2VsZi5faGFuZGxlX3F1ZXVlID0gW3NlbGYuX25ld19oYW5kbGUoZmlyc3Q9VHJ1ZSldCisKICAgICAgICAgICAgIHNlbGYuX2xhc3RfYWNjZXB0ZWQgPSBOb25lCi0KICAgICAgICAgICAgIHN1Yl9kZWJ1ZygnbGlzdGVuZXIgY3JlYXRlZCB3aXRoIGFkZHJlc3M9JXInLCBzZWxmLl9hZGRyZXNzKQotCiAgICAgICAgICAgICBzZWxmLmNsb3NlID0gRmluYWxpemUoCiAgICAgICAgICAgICAgICAgc2VsZiwgUGlwZUxpc3RlbmVyLl9maW5hbGl6ZV9waXBlX2xpc3RlbmVyLAogICAgICAgICAgICAgICAgIGFyZ3M9KHNlbGYuX2hhbmRsZV9xdWV1ZSwgc2VsZi5fYWRkcmVzcyksIGV4aXRwcmlvcml0eT0wCiAgICAgICAgICAgICAgICAgKQogCi0gICAgICAgIGRlZiBhY2NlcHQoc2VsZik6Ci0gICAgICAgICAgICBuZXdoYW5kbGUgPSB3aW4zMi5DcmVhdGVOYW1lZFBpcGUoCi0gICAgICAgICAgICAgICAgc2VsZi5fYWRkcmVzcywgd2luMzIuUElQRV9BQ0NFU1NfRFVQTEVYLAorICAgICAgICBkZWYgX25ld19oYW5kbGUoc2VsZiwgZmlyc3Q9RmFsc2UpOgorICAgICAgICAgICAgZmxhZ3MgPSB3aW4zMi5QSVBFX0FDQ0VTU19EVVBMRVggfCB3aW4zMi5GSUxFX0ZMQUdfT1ZFUkxBUFBFRAorICAgICAgICAgICAgaWYgZmlyc3Q6CisgICAgICAgICAgICAgICAgZmxhZ3MgfD0gd2luMzIuRklMRV9GTEFHX0ZJUlNUX1BJUEVfSU5TVEFOQ0UKKyAgICAgICAgICAgIHJldHVybiB3aW4zMi5DcmVhdGVOYW1lZFBpcGUoCisgICAgICAgICAgICAgICAgc2VsZi5fYWRkcmVzcywgZmxhZ3MsCiAgICAgICAgICAgICAgICAgd2luMzIuUElQRV9UWVBFX01FU1NBR0UgfCB3aW4zMi5QSVBFX1JFQURNT0RFX01FU1NBR0UgfAogICAgICAgICAgICAgICAgIHdpbjMyLlBJUEVfV0FJVCwKICAgICAgICAgICAgICAgICB3aW4zMi5QSVBFX1VOTElNSVRFRF9JTlNUQU5DRVMsIEJVRlNJWkUsIEJVRlNJWkUsCiAgICAgICAgICAgICAgICAgd2luMzIuTk1QV0FJVF9XQUlUX0ZPUkVWRVIsIHdpbjMyLk5VTEwKICAgICAgICAgICAgICAgICApCi0gICAgICAgICAgICBzZWxmLl9oYW5kbGVfcXVldWUuYXBwZW5kKG5ld2hhbmRsZSkKKworICAgICAgICBkZWYgYWNjZXB0KHNlbGYpOgorICAgICAgICAgICAgc2VsZi5faGFuZGxlX3F1ZXVlLmFwcGVuZChzZWxmLl9uZXdfaGFuZGxlKCkpCiAgICAgICAgICAgICBoYW5kbGUgPSBzZWxmLl9oYW5kbGVfcXVldWUucG9wKDApCisgICAgICAgICAgICBvdiA9IHdpbjMyLkNvbm5lY3ROYW1lZFBpcGUoaGFuZGxlLCBvdmVybGFwcGVkPVRydWUpCiAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgd2luMzIuQ29ubmVjdE5hbWVkUGlwZShoYW5kbGUsIHdpbjMyLk5VTEwpCi0gICAgICAgICAgICBleGNlcHQgV2luZG93c0Vycm9yIGFzIGU6Ci0gICAgICAgICAgICAgICAgaWYgZS5hcmdzWzBdICE9IHdpbjMyLkVSUk9SX1BJUEVfQ09OTkVDVEVEOgotICAgICAgICAgICAgICAgICAgICByYWlzZQotICAgICAgICAgICAgcmV0dXJuIF9tdWx0aXByb2Nlc3NpbmcuUGlwZUNvbm5lY3Rpb24oaGFuZGxlKQorICAgICAgICAgICAgICAgIHJlcyA9IHdpbjMyLldhaXRGb3JNdWx0aXBsZU9iamVjdHMoW292LmV2ZW50XSwgRmFsc2UsIElORklOSVRFKQorICAgICAgICAgICAgZXhjZXB0OgorICAgICAgICAgICAgICAgIG92LmNhbmNlbCgpCisgICAgICAgICAgICAgICAgd2luMzIuQ2xvc2VIYW5kbGUoaGFuZGxlKQorICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIF8sIGVyciA9IG92LkdldE92ZXJsYXBwZWRSZXN1bHQoVHJ1ZSkKKyAgICAgICAgICAgIGFzc2VydCBlcnIgPT0gMAorICAgICAgICAgICAgcmV0dXJuIFBpcGVDb25uZWN0aW9uKGhhbmRsZSkKIAogICAgICAgICBAc3RhdGljbWV0aG9kCiAgICAgICAgIGRlZiBfZmluYWxpemVfcGlwZV9saXN0ZW5lcihxdWV1ZSwgYWRkcmVzcyk6CkBAIC0zNjcsMTEgKzY2NCwxMiBAQAogICAgICAgICAgICAgICAgIHdpbjMyLldhaXROYW1lZFBpcGUoYWRkcmVzcywgMTAwMCkKICAgICAgICAgICAgICAgICBoID0gd2luMzIuQ3JlYXRlRmlsZSgKICAgICAgICAgICAgICAgICAgICAgYWRkcmVzcywgd2luMzIuR0VORVJJQ19SRUFEIHwgd2luMzIuR0VORVJJQ19XUklURSwKLSAgICAgICAgICAgICAgICAgICAgMCwgd2luMzIuTlVMTCwgd2luMzIuT1BFTl9FWElTVElORywgMCwgd2luMzIuTlVMTAorICAgICAgICAgICAgICAgICAgICAwLCB3aW4zMi5OVUxMLCB3aW4zMi5PUEVOX0VYSVNUSU5HLAorICAgICAgICAgICAgICAgICAgICB3aW4zMi5GSUxFX0ZMQUdfT1ZFUkxBUFBFRCwgd2luMzIuTlVMTAogICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICBleGNlcHQgV2luZG93c0Vycm9yIGFzIGU6Ci0gICAgICAgICAgICAgICAgaWYgZS5hcmdzWzBdIG5vdCBpbiAod2luMzIuRVJST1JfU0VNX1RJTUVPVVQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luMzIuRVJST1JfUElQRV9CVVNZKSBvciBfY2hlY2tfdGltZW91dCh0KToKKyAgICAgICAgICAgICAgICBpZiBlLndpbmVycm9yIG5vdCBpbiAod2luMzIuRVJST1JfU0VNX1RJTUVPVVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbjMyLkVSUk9SX1BJUEVfQlVTWSkgb3IgX2NoZWNrX3RpbWVvdXQodCk6CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIGJyZWFrCkBAIC0zODEsNyArNjc5LDcgQEAKICAgICAgICAgd2luMzIuU2V0TmFtZWRQaXBlSGFuZGxlU3RhdGUoCiAgICAgICAgICAgICBoLCB3aW4zMi5QSVBFX1JFQURNT0RFX01FU1NBR0UsIE5vbmUsIE5vbmUKICAgICAgICAgICAgICkKLSAgICAgICAgcmV0dXJuIF9tdWx0aXByb2Nlc3NpbmcuUGlwZUNvbm5lY3Rpb24oaCkKKyAgICAgICAgcmV0dXJuIFBpcGVDb25uZWN0aW9uKGgpCiAKICMKICMgQXV0aGVudGljYXRpb24gc3R1ZmYKQEAgLTQzOCwxMCArNzM2LDEwIEBACiAgICAgICAgIHJldHVybiBzZWxmLl9sb2FkcyhzKQogCiBkZWYgX3htbF9kdW1wcyhvYmopOgotICAgIHJldHVybiB4bWxycGNsaWIuZHVtcHMoKG9iaiwpLCBOb25lLCBOb25lLCBOb25lLCAxKS5lbmNvZGUoJ3V0ZjgnKQorICAgIHJldHVybiB4bWxycGNsaWIuZHVtcHMoKG9iaiwpLCBOb25lLCBOb25lLCBOb25lLCAxKS5lbmNvZGUoJ3V0Zi04JykKIAogZGVmIF94bWxfbG9hZHMocyk6Ci0gICAgKG9iaiwpLCBtZXRob2QgPSB4bWxycGNsaWIubG9hZHMocy5kZWNvZGUoJ3V0ZjgnKSkKKyAgICAob2JqLCksIG1ldGhvZCA9IHhtbHJwY2xpYi5sb2FkcyhzLmRlY29kZSgndXRmLTgnKSkKICAgICByZXR1cm4gb2JqCiAKIGNsYXNzIFhtbExpc3RlbmVyKExpc3RlbmVyKToKQEAgLTQ1NSwzICs3NTMsMTI2IEBACiAgICAgZ2xvYmFsIHhtbHJwY2xpYgogICAgIGltcG9ydCB4bWxycGMuY2xpZW50IGFzIHhtbHJwY2xpYgogICAgIHJldHVybiBDb25uZWN0aW9uV3JhcHBlcihDbGllbnQoKmFyZ3MsICoqa3dkcyksIF94bWxfZHVtcHMsIF94bWxfbG9hZHMpCisKKyMKKyMgV2FpdAorIworCitpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKKworICAgIGRlZiBfZXhoYXVzdGl2ZV93YWl0KGhhbmRsZXMsIHRpbWVvdXQpOgorICAgICAgICAjIFJldHVybiBBTEwgaGFuZGxlcyB3aGljaCBhcmUgY3VycmVudGx5IHNpZ25hbGxlZC4gIChPbmx5CisgICAgICAgICMgcmV0dXJuaW5nIHRoZSBmaXJzdCBzaWduYWxsZWQgbWlnaHQgY3JlYXRlIHN0YXJ2YXRpb24gaXNzdWVzLikKKyAgICAgICAgTCA9IGxpc3QoaGFuZGxlcykKKyAgICAgICAgcmVhZHkgPSBbXQorICAgICAgICB3aGlsZSBMOgorICAgICAgICAgICAgcmVzID0gd2luMzIuV2FpdEZvck11bHRpcGxlT2JqZWN0cyhMLCBGYWxzZSwgdGltZW91dCkKKyAgICAgICAgICAgIGlmIHJlcyA9PSBXQUlUX1RJTUVPVVQ6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIGVsaWYgV0FJVF9PQkpFQ1RfMCA8PSByZXMgPCBXQUlUX09CSkVDVF8wICsgbGVuKEwpOgorICAgICAgICAgICAgICAgIHJlcyAtPSBXQUlUX09CSkVDVF8wCisgICAgICAgICAgICBlbGlmIFdBSVRfQUJBTkRPTkVEXzAgPD0gcmVzIDwgV0FJVF9BQkFORE9ORURfMCArIGxlbihMKToKKyAgICAgICAgICAgICAgICByZXMgLT0gV0FJVF9BQkFORE9ORURfMAorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoJ1Nob3VsZCBub3QgZ2V0IGhlcmUnKQorICAgICAgICAgICAgcmVhZHkuYXBwZW5kKExbcmVzXSkKKyAgICAgICAgICAgIEwgPSBMW3JlcysxOl0KKyAgICAgICAgICAgIHRpbWVvdXQgPSAwCisgICAgICAgIHJldHVybiByZWFkeQorCisgICAgX3JlYWR5X2Vycm9ycyA9IHt3aW4zMi5FUlJPUl9CUk9LRU5fUElQRSwgd2luMzIuRVJST1JfTkVUTkFNRV9ERUxFVEVEfQorCisgICAgZGVmIHdhaXQob2JqZWN0X2xpc3QsIHRpbWVvdXQ9Tm9uZSk6CisgICAgICAgICcnJworICAgICAgICBXYWl0IHRpbGwgYW4gb2JqZWN0IGluIG9iamVjdF9saXN0IGlzIHJlYWR5L3JlYWRhYmxlLgorCisgICAgICAgIFJldHVybnMgbGlzdCBvZiB0aG9zZSBvYmplY3RzIGluIG9iamVjdF9saXN0IHdoaWNoIGFyZSByZWFkeS9yZWFkYWJsZS4KKyAgICAgICAgJycnCisgICAgICAgIGlmIHRpbWVvdXQgaXMgTm9uZToKKyAgICAgICAgICAgIHRpbWVvdXQgPSBJTkZJTklURQorICAgICAgICBlbGlmIHRpbWVvdXQgPCAwOgorICAgICAgICAgICAgdGltZW91dCA9IDAKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHRpbWVvdXQgPSBpbnQodGltZW91dCAqIDEwMDAgKyAwLjUpCisKKyAgICAgICAgb2JqZWN0X2xpc3QgPSBsaXN0KG9iamVjdF9saXN0KQorICAgICAgICB3YWl0aGFuZGxlX3RvX29iaiA9IHt9CisgICAgICAgIG92X2xpc3QgPSBbXQorICAgICAgICByZWFkeV9vYmplY3RzID0gc2V0KCkKKyAgICAgICAgcmVhZHlfaGFuZGxlcyA9IHNldCgpCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZm9yIG8gaW4gb2JqZWN0X2xpc3Q6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBmaWxlbm8gPSBnZXRhdHRyKG8sICdmaWxlbm8nKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgd2FpdGhhbmRsZV90b19vYmpbby5fX2luZGV4X18oKV0gPSBvCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgIyBzdGFydCBhbiBvdmVybGFwcGVkIHJlYWQgb2YgbGVuZ3RoIHplcm8KKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgb3YsIGVyciA9IHdpbjMyLlJlYWRGaWxlKGZpbGVubygpLCAwLCBUcnVlKQorICAgICAgICAgICAgICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgorICAgICAgICAgICAgICAgICAgICAgICAgZXJyID0gZS53aW5lcnJvcgorICAgICAgICAgICAgICAgICAgICAgICAgaWYgZXJyIG5vdCBpbiBfcmVhZHlfZXJyb3JzOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICAgICAgICAgIGlmIGVyciA9PSB3aW4zMi5FUlJPUl9JT19QRU5ESU5HOgorICAgICAgICAgICAgICAgICAgICAgICAgb3ZfbGlzdC5hcHBlbmQob3YpCisgICAgICAgICAgICAgICAgICAgICAgICB3YWl0aGFuZGxlX3RvX29ialtvdi5ldmVudF0gPSBvCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICAjIElmIG8uZmlsZW5vKCkgaXMgYW4gb3ZlcmxhcHBlZCBwaXBlIGhhbmRsZSBhbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICMgZXJyID09IDAgdGhlbiB0aGVyZSBpcyBhIHplcm8gbGVuZ3RoIG1lc3NhZ2UKKyAgICAgICAgICAgICAgICAgICAgICAgICMgaW4gdGhlIHBpcGUsIGJ1dCBpdCBIQVMgTk9UIGJlZW4gY29uc3VtZWQuCisgICAgICAgICAgICAgICAgICAgICAgICByZWFkeV9vYmplY3RzLmFkZChvKQorICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dCA9IDAKKworICAgICAgICAgICAgcmVhZHlfaGFuZGxlcyA9IF9leGhhdXN0aXZlX3dhaXQod2FpdGhhbmRsZV90b19vYmoua2V5cygpLCB0aW1lb3V0KQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgIyByZXF1ZXN0IHRoYXQgb3ZlcmxhcHBlZCByZWFkcyBzdG9wCisgICAgICAgICAgICBmb3Igb3YgaW4gb3ZfbGlzdDoKKyAgICAgICAgICAgICAgICBvdi5jYW5jZWwoKQorCisgICAgICAgICAgICAjIHdhaXQgZm9yIGFsbCBvdmVybGFwcGVkIHJlYWRzIHRvIHN0b3AKKyAgICAgICAgICAgIGZvciBvdiBpbiBvdl9saXN0OgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgXywgZXJyID0gb3YuR2V0T3ZlcmxhcHBlZFJlc3VsdChUcnVlKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICAgICAgICAgIGVyciA9IGUud2luZXJyb3IKKyAgICAgICAgICAgICAgICAgICAgaWYgZXJyIG5vdCBpbiBfcmVhZHlfZXJyb3JzOgorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICBpZiBlcnIgIT0gd2luMzIuRVJST1JfT1BFUkFUSU9OX0FCT1JURUQ6CisgICAgICAgICAgICAgICAgICAgIG8gPSB3YWl0aGFuZGxlX3RvX29ialtvdi5ldmVudF0KKyAgICAgICAgICAgICAgICAgICAgcmVhZHlfb2JqZWN0cy5hZGQobykKKyAgICAgICAgICAgICAgICAgICAgaWYgZXJyID09IDA6CisgICAgICAgICAgICAgICAgICAgICAgICAjIElmIG8uZmlsZW5vKCkgaXMgYW4gb3ZlcmxhcHBlZCBwaXBlIGhhbmRsZSB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAjIGEgemVybyBsZW5ndGggbWVzc2FnZSBIQVMgYmVlbiBjb25zdW1lZC4KKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIobywgJ19nb3RfZW1wdHlfbWVzc2FnZScpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8uX2dvdF9lbXB0eV9tZXNzYWdlID0gVHJ1ZQorCisgICAgICAgIHJlYWR5X29iamVjdHMudXBkYXRlKHdhaXRoYW5kbGVfdG9fb2JqW2hdIGZvciBoIGluIHJlYWR5X2hhbmRsZXMpCisgICAgICAgIHJldHVybiBbbyBmb3IgbyBpbiBvYmplY3RfbGlzdCBpZiBvIGluIHJlYWR5X29iamVjdHNdCisKK2Vsc2U6CisKKyAgICBkZWYgd2FpdChvYmplY3RfbGlzdCwgdGltZW91dD1Ob25lKToKKyAgICAgICAgJycnCisgICAgICAgIFdhaXQgdGlsbCBhbiBvYmplY3QgaW4gb2JqZWN0X2xpc3QgaXMgcmVhZHkvcmVhZGFibGUuCisKKyAgICAgICAgUmV0dXJucyBsaXN0IG9mIHRob3NlIG9iamVjdHMgaW4gb2JqZWN0X2xpc3Qgd2hpY2ggYXJlIHJlYWR5L3JlYWRhYmxlLgorICAgICAgICAnJycKKyAgICAgICAgaWYgdGltZW91dCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIGlmIHRpbWVvdXQgPD0gMDoKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZWN0LnNlbGVjdChvYmplY3RfbGlzdCwgW10sIFtdLCAwKVswXQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBkZWFkbGluZSA9IHRpbWUudGltZSgpICsgdGltZW91dAorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxlY3Quc2VsZWN0KG9iamVjdF9saXN0LCBbXSwgW10sIHRpbWVvdXQpWzBdCisgICAgICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgorICAgICAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gZXJybm8uRUlOVFI6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICBpZiB0aW1lb3V0IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBkZWFkbGluZSAtIHRpbWUudGltZSgpCisKKworIyBMYXRlIGltcG9ydCBiZWNhdXNlIG9mIGNpcmN1bGFyIGltcG9ydAorZnJvbSBtdWx0aXByb2Nlc3NpbmcuZm9ya2luZyBpbXBvcnQgZHVwbGljYXRlLCBjbG9zZQpkaWZmIC0tZ2l0IGEvTGliL211bHRpcHJvY2Vzc2luZy9kdW1teS9fX2luaXRfXy5weSBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvZHVtbXkvX19pbml0X18ucHkKaW5kZXggYzQ5MzNkOS4uMDU2YWNmYyAxMDA2NDQKLS0tIGEvTGliL211bHRpcHJvY2Vzc2luZy9kdW1teS9fX2luaXRfXy5weQorKysgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL2R1bW15L19faW5pdF9fLnB5CkBAIC00NiwxMiArNDYsMTAgQEAKIGltcG9ydCBzeXMKIGltcG9ydCB3ZWFrcmVmCiBpbXBvcnQgYXJyYXkKLWltcG9ydCBpdGVydG9vbHMKIAotZnJvbSBtdWx0aXByb2Nlc3NpbmcgaW1wb3J0IFRpbWVvdXRFcnJvciwgY3B1X2NvdW50CiBmcm9tIG11bHRpcHJvY2Vzc2luZy5kdW1teS5jb25uZWN0aW9uIGltcG9ydCBQaXBlCiBmcm9tIHRocmVhZGluZyBpbXBvcnQgTG9jaywgUkxvY2ssIFNlbWFwaG9yZSwgQm91bmRlZFNlbWFwaG9yZQotZnJvbSB0aHJlYWRpbmcgaW1wb3J0IEV2ZW50Citmcm9tIHRocmVhZGluZyBpbXBvcnQgRXZlbnQsIENvbmRpdGlvbgogZnJvbSBxdWV1ZSBpbXBvcnQgUXVldWUKIAogIwpAQCAtODQsMTcgKzgyLDYgQEAKICMKICMKIAotY2xhc3MgQ29uZGl0aW9uKHRocmVhZGluZy5fQ29uZGl0aW9uKToKLSAgICAjIFhYWAotICAgIGlmIHN5cy52ZXJzaW9uX2luZm8gPCAoMywgMCk6Ci0gICAgICAgIG5vdGlmeV9hbGwgPSB0aHJlYWRpbmcuX0NvbmRpdGlvbi5ub3RpZnlfYWxsLl9fZnVuY19fCi0gICAgZWxzZToKLSAgICAgICAgbm90aWZ5X2FsbCA9IHRocmVhZGluZy5fQ29uZGl0aW9uLm5vdGlmeV9hbGwKLQotIwotIwotIwotCiBQcm9jZXNzID0gRHVtbXlQcm9jZXNzCiBjdXJyZW50X3Byb2Nlc3MgPSB0aHJlYWRpbmcuY3VycmVudF90aHJlYWQKIGN1cnJlbnRfcHJvY2VzcygpLl9jaGlsZHJlbiA9IHdlYWtyZWYuV2Vha0tleURpY3Rpb25hcnkoKQpkaWZmIC0tZ2l0IGEvTGliL211bHRpcHJvY2Vzc2luZy9mb3JraW5nLnB5IGIvTGliL211bHRpcHJvY2Vzc2luZy9mb3JraW5nLnB5CmluZGV4IDRlMjRkNmEuLmI3ZGU1NjcgMTAwNjQ0Ci0tLSBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvZm9ya2luZy5weQorKysgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL2ZvcmtpbmcucHkKQEAgLTEwMCwxMSArMTAwLDEyIEBACiAjCiAKIGlmIHN5cy5wbGF0Zm9ybSAhPSAnd2luMzInOgotICAgIGltcG9ydCB0aW1lCisgICAgaW1wb3J0IHNlbGVjdAogCiAgICAgZXhpdCA9IG9zLl9leGl0CiAgICAgZHVwbGljYXRlID0gb3MuZHVwCiAgICAgY2xvc2UgPSBvcy5jbG9zZQorICAgIF9zZWxlY3QgPSB1dGlsLl9laW50cl9yZXRyeShzZWxlY3Quc2VsZWN0KQogCiAgICAgIwogICAgICMgV2UgZGVmaW5lIGEgUG9wZW4gY2xhc3Mgc2ltaWxhciB0byB0aGUgb25lIGZyb20gc3VicHJvY2VzcywgYnV0CkBAIC0xMTgsMTQgKzExOSwyMyBAQAogICAgICAgICAgICAgc3lzLnN0ZGVyci5mbHVzaCgpCiAgICAgICAgICAgICBzZWxmLnJldHVybmNvZGUgPSBOb25lCiAKKyAgICAgICAgICAgIHIsIHcgPSBvcy5waXBlKCkKKyAgICAgICAgICAgIHNlbGYuc2VudGluZWwgPSByCisKICAgICAgICAgICAgIHNlbGYucGlkID0gb3MuZm9yaygpCiAgICAgICAgICAgICBpZiBzZWxmLnBpZCA9PSAwOgorICAgICAgICAgICAgICAgIG9zLmNsb3NlKHIpCiAgICAgICAgICAgICAgICAgaWYgJ3JhbmRvbScgaW4gc3lzLm1vZHVsZXM6CiAgICAgICAgICAgICAgICAgICAgIGltcG9ydCByYW5kb20KICAgICAgICAgICAgICAgICAgICAgcmFuZG9tLnNlZWQoKQogICAgICAgICAgICAgICAgIGNvZGUgPSBwcm9jZXNzX29iai5fYm9vdHN0cmFwKCkKICAgICAgICAgICAgICAgICBvcy5fZXhpdChjb2RlKQogCisgICAgICAgICAgICAjIGB3YCB3aWxsIGJlIGNsb3NlZCB3aGVuIHRoZSBjaGlsZCBleGl0cywgYXQgd2hpY2ggcG9pbnQgYHJgCisgICAgICAgICAgICAjIHdpbGwgYmVjb21lIHJlYWR5IGZvciByZWFkaW5nICh1c2luZyBlLmcuIHNlbGVjdCgpKS4KKyAgICAgICAgICAgIG9zLmNsb3NlKHcpCisgICAgICAgICAgICB1dGlsLkZpbmFsaXplKHNlbGYsIG9zLmNsb3NlLCAociwpKQorCiAgICAgICAgIGRlZiBwb2xsKHNlbGYsIGZsYWc9b3MuV05PSEFORyk6CiAgICAgICAgICAgICBpZiBzZWxmLnJldHVybmNvZGUgaXMgTm9uZToKICAgICAgICAgICAgICAgICB0cnk6CkBAIC0xNDMsMjYgKzE1MywyMCBAQAogICAgICAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuY29kZQogCiAgICAgICAgIGRlZiB3YWl0KHNlbGYsIHRpbWVvdXQ9Tm9uZSk6Ci0gICAgICAgICAgICBpZiB0aW1lb3V0IGlzIE5vbmU6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYucG9sbCgwKQotICAgICAgICAgICAgZGVhZGxpbmUgPSB0aW1lLnRpbWUoKSArIHRpbWVvdXQKLSAgICAgICAgICAgIGRlbGF5ID0gMC4wMDA1Ci0gICAgICAgICAgICB3aGlsZSAxOgotICAgICAgICAgICAgICAgIHJlcyA9IHNlbGYucG9sbCgpCi0gICAgICAgICAgICAgICAgaWYgcmVzIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgIHJlbWFpbmluZyA9IGRlYWRsaW5lIC0gdGltZS50aW1lKCkKLSAgICAgICAgICAgICAgICBpZiByZW1haW5pbmcgPD0gMDoKLSAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICBkZWxheSA9IG1pbihkZWxheSAqIDIsIHJlbWFpbmluZywgMC4wNSkKLSAgICAgICAgICAgICAgICB0aW1lLnNsZWVwKGRlbGF5KQotICAgICAgICAgICAgcmV0dXJuIHJlcworICAgICAgICAgICAgaWYgc2VsZi5yZXR1cm5jb2RlIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgaWYgdGltZW91dCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgciA9IF9zZWxlY3QoW3NlbGYuc2VudGluZWxdLCBbXSwgW10sIHRpbWVvdXQpWzBdCisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCByOgorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgICAgICAgICAjIFRoaXMgc2hvdWxkbid0IGJsb2NrIGlmIHNlbGVjdCgpIHJldHVybmVkIHN1Y2Nlc3NmdWxseS4KKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5wb2xsKG9zLldOT0hBTkcgaWYgdGltZW91dCA9PSAwLjAgZWxzZSAwKQorICAgICAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuY29kZQogCiAgICAgICAgIGRlZiB0ZXJtaW5hdGUoc2VsZik6CiAgICAgICAgICAgICBpZiBzZWxmLnJldHVybmNvZGUgaXMgTm9uZToKICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgIG9zLmtpbGwoc2VsZi5waWQsIHNpZ25hbC5TSUdURVJNKQotICAgICAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3I6CiAgICAgICAgICAgICAgICAgICAgIGlmIHNlbGYud2FpdCh0aW1lb3V0PTAuMSkgaXMgTm9uZToKICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCiAKQEAgLTE3OCwxMSArMTgyLDkgQEAKICAgICBpbXBvcnQgX3RocmVhZAogICAgIGltcG9ydCBtc3ZjcnQKICAgICBpbXBvcnQgX3N1YnByb2Nlc3MKLSAgICBpbXBvcnQgdGltZQogCi0gICAgZnJvbSBwaWNrbGUgaW1wb3J0IGR1bXAsIGxvYWQsIEhJR0hFU1RfUFJPVE9DT0wKLSAgICBmcm9tIF9tdWx0aXByb2Nlc3NpbmcgaW1wb3J0IHdpbjMyLCBDb25uZWN0aW9uLCBQaXBlQ29ubmVjdGlvbgotICAgIGZyb20gLnV0aWwgaW1wb3J0IEZpbmFsaXplCisgICAgZnJvbSBwaWNrbGUgaW1wb3J0IGxvYWQsIEhJR0hFU1RfUFJPVE9DT0wKKyAgICBmcm9tIF9tdWx0aXByb2Nlc3NpbmcgaW1wb3J0IHdpbjMyCiAKICAgICBkZWYgZHVtcChvYmosIGZpbGUsIHByb3RvY29sPU5vbmUpOgogICAgICAgICBGb3JraW5nUGlja2xlcihmaWxlLCBwcm90b2NvbCkuZHVtcChvYmopCkBAIC0yNTYsNiArMjU4LDcgQEAKICAgICAgICAgICAgIHNlbGYucGlkID0gcGlkCiAgICAgICAgICAgICBzZWxmLnJldHVybmNvZGUgPSBOb25lCiAgICAgICAgICAgICBzZWxmLl9oYW5kbGUgPSBocAorICAgICAgICAgICAgc2VsZi5zZW50aW5lbCA9IGludChocCkKIAogICAgICAgICAgICAgIyBzZW5kIGluZm9ybWF0aW9uIHRvIGNoaWxkCiAgICAgICAgICAgICBwcmVwX2RhdGEgPSBnZXRfcHJlcGFyYXRpb25fZGF0YShwcm9jZXNzX29iai5fbmFtZSkKQEAgLTQwOSw2ICs0MTIsOSBAQAogICAgICMgTWFrZSAoUGlwZSlDb25uZWN0aW9uIHBpY2tsYWJsZQogICAgICMKIAorICAgICMgTGF0ZSBpbXBvcnQgYmVjYXVzZSBvZiBjaXJjdWxhciBpbXBvcnQKKyAgICBmcm9tIC5jb25uZWN0aW9uIGltcG9ydCBDb25uZWN0aW9uLCBQaXBlQ29ubmVjdGlvbgorCiAgICAgZGVmIHJlZHVjZV9jb25uZWN0aW9uKGNvbm4pOgogICAgICAgICBpZiBub3QgUG9wZW4udGhyZWFkX2lzX3NwYXduaW5nKCk6CiAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoCmRpZmYgLS1naXQgYS9MaWIvbXVsdGlwcm9jZXNzaW5nL2hlYXAucHkgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL2hlYXAucHkKaW5kZXggMGEyNWVmMC4uNzM2NmJkMiAxMDA2NDQKLS0tIGEvTGliL211bHRpcHJvY2Vzc2luZy9oZWFwLnB5CisrKyBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvaGVhcC5weQpAQCAtMzQsNyArMzQsNiBAQAogCiBpbXBvcnQgYmlzZWN0CiBpbXBvcnQgbW1hcAotaW1wb3J0IHRlbXBmaWxlCiBpbXBvcnQgb3MKIGltcG9ydCBzeXMKIGltcG9ydCB0aHJlYWRpbmcKZGlmZiAtLWdpdCBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvbWFuYWdlcnMucHkgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL21hbmFnZXJzLnB5CmluZGV4IDU1ODhlYWQuLmVhZjkxMmMgMTAwNjQ0Ci0tLSBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvbWFuYWdlcnMucHkKKysrIGIvTGliL211bHRpcHJvY2Vzc2luZy9tYW5hZ2Vycy5weQpAQCAtMzksMTkgKzM5LDE1IEBACiAjIEltcG9ydHMKICMKIAotaW1wb3J0IG9zCiBpbXBvcnQgc3lzCi1pbXBvcnQgd2Vha3JlZgogaW1wb3J0IHRocmVhZGluZwogaW1wb3J0IGFycmF5CiBpbXBvcnQgcXVldWUKIAogZnJvbSB0cmFjZWJhY2sgaW1wb3J0IGZvcm1hdF9leGMKLWZyb20gcGlja2xlIGltcG9ydCBQaWNrbGluZ0Vycm9yCiBmcm9tIG11bHRpcHJvY2Vzc2luZyBpbXBvcnQgUHJvY2VzcywgY3VycmVudF9wcm9jZXNzLCBhY3RpdmVfY2hpbGRyZW4sIFBvb2wsIHV0aWwsIGNvbm5lY3Rpb24KIGZyb20gbXVsdGlwcm9jZXNzaW5nLnByb2Nlc3MgaW1wb3J0IEF1dGhlbnRpY2F0aW9uU3RyaW5nCi1mcm9tIG11bHRpcHJvY2Vzc2luZy5mb3JraW5nIGltcG9ydCBleGl0LCBQb3BlbiwgYXNzZXJ0X3NwYXduaW5nLCBGb3JraW5nUGlja2xlcgotZnJvbSBtdWx0aXByb2Nlc3NpbmcudXRpbCBpbXBvcnQgRmluYWxpemUsIGluZm8KK2Zyb20gbXVsdGlwcm9jZXNzaW5nLmZvcmtpbmcgaW1wb3J0IGV4aXQsIFBvcGVuLCBGb3JraW5nUGlja2xlcgogCiAjCiAjIFJlZ2lzdGVyIHNvbWUgdGhpbmdzIGZvciBwaWNrbGluZwpAQCAtMTA3MCwxMSArMTA2NiwxMiBAQAogCiBQb29sUHJveHkgPSBNYWtlUHJveHlUeXBlKCdQb29sUHJveHknLCAoCiAgICAgJ2FwcGx5JywgJ2FwcGx5X2FzeW5jJywgJ2Nsb3NlJywgJ2ltYXAnLCAnaW1hcF91bm9yZGVyZWQnLCAnam9pbicsCi0gICAgJ21hcCcsICdtYXBfYXN5bmMnLCAndGVybWluYXRlJworICAgICdtYXAnLCAnbWFwX2FzeW5jJywgJ3N0YXJtYXAnLCAnc3Rhcm1hcF9hc3luYycsICd0ZXJtaW5hdGUnCiAgICAgKSkKIFBvb2xQcm94eS5fbWV0aG9kX3RvX3R5cGVpZF8gPSB7CiAgICAgJ2FwcGx5X2FzeW5jJzogJ0FzeW5jUmVzdWx0JywKICAgICAnbWFwX2FzeW5jJzogJ0FzeW5jUmVzdWx0JywKKyAgICAnc3Rhcm1hcF9hc3luYyc6ICdBc3luY1Jlc3VsdCcsCiAgICAgJ2ltYXAnOiAnSXRlcmF0b3InLAogICAgICdpbWFwX3Vub3JkZXJlZCc6ICdJdGVyYXRvcicKICAgICB9CmRpZmYgLS1naXQgYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3Bvb2wucHkgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL3Bvb2wucHkKaW5kZXggMGMyOWU2NC4uNzAzOWQxNiAxMDA2NDQKLS0tIGEvTGliL211bHRpcHJvY2Vzc2luZy9wb29sLnB5CisrKyBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvcG9vbC5weQpAQCAtNjQsNiArNjQsOSBAQAogZGVmIG1hcHN0YXIoYXJncyk6CiAgICAgcmV0dXJuIGxpc3QobWFwKCphcmdzKSkKIAorZGVmIHN0YXJtYXBzdGFyKGFyZ3MpOgorICAgIHJldHVybiBsaXN0KGl0ZXJ0b29scy5zdGFybWFwKGFyZ3NbMF0sIGFyZ3NbMV0pKQorCiAjCiAjIENvZGUgcnVuIGJ5IHdvcmtlciBwcm9jZXNzZXMKICMKQEAgLTI0OCw3ICsyNTEsMjUgQEAKICAgICAgICAgaW4gYSBsaXN0IHRoYXQgaXMgcmV0dXJuZWQuCiAgICAgICAgICcnJwogICAgICAgICBhc3NlcnQgc2VsZi5fc3RhdGUgPT0gUlVOCi0gICAgICAgIHJldHVybiBzZWxmLm1hcF9hc3luYyhmdW5jLCBpdGVyYWJsZSwgY2h1bmtzaXplKS5nZXQoKQorICAgICAgICByZXR1cm4gc2VsZi5fbWFwX2FzeW5jKGZ1bmMsIGl0ZXJhYmxlLCBtYXBzdGFyLCBjaHVua3NpemUpLmdldCgpCisKKyAgICBkZWYgc3Rhcm1hcChzZWxmLCBmdW5jLCBpdGVyYWJsZSwgY2h1bmtzaXplPU5vbmUpOgorICAgICAgICAnJycKKyAgICAgICAgTGlrZSBgbWFwKClgIG1ldGhvZCBidXQgdGhlIGVsZW1lbnRzIG9mIHRoZSBgaXRlcmFibGVgIGFyZSBleHBlY3RlZCB0bworICAgICAgICBiZSBpdGVyYWJsZXMgYXMgd2VsbCBhbmQgd2lsbCBiZSB1bnBhY2tlZCBhcyBhcmd1bWVudHMuIEhlbmNlCisgICAgICAgIGBmdW5jYCBhbmQgKGEsIGIpIGJlY29tZXMgZnVuYyhhLCBiKS4KKyAgICAgICAgJycnCisgICAgICAgIGFzc2VydCBzZWxmLl9zdGF0ZSA9PSBSVU4KKyAgICAgICAgcmV0dXJuIHNlbGYuX21hcF9hc3luYyhmdW5jLCBpdGVyYWJsZSwgc3Rhcm1hcHN0YXIsIGNodW5rc2l6ZSkuZ2V0KCkKKworICAgIGRlZiBzdGFybWFwX2FzeW5jKHNlbGYsIGZ1bmMsIGl0ZXJhYmxlLCBjaHVua3NpemU9Tm9uZSwgY2FsbGJhY2s9Tm9uZSwKKyAgICAgICAgICAgIGVycm9yX2NhbGxiYWNrPU5vbmUpOgorICAgICAgICAnJycKKyAgICAgICAgQXN5bmNocm9ub3VzIHZlcnNpb24gb2YgYHN0YXJtYXAoKWAgbWV0aG9kLgorICAgICAgICAnJycKKyAgICAgICAgYXNzZXJ0IHNlbGYuX3N0YXRlID09IFJVTgorICAgICAgICByZXR1cm4gc2VsZi5fbWFwX2FzeW5jKGZ1bmMsIGl0ZXJhYmxlLCBzdGFybWFwc3RhciwgY2h1bmtzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrLCBlcnJvcl9jYWxsYmFjaykKIAogICAgIGRlZiBpbWFwKHNlbGYsIGZ1bmMsIGl0ZXJhYmxlLCBjaHVua3NpemU9MSk6CiAgICAgICAgICcnJwpAQCAtMzAyLDYgKzMyMywxMyBAQAogICAgICAgICBBc3luY2hyb25vdXMgdmVyc2lvbiBvZiBgbWFwKClgIG1ldGhvZC4KICAgICAgICAgJycnCiAgICAgICAgIGFzc2VydCBzZWxmLl9zdGF0ZSA9PSBSVU4KKyAgICAgICAgcmV0dXJuIHNlbGYuX21hcF9hc3luYyhmdW5jLCBpdGVyYWJsZSwgbWFwc3RhciwgY2h1bmtzaXplKQorCisgICAgZGVmIF9tYXBfYXN5bmMoc2VsZiwgZnVuYywgaXRlcmFibGUsIG1hcHBlciwgY2h1bmtzaXplPU5vbmUsIGNhbGxiYWNrPU5vbmUsCisgICAgICAgICAgICBlcnJvcl9jYWxsYmFjaz1Ob25lKToKKyAgICAgICAgJycnCisgICAgICAgIEhlbHBlciBmdW5jdGlvbiB0byBpbXBsZW1lbnQgbWFwLCBzdGFybWFwIGFuZCB0aGVpciBhc3luYyBjb3VudGVycGFydHMuCisgICAgICAgICcnJwogICAgICAgICBpZiBub3QgaGFzYXR0cihpdGVyYWJsZSwgJ19fbGVuX18nKToKICAgICAgICAgICAgIGl0ZXJhYmxlID0gbGlzdChpdGVyYWJsZSkKIApAQCAtMzE1LDcgKzM0Myw3IEBACiAgICAgICAgIHRhc2tfYmF0Y2hlcyA9IFBvb2wuX2dldF90YXNrcyhmdW5jLCBpdGVyYWJsZSwgY2h1bmtzaXplKQogICAgICAgICByZXN1bHQgPSBNYXBSZXN1bHQoc2VsZi5fY2FjaGUsIGNodW5rc2l6ZSwgbGVuKGl0ZXJhYmxlKSwgY2FsbGJhY2ssCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcl9jYWxsYmFjaz1lcnJvcl9jYWxsYmFjaykKLSAgICAgICAgc2VsZi5fdGFza3F1ZXVlLnB1dCgoKChyZXN1bHQuX2pvYiwgaSwgbWFwc3RhciwgKHgsKSwge30pCisgICAgICAgIHNlbGYuX3Rhc2txdWV1ZS5wdXQoKCgocmVzdWx0Ll9qb2IsIGksIG1hcHBlciwgKHgsKSwge30pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgaSwgeCBpbiBlbnVtZXJhdGUodGFza19iYXRjaGVzKSksIE5vbmUpKQogICAgICAgICByZXR1cm4gcmVzdWx0CiAKZGlmZiAtLWdpdCBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvcHJvY2Vzcy5weSBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvcHJvY2Vzcy5weQppbmRleCAyYjYxZWU5Li5iNTk5ZjExIDEwMDY0NAotLS0gYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3Byb2Nlc3MucHkKKysrIGIvTGliL211bHRpcHJvY2Vzc2luZy9wcm9jZXNzLnB5CkBAIC05MiwxMiArOTIsMTYgQEAKICAgICAnJycKICAgICBfUG9wZW4gPSBOb25lCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgZ3JvdXA9Tm9uZSwgdGFyZ2V0PU5vbmUsIG5hbWU9Tm9uZSwgYXJncz0oKSwga3dhcmdzPXt9KToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZ3JvdXA9Tm9uZSwgdGFyZ2V0PU5vbmUsIG5hbWU9Tm9uZSwgYXJncz0oKSwga3dhcmdzPXt9LAorICAgICAgICAgICAgICAgICAqLCBkYWVtb249Tm9uZSk6CiAgICAgICAgIGFzc2VydCBncm91cCBpcyBOb25lLCAnZ3JvdXAgYXJndW1lbnQgbXVzdCBiZSBOb25lIGZvciBub3cnCiAgICAgICAgIGNvdW50ID0gbmV4dChfY3VycmVudF9wcm9jZXNzLl9jb3VudGVyKQogICAgICAgICBzZWxmLl9pZGVudGl0eSA9IF9jdXJyZW50X3Byb2Nlc3MuX2lkZW50aXR5ICsgKGNvdW50LCkKICAgICAgICAgc2VsZi5fYXV0aGtleSA9IF9jdXJyZW50X3Byb2Nlc3MuX2F1dGhrZXkKLSAgICAgICAgc2VsZi5fZGFlbW9uaWMgPSBfY3VycmVudF9wcm9jZXNzLl9kYWVtb25pYworICAgICAgICBpZiBkYWVtb24gaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLl9kYWVtb25pYyA9IGRhZW1vbgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5fZGFlbW9uaWMgPSBfY3VycmVudF9wcm9jZXNzLl9kYWVtb25pYwogICAgICAgICBzZWxmLl90ZW1wZGlyID0gX2N1cnJlbnRfcHJvY2Vzcy5fdGVtcGRpcgogICAgICAgICBzZWxmLl9wYXJlbnRfcGlkID0gb3MuZ2V0cGlkKCkKICAgICAgICAgc2VsZi5fcG9wZW4gPSBOb25lCkBAIC0xMzAsNiArMTM0LDcgQEAKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIGZyb20gLmZvcmtpbmcgaW1wb3J0IFBvcGVuCiAgICAgICAgIHNlbGYuX3BvcGVuID0gUG9wZW4oc2VsZikKKyAgICAgICAgc2VsZi5fc2VudGluZWwgPSBzZWxmLl9wb3Blbi5zZW50aW5lbAogICAgICAgICBfY3VycmVudF9wcm9jZXNzLl9jaGlsZHJlbi5hZGQoc2VsZikKIAogICAgIGRlZiB0ZXJtaW5hdGUoc2VsZik6CkBAIC0yMTYsNiArMjIxLDE3IEBACiAKICAgICBwaWQgPSBpZGVudAogCisgICAgQHByb3BlcnR5CisgICAgZGVmIHNlbnRpbmVsKHNlbGYpOgorICAgICAgICAnJycKKyAgICAgICAgUmV0dXJuIGEgZmlsZSBkZXNjcmlwdG9yIChVbml4KSBvciBoYW5kbGUgKFdpbmRvd3MpIHN1aXRhYmxlIGZvcgorICAgICAgICB3YWl0aW5nIGZvciBwcm9jZXNzIHRlcm1pbmF0aW9uLgorICAgICAgICAnJycKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3NlbnRpbmVsCisgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoInByb2Nlc3Mgbm90IHN0YXJ0ZWQiKQorCiAgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgogICAgICAgICBpZiBzZWxmIGlzIF9jdXJyZW50X3Byb2Nlc3M6CiAgICAgICAgICAgICBzdGF0dXMgPSAnc3RhcnRlZCcKZGlmZiAtLWdpdCBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvcXVldWVzLnB5IGIvTGliL211bHRpcHJvY2Vzc2luZy9xdWV1ZXMucHkKaW5kZXggNTFkOTkxMi4uMjYyZmQ4NSAxMDA2NDQKLS0tIGEvTGliL211bHRpcHJvY2Vzc2luZy9xdWV1ZXMucHkKKysrIGIvTGliL211bHRpcHJvY2Vzc2luZy9xdWV1ZXMucHkKQEAgLTM5LDEyICszOSwxMiBAQAogaW1wb3J0IHRocmVhZGluZwogaW1wb3J0IGNvbGxlY3Rpb25zCiBpbXBvcnQgdGltZQotaW1wb3J0IGF0ZXhpdAogaW1wb3J0IHdlYWtyZWYKK2ltcG9ydCBlcnJubwogCiBmcm9tIHF1ZXVlIGltcG9ydCBFbXB0eSwgRnVsbAogaW1wb3J0IF9tdWx0aXByb2Nlc3NpbmcKLWZyb20gbXVsdGlwcm9jZXNzaW5nIGltcG9ydCBQaXBlCitmcm9tIG11bHRpcHJvY2Vzc2luZy5jb25uZWN0aW9uIGltcG9ydCBQaXBlCiBmcm9tIG11bHRpcHJvY2Vzc2luZy5zeW5jaHJvbml6ZSBpbXBvcnQgTG9jaywgQm91bmRlZFNlbWFwaG9yZSwgU2VtYXBob3JlLCBDb25kaXRpb24KIGZyb20gbXVsdGlwcm9jZXNzaW5nLnV0aWwgaW1wb3J0IGRlYnVnLCBpbmZvLCBGaW5hbGl6ZSwgcmVnaXN0ZXJfYWZ0ZXJfZm9yawogZnJvbSBtdWx0aXByb2Nlc3NpbmcuZm9ya2luZyBpbXBvcnQgYXNzZXJ0X3NwYXduaW5nCkBAIC02Nyw2ICs2Nyw4IEBACiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBzZWxmLl93bG9jayA9IExvY2soKQogICAgICAgICBzZWxmLl9zZW0gPSBCb3VuZGVkU2VtYXBob3JlKG1heHNpemUpCisgICAgICAgICMgRm9yIHVzZSBieSBjb25jdXJyZW50LmZ1dHVyZXMKKyAgICAgICAgc2VsZi5faWdub3JlX2VwaXBlID0gRmFsc2UKIAogICAgICAgICBzZWxmLl9hZnRlcl9mb3JrKCkKIApAQCAtNzUsMTEgKzc3LDExIEBACiAKICAgICBkZWYgX19nZXRzdGF0ZV9fKHNlbGYpOgogICAgICAgICBhc3NlcnRfc3Bhd25pbmcoc2VsZikKLSAgICAgICAgcmV0dXJuIChzZWxmLl9tYXhzaXplLCBzZWxmLl9yZWFkZXIsIHNlbGYuX3dyaXRlciwKKyAgICAgICAgcmV0dXJuIChzZWxmLl9pZ25vcmVfZXBpcGUsIHNlbGYuX21heHNpemUsIHNlbGYuX3JlYWRlciwgc2VsZi5fd3JpdGVyLAogICAgICAgICAgICAgICAgIHNlbGYuX3Jsb2NrLCBzZWxmLl93bG9jaywgc2VsZi5fc2VtLCBzZWxmLl9vcGlkKQogCiAgICAgZGVmIF9fc2V0c3RhdGVfXyhzZWxmLCBzdGF0ZSk6Ci0gICAgICAgIChzZWxmLl9tYXhzaXplLCBzZWxmLl9yZWFkZXIsIHNlbGYuX3dyaXRlciwKKyAgICAgICAgKHNlbGYuX2lnbm9yZV9lcGlwZSwgc2VsZi5fbWF4c2l6ZSwgc2VsZi5fcmVhZGVyLCBzZWxmLl93cml0ZXIsCiAgICAgICAgICBzZWxmLl9ybG9jaywgc2VsZi5fd2xvY2ssIHNlbGYuX3NlbSwgc2VsZi5fb3BpZCkgPSBzdGF0ZQogICAgICAgICBzZWxmLl9hZnRlcl9mb3JrKCkKIApAQCAtMTgyLDcgKzE4NCw3IEBACiAgICAgICAgIHNlbGYuX3RocmVhZCA9IHRocmVhZGluZy5UaHJlYWQoCiAgICAgICAgICAgICB0YXJnZXQ9UXVldWUuX2ZlZWQsCiAgICAgICAgICAgICBhcmdzPShzZWxmLl9idWZmZXIsIHNlbGYuX25vdGVtcHR5LCBzZWxmLl9zZW5kLAotICAgICAgICAgICAgICAgICAgc2VsZi5fd2xvY2ssIHNlbGYuX3dyaXRlci5jbG9zZSksCisgICAgICAgICAgICAgICAgICBzZWxmLl93bG9jaywgc2VsZi5fd3JpdGVyLmNsb3NlLCBzZWxmLl9pZ25vcmVfZXBpcGUpLAogICAgICAgICAgICAgbmFtZT0nUXVldWVGZWVkZXJUaHJlYWQnCiAgICAgICAgICAgICApCiAgICAgICAgIHNlbGYuX3RocmVhZC5kYWVtb24gPSBUcnVlCkBAIC0yMzMsNyArMjM1LDcgQEAKICAgICAgICAgICAgIG5vdGVtcHR5LnJlbGVhc2UoKQogCiAgICAgQHN0YXRpY21ldGhvZAotICAgIGRlZiBfZmVlZChidWZmZXIsIG5vdGVtcHR5LCBzZW5kLCB3cml0ZWxvY2ssIGNsb3NlKToKKyAgICBkZWYgX2ZlZWQoYnVmZmVyLCBub3RlbXB0eSwgc2VuZCwgd3JpdGVsb2NrLCBjbG9zZSwgaWdub3JlX2VwaXBlKToKICAgICAgICAgZGVidWcoJ3N0YXJ0aW5nIHRocmVhZCB0byBmZWVkIGRhdGEgdG8gcGlwZScpCiAgICAgICAgIGZyb20gLnV0aWwgaW1wb3J0IGlzX2V4aXRpbmcKIApAQCAtMjc1LDYgKzI3Nyw4IEBACiAgICAgICAgICAgICAgICAgZXhjZXB0IEluZGV4RXJyb3I6CiAgICAgICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgaWYgaWdub3JlX2VwaXBlIGFuZCBnZXRhdHRyKGUsICdlcnJubycsIDApID09IGVycm5vLkVQSVBFOgorICAgICAgICAgICAgICAgIHJldHVybgogICAgICAgICAgICAgIyBTaW5jZSB0aGlzIHJ1bnMgaW4gYSBkYWVtb24gdGhyZWFkIHRoZSByZXNvdXJjZXMgaXQgdXNlcwogICAgICAgICAgICAgIyBtYXkgYmUgYmVjb21lIHVudXNhYmxlIHdoaWxlIHRoZSBwcm9jZXNzIGlzIGNsZWFuaW5nIHVwLgogICAgICAgICAgICAgIyBXZSBpZ25vcmUgZXJyb3JzIHdoaWNoIGhhcHBlbiBhZnRlciB0aGUgcHJvY2VzcyBoYXMKQEAgLTM1Niw2ICszNjAsNyBAQAogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKICAgICAgICAgc2VsZi5fcmVhZGVyLCBzZWxmLl93cml0ZXIgPSBQaXBlKGR1cGxleD1GYWxzZSkKICAgICAgICAgc2VsZi5fcmxvY2sgPSBMb2NrKCkKKyAgICAgICAgc2VsZi5fcG9sbCA9IHNlbGYuX3JlYWRlci5wb2xsCiAgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInOgogICAgICAgICAgICAgc2VsZi5fd2xvY2sgPSBOb25lCiAgICAgICAgIGVsc2U6CkBAIC0zNjMsNyArMzY4LDcgQEAKICAgICAgICAgc2VsZi5fbWFrZV9tZXRob2RzKCkKIAogICAgIGRlZiBlbXB0eShzZWxmKToKLSAgICAgICAgcmV0dXJuIG5vdCBzZWxmLl9yZWFkZXIucG9sbCgpCisgICAgICAgIHJldHVybiBub3Qgc2VsZi5fcG9sbCgpCiAKICAgICBkZWYgX19nZXRzdGF0ZV9fKHNlbGYpOgogICAgICAgICBhc3NlcnRfc3Bhd25pbmcoc2VsZikKZGlmZiAtLWdpdCBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvcmVkdWN0aW9uLnB5IGIvTGliL211bHRpcHJvY2Vzc2luZy9yZWR1Y3Rpb24ucHkKaW5kZXggNmU1ZTViYy4uZGRhNGE0MSAxMDA2NDQKLS0tIGEvTGliL211bHRpcHJvY2Vzc2luZy9yZWR1Y3Rpb24ucHkKKysrIGIvTGliL211bHRpcHJvY2Vzc2luZy9yZWR1Y3Rpb24ucHkKQEAgLTM5LDE5ICszOSwyMCBAQAogaW1wb3J0IHN5cwogaW1wb3J0IHNvY2tldAogaW1wb3J0IHRocmVhZGluZworaW1wb3J0IHN0cnVjdAogCi1pbXBvcnQgX211bHRpcHJvY2Vzc2luZwogZnJvbSBtdWx0aXByb2Nlc3NpbmcgaW1wb3J0IGN1cnJlbnRfcHJvY2VzcwogZnJvbSBtdWx0aXByb2Nlc3NpbmcuZm9ya2luZyBpbXBvcnQgUG9wZW4sIGR1cGxpY2F0ZSwgY2xvc2UsIEZvcmtpbmdQaWNrbGVyCiBmcm9tIG11bHRpcHJvY2Vzc2luZy51dGlsIGltcG9ydCByZWdpc3Rlcl9hZnRlcl9mb3JrLCBkZWJ1Zywgc3ViX2RlYnVnCi1mcm9tIG11bHRpcHJvY2Vzc2luZy5jb25uZWN0aW9uIGltcG9ydCBDbGllbnQsIExpc3RlbmVyCitmcm9tIG11bHRpcHJvY2Vzc2luZy5jb25uZWN0aW9uIGltcG9ydCBDbGllbnQsIExpc3RlbmVyLCBDb25uZWN0aW9uCiAKIAogIwogIwogIwogCi1pZiBub3Qoc3lzLnBsYXRmb3JtID09ICd3aW4zMicgb3IgaGFzYXR0cihfbXVsdGlwcm9jZXNzaW5nLCAncmVjdmZkJykpOgoraWYgbm90KHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInIG9yIChoYXNhdHRyKHNvY2tldCwgJ0NNU0dfTEVOJykgYW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc2F0dHIoc29ja2V0LCAnU0NNX1JJR0hUUycpKSk6CiAgICAgcmFpc2UgSW1wb3J0RXJyb3IoJ3BpY2tsaW5nIG9mIGNvbm5lY3Rpb25zIG5vdCBzdXBwb3J0ZWQnKQogCiAjCkBAIC01OSw3ICs2MCw2IEBACiAjCiAKIGlmIHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInOgotICAgIGltcG9ydCBfc3VicHJvY2VzcwogICAgIGZyb20gX211bHRpcHJvY2Vzc2luZyBpbXBvcnQgd2luMzIKIAogICAgIGRlZiBzZW5kX2hhbmRsZShjb25uLCBoYW5kbGUsIGRlc3RpbmF0aW9uX3BpZCk6CkBAIC03NywxMCArNzcsMjMgQEAKIAogZWxzZToKICAgICBkZWYgc2VuZF9oYW5kbGUoY29ubiwgaGFuZGxlLCBkZXN0aW5hdGlvbl9waWQpOgotICAgICAgICBfbXVsdGlwcm9jZXNzaW5nLnNlbmRmZChjb25uLmZpbGVubygpLCBoYW5kbGUpCisgICAgICAgIHdpdGggc29ja2V0LmZyb21mZChjb25uLmZpbGVubygpLCBzb2NrZXQuQUZfVU5JWCwgc29ja2V0LlNPQ0tfU1RSRUFNKSBhcyBzOgorICAgICAgICAgICAgcy5zZW5kbXNnKFtiJ3gnXSwgWyhzb2NrZXQuU09MX1NPQ0tFVCwgc29ja2V0LlNDTV9SSUdIVFMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdC5wYWNrKCJAaSIsIGhhbmRsZSkpXSkKIAogICAgIGRlZiByZWN2X2hhbmRsZShjb25uKToKLSAgICAgICAgcmV0dXJuIF9tdWx0aXByb2Nlc3NpbmcucmVjdmZkKGNvbm4uZmlsZW5vKCkpCisgICAgICAgIHNpemUgPSBzdHJ1Y3QuY2FsY3NpemUoIkBpIikKKyAgICAgICAgd2l0aCBzb2NrZXQuZnJvbWZkKGNvbm4uZmlsZW5vKCksIHNvY2tldC5BRl9VTklYLCBzb2NrZXQuU09DS19TVFJFQU0pIGFzIHM6CisgICAgICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gcy5yZWN2bXNnKDEsIHNvY2tldC5DTVNHX0xFTihzaXplKSkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSA9IGFuY2RhdGFbMF0KKyAgICAgICAgICAgICAgICBpZiAoY21zZ19sZXZlbCA9PSBzb2NrZXQuU09MX1NPQ0tFVCBhbmQKKyAgICAgICAgICAgICAgICAgICAgY21zZ190eXBlID09IHNvY2tldC5TQ01fUklHSFRTKToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0cnVjdC51bnBhY2soIkBpIiwgY21zZ19kYXRhWzpzaXplXSlbMF0KKyAgICAgICAgICAgIGV4Y2VwdCAoVmFsdWVFcnJvciwgSW5kZXhFcnJvciwgc3RydWN0LmVycm9yKToKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoJ0ludmFsaWQgZGF0YSByZWNlaXZlZCcpCisKIAogIwogIyBTdXBwb3J0IGZvciBhIHBlci1wcm9jZXNzIHNlcnZlciB0aHJlYWQgd2hpY2ggY2FjaGVzIHBpY2tsZWQgaGFuZGxlcwpAQCAtMTU5LDcgKzE3Miw3IEBACiAgICAgcmV0dXJuIG5ld19oYW5kbGUKIAogIwotIyBSZWdpc3RlciBgX211bHRpcHJvY2Vzc2luZy5Db25uZWN0aW9uYCB3aXRoIGBGb3JraW5nUGlja2xlcmAKKyMgUmVnaXN0ZXIgYENvbm5lY3Rpb25gIHdpdGggYEZvcmtpbmdQaWNrbGVyYAogIwogCiBkZWYgcmVkdWNlX2Nvbm5lY3Rpb24oY29ubik6CkBAIC0xNjgsMTEgKzE4MSwxMSBAQAogCiBkZWYgcmVidWlsZF9jb25uZWN0aW9uKHJlZHVjZWRfaGFuZGxlLCByZWFkYWJsZSwgd3JpdGFibGUpOgogICAgIGhhbmRsZSA9IHJlYnVpbGRfaGFuZGxlKHJlZHVjZWRfaGFuZGxlKQotICAgIHJldHVybiBfbXVsdGlwcm9jZXNzaW5nLkNvbm5lY3Rpb24oCisgICAgcmV0dXJuIENvbm5lY3Rpb24oCiAgICAgICAgIGhhbmRsZSwgcmVhZGFibGU9cmVhZGFibGUsIHdyaXRhYmxlPXdyaXRhYmxlCiAgICAgICAgICkKIAotRm9ya2luZ1BpY2tsZXIucmVnaXN0ZXIoX211bHRpcHJvY2Vzc2luZy5Db25uZWN0aW9uLCByZWR1Y2VfY29ubmVjdGlvbikKK0ZvcmtpbmdQaWNrbGVyLnJlZ2lzdGVyKENvbm5lY3Rpb24sIHJlZHVjZV9jb25uZWN0aW9uKQogCiAjCiAjIFJlZ2lzdGVyIGBzb2NrZXQuc29ja2V0YCB3aXRoIGBGb3JraW5nUGlja2xlcmAKQEAgLTIwMSw2ICsyMTQsNyBAQAogIwogCiBpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKKyAgICBmcm9tIG11bHRpcHJvY2Vzc2luZy5jb25uZWN0aW9uIGltcG9ydCBQaXBlQ29ubmVjdGlvbgogCiAgICAgZGVmIHJlZHVjZV9waXBlX2Nvbm5lY3Rpb24oY29ubik6CiAgICAgICAgIHJoID0gcmVkdWNlX2hhbmRsZShjb25uLmZpbGVubygpKQpAQCAtMjA4LDggKzIyMiw4IEBACiAKICAgICBkZWYgcmVidWlsZF9waXBlX2Nvbm5lY3Rpb24ocmVkdWNlZF9oYW5kbGUsIHJlYWRhYmxlLCB3cml0YWJsZSk6CiAgICAgICAgIGhhbmRsZSA9IHJlYnVpbGRfaGFuZGxlKHJlZHVjZWRfaGFuZGxlKQotICAgICAgICByZXR1cm4gX211bHRpcHJvY2Vzc2luZy5QaXBlQ29ubmVjdGlvbigKKyAgICAgICAgcmV0dXJuIFBpcGVDb25uZWN0aW9uKAogICAgICAgICAgICAgaGFuZGxlLCByZWFkYWJsZT1yZWFkYWJsZSwgd3JpdGFibGU9d3JpdGFibGUKICAgICAgICAgICAgICkKIAotICAgIEZvcmtpbmdQaWNrbGVyLnJlZ2lzdGVyKF9tdWx0aXByb2Nlc3NpbmcuUGlwZUNvbm5lY3Rpb24sIHJlZHVjZV9waXBlX2Nvbm5lY3Rpb24pCisgICAgRm9ya2luZ1BpY2tsZXIucmVnaXN0ZXIoUGlwZUNvbm5lY3Rpb24sIHJlZHVjZV9waXBlX2Nvbm5lY3Rpb24pCmRpZmYgLS1naXQgYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3NoYXJlZGN0eXBlcy5weSBiL0xpYi9tdWx0aXByb2Nlc3Npbmcvc2hhcmVkY3R5cGVzLnB5CmluZGV4IDFlNjk0ZGEuLjU4MjYzNzkgMTAwNjQ0Ci0tLSBhL0xpYi9tdWx0aXByb2Nlc3Npbmcvc2hhcmVkY3R5cGVzLnB5CisrKyBiL0xpYi9tdWx0aXByb2Nlc3Npbmcvc2hhcmVkY3R5cGVzLnB5CkBAIC0zMiw3ICszMiw2IEBACiAjIFNVQ0ggREFNQUdFLgogIwogCi1pbXBvcnQgc3lzCiBpbXBvcnQgY3R5cGVzCiBpbXBvcnQgd2Vha3JlZgogCmRpZmYgLS1naXQgYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3N5bmNocm9uaXplLnB5IGIvTGliL211bHRpcHJvY2Vzc2luZy9zeW5jaHJvbml6ZS5weQppbmRleCA3MGFlODI1Li5lMzViYmZmIDEwMDY0NAotLS0gYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3N5bmNocm9uaXplLnB5CisrKyBiL0xpYi9tdWx0aXByb2Nlc3Npbmcvc3luY2hyb25pemUucHkKQEAgLTM3LDE0ICszNywxMSBAQAogICAgIF0KIAogaW1wb3J0IHRocmVhZGluZwotaW1wb3J0IG9zCiBpbXBvcnQgc3lzCiAKLWZyb20gdGltZSBpbXBvcnQgdGltZSBhcyBfdGltZSwgc2xlZXAgYXMgX3NsZWVwCi0KIGltcG9ydCBfbXVsdGlwcm9jZXNzaW5nCiBmcm9tIG11bHRpcHJvY2Vzc2luZy5wcm9jZXNzIGltcG9ydCBjdXJyZW50X3Byb2Nlc3MKLWZyb20gbXVsdGlwcm9jZXNzaW5nLnV0aWwgaW1wb3J0IEZpbmFsaXplLCByZWdpc3Rlcl9hZnRlcl9mb3JrLCBkZWJ1ZworZnJvbSBtdWx0aXByb2Nlc3NpbmcudXRpbCBpbXBvcnQgcmVnaXN0ZXJfYWZ0ZXJfZm9yaywgZGVidWcKIGZyb20gbXVsdGlwcm9jZXNzaW5nLmZvcmtpbmcgaW1wb3J0IGFzc2VydF9zcGF3bmluZywgUG9wZW4KIAogIyBUcnkgdG8gaW1wb3J0IHRoZSBtcC5zeW5jaHJvbml6ZSBtb2R1bGUgY2xlYW5seSwgaWYgaXQgZmFpbHMKZGlmZiAtLWdpdCBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvdXRpbC5weSBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvdXRpbC5weQppbmRleCAzMGI3YTg1Li4wYmJiODdlIDEwMDY0NAotLS0gYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3V0aWwucHkKKysrIGIvTGliL211bHRpcHJvY2Vzc2luZy91dGlsLnB5CkBAIC0zMiw2ICszMiw3IEBACiAjIFNVQ0ggREFNQUdFLgogIwogCitpbXBvcnQgZnVuY3Rvb2xzCiBpbXBvcnQgaXRlcnRvb2xzCiBpbXBvcnQgd2Vha3JlZgogaW1wb3J0IGF0ZXhpdApAQCAtODQsNyArODUsNyBAQAogICAgIFJldHVybnMgbG9nZ2VyIHVzZWQgYnkgbXVsdGlwcm9jZXNzaW5nCiAgICAgJycnCiAgICAgZ2xvYmFsIF9sb2dnZXIKLSAgICBpbXBvcnQgbG9nZ2luZywgYXRleGl0CisgICAgaW1wb3J0IGxvZ2dpbmcKIAogICAgIGxvZ2dpbmcuX2FjcXVpcmVMb2NrKCkKICAgICB0cnk6CkBAIC0xODYsNyArMTg3LDExIEBACiAKICAgICAgICAgX2ZpbmFsaXplcl9yZWdpc3RyeVtzZWxmLl9rZXldID0gc2VsZgogCi0gICAgZGVmIF9fY2FsbF9fKHNlbGYsIHdyPU5vbmUpOgorICAgIGRlZiBfX2NhbGxfXyhzZWxmLCB3cj1Ob25lLAorICAgICAgICAgICAgICAgICAjIE5lZWQgdG8gYmluZCB0aGVzZSBsb2NhbGx5IGJlY2F1c2UgdGhlIGdsb2JhbHMgY2FuIGhhdmUKKyAgICAgICAgICAgICAgICAgIyBiZWVuIGNsZWFyZWQgYXQgc2h1dGRvd24KKyAgICAgICAgICAgICAgICAgX2ZpbmFsaXplcl9yZWdpc3RyeT1fZmluYWxpemVyX3JlZ2lzdHJ5LAorICAgICAgICAgICAgICAgICBzdWJfZGVidWc9c3ViX2RlYnVnKToKICAgICAgICAgJycnCiAgICAgICAgIFJ1biB0aGUgY2FsbGJhY2sgdW5sZXNzIGl0IGhhcyBhbHJlYWR5IGJlZW4gY2FsbGVkIG9yIGNhbmNlbGxlZAogICAgICAgICAnJycKQEAgLTMxNSwzICszMjAsMTggQEAKICAgICAgICAgcmVnaXN0ZXJfYWZ0ZXJfZm9yayhzZWxmLCBsYW1iZGEgb2JqIDogb2JqLl9fZGljdF9fLmNsZWFyKCkpCiAgICAgZGVmIF9fcmVkdWNlX18oc2VsZik6CiAgICAgICAgIHJldHVybiB0eXBlKHNlbGYpLCAoKQorCisKKyMKKyMgQXV0b21hdGljIHJldHJ5IGFmdGVyIEVJTlRSCisjCisKK2RlZiBfZWludHJfcmV0cnkoZnVuYyk6CisgICAgQGZ1bmN0b29scy53cmFwcyhmdW5jKQorICAgIGRlZiB3cmFwcGVkKCphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmMoKmFyZ3MsICoqa3dhcmdzKQorICAgICAgICAgICAgZXhjZXB0IEludGVycnVwdGVkRXJyb3I6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICByZXR1cm4gd3JhcHBlZApkaWZmIC0tZ2l0IGEvTGliL25udHBsaWIucHkgYi9MaWIvbm50cGxpYi5weQppbmRleCAzMmJmZmQ4Li5lYjE2MjA2IDEwMDY0NAotLS0gYS9MaWIvbm50cGxpYi5weQorKysgYi9MaWIvbm50cGxpYi5weQpAQCAtMzUxLDYgKzM1MSwyMCBAQAogICAgICAgICAjIExvZyBpbiBhbmQgZW5jcnlwdGlvbiBzZXR1cCBvcmRlciBpcyBsZWZ0IHRvIHN1YmNsYXNzZXMuCiAgICAgICAgIHNlbGYuYXV0aGVudGljYXRlZCA9IEZhbHNlCiAKKyAgICBkZWYgX19lbnRlcl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZgorCisgICAgZGVmIF9fZXhpdF9fKHNlbGYsICphcmdzKToKKyAgICAgICAgaXNfY29ubmVjdGVkID0gbGFtYmRhOiBoYXNhdHRyKHNlbGYsICJmaWxlIikKKyAgICAgICAgaWYgaXNfY29ubmVjdGVkKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5xdWl0KCkKKyAgICAgICAgICAgIGV4Y2VwdCAoc29ja2V0LmVycm9yLCBFT0ZFcnJvcik6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICBpZiBpc19jb25uZWN0ZWQoKToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fY2xvc2UoKQorCiAgICAgZGVmIGdldHdlbGNvbWUoc2VsZik6CiAgICAgICAgICIiIkdldCB0aGUgd2VsY29tZSBtZXNzYWdlIGZyb20gdGhlIHNlcnZlcgogICAgICAgICAodGhpcyBpcyByZWFkIGFuZCBzcXVpcnJlbGVkIGF3YXkgYnkgX19pbml0X18oKSkuCkBAIC04MTksNyArODMzLDcgQEAKICAgICAgICAgLSBsaXN0OiBsaXN0IG9mIChuYW1lLHRpdGxlKSBzdHJpbmdzIiIiCiAgICAgICAgIHdhcm5pbmdzLndhcm4oIlRoZSBYR1RJVExFIGV4dGVuc2lvbiBpcyBub3QgYWN0aXZlbHkgdXNlZCwgIgogICAgICAgICAgICAgICAgICAgICAgICJ1c2UgZGVzY3JpcHRpb25zKCkgaW5zdGVhZCIsCi0gICAgICAgICAgICAgICAgICAgICAgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICAgICAgICAgICBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIGxpbmVfcGF0ID0gcmUuY29tcGlsZSgnXihbXiBcdF0rKVsgXHRdKyguKikkJykKICAgICAgICAgcmVzcCwgcmF3X2xpbmVzID0gc2VsZi5fbG9uZ2NtZHN0cmluZygnWEdUSVRMRSAnICsgZ3JvdXAsIGZpbGUpCiAgICAgICAgIGxpbmVzID0gW10KQEAgLTgzNyw3ICs4NTEsNyBAQAogICAgICAgICBwYXRoOiBkaXJlY3RvcnkgcGF0aCB0byBhcnRpY2xlCiAgICAgICAgICIiIgogICAgICAgICB3YXJuaW5ncy53YXJuKCJUaGUgWFBBVEggZXh0ZW5zaW9uIGlzIG5vdCBhY3RpdmVseSB1c2VkIiwKLSAgICAgICAgICAgICAgICAgICAgICBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgICAgICAgICAgIERlcHJlY2F0aW9uV2FybmluZywgMikKIAogICAgICAgICByZXNwID0gc2VsZi5fc2hvcnRjbWQoJ1hQQVRIIHswfScuZm9ybWF0KGlkKSkKICAgICAgICAgaWYgbm90IHJlc3Auc3RhcnRzd2l0aCgnMjIzJyk6CmRpZmYgLS1naXQgYS9MaWIvbnVtYmVycy5weSBiL0xpYi9udW1iZXJzLnB5CmluZGV4IGVjZmFkN2MuLmIyMDY0NTcgMTAwNjQ0Ci0tLSBhL0xpYi9udW1iZXJzLnB5CisrKyBiL0xpYi9udW1iZXJzLnB5CkBAIC01LDcgKzUsNyBAQAogCiBUT0RPOiBGaWxsIG91dCBtb3JlIGRldGFpbGVkIGRvY3VtZW50YXRpb24gb24gdGhlIG9wZXJhdG9ycy4iIiIKIAotZnJvbSBhYmMgaW1wb3J0IEFCQ01ldGEsIGFic3RyYWN0bWV0aG9kLCBhYnN0cmFjdHByb3BlcnR5Citmcm9tIGFiYyBpbXBvcnQgQUJDTWV0YSwgYWJzdHJhY3RtZXRob2QKIAogX19hbGxfXyA9IFsiTnVtYmVyIiwgIkNvbXBsZXgiLCAiUmVhbCIsICJSYXRpb25hbCIsICJJbnRlZ3JhbCJdCiAKQEAgLTUwLDcgKzUwLDggQEAKICAgICAgICAgIiIiVHJ1ZSBpZiBzZWxmICE9IDAuIENhbGxlZCBmb3IgYm9vbChzZWxmKS4iIiIKICAgICAgICAgcmV0dXJuIHNlbGYgIT0gMAogCi0gICAgQGFic3RyYWN0cHJvcGVydHkKKyAgICBAcHJvcGVydHkKKyAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgcmVhbChzZWxmKToKICAgICAgICAgIiIiUmV0cmlldmUgdGhlIHJlYWwgY29tcG9uZW50IG9mIHRoaXMgbnVtYmVyLgogCkBAIC01OCw3ICs1OSw4IEBACiAgICAgICAgICIiIgogICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCiAKLSAgICBAYWJzdHJhY3Rwcm9wZXJ0eQorICAgIEBwcm9wZXJ0eQorICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBpbWFnKHNlbGYpOgogICAgICAgICAiIiJSZXRyaWV2ZSB0aGUgaW1hZ2luYXJ5IGNvbXBvbmVudCBvZiB0aGlzIG51bWJlci4KIApAQCAtMjcyLDExICsyNzQsMTMgQEAKIAogICAgIF9fc2xvdHNfXyA9ICgpCiAKLSAgICBAYWJzdHJhY3Rwcm9wZXJ0eQorICAgIEBwcm9wZXJ0eQorICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBudW1lcmF0b3Ioc2VsZik6CiAgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IKIAotICAgIEBhYnN0cmFjdHByb3BlcnR5CisgICAgQHByb3BlcnR5CisgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIGRlbm9taW5hdG9yKHNlbGYpOgogICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCiAKZGlmZiAtLWdpdCBhL0xpYi9vcGNvZGUucHkgYi9MaWIvb3Bjb2RlLnB5CmluZGV4IDhlMTVkMTMuLjZmZTIwYzcgMTAwNjQ0Ci0tLSBhL0xpYi9vcGNvZGUucHkKKysrIGIvTGliL29wY29kZS5weQpAQCAtNDMsNyArNDMsNiBAQAogIyBJbnN0cnVjdGlvbiBvcGNvZGVzIGZvciBjb21waWxlZCBjb2RlCiAjIEJsYW5rIGxpbmVzIGNvcnJlc3BvbmQgdG8gYXZhaWxhYmxlIG9wY29kZXMKIAotZGVmX29wKCdTVE9QX0NPREUnLCAwKQogZGVmX29wKCdQT1BfVE9QJywgMSkKIGRlZl9vcCgnUk9UX1RXTycsIDIpCiBkZWZfb3AoJ1JPVF9USFJFRScsIDMpCkBAIC04OCw2ICs4Nyw3IEBACiAKIGRlZl9vcCgnUFJJTlRfRVhQUicsIDcwKQogZGVmX29wKCdMT0FEX0JVSUxEX0NMQVNTJywgNzEpCitkZWZfb3AoJ1lJRUxEX0ZST00nLCA3MikKIAogZGVmX29wKCdJTlBMQUNFX0xTSElGVCcsIDc1KQogZGVmX29wKCdJTlBMQUNFX1JTSElGVCcsIDc2KQpkaWZmIC0tZ2l0IGEvTGliL29wdHBhcnNlLnB5IGIvTGliL29wdHBhcnNlLnB5CmluZGV4IGQ5N2ExZjcuLjM3NzY0ZDMgMTAwNjQ0Ci0tLSBhL0xpYi9vcHRwYXJzZS5weQorKysgYi9MaWIvb3B0cGFyc2UucHkKQEAgLTg2LDEwICs4NiwxNiBAQAogIyAgIElkOiBlcnJvcnMucHkgNTA5IDIwMDYtMDQtMjAgMDA6NTg6MjRaIGd3YXJkCiAKIHRyeToKLSAgICBmcm9tIGdldHRleHQgaW1wb3J0IGdldHRleHQKKyAgICBmcm9tIGdldHRleHQgaW1wb3J0IGdldHRleHQsIG5nZXR0ZXh0CiBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgZGVmIGdldHRleHQobWVzc2FnZSk6CiAgICAgICAgIHJldHVybiBtZXNzYWdlCisKKyAgICBkZWYgbmdldHRleHQoc2luZ3VsYXIsIHBsdXJhbCwgbik6CisgICAgICAgIGlmIG4gPT0gMToKKyAgICAgICAgICAgIHJldHVybiBzaW5ndWxhcgorICAgICAgICByZXR1cm4gcGx1cmFsCisKIF8gPSBnZXR0ZXh0CiAKIApAQCAtNDExLDExICs0MTcsOCBAQAogZGVmIF9wYXJzZV9pbnQodmFsKToKICAgICByZXR1cm4gX3BhcnNlX251bSh2YWwsIGludCkKIAotZGVmIF9wYXJzZV9sb25nKHZhbCk6Ci0gICAgcmV0dXJuIF9wYXJzZV9udW0odmFsLCBpbnQpCi0KIF9idWlsdGluX2N2dCA9IHsgImludCIgOiAoX3BhcnNlX2ludCwgXygiaW50ZWdlciIpKSwKLSAgICAgICAgICAgICAgICAgImxvbmciIDogKF9wYXJzZV9sb25nLCBfKCJsb25nIGludGVnZXIiKSksCisgICAgICAgICAgICAgICAgICJsb25nIiA6IChfcGFyc2VfaW50LCBfKCJpbnRlZ2VyIikpLAogICAgICAgICAgICAgICAgICAiZmxvYXQiIDogKGZsb2F0LCBfKCJmbG9hdGluZy1wb2ludCIpKSwKICAgICAgICAgICAgICAgICAgImNvbXBsZXgiIDogKGNvbXBsZXgsIF8oImNvbXBsZXgiKSkgfQogCkBAIC0xNDgzLDExICsxNDg2LDEwIEBACiAgICAgICAgIGlmIG9wdGlvbi50YWtlc192YWx1ZSgpOgogICAgICAgICAgICAgbmFyZ3MgPSBvcHRpb24ubmFyZ3MKICAgICAgICAgICAgIGlmIGxlbihyYXJncykgPCBuYXJnczoKLSAgICAgICAgICAgICAgICBpZiBuYXJncyA9PSAxOgotICAgICAgICAgICAgICAgICAgICBzZWxmLmVycm9yKF8oIiVzIG9wdGlvbiByZXF1aXJlcyBhbiBhcmd1bWVudCIpICUgb3B0KQotICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgIHNlbGYuZXJyb3IoXygiJXMgb3B0aW9uIHJlcXVpcmVzICVkIGFyZ3VtZW50cyIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJSAob3B0LCBuYXJncykpCisgICAgICAgICAgICAgICAgc2VsZi5lcnJvcihuZ2V0dGV4dCgKKyAgICAgICAgICAgICAgICAgICAgIiUob3B0aW9uKXMgb3B0aW9uIHJlcXVpcmVzICUobnVtYmVyKWQgYXJndW1lbnQiLAorICAgICAgICAgICAgICAgICAgICAiJShvcHRpb24pcyBvcHRpb24gcmVxdWlyZXMgJShudW1iZXIpZCBhcmd1bWVudHMiLAorICAgICAgICAgICAgICAgICAgICBuYXJncykgJSB7Im9wdGlvbiI6IG9wdCwgIm51bWJlciI6IG5hcmdzfSkKICAgICAgICAgICAgIGVsaWYgbmFyZ3MgPT0gMToKICAgICAgICAgICAgICAgICB2YWx1ZSA9IHJhcmdzLnBvcCgwKQogICAgICAgICAgICAgZWxzZToKQEAgLTE1MjIsMTEgKzE1MjQsMTAgQEAKIAogICAgICAgICAgICAgICAgIG5hcmdzID0gb3B0aW9uLm5hcmdzCiAgICAgICAgICAgICAgICAgaWYgbGVuKHJhcmdzKSA8IG5hcmdzOgotICAgICAgICAgICAgICAgICAgICBpZiBuYXJncyA9PSAxOgotICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5lcnJvcihfKCIlcyBvcHRpb24gcmVxdWlyZXMgYW4gYXJndW1lbnQiKSAlIG9wdCkKLSAgICAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZXJyb3IoXygiJXMgb3B0aW9uIHJlcXVpcmVzICVkIGFyZ3VtZW50cyIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgKG9wdCwgbmFyZ3MpKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmVycm9yKG5nZXR0ZXh0KAorICAgICAgICAgICAgICAgICAgICAgICAgIiUob3B0aW9uKXMgb3B0aW9uIHJlcXVpcmVzICUobnVtYmVyKWQgYXJndW1lbnQiLAorICAgICAgICAgICAgICAgICAgICAgICAgIiUob3B0aW9uKXMgb3B0aW9uIHJlcXVpcmVzICUobnVtYmVyKWQgYXJndW1lbnRzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIG5hcmdzKSAlIHsib3B0aW9uIjogb3B0LCAibnVtYmVyIjogbmFyZ3N9KQogICAgICAgICAgICAgICAgIGVsaWYgbmFyZ3MgPT0gMToKICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSByYXJncy5wb3AoMCkKICAgICAgICAgICAgICAgICBlbHNlOgpkaWZmIC0tZ2l0IGEvTGliL29zLnB5IGIvTGliL29zLnB5CmluZGV4IDU4NjIzODMuLmZlNmNiMTEgMTAwNjQ0Ci0tLSBhL0xpYi9vcy5weQorKysgYi9MaWIvb3MucHkKQEAgLTI0LDYgKzI0LDcgQEAKICMnCiAKIGltcG9ydCBzeXMsIGVycm5vCitpbXBvcnQgc3RhdCBhcyBzdAogCiBfbmFtZXMgPSBzeXMuYnVpbHRpbl9tb2R1bGVfbmFtZXMKIApAQCAtMzIsNiArMzMsOSBAQAogICAgICAgICAgICAiZGVmcGF0aCIsICJuYW1lIiwgInBhdGgiLCAiZGV2bnVsbCIsCiAgICAgICAgICAgICJTRUVLX1NFVCIsICJTRUVLX0NVUiIsICJTRUVLX0VORCJdCiAKK2RlZiBfZXhpc3RzKG5hbWUpOgorICAgIHJldHVybiBuYW1lIGluIGdsb2JhbHMoKQorCiBkZWYgX2dldF9leHBvcnRzX2xpc3QobW9kdWxlKToKICAgICB0cnk6CiAgICAgICAgIHJldHVybiBsaXN0KG1vZHVsZS5fX2FsbF9fKQpAQCAtMTIwLDcgKzEyNCwxMiBAQAogICAgIHVtYXNrKG1hc2spCiAgICAgcmV0dXJuIG1vZGUgJiB+bWFzawogCi0jJworZGVmIF9hcmVfc2FtZV9maWxlKHN0YXQxLCBzdGF0Mik6CisgICAgIiIiSGVscGVyIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIHdoZXRoZXIgdHdvIHN0YXQgcmVzdWx0cyByZWZlciB0byB0aGUgc2FtZQorICAgIGZpbGUuCisgICAgIiIiCisgICAgcmV0dXJuIChzdGF0MS5zdF9pbm8gPT0gc3RhdDIuc3RfaW5vIGFuZCBzdGF0MS5zdF9kZXYgPT0gc3RhdDIuc3RfZGV2KQorIwogCiAjIFN1cGVyIGRpcmVjdG9yeSB1dGlsaXRpZXMuCiAjIChJbnNwaXJlZCBieSBFcmljIFJheW1vbmQ7IHRoZSBkb2Mgc3RyaW5ncyBhcmUgbW9zdGx5IGhpcykKQEAgLTE1MSw3ICsxNjAsNiBAQAogICAgIHRyeToKICAgICAgICAgbWtkaXIobmFtZSwgbW9kZSkKICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgotICAgICAgICBpbXBvcnQgc3RhdCBhcyBzdAogICAgICAgICBpZiBub3QgKGUuZXJybm8gPT0gZXJybm8uRUVYSVNUIGFuZCBleGlzdF9vayBhbmQgcGF0aC5pc2RpcihuYW1lKSBhbmQKICAgICAgICAgICAgICAgICBzdC5TX0lNT0RFKGxzdGF0KG5hbWUpLnN0X21vZGUpID09IF9nZXRfbWFza2VkX21vZGUobW9kZSkpOgogICAgICAgICAgICAgcmFpc2UKQEAgLTI5OCw2ICszMDYsOTIgQEAKIAogX19hbGxfXy5hcHBlbmQoIndhbGsiKQogCitpZiBfZXhpc3RzKCJvcGVuYXQiKToKKworICAgIGRlZiBmd2Fsayh0b3AsIHRvcGRvd249VHJ1ZSwgb25lcnJvcj1Ob25lLCBmb2xsb3dsaW5rcz1GYWxzZSk6CisgICAgICAgICIiIkRpcmVjdG9yeSB0cmVlIGdlbmVyYXRvci4KKworICAgICAgICBUaGlzIGJlaGF2ZXMgZXhhY3RseSBsaWtlIHdhbGsoKSwgZXhjZXB0IHRoYXQgaXQgeWllbGRzIGEgNC10dXBsZQorCisgICAgICAgICAgICBkaXJwYXRoLCBkaXJuYW1lcywgZmlsZW5hbWVzLCBkaXJmZAorCisgICAgICAgIGBkaXJwYXRoYCwgYGRpcm5hbWVzYCBhbmQgYGZpbGVuYW1lc2AgYXJlIGlkZW50aWNhbCB0byB3YWxrKCkgb3V0cHV0LAorICAgICAgICBhbmQgYGRpcmZkYCBpcyBhIGZpbGUgZGVzY3JpcHRvciByZWZlcnJpbmcgdG8gdGhlIGRpcmVjdG9yeSBgZGlycGF0aGAuCisKKyAgICAgICAgVGhlIGFkdmFudGFnZSBvZiB3YWxrZmQoKSBvdmVyIHdhbGsoKSBpcyB0aGF0IGl0J3Mgc2FmZSBhZ2FpbnN0IHN5bWxpbmsKKyAgICAgICAgcmFjZXMgKHdoZW4gZm9sbG93bGlua3MgaXMgRmFsc2UpLgorCisgICAgICAgIENhdXRpb246CisgICAgICAgIFNpbmNlIGZ3YWxrKCkgeWllbGRzIGZpbGUgZGVzY3JpcHRvcnMsIHRob3NlIGFyZSBvbmx5IHZhbGlkIHVudGlsIHRoZQorICAgICAgICBuZXh0IGl0ZXJhdGlvbiBzdGVwLCBzbyB5b3Ugc2hvdWxkIGR1cCgpIHRoZW0gaWYgeW91IHdhbnQgdG8ga2VlcCB0aGVtCisgICAgICAgIGZvciBhIGxvbmdlciBwZXJpb2QuCisKKyAgICAgICAgRXhhbXBsZToKKworICAgICAgICBpbXBvcnQgb3MKKyAgICAgICAgZm9yIHJvb3QsIGRpcnMsIGZpbGVzLCByb290ZmQgaW4gb3MuZndhbGsoJ3B5dGhvbi9MaWIvZW1haWwnKToKKyAgICAgICAgICAgIHByaW50KHJvb3QsICJjb25zdW1lcyIsIGVuZD0iIikKKyAgICAgICAgICAgIHByaW50KHN1bShbb3MuZnN0YXRhdChyb290ZmQsIG5hbWUpLnN0X3NpemUgZm9yIG5hbWUgaW4gZmlsZXNdKSwKKyAgICAgICAgICAgICAgICAgIGVuZD0iIikKKyAgICAgICAgICAgIHByaW50KCJieXRlcyBpbiIsIGxlbihmaWxlcyksICJub24tZGlyZWN0b3J5IGZpbGVzIikKKyAgICAgICAgICAgIGlmICdDVlMnIGluIGRpcnM6CisgICAgICAgICAgICAgICAgZGlycy5yZW1vdmUoJ0NWUycpICAjIGRvbid0IHZpc2l0IENWUyBkaXJlY3RvcmllcworICAgICAgICAiIiIKKyAgICAgICAgIyBOb3RlOiBUbyBndWFyZCBhZ2FpbnN0IHN5bWxpbmsgcmFjZXMsIHdlIHVzZSB0aGUgc3RhbmRhcmQKKyAgICAgICAgIyBsc3RhdCgpL29wZW4oKS9mc3RhdCgpIHRyaWNrLgorICAgICAgICBvcmlnX3N0ID0gbHN0YXQodG9wKQorICAgICAgICB0b3BmZCA9IG9wZW4odG9wLCBPX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgaWYgKGZvbGxvd2xpbmtzIG9yIChzdC5TX0lTRElSKG9yaWdfc3Quc3RfbW9kZSkgYW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2FyZV9zYW1lX2ZpbGUob3JpZ19zdCwgZnN0YXQodG9wZmQpKSkpOgorICAgICAgICAgICAgICAgIGZvciB4IGluIF9md2Fsayh0b3BmZCwgdG9wLCB0b3Bkb3duLCBvbmVycm9yLCBmb2xsb3dsaW5rcyk6CisgICAgICAgICAgICAgICAgICAgIHlpZWxkIHgKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGNsb3NlKHRvcGZkKQorCisgICAgZGVmIF9md2Fsayh0b3BmZCwgdG9wcGF0aCwgdG9wZG93biwgb25lcnJvciwgZm9sbG93bGlua3MpOgorICAgICAgICAjIE5vdGU6IFRoaXMgdXNlcyBPKGRlcHRoIG9mIHRoZSBkaXJlY3RvcnkgdHJlZSkgZmlsZSBkZXNjcmlwdG9yczogaWYKKyAgICAgICAgIyBuZWNlc3NhcnksIGl0IGNhbiBiZSBhZGFwdGVkIHRvIG9ubHkgcmVxdWlyZSBPKDEpIEZEcywgc2VlIGlzc3VlCisgICAgICAgICMgIzEzNzM0LgorCisgICAgICAgICMgd2hldGhlciB0byBmb2xsb3cgc3ltbGlua3MKKyAgICAgICAgZmxhZyA9IDAgaWYgZm9sbG93bGlua3MgZWxzZSBBVF9TWU1MSU5LX05PRk9MTE9XCisKKyAgICAgICAgbmFtZXMgPSBmbGlzdGRpcih0b3BmZCkKKyAgICAgICAgZGlycywgbm9uZGlycyA9IFtdLCBbXQorICAgICAgICBmb3IgbmFtZSBpbiBuYW1lczoKKyAgICAgICAgICAgICMgSGVyZSwgd2UgZG9uJ3QgdXNlIEFUX1NZTUxJTktfTk9GT0xMT1cgdG8gYmUgY29uc2lzdGVudCB3aXRoCisgICAgICAgICAgICAjIHdhbGsoKSB3aGljaCByZXBvcnRzIHN5bWxpbmtzIHRvIGRpcmVjdG9yaWVzIGFzIGRpcmVjdG9yaWVzLiBXZSBkbworICAgICAgICAgICAgIyBob3dldmVyIGNoZWNrIGZvciBzeW1saW5rcyBiZWZvcmUgcmVjdXJzaW5nIGludG8gYSBzdWJkaXJlY3RvcnkuCisgICAgICAgICAgICBpZiBzdC5TX0lTRElSKGZzdGF0YXQodG9wZmQsIG5hbWUpLnN0X21vZGUpOgorICAgICAgICAgICAgICAgIGRpcnMuYXBwZW5kKG5hbWUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG5vbmRpcnMuYXBwZW5kKG5hbWUpCisKKyAgICAgICAgaWYgdG9wZG93bjoKKyAgICAgICAgICAgIHlpZWxkIHRvcHBhdGgsIGRpcnMsIG5vbmRpcnMsIHRvcGZkCisKKyAgICAgICAgZm9yIG5hbWUgaW4gZGlyczoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBvcmlnX3N0ID0gZnN0YXRhdCh0b3BmZCwgbmFtZSwgZmxhZykKKyAgICAgICAgICAgICAgICBkaXJmZCA9IG9wZW5hdCh0b3BmZCwgbmFtZSwgT19SRE9OTFkpCisgICAgICAgICAgICBleGNlcHQgZXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgICAgIGlmIG9uZXJyb3IgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgICAgIG9uZXJyb3IoZXJyKQorICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGlmIGZvbGxvd2xpbmtzIG9yIF9hcmVfc2FtZV9maWxlKG9yaWdfc3QsIGZzdGF0KGRpcmZkKSk6CisgICAgICAgICAgICAgICAgICAgIGRpcnBhdGggPSBwYXRoLmpvaW4odG9wcGF0aCwgbmFtZSkKKyAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gX2Z3YWxrKGRpcmZkLCBkaXJwYXRoLCB0b3Bkb3duLCBvbmVycm9yLCBmb2xsb3dsaW5rcyk6CisgICAgICAgICAgICAgICAgICAgICAgICB5aWVsZCB4CisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIGNsb3NlKGRpcmZkKQorCisgICAgICAgIGlmIG5vdCB0b3Bkb3duOgorICAgICAgICAgICAgeWllbGQgdG9wcGF0aCwgZGlycywgbm9uZGlycywgdG9wZmQKKworICAgIF9fYWxsX18uYXBwZW5kKCJmd2FsayIpCisKICMgTWFrZSBzdXJlIG9zLmVudmlyb24gZXhpc3RzLCBhdCBsZWFzdAogdHJ5OgogICAgIGVudmlyb24KQEAgLTQzNCw3ICs1MjgsNyBAQAogCiAKICMgQ2hhbmdlIGVudmlyb24gdG8gYXV0b21hdGljYWxseSBjYWxsIHB1dGVudigpLCB1bnNldGVudiBpZiB0aGV5IGV4aXN0LgotZnJvbSBfYWJjb2xsIGltcG9ydCBNdXRhYmxlTWFwcGluZyAgIyBDYW4ndCB1c2UgY29sbGVjdGlvbnMgKGJvb3RzdHJhcCkKK2Zyb20gY29sbGVjdGlvbnMuYWJjIGltcG9ydCBNdXRhYmxlTWFwcGluZwogCiBjbGFzcyBfRW52aXJvbihNdXRhYmxlTWFwcGluZyk6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRhdGEsIGVuY29kZWtleSwgZGVjb2Rla2V5LCBlbmNvZGV2YWx1ZSwgZGVjb2RldmFsdWUsIHB1dGVudiwgdW5zZXRlbnYpOgpAQCAtNTk4LDkgKzY5Miw2IEBACiBmc2VuY29kZSwgZnNkZWNvZGUgPSBfZnNjb2RlYygpCiBkZWwgX2ZzY29kZWMKIAotZGVmIF9leGlzdHMobmFtZSk6Ci0gICAgcmV0dXJuIG5hbWUgaW4gZ2xvYmFscygpCi0KICMgU3VwcGx5IHNwYXduKigpIChwcm9iYWJseSBvbmx5IGZvciBVbml4KQogaWYgX2V4aXN0cygiZm9yayIpIGFuZCBub3QgX2V4aXN0cygic3Bhd252IikgYW5kIF9leGlzdHMoImV4ZWN2Iik6CiAKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL19faW5pdF9fLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkzYjYxMTcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL19faW5pdF9fLnB5CkBAIC0wLDAgKzEsMTcgQEAKKyIiIlN1cHBvcnQgZm9yIHBhY2thZ2luZywgZGlzdHJpYnV0aW9uIGFuZCBpbnN0YWxsYXRpb24gb2YgUHl0aG9uIHByb2plY3RzLgorCitUaGlyZC1wYXJ0eSB0b29scyBjYW4gdXNlIHBhcnRzIG9mIHBhY2thZ2luZyBhcyBidWlsZGluZyBibG9ja3MKK3dpdGhvdXQgY2F1c2luZyB0aGUgb3RoZXIgbW9kdWxlcyB0byBiZSBpbXBvcnRlZDoKKworICAgIGltcG9ydCBwYWNrYWdpbmcudmVyc2lvbgorICAgIGltcG9ydCBwYWNrYWdpbmcubWV0YWRhdGEKKyAgICBpbXBvcnQgcGFja2FnaW5nLnB5cGkuc2ltcGxlCisgICAgaW1wb3J0IHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlcgorIiIiCisKK2Zyb20gbG9nZ2luZyBpbXBvcnQgZ2V0TG9nZ2VyCisKK19fYWxsX18gPSBbJ19fdmVyc2lvbl9fJywgJ2xvZ2dlciddCisKK19fdmVyc2lvbl9fID0gIjEuMGEzIgorbG9nZ2VyID0gZ2V0TG9nZ2VyKCdwYWNrYWdpbmcnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9fdHJvdmUucHkgYi9MaWIvcGFja2FnaW5nL190cm92ZS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTI3YmM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9fdHJvdmUucHkKQEAgLTAsMCArMSw1NzEgQEAKKyIiIlRlbXBvcmFyeSBoZWxwZXIgZm9yIGNyZWF0ZS4iIiIKKworIyBYWFggZ2V0IHRoZSBsaXN0IGZyb20gUHlQSSBhbmQgY2FjaGUgaXQgaW5zdGVhZCBvZiBoYXJkY29kaW5nCisKKyMgWFhYIHNlZSBpZiBpdCB3b3VsZCBiZSBtb3JlIHVzZWZ1bCB0byBzdG9yZSBpdCBhcyBhbm90aGVyIHN0cnVjdHVyZQorIyB0aGFuIGEgbGlzdCBvZiBzdHJpbmdzCisKK2FsbF9jbGFzc2lmaWVycyA9IFsKKydEZXZlbG9wbWVudCBTdGF0dXMgOjogMSAtIFBsYW5uaW5nJywKKydEZXZlbG9wbWVudCBTdGF0dXMgOjogMiAtIFByZS1BbHBoYScsCisnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDMgLSBBbHBoYScsCisnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDQgLSBCZXRhJywKKydEZXZlbG9wbWVudCBTdGF0dXMgOjogNSAtIFByb2R1Y3Rpb24vU3RhYmxlJywKKydEZXZlbG9wbWVudCBTdGF0dXMgOjogNiAtIE1hdHVyZScsCisnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDcgLSBJbmFjdGl2ZScsCisnRW52aXJvbm1lbnQgOjogQ29uc29sZScsCisnRW52aXJvbm1lbnQgOjogQ29uc29sZSA6OiBDdXJzZXMnLAorJ0Vudmlyb25tZW50IDo6IENvbnNvbGUgOjogRnJhbWVidWZmZXInLAorJ0Vudmlyb25tZW50IDo6IENvbnNvbGUgOjogTmV3dCcsCisnRW52aXJvbm1lbnQgOjogQ29uc29sZSA6OiBzdmdhbGliJywKKyJFbnZpcm9ubWVudCA6OiBIYW5kaGVsZHMvUERBJ3MiLAorJ0Vudmlyb25tZW50IDo6IE1hY09TIFgnLAorJ0Vudmlyb25tZW50IDo6IE1hY09TIFggOjogQXF1YScsCisnRW52aXJvbm1lbnQgOjogTWFjT1MgWCA6OiBDYXJib24nLAorJ0Vudmlyb25tZW50IDo6IE1hY09TIFggOjogQ29jb2EnLAorJ0Vudmlyb25tZW50IDo6IE5vIElucHV0L091dHB1dCAoRGFlbW9uKScsCisnRW52aXJvbm1lbnQgOjogT3RoZXIgRW52aXJvbm1lbnQnLAorJ0Vudmlyb25tZW50IDo6IFBsdWdpbnMnLAorJ0Vudmlyb25tZW50IDo6IFdlYiBFbnZpcm9ubWVudCcsCisnRW52aXJvbm1lbnQgOjogV2ViIEVudmlyb25tZW50IDo6IEJ1ZmZldCcsCisnRW52aXJvbm1lbnQgOjogV2ViIEVudmlyb25tZW50IDo6IE1vemlsbGEnLAorJ0Vudmlyb25tZW50IDo6IFdlYiBFbnZpcm9ubWVudCA6OiBUb3NjYVdpZGdldHMnLAorJ0Vudmlyb25tZW50IDo6IFdpbjMyIChNUyBXaW5kb3dzKScsCisnRW52aXJvbm1lbnQgOjogWDExIEFwcGxpY2F0aW9ucycsCisnRW52aXJvbm1lbnQgOjogWDExIEFwcGxpY2F0aW9ucyA6OiBHbm9tZScsCisnRW52aXJvbm1lbnQgOjogWDExIEFwcGxpY2F0aW9ucyA6OiBHVEsnLAorJ0Vudmlyb25tZW50IDo6IFgxMSBBcHBsaWNhdGlvbnMgOjogS0RFJywKKydFbnZpcm9ubWVudCA6OiBYMTEgQXBwbGljYXRpb25zIDo6IFF0JywKKydGcmFtZXdvcmsgOjogQkZHJywKKydGcmFtZXdvcmsgOjogQnVpbGRvdXQnLAorJ0ZyYW1ld29yayA6OiBCdWlsZG91dCA6OiBFeHRlbnNpb24nLAorJ0ZyYW1ld29yayA6OiBCdWlsZG91dCA6OiBSZWNpcGUnLAorJ0ZyYW1ld29yayA6OiBDaGFuZGxlcicsCisnRnJhbWV3b3JrIDo6IENoZXJyeVB5JywKKydGcmFtZXdvcmsgOjogQ3ViaWNXZWInLAorJ0ZyYW1ld29yayA6OiBEamFuZ28nLAorJ0ZyYW1ld29yayA6OiBJRExFJywKKydGcmFtZXdvcmsgOjogUGFzdGUnLAorJ0ZyYW1ld29yayA6OiBQbG9uZScsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDMuMicsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDMuMycsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDQuMCcsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDQuMScsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDQuMicsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDQuMycsCisnRnJhbWV3b3JrIDo6IFB5bG9ucycsCisnRnJhbWV3b3JrIDo6IFNldHVwdG9vbHMgUGx1Z2luJywKKydGcmFtZXdvcmsgOjogVHJhYycsCisnRnJhbWV3b3JrIDo6IFRyeXRvbicsCisnRnJhbWV3b3JrIDo6IFR1cmJvR2VhcnMnLAorJ0ZyYW1ld29yayA6OiBUdXJib0dlYXJzIDo6IEFwcGxpY2F0aW9ucycsCisnRnJhbWV3b3JrIDo6IFR1cmJvR2VhcnMgOjogV2lkZ2V0cycsCisnRnJhbWV3b3JrIDo6IFR3aXN0ZWQnLAorJ0ZyYW1ld29yayA6OiBaT0RCJywKKydGcmFtZXdvcmsgOjogWm9wZTInLAorJ0ZyYW1ld29yayA6OiBab3BlMycsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogQ3VzdG9tZXIgU2VydmljZScsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogRGV2ZWxvcGVycycsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogRWR1Y2F0aW9uJywKKydJbnRlbmRlZCBBdWRpZW5jZSA6OiBFbmQgVXNlcnMvRGVza3RvcCcsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogRmluYW5jaWFsIGFuZCBJbnN1cmFuY2UgSW5kdXN0cnknLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IEhlYWx0aGNhcmUgSW5kdXN0cnknLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IEluZm9ybWF0aW9uIFRlY2hub2xvZ3knLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IExlZ2FsIEluZHVzdHJ5JywKKydJbnRlbmRlZCBBdWRpZW5jZSA6OiBNYW51ZmFjdHVyaW5nJywKKydJbnRlbmRlZCBBdWRpZW5jZSA6OiBPdGhlciBBdWRpZW5jZScsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogUmVsaWdpb24nLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IFNjaWVuY2UvUmVzZWFyY2gnLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IFN5c3RlbSBBZG1pbmlzdHJhdG9ycycsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogVGVsZWNvbW11bmljYXRpb25zIEluZHVzdHJ5JywKKydMaWNlbnNlIDo6IEFsYWRkaW4gRnJlZSBQdWJsaWMgTGljZW5zZSAoQUZQTCknLAorJ0xpY2Vuc2UgOjogQ0MwIDEuMCBVbml2ZXJzYWwgKENDMCAxLjApIFB1YmxpYyBEb21haW4gRGVkaWNhdGlvbicsCisnTGljZW5zZSA6OiBERlNHIGFwcHJvdmVkJywKKydMaWNlbnNlIDo6IEVpZmZlbCBGb3J1bSBMaWNlbnNlIChFRkwpJywKKydMaWNlbnNlIDo6IEZyZWUgRm9yIEVkdWNhdGlvbmFsIFVzZScsCisnTGljZW5zZSA6OiBGcmVlIEZvciBIb21lIFVzZScsCisnTGljZW5zZSA6OiBGcmVlIGZvciBub24tY29tbWVyY2lhbCB1c2UnLAorJ0xpY2Vuc2UgOjogRnJlZWx5IERpc3RyaWJ1dGFibGUnLAorJ0xpY2Vuc2UgOjogRnJlZSBUbyBVc2UgQnV0IFJlc3RyaWN0ZWQnLAorJ0xpY2Vuc2UgOjogRnJlZXdhcmUnLAorJ0xpY2Vuc2UgOjogTmV0c2NhcGUgUHVibGljIExpY2Vuc2UgKE5QTCknLAorJ0xpY2Vuc2UgOjogTm9raWEgT3BlbiBTb3VyY2UgTGljZW5zZSAoTk9LT1MpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCcsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogQWNhZGVtaWMgRnJlZSBMaWNlbnNlIChBRkwpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBBcGFjaGUgU29mdHdhcmUgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogQXBwbGUgUHVibGljIFNvdXJjZSBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBBcnRpc3RpYyBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBBdHRyaWJ1dGlvbiBBc3N1cmFuY2UgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogQlNEIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IENvbW1vbiBQdWJsaWMgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogRWlmZmVsIEZvcnVtIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IEV1cm9wZWFuIFVuaW9uIFB1YmxpYyBMaWNlbmNlIDEuMCAoRVVQTCAxLjApJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBFdXJvcGVhbiBVbmlvbiBQdWJsaWMgTGljZW5jZSAxLjEgKEVVUEwgMS4xKScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYzJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgRnJlZSBEb2N1bWVudGF0aW9uIExpY2Vuc2UgKEZETCknLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChHUEwpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgTGlicmFyeSBvciBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoTEdQTCknLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IElCTSBQdWJsaWMgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogSW50ZWwgT3BlbiBTb3VyY2UgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogSVNDIExpY2Vuc2UgKElTQ0wpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBKYWJiZXIgT3BlbiBTb3VyY2UgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogTUlUIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IE1JVFJFIENvbGxhYm9yYXRpdmUgVmlydHVhbCBXb3Jrc3BhY2UgTGljZW5zZSAoQ1ZXKScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogTW90b3NvdG8gTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogTW96aWxsYSBQdWJsaWMgTGljZW5zZSAxLjAgKE1QTCknLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IE1vemlsbGEgUHVibGljIExpY2Vuc2UgMS4xIChNUEwgMS4xKScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogTmV0aGFjayBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBOb2tpYSBPcGVuIFNvdXJjZSBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBPcGVuIEdyb3VwIFRlc3QgU3VpdGUgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogUHl0aG9uIExpY2Vuc2UgKENOUkkgUHl0aG9uIExpY2Vuc2UpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBQeXRob24gU29mdHdhcmUgRm91bmRhdGlvbiBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBRdCBQdWJsaWMgTGljZW5zZSAoUVBMKScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogUmljb2ggU291cmNlIENvZGUgUHVibGljIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFNsZWVweWNhdCBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBTdW4gSW5kdXN0cnkgU3RhbmRhcmRzIFNvdXJjZSBMaWNlbnNlIChTSVNTTCknLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFN1biBQdWJsaWMgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogVW5pdmVyc2l0eSBvZiBJbGxpbm9pcy9OQ1NBIE9wZW4gU291cmNlIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFZvdmlkYSBTb2Z0d2FyZSBMaWNlbnNlIDEuMCcsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogVzNDIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFguTmV0IExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IHpsaWIvbGlicG5nIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFpvcGUgUHVibGljIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT3RoZXIvUHJvcHJpZXRhcnkgTGljZW5zZScsCisnTGljZW5zZSA6OiBQdWJsaWMgRG9tYWluJywKKydMaWNlbnNlIDo6IFJlcG96ZSBQdWJsaWMgTGljZW5zZScsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBBZnJpa2FhbnMnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQXJhYmljJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEJlbmdhbGknLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQm9zbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBCdWxnYXJpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQ2F0YWxhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBDaGluZXNlIChTaW1wbGlmaWVkKScsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBDaGluZXNlIChUcmFkaXRpb25hbCknLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQ3JvYXRpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQ3plY2gnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogRGFuaXNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IER1dGNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEVuZ2xpc2gnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogRXNwZXJhbnRvJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEZpbm5pc2gnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogRnJlbmNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEdlcm1hbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBHcmVlaycsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBIZWJyZXcnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogSGluZGknLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogSHVuZ2FyaWFuJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEljZWxhbmRpYycsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBJbmRvbmVzaWFuJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEl0YWxpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogSmFwYW5lc2UnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogSmF2YW5lc2UnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogS29yZWFuJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IExhdGluJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IExhdHZpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogTWFjZWRvbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBNYWxheScsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBNYXJhdGhpJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IE5vcndlZ2lhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBQYW5qYWJpJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFBlcnNpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogUG9saXNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFBvcnR1Z3Vlc2UnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogUG9ydHVndWVzZSAoQnJhemlsaWFuKScsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBSb21hbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBSdXNzaWFuJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFNlcmJpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogU2xvdmFrJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFNsb3ZlbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBTcGFuaXNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFN3ZWRpc2gnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogVGFtaWwnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogVGVsdWd1JywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFRoYWknLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogVHVya2lzaCcsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBVa3JhbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBVcmR1JywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFZpZXRuYW1lc2UnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogQmVPUycsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBNYWNPUycsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBNYWNPUyA6OiBNYWNPUyA5JywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IE1hY09TIDo6IE1hY09TIFgnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogTWljcm9zb2Z0JywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IE1pY3Jvc29mdCA6OiBNUy1ET1MnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogTWljcm9zb2Z0IDo6IFdpbmRvd3MnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogTWljcm9zb2Z0IDo6IFdpbmRvd3MgOjogV2luZG93cyAzLjEgb3IgRWFybGllcicsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBNaWNyb3NvZnQgOjogV2luZG93cyA6OiBXaW5kb3dzIDk1Lzk4LzIwMDAnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogTWljcm9zb2Z0IDo6IFdpbmRvd3MgOjogV2luZG93cyBDRScsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBNaWNyb3NvZnQgOjogV2luZG93cyA6OiBXaW5kb3dzIE5ULzIwMDAnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogT1MvMicsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBPUyBJbmRlcGVuZGVudCcsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBPdGhlciBPUycsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQYWxtT1MnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUERBIFN5c3RlbXMnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVgnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogQUlYJywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IFBPU0lYIDo6IEJTRCcsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQT1NJWCA6OiBCU0QgOjogQlNEL09TJywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IFBPU0lYIDo6IEJTRCA6OiBGcmVlQlNEJywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IFBPU0lYIDo6IEJTRCA6OiBOZXRCU0QnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogQlNEIDo6IE9wZW5CU0QnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogR05VIEh1cmQnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogSFAtVVgnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogSVJJWCcsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQT1NJWCA6OiBMaW51eCcsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQT1NJWCA6OiBPdGhlcicsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQT1NJWCA6OiBTQ08nLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogU3VuT1MvU29sYXJpcycsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBVbml4JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBBZGEnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEFQTCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQVNQJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBBc3NlbWJseScsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQXdrJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBCYXNpYycsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQycsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQyMnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEMrKycsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQ29sZCBGdXNpb24nLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEN5dGhvbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogRGVscGhpL0t5bGl4JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBEeWxhbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogRWlmZmVsJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBFbWFjcy1MaXNwJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBFcmxhbmcnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEV1bGVyJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBFdXBob3JpYScsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogRm9ydGgnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEZvcnRyYW4nLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEhhc2tlbGwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEphdmEnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEphdmFTY3JpcHQnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IExpc3AnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IExvZ28nLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IE1MJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBNb2R1bGEnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IE9iamVjdGl2ZSBDJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBPYmplY3QgUGFzY2FsJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBPQ2FtbCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogT3RoZXInLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IE90aGVyIFNjcmlwdGluZyBFbmdpbmVzJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQYXNjYWwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFBlcmwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFBIUCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUGlrZScsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUGxpYW50JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQTC9TUUwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFBST0dSRVNTJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQcm9sb2cnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IDInLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjMnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjQnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjUnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjYnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjcnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAzJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMy4wJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMy4xJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMy4yJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogSW1wbGVtZW50YXRpb24nLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiBJbXBsZW1lbnRhdGlvbiA6OiBDUHl0aG9uJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogSW1wbGVtZW50YXRpb24gOjogSXJvblB5dGhvbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IEltcGxlbWVudGF0aW9uIDo6IEp5dGhvbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IEltcGxlbWVudGF0aW9uIDo6IFB5UHknLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiBJbXBsZW1lbnRhdGlvbiA6OiBTdGFja2xlc3MnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFJFQk9MJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBSZXh4JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBSdWJ5JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBTY2hlbWUnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFNpbXVsYScsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogU21hbGx0YWxrJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBTUUwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFRjbCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogVW5peCBTaGVsbCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogVmlzdWFsIEJhc2ljJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBYQmFzaWMnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFlBQ0MnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFpvcGUnLAorJ1RvcGljIDo6IEFkYXB0aXZlIFRlY2hub2xvZ2llcycsCisnVG9waWMgOjogQXJ0aXN0aWMgU29mdHdhcmUnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBCQlMnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IENoYXQnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IENoYXQgOjogQU9MIEluc3RhbnQgTWVzc2VuZ2VyJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBDaGF0IDo6IElDUScsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogQ2hhdCA6OiBJbnRlcm5ldCBSZWxheSBDaGF0JywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBDaGF0IDo6IFVuaXggVGFsaycsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogQ29uZmVyZW5jaW5nJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCcsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRW1haWwgOjogQWRkcmVzcyBCb29rJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCA6OiBFbWFpbCBDbGllbnRzIChNVUEpJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCA6OiBGaWx0ZXJzJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCA6OiBNYWlsaW5nIExpc3QgU2VydmVycycsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRW1haWwgOjogTWFpbCBUcmFuc3BvcnQgQWdlbnRzJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCA6OiBQb3N0LU9mZmljZScsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRW1haWwgOjogUG9zdC1PZmZpY2UgOjogSU1BUCcsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRW1haWwgOjogUG9zdC1PZmZpY2UgOjogUE9QMycsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRmF4JywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBGSURPJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBGaWxlIFNoYXJpbmcnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IEZpbGUgU2hhcmluZyA6OiBHbnV0ZWxsYScsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRmlsZSBTaGFyaW5nIDo6IE5hcHN0ZXInLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IEhhbSBSYWRpbycsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogSW50ZXJuZXQgUGhvbmUnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IFRlbGVwaG9ueScsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogVXNlbmV0IE5ld3MnLAorJ1RvcGljIDo6IERhdGFiYXNlJywKKydUb3BpYyA6OiBEYXRhYmFzZSA6OiBEYXRhYmFzZSBFbmdpbmVzL1NlcnZlcnMnLAorJ1RvcGljIDo6IERhdGFiYXNlIDo6IEZyb250LUVuZHMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogRmlsZSBNYW5hZ2VycycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBHbm9tZScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBHTlVzdGVwJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IEsgRGVza3RvcCBFbnZpcm9ubWVudCAoS0RFKScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBLIERlc2t0b3AgRW52aXJvbm1lbnQgKEtERSkgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFBpY29HVUknLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogUGljb0dVSSA6OiBBcHBsaWNhdGlvbnMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogUGljb0dVSSA6OiBUaGVtZXMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogU2NyZWVuIFNhdmVycycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEFmdGVyc3RlcCcsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQWZ0ZXJzdGVwIDo6IFRoZW1lcycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQXBwbGV0cycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQmxhY2tib3gnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEJsYWNrYm94IDo6IFRoZW1lcycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQ1RXTScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQ1RXTSA6OiBUaGVtZXMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEVubGlnaHRlbm1lbnQnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEVubGlnaHRlbm1lbnQgOjogRXBwbGV0cycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRW5saWdodGVubWVudCA6OiBUaGVtZXMgRFIxNScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRW5saWdodGVubWVudCA6OiBUaGVtZXMgRFIxNicsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRW5saWdodGVubWVudCA6OiBUaGVtZXMgRFIxNycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRmx1eGJveCcsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRmx1eGJveCA6OiBUaGVtZXMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEZWV00nLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEZWV00gOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBJY2VXTScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogSWNlV00gOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBNZXRhQ2l0eScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogTWV0YUNpdHkgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBPcm9ib3J1cycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogT3JvYm9ydXMgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBTYXdmaXNoJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBTYXdmaXNoIDo6IFRoZW1lcyAwLjMwJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBTYXdmaXNoIDo6IFRoZW1lcyBwcmUtMC4zMCcsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogV2FpbWVhJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBXYWltZWEgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBXaW5kb3cgTWFrZXInLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IFdpbmRvdyBNYWtlciA6OiBBcHBsZXRzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBXaW5kb3cgTWFrZXIgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBYRkNFJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBYRkNFIDo6IFRoZW1lcycsCisnVG9waWMgOjogRG9jdW1lbnRhdGlvbicsCisnVG9waWMgOjogRWR1Y2F0aW9uJywKKydUb3BpYyA6OiBFZHVjYXRpb24gOjogQ29tcHV0ZXIgQWlkZWQgSW5zdHJ1Y3Rpb24gKENBSSknLAorJ1RvcGljIDo6IEVkdWNhdGlvbiA6OiBUZXN0aW5nJywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50JywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50IDo6IEFyY2FkZScsCisnVG9waWMgOjogR2FtZXMvRW50ZXJ0YWlubWVudCA6OiBCb2FyZCBHYW1lcycsCisnVG9waWMgOjogR2FtZXMvRW50ZXJ0YWlubWVudCA6OiBGaXJzdCBQZXJzb24gU2hvb3RlcnMnLAorJ1RvcGljIDo6IEdhbWVzL0VudGVydGFpbm1lbnQgOjogRm9ydHVuZSBDb29raWVzJywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50IDo6IE11bHRpLVVzZXIgRHVuZ2VvbnMgKE1VRCknLAorJ1RvcGljIDo6IEdhbWVzL0VudGVydGFpbm1lbnQgOjogUHV6emxlIEdhbWVzJywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50IDo6IFJlYWwgVGltZSBTdHJhdGVneScsCisnVG9waWMgOjogR2FtZXMvRW50ZXJ0YWlubWVudCA6OiBSb2xlLVBsYXlpbmcnLAorJ1RvcGljIDo6IEdhbWVzL0VudGVydGFpbm1lbnQgOjogU2lkZS1TY3JvbGxpbmcvQXJjYWRlIEdhbWVzJywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50IDo6IFNpbXVsYXRpb24nLAorJ1RvcGljIDo6IEdhbWVzL0VudGVydGFpbm1lbnQgOjogVHVybiBCYXNlZCBTdHJhdGVneScsCisnVG9waWMgOjogSG9tZSBBdXRvbWF0aW9uJywKKydUb3BpYyA6OiBJbnRlcm5ldCcsCisnVG9waWMgOjogSW50ZXJuZXQgOjogRmlsZSBUcmFuc2ZlciBQcm90b2NvbCAoRlRQKScsCisnVG9waWMgOjogSW50ZXJuZXQgOjogRmluZ2VyJywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBMb2cgQW5hbHlzaXMnLAorJ1RvcGljIDo6IEludGVybmV0IDo6IE5hbWUgU2VydmljZSAoRE5TKScsCisnVG9waWMgOjogSW50ZXJuZXQgOjogUHJveHkgU2VydmVycycsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV0FQJywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBXV1cvSFRUUCcsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogQnJvd3NlcnMnLAorJ1RvcGljIDo6IEludGVybmV0IDo6IFdXVy9IVFRQIDo6IER5bmFtaWMgQ29udGVudCcsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogRHluYW1pYyBDb250ZW50IDo6IENHSSBUb29scy9MaWJyYXJpZXMnLAorJ1RvcGljIDo6IEludGVybmV0IDo6IFdXVy9IVFRQIDo6IER5bmFtaWMgQ29udGVudCA6OiBNZXNzYWdlIEJvYXJkcycsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogRHluYW1pYyBDb250ZW50IDo6IE5ld3MvRGlhcnknLAorJ1RvcGljIDo6IEludGVybmV0IDo6IFdXVy9IVFRQIDo6IER5bmFtaWMgQ29udGVudCA6OiBQYWdlIENvdW50ZXJzJywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBXV1cvSFRUUCA6OiBIVFRQIFNlcnZlcnMnLAorJ1RvcGljIDo6IEludGVybmV0IDo6IFdXVy9IVFRQIDo6IEluZGV4aW5nL1NlYXJjaCcsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogU2Vzc2lvbicsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogU2l0ZSBNYW5hZ2VtZW50JywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBXV1cvSFRUUCA6OiBTaXRlIE1hbmFnZW1lbnQgOjogTGluayBDaGVja2luZycsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogV1NHSScsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogV1NHSSA6OiBBcHBsaWNhdGlvbicsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogV1NHSSA6OiBNaWRkbGV3YXJlJywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBXV1cvSFRUUCA6OiBXU0dJIDo6IFNlcnZlcicsCisnVG9waWMgOjogSW50ZXJuZXQgOjogWjM5LjUwJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzIDo6IDNEIE1vZGVsaW5nJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzIDo6IDNEIFJlbmRlcmluZycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBHcmFwaGljcyA6OiBDYXB0dXJlJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzIDo6IENhcHR1cmUgOjogRGlnaXRhbCBDYW1lcmEnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogQ2FwdHVyZSA6OiBTY2FubmVycycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBHcmFwaGljcyA6OiBDYXB0dXJlIDo6IFNjcmVlbiBDYXB0dXJlJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzIDo6IEVkaXRvcnMnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogRWRpdG9ycyA6OiBSYXN0ZXItQmFzZWQnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogRWRpdG9ycyA6OiBWZWN0b3ItQmFzZWQnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogR3JhcGhpY3MgQ29udmVyc2lvbicsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBHcmFwaGljcyA6OiBQcmVzZW50YXRpb24nLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogVmlld2VycycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBBbmFseXNpcycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBDYXB0dXJlL1JlY29yZGluZycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBDRCBBdWRpbycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBDRCBBdWRpbyA6OiBDRCBQbGF5aW5nJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFNvdW5kL0F1ZGlvIDo6IENEIEF1ZGlvIDo6IENEIFJpcHBpbmcnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogU291bmQvQXVkaW8gOjogQ0QgQXVkaW8gOjogQ0QgV3JpdGluZycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBDb252ZXJzaW9uJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFNvdW5kL0F1ZGlvIDo6IEVkaXRvcnMnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogU291bmQvQXVkaW8gOjogTUlESScsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBNaXhlcnMnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogU291bmQvQXVkaW8gOjogUGxheWVycycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBQbGF5ZXJzIDo6IE1QMycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBTb3VuZCBTeW50aGVzaXMnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogU291bmQvQXVkaW8gOjogU3BlZWNoJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFZpZGVvJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFZpZGVvIDo6IENhcHR1cmUnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogVmlkZW8gOjogQ29udmVyc2lvbicsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBWaWRlbyA6OiBEaXNwbGF5JywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFZpZGVvIDo6IE5vbi1MaW5lYXIgRWRpdG9yJywKKydUb3BpYyA6OiBPZmZpY2UvQnVzaW5lc3MnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBGaW5hbmNpYWwnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBGaW5hbmNpYWwgOjogQWNjb3VudGluZycsCisnVG9waWMgOjogT2ZmaWNlL0J1c2luZXNzIDo6IEZpbmFuY2lhbCA6OiBJbnZlc3RtZW50JywKKydUb3BpYyA6OiBPZmZpY2UvQnVzaW5lc3MgOjogRmluYW5jaWFsIDo6IFBvaW50LU9mLVNhbGUnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBGaW5hbmNpYWwgOjogU3ByZWFkc2hlZXQnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBHcm91cHdhcmUnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBOZXdzL0RpYXJ5JywKKydUb3BpYyA6OiBPZmZpY2UvQnVzaW5lc3MgOjogT2ZmaWNlIFN1aXRlcycsCisnVG9waWMgOjogT2ZmaWNlL0J1c2luZXNzIDo6IFNjaGVkdWxpbmcnLAorJ1RvcGljIDo6IE90aGVyL05vbmxpc3RlZCBUb3BpYycsCisnVG9waWMgOjogUHJpbnRpbmcnLAorJ1RvcGljIDo6IFJlbGlnaW9uJywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nJywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nIDo6IEFydGlmaWNpYWwgTGlmZScsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBBcnRpZmljaWFsIEludGVsbGlnZW5jZScsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBBc3Ryb25vbXknLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogQXRtb3NwaGVyaWMgU2NpZW5jZScsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBCaW8tSW5mb3JtYXRpY3MnLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogQ2hlbWlzdHJ5JywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nIDo6IEVsZWN0cm9uaWMgRGVzaWduIEF1dG9tYXRpb24gKEVEQSknLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogR0lTJywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nIDo6IEh1bWFuIE1hY2hpbmUgSW50ZXJmYWNlcycsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBJbWFnZSBSZWNvZ25pdGlvbicsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBJbmZvcm1hdGlvbiBBbmFseXNpcycsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBJbnRlcmZhY2UgRW5naW5lL1Byb3RvY29sIFRyYW5zbGF0b3InLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogTWF0aGVtYXRpY3MnLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogTWVkaWNhbCBTY2llbmNlIEFwcHMuJywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nIDo6IFBoeXNpY3MnLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogVmlzdWFsaXphdGlvbicsCisnVG9waWMgOjogU2VjdXJpdHknLAorJ1RvcGljIDo6IFNlY3VyaXR5IDo6IENyeXB0b2dyYXBoeScsCisnVG9waWMgOjogU29jaW9sb2d5JywKKydUb3BpYyA6OiBTb2Npb2xvZ3kgOjogR2VuZWFsb2d5JywKKydUb3BpYyA6OiBTb2Npb2xvZ3kgOjogSGlzdG9yeScsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IEFzc2VtYmxlcnMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IEJ1ZyBUcmFja2luZycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogQnVpbGQgVG9vbHMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IENvZGUgR2VuZXJhdG9ycycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogQ29tcGlsZXJzJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBEZWJ1Z2dlcnMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IERpc2Fzc2VtYmxlcnMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IERvY3VtZW50YXRpb24nLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IEVtYmVkZGVkIFN5c3RlbXMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IEludGVybmF0aW9uYWxpemF0aW9uJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBJbnRlcnByZXRlcnMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzIDo6IEFwcGxpY2F0aW9uIEZyYW1ld29ya3MnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcyA6OiBKYXZhIExpYnJhcmllcycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzIDo6IFBlcmwgTW9kdWxlcycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzIDo6IFBIUCBDbGFzc2VzJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMgOjogUGlrZSBNb2R1bGVzJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMgOjogcHlnYW1lJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMgOjogUHl0aG9uIE1vZHVsZXMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcyA6OiBSdWJ5IE1vZHVsZXMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcyA6OiBUY2wgRXh0ZW5zaW9ucycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTG9jYWxpemF0aW9uJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBPYmplY3QgQnJva2VyaW5nJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBPYmplY3QgQnJva2VyaW5nIDo6IENPUkJBJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBQcmUtcHJvY2Vzc29ycycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogUXVhbGl0eSBBc3N1cmFuY2UnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IFRlc3RpbmcnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IFRlc3RpbmcgOjogVHJhZmZpYyBHZW5lcmF0aW9uJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBVc2VyIEludGVyZmFjZXMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IFZlcnNpb24gQ29udHJvbCcsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogVmVyc2lvbiBDb250cm9sIDo6IENWUycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogVmVyc2lvbiBDb250cm9sIDo6IFJDUycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogVmVyc2lvbiBDb250cm9sIDo6IFNDQ1MnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IFdpZGdldCBTZXRzJywKKydUb3BpYyA6OiBTeXN0ZW0nLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBBcmNoaXZpbmcnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBBcmNoaXZpbmcgOjogQmFja3VwJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogQXJjaGl2aW5nIDo6IENvbXByZXNzaW9uJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogQXJjaGl2aW5nIDo6IE1pcnJvcmluZycsCisnVG9waWMgOjogU3lzdGVtIDo6IEFyY2hpdmluZyA6OiBQYWNrYWdpbmcnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBCZW5jaG1hcmsnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBCb290JywKKydUb3BpYyA6OiBTeXN0ZW0gOjogQm9vdCA6OiBJbml0JywKKydUb3BpYyA6OiBTeXN0ZW0gOjogQ2x1c3RlcmluZycsCisnVG9waWMgOjogU3lzdGVtIDo6IENvbnNvbGUgRm9udHMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBEaXN0cmlidXRlZCBDb21wdXRpbmcnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBFbXVsYXRvcnMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBGaWxlc3lzdGVtcycsCisnVG9waWMgOjogU3lzdGVtIDo6IEhhcmR3YXJlJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogSGFyZHdhcmUgOjogSGFyZHdhcmUgRHJpdmVycycsCisnVG9waWMgOjogU3lzdGVtIDo6IEhhcmR3YXJlIDo6IE1haW5mcmFtZXMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBIYXJkd2FyZSA6OiBTeW1tZXRyaWMgTXVsdGktcHJvY2Vzc2luZycsCisnVG9waWMgOjogU3lzdGVtIDo6IEluc3RhbGxhdGlvbi9TZXR1cCcsCisnVG9waWMgOjogU3lzdGVtIDo6IExvZ2dpbmcnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBNb25pdG9yaW5nJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogTmV0d29ya2luZycsCisnVG9waWMgOjogU3lzdGVtIDo6IE5ldHdvcmtpbmcgOjogRmlyZXdhbGxzJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogTmV0d29ya2luZyA6OiBNb25pdG9yaW5nJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogTmV0d29ya2luZyA6OiBNb25pdG9yaW5nIDo6IEhhcmR3YXJlIFdhdGNoZG9nJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogTmV0d29ya2luZyA6OiBUaW1lIFN5bmNocm9uaXphdGlvbicsCisnVG9waWMgOjogU3lzdGVtIDo6IE9wZXJhdGluZyBTeXN0ZW0nLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBPcGVyYXRpbmcgU3lzdGVtIEtlcm5lbHMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBPcGVyYXRpbmcgU3lzdGVtIEtlcm5lbHMgOjogQlNEJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogT3BlcmF0aW5nIFN5c3RlbSBLZXJuZWxzIDo6IEdOVSBIdXJkJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogT3BlcmF0aW5nIFN5c3RlbSBLZXJuZWxzIDo6IExpbnV4JywKKydUb3BpYyA6OiBTeXN0ZW0gOjogUG93ZXIgKFVQUyknLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBSZWNvdmVyeSBUb29scycsCisnVG9waWMgOjogU3lzdGVtIDo6IFNoZWxscycsCisnVG9waWMgOjogU3lzdGVtIDo6IFNvZnR3YXJlIERpc3RyaWJ1dGlvbicsCisnVG9waWMgOjogU3lzdGVtIDo6IFN5c3RlbXMgQWRtaW5pc3RyYXRpb24nLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBTeXN0ZW1zIEFkbWluaXN0cmF0aW9uIDo6IEF1dGhlbnRpY2F0aW9uL0RpcmVjdG9yeScsCisnVG9waWMgOjogU3lzdGVtIDo6IFN5c3RlbXMgQWRtaW5pc3RyYXRpb24gOjogQXV0aGVudGljYXRpb24vRGlyZWN0b3J5IDo6IExEQVAnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBTeXN0ZW1zIEFkbWluaXN0cmF0aW9uIDo6IEF1dGhlbnRpY2F0aW9uL0RpcmVjdG9yeSA6OiBOSVMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBTeXN0ZW0gU2hlbGxzJywKKydUb3BpYyA6OiBUZXJtaW5hbHMnLAorJ1RvcGljIDo6IFRlcm1pbmFscyA6OiBTZXJpYWwnLAorJ1RvcGljIDo6IFRlcm1pbmFscyA6OiBUZWxuZXQnLAorJ1RvcGljIDo6IFRlcm1pbmFscyA6OiBUZXJtaW5hbCBFbXVsYXRvcnMvWCBUZXJtaW5hbHMnLAorJ1RvcGljIDo6IFRleHQgRWRpdG9ycycsCisnVG9waWMgOjogVGV4dCBFZGl0b3JzIDo6IERvY3VtZW50YXRpb24nLAorJ1RvcGljIDo6IFRleHQgRWRpdG9ycyA6OiBFbWFjcycsCisnVG9waWMgOjogVGV4dCBFZGl0b3JzIDo6IEludGVncmF0ZWQgRGV2ZWxvcG1lbnQgRW52aXJvbm1lbnRzIChJREUpJywKKydUb3BpYyA6OiBUZXh0IEVkaXRvcnMgOjogVGV4dCBQcm9jZXNzaW5nJywKKydUb3BpYyA6OiBUZXh0IEVkaXRvcnMgOjogV29yZCBQcm9jZXNzb3JzJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBGaWx0ZXJzJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogRm9udHMnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBHZW5lcmFsJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogSW5kZXhpbmcnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBMaW5ndWlzdGljJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogTWFya3VwJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogTWFya3VwIDo6IEhUTUwnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBNYXJrdXAgOjogTGFUZVgnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBNYXJrdXAgOjogU0dNTCcsCisnVG9waWMgOjogVGV4dCBQcm9jZXNzaW5nIDo6IE1hcmt1cCA6OiBWUk1MJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogTWFya3VwIDo6IFhNTCcsCisnVG9waWMgOjogVXRpbGl0aWVzJywKK10KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9fX2luaXRfXy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NzIyN2MwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL19faW5pdF9fLnB5CkBAIC0wLDAgKzEsNTMgQEAKKyIiIlN1YnBhY2thZ2UgY29udGFpbmluZyBhbGwgc3RhbmRhcmQgY29tbWFuZHMuIiIiCitpbXBvcnQgb3MKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nTW9kdWxlRXJyb3IKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHJlc29sdmVfbmFtZQorCitfX2FsbF9fID0gWydnZXRfY29tbWFuZF9uYW1lcycsICdzZXRfY29tbWFuZCcsICdnZXRfY29tbWFuZF9jbGFzcycsCisgICAgICAgICAgICdTVEFOREFSRF9DT01NQU5EUyddCisKKworU1RBTkRBUkRfQ09NTUFORFMgPSBbCisgICAgIyBwYWNrYWdpbmcKKyAgICAnY2hlY2snLCAndGVzdCcsCisgICAgIyBidWlsZGluZworICAgICdidWlsZCcsICdidWlsZF9weScsICdidWlsZF9leHQnLCAnYnVpbGRfY2xpYicsICdidWlsZF9zY3JpcHRzJywgJ2NsZWFuJywKKyAgICAjIGluc3RhbGxpbmcKKyAgICAnaW5zdGFsbF9kaXN0JywgJ2luc3RhbGxfbGliJywgJ2luc3RhbGxfaGVhZGVycycsICdpbnN0YWxsX3NjcmlwdHMnLAorICAgICdpbnN0YWxsX2RhdGEnLCAnaW5zdGFsbF9kaXN0aW5mbycsCisgICAgIyBkaXN0cmlidXRpbmcKKyAgICAnc2Rpc3QnLCAnYmRpc3QnLCAnYmRpc3RfZHVtYicsICdiZGlzdF93aW5pbnN0JywKKyAgICAncmVnaXN0ZXInLCAndXBsb2FkJywgJ3VwbG9hZF9kb2NzJywKKyAgICBdCisKK2lmIG9zLm5hbWUgPT0gJ250JzoKKyAgICBTVEFOREFSRF9DT01NQU5EUy5pbnNlcnQoU1RBTkRBUkRfQ09NTUFORFMuaW5kZXgoJ2JkaXN0X3dpbmluc3QnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JkaXN0X21zaScpCisKKyMgWFhYIG1heWJlIHdlIG5lZWQgbW9yZSB0aGFuIG9uZSByZWdpc3RyeSwgc28gdGhhdCAtLWxpc3QtY29tYW5kcyBjYW4gZGlzcGxheQorIyBzdGFuZGFyZCwgY3VzdG9tIGFuZCBvdmVycmlkZW4gc3RhbmRhcmQgY29tbWFuZHMgZGlmZmVyZW50bHkKK19DT01NQU5EUyA9IGRpY3QoKG5hbWUsICdwYWNrYWdpbmcuY29tbWFuZC4lcy4lcycgJSAobmFtZSwgbmFtZSkpCisgICAgICAgICAgICAgICAgIGZvciBuYW1lIGluIFNUQU5EQVJEX0NPTU1BTkRTKQorCisKK2RlZiBnZXRfY29tbWFuZF9uYW1lcygpOgorICAgICIiIlJldHVybiByZWdpc3RlcmVkIGNvbW1hbmRzIiIiCisgICAgcmV0dXJuIHNvcnRlZChfQ09NTUFORFMpCisKKworZGVmIHNldF9jb21tYW5kKGxvY2F0aW9uKToKKyAgICBjbHMgPSByZXNvbHZlX25hbWUobG9jYXRpb24pCisgICAgIyBYWFggd2Ugd2FudCB0byBkbyB0aGUgZHVjay10eXBlIGNoZWNraW5nIGhlcmUKKyAgICBfQ09NTUFORFNbY2xzLmdldF9jb21tYW5kX25hbWUoKV0gPSBjbHMKKworCitkZWYgZ2V0X2NvbW1hbmRfY2xhc3MobmFtZSk6CisgICAgIiIiUmV0dXJuIHRoZSByZWdpc3RlcmVkIGNvbW1hbmQiIiIKKyAgICB0cnk6CisgICAgICAgIGNscyA9IF9DT01NQU5EU1tuYW1lXQorICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgcmFpc2UgUGFja2FnaW5nTW9kdWxlRXJyb3IoIkludmFsaWQgY29tbWFuZCAlcyIgJSBuYW1lKQorICAgIGlmIGlzaW5zdGFuY2UoY2xzLCBzdHIpOgorICAgICAgICBjbHMgPSByZXNvbHZlX25hbWUoY2xzKQorICAgICAgICBfQ09NTUFORFNbbmFtZV0gPSBjbHMKKyAgICByZXR1cm4gY2xzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYmRpc3QucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYmRpc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTM5MGNkYwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9iZGlzdC5weQpAQCAtMCwwICsxLDE0MSBAQAorIiIiQ3JlYXRlIGEgYnVpbHQgKGJpbmFyeSkgZGlzdHJpYnV0aW9uLgorCitJZiBhIC0tZm9ybWF0cyBvcHRpb24gd2FzIGdpdmVuIG9uIHRoZSBjb21tYW5kIGxpbmUsIHRoaXMgY29tbWFuZCB3aWxsCitjYWxsIHRoZSBjb3JyZXNwb25kaW5nIGJkaXN0XyogY29tbWFuZHM7IGlmIHRoZSBvcHRpb24gd2FzIGFic2VudCwgYQorYmRpc3RfKiBjb21tYW5kIGRlcGVuZGluZyBvbiB0aGUgY3VycmVudCBwbGF0Zm9ybSB3aWxsIGJlIGNhbGxlZC4KKyIiIgorCitpbXBvcnQgb3MKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IHV0aWwKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IsIFBhY2thZ2luZ09wdGlvbkVycm9yCisKKworZGVmIHNob3dfZm9ybWF0cygpOgorICAgICIiIlByaW50IGxpc3Qgb2YgYXZhaWxhYmxlIGZvcm1hdHMgKGFyZ3VtZW50cyB0byAiLS1mb3JtYXQiIG9wdGlvbikuCisgICAgIiIiCisgICAgZnJvbSBwYWNrYWdpbmcuZmFuY3lfZ2V0b3B0IGltcG9ydCBGYW5jeUdldG9wdAorICAgIGZvcm1hdHMgPSBbXQorICAgIGZvciBmb3JtYXQgaW4gYmRpc3QuZm9ybWF0X2NvbW1hbmRzOgorICAgICAgICBmb3JtYXRzLmFwcGVuZCgoImZvcm1hdHM9IiArIGZvcm1hdCwgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGJkaXN0LmZvcm1hdF9jb21tYW5kW2Zvcm1hdF1bMV0pKQorICAgIHByZXR0eV9wcmludGVyID0gRmFuY3lHZXRvcHQoZm9ybWF0cykKKyAgICBwcmV0dHlfcHJpbnRlci5wcmludF9oZWxwKCJMaXN0IG9mIGF2YWlsYWJsZSBkaXN0cmlidXRpb24gZm9ybWF0czoiKQorCisKK2NsYXNzIGJkaXN0KENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAiY3JlYXRlIGEgYnVpbHQgKGJpbmFyeSkgZGlzdHJpYnV0aW9uIgorCisgICAgdXNlcl9vcHRpb25zID0gWygnYmRpc3QtYmFzZT0nLCAnYicsCisgICAgICAgICAgICAgICAgICAgICAidGVtcG9yYXJ5IGRpcmVjdG9yeSBmb3IgY3JlYXRpbmcgYnVpbHQgZGlzdHJpYnV0aW9ucyIpLAorICAgICAgICAgICAgICAgICAgICAoJ3BsYXQtbmFtZT0nLCAncCcsCisgICAgICAgICAgICAgICAgICAgICAicGxhdGZvcm0gbmFtZSB0byBlbWJlZCBpbiBnZW5lcmF0ZWQgZmlsZW5hbWVzICIKKyAgICAgICAgICAgICAgICAgICAgICIoZGVmYXVsdDogJXMpIiAlIHV0aWwuZ2V0X3BsYXRmb3JtKCkpLAorICAgICAgICAgICAgICAgICAgICAoJ2Zvcm1hdHM9JywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJmb3JtYXRzIGZvciBkaXN0cmlidXRpb24gKGNvbW1hLXNlcGFyYXRlZCBsaXN0KSIpLAorICAgICAgICAgICAgICAgICAgICAoJ2Rpc3QtZGlyPScsICdkJywKKyAgICAgICAgICAgICAgICAgICAgICJkaXJlY3RvcnkgdG8gcHV0IGZpbmFsIGJ1aWx0IGRpc3RyaWJ1dGlvbnMgaW4gIgorICAgICAgICAgICAgICAgICAgICAgIltkZWZhdWx0OiBkaXN0XSIpLAorICAgICAgICAgICAgICAgICAgICAoJ3NraXAtYnVpbGQnLCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgInNraXAgcmVidWlsZGluZyBldmVyeXRoaW5nIChmb3IgdGVzdGluZy9kZWJ1Z2dpbmcpIiksCisgICAgICAgICAgICAgICAgICAgICgnb3duZXI9JywgJ3UnLAorICAgICAgICAgICAgICAgICAgICAgIk93bmVyIG5hbWUgdXNlZCB3aGVuIGNyZWF0aW5nIGEgdGFyIGZpbGUiCisgICAgICAgICAgICAgICAgICAgICAiIFtkZWZhdWx0OiBjdXJyZW50IHVzZXJdIiksCisgICAgICAgICAgICAgICAgICAgICgnZ3JvdXA9JywgJ2cnLAorICAgICAgICAgICAgICAgICAgICAgIkdyb3VwIG5hbWUgdXNlZCB3aGVuIGNyZWF0aW5nIGEgdGFyIGZpbGUiCisgICAgICAgICAgICAgICAgICAgICAiIFtkZWZhdWx0OiBjdXJyZW50IGdyb3VwXSIpLAorICAgICAgICAgICAgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsnc2tpcC1idWlsZCddCisKKyAgICBoZWxwX29wdGlvbnMgPSBbCisgICAgICAgICgnaGVscC1mb3JtYXRzJywgTm9uZSwKKyAgICAgICAgICJsaXN0cyBhdmFpbGFibGUgZGlzdHJpYnV0aW9uIGZvcm1hdHMiLCBzaG93X2Zvcm1hdHMpLAorICAgICAgICBdCisKKyAgICAjIFRoaXMgaXMgb2YgY291cnNlIHZlcnkgc2ltcGxpc3RpYy4gIFRoZSB2YXJpb3VzIFVOSVggZmFtaWx5IG9wZXJhdGluZworICAgICMgc3lzdGVtcyBoYXZlIHRoZWlyIHNwZWNpZmljIGZvcm1hdHMsIGJ1dCB0aGV5IGFyZSBvdXQgb2Ygc2NvcGUgZm9yIHVzOworICAgICMgYmRpc3RfZHVtYiBpcywgd2VsbCwgZHVtYjsgaXQncyBtb3JlIGEgYnVpbGRpbmcgYmxvY2sgZm9yIG90aGVyCisgICAgIyBwYWNrYWdpbmcgdG9vbHMgdGhhbiBhIHJlYWwgZW5kLXVzZXIgYmluYXJ5IGZvcm1hdC4KKyAgICBkZWZhdWx0X2Zvcm1hdCA9IHsncG9zaXgnOiAnZ3p0YXInLAorICAgICAgICAgICAgICAgICAgICAgICdudCc6ICd6aXAnLAorICAgICAgICAgICAgICAgICAgICAgICdvczInOiAnemlwJ30KKworICAgICMgRXN0YWJsaXNoIHRoZSBwcmVmZXJyZWQgb3JkZXIgKGZvciB0aGUgLS1oZWxwLWZvcm1hdHMgb3B0aW9uKS4KKyAgICBmb3JtYXRfY29tbWFuZHMgPSBbJ2d6dGFyJywgJ2J6dGFyJywgJ3RhcicsCisgICAgICAgICAgICAgICAgICAgICAgICd3aW5pbnN0JywgJ3ppcCcsICdtc2knXQorCisgICAgIyBBbmQgdGhlIHJlYWwgaW5mb3JtYXRpb24uCisgICAgZm9ybWF0X2NvbW1hbmQgPSB7J2d6dGFyJzogKCdiZGlzdF9kdW1iJywgImd6aXAnZWQgdGFyIGZpbGUiKSwKKyAgICAgICAgICAgICAgICAgICAgICAnYnp0YXInOiAoJ2JkaXN0X2R1bWInLCAiYnppcDInZWQgdGFyIGZpbGUiKSwKKyAgICAgICAgICAgICAgICAgICAgICAndGFyJzogICAoJ2JkaXN0X2R1bWInLCAidGFyIGZpbGUiKSwKKyAgICAgICAgICAgICAgICAgICAgICAnd2luaW5zdCc6ICgnYmRpc3Rfd2luaW5zdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIldpbmRvd3MgZXhlY3V0YWJsZSBpbnN0YWxsZXIiKSwKKyAgICAgICAgICAgICAgICAgICAgICAnemlwJzogICAoJ2JkaXN0X2R1bWInLCAiWklQIGZpbGUiKSwKKyAgICAgICAgICAgICAgICAgICAgICAnbXNpJzogICAoJ2JkaXN0X21zaScsICAiTWljcm9zb2Z0IEluc3RhbGxlciIpLAorICAgICAgICAgICAgICAgICAgICAgfQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5iZGlzdF9iYXNlID0gTm9uZQorICAgICAgICBzZWxmLnBsYXRfbmFtZSA9IE5vbmUKKyAgICAgICAgc2VsZi5mb3JtYXRzID0gTm9uZQorICAgICAgICBzZWxmLmRpc3RfZGlyID0gTm9uZQorICAgICAgICBzZWxmLnNraXBfYnVpbGQgPSBGYWxzZQorICAgICAgICBzZWxmLmdyb3VwID0gTm9uZQorICAgICAgICBzZWxmLm93bmVyID0gTm9uZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgICMgaGF2ZSB0byBmaW5hbGl6ZSAncGxhdF9uYW1lJyBiZWZvcmUgJ2JkaXN0X2Jhc2UnCisgICAgICAgIGlmIHNlbGYucGxhdF9uYW1lIGlzIE5vbmU6CisgICAgICAgICAgICBpZiBzZWxmLnNraXBfYnVpbGQ6CisgICAgICAgICAgICAgICAgc2VsZi5wbGF0X25hbWUgPSB1dGlsLmdldF9wbGF0Zm9ybSgpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYucGxhdF9uYW1lID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2J1aWxkJykucGxhdF9uYW1lCisKKyAgICAgICAgIyAnYmRpc3RfYmFzZScgLS0gcGFyZW50IG9mIHBlci1idWlsdC1kaXN0cmlidXRpb24tZm9ybWF0CisgICAgICAgICMgdGVtcG9yYXJ5IGRpcmVjdG9yaWVzIChlZy4gd2UnbGwgcHJvYmFibHkgaGF2ZQorICAgICAgICAjICJidWlsZC9iZGlzdC48cGxhdD4vZHVtYiIsIGV0Yy4pCisgICAgICAgIGlmIHNlbGYuYmRpc3RfYmFzZSBpcyBOb25lOgorICAgICAgICAgICAgYnVpbGRfYmFzZSA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdidWlsZCcpLmJ1aWxkX2Jhc2UKKyAgICAgICAgICAgIHNlbGYuYmRpc3RfYmFzZSA9IG9zLnBhdGguam9pbihidWlsZF9iYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdiZGlzdC4nICsgc2VsZi5wbGF0X25hbWUpCisKKyAgICAgICAgc2VsZi5lbnN1cmVfc3RyaW5nX2xpc3QoJ2Zvcm1hdHMnKQorICAgICAgICBpZiBzZWxmLmZvcm1hdHMgaXMgTm9uZToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLmZvcm1hdHMgPSBbc2VsZi5kZWZhdWx0X2Zvcm1hdFtvcy5uYW1lXV0KKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKAorICAgICAgICAgICAgICAgICAgICAiZG9uJ3Qga25vdyBob3cgdG8gY3JlYXRlIGJ1aWx0IGRpc3RyaWJ1dGlvbnMgIgorICAgICAgICAgICAgICAgICAgICAib24gcGxhdGZvcm0gJXMiICUgb3MubmFtZSkKKworICAgICAgICBpZiBzZWxmLmRpc3RfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmRpc3RfZGlyID0gImRpc3QiCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICAjIEZpZ3VyZSBvdXQgd2hpY2ggc3ViLWNvbW1hbmRzIHdlIG5lZWQgdG8gcnVuLgorICAgICAgICBjb21tYW5kcyA9IFtdCisgICAgICAgIGZvciBmb3JtYXQgaW4gc2VsZi5mb3JtYXRzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGNvbW1hbmRzLmFwcGVuZChzZWxmLmZvcm1hdF9jb21tYW5kW2Zvcm1hdF1bMF0pCisgICAgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoImludmFsaWQgZm9ybWF0ICclcyciICUgZm9ybWF0KQorCisgICAgICAgICMgUmVpbml0aWFsaXplIGFuZCBydW4gZWFjaCBjb21tYW5kLgorICAgICAgICBmb3IgaSBpbiByYW5nZShsZW4oc2VsZi5mb3JtYXRzKSk6CisgICAgICAgICAgICBjbWRfbmFtZSA9IGNvbW1hbmRzW2ldCisgICAgICAgICAgICBzdWJfY21kID0gc2VsZi5yZWluaXRpYWxpemVfY29tbWFuZChjbWRfbmFtZSkKKyAgICAgICAgICAgIHN1Yl9jbWQuZm9ybWF0ID0gc2VsZi5mb3JtYXRzW2ldCisKKyAgICAgICAgICAgICMgcGFzc2luZyB0aGUgb3duZXIgYW5kIGdyb3VwIG5hbWVzIGZvciB0YXIgYXJjaGl2aW5nCisgICAgICAgICAgICBpZiBjbWRfbmFtZSA9PSAnYmRpc3RfZHVtYic6CisgICAgICAgICAgICAgICAgc3ViX2NtZC5vd25lciA9IHNlbGYub3duZXIKKyAgICAgICAgICAgICAgICBzdWJfY21kLmdyb3VwID0gc2VsZi5ncm91cAorCisgICAgICAgICAgICAjIElmIHdlJ3JlIGdvaW5nIHRvIG5lZWQgdG8gcnVuIHRoaXMgY29tbWFuZCBhZ2FpbiwgdGVsbCBpdCB0bworICAgICAgICAgICAgIyBrZWVwIGl0cyB0ZW1wb3JhcnkgZmlsZXMgYXJvdW5kIHNvIHN1YnNlcXVlbnQgcnVucyBnbyBmYXN0ZXIuCisgICAgICAgICAgICBpZiBjbWRfbmFtZSBpbiBjb21tYW5kc1tpKzE6XToKKyAgICAgICAgICAgICAgICBzdWJfY21kLmtlZXBfdGVtcCA9IFRydWUKKyAgICAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQoY21kX25hbWUpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYmRpc3RfZHVtYi5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9iZGlzdF9kdW1iLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU0OGUzYzQKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYmRpc3RfZHVtYi5weQpAQCAtMCwwICsxLDEzOSBAQAorIiIiQ3JlYXRlIGEgImR1bWIiIGJ1aWx0IGRpc3RyaWJ1dGlvbi4KKworQSBkdW1iIGRpc3RyaWJ1dGlvbiBpcyBqdXN0IGFuIGFyY2hpdmUgbWVhbnQgdG8gYmUgdW5wYWNrZWQgdW5kZXIKK3N5cy5wcmVmaXggb3Igc3lzLmV4ZWNfcHJlZml4LgorIiIiCisKK2ltcG9ydCBvcworZnJvbSBzaHV0aWwgaW1wb3J0IHJtdHJlZQorZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9weXRob25fdmVyc2lvbgorCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBnZXRfcGxhdGZvcm0KK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKKworCitjbGFzcyBiZGlzdF9kdW1iKENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAnY3JlYXRlIGEgImR1bWIiIGJ1aWx0IGRpc3RyaWJ1dGlvbicKKworICAgIHVzZXJfb3B0aW9ucyA9IFsoJ2JkaXN0LWRpcj0nLCAnZCcsCisgICAgICAgICAgICAgICAgICAgICAidGVtcG9yYXJ5IGRpcmVjdG9yeSBmb3IgY3JlYXRpbmcgdGhlIGRpc3RyaWJ1dGlvbiIpLAorICAgICAgICAgICAgICAgICAgICAoJ3BsYXQtbmFtZT0nLCAncCcsCisgICAgICAgICAgICAgICAgICAgICAicGxhdGZvcm0gbmFtZSB0byBlbWJlZCBpbiBnZW5lcmF0ZWQgZmlsZW5hbWVzICIKKyAgICAgICAgICAgICAgICAgICAgICIoZGVmYXVsdDogJXMpIiAlIGdldF9wbGF0Zm9ybSgpKSwKKyAgICAgICAgICAgICAgICAgICAgKCdmb3JtYXQ9JywgJ2YnLAorICAgICAgICAgICAgICAgICAgICAgImFyY2hpdmUgZm9ybWF0IHRvIGNyZWF0ZSAodGFyLCBnenRhciwgYnp0YXIsIHppcCkiKSwKKyAgICAgICAgICAgICAgICAgICAgKCdrZWVwLXRlbXAnLCAnaycsCisgICAgICAgICAgICAgICAgICAgICAia2VlcCB0aGUgcHNldWRvLWluc3RhbGxhdGlvbiB0cmVlIGFyb3VuZCBhZnRlciAiICsKKyAgICAgICAgICAgICAgICAgICAgICJjcmVhdGluZyB0aGUgZGlzdHJpYnV0aW9uIGFyY2hpdmUiKSwKKyAgICAgICAgICAgICAgICAgICAgKCdkaXN0LWRpcj0nLCAnZCcsCisgICAgICAgICAgICAgICAgICAgICAiZGlyZWN0b3J5IHRvIHB1dCBmaW5hbCBidWlsdCBkaXN0cmlidXRpb25zIGluIiksCisgICAgICAgICAgICAgICAgICAgICgnc2tpcC1idWlsZCcsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAic2tpcCByZWJ1aWxkaW5nIGV2ZXJ5dGhpbmcgKGZvciB0ZXN0aW5nL2RlYnVnZ2luZykiKSwKKyAgICAgICAgICAgICAgICAgICAgKCdyZWxhdGl2ZScsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAiYnVpbGQgdGhlIGFyY2hpdmUgdXNpbmcgcmVsYXRpdmUgcGF0aHMiCisgICAgICAgICAgICAgICAgICAgICAiKGRlZmF1bHQ6IGZhbHNlKSIpLAorICAgICAgICAgICAgICAgICAgICAoJ293bmVyPScsICd1JywKKyAgICAgICAgICAgICAgICAgICAgICJPd25lciBuYW1lIHVzZWQgd2hlbiBjcmVhdGluZyBhIHRhciBmaWxlIgorICAgICAgICAgICAgICAgICAgICAgIiBbZGVmYXVsdDogY3VycmVudCB1c2VyXSIpLAorICAgICAgICAgICAgICAgICAgICAoJ2dyb3VwPScsICdnJywKKyAgICAgICAgICAgICAgICAgICAgICJHcm91cCBuYW1lIHVzZWQgd2hlbiBjcmVhdGluZyBhIHRhciBmaWxlIgorICAgICAgICAgICAgICAgICAgICAgIiBbZGVmYXVsdDogY3VycmVudCBncm91cF0iKSwKKyAgICAgICAgICAgICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2tlZXAtdGVtcCcsICdza2lwLWJ1aWxkJywgJ3JlbGF0aXZlJ10KKworICAgIGRlZmF1bHRfZm9ybWF0ID0geydwb3NpeCc6ICdnenRhcicsCisgICAgICAgICAgICAgICAgICAgICAgJ250JzogJ3ppcCcsCisgICAgICAgICAgICAgICAgICAgICAgJ29zMic6ICd6aXAnfQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5iZGlzdF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYucGxhdF9uYW1lID0gTm9uZQorICAgICAgICBzZWxmLmZvcm1hdCA9IE5vbmUKKyAgICAgICAgc2VsZi5rZWVwX3RlbXAgPSBGYWxzZQorICAgICAgICBzZWxmLmRpc3RfZGlyID0gTm9uZQorICAgICAgICBzZWxmLnNraXBfYnVpbGQgPSBOb25lCisgICAgICAgIHNlbGYucmVsYXRpdmUgPSBGYWxzZQorICAgICAgICBzZWxmLm93bmVyID0gTm9uZQorICAgICAgICBzZWxmLmdyb3VwID0gTm9uZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGlmIHNlbGYuYmRpc3RfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBiZGlzdF9iYXNlID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2JkaXN0JykuYmRpc3RfYmFzZQorICAgICAgICAgICAgc2VsZi5iZGlzdF9kaXIgPSBvcy5wYXRoLmpvaW4oYmRpc3RfYmFzZSwgJ2R1bWInKQorCisgICAgICAgIGlmIHNlbGYuZm9ybWF0IGlzIE5vbmU6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5mb3JtYXQgPSBzZWxmLmRlZmF1bHRfZm9ybWF0W29zLm5hbWVdCisgICAgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigKKyAgICAgICAgICAgICAgICAgICAgImRvbid0IGtub3cgaG93IHRvIGNyZWF0ZSBkdW1iIGJ1aWx0IGRpc3RyaWJ1dGlvbnMgIgorICAgICAgICAgICAgICAgICAgICAib24gcGxhdGZvcm0gJXMiICUgb3MubmFtZSkKKworICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnYmRpc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGlzdF9kaXInLCAncGxhdF9uYW1lJywgJ3NraXBfYnVpbGQnKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuc2tpcF9idWlsZDoKKyAgICAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQoJ2J1aWxkJykKKworICAgICAgICBpbnN0YWxsID0gc2VsZi5yZWluaXRpYWxpemVfY29tbWFuZCgnaW5zdGFsbF9kaXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVpbml0X3N1YmNvbW1hbmRzPVRydWUpCisgICAgICAgIGluc3RhbGwucm9vdCA9IHNlbGYuYmRpc3RfZGlyCisgICAgICAgIGluc3RhbGwuc2tpcF9idWlsZCA9IHNlbGYuc2tpcF9idWlsZAorICAgICAgICBpbnN0YWxsLndhcm5fZGlyID0gRmFsc2UKKworICAgICAgICBsb2dnZXIuaW5mbygiaW5zdGFsbGluZyB0byAlcyIsIHNlbGYuYmRpc3RfZGlyKQorICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKCdpbnN0YWxsX2Rpc3QnKQorCisgICAgICAgICMgQW5kIG1ha2UgYW4gYXJjaGl2ZSByZWxhdGl2ZSB0byB0aGUgcm9vdCBvZiB0aGUKKyAgICAgICAgIyBwc2V1ZG8taW5zdGFsbGF0aW9uIHRyZWUuCisgICAgICAgIGFyY2hpdmVfYmFzZW5hbWUgPSAiJXMuJXMiICUgKHNlbGYuZGlzdHJpYnV0aW9uLmdldF9mdWxsbmFtZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnBsYXRfbmFtZSkKKworICAgICAgICAjIE9TLzIgb2JqZWN0cyB0byBhbnkgIjoiIGNoYXJhY3RlcnMgaW4gYSBmaWxlbmFtZSAoc3VjaCBhcyB3aGVuCisgICAgICAgICMgYSB0aW1lc3RhbXAgaXMgdXNlZCBpbiBhIHZlcnNpb24pIHNvIGNoYW5nZSB0aGVtIHRvIGh5cGhlbnMuCisgICAgICAgIGlmIG9zLm5hbWUgPT0gIm9zMiI6CisgICAgICAgICAgICBhcmNoaXZlX2Jhc2VuYW1lID0gYXJjaGl2ZV9iYXNlbmFtZS5yZXBsYWNlKCI6IiwgIi0iKQorCisgICAgICAgIHBzZXVkb2luc3RhbGxfcm9vdCA9IG9zLnBhdGguam9pbihzZWxmLmRpc3RfZGlyLCBhcmNoaXZlX2Jhc2VuYW1lKQorICAgICAgICBpZiBub3Qgc2VsZi5yZWxhdGl2ZToKKyAgICAgICAgICAgIGFyY2hpdmVfcm9vdCA9IHNlbGYuYmRpc3RfZGlyCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiAoc2VsZi5kaXN0cmlidXRpb24uaGFzX2V4dF9tb2R1bGVzKCkgYW5kCisgICAgICAgICAgICAgICAgKGluc3RhbGwuaW5zdGFsbF9iYXNlICE9IGluc3RhbGwuaW5zdGFsbF9wbGF0YmFzZSkpOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICJjYW4ndCBtYWtlIGEgZHVtYiBidWlsdCBkaXN0cmlidXRpb24gd2hlcmUgYmFzZSBhbmQgIgorICAgICAgICAgICAgICAgICAgICAicGxhdGJhc2UgYXJlIGRpZmZlcmVudCAoJXIsICVyKSIgJQorICAgICAgICAgICAgICAgICAgICAoaW5zdGFsbC5pbnN0YWxsX2Jhc2UsIGluc3RhbGwuaW5zdGFsbF9wbGF0YmFzZSkpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGFyY2hpdmVfcm9vdCA9IG9zLnBhdGguam9pbigKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5iZGlzdF9kaXIsCisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2Vuc3VyZV9yZWxhdGl2ZShpbnN0YWxsLmluc3RhbGxfYmFzZSkpCisKKyAgICAgICAgIyBNYWtlIHRoZSBhcmNoaXZlCisgICAgICAgIGZpbGVuYW1lID0gc2VsZi5tYWtlX2FyY2hpdmUocHNldWRvaW5zdGFsbF9yb290LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZm9ybWF0LCByb290X2Rpcj1hcmNoaXZlX3Jvb3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3duZXI9c2VsZi5vd25lciwgZ3JvdXA9c2VsZi5ncm91cCkKKyAgICAgICAgaWYgc2VsZi5kaXN0cmlidXRpb24uaGFzX2V4dF9tb2R1bGVzKCk6CisgICAgICAgICAgICBweXZlcnNpb24gPSBnZXRfcHl0aG9uX3ZlcnNpb24oKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcHl2ZXJzaW9uID0gJ2FueScKKyAgICAgICAgc2VsZi5kaXN0cmlidXRpb24uZGlzdF9maWxlcy5hcHBlbmQoKCdiZGlzdF9kdW1iJywgcHl2ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWUpKQorCisgICAgICAgIGlmIG5vdCBzZWxmLmtlZXBfdGVtcDoKKyAgICAgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygncmVtb3ZpbmcgJXMnLCBzZWxmLmJkaXN0X2RpcikKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcm10cmVlKHNlbGYuYmRpc3RfZGlyKQorCisgICAgZGVmIF9lbnN1cmVfcmVsYXRpdmUoc2VsZiwgcGF0aCk6CisgICAgICAgICMgY29waWVkIGZyb20gZGlyX3V0aWwsIGRlbGV0ZWQKKyAgICAgICAgZHJpdmUsIHBhdGggPSBvcy5wYXRoLnNwbGl0ZHJpdmUocGF0aCkKKyAgICAgICAgaWYgcGF0aFswOjFdID09IG9zLnNlcDoKKyAgICAgICAgICAgIHBhdGggPSBkcml2ZSArIHBhdGhbMTpdCisgICAgICAgIHJldHVybiBwYXRoCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYmRpc3RfbXNpLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2JkaXN0X21zaS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OTVlZWM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2JkaXN0X21zaS5weQpAQCAtMCwwICsxLDc0MyBAQAorIiIiQ3JlYXRlIGEgTWljcm9zb2Z0IEluc3RhbGxlciAoLm1zaSkgYmluYXJ5IGRpc3RyaWJ1dGlvbi4iIiIKKworIyBDb3B5cmlnaHQgKEMpIDIwMDUsIDIwMDYgTWFydGluIHZvbiBMw7Z3aXMKKyMgTGljZW5zZWQgdG8gUFNGIHVuZGVyIGEgQ29udHJpYnV0b3IgQWdyZWVtZW50LgorCitpbXBvcnQgc3lzCitpbXBvcnQgb3MKK2ltcG9ydCBtc2lsaWIKKworZnJvbSBzaHV0aWwgaW1wb3J0IHJtdHJlZQorZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9weXRob25fdmVyc2lvbgorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLnZlcnNpb24gaW1wb3J0IE5vcm1hbGl6ZWRWZXJzaW9uCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyIGFzIGxvZworZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgZ2V0X3BsYXRmb3JtCitmcm9tIG1zaWxpYiBpbXBvcnQgc2NoZW1hLCBzZXF1ZW5jZSwgdGV4dAorZnJvbSBtc2lsaWIgaW1wb3J0IERpcmVjdG9yeSwgRmVhdHVyZSwgRGlhbG9nLCBhZGRfZGF0YQorCitjbGFzcyBNU0lWZXJzaW9uKE5vcm1hbGl6ZWRWZXJzaW9uKToKKyAgICAiIiIKKyAgICBNU0kgUHJvZHVjdFZlcnNpb24gbXVzdCBiZSBzdHJpY3RseSBudW1lcmljLgorICAgIE1TSVZlcnNpb24gZGlzYWxsb3dzIHByZXJlbGVhc2UgYW5kIHBvc3RyZWxlYXNlIHZlcnNpb25zLgorICAgICIiIgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICBzdXBlcihNU0lWZXJzaW9uLCBzZWxmKS5fX2luaXRfXygqYXJncywgKiprd2FyZ3MpCisgICAgICAgIGlmIG5vdCBzZWxmLmlzX2ZpbmFsOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiUHJvZHVjdFZlcnNpb24gbXVzdCBiZSBzdHJpY3RseSBudW1lcmljIikKKworY2xhc3MgUHlEaWFsb2coRGlhbG9nKToKKyAgICAiIiJEaWFsb2cgY2xhc3Mgd2l0aCBhIGZpeGVkIGxheW91dDogY29udHJvbHMgYXQgdGhlIHRvcCwgdGhlbiBhIHJ1bGVyLAorICAgIHRoZW4gYSBsaXN0IG9mIGJ1dHRvbnM6IGJhY2ssIG5leHQsIGNhbmNlbC4gT3B0aW9uYWxseSBhIGJpdG1hcCBhdCB0aGUKKyAgICBsZWZ0LiIiIgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqYXJncywgKiprdyk6CisgICAgICAgICIiIkRpYWxvZyhkYXRhYmFzZSwgbmFtZSwgeCwgeSwgdywgaCwgYXR0cmlidXRlcywgdGl0bGUsIGZpcnN0LAorICAgICAgICBkZWZhdWx0LCBjYW5jZWwsIGJpdG1hcD10cnVlKSIiIgorICAgICAgICBzdXBlcihQeURpYWxvZywgc2VsZikuX19pbml0X18oKmFyZ3MpCisgICAgICAgIHJ1bGVyID0gc2VsZi5oIC0gMzYKKyAgICAgICAgI2lmIGt3LmdldCgiYml0bWFwIiwgVHJ1ZSk6CisgICAgICAgICMgICAgc2VsZi5iaXRtYXAoIkJpdG1hcCIsIDAsIDAsIGJtd2lkdGgsIHJ1bGVyLCAiUHl0aG9uV2luIikKKyAgICAgICAgc2VsZi5saW5lKCJCb3R0b21MaW5lIiwgMCwgcnVsZXIsIHNlbGYudywgMCkKKworICAgIGRlZiB0aXRsZShzZWxmLCB0aXRsZSk6CisgICAgICAgICJTZXQgdGhlIHRpdGxlIHRleHQgb2YgdGhlIGRpYWxvZyBhdCB0aGUgdG9wLiIKKyAgICAgICAgIyBuYW1lLCB4LCB5LCB3LCBoLCBmbGFncz1WaXNpYmxlfEVuYWJsZWR8VHJhbnNwYXJlbnR8Tm9QcmVmaXgsCisgICAgICAgICMgdGV4dCwgaW4gVmVyZGFuYUJvbGQxMAorICAgICAgICBzZWxmLnRleHQoIlRpdGxlIiwgMTUsIDEwLCAzMjAsIDYwLCAweDMwMDAzLAorICAgICAgICAgICAgICAgICAgciJ7XFZlcmRhbmFCb2xkMTB9JXMiICUgdGl0bGUpCisKKyAgICBkZWYgYmFjayhzZWxmLCB0aXRsZSwgbmV4dCwgbmFtZSA9ICJCYWNrIiwgYWN0aXZlID0gMSk6CisgICAgICAgICIiIkFkZCBhIGJhY2sgYnV0dG9uIHdpdGggYSBnaXZlbiB0aXRsZSwgdGhlIHRhYi1uZXh0IGJ1dHRvbiwKKyAgICAgICAgaXRzIG5hbWUgaW4gdGhlIENvbnRyb2wgdGFibGUsIHBvc3NpYmx5IGluaXRpYWxseSBkaXNhYmxlZC4KKworICAgICAgICBSZXR1cm4gdGhlIGJ1dHRvbiwgc28gdGhhdCBldmVudHMgY2FuIGJlIGFzc29jaWF0ZWQiIiIKKyAgICAgICAgaWYgYWN0aXZlOgorICAgICAgICAgICAgZmxhZ3MgPSAzICMgVmlzaWJsZXxFbmFibGVkCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBmbGFncyA9IDEgIyBWaXNpYmxlCisgICAgICAgIHJldHVybiBzZWxmLnB1c2hidXR0b24obmFtZSwgMTgwLCBzZWxmLmgtMjcgLCA1NiwgMTcsIGZsYWdzLCB0aXRsZSwgbmV4dCkKKworICAgIGRlZiBjYW5jZWwoc2VsZiwgdGl0bGUsIG5leHQsIG5hbWUgPSAiQ2FuY2VsIiwgYWN0aXZlID0gMSk6CisgICAgICAgICIiIkFkZCBhIGNhbmNlbCBidXR0b24gd2l0aCBhIGdpdmVuIHRpdGxlLCB0aGUgdGFiLW5leHQgYnV0dG9uLAorICAgICAgICBpdHMgbmFtZSBpbiB0aGUgQ29udHJvbCB0YWJsZSwgcG9zc2libHkgaW5pdGlhbGx5IGRpc2FibGVkLgorCisgICAgICAgIFJldHVybiB0aGUgYnV0dG9uLCBzbyB0aGF0IGV2ZW50cyBjYW4gYmUgYXNzb2NpYXRlZCIiIgorICAgICAgICBpZiBhY3RpdmU6CisgICAgICAgICAgICBmbGFncyA9IDMgIyBWaXNpYmxlfEVuYWJsZWQKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGZsYWdzID0gMSAjIFZpc2libGUKKyAgICAgICAgcmV0dXJuIHNlbGYucHVzaGJ1dHRvbihuYW1lLCAzMDQsIHNlbGYuaC0yNywgNTYsIDE3LCBmbGFncywgdGl0bGUsIG5leHQpCisKKyAgICBkZWYgbmV4dChzZWxmLCB0aXRsZSwgbmV4dCwgbmFtZSA9ICJOZXh0IiwgYWN0aXZlID0gMSk6CisgICAgICAgICIiIkFkZCBhIE5leHQgYnV0dG9uIHdpdGggYSBnaXZlbiB0aXRsZSwgdGhlIHRhYi1uZXh0IGJ1dHRvbiwKKyAgICAgICAgaXRzIG5hbWUgaW4gdGhlIENvbnRyb2wgdGFibGUsIHBvc3NpYmx5IGluaXRpYWxseSBkaXNhYmxlZC4KKworICAgICAgICBSZXR1cm4gdGhlIGJ1dHRvbiwgc28gdGhhdCBldmVudHMgY2FuIGJlIGFzc29jaWF0ZWQiIiIKKyAgICAgICAgaWYgYWN0aXZlOgorICAgICAgICAgICAgZmxhZ3MgPSAzICMgVmlzaWJsZXxFbmFibGVkCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBmbGFncyA9IDEgIyBWaXNpYmxlCisgICAgICAgIHJldHVybiBzZWxmLnB1c2hidXR0b24obmFtZSwgMjM2LCBzZWxmLmgtMjcsIDU2LCAxNywgZmxhZ3MsIHRpdGxlLCBuZXh0KQorCisgICAgZGVmIHhidXR0b24oc2VsZiwgbmFtZSwgdGl0bGUsIG5leHQsIHhwb3MpOgorICAgICAgICAiIiJBZGQgYSBidXR0b24gd2l0aCBhIGdpdmVuIHRpdGxlLCB0aGUgdGFiLW5leHQgYnV0dG9uLAorICAgICAgICBpdHMgbmFtZSBpbiB0aGUgQ29udHJvbCB0YWJsZSwgZ2l2aW5nIGl0cyB4IHBvc2l0aW9uOyB0aGUKKyAgICAgICAgeS1wb3NpdGlvbiBpcyBhbGlnbmVkIHdpdGggdGhlIG90aGVyIGJ1dHRvbnMuCisKKyAgICAgICAgUmV0dXJuIHRoZSBidXR0b24sIHNvIHRoYXQgZXZlbnRzIGNhbiBiZSBhc3NvY2lhdGVkIiIiCisgICAgICAgIHJldHVybiBzZWxmLnB1c2hidXR0b24obmFtZSwgaW50KHNlbGYudyp4cG9zIC0gMjgpLCBzZWxmLmgtMjcsIDU2LCAxNywgMywgdGl0bGUsIG5leHQpCisKK2NsYXNzIGJkaXN0X21zaShDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gImNyZWF0ZSBhIE1pY3Jvc29mdCBJbnN0YWxsZXIgKC5tc2kpIGJpbmFyeSBkaXN0cmlidXRpb24iCisKKyAgICB1c2VyX29wdGlvbnMgPSBbKCdiZGlzdC1kaXI9JywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJ0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvciBjcmVhdGluZyB0aGUgZGlzdHJpYnV0aW9uIiksCisgICAgICAgICAgICAgICAgICAgICgncGxhdC1uYW1lPScsICdwJywKKyAgICAgICAgICAgICAgICAgICAgICJwbGF0Zm9ybSBuYW1lIHRvIGVtYmVkIGluIGdlbmVyYXRlZCBmaWxlbmFtZXMgIgorICAgICAgICAgICAgICAgICAgICAgIihkZWZhdWx0OiAlcykiICUgZ2V0X3BsYXRmb3JtKCkpLAorICAgICAgICAgICAgICAgICAgICAoJ2tlZXAtdGVtcCcsICdrJywKKyAgICAgICAgICAgICAgICAgICAgICJrZWVwIHRoZSBwc2V1ZG8taW5zdGFsbGF0aW9uIHRyZWUgYXJvdW5kIGFmdGVyICIgKworICAgICAgICAgICAgICAgICAgICAgImNyZWF0aW5nIHRoZSBkaXN0cmlidXRpb24gYXJjaGl2ZSIpLAorICAgICAgICAgICAgICAgICAgICAoJ3RhcmdldC12ZXJzaW9uPScsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAicmVxdWlyZSBhIHNwZWNpZmljIHB5dGhvbiB2ZXJzaW9uIiArCisgICAgICAgICAgICAgICAgICAgICAiIG9uIHRoZSB0YXJnZXQgc3lzdGVtIiksCisgICAgICAgICAgICAgICAgICAgICgnbm8tdGFyZ2V0LWNvbXBpbGUnLCAnYycsCisgICAgICAgICAgICAgICAgICAgICAiZG8gbm90IGNvbXBpbGUgLnB5IHRvIC5weWMgb24gdGhlIHRhcmdldCBzeXN0ZW0iKSwKKyAgICAgICAgICAgICAgICAgICAgKCduby10YXJnZXQtb3B0aW1pemUnLCAnbycsCisgICAgICAgICAgICAgICAgICAgICAiZG8gbm90IGNvbXBpbGUgLnB5IHRvIC5weW8gKG9wdGltaXplZCkiCisgICAgICAgICAgICAgICAgICAgICAib24gdGhlIHRhcmdldCBzeXN0ZW0iKSwKKyAgICAgICAgICAgICAgICAgICAgKCdkaXN0LWRpcj0nLCAnZCcsCisgICAgICAgICAgICAgICAgICAgICAiZGlyZWN0b3J5IHRvIHB1dCBmaW5hbCBidWlsdCBkaXN0cmlidXRpb25zIGluIiksCisgICAgICAgICAgICAgICAgICAgICgnc2tpcC1idWlsZCcsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAic2tpcCByZWJ1aWxkaW5nIGV2ZXJ5dGhpbmcgKGZvciB0ZXN0aW5nL2RlYnVnZ2luZykiKSwKKyAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsLXNjcmlwdD0nLCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgImJhc2VuYW1lIG9mIGluc3RhbGxhdGlvbiBzY3JpcHQgdG8gYmUgcnVuIGFmdGVyIgorICAgICAgICAgICAgICAgICAgICAgImluc3RhbGxhdGlvbiBvciBiZWZvcmUgZGVpbnN0YWxsYXRpb24iKSwKKyAgICAgICAgICAgICAgICAgICAgKCdwcmUtaW5zdGFsbC1zY3JpcHQ9JywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJGdWxseSBxdWFsaWZpZWQgZmlsZW5hbWUgb2YgYSBzY3JpcHQgdG8gYmUgcnVuIGJlZm9yZSAiCisgICAgICAgICAgICAgICAgICAgICAiYW55IGZpbGVzIGFyZSBpbnN0YWxsZWQuICBUaGlzIHNjcmlwdCBuZWVkIG5vdCBiZSBpbiB0aGUgIgorICAgICAgICAgICAgICAgICAgICAgImRpc3RyaWJ1dGlvbiIpLAorICAgICAgICAgICAgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsna2VlcC10ZW1wJywgJ25vLXRhcmdldC1jb21waWxlJywgJ25vLXRhcmdldC1vcHRpbWl6ZScsCisgICAgICAgICAgICAgICAgICAgICAgICdza2lwLWJ1aWxkJ10KKworICAgIGFsbF92ZXJzaW9ucyA9IFsnMi4wJywgJzIuMScsICcyLjInLCAnMi4zJywgJzIuNCcsCisgICAgICAgICAgICAgICAgICAgICcyLjUnLCAnMi42JywgJzIuNycsICcyLjgnLCAnMi45JywKKyAgICAgICAgICAgICAgICAgICAgJzMuMCcsICczLjEnLCAnMy4yJywgJzMuMycsICczLjQnLAorICAgICAgICAgICAgICAgICAgICAnMy41JywgJzMuNicsICczLjcnLCAnMy44JywgJzMuOSddCisgICAgb3RoZXJfdmVyc2lvbiA9ICdYJworCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5iZGlzdF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYucGxhdF9uYW1lID0gTm9uZQorICAgICAgICBzZWxmLmtlZXBfdGVtcCA9IEZhbHNlCisgICAgICAgIHNlbGYubm9fdGFyZ2V0X2NvbXBpbGUgPSBGYWxzZQorICAgICAgICBzZWxmLm5vX3RhcmdldF9vcHRpbWl6ZSA9IEZhbHNlCisgICAgICAgIHNlbGYudGFyZ2V0X3ZlcnNpb24gPSBOb25lCisgICAgICAgIHNlbGYuZGlzdF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYuc2tpcF9idWlsZCA9IE5vbmUKKyAgICAgICAgc2VsZi5pbnN0YWxsX3NjcmlwdCA9IE5vbmUKKyAgICAgICAgc2VsZi5wcmVfaW5zdGFsbF9zY3JpcHQgPSBOb25lCisgICAgICAgIHNlbGYudmVyc2lvbnMgPSBOb25lCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2JkaXN0JywgJ3NraXBfYnVpbGQnKQorCisgICAgICAgIGlmIHNlbGYuYmRpc3RfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBiZGlzdF9iYXNlID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2JkaXN0JykuYmRpc3RfYmFzZQorICAgICAgICAgICAgc2VsZi5iZGlzdF9kaXIgPSBvcy5wYXRoLmpvaW4oYmRpc3RfYmFzZSwgJ21zaScpCisKKyAgICAgICAgc2hvcnRfdmVyc2lvbiA9IGdldF9weXRob25fdmVyc2lvbigpCisgICAgICAgIGlmIChub3Qgc2VsZi50YXJnZXRfdmVyc2lvbikgYW5kIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19leHRfbW9kdWxlcygpOgorICAgICAgICAgICAgc2VsZi50YXJnZXRfdmVyc2lvbiA9IHNob3J0X3ZlcnNpb24KKworICAgICAgICBpZiBzZWxmLnRhcmdldF92ZXJzaW9uOgorICAgICAgICAgICAgc2VsZi52ZXJzaW9ucyA9IFtzZWxmLnRhcmdldF92ZXJzaW9uXQorICAgICAgICAgICAgaWYgbm90IHNlbGYuc2tpcF9idWlsZCBhbmQgc2VsZi5kaXN0cmlidXRpb24uaGFzX2V4dF9tb2R1bGVzKClcCisgICAgICAgICAgICAgICBhbmQgc2VsZi50YXJnZXRfdmVyc2lvbiAhPSBzaG9ydF92ZXJzaW9uOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKCJ0YXJnZXQgdmVyc2lvbiBjYW4gb25seSBiZSAlcywgb3IgdGhlICctLXNraXAtYnVpbGQnIiBcCisgICAgICAgICAgICAgICAgICAgICAgIiBvcHRpb24gbXVzdCBiZSBzcGVjaWZpZWQiICUgKHNob3J0X3ZlcnNpb24sKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYudmVyc2lvbnMgPSBsaXN0KHNlbGYuYWxsX3ZlcnNpb25zKQorCisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdiZGlzdCcsICdkaXN0X2RpcicsICdwbGF0X25hbWUnKQorCisgICAgICAgIGlmIHNlbGYucHJlX2luc3RhbGxfc2NyaXB0OgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoInRoZSBwcmUtaW5zdGFsbC1zY3JpcHQgZmVhdHVyZSBpcyBub3QgeWV0IGltcGxlbWVudGVkIikKKworICAgICAgICBpZiBzZWxmLmluc3RhbGxfc2NyaXB0OgorICAgICAgICAgICAgZm9yIHNjcmlwdCBpbiBzZWxmLmRpc3RyaWJ1dGlvbi5zY3JpcHRzOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuaW5zdGFsbF9zY3JpcHQgPT0gb3MucGF0aC5iYXNlbmFtZShzY3JpcHQpOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigiaW5zdGFsbF9zY3JpcHQgJyVzJyBub3QgZm91bmQgaW4gc2NyaXB0cyIgJSBcCisgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbnN0YWxsX3NjcmlwdCkKKyAgICAgICAgc2VsZi5pbnN0YWxsX3NjcmlwdF9rZXkgPSBOb25lCisKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLnNraXBfYnVpbGQ6CisgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKCdidWlsZCcpCisKKyAgICAgICAgaW5zdGFsbCA9IHNlbGYucmVpbml0aWFsaXplX2NvbW1hbmQoJ2luc3RhbGxfZGlzdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlaW5pdF9zdWJjb21tYW5kcz1UcnVlKQorICAgICAgICBpbnN0YWxsLnByZWZpeCA9IHNlbGYuYmRpc3RfZGlyCisgICAgICAgIGluc3RhbGwuc2tpcF9idWlsZCA9IHNlbGYuc2tpcF9idWlsZAorICAgICAgICBpbnN0YWxsLndhcm5fZGlyID0gRmFsc2UKKworICAgICAgICBpbnN0YWxsX2xpYiA9IHNlbGYucmVpbml0aWFsaXplX2NvbW1hbmQoJ2luc3RhbGxfbGliJykKKyAgICAgICAgIyB3ZSBkbyBub3Qgd2FudCB0byBpbmNsdWRlIHB5YyBvciBweW8gZmlsZXMKKyAgICAgICAgaW5zdGFsbF9saWIuY29tcGlsZSA9IEZhbHNlCisgICAgICAgIGluc3RhbGxfbGliLm9wdGltaXplID0gMAorCisgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19leHRfbW9kdWxlcygpOgorICAgICAgICAgICAgIyBJZiB3ZSBhcmUgYnVpbGRpbmcgYW4gaW5zdGFsbGVyIGZvciBhIFB5dGhvbiB2ZXJzaW9uIG90aGVyCisgICAgICAgICAgICAjIHRoYW4gdGhlIG9uZSB3ZSBhcmUgY3VycmVudGx5IHJ1bm5pbmcsIHRoZW4gd2UgbmVlZCB0byBlbnN1cmUKKyAgICAgICAgICAgICMgb3VyIGJ1aWxkX2xpYiByZWZsZWN0cyB0aGUgb3RoZXIgUHl0aG9uIHZlcnNpb24gcmF0aGVyIHRoYW4gb3Vycy4KKyAgICAgICAgICAgICMgTm90ZSB0aGF0IGZvciB0YXJnZXRfdmVyc2lvbiE9c3lzLnZlcnNpb24sIHdlIG11c3QgaGF2ZSBza2lwcGVkIHRoZQorICAgICAgICAgICAgIyBidWlsZCBzdGVwLCBzbyB0aGVyZSBpcyBubyBpc3N1ZSB3aXRoIGVuZm9yY2luZyB0aGUgYnVpbGQgb2YgdGhpcworICAgICAgICAgICAgIyB2ZXJzaW9uLgorICAgICAgICAgICAgdGFyZ2V0X3ZlcnNpb24gPSBzZWxmLnRhcmdldF92ZXJzaW9uCisgICAgICAgICAgICBpZiBub3QgdGFyZ2V0X3ZlcnNpb246CisgICAgICAgICAgICAgICAgYXNzZXJ0IHNlbGYuc2tpcF9idWlsZCwgIlNob3VsZCBoYXZlIGFscmVhZHkgY2hlY2tlZCB0aGlzIgorICAgICAgICAgICAgICAgIHRhcmdldF92ZXJzaW9uID0gJyVzLiVzJyAlIHN5cy52ZXJzaW9uX2luZm9bOjJdCisgICAgICAgICAgICBwbGF0X3NwZWNpZmllciA9ICIuJXMtJXMiICUgKHNlbGYucGxhdF9uYW1lLCB0YXJnZXRfdmVyc2lvbikKKyAgICAgICAgICAgIGJ1aWxkID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2J1aWxkJykKKyAgICAgICAgICAgIGJ1aWxkLmJ1aWxkX2xpYiA9IG9zLnBhdGguam9pbihidWlsZC5idWlsZF9iYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsaWInICsgcGxhdF9zcGVjaWZpZXIpCisKKyAgICAgICAgbG9nLmluZm8oImluc3RhbGxpbmcgdG8gJXMiLCBzZWxmLmJkaXN0X2RpcikKKyAgICAgICAgaW5zdGFsbC5lbnN1cmVfZmluYWxpemVkKCkKKworICAgICAgICAjIGF2b2lkIHdhcm5pbmcgb2YgJ2luc3RhbGxfbGliJyBhYm91dCBpbnN0YWxsaW5nCisgICAgICAgICMgaW50byBhIGRpcmVjdG9yeSBub3QgaW4gc3lzLnBhdGgKKyAgICAgICAgc3lzLnBhdGguaW5zZXJ0KDAsIG9zLnBhdGguam9pbihzZWxmLmJkaXN0X2RpciwgJ1BVUkVMSUInKSkKKworICAgICAgICBpbnN0YWxsLnJ1bigpCisKKyAgICAgICAgZGVsIHN5cy5wYXRoWzBdCisKKyAgICAgICAgc2VsZi5ta3BhdGgoc2VsZi5kaXN0X2RpcikKKyAgICAgICAgZnVsbG5hbWUgPSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfZnVsbG5hbWUoKQorICAgICAgICBpbnN0YWxsZXJfbmFtZSA9IHNlbGYuZ2V0X2luc3RhbGxlcl9maWxlbmFtZShmdWxsbmFtZSkKKyAgICAgICAgaW5zdGFsbGVyX25hbWUgPSBvcy5wYXRoLmFic3BhdGgoaW5zdGFsbGVyX25hbWUpCisgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGluc3RhbGxlcl9uYW1lKTogb3MudW5saW5rKGluc3RhbGxlcl9uYW1lKQorCisgICAgICAgIG1ldGFkYXRhID0gc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGEKKyAgICAgICAgYXV0aG9yID0gbWV0YWRhdGEuYXV0aG9yCisgICAgICAgIGlmIG5vdCBhdXRob3I6CisgICAgICAgICAgICBhdXRob3IgPSBtZXRhZGF0YS5tYWludGFpbmVyCisgICAgICAgIGlmIG5vdCBhdXRob3I6CisgICAgICAgICAgICBhdXRob3IgPSAiVU5LTk9XTiIKKyAgICAgICAgdmVyc2lvbiA9IE1TSVZlcnNpb24obWV0YWRhdGEuZ2V0X3ZlcnNpb24oKSkKKyAgICAgICAgIyBQcmVmaXggUHJvZHVjdE5hbWUgd2l0aCBQeXRob24geC55LCBzbyB0aGF0CisgICAgICAgICMgaXQgc29ydHMgdG9nZXRoZXIgd2l0aCB0aGUgb3RoZXIgUHl0aG9uIHBhY2thZ2VzCisgICAgICAgICMgaW4gQWRkLVJlbW92ZS1Qcm9ncmFtcyAoQVBSKQorICAgICAgICBmdWxsbmFtZSA9IHNlbGYuZGlzdHJpYnV0aW9uLmdldF9mdWxsbmFtZSgpCisgICAgICAgIGlmIHNlbGYudGFyZ2V0X3ZlcnNpb246CisgICAgICAgICAgICBwcm9kdWN0X25hbWUgPSAiUHl0aG9uICVzICVzIiAlIChzZWxmLnRhcmdldF92ZXJzaW9uLCBmdWxsbmFtZSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHByb2R1Y3RfbmFtZSA9ICJQeXRob24gJXMiICUgKGZ1bGxuYW1lKQorICAgICAgICBzZWxmLmRiID0gbXNpbGliLmluaXRfZGF0YWJhc2UoaW5zdGFsbGVyX25hbWUsIHNjaGVtYSwKKyAgICAgICAgICAgICAgICBwcm9kdWN0X25hbWUsIG1zaWxpYi5nZW5fdXVpZCgpLAorICAgICAgICAgICAgICAgIHN0cih2ZXJzaW9uKSwgYXV0aG9yKQorICAgICAgICBtc2lsaWIuYWRkX3RhYmxlcyhzZWxmLmRiLCBzZXF1ZW5jZSkKKyAgICAgICAgcHJvcHMgPSBbKCdEaXN0VmVyc2lvbicsIHZlcnNpb24pXQorICAgICAgICBlbWFpbCA9IG1ldGFkYXRhLmF1dGhvcl9lbWFpbCBvciBtZXRhZGF0YS5tYWludGFpbmVyX2VtYWlsCisgICAgICAgIGlmIGVtYWlsOgorICAgICAgICAgICAgcHJvcHMuYXBwZW5kKCgiQVJQQ09OVEFDVCIsIGVtYWlsKSkKKyAgICAgICAgaWYgbWV0YWRhdGEudXJsOgorICAgICAgICAgICAgcHJvcHMuYXBwZW5kKCgiQVJQVVJMSU5GT0FCT1VUIiwgbWV0YWRhdGEudXJsKSkKKyAgICAgICAgaWYgcHJvcHM6CisgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAnUHJvcGVydHknLCBwcm9wcykKKworICAgICAgICBzZWxmLmFkZF9maW5kX3B5dGhvbigpCisgICAgICAgIHNlbGYuYWRkX2ZpbGVzKCkKKyAgICAgICAgc2VsZi5hZGRfc2NyaXB0cygpCisgICAgICAgIHNlbGYuYWRkX3VpKCkKKyAgICAgICAgc2VsZi5kYi5Db21taXQoKQorCisgICAgICAgIGlmIGhhc2F0dHIoc2VsZi5kaXN0cmlidXRpb24sICdkaXN0X2ZpbGVzJyk6CisgICAgICAgICAgICB0dXAgPSAnYmRpc3RfbXNpJywgc2VsZi50YXJnZXRfdmVyc2lvbiBvciAnYW55JywgZnVsbG5hbWUKKyAgICAgICAgICAgIHNlbGYuZGlzdHJpYnV0aW9uLmRpc3RfZmlsZXMuYXBwZW5kKHR1cCkKKworICAgICAgICBpZiBub3Qgc2VsZi5rZWVwX3RlbXA6CisgICAgICAgICAgICBsb2cuaW5mbygicmVtb3ZpbmcgdGVtcG9yYXJ5IGJ1aWxkIGRpcmVjdG9yeSAlcyIsIHNlbGYuYmRpc3RfZGlyKQorICAgICAgICAgICAgaWYgbm90IHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICBybXRyZWUoc2VsZi5iZGlzdF9kaXIpCisKKyAgICBkZWYgYWRkX2ZpbGVzKHNlbGYpOgorICAgICAgICBkYiA9IHNlbGYuZGIKKyAgICAgICAgY2FiID0gbXNpbGliLkNBQigiZGlzdGZpbGVzIikKKyAgICAgICAgcm9vdGRpciA9IG9zLnBhdGguYWJzcGF0aChzZWxmLmJkaXN0X2RpcikKKworICAgICAgICByb290ID0gRGlyZWN0b3J5KGRiLCBjYWIsIE5vbmUsIHJvb3RkaXIsICJUQVJHRVRESVIiLCAiU291cmNlRGlyIikKKyAgICAgICAgZiA9IEZlYXR1cmUoZGIsICJQeXRob24iLCAiUHl0aG9uIiwgIkV2ZXJ5dGhpbmciLAorICAgICAgICAgICAgICAgICAgICAwLCAxLCBkaXJlY3Rvcnk9IlRBUkdFVERJUiIpCisKKyAgICAgICAgaXRlbXMgPSBbKGYsIHJvb3QsICcnKV0KKyAgICAgICAgZm9yIHZlcnNpb24gaW4gc2VsZi52ZXJzaW9ucyArIFtzZWxmLm90aGVyX3ZlcnNpb25dOgorICAgICAgICAgICAgdGFyZ2V0ID0gIlRBUkdFVERJUiIgKyB2ZXJzaW9uCisgICAgICAgICAgICBuYW1lID0gZGVmYXVsdCA9ICJQeXRob24iICsgdmVyc2lvbgorICAgICAgICAgICAgZGVzYyA9ICJFdmVyeXRoaW5nIgorICAgICAgICAgICAgaWYgdmVyc2lvbiBpcyBzZWxmLm90aGVyX3ZlcnNpb246CisgICAgICAgICAgICAgICAgdGl0bGUgPSAiUHl0aG9uIGZyb20gYW5vdGhlciBsb2NhdGlvbiIKKyAgICAgICAgICAgICAgICBsZXZlbCA9IDIKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgdGl0bGUgPSAiUHl0aG9uICVzIGZyb20gcmVnaXN0cnkiICUgdmVyc2lvbgorICAgICAgICAgICAgICAgIGxldmVsID0gMQorICAgICAgICAgICAgZiA9IEZlYXR1cmUoZGIsIG5hbWUsIHRpdGxlLCBkZXNjLCAxLCBsZXZlbCwgZGlyZWN0b3J5PXRhcmdldCkKKyAgICAgICAgICAgIGRpciA9IERpcmVjdG9yeShkYiwgY2FiLCByb290LCByb290ZGlyLCB0YXJnZXQsIGRlZmF1bHQpCisgICAgICAgICAgICBpdGVtcy5hcHBlbmQoKGYsIGRpciwgdmVyc2lvbikpCisgICAgICAgIGRiLkNvbW1pdCgpCisKKyAgICAgICAgc2VlbiA9IHt9CisgICAgICAgIGZvciBmZWF0dXJlLCBkaXIsIHZlcnNpb24gaW4gaXRlbXM6CisgICAgICAgICAgICB0b2RvID0gW2Rpcl0KKyAgICAgICAgICAgIHdoaWxlIHRvZG86CisgICAgICAgICAgICAgICAgZGlyID0gdG9kby5wb3AoKQorICAgICAgICAgICAgICAgIGZvciBmaWxlIGluIG9zLmxpc3RkaXIoZGlyLmFic29sdXRlKToKKyAgICAgICAgICAgICAgICAgICAgYWZpbGUgPSBvcy5wYXRoLmpvaW4oZGlyLmFic29sdXRlLCBmaWxlKQorICAgICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKGFmaWxlKToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNob3J0ID0gIiVzfCVzIiAlIChkaXIubWFrZV9zaG9ydChmaWxlKSwgZmlsZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQgPSBmaWxlICsgdmVyc2lvbgorICAgICAgICAgICAgICAgICAgICAgICAgbmV3ZGlyID0gRGlyZWN0b3J5KGRiLCBjYWIsIGRpciwgZmlsZSwgZGVmYXVsdCwgc2hvcnQpCisgICAgICAgICAgICAgICAgICAgICAgICB0b2RvLmFwcGVuZChuZXdkaXIpCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICBpZiBub3QgZGlyLmNvbXBvbmVudDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXIuc3RhcnRfY29tcG9uZW50KGRpci5sb2dpY2FsLCBmZWF0dXJlLCAwKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgYWZpbGUgbm90IGluIHNlZW46CisgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5ID0gc2VlblthZmlsZV0gPSBkaXIuYWRkX2ZpbGUoZmlsZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBmaWxlPT1zZWxmLmluc3RhbGxfc2NyaXB0OgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLmluc3RhbGxfc2NyaXB0X2tleToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk11bHRpcGxlIGZpbGVzIHdpdGggbmFtZSAlcyIgJSBmaWxlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmluc3RhbGxfc2NyaXB0X2tleSA9ICdbIyVzXScgJSBrZXkKKyAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5ID0gc2VlblthZmlsZV0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiRHVwbGljYXRlRmlsZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsoa2V5ICsgdmVyc2lvbiwgZGlyLmNvbXBvbmVudCwga2V5LCBOb25lLCBkaXIubG9naWNhbCldKQorICAgICAgICAgICAgZGIuQ29tbWl0KCkKKyAgICAgICAgY2FiLmNvbW1pdChkYikKKworICAgIGRlZiBhZGRfZmluZF9weXRob24oc2VsZik6CisgICAgICAgICIiIkFkZHMgY29kZSB0byB0aGUgaW5zdGFsbGVyIHRvIGNvbXB1dGUgdGhlIGxvY2F0aW9uIG9mIFB5dGhvbi4KKworICAgICAgICBQcm9wZXJ0aWVzIFBZVEhPTi5NQUNISU5FLlguWSBhbmQgUFlUSE9OLlVTRVIuWC5ZIHdpbGwgYmUgc2V0IGZyb20gdGhlCisgICAgICAgIHJlZ2lzdHJ5IGZvciBlYWNoIHZlcnNpb24gb2YgUHl0aG9uLgorCisgICAgICAgIFByb3BlcnRpZXMgVEFSR0VURElSWC5ZIHdpbGwgYmUgc2V0IGZyb20gUFlUSE9OLlVTRVIuWC5ZIGlmIGRlZmluZWQsCisgICAgICAgIGVsc2UgZnJvbSBQWVRIT04uTUFDSElORS5YLlkuCisKKyAgICAgICAgUHJvcGVydGllcyBQWVRIT05YLlkgd2lsbCBiZSBzZXQgdG8gVEFSR0VURElSWC5ZXFxweXRob24uZXhlIiIiCisKKyAgICAgICAgc3RhcnQgPSA0MDIKKyAgICAgICAgZm9yIHZlciBpbiBzZWxmLnZlcnNpb25zOgorICAgICAgICAgICAgaW5zdGFsbF9wYXRoID0gciJTT0ZUV0FSRVxQeXRob25cUHl0aG9uQ29yZVwlc1xJbnN0YWxsUGF0aCIgJSB2ZXIKKyAgICAgICAgICAgIG1hY2hpbmVfcmVnID0gInB5dGhvbi5tYWNoaW5lLiIgKyB2ZXIKKyAgICAgICAgICAgIHVzZXJfcmVnID0gInB5dGhvbi51c2VyLiIgKyB2ZXIKKyAgICAgICAgICAgIG1hY2hpbmVfcHJvcCA9ICJQWVRIT04uTUFDSElORS4iICsgdmVyCisgICAgICAgICAgICB1c2VyX3Byb3AgPSAiUFlUSE9OLlVTRVIuIiArIHZlcgorICAgICAgICAgICAgbWFjaGluZV9hY3Rpb24gPSAiUHl0aG9uRnJvbU1hY2hpbmUiICsgdmVyCisgICAgICAgICAgICB1c2VyX2FjdGlvbiA9ICJQeXRob25Gcm9tVXNlciIgKyB2ZXIKKyAgICAgICAgICAgIGV4ZV9hY3Rpb24gPSAiUHl0aG9uRXhlIiArIHZlcgorICAgICAgICAgICAgdGFyZ2V0X2Rpcl9wcm9wID0gIlRBUkdFVERJUiIgKyB2ZXIKKyAgICAgICAgICAgIGV4ZV9wcm9wID0gIlBZVEhPTiIgKyB2ZXIKKyAgICAgICAgICAgIGlmIG1zaWxpYi5XaW42NDoKKyAgICAgICAgICAgICAgICAjIHR5cGU6IG1zaWRiTG9jYXRvclR5cGVSYXdWYWx1ZSArIG1zaWRiTG9jYXRvclR5cGU2NGJpdAorICAgICAgICAgICAgICAgIFR5cGUgPSAyKzE2CisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIFR5cGUgPSAyCisgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiUmVnTG9jYXRvciIsCisgICAgICAgICAgICAgICAgICAgIFsobWFjaGluZV9yZWcsIDIsIGluc3RhbGxfcGF0aCwgTm9uZSwgVHlwZSksCisgICAgICAgICAgICAgICAgICAgICAodXNlcl9yZWcsIDEsIGluc3RhbGxfcGF0aCwgTm9uZSwgVHlwZSldKQorICAgICAgICAgICAgYWRkX2RhdGEoc2VsZi5kYiwgIkFwcFNlYXJjaCIsCisgICAgICAgICAgICAgICAgICAgIFsobWFjaGluZV9wcm9wLCBtYWNoaW5lX3JlZyksCisgICAgICAgICAgICAgICAgICAgICAodXNlcl9wcm9wLCB1c2VyX3JlZyldKQorICAgICAgICAgICAgYWRkX2RhdGEoc2VsZi5kYiwgIkN1c3RvbUFjdGlvbiIsCisgICAgICAgICAgICAgICAgICAgIFsobWFjaGluZV9hY3Rpb24sIDUxKzI1NiwgdGFyZ2V0X2Rpcl9wcm9wLCAiWyIgKyBtYWNoaW5lX3Byb3AgKyAiXSIpLAorICAgICAgICAgICAgICAgICAgICAgKHVzZXJfYWN0aW9uLCA1MSsyNTYsIHRhcmdldF9kaXJfcHJvcCwgIlsiICsgdXNlcl9wcm9wICsgIl0iKSwKKyAgICAgICAgICAgICAgICAgICAgIChleGVfYWN0aW9uLCA1MSsyNTYsIGV4ZV9wcm9wLCAiWyIgKyB0YXJnZXRfZGlyX3Byb3AgKyAiXVxccHl0aG9uLmV4ZSIpLAorICAgICAgICAgICAgICAgICAgICBdKQorICAgICAgICAgICAgYWRkX2RhdGEoc2VsZi5kYiwgIkluc3RhbGxFeGVjdXRlU2VxdWVuY2UiLAorICAgICAgICAgICAgICAgICAgICBbKG1hY2hpbmVfYWN0aW9uLCBtYWNoaW5lX3Byb3AsIHN0YXJ0KSwKKyAgICAgICAgICAgICAgICAgICAgICh1c2VyX2FjdGlvbiwgdXNlcl9wcm9wLCBzdGFydCArIDEpLAorICAgICAgICAgICAgICAgICAgICAgKGV4ZV9hY3Rpb24sIE5vbmUsIHN0YXJ0ICsgMiksCisgICAgICAgICAgICAgICAgICAgIF0pCisgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiSW5zdGFsbFVJU2VxdWVuY2UiLAorICAgICAgICAgICAgICAgICAgICBbKG1hY2hpbmVfYWN0aW9uLCBtYWNoaW5lX3Byb3AsIHN0YXJ0KSwKKyAgICAgICAgICAgICAgICAgICAgICh1c2VyX2FjdGlvbiwgdXNlcl9wcm9wLCBzdGFydCArIDEpLAorICAgICAgICAgICAgICAgICAgICAgKGV4ZV9hY3Rpb24sIE5vbmUsIHN0YXJ0ICsgMiksCisgICAgICAgICAgICAgICAgICAgIF0pCisgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiQ29uZGl0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgWygiUHl0aG9uIiArIHZlciwgMCwgIk5PVCBUQVJHRVRESVIiICsgdmVyKV0pCisgICAgICAgICAgICBzdGFydCArPSA0CisgICAgICAgICAgICBhc3NlcnQgc3RhcnQgPCA1MDAKKworICAgIGRlZiBhZGRfc2NyaXB0cyhzZWxmKToKKyAgICAgICAgaWYgc2VsZi5pbnN0YWxsX3NjcmlwdDoKKyAgICAgICAgICAgIHN0YXJ0ID0gNjgwMAorICAgICAgICAgICAgZm9yIHZlciBpbiBzZWxmLnZlcnNpb25zICsgW3NlbGYub3RoZXJfdmVyc2lvbl06CisgICAgICAgICAgICAgICAgaW5zdGFsbF9hY3Rpb24gPSAiaW5zdGFsbF9zY3JpcHQuIiArIHZlcgorICAgICAgICAgICAgICAgIGV4ZV9wcm9wID0gIlBZVEhPTiIgKyB2ZXIKKyAgICAgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiQ3VzdG9tQWN0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIFsoaW5zdGFsbF9hY3Rpb24sIDUwLCBleGVfcHJvcCwgc2VsZi5pbnN0YWxsX3NjcmlwdF9rZXkpXSkKKyAgICAgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiSW5zdGFsbEV4ZWN1dGVTZXF1ZW5jZSIsCisgICAgICAgICAgICAgICAgICAgICAgICBbKGluc3RhbGxfYWN0aW9uLCAiJlB5dGhvbiVzPTMiICUgdmVyLCBzdGFydCldKQorICAgICAgICAgICAgICAgIHN0YXJ0ICs9IDEKKyAgICAgICAgIyBYWFggcHJlLWluc3RhbGwgc2NyaXB0cyBhcmUgY3VycmVudGx5IHJlZnVzZWQgaW4gZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgICMgICAgIGJ1dCBpZiB0aGlzIGZlYXR1cmUgaXMgY29tcGxldGVkLCBpdCB3aWxsIGFsc28gbmVlZCB0byBhZGQKKyAgICAgICAgIyAgICAgZW50cmllcyBmb3IgZWFjaCB2ZXJzaW9uIGFzIHRoZSBhYm92ZSBjb2RlIGRvZXMKKyAgICAgICAgaWYgc2VsZi5wcmVfaW5zdGFsbF9zY3JpcHQ6CisgICAgICAgICAgICBzY3JpcHRmbiA9IG9zLnBhdGguam9pbihzZWxmLmJkaXN0X2RpciwgInByZWluc3RhbGwuYmF0IikKKyAgICAgICAgICAgIHdpdGggb3BlbihzY3JpcHRmbiwgInciKSBhcyBmOgorICAgICAgICAgICAgICAgICMgVGhlIGJhdGNoIGZpbGUgd2lsbCBiZSBleGVjdXRlZCB3aXRoIFtQWVRIT05dLCBzbyB0aGF0ICUxCisgICAgICAgICAgICAgICAgIyBpcyB0aGUgcGF0aCB0byB0aGUgUHl0aG9uIGludGVycHJldGVyOyAlMCB3aWxsIGJlIHRoZSBwYXRoCisgICAgICAgICAgICAgICAgIyBvZiB0aGUgYmF0Y2ggZmlsZS4KKyAgICAgICAgICAgICAgICAjIHJlbSA9IiIiCisgICAgICAgICAgICAgICAgIyAlMSAlMAorICAgICAgICAgICAgICAgICMgZXhpdAorICAgICAgICAgICAgICAgICMgIiIiCisgICAgICAgICAgICAgICAgIyA8YWN0dWFsIHNjcmlwdD4KKyAgICAgICAgICAgICAgICBmLndyaXRlKCdyZW0gPSIiIlxuJTEgJTBcbmV4aXRcbiIiIlxuJykKKyAgICAgICAgICAgICAgICB3aXRoIG9wZW4oc2VsZi5wcmVfaW5zdGFsbF9zY3JpcHQpIGFzIGZwOgorICAgICAgICAgICAgICAgICAgICBmLndyaXRlKGZwLnJlYWQoKSkKKyAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICJCaW5hcnkiLAorICAgICAgICAgICAgICAgICAgICAgWygiUHJlSW5zdGFsbCIsIG1zaWxpYi5CaW5hcnkoc2NyaXB0Zm4pKSwKKyAgICAgICAgICAgICAgICAgICAgIF0pCisgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiQ3VzdG9tQWN0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgIFsoIlByZUluc3RhbGwiLCAyLCAiUHJlSW5zdGFsbCIsIE5vbmUpLAorICAgICAgICAgICAgICAgICAgICAgXSkKKyAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICJJbnN0YWxsRXhlY3V0ZVNlcXVlbmNlIiwKKyAgICAgICAgICAgICAgICAgICAgIFsoIlByZUluc3RhbGwiLCAiTk9UIEluc3RhbGxlZCIsIDQ1MCksCisgICAgICAgICAgICAgICAgICAgICBdKQorCisgICAgZGVmIGFkZF91aShzZWxmKToKKyAgICAgICAgZGIgPSBzZWxmLmRiCisgICAgICAgIHggPSB5ID0gNTAKKyAgICAgICAgdyA9IDM3MAorICAgICAgICBoID0gMzAwCisgICAgICAgIHRpdGxlID0gIltQcm9kdWN0TmFtZV0gU2V0dXAiCisKKyAgICAgICAgIyBzZWUgIkRpYWxvZyBTdHlsZSBCaXRzIgorICAgICAgICBtb2RhbCA9IDMgICAgICAjIHZpc2libGUgfCBtb2RhbAorICAgICAgICBtb2RlbGVzcyA9IDEgICAjIHZpc2libGUKKworICAgICAgICAjIFVJIGN1c3RvbWl6YXRpb24gcHJvcGVydGllcworICAgICAgICBhZGRfZGF0YShkYiwgIlByb3BlcnR5IiwKKyAgICAgICAgICAgICAgICAgIyBTZWUgIkRlZmF1bHRVSUZvbnQgUHJvcGVydHkiCisgICAgICAgICAgICAgICAgIFsoIkRlZmF1bHRVSUZvbnQiLCAiRGxnRm9udDgiKSwKKyAgICAgICAgICAgICAgICAgICMgU2VlICJFcnJvckRpYWxvZyBTdHlsZSBCaXQiCisgICAgICAgICAgICAgICAgICAoIkVycm9yRGlhbG9nIiwgIkVycm9yRGxnIiksCisgICAgICAgICAgICAgICAgICAoIlByb2dyZXNzMSIsICJJbnN0YWxsIiksICAgIyBtb2RpZmllZCBpbiBtYWludGVuYW5jZSB0eXBlIGRsZworICAgICAgICAgICAgICAgICAgKCJQcm9ncmVzczIiLCAiaW5zdGFsbHMiKSwKKyAgICAgICAgICAgICAgICAgICgiTWFpbnRlbmFuY2VGb3JtX0FjdGlvbiIsICJSZXBhaXIiKSwKKyAgICAgICAgICAgICAgICAgICMgcG9zc2libGUgdmFsdWVzOiBBTEwsIEpVU1RNRQorICAgICAgICAgICAgICAgICAgKCJXaGljaFVzZXJzIiwgIkFMTCIpCisgICAgICAgICAgICAgICAgIF0pCisKKyAgICAgICAgIyBGb250cywgc2VlICJUZXh0U3R5bGUgVGFibGUiCisgICAgICAgIGFkZF9kYXRhKGRiLCAiVGV4dFN0eWxlIiwKKyAgICAgICAgICAgICAgICAgWygiRGxnRm9udDgiLCAiVGFob21hIiwgOSwgTm9uZSwgMCksCisgICAgICAgICAgICAgICAgICAoIkRsZ0ZvbnRCb2xkOCIsICJUYWhvbWEiLCA4LCBOb25lLCAxKSwgI2JvbGQKKyAgICAgICAgICAgICAgICAgICgiVmVyZGFuYUJvbGQxMCIsICJWZXJkYW5hIiwgMTAsIE5vbmUsIDEpLAorICAgICAgICAgICAgICAgICAgKCJWZXJkYW5hUmVkOSIsICJWZXJkYW5hIiwgOSwgMjU1LCAwKSwKKyAgICAgICAgICAgICAgICAgXSkKKworICAgICAgICAjIFVJIFNlcXVlbmNlcywgc2VlICJJbnN0YWxsVUlTZXF1ZW5jZSBUYWJsZSIsICJVc2luZyBhIFNlcXVlbmNlIFRhYmxlIgorICAgICAgICAjIE51bWJlcnMgaW5kaWNhdGUgc2VxdWVuY2U7IHNlZSBzZXF1ZW5jZS5weSBmb3IgaG93IHRoZXNlIGFjdGlvbiBpbnRlZ3JhdGUKKyAgICAgICAgYWRkX2RhdGEoZGIsICJJbnN0YWxsVUlTZXF1ZW5jZSIsCisgICAgICAgICAgICAgICAgIFsoIlByZXBhcmVEbGciLCAiTm90IFByaXZpbGVnZWQgb3IgV2luZG93czl4IG9yIEluc3RhbGxlZCIsIDE0MCksCisgICAgICAgICAgICAgICAgICAoIldoaWNoVXNlcnNEbGciLCAiUHJpdmlsZWdlZCBhbmQgbm90IFdpbmRvd3M5eCBhbmQgbm90IEluc3RhbGxlZCIsIDE0MSksCisgICAgICAgICAgICAgICAgICAjIEluIHRoZSB1c2VyIGludGVyZmFjZSwgYXNzdW1lIGFsbC11c2VycyBpbnN0YWxsYXRpb24gaWYgcHJpdmlsZWdlZC4KKyAgICAgICAgICAgICAgICAgICgiU2VsZWN0RmVhdHVyZXNEbGciLCAiTm90IEluc3RhbGxlZCIsIDEyMzApLAorICAgICAgICAgICAgICAgICAgIyBYWFggbm8gc3VwcG9ydCBmb3IgcmVzdW1lIGluc3RhbGxhdGlvbnMgeWV0CisgICAgICAgICAgICAgICAgICAjKCJSZXN1bWVEbGciLCAiSW5zdGFsbGVkIEFORCAoUkVTVU1FIE9SIFByZXNlbGVjdGVkKSIsIDEyNDApLAorICAgICAgICAgICAgICAgICAgKCJNYWludGVuYW5jZVR5cGVEbGciLCAiSW5zdGFsbGVkIEFORCBOT1QgUkVTVU1FIEFORCBOT1QgUHJlc2VsZWN0ZWQiLCAxMjUwKSwKKyAgICAgICAgICAgICAgICAgICgiUHJvZ3Jlc3NEbGciLCBOb25lLCAxMjgwKV0pCisKKyAgICAgICAgYWRkX2RhdGEoZGIsICdBY3Rpb25UZXh0JywgdGV4dC5BY3Rpb25UZXh0KQorICAgICAgICBhZGRfZGF0YShkYiwgJ1VJVGV4dCcsIHRleHQuVUlUZXh0KQorICAgICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICAgICAgIyBTdGFuZGFyZCBkaWFsb2dzOiBGYXRhbEVycm9yLCBVc2VyRXhpdCwgRXhpdERpYWxvZworICAgICAgICBmYXRhbD1QeURpYWxvZyhkYiwgIkZhdGFsRXJyb3IiLCB4LCB5LCB3LCBoLCBtb2RhbCwgdGl0bGUsCisgICAgICAgICAgICAgICAgICAgICAiRmluaXNoIiwgIkZpbmlzaCIsICJGaW5pc2giKQorICAgICAgICBmYXRhbC50aXRsZSgiW1Byb2R1Y3ROYW1lXSBJbnN0YWxsZXIgZW5kZWQgcHJlbWF0dXJlbHkiKQorICAgICAgICBmYXRhbC5iYWNrKCI8IEJhY2siLCAiRmluaXNoIiwgYWN0aXZlID0gMCkKKyAgICAgICAgZmF0YWwuY2FuY2VsKCJDYW5jZWwiLCAiQmFjayIsIGFjdGl2ZSA9IDApCisgICAgICAgIGZhdGFsLnRleHQoIkRlc2NyaXB0aW9uMSIsIDE1LCA3MCwgMzIwLCA4MCwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgICAiW1Byb2R1Y3ROYW1lXSBzZXR1cCBlbmRlZCBwcmVtYXR1cmVseSBiZWNhdXNlIG9mIGFuIGVycm9yLiAgWW91ciBzeXN0ZW0gaGFzIG5vdCBiZWVuIG1vZGlmaWVkLiAgVG8gaW5zdGFsbCB0aGlzIHByb2dyYW0gYXQgYSBsYXRlciB0aW1lLCBwbGVhc2UgcnVuIHRoZSBpbnN0YWxsYXRpb24gYWdhaW4uIikKKyAgICAgICAgZmF0YWwudGV4dCgiRGVzY3JpcHRpb24yIiwgMTUsIDE1NSwgMzIwLCAyMCwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgICAiQ2xpY2sgdGhlIEZpbmlzaCBidXR0b24gdG8gZXhpdCB0aGUgSW5zdGFsbGVyLiIpCisgICAgICAgIGM9ZmF0YWwubmV4dCgiRmluaXNoIiwgIkNhbmNlbCIsIG5hbWU9IkZpbmlzaCIpCisgICAgICAgIGMuZXZlbnQoIkVuZERpYWxvZyIsICJFeGl0IikKKworICAgICAgICB1c2VyX2V4aXQ9UHlEaWFsb2coZGIsICJVc2VyRXhpdCIsIHgsIHksIHcsIGgsIG1vZGFsLCB0aXRsZSwKKyAgICAgICAgICAgICAgICAgICAgICJGaW5pc2giLCAiRmluaXNoIiwgIkZpbmlzaCIpCisgICAgICAgIHVzZXJfZXhpdC50aXRsZSgiW1Byb2R1Y3ROYW1lXSBJbnN0YWxsZXIgd2FzIGludGVycnVwdGVkIikKKyAgICAgICAgdXNlcl9leGl0LmJhY2soIjwgQmFjayIsICJGaW5pc2giLCBhY3RpdmUgPSAwKQorICAgICAgICB1c2VyX2V4aXQuY2FuY2VsKCJDYW5jZWwiLCAiQmFjayIsIGFjdGl2ZSA9IDApCisgICAgICAgIHVzZXJfZXhpdC50ZXh0KCJEZXNjcmlwdGlvbjEiLCAxNSwgNzAsIDMyMCwgODAsIDB4MzAwMDMsCisgICAgICAgICAgICAgICAgICAgIltQcm9kdWN0TmFtZV0gc2V0dXAgd2FzIGludGVycnVwdGVkLiAgWW91ciBzeXN0ZW0gaGFzIG5vdCBiZWVuIG1vZGlmaWVkLiAgIgorICAgICAgICAgICAgICAgICAgICJUbyBpbnN0YWxsIHRoaXMgcHJvZ3JhbSBhdCBhIGxhdGVyIHRpbWUsIHBsZWFzZSBydW4gdGhlIGluc3RhbGxhdGlvbiBhZ2Fpbi4iKQorICAgICAgICB1c2VyX2V4aXQudGV4dCgiRGVzY3JpcHRpb24yIiwgMTUsIDE1NSwgMzIwLCAyMCwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgICAiQ2xpY2sgdGhlIEZpbmlzaCBidXR0b24gdG8gZXhpdCB0aGUgSW5zdGFsbGVyLiIpCisgICAgICAgIGMgPSB1c2VyX2V4aXQubmV4dCgiRmluaXNoIiwgIkNhbmNlbCIsIG5hbWU9IkZpbmlzaCIpCisgICAgICAgIGMuZXZlbnQoIkVuZERpYWxvZyIsICJFeGl0IikKKworICAgICAgICBleGl0X2RpYWxvZyA9IFB5RGlhbG9nKGRiLCAiRXhpdERpYWxvZyIsIHgsIHksIHcsIGgsIG1vZGFsLCB0aXRsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkZpbmlzaCIsICJGaW5pc2giLCAiRmluaXNoIikKKyAgICAgICAgZXhpdF9kaWFsb2cudGl0bGUoIkNvbXBsZXRpbmcgdGhlIFtQcm9kdWN0TmFtZV0gSW5zdGFsbGVyIikKKyAgICAgICAgZXhpdF9kaWFsb2cuYmFjaygiPCBCYWNrIiwgIkZpbmlzaCIsIGFjdGl2ZSA9IDApCisgICAgICAgIGV4aXRfZGlhbG9nLmNhbmNlbCgiQ2FuY2VsIiwgIkJhY2siLCBhY3RpdmUgPSAwKQorICAgICAgICBleGl0X2RpYWxvZy50ZXh0KCJEZXNjcmlwdGlvbiIsIDE1LCAyMzUsIDMyMCwgMjAsIDB4MzAwMDMsCisgICAgICAgICAgICAgICAgICAgIkNsaWNrIHRoZSBGaW5pc2ggYnV0dG9uIHRvIGV4aXQgdGhlIEluc3RhbGxlci4iKQorICAgICAgICBjID0gZXhpdF9kaWFsb2cubmV4dCgiRmluaXNoIiwgIkNhbmNlbCIsIG5hbWU9IkZpbmlzaCIpCisgICAgICAgIGMuZXZlbnQoIkVuZERpYWxvZyIsICJSZXR1cm4iKQorCisgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworICAgICAgICAjIFJlcXVpcmVkIGRpYWxvZzogRmlsZXNJblVzZSwgRXJyb3JEbGcKKyAgICAgICAgaW51c2UgPSBQeURpYWxvZyhkYiwgIkZpbGVzSW5Vc2UiLAorICAgICAgICAgICAgICAgICAgICAgICAgIHgsIHksIHcsIGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgMTksICAgICAgICAgICAgICAgICMgS2VlcE1vZGVsZXNzfE1vZGFsfFZpc2libGUKKyAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiUmV0cnkiLCAiUmV0cnkiLCAiUmV0cnkiLCBiaXRtYXA9RmFsc2UpCisgICAgICAgIGludXNlLnRleHQoIlRpdGxlIiwgMTUsIDYsIDIwMCwgMTUsIDB4MzAwMDMsCisgICAgICAgICAgICAgICAgICAgciJ7XERsZ0ZvbnRCb2xkOH1GaWxlcyBpbiBVc2UiKQorICAgICAgICBpbnVzZS50ZXh0KCJEZXNjcmlwdGlvbiIsIDIwLCAyMywgMjgwLCAyMCwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICJTb21lIGZpbGVzIHRoYXQgbmVlZCB0byBiZSB1cGRhdGVkIGFyZSBjdXJyZW50bHkgaW4gdXNlLiIpCisgICAgICAgIGludXNlLnRleHQoIlRleHQiLCAyMCwgNTUsIDMzMCwgNTAsIDMsCisgICAgICAgICAgICAgICAgICAgIlRoZSBmb2xsb3dpbmcgYXBwbGljYXRpb25zIGFyZSB1c2luZyBmaWxlcyB0aGF0IG5lZWQgdG8gYmUgdXBkYXRlZCBieSB0aGlzIHNldHVwLiBDbG9zZSB0aGVzZSBhcHBsaWNhdGlvbnMgYW5kIHRoZW4gY2xpY2sgUmV0cnkgdG8gY29udGludWUgdGhlIGluc3RhbGxhdGlvbiBvciBDYW5jZWwgdG8gZXhpdCBpdC4iKQorICAgICAgICBpbnVzZS5jb250cm9sKCJMaXN0IiwgIkxpc3RCb3giLCAyMCwgMTA3LCAzMzAsIDEzMCwgNywgIkZpbGVJblVzZVByb2Nlc3MiLAorICAgICAgICAgICAgICAgICAgICAgIE5vbmUsIE5vbmUsIE5vbmUpCisgICAgICAgIGM9aW51c2UuYmFjaygiRXhpdCIsICJJZ25vcmUiLCBuYW1lPSJFeGl0IikKKyAgICAgICAgYy5ldmVudCgiRW5kRGlhbG9nIiwgIkV4aXQiKQorICAgICAgICBjPWludXNlLm5leHQoIklnbm9yZSIsICJSZXRyeSIsIG5hbWU9Iklnbm9yZSIpCisgICAgICAgIGMuZXZlbnQoIkVuZERpYWxvZyIsICJJZ25vcmUiKQorICAgICAgICBjPWludXNlLmNhbmNlbCgiUmV0cnkiLCAiRXhpdCIsIG5hbWU9IlJldHJ5IikKKyAgICAgICAgYy5ldmVudCgiRW5kRGlhbG9nIiwiUmV0cnkiKQorCisgICAgICAgICMgU2VlICJFcnJvciBEaWFsb2ciLiBTZWUgIklDRTIwIiBmb3IgdGhlIHJlcXVpcmVkIG5hbWVzIG9mIHRoZSBjb250cm9scy4KKyAgICAgICAgZXJyb3IgPSBEaWFsb2coZGIsICJFcnJvckRsZyIsCisgICAgICAgICAgICAgICAgICAgICAgIDUwLCAxMCwgMzMwLCAxMDEsCisgICAgICAgICAgICAgICAgICAgICAgIDY1NTQzLCAgICAgICAjIEVycm9yfE1pbmltaXplfE1vZGFsfFZpc2libGUKKyAgICAgICAgICAgICAgICAgICAgICAgdGl0bGUsCisgICAgICAgICAgICAgICAgICAgICAgICJFcnJvclRleHQiLCBOb25lLCBOb25lKQorICAgICAgICBlcnJvci50ZXh0KCJFcnJvclRleHQiLCA1MCw5LDI4MCw0OCwzLCAiIikKKyAgICAgICAgI2Vycm9yLmNvbnRyb2woIkVycm9ySWNvbiIsICJJY29uIiwgMTUsIDksIDI0LCAyNCwgNTI0Mjg4MSwgTm9uZSwgInB5LmljbyIsIE5vbmUsIE5vbmUpCisgICAgICAgIGVycm9yLnB1c2hidXR0b24oIk4iLDEyMCw3Miw4MSwyMSwzLCJObyIsTm9uZSkuZXZlbnQoIkVuZERpYWxvZyIsIkVycm9yTm8iKQorICAgICAgICBlcnJvci5wdXNoYnV0dG9uKCJZIiwyNDAsNzIsODEsMjEsMywiWWVzIixOb25lKS5ldmVudCgiRW5kRGlhbG9nIiwiRXJyb3JZZXMiKQorICAgICAgICBlcnJvci5wdXNoYnV0dG9uKCJBIiwwLDcyLDgxLDIxLDMsIkFib3J0IixOb25lKS5ldmVudCgiRW5kRGlhbG9nIiwiRXJyb3JBYm9ydCIpCisgICAgICAgIGVycm9yLnB1c2hidXR0b24oIkMiLDQyLDcyLDgxLDIxLDMsIkNhbmNlbCIsTm9uZSkuZXZlbnQoIkVuZERpYWxvZyIsIkVycm9yQ2FuY2VsIikKKyAgICAgICAgZXJyb3IucHVzaGJ1dHRvbigiSSIsODEsNzIsODEsMjEsMywiSWdub3JlIixOb25lKS5ldmVudCgiRW5kRGlhbG9nIiwiRXJyb3JJZ25vcmUiKQorICAgICAgICBlcnJvci5wdXNoYnV0dG9uKCJPIiwxNTksNzIsODEsMjEsMywiT2siLE5vbmUpLmV2ZW50KCJFbmREaWFsb2ciLCJFcnJvck9rIikKKyAgICAgICAgZXJyb3IucHVzaGJ1dHRvbigiUiIsMTk4LDcyLDgxLDIxLDMsIlJldHJ5IixOb25lKS5ldmVudCgiRW5kRGlhbG9nIiwiRXJyb3JSZXRyeSIpCisKKyAgICAgICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgICAgICAgICMgR2xvYmFsICJRdWVyeSBDYW5jZWwiIGRpYWxvZworICAgICAgICBjYW5jZWwgPSBEaWFsb2coZGIsICJDYW5jZWxEbGciLCA1MCwgMTAsIDI2MCwgODUsIDMsIHRpdGxlLAorICAgICAgICAgICAgICAgICAgICAgICAgIk5vIiwgIk5vIiwgIk5vIikKKyAgICAgICAgY2FuY2VsLnRleHQoIlRleHQiLCA0OCwgMTUsIDE5NCwgMzAsIDMsCisgICAgICAgICAgICAgICAgICAgICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gY2FuY2VsIFtQcm9kdWN0TmFtZV0gaW5zdGFsbGF0aW9uPyIpCisgICAgICAgICNjYW5jZWwuY29udHJvbCgiSWNvbiIsICJJY29uIiwgMTUsIDE1LCAyNCwgMjQsIDUyNDI4ODEsIE5vbmUsCisgICAgICAgICMgICAgICAgICAgICAgICAicHkuaWNvIiwgTm9uZSwgTm9uZSkKKyAgICAgICAgYz1jYW5jZWwucHVzaGJ1dHRvbigiWWVzIiwgNzIsIDU3LCA1NiwgMTcsIDMsICJZZXMiLCAiTm8iKQorICAgICAgICBjLmV2ZW50KCJFbmREaWFsb2ciLCAiRXhpdCIpCisKKyAgICAgICAgYz1jYW5jZWwucHVzaGJ1dHRvbigiTm8iLCAxMzIsIDU3LCA1NiwgMTcsIDMsICJObyIsICJZZXMiKQorICAgICAgICBjLmV2ZW50KCJFbmREaWFsb2ciLCAiUmV0dXJuIikKKworICAgICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICAgICAgIyBHbG9iYWwgIldhaXQgZm9yIGNvc3RpbmciIGRpYWxvZworICAgICAgICBjb3N0aW5nID0gRGlhbG9nKGRiLCAiV2FpdEZvckNvc3RpbmdEbGciLCA1MCwgMTAsIDI2MCwgODUsIG1vZGFsLCB0aXRsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiUmV0dXJuIiwgIlJldHVybiIsICJSZXR1cm4iKQorICAgICAgICBjb3N0aW5nLnRleHQoIlRleHQiLCA0OCwgMTUsIDE5NCwgMzAsIDMsCisgICAgICAgICAgICAgICAgICAgICAiUGxlYXNlIHdhaXQgd2hpbGUgdGhlIGluc3RhbGxlciBmaW5pc2hlcyBkZXRlcm1pbmluZyB5b3VyIGRpc2sgc3BhY2UgcmVxdWlyZW1lbnRzLiIpCisgICAgICAgIGMgPSBjb3N0aW5nLnB1c2hidXR0b24oIlJldHVybiIsIDEwMiwgNTcsIDU2LCAxNywgMywgIlJldHVybiIsIE5vbmUpCisgICAgICAgIGMuZXZlbnQoIkVuZERpYWxvZyIsICJFeGl0IikKKworICAgICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICAgICAgIyBQcmVwYXJhdGlvbiBkaWFsb2c6IG5vIHVzZXIgaW5wdXQgZXhjZXB0IGNhbmNlbGxhdGlvbgorICAgICAgICBwcmVwID0gUHlEaWFsb2coZGIsICJQcmVwYXJlRGxnIiwgeCwgeSwgdywgaCwgbW9kZWxlc3MsIHRpdGxlLAorICAgICAgICAgICAgICAgICAgICAgICAgIkNhbmNlbCIsICJDYW5jZWwiLCAiQ2FuY2VsIikKKyAgICAgICAgcHJlcC50ZXh0KCJEZXNjcmlwdGlvbiIsIDE1LCA3MCwgMzIwLCA0MCwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgICJQbGVhc2Ugd2FpdCB3aGlsZSB0aGUgSW5zdGFsbGVyIHByZXBhcmVzIHRvIGd1aWRlIHlvdSB0aHJvdWdoIHRoZSBpbnN0YWxsYXRpb24uIikKKyAgICAgICAgcHJlcC50aXRsZSgiV2VsY29tZSB0byB0aGUgW1Byb2R1Y3ROYW1lXSBJbnN0YWxsZXIiKQorICAgICAgICBjPXByZXAudGV4dCgiQWN0aW9uVGV4dCIsIDE1LCAxMTAsIDMyMCwgMjAsIDB4MzAwMDMsICJQb25kZXJpbmcuLi4iKQorICAgICAgICBjLm1hcHBpbmcoIkFjdGlvblRleHQiLCAiVGV4dCIpCisgICAgICAgIGM9cHJlcC50ZXh0KCJBY3Rpb25EYXRhIiwgMTUsIDEzNSwgMzIwLCAzMCwgMHgzMDAwMywgTm9uZSkKKyAgICAgICAgYy5tYXBwaW5nKCJBY3Rpb25EYXRhIiwgIlRleHQiKQorICAgICAgICBwcmVwLmJhY2soIkJhY2siLCBOb25lLCBhY3RpdmU9MCkKKyAgICAgICAgcHJlcC5uZXh0KCJOZXh0IiwgTm9uZSwgYWN0aXZlPTApCisgICAgICAgIGM9cHJlcC5jYW5jZWwoIkNhbmNlbCIsIE5vbmUpCisgICAgICAgIGMuZXZlbnQoIlNwYXduRGlhbG9nIiwgIkNhbmNlbERsZyIpCisKKyAgICAgICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgICAgICAgICMgRmVhdHVyZSAoUHl0aG9uIGRpcmVjdG9yeSkgc2VsZWN0aW9uCisgICAgICAgIHNlbGRsZyA9IFB5RGlhbG9nKGRiLCAiU2VsZWN0RmVhdHVyZXNEbGciLCB4LCB5LCB3LCBoLCBtb2RhbCwgdGl0bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAiTmV4dCIsICJOZXh0IiwgIkNhbmNlbCIpCisgICAgICAgIHNlbGRsZy50aXRsZSgiU2VsZWN0IFB5dGhvbiBJbnN0YWxsYXRpb25zIikKKworICAgICAgICBzZWxkbGcudGV4dCgiSGludCIsIDE1LCAzMCwgMzAwLCAyMCwgMywKKyAgICAgICAgICAgICAgICAgICAgIlNlbGVjdCB0aGUgUHl0aG9uIGxvY2F0aW9ucyB3aGVyZSAlcyBzaG91bGQgYmUgaW5zdGFsbGVkLiIKKyAgICAgICAgICAgICAgICAgICAgJSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfZnVsbG5hbWUoKSkKKworICAgICAgICBzZWxkbGcuYmFjaygiPCBCYWNrIiwgTm9uZSwgYWN0aXZlPTApCisgICAgICAgIGMgPSBzZWxkbGcubmV4dCgiTmV4dCA+IiwgIkNhbmNlbCIpCisgICAgICAgIG9yZGVyID0gMQorICAgICAgICBjLmV2ZW50KCJbVEFSR0VURElSXSIsICJbU291cmNlRGlyXSIsIG9yZGVyaW5nPW9yZGVyKQorICAgICAgICBmb3IgdmVyc2lvbiBpbiBzZWxmLnZlcnNpb25zICsgW3NlbGYub3RoZXJfdmVyc2lvbl06CisgICAgICAgICAgICBvcmRlciArPSAxCisgICAgICAgICAgICBjLmV2ZW50KCJbVEFSR0VURElSXSIsICJbVEFSR0VURElSJXNdIiAlIHZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICJGRUFUVVJFX1NFTEVDVEVEIEFORCAmUHl0aG9uJXM9MyIgJSB2ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICBvcmRlcmluZz1vcmRlcikKKyAgICAgICAgYy5ldmVudCgiU3Bhd25XYWl0RGlhbG9nIiwgIldhaXRGb3JDb3N0aW5nRGxnIiwgb3JkZXJpbmc9b3JkZXIgKyAxKQorICAgICAgICBjLmV2ZW50KCJFbmREaWFsb2ciLCAiUmV0dXJuIiwgb3JkZXJpbmc9b3JkZXIgKyAyKQorICAgICAgICBjID0gc2VsZGxnLmNhbmNlbCgiQ2FuY2VsIiwgIkZlYXR1cmVzIikKKyAgICAgICAgYy5ldmVudCgiU3Bhd25EaWFsb2ciLCAiQ2FuY2VsRGxnIikKKworICAgICAgICBjID0gc2VsZGxnLmNvbnRyb2woIkZlYXR1cmVzIiwgIlNlbGVjdGlvblRyZWUiLCAxNSwgNjAsIDMwMCwgMTIwLCAzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIkZFQVRVUkUiLCBOb25lLCAiUGF0aEVkaXQiLCBOb25lKQorICAgICAgICBjLmV2ZW50KCJbRkVBVFVSRV9TRUxFQ1RFRF0iLCAiMSIpCisgICAgICAgIHZlciA9IHNlbGYub3RoZXJfdmVyc2lvbgorICAgICAgICBpbnN0YWxsX290aGVyX2NvbmQgPSAiRkVBVFVSRV9TRUxFQ1RFRCBBTkQgJlB5dGhvbiVzPTMiICUgdmVyCisgICAgICAgIGRvbnRfaW5zdGFsbF9vdGhlcl9jb25kID0gIkZFQVRVUkVfU0VMRUNURUQgQU5EICZQeXRob24lczw+MyIgJSB2ZXIKKworICAgICAgICBjID0gc2VsZGxnLnRleHQoIk90aGVyIiwgMTUsIDIwMCwgMzAwLCAxNSwgMywKKyAgICAgICAgICAgICAgICAgICAgICAgICJQcm92aWRlIGFuIGFsdGVybmF0ZSBQeXRob24gbG9jYXRpb24iKQorICAgICAgICBjLmNvbmRpdGlvbigiRW5hYmxlIiwgaW5zdGFsbF9vdGhlcl9jb25kKQorICAgICAgICBjLmNvbmRpdGlvbigiU2hvdyIsIGluc3RhbGxfb3RoZXJfY29uZCkKKyAgICAgICAgYy5jb25kaXRpb24oIkRpc2FibGUiLCBkb250X2luc3RhbGxfb3RoZXJfY29uZCkKKyAgICAgICAgYy5jb25kaXRpb24oIkhpZGUiLCBkb250X2luc3RhbGxfb3RoZXJfY29uZCkKKworICAgICAgICBjID0gc2VsZGxnLmNvbnRyb2woIlBhdGhFZGl0IiwgIlBhdGhFZGl0IiwgMTUsIDIxNSwgMzAwLCAxNiwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICJUQVJHRVRESVIiICsgdmVyLCBOb25lLCAiTmV4dCIsIE5vbmUpCisgICAgICAgIGMuY29uZGl0aW9uKCJFbmFibGUiLCBpbnN0YWxsX290aGVyX2NvbmQpCisgICAgICAgIGMuY29uZGl0aW9uKCJTaG93IiwgaW5zdGFsbF9vdGhlcl9jb25kKQorICAgICAgICBjLmNvbmRpdGlvbigiRGlzYWJsZSIsIGRvbnRfaW5zdGFsbF9vdGhlcl9jb25kKQorICAgICAgICBjLmNvbmRpdGlvbigiSGlkZSIsIGRvbnRfaW5zdGFsbF9vdGhlcl9jb25kKQorCisgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworICAgICAgICAjIERpc2sgY29zdAorICAgICAgICBjb3N0ID0gUHlEaWFsb2coZGIsICJEaXNrQ29zdERsZyIsIHgsIHksIHcsIGgsIG1vZGFsLCB0aXRsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJPSyIsICJPSyIsICJPSyIsIGJpdG1hcD1GYWxzZSkKKyAgICAgICAgY29zdC50ZXh0KCJUaXRsZSIsIDE1LCA2LCAyMDAsIDE1LCAweDMwMDAzLAorICAgICAgICAgICAgICAgICAgIntcRGxnRm9udEJvbGQ4fURpc2sgU3BhY2UgUmVxdWlyZW1lbnRzIikKKyAgICAgICAgY29zdC50ZXh0KCJEZXNjcmlwdGlvbiIsIDIwLCAyMCwgMjgwLCAyMCwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgICJUaGUgZGlzayBzcGFjZSByZXF1aXJlZCBmb3IgdGhlIGluc3RhbGxhdGlvbiBvZiB0aGUgc2VsZWN0ZWQgZmVhdHVyZXMuIikKKyAgICAgICAgY29zdC50ZXh0KCJUZXh0IiwgMjAsIDUzLCAzMzAsIDYwLCAzLAorICAgICAgICAgICAgICAgICAgIlRoZSBoaWdobGlnaHRlZCB2b2x1bWVzIChpZiBhbnkpIGRvIG5vdCBoYXZlIGVub3VnaCBkaXNrIHNwYWNlICIKKyAgICAgICAgICAgICAgImF2YWlsYWJsZSBmb3IgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBmZWF0dXJlcy4gIFlvdSBjYW4gZWl0aGVyICIKKyAgICAgICAgICAgICAgInJlbW92ZSBzb21lIGZpbGVzIGZyb20gdGhlIGhpZ2hsaWdodGVkIHZvbHVtZXMsIG9yIGNob29zZSB0byAiCisgICAgICAgICAgICAgICJpbnN0YWxsIGxlc3MgZmVhdHVyZXMgb250byBsb2NhbCBkcml2ZShzKSwgb3Igc2VsZWN0IGRpZmZlcmVudCAiCisgICAgICAgICAgICAgICJkZXN0aW5hdGlvbiBkcml2ZShzKS4iKQorICAgICAgICBjb3N0LmNvbnRyb2woIlZvbHVtZUxpc3QiLCAiVm9sdW1lQ29zdExpc3QiLCAyMCwgMTAwLCAzMzAsIDE1MCwgMzkzMjIzLAorICAgICAgICAgICAgICAgICAgICAgTm9uZSwgInsxMjB9ezcwfXs3MH17NzB9ezcwfSIsIE5vbmUsIE5vbmUpCisgICAgICAgIGNvc3QueGJ1dHRvbigiT0siLCAiT2siLCBOb25lLCAwLjUpLmV2ZW50KCJFbmREaWFsb2ciLCAiUmV0dXJuIikKKworICAgICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICAgICAgIyBXaGljaFVzZXJzIERpYWxvZy4gT25seSBhdmFpbGFibGUgb24gTlQsIGFuZCBmb3IgcHJpdmlsZWdlZCB1c2Vycy4KKyAgICAgICAgIyBUaGlzIG11c3QgYmUgcnVuIGJlZm9yZSBGaW5kUmVsYXRlZFByb2R1Y3RzLCBiZWNhdXNlIHRoYXQgd2lsbAorICAgICAgICAjIHRha2UgaW50byBhY2NvdW50IHdoZXRoZXIgdGhlIHByZXZpb3VzIGluc3RhbGxhdGlvbiB3YXMgcGVyLXVzZXIKKyAgICAgICAgIyBvciBwZXItbWFjaGluZS4gV2UgY3VycmVudGx5IGRvbid0IHN1cHBvcnQgZ29pbmcgYmFjayB0byB0aGlzCisgICAgICAgICMgZGlhbG9nIGFmdGVyICJOZXh0IiB3YXMgc2VsZWN0ZWQ7IHRvIHN1cHBvcnQgdGhpcywgd2Ugd291bGQgbmVlZCB0bworICAgICAgICAjIGZpbmQgaG93IHRvIHJlc2V0IHRoZSBBTExVU0VSUyBwcm9wZXJ0eSwgYW5kIGhvdyB0byByZS1ydW4KKyAgICAgICAgIyBGaW5kUmVsYXRlZFByb2R1Y3RzLgorICAgICAgICAjIE9uIFdpbmRvd3M5eCwgdGhlIEFMTFVTRVJTIHByb3BlcnR5IGlzIGlnbm9yZWQgb24gdGhlIGNvbW1hbmQgbGluZQorICAgICAgICAjIGFuZCBpbiB0aGUgUHJvcGVydHkgdGFibGUsIGJ1dCBpbnN0YWxsZXIgZmFpbHMgYWNjb3JkaW5nIHRvIHRoZSBkb2N1bWVudGF0aW9uCisgICAgICAgICMgaWYgYSBkaWFsb2cgYXR0ZW1wdHMgdG8gc2V0IEFMTFVTRVJTLgorICAgICAgICB3aGljaHVzZXJzID0gUHlEaWFsb2coZGIsICJXaGljaFVzZXJzRGxnIiwgeCwgeSwgdywgaCwgbW9kYWwsIHRpdGxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJBZG1pbkluc3RhbGwiLCAiTmV4dCIsICJDYW5jZWwiKQorICAgICAgICB3aGljaHVzZXJzLnRpdGxlKCJTZWxlY3Qgd2hldGhlciB0byBpbnN0YWxsIFtQcm9kdWN0TmFtZV0gZm9yIGFsbCB1c2VycyBvZiB0aGlzIGNvbXB1dGVyLiIpCisgICAgICAgICMgQSByYWRpbyBncm91cCB3aXRoIHR3byBvcHRpb25zOiBhbGx1c2VycywganVzdG1lCisgICAgICAgIGcgPSB3aGljaHVzZXJzLnJhZGlvZ3JvdXAoIkFkbWluSW5zdGFsbCIsIDE1LCA2MCwgMjYwLCA1MCwgMywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiV2hpY2hVc2VycyIsICIiLCAiTmV4dCIpCisgICAgICAgIGcuYWRkKCJBTEwiLCAwLCA1LCAxNTAsIDIwLCAiSW5zdGFsbCBmb3IgYWxsIHVzZXJzIikKKyAgICAgICAgZy5hZGQoIkpVU1RNRSIsIDAsIDI1LCAxNTAsIDIwLCAiSW5zdGFsbCBqdXN0IGZvciBtZSIpCisKKyAgICAgICAgd2hpY2h1c2Vycy5iYWNrKCJCYWNrIiwgTm9uZSwgYWN0aXZlPTApCisKKyAgICAgICAgYyA9IHdoaWNodXNlcnMubmV4dCgiTmV4dCA+IiwgIkNhbmNlbCIpCisgICAgICAgIGMuZXZlbnQoIltBTExVU0VSU10iLCAiMSIsICdXaGljaFVzZXJzPSJBTEwiJywgMSkKKyAgICAgICAgYy5ldmVudCgiRW5kRGlhbG9nIiwgIlJldHVybiIsIG9yZGVyaW5nID0gMikKKworICAgICAgICBjID0gd2hpY2h1c2Vycy5jYW5jZWwoIkNhbmNlbCIsICJBZG1pbkluc3RhbGwiKQorICAgICAgICBjLmV2ZW50KCJTcGF3bkRpYWxvZyIsICJDYW5jZWxEbGciKQorCisgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworICAgICAgICAjIEluc3RhbGxhdGlvbiBQcm9ncmVzcyBkaWFsb2cgKG1vZGVsZXNzKQorICAgICAgICBwcm9ncmVzcyA9IFB5RGlhbG9nKGRiLCAiUHJvZ3Jlc3NEbGciLCB4LCB5LCB3LCBoLCBtb2RlbGVzcywgdGl0bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNhbmNlbCIsICJDYW5jZWwiLCAiQ2FuY2VsIiwgYml0bWFwPUZhbHNlKQorICAgICAgICBwcm9ncmVzcy50ZXh0KCJUaXRsZSIsIDIwLCAxNSwgMjAwLCAxNSwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgICAgICAie1xEbGdGb250Qm9sZDh9W1Byb2dyZXNzMV0gW1Byb2R1Y3ROYW1lXSIpCisgICAgICAgIHByb2dyZXNzLnRleHQoIlRleHQiLCAzNSwgNjUsIDMwMCwgMzAsIDMsCisgICAgICAgICAgICAgICAgICAgICAgIlBsZWFzZSB3YWl0IHdoaWxlIHRoZSBJbnN0YWxsZXIgW1Byb2dyZXNzMl0gW1Byb2R1Y3ROYW1lXS4gIgorICAgICAgICAgICAgICAgICAgICAgICJUaGlzIG1heSB0YWtlIHNldmVyYWwgbWludXRlcy4iKQorICAgICAgICBwcm9ncmVzcy50ZXh0KCJTdGF0dXNMYWJlbCIsIDM1LCAxMDAsIDM1LCAyMCwgMywgIlN0YXR1czoiKQorCisgICAgICAgIGM9cHJvZ3Jlc3MudGV4dCgiQWN0aW9uVGV4dCIsIDcwLCAxMDAsIHctNzAsIDIwLCAzLCAiUG9uZGVyaW5nLi4uIikKKyAgICAgICAgYy5tYXBwaW5nKCJBY3Rpb25UZXh0IiwgIlRleHQiKQorCisgICAgICAgICNjPXByb2dyZXNzLnRleHQoIkFjdGlvbkRhdGEiLCAzNSwgMTQwLCAzMDAsIDIwLCAzLCBOb25lKQorICAgICAgICAjYy5tYXBwaW5nKCJBY3Rpb25EYXRhIiwgIlRleHQiKQorCisgICAgICAgIGM9cHJvZ3Jlc3MuY29udHJvbCgiUHJvZ3Jlc3NCYXIiLCAiUHJvZ3Jlc3NCYXIiLCAzNSwgMTIwLCAzMDAsIDEwLCA2NTUzNywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vbmUsICJQcm9ncmVzcyBkb25lIiwgTm9uZSwgTm9uZSkKKyAgICAgICAgYy5tYXBwaW5nKCJTZXRQcm9ncmVzcyIsICJQcm9ncmVzcyIpCisKKyAgICAgICAgcHJvZ3Jlc3MuYmFjaygiPCBCYWNrIiwgIk5leHQiLCBhY3RpdmU9RmFsc2UpCisgICAgICAgIHByb2dyZXNzLm5leHQoIk5leHQgPiIsICJDYW5jZWwiLCBhY3RpdmU9RmFsc2UpCisgICAgICAgIHByb2dyZXNzLmNhbmNlbCgiQ2FuY2VsIiwgIkJhY2siKS5ldmVudCgiU3Bhd25EaWFsb2ciLCAiQ2FuY2VsRGxnIikKKworICAgICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgICAgICAgICMgTWFpbnRlbmFuY2UgdHlwZTogcmVwYWlyL3VuaW5zdGFsbAorICAgICAgICBtYWludCA9IFB5RGlhbG9nKGRiLCAiTWFpbnRlbmFuY2VUeXBlRGxnIiwgeCwgeSwgdywgaCwgbW9kYWwsIHRpdGxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICJOZXh0IiwgIk5leHQiLCAiQ2FuY2VsIikKKyAgICAgICAgbWFpbnQudGl0bGUoIldlbGNvbWUgdG8gdGhlIFtQcm9kdWN0TmFtZV0gU2V0dXAgV2l6YXJkIikKKyAgICAgICAgbWFpbnQudGV4dCgiQm9keVRleHQiLCAxNSwgNjMsIDMzMCwgNDIsIDMsCisgICAgICAgICAgICAgICAgICAgIlNlbGVjdCB3aGV0aGVyIHlvdSB3YW50IHRvIHJlcGFpciBvciByZW1vdmUgW1Byb2R1Y3ROYW1lXS4iKQorICAgICAgICBnPW1haW50LnJhZGlvZ3JvdXAoIlJlcGFpclJhZGlvR3JvdXAiLCAxNSwgMTA4LCAzMzAsIDYwLCAzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNYWludGVuYW5jZUZvcm1fQWN0aW9uIiwgIiIsICJOZXh0IikKKyAgICAgICAgI2cuYWRkKCJDaGFuZ2UiLCAwLCAwLCAyMDAsIDE3LCAiJkNoYW5nZSBbUHJvZHVjdE5hbWVdIikKKyAgICAgICAgZy5hZGQoIlJlcGFpciIsIDAsIDE4LCAyMDAsIDE3LCAiJlJlcGFpciBbUHJvZHVjdE5hbWVdIikKKyAgICAgICAgZy5hZGQoIlJlbW92ZSIsIDAsIDM2LCAyMDAsIDE3LCAiUmUmbW92ZSBbUHJvZHVjdE5hbWVdIikKKworICAgICAgICBtYWludC5iYWNrKCI8IEJhY2siLCBOb25lLCBhY3RpdmU9RmFsc2UpCisgICAgICAgIGM9bWFpbnQubmV4dCgiRmluaXNoIiwgIkNhbmNlbCIpCisgICAgICAgICMgQ2hhbmdlIGluc3RhbGxhdGlvbjogQ2hhbmdlIHByb2dyZXNzIGRpYWxvZyB0byAiQ2hhbmdlIiwgdGhlbiBhc2sKKyAgICAgICAgIyBmb3IgZmVhdHVyZSBzZWxlY3Rpb24KKyAgICAgICAgI2MuZXZlbnQoIltQcm9ncmVzczFdIiwgIkNoYW5nZSIsICdNYWludGVuYW5jZUZvcm1fQWN0aW9uPSJDaGFuZ2UiJywgMSkKKyAgICAgICAgI2MuZXZlbnQoIltQcm9ncmVzczJdIiwgImNoYW5nZXMiLCAnTWFpbnRlbmFuY2VGb3JtX0FjdGlvbj0iQ2hhbmdlIicsIDIpCisKKyAgICAgICAgIyBSZWluc3RhbGw6IENoYW5nZSBwcm9ncmVzcyBkaWFsb2cgdG8gIlJlcGFpciIsIHRoZW4gaW52b2tlIHJlaW5zdGFsbAorICAgICAgICAjIEFsc28gc2V0IGxpc3Qgb2YgcmVpbnN0YWxsZWQgZmVhdHVyZXMgdG8gIkFMTCIKKyAgICAgICAgYy5ldmVudCgiW1JFSU5TVEFMTF0iLCAiQUxMIiwgJ01haW50ZW5hbmNlRm9ybV9BY3Rpb249IlJlcGFpciInLCA1KQorICAgICAgICBjLmV2ZW50KCJbUHJvZ3Jlc3MxXSIsICJSZXBhaXJpbmciLCAnTWFpbnRlbmFuY2VGb3JtX0FjdGlvbj0iUmVwYWlyIicsIDYpCisgICAgICAgIGMuZXZlbnQoIltQcm9ncmVzczJdIiwgInJlcGFpcnMiLCAnTWFpbnRlbmFuY2VGb3JtX0FjdGlvbj0iUmVwYWlyIicsIDcpCisgICAgICAgIGMuZXZlbnQoIlJlaW5zdGFsbCIsICJBTEwiLCAnTWFpbnRlbmFuY2VGb3JtX0FjdGlvbj0iUmVwYWlyIicsIDgpCisKKyAgICAgICAgIyBVbmluc3RhbGw6IENoYW5nZSBwcm9ncmVzcyB0byAiUmVtb3ZlIiwgdGhlbiBpbnZva2UgdW5pbnN0YWxsCisgICAgICAgICMgQWxzbyBzZXQgbGlzdCBvZiByZW1vdmVkIGZlYXR1cmVzIHRvICJBTEwiCisgICAgICAgIGMuZXZlbnQoIltSRU1PVkVdIiwgIkFMTCIsICdNYWludGVuYW5jZUZvcm1fQWN0aW9uPSJSZW1vdmUiJywgMTEpCisgICAgICAgIGMuZXZlbnQoIltQcm9ncmVzczFdIiwgIlJlbW92aW5nIiwgJ01haW50ZW5hbmNlRm9ybV9BY3Rpb249IlJlbW92ZSInLCAxMikKKyAgICAgICAgYy5ldmVudCgiW1Byb2dyZXNzMl0iLCAicmVtb3ZlcyIsICdNYWludGVuYW5jZUZvcm1fQWN0aW9uPSJSZW1vdmUiJywgMTMpCisgICAgICAgIGMuZXZlbnQoIlJlbW92ZSIsICJBTEwiLCAnTWFpbnRlbmFuY2VGb3JtX0FjdGlvbj0iUmVtb3ZlIicsIDE0KQorCisgICAgICAgICMgQ2xvc2UgZGlhbG9nIHdoZW4gbWFpbnRlbmFuY2UgYWN0aW9uIHNjaGVkdWxlZAorICAgICAgICBjLmV2ZW50KCJFbmREaWFsb2ciLCAiUmV0dXJuIiwgJ01haW50ZW5hbmNlRm9ybV9BY3Rpb248PiJDaGFuZ2UiJywgMjApCisgICAgICAgICNjLmV2ZW50KCJOZXdEaWFsb2ciLCAiU2VsZWN0RmVhdHVyZXNEbGciLCAnTWFpbnRlbmFuY2VGb3JtX0FjdGlvbj0iQ2hhbmdlIicsIDIxKQorCisgICAgICAgIG1haW50LmNhbmNlbCgiQ2FuY2VsIiwgIlJlcGFpclJhZGlvR3JvdXAiKS5ldmVudCgiU3Bhd25EaWFsb2ciLCAiQ2FuY2VsRGxnIikKKworICAgIGRlZiBnZXRfaW5zdGFsbGVyX2ZpbGVuYW1lKHNlbGYsIGZ1bGxuYW1lKToKKyAgICAgICAgIyBGYWN0b3JlZCBvdXQgdG8gYWxsb3cgb3ZlcnJpZGluZyBpbiBzdWJjbGFzc2VzCisgICAgICAgIGlmIHNlbGYudGFyZ2V0X3ZlcnNpb246CisgICAgICAgICAgICBiYXNlX25hbWUgPSAiJXMuJXMtcHklcy5tc2kiICUgKGZ1bGxuYW1lLCBzZWxmLnBsYXRfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi50YXJnZXRfdmVyc2lvbikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGJhc2VfbmFtZSA9ICIlcy4lcy5tc2kiICUgKGZ1bGxuYW1lLCBzZWxmLnBsYXRfbmFtZSkKKyAgICAgICAgaW5zdGFsbGVyX25hbWUgPSBvcy5wYXRoLmpvaW4oc2VsZi5kaXN0X2RpciwgYmFzZV9uYW1lKQorICAgICAgICByZXR1cm4gaW5zdGFsbGVyX25hbWUKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9iZGlzdF93aW5pbnN0LnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2JkaXN0X3dpbmluc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2M2NjM2MAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9iZGlzdF93aW5pbnN0LnB5CkBAIC0wLDAgKzEsMzQ1IEBACisiIiJDcmVhdGUgYW4gZXhlY3V0YWJsZSBpbnN0YWxsZXIgZm9yIFdpbmRvd3MuIiIiCisKK2ltcG9ydCBzeXMKK2ltcG9ydCBvcworCitmcm9tIHNodXRpbCBpbXBvcnQgcm10cmVlCitmcm9tIHN5c2NvbmZpZyBpbXBvcnQgZ2V0X3B5dGhvbl92ZXJzaW9uCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvciwgUGFja2FnaW5nUGxhdGZvcm1FcnJvcgorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgZ2V0X3BsYXRmb3JtCisKKworY2xhc3MgYmRpc3Rfd2luaW5zdChDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gImNyZWF0ZSBhbiBleGVjdXRhYmxlIGluc3RhbGxlciBmb3IgV2luZG93cyIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsoJ2JkaXN0LWRpcj0nLCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgInRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIGNyZWF0aW5nIHRoZSBkaXN0cmlidXRpb24iKSwKKyAgICAgICAgICAgICAgICAgICAgKCdwbGF0LW5hbWU9JywgJ3AnLAorICAgICAgICAgICAgICAgICAgICAgInBsYXRmb3JtIG5hbWUgdG8gZW1iZWQgaW4gZ2VuZXJhdGVkIGZpbGVuYW1lcyAiCisgICAgICAgICAgICAgICAgICAgICAiKGRlZmF1bHQ6ICVzKSIgJSBnZXRfcGxhdGZvcm0oKSksCisgICAgICAgICAgICAgICAgICAgICgna2VlcC10ZW1wJywgJ2snLAorICAgICAgICAgICAgICAgICAgICAgImtlZXAgdGhlIHBzZXVkby1pbnN0YWxsYXRpb24gdHJlZSBhcm91bmQgYWZ0ZXIgIiArCisgICAgICAgICAgICAgICAgICAgICAiY3JlYXRpbmcgdGhlIGRpc3RyaWJ1dGlvbiBhcmNoaXZlIiksCisgICAgICAgICAgICAgICAgICAgICgndGFyZ2V0LXZlcnNpb249JywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJyZXF1aXJlIGEgc3BlY2lmaWMgcHl0aG9uIHZlcnNpb24iICsKKyAgICAgICAgICAgICAgICAgICAgICIgb24gdGhlIHRhcmdldCBzeXN0ZW0iKSwKKyAgICAgICAgICAgICAgICAgICAgKCduby10YXJnZXQtY29tcGlsZScsICdjJywKKyAgICAgICAgICAgICAgICAgICAgICJkbyBub3QgY29tcGlsZSAucHkgdG8gLnB5YyBvbiB0aGUgdGFyZ2V0IHN5c3RlbSIpLAorICAgICAgICAgICAgICAgICAgICAoJ25vLXRhcmdldC1vcHRpbWl6ZScsICdvJywKKyAgICAgICAgICAgICAgICAgICAgICJkbyBub3QgY29tcGlsZSAucHkgdG8gLnB5byAob3B0aW1pemVkKSIKKyAgICAgICAgICAgICAgICAgICAgICJvbiB0aGUgdGFyZ2V0IHN5c3RlbSIpLAorICAgICAgICAgICAgICAgICAgICAoJ2Rpc3QtZGlyPScsICdkJywKKyAgICAgICAgICAgICAgICAgICAgICJkaXJlY3RvcnkgdG8gcHV0IGZpbmFsIGJ1aWx0IGRpc3RyaWJ1dGlvbnMgaW4iKSwKKyAgICAgICAgICAgICAgICAgICAgKCdiaXRtYXA9JywgJ2InLAorICAgICAgICAgICAgICAgICAgICAgImJpdG1hcCB0byB1c2UgZm9yIHRoZSBpbnN0YWxsZXIgaW5zdGVhZCBvZiBweXRob24tcG93ZXJlZCBsb2dvIiksCisgICAgICAgICAgICAgICAgICAgICgndGl0bGU9JywgJ3QnLAorICAgICAgICAgICAgICAgICAgICAgInRpdGxlIHRvIGRpc3BsYXkgb24gdGhlIGluc3RhbGxlciBiYWNrZ3JvdW5kIGluc3RlYWQgb2YgZGVmYXVsdCIpLAorICAgICAgICAgICAgICAgICAgICAoJ3NraXAtYnVpbGQnLCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgInNraXAgcmVidWlsZGluZyBldmVyeXRoaW5nIChmb3IgdGVzdGluZy9kZWJ1Z2dpbmcpIiksCisgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbC1zY3JpcHQ9JywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJiYXNlbmFtZSBvZiBpbnN0YWxsYXRpb24gc2NyaXB0IHRvIGJlIHJ1biBhZnRlciIKKyAgICAgICAgICAgICAgICAgICAgICJpbnN0YWxsYXRpb24gb3IgYmVmb3JlIGRlaW5zdGFsbGF0aW9uIiksCisgICAgICAgICAgICAgICAgICAgICgncHJlLWluc3RhbGwtc2NyaXB0PScsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAiRnVsbHkgcXVhbGlmaWVkIGZpbGVuYW1lIG9mIGEgc2NyaXB0IHRvIGJlIHJ1biBiZWZvcmUgIgorICAgICAgICAgICAgICAgICAgICAgImFueSBmaWxlcyBhcmUgaW5zdGFsbGVkLiAgVGhpcyBzY3JpcHQgbmVlZCBub3QgYmUgaW4gdGhlICIKKyAgICAgICAgICAgICAgICAgICAgICJkaXN0cmlidXRpb24iKSwKKyAgICAgICAgICAgICAgICAgICAgKCd1c2VyLWFjY2Vzcy1jb250cm9sPScsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAic3BlY2lmeSBWaXN0YSdzIFVBQyBoYW5kbGluZyAtICdub25lJy9kZWZhdWx0PW5vICIKKyAgICAgICAgICAgICAgICAgICAgICJoYW5kbGluZywgJ2F1dG8nPXVzZSBVQUMgaWYgdGFyZ2V0IFB5dGhvbiBpbnN0YWxsZWQgZm9yICIKKyAgICAgICAgICAgICAgICAgICAgICJhbGwgdXNlcnMsICdmb3JjZSc9YWx3YXlzIHVzZSBVQUMiKSwKKyAgICAgICAgICAgICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2tlZXAtdGVtcCcsICduby10YXJnZXQtY29tcGlsZScsICduby10YXJnZXQtb3B0aW1pemUnLAorICAgICAgICAgICAgICAgICAgICAgICAnc2tpcC1idWlsZCddCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmJkaXN0X2RpciA9IE5vbmUKKyAgICAgICAgc2VsZi5wbGF0X25hbWUgPSBOb25lCisgICAgICAgIHNlbGYua2VlcF90ZW1wID0gRmFsc2UKKyAgICAgICAgc2VsZi5ub190YXJnZXRfY29tcGlsZSA9IEZhbHNlCisgICAgICAgIHNlbGYubm9fdGFyZ2V0X29wdGltaXplID0gRmFsc2UKKyAgICAgICAgc2VsZi50YXJnZXRfdmVyc2lvbiA9IE5vbmUKKyAgICAgICAgc2VsZi5kaXN0X2RpciA9IE5vbmUKKyAgICAgICAgc2VsZi5iaXRtYXAgPSBOb25lCisgICAgICAgIHNlbGYudGl0bGUgPSBOb25lCisgICAgICAgIHNlbGYuc2tpcF9idWlsZCA9IE5vbmUKKyAgICAgICAgc2VsZi5pbnN0YWxsX3NjcmlwdCA9IE5vbmUKKyAgICAgICAgc2VsZi5wcmVfaW5zdGFsbF9zY3JpcHQgPSBOb25lCisgICAgICAgIHNlbGYudXNlcl9hY2Nlc3NfY29udHJvbCA9IE5vbmUKKworCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdiZGlzdCcsICdza2lwX2J1aWxkJykKKworICAgICAgICBpZiBzZWxmLmJkaXN0X2RpciBpcyBOb25lOgorICAgICAgICAgICAgaWYgc2VsZi5za2lwX2J1aWxkIGFuZCBzZWxmLnBsYXRfbmFtZToKKyAgICAgICAgICAgICAgICAjIElmIGJ1aWxkIGlzIHNraXBwZWQgYW5kIHBsYXRfbmFtZSBpcyBvdmVycmlkZGVuLCBiZGlzdCB3aWxsCisgICAgICAgICAgICAgICAgIyBub3Qgc2VlIHRoZSBjb3JyZWN0ICdwbGF0X25hbWUnIC0gc28gc2V0IHRoYXQgdXAgbWFudWFsbHkuCisgICAgICAgICAgICAgICAgYmRpc3QgPSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfY29tbWFuZF9vYmooJ2JkaXN0JykKKyAgICAgICAgICAgICAgICBiZGlzdC5wbGF0X25hbWUgPSBzZWxmLnBsYXRfbmFtZQorICAgICAgICAgICAgICAgICMgbmV4dCB0aGUgY29tbWFuZCB3aWxsIGJlIGluaXRpYWxpemVkIHVzaW5nIHRoYXQgbmFtZQorICAgICAgICAgICAgYmRpc3RfYmFzZSA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdiZGlzdCcpLmJkaXN0X2Jhc2UKKyAgICAgICAgICAgIHNlbGYuYmRpc3RfZGlyID0gb3MucGF0aC5qb2luKGJkaXN0X2Jhc2UsICd3aW5pbnN0JykKKworICAgICAgICBpZiBub3Qgc2VsZi50YXJnZXRfdmVyc2lvbjoKKyAgICAgICAgICAgIHNlbGYudGFyZ2V0X3ZlcnNpb24gPSAiIgorCisgICAgICAgIGlmIG5vdCBzZWxmLnNraXBfYnVpbGQgYW5kIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19leHRfbW9kdWxlcygpOgorICAgICAgICAgICAgc2hvcnRfdmVyc2lvbiA9IGdldF9weXRob25fdmVyc2lvbigpCisgICAgICAgICAgICBpZiBzZWxmLnRhcmdldF92ZXJzaW9uIGFuZCBzZWxmLnRhcmdldF92ZXJzaW9uICE9IHNob3J0X3ZlcnNpb246CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoInRhcmdldCB2ZXJzaW9uIGNhbiBvbmx5IGJlICVzLCBvciB0aGUgJy0tc2tpcC1idWlsZCciIFwKKyAgICAgICAgICAgICAgICAgICAgICAiIG9wdGlvbiBtdXN0IGJlIHNwZWNpZmllZCIgJSAoc2hvcnRfdmVyc2lvbiwpKQorICAgICAgICAgICAgc2VsZi50YXJnZXRfdmVyc2lvbiA9IHNob3J0X3ZlcnNpb24KKworICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnYmRpc3QnLCAnZGlzdF9kaXInLCAncGxhdF9uYW1lJykKKworICAgICAgICBpZiBzZWxmLmluc3RhbGxfc2NyaXB0OgorICAgICAgICAgICAgZm9yIHNjcmlwdCBpbiBzZWxmLmRpc3RyaWJ1dGlvbi5zY3JpcHRzOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuaW5zdGFsbF9zY3JpcHQgPT0gb3MucGF0aC5iYXNlbmFtZShzY3JpcHQpOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigiaW5zdGFsbF9zY3JpcHQgJyVzJyBub3QgZm91bmQgaW4gc2NyaXB0cyIgJSBcCisgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbnN0YWxsX3NjcmlwdCkKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIGlmIChzeXMucGxhdGZvcm0gIT0gIndpbjMyIiBhbmQKKyAgICAgICAgICAgIChzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKSBvcgorICAgICAgICAgICAgIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19jX2xpYnJhcmllcygpKSk6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yIFwKKyAgICAgICAgICAgICAgICAgICgiZGlzdHJpYnV0aW9uIGNvbnRhaW5zIGV4dGVuc2lvbnMgYW5kL29yIEMgbGlicmFyaWVzOyAiCisgICAgICAgICAgICAgICAgICAgIm11c3QgYmUgY29tcGlsZWQgb24gYSBXaW5kb3dzIDMyIHBsYXRmb3JtIikKKworICAgICAgICBpZiBub3Qgc2VsZi5za2lwX2J1aWxkOgorICAgICAgICAgICAgc2VsZi5ydW5fY29tbWFuZCgnYnVpbGQnKQorCisgICAgICAgIGluc3RhbGwgPSBzZWxmLnJlaW5pdGlhbGl6ZV9jb21tYW5kKCdpbnN0YWxsJywgcmVpbml0X3N1YmNvbW1hbmRzPVRydWUpCisgICAgICAgIGluc3RhbGwucm9vdCA9IHNlbGYuYmRpc3RfZGlyCisgICAgICAgIGluc3RhbGwuc2tpcF9idWlsZCA9IHNlbGYuc2tpcF9idWlsZAorICAgICAgICBpbnN0YWxsLndhcm5fZGlyID0gRmFsc2UKKyAgICAgICAgaW5zdGFsbC5wbGF0X25hbWUgPSBzZWxmLnBsYXRfbmFtZQorCisgICAgICAgIGluc3RhbGxfbGliID0gc2VsZi5yZWluaXRpYWxpemVfY29tbWFuZCgnaW5zdGFsbF9saWInKQorICAgICAgICAjIHdlIGRvIG5vdCB3YW50IHRvIGluY2x1ZGUgcHljIG9yIHB5byBmaWxlcworICAgICAgICBpbnN0YWxsX2xpYi5jb21waWxlID0gRmFsc2UKKyAgICAgICAgaW5zdGFsbF9saWIub3B0aW1pemUgPSAwCisKKyAgICAgICAgaWYgc2VsZi5kaXN0cmlidXRpb24uaGFzX2V4dF9tb2R1bGVzKCk6CisgICAgICAgICAgICAjIElmIHdlIGFyZSBidWlsZGluZyBhbiBpbnN0YWxsZXIgZm9yIGEgUHl0aG9uIHZlcnNpb24gb3RoZXIKKyAgICAgICAgICAgICMgdGhhbiB0aGUgb25lIHdlIGFyZSBjdXJyZW50bHkgcnVubmluZywgdGhlbiB3ZSBuZWVkIHRvIGVuc3VyZQorICAgICAgICAgICAgIyBvdXIgYnVpbGRfbGliIHJlZmxlY3RzIHRoZSBvdGhlciBQeXRob24gdmVyc2lvbiByYXRoZXIgdGhhbiBvdXJzLgorICAgICAgICAgICAgIyBOb3RlIHRoYXQgZm9yIHRhcmdldF92ZXJzaW9uIT1zeXMudmVyc2lvbiwgd2UgbXVzdCBoYXZlIHNraXBwZWQgdGhlCisgICAgICAgICAgICAjIGJ1aWxkIHN0ZXAsIHNvIHRoZXJlIGlzIG5vIGlzc3VlIHdpdGggZW5mb3JjaW5nIHRoZSBidWlsZCBvZiB0aGlzCisgICAgICAgICAgICAjIHZlcnNpb24uCisgICAgICAgICAgICB0YXJnZXRfdmVyc2lvbiA9IHNlbGYudGFyZ2V0X3ZlcnNpb24KKyAgICAgICAgICAgIGlmIG5vdCB0YXJnZXRfdmVyc2lvbjoKKyAgICAgICAgICAgICAgICBhc3NlcnQgc2VsZi5za2lwX2J1aWxkLCAiU2hvdWxkIGhhdmUgYWxyZWFkeSBjaGVja2VkIHRoaXMiCisgICAgICAgICAgICAgICAgdGFyZ2V0X3ZlcnNpb24gPSAnJXMuJXMnICUgc3lzLnZlcnNpb25faW5mb1s6Ml0KKyAgICAgICAgICAgIHBsYXRfc3BlY2lmaWVyID0gIi4lcy0lcyIgJSAoc2VsZi5wbGF0X25hbWUsIHRhcmdldF92ZXJzaW9uKQorICAgICAgICAgICAgYnVpbGQgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGQnKQorICAgICAgICAgICAgYnVpbGQuYnVpbGRfbGliID0gb3MucGF0aC5qb2luKGJ1aWxkLmJ1aWxkX2Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xpYicgKyBwbGF0X3NwZWNpZmllcikKKworICAgICAgICAjIFVzZSBhIGN1c3RvbSBzY2hlbWUgZm9yIHRoZSB6aXAtZmlsZSwgYmVjYXVzZSB3ZSBoYXZlIHRvIGRlY2lkZQorICAgICAgICAjIGF0IGluc3RhbGxhdGlvbiB0aW1lIHdoaWNoIHNjaGVtZSB0byB1c2UuCisgICAgICAgIGZvciBrZXkgaW4gKCdwdXJlbGliJywgJ3BsYXRsaWInLCAnaGVhZGVycycsICdzY3JpcHRzJywgJ2RhdGEnKToKKyAgICAgICAgICAgIHZhbHVlID0ga2V5LnVwcGVyKCkKKyAgICAgICAgICAgIGlmIGtleSA9PSAnaGVhZGVycyc6CisgICAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZSArICcvSW5jbHVkZS8kZGlzdF9uYW1lJworICAgICAgICAgICAgc2V0YXR0cihpbnN0YWxsLAorICAgICAgICAgICAgICAgICAgICAnaW5zdGFsbF8nICsga2V5LAorICAgICAgICAgICAgICAgICAgICB2YWx1ZSkKKworICAgICAgICBsb2dnZXIuaW5mbygiaW5zdGFsbGluZyB0byAlcyIsIHNlbGYuYmRpc3RfZGlyKQorICAgICAgICBpbnN0YWxsLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgICMgYXZvaWQgd2FybmluZyBvZiAnaW5zdGFsbF9saWInIGFib3V0IGluc3RhbGxpbmcKKyAgICAgICAgIyBpbnRvIGEgZGlyZWN0b3J5IG5vdCBpbiBzeXMucGF0aAorICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgb3MucGF0aC5qb2luKHNlbGYuYmRpc3RfZGlyLCAnUFVSRUxJQicpKQorCisgICAgICAgIGluc3RhbGwucnVuKCkKKworICAgICAgICBkZWwgc3lzLnBhdGhbMF0KKworICAgICAgICAjIEFuZCBtYWtlIGFuIGFyY2hpdmUgcmVsYXRpdmUgdG8gdGhlIHJvb3Qgb2YgdGhlCisgICAgICAgICMgcHNldWRvLWluc3RhbGxhdGlvbiB0cmVlLgorICAgICAgICBmcm9tIHRlbXBmaWxlIGltcG9ydCBOYW1lZFRlbXBvcmFyeUZpbGUKKyAgICAgICAgYXJjaGl2ZV9iYXNlbmFtZSA9IE5hbWVkVGVtcG9yYXJ5RmlsZSgpLm5hbWUKKyAgICAgICAgZnVsbG5hbWUgPSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfZnVsbG5hbWUoKQorICAgICAgICBhcmNuYW1lID0gc2VsZi5tYWtlX2FyY2hpdmUoYXJjaGl2ZV9iYXNlbmFtZSwgInppcCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb290X2Rpcj1zZWxmLmJkaXN0X2RpcikKKyAgICAgICAgIyBjcmVhdGUgYW4gZXhlIGNvbnRhaW5pbmcgdGhlIHppcC1maWxlCisgICAgICAgIHNlbGYuY3JlYXRlX2V4ZShhcmNuYW1lLCBmdWxsbmFtZSwgc2VsZi5iaXRtYXApCisgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19leHRfbW9kdWxlcygpOgorICAgICAgICAgICAgcHl2ZXJzaW9uID0gZ2V0X3B5dGhvbl92ZXJzaW9uKCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHB5dmVyc2lvbiA9ICdhbnknCisgICAgICAgIHNlbGYuZGlzdHJpYnV0aW9uLmRpc3RfZmlsZXMuYXBwZW5kKCgnYmRpc3Rfd2luaW5zdCcsIHB5dmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZ2V0X2luc3RhbGxlcl9maWxlbmFtZShmdWxsbmFtZSkpKQorICAgICAgICAjIHJlbW92ZSB0aGUgemlwLWZpbGUgYWdhaW4KKyAgICAgICAgbG9nZ2VyLmRlYnVnKCJyZW1vdmluZyB0ZW1wb3JhcnkgZmlsZSAnJXMnIiwgYXJjbmFtZSkKKyAgICAgICAgb3MucmVtb3ZlKGFyY25hbWUpCisKKyAgICAgICAgaWYgbm90IHNlbGYua2VlcF90ZW1wOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ3JlbW92aW5nICVzJywgc2VsZi5iZGlzdF9kaXIpCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgIHJtdHJlZShzZWxmLmJkaXN0X2RpcikKKworICAgIGRlZiBnZXRfaW5pZGF0YShzZWxmKToKKyAgICAgICAgIyBSZXR1cm4gZGF0YSBkZXNjcmliaW5nIHRoZSBpbnN0YWxsYXRpb24uCisKKyAgICAgICAgbGluZXMgPSBbXQorICAgICAgICBtZXRhZGF0YSA9IHNlbGYuZGlzdHJpYnV0aW9uLm1ldGFkYXRhCisKKyAgICAgICAgIyBXcml0ZSB0aGUgW21ldGFkYXRhXSBzZWN0aW9uLgorICAgICAgICBsaW5lcy5hcHBlbmQoIlttZXRhZGF0YV0iKQorCisgICAgICAgICMgJ2luZm8nIHdpbGwgYmUgZGlzcGxheWVkIGluIHRoZSBpbnN0YWxsZXIncyBkaWFsb2cgYm94LAorICAgICAgICAjIGRlc2NyaWJpbmcgdGhlIGl0ZW1zIHRvIGJlIGluc3RhbGxlZC4KKyAgICAgICAgaW5mbyA9IChtZXRhZGF0YS5sb25nX2Rlc2NyaXB0aW9uIG9yICcnKSArICdcbicKKworICAgICAgICAjIEVzY2FwZSBuZXdsaW5lIGNoYXJhY3RlcnMKKyAgICAgICAgZGVmIGVzY2FwZShzKToKKyAgICAgICAgICAgIHJldHVybiBzLnJlcGxhY2UoIlxuIiwgIlxcbiIpCisKKyAgICAgICAgZm9yIG5hbWUgaW4gWyJhdXRob3IiLCAiYXV0aG9yX2VtYWlsIiwgImRlc2NyaXB0aW9uIiwgIm1haW50YWluZXIiLAorICAgICAgICAgICAgICAgICAgICAgIm1haW50YWluZXJfZW1haWwiLCAibmFtZSIsICJ1cmwiLCAidmVyc2lvbiJdOgorICAgICAgICAgICAgZGF0YSA9IGdldGF0dHIobWV0YWRhdGEsIG5hbWUsICIiKQorICAgICAgICAgICAgaWYgZGF0YToKKyAgICAgICAgICAgICAgICBpbmZvID0gaW5mbyArICgiXG4gICAgJXM6ICVzIiAlIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmFtZS5jYXBpdGFsaXplKCksIGVzY2FwZShkYXRhKSkpCisgICAgICAgICAgICAgICAgbGluZXMuYXBwZW5kKCIlcz0lcyIgJSAobmFtZSwgZXNjYXBlKGRhdGEpKSkKKworICAgICAgICAjIFRoZSBbc2V0dXBdIHNlY3Rpb24gY29udGFpbnMgZW50cmllcyBjb250cm9sbGluZworICAgICAgICAjIHRoZSBpbnN0YWxsZXIgcnVudGltZS4KKyAgICAgICAgbGluZXMuYXBwZW5kKCJcbltTZXR1cF0iKQorICAgICAgICBpZiBzZWxmLmluc3RhbGxfc2NyaXB0OgorICAgICAgICAgICAgbGluZXMuYXBwZW5kKCJpbnN0YWxsX3NjcmlwdD0lcyIgJSBzZWxmLmluc3RhbGxfc2NyaXB0KQorICAgICAgICBsaW5lcy5hcHBlbmQoImluZm89JXMiICUgZXNjYXBlKGluZm8pKQorICAgICAgICBsaW5lcy5hcHBlbmQoInRhcmdldF9jb21waWxlPSVkIiAlIChub3Qgc2VsZi5ub190YXJnZXRfY29tcGlsZSkpCisgICAgICAgIGxpbmVzLmFwcGVuZCgidGFyZ2V0X29wdGltaXplPSVkIiAlIChub3Qgc2VsZi5ub190YXJnZXRfb3B0aW1pemUpKQorICAgICAgICBpZiBzZWxmLnRhcmdldF92ZXJzaW9uOgorICAgICAgICAgICAgbGluZXMuYXBwZW5kKCJ0YXJnZXRfdmVyc2lvbj0lcyIgJSBzZWxmLnRhcmdldF92ZXJzaW9uKQorICAgICAgICBpZiBzZWxmLnVzZXJfYWNjZXNzX2NvbnRyb2w6CisgICAgICAgICAgICBsaW5lcy5hcHBlbmQoInVzZXJfYWNjZXNzX2NvbnRyb2w9JXMiICUgc2VsZi51c2VyX2FjY2Vzc19jb250cm9sKQorCisgICAgICAgIHRpdGxlID0gc2VsZi50aXRsZSBvciBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfZnVsbG5hbWUoKQorICAgICAgICBsaW5lcy5hcHBlbmQoInRpdGxlPSVzIiAlIGVzY2FwZSh0aXRsZSkpCisgICAgICAgIGltcG9ydCB0aW1lCisgICAgICAgIGltcG9ydCBwYWNrYWdpbmcKKyAgICAgICAgYnVpbGRfaW5mbyA9ICJCdWlsdCAlcyB3aXRoIHBhY2thZ2luZy0lcyIgJSBcCisgICAgICAgICAgICAgICAgICAgICAodGltZS5jdGltZSh0aW1lLnRpbWUoKSksIHBhY2thZ2luZy5fX3ZlcnNpb25fXykKKyAgICAgICAgbGluZXMuYXBwZW5kKCJidWlsZF9pbmZvPSVzIiAlIGJ1aWxkX2luZm8pCisgICAgICAgIHJldHVybiAiXG4iLmpvaW4obGluZXMpCisKKyAgICBkZWYgY3JlYXRlX2V4ZShzZWxmLCBhcmNuYW1lLCBmdWxsbmFtZSwgYml0bWFwPU5vbmUpOgorICAgICAgICBpbXBvcnQgc3RydWN0CisKKyAgICAgICAgc2VsZi5ta3BhdGgoc2VsZi5kaXN0X2RpcikKKworICAgICAgICBjZmdkYXRhID0gc2VsZi5nZXRfaW5pZGF0YSgpCisKKyAgICAgICAgaW5zdGFsbGVyX25hbWUgPSBzZWxmLmdldF9pbnN0YWxsZXJfZmlsZW5hbWUoZnVsbG5hbWUpCisgICAgICAgIGxvZ2dlci5pbmZvKCJjcmVhdGluZyAlcyIsIGluc3RhbGxlcl9uYW1lKQorCisgICAgICAgIGlmIGJpdG1hcDoKKyAgICAgICAgICAgIHdpdGggb3BlbihiaXRtYXAsICJyYiIpIGFzIGZwOgorICAgICAgICAgICAgICAgIGJpdG1hcGRhdGEgPSBmcC5yZWFkKCkKKyAgICAgICAgICAgIGJpdG1hcGxlbiA9IGxlbihiaXRtYXBkYXRhKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgYml0bWFwbGVuID0gMAorCisgICAgICAgIHdpdGggb3BlbihpbnN0YWxsZXJfbmFtZSwgIndiIikgYXMgZmlsZToKKyAgICAgICAgICAgIGZpbGUud3JpdGUoc2VsZi5nZXRfZXhlX2J5dGVzKCkpCisgICAgICAgICAgICBpZiBiaXRtYXA6CisgICAgICAgICAgICAgICAgZmlsZS53cml0ZShiaXRtYXBkYXRhKQorCisgICAgICAgICAgICAjIENvbnZlcnQgY2ZnZGF0YSBmcm9tIHVuaWNvZGUgdG8gYXNjaWksIG1iY3MgZW5jb2RlZAorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShjZmdkYXRhLCBzdHIpOgorICAgICAgICAgICAgICAgIGNmZ2RhdGEgPSBjZmdkYXRhLmVuY29kZSgibWJjcyIpCisKKyAgICAgICAgICAgICMgQXBwZW5kIHRoZSBwcmUtaW5zdGFsbCBzY3JpcHQKKyAgICAgICAgICAgIGNmZ2RhdGEgPSBjZmdkYXRhICsgYiJcMCIKKyAgICAgICAgICAgIGlmIHNlbGYucHJlX2luc3RhbGxfc2NyaXB0OgorICAgICAgICAgICAgICAgICMgV2UgbmVlZCB0byBub3JtYWxpemUgbmV3bGluZXMsIHNvIHdlIG9wZW4gaW4gdGV4dCBtb2RlIGFuZAorICAgICAgICAgICAgICAgICMgY29udmVydCBiYWNrIHRvIGJ5dGVzLiAibGF0aW4tMSIgc2ltcGx5IGF2b2lkcyBhbnkgcG9zc2libGUKKyAgICAgICAgICAgICAgICAjIGZhaWx1cmVzLgorICAgICAgICAgICAgICAgIHdpdGggb3BlbihzZWxmLnByZV9pbnN0YWxsX3NjcmlwdCwgZW5jb2Rpbmc9ImxhdGluLTEiKSBhcyBmcDoKKyAgICAgICAgICAgICAgICAgICAgc2NyaXB0X2RhdGEgPSBmcC5yZWFkKCkuZW5jb2RlKCJsYXRpbi0xIikKKyAgICAgICAgICAgICAgICBjZmdkYXRhID0gY2ZnZGF0YSArIHNjcmlwdF9kYXRhICsgYiJcblwwIgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIGVtcHR5IHByZS1pbnN0YWxsIHNjcmlwdAorICAgICAgICAgICAgICAgIGNmZ2RhdGEgPSBjZmdkYXRhICsgYiJcMCIKKyAgICAgICAgICAgIGZpbGUud3JpdGUoY2ZnZGF0YSkKKworICAgICAgICAgICAgIyBUaGUgJ21hZ2ljIG51bWJlcicgMHgxMjM0NTY3QiBpcyB1c2VkIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZQorICAgICAgICAgICAgIyBiaW5hcnkgbGF5b3V0IG9mICdjZmdkYXRhJyBpcyB3aGF0IHRoZSB3aW5pbnN0LmV4ZSBiaW5hcnkKKyAgICAgICAgICAgICMgZXhwZWN0cy4gIElmIHRoZSBsYXlvdXQgY2hhbmdlcywgaW5jcmVtZW50IHRoYXQgbnVtYmVyLCBtYWtlCisgICAgICAgICAgICAjIHRoZSBjb3JyZXNwb25kaW5nIGNoYW5nZXMgdG8gdGhlIHdpbmluc3QuZXhlIHNvdXJjZXMsIGFuZAorICAgICAgICAgICAgIyByZWNvbXBpbGUgdGhlbS4KKyAgICAgICAgICAgIGhlYWRlciA9IHN0cnVjdC5wYWNrKCI8aWlpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTIzNDU2N0IsICAgICAgICMgdGFnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oY2ZnZGF0YSksICAgICAjIGxlbmd0aAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYml0bWFwbGVuLCAgICAgICAgIyBudW1iZXIgb2YgYnl0ZXMgaW4gYml0bWFwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICBmaWxlLndyaXRlKGhlYWRlcikKKyAgICAgICAgICAgIHdpdGggb3BlbihhcmNuYW1lLCAicmIiKSBhcyBmcDoKKyAgICAgICAgICAgICAgICBmaWxlLndyaXRlKGZwLnJlYWQoKSkKKworICAgIGRlZiBnZXRfaW5zdGFsbGVyX2ZpbGVuYW1lKHNlbGYsIGZ1bGxuYW1lKToKKyAgICAgICAgIyBGYWN0b3JlZCBvdXQgdG8gYWxsb3cgb3ZlcnJpZGluZyBpbiBzdWJjbGFzc2VzCisgICAgICAgIGlmIHNlbGYudGFyZ2V0X3ZlcnNpb246CisgICAgICAgICAgICAjIGlmIHdlIGNyZWF0ZSBhbiBpbnN0YWxsZXIgZm9yIGEgc3BlY2lmaWMgcHl0aG9uIHZlcnNpb24sCisgICAgICAgICAgICAjIGl0J3MgYmV0dGVyIHRvIGluY2x1ZGUgdGhpcyBpbiB0aGUgbmFtZQorICAgICAgICAgICAgaW5zdGFsbGVyX25hbWUgPSBvcy5wYXRoLmpvaW4oc2VsZi5kaXN0X2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlcy4lcy1weSVzLmV4ZSIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdWxsbmFtZSwgc2VsZi5wbGF0X25hbWUsIHNlbGYudGFyZ2V0X3ZlcnNpb24pKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgaW5zdGFsbGVyX25hbWUgPSBvcy5wYXRoLmpvaW4oc2VsZi5kaXN0X2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlcy4lcy5leGUiICUgKGZ1bGxuYW1lLCBzZWxmLnBsYXRfbmFtZSkpCisgICAgICAgIHJldHVybiBpbnN0YWxsZXJfbmFtZQorCisgICAgZGVmIGdldF9leGVfYnl0ZXMoc2VsZik6CisgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLm1zdmNjb21waWxlciBpbXBvcnQgZ2V0X2J1aWxkX3ZlcnNpb24KKyAgICAgICAgIyBJZiBhIHRhcmdldC12ZXJzaW9uIG90aGVyIHRoYW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBoYXMgYmVlbgorICAgICAgICAjIHNwZWNpZmllZCwgdGhlbiB1c2luZyB0aGUgTVNWQyB2ZXJzaW9uIGZyb20gKnRoaXMqIGJ1aWxkIGlzIG5vIGdvb2QuCisgICAgICAgICMgV2l0aG91dCBhY3R1YWxseSBmaW5kaW5nIGFuZCBleGVjdXRpbmcgdGhlIHRhcmdldCB2ZXJzaW9uIGFuZCBwYXJzaW5nCisgICAgICAgICMgaXRzIHN5cy52ZXJzaW9uLCB3ZSBqdXN0IGhhcmQtY29kZSBvdXIga25vd2xlZGdlIG9mIG9sZCB2ZXJzaW9ucy4KKyAgICAgICAgIyBOT1RFOiBQb3NzaWJsZSBhbHRlcm5hdGl2ZSBpcyB0byBhbGxvdyAiLS10YXJnZXQtdmVyc2lvbiIgdG8KKyAgICAgICAgIyBzcGVjaWZ5IGEgUHl0aG9uIGV4ZWN1dGFibGUgcmF0aGVyIHRoYW4gYSBzaW1wbGUgdmVyc2lvbiBzdHJpbmcuCisgICAgICAgICMgV2UgY2FuIHRoZW4gZXhlY3V0ZSB0aGlzIHByb2dyYW0gdG8gb2J0YWluIGFueSBpbmZvIHdlIG5lZWQsIHN1Y2gKKyAgICAgICAgIyBhcyB0aGUgcmVhbCBzeXMudmVyc2lvbiBzdHJpbmcgZm9yIHRoZSBidWlsZC4KKyAgICAgICAgY3VyX3ZlcnNpb24gPSBnZXRfcHl0aG9uX3ZlcnNpb24oKQorICAgICAgICBpZiBzZWxmLnRhcmdldF92ZXJzaW9uIGFuZCBzZWxmLnRhcmdldF92ZXJzaW9uICE9IGN1cl92ZXJzaW9uOgorICAgICAgICAgICAgIyBJZiB0aGUgdGFyZ2V0IHZlcnNpb24gaXMgKmxhdGVyKiB0aGFuIHVzLCB0aGVuIHdlIGFzc3VtZSB0aGV5CisgICAgICAgICAgICAjIHVzZSB3aGF0IHdlIHVzZQorICAgICAgICAgICAgIyBzdHJpbmcgY29tcGFyZXMgc2VlbSB3cm9uZywgYnV0IGFyZSB3aGF0IHN5c2NvbmZpZy5weSBpdHNlbGYgdXNlcworICAgICAgICAgICAgaWYgc2VsZi50YXJnZXRfdmVyc2lvbiA+IGN1cl92ZXJzaW9uOgorICAgICAgICAgICAgICAgIGJ2ID0gZ2V0X2J1aWxkX3ZlcnNpb24oKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnRhcmdldF92ZXJzaW9uIDwgIjIuNCI6CisgICAgICAgICAgICAgICAgICAgIGJ2ID0gNi4wCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgYnYgPSA3LjEKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgZm9yIGN1cnJlbnQgdmVyc2lvbiAtIHVzZSBhdXRob3JpdGF0aXZlIGNoZWNrLgorICAgICAgICAgICAgYnYgPSBnZXRfYnVpbGRfdmVyc2lvbigpCisKKyAgICAgICAgIyB3aW5pbnN0LXgueS5leGUgaXMgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzIHRoaXMgZmlsZQorICAgICAgICBkaXJlY3RvcnkgPSBvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pCisgICAgICAgICMgd2UgbXVzdCB1c2UgYSB3aW5pbnN0LXgueS5leGUgYnVpbHQgd2l0aCB0aGUgc2FtZSBDIGNvbXBpbGVyCisgICAgICAgICMgdXNlZCBmb3IgcHl0aG9uLiAgWFhYIFdoYXQgYWJvdXQgbWluZ3csIGJvcmxhbmQsIGFuZCBzbyBvbj8KKworICAgICAgICAjIGlmIHBsYXRfbmFtZSBzdGFydHMgd2l0aCAid2luIiBidXQgaXMgbm90ICJ3aW4zMiIKKyAgICAgICAgIyB3ZSB3YW50IHRvIHN0cmlwICJ3aW4iIGFuZCBsZWF2ZSB0aGUgcmVzdCAoZS5nLiAtYW1kNjQpCisgICAgICAgICMgZm9yIGFsbCBvdGhlciBjYXNlcywgd2UgZG9uJ3Qgd2FudCBhbnkgc3VmZml4CisgICAgICAgIGlmIHNlbGYucGxhdF9uYW1lICE9ICd3aW4zMicgYW5kIHNlbGYucGxhdF9uYW1lWzozXSA9PSAnd2luJzoKKyAgICAgICAgICAgIHNmaXggPSBzZWxmLnBsYXRfbmFtZVszOl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNmaXggPSAnJworCisgICAgICAgIGZpbGVuYW1lID0gb3MucGF0aC5qb2luKGRpcmVjdG9yeSwgIndpbmluc3QtJS4xZiVzLmV4ZSIgJSAoYnYsIHNmaXgpKQorICAgICAgICB3aXRoIG9wZW4oZmlsZW5hbWUsICJyYiIpIGFzIGZwOgorICAgICAgICAgICAgcmV0dXJuIGZwLnJlYWQoKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZjYjUwZGYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYnVpbGQucHkKQEAgLTAsMCArMSwxNTEgQEAKKyIiIk1haW4gYnVpbGQgY29tbWFuZCwgd2hpY2ggY2FsbHMgdGhlIG90aGVyIGJ1aWxkXyogY29tbWFuZHMuIiIiCisKK2ltcG9ydCBzeXMKK2ltcG9ydCBvcworCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBnZXRfcGxhdGZvcm0KK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCitmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgc2hvd19jb21waWxlcnMKKworCitjbGFzcyBidWlsZChDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gImJ1aWxkIGV2ZXJ5dGhpbmcgbmVlZGVkIHRvIGluc3RhbGwiCisKKyAgICB1c2VyX29wdGlvbnMgPSBbCisgICAgICAgICgnYnVpbGQtYmFzZT0nLCAnYicsCisgICAgICAgICAiYmFzZSBkaXJlY3RvcnkgZm9yIGJ1aWxkIGxpYnJhcnkiKSwKKyAgICAgICAgKCdidWlsZC1wdXJlbGliPScsIE5vbmUsCisgICAgICAgICAiYnVpbGQgZGlyZWN0b3J5IGZvciBwbGF0Zm9ybS1uZXV0cmFsIGRpc3RyaWJ1dGlvbnMiKSwKKyAgICAgICAgKCdidWlsZC1wbGF0bGliPScsIE5vbmUsCisgICAgICAgICAiYnVpbGQgZGlyZWN0b3J5IGZvciBwbGF0Zm9ybS1zcGVjaWZpYyBkaXN0cmlidXRpb25zIiksCisgICAgICAgICgnYnVpbGQtbGliPScsIE5vbmUsCisgICAgICAgICAiYnVpbGQgZGlyZWN0b3J5IGZvciBhbGwgZGlzdHJpYnV0aW9uIChkZWZhdWx0cyB0byBlaXRoZXIgIiArCisgICAgICAgICAiYnVpbGQtcHVyZWxpYiBvciBidWlsZC1wbGF0bGliIiksCisgICAgICAgICgnYnVpbGQtc2NyaXB0cz0nLCBOb25lLAorICAgICAgICAgImJ1aWxkIGRpcmVjdG9yeSBmb3Igc2NyaXB0cyIpLAorICAgICAgICAoJ2J1aWxkLXRlbXA9JywgJ3QnLAorICAgICAgICAgInRlbXBvcmFyeSBidWlsZCBkaXJlY3RvcnkiKSwKKyAgICAgICAgKCdwbGF0LW5hbWU9JywgJ3AnLAorICAgICAgICAgInBsYXRmb3JtIG5hbWUgdG8gYnVpbGQgZm9yLCBpZiBzdXBwb3J0ZWQgIgorICAgICAgICAgIihkZWZhdWx0OiAlcykiICUgZ2V0X3BsYXRmb3JtKCkpLAorICAgICAgICAoJ2NvbXBpbGVyPScsICdjJywKKyAgICAgICAgICJzcGVjaWZ5IHRoZSBjb21waWxlciB0eXBlIiksCisgICAgICAgICgnZGVidWcnLCAnZycsCisgICAgICAgICAiY29tcGlsZSBleHRlbnNpb25zIGFuZCBsaWJyYXJpZXMgd2l0aCBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24iKSwKKyAgICAgICAgKCdmb3JjZScsICdmJywKKyAgICAgICAgICJmb3JjaWJseSBidWlsZCBldmVyeXRoaW5nIChpZ25vcmUgZmlsZSB0aW1lc3RhbXBzKSIpLAorICAgICAgICAoJ2V4ZWN1dGFibGU9JywgJ2UnLAorICAgICAgICAgInNwZWNpZnkgZmluYWwgZGVzdGluYXRpb24gaW50ZXJwcmV0ZXIgcGF0aCAoYnVpbGQucHkpIiksCisgICAgICAgICgndXNlLTJ0bzMnLCBOb25lLAorICAgICAgICAgInVzZSAydG8zIHRvIG1ha2Ugc291cmNlIHB5dGhvbiAzLnggY29tcGF0aWJsZSIpLAorICAgICAgICAoJ2NvbnZlcnQtMnRvMy1kb2N0ZXN0cycsIE5vbmUsCisgICAgICAgICAidXNlIDJ0bzMgdG8gY29udmVydCBkb2N0ZXN0cyBpbiBzZXBhcmF0ZSB0ZXh0IGZpbGVzIiksCisgICAgICAgICgndXNlLTJ0bzMtZml4ZXJzJywgTm9uZSwKKyAgICAgICAgICJsaXN0IGFkZGl0aW9uYWwgZml4ZXJzIG9wdGVkIGZvciBkdXJpbmcgMnRvMyBjb252ZXJzaW9uIiksCisgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsnZGVidWcnLCAnZm9yY2UnXQorCisgICAgaGVscF9vcHRpb25zID0gWworICAgICAgICAoJ2hlbHAtY29tcGlsZXInLCBOb25lLAorICAgICAgICAgImxpc3QgYXZhaWxhYmxlIGNvbXBpbGVycyIsIHNob3dfY29tcGlsZXJzKSwKKyAgICAgICAgXQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5idWlsZF9iYXNlID0gJ2J1aWxkJworICAgICAgICAjIHRoZXNlIGFyZSBkZWNpZGVkIG9ubHkgYWZ0ZXIgJ2J1aWxkX2Jhc2UnIGhhcyBpdHMgZmluYWwgdmFsdWUKKyAgICAgICAgIyAodW5sZXNzIG92ZXJyaWRkZW4gYnkgdGhlIHVzZXIgb3IgY2xpZW50KQorICAgICAgICBzZWxmLmJ1aWxkX3B1cmVsaWIgPSBOb25lCisgICAgICAgIHNlbGYuYnVpbGRfcGxhdGxpYiA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9saWIgPSBOb25lCisgICAgICAgIHNlbGYuYnVpbGRfdGVtcCA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9zY3JpcHRzID0gTm9uZQorICAgICAgICBzZWxmLmNvbXBpbGVyID0gTm9uZQorICAgICAgICBzZWxmLnBsYXRfbmFtZSA9IE5vbmUKKyAgICAgICAgc2VsZi5kZWJ1ZyA9IE5vbmUKKyAgICAgICAgc2VsZi5mb3JjZSA9IEZhbHNlCisgICAgICAgIHNlbGYuZXhlY3V0YWJsZSA9IE5vbmUKKyAgICAgICAgc2VsZi51c2VfMnRvMyA9IEZhbHNlCisgICAgICAgIHNlbGYuY29udmVydF8ydG8zX2RvY3Rlc3RzID0gTm9uZQorICAgICAgICBzZWxmLnVzZV8ydG8zX2ZpeGVycyA9IE5vbmUKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBpZiBzZWxmLnBsYXRfbmFtZSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5wbGF0X25hbWUgPSBnZXRfcGxhdGZvcm0oKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBwbGF0LW5hbWUgb25seSBzdXBwb3J0ZWQgZm9yIHdpbmRvd3MgKG90aGVyIHBsYXRmb3JtcyBhcmUKKyAgICAgICAgICAgICMgc3VwcG9ydGVkIHZpYSAuL2NvbmZpZ3VyZSBmbGFncywgaWYgYXQgYWxsKS4gIEF2b2lkIG1pc2xlYWRpbmcKKyAgICAgICAgICAgICMgb3RoZXIgcGxhdGZvcm1zLgorICAgICAgICAgICAgaWYgb3MubmFtZSAhPSAnbnQnOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICItLXBsYXQtbmFtZSBvbmx5IHN1cHBvcnRlZCBvbiBXaW5kb3dzICh0cnkgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2luZyAnLi9jb25maWd1cmUgLS1oZWxwJyBvbiB5b3VyIHBsYXRmb3JtKSIpCisgICAgICAgIHB5dmVyc2lvbiA9ICclcy4lcycgJSBzeXMudmVyc2lvbl9pbmZvWzoyXQorICAgICAgICBwbGF0X3NwZWNpZmllciA9ICIuJXMtJXMiICUgKHNlbGYucGxhdF9uYW1lLCBweXZlcnNpb24pCisKKyAgICAgICAgIyBNYWtlIGl0IHNvIFB5dGhvbiAyLnggYW5kIFB5dGhvbiAyLnggd2l0aCAtLXdpdGgtcHlkZWJ1ZyBkb24ndAorICAgICAgICAjIHNoYXJlIHRoZSBzYW1lIGJ1aWxkIGRpcmVjdG9yaWVzLiBEb2luZyBzbyBjb25mdXNlcyB0aGUgYnVpbGQKKyAgICAgICAgIyBwcm9jZXNzIGZvciBDIG1vZHVsZXMKKyAgICAgICAgaWYgaGFzYXR0cihzeXMsICdnZXR0b3RhbHJlZmNvdW50Jyk6CisgICAgICAgICAgICBwbGF0X3NwZWNpZmllciArPSAnLXB5ZGVidWcnCisKKyAgICAgICAgIyAnYnVpbGRfcHVyZWxpYicgYW5kICdidWlsZF9wbGF0bGliJyBqdXN0IGRlZmF1bHQgdG8gJ2xpYicgYW5kCisgICAgICAgICMgJ2xpYi48cGxhdD4nIHVuZGVyIHRoZSBiYXNlIGJ1aWxkIGRpcmVjdG9yeS4gIFdlIG9ubHkgdXNlIG9uZSBvZgorICAgICAgICAjIHRoZW0gZm9yIGEgZ2l2ZW4gZGlzdHJpYnV0aW9uLCB0aG91Z2ggLS0KKyAgICAgICAgaWYgc2VsZi5idWlsZF9wdXJlbGliIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmJ1aWxkX3B1cmVsaWIgPSBvcy5wYXRoLmpvaW4oc2VsZi5idWlsZF9iYXNlLCAnbGliJykKKyAgICAgICAgaWYgc2VsZi5idWlsZF9wbGF0bGliIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmJ1aWxkX3BsYXRsaWIgPSBvcy5wYXRoLmpvaW4oc2VsZi5idWlsZF9iYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsaWInICsgcGxhdF9zcGVjaWZpZXIpCisKKyAgICAgICAgIyAnYnVpbGRfbGliJyBpcyB0aGUgYWN0dWFsIGRpcmVjdG9yeSB0aGF0IHdlIHdpbGwgdXNlIGZvciB0aGlzCisgICAgICAgICMgcGFydGljdWxhciBtb2R1bGUgZGlzdHJpYnV0aW9uIC0tIGlmIHVzZXIgZGlkbid0IHN1cHBseSBpdCwgcGljaworICAgICAgICAjIG9uZSBvZiAnYnVpbGRfcHVyZWxpYicgb3IgJ2J1aWxkX3BsYXRsaWInLgorICAgICAgICBpZiBzZWxmLmJ1aWxkX2xpYiBpcyBOb25lOgorICAgICAgICAgICAgaWYgc2VsZi5kaXN0cmlidXRpb24uZXh0X21vZHVsZXM6CisgICAgICAgICAgICAgICAgc2VsZi5idWlsZF9saWIgPSBzZWxmLmJ1aWxkX3BsYXRsaWIKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5idWlsZF9saWIgPSBzZWxmLmJ1aWxkX3B1cmVsaWIKKworICAgICAgICAjICdidWlsZF90ZW1wJyAtLSB0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvciBjb21waWxlciB0dXJkcywKKyAgICAgICAgIyAiYnVpbGQvdGVtcC48cGxhdD4iCisgICAgICAgIGlmIHNlbGYuYnVpbGRfdGVtcCBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5idWlsZF90ZW1wID0gb3MucGF0aC5qb2luKHNlbGYuYnVpbGRfYmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGVtcCcgKyBwbGF0X3NwZWNpZmllcikKKyAgICAgICAgaWYgc2VsZi5idWlsZF9zY3JpcHRzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmJ1aWxkX3NjcmlwdHMgPSBvcy5wYXRoLmpvaW4oc2VsZi5idWlsZF9iYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzY3JpcHRzLScgKyBweXZlcnNpb24pCisKKyAgICAgICAgaWYgc2VsZi5leGVjdXRhYmxlIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmV4ZWN1dGFibGUgPSBvcy5wYXRoLm5vcm1wYXRoKHN5cy5leGVjdXRhYmxlKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgIyBSdW4gYWxsIHJlbGV2YW50IHN1Yi1jb21tYW5kcy4gIFRoaXMgd2lsbCBiZSBzb21lIHN1YnNldCBvZjoKKyAgICAgICAgIyAgLSBidWlsZF9weSAgICAgIC0gcHVyZSBQeXRob24gbW9kdWxlcworICAgICAgICAjICAtIGJ1aWxkX2NsaWIgICAgLSBzdGFuZGFsb25lIEMgbGlicmFyaWVzCisgICAgICAgICMgIC0gYnVpbGRfZXh0ICAgICAtIFB5dGhvbiBleHRlbnNpb24gbW9kdWxlcworICAgICAgICAjICAtIGJ1aWxkX3NjcmlwdHMgLSBQeXRob24gc2NyaXB0cworICAgICAgICBmb3IgY21kX25hbWUgaW4gc2VsZi5nZXRfc3ViX2NvbW1hbmRzKCk6CisgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKGNtZF9uYW1lKQorCisgICAgIyAtLSBQcmVkaWNhdGVzIGZvciB0aGUgc3ViLWNvbW1hbmQgbGlzdCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBoYXNfcHVyZV9tb2R1bGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uaGFzX3B1cmVfbW9kdWxlcygpCisKKyAgICBkZWYgaGFzX2NfbGlicmFyaWVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uaGFzX2NfbGlicmFyaWVzKCkKKworICAgIGRlZiBoYXNfZXh0X21vZHVsZXMoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKQorCisgICAgZGVmIGhhc19zY3JpcHRzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uaGFzX3NjcmlwdHMoKQorCisgICAgc3ViX2NvbW1hbmRzID0gWygnYnVpbGRfcHknLCBoYXNfcHVyZV9tb2R1bGVzKSwKKyAgICAgICAgICAgICAgICAgICAgKCdidWlsZF9jbGliJywgaGFzX2NfbGlicmFyaWVzKSwKKyAgICAgICAgICAgICAgICAgICAgKCdidWlsZF9leHQnLCBoYXNfZXh0X21vZHVsZXMpLAorICAgICAgICAgICAgICAgICAgICAoJ2J1aWxkX3NjcmlwdHMnLCBoYXNfc2NyaXB0cyksCisgICAgICAgICAgICAgICAgICAgXQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX2NsaWIucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYnVpbGRfY2xpYi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41Mzg4Y2NkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX2NsaWIucHkKQEAgLTAsMCArMSwxOTcgQEAKKyIiIkJ1aWxkIEMvQysrIGxpYnJhcmllcy4KKworVGhpcyBjb21tYW5kIGlzIHVzZWZ1bCB0byBidWlsZCBsaWJyYXJpZXMgdGhhdCBhcmUgaW5jbHVkZWQgaW4gdGhlCitkaXN0cmlidXRpb24gYW5kIG5lZWRlZCBieSBleHRlbnNpb24gbW9kdWxlcy4KKyIiIgorCisjIFhYWCB0aGlzIG1vZHVsZSBoYXMgKmxvdHMqIG9mIGNvZGUgcmlwcGVkLW9mZiBxdWl0ZSB0cmFuc3BhcmVudGx5IGZyb20KKyMgYnVpbGRfZXh0LnB5IC0tIG5vdCBzdXJwcmlzaW5nbHkgcmVhbGx5LCBhcyB0aGUgd29yayByZXF1aXJlZCB0byBidWlsZAorIyBhIHN0YXRpYyBsaWJyYXJ5IGZyb20gYSBjb2xsZWN0aW9uIG9mIEMgc291cmNlIGZpbGVzIGlzIG5vdCByZWFsbHkgYWxsCisjIHRoYXQgZGlmZmVyZW50IGZyb20gd2hhdCdzIHJlcXVpcmVkIHRvIGJ1aWxkIGEgc2hhcmVkIG9iamVjdCBmaWxlIGZyb20KKyMgYSBjb2xsZWN0aW9uIG9mIEMgc291cmNlIGZpbGVzLiAgTmV2ZXJ0aGVsZXNzLCBJIGhhdmVuJ3QgZG9uZSB0aGUKKyMgbmVjZXNzYXJ5IHJlZmFjdG9yaW5nIHRvIGFjY291bnQgZm9yIHRoZSBvdmVybGFwIGluIGNvZGUgYmV0d2VlbiB0aGUKKyMgdHdvIG1vZHVsZXMsIG1haW5seSBiZWNhdXNlIGEgbnVtYmVyIG9mIHN1YnRsZSBkZXRhaWxzIGNoYW5nZWQgaW4gdGhlCisjIGN1dCAnbiBwYXN0ZS4gIFNpZ2guCisKK2ltcG9ydCBvcworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nU2V0dXBFcnJvcgorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IGN1c3RvbWl6ZV9jb21waWxlciwgbmV3X2NvbXBpbGVyCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCisKKworZGVmIHNob3dfY29tcGlsZXJzKCk6CisgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IHNob3dfY29tcGlsZXJzCisgICAgc2hvd19jb21waWxlcnMoKQorCisKK2NsYXNzIGJ1aWxkX2NsaWIoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJidWlsZCBDL0MrKyBsaWJyYXJpZXMgdXNlZCBieSBleHRlbnNpb24gbW9kdWxlcyIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdidWlsZC1jbGliPScsICdiJywKKyAgICAgICAgICJkaXJlY3RvcnkgdG8gYnVpbGQgQy9DKysgbGlicmFyaWVzIHRvIiksCisgICAgICAgICgnYnVpbGQtdGVtcD0nLCAndCcsCisgICAgICAgICAiZGlyZWN0b3J5IHRvIHB1dCB0ZW1wb3JhcnkgYnVpbGQgYnktcHJvZHVjdHMiKSwKKyAgICAgICAgKCdkZWJ1ZycsICdnJywKKyAgICAgICAgICJjb21waWxlIHdpdGggZGVidWdnaW5nIGluZm9ybWF0aW9uIiksCisgICAgICAgICgnZm9yY2UnLCAnZicsCisgICAgICAgICAiZm9yY2libHkgYnVpbGQgZXZlcnl0aGluZyAoaWdub3JlIGZpbGUgdGltZXN0YW1wcykiKSwKKyAgICAgICAgKCdjb21waWxlcj0nLCAnYycsCisgICAgICAgICAic3BlY2lmeSB0aGUgY29tcGlsZXIgdHlwZSIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2RlYnVnJywgJ2ZvcmNlJ10KKworICAgIGhlbHBfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdoZWxwLWNvbXBpbGVyJywgTm9uZSwKKyAgICAgICAgICJsaXN0IGF2YWlsYWJsZSBjb21waWxlcnMiLCBzaG93X2NvbXBpbGVycyksCisgICAgICAgIF0KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuYnVpbGRfY2xpYiA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF90ZW1wID0gTm9uZQorCisgICAgICAgICMgTGlzdCBvZiBsaWJyYXJpZXMgdG8gYnVpbGQKKyAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBOb25lCisKKyAgICAgICAgIyBDb21waWxhdGlvbiBvcHRpb25zIGZvciBhbGwgbGlicmFyaWVzCisgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzID0gTm9uZQorICAgICAgICBzZWxmLmRlZmluZSA9IE5vbmUKKyAgICAgICAgc2VsZi51bmRlZiA9IE5vbmUKKyAgICAgICAgc2VsZi5kZWJ1ZyA9IE5vbmUKKyAgICAgICAgc2VsZi5mb3JjZSA9IEZhbHNlCisgICAgICAgIHNlbGYuY29tcGlsZXIgPSBOb25lCisKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICAjIFRoaXMgbWlnaHQgYmUgY29uZnVzaW5nOiBib3RoIGJ1aWxkLWNsaWIgYW5kIGJ1aWxkLXRlbXAgZGVmYXVsdAorICAgICAgICAjIHRvIGJ1aWxkLXRlbXAgYXMgZGVmaW5lZCBieSB0aGUgImJ1aWxkIiBjb21tYW5kLiAgVGhpcyBpcyBiZWNhdXNlCisgICAgICAgICMgSSB0aGluayB0aGF0IEMgbGlicmFyaWVzIGFyZSByZWFsbHkganVzdCB0ZW1wb3JhcnkgYnVpbGQKKyAgICAgICAgIyBieS1wcm9kdWN0cywgYXQgbGVhc3QgZnJvbSB0aGUgcG9pbnQgb2YgdmlldyBvZiBidWlsZGluZyBQeXRob24KKyAgICAgICAgIyBleHRlbnNpb25zIC0tIGJ1dCBJIHdhbnQgdG8ga2VlcCBteSBvcHRpb25zIG9wZW4uCisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdidWlsZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnYnVpbGRfdGVtcCcsICdidWlsZF9jbGliJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnYnVpbGRfdGVtcCcsICdidWlsZF90ZW1wJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjb21waWxlcicsICdkZWJ1ZycsICdmb3JjZScpCisKKyAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5saWJyYXJpZXMKKyAgICAgICAgaWYgc2VsZi5saWJyYXJpZXM6CisgICAgICAgICAgICBzZWxmLmNoZWNrX2xpYnJhcnlfbGlzdChzZWxmLmxpYnJhcmllcykKKworICAgICAgICBpZiBzZWxmLmluY2x1ZGVfZGlycyBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5pbmNsdWRlX2RpcnMgb3IgW10KKyAgICAgICAgaWYgaXNpbnN0YW5jZShzZWxmLmluY2x1ZGVfZGlycywgc3RyKToKKyAgICAgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzID0gc2VsZi5pbmNsdWRlX2RpcnMuc3BsaXQob3MucGF0aHNlcCkKKworICAgICAgICAjIFhYWCBzYW1lIGFzIGZvciBidWlsZF9leHQgLS0gd2hhdCBhYm91dCAnc2VsZi5kZWZpbmUnIGFuZAorICAgICAgICAjICdzZWxmLnVuZGVmJyA/CisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5saWJyYXJpZXM6CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICAjIFllY2ggLS0gdGhpcyBpcyBjdXQgJ24gcGFzdGVkIGZyb20gYnVpbGRfZXh0LnB5IQorICAgICAgICBzZWxmLmNvbXBpbGVyID0gbmV3X2NvbXBpbGVyKGNvbXBpbGVyPXNlbGYuY29tcGlsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJ5X3J1bj1zZWxmLmRyeV9ydW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2U9c2VsZi5mb3JjZSkKKyAgICAgICAgY3VzdG9taXplX2NvbXBpbGVyKHNlbGYuY29tcGlsZXIpCisKKyAgICAgICAgaWYgc2VsZi5pbmNsdWRlX2RpcnMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVyLnNldF9pbmNsdWRlX2RpcnMoc2VsZi5pbmNsdWRlX2RpcnMpCisgICAgICAgIGlmIHNlbGYuZGVmaW5lIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgIyAnZGVmaW5lJyBvcHRpb24gaXMgYSBsaXN0IG9mIChuYW1lLHZhbHVlKSB0dXBsZXMKKyAgICAgICAgICAgIGZvciBuYW1lLCB2YWx1ZSBpbiBzZWxmLmRlZmluZToKKyAgICAgICAgICAgICAgICBzZWxmLmNvbXBpbGVyLmRlZmluZV9tYWNybyhuYW1lLCB2YWx1ZSkKKyAgICAgICAgaWYgc2VsZi51bmRlZiBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIGZvciBtYWNybyBpbiBzZWxmLnVuZGVmOgorICAgICAgICAgICAgICAgIHNlbGYuY29tcGlsZXIudW5kZWZpbmVfbWFjcm8obWFjcm8pCisKKyAgICAgICAgc2VsZi5idWlsZF9saWJyYXJpZXMoc2VsZi5saWJyYXJpZXMpCisKKworICAgIGRlZiBjaGVja19saWJyYXJ5X2xpc3Qoc2VsZiwgbGlicmFyaWVzKToKKyAgICAgICAgIiIiRW5zdXJlIHRoYXQgdGhlIGxpc3Qgb2YgbGlicmFyaWVzIGlzIHZhbGlkLgorCisgICAgICAgIGBsaWJyYXJ5YCBpcyBwcmVzdW1hYmx5IHByb3ZpZGVkIGFzIGEgY29tbWFuZCBvcHRpb24gJ2xpYnJhcmllcycuCisgICAgICAgIFRoaXMgbWV0aG9kIGNoZWNrcyB0aGF0IGl0IGlzIGEgbGlzdCBvZiAyLXR1cGxlcywgd2hlcmUgdGhlIHR1cGxlcworICAgICAgICBhcmUgKGxpYnJhcnlfbmFtZSwgYnVpbGRfaW5mb19kaWN0KS4KKworICAgICAgICBSYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yIGlmIHRoZSBzdHJ1Y3R1cmUgaXMgaW52YWxpZCBhbnl3aGVyZTsKKyAgICAgICAganVzdCByZXR1cm5zIG90aGVyd2lzZS4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKGxpYnJhcmllcywgbGlzdCk6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yKCInbGlicmFyaWVzJyBvcHRpb24gbXVzdCBiZSBhIGxpc3Qgb2YgdHVwbGVzIikKKworICAgICAgICBmb3IgbGliIGluIGxpYnJhcmllczoKKyAgICAgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKGxpYiwgdHVwbGUpIGFuZCBsZW4obGliKSAhPSAyOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IoImVhY2ggZWxlbWVudCBvZiAnbGlicmFyaWVzJyBtdXN0IGEgMi10dXBsZSIpCisKKyAgICAgICAgICAgIG5hbWUsIGJ1aWxkX2luZm8gPSBsaWIKKworICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UobmFtZSwgc3RyKToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yKCJmaXJzdCBlbGVtZW50IG9mIGVhY2ggdHVwbGUgaW4gJ2xpYnJhcmllcycgIiArIFwKKyAgICAgICAgICAgICAgICAgICAgICAibXVzdCBiZSBhIHN0cmluZyAodGhlIGxpYnJhcnkgbmFtZSkiKQorICAgICAgICAgICAgaWYgJy8nIGluIG5hbWUgb3IgKG9zLnNlcCAhPSAnLycgYW5kIG9zLnNlcCBpbiBuYW1lKToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yKCgiYmFkIGxpYnJhcnkgbmFtZSAnJXMnOiAiICsKKyAgICAgICAgICAgICAgICAgICAgICAgIm1heSBub3QgY29udGFpbiBkaXJlY3Rvcnkgc2VwYXJhdG9ycyIpICUgXAorICAgICAgICAgICAgICAgICAgICAgIGxpYlswXSkKKworICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoYnVpbGRfaW5mbywgZGljdCk6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nU2V0dXBFcnJvcigic2Vjb25kIGVsZW1lbnQgb2YgZWFjaCB0dXBsZSBpbiAnbGlicmFyaWVzJyAiICsgXAorICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgZGljdGlvbmFyeSAoYnVpbGQgaW5mbykiKQorCisgICAgZGVmIGdldF9saWJyYXJ5X25hbWVzKHNlbGYpOgorICAgICAgICAjIEFzc3VtZSB0aGUgbGlicmFyeSBsaXN0IGlzIHZhbGlkIC0tICdjaGVja19saWJyYXJ5X2xpc3QoKScgaXMKKyAgICAgICAgIyBjYWxsZWQgZnJvbSAnZmluYWxpemVfb3B0aW9ucygpJywgc28gaXQgc2hvdWxkIGJlIQorICAgICAgICBpZiBub3Qgc2VsZi5saWJyYXJpZXM6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgICAgIGxpYl9uYW1lcyA9IFtdCisgICAgICAgIGZvciBsaWJfbmFtZSwgYnVpbGRfaW5mbyBpbiBzZWxmLmxpYnJhcmllczoKKyAgICAgICAgICAgIGxpYl9uYW1lcy5hcHBlbmQobGliX25hbWUpCisgICAgICAgIHJldHVybiBsaWJfbmFtZXMKKworCisgICAgZGVmIGdldF9zb3VyY2VfZmlsZXMoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfbGlicmFyeV9saXN0KHNlbGYubGlicmFyaWVzKQorICAgICAgICBmaWxlbmFtZXMgPSBbXQorICAgICAgICBmb3IgbGliX25hbWUsIGJ1aWxkX2luZm8gaW4gc2VsZi5saWJyYXJpZXM6CisgICAgICAgICAgICBzb3VyY2VzID0gYnVpbGRfaW5mby5nZXQoJ3NvdXJjZXMnKQorICAgICAgICAgICAgaWYgc291cmNlcyBpcyBOb25lIG9yIG5vdCBpc2luc3RhbmNlKHNvdXJjZXMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IoKCJpbiAnbGlicmFyaWVzJyBvcHRpb24gKGxpYnJhcnkgJyVzJyksICIKKyAgICAgICAgICAgICAgICAgICAgICAgIidzb3VyY2VzJyBtdXN0IGJlIHByZXNlbnQgYW5kIG11c3QgYmUgIgorICAgICAgICAgICAgICAgICAgICAgICAiYSBsaXN0IG9mIHNvdXJjZSBmaWxlbmFtZXMiKSAlIGxpYl9uYW1lKQorCisgICAgICAgICAgICBmaWxlbmFtZXMuZXh0ZW5kKHNvdXJjZXMpCisgICAgICAgIHJldHVybiBmaWxlbmFtZXMKKworICAgIGRlZiBidWlsZF9saWJyYXJpZXMoc2VsZiwgbGlicmFyaWVzKToKKyAgICAgICAgZm9yIGxpYl9uYW1lLCBidWlsZF9pbmZvIGluIGxpYnJhcmllczoKKyAgICAgICAgICAgIHNvdXJjZXMgPSBidWlsZF9pbmZvLmdldCgnc291cmNlcycpCisgICAgICAgICAgICBpZiBzb3VyY2VzIGlzIE5vbmUgb3Igbm90IGlzaW5zdGFuY2Uoc291cmNlcywgKGxpc3QsIHR1cGxlKSk6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nU2V0dXBFcnJvcigoImluICdsaWJyYXJpZXMnIG9wdGlvbiAobGlicmFyeSAnJXMnKSwgIiArCisgICAgICAgICAgICAgICAgICAgICAgICInc291cmNlcycgbXVzdCBiZSBwcmVzZW50IGFuZCBtdXN0IGJlICIgKworICAgICAgICAgICAgICAgICAgICAgICAiYSBsaXN0IG9mIHNvdXJjZSBmaWxlbmFtZXMiKSAlIGxpYl9uYW1lKQorICAgICAgICAgICAgc291cmNlcyA9IGxpc3Qoc291cmNlcykKKworICAgICAgICAgICAgbG9nZ2VyLmluZm8oImJ1aWxkaW5nICclcycgbGlicmFyeSIsIGxpYl9uYW1lKQorCisgICAgICAgICAgICAjIEZpcnN0LCBjb21waWxlIHRoZSBzb3VyY2UgY29kZSB0byBvYmplY3QgZmlsZXMgaW4gdGhlIGxpYnJhcnkKKyAgICAgICAgICAgICMgZGlyZWN0b3J5LiAgKFRoaXMgc2hvdWxkIHByb2JhYmx5IGNoYW5nZSB0byBwdXR0aW5nIG9iamVjdAorICAgICAgICAgICAgIyBmaWxlcyBpbiBhIHRlbXBvcmFyeSBidWlsZCBkaXJlY3RvcnkuKQorICAgICAgICAgICAgbWFjcm9zID0gYnVpbGRfaW5mby5nZXQoJ21hY3JvcycpCisgICAgICAgICAgICBpbmNsdWRlX2RpcnMgPSBidWlsZF9pbmZvLmdldCgnaW5jbHVkZV9kaXJzJykKKyAgICAgICAgICAgIG9iamVjdHMgPSBzZWxmLmNvbXBpbGVyLmNvbXBpbGUoc291cmNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj1zZWxmLmJ1aWxkX3RlbXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hY3Jvcz1tYWNyb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycz1pbmNsdWRlX2RpcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnPXNlbGYuZGVidWcpCisKKyAgICAgICAgICAgICMgTm93ICJsaW5rIiB0aGUgb2JqZWN0IGZpbGVzIHRvZ2V0aGVyIGludG8gYSBzdGF0aWMgbGlicmFyeS4KKyAgICAgICAgICAgICMgKE9uIFVuaXggYXQgbGVhc3QsIHRoaXMgaXNuJ3QgcmVhbGx5IGxpbmtpbmcgLS0gaXQganVzdAorICAgICAgICAgICAgIyBidWlsZHMgYW4gYXJjaGl2ZS4gIFdoYXRldmVyLikKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZXIuY3JlYXRlX3N0YXRpY19saWIob2JqZWN0cywgbGliX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9c2VsZi5idWlsZF9jbGliLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz1zZWxmLmRlYnVnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX2V4dC5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9idWlsZF9leHQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGM4NTgyMgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9idWlsZF9leHQucHkKQEAgLTAsMCArMSw2NDEgQEAKKyIiIkJ1aWxkIGV4dGVuc2lvbiBtb2R1bGVzLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHN5cworaW1wb3J0IHNpdGUKK2ltcG9ydCBzeXNjb25maWcKKworZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgZ2V0X3BsYXRmb3JtCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCAoQ0NvbXBpbGVyRXJyb3IsIENvbXBpbGVFcnJvciwgUGFja2FnaW5nRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFja2FnaW5nUGxhdGZvcm1FcnJvciwgUGFja2FnaW5nU2V0dXBFcnJvcikKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBjdXN0b21pemVfY29tcGlsZXIsIHNob3dfY29tcGlsZXJzCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBuZXdlcl9ncm91cAorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uIGltcG9ydCBFeHRlbnNpb24KK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKKworaWYgb3MubmFtZSA9PSAnbnQnOgorICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLm1zdmNjb21waWxlciBpbXBvcnQgZ2V0X2J1aWxkX3ZlcnNpb24KKyAgICBNU1ZDX1ZFUlNJT04gPSBpbnQoZ2V0X2J1aWxkX3ZlcnNpb24oKSkKKworIyBBbiBleHRlbnNpb24gbmFtZSBpcyBqdXN0IGEgZG90LXNlcGFyYXRlZCBsaXN0IG9mIFB5dGhvbiBOQU1FcyAoaWUuCisjIHRoZSBzYW1lIGFzIGEgZnVsbHktcXVhbGlmaWVkIG1vZHVsZSBuYW1lKS4KK2V4dGVuc2lvbl9uYW1lX3JlID0gcmUuY29tcGlsZSBcCisgICAgKHInXlthLXpBLVpfXVthLXpBLVpfMC05XSooXC5bYS16QS1aX11bYS16QS1aXzAtOV0qKSokJykKKworCitjbGFzcyBidWlsZF9leHQoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJidWlsZCBDL0MrKyBleHRlbnNpb24gbW9kdWxlcyAoY29tcGlsZS9saW5rIHRvIGJ1aWxkIGRpcmVjdG9yeSkiCisKKyAgICAjIFhYWCB0aG91Z2h0cyBvbiBob3cgdG8gZGVhbCB3aXRoIGNvbXBsZXggY29tbWFuZC1saW5lIG9wdGlvbnMgbGlrZQorICAgICMgdGhlc2UsIGkuZS4gaG93IHRvIG1ha2UgaXQgc28gZmFuY3lfZ2V0b3B0IGNhbiBzdWNrIHRoZW0gb2ZmIHRoZQorICAgICMgY29tbWFuZCBsaW5lIGFuZCB0dXJuIHRoZW0gaW50byB0aGUgYXBwcm9wcmlhdGUKKyAgICAjIGxpc3RzIG9mIHR1cGxlcyBvZiB3aGF0LWhhdmUteW91LgorICAgICMgICAtIGVhY2ggY29tbWFuZCBuZWVkcyBhIGNhbGxiYWNrIHRvIHByb2Nlc3MgaXRzIGNvbW1hbmQtbGluZSBvcHRpb25zCisgICAgIyAgIC0gQ29tbWFuZC5fX2luaXRfXygpIG5lZWRzIGFjY2VzcyB0byBpdHMgc2hhcmUgb2YgdGhlIHdob2xlCisgICAgIyAgICAgY29tbWFuZCBsaW5lIChtdXN0IHVsdGltYXRlbHkgY29tZSBmcm9tCisgICAgIyAgICAgRGlzdHJpYnV0aW9uLnBhcnNlX2NvbW1hbmRfbGluZSgpKQorICAgICMgICAtIGl0IHRoZW4gY2FsbHMgdGhlIGN1cnJlbnQgY29tbWFuZCBjbGFzcycgb3B0aW9uLXBhcnNpbmcKKyAgICAjICAgICBjYWxsYmFjayB0byBkZWFsIHdpdGggd2VpcmQgb3B0aW9ucyBsaWtlIC1ELCB3aGljaCBoYXZlIHRvCisgICAgIyAgICAgcGFyc2UgdGhlIG9wdGlvbiB0ZXh0IGFuZCBjaHVybiBvdXQgc29tZSBjdXN0b20gZGF0YQorICAgICMgICAgIHN0cnVjdHVyZQorICAgICMgICAtIHRoYXQgZGF0YSBzdHJ1Y3R1cmUgKGluIHRoaXMgY2FzZSwgYSBsaXN0IG9mIDItdHVwbGVzKQorICAgICMgICAgIHdpbGwgdGhlbiBiZSBwcmVzZW50IGluIHRoZSBjb21tYW5kIG9iamVjdCBieSB0aGUgdGltZQorICAgICMgICAgIHdlIGdldCB0byBmaW5hbGl6ZV9vcHRpb25zKCkgKGkuZS4gdGhlIGNvbnN0cnVjdG9yCisgICAgIyAgICAgdGFrZXMgY2FyZSBvZiBib3RoIGNvbW1hbmQtbGluZSBhbmQgY2xpZW50IG9wdGlvbnMKKyAgICAjICAgICBpbiBiZXR3ZWVuIGluaXRpYWxpemVfb3B0aW9ucygpIGFuZCBmaW5hbGl6ZV9vcHRpb25zKCkpCisKKyAgICBzZXBfYnkgPSAiIChzZXBhcmF0ZWQgYnkgJyVzJykiICUgb3MucGF0aHNlcAorICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdidWlsZC1saWI9JywgJ2InLAorICAgICAgICAgImRpcmVjdG9yeSBmb3IgY29tcGlsZWQgZXh0ZW5zaW9uIG1vZHVsZXMiKSwKKyAgICAgICAgKCdidWlsZC10ZW1wPScsICd0JywKKyAgICAgICAgICJkaXJlY3RvcnkgZm9yIHRlbXBvcmFyeSBmaWxlcyAoYnVpbGQgYnktcHJvZHVjdHMpIiksCisgICAgICAgICgncGxhdC1uYW1lPScsICdwJywKKyAgICAgICAgICJwbGF0Zm9ybSBuYW1lIHRvIGNyb3NzLWNvbXBpbGUgZm9yLCBpZiBzdXBwb3J0ZWQgIgorICAgICAgICAgIihkZWZhdWx0OiAlcykiICUgZ2V0X3BsYXRmb3JtKCkpLAorICAgICAgICAoJ2lucGxhY2UnLCAnaScsCisgICAgICAgICAiaWdub3JlIGJ1aWxkLWxpYiBhbmQgcHV0IGNvbXBpbGVkIGV4dGVuc2lvbnMgaW50byB0aGUgc291cmNlICIgKworICAgICAgICAgImRpcmVjdG9yeSBhbG9uZ3NpZGUgeW91ciBwdXJlIFB5dGhvbiBtb2R1bGVzIiksCisgICAgICAgICgndXNlcicsIE5vbmUsCisgICAgICAgICAiYWRkIHVzZXIgaW5jbHVkZSwgbGlicmFyeSBhbmQgcnBhdGgiKSwKKyAgICAgICAgKCdpbmNsdWRlLWRpcnM9JywgJ0knLAorICAgICAgICAgImxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBoZWFkZXIgZmlsZXMiICsgc2VwX2J5KSwKKyAgICAgICAgKCdkZWZpbmU9JywgJ0QnLAorICAgICAgICAgIkMgcHJlcHJvY2Vzc29yIG1hY3JvcyB0byBkZWZpbmUiKSwKKyAgICAgICAgKCd1bmRlZj0nLCAnVScsCisgICAgICAgICAiQyBwcmVwcm9jZXNzb3IgbWFjcm9zIHRvIHVuZGVmaW5lIiksCisgICAgICAgICgnbGlicmFyaWVzPScsICdsJywKKyAgICAgICAgICJleHRlcm5hbCBDIGxpYnJhcmllcyB0byBsaW5rIHdpdGgiKSwKKyAgICAgICAgKCdsaWJyYXJ5LWRpcnM9JywgJ0wnLAorICAgICAgICAgImRpcmVjdG9yaWVzIHRvIHNlYXJjaCBmb3IgZXh0ZXJuYWwgQyBsaWJyYXJpZXMiICsgc2VwX2J5KSwKKyAgICAgICAgKCdycGF0aD0nLCAnUicsCisgICAgICAgICAiZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBzaGFyZWQgQyBsaWJyYXJpZXMgYXQgcnVudGltZSIpLAorICAgICAgICAoJ2xpbmstb2JqZWN0cz0nLCAnTycsCisgICAgICAgICAiZXh0cmEgZXhwbGljaXQgbGluayBvYmplY3RzIHRvIGluY2x1ZGUgaW4gdGhlIGxpbmsiKSwKKyAgICAgICAgKCdkZWJ1ZycsICdnJywKKyAgICAgICAgICJjb21waWxlL2xpbmsgd2l0aCBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24iKSwKKyAgICAgICAgKCdmb3JjZScsICdmJywKKyAgICAgICAgICJmb3JjaWJseSBidWlsZCBldmVyeXRoaW5nIChpZ25vcmUgZmlsZSB0aW1lc3RhbXBzKSIpLAorICAgICAgICAoJ2NvbXBpbGVyPScsICdjJywKKyAgICAgICAgICJzcGVjaWZ5IHRoZSBjb21waWxlciB0eXBlIiksCisgICAgICAgICgnc3dpZy1vcHRzPScsIE5vbmUsCisgICAgICAgICAibGlzdCBvZiBTV0lHIGNvbW1hbmQtbGluZSBvcHRpb25zIiksCisgICAgICAgICgnc3dpZz0nLCBOb25lLAorICAgICAgICAgInBhdGggdG8gdGhlIFNXSUcgZXhlY3V0YWJsZSIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2lucGxhY2UnLCAnZGVidWcnLCAnZm9yY2UnLCAndXNlciddCisKKworICAgIGhlbHBfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdoZWxwLWNvbXBpbGVyJywgTm9uZSwKKyAgICAgICAgICJsaXN0IGF2YWlsYWJsZSBjb21waWxlcnMiLCBzaG93X2NvbXBpbGVycyksCisgICAgICAgIF0KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuZXh0ZW5zaW9ucyA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9saWIgPSBOb25lCisgICAgICAgIHNlbGYucGxhdF9uYW1lID0gTm9uZQorICAgICAgICBzZWxmLmJ1aWxkX3RlbXAgPSBOb25lCisgICAgICAgIHNlbGYuaW5wbGFjZSA9IEZhbHNlCisgICAgICAgIHNlbGYucGFja2FnZSA9IE5vbmUKKworICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IE5vbmUKKyAgICAgICAgc2VsZi5kZWZpbmUgPSBOb25lCisgICAgICAgIHNlbGYudW5kZWYgPSBOb25lCisgICAgICAgIHNlbGYubGlicmFyaWVzID0gTm9uZQorICAgICAgICBzZWxmLmxpYnJhcnlfZGlycyA9IE5vbmUKKyAgICAgICAgc2VsZi5ycGF0aCA9IE5vbmUKKyAgICAgICAgc2VsZi5saW5rX29iamVjdHMgPSBOb25lCisgICAgICAgIHNlbGYuZGVidWcgPSBOb25lCisgICAgICAgIHNlbGYuZm9yY2UgPSBOb25lCisgICAgICAgIHNlbGYuY29tcGlsZXIgPSBOb25lCisgICAgICAgIHNlbGYuc3dpZyA9IE5vbmUKKyAgICAgICAgc2VsZi5zd2lnX29wdHMgPSBOb25lCisgICAgICAgIHNlbGYudXNlciA9IE5vbmUKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnYnVpbGQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYnVpbGRfbGliJywgJ2J1aWxkX3RlbXAnLCAnY29tcGlsZXInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVidWcnLCAnZm9yY2UnLCAncGxhdF9uYW1lJykKKworICAgICAgICBpZiBzZWxmLnBhY2thZ2UgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYucGFja2FnZSA9IHNlbGYuZGlzdHJpYnV0aW9uLmV4dF9wYWNrYWdlCisKKyAgICAgICAgIyBFbnN1cmUgdGhhdCB0aGUgbGlzdCBvZiBleHRlbnNpb25zIGlzIHZhbGlkLCBpLmUuIGl0IGlzIGEgbGlzdCBvZgorICAgICAgICAjIEV4dGVuc2lvbiBvYmplY3RzLgorICAgICAgICBzZWxmLmV4dGVuc2lvbnMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5leHRfbW9kdWxlcworICAgICAgICBpZiBzZWxmLmV4dGVuc2lvbnM6CisgICAgICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShzZWxmLmV4dGVuc2lvbnMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgICAgIHR5cGVfbmFtZSA9IChzZWxmLmV4dGVuc2lvbnMgaXMgTm9uZSBhbmQgJ05vbmUnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgdHlwZShzZWxmLmV4dGVuc2lvbnMpLl9fbmFtZV9fKQorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICInZXh0X21vZHVsZXMnIG11c3QgYmUgYSBzZXF1ZW5jZSBvZiBFeHRlbnNpb24gaW5zdGFuY2VzLCIKKyAgICAgICAgICAgICAgICAgICAgIiBub3QgJXMiICUgKHR5cGVfbmFtZSwpKQorICAgICAgICAgICAgZm9yIGksIGV4dCBpbiBlbnVtZXJhdGUoc2VsZi5leHRlbnNpb25zKToKKyAgICAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGV4dCwgRXh0ZW5zaW9uKToKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUgICAgICAgICAgICAgICAgIyBPSyEgKGFzc3VtZSB0eXBlLWNoZWNraW5nIGRvbmUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBieSBFeHRlbnNpb24gY29uc3RydWN0b3IpCisgICAgICAgICAgICAgICAgdHlwZV9uYW1lID0gKGV4dCBpcyBOb25lIGFuZCAnTm9uZScgb3IgdHlwZShleHQpLl9fbmFtZV9fKQorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICInZXh0X21vZHVsZXMnIGl0ZW0gJWQgbXVzdCBiZSBhbiBFeHRlbnNpb24gaW5zdGFuY2UsIgorICAgICAgICAgICAgICAgICAgICAiIG5vdCAlcyIgJSAoaSwgdHlwZV9uYW1lKSkKKworICAgICAgICAjIE1ha2Ugc3VyZSBQeXRob24ncyBpbmNsdWRlIGRpcmVjdG9yaWVzIChmb3IgUHl0aG9uLmgsIHB5Y29uZmlnLmgsCisgICAgICAgICMgZXRjLikgYXJlIGluIHRoZSBpbmNsdWRlIHNlYXJjaCBwYXRoLgorICAgICAgICBweV9pbmNsdWRlID0gc3lzY29uZmlnLmdldF9wYXRoKCdpbmNsdWRlJykKKyAgICAgICAgcGxhdF9weV9pbmNsdWRlID0gc3lzY29uZmlnLmdldF9wYXRoKCdwbGF0aW5jbHVkZScpCisgICAgICAgIGlmIHNlbGYuaW5jbHVkZV9kaXJzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IHNlbGYuZGlzdHJpYnV0aW9uLmluY2x1ZGVfZGlycyBvciBbXQorICAgICAgICBpZiBpc2luc3RhbmNlKHNlbGYuaW5jbHVkZV9kaXJzLCBzdHIpOgorICAgICAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMgPSBzZWxmLmluY2x1ZGVfZGlycy5zcGxpdChvcy5wYXRoc2VwKQorCisgICAgICAgICMgUHV0IHRoZSBQeXRob24gInN5c3RlbSIgaW5jbHVkZSBkaXIgYXQgdGhlIGVuZCwgc28gdGhhdAorICAgICAgICAjIGFueSBsb2NhbCBpbmNsdWRlIGRpcnMgdGFrZSBwcmVjZWRlbmNlLgorICAgICAgICBzZWxmLmluY2x1ZGVfZGlycy5hcHBlbmQocHlfaW5jbHVkZSkKKyAgICAgICAgaWYgcGxhdF9weV9pbmNsdWRlICE9IHB5X2luY2x1ZGU6CisgICAgICAgICAgICBzZWxmLmluY2x1ZGVfZGlycy5hcHBlbmQocGxhdF9weV9pbmNsdWRlKQorCisgICAgICAgIHNlbGYuZW5zdXJlX3N0cmluZ19saXN0KCdsaWJyYXJpZXMnKQorCisgICAgICAgICMgTGlmZSBpcyBlYXNpZXIgaWYgd2UncmUgbm90IGZvcmV2ZXIgY2hlY2tpbmcgZm9yIE5vbmUsIHNvCisgICAgICAgICMgc2ltcGxpZnkgdGhlc2Ugb3B0aW9ucyB0byBlbXB0eSBsaXN0cyBpZiB1bnNldAorICAgICAgICBpZiBzZWxmLmxpYnJhcmllcyBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBbXQorICAgICAgICBpZiBzZWxmLmxpYnJhcnlfZGlycyBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMgPSBbXQorICAgICAgICBlbGlmIGlzaW5zdGFuY2Uoc2VsZi5saWJyYXJ5X2RpcnMsIHN0cik6CisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycyA9IHNlbGYubGlicmFyeV9kaXJzLnNwbGl0KG9zLnBhdGhzZXApCisKKyAgICAgICAgaWYgc2VsZi5ycGF0aCBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5ycGF0aCA9IFtdCisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShzZWxmLnJwYXRoLCBzdHIpOgorICAgICAgICAgICAgc2VsZi5ycGF0aCA9IHNlbGYucnBhdGguc3BsaXQob3MucGF0aHNlcCkKKworICAgICAgICAjIGZvciBleHRlbnNpb25zIHVuZGVyIHdpbmRvd3MgdXNlIGRpZmZlcmVudCBkaXJlY3RvcmllcworICAgICAgICAjIGZvciBSZWxlYXNlIGFuZCBEZWJ1ZyBidWlsZHMuCisgICAgICAgICMgYWxzbyBQeXRob24ncyBsaWJyYXJ5IGRpcmVjdG9yeSBtdXN0IGJlIGFwcGVuZGVkIHRvIGxpYnJhcnlfZGlycworICAgICAgICBpZiBvcy5uYW1lID09ICdudCc6CisgICAgICAgICAgICAjIHRoZSAnbGlicycgZGlyZWN0b3J5IGlzIGZvciBiaW5hcnkgaW5zdGFsbHMgLSB3ZSBhc3N1bWUgdGhhdAorICAgICAgICAgICAgIyBtdXN0IGJlIHRoZSAqbmF0aXZlKiBwbGF0Zm9ybS4gIEJ1dCB3ZSBkb24ndCByZWFsbHkgc3VwcG9ydAorICAgICAgICAgICAgIyBjcm9zcy1jb21waWxpbmcgdmlhIGEgYmluYXJ5IGluc3RhbGwgYW55d2F5LCBzbyB3ZSBsZXQgaXQgZ28uCisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycy5hcHBlbmQob3MucGF0aC5qb2luKHN5cy5leGVjX3ByZWZpeCwgJ2xpYnMnKSkKKyAgICAgICAgICAgIGlmIHNlbGYuZGVidWc6CisgICAgICAgICAgICAgICAgc2VsZi5idWlsZF90ZW1wID0gb3MucGF0aC5qb2luKHNlbGYuYnVpbGRfdGVtcCwgIkRlYnVnIikKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5idWlsZF90ZW1wID0gb3MucGF0aC5qb2luKHNlbGYuYnVpbGRfdGVtcCwgIlJlbGVhc2UiKQorCisgICAgICAgICAgICAjIEFwcGVuZCB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBpbmNsdWRlIGFuZCBsaWJyYXJ5IGRpcmVjdG9yaWVzLAorICAgICAgICAgICAgIyB0aGlzIGFsbG93cyBkaXN0dXRpbHMgb24gd2luZG93cyB0byB3b3JrIGluIHRoZSBzb3VyY2UgdHJlZQorICAgICAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMuYXBwZW5kKG9zLnBhdGguam9pbihzeXMuZXhlY19wcmVmaXgsICdQQycpKQorICAgICAgICAgICAgaWYgTVNWQ19WRVJTSU9OID09IDk6CisgICAgICAgICAgICAgICAgIyBVc2UgdGhlIC5saWIgZmlsZXMgZm9yIHRoZSBjb3JyZWN0IGFyY2hpdGVjdHVyZQorICAgICAgICAgICAgICAgIGlmIHNlbGYucGxhdF9uYW1lID09ICd3aW4zMic6CisgICAgICAgICAgICAgICAgICAgIHN1ZmZpeCA9ICcnCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgIyB3aW4tYW1kNjQgb3Igd2luLWlhNjQKKyAgICAgICAgICAgICAgICAgICAgc3VmZml4ID0gc2VsZi5wbGF0X25hbWVbNDpdCisgICAgICAgICAgICAgICAgbmV3X2xpYiA9IG9zLnBhdGguam9pbihzeXMuZXhlY19wcmVmaXgsICdQQ2J1aWxkJykKKyAgICAgICAgICAgICAgICBpZiBzdWZmaXg6CisgICAgICAgICAgICAgICAgICAgIG5ld19saWIgPSBvcy5wYXRoLmpvaW4obmV3X2xpYiwgc3VmZml4KQorICAgICAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzLmFwcGVuZChuZXdfbGliKQorCisgICAgICAgICAgICBlbGlmIE1TVkNfVkVSU0lPTiA9PSA4OgorICAgICAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzLmFwcGVuZChvcy5wYXRoLmpvaW4oc3lzLmV4ZWNfcHJlZml4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnUEMnLCAnVlM4LjAnKSkKKyAgICAgICAgICAgIGVsaWYgTVNWQ19WRVJTSU9OID09IDc6CisgICAgICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMuYXBwZW5kKG9zLnBhdGguam9pbihzeXMuZXhlY19wcmVmaXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdQQycsICdWUzcuMScpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycy5hcHBlbmQob3MucGF0aC5qb2luKHN5cy5leGVjX3ByZWZpeCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1BDJywgJ1ZDNicpKQorCisgICAgICAgICMgT1MvMiAoRU1YKSBkb2Vzbid0IHN1cHBvcnQgRGVidWcgdnMgUmVsZWFzZSBidWlsZHMsIGJ1dCBoYXMgdGhlCisgICAgICAgICMgaW1wb3J0IGxpYnJhcmllcyBpbiBpdHMgIkNvbmZpZyIgc3ViZGlyZWN0b3J5CisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ29zMic6CisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycy5hcHBlbmQob3MucGF0aC5qb2luKHN5cy5leGVjX3ByZWZpeCwgJ0NvbmZpZycpKQorCisgICAgICAgICMgZm9yIGV4dGVuc2lvbnMgdW5kZXIgQ3lnd2luIGFuZCBBdGhlT1MgUHl0aG9uJ3MgbGlicmFyeSBkaXJlY3RvcnkgbXVzdCBiZQorICAgICAgICAjIGFwcGVuZGVkIHRvIGxpYnJhcnlfZGlycworICAgICAgICBpZiBzeXMucGxhdGZvcm1bOjZdID09ICdjeWd3aW4nIG9yIHN5cy5wbGF0Zm9ybVs6Nl0gPT0gJ2F0aGVvcyc6CisgICAgICAgICAgICBpZiBzeXMuZXhlY3V0YWJsZS5zdGFydHN3aXRoKG9zLnBhdGguam9pbihzeXMuZXhlY19wcmVmaXgsICJiaW4iKSk6CisgICAgICAgICAgICAgICAgIyBidWlsZGluZyB0aGlyZCBwYXJ0eSBleHRlbnNpb25zCisgICAgICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMuYXBwZW5kKG9zLnBhdGguam9pbihzeXMucHJlZml4LCAibGliIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicHl0aG9uIiArIHN5c2NvbmZpZy5nZXRfcHl0aG9uX3ZlcnNpb24oKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb25maWciKSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBidWlsZGluZyBweXRob24gc3RhbmRhcmQgZXh0ZW5zaW9ucworICAgICAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzLmFwcGVuZChvcy5jdXJkaXIpCisKKyAgICAgICAgIyBmb3IgZXh0ZW5zaW9ucyB1bmRlciBMaW51eCBvciBTb2xhcmlzIHdpdGggYSBzaGFyZWQgUHl0aG9uIGxpYnJhcnksCisgICAgICAgICMgUHl0aG9uJ3MgbGlicmFyeSBkaXJlY3RvcnkgbXVzdCBiZSBhcHBlbmRlZCB0byBsaWJyYXJ5X2RpcnMKKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdQeV9FTkFCTEVfU0hBUkVEJykKKyAgICAgICAgaWYgKHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCgnbGludXgnLCAnZ251JywgJ3N1bm9zJykpCisgICAgICAgICAgICBhbmQgc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdQeV9FTkFCTEVfU0hBUkVEJykpOgorICAgICAgICAgICAgaWYgc3lzLmV4ZWN1dGFibGUuc3RhcnRzd2l0aChvcy5wYXRoLmpvaW4oc3lzLmV4ZWNfcHJlZml4LCAiYmluIikpOgorICAgICAgICAgICAgICAgICMgYnVpbGRpbmcgdGhpcmQgcGFydHkgZXh0ZW5zaW9ucworICAgICAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzLmFwcGVuZChzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ0xJQkRJUicpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIGJ1aWxkaW5nIHB5dGhvbiBzdGFuZGFyZCBleHRlbnNpb25zCisgICAgICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMuYXBwZW5kKG9zLmN1cmRpcikKKworICAgICAgICAjIFRoZSBhcmd1bWVudCBwYXJzaW5nIHdpbGwgcmVzdWx0IGluIHNlbGYuZGVmaW5lIGJlaW5nIGEgc3RyaW5nLCBidXQKKyAgICAgICAgIyBpdCBoYXMgdG8gYmUgYSBsaXN0IG9mIDItdHVwbGVzLiAgQWxsIHRoZSBwcmVwcm9jZXNzb3Igc3ltYm9scworICAgICAgICAjIHNwZWNpZmllZCBieSB0aGUgJ2RlZmluZScgb3B0aW9uIHdpbGwgYmUgc2V0IHRvICcxJy4gIE11bHRpcGxlCisgICAgICAgICMgc3ltYm9scyBjYW4gYmUgc2VwYXJhdGVkIHdpdGggY29tbWFzLgorCisgICAgICAgIGlmIHNlbGYuZGVmaW5lOgorICAgICAgICAgICAgZGVmaW5lcyA9IHNlbGYuZGVmaW5lLnNwbGl0KCcsJykKKyAgICAgICAgICAgIHNlbGYuZGVmaW5lID0gWyhzeW1ib2wsICcxJykgZm9yIHN5bWJvbCBpbiBkZWZpbmVzXQorCisgICAgICAgICMgVGhlIG9wdGlvbiBmb3IgbWFjcm9zIHRvIHVuZGVmaW5lIGlzIGFsc28gYSBzdHJpbmcgZnJvbSB0aGUKKyAgICAgICAgIyBvcHRpb24gcGFyc2luZywgYnV0IGhhcyB0byBiZSBhIGxpc3QuICBNdWx0aXBsZSBzeW1ib2xzIGNhbiBhbHNvCisgICAgICAgICMgYmUgc2VwYXJhdGVkIHdpdGggY29tbWFzIGhlcmUuCisgICAgICAgIGlmIHNlbGYudW5kZWY6CisgICAgICAgICAgICBzZWxmLnVuZGVmID0gc2VsZi51bmRlZi5zcGxpdCgnLCcpCisKKyAgICAgICAgaWYgc2VsZi5zd2lnX29wdHMgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuc3dpZ19vcHRzID0gW10KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuc3dpZ19vcHRzID0gc2VsZi5zd2lnX29wdHMuc3BsaXQoJyAnKQorCisgICAgICAgICMgRmluYWxseSBhZGQgdGhlIHVzZXIgaW5jbHVkZSBhbmQgbGlicmFyeSBkaXJlY3RvcmllcyBpZiByZXF1ZXN0ZWQKKyAgICAgICAgaWYgc2VsZi51c2VyOgorICAgICAgICAgICAgdXNlcl9pbmNsdWRlID0gb3MucGF0aC5qb2luKHNpdGUuVVNFUl9CQVNFLCAiaW5jbHVkZSIpCisgICAgICAgICAgICB1c2VyX2xpYiA9IG9zLnBhdGguam9pbihzaXRlLlVTRVJfQkFTRSwgImxpYiIpCisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKHVzZXJfaW5jbHVkZSk6CisgICAgICAgICAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMuYXBwZW5kKHVzZXJfaW5jbHVkZSkKKyAgICAgICAgICAgIGlmIG9zLnBhdGguaXNkaXIodXNlcl9saWIpOgorICAgICAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzLmFwcGVuZCh1c2VyX2xpYikKKyAgICAgICAgICAgICAgICBzZWxmLnJwYXRoLmFwcGVuZCh1c2VyX2xpYikKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBuZXdfY29tcGlsZXIKKworICAgICAgICBpZiBub3Qgc2VsZi5leHRlbnNpb25zOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyBJZiB3ZSB3ZXJlIGFza2VkIHRvIGJ1aWxkIGFueSBDL0MrKyBsaWJyYXJpZXMsIG1ha2Ugc3VyZSB0aGF0IHRoZQorICAgICAgICAjIGRpcmVjdG9yeSB3aGVyZSB3ZSBwdXQgdGhlbSBpcyBpbiB0aGUgbGlicmFyeSBzZWFyY2ggcGF0aCBmb3IKKyAgICAgICAgIyBsaW5raW5nIGV4dGVuc2lvbnMuCisgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19jX2xpYnJhcmllcygpOgorICAgICAgICAgICAgYnVpbGRfY2xpYiA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdidWlsZF9jbGliJykKKyAgICAgICAgICAgIHNlbGYubGlicmFyaWVzLmV4dGVuZChidWlsZF9jbGliLmdldF9saWJyYXJ5X25hbWVzKCkgb3IgW10pCisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycy5hcHBlbmQoYnVpbGRfY2xpYi5idWlsZF9jbGliKQorCisgICAgICAgICMgU2V0dXAgdGhlIENDb21waWxlciBvYmplY3QgdGhhdCB3ZSdsbCB1c2UgdG8gZG8gYWxsIHRoZQorICAgICAgICAjIGNvbXBpbGluZyBhbmQgbGlua2luZworICAgICAgICBzZWxmLmNvbXBpbGVyX29iaiA9IG5ld19jb21waWxlcihjb21waWxlcj1zZWxmLmNvbXBpbGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkcnlfcnVuPXNlbGYuZHJ5X3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2U9c2VsZi5mb3JjZSkKKworICAgICAgICBjdXN0b21pemVfY29tcGlsZXIoc2VsZi5jb21waWxlcl9vYmopCisgICAgICAgICMgSWYgd2UgYXJlIGNyb3NzLWNvbXBpbGluZywgaW5pdCB0aGUgY29tcGlsZXIgbm93IChpZiB3ZSBhcmUgbm90CisgICAgICAgICMgY3Jvc3MtY29tcGlsaW5nLCBpbml0IHdvdWxkIG5vdCBodXJ0LCBidXQgcGVvcGxlIG1heSByZWx5IG9uCisgICAgICAgICMgbGF0ZSBpbml0aWFsaXphdGlvbiBvZiBjb21waWxlciBldmVuIGlmIHRoZXkgc2hvdWxkbid0Li4uKQorICAgICAgICBpZiBvcy5uYW1lID09ICdudCcgYW5kIHNlbGYucGxhdF9uYW1lICE9IGdldF9wbGF0Zm9ybSgpOgorICAgICAgICAgICAgc2VsZi5jb21waWxlcl9vYmouaW5pdGlhbGl6ZShzZWxmLnBsYXRfbmFtZSkKKworICAgICAgICAjIEFuZCBtYWtlIHN1cmUgdGhhdCBhbnkgY29tcGlsZS9saW5rLXJlbGF0ZWQgb3B0aW9ucyAod2hpY2ggbWlnaHQKKyAgICAgICAgIyBjb21lIGZyb20gdGhlIGNvbW1hbmQgbGluZSBvciBmcm9tIHRoZSBzZXR1cCBzY3JpcHQpIGFyZSBzZXQgaW4KKyAgICAgICAgIyB0aGF0IENDb21waWxlciBvYmplY3QgLS0gdGhhdCB3YXksIHRoZXkgYXV0b21hdGljYWxseSBhcHBseSB0bworICAgICAgICAjIGFsbCBjb21waWxpbmcgYW5kIGxpbmtpbmcgZG9uZSBoZXJlLgorICAgICAgICBpZiBzZWxmLmluY2x1ZGVfZGlycyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZXJfb2JqLnNldF9pbmNsdWRlX2RpcnMoc2VsZi5pbmNsdWRlX2RpcnMpCisgICAgICAgIGlmIHNlbGYuZGVmaW5lIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgIyAnZGVmaW5lJyBvcHRpb24gaXMgYSBsaXN0IG9mIChuYW1lLHZhbHVlKSB0dXBsZXMKKyAgICAgICAgICAgIGZvciBuYW1lLCB2YWx1ZSBpbiBzZWxmLmRlZmluZToKKyAgICAgICAgICAgICAgICBzZWxmLmNvbXBpbGVyX29iai5kZWZpbmVfbWFjcm8obmFtZSwgdmFsdWUpCisgICAgICAgIGlmIHNlbGYudW5kZWYgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBmb3IgbWFjcm8gaW4gc2VsZi51bmRlZjoKKyAgICAgICAgICAgICAgICBzZWxmLmNvbXBpbGVyX29iai51bmRlZmluZV9tYWNybyhtYWNybykKKyAgICAgICAgaWYgc2VsZi5saWJyYXJpZXMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVyX29iai5zZXRfbGlicmFyaWVzKHNlbGYubGlicmFyaWVzKQorICAgICAgICBpZiBzZWxmLmxpYnJhcnlfZGlycyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZXJfb2JqLnNldF9saWJyYXJ5X2RpcnMoc2VsZi5saWJyYXJ5X2RpcnMpCisgICAgICAgIGlmIHNlbGYucnBhdGggaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVyX29iai5zZXRfcnVudGltZV9saWJyYXJ5X2RpcnMoc2VsZi5ycGF0aCkKKyAgICAgICAgaWYgc2VsZi5saW5rX29iamVjdHMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVyX29iai5zZXRfbGlua19vYmplY3RzKHNlbGYubGlua19vYmplY3RzKQorCisgICAgICAgICMgTm93IGFjdHVhbGx5IGNvbXBpbGUgYW5kIGxpbmsgZXZlcnl0aGluZy4KKyAgICAgICAgc2VsZi5idWlsZF9leHRlbnNpb25zKCkKKworICAgIGRlZiBnZXRfc291cmNlX2ZpbGVzKHNlbGYpOgorICAgICAgICBmaWxlbmFtZXMgPSBbXQorCisgICAgICAgICMgV291bGRuJ3QgaXQgYmUgbmVhdCBpZiB3ZSBrbmV3IHRoZSBuYW1lcyBvZiBoZWFkZXIgZmlsZXMgdG9vLi4uCisgICAgICAgIGZvciBleHQgaW4gc2VsZi5leHRlbnNpb25zOgorICAgICAgICAgICAgZmlsZW5hbWVzLmV4dGVuZChleHQuc291cmNlcykKKworICAgICAgICByZXR1cm4gZmlsZW5hbWVzCisKKyAgICBkZWYgZ2V0X291dHB1dHMoc2VsZik6CisgICAgICAgICMgQW5kIGJ1aWxkIHRoZSBsaXN0IG9mIG91dHB1dCAoYnVpbHQpIGZpbGVuYW1lcy4gIE5vdGUgdGhhdCB0aGlzCisgICAgICAgICMgaWdub3JlcyB0aGUgJ2lucGxhY2UnIGZsYWcsIGFuZCBhc3N1bWVzIGV2ZXJ5dGhpbmcgZ29lcyBpbiB0aGUKKyAgICAgICAgIyAiYnVpbGQiIHRyZWUuCisgICAgICAgIG91dHB1dHMgPSBbXQorICAgICAgICBmb3IgZXh0IGluIHNlbGYuZXh0ZW5zaW9uczoKKyAgICAgICAgICAgIG91dHB1dHMuYXBwZW5kKHNlbGYuZ2V0X2V4dF9mdWxscGF0aChleHQubmFtZSkpCisgICAgICAgIHJldHVybiBvdXRwdXRzCisKKyAgICBkZWYgYnVpbGRfZXh0ZW5zaW9ucyhzZWxmKToKKyAgICAgICAgZm9yIGV4dCBpbiBzZWxmLmV4dGVuc2lvbnM6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5idWlsZF9leHRlbnNpb24oZXh0KQorICAgICAgICAgICAgZXhjZXB0IChDQ29tcGlsZXJFcnJvciwgUGFja2FnaW5nRXJyb3IsIENvbXBpbGVFcnJvcikgYXMgZToKKyAgICAgICAgICAgICAgICBpZiBub3QgZXh0Lm9wdGlvbmFsOgorICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCclczogYnVpbGRpbmcgZXh0ZW5zaW9uICVyIGZhaWxlZDogJXMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZ2V0X2NvbW1hbmRfbmFtZSgpLCBleHQubmFtZSwgZSkKKworICAgIGRlZiBidWlsZF9leHRlbnNpb24oc2VsZiwgZXh0KToKKyAgICAgICAgc291cmNlcyA9IGV4dC5zb3VyY2VzCisgICAgICAgIGlmIHNvdXJjZXMgaXMgTm9uZSBvciBub3QgaXNpbnN0YW5jZShzb3VyY2VzLCAobGlzdCwgdHVwbGUpKToKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IoKCJpbiAnZXh0X21vZHVsZXMnIG9wdGlvbiAoZXh0ZW5zaW9uICclcycpLCAiICsKKyAgICAgICAgICAgICAgICAgICAiJ3NvdXJjZXMnIG11c3QgYmUgcHJlc2VudCBhbmQgbXVzdCBiZSAiICsKKyAgICAgICAgICAgICAgICAgICAiYSBsaXN0IG9mIHNvdXJjZSBmaWxlbmFtZXMiKSAlIGV4dC5uYW1lKQorICAgICAgICBzb3VyY2VzID0gbGlzdChzb3VyY2VzKQorCisgICAgICAgIGV4dF9wYXRoID0gc2VsZi5nZXRfZXh0X2Z1bGxwYXRoKGV4dC5uYW1lKQorICAgICAgICBkZXBlbmRzID0gc291cmNlcyArIGV4dC5kZXBlbmRzCisgICAgICAgIGlmIG5vdCAoc2VsZi5mb3JjZSBvciBuZXdlcl9ncm91cChkZXBlbmRzLCBleHRfcGF0aCwgJ25ld2VyJykpOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJza2lwcGluZyAnJXMnIGV4dGVuc2lvbiAodXAtdG8tZGF0ZSkiLCBleHQubmFtZSkKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oImJ1aWxkaW5nICclcycgZXh0ZW5zaW9uIiwgZXh0Lm5hbWUpCisKKyAgICAgICAgIyBGaXJzdCwgc2NhbiB0aGUgc291cmNlcyBmb3IgU1dJRyBkZWZpbml0aW9uIGZpbGVzICguaSksIHJ1bgorICAgICAgICAjIFNXSUcgb24gJ2VtIHRvIGNyZWF0ZSAuYyBmaWxlcywgYW5kIG1vZGlmeSB0aGUgc291cmNlcyBsaXN0CisgICAgICAgICMgYWNjb3JkaW5nbHkuCisgICAgICAgIHNvdXJjZXMgPSBzZWxmLnN3aWdfc291cmNlcyhzb3VyY2VzLCBleHQpCisKKyAgICAgICAgIyBOZXh0LCBjb21waWxlIHRoZSBzb3VyY2UgY29kZSB0byBvYmplY3QgZmlsZXMuCisKKyAgICAgICAgIyBYWFggbm90IGhvbm91cmluZyAnZGVmaW5lX21hY3Jvcycgb3IgJ3VuZGVmX21hY3JvcycgLS0gdGhlCisgICAgICAgICMgQ0NvbXBpbGVyIEFQSSBuZWVkcyB0byBjaGFuZ2UgdG8gYWNjb21tb2RhdGUgdGhpcywgYW5kIEkKKyAgICAgICAgIyB3YW50IHRvIGRvIG9uZSB0aGluZyBhdCBhIHRpbWUhCisKKyAgICAgICAgIyBUd28gcG9zc2libGUgc291cmNlcyBmb3IgZXh0cmEgY29tcGlsZXIgYXJndW1lbnRzOgorICAgICAgICAjICAgLSAnZXh0cmFfY29tcGlsZV9hcmdzJyBpbiBFeHRlbnNpb24gb2JqZWN0CisgICAgICAgICMgICAtIENGTEFHUyBlbnZpcm9ubWVudCB2YXJpYWJsZSAobm90IHBhcnRpY3VsYXJseQorICAgICAgICAjICAgICBlbGVnYW50LCBidXQgcGVvcGxlIHNlZW0gdG8gZXhwZWN0IGl0IGFuZCBJCisgICAgICAgICMgICAgIGd1ZXNzIGl0J3MgdXNlZnVsKQorICAgICAgICAjIFRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBzaG91bGQgdGFrZSBwcmVjZWRlbmNlLCBhbmQKKyAgICAgICAgIyBhbnkgc2Vuc2libGUgY29tcGlsZXIgd2lsbCBnaXZlIHByZWNlZGVuY2UgdG8gbGF0ZXIKKyAgICAgICAgIyBjb21tYW5kLWxpbmUgYXJncy4gIEhlbmNlIHdlIGNvbWJpbmUgdGhlbSBpbiBvcmRlcjoKKyAgICAgICAgZXh0cmFfYXJncyA9IGV4dC5leHRyYV9jb21waWxlX2FyZ3Mgb3IgW10KKworICAgICAgICBtYWNyb3MgPSBleHQuZGVmaW5lX21hY3Jvc1s6XQorICAgICAgICBmb3IgdW5kZWYgaW4gZXh0LnVuZGVmX21hY3JvczoKKyAgICAgICAgICAgIG1hY3Jvcy5hcHBlbmQoKHVuZGVmLCkpCisKKyAgICAgICAgb2JqZWN0cyA9IHNlbGYuY29tcGlsZXJfb2JqLmNvbXBpbGUoc291cmNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj1zZWxmLmJ1aWxkX3RlbXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hY3Jvcz1tYWNyb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycz1leHQuaW5jbHVkZV9kaXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz1zZWxmLmRlYnVnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYV9wb3N0YXJncz1leHRyYV9hcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXBlbmRzPWV4dC5kZXBlbmRzKQorCisgICAgICAgICMgWFhYIC0tIHRoaXMgaXMgYSBWaWxlIEhBQ0shCisgICAgICAgICMKKyAgICAgICAgIyBUaGUgc2V0dXAucHkgc2NyaXB0IGZvciBQeXRob24gb24gVW5peCBuZWVkcyB0byBiZSBhYmxlIHRvCisgICAgICAgICMgZ2V0IHRoaXMgbGlzdCBzbyBpdCBjYW4gcGVyZm9ybSBhbGwgdGhlIGNsZWFuIHVwIG5lZWRlZCB0bworICAgICAgICAjIGF2b2lkIGtlZXBpbmcgb2JqZWN0IGZpbGVzIGFyb3VuZCB3aGVuIGNsZWFuaW5nIG91dCBhIGZhaWxlZAorICAgICAgICAjIGJ1aWxkIG9mIGFuIGV4dGVuc2lvbiBtb2R1bGUuICBTaW5jZSBQYWNrYWdpbmcgZG9lcyBub3QKKyAgICAgICAgIyB0cmFjayBkZXBlbmRlbmNpZXMsIHdlIGhhdmUgdG8gZ2V0IHJpZCBvZiBpbnRlcm1lZGlhdGVzIHRvCisgICAgICAgICMgZW5zdXJlIGFsbCB0aGUgaW50ZXJtZWRpYXRlcyB3aWxsIGJlIHByb3Blcmx5IHJlLWJ1aWx0LgorICAgICAgICAjCisgICAgICAgIHNlbGYuX2J1aWx0X29iamVjdHMgPSBvYmplY3RzWzpdCisKKyAgICAgICAgIyBOb3cgbGluayB0aGUgb2JqZWN0IGZpbGVzIHRvZ2V0aGVyIGludG8gYSAic2hhcmVkIG9iamVjdCIgLS0KKyAgICAgICAgIyBvZiBjb3Vyc2UsIGZpcnN0IHdlIGhhdmUgdG8gZmlndXJlIG91dCBhbGwgdGhlIG90aGVyIHRoaW5ncworICAgICAgICAjIHRoYXQgZ28gaW50byB0aGUgbWl4LgorICAgICAgICBpZiBleHQuZXh0cmFfb2JqZWN0czoKKyAgICAgICAgICAgIG9iamVjdHMuZXh0ZW5kKGV4dC5leHRyYV9vYmplY3RzKQorICAgICAgICBleHRyYV9hcmdzID0gZXh0LmV4dHJhX2xpbmtfYXJncyBvciBbXQorCisgICAgICAgICMgRGV0ZWN0IHRhcmdldCBsYW5ndWFnZSwgaWYgbm90IHByb3ZpZGVkCisgICAgICAgIGxhbmd1YWdlID0gZXh0Lmxhbmd1YWdlIG9yIHNlbGYuY29tcGlsZXJfb2JqLmRldGVjdF9sYW5ndWFnZShzb3VyY2VzKQorCisgICAgICAgIHNlbGYuY29tcGlsZXJfb2JqLmxpbmtfc2hhcmVkX29iamVjdCgKKyAgICAgICAgICAgIG9iamVjdHMsIGV4dF9wYXRoLAorICAgICAgICAgICAgbGlicmFyaWVzPXNlbGYuZ2V0X2xpYnJhcmllcyhleHQpLAorICAgICAgICAgICAgbGlicmFyeV9kaXJzPWV4dC5saWJyYXJ5X2RpcnMsCisgICAgICAgICAgICBydW50aW1lX2xpYnJhcnlfZGlycz1leHQucnVudGltZV9saWJyYXJ5X2RpcnMsCisgICAgICAgICAgICBleHRyYV9wb3N0YXJncz1leHRyYV9hcmdzLAorICAgICAgICAgICAgZXhwb3J0X3N5bWJvbHM9c2VsZi5nZXRfZXhwb3J0X3N5bWJvbHMoZXh0KSwKKyAgICAgICAgICAgIGRlYnVnPXNlbGYuZGVidWcsCisgICAgICAgICAgICBidWlsZF90ZW1wPXNlbGYuYnVpbGRfdGVtcCwKKyAgICAgICAgICAgIHRhcmdldF9sYW5nPWxhbmd1YWdlKQorCisKKyAgICBkZWYgc3dpZ19zb3VyY2VzKHNlbGYsIHNvdXJjZXMsIGV4dGVuc2lvbik6CisgICAgICAgICIiIldhbGsgdGhlIGxpc3Qgb2Ygc291cmNlIGZpbGVzIGluICdzb3VyY2VzJywgbG9va2luZyBmb3IgU1dJRworICAgICAgICBpbnRlcmZhY2UgKC5pKSBmaWxlcy4gIFJ1biBTV0lHIG9uIGFsbCB0aGF0IGFyZSBmb3VuZCwgYW5kCisgICAgICAgIHJldHVybiBhIG1vZGlmaWVkICdzb3VyY2VzJyBsaXN0IHdpdGggU1dJRyBzb3VyY2UgZmlsZXMgcmVwbGFjZWQKKyAgICAgICAgYnkgdGhlIGdlbmVyYXRlZCBDIChvciBDKyspIGZpbGVzLgorICAgICAgICAiIiIKKyAgICAgICAgbmV3X3NvdXJjZXMgPSBbXQorICAgICAgICBzd2lnX3NvdXJjZXMgPSBbXQorICAgICAgICBzd2lnX3RhcmdldHMgPSB7fQorCisgICAgICAgICMgWFhYIHRoaXMgZHJvcHMgZ2VuZXJhdGVkIEMvQysrIGZpbGVzIGludG8gdGhlIHNvdXJjZSB0cmVlLCB3aGljaAorICAgICAgICAjIGlzIGZpbmUgZm9yIGRldmVsb3BlcnMgd2hvIHdhbnQgdG8gZGlzdHJpYnV0ZSB0aGUgZ2VuZXJhdGVkCisgICAgICAgICMgc291cmNlIC0tIGJ1dCB0aGVyZSBzaG91bGQgYmUgYW4gb3B0aW9uIHRvIHB1dCBTV0lHIG91dHB1dCBpbgorICAgICAgICAjIHRoZSB0ZW1wIGRpci4KKworICAgICAgICBpZiAoJy1jKysnIGluIHNlbGYuc3dpZ19vcHRzIG9yICctYysrJyBpbiBleHRlbnNpb24uc3dpZ19vcHRzKToKKyAgICAgICAgICAgIHRhcmdldF9leHQgPSAnLmNwcCcKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHRhcmdldF9leHQgPSAnLmMnCisKKyAgICAgICAgZm9yIHNvdXJjZSBpbiBzb3VyY2VzOgorICAgICAgICAgICAgYmFzZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChzb3VyY2UpCisgICAgICAgICAgICBpZiBleHQgPT0gIi5pIjogICAgICAgICAgICAgIyBTV0lHIGludGVyZmFjZSBmaWxlCisgICAgICAgICAgICAgICAgbmV3X3NvdXJjZXMuYXBwZW5kKGJhc2UgKyAnX3dyYXAnICsgdGFyZ2V0X2V4dCkKKyAgICAgICAgICAgICAgICBzd2lnX3NvdXJjZXMuYXBwZW5kKHNvdXJjZSkKKyAgICAgICAgICAgICAgICBzd2lnX3RhcmdldHNbc291cmNlXSA9IG5ld19zb3VyY2VzWy0xXQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBuZXdfc291cmNlcy5hcHBlbmQoc291cmNlKQorCisgICAgICAgIGlmIG5vdCBzd2lnX3NvdXJjZXM6CisgICAgICAgICAgICByZXR1cm4gbmV3X3NvdXJjZXMKKworICAgICAgICBzd2lnID0gc2VsZi5zd2lnIG9yIHNlbGYuZmluZF9zd2lnKCkKKyAgICAgICAgc3dpZ19jbWQgPSBbc3dpZywgIi1weXRob24iXQorICAgICAgICBzd2lnX2NtZC5leHRlbmQoc2VsZi5zd2lnX29wdHMpCisKKyAgICAgICAgIyBEbyBub3Qgb3ZlcnJpZGUgY29tbWFuZGxpbmUgYXJndW1lbnRzCisgICAgICAgIGlmIG5vdCBzZWxmLnN3aWdfb3B0czoKKyAgICAgICAgICAgIGZvciBvIGluIGV4dGVuc2lvbi5zd2lnX29wdHM6CisgICAgICAgICAgICAgICAgc3dpZ19jbWQuYXBwZW5kKG8pCisKKyAgICAgICAgZm9yIHNvdXJjZSBpbiBzd2lnX3NvdXJjZXM6CisgICAgICAgICAgICB0YXJnZXQgPSBzd2lnX3RhcmdldHNbc291cmNlXQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oInN3aWdnaW5nICVzIHRvICVzIiwgc291cmNlLCB0YXJnZXQpCisgICAgICAgICAgICBzZWxmLnNwYXduKHN3aWdfY21kICsgWyItbyIsIHRhcmdldCwgc291cmNlXSkKKworICAgICAgICByZXR1cm4gbmV3X3NvdXJjZXMKKworICAgIGRlZiBmaW5kX3N3aWcoc2VsZik6CisgICAgICAgICIiIlJldHVybiB0aGUgbmFtZSBvZiB0aGUgU1dJRyBleGVjdXRhYmxlLiAgT24gVW5peCwgdGhpcyBpcworICAgICAgICBqdXN0ICJzd2lnIiAtLSBpdCBzaG91bGQgYmUgaW4gdGhlIFBBVEguICBUcmllcyBhIGJpdCBoYXJkZXIgb24KKyAgICAgICAgV2luZG93cy4KKyAgICAgICAgIiIiCisKKyAgICAgICAgaWYgb3MubmFtZSA9PSAicG9zaXgiOgorICAgICAgICAgICAgcmV0dXJuICJzd2lnIgorICAgICAgICBlbGlmIG9zLm5hbWUgPT0gIm50IjoKKworICAgICAgICAgICAgIyBMb29rIGZvciBTV0lHIGluIGl0cyBzdGFuZGFyZCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IG9uCisgICAgICAgICAgICAjIFdpbmRvd3MgKG9yIHNvIEkgcHJlc3VtZSEpLiAgSWYgd2UgZmluZCBpdCB0aGVyZSwgZ3JlYXQ7CisgICAgICAgICAgICAjIGlmIG5vdCwgYWN0IGxpa2UgVW5peCBhbmQgYXNzdW1lIGl0J3MgaW4gdGhlIFBBVEguCisgICAgICAgICAgICBmb3IgdmVycyBpbiAoIjEuMyIsICIxLjIiLCAiMS4xIik6CisgICAgICAgICAgICAgICAgZm4gPSBvcy5wYXRoLmpvaW4oImM6XFxzd2lnJXMiICUgdmVycywgInN3aWcuZXhlIikKKyAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShmbik6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBmbgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByZXR1cm4gInN3aWcuZXhlIgorCisgICAgICAgIGVsaWYgb3MubmFtZSA9PSAib3MyIjoKKyAgICAgICAgICAgICMgYXNzdW1lIHN3aWcgYXZhaWxhYmxlIGluIHRoZSBQQVRILgorICAgICAgICAgICAgcmV0dXJuICJzd2lnLmV4ZSIKKworICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigoIkkgZG9uJ3Qga25vdyBob3cgdG8gZmluZCAobXVjaCBsZXNzIHJ1bikgU1dJRyAiCisgICAgICAgICAgICAgICAgICAgIm9uIHBsYXRmb3JtICclcyciKSAlIG9zLm5hbWUpCisKKyAgICAjIC0tIE5hbWUgZ2VuZXJhdG9ycyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICMgKGV4dGVuc2lvbiBuYW1lcywgZmlsZW5hbWVzLCB3aGF0ZXZlcikKKyAgICBkZWYgZ2V0X2V4dF9mdWxscGF0aChzZWxmLCBleHRfbmFtZSk6CisgICAgICAgICIiIlJldHVybnMgdGhlIHBhdGggb2YgdGhlIGZpbGVuYW1lIGZvciBhIGdpdmVuIGV4dGVuc2lvbi4KKworICAgICAgICBUaGUgZmlsZSBpcyBsb2NhdGVkIGluIGBidWlsZF9saWJgIG9yIGRpcmVjdGx5IGluIHRoZSBwYWNrYWdlCisgICAgICAgIChpbnBsYWNlIG9wdGlvbikuCisgICAgICAgICIiIgorICAgICAgICBmdWxsbmFtZSA9IHNlbGYuZ2V0X2V4dF9mdWxsbmFtZShleHRfbmFtZSkKKyAgICAgICAgbW9kcGF0aCA9IGZ1bGxuYW1lLnNwbGl0KCcuJykKKyAgICAgICAgZmlsZW5hbWUgPSBzZWxmLmdldF9leHRfZmlsZW5hbWUobW9kcGF0aFstMV0pCisKKyAgICAgICAgaWYgbm90IHNlbGYuaW5wbGFjZToKKyAgICAgICAgICAgICMgbm8gZnVydGhlciB3b3JrIG5lZWRlZAorICAgICAgICAgICAgIyByZXR1cm5pbmcgOgorICAgICAgICAgICAgIyAgIGJ1aWxkX2Rpci9wYWNrYWdlL3BhdGgvZmlsZW5hbWUKKyAgICAgICAgICAgIGZpbGVuYW1lID0gb3MucGF0aC5qb2luKCptb2RwYXRoWzotMV0rW2ZpbGVuYW1lXSkKKyAgICAgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oc2VsZi5idWlsZF9saWIsIGZpbGVuYW1lKQorCisgICAgICAgICMgdGhlIGlucGxhY2Ugb3B0aW9uIHJlcXVpcmVzIHRvIGZpbmQgdGhlIHBhY2thZ2UgZGlyZWN0b3J5CisgICAgICAgICMgdXNpbmcgdGhlIGJ1aWxkX3B5IGNvbW1hbmQgZm9yIHRoYXQKKyAgICAgICAgcGFja2FnZSA9ICcuJy5qb2luKG1vZHBhdGhbMDotMV0pCisgICAgICAgIGJ1aWxkX3B5ID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2J1aWxkX3B5JykKKyAgICAgICAgcGFja2FnZV9kaXIgPSBvcy5wYXRoLmFic3BhdGgoYnVpbGRfcHkuZ2V0X3BhY2thZ2VfZGlyKHBhY2thZ2UpKQorCisgICAgICAgICMgcmV0dXJuaW5nCisgICAgICAgICMgICBwYWNrYWdlX2Rpci9maWxlbmFtZQorICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKHBhY2thZ2VfZGlyLCBmaWxlbmFtZSkKKworICAgIGRlZiBnZXRfZXh0X2Z1bGxuYW1lKHNlbGYsIGV4dF9uYW1lKToKKyAgICAgICAgIiIiUmV0dXJucyB0aGUgZnVsbG5hbWUgb2YgYSBnaXZlbiBleHRlbnNpb24gbmFtZS4KKworICAgICAgICBBZGRzIHRoZSBgcGFja2FnZS5gIHByZWZpeCIiIgorICAgICAgICBpZiBzZWxmLnBhY2thZ2UgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiBleHRfbmFtZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYucGFja2FnZSArICcuJyArIGV4dF9uYW1lCisKKyAgICBkZWYgZ2V0X2V4dF9maWxlbmFtZShzZWxmLCBleHRfbmFtZSk6CisgICAgICAgIHIiIiJDb252ZXJ0IHRoZSBuYW1lIG9mIGFuIGV4dGVuc2lvbiAoZWcuICJmb28uYmFyIikgaW50byB0aGUgbmFtZQorICAgICAgICBvZiB0aGUgZmlsZSBmcm9tIHdoaWNoIGl0IHdpbGwgYmUgbG9hZGVkIChlZy4gImZvby9iYXIuc28iLCBvcgorICAgICAgICAiZm9vXGJhci5weWQiKS4KKyAgICAgICAgIiIiCisgICAgICAgIGV4dF9wYXRoID0gZXh0X25hbWUuc3BsaXQoJy4nKQorICAgICAgICAjIE9TLzIgaGFzIGFuIDggY2hhcmFjdGVyIG1vZHVsZSAoZXh0ZW5zaW9uKSBsaW1pdCA6LSgKKyAgICAgICAgaWYgb3MubmFtZSA9PSAib3MyIjoKKyAgICAgICAgICAgIGV4dF9wYXRoW2xlbihleHRfcGF0aCkgLSAxXSA9IGV4dF9wYXRoW2xlbihleHRfcGF0aCkgLSAxXVs6OF0KKyAgICAgICAgIyBleHRlbnNpb25zIGluIGRlYnVnX21vZGUgYXJlIG5hbWVkICdtb2R1bGVfZC5weWQnIHVuZGVyIHdpbmRvd3MKKyAgICAgICAgc29fZXh0ID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdTTycpCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ250JyBhbmQgc2VsZi5kZWJ1ZzoKKyAgICAgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oKmV4dF9wYXRoKSArICdfZCcgKyBzb19leHQKKyAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbigqZXh0X3BhdGgpICsgc29fZXh0CisKKyAgICBkZWYgZ2V0X2V4cG9ydF9zeW1ib2xzKHNlbGYsIGV4dCk6CisgICAgICAgICIiIlJldHVybiB0aGUgbGlzdCBvZiBzeW1ib2xzIHRoYXQgYSBzaGFyZWQgZXh0ZW5zaW9uIGhhcyB0bworICAgICAgICBleHBvcnQuICBUaGlzIGVpdGhlciB1c2VzICdleHQuZXhwb3J0X3N5bWJvbHMnIG9yLCBpZiBpdCdzIG5vdAorICAgICAgICBwcm92aWRlZCwgImluaXQiICsgbW9kdWxlX25hbWUuICBPbmx5IHJlbGV2YW50IG9uIFdpbmRvd3MsIHdoZXJlCisgICAgICAgIHRoZSAucHlkIGZpbGUgKERMTCkgbXVzdCBleHBvcnQgdGhlIG1vZHVsZSAiaW5pdCIgZnVuY3Rpb24uCisgICAgICAgICIiIgorICAgICAgICBpbml0ZnVuY19uYW1lID0gIlB5SW5pdF8iICsgZXh0Lm5hbWUuc3BsaXQoJy4nKVstMV0KKyAgICAgICAgaWYgaW5pdGZ1bmNfbmFtZSBub3QgaW4gZXh0LmV4cG9ydF9zeW1ib2xzOgorICAgICAgICAgICAgZXh0LmV4cG9ydF9zeW1ib2xzLmFwcGVuZChpbml0ZnVuY19uYW1lKQorICAgICAgICByZXR1cm4gZXh0LmV4cG9ydF9zeW1ib2xzCisKKyAgICBkZWYgZ2V0X2xpYnJhcmllcyhzZWxmLCBleHQpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGxpc3Qgb2YgbGlicmFyaWVzIHRvIGxpbmsgYWdhaW5zdCB3aGVuIGJ1aWxkaW5nIGEKKyAgICAgICAgc2hhcmVkIGV4dGVuc2lvbi4gIE9uIG1vc3QgcGxhdGZvcm1zLCB0aGlzIGlzIGp1c3QgJ2V4dC5saWJyYXJpZXMnOworICAgICAgICBvbiBXaW5kb3dzIGFuZCBPUy8yLCB3ZSBhZGQgdGhlIFB5dGhvbiBsaWJyYXJ5IChlZy4gcHl0aG9uMjAuZGxsKS4KKyAgICAgICAgIiIiCisgICAgICAgICMgVGhlIHB5dGhvbiBsaWJyYXJ5IGlzIGFsd2F5cyBuZWVkZWQgb24gV2luZG93cy4gIEZvciBNU1ZDLCB0aGlzCisgICAgICAgICMgaXMgcmVkdW5kYW50LCBzaW5jZSB0aGUgbGlicmFyeSBpcyBtZW50aW9uZWQgaW4gYSBwcmFnbWEgaW4KKyAgICAgICAgIyBweWNvbmZpZy5oIHRoYXQgTVNWQyBncm9rcy4gIFRoZSBvdGhlciBXaW5kb3dzIGNvbXBpbGVycyBhbGwgc2VlbQorICAgICAgICAjIHRvIG5lZWQgaXQgbWVudGlvbmVkIGV4cGxpY2l0bHksIHRob3VnaCwgc28gdGhhdCdzIHdoYXQgd2UgZG8uCisgICAgICAgICMgQXBwZW5kICdfZCcgdG8gdGhlIHB5dGhvbiBpbXBvcnQgbGlicmFyeSBvbiBkZWJ1ZyBidWlsZHMuCisgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiOgorICAgICAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIubXN2Y2NvbXBpbGVyIGltcG9ydCBNU1ZDQ29tcGlsZXIKKyAgICAgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKHNlbGYuY29tcGlsZXJfb2JqLCBNU1ZDQ29tcGlsZXIpOgorICAgICAgICAgICAgICAgIHRlbXBsYXRlID0gInB5dGhvbiVkJWQiCisgICAgICAgICAgICAgICAgaWYgc2VsZi5kZWJ1ZzoKKyAgICAgICAgICAgICAgICAgICAgdGVtcGxhdGUgPSB0ZW1wbGF0ZSArICdfZCcKKyAgICAgICAgICAgICAgICBweXRob25saWIgPSB0ZW1wbGF0ZSAlIHN5cy52ZXJzaW9uX2luZm9bOjJdCisgICAgICAgICAgICAgICAgIyBkb24ndCBleHRlbmQgZXh0LmxpYnJhcmllcywgaXQgbWF5IGJlIHNoYXJlZCB3aXRoIG90aGVyCisgICAgICAgICAgICAgICAgIyBleHRlbnNpb25zLCBpdCBpcyBhIHJlZmVyZW5jZSB0byB0aGUgb3JpZ2luYWwgbGlzdAorICAgICAgICAgICAgICAgIHJldHVybiBleHQubGlicmFyaWVzICsgW3B5dGhvbmxpYl0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuIGV4dC5saWJyYXJpZXMKKyAgICAgICAgZWxpZiBzeXMucGxhdGZvcm0gPT0gIm9zMmVteCI6CisgICAgICAgICAgICAjIEVNWC9HQ0MgcmVxdWlyZXMgdGhlIHB5dGhvbiBsaWJyYXJ5IGV4cGxpY2l0bHksIGFuZCBJCisgICAgICAgICAgICAjIGJlbGlldmUgVkFDUFAgZG9lcyBhcyB3ZWxsICh0aG91Z2ggbm90IGNvbmZpcm1lZCkgLSBBSU0gQXByMDEKKyAgICAgICAgICAgIHRlbXBsYXRlID0gInB5dGhvbiVkJWQiCisgICAgICAgICAgICAjIGRlYnVnIHZlcnNpb25zIG9mIHRoZSBtYWluIERMTCBhcmVuJ3Qgc3VwcG9ydGVkLCBhdCBsZWFzdAorICAgICAgICAgICAgIyBub3QgYXQgdGhpcyB0aW1lIC0gQUlNIEFwcjAxCisgICAgICAgICAgICAjaWYgc2VsZi5kZWJ1ZzoKKyAgICAgICAgICAgICMgICAgdGVtcGxhdGUgPSB0ZW1wbGF0ZSArICdfZCcKKyAgICAgICAgICAgIHB5dGhvbmxpYiA9IHRlbXBsYXRlICUgc3lzLnZlcnNpb25faW5mb1s6Ml0KKyAgICAgICAgICAgICMgZG9uJ3QgZXh0ZW5kIGV4dC5saWJyYXJpZXMsIGl0IG1heSBiZSBzaGFyZWQgd2l0aCBvdGhlcgorICAgICAgICAgICAgIyBleHRlbnNpb25zLCBpdCBpcyBhIHJlZmVyZW5jZSB0byB0aGUgb3JpZ2luYWwgbGlzdAorICAgICAgICAgICAgcmV0dXJuIGV4dC5saWJyYXJpZXMgKyBbcHl0aG9ubGliXQorICAgICAgICBlbGlmIHN5cy5wbGF0Zm9ybVs6Nl0gPT0gImN5Z3dpbiI6CisgICAgICAgICAgICB0ZW1wbGF0ZSA9ICJweXRob24lZC4lZCIKKyAgICAgICAgICAgIHB5dGhvbmxpYiA9IHRlbXBsYXRlICUgc3lzLnZlcnNpb25faW5mb1s6Ml0KKyAgICAgICAgICAgICMgZG9uJ3QgZXh0ZW5kIGV4dC5saWJyYXJpZXMsIGl0IG1heSBiZSBzaGFyZWQgd2l0aCBvdGhlcgorICAgICAgICAgICAgIyBleHRlbnNpb25zLCBpdCBpcyBhIHJlZmVyZW5jZSB0byB0aGUgb3JpZ2luYWwgbGlzdAorICAgICAgICAgICAgcmV0dXJuIGV4dC5saWJyYXJpZXMgKyBbcHl0aG9ubGliXQorICAgICAgICBlbGlmIHN5cy5wbGF0Zm9ybVs6Nl0gPT0gImF0aGVvcyI6CisgICAgICAgICAgICB0ZW1wbGF0ZSA9ICJweXRob24lZC4lZCIKKyAgICAgICAgICAgIHB5dGhvbmxpYiA9IHRlbXBsYXRlICUgc3lzLnZlcnNpb25faW5mb1s6Ml0KKyAgICAgICAgICAgICMgR2V0IFNITElCUyBmcm9tIE1ha2VmaWxlCisgICAgICAgICAgICBleHRyYSA9IFtdCisgICAgICAgICAgICBmb3IgbGliIGluIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignU0hMSUJTJykuc3BsaXQoKToKKyAgICAgICAgICAgICAgICBpZiBsaWIuc3RhcnRzd2l0aCgnLWwnKToKKyAgICAgICAgICAgICAgICAgICAgZXh0cmEuYXBwZW5kKGxpYlsyOl0pCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgZXh0cmEuYXBwZW5kKGxpYikKKyAgICAgICAgICAgICMgZG9uJ3QgZXh0ZW5kIGV4dC5saWJyYXJpZXMsIGl0IG1heSBiZSBzaGFyZWQgd2l0aCBvdGhlcgorICAgICAgICAgICAgIyBleHRlbnNpb25zLCBpdCBpcyBhIHJlZmVyZW5jZSB0byB0aGUgb3JpZ2luYWwgbGlzdAorICAgICAgICAgICAgcmV0dXJuIGV4dC5saWJyYXJpZXMgKyBbcHl0aG9ubGliLCAibSJdICsgZXh0cmEKKworICAgICAgICBlbGlmIHN5cy5wbGF0Zm9ybSA9PSAnZGFyd2luJzoKKyAgICAgICAgICAgICMgRG9uJ3QgdXNlIHRoZSBkZWZhdWx0IGNvZGUgYmVsb3cKKyAgICAgICAgICAgIHJldHVybiBleHQubGlicmFyaWVzCisKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignUHlfRU5BQkxFX1NIQVJFRCcpOgorICAgICAgICAgICAgICAgIHRlbXBsYXRlID0gJ3B5dGhvbiVkLiVkJyArIHN5cy5hYmlmbGFncworICAgICAgICAgICAgICAgIHB5dGhvbmxpYiA9IHRlbXBsYXRlICUgc3lzLnZlcnNpb25faW5mb1s6Ml0KKyAgICAgICAgICAgICAgICByZXR1cm4gZXh0LmxpYnJhcmllcyArIFtweXRob25saWJdCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJldHVybiBleHQubGlicmFyaWVzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYnVpbGRfcHkucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYnVpbGRfcHkucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDA2MjE0MAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9idWlsZF9weS5weQpAQCAtMCwwICsxLDM5MiBAQAorIiIiQnVpbGQgcHVyZSBQeXRob24gbW9kdWxlcyAoanVzdCBjb3B5IHRvIGJ1aWxkIGRpcmVjdG9yeSkuIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IGltcAorZnJvbSBnbG9iIGltcG9ydCBnbG9iCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yLCBQYWNrYWdpbmdGaWxlRXJyb3IKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGNvbnZlcnRfcGF0aAorZnJvbSBwYWNrYWdpbmcuY29tcGF0IGltcG9ydCBNaXhpbjJ0bzMKKworIyBtYXJraW5nIHB1YmxpYyBBUElzCitfX2FsbF9fID0gWydidWlsZF9weSddCisKKworY2xhc3MgYnVpbGRfcHkoQ29tbWFuZCwgTWl4aW4ydG8zKToKKworICAgIGRlc2NyaXB0aW9uID0gImJ1aWxkIHB1cmUgUHl0aG9uIG1vZHVsZXMgKGNvcHkgdG8gYnVpbGQgZGlyZWN0b3J5KSIKKworICAgICMgVGhlIG9wdGlvbnMgZm9yIGNvbnRyb2xsaW5nIGJ5dGUgY29tcGlsYXRpb24gYXJlIHR3byBpbmRlcGVuZGVudCBzZXRzOworICAgICMgbW9yZSBpbmZvIGluIGluc3RhbGxfbGliIG9yIHRoZSByZVNUIGRvY3MKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdidWlsZC1saWI9JywgJ2QnLCAiZGlyZWN0b3J5IHRvIGJ1aWxkIChjb3B5KSB0byIpLAorICAgICAgICAoJ2NvbXBpbGUnLCAnYycsICJjb21waWxlIC5weSB0byAucHljIiksCisgICAgICAgICgnbm8tY29tcGlsZScsIE5vbmUsICJkb24ndCBjb21waWxlIC5weSBmaWxlcyBbZGVmYXVsdF0iKSwKKyAgICAgICAgKCdvcHRpbWl6ZT0nLCAnTycsCisgICAgICAgICAiYWxzbyBjb21waWxlIHdpdGggb3B0aW1pemF0aW9uOiAtTzEgZm9yIFwicHl0aG9uIC1PXCIsICIKKyAgICAgICAgICItTzIgZm9yIFwicHl0aG9uIC1PT1wiLCBhbmQgLU8wIHRvIGRpc2FibGUgW2RlZmF1bHQ6IC1PMF0iKSwKKyAgICAgICAgKCdmb3JjZScsICdmJywgImZvcmNpYmx5IGJ1aWxkIGV2ZXJ5dGhpbmcgKGlnbm9yZSBmaWxlIHRpbWVzdGFtcHMpIiksCisgICAgICAgICgndXNlLTJ0bzMnLCBOb25lLAorICAgICAgICAgInVzZSAydG8zIHRvIG1ha2Ugc291cmNlIHB5dGhvbiAzLnggY29tcGF0aWJsZSIpLAorICAgICAgICAoJ2NvbnZlcnQtMnRvMy1kb2N0ZXN0cycsIE5vbmUsCisgICAgICAgICAidXNlIDJ0bzMgdG8gY29udmVydCBkb2N0ZXN0cyBpbiBzZXBhcmF0ZSB0ZXh0IGZpbGVzIiksCisgICAgICAgICgndXNlLTJ0bzMtZml4ZXJzJywgTm9uZSwKKyAgICAgICAgICJsaXN0IGFkZGl0aW9uYWwgZml4ZXJzIG9wdGVkIGZvciBkdXJpbmcgMnRvMyBjb252ZXJzaW9uIiksCisgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsnY29tcGlsZScsICdmb3JjZSddCisKKyAgICBuZWdhdGl2ZV9vcHQgPSB7J25vLWNvbXBpbGUnOiAnY29tcGlsZSd9CisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmJ1aWxkX2xpYiA9IE5vbmUKKyAgICAgICAgc2VsZi5weV9tb2R1bGVzID0gTm9uZQorICAgICAgICBzZWxmLnBhY2thZ2UgPSBOb25lCisgICAgICAgIHNlbGYucGFja2FnZV9kYXRhID0gTm9uZQorICAgICAgICBzZWxmLnBhY2thZ2VfZGlyID0gTm9uZQorICAgICAgICBzZWxmLmNvbXBpbGUgPSBGYWxzZQorICAgICAgICBzZWxmLm9wdGltaXplID0gMAorICAgICAgICBzZWxmLmZvcmNlID0gTm9uZQorICAgICAgICBzZWxmLl91cGRhdGVkX2ZpbGVzID0gW10KKyAgICAgICAgc2VsZi5fZG9jdGVzdHNfMnRvMyA9IFtdCisgICAgICAgIHNlbGYudXNlXzJ0bzMgPSBGYWxzZQorICAgICAgICBzZWxmLmNvbnZlcnRfMnRvM19kb2N0ZXN0cyA9IE5vbmUKKyAgICAgICAgc2VsZi51c2VfMnRvM19maXhlcnMgPSBOb25lCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2J1aWxkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3VzZV8ydG8zJywgJ3VzZV8ydG8zX2ZpeGVycycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjb252ZXJ0XzJ0bzNfZG9jdGVzdHMnLCAnYnVpbGRfbGliJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvcmNlJykKKworICAgICAgICAjIEdldCB0aGUgZGlzdHJpYnV0aW9uIG9wdGlvbnMgdGhhdCBhcmUgYWxpYXNlcyBmb3IgYnVpbGRfcHkKKyAgICAgICAgIyBvcHRpb25zIC0tIGxpc3Qgb2YgcGFja2FnZXMgYW5kIGxpc3Qgb2YgbW9kdWxlcy4KKyAgICAgICAgc2VsZi5wYWNrYWdlcyA9IHNlbGYuZGlzdHJpYnV0aW9uLnBhY2thZ2VzCisgICAgICAgIHNlbGYucHlfbW9kdWxlcyA9IHNlbGYuZGlzdHJpYnV0aW9uLnB5X21vZHVsZXMKKyAgICAgICAgc2VsZi5wYWNrYWdlX2RhdGEgPSBzZWxmLmRpc3RyaWJ1dGlvbi5wYWNrYWdlX2RhdGEKKyAgICAgICAgc2VsZi5wYWNrYWdlX2RpciA9IE5vbmUKKyAgICAgICAgaWYgc2VsZi5kaXN0cmlidXRpb24ucGFja2FnZV9kaXIgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLnBhY2thZ2VfZGlyID0gY29udmVydF9wYXRoKHNlbGYuZGlzdHJpYnV0aW9uLnBhY2thZ2VfZGlyKQorICAgICAgICBzZWxmLmRhdGFfZmlsZXMgPSBzZWxmLmdldF9kYXRhX2ZpbGVzKCkKKworICAgICAgICAjIEljaywgY29waWVkIHN0cmFpZ2h0IGZyb20gaW5zdGFsbF9saWIucHkgKGZhbmN5X2dldG9wdCBuZWVkcyBhCisgICAgICAgICMgdHlwZSBzeXN0ZW0hICBIZWxsLCAqZXZlcnl0aGluZyogbmVlZHMgYSB0eXBlIHN5c3RlbSEhISkKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc2VsZi5vcHRpbWl6ZSwgaW50KToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLm9wdGltaXplID0gaW50KHNlbGYub3B0aW1pemUpCisgICAgICAgICAgICAgICAgYXNzZXJ0IDAgPD0gc2VsZi5vcHRpbWl6ZSA8PSAyCisgICAgICAgICAgICBleGNlcHQgKFZhbHVlRXJyb3IsIEFzc2VydGlvbkVycm9yKToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigib3B0aW1pemUgbXVzdCBiZSAwLCAxLCBvciAyIikKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgICMgWFhYIGNvcHlfZmlsZSBieSBkZWZhdWx0IHByZXNlcnZlcyBhdGltZSBhbmQgbXRpbWUuICBJTUhPIHRoaXMgaXMKKyAgICAgICAgIyB0aGUgcmlnaHQgdGhpbmcgdG8gZG8sIGJ1dCBwZXJoYXBzIGl0IHNob3VsZCBiZSBhbiBvcHRpb24gLS0gaW4KKyAgICAgICAgIyBwYXJ0aWN1bGFyLCBhIHNpdGUgYWRtaW5pc3RyYXRvciBtaWdodCB3YW50IGluc3RhbGxlZCBmaWxlcyB0bworICAgICAgICAjIHJlZmxlY3QgdGhlIHRpbWUgb2YgaW5zdGFsbGF0aW9uIHJhdGhlciB0aGFuIHRoZSBsYXN0CisgICAgICAgICMgbW9kaWZpY2F0aW9uIHRpbWUgYmVmb3JlIHRoZSBpbnN0YWxsZWQgcmVsZWFzZS4KKworICAgICAgICAjIFhYWCBjb3B5X2ZpbGUgYnkgZGVmYXVsdCBwcmVzZXJ2ZXMgbW9kZSwgd2hpY2ggYXBwZWFycyB0byBiZSB0aGUKKyAgICAgICAgIyB3cm9uZyB0aGluZyB0byBkbzogaWYgYSBmaWxlIGlzIHJlYWQtb25seSBpbiB0aGUgd29ya2luZworICAgICAgICAjIGRpcmVjdG9yeSwgd2Ugd2FudCBpdCB0byBiZSBpbnN0YWxsZWQgcmVhZC93cml0ZSBzbyB0aGF0IHRoZSBuZXh0CisgICAgICAgICMgaW5zdGFsbGF0aW9uIG9mIHRoZSBzYW1lIG1vZHVsZSBkaXN0cmlidXRpb24gY2FuIG92ZXJ3cml0ZSBpdAorICAgICAgICAjIHdpdGhvdXQgcHJvYmxlbXMuICAoVGhpcyBtaWdodCBiZSBhIFVuaXgtc3BlY2lmaWMgaXNzdWUuKSAgVGh1cworICAgICAgICAjIHdlIHR1cm4gb2ZmICdwcmVzZXJ2ZV9tb2RlJyB3aGVuIGNvcHlpbmcgdG8gdGhlIGJ1aWxkIGRpcmVjdG9yeSwKKyAgICAgICAgIyBzaW5jZSB0aGUgYnVpbGQgZGlyZWN0b3J5IGlzIHN1cHBvc2VkIHRvIGJlIGV4YWN0bHkgd2hhdCB0aGUKKyAgICAgICAgIyBpbnN0YWxsYXRpb24gd2lsbCBsb29rIGxpa2UgKGllLiB3ZSBwcmVzZXJ2ZSBtb2RlIHdoZW4KKyAgICAgICAgIyBpbnN0YWxsaW5nKS4KKworICAgICAgICAjIFR3byBvcHRpb25zIGNvbnRyb2wgd2hpY2ggbW9kdWxlcyB3aWxsIGJlIGluc3RhbGxlZDogJ3BhY2thZ2VzJworICAgICAgICAjIGFuZCAncHlfbW9kdWxlcycuICBUaGUgZm9ybWVyIGxldHMgdXMgd29yayB3aXRoIHdob2xlIHBhY2thZ2VzLCBub3QKKyAgICAgICAgIyBzcGVjaWZ5aW5nIGluZGl2aWR1YWwgbW9kdWxlcyBhdCBhbGw7IHRoZSBsYXR0ZXIgaXMgZm9yCisgICAgICAgICMgc3BlY2lmeWluZyBtb2R1bGVzIG9uZS1hdC1hLXRpbWUuCisKKyAgICAgICAgaWYgc2VsZi5weV9tb2R1bGVzOgorICAgICAgICAgICAgc2VsZi5idWlsZF9tb2R1bGVzKCkKKyAgICAgICAgaWYgc2VsZi5wYWNrYWdlczoKKyAgICAgICAgICAgIHNlbGYuYnVpbGRfcGFja2FnZXMoKQorICAgICAgICAgICAgc2VsZi5idWlsZF9wYWNrYWdlX2RhdGEoKQorCisgICAgICAgIGlmIHNlbGYudXNlXzJ0bzMgYW5kIHNlbGYuX3VwZGF0ZWRfZmlsZXM6CisgICAgICAgICAgICBzZWxmLnJ1bl8ydG8zKHNlbGYuX3VwZGF0ZWRfZmlsZXMsIHNlbGYuX2RvY3Rlc3RzXzJ0bzMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYudXNlXzJ0bzNfZml4ZXJzKQorCisgICAgICAgIHNlbGYuYnl0ZV9jb21waWxlKHNlbGYuZ2V0X291dHB1dHMoaW5jbHVkZV9ieXRlY29kZT1GYWxzZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeD1zZWxmLmJ1aWxkX2xpYikKKworICAgICMgLS0gVG9wLWxldmVsIHdvcmtlciBmdW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgZ2V0X2RhdGFfZmlsZXMoc2VsZik6CisgICAgICAgICIiIkdlbmVyYXRlIGxpc3Qgb2YgJyhwYWNrYWdlLHNyY19kaXIsYnVpbGRfZGlyLGZpbGVuYW1lcyknIHR1cGxlcy4KKworICAgICAgICBIZWxwZXIgZnVuY3Rpb24gZm9yIGZpbmFsaXplX29wdGlvbnMuCisgICAgICAgICIiIgorICAgICAgICBkYXRhID0gW10KKyAgICAgICAgaWYgbm90IHNlbGYucGFja2FnZXM6CisgICAgICAgICAgICByZXR1cm4gZGF0YQorICAgICAgICBmb3IgcGFja2FnZSBpbiBzZWxmLnBhY2thZ2VzOgorICAgICAgICAgICAgIyBMb2NhdGUgcGFja2FnZSBzb3VyY2UgZGlyZWN0b3J5CisgICAgICAgICAgICBzcmNfZGlyID0gc2VsZi5nZXRfcGFja2FnZV9kaXIocGFja2FnZSkKKworICAgICAgICAgICAgIyBDb21wdXRlIHBhY2thZ2UgYnVpbGQgZGlyZWN0b3J5CisgICAgICAgICAgICBidWlsZF9kaXIgPSBvcy5wYXRoLmpvaW4oKihbc2VsZi5idWlsZF9saWJdICsgcGFja2FnZS5zcGxpdCgnLicpKSkKKworICAgICAgICAgICAgIyBMZW5ndGggb2YgcGF0aCB0byBzdHJpcCBmcm9tIGZvdW5kIGZpbGVzCisgICAgICAgICAgICBwbGVuID0gMAorICAgICAgICAgICAgaWYgc3JjX2RpcjoKKyAgICAgICAgICAgICAgICBwbGVuID0gbGVuKHNyY19kaXIpICsgMQorCisgICAgICAgICAgICAjIFN0cmlwIGRpcmVjdG9yeSBmcm9tIGdsb2JiZWQgZmlsZW5hbWVzCisgICAgICAgICAgICBmaWxlbmFtZXMgPSBbCisgICAgICAgICAgICAgICAgZmlsZVtwbGVuOl0gZm9yIGZpbGUgaW4gc2VsZi5maW5kX2RhdGFfZmlsZXMocGFja2FnZSwgc3JjX2RpcikKKyAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICBkYXRhLmFwcGVuZCgocGFja2FnZSwgc3JjX2RpciwgYnVpbGRfZGlyLCBmaWxlbmFtZXMpKQorICAgICAgICByZXR1cm4gZGF0YQorCisgICAgZGVmIGZpbmRfZGF0YV9maWxlcyhzZWxmLCBwYWNrYWdlLCBzcmNfZGlyKToKKyAgICAgICAgIiIiUmV0dXJuIGZpbGVuYW1lcyBmb3IgcGFja2FnZSdzIGRhdGEgZmlsZXMgaW4gJ3NyY19kaXInLgorCisgICAgICAgIEhlbHBlciBmdW5jdGlvbiBmb3IgZ2V0X2RhdGFfZmlsZXMuCisgICAgICAgICIiIgorICAgICAgICBnbG9icyA9IChzZWxmLnBhY2thZ2VfZGF0YS5nZXQoJycsIFtdKQorICAgICAgICAgICAgICAgICArIHNlbGYucGFja2FnZV9kYXRhLmdldChwYWNrYWdlLCBbXSkpCisgICAgICAgIGZpbGVzID0gW10KKyAgICAgICAgZm9yIHBhdHRlcm4gaW4gZ2xvYnM6CisgICAgICAgICAgICAjIEVhY2ggcGF0dGVybiBoYXMgdG8gYmUgY29udmVydGVkIHRvIGEgcGxhdGZvcm0tc3BlY2lmaWMgcGF0aAorICAgICAgICAgICAgZmlsZWxpc3QgPSBnbG9iKG9zLnBhdGguam9pbihzcmNfZGlyLCBjb252ZXJ0X3BhdGgocGF0dGVybikpKQorICAgICAgICAgICAgIyBGaWxlcyB0aGF0IG1hdGNoIG1vcmUgdGhhbiBvbmUgcGF0dGVybiBhcmUgb25seSBhZGRlZCBvbmNlCisgICAgICAgICAgICBmaWxlcy5leHRlbmQoZm4gZm9yIGZuIGluIGZpbGVsaXN0IGlmIGZuIG5vdCBpbiBmaWxlcykKKyAgICAgICAgcmV0dXJuIGZpbGVzCisKKyAgICBkZWYgYnVpbGRfcGFja2FnZV9kYXRhKHNlbGYpOgorICAgICAgICAiIiJDb3B5IGRhdGEgZmlsZXMgaW50byBidWlsZCBkaXJlY3RvcnkuCisKKyAgICAgICAgSGVscGVyIGZ1bmN0aW9uIGZvciBydW4uCisgICAgICAgICIiIgorICAgICAgICAjIEZJWE1FIGFkZCB0ZXN0cyBmb3IgdGhpcyBtZXRob2QKKyAgICAgICAgZm9yIHBhY2thZ2UsIHNyY19kaXIsIGJ1aWxkX2RpciwgZmlsZW5hbWVzIGluIHNlbGYuZGF0YV9maWxlczoKKyAgICAgICAgICAgIGZvciBmaWxlbmFtZSBpbiBmaWxlbmFtZXM6CisgICAgICAgICAgICAgICAgdGFyZ2V0ID0gb3MucGF0aC5qb2luKGJ1aWxkX2RpciwgZmlsZW5hbWUpCisgICAgICAgICAgICAgICAgc3JjZmlsZSA9IG9zLnBhdGguam9pbihzcmNfZGlyLCBmaWxlbmFtZSkKKyAgICAgICAgICAgICAgICBzZWxmLm1rcGF0aChvcy5wYXRoLmRpcm5hbWUodGFyZ2V0KSkKKyAgICAgICAgICAgICAgICBvdXRmLCBjb3BpZWQgPSBzZWxmLmNvcHlfZmlsZShzcmNmaWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldCwgcHJlc2VydmVfbW9kZT1GYWxzZSkKKyAgICAgICAgICAgICAgICBkb2N0ZXN0cyA9IHNlbGYuZGlzdHJpYnV0aW9uLmNvbnZlcnRfMnRvM19kb2N0ZXN0cworICAgICAgICAgICAgICAgIGlmIGNvcGllZCBhbmQgc3JjZmlsZSBpbiBkb2N0ZXN0czoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fZG9jdGVzdHNfMnRvMy5hcHBlbmQob3V0ZikKKworICAgICMgWFhYIC0gdGhpcyBzaG91bGQgYmUgbW92ZWQgdG8gdGhlIERpc3RyaWJ1dGlvbiBjbGFzcyBhcyBpdCBpcyBub3QKKyAgICAjIG9ubHkgbmVlZGVkIGZvciBidWlsZF9weS4gSXQgYWxzbyBoYXMgbm8gZGVwZW5kZW5jaWVzIG9uIHRoaXMgY2xhc3MuCisgICAgZGVmIGdldF9wYWNrYWdlX2RpcihzZWxmLCBwYWNrYWdlKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBkaXJlY3RvcnksIHJlbGF0aXZlIHRvIHRoZSB0b3Agb2YgdGhlIHNvdXJjZQorICAgICAgICBkaXN0cmlidXRpb24sIHdoZXJlIHBhY2thZ2UgJ3BhY2thZ2UnIHNob3VsZCBiZSBmb3VuZAorICAgICAgICAoYXQgbGVhc3QgYWNjb3JkaW5nIHRvIHRoZSAncGFja2FnZV9kaXInIG9wdGlvbiwgaWYgYW55KS4KKyAgICAgICAgIiIiCisgICAgICAgIHBhdGggPSBwYWNrYWdlLnNwbGl0KCcuJykKKyAgICAgICAgaWYgc2VsZi5wYWNrYWdlX2RpciBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHBhdGguaW5zZXJ0KDAsIHNlbGYucGFja2FnZV9kaXIpCisKKyAgICAgICAgaWYgbGVuKHBhdGgpID4gMDoKKyAgICAgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oKnBhdGgpCisKKyAgICAgICAgcmV0dXJuICcnCisKKyAgICBkZWYgY2hlY2tfcGFja2FnZShzZWxmLCBwYWNrYWdlLCBwYWNrYWdlX2Rpcik6CisgICAgICAgICIiIkhlbHBlciBmdW5jdGlvbiBmb3IgZmluZF9wYWNrYWdlX21vZHVsZXMgYW5kIGZpbmRfbW9kdWxlcy4iIiIKKyAgICAgICAgIyBFbXB0eSBkaXIgbmFtZSBtZWFucyBjdXJyZW50IGRpcmVjdG9yeSwgd2hpY2ggd2UgY2FuIHByb2JhYmx5CisgICAgICAgICMgYXNzdW1lIGV4aXN0cy4gIEFsc28sIG9zLnBhdGguZXhpc3RzIGFuZCBpc2RpciBkb24ndCBrbm93IGFib3V0CisgICAgICAgICMgbXkgImVtcHR5IHN0cmluZyBtZWFucyBjdXJyZW50IGRpciIgY29udmVudGlvbiwgc28gd2UgaGF2ZSB0bworICAgICAgICAjIGNpcmN1bXZlbnQgdGhlbS4KKyAgICAgICAgaWYgcGFja2FnZV9kaXIgIT0gIiI6CisgICAgICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMocGFja2FnZV9kaXIpOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0ZpbGVFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAicGFja2FnZSBkaXJlY3RvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIgJSBwYWNrYWdlX2RpcikKKyAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmlzZGlyKHBhY2thZ2VfZGlyKToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdGaWxlRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICJzdXBwb3NlZCBwYWNrYWdlIGRpcmVjdG9yeSAnJXMnIGV4aXN0cywgIgorICAgICAgICAgICAgICAgICAgICAgICAiYnV0IGlzIG5vdCBhIGRpcmVjdG9yeSIgJSBwYWNrYWdlX2RpcikKKworICAgICAgICAjIFJlcXVpcmUgX19pbml0X18ucHkgZm9yIGFsbCBidXQgdGhlICJyb290IHBhY2thZ2UiCisgICAgICAgIGlmIHBhY2thZ2U6CisgICAgICAgICAgICBpbml0X3B5ID0gb3MucGF0aC5qb2luKHBhY2thZ2VfZGlyLCAiX19pbml0X18ucHkiKQorICAgICAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUoaW5pdF9weSk6CisgICAgICAgICAgICAgICAgcmV0dXJuIGluaXRfcHkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoInBhY2thZ2UgaW5pdCBmaWxlICVyIG5vdCBmb3VuZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIihvciBub3QgYSByZWd1bGFyIGZpbGUpIiwgaW5pdF9weSkKKworICAgICAgICAjIEVpdGhlciBub3QgaW4gYSBwYWNrYWdlIGF0IGFsbCAoX19pbml0X18ucHkgbm90IGV4cGVjdGVkKSwgb3IKKyAgICAgICAgIyBfX2luaXRfXy5weSBkb2Vzbid0IGV4aXN0IC0tIHNvIGRvbid0IHJldHVybiB0aGUgZmlsZW5hbWUuCisgICAgICAgIHJldHVybiBOb25lCisKKyAgICBkZWYgY2hlY2tfbW9kdWxlKHNlbGYsIG1vZHVsZSwgbW9kdWxlX2ZpbGUpOgorICAgICAgICBpZiBub3Qgb3MucGF0aC5pc2ZpbGUobW9kdWxlX2ZpbGUpOgorICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoImZpbGUgJXIgKGZvciBtb2R1bGUgJXIpIG5vdCBmb3VuZCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVfZmlsZSwgbW9kdWxlKQorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgZGVmIGZpbmRfcGFja2FnZV9tb2R1bGVzKHNlbGYsIHBhY2thZ2UsIHBhY2thZ2VfZGlyKToKKyAgICAgICAgc2VsZi5jaGVja19wYWNrYWdlKHBhY2thZ2UsIHBhY2thZ2VfZGlyKQorICAgICAgICBtb2R1bGVfZmlsZXMgPSBnbG9iKG9zLnBhdGguam9pbihwYWNrYWdlX2RpciwgIioucHkiKSkKKyAgICAgICAgbW9kdWxlcyA9IFtdCisgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLnNjcmlwdF9uYW1lIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2V0dXBfc2NyaXB0ID0gb3MucGF0aC5hYnNwYXRoKHNlbGYuZGlzdHJpYnV0aW9uLnNjcmlwdF9uYW1lKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2V0dXBfc2NyaXB0ID0gTm9uZQorCisgICAgICAgIGZvciBmIGluIG1vZHVsZV9maWxlczoKKyAgICAgICAgICAgIGFic19mID0gb3MucGF0aC5hYnNwYXRoKGYpCisgICAgICAgICAgICBpZiBhYnNfZiAhPSBzZXR1cF9zY3JpcHQ6CisgICAgICAgICAgICAgICAgbW9kdWxlID0gb3MucGF0aC5zcGxpdGV4dChvcy5wYXRoLmJhc2VuYW1lKGYpKVswXQorICAgICAgICAgICAgICAgIG1vZHVsZXMuYXBwZW5kKChwYWNrYWdlLCBtb2R1bGUsIGYpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBsb2dnZXIuZGVidWcoImV4Y2x1ZGluZyAlciIsIHNldHVwX3NjcmlwdCkKKyAgICAgICAgcmV0dXJuIG1vZHVsZXMKKworICAgIGRlZiBmaW5kX21vZHVsZXMoc2VsZik6CisgICAgICAgICIiIkZpbmRzIGluZGl2aWR1YWxseS1zcGVjaWZpZWQgUHl0aG9uIG1vZHVsZXMsIGllLiB0aG9zZSBsaXN0ZWQgYnkKKyAgICAgICAgbW9kdWxlIG5hbWUgaW4gJ3NlbGYucHlfbW9kdWxlcycuICBSZXR1cm5zIGEgbGlzdCBvZiB0dXBsZXMgKHBhY2thZ2UsCisgICAgICAgIG1vZHVsZV9iYXNlLCBmaWxlbmFtZSk6ICdwYWNrYWdlJyBpcyBhIHR1cGxlIG9mIHRoZSBwYXRoIHRocm91Z2gKKyAgICAgICAgcGFja2FnZS1zcGFjZSB0byB0aGUgbW9kdWxlOyAnbW9kdWxlX2Jhc2UnIGlzIHRoZSBiYXJlIChubworICAgICAgICBwYWNrYWdlcywgbm8gZG90cykgbW9kdWxlIG5hbWUsIGFuZCAnZmlsZW5hbWUnIGlzIHRoZSBwYXRoIHRvIHRoZQorICAgICAgICAiLnB5IiBmaWxlIChyZWxhdGl2ZSB0byB0aGUgZGlzdHJpYnV0aW9uIHJvb3QpIHRoYXQgaW1wbGVtZW50cyB0aGUKKyAgICAgICAgbW9kdWxlLgorICAgICAgICAiIiIKKyAgICAgICAgIyBNYXAgcGFja2FnZSBuYW1lcyB0byB0dXBsZXMgb2YgdXNlZnVsIGluZm8gYWJvdXQgdGhlIHBhY2thZ2U6CisgICAgICAgICMgICAgKHBhY2thZ2VfZGlyLCBjaGVja2VkKQorICAgICAgICAjIHBhY2thZ2VfZGlyIC0gdGhlIGRpcmVjdG9yeSB3aGVyZSB3ZSdsbCBmaW5kIHNvdXJjZSBmaWxlcyBmb3IKKyAgICAgICAgIyAgIHRoaXMgcGFja2FnZQorICAgICAgICAjIGNoZWNrZWQgLSB0cnVlIGlmIHdlIGhhdmUgY2hlY2tlZCB0aGF0IHRoZSBwYWNrYWdlIGRpcmVjdG9yeQorICAgICAgICAjICAgaXMgdmFsaWQgKGV4aXN0cywgY29udGFpbnMgX19pbml0X18ucHksIC4uLiA/KQorICAgICAgICBwYWNrYWdlcyA9IHt9CisKKyAgICAgICAgIyBMaXN0IG9mIChwYWNrYWdlLCBtb2R1bGUsIGZpbGVuYW1lKSB0dXBsZXMgdG8gcmV0dXJuCisgICAgICAgIG1vZHVsZXMgPSBbXQorCisgICAgICAgICMgV2UgdHJlYXQgbW9kdWxlcy1pbi1wYWNrYWdlcyBhbG1vc3QgdGhlIHNhbWUgYXMgdG9wbGV2ZWwgbW9kdWxlcywKKyAgICAgICAgIyBqdXN0IHRoZSAicGFja2FnZSIgZm9yIGEgdG9wbGV2ZWwgaXMgZW1wdHkgKGVpdGhlciBhbiBlbXB0eQorICAgICAgICAjIHN0cmluZyBvciBlbXB0eSBsaXN0LCBkZXBlbmRpbmcgb24gY29udGV4dCkuICBEaWZmZXJlbmNlczoKKyAgICAgICAgIyAgIC0gZG9uJ3QgY2hlY2sgZm9yIF9faW5pdF9fLnB5IGluIGRpcmVjdG9yeSBmb3IgZW1wdHkgcGFja2FnZQorICAgICAgICBmb3IgbW9kdWxlIGluIHNlbGYucHlfbW9kdWxlczoKKyAgICAgICAgICAgIHBhdGggPSBtb2R1bGUuc3BsaXQoJy4nKQorICAgICAgICAgICAgcGFja2FnZSA9ICcuJy5qb2luKHBhdGhbMDotMV0pCisgICAgICAgICAgICBtb2R1bGVfYmFzZSA9IHBhdGhbLTFdCisKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBwYWNrYWdlX2RpciwgY2hlY2tlZCA9IHBhY2thZ2VzW3BhY2thZ2VdCisgICAgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CisgICAgICAgICAgICAgICAgcGFja2FnZV9kaXIgPSBzZWxmLmdldF9wYWNrYWdlX2RpcihwYWNrYWdlKQorICAgICAgICAgICAgICAgIGNoZWNrZWQgPSBGYWxzZQorCisgICAgICAgICAgICBpZiBub3QgY2hlY2tlZDoKKyAgICAgICAgICAgICAgICBpbml0X3B5ID0gc2VsZi5jaGVja19wYWNrYWdlKHBhY2thZ2UsIHBhY2thZ2VfZGlyKQorICAgICAgICAgICAgICAgIHBhY2thZ2VzW3BhY2thZ2VdID0gKHBhY2thZ2VfZGlyLCAxKQorICAgICAgICAgICAgICAgIGlmIGluaXRfcHk6CisgICAgICAgICAgICAgICAgICAgIG1vZHVsZXMuYXBwZW5kKChwYWNrYWdlLCAiX19pbml0X18iLCBpbml0X3B5KSkKKworICAgICAgICAgICAgIyBYWFggcGVyaGFwcyB3ZSBzaG91bGQgYWxzbyBjaGVjayBmb3IganVzdCAucHljIGZpbGVzCisgICAgICAgICAgICAjIChzbyBncmVlZHkgY2xvc2VkLXNvdXJjZSBiYXN0YXJkcyBjYW4gZGlzdHJpYnV0ZSBQeXRob24KKyAgICAgICAgICAgICMgbW9kdWxlcyB0b28pCisgICAgICAgICAgICBtb2R1bGVfZmlsZSA9IG9zLnBhdGguam9pbihwYWNrYWdlX2RpciwgbW9kdWxlX2Jhc2UgKyAiLnB5IikKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLmNoZWNrX21vZHVsZShtb2R1bGUsIG1vZHVsZV9maWxlKToKKyAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICBtb2R1bGVzLmFwcGVuZCgocGFja2FnZSwgbW9kdWxlX2Jhc2UsIG1vZHVsZV9maWxlKSkKKworICAgICAgICByZXR1cm4gbW9kdWxlcworCisgICAgZGVmIGZpbmRfYWxsX21vZHVsZXMoc2VsZik6CisgICAgICAgICIiIkNvbXB1dGUgdGhlIGxpc3Qgb2YgYWxsIG1vZHVsZXMgdGhhdCB3aWxsIGJlIGJ1aWx0LCB3aGV0aGVyCisgICAgICAgIHRoZXkgYXJlIHNwZWNpZmllZCBvbmUtbW9kdWxlLWF0LWEtdGltZSAoJ3NlbGYucHlfbW9kdWxlcycpIG9yCisgICAgICAgIGJ5IHdob2xlIHBhY2thZ2VzICgnc2VsZi5wYWNrYWdlcycpLiAgUmV0dXJuIGEgbGlzdCBvZiB0dXBsZXMKKyAgICAgICAgKHBhY2thZ2UsIG1vZHVsZSwgbW9kdWxlX2ZpbGUpLCBqdXN0IGxpa2UgJ2ZpbmRfbW9kdWxlcygpJyBhbmQKKyAgICAgICAgJ2ZpbmRfcGFja2FnZV9tb2R1bGVzKCknIGRvLiIiIgorICAgICAgICBtb2R1bGVzID0gW10KKyAgICAgICAgaWYgc2VsZi5weV9tb2R1bGVzOgorICAgICAgICAgICAgbW9kdWxlcy5leHRlbmQoc2VsZi5maW5kX21vZHVsZXMoKSkKKyAgICAgICAgaWYgc2VsZi5wYWNrYWdlczoKKyAgICAgICAgICAgIGZvciBwYWNrYWdlIGluIHNlbGYucGFja2FnZXM6CisgICAgICAgICAgICAgICAgcGFja2FnZV9kaXIgPSBzZWxmLmdldF9wYWNrYWdlX2RpcihwYWNrYWdlKQorICAgICAgICAgICAgICAgIG0gPSBzZWxmLmZpbmRfcGFja2FnZV9tb2R1bGVzKHBhY2thZ2UsIHBhY2thZ2VfZGlyKQorICAgICAgICAgICAgICAgIG1vZHVsZXMuZXh0ZW5kKG0pCisgICAgICAgIHJldHVybiBtb2R1bGVzCisKKyAgICBkZWYgZ2V0X3NvdXJjZV9maWxlcyhzZWxmKToKKyAgICAgICAgc291cmNlcyA9IFttb2R1bGVbLTFdIGZvciBtb2R1bGUgaW4gc2VsZi5maW5kX2FsbF9tb2R1bGVzKCldCisgICAgICAgIHNvdXJjZXMgKz0gWworICAgICAgICAgICAgb3MucGF0aC5qb2luKHNyY19kaXIsIGZpbGVuYW1lKQorICAgICAgICAgICAgZm9yIHBhY2thZ2UsIHNyY19kaXIsIGJ1aWxkX2RpciwgZmlsZW5hbWVzIGluIHNlbGYuZGF0YV9maWxlcworICAgICAgICAgICAgZm9yIGZpbGVuYW1lIGluIGZpbGVuYW1lc10KKyAgICAgICAgcmV0dXJuIHNvdXJjZXMKKworICAgIGRlZiBnZXRfbW9kdWxlX291dGZpbGUoc2VsZiwgYnVpbGRfZGlyLCBwYWNrYWdlLCBtb2R1bGUpOgorICAgICAgICBvdXRmaWxlX3BhdGggPSBbYnVpbGRfZGlyXSArIGxpc3QocGFja2FnZSkgKyBbbW9kdWxlICsgIi5weSJdCisgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oKm91dGZpbGVfcGF0aCkKKworICAgIGRlZiBnZXRfb3V0cHV0cyhzZWxmLCBpbmNsdWRlX2J5dGVjb2RlPVRydWUpOgorICAgICAgICBtb2R1bGVzID0gc2VsZi5maW5kX2FsbF9tb2R1bGVzKCkKKyAgICAgICAgb3V0cHV0cyA9IFtdCisgICAgICAgIGZvciBwYWNrYWdlLCBtb2R1bGUsIG1vZHVsZV9maWxlIGluIG1vZHVsZXM6CisgICAgICAgICAgICBwYWNrYWdlID0gcGFja2FnZS5zcGxpdCgnLicpCisgICAgICAgICAgICBmaWxlbmFtZSA9IHNlbGYuZ2V0X21vZHVsZV9vdXRmaWxlKHNlbGYuYnVpbGRfbGliLCBwYWNrYWdlLCBtb2R1bGUpCisgICAgICAgICAgICBvdXRwdXRzLmFwcGVuZChmaWxlbmFtZSkKKyAgICAgICAgICAgIGlmIGluY2x1ZGVfYnl0ZWNvZGU6CisgICAgICAgICAgICAgICAgaWYgc2VsZi5jb21waWxlOgorICAgICAgICAgICAgICAgICAgICBvdXRwdXRzLmFwcGVuZChpbXAuY2FjaGVfZnJvbV9zb3VyY2UoZmlsZW5hbWUsIFRydWUpKQorICAgICAgICAgICAgICAgIGlmIHNlbGYub3B0aW1pemU6CisgICAgICAgICAgICAgICAgICAgIG91dHB1dHMuYXBwZW5kKGltcC5jYWNoZV9mcm9tX3NvdXJjZShmaWxlbmFtZSwgRmFsc2UpKQorCisgICAgICAgIG91dHB1dHMgKz0gWworICAgICAgICAgICAgb3MucGF0aC5qb2luKGJ1aWxkX2RpciwgZmlsZW5hbWUpCisgICAgICAgICAgICBmb3IgcGFja2FnZSwgc3JjX2RpciwgYnVpbGRfZGlyLCBmaWxlbmFtZXMgaW4gc2VsZi5kYXRhX2ZpbGVzCisgICAgICAgICAgICBmb3IgZmlsZW5hbWUgaW4gZmlsZW5hbWVzXQorCisgICAgICAgIHJldHVybiBvdXRwdXRzCisKKyAgICBkZWYgYnVpbGRfbW9kdWxlKHNlbGYsIG1vZHVsZSwgbW9kdWxlX2ZpbGUsIHBhY2thZ2UpOgorICAgICAgICBpZiBpc2luc3RhbmNlKHBhY2thZ2UsIHN0cik6CisgICAgICAgICAgICBwYWNrYWdlID0gcGFja2FnZS5zcGxpdCgnLicpCisgICAgICAgIGVsaWYgbm90IGlzaW5zdGFuY2UocGFja2FnZSwgKGxpc3QsIHR1cGxlKSk6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoCisgICAgICAgICAgICAgICAgICAiJ3BhY2thZ2UnIG11c3QgYmUgYSBzdHJpbmcgKGRvdC1zZXBhcmF0ZWQpLCBsaXN0LCBvciB0dXBsZSIpCisKKyAgICAgICAgIyBOb3cgcHV0IHRoZSBtb2R1bGUgc291cmNlIGZpbGUgaW50byB0aGUgImJ1aWxkIiBhcmVhIC0tIHRoaXMgaXMKKyAgICAgICAgIyBlYXN5LCB3ZSBqdXN0IGNvcHkgaXQgc29tZXdoZXJlIHVuZGVyIHNlbGYuYnVpbGRfbGliICh0aGUgYnVpbGQKKyAgICAgICAgIyBkaXJlY3RvcnkgZm9yIFB5dGhvbiBzb3VyY2UpLgorICAgICAgICBvdXRmaWxlID0gc2VsZi5nZXRfbW9kdWxlX291dGZpbGUoc2VsZi5idWlsZF9saWIsIHBhY2thZ2UsIG1vZHVsZSkKKyAgICAgICAgZGlyID0gb3MucGF0aC5kaXJuYW1lKG91dGZpbGUpCisgICAgICAgIHNlbGYubWtwYXRoKGRpcikKKyAgICAgICAgcmV0dXJuIHNlbGYuY29weV9maWxlKG1vZHVsZV9maWxlLCBvdXRmaWxlLCBwcmVzZXJ2ZV9tb2RlPUZhbHNlKQorCisgICAgZGVmIGJ1aWxkX21vZHVsZXMoc2VsZik6CisgICAgICAgIG1vZHVsZXMgPSBzZWxmLmZpbmRfbW9kdWxlcygpCisgICAgICAgIGZvciBwYWNrYWdlLCBtb2R1bGUsIG1vZHVsZV9maWxlIGluIG1vZHVsZXM6CisgICAgICAgICAgICAjIE5vdyAiYnVpbGQiIHRoZSBtb2R1bGUgLS0gaWUuIGNvcHkgdGhlIHNvdXJjZSBmaWxlIHRvCisgICAgICAgICAgICAjIHNlbGYuYnVpbGRfbGliICh0aGUgYnVpbGQgZGlyZWN0b3J5IGZvciBQeXRob24gc291cmNlKS4KKyAgICAgICAgICAgICMgKEFjdHVhbGx5LCBpdCBnZXRzIGNvcGllZCB0byB0aGUgZGlyZWN0b3J5IGZvciB0aGlzIHBhY2thZ2UKKyAgICAgICAgICAgICMgdW5kZXIgc2VsZi5idWlsZF9saWIuKQorICAgICAgICAgICAgc2VsZi5idWlsZF9tb2R1bGUobW9kdWxlLCBtb2R1bGVfZmlsZSwgcGFja2FnZSkKKworICAgIGRlZiBidWlsZF9wYWNrYWdlcyhzZWxmKToKKyAgICAgICAgZm9yIHBhY2thZ2UgaW4gc2VsZi5wYWNrYWdlczoKKyAgICAgICAgICAgICMgR2V0IGxpc3Qgb2YgKHBhY2thZ2UsIG1vZHVsZSwgbW9kdWxlX2ZpbGUpIHR1cGxlcyBiYXNlZCBvbgorICAgICAgICAgICAgIyBzY2FubmluZyB0aGUgcGFja2FnZSBkaXJlY3RvcnkuICAncGFja2FnZScgaXMgb25seSBpbmNsdWRlZAorICAgICAgICAgICAgIyBpbiB0aGUgdHVwbGUgc28gdGhhdCAnZmluZF9tb2R1bGVzKCknIGFuZAorICAgICAgICAgICAgIyAnZmluZF9wYWNrYWdlX3R1cGxlcygpJyBoYXZlIGEgY29uc2lzdGVudCBpbnRlcmZhY2U7IGl0J3MKKyAgICAgICAgICAgICMgaWdub3JlZCBoZXJlIChhcGFydCBmcm9tIGEgc2FuaXR5IGNoZWNrKS4gIEFsc28sICdtb2R1bGUnIGlzCisgICAgICAgICAgICAjIHRoZSAqdW5xdWFsaWZpZWQqIG1vZHVsZSBuYW1lIChpZS4gbm8gZG90cywgbm8gcGFja2FnZSAtLSB3ZQorICAgICAgICAgICAgIyBhbHJlYWR5IGtub3cgaXRzIHBhY2thZ2UhKSwgYW5kICdtb2R1bGVfZmlsZScgaXMgdGhlIHBhdGggdG8KKyAgICAgICAgICAgICMgdGhlIC5weSBmaWxlLCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCBkaXJlY3RvcnkKKyAgICAgICAgICAgICMgKGllLiBpbmNsdWRpbmcgJ3BhY2thZ2VfZGlyJykuCisgICAgICAgICAgICBwYWNrYWdlX2RpciA9IHNlbGYuZ2V0X3BhY2thZ2VfZGlyKHBhY2thZ2UpCisgICAgICAgICAgICBtb2R1bGVzID0gc2VsZi5maW5kX3BhY2thZ2VfbW9kdWxlcyhwYWNrYWdlLCBwYWNrYWdlX2RpcikKKworICAgICAgICAgICAgIyBOb3cgbG9vcCBvdmVyIHRoZSBtb2R1bGVzIHdlIGZvdW5kLCAiYnVpbGRpbmciIGVhY2ggb25lIChqdXN0CisgICAgICAgICAgICAjIGNvcHkgaXQgdG8gc2VsZi5idWlsZF9saWIpLgorICAgICAgICAgICAgZm9yIHBhY2thZ2VfLCBtb2R1bGUsIG1vZHVsZV9maWxlIGluIG1vZHVsZXM6CisgICAgICAgICAgICAgICAgYXNzZXJ0IHBhY2thZ2UgPT0gcGFja2FnZV8KKyAgICAgICAgICAgICAgICBzZWxmLmJ1aWxkX21vZHVsZShtb2R1bGUsIG1vZHVsZV9maWxlLCBwYWNrYWdlKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX3NjcmlwdHMucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYnVpbGRfc2NyaXB0cy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNjUxYWUwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX3NjcmlwdHMucHkKQEAgLTAsMCArMSwxNTQgQEAKKyIiIkJ1aWxkIHNjcmlwdHMgKGNvcHkgdG8gYnVpbGQgZGlyIGFuZCBmaXggdXAgc2hlYmFuZyBsaW5lKS4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgcmUKK2ltcG9ydCBzeXNjb25maWcKK2Zyb20gdG9rZW5pemUgaW1wb3J0IGRldGVjdF9lbmNvZGluZworCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgY29udmVydF9wYXRoLCBuZXdlcgorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuY29tcGF0IGltcG9ydCBNaXhpbjJ0bzMKKworCisjIGNoZWNrIGlmIFB5dGhvbiBpcyBjYWxsZWQgb24gdGhlIGZpcnN0IGxpbmUgd2l0aCB0aGlzIGV4cHJlc3Npb24KK2ZpcnN0X2xpbmVfcmUgPSByZS5jb21waWxlKGInXiMhLipweXRob25bMC05Ll0qKFsgXHRdLiopPyQnKQorCitjbGFzcyBidWlsZF9zY3JpcHRzKENvbW1hbmQsIE1peGluMnRvMyk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJidWlsZCBzY3JpcHRzIChjb3B5IGFuZCBmaXggdXAgc2hlYmFuZyBsaW5lKSIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdidWlsZC1kaXI9JywgJ2QnLCAiZGlyZWN0b3J5IHRvIGJ1aWxkIChjb3B5KSB0byIpLAorICAgICAgICAoJ2ZvcmNlJywgJ2YnLCAiZm9yY2libHkgYnVpbGQgZXZlcnl0aGluZyAoaWdub3JlIGZpbGUgdGltZXN0YW1wcyIpLAorICAgICAgICAoJ2V4ZWN1dGFibGU9JywgJ2UnLCAic3BlY2lmeSBmaW5hbCBkZXN0aW5hdGlvbiBpbnRlcnByZXRlciBwYXRoIiksCisgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsnZm9yY2UnXQorCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmJ1aWxkX2RpciA9IE5vbmUKKyAgICAgICAgc2VsZi5zY3JpcHRzID0gTm9uZQorICAgICAgICBzZWxmLmZvcmNlID0gTm9uZQorICAgICAgICBzZWxmLmV4ZWN1dGFibGUgPSBOb25lCisgICAgICAgIHNlbGYub3V0ZmlsZXMgPSBOb25lCisgICAgICAgIHNlbGYudXNlXzJ0bzMgPSBGYWxzZQorICAgICAgICBzZWxmLmNvbnZlcnRfMnRvM19kb2N0ZXN0cyA9IE5vbmUKKyAgICAgICAgc2VsZi51c2VfMnRvM19maXhlcnMgPSBOb25lCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2J1aWxkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdidWlsZF9zY3JpcHRzJywgJ2J1aWxkX2RpcicpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndXNlXzJ0bzMnLCAndXNlXzJ0bzNfZml4ZXJzJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NvbnZlcnRfMnRvM19kb2N0ZXN0cycsICdmb3JjZScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdleGVjdXRhYmxlJykKKyAgICAgICAgc2VsZi5zY3JpcHRzID0gc2VsZi5kaXN0cmlidXRpb24uc2NyaXB0cworCisgICAgZGVmIGdldF9zb3VyY2VfZmlsZXMoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLnNjcmlwdHMKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLnNjcmlwdHM6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgY29waWVkX2ZpbGVzID0gc2VsZi5jb3B5X3NjcmlwdHMoKQorICAgICAgICBpZiBzZWxmLnVzZV8ydG8zIGFuZCBjb3BpZWRfZmlsZXM6CisgICAgICAgICAgICBzZWxmLl9ydW5fMnRvMyhjb3BpZWRfZmlsZXMsIGZpeGVycz1zZWxmLnVzZV8ydG8zX2ZpeGVycykKKworICAgIGRlZiBjb3B5X3NjcmlwdHMoc2VsZik6CisgICAgICAgICIiIkNvcHkgZWFjaCBzY3JpcHQgbGlzdGVkIGluICdzZWxmLnNjcmlwdHMnOyBpZiBpdCdzIG1hcmtlZCBhcyBhCisgICAgICAgIFB5dGhvbiBzY3JpcHQgaW4gdGhlIFVuaXggd2F5IChmaXJzdCBsaW5lIG1hdGNoZXMgJ2ZpcnN0X2xpbmVfcmUnLAorICAgICAgICBpZS4gc3RhcnRzIHdpdGggIlwjISIgYW5kIGNvbnRhaW5zICJweXRob24iKSwgdGhlbiBhZGp1c3QgdGhlIGZpcnN0CisgICAgICAgIGxpbmUgdG8gcmVmZXIgdG8gdGhlIGN1cnJlbnQgUHl0aG9uIGludGVycHJldGVyIGFzIHdlIGNvcHkuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLm1rcGF0aChzZWxmLmJ1aWxkX2RpcikKKyAgICAgICAgb3V0ZmlsZXMgPSBbXQorICAgICAgICBmb3Igc2NyaXB0IGluIHNlbGYuc2NyaXB0czoKKyAgICAgICAgICAgIGFkanVzdCA9IEZhbHNlCisgICAgICAgICAgICBzY3JpcHQgPSBjb252ZXJ0X3BhdGgoc2NyaXB0KQorICAgICAgICAgICAgb3V0ZmlsZSA9IG9zLnBhdGguam9pbihzZWxmLmJ1aWxkX2Rpciwgb3MucGF0aC5iYXNlbmFtZShzY3JpcHQpKQorICAgICAgICAgICAgb3V0ZmlsZXMuYXBwZW5kKG91dGZpbGUpCisKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLmZvcmNlIGFuZCBub3QgbmV3ZXIoc2NyaXB0LCBvdXRmaWxlKToKKyAgICAgICAgICAgICAgICBsb2dnZXIuZGVidWcoIm5vdCBjb3B5aW5nICVzICh1cC10by1kYXRlKSIsIHNjcmlwdCkKKyAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICAjIEFsd2F5cyBvcGVuIHRoZSBmaWxlLCBidXQgaWdub3JlIGZhaWx1cmVzIGluIGRyeS1ydW4gbW9kZSAtLQorICAgICAgICAgICAgIyB0aGF0IHdheSwgd2UnbGwgZ2V0IGFjY3VyYXRlIGZlZWRiYWNrIGlmIHdlIGNhbiByZWFkIHRoZQorICAgICAgICAgICAgIyBzY3JpcHQuCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgZiA9IG9wZW4oc2NyaXB0LCAicmIiKQorICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICBmID0gTm9uZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBlbmNvZGluZywgbGluZXMgPSBkZXRlY3RfZW5jb2RpbmcoZi5yZWFkbGluZSkKKyAgICAgICAgICAgICAgICBmLnNlZWsoMCkKKyAgICAgICAgICAgICAgICBmaXJzdF9saW5lID0gZi5yZWFkbGluZSgpCisgICAgICAgICAgICAgICAgaWYgbm90IGZpcnN0X2xpbmU6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCclczogJXMgaXMgYW4gZW1wdHkgZmlsZSAoc2tpcHBpbmcpJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5nZXRfY29tbWFuZF9uYW1lKCksICBzY3JpcHQpCisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgICAgICBtYXRjaCA9IGZpcnN0X2xpbmVfcmUubWF0Y2goZmlyc3RfbGluZSkKKyAgICAgICAgICAgICAgICBpZiBtYXRjaDoKKyAgICAgICAgICAgICAgICAgICAgYWRqdXN0ID0gVHJ1ZQorICAgICAgICAgICAgICAgICAgICBwb3N0X2ludGVycCA9IG1hdGNoLmdyb3VwKDEpIG9yIGInJworCisgICAgICAgICAgICBpZiBhZGp1c3Q6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oImNvcHlpbmcgYW5kIGFkanVzdGluZyAlcyAtPiAlcyIsIHNjcmlwdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmJ1aWxkX2RpcikKKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgICAgICBpZiBub3Qgc3lzY29uZmlnLmlzX3B5dGhvbl9idWlsZCgpOgorICAgICAgICAgICAgICAgICAgICAgICAgZXhlY3V0YWJsZSA9IHNlbGYuZXhlY3V0YWJsZQorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgZXhlY3V0YWJsZSA9IG9zLnBhdGguam9pbigKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoIkJJTkRJUiIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgInB5dGhvbiVzJXMiICUgKHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcigiVkVSU0lPTiIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcigiRVhFIikpKQorICAgICAgICAgICAgICAgICAgICBleGVjdXRhYmxlID0gb3MuZnNlbmNvZGUoZXhlY3V0YWJsZSkKKyAgICAgICAgICAgICAgICAgICAgc2hlYmFuZyA9IGIiIyEiICsgZXhlY3V0YWJsZSArIHBvc3RfaW50ZXJwICsgYiJcbiIKKyAgICAgICAgICAgICAgICAgICAgIyBQeXRob24gcGFyc2VyIHN0YXJ0cyB0byByZWFkIGEgc2NyaXB0IHVzaW5nIFVURi04IHVudGlsCisgICAgICAgICAgICAgICAgICAgICMgaXQgZ2V0cyBhICNjb2Rpbmc6eHh4IGNvb2tpZS4gVGhlIHNoZWJhbmcgaGFzIHRvIGJlIHRoZQorICAgICAgICAgICAgICAgICAgICAjIGZpcnN0IGxpbmUgb2YgYSBmaWxlLCB0aGUgI2NvZGluZzp4eHggY29va2llIGNhbm5vdCBiZQorICAgICAgICAgICAgICAgICAgICAjIHdyaXR0ZW4gYmVmb3JlLiBTbyB0aGUgc2hlYmFuZyBoYXMgdG8gYmUgZGVjb2RhYmxlIGZyb20KKyAgICAgICAgICAgICAgICAgICAgIyBVVEYtOC4KKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgc2hlYmFuZy5kZWNvZGUoJ3V0Zi04JykKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IFVuaWNvZGVEZWNvZGVFcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlRoZSBzaGViYW5nICh7IXJ9KSBpcyBub3QgZGVjb2RhYmxlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSB1dGYtOCIuZm9ybWF0KHNoZWJhbmcpKQorICAgICAgICAgICAgICAgICAgICAjIElmIHRoZSBzY3JpcHQgaXMgZW5jb2RlZCB0byBhIGN1c3RvbSBlbmNvZGluZyAodXNlIGEKKyAgICAgICAgICAgICAgICAgICAgIyAjY29kaW5nOnh4eCBjb29raWUpLCB0aGUgc2hlYmFuZyBoYXMgdG8gYmUgZGVjb2RhYmxlIGZyb20KKyAgICAgICAgICAgICAgICAgICAgIyB0aGUgc2NyaXB0IGVuY29kaW5nIHRvby4KKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgc2hlYmFuZy5kZWNvZGUoZW5jb2RpbmcpCisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBVbmljb2RlRGVjb2RlRXJyb3I6CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJUaGUgc2hlYmFuZyAoeyFyfSkgaXMgbm90IGRlY29kYWJsZSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb20gdGhlIHNjcmlwdCBlbmNvZGluZyAoe30pIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtYXQoc2hlYmFuZywgZW5jb2RpbmcpKQorICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4ob3V0ZmlsZSwgIndiIikgYXMgb3V0ZjoKKyAgICAgICAgICAgICAgICAgICAgICAgIG91dGYud3JpdGUoc2hlYmFuZykKKyAgICAgICAgICAgICAgICAgICAgICAgIG91dGYud3JpdGVsaW5lcyhmLnJlYWRsaW5lcygpKQorICAgICAgICAgICAgICAgIGlmIGY6CisgICAgICAgICAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBpZiBmOgorICAgICAgICAgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBzZWxmLmNvcHlfZmlsZShzY3JpcHQsIG91dGZpbGUpCisKKyAgICAgICAgaWYgb3MubmFtZSA9PSAncG9zaXgnOgorICAgICAgICAgICAgZm9yIGZpbGUgaW4gb3V0ZmlsZXM6CisgICAgICAgICAgICAgICAgaWYgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygiY2hhbmdpbmcgbW9kZSBvZiAlcyIsIGZpbGUpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgb2xkbW9kZSA9IG9zLnN0YXQoZmlsZSkuc3RfbW9kZSAmIDBvNzc3NworICAgICAgICAgICAgICAgICAgICBuZXdtb2RlID0gKG9sZG1vZGUgfCAwbzU1NSkgJiAwbzc3NzcKKyAgICAgICAgICAgICAgICAgICAgaWYgbmV3bW9kZSAhPSBvbGRtb2RlOgorICAgICAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oImNoYW5naW5nIG1vZGUgb2YgJXMgZnJvbSAlbyB0byAlbyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlLCBvbGRtb2RlLCBuZXdtb2RlKQorICAgICAgICAgICAgICAgICAgICAgICAgb3MuY2htb2QoZmlsZSwgbmV3bW9kZSkKKyAgICAgICAgcmV0dXJuIG91dGZpbGVzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY2hlY2sucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY2hlY2sucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjcxNWRiOQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jaGVjay5weQpAQCAtMCwwICsxLDg4IEBACisiIiJDaGVjayBQRVAgY29tcGxpYW5jZSBvZiBtZXRhZGF0YS4iIiIKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nU2V0dXBFcnJvcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgcmVzb2x2ZV9uYW1lCisKK2NsYXNzIGNoZWNrKENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAiY2hlY2sgUEVQIGNvbXBsaWFuY2Ugb2YgbWV0YWRhdGEiCisKKyAgICB1c2VyX29wdGlvbnMgPSBbKCdtZXRhZGF0YScsICdtJywgJ1ZlcmlmeSBtZXRhZGF0YScpLAorICAgICAgICAgICAgICAgICAgICAoJ2FsbCcsICdhJywKKyAgICAgICAgICAgICAgICAgICAgICgncnVucyBleHRlbmRlZCBzZXQgb2YgY2hlY2tzJykpLAorICAgICAgICAgICAgICAgICAgICAoJ3N0cmljdCcsICdzJywKKyAgICAgICAgICAgICAgICAgICAgICdXaWxsIGV4aXQgd2l0aCBhbiBlcnJvciBpZiBhIGNoZWNrIGZhaWxzJyldCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ21ldGFkYXRhJywgJ2FsbCcsICdzdHJpY3QnXQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIiIiU2V0cyBkZWZhdWx0IHZhbHVlcyBmb3Igb3B0aW9ucy4iIiIKKyAgICAgICAgc2VsZi5hbGwgPSBGYWxzZQorICAgICAgICBzZWxmLm1ldGFkYXRhID0gVHJ1ZQorICAgICAgICBzZWxmLnN0cmljdCA9IEZhbHNlCisgICAgICAgIHNlbGYuX3dhcm5pbmdzID0gW10KKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgd2FybihzZWxmLCBtc2csICphcmdzKToKKyAgICAgICAgIiIiV3JhcHBlciBhcm91bmQgbG9nZ2luZyB0aGF0IGFsc28gcmVtZW1iZXJzIG1lc3NhZ2VzLiIiIgorICAgICAgICAjIFhYWCB3ZSBjb3VsZCB1c2UgYSBzcGVjaWFsIGhhbmRsZXIgZm9yIHRoaXMsIGJ1dCB3b3VsZCBuZWVkIHRvIHRlc3QKKyAgICAgICAgIyBpZiBpdCB3b3JrcyBldmVuIGlmIHRoZSBsb2dnZXIgaGFzIGEgdG9vIGhpZ2ggbGV2ZWwKKyAgICAgICAgc2VsZi5fd2FybmluZ3MuYXBwZW5kKChtc2csIGFyZ3MpKQorICAgICAgICByZXR1cm4gbG9nZ2VyLndhcm5pbmcoJyVzOiAlcycgJSAoc2VsZi5nZXRfY29tbWFuZF9uYW1lKCksIG1zZyksICphcmdzKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgIiIiUnVucyB0aGUgY29tbWFuZC4iIiIKKyAgICAgICAgIyBwZXJmb3JtIHRoZSB2YXJpb3VzIHRlc3RzCisgICAgICAgIGlmIHNlbGYubWV0YWRhdGE6CisgICAgICAgICAgICBzZWxmLmNoZWNrX21ldGFkYXRhKCkKKyAgICAgICAgaWYgc2VsZi5hbGw6CisgICAgICAgICAgICBzZWxmLmNoZWNrX3Jlc3RydWN0dXJlZHRleHQoKQorICAgICAgICAgICAgc2VsZi5jaGVja19ob29rc19yZXNvbHZhYmxlKCkKKworICAgICAgICAjIGxldCdzIHJhaXNlIGFuIGVycm9yIGluIHN0cmljdCBtb2RlLCBpZiB3ZSBoYXZlIGF0IGxlYXN0CisgICAgICAgICMgb25lIHdhcm5pbmcKKyAgICAgICAgaWYgc2VsZi5zdHJpY3QgYW5kIGxlbihzZWxmLl93YXJuaW5ncykgPiAwOgorICAgICAgICAgICAgbXNnID0gJ1xuJy5qb2luKG1zZyAlIGFyZ3MgZm9yIG1zZywgYXJncyBpbiBzZWxmLl93YXJuaW5ncykKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IobXNnKQorCisgICAgZGVmIGNoZWNrX21ldGFkYXRhKHNlbGYpOgorICAgICAgICAiIiJFbnN1cmVzIHRoYXQgYWxsIHJlcXVpcmVkIGVsZW1lbnRzIG9mIG1ldGFkYXRhIGFyZSBzdXBwbGllZC4KKworICAgICAgICBuYW1lLCB2ZXJzaW9uLCBVUkwsIGF1dGhvcgorCisgICAgICAgIFdhcm5zIGlmIGFueSBhcmUgbWlzc2luZy4KKyAgICAgICAgIiIiCisgICAgICAgIG1pc3NpbmcsIHdhcm5pbmdzID0gc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGEuY2hlY2soc3RyaWN0PVRydWUpCisgICAgICAgIGlmIG1pc3NpbmcgIT0gW106CisgICAgICAgICAgICBzZWxmLndhcm4oJ21pc3NpbmcgcmVxdWlyZWQgbWV0YWRhdGE6ICVzJywgJywgJy5qb2luKG1pc3NpbmcpKQorICAgICAgICBmb3Igd2FybmluZyBpbiB3YXJuaW5nczoKKyAgICAgICAgICAgIHNlbGYud2Fybih3YXJuaW5nKQorCisgICAgZGVmIGNoZWNrX3Jlc3RydWN0dXJlZHRleHQoc2VsZik6CisgICAgICAgICIiIkNoZWNrcyBpZiB0aGUgbG9uZyBzdHJpbmcgZmllbGRzIGFyZSByZVNULWNvbXBsaWFudC4iIiIKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YS5jaGVjayhyZXN0cnVjdHVyZWR0ZXh0PVRydWUpCisgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLm1ldGFkYXRhLmRvY3V0aWxzX3N1cHBvcnQ6CisgICAgICAgICAgICBmb3Igd2FybmluZyBpbiB3YXJuaW5nczoKKyAgICAgICAgICAgICAgICBsaW5lID0gd2FybmluZ1stMV0uZ2V0KCdsaW5lJykKKyAgICAgICAgICAgICAgICBpZiBsaW5lIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgICAgIHdhcm5pbmcgPSB3YXJuaW5nWzFdCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgd2FybmluZyA9ICclcyAobGluZSAlcyknICUgKHdhcm5pbmdbMV0sIGxpbmUpCisgICAgICAgICAgICAgICAgc2VsZi53YXJuKHdhcm5pbmcpCisgICAgICAgIGVsaWYgc2VsZi5zdHJpY3Q6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yKCdUaGUgZG9jdXRpbHMgcGFja2FnZSBpcyBuZWVkZWQuJykKKworICAgIGRlZiBjaGVja19ob29rc19yZXNvbHZhYmxlKHNlbGYpOgorICAgICAgICBmb3Igb3B0aW9ucyBpbiBzZWxmLmRpc3RyaWJ1dGlvbi5jb21tYW5kX29wdGlvbnMudmFsdWVzKCk6CisgICAgICAgICAgICBmb3IgaG9va19raW5kIGluICgicHJlX2hvb2siLCAicG9zdF9ob29rIik6CisgICAgICAgICAgICAgICAgaWYgaG9va19raW5kIG5vdCBpbiBvcHRpb25zOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGZvciBob29rX25hbWUgaW4gb3B0aW9uc1tob29rX2tpbmRdWzFdLnZhbHVlcygpOgorICAgICAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlX25hbWUoaG9va19uYW1lKQorICAgICAgICAgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLndhcm4oJ25hbWUgJXIgY2Fubm90IGJlIHJlc29sdmVkJywgaG9va19uYW1lKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2NsZWFuLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2NsZWFuLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmNjBmNGUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY2xlYW4ucHkKQEAgLTAsMCArMSw3NiBAQAorIiIiQ2xlYW4gdXAgdGVtcG9yYXJ5IGZpbGVzIGNyZWF0ZWQgYnkgdGhlIGJ1aWxkIGNvbW1hbmQuIiIiCisKKyMgQ29udHJpYnV0ZWQgYnkgQmFzdGlhbiBLbGVpbmVpZGFtIDxjYWx2aW5AY3MudW5pLXNiLmRlPgorCitpbXBvcnQgb3MKK2Zyb20gc2h1dGlsIGltcG9ydCBybXRyZWUKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCisKK2NsYXNzIGNsZWFuKENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAiY2xlYW4gdXAgdGVtcG9yYXJ5IGZpbGVzIGZyb20gJ2J1aWxkJyBjb21tYW5kIgorICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdidWlsZC1iYXNlPScsICdiJywKKyAgICAgICAgICJiYXNlIGJ1aWxkIGRpcmVjdG9yeSAoZGVmYXVsdDogJ2J1aWxkLmJ1aWxkLWJhc2UnKSIpLAorICAgICAgICAoJ2J1aWxkLWxpYj0nLCBOb25lLAorICAgICAgICAgImJ1aWxkIGRpcmVjdG9yeSBmb3IgYWxsIG1vZHVsZXMgKGRlZmF1bHQ6ICdidWlsZC5idWlsZC1saWInKSIpLAorICAgICAgICAoJ2J1aWxkLXRlbXA9JywgJ3QnLAorICAgICAgICAgInRlbXBvcmFyeSBidWlsZCBkaXJlY3RvcnkgKGRlZmF1bHQ6ICdidWlsZC5idWlsZC10ZW1wJykiKSwKKyAgICAgICAgKCdidWlsZC1zY3JpcHRzPScsIE5vbmUsCisgICAgICAgICAiYnVpbGQgZGlyZWN0b3J5IGZvciBzY3JpcHRzIChkZWZhdWx0OiAnYnVpbGQuYnVpbGQtc2NyaXB0cycpIiksCisgICAgICAgICgnYmRpc3QtYmFzZT0nLCBOb25lLAorICAgICAgICAgInRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIGJ1aWx0IGRpc3RyaWJ1dGlvbnMiKSwKKyAgICAgICAgKCdhbGwnLCAnYScsCisgICAgICAgICAicmVtb3ZlIGFsbCBidWlsZCBvdXRwdXQsIG5vdCBqdXN0IHRlbXBvcmFyeSBieS1wcm9kdWN0cyIpCisgICAgXQorCisgICAgYm9vbGVhbl9vcHRpb25zID0gWydhbGwnXQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5idWlsZF9iYXNlID0gTm9uZQorICAgICAgICBzZWxmLmJ1aWxkX2xpYiA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF90ZW1wID0gTm9uZQorICAgICAgICBzZWxmLmJ1aWxkX3NjcmlwdHMgPSBOb25lCisgICAgICAgIHNlbGYuYmRpc3RfYmFzZSA9IE5vbmUKKyAgICAgICAgc2VsZi5hbGwgPSBOb25lCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2J1aWxkJywgJ2J1aWxkX2Jhc2UnLCAnYnVpbGRfbGliJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2J1aWxkX3NjcmlwdHMnLCAnYnVpbGRfdGVtcCcpCisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdiZGlzdCcsICdiZGlzdF9iYXNlJykKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgICMgcmVtb3ZlIHRoZSBidWlsZC90ZW1wLjxwbGF0PiBkaXJlY3RvcnkgKHVubGVzcyBpdCdzIGFscmVhZHkKKyAgICAgICAgIyBnb25lKQorICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhzZWxmLmJ1aWxkX3RlbXApOgorICAgICAgICAgICAgaWYgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdyZW1vdmluZyAlcycsIHNlbGYuYnVpbGRfdGVtcCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcm10cmVlKHNlbGYuYnVpbGRfdGVtcCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1ZygiJyVzJyBkb2VzIG5vdCBleGlzdCAtLSBjYW4ndCBjbGVhbiBpdCIsCisgICAgICAgICAgICAgICAgICAgICAgc2VsZi5idWlsZF90ZW1wKQorCisgICAgICAgIGlmIHNlbGYuYWxsOgorICAgICAgICAgICAgIyByZW1vdmUgYnVpbGQgZGlyZWN0b3JpZXMKKyAgICAgICAgICAgIGZvciBkaXJlY3RvcnkgaW4gKHNlbGYuYnVpbGRfbGliLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5iZGlzdF9iYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5idWlsZF9zY3JpcHRzKToKKyAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhkaXJlY3RvcnkpOgorICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygncmVtb3ZpbmcgJXMnLCBkaXJlY3RvcnkpCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICBybXRyZWUoZGlyZWN0b3J5KQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCInJXMnIGRvZXMgbm90IGV4aXN0IC0tIGNhbid0IGNsZWFuIGl0IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0b3J5KQorCisgICAgICAgICMganVzdCBmb3IgdGhlIGhlY2sgb2YgaXQsIHRyeSB0byByZW1vdmUgdGhlIGJhc2UgYnVpbGQgZGlyZWN0b3J5OgorICAgICAgICAjIHdlIG1pZ2h0IGhhdmUgZW1wdGllZCBpdCByaWdodCBub3csIGJ1dCBpZiBub3Qgd2UgZG9uJ3QgY2FyZQorICAgICAgICBpZiBub3Qgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIG9zLnJtZGlyKHNlbGYuYnVpbGRfYmFzZSkKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygicmVtb3ZpbmcgJyVzJyIsIHNlbGYuYnVpbGRfYmFzZSkKKyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAgICAgICAgIHBhc3MKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jbWQucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY21kLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1ZTZhNzIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY21kLnB5CkBAIC0wLDAgKzEsNDYxIEBACisiIiJCYXNlIGNsYXNzIGZvciBjb21tYW5kcy4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgcmUKK2Zyb20gc2h1dGlsIGltcG9ydCBjb3B5ZmlsZSwgbW92ZSwgbWFrZV9hcmNoaXZlCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgdXRpbAorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorCisKK2NsYXNzIENvbW1hbmQ6CisgICAgIiIiQWJzdHJhY3QgYmFzZSBjbGFzcyBmb3IgZGVmaW5pbmcgY29tbWFuZCBjbGFzc2VzLCB0aGUgIndvcmtlciBiZWVzIgorICAgIG9mIFBhY2thZ2luZy4gIEEgdXNlZnVsIGFuYWxvZ3kgZm9yIGNvbW1hbmQgY2xhc3NlcyBpcyB0byB0aGluayBvZgorICAgIHRoZW0gYXMgc3Vicm91dGluZXMgd2l0aCBsb2NhbCB2YXJpYWJsZXMgY2FsbGVkICJvcHRpb25zIi4gIFRoZSBvcHRpb25zCisgICAgYXJlICJkZWNsYXJlZCIgaW4gJ2luaXRpYWxpemVfb3B0aW9ucygpJyBhbmQgImRlZmluZWQiIChnaXZlbiB0aGVpcgorICAgIGZpbmFsIHZhbHVlcywgYWthICJmaW5hbGl6ZWQiKSBpbiAnZmluYWxpemVfb3B0aW9ucygpJywgYm90aCBvZiB3aGljaAorICAgIG11c3QgYmUgZGVmaW5lZCBieSBldmVyeSBjb21tYW5kIGNsYXNzLiAgVGhlIGRpc3RpbmN0aW9uIGJldHdlZW4gdGhlCisgICAgdHdvIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIG9wdGlvbiB2YWx1ZXMgbWlnaHQgY29tZSBmcm9tIHRoZSBvdXRzaWRlCisgICAgd29ybGQgKGNvbW1hbmQgbGluZSwgY29uZmlnIGZpbGUsIC4uLiksIGFuZCBhbnkgb3B0aW9ucyBkZXBlbmRlbnQgb24KKyAgICBvdGhlciBvcHRpb25zIG11c3QgYmUgY29tcHV0ZWQgKmFmdGVyKiB0aGVzZSBvdXRzaWRlIGluZmx1ZW5jZXMgaGF2ZQorICAgIGJlZW4gcHJvY2Vzc2VkIC0tIGhlbmNlICdmaW5hbGl6ZV9vcHRpb25zKCknLiAgVGhlICJib2R5IiBvZiB0aGUKKyAgICBzdWJyb3V0aW5lLCB3aGVyZSBpdCBkb2VzIGFsbCBpdHMgd29yayBiYXNlZCBvbiB0aGUgdmFsdWVzIG9mIGl0cworICAgIG9wdGlvbnMsIGlzIHRoZSAncnVuKCknIG1ldGhvZCwgd2hpY2ggbXVzdCBhbHNvIGJlIGltcGxlbWVudGVkIGJ5IGV2ZXJ5CisgICAgY29tbWFuZCBjbGFzcy4KKyAgICAiIiIKKworICAgICMgJ3N1Yl9jb21tYW5kcycgZm9ybWFsaXplcyB0aGUgbm90aW9uIG9mIGEgImZhbWlseSIgb2YgY29tbWFuZHMsCisgICAgIyBlZy4gImluc3RhbGxfZGlzdCIgYXMgdGhlIHBhcmVudCB3aXRoIHN1Yi1jb21tYW5kcyAiaW5zdGFsbF9saWIiLAorICAgICMgImluc3RhbGxfaGVhZGVycyIsIGV0Yy4gIFRoZSBwYXJlbnQgb2YgYSBmYW1pbHkgb2YgY29tbWFuZHMKKyAgICAjIGRlZmluZXMgJ3N1Yl9jb21tYW5kcycgYXMgYSBjbGFzcyBhdHRyaWJ1dGU7IGl0J3MgYSBsaXN0IG9mCisgICAgIyAgICAoY29tbWFuZF9uYW1lIDogc3RyaW5nLCBwcmVkaWNhdGUgOiB1bmJvdW5kX21ldGhvZCB8IHN0cmluZyB8IE5vbmUpCisgICAgIyB0dXBsZXMsIHdoZXJlICdwcmVkaWNhdGUnIGlzIGEgbWV0aG9kIG9mIHRoZSBwYXJlbnQgY29tbWFuZCB0aGF0CisgICAgIyBkZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGNvcnJlc3BvbmRpbmcgY29tbWFuZCBpcyBhcHBsaWNhYmxlIGluIHRoZQorICAgICMgY3VycmVudCBzaXR1YXRpb24uICAoRWcuIHdlICJpbnN0YWxsX2hlYWRlcnMiIGlzIG9ubHkgYXBwbGljYWJsZSBpZgorICAgICMgd2UgaGF2ZSBhbnkgQyBoZWFkZXIgZmlsZXMgdG8gaW5zdGFsbC4pICBJZiAncHJlZGljYXRlJyBpcyBOb25lLAorICAgICMgdGhhdCBjb21tYW5kIGlzIGFsd2F5cyBhcHBsaWNhYmxlLgorICAgICMKKyAgICAjICdzdWJfY29tbWFuZHMnIGlzIHVzdWFsbHkgZGVmaW5lZCBhdCB0aGUgKmVuZCogb2YgYSBjbGFzcywgYmVjYXVzZQorICAgICMgcHJlZGljYXRlcyBjYW4gYmUgdW5ib3VuZCBtZXRob2RzLCBzbyB0aGV5IG11c3QgYWxyZWFkeSBoYXZlIGJlZW4KKyAgICAjIGRlZmluZWQuICBUaGUgY2Fub25pY2FsIGV4YW1wbGUgaXMgdGhlICJpbnN0YWxsX2Rpc3QiIGNvbW1hbmQuCisgICAgc3ViX2NvbW1hbmRzID0gW10KKworICAgICMgUHJlIGFuZCBwb3N0IGNvbW1hbmQgaG9va3MgYXJlIHJ1biBqdXN0IGJlZm9yZSBvciBqdXN0IGFmdGVyIHRoZSBjb21tYW5kCisgICAgIyBpdHNlbGYuIFRoZXkgYXJlIHNpbXBsZSBmdW5jdGlvbnMgdGhhdCByZWNlaXZlIHRoZSBjb21tYW5kIGluc3RhbmNlLiBUaGV5CisgICAgIyBhcmUgc3BlY2lmaWVkIGFzIGNhbGxhYmxlIG9iamVjdHMgb3IgZG90dGVkIHN0cmluZ3MgKGZvciBsYXp5IGxvYWRpbmcpLgorICAgIHByZV9ob29rID0gTm9uZQorICAgIHBvc3RfaG9vayA9IE5vbmUKKworICAgICMgLS0gQ3JlYXRpb24vaW5pdGlhbGl6YXRpb24gbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZGlzdCk6CisgICAgICAgICIiIkNyZWF0ZSBhbmQgaW5pdGlhbGl6ZSBhIG5ldyBDb21tYW5kIG9iamVjdC4gIE1vc3QgaW1wb3J0YW50bHksCisgICAgICAgIGludm9rZXMgdGhlICdpbml0aWFsaXplX29wdGlvbnMoKScgbWV0aG9kLCB3aGljaCBpcyB0aGUgcmVhbAorICAgICAgICBpbml0aWFsaXplciBhbmQgZGVwZW5kcyBvbiB0aGUgYWN0dWFsIGNvbW1hbmQgYmVpbmcgaW5zdGFudGlhdGVkLgorICAgICAgICAiIiIKKyAgICAgICAgIyBsYXRlIGltcG9ydCBiZWNhdXNlIG9mIG11dHVhbCBkZXBlbmRlbmNlIGJldHdlZW4gdGhlc2UgY2xhc3NlcworICAgICAgICBmcm9tIHBhY2thZ2luZy5kaXN0IGltcG9ydCBEaXN0cmlidXRpb24KKworICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShkaXN0LCBEaXN0cmlidXRpb24pOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJkaXN0IG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgRGlzdHJpYnV0aW9uLCBub3QgJXIiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJSB0eXBlKGRpc3QpKQorICAgICAgICBpZiBzZWxmLl9fY2xhc3NfXyBpcyBDb21tYW5kOgorICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJDb21tYW5kIGlzIGFuIGFic3RyYWN0IGNsYXNzIikKKworICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbiA9IGRpc3QKKyAgICAgICAgc2VsZi5pbml0aWFsaXplX29wdGlvbnMoKQorCisgICAgICAgICMgUGVyLWNvbW1hbmQgdmVyc2lvbnMgb2YgdGhlIGdsb2JhbCBmbGFncywgc28gdGhhdCB0aGUgdXNlciBjYW4KKyAgICAgICAgIyBjdXN0b21pemUgUGFja2FnaW5nJyBiZWhhdmlvdXIgY29tbWFuZC1ieS1jb21tYW5kIGFuZCBsZXQgc29tZQorICAgICAgICAjIGNvbW1hbmRzIGZhbGwgYmFjayBvbiB0aGUgRGlzdHJpYnV0aW9uJ3MgYmVoYXZpb3VyLiAgTm9uZSBtZWFucworICAgICAgICAjICJub3QgZGVmaW5lZCwgY2hlY2sgc2VsZi5kaXN0cmlidXRpb24ncyBjb3B5Iiwgd2hpbGUgMCBvciAxIG1lYW4KKyAgICAgICAgIyBmYWxzZSBhbmQgdHJ1ZSAoZHVoKS4gIE5vdGUgdGhhdCB0aGlzIG1lYW5zIGZpZ3VyaW5nIG91dCB0aGUgcmVhbAorICAgICAgICAjIHZhbHVlIG9mIGVhY2ggZmxhZyBpcyBhIHRvdWNoIGNvbXBsaWNhdGVkIC0tIGhlbmNlICJzZWxmLl9kcnlfcnVuIgorICAgICAgICAjIHdpbGwgYmUgaGFuZGxlZCBieSBhIHByb3BlcnR5LCBiZWxvdy4KKyAgICAgICAgIyBYWFggVGhpcyBuZWVkcyB0byBiZSBmaXhlZC4gW0kgY2hhbmdlZCBpdCB0byBhIHByb3BlcnR5LS1kb2VzIHRoYXQKKyAgICAgICAgIyAgICAgImZpeCIgaXQ/XQorICAgICAgICBzZWxmLl9kcnlfcnVuID0gTm9uZQorCisgICAgICAgICMgU29tZSBjb21tYW5kcyBkZWZpbmUgYSAnc2VsZi5mb3JjZScgb3B0aW9uIHRvIGlnbm9yZSBmaWxlCisgICAgICAgICMgdGltZXN0YW1wcywgYnV0IG1ldGhvZHMgZGVmaW5lZCAqaGVyZSogYXNzdW1lIHRoYXQKKyAgICAgICAgIyAnc2VsZi5mb3JjZScgZXhpc3RzIGZvciBhbGwgY29tbWFuZHMuICBTbyBkZWZpbmUgaXQgaGVyZQorICAgICAgICAjIGp1c3QgdG8gYmUgc2FmZS4KKyAgICAgICAgc2VsZi5mb3JjZSA9IE5vbmUKKworICAgICAgICAjIFRoZSAnaGVscCcgZmxhZyBpcyBqdXN0IHVzZWQgZm9yIGNvbW1hbmQgbGluZSBwYXJzaW5nLCBzbworICAgICAgICAjIG5vbmUgb2YgdGhhdCBjb21wbGljYXRlZCBidXJlYXVjcmFjeSBpcyBuZWVkZWQuCisgICAgICAgIHNlbGYuaGVscCA9IEZhbHNlCisKKyAgICAgICAgIyAnZmluYWxpemVkJyByZWNvcmRzIHdoZXRoZXIgb3Igbm90ICdmaW5hbGl6ZV9vcHRpb25zKCknIGhhcyBiZWVuCisgICAgICAgICMgY2FsbGVkLiAgJ2ZpbmFsaXplX29wdGlvbnMoKScgaXRzZWxmIHNob3VsZCBub3QgcGF5IGF0dGVudGlvbiB0bworICAgICAgICAjIHRoaXMgZmxhZzogaXQgaXMgdGhlIGJ1c2luZXNzIG9mICdlbnN1cmVfZmluYWxpemVkKCknLCB3aGljaAorICAgICAgICAjIGFsd2F5cyBjYWxscyAnZmluYWxpemVfb3B0aW9ucygpJywgdG8gcmVzcGVjdC91cGRhdGUgaXQuCisgICAgICAgIHNlbGYuZmluYWxpemVkID0gRmFsc2UKKworICAgICMgWFhYIEEgbW9yZSBleHBsaWNpdCB3YXkgdG8gY3VzdG9taXplIGRyeV9ydW4gd291bGQgYmUgYmV0dGVyLgorICAgIEBwcm9wZXJ0eQorICAgIGRlZiBkcnlfcnVuKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9kcnlfcnVuIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4gZ2V0YXR0cihzZWxmLmRpc3RyaWJ1dGlvbiwgJ2RyeV9ydW4nKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2RyeV9ydW4KKworICAgIGRlZiBlbnN1cmVfZmluYWxpemVkKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5maW5hbGl6ZWQ6CisgICAgICAgICAgICBzZWxmLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmZpbmFsaXplZCA9IFRydWUKKworICAgICMgU3ViY2xhc3NlcyBtdXN0IGRlZmluZToKKyAgICAjICAgaW5pdGlhbGl6ZV9vcHRpb25zKCkKKyAgICAjICAgICBwcm92aWRlIGRlZmF1bHQgdmFsdWVzIGZvciBhbGwgb3B0aW9uczsgbWF5IGJlIGN1c3RvbWl6ZWQgYnkKKyAgICAjICAgICBzZXR1cCBzY3JpcHQsIGJ5IG9wdGlvbnMgZnJvbSBjb25maWcgZmlsZShzKSwgb3IgYnkgY29tbWFuZC1saW5lCisgICAgIyAgICAgb3B0aW9ucworICAgICMgICBmaW5hbGl6ZV9vcHRpb25zKCkKKyAgICAjICAgICBkZWNpZGUgb24gdGhlIGZpbmFsIHZhbHVlcyBmb3IgYWxsIG9wdGlvbnM7IHRoaXMgaXMgY2FsbGVkCisgICAgIyAgICAgYWZ0ZXIgYWxsIHBvc3NpYmxlIGludGVydmVudGlvbiBmcm9tIHRoZSBvdXRzaWRlIHdvcmxkCisgICAgIyAgICAgKGNvbW1hbmQgbGluZSwgb3B0aW9uIGZpbGUsIGV0Yy4pIGhhcyBiZWVuIHByb2Nlc3NlZAorICAgICMgICBydW4oKQorICAgICMgICAgIHJ1biB0aGUgY29tbWFuZDogZG8gd2hhdGV2ZXIgaXQgaXMgd2UncmUgaGVyZSB0byBkbywKKyAgICAjICAgICBjb250cm9sbGVkIGJ5IHRoZSBjb21tYW5kJ3MgdmFyaW91cyBvcHRpb24gdmFsdWVzCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICAiIiJTZXQgZGVmYXVsdCB2YWx1ZXMgZm9yIGFsbCB0aGUgb3B0aW9ucyB0aGF0IHRoaXMgY29tbWFuZAorICAgICAgICBzdXBwb3J0cy4gIE5vdGUgdGhhdCB0aGVzZSBkZWZhdWx0cyBtYXkgYmUgb3ZlcnJpZGRlbiBieSBvdGhlcgorICAgICAgICBjb21tYW5kcywgYnkgdGhlIHNldHVwIHNjcmlwdCwgYnkgY29uZmlnIGZpbGVzLCBvciBieSB0aGUKKyAgICAgICAgY29tbWFuZCBsaW5lLiAgVGh1cywgdGhpcyBpcyBub3QgdGhlIHBsYWNlIHRvIGNvZGUgZGVwZW5kZW5jaWVzCisgICAgICAgIGJldHdlZW4gb3B0aW9uczsgZ2VuZXJhbGx5LCAnaW5pdGlhbGl6ZV9vcHRpb25zKCknIGltcGxlbWVudGF0aW9ucworICAgICAgICBhcmUganVzdCBhIGJ1bmNoIG9mICJzZWxmLmZvbyA9IE5vbmUiIGFzc2lnbm1lbnRzLgorCisgICAgICAgIFRoaXMgbWV0aG9kIG11c3QgYmUgaW1wbGVtZW50ZWQgYnkgYWxsIGNvbW1hbmQgY2xhc3Nlcy4KKyAgICAgICAgIiIiCisgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigKKyAgICAgICAgICAgICJhYnN0cmFjdCBtZXRob2QgLS0gc3ViY2xhc3MgJXMgbXVzdCBvdmVycmlkZSIgJSBzZWxmLl9fY2xhc3NfXykKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICAiIiJTZXQgZmluYWwgdmFsdWVzIGZvciBhbGwgdGhlIG9wdGlvbnMgdGhhdCB0aGlzIGNvbW1hbmQgc3VwcG9ydHMuCisgICAgICAgIFRoaXMgaXMgYWx3YXlzIGNhbGxlZCBhcyBsYXRlIGFzIHBvc3NpYmxlLCBpZS4gIGFmdGVyIGFueSBvcHRpb24KKyAgICAgICAgYXNzaWdubWVudHMgZnJvbSB0aGUgY29tbWFuZCBsaW5lIG9yIGZyb20gb3RoZXIgY29tbWFuZHMgaGF2ZSBiZWVuCisgICAgICAgIGRvbmUuICBUaHVzLCB0aGlzIGlzIHRoZSBwbGFjZSB0byBjb2RlIG9wdGlvbiBkZXBlbmRlbmNpZXM6IGlmCisgICAgICAgICdmb28nIGRlcGVuZHMgb24gJ2JhcicsIHRoZW4gaXQgaXMgc2FmZSB0byBzZXQgJ2ZvbycgZnJvbSAnYmFyJyBhcworICAgICAgICBsb25nIGFzICdmb28nIHN0aWxsIGhhcyB0aGUgc2FtZSB2YWx1ZSBpdCB3YXMgYXNzaWduZWQgaW4KKyAgICAgICAgJ2luaXRpYWxpemVfb3B0aW9ucygpJy4KKworICAgICAgICBUaGlzIG1ldGhvZCBtdXN0IGJlIGltcGxlbWVudGVkIGJ5IGFsbCBjb21tYW5kIGNsYXNzZXMuCisgICAgICAgICIiIgorICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoCisgICAgICAgICAgICAiYWJzdHJhY3QgbWV0aG9kIC0tIHN1YmNsYXNzICVzIG11c3Qgb3ZlcnJpZGUiICUgc2VsZi5fX2NsYXNzX18pCisKKyAgICBkZWYgZHVtcF9vcHRpb25zKHNlbGYsIGhlYWRlcj1Ob25lLCBpbmRlbnQ9IiIpOgorICAgICAgICBpZiBoZWFkZXIgaXMgTm9uZToKKyAgICAgICAgICAgIGhlYWRlciA9ICJjb21tYW5kIG9wdGlvbnMgZm9yICclcyc6IiAlIHNlbGYuZ2V0X2NvbW1hbmRfbmFtZSgpCisgICAgICAgIGxvZ2dlci5pbmZvKGluZGVudCArIGhlYWRlcikKKyAgICAgICAgaW5kZW50ID0gaW5kZW50ICsgIiAgIgorICAgICAgICBuZWdhdGl2ZV9vcHQgPSBnZXRhdHRyKHNlbGYsICduZWdhdGl2ZV9vcHQnLCAoKSkKKyAgICAgICAgZm9yIG9wdGlvbiwgXywgXyBpbiBzZWxmLnVzZXJfb3B0aW9uczoKKyAgICAgICAgICAgIGlmIG9wdGlvbiBpbiBuZWdhdGl2ZV9vcHQ6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIG9wdGlvbiA9IG9wdGlvbi5yZXBsYWNlKCctJywgJ18nKQorICAgICAgICAgICAgaWYgb3B0aW9uWy0xXSA9PSAiPSI6CisgICAgICAgICAgICAgICAgb3B0aW9uID0gb3B0aW9uWzotMV0KKyAgICAgICAgICAgIHZhbHVlID0gZ2V0YXR0cihzZWxmLCBvcHRpb24pCisgICAgICAgICAgICBsb2dnZXIuaW5mbyhpbmRlbnQgKyAiJXMgPSAlcyIsIG9wdGlvbiwgdmFsdWUpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICAiIiJBIGNvbW1hbmQncyByYWlzb24gZCdldHJlOiBjYXJyeSBvdXQgdGhlIGFjdGlvbiBpdCBleGlzdHMgdG8KKyAgICAgICAgcGVyZm9ybSwgY29udHJvbGxlZCBieSB0aGUgb3B0aW9ucyBpbml0aWFsaXplZCBpbgorICAgICAgICAnaW5pdGlhbGl6ZV9vcHRpb25zKCknLCBjdXN0b21pemVkIGJ5IG90aGVyIGNvbW1hbmRzLCB0aGUgc2V0dXAKKyAgICAgICAgc2NyaXB0LCB0aGUgY29tbWFuZCBsaW5lIGFuZCBjb25maWcgZmlsZXMsIGFuZCBmaW5hbGl6ZWQgaW4KKyAgICAgICAgJ2ZpbmFsaXplX29wdGlvbnMoKScuICBBbGwgdGVybWluYWwgb3V0cHV0IGFuZCBmaWxlc3lzdGVtCisgICAgICAgIGludGVyYWN0aW9uIHNob3VsZCBiZSBkb25lIGJ5ICdydW4oKScuCisKKyAgICAgICAgVGhpcyBtZXRob2QgbXVzdCBiZSBpbXBsZW1lbnRlZCBieSBhbGwgY29tbWFuZCBjbGFzc2VzLgorICAgICAgICAiIiIKKyAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKAorICAgICAgICAgICAgImFic3RyYWN0IG1ldGhvZCAtLSBzdWJjbGFzcyAlcyBtdXN0IG92ZXJyaWRlIiAlIHNlbGYuX19jbGFzc19fKQorCisgICAgIyAtLSBFeHRlcm5hbCBpbnRlcmZhY2UgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIChjYWxsZWQgYnkgb3V0c2lkZXJzKQorCisgICAgZGVmIGdldF9zb3VyY2VfZmlsZXMoc2VsZik6CisgICAgICAgICIiIlJldHVybiB0aGUgbGlzdCBvZiBmaWxlcyB0aGF0IGFyZSB1c2VkIGFzIGlucHV0cyB0byB0aGlzIGNvbW1hbmQsCisgICAgICAgIGkuZS4gdGhlIGZpbGVzIHVzZWQgdG8gZ2VuZXJhdGUgdGhlIG91dHB1dCBmaWxlcy4gIFRoZSByZXN1bHQgaXMgdXNlZAorICAgICAgICBieSB0aGUgYHNkaXN0YCBjb21tYW5kIGluIGRldGVybWluaW5nIHRoZSBzZXQgb2YgZGVmYXVsdCBmaWxlcy4KKworICAgICAgICBDb21tYW5kIGNsYXNzZXMgc2hvdWxkIGltcGxlbWVudCB0aGlzIG1ldGhvZCBpZiB0aGV5IG9wZXJhdGUgb24gZmlsZXMKKyAgICAgICAgZnJvbSB0aGUgc291cmNlIHRyZWUuCisgICAgICAgICIiIgorICAgICAgICByZXR1cm4gW10KKworICAgIGRlZiBnZXRfb3V0cHV0cyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBsaXN0IG9mIGZpbGVzIHRoYXQgd291bGQgYmUgcHJvZHVjZWQgaWYgdGhpcyBjb21tYW5kCisgICAgICAgIHdlcmUgYWN0dWFsbHkgcnVuLiAgTm90IGFmZmVjdGVkIGJ5IHRoZSAiZHJ5LXJ1biIgZmxhZyBvciB3aGV0aGVyCisgICAgICAgIGFueSBvdGhlciBjb21tYW5kcyBoYXZlIGJlZW4gcnVuLgorCisgICAgICAgIENvbW1hbmQgY2xhc3NlcyBzaG91bGQgaW1wbGVtZW50IHRoaXMgbWV0aG9kIGlmIHRoZXkgcHJvZHVjZSBhbnkKKyAgICAgICAgb3V0cHV0IGZpbGVzIHRoYXQgZ2V0IGNvbnN1bWVkIGJ5IGFub3RoZXIgY29tbWFuZC4gIGUuZy4sIGBidWlsZF9leHRgCisgICAgICAgIHJldHVybnMgdGhlIGxpc3Qgb2YgYnVpbHQgZXh0ZW5zaW9uIG1vZHVsZXMsIGJ1dCBub3QgYW55IHRlbXBvcmFyeQorICAgICAgICBmaWxlcyB1c2VkIGluIHRoZSBjb21waWxhdGlvbiBwcm9jZXNzLgorICAgICAgICAiIiIKKyAgICAgICAgcmV0dXJuIFtdCisKKyAgICAjIC0tIE9wdGlvbiB2YWxpZGF0aW9uIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICMgKHRoZXNlIGFyZSB2ZXJ5IGhhbmR5IGluIHdyaXRpbmcgdGhlICdmaW5hbGl6ZV9vcHRpb25zKCknIG1ldGhvZCkKKyAgICAjCisgICAgIyBOQi4gdGhlIGdlbmVyYWwgcGhpbG9zb3BoeSBoZXJlIGlzIHRvIGVuc3VyZSB0aGF0IGEgcGFydGljdWxhciBvcHRpb24KKyAgICAjIHZhbHVlIG1lZXRzIGNlcnRhaW4gdHlwZSBhbmQgdmFsdWUgY29uc3RyYWludHMuICBJZiBub3QsIHdlIHRyeSB0bworICAgICMgZm9yY2UgaXQgaW50byBjb25mb3JtYW5jZSAoZWcuIGlmIHdlIGV4cGVjdCBhIGxpc3QgYnV0IGhhdmUgYSBzdHJpbmcsCisgICAgIyBzcGxpdCB0aGUgc3RyaW5nIG9uIGNvbW1hIGFuZC9vciB3aGl0ZXNwYWNlKS4gIElmIHdlIGNhbid0IGZvcmNlIHRoZQorICAgICMgb3B0aW9uIGludG8gY29uZm9ybWFuY2UsIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yLiAgVGh1cywgY29tbWFuZAorICAgICMgY2xhc3NlcyBuZWVkIGRvIG5vdGhpbmcgbW9yZSB0aGFuIChlZy4pCisgICAgIyAgIHNlbGYuZW5zdXJlX3N0cmluZ19saXN0KCdmb28nKQorICAgICMgYW5kIHRoZXkgY2FuIGJlIGd1YXJhbnRlZWQgdGhhdCB0aGVyZWFmdGVyLCBzZWxmLmZvbyB3aWxsIGJlCisgICAgIyBhIGxpc3Qgb2Ygc3RyaW5ncy4KKworICAgIGRlZiBfZW5zdXJlX3N0cmluZ2xpa2Uoc2VsZiwgb3B0aW9uLCB3aGF0LCBkZWZhdWx0PU5vbmUpOgorICAgICAgICB2YWwgPSBnZXRhdHRyKHNlbGYsIG9wdGlvbikKKyAgICAgICAgaWYgdmFsIGlzIE5vbmU6CisgICAgICAgICAgICBzZXRhdHRyKHNlbGYsIG9wdGlvbiwgZGVmYXVsdCkKKyAgICAgICAgICAgIHJldHVybiBkZWZhdWx0CisgICAgICAgIGVsaWYgbm90IGlzaW5zdGFuY2UodmFsLCBzdHIpOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoIiclcycgbXVzdCBiZSBhICVzIChnb3QgYCVzYCkiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvcHRpb24sIHdoYXQsIHZhbCkpCisgICAgICAgIHJldHVybiB2YWwKKworICAgIGRlZiBlbnN1cmVfc3RyaW5nKHNlbGYsIG9wdGlvbiwgZGVmYXVsdD1Ob25lKToKKyAgICAgICAgIiIiRW5zdXJlIHRoYXQgJ29wdGlvbicgaXMgYSBzdHJpbmc7IGlmIG5vdCBkZWZpbmVkLCBzZXQgaXQgdG8KKyAgICAgICAgJ2RlZmF1bHQnLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fZW5zdXJlX3N0cmluZ2xpa2Uob3B0aW9uLCAic3RyaW5nIiwgZGVmYXVsdCkKKworICAgIGRlZiBlbnN1cmVfc3RyaW5nX2xpc3Qoc2VsZiwgb3B0aW9uKToKKyAgICAgICAgciIiIkVuc3VyZSB0aGF0ICdvcHRpb24nIGlzIGEgbGlzdCBvZiBzdHJpbmdzLiAgSWYgJ29wdGlvbicgaXMKKyAgICAgICAgY3VycmVudGx5IGEgc3RyaW5nLCB3ZSBzcGxpdCBpdCBlaXRoZXIgb24gLyxccyovIG9yIC9ccysvLCBzbworICAgICAgICAiZm9vIGJhciBiYXoiLCAiZm9vLGJhcixiYXoiLCBhbmQgImZvbywgICBiYXIgYmF6IiBhbGwgYmVjb21lCisgICAgICAgIFsiZm9vIiwgImJhciIsICJiYXoiXS4KKyAgICAgICAgIiIiCisgICAgICAgIHZhbCA9IGdldGF0dHIoc2VsZiwgb3B0aW9uKQorICAgICAgICBpZiB2YWwgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBlbGlmIGlzaW5zdGFuY2UodmFsLCBzdHIpOgorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBvcHRpb24sIHJlLnNwbGl0KHInLFxzKnxccysnLCB2YWwpKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWwsIGxpc3QpOgorICAgICAgICAgICAgICAgICMgY2hlY2tzIGlmIGFsbCBlbGVtZW50cyBhcmUgc3RyCisgICAgICAgICAgICAgICAgb2sgPSBUcnVlCisgICAgICAgICAgICAgICAgZm9yIGVsZW1lbnQgaW4gdmFsOgorICAgICAgICAgICAgICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShlbGVtZW50LCBzdHIpOgorICAgICAgICAgICAgICAgICAgICAgICAgb2sgPSBGYWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgb2sgPSBGYWxzZQorCisgICAgICAgICAgICBpZiBub3Qgb2s6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICInJXMnIG11c3QgYmUgYSBsaXN0IG9mIHN0cmluZ3MgKGdvdCAlcikiICUgKG9wdGlvbiwgdmFsKSkKKworICAgIGRlZiBfZW5zdXJlX3Rlc3RlZF9zdHJpbmcoc2VsZiwgb3B0aW9uLCB0ZXN0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGF0LCBlcnJvcl9mbXQsIGRlZmF1bHQ9Tm9uZSk6CisgICAgICAgIHZhbCA9IHNlbGYuX2Vuc3VyZV9zdHJpbmdsaWtlKG9wdGlvbiwgd2hhdCwgZGVmYXVsdCkKKyAgICAgICAgaWYgdmFsIGlzIG5vdCBOb25lIGFuZCBub3QgdGVzdGVyKHZhbCk6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigKKyAgICAgICAgICAgICAgICAoImVycm9yIGluICclcycgb3B0aW9uOiAiICsgZXJyb3JfZm10KSAlIChvcHRpb24sIHZhbCkpCisKKyAgICBkZWYgZW5zdXJlX2ZpbGVuYW1lKHNlbGYsIG9wdGlvbik6CisgICAgICAgICIiIkVuc3VyZSB0aGF0ICdvcHRpb24nIGlzIHRoZSBuYW1lIG9mIGFuIGV4aXN0aW5nIGZpbGUuIiIiCisgICAgICAgIHNlbGYuX2Vuc3VyZV90ZXN0ZWRfc3RyaW5nKG9wdGlvbiwgb3MucGF0aC5pc2ZpbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmaWxlbmFtZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICInJXMnIGRvZXMgbm90IGV4aXN0IG9yIGlzIG5vdCBhIGZpbGUiKQorCisgICAgZGVmIGVuc3VyZV9kaXJuYW1lKHNlbGYsIG9wdGlvbik6CisgICAgICAgIHNlbGYuX2Vuc3VyZV90ZXN0ZWRfc3RyaW5nKG9wdGlvbiwgb3MucGF0aC5pc2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpcmVjdG9yeSBuYW1lIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiclcycgZG9lcyBub3QgZXhpc3Qgb3IgaXMgbm90IGEgZGlyZWN0b3J5IikKKworICAgICMgLS0gQ29udmVuaWVuY2UgbWV0aG9kcyBmb3IgY29tbWFuZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgZ2V0X2NvbW1hbmRfbmFtZShjbHMpOgorICAgICAgICBpZiBoYXNhdHRyKGNscywgJ2NvbW1hbmRfbmFtZScpOgorICAgICAgICAgICAgcmV0dXJuIGNscy5jb21tYW5kX25hbWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBjbHMuX19uYW1lX18KKworICAgIGRlZiBzZXRfdW5kZWZpbmVkX29wdGlvbnMoc2VsZiwgc3JjX2NtZCwgKm9wdGlvbnMpOgorICAgICAgICAiIiJTZXQgdmFsdWVzIG9mIHVuZGVmaW5lZCBvcHRpb25zIGZyb20gYW5vdGhlciBjb21tYW5kLgorCisgICAgICAgIFVuZGVmaW5lZCBvcHRpb25zIGFyZSBvcHRpb25zIHNldCB0byBOb25lLCB3aGljaCBpcyB0aGUgY29udmVudGlvbgorICAgICAgICB1c2VkIHRvIGluZGljYXRlIHRoYXQgYW4gb3B0aW9uIGhhcyBub3QgYmVlbiBjaGFuZ2VkIGJldHdlZW4KKyAgICAgICAgJ2luaXRpYWxpemVfb3B0aW9ucygpJyBhbmQgJ2ZpbmFsaXplX29wdGlvbnMoKScuICBUaGlzIG1ldGhvZCBpcworICAgICAgICB1c3VhbGx5IGNhbGxlZCBmcm9tICdmaW5hbGl6ZV9vcHRpb25zKCknIGZvciBvcHRpb25zIHRoYXQgZGVwZW5kIG9uCisgICAgICAgIHNvbWUgb3RoZXIgY29tbWFuZCByYXRoZXIgdGhhbiBhbm90aGVyIG9wdGlvbiBvZiB0aGUgc2FtZSBjb21tYW5kLAorICAgICAgICB0eXBpY2FsbHkgc3ViY29tbWFuZHMuCisKKyAgICAgICAgVGhlICdzcmNfY21kJyBhcmd1bWVudCBpcyB0aGUgb3RoZXIgY29tbWFuZCBmcm9tIHdoaWNoIG9wdGlvbiB2YWx1ZXMKKyAgICAgICAgd2lsbCBiZSB0YWtlbiAoYSBjb21tYW5kIG9iamVjdCB3aWxsIGJlIGNyZWF0ZWQgZm9yIGl0IGlmIG5lY2Vzc2FyeSk7CisgICAgICAgIHRoZSByZW1haW5pbmcgcG9zaXRpb25hbCBhcmd1bWVudHMgYXJlIHN0cmluZ3MgdGhhdCBnaXZlIHRoZSBuYW1lIG9mCisgICAgICAgIHRoZSBvcHRpb24gdG8gc2V0LiBJZiB0aGUgbmFtZSBpcyBkaWZmZXJlbnQgb24gdGhlIHNvdXJjZSBhbmQgdGFyZ2V0CisgICAgICAgIGNvbW1hbmQsIHlvdSBjYW4gcGFzcyBhIHR1cGxlIHdpdGggJyhuYW1lX29uX3NvdXJjZSwgbmFtZV9vbl9kZXN0KScgc28KKyAgICAgICAgdGhhdCAnc2VsZi5uYW1lX29uX2Rlc3QnIHdpbGwgYmUgc2V0IGZyb20gJ3NyY19jbWQubmFtZV9vbl9zb3VyY2UnLgorICAgICAgICAiIiIKKyAgICAgICAgc3JjX2NtZF9vYmogPSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfY29tbWFuZF9vYmooc3JjX2NtZCkKKyAgICAgICAgc3JjX2NtZF9vYmouZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGZvciBvYmogaW4gb3B0aW9uczoKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2Uob2JqLCB0dXBsZSk6CisgICAgICAgICAgICAgICAgc3JjX29wdGlvbiwgZHN0X29wdGlvbiA9IG9iagorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzcmNfb3B0aW9uLCBkc3Rfb3B0aW9uID0gb2JqLCBvYmoKKyAgICAgICAgICAgIGlmIGdldGF0dHIoc2VsZiwgZHN0X29wdGlvbikgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBzZXRhdHRyKHNlbGYsIGRzdF9vcHRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICBnZXRhdHRyKHNyY19jbWRfb2JqLCBzcmNfb3B0aW9uKSkKKworICAgIGRlZiBnZXRfZmluYWxpemVkX2NvbW1hbmQoc2VsZiwgY29tbWFuZCwgY3JlYXRlPVRydWUpOgorICAgICAgICAiIiJXcmFwcGVyIGFyb3VuZCBEaXN0cmlidXRpb24ncyAnZ2V0X2NvbW1hbmRfb2JqKCknIG1ldGhvZDogZmluZAorICAgICAgICAoY3JlYXRlIGlmIG5lY2Vzc2FyeSBhbmQgJ2NyZWF0ZScgaXMgdHJ1ZSkgdGhlIGNvbW1hbmQgb2JqZWN0IGZvcgorICAgICAgICAnY29tbWFuZCcsIGNhbGwgaXRzICdlbnN1cmVfZmluYWxpemVkKCknIG1ldGhvZCwgYW5kIHJldHVybiB0aGUKKyAgICAgICAgZmluYWxpemVkIGNvbW1hbmQgb2JqZWN0LgorICAgICAgICAiIiIKKyAgICAgICAgY21kX29iaiA9IHNlbGYuZGlzdHJpYnV0aW9uLmdldF9jb21tYW5kX29iaihjb21tYW5kLCBjcmVhdGUpCisgICAgICAgIGNtZF9vYmouZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIHJldHVybiBjbWRfb2JqCisKKyAgICBkZWYgcmVpbml0aWFsaXplX2NvbW1hbmQoc2VsZiwgY29tbWFuZCwgcmVpbml0X3N1YmNvbW1hbmRzPUZhbHNlKToKKyAgICAgICAgcmV0dXJuIHNlbGYuZGlzdHJpYnV0aW9uLnJlaW5pdGlhbGl6ZV9jb21tYW5kKAorICAgICAgICAgICAgY29tbWFuZCwgcmVpbml0X3N1YmNvbW1hbmRzKQorCisgICAgZGVmIHJ1bl9jb21tYW5kKHNlbGYsIGNvbW1hbmQpOgorICAgICAgICAiIiJSdW4gc29tZSBvdGhlciBjb21tYW5kOiB1c2VzIHRoZSAncnVuX2NvbW1hbmQoKScgbWV0aG9kIG9mCisgICAgICAgIERpc3RyaWJ1dGlvbiwgd2hpY2ggY3JlYXRlcyBhbmQgZmluYWxpemVzIHRoZSBjb21tYW5kIG9iamVjdCBpZgorICAgICAgICBuZWNlc3NhcnkgYW5kIHRoZW4gaW52b2tlcyBpdHMgJ3J1bigpJyBtZXRob2QuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbi5ydW5fY29tbWFuZChjb21tYW5kKQorCisgICAgZGVmIGdldF9zdWJfY29tbWFuZHMoc2VsZik6CisgICAgICAgICIiIkRldGVybWluZSB0aGUgc3ViLWNvbW1hbmRzIHRoYXQgYXJlIHJlbGV2YW50IGluIHRoZSBjdXJyZW50CisgICAgICAgIGRpc3RyaWJ1dGlvbiAoaWUuLCB0aGF0IG5lZWQgdG8gYmUgcnVuKS4gIFRoaXMgaXMgYmFzZWQgb24gdGhlCisgICAgICAgICdzdWJfY29tbWFuZHMnIGNsYXNzIGF0dHJpYnV0ZTogZWFjaCB0dXBsZSBpbiB0aGF0IGxpc3QgbWF5IGluY2x1ZGUKKyAgICAgICAgYSBtZXRob2QgdGhhdCB3ZSBjYWxsIHRvIGRldGVybWluZSBpZiB0aGUgc3ViY29tbWFuZCBuZWVkcyB0byBiZQorICAgICAgICBydW4gZm9yIHRoZSBjdXJyZW50IGRpc3RyaWJ1dGlvbi4gIFJldHVybiBhIGxpc3Qgb2YgY29tbWFuZCBuYW1lcy4KKyAgICAgICAgIiIiCisgICAgICAgIGNvbW1hbmRzID0gW10KKyAgICAgICAgZm9yIHN1Yl9jb21tYW5kIGluIHNlbGYuc3ViX2NvbW1hbmRzOgorICAgICAgICAgICAgaWYgbGVuKHN1Yl9jb21tYW5kKSA9PSAyOgorICAgICAgICAgICAgICAgIGNtZF9uYW1lLCBtZXRob2QgPSBzdWJfY29tbWFuZAorICAgICAgICAgICAgICAgIGlmIG1ldGhvZCBpcyBOb25lIG9yIG1ldGhvZChzZWxmKToKKyAgICAgICAgICAgICAgICAgICAgY29tbWFuZHMuYXBwZW5kKGNtZF9uYW1lKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBjb21tYW5kcy5hcHBlbmQoc3ViX2NvbW1hbmQpCisgICAgICAgIHJldHVybiBjb21tYW5kcworCisgICAgIyAtLSBFeHRlcm5hbCB3b3JsZCBtYW5pcHVsYXRpb24gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBleGVjdXRlKHNlbGYsIGZ1bmMsIGFyZ3MsIG1zZz1Ob25lLCBsZXZlbD0xKToKKyAgICAgICAgdXRpbC5leGVjdXRlKGZ1bmMsIGFyZ3MsIG1zZywgZHJ5X3J1bj1zZWxmLmRyeV9ydW4pCisKKyAgICBkZWYgbWtwYXRoKHNlbGYsIG5hbWUsIG1vZGU9MG83NzcsIGRyeV9ydW49Tm9uZSk6CisgICAgICAgIGlmIGRyeV9ydW4gaXMgTm9uZToKKyAgICAgICAgICAgIGRyeV9ydW4gPSBzZWxmLmRyeV9ydW4KKyAgICAgICAgbmFtZSA9IG9zLnBhdGgubm9ybXBhdGgobmFtZSkKKyAgICAgICAgaWYgb3MucGF0aC5pc2RpcihuYW1lKSBvciBuYW1lID09ICcnOgorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGlmIGRyeV9ydW46CisgICAgICAgICAgICBoZWFkID0gJycKKyAgICAgICAgICAgIGZvciBwYXJ0IGluIG5hbWUuc3BsaXQob3Muc2VwKToKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygiY3JlYXRlZCBkaXJlY3RvcnkgJXMlcyIsIGhlYWQsIHBhcnQpCisgICAgICAgICAgICAgICAgaGVhZCArPSBwYXJ0ICsgb3Muc2VwCisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgb3MubWFrZWRpcnMobmFtZSwgbW9kZSkKKworICAgIGRlZiBjb3B5X2ZpbGUoc2VsZiwgaW5maWxlLCBvdXRmaWxlLAorICAgICAgICAgICAgICAgICAgcHJlc2VydmVfbW9kZT1UcnVlLCBwcmVzZXJ2ZV90aW1lcz1UcnVlLCBsaW5rPU5vbmUsIGxldmVsPTEpOgorICAgICAgICAiIiJDb3B5IGEgZmlsZSByZXNwZWN0aW5nIGRyeS1ydW4gYW5kIGZvcmNlIGZsYWdzLgorCisgICAgICAgIChkcnktcnVuIGRlZmF1bHRzIHRvIHdoYXRldmVyIGlzIGluIHRoZSBEaXN0cmlidXRpb24gb2JqZWN0LCBhbmQKKyAgICAgICAgZm9yY2UgdG8gZmFsc2UgZm9yIGNvbW1hbmRzIHRoYXQgZG9uJ3QgZGVmaW5lIGl0LikKKyAgICAgICAgIiIiCisgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICMgWFhYIGFkZCBhIGNvbW1lbnQKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKG91dGZpbGUpOgorICAgICAgICAgICAgb3V0ZmlsZSA9IG9zLnBhdGguam9pbihvdXRmaWxlLCBvcy5wYXRoLnNwbGl0KGluZmlsZSlbLTFdKQorICAgICAgICBjb3B5ZmlsZShpbmZpbGUsIG91dGZpbGUpCisgICAgICAgIHJldHVybiBvdXRmaWxlLCBOb25lICAjIFhYWAorCisgICAgZGVmIGNvcHlfdHJlZShzZWxmLCBpbmZpbGUsIG91dGZpbGUsIHByZXNlcnZlX21vZGU9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgIHByZXNlcnZlX3RpbWVzPVRydWUsIHByZXNlcnZlX3N5bWxpbmtzPUZhbHNlLCBsZXZlbD0xKToKKyAgICAgICAgIiIiQ29weSBhbiBlbnRpcmUgZGlyZWN0b3J5IHRyZWUgcmVzcGVjdGluZyBkcnktcnVuCisgICAgICAgIGFuZCBmb3JjZSBmbGFncy4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICMgWFhYIHNob3VsZCBub3QgcmV0dXJuIGJ1dCBsZXQgY29weV90cmVlIGxvZyBhbmQgZGVjaWRlIHRvIGV4ZWN1dGUKKyAgICAgICAgICAgICMgb3Igbm90IGJhc2VkIG9uIGl0cyBkcnlfcnVuIGFyZ3VtZW50CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICByZXR1cm4gdXRpbC5jb3B5X3RyZWUoaW5maWxlLCBvdXRmaWxlLCBwcmVzZXJ2ZV9tb2RlLCBwcmVzZXJ2ZV90aW1lcywKKyAgICAgICAgICAgIHByZXNlcnZlX3N5bWxpbmtzLCBub3Qgc2VsZi5mb3JjZSwgZHJ5X3J1bj1zZWxmLmRyeV9ydW4pCisKKyAgICBkZWYgbW92ZV9maWxlKHNlbGYsIHNyYywgZHN0LCBsZXZlbD0xKToKKyAgICAgICAgIiIiTW92ZSBhIGZpbGUgcmVzcGVjdGluZyB0aGUgZHJ5LXJ1biBmbGFnLiIiIgorICAgICAgICBpZiBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICByZXR1cm4gICMgWFhYIHNhbWUgdGhpbmcKKyAgICAgICAgcmV0dXJuIG1vdmUoc3JjLCBkc3QpCisKKyAgICBkZWYgc3Bhd24oc2VsZiwgY21kLCBzZWFyY2hfcGF0aD1UcnVlLCBsZXZlbD0xKToKKyAgICAgICAgIiIiU3Bhd24gYW4gZXh0ZXJuYWwgY29tbWFuZCByZXNwZWN0aW5nIGRyeS1ydW4gZmxhZy4iIiIKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgc3Bhd24KKyAgICAgICAgc3Bhd24oY21kLCBzZWFyY2hfcGF0aCwgZHJ5X3J1bj1zZWxmLmRyeV9ydW4pCisKKyAgICBkZWYgbWFrZV9hcmNoaXZlKHNlbGYsIGJhc2VfbmFtZSwgZm9ybWF0LCByb290X2Rpcj1Ob25lLCBiYXNlX2Rpcj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgb3duZXI9Tm9uZSwgZ3JvdXA9Tm9uZSk6CisgICAgICAgIHJldHVybiBtYWtlX2FyY2hpdmUoYmFzZV9uYW1lLCBmb3JtYXQsIHJvb3RfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2VfZGlyLCBkcnlfcnVuPXNlbGYuZHJ5X3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBvd25lcj1vd25lciwgZ3JvdXA9Z3JvdXApCisKKyAgICBkZWYgbWFrZV9maWxlKHNlbGYsIGluZmlsZXMsIG91dGZpbGUsIGZ1bmMsIGFyZ3MsCisgICAgICAgICAgICAgICAgICBleGVjX21zZz1Ob25lLCBza2lwX21zZz1Ob25lLCBsZXZlbD0xKToKKyAgICAgICAgIiIiU3BlY2lhbCBjYXNlIG9mICdleGVjdXRlKCknIGZvciBvcGVyYXRpb25zIHRoYXQgcHJvY2VzcyBvbmUgb3IKKyAgICAgICAgbW9yZSBpbnB1dCBmaWxlcyBhbmQgZ2VuZXJhdGUgb25lIG91dHB1dCBmaWxlLiAgV29ya3MganVzdCBsaWtlCisgICAgICAgICdleGVjdXRlKCknLCBleGNlcHQgdGhlIG9wZXJhdGlvbiBpcyBza2lwcGVkIGFuZCBhIGRpZmZlcmVudAorICAgICAgICBtZXNzYWdlIHByaW50ZWQgaWYgJ291dGZpbGUnIGFscmVhZHkgZXhpc3RzIGFuZCBpcyBuZXdlciB0aGFuIGFsbAorICAgICAgICBmaWxlcyBsaXN0ZWQgaW4gJ2luZmlsZXMnLiAgSWYgdGhlIGNvbW1hbmQgZGVmaW5lZCAnc2VsZi5mb3JjZScsCisgICAgICAgIGFuZCBpdCBpcyB0cnVlLCB0aGVuIHRoZSBjb21tYW5kIGlzIHVuY29uZGl0aW9uYWxseSBydW4gLS0gZG9lcyBubworICAgICAgICB0aW1lc3RhbXAgY2hlY2tzLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgc2tpcF9tc2cgaXMgTm9uZToKKyAgICAgICAgICAgIHNraXBfbXNnID0gInNraXBwaW5nICVzIChpbnB1dHMgdW5jaGFuZ2VkKSIgJSBvdXRmaWxlCisKKyAgICAgICAgIyBBbGxvdyAnaW5maWxlcycgdG8gYmUgYSBzaW5nbGUgc3RyaW5nCisgICAgICAgIGlmIGlzaW5zdGFuY2UoaW5maWxlcywgc3RyKToKKyAgICAgICAgICAgIGluZmlsZXMgPSAoaW5maWxlcywpCisgICAgICAgIGVsaWYgbm90IGlzaW5zdGFuY2UoaW5maWxlcywgKGxpc3QsIHR1cGxlKSk6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoCisgICAgICAgICAgICAgICAgIidpbmZpbGVzJyBtdXN0IGJlIGEgc3RyaW5nLCBvciBhIGxpc3Qgb3IgdHVwbGUgb2Ygc3RyaW5ncyIpCisKKyAgICAgICAgaWYgZXhlY19tc2cgaXMgTm9uZToKKyAgICAgICAgICAgIGV4ZWNfbXNnID0gImdlbmVyYXRpbmcgJXMgZnJvbSAlcyIgJSAob3V0ZmlsZSwgJywgJy5qb2luKGluZmlsZXMpKQorCisgICAgICAgICMgSWYgJ291dGZpbGUnIG11c3QgYmUgcmVnZW5lcmF0ZWQgKGVpdGhlciBiZWNhdXNlIGl0IGRvZXNuJ3QKKyAgICAgICAgIyBleGlzdCwgaXMgb3V0LW9mLWRhdGUsIG9yIHRoZSAnZm9yY2UnIGZsYWcgaXMgdHJ1ZSkgdGhlbgorICAgICAgICAjIHBlcmZvcm0gdGhlIGFjdGlvbiB0aGF0IHByZXN1bWFibHkgcmVnZW5lcmF0ZXMgaXQKKyAgICAgICAgaWYgc2VsZi5mb3JjZSBvciB1dGlsLm5ld2VyX2dyb3VwKGluZmlsZXMsIG91dGZpbGUpOgorICAgICAgICAgICAgc2VsZi5leGVjdXRlKGZ1bmMsIGFyZ3MsIGV4ZWNfbXNnLCBsZXZlbCkKKworICAgICAgICAjIE90aGVyd2lzZSwgcHJpbnQgdGhlICJza2lwIiBtZXNzYWdlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoc2tpcF9tc2cpCisKKyAgICBkZWYgYnl0ZV9jb21waWxlKHNlbGYsIGZpbGVzLCBwcmVmaXg9Tm9uZSk6CisgICAgICAgICIiIkJ5dGUtY29tcGlsZSBmaWxlcyB0byBweWMgYW5kL29yIHB5byBmaWxlcy4KKworICAgICAgICBUaGlzIG1ldGhvZCByZXF1aXJlcyB0aGF0IHRoZSBjYWxsaW5nIGNsYXNzIGRlZmluZSBjb21waWxlIGFuZAorICAgICAgICBvcHRpbWl6ZSBvcHRpb25zLCBsaWtlIGJ1aWxkX3B5IGFuZCBpbnN0YWxsX2xpYi4gIEl0IGFsc28KKyAgICAgICAgYXV0b21hdGljYWxseSByZXNwZWN0cyB0aGUgZm9yY2UgYW5kIGRyeS1ydW4gb3B0aW9ucy4KKworICAgICAgICBwcmVmaXgsIGlmIGdpdmVuLCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgc3RyaXBwZWQgb2ZmIHRoZQorICAgICAgICBmaWxlbmFtZXMgZW5jb2RlZCBpbiBieXRlY29kZSBmaWxlcy4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIHNlbGYuY29tcGlsZToKKyAgICAgICAgICAgIHV0aWwuYnl0ZV9jb21waWxlKGZpbGVzLCBvcHRpbWl6ZT1GYWxzZSwgcHJlZml4PXByZWZpeCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlPXNlbGYuZm9yY2UsIGRyeV9ydW49c2VsZi5kcnlfcnVuKQorICAgICAgICBpZiBzZWxmLm9wdGltaXplOgorICAgICAgICAgICAgdXRpbC5ieXRlX2NvbXBpbGUoZmlsZXMsIG9wdGltaXplPXNlbGYub3B0aW1pemUsIHByZWZpeD1wcmVmaXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JjZT1zZWxmLmZvcmNlLCBkcnlfcnVuPXNlbGYuZHJ5X3J1bikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jb21tYW5kX3RlbXBsYXRlIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2NvbW1hbmRfdGVtcGxhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTEyZDMyYgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jb21tYW5kX3RlbXBsYXRlCkBAIC0wLDAgKzEsMzUgQEAKKyIiIkRvIFggYW5kIFkuIiIiCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCisKKworY2xhc3MgeChDb21tYW5kKToKKworICAgICMgQnJpZWYgKDQwLTUwIGNoYXJhY3RlcnMpIGRlc2NyaXB0aW9uIG9mIHRoZSBjb21tYW5kCisgICAgZGVzY3JpcHRpb24gPSAiIgorCisgICAgIyBMaXN0IG9mIG9wdGlvbiB0dXBsZXM6IGxvbmcgbmFtZSwgc2hvcnQgbmFtZSAoTm9uZSBpZiBubyBzaG9ydAorICAgICMgbmFtZSksIGFuZCBoZWxwIHN0cmluZy4KKyAgICB1c2VyX29wdGlvbnMgPSBbCisgICAgICAgICgnJywgJycsICAjIGxvbmcgb3B0aW9uLCBzaG9ydCBvcHRpb24gKG9uZSBsZXR0ZXIpIG9yIE5vbmUKKyAgICAgICAgICIiKSwgICMgaGVscCB0ZXh0CisgICAgICAgIF0KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuID0gTm9uZQorICAgICAgICBzZWxmLiA9IE5vbmUKKyAgICAgICAgc2VsZi4gPSBOb25lCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgaWYgc2VsZi54IGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLnggPSAuLi4KKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIC4uLgorICAgICAgICBsb2dnZXIuaW5mbyguLi4pCisKKyAgICAgICAgaWYgbm90IHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgIC4uLgorCisgICAgICAgIHNlbGYuZXhlY3V0ZSguLi4sIGRyeV9ydW49c2VsZi5kcnlfcnVuKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2NvbmZpZy5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jb25maWcucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjY0YzEzOQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jb25maWcucHkKQEAgLTAsMCArMSwzNDkgQEAKKyIiIlByZXBhcmUgdGhlIGJ1aWxkLgorCitUaGlzIG1vZHVsZSBwcm92aWRlcyBjb25maWcsIGEgKG1vc3RseSkgZW1wdHkgY29tbWFuZCBjbGFzcwordGhhdCBleGlzdHMgbWFpbmx5IHRvIGJlIHN1Yi1jbGFzc2VkIGJ5IHNwZWNpZmljIG1vZHVsZSBkaXN0cmlidXRpb25zIGFuZAorYXBwbGljYXRpb25zLiAgVGhlIGlkZWEgaXMgdGhhdCB3aGlsZSBldmVyeSAiY29uZmlnIiBjb21tYW5kIGlzIGRpZmZlcmVudCwKK2F0IGxlYXN0IHRoZXkncmUgYWxsIG5hbWVkIHRoZSBzYW1lLCBhbmQgdXNlcnMgYWx3YXlzIHNlZSAiY29uZmlnIiBpbiB0aGUKK2xpc3Qgb2Ygc3RhbmRhcmQgY29tbWFuZHMuICBBbHNvLCB0aGlzIGlzIGEgZ29vZCBwbGFjZSB0byBwdXQgY29tbW9uCitjb25maWd1cmUtbGlrZSB0YXNrczogInRyeSB0byBjb21waWxlIHRoaXMgQyBjb2RlIiwgb3IgImZpZ3VyZSBvdXQgd2hlcmUKK3RoaXMgaGVhZGVyIGZpbGUgbGl2ZXMiLgorIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHJlCisKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0V4ZWNFcnJvcgorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IGN1c3RvbWl6ZV9jb21waWxlcgorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorCitMQU5HX0VYVCA9IHsnYyc6ICcuYycsICdjKysnOiAnLmN4eCd9CisKK2NsYXNzIGNvbmZpZyhDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gInByZXBhcmUgdGhlIGJ1aWxkIgorCisgICAgdXNlcl9vcHRpb25zID0gWworICAgICAgICAoJ2NvbXBpbGVyPScsIE5vbmUsCisgICAgICAgICAic3BlY2lmeSB0aGUgY29tcGlsZXIgdHlwZSIpLAorICAgICAgICAoJ2NjPScsIE5vbmUsCisgICAgICAgICAic3BlY2lmeSB0aGUgY29tcGlsZXIgZXhlY3V0YWJsZSIpLAorICAgICAgICAoJ2luY2x1ZGUtZGlycz0nLCAnSScsCisgICAgICAgICAibGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIGhlYWRlciBmaWxlcyIpLAorICAgICAgICAoJ2RlZmluZT0nLCAnRCcsCisgICAgICAgICAiQyBwcmVwcm9jZXNzb3IgbWFjcm9zIHRvIGRlZmluZSIpLAorICAgICAgICAoJ3VuZGVmPScsICdVJywKKyAgICAgICAgICJDIHByZXByb2Nlc3NvciBtYWNyb3MgdG8gdW5kZWZpbmUiKSwKKyAgICAgICAgKCdsaWJyYXJpZXM9JywgJ2wnLAorICAgICAgICAgImV4dGVybmFsIEMgbGlicmFyaWVzIHRvIGxpbmsgd2l0aCIpLAorICAgICAgICAoJ2xpYnJhcnktZGlycz0nLCAnTCcsCisgICAgICAgICAiZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBleHRlcm5hbCBDIGxpYnJhcmllcyIpLAorCisgICAgICAgICgnbm9pc3knLCBOb25lLAorICAgICAgICAgInNob3cgZXZlcnkgYWN0aW9uIChjb21waWxlLCBsaW5rLCBydW4sIC4uLikgdGFrZW4iKSwKKyAgICAgICAgKCdkdW1wLXNvdXJjZScsIE5vbmUsCisgICAgICAgICAiZHVtcCBnZW5lcmF0ZWQgc291cmNlIGZpbGVzIGJlZm9yZSBhdHRlbXB0aW5nIHRvIGNvbXBpbGUgdGhlbSIpLAorICAgICAgICBdCisKKworICAgICMgVGhlIHRocmVlIHN0YW5kYXJkIGNvbW1hbmQgbWV0aG9kczogc2luY2UgdGhlICJjb25maWciIGNvbW1hbmQKKyAgICAjIGRvZXMgbm90aGluZyBieSBkZWZhdWx0LCB0aGVzZSBhcmUgZW1wdHkuCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmNvbXBpbGVyID0gTm9uZQorICAgICAgICBzZWxmLmNjID0gTm9uZQorICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IE5vbmUKKyAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBOb25lCisgICAgICAgIHNlbGYubGlicmFyeV9kaXJzID0gTm9uZQorCisgICAgICAgICMgbWF4aW1hbCBvdXRwdXQgZm9yIG5vdworICAgICAgICBzZWxmLm5vaXN5ID0gVHJ1ZQorICAgICAgICBzZWxmLmR1bXBfc291cmNlID0gVHJ1ZQorCisgICAgICAgICMgbGlzdCBvZiB0ZW1wb3JhcnkgZmlsZXMgZ2VuZXJhdGVkIGFsb25nLXRoZS13YXkgdGhhdCB3ZSBoYXZlCisgICAgICAgICMgdG8gY2xlYW4gYXQgc29tZSBwb2ludAorICAgICAgICBzZWxmLnRlbXBfZmlsZXMgPSBbXQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGlmIHNlbGYuaW5jbHVkZV9kaXJzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IHNlbGYuZGlzdHJpYnV0aW9uLmluY2x1ZGVfZGlycyBvciBbXQorICAgICAgICBlbGlmIGlzaW5zdGFuY2Uoc2VsZi5pbmNsdWRlX2RpcnMsIHN0cik6CisgICAgICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IHNlbGYuaW5jbHVkZV9kaXJzLnNwbGl0KG9zLnBhdGhzZXApCisKKyAgICAgICAgaWYgc2VsZi5saWJyYXJpZXMgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYubGlicmFyaWVzID0gW10KKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKHNlbGYubGlicmFyaWVzLCBzdHIpOgorICAgICAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBbc2VsZi5saWJyYXJpZXNdCisKKyAgICAgICAgaWYgc2VsZi5saWJyYXJ5X2RpcnMgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzID0gW10KKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKHNlbGYubGlicmFyeV9kaXJzLCBzdHIpOgorICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMgPSBzZWxmLmxpYnJhcnlfZGlycy5zcGxpdChvcy5wYXRoc2VwKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgcGFzcworCisKKyAgICAjIFV0aWxpdHkgbWV0aG9kcyBmb3IgYWN0dWFsICJjb25maWciIGNvbW1hbmRzLiAgVGhlIGludGVyZmFjZXMgYXJlCisgICAgIyBsb29zZWx5IGJhc2VkIG9uIEF1dG9jb25mIG1hY3JvcyBvZiBzaW1pbGFyIG5hbWVzLiAgU3ViLWNsYXNzZXMKKyAgICAjIG1heSB1c2UgdGhlc2UgZnJlZWx5LgorCisgICAgZGVmIF9jaGVja19jb21waWxlcihzZWxmKToKKyAgICAgICAgIiIiQ2hlY2sgdGhhdCAnc2VsZi5jb21waWxlcicgcmVhbGx5IGlzIGEgQ0NvbXBpbGVyIG9iamVjdDsKKyAgICAgICAgaWYgbm90LCBtYWtlIGl0IG9uZS4KKyAgICAgICAgIiIiCisgICAgICAgICMgV2UgZG8gdGhpcyBsYXRlLCBhbmQgb25seSBvbi1kZW1hbmQsIGJlY2F1c2UgdGhpcyBpcyBhbiBleHBlbnNpdmUKKyAgICAgICAgIyBpbXBvcnQuCisgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlciBpbXBvcnQgQ0NvbXBpbGVyCisgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBuZXdfY29tcGlsZXIKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc2VsZi5jb21waWxlciwgQ0NvbXBpbGVyKToKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZXIgPSBuZXdfY29tcGlsZXIoY29tcGlsZXI9c2VsZi5jb21waWxlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJ5X3J1bj1zZWxmLmRyeV9ydW4sIGZvcmNlPVRydWUpCisgICAgICAgICAgICBjdXN0b21pemVfY29tcGlsZXIoc2VsZi5jb21waWxlcikKKyAgICAgICAgICAgIGlmIHNlbGYuaW5jbHVkZV9kaXJzOgorICAgICAgICAgICAgICAgIHNlbGYuY29tcGlsZXIuc2V0X2luY2x1ZGVfZGlycyhzZWxmLmluY2x1ZGVfZGlycykKKyAgICAgICAgICAgIGlmIHNlbGYubGlicmFyaWVzOgorICAgICAgICAgICAgICAgIHNlbGYuY29tcGlsZXIuc2V0X2xpYnJhcmllcyhzZWxmLmxpYnJhcmllcykKKyAgICAgICAgICAgIGlmIHNlbGYubGlicmFyeV9kaXJzOgorICAgICAgICAgICAgICAgIHNlbGYuY29tcGlsZXIuc2V0X2xpYnJhcnlfZGlycyhzZWxmLmxpYnJhcnlfZGlycykKKworCisgICAgZGVmIF9nZW5fdGVtcF9zb3VyY2VmaWxlKHNlbGYsIGJvZHksIGhlYWRlcnMsIGxhbmcpOgorICAgICAgICBmaWxlbmFtZSA9ICJfY29uZmlndGVzdCIgKyBMQU5HX0VYVFtsYW5nXQorICAgICAgICB3aXRoIG9wZW4oZmlsZW5hbWUsICJ3IikgYXMgZmlsZToKKyAgICAgICAgICAgIGlmIGhlYWRlcnM6CisgICAgICAgICAgICAgICAgZm9yIGhlYWRlciBpbiBoZWFkZXJzOgorICAgICAgICAgICAgICAgICAgICBmaWxlLndyaXRlKCIjaW5jbHVkZSA8JXM+XG4iICUgaGVhZGVyKQorICAgICAgICAgICAgICAgIGZpbGUud3JpdGUoIlxuIikKKyAgICAgICAgICAgIGZpbGUud3JpdGUoYm9keSkKKyAgICAgICAgICAgIGlmIGJvZHlbLTFdICE9ICJcbiI6CisgICAgICAgICAgICAgICAgZmlsZS53cml0ZSgiXG4iKQorICAgICAgICByZXR1cm4gZmlsZW5hbWUKKworICAgIGRlZiBfcHJlcHJvY2VzcyhzZWxmLCBib2R5LCBoZWFkZXJzLCBpbmNsdWRlX2RpcnMsIGxhbmcpOgorICAgICAgICBzcmMgPSBzZWxmLl9nZW5fdGVtcF9zb3VyY2VmaWxlKGJvZHksIGhlYWRlcnMsIGxhbmcpCisgICAgICAgIG91dCA9ICJfY29uZmlndGVzdC5pIgorICAgICAgICBzZWxmLnRlbXBfZmlsZXMuZXh0ZW5kKChzcmMsIG91dCkpCisgICAgICAgIHNlbGYuY29tcGlsZXIucHJlcHJvY2VzcyhzcmMsIG91dCwgaW5jbHVkZV9kaXJzPWluY2x1ZGVfZGlycykKKyAgICAgICAgcmV0dXJuIHNyYywgb3V0CisKKyAgICBkZWYgX2NvbXBpbGUoc2VsZiwgYm9keSwgaGVhZGVycywgaW5jbHVkZV9kaXJzLCBsYW5nKToKKyAgICAgICAgc3JjID0gc2VsZi5fZ2VuX3RlbXBfc291cmNlZmlsZShib2R5LCBoZWFkZXJzLCBsYW5nKQorICAgICAgICBpZiBzZWxmLmR1bXBfc291cmNlOgorICAgICAgICAgICAgZHVtcF9maWxlKHNyYywgImNvbXBpbGluZyAnJXMnOiIgJSBzcmMpCisgICAgICAgIG9iaiA9IHNlbGYuY29tcGlsZXIub2JqZWN0X2ZpbGVuYW1lcyhbc3JjXSlbMF0KKyAgICAgICAgc2VsZi50ZW1wX2ZpbGVzLmV4dGVuZCgoc3JjLCBvYmopKQorICAgICAgICBzZWxmLmNvbXBpbGVyLmNvbXBpbGUoW3NyY10sIGluY2x1ZGVfZGlycz1pbmNsdWRlX2RpcnMpCisgICAgICAgIHJldHVybiBzcmMsIG9iagorCisgICAgZGVmIF9saW5rKHNlbGYsIGJvZHksIGhlYWRlcnMsIGluY2x1ZGVfZGlycywgbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsCisgICAgICAgICAgICAgIGxhbmcpOgorICAgICAgICBzcmMsIG9iaiA9IHNlbGYuX2NvbXBpbGUoYm9keSwgaGVhZGVycywgaW5jbHVkZV9kaXJzLCBsYW5nKQorICAgICAgICBwcm9nID0gb3MucGF0aC5zcGxpdGV4dChvcy5wYXRoLmJhc2VuYW1lKHNyYykpWzBdCisgICAgICAgIHNlbGYuY29tcGlsZXIubGlua19leGVjdXRhYmxlKFtvYmpdLCBwcm9nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXM9bGlicmFyaWVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJ5X2RpcnM9bGlicmFyeV9kaXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfbGFuZz1sYW5nKQorCisgICAgICAgIGlmIHNlbGYuY29tcGlsZXIuZXhlX2V4dGVuc2lvbiBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHByb2cgPSBwcm9nICsgc2VsZi5jb21waWxlci5leGVfZXh0ZW5zaW9uCisgICAgICAgIHNlbGYudGVtcF9maWxlcy5hcHBlbmQocHJvZykKKworICAgICAgICByZXR1cm4gc3JjLCBvYmosIHByb2cKKworICAgIGRlZiBfY2xlYW4oc2VsZiwgKmZpbGVuYW1lcyk6CisgICAgICAgIGlmIG5vdCBmaWxlbmFtZXM6CisgICAgICAgICAgICBmaWxlbmFtZXMgPSBzZWxmLnRlbXBfZmlsZXMKKyAgICAgICAgICAgIHNlbGYudGVtcF9maWxlcyA9IFtdCisgICAgICAgIGxvZ2dlci5pbmZvKCJyZW1vdmluZzogJXMiLCAnICcuam9pbihmaWxlbmFtZXMpKQorICAgICAgICBmb3IgZmlsZW5hbWUgaW4gZmlsZW5hbWVzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIG9zLnJlbW92ZShmaWxlbmFtZSkKKyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAgICAgICAgIHBhc3MKKworCisgICAgIyBYWFggdGhlc2UgaWdub3JlIHRoZSBkcnktcnVuIGZsYWc6IHdoYXQgdG8gZG8sIHdoYXQgdG8gZG8/IGV2ZW4gaWYKKyAgICAjIHlvdSB3YW50IGEgZHJ5LXJ1biBidWlsZCwgeW91IHN0aWxsIG5lZWQgc29tZSBzb3J0IG9mIGNvbmZpZ3VyYXRpb24KKyAgICAjIGluZm8uICBNeSBpbmNsaW5hdGlvbiBpcyB0byBtYWtlIGl0IHVwIHRvIHRoZSByZWFsIGNvbmZpZyBjb21tYW5kIHRvCisgICAgIyBjb25zdWx0ICdkcnlfcnVuJywgYW5kIGFzc3VtZSBhIGRlZmF1bHQgKG1pbmltYWwpIGNvbmZpZ3VyYXRpb24gaWYKKyAgICAjIHRydWUuICBUaGUgcHJvYmxlbSB3aXRoIHRyeWluZyB0byBkbyBpdCBoZXJlIGlzIHRoYXQgeW91J2QgaGF2ZSB0bworICAgICMgcmV0dXJuIGVpdGhlciB0cnVlIG9yIGZhbHNlIGZyb20gYWxsIHRoZSAndHJ5JyBtZXRob2RzLCBuZWl0aGVyIG9mCisgICAgIyB3aGljaCBpcyBjb3JyZWN0LgorCisgICAgIyBYWFggbmVlZCBhY2Nlc3MgdG8gdGhlIGhlYWRlciBzZWFyY2ggcGF0aCBhbmQgbWF5YmUgZGVmYXVsdCBtYWNyb3MuCisKKyAgICBkZWYgdHJ5X2NwcChzZWxmLCBib2R5PU5vbmUsIGhlYWRlcnM9Tm9uZSwgaW5jbHVkZV9kaXJzPU5vbmUsIGxhbmc9ImMiKToKKyAgICAgICAgIiIiQ29uc3RydWN0IGEgc291cmNlIGZpbGUgZnJvbSAnYm9keScgKGEgc3RyaW5nIGNvbnRhaW5pbmcgbGluZXMKKyAgICAgICAgb2YgQy9DKysgY29kZSkgYW5kICdoZWFkZXJzJyAoYSBsaXN0IG9mIGhlYWRlciBmaWxlcyB0byBpbmNsdWRlKQorICAgICAgICBhbmQgcnVuIGl0IHRocm91Z2ggdGhlIHByZXByb2Nlc3Nvci4gIFJldHVybiB0cnVlIGlmIHRoZQorICAgICAgICBwcmVwcm9jZXNzb3Igc3VjY2VlZGVkLCBmYWxzZSBpZiB0aGVyZSB3ZXJlIGFueSBlcnJvcnMuCisgICAgICAgICgnYm9keScgcHJvYmFibHkgaXNuJ3Qgb2YgbXVjaCB1c2UsIGJ1dCB3aGF0IHRoZSBoZWNrLikKKyAgICAgICAgIiIiCisgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlciBpbXBvcnQgQ29tcGlsZUVycm9yCisgICAgICAgIHNlbGYuX2NoZWNrX2NvbXBpbGVyKCkKKyAgICAgICAgb2sgPSBUcnVlCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuX3ByZXByb2Nlc3MoYm9keSwgaGVhZGVycywgaW5jbHVkZV9kaXJzLCBsYW5nKQorICAgICAgICBleGNlcHQgQ29tcGlsZUVycm9yOgorICAgICAgICAgICAgb2sgPSBGYWxzZQorCisgICAgICAgIHNlbGYuX2NsZWFuKCkKKyAgICAgICAgcmV0dXJuIG9rCisKKyAgICBkZWYgc2VhcmNoX2NwcChzZWxmLCBwYXR0ZXJuLCBib2R5PU5vbmUsIGhlYWRlcnM9Tm9uZSwgaW5jbHVkZV9kaXJzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgbGFuZz0iYyIpOgorICAgICAgICAiIiJDb25zdHJ1Y3QgYSBzb3VyY2UgZmlsZSAoanVzdCBsaWtlICd0cnlfY3BwKCknKSwgcnVuIGl0IHRocm91Z2gKKyAgICAgICAgdGhlIHByZXByb2Nlc3NvciwgYW5kIHJldHVybiB0cnVlIGlmIGFueSBsaW5lIG9mIHRoZSBvdXRwdXQgbWF0Y2hlcworICAgICAgICAncGF0dGVybicuICAncGF0dGVybicgc2hvdWxkIGVpdGhlciBiZSBhIGNvbXBpbGVkIHJlZ2V4IG9iamVjdCBvciBhCisgICAgICAgIHN0cmluZyBjb250YWluaW5nIGEgcmVnZXguICBJZiBib3RoICdib2R5JyBhbmQgJ2hlYWRlcnMnIGFyZSBOb25lLAorICAgICAgICBwcmVwcm9jZXNzZXMgYW4gZW1wdHkgZmlsZSAtLSB3aGljaCBjYW4gYmUgdXNlZnVsIHRvIGRldGVybWluZSB0aGUKKyAgICAgICAgc3ltYm9scyB0aGUgcHJlcHJvY2Vzc29yIGFuZCBjb21waWxlciBzZXQgYnkgZGVmYXVsdC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2NvbXBpbGVyKCkKKyAgICAgICAgc3JjLCBvdXQgPSBzZWxmLl9wcmVwcm9jZXNzKGJvZHksIGhlYWRlcnMsIGluY2x1ZGVfZGlycywgbGFuZykKKworICAgICAgICBpZiBpc2luc3RhbmNlKHBhdHRlcm4sIHN0cik6CisgICAgICAgICAgICBwYXR0ZXJuID0gcmUuY29tcGlsZShwYXR0ZXJuKQorCisgICAgICAgIHdpdGggb3BlbihvdXQpIGFzIGZpbGU6CisgICAgICAgICAgICBtYXRjaCA9IEZhbHNlCisgICAgICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgICAgIGxpbmUgPSBmaWxlLnJlYWRsaW5lKCkKKyAgICAgICAgICAgICAgICBpZiBsaW5lID09ICcnOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGlmIHBhdHRlcm4uc2VhcmNoKGxpbmUpOgorICAgICAgICAgICAgICAgICAgICBtYXRjaCA9IFRydWUKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKworICAgICAgICBzZWxmLl9jbGVhbigpCisgICAgICAgIHJldHVybiBtYXRjaAorCisgICAgZGVmIHRyeV9jb21waWxlKHNlbGYsIGJvZHksIGhlYWRlcnM9Tm9uZSwgaW5jbHVkZV9kaXJzPU5vbmUsIGxhbmc9ImMiKToKKyAgICAgICAgIiIiVHJ5IHRvIGNvbXBpbGUgYSBzb3VyY2UgZmlsZSBidWlsdCBmcm9tICdib2R5JyBhbmQgJ2hlYWRlcnMnLgorICAgICAgICBSZXR1cm4gdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGhlcndpc2UuCisgICAgICAgICIiIgorICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5jY29tcGlsZXIgaW1wb3J0IENvbXBpbGVFcnJvcgorICAgICAgICBzZWxmLl9jaGVja19jb21waWxlcigpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuX2NvbXBpbGUoYm9keSwgaGVhZGVycywgaW5jbHVkZV9kaXJzLCBsYW5nKQorICAgICAgICAgICAgb2sgPSBUcnVlCisgICAgICAgIGV4Y2VwdCBDb21waWxlRXJyb3I6CisgICAgICAgICAgICBvayA9IEZhbHNlCisKKyAgICAgICAgbG9nZ2VyLmluZm8ob2sgYW5kICJzdWNjZXNzISIgb3IgImZhaWx1cmUuIikKKyAgICAgICAgc2VsZi5fY2xlYW4oKQorICAgICAgICByZXR1cm4gb2sKKworICAgIGRlZiB0cnlfbGluayhzZWxmLCBib2R5LCBoZWFkZXJzPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLCBsaWJyYXJpZXM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgbGlicmFyeV9kaXJzPU5vbmUsIGxhbmc9ImMiKToKKyAgICAgICAgIiIiVHJ5IHRvIGNvbXBpbGUgYW5kIGxpbmsgYSBzb3VyY2UgZmlsZSwgYnVpbHQgZnJvbSAnYm9keScgYW5kCisgICAgICAgICdoZWFkZXJzJywgdG8gZXhlY3V0YWJsZSBmb3JtLiAgUmV0dXJuIHRydWUgb24gc3VjY2VzcywgZmFsc2UKKyAgICAgICAgb3RoZXJ3aXNlLgorICAgICAgICAiIiIKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuY2NvbXBpbGVyIGltcG9ydCBDb21waWxlRXJyb3IsIExpbmtFcnJvcgorICAgICAgICBzZWxmLl9jaGVja19jb21waWxlcigpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuX2xpbmsoYm9keSwgaGVhZGVycywgaW5jbHVkZV9kaXJzLAorICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgbGFuZykKKyAgICAgICAgICAgIG9rID0gVHJ1ZQorICAgICAgICBleGNlcHQgKENvbXBpbGVFcnJvciwgTGlua0Vycm9yKToKKyAgICAgICAgICAgIG9rID0gRmFsc2UKKworICAgICAgICBsb2dnZXIuaW5mbyhvayBhbmQgInN1Y2Nlc3MhIiBvciAiZmFpbHVyZS4iKQorICAgICAgICBzZWxmLl9jbGVhbigpCisgICAgICAgIHJldHVybiBvaworCisgICAgZGVmIHRyeV9ydW4oc2VsZiwgYm9keSwgaGVhZGVycz1Ob25lLCBpbmNsdWRlX2RpcnM9Tm9uZSwgbGlicmFyaWVzPU5vbmUsCisgICAgICAgICAgICAgICAgbGlicmFyeV9kaXJzPU5vbmUsIGxhbmc9ImMiKToKKyAgICAgICAgIiIiVHJ5IHRvIGNvbXBpbGUsIGxpbmsgdG8gYW4gZXhlY3V0YWJsZSwgYW5kIHJ1biBhIHByb2dyYW0KKyAgICAgICAgYnVpbHQgZnJvbSAnYm9keScgYW5kICdoZWFkZXJzJy4gIFJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlCisgICAgICAgIG90aGVyd2lzZS4KKyAgICAgICAgIiIiCisgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlciBpbXBvcnQgQ29tcGlsZUVycm9yLCBMaW5rRXJyb3IKKyAgICAgICAgc2VsZi5fY2hlY2tfY29tcGlsZXIoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzcmMsIG9iaiwgZXhlID0gc2VsZi5fbGluayhib2R5LCBoZWFkZXJzLCBpbmNsdWRlX2RpcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgbGFuZykKKyAgICAgICAgICAgIHNlbGYuc3Bhd24oW2V4ZV0pCisgICAgICAgICAgICBvayA9IFRydWUKKyAgICAgICAgZXhjZXB0IChDb21waWxlRXJyb3IsIExpbmtFcnJvciwgUGFja2FnaW5nRXhlY0Vycm9yKToKKyAgICAgICAgICAgIG9rID0gRmFsc2UKKworICAgICAgICBsb2dnZXIuaW5mbyhvayBhbmQgInN1Y2Nlc3MhIiBvciAiZmFpbHVyZS4iKQorICAgICAgICBzZWxmLl9jbGVhbigpCisgICAgICAgIHJldHVybiBvaworCisKKyAgICAjIC0tIEhpZ2gtbGV2ZWwgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICMgKHRoZXNlIGFyZSB0aGUgb25lcyB0aGF0IGFyZSBhY3R1YWxseSBsaWtlbHkgdG8gYmUgdXNlZnVsCisgICAgIyB3aGVuIGltcGxlbWVudGluZyBhIHJlYWwtd29ybGQgY29uZmlnIGNvbW1hbmQhKQorCisgICAgZGVmIGNoZWNrX2Z1bmMoc2VsZiwgZnVuYywgaGVhZGVycz1Ob25lLCBpbmNsdWRlX2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXM9Tm9uZSwgbGlicmFyeV9kaXJzPU5vbmUsIGRlY2w9RmFsc2UsIGNhbGw9RmFsc2UpOgorCisgICAgICAgICIiIkRldGVybWluZSBpZiBmdW5jdGlvbiAnZnVuYycgaXMgYXZhaWxhYmxlIGJ5IGNvbnN0cnVjdGluZyBhCisgICAgICAgIHNvdXJjZSBmaWxlIHRoYXQgcmVmZXJzIHRvICdmdW5jJywgYW5kIGNvbXBpbGVzIGFuZCBsaW5rcyBpdC4KKyAgICAgICAgSWYgZXZlcnl0aGluZyBzdWNjZWVkcywgcmV0dXJucyB0cnVlOyBvdGhlcndpc2UgcmV0dXJucyBmYWxzZS4KKworICAgICAgICBUaGUgY29uc3RydWN0ZWQgc291cmNlIGZpbGUgc3RhcnRzIG91dCBieSBpbmNsdWRpbmcgdGhlIGhlYWRlcgorICAgICAgICBmaWxlcyBsaXN0ZWQgaW4gJ2hlYWRlcnMnLiAgSWYgJ2RlY2wnIGlzIHRydWUsIGl0IHRoZW4gZGVjbGFyZXMKKyAgICAgICAgJ2Z1bmMnIChhcyAiaW50IGZ1bmMoKSIpOyB5b3UgcHJvYmFibHkgc2hvdWxkbid0IHN1cHBseSAnaGVhZGVycycKKyAgICAgICAgYW5kIHNldCAnZGVjbCcgdHJ1ZSBpbiB0aGUgc2FtZSBjYWxsLCBvciB5b3UgbWlnaHQgZ2V0IGVycm9ycyBhYm91dAorICAgICAgICBhIGNvbmZsaWN0aW5nIGRlY2xhcmF0aW9ucyBmb3IgJ2Z1bmMnLiAgRmluYWxseSwgdGhlIGNvbnN0cnVjdGVkCisgICAgICAgICdtYWluKCknIGZ1bmN0aW9uIGVpdGhlciByZWZlcmVuY2VzICdmdW5jJyBvciAoaWYgJ2NhbGwnIGlzIHRydWUpCisgICAgICAgIGNhbGxzIGl0LiAgJ2xpYnJhcmllcycgYW5kICdsaWJyYXJ5X2RpcnMnIGFyZSB1c2VkIHdoZW4KKyAgICAgICAgbGlua2luZy4KKyAgICAgICAgIiIiCisKKyAgICAgICAgc2VsZi5fY2hlY2tfY29tcGlsZXIoKQorICAgICAgICBib2R5ID0gW10KKyAgICAgICAgaWYgZGVjbDoKKyAgICAgICAgICAgIGJvZHkuYXBwZW5kKCJpbnQgJXMgKCk7IiAlIGZ1bmMpCisgICAgICAgIGJvZHkuYXBwZW5kKCJpbnQgbWFpbiAoKSB7IikKKyAgICAgICAgaWYgY2FsbDoKKyAgICAgICAgICAgIGJvZHkuYXBwZW5kKCIgICVzKCk7IiAlIGZ1bmMpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBib2R5LmFwcGVuZCgiICAlczsiICUgZnVuYykKKyAgICAgICAgYm9keS5hcHBlbmQoIn0iKQorICAgICAgICBib2R5ID0gIlxuIi5qb2luKGJvZHkpICsgIlxuIgorCisgICAgICAgIHJldHVybiBzZWxmLnRyeV9saW5rKGJvZHksIGhlYWRlcnMsIGluY2x1ZGVfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMpCisKKyAgICBkZWYgY2hlY2tfbGliKHNlbGYsIGxpYnJhcnksIGxpYnJhcnlfZGlycz1Ob25lLCBoZWFkZXJzPU5vbmUsCisgICAgICAgICAgICAgICAgICBpbmNsdWRlX2RpcnM9Tm9uZSwgb3RoZXJfbGlicmFyaWVzPVtdKToKKyAgICAgICAgIiIiRGV0ZXJtaW5lIGlmICdsaWJyYXJ5JyBpcyBhdmFpbGFibGUgdG8gYmUgbGlua2VkIGFnYWluc3QsCisgICAgICAgIHdpdGhvdXQgYWN0dWFsbHkgY2hlY2tpbmcgdGhhdCBhbnkgcGFydGljdWxhciBzeW1ib2xzIGFyZSBwcm92aWRlZAorICAgICAgICBieSBpdC4gICdoZWFkZXJzJyB3aWxsIGJlIHVzZWQgaW4gY29uc3RydWN0aW5nIHRoZSBzb3VyY2UgZmlsZSB0bworICAgICAgICBiZSBjb21waWxlZCwgYnV0IHRoZSBvbmx5IGVmZmVjdCBvZiB0aGlzIGlzIHRvIGNoZWNrIGlmIGFsbCB0aGUKKyAgICAgICAgaGVhZGVyIGZpbGVzIGxpc3RlZCBhcmUgYXZhaWxhYmxlLiAgQW55IGxpYnJhcmllcyBsaXN0ZWQgaW4KKyAgICAgICAgJ290aGVyX2xpYnJhcmllcycgd2lsbCBiZSBpbmNsdWRlZCBpbiB0aGUgbGluaywgaW4gY2FzZSAnbGlicmFyeScKKyAgICAgICAgaGFzIHN5bWJvbHMgdGhhdCBkZXBlbmQgb24gb3RoZXIgbGlicmFyaWVzLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY29tcGlsZXIoKQorICAgICAgICByZXR1cm4gc2VsZi50cnlfbGluaygiaW50IG1haW4gKHZvaWQpIHsgfSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnMsIGluY2x1ZGVfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xpYnJhcnldK290aGVyX2xpYnJhcmllcywgbGlicmFyeV9kaXJzKQorCisgICAgZGVmIGNoZWNrX2hlYWRlcihzZWxmLCBoZWFkZXIsIGluY2x1ZGVfZGlycz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgIGxhbmc9ImMiKToKKyAgICAgICAgIiIiRGV0ZXJtaW5lIGlmIHRoZSBzeXN0ZW0gaGVhZGVyIGZpbGUgbmFtZWQgYnkgJ2hlYWRlcl9maWxlJworICAgICAgICBleGlzdHMgYW5kIGNhbiBiZSBmb3VuZCBieSB0aGUgcHJlcHJvY2Vzc29yOyByZXR1cm4gdHJ1ZSBpZiBzbywKKyAgICAgICAgZmFsc2Ugb3RoZXJ3aXNlLgorICAgICAgICAiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYudHJ5X2NwcChib2R5PSIvKiBObyBib2R5ICovIiwgaGVhZGVycz1baGVhZGVyXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlX2RpcnM9aW5jbHVkZV9kaXJzKQorCisKK2RlZiBkdW1wX2ZpbGUoZmlsZW5hbWUsIGhlYWQ9Tm9uZSk6CisgICAgIiIiRHVtcHMgYSBmaWxlIGNvbnRlbnQgaW50byBsb2cuaW5mby4KKworICAgIElmIGhlYWQgaXMgbm90IE5vbmUsIHdpbGwgYmUgZHVtcGVkIGJlZm9yZSB0aGUgZmlsZSBjb250ZW50LgorICAgICIiIgorICAgIGlmIGhlYWQgaXMgTm9uZToKKyAgICAgICAgbG9nZ2VyLmluZm8oZmlsZW5hbWUpCisgICAgZWxzZToKKyAgICAgICAgbG9nZ2VyLmluZm8oaGVhZCkKKyAgICB3aXRoIG9wZW4oZmlsZW5hbWUpIGFzIGZpbGU6CisgICAgICAgIGxvZ2dlci5pbmZvKGZpbGUucmVhZCgpKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfZGF0YS5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX2RhdGEucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWNhNjI3OQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX2RhdGEucHkKQEAgLTAsMCArMSw3OSBAQAorIiIiSW5zdGFsbCBwbGF0Zm9ybS1pbmRlcGVuZGVudCBkYXRhIGZpbGVzLiIiIgorCisjIENvbnRyaWJ1dGVkIGJ5IEJhc3RpYW4gS2xlaW5laWRhbQorCitpbXBvcnQgb3MKK2Zyb20gc2h1dGlsIGltcG9ydCBFcnJvcgorZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9wYXRocywgZm9ybWF0X3ZhbHVlCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBjb252ZXJ0X3BhdGgKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCisKKworY2xhc3MgaW5zdGFsbF9kYXRhKENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAiaW5zdGFsbCBwbGF0Zm9ybS1pbmRlcGVuZGVudCBkYXRhIGZpbGVzIgorCisgICAgdXNlcl9vcHRpb25zID0gWworICAgICAgICAoJ2luc3RhbGwtZGlyPScsICdkJywKKyAgICAgICAgICJiYXNlIGRpcmVjdG9yeSBmb3IgaW5zdGFsbGluZyBkYXRhIGZpbGVzICIKKyAgICAgICAgICIoZGVmYXVsdDogaW5zdGFsbGF0aW9uIGJhc2UgZGlyKSIpLAorICAgICAgICAoJ3Jvb3Q9JywgTm9uZSwKKyAgICAgICAgICJpbnN0YWxsIGV2ZXJ5dGhpbmcgcmVsYXRpdmUgdG8gdGhpcyBhbHRlcm5hdGUgcm9vdCBkaXJlY3RvcnkiKSwKKyAgICAgICAgKCdmb3JjZScsICdmJywgImZvcmNlIGluc3RhbGxhdGlvbiAob3ZlcndyaXRlIGV4aXN0aW5nIGZpbGVzKSIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2ZvcmNlJ10KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuaW5zdGFsbF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYub3V0ZmlsZXMgPSBbXQorICAgICAgICBzZWxmLmRhdGFfZmlsZXNfb3V0ID0gW10KKyAgICAgICAgc2VsZi5yb290ID0gTm9uZQorICAgICAgICBzZWxmLmZvcmNlID0gRmFsc2UKKyAgICAgICAgc2VsZi5kYXRhX2ZpbGVzID0gc2VsZi5kaXN0cmlidXRpb24uZGF0YV9maWxlcworICAgICAgICBzZWxmLndhcm5fZGlyID0gVHJ1ZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdpbnN0YWxsX2Rpc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ2luc3RhbGxfZGF0YScsICdpbnN0YWxsX2RpcicpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncm9vdCcsICdmb3JjZScpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBzZWxmLm1rcGF0aChzZWxmLmluc3RhbGxfZGlyKQorICAgICAgICBmb3IgX2ZpbGUgaW4gc2VsZi5kYXRhX2ZpbGVzLml0ZW1zKCk6CisgICAgICAgICAgICBkZXN0aW5hdGlvbiA9IGNvbnZlcnRfcGF0aChzZWxmLmV4cGFuZF9jYXRlZ29yaWVzKF9maWxlWzFdKSkKKyAgICAgICAgICAgIGRpcl9kZXN0ID0gb3MucGF0aC5hYnNwYXRoKG9zLnBhdGguZGlybmFtZShkZXN0aW5hdGlvbikpCisKKyAgICAgICAgICAgIHNlbGYubWtwYXRoKGRpcl9kZXN0KQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIG91dCA9IHNlbGYuY29weV9maWxlKF9maWxlWzBdLCBkaXJfZGVzdClbMF0KKyAgICAgICAgICAgIGV4Y2VwdCBFcnJvciBhcyBlOgorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCclczogJXMnLCBzZWxmLmdldF9jb21tYW5kX25hbWUoKSwgZSkKKyAgICAgICAgICAgICAgICBvdXQgPSBkZXN0aW5hdGlvbgorCisgICAgICAgICAgICBzZWxmLm91dGZpbGVzLmFwcGVuZChvdXQpCisgICAgICAgICAgICBzZWxmLmRhdGFfZmlsZXNfb3V0LmFwcGVuZCgoX2ZpbGVbMF0sIGRlc3RpbmF0aW9uKSkKKworICAgIGRlZiBleHBhbmRfY2F0ZWdvcmllcyhzZWxmLCBwYXRoX3dpdGhfY2F0ZWdvcmllcyk6CisgICAgICAgIGxvY2FsX3ZhcnMgPSBnZXRfcGF0aHMoKQorICAgICAgICBsb2NhbF92YXJzWydkaXN0cmlidXRpb24ubmFtZSddID0gc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGFbJ05hbWUnXQorICAgICAgICBleHBhbmRlZF9wYXRoID0gZm9ybWF0X3ZhbHVlKHBhdGhfd2l0aF9jYXRlZ29yaWVzLCBsb2NhbF92YXJzKQorICAgICAgICBleHBhbmRlZF9wYXRoID0gZm9ybWF0X3ZhbHVlKGV4cGFuZGVkX3BhdGgsIGxvY2FsX3ZhcnMpCisgICAgICAgIGlmICd7JyBpbiBleHBhbmRlZF9wYXRoIGFuZCAnfScgaW4gZXhwYW5kZWRfcGF0aDoKKyAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKAorICAgICAgICAgICAgICAgICclczogdW5hYmxlIHRvIGV4cGFuZCAlcywgc29tZSBjYXRlZ29yaWVzIG1heSBiZSBtaXNzaW5nJywKKyAgICAgICAgICAgICAgICBzZWxmLmdldF9jb21tYW5kX25hbWUoKSwgcGF0aF93aXRoX2NhdGVnb3JpZXMpCisgICAgICAgIHJldHVybiBleHBhbmRlZF9wYXRoCisKKyAgICBkZWYgZ2V0X3NvdXJjZV9maWxlcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIGxpc3Qoc2VsZi5kYXRhX2ZpbGVzKQorCisgICAgZGVmIGdldF9pbnB1dHMoc2VsZik6CisgICAgICAgIHJldHVybiBsaXN0KHNlbGYuZGF0YV9maWxlcykKKworICAgIGRlZiBnZXRfb3V0cHV0cyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYub3V0ZmlsZXMKKworICAgIGRlZiBnZXRfcmVzb3VyY2VzX291dChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuZGF0YV9maWxlc19vdXQKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX2Rpc3QucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9kaXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgzODhkYzkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9kaXN0LnB5CkBAIC0wLDAgKzEsNjA1IEBACisiIiJNYWluIGluc3RhbGwgY29tbWFuZCwgd2hpY2ggY2FsbHMgdGhlIG90aGVyIGluc3RhbGxfKiBjb21tYW5kcy4iIiIKKworaW1wb3J0IHN5cworaW1wb3J0IG9zCisKK2ltcG9ydCBzeXNjb25maWcKK2Zyb20gc3lzY29uZmlnIGltcG9ydCBnZXRfY29uZmlnX3ZhcnMsIGdldF9wYXRocywgZ2V0X3BhdGgsIGdldF9jb25maWdfdmFyCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHdyaXRlX2ZpbGUKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGNvbnZlcnRfcGF0aCwgY2hhbmdlX3Jvb3QsIGdldF9wbGF0Zm9ybQorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorCisKK2NsYXNzIGluc3RhbGxfZGlzdChDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gImluc3RhbGwgZXZlcnl0aGluZyBmcm9tIGJ1aWxkIGRpcmVjdG9yeSIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgIyBTZWxlY3QgaW5zdGFsbGF0aW9uIHNjaGVtZSBhbmQgc2V0IGJhc2UgZGlyZWN0b3IoeXxpZXMpCisgICAgICAgICgncHJlZml4PScsIE5vbmUsCisgICAgICAgICAiaW5zdGFsbGF0aW9uIHByZWZpeCIpLAorICAgICAgICAoJ2V4ZWMtcHJlZml4PScsIE5vbmUsCisgICAgICAgICAiKFVuaXggb25seSkgcHJlZml4IGZvciBwbGF0Zm9ybS1zcGVjaWZpYyBmaWxlcyIpLAorICAgICAgICAoJ3VzZXInLCBOb25lLAorICAgICAgICAgImluc3RhbGwgaW4gdXNlciBzaXRlLXBhY2thZ2VzIGRpcmVjdG9yeSBbJXNdIiAlCisgICAgICAgICBnZXRfcGF0aCgncHVyZWxpYicsICclc191c2VyJyAlIG9zLm5hbWUpKSwKKyAgICAgICAgKCdob21lPScsIE5vbmUsCisgICAgICAgICAiKFVuaXggb25seSkgaG9tZSBkaXJlY3RvcnkgdG8gaW5zdGFsbCB1bmRlciIpLAorCisgICAgICAgICMgT3IganVzdCBzZXQgdGhlIGJhc2UgZGlyZWN0b3IoeXxpZXMpCisgICAgICAgICgnaW5zdGFsbC1iYXNlPScsIE5vbmUsCisgICAgICAgICAiYmFzZSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IChpbnN0ZWFkIG9mIC0tcHJlZml4IG9yIC0taG9tZSkiKSwKKyAgICAgICAgKCdpbnN0YWxsLXBsYXRiYXNlPScsIE5vbmUsCisgICAgICAgICAiYmFzZSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IGZvciBwbGF0Zm9ybS1zcGVjaWZpYyBmaWxlcyAiICsKKyAgICAgICAgICIoaW5zdGVhZCBvZiAtLWV4ZWMtcHJlZml4IG9yIC0taG9tZSkiKSwKKyAgICAgICAgKCdyb290PScsIE5vbmUsCisgICAgICAgICAiaW5zdGFsbCBldmVyeXRoaW5nIHJlbGF0aXZlIHRvIHRoaXMgYWx0ZXJuYXRlIHJvb3QgZGlyZWN0b3J5IiksCisKKyAgICAgICAgIyBPciBleHBsaWNpdGx5IHNldCB0aGUgaW5zdGFsbGF0aW9uIHNjaGVtZQorICAgICAgICAoJ2luc3RhbGwtcHVyZWxpYj0nLCBOb25lLAorICAgICAgICAgImluc3RhbGxhdGlvbiBkaXJlY3RvcnkgZm9yIHB1cmUgUHl0aG9uIG1vZHVsZSBkaXN0cmlidXRpb25zIiksCisgICAgICAgICgnaW5zdGFsbC1wbGF0bGliPScsIE5vbmUsCisgICAgICAgICAiaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBmb3Igbm9uLXB1cmUgbW9kdWxlIGRpc3RyaWJ1dGlvbnMiKSwKKyAgICAgICAgKCdpbnN0YWxsLWxpYj0nLCBOb25lLAorICAgICAgICAgImluc3RhbGxhdGlvbiBkaXJlY3RvcnkgZm9yIGFsbCBtb2R1bGUgZGlzdHJpYnV0aW9ucyAiICsKKyAgICAgICAgICIob3ZlcnJpZGVzIC0taW5zdGFsbC1wdXJlbGliIGFuZCAtLWluc3RhbGwtcGxhdGxpYikiKSwKKworICAgICAgICAoJ2luc3RhbGwtaGVhZGVycz0nLCBOb25lLAorICAgICAgICAgImluc3RhbGxhdGlvbiBkaXJlY3RvcnkgZm9yIEMvQysrIGhlYWRlcnMiKSwKKyAgICAgICAgKCdpbnN0YWxsLXNjcmlwdHM9JywgTm9uZSwKKyAgICAgICAgICJpbnN0YWxsYXRpb24gZGlyZWN0b3J5IGZvciBQeXRob24gc2NyaXB0cyIpLAorICAgICAgICAoJ2luc3RhbGwtZGF0YT0nLCBOb25lLAorICAgICAgICAgImluc3RhbGxhdGlvbiBkaXJlY3RvcnkgZm9yIGRhdGEgZmlsZXMiKSwKKworICAgICAgICAjIEJ5dGUtY29tcGlsYXRpb24gb3B0aW9ucyAtLSBzZWUgaW5zdGFsbF9saWIgZm9yIGRldGFpbHMKKyAgICAgICAgKCdjb21waWxlJywgJ2MnLCAiY29tcGlsZSAucHkgdG8gLnB5YyBbZGVmYXVsdF0iKSwKKyAgICAgICAgKCduby1jb21waWxlJywgTm9uZSwgImRvbid0IGNvbXBpbGUgLnB5IGZpbGVzIiksCisgICAgICAgICgnb3B0aW1pemU9JywgJ08nLAorICAgICAgICAgJ2Fsc28gY29tcGlsZSB3aXRoIG9wdGltaXphdGlvbjogLU8xIGZvciAicHl0aG9uIC1PIiwgJworICAgICAgICAgJy1PMiBmb3IgInB5dGhvbiAtT08iLCBhbmQgLU8wIHRvIGRpc2FibGUgW2RlZmF1bHQ6IC1PMF0nKSwKKworICAgICAgICAjIE1pc2NlbGxhbmVvdXMgY29udHJvbCBvcHRpb25zCisgICAgICAgICgnZm9yY2UnLCAnZicsCisgICAgICAgICAiZm9yY2UgaW5zdGFsbGF0aW9uIChvdmVyd3JpdGUgYW55IGV4aXN0aW5nIGZpbGVzKSIpLAorICAgICAgICAoJ3NraXAtYnVpbGQnLCBOb25lLAorICAgICAgICAgInNraXAgcmVidWlsZGluZyBldmVyeXRoaW5nIChmb3IgdGVzdGluZy9kZWJ1Z2dpbmcpIiksCisKKyAgICAgICAgIyBXaGVyZSB0byBpbnN0YWxsIGRvY3VtZW50YXRpb24gKGV2ZW50dWFsbHkhKQorICAgICAgICAjKCdkb2MtZm9ybWF0PScsIE5vbmUsICJmb3JtYXQgb2YgZG9jdW1lbnRhdGlvbiB0byBnZW5lcmF0ZSIpLAorICAgICAgICAjKCdpbnN0YWxsLW1hbj0nLCBOb25lLCAiZGlyZWN0b3J5IGZvciBVbml4IG1hbiBwYWdlcyIpLAorICAgICAgICAjKCdpbnN0YWxsLWh0bWw9JywgTm9uZSwgImRpcmVjdG9yeSBmb3IgSFRNTCBkb2N1bWVudGF0aW9uIiksCisgICAgICAgICMoJ2luc3RhbGwtaW5mbz0nLCBOb25lLCAiZGlyZWN0b3J5IGZvciBHTlUgaW5mbyBmaWxlcyIpLAorCisgICAgICAgICMgWFhYIHVzZSBhIG5hbWUgdGhhdCBtYWtlcyBjbGVhciB0aGlzIGlzIHRoZSBvbGQgZm9ybWF0CisgICAgICAgICgncmVjb3JkPScsIE5vbmUsCisgICAgICAgICAiZmlsZW5hbWUgaW4gd2hpY2ggdG8gcmVjb3JkIGEgbGlzdCBvZiBpbnN0YWxsZWQgZmlsZXMgIgorICAgICAgICAgIihub3QgUEVQIDM3Ni1jb21wbGlhbnQpIiksCisgICAgICAgICgncmVzb3VyY2VzPScsIE5vbmUsCisgICAgICAgICAiZGF0YSBmaWxlcyBtYXBwaW5nIiksCisKKyAgICAgICAgIyAuZGlzdC1pbmZvIHJlbGF0ZWQgYXJndW1lbnRzLCByZWFkIGJ5IGluc3RhbGxfZGlzdF9pbmZvCisgICAgICAgICgnbm8tZGlzdGluZm8nLCBOb25lLAorICAgICAgICAgImRvIG5vdCBjcmVhdGUgYSAuZGlzdC1pbmZvIGRpcmVjdG9yeSIpLAorICAgICAgICAoJ2luc3RhbGxlcj0nLCBOb25lLAorICAgICAgICAgInRoZSBuYW1lIG9mIHRoZSBpbnN0YWxsZXIiKSwKKyAgICAgICAgKCdyZXF1ZXN0ZWQnLCBOb25lLAorICAgICAgICAgImdlbmVyYXRlIGEgUkVRVUVTVEVEIGZpbGUgKGkuZS4iKSwKKyAgICAgICAgKCduby1yZXF1ZXN0ZWQnLCBOb25lLAorICAgICAgICAgImRvIG5vdCBnZW5lcmF0ZSBhIFJFUVVFU1RFRCBmaWxlIiksCisgICAgICAgICgnbm8tcmVjb3JkJywgTm9uZSwKKyAgICAgICAgICJkbyBub3QgZ2VuZXJhdGUgYSBSRUNPUkQgZmlsZSIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2NvbXBpbGUnLCAnZm9yY2UnLCAnc2tpcC1idWlsZCcsICduby1kaXN0aW5mbycsCisgICAgICAgICAgICAgICAgICAgICAgICdyZXF1ZXN0ZWQnLCAnbm8tcmVjb3JkJywgJ3VzZXInXQorCisgICAgbmVnYXRpdmVfb3B0ID0geyduby1jb21waWxlJzogJ2NvbXBpbGUnLCAnbm8tcmVxdWVzdGVkJzogJ3JlcXVlc3RlZCd9CisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICAjIEhpZ2gtbGV2ZWwgb3B0aW9uczogdGhlc2Ugc2VsZWN0IGJvdGggYW4gaW5zdGFsbGF0aW9uIGJhc2UKKyAgICAgICAgIyBhbmQgc2NoZW1lLgorICAgICAgICBzZWxmLnByZWZpeCA9IE5vbmUKKyAgICAgICAgc2VsZi5leGVjX3ByZWZpeCA9IE5vbmUKKyAgICAgICAgc2VsZi5ob21lID0gTm9uZQorICAgICAgICBzZWxmLnVzZXIgPSBGYWxzZQorCisgICAgICAgICMgVGhlc2Ugc2VsZWN0IG9ubHkgdGhlIGluc3RhbGxhdGlvbiBiYXNlOyBpdCdzIHVwIHRvIHRoZSB1c2VyIHRvCisgICAgICAgICMgc3BlY2lmeSB0aGUgaW5zdGFsbGF0aW9uIHNjaGVtZSAoY3VycmVudGx5LCB0aGF0IG1lYW5zIHN1cHBseWluZworICAgICAgICAjIHRoZSAtLWluc3RhbGwte3BsYXRsaWIscHVyZWxpYixzY3JpcHRzLGRhdGF9IG9wdGlvbnMpLgorICAgICAgICBzZWxmLmluc3RhbGxfYmFzZSA9IE5vbmUKKyAgICAgICAgc2VsZi5pbnN0YWxsX3BsYXRiYXNlID0gTm9uZQorICAgICAgICBzZWxmLnJvb3QgPSBOb25lCisKKyAgICAgICAgIyBUaGVzZSBvcHRpb25zIGFyZSB0aGUgYWN0dWFsIGluc3RhbGxhdGlvbiBkaXJlY3RvcmllczsgaWYgbm90CisgICAgICAgICMgc3VwcGxpZWQgYnkgdGhlIHVzZXIsIHRoZXkgYXJlIGZpbGxlZCBpbiB1c2luZyB0aGUgaW5zdGFsbGF0aW9uCisgICAgICAgICMgc2NoZW1lIGltcGxpZWQgYnkgcHJlZml4L2V4ZWMtcHJlZml4L2hvbWUgYW5kIHRoZSBjb250ZW50cyBvZgorICAgICAgICAjIHRoYXQgaW5zdGFsbGF0aW9uIHNjaGVtZS4KKyAgICAgICAgc2VsZi5pbnN0YWxsX3B1cmVsaWIgPSBOb25lICAgICAjIGZvciBwdXJlIG1vZHVsZSBkaXN0cmlidXRpb25zCisgICAgICAgIHNlbGYuaW5zdGFsbF9wbGF0bGliID0gTm9uZSAgICAgIyBub24tcHVyZSAoZGlzdHMgdy8gZXh0ZW5zaW9ucykKKyAgICAgICAgc2VsZi5pbnN0YWxsX2hlYWRlcnMgPSBOb25lICAgICAjIGZvciBDL0MrKyBoZWFkZXJzCisgICAgICAgIHNlbGYuaW5zdGFsbF9saWIgPSBOb25lICAgICAgICAgIyBzZXQgdG8gZWl0aGVyIHB1cmVsaWIgb3IgcGxhdGxpYgorICAgICAgICBzZWxmLmluc3RhbGxfc2NyaXB0cyA9IE5vbmUKKyAgICAgICAgc2VsZi5pbnN0YWxsX2RhdGEgPSBOb25lCisgICAgICAgIHNlbGYuaW5zdGFsbF91c2VyYmFzZSA9IGdldF9jb25maWdfdmFyKCd1c2VyYmFzZScpCisgICAgICAgIHNlbGYuaW5zdGFsbF91c2Vyc2l0ZSA9IGdldF9wYXRoKCdwdXJlbGliJywgJyVzX3VzZXInICUgb3MubmFtZSkKKworICAgICAgICBzZWxmLmNvbXBpbGUgPSBOb25lCisgICAgICAgIHNlbGYub3B0aW1pemUgPSBOb25lCisKKyAgICAgICAgIyBUaGVzZSB0d28gYXJlIGZvciBwdXR0aW5nIG5vbi1wYWNrYWdpemVkIGRpc3RyaWJ1dGlvbnMgaW50byB0aGVpcgorICAgICAgICAjIG93biBkaXJlY3RvcnkgYW5kIGNyZWF0aW5nIGEgLnB0aCBmaWxlIGlmIGl0IG1ha2VzIHNlbnNlLgorICAgICAgICAjICdleHRyYV9wYXRoJyBjb21lcyBmcm9tIHRoZSBzZXR1cCBmaWxlOyAnaW5zdGFsbF9wYXRoX2ZpbGUnIGNhbgorICAgICAgICAjIGJlIHR1cm5lZCBvZmYgaWYgaXQgbWFrZXMgbm8gc2Vuc2UgdG8gaW5zdGFsbCBhIC5wdGggZmlsZS4gIChCdXQKKyAgICAgICAgIyBiZXR0ZXIgdG8gaW5zdGFsbCBpdCB1c2VsZXNzbHkgdGhhbiB0byBndWVzcyB3cm9uZyBhbmQgbm90CisgICAgICAgICMgaW5zdGFsbCBpdCB3aGVuIGl0J3MgbmVjZXNzYXJ5IGFuZCB3b3VsZCBiZSB1c2VkISkgIEN1cnJlbnRseSwKKyAgICAgICAgIyAnaW5zdGFsbF9wYXRoX2ZpbGUnIGlzIGFsd2F5cyB0cnVlIHVubGVzcyBzb21lIG91dHNpZGVyIG1lZGRsZXMKKyAgICAgICAgIyB3aXRoIGl0LgorICAgICAgICBzZWxmLmV4dHJhX3BhdGggPSBOb25lCisgICAgICAgIHNlbGYuaW5zdGFsbF9wYXRoX2ZpbGUgPSBUcnVlCisKKyAgICAgICAgIyAnZm9yY2UnIGZvcmNlcyBpbnN0YWxsYXRpb24sIGV2ZW4gaWYgdGFyZ2V0IGZpbGVzIGFyZSBub3QKKyAgICAgICAgIyBvdXQtb2YtZGF0ZS4gICdza2lwX2J1aWxkJyBza2lwcyBydW5uaW5nIHRoZSAiYnVpbGQiIGNvbW1hbmQsCisgICAgICAgICMgaGFuZHkgaWYgeW91IGtub3cgaXQncyBub3QgbmVjZXNzYXJ5LiAgJ3dhcm5fZGlyJyAod2hpY2ggaXMgKm5vdCoKKyAgICAgICAgIyBhIHVzZXIgb3B0aW9uLCBpdCdzIGp1c3QgdGhlcmUgc28gdGhlIGJkaXN0XyogY29tbWFuZHMgY2FuIHR1cm4KKyAgICAgICAgIyBpdCBvZmYpIGRldGVybWluZXMgd2hldGhlciB3ZSB3YXJuIGFib3V0IGluc3RhbGxpbmcgdG8gYQorICAgICAgICAjIGRpcmVjdG9yeSBub3QgaW4gc3lzLnBhdGguCisgICAgICAgIHNlbGYuZm9yY2UgPSBGYWxzZQorICAgICAgICBzZWxmLnNraXBfYnVpbGQgPSBGYWxzZQorICAgICAgICBzZWxmLndhcm5fZGlyID0gVHJ1ZQorCisgICAgICAgICMgVGhlc2UgYXJlIG9ubHkgaGVyZSBhcyBhIGNvbmR1aXQgZnJvbSB0aGUgJ2J1aWxkJyBjb21tYW5kIHRvIHRoZQorICAgICAgICAjICdpbnN0YWxsXyonIGNvbW1hbmRzIHRoYXQgZG8gdGhlIHJlYWwgd29yay4gICgnYnVpbGRfYmFzZScgaXNuJ3QKKyAgICAgICAgIyBhY3R1YWxseSB1c2VkIGFueXdoZXJlLCBidXQgaXQgbWlnaHQgYmUgdXNlZnVsIGluIGZ1dHVyZS4pICBUaGV5CisgICAgICAgICMgYXJlIG5vdCB1c2VyIG9wdGlvbnMsIGJlY2F1c2UgaWYgdGhlIHVzZXIgdG9sZCB0aGUgaW5zdGFsbAorICAgICAgICAjIGNvbW1hbmQgd2hlcmUgdGhlIGJ1aWxkIGRpcmVjdG9yeSBpcywgdGhhdCB3b3VsZG4ndCBhZmZlY3QgdGhlCisgICAgICAgICMgYnVpbGQgY29tbWFuZC4KKyAgICAgICAgc2VsZi5idWlsZF9iYXNlID0gTm9uZQorICAgICAgICBzZWxmLmJ1aWxkX2xpYiA9IE5vbmUKKworICAgICAgICAjIE5vdCBkZWZpbmVkIHlldCBiZWNhdXNlIHdlIGRvbid0IGtub3cgYW55dGhpbmcgYWJvdXQKKyAgICAgICAgIyBkb2N1bWVudGF0aW9uIHlldC4KKyAgICAgICAgI3NlbGYuaW5zdGFsbF9tYW4gPSBOb25lCisgICAgICAgICNzZWxmLmluc3RhbGxfaHRtbCA9IE5vbmUKKyAgICAgICAgI3NlbGYuaW5zdGFsbF9pbmZvID0gTm9uZQorCisgICAgICAgIHNlbGYucmVjb3JkID0gTm9uZQorICAgICAgICBzZWxmLnJlc291cmNlcyA9IE5vbmUKKworICAgICAgICAjIC5kaXN0LWluZm8gcmVsYXRlZCBvcHRpb25zCisgICAgICAgIHNlbGYubm9fZGlzdGluZm8gPSBOb25lCisgICAgICAgIHNlbGYuaW5zdGFsbGVyID0gTm9uZQorICAgICAgICBzZWxmLnJlcXVlc3RlZCA9IE5vbmUKKyAgICAgICAgc2VsZi5ub19yZWNvcmQgPSBOb25lCisKKyAgICAjIC0tIE9wdGlvbiBmaW5hbGl6aW5nIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICMgKFRoaXMgaXMgcmF0aGVyIG1vcmUgaW52b2x2ZWQgdGhhbiBmb3IgbW9zdCBjb21tYW5kcywKKyAgICAjIGJlY2F1c2UgdGhpcyBpcyB3aGVyZSB0aGUgcG9saWN5IGZvciBpbnN0YWxsaW5nIHRoaXJkLQorICAgICMgcGFydHkgUHl0aG9uIG1vZHVsZXMgb24gdmFyaW91cyBwbGF0Zm9ybXMgZ2l2ZW4gYSB3aWRlCisgICAgIyBhcnJheSBvZiB1c2VyIGlucHV0IGlzIGRlY2lkZWQuICBZZXMsIGl0J3MgcXVpdGUgY29tcGxleCEpCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIyBUaGlzIG1ldGhvZCAoYW5kIGl0cyBwbGlhbnQgc2xhdmVzLCBsaWtlICdmaW5hbGl6ZV91bml4KCknLAorICAgICAgICAjICdmaW5hbGl6ZV9vdGhlcigpJywgYW5kICdzZWxlY3Rfc2NoZW1lKCknKSBpcyB3aGVyZSB0aGUgZGVmYXVsdAorICAgICAgICAjIGluc3RhbGxhdGlvbiBkaXJlY3RvcmllcyBmb3IgbW9kdWxlcywgZXh0ZW5zaW9uIG1vZHVsZXMsIGFuZAorICAgICAgICAjIGFueXRoaW5nIGVsc2Ugd2UgY2FyZSB0byBpbnN0YWxsIGZyb20gYSBQeXRob24gbW9kdWxlCisgICAgICAgICMgZGlzdHJpYnV0aW9uLiAgVGh1cywgdGhpcyBjb2RlIG1ha2VzIGEgcHJldHR5IGltcG9ydGFudCBwb2xpY3kKKyAgICAgICAgIyBzdGF0ZW1lbnQgYWJvdXQgaG93IHRoaXJkLXBhcnR5IHN0dWZmIGlzIGFkZGVkIHRvIGEgUHl0aG9uCisgICAgICAgICMgaW5zdGFsbGF0aW9uISAgTm90ZSB0aGF0IHRoZSBhY3R1YWwgd29yayBvZiBpbnN0YWxsYXRpb24gaXMgZG9uZQorICAgICAgICAjIGJ5IHRoZSByZWxhdGl2ZWx5IHNpbXBsZSAnaW5zdGFsbF8qJyBjb21tYW5kczsgdGhleSBqdXN0IHRha2UKKyAgICAgICAgIyB0aGVpciBvcmRlcnMgZnJvbSB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBvcHRpb25zIGRldGVybWluZWQKKyAgICAgICAgIyBoZXJlLgorCisgICAgICAgICMgQ2hlY2sgZm9yIGVycm9ycy9pbmNvbnNpc3RlbmNpZXMgaW4gdGhlIG9wdGlvbnM7IGZpcnN0LCBzdHVmZgorICAgICAgICAjIHRoYXQncyB3cm9uZyBvbiBhbnkgcGxhdGZvcm0uCisKKyAgICAgICAgaWYgKChzZWxmLnByZWZpeCBvciBzZWxmLmV4ZWNfcHJlZml4IG9yIHNlbGYuaG9tZSkgYW5kCisgICAgICAgICAgICAoc2VsZi5pbnN0YWxsX2Jhc2Ugb3Igc2VsZi5pbnN0YWxsX3BsYXRiYXNlKSk6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigKKyAgICAgICAgICAgICAgICAibXVzdCBzdXBwbHkgZWl0aGVyIHByZWZpeC9leGVjLXByZWZpeC9ob21lIG9yICIKKyAgICAgICAgICAgICAgICAiaW5zdGFsbC1iYXNlL2luc3RhbGwtcGxhdGJhc2UgLS0gbm90IGJvdGgiKQorCisgICAgICAgIGlmIHNlbGYuaG9tZSBhbmQgKHNlbGYucHJlZml4IG9yIHNlbGYuZXhlY19wcmVmaXgpOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgIm11c3Qgc3VwcGx5IGVpdGhlciBob21lIG9yIHByZWZpeC9leGVjLXByZWZpeCAtLSBub3QgYm90aCIpCisKKyAgICAgICAgaWYgc2VsZi51c2VyIGFuZCAoc2VsZi5wcmVmaXggb3Igc2VsZi5leGVjX3ByZWZpeCBvciBzZWxmLmhvbWUgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2Jhc2Ugb3Igc2VsZi5pbnN0YWxsX3BsYXRiYXNlKToKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICJjYW4ndCBjb21iaW5lIHVzZXIgd2l0aCBwcmVmaXgvZXhlY19wcmVmaXgvaG9tZSBvciAiCisgICAgICAgICAgICAgICAgImluc3RhbGxfYmFzZS9pbnN0YWxsX3BsYXRiYXNlIikKKworICAgICAgICAjIE5leHQsIHN0dWZmIHRoYXQncyB3cm9uZyAob3IgZHViaW91cykgb25seSBvbiBjZXJ0YWluIHBsYXRmb3Jtcy4KKyAgICAgICAgaWYgb3MubmFtZSAhPSAicG9zaXgiOgorICAgICAgICAgICAgaWYgc2VsZi5leGVjX3ByZWZpeDoKKyAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAgICAgJyVzOiBleGVjLXByZWZpeCBvcHRpb24gaWdub3JlZCBvbiB0aGlzIHBsYXRmb3JtJywKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5nZXRfY29tbWFuZF9uYW1lKCkpCisgICAgICAgICAgICAgICAgc2VsZi5leGVjX3ByZWZpeCA9IE5vbmUKKworICAgICAgICAjIE5vdyB0aGUgaW50ZXJlc3RpbmcgbG9naWMgLS0gc28gaW50ZXJlc3RpbmcgdGhhdCB3ZSBmYXJtIGl0IG91dAorICAgICAgICAjIHRvIG90aGVyIG1ldGhvZHMuICBUaGUgZ29hbCBvZiB0aGVzZSBtZXRob2RzIGlzIHRvIHNldCB0aGUgZmluYWwKKyAgICAgICAgIyB2YWx1ZXMgZm9yIHRoZSBpbnN0YWxsX3tsaWIsc2NyaXB0cyxkYXRhLC4uLn0gIG9wdGlvbnMsIHVzaW5nIGFzCisgICAgICAgICMgaW5wdXQgYSBoZWFkeSBicmV3IG9mIHByZWZpeCwgZXhlY19wcmVmaXgsIGhvbWUsIGluc3RhbGxfYmFzZSwKKyAgICAgICAgIyBpbnN0YWxsX3BsYXRiYXNlLCB1c2VyLXN1cHBsaWVkIHZlcnNpb25zIG9mCisgICAgICAgICMgaW5zdGFsbF97cHVyZWxpYixwbGF0bGliLGxpYixzY3JpcHRzLGRhdGEsLi4ufSwgYW5kIHRoZQorICAgICAgICAjIElOU1RBTExfU0NIRU1FIGRpY3Rpb25hcnkgYWJvdmUuICBQaGV3IQorCisgICAgICAgIHNlbGYuZHVtcF9kaXJzKCJwcmUtZmluYWxpemVfe3VuaXgsb3RoZXJ9IikKKworICAgICAgICBpZiBvcy5uYW1lID09ICdwb3NpeCc6CisgICAgICAgICAgICBzZWxmLmZpbmFsaXplX3VuaXgoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5maW5hbGl6ZV9vdGhlcigpCisKKyAgICAgICAgc2VsZi5kdW1wX2RpcnMoInBvc3QtZmluYWxpemVfe3VuaXgsb3RoZXJ9KCkiKQorCisgICAgICAgICMgRXhwYW5kIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLCB0aWxkZSwgZXRjLiBpbiBzZWxmLmluc3RhbGxfYmFzZQorICAgICAgICAjIGFuZCBzZWxmLmluc3RhbGxfcGxhdGJhc2UgLS0gdGhhdCB3YXksIHdlIGNhbiB1c2UgJGJhc2Ugb3IKKyAgICAgICAgIyAkcGxhdGJhc2UgaW4gdGhlIG90aGVyIGluc3RhbGxhdGlvbiBkaXJlY3RvcmllcyBhbmQgbm90IHdvcnJ5CisgICAgICAgICMgYWJvdXQgbmVlZGluZyByZWN1cnNpdmUgdmFyaWFibGUgZXhwYW5zaW9uIChzaHVkZGVyKS4KKworICAgICAgICBweV92ZXJzaW9uID0gJyVzLiVzJyAlIHN5cy52ZXJzaW9uX2luZm9bOjJdCisgICAgICAgIHByZWZpeCwgZXhlY19wcmVmaXgsIHNyY2RpciwgcHJvamVjdGJhc2UgPSBnZXRfY29uZmlnX3ZhcnMoCisgICAgICAgICAgICAncHJlZml4JywgJ2V4ZWNfcHJlZml4JywgJ3NyY2RpcicsICdwcm9qZWN0YmFzZScpCisKKyAgICAgICAgbWV0YWRhdGEgPSBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YQorICAgICAgICBzZWxmLmNvbmZpZ192YXJzID0geworICAgICAgICAgICAgJ2Rpc3RfbmFtZSc6IG1ldGFkYXRhWydOYW1lJ10sCisgICAgICAgICAgICAnZGlzdF92ZXJzaW9uJzogbWV0YWRhdGFbJ1ZlcnNpb24nXSwKKyAgICAgICAgICAgICdkaXN0X2Z1bGxuYW1lJzogbWV0YWRhdGEuZ2V0X2Z1bGxuYW1lKCksCisgICAgICAgICAgICAncHlfdmVyc2lvbic6IHB5X3ZlcnNpb24sCisgICAgICAgICAgICAncHlfdmVyc2lvbl9zaG9ydCc6IHB5X3ZlcnNpb25bOjNdLAorICAgICAgICAgICAgJ3B5X3ZlcnNpb25fbm9kb3QnOiBweV92ZXJzaW9uWzozOjJdLAorICAgICAgICAgICAgJ3N5c19wcmVmaXgnOiBwcmVmaXgsCisgICAgICAgICAgICAncHJlZml4JzogcHJlZml4LAorICAgICAgICAgICAgJ3N5c19leGVjX3ByZWZpeCc6IGV4ZWNfcHJlZml4LAorICAgICAgICAgICAgJ2V4ZWNfcHJlZml4JzogZXhlY19wcmVmaXgsCisgICAgICAgICAgICAnc3JjZGlyJzogc3JjZGlyLAorICAgICAgICAgICAgJ3Byb2plY3RiYXNlJzogcHJvamVjdGJhc2UsCisgICAgICAgICAgICAndXNlcmJhc2UnOiBzZWxmLmluc3RhbGxfdXNlcmJhc2UsCisgICAgICAgICAgICAndXNlcnNpdGUnOiBzZWxmLmluc3RhbGxfdXNlcnNpdGUsCisgICAgICAgIH0KKworICAgICAgICBzZWxmLmV4cGFuZF9iYXNlZGlycygpCisKKyAgICAgICAgc2VsZi5kdW1wX2RpcnMoInBvc3QtZXhwYW5kX2Jhc2VkaXJzKCkiKQorCisgICAgICAgICMgTm93IGRlZmluZSBjb25maWcgdmFycyBmb3IgdGhlIGJhc2UgZGlyZWN0b3JpZXMgc28gd2UgY2FuIGV4cGFuZAorICAgICAgICAjIGV2ZXJ5dGhpbmcgZWxzZS4KKyAgICAgICAgc2VsZi5jb25maWdfdmFyc1snYmFzZSddID0gc2VsZi5pbnN0YWxsX2Jhc2UKKyAgICAgICAgc2VsZi5jb25maWdfdmFyc1sncGxhdGJhc2UnXSA9IHNlbGYuaW5zdGFsbF9wbGF0YmFzZQorCisgICAgICAgICMgRXhwYW5kICJ+IiBhbmQgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMgaW4gdGhlIGluc3RhbGxhdGlvbgorICAgICAgICAjIGRpcmVjdG9yaWVzLgorICAgICAgICBzZWxmLmV4cGFuZF9kaXJzKCkKKworICAgICAgICBzZWxmLmR1bXBfZGlycygicG9zdC1leHBhbmRfZGlycygpIikKKworICAgICAgICAjIENyZWF0ZSBkaXJlY3RvcmllcyB1bmRlciBVU0VSQkFTRQorICAgICAgICBpZiBzZWxmLnVzZXI6CisgICAgICAgICAgICBzZWxmLmNyZWF0ZV91c2VyX2RpcnMoKQorCisgICAgICAgICMgUGljayB0aGUgYWN0dWFsIGRpcmVjdG9yeSB0byBpbnN0YWxsIGFsbCBtb2R1bGVzIHRvOiBlaXRoZXIKKyAgICAgICAgIyBpbnN0YWxsX3B1cmVsaWIgb3IgaW5zdGFsbF9wbGF0bGliLCBkZXBlbmRpbmcgb24gd2hldGhlciB0aGlzCisgICAgICAgICMgbW9kdWxlIGRpc3RyaWJ1dGlvbiBpcyBwdXJlIG9yIG5vdC4gIE9mIGNvdXJzZSwgaWYgdGhlIHVzZXIKKyAgICAgICAgIyBhbHJlYWR5IHNwZWNpZmllZCBpbnN0YWxsX2xpYiwgdXNlIHRoZWlyIHNlbGVjdGlvbi4KKyAgICAgICAgaWYgc2VsZi5pbnN0YWxsX2xpYiBpcyBOb25lOgorICAgICAgICAgICAgaWYgc2VsZi5kaXN0cmlidXRpb24uZXh0X21vZHVsZXM6ICAjIGhhcyBleHRlbnNpb25zOiBub24tcHVyZQorICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9saWIgPSBzZWxmLmluc3RhbGxfcGxhdGxpYgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmluc3RhbGxfbGliID0gc2VsZi5pbnN0YWxsX3B1cmVsaWIKKworICAgICAgICAjIENvbnZlcnQgZGlyZWN0b3JpZXMgZnJvbSBVbml4IC8tc2VwYXJhdGVkIHN5bnRheCB0byB0aGUgbG9jYWwKKyAgICAgICAgIyBjb252ZW50aW9uLgorICAgICAgICBzZWxmLmNvbnZlcnRfcGF0aHMoJ2xpYicsICdwdXJlbGliJywgJ3BsYXRsaWInLCAnc2NyaXB0cycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGF0YScsICdoZWFkZXJzJywgJ3VzZXJiYXNlJywgJ3VzZXJzaXRlJykKKworICAgICAgICAjIFdlbGwsIHdlJ3JlIG5vdCBhY3R1YWxseSBmdWxseSBjb21wbGV0ZWx5IGZpbmFsaXplZCB5ZXQ6IHdlIHN0aWxsCisgICAgICAgICMgaGF2ZSB0byBkZWFsIHdpdGggJ2V4dHJhX3BhdGgnLCB3aGljaCBpcyB0aGUgaGFjayBmb3IgYWxsb3dpbmcKKyAgICAgICAgIyBub24tcGFja2FnaXplZCBtb2R1bGUgZGlzdHJpYnV0aW9ucyAoaGVsbG8sIE51bWVyaWNhbCBQeXRob24hKSB0bworICAgICAgICAjIGdldCB0aGVpciBvd24gZGlyZWN0b3JpZXMuCisgICAgICAgIHNlbGYuaGFuZGxlX2V4dHJhX3BhdGgoKQorICAgICAgICBzZWxmLmluc3RhbGxfbGliYmFzZSA9IHNlbGYuaW5zdGFsbF9saWIgICMgbmVlZGVkIGZvciAucHRoIGZpbGUKKyAgICAgICAgc2VsZi5pbnN0YWxsX2xpYiA9IG9zLnBhdGguam9pbihzZWxmLmluc3RhbGxfbGliLCBzZWxmLmV4dHJhX2RpcnMpCisKKyAgICAgICAgIyBJZiBhIG5ldyByb290IGRpcmVjdG9yeSB3YXMgc3VwcGxpZWQsIG1ha2UgYWxsIHRoZSBpbnN0YWxsYXRpb24KKyAgICAgICAgIyBkaXJzIHJlbGF0aXZlIHRvIGl0LgorICAgICAgICBpZiBzZWxmLnJvb3QgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmNoYW5nZV9yb290cygnbGliYmFzZScsICdsaWInLCAncHVyZWxpYicsICdwbGF0bGliJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzY3JpcHRzJywgJ2RhdGEnLCAnaGVhZGVycycpCisKKyAgICAgICAgc2VsZi5kdW1wX2RpcnMoImFmdGVyIHByZXBlbmRpbmcgcm9vdCIpCisKKyAgICAgICAgIyBGaW5kIG91dCB0aGUgYnVpbGQgZGlyZWN0b3JpZXMsIGllLiB3aGVyZSB0byBpbnN0YWxsIGZyb20uCisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdidWlsZCcsICdidWlsZF9iYXNlJywgJ2J1aWxkX2xpYicpCisKKyAgICAgICAgIyBQdW50IG9uIGRvYyBkaXJlY3RvcmllcyBmb3Igbm93IC0tIGFmdGVyIGFsbCwgd2UncmUgcHVudGluZyBvbgorICAgICAgICAjIGRvY3VtZW50YXRpb24gY29tcGxldGVseSEKKworICAgICAgICBpZiBzZWxmLm5vX2Rpc3RpbmZvIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLm5vX2Rpc3RpbmZvID0gRmFsc2UKKworICAgIGRlZiBmaW5hbGl6ZV91bml4KHNlbGYpOgorICAgICAgICAiIiJGaW5hbGl6ZSBvcHRpb25zIGZvciBwb3NpeCBwbGF0Zm9ybXMuIiIiCisgICAgICAgIGlmIHNlbGYuaW5zdGFsbF9iYXNlIGlzIG5vdCBOb25lIG9yIHNlbGYuaW5zdGFsbF9wbGF0YmFzZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIGlmICgoc2VsZi5pbnN0YWxsX2xpYiBpcyBOb25lIGFuZAorICAgICAgICAgICAgICAgICBzZWxmLmluc3RhbGxfcHVyZWxpYiBpcyBOb25lIGFuZAorICAgICAgICAgICAgICAgICBzZWxmLmluc3RhbGxfcGxhdGxpYiBpcyBOb25lKSBvcgorICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9oZWFkZXJzIGlzIE5vbmUgb3IKKyAgICAgICAgICAgICAgICBzZWxmLmluc3RhbGxfc2NyaXB0cyBpcyBOb25lIG9yCisgICAgICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2RhdGEgaXMgTm9uZSk6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICJpbnN0YWxsLWJhc2Ugb3IgaW5zdGFsbC1wbGF0YmFzZSBzdXBwbGllZCwgYnV0ICIKKyAgICAgICAgICAgICAgICAgICAgImluc3RhbGxhdGlvbiBzY2hlbWUgaXMgaW5jb21wbGV0ZSIpCisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBpZiBzZWxmLnVzZXI6CisgICAgICAgICAgICBpZiBzZWxmLmluc3RhbGxfdXNlcmJhc2UgaXMgTm9uZToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKAorICAgICAgICAgICAgICAgICAgICAidXNlciBiYXNlIGRpcmVjdG9yeSBpcyBub3Qgc3BlY2lmaWVkIikKKyAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9iYXNlID0gc2VsZi5pbnN0YWxsX3BsYXRiYXNlID0gc2VsZi5pbnN0YWxsX3VzZXJiYXNlCisgICAgICAgICAgICBzZWxmLnNlbGVjdF9zY2hlbWUoInBvc2l4X3VzZXIiKQorICAgICAgICBlbGlmIHNlbGYuaG9tZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9iYXNlID0gc2VsZi5pbnN0YWxsX3BsYXRiYXNlID0gc2VsZi5ob21lCisgICAgICAgICAgICBzZWxmLnNlbGVjdF9zY2hlbWUoInBvc2l4X2hvbWUiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgaWYgc2VsZi5wcmVmaXggaXMgTm9uZToKKyAgICAgICAgICAgICAgICBpZiBzZWxmLmV4ZWNfcHJlZml4IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IG5vdCBzdXBwbHkgZXhlYy1wcmVmaXggd2l0aG91dCBwcmVmaXgiKQorCisgICAgICAgICAgICAgICAgc2VsZi5wcmVmaXggPSBvcy5wYXRoLm5vcm1wYXRoKHN5cy5wcmVmaXgpCisgICAgICAgICAgICAgICAgc2VsZi5leGVjX3ByZWZpeCA9IG9zLnBhdGgubm9ybXBhdGgoc3lzLmV4ZWNfcHJlZml4KQorCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuZXhlY19wcmVmaXggaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5leGVjX3ByZWZpeCA9IHNlbGYucHJlZml4CisKKyAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9iYXNlID0gc2VsZi5wcmVmaXgKKyAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9wbGF0YmFzZSA9IHNlbGYuZXhlY19wcmVmaXgKKyAgICAgICAgICAgIHNlbGYuc2VsZWN0X3NjaGVtZSgicG9zaXhfcHJlZml4IikKKworICAgIGRlZiBmaW5hbGl6ZV9vdGhlcihzZWxmKToKKyAgICAgICAgIiIiRmluYWxpemUgb3B0aW9ucyBmb3Igbm9uLXBvc2l4IHBsYXRmb3JtcyIiIgorICAgICAgICBpZiBzZWxmLnVzZXI6CisgICAgICAgICAgICBpZiBzZWxmLmluc3RhbGxfdXNlcmJhc2UgaXMgTm9uZToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKAorICAgICAgICAgICAgICAgICAgICAidXNlciBiYXNlIGRpcmVjdG9yeSBpcyBub3Qgc3BlY2lmaWVkIikKKyAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9iYXNlID0gc2VsZi5pbnN0YWxsX3BsYXRiYXNlID0gc2VsZi5pbnN0YWxsX3VzZXJiYXNlCisgICAgICAgICAgICBzZWxmLnNlbGVjdF9zY2hlbWUob3MubmFtZSArICJfdXNlciIpCisgICAgICAgIGVsaWYgc2VsZi5ob21lIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2Jhc2UgPSBzZWxmLmluc3RhbGxfcGxhdGJhc2UgPSBzZWxmLmhvbWUKKyAgICAgICAgICAgIHNlbGYuc2VsZWN0X3NjaGVtZSgicG9zaXhfaG9tZSIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBzZWxmLnByZWZpeCBpcyBOb25lOgorICAgICAgICAgICAgICAgIHNlbGYucHJlZml4ID0gb3MucGF0aC5ub3JtcGF0aChzeXMucHJlZml4KQorCisgICAgICAgICAgICBzZWxmLmluc3RhbGxfYmFzZSA9IHNlbGYuaW5zdGFsbF9wbGF0YmFzZSA9IHNlbGYucHJlZml4CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zZWxlY3Rfc2NoZW1lKG9zLm5hbWUpCisgICAgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigKKyAgICAgICAgICAgICAgICAgICAgIm5vIHN1cHBvcnQgZm9yIGluc3RhbGxhdGlvbiBvbiAnJXMnIiAlIG9zLm5hbWUpCisKKyAgICBkZWYgZHVtcF9kaXJzKHNlbGYsIG1zZyk6CisgICAgICAgICIiIkR1bXAgdGhlIGxpc3Qgb2YgdXNlciBvcHRpb25zLiIiIgorICAgICAgICBsb2dnZXIuZGVidWcobXNnICsgIjoiKQorICAgICAgICBmb3Igb3B0IGluIHNlbGYudXNlcl9vcHRpb25zOgorICAgICAgICAgICAgb3B0X25hbWUgPSBvcHRbMF0KKyAgICAgICAgICAgIGlmIG9wdF9uYW1lWy0xXSA9PSAiPSI6CisgICAgICAgICAgICAgICAgb3B0X25hbWUgPSBvcHRfbmFtZVswOi0xXQorICAgICAgICAgICAgaWYgb3B0X25hbWUgaW4gc2VsZi5uZWdhdGl2ZV9vcHQ6CisgICAgICAgICAgICAgICAgb3B0X25hbWUgPSBzZWxmLm5lZ2F0aXZlX29wdFtvcHRfbmFtZV0KKyAgICAgICAgICAgICAgICBvcHRfbmFtZSA9IG9wdF9uYW1lLnJlcGxhY2UoJy0nLCAnXycpCisgICAgICAgICAgICAgICAgdmFsID0gbm90IGdldGF0dHIoc2VsZiwgb3B0X25hbWUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG9wdF9uYW1lID0gb3B0X25hbWUucmVwbGFjZSgnLScsICdfJykKKyAgICAgICAgICAgICAgICB2YWwgPSBnZXRhdHRyKHNlbGYsIG9wdF9uYW1lKQorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCIgICVzOiAlcyIsIG9wdF9uYW1lLCB2YWwpCisKKyAgICBkZWYgc2VsZWN0X3NjaGVtZShzZWxmLCBuYW1lKToKKyAgICAgICAgIiIiU2V0IHRoZSBpbnN0YWxsIGRpcmVjdG9yaWVzIGJ5IGFwcGx5aW5nIHRoZSBpbnN0YWxsIHNjaGVtZXMuIiIiCisgICAgICAgICMgaXQncyB0aGUgY2FsbGVyJ3MgcHJvYmxlbSBpZiB0aGV5IHN1cHBseSBhIGJhZCBuYW1lIQorICAgICAgICBzY2hlbWUgPSBnZXRfcGF0aHMobmFtZSwgZXhwYW5kPUZhbHNlKQorICAgICAgICBmb3Iga2V5LCB2YWx1ZSBpbiBzY2hlbWUuaXRlbXMoKToKKyAgICAgICAgICAgIGlmIGtleSA9PSAncGxhdGluY2x1ZGUnOgorICAgICAgICAgICAgICAgIGtleSA9ICdoZWFkZXJzJworICAgICAgICAgICAgICAgIHZhbHVlID0gb3MucGF0aC5qb2luKHZhbHVlLCBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YVsnTmFtZSddKQorICAgICAgICAgICAgYXR0cm5hbWUgPSAnaW5zdGFsbF8nICsga2V5CisgICAgICAgICAgICBpZiBoYXNhdHRyKHNlbGYsIGF0dHJuYW1lKToKKyAgICAgICAgICAgICAgICBpZiBnZXRhdHRyKHNlbGYsIGF0dHJuYW1lKSBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICBzZXRhdHRyKHNlbGYsIGF0dHJuYW1lLCB2YWx1ZSkKKworICAgIGRlZiBfZXhwYW5kX2F0dHJzKHNlbGYsIGF0dHJzKToKKyAgICAgICAgZm9yIGF0dHIgaW4gYXR0cnM6CisgICAgICAgICAgICB2YWwgPSBnZXRhdHRyKHNlbGYsIGF0dHIpCisgICAgICAgICAgICBpZiB2YWwgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgaWYgb3MubmFtZSA9PSAncG9zaXgnIG9yIG9zLm5hbWUgPT0gJ250JzoKKyAgICAgICAgICAgICAgICAgICAgdmFsID0gb3MucGF0aC5leHBhbmR1c2VyKHZhbCkKKyAgICAgICAgICAgICAgICAjIHNlZSBpZiB3ZSB3YW50IHRvIHB1c2ggdGhpcyB3b3JrIGluIHN5c2NvbmZpZyBYWFgKKyAgICAgICAgICAgICAgICB2YWwgPSBzeXNjb25maWcuX3N1YnN0X3ZhcnModmFsLCBzZWxmLmNvbmZpZ192YXJzKQorICAgICAgICAgICAgICAgIHNldGF0dHIoc2VsZiwgYXR0ciwgdmFsKQorCisgICAgZGVmIGV4cGFuZF9iYXNlZGlycyhzZWxmKToKKyAgICAgICAgIiIiQ2FsbCBgb3MucGF0aC5leHBhbmR1c2VyYCBvbiBpbnN0YWxsX3tiYXNlLHBsYXRiYXNlfSBhbmQgcm9vdC4iIiIKKyAgICAgICAgc2VsZi5fZXhwYW5kX2F0dHJzKFsnaW5zdGFsbF9iYXNlJywgJ2luc3RhbGxfcGxhdGJhc2UnLCAncm9vdCddKQorCisgICAgZGVmIGV4cGFuZF9kaXJzKHNlbGYpOgorICAgICAgICAiIiJDYWxsIGBvcy5wYXRoLmV4cGFuZHVzZXJgIG9uIGluc3RhbGwgZGlycy4iIiIKKyAgICAgICAgc2VsZi5fZXhwYW5kX2F0dHJzKFsnaW5zdGFsbF9wdXJlbGliJywgJ2luc3RhbGxfcGxhdGxpYicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2luc3RhbGxfbGliJywgJ2luc3RhbGxfaGVhZGVycycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2luc3RhbGxfc2NyaXB0cycsICdpbnN0YWxsX2RhdGEnXSkKKworICAgIGRlZiBjb252ZXJ0X3BhdGhzKHNlbGYsICpuYW1lcyk6CisgICAgICAgICIiIkNhbGwgYGNvbnZlcnRfcGF0aGAgb3ZlciBgbmFtZXNgLiIiIgorICAgICAgICBmb3IgbmFtZSBpbiBuYW1lczoKKyAgICAgICAgICAgIGF0dHIgPSAiaW5zdGFsbF8iICsgbmFtZQorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBhdHRyLCBjb252ZXJ0X3BhdGgoZ2V0YXR0cihzZWxmLCBhdHRyKSkpCisKKyAgICBkZWYgaGFuZGxlX2V4dHJhX3BhdGgoc2VsZik6CisgICAgICAgICIiIlNldCBgcGF0aF9maWxlYCBhbmQgYGV4dHJhX2RpcnNgIHVzaW5nIGBleHRyYV9wYXRoYC4iIiIKKyAgICAgICAgaWYgc2VsZi5leHRyYV9wYXRoIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmV4dHJhX3BhdGggPSBzZWxmLmRpc3RyaWJ1dGlvbi5leHRyYV9wYXRoCisKKyAgICAgICAgaWYgc2VsZi5leHRyYV9wYXRoIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShzZWxmLmV4dHJhX3BhdGgsIHN0cik6CisgICAgICAgICAgICAgICAgc2VsZi5leHRyYV9wYXRoID0gc2VsZi5leHRyYV9wYXRoLnNwbGl0KCcsJykKKworICAgICAgICAgICAgaWYgbGVuKHNlbGYuZXh0cmFfcGF0aCkgPT0gMToKKyAgICAgICAgICAgICAgICBwYXRoX2ZpbGUgPSBleHRyYV9kaXJzID0gc2VsZi5leHRyYV9wYXRoWzBdCisgICAgICAgICAgICBlbGlmIGxlbihzZWxmLmV4dHJhX3BhdGgpID09IDI6CisgICAgICAgICAgICAgICAgcGF0aF9maWxlLCBleHRyYV9kaXJzID0gc2VsZi5leHRyYV9wYXRoCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICAgICAiJ2V4dHJhX3BhdGgnIG9wdGlvbiBtdXN0IGJlIGEgbGlzdCwgdHVwbGUsIG9yICIKKyAgICAgICAgICAgICAgICAgICAgImNvbW1hLXNlcGFyYXRlZCBzdHJpbmcgd2l0aCAxIG9yIDIgZWxlbWVudHMiKQorCisgICAgICAgICAgICAjIGNvbnZlcnQgdG8gbG9jYWwgZm9ybSBpbiBjYXNlIFVuaXggbm90YXRpb24gdXNlZCAoYXMgaXQKKyAgICAgICAgICAgICMgc2hvdWxkIGJlIGluIHNldHVwIHNjcmlwdHMpCisgICAgICAgICAgICBleHRyYV9kaXJzID0gY29udmVydF9wYXRoKGV4dHJhX2RpcnMpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBwYXRoX2ZpbGUgPSBOb25lCisgICAgICAgICAgICBleHRyYV9kaXJzID0gJycKKworICAgICAgICAjIFhYWCBzaG91bGQgd2Ugd2FybiBpZiBwYXRoX2ZpbGUgYW5kIG5vdCBleHRyYV9kaXJzPyAoaW4gd2hpY2gKKyAgICAgICAgIyBjYXNlIHRoZSBwYXRoIGZpbGUgd291bGQgYmUgaGFybWxlc3MgYnV0IHBvaW50bGVzcykKKyAgICAgICAgc2VsZi5wYXRoX2ZpbGUgPSBwYXRoX2ZpbGUKKyAgICAgICAgc2VsZi5leHRyYV9kaXJzID0gZXh0cmFfZGlycworCisgICAgZGVmIGNoYW5nZV9yb290cyhzZWxmLCAqbmFtZXMpOgorICAgICAgICAiIiJDaGFuZ2UgdGhlIGluc3RhbGwgZGlyZWNvcmllcyBwb2ludGVkIGJ5IG5hbWUgdXNpbmcgcm9vdC4iIiIKKyAgICAgICAgZm9yIG5hbWUgaW4gbmFtZXM6CisgICAgICAgICAgICBhdHRyID0gImluc3RhbGxfIiArIG5hbWUKKyAgICAgICAgICAgIHNldGF0dHIoc2VsZiwgYXR0ciwgY2hhbmdlX3Jvb3Qoc2VsZi5yb290LCBnZXRhdHRyKHNlbGYsIGF0dHIpKSkKKworICAgIGRlZiBjcmVhdGVfdXNlcl9kaXJzKHNlbGYpOgorICAgICAgICAiIiJDcmVhdGUgZGlyZWN0b3JpZXMgdW5kZXIgVVNFUkJBU0UgYXMgbmVlZGVkLiIiIgorICAgICAgICBob21lID0gY29udmVydF9wYXRoKG9zLnBhdGguZXhwYW5kdXNlcigifiIpKQorICAgICAgICBmb3IgbmFtZSwgcGF0aCBpbiBzZWxmLmNvbmZpZ192YXJzLml0ZW1zKCk6CisgICAgICAgICAgICBpZiBwYXRoLnN0YXJ0c3dpdGgoaG9tZSkgYW5kIG5vdCBvcy5wYXRoLmlzZGlyKHBhdGgpOgorICAgICAgICAgICAgICAgIG9zLm1ha2VkaXJzKHBhdGgsIDBvNzAwKQorCisgICAgIyAtLSBDb21tYW5kIGV4ZWN1dGlvbiBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgICIiIlJ1bnMgdGhlIGNvbW1hbmQuIiIiCisgICAgICAgICMgT2J2aW91c2x5IGhhdmUgdG8gYnVpbGQgYmVmb3JlIHdlIGNhbiBpbnN0YWxsCisgICAgICAgIGlmIG5vdCBzZWxmLnNraXBfYnVpbGQ6CisgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKCdidWlsZCcpCisgICAgICAgICAgICAjIElmIHdlIGJ1aWx0IGZvciBhbnkgb3RoZXIgcGxhdGZvcm0sIHdlIGNhbid0IGluc3RhbGwuCisgICAgICAgICAgICBidWlsZF9wbGF0ID0gc2VsZi5kaXN0cmlidXRpb24uZ2V0X2NvbW1hbmRfb2JqKCdidWlsZCcpLnBsYXRfbmFtZQorICAgICAgICAgICAgIyBjaGVjayB3YXJuX2RpciAtIGl0IGlzIGEgY2x1ZSB0aGF0IHRoZSAnaW5zdGFsbF9kaXN0JyBpcyBoYXBwZW5pbmcKKyAgICAgICAgICAgICMgaW50ZXJuYWxseSwgYW5kIG5vdCB0byBzeXMucGF0aCwgc28gd2UgZG9uJ3QgY2hlY2sgdGhlIHBsYXRmb3JtCisgICAgICAgICAgICAjIG1hdGNoZXMgd2hhdCB3ZSBhcmUgcnVubmluZy4KKyAgICAgICAgICAgIGlmIHNlbGYud2Fybl9kaXIgYW5kIGJ1aWxkX3BsYXQgIT0gZ2V0X3BsYXRmb3JtKCk6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiQ2FuJ3QgaW5zdGFsbCB3aGVuICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjcm9zcy1jb21waWxpbmciKQorCisgICAgICAgICMgUnVuIGFsbCBzdWItY29tbWFuZHMgKGF0IGxlYXN0IHRob3NlIHRoYXQgbmVlZCB0byBiZSBydW4pCisgICAgICAgIGZvciBjbWRfbmFtZSBpbiBzZWxmLmdldF9zdWJfY29tbWFuZHMoKToKKyAgICAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQoY21kX25hbWUpCisKKyAgICAgICAgaWYgc2VsZi5wYXRoX2ZpbGU6CisgICAgICAgICAgICBzZWxmLmNyZWF0ZV9wYXRoX2ZpbGUoKQorCisgICAgICAgICMgd3JpdGUgbGlzdCBvZiBpbnN0YWxsZWQgZmlsZXMsIGlmIHJlcXVlc3RlZC4KKyAgICAgICAgaWYgc2VsZi5yZWNvcmQ6CisgICAgICAgICAgICBvdXRwdXRzID0gc2VsZi5nZXRfb3V0cHV0cygpCisgICAgICAgICAgICBpZiBzZWxmLnJvb3Q6ICAgICAgICAgICAgICAgIyBzdHJpcCBhbnkgcGFja2FnZSBwcmVmaXgKKyAgICAgICAgICAgICAgICByb290X2xlbiA9IGxlbihzZWxmLnJvb3QpCisgICAgICAgICAgICAgICAgZm9yIGNvdW50ZXIgaW4gcmFuZ2UobGVuKG91dHB1dHMpKToKKyAgICAgICAgICAgICAgICAgICAgb3V0cHV0c1tjb3VudGVyXSA9IG91dHB1dHNbY291bnRlcl1bcm9vdF9sZW46XQorICAgICAgICAgICAgc2VsZi5leGVjdXRlKHdyaXRlX2ZpbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgKHNlbGYucmVjb3JkLCBvdXRwdXRzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAid3JpdGluZyBsaXN0IG9mIGluc3RhbGxlZCBmaWxlcyB0byAnJXMnIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5yZWNvcmQpCisKKyAgICAgICAgbm9ybXBhdGgsIG5vcm1jYXNlID0gb3MucGF0aC5ub3JtcGF0aCwgb3MucGF0aC5ub3JtY2FzZQorICAgICAgICBzeXNfcGF0aCA9IFtub3JtY2FzZShub3JtcGF0aChwKSkgZm9yIHAgaW4gc3lzLnBhdGhdCisgICAgICAgIGluc3RhbGxfbGliID0gbm9ybWNhc2Uobm9ybXBhdGgoc2VsZi5pbnN0YWxsX2xpYikpCisgICAgICAgIGlmIChzZWxmLndhcm5fZGlyIGFuZAorICAgICAgICAgICAgbm90IChzZWxmLnBhdGhfZmlsZSBhbmQgc2VsZi5pbnN0YWxsX3BhdGhfZmlsZSkgYW5kCisgICAgICAgICAgICBpbnN0YWxsX2xpYiBub3QgaW4gc3lzX3BhdGgpOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCgibW9kdWxlcyBpbnN0YWxsZWQgdG8gJyVzJywgd2hpY2ggaXMgbm90IGluICIKKyAgICAgICAgICAgICAgICAgICAgICAgIlB5dGhvbidzIG1vZHVsZSBzZWFyY2ggcGF0aCAoc3lzLnBhdGgpIC0tICIKKyAgICAgICAgICAgICAgICAgICAgICAgInlvdSdsbCBoYXZlIHRvIGNoYW5nZSB0aGUgc2VhcmNoIHBhdGggeW91cnNlbGYiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2xpYikKKworICAgIGRlZiBjcmVhdGVfcGF0aF9maWxlKHNlbGYpOgorICAgICAgICAiIiJDcmVhdGVzIHRoZSAucHRoIGZpbGUiIiIKKyAgICAgICAgZmlsZW5hbWUgPSBvcy5wYXRoLmpvaW4oc2VsZi5pbnN0YWxsX2xpYmJhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYucGF0aF9maWxlICsgIi5wdGgiKQorICAgICAgICBpZiBzZWxmLmluc3RhbGxfcGF0aF9maWxlOgorICAgICAgICAgICAgc2VsZi5leGVjdXRlKHdyaXRlX2ZpbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgKGZpbGVuYW1lLCBbc2VsZi5leHRyYV9kaXJzXSksCisgICAgICAgICAgICAgICAgICAgICAgICAgImNyZWF0aW5nICVzIiAlIGZpbGVuYW1lKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoJyVzOiBwYXRoIGZpbGUgJXIgbm90IGNyZWF0ZWQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5nZXRfY29tbWFuZF9uYW1lKCksICBmaWxlbmFtZSkKKworICAgICMgLS0gUmVwb3J0aW5nIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgZ2V0X291dHB1dHMoc2VsZik6CisgICAgICAgICIiIkFzc2VtYmxlcyB0aGUgb3V0cHV0cyBvZiBhbGwgdGhlIHN1Yi1jb21tYW5kcy4iIiIKKyAgICAgICAgb3V0cHV0cyA9IFtdCisgICAgICAgIGZvciBjbWRfbmFtZSBpbiBzZWxmLmdldF9zdWJfY29tbWFuZHMoKToKKyAgICAgICAgICAgIGNtZCA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKGNtZF9uYW1lKQorICAgICAgICAgICAgIyBBZGQgdGhlIGNvbnRlbnRzIG9mIGNtZC5nZXRfb3V0cHV0cygpLCBlbnN1cmluZworICAgICAgICAgICAgIyB0aGF0IG91dHB1dHMgZG9lc24ndCBjb250YWluIGR1cGxpY2F0ZSBlbnRyaWVzCisgICAgICAgICAgICBmb3IgZmlsZW5hbWUgaW4gY21kLmdldF9vdXRwdXRzKCk6CisgICAgICAgICAgICAgICAgaWYgZmlsZW5hbWUgbm90IGluIG91dHB1dHM6CisgICAgICAgICAgICAgICAgICAgIG91dHB1dHMuYXBwZW5kKGZpbGVuYW1lKQorCisgICAgICAgIGlmIHNlbGYucGF0aF9maWxlIGFuZCBzZWxmLmluc3RhbGxfcGF0aF9maWxlOgorICAgICAgICAgICAgb3V0cHV0cy5hcHBlbmQob3MucGF0aC5qb2luKHNlbGYuaW5zdGFsbF9saWJiYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYucGF0aF9maWxlICsgIi5wdGgiKSkKKworICAgICAgICByZXR1cm4gb3V0cHV0cworCisgICAgZGVmIGdldF9pbnB1dHMoc2VsZik6CisgICAgICAgICIiIlJldHVybnMgdGhlIGlucHV0cyBvZiBhbGwgdGhlIHN1Yi1jb21tYW5kcyIiIgorICAgICAgICAjIFhYWCBnZWUsIHRoaXMgbG9va3MgZmFtaWxpYXIgOy0oCisgICAgICAgIGlucHV0cyA9IFtdCisgICAgICAgIGZvciBjbWRfbmFtZSBpbiBzZWxmLmdldF9zdWJfY29tbWFuZHMoKToKKyAgICAgICAgICAgIGNtZCA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKGNtZF9uYW1lKQorICAgICAgICAgICAgaW5wdXRzLmV4dGVuZChjbWQuZ2V0X2lucHV0cygpKQorCisgICAgICAgIHJldHVybiBpbnB1dHMKKworICAgICMgLS0gUHJlZGljYXRlcyBmb3Igc3ViLWNvbW1hbmQgbGlzdCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgaGFzX2xpYihzZWxmKToKKyAgICAgICAgIiIiUmV0dXJucyB0cnVlIGlmIHRoZSBjdXJyZW50IGRpc3RyaWJ1dGlvbiBoYXMgYW55IFB5dGhvbgorICAgICAgICBtb2R1bGVzIHRvIGluc3RhbGwuIiIiCisgICAgICAgIHJldHVybiAoc2VsZi5kaXN0cmlidXRpb24uaGFzX3B1cmVfbW9kdWxlcygpIG9yCisgICAgICAgICAgICAgICAgc2VsZi5kaXN0cmlidXRpb24uaGFzX2V4dF9tb2R1bGVzKCkpCisKKyAgICBkZWYgaGFzX2hlYWRlcnMoc2VsZik6CisgICAgICAgICIiIlJldHVybnMgdHJ1ZSBpZiB0aGUgY3VycmVudCBkaXN0cmlidXRpb24gaGFzIGFueSBoZWFkZXJzIHRvCisgICAgICAgIGluc3RhbGwuIiIiCisgICAgICAgIHJldHVybiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfaGVhZGVycygpCisKKyAgICBkZWYgaGFzX3NjcmlwdHMoc2VsZik6CisgICAgICAgICIiIlJldHVybnMgdHJ1ZSBpZiB0aGUgY3VycmVudCBkaXN0cmlidXRpb24gaGFzIGFueSBzY3JpcHRzIHRvLgorICAgICAgICBpbnN0YWxsLiIiIgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uaGFzX3NjcmlwdHMoKQorCisgICAgZGVmIGhhc19kYXRhKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm5zIHRydWUgaWYgdGhlIGN1cnJlbnQgZGlzdHJpYnV0aW9uIGhhcyBhbnkgZGF0YSB0by4KKyAgICAgICAgaW5zdGFsbC4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19kYXRhX2ZpbGVzKCkKKworICAgICMgJ3N1Yl9jb21tYW5kcyc6IGEgbGlzdCBvZiBjb21tYW5kcyB0aGlzIGNvbW1hbmQgbWlnaHQgaGF2ZSB0byBydW4gdG8KKyAgICAjIGdldCBpdHMgd29yayBkb25lLiAgU2VlIGNtZC5weSBmb3IgbW9yZSBpbmZvLgorICAgIHN1Yl9jb21tYW5kcyA9IFsoJ2luc3RhbGxfbGliJywgaGFzX2xpYiksCisgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbF9oZWFkZXJzJywgaGFzX2hlYWRlcnMpLAorICAgICAgICAgICAgICAgICAgICAoJ2luc3RhbGxfc2NyaXB0cycsIGhhc19zY3JpcHRzKSwKKyAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsX2RhdGEnLCBoYXNfZGF0YSksCisgICAgICAgICAgICAgICAgICAgICMga2VlcCBpbnN0YWxsX2Rpc3RpbmZvIGxhc3QsIGFzIGl0IG5lZWRzIHRoZSByZWNvcmQKKyAgICAgICAgICAgICAgICAgICAgIyB3aXRoIGZpbGVzIHRvIGJlIGNvbXBsZXRlbHkgZ2VuZXJhdGVkCisgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbF9kaXN0aW5mbycsIGxhbWJkYSBzZWxmOiBub3Qgc2VsZi5ub19kaXN0aW5mbyksCisgICAgICAgICAgICAgICAgICAgXQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfZGlzdGluZm8ucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9kaXN0aW5mby5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNDk3MjlmCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfZGlzdGluZm8ucHkKQEAgLTAsMCArMSwxNDMgQEAKKyIiIkNyZWF0ZSB0aGUgUEVQIDM3Ni1jb21wbGlhbnQgLmRpc3QtaW5mbyBkaXJlY3RvcnkuIiIiCisKKyMgRm9ya2VkIGZyb20gdGhlIGZvcm1lciBpbnN0YWxsX2VnZ19pbmZvIGNvbW1hbmQgYnkgSm9zaXAgRGpvbG9uZ2EKKworaW1wb3J0IG9zCitpbXBvcnQgY3N2CitpbXBvcnQgaGFzaGxpYgorZnJvbSBzaHV0aWwgaW1wb3J0IHJtdHJlZQorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorCisKK2NsYXNzIGluc3RhbGxfZGlzdGluZm8oQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICdjcmVhdGUgYSAuZGlzdC1pbmZvIGRpcmVjdG9yeSBmb3IgdGhlIGRpc3RyaWJ1dGlvbicKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdpbnN0YWxsLWRpcj0nLCBOb25lLAorICAgICAgICAgImRpcmVjdG9yeSB3aGVyZSB0aGUgdGhlIC5kaXN0LWluZm8gZGlyZWN0b3J5IHdpbGwgYmUgY3JlYXRlZCIpLAorICAgICAgICAoJ2luc3RhbGxlcj0nLCBOb25lLAorICAgICAgICAgInRoZSBuYW1lIG9mIHRoZSBpbnN0YWxsZXIiKSwKKyAgICAgICAgKCdyZXF1ZXN0ZWQnLCBOb25lLAorICAgICAgICAgImdlbmVyYXRlIGEgUkVRVUVTVEVEIGZpbGUiKSwKKyAgICAgICAgKCduby1yZXF1ZXN0ZWQnLCBOb25lLAorICAgICAgICAgImRvIG5vdCBnZW5lcmF0ZSBhIFJFUVVFU1RFRCBmaWxlIiksCisgICAgICAgICgnbm8tcmVjb3JkJywgTm9uZSwKKyAgICAgICAgICJkbyBub3QgZ2VuZXJhdGUgYSBSRUNPUkQgZmlsZSIpLAorICAgICAgICAoJ25vLXJlc291cmNlcycsIE5vbmUsCisgICAgICAgICAiZG8gbm90IGdlbmVyYXRlIGEgUkVTT1VSQ0VTIGZpbGUiKSwKKyAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ3JlcXVlc3RlZCcsICduby1yZWNvcmQnLCAnbm8tcmVzb3VyY2VzJ10KKworICAgIG5lZ2F0aXZlX29wdCA9IHsnbm8tcmVxdWVzdGVkJzogJ3JlcXVlc3RlZCd9CisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmluc3RhbGxfZGlyID0gTm9uZQorICAgICAgICBzZWxmLmluc3RhbGxlciA9IE5vbmUKKyAgICAgICAgc2VsZi5yZXF1ZXN0ZWQgPSBOb25lCisgICAgICAgIHNlbGYubm9fcmVjb3JkID0gTm9uZQorICAgICAgICBzZWxmLm5vX3Jlc291cmNlcyA9IE5vbmUKKyAgICAgICAgc2VsZi5vdXRmaWxlcyA9IFtdCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2luc3RhbGxfZGlzdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbnN0YWxsZXInLCAncmVxdWVzdGVkJywgJ25vX3JlY29yZCcpCisKKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2luc3RhbGxfbGliJywgJ2luc3RhbGxfZGlyJykKKworICAgICAgICBpZiBzZWxmLmluc3RhbGxlciBpcyBOb25lOgorICAgICAgICAgICAgIyBGSVhNRSBkaXN0dXRpbHMgb3IgcGFja2FnaW5nPworICAgICAgICAgICAgIyArIGRvY3VtZW50IGRlZmF1bHQgaW4gdGhlIG9wdGlvbiBoZWxwIHRleHQgYWJvdmUgYW5kIGluIGluc3RhbGwKKyAgICAgICAgICAgIHNlbGYuaW5zdGFsbGVyID0gJ2Rpc3R1dGlscycKKyAgICAgICAgaWYgc2VsZi5yZXF1ZXN0ZWQgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYucmVxdWVzdGVkID0gVHJ1ZQorICAgICAgICBpZiBzZWxmLm5vX3JlY29yZCBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5ub19yZWNvcmQgPSBGYWxzZQorICAgICAgICBpZiBzZWxmLm5vX3Jlc291cmNlcyBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5ub19yZXNvdXJjZXMgPSBGYWxzZQorCisgICAgICAgIG1ldGFkYXRhID0gc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGEKKworICAgICAgICBiYXNlbmFtZSA9IG1ldGFkYXRhLmdldF9mdWxsbmFtZShmaWxlc2FmZT1UcnVlKSArICIuZGlzdC1pbmZvIgorCisgICAgICAgIHNlbGYuaW5zdGFsbF9kaXIgPSBvcy5wYXRoLmpvaW4oc2VsZi5pbnN0YWxsX2RpciwgYmFzZW5hbWUpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICB0YXJnZXQgPSBzZWxmLmluc3RhbGxfZGlyCisKKyAgICAgICAgaWYgb3MucGF0aC5pc2Rpcih0YXJnZXQpIGFuZCBub3Qgb3MucGF0aC5pc2xpbmsodGFyZ2V0KToKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICAgICAgcm10cmVlKHRhcmdldCkKKyAgICAgICAgZWxpZiBvcy5wYXRoLmV4aXN0cyh0YXJnZXQpOgorICAgICAgICAgICAgc2VsZi5leGVjdXRlKG9zLnVubGluaywgKHNlbGYuaW5zdGFsbF9kaXIsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAicmVtb3ZpbmcgIiArIHRhcmdldCkKKworICAgICAgICBzZWxmLmV4ZWN1dGUob3MubWFrZWRpcnMsICh0YXJnZXQsKSwgImNyZWF0aW5nICIgKyB0YXJnZXQpCisKKyAgICAgICAgbWV0YWRhdGFfcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLmluc3RhbGxfZGlyLCAnTUVUQURBVEEnKQorICAgICAgICBzZWxmLmV4ZWN1dGUoc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGEud3JpdGUsIChtZXRhZGF0YV9wYXRoLCksCisgICAgICAgICAgICAgICAgICAgICAiY3JlYXRpbmcgIiArIG1ldGFkYXRhX3BhdGgpCisgICAgICAgIHNlbGYub3V0ZmlsZXMuYXBwZW5kKG1ldGFkYXRhX3BhdGgpCisKKyAgICAgICAgaW5zdGFsbGVyX3BhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi5pbnN0YWxsX2RpciwgJ0lOU1RBTExFUicpCisgICAgICAgIGxvZ2dlci5pbmZvKCdjcmVhdGluZyAlcycsIGluc3RhbGxlcl9wYXRoKQorICAgICAgICBpZiBub3Qgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgd2l0aCBvcGVuKGluc3RhbGxlcl9wYXRoLCAndycpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShzZWxmLmluc3RhbGxlcikKKyAgICAgICAgc2VsZi5vdXRmaWxlcy5hcHBlbmQoaW5zdGFsbGVyX3BhdGgpCisKKyAgICAgICAgaWYgc2VsZi5yZXF1ZXN0ZWQ6CisgICAgICAgICAgICByZXF1ZXN0ZWRfcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLmluc3RhbGxfZGlyLCAnUkVRVUVTVEVEJykKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdjcmVhdGluZyAlcycsIHJlcXVlc3RlZF9wYXRoKQorICAgICAgICAgICAgaWYgbm90IHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICBvcGVuKHJlcXVlc3RlZF9wYXRoLCAnd2InKS5jbG9zZSgpCisgICAgICAgICAgICBzZWxmLm91dGZpbGVzLmFwcGVuZChyZXF1ZXN0ZWRfcGF0aCkKKworICAgICAgICBpZiBub3Qgc2VsZi5ub19yZXNvdXJjZXM6CisgICAgICAgICAgICBpbnN0YWxsX2RhdGEgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnaW5zdGFsbF9kYXRhJykKKyAgICAgICAgICAgIGlmIGluc3RhbGxfZGF0YS5nZXRfcmVzb3VyY2VzX291dCgpICE9IFtdOgorICAgICAgICAgICAgICAgIHJlc291cmNlc19wYXRoID0gb3MucGF0aC5qb2luKHNlbGYuaW5zdGFsbF9kaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1JFU09VUkNFUycpCisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgcmVzb3VyY2VzX3BhdGgpCisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICAgICAgd2l0aCBvcGVuKHJlc291cmNlc19wYXRoLCAndycpIGFzIGY6CisgICAgICAgICAgICAgICAgICAgICAgICB3cml0ZXIgPSBjc3Yud3JpdGVyKGYsIGRlbGltaXRlcj0nLCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmV0ZXJtaW5hdG9yPSdcbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1b3RlY2hhcj0nIicpCisgICAgICAgICAgICAgICAgICAgICAgICBmb3Igcm93IGluIGluc3RhbGxfZGF0YS5nZXRfcmVzb3VyY2VzX291dCgpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlci53cml0ZXJvdyhyb3cpCisKKyAgICAgICAgICAgICAgICBzZWxmLm91dGZpbGVzLmFwcGVuZChyZXNvdXJjZXNfcGF0aCkKKworICAgICAgICBpZiBub3Qgc2VsZi5ub19yZWNvcmQ6CisgICAgICAgICAgICByZWNvcmRfcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLmluc3RhbGxfZGlyLCAnUkVDT1JEJykKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdjcmVhdGluZyAlcycsIHJlY29yZF9wYXRoKQorICAgICAgICAgICAgaWYgbm90IHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICB3aXRoIG9wZW4ocmVjb3JkX3BhdGgsICd3JywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZjoKKyAgICAgICAgICAgICAgICAgICAgd3JpdGVyID0gY3N2LndyaXRlcihmLCBkZWxpbWl0ZXI9JywnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmV0ZXJtaW5hdG9yPSdcbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVvdGVjaGFyPSciJykKKworICAgICAgICAgICAgICAgICAgICBpbnN0YWxsID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2luc3RhbGxfZGlzdCcpCisKKyAgICAgICAgICAgICAgICAgICAgZm9yIGZwYXRoIGluIGluc3RhbGwuZ2V0X291dHB1dHMoKToKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIGZwYXRoLmVuZHN3aXRoKCcucHljJykgb3IgZnBhdGguZW5kc3dpdGgoJy5weW8nKToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGRvIG5vdCBwdXQgc2l6ZSBhbmQgbWQ1IGhhc2gsIGFzIGluIFBFUC0zNzYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB3cml0ZXIud3JpdGVyb3coKGZwYXRoLCAnJywgJycpKQorICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplID0gb3MucGF0aC5nZXRzaXplKGZwYXRoKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGggb3BlbihmcGF0aCwgJ3JiJykgYXMgZnA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc2ggPSBoYXNobGliLm1kNSgpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc2gudXBkYXRlKGZwLnJlYWQoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZDVzdW0gPSBoYXNoLmhleGRpZ2VzdCgpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgd3JpdGVyLndyaXRlcm93KChmcGF0aCwgbWQ1c3VtLCBzaXplKSkKKworICAgICAgICAgICAgICAgICAgICAjIGFkZCB0aGUgUkVDT1JEIGZpbGUgaXRzZWxmCisgICAgICAgICAgICAgICAgICAgIHdyaXRlci53cml0ZXJvdygocmVjb3JkX3BhdGgsICcnLCAnJykpCisgICAgICAgICAgICBzZWxmLm91dGZpbGVzLmFwcGVuZChyZWNvcmRfcGF0aCkKKworICAgIGRlZiBnZXRfb3V0cHV0cyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYub3V0ZmlsZXMKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX2hlYWRlcnMucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9oZWFkZXJzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwNDNkNmIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9oZWFkZXJzLnB5CkBAIC0wLDAgKzEsNDMgQEAKKyIiIkluc3RhbGwgQy9DKysgaGVhZGVyIGZpbGVzIHRvIHRoZSBQeXRob24gaW5jbHVkZSBkaXJlY3RvcnkuIiIiCisKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCisKKworIyBYWFggZm9yY2UgaXMgbmV2ZXIgdXNlZAorY2xhc3MgaW5zdGFsbF9oZWFkZXJzKENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAiaW5zdGFsbCBDL0MrKyBoZWFkZXIgZmlsZXMiCisKKyAgICB1c2VyX29wdGlvbnMgPSBbKCdpbnN0YWxsLWRpcj0nLCAnZCcsCisgICAgICAgICAgICAgICAgICAgICAiZGlyZWN0b3J5IHRvIGluc3RhbGwgaGVhZGVyIGZpbGVzIHRvIiksCisgICAgICAgICAgICAgICAgICAgICgnZm9yY2UnLCAnZicsCisgICAgICAgICAgICAgICAgICAgICAiZm9yY2UgaW5zdGFsbGF0aW9uIChvdmVyd3JpdGUgZXhpc3RpbmcgZmlsZXMpIiksCisgICAgICAgICAgICAgICAgICAgXQorCisgICAgYm9vbGVhbl9vcHRpb25zID0gWydmb3JjZSddCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmluc3RhbGxfZGlyID0gTm9uZQorICAgICAgICBzZWxmLmZvcmNlID0gRmFsc2UKKyAgICAgICAgc2VsZi5vdXRmaWxlcyA9IFtdCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2luc3RhbGxfZGlzdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbF9oZWFkZXJzJywgJ2luc3RhbGxfZGlyJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb3JjZScpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBoZWFkZXJzID0gc2VsZi5kaXN0cmlidXRpb24uaGVhZGVycworICAgICAgICBpZiBub3QgaGVhZGVyczoKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHNlbGYubWtwYXRoKHNlbGYuaW5zdGFsbF9kaXIpCisgICAgICAgIGZvciBoZWFkZXIgaW4gaGVhZGVyczoKKyAgICAgICAgICAgIG91dCA9IHNlbGYuY29weV9maWxlKGhlYWRlciwgc2VsZi5pbnN0YWxsX2RpcilbMF0KKyAgICAgICAgICAgIHNlbGYub3V0ZmlsZXMuYXBwZW5kKG91dCkKKworICAgIGRlZiBnZXRfaW5wdXRzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uaGVhZGVycyBvciBbXQorCisgICAgZGVmIGdldF9vdXRwdXRzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5vdXRmaWxlcwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfbGliLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfbGliLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmYzVkNDUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9saWIucHkKQEAgLTAsMCArMSwxODggQEAKKyIiIkluc3RhbGwgYWxsIG1vZHVsZXMgKGV4dGVuc2lvbnMgYW5kIHB1cmUgUHl0aG9uKS4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgaW1wCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCisKKworIyBFeHRlbnNpb24gZm9yIFB5dGhvbiBzb3VyY2UgZmlsZXMuCisjIFhYWCBkZWFkIGNvZGU/ICBtb3N0IG9mIHRoZSBjb2RlYmFzZSBjaGVja3MgZm9yIGxpdGVyYWwgJy5weScKK2lmIGhhc2F0dHIob3MsICdleHRzZXAnKToKKyAgICBQWVRIT05fU09VUkNFX0VYVEVOU0lPTiA9IG9zLmV4dHNlcCArICJweSIKK2Vsc2U6CisgICAgUFlUSE9OX1NPVVJDRV9FWFRFTlNJT04gPSAiLnB5IgorCisKK2NsYXNzIGluc3RhbGxfbGliKENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAiaW5zdGFsbCBhbGwgbW9kdWxlcyAoZXh0ZW5zaW9ucyBhbmQgcHVyZSBQeXRob24pIgorCisgICAgIyBUaGUgb3B0aW9ucyBmb3IgY29udHJvbGxpbmcgYnl0ZSBjb21waWxhdGlvbiBhcmUgdHdvIGluZGVwZW5kZW50IHNldHM6CisgICAgIyAnY29tcGlsZScgaXMgc3RyaWN0bHkgYm9vbGVhbiwgYW5kIG9ubHkgZGVjaWRlcyB3aGV0aGVyIHRvCisgICAgIyBnZW5lcmF0ZSAucHljIGZpbGVzLiAgJ29wdGltaXplJyBpcyB0aHJlZS13YXkgKDAsIDEsIG9yIDIpLCBhbmQKKyAgICAjIGRlY2lkZXMgYm90aCB3aGV0aGVyIHRvIGdlbmVyYXRlIC5weW8gZmlsZXMgYW5kIHdoYXQgbGV2ZWwgb2YKKyAgICAjIG9wdGltaXphdGlvbiB0byB1c2UuCisKKyAgICB1c2VyX29wdGlvbnMgPSBbCisgICAgICAgICgnaW5zdGFsbC1kaXI9JywgJ2QnLCAiZGlyZWN0b3J5IHRvIGluc3RhbGwgdG8iKSwKKyAgICAgICAgKCdidWlsZC1kaXI9JywgJ2InLCAiYnVpbGQgZGlyZWN0b3J5ICh3aGVyZSB0byBpbnN0YWxsIGZyb20pIiksCisgICAgICAgICgnZm9yY2UnLCAnZicsICJmb3JjZSBpbnN0YWxsYXRpb24gKG92ZXJ3cml0ZSBleGlzdGluZyBmaWxlcykiKSwKKyAgICAgICAgKCdjb21waWxlJywgJ2MnLCAiY29tcGlsZSAucHkgdG8gLnB5YyBbZGVmYXVsdF0iKSwKKyAgICAgICAgKCduby1jb21waWxlJywgTm9uZSwgImRvbid0IGNvbXBpbGUgLnB5IGZpbGVzIiksCisgICAgICAgICgnb3B0aW1pemU9JywgJ08nLAorICAgICAgICAgImFsc28gY29tcGlsZSB3aXRoIG9wdGltaXphdGlvbjogLU8xIGZvciBcInB5dGhvbiAtT1wiLCAiCisgICAgICAgICAiLU8yIGZvciBcInB5dGhvbiAtT09cIiwgYW5kIC1PMCB0byBkaXNhYmxlIFtkZWZhdWx0OiAtTzBdIiksCisgICAgICAgICgnc2tpcC1idWlsZCcsIE5vbmUsICJza2lwIHRoZSBidWlsZCBzdGVwcyIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2ZvcmNlJywgJ2NvbXBpbGUnLCAnc2tpcC1idWlsZCddCisKKyAgICBuZWdhdGl2ZV9vcHQgPSB7J25vLWNvbXBpbGUnOiAnY29tcGlsZSd9CisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICAjIGxldCB0aGUgJ2luc3RhbGxfZGlzdCcgY29tbWFuZCBkaWN0YXRlIG91ciBpbnN0YWxsYXRpb24gZGlyZWN0b3J5CisgICAgICAgIHNlbGYuaW5zdGFsbF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYuYnVpbGRfZGlyID0gTm9uZQorICAgICAgICBzZWxmLmZvcmNlID0gRmFsc2UKKyAgICAgICAgc2VsZi5jb21waWxlID0gTm9uZQorICAgICAgICBzZWxmLm9wdGltaXplID0gTm9uZQorICAgICAgICBzZWxmLnNraXBfYnVpbGQgPSBOb25lCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIyBHZXQgYWxsIHRoZSBpbmZvcm1hdGlvbiB3ZSBuZWVkIHRvIGluc3RhbGwgcHVyZSBQeXRob24gbW9kdWxlcworICAgICAgICAjIGZyb20gdGhlIHVtYnJlbGxhICdpbnN0YWxsX2Rpc3QnIGNvbW1hbmQgLS0gYnVpbGQgKHNvdXJjZSkgZGlyZWN0b3J5LAorICAgICAgICAjIGluc3RhbGwgKHRhcmdldCkgZGlyZWN0b3J5LCBhbmQgd2hldGhlciB0byBjb21waWxlIC5weSBmaWxlcy4KKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2luc3RhbGxfZGlzdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnYnVpbGRfbGliJywgJ2J1aWxkX2RpcicpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ2luc3RhbGxfbGliJywgJ2luc3RhbGxfZGlyJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb3JjZScsICdjb21waWxlJywgJ29wdGltaXplJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NraXBfYnVpbGQnKQorCisgICAgICAgIGlmIHNlbGYuY29tcGlsZSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5jb21waWxlID0gVHJ1ZQorICAgICAgICBpZiBzZWxmLm9wdGltaXplIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLm9wdGltaXplID0gMAorCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKHNlbGYub3B0aW1pemUsIGludCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5vcHRpbWl6ZSA9IGludChzZWxmLm9wdGltaXplKQorICAgICAgICAgICAgICAgIGlmIHNlbGYub3B0aW1pemUgbm90IGluICgwLCAxLCAyKToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgQXNzZXJ0aW9uRXJyb3IKKyAgICAgICAgICAgIGV4Y2VwdCAoVmFsdWVFcnJvciwgQXNzZXJ0aW9uRXJyb3IpOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKCJvcHRpbWl6ZSBtdXN0IGJlIDAsIDEsIG9yIDIiKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgIyBNYWtlIHN1cmUgd2UgaGF2ZSBidWlsdCBldmVyeXRoaW5nIHdlIG5lZWQgZmlyc3QKKyAgICAgICAgc2VsZi5idWlsZCgpCisKKyAgICAgICAgIyBJbnN0YWxsIGV2ZXJ5dGhpbmc6IHNpbXBseSBkdW1wIHRoZSBlbnRpcmUgY29udGVudHMgb2YgdGhlIGJ1aWxkCisgICAgICAgICMgZGlyZWN0b3J5IHRvIHRoZSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5ICh0aGF0J3MgdGhlIGJlYXV0eSBvZgorICAgICAgICAjIGhhdmluZyBhIGJ1aWxkIGRpcmVjdG9yeSEpCisgICAgICAgIG91dGZpbGVzID0gc2VsZi5pbnN0YWxsKCkKKworICAgICAgICAjIChPcHRpb25hbGx5KSBjb21waWxlIC5weSB0byAucHljIGFuZC9vciAucHlvCisgICAgICAgIGlmIG91dGZpbGVzIGlzIG5vdCBOb25lIGFuZCBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfcHVyZV9tb2R1bGVzKCk6CisgICAgICAgICAgICAjIFhYWCBjb21tZW50IGZyb20gZGlzdHV0aWxzOiAiVGhpcyBbcHJlZml4IHN0cmlwcGluZ10gaXMgZmFyIGZyb20KKyAgICAgICAgICAgICMgY29tcGxldGUsIGJ1dCBpdCBzaG91bGQgYXQgbGVhc3QgZ2VuZXJhdGUgdXNhYmxlIGJ5dGVjb2RlIGluIFJQTQorICAgICAgICAgICAgIyBkaXN0cmlidXRpb25zLiIgLT4gbmVlZCB0byBmaW5kIGV4YWN0IHJlcXVpcmVtZW50cyBmb3IKKyAgICAgICAgICAgICMgYnl0ZS1jb21waWxlZCBmaWxlcyBhbmQgZml4IGl0CisgICAgICAgICAgICBpbnN0YWxsX3Jvb3QgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnaW5zdGFsbF9kaXN0Jykucm9vdAorICAgICAgICAgICAgc2VsZi5ieXRlX2NvbXBpbGUob3V0ZmlsZXMsIHByZWZpeD1pbnN0YWxsX3Jvb3QpCisKKyAgICAjIC0tIFRvcC1sZXZlbCB3b3JrZXIgZnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICMgKGNhbGxlZCBmcm9tICdydW4oKScpCisKKyAgICBkZWYgYnVpbGQoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLnNraXBfYnVpbGQ6CisgICAgICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfcHVyZV9tb2R1bGVzKCk6CisgICAgICAgICAgICAgICAgc2VsZi5ydW5fY29tbWFuZCgnYnVpbGRfcHknKQorICAgICAgICAgICAgaWYgc2VsZi5kaXN0cmlidXRpb24uaGFzX2V4dF9tb2R1bGVzKCk6CisgICAgICAgICAgICAgICAgc2VsZi5ydW5fY29tbWFuZCgnYnVpbGRfZXh0JykKKworICAgIGRlZiBpbnN0YWxsKHNlbGYpOgorICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKHNlbGYuYnVpbGRfZGlyKToKKyAgICAgICAgICAgIG91dGZpbGVzID0gc2VsZi5jb3B5X3RyZWUoc2VsZi5idWlsZF9kaXIsIHNlbGYuaW5zdGFsbF9kaXIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAnJXM6ICVyIGRvZXMgbm90IGV4aXN0IC0tIG5vIFB5dGhvbiBtb2R1bGVzIHRvIGluc3RhbGwnLAorICAgICAgICAgICAgICAgIHNlbGYuZ2V0X2NvbW1hbmRfbmFtZSgpLCBzZWxmLmJ1aWxkX2RpcikKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICByZXR1cm4gb3V0ZmlsZXMKKworICAgICMgLS0gVXRpbGl0eSBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgX211dGF0ZV9vdXRwdXRzKHNlbGYsIGhhc19hbnksIGJ1aWxkX2NtZCwgY21kX29wdGlvbiwgb3V0cHV0X2Rpcik6CisgICAgICAgIGlmIG5vdCBoYXNfYW55OgorICAgICAgICAgICAgcmV0dXJuIFtdCisKKyAgICAgICAgYnVpbGRfY21kID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoYnVpbGRfY21kKQorICAgICAgICBidWlsZF9maWxlcyA9IGJ1aWxkX2NtZC5nZXRfb3V0cHV0cygpCisgICAgICAgIGJ1aWxkX2RpciA9IGdldGF0dHIoYnVpbGRfY21kLCBjbWRfb3B0aW9uKQorCisgICAgICAgIHByZWZpeF9sZW4gPSBsZW4oYnVpbGRfZGlyKSArIGxlbihvcy5zZXApCisgICAgICAgIG91dHB1dHMgPSBbXQorICAgICAgICBmb3IgZmlsZSBpbiBidWlsZF9maWxlczoKKyAgICAgICAgICAgIG91dHB1dHMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLCBmaWxlW3ByZWZpeF9sZW46XSkpCisKKyAgICAgICAgcmV0dXJuIG91dHB1dHMKKworICAgIGRlZiBfYnl0ZWNvZGVfZmlsZW5hbWVzKHNlbGYsIHB5X2ZpbGVuYW1lcyk6CisgICAgICAgIGJ5dGVjb2RlX2ZpbGVzID0gW10KKyAgICAgICAgZm9yIHB5X2ZpbGUgaW4gcHlfZmlsZW5hbWVzOgorICAgICAgICAgICAgIyBTaW5jZSBidWlsZF9weSBoYW5kbGVzIHBhY2thZ2UgZGF0YSBpbnN0YWxsYXRpb24sIHRoZQorICAgICAgICAgICAgIyBsaXN0IG9mIG91dHB1dHMgY2FuIGNvbnRhaW4gbW9yZSB0aGFuIGp1c3QgLnB5IGZpbGVzLgorICAgICAgICAgICAgIyBNYWtlIHN1cmUgd2Ugb25seSByZXBvcnQgYnl0ZWNvZGUgZm9yIHRoZSAucHkgZmlsZXMuCisgICAgICAgICAgICBleHQgPSBvcy5wYXRoLnNwbGl0ZXh0KG9zLnBhdGgubm9ybWNhc2UocHlfZmlsZSkpWzFdCisgICAgICAgICAgICBpZiBleHQgIT0gUFlUSE9OX1NPVVJDRV9FWFRFTlNJT046CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGlmIHNlbGYuY29tcGlsZToKKyAgICAgICAgICAgICAgICBieXRlY29kZV9maWxlcy5hcHBlbmQoaW1wLmNhY2hlX2Zyb21fc291cmNlKHB5X2ZpbGUsIFRydWUpKQorICAgICAgICAgICAgaWYgc2VsZi5vcHRpbWl6ZToKKyAgICAgICAgICAgICAgICBieXRlY29kZV9maWxlcy5hcHBlbmQoaW1wLmNhY2hlX2Zyb21fc291cmNlKHB5X2ZpbGUsIEZhbHNlKSkKKworICAgICAgICByZXR1cm4gYnl0ZWNvZGVfZmlsZXMKKworICAgICMgLS0gRXh0ZXJuYWwgaW50ZXJmYWNlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgIyAoY2FsbGVkIGJ5IG91dHNpZGVycykKKworICAgIGRlZiBnZXRfb3V0cHV0cyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBsaXN0IG9mIGZpbGVzIHRoYXQgd291bGQgYmUgaW5zdGFsbGVkIGlmIHRoaXMgY29tbWFuZAorICAgICAgICB3ZXJlIGFjdHVhbGx5IHJ1bi4gIE5vdCBhZmZlY3RlZCBieSB0aGUgImRyeS1ydW4iIGZsYWcgb3Igd2hldGhlcgorICAgICAgICBtb2R1bGVzIGhhdmUgYWN0dWFsbHkgYmVlbiBidWlsdCB5ZXQuCisgICAgICAgICIiIgorICAgICAgICBwdXJlX291dHB1dHMgPSBcCisgICAgICAgICAgICBzZWxmLl9tdXRhdGVfb3V0cHV0cyhzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfcHVyZV9tb2R1bGVzKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYnVpbGRfcHknLCAnYnVpbGRfbGliJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9kaXIpCisgICAgICAgIGlmIHNlbGYuY29tcGlsZToKKyAgICAgICAgICAgIGJ5dGVjb2RlX291dHB1dHMgPSBzZWxmLl9ieXRlY29kZV9maWxlbmFtZXMocHVyZV9vdXRwdXRzKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgYnl0ZWNvZGVfb3V0cHV0cyA9IFtdCisKKyAgICAgICAgZXh0X291dHB1dHMgPSBcCisgICAgICAgICAgICBzZWxmLl9tdXRhdGVfb3V0cHV0cyhzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdidWlsZF9leHQnLCAnYnVpbGRfbGliJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9kaXIpCisKKyAgICAgICAgcmV0dXJuIHB1cmVfb3V0cHV0cyArIGJ5dGVjb2RlX291dHB1dHMgKyBleHRfb3V0cHV0cworCisgICAgZGVmIGdldF9pbnB1dHMoc2VsZik6CisgICAgICAgICIiIkdldCB0aGUgbGlzdCBvZiBmaWxlcyB0aGF0IGFyZSBpbnB1dCB0byB0aGlzIGNvbW1hbmQsIGllLiB0aGUKKyAgICAgICAgZmlsZXMgdGhhdCBnZXQgaW5zdGFsbGVkIGFzIHRoZXkgYXJlIG5hbWVkIGluIHRoZSBidWlsZCB0cmVlLgorICAgICAgICBUaGUgZmlsZXMgaW4gdGhpcyBsaXN0IGNvcnJlc3BvbmQgb25lLXRvLW9uZSB0byB0aGUgb3V0cHV0CisgICAgICAgIGZpbGVuYW1lcyByZXR1cm5lZCBieSAnZ2V0X291dHB1dHMoKScuCisgICAgICAgICIiIgorICAgICAgICBpbnB1dHMgPSBbXQorCisgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19wdXJlX21vZHVsZXMoKToKKyAgICAgICAgICAgIGJ1aWxkX3B5ID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2J1aWxkX3B5JykKKyAgICAgICAgICAgIGlucHV0cy5leHRlbmQoYnVpbGRfcHkuZ2V0X291dHB1dHMoKSkKKworICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKToKKyAgICAgICAgICAgIGJ1aWxkX2V4dCA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdidWlsZF9leHQnKQorICAgICAgICAgICAgaW5wdXRzLmV4dGVuZChidWlsZF9leHQuZ2V0X291dHB1dHMoKSkKKworICAgICAgICByZXR1cm4gaW5wdXRzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9zY3JpcHRzLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfc2NyaXB0cy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZmFjYmUyCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfc2NyaXB0cy5weQpAQCAtMCwwICsxLDU5IEBACisiIiJJbnN0YWxsIHNjcmlwdHMuIiIiCisKKyMgQ29udHJpYnV0ZWQgYnkgQmFzdGlhbiBLbGVpbmVpZGFtCisKK2ltcG9ydCBvcworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKKworY2xhc3MgaW5zdGFsbF9zY3JpcHRzKENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAiaW5zdGFsbCBzY3JpcHRzIChQeXRob24gb3Igb3RoZXJ3aXNlKSIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdpbnN0YWxsLWRpcj0nLCAnZCcsICJkaXJlY3RvcnkgdG8gaW5zdGFsbCBzY3JpcHRzIHRvIiksCisgICAgICAgICgnYnVpbGQtZGlyPScsJ2InLCAiYnVpbGQgZGlyZWN0b3J5ICh3aGVyZSB0byBpbnN0YWxsIGZyb20pIiksCisgICAgICAgICgnZm9yY2UnLCAnZicsICJmb3JjZSBpbnN0YWxsYXRpb24gKG92ZXJ3cml0ZSBleGlzdGluZyBmaWxlcykiKSwKKyAgICAgICAgKCdza2lwLWJ1aWxkJywgTm9uZSwgInNraXAgdGhlIGJ1aWxkIHN0ZXBzIiksCisgICAgXQorCisgICAgYm9vbGVhbl9vcHRpb25zID0gWydmb3JjZScsICdza2lwLWJ1aWxkJ10KKworCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5pbnN0YWxsX2RpciA9IE5vbmUKKyAgICAgICAgc2VsZi5mb3JjZSA9IEZhbHNlCisgICAgICAgIHNlbGYuYnVpbGRfZGlyID0gTm9uZQorICAgICAgICBzZWxmLnNraXBfYnVpbGQgPSBOb25lCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2J1aWxkJywgKCdidWlsZF9zY3JpcHRzJywgJ2J1aWxkX2RpcicpKQorICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnaW5zdGFsbF9kaXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsX3NjcmlwdHMnLCAnaW5zdGFsbF9kaXInKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvcmNlJywgJ3NraXBfYnVpbGQnKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuc2tpcF9idWlsZDoKKyAgICAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQoJ2J1aWxkX3NjcmlwdHMnKQorCisgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhzZWxmLmJ1aWxkX2Rpcik6CisgICAgICAgICAgICBzZWxmLm91dGZpbGVzID0gW10KKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHNlbGYub3V0ZmlsZXMgPSBzZWxmLmNvcHlfdHJlZShzZWxmLmJ1aWxkX2Rpciwgc2VsZi5pbnN0YWxsX2RpcikKKyAgICAgICAgaWYgb3MubmFtZSA9PSAncG9zaXgnOgorICAgICAgICAgICAgIyBTZXQgdGhlIGV4ZWN1dGFibGUgYml0cyAob3duZXIsIGdyb3VwLCBhbmQgd29ybGQpIG9uCisgICAgICAgICAgICAjIGFsbCB0aGUgc2NyaXB0cyB3ZSBqdXN0IGluc3RhbGxlZC4KKyAgICAgICAgICAgIGZvciBmaWxlIGluIHNlbGYuZ2V0X291dHB1dHMoKToKKyAgICAgICAgICAgICAgICBpZiBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJjaGFuZ2luZyBtb2RlIG9mICVzIiwgZmlsZSkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBtb2RlID0gKG9zLnN0YXQoZmlsZSkuc3RfbW9kZSB8IDBvNTU1KSAmIDBvNzc3NworICAgICAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygiY2hhbmdpbmcgbW9kZSBvZiAlcyB0byAlbyIsIGZpbGUsIG1vZGUpCisgICAgICAgICAgICAgICAgICAgIG9zLmNobW9kKGZpbGUsIG1vZGUpCisKKyAgICBkZWYgZ2V0X2lucHV0cyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuZGlzdHJpYnV0aW9uLnNjcmlwdHMgb3IgW10KKworICAgIGRlZiBnZXRfb3V0cHV0cyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYub3V0ZmlsZXMgb3IgW10KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9yZWdpc3Rlci5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9yZWdpc3Rlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41OTgwNWY3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3JlZ2lzdGVyLnB5CkBAIC0wLDAgKzEsMjYzIEBACisiIiJSZWdpc3RlciBhIHJlbGVhc2Ugd2l0aCBhIHByb2plY3QgaW5kZXguIiIiCisKKyMgQ29udHJpYnV0ZWQgYnkgUmljaGFyZCBKb25lcworCitpbXBvcnQgZ2V0cGFzcworaW1wb3J0IHVybGxpYi5lcnJvcgoraW1wb3J0IHVybGxpYi5wYXJzZQoraW1wb3J0IHVybGxpYi5yZXF1ZXN0CisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IChyZWFkX3B5cGlyYywgZ2VuZXJhdGVfcHlwaXJjLCBERUZBVUxUX1JFUE9TSVRPUlksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgREVGQVVMVF9SRUFMTSwgZ2V0X3B5cGlyY19wYXRoLCBlbmNvZGVfbXVsdGlwYXJ0KQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKKworY2xhc3MgcmVnaXN0ZXIoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJyZWdpc3RlciBhIHJlbGVhc2Ugd2l0aCBQeVBJIgorICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdyZXBvc2l0b3J5PScsICdyJywKKyAgICAgICAgICJyZXBvc2l0b3J5IFVSTCBbZGVmYXVsdDogJXNdIiAlIERFRkFVTFRfUkVQT1NJVE9SWSksCisgICAgICAgICgnc2hvdy1yZXNwb25zZScsIE5vbmUsCisgICAgICAgICAiZGlzcGxheSBmdWxsIHJlc3BvbnNlIHRleHQgZnJvbSBzZXJ2ZXIiKSwKKyAgICAgICAgKCdsaXN0LWNsYXNzaWZpZXJzJywgTm9uZSwKKyAgICAgICAgICJsaXN0IHZhbGlkIFRyb3ZlIGNsYXNzaWZpZXJzIiksCisgICAgICAgICgnc3RyaWN0JywgTm9uZSAsCisgICAgICAgICAic3RvcCB0aGUgcmVnaXN0cmF0aW9uIGlmIHRoZSBtZXRhZGF0YSBpcyBub3QgZnVsbHkgY29tcGxpYW50IikKKyAgICAgICAgXQorCisgICAgYm9vbGVhbl9vcHRpb25zID0gWydzaG93LXJlc3BvbnNlJywgJ2xpc3QtY2xhc3NpZmllcnMnLCAnc3RyaWN0J10KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYucmVwb3NpdG9yeSA9IE5vbmUKKyAgICAgICAgc2VsZi5yZWFsbSA9IE5vbmUKKyAgICAgICAgc2VsZi5zaG93X3Jlc3BvbnNlID0gRmFsc2UKKyAgICAgICAgc2VsZi5saXN0X2NsYXNzaWZpZXJzID0gRmFsc2UKKyAgICAgICAgc2VsZi5zdHJpY3QgPSBGYWxzZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGlmIHNlbGYucmVwb3NpdG9yeSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5yZXBvc2l0b3J5ID0gREVGQVVMVF9SRVBPU0lUT1JZCisgICAgICAgIGlmIHNlbGYucmVhbG0gaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYucmVhbG0gPSBERUZBVUxUX1JFQUxNCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBzZWxmLl9zZXRfY29uZmlnKCkKKworICAgICAgICAjIENoZWNrIHRoZSBwYWNrYWdlIG1ldGFkYXRhCisgICAgICAgIGNoZWNrID0gc2VsZi5kaXN0cmlidXRpb24uZ2V0X2NvbW1hbmRfb2JqKCdjaGVjaycpCisgICAgICAgIGlmIGNoZWNrLnN0cmljdCAhPSBzZWxmLnN0cmljdCBhbmQgbm90IGNoZWNrLmFsbDoKKyAgICAgICAgICAgICMgSWYgY2hlY2sgd2FzIGFscmVhZHkgcnVuIGJ1dCB3aXRoIGRpZmZlcmVudCBvcHRpb25zLAorICAgICAgICAgICAgIyByZS1ydW4gaXQKKyAgICAgICAgICAgIGNoZWNrLnN0cmljdCA9IHNlbGYuc3RyaWN0CisgICAgICAgICAgICBjaGVjay5hbGwgPSBUcnVlCisgICAgICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbi5oYXZlX3J1bi5wb3AoJ2NoZWNrJywgTm9uZSkKKyAgICAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQoJ2NoZWNrJykKKworICAgICAgICBpZiBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICBzZWxmLnZlcmlmeV9tZXRhZGF0YSgpCisgICAgICAgIGVsaWYgc2VsZi5saXN0X2NsYXNzaWZpZXJzOgorICAgICAgICAgICAgc2VsZi5jbGFzc2lmaWVycygpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLnNlbmRfbWV0YWRhdGEoKQorCisgICAgZGVmIF9zZXRfY29uZmlnKHNlbGYpOgorICAgICAgICAnJycgUmVhZHMgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSBhbmQgc2V0IGF0dHJpYnV0ZXMuCisgICAgICAgICcnJworICAgICAgICBjb25maWcgPSByZWFkX3B5cGlyYyhzZWxmLnJlcG9zaXRvcnksIHNlbGYucmVhbG0pCisgICAgICAgIGlmIGNvbmZpZyAhPSB7fToKKyAgICAgICAgICAgIHNlbGYudXNlcm5hbWUgPSBjb25maWdbJ3VzZXJuYW1lJ10KKyAgICAgICAgICAgIHNlbGYucGFzc3dvcmQgPSBjb25maWdbJ3Bhc3N3b3JkJ10KKyAgICAgICAgICAgIHNlbGYucmVwb3NpdG9yeSA9IGNvbmZpZ1sncmVwb3NpdG9yeSddCisgICAgICAgICAgICBzZWxmLnJlYWxtID0gY29uZmlnWydyZWFsbSddCisgICAgICAgICAgICBzZWxmLmhhc19jb25maWcgPSBUcnVlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBzZWxmLnJlcG9zaXRvcnkgbm90IGluICgncHlwaScsIERFRkFVTFRfUkVQT1NJVE9SWSk6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignJXMgbm90IGZvdW5kIGluIC5weXBpcmMnICUgc2VsZi5yZXBvc2l0b3J5KQorICAgICAgICAgICAgaWYgc2VsZi5yZXBvc2l0b3J5ID09ICdweXBpJzoKKyAgICAgICAgICAgICAgICBzZWxmLnJlcG9zaXRvcnkgPSBERUZBVUxUX1JFUE9TSVRPUlkKKyAgICAgICAgICAgIHNlbGYuaGFzX2NvbmZpZyA9IEZhbHNlCisKKyAgICBkZWYgY2xhc3NpZmllcnMoc2VsZik6CisgICAgICAgICcnJyBGZXRjaCB0aGUgbGlzdCBvZiBjbGFzc2lmaWVycyBmcm9tIHRoZSBzZXJ2ZXIuCisgICAgICAgICcnJworICAgICAgICByZXNwb25zZSA9IHVybGxpYi5yZXF1ZXN0LnVybG9wZW4oc2VsZi5yZXBvc2l0b3J5Kyc/OmFjdGlvbj1saXN0X2NsYXNzaWZpZXJzJykKKyAgICAgICAgbG9nZ2VyLmluZm8ocmVzcG9uc2UucmVhZCgpKQorCisgICAgZGVmIHZlcmlmeV9tZXRhZGF0YShzZWxmKToKKyAgICAgICAgJycnIFNlbmQgdGhlIG1ldGFkYXRhIHRvIHRoZSBwYWNrYWdlIGluZGV4IHNlcnZlciB0byBiZSBjaGVja2VkLgorICAgICAgICAnJycKKyAgICAgICAgIyBzZW5kIHRoZSBpbmZvIHRvIHRoZSBzZXJ2ZXIgYW5kIHJlcG9ydCB0aGUgcmVzdWx0CisgICAgICAgIGNvZGUsIHJlc3VsdCA9IHNlbGYucG9zdF90b19zZXJ2ZXIoc2VsZi5idWlsZF9wb3N0X2RhdGEoJ3ZlcmlmeScpKQorICAgICAgICBsb2dnZXIuaW5mbygnc2VydmVyIHJlc3BvbnNlICglcyk6ICVzJywgY29kZSwgcmVzdWx0KQorCisKKyAgICBkZWYgc2VuZF9tZXRhZGF0YShzZWxmKToKKyAgICAgICAgJycnIFNlbmQgdGhlIG1ldGFkYXRhIHRvIHRoZSBwYWNrYWdlIGluZGV4IHNlcnZlci4KKworICAgICAgICAgICAgV2VsbCwgZG8gdGhlIGZvbGxvd2luZzoKKyAgICAgICAgICAgIDEuIGZpZ3VyZSB3aG8gdGhlIHVzZXIgaXMsIGFuZCB0aGVuCisgICAgICAgICAgICAyLiBzZW5kIHRoZSBkYXRhIGFzIGEgQmFzaWMgYXV0aCdlZCBQT1NULgorCisgICAgICAgICAgICBGaXJzdCB3ZSB0cnkgdG8gcmVhZCB0aGUgdXNlcm5hbWUvcGFzc3dvcmQgZnJvbSAkSE9NRS8ucHlwaXJjLAorICAgICAgICAgICAgd2hpY2ggaXMgYSBDb25maWdQYXJzZXItZm9ybWF0dGVkIGZpbGUgd2l0aCBhIHNlY3Rpb24KKyAgICAgICAgICAgIFtkaXN0dXRpbHNdIGNvbnRhaW5pbmcgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGVudHJpZXMgKGJvdGgKKyAgICAgICAgICAgIGluIGNsZWFyIHRleHQpLiBFZzoKKworICAgICAgICAgICAgICAgIFtkaXN0dXRpbHNdCisgICAgICAgICAgICAgICAgaW5kZXgtc2VydmVycyA9CisgICAgICAgICAgICAgICAgICAgIHB5cGkKKworICAgICAgICAgICAgICAgIFtweXBpXQorICAgICAgICAgICAgICAgIHVzZXJuYW1lOiBmcmVkCisgICAgICAgICAgICAgICAgcGFzc3dvcmQ6IHNla3JpdAorCisgICAgICAgICAgICBPdGhlcndpc2UsIHRvIGZpZ3VyZSB3aG8gdGhlIHVzZXIgaXMsIHdlIG9mZmVyIHRoZSB1c2VyIHRocmVlCisgICAgICAgICAgICBjaG9pY2VzOgorCisgICAgICAgICAgICAgMS4gdXNlIGV4aXN0aW5nIGxvZ2luLAorICAgICAgICAgICAgIDIuIHJlZ2lzdGVyIGFzIGEgbmV3IHVzZXIsIG9yCisgICAgICAgICAgICAgMy4gc2V0IHRoZSBwYXNzd29yZCB0byBhIHJhbmRvbSBzdHJpbmcgYW5kIGVtYWlsIHRoZSB1c2VyLgorCisgICAgICAgICcnJworICAgICAgICAjIFRPRE8gZmFjdG9yIHJlZ2lzdHJhdGlvbiBvdXQgaW50byBhbm90aGVyIG1ldGhvZAorICAgICAgICAjIFRPRE8gdXNlIHByaW50IHRvIHByaW50LCBub3QgbG9nZ2luZworCisgICAgICAgICMgc2VlIGlmIHdlIGNhbiBzaG9ydC1jdXQgYW5kIGdldCB0aGUgdXNlcm5hbWUvcGFzc3dvcmQgZnJvbSB0aGUKKyAgICAgICAgIyBjb25maWcKKyAgICAgICAgaWYgc2VsZi5oYXNfY29uZmlnOgorICAgICAgICAgICAgY2hvaWNlID0gJzEnCisgICAgICAgICAgICB1c2VybmFtZSA9IHNlbGYudXNlcm5hbWUKKyAgICAgICAgICAgIHBhc3N3b3JkID0gc2VsZi5wYXNzd29yZAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY2hvaWNlID0gJ3gnCisgICAgICAgICAgICB1c2VybmFtZSA9IHBhc3N3b3JkID0gJycKKworICAgICAgICAjIGdldCB0aGUgdXNlcidzIGxvZ2luIGluZm8KKyAgICAgICAgY2hvaWNlcyA9ICcxIDIgMyA0Jy5zcGxpdCgpCisgICAgICAgIHdoaWxlIGNob2ljZSBub3QgaW4gY2hvaWNlczoKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCcnJ1wKK1dlIG5lZWQgdG8ga25vdyB3aG8geW91IGFyZSwgc28gcGxlYXNlIGNob29zZSBlaXRoZXI6CisgMS4gdXNlIHlvdXIgZXhpc3RpbmcgbG9naW4sCisgMi4gcmVnaXN0ZXIgYXMgYSBuZXcgdXNlciwKKyAzLiBoYXZlIHRoZSBzZXJ2ZXIgZ2VuZXJhdGUgYSBuZXcgcGFzc3dvcmQgZm9yIHlvdSAoYW5kIGVtYWlsIGl0IHRvIHlvdSksIG9yCisgNC4gcXVpdAorWW91ciBzZWxlY3Rpb24gW2RlZmF1bHQgMV06ICcnJykKKworICAgICAgICAgICAgY2hvaWNlID0gaW5wdXQoKQorICAgICAgICAgICAgaWYgbm90IGNob2ljZToKKyAgICAgICAgICAgICAgICBjaG9pY2UgPSAnMScKKyAgICAgICAgICAgIGVsaWYgY2hvaWNlIG5vdCBpbiBjaG9pY2VzOgorICAgICAgICAgICAgICAgIHByaW50KCdQbGVhc2UgY2hvb3NlIG9uZSBvZiB0aGUgZm91ciBvcHRpb25zIScpCisKKyAgICAgICAgaWYgY2hvaWNlID09ICcxJzoKKyAgICAgICAgICAgICMgZ2V0IHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQKKyAgICAgICAgICAgIHdoaWxlIG5vdCB1c2VybmFtZToKKyAgICAgICAgICAgICAgICB1c2VybmFtZSA9IGlucHV0KCdVc2VybmFtZTogJykKKyAgICAgICAgICAgIHdoaWxlIG5vdCBwYXNzd29yZDoKKyAgICAgICAgICAgICAgICBwYXNzd29yZCA9IGdldHBhc3MuZ2V0cGFzcygnUGFzc3dvcmQ6ICcpCisKKyAgICAgICAgICAgICMgc2V0IHVwIHRoZSBhdXRoZW50aWNhdGlvbgorICAgICAgICAgICAgYXV0aCA9IHVybGxpYi5yZXF1ZXN0LkhUVFBQYXNzd29yZE1ncigpCisgICAgICAgICAgICBob3N0ID0gdXJsbGliLnBhcnNlLnVybHBhcnNlKHNlbGYucmVwb3NpdG9yeSlbMV0KKyAgICAgICAgICAgIGF1dGguYWRkX3Bhc3N3b3JkKHNlbGYucmVhbG0sIGhvc3QsIHVzZXJuYW1lLCBwYXNzd29yZCkKKyAgICAgICAgICAgICMgc2VuZCB0aGUgaW5mbyB0byB0aGUgc2VydmVyIGFuZCByZXBvcnQgdGhlIHJlc3VsdAorICAgICAgICAgICAgY29kZSwgcmVzdWx0ID0gc2VsZi5wb3N0X3RvX3NlcnZlcihzZWxmLmJ1aWxkX3Bvc3RfZGF0YSgnc3VibWl0JyksCisgICAgICAgICAgICAgICAgYXV0aCkKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdTZXJ2ZXIgcmVzcG9uc2UgKCVzKTogJXMnLCBjb2RlLCByZXN1bHQpCisKKyAgICAgICAgICAgICMgcG9zc2libHkgc2F2ZSB0aGUgbG9naW4KKyAgICAgICAgICAgIGlmIGNvZGUgPT0gMjAwOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuaGFzX2NvbmZpZzoKKyAgICAgICAgICAgICAgICAgICAgIyBzaGFyaW5nIHRoZSBwYXNzd29yZCBpbiB0aGUgZGlzdHJpYnV0aW9uIGluc3RhbmNlCisgICAgICAgICAgICAgICAgICAgICMgc28gdGhlIHVwbG9hZCBjb21tYW5kIGNhbiByZXVzZSBpdAorICAgICAgICAgICAgICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbi5wYXNzd29yZCA9IHBhc3N3b3JkCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oCisgICAgICAgICAgICAgICAgICAgICAgICAnSSBjYW4gc3RvcmUgeW91ciBQeVBJIGxvZ2luIHNvIGZ1dHVyZSBzdWJtaXNzaW9ucyAnCisgICAgICAgICAgICAgICAgICAgICAgICAnd2lsbCBiZSBmYXN0ZXIuXG4odGhlIGxvZ2luIHdpbGwgYmUgc3RvcmVkIGluICVzKScsCisgICAgICAgICAgICAgICAgICAgICAgICBnZXRfcHlwaXJjX3BhdGgoKSkKKyAgICAgICAgICAgICAgICAgICAgY2hvaWNlID0gJ1gnCisgICAgICAgICAgICAgICAgICAgIHdoaWxlIGNob2ljZS5sb3dlcigpIG5vdCBpbiAoJ3knLCAnbicpOgorICAgICAgICAgICAgICAgICAgICAgICAgY2hvaWNlID0gaW5wdXQoJ1NhdmUgeW91ciBsb2dpbiAoeS9OKT8nKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGNob2ljZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaG9pY2UgPSAnbicKKyAgICAgICAgICAgICAgICAgICAgaWYgY2hvaWNlLmxvd2VyKCkgPT0gJ3knOgorICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVfcHlwaXJjKHVzZXJuYW1lLCBwYXNzd29yZCkKKworICAgICAgICBlbGlmIGNob2ljZSA9PSAnMic6CisgICAgICAgICAgICBkYXRhID0geyc6YWN0aW9uJzogJ3VzZXInfQorICAgICAgICAgICAgZGF0YVsnbmFtZSddID0gZGF0YVsncGFzc3dvcmQnXSA9IGRhdGFbJ2VtYWlsJ10gPSAnJworICAgICAgICAgICAgZGF0YVsnY29uZmlybSddID0gTm9uZQorICAgICAgICAgICAgd2hpbGUgbm90IGRhdGFbJ25hbWUnXToKKyAgICAgICAgICAgICAgICBkYXRhWyduYW1lJ10gPSBpbnB1dCgnVXNlcm5hbWU6ICcpCisgICAgICAgICAgICB3aGlsZSBkYXRhWydwYXNzd29yZCddICE9IGRhdGFbJ2NvbmZpcm0nXToKKyAgICAgICAgICAgICAgICB3aGlsZSBub3QgZGF0YVsncGFzc3dvcmQnXToKKyAgICAgICAgICAgICAgICAgICAgZGF0YVsncGFzc3dvcmQnXSA9IGdldHBhc3MuZ2V0cGFzcygnUGFzc3dvcmQ6ICcpCisgICAgICAgICAgICAgICAgd2hpbGUgbm90IGRhdGFbJ2NvbmZpcm0nXToKKyAgICAgICAgICAgICAgICAgICAgZGF0YVsnY29uZmlybSddID0gZ2V0cGFzcy5nZXRwYXNzKCcgQ29uZmlybTogJykKKyAgICAgICAgICAgICAgICBpZiBkYXRhWydwYXNzd29yZCddICE9IGRhdGFbJ2NvbmZpcm0nXToKKyAgICAgICAgICAgICAgICAgICAgZGF0YVsncGFzc3dvcmQnXSA9ICcnCisgICAgICAgICAgICAgICAgICAgIGRhdGFbJ2NvbmZpcm0nXSA9IE5vbmUKKyAgICAgICAgICAgICAgICAgICAgcHJpbnQoIlBhc3N3b3JkIGFuZCBjb25maXJtIGRvbid0IG1hdGNoISIpCisgICAgICAgICAgICB3aGlsZSBub3QgZGF0YVsnZW1haWwnXToKKyAgICAgICAgICAgICAgICBkYXRhWydlbWFpbCddID0gaW5wdXQoJyAgIEVNYWlsOiAnKQorICAgICAgICAgICAgY29kZSwgcmVzdWx0ID0gc2VsZi5wb3N0X3RvX3NlcnZlcihkYXRhKQorICAgICAgICAgICAgaWYgY29kZSAhPSAyMDA6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ3NlcnZlciByZXNwb25zZSAoJXMpOiAlcycsIGNvZGUsIHJlc3VsdCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ3lvdSB3aWxsIHJlY2VpdmUgYW4gZW1haWwgc2hvcnRseTsgZm9sbG93IHRoZSAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2luc3RydWN0aW9ucyBpbiBpdCB0byBjb21wbGV0ZSByZWdpc3RyYXRpb24uJykKKyAgICAgICAgZWxpZiBjaG9pY2UgPT0gJzMnOgorICAgICAgICAgICAgZGF0YSA9IHsnOmFjdGlvbic6ICdwYXNzd29yZF9yZXNldCd9CisgICAgICAgICAgICBkYXRhWydlbWFpbCddID0gJycKKyAgICAgICAgICAgIHdoaWxlIG5vdCBkYXRhWydlbWFpbCddOgorICAgICAgICAgICAgICAgIGRhdGFbJ2VtYWlsJ10gPSBpbnB1dCgnWW91ciBlbWFpbCBhZGRyZXNzOiAnKQorICAgICAgICAgICAgY29kZSwgcmVzdWx0ID0gc2VsZi5wb3N0X3RvX3NlcnZlcihkYXRhKQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ3NlcnZlciByZXNwb25zZSAoJXMpOiAlcycsIGNvZGUsIHJlc3VsdCkKKworICAgIGRlZiBidWlsZF9wb3N0X2RhdGEoc2VsZiwgYWN0aW9uKToKKyAgICAgICAgIyBmaWd1cmUgdGhlIGRhdGEgdG8gc2VuZCAtIHRoZSBtZXRhZGF0YSBwbHVzIHNvbWUgYWRkaXRpb25hbAorICAgICAgICAjIGluZm9ybWF0aW9uIHVzZWQgYnkgdGhlIHBhY2thZ2Ugc2VydmVyCisgICAgICAgIGRhdGEgPSBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YS50b2RpY3QoKQorICAgICAgICBkYXRhWyc6YWN0aW9uJ10gPSBhY3Rpb24KKyAgICAgICAgcmV0dXJuIGRhdGEKKworICAgICMgWFhYIHRvIGJlIHJlZmFjdG9yZWQgd2l0aCB1cGxvYWQudXBsb2FkX2ZpbGUKKyAgICBkZWYgcG9zdF90b19zZXJ2ZXIoc2VsZiwgZGF0YSwgYXV0aD1Ob25lKToKKyAgICAgICAgJycnIFBvc3QgYSBxdWVyeSB0byB0aGUgc2VydmVyLCBhbmQgcmV0dXJuIGEgc3RyaW5nIHJlc3BvbnNlLgorICAgICAgICAnJycKKyAgICAgICAgaWYgJ25hbWUnIGluIGRhdGE6CisgICAgICAgICAgICBsb2dnZXIuaW5mbygnUmVnaXN0ZXJpbmcgJXMgdG8gJXMnLCBkYXRhWyduYW1lJ10sIHNlbGYucmVwb3NpdG9yeSkKKyAgICAgICAgIyBCdWlsZCB1cCB0aGUgTUlNRSBwYXlsb2FkIGZvciB0aGUgdXJsbGliMiBQT1NUIGRhdGEKKyAgICAgICAgY29udGVudF90eXBlLCBib2R5ID0gZW5jb2RlX211bHRpcGFydChkYXRhLml0ZW1zKCksIFtdKQorCisgICAgICAgICMgYnVpbGQgdGhlIFJlcXVlc3QKKyAgICAgICAgaGVhZGVycyA9IHsKKyAgICAgICAgICAgICdDb250ZW50LXR5cGUnOiBjb250ZW50X3R5cGUsCisgICAgICAgICAgICAnQ29udGVudC1sZW5ndGgnOiBzdHIobGVuKGJvZHkpKQorICAgICAgICB9CisgICAgICAgIHJlcSA9IHVybGxpYi5yZXF1ZXN0LlJlcXVlc3Qoc2VsZi5yZXBvc2l0b3J5LCBib2R5LCBoZWFkZXJzKQorCisgICAgICAgICMgaGFuZGxlIEhUVFAgYW5kIGluY2x1ZGUgdGhlIEJhc2ljIEF1dGggaGFuZGxlcgorICAgICAgICBvcGVuZXIgPSB1cmxsaWIucmVxdWVzdC5idWlsZF9vcGVuZXIoCisgICAgICAgICAgICB1cmxsaWIucmVxdWVzdC5IVFRQQmFzaWNBdXRoSGFuZGxlcihwYXNzd29yZF9tZ3I9YXV0aCkKKyAgICAgICAgKQorICAgICAgICBkYXRhID0gJycKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmVzdWx0ID0gb3BlbmVyLm9wZW4ocmVxKQorICAgICAgICBleGNlcHQgdXJsbGliLmVycm9yLkhUVFBFcnJvciBhcyBlOgorICAgICAgICAgICAgaWYgc2VsZi5zaG93X3Jlc3BvbnNlOgorICAgICAgICAgICAgICAgIGRhdGEgPSBlLmZwLnJlYWQoKQorICAgICAgICAgICAgcmVzdWx0ID0gZS5jb2RlLCBlLm1zZworICAgICAgICBleGNlcHQgdXJsbGliLmVycm9yLlVSTEVycm9yIGFzIGU6CisgICAgICAgICAgICByZXN1bHQgPSA1MDAsIHN0cihlKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgaWYgc2VsZi5zaG93X3Jlc3BvbnNlOgorICAgICAgICAgICAgICAgIGRhdGEgPSByZXN1bHQucmVhZCgpCisgICAgICAgICAgICByZXN1bHQgPSAyMDAsICdPSycKKyAgICAgICAgaWYgc2VsZi5zaG93X3Jlc3BvbnNlOgorICAgICAgICAgICAgZGFzaGVzID0gJy0nICogNzUKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCclcyVzJXMnLCBkYXNoZXMsIGRhdGEsIGRhc2hlcykKKworICAgICAgICByZXR1cm4gcmVzdWx0CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvc2Rpc3QucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvc2Rpc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDM5OTk4MQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9zZGlzdC5weQpAQCAtMCwwICsxLDM0NyBAQAorIiIiQ3JlYXRlIGEgc291cmNlIGRpc3RyaWJ1dGlvbi4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgcmUKK2ltcG9ydCBzeXMKK2Zyb20gaW8gaW1wb3J0IFN0cmluZ0lPCitmcm9tIHNodXRpbCBpbXBvcnQgZ2V0X2FyY2hpdmVfZm9ybWF0cywgcm10cmVlCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHJlc29sdmVfbmFtZQorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCAoUGFja2FnaW5nUGxhdGZvcm1FcnJvciwgUGFja2FnaW5nT3B0aW9uRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWNrYWdpbmdNb2R1bGVFcnJvciwgUGFja2FnaW5nRmlsZUVycm9yKQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZCBpbXBvcnQgZ2V0X2NvbW1hbmRfbmFtZXMKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5tYW5pZmVzdCBpbXBvcnQgTWFuaWZlc3QKKworCitkZWYgc2hvd19mb3JtYXRzKCk6CisgICAgIiIiUHJpbnQgYWxsIHBvc3NpYmxlIHZhbHVlcyBmb3IgdGhlICdmb3JtYXRzJyBvcHRpb24gKHVzZWQgYnkKKyAgICB0aGUgIi0taGVscC1mb3JtYXRzIiBjb21tYW5kLWxpbmUgb3B0aW9uKS4KKyAgICAiIiIKKyAgICBmcm9tIHBhY2thZ2luZy5mYW5jeV9nZXRvcHQgaW1wb3J0IEZhbmN5R2V0b3B0CisgICAgZm9ybWF0cyA9IHNvcnRlZCgoJ2Zvcm1hdHM9JyArIG5hbWUsIE5vbmUsIGRlc2MpCisgICAgICAgICAgICAgICAgICAgICBmb3IgbmFtZSwgZGVzYyBpbiBnZXRfYXJjaGl2ZV9mb3JtYXRzKCkpCisgICAgRmFuY3lHZXRvcHQoZm9ybWF0cykucHJpbnRfaGVscCgKKyAgICAgICAgIkxpc3Qgb2YgYXZhaWxhYmxlIHNvdXJjZSBkaXN0cmlidXRpb24gZm9ybWF0czoiKQorCisjIGEgXCBmb2xsb3dlZCBieSBzb21lIHNwYWNlcyArIEVPTAorX0NPTExBUFNFX1BBVFRFUk4gPSByZS5jb21waWxlKCdcXFx3XG4nLCByZS5NKQorX0NPTU1FTlRFRF9MSU5FID0gcmUuY29tcGlsZSgnXiMuKlxuJHxeXHcqXG4kJywgcmUuTSkKKworCitjbGFzcyBzZGlzdChDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gImNyZWF0ZSBhIHNvdXJjZSBkaXN0cmlidXRpb24gKHRhcmJhbGwsIHppcCBmaWxlLCBldGMuKSIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdtYW5pZmVzdD0nLCAnbScsCisgICAgICAgICAibmFtZSBvZiBtYW5pZmVzdCBmaWxlIFtkZWZhdWx0OiBNQU5JRkVTVF0iKSwKKyAgICAgICAgKCd1c2UtZGVmYXVsdHMnLCBOb25lLAorICAgICAgICAgImluY2x1ZGUgdGhlIGRlZmF1bHQgZmlsZSBzZXQgaW4gdGhlIG1hbmlmZXN0ICIKKyAgICAgICAgICJbZGVmYXVsdDsgZGlzYWJsZSB3aXRoIC0tbm8tZGVmYXVsdHNdIiksCisgICAgICAgICgnbm8tZGVmYXVsdHMnLCBOb25lLAorICAgICAgICAgImRvbid0IGluY2x1ZGUgdGhlIGRlZmF1bHQgZmlsZSBzZXQiKSwKKyAgICAgICAgKCdwcnVuZScsIE5vbmUsCisgICAgICAgICAic3BlY2lmaWNhbGx5IGV4Y2x1ZGUgZmlsZXMvZGlyZWN0b3JpZXMgdGhhdCBzaG91bGQgbm90IGJlICIKKyAgICAgICAgICJkaXN0cmlidXRlZCAoYnVpbGQgdHJlZSwgUkNTL0NWUyBkaXJzLCBldGMuKSAiCisgICAgICAgICAiW2RlZmF1bHQ7IGRpc2FibGUgd2l0aCAtLW5vLXBydW5lXSIpLAorICAgICAgICAoJ25vLXBydW5lJywgTm9uZSwKKyAgICAgICAgICJkb24ndCBhdXRvbWF0aWNhbGx5IGV4Y2x1ZGUgYW55dGhpbmciKSwKKyAgICAgICAgKCdtYW5pZmVzdC1vbmx5JywgJ28nLAorICAgICAgICAgImp1c3QgcmVnZW5lcmF0ZSB0aGUgbWFuaWZlc3QgYW5kIHRoZW4gc3RvcCAiKSwKKyAgICAgICAgKCdmb3JtYXRzPScsIE5vbmUsCisgICAgICAgICAiZm9ybWF0cyBmb3Igc291cmNlIGRpc3RyaWJ1dGlvbiAoY29tbWEtc2VwYXJhdGVkIGxpc3QpIiksCisgICAgICAgICgna2VlcC10ZW1wJywgJ2snLAorICAgICAgICAgImtlZXAgdGhlIGRpc3RyaWJ1dGlvbiB0cmVlIGFyb3VuZCBhZnRlciBjcmVhdGluZyAiICsKKyAgICAgICAgICJhcmNoaXZlIGZpbGUocykiKSwKKyAgICAgICAgKCdkaXN0LWRpcj0nLCAnZCcsCisgICAgICAgICAiZGlyZWN0b3J5IHRvIHB1dCB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBhcmNoaXZlKHMpIGluICIKKyAgICAgICAgICJbZGVmYXVsdDogZGlzdF0iKSwKKyAgICAgICAgKCdjaGVjay1tZXRhZGF0YScsIE5vbmUsCisgICAgICAgICAiRW5zdXJlIHRoYXQgYWxsIHJlcXVpcmVkIGVsZW1lbnRzIG9mIG1ldGFkYXRhICIKKyAgICAgICAgICJhcmUgc3VwcGxpZWQuIFdhcm4gaWYgYW55IG1pc3NpbmcuIFtkZWZhdWx0XSIpLAorICAgICAgICAoJ293bmVyPScsICd1JywKKyAgICAgICAgICJPd25lciBuYW1lIHVzZWQgd2hlbiBjcmVhdGluZyBhIHRhciBmaWxlIFtkZWZhdWx0OiBjdXJyZW50IHVzZXJdIiksCisgICAgICAgICgnZ3JvdXA9JywgJ2cnLAorICAgICAgICAgIkdyb3VwIG5hbWUgdXNlZCB3aGVuIGNyZWF0aW5nIGEgdGFyIGZpbGUgW2RlZmF1bHQ6IGN1cnJlbnQgZ3JvdXBdIiksCisgICAgICAgICgnbWFuaWZlc3QtYnVpbGRlcnM9JywgTm9uZSwKKyAgICAgICAgICJtYW5pZmVzdCBidWlsZGVycyAoY29tbWEtc2VwYXJhdGVkIGxpc3QpIiksCisgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsndXNlLWRlZmF1bHRzJywgJ3BydW5lJywKKyAgICAgICAgICAgICAgICAgICAgICAgJ21hbmlmZXN0LW9ubHknLCAna2VlcC10ZW1wJywgJ2NoZWNrLW1ldGFkYXRhJ10KKworICAgIGhlbHBfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdoZWxwLWZvcm1hdHMnLCBOb25lLAorICAgICAgICAgImxpc3QgYXZhaWxhYmxlIGRpc3RyaWJ1dGlvbiBmb3JtYXRzIiwgc2hvd19mb3JtYXRzKSwKKyAgICAgICAgXQorCisgICAgbmVnYXRpdmVfb3B0ID0geyduby1kZWZhdWx0cyc6ICd1c2UtZGVmYXVsdHMnLAorICAgICAgICAgICAgICAgICAgICAnbm8tcHJ1bmUnOiAncHJ1bmUnfQorCisgICAgZGVmYXVsdF9mb3JtYXQgPSB7J3Bvc2l4JzogJ2d6dGFyJywKKyAgICAgICAgICAgICAgICAgICAgICAnbnQnOiAnemlwJ30KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYubWFuaWZlc3QgPSBOb25lCisgICAgICAgICMgJ3VzZV9kZWZhdWx0cyc6IGlmIHRydWUsIHdlIHdpbGwgaW5jbHVkZSB0aGUgZGVmYXVsdCBmaWxlIHNldAorICAgICAgICAjIGluIHRoZSBtYW5pZmVzdAorICAgICAgICBzZWxmLnVzZV9kZWZhdWx0cyA9IFRydWUKKyAgICAgICAgc2VsZi5wcnVuZSA9IFRydWUKKyAgICAgICAgc2VsZi5tYW5pZmVzdF9vbmx5ID0gRmFsc2UKKyAgICAgICAgc2VsZi5mb3JtYXRzID0gTm9uZQorICAgICAgICBzZWxmLmtlZXBfdGVtcCA9IEZhbHNlCisgICAgICAgIHNlbGYuZGlzdF9kaXIgPSBOb25lCisKKyAgICAgICAgc2VsZi5hcmNoaXZlX2ZpbGVzID0gTm9uZQorICAgICAgICBzZWxmLm1ldGFkYXRhX2NoZWNrID0gVHJ1ZQorICAgICAgICBzZWxmLm93bmVyID0gTm9uZQorICAgICAgICBzZWxmLmdyb3VwID0gTm9uZQorICAgICAgICBzZWxmLmZpbGVsaXN0ID0gTm9uZQorICAgICAgICBzZWxmLm1hbmlmZXN0X2J1aWxkZXJzID0gTm9uZQorCisgICAgZGVmIF9jaGVja19hcmNoaXZlX2Zvcm1hdHMoc2VsZiwgZm9ybWF0cyk6CisgICAgICAgIHN1cHBvcnRlZF9mb3JtYXRzID0gW25hbWUgZm9yIG5hbWUsIGRlc2MgaW4gZ2V0X2FyY2hpdmVfZm9ybWF0cygpXQorICAgICAgICBmb3IgZm9ybWF0IGluIGZvcm1hdHM6CisgICAgICAgICAgICBpZiBmb3JtYXQgbm90IGluIHN1cHBvcnRlZF9mb3JtYXRzOgorICAgICAgICAgICAgICAgIHJldHVybiBmb3JtYXQKKyAgICAgICAgcmV0dXJuIE5vbmUKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBpZiBzZWxmLm1hbmlmZXN0IGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLm1hbmlmZXN0ID0gIk1BTklGRVNUIgorCisgICAgICAgIHNlbGYuZW5zdXJlX3N0cmluZ19saXN0KCdmb3JtYXRzJykKKyAgICAgICAgaWYgc2VsZi5mb3JtYXRzIGlzIE5vbmU6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5mb3JtYXRzID0gW3NlbGYuZGVmYXVsdF9mb3JtYXRbb3MubmFtZV1dCisgICAgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiZG9uJ3Qga25vdyBob3cgdG8gY3JlYXRlIHNvdXJjZSAiCisgICAgICAgICAgICAgICAgICAgICAgICJkaXN0cmlidXRpb25zIG9uIHBsYXRmb3JtICVzIiAlIG9zLm5hbWUpCisKKyAgICAgICAgYmFkX2Zvcm1hdCA9IHNlbGYuX2NoZWNrX2FyY2hpdmVfZm9ybWF0cyhzZWxmLmZvcm1hdHMpCisgICAgICAgIGlmIGJhZF9mb3JtYXQ6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigidW5rbm93biBhcmNoaXZlIGZvcm1hdCAnJXMnIiBcCisgICAgICAgICAgICAgICAgICAgICAgICAlIGJhZF9mb3JtYXQpCisKKyAgICAgICAgaWYgc2VsZi5kaXN0X2RpciBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5kaXN0X2RpciA9ICJkaXN0IgorCisgICAgICAgIGlmIHNlbGYuZmlsZWxpc3QgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuZmlsZWxpc3QgPSBNYW5pZmVzdCgpCisKKyAgICAgICAgaWYgc2VsZi5tYW5pZmVzdF9idWlsZGVycyBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5tYW5pZmVzdF9idWlsZGVycyA9IFtdCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHNlbGYubWFuaWZlc3RfYnVpbGRlcnMsIHN0cik6CisgICAgICAgICAgICAgICAgc2VsZi5tYW5pZmVzdF9idWlsZGVycyA9IHNlbGYubWFuaWZlc3RfYnVpbGRlcnMuc3BsaXQoJywnKQorICAgICAgICAgICAgYnVpbGRlcnMgPSBbXQorICAgICAgICAgICAgZm9yIGJ1aWxkZXIgaW4gc2VsZi5tYW5pZmVzdF9idWlsZGVyczoKKyAgICAgICAgICAgICAgICBidWlsZGVyID0gYnVpbGRlci5zdHJpcCgpCisgICAgICAgICAgICAgICAgaWYgYnVpbGRlciA9PSAnJzoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGJ1aWxkZXIgPSByZXNvbHZlX25hbWUoYnVpbGRlcikKKyAgICAgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nTW9kdWxlRXJyb3IoZSkKKworICAgICAgICAgICAgICAgIGJ1aWxkZXJzLmFwcGVuZChidWlsZGVyKQorCisgICAgICAgICAgICBzZWxmLm1hbmlmZXN0X2J1aWxkZXJzID0gYnVpbGRlcnMKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgICMgJ2ZpbGVsaXN0JyBjb250YWlucyB0aGUgbGlzdCBvZiBmaWxlcyB0aGF0IHdpbGwgbWFrZSB1cCB0aGUKKyAgICAgICAgIyBtYW5pZmVzdAorICAgICAgICBzZWxmLmZpbGVsaXN0LmNsZWFyKCkKKworICAgICAgICAjIENoZWNrIHRoZSBwYWNrYWdlIG1ldGFkYXRhCisgICAgICAgIGlmIHNlbGYubWV0YWRhdGFfY2hlY2s6CisgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKCdjaGVjaycpCisKKyAgICAgICAgIyBEbyB3aGF0ZXZlciBpdCB0YWtlcyB0byBnZXQgdGhlIGxpc3Qgb2YgZmlsZXMgdG8gcHJvY2VzcworICAgICAgICAjIChwcm9jZXNzIHRoZSBtYW5pZmVzdCB0ZW1wbGF0ZSwgcmVhZCBhbiBleGlzdGluZyBtYW5pZmVzdCwKKyAgICAgICAgIyB3aGF0ZXZlcikuICBGaWxlIGxpc3QgaXMgYWNjdW11bGF0ZWQgaW4gJ3NlbGYuZmlsZWxpc3QnLgorICAgICAgICBzZWxmLmdldF9maWxlX2xpc3QoKQorCisgICAgICAgICMgSWYgdXNlciBqdXN0IHdhbnRlZCB1cyB0byByZWdlbmVyYXRlIHRoZSBtYW5pZmVzdCwgc3RvcCBub3cuCisgICAgICAgIGlmIHNlbGYubWFuaWZlc3Rfb25seToKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgICMgT3RoZXJ3aXNlLCBnbyBhaGVhZCBhbmQgY3JlYXRlIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIHRhcmJhbGwsCisgICAgICAgICMgb3IgemlwZmlsZSwgb3Igd2hhdGV2ZXIuCisgICAgICAgIHNlbGYubWFrZV9kaXN0cmlidXRpb24oKQorCisgICAgZGVmIGdldF9maWxlX2xpc3Qoc2VsZik6CisgICAgICAgICIiIkZpZ3VyZSBvdXQgdGhlIGxpc3Qgb2YgZmlsZXMgdG8gaW5jbHVkZSBpbiB0aGUgc291cmNlCisgICAgICAgIGRpc3RyaWJ1dGlvbiwgYW5kIHB1dCBpdCBpbiAnc2VsZi5maWxlbGlzdCcuICBUaGlzIG1pZ2h0IGludm9sdmUKKyAgICAgICAgcmVhZGluZyB0aGUgbWFuaWZlc3QgdGVtcGxhdGUgKGFuZCB3cml0aW5nIHRoZSBtYW5pZmVzdCksIG9yIGp1c3QKKyAgICAgICAgcmVhZGluZyB0aGUgbWFuaWZlc3QsIG9yIGp1c3QgdXNpbmcgdGhlIGRlZmF1bHQgZmlsZSBzZXQgLS0gaXQgYWxsCisgICAgICAgIGRlcGVuZHMgb24gdGhlIHVzZXIncyBvcHRpb25zLgorICAgICAgICAiIiIKKyAgICAgICAgdGVtcGxhdGVfZXhpc3RzID0gbGVuKHNlbGYuZGlzdHJpYnV0aW9uLmV4dHJhX2ZpbGVzKSA+IDAKKyAgICAgICAgaWYgbm90IHRlbXBsYXRlX2V4aXN0czoKKyAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCclczogdXNpbmcgZGVmYXVsdCBmaWxlIGxpc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5nZXRfY29tbWFuZF9uYW1lKCkpCisgICAgICAgIHNlbGYuZmlsZWxpc3QuZmluZGFsbCgpCisKKyAgICAgICAgaWYgc2VsZi51c2VfZGVmYXVsdHM6CisgICAgICAgICAgICBzZWxmLmFkZF9kZWZhdWx0cygpCisgICAgICAgIGlmIHRlbXBsYXRlX2V4aXN0czoKKyAgICAgICAgICAgIHRlbXBsYXRlID0gJ1xuJy5qb2luKHNlbGYuZGlzdHJpYnV0aW9uLmV4dHJhX2ZpbGVzKQorICAgICAgICAgICAgc2VsZi5maWxlbGlzdC5yZWFkX3RlbXBsYXRlKFN0cmluZ0lPKHRlbXBsYXRlKSkKKworICAgICAgICAjIGNhbGwgbWFuaWZlc3QgYnVpbGRlcnMsIGlmIGFueS4KKyAgICAgICAgZm9yIGJ1aWxkZXIgaW4gc2VsZi5tYW5pZmVzdF9idWlsZGVyczoKKyAgICAgICAgICAgIGJ1aWxkZXIoc2VsZi5kaXN0cmlidXRpb24sIHNlbGYuZmlsZWxpc3QpCisKKyAgICAgICAgaWYgc2VsZi5wcnVuZToKKyAgICAgICAgICAgIHNlbGYucHJ1bmVfZmlsZV9saXN0KCkKKworICAgICAgICBzZWxmLmZpbGVsaXN0LndyaXRlKHNlbGYubWFuaWZlc3QpCisKKyAgICBkZWYgYWRkX2RlZmF1bHRzKHNlbGYpOgorICAgICAgICAiIiJBZGQgYWxsIGRlZmF1bHQgZmlsZXMgdG8gc2VsZi5maWxlbGlzdC4KKworICAgICAgICBJbiBhZGRpdGlvbiB0byB0aGUgc2V0dXAuY2ZnIGZpbGUsIHRoaXMgd2lsbCBpbmNsdWRlIGFsbCBmaWxlcyByZXR1cm5lZAorICAgICAgICBieSB0aGUgZ2V0X3NvdXJjZV9maWxlcyBvZiBldmVyeSByZWdpc3RlcmVkIGNvbW1hbmQuICBUaGlzIHdpbGwgZmluZAorICAgICAgICBQeXRob24gbW9kdWxlcyBhbmQgcGFja2FnZXMsIGRhdGEgZmlsZXMgbGlzdGVkIGluIHBhY2thZ2VfZGF0YV8sCisgICAgICAgIGRhdGFfZmlsZXMgYW5kIGV4dHJhX2ZpbGVzLCBzY3JpcHRzLCBDIHNvdXJjZXMgb2YgZXh0ZW5zaW9uIG1vZHVsZXMgb3IKKyAgICAgICAgQyBsaWJyYXJpZXMgKGhlYWRlcnMgYXJlIG1pc3NpbmcpLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoJ3NldHVwLmNmZycpOgorICAgICAgICAgICAgc2VsZi5maWxlbGlzdC5hcHBlbmQoJ3NldHVwLmNmZycpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIud2FybmluZygiJXM6IHN0YW5kYXJkICdzZXR1cC5jZmcnIGZpbGUgbm90IGZvdW5kIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZ2V0X2NvbW1hbmRfbmFtZSgpKQorCisgICAgICAgIGZvciBjbWRfbmFtZSBpbiBnZXRfY29tbWFuZF9uYW1lcygpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGNtZF9vYmogPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZChjbWRfbmFtZSkKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdPcHRpb25FcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuZmlsZWxpc3QuZXh0ZW5kKGNtZF9vYmouZ2V0X3NvdXJjZV9maWxlcygpKQorCisgICAgZGVmIHBydW5lX2ZpbGVfbGlzdChzZWxmKToKKyAgICAgICAgIiIiUHJ1bmUgb2ZmIGJyYW5jaGVzIHRoYXQgbWlnaHQgc2xpcCBpbnRvIHRoZSBmaWxlIGxpc3QgYXMgY3JlYXRlZAorICAgICAgICBieSAncmVhZF90ZW1wbGF0ZSgpJywgYnV0IHJlYWxseSBkb24ndCBiZWxvbmcgdGhlcmU6CisgICAgICAgICAgKiB0aGUgYnVpbGQgdHJlZSAodHlwaWNhbGx5ICJidWlsZCIpCisgICAgICAgICAgKiB0aGUgcmVsZWFzZSB0cmVlIGl0c2VsZiAob25seSBhbiBpc3N1ZSBpZiB3ZSByYW4gInNkaXN0IgorICAgICAgICAgICAgcHJldmlvdXNseSB3aXRoIC0ta2VlcC10ZW1wLCBvciBpdCBhYm9ydGVkKQorICAgICAgICAgICogYW55IFJDUywgQ1ZTLCAuc3ZuLCAuaGcsIC5naXQsIC5ienIsIF9kYXJjcyBkaXJlY3RvcmllcworICAgICAgICAiIiIKKyAgICAgICAgYnVpbGQgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGQnKQorICAgICAgICBiYXNlX2RpciA9IHNlbGYuZGlzdHJpYnV0aW9uLmdldF9mdWxsbmFtZSgpCisKKyAgICAgICAgc2VsZi5maWxlbGlzdC5leGNsdWRlX3BhdHRlcm4oTm9uZSwgcHJlZml4PWJ1aWxkLmJ1aWxkX2Jhc2UpCisgICAgICAgIHNlbGYuZmlsZWxpc3QuZXhjbHVkZV9wYXR0ZXJuKE5vbmUsIHByZWZpeD1iYXNlX2RpcikKKworICAgICAgICAjIHBydW5pbmcgb3V0IHZjcyBkaXJlY3RvcmllcworICAgICAgICAjIGJvdGggc2VwYXJhdG9ycyBhcmUgdXNlZCB1bmRlciB3aW4zMgorICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKKyAgICAgICAgICAgIHNlcHMgPSByJy98XFwnCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZXBzID0gJy8nCisKKyAgICAgICAgdmNzX2RpcnMgPSBbJ1JDUycsICdDVlMnLCByJ1wuc3ZuJywgcidcLmhnJywgcidcLmdpdCcsIHInXC5ienInLAorICAgICAgICAgICAgICAgICAgICAnX2RhcmNzJ10KKyAgICAgICAgdmNzX3B0cm4gPSByJyhefCVzKSglcykoJXMpLionICUgKHNlcHMsICd8Jy5qb2luKHZjc19kaXJzKSwgc2VwcykKKyAgICAgICAgc2VsZi5maWxlbGlzdC5leGNsdWRlX3BhdHRlcm4odmNzX3B0cm4sIGlzX3JlZ2V4PVRydWUpCisKKyAgICBkZWYgbWFrZV9yZWxlYXNlX3RyZWUoc2VsZiwgYmFzZV9kaXIsIGZpbGVzKToKKyAgICAgICAgIiIiQ3JlYXRlIHRoZSBkaXJlY3RvcnkgdHJlZSB0aGF0IHdpbGwgYmVjb21lIHRoZSBzb3VyY2UKKyAgICAgICAgZGlzdHJpYnV0aW9uIGFyY2hpdmUuICBBbGwgZGlyZWN0b3JpZXMgaW1wbGllZCBieSB0aGUgZmlsZW5hbWVzIGluCisgICAgICAgICdmaWxlcycgYXJlIGNyZWF0ZWQgdW5kZXIgJ2Jhc2VfZGlyJywgYW5kIHRoZW4gd2UgaGFyZCBsaW5rIG9yIGNvcHkKKyAgICAgICAgKGlmIGhhcmQgbGlua2luZyBpcyB1bmF2YWlsYWJsZSkgdGhvc2UgZmlsZXMgaW50byBwbGFjZS4KKyAgICAgICAgRXNzZW50aWFsbHksIHRoaXMgZHVwbGljYXRlcyB0aGUgZGV2ZWxvcGVyJ3Mgc291cmNlIHRyZWUsIGJ1dCBpbiBhCisgICAgICAgIGRpcmVjdG9yeSBuYW1lZCBhZnRlciB0aGUgZGlzdHJpYnV0aW9uLCBjb250YWluaW5nIG9ubHkgdGhlIGZpbGVzCisgICAgICAgIHRvIGJlIGRpc3RyaWJ1dGVkLgorICAgICAgICAiIiIKKyAgICAgICAgIyBDcmVhdGUgYWxsIHRoZSBkaXJlY3RvcmllcyB1bmRlciAnYmFzZV9kaXInIG5lY2Vzc2FyeSB0bworICAgICAgICAjIHB1dCAnZmlsZXMnIHRoZXJlOyB0aGUgJ21rcGF0aCgpJyBpcyBqdXN0IHNvIHdlIGRvbid0IGRpZQorICAgICAgICAjIGlmIHRoZSBtYW5pZmVzdCBoYXBwZW5zIHRvIGJlIGVtcHR5LgorICAgICAgICBzZWxmLm1rcGF0aChiYXNlX2RpcikKKyAgICAgICAgc2VsZi5jcmVhdGVfdHJlZShiYXNlX2RpciwgZmlsZXMsIGRyeV9ydW49c2VsZi5kcnlfcnVuKQorCisgICAgICAgICMgQW5kIHdhbGsgb3ZlciB0aGUgbGlzdCBvZiBmaWxlcywgZWl0aGVyIG1ha2luZyBhIGhhcmQgbGluayAoaWYKKyAgICAgICAgIyBvcy5saW5rIGV4aXN0cykgdG8gZWFjaCBvbmUgdGhhdCBkb2Vzbid0IGFscmVhZHkgZXhpc3QgaW4gaXRzCisgICAgICAgICMgY29ycmVzcG9uZGluZyBsb2NhdGlvbiB1bmRlciAnYmFzZV9kaXInLCBvciBjb3B5aW5nIGVhY2ggZmlsZQorICAgICAgICAjIHRoYXQncyBvdXQtb2YtZGF0ZSBpbiAnYmFzZV9kaXInLiAgKFVzdWFsbHksIGFsbCBmaWxlcyB3aWxsIGJlCisgICAgICAgICMgb3V0LW9mLWRhdGUsIGJlY2F1c2UgYnkgZGVmYXVsdCB3ZSBibG93IGF3YXkgJ2Jhc2VfZGlyJyB3aGVuCisgICAgICAgICMgd2UncmUgZG9uZSBtYWtpbmcgdGhlIGRpc3RyaWJ1dGlvbiBhcmNoaXZlcy4pCisKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xpbmsnKTogICAgICAgICMgY2FuIG1ha2UgaGFyZCBsaW5rcyBvbiB0aGlzIHN5c3RlbQorICAgICAgICAgICAgbGluayA9ICdoYXJkJworICAgICAgICAgICAgbXNnID0gIm1ha2luZyBoYXJkIGxpbmtzIGluICVzLi4uIiAlIGJhc2VfZGlyCisgICAgICAgIGVsc2U6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBub3BlLCBoYXZlIHRvIGNvcHkKKyAgICAgICAgICAgIGxpbmsgPSBOb25lCisgICAgICAgICAgICBtc2cgPSAiY29weWluZyBmaWxlcyB0byAlcy4uLiIgJSBiYXNlX2RpcgorCisgICAgICAgIGlmIG5vdCBmaWxlczoKKyAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJubyBmaWxlcyB0byBkaXN0cmlidXRlIC0tIGVtcHR5IG1hbmlmZXN0PyIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuaW5mbyhtc2cpCisKKyAgICAgICAgZm9yIGZpbGUgaW4gc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGEucmVxdWlyZXNfZmlsZXM6CisgICAgICAgICAgICBpZiBmaWxlIG5vdCBpbiBmaWxlczoKKyAgICAgICAgICAgICAgICBtc2cgPSAiJyVzJyBtdXN0IGJlIGluY2x1ZGVkIGV4cGxpY2l0bHkgaW4gJ2V4dHJhX2ZpbGVzJyIgXAorICAgICAgICAgICAgICAgICAgICAgICAgJSBmaWxlCisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKG1zZykKKworICAgICAgICBmb3IgZmlsZSBpbiBmaWxlczoKKyAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmlzZmlsZShmaWxlKToKKyAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygiJyVzJyBub3QgYSByZWd1bGFyIGZpbGUgLS0gc2tpcHBpbmciLCBmaWxlKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBkZXN0ID0gb3MucGF0aC5qb2luKGJhc2VfZGlyLCBmaWxlKQorICAgICAgICAgICAgICAgIHNlbGYuY29weV9maWxlKGZpbGUsIGRlc3QsIGxpbms9bGluaykKKworICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YS53cml0ZShvcy5wYXRoLmpvaW4oYmFzZV9kaXIsICdQS0ctSU5GTycpKQorCisgICAgZGVmIG1ha2VfZGlzdHJpYnV0aW9uKHNlbGYpOgorICAgICAgICAiIiJDcmVhdGUgdGhlIHNvdXJjZSBkaXN0cmlidXRpb24ocykuICBGaXJzdCwgd2UgY3JlYXRlIHRoZSByZWxlYXNlCisgICAgICAgIHRyZWUgd2l0aCAnbWFrZV9yZWxlYXNlX3RyZWUoKSc7IHRoZW4sIHdlIGNyZWF0ZSBhbGwgcmVxdWlyZWQKKyAgICAgICAgYXJjaGl2ZSBmaWxlcyAoYWNjb3JkaW5nIHRvICdzZWxmLmZvcm1hdHMnKSBmcm9tIHRoZSByZWxlYXNlIHRyZWUuCisgICAgICAgIEZpbmFsbHksIHdlIGNsZWFuIHVwIGJ5IGJsb3dpbmcgYXdheSB0aGUgcmVsZWFzZSB0cmVlICh1bmxlc3MKKyAgICAgICAgJ3NlbGYua2VlcF90ZW1wJyBpcyB0cnVlKS4gIFRoZSBsaXN0IG9mIGFyY2hpdmUgZmlsZXMgY3JlYXRlZCBpcworICAgICAgICBzdG9yZWQgc28gaXQgY2FuIGJlIHJldHJpZXZlZCBsYXRlciBieSAnZ2V0X2FyY2hpdmVfZmlsZXMoKScuCisgICAgICAgICIiIgorICAgICAgICAjIERvbid0IHdhcm4gYWJvdXQgbWlzc2luZyBtZXRhZGF0YSBoZXJlIC0tIHNob3VsZCBiZSAoYW5kIGlzISkKKyAgICAgICAgIyBkb25lIGVsc2V3aGVyZS4KKyAgICAgICAgYmFzZV9kaXIgPSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfZnVsbG5hbWUoKQorICAgICAgICBiYXNlX25hbWUgPSBvcy5wYXRoLmpvaW4oc2VsZi5kaXN0X2RpciwgYmFzZV9kaXIpCisKKyAgICAgICAgc2VsZi5tYWtlX3JlbGVhc2VfdHJlZShiYXNlX2Rpciwgc2VsZi5maWxlbGlzdC5maWxlcykKKyAgICAgICAgYXJjaGl2ZV9maWxlcyA9IFtdICAgICAgICAgICAgICAjIHJlbWVtYmVyIG5hbWVzIG9mIGZpbGVzIHdlIGNyZWF0ZQorICAgICAgICAjIHRhciBhcmNoaXZlIG11c3QgYmUgY3JlYXRlZCBsYXN0IHRvIGF2b2lkIG92ZXJ3cml0ZSBhbmQgcmVtb3ZlCisgICAgICAgIGlmICd0YXInIGluIHNlbGYuZm9ybWF0czoKKyAgICAgICAgICAgIHNlbGYuZm9ybWF0cy5hcHBlbmQoc2VsZi5mb3JtYXRzLnBvcChzZWxmLmZvcm1hdHMuaW5kZXgoJ3RhcicpKSkKKworICAgICAgICBmb3IgZm10IGluIHNlbGYuZm9ybWF0czoKKyAgICAgICAgICAgIGZpbGUgPSBzZWxmLm1ha2VfYXJjaGl2ZShiYXNlX25hbWUsIGZtdCwgYmFzZV9kaXI9YmFzZV9kaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3duZXI9c2VsZi5vd25lciwgZ3JvdXA9c2VsZi5ncm91cCkKKyAgICAgICAgICAgIGFyY2hpdmVfZmlsZXMuYXBwZW5kKGZpbGUpCisgICAgICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbi5kaXN0X2ZpbGVzLmFwcGVuZCgoJ3NkaXN0JywgJycsIGZpbGUpKQorCisgICAgICAgIHNlbGYuYXJjaGl2ZV9maWxlcyA9IGFyY2hpdmVfZmlsZXMKKworICAgICAgICBpZiBub3Qgc2VsZi5rZWVwX3RlbXA6CisgICAgICAgICAgICBpZiBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ3JlbW92aW5nICVzJywgYmFzZV9kaXIpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJtdHJlZShiYXNlX2RpcikKKworICAgIGRlZiBnZXRfYXJjaGl2ZV9maWxlcyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBsaXN0IG9mIGFyY2hpdmUgZmlsZXMgY3JlYXRlZCB3aGVuIHRoZSBjb21tYW5kCisgICAgICAgIHdhcyBydW4sIG9yIE5vbmUgaWYgdGhlIGNvbW1hbmQgaGFzbid0IHJ1biB5ZXQuCisgICAgICAgICIiIgorICAgICAgICByZXR1cm4gc2VsZi5hcmNoaXZlX2ZpbGVzCisKKyAgICBkZWYgY3JlYXRlX3RyZWUoc2VsZiwgYmFzZV9kaXIsIGZpbGVzLCBtb2RlPTBvNzc3LCBkcnlfcnVuPUZhbHNlKToKKyAgICAgICAgbmVlZF9kaXIgPSBzZXQoKQorICAgICAgICBmb3IgZmlsZSBpbiBmaWxlczoKKyAgICAgICAgICAgIG5lZWRfZGlyLmFkZChvcy5wYXRoLmpvaW4oYmFzZV9kaXIsIG9zLnBhdGguZGlybmFtZShmaWxlKSkpCisKKyAgICAgICAgIyBOb3cgY3JlYXRlIHRoZW0KKyAgICAgICAgZm9yIGRpciBpbiBzb3J0ZWQobmVlZF9kaXIpOgorICAgICAgICAgICAgc2VsZi5ta3BhdGgoZGlyLCBtb2RlLCBkcnlfcnVuPWRyeV9ydW4pCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvdGVzdC5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC90ZXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRkNTM0OGYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvdGVzdC5weQpAQCAtMCwwICsxLDgwIEBACisiIiJSdW4gdGhlIHByb2plY3QncyB0ZXN0IHN1aXRlLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCBsb2dnaW5nCitpbXBvcnQgdW5pdHRlc3QKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmRhdGFiYXNlIGltcG9ydCBnZXRfZGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCByZXNvbHZlX25hbWUKKworCitjbGFzcyB0ZXN0KENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAicnVuIHRoZSBwcm9qZWN0J3MgdGVzdCBzdWl0ZSIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdzdWl0ZT0nLCAncycsCisgICAgICAgICAidGVzdCBzdWl0ZSB0byBydW4gKGZvciBleGFtcGxlOiAnc29tZV9tb2R1bGUudGVzdF9zdWl0ZScpIiksCisgICAgICAgICgncnVubmVyPScsIE5vbmUsCisgICAgICAgICAidGVzdCBydW5uZXIgdG8gYmUgY2FsbGVkLiIpLAorICAgICAgICAoJ3Rlc3RzLXJlcXVpcmU9JywgTm9uZSwKKyAgICAgICAgICJsaXN0IG9mIGRpc3RyaWJ1dGlvbnMgcmVxdWlyZWQgdG8gcnVuIHRoZSB0ZXN0IHN1aXRlLiIpLAorICAgIF0KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuc3VpdGUgPSBOb25lCisgICAgICAgIHNlbGYucnVubmVyID0gTm9uZQorICAgICAgICBzZWxmLnRlc3RzX3JlcXVpcmUgPSBbXQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuYnVpbGRfbGliID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoImJ1aWxkIikuYnVpbGRfbGliCisgICAgICAgIGZvciByZXF1aXJlbWVudCBpbiBzZWxmLnRlc3RzX3JlcXVpcmU6CisgICAgICAgICAgICBpZiBnZXRfZGlzdHJpYnV0aW9uKHJlcXVpcmVtZW50KSBpcyBOb25lOgorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJ0ZXN0IGRlcGVuZGVuY3kgJXMgaXMgbm90IGluc3RhbGxlZCwgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0ZXN0cyBtYXkgZmFpbCIsIHJlcXVpcmVtZW50KQorICAgICAgICBpZiAobm90IHNlbGYuc3VpdGUgYW5kIG5vdCBzZWxmLnJ1bm5lciBhbmQKKyAgICAgICAgICAgIHNlbGYuZ2V0X3V0X3dpdGhfZGlzY292ZXJ5KCkgaXMgTm9uZSk6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigKKyAgICAgICAgICAgICAgICAibm8gdGVzdCBkaXNjb3ZlcnkgYXZhaWxhYmxlLCBwbGVhc2UgZ2l2ZSBhICdzdWl0ZScgb3IgIgorICAgICAgICAgICAgICAgICIncnVubmVyJyBvcHRpb24gb3IgaW5zdGFsbCB1bml0dGVzdDIiKQorCisgICAgZGVmIGdldF91dF93aXRoX2Rpc2NvdmVyeShzZWxmKToKKyAgICAgICAgaWYgaGFzYXR0cih1bml0dGVzdC5UZXN0TG9hZGVyLCAiZGlzY292ZXIiKToKKyAgICAgICAgICAgIHJldHVybiB1bml0dGVzdAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGltcG9ydCB1bml0dGVzdDIKKyAgICAgICAgICAgICAgICByZXR1cm4gdW5pdHRlc3QyCisgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIHByZXZfc3lzcGF0aCA9IHN5cy5wYXRoWzpdCisgICAgICAgIHRyeToKKyAgICAgICAgICAgICMgYnVpbGQgcmVsZWFzZQorICAgICAgICAgICAgYnVpbGQgPSBzZWxmLnJlaW5pdGlhbGl6ZV9jb21tYW5kKCdidWlsZCcpCisgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKCdidWlsZCcpCisgICAgICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgYnVpbGQuYnVpbGRfbGliKQorCisgICAgICAgICAgICAjIFhYWCBtYXliZSB3ZSBjb3VsZCBwYXNzIHRoZSB2ZXJib3NlIGFyZ3VtZW50IG9mIHB5c2V0dXAgaGVyZQorICAgICAgICAgICAgbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoJ3BhY2thZ2luZycpCisgICAgICAgICAgICB2ZXJib3NlID0gbG9nZ2VyLmdldEVmZmVjdGl2ZUxldmVsKCkgPj0gbG9nZ2luZy5ERUJVRworICAgICAgICAgICAgdmVyYm9zaXR5ID0gdmVyYm9zZSArIDEKKworICAgICAgICAgICAgIyBydW4gdGhlIHRlc3RzCisgICAgICAgICAgICBpZiBzZWxmLnJ1bm5lcjoKKyAgICAgICAgICAgICAgICByZXNvbHZlX25hbWUoc2VsZi5ydW5uZXIpKCkKKyAgICAgICAgICAgIGVsaWYgc2VsZi5zdWl0ZToKKyAgICAgICAgICAgICAgICBydW5uZXIgPSB1bml0dGVzdC5UZXh0VGVzdFJ1bm5lcih2ZXJib3NpdHk9dmVyYm9zaXR5KQorICAgICAgICAgICAgICAgIHJ1bm5lci5ydW4ocmVzb2x2ZV9uYW1lKHNlbGYuc3VpdGUpKCkpCisgICAgICAgICAgICBlbGlmIHNlbGYuZ2V0X3V0X3dpdGhfZGlzY292ZXJ5KCk6CisgICAgICAgICAgICAgICAgdXQgPSBzZWxmLmdldF91dF93aXRoX2Rpc2NvdmVyeSgpCisgICAgICAgICAgICAgICAgdGVzdF9zdWl0ZSA9IHV0LlRlc3RMb2FkZXIoKS5kaXNjb3Zlcihvcy5jdXJkaXIpCisgICAgICAgICAgICAgICAgcnVubmVyID0gdXQuVGV4dFRlc3RSdW5uZXIodmVyYm9zaXR5PXZlcmJvc2l0eSkKKyAgICAgICAgICAgICAgICBydW5uZXIucnVuKHRlc3Rfc3VpdGUpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzeXMucGF0aFs6XSA9IHByZXZfc3lzcGF0aApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3VwbG9hZC5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC91cGxvYWQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjU2ZDJjNgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC91cGxvYWQucHkKQEAgLTAsMCArMSwxNjggQEAKKyIiIlVwbG9hZCBhIGRpc3RyaWJ1dGlvbiB0byBhIHByb2plY3QgaW5kZXguIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHNvY2tldAoraW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCBwbGF0Zm9ybQoraW1wb3J0IHVybGxpYi5wYXJzZQorZnJvbSBiYXNlNjQgaW1wb3J0IHN0YW5kYXJkX2I2NGVuY29kZQorZnJvbSBoYXNobGliIGltcG9ydCBtZDUKK2Zyb20gdXJsbGliLmVycm9yIGltcG9ydCBIVFRQRXJyb3IKK2Zyb20gdXJsbGliLnJlcXVlc3QgaW1wb3J0IHVybG9wZW4sIFJlcXVlc3QKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgKHNwYXduLCByZWFkX3B5cGlyYywgREVGQVVMVF9SRVBPU0lUT1JZLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIERFRkFVTFRfUkVBTE0sIGVuY29kZV9tdWx0aXBhcnQpCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorCisKK2NsYXNzIHVwbG9hZChDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gInVwbG9hZCBkaXN0cmlidXRpb24gdG8gUHlQSSIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdyZXBvc2l0b3J5PScsICdyJywKKyAgICAgICAgICJyZXBvc2l0b3J5IFVSTCBbZGVmYXVsdDogJXNdIiAlIERFRkFVTFRfUkVQT1NJVE9SWSksCisgICAgICAgICgnc2hvdy1yZXNwb25zZScsIE5vbmUsCisgICAgICAgICAiZGlzcGxheSBmdWxsIHJlc3BvbnNlIHRleHQgZnJvbSBzZXJ2ZXIiKSwKKyAgICAgICAgKCdzaWduJywgJ3MnLAorICAgICAgICAgInNpZ24gZmlsZXMgdG8gdXBsb2FkIHVzaW5nIGdwZyIpLAorICAgICAgICAoJ2lkZW50aXR5PScsICdpJywKKyAgICAgICAgICJHUEcgaWRlbnRpdHkgdXNlZCB0byBzaWduIGZpbGVzIiksCisgICAgICAgICgndXBsb2FkLWRvY3MnLCBOb25lLAorICAgICAgICAgInVwbG9hZCBkb2N1bWVudGF0aW9uIHRvbyIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ3Nob3ctcmVzcG9uc2UnLCAnc2lnbiddCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLnJlcG9zaXRvcnkgPSBOb25lCisgICAgICAgIHNlbGYucmVhbG0gPSBOb25lCisgICAgICAgIHNlbGYuc2hvd19yZXNwb25zZSA9IEZhbHNlCisgICAgICAgIHNlbGYudXNlcm5hbWUgPSAnJworICAgICAgICBzZWxmLnBhc3N3b3JkID0gJycKKyAgICAgICAgc2VsZi5zaG93X3Jlc3BvbnNlID0gRmFsc2UKKyAgICAgICAgc2VsZi5zaWduID0gRmFsc2UKKyAgICAgICAgc2VsZi5pZGVudGl0eSA9IE5vbmUKKyAgICAgICAgc2VsZi51cGxvYWRfZG9jcyA9IEZhbHNlCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgaWYgc2VsZi5yZXBvc2l0b3J5IGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLnJlcG9zaXRvcnkgPSBERUZBVUxUX1JFUE9TSVRPUlkKKyAgICAgICAgaWYgc2VsZi5yZWFsbSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5yZWFsbSA9IERFRkFVTFRfUkVBTE0KKyAgICAgICAgaWYgc2VsZi5pZGVudGl0eSBhbmQgbm90IHNlbGYuc2lnbjoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICJNdXN0IHVzZSAtLXNpZ24gZm9yIC0taWRlbnRpdHkgdG8gaGF2ZSBtZWFuaW5nIikKKyAgICAgICAgY29uZmlnID0gcmVhZF9weXBpcmMoc2VsZi5yZXBvc2l0b3J5LCBzZWxmLnJlYWxtKQorICAgICAgICBpZiBjb25maWcgIT0ge306CisgICAgICAgICAgICBzZWxmLnVzZXJuYW1lID0gY29uZmlnWyd1c2VybmFtZSddCisgICAgICAgICAgICBzZWxmLnBhc3N3b3JkID0gY29uZmlnWydwYXNzd29yZCddCisgICAgICAgICAgICBzZWxmLnJlcG9zaXRvcnkgPSBjb25maWdbJ3JlcG9zaXRvcnknXQorICAgICAgICAgICAgc2VsZi5yZWFsbSA9IGNvbmZpZ1sncmVhbG0nXQorCisgICAgICAgICMgZ2V0dGluZyB0aGUgcGFzc3dvcmQgZnJvbSB0aGUgZGlzdHJpYnV0aW9uCisgICAgICAgICMgaWYgcHJldmlvdXNseSBzZXQgYnkgdGhlIHJlZ2lzdGVyIGNvbW1hbmQKKyAgICAgICAgaWYgbm90IHNlbGYucGFzc3dvcmQgYW5kIHNlbGYuZGlzdHJpYnV0aW9uLnBhc3N3b3JkOgorICAgICAgICAgICAgc2VsZi5wYXNzd29yZCA9IHNlbGYuZGlzdHJpYnV0aW9uLnBhc3N3b3JkCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5kaXN0cmlidXRpb24uZGlzdF9maWxlczoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICJObyBkaXN0IGZpbGUgY3JlYXRlZCBpbiBlYXJsaWVyIGNvbW1hbmQiKQorICAgICAgICBmb3IgY29tbWFuZCwgcHl2ZXJzaW9uLCBmaWxlbmFtZSBpbiBzZWxmLmRpc3RyaWJ1dGlvbi5kaXN0X2ZpbGVzOgorICAgICAgICAgICAgc2VsZi51cGxvYWRfZmlsZShjb21tYW5kLCBweXZlcnNpb24sIGZpbGVuYW1lKQorICAgICAgICBpZiBzZWxmLnVwbG9hZF9kb2NzOgorICAgICAgICAgICAgdXBsb2FkX2RvY3MgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgidXBsb2FkX2RvY3MiKQorICAgICAgICAgICAgdXBsb2FkX2RvY3MucmVwb3NpdG9yeSA9IHNlbGYucmVwb3NpdG9yeQorICAgICAgICAgICAgdXBsb2FkX2RvY3MudXNlcm5hbWUgPSBzZWxmLnVzZXJuYW1lCisgICAgICAgICAgICB1cGxvYWRfZG9jcy5wYXNzd29yZCA9IHNlbGYucGFzc3dvcmQKKyAgICAgICAgICAgIHVwbG9hZF9kb2NzLnJ1bigpCisKKyAgICAjIFhYWCB0byBiZSByZWZhY3RvcmVkIHdpdGggcmVnaXN0ZXIucG9zdF90b19zZXJ2ZXIKKyAgICBkZWYgdXBsb2FkX2ZpbGUoc2VsZiwgY29tbWFuZCwgcHl2ZXJzaW9uLCBmaWxlbmFtZSk6CisgICAgICAgICMgTWFrZXMgc3VyZSB0aGUgcmVwb3NpdG9yeSBVUkwgaXMgY29tcGxpYW50CisgICAgICAgIHNjaGVtZSwgbmV0bG9jLCB1cmwsIHBhcmFtcywgcXVlcnksIGZyYWdtZW50cyA9IFwKKyAgICAgICAgICAgIHVybGxpYi5wYXJzZS51cmxwYXJzZShzZWxmLnJlcG9zaXRvcnkpCisgICAgICAgIGlmIHBhcmFtcyBvciBxdWVyeSBvciBmcmFnbWVudHM6CisgICAgICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcigiSW5jb21wYXRpYmxlIHVybCAlcyIgJSBzZWxmLnJlcG9zaXRvcnkpCisKKyAgICAgICAgaWYgc2NoZW1lIG5vdCBpbiAoJ2h0dHAnLCAnaHR0cHMnKToKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCJ1bnN1cHBvcnRlZCBzY2hlbWUgIiArIHNjaGVtZSkKKworICAgICAgICAjIFNpZ24gaWYgcmVxdWVzdGVkCisgICAgICAgIGlmIHNlbGYuc2lnbjoKKyAgICAgICAgICAgIGdwZ19hcmdzID0gWyJncGciLCAiLS1kZXRhY2gtc2lnbiIsICItYSIsIGZpbGVuYW1lXQorICAgICAgICAgICAgaWYgc2VsZi5pZGVudGl0eToKKyAgICAgICAgICAgICAgICBncGdfYXJnc1syOjJdID0gWyItLWxvY2FsLXVzZXIiLCBzZWxmLmlkZW50aXR5XQorICAgICAgICAgICAgc3Bhd24oZ3BnX2FyZ3MsCisgICAgICAgICAgICAgICAgICBkcnlfcnVuPXNlbGYuZHJ5X3J1bikKKworICAgICAgICAjIEZpbGwgaW4gdGhlIGRhdGEgLSBzZW5kIGFsbCB0aGUgbWV0YWRhdGEgaW4gY2FzZSB3ZSBuZWVkIHRvCisgICAgICAgICMgcmVnaXN0ZXIgYSBuZXcgcmVsZWFzZQorICAgICAgICB3aXRoIG9wZW4oZmlsZW5hbWUsICdyYicpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50ID0gZi5yZWFkKCkKKworICAgICAgICBkYXRhID0gc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGEudG9kaWN0KCkKKworICAgICAgICAjIGV4dHJhIHVwbG9hZCBpbmZvcworICAgICAgICBkYXRhWyc6YWN0aW9uJ10gPSAnZmlsZV91cGxvYWQnCisgICAgICAgIGRhdGFbJ3Byb3Rjb2xfdmVyc2lvbiddID0gJzEnCisgICAgICAgIGRhdGFbJ2NvbnRlbnQnXSA9IChvcy5wYXRoLmJhc2VuYW1lKGZpbGVuYW1lKSwgY29udGVudCkKKyAgICAgICAgZGF0YVsnZmlsZXR5cGUnXSA9IGNvbW1hbmQKKyAgICAgICAgZGF0YVsncHl2ZXJzaW9uJ10gPSBweXZlcnNpb24KKyAgICAgICAgZGF0YVsnbWQ1X2RpZ2VzdCddID0gbWQ1KGNvbnRlbnQpLmhleGRpZ2VzdCgpCisKKyAgICAgICAgaWYgY29tbWFuZCA9PSAnYmRpc3RfZHVtYic6CisgICAgICAgICAgICBkYXRhWydjb21tZW50J10gPSAnYnVpbHQgZm9yICVzJyAlIHBsYXRmb3JtLnBsYXRmb3JtKHRlcnNlPVRydWUpCisKKyAgICAgICAgaWYgc2VsZi5zaWduOgorICAgICAgICAgICAgd2l0aCBvcGVuKGZpbGVuYW1lICsgJy5hc2MnKSBhcyBmcDoKKyAgICAgICAgICAgICAgICBzaWcgPSBmcC5yZWFkKCkKKyAgICAgICAgICAgIGRhdGFbJ2dwZ19zaWduYXR1cmUnXSA9IFsKKyAgICAgICAgICAgICAgICAob3MucGF0aC5iYXNlbmFtZShmaWxlbmFtZSkgKyAiLmFzYyIsIHNpZyldCisKKyAgICAgICAgIyBzZXQgdXAgdGhlIGF1dGhlbnRpY2F0aW9uCisgICAgICAgICMgVGhlIGV4YWN0IGVuY29kaW5nIG9mIHRoZSBhdXRoZW50aWNhdGlvbiBzdHJpbmcgaXMgZGViYXRlZC4KKyAgICAgICAgIyBBbnl3YXkgUHlQSSBvbmx5IGFjY2VwdHMgYXNjaWkgZm9yIGJvdGggdXNlcm5hbWUgb3IgcGFzc3dvcmQuCisgICAgICAgIHVzZXJfcGFzcyA9IChzZWxmLnVzZXJuYW1lICsgIjoiICsgc2VsZi5wYXNzd29yZCkuZW5jb2RlKCdhc2NpaScpCisgICAgICAgIGF1dGggPSBiIkJhc2ljICIgKyBzdGFuZGFyZF9iNjRlbmNvZGUodXNlcl9wYXNzKQorCisgICAgICAgICMgQnVpbGQgdXAgdGhlIE1JTUUgcGF5bG9hZCBmb3IgdGhlIFBPU1QgZGF0YQorICAgICAgICBmaWxlcyA9IFtdCisgICAgICAgIGZvciBrZXkgaW4gKCdjb250ZW50JywgJ2dwZ19zaWduYXR1cmUnKToKKyAgICAgICAgICAgIGlmIGtleSBpbiBkYXRhOgorICAgICAgICAgICAgICAgIGZpbGVuYW1lXywgdmFsdWUgPSBkYXRhLnBvcChrZXkpCisgICAgICAgICAgICAgICAgZmlsZXMuYXBwZW5kKChrZXksIGZpbGVuYW1lXywgdmFsdWUpKQorCisgICAgICAgIGNvbnRlbnRfdHlwZSwgYm9keSA9IGVuY29kZV9tdWx0aXBhcnQoZGF0YS5pdGVtcygpLCBmaWxlcykKKworICAgICAgICBsb2dnZXIuaW5mbygiU3VibWl0dGluZyAlcyB0byAlcyIsIGZpbGVuYW1lLCBzZWxmLnJlcG9zaXRvcnkpCisKKyAgICAgICAgIyBidWlsZCB0aGUgUmVxdWVzdAorICAgICAgICBoZWFkZXJzID0geydDb250ZW50LXR5cGUnOiBjb250ZW50X3R5cGUsCisgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtbGVuZ3RoJzogc3RyKGxlbihib2R5KSksCisgICAgICAgICAgICAgICAgICAgJ0F1dGhvcml6YXRpb24nOiBhdXRofQorCisgICAgICAgIHJlcXVlc3QgPSBSZXF1ZXN0KHNlbGYucmVwb3NpdG9yeSwgYm9keSwgaGVhZGVycykKKyAgICAgICAgIyBzZW5kIHRoZSBkYXRhCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJlc3VsdCA9IHVybG9wZW4ocmVxdWVzdCkKKyAgICAgICAgICAgIHN0YXR1cyA9IHJlc3VsdC5jb2RlCisgICAgICAgICAgICByZWFzb24gPSByZXN1bHQubXNnCisgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3IgYXMgZToKKyAgICAgICAgICAgIGxvZ2dlci5lcnJvcihlKQorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGV4Y2VwdCBIVFRQRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHN0YXR1cyA9IGUuY29kZQorICAgICAgICAgICAgcmVhc29uID0gZS5tc2cKKworICAgICAgICBpZiBzdGF0dXMgPT0gMjAwOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ1NlcnZlciByZXNwb25zZSAoJXMpOiAlcycsIHN0YXR1cywgcmVhc29uKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nZ2VyLmVycm9yKCdVcGxvYWQgZmFpbGVkICglcyk6ICVzJywgc3RhdHVzLCByZWFzb24pCisKKyAgICAgICAgaWYgc2VsZi5zaG93X3Jlc3BvbnNlIGFuZCBsb2dnZXIuaXNFbmFibGVkRm9yKGxvZ2dpbmcuSU5GTyk6CisgICAgICAgICAgICBzZXAgPSAnLScgKiA3NQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJyVzXG4lc1xuJXMnLCBzZXAsIHJlc3VsdC5yZWFkKCkuZGVjb2RlKCksIHNlcCkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC91cGxvYWRfZG9jcy5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC91cGxvYWRfZG9jcy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMGUzN2I1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3VwbG9hZF9kb2NzLnB5CkBAIC0wLDAgKzEsMTMxIEBACisiIiJVcGxvYWQgSFRNTCBkb2N1bWVudGF0aW9uIHRvIGEgcHJvamVjdCBpbmRleC4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgYmFzZTY0CitpbXBvcnQgc29ja2V0CitpbXBvcnQgemlwZmlsZQoraW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCBodHRwLmNsaWVudAoraW1wb3J0IHVybGxpYi5wYXJzZQorZnJvbSBpbyBpbXBvcnQgQnl0ZXNJTworCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCAocmVhZF9weXBpcmMsIERFRkFVTFRfUkVQT1NJVE9SWSwgREVGQVVMVF9SRUFMTSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVfbXVsdGlwYXJ0KQorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdGaWxlRXJyb3IKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCisKKworZGVmIHppcF9kaXIoZGlyZWN0b3J5KToKKyAgICAiIiJDb21wcmVzc2VzIHJlY3Vyc2l2ZWx5IGNvbnRlbnRzIG9mIGRpcmVjdG9yeSBpbnRvIGEgQnl0ZXNJTyBvYmplY3QiIiIKKyAgICBkZXN0aW5hdGlvbiA9IEJ5dGVzSU8oKQorICAgIHdpdGggemlwZmlsZS5aaXBGaWxlKGRlc3RpbmF0aW9uLCAidyIpIGFzIHppcF9maWxlOgorICAgICAgICBmb3Igcm9vdCwgZGlycywgZmlsZXMgaW4gb3Mud2FsayhkaXJlY3RvcnkpOgorICAgICAgICAgICAgZm9yIG5hbWUgaW4gZmlsZXM6CisgICAgICAgICAgICAgICAgZnVsbCA9IG9zLnBhdGguam9pbihyb290LCBuYW1lKQorICAgICAgICAgICAgICAgIHJlbGF0aXZlID0gcm9vdFtsZW4oZGlyZWN0b3J5KTpdLmxzdHJpcChvcy5wYXRoLnNlcCkKKyAgICAgICAgICAgICAgICBkZXN0ID0gb3MucGF0aC5qb2luKHJlbGF0aXZlLCBuYW1lKQorICAgICAgICAgICAgICAgIHppcF9maWxlLndyaXRlKGZ1bGwsIGRlc3QpCisgICAgcmV0dXJuIGRlc3RpbmF0aW9uCisKKworY2xhc3MgdXBsb2FkX2RvY3MoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJ1cGxvYWQgSFRNTCBkb2N1bWVudGF0aW9uIHRvIFB5UEkiCisKKyAgICB1c2VyX29wdGlvbnMgPSBbCisgICAgICAgICgncmVwb3NpdG9yeT0nLCAncicsCisgICAgICAgICAicmVwb3NpdG9yeSBVUkwgW2RlZmF1bHQ6ICVzXSIgJSBERUZBVUxUX1JFUE9TSVRPUlkpLAorICAgICAgICAoJ3Nob3ctcmVzcG9uc2UnLCBOb25lLAorICAgICAgICAgImRpc3BsYXkgZnVsbCByZXNwb25zZSB0ZXh0IGZyb20gc2VydmVyIiksCisgICAgICAgICgndXBsb2FkLWRpcj0nLCBOb25lLAorICAgICAgICAgImRpcmVjdG9yeSB0byB1cGxvYWQiKSwKKyAgICAgICAgXQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5yZXBvc2l0b3J5ID0gTm9uZQorICAgICAgICBzZWxmLnJlYWxtID0gTm9uZQorICAgICAgICBzZWxmLnNob3dfcmVzcG9uc2UgPSBGYWxzZQorICAgICAgICBzZWxmLnVwbG9hZF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYudXNlcm5hbWUgPSAnJworICAgICAgICBzZWxmLnBhc3N3b3JkID0gJycKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBpZiBzZWxmLnJlcG9zaXRvcnkgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYucmVwb3NpdG9yeSA9IERFRkFVTFRfUkVQT1NJVE9SWQorICAgICAgICBpZiBzZWxmLnJlYWxtIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLnJlYWxtID0gREVGQVVMVF9SRUFMTQorICAgICAgICBpZiBzZWxmLnVwbG9hZF9kaXIgaXMgTm9uZToKKyAgICAgICAgICAgIGJ1aWxkID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2J1aWxkJykKKyAgICAgICAgICAgIHNlbGYudXBsb2FkX2RpciA9IG9zLnBhdGguam9pbihidWlsZC5idWlsZF9iYXNlLCAiZG9jcyIpCisgICAgICAgICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihzZWxmLnVwbG9hZF9kaXIpOgorICAgICAgICAgICAgICAgIHNlbGYudXBsb2FkX2RpciA9IG9zLnBhdGguam9pbihidWlsZC5idWlsZF9iYXNlLCAiZG9jIikKKyAgICAgICAgbG9nZ2VyLmluZm8oJ1VzaW5nIHVwbG9hZCBkaXJlY3RvcnkgJXMnLCBzZWxmLnVwbG9hZF9kaXIpCisgICAgICAgIHNlbGYudmVyaWZ5X3VwbG9hZF9kaXIoc2VsZi51cGxvYWRfZGlyKQorICAgICAgICBjb25maWcgPSByZWFkX3B5cGlyYyhzZWxmLnJlcG9zaXRvcnksIHNlbGYucmVhbG0pCisgICAgICAgIGlmIGNvbmZpZyAhPSB7fToKKyAgICAgICAgICAgIHNlbGYudXNlcm5hbWUgPSBjb25maWdbJ3VzZXJuYW1lJ10KKyAgICAgICAgICAgIHNlbGYucGFzc3dvcmQgPSBjb25maWdbJ3Bhc3N3b3JkJ10KKyAgICAgICAgICAgIHNlbGYucmVwb3NpdG9yeSA9IGNvbmZpZ1sncmVwb3NpdG9yeSddCisgICAgICAgICAgICBzZWxmLnJlYWxtID0gY29uZmlnWydyZWFsbSddCisKKyAgICBkZWYgdmVyaWZ5X3VwbG9hZF9kaXIoc2VsZiwgdXBsb2FkX2Rpcik6CisgICAgICAgIHNlbGYuZW5zdXJlX2Rpcm5hbWUoJ3VwbG9hZF9kaXInKQorICAgICAgICBpbmRleF9sb2NhdGlvbiA9IG9zLnBhdGguam9pbih1cGxvYWRfZGlyLCAiaW5kZXguaHRtbCIpCisgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhpbmRleF9sb2NhdGlvbik6CisgICAgICAgICAgICBtZXNnID0gIk5vICdpbmRleC5odG1sIGZvdW5kIGluIGRvY3MgZGlyZWN0b3J5ICglcykiCisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdGaWxlRXJyb3IobWVzZyAlIHVwbG9hZF9kaXIpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBuYW1lID0gc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGFbJ05hbWUnXQorICAgICAgICB2ZXJzaW9uID0gc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGFbJ1ZlcnNpb24nXQorICAgICAgICB6aXBfZmlsZSA9IHppcF9kaXIoc2VsZi51cGxvYWRfZGlyKQorCisgICAgICAgIGZpZWxkcyA9IFsoJzphY3Rpb24nLCAnZG9jX3VwbG9hZCcpLAorICAgICAgICAgICAgICAgICAgKCduYW1lJywgbmFtZSksICgndmVyc2lvbicsIHZlcnNpb24pXQorICAgICAgICBmaWxlcyA9IFsoJ2NvbnRlbnQnLCBuYW1lLCB6aXBfZmlsZS5nZXR2YWx1ZSgpKV0KKyAgICAgICAgY29udGVudF90eXBlLCBib2R5ID0gZW5jb2RlX211bHRpcGFydChmaWVsZHMsIGZpbGVzKQorCisgICAgICAgIGNyZWRlbnRpYWxzID0gc2VsZi51c2VybmFtZSArICc6JyArIHNlbGYucGFzc3dvcmQKKyAgICAgICAgIyBGSVhNRSBzaG91bGQgdXNlIGV4cGxpY2l0IGVuY29kaW5nCisgICAgICAgIGF1dGggPSBiIkJhc2ljICIgKyBiYXNlNjQuZW5jb2RlYnl0ZXMoY3JlZGVudGlhbHMuZW5jb2RlKCkpLnN0cmlwKCkKKworICAgICAgICBsb2dnZXIuaW5mbygiU3VibWl0dGluZyBkb2N1bWVudGF0aW9uIHRvICVzIiwgc2VsZi5yZXBvc2l0b3J5KQorCisgICAgICAgIHNjaGVtZSwgbmV0bG9jLCB1cmwsIHBhcmFtcywgcXVlcnksIGZyYWdtZW50cyA9IHVybGxpYi5wYXJzZS51cmxwYXJzZSgKKyAgICAgICAgICAgIHNlbGYucmVwb3NpdG9yeSkKKyAgICAgICAgaWYgc2NoZW1lID09ICJodHRwIjoKKyAgICAgICAgICAgIGNvbm4gPSBodHRwLmNsaWVudC5IVFRQQ29ubmVjdGlvbihuZXRsb2MpCisgICAgICAgIGVsaWYgc2NoZW1lID09ICJodHRwcyI6CisgICAgICAgICAgICBjb25uID0gaHR0cC5jbGllbnQuSFRUUFNDb25uZWN0aW9uKG5ldGxvYykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCJ1bnN1cHBvcnRlZCBzY2hlbWUgJXIiICUgc2NoZW1lKQorCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGNvbm4uY29ubmVjdCgpCisgICAgICAgICAgICBjb25uLnB1dHJlcXVlc3QoIlBPU1QiLCB1cmwpCisgICAgICAgICAgICBjb25uLnB1dGhlYWRlcignQ29udGVudC10eXBlJywgY29udGVudF90eXBlKQorICAgICAgICAgICAgY29ubi5wdXRoZWFkZXIoJ0NvbnRlbnQtbGVuZ3RoJywgc3RyKGxlbihib2R5KSkpCisgICAgICAgICAgICBjb25uLnB1dGhlYWRlcignQXV0aG9yaXphdGlvbicsIGF1dGgpCisgICAgICAgICAgICBjb25uLmVuZGhlYWRlcnMoKQorICAgICAgICAgICAgY29ubi5zZW5kKGJvZHkpCisKKyAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlOgorICAgICAgICAgICAgbG9nZ2VyLmVycm9yKGUpCisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICByID0gY29ubi5nZXRyZXNwb25zZSgpCisKKyAgICAgICAgaWYgci5zdGF0dXMgPT0gMjAwOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ1NlcnZlciByZXNwb25zZSAoJXMpOiAlcycsIHIuc3RhdHVzLCByLnJlYXNvbikKKyAgICAgICAgZWxpZiByLnN0YXR1cyA9PSAzMDE6CisgICAgICAgICAgICBsb2NhdGlvbiA9IHIuZ2V0aGVhZGVyKCdMb2NhdGlvbicpCisgICAgICAgICAgICBpZiBsb2NhdGlvbiBpcyBOb25lOgorICAgICAgICAgICAgICAgIGxvY2F0aW9uID0gJ2h0dHA6Ly9wYWNrYWdlcy5weXRob24ub3JnLyVzLycgJSBuYW1lCisgICAgICAgICAgICBsb2dnZXIuaW5mbygnVXBsb2FkIHN1Y2Nlc3NmdWwuIFZpc2l0ICVzJywgbG9jYXRpb24pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZXJyb3IoJ1VwbG9hZCBmYWlsZWQgKCVzKTogJXMnLCByLnN0YXR1cywgci5yZWFzb24pCisKKyAgICAgICAgaWYgc2VsZi5zaG93X3Jlc3BvbnNlIGFuZCBsb2dnZXIuaXNFbmFibGVkRm9yKGxvZ2dpbmcuSU5GTyk6CisgICAgICAgICAgICBzZXAgPSAnLScgKiA3NQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJyVzXG4lc1xuJXMnLCBzZXAsIHIucmVhZCgpLmRlY29kZSgndXRmLTgnKSwgc2VwKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtMTAuMC1hbWQ2NC5leGUgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC0xMC4wLWFtZDY0LmV4ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMWY5OGNkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtMTAuMC1hbWQ2NC5leGUKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtMTAuMC5leGUgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC0xMC4wLmV4ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YWM2ZTE5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtMTAuMC5leGUKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtNi4wLmV4ZSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTYuMC5leGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjU3Yzg1NQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTYuMC5leGUKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtNy4xLmV4ZSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTcuMS5leGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTQzM2JjMQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTcuMS5leGUKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtOC4wLmV4ZSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTguMC5leGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzQwM2JmYQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTguMC5leGUKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtOS4wLWFtZDY0LmV4ZSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTkuMC1hbWQ2NC5leGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTFkODAxMQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTkuMC1hbWQ2NC5leGUKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtOS4wLmV4ZSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTkuMC5leGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGFkYjMxZAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTkuMC5leGUKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21wYXQucHkgYi9MaWIvcGFja2FnaW5nL2NvbXBhdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZmNlOTJkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21wYXQucHkKQEAgLTAsMCArMSw1MCBAQAorIiIiU3VwcG9ydCBmb3IgYnVpbGQtdGltZSAydG8zIGNvbnZlcnNpb24uIiIiCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKKworCisjIFhYWCBIYXZpbmcgdHdvIGNsYXNzZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGlzIG5vdCBhIGdvb2QgdGhpbmcuCisjIFhYWCAydG8zLXJlbGF0ZWQgY29kZSBzaG91bGQgbW92ZSBmcm9tIHV0aWwgdG8gdGhpcyBtb2R1bGUKKwordHJ5OgorICAgIGZyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IE1peGluMnRvMyBhcyBfTWl4aW4ydG8zCisgICAgX0NPTlZFUlQgPSBUcnVlCisgICAgX0tMQVNTID0gX01peGluMnRvMworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIF9DT05WRVJUID0gRmFsc2UKKyAgICBfS0xBU1MgPSBvYmplY3QKKworX19hbGxfXyA9IFsnTWl4aW4ydG8zJ10KKworCitjbGFzcyBNaXhpbjJ0bzMoX0tMQVNTKToKKyAgICAiIiIgVGhlIGJhc2UgY2xhc3Mgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIHJlZmFjdG9yaW5nLiBXaGVuIHJ1biB1bmRlcgorICAgIFB5dGhvbiAzLjAsIHRoZSBydW5fMnRvMyBtZXRob2QgcHJvdmlkZWQgYnkgTWl4aW4ydG8zIGlzIG92ZXJyaWRkZW4uCisgICAgV2hlbiBydW4gb24gUHl0aG9uIDIueCwgaXQgbWVyZWx5IGNyZWF0ZXMgYSBjbGFzcyB3aGljaCBvdmVycmlkZXMgcnVuXzJ0bzMsCisgICAgeWV0IGRvZXMgbm90aGluZyBpbiBwYXJ0aWN1bGFyIHdpdGggaXQuCisgICAgIiIiCisgICAgaWYgX0NPTlZFUlQ6CisKKyAgICAgICAgZGVmIF9ydW5fMnRvMyhzZWxmLCBmaWxlcz1bXSwgZG9jdGVzdHM9W10sIGZpeGVycz1bXSk6CisgICAgICAgICAgICAiIiIgVGFrZXMgYSBsaXN0IG9mIGZpbGVzIGFuZCBkb2N0ZXN0cywgYW5kIHBlcmZvcm1zIGNvbnZlcnNpb24KKyAgICAgICAgICAgIG9uIHRob3NlLgorICAgICAgICAgICAgICAtIEZpcnN0LCB0aGUgZmlsZXMgd2hpY2ggY29udGFpbiB0aGUgY29kZShgZmlsZXNgKSBhcmUgY29udmVydGVkLgorICAgICAgICAgICAgICAtIFNlY29uZCwgdGhlIGRvY3Rlc3RzIGluIGBmaWxlc2AgYXJlIGNvbnZlcnRlZC4KKyAgICAgICAgICAgICAgLSBUaGlyZGx5LCB0aGUgZG9jdGVzdHMgaW4gYGRvY3Rlc3RzYCBhcmUgY29udmVydGVkLgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBpZiBmaXhlcnM6CisgICAgICAgICAgICAgICAgc2VsZi5maXhlcl9uYW1lcyA9IGZpeGVycworCisgICAgICAgICAgICBpZiBmaWxlczoKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygnY29udmVydGluZyBQeXRob24gY29kZSBhbmQgZG9jdGVzdHMnKQorICAgICAgICAgICAgICAgIF9LTEFTUy5ydW5fMnRvMyhzZWxmLCBmaWxlcykKKyAgICAgICAgICAgICAgICBfS0xBU1MucnVuXzJ0bzMoc2VsZiwgZmlsZXMsIGRvY3Rlc3RzX29ubHk9VHJ1ZSkKKworICAgICAgICAgICAgaWYgZG9jdGVzdHM6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ2NvbnZlcnRpbmcgZG9jdGVzdHMgaW4gdGV4dCBmaWxlcycpCisgICAgICAgICAgICAgICAgX0tMQVNTLnJ1bl8ydG8zKHNlbGYsIGRvY3Rlc3RzLCBkb2N0ZXN0c19vbmx5PVRydWUpCisgICAgZWxzZToKKyAgICAgICAgIyBJZiBydW4gb24gUHl0aG9uIDIueCwgdGhlcmUgaXMgbm90aGluZyB0byBkby4KKworICAgICAgICBkZWYgX3J1bl8ydG8zKHNlbGYsIGZpbGVzPVtdLCBkb2N0ZXN0cz1bXSwgZml4ZXJzPVtdKToKKyAgICAgICAgICAgIHBhc3MKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL19faW5pdF9fLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ4ZTAyY2UKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL19faW5pdF9fLnB5CkBAIC0wLDAgKzEsMjc0IEBACisiIiJDb21waWxlciBhYnN0cmFjdGlvbiBtb2RlbCB1c2VkIGJ5IHBhY2thZ2luZy4KKworQW4gYWJzdHJhY3QgYmFzZSBjbGFzcyBpcyBkZWZpbmVkIGluIHRoZSBjY29tcGlsZXIgc3VibW9kdWxlLCBhbmQKK2NvbmNyZXRlIGltcGxlbWVudGF0aW9ucyBzdWl0YWJsZSBmb3IgdmFyaW91cyBwbGF0Zm9ybXMgYXJlIGRlZmluZWQgaW4KK3RoZSBvdGhlciBzdWJtb2R1bGVzLiAgVGhlIGV4dGVuc2lvbiBtb2R1bGUgaXMgYWxzbyBwbGFjZWQgaW4gdGhpcworcGFja2FnZS4KKworSW4gZ2VuZXJhbCwgY29kZSBzaG91bGQgbm90IGluc3RhbnRpYXRlIGNvbXBpbGVyIGNsYXNzZXMgZGlyZWN0bHkgYnV0Cit1c2UgdGhlIG5ld19jb21waWxlciBhbmQgY3VzdG9taXplX2NvbXBpbGVyIGZ1bmN0aW9ucyBwcm92aWRlZCBpbiB0aGlzCittb2R1bGUuCisKK1RoZSBjb21waWxlciBzeXN0ZW0gaGFzIGEgcmVnaXN0cmF0aW9uIEFQSTogZ2V0X2RlZmF1bHRfY29tcGlsZXIsCitzZXRfY29tcGlsZXIsIHNob3dfY29tcGlsZXJzLgorIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHJlCitpbXBvcnQgc3lzY29uZmlnCisKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHJlc29sdmVfbmFtZQorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCisKK2RlZiBjdXN0b21pemVfY29tcGlsZXIoY29tcGlsZXIpOgorICAgICIiIkRvIGFueSBwbGF0Zm9ybS1zcGVjaWZpYyBjdXN0b21pemF0aW9uIG9mIGEgQ0NvbXBpbGVyIGluc3RhbmNlLgorCisgICAgTWFpbmx5IG5lZWRlZCBvbiBVbml4LCBzbyB3ZSBjYW4gcGx1ZyBpbiB0aGUgaW5mb3JtYXRpb24gdGhhdAorICAgIHZhcmllcyBhY3Jvc3MgVW5pY2VzIGFuZCBpcyBzdG9yZWQgaW4gUHl0aG9uJ3MgTWFrZWZpbGUuCisgICAgIiIiCisgICAgaWYgY29tcGlsZXIubmFtZSA9PSAidW5peCI6CisgICAgICAgIGNjLCBjeHgsIG9wdCwgY2ZsYWdzLCBjY3NoYXJlZCwgbGRzaGFyZWQsIHNvX2V4dCwgYXIsIGFyX2ZsYWdzID0gKAorICAgICAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFycygnQ0MnLCAnQ1hYJywgJ09QVCcsICdDRkxBR1MnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQ0NTSEFSRUQnLCAnTERTSEFSRUQnLCAnU08nLCAnQVInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQVJGTEFHUycpKQorCisgICAgICAgIGlmICdDQycgaW4gb3MuZW52aXJvbjoKKyAgICAgICAgICAgIGNjID0gb3MuZW52aXJvblsnQ0MnXQorICAgICAgICBpZiAnQ1hYJyBpbiBvcy5lbnZpcm9uOgorICAgICAgICAgICAgY3h4ID0gb3MuZW52aXJvblsnQ1hYJ10KKyAgICAgICAgaWYgJ0xEU0hBUkVEJyBpbiBvcy5lbnZpcm9uOgorICAgICAgICAgICAgbGRzaGFyZWQgPSBvcy5lbnZpcm9uWydMRFNIQVJFRCddCisgICAgICAgIGlmICdDUFAnIGluIG9zLmVudmlyb246CisgICAgICAgICAgICBjcHAgPSBvcy5lbnZpcm9uWydDUFAnXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY3BwID0gY2MgKyAiIC1FIiAgICAgICAgICAgIyBub3QgYWx3YXlzCisgICAgICAgIGlmICdMREZMQUdTJyBpbiBvcy5lbnZpcm9uOgorICAgICAgICAgICAgbGRzaGFyZWQgPSBsZHNoYXJlZCArICcgJyArIG9zLmVudmlyb25bJ0xERkxBR1MnXQorICAgICAgICBpZiAnQ0ZMQUdTJyBpbiBvcy5lbnZpcm9uOgorICAgICAgICAgICAgY2ZsYWdzID0gb3B0ICsgJyAnICsgb3MuZW52aXJvblsnQ0ZMQUdTJ10KKyAgICAgICAgICAgIGxkc2hhcmVkID0gbGRzaGFyZWQgKyAnICcgKyBvcy5lbnZpcm9uWydDRkxBR1MnXQorICAgICAgICBpZiAnQ1BQRkxBR1MnIGluIG9zLmVudmlyb246CisgICAgICAgICAgICBjcHAgPSBjcHAgKyAnICcgKyBvcy5lbnZpcm9uWydDUFBGTEFHUyddCisgICAgICAgICAgICBjZmxhZ3MgPSBjZmxhZ3MgKyAnICcgKyBvcy5lbnZpcm9uWydDUFBGTEFHUyddCisgICAgICAgICAgICBsZHNoYXJlZCA9IGxkc2hhcmVkICsgJyAnICsgb3MuZW52aXJvblsnQ1BQRkxBR1MnXQorICAgICAgICBpZiAnQVInIGluIG9zLmVudmlyb246CisgICAgICAgICAgICBhciA9IG9zLmVudmlyb25bJ0FSJ10KKyAgICAgICAgaWYgJ0FSRkxBR1MnIGluIG9zLmVudmlyb246CisgICAgICAgICAgICBhcmNoaXZlciA9IGFyICsgJyAnICsgb3MuZW52aXJvblsnQVJGTEFHUyddCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBhcl9mbGFncyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBhcmNoaXZlciA9IGFyICsgJyAnICsgYXJfZmxhZ3MKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBzZWUgaWYgaXRzIHRoZSBwcm9wZXIgZGVmYXVsdCB2YWx1ZQorICAgICAgICAgICAgICAgICMgbW1tIEkgZG9uJ3Qgd2FudCB0byBiYWNrcG9ydCB0aGUgbWFrZWZpbGUKKyAgICAgICAgICAgICAgICBhcmNoaXZlciA9IGFyICsgJyByYycKKworICAgICAgICBjY19jbWQgPSBjYyArICcgJyArIGNmbGFncworICAgICAgICBjb21waWxlci5zZXRfZXhlY3V0YWJsZXMoCisgICAgICAgICAgICBwcmVwcm9jZXNzb3I9Y3BwLAorICAgICAgICAgICAgY29tcGlsZXI9Y2NfY21kLAorICAgICAgICAgICAgY29tcGlsZXJfc289Y2NfY21kICsgJyAnICsgY2NzaGFyZWQsCisgICAgICAgICAgICBjb21waWxlcl9jeHg9Y3h4LAorICAgICAgICAgICAgbGlua2VyX3NvPWxkc2hhcmVkLAorICAgICAgICAgICAgbGlua2VyX2V4ZT1jYywKKyAgICAgICAgICAgIGFyY2hpdmVyPWFyY2hpdmVyKQorCisgICAgICAgIGNvbXBpbGVyLnNoYXJlZF9saWJfZXh0ZW5zaW9uID0gc29fZXh0CisKKworIyBNYXAgYSBzeXMucGxhdGZvcm0vb3MubmFtZSAoJ3Bvc2l4JywgJ250JykgdG8gdGhlIGRlZmF1bHQgY29tcGlsZXIKKyMgdHlwZSBmb3IgdGhhdCBwbGF0Zm9ybS4gS2V5cyBhcmUgaW50ZXJwcmV0ZWQgYXMgcmUgbWF0Y2gKKyMgcGF0dGVybnMuIE9yZGVyIGlzIGltcG9ydGFudDsgcGxhdGZvcm0gbWFwcGluZ3MgYXJlIHByZWZlcnJlZCBvdmVyCisjIE9TIG5hbWVzLgorX2RlZmF1bHRfY29tcGlsZXJzID0gKAorICAgICMgUGxhdGZvcm0gc3RyaW5nIG1hcHBpbmdzCisKKyAgICAjIG9uIGEgY3lnd2luIGJ1aWx0IHB5dGhvbiB3ZSBjYW4gdXNlIGdjYyBsaWtlIGFuIG9yZGluYXJ5IFVOSVhpc2gKKyAgICAjIGNvbXBpbGVyCisgICAgKCdjeWd3aW4uKicsICd1bml4JyksCisKKyAgICAjIE9TIG5hbWUgbWFwcGluZ3MKKyAgICAoJ3Bvc2l4JywgJ3VuaXgnKSwKKyAgICAoJ250JywgJ21zdmMnKSwKKykKKworZGVmIGdldF9kZWZhdWx0X2NvbXBpbGVyKG9zbmFtZT1Ob25lLCBwbGF0Zm9ybT1Ob25lKToKKyAgICAiIiIgRGV0ZXJtaW5lIHRoZSBkZWZhdWx0IGNvbXBpbGVyIHRvIHVzZSBmb3IgdGhlIGdpdmVuIHBsYXRmb3JtLgorCisgICAgICAgIG9zbmFtZSBzaG91bGQgYmUgb25lIG9mIHRoZSBzdGFuZGFyZCBQeXRob24gT1MgbmFtZXMgKGkuZS4gdGhlCisgICAgICAgIG9uZXMgcmV0dXJuZWQgYnkgb3MubmFtZSkgYW5kIHBsYXRmb3JtIHRoZSBjb21tb24gdmFsdWUKKyAgICAgICAgcmV0dXJuZWQgYnkgc3lzLnBsYXRmb3JtIGZvciB0aGUgcGxhdGZvcm0gaW4gcXVlc3Rpb24uCisKKyAgICAgICAgVGhlIGRlZmF1bHQgdmFsdWVzIGFyZSBvcy5uYW1lIGFuZCBzeXMucGxhdGZvcm0gaW4gY2FzZSB0aGUKKyAgICAgICAgcGFyYW1ldGVycyBhcmUgbm90IGdpdmVuLgorCisgICAgIiIiCisgICAgaWYgb3NuYW1lIGlzIE5vbmU6CisgICAgICAgIG9zbmFtZSA9IG9zLm5hbWUKKyAgICBpZiBwbGF0Zm9ybSBpcyBOb25lOgorICAgICAgICBwbGF0Zm9ybSA9IHN5cy5wbGF0Zm9ybQorICAgIGZvciBwYXR0ZXJuLCBjb21waWxlciBpbiBfZGVmYXVsdF9jb21waWxlcnM6CisgICAgICAgIGlmIHJlLm1hdGNoKHBhdHRlcm4sIHBsYXRmb3JtKSBpcyBub3QgTm9uZSBvciBcCisgICAgICAgICAgIHJlLm1hdGNoKHBhdHRlcm4sIG9zbmFtZSkgaXMgbm90IE5vbmU6CisgICAgICAgICAgICByZXR1cm4gY29tcGlsZXIKKyAgICAjIERlZmF1bHRzIHRvIFVuaXggY29tcGlsZXIKKyAgICByZXR1cm4gJ3VuaXgnCisKKworIyBjb21waWxlciBtYXBwaW5nCisjIFhYWCB1c2VmdWwgdG8gZXhwb3NlIHRoZW0/IChpLmUuIGdldF9jb21waWxlcl9uYW1lcykKK19DT01QSUxFUlMgPSB7CisgICAgJ3VuaXgnOiAncGFja2FnaW5nLmNvbXBpbGVyLnVuaXhjY29tcGlsZXIuVW5peENDb21waWxlcicsCisgICAgJ21zdmMnOiAncGFja2FnaW5nLmNvbXBpbGVyLm1zdmNjb21waWxlci5NU1ZDQ29tcGlsZXInLAorICAgICdjeWd3aW4nOiAncGFja2FnaW5nLmNvbXBpbGVyLmN5Z3dpbmNjb21waWxlci5DeWd3aW5DQ29tcGlsZXInLAorICAgICdtaW5ndzMyJzogJ3BhY2thZ2luZy5jb21waWxlci5jeWd3aW5jY29tcGlsZXIuTWluZ3czMkNDb21waWxlcicsCisgICAgJ2JjcHAnOiAncGFja2FnaW5nLmNvbXBpbGVyLmJjcHBjb21waWxlci5CQ1BQQ29tcGlsZXInLAorfQorCitkZWYgc2V0X2NvbXBpbGVyKGxvY2F0aW9uKToKKyAgICAiIiJBZGQgb3IgY2hhbmdlIGEgY29tcGlsZXIiIiIKKyAgICBjbHMgPSByZXNvbHZlX25hbWUobG9jYXRpb24pCisgICAgIyBYWFggd2Ugd2FudCB0byBjaGVjayB0aGUgY2xhc3MgaGVyZQorICAgIF9DT01QSUxFUlNbY2xzLm5hbWVdID0gY2xzCisKKworZGVmIHNob3dfY29tcGlsZXJzKCk6CisgICAgIiIiUHJpbnQgbGlzdCBvZiBhdmFpbGFibGUgY29tcGlsZXJzICh1c2VkIGJ5IHRoZSAiLS1oZWxwLWNvbXBpbGVyIgorICAgIG9wdGlvbnMgdG8gImJ1aWxkIiwgImJ1aWxkX2V4dCIsICJidWlsZF9jbGliIikuCisgICAgIiIiCisgICAgZnJvbSBwYWNrYWdpbmcuZmFuY3lfZ2V0b3B0IGltcG9ydCBGYW5jeUdldG9wdAorICAgIGNvbXBpbGVycyA9IFtdCisKKyAgICBmb3IgbmFtZSwgY2xzIGluIF9DT01QSUxFUlMuaXRlbXMoKToKKyAgICAgICAgaWYgaXNpbnN0YW5jZShjbHMsIHN0cik6CisgICAgICAgICAgICBjbHMgPSByZXNvbHZlX25hbWUoY2xzKQorICAgICAgICAgICAgX0NPTVBJTEVSU1tuYW1lXSA9IGNscworCisgICAgICAgIGNvbXBpbGVycy5hcHBlbmQoKCJjb21waWxlcj0iICsgbmFtZSwgTm9uZSwgY2xzLmRlc2NyaXB0aW9uKSkKKworICAgIGNvbXBpbGVycy5zb3J0KCkKKyAgICBwcmV0dHlfcHJpbnRlciA9IEZhbmN5R2V0b3B0KGNvbXBpbGVycykKKyAgICBwcmV0dHlfcHJpbnRlci5wcmludF9oZWxwKCJMaXN0IG9mIGF2YWlsYWJsZSBjb21waWxlcnM6IikKKworCitkZWYgbmV3X2NvbXBpbGVyKHBsYXQ9Tm9uZSwgY29tcGlsZXI9Tm9uZSwgZHJ5X3J1bj1GYWxzZSwgZm9yY2U9RmFsc2UpOgorICAgICIiIkdlbmVyYXRlIGFuIGluc3RhbmNlIG9mIHNvbWUgQ0NvbXBpbGVyIHN1YmNsYXNzIGZvciB0aGUgc3VwcGxpZWQKKyAgICBwbGF0Zm9ybS9jb21waWxlciBjb21iaW5hdGlvbi4gICdwbGF0JyBkZWZhdWx0cyB0byAnb3MubmFtZScKKyAgICAoZWcuICdwb3NpeCcsICdudCcpLCBhbmQgJ2NvbXBpbGVyJyBkZWZhdWx0cyB0byB0aGUgZGVmYXVsdCBjb21waWxlcgorICAgIGZvciB0aGF0IHBsYXRmb3JtLiAgQ3VycmVudGx5IG9ubHkgJ3Bvc2l4JyBhbmQgJ250JyBhcmUgc3VwcG9ydGVkLCBhbmQKKyAgICB0aGUgZGVmYXVsdCBjb21waWxlcnMgYXJlICJ0cmFkaXRpb25hbCBVbml4IGludGVyZmFjZSIgKFVuaXhDQ29tcGlsZXIKKyAgICBjbGFzcykgYW5kIFZpc3VhbCBDKysgKE1TVkNDb21waWxlciBjbGFzcykuICBOb3RlIHRoYXQgaXQncyBwZXJmZWN0bHkKKyAgICBwb3NzaWJsZSB0byBhc2sgZm9yIGEgVW5peCBjb21waWxlciBvYmplY3QgdW5kZXIgV2luZG93cywgYW5kIGEKKyAgICBNaWNyb3NvZnQgY29tcGlsZXIgb2JqZWN0IHVuZGVyIFVuaXggLS0gaWYgeW91IHN1cHBseSBhIHZhbHVlIGZvcgorICAgICdjb21waWxlcicsICdwbGF0JyBpcyBpZ25vcmVkLgorICAgICIiIgorICAgIGlmIHBsYXQgaXMgTm9uZToKKyAgICAgICAgcGxhdCA9IG9zLm5hbWUKKworICAgIHRyeToKKyAgICAgICAgaWYgY29tcGlsZXIgaXMgTm9uZToKKyAgICAgICAgICAgIGNvbXBpbGVyID0gZ2V0X2RlZmF1bHRfY29tcGlsZXIocGxhdCkKKworICAgICAgICBjbHMgPSBfQ09NUElMRVJTW2NvbXBpbGVyXQorICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgbXNnID0gImRvbid0IGtub3cgaG93IHRvIGNvbXBpbGUgQy9DKysgY29kZSBvbiBwbGF0Zm9ybSAnJXMnIiAlIHBsYXQKKyAgICAgICAgaWYgY29tcGlsZXIgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBtc2cgPSBtc2cgKyAiIHdpdGggJyVzJyBjb21waWxlciIgJSBjb21waWxlcgorICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKG1zZykKKworICAgIGlmIGlzaW5zdGFuY2UoY2xzLCBzdHIpOgorICAgICAgICBjbHMgPSByZXNvbHZlX25hbWUoY2xzKQorICAgICAgICBfQ09NUElMRVJTW2NvbXBpbGVyXSA9IGNscworCisgICAgcmV0dXJuIGNscyhkcnlfcnVuLCBmb3JjZSkKKworCitkZWYgZ2VuX3ByZXByb2Nlc3Nfb3B0aW9ucyhtYWNyb3MsIGluY2x1ZGVfZGlycyk6CisgICAgIiIiR2VuZXJhdGUgQyBwcmUtcHJvY2Vzc29yIG9wdGlvbnMgKC1ELCAtVSwgLUkpIGFzIHVzZWQgYnkgYXQgbGVhc3QKKyAgICB0d28gdHlwZXMgb2YgY29tcGlsZXJzOiB0aGUgdHlwaWNhbCBVbml4IGNvbXBpbGVyIGFuZCBWaXN1YWwgQysrLgorICAgICdtYWNyb3MnIGlzIHRoZSB1c3VhbCB0aGluZywgYSBsaXN0IG9mIDEtIG9yIDItdHVwbGVzLCB3aGVyZSAobmFtZSwpCisgICAgbWVhbnMgdW5kZWZpbmUgKC1VKSBtYWNybyAnbmFtZScsIGFuZCAobmFtZSx2YWx1ZSkgbWVhbnMgZGVmaW5lICgtRCkKKyAgICBtYWNybyAnbmFtZScgdG8gJ3ZhbHVlJy4gICdpbmNsdWRlX2RpcnMnIGlzIGp1c3QgYSBsaXN0IG9mIGRpcmVjdG9yeQorICAgIG5hbWVzIHRvIGJlIGFkZGVkIHRvIHRoZSBoZWFkZXIgZmlsZSBzZWFyY2ggcGF0aCAoLUkpLiAgUmV0dXJucyBhIGxpc3QKKyAgICBvZiBjb21tYW5kLWxpbmUgb3B0aW9ucyBzdWl0YWJsZSBmb3IgZWl0aGVyIFVuaXggY29tcGlsZXJzIG9yIFZpc3VhbAorICAgIEMrKy4KKyAgICAiIiIKKyAgICAjIFhYWCBpdCB3b3VsZCBiZSBuaWNlIChtYWlubHkgYWVzdGhldGljLCBhbmQgc28gd2UgZG9uJ3QgZ2VuZXJhdGUKKyAgICAjIHN0dXBpZC1sb29raW5nIGNvbW1hbmQgbGluZXMpIHRvIGdvIG92ZXIgJ21hY3JvcycgYW5kIGVsaW1pbmF0ZQorICAgICMgcmVkdW5kYW50IGRlZmluaXRpb25zL3VuZGVmaW5pdGlvbnMgKGllLiBlbnN1cmUgdGhhdCBvbmx5IHRoZQorICAgICMgbGF0ZXN0IG1lbnRpb24gb2YgYSBwYXJ0aWN1bGFyIG1hY3JvIHdpbmRzIHVwIG9uIHRoZSBjb21tYW5kCisgICAgIyBsaW5lKS4gIEkgZG9uJ3QgdGhpbmsgaXQncyBlc3NlbnRpYWwsIHRob3VnaCwgc2luY2UgbW9zdCAoYWxsPykKKyAgICAjIFVuaXggQyBjb21waWxlcnMgb25seSBwYXkgYXR0ZW50aW9uIHRvIHRoZSBsYXRlc3QgLUQgb3IgLVUKKyAgICAjIG1lbnRpb24gb2YgYSBtYWNybyBvbiB0aGVpciBjb21tYW5kIGxpbmUuICBTaW1pbGFyIHNpdHVhdGlvbiBmb3IKKyAgICAjICdpbmNsdWRlX2RpcnMnLiAgSSdtIHB1bnRpbmcgb24gYm90aCBmb3Igbm93LiAgQW55d2F5cywgd2VlZGluZyBvdXQKKyAgICAjIHJlZHVuZGFuY2llcyBsaWtlIHRoaXMgc2hvdWxkIHByb2JhYmx5IGJlIHRoZSBwcm92aW5jZSBvZgorICAgICMgQ0NvbXBpbGVyLCBzaW5jZSB0aGUgZGF0YSBzdHJ1Y3R1cmVzIHVzZWQgYXJlIGluaGVyaXRlZCBmcm9tIGl0CisgICAgIyBhbmQgdGhlcmVmb3JlIGNvbW1vbiB0byBhbGwgQ0NvbXBpbGVyIGNsYXNzZXMuCisKKyAgICBwcF9vcHRzID0gW10KKyAgICBmb3IgbWFjcm8gaW4gbWFjcm9zOgorCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKG1hY3JvLCB0dXBsZSkgYW5kIDEgPD0gbGVuKG1hY3JvKSA8PSAyOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKAorICAgICAgICAgICAgICAgICJiYWQgbWFjcm8gZGVmaW5pdGlvbiAnJXMnOiBlYWNoIGVsZW1lbnQgb2YgJ21hY3JvcyciCisgICAgICAgICAgICAgICAgImxpc3QgbXVzdCBiZSBhIDEtIG9yIDItdHVwbGUiICUgbWFjcm8pCisKKyAgICAgICAgaWYgbGVuKG1hY3JvKSA9PSAxOiAgICAgICAgIyB1bmRlZmluZSB0aGlzIG1hY3JvCisgICAgICAgICAgICBwcF9vcHRzLmFwcGVuZCgiLVUlcyIgJSBtYWNyb1swXSkKKyAgICAgICAgZWxpZiBsZW4obWFjcm8pID09IDI6CisgICAgICAgICAgICBpZiBtYWNyb1sxXSBpcyBOb25lOiAgICAjIGRlZmluZSB3aXRoIG5vIGV4cGxpY2l0IHZhbHVlCisgICAgICAgICAgICAgICAgcHBfb3B0cy5hcHBlbmQoIi1EJXMiICUgbWFjcm9bMF0pCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICMgWFhYICpkb24ndCogbmVlZCB0byBiZSBjbGV2ZXIgYWJvdXQgcXVvdGluZyB0aGUKKyAgICAgICAgICAgICAgICAjIG1hY3JvIHZhbHVlIGhlcmUsIGJlY2F1c2Ugd2UncmUgZ29pbmcgdG8gYXZvaWQgdGhlCisgICAgICAgICAgICAgICAgIyBzaGVsbCBhdCBhbGwgY29zdHMgd2hlbiB3ZSBzcGF3biB0aGUgY29tbWFuZCEKKyAgICAgICAgICAgICAgICBwcF9vcHRzLmFwcGVuZCgiLUQlcz0lcyIgJSBtYWNybykKKworICAgIGZvciBkaXIgaW4gaW5jbHVkZV9kaXJzOgorICAgICAgICBwcF9vcHRzLmFwcGVuZCgiLUklcyIgJSBkaXIpCisKKyAgICByZXR1cm4gcHBfb3B0cworCisKK2RlZiBnZW5fbGliX29wdGlvbnMoY29tcGlsZXIsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMsIGxpYnJhcmllcyk6CisgICAgIiIiR2VuZXJhdGUgbGlua2VyIG9wdGlvbnMgZm9yIHNlYXJjaGluZyBsaWJyYXJ5IGRpcmVjdG9yaWVzIGFuZAorICAgIGxpbmtpbmcgd2l0aCBzcGVjaWZpYyBsaWJyYXJpZXMuCisKKyAgICAnbGlicmFyaWVzJyBhbmQgJ2xpYnJhcnlfZGlycycgYXJlLCByZXNwZWN0aXZlbHksIGxpc3RzIG9mIGxpYnJhcnkgbmFtZXMKKyAgICAobm90IGZpbGVuYW1lcyEpIGFuZCBzZWFyY2ggZGlyZWN0b3JpZXMuICBSZXR1cm5zIGEgbGlzdCBvZiBjb21tYW5kLWxpbmUKKyAgICBvcHRpb25zIHN1aXRhYmxlIGZvciB1c2Ugd2l0aCBzb21lIGNvbXBpbGVyIChkZXBlbmRpbmcgb24gdGhlIHR3byBmb3JtYXQKKyAgICBzdHJpbmdzIHBhc3NlZCBpbikuCisgICAgIiIiCisgICAgbGliX29wdHMgPSBbXQorCisgICAgZm9yIGRpciBpbiBsaWJyYXJ5X2RpcnM6CisgICAgICAgIGxpYl9vcHRzLmFwcGVuZChjb21waWxlci5saWJyYXJ5X2Rpcl9vcHRpb24oZGlyKSkKKworICAgIGZvciBkaXIgaW4gcnVudGltZV9saWJyYXJ5X2RpcnM6CisgICAgICAgIG9wdCA9IGNvbXBpbGVyLnJ1bnRpbWVfbGlicmFyeV9kaXJfb3B0aW9uKGRpcikKKyAgICAgICAgaWYgaXNpbnN0YW5jZShvcHQsIGxpc3QpOgorICAgICAgICAgICAgbGliX29wdHMuZXh0ZW5kKG9wdCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxpYl9vcHRzLmFwcGVuZChvcHQpCisKKyAgICAjIFhYWCBpdCdzIGltcG9ydGFudCB0aGF0IHdlICpub3QqIHJlbW92ZSByZWR1bmRhbnQgbGlicmFyeSBtZW50aW9ucyEKKyAgICAjIHNvbWV0aW1lcyB5b3UgcmVhbGx5IGRvIGhhdmUgdG8gc2F5ICItbGZvbyAtbGJhciAtbGZvbyIgaW4gb3JkZXIgdG8KKyAgICAjIHJlc29sdmUgYWxsIHN5bWJvbHMuICBJIGp1c3QgaG9wZSB3ZSBuZXZlciBoYXZlIHRvIHNheSAiLWxmb28gb2JqLm8KKyAgICAjIC1sYmFyIiB0byBnZXQgdGhpbmdzIHRvIHdvcmsgLS0gdGhhdCdzIGNlcnRhaW5seSBhIHBvc3NpYmlsaXR5LCBidXQgYQorICAgICMgcHJldHR5IG5hc3R5IHdheSB0byBhcnJhbmdlIHlvdXIgQyBjb2RlLgorCisgICAgZm9yIGxpYiBpbiBsaWJyYXJpZXM6CisgICAgICAgIGxpYl9kaXIsIGxpYl9uYW1lID0gb3MucGF0aC5zcGxpdChsaWIpCisgICAgICAgIGlmIGxpYl9kaXIgIT0gJyc6CisgICAgICAgICAgICBsaWJfZmlsZSA9IGNvbXBpbGVyLmZpbmRfbGlicmFyeV9maWxlKFtsaWJfZGlyXSwgbGliX25hbWUpCisgICAgICAgICAgICBpZiBsaWJfZmlsZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBsaWJfb3B0cy5hcHBlbmQobGliX2ZpbGUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJubyBsaWJyYXJ5IGZpbGUgY29ycmVzcG9uZGluZyB0byAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJyVzJyBmb3VuZCAoc2tpcHBpbmcpIiAlIGxpYikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxpYl9vcHRzLmFwcGVuZChjb21waWxlci5saWJyYXJ5X29wdGlvbihsaWIpKQorCisgICAgcmV0dXJuIGxpYl9vcHRzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2JjcHBjb21waWxlci5weSBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvYmNwcGNvbXBpbGVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA2Yzc1OGMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2JjcHBjb21waWxlci5weQpAQCAtMCwwICsxLDM1NSBAQAorIiIiQ0NvbXBpbGVyIGltcGxlbWVudGF0aW9uIGZvciB0aGUgQm9ybGFuZCBDKysgY29tcGlsZXIuIiIiCisKKyMgVGhpcyBpbXBsZW1lbnRhdGlvbiBieSBMeWxlIEpvaG5zb24sIGJhc2VkIG9uIHRoZSBvcmlnaW5hbCBtc3ZjY29tcGlsZXIucHkKKyMgbW9kdWxlIGFuZCB1c2luZyB0aGUgZGlyZWN0aW9ucyBvcmlnaW5hbGx5IHB1Ymxpc2hlZCBieSBHb3Jkb24gV2lsbGlhbXMuCisKKyMgWFhYIGxvb2tzIGxpa2UgdGhlcmUncyBhIExPVCBvZiBvdmVybGFwIGJldHdlZW4gdGhlc2UgdHdvIGNsYXNzZXM6CisjIHNvbWVvbmUgc2hvdWxkIHNpdCBkb3duIGFuZCBmYWN0b3Igb3V0IHRoZSBjb21tb24gY29kZSBhcworIyBXaW5kb3dzQ0NvbXBpbGVyISAgLS1HUFcKKworaW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKFBhY2thZ2luZ0V4ZWNFcnJvciwgQ29tcGlsZUVycm9yLCBMaWJFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpbmtFcnJvciwgVW5rbm93bkZpbGVFcnJvcikKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlciBpbXBvcnQgQ0NvbXBpbGVyCitmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgZ2VuX3ByZXByb2Nlc3Nfb3B0aW9ucworZnJvbSBwYWNrYWdpbmcuZmlsZV91dGlsIGltcG9ydCB3cml0ZV9maWxlCitmcm9tIHBhY2thZ2luZy5kZXBfdXRpbCBpbXBvcnQgbmV3ZXIKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKKworCitjbGFzcyBCQ1BQQ29tcGlsZXIoQ0NvbXBpbGVyKSA6CisgICAgIiIiQ29uY3JldGUgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGFuIGludGVyZmFjZSB0byB0aGUgQm9ybGFuZCBDL0MrKworICAgIGNvbXBpbGVyLCBhcyBkZWZpbmVkIGJ5IHRoZSBDQ29tcGlsZXIgYWJzdHJhY3QgY2xhc3MuCisgICAgIiIiCisKKyAgICBuYW1lID0gJ2JjcHAnCisgICAgZGVzY3JpcHRpb24gPSAnQm9ybGFuZCBDKysgQ29tcGlsZXInCisKKyAgICAjIEp1c3Qgc2V0IHRoaXMgc28gQ0NvbXBpbGVyJ3MgY29uc3RydWN0b3IgZG9lc24ndCBiYXJmLiAgV2UgY3VycmVudGx5CisgICAgIyBkb24ndCB1c2UgdGhlICdzZXRfZXhlY3V0YWJsZXMoKScgYnVyZWF1Y3JhY3kgcHJvdmlkZWQgYnkgQ0NvbXBpbGVyLAorICAgICMgYXMgaXQgcmVhbGx5IGlzbid0IG5lY2Vzc2FyeSBmb3IgdGhpcyBzb3J0IG9mIHNpbmdsZS1jb21waWxlciBjbGFzcy4KKyAgICAjIFdvdWxkIGJlIG5pY2UgdG8gaGF2ZSBhIGNvbnNpc3RlbnQgaW50ZXJmYWNlIHdpdGggVW5peENDb21waWxlciwKKyAgICAjIHRob3VnaCwgc28gaXQncyB3b3J0aCB0aGlua2luZyBhYm91dC4KKyAgICBleGVjdXRhYmxlcyA9IHt9CisKKyAgICAjIFByaXZhdGUgY2xhc3MgZGF0YSAobmVlZCB0byBkaXN0aW5ndWlzaCBDIGZyb20gQysrIHNvdXJjZSBmb3IgY29tcGlsZXIpCisgICAgX2NfZXh0ZW5zaW9ucyA9IFsnLmMnXQorICAgIF9jcHBfZXh0ZW5zaW9ucyA9IFsnLmNjJywgJy5jcHAnLCAnLmN4eCddCisKKyAgICAjIE5lZWRlZCBmb3IgdGhlIGZpbGVuYW1lIGdlbmVyYXRpb24gbWV0aG9kcyBwcm92aWRlZCBieSB0aGUKKyAgICAjIGJhc2UgY2xhc3MsIENDb21waWxlci4KKyAgICBzcmNfZXh0ZW5zaW9ucyA9IF9jX2V4dGVuc2lvbnMgKyBfY3BwX2V4dGVuc2lvbnMKKyAgICBvYmpfZXh0ZW5zaW9uID0gJy5vYmonCisgICAgc3RhdGljX2xpYl9leHRlbnNpb24gPSAnLmxpYicKKyAgICBzaGFyZWRfbGliX2V4dGVuc2lvbiA9ICcuZGxsJworICAgIHN0YXRpY19saWJfZm9ybWF0ID0gc2hhcmVkX2xpYl9mb3JtYXQgPSAnJXMlcycKKyAgICBleGVfZXh0ZW5zaW9uID0gJy5leGUnCisKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkcnlfcnVuPUZhbHNlLCBmb3JjZT1GYWxzZSk6CisgICAgICAgIHN1cGVyKEJDUFBDb21waWxlciwgc2VsZikuX19pbml0X18oZHJ5X3J1biwgZm9yY2UpCisKKyAgICAgICAgIyBUaGVzZSBleGVjdXRhYmxlcyBhcmUgYXNzdW1lZCB0byBhbGwgYmUgaW4gdGhlIHBhdGguCisgICAgICAgICMgQm9ybGFuZCBkb2Vzbid0IHNlZW0gdG8gdXNlIGFueSBzcGVjaWFsIHJlZ2lzdHJ5IHNldHRpbmdzIHRvCisgICAgICAgICMgaW5kaWNhdGUgdGhlaXIgaW5zdGFsbGF0aW9uIGxvY2F0aW9ucy4KKworICAgICAgICBzZWxmLmNjID0gImJjYzMyLmV4ZSIKKyAgICAgICAgc2VsZi5saW5rZXIgPSAiaWxpbmszMi5leGUiCisgICAgICAgIHNlbGYubGliID0gInRsaWIuZXhlIgorCisgICAgICAgIHNlbGYucHJlcHJvY2Vzc19vcHRpb25zID0gTm9uZQorICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9ucyA9IFsnL3RXTScsICcvTzInLCAnL3EnLCAnL2cwJ10KKyAgICAgICAgc2VsZi5jb21waWxlX29wdGlvbnNfZGVidWcgPSBbJy90V00nLCAnL09kJywgJy9xJywgJy9nMCddCisKKyAgICAgICAgc2VsZi5sZGZsYWdzX3NoYXJlZCA9IFsnL1RwZCcsICcvR24nLCAnL3EnLCAnL3gnXQorICAgICAgICBzZWxmLmxkZmxhZ3Nfc2hhcmVkX2RlYnVnID0gWycvVHBkJywgJy9HbicsICcvcScsICcveCddCisgICAgICAgIHNlbGYubGRmbGFnc19zdGF0aWMgPSBbXQorICAgICAgICBzZWxmLmxkZmxhZ3NfZXhlID0gWycvR24nLCAnL3EnLCAnL3gnXQorICAgICAgICBzZWxmLmxkZmxhZ3NfZXhlX2RlYnVnID0gWycvR24nLCAnL3EnLCAnL3gnLCcvciddCisKKworICAgICMgLS0gV29ya2VyIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgY29tcGlsZShzZWxmLCBzb3VyY2VzLAorICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9Tm9uZSwgbWFjcm9zPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLCBkZWJ1Zz1GYWxzZSwKKyAgICAgICAgICAgICAgICBleHRyYV9wcmVhcmdzPU5vbmUsIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGRlcGVuZHM9Tm9uZSk6CisKKyAgICAgICAgbWFjcm9zLCBvYmplY3RzLCBleHRyYV9wb3N0YXJncywgcHBfb3B0cywgYnVpbGQgPSBcCisgICAgICAgICAgICAgICAgc2VsZi5fc2V0dXBfY29tcGlsZShvdXRwdXRfZGlyLCBtYWNyb3MsIGluY2x1ZGVfZGlycywgc291cmNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlcGVuZHMsIGV4dHJhX3Bvc3RhcmdzKQorICAgICAgICBjb21waWxlX29wdHMgPSBleHRyYV9wcmVhcmdzIG9yIFtdCisgICAgICAgIGNvbXBpbGVfb3B0cy5hcHBlbmQoJy1jJykKKyAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICBjb21waWxlX29wdHMuZXh0ZW5kKHNlbGYuY29tcGlsZV9vcHRpb25zX2RlYnVnKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY29tcGlsZV9vcHRzLmV4dGVuZChzZWxmLmNvbXBpbGVfb3B0aW9ucykKKworICAgICAgICBmb3Igb2JqIGluIG9iamVjdHM6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc3JjLCBleHQgPSBidWlsZFtvYmpdCisgICAgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICMgWFhYIHdoeSBkbyB0aGUgbm9ybXBhdGggaGVyZT8KKyAgICAgICAgICAgIHNyYyA9IG9zLnBhdGgubm9ybXBhdGgoc3JjKQorICAgICAgICAgICAgb2JqID0gb3MucGF0aC5ub3JtcGF0aChvYmopCisgICAgICAgICAgICAjIFhYWCBfc2V0dXBfY29tcGlsZSgpIGRpZCBhIG1rcGF0aCgpIHRvbyBidXQgYmVmb3JlIHRoZSBub3JtcGF0aC4KKyAgICAgICAgICAgICMgSXMgaXQgcG9zc2libGUgdG8gc2tpcCB0aGUgbm9ybXBhdGg/CisgICAgICAgICAgICBzZWxmLm1rcGF0aChvcy5wYXRoLmRpcm5hbWUob2JqKSkKKworICAgICAgICAgICAgaWYgZXh0ID09ICcucmVzJzoKKyAgICAgICAgICAgICAgICAjIFRoaXMgaXMgYWxyZWFkeSBhIGJpbmFyeSBmaWxlIC0tIHNraXAgaXQuCisgICAgICAgICAgICAgICAgY29udGludWUgIyB0aGUgJ2ZvcicgbG9vcAorICAgICAgICAgICAgaWYgZXh0ID09ICcucmMnOgorICAgICAgICAgICAgICAgICMgVGhpcyBuZWVkcyB0byBiZSBjb21waWxlZCB0byBhIC5yZXMgZmlsZSAtLSBkbyBpdCBub3cuCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBzZWxmLnNwYXduKFsiYnJjYzMyIiwgIi1mbyIsIG9iaiwgc3JjXSkKKyAgICAgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKKyAgICAgICAgICAgICAgICBjb250aW51ZSAjIHRoZSAnZm9yJyBsb29wCisKKyAgICAgICAgICAgICMgVGhlIG5leHQgdHdvIGFyZSBib3RoIGZvciB0aGUgcmVhbCBjb21waWxlci4KKyAgICAgICAgICAgIGlmIGV4dCBpbiBzZWxmLl9jX2V4dGVuc2lvbnM6CisgICAgICAgICAgICAgICAgaW5wdXRfb3B0ID0gIiIKKyAgICAgICAgICAgIGVsaWYgZXh0IGluIHNlbGYuX2NwcF9leHRlbnNpb25zOgorICAgICAgICAgICAgICAgIGlucHV0X29wdCA9ICItUCIKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBVbmtub3duIGZpbGUgdHlwZSAtLSBubyBleHRyYSBvcHRpb25zLiAgVGhlIGNvbXBpbGVyCisgICAgICAgICAgICAgICAgIyB3aWxsIHByb2JhYmx5IGZhaWwsIGJ1dCBsZXQgaXQganVzdCBpbiBjYXNlIHRoaXMgaXMgYQorICAgICAgICAgICAgICAgICMgZmlsZSB0aGUgY29tcGlsZXIgcmVjb2duaXplcyBldmVuIGlmIHdlIGRvbid0LgorICAgICAgICAgICAgICAgIGlucHV0X29wdCA9ICIiCisKKyAgICAgICAgICAgIG91dHB1dF9vcHQgPSAiLW8iICsgb2JqCisKKyAgICAgICAgICAgICMgQ29tcGlsZXIgY29tbWFuZCBsaW5lIHN5bnRheCBpczogImJjYzMyIFtvcHRpb25zXSBmaWxlKHMpIi4KKyAgICAgICAgICAgICMgTm90ZSB0aGF0IHRoZSBzb3VyY2UgZmlsZSBuYW1lcyBtdXN0IGFwcGVhciBhdCB0aGUgZW5kIG9mCisgICAgICAgICAgICAjIHRoZSBjb21tYW5kIGxpbmUuCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5jY10gKyBjb21waWxlX29wdHMgKyBwcF9vcHRzICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpbnB1dF9vcHQsIG91dHB1dF9vcHRdICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzICsgW3NyY10pCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IobXNnKQorCisgICAgICAgIHJldHVybiBvYmplY3RzCisKKworICAgIGRlZiBjcmVhdGVfc3RhdGljX2xpYihzZWxmLCBvYmplY3RzLCBvdXRwdXRfbGlibmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz1GYWxzZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgIG9iamVjdHMsIG91dHB1dF9kaXIgPSBzZWxmLl9maXhfb2JqZWN0X2FyZ3Mob2JqZWN0cywgb3V0cHV0X2RpcikKKyAgICAgICAgb3V0cHV0X2ZpbGVuYW1lID0gXAorICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2ZpbGVuYW1lKG91dHB1dF9saWJuYW1lLCBvdXRwdXRfZGlyPW91dHB1dF9kaXIpCisKKyAgICAgICAgaWYgc2VsZi5fbmVlZF9saW5rKG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSk6CisgICAgICAgICAgICBsaWJfYXJncyA9IFtvdXRwdXRfZmlsZW5hbWUsICcvdSddICsgb2JqZWN0cworICAgICAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICAgICAgcGFzcyAgICAgICAgICAgICAgICAgICAgIyBYWFggd2hhdCBnb2VzIGhlcmU/CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5saWJdICsgbGliX2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBMaWJFcnJvcihtc2cpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoInNraXBwaW5nICVzICh1cC10by1kYXRlKSIsIG91dHB1dF9maWxlbmFtZSkKKworCisgICAgZGVmIGxpbmsoc2VsZiwgdGFyZ2V0X2Rlc2MsIG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICBleHBvcnRfc3ltYm9scz1Ob25lLCBkZWJ1Zz1GYWxzZSwgZXh0cmFfcHJlYXJncz1Ob25lLAorICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGJ1aWxkX3RlbXA9Tm9uZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisKKyAgICAgICAgIyBYWFggdGhpcyBpZ25vcmVzICdidWlsZF90ZW1wJyEgIHNob3VsZCBmb2xsb3cgdGhlIGxlYWQgb2YKKyAgICAgICAgIyBtc3ZjY29tcGlsZXIucHkKKworICAgICAgICBvYmplY3RzLCBvdXRwdXRfZGlyID0gc2VsZi5fZml4X29iamVjdF9hcmdzKG9iamVjdHMsIG91dHB1dF9kaXIpCisgICAgICAgIGxpYnJhcmllcywgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycyA9IFwKKyAgICAgICAgICAgIHNlbGYuX2ZpeF9saWJfYXJncyhsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMpCisKKyAgICAgICAgaWYgcnVudGltZV9saWJyYXJ5X2RpcnM6CisgICAgICAgICAgICBsb2dnZXIud2FybmluZygiZG9uJ3Qga25vdyB3aGF0IHRvIGRvIHdpdGggIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIidydW50aW1lX2xpYnJhcnlfZGlycyc6ICVyIiwgcnVudGltZV9saWJyYXJ5X2RpcnMpCisKKyAgICAgICAgaWYgb3V0cHV0X2RpciBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIG91dHB1dF9maWxlbmFtZSA9IG9zLnBhdGguam9pbihvdXRwdXRfZGlyLCBvdXRwdXRfZmlsZW5hbWUpCisKKyAgICAgICAgaWYgc2VsZi5fbmVlZF9saW5rKG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSk6CisKKyAgICAgICAgICAgICMgRmlndXJlIG91dCBsaW5rZXIgYXJncyBiYXNlZCBvbiB0eXBlIG9mIHRhcmdldC4KKyAgICAgICAgICAgIGlmIHRhcmdldF9kZXNjID09IENDb21waWxlci5FWEVDVVRBQkxFOgorICAgICAgICAgICAgICAgIHN0YXJ0dXBfb2JqID0gJ2MwdzMyJworICAgICAgICAgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgICAgICAgICBsZF9hcmdzID0gc2VsZi5sZGZsYWdzX2V4ZV9kZWJ1Z1s6XQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGxkX2FyZ3MgPSBzZWxmLmxkZmxhZ3NfZXhlWzpdCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHN0YXJ0dXBfb2JqID0gJ2MwZDMyJworICAgICAgICAgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgICAgICAgICBsZF9hcmdzID0gc2VsZi5sZGZsYWdzX3NoYXJlZF9kZWJ1Z1s6XQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGxkX2FyZ3MgPSBzZWxmLmxkZmxhZ3Nfc2hhcmVkWzpdCisKKworICAgICAgICAgICAgIyBDcmVhdGUgYSB0ZW1wb3JhcnkgZXhwb3J0cyBmaWxlIGZvciB1c2UgYnkgdGhlIGxpbmtlcgorICAgICAgICAgICAgaWYgZXhwb3J0X3N5bWJvbHMgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBkZWZfZmlsZSA9ICcnCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGhlYWQsIHRhaWwgPSBvcy5wYXRoLnNwbGl0KG91dHB1dF9maWxlbmFtZSkKKyAgICAgICAgICAgICAgICBtb2RuYW1lLCBleHQgPSBvcy5wYXRoLnNwbGl0ZXh0KHRhaWwpCisgICAgICAgICAgICAgICAgdGVtcF9kaXIgPSBvcy5wYXRoLmRpcm5hbWUob2JqZWN0c1swXSkgIyBwcmVzZXJ2ZSB0cmVlIHN0cnVjdHVyZQorICAgICAgICAgICAgICAgIGRlZl9maWxlID0gb3MucGF0aC5qb2luKHRlbXBfZGlyLCAnJXMuZGVmJyAlIG1vZG5hbWUpCisgICAgICAgICAgICAgICAgY29udGVudHMgPSBbJ0VYUE9SVFMnXQorICAgICAgICAgICAgICAgIGZvciBzeW0gaW4gKGV4cG9ydF9zeW1ib2xzIG9yIFtdKToKKyAgICAgICAgICAgICAgICAgICAgY29udGVudHMuYXBwZW5kKCcgICVzPV8lcycgJSAoc3ltLCBzeW0pKQorICAgICAgICAgICAgICAgIHNlbGYuZXhlY3V0ZSh3cml0ZV9maWxlLCAoZGVmX2ZpbGUsIGNvbnRlbnRzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIndyaXRpbmcgJXMiICUgZGVmX2ZpbGUpCisKKyAgICAgICAgICAgICMgQm9ybGFuZCBDKysgaGFzIHByb2JsZW1zIHdpdGggJy8nIGluIHBhdGhzCisgICAgICAgICAgICBvYmplY3RzMiA9IFtvcy5wYXRoLm5vcm1wYXRoKG8pIGZvciBvIGluIG9iamVjdHNdCisgICAgICAgICAgICAjIHNwbGl0IG9iamVjdHMgaW4gLm9iaiBhbmQgLnJlcyBmaWxlcworICAgICAgICAgICAgIyBCb3JsYW5kIEMrKyBuZWVkcyB0aGVtIGF0IGRpZmZlcmVudCBwb3NpdGlvbnMgaW4gdGhlIGNvbW1hbmQgbGluZQorICAgICAgICAgICAgb2JqZWN0cyA9IFtzdGFydHVwX29ial0KKyAgICAgICAgICAgIHJlc291cmNlcyA9IFtdCisgICAgICAgICAgICBmb3IgZmlsZSBpbiBvYmplY3RzMjoKKyAgICAgICAgICAgICAgICBiYXNlLCBleHQgPSBvcy5wYXRoLnNwbGl0ZXh0KG9zLnBhdGgubm9ybWNhc2UoZmlsZSkpCisgICAgICAgICAgICAgICAgaWYgZXh0ID09ICcucmVzJzoKKyAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VzLmFwcGVuZChmaWxlKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIG9iamVjdHMuYXBwZW5kKGZpbGUpCisKKworICAgICAgICAgICAgZm9yIGwgaW4gbGlicmFyeV9kaXJzOgorICAgICAgICAgICAgICAgIGxkX2FyZ3MuYXBwZW5kKCIvTCVzIiAlIG9zLnBhdGgubm9ybXBhdGgobCkpCisgICAgICAgICAgICBsZF9hcmdzLmFwcGVuZCgiL0wuIikgIyB3ZSBzb21ldGltZXMgdXNlIHJlbGF0aXZlIHBhdGhzCisKKyAgICAgICAgICAgICMgbGlzdCBvZiBvYmplY3QgZmlsZXMKKyAgICAgICAgICAgIGxkX2FyZ3MuZXh0ZW5kKG9iamVjdHMpCisKKyAgICAgICAgICAgICMgWFhYIHRoZSBjb21tYW5kIGxpbmUgc3ludGF4IGZvciBCb3JsYW5kIEMrKyBpcyBhIGJpdCB3b25reTsKKyAgICAgICAgICAgICMgY2VydGFpbiBmaWxlbmFtZXMgYXJlIGphbW1lZCB0b2dldGhlciBpbiBvbmUgYmlnIHN0cmluZywgYnV0CisgICAgICAgICAgICAjIGNvbW1hLWRlbGltaXRlZC4gIFRoaXMgZG9lc24ndCBtZXNoIHRvbyB3ZWxsIHdpdGggdGhlCisgICAgICAgICAgICAjIFVuaXgtY2VudHJpYyBhdHRpdHVkZSAod2l0aCBhIERPUy9XaW5kb3dzIHF1b3RpbmcgaGFjaykgb2YKKyAgICAgICAgICAgICMgJ3NwYXduKCknLCBzbyBjb25zdHJ1Y3RpbmcgdGhlIGFyZ3VtZW50IGxpc3QgaXMgYSBiaXQKKyAgICAgICAgICAgICMgYXdrd2FyZC4gIE5vdGUgdGhhdCBkb2luZyB0aGUgb2J2aW91cyB0aGluZyBhbmQgamFtbWluZyBhbGwKKyAgICAgICAgICAgICMgdGhlIGZpbGVuYW1lcyBhbmQgY29tbWFzIGludG8gb25lIGFyZ3VtZW50IHdvdWxkIGJlIHdyb25nLAorICAgICAgICAgICAgIyBiZWNhdXNlICdzcGF3bigpJyB3b3VsZCBxdW90ZSBhbnkgZmlsZW5hbWVzIHdpdGggc3BhY2VzIGluCisgICAgICAgICAgICAjIHRoZW0uICBBcmdoZ2hoIS4gIEFwcGFyZW50bHkgaXQgd29ya3MgZmluZSBhcyBjb2RlZC4uLgorCisgICAgICAgICAgICAjIG5hbWUgb2YgZGxsL2V4ZSBmaWxlCisgICAgICAgICAgICBsZF9hcmdzLmV4dGVuZCgoJywnLG91dHB1dF9maWxlbmFtZSkpCisgICAgICAgICAgICAjIG5vIG1hcCBmaWxlIGFuZCBzdGFydCBsaWJyYXJpZXMKKyAgICAgICAgICAgIGxkX2FyZ3MuYXBwZW5kKCcsLCcpCisKKyAgICAgICAgICAgIGZvciBsaWIgaW4gbGlicmFyaWVzOgorICAgICAgICAgICAgICAgICMgc2VlIGlmIHdlIGZpbmQgaXQgYW5kIGlmIHRoZXJlIGlzIGEgYmNwcCBzcGVjaWZpYyBsaWIKKyAgICAgICAgICAgICAgICAjICh4eHhfYmNwcC5saWIpCisgICAgICAgICAgICAgICAgbGliZmlsZSA9IHNlbGYuZmluZF9saWJyYXJ5X2ZpbGUobGlicmFyeV9kaXJzLCBsaWIsIGRlYnVnKQorICAgICAgICAgICAgICAgIGlmIGxpYmZpbGUgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgbGRfYXJncy5hcHBlbmQobGliKQorICAgICAgICAgICAgICAgICAgICAjIHByb2JhYmx5IGEgQkNQUCBpbnRlcm5hbCBsaWJyYXJ5IC0tIGRvbid0IHdhcm4KKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAjIGZ1bGwgbmFtZSB3aGljaCBwcmVmZXJzIGJjcHBfeHh4LmxpYiBvdmVyIHh4eC5saWIKKyAgICAgICAgICAgICAgICAgICAgbGRfYXJncy5hcHBlbmQobGliZmlsZSkKKworICAgICAgICAgICAgIyBzb21lIGRlZmF1bHQgbGlicmFyaWVzCisgICAgICAgICAgICBsZF9hcmdzLmFwcGVuZCgnaW1wb3J0MzInKQorICAgICAgICAgICAgbGRfYXJncy5hcHBlbmQoJ2N3MzJtdCcpCisKKyAgICAgICAgICAgICMgZGVmIGZpbGUgZm9yIGV4cG9ydCBzeW1ib2xzCisgICAgICAgICAgICBsZF9hcmdzLmV4dGVuZCgoJywnLGRlZl9maWxlKSkKKyAgICAgICAgICAgICMgYWRkIHJlc291cmNlIGZpbGVzCisgICAgICAgICAgICBsZF9hcmdzLmFwcGVuZCgnLCcpCisgICAgICAgICAgICBsZF9hcmdzLmV4dGVuZChyZXNvdXJjZXMpCisKKworICAgICAgICAgICAgaWYgZXh0cmFfcHJlYXJnczoKKyAgICAgICAgICAgICAgICBsZF9hcmdzWzowXSA9IGV4dHJhX3ByZWFyZ3MKKyAgICAgICAgICAgIGlmIGV4dHJhX3Bvc3RhcmdzOgorICAgICAgICAgICAgICAgIGxkX2FyZ3MuZXh0ZW5kKGV4dHJhX3Bvc3RhcmdzKQorCisgICAgICAgICAgICBzZWxmLm1rcGF0aChvcy5wYXRoLmRpcm5hbWUob3V0cHV0X2ZpbGVuYW1lKSkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLnNwYXduKFtzZWxmLmxpbmtlcl0gKyBsZF9hcmdzKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgTGlua0Vycm9yKG1zZykKKworICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJza2lwcGluZyAlcyAodXAtdG8tZGF0ZSkiLCBvdXRwdXRfZmlsZW5hbWUpCisKKyAgICAjIC0tIE1pc2NlbGxhbmVvdXMgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisKKyAgICBkZWYgZmluZF9saWJyYXJ5X2ZpbGUoc2VsZiwgZGlycywgbGliLCBkZWJ1Zz1GYWxzZSk6CisgICAgICAgICMgTGlzdCBvZiBlZmZlY3RpdmUgbGlicmFyeSBuYW1lcyB0byB0cnksIGluIG9yZGVyIG9mIHByZWZlcmVuY2U6CisgICAgICAgICMgeHh4X2JjcHAubGliIGlzIGJldHRlciB0aGFuIHh4eC5saWIKKyAgICAgICAgIyBhbmQgeHh4X2QubGliIGlzIGJldHRlciB0aGFuIHh4eC5saWIgaWYgZGVidWcgaXMgc2V0CisgICAgICAgICMKKyAgICAgICAgIyBUaGUgIl9iY3BwIiBzdWZmaXggaXMgdG8gaGFuZGxlIGEgUHl0aG9uIGluc3RhbGxhdGlvbiBmb3IgcGVvcGxlCisgICAgICAgICMgd2l0aCBtdWx0aXBsZSBjb21waWxlcnMgKHByaW1hcmlseSBQYWNrYWdpbmcgaGFja2VycywgSSBzdXNwZWN0CisgICAgICAgICMgOy0pLiAgVGhlIGlkZWEgaXMgdGhleSdkIGhhdmUgb25lIHN0YXRpYyBsaWJyYXJ5IGZvciBlYWNoCisgICAgICAgICMgY29tcGlsZXIgdGhleSBjYXJlIGFib3V0LCBzaW5jZSAoYWxtb3N0PykgZXZlcnkgV2luZG93cyBjb21waWxlcgorICAgICAgICAjIHNlZW1zIHRvIGhhdmUgYSBkaWZmZXJlbnQgZm9ybWF0IGZvciBzdGF0aWMgbGlicmFyaWVzLgorICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgIGRsaWIgPSAobGliICsgIl9kIikKKyAgICAgICAgICAgIHRyeV9uYW1lcyA9IChkbGliICsgIl9iY3BwIiwgbGliICsgIl9iY3BwIiwgZGxpYiwgbGliKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgdHJ5X25hbWVzID0gKGxpYiArICJfYmNwcCIsIGxpYikKKworICAgICAgICBmb3IgZGlyIGluIGRpcnM6CisgICAgICAgICAgICBmb3IgbmFtZSBpbiB0cnlfbmFtZXM6CisgICAgICAgICAgICAgICAgbGliZmlsZSA9IG9zLnBhdGguam9pbihkaXIsIHNlbGYubGlicmFyeV9maWxlbmFtZShuYW1lKSkKKyAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhsaWJmaWxlKToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxpYmZpbGUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgT29wcywgZGlkbid0IGZpbmQgaXQgaW4gKmFueSogb2YgJ2RpcnMnCisgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgIyBvdmVyd3JpdGUgdGhlIG9uZSBmcm9tIENDb21waWxlciB0byBzdXBwb3J0IHJjIGFuZCByZXMtZmlsZXMKKyAgICBkZWYgb2JqZWN0X2ZpbGVuYW1lcyhzZWxmLCBzb3VyY2VfZmlsZW5hbWVzLCBzdHJpcF9kaXI9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj0nJyk6CisgICAgICAgIGlmIG91dHB1dF9kaXIgaXMgTm9uZToKKyAgICAgICAgICAgIG91dHB1dF9kaXIgPSAnJworICAgICAgICBvYmpfbmFtZXMgPSBbXQorICAgICAgICBmb3Igc3JjX25hbWUgaW4gc291cmNlX2ZpbGVuYW1lczoKKyAgICAgICAgICAgICMgdXNlIG5vcm1jYXNlIHRvIG1ha2Ugc3VyZSAnLnJjJyBpcyByZWFsbHkgJy5yYycgYW5kIG5vdCAnLlJDJworICAgICAgICAgICAgYmFzZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChvcy5wYXRoLm5vcm1jYXNlKHNyY19uYW1lKSkKKyAgICAgICAgICAgIGlmIGV4dCBub3QgaW4gKHNlbGYuc3JjX2V4dGVuc2lvbnMgKyBbJy5yYycsJy5yZXMnXSk6CisgICAgICAgICAgICAgICAgcmFpc2UgVW5rbm93bkZpbGVFcnJvcigidW5rbm93biBmaWxlIHR5cGUgJyVzJyAoZnJvbSAnJXMnKSIgJSBcCisgICAgICAgICAgICAgICAgICAgICAgKGV4dCwgc3JjX25hbWUpKQorICAgICAgICAgICAgaWYgc3RyaXBfZGlyOgorICAgICAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLmJhc2VuYW1lKGJhc2UpCisgICAgICAgICAgICBpZiBleHQgPT0gJy5yZXMnOgorICAgICAgICAgICAgICAgICMgdGhlc2UgY2FuIGdvIHVuY2hhbmdlZAorICAgICAgICAgICAgICAgIG9ial9uYW1lcy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsIGJhc2UgKyBleHQpKQorICAgICAgICAgICAgZWxpZiBleHQgPT0gJy5yYyc6CisgICAgICAgICAgICAgICAgIyB0aGVzZSBuZWVkIHRvIGJlIGNvbXBpbGVkIHRvIC5yZXMtZmlsZXMKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLCBiYXNlICsgJy5yZXMnKSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgb2JqX25hbWVzLmFwcGVuZChvcy5wYXRoLmpvaW4ob3V0cHV0X2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlICsgc2VsZi5vYmpfZXh0ZW5zaW9uKSkKKyAgICAgICAgcmV0dXJuIG9ial9uYW1lcworCisKKyAgICBkZWYgcHJlcHJvY2VzcyhzZWxmLCBzb3VyY2UsIG91dHB1dF9maWxlPU5vbmUsIG1hY3Jvcz1Ob25lLAorICAgICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycz1Ob25lLCBleHRyYV9wcmVhcmdzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3M9Tm9uZSk6CisgICAgICAgIF8sIG1hY3JvcywgaW5jbHVkZV9kaXJzID0gXAorICAgICAgICAgICAgc2VsZi5fZml4X2NvbXBpbGVfYXJncyhOb25lLCBtYWNyb3MsIGluY2x1ZGVfZGlycykKKyAgICAgICAgcHBfb3B0cyA9IGdlbl9wcmVwcm9jZXNzX29wdGlvbnMobWFjcm9zLCBpbmNsdWRlX2RpcnMpCisgICAgICAgIHBwX2FyZ3MgPSBbJ2NwcDMyLmV4ZSddICsgcHBfb3B0cworICAgICAgICBpZiBvdXRwdXRfZmlsZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHBwX2FyZ3MuYXBwZW5kKCctbycgKyBvdXRwdXRfZmlsZSkKKyAgICAgICAgaWYgZXh0cmFfcHJlYXJnczoKKyAgICAgICAgICAgIHBwX2FyZ3NbOjBdID0gZXh0cmFfcHJlYXJncworICAgICAgICBpZiBleHRyYV9wb3N0YXJnczoKKyAgICAgICAgICAgIHBwX2FyZ3MuZXh0ZW5kKGV4dHJhX3Bvc3RhcmdzKQorICAgICAgICBwcF9hcmdzLmFwcGVuZChzb3VyY2UpCisKKyAgICAgICAgIyBXZSBuZWVkIHRvIHByZXByb2Nlc3M6IGVpdGhlciB3ZSdyZSBiZWluZyBmb3JjZWQgdG8sIG9yIHRoZQorICAgICAgICAjIHNvdXJjZSBmaWxlIGlzIG5ld2VyIHRoYW4gdGhlIHRhcmdldCAob3IgdGhlIHRhcmdldCBkb2Vzbid0CisgICAgICAgICMgZXhpc3QpLgorICAgICAgICBpZiBzZWxmLmZvcmNlIG9yIG91dHB1dF9maWxlIGlzIE5vbmUgb3IgbmV3ZXIoc291cmNlLCBvdXRwdXRfZmlsZSk6CisgICAgICAgICAgICBpZiBvdXRwdXRfZmlsZToKKyAgICAgICAgICAgICAgICBzZWxmLm1rcGF0aChvcy5wYXRoLmRpcm5hbWUob3V0cHV0X2ZpbGUpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24ocHBfYXJncykKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2Njb21waWxlci5weSBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvY2NvbXBpbGVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk4YzRiNjgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2Njb21waWxlci5weQpAQCAtMCwwICsxLDg2MyBAQAorIiIiQWJzdHJhY3QgYmFzZSBjbGFzcyBmb3IgY29tcGlsZXJzLgorCitUaGlzIG1vZHVsZXMgY29udGFpbnMgQ0NvbXBpbGVyLCBhbiBhYnN0cmFjdCBiYXNlIGNsYXNzIHRoYXQgZGVmaW5lcyB0aGUKK2ludGVyZmFjZSBmb3IgdGhlIGNvbXBpbGVyIGFic3RyYWN0aW9uIG1vZGVsIHVzZWQgYnkgcGFja2FnaW5nLgorIiIiCisKK2ltcG9ydCBvcworZnJvbSBzaHV0aWwgaW1wb3J0IG1vdmUKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHNwbGl0X3F1b3RlZCwgZXhlY3V0ZSwgbmV3ZXJfZ3JvdXAsIHNwYXduCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChDb21waWxlRXJyb3IsIExpbmtFcnJvciwgVW5rbm93bkZpbGVFcnJvcikKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBnZW5fcHJlcHJvY2Vzc19vcHRpb25zCisKKworY2xhc3MgQ0NvbXBpbGVyOgorICAgICIiIkFic3RyYWN0IGJhc2UgY2xhc3MgdG8gZGVmaW5lIHRoZSBpbnRlcmZhY2UgdGhhdCBtdXN0IGJlIGltcGxlbWVudGVkCisgICAgYnkgcmVhbCBjb21waWxlciBjbGFzc2VzLiAgQWxzbyBoYXMgc29tZSB1dGlsaXR5IG1ldGhvZHMgdXNlZCBieQorICAgIHNldmVyYWwgY29tcGlsZXIgY2xhc3Nlcy4KKworICAgIFRoZSBiYXNpYyBpZGVhIGJlaGluZCBhIGNvbXBpbGVyIGFic3RyYWN0aW9uIGNsYXNzIGlzIHRoYXQgZWFjaAorICAgIGluc3RhbmNlIGNhbiBiZSB1c2VkIGZvciBhbGwgdGhlIGNvbXBpbGUvbGluayBzdGVwcyBpbiBidWlsZGluZyBhCisgICAgc2luZ2xlIHByb2plY3QuICBUaHVzLCBhdHRyaWJ1dGVzIGNvbW1vbiB0byBhbGwgb2YgdGhvc2UgY29tcGlsZSBhbmQKKyAgICBsaW5rIHN0ZXBzIC0tIGluY2x1ZGUgZGlyZWN0b3JpZXMsIG1hY3JvcyB0byBkZWZpbmUsIGxpYnJhcmllcyB0byBsaW5rCisgICAgYWdhaW5zdCwgZXRjLiAtLSBhcmUgYXR0cmlidXRlcyBvZiB0aGUgY29tcGlsZXIgaW5zdGFuY2UuICBUbyBhbGxvdyBmb3IKKyAgICB2YXJpYWJpbGl0eSBpbiBob3cgaW5kaXZpZHVhbCBmaWxlcyBhcmUgdHJlYXRlZCwgbW9zdCBvZiB0aG9zZQorICAgIGF0dHJpYnV0ZXMgbWF5IGJlIHZhcmllZCBvbiBhIHBlci1jb21waWxhdGlvbiBvciBwZXItbGluayBiYXNpcy4KKyAgICAiIiIKKworICAgICMgJ25hbWUnIGlzIGEgY2xhc3MgYXR0cmlidXRlIHRoYXQgaWRlbnRpZmllcyB0aGlzIGNsYXNzLiAgSXQKKyAgICAjIGtlZXBzIGNvZGUgdGhhdCB3YW50cyB0byBrbm93IHdoYXQga2luZCBvZiBjb21waWxlciBpdCdzIGRlYWxpbmcgd2l0aAorICAgICMgZnJvbSBoYXZpbmcgdG8gaW1wb3J0IGFsbCBwb3NzaWJsZSBjb21waWxlciBjbGFzc2VzIGp1c3QgdG8gZG8gYW4KKyAgICAjICdpc2luc3RhbmNlJy4KKyAgICBuYW1lID0gTm9uZQorICAgIGRlc2NyaXB0aW9uID0gTm9uZQorCisgICAgIyBYWFggdGhpbmdzIG5vdCBoYW5kbGVkIGJ5IHRoaXMgY29tcGlsZXIgYWJzdHJhY3Rpb24gbW9kZWw6CisgICAgIyAgICogY2xpZW50IGNhbid0IHByb3ZpZGUgYWRkaXRpb25hbCBvcHRpb25zIGZvciBhIGNvbXBpbGVyLAorICAgICMgICAgIGUuZy4gd2FybmluZywgb3B0aW1pemF0aW9uLCBkZWJ1Z2dpbmcgZmxhZ3MuICBQZXJoYXBzIHRoaXMKKyAgICAjICAgICBzaG91bGQgYmUgdGhlIGRvbWFpbiBvZiBjb25jcmV0ZSBjb21waWxlciBhYnN0cmFjdGlvbiBjbGFzc2VzCisgICAgIyAgICAgKFVuaXhDQ29tcGlsZXIsIE1TVkNDb21waWxlciwgZXRjLikgLS0gb3IgcGVyaGFwcyB0aGUgYmFzZQorICAgICMgICAgIGNsYXNzIHNob3VsZCBoYXZlIG1ldGhvZHMgZm9yIHRoZSBjb21tb24gb25lcy4KKyAgICAjICAgKiBjYW4ndCBjb21wbGV0ZWx5IG92ZXJyaWRlIHRoZSBpbmNsdWRlIG9yIGxpYnJhcnkgc2VhcmNoZworICAgICMgICAgIHBhdGgsIGllLiBubyAiY2MgLUkgLUlkaXIxIC1JZGlyMiIgb3IgImNjIC1MIC1MZGlyMSAtTGRpcjIiLgorICAgICMgICAgIEknbSBub3Qgc3VyZSBob3cgd2lkZWx5IHN1cHBvcnRlZCB0aGlzIGlzIGV2ZW4gYnkgVW5peAorICAgICMgICAgIGNvbXBpbGVycywgbXVjaCBsZXNzIG9uIG90aGVyIHBsYXRmb3Jtcy4gIEFuZCBJJ20gZXZlbiBsZXNzCisgICAgIyAgICAgc3VyZSBob3cgdXNlZnVsIGl0IGlzOyBtYXliZSBmb3IgY3Jvc3MtY29tcGlsaW5nLCBidXQKKyAgICAjICAgICBzdXBwb3J0IGZvciB0aGF0IGlzIGEgd2F5cyBvZmYuICAoQW5kIGFueXdheXMsIGNyb3NzCisgICAgIyAgICAgY29tcGlsZXJzIHByb2JhYmx5IGhhdmUgYSBkZWRpY2F0ZWQgYmluYXJ5IHdpdGggdGhlCisgICAgIyAgICAgcmlnaHQgcGF0aHMgY29tcGlsZWQgaW4uICBJIGhvcGUuKQorICAgICMgICAqIGNhbid0IGRvIHJlYWxseSBmcmVha3kgdGhpbmdzIHdpdGggdGhlIGxpYnJhcnkgbGlzdC9saWJyYXJ5CisgICAgIyAgICAgZGlycywgZS5nLiAiLUxkaXIxIC1sZm9vIC1MZGlyMiAtbGZvbyIgdG8gbGluayBhZ2FpbnN0CisgICAgIyAgICAgZGlmZmVyZW50IHZlcnNpb25zIG9mIGxpYmZvby5hIGluIGRpZmZlcmVudCBsb2NhdGlvbnMuICBJCisgICAgIyAgICAgdGhpbmsgdGhpcyBpcyB1c2VsZXNzIHdpdGhvdXQgdGhlIGFiaWxpdHkgdG8gbnVsbCBvdXQgdGhlCisgICAgIyAgICAgbGlicmFyeSBzZWFyY2ggcGF0aCBhbnl3YXlzLgorCisKKyAgICAjIFN1YmNsYXNzZXMgdGhhdCByZWx5IG9uIHRoZSBzdGFuZGFyZCBmaWxlbmFtZSBnZW5lcmF0aW9uIG1ldGhvZHMKKyAgICAjIGltcGxlbWVudGVkIGJlbG93IHNob3VsZCBvdmVycmlkZSB0aGVzZTsgc2VlIHRoZSBjb21tZW50IG5lYXIKKyAgICAjIHRob3NlIG1ldGhvZHMgKCdvYmplY3RfZmlsZW5hbWVzKCknIGV0LiBhbC4pIGZvciBkZXRhaWxzOgorICAgIHNyY19leHRlbnNpb25zID0gTm9uZSAgICAgICAgICAgICAgICMgbGlzdCBvZiBzdHJpbmdzCisgICAgb2JqX2V4dGVuc2lvbiA9IE5vbmUgICAgICAgICAgICAgICAgIyBzdHJpbmcKKyAgICBzdGF0aWNfbGliX2V4dGVuc2lvbiA9IE5vbmUKKyAgICBzaGFyZWRfbGliX2V4dGVuc2lvbiA9IE5vbmUgICAgICAgICAjIHN0cmluZworICAgIHN0YXRpY19saWJfZm9ybWF0ID0gTm9uZSAgICAgICAgICAgICMgZm9ybWF0IHN0cmluZworICAgIHNoYXJlZF9saWJfZm9ybWF0ID0gTm9uZSAgICAgICAgICAgICMgcHJvYi4gc2FtZSBhcyBzdGF0aWNfbGliX2Zvcm1hdAorICAgIGV4ZV9leHRlbnNpb24gPSBOb25lICAgICAgICAgICAgICAgICMgc3RyaW5nCisKKyAgICAjIERlZmF1bHQgbGFuZ3VhZ2Ugc2V0dGluZ3MuIGxhbmd1YWdlX21hcCBpcyB1c2VkIHRvIGRldGVjdCBhIHNvdXJjZQorICAgICMgZmlsZSBvciBFeHRlbnNpb24gdGFyZ2V0IGxhbmd1YWdlLCBjaGVja2luZyBzb3VyY2UgZmlsZW5hbWVzLgorICAgICMgbGFuZ3VhZ2Vfb3JkZXIgaXMgdXNlZCB0byBkZXRlY3QgdGhlIGxhbmd1YWdlIHByZWNlZGVuY2UsIHdoZW4gZGVjaWRpbmcKKyAgICAjIHdoYXQgbGFuZ3VhZ2UgdG8gdXNlIHdoZW4gbWl4aW5nIHNvdXJjZSB0eXBlcy4gRm9yIGV4YW1wbGUsIGlmIHNvbWUKKyAgICAjIGV4dGVuc2lvbiBoYXMgdHdvIGZpbGVzIHdpdGggIi5jIiBleHRlbnNpb24sIGFuZCBvbmUgd2l0aCAiLmNwcCIsIGl0CisgICAgIyBpcyBzdGlsbCBsaW5rZWQgYXMgYysrLgorICAgIGxhbmd1YWdlX21hcCA9IHsiLmMiOiAiYyIsCisgICAgICAgICAgICAgICAgICAgICIuY2MiOiAiYysrIiwKKyAgICAgICAgICAgICAgICAgICAgIi5jcHAiOiAiYysrIiwKKyAgICAgICAgICAgICAgICAgICAgIi5jeHgiOiAiYysrIiwKKyAgICAgICAgICAgICAgICAgICAgIi5tIjogIm9iamMiLAorICAgICAgICAgICAgICAgICAgIH0KKyAgICBsYW5ndWFnZV9vcmRlciA9IFsiYysrIiwgIm9iamMiLCAiYyJdCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZHJ5X3J1bj1GYWxzZSwgZm9yY2U9RmFsc2UpOgorICAgICAgICBzZWxmLmRyeV9ydW4gPSBkcnlfcnVuCisgICAgICAgIHNlbGYuZm9yY2UgPSBmb3JjZQorCisgICAgICAgICMgJ291dHB1dF9kaXInOiBhIGNvbW1vbiBvdXRwdXQgZGlyZWN0b3J5IGZvciBvYmplY3QsIGxpYnJhcnksCisgICAgICAgICMgc2hhcmVkIG9iamVjdCwgYW5kIHNoYXJlZCBsaWJyYXJ5IGZpbGVzCisgICAgICAgIHNlbGYub3V0cHV0X2RpciA9IE5vbmUKKworICAgICAgICAjICdtYWNyb3MnOiBhIGxpc3Qgb2YgbWFjcm8gZGVmaW5pdGlvbnMgKG9yIHVuZGVmaW5pdGlvbnMpLiAgQQorICAgICAgICAjIG1hY3JvIGRlZmluaXRpb24gaXMgYSAyLXR1cGxlIChuYW1lLCB2YWx1ZSksIHdoZXJlIHRoZSB2YWx1ZSBpcworICAgICAgICAjIGVpdGhlciBhIHN0cmluZyBvciBOb25lIChubyBleHBsaWNpdCB2YWx1ZSkuICBBIG1hY3JvCisgICAgICAgICMgdW5kZWZpbml0aW9uIGlzIGEgMS10dXBsZSAobmFtZSwpLgorICAgICAgICBzZWxmLm1hY3JvcyA9IFtdCisKKyAgICAgICAgIyAnaW5jbHVkZV9kaXJzJzogYSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIHNlYXJjaCBmb3IgaW5jbHVkZSBmaWxlcworICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IFtdCisKKyAgICAgICAgIyAnbGlicmFyaWVzJzogYSBsaXN0IG9mIGxpYnJhcmllcyB0byBpbmNsdWRlIGluIGFueSBsaW5rCisgICAgICAgICMgKGxpYnJhcnkgbmFtZXMsIG5vdCBmaWxlbmFtZXM6IGVnLiAiZm9vIiBub3QgImxpYmZvby5hIikKKyAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBbXQorCisgICAgICAgICMgJ2xpYnJhcnlfZGlycyc6IGEgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIGxpYnJhcmllcworICAgICAgICBzZWxmLmxpYnJhcnlfZGlycyA9IFtdCisKKyAgICAgICAgIyAncnVudGltZV9saWJyYXJ5X2RpcnMnOiBhIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvcgorICAgICAgICAjIHNoYXJlZCBsaWJyYXJpZXMvb2JqZWN0cyBhdCBydW50aW1lCisgICAgICAgIHNlbGYucnVudGltZV9saWJyYXJ5X2RpcnMgPSBbXQorCisgICAgICAgICMgJ29iamVjdHMnOiBhIGxpc3Qgb2Ygb2JqZWN0IGZpbGVzIChvciBzaW1pbGFyLCBzdWNoIGFzIGV4cGxpY2l0bHkKKyAgICAgICAgIyBuYW1lZCBsaWJyYXJ5IGZpbGVzKSB0byBpbmNsdWRlIG9uIGFueSBsaW5rCisgICAgICAgIHNlbGYub2JqZWN0cyA9IFtdCisKKyAgICAgICAgZm9yIGtleSwgdmFsdWUgaW4gc2VsZi5leGVjdXRhYmxlcy5pdGVtcygpOgorICAgICAgICAgICAgc2VsZi5zZXRfZXhlY3V0YWJsZShrZXksIHZhbHVlKQorCisgICAgZGVmIHNldF9leGVjdXRhYmxlcyhzZWxmLCAqKmFyZ3MpOgorICAgICAgICAiIiJEZWZpbmUgdGhlIGV4ZWN1dGFibGVzIChhbmQgb3B0aW9ucyBmb3IgdGhlbSkgdGhhdCB3aWxsIGJlIHJ1bgorICAgICAgICB0byBwZXJmb3JtIHRoZSB2YXJpb3VzIHN0YWdlcyBvZiBjb21waWxhdGlvbi4gIFRoZSBleGFjdCBzZXQgb2YKKyAgICAgICAgZXhlY3V0YWJsZXMgdGhhdCBtYXkgYmUgc3BlY2lmaWVkIGhlcmUgZGVwZW5kcyBvbiB0aGUgY29tcGlsZXIKKyAgICAgICAgY2xhc3MgKHZpYSB0aGUgJ2V4ZWN1dGFibGVzJyBjbGFzcyBhdHRyaWJ1dGUpLCBidXQgbW9zdCB3aWxsIGhhdmU6CisgICAgICAgICAgY29tcGlsZXIgICAgICB0aGUgQy9DKysgY29tcGlsZXIKKyAgICAgICAgICBsaW5rZXJfc28gICAgIGxpbmtlciB1c2VkIHRvIGNyZWF0ZSBzaGFyZWQgb2JqZWN0cyBhbmQgbGlicmFyaWVzCisgICAgICAgICAgbGlua2VyX2V4ZSAgICBsaW5rZXIgdXNlZCB0byBjcmVhdGUgYmluYXJ5IGV4ZWN1dGFibGVzCisgICAgICAgICAgYXJjaGl2ZXIgICAgICBzdGF0aWMgbGlicmFyeSBjcmVhdG9yCisKKyAgICAgICAgT24gcGxhdGZvcm1zIHdpdGggYSBjb21tYW5kIGxpbmUgKFVuaXgsIERPUy9XaW5kb3dzKSwgZWFjaCBvZiB0aGVzZQorICAgICAgICBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgc3BsaXQgaW50byBleGVjdXRhYmxlIG5hbWUgYW5kIChvcHRpb25hbCkKKyAgICAgICAgbGlzdCBvZiBhcmd1bWVudHMuICAoU3BsaXR0aW5nIHRoZSBzdHJpbmcgaXMgZG9uZSBzaW1pbGFybHkgdG8gaG93CisgICAgICAgIFVuaXggc2hlbGxzIG9wZXJhdGU6IHdvcmRzIGFyZSBkZWxpbWl0ZWQgYnkgc3BhY2VzLCBidXQgcXVvdGVzIGFuZAorICAgICAgICBiYWNrc2xhc2hlcyBjYW4gb3ZlcnJpZGUgdGhpcy4gIFNlZQorICAgICAgICAnZGlzdHV0aWxzLnV0aWwuc3BsaXRfcXVvdGVkKCknLikKKyAgICAgICAgIiIiCisKKyAgICAgICAgIyBOb3RlIHRoYXQgc29tZSBDQ29tcGlsZXIgaW1wbGVtZW50YXRpb24gY2xhc3NlcyB3aWxsIGRlZmluZSBjbGFzcworICAgICAgICAjIGF0dHJpYnV0ZXMgJ2NwcCcsICdjYycsIGV0Yy4gd2l0aCBoYXJkLWNvZGVkIGV4ZWN1dGFibGUgbmFtZXM7CisgICAgICAgICMgdGhpcyBpcyBhcHByb3ByaWF0ZSB3aGVuIGEgY29tcGlsZXIgY2xhc3MgaXMgZm9yIGV4YWN0bHkgb25lCisgICAgICAgICMgY29tcGlsZXIvT1MgY29tYmluYXRpb24gKGVnLiBNU1ZDQ29tcGlsZXIpLiAgT3RoZXIgY29tcGlsZXIKKyAgICAgICAgIyBjbGFzc2VzIChVbml4Q0NvbXBpbGVyLCBpbiBwYXJ0aWN1bGFyKSBhcmUgZHJpdmVuIGJ5IGluZm9ybWF0aW9uCisgICAgICAgICMgZGlzY292ZXJlZCBhdCBydW4tdGltZSwgc2luY2UgdGhlcmUgYXJlIG1hbnkgZGlmZmVyZW50IHdheXMgdG8gZG8KKyAgICAgICAgIyBiYXNpY2FsbHkgdGhlIHNhbWUgdGhpbmdzIHdpdGggVW5peCBDIGNvbXBpbGVycy4KKworICAgICAgICBmb3Iga2V5LCB2YWx1ZSBpbiBhcmdzLml0ZW1zKCk6CisgICAgICAgICAgICBpZiBrZXkgbm90IGluIHNlbGYuZXhlY3V0YWJsZXM6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigidW5rbm93biBleGVjdXRhYmxlICclcycgZm9yIGNsYXNzICVzIiAlIFwKKyAgICAgICAgICAgICAgICAgICAgICAoa2V5LCBzZWxmLl9fY2xhc3NfXy5fX25hbWVfXykpCisgICAgICAgICAgICBzZWxmLnNldF9leGVjdXRhYmxlKGtleSwgdmFsdWUpCisKKyAgICBkZWYgc2V0X2V4ZWN1dGFibGUoc2VsZiwga2V5LCB2YWx1ZSk6CisgICAgICAgIGlmIGlzaW5zdGFuY2UodmFsdWUsIHN0cik6CisgICAgICAgICAgICBzZXRhdHRyKHNlbGYsIGtleSwgc3BsaXRfcXVvdGVkKHZhbHVlKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNldGF0dHIoc2VsZiwga2V5LCB2YWx1ZSkKKworICAgIGRlZiBfZmluZF9tYWNybyhzZWxmLCBuYW1lKToKKyAgICAgICAgaSA9IDAKKyAgICAgICAgZm9yIGRlZm4gaW4gc2VsZi5tYWNyb3M6CisgICAgICAgICAgICBpZiBkZWZuWzBdID09IG5hbWU6CisgICAgICAgICAgICAgICAgcmV0dXJuIGkKKyAgICAgICAgICAgIGkgPSBpICsgMQorICAgICAgICByZXR1cm4gTm9uZQorCisgICAgZGVmIF9jaGVja19tYWNyb19kZWZpbml0aW9ucyhzZWxmLCBkZWZpbml0aW9ucyk6CisgICAgICAgICIiIkVuc3VyZXMgdGhhdCBldmVyeSBlbGVtZW50IG9mICdkZWZpbml0aW9ucycgaXMgYSB2YWxpZCBtYWNybworICAgICAgICBkZWZpbml0aW9uLCBpZS4gZWl0aGVyIChuYW1lLHZhbHVlKSAyLXR1cGxlIG9yIGEgKG5hbWUsKSB0dXBsZS4gIERvCisgICAgICAgIG5vdGhpbmcgaWYgYWxsIGRlZmluaXRpb25zIGFyZSBPSywgcmFpc2UgVHlwZUVycm9yIG90aGVyd2lzZS4KKyAgICAgICAgIiIiCisgICAgICAgIGZvciBkZWZuIGluIGRlZmluaXRpb25zOgorICAgICAgICAgICAgaWYgbm90IChpc2luc3RhbmNlKGRlZm4sIHR1cGxlKSBhbmQKKyAgICAgICAgICAgICAgICAgICAgKGxlbihkZWZuKSA9PSAxIG9yCisgICAgICAgICAgICAgICAgICAgICAobGVuKGRlZm4pID09IDIgYW5kCisgICAgICAgICAgICAgICAgICAgICAgKGlzaW5zdGFuY2UoZGVmblsxXSwgc3RyKSBvciBkZWZuWzFdIGlzIE5vbmUpKSkgYW5kCisgICAgICAgICAgICAgICAgICAgIGlzaW5zdGFuY2UoZGVmblswXSwgc3RyKSk6CisgICAgICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCgiaW52YWxpZCBtYWNybyBkZWZpbml0aW9uICclcyc6ICIgJSBkZWZuKSArIFwKKyAgICAgICAgICAgICAgICAgICAgICAibXVzdCBiZSB0dXBsZSAoc3RyaW5nLCksIChzdHJpbmcsIHN0cmluZyksIG9yICIgKyBcCisgICAgICAgICAgICAgICAgICAgICAgIihzdHJpbmcsIE5vbmUpIikKKworCisgICAgIyAtLSBCb29ra2VlcGluZyBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBkZWZpbmVfbWFjcm8oc2VsZiwgbmFtZSwgdmFsdWU9Tm9uZSk6CisgICAgICAgICIiIkRlZmluZSBhIHByZXByb2Nlc3NvciBtYWNybyBmb3IgYWxsIGNvbXBpbGF0aW9ucyBkcml2ZW4gYnkgdGhpcworICAgICAgICBjb21waWxlciBvYmplY3QuICBUaGUgb3B0aW9uYWwgcGFyYW1ldGVyICd2YWx1ZScgc2hvdWxkIGJlIGEKKyAgICAgICAgc3RyaW5nOyBpZiBpdCBpcyBub3Qgc3VwcGxpZWQsIHRoZW4gdGhlIG1hY3JvIHdpbGwgYmUgZGVmaW5lZAorICAgICAgICB3aXRob3V0IGFuIGV4cGxpY2l0IHZhbHVlIGFuZCB0aGUgZXhhY3Qgb3V0Y29tZSBkZXBlbmRzIG9uIHRoZQorICAgICAgICBjb21waWxlciB1c2VkIChYWFggdHJ1ZT8gZG9lcyBBTlNJIHNheSBhbnl0aGluZyBhYm91dCB0aGlzPykKKyAgICAgICAgIiIiCisgICAgICAgICMgRGVsZXRlIGZyb20gdGhlIGxpc3Qgb2YgbWFjcm8gZGVmaW5pdGlvbnMvdW5kZWZpbml0aW9ucyBpZgorICAgICAgICAjIGFscmVhZHkgdGhlcmUgKHNvIHRoYXQgdGhpcyBvbmUgd2lsbCB0YWtlIHByZWNlZGVuY2UpLgorICAgICAgICBpID0gc2VsZi5fZmluZF9tYWNybyhuYW1lKQorICAgICAgICBpZiBpIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgZGVsIHNlbGYubWFjcm9zW2ldCisKKyAgICAgICAgZGVmbiA9IChuYW1lLCB2YWx1ZSkKKyAgICAgICAgc2VsZi5tYWNyb3MuYXBwZW5kKGRlZm4pCisKKyAgICBkZWYgdW5kZWZpbmVfbWFjcm8oc2VsZiwgbmFtZSk6CisgICAgICAgICIiIlVuZGVmaW5lIGEgcHJlcHJvY2Vzc29yIG1hY3JvIGZvciBhbGwgY29tcGlsYXRpb25zIGRyaXZlbiBieQorICAgICAgICB0aGlzIGNvbXBpbGVyIG9iamVjdC4gIElmIHRoZSBzYW1lIG1hY3JvIGlzIGRlZmluZWQgYnkKKyAgICAgICAgJ2RlZmluZV9tYWNybygpJyBhbmQgdW5kZWZpbmVkIGJ5ICd1bmRlZmluZV9tYWNybygpJyB0aGUgbGFzdCBjYWxsCisgICAgICAgIHRha2VzIHByZWNlZGVuY2UgKGluY2x1ZGluZyBtdWx0aXBsZSByZWRlZmluaXRpb25zIG9yCisgICAgICAgIHVuZGVmaW5pdGlvbnMpLiAgSWYgdGhlIG1hY3JvIGlzIHJlZGVmaW5lZC91bmRlZmluZWQgb24gYQorICAgICAgICBwZXItY29tcGlsYXRpb24gYmFzaXMgKGllLiBpbiB0aGUgY2FsbCB0byAnY29tcGlsZSgpJyksIHRoZW4gdGhhdAorICAgICAgICB0YWtlcyBwcmVjZWRlbmNlLgorICAgICAgICAiIiIKKyAgICAgICAgIyBEZWxldGUgZnJvbSB0aGUgbGlzdCBvZiBtYWNybyBkZWZpbml0aW9ucy91bmRlZmluaXRpb25zIGlmCisgICAgICAgICMgYWxyZWFkeSB0aGVyZSAoc28gdGhhdCB0aGlzIG9uZSB3aWxsIHRha2UgcHJlY2VkZW5jZSkuCisgICAgICAgIGkgPSBzZWxmLl9maW5kX21hY3JvKG5hbWUpCisgICAgICAgIGlmIGkgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBkZWwgc2VsZi5tYWNyb3NbaV0KKworICAgICAgICB1bmRlZm4gPSAobmFtZSwpCisgICAgICAgIHNlbGYubWFjcm9zLmFwcGVuZCh1bmRlZm4pCisKKyAgICBkZWYgYWRkX2luY2x1ZGVfZGlyKHNlbGYsIGRpcik6CisgICAgICAgICIiIkFkZCAnZGlyJyB0byB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgZm9yCisgICAgICAgIGhlYWRlciBmaWxlcy4gIFRoZSBjb21waWxlciBpcyBpbnN0cnVjdGVkIHRvIHNlYXJjaCBkaXJlY3RvcmllcyBpbgorICAgICAgICB0aGUgb3JkZXIgaW4gd2hpY2ggdGhleSBhcmUgc3VwcGxpZWQgYnkgc3VjY2Vzc2l2ZSBjYWxscyB0bworICAgICAgICAnYWRkX2luY2x1ZGVfZGlyKCknLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMuYXBwZW5kKGRpcikKKworICAgIGRlZiBzZXRfaW5jbHVkZV9kaXJzKHNlbGYsIGRpcnMpOgorICAgICAgICAiIiJTZXQgdGhlIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdGhhdCB3aWxsIGJlIHNlYXJjaGVkIHRvICdkaXJzJyAoYQorICAgICAgICBsaXN0IG9mIHN0cmluZ3MpLiAgT3ZlcnJpZGVzIGFueSBwcmVjZWRpbmcgY2FsbHMgdG8KKyAgICAgICAgJ2FkZF9pbmNsdWRlX2RpcigpJzsgc3Vic2VxdWVuY2UgY2FsbHMgdG8gJ2FkZF9pbmNsdWRlX2RpcigpJyBhZGQKKyAgICAgICAgdG8gdGhlIGxpc3QgcGFzc2VkIHRvICdzZXRfaW5jbHVkZV9kaXJzKCknLiAgVGhpcyBkb2VzIG5vdCBhZmZlY3QKKyAgICAgICAgYW55IGxpc3Qgb2Ygc3RhbmRhcmQgaW5jbHVkZSBkaXJlY3RvcmllcyB0aGF0IHRoZSBjb21waWxlciBtYXkKKyAgICAgICAgc2VhcmNoIGJ5IGRlZmF1bHQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IGRpcnNbOl0KKworICAgIGRlZiBhZGRfbGlicmFyeShzZWxmLCBsaWJuYW1lKToKKyAgICAgICAgIiIiQWRkICdsaWJuYW1lJyB0byB0aGUgbGlzdCBvZiBsaWJyYXJpZXMgdGhhdCB3aWxsIGJlIGluY2x1ZGVkIGluCisgICAgICAgIGFsbCBsaW5rcyBkcml2ZW4gYnkgdGhpcyBjb21waWxlciBvYmplY3QuICBOb3RlIHRoYXQgJ2xpYm5hbWUnCisgICAgICAgIHNob3VsZCAqbm90KiBiZSB0aGUgbmFtZSBvZiBhIGZpbGUgY29udGFpbmluZyBhIGxpYnJhcnksIGJ1dCB0aGUKKyAgICAgICAgbmFtZSBvZiB0aGUgbGlicmFyeSBpdHNlbGY6IHRoZSBhY3R1YWwgZmlsZW5hbWUgd2lsbCBiZSBpbmZlcnJlZCBieQorICAgICAgICB0aGUgbGlua2VyLCB0aGUgY29tcGlsZXIsIG9yIHRoZSBjb21waWxlciBjbGFzcyAoZGVwZW5kaW5nIG9uIHRoZQorICAgICAgICBwbGF0Zm9ybSkuCisKKyAgICAgICAgVGhlIGxpbmtlciB3aWxsIGJlIGluc3RydWN0ZWQgdG8gbGluayBhZ2FpbnN0IGxpYnJhcmllcyBpbiB0aGUKKyAgICAgICAgb3JkZXIgdGhleSB3ZXJlIHN1cHBsaWVkIHRvICdhZGRfbGlicmFyeSgpJyBhbmQvb3IKKyAgICAgICAgJ3NldF9saWJyYXJpZXMoKScuICBJdCBpcyBwZXJmZWN0bHkgdmFsaWQgdG8gZHVwbGljYXRlIGxpYnJhcnkKKyAgICAgICAgbmFtZXM7IHRoZSBsaW5rZXIgd2lsbCBiZSBpbnN0cnVjdGVkIHRvIGxpbmsgYWdhaW5zdCBsaWJyYXJpZXMgYXMKKyAgICAgICAgbWFueSB0aW1lcyBhcyB0aGV5IGFyZSBtZW50aW9uZWQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLmxpYnJhcmllcy5hcHBlbmQobGlibmFtZSkKKworICAgIGRlZiBzZXRfbGlicmFyaWVzKHNlbGYsIGxpYm5hbWVzKToKKyAgICAgICAgIiIiU2V0IHRoZSBsaXN0IG9mIGxpYnJhcmllcyB0byBiZSBpbmNsdWRlZCBpbiBhbGwgbGlua3MgZHJpdmVuIGJ5CisgICAgICAgIHRoaXMgY29tcGlsZXIgb2JqZWN0IHRvICdsaWJuYW1lcycgKGEgbGlzdCBvZiBzdHJpbmdzKS4gIFRoaXMgZG9lcworICAgICAgICBub3QgYWZmZWN0IGFueSBzdGFuZGFyZCBzeXN0ZW0gbGlicmFyaWVzIHRoYXQgdGhlIGxpbmtlciBtYXkKKyAgICAgICAgaW5jbHVkZSBieSBkZWZhdWx0LgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBsaWJuYW1lc1s6XQorCisKKyAgICBkZWYgYWRkX2xpYnJhcnlfZGlyKHNlbGYsIGRpcik6CisgICAgICAgICIiIkFkZCAnZGlyJyB0byB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgZm9yCisgICAgICAgIGxpYnJhcmllcyBzcGVjaWZpZWQgdG8gJ2FkZF9saWJyYXJ5KCknIGFuZCAnc2V0X2xpYnJhcmllcygpJy4gIFRoZQorICAgICAgICBsaW5rZXIgd2lsbCBiZSBpbnN0cnVjdGVkIHRvIHNlYXJjaCBmb3IgbGlicmFyaWVzIGluIHRoZSBvcmRlciB0aGV5CisgICAgICAgIGFyZSBzdXBwbGllZCB0byAnYWRkX2xpYnJhcnlfZGlyKCknIGFuZC9vciAnc2V0X2xpYnJhcnlfZGlycygpJy4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYubGlicmFyeV9kaXJzLmFwcGVuZChkaXIpCisKKyAgICBkZWYgc2V0X2xpYnJhcnlfZGlycyhzZWxmLCBkaXJzKToKKyAgICAgICAgIiIiU2V0IHRoZSBsaXN0IG9mIGxpYnJhcnkgc2VhcmNoIGRpcmVjdG9yaWVzIHRvICdkaXJzJyAoYSBsaXN0IG9mCisgICAgICAgIHN0cmluZ3MpLiAgVGhpcyBkb2VzIG5vdCBhZmZlY3QgYW55IHN0YW5kYXJkIGxpYnJhcnkgc2VhcmNoIHBhdGgKKyAgICAgICAgdGhhdCB0aGUgbGlua2VyIG1heSBzZWFyY2ggYnkgZGVmYXVsdC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYubGlicmFyeV9kaXJzID0gZGlyc1s6XQorCisgICAgZGVmIGFkZF9ydW50aW1lX2xpYnJhcnlfZGlyKHNlbGYsIGRpcik6CisgICAgICAgICIiIkFkZCAnZGlyJyB0byB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgZm9yCisgICAgICAgIHNoYXJlZCBsaWJyYXJpZXMgYXQgcnVudGltZS4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYucnVudGltZV9saWJyYXJ5X2RpcnMuYXBwZW5kKGRpcikKKworICAgIGRlZiBzZXRfcnVudGltZV9saWJyYXJ5X2RpcnMoc2VsZiwgZGlycyk6CisgICAgICAgICIiIlNldCB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIHNoYXJlZCBsaWJyYXJpZXMgYXQKKyAgICAgICAgcnVudGltZSB0byAnZGlycycgKGEgbGlzdCBvZiBzdHJpbmdzKS4gIFRoaXMgZG9lcyBub3QgYWZmZWN0IGFueQorICAgICAgICBzdGFuZGFyZCBzZWFyY2ggcGF0aCB0aGF0IHRoZSBydW50aW1lIGxpbmtlciBtYXkgc2VhcmNoIGJ5CisgICAgICAgIGRlZmF1bHQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLnJ1bnRpbWVfbGlicmFyeV9kaXJzID0gZGlyc1s6XQorCisgICAgZGVmIGFkZF9saW5rX29iamVjdChzZWxmLCBvYmplY3QpOgorICAgICAgICAiIiJBZGQgJ29iamVjdCcgdG8gdGhlIGxpc3Qgb2Ygb2JqZWN0IGZpbGVzIChvciBhbmFsb2d1ZXMsIHN1Y2ggYXMKKyAgICAgICAgZXhwbGljaXRseSBuYW1lZCBsaWJyYXJ5IGZpbGVzIG9yIHRoZSBvdXRwdXQgb2YgInJlc291cmNlCisgICAgICAgIGNvbXBpbGVycyIpIHRvIGJlIGluY2x1ZGVkIGluIGV2ZXJ5IGxpbmsgZHJpdmVuIGJ5IHRoaXMgY29tcGlsZXIKKyAgICAgICAgb2JqZWN0LgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5vYmplY3RzLmFwcGVuZChvYmplY3QpCisKKyAgICBkZWYgc2V0X2xpbmtfb2JqZWN0cyhzZWxmLCBvYmplY3RzKToKKyAgICAgICAgIiIiU2V0IHRoZSBsaXN0IG9mIG9iamVjdCBmaWxlcyAob3IgYW5hbG9ndWVzKSB0byBiZSBpbmNsdWRlZCBpbgorICAgICAgICBldmVyeSBsaW5rIHRvICdvYmplY3RzJy4gIFRoaXMgZG9lcyBub3QgYWZmZWN0IGFueSBzdGFuZGFyZCBvYmplY3QKKyAgICAgICAgZmlsZXMgdGhhdCB0aGUgbGlua2VyIG1heSBpbmNsdWRlIGJ5IGRlZmF1bHQgKHN1Y2ggYXMgc3lzdGVtCisgICAgICAgIGxpYnJhcmllcykuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLm9iamVjdHMgPSBvYmplY3RzWzpdCisKKworICAgICMgLS0gUHJpdmF0ZSB1dGlsaXR5IG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIChoZXJlIGZvciB0aGUgY29udmVuaWVuY2Ugb2Ygc3ViY2xhc3NlcykKKworICAgICMgSGVscGVyIG1ldGhvZCB0byBwcmVwIGNvbXBpbGVyIGluIHN1YmNsYXNzIGNvbXBpbGUoKSBtZXRob2RzCisgICAgZGVmIF9zZXR1cF9jb21waWxlKHNlbGYsIG91dGRpciwgbWFjcm9zLCBpbmNkaXJzLCBzb3VyY2VzLCBkZXBlbmRzLAorICAgICAgICAgICAgICAgICAgICAgICBleHRyYSk6CisgICAgICAgICIiIlByb2Nlc3MgYXJndW1lbnRzIGFuZCBkZWNpZGUgd2hpY2ggc291cmNlIGZpbGVzIHRvIGNvbXBpbGUuIiIiCisgICAgICAgIGlmIG91dGRpciBpcyBOb25lOgorICAgICAgICAgICAgb3V0ZGlyID0gc2VsZi5vdXRwdXRfZGlyCisgICAgICAgIGVsaWYgbm90IGlzaW5zdGFuY2Uob3V0ZGlyLCBzdHIpOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCInb3V0cHV0X2RpcicgbXVzdCBiZSBhIHN0cmluZyBvciBOb25lIikKKworICAgICAgICBpZiBtYWNyb3MgaXMgTm9uZToKKyAgICAgICAgICAgIG1hY3JvcyA9IHNlbGYubWFjcm9zCisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShtYWNyb3MsIGxpc3QpOgorICAgICAgICAgICAgbWFjcm9zID0gbWFjcm9zICsgKHNlbGYubWFjcm9zIG9yIFtdKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCInbWFjcm9zJyAoaWYgc3VwcGxpZWQpIG11c3QgYmUgYSBsaXN0IG9mIHR1cGxlcyIpCisKKyAgICAgICAgaWYgaW5jZGlycyBpcyBOb25lOgorICAgICAgICAgICAgaW5jZGlycyA9IHNlbGYuaW5jbHVkZV9kaXJzCisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShpbmNkaXJzLCAobGlzdCwgdHVwbGUpKToKKyAgICAgICAgICAgIGluY2RpcnMgPSBsaXN0KGluY2RpcnMpICsgKHNlbGYuaW5jbHVkZV9kaXJzIG9yIFtdKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKAorICAgICAgICAgICAgICAgICInaW5jbHVkZV9kaXJzJyAoaWYgc3VwcGxpZWQpIG11c3QgYmUgYSBsaXN0IG9mIHN0cmluZ3MiKQorCisgICAgICAgIGlmIGV4dHJhIGlzIE5vbmU6CisgICAgICAgICAgICBleHRyYSA9IFtdCisKKyAgICAgICAgIyBHZXQgdGhlIGxpc3Qgb2YgZXhwZWN0ZWQgb3V0cHV0IChvYmplY3QpIGZpbGVzCisgICAgICAgIG9iamVjdHMgPSBzZWxmLm9iamVjdF9maWxlbmFtZXMoc291cmNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpcF9kaXI9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj1vdXRkaXIpCisgICAgICAgIGFzc2VydCBsZW4ob2JqZWN0cykgPT0gbGVuKHNvdXJjZXMpCisKKyAgICAgICAgcHBfb3B0cyA9IGdlbl9wcmVwcm9jZXNzX29wdGlvbnMobWFjcm9zLCBpbmNkaXJzKQorCisgICAgICAgIGJ1aWxkID0ge30KKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UobGVuKHNvdXJjZXMpKToKKyAgICAgICAgICAgIHNyYyA9IHNvdXJjZXNbaV0KKyAgICAgICAgICAgIG9iaiA9IG9iamVjdHNbaV0KKyAgICAgICAgICAgIGV4dCA9IG9zLnBhdGguc3BsaXRleHQoc3JjKVsxXQorICAgICAgICAgICAgc2VsZi5ta3BhdGgob3MucGF0aC5kaXJuYW1lKG9iaikpCisgICAgICAgICAgICBidWlsZFtvYmpdID0gKHNyYywgZXh0KQorCisgICAgICAgIHJldHVybiBtYWNyb3MsIG9iamVjdHMsIGV4dHJhLCBwcF9vcHRzLCBidWlsZAorCisgICAgZGVmIF9nZXRfY2NfYXJncyhzZWxmLCBwcF9vcHRzLCBkZWJ1ZywgYmVmb3JlKToKKyAgICAgICAgIyB3b3JrcyBmb3IgdW5peGNjb21waWxlciBhbmQgY3lnd2luY2NvbXBpbGVyCisgICAgICAgIGNjX2FyZ3MgPSBwcF9vcHRzICsgWyctYyddCisgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgY2NfYXJnc1s6MF0gPSBbJy1nJ10KKyAgICAgICAgaWYgYmVmb3JlOgorICAgICAgICAgICAgY2NfYXJnc1s6MF0gPSBiZWZvcmUKKyAgICAgICAgcmV0dXJuIGNjX2FyZ3MKKworICAgIGRlZiBfZml4X2NvbXBpbGVfYXJncyhzZWxmLCBvdXRwdXRfZGlyLCBtYWNyb3MsIGluY2x1ZGVfZGlycyk6CisgICAgICAgICIiIlR5cGVjaGVjayBhbmQgZml4LXVwIHNvbWUgb2YgdGhlIGFyZ3VtZW50cyB0byB0aGUgJ2NvbXBpbGUoKScKKyAgICAgICAgbWV0aG9kLCBhbmQgcmV0dXJuIGZpeGVkLXVwIHZhbHVlcy4gIFNwZWNpZmljYWxseTogaWYgJ291dHB1dF9kaXInCisgICAgICAgIGlzIE5vbmUsIHJlcGxhY2VzIGl0IHdpdGggJ3NlbGYub3V0cHV0X2Rpcic7IGVuc3VyZXMgdGhhdCAnbWFjcm9zJworICAgICAgICBpcyBhIGxpc3QsIGFuZCBhdWdtZW50cyBpdCB3aXRoICdzZWxmLm1hY3Jvcyc7IGVuc3VyZXMgdGhhdAorICAgICAgICAnaW5jbHVkZV9kaXJzJyBpcyBhIGxpc3QsIGFuZCBhdWdtZW50cyBpdCB3aXRoICdzZWxmLmluY2x1ZGVfZGlycycuCisgICAgICAgIEd1YXJhbnRlZXMgdGhhdCB0aGUgcmV0dXJuZWQgdmFsdWVzIGFyZSBvZiB0aGUgY29ycmVjdCB0eXBlLAorICAgICAgICBpLmUuIGZvciAnb3V0cHV0X2RpcicgZWl0aGVyIHN0cmluZyBvciBOb25lLCBhbmQgZm9yICdtYWNyb3MnIGFuZAorICAgICAgICAnaW5jbHVkZV9kaXJzJyBlaXRoZXIgbGlzdCBvciBOb25lLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgb3V0cHV0X2RpciBpcyBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2RpciA9IHNlbGYub3V0cHV0X2RpcgorICAgICAgICBlbGlmIG5vdCBpc2luc3RhbmNlKG91dHB1dF9kaXIsIHN0cik6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIidvdXRwdXRfZGlyJyBtdXN0IGJlIGEgc3RyaW5nIG9yIE5vbmUiKQorCisgICAgICAgIGlmIG1hY3JvcyBpcyBOb25lOgorICAgICAgICAgICAgbWFjcm9zID0gc2VsZi5tYWNyb3MKKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKG1hY3JvcywgbGlzdCk6CisgICAgICAgICAgICBtYWNyb3MgPSBtYWNyb3MgKyAoc2VsZi5tYWNyb3Mgb3IgW10pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIidtYWNyb3MnIChpZiBzdXBwbGllZCkgbXVzdCBiZSBhIGxpc3Qgb2YgdHVwbGVzIikKKworICAgICAgICBpZiBpbmNsdWRlX2RpcnMgaXMgTm9uZToKKyAgICAgICAgICAgIGluY2x1ZGVfZGlycyA9IHNlbGYuaW5jbHVkZV9kaXJzCisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShpbmNsdWRlX2RpcnMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgaW5jbHVkZV9kaXJzID0gbGlzdChpbmNsdWRlX2RpcnMpICsgKHNlbGYuaW5jbHVkZV9kaXJzIG9yIFtdKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKAorICAgICAgICAgICAgICAgICInaW5jbHVkZV9kaXJzJyAoaWYgc3VwcGxpZWQpIG11c3QgYmUgYSBsaXN0IG9mIHN0cmluZ3MiKQorCisgICAgICAgIHJldHVybiBvdXRwdXRfZGlyLCBtYWNyb3MsIGluY2x1ZGVfZGlycworCisgICAgZGVmIF9maXhfb2JqZWN0X2FyZ3Moc2VsZiwgb2JqZWN0cywgb3V0cHV0X2Rpcik6CisgICAgICAgICIiIlR5cGVjaGVjayBhbmQgZml4IHVwIHNvbWUgYXJndW1lbnRzIHN1cHBsaWVkIHRvIHZhcmlvdXMgbWV0aG9kcy4KKyAgICAgICAgU3BlY2lmaWNhbGx5OiBlbnN1cmUgdGhhdCAnb2JqZWN0cycgaXMgYSBsaXN0OyBpZiBvdXRwdXRfZGlyIGlzCisgICAgICAgIE5vbmUsIHJlcGxhY2Ugd2l0aCBzZWxmLm91dHB1dF9kaXIuICBSZXR1cm4gZml4ZWQgdmVyc2lvbnMgb2YKKyAgICAgICAgJ29iamVjdHMnIGFuZCAnb3V0cHV0X2RpcicuCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShvYmplY3RzLCAobGlzdCwgdHVwbGUpKToKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiJ29iamVjdHMnIG11c3QgYmUgYSBsaXN0IG9yIHR1cGxlIG9mIHN0cmluZ3MiKQorICAgICAgICBvYmplY3RzID0gbGlzdChvYmplY3RzKQorCisgICAgICAgIGlmIG91dHB1dF9kaXIgaXMgTm9uZToKKyAgICAgICAgICAgIG91dHB1dF9kaXIgPSBzZWxmLm91dHB1dF9kaXIKKyAgICAgICAgZWxpZiBub3QgaXNpbnN0YW5jZShvdXRwdXRfZGlyLCBzdHIpOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCInb3V0cHV0X2RpcicgbXVzdCBiZSBhIHN0cmluZyBvciBOb25lIikKKworICAgICAgICByZXR1cm4gb2JqZWN0cywgb3V0cHV0X2RpcgorCisgICAgZGVmIF9maXhfbGliX2FyZ3Moc2VsZiwgbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzKToKKyAgICAgICAgIiIiVHlwZWNoZWNrIGFuZCBmaXggdXAgc29tZSBvZiB0aGUgYXJndW1lbnRzIHN1cHBsaWVkIHRvIHRoZQorICAgICAgICAnbGlua18qJyBtZXRob2RzLiAgU3BlY2lmaWNhbGx5OiBlbnN1cmUgdGhhdCBhbGwgYXJndW1lbnRzIGFyZQorICAgICAgICBsaXN0cywgYW5kIGF1Z21lbnQgdGhlbSB3aXRoIHRoZWlyIHBlcm1hbmVudCB2ZXJzaW9ucworICAgICAgICAoZWcuICdzZWxmLmxpYnJhcmllcycgYXVnbWVudHMgJ2xpYnJhcmllcycpLiAgUmV0dXJuIGEgdHVwbGUgd2l0aAorICAgICAgICBmaXhlZCB2ZXJzaW9ucyBvZiBhbGwgYXJndW1lbnRzLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgbGlicmFyaWVzIGlzIE5vbmU6CisgICAgICAgICAgICBsaWJyYXJpZXMgPSBzZWxmLmxpYnJhcmllcworICAgICAgICBlbGlmIGlzaW5zdGFuY2UobGlicmFyaWVzLCAobGlzdCwgdHVwbGUpKToKKyAgICAgICAgICAgIGxpYnJhcmllcyA9IGxpc3QobGlicmFyaWVzKSArIChzZWxmLmxpYnJhcmllcyBvciBbXSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigKKyAgICAgICAgICAgICAgICAiJ2xpYnJhcmllcycgKGlmIHN1cHBsaWVkKSBtdXN0IGJlIGEgbGlzdCBvZiBzdHJpbmdzIikKKworICAgICAgICBpZiBsaWJyYXJ5X2RpcnMgaXMgTm9uZToKKyAgICAgICAgICAgIGxpYnJhcnlfZGlycyA9IHNlbGYubGlicmFyeV9kaXJzCisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShsaWJyYXJ5X2RpcnMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgbGlicmFyeV9kaXJzID0gbGlzdChsaWJyYXJ5X2RpcnMpICsgKHNlbGYubGlicmFyeV9kaXJzIG9yIFtdKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKAorICAgICAgICAgICAgICAgICInbGlicmFyeV9kaXJzJyAoaWYgc3VwcGxpZWQpIG11c3QgYmUgYSBsaXN0IG9mIHN0cmluZ3MiKQorCisgICAgICAgIGlmIHJ1bnRpbWVfbGlicmFyeV9kaXJzIGlzIE5vbmU6CisgICAgICAgICAgICBydW50aW1lX2xpYnJhcnlfZGlycyA9IHNlbGYucnVudGltZV9saWJyYXJ5X2RpcnMKKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKHJ1bnRpbWVfbGlicmFyeV9kaXJzLCAobGlzdCwgdHVwbGUpKToKKyAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzID0gKGxpc3QocnVudGltZV9saWJyYXJ5X2RpcnMpICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZWxmLnJ1bnRpbWVfbGlicmFyeV9kaXJzIG9yIFtdKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiJ3J1bnRpbWVfbGlicmFyeV9kaXJzJyAoaWYgc3VwcGxpZWQpICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAibXVzdCBiZSBhIGxpc3Qgb2Ygc3RyaW5ncyIpCisKKyAgICAgICAgcmV0dXJuIGxpYnJhcmllcywgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycworCisgICAgZGVmIF9uZWVkX2xpbmsoc2VsZiwgb2JqZWN0cywgb3V0cHV0X2ZpbGUpOgorICAgICAgICAiIiJSZXR1cm4gdHJ1ZSBpZiB3ZSBuZWVkIHRvIHJlbGluayB0aGUgZmlsZXMgbGlzdGVkIGluICdvYmplY3RzJworICAgICAgICB0byByZWNyZWF0ZSAnb3V0cHV0X2ZpbGUnLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgc2VsZi5mb3JjZToKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICAgICAgbmV3ZXIgPSBuZXdlcl9ncm91cChvYmplY3RzLCBvdXRwdXRfZmlsZSwgbWlzc2luZz0nbmV3ZXInKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBuZXdlciA9IG5ld2VyX2dyb3VwKG9iamVjdHMsIG91dHB1dF9maWxlKQorICAgICAgICAgICAgcmV0dXJuIG5ld2VyCisKKyAgICBkZWYgZGV0ZWN0X2xhbmd1YWdlKHNlbGYsIHNvdXJjZXMpOgorICAgICAgICAiIiJEZXRlY3QgdGhlIGxhbmd1YWdlIG9mIGEgZ2l2ZW4gZmlsZSwgb3IgbGlzdCBvZiBmaWxlcy4gVXNlcworICAgICAgICBsYW5ndWFnZV9tYXAsIGFuZCBsYW5ndWFnZV9vcmRlciB0byBkbyB0aGUgam9iLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc291cmNlcywgbGlzdCk6CisgICAgICAgICAgICBzb3VyY2VzID0gW3NvdXJjZXNdCisgICAgICAgIGxhbmcgPSBOb25lCisgICAgICAgIGluZGV4ID0gbGVuKHNlbGYubGFuZ3VhZ2Vfb3JkZXIpCisgICAgICAgIGZvciBzb3VyY2UgaW4gc291cmNlczoKKyAgICAgICAgICAgIGJhc2UsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQoc291cmNlKQorICAgICAgICAgICAgZXh0bGFuZyA9IHNlbGYubGFuZ3VhZ2VfbWFwLmdldChleHQpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgZXh0aW5kZXggPSBzZWxmLmxhbmd1YWdlX29yZGVyLmluZGV4KGV4dGxhbmcpCisgICAgICAgICAgICAgICAgaWYgZXh0aW5kZXggPCBpbmRleDoKKyAgICAgICAgICAgICAgICAgICAgbGFuZyA9IGV4dGxhbmcKKyAgICAgICAgICAgICAgICAgICAgaW5kZXggPSBleHRpbmRleAorICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICByZXR1cm4gbGFuZworCisgICAgIyAtLSBXb3JrZXIgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIChtdXN0IGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXMpCisKKyAgICBkZWYgcHJlcHJvY2VzcyhzZWxmLCBzb3VyY2UsIG91dHB1dF9maWxlPU5vbmUsIG1hY3Jvcz1Ob25lLAorICAgICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycz1Ob25lLCBleHRyYV9wcmVhcmdzPU5vbmUsIGV4dHJhX3Bvc3RhcmdzPU5vbmUpOgorICAgICAgICAiIiJQcmVwcm9jZXNzIGEgc2luZ2xlIEMvQysrIHNvdXJjZSBmaWxlLCBuYW1lZCBpbiAnc291cmNlJy4KKyAgICAgICAgT3V0cHV0IHdpbGwgYmUgd3JpdHRlbiB0byBmaWxlIG5hbWVkICdvdXRwdXRfZmlsZScsIG9yIHN0ZG91dCBpZgorICAgICAgICAnb3V0cHV0X2ZpbGUnIG5vdCBzdXBwbGllZC4gICdtYWNyb3MnIGlzIGEgbGlzdCBvZiBtYWNybworICAgICAgICBkZWZpbml0aW9ucyBhcyBmb3IgJ2NvbXBpbGUoKScsIHdoaWNoIHdpbGwgYXVnbWVudCB0aGUgbWFjcm9zIHNldAorICAgICAgICB3aXRoICdkZWZpbmVfbWFjcm8oKScgYW5kICd1bmRlZmluZV9tYWNybygpJy4gICdpbmNsdWRlX2RpcnMnIGlzIGEKKyAgICAgICAgbGlzdCBvZiBkaXJlY3RvcnkgbmFtZXMgdGhhdCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBkZWZhdWx0IGxpc3QuCisKKyAgICAgICAgUmFpc2VzIFByZXByb2Nlc3NFcnJvciBvbiBmYWlsdXJlLgorICAgICAgICAiIiIKKyAgICAgICAgcGFzcworCisgICAgZGVmIGNvbXBpbGUoc2VsZiwgc291cmNlcywgb3V0cHV0X2Rpcj1Ob25lLCBtYWNyb3M9Tm9uZSwKKyAgICAgICAgICAgICAgICBpbmNsdWRlX2RpcnM9Tm9uZSwgZGVidWc9RmFsc2UsIGV4dHJhX3ByZWFyZ3M9Tm9uZSwKKyAgICAgICAgICAgICAgICBleHRyYV9wb3N0YXJncz1Ob25lLCBkZXBlbmRzPU5vbmUpOgorICAgICAgICAiIiJDb21waWxlIG9uZSBvciBtb3JlIHNvdXJjZSBmaWxlcy4KKworICAgICAgICAnc291cmNlcycgbXVzdCBiZSBhIGxpc3Qgb2YgZmlsZW5hbWVzLCBtb3N0IGxpa2VseSBDL0MrKworICAgICAgICBmaWxlcywgYnV0IGluIHJlYWxpdHkgYW55dGhpbmcgdGhhdCBjYW4gYmUgaGFuZGxlZCBieSBhCisgICAgICAgIHBhcnRpY3VsYXIgY29tcGlsZXIgYW5kIGNvbXBpbGVyIGNsYXNzIChlZy4gTVNWQ0NvbXBpbGVyIGNhbgorICAgICAgICBoYW5kbGUgcmVzb3VyY2UgZmlsZXMgaW4gJ3NvdXJjZXMnKS4gIFJldHVybiBhIGxpc3Qgb2Ygb2JqZWN0CisgICAgICAgIGZpbGVuYW1lcywgb25lIHBlciBzb3VyY2UgZmlsZW5hbWUgaW4gJ3NvdXJjZXMnLiAgRGVwZW5kaW5nIG9uCisgICAgICAgIHRoZSBpbXBsZW1lbnRhdGlvbiwgbm90IGFsbCBzb3VyY2UgZmlsZXMgd2lsbCBuZWNlc3NhcmlseSBiZQorICAgICAgICBjb21waWxlZCwgYnV0IGFsbCBjb3JyZXNwb25kaW5nIG9iamVjdCBmaWxlbmFtZXMgd2lsbCBiZQorICAgICAgICByZXR1cm5lZC4KKworICAgICAgICBJZiAnb3V0cHV0X2RpcicgaXMgZ2l2ZW4sIG9iamVjdCBmaWxlcyB3aWxsIGJlIHB1dCB1bmRlciBpdCwgd2hpbGUKKyAgICAgICAgcmV0YWluaW5nIHRoZWlyIG9yaWdpbmFsIHBhdGggY29tcG9uZW50LiAgVGhhdCBpcywgImZvby9iYXIuYyIKKyAgICAgICAgbm9ybWFsbHkgY29tcGlsZXMgdG8gImZvby9iYXIubyIgKGZvciBhIFVuaXggaW1wbGVtZW50YXRpb24pOyBpZgorICAgICAgICAnb3V0cHV0X2RpcicgaXMgImJ1aWxkIiwgdGhlbiBpdCB3b3VsZCBjb21waWxlIHRvCisgICAgICAgICJidWlsZC9mb28vYmFyLm8iLgorCisgICAgICAgICdtYWNyb3MnLCBpZiBnaXZlbiwgbXVzdCBiZSBhIGxpc3Qgb2YgbWFjcm8gZGVmaW5pdGlvbnMuICBBIG1hY3JvCisgICAgICAgIGRlZmluaXRpb24gaXMgZWl0aGVyIGEgKG5hbWUsIHZhbHVlKSAyLXR1cGxlIG9yIGEgKG5hbWUsKSAxLXR1cGxlLgorICAgICAgICBUaGUgZm9ybWVyIGRlZmluZXMgYSBtYWNybzsgaWYgdGhlIHZhbHVlIGlzIE5vbmUsIHRoZSBtYWNybyBpcworICAgICAgICBkZWZpbmVkIHdpdGhvdXQgYW4gZXhwbGljaXQgdmFsdWUuICBUaGUgMS10dXBsZSBjYXNlIHVuZGVmaW5lcyBhCisgICAgICAgIG1hY3JvLiAgTGF0ZXIgZGVmaW5pdGlvbnMvcmVkZWZpbml0aW9ucy8gdW5kZWZpbml0aW9ucyB0YWtlCisgICAgICAgIHByZWNlZGVuY2UuCisKKyAgICAgICAgJ2luY2x1ZGVfZGlycycsIGlmIGdpdmVuLCBtdXN0IGJlIGEgbGlzdCBvZiBzdHJpbmdzLCB0aGUKKyAgICAgICAgZGlyZWN0b3JpZXMgdG8gYWRkIHRvIHRoZSBkZWZhdWx0IGluY2x1ZGUgZmlsZSBzZWFyY2ggcGF0aCBmb3IgdGhpcworICAgICAgICBjb21waWxhdGlvbiBvbmx5LgorCisgICAgICAgICdkZWJ1ZycgaXMgYSBib29sZWFuOyBpZiB0cnVlLCB0aGUgY29tcGlsZXIgd2lsbCBiZSBpbnN0cnVjdGVkIHRvCisgICAgICAgIG91dHB1dCBkZWJ1ZyBzeW1ib2xzIGluIChvciBhbG9uZ3NpZGUpIHRoZSBvYmplY3QgZmlsZShzKS4KKworICAgICAgICAnZXh0cmFfcHJlYXJncycgYW5kICdleHRyYV9wb3N0YXJncycgYXJlIGltcGxlbWVudGF0aW9uLSBkZXBlbmRlbnQuCisgICAgICAgIE9uIHBsYXRmb3JtcyB0aGF0IGhhdmUgdGhlIG5vdGlvbiBvZiBhIGNvbW1hbmQgbGluZSAoZS5nLiBVbml4LAorICAgICAgICBET1MvV2luZG93cyksIHRoZXkgYXJlIG1vc3QgbGlrZWx5IGxpc3RzIG9mIHN0cmluZ3M6IGV4dHJhCisgICAgICAgIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgdG8gcHJlcGFuZC9hcHBlbmQgdG8gdGhlIGNvbXBpbGVyIGNvbW1hbmQKKyAgICAgICAgbGluZS4gIE9uIG90aGVyIHBsYXRmb3JtcywgY29uc3VsdCB0aGUgaW1wbGVtZW50YXRpb24gY2xhc3MKKyAgICAgICAgZG9jdW1lbnRhdGlvbi4gIEluIGFueSBldmVudCwgdGhleSBhcmUgaW50ZW5kZWQgYXMgYW4gZXNjYXBlIGhhdGNoCisgICAgICAgIGZvciB0aG9zZSBvY2Nhc2lvbnMgd2hlbiB0aGUgYWJzdHJhY3QgY29tcGlsZXIgZnJhbWV3b3JrIGRvZXNuJ3QKKyAgICAgICAgY3V0IHRoZSBtdXN0YXJkLgorCisgICAgICAgICdkZXBlbmRzJywgaWYgZ2l2ZW4sIGlzIGEgbGlzdCBvZiBmaWxlbmFtZXMgdGhhdCBhbGwgdGFyZ2V0cworICAgICAgICBkZXBlbmQgb24uICBJZiBhIHNvdXJjZSBmaWxlIGlzIG9sZGVyIHRoYW4gYW55IGZpbGUgaW4KKyAgICAgICAgZGVwZW5kcywgdGhlbiB0aGUgc291cmNlIGZpbGUgd2lsbCBiZSByZWNvbXBpbGVkLiAgVGhpcworICAgICAgICBzdXBwb3J0cyBkZXBlbmRlbmN5IHRyYWNraW5nLCBidXQgb25seSBhdCBhIGNvYXJzZQorICAgICAgICBncmFudWxhcml0eS4KKworICAgICAgICBSYWlzZXMgQ29tcGlsZUVycm9yIG9uIGZhaWx1cmUuCisgICAgICAgICIiIgorICAgICAgICAjIEEgY29uY3JldGUgY29tcGlsZXIgY2xhc3MgY2FuIGVpdGhlciBvdmVycmlkZSB0aGlzIG1ldGhvZAorICAgICAgICAjIGVudGlyZWx5IG9yIGltcGxlbWVudCBfY29tcGlsZSgpLgorCisgICAgICAgIG1hY3Jvcywgb2JqZWN0cywgZXh0cmFfcG9zdGFyZ3MsIHBwX29wdHMsIGJ1aWxkID0gXAorICAgICAgICAgICAgICAgIHNlbGYuX3NldHVwX2NvbXBpbGUob3V0cHV0X2RpciwgbWFjcm9zLCBpbmNsdWRlX2RpcnMsIHNvdXJjZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXBlbmRzLCBleHRyYV9wb3N0YXJncykKKyAgICAgICAgY2NfYXJncyA9IHNlbGYuX2dldF9jY19hcmdzKHBwX29wdHMsIGRlYnVnLCBleHRyYV9wcmVhcmdzKQorCisgICAgICAgIGZvciBvYmogaW4gb2JqZWN0czoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzcmMsIGV4dCA9IGJ1aWxkW29ial0KKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgc2VsZi5fY29tcGlsZShvYmosIHNyYywgZXh0LCBjY19hcmdzLCBleHRyYV9wb3N0YXJncywgcHBfb3B0cykKKworICAgICAgICAjIFJldHVybiAqYWxsKiBvYmplY3QgZmlsZW5hbWVzLCBub3QganVzdCB0aGUgb25lcyB3ZSBqdXN0IGJ1aWx0LgorICAgICAgICByZXR1cm4gb2JqZWN0cworCisgICAgZGVmIF9jb21waWxlKHNlbGYsIG9iaiwgc3JjLCBleHQsIGNjX2FyZ3MsIGV4dHJhX3Bvc3RhcmdzLCBwcF9vcHRzKToKKyAgICAgICAgIiIiQ29tcGlsZSAnc3JjJyB0byBwcm9kdWN0ICdvYmonLiIiIgorCisgICAgICAgICMgQSBjb25jcmV0ZSBjb21waWxlciBjbGFzcyB0aGF0IGRvZXMgbm90IG92ZXJyaWRlIGNvbXBpbGUoKQorICAgICAgICAjIHNob3VsZCBpbXBsZW1lbnQgX2NvbXBpbGUoKS4KKyAgICAgICAgcGFzcworCisgICAgZGVmIGNyZWF0ZV9zdGF0aWNfbGliKHNlbGYsIG9iamVjdHMsIG91dHB1dF9saWJuYW1lLCBvdXRwdXRfZGlyPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnPUZhbHNlLCB0YXJnZXRfbGFuZz1Ob25lKToKKyAgICAgICAgIiIiTGluayBhIGJ1bmNoIG9mIHN0dWZmIHRvZ2V0aGVyIHRvIGNyZWF0ZSBhIHN0YXRpYyBsaWJyYXJ5IGZpbGUuCisgICAgICAgIFRoZSAiYnVuY2ggb2Ygc3R1ZmYiIGNvbnNpc3RzIG9mIHRoZSBsaXN0IG9mIG9iamVjdCBmaWxlcyBzdXBwbGllZAorICAgICAgICBhcyAnb2JqZWN0cycsIHRoZSBleHRyYSBvYmplY3QgZmlsZXMgc3VwcGxpZWQgdG8KKyAgICAgICAgJ2FkZF9saW5rX29iamVjdCgpJyBhbmQvb3IgJ3NldF9saW5rX29iamVjdHMoKScsIHRoZSBsaWJyYXJpZXMKKyAgICAgICAgc3VwcGxpZWQgdG8gJ2FkZF9saWJyYXJ5KCknIGFuZC9vciAnc2V0X2xpYnJhcmllcygpJywgYW5kIHRoZQorICAgICAgICBsaWJyYXJpZXMgc3VwcGxpZWQgYXMgJ2xpYnJhcmllcycgKGlmIGFueSkuCisKKyAgICAgICAgJ291dHB1dF9saWJuYW1lJyBzaG91bGQgYmUgYSBsaWJyYXJ5IG5hbWUsIG5vdCBhIGZpbGVuYW1lOyB0aGUKKyAgICAgICAgZmlsZW5hbWUgd2lsbCBiZSBpbmZlcnJlZCBmcm9tIHRoZSBsaWJyYXJ5IG5hbWUuICAnb3V0cHV0X2RpcicgaXMKKyAgICAgICAgdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgbGlicmFyeSBmaWxlIHdpbGwgYmUgcHV0LgorCisgICAgICAgICdkZWJ1ZycgaXMgYSBib29sZWFuOyBpZiB0cnVlLCBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24gd2lsbCBiZQorICAgICAgICBpbmNsdWRlZCBpbiB0aGUgbGlicmFyeSAobm90ZSB0aGF0IG9uIG1vc3QgcGxhdGZvcm1zLCBpdCBpcyB0aGUKKyAgICAgICAgY29tcGlsZSBzdGVwIHdoZXJlIHRoaXMgbWF0dGVyczogdGhlICdkZWJ1ZycgZmxhZyBpcyBpbmNsdWRlZCBoZXJlCisgICAgICAgIGp1c3QgZm9yIGNvbnNpc3RlbmN5KS4KKworICAgICAgICAndGFyZ2V0X2xhbmcnIGlzIHRoZSB0YXJnZXQgbGFuZ3VhZ2UgZm9yIHdoaWNoIHRoZSBnaXZlbiBvYmplY3RzCisgICAgICAgIGFyZSBiZWluZyBjb21waWxlZC4gVGhpcyBhbGxvd3Mgc3BlY2lmaWMgbGlua2FnZSB0aW1lIHRyZWF0bWVudCBvZgorICAgICAgICBjZXJ0YWluIGxhbmd1YWdlcy4KKworICAgICAgICBSYWlzZXMgTGliRXJyb3Igb24gZmFpbHVyZS4KKyAgICAgICAgIiIiCisgICAgICAgIHBhc3MKKworICAgICMgdmFsdWVzIGZvciB0YXJnZXRfZGVzYyBwYXJhbWV0ZXIgaW4gbGluaygpCisgICAgU0hBUkVEX09CSkVDVCA9ICJzaGFyZWRfb2JqZWN0IgorICAgIFNIQVJFRF9MSUJSQVJZID0gInNoYXJlZF9saWJyYXJ5IgorICAgIEVYRUNVVEFCTEUgPSAiZXhlY3V0YWJsZSIKKworICAgIGRlZiBsaW5rKHNlbGYsIHRhcmdldF9kZXNjLCBvYmplY3RzLCBvdXRwdXRfZmlsZW5hbWUsIG91dHB1dF9kaXI9Tm9uZSwKKyAgICAgICAgICAgICBsaWJyYXJpZXM9Tm9uZSwgbGlicmFyeV9kaXJzPU5vbmUsIHJ1bnRpbWVfbGlicmFyeV9kaXJzPU5vbmUsCisgICAgICAgICAgICAgZXhwb3J0X3N5bWJvbHM9Tm9uZSwgZGVidWc9RmFsc2UsIGV4dHJhX3ByZWFyZ3M9Tm9uZSwKKyAgICAgICAgICAgICBleHRyYV9wb3N0YXJncz1Ob25lLCBidWlsZF90ZW1wPU5vbmUsIHRhcmdldF9sYW5nPU5vbmUpOgorICAgICAgICAiIiJMaW5rIGEgYnVuY2ggb2Ygc3R1ZmYgdG9nZXRoZXIgdG8gY3JlYXRlIGFuIGV4ZWN1dGFibGUgb3IKKyAgICAgICAgc2hhcmVkIGxpYnJhcnkgZmlsZS4KKworICAgICAgICBUaGUgImJ1bmNoIG9mIHN0dWZmIiBjb25zaXN0cyBvZiB0aGUgbGlzdCBvZiBvYmplY3QgZmlsZXMgc3VwcGxpZWQKKyAgICAgICAgYXMgJ29iamVjdHMnLiAgJ291dHB1dF9maWxlbmFtZScgc2hvdWxkIGJlIGEgZmlsZW5hbWUuICBJZgorICAgICAgICAnb3V0cHV0X2RpcicgaXMgc3VwcGxpZWQsICdvdXRwdXRfZmlsZW5hbWUnIGlzIHJlbGF0aXZlIHRvIGl0CisgICAgICAgIChpLmUuICdvdXRwdXRfZmlsZW5hbWUnIGNhbiBwcm92aWRlIGRpcmVjdG9yeSBjb21wb25lbnRzIGlmCisgICAgICAgIG5lZWRlZCkuCisKKyAgICAgICAgJ2xpYnJhcmllcycgaXMgYSBsaXN0IG9mIGxpYnJhcmllcyB0byBsaW5rIGFnYWluc3QuICBUaGVzZSBhcmUKKyAgICAgICAgbGlicmFyeSBuYW1lcywgbm90IGZpbGVuYW1lcywgc2luY2UgdGhleSdyZSB0cmFuc2xhdGVkIGludG8KKyAgICAgICAgZmlsZW5hbWVzIGluIGEgcGxhdGZvcm0tc3BlY2lmaWMgd2F5IChlZy4gImZvbyIgYmVjb21lcyAibGliZm9vLmEiCisgICAgICAgIG9uIFVuaXggYW5kICJmb28ubGliIiBvbiBET1MvV2luZG93cykuICBIb3dldmVyLCB0aGV5IGNhbiBpbmNsdWRlIGEKKyAgICAgICAgZGlyZWN0b3J5IGNvbXBvbmVudCwgd2hpY2ggbWVhbnMgdGhlIGxpbmtlciB3aWxsIGxvb2sgaW4gdGhhdAorICAgICAgICBzcGVjaWZpYyBkaXJlY3RvcnkgcmF0aGVyIHRoYW4gc2VhcmNoaW5nIGFsbCB0aGUgbm9ybWFsIGxvY2F0aW9ucy4KKworICAgICAgICAnbGlicmFyeV9kaXJzJywgaWYgc3VwcGxpZWQsIHNob3VsZCBiZSBhIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8KKyAgICAgICAgc2VhcmNoIGZvciBsaWJyYXJpZXMgdGhhdCB3ZXJlIHNwZWNpZmllZCBhcyBiYXJlIGxpYnJhcnkgbmFtZXMKKyAgICAgICAgKGllLiBubyBkaXJlY3RvcnkgY29tcG9uZW50KS4gIFRoZXNlIGFyZSBvbiB0b3Agb2YgdGhlIHN5c3RlbQorICAgICAgICBkZWZhdWx0IGFuZCB0aG9zZSBzdXBwbGllZCB0byAnYWRkX2xpYnJhcnlfZGlyKCknIGFuZC9vcgorICAgICAgICAnc2V0X2xpYnJhcnlfZGlycygpJy4gICdydW50aW1lX2xpYnJhcnlfZGlycycgaXMgYSBsaXN0IG9mCisgICAgICAgIGRpcmVjdG9yaWVzIHRoYXQgd2lsbCBiZSBlbWJlZGRlZCBpbnRvIHRoZSBzaGFyZWQgbGlicmFyeSBhbmQgdXNlZAorICAgICAgICB0byBzZWFyY2ggZm9yIG90aGVyIHNoYXJlZCBsaWJyYXJpZXMgdGhhdCAqaXQqIGRlcGVuZHMgb24gYXQKKyAgICAgICAgcnVuLXRpbWUuICAoVGhpcyBtYXkgb25seSBiZSByZWxldmFudCBvbiBVbml4LikKKworICAgICAgICAnZXhwb3J0X3N5bWJvbHMnIGlzIGEgbGlzdCBvZiBzeW1ib2xzIHRoYXQgdGhlIHNoYXJlZCBsaWJyYXJ5IHdpbGwKKyAgICAgICAgZXhwb3J0LiAgKFRoaXMgYXBwZWFycyB0byBiZSByZWxldmFudCBvbmx5IG9uIFdpbmRvd3MuKQorCisgICAgICAgICdkZWJ1ZycgaXMgYXMgZm9yICdjb21waWxlKCknIGFuZCAnY3JlYXRlX3N0YXRpY19saWIoKScsIHdpdGggdGhlCisgICAgICAgIHNsaWdodCBkaXN0aW5jdGlvbiB0aGF0IGl0IGFjdHVhbGx5IG1hdHRlcnMgb24gbW9zdCBwbGF0Zm9ybXMgKGFzCisgICAgICAgIG9wcG9zZWQgdG8gJ2NyZWF0ZV9zdGF0aWNfbGliKCknLCB3aGljaCBpbmNsdWRlcyBhICdkZWJ1ZycgZmxhZworICAgICAgICBtb3N0bHkgZm9yIGZvcm0ncyBzYWtlKS4KKworICAgICAgICAnZXh0cmFfcHJlYXJncycgYW5kICdleHRyYV9wb3N0YXJncycgYXJlIGFzIGZvciAnY29tcGlsZSgpJyAoZXhjZXB0CisgICAgICAgIG9mIGNvdXJzZSB0aGF0IHRoZXkgc3VwcGx5IGNvbW1hbmQtbGluZSBhcmd1bWVudHMgZm9yIHRoZQorICAgICAgICBwYXJ0aWN1bGFyIGxpbmtlciBiZWluZyB1c2VkKS4KKworICAgICAgICAndGFyZ2V0X2xhbmcnIGlzIHRoZSB0YXJnZXQgbGFuZ3VhZ2UgZm9yIHdoaWNoIHRoZSBnaXZlbiBvYmplY3RzCisgICAgICAgIGFyZSBiZWluZyBjb21waWxlZC4gVGhpcyBhbGxvd3Mgc3BlY2lmaWMgbGlua2FnZSB0aW1lIHRyZWF0bWVudCBvZgorICAgICAgICBjZXJ0YWluIGxhbmd1YWdlcy4KKworICAgICAgICBSYWlzZXMgTGlua0Vycm9yIG9uIGZhaWx1cmUuCisgICAgICAgICIiIgorICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCisKKworICAgICMgT2xkICdsaW5rXyooKScgbWV0aG9kcywgcmV3cml0dGVuIHRvIHVzZSB0aGUgbmV3ICdsaW5rKCknIG1ldGhvZC4KKworICAgIGRlZiBsaW5rX3NoYXJlZF9saWIoc2VsZiwgb2JqZWN0cywgb3V0cHV0X2xpYm5hbWUsIG91dHB1dF9kaXI9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzPU5vbmUsIGV4cG9ydF9zeW1ib2xzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz1GYWxzZSwgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgYnVpbGRfdGVtcD1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lKToKKyAgICAgICAgc2VsZi5saW5rKENDb21waWxlci5TSEFSRURfTElCUkFSWSwgb2JqZWN0cywKKyAgICAgICAgICAgICAgICAgIHNlbGYubGlicmFyeV9maWxlbmFtZShvdXRwdXRfbGlibmFtZSwgbGliX3R5cGU9J3NoYXJlZCcpLAorICAgICAgICAgICAgICAgICAgb3V0cHV0X2RpciwKKyAgICAgICAgICAgICAgICAgIGxpYnJhcmllcywgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycywKKyAgICAgICAgICAgICAgICAgIGV4cG9ydF9zeW1ib2xzLCBkZWJ1ZywKKyAgICAgICAgICAgICAgICAgIGV4dHJhX3ByZWFyZ3MsIGV4dHJhX3Bvc3RhcmdzLCBidWlsZF90ZW1wLCB0YXJnZXRfbGFuZykKKworICAgIGRlZiBsaW5rX3NoYXJlZF9vYmplY3Qoc2VsZiwgb2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZGlyPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXM9Tm9uZSwgbGlicmFyeV9kaXJzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBydW50aW1lX2xpYnJhcnlfZGlycz1Ob25lLCBleHBvcnRfc3ltYm9scz1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVidWc9RmFsc2UsIGV4dHJhX3ByZWFyZ3M9Tm9uZSwgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1aWxkX3RlbXA9Tm9uZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgIHNlbGYubGluayhDQ29tcGlsZXIuU0hBUkVEX09CSkVDVCwgb2JqZWN0cywKKyAgICAgICAgICAgICAgICAgIG91dHB1dF9maWxlbmFtZSwgb3V0cHV0X2RpciwKKyAgICAgICAgICAgICAgICAgIGxpYnJhcmllcywgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycywKKyAgICAgICAgICAgICAgICAgIGV4cG9ydF9zeW1ib2xzLCBkZWJ1ZywKKyAgICAgICAgICAgICAgICAgIGV4dHJhX3ByZWFyZ3MsIGV4dHJhX3Bvc3RhcmdzLCBidWlsZF90ZW1wLCB0YXJnZXRfbGFuZykKKworICAgIGRlZiBsaW5rX2V4ZWN1dGFibGUoc2VsZiwgb2JqZWN0cywgb3V0cHV0X3Byb2duYW1lLCBvdXRwdXRfZGlyPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXM9Tm9uZSwgbGlicmFyeV9kaXJzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICBydW50aW1lX2xpYnJhcnlfZGlycz1Ob25lLCBkZWJ1Zz1GYWxzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhX3ByZWFyZ3M9Tm9uZSwgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9sYW5nPU5vbmUpOgorICAgICAgICBzZWxmLmxpbmsoQ0NvbXBpbGVyLkVYRUNVVEFCTEUsIG9iamVjdHMsCisgICAgICAgICAgICAgICAgICBzZWxmLmV4ZWN1dGFibGVfZmlsZW5hbWUob3V0cHV0X3Byb2duYW1lKSwgb3V0cHV0X2RpciwKKyAgICAgICAgICAgICAgICAgIGxpYnJhcmllcywgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycywgTm9uZSwKKyAgICAgICAgICAgICAgICAgIGRlYnVnLCBleHRyYV9wcmVhcmdzLCBleHRyYV9wb3N0YXJncywgTm9uZSwgdGFyZ2V0X2xhbmcpCisKKworICAgICMgLS0gTWlzY2VsbGFuZW91cyBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgIyBUaGVzZSBhcmUgYWxsIHVzZWQgYnkgdGhlICdnZW5fbGliX29wdGlvbnMoKSBmdW5jdGlvbjsgdGhlcmUgaXMKKyAgICAjIG5vIGFwcHJvcHJpYXRlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gc28gc3ViY2xhc3NlcyBzaG91bGQKKyAgICAjIGltcGxlbWVudCBhbGwgb2YgdGhlc2UuCisKKyAgICBkZWYgbGlicmFyeV9kaXJfb3B0aW9uKHNlbGYsIGRpcik6CisgICAgICAgICIiIlJldHVybiB0aGUgY29tcGlsZXIgb3B0aW9uIHRvIGFkZCAnZGlyJyB0byB0aGUgbGlzdCBvZgorICAgICAgICBkaXJlY3RvcmllcyBzZWFyY2hlZCBmb3IgbGlicmFyaWVzLgorICAgICAgICAiIiIKKyAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcgorCisgICAgZGVmIHJ1bnRpbWVfbGlicmFyeV9kaXJfb3B0aW9uKHNlbGYsIGRpcik6CisgICAgICAgICIiIlJldHVybiB0aGUgY29tcGlsZXIgb3B0aW9uIHRvIGFkZCAnZGlyJyB0byB0aGUgbGlzdCBvZgorICAgICAgICBkaXJlY3RvcmllcyBzZWFyY2hlZCBmb3IgcnVudGltZSBsaWJyYXJpZXMuCisgICAgICAgICIiIgorICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCisKKyAgICBkZWYgbGlicmFyeV9vcHRpb24oc2VsZiwgbGliKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBjb21waWxlciBvcHRpb24gdG8gYWRkICdkaXInIHRvIHRoZSBsaXN0IG9mIGxpYnJhcmllcworICAgICAgICBsaW5rZWQgaW50byB0aGUgc2hhcmVkIGxpYnJhcnkgb3IgZXhlY3V0YWJsZS4KKyAgICAgICAgIiIiCisgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IKKworICAgIGRlZiBoYXNfZnVuY3Rpb24oc2VsZiwgZnVuY25hbWUsIGluY2x1ZGVzPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzPU5vbmUsIGxpYnJhcnlfZGlycz1Ob25lKToKKyAgICAgICAgIiIiUmV0dXJuIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgZnVuY25hbWUgaXMgc3VwcG9ydGVkIG9uCisgICAgICAgIHRoZSBjdXJyZW50IHBsYXRmb3JtLiAgVGhlIG9wdGlvbmFsIGFyZ3VtZW50cyBjYW4gYmUgdXNlZCB0bworICAgICAgICBhdWdtZW50IHRoZSBjb21waWxhdGlvbiBlbnZpcm9ubWVudC4KKyAgICAgICAgIiIiCisKKyAgICAgICAgIyB0aGlzIGNhbid0IGJlIGluY2x1ZGVkIGF0IG1vZHVsZSBzY29wZSBiZWNhdXNlIGl0IHRyaWVzIHRvCisgICAgICAgICMgaW1wb3J0IG1hdGggd2hpY2ggbWlnaHQgbm90IGJlIGF2YWlsYWJsZSBhdCB0aGF0IHBvaW50IC0gbWF5YmUKKyAgICAgICAgIyB0aGUgbmVjZXNzYXJ5IGxvZ2ljIHNob3VsZCBqdXN0IGJlIGlubGluZWQ/CisgICAgICAgIGltcG9ydCB0ZW1wZmlsZQorICAgICAgICBpZiBpbmNsdWRlcyBpcyBOb25lOgorICAgICAgICAgICAgaW5jbHVkZXMgPSBbXQorICAgICAgICBpZiBpbmNsdWRlX2RpcnMgaXMgTm9uZToKKyAgICAgICAgICAgIGluY2x1ZGVfZGlycyA9IFtdCisgICAgICAgIGlmIGxpYnJhcmllcyBpcyBOb25lOgorICAgICAgICAgICAgbGlicmFyaWVzID0gW10KKyAgICAgICAgaWYgbGlicmFyeV9kaXJzIGlzIE5vbmU6CisgICAgICAgICAgICBsaWJyYXJ5X2RpcnMgPSBbXQorICAgICAgICBmZCwgZm5hbWUgPSB0ZW1wZmlsZS5ta3N0ZW1wKCIuYyIsIGZ1bmNuYW1lLCB0ZXh0PVRydWUpCisgICAgICAgIHdpdGggb3MuZmRvcGVuKGZkLCAidyIpIGFzIGY6CisgICAgICAgICAgICBmb3IgaW5jbCBpbiBpbmNsdWRlczoKKyAgICAgICAgICAgICAgICBmLndyaXRlKCIiIiNpbmNsdWRlICIlcyJcbiIiIiAlIGluY2wpCisgICAgICAgICAgICBmLndyaXRlKCIiIlwKK21haW4gKGludCBhcmdjLCBjaGFyICoqYXJndikgeworICAgICVzKCk7Cit9CisiIiIgJSBmdW5jbmFtZSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb2JqZWN0cyA9IHNlbGYuY29tcGlsZShbZm5hbWVdLCBpbmNsdWRlX2RpcnM9aW5jbHVkZV9kaXJzKQorICAgICAgICBleGNlcHQgQ29tcGlsZUVycm9yOgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5saW5rX2V4ZWN1dGFibGUob2JqZWN0cywgImEub3V0IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcz1saWJyYXJpZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJ5X2RpcnM9bGlicmFyeV9kaXJzKQorICAgICAgICBleGNlcHQgKExpbmtFcnJvciwgVHlwZUVycm9yKToKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgZGVmIGZpbmRfbGlicmFyeV9maWxlKHNlbGYsIGRpcnMsIGxpYiwgZGVidWc9RmFsc2UpOgorICAgICAgICAiIiJTZWFyY2ggdGhlIHNwZWNpZmllZCBsaXN0IG9mIGRpcmVjdG9yaWVzIGZvciBhIHN0YXRpYyBvciBzaGFyZWQKKyAgICAgICAgbGlicmFyeSBmaWxlICdsaWInIGFuZCByZXR1cm4gdGhlIGZ1bGwgcGF0aCB0byB0aGF0IGZpbGUuICBJZgorICAgICAgICAnZGVidWcnIGlzIHRydWUsIGxvb2sgZm9yIGEgZGVidWdnaW5nIHZlcnNpb24gKGlmIHRoYXQgbWFrZXMgc2Vuc2Ugb24KKyAgICAgICAgdGhlIGN1cnJlbnQgcGxhdGZvcm0pLiAgUmV0dXJuIE5vbmUgaWYgJ2xpYicgd2Fzbid0IGZvdW5kIGluIGFueSBvZgorICAgICAgICB0aGUgc3BlY2lmaWVkIGRpcmVjdG9yaWVzLgorICAgICAgICAiIiIKKyAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcgorCisgICAgIyAtLSBGaWxlbmFtZSBnZW5lcmF0aW9uIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgICMgVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gb2YgdGhlIGZpbGVuYW1lIGdlbmVyYXRpbmcgbWV0aG9kcyBhcmUKKyAgICAjIHByZWp1ZGljZWQgdG93YXJkcyB0aGUgVW5peC9ET1MvV2luZG93cyB2aWV3IG9mIHRoZSB3b3JsZDoKKyAgICAjICAgKiBvYmplY3QgZmlsZXMgYXJlIG5hbWVkIGJ5IHJlcGxhY2luZyB0aGUgc291cmNlIGZpbGUgZXh0ZW5zaW9uCisgICAgIyAgICAgKGVnLiAuYy8uY3BwIC0+IC5vLy5vYmopCisgICAgIyAgICogbGlicmFyeSBmaWxlcyAoc2hhcmVkIG9yIHN0YXRpYykgYXJlIG5hbWVkIGJ5IHBsdWdnaW5nIHRoZQorICAgICMgICAgIGxpYnJhcnkgbmFtZSBhbmQgZXh0ZW5zaW9uIGludG8gYSBmb3JtYXQgc3RyaW5nLCBlZy4KKyAgICAjICAgICAibGliJXMuJXMiICUgKGxpYl9uYW1lLCAiLmEiKSBmb3IgVW5peCBzdGF0aWMgbGlicmFyaWVzCisgICAgIyAgICogZXhlY3V0YWJsZXMgYXJlIG5hbWVkIGJ5IGFwcGVuZGluZyBhbiBleHRlbnNpb24gKHBvc3NpYmx5CisgICAgIyAgICAgZW1wdHkpIHRvIHRoZSBwcm9ncmFtIG5hbWU6IGVnLiBwcm9nbmFtZSArICIuZXhlIiBmb3IKKyAgICAjICAgICBXaW5kb3dzCisgICAgIworICAgICMgVG8gcmVkdWNlIHJlZHVuZGFudCBjb2RlLCB0aGVzZSBtZXRob2RzIGV4cGVjdCB0byBmaW5kCisgICAgIyBzZXZlcmFsIGF0dHJpYnV0ZXMgaW4gdGhlIGN1cnJlbnQgb2JqZWN0IChwcmVzdW1hYmx5IGRlZmluZWQKKyAgICAjIGFzIGNsYXNzIGF0dHJpYnV0ZXMpOgorICAgICMgICAqIHNyY19leHRlbnNpb25zIC0KKyAgICAjICAgICBsaXN0IG9mIEMvQysrIHNvdXJjZSBmaWxlIGV4dGVuc2lvbnMsIGVnLiBbJy5jJywgJy5jcHAnXQorICAgICMgICAqIG9ial9leHRlbnNpb24gLQorICAgICMgICAgIG9iamVjdCBmaWxlIGV4dGVuc2lvbiwgZWcuICcubycgb3IgJy5vYmonCisgICAgIyAgICogc3RhdGljX2xpYl9leHRlbnNpb24gLQorICAgICMgICAgIGV4dGVuc2lvbiBmb3Igc3RhdGljIGxpYnJhcnkgZmlsZXMsIGVnLiAnLmEnIG9yICcubGliJworICAgICMgICAqIHNoYXJlZF9saWJfZXh0ZW5zaW9uIC0KKyAgICAjICAgICBleHRlbnNpb24gZm9yIHNoYXJlZCBsaWJyYXJ5L29iamVjdCBmaWxlcywgZWcuICcuc28nLCAnLmRsbCcKKyAgICAjICAgKiBzdGF0aWNfbGliX2Zvcm1hdCAtCisgICAgIyAgICAgZm9ybWF0IHN0cmluZyBmb3IgZ2VuZXJhdGluZyBzdGF0aWMgbGlicmFyeSBmaWxlbmFtZXMsCisgICAgIyAgICAgZWcuICdsaWIlcy4lcycgb3IgJyVzLiVzJworICAgICMgICAqIHNoYXJlZF9saWJfZm9ybWF0CisgICAgIyAgICAgZm9ybWF0IHN0cmluZyBmb3IgZ2VuZXJhdGluZyBzaGFyZWQgbGlicmFyeSBmaWxlbmFtZXMKKyAgICAjICAgICAocHJvYmFibHkgc2FtZSBhcyBzdGF0aWNfbGliX2Zvcm1hdCwgc2luY2UgdGhlIGV4dGVuc2lvbgorICAgICMgICAgIGlzIG9uZSBvZiB0aGUgaW50ZW5kZWQgcGFyYW1ldGVycyB0byB0aGUgZm9ybWF0IHN0cmluZykKKyAgICAjICAgKiBleGVfZXh0ZW5zaW9uIC0KKyAgICAjICAgICBleHRlbnNpb24gZm9yIGV4ZWN1dGFibGUgZmlsZXMsIGVnLiAnJyBvciAnLmV4ZScKKworICAgIGRlZiBvYmplY3RfZmlsZW5hbWVzKHNlbGYsIHNvdXJjZV9maWxlbmFtZXMsIHN0cmlwX2Rpcj1GYWxzZSwgb3V0cHV0X2Rpcj0nJyk6CisgICAgICAgIGlmIG91dHB1dF9kaXIgaXMgTm9uZToKKyAgICAgICAgICAgIG91dHB1dF9kaXIgPSAnJworICAgICAgICBvYmpfbmFtZXMgPSBbXQorICAgICAgICBmb3Igc3JjX25hbWUgaW4gc291cmNlX2ZpbGVuYW1lczoKKyAgICAgICAgICAgIGJhc2UsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQoc3JjX25hbWUpCisgICAgICAgICAgICBiYXNlID0gb3MucGF0aC5zcGxpdGRyaXZlKGJhc2UpWzFdICAjIENob3Agb2ZmIHRoZSBkcml2ZQorICAgICAgICAgICAgYmFzZSA9IGJhc2Vbb3MucGF0aC5pc2FicyhiYXNlKTpdICAjIElmIGFicywgY2hvcCBvZmYgbGVhZGluZyAvCisgICAgICAgICAgICBpZiBleHQgbm90IGluIHNlbGYuc3JjX2V4dGVuc2lvbnM6CisgICAgICAgICAgICAgICAgcmFpc2UgVW5rbm93bkZpbGVFcnJvcigidW5rbm93biBmaWxlIHR5cGUgJyVzJyAoZnJvbSAnJXMnKSIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGV4dCwgc3JjX25hbWUpKQorICAgICAgICAgICAgaWYgc3RyaXBfZGlyOgorICAgICAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLmJhc2VuYW1lKGJhc2UpCisgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZSArIHNlbGYub2JqX2V4dGVuc2lvbikpCisgICAgICAgIHJldHVybiBvYmpfbmFtZXMKKworICAgIGRlZiBzaGFyZWRfb2JqZWN0X2ZpbGVuYW1lKHNlbGYsIGJhc2VuYW1lLCBzdHJpcF9kaXI9RmFsc2UsIG91dHB1dF9kaXI9JycpOgorICAgICAgICBhc3NlcnQgb3V0cHV0X2RpciBpcyBub3QgTm9uZQorICAgICAgICBpZiBzdHJpcF9kaXI6CisgICAgICAgICAgICBiYXNlbmFtZSA9IG9zLnBhdGguYmFzZW5hbWUoYmFzZW5hbWUpCisgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4ob3V0cHV0X2RpciwgYmFzZW5hbWUgKyBzZWxmLnNoYXJlZF9saWJfZXh0ZW5zaW9uKQorCisgICAgZGVmIGV4ZWN1dGFibGVfZmlsZW5hbWUoc2VsZiwgYmFzZW5hbWUsIHN0cmlwX2Rpcj1GYWxzZSwgb3V0cHV0X2Rpcj0nJyk6CisgICAgICAgIGFzc2VydCBvdXRwdXRfZGlyIGlzIG5vdCBOb25lCisgICAgICAgIGlmIHN0cmlwX2RpcjoKKyAgICAgICAgICAgIGJhc2VuYW1lID0gb3MucGF0aC5iYXNlbmFtZShiYXNlbmFtZSkKKyAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihvdXRwdXRfZGlyLCBiYXNlbmFtZSArIChzZWxmLmV4ZV9leHRlbnNpb24gb3IgJycpKQorCisgICAgZGVmIGxpYnJhcnlfZmlsZW5hbWUoc2VsZiwgbGlibmFtZSwgbGliX3R5cGU9J3N0YXRpYycsICAgICAjIG9yICdzaGFyZWQnCisgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaXBfZGlyPUZhbHNlLCBvdXRwdXRfZGlyPScnKToKKyAgICAgICAgYXNzZXJ0IG91dHB1dF9kaXIgaXMgbm90IE5vbmUKKyAgICAgICAgaWYgbGliX3R5cGUgbm90IGluICgic3RhdGljIiwgInNoYXJlZCIsICJkeWxpYiIpOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigKKyAgICAgICAgICAgICAgICAiJ2xpYl90eXBlJyBtdXN0IGJlICdzdGF0aWMnLCAnc2hhcmVkJyBvciAnZHlsaWInIikKKyAgICAgICAgZm10ID0gZ2V0YXR0cihzZWxmLCBsaWJfdHlwZSArICJfbGliX2Zvcm1hdCIpCisgICAgICAgIGV4dCA9IGdldGF0dHIoc2VsZiwgbGliX3R5cGUgKyAiX2xpYl9leHRlbnNpb24iKQorCisgICAgICAgIGRpciwgYmFzZSA9IG9zLnBhdGguc3BsaXQobGlibmFtZSkKKyAgICAgICAgZmlsZW5hbWUgPSBmbXQgJSAoYmFzZSwgZXh0KQorICAgICAgICBpZiBzdHJpcF9kaXI6CisgICAgICAgICAgICBkaXIgPSAnJworCisgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4ob3V0cHV0X2RpciwgZGlyLCBmaWxlbmFtZSkKKworCisgICAgIyAtLSBVdGlsaXR5IG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBleGVjdXRlKHNlbGYsIGZ1bmMsIGFyZ3MsIG1zZz1Ob25lLCBsZXZlbD0xKToKKyAgICAgICAgZXhlY3V0ZShmdW5jLCBhcmdzLCBtc2csIHNlbGYuZHJ5X3J1bikKKworICAgIGRlZiBzcGF3bihzZWxmLCBjbWQpOgorICAgICAgICBzcGF3bihjbWQsIGRyeV9ydW49c2VsZi5kcnlfcnVuKQorCisgICAgZGVmIG1vdmVfZmlsZShzZWxmLCBzcmMsIGRzdCk6CisgICAgICAgIGxvZ2dlci5pbmZvKCJtb3ZpbmcgJXIgdG8gJXIiLCBzcmMsIGRzdCkKKyAgICAgICAgaWYgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIHJldHVybiBtb3ZlKHNyYywgZHN0KQorCisgICAgZGVmIG1rcGF0aChzZWxmLCBuYW1lLCBtb2RlPTBvNzc3KToKKyAgICAgICAgbmFtZSA9IG9zLnBhdGgubm9ybXBhdGgobmFtZSkKKyAgICAgICAgaWYgb3MucGF0aC5pc2RpcihuYW1lKSBvciBuYW1lID09ICcnOgorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgIGhlYWQgPSAnJworICAgICAgICAgICAgZm9yIHBhcnQgaW4gbmFtZS5zcGxpdChvcy5zZXApOgorICAgICAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJjcmVhdGVkIGRpcmVjdG9yeSAlcyVzIiwgaGVhZCwgcGFydCkKKyAgICAgICAgICAgICAgICBoZWFkICs9IHBhcnQgKyBvcy5zZXAKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBvcy5tYWtlZGlycyhuYW1lLCBtb2RlKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21waWxlci9jeWd3aW5jY29tcGlsZXIucHkgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2N5Z3dpbmNjb21waWxlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NTUyNjY3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21waWxlci9jeWd3aW5jY29tcGlsZXIucHkKQEAgLTAsMCArMSwzNTUgQEAKKyIiIkNDb21waWxlciBpbXBsZW1lbnRhdGlvbnMgZm9yIEN5Z3dpbiBhbmQgbWluZ3czMiB2ZXJzaW9ucyBvZiBHQ0MuCisKK1RoaXMgbW9kdWxlIGNvbnRhaW5zIHRoZSBDeWd3aW5DQ29tcGlsZXIgY2xhc3MsIGEgc3ViY2xhc3Mgb2YKK1VuaXhDQ29tcGlsZXIgdGhhdCBoYW5kbGVzIHRoZSBDeWd3aW4gcG9ydCBvZiB0aGUgR05VIEMgY29tcGlsZXIgdG8KK1dpbmRvd3MsIGFuZCB0aGUgTWluZ3czMkNDb21waWxlciBjbGFzcyB3aGljaCBoYW5kbGVzIHRoZSBtaW5ndzMyIHBvcnQKK29mIEdDQyAoc2FtZSBhcyBjeWd3aW4gaW4gbm8tY3lnd2luIG1vZGUpLgorIiIiCisKKyMgcHJvYmxlbXM6CisjCisjICogaWYgeW91IHVzZSBhIG1zdmMgY29tcGlsZWQgcHl0aG9uIHZlcnNpb24gKDEuNS4yKQorIyAgIDEuIHlvdSBoYXZlIHRvIGluc2VydCBhIF9fR05VQ19fIHNlY3Rpb24gaW4gaXRzIGNvbmZpZy5oCisjICAgMi4geW91IGhhdmUgdG8gZ2VuZXJhdGUgYSBpbXBvcnQgbGlicmFyeSBmb3IgaXRzIGRsbAorIyAgICAgIC0gY3JlYXRlIGEgZGVmLWZpbGUgZm9yIHB5dGhvbj8/LmRsbAorIyAgICAgIC0gY3JlYXRlIGEgaW1wb3J0IGxpYnJhcnkgdXNpbmcKKyMgICAgICAgICAgICAgZGxsdG9vbCAtLWRsbG5hbWUgcHl0aG9uMTUuZGxsIC0tZGVmIHB5dGhvbjE1LmRlZiBcCisjICAgICAgICAgICAgICAgICAgICAgICAtLW91dHB1dC1saWIgbGlicHl0aG9uMTUuYQorIworIyAgIHNlZSBhbHNvIGh0dHA6Ly9zdGFyc2hpcC5weXRob24ubmV0L2NyZXcva2VybnIvbWluZ3czMi9Ob3Rlcy5odG1sCisjCisjICogV2UgcHV0IGV4cG9ydF9zeW1ib2xzIGluIGEgZGVmLWZpbGUsIGFuZCBkb24ndCB1c2UKKyMgICAtLWV4cG9ydC1hbGwtc3ltYm9scyBiZWNhdXNlIGl0IGRvZXNuJ3Qgd29ya2VkIHJlbGlhYmxlIGluIHNvbWUKKyMgICB0ZXN0ZWQgY29uZmlndXJhdGlvbnMuIEFuZCBiZWNhdXNlIG90aGVyIHdpbmRvd3MgY29tcGlsZXJzIGFsc28KKyMgICBuZWVkIHRoZWlyIHN5bWJvbHMgc3BlY2lmaWVkIHRoaXMgbm8gc2VyaW91cyBwcm9ibGVtLgorIworIyB0ZXN0ZWQgY29uZmlndXJhdGlvbnM6CisjCisjICogY3lnd2luIGdjYyAyLjkxLjU3L2xkIDIuOS40L2RsbHdyYXAgMC4yLjQgd29ya3MKKyMgICAoYWZ0ZXIgcGF0Y2hpbmcgcHl0aG9uJ3MgY29uZmlnLmggYW5kIGZvciBDKysgc29tZSBvdGhlciBpbmNsdWRlIGZpbGVzKQorIyAgIHNlZSBhbHNvIGh0dHA6Ly9zdGFyc2hpcC5weXRob24ubmV0L2NyZXcva2VybnIvbWluZ3czMi9Ob3Rlcy5odG1sCisjICogbWluZ3czMiBnY2MgMi45NS4yL2xkIDIuOS40L2RsbHdyYXAgMC4yLjQgd29ya3MKKyMgICAobGQgZG9lc24ndCBzdXBwb3J0IC1zaGFyZWQsIHNvIHdlIHVzZSBkbGx3cmFwKQorIyAqIGN5Z3dpbiBnY2MgMi45NS4yL2xkIDIuMTAuOTAvZGxsd3JhcCAyLjEwLjkwIHdvcmtzIG5vdworIyAgIC0gaXRzIGRsbHdyYXAgZG9lc24ndCB3b3JrLCB0aGVyZSBpcyBhIGJ1ZyBpbiBiaW51dGlscyAyLjEwLjkwCisjICAgICBzZWUgYWxzbyBodHRwOi8vc291cmNlcy5yZWRoYXQuY29tL21sL2N5Z3dpbi8yMDAwLTA2L21zZzAxMjc0Lmh0bWwKKyMgICAtIHVzaW5nIGdjYyAtbWRsbCBpbnN0ZWFkIGRsbHdyYXAgZG9lc24ndCB3b3JrIHdpdGhvdXQgLXN0YXRpYyBiZWNhdXNlCisjICAgICBpdCB0cmllcyB0byBsaW5rIGFnYWluc3QgZGxscyBpbnN0ZWFkIHRoZWlyIGltcG9ydCBsaWJyYXJpZXMuIChJZgorIyAgICAgaXQgZmluZHMgdGhlIGRsbCBmaXJzdC4pCisjICAgICBCeSBzcGVjaWZ5aW5nIC1zdGF0aWMgd2UgZm9yY2UgbGQgdG8gbGluayBhZ2FpbnN0IHRoZSBpbXBvcnQgbGlicmFyaWVzLAorIyAgICAgdGhpcyBpcyB3aW5kb3dzIHN0YW5kYXJkIGFuZCB0aGVyZSBhcmUgbm9ybWFsbHkgbm90IHRoZSBuZWNlc3Nhcnkgc3ltYm9scworIyAgICAgaW4gdGhlIGRsbHMuCisjICAgKioqIG9ubHkgdGhlIHZlcnNpb24gb2YgSnVuZSAyMDAwIHNob3dzIHRoZXNlIHByb2JsZW1zCisjICogY3lnd2luIGdjYyAzLjIvbGQgMi4xMy45MCB3b3JrcworIyAgIChsZCBzdXBwb3J0cyAtc2hhcmVkKQorIyAqIG1pbmd3IGdjYyAzLjIvbGQgMi4xMyB3b3JrcworIyAgIChsZCBzdXBwb3J0cyAtc2hhcmVkKQorCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5jb21waWxlci51bml4Y2NvbXBpbGVyIGltcG9ydCBVbml4Q0NvbXBpbGVyCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCB3cml0ZV9maWxlCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0V4ZWNFcnJvciwgQ29tcGlsZUVycm9yLCBVbmtub3duRmlsZUVycm9yCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBnZXRfY29tcGlsZXJfdmVyc2lvbnMKK2ltcG9ydCBzeXNjb25maWcKKworIyBUT0RPIHVzZSBwbGF0Zm9ybSBpbnN0ZWFkIG9mIHN5cy52ZXJzaW9uCisjIChwbGF0Zm9ybSBkb2VzIHVuaG9seSBzeXMudmVyc2lvbiBwYXJzaW5nIHRvbywgYnV0IGF0IGxlYXN0IGl0IGdpdmVzIG90aGVyCisjIFZNcyBhIGNoYW5jZSB0byBvdmVycmlkZSB0aGUgcmV0dXJuZWQgdmFsdWVzKQorCisKK2RlZiBnZXRfbXN2Y3IoKToKKyAgICAiIiJJbmNsdWRlIHRoZSBhcHByb3ByaWF0ZSBNU1ZDIHJ1bnRpbWUgbGlicmFyeSBpZiBQeXRob24gd2FzIGJ1aWx0CisgICAgd2l0aCBNU1ZDIDcuMCBvciBsYXRlci4KKyAgICAiIiIKKyAgICBtc2NfcG9zID0gc3lzLnZlcnNpb24uZmluZCgnTVNDIHYuJykKKyAgICBpZiBtc2NfcG9zICE9IC0xOgorICAgICAgICBtc2NfdmVyID0gc3lzLnZlcnNpb25bbXNjX3Bvcys2Om1zY19wb3MrMTBdCisgICAgICAgIGlmIG1zY192ZXIgPT0gJzEzMDAnOgorICAgICAgICAgICAgIyBNU1ZDIDcuMAorICAgICAgICAgICAgcmV0dXJuIFsnbXN2Y3I3MCddCisgICAgICAgIGVsaWYgbXNjX3ZlciA9PSAnMTMxMCc6CisgICAgICAgICAgICAjIE1TVkMgNy4xCisgICAgICAgICAgICByZXR1cm4gWydtc3ZjcjcxJ10KKyAgICAgICAgZWxpZiBtc2NfdmVyID09ICcxNDAwJzoKKyAgICAgICAgICAgICMgVlMyMDA1IC8gTVNWQyA4LjAKKyAgICAgICAgICAgIHJldHVybiBbJ21zdmNyODAnXQorICAgICAgICBlbGlmIG1zY192ZXIgPT0gJzE1MDAnOgorICAgICAgICAgICAgIyBWUzIwMDggLyBNU1ZDIDkuMAorICAgICAgICAgICAgcmV0dXJuIFsnbXN2Y3I5MCddCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJVbmtub3duIE1TIENvbXBpbGVyIHZlcnNpb24gJXMgIiAlIG1zY192ZXIpCisKKworY2xhc3MgQ3lnd2luQ0NvbXBpbGVyKFVuaXhDQ29tcGlsZXIpOgorICAgICIiIiBIYW5kbGVzIHRoZSBDeWd3aW4gcG9ydCBvZiB0aGUgR05VIEMgY29tcGlsZXIgdG8gV2luZG93cy4KKyAgICAiIiIKKyAgICBuYW1lID0gJ2N5Z3dpbicKKyAgICBkZXNjcmlwdGlvbiA9ICdDeWd3aW4gcG9ydCBvZiBHTlUgQyBDb21waWxlciBmb3IgV2luMzInCisgICAgb2JqX2V4dGVuc2lvbiA9ICIubyIKKyAgICBzdGF0aWNfbGliX2V4dGVuc2lvbiA9ICIuYSIKKyAgICBzaGFyZWRfbGliX2V4dGVuc2lvbiA9ICIuZGxsIgorICAgIHN0YXRpY19saWJfZm9ybWF0ID0gImxpYiVzJXMiCisgICAgc2hhcmVkX2xpYl9mb3JtYXQgPSAiJXMlcyIKKyAgICBleGVfZXh0ZW5zaW9uID0gIi5leGUiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZHJ5X3J1bj1GYWxzZSwgZm9yY2U9RmFsc2UpOgorICAgICAgICBzdXBlcihDeWd3aW5DQ29tcGlsZXIsIHNlbGYpLl9faW5pdF9fKGRyeV9ydW4sIGZvcmNlKQorCisgICAgICAgIHN0YXR1cywgZGV0YWlscyA9IGNoZWNrX2NvbmZpZ19oKCkKKyAgICAgICAgbG9nZ2VyLmRlYnVnKCJQeXRob24ncyBHQ0Mgc3RhdHVzOiAlcyAoZGV0YWlsczogJXMpIiwgc3RhdHVzLCBkZXRhaWxzKQorICAgICAgICBpZiBzdGF0dXMgaXMgbm90IENPTkZJR19IX09LOgorICAgICAgICAgICAgc2VsZi53YXJuKAorICAgICAgICAgICAgICAgICJQeXRob24ncyBweWNvbmZpZy5oIGRvZXNuJ3Qgc2VlbSB0byBzdXBwb3J0IHlvdXIgY29tcGlsZXIuICIKKyAgICAgICAgICAgICAgICAiUmVhc29uOiAlcy4gIgorICAgICAgICAgICAgICAgICJDb21waWxpbmcgbWF5IGZhaWwgYmVjYXVzZSBvZiB1bmRlZmluZWQgcHJlcHJvY2Vzc29yIG1hY3Jvcy4iCisgICAgICAgICAgICAgICAgJSBkZXRhaWxzKQorCisgICAgICAgIHNlbGYuZ2NjX3ZlcnNpb24sIHNlbGYubGRfdmVyc2lvbiwgc2VsZi5kbGx3cmFwX3ZlcnNpb24gPSBcCisgICAgICAgICAgICBnZXRfY29tcGlsZXJfdmVyc2lvbnMoKQorICAgICAgICBsb2dnZXIuZGVidWcoc2VsZi5uYW1lICsgIjogZ2NjICVzLCBsZCAlcywgZGxsd3JhcCAlc1xuIiwKKyAgICAgICAgICAgICAgICAgICAgIHNlbGYuZ2NjX3ZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICBzZWxmLmxkX3ZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICBzZWxmLmRsbHdyYXBfdmVyc2lvbikKKworICAgICAgICAjIGxkX3ZlcnNpb24gPj0gIjIuMTAuOTAiIGFuZCA8ICIyLjEzIiBzaG91bGQgYWxzbyBiZSBhYmxlIHRvIHVzZQorICAgICAgICAjIGdjYyAtbWRsbCBpbnN0ZWFkIG9mIGRsbHdyYXAKKyAgICAgICAgIyBPbGRlciBkbGx3cmFwcyBoYWQgb3duIHZlcnNpb24gbnVtYmVycywgbmV3ZXIgb25lcyB1c2UgdGhlCisgICAgICAgICMgc2FtZSBhcyB0aGUgcmVzdCBvZiBiaW51dGlscyAoIGFsc28gbGQgKQorICAgICAgICAjIGRsbHdyYXAgMi4xMC45MCBpcyBidWdneQorICAgICAgICBpZiBzZWxmLmxkX3ZlcnNpb24gPj0gIjIuMTAuOTAiOgorICAgICAgICAgICAgc2VsZi5saW5rZXJfZGxsID0gImdjYyIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYubGlua2VyX2RsbCA9ICJkbGx3cmFwIgorCisgICAgICAgICMgbGRfdmVyc2lvbiA+PSAiMi4xMyIgc3VwcG9ydCAtc2hhcmVkIHNvIHVzZSBpdCBpbnN0ZWFkIG9mCisgICAgICAgICMgLW1kbGwgLXN0YXRpYworICAgICAgICBpZiBzZWxmLmxkX3ZlcnNpb24gPj0gIjIuMTMiOgorICAgICAgICAgICAgc2hhcmVkX29wdGlvbiA9ICItc2hhcmVkIgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2hhcmVkX29wdGlvbiA9ICItbWRsbCAtc3RhdGljIgorCisgICAgICAgICMgSGFyZC1jb2RlIEdDQyBiZWNhdXNlIHRoYXQncyB3aGF0IHRoaXMgaXMgYWxsIGFib3V0LgorICAgICAgICAjIFhYWCBvcHRpbWl6YXRpb24sIHdhcm5pbmdzIGV0Yy4gc2hvdWxkIGJlIGN1c3RvbWl6YWJsZS4KKyAgICAgICAgc2VsZi5zZXRfZXhlY3V0YWJsZXMoY29tcGlsZXI9J2djYyAtbWN5Z3dpbiAtTyAtV2FsbCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGVyX3NvPSdnY2MgLW1jeWd3aW4gLW1kbGwgLU8gLVdhbGwnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21waWxlcl9jeHg9J2crKyAtbWN5Z3dpbiAtTyAtV2FsbCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmtlcl9leGU9J2djYyAtbWN5Z3dpbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmtlcl9zbz0oJyVzIC1tY3lnd2luICVzJyAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNlbGYubGlua2VyX2RsbCwgc2hhcmVkX29wdGlvbikpKQorCisgICAgICAgICMgY3lnd2luIGFuZCBtaW5ndzMyIG5lZWQgZGlmZmVyZW50IHNldHMgb2YgbGlicmFyaWVzCisgICAgICAgIGlmIHNlbGYuZ2NjX3ZlcnNpb24gPT0gIjIuOTEuNTciOgorICAgICAgICAgICAgIyBjeWd3aW4gc2hvdWxkbid0IG5lZWQgbXN2Y3J0LCBidXQgd2l0aG91dCB0aGUgZGxscyB3aWxsIGNyYXNoCisgICAgICAgICAgICAjIChnY2MgdmVyc2lvbiAyLjkxLjU3KSAtLSBwZXJoYXBzIHNvbWV0aGluZyBhYm91dCBpbml0aWFsaXphdGlvbgorICAgICAgICAgICAgc2VsZi5kbGxfbGlicmFyaWVzPVsibXN2Y3J0Il0KKyAgICAgICAgICAgIHNlbGYud2FybigKKyAgICAgICAgICAgICAgICAiQ29uc2lkZXIgdXBncmFkaW5nIHRvIGEgbmV3ZXIgdmVyc2lvbiBvZiBnY2MiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBJbmNsdWRlIHRoZSBhcHByb3ByaWF0ZSBNU1ZDIHJ1bnRpbWUgbGlicmFyeSBpZiBQeXRob24gd2FzIGJ1aWx0CisgICAgICAgICAgICAjIHdpdGggTVNWQyA3LjAgb3IgbGF0ZXIuCisgICAgICAgICAgICBzZWxmLmRsbF9saWJyYXJpZXMgPSBnZXRfbXN2Y3IoKQorCisgICAgZGVmIF9jb21waWxlKHNlbGYsIG9iaiwgc3JjLCBleHQsIGNjX2FyZ3MsIGV4dHJhX3Bvc3RhcmdzLCBwcF9vcHRzKToKKyAgICAgICAgIiIiQ29tcGlsZSB0aGUgc291cmNlIGJ5IHNwYXduaW5nIEdDQyBhbmQgd2luZHJlcyBpZiBuZWVkZWQuIiIiCisgICAgICAgIGlmIGV4dCA9PSAnLnJjJyBvciBleHQgPT0gJy5yZXMnOgorICAgICAgICAgICAgIyBnY2MgbmVlZHMgJy5yZXMnIGFuZCAnLnJjJyBjb21waWxlZCB0byBvYmplY3QgZmlsZXMgISEhCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbIndpbmRyZXMiLCAiLWkiLCBzcmMsICItbyIsIG9ial0pCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IobXNnKQorICAgICAgICBlbHNlOiAjIGZvciBvdGhlciBmaWxlcyB1c2UgdGhlIEMtY29tcGlsZXIKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLnNwYXduKHNlbGYuY29tcGlsZXJfc28gKyBjY19hcmdzICsgW3NyYywgJy1vJywgb2JqXSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYV9wb3N0YXJncykKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisKKyAgICBkZWYgbGluayhzZWxmLCB0YXJnZXRfZGVzYywgb2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZGlyPU5vbmUsCisgICAgICAgICAgICAgbGlicmFyaWVzPU5vbmUsIGxpYnJhcnlfZGlycz1Ob25lLCBydW50aW1lX2xpYnJhcnlfZGlycz1Ob25lLAorICAgICAgICAgICAgIGV4cG9ydF9zeW1ib2xzPU5vbmUsIGRlYnVnPUZhbHNlLCBleHRyYV9wcmVhcmdzPU5vbmUsCisgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwgYnVpbGRfdGVtcD1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lKToKKyAgICAgICAgIiIiTGluayB0aGUgb2JqZWN0cy4iIiIKKyAgICAgICAgIyB1c2Ugc2VwYXJhdGUgY29waWVzLCBzbyB3ZSBjYW4gbW9kaWZ5IHRoZSBsaXN0cworICAgICAgICBleHRyYV9wcmVhcmdzID0gbGlzdChleHRyYV9wcmVhcmdzIG9yIFtdKQorICAgICAgICBsaWJyYXJpZXMgPSBsaXN0KGxpYnJhcmllcyBvciBbXSkKKyAgICAgICAgb2JqZWN0cyA9IGxpc3Qob2JqZWN0cyBvciBbXSkKKworICAgICAgICAjIEFkZGl0aW9uYWwgbGlicmFyaWVzCisgICAgICAgIGxpYnJhcmllcy5leHRlbmQoc2VsZi5kbGxfbGlicmFyaWVzKQorCisgICAgICAgICMgaGFuZGxlIGV4cG9ydCBzeW1ib2xzIGJ5IGNyZWF0aW5nIGEgZGVmLWZpbGUKKyAgICAgICAgIyB3aXRoIGV4ZWN1dGFibGVzIHRoaXMgb25seSB3b3JrcyB3aXRoIGdjYy9sZCBhcyBsaW5rZXIKKyAgICAgICAgaWYgKChleHBvcnRfc3ltYm9scyBpcyBub3QgTm9uZSkgYW5kCisgICAgICAgICAgICAodGFyZ2V0X2Rlc2MgIT0gc2VsZi5FWEVDVVRBQkxFIG9yIHNlbGYubGlua2VyX2RsbCA9PSAiZ2NjIikpOgorICAgICAgICAgICAgIyAoVGhlIGxpbmtlciBkb2Vzbid0IGRvIGFueXRoaW5nIGlmIG91dHB1dCBpcyB1cC10by1kYXRlLgorICAgICAgICAgICAgIyBTbyBpdCB3b3VsZCBwcm9iYWJseSBiZXR0ZXIgdG8gY2hlY2sgaWYgd2UgcmVhbGx5IG5lZWQgdGhpcywKKyAgICAgICAgICAgICMgYnV0IGZvciB0aGlzIHdlIGhhZCB0byBpbnNlcnQgc29tZSB1bmNoYW5nZWQgcGFydHMgb2YKKyAgICAgICAgICAgICMgVW5peENDb21waWxlciwgYW5kIHRoaXMgaXMgbm90IHdoYXQgd2Ugd2FudC4pCisKKyAgICAgICAgICAgICMgd2Ugd2FudCB0byBwdXQgc29tZSBmaWxlcyBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgYXMgdGhlCisgICAgICAgICAgICAjIG9iamVjdCBmaWxlcyBhcmUsIGJ1aWxkX3RlbXAgZG9lc24ndCBoZWxwIG11Y2gKKyAgICAgICAgICAgICMgd2hlcmUgYXJlIHRoZSBvYmplY3QgZmlsZXMKKyAgICAgICAgICAgIHRlbXBfZGlyID0gb3MucGF0aC5kaXJuYW1lKG9iamVjdHNbMF0pCisgICAgICAgICAgICAjIG5hbWUgb2YgZGxsIHRvIGdpdmUgdGhlIGhlbHBlciBmaWxlcyB0aGUgc2FtZSBiYXNlIG5hbWUKKyAgICAgICAgICAgIGRsbF9uYW1lLCBkbGxfZXh0ZW5zaW9uID0gb3MucGF0aC5zcGxpdGV4dCgKKyAgICAgICAgICAgICAgICBvcy5wYXRoLmJhc2VuYW1lKG91dHB1dF9maWxlbmFtZSkpCisKKyAgICAgICAgICAgICMgZ2VuZXJhdGUgdGhlIGZpbGVuYW1lcyBmb3IgdGhlc2UgZmlsZXMKKyAgICAgICAgICAgIGRlZl9maWxlID0gb3MucGF0aC5qb2luKHRlbXBfZGlyLCBkbGxfbmFtZSArICIuZGVmIikKKyAgICAgICAgICAgIGxpYl9maWxlID0gb3MucGF0aC5qb2luKHRlbXBfZGlyLCAnbGliJyArIGRsbF9uYW1lICsgIi5hIikKKworICAgICAgICAgICAgIyBHZW5lcmF0ZSAuZGVmIGZpbGUKKyAgICAgICAgICAgIGNvbnRlbnRzID0gWworICAgICAgICAgICAgICAgICJMSUJSQVJZICVzIiAlIG9zLnBhdGguYmFzZW5hbWUob3V0cHV0X2ZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAiRVhQT1JUUyJdCisgICAgICAgICAgICBmb3Igc3ltIGluIGV4cG9ydF9zeW1ib2xzOgorICAgICAgICAgICAgICAgIGNvbnRlbnRzLmFwcGVuZChzeW0pCisgICAgICAgICAgICBzZWxmLmV4ZWN1dGUod3JpdGVfZmlsZSwgKGRlZl9maWxlLCBjb250ZW50cyksCisgICAgICAgICAgICAgICAgICAgICAgICAgIndyaXRpbmcgJXMiICUgZGVmX2ZpbGUpCisKKyAgICAgICAgICAgICMgbmV4dCBhZGQgb3B0aW9ucyBmb3IgZGVmLWZpbGUgYW5kIHRvIGNyZWF0aW5nIGltcG9ydCBsaWJyYXJpZXMKKworICAgICAgICAgICAgIyBkbGx3cmFwIHVzZXMgZGlmZmVyZW50IG9wdGlvbnMgdGhhbiBnY2MvbGQKKyAgICAgICAgICAgIGlmIHNlbGYubGlua2VyX2RsbCA9PSAiZGxsd3JhcCI6CisgICAgICAgICAgICAgICAgZXh0cmFfcHJlYXJncy5leHRlbmQoKCItLW91dHB1dC1saWIiLCBsaWJfZmlsZSkpCisgICAgICAgICAgICAgICAgIyBmb3IgZGxsd3JhcCB3ZSBoYXZlIHRvIHVzZSBhIHNwZWNpYWwgb3B0aW9uCisgICAgICAgICAgICAgICAgZXh0cmFfcHJlYXJncy5leHRlbmQoKCItLWRlZiIsIGRlZl9maWxlKSkKKyAgICAgICAgICAgICMgd2UgdXNlIGdjYy9sZCBoZXJlIGFuZCBjYW4gYmUgc3VyZSBsZCBpcyA+PSAyLjkuMTAKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBkb2Vzbid0IHdvcms6IGJmZF9jbG9zZSBidWlsZFwuLi5cbGliZm9vLmE6IEludmFsaWQgb3BlcmF0aW9uCisgICAgICAgICAgICAgICAgI2V4dHJhX3ByZWFyZ3MuZXh0ZW5kKCgiLVdsLC0tb3V0LWltcGxpYiwlcyIgJSBsaWJfZmlsZSkpCisgICAgICAgICAgICAgICAgIyBmb3IgZ2NjL2xkIHRoZSBkZWYtZmlsZSBpcyBzcGVjaWZpZWQgYXMgYW55IG9iamVjdCBmaWxlcworICAgICAgICAgICAgICAgIG9iamVjdHMuYXBwZW5kKGRlZl9maWxlKQorCisgICAgICAgICNlbmQ6IGlmICgoZXhwb3J0X3N5bWJvbHMgaXMgbm90IE5vbmUpIGFuZAorICAgICAgICAjICAgICAgICAodGFyZ2V0X2Rlc2MgIT0gc2VsZi5FWEVDVVRBQkxFIG9yIHNlbGYubGlua2VyX2RsbCA9PSAiZ2NjIikpOgorCisgICAgICAgICMgd2hvIHdhbnRzIHN5bWJvbHMgYW5kIGEgbWFueSB0aW1lcyBsYXJnZXIgb3V0cHV0IGZpbGUKKyAgICAgICAgIyBzaG91bGQgZXhwbGljaXRseSBzd2l0Y2ggdGhlIGRlYnVnIG1vZGUgb24KKyAgICAgICAgIyBvdGhlcndpc2Ugd2UgbGV0IGRsbHdyYXAvbGQgc3RyaXAgdGhlIG91dHB1dCBmaWxlCisgICAgICAgICMgKE9uIG15IG1hY2hpbmU6IDEwS0IgPCBzdHJpcHBlZF9maWxlIDwgPz8xMDBLQgorICAgICAgICAjICAgdW5zdHJpcHBlZF9maWxlID0gc3RyaXBwZWRfZmlsZSArIFhYWCBLQgorICAgICAgICAjICAoIFhYWD0yNTQgZm9yIGEgdHlwaWNhbCBweXRob24gZXh0ZW5zaW9uKSkKKyAgICAgICAgaWYgbm90IGRlYnVnOgorICAgICAgICAgICAgZXh0cmFfcHJlYXJncy5hcHBlbmQoIi1zIikKKworICAgICAgICBzdXBlcihDeWd3aW5DQ29tcGlsZXIsIHNlbGYpLmxpbmsoCisgICAgICAgICAgICB0YXJnZXRfZGVzYywgb2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZGlyLCBsaWJyYXJpZXMsCisgICAgICAgICAgICBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzLAorICAgICAgICAgICAgTm9uZSwgIyBleHBvcnRfc3ltYm9scywgd2UgZG8gdGhpcyBpbiBvdXIgZGVmLWZpbGUKKyAgICAgICAgICAgIGRlYnVnLCBleHRyYV9wcmVhcmdzLCBleHRyYV9wb3N0YXJncywgYnVpbGRfdGVtcCwgdGFyZ2V0X2xhbmcpCisKKyAgICAjIC0tIE1pc2NlbGxhbmVvdXMgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgZGVmIG9iamVjdF9maWxlbmFtZXMoc2VsZiwgc291cmNlX2ZpbGVuYW1lcywgc3RyaXBfZGlyPUZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9JycpOgorICAgICAgICAiIiJBZGRzIHN1cHBvcnRzIGZvciByYyBhbmQgcmVzIGZpbGVzLiIiIgorICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBvdXRwdXRfZGlyID0gJycKKyAgICAgICAgb2JqX25hbWVzID0gW10KKyAgICAgICAgZm9yIHNyY19uYW1lIGluIHNvdXJjZV9maWxlbmFtZXM6CisgICAgICAgICAgICAjIHVzZSBub3JtY2FzZSB0byBtYWtlIHN1cmUgJy5yYycgaXMgcmVhbGx5ICcucmMnIGFuZCBub3QgJy5SQycKKyAgICAgICAgICAgIGJhc2UsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQob3MucGF0aC5ub3JtY2FzZShzcmNfbmFtZSkpCisgICAgICAgICAgICBpZiBleHQgbm90IGluIChzZWxmLnNyY19leHRlbnNpb25zICsgWycucmMnLCcucmVzJ10pOgorICAgICAgICAgICAgICAgIHJhaXNlIFVua25vd25GaWxlRXJyb3IoInVua25vd24gZmlsZSB0eXBlICclcycgKGZyb20gJyVzJykiICUgKGV4dCwgc3JjX25hbWUpKQorICAgICAgICAgICAgaWYgc3RyaXBfZGlyOgorICAgICAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLmJhc2VuYW1lKGJhc2UpCisgICAgICAgICAgICBpZiBleHQgaW4gKCcucmVzJywgJy5yYycpOgorICAgICAgICAgICAgICAgICMgdGhlc2UgbmVlZCB0byBiZSBjb21waWxlZCB0byBvYmplY3QgZmlsZXMKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBleHQgKyBzZWxmLm9ial9leHRlbnNpb24pKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBzZWxmLm9ial9leHRlbnNpb24pKQorICAgICAgICByZXR1cm4gb2JqX25hbWVzCisKKyMgdGhlIHNhbWUgYXMgY3lnd2luIHBsdXMgc29tZSBhZGRpdGlvbmFsIHBhcmFtZXRlcnMKK2NsYXNzIE1pbmd3MzJDQ29tcGlsZXIoQ3lnd2luQ0NvbXBpbGVyKToKKyAgICAiIiIgSGFuZGxlcyB0aGUgTWluZ3czMiBwb3J0IG9mIHRoZSBHTlUgQyBjb21waWxlciB0byBXaW5kb3dzLgorICAgICIiIgorICAgIG5hbWUgPSAnbWluZ3czMicKKyAgICBkZXNjcmlwdGlvbiA9ICdNaW5HVzMyIGNvbXBpbGVyJworCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRyeV9ydW49RmFsc2UsIGZvcmNlPUZhbHNlKToKKyAgICAgICAgc3VwZXIoTWluZ3czMkNDb21waWxlciwgc2VsZikuX19pbml0X18oZHJ5X3J1biwgZm9yY2UpCisKKyAgICAgICAgIyBsZF92ZXJzaW9uID49ICIyLjEzIiBzdXBwb3J0IC1zaGFyZWQgc28gdXNlIGl0IGluc3RlYWQgb2YKKyAgICAgICAgIyAtbWRsbCAtc3RhdGljCisgICAgICAgIGlmIHNlbGYubGRfdmVyc2lvbiA+PSAiMi4xMyI6CisgICAgICAgICAgICBzaGFyZWRfb3B0aW9uID0gIi1zaGFyZWQiCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzaGFyZWRfb3B0aW9uID0gIi1tZGxsIC1zdGF0aWMiCisKKyAgICAgICAgIyBBIHJlYWwgbWluZ3czMiBkb2Vzbid0IG5lZWQgdG8gc3BlY2lmeSBhIGRpZmZlcmVudCBlbnRyeSBwb2ludCwKKyAgICAgICAgIyBidXQgY3lnd2luIDIuOTEuNTcgaW4gbm8tY3lnd2luLW1vZGUgbmVlZHMgaXQuCisgICAgICAgIGlmIHNlbGYuZ2NjX3ZlcnNpb24gPD0gIjIuOTEuNTciOgorICAgICAgICAgICAgZW50cnlfcG9pbnQgPSAnLS1lbnRyeSBfRGxsTWFpbkAxMicKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGVudHJ5X3BvaW50ID0gJycKKworICAgICAgICBzZWxmLnNldF9leGVjdXRhYmxlcyhjb21waWxlcj0nZ2NjIC1tbm8tY3lnd2luIC1PIC1XYWxsJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZXJfc289J2djYyAtbW5vLWN5Z3dpbiAtbWRsbCAtTyAtV2FsbCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGVyX2N4eD0nZysrIC1tbm8tY3lnd2luIC1PIC1XYWxsJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlua2VyX2V4ZT0nZ2NjIC1tbm8tY3lnd2luJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlua2VyX3NvPSclcyAtbW5vLWN5Z3dpbiAlcyAlcycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIChzZWxmLmxpbmtlcl9kbGwsIHNoYXJlZF9vcHRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlfcG9pbnQpKQorICAgICAgICAjIE1heWJlIHdlIHNob3VsZCBhbHNvIGFwcGVuZCAtbXRocmVhZHMsIGJ1dCB0aGVuIHRoZSBmaW5pc2hlZAorICAgICAgICAjIGRsbHMgbmVlZCBhbm90aGVyIGRsbCAobWluZ3dtMTAuZGxsIHNlZSBNaW5ndzMyIGRvY3MpCisgICAgICAgICMgKC1tdGhyZWFkczogU3VwcG9ydCB0aHJlYWQtc2FmZSBleGNlcHRpb24gaGFuZGxpbmcgb24gYE1pbmd3MzInKQorCisgICAgICAgICMgbm8gYWRkaXRpb25hbCBsaWJyYXJpZXMgbmVlZGVkCisgICAgICAgIHNlbGYuZGxsX2xpYnJhcmllcz1bXQorCisgICAgICAgICMgSW5jbHVkZSB0aGUgYXBwcm9wcmlhdGUgTVNWQyBydW50aW1lIGxpYnJhcnkgaWYgUHl0aG9uIHdhcyBidWlsdAorICAgICAgICAjIHdpdGggTVNWQyA3LjAgb3IgbGF0ZXIuCisgICAgICAgIHNlbGYuZGxsX2xpYnJhcmllcyA9IGdldF9tc3ZjcigpCisKKyMgQmVjYXVzZSB0aGVzZSBjb21waWxlcnMgYXJlbid0IGNvbmZpZ3VyZWQgaW4gUHl0aG9uJ3MgcHljb25maWcuaCBmaWxlIGJ5CisjIGRlZmF1bHQsIHdlIHNob3VsZCBhdCBsZWFzdCB3YXJuIHRoZSB1c2VyIGlmIGhlIGlzIHVzaW5nIGEgdW5tb2RpZmllZAorIyB2ZXJzaW9uLgorCitDT05GSUdfSF9PSyA9ICJvayIKK0NPTkZJR19IX05PVE9LID0gIm5vdCBvayIKK0NPTkZJR19IX1VOQ0VSVEFJTiA9ICJ1bmNlcnRhaW4iCisKK2RlZiBjaGVja19jb25maWdfaCgpOgorICAgICIiIkNoZWNrIGlmIHRoZSBjdXJyZW50IFB5dGhvbiBpbnN0YWxsYXRpb24gYXBwZWFycyBhbWVuYWJsZSB0byBidWlsZGluZworICAgIGV4dGVuc2lvbnMgd2l0aCBHQ0MuCisKKyAgICBSZXR1cm5zIGEgdHVwbGUgKHN0YXR1cywgZGV0YWlscyksIHdoZXJlICdzdGF0dXMnIGlzIG9uZSBvZiB0aGUgZm9sbG93aW5nCisgICAgY29uc3RhbnRzOgorCisgICAgLSBDT05GSUdfSF9PSzogYWxsIGlzIHdlbGwsIGdvIGFoZWFkIGFuZCBjb21waWxlCisgICAgLSBDT05GSUdfSF9OT1RPSzogZG9lc24ndCBsb29rIGdvb2QKKyAgICAtIENPTkZJR19IX1VOQ0VSVEFJTjogbm90IHN1cmUgLS0gdW5hYmxlIHRvIHJlYWQgcHljb25maWcuaAorCisgICAgJ2RldGFpbHMnIGlzIGEgaHVtYW4tcmVhZGFibGUgc3RyaW5nIGV4cGxhaW5pbmcgdGhlIHNpdHVhdGlvbi4KKworICAgIE5vdGUgdGhlcmUgYXJlIHR3byB3YXlzIHRvIGNvbmNsdWRlICJPSyI6IGVpdGhlciAnc3lzLnZlcnNpb24nIGNvbnRhaW5zCisgICAgdGhlIHN0cmluZyAiR0NDIiAoaW1wbHlpbmcgdGhhdCB0aGlzIFB5dGhvbiB3YXMgYnVpbHQgd2l0aCBHQ0MpLCBvciB0aGUKKyAgICBpbnN0YWxsZWQgInB5Y29uZmlnLmgiIGNvbnRhaW5zIHRoZSBzdHJpbmcgIl9fR05VQ19fIi4KKyAgICAiIiIKKworICAgICMgWFhYIHNpbmNlIHRoaXMgZnVuY3Rpb24gYWxzbyBjaGVja3Mgc3lzLnZlcnNpb24sIGl0J3Mgbm90IHN0cmljdGx5IGEKKyAgICAjICJweWNvbmZpZy5oIiBjaGVjayAtLSBzaG91bGQgcHJvYmFibHkgYmUgcmVuYW1lZC4uLgorICAgICMgaWYgc3lzLnZlcnNpb24gY29udGFpbnMgR0NDIHRoZW4gcHl0aG9uIHdhcyBjb21waWxlZCB3aXRoIEdDQywgYW5kIHRoZQorICAgICMgcHljb25maWcuaCBmaWxlIHNob3VsZCBiZSBPSworICAgIGlmICJHQ0MiIGluIHN5cy52ZXJzaW9uOgorICAgICAgICByZXR1cm4gQ09ORklHX0hfT0ssICJzeXMudmVyc2lvbiBtZW50aW9ucyAnR0NDJyIKKworICAgICMgbGV0J3Mgc2VlIGlmIF9fR05VQ19fIGlzIG1lbnRpb25lZCBpbiBweXRob24uaAorICAgIGZuID0gc3lzY29uZmlnLmdldF9jb25maWdfaF9maWxlbmFtZSgpCisgICAgdHJ5OgorICAgICAgICB3aXRoIG9wZW4oZm4pIGFzIGNvbmZpZ19oOgorICAgICAgICAgICAgaWYgIl9fR05VQ19fIiBpbiBjb25maWdfaC5yZWFkKCk6CisgICAgICAgICAgICAgICAgcmV0dXJuIENPTkZJR19IX09LLCAiJyVzJyBtZW50aW9ucyAnX19HTlVDX18nIiAlIGZuCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJldHVybiBDT05GSUdfSF9OT1RPSywgIiclcycgZG9lcyBub3QgbWVudGlvbiAnX19HTlVDX18nIiAlIGZuCisgICAgZXhjZXB0IElPRXJyb3IgYXMgZXhjOgorICAgICAgICByZXR1cm4gKENPTkZJR19IX1VOQ0VSVEFJTiwKKyAgICAgICAgICAgICAgICAiY291bGRuJ3QgcmVhZCAnJXMnOiAlcyIgJSAoZm4sIGV4Yy5zdHJlcnJvcikpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2V4dGVuc2lvbi5weSBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvZXh0ZW5zaW9uLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2ZjZlOWEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2V4dGVuc2lvbi5weQpAQCAtMCwwICsxLDEyMSBAQAorIiIiQ2xhc3MgcmVwcmVzZW50aW5nIEMvQysrIGV4dGVuc2lvbiBtb2R1bGVzLiIiIgorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCisKKyMgVGhpcyBjbGFzcyBpcyByZWFsbHkgb25seSB1c2VkIGJ5IHRoZSAiYnVpbGRfZXh0IiBjb21tYW5kLCBzbyBpdCBtaWdodAorIyBtYWtlIHNlbnNlIHRvIHB1dCBpdCBpbiBkaXN0dXRpbHMuY29tbWFuZC5idWlsZF9leHQuICBIb3dldmVyLCB0aGF0CisjIG1vZHVsZSBpcyBhbHJlYWR5IGJpZyBlbm91Z2gsIGFuZCBJIHdhbnQgdG8gbWFrZSB0aGlzIGNsYXNzIGEgYml0IG1vcmUKKyMgY29tcGxleCB0byBzaW1wbGlmeSBzb21lIGNvbW1vbiBjYXNlcyAoImZvbyIgbW9kdWxlIGluICJmb28uYyIpIGFuZCBkbworIyBiZXR0ZXIgZXJyb3ItY2hlY2tpbmcgKCJmb28uYyIgYWN0dWFsbHkgZXhpc3RzKS4KKyMKKyMgQWxzbywgcHV0dGluZyB0aGlzIGluIGJ1aWxkX2V4dC5weSBtZWFucyBldmVyeSBzZXR1cCBzY3JpcHQgd291bGQgaGF2ZSB0bworIyBpbXBvcnQgdGhhdCBsYXJnZS1pc2ggbW9kdWxlIChpbmRpcmVjdGx5LCB0aHJvdWdoIGRpc3R1dGlscy5jb3JlKSBpbgorIyBvcmRlciB0byBkbyBhbnl0aGluZy4KKworCitjbGFzcyBFeHRlbnNpb246CisgICAgIiIiSnVzdCBhIGNvbGxlY3Rpb24gb2YgYXR0cmlidXRlcyB0aGF0IGRlc2NyaWJlcyBhbiBleHRlbnNpb24KKyAgICBtb2R1bGUgYW5kIGV2ZXJ5dGhpbmcgbmVlZGVkIHRvIGJ1aWxkIGl0IChob3BlZnVsbHkgaW4gYSBwb3J0YWJsZQorICAgIHdheSwgYnV0IHRoZXJlIGFyZSBob29rcyB0aGF0IGxldCB5b3UgYmUgYXMgdW5wb3J0YWJsZSBhcyB5b3UgbmVlZCkuCisKKyAgICBJbnN0YW5jZSBhdHRyaWJ1dGVzOgorICAgICAgbmFtZSA6IHN0cmluZworICAgICAgICB0aGUgZnVsbCBuYW1lIG9mIHRoZSBleHRlbnNpb24sIGluY2x1ZGluZyBhbnkgcGFja2FnZXMgLS0gaWUuCisgICAgICAgICpub3QqIGEgZmlsZW5hbWUgb3IgcGF0aG5hbWUsIGJ1dCBQeXRob24gZG90dGVkIG5hbWUKKyAgICAgIHNvdXJjZXMgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIHNvdXJjZSBmaWxlbmFtZXMsIHJlbGF0aXZlIHRvIHRoZSBkaXN0cmlidXRpb24gcm9vdAorICAgICAgICAod2hlcmUgdGhlIHNldHVwIHNjcmlwdCBsaXZlcyksIGluIFVuaXggZm9ybSAoc2xhc2gtc2VwYXJhdGVkKQorICAgICAgICBmb3IgcG9ydGFiaWxpdHkuICBTb3VyY2UgZmlsZXMgbWF5IGJlIEMsIEMrKywgU1dJRyAoLmkpLAorICAgICAgICBwbGF0Zm9ybS1zcGVjaWZpYyByZXNvdXJjZSBmaWxlcywgb3Igd2hhdGV2ZXIgZWxzZSBpcyByZWNvZ25pemVkCisgICAgICAgIGJ5IHRoZSAiYnVpbGRfZXh0IiBjb21tYW5kIGFzIHNvdXJjZSBmb3IgYSBQeXRob24gZXh0ZW5zaW9uLgorICAgICAgaW5jbHVkZV9kaXJzIDogW3N0cmluZ10KKyAgICAgICAgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIEMvQysrIGhlYWRlciBmaWxlcyAoaW4gVW5peAorICAgICAgICBmb3JtIGZvciBwb3J0YWJpbGl0eSkKKyAgICAgIGRlZmluZV9tYWNyb3MgOiBbKG5hbWUgOiBzdHJpbmcsIHZhbHVlIDogc3RyaW5nfE5vbmUpXQorICAgICAgICBsaXN0IG9mIG1hY3JvcyB0byBkZWZpbmU7IGVhY2ggbWFjcm8gaXMgZGVmaW5lZCB1c2luZyBhIDItdHVwbGUsCisgICAgICAgIHdoZXJlICd2YWx1ZScgaXMgZWl0aGVyIHRoZSBzdHJpbmcgdG8gZGVmaW5lIGl0IHRvIG9yIE5vbmUgdG8KKyAgICAgICAgZGVmaW5lIGl0IHdpdGhvdXQgYSBwYXJ0aWN1bGFyIHZhbHVlIChlcXVpdmFsZW50IG9mICIjZGVmaW5lCisgICAgICAgIEZPTyIgaW4gc291cmNlIG9yIC1ERk9PIG9uIFVuaXggQyBjb21waWxlciBjb21tYW5kIGxpbmUpCisgICAgICB1bmRlZl9tYWNyb3MgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIG1hY3JvcyB0byB1bmRlZmluZSBleHBsaWNpdGx5CisgICAgICBsaWJyYXJ5X2RpcnMgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIHNlYXJjaCBmb3IgQy9DKysgbGlicmFyaWVzIGF0IGxpbmsgdGltZQorICAgICAgbGlicmFyaWVzIDogW3N0cmluZ10KKyAgICAgICAgbGlzdCBvZiBsaWJyYXJ5IG5hbWVzIChub3QgZmlsZW5hbWVzIG9yIHBhdGhzKSB0byBsaW5rIGFnYWluc3QKKyAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzIDogW3N0cmluZ10KKyAgICAgICAgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIEMvQysrIGxpYnJhcmllcyBhdCBydW4gdGltZQorICAgICAgICAoZm9yIHNoYXJlZCBleHRlbnNpb25zLCB0aGlzIGlzIHdoZW4gdGhlIGV4dGVuc2lvbiBpcyBsb2FkZWQpCisgICAgICBleHRyYV9vYmplY3RzIDogW3N0cmluZ10KKyAgICAgICAgbGlzdCBvZiBleHRyYSBmaWxlcyB0byBsaW5rIHdpdGggKGVnLiBvYmplY3QgZmlsZXMgbm90IGltcGxpZWQKKyAgICAgICAgYnkgJ3NvdXJjZXMnLCBzdGF0aWMgbGlicmFyeSB0aGF0IG11c3QgYmUgZXhwbGljaXRseSBzcGVjaWZpZWQsCisgICAgICAgIGJpbmFyeSByZXNvdXJjZSBmaWxlcywgZXRjLikKKyAgICAgIGV4dHJhX2NvbXBpbGVfYXJncyA6IFtzdHJpbmddCisgICAgICAgIGFueSBleHRyYSBwbGF0Zm9ybS0gYW5kIGNvbXBpbGVyLXNwZWNpZmljIGluZm9ybWF0aW9uIHRvIHVzZQorICAgICAgICB3aGVuIGNvbXBpbGluZyB0aGUgc291cmNlIGZpbGVzIGluICdzb3VyY2VzJy4gIEZvciBwbGF0Zm9ybXMgYW5kCisgICAgICAgIGNvbXBpbGVycyB3aGVyZSAiY29tbWFuZCBsaW5lIiBtYWtlcyBzZW5zZSwgdGhpcyBpcyB0eXBpY2FsbHkgYQorICAgICAgICBsaXN0IG9mIGNvbW1hbmQtbGluZSBhcmd1bWVudHMsIGJ1dCBmb3Igb3RoZXIgcGxhdGZvcm1zIGl0IGNvdWxkCisgICAgICAgIGJlIGFueXRoaW5nLgorICAgICAgZXh0cmFfbGlua19hcmdzIDogW3N0cmluZ10KKyAgICAgICAgYW55IGV4dHJhIHBsYXRmb3JtLSBhbmQgY29tcGlsZXItc3BlY2lmaWMgaW5mb3JtYXRpb24gdG8gdXNlCisgICAgICAgIHdoZW4gbGlua2luZyBvYmplY3QgZmlsZXMgdG9nZXRoZXIgdG8gY3JlYXRlIHRoZSBleHRlbnNpb24gKG9yCisgICAgICAgIHRvIGNyZWF0ZSBhIG5ldyBzdGF0aWMgUHl0aG9uIGludGVycHJldGVyKS4gIFNpbWlsYXIKKyAgICAgICAgaW50ZXJwcmV0YXRpb24gYXMgZm9yICdleHRyYV9jb21waWxlX2FyZ3MnLgorICAgICAgZXhwb3J0X3N5bWJvbHMgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIHN5bWJvbHMgdG8gYmUgZXhwb3J0ZWQgZnJvbSBhIHNoYXJlZCBleHRlbnNpb24uICBOb3QKKyAgICAgICAgdXNlZCBvbiBhbGwgcGxhdGZvcm1zLCBhbmQgbm90IGdlbmVyYWxseSBuZWNlc3NhcnkgZm9yIFB5dGhvbgorICAgICAgICBleHRlbnNpb25zLCB3aGljaCB0eXBpY2FsbHkgZXhwb3J0IGV4YWN0bHkgb25lIHN5bWJvbDogImluaXQiICsKKyAgICAgICAgZXh0ZW5zaW9uX25hbWUuCisgICAgICBzd2lnX29wdHMgOiBbc3RyaW5nXQorICAgICAgICBhbnkgZXh0cmEgb3B0aW9ucyB0byBwYXNzIHRvIFNXSUcgaWYgYSBzb3VyY2UgZmlsZSBoYXMgdGhlIC5pCisgICAgICAgIGV4dGVuc2lvbi4KKyAgICAgIGRlcGVuZHMgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIGZpbGVzIHRoYXQgdGhlIGV4dGVuc2lvbiBkZXBlbmRzIG9uCisgICAgICBsYW5ndWFnZSA6IHN0cmluZworICAgICAgICBleHRlbnNpb24gbGFuZ3VhZ2UgKGkuZS4gImMiLCAiYysrIiwgIm9iamMiKS4gV2lsbCBiZSBkZXRlY3RlZAorICAgICAgICBmcm9tIHRoZSBzb3VyY2UgZXh0ZW5zaW9ucyBpZiBub3QgcHJvdmlkZWQuCisgICAgICBvcHRpb25hbCA6IGJvb2xlYW4KKyAgICAgICAgc3BlY2lmaWVzIHRoYXQgYSBidWlsZCBmYWlsdXJlIGluIHRoZSBleHRlbnNpb24gc2hvdWxkIG5vdCBhYm9ydCB0aGUKKyAgICAgICAgYnVpbGQgcHJvY2VzcywgYnV0IHNpbXBseSBub3QgaW5zdGFsbCB0aGUgZmFpbGluZyBleHRlbnNpb24uCisgICAgIiIiCisKKyAgICAjICoqa3dhcmdzIGFyZSBhbGxvd2VkIHNvIHRoYXQgYSB3YXJuaW5nIGlzIGVtaXR0ZWQgaW5zdGVhZCBvZiBhbgorICAgICMgZXhjZXB0aW9uCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIHNvdXJjZXMsIGluY2x1ZGVfZGlycz1Ob25lLCBkZWZpbmVfbWFjcm9zPU5vbmUsCisgICAgICAgICAgICAgICAgIHVuZGVmX21hY3Jvcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgbGlicmFyaWVzPU5vbmUsCisgICAgICAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzPU5vbmUsIGV4dHJhX29iamVjdHM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgZXh0cmFfY29tcGlsZV9hcmdzPU5vbmUsIGV4dHJhX2xpbmtfYXJncz1Ob25lLAorICAgICAgICAgICAgICAgICBleHBvcnRfc3ltYm9scz1Ob25lLCBzd2lnX29wdHM9Tm9uZSwgZGVwZW5kcz1Ob25lLAorICAgICAgICAgICAgICAgICBsYW5ndWFnZT1Ob25lLCBvcHRpb25hbD1Ob25lLCAqKmt3KToKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UobmFtZSwgc3RyKToKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCInbmFtZScgbXVzdCBiZSBhIHN0cmluZyIpCisKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc291cmNlcywgbGlzdCk6CisgICAgICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcigiJ3NvdXJjZXMnIG11c3QgYmUgYSBsaXN0IG9mIHN0cmluZ3MiKQorCisgICAgICAgIGZvciB2IGluIHNvdXJjZXM6CisgICAgICAgICAgICBpZiBub3QgaXNpbnN0YW5jZSh2LCBzdHIpOgorICAgICAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCInc291cmNlcycgbXVzdCBiZSBhIGxpc3Qgb2Ygc3RyaW5ncyIpCisKKyAgICAgICAgc2VsZi5uYW1lID0gbmFtZQorICAgICAgICBzZWxmLnNvdXJjZXMgPSBzb3VyY2VzCisgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzID0gaW5jbHVkZV9kaXJzIG9yIFtdCisgICAgICAgIHNlbGYuZGVmaW5lX21hY3JvcyA9IGRlZmluZV9tYWNyb3Mgb3IgW10KKyAgICAgICAgc2VsZi51bmRlZl9tYWNyb3MgPSB1bmRlZl9tYWNyb3Mgb3IgW10KKyAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMgPSBsaWJyYXJ5X2RpcnMgb3IgW10KKyAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBsaWJyYXJpZXMgb3IgW10KKyAgICAgICAgc2VsZi5ydW50aW1lX2xpYnJhcnlfZGlycyA9IHJ1bnRpbWVfbGlicmFyeV9kaXJzIG9yIFtdCisgICAgICAgIHNlbGYuZXh0cmFfb2JqZWN0cyA9IGV4dHJhX29iamVjdHMgb3IgW10KKyAgICAgICAgc2VsZi5leHRyYV9jb21waWxlX2FyZ3MgPSBleHRyYV9jb21waWxlX2FyZ3Mgb3IgW10KKyAgICAgICAgc2VsZi5leHRyYV9saW5rX2FyZ3MgPSBleHRyYV9saW5rX2FyZ3Mgb3IgW10KKyAgICAgICAgc2VsZi5leHBvcnRfc3ltYm9scyA9IGV4cG9ydF9zeW1ib2xzIG9yIFtdCisgICAgICAgIHNlbGYuc3dpZ19vcHRzID0gc3dpZ19vcHRzIG9yIFtdCisgICAgICAgIHNlbGYuZGVwZW5kcyA9IGRlcGVuZHMgb3IgW10KKyAgICAgICAgc2VsZi5sYW5ndWFnZSA9IGxhbmd1YWdlCisgICAgICAgIHNlbGYub3B0aW9uYWwgPSBvcHRpb25hbAorCisgICAgICAgICMgSWYgdGhlcmUgYXJlIHVua25vd24ga2V5d29yZCBvcHRpb25zLCB3YXJuIGFib3V0IHRoZW0KKyAgICAgICAgaWYgbGVuKGt3KSA+IDA6CisgICAgICAgICAgICBvcHRpb25zID0gW3JlcHIob3B0aW9uKSBmb3Igb3B0aW9uIGluIGt3XQorICAgICAgICAgICAgb3B0aW9ucyA9ICcsICcuam9pbihzb3J0ZWQob3B0aW9ucykpCisgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAndW5rbm93biBhcmd1bWVudHMgZ2l2ZW4gdG8gRXh0ZW5zaW9uOiAlcycsIG9wdGlvbnMpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL21zdmM5Y29tcGlsZXIucHkgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL21zdmM5Y29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDI5YWE3NwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvbXN2Yzljb21waWxlci5weQpAQCAtMCwwICsxLDcyMCBAQAorIiIiQ0NvbXBpbGVyIGltcGxlbWVudGF0aW9uIGZvciB0aGUgTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gMjAwOCBjb21waWxlci4KKworVGhlIE1TVkNDb21waWxlciBjbGFzcyBpcyBjb21wYXRpYmxlIHdpdGggVlMgMjAwNSBhbmQgVlMgMjAwOC4gIExlZ2FjeQorc3VwcG9ydCBmb3Igb2xkZXIgdmVyc2lvbnMgb2YgVlMgYXJlIGluIHRoZSBtc3ZjY29tcGlsZXIgbW9kdWxlLgorIiIiCisKKyMgV3JpdHRlbiBieSBQZXJyeSBTdG9sbAorIyBoYWNrZWQgYnkgUm9iaW4gQmVja2VyIGFuZCBUaG9tYXMgSGVsbGVyIHRvIGRvIGEgYmV0dGVyIGpvYiBvZgorIyAgIGZpbmRpbmcgRGV2U3R1ZGlvICh0aHJvdWdoIHRoZSByZWdpc3RyeSkKKyMgcG9ydGVkIHRvIFZTMjAwNSBhbmQgVlMgMjAwOCBieSBDaHJpc3RpYW4gSGVpbWVzCitpbXBvcnQgb3MKK2ltcG9ydCBzdWJwcm9jZXNzCitpbXBvcnQgc3lzCitpbXBvcnQgcmUKKworZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCAoUGFja2FnaW5nRXhlY0Vycm9yLCBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29tcGlsZUVycm9yLCBMaWJFcnJvciwgTGlua0Vycm9yKQorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuY2NvbXBpbGVyIGltcG9ydCBDQ29tcGlsZXIKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBnZW5fbGliX29wdGlvbnMKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGdldF9wbGF0Zm9ybQorCitpbXBvcnQgd2lucmVnCisKK1JlZ09wZW5LZXlFeCA9IHdpbnJlZy5PcGVuS2V5RXgKK1JlZ0VudW1LZXkgPSB3aW5yZWcuRW51bUtleQorUmVnRW51bVZhbHVlID0gd2lucmVnLkVudW1WYWx1ZQorUmVnRXJyb3IgPSB3aW5yZWcuZXJyb3IKKworSEtFWVMgPSAod2lucmVnLkhLRVlfVVNFUlMsCisgICAgICAgICB3aW5yZWcuSEtFWV9DVVJSRU5UX1VTRVIsCisgICAgICAgICB3aW5yZWcuSEtFWV9MT0NBTF9NQUNISU5FLAorICAgICAgICAgd2lucmVnLkhLRVlfQ0xBU1NFU19ST09UKQorCitWU19CQVNFID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcVmlzdWFsU3R1ZGlvXCUwLjFmIgorV0lOU0RLX0JBU0UgPSByIlNvZnR3YXJlXE1pY3Jvc29mdFxNaWNyb3NvZnQgU0RLc1xXaW5kb3dzIgorTkVUX0JBU0UgPSByIlNvZnR3YXJlXE1pY3Jvc29mdFwuTkVURnJhbWV3b3JrIgorCisjIEEgbWFwIGtleWVkIGJ5IGdldF9wbGF0Zm9ybSgpIHJldHVybiB2YWx1ZXMgdG8gdmFsdWVzIGFjY2VwdGVkIGJ5CisjICd2Y3ZhcnNhbGwuYmF0Jy4gIE5vdGUgYSBjcm9zcy1jb21waWxlIG1heSBjb21iaW5lIHRoZXNlIChlZywgJ3g4Nl9hbWQ2NCcgaXMKKyMgdGhlIHBhcmFtIHRvIGNyb3NzLWNvbXBpbGUgb24geDg2IHRhcmdldHRpbmcgYW1kNjQuKQorUExBVF9UT19WQ1ZBUlMgPSB7CisgICAgJ3dpbjMyJyA6ICd4ODYnLAorICAgICd3aW4tYW1kNjQnIDogJ2FtZDY0JywKKyAgICAnd2luLWlhNjQnIDogJ2lhNjQnLAorfQorCisKK2NsYXNzIFJlZzoKKyAgICAiIiJIZWxwZXIgY2xhc3MgdG8gcmVhZCB2YWx1ZXMgZnJvbSB0aGUgcmVnaXN0cnkKKyAgICAiIiIKKworICAgIGRlZiBnZXRfdmFsdWUoY2xzLCBwYXRoLCBrZXkpOgorICAgICAgICBmb3IgYmFzZSBpbiBIS0VZUzoKKyAgICAgICAgICAgIGQgPSBjbHMucmVhZF92YWx1ZXMoYmFzZSwgcGF0aCkKKyAgICAgICAgICAgIGlmIGQgYW5kIGtleSBpbiBkOgorICAgICAgICAgICAgICAgIHJldHVybiBkW2tleV0KKyAgICAgICAgcmFpc2UgS2V5RXJyb3Ioa2V5KQorICAgIGdldF92YWx1ZSA9IGNsYXNzbWV0aG9kKGdldF92YWx1ZSkKKworICAgIGRlZiByZWFkX2tleXMoY2xzLCBiYXNlLCBrZXkpOgorICAgICAgICAiIiJSZXR1cm4gbGlzdCBvZiByZWdpc3RyeSBrZXlzLiIiIgorICAgICAgICB0cnk6CisgICAgICAgICAgICBoYW5kbGUgPSBSZWdPcGVuS2V5RXgoYmFzZSwga2V5KQorICAgICAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICBMID0gW10KKyAgICAgICAgaSA9IDAKKyAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBrID0gUmVnRW51bUtleShoYW5kbGUsIGkpCisgICAgICAgICAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIEwuYXBwZW5kKGspCisgICAgICAgICAgICBpICs9IDEKKyAgICAgICAgcmV0dXJuIEwKKyAgICByZWFkX2tleXMgPSBjbGFzc21ldGhvZChyZWFkX2tleXMpCisKKyAgICBkZWYgcmVhZF92YWx1ZXMoY2xzLCBiYXNlLCBrZXkpOgorICAgICAgICAiIiJSZXR1cm4gZGljdCBvZiByZWdpc3RyeSBrZXlzIGFuZCB2YWx1ZXMuCisKKyAgICAgICAgQWxsIG5hbWVzIGFyZSBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlLgorICAgICAgICAiIiIKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgaGFuZGxlID0gUmVnT3BlbktleUV4KGJhc2UsIGtleSkKKyAgICAgICAgZXhjZXB0IFJlZ0Vycm9yOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgZCA9IHt9CisgICAgICAgIGkgPSAwCisgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgbmFtZSwgdmFsdWUsIHR5cGUgPSBSZWdFbnVtVmFsdWUoaGFuZGxlLCBpKQorICAgICAgICAgICAgZXhjZXB0IFJlZ0Vycm9yOgorICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICBuYW1lID0gbmFtZS5sb3dlcigpCisgICAgICAgICAgICBkW2Nscy5jb252ZXJ0X21iY3MobmFtZSldID0gY2xzLmNvbnZlcnRfbWJjcyh2YWx1ZSkKKyAgICAgICAgICAgIGkgKz0gMQorICAgICAgICByZXR1cm4gZAorICAgIHJlYWRfdmFsdWVzID0gY2xhc3NtZXRob2QocmVhZF92YWx1ZXMpCisKKyAgICBkZWYgY29udmVydF9tYmNzKHMpOgorICAgICAgICBkZWMgPSBnZXRhdHRyKHMsICJkZWNvZGUiLCBOb25lKQorICAgICAgICBpZiBkZWMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgcyA9IGRlYygibWJjcyIpCisgICAgICAgICAgICBleGNlcHQgVW5pY29kZUVycm9yOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgcmV0dXJuIHMKKyAgICBjb252ZXJ0X21iY3MgPSBzdGF0aWNtZXRob2QoY29udmVydF9tYmNzKQorCitjbGFzcyBNYWNyb0V4cGFuZGVyOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHZlcnNpb24pOgorICAgICAgICBzZWxmLm1hY3JvcyA9IHt9CisgICAgICAgIHNlbGYudnNiYXNlID0gVlNfQkFTRSAlIHZlcnNpb24KKyAgICAgICAgc2VsZi5sb2FkX21hY3Jvcyh2ZXJzaW9uKQorCisgICAgZGVmIHNldF9tYWNybyhzZWxmLCBtYWNybywgcGF0aCwga2V5KToKKyAgICAgICAgc2VsZi5tYWNyb3NbIiQoJXMpIiAlIG1hY3JvXSA9IFJlZy5nZXRfdmFsdWUocGF0aCwga2V5KQorCisgICAgZGVmIGxvYWRfbWFjcm9zKHNlbGYsIHZlcnNpb24pOgorICAgICAgICBzZWxmLnNldF9tYWNybygiVkNJbnN0YWxsRGlyIiwgc2VsZi52c2Jhc2UgKyByIlxTZXR1cFxWQyIsICJwcm9kdWN0ZGlyIikKKyAgICAgICAgc2VsZi5zZXRfbWFjcm8oIlZTSW5zdGFsbERpciIsIHNlbGYudnNiYXNlICsgciJcU2V0dXBcVlMiLCAicHJvZHVjdGRpciIpCisgICAgICAgIHNlbGYuc2V0X21hY3JvKCJGcmFtZXdvcmtEaXIiLCBORVRfQkFTRSwgImluc3RhbGxyb290IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgaWYgdmVyc2lvbiA+PSA4LjA6CisgICAgICAgICAgICAgICAgc2VsZi5zZXRfbWFjcm8oIkZyYW1ld29ya1NES0RpciIsIE5FVF9CQVNFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzZGtpbnN0YWxscm9vdHYyLjAiKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBLZXlFcnJvcigic2RraW5zdGFsbHJvb3R2Mi4wIikKKyAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigKKyIiIlB5dGhvbiB3YXMgYnVpbHQgd2l0aCBWaXN1YWwgU3R1ZGlvIDIwMDg7IGV4dGVuc2lvbnMgbXVzdCBiZSBidWlsdCB3aXRoIGEKK2NvbXBpbGVyIHRoYW4gY2FuIGdlbmVyYXRlIGNvbXBhdGlibGUgYmluYXJpZXMuIFZpc3VhbCBTdHVkaW8gMjAwOCB3YXMgbm90Citmb3VuZCBvbiB0aGlzIHN5c3RlbS4gSWYgeW91IGhhdmUgQ3lnd2luIGluc3RhbGxlZCwgeW91IGNhbiB0cnkgY29tcGlsaW5nCit3aXRoIE1pbmdXMzIsIGJ5IHBhc3NpbmcgIi1jIG1pbmd3MzIiIHRvIHB5c2V0dXAuIiIiKQorCisgICAgICAgIGlmIHZlcnNpb24gPj0gOS4wOgorICAgICAgICAgICAgc2VsZi5zZXRfbWFjcm8oIkZyYW1ld29ya1ZlcnNpb24iLCBzZWxmLnZzYmFzZSwgImNsciB2ZXJzaW9uIikKKyAgICAgICAgICAgIHNlbGYuc2V0X21hY3JvKCJXaW5kb3dzU2RrRGlyIiwgV0lOU0RLX0JBU0UsICJjdXJyZW50aW5zdGFsbGZvbGRlciIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBwID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcTkVUIEZyYW1ld29yayBTZXR1cFxQcm9kdWN0IgorICAgICAgICAgICAgZm9yIGJhc2UgaW4gSEtFWVM6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBoID0gUmVnT3BlbktleUV4KGJhc2UsIHApCisgICAgICAgICAgICAgICAgZXhjZXB0IFJlZ0Vycm9yOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGtleSA9IFJlZ0VudW1LZXkoaCwgMCkKKyAgICAgICAgICAgICAgICBkID0gUmVnLmdldF92YWx1ZShiYXNlLCByIiVzXCVzIiAlIChwLCBrZXkpKQorICAgICAgICAgICAgICAgIHNlbGYubWFjcm9zWyIkKEZyYW1ld29ya1ZlcnNpb24pIl0gPSBkWyJ2ZXJzaW9uIl0KKworICAgIGRlZiBzdWIoc2VsZiwgcyk6CisgICAgICAgIGZvciBrLCB2IGluIHNlbGYubWFjcm9zLml0ZW1zKCk6CisgICAgICAgICAgICBzID0gcy5yZXBsYWNlKGssIHYpCisgICAgICAgIHJldHVybiBzCisKK2RlZiBnZXRfYnVpbGRfdmVyc2lvbigpOgorICAgICIiIlJldHVybiB0aGUgdmVyc2lvbiBvZiBNU1ZDIHRoYXQgd2FzIHVzZWQgdG8gYnVpbGQgUHl0aG9uLgorCisgICAgRm9yIFB5dGhvbiAyLjMgYW5kIHVwLCB0aGUgdmVyc2lvbiBudW1iZXIgaXMgaW5jbHVkZWQgaW4KKyAgICBzeXMudmVyc2lvbi4gIEZvciBlYXJsaWVyIHZlcnNpb25zLCBhc3N1bWUgdGhlIGNvbXBpbGVyIGlzIE1TVkMgNi4KKyAgICAiIiIKKyAgICBwcmVmaXggPSAiTVNDIHYuIgorICAgIGkgPSBzeXMudmVyc2lvbi5maW5kKHByZWZpeCkKKyAgICBpZiBpID09IC0xOgorICAgICAgICByZXR1cm4gNgorICAgIGkgPSBpICsgbGVuKHByZWZpeCkKKyAgICBzLCByZXN0ID0gc3lzLnZlcnNpb25baTpdLnNwbGl0KCIgIiwgMSkKKyAgICBtYWpvclZlcnNpb24gPSBpbnQoc1s6LTJdKSAtIDYKKyAgICBtaW5vclZlcnNpb24gPSBpbnQoc1syOjNdKSAvIDEwLjAKKyAgICAjIEkgZG9uJ3QgdGhpbmsgcGF0aHMgYXJlIGFmZmVjdGVkIGJ5IG1pbm9yIHZlcnNpb24gaW4gdmVyc2lvbiA2CisgICAgaWYgbWFqb3JWZXJzaW9uID09IDY6CisgICAgICAgIG1pbm9yVmVyc2lvbiA9IDAKKyAgICBpZiBtYWpvclZlcnNpb24gPj0gNjoKKyAgICAgICAgcmV0dXJuIG1ham9yVmVyc2lvbiArIG1pbm9yVmVyc2lvbgorICAgICMgZWxzZSB3ZSBkb24ndCBrbm93IHdoYXQgdmVyc2lvbiBvZiB0aGUgY29tcGlsZXIgdGhpcyBpcworICAgIHJldHVybiBOb25lCisKK2RlZiBub3JtYWxpemVfYW5kX3JlZHVjZV9wYXRocyhwYXRocyk6CisgICAgIiIiUmV0dXJuIGEgbGlzdCBvZiBub3JtYWxpemVkIHBhdGhzIHdpdGggZHVwbGljYXRlcyByZW1vdmVkLgorCisgICAgVGhlIGN1cnJlbnQgb3JkZXIgb2YgcGF0aHMgaXMgbWFpbnRhaW5lZC4KKyAgICAiIiIKKyAgICAjIFBhdGhzIGFyZSBub3JtYWxpemVkIHNvIHRoaW5ncyBsaWtlOiAgL2EgYW5kIC9hLyBhcmVuJ3QgYm90aCBwcmVzZXJ2ZWQuCisgICAgcmVkdWNlZF9wYXRocyA9IFtdCisgICAgZm9yIHAgaW4gcGF0aHM6CisgICAgICAgIG5wID0gb3MucGF0aC5ub3JtcGF0aChwKQorICAgICAgICAjIFhYWChubm9yd2l0eik6IE8obioqMiksIGlmIHJlZHVjZWRfcGF0aHMgZ2V0cyBsb25nIHBlcmhhcHMgdXNlIGEgc2V0LgorICAgICAgICBpZiBucCBub3QgaW4gcmVkdWNlZF9wYXRoczoKKyAgICAgICAgICAgIHJlZHVjZWRfcGF0aHMuYXBwZW5kKG5wKQorICAgIHJldHVybiByZWR1Y2VkX3BhdGhzCisKK2RlZiByZW1vdmVEdXBsaWNhdGVzKHZhcmlhYmxlKToKKyAgICAiIiJSZW1vdmUgZHVwbGljYXRlIHZhbHVlcyBvZiBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZS4KKyAgICAiIiIKKyAgICBvbGRMaXN0ID0gdmFyaWFibGUuc3BsaXQob3MucGF0aHNlcCkKKyAgICBuZXdMaXN0ID0gW10KKyAgICBmb3IgaSBpbiBvbGRMaXN0OgorICAgICAgICBpZiBpIG5vdCBpbiBuZXdMaXN0OgorICAgICAgICAgICAgbmV3TGlzdC5hcHBlbmQoaSkKKyAgICBuZXdWYXJpYWJsZSA9IG9zLnBhdGhzZXAuam9pbihuZXdMaXN0KQorICAgIHJldHVybiBuZXdWYXJpYWJsZQorCitkZWYgZmluZF92Y3ZhcnNhbGwodmVyc2lvbik6CisgICAgIiIiRmluZCB0aGUgdmN2YXJzYWxsLmJhdCBmaWxlCisKKyAgICBBdCBmaXJzdCBpdCB0cmllcyB0byBmaW5kIHRoZSBwcm9kdWN0ZGlyIG9mIFZTIDIwMDggaW4gdGhlIHJlZ2lzdHJ5LiBJZgorICAgIHRoYXQgZmFpbHMgaXQgZmFsbHMgYmFjayB0byB0aGUgVlM5MENPTU5UT09MUyBlbnYgdmFyLgorICAgICIiIgorICAgIHZzYmFzZSA9IFZTX0JBU0UgJSB2ZXJzaW9uCisgICAgdHJ5OgorICAgICAgICBwcm9kdWN0ZGlyID0gUmVnLmdldF92YWx1ZShyIiVzXFNldHVwXFZDIiAlIHZzYmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInByb2R1Y3RkaXIiKQorICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgbG9nZ2VyLmRlYnVnKCJVbmFibGUgdG8gZmluZCBwcm9kdWN0ZGlyIGluIHJlZ2lzdHJ5IikKKyAgICAgICAgcHJvZHVjdGRpciA9IE5vbmUKKworICAgIGlmIG5vdCBwcm9kdWN0ZGlyIG9yIG5vdCBvcy5wYXRoLmlzZGlyKHByb2R1Y3RkaXIpOgorICAgICAgICB0b29sc2tleSA9ICJWUyUwLmYwQ09NTlRPT0xTIiAlIHZlcnNpb24KKyAgICAgICAgdG9vbHNkaXIgPSBvcy5lbnZpcm9uLmdldCh0b29sc2tleSwgTm9uZSkKKworICAgICAgICBpZiB0b29sc2RpciBhbmQgb3MucGF0aC5pc2Rpcih0b29sc2Rpcik6CisgICAgICAgICAgICBwcm9kdWN0ZGlyID0gb3MucGF0aC5qb2luKHRvb2xzZGlyLCBvcy5wYXJkaXIsIG9zLnBhcmRpciwgIlZDIikKKyAgICAgICAgICAgIHByb2R1Y3RkaXIgPSBvcy5wYXRoLmFic3BhdGgocHJvZHVjdGRpcikKKyAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmlzZGlyKHByb2R1Y3RkaXIpOgorICAgICAgICAgICAgICAgIGxvZ2dlci5kZWJ1ZygiJXMgaXMgbm90IGEgdmFsaWQgZGlyZWN0b3J5IiwgcHJvZHVjdGRpcikKKyAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJlbnYgdmFyICVzIGlzIG5vdCBzZXQgb3IgaW52YWxpZCIsIHRvb2xza2V5KQorICAgIGlmIG5vdCBwcm9kdWN0ZGlyOgorICAgICAgICBsb2dnZXIuZGVidWcoIm5vIHByb2R1Y3RkaXIgZm91bmQiKQorICAgICAgICByZXR1cm4gTm9uZQorICAgIHZjdmFyc2FsbCA9IG9zLnBhdGguam9pbihwcm9kdWN0ZGlyLCAidmN2YXJzYWxsLmJhdCIpCisgICAgaWYgb3MucGF0aC5pc2ZpbGUodmN2YXJzYWxsKToKKyAgICAgICAgcmV0dXJuIHZjdmFyc2FsbAorICAgIGxvZ2dlci5kZWJ1ZygidW5hYmxlIHRvIGZpbmQgdmN2YXJzYWxsLmJhdCIpCisgICAgcmV0dXJuIE5vbmUKKworZGVmIHF1ZXJ5X3ZjdmFyc2FsbCh2ZXJzaW9uLCBhcmNoPSJ4ODYiKToKKyAgICAiIiJMYXVuY2ggdmN2YXJzYWxsLmJhdCBhbmQgcmVhZCB0aGUgc2V0dGluZ3MgZnJvbSBpdHMgZW52aXJvbm1lbnQKKyAgICAiIiIKKyAgICB2Y3ZhcnNhbGwgPSBmaW5kX3ZjdmFyc2FsbCh2ZXJzaW9uKQorICAgIGludGVyZXN0aW5nID0gc2V0KCgiaW5jbHVkZSIsICJsaWIiLCAibGlicGF0aCIsICJwYXRoIikpCisgICAgcmVzdWx0ID0ge30KKworICAgIGlmIHZjdmFyc2FsbCBpcyBOb25lOgorICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKCJVbmFibGUgdG8gZmluZCB2Y3ZhcnNhbGwuYmF0IikKKyAgICBsb2dnZXIuZGVidWcoImNhbGxpbmcgJ3ZjdmFyc2FsbC5iYXQgJXMnICh2ZXJzaW9uPSVzKSIsIGFyY2gsIHZlcnNpb24pCisgICAgcG9wZW4gPSBzdWJwcm9jZXNzLlBvcGVuKCciJXMiICVzICYgc2V0JyAlICh2Y3ZhcnNhbGwsIGFyY2gpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRlcnI9c3VicHJvY2Vzcy5QSVBFKQorCisgICAgc3Rkb3V0LCBzdGRlcnIgPSBwb3Blbi5jb21tdW5pY2F0ZSgpCisgICAgaWYgcG9wZW4ud2FpdCgpICE9IDA6CisgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3Ioc3RkZXJyLmRlY29kZSgibWJjcyIpKQorCisgICAgc3Rkb3V0ID0gc3Rkb3V0LmRlY29kZSgibWJjcyIpCisgICAgZm9yIGxpbmUgaW4gc3Rkb3V0LnNwbGl0KCJcbiIpOgorICAgICAgICBsaW5lID0gUmVnLmNvbnZlcnRfbWJjcyhsaW5lKQorICAgICAgICBpZiAnPScgbm90IGluIGxpbmU6CisgICAgICAgICAgICBjb250aW51ZQorICAgICAgICBsaW5lID0gbGluZS5zdHJpcCgpCisgICAgICAgIGtleSwgdmFsdWUgPSBsaW5lLnNwbGl0KCc9JywgMSkKKyAgICAgICAga2V5ID0ga2V5Lmxvd2VyKCkKKyAgICAgICAgaWYga2V5IGluIGludGVyZXN0aW5nOgorICAgICAgICAgICAgaWYgdmFsdWUuZW5kc3dpdGgob3MucGF0aHNlcCk6CisgICAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZVs6LTFdCisgICAgICAgICAgICByZXN1bHRba2V5XSA9IHJlbW92ZUR1cGxpY2F0ZXModmFsdWUpCisKKyAgICBpZiBsZW4ocmVzdWx0KSAhPSBsZW4oaW50ZXJlc3RpbmcpOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKHN0cihsaXN0KHJlc3VsdCkpKQorCisgICAgcmV0dXJuIHJlc3VsdAorCisjIE1vcmUgZ2xvYmFscworVkVSU0lPTiA9IGdldF9idWlsZF92ZXJzaW9uKCkKK2lmIFZFUlNJT04gPCA4LjA6CisgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiVkMgJTAuMWYgaXMgbm90IHN1cHBvcnRlZCBieSB0aGlzIG1vZHVsZSIgJSBWRVJTSU9OKQorIyBNQUNST1MgPSBNYWNyb0V4cGFuZGVyKFZFUlNJT04pCisKK2NsYXNzIE1TVkNDb21waWxlcihDQ29tcGlsZXIpIDoKKyAgICAiIiJDb25jcmV0ZSBjbGFzcyB0aGF0IGltcGxlbWVudHMgYW4gaW50ZXJmYWNlIHRvIE1pY3Jvc29mdCBWaXN1YWwgQysrLAorICAgICAgIGFzIGRlZmluZWQgYnkgdGhlIENDb21waWxlciBhYnN0cmFjdCBjbGFzcy4iIiIKKworICAgIG5hbWUgPSAnbXN2YycKKyAgICBkZXNjcmlwdGlvbiA9ICdNaWNyb3NvZnQgVmlzdWFsIEMrKycKKworICAgICMgSnVzdCBzZXQgdGhpcyBzbyBDQ29tcGlsZXIncyBjb25zdHJ1Y3RvciBkb2Vzbid0IGJhcmYuICBXZSBjdXJyZW50bHkKKyAgICAjIGRvbid0IHVzZSB0aGUgJ3NldF9leGVjdXRhYmxlcygpJyBidXJlYXVjcmFjeSBwcm92aWRlZCBieSBDQ29tcGlsZXIsCisgICAgIyBhcyBpdCByZWFsbHkgaXNuJ3QgbmVjZXNzYXJ5IGZvciB0aGlzIHNvcnQgb2Ygc2luZ2xlLWNvbXBpbGVyIGNsYXNzLgorICAgICMgV291bGQgYmUgbmljZSB0byBoYXZlIGEgY29uc2lzdGVudCBpbnRlcmZhY2Ugd2l0aCBVbml4Q0NvbXBpbGVyLAorICAgICMgdGhvdWdoLCBzbyBpdCdzIHdvcnRoIHRoaW5raW5nIGFib3V0LgorICAgIGV4ZWN1dGFibGVzID0ge30KKworICAgICMgUHJpdmF0ZSBjbGFzcyBkYXRhIChuZWVkIHRvIGRpc3Rpbmd1aXNoIEMgZnJvbSBDKysgc291cmNlIGZvciBjb21waWxlcikKKyAgICBfY19leHRlbnNpb25zID0gWycuYyddCisgICAgX2NwcF9leHRlbnNpb25zID0gWycuY2MnLCAnLmNwcCcsICcuY3h4J10KKyAgICBfcmNfZXh0ZW5zaW9ucyA9IFsnLnJjJ10KKyAgICBfbWNfZXh0ZW5zaW9ucyA9IFsnLm1jJ10KKworICAgICMgTmVlZGVkIGZvciB0aGUgZmlsZW5hbWUgZ2VuZXJhdGlvbiBtZXRob2RzIHByb3ZpZGVkIGJ5IHRoZQorICAgICMgYmFzZSBjbGFzcywgQ0NvbXBpbGVyLgorICAgIHNyY19leHRlbnNpb25zID0gKF9jX2V4dGVuc2lvbnMgKyBfY3BwX2V4dGVuc2lvbnMgKworICAgICAgICAgICAgICAgICAgICAgIF9yY19leHRlbnNpb25zICsgX21jX2V4dGVuc2lvbnMpCisgICAgcmVzX2V4dGVuc2lvbiA9ICcucmVzJworICAgIG9ial9leHRlbnNpb24gPSAnLm9iaicKKyAgICBzdGF0aWNfbGliX2V4dGVuc2lvbiA9ICcubGliJworICAgIHNoYXJlZF9saWJfZXh0ZW5zaW9uID0gJy5kbGwnCisgICAgc3RhdGljX2xpYl9mb3JtYXQgPSBzaGFyZWRfbGliX2Zvcm1hdCA9ICclcyVzJworICAgIGV4ZV9leHRlbnNpb24gPSAnLmV4ZScKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkcnlfcnVuPUZhbHNlLCBmb3JjZT1GYWxzZSk6CisgICAgICAgIHN1cGVyKE1TVkNDb21waWxlciwgc2VsZikuX19pbml0X18oZHJ5X3J1biwgZm9yY2UpCisgICAgICAgIHNlbGYuX192ZXJzaW9uID0gVkVSU0lPTgorICAgICAgICBzZWxmLl9fcm9vdCA9IHIiU29mdHdhcmVcTWljcm9zb2Z0XFZpc3VhbFN0dWRpbyIKKyAgICAgICAgIyBzZWxmLl9fbWFjcm9zID0gTUFDUk9TCisgICAgICAgIHNlbGYuX19wYXRocyA9IFtdCisgICAgICAgICMgdGFyZ2V0IHBsYXRmb3JtICgucGxhdF9uYW1lIGlzIGNvbnNpc3RlbnQgd2l0aCAnYmRpc3QnKQorICAgICAgICBzZWxmLnBsYXRfbmFtZSA9IE5vbmUKKyAgICAgICAgc2VsZi5fX2FyY2ggPSBOb25lICMgZGVwcmVjYXRlZCBuYW1lCisgICAgICAgIHNlbGYuaW5pdGlhbGl6ZWQgPSBGYWxzZQorCisgICAgZGVmIGluaXRpYWxpemUoc2VsZiwgcGxhdF9uYW1lPU5vbmUpOgorICAgICAgICAjIG11bHRpLWluaXQgbWVhbnMgd2Ugd291bGQgbmVlZCB0byBjaGVjayBwbGF0Zm9ybSBzYW1lIGVhY2ggdGltZS4uLgorICAgICAgICBhc3NlcnQgbm90IHNlbGYuaW5pdGlhbGl6ZWQsICJkb24ndCBpbml0IG11bHRpcGxlIHRpbWVzIgorICAgICAgICBpZiBwbGF0X25hbWUgaXMgTm9uZToKKyAgICAgICAgICAgIHBsYXRfbmFtZSA9IGdldF9wbGF0Zm9ybSgpCisgICAgICAgICMgc2FuaXR5IGNoZWNrIGZvciBwbGF0Zm9ybXMgdG8gcHJldmVudCBvYnNjdXJlIGVycm9ycyBsYXRlci4KKyAgICAgICAgb2tfcGxhdHMgPSAnd2luMzInLCAnd2luLWFtZDY0JywgJ3dpbi1pYTY0JworICAgICAgICBpZiBwbGF0X25hbWUgbm90IGluIG9rX3BsYXRzOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiLS1wbGF0LW5hbWUgbXVzdCBiZSBvbmUgb2YgJXMiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9rX3BsYXRzLCkpCisKKyAgICAgICAgaWYgIkRJU1RVVElMU19VU0VfU0RLIiBpbiBvcy5lbnZpcm9uIGFuZCAiTVNTZGsiIGluIG9zLmVudmlyb24gYW5kIHNlbGYuZmluZF9leGUoImNsLmV4ZSIpOgorICAgICAgICAgICAgIyBBc3N1bWUgdGhhdCB0aGUgU0RLIHNldCB1cCBldmVyeXRoaW5nIGFscmlnaHQ7IGRvbid0IHRyeSB0byBiZQorICAgICAgICAgICAgIyBzbWFydGVyCisgICAgICAgICAgICBzZWxmLmNjID0gImNsLmV4ZSIKKyAgICAgICAgICAgIHNlbGYubGlua2VyID0gImxpbmsuZXhlIgorICAgICAgICAgICAgc2VsZi5saWIgPSAibGliLmV4ZSIKKyAgICAgICAgICAgIHNlbGYucmMgPSAicmMuZXhlIgorICAgICAgICAgICAgc2VsZi5tYyA9ICJtYy5leGUiCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIE9uIHg4NiwgJ3ZjdmFyczMyLmJhdCBhbWQ2NCcgY3JlYXRlcyBhbiBlbnYgdGhhdCBkb2Vzbid0IHdvcms7CisgICAgICAgICAgICAjIHRvIGNyb3NzIGNvbXBpbGUsIHlvdSB1c2UgJ3g4Nl9hbWQ2NCcuCisgICAgICAgICAgICAjIE9uIEFNRDY0LCAndmN2YXJzMzIuYmF0IGFtZDY0JyBpcyBhIG5hdGl2ZSBidWlsZCBlbnY7IHRvIGNyb3NzCisgICAgICAgICAgICAjIGNvbXBpbGUgdXNlICd4ODYnIChpZSwgaXQgcnVucyB0aGUgeDg2IGNvbXBpbGVyIGRpcmVjdGx5KQorICAgICAgICAgICAgIyBObyBpZGVhIGhvdyBpdGFuaXVtIGhhbmRsZXMgdGhpcywgaWYgYXQgYWxsLgorICAgICAgICAgICAgaWYgcGxhdF9uYW1lID09IGdldF9wbGF0Zm9ybSgpIG9yIHBsYXRfbmFtZSA9PSAnd2luMzInOgorICAgICAgICAgICAgICAgICMgbmF0aXZlIGJ1aWxkIG9yIGNyb3NzLWNvbXBpbGUgdG8gd2luMzIKKyAgICAgICAgICAgICAgICBwbGF0X3NwZWMgPSBQTEFUX1RPX1ZDVkFSU1twbGF0X25hbWVdCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICMgY3Jvc3MgY29tcGlsZSBmcm9tIHdpbjMyIC0+IHNvbWUgNjRiaXQKKyAgICAgICAgICAgICAgICBwbGF0X3NwZWMgPSBQTEFUX1RPX1ZDVkFSU1tnZXRfcGxhdGZvcm0oKV0gKyAnXycgKyBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgUExBVF9UT19WQ1ZBUlNbcGxhdF9uYW1lXQorCisgICAgICAgICAgICB2Y19lbnYgPSBxdWVyeV92Y3ZhcnNhbGwoVkVSU0lPTiwgcGxhdF9zcGVjKQorCisgICAgICAgICAgICAjIHRha2UgY2FyZSB0byBvbmx5IHVzZSBzdHJpbmdzIGluIHRoZSBlbnZpcm9ubWVudC4KKyAgICAgICAgICAgIHNlbGYuX19wYXRocyA9IHZjX2VudlsncGF0aCddLnNwbGl0KG9zLnBhdGhzZXApCisgICAgICAgICAgICBvcy5lbnZpcm9uWydsaWInXSA9IHZjX2VudlsnbGliJ10KKyAgICAgICAgICAgIG9zLmVudmlyb25bJ2luY2x1ZGUnXSA9IHZjX2VudlsnaW5jbHVkZSddCisKKyAgICAgICAgICAgIGlmIGxlbihzZWxmLl9fcGF0aHMpID09IDA6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiUHl0aG9uIHdhcyBidWlsdCB3aXRoICVzLCAiCisgICAgICAgICAgICAgICAgICAgICAgICJhbmQgZXh0ZW5zaW9ucyBuZWVkIHRvIGJlIGJ1aWx0IHdpdGggdGhlIHNhbWUgIgorICAgICAgICAgICAgICAgICAgICAgICAidmVyc2lvbiBvZiB0aGUgY29tcGlsZXIsIGJ1dCBpdCBpc24ndCBpbnN0YWxsZWQuIgorICAgICAgICAgICAgICAgICAgICAgICAlIHNlbGYuX19wcm9kdWN0KQorCisgICAgICAgICAgICBzZWxmLmNjID0gc2VsZi5maW5kX2V4ZSgiY2wuZXhlIikKKyAgICAgICAgICAgIHNlbGYubGlua2VyID0gc2VsZi5maW5kX2V4ZSgibGluay5leGUiKQorICAgICAgICAgICAgc2VsZi5saWIgPSBzZWxmLmZpbmRfZXhlKCJsaWIuZXhlIikKKyAgICAgICAgICAgIHNlbGYucmMgPSBzZWxmLmZpbmRfZXhlKCJyYy5leGUiKSAgICMgcmVzb3VyY2UgY29tcGlsZXIKKyAgICAgICAgICAgIHNlbGYubWMgPSBzZWxmLmZpbmRfZXhlKCJtYy5leGUiKSAgICMgbWVzc2FnZSBjb21waWxlcgorICAgICAgICAgICAgI3NlbGYuc2V0X3BhdGhfZW52X3ZhcignbGliJykKKyAgICAgICAgICAgICNzZWxmLnNldF9wYXRoX2Vudl92YXIoJ2luY2x1ZGUnKQorCisgICAgICAgICMgZXh0ZW5kIHRoZSBNU1ZDIHBhdGggd2l0aCB0aGUgY3VycmVudCBwYXRoCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGZvciBwIGluIG9zLmVudmlyb25bJ3BhdGgnXS5zcGxpdCgnOycpOgorICAgICAgICAgICAgICAgIHNlbGYuX19wYXRocy5hcHBlbmQocCkKKyAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBzZWxmLl9fcGF0aHMgPSBub3JtYWxpemVfYW5kX3JlZHVjZV9wYXRocyhzZWxmLl9fcGF0aHMpCisgICAgICAgIG9zLmVudmlyb25bJ3BhdGgnXSA9ICI7Ii5qb2luKHNlbGYuX19wYXRocykKKworICAgICAgICBzZWxmLnByZXByb2Nlc3Nfb3B0aW9ucyA9IE5vbmUKKyAgICAgICAgaWYgc2VsZi5fX2FyY2ggPT0gIng4NiI6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9ucyA9IFsgJy9ub2xvZ28nLCAnL094JywgJy9NRCcsICcvVzMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvRE5ERUJVRyddCisgICAgICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9uc19kZWJ1ZyA9IFsnL25vbG9nbycsICcvT2QnLCAnL01EZCcsICcvVzMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy9aNycsICcvRF9ERUJVRyddCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIFdpbjY0CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9ucyA9IFsgJy9ub2xvZ28nLCAnL094JywgJy9NRCcsICcvVzMnLCAnL0dTLScgLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvRE5ERUJVRyddCisgICAgICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9uc19kZWJ1ZyA9IFsnL25vbG9nbycsICcvT2QnLCAnL01EZCcsICcvVzMnLCAnL0dTLScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL1o3JywgJy9EX0RFQlVHJ10KKworICAgICAgICBzZWxmLmxkZmxhZ3Nfc2hhcmVkID0gWycvRExMJywgJy9ub2xvZ28nLCAnL0lOQ1JFTUVOVEFMOk5PJ10KKyAgICAgICAgaWYgc2VsZi5fX3ZlcnNpb24gPj0gNzoKKyAgICAgICAgICAgIHNlbGYubGRmbGFnc19zaGFyZWRfZGVidWcgPSBbCisgICAgICAgICAgICAgICAgJy9ETEwnLCAnL25vbG9nbycsICcvSU5DUkVNRU5UQUw6bm8nLCAnL0RFQlVHJywgJy9wZGI6Tm9uZScKKyAgICAgICAgICAgICAgICBdCisgICAgICAgIHNlbGYubGRmbGFnc19zdGF0aWMgPSBbICcvbm9sb2dvJ10KKworICAgICAgICBzZWxmLmluaXRpYWxpemVkID0gVHJ1ZQorCisgICAgIyAtLSBXb3JrZXIgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBvYmplY3RfZmlsZW5hbWVzKHNlbGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlX2ZpbGVuYW1lcywKKyAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpcF9kaXI9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj0nJyk6CisgICAgICAgICMgQ29waWVkIGZyb20gY2NvbXBpbGVyLnB5LCBleHRlbmRlZCB0byByZXR1cm4gLnJlcyBhcyAnb2JqZWN0Jy1maWxlCisgICAgICAgICMgZm9yIC5yYyBpbnB1dCBmaWxlCisgICAgICAgIGlmIG91dHB1dF9kaXIgaXMgTm9uZTogb3V0cHV0X2RpciA9ICcnCisgICAgICAgIG9ial9uYW1lcyA9IFtdCisgICAgICAgIGZvciBzcmNfbmFtZSBpbiBzb3VyY2VfZmlsZW5hbWVzOgorICAgICAgICAgICAgYmFzZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChzcmNfbmFtZSkKKyAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLnNwbGl0ZHJpdmUoYmFzZSlbMV0gIyBDaG9wIG9mZiB0aGUgZHJpdmUKKyAgICAgICAgICAgIGJhc2UgPSBiYXNlW29zLnBhdGguaXNhYnMoYmFzZSk6XSAgIyBJZiBhYnMsIGNob3Agb2ZmIGxlYWRpbmcgLworICAgICAgICAgICAgaWYgZXh0IG5vdCBpbiBzZWxmLnNyY19leHRlbnNpb25zOgorICAgICAgICAgICAgICAgICMgQmV0dGVyIHRvIHJhaXNlIGFuIGV4Y2VwdGlvbiBpbnN0ZWFkIG9mIHNpbGVudGx5IGNvbnRpbnVpbmcKKyAgICAgICAgICAgICAgICAjIGFuZCBsYXRlciBjb21wbGFpbiBhYm91dCBzb3VyY2VzIGFuZCB0YXJnZXRzIGhhdmluZworICAgICAgICAgICAgICAgICMgZGlmZmVyZW50IGxlbmd0aHMKKyAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IoIkRvbid0IGtub3cgaG93IHRvIGNvbXBpbGUgJXMiICUgc3JjX25hbWUpCisgICAgICAgICAgICBpZiBzdHJpcF9kaXI6CisgICAgICAgICAgICAgICAgYmFzZSA9IG9zLnBhdGguYmFzZW5hbWUoYmFzZSkKKyAgICAgICAgICAgIGlmIGV4dCBpbiBzZWxmLl9yY19leHRlbnNpb25zOgorICAgICAgICAgICAgICAgIG9ial9uYW1lcy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZSArIHNlbGYucmVzX2V4dGVuc2lvbikpCisgICAgICAgICAgICBlbGlmIGV4dCBpbiBzZWxmLl9tY19leHRlbnNpb25zOgorICAgICAgICAgICAgICAgIG9ial9uYW1lcy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZSArIHNlbGYucmVzX2V4dGVuc2lvbikpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG9ial9uYW1lcy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZSArIHNlbGYub2JqX2V4dGVuc2lvbikpCisgICAgICAgIHJldHVybiBvYmpfbmFtZXMKKworCisgICAgZGVmIGNvbXBpbGUoc2VsZiwgc291cmNlcywKKyAgICAgICAgICAgICAgICBvdXRwdXRfZGlyPU5vbmUsIG1hY3Jvcz1Ob25lLCBpbmNsdWRlX2RpcnM9Tm9uZSwgZGVidWc9RmFsc2UsCisgICAgICAgICAgICAgICAgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLCBkZXBlbmRzPU5vbmUpOgorCisgICAgICAgIGlmIG5vdCBzZWxmLmluaXRpYWxpemVkOgorICAgICAgICAgICAgc2VsZi5pbml0aWFsaXplKCkKKyAgICAgICAgY29tcGlsZV9pbmZvID0gc2VsZi5fc2V0dXBfY29tcGlsZShvdXRwdXRfZGlyLCBtYWNyb3MsIGluY2x1ZGVfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2VzLCBkZXBlbmRzLCBleHRyYV9wb3N0YXJncykKKyAgICAgICAgbWFjcm9zLCBvYmplY3RzLCBleHRyYV9wb3N0YXJncywgcHBfb3B0cywgYnVpbGQgPSBjb21waWxlX2luZm8KKworICAgICAgICBjb21waWxlX29wdHMgPSBleHRyYV9wcmVhcmdzIG9yIFtdCisgICAgICAgIGNvbXBpbGVfb3B0cy5hcHBlbmQoJy9jJykKKyAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICBjb21waWxlX29wdHMuZXh0ZW5kKHNlbGYuY29tcGlsZV9vcHRpb25zX2RlYnVnKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY29tcGlsZV9vcHRzLmV4dGVuZChzZWxmLmNvbXBpbGVfb3B0aW9ucykKKworICAgICAgICBmb3Igb2JqIGluIG9iamVjdHM6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc3JjLCBleHQgPSBidWlsZFtvYmpdCisgICAgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgICAgICMgcGFzcyB0aGUgZnVsbCBwYXRobmFtZSB0byBNU1ZDIGluIGRlYnVnIG1vZGUsCisgICAgICAgICAgICAgICAgIyB0aGlzIGFsbG93cyB0aGUgZGVidWdnZXIgdG8gZmluZCB0aGUgc291cmNlIGZpbGUKKyAgICAgICAgICAgICAgICAjIHdpdGhvdXQgYXNraW5nIHRoZSB1c2VyIHRvIGJyb3dzZSBmb3IgaXQKKyAgICAgICAgICAgICAgICBzcmMgPSBvcy5wYXRoLmFic3BhdGgoc3JjKQorCisgICAgICAgICAgICBpZiBleHQgaW4gc2VsZi5fY19leHRlbnNpb25zOgorICAgICAgICAgICAgICAgIGlucHV0X29wdCA9ICIvVGMiICsgc3JjCisgICAgICAgICAgICBlbGlmIGV4dCBpbiBzZWxmLl9jcHBfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICBpbnB1dF9vcHQgPSAiL1RwIiArIHNyYworICAgICAgICAgICAgZWxpZiBleHQgaW4gc2VsZi5fcmNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICAjIGNvbXBpbGUgLlJDIHRvIC5SRVMgZmlsZQorICAgICAgICAgICAgICAgIGlucHV0X29wdCA9IHNyYworICAgICAgICAgICAgICAgIG91dHB1dF9vcHQgPSAiL2ZvIiArIG9iagorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5yY10gKyBwcF9vcHRzICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbb3V0cHV0X29wdF0gKyBbaW5wdXRfb3B0XSkKKyAgICAgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZWxpZiBleHQgaW4gc2VsZi5fbWNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICAjIENvbXBpbGUgLk1DIHRvIC5SQyBmaWxlIHRvIC5SRVMgZmlsZS4KKyAgICAgICAgICAgICAgICAjICAgKiAnLWggZGlyJyBzcGVjaWZpZXMgdGhlIGRpcmVjdG9yeSBmb3IgdGhlCisgICAgICAgICAgICAgICAgIyAgICAgZ2VuZXJhdGVkIGluY2x1ZGUgZmlsZQorICAgICAgICAgICAgICAgICMgICAqICctciBkaXInIHNwZWNpZmllcyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBvZiB0aGUKKyAgICAgICAgICAgICAgICAjICAgICBnZW5lcmF0ZWQgUkMgZmlsZSBhbmQgdGhlIGJpbmFyeSBtZXNzYWdlIHJlc291cmNlCisgICAgICAgICAgICAgICAgIyAgICAgaXQgaW5jbHVkZXMKKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyBGb3Igbm93IChzaW5jZSB0aGVyZSBhcmUgbm8gb3B0aW9ucyB0byBjaGFuZ2UgdGhpcyksCisgICAgICAgICAgICAgICAgIyB3ZSB1c2UgdGhlIHNvdXJjZS1kaXJlY3RvcnkgZm9yIHRoZSBpbmNsdWRlIGZpbGUgYW5kCisgICAgICAgICAgICAgICAgIyB0aGUgYnVpbGQgZGlyZWN0b3J5IGZvciB0aGUgUkMgZmlsZSBhbmQgbWVzc2FnZQorICAgICAgICAgICAgICAgICMgcmVzb3VyY2VzLiBUaGlzIHdvcmtzIGF0IGxlYXN0IGZvciB3aW4zMmFsbC4KKyAgICAgICAgICAgICAgICBoX2RpciA9IG9zLnBhdGguZGlybmFtZShzcmMpCisgICAgICAgICAgICAgICAgcmNfZGlyID0gb3MucGF0aC5kaXJuYW1lKG9iaikKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICMgZmlyc3QgY29tcGlsZSAuTUMgdG8gLlJDIGFuZCAuSCBmaWxlCisgICAgICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYubWNdICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJy1oJywgaF9kaXIsICctcicsIHJjX2Rpcl0gKyBbc3JjXSkKKyAgICAgICAgICAgICAgICAgICAgYmFzZSwgXyA9IG9zLnBhdGguc3BsaXRleHQob3MucGF0aC5iYXNlbmFtZShzcmMpKQorICAgICAgICAgICAgICAgICAgICByY19maWxlID0gb3MucGF0aC5qb2luKHJjX2RpciwgYmFzZSArICcucmMnKQorICAgICAgICAgICAgICAgICAgICAjIHRoZW4gY29tcGlsZSAuUkMgdG8gLlJFUyBmaWxlCisgICAgICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYucmNdICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbIi9mbyIgKyBvYmpdICsgW3JjX2ZpbGVdKQorCisgICAgICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBob3cgdG8gaGFuZGxlIHRoaXMgZmlsZT8KKyAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IoIkRvbid0IGtub3cgaG93IHRvIGNvbXBpbGUgJXMgdG8gJXMiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgKHNyYywgb2JqKSkKKworICAgICAgICAgICAgb3V0cHV0X29wdCA9ICIvRm8iICsgb2JqCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5jY10gKyBjb21waWxlX29wdHMgKyBwcF9vcHRzICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpbnB1dF9vcHQsIG91dHB1dF9vcHRdICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKKworICAgICAgICByZXR1cm4gb2JqZWN0cworCisKKyAgICBkZWYgY3JlYXRlX3N0YXRpY19saWIoc2VsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2xpYm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZGVidWc9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9sYW5nPU5vbmUpOgorCisgICAgICAgIGlmIG5vdCBzZWxmLmluaXRpYWxpemVkOgorICAgICAgICAgICAgc2VsZi5pbml0aWFsaXplKCkKKyAgICAgICAgb2JqZWN0cywgb3V0cHV0X2RpciA9IHNlbGYuX2ZpeF9vYmplY3RfYXJncyhvYmplY3RzLCBvdXRwdXRfZGlyKQorICAgICAgICBvdXRwdXRfZmlsZW5hbWUgPSBzZWxmLmxpYnJhcnlfZmlsZW5hbWUob3V0cHV0X2xpYm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXRfZGlyPW91dHB1dF9kaXIpCisKKyAgICAgICAgaWYgc2VsZi5fbmVlZF9saW5rKG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSk6CisgICAgICAgICAgICBsaWJfYXJncyA9IG9iamVjdHMgKyBbJy9PVVQ6JyArIG91dHB1dF9maWxlbmFtZV0KKyAgICAgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgICAgIHBhc3MgIyBYWFggd2hhdCBnb2VzIGhlcmU/CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5saWJdICsgbGliX2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBMaWJFcnJvcihtc2cpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoInNraXBwaW5nICVzICh1cC10by1kYXRlKSIsIG91dHB1dF9maWxlbmFtZSkKKworCisgICAgZGVmIGxpbmsoc2VsZiwgdGFyZ2V0X2Rlc2MsIG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICBleHBvcnRfc3ltYm9scz1Ob25lLCBkZWJ1Zz1GYWxzZSwgZXh0cmFfcHJlYXJncz1Ob25lLAorICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGJ1aWxkX3RlbXA9Tm9uZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgIGlmIG5vdCBzZWxmLmluaXRpYWxpemVkOgorICAgICAgICAgICAgc2VsZi5pbml0aWFsaXplKCkKKyAgICAgICAgb2JqZWN0cywgb3V0cHV0X2RpciA9IHNlbGYuX2ZpeF9vYmplY3RfYXJncyhvYmplY3RzLCBvdXRwdXRfZGlyKQorICAgICAgICBmaXhlZF9hcmdzID0gc2VsZi5fZml4X2xpYl9hcmdzKGxpYnJhcmllcywgbGlicmFyeV9kaXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzKQorICAgICAgICBsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMgPSBmaXhlZF9hcmdzCisKKyAgICAgICAgaWYgcnVudGltZV9saWJyYXJ5X2RpcnM6CisgICAgICAgICAgICBzZWxmLndhcm4oImRvbid0IGtub3cgd2hhdCB0byBkbyB3aXRoICdydW50aW1lX2xpYnJhcnlfZGlycyc6ICIKKyAgICAgICAgICAgICAgICAgICAgICArIHN0cihydW50aW1lX2xpYnJhcnlfZGlycykpCisKKyAgICAgICAgbGliX29wdHMgPSBnZW5fbGliX29wdGlvbnMoc2VsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzKQorICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lID0gb3MucGF0aC5qb2luKG91dHB1dF9kaXIsIG91dHB1dF9maWxlbmFtZSkKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKyAgICAgICAgICAgIGlmIHRhcmdldF9kZXNjID09IENDb21waWxlci5FWEVDVVRBQkxFOgorICAgICAgICAgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgICAgICAgICBsZGZsYWdzID0gc2VsZi5sZGZsYWdzX3NoYXJlZF9kZWJ1Z1sxOl0KKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsZGZsYWdzID0gc2VsZi5sZGZsYWdzX3NoYXJlZFsxOl0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICAgICAgICAgIGxkZmxhZ3MgPSBzZWxmLmxkZmxhZ3Nfc2hhcmVkX2RlYnVnCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgbGRmbGFncyA9IHNlbGYubGRmbGFnc19zaGFyZWQKKworICAgICAgICAgICAgZXhwb3J0X29wdHMgPSBbXQorICAgICAgICAgICAgZm9yIHN5bSBpbiAoZXhwb3J0X3N5bWJvbHMgb3IgW10pOgorICAgICAgICAgICAgICAgIGV4cG9ydF9vcHRzLmFwcGVuZCgiL0VYUE9SVDoiICsgc3ltKQorCisgICAgICAgICAgICBsZF9hcmdzID0gKGxkZmxhZ3MgKyBsaWJfb3B0cyArIGV4cG9ydF9vcHRzICsKKyAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0cyArIFsnL09VVDonICsgb3V0cHV0X2ZpbGVuYW1lXSkKKworICAgICAgICAgICAgIyBUaGUgTVNWQyBsaW5rZXIgZ2VuZXJhdGVzIC5saWIgYW5kIC5leHAgZmlsZXMsIHdoaWNoIGNhbm5vdCBiZQorICAgICAgICAgICAgIyBzdXBwcmVzc2VkIGJ5IGFueSBsaW5rZXIgc3dpdGNoZXMuIFRoZSAubGliIGZpbGVzIG1heSBldmVuIGJlCisgICAgICAgICAgICAjIG5lZWRlZCEgTWFrZSBzdXJlIHRoZXkgYXJlIGdlbmVyYXRlZCBpbiB0aGUgdGVtcG9yYXJ5IGJ1aWxkCisgICAgICAgICAgICAjIGRpcmVjdG9yeS4gU2luY2UgdGhleSBoYXZlIGRpZmZlcmVudCBuYW1lcyBmb3IgZGVidWcgYW5kIHJlbGVhc2UKKyAgICAgICAgICAgICMgYnVpbGRzLCB0aGV5IGNhbiBnbyBpbnRvIHRoZSBzYW1lIGRpcmVjdG9yeS4KKyAgICAgICAgICAgIGJ1aWxkX3RlbXAgPSBvcy5wYXRoLmRpcm5hbWUob2JqZWN0c1swXSkKKyAgICAgICAgICAgIGlmIGV4cG9ydF9zeW1ib2xzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGRsbF9uYW1lLCBkbGxfZXh0ID0gb3MucGF0aC5zcGxpdGV4dCgKKyAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5iYXNlbmFtZShvdXRwdXRfZmlsZW5hbWUpKQorICAgICAgICAgICAgICAgIGltcGxpYl9maWxlID0gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgICAgICAgICBidWlsZF90ZW1wLAorICAgICAgICAgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZmlsZW5hbWUoZGxsX25hbWUpKQorICAgICAgICAgICAgICAgIGxkX2FyZ3MuYXBwZW5kKCcvSU1QTElCOicgKyBpbXBsaWJfZmlsZSkKKworICAgICAgICAgICAgIyBFbWJlZGRlZCBtYW5pZmVzdHMgYXJlIHJlY29tbWVuZGVkIC0gc2VlIE1TRE4gYXJ0aWNsZSB0aXRsZWQKKyAgICAgICAgICAgICMgIkhvdyB0bzogRW1iZWQgYSBNYW5pZmVzdCBJbnNpZGUgYSBDL0MrKyBBcHBsaWNhdGlvbiIKKyAgICAgICAgICAgICMgKGN1cnJlbnRseSBhdCBodHRwOi8vbXNkbjIubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L21zMjM1NTkxKFZTLjgwKS5hc3B4KQorICAgICAgICAgICAgIyBBc2sgdGhlIGxpbmtlciB0byBnZW5lcmF0ZSB0aGUgbWFuaWZlc3QgaW4gdGhlIHRlbXAgZGlyLCBzbworICAgICAgICAgICAgIyB3ZSBjYW4gZW1iZWQgaXQgbGF0ZXIuCisgICAgICAgICAgICB0ZW1wX21hbmlmZXN0ID0gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgICAgICAgICBidWlsZF90ZW1wLAorICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmJhc2VuYW1lKG91dHB1dF9maWxlbmFtZSkgKyAiLm1hbmlmZXN0IikKKyAgICAgICAgICAgIGxkX2FyZ3MuYXBwZW5kKCcvTUFOSUZFU1RGSUxFOicgKyB0ZW1wX21hbmlmZXN0KQorCisgICAgICAgICAgICBpZiBleHRyYV9wcmVhcmdzOgorICAgICAgICAgICAgICAgIGxkX2FyZ3NbOjBdID0gZXh0cmFfcHJlYXJncworICAgICAgICAgICAgaWYgZXh0cmFfcG9zdGFyZ3M6CisgICAgICAgICAgICAgICAgbGRfYXJncy5leHRlbmQoZXh0cmFfcG9zdGFyZ3MpCisKKyAgICAgICAgICAgIHNlbGYubWtwYXRoKG9zLnBhdGguZGlybmFtZShvdXRwdXRfZmlsZW5hbWUpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYubGlua2VyXSArIGxkX2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBMaW5rRXJyb3IobXNnKQorCisgICAgICAgICAgICAjIGVtYmVkIHRoZSBtYW5pZmVzdAorICAgICAgICAgICAgIyBYWFggLSB0aGlzIGlzIHNvbWV3aGF0IGZyYWdpbGUgLSBpZiBtdC5leGUgZmFpbHMsIGRpc3R1dGlscworICAgICAgICAgICAgIyB3aWxsIHN0aWxsIGNvbnNpZGVyIHRoZSBETEwgdXAtdG8tZGF0ZSwgYnV0IGl0IHdpbGwgbm90IGhhdmUgYQorICAgICAgICAgICAgIyBtYW5pZmVzdC4gIE1heWJlIHdlIHNob3VsZCBsaW5rIHRvIGEgdGVtcCBmaWxlPyAgT1RPSCwgdGhhdAorICAgICAgICAgICAgIyBpbXBsaWVzIGEgYnVpbGQgZW52aXJvbm1lbnQgZXJyb3IgdGhhdCBzaG91bGRuJ3QgZ28gdW5kZXRlY3RlZC4KKyAgICAgICAgICAgIGlmIHRhcmdldF9kZXNjID09IENDb21waWxlci5FWEVDVVRBQkxFOgorICAgICAgICAgICAgICAgIG1maWQgPSAxCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG1maWQgPSAyCisgICAgICAgICAgICAgICAgc2VsZi5fcmVtb3ZlX3Zpc3VhbF9jX3JlZih0ZW1wX21hbmlmZXN0KQorICAgICAgICAgICAgb3V0X2FyZyA9ICctb3V0cHV0cmVzb3VyY2U6JXM7JXMnICUgKG91dHB1dF9maWxlbmFtZSwgbWZpZCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLnNwYXduKFsnbXQuZXhlJywgJy1ub2xvZ28nLCAnLW1hbmlmZXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW1wX21hbmlmZXN0LCBvdXRfYXJnXSkKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIExpbmtFcnJvcihtc2cpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoInNraXBwaW5nICVzICh1cC10by1kYXRlKSIsIG91dHB1dF9maWxlbmFtZSkKKworICAgIGRlZiBfcmVtb3ZlX3Zpc3VhbF9jX3JlZihzZWxmLCBtYW5pZmVzdF9maWxlKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBSZW1vdmUgcmVmZXJlbmNlcyB0byB0aGUgVmlzdWFsIEMgcnVudGltZSwgc28gdGhleSB3aWxsCisgICAgICAgICAgICAjIGZhbGwgdGhyb3VnaCB0byB0aGUgVmlzdWFsIEMgZGVwZW5kZW5jeSBvZiBQeXRob24uZXhlLgorICAgICAgICAgICAgIyBUaGlzIHdheSwgd2hlbiBpbnN0YWxsZWQgZm9yIGEgcmVzdHJpY3RlZCB1c2VyIChlLmcuCisgICAgICAgICAgICAjIHJ1bnRpbWVzIGFyZSBub3QgaW4gV2luU3hTIGZvbGRlciwgYnV0IGluIFB5dGhvbidzIG93bgorICAgICAgICAgICAgIyBmb2xkZXIpLCB0aGUgcnVudGltZXMgZG8gbm90IG5lZWQgdG8gYmUgaW4gZXZlcnkgZm9sZGVyCisgICAgICAgICAgICAjIHdpdGggLnB5ZCdzLgorICAgICAgICAgICAgd2l0aCBvcGVuKG1hbmlmZXN0X2ZpbGUpIGFzIG1hbmlmZXN0X2Y6CisgICAgICAgICAgICAgICAgbWFuaWZlc3RfYnVmID0gbWFuaWZlc3RfZi5yZWFkKCkKKyAgICAgICAgICAgIHBhdHRlcm4gPSByZS5jb21waWxlKAorICAgICAgICAgICAgICAgIHIiIiI8YXNzZW1ibHlJZGVudGl0eS4qP25hbWU9KCJ8JylNaWNyb3NvZnRcLiIiIlwKKyAgICAgICAgICAgICAgICByIiIiVkNcZHsyfVwuQ1JUKCJ8JykuKj8oLz58PC9hc3NlbWJseUlkZW50aXR5PikiIiIsCisgICAgICAgICAgICAgICAgcmUuRE9UQUxMKQorICAgICAgICAgICAgbWFuaWZlc3RfYnVmID0gcmUuc3ViKHBhdHRlcm4sICIiLCBtYW5pZmVzdF9idWYpCisgICAgICAgICAgICBwYXR0ZXJuID0gIjxkZXBlbmRlbnRBc3NlbWJseT5ccyo8L2RlcGVuZGVudEFzc2VtYmx5PiIKKyAgICAgICAgICAgIG1hbmlmZXN0X2J1ZiA9IHJlLnN1YihwYXR0ZXJuLCAiIiwgbWFuaWZlc3RfYnVmKQorICAgICAgICAgICAgd2l0aCBvcGVuKG1hbmlmZXN0X2ZpbGUsICd3JykgYXMgbWFuaWZlc3RfZjoKKyAgICAgICAgICAgICAgICBtYW5pZmVzdF9mLndyaXRlKG1hbmlmZXN0X2J1ZikKKyAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICBwYXNzCisKKyAgICAjIC0tIE1pc2NlbGxhbmVvdXMgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICMgVGhlc2UgYXJlIGFsbCB1c2VkIGJ5IHRoZSAnZ2VuX2xpYl9vcHRpb25zKCkgZnVuY3Rpb24sIGluCisgICAgIyBjY29tcGlsZXIucHkuCisKKyAgICBkZWYgbGlicmFyeV9kaXJfb3B0aW9uKHNlbGYsIGRpcik6CisgICAgICAgIHJldHVybiAiL0xJQlBBVEg6IiArIGRpcgorCisgICAgZGVmIHJ1bnRpbWVfbGlicmFyeV9kaXJfb3B0aW9uKHNlbGYsIGRpcik6CisgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoCisgICAgICAgICAgICAgICJkb24ndCBrbm93IGhvdyB0byBzZXQgcnVudGltZSBsaWJyYXJ5IHNlYXJjaCBwYXRoIGZvciBNU1ZDKysiKQorCisgICAgZGVmIGxpYnJhcnlfb3B0aW9uKHNlbGYsIGxpYik6CisgICAgICAgIHJldHVybiBzZWxmLmxpYnJhcnlfZmlsZW5hbWUobGliKQorCisKKyAgICBkZWYgZmluZF9saWJyYXJ5X2ZpbGUoc2VsZiwgZGlycywgbGliLCBkZWJ1Zz1GYWxzZSk6CisgICAgICAgICMgUHJlZmVyIGEgZGVidWdnaW5nIGxpYnJhcnkgaWYgZm91bmQgKGFuZCByZXF1ZXN0ZWQpLCBidXQgZGVhbAorICAgICAgICAjIHdpdGggaXQgaWYgd2UgZG9uJ3QgaGF2ZSBvbmUuCisgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgdHJ5X25hbWVzID0gW2xpYiArICJfZCIsIGxpYl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHRyeV9uYW1lcyA9IFtsaWJdCisgICAgICAgIGZvciBkaXIgaW4gZGlyczoKKyAgICAgICAgICAgIGZvciBuYW1lIGluIHRyeV9uYW1lczoKKyAgICAgICAgICAgICAgICBsaWJmaWxlID0gb3MucGF0aC5qb2luKGRpciwgc2VsZi5saWJyYXJ5X2ZpbGVuYW1lKG5hbWUpKQorICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGxpYmZpbGUpOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGliZmlsZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBPb3BzLCBkaWRuJ3QgZmluZCBpdCBpbiAqYW55KiBvZiAnZGlycycKKyAgICAgICAgICAgIHJldHVybiBOb25lCisKKyAgICAjIEhlbHBlciBtZXRob2RzIGZvciB1c2luZyB0aGUgTVNWQyByZWdpc3RyeSBzZXR0aW5ncworCisgICAgZGVmIGZpbmRfZXhlKHNlbGYsIGV4ZSk6CisgICAgICAgICIiIlJldHVybiBwYXRoIHRvIGFuIE1TVkMgZXhlY3V0YWJsZSBwcm9ncmFtLgorCisgICAgICAgIFRyaWVzIHRvIGZpbmQgdGhlIHByb2dyYW0gaW4gc2V2ZXJhbCBwbGFjZXM6IGZpcnN0LCBvbmUgb2YgdGhlCisgICAgICAgIE1TVkMgcHJvZ3JhbSBzZWFyY2ggcGF0aHMgZnJvbSB0aGUgcmVnaXN0cnk7IG5leHQsIHRoZSBkaXJlY3RvcmllcworICAgICAgICBpbiB0aGUgUEFUSCBlbnZpcm9ubWVudCB2YXJpYWJsZS4gIElmIGFueSBvZiB0aG9zZSB3b3JrLCByZXR1cm4gYW4KKyAgICAgICAgYWJzb2x1dGUgcGF0aCB0aGF0IGlzIGtub3duIHRvIGV4aXN0LiAgSWYgbm9uZSBvZiB0aGVtIHdvcmssIGp1c3QKKyAgICAgICAgcmV0dXJuIHRoZSBvcmlnaW5hbCBwcm9ncmFtIG5hbWUsICdleGUnLgorICAgICAgICAiIiIKKyAgICAgICAgZm9yIHAgaW4gc2VsZi5fX3BhdGhzOgorICAgICAgICAgICAgZm4gPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5hYnNwYXRoKHApLCBleGUpCisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShmbik6CisgICAgICAgICAgICAgICAgcmV0dXJuIGZuCisKKyAgICAgICAgIyBkaWRuJ3QgZmluZCBpdDsgdHJ5IGV4aXN0aW5nIHBhdGgKKyAgICAgICAgZm9yIHAgaW4gb3MuZW52aXJvblsnUGF0aCddLnNwbGl0KCc7Jyk6CisgICAgICAgICAgICBmbiA9IG9zLnBhdGguam9pbihvcy5wYXRoLmFic3BhdGgocCksZXhlKQorICAgICAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUoZm4pOgorICAgICAgICAgICAgICAgIHJldHVybiBmbgorCisgICAgICAgIHJldHVybiBleGUKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvbXN2Y2NvbXBpbGVyLnB5IGIvTGliL3BhY2thZ2luZy9jb21waWxlci9tc3ZjY29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzlhMTBiMgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvbXN2Y2NvbXBpbGVyLnB5CkBAIC0wLDAgKzEsNjM1IEBACisiIiJDQ29tcGlsZXIgaW1wbGVtZW50YXRpb24gZm9yIG9sZCBNaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyBjb21waWxlcnMuCisKK0ZvciBhIGNvbXBpbGVyIGNvbXBhdGlibGUgd2l0aCBWUyAyMDA1IGFuZCAyMDA4LCB1c2UgbXN2Yzljb21waWxlci4KKyIiIgorCisjIFdyaXR0ZW4gYnkgUGVycnkgU3RvbGwKKyMgaGFja2VkIGJ5IFJvYmluIEJlY2tlciBhbmQgVGhvbWFzIEhlbGxlciB0byBkbyBhIGJldHRlciBqb2Igb2YKKyMgICBmaW5kaW5nIERldlN0dWRpbyAodGhyb3VnaCB0aGUgcmVnaXN0cnkpCisKKworaW1wb3J0IHN5cworaW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKFBhY2thZ2luZ0V4ZWNFcnJvciwgUGFja2FnaW5nUGxhdGZvcm1FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbXBpbGVFcnJvciwgTGliRXJyb3IsIExpbmtFcnJvcikKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlciBpbXBvcnQgQ0NvbXBpbGVyCitmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgZ2VuX2xpYl9vcHRpb25zCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCisKK19jYW5fcmVhZF9yZWcgPSBGYWxzZQordHJ5OgorICAgIGltcG9ydCB3aW5yZWcKKworICAgIF9jYW5fcmVhZF9yZWcgPSBUcnVlCisgICAgaGtleV9tb2QgPSB3aW5yZWcKKworICAgIFJlZ09wZW5LZXlFeCA9IHdpbnJlZy5PcGVuS2V5RXgKKyAgICBSZWdFbnVtS2V5ID0gd2lucmVnLkVudW1LZXkKKyAgICBSZWdFbnVtVmFsdWUgPSB3aW5yZWcuRW51bVZhbHVlCisgICAgUmVnRXJyb3IgPSB3aW5yZWcuZXJyb3IKKworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHRyeToKKyAgICAgICAgaW1wb3J0IHdpbjMyYXBpCisgICAgICAgIGltcG9ydCB3aW4zMmNvbgorICAgICAgICBfY2FuX3JlYWRfcmVnID0gVHJ1ZQorICAgICAgICBoa2V5X21vZCA9IHdpbjMyY29uCisKKyAgICAgICAgUmVnT3BlbktleUV4ID0gd2luMzJhcGkuUmVnT3BlbktleUV4CisgICAgICAgIFJlZ0VudW1LZXkgPSB3aW4zMmFwaS5SZWdFbnVtS2V5CisgICAgICAgIFJlZ0VudW1WYWx1ZSA9IHdpbjMyYXBpLlJlZ0VudW1WYWx1ZQorICAgICAgICBSZWdFcnJvciA9IHdpbjMyYXBpLmVycm9yCisKKyAgICBleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgICAgIGxvZ2dlci53YXJuaW5nKAorICAgICAgICAgICAgImNhbid0IHJlYWQgcmVnaXN0cnkgdG8gZmluZCB0aGUgbmVjZXNzYXJ5IGNvbXBpbGVyIHNldHRpbmc7XG4iCisgICAgICAgICAgICAibWFrZSBzdXJlIHRoYXQgUHl0aG9uIG1vZHVsZXMgX3dpbnJlZywgd2luMzJhcGkgb3Igd2luMzJjb24gIgorICAgICAgICAgICAgImFyZSBpbnN0YWxsZWQuIikKKworaWYgX2Nhbl9yZWFkX3JlZzoKKyAgICBIS0VZUyA9IChoa2V5X21vZC5IS0VZX1VTRVJTLAorICAgICAgICAgICAgIGhrZXlfbW9kLkhLRVlfQ1VSUkVOVF9VU0VSLAorICAgICAgICAgICAgIGhrZXlfbW9kLkhLRVlfTE9DQUxfTUFDSElORSwKKyAgICAgICAgICAgICBoa2V5X21vZC5IS0VZX0NMQVNTRVNfUk9PVCkKKworCitkZWYgcmVhZF9rZXlzKGJhc2UsIGtleSk6CisgICAgIiIiUmV0dXJuIGxpc3Qgb2YgcmVnaXN0cnkga2V5cy4iIiIKKworICAgIHRyeToKKyAgICAgICAgaGFuZGxlID0gUmVnT3BlbktleUV4KGJhc2UsIGtleSkKKyAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgIHJldHVybiBOb25lCisgICAgTCA9IFtdCisgICAgaSA9IDAKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBrID0gUmVnRW51bUtleShoYW5kbGUsIGkpCisgICAgICAgIGV4Y2VwdCBSZWdFcnJvcjoKKyAgICAgICAgICAgIGJyZWFrCisgICAgICAgIEwuYXBwZW5kKGspCisgICAgICAgIGkgPSBpICsgMQorICAgIHJldHVybiBMCisKKworZGVmIHJlYWRfdmFsdWVzKGJhc2UsIGtleSk6CisgICAgIiIiUmV0dXJuIGRpY3Qgb2YgcmVnaXN0cnkga2V5cyBhbmQgdmFsdWVzLgorCisgICAgQWxsIG5hbWVzIGFyZSBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlLgorICAgICIiIgorICAgIHRyeToKKyAgICAgICAgaGFuZGxlID0gUmVnT3BlbktleUV4KGJhc2UsIGtleSkKKyAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgIHJldHVybiBOb25lCisgICAgZCA9IHt9CisgICAgaSA9IDAKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBuYW1lLCB2YWx1ZSwgdHlwZSA9IFJlZ0VudW1WYWx1ZShoYW5kbGUsIGkpCisgICAgICAgIGV4Y2VwdCBSZWdFcnJvcjoKKyAgICAgICAgICAgIGJyZWFrCisgICAgICAgIG5hbWUgPSBuYW1lLmxvd2VyKCkKKyAgICAgICAgZFtjb252ZXJ0X21iY3MobmFtZSldID0gY29udmVydF9tYmNzKHZhbHVlKQorICAgICAgICBpID0gaSArIDEKKyAgICByZXR1cm4gZAorCisKK2RlZiBjb252ZXJ0X21iY3Mocyk6CisgICAgZW5jID0gZ2V0YXR0cihzLCAiZW5jb2RlIiwgTm9uZSkKKyAgICBpZiBlbmMgaXMgbm90IE5vbmU6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHMgPSBlbmMoIm1iY3MiKQorICAgICAgICBleGNlcHQgVW5pY29kZUVycm9yOgorICAgICAgICAgICAgcGFzcworICAgIHJldHVybiBzCisKKworY2xhc3MgTWFjcm9FeHBhbmRlcjoKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCB2ZXJzaW9uKToKKyAgICAgICAgc2VsZi5tYWNyb3MgPSB7fQorICAgICAgICBzZWxmLmxvYWRfbWFjcm9zKHZlcnNpb24pCisKKyAgICBkZWYgc2V0X21hY3JvKHNlbGYsIG1hY3JvLCBwYXRoLCBrZXkpOgorICAgICAgICBmb3IgYmFzZSBpbiBIS0VZUzoKKyAgICAgICAgICAgIGQgPSByZWFkX3ZhbHVlcyhiYXNlLCBwYXRoKQorICAgICAgICAgICAgaWYgZDoKKyAgICAgICAgICAgICAgICBzZWxmLm1hY3Jvc1siJCglcykiICUgbWFjcm9dID0gZFtrZXldCisgICAgICAgICAgICAgICAgYnJlYWsKKworICAgIGRlZiBsb2FkX21hY3JvcyhzZWxmLCB2ZXJzaW9uKToKKyAgICAgICAgdnNiYXNlID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcVmlzdWFsU3R1ZGlvXCUwLjFmIiAlIHZlcnNpb24KKyAgICAgICAgc2VsZi5zZXRfbWFjcm8oIlZDSW5zdGFsbERpciIsIHZzYmFzZSArIHIiXFNldHVwXFZDIiwgInByb2R1Y3RkaXIiKQorICAgICAgICBzZWxmLnNldF9tYWNybygiVlNJbnN0YWxsRGlyIiwgdnNiYXNlICsgciJcU2V0dXBcVlMiLCAicHJvZHVjdGRpciIpCisgICAgICAgIG5ldCA9IHIiU29mdHdhcmVcTWljcm9zb2Z0XC5ORVRGcmFtZXdvcmsiCisgICAgICAgIHNlbGYuc2V0X21hY3JvKCJGcmFtZXdvcmtEaXIiLCBuZXQsICJpbnN0YWxscm9vdCIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGlmIHZlcnNpb24gPiA3LjA6CisgICAgICAgICAgICAgICAgc2VsZi5zZXRfbWFjcm8oIkZyYW1ld29ya1NES0RpciIsIG5ldCwgInNka2luc3RhbGxyb290djEuMSIpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuc2V0X21hY3JvKCJGcmFtZXdvcmtTREtEaXIiLCBuZXQsICJzZGtpbnN0YWxscm9vdCIpCisgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoCisiIiJQeXRob24gd2FzIGJ1aWx0IHdpdGggVmlzdWFsIFN0dWRpbyAyMDAzOyBleHRlbnNpb25zIG11c3QgYmUgYnVpbHQgd2l0aAorYSBjb21waWxlciB0aGFuIGNhbiBnZW5lcmF0ZSBjb21wYXRpYmxlIGJpbmFyaWVzLiBWaXN1YWwgU3R1ZGlvIDIwMDMgd2FzCitub3QgZm91bmQgb24gdGhpcyBzeXN0ZW0uIElmIHlvdSBoYXZlIEN5Z3dpbiBpbnN0YWxsZWQsIHlvdSBjYW4gdHJ5Citjb21waWxpbmcgd2l0aCBNaW5nVzMyLCBieSBwYXNzaW5nICItYyBtaW5ndzMyIiB0byBweXNldHVwLiIiIikKKworICAgICAgICBwID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcTkVUIEZyYW1ld29yayBTZXR1cFxQcm9kdWN0IgorICAgICAgICBmb3IgYmFzZSBpbiBIS0VZUzoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBoID0gUmVnT3BlbktleUV4KGJhc2UsIHApCisgICAgICAgICAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGtleSA9IFJlZ0VudW1LZXkoaCwgMCkKKyAgICAgICAgICAgIGQgPSByZWFkX3ZhbHVlcyhiYXNlLCByIiVzXCVzIiAlIChwLCBrZXkpKQorICAgICAgICAgICAgc2VsZi5tYWNyb3NbIiQoRnJhbWV3b3JrVmVyc2lvbikiXSA9IGRbInZlcnNpb24iXQorCisgICAgZGVmIHN1YihzZWxmLCBzKToKKyAgICAgICAgZm9yIGssIHYgaW4gc2VsZi5tYWNyb3MuaXRlbXMoKToKKyAgICAgICAgICAgIHMgPSBzLnJlcGxhY2UoaywgdikKKyAgICAgICAgcmV0dXJuIHMKKworCitkZWYgZ2V0X2J1aWxkX3ZlcnNpb24oKToKKyAgICAiIiJSZXR1cm4gdGhlIHZlcnNpb24gb2YgTVNWQyB0aGF0IHdhcyB1c2VkIHRvIGJ1aWxkIFB5dGhvbi4KKworICAgIEZvciBQeXRob24gMi4zIGFuZCB1cCwgdGhlIHZlcnNpb24gbnVtYmVyIGlzIGluY2x1ZGVkIGluCisgICAgc3lzLnZlcnNpb24uICBGb3IgZWFybGllciB2ZXJzaW9ucywgYXNzdW1lIHRoZSBjb21waWxlciBpcyBNU1ZDIDYuCisgICAgIiIiCisKKyAgICBwcmVmaXggPSAiTVNDIHYuIgorICAgIGkgPSBzeXMudmVyc2lvbi5maW5kKHByZWZpeCkKKyAgICBpZiBpID09IC0xOgorICAgICAgICByZXR1cm4gNgorICAgIGkgPSBpICsgbGVuKHByZWZpeCkKKyAgICBzLCByZXN0ID0gc3lzLnZlcnNpb25baTpdLnNwbGl0KCIgIiwgMSkKKyAgICBtYWpvclZlcnNpb24gPSBpbnQoc1s6LTJdKSAtIDYKKyAgICBtaW5vclZlcnNpb24gPSBpbnQoc1syOjNdKSAvIDEwLjAKKyAgICAjIEkgZG9uJ3QgdGhpbmsgcGF0aHMgYXJlIGFmZmVjdGVkIGJ5IG1pbm9yIHZlcnNpb24gaW4gdmVyc2lvbiA2CisgICAgaWYgbWFqb3JWZXJzaW9uID09IDY6CisgICAgICAgIG1pbm9yVmVyc2lvbiA9IDAKKyAgICBpZiBtYWpvclZlcnNpb24gPj0gNjoKKyAgICAgICAgcmV0dXJuIG1ham9yVmVyc2lvbiArIG1pbm9yVmVyc2lvbgorICAgICMgZWxzZSB3ZSBkb24ndCBrbm93IHdoYXQgdmVyc2lvbiBvZiB0aGUgY29tcGlsZXIgdGhpcyBpcworICAgIHJldHVybiBOb25lCisKKworZGVmIGdldF9idWlsZF9hcmNoaXRlY3R1cmUoKToKKyAgICAiIiJSZXR1cm4gdGhlIHByb2Nlc3NvciBhcmNoaXRlY3R1cmUuCisKKyAgICBQb3NzaWJsZSByZXN1bHRzIGFyZSAiSW50ZWwiLCAiSXRhbml1bSIsIG9yICJBTUQ2NCIuCisgICAgIiIiCisKKyAgICBwcmVmaXggPSAiIGJpdCAoIgorICAgIGkgPSBzeXMudmVyc2lvbi5maW5kKHByZWZpeCkKKyAgICBpZiBpID09IC0xOgorICAgICAgICByZXR1cm4gIkludGVsIgorICAgIGogPSBzeXMudmVyc2lvbi5maW5kKCIpIiwgaSkKKyAgICByZXR1cm4gc3lzLnZlcnNpb25baStsZW4ocHJlZml4KTpqXQorCisKK2RlZiBub3JtYWxpemVfYW5kX3JlZHVjZV9wYXRocyhwYXRocyk6CisgICAgIiIiUmV0dXJuIGEgbGlzdCBvZiBub3JtYWxpemVkIHBhdGhzIHdpdGggZHVwbGljYXRlcyByZW1vdmVkLgorCisgICAgVGhlIGN1cnJlbnQgb3JkZXIgb2YgcGF0aHMgaXMgbWFpbnRhaW5lZC4KKyAgICAiIiIKKyAgICAjIFBhdGhzIGFyZSBub3JtYWxpemVkIHNvIHRoaW5ncyBsaWtlOiAgL2EgYW5kIC9hLyBhcmVuJ3QgYm90aCBwcmVzZXJ2ZWQuCisgICAgcmVkdWNlZF9wYXRocyA9IFtdCisgICAgZm9yIHAgaW4gcGF0aHM6CisgICAgICAgIG5wID0gb3MucGF0aC5ub3JtcGF0aChwKQorICAgICAgICAjIFhYWChubm9yd2l0eik6IE8obioqMiksIGlmIHJlZHVjZWRfcGF0aHMgZ2V0cyBsb25nIHBlcmhhcHMgdXNlIGEgc2V0LgorICAgICAgICBpZiBucCBub3QgaW4gcmVkdWNlZF9wYXRoczoKKyAgICAgICAgICAgIHJlZHVjZWRfcGF0aHMuYXBwZW5kKG5wKQorICAgIHJldHVybiByZWR1Y2VkX3BhdGhzCisKKworY2xhc3MgTVNWQ0NvbXBpbGVyKENDb21waWxlcik6CisgICAgIiIiQ29uY3JldGUgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGFuIGludGVyZmFjZSB0byBNaWNyb3NvZnQgVmlzdWFsIEMrKywKKyAgICAgICBhcyBkZWZpbmVkIGJ5IHRoZSBDQ29tcGlsZXIgYWJzdHJhY3QgY2xhc3MuIiIiCisKKyAgICBuYW1lID0gJ21zdmMnCisgICAgZGVzY3JpcHRpb24gPSAiTWljcm9zb2Z0IFZpc3VhbCBDKysiCisKKyAgICAjIEp1c3Qgc2V0IHRoaXMgc28gQ0NvbXBpbGVyJ3MgY29uc3RydWN0b3IgZG9lc24ndCBiYXJmLiAgV2UgY3VycmVudGx5CisgICAgIyBkb24ndCB1c2UgdGhlICdzZXRfZXhlY3V0YWJsZXMoKScgYnVyZWF1Y3JhY3kgcHJvdmlkZWQgYnkgQ0NvbXBpbGVyLAorICAgICMgYXMgaXQgcmVhbGx5IGlzbid0IG5lY2Vzc2FyeSBmb3IgdGhpcyBzb3J0IG9mIHNpbmdsZS1jb21waWxlciBjbGFzcy4KKyAgICAjIFdvdWxkIGJlIG5pY2UgdG8gaGF2ZSBhIGNvbnNpc3RlbnQgaW50ZXJmYWNlIHdpdGggVW5peENDb21waWxlciwKKyAgICAjIHRob3VnaCwgc28gaXQncyB3b3J0aCB0aGlua2luZyBhYm91dC4KKyAgICBleGVjdXRhYmxlcyA9IHt9CisKKyAgICAjIFByaXZhdGUgY2xhc3MgZGF0YSAobmVlZCB0byBkaXN0aW5ndWlzaCBDIGZyb20gQysrIHNvdXJjZSBmb3IgY29tcGlsZXIpCisgICAgX2NfZXh0ZW5zaW9ucyA9IFsnLmMnXQorICAgIF9jcHBfZXh0ZW5zaW9ucyA9IFsnLmNjJywgJy5jcHAnLCAnLmN4eCddCisgICAgX3JjX2V4dGVuc2lvbnMgPSBbJy5yYyddCisgICAgX21jX2V4dGVuc2lvbnMgPSBbJy5tYyddCisKKyAgICAjIE5lZWRlZCBmb3IgdGhlIGZpbGVuYW1lIGdlbmVyYXRpb24gbWV0aG9kcyBwcm92aWRlZCBieSB0aGUKKyAgICAjIGJhc2UgY2xhc3MsIENDb21waWxlci4KKyAgICBzcmNfZXh0ZW5zaW9ucyA9IChfY19leHRlbnNpb25zICsgX2NwcF9leHRlbnNpb25zICsKKyAgICAgICAgICAgICAgICAgICAgICBfcmNfZXh0ZW5zaW9ucyArIF9tY19leHRlbnNpb25zKQorICAgIHJlc19leHRlbnNpb24gPSAnLnJlcycKKyAgICBvYmpfZXh0ZW5zaW9uID0gJy5vYmonCisgICAgc3RhdGljX2xpYl9leHRlbnNpb24gPSAnLmxpYicKKyAgICBzaGFyZWRfbGliX2V4dGVuc2lvbiA9ICcuZGxsJworICAgIHN0YXRpY19saWJfZm9ybWF0ID0gc2hhcmVkX2xpYl9mb3JtYXQgPSAnJXMlcycKKyAgICBleGVfZXh0ZW5zaW9uID0gJy5leGUnCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZHJ5X3J1bj1GYWxzZSwgZm9yY2U9RmFsc2UpOgorICAgICAgICBzdXBlcihNU1ZDQ29tcGlsZXIsIHNlbGYpLl9faW5pdF9fKGRyeV9ydW4sIGZvcmNlKQorICAgICAgICBzZWxmLl9fdmVyc2lvbiA9IGdldF9idWlsZF92ZXJzaW9uKCkKKyAgICAgICAgc2VsZi5fX2FyY2ggPSBnZXRfYnVpbGRfYXJjaGl0ZWN0dXJlKCkKKyAgICAgICAgaWYgc2VsZi5fX2FyY2ggPT0gIkludGVsIjoKKyAgICAgICAgICAgICMgeDg2CisgICAgICAgICAgICBpZiBzZWxmLl9fdmVyc2lvbiA+PSA3OgorICAgICAgICAgICAgICAgIHNlbGYuX19yb290ID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcVmlzdWFsU3R1ZGlvIgorICAgICAgICAgICAgICAgIHNlbGYuX19tYWNyb3MgPSBNYWNyb0V4cGFuZGVyKHNlbGYuX192ZXJzaW9uKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLl9fcm9vdCA9IHIiU29mdHdhcmVcTWljcm9zb2Z0XERldnN0dWRpbyIKKyAgICAgICAgICAgIHNlbGYuX19wcm9kdWN0ID0gIlZpc3VhbCBTdHVkaW8gdmVyc2lvbiAlcyIgJSBzZWxmLl9fdmVyc2lvbgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBXaW42NC4gQXNzdW1lIHRoaXMgd2FzIGJ1aWx0IHdpdGggdGhlIHBsYXRmb3JtIFNESworICAgICAgICAgICAgc2VsZi5fX3Byb2R1Y3QgPSAiTWljcm9zb2Z0IFNESyBjb21waWxlciAlcyIgJSAoc2VsZi5fX3ZlcnNpb24gKyA2KQorCisgICAgICAgIHNlbGYuaW5pdGlhbGl6ZWQgPSBGYWxzZQorCisgICAgZGVmIGluaXRpYWxpemUoc2VsZik6CisgICAgICAgIHNlbGYuX19wYXRocyA9IFtdCisgICAgICAgIGlmICgiRElTVFVUSUxTX1VTRV9TREsiIGluIG9zLmVudmlyb24gYW5kICJNU1NkayIgaW4gb3MuZW52aXJvbiBhbmQKKyAgICAgICAgICAgIHNlbGYuZmluZF9leGUoImNsLmV4ZSIpKToKKyAgICAgICAgICAgICMgQXNzdW1lIHRoYXQgdGhlIFNESyBzZXQgdXAgZXZlcnl0aGluZyBhbHJpZ2h0OyBkb24ndCB0cnkgdG8gYmUKKyAgICAgICAgICAgICMgc21hcnRlcgorICAgICAgICAgICAgc2VsZi5jYyA9ICJjbC5leGUiCisgICAgICAgICAgICBzZWxmLmxpbmtlciA9ICJsaW5rLmV4ZSIKKyAgICAgICAgICAgIHNlbGYubGliID0gImxpYi5leGUiCisgICAgICAgICAgICBzZWxmLnJjID0gInJjLmV4ZSIKKyAgICAgICAgICAgIHNlbGYubWMgPSAibWMuZXhlIgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5fX3BhdGhzID0gc2VsZi5nZXRfbXN2Y19wYXRocygicGF0aCIpCisKKyAgICAgICAgICAgIGlmIGxlbihzZWxmLl9fcGF0aHMpID09IDA6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiUHl0aG9uIHdhcyBidWlsdCB3aXRoICVzICIKKyAgICAgICAgICAgICAgICAgICAgImFuZCBleHRlbnNpb25zIG5lZWQgdG8gYmUgYnVpbHQgd2l0aCB0aGUgc2FtZSAiCisgICAgICAgICAgICAgICAgICAgICJ2ZXJzaW9uIG9mIHRoZSBjb21waWxlciwgYnV0IGl0IGlzbid0IGluc3RhbGxlZC4iICUKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fX3Byb2R1Y3QpCisKKyAgICAgICAgICAgIHNlbGYuY2MgPSBzZWxmLmZpbmRfZXhlKCJjbC5leGUiKQorICAgICAgICAgICAgc2VsZi5saW5rZXIgPSBzZWxmLmZpbmRfZXhlKCJsaW5rLmV4ZSIpCisgICAgICAgICAgICBzZWxmLmxpYiA9IHNlbGYuZmluZF9leGUoImxpYi5leGUiKQorICAgICAgICAgICAgc2VsZi5yYyA9IHNlbGYuZmluZF9leGUoInJjLmV4ZSIpICAgIyByZXNvdXJjZSBjb21waWxlcgorICAgICAgICAgICAgc2VsZi5tYyA9IHNlbGYuZmluZF9leGUoIm1jLmV4ZSIpICAgIyBtZXNzYWdlIGNvbXBpbGVyCisgICAgICAgICAgICBzZWxmLnNldF9wYXRoX2Vudl92YXIoJ2xpYicpCisgICAgICAgICAgICBzZWxmLnNldF9wYXRoX2Vudl92YXIoJ2luY2x1ZGUnKQorCisgICAgICAgICMgZXh0ZW5kIHRoZSBNU1ZDIHBhdGggd2l0aCB0aGUgY3VycmVudCBwYXRoCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGZvciBwIGluIG9zLmVudmlyb25bJ3BhdGgnXS5zcGxpdCgnOycpOgorICAgICAgICAgICAgICAgIHNlbGYuX19wYXRocy5hcHBlbmQocCkKKyAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBzZWxmLl9fcGF0aHMgPSBub3JtYWxpemVfYW5kX3JlZHVjZV9wYXRocyhzZWxmLl9fcGF0aHMpCisgICAgICAgIG9zLmVudmlyb25bJ3BhdGgnXSA9ICc7Jy5qb2luKHNlbGYuX19wYXRocykKKworICAgICAgICBzZWxmLnByZXByb2Nlc3Nfb3B0aW9ucyA9IE5vbmUKKyAgICAgICAgaWYgc2VsZi5fX2FyY2ggPT0gIkludGVsIjoKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZV9vcHRpb25zID0gWycvbm9sb2dvJywgJy9PeCcsICcvTUQnLCAnL1czJywgJy9HWCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL0ROREVCVUcnXQorICAgICAgICAgICAgc2VsZi5jb21waWxlX29wdGlvbnNfZGVidWcgPSBbJy9ub2xvZ28nLCAnL09kJywgJy9NRGQnLCAnL1czJywgJy9HWCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL1o3JywgJy9EX0RFQlVHJ10KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgV2luNjQKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZV9vcHRpb25zID0gWycvbm9sb2dvJywgJy9PeCcsICcvTUQnLCAnL1czJywgJy9HUy0nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy9ETkRFQlVHJ10KKyAgICAgICAgICAgIHNlbGYuY29tcGlsZV9vcHRpb25zX2RlYnVnID0gWycvbm9sb2dvJywgJy9PZCcsICcvTURkJywgJy9XMycsICcvR1MtJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvWjcnLCAnL0RfREVCVUcnXQorCisgICAgICAgIHNlbGYubGRmbGFnc19zaGFyZWQgPSBbJy9ETEwnLCAnL25vbG9nbycsICcvSU5DUkVNRU5UQUw6Tk8nXQorICAgICAgICBpZiBzZWxmLl9fdmVyc2lvbiA+PSA3OgorICAgICAgICAgICAgc2VsZi5sZGZsYWdzX3NoYXJlZF9kZWJ1ZyA9IFsKKyAgICAgICAgICAgICAgICAnL0RMTCcsICcvbm9sb2dvJywgJy9JTkNSRU1FTlRBTDpubycsICcvREVCVUcnCisgICAgICAgICAgICAgICAgXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5sZGZsYWdzX3NoYXJlZF9kZWJ1ZyA9IFsKKyAgICAgICAgICAgICAgICAnL0RMTCcsICcvbm9sb2dvJywgJy9JTkNSRU1FTlRBTDpubycsICcvcGRiOk5vbmUnLCAnL0RFQlVHJworICAgICAgICAgICAgICAgIF0KKyAgICAgICAgc2VsZi5sZGZsYWdzX3N0YXRpYyA9IFsgJy9ub2xvZ28nXQorCisgICAgICAgIHNlbGYuaW5pdGlhbGl6ZWQgPSBUcnVlCisKKyAgICAjIC0tIFdvcmtlciBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgZGVmIG9iamVjdF9maWxlbmFtZXMoc2VsZiwgc291cmNlX2ZpbGVuYW1lcywgc3RyaXBfZGlyPUZhbHNlLCBvdXRwdXRfZGlyPScnKToKKyAgICAgICAgIyBDb3BpZWQgZnJvbSBjY29tcGlsZXIucHksIGV4dGVuZGVkIHRvIHJldHVybiAucmVzIGFzICdvYmplY3QnLWZpbGUKKyAgICAgICAgIyBmb3IgLnJjIGlucHV0IGZpbGUKKyAgICAgICAgaWYgb3V0cHV0X2RpciBpcyBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2RpciA9ICcnCisgICAgICAgIG9ial9uYW1lcyA9IFtdCisgICAgICAgIGZvciBzcmNfbmFtZSBpbiBzb3VyY2VfZmlsZW5hbWVzOgorICAgICAgICAgICAgYmFzZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChzcmNfbmFtZSkKKyAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLnNwbGl0ZHJpdmUoYmFzZSlbMV0gICMgQ2hvcCBvZmYgdGhlIGRyaXZlCisgICAgICAgICAgICBiYXNlID0gYmFzZVtvcy5wYXRoLmlzYWJzKGJhc2UpOl0gICMgSWYgYWJzLCBjaG9wIG9mZiBsZWFkaW5nIC8KKyAgICAgICAgICAgIGlmIGV4dCBub3QgaW4gc2VsZi5zcmNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICAjIEJldHRlciB0byByYWlzZSBhbiBleGNlcHRpb24gaW5zdGVhZCBvZiBzaWxlbnRseSBjb250aW51aW5nCisgICAgICAgICAgICAgICAgIyBhbmQgbGF0ZXIgY29tcGxhaW4gYWJvdXQgc291cmNlcyBhbmQgdGFyZ2V0cyBoYXZpbmcKKyAgICAgICAgICAgICAgICAjIGRpZmZlcmVudCBsZW5ndGhzCisgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKCJEb24ndCBrbm93IGhvdyB0byBjb21waWxlICVzIiAlIHNyY19uYW1lKQorICAgICAgICAgICAgaWYgc3RyaXBfZGlyOgorICAgICAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLmJhc2VuYW1lKGJhc2UpCisgICAgICAgICAgICBpZiBleHQgaW4gc2VsZi5fcmNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBzZWxmLnJlc19leHRlbnNpb24pKQorICAgICAgICAgICAgZWxpZiBleHQgaW4gc2VsZi5fbWNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBzZWxmLnJlc19leHRlbnNpb24pKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBzZWxmLm9ial9leHRlbnNpb24pKQorICAgICAgICByZXR1cm4gb2JqX25hbWVzCisKKyAgICBkZWYgY29tcGlsZShzZWxmLCBzb3VyY2VzLAorICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9Tm9uZSwgbWFjcm9zPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLCBkZWJ1Zz1GYWxzZSwKKyAgICAgICAgICAgICAgICBleHRyYV9wcmVhcmdzPU5vbmUsIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGRlcGVuZHM9Tm9uZSk6CisKKyAgICAgICAgaWYgbm90IHNlbGYuaW5pdGlhbGl6ZWQ6CisgICAgICAgICAgICBzZWxmLmluaXRpYWxpemUoKQorICAgICAgICBtYWNyb3MsIG9iamVjdHMsIGV4dHJhX3Bvc3RhcmdzLCBwcF9vcHRzLCBidWlsZCA9IFwKKyAgICAgICAgICAgICAgICBzZWxmLl9zZXR1cF9jb21waWxlKG91dHB1dF9kaXIsIG1hY3JvcywgaW5jbHVkZV9kaXJzLCBzb3VyY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kcywgZXh0cmFfcG9zdGFyZ3MpCisKKyAgICAgICAgY29tcGlsZV9vcHRzID0gZXh0cmFfcHJlYXJncyBvciBbXQorICAgICAgICBjb21waWxlX29wdHMuYXBwZW5kKCcvYycpCisgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgY29tcGlsZV9vcHRzLmV4dGVuZChzZWxmLmNvbXBpbGVfb3B0aW9uc19kZWJ1ZykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGNvbXBpbGVfb3B0cy5leHRlbmQoc2VsZi5jb21waWxlX29wdGlvbnMpCisKKyAgICAgICAgZm9yIG9iaiBpbiBvYmplY3RzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNyYywgZXh0ID0gYnVpbGRbb2JqXQorICAgICAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgICAgICAjIHBhc3MgdGhlIGZ1bGwgcGF0aG5hbWUgdG8gTVNWQyBpbiBkZWJ1ZyBtb2RlLAorICAgICAgICAgICAgICAgICMgdGhpcyBhbGxvd3MgdGhlIGRlYnVnZ2VyIHRvIGZpbmQgdGhlIHNvdXJjZSBmaWxlCisgICAgICAgICAgICAgICAgIyB3aXRob3V0IGFza2luZyB0aGUgdXNlciB0byBicm93c2UgZm9yIGl0CisgICAgICAgICAgICAgICAgc3JjID0gb3MucGF0aC5hYnNwYXRoKHNyYykKKworICAgICAgICAgICAgaWYgZXh0IGluIHNlbGYuX2NfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICBpbnB1dF9vcHQgPSAiL1RjIiArIHNyYworICAgICAgICAgICAgZWxpZiBleHQgaW4gc2VsZi5fY3BwX2V4dGVuc2lvbnM6CisgICAgICAgICAgICAgICAgaW5wdXRfb3B0ID0gIi9UcCIgKyBzcmMKKyAgICAgICAgICAgIGVsaWYgZXh0IGluIHNlbGYuX3JjX2V4dGVuc2lvbnM6CisgICAgICAgICAgICAgICAgIyBjb21waWxlIC5SQyB0byAuUkVTIGZpbGUKKyAgICAgICAgICAgICAgICBpbnB1dF9vcHQgPSBzcmMKKyAgICAgICAgICAgICAgICBvdXRwdXRfb3B0ID0gIi9mbyIgKyBvYmoKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYucmNdICsgcHBfb3B0cyArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW291dHB1dF9vcHRdICsgW2lucHV0X29wdF0pCisgICAgICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGVsaWYgZXh0IGluIHNlbGYuX21jX2V4dGVuc2lvbnM6CisKKyAgICAgICAgICAgICAgICAjIENvbXBpbGUgLk1DIHRvIC5SQyBmaWxlIHRvIC5SRVMgZmlsZS4KKyAgICAgICAgICAgICAgICAjICAgKiAnLWggZGlyJyBzcGVjaWZpZXMgdGhlIGRpcmVjdG9yeSBmb3IgdGhlCisgICAgICAgICAgICAgICAgIyAgICAgZ2VuZXJhdGVkIGluY2x1ZGUgZmlsZQorICAgICAgICAgICAgICAgICMgICAqICctciBkaXInIHNwZWNpZmllcyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBvZiB0aGUKKyAgICAgICAgICAgICAgICAjICAgICBnZW5lcmF0ZWQgUkMgZmlsZSBhbmQgdGhlIGJpbmFyeSBtZXNzYWdlIHJlc291cmNlCisgICAgICAgICAgICAgICAgIyAgICAgaXQgaW5jbHVkZXMKKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyBGb3Igbm93IChzaW5jZSB0aGVyZSBhcmUgbm8gb3B0aW9ucyB0byBjaGFuZ2UgdGhpcyksCisgICAgICAgICAgICAgICAgIyB3ZSB1c2UgdGhlIHNvdXJjZS1kaXJlY3RvcnkgZm9yIHRoZSBpbmNsdWRlIGZpbGUgYW5kCisgICAgICAgICAgICAgICAgIyB0aGUgYnVpbGQgZGlyZWN0b3J5IGZvciB0aGUgUkMgZmlsZSBhbmQgbWVzc2FnZQorICAgICAgICAgICAgICAgICMgcmVzb3VyY2VzLiBUaGlzIHdvcmtzIGF0IGxlYXN0IGZvciB3aW4zMmFsbC4KKworICAgICAgICAgICAgICAgIGhfZGlyID0gb3MucGF0aC5kaXJuYW1lKHNyYykKKyAgICAgICAgICAgICAgICByY19kaXIgPSBvcy5wYXRoLmRpcm5hbWUob2JqKQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgIyBmaXJzdCBjb21waWxlIC5NQyB0byAuUkMgYW5kIC5IIGZpbGUKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5tY10gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsnLWgnLCBoX2RpciwgJy1yJywgcmNfZGlyXSArIFtzcmNdKQorICAgICAgICAgICAgICAgICAgICBiYXNlLCBfID0gb3MucGF0aC5zcGxpdGV4dChvcy5wYXRoLmJhc2VuYW1lKHNyYykpCisgICAgICAgICAgICAgICAgICAgIHJjX2ZpbGUgPSBvcy5wYXRoLmpvaW4ocmNfZGlyLCBiYXNlICsgJy5yYycpCisgICAgICAgICAgICAgICAgICAgICMgdGhlbiBjb21waWxlIC5SQyB0byAuUkVTIGZpbGUKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5yY10gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbIi9mbyIgKyBvYmpdICsgW3JjX2ZpbGVdKQorCisgICAgICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBob3cgdG8gaGFuZGxlIHRoaXMgZmlsZT8KKyAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICJEb24ndCBrbm93IGhvdyB0byBjb21waWxlICVzIHRvICVzIiAlCisgICAgICAgICAgICAgICAgICAgIChzcmMsIG9iaikpCisKKyAgICAgICAgICAgIG91dHB1dF9vcHQgPSAiL0ZvIiArIG9iagorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYuY2NdICsgY29tcGlsZV9vcHRzICsgcHBfb3B0cyArCisgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5wdXRfb3B0LCBvdXRwdXRfb3B0XSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYV9wb3N0YXJncykKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisKKyAgICAgICAgcmV0dXJuIG9iamVjdHMKKworICAgIGRlZiBjcmVhdGVfc3RhdGljX2xpYihzZWxmLCBvYmplY3RzLCBvdXRwdXRfbGlibmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz1GYWxzZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgIGlmIG5vdCBzZWxmLmluaXRpYWxpemVkOgorICAgICAgICAgICAgc2VsZi5pbml0aWFsaXplKCkKKyAgICAgICAgb2JqZWN0cywgb3V0cHV0X2RpciA9IHNlbGYuX2ZpeF9vYmplY3RfYXJncyhvYmplY3RzLCBvdXRwdXRfZGlyKQorICAgICAgICBvdXRwdXRfZmlsZW5hbWUgPSBcCisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZmlsZW5hbWUob3V0cHV0X2xpYm5hbWUsIG91dHB1dF9kaXI9b3V0cHV0X2RpcikKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKyAgICAgICAgICAgIGxpYl9hcmdzID0gb2JqZWN0cyArIFsnL09VVDonICsgb3V0cHV0X2ZpbGVuYW1lXQorICAgICAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICAgICAgcGFzcyAgICAgICAgICAgICAgICAgICAgIyBYWFggd2hhdCBnb2VzIGhlcmU/CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5saWJdICsgbGliX2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBMaWJFcnJvcihtc2cpCisKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJXMgKHVwLXRvLWRhdGUpIiwgb3V0cHV0X2ZpbGVuYW1lKQorCisgICAgZGVmIGxpbmsoc2VsZiwgdGFyZ2V0X2Rlc2MsIG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICBleHBvcnRfc3ltYm9scz1Ob25lLCBkZWJ1Zz1GYWxzZSwgZXh0cmFfcHJlYXJncz1Ob25lLAorICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGJ1aWxkX3RlbXA9Tm9uZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisKKyAgICAgICAgaWYgbm90IHNlbGYuaW5pdGlhbGl6ZWQ6CisgICAgICAgICAgICBzZWxmLmluaXRpYWxpemUoKQorICAgICAgICBvYmplY3RzLCBvdXRwdXRfZGlyID0gc2VsZi5fZml4X29iamVjdF9hcmdzKG9iamVjdHMsIG91dHB1dF9kaXIpCisgICAgICAgIGxpYnJhcmllcywgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycyA9IFwKKyAgICAgICAgICAgIHNlbGYuX2ZpeF9saWJfYXJncyhsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMpCisKKyAgICAgICAgaWYgcnVudGltZV9saWJyYXJ5X2RpcnM6CisgICAgICAgICAgICBzZWxmLndhcm4oImRvbid0IGtub3cgd2hhdCB0byBkbyB3aXRoICdydW50aW1lX2xpYnJhcnlfZGlycyc6ICVzIgorICAgICAgICAgICAgICAgICAgICAgICUgKHJ1bnRpbWVfbGlicmFyeV9kaXJzLCkpCisKKyAgICAgICAgbGliX29wdHMgPSBnZW5fbGliX29wdGlvbnMoc2VsZiwgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzKQorICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lID0gb3MucGF0aC5qb2luKG91dHB1dF9kaXIsIG91dHB1dF9maWxlbmFtZSkKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKworICAgICAgICAgICAgaWYgdGFyZ2V0X2Rlc2MgPT0gQ0NvbXBpbGVyLkVYRUNVVEFCTEU6CisgICAgICAgICAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICAgICAgICAgIGxkZmxhZ3MgPSBzZWxmLmxkZmxhZ3Nfc2hhcmVkX2RlYnVnWzE6XQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGxkZmxhZ3MgPSBzZWxmLmxkZmxhZ3Nfc2hhcmVkWzE6XQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgICAgICAgICAgbGRmbGFncyA9IHNlbGYubGRmbGFnc19zaGFyZWRfZGVidWcKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsZGZsYWdzID0gc2VsZi5sZGZsYWdzX3NoYXJlZAorCisgICAgICAgICAgICBleHBvcnRfb3B0cyA9IFtdCisgICAgICAgICAgICBmb3Igc3ltIGluIChleHBvcnRfc3ltYm9scyBvciBbXSk6CisgICAgICAgICAgICAgICAgZXhwb3J0X29wdHMuYXBwZW5kKCIvRVhQT1JUOiIgKyBzeW0pCisKKyAgICAgICAgICAgIGxkX2FyZ3MgPSAobGRmbGFncyArIGxpYl9vcHRzICsgZXhwb3J0X29wdHMgKworICAgICAgICAgICAgICAgICAgICAgICBvYmplY3RzICsgWycvT1VUOicgKyBvdXRwdXRfZmlsZW5hbWVdKQorCisgICAgICAgICAgICAjIFRoZSBNU1ZDIGxpbmtlciBnZW5lcmF0ZXMgLmxpYiBhbmQgLmV4cCBmaWxlcywgd2hpY2ggY2Fubm90IGJlCisgICAgICAgICAgICAjIHN1cHByZXNzZWQgYnkgYW55IGxpbmtlciBzd2l0Y2hlcy4gVGhlIC5saWIgZmlsZXMgbWF5IGV2ZW4gYmUKKyAgICAgICAgICAgICMgbmVlZGVkISBNYWtlIHN1cmUgdGhleSBhcmUgZ2VuZXJhdGVkIGluIHRoZSB0ZW1wb3JhcnkgYnVpbGQKKyAgICAgICAgICAgICMgZGlyZWN0b3J5LiBTaW5jZSB0aGV5IGhhdmUgZGlmZmVyZW50IG5hbWVzIGZvciBkZWJ1ZyBhbmQgcmVsZWFzZQorICAgICAgICAgICAgIyBidWlsZHMsIHRoZXkgY2FuIGdvIGludG8gdGhlIHNhbWUgZGlyZWN0b3J5LgorICAgICAgICAgICAgaWYgZXhwb3J0X3N5bWJvbHMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZGxsX25hbWUsIGRsbF9leHQgPSBvcy5wYXRoLnNwbGl0ZXh0KAorICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmJhc2VuYW1lKG91dHB1dF9maWxlbmFtZSkpCisgICAgICAgICAgICAgICAgaW1wbGliX2ZpbGUgPSBvcy5wYXRoLmpvaW4oCisgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguZGlybmFtZShvYmplY3RzWzBdKSwKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2ZpbGVuYW1lKGRsbF9uYW1lKSkKKyAgICAgICAgICAgICAgICBsZF9hcmdzLmFwcGVuZCgnL0lNUExJQjonICsgaW1wbGliX2ZpbGUpCisKKyAgICAgICAgICAgIGlmIGV4dHJhX3ByZWFyZ3M6CisgICAgICAgICAgICAgICAgbGRfYXJnc1s6MF0gPSBleHRyYV9wcmVhcmdzCisgICAgICAgICAgICBpZiBleHRyYV9wb3N0YXJnczoKKyAgICAgICAgICAgICAgICBsZF9hcmdzLmV4dGVuZChleHRyYV9wb3N0YXJncykKKworICAgICAgICAgICAgc2VsZi5ta3BhdGgob3MucGF0aC5kaXJuYW1lKG91dHB1dF9maWxlbmFtZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5saW5rZXJdICsgbGRfYXJncykKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIExpbmtFcnJvcihtc2cpCisKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJXMgKHVwLXRvLWRhdGUpIiwgb3V0cHV0X2ZpbGVuYW1lKQorCisgICAgIyAtLSBNaXNjZWxsYW5lb3VzIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIFRoZXNlIGFyZSBhbGwgdXNlZCBieSB0aGUgJ2dlbl9saWJfb3B0aW9ucygpIGZ1bmN0aW9uLCBpbgorICAgICMgY2NvbXBpbGVyLnB5LgorCisgICAgZGVmIGxpYnJhcnlfZGlyX29wdGlvbihzZWxmLCBkaXIpOgorICAgICAgICByZXR1cm4gIi9MSUJQQVRIOiIgKyBkaXIKKworICAgIGRlZiBydW50aW1lX2xpYnJhcnlfZGlyX29wdGlvbihzZWxmLCBkaXIpOgorICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKCJkb24ndCBrbm93IGhvdyB0byBzZXQgcnVudGltZSBsaWJyYXJ5IHNlYXJjaCBwYXRoIGZvciBNU1ZDKysiKQorCisgICAgZGVmIGxpYnJhcnlfb3B0aW9uKHNlbGYsIGxpYik6CisgICAgICAgIHJldHVybiBzZWxmLmxpYnJhcnlfZmlsZW5hbWUobGliKQorCisgICAgZGVmIGZpbmRfbGlicmFyeV9maWxlKHNlbGYsIGRpcnMsIGxpYiwgZGVidWc9RmFsc2UpOgorICAgICAgICAjIFByZWZlciBhIGRlYnVnZ2luZyBsaWJyYXJ5IGlmIGZvdW5kIChhbmQgcmVxdWVzdGVkKSwgYnV0IGRlYWwKKyAgICAgICAgIyB3aXRoIGl0IGlmIHdlIGRvbid0IGhhdmUgb25lLgorICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgIHRyeV9uYW1lcyA9IFtsaWIgKyAiX2QiLCBsaWJdCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB0cnlfbmFtZXMgPSBbbGliXQorICAgICAgICBmb3IgZGlyIGluIGRpcnM6CisgICAgICAgICAgICBmb3IgbmFtZSBpbiB0cnlfbmFtZXM6CisgICAgICAgICAgICAgICAgbGliZmlsZSA9IG9zLnBhdGguam9pbihkaXIsIHNlbGYubGlicmFyeV9maWxlbmFtZShuYW1lKSkKKyAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhsaWJmaWxlKToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxpYmZpbGUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgT29wcywgZGlkbid0IGZpbmQgaXQgaW4gKmFueSogb2YgJ2RpcnMnCisgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgIyBIZWxwZXIgbWV0aG9kcyBmb3IgdXNpbmcgdGhlIE1TVkMgcmVnaXN0cnkgc2V0dGluZ3MKKworICAgIGRlZiBmaW5kX2V4ZShzZWxmLCBleGUpOgorICAgICAgICAiIiJSZXR1cm4gcGF0aCB0byBhbiBNU1ZDIGV4ZWN1dGFibGUgcHJvZ3JhbS4KKworICAgICAgICBUcmllcyB0byBmaW5kIHRoZSBwcm9ncmFtIGluIHNldmVyYWwgcGxhY2VzOiBmaXJzdCwgb25lIG9mIHRoZQorICAgICAgICBNU1ZDIHByb2dyYW0gc2VhcmNoIHBhdGhzIGZyb20gdGhlIHJlZ2lzdHJ5OyBuZXh0LCB0aGUgZGlyZWN0b3JpZXMKKyAgICAgICAgaW4gdGhlIFBBVEggZW52aXJvbm1lbnQgdmFyaWFibGUuICBJZiBhbnkgb2YgdGhvc2Ugd29yaywgcmV0dXJuIGFuCisgICAgICAgIGFic29sdXRlIHBhdGggdGhhdCBpcyBrbm93biB0byBleGlzdC4gIElmIG5vbmUgb2YgdGhlbSB3b3JrLCBqdXN0CisgICAgICAgIHJldHVybiB0aGUgb3JpZ2luYWwgcHJvZ3JhbSBuYW1lLCAnZXhlJy4KKyAgICAgICAgIiIiCisKKyAgICAgICAgZm9yIHAgaW4gc2VsZi5fX3BhdGhzOgorICAgICAgICAgICAgZm4gPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5hYnNwYXRoKHApLCBleGUpCisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShmbik6CisgICAgICAgICAgICAgICAgcmV0dXJuIGZuCisKKyAgICAgICAgIyBkaWRuJ3QgZmluZCBpdDsgdHJ5IGV4aXN0aW5nIHBhdGgKKyAgICAgICAgZm9yIHAgaW4gb3MuZW52aXJvblsnUGF0aCddLnNwbGl0KCc7Jyk6CisgICAgICAgICAgICBmbiA9IG9zLnBhdGguam9pbihvcy5wYXRoLmFic3BhdGgocCksIGV4ZSkKKyAgICAgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKGZuKToKKyAgICAgICAgICAgICAgICByZXR1cm4gZm4KKworICAgICAgICByZXR1cm4gZXhlCisKKyAgICBkZWYgZ2V0X21zdmNfcGF0aHMoc2VsZiwgcGF0aCwgcGxhdGZvcm09J3g4NicpOgorICAgICAgICAiIiJHZXQgYSBsaXN0IG9mIGRldnN0dWRpbyBkaXJlY3RvcmllcyAoaW5jbHVkZSwgbGliIG9yIHBhdGgpLgorCisgICAgICAgIFJldHVybiBhIGxpc3Qgb2Ygc3RyaW5ncy4gIFRoZSBsaXN0IHdpbGwgYmUgZW1wdHkgaWYgdW5hYmxlIHRvCisgICAgICAgIGFjY2VzcyB0aGUgcmVnaXN0cnkgb3IgYXBwcm9wcmlhdGUgcmVnaXN0cnkga2V5cyBub3QgZm91bmQuCisgICAgICAgICIiIgorCisgICAgICAgIGlmIG5vdCBfY2FuX3JlYWRfcmVnOgorICAgICAgICAgICAgcmV0dXJuIFtdCisKKyAgICAgICAgcGF0aCA9IHBhdGggKyAiIGRpcnMiCisgICAgICAgIGlmIHNlbGYuX192ZXJzaW9uID49IDc6CisgICAgICAgICAgICBrZXkgPSAociIlc1wlMC4xZlxWQ1xWQ19PQkpFQ1RTX1BMQVRGT1JNX0lORk9cV2luMzJcRGlyZWN0b3JpZXMiCisgICAgICAgICAgICAgICAgICAgJSAoc2VsZi5fX3Jvb3QsIHNlbGYuX192ZXJzaW9uKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGtleSA9IChyIiVzXDYuMFxCdWlsZCBTeXN0ZW1cQ29tcG9uZW50c1xQbGF0Zm9ybXMiCisgICAgICAgICAgICAgICAgICAgciJcV2luMzIgKCVzKVxEaXJlY3RvcmllcyIgJSAoc2VsZi5fX3Jvb3QsIHBsYXRmb3JtKSkKKworICAgICAgICBmb3IgYmFzZSBpbiBIS0VZUzoKKyAgICAgICAgICAgIGQgPSByZWFkX3ZhbHVlcyhiYXNlLCBrZXkpCisgICAgICAgICAgICBpZiBkOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuX192ZXJzaW9uID49IDc6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9fbWFjcm9zLnN1YihkW3BhdGhdKS5zcGxpdCgiOyIpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRbcGF0aF0uc3BsaXQoIjsiKQorICAgICAgICAjIE1TVkMgNiBzZWVtcyB0byBjcmVhdGUgdGhlIHJlZ2lzdHJ5IGVudHJpZXMgd2UgbmVlZCBvbmx5IHdoZW4KKyAgICAgICAgIyB0aGUgR1VJIGlzIHJ1bi4KKyAgICAgICAgaWYgc2VsZi5fX3ZlcnNpb24gPT0gNjoKKyAgICAgICAgICAgIGZvciBiYXNlIGluIEhLRVlTOgorICAgICAgICAgICAgICAgIGlmIHJlYWRfdmFsdWVzKGJhc2UsIHIiJXNcNi4wIiAlIHNlbGYuX19yb290KSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi53YXJuKCJJdCBzZWVtcyB5b3UgaGF2ZSBWaXN1YWwgU3R1ZGlvIDYgaW5zdGFsbGVkLCAiCisgICAgICAgICAgICAgICAgICAgICAgICAiYnV0IHRoZSBleHBlY3RlZCByZWdpc3RyeSBzZXR0aW5ncyBhcmUgbm90IHByZXNlbnQuXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAiWW91IG11c3QgYXQgbGVhc3QgcnVuIHRoZSBWaXN1YWwgU3R1ZGlvIEdVSSBvbmNlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJzbyB0aGF0IHRoZXNlIGVudHJpZXMgYXJlIGNyZWF0ZWQuIikKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgcmV0dXJuIFtdCisKKyAgICBkZWYgc2V0X3BhdGhfZW52X3ZhcihzZWxmLCBuYW1lKToKKyAgICAgICAgIiIiU2V0IGVudmlyb25tZW50IHZhcmlhYmxlICduYW1lJyB0byBhbiBNU1ZDIHBhdGggdHlwZSB2YWx1ZS4KKworICAgICAgICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gYSBTRVQgY29tbWFuZCBwcmlvciB0byBleGVjdXRpb24gb2Ygc3Bhd25lZAorICAgICAgICBjb21tYW5kcy4KKyAgICAgICAgIiIiCisKKyAgICAgICAgaWYgbmFtZSA9PSAibGliIjoKKyAgICAgICAgICAgIHAgPSBzZWxmLmdldF9tc3ZjX3BhdGhzKCJsaWJyYXJ5IikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHAgPSBzZWxmLmdldF9tc3ZjX3BhdGhzKG5hbWUpCisgICAgICAgIGlmIHA6CisgICAgICAgICAgICBvcy5lbnZpcm9uW25hbWVdID0gJzsnLmpvaW4ocCkKKworCitpZiBnZXRfYnVpbGRfdmVyc2lvbigpID49IDguMDoKKyAgICBsb2dnZXIuZGVidWcoImltcG9ydGluZyBuZXcgY29tcGlsZXIgZnJvbSBkaXN0dXRpbHMubXN2Yzljb21waWxlciIpCisgICAgT2xkTVNWQ0NvbXBpbGVyID0gTVNWQ0NvbXBpbGVyCisgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIubXN2Yzljb21waWxlciBpbXBvcnQgTVNWQ0NvbXBpbGVyCisgICAgIyBnZXRfYnVpbGRfYXJjaGl0ZWN0dXJlIG5vdCByZWFsbHkgcmVsZXZhbnQgbm93IHdlIHN1cHBvcnQgY3Jvc3MtY29tcGlsZQorICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLm1zdmM5Y29tcGlsZXIgaW1wb3J0IE1hY3JvRXhwYW5kZXIKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvdW5peGNjb21waWxlci5weSBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvdW5peGNjb21waWxlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNDU4ZmFhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21waWxlci91bml4Y2NvbXBpbGVyLnB5CkBAIC0wLDAgKzEsMzM5IEBACisiIiJDQ29tcGlsZXIgaW1wbGVtZW50YXRpb24gZm9yIFVuaXggY29tcGlsZXJzLgorCitUaGlzIG1vZHVsZSBjb250YWlucyB0aGUgVW5peENDb21waWxlciBjbGFzcywgYSBzdWJjbGFzcyBvZiBDQ29tcGlsZXIKK3RoYXQgaGFuZGxlcyB0aGUgInR5cGljYWwiIFVuaXgtc3R5bGUgY29tbWFuZC1saW5lIEMgY29tcGlsZXI6CisgICogbWFjcm9zIGRlZmluZWQgd2l0aCAtRG5hbWVbPXZhbHVlXQorICAqIG1hY3JvcyB1bmRlZmluZWQgd2l0aCAtVW5hbWUKKyAgKiBpbmNsdWRlIHNlYXJjaCBkaXJlY3RvcmllcyBzcGVjaWZpZWQgd2l0aCAtSWRpcgorICAqIGxpYnJhcmllcyBzcGVjaWZpZWQgd2l0aCAtbGxsaWIKKyAgKiBsaWJyYXJ5IHNlYXJjaCBkaXJlY3RvcmllcyBzcGVjaWZpZWQgd2l0aCAtTGRpcgorICAqIGNvbXBpbGUgaGFuZGxlZCBieSAnY2MnIChvciBzaW1pbGFyKSBleGVjdXRhYmxlIHdpdGggLWMgb3B0aW9uOgorICAgIGNvbXBpbGVzIC5jIHRvIC5vCisgICogbGluayBzdGF0aWMgbGlicmFyeSBoYW5kbGVkIGJ5ICdhcicgY29tbWFuZCAocG9zc2libHkgd2l0aCAncmFubGliJykKKyAgKiBsaW5rIHNoYXJlZCBsaWJyYXJ5IGhhbmRsZWQgYnkgJ2NjIC1zaGFyZWQnCisiIiIKKworaW1wb3J0IG9zLCBzeXMKKworZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgbmV3ZXIKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlciBpbXBvcnQgQ0NvbXBpbGVyCitmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgZ2VuX3ByZXByb2Nlc3Nfb3B0aW9ucywgZ2VuX2xpYl9vcHRpb25zCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChQYWNrYWdpbmdFeGVjRXJyb3IsIENvbXBpbGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaWJFcnJvciwgTGlua0Vycm9yKQorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgoraW1wb3J0IHN5c2NvbmZpZworCisKKyMgWFhYIFRoaW5ncyBub3QgY3VycmVudGx5IGhhbmRsZWQ6CisjICAgKiBvcHRpbWl6YXRpb24vZGVidWcvd2FybmluZyBmbGFnczsgd2UganVzdCB1c2Ugd2hhdGV2ZXIncyBpbiBQeXRob24ncworIyAgICAgTWFrZWZpbGUgYW5kIGxpdmUgd2l0aCBpdC4gIElzIHRoaXMgYWRlcXVhdGU/ICBJZiBub3QsIHdlIG1pZ2h0CisjICAgICBoYXZlIHRvIGhhdmUgYSBidW5jaCBvZiBzdWJjbGFzc2VzIEdOVUNDb21waWxlciwgU0dJQ0NvbXBpbGVyLAorIyAgICAgU3VuQ0NvbXBpbGVyLCBhbmQgSSBzdXNwZWN0IGRvd24gdGhhdCByb2FkIGxpZXMgbWFkbmVzcy4KKyMgICAqIGV2ZW4gaWYgd2UgZG9uJ3Qga25vdyBhIHdhcm5pbmcgZmxhZyBmcm9tIGFuIG9wdGltaXphdGlvbiBmbGFnLAorIyAgICAgd2UgbmVlZCBzb21lIHdheSBmb3Igb3V0c2lkZXJzIHRvIGZlZWQgcHJlcHJvY2Vzc29yL2NvbXBpbGVyL2xpbmtlcgorIyAgICAgZmxhZ3MgaW4gdG8gdXMgLS0gZWcuIGEgc3lzYWRtaW4gbWlnaHQgd2FudCB0byBtYW5kYXRlIGNlcnRhaW4gZmxhZ3MKKyMgICAgIHZpYSBhIHNpdGUgY29uZmlnIGZpbGUsIG9yIGEgdXNlciBtaWdodCB3YW50IHRvIHNldCBzb21ldGhpbmcgZm9yCisjICAgICBjb21waWxpbmcgdGhpcyBtb2R1bGUgZGlzdHJpYnV0aW9uIG9ubHkgdmlhIHRoZSBweXNldHVwIGNvbW1hbmQKKyMgICAgIGxpbmUsIHdoYXRldmVyLiAgQXMgbG9uZyBhcyB0aGVzZSBvcHRpb25zIGNvbWUgZnJvbSBzb21ldGhpbmcgb24gdGhlCisjICAgICBjdXJyZW50IHN5c3RlbSwgdGhleSBjYW4gYmUgYXMgc3lzdGVtLWRlcGVuZGVudCBhcyB0aGV5IGxpa2UsIGFuZCB3ZQorIyAgICAgc2hvdWxkIGp1c3QgaGFwcGlseSBzdHVmZiB0aGVtIGludG8gdGhlIHByZXByb2Nlc3Nvci9jb21waWxlci9saW5rZXIKKyMgICAgIG9wdGlvbnMgYW5kIGNhcnJ5IG9uLgorCitkZWYgX2Rhcndpbl9jb21waWxlcl9maXh1cChjb21waWxlcl9zbywgY2NfYXJncyk6CisgICAgIiIiCisgICAgVGhpcyBmdW5jdGlvbiB3aWxsIHN0cmlwICctaXN5c3Jvb3QgUEFUSCcgYW5kICctYXJjaCBBUkNIJyBmcm9tIHRoZQorICAgIGNvbXBpbGUgZmxhZ3MgaWYgdGhlIHVzZXIgaGFzIHNwZWNpZmllZCBvbmUgdGhlbSBpbiBleHRyYV9jb21waWxlX2ZsYWdzLgorCisgICAgVGhpcyBpcyBuZWVkZWQgYmVjYXVzZSAnLWFyY2ggQVJDSCcgYWRkcyBhbm90aGVyIGFyY2hpdGVjdHVyZSB0byB0aGUKKyAgICBidWlsZCwgd2l0aG91dCBhIHdheSB0byByZW1vdmUgYW4gYXJjaGl0ZWN0dXJlLiBGdXJ0aGVybW9yZSBHQ0Mgd2lsbAorICAgIGJhcmYgaWYgbXVsdGlwbGUgJy1pc3lzcm9vdCcgYXJndW1lbnRzIGFyZSBwcmVzZW50LgorICAgICIiIgorICAgIHN0cmlwQXJjaCA9IHN0cmlwU3lzcm9vdCA9IEZhbHNlCisKKyAgICBjb21waWxlcl9zbyA9IGxpc3QoY29tcGlsZXJfc28pCisgICAga2VybmVsX3ZlcnNpb24gPSBvcy51bmFtZSgpWzJdICMgOC40LjMKKyAgICBtYWpvcl92ZXJzaW9uID0gaW50KGtlcm5lbF92ZXJzaW9uLnNwbGl0KCcuJylbMF0pCisKKyAgICBpZiBtYWpvcl92ZXJzaW9uIDwgODoKKyAgICAgICAgIyBPU1ggYmVmb3JlIDEwLjQuMCwgdGhlc2UgZG9uJ3Qgc3VwcG9ydCAtYXJjaCBhbmQgLWlzeXNyb290IGF0CisgICAgICAgICMgYWxsLgorICAgICAgICBzdHJpcEFyY2ggPSBzdHJpcFN5c3Jvb3QgPSBUcnVlCisgICAgZWxzZToKKyAgICAgICAgc3RyaXBBcmNoID0gJy1hcmNoJyBpbiBjY19hcmdzCisgICAgICAgIHN0cmlwU3lzcm9vdCA9ICctaXN5c3Jvb3QnIGluIGNjX2FyZ3MKKworICAgIGlmIHN0cmlwQXJjaCBvciAnQVJDSEZMQUdTJyBpbiBvcy5lbnZpcm9uOgorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGluZGV4ID0gY29tcGlsZXJfc28uaW5kZXgoJy1hcmNoJykKKyAgICAgICAgICAgICAgICAjIFN0cmlwIHRoaXMgYXJndW1lbnQgYW5kIHRoZSBuZXh0IG9uZToKKyAgICAgICAgICAgICAgICBkZWwgY29tcGlsZXJfc29baW5kZXg6aW5kZXgrMl0KKyAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgIGJyZWFrCisKKyAgICBpZiAnQVJDSEZMQUdTJyBpbiBvcy5lbnZpcm9uIGFuZCBub3Qgc3RyaXBBcmNoOgorICAgICAgICAjIFVzZXIgc3BlY2lmaWVkIGRpZmZlcmVudCAtYXJjaCBmbGFncyBpbiB0aGUgZW52aXJvbiwKKyAgICAgICAgIyBzZWUgYWxzbyB0aGUgc3lzY29uZmlnCisgICAgICAgIGNvbXBpbGVyX3NvID0gY29tcGlsZXJfc28gKyBvcy5lbnZpcm9uWydBUkNIRkxBR1MnXS5zcGxpdCgpCisKKyAgICBpZiBzdHJpcFN5c3Jvb3Q6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGluZGV4ID0gY29tcGlsZXJfc28uaW5kZXgoJy1pc3lzcm9vdCcpCisgICAgICAgICAgICAjIFN0cmlwIHRoaXMgYXJndW1lbnQgYW5kIHRoZSBuZXh0IG9uZToKKyAgICAgICAgICAgIGRlbCBjb21waWxlcl9zb1tpbmRleDppbmRleCsyXQorICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKworICAgICMgQ2hlY2sgaWYgdGhlIFNESyB0aGF0IGlzIHVzZWQgZHVyaW5nIGNvbXBpbGF0aW9uIGFjdHVhbGx5IGV4aXN0cywKKyAgICAjIHRoZSB1bml2ZXJzYWwgYnVpbGQgcmVxdWlyZXMgdGhlIHVzYWdlIG9mIGEgdW5pdmVyc2FsIFNESyBhbmQgbm90IGFsbAorICAgICMgdXNlcnMgaGF2ZSB0aGF0IGluc3RhbGxlZCBieSBkZWZhdWx0LgorICAgIHN5c3Jvb3QgPSBOb25lCisgICAgaWYgJy1pc3lzcm9vdCcgaW4gY2NfYXJnczoKKyAgICAgICAgaWR4ID0gY2NfYXJncy5pbmRleCgnLWlzeXNyb290JykKKyAgICAgICAgc3lzcm9vdCA9IGNjX2FyZ3NbaWR4KzFdCisgICAgZWxpZiAnLWlzeXNyb290JyBpbiBjb21waWxlcl9zbzoKKyAgICAgICAgaWR4ID0gY29tcGlsZXJfc28uaW5kZXgoJy1pc3lzcm9vdCcpCisgICAgICAgIHN5c3Jvb3QgPSBjb21waWxlcl9zb1tpZHgrMV0KKworICAgIGlmIHN5c3Jvb3QgYW5kIG5vdCBvcy5wYXRoLmlzZGlyKHN5c3Jvb3QpOgorICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICJjb21waWxpbmcgd2l0aCBhbiBTREsgdGhhdCBkb2Vzbid0IHNlZW0gdG8gZXhpc3Q6ICVyO1xuIgorICAgICAgICAgICAgInBsZWFzZSBjaGVjayB5b3VyIFhjb2RlIGluc3RhbGxhdGlvbiIsIHN5c3Jvb3QpCisKKyAgICByZXR1cm4gY29tcGlsZXJfc28KKworY2xhc3MgVW5peENDb21waWxlcihDQ29tcGlsZXIpOgorCisgICAgbmFtZSA9ICd1bml4JworICAgIGRlc2NyaXB0aW9uID0gJ1N0YW5kYXJkIFVOSVgtc3R5bGUgY29tcGlsZXInCisKKyAgICAjIFRoZXNlIGFyZSB1c2VkIGJ5IENDb21waWxlciBpbiB0d28gcGxhY2VzOiB0aGUgY29uc3RydWN0b3Igc2V0cworICAgICMgaW5zdGFuY2UgYXR0cmlidXRlcyAncHJlcHJvY2Vzc29yJywgJ2NvbXBpbGVyJywgZXRjLiBmcm9tIHRoZW0sIGFuZAorICAgICMgJ3NldF9leGVjdXRhYmxlKCknIGFsbG93cyBhbnkgb2YgdGhlc2UgdG8gYmUgc2V0LiAgVGhlIGRlZmF1bHRzIGhlcmUKKyAgICAjIGFyZSBwcmV0dHkgZ2VuZXJpYzsgdGhleSB3aWxsIHByb2JhYmx5IGhhdmUgdG8gYmUgc2V0IGJ5IGFuIG91dHNpZGVyCisgICAgIyAoZWcuIHVzaW5nIGluZm9ybWF0aW9uIGRpc2NvdmVyZWQgYnkgdGhlIHN5c2NvbmZpZyBhYm91dCBidWlsZGluZworICAgICMgUHl0aG9uIGV4dGVuc2lvbnMpLgorICAgIGV4ZWN1dGFibGVzID0geydwcmVwcm9jZXNzb3InIDogTm9uZSwKKyAgICAgICAgICAgICAgICAgICAnY29tcGlsZXInICAgICA6IFsiY2MiXSwKKyAgICAgICAgICAgICAgICAgICAnY29tcGlsZXJfc28nICA6IFsiY2MiXSwKKyAgICAgICAgICAgICAgICAgICAnY29tcGlsZXJfY3h4JyA6IFsiY2MiXSwKKyAgICAgICAgICAgICAgICAgICAnbGlua2VyX3NvJyAgICA6IFsiY2MiLCAiLXNoYXJlZCJdLAorICAgICAgICAgICAgICAgICAgICdsaW5rZXJfZXhlJyAgIDogWyJjYyJdLAorICAgICAgICAgICAgICAgICAgICdhcmNoaXZlcicgICAgIDogWyJhciIsICItY3IiXSwKKyAgICAgICAgICAgICAgICAgICAncmFubGliJyAgICAgICA6IE5vbmUsCisgICAgICAgICAgICAgICAgICB9CisKKyAgICBpZiBzeXMucGxhdGZvcm1bOjZdID09ICJkYXJ3aW4iOgorICAgICAgICBleGVjdXRhYmxlc1sncmFubGliJ10gPSBbInJhbmxpYiJdCisKKyAgICAjIE5lZWRlZCBmb3IgdGhlIGZpbGVuYW1lIGdlbmVyYXRpb24gbWV0aG9kcyBwcm92aWRlZCBieSB0aGUgYmFzZQorICAgICMgY2xhc3MsIENDb21waWxlci4gIFhYWCB3aG9ldmVyIGluc3RhbnRpYXRlcy91c2VzIGEgcGFydGljdWxhcgorICAgICMgVW5peENDb21waWxlciBpbnN0YW5jZSBzaG91bGQgc2V0ICdzaGFyZWRfbGliX2V4dCcgLS0gd2Ugc2V0IGEKKyAgICAjIHJlYXNvbmFibGUgY29tbW9uIGRlZmF1bHQgaGVyZSwgYnV0IGl0J3Mgbm90IG5lY2Vzc2FyaWx5IHVzZWQgb24gYWxsCisgICAgIyBVbmljZXMhCisKKyAgICBzcmNfZXh0ZW5zaW9ucyA9IFsiLmMiLCIuQyIsIi5jYyIsIi5jeHgiLCIuY3BwIiwiLm0iXQorICAgIG9ial9leHRlbnNpb24gPSAiLm8iCisgICAgc3RhdGljX2xpYl9leHRlbnNpb24gPSAiLmEiCisgICAgc2hhcmVkX2xpYl9leHRlbnNpb24gPSAiLnNvIgorICAgIGR5bGliX2xpYl9leHRlbnNpb24gPSAiLmR5bGliIgorICAgIHN0YXRpY19saWJfZm9ybWF0ID0gc2hhcmVkX2xpYl9mb3JtYXQgPSBkeWxpYl9saWJfZm9ybWF0ID0gImxpYiVzJXMiCisgICAgaWYgc3lzLnBsYXRmb3JtID09ICJjeWd3aW4iOgorICAgICAgICBleGVfZXh0ZW5zaW9uID0gIi5leGUiCisKKyAgICBkZWYgcHJlcHJvY2VzcyhzZWxmLCBzb3VyY2UsCisgICAgICAgICAgICAgICAgICAgb3V0cHV0X2ZpbGU9Tm9uZSwgbWFjcm9zPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLAorICAgICAgICAgICAgICAgICAgIGV4dHJhX3ByZWFyZ3M9Tm9uZSwgZXh0cmFfcG9zdGFyZ3M9Tm9uZSk6CisgICAgICAgIGlnbm9yZSwgbWFjcm9zLCBpbmNsdWRlX2RpcnMgPSBcCisgICAgICAgICAgICBzZWxmLl9maXhfY29tcGlsZV9hcmdzKE5vbmUsIG1hY3JvcywgaW5jbHVkZV9kaXJzKQorICAgICAgICBwcF9vcHRzID0gZ2VuX3ByZXByb2Nlc3Nfb3B0aW9ucyhtYWNyb3MsIGluY2x1ZGVfZGlycykKKyAgICAgICAgcHBfYXJncyA9IHNlbGYucHJlcHJvY2Vzc29yICsgcHBfb3B0cworICAgICAgICBpZiBvdXRwdXRfZmlsZToKKyAgICAgICAgICAgIHBwX2FyZ3MuZXh0ZW5kKCgnLW8nLCBvdXRwdXRfZmlsZSkpCisgICAgICAgIGlmIGV4dHJhX3ByZWFyZ3M6CisgICAgICAgICAgICBwcF9hcmdzWzowXSA9IGV4dHJhX3ByZWFyZ3MKKyAgICAgICAgaWYgZXh0cmFfcG9zdGFyZ3M6CisgICAgICAgICAgICBwcF9hcmdzLmV4dGVuZChleHRyYV9wb3N0YXJncykKKyAgICAgICAgcHBfYXJncy5hcHBlbmQoc291cmNlKQorCisgICAgICAgICMgV2UgbmVlZCB0byBwcmVwcm9jZXNzOiBlaXRoZXIgd2UncmUgYmVpbmcgZm9yY2VkIHRvLCBvciB3ZSdyZQorICAgICAgICAjIGdlbmVyYXRpbmcgb3V0cHV0IHRvIHN0ZG91dCwgb3IgdGhlcmUncyBhIHRhcmdldCBvdXRwdXQgZmlsZSBhbmQKKyAgICAgICAgIyB0aGUgc291cmNlIGZpbGUgaXMgbmV3ZXIgdGhhbiB0aGUgdGFyZ2V0IChvciB0aGUgdGFyZ2V0IGRvZXNuJ3QKKyAgICAgICAgIyBleGlzdCkuCisgICAgICAgIGlmIHNlbGYuZm9yY2Ugb3Igb3V0cHV0X2ZpbGUgaXMgTm9uZSBvciBuZXdlcihzb3VyY2UsIG91dHB1dF9maWxlKToKKyAgICAgICAgICAgIGlmIG91dHB1dF9maWxlOgorICAgICAgICAgICAgICAgIHNlbGYubWtwYXRoKG9zLnBhdGguZGlybmFtZShvdXRwdXRfZmlsZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihwcF9hcmdzKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKKworICAgIGRlZiBfY29tcGlsZShzZWxmLCBvYmosIHNyYywgZXh0LCBjY19hcmdzLCBleHRyYV9wb3N0YXJncywgcHBfb3B0cyk6CisgICAgICAgIGNvbXBpbGVyX3NvID0gc2VsZi5jb21waWxlcl9zbworICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgICAgICAgICBjb21waWxlcl9zbyA9IF9kYXJ3aW5fY29tcGlsZXJfZml4dXAoY29tcGlsZXJfc28sIGNjX2FyZ3MgKyBleHRyYV9wb3N0YXJncykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5zcGF3bihjb21waWxlcl9zbyArIGNjX2FyZ3MgKyBbc3JjLCAnLW8nLCBvYmpdICsKKyAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3MpCisgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKKworICAgIGRlZiBjcmVhdGVfc3RhdGljX2xpYihzZWxmLCBvYmplY3RzLCBvdXRwdXRfbGlibmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj1Ob25lLCBkZWJ1Zz1GYWxzZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgIG9iamVjdHMsIG91dHB1dF9kaXIgPSBzZWxmLl9maXhfb2JqZWN0X2FyZ3Mob2JqZWN0cywgb3V0cHV0X2RpcikKKworICAgICAgICBvdXRwdXRfZmlsZW5hbWUgPSBcCisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZmlsZW5hbWUob3V0cHV0X2xpYm5hbWUsIG91dHB1dF9kaXI9b3V0cHV0X2RpcikKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKyAgICAgICAgICAgIHNlbGYubWtwYXRoKG9zLnBhdGguZGlybmFtZShvdXRwdXRfZmlsZW5hbWUpKQorICAgICAgICAgICAgc2VsZi5zcGF3bihzZWxmLmFyY2hpdmVyICsKKyAgICAgICAgICAgICAgICAgICAgICAgW291dHB1dF9maWxlbmFtZV0gKworICAgICAgICAgICAgICAgICAgICAgICBvYmplY3RzICsgc2VsZi5vYmplY3RzKQorCisgICAgICAgICAgICAjIE5vdCBtYW55IFVuaWNlcyByZXF1aXJlZCByYW5saWIgYW55bW9yZSAtLSBTdW5PUyA0LnggaXMsIEkKKyAgICAgICAgICAgICMgdGhpbmsgdGhlIG9ubHkgbWFqb3IgVW5peCB0aGF0IGRvZXMuICBNYXliZSB3ZSBuZWVkIHNvbWUKKyAgICAgICAgICAgICMgcGxhdGZvcm0gaW50ZWxsaWdlbmNlIGhlcmUgdG8gc2tpcCByYW5saWIgaWYgaXQncyBub3QKKyAgICAgICAgICAgICMgbmVlZGVkIC0tIG9yIG1heWJlIFB5dGhvbidzIGNvbmZpZ3VyZSBzY3JpcHQgdG9vayBjYXJlIG9mCisgICAgICAgICAgICAjIGl0IGZvciB1cywgaGVuY2UgdGhlIGNoZWNrIGZvciBsZWFkaW5nIGNvbG9uLgorICAgICAgICAgICAgaWYgc2VsZi5yYW5saWI6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBzZWxmLnNwYXduKHNlbGYucmFubGliICsgW291dHB1dF9maWxlbmFtZV0pCisgICAgICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIExpYkVycm9yKG1zZykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJXMgKHVwLXRvLWRhdGUpIiwgb3V0cHV0X2ZpbGVuYW1lKQorCisgICAgZGVmIGxpbmsoc2VsZiwgdGFyZ2V0X2Rlc2MsIG9iamVjdHMsCisgICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZGlyPU5vbmUsIGxpYnJhcmllcz1Ob25lLAorICAgICAgICAgICAgIGxpYnJhcnlfZGlycz1Ob25lLCBydW50aW1lX2xpYnJhcnlfZGlycz1Ob25lLAorICAgICAgICAgICAgIGV4cG9ydF9zeW1ib2xzPU5vbmUsIGRlYnVnPUZhbHNlLCBleHRyYV9wcmVhcmdzPU5vbmUsCisgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwgYnVpbGRfdGVtcD1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lKToKKyAgICAgICAgb2JqZWN0cywgb3V0cHV0X2RpciA9IHNlbGYuX2ZpeF9vYmplY3RfYXJncyhvYmplY3RzLCBvdXRwdXRfZGlyKQorICAgICAgICBsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMgPSBcCisgICAgICAgICAgICBzZWxmLl9maXhfbGliX2FyZ3MobGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzKQorCisgICAgICAgIGxpYl9vcHRzID0gZ2VuX2xpYl9vcHRpb25zKHNlbGYsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcykKKyAgICAgICAgaWYgdHlwZShvdXRwdXRfZGlyKSBub3QgaW4gKHN0ciwgdHlwZShOb25lKSk6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIidvdXRwdXRfZGlyJyBtdXN0IGJlIGEgc3RyaW5nIG9yIE5vbmUiKQorICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lID0gb3MucGF0aC5qb2luKG91dHB1dF9kaXIsIG91dHB1dF9maWxlbmFtZSkKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKyAgICAgICAgICAgIGxkX2FyZ3MgPSAob2JqZWN0cyArIHNlbGYub2JqZWN0cyArCisgICAgICAgICAgICAgICAgICAgICAgIGxpYl9vcHRzICsgWyctbycsIG91dHB1dF9maWxlbmFtZV0pCisgICAgICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgICAgICBsZF9hcmdzWzowXSA9IFsnLWcnXQorICAgICAgICAgICAgaWYgZXh0cmFfcHJlYXJnczoKKyAgICAgICAgICAgICAgICBsZF9hcmdzWzowXSA9IGV4dHJhX3ByZWFyZ3MKKyAgICAgICAgICAgIGlmIGV4dHJhX3Bvc3RhcmdzOgorICAgICAgICAgICAgICAgIGxkX2FyZ3MuZXh0ZW5kKGV4dHJhX3Bvc3RhcmdzKQorICAgICAgICAgICAgc2VsZi5ta3BhdGgob3MucGF0aC5kaXJuYW1lKG91dHB1dF9maWxlbmFtZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaWYgdGFyZ2V0X2Rlc2MgPT0gQ0NvbXBpbGVyLkVYRUNVVEFCTEU6CisgICAgICAgICAgICAgICAgICAgIGxpbmtlciA9IHNlbGYubGlua2VyX2V4ZVs6XQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGxpbmtlciA9IHNlbGYubGlua2VyX3NvWzpdCisgICAgICAgICAgICAgICAgaWYgdGFyZ2V0X2xhbmcgPT0gImMrKyIgYW5kIHNlbGYuY29tcGlsZXJfY3h4OgorICAgICAgICAgICAgICAgICAgICAjIHNraXAgb3ZlciBlbnZpcm9ubWVudCB2YXJpYWJsZSBzZXR0aW5ncyBpZiAvdXNyL2Jpbi9lbnYKKyAgICAgICAgICAgICAgICAgICAgIyBpcyB1c2VkIHRvIHNldCB1cCB0aGUgbGlua2VyJ3MgZW52aXJvbm1lbnQuCisgICAgICAgICAgICAgICAgICAgICMgVGhpcyBpcyBuZWVkZWQgb24gT1NYLiBOb3RlOiB0aGlzIGFzc3VtZXMgdGhhdCB0aGUKKyAgICAgICAgICAgICAgICAgICAgIyBub3JtYWwgYW5kIEMrKyBjb21waWxlciBoYXZlIHRoZSBzYW1lIGVudmlyb25tZW50CisgICAgICAgICAgICAgICAgICAgICMgc2V0dGluZ3MuCisgICAgICAgICAgICAgICAgICAgIGkgPSAwCisgICAgICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguYmFzZW5hbWUobGlua2VyWzBdKSA9PSAiZW52IjoKKyAgICAgICAgICAgICAgICAgICAgICAgIGkgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAnPScgaW4gbGlua2VyW2ldOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBpICsgMQorCisgICAgICAgICAgICAgICAgICAgIGxpbmtlcltpXSA9IHNlbGYuY29tcGlsZXJfY3h4W2ldCisKKyAgICAgICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgICAgICAgICAgICAgICAgIGxpbmtlciA9IF9kYXJ3aW5fY29tcGlsZXJfZml4dXAobGlua2VyLCBsZF9hcmdzKQorCisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihsaW5rZXIgKyBsZF9hcmdzKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgTGlua0Vycm9yKG1zZykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJXMgKHVwLXRvLWRhdGUpIiwgb3V0cHV0X2ZpbGVuYW1lKQorCisgICAgIyAtLSBNaXNjZWxsYW5lb3VzIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIFRoZXNlIGFyZSBhbGwgdXNlZCBieSB0aGUgJ2dlbl9saWJfb3B0aW9ucygpIGZ1bmN0aW9uLCBpbgorICAgICMgY2NvbXBpbGVyLnB5LgorCisgICAgZGVmIGxpYnJhcnlfZGlyX29wdGlvbihzZWxmLCBkaXIpOgorICAgICAgICByZXR1cm4gIi1MIiArIGRpcgorCisgICAgZGVmIF9pc19nY2Moc2VsZiwgY29tcGlsZXJfbmFtZSk6CisgICAgICAgIHJldHVybiAiZ2NjIiBpbiBjb21waWxlcl9uYW1lIG9yICJnKysiIGluIGNvbXBpbGVyX25hbWUKKworICAgIGRlZiBydW50aW1lX2xpYnJhcnlfZGlyX29wdGlvbihzZWxmLCBkaXIpOgorICAgICAgICAjIFhYWCBIYWNraXNoLCBhdCB0aGUgdmVyeSBsZWFzdC4gIFNlZSBQeXRob24gYnVnICM0NDU5MDI6CisgICAgICAgICMgaHR0cDovL3NvdXJjZWZvcmdlLm5ldC90cmFja2VyL2luZGV4LnBocAorICAgICAgICAjICAgP2Z1bmM9ZGV0YWlsJmFpZD00NDU5MDImZ3JvdXBfaWQ9NTQ3MCZhdGlkPTEwNTQ3MAorICAgICAgICAjIExpbmtlcnMgb24gZGlmZmVyZW50IHBsYXRmb3JtcyBuZWVkIGRpZmZlcmVudCBvcHRpb25zIHRvCisgICAgICAgICMgc3BlY2lmeSB0aGF0IGRpcmVjdG9yaWVzIG5lZWQgdG8gYmUgYWRkZWQgdG8gdGhlIGxpc3Qgb2YKKyAgICAgICAgIyBkaXJlY3RvcmllcyBzZWFyY2hlZCBmb3IgZGVwZW5kZW5jaWVzIHdoZW4gYSBkeW5hbWljIGxpYnJhcnkKKyAgICAgICAgIyBpcyBzb3VnaHQuICBHQ0Mgb24gR05VIHN5c3RlbXMgKExpbnV4LCBGcmVlQlNELCAuLi4pIGhhcyB0bworICAgICAgICAjIGJlIHRvbGQgdG8gcGFzcyB0aGUgLVIgb3B0aW9uIHRocm91Z2ggdG8gdGhlIGxpbmtlciwgd2hlcmVhcworICAgICAgICAjIG90aGVyIGNvbXBpbGVycyBhbmQgZ2NjIG9uIG90aGVyIHN5c3RlbXMganVzdCBrbm93IHRoaXMuCisgICAgICAgICMgT3RoZXIgY29tcGlsZXJzIG1heSBuZWVkIHNvbWV0aGluZyBzbGlnaHRseSBkaWZmZXJlbnQuICBBdAorICAgICAgICAjIHRoaXMgdGltZSwgdGhlcmUncyBubyB3YXkgdG8gZGV0ZXJtaW5lIHRoaXMgaW5mb3JtYXRpb24gZnJvbQorICAgICAgICAjIHRoZSBjb25maWd1cmF0aW9uIGRhdGEgc3RvcmVkIGluIHRoZSBQeXRob24gaW5zdGFsbGF0aW9uLCBzbworICAgICAgICAjIHdlIHVzZSB0aGlzIGhhY2suCisKKyAgICAgICAgY29tcGlsZXIgPSBvcy5wYXRoLmJhc2VuYW1lKHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcigiQ0MiKSkKKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtWzo2XSA9PSAiZGFyd2luIjoKKyAgICAgICAgICAgICMgTWFjT1NYJ3MgbGlua2VyIGRvZXNuJ3QgdW5kZXJzdGFuZCB0aGUgLVIgZmxhZyBhdCBhbGwKKyAgICAgICAgICAgIHJldHVybiAiLUwiICsgZGlyCisgICAgICAgIGVsaWYgc3lzLnBsYXRmb3JtWzo1XSA9PSAiaHAtdXgiOgorICAgICAgICAgICAgaWYgc2VsZi5faXNfZ2NjKGNvbXBpbGVyKToKKyAgICAgICAgICAgICAgICByZXR1cm4gWyItV2wsK3MiLCAiLUwiICsgZGlyXQorICAgICAgICAgICAgcmV0dXJuIFsiK3MiLCAiLUwiICsgZGlyXQorICAgICAgICBlbGlmIHN5cy5wbGF0Zm9ybVs6N10gPT0gImlyaXg2NDYiIG9yIHN5cy5wbGF0Zm9ybVs6Nl0gPT0gIm9zZjFWNSI6CisgICAgICAgICAgICByZXR1cm4gWyItcnBhdGgiLCBkaXJdCisgICAgICAgIGVsaWYgc2VsZi5faXNfZ2NjKGNvbXBpbGVyKToKKyAgICAgICAgICAgICMgZ2NjIG9uIG5vbi1HTlUgc3lzdGVtcyBkb2VzIG5vdCBuZWVkIC1XbCwgYnV0IGNhbgorICAgICAgICAgICAgIyB1c2UgaXQgYW55d2F5LiAgU2luY2UgZGlzdHV0aWxzIGhhcyBhbHdheXMgcGFzc2VkIGluCisgICAgICAgICAgICAjIC1XbCB3aGVuZXZlciBnY2Mgd2FzIHVzZWQgaW4gdGhlIHBhc3QgaXQgaXMgcHJvYmFibHkKKyAgICAgICAgICAgICMgc2FmZXN0IHRvIGtlZXAgZG9pbmcgc28uCisgICAgICAgICAgICBpZiBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoIkdOVUxEIikgPT0gInllcyI6CisgICAgICAgICAgICAgICAgIyBHTlUgbGQgbmVlZHMgYW4gZXh0cmEgb3B0aW9uIHRvIGdldCBhIFJVTlBBVEgKKyAgICAgICAgICAgICAgICAjIGluc3RlYWQgb2YganVzdCBhbiBSUEFUSC4KKyAgICAgICAgICAgICAgICByZXR1cm4gIi1XbCwtLWVuYWJsZS1uZXctZHRhZ3MsLVIiICsgZGlyCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJldHVybiAiLVdsLC1SIiArIGRpcgorICAgICAgICBlbGlmIHN5cy5wbGF0Zm9ybVs6M10gPT0gImFpeCI6CisgICAgICAgICAgICByZXR1cm4gIi1ibGlicGF0aDoiICsgZGlyCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIE5vIGlkZWEgaG93IC0tZW5hYmxlLW5ldy1kdGFncyB3b3VsZCBiZSBwYXNzZWQgb24gdG8KKyAgICAgICAgICAgICMgbGQgaWYgdGhpcyBzeXN0ZW0gd2FzIHVzaW5nIEdOVSBsZC4gIERvbid0IGtub3cgaWYgYQorICAgICAgICAgICAgIyBzeXN0ZW0gbGlrZSB0aGlzIGV2ZW4gZXhpc3RzLgorICAgICAgICAgICAgcmV0dXJuICItUiIgKyBkaXIKKworICAgIGRlZiBsaWJyYXJ5X29wdGlvbihzZWxmLCBsaWIpOgorICAgICAgICByZXR1cm4gIi1sIiArIGxpYgorCisgICAgZGVmIGZpbmRfbGlicmFyeV9maWxlKHNlbGYsIGRpcnMsIGxpYiwgZGVidWc9RmFsc2UpOgorICAgICAgICBzaGFyZWRfZiA9IHNlbGYubGlicmFyeV9maWxlbmFtZShsaWIsIGxpYl90eXBlPSdzaGFyZWQnKQorICAgICAgICBkeWxpYl9mID0gc2VsZi5saWJyYXJ5X2ZpbGVuYW1lKGxpYiwgbGliX3R5cGU9J2R5bGliJykKKyAgICAgICAgc3RhdGljX2YgPSBzZWxmLmxpYnJhcnlfZmlsZW5hbWUobGliLCBsaWJfdHlwZT0nc3RhdGljJykKKworICAgICAgICBmb3IgZGlyIGluIGRpcnM6CisgICAgICAgICAgICBzaGFyZWQgPSBvcy5wYXRoLmpvaW4oZGlyLCBzaGFyZWRfZikKKyAgICAgICAgICAgIGR5bGliID0gb3MucGF0aC5qb2luKGRpciwgZHlsaWJfZikKKyAgICAgICAgICAgIHN0YXRpYyA9IG9zLnBhdGguam9pbihkaXIsIHN0YXRpY19mKQorICAgICAgICAgICAgIyBXZSdyZSBzZWNvbmQtZ3Vlc3NpbmcgdGhlIGxpbmtlciBoZXJlLCB3aXRoIG5vdCBtdWNoIGhhcmQKKyAgICAgICAgICAgICMgZGF0YSB0byBnbyBvbjogR0NDIHNlZW1zIHRvIHByZWZlciB0aGUgc2hhcmVkIGxpYnJhcnksIHNvIEknbQorICAgICAgICAgICAgIyBhc3N1bWluZyB0aGF0ICphbGwqIFVuaXggQyBjb21waWxlcnMgZG8uICBBbmQgb2YgY291cnNlIEknbQorICAgICAgICAgICAgIyBpZ25vcmluZyBldmVuIEdDQydzICItc3RhdGljIiBvcHRpb24uICBTbyBzdWUgbWUuCisgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhkeWxpYik6CisgICAgICAgICAgICAgICAgcmV0dXJuIGR5bGliCisgICAgICAgICAgICBlbGlmIG9zLnBhdGguZXhpc3RzKHNoYXJlZCk6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNoYXJlZAorICAgICAgICAgICAgZWxpZiBvcy5wYXRoLmV4aXN0cyhzdGF0aWMpOgorICAgICAgICAgICAgICAgIHJldHVybiBzdGF0aWMKKworICAgICAgICAjIE9vcHMsIGRpZG4ndCBmaW5kIGl0IGluICphbnkqIG9mICdkaXJzJworICAgICAgICByZXR1cm4gTm9uZQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb25maWcucHkgYi9MaWIvcGFja2FnaW5nL2NvbmZpZy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYjAyNmE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb25maWcucHkKQEAgLTAsMCArMSwzOTEgQEAKKyIiIlV0aWxpdGllcyB0byBmaW5kIGFuZCByZWFkIGNvbmZpZyBmaWxlcyB1c2VkIGJ5IHBhY2thZ2luZy4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgbG9nZ2luZworCitmcm9tIHNobGV4IGltcG9ydCBzcGxpdAorZnJvbSBjb25maWdwYXJzZXIgaW1wb3J0IFJhd0NvbmZpZ1BhcnNlcgorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uIGltcG9ydCBFeHRlbnNpb24KK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IChjaGVja19lbnZpcm9uLCBpZ2xvYiwgcmVzb2x2ZV9uYW1lLCBzdHJ0b2Jvb2wsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BsaXRfbXVsdGlsaW5lKQorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IHNldF9jb21waWxlcgorZnJvbSBwYWNrYWdpbmcuY29tbWFuZCBpbXBvcnQgc2V0X2NvbW1hbmQKK2Zyb20gcGFja2FnaW5nLm1hcmtlcnMgaW1wb3J0IGludGVycHJldAorCisKK2RlZiBfY2hlY2tfbmFtZShuYW1lLCBwYWNrYWdlcyk6CisgICAgaWYgJy4nIG5vdCBpbiBuYW1lOgorICAgICAgICByZXR1cm4KKyAgICBwYXJ0cyA9IG5hbWUuc3BsaXQoJy4nKQorICAgIHBhcmVudCA9ICcuJy5qb2luKHBhcnRzWzotMV0pCisgICAgaWYgcGFyZW50IG5vdCBpbiBwYWNrYWdlczoKKyAgICAgICAgIyB3ZSBjb3VsZCBsb2cgYSB3YXJuaW5nIGluc3RlYWQgb2YgcmFpc2luZywgYnV0IHdoYXQncyB0aGUgdXNlCisgICAgICAgICMgb2YgbGV0dGluZyBwZW9wbGUgYnVpbGQgbW9kdWxlcyB0aGV5IGNhbid0IGltcG9ydD8KKyAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAncGFyZW50IHBhY2thZ2UgZm9yIGV4dGVuc2lvbiAlciBub3QgZm91bmQnICUgbmFtZSkKKworCitkZWYgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwga2V5KToKKyAgICAiIiJSZW1vdmUgdmFsdWVzIGZyb20gdGhlIGRpY3Rpb25hcnkgYW5kIGNvbnZlcnQgdGhlbSBhcyBhIGxpc3QiIiIKKyAgICB2YWxzX3N0ciA9IHZhbHVlc19kY3QucG9wKGtleSwgJycpCisgICAgaWYgbm90IHZhbHNfc3RyOgorICAgICAgICByZXR1cm4KKyAgICBmaWVsZHMgPSBbXQorICAgICMgdGhlIGxpbmUgc2VwYXJhdG9yIGlzIFxuIGZvciBzZXR1cC5jZmcgZmlsZXMKKyAgICBmb3IgZmllbGQgaW4gdmFsc19zdHIuc3BsaXQoJ1xuJyk6CisgICAgICAgIHRtcF92YWxzID0gZmllbGQuc3BsaXQoJy0tJykKKyAgICAgICAgaWYgbGVuKHRtcF92YWxzKSA9PSAyIGFuZCBub3QgaW50ZXJwcmV0KHRtcF92YWxzWzFdKToKKyAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgIGZpZWxkcy5hcHBlbmQodG1wX3ZhbHNbMF0pCisgICAgIyBHZXQgYmFzaCBvcHRpb25zIGxpa2UgYGdjYyAtcHJpbnQtZmlsZS1uYW1lPWxpYmdjYy5hYCBYWFggYmFzaCBvcHRpb25zPworICAgIHZhbHMgPSBzcGxpdCgnICcuam9pbihmaWVsZHMpKQorICAgIGlmIHZhbHM6CisgICAgICAgIHJldHVybiB2YWxzCisKKworZGVmIF9yZWxfcGF0aChiYXNlLCBwYXRoKToKKyAgICAjIG5vcm1hbGl6ZXMgYW5kIHJldHVybnMgYSBsc3RyaXBwZWQtLy1zZXBhcmF0ZWQgcGF0aAorICAgIGJhc2UgPSBiYXNlLnJlcGxhY2Uob3MucGF0aC5zZXAsICcvJykKKyAgICBwYXRoID0gcGF0aC5yZXBsYWNlKG9zLnBhdGguc2VwLCAnLycpCisgICAgYXNzZXJ0IHBhdGguc3RhcnRzd2l0aChiYXNlKQorICAgIHJldHVybiBwYXRoW2xlbihiYXNlKTpdLmxzdHJpcCgnLycpCisKKworZGVmIGdldF9yZXNvdXJjZXNfZGVzdHMocmVzb3VyY2VzX3Jvb3QsIHJ1bGVzKToKKyAgICAiIiJGaW5kIGRlc3RpbmF0aW9ucyBmb3IgcmVzb3VyY2VzIGZpbGVzIiIiCisgICAgZGVzdGluYXRpb25zID0ge30KKyAgICBmb3IgYmFzZSwgc3VmZml4LCBkZXN0IGluIHJ1bGVzOgorICAgICAgICBwcmVmaXggPSBvcy5wYXRoLmpvaW4ocmVzb3VyY2VzX3Jvb3QsIGJhc2UpCisgICAgICAgIGZvciBhYnNfYmFzZSBpbiBpZ2xvYihwcmVmaXgpOgorICAgICAgICAgICAgYWJzX2dsb2IgPSBvcy5wYXRoLmpvaW4oYWJzX2Jhc2UsIHN1ZmZpeCkKKyAgICAgICAgICAgIGZvciBhYnNfcGF0aCBpbiBpZ2xvYihhYnNfZ2xvYik6CisgICAgICAgICAgICAgICAgcmVzb3VyY2VfZmlsZSA9IF9yZWxfcGF0aChyZXNvdXJjZXNfcm9vdCwgYWJzX3BhdGgpCisgICAgICAgICAgICAgICAgaWYgZGVzdCBpcyBOb25lOiAgIyByZW1vdmUgdGhlIGVudHJ5IGlmIGl0IHdhcyBoZXJlCisgICAgICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9ucy5wb3AocmVzb3VyY2VfZmlsZSwgTm9uZSkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICByZWxfcGF0aCA9IF9yZWxfcGF0aChhYnNfYmFzZSwgYWJzX3BhdGgpCisgICAgICAgICAgICAgICAgICAgIHJlbF9kZXN0ID0gZGVzdC5yZXBsYWNlKG9zLnBhdGguc2VwLCAnLycpLnJzdHJpcCgnLycpCisgICAgICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9uc1tyZXNvdXJjZV9maWxlXSA9IHJlbF9kZXN0ICsgJy8nICsgcmVsX3BhdGgKKyAgICByZXR1cm4gZGVzdGluYXRpb25zCisKKworY2xhc3MgQ29uZmlnOgorICAgICIiIkNsYXNzIHVzZWQgdG8gd29yayB3aXRoIGNvbmZpZ3VyYXRpb24gZmlsZXMiIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZGlzdCk6CisgICAgICAgIHNlbGYuZGlzdCA9IGRpc3QKKyAgICAgICAgc2VsZi5zZXR1cF9ob29rcyA9IFtdCisKKyAgICBkZWYgcnVuX2hvb2tzKHNlbGYsIGNvbmZpZyk6CisgICAgICAgICIiIlJ1biBzZXR1cCBob29rcyBpbiB0aGUgb3JkZXIgZGVmaW5lZCBpbiB0aGUgc3BlYy4iIiIKKyAgICAgICAgZm9yIGhvb2sgaW4gc2VsZi5zZXR1cF9ob29rczoKKyAgICAgICAgICAgIGhvb2soY29uZmlnKQorCisgICAgZGVmIGZpbmRfY29uZmlnX2ZpbGVzKHNlbGYpOgorICAgICAgICAiIiJGaW5kIGFzIG1hbnkgY29uZmlndXJhdGlvbiBmaWxlcyBhcyBzaG91bGQgYmUgcHJvY2Vzc2VkIGZvciB0aGlzCisgICAgICAgIHBsYXRmb3JtLCBhbmQgcmV0dXJuIGEgbGlzdCBvZiBmaWxlbmFtZXMgaW4gdGhlIG9yZGVyIGluIHdoaWNoIHRoZXkKKyAgICAgICAgc2hvdWxkIGJlIHBhcnNlZC4gIFRoZSBmaWxlbmFtZXMgcmV0dXJuZWQgYXJlIGd1YXJhbnRlZWQgdG8gZXhpc3QKKyAgICAgICAgKG1vZHVsbyBuYXN0eSByYWNlIGNvbmRpdGlvbnMpLgorCisgICAgICAgIFRoZXJlIGFyZSB0aHJlZSBwb3NzaWJsZSBjb25maWcgZmlsZXM6IHBhY2thZ2luZy5jZmcgaW4gdGhlCisgICAgICAgIFBhY2thZ2luZyBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IChpZS4gd2hlcmUgdGhlIHRvcC1sZXZlbAorICAgICAgICBQYWNrYWdpbmcgX19pbnN0X18ucHkgZmlsZSBsaXZlcyksIGEgZmlsZSBpbiB0aGUgdXNlcidzIGhvbWUKKyAgICAgICAgZGlyZWN0b3J5IG5hbWVkIC5weWRpc3R1dGlscy5jZmcgb24gVW5peCBhbmQgcHlkaXN0dXRpbHMuY2ZnCisgICAgICAgIG9uIFdpbmRvd3MvTWFjOyBhbmQgc2V0dXAuY2ZnIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4KKworICAgICAgICBUaGUgZmlsZSBpbiB0aGUgdXNlcidzIGhvbWUgZGlyZWN0b3J5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIHRoZQorICAgICAgICAtLW5vLXVzZXItY2ZnIG9wdGlvbi4KKyAgICAgICAgIiIiCisgICAgICAgIGZpbGVzID0gW10KKyAgICAgICAgY2hlY2tfZW52aXJvbigpCisKKyAgICAgICAgIyBXaGVyZSB0byBsb29rIGZvciB0aGUgc3lzdGVtLXdpZGUgUGFja2FnaW5nIGNvbmZpZyBmaWxlCisgICAgICAgIHN5c19kaXIgPSBvcy5wYXRoLmRpcm5hbWUoc3lzLm1vZHVsZXNbJ3BhY2thZ2luZyddLl9fZmlsZV9fKQorCisgICAgICAgICMgTG9vayBmb3IgdGhlIHN5c3RlbSBjb25maWcgZmlsZQorICAgICAgICBzeXNfZmlsZSA9IG9zLnBhdGguam9pbihzeXNfZGlyLCAicGFja2FnaW5nLmNmZyIpCisgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKHN5c19maWxlKToKKyAgICAgICAgICAgIGZpbGVzLmFwcGVuZChzeXNfZmlsZSkKKworICAgICAgICAjIFdoYXQgdG8gY2FsbCB0aGUgcGVyLXVzZXIgY29uZmlnIGZpbGUKKyAgICAgICAgaWYgb3MubmFtZSA9PSAncG9zaXgnOgorICAgICAgICAgICAgdXNlcl9maWxlbmFtZSA9ICIucHlkaXN0dXRpbHMuY2ZnIgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgdXNlcl9maWxlbmFtZSA9ICJweWRpc3R1dGlscy5jZmciCisKKyAgICAgICAgIyBBbmQgbG9vayBmb3IgdGhlIHVzZXIgY29uZmlnIGZpbGUKKyAgICAgICAgaWYgc2VsZi5kaXN0LndhbnRfdXNlcl9jZmc6CisgICAgICAgICAgICB1c2VyX2ZpbGUgPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5leHBhbmR1c2VyKCd+JyksIHVzZXJfZmlsZW5hbWUpCisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZSh1c2VyX2ZpbGUpOgorICAgICAgICAgICAgICAgIGZpbGVzLmFwcGVuZCh1c2VyX2ZpbGUpCisKKyAgICAgICAgIyBBbGwgcGxhdGZvcm1zIHN1cHBvcnQgbG9jYWwgc2V0dXAuY2ZnCisgICAgICAgIGxvY2FsX2ZpbGUgPSAic2V0dXAuY2ZnIgorICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShsb2NhbF9maWxlKToKKyAgICAgICAgICAgIGZpbGVzLmFwcGVuZChsb2NhbF9maWxlKQorCisgICAgICAgIGlmIGxvZ2dlci5pc0VuYWJsZWRGb3IobG9nZ2luZy5ERUJVRyk6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoInVzaW5nIGNvbmZpZyBmaWxlczogJXMiLCAnLCAnLmpvaW4oZmlsZXMpKQorICAgICAgICByZXR1cm4gZmlsZXMKKworICAgIGRlZiBfY29udmVydF9tZXRhZGF0YShzZWxmLCBuYW1lLCB2YWx1ZSk6CisgICAgICAgICMgY29udmVydHMgYSB2YWx1ZSBmb3VuZCBpbiBzZXR1cC5jZmcgaW50byBhIHZhbGlkIG1ldGFkYXRhCisgICAgICAgICMgWFhYCisgICAgICAgIHJldHVybiB2YWx1ZQorCisgICAgZGVmIF9yZWFkX3NldHVwX2NmZyhzZWxmLCBwYXJzZXIsIGNmZ19maWxlbmFtZSk6CisgICAgICAgIGNmZ19kaXJlY3RvcnkgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKGNmZ19maWxlbmFtZSkpCisgICAgICAgIGNvbnRlbnQgPSB7fQorICAgICAgICBmb3Igc2VjdGlvbiBpbiBwYXJzZXIuc2VjdGlvbnMoKToKKyAgICAgICAgICAgIGNvbnRlbnRbc2VjdGlvbl0gPSBkaWN0KHBhcnNlci5pdGVtcyhzZWN0aW9uKSkKKworICAgICAgICAjIGdsb2JhbCBzZXR1cCBob29rcyBhcmUgY2FsbGVkIGZpcnN0CisgICAgICAgIGlmICdnbG9iYWwnIGluIGNvbnRlbnQ6CisgICAgICAgICAgICBpZiAnc2V0dXBfaG9va3MnIGluIGNvbnRlbnRbJ2dsb2JhbCddOgorICAgICAgICAgICAgICAgIHNldHVwX2hvb2tzID0gc3BsaXRfbXVsdGlsaW5lKGNvbnRlbnRbJ2dsb2JhbCddWydzZXR1cF9ob29rcyddKQorCisgICAgICAgICAgICAgICAgIyBhZGQgcHJvamVjdCBkaXJlY3RvcnkgdG8gc3lzLnBhdGgsIHRvIGFsbG93IGhvb2tzIHRvIGJlCisgICAgICAgICAgICAgICAgIyBkaXN0cmlidXRlZCB3aXRoIHRoZSBwcm9qZWN0CisgICAgICAgICAgICAgICAgc3lzLnBhdGguaW5zZXJ0KDAsIGNmZ19kaXJlY3RvcnkpCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBmb3IgbGluZSBpbiBzZXR1cF9ob29rczoKKyAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBob29rID0gcmVzb2x2ZV9uYW1lKGxpbmUpCisgICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygnY2Fubm90IGZpbmQgc2V0dXAgaG9vazogJXMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUuYXJnc1swXSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zZXR1cF9ob29rcy5hcHBlbmQoaG9vaykKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5ydW5faG9va3MoY29udGVudCkKKyAgICAgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgICAgICBzeXMucGF0aC5wb3AoMCkKKworICAgICAgICBtZXRhZGF0YSA9IHNlbGYuZGlzdC5tZXRhZGF0YQorCisgICAgICAgICMgc2V0dGluZyB0aGUgbWV0YWRhdGEgdmFsdWVzCisgICAgICAgIGlmICdtZXRhZGF0YScgaW4gY29udGVudDoKKyAgICAgICAgICAgIGZvciBrZXksIHZhbHVlIGluIGNvbnRlbnRbJ21ldGFkYXRhJ10uaXRlbXMoKToKKyAgICAgICAgICAgICAgICBrZXkgPSBrZXkucmVwbGFjZSgnXycsICctJykKKyAgICAgICAgICAgICAgICBpZiBtZXRhZGF0YS5pc19tdWx0aV9maWVsZChrZXkpOgorICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHNwbGl0X211bHRpbGluZSh2YWx1ZSkKKworICAgICAgICAgICAgICAgIGlmIGtleSA9PSAncHJvamVjdC11cmwnOgorICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IFsobGFiZWwuc3RyaXAoKSwgdXJsLnN0cmlwKCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBsYWJlbCwgdXJsIGluCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2LnNwbGl0KCcsJykgZm9yIHYgaW4gdmFsdWVdXQorCisgICAgICAgICAgICAgICAgaWYga2V5ID09ICdkZXNjcmlwdGlvbi1maWxlJzoKKyAgICAgICAgICAgICAgICAgICAgaWYgJ2Rlc2NyaXB0aW9uJyBpbiBjb250ZW50WydtZXRhZGF0YSddOgorICAgICAgICAgICAgICAgICAgICAgICAgbXNnID0gKCJkZXNjcmlwdGlvbiBhbmQgZGVzY3JpcHRpb24tZmlsZScgYXJlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibXV0dWFsbHkgZXhjbHVzaXZlIikKKyAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKG1zZykKKworICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZXMgPSB2YWx1ZS5zcGxpdCgpCisKKyAgICAgICAgICAgICAgICAgICAgIyBjb25jYXRlbmF0ZSBhbGwgZmlsZXMKKyAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBbXQorICAgICAgICAgICAgICAgICAgICBmb3IgZmlsZW5hbWUgaW4gZmlsZW5hbWVzOgorICAgICAgICAgICAgICAgICAgICAgICAgIyB3aWxsIHJhaXNlIGlmIGZpbGUgbm90IGZvdW5kCisgICAgICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4oZmlsZW5hbWUpIGFzIGRlc2NyaXB0aW9uX2ZpbGU6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUuYXBwZW5kKGRlc2NyaXB0aW9uX2ZpbGUucmVhZCgpLnN0cmlwKCkpCisgICAgICAgICAgICAgICAgICAgICAgICAjIGFkZCBmaWxlbmFtZSBhcyBhIHJlcXVpcmVkIGZpbGUKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIGZpbGVuYW1lIG5vdCBpbiBtZXRhZGF0YS5yZXF1aXJlc19maWxlczoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YS5yZXF1aXJlc19maWxlcy5hcHBlbmQoZmlsZW5hbWUpCisgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gJ1xuJy5qb2luKHZhbHVlKS5zdHJpcCgpCisgICAgICAgICAgICAgICAgICAgIGtleSA9ICdkZXNjcmlwdGlvbicKKworICAgICAgICAgICAgICAgIGlmIG1ldGFkYXRhLmlzX21ldGFkYXRhX2ZpZWxkKGtleSk6CisgICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhW2tleV0gPSBzZWxmLl9jb252ZXJ0X21ldGFkYXRhKGtleSwgdmFsdWUpCisKKyAgICAgICAgaWYgJ2ZpbGVzJyBpbiBjb250ZW50OgorICAgICAgICAgICAgZmlsZXMgPSBjb250ZW50WydmaWxlcyddCisgICAgICAgICAgICBzZWxmLmRpc3QucGFja2FnZV9kaXIgPSBmaWxlcy5wb3AoJ3BhY2thZ2VzX3Jvb3QnLCBOb25lKQorCisgICAgICAgICAgICBmaWxlcyA9IGRpY3QoKGtleSwgc3BsaXRfbXVsdGlsaW5lKHZhbHVlKSkgZm9yIGtleSwgdmFsdWUgaW4KKyAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlcy5pdGVtcygpKQorCisgICAgICAgICAgICBzZWxmLmRpc3QucGFja2FnZXMgPSBbXQorCisgICAgICAgICAgICBwYWNrYWdlcyA9IGZpbGVzLmdldCgncGFja2FnZXMnLCBbXSkKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UocGFja2FnZXMsIHN0cik6CisgICAgICAgICAgICAgICAgcGFja2FnZXMgPSBbcGFja2FnZXNdCisKKyAgICAgICAgICAgIGZvciBwYWNrYWdlIGluIHBhY2thZ2VzOgorICAgICAgICAgICAgICAgIGlmICc6JyBpbiBwYWNrYWdlOgorICAgICAgICAgICAgICAgICAgICBkaXJfLCBwYWNrYWdlID0gcGFja2FnZS5zcGxpdCgnOicpCisgICAgICAgICAgICAgICAgICAgIHNlbGYuZGlzdC5wYWNrYWdlX2RpcltwYWNrYWdlXSA9IGRpcl8KKyAgICAgICAgICAgICAgICBzZWxmLmRpc3QucGFja2FnZXMuYXBwZW5kKHBhY2thZ2UpCisKKyAgICAgICAgICAgIHNlbGYuZGlzdC5weV9tb2R1bGVzID0gZmlsZXMuZ2V0KCdtb2R1bGVzJywgW10pCisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHNlbGYuZGlzdC5weV9tb2R1bGVzLCBzdHIpOgorICAgICAgICAgICAgICAgIHNlbGYuZGlzdC5weV9tb2R1bGVzID0gW3NlbGYuZGlzdC5weV9tb2R1bGVzXQorICAgICAgICAgICAgc2VsZi5kaXN0LnNjcmlwdHMgPSBmaWxlcy5nZXQoJ3NjcmlwdHMnLCBbXSkKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2Uoc2VsZi5kaXN0LnNjcmlwdHMsIHN0cik6CisgICAgICAgICAgICAgICAgc2VsZi5kaXN0LnNjcmlwdHMgPSBbc2VsZi5kaXN0LnNjcmlwdHNdCisKKyAgICAgICAgICAgIHNlbGYuZGlzdC5wYWNrYWdlX2RhdGEgPSB7fQorICAgICAgICAgICAgIyBib29ra2VlcGluZyBmb3IgdGhlIGxvb3AgYmVsb3cKKyAgICAgICAgICAgIGZpcnN0bGluZSA9IFRydWUKKyAgICAgICAgICAgIHByZXYgPSBOb25lCisKKyAgICAgICAgICAgIGZvciBsaW5lIGluIGZpbGVzLmdldCgncGFja2FnZV9kYXRhJywgW10pOgorICAgICAgICAgICAgICAgIGlmICc9JyBpbiBsaW5lOgorICAgICAgICAgICAgICAgICAgICAjIHBhY2thZ2UgbmFtZSAtLSBmaWxlIGdsb2JzIG9yIHNwZWNzCisgICAgICAgICAgICAgICAgICAgIGtleSwgdmFsdWUgPSBsaW5lLnNwbGl0KCc9JykKKyAgICAgICAgICAgICAgICAgICAgcHJldiA9IHNlbGYuZGlzdC5wYWNrYWdlX2RhdGFba2V5LnN0cmlwKCldID0gdmFsdWUuc3BsaXQoKQorICAgICAgICAgICAgICAgIGVsaWYgZmlyc3RsaW5lOgorICAgICAgICAgICAgICAgICAgICAjIGludmFsaWQgY29udGludWF0aW9uIG9uIHRoZSBmaXJzdCBsaW5lCisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgJ21hbGZvcm1lZCBwYWNrYWdlX2RhdGEgZmlyc3QgbGluZTogJXIgKG1pc3NlcyAiPSIpJyAlCisgICAgICAgICAgICAgICAgICAgICAgICBsaW5lKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICMgY29udGludWF0aW9uLCBhZGQgdG8gbGFzdCBzZWVuIHBhY2thZ2UgbmFtZQorICAgICAgICAgICAgICAgICAgICBwcmV2LmV4dGVuZChsaW5lLnNwbGl0KCkpCisKKyAgICAgICAgICAgICAgICBmaXJzdGxpbmUgPSBGYWxzZQorCisgICAgICAgICAgICBzZWxmLmRpc3QuZGF0YV9maWxlcyA9IFtdCisgICAgICAgICAgICBmb3IgZGF0YSBpbiBmaWxlcy5nZXQoJ2RhdGFfZmlsZXMnLCBbXSk6CisgICAgICAgICAgICAgICAgZGF0YSA9IGRhdGEuc3BsaXQoJz0nKQorICAgICAgICAgICAgICAgIGlmIGxlbihkYXRhKSAhPSAyOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGtleSwgdmFsdWUgPSBkYXRhCisgICAgICAgICAgICAgICAgdmFsdWVzID0gW3Yuc3RyaXAoKSBmb3IgdiBpbiB2YWx1ZS5zcGxpdCgnLCcpXQorICAgICAgICAgICAgICAgIHNlbGYuZGlzdC5kYXRhX2ZpbGVzLmFwcGVuZCgoa2V5LCB2YWx1ZXMpKQorCisgICAgICAgICAgICAjIG1hbmlmZXN0IHRlbXBsYXRlCisgICAgICAgICAgICBzZWxmLmRpc3QuZXh0cmFfZmlsZXMgPSBmaWxlcy5nZXQoJ2V4dHJhX2ZpbGVzJywgW10pCisKKyAgICAgICAgICAgIHJlc291cmNlcyA9IFtdCisgICAgICAgICAgICBmb3IgcnVsZSBpbiBmaWxlcy5nZXQoJ3Jlc291cmNlcycsIFtdKToKKyAgICAgICAgICAgICAgICBnbG9iLCBkZXN0aW5hdGlvbiA9IHJ1bGUuc3BsaXQoJz0nLCAxKQorICAgICAgICAgICAgICAgIHJpY2hfZ2xvYiA9IGdsb2Iuc3RyaXAoKS5zcGxpdCgnICcsIDEpCisgICAgICAgICAgICAgICAgaWYgbGVuKHJpY2hfZ2xvYikgPT0gMjoKKyAgICAgICAgICAgICAgICAgICAgcHJlZml4LCBzdWZmaXggPSByaWNoX2dsb2IKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBhc3NlcnQgbGVuKHJpY2hfZ2xvYikgPT0gMQorICAgICAgICAgICAgICAgICAgICBwcmVmaXggPSAnJworICAgICAgICAgICAgICAgICAgICBzdWZmaXggPSBnbG9iCisgICAgICAgICAgICAgICAgaWYgZGVzdGluYXRpb24gPT0gJzxleGNsdWRlPic6CisgICAgICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9uID0gTm9uZQorICAgICAgICAgICAgICAgIHJlc291cmNlcy5hcHBlbmQoCisgICAgICAgICAgICAgICAgICAgIChwcmVmaXguc3RyaXAoKSwgc3VmZml4LnN0cmlwKCksIGRlc3RpbmF0aW9uLnN0cmlwKCkpKQorICAgICAgICAgICAgICAgIHNlbGYuZGlzdC5kYXRhX2ZpbGVzID0gZ2V0X3Jlc291cmNlc19kZXN0cygKKyAgICAgICAgICAgICAgICAgICAgY2ZnX2RpcmVjdG9yeSwgcmVzb3VyY2VzKQorCisgICAgICAgIGV4dF9tb2R1bGVzID0gc2VsZi5kaXN0LmV4dF9tb2R1bGVzCisgICAgICAgIGZvciBzZWN0aW9uX2tleSBpbiBjb250ZW50OgorICAgICAgICAgICAgIyBubyBzdHIucGFydGl0aW9uIGluIDIuNCA6KAorICAgICAgICAgICAgbGFiZWxzID0gc2VjdGlvbl9rZXkuc3BsaXQoJzonKQorICAgICAgICAgICAgaWYgbGVuKGxhYmVscykgPT0gMiBhbmQgbGFiZWxzWzBdID09ICdleHRlbnNpb24nOgorICAgICAgICAgICAgICAgIHZhbHVlc19kY3QgPSBjb250ZW50W3NlY3Rpb25fa2V5XQorICAgICAgICAgICAgICAgIGlmICduYW1lJyBpbiB2YWx1ZXNfZGN0OgorICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICdleHRlbnNpb24gbmFtZSBzaG91bGQgYmUgZ2l2ZW4gYXMgW2V4dGVuc2lvbjogbmFtZV0sICcKKyAgICAgICAgICAgICAgICAgICAgICAgICdub3QgYXMga2V5JykKKyAgICAgICAgICAgICAgICBuYW1lID0gbGFiZWxzWzFdLnN0cmlwKCkKKyAgICAgICAgICAgICAgICBfY2hlY2tfbmFtZShuYW1lLCBzZWxmLmRpc3QucGFja2FnZXMpCisgICAgICAgICAgICAgICAgZXh0X21vZHVsZXMuYXBwZW5kKEV4dGVuc2lvbigKKyAgICAgICAgICAgICAgICAgICAgbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ3NvdXJjZXMnKSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ2luY2x1ZGVfZGlycycpLAorICAgICAgICAgICAgICAgICAgICBfcG9wX3ZhbHVlcyh2YWx1ZXNfZGN0LCAnZGVmaW5lX21hY3JvcycpLAorICAgICAgICAgICAgICAgICAgICBfcG9wX3ZhbHVlcyh2YWx1ZXNfZGN0LCAndW5kZWZfbWFjcm9zJyksCisgICAgICAgICAgICAgICAgICAgIF9wb3BfdmFsdWVzKHZhbHVlc19kY3QsICdsaWJyYXJ5X2RpcnMnKSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ2xpYnJhcmllcycpLAorICAgICAgICAgICAgICAgICAgICBfcG9wX3ZhbHVlcyh2YWx1ZXNfZGN0LCAncnVudGltZV9saWJyYXJ5X2RpcnMnKSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ2V4dHJhX29iamVjdHMnKSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ2V4dHJhX2NvbXBpbGVfYXJncycpLAorICAgICAgICAgICAgICAgICAgICBfcG9wX3ZhbHVlcyh2YWx1ZXNfZGN0LCAnZXh0cmFfbGlua19hcmdzJyksCisgICAgICAgICAgICAgICAgICAgIF9wb3BfdmFsdWVzKHZhbHVlc19kY3QsICdleHBvcnRfc3ltYm9scycpLAorICAgICAgICAgICAgICAgICAgICBfcG9wX3ZhbHVlcyh2YWx1ZXNfZGN0LCAnc3dpZ19vcHRzJyksCisgICAgICAgICAgICAgICAgICAgIF9wb3BfdmFsdWVzKHZhbHVlc19kY3QsICdkZXBlbmRzJyksCisgICAgICAgICAgICAgICAgICAgIHZhbHVlc19kY3QucG9wKCdsYW5ndWFnZScsIE5vbmUpLAorICAgICAgICAgICAgICAgICAgICB2YWx1ZXNfZGN0LnBvcCgnb3B0aW9uYWwnLCBOb25lKSwKKyAgICAgICAgICAgICAgICAgICAgKip2YWx1ZXNfZGN0KSkKKworICAgIGRlZiBwYXJzZV9jb25maWdfZmlsZXMoc2VsZiwgZmlsZW5hbWVzPU5vbmUpOgorICAgICAgICBpZiBmaWxlbmFtZXMgaXMgTm9uZToKKyAgICAgICAgICAgIGZpbGVuYW1lcyA9IHNlbGYuZmluZF9jb25maWdfZmlsZXMoKQorCisgICAgICAgIGxvZ2dlci5kZWJ1ZygiRGlzdHJpYnV0aW9uLnBhcnNlX2NvbmZpZ19maWxlcygpOiIpCisKKyAgICAgICAgcGFyc2VyID0gUmF3Q29uZmlnUGFyc2VyKCkKKworICAgICAgICBmb3IgZmlsZW5hbWUgaW4gZmlsZW5hbWVzOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCIgIHJlYWRpbmcgJXMiLCBmaWxlbmFtZSkKKyAgICAgICAgICAgIHBhcnNlci5yZWFkKGZpbGVuYW1lLCBlbmNvZGluZz0ndXRmLTgnKQorCisgICAgICAgICAgICBpZiBvcy5wYXRoLnNwbGl0KGZpbGVuYW1lKVstMV0gPT0gJ3NldHVwLmNmZyc6CisgICAgICAgICAgICAgICAgc2VsZi5fcmVhZF9zZXR1cF9jZmcocGFyc2VyLCBmaWxlbmFtZSkKKworICAgICAgICAgICAgZm9yIHNlY3Rpb24gaW4gcGFyc2VyLnNlY3Rpb25zKCk6CisgICAgICAgICAgICAgICAgaWYgc2VjdGlvbiA9PSAnZ2xvYmFsJzoKKyAgICAgICAgICAgICAgICAgICAgaWYgcGFyc2VyLmhhc19vcHRpb24oJ2dsb2JhbCcsICdjb21waWxlcnMnKToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2xvYWRfY29tcGlsZXJzKHBhcnNlci5nZXQoJ2dsb2JhbCcsICdjb21waWxlcnMnKSkKKworICAgICAgICAgICAgICAgICAgICBpZiBwYXJzZXIuaGFzX29wdGlvbignZ2xvYmFsJywgJ2NvbW1hbmRzJyk6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9sb2FkX2NvbW1hbmRzKHBhcnNlci5nZXQoJ2dsb2JhbCcsICdjb21tYW5kcycpKQorCisgICAgICAgICAgICAgICAgb3B0aW9ucyA9IHBhcnNlci5vcHRpb25zKHNlY3Rpb24pCisgICAgICAgICAgICAgICAgb3B0X2RpY3QgPSBzZWxmLmRpc3QuZ2V0X29wdGlvbl9kaWN0KHNlY3Rpb24pCisKKyAgICAgICAgICAgICAgICBmb3Igb3B0IGluIG9wdGlvbnM6CisgICAgICAgICAgICAgICAgICAgIGlmIG9wdCA9PSAnX19uYW1lX18nOgorICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICAgICAgdmFsID0gcGFyc2VyLmdldChzZWN0aW9uLCBvcHQpCisgICAgICAgICAgICAgICAgICAgIG9wdCA9IG9wdC5yZXBsYWNlKCctJywgJ18nKQorCisgICAgICAgICAgICAgICAgICAgIGlmIG9wdCA9PSAnc3ViX2NvbW1hbmRzJzoKKyAgICAgICAgICAgICAgICAgICAgICAgIHZhbCA9IHNwbGl0X211bHRpbGluZSh2YWwpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHZhbCwgc3RyKToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWwgPSBbdmFsXQorCisgICAgICAgICAgICAgICAgICAgICMgSG9va3MgdXNlIGEgc3VmZml4IHN5c3RlbSB0byBwcmV2ZW50IGJlaW5nIG92ZXJyaWRlbgorICAgICAgICAgICAgICAgICAgICAjIGJ5IGEgY29uZmlnIGZpbGUgcHJvY2Vzc2VkIGxhdGVyIChpLmUuIGEgaG9vayBzZXQgaW4KKyAgICAgICAgICAgICAgICAgICAgIyB0aGUgdXNlciBjb25maWcgZmlsZSBjYW5ub3QgYmUgcmVwbGFjZWQgYnkgYSBob29rCisgICAgICAgICAgICAgICAgICAgICMgc2V0IGluIGEgcHJvamVjdCBjb25maWcgZmlsZSwgdW5sZXNzIHRoZXkgaGF2ZSB0aGUKKyAgICAgICAgICAgICAgICAgICAgIyBzYW1lIHN1ZmZpeCkuCisgICAgICAgICAgICAgICAgICAgIGlmIChvcHQuc3RhcnRzd2l0aCgicHJlX2hvb2suIikgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgIG9wdC5zdGFydHN3aXRoKCJwb3N0X2hvb2suIikpOgorICAgICAgICAgICAgICAgICAgICAgICAgaG9va190eXBlLCBhbGlhcyA9IG9wdC5zcGxpdCgiLiIpCisgICAgICAgICAgICAgICAgICAgICAgICBob29rX2RpY3QgPSBvcHRfZGljdC5zZXRkZWZhdWx0KAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhvb2tfdHlwZSwgKGZpbGVuYW1lLCB7fSkpWzFdCisgICAgICAgICAgICAgICAgICAgICAgICBob29rX2RpY3RbYWxpYXNdID0gdmFsCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICBvcHRfZGljdFtvcHRdID0gZmlsZW5hbWUsIHZhbAorCisgICAgICAgICAgICAjIE1ha2UgdGhlIFJhd0NvbmZpZ1BhcnNlciBmb3JnZXQgZXZlcnl0aGluZyAoc28gd2UgcmV0YWluCisgICAgICAgICAgICAjIHRoZSBvcmlnaW5hbCBmaWxlbmFtZXMgdGhhdCBvcHRpb25zIGNvbWUgZnJvbSkKKyAgICAgICAgICAgIHBhcnNlci5fX2luaXRfXygpCisKKyAgICAgICAgIyBJZiB0aGVyZSB3YXMgYSAiZ2xvYmFsIiBzZWN0aW9uIGluIHRoZSBjb25maWcgZmlsZSwgdXNlIGl0CisgICAgICAgICMgdG8gc2V0IERpc3RyaWJ1dGlvbiBvcHRpb25zLgorICAgICAgICBpZiAnZ2xvYmFsJyBpbiBzZWxmLmRpc3QuY29tbWFuZF9vcHRpb25zOgorICAgICAgICAgICAgZm9yIG9wdCwgKHNyYywgdmFsKSBpbiBzZWxmLmRpc3QuY29tbWFuZF9vcHRpb25zWydnbG9iYWwnXS5pdGVtcygpOgorICAgICAgICAgICAgICAgIGFsaWFzID0gc2VsZi5kaXN0Lm5lZ2F0aXZlX29wdC5nZXQob3B0KQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgaWYgYWxpYXM6CisgICAgICAgICAgICAgICAgICAgICAgICBzZXRhdHRyKHNlbGYuZGlzdCwgYWxpYXMsIG5vdCBzdHJ0b2Jvb2wodmFsKSkKKyAgICAgICAgICAgICAgICAgICAgZWxpZiBvcHQgPT0gJ2RyeV9ydW4nOiAgIyBGSVhNRSB1Z2ghCisgICAgICAgICAgICAgICAgICAgICAgICBzZXRhdHRyKHNlbGYuZGlzdCwgb3B0LCBzdHJ0b2Jvb2wodmFsKSkKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNldGF0dHIoc2VsZi5kaXN0LCBvcHQsIHZhbCkKKyAgICAgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKG1zZykKKworICAgIGRlZiBfbG9hZF9jb21waWxlcnMoc2VsZiwgY29tcGlsZXJzKToKKyAgICAgICAgY29tcGlsZXJzID0gc3BsaXRfbXVsdGlsaW5lKGNvbXBpbGVycykKKyAgICAgICAgaWYgaXNpbnN0YW5jZShjb21waWxlcnMsIHN0cik6CisgICAgICAgICAgICBjb21waWxlcnMgPSBbY29tcGlsZXJzXQorICAgICAgICBmb3IgY29tcGlsZXIgaW4gY29tcGlsZXJzOgorICAgICAgICAgICAgc2V0X2NvbXBpbGVyKGNvbXBpbGVyLnN0cmlwKCkpCisKKyAgICBkZWYgX2xvYWRfY29tbWFuZHMoc2VsZiwgY29tbWFuZHMpOgorICAgICAgICBjb21tYW5kcyA9IHNwbGl0X211bHRpbGluZShjb21tYW5kcykKKyAgICAgICAgaWYgaXNpbnN0YW5jZShjb21tYW5kcywgc3RyKToKKyAgICAgICAgICAgIGNvbW1hbmRzID0gW2NvbW1hbmRzXQorICAgICAgICBmb3IgY29tbWFuZCBpbiBjb21tYW5kczoKKyAgICAgICAgICAgIHNldF9jb21tYW5kKGNvbW1hbmQuc3RyaXAoKSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY3JlYXRlLnB5IGIvTGliL3BhY2thZ2luZy9jcmVhdGUucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2Q0NWNhOQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY3JlYXRlLnB5CkBAIC0wLDAgKzEsNjgyIEBACisiIiJJbnRlcmFjdGl2ZSBoZWxwZXIgdXNlZCB0byBjcmVhdGUgYSBzZXR1cC5jZmcgZmlsZS4KKworVGhpcyBzY3JpcHQgd2lsbCBnZW5lcmF0ZSBhIHBhY2thZ2luZyBjb25maWd1cmF0aW9uIGZpbGUgYnkgbG9va2luZyBhdAordGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFuZCBhc2tpbmcgdGhlIHVzZXIgcXVlc3Rpb25zLiAgSXQgaXMgaW50ZW5kZWQgdG8KK2JlIGNhbGxlZCBhcyAqcHlzZXR1cCBjcmVhdGUqLgorIiIiCisKKyMgIE9yaWdpbmFsIGNvZGUgYnkgU2VhbiBSZWlmc2NobmVpZGVyIDxqYWZvQHR1bW15LmNvbT4KKworIyAgT3JpZ2luYWwgVE9ETyBsaXN0OgorIyAgTG9vayBmb3IgYSBsaWNlbnNlIGZpbGUgYW5kIGF1dG9tYXRpY2FsbHkgYWRkIHRoZSBjYXRlZ29yeS4KKyMgIFdoZW4gYSAuYyBmaWxlIGlzIGZvdW5kIGR1cmluZyB0aGUgd2FsaywgY2FuIHdlIGFkZCBpdCBhcyBhbiBleHRlbnNpb24/CisjICBBc2sgaWYgdGhlcmUgaXMgYSBtYWludGFpbmVyIGRpZmZlcmVudCB0aGF0IHRoZSBhdXRob3IKKyMgIEFzayBmb3IgdGhlIHBsYXRmb3JtIChjYW4gd2UgZGV0ZWN0IHRoaXMgdmlhICJpbXBvcnQgd2luMzIiIG9yIHNvbWV0aGluZz8pCisjICBBc2sgZm9yIHRoZSBkZXBlbmRlbmNpZXMuCisjICBBc2sgZm9yIHRoZSBSZXF1aXJlcy1EaXN0CisjICBBc2sgZm9yIHRoZSBQcm92aWRlcy1EaXN0CisjICBBc2sgZm9yIGEgZGVzY3JpcHRpb24KKyMgIERldGVjdCBzY3JpcHRzIChub3Qgc3VyZSBob3cuICAjISBvdXRzaWRlIG9mIHBhY2thZ2U/KQorCitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IGltcAoraW1wb3J0IHN5cworaW1wb3J0IGdsb2IKK2ltcG9ydCBzaHV0aWwKK2ltcG9ydCBzeXNjb25maWcKK2Zyb20gaGFzaGxpYiBpbXBvcnQgbWQ1Citmcm9tIHRleHR3cmFwIGltcG9ydCBkZWRlbnQKK2Zyb20gdG9rZW5pemUgaW1wb3J0IGRldGVjdF9lbmNvZGluZworZnJvbSBjb25maWdwYXJzZXIgaW1wb3J0IFJhd0NvbmZpZ1BhcnNlcgorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCisjIGltcG9ydGluZyB0aGlzIHdpdGggYW4gdW5kZXJzY29yZSBhcyBpdCBzaG91bGQgYmUgcmVwbGFjZWQgYnkgdGhlCisjIGRpY3QgZm9ybSBvciBhbm90aGVyIHN0cnVjdHVyZXMgZm9yIGFsbCBwdXJwb3NlcworZnJvbSBwYWNrYWdpbmcuX3Ryb3ZlIGltcG9ydCBhbGxfY2xhc3NpZmllcnMgYXMgX0NMQVNTSUZJRVJTX0xJU1QKK2Zyb20gcGFja2FnaW5nLnZlcnNpb24gaW1wb3J0IGlzX3ZhbGlkX3ZlcnNpb24KKworX0ZJTEVOQU1FID0gJ3NldHVwLmNmZycKK19ERUZBVUxUX0NGRyA9ICcucHlwa2djcmVhdGUnICAjIEZJWE1FIHVzZSBhIHNlY3Rpb24gaW4gdXNlciAucHlkaXN0dXRpbHMuY2ZnCisKK19oZWxwdGV4dCA9IHsKKyAgICAnbmFtZSc6ICcnJworVGhlIG5hbWUgb2YgdGhlIHByb2plY3QgdG8gYmUgcGFja2FnZWQsIHVzdWFsbHkgYSBzaW5nbGUgd29yZCBjb21wb3NlZAorb2YgbG93ZXItY2FzZSBjaGFyYWN0ZXJzIHN1Y2ggYXMgInpvcGUuaW50ZXJmYWNlIiwgInNxbGFsY2hlbXkiIG9yCisiQ2hlcnJ5UHkiLgorJycnLAorICAgICd2ZXJzaW9uJzogJycnCitWZXJzaW9uIG51bWJlciBvZiB0aGUgc29mdHdhcmUsIHR5cGljYWxseSAyIG9yIDMgbnVtYmVycyBzZXBhcmF0ZWQgYnkKK2RvdHMgc3VjaCBhcyAiMS4wIiwgIjAuNmIzIiwgb3IgIjMuMi4xIi4gICIwLjEuMCIgaXMgcmVjb21tZW5kZWQgZm9yCitpbml0aWFsIGRldmVsb3BtZW50LgorJycnLAorICAgICdzdW1tYXJ5JzogJycnCitBIG9uZS1saW5lIHN1bW1hcnkgb2Ygd2hhdCB0aGlzIHByb2plY3QgaXMgb3IgZG9lcywgdHlwaWNhbGx5IGEgc2VudGVuY2UKKzgwIGNoYXJhY3RlcnMgb3IgbGVzcyBpbiBsZW5ndGguCisnJycsCisgICAgJ2F1dGhvcic6ICcnJworVGhlIGZ1bGwgbmFtZSBvZiB0aGUgYXV0aG9yICh0eXBpY2FsbHkgeW91KS4KKycnJywKKyAgICAnYXV0aG9yX2VtYWlsJzogJycnCitFbWFpbCBhZGRyZXNzIG9mIHRoZSBwcm9qZWN0IGF1dGhvci4KKycnJywKKyAgICAnZG9fY2xhc3NpZmllcic6ICcnJworVHJvdmUgY2xhc3NpZmllcnMgYXJlIG9wdGlvbmFsIGlkZW50aWZpZXJzIHRoYXQgYWxsb3cgeW91IHRvIHNwZWNpZnkgdGhlCitpbnRlbmRlZCBhdWRpZW5jZSBieSBzYXlpbmcgdGhpbmdzIGxpa2UgIkJldGEgc29mdHdhcmUgd2l0aCBhIHRleHQgVUkKK2ZvciBMaW51eCB1bmRlciB0aGUgUFNGIGxpY2Vuc2UiLiAgSG93ZXZlciwgdGhpcyBjYW4gYmUgYSBzb21ld2hhdAoraW52b2x2ZWQgcHJvY2Vzcy4KKycnJywKKyAgICAncGFja2FnZXMnOiAnJycKK1B5dGhvbiBwYWNrYWdlcyBpbmNsdWRlZCBpbiB0aGUgcHJvamVjdC4KKycnJywKKyAgICAnbW9kdWxlcyc6ICcnJworUHVyZSBQeXRob24gbW9kdWxlcyBpbmNsdWRlZCBpbiB0aGUgcHJvamVjdC4KKycnJywKKyAgICAnZXh0cmFfZmlsZXMnOiAnJycKK1lvdSBjYW4gcHJvdmlkZSBleHRyYSBmaWxlcy9kaXJzIGNvbnRhaW5lZCBpbiB5b3VyIHByb2plY3QuCitJdCBoYXMgdG8gZm9sbG93IHRoZSB0ZW1wbGF0ZSBzeW50YXguIFhYWCBhZGQgaGVscCBoZXJlLgorJycnLAorCisgICAgJ2hvbWVfcGFnZSc6ICcnJworVGhlIGhvbWUgcGFnZSBmb3IgdGhlIHByb2plY3QsIHR5cGljYWxseSBhIHB1YmxpYyBXZWIgcGFnZS4KKycnJywKKyAgICAndHJvdmVfbGljZW5zZSc6ICcnJworT3B0aW9uYWxseSB5b3UgY2FuIHNwZWNpZnkgYSBsaWNlbnNlLiAgVHlwZSBhIHN0cmluZyB0aGF0IGlkZW50aWZpZXMgYQorY29tbW9uIGxpY2Vuc2UsIGFuZCB0aGVuIHlvdSBjYW4gc2VsZWN0IGEgbGlzdCBvZiBsaWNlbnNlIHNwZWNpZmllcnMuCisnJycsCisgICAgJ3Ryb3ZlX2dlbmVyaWMnOiAnJycKK09wdGlvbmFsbHksIHlvdSBjYW4gc2V0IG90aGVyIHRyb3ZlIGlkZW50aWZpZXJzIGZvciB0aGluZ3Mgc3VjaCBhcyB0aGUKK2h1bWFuIGxhbmd1YWdlLCBwcm9ncmFtbWluZyBsYW5ndWFnZSwgdXNlciBpbnRlcmZhY2UsIGV0Yy4KKycnJywKKyAgICAnc2V0dXAucHkgZm91bmQnOiAnJycKK1RoZSBzZXR1cC5weSBzY3JpcHQgd2lsbCBiZSBleGVjdXRlZCB0byByZXRyaWV2ZSB0aGUgbWV0YWRhdGEuCitBbiBpbnRlcmFjdGl2ZSBoZWxwZXIgd2lsbCBiZSBydW4gaWYgeW91IGFuc3dlciAibiIsCisnJycsCit9CisKK1BST0pFQ1RfTUFUVVJJVFkgPSBbJ0RldmVsb3BtZW50IFN0YXR1cyA6OiAxIC0gUGxhbm5pbmcnLAorICAgICAgICAgICAgICAgICAgICAnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDIgLSBQcmUtQWxwaGEnLAorICAgICAgICAgICAgICAgICAgICAnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDMgLSBBbHBoYScsCisgICAgICAgICAgICAgICAgICAgICdEZXZlbG9wbWVudCBTdGF0dXMgOjogNCAtIEJldGEnLAorICAgICAgICAgICAgICAgICAgICAnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDUgLSBQcm9kdWN0aW9uL1N0YWJsZScsCisgICAgICAgICAgICAgICAgICAgICdEZXZlbG9wbWVudCBTdGF0dXMgOjogNiAtIE1hdHVyZScsCisgICAgICAgICAgICAgICAgICAgICdEZXZlbG9wbWVudCBTdGF0dXMgOjogNyAtIEluYWN0aXZlJ10KKworIyBYWFggZXZlcnl0aGluZyBuZWVkcyBkb2NzdHJpbmdzIGFuZCB0ZXN0cyAoYm90aCBsb3ctbGV2ZWwgdGVzdHMgb2YgdmFyaW91cworIyBtZXRob2RzIGFuZCBmdW5jdGlvbmFsIHRlc3RzIG9mIHJ1bm5pbmcgdGhlIHNjcmlwdCkKKworCitkZWYgbG9hZF9zZXR1cCgpOgorICAgICIiInJ1biB0aGUgc2V0dXAgc2NyaXB0IChpLmUgdGhlIHNldHVwLnB5IGZpbGUpCisKKyAgICBUaGlzIGZ1bmN0aW9uIGxvYWQgdGhlIHNldHVwIGZpbGUgaW4gYWxsIGNhc2VzIChldmVuIGlmIGl0IGhhdmUgYWxyZWFkeQorICAgIGJlZW4gbG9hZGVkIGJlZm9yZSwgYmVjYXVzZSB3ZSBhcmUgbW9ua2V5IHBhdGNoaW5nIGl0cyBzZXR1cCBmdW5jdGlvbiB3aXRoCisgICAgYSBwYXJ0aWN1bGFyIG9uZSIiIgorICAgIHdpdGggb3Blbigic2V0dXAucHkiLCAicmIiKSBhcyBmOgorICAgICAgICBlbmNvZGluZywgbGluZXMgPSBkZXRlY3RfZW5jb2RpbmcoZi5yZWFkbGluZSkKKyAgICB3aXRoIG9wZW4oInNldHVwLnB5IiwgZW5jb2Rpbmc9ZW5jb2RpbmcpIGFzIGY6CisgICAgICAgIGltcC5sb2FkX21vZHVsZSgic2V0dXAiLCBmLCAic2V0dXAucHkiLCAoIi5weSIsICJyIiwgaW1wLlBZX1NPVVJDRSkpCisKKworZGVmIGFza195bihxdWVzdGlvbiwgZGVmYXVsdD1Ob25lLCBoZWxwdGV4dD1Ob25lKToKKyAgICBxdWVzdGlvbiArPSAnICh5L24pJworICAgIHdoaWxlIFRydWU6CisgICAgICAgIGFuc3dlciA9IGFzayhxdWVzdGlvbiwgZGVmYXVsdCwgaGVscHRleHQsIHJlcXVpcmVkPVRydWUpCisgICAgICAgIGlmIGFuc3dlciBhbmQgYW5zd2VyWzBdLmxvd2VyKCkgaW4gKCd5JywgJ24nKToKKyAgICAgICAgICAgIHJldHVybiBhbnN3ZXJbMF0ubG93ZXIoKQorCisgICAgICAgIGxvZ2dlci5lcnJvcignWW91IG11c3Qgc2VsZWN0ICJZIiBvciAiTiIuJykKKworCisjIFhYWCB1c2UgdXRpbC5hc2sKKyMgRklYTUU6IGlmIHByb21wdCBlbmRzIHdpdGggJz8nLCBkb24ndCBhZGQgJzonCisKKworZGVmIGFzayhxdWVzdGlvbiwgZGVmYXVsdD1Ob25lLCBoZWxwdGV4dD1Ob25lLCByZXF1aXJlZD1UcnVlLAorICAgICAgICBsZW5ndGh5PUZhbHNlLCBtdWx0aWxpbmU9RmFsc2UpOgorICAgIHByb21wdCA9ICclczogJyAlIChxdWVzdGlvbiwpCisgICAgaWYgZGVmYXVsdDoKKyAgICAgICAgcHJvbXB0ID0gJyVzIFslc106ICcgJSAocXVlc3Rpb24sIGRlZmF1bHQpCisgICAgICAgIGlmIGRlZmF1bHQgYW5kIGxlbihxdWVzdGlvbikgKyBsZW4oZGVmYXVsdCkgPiA3MDoKKyAgICAgICAgICAgIHByb21wdCA9ICclc1xuICAgIFslc106ICcgJSAocXVlc3Rpb24sIGRlZmF1bHQpCisgICAgaWYgbGVuZ3RoeSBvciBtdWx0aWxpbmU6CisgICAgICAgIHByb21wdCArPSAnXG4gICA+ICcKKworICAgIGlmIG5vdCBoZWxwdGV4dDoKKyAgICAgICAgaGVscHRleHQgPSAnTm8gYWRkaXRpb25hbCBoZWxwIGF2YWlsYWJsZS4nCisKKyAgICBoZWxwdGV4dCA9IGhlbHB0ZXh0LnN0cmlwKCJcbiIpCisKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICBsaW5lID0gaW5wdXQocHJvbXB0KS5zdHJpcCgpCisgICAgICAgIGlmIGxpbmUgPT0gJz8nOgorICAgICAgICAgICAgcHJpbnQoJz0nICogNzApCisgICAgICAgICAgICBwcmludChoZWxwdGV4dCkKKyAgICAgICAgICAgIHByaW50KCc9JyAqIDcwKQorICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgaWYgZGVmYXVsdCBhbmQgbm90IGxpbmU6CisgICAgICAgICAgICByZXR1cm4gZGVmYXVsdAorICAgICAgICBpZiBub3QgbGluZSBhbmQgcmVxdWlyZWQ6CisgICAgICAgICAgICBwcmludCgnKicgKiA3MCkKKyAgICAgICAgICAgIHByaW50KCdUaGlzIHZhbHVlIGNhbm5vdCBiZSBlbXB0eS4nKQorICAgICAgICAgICAgcHJpbnQoJz09PT09PT09PT09PT09PT09PT09PT09PT09PScpCisgICAgICAgICAgICBpZiBoZWxwdGV4dDoKKyAgICAgICAgICAgICAgICBwcmludChoZWxwdGV4dCkKKyAgICAgICAgICAgIHByaW50KCcqJyAqIDcwKQorICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgcmV0dXJuIGxpbmUKKworCitkZWYgY29udmVydF95bl90b19ib29sKHluLCB5ZXM9VHJ1ZSwgbm89RmFsc2UpOgorICAgICIiIkNvbnZlcnQgYSB5L3llcyBvciBuL25vIHRvIGEgYm9vbGVhbiB2YWx1ZS4iIiIKKyAgICBpZiB5bi5sb3dlcigpLnN0YXJ0c3dpdGgoJ3knKToKKyAgICAgICAgcmV0dXJuIHllcworICAgIGVsc2U6CisgICAgICAgIHJldHVybiBubworCisKK2RlZiBfYnVpbGRfY2xhc3NpZmllcnNfZGljdChjbGFzc2lmaWVycyk6CisgICAgZCA9IHt9CisgICAgZm9yIGtleSBpbiBjbGFzc2lmaWVyczoKKyAgICAgICAgc3ViZGljdCA9IGQKKyAgICAgICAgZm9yIHN1YmtleSBpbiBrZXkuc3BsaXQoJyA6OiAnKToKKyAgICAgICAgICAgIGlmIHN1YmtleSBub3QgaW4gc3ViZGljdDoKKyAgICAgICAgICAgICAgICBzdWJkaWN0W3N1YmtleV0gPSB7fQorICAgICAgICAgICAgc3ViZGljdCA9IHN1YmRpY3Rbc3Via2V5XQorICAgIHJldHVybiBkCisKK0NMQVNTSUZJRVJTID0gX2J1aWxkX2NsYXNzaWZpZXJzX2RpY3QoX0NMQVNTSUZJRVJTX0xJU1QpCisKKworZGVmIF9idWlsZF9saWNlbmNlcyhjbGFzc2lmaWVycyk6CisgICAgcmVzID0gW10KKyAgICBmb3IgaW5kZXgsIGl0ZW0gaW4gZW51bWVyYXRlKGNsYXNzaWZpZXJzKToKKyAgICAgICAgaWYgbm90IGl0ZW0uc3RhcnRzd2l0aCgnTGljZW5zZSA6OiAnKToKKyAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgIHJlcy5hcHBlbmQoKGluZGV4LCBpdGVtLnNwbGl0KCcgOjogJylbLTFdLmxvd2VyKCkpKQorICAgIHJldHVybiByZXMKKworTElDRU5DRVMgPSBfYnVpbGRfbGljZW5jZXMoX0NMQVNTSUZJRVJTX0xJU1QpCisKKworY2xhc3MgTWFpblByb2dyYW06CisgICAgIiIiTWFrZSBhIHByb2plY3Qgc2V0dXAgY29uZmlndXJhdGlvbiBmaWxlIChzZXR1cC5jZmcpLiIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICBzZWxmLmNvbmZpZ3BhcnNlciA9IE5vbmUKKyAgICAgICAgc2VsZi5jbGFzc2lmaWVycyA9IHNldCgpCisgICAgICAgIHNlbGYuZGF0YSA9IHsnbmFtZSc6ICcnLAorICAgICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4wLjAnLAorICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzaWZpZXInOiBzZWxmLmNsYXNzaWZpZXJzLAorICAgICAgICAgICAgICAgICAgICAgJ3BhY2thZ2VzJzogW10sCisgICAgICAgICAgICAgICAgICAgICAnbW9kdWxlcyc6IFtdLAorICAgICAgICAgICAgICAgICAgICAgJ3BsYXRmb3JtJzogW10sCisgICAgICAgICAgICAgICAgICAgICAncmVzb3VyY2VzJzogW10sCisgICAgICAgICAgICAgICAgICAgICAnZXh0cmFfZmlsZXMnOiBbXSwKKyAgICAgICAgICAgICAgICAgICAgICdzY3JpcHRzJzogW10sCisgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgIHNlbGYuX2xvYWRfZGVmYXVsdHMoKQorCisgICAgZGVmIF9fY2FsbF9fKHNlbGYpOgorICAgICAgICBzZXR1cGNmZ19kZWZpbmVkID0gRmFsc2UKKyAgICAgICAgaWYgc2VsZi5oYXNfc2V0dXBfcHkoKSBhbmQgc2VsZi5fcHJvbXB0X3VzZXJfZm9yX2NvbnZlcnNpb24oKToKKyAgICAgICAgICAgIHNldHVwY2ZnX2RlZmluZWQgPSBzZWxmLmNvbnZlcnRfcHlfdG9fY2ZnKCkKKyAgICAgICAgaWYgbm90IHNldHVwY2ZnX2RlZmluZWQ6CisgICAgICAgICAgICBzZWxmLmRlZmluZV9jZmdfdmFsdWVzKCkKKyAgICAgICAgc2VsZi5fd3JpdGVfY2ZnKCkKKworICAgIGRlZiBoYXNfc2V0dXBfcHkoc2VsZik6CisgICAgICAgICIiIlRlc3QgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzZXR1cC5weSBmaWxlLiIiIgorICAgICAgICByZXR1cm4gb3MucGF0aC5leGlzdHMoJ3NldHVwLnB5JykKKworICAgIGRlZiBkZWZpbmVfY2ZnX3ZhbHVlcyhzZWxmKToKKyAgICAgICAgc2VsZi5pbnNwZWN0KCkKKyAgICAgICAgc2VsZi5xdWVyeV91c2VyKCkKKworICAgIGRlZiBfbG9va3VwX29wdGlvbihzZWxmLCBrZXkpOgorICAgICAgICBpZiBub3Qgc2VsZi5jb25maWdwYXJzZXIuaGFzX29wdGlvbignREVGQVVMVCcsIGtleSk6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICByZXR1cm4gc2VsZi5jb25maWdwYXJzZXIuZ2V0KCdERUZBVUxUJywga2V5KQorCisgICAgZGVmIF9sb2FkX2RlZmF1bHRzKHNlbGYpOgorICAgICAgICAjIExvYWQgZGVmYXVsdCB2YWx1ZXMgZnJvbSBhIHVzZXIgY29uZmlndXJhdGlvbiBmaWxlCisgICAgICAgIHNlbGYuY29uZmlncGFyc2VyID0gUmF3Q29uZmlnUGFyc2VyKCkKKyAgICAgICAgIyBUT0RPIHJlcGxhY2Ugd2l0aCBzZWN0aW9uIGluIGRpc3R1dGlscyBjb25maWcgZmlsZQorICAgICAgICBkZWZhdWx0X2NmZyA9IG9zLnBhdGguZXhwYW5kdXNlcihvcy5wYXRoLmpvaW4oJ34nLCBfREVGQVVMVF9DRkcpKQorICAgICAgICBzZWxmLmNvbmZpZ3BhcnNlci5yZWFkKGRlZmF1bHRfY2ZnKQorICAgICAgICBzZWxmLmRhdGFbJ2F1dGhvciddID0gc2VsZi5fbG9va3VwX29wdGlvbignYXV0aG9yJykKKyAgICAgICAgc2VsZi5kYXRhWydhdXRob3JfZW1haWwnXSA9IHNlbGYuX2xvb2t1cF9vcHRpb24oJ2F1dGhvcl9lbWFpbCcpCisKKyAgICBkZWYgX3Byb21wdF91c2VyX2Zvcl9jb252ZXJzaW9uKHNlbGYpOgorICAgICAgICAjIFByb21wdCB0aGUgdXNlciBhYm91dCB3aGV0aGVyIHRoZXkgd291bGQgbGlrZSB0byB1c2UgdGhlIHNldHVwLnB5CisgICAgICAgICMgY29udmVyc2lvbiB1dGlsaXR5IHRvIGdlbmVyYXRlIGEgc2V0dXAuY2ZnIG9yIGdlbmVyYXRlIHRoZSBzZXR1cC5jZmcKKyAgICAgICAgIyBmcm9tIHNjcmF0Y2gKKyAgICAgICAgYW5zd2VyID0gYXNrX3luKCgnQSBsZWdhY3kgc2V0dXAucHkgaGFzIGJlZW4gZm91bmQuXG4nCisgICAgICAgICAgICAgICAgICAgICAgICAgJ1dvdWxkIHlvdSBsaWtlIHRvIGNvbnZlcnQgaXQgdG8gYSBzZXR1cC5jZmc/JyksCisgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0PSJ5IiwKKyAgICAgICAgICAgICAgICAgICAgICAgIGhlbHB0ZXh0PV9oZWxwdGV4dFsnc2V0dXAucHkgZm91bmQnXSkKKyAgICAgICAgcmV0dXJuIGNvbnZlcnRfeW5fdG9fYm9vbChhbnN3ZXIpCisKKyAgICBkZWYgX2RvdHRlZF9wYWNrYWdlcyhzZWxmLCBkYXRhKToKKyAgICAgICAgcGFja2FnZXMgPSBzb3J0ZWQoZGF0YSkKKyAgICAgICAgbW9kaWZpZWRfcGtncyA9IFtdCisgICAgICAgIGZvciBwa2cgaW4gcGFja2FnZXM6CisgICAgICAgICAgICBwa2cgPSBwa2cubHN0cmlwKCcuLycpCisgICAgICAgICAgICBwa2cgPSBwa2cucmVwbGFjZSgnLycsICcuJykKKyAgICAgICAgICAgIG1vZGlmaWVkX3BrZ3MuYXBwZW5kKHBrZykKKyAgICAgICAgcmV0dXJuIG1vZGlmaWVkX3BrZ3MKKworICAgIGRlZiBfd3JpdGVfY2ZnKHNlbGYpOgorICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhfRklMRU5BTUUpOgorICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoJyVzLm9sZCcgJSBfRklMRU5BTUUpOgorICAgICAgICAgICAgICAgIG1lc3NhZ2UgPSAoIkVSUk9SOiAlKG5hbWUpcy5vbGQgYmFja3VwIGV4aXN0cywgcGxlYXNlIGNoZWNrICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aGF0IGN1cnJlbnQgJShuYW1lKXMgaXMgY29ycmVjdCBhbmQgcmVtb3ZlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIlKG5hbWUpcy5vbGQiICUgeyduYW1lJzogX0ZJTEVOQU1FfSkKKyAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IobWVzc2FnZSkKKyAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgICAgIHNodXRpbC5tb3ZlKF9GSUxFTkFNRSwgJyVzLm9sZCcgJSBfRklMRU5BTUUpCisKKyAgICAgICAgd2l0aCBvcGVuKF9GSUxFTkFNRSwgJ3cnLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBmcDoKKyAgICAgICAgICAgIGZwLndyaXRlKCdbbWV0YWRhdGFdXG4nKQorICAgICAgICAgICAgIyBUT0RPIHVzZSBtZXRhZGF0YSBtb2R1bGUgaW5zdGVhZCBvZiBoYXJkLWNvZGluZyBmaWVsZC1zcGVjaWZpYworICAgICAgICAgICAgIyBiZWhhdmlvciBoZXJlCisKKyAgICAgICAgICAgICMgc2ltcGxlIHN0cmluZyBlbnRyaWVzCisgICAgICAgICAgICBmb3IgbmFtZSBpbiAoJ25hbWUnLCAndmVyc2lvbicsICdzdW1tYXJ5JywgJ2Rvd25sb2FkX3VybCcpOgorICAgICAgICAgICAgICAgIGZwLndyaXRlKCclcyA9ICVzXG4nICUgKG5hbWUsIHNlbGYuZGF0YS5nZXQobmFtZSwgJ1VOS05PV04nKSkpCisKKyAgICAgICAgICAgICMgb3B0aW9uYWwgc3RyaW5nIGVudHJpZXMKKyAgICAgICAgICAgIGlmICdrZXl3b3JkcycgaW4gc2VsZi5kYXRhIGFuZCBzZWxmLmRhdGFbJ2tleXdvcmRzJ106CisgICAgICAgICAgICAgICAgIyBYWFggc2hvdWQgdXNlIGNvbW1hIHRvIHNlcGFyYXRlLCBub3Qgc3BhY2UKKyAgICAgICAgICAgICAgICBmcC53cml0ZSgna2V5d29yZHMgPSAlc1xuJyAlICcgJy5qb2luKHNlbGYuZGF0YVsna2V5d29yZHMnXSkpCisgICAgICAgICAgICBmb3IgbmFtZSBpbiAoJ2hvbWVfcGFnZScsICdhdXRob3InLCAnYXV0aG9yX2VtYWlsJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbWFpbnRhaW5lcicsICdtYWludGFpbmVyX2VtYWlsJywgJ2Rlc2NyaXB0aW9uLWZpbGUnKToKKyAgICAgICAgICAgICAgICBpZiBuYW1lIGluIHNlbGYuZGF0YSBhbmQgc2VsZi5kYXRhW25hbWVdOgorICAgICAgICAgICAgICAgICAgICBmcC53cml0ZSgnJXMgPSAlc1xuJyAlIChuYW1lLCBzZWxmLmRhdGFbbmFtZV0pKQorICAgICAgICAgICAgaWYgJ2Rlc2NyaXB0aW9uJyBpbiBzZWxmLmRhdGE6CisgICAgICAgICAgICAgICAgZnAud3JpdGUoCisgICAgICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbiA9ICVzXG4nCisgICAgICAgICAgICAgICAgICAgICUgJ1xuICAgICAgIHwnLmpvaW4oc2VsZi5kYXRhWydkZXNjcmlwdGlvbiddLnNwbGl0KCdcbicpKSkKKworICAgICAgICAgICAgIyBtdWx0aXBsZSB1c2Ugc3RyaW5nIGVudHJpZXMKKyAgICAgICAgICAgIGZvciBuYW1lIGluICgncGxhdGZvcm0nLCAnc3VwcG9ydGVkLXBsYXRmb3JtJywgJ2NsYXNzaWZpZXInLAorICAgICAgICAgICAgICAgICAgICAgICAgICdyZXF1aXJlcy1kaXN0JywgJ3Byb3ZpZGVzLWRpc3QnLCAnb2Jzb2xldGVzLWRpc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICdyZXF1aXJlcy1leHRlcm5hbCcpOgorICAgICAgICAgICAgICAgIGlmIG5vdChuYW1lIGluIHNlbGYuZGF0YSBhbmQgc2VsZi5kYXRhW25hbWVdKToKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBmcC53cml0ZSgnJXMgPSAnICUgbmFtZSkKKyAgICAgICAgICAgICAgICBmcC53cml0ZSgnJy5qb2luKCcgICAgJXNcbicgJSB2YWwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciB2YWwgaW4gc2VsZi5kYXRhW25hbWVdKS5sc3RyaXAoKSkKKworICAgICAgICAgICAgZnAud3JpdGUoJ1xuW2ZpbGVzXVxuJykKKworICAgICAgICAgICAgZm9yIG5hbWUgaW4gKCdwYWNrYWdlcycsICdtb2R1bGVzJywgJ3NjcmlwdHMnLCAnZXh0cmFfZmlsZXMnKToKKyAgICAgICAgICAgICAgICBpZiBub3QobmFtZSBpbiBzZWxmLmRhdGEgYW5kIHNlbGYuZGF0YVtuYW1lXSk6CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgZnAud3JpdGUoJyVzID0gJXNcbicKKyAgICAgICAgICAgICAgICAgICAgICAgICAlIChuYW1lLCAnXG4gICAgJy5qb2luKHNlbGYuZGF0YVtuYW1lXSkuc3RyaXAoKSkpCisKKyAgICAgICAgICAgIGlmIHNlbGYuZGF0YS5nZXQoJ3BhY2thZ2VfZGF0YScpOgorICAgICAgICAgICAgICAgIGZwLndyaXRlKCdwYWNrYWdlX2RhdGEgPVxuJykKKyAgICAgICAgICAgICAgICBmb3IgcGtnLCBzcGVjIGluIHNvcnRlZChzZWxmLmRhdGFbJ3BhY2thZ2VfZGF0YSddLml0ZW1zKCkpOgorICAgICAgICAgICAgICAgICAgICAjIHB1dCBvbmUgc3BlYyBwZXIgbGluZSwgaW5kZW50ZWQgdW5kZXIgdGhlIHBhY2thZ2UgbmFtZQorICAgICAgICAgICAgICAgICAgICBpbmRlbnQgPSAnICcgKiAobGVuKHBrZykgKyA3KQorICAgICAgICAgICAgICAgICAgICBzcGVjID0gKCdcbicgKyBpbmRlbnQpLmpvaW4oc3BlYykKKyAgICAgICAgICAgICAgICAgICAgZnAud3JpdGUoJyAgICAlcyA9ICVzXG4nICUgKHBrZywgc3BlYykpCisgICAgICAgICAgICAgICAgZnAud3JpdGUoJ1xuJykKKworICAgICAgICAgICAgaWYgc2VsZi5kYXRhLmdldCgncmVzb3VyY2VzJyk6CisgICAgICAgICAgICAgICAgZnAud3JpdGUoJ3Jlc291cmNlcyA9XG4nKQorICAgICAgICAgICAgICAgIGZvciBzcmMsIGRlc3QgaW4gc2VsZi5kYXRhWydyZXNvdXJjZXMnXToKKyAgICAgICAgICAgICAgICAgICAgZnAud3JpdGUoJyAgICAlcyA9ICVzXG4nICUgKHNyYywgZGVzdCkpCisgICAgICAgICAgICAgICAgZnAud3JpdGUoJ1xuJykKKworICAgICAgICBvcy5jaG1vZChfRklMRU5BTUUsIDBvNjQ0KQorICAgICAgICBsb2dnZXIuaW5mbygnV3JvdGUgIiVzIi4nICUgX0ZJTEVOQU1FKQorCisgICAgZGVmIGNvbnZlcnRfcHlfdG9fY2ZnKHNlbGYpOgorICAgICAgICAiIiJHZW5lcmF0ZSBhIHNldHVwLmNmZyBmcm9tIGFuIGV4aXN0aW5nIHNldHVwLnB5LgorCisgICAgICAgIEl0IG9ubHkgZXhwb3J0cyB0aGUgZGlzdHV0aWxzIG1ldGFkYXRhIChzZXR1cHRvb2xzIHNwZWNpZmljIG1ldGFkYXRhCisgICAgICAgIGlzIG5vdCBjdXJyZW50bHkgc3VwcG9ydGVkKS4KKyAgICAgICAgIiIiCisgICAgICAgIGRhdGEgPSBzZWxmLmRhdGEKKworICAgICAgICBkZWYgc2V0dXBfbW9jaygqKmF0dHJzKToKKyAgICAgICAgICAgICIiIk1vY2sgdGhlIHNldHVwKCoqYXR0cnMpIGluIG9yZGVyIHRvIHJldHJpZXZlIG1ldGFkYXRhLiIiIgorCisgICAgICAgICAgICAjIFRPRE8gdXNlIGNvbmZpZyBhbmQgbWV0YWRhdGEgaW5zdGVhZCBvZiBEaXN0cmlidXRpb24KKyAgICAgICAgICAgIGZyb20gZGlzdHV0aWxzLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorICAgICAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbihhdHRycykKKyAgICAgICAgICAgIGRpc3QucGFyc2VfY29uZmlnX2ZpbGVzKCkKKworICAgICAgICAgICAgIyAxLiByZXRyaWV2ZSBtZXRhZGF0YSBmaWVsZHMgdGhhdCBhcmUgcXVpdGUgc2ltaWxhciBpbgorICAgICAgICAgICAgIyBQRVAgMzE0IGFuZCBQRVAgMzQ1CisgICAgICAgICAgICBsYWJlbHMgPSAoKCduYW1lJywpICogMiwKKyAgICAgICAgICAgICAgICAgICAgICAoJ3ZlcnNpb24nLCkgKiAyLAorICAgICAgICAgICAgICAgICAgICAgICgnYXV0aG9yJywpICogMiwKKyAgICAgICAgICAgICAgICAgICAgICAoJ2F1dGhvcl9lbWFpbCcsKSAqIDIsCisgICAgICAgICAgICAgICAgICAgICAgKCdtYWludGFpbmVyJywpICogMiwKKyAgICAgICAgICAgICAgICAgICAgICAoJ21haW50YWluZXJfZW1haWwnLCkgKiAyLAorICAgICAgICAgICAgICAgICAgICAgICgnZGVzY3JpcHRpb24nLCAnc3VtbWFyeScpLAorICAgICAgICAgICAgICAgICAgICAgICgnbG9uZ19kZXNjcmlwdGlvbicsICdkZXNjcmlwdGlvbicpLAorICAgICAgICAgICAgICAgICAgICAgICgndXJsJywgJ2hvbWVfcGFnZScpLAorICAgICAgICAgICAgICAgICAgICAgICgncGxhdGZvcm1zJywgJ3BsYXRmb3JtJyksCisgICAgICAgICAgICAgICAgICAgICAgKCdwcm92aWRlcycsICdwcm92aWRlcy1kaXN0JyksCisgICAgICAgICAgICAgICAgICAgICAgKCdvYnNvbGV0ZXMnLCAnb2Jzb2xldGVzLWRpc3QnKSwKKyAgICAgICAgICAgICAgICAgICAgICAoJ3JlcXVpcmVzJywgJ3JlcXVpcmVzLWRpc3QnKSkKKworICAgICAgICAgICAgZ2V0ID0gbGFtYmRhIGxhYjogZ2V0YXR0cihkaXN0Lm1ldGFkYXRhLCBsYWIucmVwbGFjZSgnLScsICdfJykpCisgICAgICAgICAgICBkYXRhLnVwZGF0ZSgobmV3LCBnZXQob2xkKSkgZm9yIG9sZCwgbmV3IGluIGxhYmVscyBpZiBnZXQob2xkKSkKKworICAgICAgICAgICAgIyAyLiByZXRyaWV2ZSBkYXRhIHRoYXQgcmVxdWlyZXMgc3BlY2lhbCBwcm9jZXNzaW5nCisgICAgICAgICAgICBkYXRhWydjbGFzc2lmaWVyJ10udXBkYXRlKGRpc3QuZ2V0X2NsYXNzaWZpZXJzKCkgb3IgW10pCisgICAgICAgICAgICBkYXRhWydzY3JpcHRzJ10uZXh0ZW5kKGRpc3Quc2NyaXB0cyBvciBbXSkKKyAgICAgICAgICAgIGRhdGFbJ3BhY2thZ2VzJ10uZXh0ZW5kKGRpc3QucGFja2FnZXMgb3IgW10pCisgICAgICAgICAgICBkYXRhWydtb2R1bGVzJ10uZXh0ZW5kKGRpc3QucHlfbW9kdWxlcyBvciBbXSkKKyAgICAgICAgICAgICMgMi4xIGRhdGFfZmlsZXMgLT4gcmVzb3VyY2VzCisgICAgICAgICAgICBpZiBkaXN0LmRhdGFfZmlsZXM6CisgICAgICAgICAgICAgICAgaWYgKGxlbihkaXN0LmRhdGFfZmlsZXMpIDwgMiBvcgorICAgICAgICAgICAgICAgICAgICBpc2luc3RhbmNlKGRpc3QuZGF0YV9maWxlc1sxXSwgc3RyKSk6CisgICAgICAgICAgICAgICAgICAgIGRpc3QuZGF0YV9maWxlcyA9IFsoJycsIGRpc3QuZGF0YV9maWxlcyldCisgICAgICAgICAgICAgICAgIyBhZGQgdG9rZW5zIGluIHRoZSBkZXN0aW5hdGlvbiBwYXRocworICAgICAgICAgICAgICAgIHZhcnMgPSB7J2Rpc3RyaWJ1dGlvbi5uYW1lJzogZGF0YVsnbmFtZSddfQorICAgICAgICAgICAgICAgIHBhdGhfdG9rZW5zID0gc3lzY29uZmlnLmdldF9wYXRocyh2YXJzPXZhcnMpLml0ZW1zKCkKKyAgICAgICAgICAgICAgICAjIHNvcnQgdG9rZW5zIHRvIHVzZSB0aGUgbG9uZ2VzdCBvbmUgZmlyc3QKKyAgICAgICAgICAgICAgICBwYXRoX3Rva2VucyA9IHNvcnRlZChwYXRoX3Rva2Vucywga2V5PWxhbWJkYSB4OiBsZW4oeFsxXSkpCisgICAgICAgICAgICAgICAgZm9yIGRlc3QsIHNyY3MgaW4gKGRpc3QuZGF0YV9maWxlcyBvciBbXSk6CisgICAgICAgICAgICAgICAgICAgIGRlc3QgPSBvcy5wYXRoLmpvaW4oc3lzLnByZWZpeCwgZGVzdCkKKyAgICAgICAgICAgICAgICAgICAgZGVzdCA9IGRlc3QucmVwbGFjZShvcy5wYXRoLnNlcCwgJy8nKQorICAgICAgICAgICAgICAgICAgICBmb3IgdG9rLCBwYXRoIGluIHBhdGhfdG9rZW5zOgorICAgICAgICAgICAgICAgICAgICAgICAgcGF0aCA9IHBhdGgucmVwbGFjZShvcy5wYXRoLnNlcCwgJy8nKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGRlc3Quc3RhcnRzd2l0aChwYXRoKToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICAgICAgICAgICAgICBkZXN0ID0gKCd7JXN9JyAlIHRvaykgKyBkZXN0W2xlbihwYXRoKTpdCisgICAgICAgICAgICAgICAgICAgICAgICBmaWxlcyA9IFsoJy8gJy5qb2luKHNyYy5yc3BsaXQoJy8nLCAxKSksIGRlc3QpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3Igc3JjIGluIHNyY3NdCisgICAgICAgICAgICAgICAgICAgICAgICBkYXRhWydyZXNvdXJjZXMnXS5leHRlbmQoZmlsZXMpCisKKyAgICAgICAgICAgICMgMi4yIHBhY2thZ2VfZGF0YQorICAgICAgICAgICAgZGF0YVsncGFja2FnZV9kYXRhJ10gPSBkaXN0LnBhY2thZ2VfZGF0YS5jb3B5KCkKKworICAgICAgICAgICAgIyBVc2UgUkVBRE1FIGZpbGUgaWYgaXRzIGNvbnRlbnQgaXMgdGhlIGRlc2NpcHRpb24KKyAgICAgICAgICAgIGlmICJkZXNjcmlwdGlvbiIgaW4gZGF0YToKKyAgICAgICAgICAgICAgICByZWYgPSBtZDUocmUuc3ViKCdccycsICcnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5kYXRhWydkZXNjcmlwdGlvbiddKS5sb3dlcigpLmVuY29kZSgpKQorICAgICAgICAgICAgICAgIHJlZiA9IHJlZi5kaWdlc3QoKQorICAgICAgICAgICAgICAgIGZvciByZWFkbWUgaW4gZ2xvYi5nbG9iKCdSRUFETUUqJyk6CisgICAgICAgICAgICAgICAgICAgIHdpdGggb3BlbihyZWFkbWUsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGZwOgorICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudHMgPSBmcC5yZWFkKCkKKyAgICAgICAgICAgICAgICAgICAgY29udGVudHMgPSByZS5zdWIoJ1xzJywgJycsIGNvbnRlbnRzLmxvd2VyKCkpLmVuY29kZSgpCisgICAgICAgICAgICAgICAgICAgIHZhbCA9IG1kNShjb250ZW50cykuZGlnZXN0KCkKKyAgICAgICAgICAgICAgICAgICAgaWYgdmFsID09IHJlZjoKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlbCBkYXRhWydkZXNjcmlwdGlvbiddCisgICAgICAgICAgICAgICAgICAgICAgICBkYXRhWydkZXNjcmlwdGlvbi1maWxlJ10gPSByZWFkbWUKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisKKyAgICAgICAgIyBhcHBseSBtb25rZXkgcGF0Y2ggdG8gZGlzdHV0aWxzICh2MSkgYW5kIHNldHVwdG9vbHMgKGlmIG5lZWRlZCkKKyAgICAgICAgIyAoYWJvcnQgdGhlIGZlYXR1cmUgaWYgZGlzdHV0aWxzIHYxIGhhcyBiZWVuIGtpbGxlZCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZnJvbSBkaXN0dXRpbHMgaW1wb3J0IGNvcmUKKyAgICAgICAgICAgIGNvcmUuc2V0dXAgICMgbWFrZSBzdXJlIGl0J3Mgbm90IGQyIG1hc2tlcmFkaW5nIGFzIGQxCisgICAgICAgIGV4Y2VwdCAoSW1wb3J0RXJyb3IsIEF0dHJpYnV0ZUVycm9yKToKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBzYXZlZF9zZXR1cHMgPSBbKGNvcmUsIGNvcmUuc2V0dXApXQorICAgICAgICBjb3JlLnNldHVwID0gc2V0dXBfbW9jaworICAgICAgICB0cnk6CisgICAgICAgICAgICBpbXBvcnQgc2V0dXB0b29scworICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzYXZlZF9zZXR1cHMuYXBwZW5kKChzZXR1cHRvb2xzLCBzZXR1cHRvb2xzLnNldHVwKSkKKyAgICAgICAgICAgIHNldHVwdG9vbHMuc2V0dXAgPSBzZXR1cF9tb2NrCisgICAgICAgICMgZ2V0IG1ldGFkYXRhIGJ5IGV4ZWN1dGluZyB0aGUgc2V0dXAucHkgd2l0aCB0aGUgcGF0Y2hlZCBzZXR1cCguLi4pCisgICAgICAgIHN1Y2Nlc3MgPSBGYWxzZSAgIyBmb3IgcHl0aG9uIDwgMi40CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGxvYWRfc2V0dXAoKQorICAgICAgICAgICAgc3VjY2VzcyA9IFRydWUKKyAgICAgICAgZmluYWxseTogICMgcmV2ZXJ0IG1vbmtleSBwYXRjaGVzCisgICAgICAgICAgICBmb3IgcGF0Y2hlZF9tb2R1bGUsIG9yaWdpbmFsX3NldHVwIGluIHNhdmVkX3NldHVwczoKKyAgICAgICAgICAgICAgICBwYXRjaGVkX21vZHVsZS5zZXR1cCA9IG9yaWdpbmFsX3NldHVwCisgICAgICAgIGlmIG5vdCBzZWxmLmRhdGE6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdVbmFibGUgdG8gbG9hZCBtZXRhZGF0YSBmcm9tIHNldHVwLnB5JykKKyAgICAgICAgcmV0dXJuIHN1Y2Nlc3MKKworICAgIGRlZiBpbnNwZWN0KHNlbGYpOgorICAgICAgICAiIiJJbnNwZWN0IHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZXRvcnkgZm9yIGEgbmFtZSBhbmQgdmVyc2lvbi4KKworICAgICAgICBUaGlzIGluZm9ybWF0aW9uIGlzIGhhcnZlc3RlZCBpbiB3aGVyZSB0aGUgZGlyZWN0b3J5IGlzIG5hbWVkCisgICAgICAgIGxpa2UgW25hbWVdLVt2ZXJzaW9uXS4KKyAgICAgICAgIiIiCisgICAgICAgIGRpcl9uYW1lID0gb3MucGF0aC5iYXNlbmFtZShvcy5nZXRjd2QoKSkKKyAgICAgICAgc2VsZi5kYXRhWyduYW1lJ10gPSBkaXJfbmFtZQorICAgICAgICBtYXRjaCA9IHJlLm1hdGNoKHInKC4qKS0oXGQuKyknLCBkaXJfbmFtZSkKKyAgICAgICAgaWYgbWF0Y2g6CisgICAgICAgICAgICBzZWxmLmRhdGFbJ25hbWUnXSA9IG1hdGNoLmdyb3VwKDEpCisgICAgICAgICAgICBzZWxmLmRhdGFbJ3ZlcnNpb24nXSA9IG1hdGNoLmdyb3VwKDIpCisgICAgICAgICAgICAjIFRPRE8gbmVlZHMgdGVzdGluZyEKKyAgICAgICAgICAgIGlmIG5vdCBpc192YWxpZF92ZXJzaW9uKHNlbGYuZGF0YVsndmVyc2lvbiddKToKKyAgICAgICAgICAgICAgICBtc2cgPSAiSW52YWxpZCB2ZXJzaW9uIGRpc2NvdmVyZWQ6ICVzIiAlIHNlbGYuZGF0YVsndmVyc2lvbiddCisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcihtc2cpCisKKyAgICBkZWYgcXVlcnlfdXNlcihzZWxmKToKKyAgICAgICAgc2VsZi5kYXRhWyduYW1lJ10gPSBhc2soJ1Byb2plY3QgbmFtZScsIHNlbGYuZGF0YVsnbmFtZSddLAorICAgICAgICAgICAgICBfaGVscHRleHRbJ25hbWUnXSkKKworICAgICAgICBzZWxmLmRhdGFbJ3ZlcnNpb24nXSA9IGFzaygnQ3VycmVudCB2ZXJzaW9uIG51bWJlcicsCisgICAgICAgICAgICAgIHNlbGYuZGF0YS5nZXQoJ3ZlcnNpb24nKSwgX2hlbHB0ZXh0Wyd2ZXJzaW9uJ10pCisgICAgICAgIHNlbGYuZGF0YVsnc3VtbWFyeSddID0gYXNrKCdQcm9qZWN0IGRlc2NyaXB0aW9uIHN1bW1hcnknLAorICAgICAgICAgICAgICBzZWxmLmRhdGEuZ2V0KCdzdW1tYXJ5JyksIF9oZWxwdGV4dFsnc3VtbWFyeSddLAorICAgICAgICAgICAgICBsZW5ndGh5PVRydWUpCisgICAgICAgIHNlbGYuZGF0YVsnYXV0aG9yJ10gPSBhc2soJ0F1dGhvciBuYW1lJywKKyAgICAgICAgICAgICAgc2VsZi5kYXRhLmdldCgnYXV0aG9yJyksIF9oZWxwdGV4dFsnYXV0aG9yJ10pCisgICAgICAgIHNlbGYuZGF0YVsnYXV0aG9yX2VtYWlsJ10gPSBhc2soJ0F1dGhvciBlbWFpbCBhZGRyZXNzJywKKyAgICAgICAgICAgICAgc2VsZi5kYXRhLmdldCgnYXV0aG9yX2VtYWlsJyksIF9oZWxwdGV4dFsnYXV0aG9yX2VtYWlsJ10pCisgICAgICAgIHNlbGYuZGF0YVsnaG9tZV9wYWdlJ10gPSBhc2soJ1Byb2plY3QgaG9tZSBwYWdlJywKKyAgICAgICAgICAgICAgc2VsZi5kYXRhLmdldCgnaG9tZV9wYWdlJyksIF9oZWxwdGV4dFsnaG9tZV9wYWdlJ10sCisgICAgICAgICAgICAgIHJlcXVpcmVkPUZhbHNlKQorCisgICAgICAgIGlmIGFza195bignRG8geW91IHdhbnQgbWUgdG8gYXV0b21hdGljYWxseSBidWlsZCB0aGUgZmlsZSBsaXN0ICcKKyAgICAgICAgICAgICAgJ3dpdGggZXZlcnl0aGluZyBJIGNhbiBmaW5kIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeT8gJworICAgICAgICAgICAgICAnSWYgeW91IHNheSBubywgeW91IHdpbGwgaGF2ZSB0byBkZWZpbmUgdGhlbSBtYW51YWxseS4nKSA9PSAneSc6CisgICAgICAgICAgICBzZWxmLl9maW5kX2ZpbGVzKCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHdoaWxlIGFza195bignRG8geW91IHdhbnQgdG8gYWRkIGEgc2luZ2xlIG1vZHVsZT8nCisgICAgICAgICAgICAgICAgICAgICAgICAnICh5b3Ugd2lsbCBiZSBhYmxlIHRvIGFkZCBmdWxsIHBhY2thZ2VzIG5leHQpJywKKyAgICAgICAgICAgICAgICAgICAgaGVscHRleHQ9X2hlbHB0ZXh0Wydtb2R1bGVzJ10pID09ICd5JzoKKyAgICAgICAgICAgICAgICBzZWxmLl9zZXRfbXVsdGkoJ01vZHVsZSBuYW1lJywgJ21vZHVsZXMnKQorCisgICAgICAgICAgICB3aGlsZSBhc2tfeW4oJ0RvIHlvdSB3YW50IHRvIGFkZCBhIHBhY2thZ2U/JywKKyAgICAgICAgICAgICAgICAgICAgaGVscHRleHQ9X2hlbHB0ZXh0WydwYWNrYWdlcyddKSA9PSAneSc6CisgICAgICAgICAgICAgICAgc2VsZi5fc2V0X211bHRpKCdQYWNrYWdlIG5hbWUnLCAncGFja2FnZXMnKQorCisgICAgICAgICAgICB3aGlsZSBhc2tfeW4oJ0RvIHlvdSB3YW50IHRvIGFkZCBhbiBleHRyYSBmaWxlPycsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwdGV4dD1faGVscHRleHRbJ2V4dHJhX2ZpbGVzJ10pID09ICd5JzoKKyAgICAgICAgICAgICAgICBzZWxmLl9zZXRfbXVsdGkoJ0V4dHJhIGZpbGUvZGlyIG5hbWUnLCAnZXh0cmFfZmlsZXMnKQorCisgICAgICAgIGlmIGFza195bignRG8geW91IHdhbnQgdG8gc2V0IFRyb3ZlIGNsYXNzaWZpZXJzPycsCisgICAgICAgICAgICAgICAgICBoZWxwdGV4dD1faGVscHRleHRbJ2RvX2NsYXNzaWZpZXInXSkgPT0gJ3knOgorICAgICAgICAgICAgc2VsZi5zZXRfY2xhc3NpZmllcigpCisKKyAgICBkZWYgX2ZpbmRfZmlsZXMoc2VsZik6CisgICAgICAgICMgd2UgYXJlIGxvb2tpbmcgZm9yIHB5dGhvbiBtb2R1bGVzIGFuZCBwYWNrYWdlcywKKyAgICAgICAgIyBvdGhlciBzdHVmZiBhcmUgYWRkZWQgYXMgcmVndWxhciBmaWxlcworICAgICAgICBwa2dzID0gc2VsZi5kYXRhWydwYWNrYWdlcyddCisgICAgICAgIG1vZHVsZXMgPSBzZWxmLmRhdGFbJ21vZHVsZXMnXQorICAgICAgICBleHRyYV9maWxlcyA9IHNlbGYuZGF0YVsnZXh0cmFfZmlsZXMnXQorCisgICAgICAgIGRlZiBpc19wYWNrYWdlKHBhdGgpOgorICAgICAgICAgICAgcmV0dXJuIG9zLnBhdGguZXhpc3RzKG9zLnBhdGguam9pbihwYXRoLCAnX19pbml0X18ucHknKSkKKworICAgICAgICBjdXJkaXIgPSBvcy5nZXRjd2QoKQorICAgICAgICBzY2FubmVkID0gW10KKyAgICAgICAgX3ByZWYgPSBbJ2xpYicsICdpbmNsdWRlJywgJ2Rpc3QnLCAnYnVpbGQnLCAnLicsICd+J10KKyAgICAgICAgX3N1ZiA9IFsnLnB5YyddCisKKyAgICAgICAgZGVmIHRvX3NraXAocGF0aCk6CisgICAgICAgICAgICBwYXRoID0gcmVsYXRpdmUocGF0aCkKKworICAgICAgICAgICAgZm9yIHByZWYgaW4gX3ByZWY6CisgICAgICAgICAgICAgICAgaWYgcGF0aC5zdGFydHN3aXRoKHByZWYpOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgICAgICAgICBmb3Igc3VmIGluIF9zdWY6CisgICAgICAgICAgICAgICAgaWYgcGF0aC5lbmRzd2l0aChzdWYpOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgICAgICAgICByZXR1cm4gRmFsc2UKKworICAgICAgICBkZWYgcmVsYXRpdmUocGF0aCk6CisgICAgICAgICAgICByZXR1cm4gcGF0aFtsZW4oY3VyZGlyKSArIDE6XQorCisgICAgICAgIGRlZiBkb3R0ZWQocGF0aCk6CisgICAgICAgICAgICByZXMgPSByZWxhdGl2ZShwYXRoKS5yZXBsYWNlKG9zLnBhdGguc2VwLCAnLicpCisgICAgICAgICAgICBpZiByZXMuZW5kc3dpdGgoJy5weScpOgorICAgICAgICAgICAgICAgIHJlcyA9IHJlc1s6LWxlbignLnB5JyldCisgICAgICAgICAgICByZXR1cm4gcmVzCisKKyAgICAgICAgIyBmaXJzdCBwYXNzOiBwYWNrYWdlcworICAgICAgICBmb3Igcm9vdCwgZGlycywgZmlsZXMgaW4gb3Mud2FsayhjdXJkaXIpOgorICAgICAgICAgICAgaWYgdG9fc2tpcChyb290KToKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZm9yIGRpcl8gaW4gc29ydGVkKGRpcnMpOgorICAgICAgICAgICAgICAgIGlmIHRvX3NraXAoZGlyXyk6CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgZnVsbHBhdGggPSBvcy5wYXRoLmpvaW4ocm9vdCwgZGlyXykKKyAgICAgICAgICAgICAgICBkb3R0ZWRfbmFtZSA9IGRvdHRlZChmdWxscGF0aCkKKyAgICAgICAgICAgICAgICBpZiBpc19wYWNrYWdlKGZ1bGxwYXRoKSBhbmQgZG90dGVkX25hbWUgbm90IGluIHBrZ3M6CisgICAgICAgICAgICAgICAgICAgIHBrZ3MuYXBwZW5kKGRvdHRlZF9uYW1lKQorICAgICAgICAgICAgICAgICAgICBzY2FubmVkLmFwcGVuZChmdWxscGF0aCkKKworICAgICAgICAjIG1vZHVsZXMgYW5kIGV4dHJhIGZpbGVzCisgICAgICAgIGZvciByb290LCBkaXJzLCBmaWxlcyBpbiBvcy53YWxrKGN1cmRpcik6CisgICAgICAgICAgICBpZiB0b19za2lwKHJvb3QpOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgIGlmIGFueShyb290LnN0YXJ0c3dpdGgocGF0aCkgZm9yIHBhdGggaW4gc2Nhbm5lZCk6CisgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgZm9yIGZpbGUgaW4gc29ydGVkKGZpbGVzKToKKyAgICAgICAgICAgICAgICBmdWxscGF0aCA9IG9zLnBhdGguam9pbihyb290LCBmaWxlKQorICAgICAgICAgICAgICAgIGlmIHRvX3NraXAoZnVsbHBhdGgpOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICMgc2luZ2xlIG1vZHVsZT8KKyAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLnNwbGl0ZXh0KGZpbGUpWy0xXSA9PSAnLnB5JzoKKyAgICAgICAgICAgICAgICAgICAgbW9kdWxlcy5hcHBlbmQoZG90dGVkKGZ1bGxwYXRoKSkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBleHRyYV9maWxlcy5hcHBlbmQocmVsYXRpdmUoZnVsbHBhdGgpKQorCisgICAgZGVmIF9zZXRfbXVsdGkoc2VsZiwgcXVlc3Rpb24sIG5hbWUpOgorICAgICAgICBleGlzdGluZ192YWx1ZXMgPSBzZWxmLmRhdGFbbmFtZV0KKyAgICAgICAgdmFsdWUgPSBhc2socXVlc3Rpb24sIGhlbHB0ZXh0PV9oZWxwdGV4dFtuYW1lXSkuc3RyaXAoKQorICAgICAgICBpZiB2YWx1ZSBub3QgaW4gZXhpc3RpbmdfdmFsdWVzOgorICAgICAgICAgICAgZXhpc3RpbmdfdmFsdWVzLmFwcGVuZCh2YWx1ZSkKKworICAgIGRlZiBzZXRfY2xhc3NpZmllcihzZWxmKToKKyAgICAgICAgc2VsZi5zZXRfbWF0dXJpdHlfc3RhdHVzKHNlbGYuY2xhc3NpZmllcnMpCisgICAgICAgIHNlbGYuc2V0X2xpY2Vuc2Uoc2VsZi5jbGFzc2lmaWVycykKKyAgICAgICAgc2VsZi5zZXRfb3RoZXJfY2xhc3NpZmllcihzZWxmLmNsYXNzaWZpZXJzKQorCisgICAgZGVmIHNldF9vdGhlcl9jbGFzc2lmaWVyKHNlbGYsIGNsYXNzaWZpZXJzKToKKyAgICAgICAgaWYgYXNrX3luKCdEbyB5b3Ugd2FudCB0byBzZXQgb3RoZXIgdHJvdmUgaWRlbnRpZmllcnM/JywgJ24nLAorICAgICAgICAgICAgICAgICAgX2hlbHB0ZXh0Wyd0cm92ZV9nZW5lcmljJ10pICE9ICd5JzoKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBzZWxmLndhbGtfY2xhc3NpZmllcnMoY2xhc3NpZmllcnMsIFtDTEFTU0lGSUVSU10sICcnKQorCisgICAgZGVmIHdhbGtfY2xhc3NpZmllcnMoc2VsZiwgY2xhc3NpZmllcnMsIHRyb3ZlcGF0aCwgZGVzYyk6CisgICAgICAgIHRyb3ZlID0gdHJvdmVwYXRoWy0xXQorCisgICAgICAgIGlmIG5vdCB0cm92ZToKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGZvciBrZXkgaW4gc29ydGVkKHRyb3ZlKToKKyAgICAgICAgICAgIGlmIGxlbih0cm92ZVtrZXldKSA9PSAwOgorICAgICAgICAgICAgICAgIGlmIGFza195bignQWRkICIlcyInICUgZGVzY1s0Ol0gKyAnIDo6ICcgKyBrZXksICduJykgPT0gJ3knOgorICAgICAgICAgICAgICAgICAgICBjbGFzc2lmaWVycy5hZGQoZGVzY1s0Ol0gKyAnIDo6ICcgKyBrZXkpCisgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgaWYgYXNrX3luKCdEbyB5b3Ugd2FudCB0byBzZXQgaXRlbXMgdW5kZXJcbiAgICIlcyIgKCVkIHN1Yi1pdGVtcyk/JworICAgICAgICAgICAgICAgICAgICAgICUgKGtleSwgbGVuKHRyb3ZlW2tleV0pKSwgJ24nLAorICAgICAgICAgICAgICAgICAgICAgIF9oZWxwdGV4dFsndHJvdmVfZ2VuZXJpYyddKSA9PSAneSc6CisgICAgICAgICAgICAgICAgc2VsZi53YWxrX2NsYXNzaWZpZXJzKGNsYXNzaWZpZXJzLCB0cm92ZXBhdGggKyBbdHJvdmVba2V5XV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2MgKyAnIDo6ICcgKyBrZXkpCisKKyAgICBkZWYgc2V0X2xpY2Vuc2Uoc2VsZiwgY2xhc3NpZmllcnMpOgorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgbGljZW5zZSA9IGFzaygnV2hhdCBsaWNlbnNlIGRvIHlvdSB1c2U/JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscHRleHQ9X2hlbHB0ZXh0Wyd0cm92ZV9saWNlbnNlJ10sIHJlcXVpcmVkPUZhbHNlKQorICAgICAgICAgICAgaWYgbm90IGxpY2Vuc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgICAgIGxpY2Vuc2Vfd29yZHMgPSBsaWNlbnNlLmxvd2VyKCkuc3BsaXQoJyAnKQorICAgICAgICAgICAgZm91bmRfbGlzdCA9IFtdCisKKyAgICAgICAgICAgIGZvciBpbmRleCwgbGljZW5jZSBpbiBMSUNFTkNFUzoKKyAgICAgICAgICAgICAgICBmb3Igd29yZCBpbiBsaWNlbnNlX3dvcmRzOgorICAgICAgICAgICAgICAgICAgICBpZiB3b3JkIGluIGxpY2VuY2U6CisgICAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9saXN0LmFwcGVuZChpbmRleCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisKKyAgICAgICAgICAgIGlmIGxlbihmb3VuZF9saXN0KSA9PSAwOgorICAgICAgICAgICAgICAgIGxvZ2dlci5lcnJvcignQ291bGQgbm90IGZpbmQgYSBtYXRjaGluZyBsaWNlbnNlIGZvciAiJXMiJyAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpY2Vuc2UpCisgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgcXVlc3Rpb24gPSAnTWF0Y2hpbmcgbGljZW5zZXM6XG5cbicKKworICAgICAgICAgICAgZm9yIGluZGV4LCBsaXN0X2luZGV4IGluIGVudW1lcmF0ZShmb3VuZF9saXN0KToKKyAgICAgICAgICAgICAgICBxdWVzdGlvbiArPSAnICAgJXMpICVzXG4nICUgKGluZGV4ICsgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9DTEFTU0lGSUVSU19MSVNUW2xpc3RfaW5kZXhdKQorCisgICAgICAgICAgICBxdWVzdGlvbiArPSAoJ1xuVHlwZSB0aGUgbnVtYmVyIG9mIHRoZSBsaWNlbnNlIHlvdSB3aXNoIHRvIHVzZSBvciAnCisgICAgICAgICAgICAgICAgICAgICAgICAgJz8gdG8gdHJ5IGFnYWluOicpCisgICAgICAgICAgICBjaG9pY2UgPSBhc2socXVlc3Rpb24sIHJlcXVpcmVkPUZhbHNlKQorCisgICAgICAgICAgICBpZiBjaG9pY2UgPT0gJz8nOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBpZiBjaG9pY2UgPT0gJyc6CisgICAgICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBpbmRleCA9IGZvdW5kX2xpc3RbaW50KGNob2ljZSkgLSAxXQorICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmVycm9yKAorICAgICAgICAgICAgICAgICAgICAiSW52YWxpZCBzZWxlY3Rpb24sIHR5cGUgYSBudW1iZXIgZnJvbSB0aGUgbGlzdCBhYm92ZS4iKQorCisgICAgICAgICAgICBjbGFzc2lmaWVycy5hZGQoX0NMQVNTSUZJRVJTX0xJU1RbaW5kZXhdKQorCisgICAgZGVmIHNldF9tYXR1cml0eV9zdGF0dXMoc2VsZiwgY2xhc3NpZmllcnMpOgorICAgICAgICBtYXR1cml0eV9uYW1lID0gbGFtYmRhIG1hdDogbWF0LnNwbGl0KCctICcpWy0xXQorICAgICAgICBtYXR1cml0eV9xdWVzdGlvbiA9ICcnJ1wKKyAgICAgICAgICAgIFBsZWFzZSBzZWxlY3QgdGhlIHByb2plY3Qgc3RhdHVzOgorCisgICAgICAgICAgICAlcworCisgICAgICAgICAgICBTdGF0dXMnJycgJSAnXG4nLmpvaW4oJyVzIC0gJXMnICUgKGksIG1hdHVyaXR5X25hbWUobikpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGksIG4gaW4gZW51bWVyYXRlKFBST0pFQ1RfTUFUVVJJVFkpKQorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgY2hvaWNlID0gYXNrKGRlZGVudChtYXR1cml0eV9xdWVzdGlvbiksIHJlcXVpcmVkPUZhbHNlKQorCisgICAgICAgICAgICBpZiBjaG9pY2U6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBjaG9pY2UgPSBpbnQoY2hvaWNlKSAtIDEKKyAgICAgICAgICAgICAgICAgICAga2V5ID0gUFJPSkVDVF9NQVRVUklUWVtjaG9pY2VdCisgICAgICAgICAgICAgICAgICAgIGNsYXNzaWZpZXJzLmFkZChrZXkpCisgICAgICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgICAgIGV4Y2VwdCAoSW5kZXhFcnJvciwgVmFsdWVFcnJvcik6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci5lcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICJJbnZhbGlkIHNlbGVjdGlvbiwgdHlwZSBhIHNpbmdsZSBkaWdpdCBudW1iZXIuIikKKworCitkZWYgbWFpbigpOgorICAgICIiIk1haW4gZW50cnkgcG9pbnQuIiIiCisgICAgcHJvZ3JhbSA9IE1haW5Qcm9ncmFtKCkKKyAgICAjICMgdW5jb21tZW50IHdoZW4gaW1wbGVtZW50ZWQKKyAgICAjIGlmIG5vdCBwcm9ncmFtLmxvYWRfZXhpc3Rpbmdfc2V0dXBfc2NyaXB0KCk6CisgICAgIyAgICAgcHJvZ3JhbS5pbnNwZWN0X2RpcmVjdG9yeSgpCisgICAgIyAgICAgcHJvZ3JhbS5xdWVyeV91c2VyKCkKKyAgICAjICAgICBwcm9ncmFtLnVwZGF0ZV9jb25maWdfZmlsZSgpCisgICAgIyBwcm9ncmFtLndyaXRlX3NldHVwX3NjcmlwdCgpCisgICAgIyBwYWNrYWdpbmcudXRpbC5jZmdfdG9fYXJncygpCisgICAgcHJvZ3JhbSgpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2RhdGFiYXNlLnB5IGIvTGliL3BhY2thZ2luZy9kYXRhYmFzZS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMDI4ZGM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9kYXRhYmFzZS5weQpAQCAtMCwwICsxLDY1MSBAQAorIiIiUEVQIDM3NiBpbXBsZW1lbnRhdGlvbi4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgcmUKK2ltcG9ydCBjc3YKK2ltcG9ydCBzeXMKK2ltcG9ydCB6aXBpbXBvcnQKK2Zyb20gaW8gaW1wb3J0IFN0cmluZ0lPCitmcm9tIGhhc2hsaWIgaW1wb3J0IG1kNQorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0Vycm9yCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBzdWdnZXN0X25vcm1hbGl6ZWRfdmVyc2lvbiwgVmVyc2lvblByZWRpY2F0ZQorZnJvbSBwYWNrYWdpbmcubWV0YWRhdGEgaW1wb3J0IE1ldGFkYXRhCisKKworX19hbGxfXyA9IFsKKyAgICAnRGlzdHJpYnV0aW9uJywgJ0VnZ0luZm9EaXN0cmlidXRpb24nLCAnZGlzdGluZm9fZGlybmFtZScsCisgICAgJ2dldF9kaXN0cmlidXRpb25zJywgJ2dldF9kaXN0cmlidXRpb24nLCAnZ2V0X2ZpbGVfdXNlcnMnLAorICAgICdwcm92aWRlc19kaXN0cmlidXRpb24nLCAnb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbicsCisgICAgJ2VuYWJsZV9jYWNoZScsICdkaXNhYmxlX2NhY2hlJywgJ2NsZWFyX2NhY2hlJywKKyAgICAjIFhYWCB0aGVzZSBmdW5jdGlvbnMnIG5hbWVzIGxvb2sgbGlrZSBnZXRfZmlsZV91c2VycyBidXQgYXJlIG5vdCByZWxhdGVkCisgICAgJ2dldF9maWxlX3BhdGgnLCAnZ2V0X2ZpbGUnXQorCisKKyMgVE9ETyB1cGRhdGUgZG9jcworCitESVNUX0ZJTEVTID0gKCdJTlNUQUxMRVInLCAnTUVUQURBVEEnLCAnUkVDT1JEJywgJ1JFUVVFU1RFRCcsICdSRVNPVVJDRVMnKQorCisjIENhY2hlCitfY2FjaGVfbmFtZSA9IHt9ICAjIG1hcHMgbmFtZXMgdG8gRGlzdHJpYnV0aW9uIGluc3RhbmNlcworX2NhY2hlX25hbWVfZWdnID0ge30gICMgbWFwcyBuYW1lcyB0byBFZ2dJbmZvRGlzdHJpYnV0aW9uIGluc3RhbmNlcworX2NhY2hlX3BhdGggPSB7fSAgIyBtYXBzIHBhdGhzIHRvIERpc3RyaWJ1dGlvbiBpbnN0YW5jZXMKK19jYWNoZV9wYXRoX2VnZyA9IHt9ICAjIG1hcHMgcGF0aHMgdG8gRWdnSW5mb0Rpc3RyaWJ1dGlvbiBpbnN0YW5jZXMKK19jYWNoZV9nZW5lcmF0ZWQgPSBGYWxzZSAgIyBpbmRpY2F0ZXMgaWYgLmRpc3QtaW5mbyBkaXN0cmlidXRpb25zIGFyZSBjYWNoZWQKK19jYWNoZV9nZW5lcmF0ZWRfZWdnID0gRmFsc2UgICMgaW5kaWNhdGVzIGlmIC5kaXN0LWluZm8gYW5kIC5lZ2cgYXJlIGNhY2hlZAorX2NhY2hlX2VuYWJsZWQgPSBUcnVlCisKKworZGVmIGVuYWJsZV9jYWNoZSgpOgorICAgICIiIgorICAgIEVuYWJsZXMgdGhlIGludGVybmFsIGNhY2hlLgorCisgICAgTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gd2lsbCBub3QgY2xlYXIgdGhlIGNhY2hlIGluIGFueSBjYXNlLCBmb3IgdGhhdAorICAgIGZ1bmN0aW9uYWxpdHkgc2VlIDpmdW5jOmBjbGVhcl9jYWNoZWAuCisgICAgIiIiCisgICAgZ2xvYmFsIF9jYWNoZV9lbmFibGVkCisKKyAgICBfY2FjaGVfZW5hYmxlZCA9IFRydWUKKworCitkZWYgZGlzYWJsZV9jYWNoZSgpOgorICAgICIiIgorICAgIERpc2FibGVzIHRoZSBpbnRlcm5hbCBjYWNoZS4KKworICAgIE5vdGUgdGhhdCB0aGlzIGZ1bmN0aW9uIHdpbGwgbm90IGNsZWFyIHRoZSBjYWNoZSBpbiBhbnkgY2FzZSwgZm9yIHRoYXQKKyAgICBmdW5jdGlvbmFsaXR5IHNlZSA6ZnVuYzpgY2xlYXJfY2FjaGVgLgorICAgICIiIgorICAgIGdsb2JhbCBfY2FjaGVfZW5hYmxlZAorCisgICAgX2NhY2hlX2VuYWJsZWQgPSBGYWxzZQorCisKK2RlZiBjbGVhcl9jYWNoZSgpOgorICAgICIiIiBDbGVhcnMgdGhlIGludGVybmFsIGNhY2hlLiAiIiIKKyAgICBnbG9iYWwgX2NhY2hlX2dlbmVyYXRlZCwgX2NhY2hlX2dlbmVyYXRlZF9lZ2cKKworICAgIF9jYWNoZV9uYW1lLmNsZWFyKCkKKyAgICBfY2FjaGVfbmFtZV9lZ2cuY2xlYXIoKQorICAgIF9jYWNoZV9wYXRoLmNsZWFyKCkKKyAgICBfY2FjaGVfcGF0aF9lZ2cuY2xlYXIoKQorICAgIF9jYWNoZV9nZW5lcmF0ZWQgPSBGYWxzZQorICAgIF9jYWNoZV9nZW5lcmF0ZWRfZWdnID0gRmFsc2UKKworCitkZWYgX3lpZWxkX2Rpc3RyaWJ1dGlvbnMoaW5jbHVkZV9kaXN0LCBpbmNsdWRlX2VnZywgcGF0aHMpOgorICAgICIiIgorICAgIFlpZWxkIC5kaXN0LWluZm8gYW5kIC5lZ2coLWluZm8pIGRpc3RyaWJ1dGlvbnMsIGJhc2VkIG9uIHRoZSBhcmd1bWVudHMKKworICAgIDpwYXJhbWV0ZXIgaW5jbHVkZV9kaXN0OiB5aWVsZCAuZGlzdC1pbmZvIGRpc3RyaWJ1dGlvbnMKKyAgICA6cGFyYW1ldGVyIGluY2x1ZGVfZWdnOiB5aWVsZCAuZWdnKC1pbmZvKSBkaXN0cmlidXRpb25zCisgICAgIiIiCisgICAgZm9yIHBhdGggaW4gcGF0aHM6CisgICAgICAgIHJlYWxwYXRoID0gb3MucGF0aC5yZWFscGF0aChwYXRoKQorICAgICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihyZWFscGF0aCk6CisgICAgICAgICAgICBjb250aW51ZQorICAgICAgICBmb3IgZGlyIGluIG9zLmxpc3RkaXIocmVhbHBhdGgpOgorICAgICAgICAgICAgZGlzdF9wYXRoID0gb3MucGF0aC5qb2luKHJlYWxwYXRoLCBkaXIpCisgICAgICAgICAgICBpZiBpbmNsdWRlX2Rpc3QgYW5kIGRpci5lbmRzd2l0aCgnLmRpc3QtaW5mbycpOgorICAgICAgICAgICAgICAgIHlpZWxkIERpc3RyaWJ1dGlvbihkaXN0X3BhdGgpCisgICAgICAgICAgICBlbGlmIGluY2x1ZGVfZWdnIGFuZCAoZGlyLmVuZHN3aXRoKCcuZWdnLWluZm8nKSBvcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpci5lbmRzd2l0aCgnLmVnZycpKToKKyAgICAgICAgICAgICAgICB5aWVsZCBFZ2dJbmZvRGlzdHJpYnV0aW9uKGRpc3RfcGF0aCkKKworCitkZWYgX2dlbmVyYXRlX2NhY2hlKHVzZV9lZ2dfaW5mbywgcGF0aHMpOgorICAgIGdsb2JhbCBfY2FjaGVfZ2VuZXJhdGVkLCBfY2FjaGVfZ2VuZXJhdGVkX2VnZworCisgICAgaWYgX2NhY2hlX2dlbmVyYXRlZF9lZ2cgb3IgKF9jYWNoZV9nZW5lcmF0ZWQgYW5kIG5vdCB1c2VfZWdnX2luZm8pOgorICAgICAgICByZXR1cm4KKyAgICBlbHNlOgorICAgICAgICBnZW5fZGlzdCA9IG5vdCBfY2FjaGVfZ2VuZXJhdGVkCisgICAgICAgIGdlbl9lZ2cgPSB1c2VfZWdnX2luZm8KKworICAgICAgICBmb3IgZGlzdCBpbiBfeWllbGRfZGlzdHJpYnV0aW9ucyhnZW5fZGlzdCwgZ2VuX2VnZywgcGF0aHMpOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShkaXN0LCBEaXN0cmlidXRpb24pOgorICAgICAgICAgICAgICAgIF9jYWNoZV9wYXRoW2Rpc3QucGF0aF0gPSBkaXN0CisgICAgICAgICAgICAgICAgaWYgZGlzdC5uYW1lIG5vdCBpbiBfY2FjaGVfbmFtZToKKyAgICAgICAgICAgICAgICAgICAgX2NhY2hlX25hbWVbZGlzdC5uYW1lXSA9IFtdCisgICAgICAgICAgICAgICAgX2NhY2hlX25hbWVbZGlzdC5uYW1lXS5hcHBlbmQoZGlzdCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgX2NhY2hlX3BhdGhfZWdnW2Rpc3QucGF0aF0gPSBkaXN0CisgICAgICAgICAgICAgICAgaWYgZGlzdC5uYW1lIG5vdCBpbiBfY2FjaGVfbmFtZV9lZ2c6CisgICAgICAgICAgICAgICAgICAgIF9jYWNoZV9uYW1lX2VnZ1tkaXN0Lm5hbWVdID0gW10KKyAgICAgICAgICAgICAgICBfY2FjaGVfbmFtZV9lZ2dbZGlzdC5uYW1lXS5hcHBlbmQoZGlzdCkKKworICAgICAgICBpZiBnZW5fZGlzdDoKKyAgICAgICAgICAgIF9jYWNoZV9nZW5lcmF0ZWQgPSBUcnVlCisgICAgICAgIGlmIGdlbl9lZ2c6CisgICAgICAgICAgICBfY2FjaGVfZ2VuZXJhdGVkX2VnZyA9IFRydWUKKworCitjbGFzcyBEaXN0cmlidXRpb246CisgICAgIiIiQ3JlYXRlZCB3aXRoIHRoZSAqcGF0aCogb2YgdGhlIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeSBwcm92aWRlZCB0byB0aGUKKyAgICBjb25zdHJ1Y3Rvci4gSXQgcmVhZHMgdGhlIG1ldGFkYXRhIGNvbnRhaW5lZCBpbiBgYE1FVEFEQVRBYGAgd2hlbiBpdCBpcworICAgIGluc3RhbnRpYXRlZC4iIiIKKworICAgIG5hbWUgPSAnJworICAgICIiIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24uIiIiCisKKyAgICB2ZXJzaW9uID0gJycKKyAgICAiIiJUaGUgdmVyc2lvbiBvZiB0aGUgZGlzdHJpYnV0aW9uLiIiIgorCisgICAgbWV0YWRhdGEgPSBOb25lCisgICAgIiIiQSA6Y2xhc3M6YHBhY2thZ2luZy5tZXRhZGF0YS5NZXRhZGF0YWAgaW5zdGFuY2UgbG9hZGVkIHdpdGgKKyAgICB0aGUgZGlzdHJpYnV0aW9uJ3MgYGBNRVRBREFUQWBgIGZpbGUuIiIiCisKKyAgICByZXF1ZXN0ZWQgPSBGYWxzZQorICAgICIiIkEgYm9vbGVhbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZSBgYFJFUVVFU1RFRGBgIG1ldGFkYXRhIGZpbGUgaXMKKyAgICBwcmVzZW50IChpbiBvdGhlciB3b3Jkcywgd2hldGhlciB0aGUgcGFja2FnZSB3YXMgaW5zdGFsbGVkIGJ5IHVzZXIKKyAgICByZXF1ZXN0IG9yIGl0IHdhcyBpbnN0YWxsZWQgYXMgYSBkZXBlbmRlbmN5KS4iIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXRoKToKKyAgICAgICAgaWYgX2NhY2hlX2VuYWJsZWQgYW5kIHBhdGggaW4gX2NhY2hlX3BhdGg6CisgICAgICAgICAgICBzZWxmLm1ldGFkYXRhID0gX2NhY2hlX3BhdGhbcGF0aF0ubWV0YWRhdGEKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG1ldGFkYXRhX3BhdGggPSBvcy5wYXRoLmpvaW4ocGF0aCwgJ01FVEFEQVRBJykKKyAgICAgICAgICAgIHNlbGYubWV0YWRhdGEgPSBNZXRhZGF0YShwYXRoPW1ldGFkYXRhX3BhdGgpCisKKyAgICAgICAgc2VsZi5uYW1lID0gc2VsZi5tZXRhZGF0YVsnTmFtZSddCisgICAgICAgIHNlbGYudmVyc2lvbiA9IHNlbGYubWV0YWRhdGFbJ1ZlcnNpb24nXQorICAgICAgICBzZWxmLnBhdGggPSBwYXRoCisKKyAgICAgICAgaWYgX2NhY2hlX2VuYWJsZWQgYW5kIHBhdGggbm90IGluIF9jYWNoZV9wYXRoOgorICAgICAgICAgICAgX2NhY2hlX3BhdGhbcGF0aF0gPSBzZWxmCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiAnPERpc3RyaWJ1dGlvbiAlciAlcyBhdCAlcj4nICUgKAorICAgICAgICAgICAgc2VsZi5uYW1lLCBzZWxmLnZlcnNpb24sIHNlbGYucGF0aCkKKworICAgIGRlZiBfZ2V0X3JlY29yZHMoc2VsZiwgbG9jYWw9RmFsc2UpOgorICAgICAgICByZXN1bHRzID0gW10KKyAgICAgICAgd2l0aCBzZWxmLmdldF9kaXN0aW5mb19maWxlKCdSRUNPUkQnKSBhcyByZWNvcmQ6CisgICAgICAgICAgICByZWNvcmRfcmVhZGVyID0gY3N2LnJlYWRlcihyZWNvcmQsIGRlbGltaXRlcj0nLCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5ldGVybWluYXRvcj0nXG4nKQorICAgICAgICAgICAgZm9yIHJvdyBpbiByZWNvcmRfcmVhZGVyOgorICAgICAgICAgICAgICAgIG1pc3NpbmcgPSBbTm9uZSBmb3IgaSBpbiByYW5nZShsZW4ocm93KSwgMyldCisgICAgICAgICAgICAgICAgcGF0aCwgY2hlY2tzdW0sIHNpemUgPSByb3cgKyBtaXNzaW5nCisgICAgICAgICAgICAgICAgaWYgbG9jYWw6CisgICAgICAgICAgICAgICAgICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoJy8nLCBvcy5zZXApCisgICAgICAgICAgICAgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oc3lzLnByZWZpeCwgcGF0aCkKKyAgICAgICAgICAgICAgICByZXN1bHRzLmFwcGVuZCgocGF0aCwgY2hlY2tzdW0sIHNpemUpKQorICAgICAgICByZXR1cm4gcmVzdWx0cworCisgICAgZGVmIGdldF9yZXNvdXJjZV9wYXRoKHNlbGYsIHJlbGF0aXZlX3BhdGgpOgorICAgICAgICB3aXRoIHNlbGYuZ2V0X2Rpc3RpbmZvX2ZpbGUoJ1JFU09VUkNFUycpIGFzIHJlc291cmNlc19maWxlOgorICAgICAgICAgICAgcmVzb3VyY2VzX3JlYWRlciA9IGNzdi5yZWFkZXIocmVzb3VyY2VzX2ZpbGUsIGRlbGltaXRlcj0nLCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5ldGVybWluYXRvcj0nXG4nKQorICAgICAgICAgICAgZm9yIHJlbGF0aXZlLCBkZXN0aW5hdGlvbiBpbiByZXNvdXJjZXNfcmVhZGVyOgorICAgICAgICAgICAgICAgIGlmIHJlbGF0aXZlID09IHJlbGF0aXZlX3BhdGg6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBkZXN0aW5hdGlvbgorICAgICAgICByYWlzZSBLZXlFcnJvcigKKyAgICAgICAgICAgICdubyByZXNvdXJjZSBmaWxlIHdpdGggcmVsYXRpdmUgcGF0aCAlciBpcyBpbnN0YWxsZWQnICUKKyAgICAgICAgICAgIHJlbGF0aXZlX3BhdGgpCisKKyAgICBkZWYgbGlzdF9pbnN0YWxsZWRfZmlsZXMoc2VsZiwgbG9jYWw9RmFsc2UpOgorICAgICAgICAiIiIKKyAgICAgICAgSXRlcmF0ZXMgb3ZlciB0aGUgYGBSRUNPUkRgYCBlbnRyaWVzIGFuZCByZXR1cm5zIGEgdHVwbGUKKyAgICAgICAgYGAocGF0aCwgbWQ1LCBzaXplKWBgIGZvciBlYWNoIGxpbmUuIElmICpsb2NhbCogaXMgYGBUcnVlYGAsCisgICAgICAgIHRoZSByZXR1cm5lZCBwYXRoIGlzIHRyYW5zZm9ybWVkIGludG8gYSBsb2NhbCBhYnNvbHV0ZSBwYXRoLgorICAgICAgICBPdGhlcndpc2UgdGhlIHJhdyB2YWx1ZSBmcm9tIFJFQ09SRCBpcyByZXR1cm5lZC4KKworICAgICAgICBBIGxvY2FsIGFic29sdXRlIHBhdGggaXMgYW4gYWJzb2x1dGUgcGF0aCBpbiB3aGljaCBvY2N1cnJlbmNlcyBvZgorICAgICAgICBgYCcvJ2BgIGhhdmUgYmVlbiByZXBsYWNlZCBieSB0aGUgc3lzdGVtIHNlcGFyYXRvciBnaXZlbiBieSBgYG9zLnNlcGBgLgorCisgICAgICAgIDpwYXJhbWV0ZXIgbG9jYWw6IGZsYWcgdG8gc2F5IGlmIHRoZSBwYXRoIHNob3VsZCBiZSByZXR1cm5lZCBhcyBhIGxvY2FsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGFic29sdXRlIHBhdGgKKworICAgICAgICA6dHlwZSBsb2NhbDogYm9vbGVhbgorICAgICAgICA6cmV0dXJuczogaXRlcmF0b3Igb2YgKHBhdGgsIG1kNSwgc2l6ZSkKKyAgICAgICAgIiIiCisgICAgICAgIGZvciByZXN1bHQgaW4gc2VsZi5fZ2V0X3JlY29yZHMobG9jYWwpOgorICAgICAgICAgICAgeWllbGQgcmVzdWx0CisKKyAgICBkZWYgdXNlcyhzZWxmLCBwYXRoKToKKyAgICAgICAgIiIiCisgICAgICAgIFJldHVybnMgYGBUcnVlYGAgaWYgcGF0aCBpcyBsaXN0ZWQgaW4gYGBSRUNPUkRgYC4gKnBhdGgqIGNhbiBiZSBhIGxvY2FsCisgICAgICAgIGFic29sdXRlIHBhdGggb3IgYSByZWxhdGl2ZSBgYCcvJ2BgLXNlcGFyYXRlZCBwYXRoLgorCisgICAgICAgIDpydHlwZTogYm9vbGVhbgorICAgICAgICAiIiIKKyAgICAgICAgZm9yIHAsIGNoZWNrc3VtLCBzaXplIGluIHNlbGYuX2dldF9yZWNvcmRzKCk6CisgICAgICAgICAgICBsb2NhbF9hYnNvbHV0ZSA9IG9zLnBhdGguam9pbihzeXMucHJlZml4LCBwKQorICAgICAgICAgICAgaWYgcGF0aCA9PSBwIG9yIHBhdGggPT0gbG9jYWxfYWJzb2x1dGU6CisgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICBkZWYgZ2V0X2Rpc3RpbmZvX2ZpbGUoc2VsZiwgcGF0aCwgYmluYXJ5PUZhbHNlKToKKyAgICAgICAgIiIiCisgICAgICAgIFJldHVybnMgYSBmaWxlIGxvY2F0ZWQgdW5kZXIgdGhlIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeS4gUmV0dXJucyBhCisgICAgICAgIGBgZmlsZWBgIGluc3RhbmNlIGZvciB0aGUgZmlsZSBwb2ludGVkIGJ5ICpwYXRoKi4KKworICAgICAgICA6cGFyYW1ldGVyIHBhdGg6IGEgYGAnLydgYC1zZXBhcmF0ZWQgcGF0aCByZWxhdGl2ZSB0byB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgICBgYC5kaXN0LWluZm9gYCBkaXJlY3Rvcnkgb3IgYW4gYWJzb2x1dGUgcGF0aDsKKyAgICAgICAgICAgICAgICAgICAgICAgICBJZiAqcGF0aCogaXMgYW4gYWJzb2x1dGUgcGF0aCBhbmQgZG9lc24ndCBzdGFydAorICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGggdGhlIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeSBwYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgIGEgOmNsYXNzOmBQYWNrYWdpbmdFcnJvcmAgaXMgcmFpc2VkCisgICAgICAgIDp0eXBlIHBhdGg6IHN0cmluZworICAgICAgICA6cGFyYW1ldGVyIGJpbmFyeTogSWYgKmJpbmFyeSogaXMgYGBUcnVlYGAsIG9wZW5zIHRoZSBmaWxlIGluIHJlYWQtb25seQorICAgICAgICAgICAgICAgICAgICAgICAgICAgYmluYXJ5IG1vZGUgKGBgcmJgYCksIG90aGVyd2lzZSBvcGVucyBpdCBpbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZC1vbmx5IG1vZGUgKGBgcmBgKS4KKyAgICAgICAgOnJ0eXBlOiBmaWxlIG9iamVjdAorICAgICAgICAiIiIKKyAgICAgICAgb3Blbl9mbGFncyA9ICdyJworICAgICAgICBpZiBiaW5hcnk6CisgICAgICAgICAgICBvcGVuX2ZsYWdzICs9ICdiJworCisgICAgICAgICMgQ2hlY2sgaWYgaXQgaXMgYW4gYWJzb2x1dGUgcGF0aCAgIyBYWFggdXNlIHJlbHBhdGgsIGFkZCB0ZXN0cworICAgICAgICBpZiBwYXRoLmZpbmQob3Muc2VwKSA+PSAwOgorICAgICAgICAgICAgIyBpdCdzIGFuIGFic29sdXRlIHBhdGg/CisgICAgICAgICAgICBkaXN0aW5mb19kaXJuYW1lLCBwYXRoID0gcGF0aC5zcGxpdChvcy5zZXApWy0yOl0KKyAgICAgICAgICAgIGlmIGRpc3RpbmZvX2Rpcm5hbWUgIT0gc2VsZi5wYXRoLnNwbGl0KG9zLnNlcClbLTFdOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0Vycm9yKAorICAgICAgICAgICAgICAgICAgICAnZGlzdC1pbmZvIGZpbGUgJXIgZG9lcyBub3QgYmVsb25nIHRvIHRoZSAlciAlcyAnCisgICAgICAgICAgICAgICAgICAgICdkaXN0cmlidXRpb24nICUgKHBhdGgsIHNlbGYubmFtZSwgc2VsZi52ZXJzaW9uKSkKKworICAgICAgICAjIFRoZSBmaWxlIG11c3QgYmUgcmVsYXRpdmUKKyAgICAgICAgaWYgcGF0aCBub3QgaW4gRElTVF9GSUxFUzoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0Vycm9yKCdpbnZhbGlkIHBhdGggZm9yIGEgZGlzdC1pbmZvIGZpbGU6ICVyJyAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoKQorCisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi5wYXRoLCBwYXRoKQorICAgICAgICByZXR1cm4gb3BlbihwYXRoLCBvcGVuX2ZsYWdzKQorCisgICAgZGVmIGxpc3RfZGlzdGluZm9fZmlsZXMoc2VsZiwgbG9jYWw9RmFsc2UpOgorICAgICAgICAiIiIKKyAgICAgICAgSXRlcmF0ZXMgb3ZlciB0aGUgYGBSRUNPUkRgYCBlbnRyaWVzIGFuZCByZXR1cm5zIHBhdGhzIGZvciBlYWNoIGxpbmUgaWYKKyAgICAgICAgdGhlIHBhdGggaXMgcG9pbnRpbmcgdG8gYSBmaWxlIGxvY2F0ZWQgaW4gdGhlIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeQorICAgICAgICBvciBvbmUgb2YgaXRzIHN1YmRpcmVjdG9yaWVzLgorCisgICAgICAgIDpwYXJhbWV0ZXIgbG9jYWw6IElmICpsb2NhbCogaXMgYGBUcnVlYGAsIGVhY2ggcmV0dXJuZWQgcGF0aCBpcworICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1lZCBpbnRvIGEgbG9jYWwgYWJzb2x1dGUgcGF0aC4gT3RoZXJ3aXNlIHRoZQorICAgICAgICAgICAgICAgICAgICAgICAgICByYXcgdmFsdWUgZnJvbSBgYFJFQ09SRGBgIGlzIHJldHVybmVkLgorICAgICAgICA6dHlwZSBsb2NhbDogYm9vbGVhbgorICAgICAgICA6cmV0dXJuczogaXRlcmF0b3Igb2YgcGF0aHMKKyAgICAgICAgIiIiCisgICAgICAgIGZvciBwYXRoLCBjaGVja3N1bSwgc2l6ZSBpbiBzZWxmLl9nZXRfcmVjb3Jkcyhsb2NhbCk6CisgICAgICAgICAgICAjIFhYWCBhZGQgc2VwYXJhdG9yIG9yIHVzZSByZWFsIHJlbHBhdGggYWxnbworICAgICAgICAgICAgaWYgcGF0aC5zdGFydHN3aXRoKHNlbGYucGF0aCk6CisgICAgICAgICAgICAgICAgeWllbGQgcGF0aAorCisgICAgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBpc2luc3RhbmNlKG90aGVyLCBEaXN0cmlidXRpb24pIGFuZCBzZWxmLnBhdGggPT0gb3RoZXIucGF0aAorCisgICAgIyBTZWUgaHR0cDovL2RvY3MucHl0aG9uLm9yZy9yZWZlcmVuY2UvZGF0YW1vZGVsI29iamVjdC5fX2hhc2hfXworICAgIF9faGFzaF9fID0gb2JqZWN0Ll9faGFzaF9fCisKKworY2xhc3MgRWdnSW5mb0Rpc3RyaWJ1dGlvbjoKKyAgICAiIiJDcmVhdGVkIHdpdGggdGhlICpwYXRoKiBvZiB0aGUgYGAuZWdnLWluZm9gYCBkaXJlY3Rvcnkgb3IgZmlsZSBwcm92aWRlZAorICAgIHRvIHRoZSBjb25zdHJ1Y3Rvci4gSXQgcmVhZHMgdGhlIG1ldGFkYXRhIGNvbnRhaW5lZCBpbiB0aGUgZmlsZSBpdHNlbGYsIG9yCisgICAgaWYgdGhlIGdpdmVuIHBhdGggaGFwcGVucyB0byBiZSBhIGRpcmVjdG9yeSwgdGhlIG1ldGFkYXRhIGlzIHJlYWQgZnJvbSB0aGUKKyAgICBmaWxlIGBgUEtHLUlORk9gYCB1bmRlciB0aGF0IGRpcmVjdG9yeS4iIiIKKworICAgIG5hbWUgPSAnJworICAgICIiIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24uIiIiCisKKyAgICB2ZXJzaW9uID0gJycKKyAgICAiIiJUaGUgdmVyc2lvbiBvZiB0aGUgZGlzdHJpYnV0aW9uLiIiIgorCisgICAgbWV0YWRhdGEgPSBOb25lCisgICAgIiIiQSA6Y2xhc3M6YHBhY2thZ2luZy5tZXRhZGF0YS5NZXRhZGF0YWAgaW5zdGFuY2UgbG9hZGVkIHdpdGgKKyAgICB0aGUgZGlzdHJpYnV0aW9uJ3MgYGBNRVRBREFUQWBgIGZpbGUuIiIiCisKKyAgICBfUkVRVUlSRU1FTlQgPSByZS5jb21waWxlKAorICAgICAgICByJyg/UDxuYW1lPlstQS1aYS16MC05Xy5dKylccyonCisgICAgICAgIHInKD9QPGZpcnN0Pig/Ojx8PD18IT18PT18Pj18PilbLUEtWmEtejAtOV8uXSspP1xzKicKKyAgICAgICAgcicoP1A8cmVzdD4oPzpccyosXHMqKD86PHw8PXwhPXw9PXw+PXw+KVstQS1aYS16MC05Xy5dKykqKVxzKicKKyAgICAgICAgcicoP1A8ZXh0cmFzPlxbLipcXSk/JykKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXRoKToKKyAgICAgICAgc2VsZi5wYXRoID0gcGF0aAorICAgICAgICBpZiBfY2FjaGVfZW5hYmxlZCBhbmQgcGF0aCBpbiBfY2FjaGVfcGF0aF9lZ2c6CisgICAgICAgICAgICBzZWxmLm1ldGFkYXRhID0gX2NhY2hlX3BhdGhfZWdnW3BhdGhdLm1ldGFkYXRhCisgICAgICAgICAgICBzZWxmLm5hbWUgPSBzZWxmLm1ldGFkYXRhWydOYW1lJ10KKyAgICAgICAgICAgIHNlbGYudmVyc2lvbiA9IHNlbGYubWV0YWRhdGFbJ1ZlcnNpb24nXQorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyByZXVzZWQgZnJvbSBEaXN0cmlidXRlJ3MgcGtnX3Jlc291cmNlcworICAgICAgICBkZWYgeWllbGRfbGluZXMoc3Rycyk6CisgICAgICAgICAgICAiIiJZaWVsZCBub24tZW1wdHkvbm9uLWNvbW1lbnQgbGluZXMgb2YgYSBgYGJhc2VzdHJpbmdgYAorICAgICAgICAgICAgb3Igc2VxdWVuY2UiIiIKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2Uoc3Rycywgc3RyKToKKyAgICAgICAgICAgICAgICBmb3IgcyBpbiBzdHJzLnNwbGl0bGluZXMoKToKKyAgICAgICAgICAgICAgICAgICAgcyA9IHMuc3RyaXAoKQorICAgICAgICAgICAgICAgICAgICAjIHNraXAgYmxhbmsgbGluZXMvY29tbWVudHMKKyAgICAgICAgICAgICAgICAgICAgaWYgcyBhbmQgbm90IHMuc3RhcnRzd2l0aCgnIycpOgorICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgcworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBmb3Igc3MgaW4gc3RyczoKKyAgICAgICAgICAgICAgICAgICAgZm9yIHMgaW4geWllbGRfbGluZXMoc3MpOgorICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgcworCisgICAgICAgIHJlcXVpcmVzID0gTm9uZQorCisgICAgICAgIGlmIHBhdGguZW5kc3dpdGgoJy5lZ2cnKToKKyAgICAgICAgICAgIGlmIG9zLnBhdGguaXNkaXIocGF0aCk6CisgICAgICAgICAgICAgICAgbWV0YV9wYXRoID0gb3MucGF0aC5qb2luKHBhdGgsICdFR0ctSU5GTycsICdQS0ctSU5GTycpCisgICAgICAgICAgICAgICAgc2VsZi5tZXRhZGF0YSA9IE1ldGFkYXRhKHBhdGg9bWV0YV9wYXRoKQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgcmVxX3BhdGggPSBvcy5wYXRoLmpvaW4ocGF0aCwgJ0VHRy1JTkZPJywgJ3JlcXVpcmVzLnR4dCcpCisgICAgICAgICAgICAgICAgICAgIHdpdGggb3BlbihyZXFfcGF0aCwgJ3InKSBhcyBmcDoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gZnAucmVhZCgpCisgICAgICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gTm9uZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIEZJWE1FIGhhbmRsZSB0aGUgY2FzZSB3aGVyZSB6aXBmaWxlIGlzIG5vdCBhdmFpbGFibGUKKyAgICAgICAgICAgICAgICB6aXBmID0gemlwaW1wb3J0LnppcGltcG9ydGVyKHBhdGgpCisgICAgICAgICAgICAgICAgZmlsZW9iaiA9IFN0cmluZ0lPKAorICAgICAgICAgICAgICAgICAgICB6aXBmLmdldF9kYXRhKCdFR0ctSU5GTy9QS0ctSU5GTycpLmRlY29kZSgndXRmOCcpKQorICAgICAgICAgICAgICAgIHNlbGYubWV0YWRhdGEgPSBNZXRhZGF0YShmaWxlb2JqPWZpbGVvYmopCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICByZXF1aXJlcyA9IHppcGYuZ2V0X2RhdGEoJ0VHRy1JTkZPL3JlcXVpcmVzLnR4dCcpCisgICAgICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gTm9uZQorICAgICAgICAgICAgc2VsZi5uYW1lID0gc2VsZi5tZXRhZGF0YVsnTmFtZSddCisgICAgICAgICAgICBzZWxmLnZlcnNpb24gPSBzZWxmLm1ldGFkYXRhWydWZXJzaW9uJ10KKworICAgICAgICBlbGlmIHBhdGguZW5kc3dpdGgoJy5lZ2ctaW5mbycpOgorICAgICAgICAgICAgaWYgb3MucGF0aC5pc2RpcihwYXRoKToKKyAgICAgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKHBhdGgsICdQS0ctSU5GTycpCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4ob3MucGF0aC5qb2luKHBhdGgsICdyZXF1aXJlcy50eHQnKSwgJ3InKSBhcyBmcDoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gZnAucmVhZCgpCisgICAgICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gTm9uZQorICAgICAgICAgICAgc2VsZi5tZXRhZGF0YSA9IE1ldGFkYXRhKHBhdGg9cGF0aCkKKyAgICAgICAgICAgIHNlbGYubmFtZSA9IHNlbGYubWV0YWRhdGFbJ05hbWUnXQorICAgICAgICAgICAgc2VsZi52ZXJzaW9uID0gc2VsZi5tZXRhZGF0YVsnVmVyc2lvbiddCisKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ3BhdGggbXVzdCBlbmQgd2l0aCAuZWdnLWluZm8gb3IgLmVnZywgZ290ICVyJyAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgpCisKKyAgICAgICAgaWYgcmVxdWlyZXMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBpZiBzZWxmLm1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10gPT0gJzEuMSc6CisgICAgICAgICAgICAgICAgIyB3ZSBjYW4ndCBoYXZlIDEuMSBtZXRhZGF0YSAqYW5kKiBTZXR1cHRvb2xzIHJlcXVpcmVzCisgICAgICAgICAgICAgICAgZm9yIGZpZWxkIGluICgnT2Jzb2xldGVzJywgJ1JlcXVpcmVzJywgJ1Byb3ZpZGVzJyk6CisgICAgICAgICAgICAgICAgICAgIGRlbCBzZWxmLm1ldGFkYXRhW2ZpZWxkXQorCisgICAgICAgIHJlcXMgPSBbXQorCisgICAgICAgIGlmIHJlcXVpcmVzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgZm9yIGxpbmUgaW4geWllbGRfbGluZXMocmVxdWlyZXMpOgorICAgICAgICAgICAgICAgIGlmIGxpbmUuc3RhcnRzd2l0aCgnWycpOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICdleHRlbnNpb25zIGluIHJlcXVpcmVzLnR4dCBhcmUgbm90IHN1cHBvcnRlZCAnCisgICAgICAgICAgICAgICAgICAgICAgICAnKHVzZWQgYnkgJXIgJXMpJywgc2VsZi5uYW1lLCBzZWxmLnZlcnNpb24pCisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgbWF0Y2ggPSBzZWxmLl9SRVFVSVJFTUVOVC5tYXRjaChsaW5lLnN0cmlwKCkpCisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBtYXRjaDoKKyAgICAgICAgICAgICAgICAgICAgICAgICMgdGhpcyBoYXBwZW5zIHdoZW4gd2UgZW5jb3VudGVyIGV4dHJhczsgc2luY2UgdGhleQorICAgICAgICAgICAgICAgICAgICAgICAgIyBhcmUgd3JpdHRlbiBhdCB0aGUgZW5kIG9mIHRoZSBmaWxlIHdlIGp1c3QgZXhpdAorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIG1hdGNoLmdyb3VwKCdleHRyYXMnKToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgPSAoJ2V4dHJhIHJlcXVpcmVtZW50cyBhcmUgbm90IHN1cHBvcnRlZCAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcodXNlZCBieSAlciAlcyknLCBzZWxmLm5hbWUsIHNlbGYudmVyc2lvbikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZyhtc2csIHNlbGYubmFtZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUgPSBtYXRjaC5ncm91cCgnbmFtZScpCisgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gTm9uZQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgbWF0Y2guZ3JvdXAoJ2ZpcnN0Jyk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IG1hdGNoLmdyb3VwKCdmaXJzdCcpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgbWF0Y2guZ3JvdXAoJ3Jlc3QnKToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiArPSBtYXRjaC5ncm91cCgncmVzdCcpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IHZlcnNpb24ucmVwbGFjZSgnICcsICcnKSAgIyB0cmltIHNwYWNlcworICAgICAgICAgICAgICAgICAgICAgICAgaWYgdmVyc2lvbiBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXMuYXBwZW5kKG5hbWUpCisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXMuYXBwZW5kKCclcyAoJXMpJyAlIChuYW1lLCB2ZXJzaW9uKSkKKworICAgICAgICAgICAgaWYgbGVuKHJlcXMpID4gMDoKKyAgICAgICAgICAgICAgICBzZWxmLm1ldGFkYXRhWydSZXF1aXJlcy1EaXN0J10gKz0gcmVxcworCisgICAgICAgIGlmIF9jYWNoZV9lbmFibGVkOgorICAgICAgICAgICAgX2NhY2hlX3BhdGhfZWdnW3NlbGYucGF0aF0gPSBzZWxmCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiAnPEVnZ0luZm9EaXN0cmlidXRpb24gJXIgJXMgYXQgJXI+JyAlICgKKyAgICAgICAgICAgIHNlbGYubmFtZSwgc2VsZi52ZXJzaW9uLCBzZWxmLnBhdGgpCisKKyAgICBkZWYgbGlzdF9pbnN0YWxsZWRfZmlsZXMoc2VsZiwgbG9jYWw9RmFsc2UpOgorCisgICAgICAgIGRlZiBfbWQ1KHBhdGgpOgorICAgICAgICAgICAgd2l0aCBvcGVuKHBhdGgsICdyYicpIGFzIGY6CisgICAgICAgICAgICAgICAgY29udGVudCA9IGYucmVhZCgpCisgICAgICAgICAgICByZXR1cm4gbWQ1KGNvbnRlbnQpLmhleGRpZ2VzdCgpCisKKyAgICAgICAgZGVmIF9zaXplKHBhdGgpOgorICAgICAgICAgICAgcmV0dXJuIG9zLnN0YXQocGF0aCkuc3Rfc2l6ZQorCisgICAgICAgIHBhdGggPSBzZWxmLnBhdGgKKyAgICAgICAgaWYgbG9jYWw6CisgICAgICAgICAgICBwYXRoID0gcGF0aC5yZXBsYWNlKCcvJywgb3Muc2VwKQorCisgICAgICAgICMgWFhYIFdoYXQgYWJvdXQgc2NyaXB0cyBhbmQgZGF0YSBmaWxlcyA/CisgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKHBhdGgpOgorICAgICAgICAgICAgcmV0dXJuIFsocGF0aCwgX21kNShwYXRoKSwgX3NpemUocGF0aCkpXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZmlsZXMgPSBbXQorICAgICAgICAgICAgZm9yIHJvb3QsIGRpciwgZmlsZXNfIGluIG9zLndhbGsocGF0aCk6CisgICAgICAgICAgICAgICAgZm9yIGl0ZW0gaW4gZmlsZXNfOgorICAgICAgICAgICAgICAgICAgICBpdGVtID0gb3MucGF0aC5qb2luKHJvb3QsIGl0ZW0pCisgICAgICAgICAgICAgICAgICAgIGZpbGVzLmFwcGVuZCgoaXRlbSwgX21kNShpdGVtKSwgX3NpemUoaXRlbSkpKQorICAgICAgICAgICAgcmV0dXJuIGZpbGVzCisKKyAgICAgICAgcmV0dXJuIFtdCisKKyAgICBkZWYgdXNlcyhzZWxmLCBwYXRoKToKKyAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICBkZWYgX19lcV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIChpc2luc3RhbmNlKG90aGVyLCBFZ2dJbmZvRGlzdHJpYnV0aW9uKSBhbmQKKyAgICAgICAgICAgICAgICBzZWxmLnBhdGggPT0gb3RoZXIucGF0aCkKKworICAgICMgU2VlIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvcmVmZXJlbmNlL2RhdGFtb2RlbCNvYmplY3QuX19oYXNoX18KKyAgICBfX2hhc2hfXyA9IG9iamVjdC5fX2hhc2hfXworCisKK2RlZiBkaXN0aW5mb19kaXJuYW1lKG5hbWUsIHZlcnNpb24pOgorICAgICIiIgorICAgIFRoZSAqbmFtZSogYW5kICp2ZXJzaW9uKiBwYXJhbWV0ZXJzIGFyZSBjb252ZXJ0ZWQgaW50byB0aGVpcgorICAgIGZpbGVuYW1lLWVzY2FwZWQgZm9ybSwgaS5lLiBhbnkgYGAnLSdgYCBjaGFyYWN0ZXJzIGFyZSByZXBsYWNlZAorICAgIHdpdGggYGAnXydgYCBvdGhlciB0aGFuIHRoZSBvbmUgaW4gYGAnZGlzdC1pbmZvJ2BgIGFuZCB0aGUgb25lCisgICAgc2VwYXJhdGluZyB0aGUgbmFtZSBmcm9tIHRoZSB2ZXJzaW9uIG51bWJlci4KKworICAgIDpwYXJhbWV0ZXIgbmFtZTogaXMgY29udmVydGVkIHRvIGEgc3RhbmRhcmQgZGlzdHJpYnV0aW9uIG5hbWUgYnkgcmVwbGFjaW5nCisgICAgICAgICAgICAgICAgICAgICBhbnkgcnVucyBvZiBub24tIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIHdpdGggYSBzaW5nbGUKKyAgICAgICAgICAgICAgICAgICAgIGBgJy0nYGAuCisgICAgOnR5cGUgbmFtZTogc3RyaW5nCisgICAgOnBhcmFtZXRlciB2ZXJzaW9uOiBpcyBjb252ZXJ0ZWQgdG8gYSBzdGFuZGFyZCB2ZXJzaW9uIHN0cmluZy4gU3BhY2VzCisgICAgICAgICAgICAgICAgICAgICAgICBiZWNvbWUgZG90cywgYW5kIGFsbCBvdGhlciBub24tYWxwaGFudW1lcmljIGNoYXJhY3RlcnMKKyAgICAgICAgICAgICAgICAgICAgICAgIChleGNlcHQgZG90cykgYmVjb21lIGRhc2hlcywgd2l0aCBydW5zIG9mIG11bHRpcGxlCisgICAgICAgICAgICAgICAgICAgICAgICBkYXNoZXMgY29uZGVuc2VkIHRvIGEgc2luZ2xlIGRhc2guCisgICAgOnR5cGUgdmVyc2lvbjogc3RyaW5nCisgICAgOnJldHVybnM6IGRpcmVjdG9yeSBuYW1lCisgICAgOnJ0eXBlOiBzdHJpbmciIiIKKyAgICBmaWxlX2V4dGVuc2lvbiA9ICcuZGlzdC1pbmZvJworICAgIG5hbWUgPSBuYW1lLnJlcGxhY2UoJy0nLCAnXycpCisgICAgbm9ybWFsaXplZF92ZXJzaW9uID0gc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb24odmVyc2lvbikKKyAgICAjIEJlY2F1c2UgdGhpcyBpcyBhIGxvb2t1cCBwcm9jZWR1cmUsIHNvbWV0aGluZyB3aWxsIGJlIHJldHVybmVkIGV2ZW4gaWYKKyAgICAjICAgaXQgaXMgYSB2ZXJzaW9uIHRoYXQgY2Fubm90IGJlIG5vcm1hbGl6ZWQKKyAgICBpZiBub3JtYWxpemVkX3ZlcnNpb24gaXMgTm9uZToKKyAgICAgICAgIyBVbmFibGUgdG8gYWNoaWV2ZSBub3JtYWxpdHk/CisgICAgICAgIG5vcm1hbGl6ZWRfdmVyc2lvbiA9IHZlcnNpb24KKyAgICByZXR1cm4gJy0nLmpvaW4oW25hbWUsIG5vcm1hbGl6ZWRfdmVyc2lvbl0pICsgZmlsZV9leHRlbnNpb24KKworCitkZWYgZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPUZhbHNlLCBwYXRocz1Ob25lKToKKyAgICAiIiIKKyAgICBQcm92aWRlcyBhbiBpdGVyYXRvciB0aGF0IGxvb2tzIGZvciBgYC5kaXN0LWluZm9gYCBkaXJlY3RvcmllcyBpbgorICAgIGBgc3lzLnBhdGhgYCBhbmQgcmV0dXJucyA6Y2xhc3M6YERpc3RyaWJ1dGlvbmAgaW5zdGFuY2VzIGZvciBlYWNoIG9uZSBvZgorICAgIHRoZW0uIElmIHRoZSBwYXJhbWV0ZXJzICp1c2VfZWdnX2luZm8qIGlzIGBgVHJ1ZWBgLCB0aGVuIHRoZSBgYC5lZ2ctaW5mb2BgCisgICAgZmlsZXMgYW5kIGRpcmVjdG9yZXMgYXJlIGl0ZXJhdGVkIGFzIHdlbGwuCisKKyAgICA6cnR5cGU6IGl0ZXJhdG9yIG9mIDpjbGFzczpgRGlzdHJpYnV0aW9uYCBhbmQgOmNsYXNzOmBFZ2dJbmZvRGlzdHJpYnV0aW9uYAorICAgICAgICAgICAgaW5zdGFuY2VzCisgICAgIiIiCisgICAgaWYgcGF0aHMgaXMgTm9uZToKKyAgICAgICAgcGF0aHMgPSBzeXMucGF0aAorCisgICAgaWYgbm90IF9jYWNoZV9lbmFibGVkOgorICAgICAgICBmb3IgZGlzdCBpbiBfeWllbGRfZGlzdHJpYnV0aW9ucyhUcnVlLCB1c2VfZWdnX2luZm8sIHBhdGhzKToKKyAgICAgICAgICAgIHlpZWxkIGRpc3QKKyAgICBlbHNlOgorICAgICAgICBfZ2VuZXJhdGVfY2FjaGUodXNlX2VnZ19pbmZvLCBwYXRocykKKworICAgICAgICBmb3IgZGlzdCBpbiBfY2FjaGVfcGF0aC52YWx1ZXMoKToKKyAgICAgICAgICAgIHlpZWxkIGRpc3QKKworICAgICAgICBpZiB1c2VfZWdnX2luZm86CisgICAgICAgICAgICBmb3IgZGlzdCBpbiBfY2FjaGVfcGF0aF9lZ2cudmFsdWVzKCk6CisgICAgICAgICAgICAgICAgeWllbGQgZGlzdAorCisKK2RlZiBnZXRfZGlzdHJpYnV0aW9uKG5hbWUsIHVzZV9lZ2dfaW5mbz1GYWxzZSwgcGF0aHM9Tm9uZSk6CisgICAgIiIiCisgICAgU2NhbnMgYWxsIGVsZW1lbnRzIGluIGBgc3lzLnBhdGhgYCBhbmQgbG9va3MgZm9yIGFsbCBkaXJlY3RvcmllcworICAgIGVuZGluZyB3aXRoIGBgLmRpc3QtaW5mb2BgLiBSZXR1cm5zIGEgOmNsYXNzOmBEaXN0cmlidXRpb25gCisgICAgY29ycmVzcG9uZGluZyB0byB0aGUgYGAuZGlzdC1pbmZvYGAgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgdGhlCisgICAgYGBNRVRBREFUQWBgIHRoYXQgbWF0Y2hlcyAqbmFtZSogZm9yIHRoZSAqbmFtZSogbWV0YWRhdGEgZmllbGQuCisgICAgSWYgbm8gZGlzdHJpYnV0aW9uIGV4aXN0cyB3aXRoIHRoZSBnaXZlbiAqbmFtZSogYW5kIHRoZSBwYXJhbWV0ZXIKKyAgICAqdXNlX2VnZ19pbmZvKiBpcyBzZXQgdG8gYGBUcnVlYGAsIHRoZW4gYWxsIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBlbmRpbmcKKyAgICB3aXRoIGBgLmVnZy1pbmZvYGAgYXJlIHNjYW5uZWQuIEEgOmNsYXNzOmBFZ2dJbmZvRGlzdHJpYnV0aW9uYCBpbnN0YW5jZSBpcworICAgIHJldHVybmVkIGlmIG9uZSBpcyBmb3VuZCB0aGF0IGhhcyBtZXRhZGF0YSB0aGF0IG1hdGNoZXMgKm5hbWUqIGZvciB0aGUKKyAgICAqbmFtZSogbWV0YWRhdGEgZmllbGQuCisKKyAgICBUaGlzIGZ1bmN0aW9uIG9ubHkgcmV0dXJucyB0aGUgZmlyc3QgcmVzdWx0IGZvdW5kLCBhcyBubyBtb3JlIHRoYW4gb25lCisgICAgdmFsdWUgaXMgZXhwZWN0ZWQuIElmIHRoZSBkaXJlY3RvcnkgaXMgbm90IGZvdW5kLCBgYE5vbmVgYCBpcyByZXR1cm5lZC4KKworICAgIDpydHlwZTogOmNsYXNzOmBEaXN0cmlidXRpb25gIG9yIDpjbGFzczpgRWdnSW5mb0Rpc3RyaWJ1dGlvbmAgb3IgTm9uZQorICAgICIiIgorICAgIGlmIHBhdGhzIGlzIE5vbmU6CisgICAgICAgIHBhdGhzID0gc3lzLnBhdGgKKworICAgIGlmIG5vdCBfY2FjaGVfZW5hYmxlZDoKKyAgICAgICAgZm9yIGRpc3QgaW4gX3lpZWxkX2Rpc3RyaWJ1dGlvbnMoVHJ1ZSwgdXNlX2VnZ19pbmZvLCBwYXRocyk6CisgICAgICAgICAgICBpZiBkaXN0Lm5hbWUgPT0gbmFtZToKKyAgICAgICAgICAgICAgICByZXR1cm4gZGlzdAorICAgIGVsc2U6CisgICAgICAgIF9nZW5lcmF0ZV9jYWNoZSh1c2VfZWdnX2luZm8sIHBhdGhzKQorCisgICAgICAgIGlmIG5hbWUgaW4gX2NhY2hlX25hbWU6CisgICAgICAgICAgICByZXR1cm4gX2NhY2hlX25hbWVbbmFtZV1bMF0KKyAgICAgICAgZWxpZiB1c2VfZWdnX2luZm8gYW5kIG5hbWUgaW4gX2NhY2hlX25hbWVfZWdnOgorICAgICAgICAgICAgcmV0dXJuIF9jYWNoZV9uYW1lX2VnZ1tuYW1lXVswXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKworCitkZWYgb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbihuYW1lLCB2ZXJzaW9uPU5vbmUsIHVzZV9lZ2dfaW5mbz1GYWxzZSk6CisgICAgIiIiCisgICAgSXRlcmF0ZXMgb3ZlciBhbGwgZGlzdHJpYnV0aW9ucyB0byBmaW5kIHdoaWNoIGRpc3RyaWJ1dGlvbnMgb2Jzb2xldGUKKyAgICAqbmFtZSouCisKKyAgICBJZiBhICp2ZXJzaW9uKiBpcyBwcm92aWRlZCwgaXQgd2lsbCBiZSB1c2VkIHRvIGZpbHRlciB0aGUgcmVzdWx0cy4KKyAgICBJZiB0aGUgYXJndW1lbnQgKnVzZV9lZ2dfaW5mbyogaXMgc2V0IHRvIGBgVHJ1ZWBgLCB0aGVuIGBgLmVnZy1pbmZvYGAKKyAgICBkaXN0cmlidXRpb25zIHdpbGwgYmUgY29uc2lkZXJlZCBhcyB3ZWxsLgorCisgICAgOnR5cGUgbmFtZTogc3RyaW5nCisgICAgOnR5cGUgdmVyc2lvbjogc3RyaW5nCisgICAgOnBhcmFtZXRlciBuYW1lOgorICAgICIiIgorICAgIGZvciBkaXN0IGluIGdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbyk6CisgICAgICAgIG9ic29sZXRlZCA9IChkaXN0Lm1ldGFkYXRhWydPYnNvbGV0ZXMtRGlzdCddICsKKyAgICAgICAgICAgICAgICAgICAgIGRpc3QubWV0YWRhdGFbJ09ic29sZXRlcyddKQorICAgICAgICBmb3Igb2JzIGluIG9ic29sZXRlZDoKKyAgICAgICAgICAgIG9fY29tcG9uZW50cyA9IG9icy5zcGxpdCgnICcsIDEpCisgICAgICAgICAgICBpZiBsZW4ob19jb21wb25lbnRzKSA9PSAxIG9yIHZlcnNpb24gaXMgTm9uZToKKyAgICAgICAgICAgICAgICBpZiBuYW1lID09IG9fY29tcG9uZW50c1swXToKKyAgICAgICAgICAgICAgICAgICAgeWllbGQgZGlzdAorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIHByZWRpY2F0ZSA9IFZlcnNpb25QcmVkaWNhdGUob2JzKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICdkaXN0cmlidXRpb24gJXIgaGFzIGlsbC1mb3JtZWQgb2Jzb2xldGVzIGZpZWxkOiAnCisgICAgICAgICAgICAgICAgICAgICAgICAnJXInICUgKGRpc3QubmFtZSwgb2JzKSkKKyAgICAgICAgICAgICAgICBpZiBuYW1lID09IG9fY29tcG9uZW50c1swXSBhbmQgcHJlZGljYXRlLm1hdGNoKHZlcnNpb24pOgorICAgICAgICAgICAgICAgICAgICB5aWVsZCBkaXN0CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisKKworZGVmIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbihuYW1lLCB2ZXJzaW9uPU5vbmUsIHVzZV9lZ2dfaW5mbz1GYWxzZSk6CisgICAgIiIiCisgICAgSXRlcmF0ZXMgb3ZlciBhbGwgZGlzdHJpYnV0aW9ucyB0byBmaW5kIHdoaWNoIGRpc3RyaWJ1dGlvbnMgcHJvdmlkZSAqbmFtZSouCisgICAgSWYgYSAqdmVyc2lvbiogaXMgcHJvdmlkZWQsIGl0IHdpbGwgYmUgdXNlZCB0byBmaWx0ZXIgdGhlIHJlc3VsdHMuIFNjYW5zCisgICAgYWxsIGVsZW1lbnRzIGluIGBgc3lzLnBhdGhgYCAgYW5kIGxvb2tzIGZvciBhbGwgZGlyZWN0b3JpZXMgZW5kaW5nIHdpdGgKKyAgICBgYC5kaXN0LWluZm9gYC4gUmV0dXJucyBhIDpjbGFzczpgRGlzdHJpYnV0aW9uYCAgY29ycmVzcG9uZGluZyB0byB0aGUKKyAgICBgYC5kaXN0LWluZm9gYCBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBhIGBgTUVUQURBVEFgYCB0aGF0IG1hdGNoZXMgKm5hbWUqCisgICAgZm9yIHRoZSBuYW1lIG1ldGFkYXRhLiBJZiB0aGUgYXJndW1lbnQgKnVzZV9lZ2dfaW5mbyogaXMgc2V0IHRvIGBgVHJ1ZWBgLAorICAgIHRoZW4gYWxsIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBlbmRpbmcgd2l0aCBgYC5lZ2ctaW5mb2BgIGFyZSBjb25zaWRlcmVkCisgICAgYXMgd2VsbCBhbmQgcmV0dXJucyBhbiA6Y2xhc3M6YEVnZ0luZm9EaXN0cmlidXRpb25gIGluc3RhbmNlLgorCisgICAgVGhpcyBmdW5jdGlvbiBvbmx5IHJldHVybnMgdGhlIGZpcnN0IHJlc3VsdCBmb3VuZCwgc2luY2Ugbm8gbW9yZSB0aGFuCisgICAgb25lIHZhbHVlcyBhcmUgZXhwZWN0ZWQuIElmIHRoZSBkaXJlY3RvcnkgaXMgbm90IGZvdW5kLCByZXR1cm5zIGBgTm9uZWBgLgorCisgICAgOnBhcmFtZXRlciB2ZXJzaW9uOiBhIHZlcnNpb24gc3BlY2lmaWVyIHRoYXQgaW5kaWNhdGVzIHRoZSB2ZXJzaW9uCisgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZCwgY29uZm9ybWluZyB0byB0aGUgZm9ybWF0IGluIGBgUEVQLTM0NWBgCisKKyAgICA6dHlwZSBuYW1lOiBzdHJpbmcKKyAgICA6dHlwZSB2ZXJzaW9uOiBzdHJpbmcKKyAgICAiIiIKKyAgICBwcmVkaWNhdGUgPSBOb25lCisgICAgaWYgbm90IHZlcnNpb24gaXMgTm9uZToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcHJlZGljYXRlID0gVmVyc2lvblByZWRpY2F0ZShuYW1lICsgJyAoJyArIHZlcnNpb24gKyAnKScpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRXJyb3IoJ2ludmFsaWQgbmFtZSBvciB2ZXJzaW9uOiAlciwgJXInICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuYW1lLCB2ZXJzaW9uKSkKKworICAgIGZvciBkaXN0IGluIGdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbyk6CisgICAgICAgIHByb3ZpZGVkID0gZGlzdC5tZXRhZGF0YVsnUHJvdmlkZXMtRGlzdCddICsgZGlzdC5tZXRhZGF0YVsnUHJvdmlkZXMnXQorCisgICAgICAgIGZvciBwIGluIHByb3ZpZGVkOgorICAgICAgICAgICAgcF9jb21wb25lbnRzID0gcC5yc3BsaXQoJyAnLCAxKQorICAgICAgICAgICAgaWYgbGVuKHBfY29tcG9uZW50cykgPT0gMSBvciBwcmVkaWNhdGUgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBpZiBuYW1lID09IHBfY29tcG9uZW50c1swXToKKyAgICAgICAgICAgICAgICAgICAgeWllbGQgZGlzdAorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBwX25hbWUsIHBfdmVyID0gcF9jb21wb25lbnRzCisgICAgICAgICAgICAgICAgaWYgbGVuKHBfdmVyKSA8IDIgb3IgcF92ZXJbMF0gIT0gJygnIG9yIHBfdmVyWy0xXSAhPSAnKSc6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0Vycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgJ2Rpc3RyaWJ1dGlvbiAlciBoYXMgaW52YWxpZCBQcm92aWRlcyBmaWVsZDogJXInICUKKyAgICAgICAgICAgICAgICAgICAgICAgIChkaXN0Lm5hbWUsIHApKQorICAgICAgICAgICAgICAgIHBfdmVyID0gcF92ZXJbMTotMV0gICMgdHJpbSBvZmYgdGhlIHBhcmVudGhlc2lzCisgICAgICAgICAgICAgICAgaWYgcF9uYW1lID09IG5hbWUgYW5kIHByZWRpY2F0ZS5tYXRjaChwX3Zlcik6CisgICAgICAgICAgICAgICAgICAgIHlpZWxkIGRpc3QKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKworCitkZWYgZ2V0X2ZpbGVfdXNlcnMocGF0aCk6CisgICAgIiIiCisgICAgSXRlcmF0ZXMgb3ZlciBhbGwgZGlzdHJpYnV0aW9ucyB0byBmaW5kIG91dCB3aGljaCBkaXN0cmlidXRpb25zIHVzZQorICAgICpwYXRoKi4KKworICAgIDpwYXJhbWV0ZXIgcGF0aDogY2FuIGJlIGEgbG9jYWwgYWJzb2x1dGUgcGF0aCBvciBhIHJlbGF0aXZlCisgICAgICAgICAgICAgICAgICAgICBgYCcvJ2BgLXNlcGFyYXRlZCBwYXRoLgorICAgIDp0eXBlIHBhdGg6IHN0cmluZworICAgIDpydHlwZTogaXRlcmF0b3Igb2YgOmNsYXNzOmBEaXN0cmlidXRpb25gIGluc3RhbmNlcworICAgICIiIgorICAgIGZvciBkaXN0IGluIGdldF9kaXN0cmlidXRpb25zKCk6CisgICAgICAgIGlmIGRpc3QudXNlcyhwYXRoKToKKyAgICAgICAgICAgIHlpZWxkIGRpc3QKKworCitkZWYgZ2V0X2ZpbGVfcGF0aChkaXN0cmlidXRpb25fbmFtZSwgcmVsYXRpdmVfcGF0aCk6CisgICAgIiIiUmV0dXJuIHRoZSBwYXRoIHRvIGEgcmVzb3VyY2UgZmlsZS4iIiIKKyAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihkaXN0cmlidXRpb25fbmFtZSkKKyAgICBpZiBkaXN0IGlzIG5vdCBOb25lOgorICAgICAgICByZXR1cm4gZGlzdC5nZXRfcmVzb3VyY2VfcGF0aChyZWxhdGl2ZV9wYXRoKQorICAgIHJhaXNlIExvb2t1cEVycm9yKCdubyBkaXN0cmlidXRpb24gbmFtZWQgJXIgZm91bmQnICUgZGlzdHJpYnV0aW9uX25hbWUpCisKKworZGVmIGdldF9maWxlKGRpc3RyaWJ1dGlvbl9uYW1lLCByZWxhdGl2ZV9wYXRoLCAqYXJncywgKiprd2FyZ3MpOgorICAgICIiIk9wZW4gYW5kIHJldHVybiBhIHJlc291cmNlIGZpbGUuIiIiCisgICAgcmV0dXJuIG9wZW4oZ2V0X2ZpbGVfcGF0aChkaXN0cmlidXRpb25fbmFtZSwgcmVsYXRpdmVfcGF0aCksCisgICAgICAgICAgICAgICAgKmFyZ3MsICoqa3dhcmdzKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9kZXBncmFwaC5weSBiL0xpYi9wYWNrYWdpbmcvZGVwZ3JhcGgucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDYzM2I2MwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvZGVwZ3JhcGgucHkKQEAgLTAsMCArMSwyNzAgQEAKKyIiIkNsYXNzIGFuZCBmdW5jdGlvbnMgZGVhbGluZyB3aXRoIGRlcGVuZGVuY2llcyBiZXR3ZWVuIGRpc3RyaWJ1dGlvbnMuCisKK1RoaXMgbW9kdWxlIHByb3ZpZGVzIGEgRGVwZW5kZW5jeUdyYXBoIGNsYXNzIHRvIHJlcHJlc2VudCB0aGUKK2RlcGVuZGVuY2llcyBiZXR3ZWVuIGRpc3RyaWJ1dGlvbnMuICBBdXhpbGlhcnkgZnVuY3Rpb25zIGNhbiBnZW5lcmF0ZSBhCitncmFwaCwgZmluZCByZXZlcnNlIGRlcGVuZGVuY2llcywgYW5kIHByaW50IGEgZ3JhcGggaW4gRE9UIGZvcm1hdC4KKyIiIgorCitpbXBvcnQgc3lzCisKK2Zyb20gaW8gaW1wb3J0IFN0cmluZ0lPCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0Vycm9yCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBWZXJzaW9uUHJlZGljYXRlLCBJcnJhdGlvbmFsVmVyc2lvbkVycm9yCisKK19fYWxsX18gPSBbJ0RlcGVuZGVuY3lHcmFwaCcsICdnZW5lcmF0ZV9ncmFwaCcsICdkZXBlbmRlbnRfZGlzdHMnLAorICAgICAgICAgICAnZ3JhcGhfdG9fZG90J10KKworCitjbGFzcyBEZXBlbmRlbmN5R3JhcGg6CisgICAgIiIiCisgICAgUmVwcmVzZW50cyBhIGRlcGVuZGVuY3kgZ3JhcGggYmV0d2VlbiBkaXN0cmlidXRpb25zLgorCisgICAgVGhlIGRlcGVuZGVuY3kgcmVsYXRpb25zaGlwcyBhcmUgc3RvcmVkIGluIGFuIGBgYWRqYWNlbmN5X2xpc3RgYCB0aGF0IG1hcHMKKyAgICBkaXN0cmlidXRpb25zIHRvIGEgbGlzdCBvZiBgYChvdGhlciwgbGFiZWwpYGAgdHVwbGVzIHdoZXJlICBgYG90aGVyYGAKKyAgICBpcyBhIGRpc3RyaWJ1dGlvbiBhbmQgdGhlIGVkZ2UgaXMgbGFiZWxlZCB3aXRoIGBgbGFiZWxgYCAoaS5lLiB0aGUgdmVyc2lvbgorICAgIHNwZWNpZmllciwgaWYgc3VjaCB3YXMgcHJvdmlkZWQpLiBBbHNvLCBmb3IgbW9yZSBlZmZpY2llbnQgdHJhdmVyc2FsLCBmb3IKKyAgICBldmVyeSBkaXN0cmlidXRpb24gYGB4YGAsIGEgbGlzdCBvZiBwcmVkZWNlc3NvcnMgaXMga2VwdCBpbgorICAgIGBgcmV2ZXJzZV9saXN0W3hdYGAuIEFuIGVkZ2UgZnJvbSBkaXN0cmlidXRpb24gYGBhYGAgdG8KKyAgICBkaXN0cmlidXRpb24gYGBiYGAgbWVhbnMgdGhhdCBgYGFgYCBkZXBlbmRzIG9uIGBgYmBgLiBJZiBhbnkgbWlzc2luZworICAgIGRlcGVuZGVuY2llcyBhcmUgZm91bmQsIHRoZXkgYXJlIHN0b3JlZCBpbiBgYG1pc3NpbmdgYCwgd2hpY2ggaXMgYQorICAgIGRpY3Rpb25hcnkgdGhhdCBtYXBzIGRpc3RyaWJ1dGlvbnMgdG8gYSBsaXN0IG9mIHJlcXVpcmVtZW50cyB0aGF0IHdlcmUgbm90CisgICAgcHJvdmlkZWQgYnkgYW55IG90aGVyIGRpc3RyaWJ1dGlvbnMuCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgIHNlbGYuYWRqYWNlbmN5X2xpc3QgPSB7fQorICAgICAgICBzZWxmLnJldmVyc2VfbGlzdCA9IHt9CisgICAgICAgIHNlbGYubWlzc2luZyA9IHt9CisKKyAgICBkZWYgYWRkX2Rpc3RyaWJ1dGlvbihzZWxmLCBkaXN0cmlidXRpb24pOgorICAgICAgICAiIiJBZGQgdGhlICpkaXN0cmlidXRpb24qIHRvIHRoZSBncmFwaC4KKworICAgICAgICA6dHlwZSBkaXN0cmlidXRpb246IDpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkRpc3RyaWJ1dGlvbmAgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Y2xhc3M6YHBhY2thZ2luZy5kYXRhYmFzZS5FZ2dJbmZvRGlzdHJpYnV0aW9uYAorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5hZGphY2VuY3lfbGlzdFtkaXN0cmlidXRpb25dID0gW10KKyAgICAgICAgc2VsZi5yZXZlcnNlX2xpc3RbZGlzdHJpYnV0aW9uXSA9IFtdCisgICAgICAgIHNlbGYubWlzc2luZ1tkaXN0cmlidXRpb25dID0gW10KKworICAgIGRlZiBhZGRfZWRnZShzZWxmLCB4LCB5LCBsYWJlbD1Ob25lKToKKyAgICAgICAgIiIiQWRkIGFuIGVkZ2UgZnJvbSBkaXN0cmlidXRpb24gKngqIHRvIGRpc3RyaWJ1dGlvbiAqeSogd2l0aCB0aGUgZ2l2ZW4KKyAgICAgICAgKmxhYmVsKi4KKworICAgICAgICA6dHlwZSB4OiA6Y2xhc3M6YHBhY2thZ2luZy5kYXRhYmFzZS5EaXN0cmlidXRpb25gIG9yCisgICAgICAgICAgICAgICAgIDpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkVnZ0luZm9EaXN0cmlidXRpb25gCisgICAgICAgIDp0eXBlIHk6IDpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkRpc3RyaWJ1dGlvbmAgb3IKKyAgICAgICAgICAgICAgICAgOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRWdnSW5mb0Rpc3RyaWJ1dGlvbmAKKyAgICAgICAgOnR5cGUgbGFiZWw6IGBgc3RyYGAgb3IgYGBOb25lYGAKKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuYWRqYWNlbmN5X2xpc3RbeF0uYXBwZW5kKCh5LCBsYWJlbCkpCisgICAgICAgICMgbXVsdGlwbGUgZWRnZXMgYXJlIGFsbG93ZWQsIHNvIGJlIGNhcmVmdWwKKyAgICAgICAgaWYgeCBub3QgaW4gc2VsZi5yZXZlcnNlX2xpc3RbeV06CisgICAgICAgICAgICBzZWxmLnJldmVyc2VfbGlzdFt5XS5hcHBlbmQoeCkKKworICAgIGRlZiBhZGRfbWlzc2luZyhzZWxmLCBkaXN0cmlidXRpb24sIHJlcXVpcmVtZW50KToKKyAgICAgICAgIiIiCisgICAgICAgIEFkZCBhIG1pc3NpbmcgKnJlcXVpcmVtZW50KiBmb3IgdGhlIGdpdmVuICpkaXN0cmlidXRpb24qLgorCisgICAgICAgIDp0eXBlIGRpc3RyaWJ1dGlvbjogOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRGlzdHJpYnV0aW9uYCBvcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkVnZ0luZm9EaXN0cmlidXRpb25gCisgICAgICAgIDp0eXBlIHJlcXVpcmVtZW50OiBgYHN0cmBgCisgICAgICAgICIiIgorICAgICAgICBzZWxmLm1pc3NpbmdbZGlzdHJpYnV0aW9uXS5hcHBlbmQocmVxdWlyZW1lbnQpCisKKyAgICBkZWYgX3JlcHJfZGlzdChzZWxmLCBkaXN0KToKKyAgICAgICAgcmV0dXJuICclciAlcycgJSAoZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pCisKKyAgICBkZWYgcmVwcl9ub2RlKHNlbGYsIGRpc3QsIGxldmVsPTEpOgorICAgICAgICAiIiJQcmludHMgb25seSBhIHN1YmdyYXBoIiIiCisgICAgICAgIG91dHB1dCA9IFtdCisgICAgICAgIG91dHB1dC5hcHBlbmQoc2VsZi5fcmVwcl9kaXN0KGRpc3QpKQorICAgICAgICBmb3Igb3RoZXIsIGxhYmVsIGluIHNlbGYuYWRqYWNlbmN5X2xpc3RbZGlzdF06CisgICAgICAgICAgICBkaXN0ID0gc2VsZi5fcmVwcl9kaXN0KG90aGVyKQorICAgICAgICAgICAgaWYgbGFiZWwgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZGlzdCA9ICclcyBbJXNdJyAlIChkaXN0LCBsYWJlbCkKKyAgICAgICAgICAgIG91dHB1dC5hcHBlbmQoJyAgICAnICogbGV2ZWwgKyBzdHIoZGlzdCkpCisgICAgICAgICAgICBzdWJvdXRwdXQgPSBzZWxmLnJlcHJfbm9kZShvdGhlciwgbGV2ZWwgKyAxKQorICAgICAgICAgICAgc3VicyA9IHN1Ym91dHB1dC5zcGxpdCgnXG4nKQorICAgICAgICAgICAgb3V0cHV0LmV4dGVuZChzdWJzWzE6XSkKKyAgICAgICAgcmV0dXJuICdcbicuam9pbihvdXRwdXQpCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgICIiIlJlcHJlc2VudGF0aW9uIG9mIHRoZSBncmFwaCIiIgorICAgICAgICBvdXRwdXQgPSBbXQorICAgICAgICBmb3IgZGlzdCwgYWRqcyBpbiBzZWxmLmFkamFjZW5jeV9saXN0Lml0ZW1zKCk6CisgICAgICAgICAgICBvdXRwdXQuYXBwZW5kKHNlbGYucmVwcl9ub2RlKGRpc3QpKQorICAgICAgICByZXR1cm4gJ1xuJy5qb2luKG91dHB1dCkKKworCitkZWYgZ3JhcGhfdG9fZG90KGdyYXBoLCBmLCBza2lwX2Rpc2Nvbm5lY3RlZD1UcnVlKToKKyAgICAiIiJXcml0ZXMgYSBET1Qgb3V0cHV0IGZvciB0aGUgZ3JhcGggdG8gdGhlIHByb3ZpZGVkIGZpbGUgKmYqLgorCisgICAgSWYgKnNraXBfZGlzY29ubmVjdGVkKiBpcyBzZXQgdG8gYGBUcnVlYGAsIHRoZW4gYWxsIGRpc3RyaWJ1dGlvbnMKKyAgICB0aGF0IGFyZSBub3QgZGVwZW5kZW50IG9uIGFueSBvdGhlciBkaXN0cmlidXRpb24gYXJlIHNraXBwZWQuCisKKyAgICA6dHlwZSBmOiBoYXMgdG8gc3VwcG9ydCBgYGZpbGVgYC1saWtlIG9wZXJhdGlvbnMKKyAgICA6dHlwZSBza2lwX2Rpc2Nvbm5lY3RlZDogYGBib29sYGAKKyAgICAiIiIKKyAgICBkaXNjb25uZWN0ZWQgPSBbXQorCisgICAgZi53cml0ZSgiZGlncmFwaCBkZXBlbmRlbmNpZXMge1xuIikKKyAgICBmb3IgZGlzdCwgYWRqcyBpbiBncmFwaC5hZGphY2VuY3lfbGlzdC5pdGVtcygpOgorICAgICAgICBpZiBsZW4oYWRqcykgPT0gMCBhbmQgbm90IHNraXBfZGlzY29ubmVjdGVkOgorICAgICAgICAgICAgZGlzY29ubmVjdGVkLmFwcGVuZChkaXN0KQorICAgICAgICBmb3Igb3RoZXIsIGxhYmVsIGluIGFkanM6CisgICAgICAgICAgICBpZiBub3QgbGFiZWwgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBmLndyaXRlKCciJXMiIC0+ICIlcyIgW2xhYmVsPSIlcyJdXG4nICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRpc3QubmFtZSwgb3RoZXIubmFtZSwgbGFiZWwpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBmLndyaXRlKCciJXMiIC0+ICIlcyJcbicgJSAoZGlzdC5uYW1lLCBvdGhlci5uYW1lKSkKKyAgICBpZiBub3Qgc2tpcF9kaXNjb25uZWN0ZWQgYW5kIGxlbihkaXNjb25uZWN0ZWQpID4gMDoKKyAgICAgICAgZi53cml0ZSgnc3ViZ3JhcGggZGlzY29ubmVjdGVkIHtcbicpCisgICAgICAgIGYud3JpdGUoJ2xhYmVsID0gIkRpc2Nvbm5lY3RlZCJcbicpCisgICAgICAgIGYud3JpdGUoJ2JnY29sb3IgPSByZWRcbicpCisKKyAgICAgICAgZm9yIGRpc3QgaW4gZGlzY29ubmVjdGVkOgorICAgICAgICAgICAgZi53cml0ZSgnIiVzIicgJSBkaXN0Lm5hbWUpCisgICAgICAgICAgICBmLndyaXRlKCdcbicpCisgICAgICAgIGYud3JpdGUoJ31cbicpCisgICAgZi53cml0ZSgnfVxuJykKKworCitkZWYgZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpOgorICAgICIiIkdlbmVyYXRlcyBhIGRlcGVuZGVuY3kgZ3JhcGggZnJvbSB0aGUgZ2l2ZW4gZGlzdHJpYnV0aW9ucy4KKworICAgIDpwYXJhbWV0ZXIgZGlzdHM6IGEgbGlzdCBvZiBkaXN0cmlidXRpb25zCisgICAgOnR5cGUgZGlzdHM6IGxpc3Qgb2YgOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRGlzdHJpYnV0aW9uYCBhbmQKKyAgICAgICAgICAgICAgICAgOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRWdnSW5mb0Rpc3RyaWJ1dGlvbmAgaW5zdGFuY2VzCisgICAgOnJ0eXBlOiBhIDpjbGFzczpgRGVwZW5kZW5jeUdyYXBoYCBpbnN0YW5jZQorICAgICIiIgorICAgIGdyYXBoID0gRGVwZW5kZW5jeUdyYXBoKCkKKyAgICBwcm92aWRlZCA9IHt9ICAjIG1hcHMgbmFtZXMgdG8gbGlzdHMgb2YgKHZlcnNpb24sIGRpc3QpIHR1cGxlcworCisgICAgIyBmaXJzdCwgYnVpbGQgdGhlIGdyYXBoIGFuZCBmaW5kIG91dCB0aGUgcHJvdmlkZXMKKyAgICBmb3IgZGlzdCBpbiBkaXN0czoKKyAgICAgICAgZ3JhcGguYWRkX2Rpc3RyaWJ1dGlvbihkaXN0KQorICAgICAgICBwcm92aWRlcyA9IChkaXN0Lm1ldGFkYXRhWydQcm92aWRlcy1EaXN0J10gKworICAgICAgICAgICAgICAgICAgICBkaXN0Lm1ldGFkYXRhWydQcm92aWRlcyddICsKKyAgICAgICAgICAgICAgICAgICAgWyclcyAoJXMpJyAlIChkaXN0Lm5hbWUsIGRpc3QudmVyc2lvbildKQorCisgICAgICAgIGZvciBwIGluIHByb3ZpZGVzOgorICAgICAgICAgICAgY29tcHMgPSBwLnN0cmlwKCkucnNwbGl0KCIgIiwgMSkKKyAgICAgICAgICAgIG5hbWUgPSBjb21wc1swXQorICAgICAgICAgICAgdmVyc2lvbiA9IE5vbmUKKyAgICAgICAgICAgIGlmIGxlbihjb21wcykgPT0gMjoKKyAgICAgICAgICAgICAgICB2ZXJzaW9uID0gY29tcHNbMV0KKyAgICAgICAgICAgICAgICBpZiBsZW4odmVyc2lvbikgPCAzIG9yIHZlcnNpb25bMF0gIT0gJygnIG9yIHZlcnNpb25bLTFdICE9ICcpJzoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRXJyb3IoJ2Rpc3RyaWJ1dGlvbiAlciBoYXMgaWxsLWZvcm1lZCcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Byb3ZpZGVzIGZpZWxkOiAlcicgJSAoZGlzdC5uYW1lLCBwKSkKKyAgICAgICAgICAgICAgICB2ZXJzaW9uID0gdmVyc2lvblsxOi0xXSAgIyB0cmltIG9mZiBwYXJlbnRoZXNpcworICAgICAgICAgICAgaWYgbmFtZSBub3QgaW4gcHJvdmlkZWQ6CisgICAgICAgICAgICAgICAgcHJvdmlkZWRbbmFtZV0gPSBbXQorICAgICAgICAgICAgcHJvdmlkZWRbbmFtZV0uYXBwZW5kKCh2ZXJzaW9uLCBkaXN0KSkKKworICAgICMgbm93IG1ha2UgdGhlIGVkZ2VzCisgICAgZm9yIGRpc3QgaW4gZGlzdHM6CisgICAgICAgIHJlcXVpcmVzID0gZGlzdC5tZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddICsgZGlzdC5tZXRhZGF0YVsnUmVxdWlyZXMnXQorICAgICAgICBmb3IgcmVxIGluIHJlcXVpcmVzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHByZWRpY2F0ZSA9IFZlcnNpb25QcmVkaWNhdGUocmVxKQorICAgICAgICAgICAgZXhjZXB0IElycmF0aW9uYWxWZXJzaW9uRXJyb3I6CisgICAgICAgICAgICAgICAgIyBYWFggY29tcGF0LW1vZGUgaWYgY2Fubm90IHJlYWQgdGhlIHZlcnNpb24KKyAgICAgICAgICAgICAgICBuYW1lID0gcmVxLnNwbGl0KClbMF0KKyAgICAgICAgICAgICAgICBwcmVkaWNhdGUgPSBWZXJzaW9uUHJlZGljYXRlKG5hbWUpCisKKyAgICAgICAgICAgIG5hbWUgPSBwcmVkaWNhdGUubmFtZQorCisgICAgICAgICAgICBpZiBuYW1lIG5vdCBpbiBwcm92aWRlZDoKKyAgICAgICAgICAgICAgICBncmFwaC5hZGRfbWlzc2luZyhkaXN0LCByZXEpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG1hdGNoZWQgPSBGYWxzZQorICAgICAgICAgICAgICAgIGZvciB2ZXJzaW9uLCBwcm92aWRlciBpbiBwcm92aWRlZFtuYW1lXToKKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgbWF0Y2ggPSBwcmVkaWNhdGUubWF0Y2godmVyc2lvbikKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IElycmF0aW9uYWxWZXJzaW9uRXJyb3I6CisgICAgICAgICAgICAgICAgICAgICAgICAjIFhYWCBzbWFsbCBjb21wYXQtbW9kZQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgdmVyc2lvbi5zcGxpdCgnICcpID09IDE6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0Y2ggPSBUcnVlCisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdGNoID0gRmFsc2UKKworICAgICAgICAgICAgICAgICAgICBpZiBtYXRjaDoKKyAgICAgICAgICAgICAgICAgICAgICAgIGdyYXBoLmFkZF9lZGdlKGRpc3QsIHByb3ZpZGVyLCByZXEpCisgICAgICAgICAgICAgICAgICAgICAgICBtYXRjaGVkID0gVHJ1ZQorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICBpZiBub3QgbWF0Y2hlZDoKKyAgICAgICAgICAgICAgICAgICAgZ3JhcGguYWRkX21pc3NpbmcoZGlzdCwgcmVxKQorICAgIHJldHVybiBncmFwaAorCisKK2RlZiBkZXBlbmRlbnRfZGlzdHMoZGlzdHMsIGRpc3QpOgorICAgICIiIlJlY3Vyc2l2ZWx5IGdlbmVyYXRlIGEgbGlzdCBvZiBkaXN0cmlidXRpb25zIGZyb20gKmRpc3RzKiB0aGF0IGFyZQorICAgIGRlcGVuZGVudCBvbiAqZGlzdCouCisKKyAgICA6cGFyYW0gZGlzdHM6IGEgbGlzdCBvZiBkaXN0cmlidXRpb25zCisgICAgOnBhcmFtIGRpc3Q6IGEgZGlzdHJpYnV0aW9uLCBtZW1iZXIgb2YgKmRpc3RzKiBmb3Igd2hpY2ggd2UgYXJlIGludGVyZXN0ZWQKKyAgICAiIiIKKyAgICBpZiBkaXN0IG5vdCBpbiBkaXN0czoKKyAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignZ2l2ZW4gZGlzdHJpYnV0aW9uICVyIGlzIG5vdCBhIG1lbWJlciBvZiB0aGUgbGlzdCcgJQorICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3QubmFtZSkKKyAgICBncmFwaCA9IGdlbmVyYXRlX2dyYXBoKGRpc3RzKQorCisgICAgZGVwID0gW2Rpc3RdICAjIGRlcGVuZGVudCBkaXN0cmlidXRpb25zCisgICAgZnJpbmdlID0gZ3JhcGgucmV2ZXJzZV9saXN0W2Rpc3RdICAjIGxpc3Qgb2Ygbm9kZXMgd2Ugc2hvdWxkIGluc3BlY3QKKworICAgIHdoaWxlIG5vdCBsZW4oZnJpbmdlKSA9PSAwOgorICAgICAgICBub2RlID0gZnJpbmdlLnBvcCgpCisgICAgICAgIGRlcC5hcHBlbmQobm9kZSkKKyAgICAgICAgZm9yIHByZXYgaW4gZ3JhcGgucmV2ZXJzZV9saXN0W25vZGVdOgorICAgICAgICAgICAgaWYgcHJldiBub3QgaW4gZGVwOgorICAgICAgICAgICAgICAgIGZyaW5nZS5hcHBlbmQocHJldikKKworICAgIGRlcC5wb3AoMCkgICMgcmVtb3ZlIGRpc3QgZnJvbSBkZXAsIHdhcyB0aGVyZSB0byBwcmV2ZW50IGluZmluaXRlIGxvb3BzCisgICAgcmV0dXJuIGRlcAorCisKK2RlZiBtYWluKCk6CisgICAgIyBYWFggbW92ZSB0byBydW4uX2dyYXBoCisgICAgZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0IGdldF9kaXN0cmlidXRpb25zCisgICAgdGVtcG91dCA9IFN0cmluZ0lPKCkKKyAgICB0cnk6CisgICAgICAgIG9sZCA9IHN5cy5zdGRlcnIKKyAgICAgICAgc3lzLnN0ZGVyciA9IHRlbXBvdXQKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZGlzdHMgPSBsaXN0KGdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbz1UcnVlKSkKKyAgICAgICAgICAgIGdyYXBoID0gZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzeXMuc3RkZXJyID0gb2xkCisgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICB0ZW1wb3V0LnNlZWsoMCkKKyAgICAgICAgdGVtcG91dCA9IHRlbXBvdXQucmVhZCgpCisgICAgICAgIHByaW50KCdDb3VsZCBub3QgZ2VuZXJhdGUgdGhlIGdyYXBoJykKKyAgICAgICAgcHJpbnQodGVtcG91dCkKKyAgICAgICAgcHJpbnQoZSkKKyAgICAgICAgc3lzLmV4aXQoMSkKKworICAgIGZvciBkaXN0LCByZXFzIGluIGdyYXBoLm1pc3NpbmcuaXRlbXMoKToKKyAgICAgICAgaWYgbGVuKHJlcXMpID4gMDoKKyAgICAgICAgICAgIHByaW50KCJXYXJuaW5nOiBNaXNzaW5nIGRlcGVuZGVuY2llcyBmb3IgJXI6IiAlIGRpc3QubmFtZSwKKyAgICAgICAgICAgICAgICAgICIsICIuam9pbihyZXFzKSkKKyAgICAjIFhYWCByZXBsYWNlIHdpdGggYXJncGFyc2UKKyAgICBpZiBsZW4oc3lzLmFyZ3YpID09IDE6CisgICAgICAgIHByaW50KCdEZXBlbmRlbmN5IGdyYXBoOicpCisgICAgICAgIHByaW50KCcgICAnLCByZXByKGdyYXBoKS5yZXBsYWNlKCdcbicsICdcbiAgICAnKSkKKyAgICAgICAgc3lzLmV4aXQoMCkKKyAgICBlbGlmIGxlbihzeXMuYXJndikgPiAxIGFuZCBzeXMuYXJndlsxXSBpbiAoJy1kJywgJy0tZG90Jyk6CisgICAgICAgIGlmIGxlbihzeXMuYXJndikgPiAyOgorICAgICAgICAgICAgZmlsZW5hbWUgPSBzeXMuYXJndlsyXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZmlsZW5hbWUgPSAnZGVwZ3JhcGguZG90JworCisgICAgICAgIHdpdGggb3BlbihmaWxlbmFtZSwgJ3cnKSBhcyBmOgorICAgICAgICAgICAgZ3JhcGhfdG9fZG90KGdyYXBoLCBmLCBUcnVlKQorICAgICAgICB0ZW1wb3V0LnNlZWsoMCkKKyAgICAgICAgdGVtcG91dCA9IHRlbXBvdXQucmVhZCgpCisgICAgICAgIHByaW50KHRlbXBvdXQpCisgICAgICAgIHByaW50KCdEb3QgZmlsZSB3cml0dGVuIGF0ICVyJyAlIGZpbGVuYW1lKQorICAgICAgICBzeXMuZXhpdCgwKQorICAgIGVsc2U6CisgICAgICAgIHByaW50KCdTdXBwb3J0ZWQgb3B0aW9uOiAtZCBbZmlsZW5hbWVdJykKKyAgICAgICAgc3lzLmV4aXQoMSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvZGlzdC5weSBiL0xpYi9wYWNrYWdpbmcvZGlzdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MDc3NjdlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9kaXN0LnB5CkBAIC0wLDAgKzEsNzY5IEBACisiIiJDbGFzcyByZXByZXNlbnRpbmcgdGhlIHByb2plY3QgYmVpbmcgYnVpbHQvaW5zdGFsbGVkL2V0Yy4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgcmUKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgc3RydG9ib29sLCByZXNvbHZlX25hbWUKK2Zyb20gcGFja2FnaW5nLmNvbmZpZyBpbXBvcnQgQ29uZmlnCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChQYWNrYWdpbmdPcHRpb25FcnJvciwgUGFja2FnaW5nQXJnRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWNrYWdpbmdNb2R1bGVFcnJvciwgUGFja2FnaW5nQ2xhc3NFcnJvcikKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQgaW1wb3J0IGdldF9jb21tYW5kX2NsYXNzLCBTVEFOREFSRF9DT01NQU5EUworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YQorZnJvbSBwYWNrYWdpbmcuZmFuY3lfZ2V0b3B0IGltcG9ydCBGYW5jeUdldG9wdAorCisjIFJlZ2V4IHRvIGRlZmluZSBhY2NlcHRhYmxlIFBhY2thZ2luZyBjb21tYW5kIG5hbWVzLiAgVGhpcyBpcyBub3QgKnF1aXRlKgorIyB0aGUgc2FtZSBhcyBhIFB5dGhvbiBuYW1lIC0tIGxlYWRpbmcgdW5kZXJzY29yZXMgYXJlIG5vdCBhbGxvd2VkLiAgVGhlIGZhY3QKKyMgdGhhdCB0aGV5J3JlIHZlcnkgc2ltaWxhciBpcyBubyBjb2luY2lkZW5jZTogdGhlIGRlZmF1bHQgbmFtaW5nIHNjaGVtZSBpcworIyB0byBsb29rIGZvciBhIFB5dGhvbiBtb2R1bGUgbmFtZWQgYWZ0ZXIgdGhlIGNvbW1hbmQuCitjb21tYW5kX3JlID0gcmUuY29tcGlsZShyJ15bYS16QS1aXShbYS16QS1aMC05X10qKSQnKQorCitVU0FHRSA9ICIiIlwKK3VzYWdlOiAlKHNjcmlwdClzIFtnbG9iYWxfb3B0c10gY21kMSBbY21kMV9vcHRzXSBbY21kMiBbY21kMl9vcHRzXSAuLi5dCisgICBvcjogJShzY3JpcHQpcyAtLWhlbHAgW2NtZDEgY21kMiAuLi5dCisgICBvcjogJShzY3JpcHQpcyAtLWhlbHAtY29tbWFuZHMKKyAgIG9yOiAlKHNjcmlwdClzIGNtZCAtLWhlbHAKKyIiIgorCisKK2RlZiBnZW5fdXNhZ2Uoc2NyaXB0X25hbWUpOgorICAgIHNjcmlwdCA9IG9zLnBhdGguYmFzZW5hbWUoc2NyaXB0X25hbWUpCisgICAgcmV0dXJuIFVTQUdFICUgeydzY3JpcHQnOiBzY3JpcHR9CisKKworY2xhc3MgRGlzdHJpYnV0aW9uOgorICAgICIiIkNsYXNzIHVzZWQgdG8gcmVwcmVzZW50IGEgcHJvamVjdCBhbmQgd29yayB3aXRoIGl0LgorCisgICAgTW9zdCBvZiB0aGUgd29yayBoaWRpbmcgYmVoaW5kICdweXNldHVwIHJ1bicgaXMgcmVhbGx5IGRvbmUgd2l0aGluIGEKKyAgICBEaXN0cmlidXRpb24gaW5zdGFuY2UsIHdoaWNoIGZhcm1zIHRoZSB3b3JrIG91dCB0byB0aGUgY29tbWFuZHMKKyAgICBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4KKyAgICAiIiIKKworICAgICMgJ2dsb2JhbF9vcHRpb25zJyBkZXNjcmliZXMgdGhlIGNvbW1hbmQtbGluZSBvcHRpb25zIHRoYXQgbWF5IGJlCisgICAgIyBzdXBwbGllZCB0byB0aGUgc2V0dXAgc2NyaXB0IHByaW9yIHRvIGFueSBhY3R1YWwgY29tbWFuZHMuCisgICAgIyBFZy4gInB5c2V0dXAgcnVuIC1uIiBvciAicHlzZXR1cCBydW4gLS1kcnktcnVuIiBib3RoIHRha2UgYWR2YW50YWdlIG9mCisgICAgIyB0aGVzZSBnbG9iYWwgb3B0aW9ucy4gIFRoaXMgbGlzdCBzaG91bGQgYmUga2VwdCB0byBhIGJhcmUgbWluaW11bSwKKyAgICAjIHNpbmNlIGV2ZXJ5IGdsb2JhbCBvcHRpb24gaXMgYWxzbyB2YWxpZCBhcyBhIGNvbW1hbmQgb3B0aW9uIC0tIGFuZCB3ZQorICAgICMgZG9uJ3Qgd2FudCB0byBwb2xsdXRlIHRoZSBjb21tYW5kcyB3aXRoIHRvbyBtYW55IG9wdGlvbnMgdGhhdCB0aGV5CisgICAgIyBoYXZlIG1pbmltYWwgY29udHJvbCBvdmVyLgorICAgIGdsb2JhbF9vcHRpb25zID0gWworICAgICAgICAoJ2RyeS1ydW4nLCAnbicsICJkb24ndCBhY3R1YWxseSBkbyBhbnl0aGluZyIpLAorICAgICAgICAoJ2hlbHAnLCAnaCcsICJzaG93IGRldGFpbGVkIGhlbHAgbWVzc2FnZSIpLAorICAgICAgICAoJ25vLXVzZXItY2ZnJywgTm9uZSwgJ2lnbm9yZSBweWRpc3R1dGlscy5jZmcgaW4geW91ciBob21lIGRpcmVjdG9yeScpLAorICAgIF0KKworICAgICMgJ2NvbW1vbl91c2FnZScgaXMgYSBzaG9ydCAoMi0zIGxpbmUpIHN0cmluZyBkZXNjcmliaW5nIHRoZSBjb21tb24KKyAgICAjIHVzYWdlIG9mIHRoZSBzZXR1cCBzY3JpcHQuCisgICAgY29tbW9uX3VzYWdlID0gIiIiXAorQ29tbW9uIGNvbW1hbmRzOiAoc2VlICctLWhlbHAtY29tbWFuZHMnIGZvciBtb3JlKQorCisgIHB5c2V0dXAgcnVuIGJ1aWxkICAgICAgd2lsbCBidWlsZCB0aGUgcHJvamVjdCB1bmRlcm5lYXRoICdidWlsZC8nCisgIHB5c2V0dXAgcnVuIGluc3RhbGwgICAgd2lsbCBpbnN0YWxsIHRoZSBwcm9qZWN0CisiIiIKKworICAgICMgb3B0aW9ucyB0aGF0IGFyZSBub3QgcHJvcGFnYXRlZCB0byB0aGUgY29tbWFuZHMKKyAgICBkaXNwbGF5X29wdGlvbnMgPSBbCisgICAgICAgICgnaGVscC1jb21tYW5kcycsIE5vbmUsCisgICAgICAgICAibGlzdCBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzIiksCisgICAgICAgICgndXNlLTJ0bzMnLCBOb25lLAorICAgICAgICAgInVzZSAydG8zIHRvIG1ha2Ugc291cmNlIHB5dGhvbiAzLnggY29tcGF0aWJsZSIpLAorICAgICAgICAoJ2NvbnZlcnQtMnRvMy1kb2N0ZXN0cycsIE5vbmUsCisgICAgICAgICAidXNlIDJ0bzMgdG8gY29udmVydCBkb2N0ZXN0cyBpbiBzZXBhcmF0ZSB0ZXh0IGZpbGVzIiksCisgICAgICAgIF0KKyAgICBkaXNwbGF5X29wdGlvbl9uYW1lcyA9IFt4WzBdLnJlcGxhY2UoJy0nLCAnXycpIGZvciB4IGluIGRpc3BsYXlfb3B0aW9uc10KKworICAgICMgbmVnYXRpdmUgb3B0aW9ucyBhcmUgb3B0aW9ucyB0aGF0IGV4Y2x1ZGUgb3RoZXIgb3B0aW9ucworICAgIG5lZ2F0aXZlX29wdCA9IHt9CisKKyAgICAjIC0tIENyZWF0aW9uL2luaXRpYWxpemF0aW9uIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhdHRycz1Ob25lKToKKyAgICAgICAgIiIiQ29uc3RydWN0IGEgbmV3IERpc3RyaWJ1dGlvbiBpbnN0YW5jZTogaW5pdGlhbGl6ZSBhbGwgdGhlCisgICAgICAgIGF0dHJpYnV0ZXMgb2YgYSBEaXN0cmlidXRpb24sIGFuZCB0aGVuIHVzZSAnYXR0cnMnIChhIGRpY3Rpb25hcnkKKyAgICAgICAgbWFwcGluZyBhdHRyaWJ1dGUgbmFtZXMgdG8gdmFsdWVzKSB0byBhc3NpZ24gc29tZSBvZiB0aG9zZQorICAgICAgICBhdHRyaWJ1dGVzIHRoZWlyICJyZWFsIiB2YWx1ZXMuICAoQW55IGF0dHJpYnV0ZXMgbm90IG1lbnRpb25lZCBpbgorICAgICAgICAnYXR0cnMnIHdpbGwgYmUgYXNzaWduZWQgdG8gc29tZSBudWxsIHZhbHVlOiAwLCBOb25lLCBhbiBlbXB0eSBsaXN0CisgICAgICAgIG9yIGRpY3Rpb25hcnksIGV0Yy4pICBNb3N0IGltcG9ydGFudGx5LCBpbml0aWFsaXplIHRoZQorICAgICAgICAnY29tbWFuZF9vYmonIGF0dHJpYnV0ZSB0byB0aGUgZW1wdHkgZGljdGlvbmFyeTsgdGhpcyB3aWxsIGJlCisgICAgICAgIGZpbGxlZCBpbiB3aXRoIHJlYWwgY29tbWFuZCBvYmplY3RzIGJ5ICdwYXJzZV9jb21tYW5kX2xpbmUoKScuCisgICAgICAgICIiIgorCisgICAgICAgICMgRGVmYXVsdCB2YWx1ZXMgZm9yIG91ciBjb21tYW5kLWxpbmUgb3B0aW9ucworICAgICAgICBzZWxmLmRyeV9ydW4gPSBGYWxzZQorICAgICAgICBzZWxmLmhlbHAgPSBGYWxzZQorICAgICAgICBmb3IgYXR0ciBpbiBzZWxmLmRpc3BsYXlfb3B0aW9uX25hbWVzOgorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBhdHRyLCBGYWxzZSkKKworICAgICAgICAjIFN0b3JlIHRoZSBjb25maWd1cmF0aW9uCisgICAgICAgIHNlbGYuY29uZmlnID0gQ29uZmlnKHNlbGYpCisKKyAgICAgICAgIyBTdG9yZSB0aGUgZGlzdHJpYnV0aW9uIG1ldGFkYXRhIChuYW1lLCB2ZXJzaW9uLCBhdXRob3IsIGFuZCBzbworICAgICAgICAjIGZvcnRoKSBpbiBhIHNlcGFyYXRlIG9iamVjdCAtLSB3ZSdyZSBnZXR0aW5nIHRvIGhhdmUgZW5vdWdoCisgICAgICAgICMgaW5mb3JtYXRpb24gaGVyZSAoYW5kIGVub3VnaCBjb21tYW5kLWxpbmUgb3B0aW9ucykgdGhhdCBpdCdzCisgICAgICAgICMgd29ydGggaXQuCisgICAgICAgIHNlbGYubWV0YWRhdGEgPSBNZXRhZGF0YSgpCisKKyAgICAgICAgIyAnY21kY2xhc3MnIG1hcHMgY29tbWFuZCBuYW1lcyB0byBjbGFzcyBvYmplY3RzLCBzbyB3ZQorICAgICAgICAjIGNhbiAxKSBxdWlja2x5IGZpZ3VyZSBvdXQgd2hpY2ggY2xhc3MgdG8gaW5zdGFudGlhdGUgd2hlbgorICAgICAgICAjIHdlIG5lZWQgdG8gY3JlYXRlIGEgbmV3IGNvbW1hbmQgb2JqZWN0LCBhbmQgMikgaGF2ZSBhIHdheQorICAgICAgICAjIGZvciB0aGUgc2V0dXAgc2NyaXB0IHRvIG92ZXJyaWRlIGNvbW1hbmQgY2xhc3NlcworICAgICAgICBzZWxmLmNtZGNsYXNzID0ge30KKworICAgICAgICAjICdzY3JpcHRfbmFtZScgYW5kICdzY3JpcHRfYXJncycgYXJlIHVzdWFsbHkgc2V0IHRvIHN5cy5hcmd2WzBdCisgICAgICAgICMgYW5kIHN5cy5hcmd2WzE6XSwgYnV0IHRoZXkgY2FuIGJlIG92ZXJyaWRkZW4gd2hlbiB0aGUgY2FsbGVyIGlzCisgICAgICAgICMgbm90IG5lY2Vzc2FyaWx5IGEgc2V0dXAgc2NyaXB0IHJ1biBmcm9tIHRoZSBjb21tYW5kIGxpbmUuCisgICAgICAgIHNlbGYuc2NyaXB0X25hbWUgPSBOb25lCisgICAgICAgIHNlbGYuc2NyaXB0X2FyZ3MgPSBOb25lCisKKyAgICAgICAgIyAnY29tbWFuZF9vcHRpb25zJyBpcyB3aGVyZSB3ZSBzdG9yZSBjb21tYW5kIG9wdGlvbnMgYmV0d2VlbgorICAgICAgICAjIHBhcnNpbmcgdGhlbSAoZnJvbSBjb25maWcgZmlsZXMsIHRoZSBjb21tYW5kIGxpbmUsIGV0Yy4pIGFuZCB3aGVuCisgICAgICAgICMgdGhleSBhcmUgYWN0dWFsbHkgbmVlZGVkIC0tIGllLiB3aGVuIHRoZSBjb21tYW5kIGluIHF1ZXN0aW9uIGlzCisgICAgICAgICMgaW5zdGFudGlhdGVkLiAgSXQgaXMgYSBkaWN0aW9uYXJ5IG9mIGRpY3Rpb25hcmllcyBvZiAyLXR1cGxlczoKKyAgICAgICAgIyAgIGNvbW1hbmRfb3B0aW9ucyA9IHsgY29tbWFuZF9uYW1lIDogeyBvcHRpb24gOiAoc291cmNlLCB2YWx1ZSkgfSB9CisgICAgICAgIHNlbGYuY29tbWFuZF9vcHRpb25zID0ge30KKworICAgICAgICAjICdkaXN0X2ZpbGVzJyBpcyB0aGUgbGlzdCBvZiAoY29tbWFuZCwgcHl2ZXJzaW9uLCBmaWxlKSB0aGF0CisgICAgICAgICMgaGF2ZSBiZWVuIGNyZWF0ZWQgYnkgYW55IGRpc3QgY29tbWFuZHMgcnVuIHNvIGZhci4gVGhpcyBpcworICAgICAgICAjIGZpbGxlZCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHJ1biBpcyBkcnkgb3Igbm90LiBweXZlcnNpb24KKyAgICAgICAgIyBnaXZlcyBzeXNjb25maWcuZ2V0X3B5dGhvbl92ZXJzaW9uKCkgaWYgdGhlIGRpc3QgZmlsZSBpcworICAgICAgICAjIHNwZWNpZmljIHRvIGEgUHl0aG9uIHZlcnNpb24sICdhbnknIGlmIGl0IGlzIGdvb2QgZm9yIGFsbAorICAgICAgICAjIFB5dGhvbiB2ZXJzaW9ucyBvbiB0aGUgdGFyZ2V0IHBsYXRmb3JtLCBhbmQgJycgZm9yIGEgc291cmNlCisgICAgICAgICMgZmlsZS4gcHl2ZXJzaW9uIHNob3VsZCBub3QgYmUgdXNlZCB0byBzcGVjaWZ5IG1pbmltdW0gb3IKKyAgICAgICAgIyBtYXhpbXVtIHJlcXVpcmVkIFB5dGhvbiB2ZXJzaW9uczsgdXNlIHRoZSBtZXRhaW5mbyBmb3IgdGhhdAorICAgICAgICAjIGluc3RlYWQuCisgICAgICAgIHNlbGYuZGlzdF9maWxlcyA9IFtdCisKKyAgICAgICAgIyBUaGVzZSBvcHRpb25zIGFyZSByZWFsbHkgdGhlIGJ1c2luZXNzIG9mIHZhcmlvdXMgY29tbWFuZHMsIHJhdGhlcgorICAgICAgICAjIHRoYW4gb2YgdGhlIERpc3RyaWJ1dGlvbiBpdHNlbGYuICBXZSBwcm92aWRlIGFsaWFzZXMgZm9yIHRoZW0gaW4KKyAgICAgICAgIyBEaXN0cmlidXRpb24gYXMgYSBjb252ZW5pZW5jZSB0byB0aGUgZGV2ZWxvcGVyLgorICAgICAgICBzZWxmLnBhY2thZ2VzID0gW10KKyAgICAgICAgc2VsZi5wYWNrYWdlX2RhdGEgPSB7fQorICAgICAgICBzZWxmLnBhY2thZ2VfZGlyID0gTm9uZQorICAgICAgICBzZWxmLnB5X21vZHVsZXMgPSBbXQorICAgICAgICBzZWxmLmxpYnJhcmllcyA9IFtdCisgICAgICAgIHNlbGYuaGVhZGVycyA9IFtdCisgICAgICAgIHNlbGYuZXh0X21vZHVsZXMgPSBbXQorICAgICAgICBzZWxmLmV4dF9wYWNrYWdlID0gTm9uZQorICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IFtdCisgICAgICAgIHNlbGYuZXh0cmFfcGF0aCA9IE5vbmUKKyAgICAgICAgc2VsZi5zY3JpcHRzID0gW10KKyAgICAgICAgc2VsZi5kYXRhX2ZpbGVzID0ge30KKyAgICAgICAgc2VsZi5wYXNzd29yZCA9ICcnCisgICAgICAgIHNlbGYudXNlXzJ0bzMgPSBGYWxzZQorICAgICAgICBzZWxmLmNvbnZlcnRfMnRvM19kb2N0ZXN0cyA9IFtdCisgICAgICAgIHNlbGYuZXh0cmFfZmlsZXMgPSBbXQorCisgICAgICAgICMgQW5kIG5vdyBpbml0aWFsaXplIGJvb2trZWVwaW5nIHN0dWZmIHRoYXQgY2FuJ3QgYmUgc3VwcGxpZWQgYnkKKyAgICAgICAgIyB0aGUgY2FsbGVyIGF0IGFsbC4gICdjb21tYW5kX29iaicgbWFwcyBjb21tYW5kIG5hbWVzIHRvCisgICAgICAgICMgQ29tbWFuZCBpbnN0YW5jZXMgLS0gdGhhdCdzIGhvdyB3ZSBlbmZvcmNlIHRoYXQgZXZlcnkgY29tbWFuZAorICAgICAgICAjIGNsYXNzIGlzIGEgc2luZ2xldG9uLgorICAgICAgICBzZWxmLmNvbW1hbmRfb2JqID0ge30KKworICAgICAgICAjICdoYXZlX3J1bicgbWFwcyBjb21tYW5kIG5hbWVzIHRvIGJvb2xlYW4gdmFsdWVzOyBpdCBrZWVwcyB0cmFjaworICAgICAgICAjIG9mIHdoZXRoZXIgd2UgaGF2ZSBhY3R1YWxseSBydW4gYSBwYXJ0aWN1bGFyIGNvbW1hbmQsIHRvIG1ha2UgaXQKKyAgICAgICAgIyBjaGVhcCB0byAicnVuIiBhIGNvbW1hbmQgd2hlbmV2ZXIgd2UgdGhpbmsgd2UgbWlnaHQgbmVlZCB0byAtLSBpZgorICAgICAgICAjIGl0J3MgYWxyZWFkeSBiZWVuIGRvbmUsIG5vIG5lZWQgZm9yIGV4cGVuc2l2ZSBmaWxlc3lzdGVtCisgICAgICAgICMgb3BlcmF0aW9ucywgd2UganVzdCBjaGVjayB0aGUgJ2hhdmVfcnVuJyBkaWN0aW9uYXJ5IGFuZCBjYXJyeSBvbi4KKyAgICAgICAgIyBJdCdzIG9ubHkgc2FmZSB0byBxdWVyeSAnaGF2ZV9ydW4nIGZvciBhIGNvbW1hbmQgY2xhc3MgdGhhdCBoYXMKKyAgICAgICAgIyBiZWVuIGluc3RhbnRpYXRlZCAtLSBhIGZhbHNlIHZhbHVlIHdpbGwgYmUgaW5zZXJ0ZWQgd2hlbiB0aGUKKyAgICAgICAgIyBjb21tYW5kIG9iamVjdCBpcyBjcmVhdGVkLCBhbmQgcmVwbGFjZWQgd2l0aCBhIHRydWUgdmFsdWUgd2hlbgorICAgICAgICAjIHRoZSBjb21tYW5kIGlzIHN1Y2Nlc3NmdWxseSBydW4uICBUaHVzIGl0J3MgcHJvYmFibHkgYmVzdCB0byB1c2UKKyAgICAgICAgIyAnLmdldCgpJyByYXRoZXIgdGhhbiBhIHN0cmFpZ2h0IGxvb2t1cC4KKyAgICAgICAgc2VsZi5oYXZlX3J1biA9IHt9CisKKyAgICAgICAgIyBOb3cgd2UnbGwgdXNlIHRoZSBhdHRycyBkaWN0aW9uYXJ5ICh1bHRpbWF0ZWx5LCBrZXl3b3JkIGFyZ3MgZnJvbQorICAgICAgICAjIHRoZSBzZXR1cCBzY3JpcHQpIHRvIHBvc3NpYmx5IG92ZXJyaWRlIGFueSBvciBhbGwgb2YgdGhlc2UKKyAgICAgICAgIyBkaXN0cmlidXRpb24gb3B0aW9ucy4KKworICAgICAgICBpZiBhdHRycyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICMgUHVsbCBvdXQgdGhlIHNldCBvZiBjb21tYW5kIG9wdGlvbnMgYW5kIHdvcmsgb24gdGhlbQorICAgICAgICAgICAgIyBzcGVjaWZpY2FsbHkuICBOb3RlIHRoYXQgdGhpcyBvcmRlciBndWFyYW50ZWVzIHRoYXQgYWxpYXNlZAorICAgICAgICAgICAgIyBjb21tYW5kIG9wdGlvbnMgd2lsbCBvdmVycmlkZSBhbnkgc3VwcGxpZWQgcmVkdW5kYW50bHkKKyAgICAgICAgICAgICMgdGhyb3VnaCB0aGUgZ2VuZXJhbCBvcHRpb25zIGRpY3Rpb25hcnkuCisgICAgICAgICAgICBvcHRpb25zID0gYXR0cnMuZ2V0KCdvcHRpb25zJykKKyAgICAgICAgICAgIGlmIG9wdGlvbnMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZGVsIGF0dHJzWydvcHRpb25zJ10KKyAgICAgICAgICAgICAgICBmb3IgY29tbWFuZCwgY21kX29wdGlvbnMgaW4gb3B0aW9ucy5pdGVtcygpOgorICAgICAgICAgICAgICAgICAgICBvcHRfZGljdCA9IHNlbGYuZ2V0X29wdGlvbl9kaWN0KGNvbW1hbmQpCisgICAgICAgICAgICAgICAgICAgIGZvciBvcHQsIHZhbCBpbiBjbWRfb3B0aW9ucy5pdGVtcygpOgorICAgICAgICAgICAgICAgICAgICAgICAgb3B0X2RpY3Rbb3B0XSA9ICgic2V0dXAgc2NyaXB0IiwgdmFsKQorCisgICAgICAgICAgICAjIE5vdyB3b3JrIG9uIHRoZSByZXN0IG9mIHRoZSBhdHRyaWJ1dGVzLiAgQW55IGF0dHJpYnV0ZSB0aGF0J3MKKyAgICAgICAgICAgICMgbm90IGFscmVhZHkgZGVmaW5lZCBpcyBpbnZhbGlkIQorICAgICAgICAgICAgZm9yIGtleSwgdmFsIGluIGF0dHJzLml0ZW1zKCk6CisgICAgICAgICAgICAgICAgaWYgc2VsZi5tZXRhZGF0YS5pc19tZXRhZGF0YV9maWVsZChrZXkpOgorICAgICAgICAgICAgICAgICAgICBzZWxmLm1ldGFkYXRhW2tleV0gPSB2YWwKKyAgICAgICAgICAgICAgICBlbGlmIGhhc2F0dHIoc2VsZiwga2V5KToKKyAgICAgICAgICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBrZXksIHZhbCkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICd1bmtub3duIGFyZ3VtZW50IGdpdmVuIHRvIERpc3RyaWJ1dGlvbjogJXInLCBrZXkpCisKKyAgICAgICAgIyBuby11c2VyLWNmZyBpcyBoYW5kbGVkIGJlZm9yZSBvdGhlciBjb21tYW5kIGxpbmUgYXJncworICAgICAgICAjIGJlY2F1c2Ugb3RoZXIgYXJncyBvdmVycmlkZSB0aGUgY29uZmlnIGZpbGVzLCBhbmQgdGhpcworICAgICAgICAjIG9uZSBpcyBuZWVkZWQgYmVmb3JlIHdlIGNhbiBsb2FkIHRoZSBjb25maWcgZmlsZXMuCisgICAgICAgICMgSWYgYXR0cnNbJ3NjcmlwdF9hcmdzJ10gd2Fzbid0IHBhc3NlZCwgYXNzdW1lIGZhbHNlLgorICAgICAgICAjCisgICAgICAgICMgVGhpcyBhbHNvIG1ha2Ugc3VyZSB3ZSBqdXN0IGxvb2sgYXQgdGhlIGdsb2JhbCBvcHRpb25zCisgICAgICAgIHNlbGYud2FudF91c2VyX2NmZyA9IFRydWUKKworICAgICAgICBpZiBzZWxmLnNjcmlwdF9hcmdzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgZm9yIGFyZyBpbiBzZWxmLnNjcmlwdF9hcmdzOgorICAgICAgICAgICAgICAgIGlmIG5vdCBhcmcuc3RhcnRzd2l0aCgnLScpOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGlmIGFyZyA9PSAnLS1uby11c2VyLWNmZyc6CisgICAgICAgICAgICAgICAgICAgIHNlbGYud2FudF91c2VyX2NmZyA9IEZhbHNlCisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisKKyAgICAgICAgc2VsZi5maW5hbGl6ZV9vcHRpb25zKCkKKworICAgIGRlZiBnZXRfb3B0aW9uX2RpY3Qoc2VsZiwgY29tbWFuZCk6CisgICAgICAgICIiIkdldCB0aGUgb3B0aW9uIGRpY3Rpb25hcnkgZm9yIGEgZ2l2ZW4gY29tbWFuZC4gIElmIHRoYXQKKyAgICAgICAgY29tbWFuZCdzIG9wdGlvbiBkaWN0aW9uYXJ5IGhhc24ndCBiZWVuIGNyZWF0ZWQgeWV0LCB0aGVuIGNyZWF0ZSBpdAorICAgICAgICBhbmQgcmV0dXJuIHRoZSBuZXcgZGljdGlvbmFyeTsgb3RoZXJ3aXNlLCByZXR1cm4gdGhlIGV4aXN0aW5nCisgICAgICAgIG9wdGlvbiBkaWN0aW9uYXJ5LgorICAgICAgICAiIiIKKyAgICAgICAgZCA9IHNlbGYuY29tbWFuZF9vcHRpb25zLmdldChjb21tYW5kKQorICAgICAgICBpZiBkIGlzIE5vbmU6CisgICAgICAgICAgICBkID0gc2VsZi5jb21tYW5kX29wdGlvbnNbY29tbWFuZF0gPSB7fQorICAgICAgICByZXR1cm4gZAorCisgICAgZGVmIGdldF9mdWxsbmFtZShzZWxmLCBmaWxlc2FmZT1GYWxzZSk6CisgICAgICAgIHJldHVybiBzZWxmLm1ldGFkYXRhLmdldF9mdWxsbmFtZShmaWxlc2FmZSkKKworICAgIGRlZiBkdW1wX29wdGlvbl9kaWN0cyhzZWxmLCBoZWFkZXI9Tm9uZSwgY29tbWFuZHM9Tm9uZSwgaW5kZW50PSIiKToKKyAgICAgICAgZnJvbSBwcHJpbnQgaW1wb3J0IHBmb3JtYXQKKworICAgICAgICBpZiBjb21tYW5kcyBpcyBOb25lOiAgICAgICAgICAgICAjIGR1bXAgYWxsIGNvbW1hbmQgb3B0aW9uIGRpY3RzCisgICAgICAgICAgICBjb21tYW5kcyA9IHNvcnRlZChzZWxmLmNvbW1hbmRfb3B0aW9ucykKKworICAgICAgICBpZiBoZWFkZXIgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBsb2dnZXIuaW5mbyhpbmRlbnQgKyBoZWFkZXIpCisgICAgICAgICAgICBpbmRlbnQgPSBpbmRlbnQgKyAiICAiCisKKyAgICAgICAgaWYgbm90IGNvbW1hbmRzOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oaW5kZW50ICsgIm5vIGNvbW1hbmRzIGtub3duIHlldCIpCisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBmb3IgY21kX25hbWUgaW4gY29tbWFuZHM6CisgICAgICAgICAgICBvcHRfZGljdCA9IHNlbGYuY29tbWFuZF9vcHRpb25zLmdldChjbWRfbmFtZSkKKyAgICAgICAgICAgIGlmIG9wdF9kaWN0IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oaW5kZW50ICsgIm5vIG9wdGlvbiBkaWN0IGZvciAlciBjb21tYW5kIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbWRfbmFtZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oaW5kZW50ICsgIm9wdGlvbiBkaWN0IGZvciAlciBjb21tYW5kOiIsIGNtZF9uYW1lKQorICAgICAgICAgICAgICAgIG91dCA9IHBmb3JtYXQob3B0X2RpY3QpCisgICAgICAgICAgICAgICAgZm9yIGxpbmUgaW4gb3V0LnNwbGl0KCdcbicpOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbyhpbmRlbnQgKyAiICAiICsgbGluZSkKKworICAgICMgLS0gQ29uZmlnIGZpbGUgZmluZGluZy9wYXJzaW5nIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgIyBYWFggdG8gYmUgcmVtb3ZlZAorICAgIGRlZiBwYXJzZV9jb25maWdfZmlsZXMoc2VsZiwgZmlsZW5hbWVzPU5vbmUpOgorICAgICAgICByZXR1cm4gc2VsZi5jb25maWcucGFyc2VfY29uZmlnX2ZpbGVzKGZpbGVuYW1lcykKKworICAgIGRlZiBmaW5kX2NvbmZpZ19maWxlcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuY29uZmlnLmZpbmRfY29uZmlnX2ZpbGVzKCkKKworICAgICMgLS0gQ29tbWFuZC1saW5lIHBhcnNpbmcgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgcGFyc2VfY29tbWFuZF9saW5lKHNlbGYpOgorICAgICAgICAiIiJQYXJzZSB0aGUgc2V0dXAgc2NyaXB0J3MgY29tbWFuZCBsaW5lLCB0YWtlbiBmcm9tIHRoZQorICAgICAgICAnc2NyaXB0X2FyZ3MnIGluc3RhbmNlIGF0dHJpYnV0ZSAod2hpY2ggZGVmYXVsdHMgdG8gJ3N5cy5hcmd2WzE6XScKKyAgICAgICAgLS0gc2VlICdzZXR1cCgpJyBpbiBydW4ucHkpLiAgVGhpcyBsaXN0IGlzIGZpcnN0IHByb2Nlc3NlZCBmb3IKKyAgICAgICAgImdsb2JhbCBvcHRpb25zIiAtLSBvcHRpb25zIHRoYXQgc2V0IGF0dHJpYnV0ZXMgb2YgdGhlIERpc3RyaWJ1dGlvbgorICAgICAgICBpbnN0YW5jZS4gIFRoZW4sIGl0IGlzIGFsdGVybmF0ZWx5IHNjYW5uZWQgZm9yIFBhY2thZ2luZyBjb21tYW5kcworICAgICAgICBhbmQgb3B0aW9ucyBmb3IgdGhhdCBjb21tYW5kLiAgRWFjaCBuZXcgY29tbWFuZCB0ZXJtaW5hdGVzIHRoZQorICAgICAgICBvcHRpb25zIGZvciB0aGUgcHJldmlvdXMgY29tbWFuZC4gIFRoZSBhbGxvd2VkIG9wdGlvbnMgZm9yIGEKKyAgICAgICAgY29tbWFuZCBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgJ3VzZXJfb3B0aW9ucycgYXR0cmlidXRlIG9mIHRoZQorICAgICAgICBjb21tYW5kIGNsYXNzIC0tIHRodXMsIHdlIGhhdmUgdG8gYmUgYWJsZSB0byBsb2FkIGNvbW1hbmQgY2xhc3NlcworICAgICAgICBpbiBvcmRlciB0byBwYXJzZSB0aGUgY29tbWFuZCBsaW5lLiAgQW55IGVycm9yIGluIHRoYXQgJ29wdGlvbnMnCisgICAgICAgIGF0dHJpYnV0ZSByYWlzZXMgUGFja2FnaW5nR2V0b3B0RXJyb3I7IGFueSBlcnJvciBvbiB0aGUKKyAgICAgICAgY29tbWFuZCBsaW5lIHJhaXNlcyBQYWNrYWdpbmdBcmdFcnJvci4gIElmIG5vIFBhY2thZ2luZyBjb21tYW5kcworICAgICAgICB3ZXJlIGZvdW5kIG9uIHRoZSBjb21tYW5kIGxpbmUsIHJhaXNlcyBQYWNrYWdpbmdBcmdFcnJvci4gIFJldHVybgorICAgICAgICB0cnVlIGlmIGNvbW1hbmQgbGluZSB3YXMgc3VjY2Vzc2Z1bGx5IHBhcnNlZCBhbmQgd2Ugc2hvdWxkIGNhcnJ5CisgICAgICAgIG9uIHdpdGggZXhlY3V0aW5nIGNvbW1hbmRzOyBmYWxzZSBpZiBubyBlcnJvcnMgYnV0IHdlIHNob3VsZG4ndAorICAgICAgICBleGVjdXRlIGNvbW1hbmRzIChjdXJyZW50bHksIHRoaXMgb25seSBoYXBwZW5zIGlmIHVzZXIgYXNrcyBmb3IKKyAgICAgICAgaGVscCkuCisgICAgICAgICIiIgorICAgICAgICAjCisgICAgICAgICMgV2Ugbm93IGhhdmUgZW5vdWdoIGluZm9ybWF0aW9uIHRvIHNob3cgdGhlIE1hY2ludG9zaCBkaWFsb2cKKyAgICAgICAgIyB0aGF0IGFsbG93cyB0aGUgdXNlciB0byBpbnRlcmFjdGl2ZWx5IHNwZWNpZnkgdGhlICJjb21tYW5kIGxpbmUiLgorICAgICAgICAjCisgICAgICAgIHRvcGxldmVsX29wdGlvbnMgPSBzZWxmLl9nZXRfdG9wbGV2ZWxfb3B0aW9ucygpCisKKyAgICAgICAgIyBXZSBoYXZlIHRvIHBhcnNlIHRoZSBjb21tYW5kIGxpbmUgYSBiaXQgYXQgYSB0aW1lIC0tIGdsb2JhbAorICAgICAgICAjIG9wdGlvbnMsIHRoZW4gdGhlIGZpcnN0IGNvbW1hbmQsIHRoZW4gaXRzIG9wdGlvbnMsIGFuZCBzbyBvbiAtLQorICAgICAgICAjIGJlY2F1c2UgZWFjaCBjb21tYW5kIHdpbGwgYmUgaGFuZGxlZCBieSBhIGRpZmZlcmVudCBjbGFzcywgYW5kCisgICAgICAgICMgdGhlIG9wdGlvbnMgdGhhdCBhcmUgdmFsaWQgZm9yIGEgcGFydGljdWxhciBjbGFzcyBhcmVuJ3Qga25vd24KKyAgICAgICAgIyB1bnRpbCB3ZSBoYXZlIGxvYWRlZCB0aGUgY29tbWFuZCBjbGFzcywgd2hpY2ggZG9lc24ndCBoYXBwZW4KKyAgICAgICAgIyB1bnRpbCB3ZSBrbm93IHdoYXQgdGhlIGNvbW1hbmQgaXMuCisKKyAgICAgICAgc2VsZi5jb21tYW5kcyA9IFtdCisgICAgICAgIHBhcnNlciA9IEZhbmN5R2V0b3B0KHRvcGxldmVsX29wdGlvbnMgKyBzZWxmLmRpc3BsYXlfb3B0aW9ucykKKyAgICAgICAgcGFyc2VyLnNldF9uZWdhdGl2ZV9hbGlhc2VzKHNlbGYubmVnYXRpdmVfb3B0KQorICAgICAgICBhcmdzID0gcGFyc2VyLmdldG9wdChhcmdzPXNlbGYuc2NyaXB0X2FyZ3MsIG9iamVjdD1zZWxmKQorICAgICAgICBvcHRpb25fb3JkZXIgPSBwYXJzZXIuZ2V0X29wdGlvbl9vcmRlcigpCisKKyAgICAgICAgIyBmb3IgZGlzcGxheSBvcHRpb25zIHdlIHJldHVybiBpbW1lZGlhdGVseQorICAgICAgICBpZiBzZWxmLmhhbmRsZV9kaXNwbGF5X29wdGlvbnMob3B0aW9uX29yZGVyKToKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHdoaWxlIGFyZ3M6CisgICAgICAgICAgICBhcmdzID0gc2VsZi5fcGFyc2VfY29tbWFuZF9vcHRzKHBhcnNlciwgYXJncykKKyAgICAgICAgICAgIGlmIGFyZ3MgaXMgTm9uZTogICAgICAgICAgICAjIHVzZXIgYXNrZWQgZm9yIGhlbHAgKGFuZCBnb3QgaXQpCisgICAgICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyBIYW5kbGUgdGhlIGNhc2VzIG9mIC0taGVscCBhcyBhICJnbG9iYWwiIG9wdGlvbiwgaWUuCisgICAgICAgICMgInB5c2V0dXAgcnVuIC0taGVscCIgYW5kICJweXNldHVwIHJ1biAtLWhlbHAgY29tbWFuZCAuLi4iLiAgRm9yIHRoZQorICAgICAgICAjIGZvcm1lciwgd2Ugc2hvdyBnbG9iYWwgb3B0aW9ucyAoLS1kcnktcnVuLCBldGMuKQorICAgICAgICAjIGFuZCBkaXNwbGF5LW9ubHkgb3B0aW9ucyAoLS1uYW1lLCAtLXZlcnNpb24sIGV0Yy4pOyBmb3IgdGhlCisgICAgICAgICMgbGF0dGVyLCB3ZSBvbWl0IHRoZSBkaXNwbGF5LW9ubHkgb3B0aW9ucyBhbmQgc2hvdyBoZWxwIGZvcgorICAgICAgICAjIGVhY2ggY29tbWFuZCBsaXN0ZWQgb24gdGhlIGNvbW1hbmQgbGluZS4KKyAgICAgICAgaWYgc2VsZi5oZWxwOgorICAgICAgICAgICAgc2VsZi5fc2hvd19oZWxwKHBhcnNlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5X29wdGlvbnM9bGVuKHNlbGYuY29tbWFuZHMpID09IDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tbWFuZHM9c2VsZi5jb21tYW5kcykKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICBkZWYgX2dldF90b3BsZXZlbF9vcHRpb25zKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIG5vbi1kaXNwbGF5IG9wdGlvbnMgcmVjb2duaXplZCBhdCB0aGUgdG9wIGxldmVsLgorCisgICAgICAgIFRoaXMgaW5jbHVkZXMgb3B0aW9ucyB0aGF0IGFyZSByZWNvZ25pemVkICpvbmx5KiBhdCB0aGUgdG9wCisgICAgICAgIGxldmVsIGFzIHdlbGwgYXMgb3B0aW9ucyByZWNvZ25pemVkIGZvciBjb21tYW5kcy4KKyAgICAgICAgIiIiCisgICAgICAgIHJldHVybiBzZWxmLmdsb2JhbF9vcHRpb25zCisKKyAgICBkZWYgX3BhcnNlX2NvbW1hbmRfb3B0cyhzZWxmLCBwYXJzZXIsIGFyZ3MpOgorICAgICAgICAiIiJQYXJzZSB0aGUgY29tbWFuZC1saW5lIG9wdGlvbnMgZm9yIGEgc2luZ2xlIGNvbW1hbmQuCisgICAgICAgICdwYXJzZXInIG11c3QgYmUgYSBGYW5jeUdldG9wdCBpbnN0YW5jZTsgJ2FyZ3MnIG11c3QgYmUgdGhlIGxpc3QKKyAgICAgICAgb2YgYXJndW1lbnRzLCBzdGFydGluZyB3aXRoIHRoZSBjdXJyZW50IGNvbW1hbmQgKHdob3NlIG9wdGlvbnMKKyAgICAgICAgd2UgYXJlIGFib3V0IHRvIHBhcnNlKS4gIFJldHVybnMgYSBuZXcgdmVyc2lvbiBvZiAnYXJncycgd2l0aAorICAgICAgICB0aGUgbmV4dCBjb21tYW5kIGF0IHRoZSBmcm9udCBvZiB0aGUgbGlzdDsgd2lsbCBiZSB0aGUgZW1wdHkKKyAgICAgICAgbGlzdCBpZiB0aGVyZSBhcmUgbm8gbW9yZSBjb21tYW5kcyBvbiB0aGUgY29tbWFuZCBsaW5lLiAgUmV0dXJucworICAgICAgICBOb25lIGlmIHRoZSB1c2VyIGFza2VkIGZvciBoZWxwIG9uIHRoaXMgY29tbWFuZC4KKyAgICAgICAgIiIiCisgICAgICAgICMgUHVsbCB0aGUgY3VycmVudCBjb21tYW5kIGZyb20gdGhlIGhlYWQgb2YgdGhlIGNvbW1hbmQgbGluZQorICAgICAgICBjb21tYW5kID0gYXJnc1swXQorICAgICAgICBpZiBub3QgY29tbWFuZF9yZS5tYXRjaChjb21tYW5kKToKKyAgICAgICAgICAgIHJhaXNlIFN5c3RlbUV4aXQoImludmFsaWQgY29tbWFuZCBuYW1lICVyIiAlIGNvbW1hbmQpCisgICAgICAgIHNlbGYuY29tbWFuZHMuYXBwZW5kKGNvbW1hbmQpCisKKyAgICAgICAgIyBEaWcgdXAgdGhlIGNvbW1hbmQgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIHRoaXMgY29tbWFuZCwgc28gd2UKKyAgICAgICAgIyAxKSBrbm93IHRoYXQgaXQncyBhIHZhbGlkIGNvbW1hbmQsIGFuZCAyKSBrbm93IHdoaWNoIG9wdGlvbnMKKyAgICAgICAgIyBpdCB0YWtlcy4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY21kX2NsYXNzID0gZ2V0X2NvbW1hbmRfY2xhc3MoY29tbWFuZCkKKyAgICAgICAgZXhjZXB0IFBhY2thZ2luZ01vZHVsZUVycm9yIGFzIG1zZzoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0FyZ0Vycm9yKG1zZykKKworICAgICAgICAjIFhYWCBXZSB3YW50IHRvIHB1c2ggdGhpcyBpbiBwYWNrYWdpbmcuY29tbWFuZAorICAgICAgICAjCisgICAgICAgICMgUmVxdWlyZSB0aGF0IHRoZSBjb21tYW5kIGNsYXNzIGJlIGRlcml2ZWQgZnJvbSBDb21tYW5kIC0tIHdhbnQKKyAgICAgICAgIyB0byBiZSBzdXJlIHRoYXQgdGhlIGJhc2ljICJjb21tYW5kIiBpbnRlcmZhY2UgaXMgaW1wbGVtZW50ZWQuCisgICAgICAgIGZvciBtZXRoIGluICgnaW5pdGlhbGl6ZV9vcHRpb25zJywgJ2ZpbmFsaXplX29wdGlvbnMnLCAncnVuJyk6CisgICAgICAgICAgICBpZiBoYXNhdHRyKGNtZF9jbGFzcywgbWV0aCk6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0NsYXNzRXJyb3IoCisgICAgICAgICAgICAgICAgJ2NvbW1hbmQgJXIgbXVzdCBpbXBsZW1lbnQgJXInICUgKGNtZF9jbGFzcywgbWV0aCkpCisKKyAgICAgICAgIyBBbHNvIG1ha2Ugc3VyZSB0aGF0IHRoZSBjb21tYW5kIG9iamVjdCBwcm92aWRlcyBhIGxpc3Qgb2YgaXRzCisgICAgICAgICMga25vd24gb3B0aW9ucy4KKyAgICAgICAgaWYgbm90IChoYXNhdHRyKGNtZF9jbGFzcywgJ3VzZXJfb3B0aW9ucycpIGFuZAorICAgICAgICAgICAgICAgIGlzaW5zdGFuY2UoY21kX2NsYXNzLnVzZXJfb3B0aW9ucywgbGlzdCkpOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nQ2xhc3NFcnJvcigKKyAgICAgICAgICAgICAgICAiY29tbWFuZCBjbGFzcyAlcyBtdXN0IHByb3ZpZGUgIgorICAgICAgICAgICAgICAgICIndXNlcl9vcHRpb25zJyBhdHRyaWJ1dGUgKGEgbGlzdCBvZiB0dXBsZXMpIiAlIGNtZF9jbGFzcykKKworICAgICAgICAjIElmIHRoZSBjb21tYW5kIGNsYXNzIGhhcyBhIGxpc3Qgb2YgbmVnYXRpdmUgYWxpYXMgb3B0aW9ucywKKyAgICAgICAgIyBtZXJnZSBpdCBpbiB3aXRoIHRoZSBnbG9iYWwgbmVnYXRpdmUgYWxpYXNlcy4KKyAgICAgICAgbmVnYXRpdmVfb3B0ID0gc2VsZi5uZWdhdGl2ZV9vcHQKKyAgICAgICAgaWYgaGFzYXR0cihjbWRfY2xhc3MsICduZWdhdGl2ZV9vcHQnKToKKyAgICAgICAgICAgIG5lZ2F0aXZlX29wdCA9IG5lZ2F0aXZlX29wdC5jb3B5KCkKKyAgICAgICAgICAgIG5lZ2F0aXZlX29wdC51cGRhdGUoY21kX2NsYXNzLm5lZ2F0aXZlX29wdCkKKworICAgICAgICAjIENoZWNrIGZvciBoZWxwX29wdGlvbnMgaW4gY29tbWFuZCBjbGFzcy4gIFRoZXkgaGF2ZSBhIGRpZmZlcmVudAorICAgICAgICAjIGZvcm1hdCAodHVwbGUgb2YgZm91cikgc28gd2UgbmVlZCB0byBwcmVwcm9jZXNzIHRoZW0gaGVyZS4KKyAgICAgICAgaWYgKGhhc2F0dHIoY21kX2NsYXNzLCAnaGVscF9vcHRpb25zJykgYW5kCisgICAgICAgICAgICBpc2luc3RhbmNlKGNtZF9jbGFzcy5oZWxwX29wdGlvbnMsIGxpc3QpKToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9ucyA9IGNtZF9jbGFzcy5oZWxwX29wdGlvbnNbOl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9ucyA9IFtdCisKKyAgICAgICAgIyBBbGwgY29tbWFuZHMgc3VwcG9ydCB0aGUgZ2xvYmFsIG9wdGlvbnMgdG9vLCBqdXN0IGJ5IGFkZGluZworICAgICAgICAjIGluICdnbG9iYWxfb3B0aW9ucycuCisgICAgICAgIHBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKHNlbGYuZ2xvYmFsX29wdGlvbnMgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbWRfY2xhc3MudXNlcl9vcHRpb25zICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscF9vcHRpb25zKQorICAgICAgICBwYXJzZXIuc2V0X25lZ2F0aXZlX2FsaWFzZXMobmVnYXRpdmVfb3B0KQorICAgICAgICBhcmdzLCBvcHRzID0gcGFyc2VyLmdldG9wdChhcmdzWzE6XSkKKyAgICAgICAgaWYgaGFzYXR0cihvcHRzLCAnaGVscCcpIGFuZCBvcHRzLmhlbHA6CisgICAgICAgICAgICBzZWxmLl9zaG93X2hlbHAocGFyc2VyLCBkaXNwbGF5X29wdGlvbnM9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tbWFuZHM9W2NtZF9jbGFzc10pCisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBpZiAoaGFzYXR0cihjbWRfY2xhc3MsICdoZWxwX29wdGlvbnMnKSBhbmQKKyAgICAgICAgICAgIGlzaW5zdGFuY2UoY21kX2NsYXNzLmhlbHBfb3B0aW9ucywgbGlzdCkpOgorICAgICAgICAgICAgaGVscF9vcHRpb25fZm91bmQgPSBGYWxzZQorICAgICAgICAgICAgZm9yIGhlbHBfb3B0aW9uLCBzaG9ydCwgZGVzYywgZnVuYyBpbiBjbWRfY2xhc3MuaGVscF9vcHRpb25zOgorICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIob3B0cywgaGVscF9vcHRpb24ucmVwbGFjZSgnLScsICdfJykpOgorICAgICAgICAgICAgICAgICAgICBoZWxwX29wdGlvbl9mb3VuZCA9IFRydWUKKyAgICAgICAgICAgICAgICAgICAgaWYgY2FsbGFibGUoZnVuYyk6CisgICAgICAgICAgICAgICAgICAgICAgICBmdW5jKCkKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0NsYXNzRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImludmFsaWQgaGVscCBmdW5jdGlvbiAlciBmb3IgaGVscCBvcHRpb24gJXI6ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAibXVzdCBiZSBhIGNhbGxhYmxlIG9iamVjdCAoZnVuY3Rpb24sIGV0Yy4pIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgKGZ1bmMsIGhlbHBfb3B0aW9uKSkKKworICAgICAgICAgICAgaWYgaGVscF9vcHRpb25fZm91bmQ6CisgICAgICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyBQdXQgdGhlIG9wdGlvbnMgZnJvbSB0aGUgY29tbWFuZCBsaW5lIGludG8gdGhlaXIgb2ZmaWNpYWwKKyAgICAgICAgIyBob2xkaW5nIHBlbiwgdGhlICdjb21tYW5kX29wdGlvbnMnIGRpY3Rpb25hcnkuCisgICAgICAgIG9wdF9kaWN0ID0gc2VsZi5nZXRfb3B0aW9uX2RpY3QoY29tbWFuZCkKKyAgICAgICAgZm9yIG5hbWUsIHZhbHVlIGluIHZhcnMob3B0cykuaXRlbXMoKToKKyAgICAgICAgICAgIG9wdF9kaWN0W25hbWVdID0gKCJjb21tYW5kIGxpbmUiLCB2YWx1ZSkKKworICAgICAgICByZXR1cm4gYXJncworCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgICIiIlNldCBmaW5hbCB2YWx1ZXMgZm9yIGFsbCB0aGUgb3B0aW9ucyBvbiB0aGUgRGlzdHJpYnV0aW9uCisgICAgICAgIGluc3RhbmNlLCBhbmFsb2dvdXMgdG8gdGhlIC5maW5hbGl6ZV9vcHRpb25zKCkgbWV0aG9kIG9mIENvbW1hbmQKKyAgICAgICAgb2JqZWN0cy4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIGdldGF0dHIoc2VsZiwgJ2NvbnZlcnRfMnRvM19kb2N0ZXN0cycsIE5vbmUpOgorICAgICAgICAgICAgc2VsZi5jb252ZXJ0XzJ0bzNfZG9jdGVzdHMgPSBbb3MucGF0aC5qb2luKHApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBwIGluIHNlbGYuY29udmVydF8ydG8zX2RvY3Rlc3RzXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5jb252ZXJ0XzJ0bzNfZG9jdGVzdHMgPSBbXQorCisgICAgZGVmIF9zaG93X2hlbHAoc2VsZiwgcGFyc2VyLCBnbG9iYWxfb3B0aW9ucz1UcnVlLCBkaXNwbGF5X29wdGlvbnM9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICBjb21tYW5kcz1bXSk6CisgICAgICAgICIiIlNob3cgaGVscCBmb3IgdGhlIHNldHVwIHNjcmlwdCBjb21tYW5kIGxpbmUgaW4gdGhlIGZvcm0gb2YKKyAgICAgICAgc2V2ZXJhbCBsaXN0cyBvZiBjb21tYW5kLWxpbmUgb3B0aW9ucy4gICdwYXJzZXInIHNob3VsZCBiZSBhCisgICAgICAgIEZhbmN5R2V0b3B0IGluc3RhbmNlOyBkbyBub3QgZXhwZWN0IGl0IHRvIGJlIHJldHVybmVkIGluIHRoZQorICAgICAgICBzYW1lIHN0YXRlLCBhcyBpdHMgb3B0aW9uIHRhYmxlIHdpbGwgYmUgcmVzZXQgdG8gbWFrZSBpdAorICAgICAgICBnZW5lcmF0ZSB0aGUgY29ycmVjdCBoZWxwIHRleHQuCisKKyAgICAgICAgSWYgJ2dsb2JhbF9vcHRpb25zJyBpcyB0cnVlLCBsaXN0cyB0aGUgZ2xvYmFsIG9wdGlvbnM6CisgICAgICAgIC0tZHJ5LXJ1biwgZXRjLiAgSWYgJ2Rpc3BsYXlfb3B0aW9ucycgaXMgdHJ1ZSwgbGlzdHMKKyAgICAgICAgdGhlICJkaXNwbGF5LW9ubHkiIG9wdGlvbnM6IC0taGVscC1jb21tYW5kcy4gIEZpbmFsbHksCisgICAgICAgIGxpc3RzIHBlci1jb21tYW5kIGhlbHAgZm9yIGV2ZXJ5IGNvbW1hbmQgbmFtZSBvciBjb21tYW5kIGNsYXNzCisgICAgICAgIGluICdjb21tYW5kcycuCisgICAgICAgICIiIgorICAgICAgICBpZiBnbG9iYWxfb3B0aW9uczoKKyAgICAgICAgICAgIGlmIGRpc3BsYXlfb3B0aW9uczoKKyAgICAgICAgICAgICAgICBvcHRpb25zID0gc2VsZi5fZ2V0X3RvcGxldmVsX29wdGlvbnMoKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBvcHRpb25zID0gc2VsZi5nbG9iYWxfb3B0aW9ucworICAgICAgICAgICAgcGFyc2VyLnNldF9vcHRpb25fdGFibGUob3B0aW9ucykKKyAgICAgICAgICAgIHBhcnNlci5wcmludF9oZWxwKHNlbGYuY29tbW9uX3VzYWdlICsgIlxuR2xvYmFsIG9wdGlvbnM6IikKKyAgICAgICAgICAgIHByaW50KCkKKworICAgICAgICBpZiBkaXNwbGF5X29wdGlvbnM6CisgICAgICAgICAgICBwYXJzZXIuc2V0X29wdGlvbl90YWJsZShzZWxmLmRpc3BsYXlfb3B0aW9ucykKKyAgICAgICAgICAgIHBhcnNlci5wcmludF9oZWxwKAorICAgICAgICAgICAgICAgICJJbmZvcm1hdGlvbiBkaXNwbGF5IG9wdGlvbnMgKGp1c3QgZGlzcGxheSAiICsKKyAgICAgICAgICAgICAgICAiaW5mb3JtYXRpb24sIGlnbm9yZSBhbnkgY29tbWFuZHMpIikKKyAgICAgICAgICAgIHByaW50KCkKKworICAgICAgICBmb3IgY29tbWFuZCBpbiBzZWxmLmNvbW1hbmRzOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShjb21tYW5kLCB0eXBlKSBhbmQgaXNzdWJjbGFzcyhjb21tYW5kLCBDb21tYW5kKToKKyAgICAgICAgICAgICAgICBjbHMgPSBjb21tYW5kCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGNscyA9IGdldF9jb21tYW5kX2NsYXNzKGNvbW1hbmQpCisgICAgICAgICAgICBpZiAoaGFzYXR0cihjbHMsICdoZWxwX29wdGlvbnMnKSBhbmQKKyAgICAgICAgICAgICAgICBpc2luc3RhbmNlKGNscy5oZWxwX29wdGlvbnMsIGxpc3QpKToKKyAgICAgICAgICAgICAgICBwYXJzZXIuc2V0X29wdGlvbl90YWJsZShjbHMudXNlcl9vcHRpb25zICsgY2xzLmhlbHBfb3B0aW9ucykKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcGFyc2VyLnNldF9vcHRpb25fdGFibGUoY2xzLnVzZXJfb3B0aW9ucykKKyAgICAgICAgICAgIHBhcnNlci5wcmludF9oZWxwKCJPcHRpb25zIGZvciAlciBjb21tYW5kOiIgJSBjbHMuX19uYW1lX18pCisgICAgICAgICAgICBwcmludCgpCisKKyAgICAgICAgcHJpbnQoZ2VuX3VzYWdlKHNlbGYuc2NyaXB0X25hbWUpKQorCisgICAgZGVmIGhhbmRsZV9kaXNwbGF5X29wdGlvbnMoc2VsZiwgb3B0aW9uX29yZGVyKToKKyAgICAgICAgIiIiSWYgdGhlcmUgd2VyZSBhbnkgbm9uLWdsb2JhbCAiZGlzcGxheS1vbmx5IiBvcHRpb25zCisgICAgICAgICgtLWhlbHAtY29tbWFuZHMpIG9uIHRoZSBjb21tYW5kIGxpbmUsIGRpc3BsYXkgdGhlIHJlcXVlc3RlZCBpbmZvIGFuZAorICAgICAgICByZXR1cm4gdHJ1ZTsgZWxzZSByZXR1cm4gZmFsc2UuCisgICAgICAgICIiIgorICAgICAgICAjIFVzZXIganVzdCB3YW50cyBhIGxpc3Qgb2YgY29tbWFuZHMgLS0gd2UnbGwgcHJpbnQgaXQgb3V0IGFuZCBzdG9wCisgICAgICAgICMgcHJvY2Vzc2luZyBub3cgKGllLiBpZiB0aGV5IHJhbiAic2V0dXAgLS1oZWxwLWNvbW1hbmRzIGZvbyBiYXIiLAorICAgICAgICAjIHdlIGlnbm9yZSAiZm9vIGJhciIpLgorICAgICAgICBpZiBzZWxmLmhlbHBfY29tbWFuZHM6CisgICAgICAgICAgICBzZWxmLnByaW50X2NvbW1hbmRzKCkKKyAgICAgICAgICAgIHByaW50KCkKKyAgICAgICAgICAgIHByaW50KGdlbl91c2FnZShzZWxmLnNjcmlwdF9uYW1lKSkKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisKKyAgICAgICAgIyBJZiB1c2VyIHN1cHBsaWVkIGFueSBvZiB0aGUgImRpc3BsYXkgbWV0YWRhdGEiIG9wdGlvbnMsIHRoZW4KKyAgICAgICAgIyBkaXNwbGF5IHRoYXQgbWV0YWRhdGEgaW4gdGhlIG9yZGVyIGluIHdoaWNoIHRoZSB1c2VyIHN1cHBsaWVkIHRoZQorICAgICAgICAjIG1ldGFkYXRhIG9wdGlvbnMuCisgICAgICAgIGFueV9kaXNwbGF5X29wdGlvbnMgPSBGYWxzZQorICAgICAgICBpc19kaXNwbGF5X29wdGlvbiA9IHNldCgpCisgICAgICAgIGZvciBvcHRpb24gaW4gc2VsZi5kaXNwbGF5X29wdGlvbnM6CisgICAgICAgICAgICBpc19kaXNwbGF5X29wdGlvbi5hZGQob3B0aW9uWzBdKQorCisgICAgICAgIGZvciBvcHQsIHZhbCBpbiBvcHRpb25fb3JkZXI6CisgICAgICAgICAgICBpZiB2YWwgYW5kIG9wdCBpbiBpc19kaXNwbGF5X29wdGlvbjoKKyAgICAgICAgICAgICAgICBvcHQgPSBvcHQucmVwbGFjZSgnLScsICdfJykKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IHNlbGYubWV0YWRhdGFbb3B0XQorICAgICAgICAgICAgICAgIGlmIG9wdCBpbiAoJ2tleXdvcmRzJywgJ3BsYXRmb3JtJyk6CisgICAgICAgICAgICAgICAgICAgIHByaW50KCcsJy5qb2luKHZhbHVlKSkKKyAgICAgICAgICAgICAgICBlbGlmIG9wdCBpbiAoJ2NsYXNzaWZpZXInLCAncHJvdmlkZXMnLCAncmVxdWlyZXMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb2Jzb2xldGVzJyk6CisgICAgICAgICAgICAgICAgICAgIHByaW50KCdcbicuam9pbih2YWx1ZSkpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcHJpbnQodmFsdWUpCisgICAgICAgICAgICAgICAgYW55X2Rpc3BsYXlfb3B0aW9ucyA9IFRydWUKKworICAgICAgICByZXR1cm4gYW55X2Rpc3BsYXlfb3B0aW9ucworCisgICAgZGVmIHByaW50X2NvbW1hbmRfbGlzdChzZWxmLCBjb21tYW5kcywgaGVhZGVyLCBtYXhfbGVuZ3RoKToKKyAgICAgICAgIiIiUHJpbnQgYSBzdWJzZXQgb2YgdGhlIGxpc3Qgb2YgYWxsIGNvbW1hbmRzIC0tIHVzZWQgYnkKKyAgICAgICAgJ3ByaW50X2NvbW1hbmRzKCknLgorICAgICAgICAiIiIKKyAgICAgICAgcHJpbnQoaGVhZGVyICsgIjoiKQorCisgICAgICAgIGZvciBjbWQgaW4gY29tbWFuZHM6CisgICAgICAgICAgICBjbHMgPSBzZWxmLmNtZGNsYXNzLmdldChjbWQpIG9yIGdldF9jb21tYW5kX2NsYXNzKGNtZCkKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uID0gZ2V0YXR0cihjbHMsICdkZXNjcmlwdGlvbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyhubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpJykKKworICAgICAgICAgICAgcHJpbnQoIiAgJS0qcyAgJXMiICUgKG1heF9sZW5ndGgsIGNtZCwgZGVzY3JpcHRpb24pKQorCisgICAgZGVmIF9nZXRfY29tbWFuZF9ncm91cHMoc2VsZik6CisgICAgICAgICIiIkhlbHBlciBmdW5jdGlvbiB0byByZXRyaWV2ZSBhbGwgdGhlIGNvbW1hbmQgY2xhc3MgbmFtZXMgZGl2aWRlZAorICAgICAgICBpbnRvIHN0YW5kYXJkIGNvbW1hbmRzIChsaXN0ZWQgaW4KKyAgICAgICAgcGFja2FnaW5nLmNvbW1hbmQuU1RBTkRBUkRfQ09NTUFORFMpIGFuZCBleHRyYSBjb21tYW5kcyAoZ2l2ZW4gaW4KKyAgICAgICAgc2VsZi5jbWRjbGFzcyBhbmQgbm90IHN0YW5kYXJkIGNvbW1hbmRzKS4KKyAgICAgICAgIiIiCisgICAgICAgIGV4dHJhX2NvbW1hbmRzID0gW2NtZCBmb3IgY21kIGluIHNlbGYuY21kY2xhc3MKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgY21kIG5vdCBpbiBTVEFOREFSRF9DT01NQU5EU10KKyAgICAgICAgcmV0dXJuIFNUQU5EQVJEX0NPTU1BTkRTLCBleHRyYV9jb21tYW5kcworCisgICAgZGVmIHByaW50X2NvbW1hbmRzKHNlbGYpOgorICAgICAgICAiIiJQcmludCBvdXQgYSBoZWxwIG1lc3NhZ2UgbGlzdGluZyBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzIHdpdGggYQorICAgICAgICBkZXNjcmlwdGlvbiBvZiBlYWNoLiAgVGhlIGxpc3QgaXMgZGl2aWRlZCBpbnRvIHN0YW5kYXJkIGNvbW1hbmRzCisgICAgICAgIChsaXN0ZWQgaW4gcGFja2FnaW5nLmNvbW1hbmQuU1RBTkRBUkRfQ09NTUFORFMpIGFuZCBleHRyYSBjb21tYW5kcworICAgICAgICAoZ2l2ZW4gaW4gc2VsZi5jbWRjbGFzcyBhbmQgbm90IHN0YW5kYXJkIGNvbW1hbmRzKS4gIFRoZQorICAgICAgICBkZXNjcmlwdGlvbnMgY29tZSBmcm9tIHRoZSBjb21tYW5kIGNsYXNzIGF0dHJpYnV0ZQorICAgICAgICAnZGVzY3JpcHRpb24nLgorICAgICAgICAiIiIKKyAgICAgICAgc3RkX2NvbW1hbmRzLCBleHRyYV9jb21tYW5kcyA9IHNlbGYuX2dldF9jb21tYW5kX2dyb3VwcygpCisgICAgICAgIG1heF9sZW5ndGggPSAwCisgICAgICAgIGZvciBjbWQgaW4gKHN0ZF9jb21tYW5kcyArIGV4dHJhX2NvbW1hbmRzKToKKyAgICAgICAgICAgIGlmIGxlbihjbWQpID4gbWF4X2xlbmd0aDoKKyAgICAgICAgICAgICAgICBtYXhfbGVuZ3RoID0gbGVuKGNtZCkKKworICAgICAgICBzZWxmLnByaW50X2NvbW1hbmRfbGlzdChzdGRfY29tbWFuZHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTdGFuZGFyZCBjb21tYW5kcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heF9sZW5ndGgpCisgICAgICAgIGlmIGV4dHJhX2NvbW1hbmRzOgorICAgICAgICAgICAgcHJpbnQoKQorICAgICAgICAgICAgc2VsZi5wcmludF9jb21tYW5kX2xpc3QoZXh0cmFfY29tbWFuZHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXh0cmEgY29tbWFuZHMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4X2xlbmd0aCkKKworICAgICMgLS0gQ29tbWFuZCBjbGFzcy9vYmplY3QgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgZ2V0X2NvbW1hbmRfb2JqKHNlbGYsIGNvbW1hbmQsIGNyZWF0ZT1UcnVlKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBjb21tYW5kIG9iamVjdCBmb3IgJ2NvbW1hbmQnLiAgTm9ybWFsbHkgdGhpcyBvYmplY3QKKyAgICAgICAgaXMgY2FjaGVkIG9uIGEgcHJldmlvdXMgY2FsbCB0byAnZ2V0X2NvbW1hbmRfb2JqKCknOyBpZiBubyBjb21tYW5kCisgICAgICAgIG9iamVjdCBmb3IgJ2NvbW1hbmQnIGlzIGluIHRoZSBjYWNoZSwgdGhlbiB3ZSBlaXRoZXIgY3JlYXRlIGFuZAorICAgICAgICByZXR1cm4gaXQgKGlmICdjcmVhdGUnIGlzIHRydWUpIG9yIHJldHVybiBOb25lLgorICAgICAgICAiIiIKKyAgICAgICAgY21kX29iaiA9IHNlbGYuY29tbWFuZF9vYmouZ2V0KGNvbW1hbmQpCisgICAgICAgIGlmIG5vdCBjbWRfb2JqIGFuZCBjcmVhdGU6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoIkRpc3RyaWJ1dGlvbi5nZXRfY29tbWFuZF9vYmooKTogIgorICAgICAgICAgICAgICAgICAgICAgICAgICJjcmVhdGluZyAlciBjb21tYW5kIG9iamVjdCIsIGNvbW1hbmQpCisKKyAgICAgICAgICAgIGNscyA9IGdldF9jb21tYW5kX2NsYXNzKGNvbW1hbmQpCisgICAgICAgICAgICBjbWRfb2JqID0gc2VsZi5jb21tYW5kX29ialtjb21tYW5kXSA9IGNscyhzZWxmKQorICAgICAgICAgICAgc2VsZi5oYXZlX3J1bltjb21tYW5kXSA9IDAKKworICAgICAgICAgICAgIyBTZXQgYW55IG9wdGlvbnMgdGhhdCB3ZXJlIHN1cHBsaWVkIGluIGNvbmZpZyBmaWxlcyBvciBvbiB0aGUKKyAgICAgICAgICAgICMgY29tbWFuZCBsaW5lLiAgKFhYWCBzdXBwb3J0IGZvciBlcnJvciByZXBvcnRpbmcgaXMgc3Vib3B0aW1hbAorICAgICAgICAgICAgIyBoZXJlOiBlcnJvcnMgYXJlbid0IHJlcG9ydGVkIHVudGlsIGZpbmFsaXplX29wdGlvbnMgaXMgY2FsbGVkLAorICAgICAgICAgICAgIyB3aGljaCBtZWFucyB3ZSB3b24ndCByZXBvcnQgdGhlIHNvdXJjZSBvZiB0aGUgZXJyb3IuKQorICAgICAgICAgICAgb3B0aW9ucyA9IHNlbGYuY29tbWFuZF9vcHRpb25zLmdldChjb21tYW5kKQorICAgICAgICAgICAgaWYgb3B0aW9uczoKKyAgICAgICAgICAgICAgICBzZWxmLl9zZXRfY29tbWFuZF9vcHRpb25zKGNtZF9vYmosIG9wdGlvbnMpCisKKyAgICAgICAgcmV0dXJuIGNtZF9vYmoKKworICAgIGRlZiBfc2V0X2NvbW1hbmRfb3B0aW9ucyhzZWxmLCBjb21tYW5kX29iaiwgb3B0aW9uX2RpY3Q9Tm9uZSk6CisgICAgICAgICIiIlNldCB0aGUgb3B0aW9ucyBmb3IgJ2NvbW1hbmRfb2JqJyBmcm9tICdvcHRpb25fZGljdCcuICBCYXNpY2FsbHkKKyAgICAgICAgdGhpcyBtZWFucyBjb3B5aW5nIGVsZW1lbnRzIG9mIGEgZGljdGlvbmFyeSAoJ29wdGlvbl9kaWN0JykgdG8KKyAgICAgICAgYXR0cmlidXRlcyBvZiBhbiBpbnN0YW5jZSAoJ2NvbW1hbmQnKS4KKworICAgICAgICAnY29tbWFuZF9vYmonIG11c3QgYmUgYSBDb21tYW5kIGluc3RhbmNlLiAgSWYgJ29wdGlvbl9kaWN0JyBpcyBub3QKKyAgICAgICAgc3VwcGxpZWQsIHVzZXMgdGhlIHN0YW5kYXJkIG9wdGlvbiBkaWN0aW9uYXJ5IGZvciB0aGlzIGNvbW1hbmQKKyAgICAgICAgKGZyb20gJ3NlbGYuY29tbWFuZF9vcHRpb25zJykuCisgICAgICAgICIiIgorICAgICAgICBjb21tYW5kX25hbWUgPSBjb21tYW5kX29iai5nZXRfY29tbWFuZF9uYW1lKCkKKyAgICAgICAgaWYgb3B0aW9uX2RpY3QgaXMgTm9uZToKKyAgICAgICAgICAgIG9wdGlvbl9kaWN0ID0gc2VsZi5nZXRfb3B0aW9uX2RpY3QoY29tbWFuZF9uYW1lKQorCisgICAgICAgIGxvZ2dlci5kZWJ1ZygiICBzZXR0aW5nIG9wdGlvbnMgZm9yICVyIGNvbW1hbmQ6IiwgY29tbWFuZF9uYW1lKQorCisgICAgICAgIGZvciBvcHRpb24sIChzb3VyY2UsIHZhbHVlKSBpbiBvcHRpb25fZGljdC5pdGVtcygpOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCIgICAgJXMgPSAlcyAoZnJvbSAlcykiLCBvcHRpb24sIHZhbHVlLCBzb3VyY2UpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgYm9vbF9vcHRzID0gW3gucmVwbGFjZSgnLScsICdfJykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gY29tbWFuZF9vYmouYm9vbGVhbl9vcHRpb25zXQorICAgICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgICAgIGJvb2xfb3B0cyA9IFtdCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgbmVnX29wdCA9IGNvbW1hbmRfb2JqLm5lZ2F0aXZlX29wdAorICAgICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgICAgIG5lZ19vcHQgPSB7fQorCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaXNfc3RyaW5nID0gaXNpbnN0YW5jZSh2YWx1ZSwgc3RyKQorICAgICAgICAgICAgICAgIGlmIG9wdGlvbiBpbiBuZWdfb3B0IGFuZCBpc19zdHJpbmc6CisgICAgICAgICAgICAgICAgICAgIHNldGF0dHIoY29tbWFuZF9vYmosIG5lZ19vcHRbb3B0aW9uXSwgbm90IHN0cnRvYm9vbCh2YWx1ZSkpCisgICAgICAgICAgICAgICAgZWxpZiBvcHRpb24gaW4gYm9vbF9vcHRzIGFuZCBpc19zdHJpbmc6CisgICAgICAgICAgICAgICAgICAgIHNldGF0dHIoY29tbWFuZF9vYmosIG9wdGlvbiwgc3RydG9ib29sKHZhbHVlKSkKKyAgICAgICAgICAgICAgICBlbGlmIGhhc2F0dHIoY29tbWFuZF9vYmosIG9wdGlvbik6CisgICAgICAgICAgICAgICAgICAgIHNldGF0dHIoY29tbWFuZF9vYmosIG9wdGlvbiwgdmFsdWUpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAiZXJyb3IgaW4gJXM6IGNvbW1hbmQgJXIgaGFzIG5vIHN1Y2ggb3B0aW9uICVyIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAoc291cmNlLCBjb21tYW5kX25hbWUsIG9wdGlvbikpCisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IobXNnKQorCisgICAgZGVmIHJlaW5pdGlhbGl6ZV9jb21tYW5kKHNlbGYsIGNvbW1hbmQsIHJlaW5pdF9zdWJjb21tYW5kcz1GYWxzZSk6CisgICAgICAgICIiIlJlaW5pdGlhbGl6ZXMgYSBjb21tYW5kIHRvIHRoZSBzdGF0ZSBpdCB3YXMgaW4gd2hlbiBmaXJzdAorICAgICAgICByZXR1cm5lZCBieSAnZ2V0X2NvbW1hbmRfb2JqKCknOiBpLmUuLCBpbml0aWFsaXplZCBidXQgbm90IHlldAorICAgICAgICBmaW5hbGl6ZWQuICBUaGlzIHByb3ZpZGVzIHRoZSBvcHBvcnR1bml0eSB0byBzbmVhayBvcHRpb24KKyAgICAgICAgdmFsdWVzIGluIHByb2dyYW1tYXRpY2FsbHksIG92ZXJyaWRpbmcgb3Igc3VwcGxlbWVudGluZworICAgICAgICB1c2VyLXN1cHBsaWVkIHZhbHVlcyBmcm9tIHRoZSBjb25maWcgZmlsZXMgYW5kIGNvbW1hbmQgbGluZS4KKyAgICAgICAgWW91J2xsIGhhdmUgdG8gcmUtZmluYWxpemUgdGhlIGNvbW1hbmQgb2JqZWN0IChieSBjYWxsaW5nCisgICAgICAgICdmaW5hbGl6ZV9vcHRpb25zKCknIG9yICdlbnN1cmVfZmluYWxpemVkKCknKSBiZWZvcmUgdXNpbmcgaXQgZm9yCisgICAgICAgIHJlYWwuCisKKyAgICAgICAgJ2NvbW1hbmQnIHNob3VsZCBiZSBhIGNvbW1hbmQgbmFtZSAoc3RyaW5nKSBvciBjb21tYW5kIG9iamVjdC4gIElmCisgICAgICAgICdyZWluaXRfc3ViY29tbWFuZHMnIGlzIHRydWUsIGFsc28gcmVpbml0aWFsaXplcyB0aGUgY29tbWFuZCdzCisgICAgICAgIHN1Yi1jb21tYW5kcywgYXMgZGVjbGFyZWQgYnkgdGhlICdzdWJfY29tbWFuZHMnIGNsYXNzIGF0dHJpYnV0ZSAoaWYKKyAgICAgICAgaXQgaGFzIG9uZSkuICBTZWUgdGhlICJpbnN0YWxsX2Rpc3QiIGNvbW1hbmQgZm9yIGFuIGV4YW1wbGUuICBPbmx5CisgICAgICAgIHJlaW5pdGlhbGl6ZXMgdGhlIHN1Yi1jb21tYW5kcyB0aGF0IGFjdHVhbGx5IG1hdHRlciwgaS5lLiB0aG9zZQorICAgICAgICB3aG9zZSB0ZXN0IHByZWRpY2F0ZSByZXR1cm4gdHJ1ZS4KKworICAgICAgICBSZXR1cm5zIHRoZSByZWluaXRpYWxpemVkIGNvbW1hbmQgb2JqZWN0LiAgSXQgd2lsbCBiZSB0aGUgc2FtZQorICAgICAgICBvYmplY3QgYXMgdGhlIG9uZSBzdG9yZWQgaW4gdGhlIHNlbGYuY29tbWFuZF9vYmogYXR0cmlidXRlLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoY29tbWFuZCwgQ29tbWFuZCk6CisgICAgICAgICAgICBjb21tYW5kX25hbWUgPSBjb21tYW5kCisgICAgICAgICAgICBjb21tYW5kID0gc2VsZi5nZXRfY29tbWFuZF9vYmooY29tbWFuZF9uYW1lKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY29tbWFuZF9uYW1lID0gY29tbWFuZC5nZXRfY29tbWFuZF9uYW1lKCkKKworICAgICAgICBpZiBub3QgY29tbWFuZC5maW5hbGl6ZWQ6CisgICAgICAgICAgICByZXR1cm4gY29tbWFuZAorCisgICAgICAgIGNvbW1hbmQuaW5pdGlhbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgc2VsZi5oYXZlX3J1bltjb21tYW5kX25hbWVdID0gMAorICAgICAgICBjb21tYW5kLmZpbmFsaXplZCA9IEZhbHNlCisgICAgICAgIHNlbGYuX3NldF9jb21tYW5kX29wdGlvbnMoY29tbWFuZCkKKworICAgICAgICBpZiByZWluaXRfc3ViY29tbWFuZHM6CisgICAgICAgICAgICBmb3Igc3ViIGluIGNvbW1hbmQuZ2V0X3N1Yl9jb21tYW5kcygpOgorICAgICAgICAgICAgICAgIHNlbGYucmVpbml0aWFsaXplX2NvbW1hbmQoc3ViLCByZWluaXRfc3ViY29tbWFuZHMpCisKKyAgICAgICAgcmV0dXJuIGNvbW1hbmQKKworICAgICMgLS0gTWV0aG9kcyB0aGF0IG9wZXJhdGUgb24gdGhlIERpc3RyaWJ1dGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgcnVuX2NvbW1hbmRzKHNlbGYpOgorICAgICAgICAiIiJSdW4gZWFjaCBjb21tYW5kIHRoYXQgd2FzIHNlZW4gb24gdGhlIHNldHVwIHNjcmlwdCBjb21tYW5kIGxpbmUuCisgICAgICAgIFVzZXMgdGhlIGxpc3Qgb2YgY29tbWFuZHMgZm91bmQgYW5kIGNhY2hlIG9mIGNvbW1hbmQgb2JqZWN0cworICAgICAgICBjcmVhdGVkIGJ5ICdnZXRfY29tbWFuZF9vYmooKScuCisgICAgICAgICIiIgorICAgICAgICBmb3IgY21kIGluIHNlbGYuY29tbWFuZHM6CisgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKGNtZCkKKworICAgICMgLS0gTWV0aG9kcyB0aGF0IG9wZXJhdGUgb24gaXRzIENvbW1hbmRzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgcnVuX2NvbW1hbmQoc2VsZiwgY29tbWFuZCwgb3B0aW9ucz1Ob25lKToKKyAgICAgICAgIiIiRG8gd2hhdGV2ZXIgaXQgdGFrZXMgdG8gcnVuIGEgY29tbWFuZCAoaW5jbHVkaW5nIG5vdGhpbmcgYXQgYWxsLAorICAgICAgICBpZiB0aGUgY29tbWFuZCBoYXMgYWxyZWFkeSBiZWVuIHJ1bikuICBTcGVjaWZpY2FsbHk6IGlmIHdlIGhhdmUKKyAgICAgICAgYWxyZWFkeSBjcmVhdGVkIGFuZCBydW4gdGhlIGNvbW1hbmQgbmFtZWQgYnkgJ2NvbW1hbmQnLCByZXR1cm4KKyAgICAgICAgc2lsZW50bHkgd2l0aG91dCBkb2luZyBhbnl0aGluZy4gIElmIHRoZSBjb21tYW5kIG5hbWVkIGJ5ICdjb21tYW5kJworICAgICAgICBkb2Vzbid0IGV2ZW4gaGF2ZSBhIGNvbW1hbmQgb2JqZWN0IHlldCwgY3JlYXRlIG9uZS4gIFRoZW4gaW52b2tlCisgICAgICAgICdydW4oKScgb24gdGhhdCBjb21tYW5kIG9iamVjdCAob3IgYW4gZXhpc3Rpbmcgb25lKS4KKyAgICAgICAgIiIiCisgICAgICAgICMgQWxyZWFkeSBiZWVuIGhlcmUsIGRvbmUgdGhhdD8gdGhlbiByZXR1cm4gc2lsZW50bHkuCisgICAgICAgIGlmIHNlbGYuaGF2ZV9ydW4uZ2V0KGNvbW1hbmQpOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgaWYgb3B0aW9ucyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuY29tbWFuZF9vcHRpb25zW2NvbW1hbmRdID0gb3B0aW9ucworCisgICAgICAgIGNtZF9vYmogPSBzZWxmLmdldF9jb21tYW5kX29iaihjb21tYW5kKQorICAgICAgICBjbWRfb2JqLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLnJ1bl9jb21tYW5kX2hvb2tzKGNtZF9vYmosICdwcmVfaG9vaycpCisgICAgICAgIGxvZ2dlci5pbmZvKCJydW5uaW5nICVzIiwgY29tbWFuZCkKKyAgICAgICAgY21kX29iai5ydW4oKQorICAgICAgICBzZWxmLnJ1bl9jb21tYW5kX2hvb2tzKGNtZF9vYmosICdwb3N0X2hvb2snKQorICAgICAgICBzZWxmLmhhdmVfcnVuW2NvbW1hbmRdID0gMQorCisgICAgZGVmIHJ1bl9jb21tYW5kX2hvb2tzKHNlbGYsIGNtZF9vYmosIGhvb2tfa2luZCk6CisgICAgICAgICIiIlJ1biBob29rcyByZWdpc3RlcmVkIGZvciB0aGF0IGNvbW1hbmQgYW5kIHBoYXNlLgorCisgICAgICAgICpjbWRfb2JqKiBpcyBhIGZpbmFsaXplZCBjb21tYW5kIG9iamVjdDsgKmhvb2tfa2luZCogaXMgZWl0aGVyCisgICAgICAgICdwcmVfaG9vaycgb3IgJ3Bvc3RfaG9vaycuCisgICAgICAgICIiIgorICAgICAgICBpZiBob29rX2tpbmQgbm90IGluICgncHJlX2hvb2snLCAncG9zdF9ob29rJyk6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdpbnZhbGlkIGhvb2sga2luZDogJXInICUgaG9va19raW5kKQorCisgICAgICAgIGhvb2tzID0gZ2V0YXR0cihjbWRfb2JqLCBob29rX2tpbmQsIE5vbmUpCisKKyAgICAgICAgaWYgaG9va3MgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGZvciBob29rIGluIGhvb2tzLnZhbHVlcygpOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShob29rLCBzdHIpOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgaG9va19vYmogPSByZXNvbHZlX25hbWUoaG9vaykKKyAgICAgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nTW9kdWxlRXJyb3IoZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaG9va19vYmogPSBob29rCisKKyAgICAgICAgICAgIGlmIG5vdCBjYWxsYWJsZShob29rX29iaik6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoJ2hvb2sgJXIgaXMgbm90IGNhbGxhYmxlJyAlIGhvb2spCisKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdydW5uaW5nICVzICVzIGZvciBjb21tYW5kICVzJywKKyAgICAgICAgICAgICAgICAgICAgICAgIGhvb2tfa2luZCwgaG9vaywgY21kX29iai5nZXRfY29tbWFuZF9uYW1lKCkpCisgICAgICAgICAgICBob29rX29iaihjbWRfb2JqKQorCisgICAgIyAtLSBEaXN0cmlidXRpb24gcXVlcnkgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICBkZWYgaGFzX3B1cmVfbW9kdWxlcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIGxlbihzZWxmLnBhY2thZ2VzIG9yIHNlbGYucHlfbW9kdWxlcyBvciBbXSkgPiAwCisKKyAgICBkZWYgaGFzX2V4dF9tb2R1bGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5leHRfbW9kdWxlcyBhbmQgbGVuKHNlbGYuZXh0X21vZHVsZXMpID4gMAorCisgICAgZGVmIGhhc19jX2xpYnJhcmllcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYubGlicmFyaWVzIGFuZCBsZW4oc2VsZi5saWJyYXJpZXMpID4gMAorCisgICAgZGVmIGhhc19tb2R1bGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5oYXNfcHVyZV9tb2R1bGVzKCkgb3Igc2VsZi5oYXNfZXh0X21vZHVsZXMoKQorCisgICAgZGVmIGhhc19oZWFkZXJzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5oZWFkZXJzIGFuZCBsZW4oc2VsZi5oZWFkZXJzKSA+IDAKKworICAgIGRlZiBoYXNfc2NyaXB0cyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuc2NyaXB0cyBhbmQgbGVuKHNlbGYuc2NyaXB0cykgPiAwCisKKyAgICBkZWYgaGFzX2RhdGFfZmlsZXMoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLmRhdGFfZmlsZXMgYW5kIGxlbihzZWxmLmRhdGFfZmlsZXMpID4gMAorCisgICAgZGVmIGlzX3B1cmUoc2VsZik6CisgICAgICAgIHJldHVybiAoc2VsZi5oYXNfcHVyZV9tb2R1bGVzKCkgYW5kCisgICAgICAgICAgICAgICAgbm90IHNlbGYuaGFzX2V4dF9tb2R1bGVzKCkgYW5kCisgICAgICAgICAgICAgICAgbm90IHNlbGYuaGFzX2NfbGlicmFyaWVzKCkpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2Vycm9ycy5weSBiL0xpYi9wYWNrYWdpbmcvZXJyb3JzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4NzgxMjkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2Vycm9ycy5weQpAQCAtMCwwICsxLDEzOCBAQAorIiIiRXhjZXB0aW9ucyB1c2VkIHRocm91Z2hvdXQgdGhlIHBhY2thZ2UuCisKK1N1Ym1vZHVsZXMgb2YgcGFja2FnaW5nIG1heSByYWlzZSBleGNlcHRpb25zIGRlZmluZWQgaW4gdGhpcyBtb2R1bGUgYXMKK3dlbGwgYXMgc3RhbmRhcmQgZXhjZXB0aW9uczsgaW4gcGFydGljdWxhciwgU3lzdGVtRXhpdCBpcyB1c3VhbGx5IHJhaXNlZAorZm9yIGVycm9ycyB0aGF0IGFyZSBvYnZpb3VzbHkgdGhlIGVuZC11c2VyJ3MgZmF1bHQgKGUuZy4gYmFkCitjb21tYW5kLWxpbmUgYXJndW1lbnRzKS4KKyIiIgorCisKK2NsYXNzIFBhY2thZ2luZ0Vycm9yKEV4Y2VwdGlvbik6CisgICAgIiIiVGhlIHJvb3Qgb2YgYWxsIFBhY2thZ2luZyBldmlsLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ01vZHVsZUVycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJVbmFibGUgdG8gbG9hZCBhbiBleHBlY3RlZCBtb2R1bGUsIG9yIHRvIGZpbmQgYW4gZXhwZWN0ZWQgY2xhc3MKKyAgICB3aXRoaW4gc29tZSBtb2R1bGUgKGluIHBhcnRpY3VsYXIsIGNvbW1hbmQgbW9kdWxlcyBhbmQgY2xhc3NlcykuIiIiCisKKworY2xhc3MgUGFja2FnaW5nQ2xhc3NFcnJvcihQYWNrYWdpbmdFcnJvcik6CisgICAgIiIiU29tZSBjb21tYW5kIGNsYXNzIChvciBwb3NzaWJseSBkaXN0cmlidXRpb24gY2xhc3MsIGlmIGFueW9uZQorICAgIGZlZWxzIGEgbmVlZCB0byBzdWJjbGFzcyBEaXN0cmlidXRpb24pIGlzIGZvdW5kIG5vdCB0byBiZSBob2xkaW5nCisgICAgdXAgaXRzIGVuZCBvZiB0aGUgYmFyZ2FpbiwgaWUuIGltcGxlbWVudGluZyBzb21lIHBhcnQgb2YgdGhlCisgICAgImNvbW1hbmQgImludGVyZmFjZS4iIiIKKworCitjbGFzcyBQYWNrYWdpbmdHZXRvcHRFcnJvcihQYWNrYWdpbmdFcnJvcik6CisgICAgIiIiVGhlIG9wdGlvbiB0YWJsZSBwcm92aWRlZCB0byAnZmFuY3lfZ2V0b3B0KCknIGlzIGJvZ3VzLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ0FyZ0Vycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJSYWlzZWQgYnkgZmFuY3lfZ2V0b3B0IGluIHJlc3BvbnNlIHRvIGdldG9wdC5lcnJvciAtLSBpZS4gYW4KKyAgICBlcnJvciBpbiB0aGUgY29tbWFuZCBsaW5lIHVzYWdlLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ0ZpbGVFcnJvcihQYWNrYWdpbmdFcnJvcik6CisgICAgIiIiQW55IHByb2JsZW1zIGluIHRoZSBmaWxlc3lzdGVtOiBleHBlY3RlZCBmaWxlIG5vdCBmb3VuZCwgZXRjLgorICAgIFR5cGljYWxseSB0aGlzIGlzIGZvciBwcm9ibGVtcyB0aGF0IHdlIGRldGVjdCBiZWZvcmUgSU9FcnJvciBvcgorICAgIE9TRXJyb3IgY291bGQgYmUgcmFpc2VkLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ09wdGlvbkVycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJTeW50YWN0aWMvc2VtYW50aWMgZXJyb3JzIGluIGNvbW1hbmQgb3B0aW9ucywgc3VjaCBhcyB1c2Ugb2YKKyAgICBtdXR1YWxseSBjb25mbGljdGluZyBvcHRpb25zLCBvciBpbmNvbnNpc3RlbnQgb3B0aW9ucywKKyAgICBiYWRseS1zcGVsbGVkIHZhbHVlcywgZXRjLiAgTm8gZGlzdGluY3Rpb24gaXMgbWFkZSBiZXR3ZWVuIG9wdGlvbgorICAgIHZhbHVlcyBvcmlnaW5hdGluZyBpbiB0aGUgc2V0dXAgc2NyaXB0LCB0aGUgY29tbWFuZCBsaW5lLCBjb25maWcKKyAgICBmaWxlcywgb3Igd2hhdC1oYXZlLXlvdSAtLSBidXQgaWYgd2UgKmtub3cqIHNvbWV0aGluZyBvcmlnaW5hdGVkIGluCisgICAgdGhlIHNldHVwIHNjcmlwdCwgd2UnbGwgcmFpc2UgUGFja2FnaW5nU2V0dXBFcnJvciBpbnN0ZWFkLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ1NldHVwRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIkZvciBlcnJvcnMgdGhhdCBjYW4gYmUgZGVmaW5pdGVseSBibGFtZWQgb24gdGhlIHNldHVwIHNjcmlwdCwKKyAgICBzdWNoIGFzIGludmFsaWQga2V5d29yZCBhcmd1bWVudHMgdG8gJ3NldHVwKCknLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIldlIGRvbid0IGtub3cgaG93IHRvIGRvIHNvbWV0aGluZyBvbiB0aGUgY3VycmVudCBwbGF0Zm9ybSAoYnV0CisgICAgd2UgZG8ga25vdyBob3cgdG8gZG8gaXQgb24gc29tZSBwbGF0Zm9ybSkgLS0gZWcuIHRyeWluZyB0byBjb21waWxlCisgICAgQyBmaWxlcyBvbiBhIHBsYXRmb3JtIG5vdCBzdXBwb3J0ZWQgYnkgYSBDQ29tcGlsZXIgc3ViY2xhc3MuIiIiCisKKworY2xhc3MgUGFja2FnaW5nRXhlY0Vycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJBbnkgcHJvYmxlbXMgZXhlY3V0aW5nIGFuIGV4dGVybmFsIHByb2dyYW0gKHN1Y2ggYXMgdGhlIEMKKyAgICBjb21waWxlciwgd2hlbiBjb21waWxpbmcgQyBmaWxlcykuIiIiCisKKworY2xhc3MgUGFja2FnaW5nSW50ZXJuYWxFcnJvcihQYWNrYWdpbmdFcnJvcik6CisgICAgIiIiSW50ZXJuYWwgaW5jb25zaXN0ZW5jaWVzIG9yIGltcG9zc2liaWxpdGllcyAob2J2aW91c2x5LCB0aGlzCisgICAgc2hvdWxkIG5ldmVyIGJlIHNlZW4gaWYgdGhlIGNvZGUgaXMgd29ya2luZyEpLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ1RlbXBsYXRlRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIlN5bnRheCBlcnJvciBpbiBhIGZpbGUgbGlzdCB0ZW1wbGF0ZS4iIiIKKworCitjbGFzcyBQYWNrYWdpbmdQeVBJRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIkFueSBwcm9ibGVtIG9jY3VyaW5nIGR1cmluZyB1c2luZyB0aGUgaW5kZXhlcy4iIiIKKworCisjIEV4Y2VwdGlvbiBjbGFzc2VzIHVzZWQgYnkgdGhlIENDb21waWxlciBpbXBsZW1lbnRhdGlvbiBjbGFzc2VzCitjbGFzcyBDQ29tcGlsZXJFcnJvcihFeGNlcHRpb24pOgorICAgICIiIlNvbWUgY29tcGlsZS9saW5rIG9wZXJhdGlvbiBmYWlsZWQuIiIiCisKKworY2xhc3MgUHJlcHJvY2Vzc0Vycm9yKENDb21waWxlckVycm9yKToKKyAgICAiIiJGYWlsdXJlIHRvIHByZXByb2Nlc3Mgb25lIG9yIG1vcmUgQy9DKysgZmlsZXMuIiIiCisKKworY2xhc3MgQ29tcGlsZUVycm9yKENDb21waWxlckVycm9yKToKKyAgICAiIiJGYWlsdXJlIHRvIGNvbXBpbGUgb25lIG9yIG1vcmUgQy9DKysgc291cmNlIGZpbGVzLiIiIgorCisKK2NsYXNzIExpYkVycm9yKENDb21waWxlckVycm9yKToKKyAgICAiIiJGYWlsdXJlIHRvIGNyZWF0ZSBhIHN0YXRpYyBsaWJyYXJ5IGZyb20gb25lIG9yIG1vcmUgQy9DKysgb2JqZWN0CisgICAgZmlsZXMuIiIiCisKKworY2xhc3MgTGlua0Vycm9yKENDb21waWxlckVycm9yKToKKyAgICAiIiJGYWlsdXJlIHRvIGxpbmsgb25lIG9yIG1vcmUgQy9DKysgb2JqZWN0IGZpbGVzIGludG8gYW4gZXhlY3V0YWJsZQorICAgIG9yIHNoYXJlZCBsaWJyYXJ5IGZpbGUuIiIiCisKKworY2xhc3MgVW5rbm93bkZpbGVFcnJvcihDQ29tcGlsZXJFcnJvcik6CisgICAgIiIiQXR0ZW1wdCB0byBwcm9jZXNzIGFuIHVua25vd24gZmlsZSB0eXBlLiIiIgorCisKK2NsYXNzIE1ldGFkYXRhTWlzc2luZ0Vycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJBIHJlcXVpcmVkIG1ldGFkYXRhIGlzIG1pc3NpbmciIiIKKworCitjbGFzcyBNZXRhZGF0YUNvbmZsaWN0RXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIkF0dGVtcHQgdG8gcmVhZCBvciB3cml0ZSBtZXRhZGF0YSBmaWVsZHMgdGhhdCBhcmUgY29uZmxpY3R1YWwuIiIiCisKKworY2xhc3MgTWV0YWRhdGFVbnJlY29nbml6ZWRWZXJzaW9uRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIlVua25vd24gbWV0YWRhdGEgdmVyc2lvbiBudW1iZXIuIiIiCisKKworY2xhc3MgSXJyYXRpb25hbFZlcnNpb25FcnJvcihFeGNlcHRpb24pOgorICAgICIiIlRoaXMgaXMgYW4gaXJyYXRpb25hbCB2ZXJzaW9uLiIiIgorICAgIHBhc3MKKworCitjbGFzcyBIdWdlTWFqb3JWZXJzaW9uTnVtRXJyb3IoSXJyYXRpb25hbFZlcnNpb25FcnJvcik6CisgICAgIiIiQW4gaXJyYXRpb25hbCB2ZXJzaW9uIGJlY2F1c2UgdGhlIG1ham9yIHZlcnNpb24gbnVtYmVyIGlzIGh1Z2UKKyAgICAob2Z0ZW4gYmVjYXVzZSBhIHllYXIgb3IgZGF0ZSB3YXMgdXNlZCkuCisKKyAgICBTZWUgYGVycm9yX29uX2h1Z2VfbWFqb3JfbnVtYCBvcHRpb24gaW4gYE5vcm1hbGl6ZWRWZXJzaW9uYCBmb3IgZGV0YWlscy4KKyAgICBUaGlzIGd1YXJkIGNhbiBiZSBkaXNhYmxlZCBieSBzZXR0aW5nIHRoYXQgb3B0aW9uIEZhbHNlLgorICAgICIiIgorICAgIHBhc3MKKworCitjbGFzcyBJbnN0YWxsYXRpb25FeGNlcHRpb24oRXhjZXB0aW9uKToKKyAgICAiIiJCYXNlIGV4Y2VwdGlvbiBmb3IgaW5zdGFsbGF0aW9uIHNjcmlwdHMiIiIKKworCitjbGFzcyBJbnN0YWxsYXRpb25Db25mbGljdChJbnN0YWxsYXRpb25FeGNlcHRpb24pOgorICAgICIiIlJhaXNlZCB3aGVuIGEgY29uZmxpY3QgaXMgZGV0ZWN0ZWQiIiIKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvZmFuY3lfZ2V0b3B0LnB5IGIvTGliL3BhY2thZ2luZy9mYW5jeV9nZXRvcHQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjFkZDVmYwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvZmFuY3lfZ2V0b3B0LnB5CkBAIC0wLDAgKzEsMzg4IEBACisiIiJDb21tYW5kIGxpbmUgcGFyc2luZyBtYWNoaW5lcnkuCisKK1RoZSBGYW5jeUdldG9wdCBjbGFzcyBpcyBhIFdyYXBwZXIgYXJvdW5kIHRoZSBnZXRvcHQgbW9kdWxlIHRoYXQKK3Byb3ZpZGVzIHRoZSBmb2xsb3dpbmcgYWRkaXRpb25hbCBmZWF0dXJlczoKKyAgKiBzaG9ydCBhbmQgbG9uZyBvcHRpb25zIGFyZSB0aWVkIHRvZ2V0aGVyCisgICogb3B0aW9ucyBoYXZlIGhlbHAgc3RyaW5ncywgc28gZmFuY3lfZ2V0b3B0IGNvdWxkIHBvdGVudGlhbGx5CisgICAgY3JlYXRlIGEgY29tcGxldGUgdXNhZ2Ugc3VtbWFyeQorICAqIG9wdGlvbnMgc2V0IGF0dHJpYnV0ZXMgb2YgYSBwYXNzZWQtaW4gb2JqZWN0LgorCitJdCBpcyB1c2VkIHVuZGVyIHRoZSBob29kIGJ5IHRoZSBjb21tYW5kIGNsYXNzZXMuICBEbyBub3QgdXNlIGRpcmVjdGx5LgorIiIiCisKK2ltcG9ydCBnZXRvcHQKK2ltcG9ydCByZQoraW1wb3J0IHN5cworaW1wb3J0IHRleHR3cmFwCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nR2V0b3B0RXJyb3IsIFBhY2thZ2luZ0FyZ0Vycm9yCisKKyMgTXVjaCBsaWtlIGNvbW1hbmRfcmUgaW4gcGFja2FnaW5nLmNvcmUsIHRoaXMgaXMgY2xvc2UgdG8gYnV0IG5vdCBxdWl0ZQorIyB0aGUgc2FtZSBhcyBhIFB5dGhvbiBOQU1FIC0tIGV4Y2VwdCwgaW4gdGhlIHNwaXJpdCBvZiBtb3N0IEdOVQorIyB1dGlsaXRpZXMsIHdlIHVzZSAnLScgaW4gcGxhY2Ugb2YgJ18nLiAgKFRoZSBzcGlyaXQgb2YgTElTUCBsaXZlcyBvbiEpCisjIFRoZSBzaW1pbGFyaXRpZXMgdG8gTkFNRSBhcmUgYWdhaW4gbm90IGEgY29pbmNpZGVuY2UuLi4KK2xvbmdvcHRfcGF0ID0gcidbYS16QS1aXSg/OlthLXpBLVowLTktXSopJworbG9uZ29wdF9yZSA9IHJlLmNvbXBpbGUocideJXMkJyAlIGxvbmdvcHRfcGF0KQorCisjIEZvciByZWNvZ25pemluZyAibmVnYXRpdmUgYWxpYXMiIG9wdGlvbnMsIGVnLiAicXVpZXQ9IXZlcmJvc2UiCituZWdfYWxpYXNfcmUgPSByZS5jb21waWxlKCJeKCVzKT0hKCVzKSQiICUgKGxvbmdvcHRfcGF0LCBsb25nb3B0X3BhdCkpCisKKworY2xhc3MgRmFuY3lHZXRvcHQ6CisgICAgIiIiV3JhcHBlciBhcm91bmQgdGhlIHN0YW5kYXJkICdnZXRvcHQoKScgbW9kdWxlIHRoYXQgcHJvdmlkZXMgc29tZQorICAgIGhhbmR5IGV4dHJhIGZ1bmN0aW9uYWxpdHk6CisgICAgICAqIHNob3J0IGFuZCBsb25nIG9wdGlvbnMgYXJlIHRpZWQgdG9nZXRoZXIKKyAgICAgICogb3B0aW9ucyBoYXZlIGhlbHAgc3RyaW5ncywgYW5kIGhlbHAgdGV4dCBjYW4gYmUgYXNzZW1ibGVkCisgICAgICAgIGZyb20gdGhlbQorICAgICAgKiBvcHRpb25zIHNldCBhdHRyaWJ1dGVzIG9mIGEgcGFzc2VkLWluIG9iamVjdAorICAgICAgKiBib29sZWFuIG9wdGlvbnMgY2FuIGhhdmUgIm5lZ2F0aXZlIGFsaWFzZXMiIC0tIGVnLiBpZgorICAgICAgICAtLXF1aWV0IGlzIHRoZSAibmVnYXRpdmUgYWxpYXMiIG9mIC0tdmVyYm9zZSwgdGhlbiAiLS1xdWlldCIKKyAgICAgICAgb24gdGhlIGNvbW1hbmQgbGluZSBzZXRzICd2ZXJib3NlJyB0byBmYWxzZQorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG9wdGlvbl90YWJsZT1Ob25lKToKKworICAgICAgICAjIFRoZSBvcHRpb24gdGFibGUgaXMgKGN1cnJlbnRseSkgYSBsaXN0IG9mIHR1cGxlcy4gIFRoZQorICAgICAgICAjIHR1cGxlcyBtYXkgaGF2ZSAzIG9yIGZvdXIgdmFsdWVzOgorICAgICAgICAjICAgKGxvbmdfb3B0aW9uLCBzaG9ydF9vcHRpb24sIGhlbHBfc3RyaW5nIFssIHJlcGVhdGFibGVdKQorICAgICAgICAjIGlmIGFuIG9wdGlvbiB0YWtlcyBhbiBhcmd1bWVudCwgaXRzIGxvbmdfb3B0aW9uIHNob3VsZCBoYXZlICc9JworICAgICAgICAjIGFwcGVuZGVkOyBzaG9ydF9vcHRpb24gc2hvdWxkIGp1c3QgYmUgYSBzaW5nbGUgY2hhcmFjdGVyLCBubyAnOicKKyAgICAgICAgIyBpbiBhbnkgY2FzZS4gIElmIGEgbG9uZ19vcHRpb24gZG9lc24ndCBoYXZlIGEgY29ycmVzcG9uZGluZworICAgICAgICAjIHNob3J0X29wdGlvbiwgc2hvcnRfb3B0aW9uIHNob3VsZCBiZSBOb25lLiAgQWxsIG9wdGlvbiB0dXBsZXMKKyAgICAgICAgIyBtdXN0IGhhdmUgbG9uZyBvcHRpb25zLgorICAgICAgICBzZWxmLm9wdGlvbl90YWJsZSA9IG9wdGlvbl90YWJsZQorCisgICAgICAgICMgJ29wdGlvbl9pbmRleCcgbWFwcyBsb25nIG9wdGlvbiBuYW1lcyB0byBlbnRyaWVzIGluIHRoZSBvcHRpb24KKyAgICAgICAgIyB0YWJsZSAoaWUuIHRob3NlIDMtdHVwbGVzKS4KKyAgICAgICAgc2VsZi5vcHRpb25faW5kZXggPSB7fQorICAgICAgICBpZiBzZWxmLm9wdGlvbl90YWJsZToKKyAgICAgICAgICAgIHNlbGYuX2J1aWxkX2luZGV4KCkKKworICAgICAgICAjICdhbGlhcycgcmVjb3JkcyAoZHVoKSBhbGlhcyBvcHRpb25zOyB7J2Zvbyc6ICdiYXInfSBtZWFucworICAgICAgICAjIC0tZm9vIGlzIGFuIGFsaWFzIGZvciAtLWJhcgorICAgICAgICBzZWxmLmFsaWFzID0ge30KKworICAgICAgICAjICduZWdhdGl2ZV9hbGlhcycga2VlcHMgdHJhY2sgb2Ygb3B0aW9ucyB0aGF0IGFyZSB0aGUgYm9vbGVhbgorICAgICAgICAjIG9wcG9zaXRlIG9mIHNvbWUgb3RoZXIgb3B0aW9uCisgICAgICAgIHNlbGYubmVnYXRpdmVfYWxpYXMgPSB7fQorCisgICAgICAgICMgVGhlc2Uga2VlcCB0cmFjayBvZiB0aGUgaW5mb3JtYXRpb24gaW4gdGhlIG9wdGlvbiB0YWJsZS4gIFdlCisgICAgICAgICMgZG9uJ3QgYWN0dWFsbHkgcG9wdWxhdGUgdGhlc2Ugc3RydWN0dXJlcyB1bnRpbCB3ZSdyZSByZWFkeSB0bworICAgICAgICAjIHBhcnNlIHRoZSBjb21tYW5kIGxpbmUsIHNpbmNlIHRoZSAnb3B0aW9uX3RhYmxlJyBwYXNzZWQgaW4gaGVyZQorICAgICAgICAjIGlzbid0IG5lY2Vzc2FyaWx5IHRoZSBmaW5hbCB3b3JkLgorICAgICAgICBzZWxmLnNob3J0X29wdHMgPSBbXQorICAgICAgICBzZWxmLmxvbmdfb3B0cyA9IFtdCisgICAgICAgIHNlbGYuc2hvcnQybG9uZyA9IHt9CisgICAgICAgIHNlbGYuYXR0cl9uYW1lID0ge30KKyAgICAgICAgc2VsZi50YWtlc19hcmcgPSB7fQorCisgICAgICAgICMgQW5kICdvcHRpb25fb3JkZXInIGlzIGZpbGxlZCB1cCBpbiAnZ2V0b3B0KCknOyBpdCByZWNvcmRzIHRoZQorICAgICAgICAjIG9yaWdpbmFsIG9yZGVyIG9mIG9wdGlvbnMgKGFuZCB0aGVpciB2YWx1ZXMpIG9uIHRoZSBjb21tYW5kIGxpbmUsCisgICAgICAgICMgYnV0IGV4cGFuZHMgc2hvcnQgb3B0aW9ucywgY29udmVydHMgYWxpYXNlcywgZXRjLgorICAgICAgICBzZWxmLm9wdGlvbl9vcmRlciA9IFtdCisKKyAgICBkZWYgX2J1aWxkX2luZGV4KHNlbGYpOgorICAgICAgICBzZWxmLm9wdGlvbl9pbmRleC5jbGVhcigpCisgICAgICAgIGZvciBvcHRpb24gaW4gc2VsZi5vcHRpb25fdGFibGU6CisgICAgICAgICAgICBzZWxmLm9wdGlvbl9pbmRleFtvcHRpb25bMF1dID0gb3B0aW9uCisKKyAgICBkZWYgc2V0X29wdGlvbl90YWJsZShzZWxmLCBvcHRpb25fdGFibGUpOgorICAgICAgICBzZWxmLm9wdGlvbl90YWJsZSA9IG9wdGlvbl90YWJsZQorICAgICAgICBzZWxmLl9idWlsZF9pbmRleCgpCisKKyAgICBkZWYgYWRkX29wdGlvbihzZWxmLCBsb25nX29wdGlvbiwgc2hvcnRfb3B0aW9uPU5vbmUsIGhlbHBfc3RyaW5nPU5vbmUpOgorICAgICAgICBpZiBsb25nX29wdGlvbiBpbiBzZWxmLm9wdGlvbl9pbmRleDoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0dldG9wdEVycm9yKAorICAgICAgICAgICAgICAgICAgIm9wdGlvbiBjb25mbGljdDogYWxyZWFkeSBhbiBvcHRpb24gJyVzJyIgJSBsb25nX29wdGlvbikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG9wdGlvbiA9IChsb25nX29wdGlvbiwgc2hvcnRfb3B0aW9uLCBoZWxwX3N0cmluZykKKyAgICAgICAgICAgIHNlbGYub3B0aW9uX3RhYmxlLmFwcGVuZChvcHRpb24pCisgICAgICAgICAgICBzZWxmLm9wdGlvbl9pbmRleFtsb25nX29wdGlvbl0gPSBvcHRpb24KKworICAgIGRlZiBoYXNfb3B0aW9uKHNlbGYsIGxvbmdfb3B0aW9uKToKKyAgICAgICAgIiIiUmV0dXJuIHRydWUgaWYgdGhlIG9wdGlvbiB0YWJsZSBmb3IgdGhpcyBwYXJzZXIgaGFzIGFuCisgICAgICAgIG9wdGlvbiB3aXRoIGxvbmcgbmFtZSAnbG9uZ19vcHRpb24nLiIiIgorICAgICAgICByZXR1cm4gbG9uZ19vcHRpb24gaW4gc2VsZi5vcHRpb25faW5kZXgKKworICAgIGRlZiBfY2hlY2tfYWxpYXNfZGljdChzZWxmLCBhbGlhc2VzLCB3aGF0KToKKyAgICAgICAgYXNzZXJ0IGlzaW5zdGFuY2UoYWxpYXNlcywgZGljdCkKKyAgICAgICAgZm9yIGFsaWFzLCBvcHQgaW4gYWxpYXNlcy5pdGVtcygpOgorICAgICAgICAgICAgaWYgYWxpYXMgbm90IGluIHNlbGYub3B0aW9uX2luZGV4OgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0dldG9wdEVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCAlcyAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICJvcHRpb24gJyVzJyBub3QgZGVmaW5lZCIpICUgKHdoYXQsIGFsaWFzLCBhbGlhcykpCisgICAgICAgICAgICBpZiBvcHQgbm90IGluIHNlbGYub3B0aW9uX2luZGV4OgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0dldG9wdEVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCAlcyAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICJhbGlhc2VkIG9wdGlvbiAnJXMnIG5vdCBkZWZpbmVkIikgJSAod2hhdCwgYWxpYXMsIG9wdCkpCisKKyAgICBkZWYgc2V0X2FsaWFzZXMoc2VsZiwgYWxpYXMpOgorICAgICAgICAiIiJTZXQgdGhlIGFsaWFzZXMgZm9yIHRoaXMgb3B0aW9uIHBhcnNlci4iIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfYWxpYXNfZGljdChhbGlhcywgImFsaWFzIikKKyAgICAgICAgc2VsZi5hbGlhcyA9IGFsaWFzCisKKyAgICBkZWYgc2V0X25lZ2F0aXZlX2FsaWFzZXMoc2VsZiwgbmVnYXRpdmVfYWxpYXMpOgorICAgICAgICAiIiJTZXQgdGhlIG5lZ2F0aXZlIGFsaWFzZXMgZm9yIHRoaXMgb3B0aW9uIHBhcnNlci4KKyAgICAgICAgJ25lZ2F0aXZlX2FsaWFzJyBzaG91bGQgYmUgYSBkaWN0aW9uYXJ5IG1hcHBpbmcgb3B0aW9uIG5hbWVzIHRvCisgICAgICAgIG9wdGlvbiBuYW1lcywgYm90aCB0aGUga2V5IGFuZCB2YWx1ZSBtdXN0IGFscmVhZHkgYmUgZGVmaW5lZAorICAgICAgICBpbiB0aGUgb3B0aW9uIHRhYmxlLiIiIgorICAgICAgICBzZWxmLl9jaGVja19hbGlhc19kaWN0KG5lZ2F0aXZlX2FsaWFzLCAibmVnYXRpdmUgYWxpYXMiKQorICAgICAgICBzZWxmLm5lZ2F0aXZlX2FsaWFzID0gbmVnYXRpdmVfYWxpYXMKKworICAgIGRlZiBfZ3Jva19vcHRpb25fdGFibGUoc2VsZik6CisgICAgICAgICIiIlBvcHVsYXRlIHRoZSB2YXJpb3VzIGRhdGEgc3RydWN0dXJlcyB0aGF0IGtlZXAgdGFicyBvbiB0aGUKKyAgICAgICAgb3B0aW9uIHRhYmxlLiAgQ2FsbGVkIGJ5ICdnZXRvcHQoKScgYmVmb3JlIGl0IGNhbiBkbyBhbnl0aGluZworICAgICAgICB3b3J0aHdoaWxlLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5sb25nX29wdHMgPSBbXQorICAgICAgICBzZWxmLnNob3J0X29wdHMgPSBbXQorICAgICAgICBzZWxmLnNob3J0MmxvbmcuY2xlYXIoKQorICAgICAgICBzZWxmLnJlcGVhdCA9IHt9CisKKyAgICAgICAgZm9yIG9wdGlvbiBpbiBzZWxmLm9wdGlvbl90YWJsZToKKyAgICAgICAgICAgIGlmIGxlbihvcHRpb24pID09IDM6CisgICAgICAgICAgICAgICAgbG9uZ29wdCwgc2hvcnQsIGhlbHAgPSBvcHRpb24KKyAgICAgICAgICAgICAgICByZXBlYXQgPSAwCisgICAgICAgICAgICBlbGlmIGxlbihvcHRpb24pID09IDQ6CisgICAgICAgICAgICAgICAgbG9uZ29wdCwgc2hvcnQsIGhlbHAsIHJlcGVhdCA9IG9wdGlvbgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIHRoZSBvcHRpb24gdGFibGUgaXMgcGFydCBvZiB0aGUgY29kZSwgc28gc2ltcGx5CisgICAgICAgICAgICAgICAgIyBhc3NlcnQgdGhhdCBpdCBpcyBjb3JyZWN0CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiaW52YWxpZCBvcHRpb24gdHVwbGU6ICVyIiAlIG9wdGlvbikKKworICAgICAgICAgICAgIyBUeXBlLSBhbmQgdmFsdWUtY2hlY2sgdGhlIG9wdGlvbiBuYW1lcworICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UobG9uZ29wdCwgc3RyKSBvciBsZW4obG9uZ29wdCkgPCAyOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0dldG9wdEVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCBsb25nIG9wdGlvbiAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgc3RyaW5nIG9mIGxlbmd0aCA+PSAyIikgJSBsb25nb3B0KQorCisgICAgICAgICAgICBpZiAobm90ICgoc2hvcnQgaXMgTm9uZSkgb3IKKyAgICAgICAgICAgICAgICAgICAgIChpc2luc3RhbmNlKHNob3J0LCBzdHIpIGFuZCBsZW4oc2hvcnQpID09IDEpKSk6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nR2V0b3B0RXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgKCJpbnZhbGlkIHNob3J0IG9wdGlvbiAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgc2luZ2xlIGNoYXJhY3RlciBvciBOb25lIikgJSBzaG9ydCkKKworICAgICAgICAgICAgc2VsZi5yZXBlYXRbbG9uZ29wdF0gPSByZXBlYXQKKyAgICAgICAgICAgIHNlbGYubG9uZ19vcHRzLmFwcGVuZChsb25nb3B0KQorCisgICAgICAgICAgICBpZiBsb25nb3B0Wy0xXSA9PSAnPSc6ICAgICAgICAgICAgICMgb3B0aW9uIHRha2VzIGFuIGFyZ3VtZW50PworICAgICAgICAgICAgICAgIGlmIHNob3J0OgorICAgICAgICAgICAgICAgICAgICBzaG9ydCA9IHNob3J0ICsgJzonCisgICAgICAgICAgICAgICAgbG9uZ29wdCA9IGxvbmdvcHRbMDotMV0KKyAgICAgICAgICAgICAgICBzZWxmLnRha2VzX2FyZ1tsb25nb3B0XSA9IDEKKyAgICAgICAgICAgIGVsc2U6CisKKyAgICAgICAgICAgICAgICAjIElzIG9wdGlvbiBpcyBhICJuZWdhdGl2ZSBhbGlhcyIgZm9yIHNvbWUgb3RoZXIgb3B0aW9uIChlZy4KKyAgICAgICAgICAgICAgICAjICJxdWlldCIgPT0gIiF2ZXJib3NlIik/CisgICAgICAgICAgICAgICAgYWxpYXNfdG8gPSBzZWxmLm5lZ2F0aXZlX2FsaWFzLmdldChsb25nb3B0KQorICAgICAgICAgICAgICAgIGlmIGFsaWFzX3RvIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLnRha2VzX2FyZ1thbGlhc190b106CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdHZXRvcHRFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCBuZWdhdGl2ZSBhbGlhcyAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFsaWFzZWQgb3B0aW9uICclcycgdGFrZXMgYSB2YWx1ZSIpICUgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsb25nb3B0LCBhbGlhc190bykpCisKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5sb25nX29wdHNbLTFdID0gbG9uZ29wdCAgICMgWFhYIHJlZHVuZGFudD8hCisgICAgICAgICAgICAgICAgICAgIHNlbGYudGFrZXNfYXJnW2xvbmdvcHRdID0gMAorCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi50YWtlc19hcmdbbG9uZ29wdF0gPSAwCisKKyAgICAgICAgICAgICMgSWYgdGhpcyBpcyBhbiBhbGlhcyBvcHRpb24sIG1ha2Ugc3VyZSBpdHMgInRha2VzIGFyZyIgZmxhZyBpcworICAgICAgICAgICAgIyB0aGUgc2FtZSBhcyB0aGUgb3B0aW9uIGl0J3MgYWxpYXNlZCB0by4KKyAgICAgICAgICAgIGFsaWFzX3RvID0gc2VsZi5hbGlhcy5nZXQobG9uZ29wdCkKKyAgICAgICAgICAgIGlmIGFsaWFzX3RvIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGlmIHNlbGYudGFrZXNfYXJnW2xvbmdvcHRdICE9IHNlbGYudGFrZXNfYXJnW2FsaWFzX3RvXToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nR2V0b3B0RXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCBhbGlhcyAnJXMnOiBpbmNvbnNpc3RlbnQgd2l0aCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiYWxpYXNlZCBvcHRpb24gJyVzJyAob25lIG9mIHRoZW0gdGFrZXMgYSB2YWx1ZSwgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgInRoZSBvdGhlciBkb2Vzbid0IikgJSAobG9uZ29wdCwgYWxpYXNfdG8pKQorCisgICAgICAgICAgICAjIE5vdyBlbmZvcmNlIHNvbWUgYm9uZGFnZSBvbiB0aGUgbG9uZyBvcHRpb24gbmFtZSwgc28gd2UgY2FuCisgICAgICAgICAgICAjIGxhdGVyIHRyYW5zbGF0ZSBpdCB0byBhbiBhdHRyaWJ1dGUgbmFtZSBvbiBzb21lIG9iamVjdC4gIEhhdmUKKyAgICAgICAgICAgICMgdG8gZG8gdGhpcyBhIGJpdCBsYXRlIHRvIG1ha2Ugc3VyZSB3ZSd2ZSByZW1vdmVkIGFueSB0cmFpbGluZworICAgICAgICAgICAgIyAnPScuCisgICAgICAgICAgICBpZiBub3QgbG9uZ29wdF9yZS5tYXRjaChsb25nb3B0KToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdHZXRvcHRFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAoImludmFsaWQgbG9uZyBvcHRpb24gbmFtZSAnJXMnICIgKworICAgICAgICAgICAgICAgICAgICAgICAiKG11c3QgYmUgbGV0dGVycywgbnVtYmVycywgaHlwaGVucyBvbmx5IikgJSBsb25nb3B0KQorCisgICAgICAgICAgICBzZWxmLmF0dHJfbmFtZVtsb25nb3B0XSA9IGxvbmdvcHQucmVwbGFjZSgnLScsICdfJykKKyAgICAgICAgICAgIGlmIHNob3J0OgorICAgICAgICAgICAgICAgIHNlbGYuc2hvcnRfb3B0cy5hcHBlbmQoc2hvcnQpCisgICAgICAgICAgICAgICAgc2VsZi5zaG9ydDJsb25nW3Nob3J0WzBdXSA9IGxvbmdvcHQKKworICAgIGRlZiBnZXRvcHQoc2VsZiwgYXJncz1Ob25lLCBvYmplY3Q9Tm9uZSk6CisgICAgICAgICIiIlBhcnNlIGNvbW1hbmQtbGluZSBvcHRpb25zIGluIGFyZ3MuIFN0b3JlIGFzIGF0dHJpYnV0ZXMgb24gb2JqZWN0LgorCisgICAgICAgIElmICdhcmdzJyBpcyBOb25lIG9yIG5vdCBzdXBwbGllZCwgdXNlcyAnc3lzLmFyZ3ZbMTpdJy4gIElmCisgICAgICAgICdvYmplY3QnIGlzIE5vbmUgb3Igbm90IHN1cHBsaWVkLCBjcmVhdGVzIGEgbmV3IE9wdGlvbkR1bW15CisgICAgICAgIG9iamVjdCwgc3RvcmVzIG9wdGlvbiB2YWx1ZXMgdGhlcmUsIGFuZCByZXR1cm5zIGEgdHVwbGUgKGFyZ3MsCisgICAgICAgIG9iamVjdCkuICBJZiAnb2JqZWN0JyBpcyBzdXBwbGllZCwgaXQgaXMgbW9kaWZpZWQgaW4gcGxhY2UgYW5kCisgICAgICAgICdnZXRvcHQoKScganVzdCByZXR1cm5zICdhcmdzJzsgaW4gYm90aCBjYXNlcywgdGhlIHJldHVybmVkCisgICAgICAgICdhcmdzJyBpcyBhIG1vZGlmaWVkIGNvcHkgb2YgdGhlIHBhc3NlZC1pbiAnYXJncycgbGlzdCwgd2hpY2gKKyAgICAgICAgaXMgbGVmdCB1bnRvdWNoZWQuCisgICAgICAgICIiIgorICAgICAgICBpZiBhcmdzIGlzIE5vbmU6CisgICAgICAgICAgICBhcmdzID0gc3lzLmFyZ3ZbMTpdCisgICAgICAgIGlmIG9iamVjdCBpcyBOb25lOgorICAgICAgICAgICAgb2JqZWN0ID0gT3B0aW9uRHVtbXkoKQorICAgICAgICAgICAgY3JlYXRlZF9vYmplY3QgPSAxCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBjcmVhdGVkX29iamVjdCA9IDAKKworICAgICAgICBzZWxmLl9ncm9rX29wdGlvbl90YWJsZSgpCisKKyAgICAgICAgc2hvcnRfb3B0cyA9ICcgJy5qb2luKHNlbGYuc2hvcnRfb3B0cykKKworICAgICAgICB0cnk6CisgICAgICAgICAgICBvcHRzLCBhcmdzID0gZ2V0b3B0LmdldG9wdChhcmdzLCBzaG9ydF9vcHRzLCBzZWxmLmxvbmdfb3B0cykKKyAgICAgICAgZXhjZXB0IGdldG9wdC5lcnJvciBhcyBtc2c6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdBcmdFcnJvcihtc2cpCisKKyAgICAgICAgZm9yIG9wdCwgdmFsIGluIG9wdHM6CisgICAgICAgICAgICBpZiBsZW4ob3B0KSA9PSAyIGFuZCBvcHRbMF0gPT0gJy0nOiAgICMgaXQncyBhIHNob3J0IG9wdGlvbgorICAgICAgICAgICAgICAgIG9wdCA9IHNlbGYuc2hvcnQybG9uZ1tvcHRbMV1dCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGFzc2VydCBsZW4ob3B0KSA+IDIgYW5kIG9wdFs6Ml0gPT0gJy0tJworICAgICAgICAgICAgICAgIG9wdCA9IG9wdFsyOl0KKworICAgICAgICAgICAgYWxpYXMgPSBzZWxmLmFsaWFzLmdldChvcHQpCisgICAgICAgICAgICBpZiBhbGlhczoKKyAgICAgICAgICAgICAgICBvcHQgPSBhbGlhcworCisgICAgICAgICAgICBpZiBub3Qgc2VsZi50YWtlc19hcmdbb3B0XTogICAgICMgYm9vbGVhbiBvcHRpb24/CisgICAgICAgICAgICAgICAgYXNzZXJ0IHZhbCA9PSAnJywgImJvb2xlYW4gb3B0aW9uIGNhbid0IGhhdmUgdmFsdWUiCisgICAgICAgICAgICAgICAgYWxpYXMgPSBzZWxmLm5lZ2F0aXZlX2FsaWFzLmdldChvcHQpCisgICAgICAgICAgICAgICAgaWYgYWxpYXM6CisgICAgICAgICAgICAgICAgICAgIG9wdCA9IGFsaWFzCisgICAgICAgICAgICAgICAgICAgIHZhbCA9IDAKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICB2YWwgPSAxCisKKyAgICAgICAgICAgIGF0dHIgPSBzZWxmLmF0dHJfbmFtZVtvcHRdCisgICAgICAgICAgICAjIFRoZSBvbmx5IHJlcGVhdGluZyBvcHRpb24gYXQgdGhlIG1vbWVudCBpcyAndmVyYm9zZScuCisgICAgICAgICAgICAjIEl0IGhhcyBhIG5lZ2F0aXZlIG9wdGlvbiAtcSBxdWlldCwgd2hpY2ggc2hvdWxkIHNldCB2ZXJib3NlID0gMC4KKyAgICAgICAgICAgIGlmIHZhbCBhbmQgc2VsZi5yZXBlYXQuZ2V0KGF0dHIpIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHZhbCA9IGdldGF0dHIob2JqZWN0LCBhdHRyLCAwKSArIDEKKyAgICAgICAgICAgIHNldGF0dHIob2JqZWN0LCBhdHRyLCB2YWwpCisgICAgICAgICAgICBzZWxmLm9wdGlvbl9vcmRlci5hcHBlbmQoKG9wdCwgdmFsKSkKKworICAgICAgICAjIGZvciBvcHRzCisgICAgICAgIGlmIGNyZWF0ZWRfb2JqZWN0OgorICAgICAgICAgICAgcmV0dXJuIGFyZ3MsIG9iamVjdAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIGFyZ3MKKworICAgIGRlZiBnZXRfb3B0aW9uX29yZGVyKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm5zIHRoZSBsaXN0IG9mIChvcHRpb24sIHZhbHVlKSB0dXBsZXMgcHJvY2Vzc2VkIGJ5IHRoZQorICAgICAgICBwcmV2aW91cyBydW4gb2YgJ2dldG9wdCgpJy4gIFJhaXNlcyBSdW50aW1lRXJyb3IgaWYKKyAgICAgICAgJ2dldG9wdCgpJyBoYXNuJ3QgYmVlbiBjYWxsZWQgeWV0LgorICAgICAgICAiIiIKKyAgICAgICAgaWYgc2VsZi5vcHRpb25fb3JkZXIgaXMgTm9uZToKKyAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiJ2dldG9wdCgpJyBoYXNuJ3QgYmVlbiBjYWxsZWQgeWV0IikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBzZWxmLm9wdGlvbl9vcmRlcgorCisgICAgICAgIHJldHVybiBzZWxmLm9wdGlvbl9vcmRlcgorCisgICAgZGVmIGdlbmVyYXRlX2hlbHAoc2VsZiwgaGVhZGVyPU5vbmUpOgorICAgICAgICAiIiJHZW5lcmF0ZSBoZWxwIHRleHQgKGEgbGlzdCBvZiBzdHJpbmdzLCBvbmUgcGVyIHN1Z2dlc3RlZCBsaW5lIG9mCisgICAgICAgIG91dHB1dCkgZnJvbSB0aGUgb3B0aW9uIHRhYmxlIGZvciB0aGlzIEZhbmN5R2V0b3B0IG9iamVjdC4KKyAgICAgICAgIiIiCisgICAgICAgICMgQmxpdGhlbHkgYXNzdW1lIHRoZSBvcHRpb24gdGFibGUgaXMgZ29vZDogcHJvYmFibHkgd291bGRuJ3QgY2FsbAorICAgICAgICAjICdnZW5lcmF0ZV9oZWxwKCknIHVubGVzcyB5b3UndmUgYWxyZWFkeSBjYWxsZWQgJ2dldG9wdCgpJy4KKworICAgICAgICAjIEZpcnN0IHBhc3M6IGRldGVybWluZSBtYXhpbXVtIGxlbmd0aCBvZiBsb25nIG9wdGlvbiBuYW1lcworICAgICAgICBtYXhfb3B0ID0gMAorICAgICAgICBmb3Igb3B0aW9uIGluIHNlbGYub3B0aW9uX3RhYmxlOgorICAgICAgICAgICAgbG9uZ29wdCA9IG9wdGlvblswXQorICAgICAgICAgICAgc2hvcnQgPSBvcHRpb25bMV0KKyAgICAgICAgICAgIGwgPSBsZW4obG9uZ29wdCkKKyAgICAgICAgICAgIGlmIGxvbmdvcHRbLTFdID09ICc9JzoKKyAgICAgICAgICAgICAgICBsID0gbCAtIDEKKyAgICAgICAgICAgIGlmIHNob3J0IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGwgPSBsICsgNSAgICAgICAgICAgICAgICAgICAjICIgKC14KSIgd2hlcmUgc2hvcnQgPT0gJ3gnCisgICAgICAgICAgICBpZiBsID4gbWF4X29wdDoKKyAgICAgICAgICAgICAgICBtYXhfb3B0ID0gbAorCisgICAgICAgIG9wdF93aWR0aCA9IG1heF9vcHQgKyAyICsgMiArIDIgICAgICMgcm9vbSBmb3IgaW5kZW50ICsgZGFzaGVzICsgZ3V0dGVyCisKKyAgICAgICAgIyBUeXBpY2FsIGhlbHAgYmxvY2sgbG9va3MgbGlrZSB0aGlzOgorICAgICAgICAjICAgLS1mb28gICAgICAgY29udHJvbHMgZm9vbmFidWxhdGlvbgorICAgICAgICAjIEhlbHAgYmxvY2sgZm9yIGxvbmdlc3Qgb3B0aW9uIGxvb2tzIGxpa2UgdGhpczoKKyAgICAgICAgIyAgIC0tZmxpbWZsYW0gIHNldCB0aGUgZmxpbS1mbGFtIGxldmVsCisgICAgICAgICMgYW5kIHdpdGggd3JhcHBlZCB0ZXh0OgorICAgICAgICAjICAgLS1mbGltZmxhbSAgc2V0IHRoZSBmbGltLWZsYW0gbGV2ZWwgKG11c3QgYmUgYmV0d2VlbgorICAgICAgICAjICAgICAgICAgICAgICAgMCBhbmQgMTAwLCBleGNlcHQgb24gVHVlc2RheXMpCisgICAgICAgICMgT3B0aW9ucyB3aXRoIHNob3J0IG5hbWVzIHdpbGwgaGF2ZSB0aGUgc2hvcnQgbmFtZSBzaG93biAoYnV0CisgICAgICAgICMgaXQgZG9lc24ndCBjb250cmlidXRlIHRvIG1heF9vcHQpOgorICAgICAgICAjICAgLS1mb28gKC1mKSAgY29udHJvbHMgZm9vbmFidWxhdGlvbgorICAgICAgICAjIElmIGFkZGluZyB0aGUgc2hvcnQgb3B0aW9uIHdvdWxkIG1ha2UgdGhlIGxlZnQgY29sdW1uIHRvbyB3aWRlLAorICAgICAgICAjIHdlIHB1c2ggdGhlIGV4cGxhbmF0aW9uIG9mZiB0byB0aGUgbmV4dCBsaW5lCisgICAgICAgICMgICAtLWZsaW1mbGFtICgtbCkKKyAgICAgICAgIyAgICAgICAgICAgICAgIHNldCB0aGUgZmxpbS1mbGFtIGxldmVsCisgICAgICAgICMgSW1wb3J0YW50IHBhcmFtZXRlcnM6CisgICAgICAgICMgICAtIDIgc3BhY2VzIGJlZm9yZSBvcHRpb24gYmxvY2sgc3RhcnQgbGluZXMKKyAgICAgICAgIyAgIC0gMiBkYXNoZXMgZm9yIGVhY2ggbG9uZyBvcHRpb24gbmFtZQorICAgICAgICAjICAgLSBtaW4uIDIgc3BhY2VzIGJldHdlZW4gb3B0aW9uIGFuZCBleHBsYW5hdGlvbiAoZ3V0dGVyKQorICAgICAgICAjICAgLSA1IGNoYXJhY3RlcnMgKGluY2wuIHNwYWNlKSBmb3Igc2hvcnQgb3B0aW9uIG5hbWUKKworICAgICAgICAjIE5vdyBnZW5lcmF0ZSBsaW5lcyBvZiBoZWxwIHRleHQuICAoSWYgODAgY29sdW1ucyB3ZXJlIGdvb2QgZW5vdWdoCisgICAgICAgICMgZm9yIEplc3VzLCB0aGVuIDc4IGNvbHVtbnMgYXJlIGdvb2QgZW5vdWdoIGZvciBtZSEpCisgICAgICAgIGxpbmVfd2lkdGggPSA3OAorICAgICAgICB0ZXh0X3dpZHRoID0gbGluZV93aWR0aCAtIG9wdF93aWR0aAorICAgICAgICBiaWdfaW5kZW50ID0gJyAnICogb3B0X3dpZHRoCisgICAgICAgIGlmIGhlYWRlcjoKKyAgICAgICAgICAgIGxpbmVzID0gW2hlYWRlcl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxpbmVzID0gWydPcHRpb24gc3VtbWFyeTonXQorCisgICAgICAgIGZvciBvcHRpb24gaW4gc2VsZi5vcHRpb25fdGFibGU6CisgICAgICAgICAgICBsb25nb3B0LCBzaG9ydCwgaGVscCA9IG9wdGlvbls6M10KKyAgICAgICAgICAgIHRleHQgPSB0ZXh0d3JhcC53cmFwKGhlbHAsIHRleHRfd2lkdGgpCisKKyAgICAgICAgICAgICMgQ2FzZSAxOiBubyBzaG9ydCBvcHRpb24gYXQgYWxsIChtYWtlcyBsaWZlIGVhc3kpCisgICAgICAgICAgICBpZiBzaG9ydCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGlmIHRleHQ6CisgICAgICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVuZCgiICAtLSUtKnMgICVzIiAlIChtYXhfb3B0LCBsb25nb3B0LCB0ZXh0WzBdKSkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQoIiAgLS0lLSpzICAiICUgKG1heF9vcHQsIGxvbmdvcHQpKQorCisgICAgICAgICAgICAjIENhc2UgMjogd2UgaGF2ZSBhIHNob3J0IG9wdGlvbiwgc28gd2UgaGF2ZSB0byBpbmNsdWRlIGl0CisgICAgICAgICAgICAjIGp1c3QgYWZ0ZXIgdGhlIGxvbmcgb3B0aW9uCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG9wdF9uYW1lcyA9ICIlcyAoLSVzKSIgJSAobG9uZ29wdCwgc2hvcnQpCisgICAgICAgICAgICAgICAgaWYgdGV4dDoKKyAgICAgICAgICAgICAgICAgICAgbGluZXMuYXBwZW5kKCIgIC0tJS0qcyAgJXMiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXhfb3B0LCBvcHRfbmFtZXMsIHRleHRbMF0pKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVuZCgiICAtLSUtKnMiICUgb3B0X25hbWVzKQorCisgICAgICAgICAgICBmb3IgbCBpbiB0ZXh0WzE6XToKKyAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQoYmlnX2luZGVudCArIGwpCisKKyAgICAgICAgcmV0dXJuIGxpbmVzCisKKyAgICBkZWYgcHJpbnRfaGVscChzZWxmLCBoZWFkZXI9Tm9uZSwgZmlsZT1Ob25lKToKKyAgICAgICAgaWYgZmlsZSBpcyBOb25lOgorICAgICAgICAgICAgZmlsZSA9IHN5cy5zdGRvdXQKKyAgICAgICAgZm9yIGxpbmUgaW4gc2VsZi5nZW5lcmF0ZV9oZWxwKGhlYWRlcik6CisgICAgICAgICAgICBmaWxlLndyaXRlKGxpbmUgKyAiXG4iKQorCisKK2RlZiBmYW5jeV9nZXRvcHQob3B0aW9ucywgbmVnYXRpdmVfb3B0LCBvYmplY3QsIGFyZ3MpOgorICAgIHBhcnNlciA9IEZhbmN5R2V0b3B0KG9wdGlvbnMpCisgICAgcGFyc2VyLnNldF9uZWdhdGl2ZV9hbGlhc2VzKG5lZ2F0aXZlX29wdCkKKyAgICByZXR1cm4gcGFyc2VyLmdldG9wdChhcmdzLCBvYmplY3QpCisKKworY2xhc3MgT3B0aW9uRHVtbXk6CisgICAgIiIiRHVtbXkgY2xhc3MganVzdCB1c2VkIGFzIGEgcGxhY2UgdG8gaG9sZCBjb21tYW5kLWxpbmUgb3B0aW9uCisgICAgdmFsdWVzIGFzIGluc3RhbmNlIGF0dHJpYnV0ZXMuIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgb3B0aW9ucz1bXSk6CisgICAgICAgICIiIkNyZWF0ZSBhIG5ldyBPcHRpb25EdW1teSBpbnN0YW5jZS4gIFRoZSBhdHRyaWJ1dGVzIGxpc3RlZCBpbgorICAgICAgICAnb3B0aW9ucycgd2lsbCBiZSBpbml0aWFsaXplZCB0byBOb25lLiIiIgorICAgICAgICBmb3Igb3B0IGluIG9wdGlvbnM6CisgICAgICAgICAgICBzZXRhdHRyKHNlbGYsIG9wdCwgTm9uZSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvaW5zdGFsbC5weSBiL0xpYi9wYWNrYWdpbmcvaW5zdGFsbC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NzZiYTQwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9pbnN0YWxsLnB5CkBAIC0wLDAgKzEsNTI5IEBACisiIiJCdWlsZGluZyBibG9ja3MgZm9yIGluc3RhbGxlcnMuCisKK1doZW4gdXNlZCBhcyBhIHNjcmlwdCwgdGhpcyBtb2R1bGUgaW5zdGFsbHMgYSByZWxlYXNlIHRoYW5rcyB0byBpbmZvCitvYnRhaW5lZCBmcm9tIGFuIGluZGV4IChlLmcuIFB5UEkpLCB3aXRoIGRlcGVuZGVuY2llcy4KKworVGhpcyBpcyBhIGhpZ2hlci1sZXZlbCBtb2R1bGUgYnVpbHQgb24gcGFja2FnaW5nLmRhdGFiYXNlIGFuZAorcGFja2FnaW5nLnB5cGkuCisiIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHN0YXQKK2ltcG9ydCBlcnJubworaW1wb3J0IHNodXRpbAoraW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCB0ZW1wZmlsZQorZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9jb25maWdfdmFyLCBnZXRfcGF0aCwgaXNfcHl0aG9uX2J1aWxkCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgKF9pc19hcmNoaXZlX2ZpbGUsIGFzaywgZ2V0X2luc3RhbGxfbWV0aG9kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVnZ2luZm9fdG9fZGlzdGluZm8pCitmcm9tIHBhY2thZ2luZy5weXBpIGltcG9ydCB3cmFwcGVyCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBnZXRfdmVyc2lvbl9wcmVkaWNhdGUKK2Zyb20gcGFja2FnaW5nLmRhdGFiYXNlIGltcG9ydCBnZXRfZGlzdHJpYnV0aW9ucywgZ2V0X2Rpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcuZGVwZ3JhcGggaW1wb3J0IGdlbmVyYXRlX2dyYXBoCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKFBhY2thZ2luZ0Vycm9yLCBJbnN0YWxsYXRpb25FeGNlcHRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnN0YWxsYXRpb25Db25mbGljdCwgQ0NvbXBpbGVyRXJyb3IpCitmcm9tIHBhY2thZ2luZy5weXBpLmVycm9ycyBpbXBvcnQgUHJvamVjdE5vdEZvdW5kLCBSZWxlYXNlTm90Rm91bmQKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBkYXRhYmFzZQorCisKK19fYWxsX18gPSBbJ2luc3RhbGxfZGlzdHMnLCAnaW5zdGFsbF9mcm9tX2luZm9zJywgJ2dldF9pbmZvcycsICdyZW1vdmUnLAorICAgICAgICAgICAnaW5zdGFsbCcsICdpbnN0YWxsX2xvY2FsX3Byb2plY3QnXQorCisKK2RlZiBfbW92ZV9maWxlcyhmaWxlcywgZGVzdGluYXRpb24pOgorICAgICIiIk1vdmUgdGhlIGxpc3Qgb2YgZmlsZXMgaW4gdGhlIGRlc3RpbmF0aW9uIGZvbGRlciwga2VlcGluZyB0aGUgc2FtZQorICAgIHN0cnVjdHVyZS4KKworICAgIFJldHVybiBhIGxpc3Qgb2YgdHVwbGUgKG9sZCwgbmV3KSBlbXBsYWNlbWVudCBvZiBmaWxlcworCisgICAgOnBhcmFtIGZpbGVzOiBhIGxpc3Qgb2YgZmlsZXMgdG8gbW92ZS4KKyAgICA6cGFyYW0gZGVzdGluYXRpb246IHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkgdG8gcHV0IG9uIHRoZSBmaWxlcy4KKyAgICAiIiIKKworICAgIGZvciBvbGQgaW4gZmlsZXM6CisgICAgICAgIGZpbGVuYW1lID0gb3MucGF0aC5zcGxpdChvbGQpWy0xXQorICAgICAgICBuZXcgPSBvcy5wYXRoLmpvaW4oZGVzdGluYXRpb24sIGZpbGVuYW1lKQorICAgICAgICAjIHRyeSB0byBtYWtlIHRoZSBwYXRocy4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3MubWFrZWRpcnMob3MucGF0aC5kaXJuYW1lKG5ldykpCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVFWElTVDoKKyAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBvcy5yZW5hbWUob2xkLCBuZXcpCisgICAgICAgIHlpZWxkIG9sZCwgbmV3CisKKworZGVmIF9ydW5fZGlzdHV0aWxzX2luc3RhbGwocGF0aCk6CisgICAgIyBiYWNrd2FyZCBjb21wYXQ6IHVzaW5nIHNldHVwdG9vbHMgb3IgcGxhaW4tZGlzdHV0aWxzCisgICAgY21kID0gJyVzIHNldHVwLnB5IGluc3RhbGwgLS1yZWNvcmQ9JXMnCisgICAgcmVjb3JkX2ZpbGUgPSBvcy5wYXRoLmpvaW4ocGF0aCwgJ1JFQ09SRCcpCisgICAgb3Muc3lzdGVtKGNtZCAlIChzeXMuZXhlY3V0YWJsZSwgcmVjb3JkX2ZpbGUpKQorICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhyZWNvcmRfZmlsZSk6CisgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ2ZhaWxlZCB0byBpbnN0YWxsJykKKyAgICBlbHNlOgorICAgICAgICBlZ2dpbmZvX3RvX2Rpc3RpbmZvKHJlY29yZF9maWxlLCByZW1vdmVfZWdnaW5mbz1UcnVlKQorCisKK2RlZiBfcnVuX3NldHVwdG9vbHNfaW5zdGFsbChwYXRoKToKKyAgICBjbWQgPSAnJXMgc2V0dXAucHkgaW5zdGFsbCAtLXJlY29yZD0lcyAtLXNpbmdsZS12ZXJzaW9uLWV4dGVybmFsbHktbWFuYWdlZCcKKyAgICByZWNvcmRfZmlsZSA9IG9zLnBhdGguam9pbihwYXRoLCAnUkVDT1JEJykKKworICAgIG9zLnN5c3RlbShjbWQgJSAoc3lzLmV4ZWN1dGFibGUsIHJlY29yZF9maWxlKSkKKyAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMocmVjb3JkX2ZpbGUpOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdmYWlsZWQgdG8gaW5zdGFsbCcpCisgICAgZWxzZToKKyAgICAgICAgZWdnaW5mb190b19kaXN0aW5mbyhyZWNvcmRfZmlsZSwgcmVtb3ZlX2VnZ2luZm89VHJ1ZSkKKworCitkZWYgX3J1bl9wYWNrYWdpbmdfaW5zdGFsbChwYXRoKToKKyAgICAjIFhYWCBjaGVjayBmb3IgYSB2YWxpZCBzZXR1cC5jZmc/CisgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgZGlzdC5wYXJzZV9jb25maWdfZmlsZXMoKQorICAgIHRyeToKKyAgICAgICAgZGlzdC5ydW5fY29tbWFuZCgnaW5zdGFsbF9kaXN0JykKKyAgICAgICAgbmFtZSA9IGRpc3QubWV0YWRhdGFbJ05hbWUnXQorICAgICAgICByZXR1cm4gZGF0YWJhc2UuZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lKSBpcyBub3QgTm9uZQorICAgIGV4Y2VwdCAoSU9FcnJvciwgb3MuZXJyb3IsIFBhY2thZ2luZ0Vycm9yLCBDQ29tcGlsZXJFcnJvcikgYXMgbXNnOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJGYWlsZWQgdG8gaW5zdGFsbCwgIiArIHN0cihtc2cpKQorCisKK2RlZiBfaW5zdGFsbF9kaXN0KGRpc3QsIHBhdGgpOgorICAgICIiIkluc3RhbGwgYSBkaXN0cmlidXRpb24gaW50byBhIHBhdGguCisKKyAgICBUaGlzOgorCisgICAgKiB1bnBhY2sgdGhlIGRpc3RyaWJ1dGlvbgorICAgICogY29weSB0aGUgZmlsZXMgaW4gInBhdGgiCisgICAgKiBkZXRlcm1pbmUgaWYgdGhlIGRpc3RyaWJ1dGlvbiBpcyBwYWNrYWdpbmcgb3IgZGlzdHV0aWxzMS4KKyAgICAiIiIKKyAgICB3aGVyZSA9IGRpc3QudW5wYWNrKCkKKworICAgIGlmIHdoZXJlIGlzIE5vbmU6CisgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ0Nhbm5vdCBsb2NhdGUgdGhlIHVucGFja2VkIGFyY2hpdmUnKQorCisgICAgcmV0dXJuIF9ydW5faW5zdGFsbF9mcm9tX2FyY2hpdmUod2hlcmUpCisKKworZGVmIGluc3RhbGxfbG9jYWxfcHJvamVjdChwYXRoKToKKyAgICAiIiJJbnN0YWxsIGEgZGlzdHJpYnV0aW9uIGZyb20gYSBzb3VyY2UgZGlyZWN0b3J5LgorCisgICAgSWYgdGhlIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbnMgYSBzZXR1cC5weSBpbnN0YWxsIHVzaW5nIGRpc3R1dGlsczEuCisgICAgSWYgYSBzZXR1cC5jZmcgaXMgZm91bmQsIGluc3RhbGwgdXNpbmcgdGhlIGluc3RhbGxfZGlzdCBjb21tYW5kLgorCisgICAgUmV0dXJucyBUcnVlIG9uIHN1Y2Nlc3MsIEZhbHNlIG9uIEZhaWx1cmUuCisgICAgIiIiCisgICAgcGF0aCA9IG9zLnBhdGguYWJzcGF0aChwYXRoKQorICAgIGlmIG9zLnBhdGguaXNkaXIocGF0aCk6CisgICAgICAgIGxvZ2dlci5pbmZvKCdJbnN0YWxsaW5nIGZyb20gc291cmNlIGRpcmVjdG9yeTogJXInLCBwYXRoKQorICAgICAgICByZXR1cm4gX3J1bl9pbnN0YWxsX2Zyb21fZGlyKHBhdGgpCisgICAgZWxpZiBfaXNfYXJjaGl2ZV9maWxlKHBhdGgpOgorICAgICAgICBsb2dnZXIuaW5mbygnSW5zdGFsbGluZyBmcm9tIGFyY2hpdmU6ICVyJywgcGF0aCkKKyAgICAgICAgX3VucGFja2VkX2RpciA9IHRlbXBmaWxlLm1rZHRlbXAoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzaHV0aWwudW5wYWNrX2FyY2hpdmUocGF0aCwgX3VucGFja2VkX2RpcikKKyAgICAgICAgICAgIHJldHVybiBfcnVuX2luc3RhbGxfZnJvbV9hcmNoaXZlKF91bnBhY2tlZF9kaXIpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzaHV0aWwucm10cmVlKF91bnBhY2tlZF9kaXIpCisgICAgZWxzZToKKyAgICAgICAgbG9nZ2VyLndhcm5pbmcoJ05vIHByb2plY3QgdG8gaW5zdGFsbC4nKQorICAgICAgICByZXR1cm4gRmFsc2UKKworCitkZWYgX3J1bl9pbnN0YWxsX2Zyb21fYXJjaGl2ZShzb3VyY2VfZGlyKToKKyAgICAjIFhYWCBuZWVkIGEgYmV0dGVyIHdheQorICAgIGZvciBpdGVtIGluIG9zLmxpc3RkaXIoc291cmNlX2Rpcik6CisgICAgICAgIGZ1bGxwYXRoID0gb3MucGF0aC5qb2luKHNvdXJjZV9kaXIsIGl0ZW0pCisgICAgICAgIGlmIG9zLnBhdGguaXNkaXIoZnVsbHBhdGgpOgorICAgICAgICAgICAgc291cmNlX2RpciA9IGZ1bGxwYXRoCisgICAgICAgICAgICBicmVhaworICAgIHJldHVybiBfcnVuX2luc3RhbGxfZnJvbV9kaXIoc291cmNlX2RpcikKKworCitpbnN0YWxsX21ldGhvZHMgPSB7CisgICAgJ3BhY2thZ2luZyc6IF9ydW5fcGFja2FnaW5nX2luc3RhbGwsCisgICAgJ3NldHVwdG9vbHMnOiBfcnVuX3NldHVwdG9vbHNfaW5zdGFsbCwKKyAgICAnZGlzdHV0aWxzJzogX3J1bl9kaXN0dXRpbHNfaW5zdGFsbH0KKworCitkZWYgX3J1bl9pbnN0YWxsX2Zyb21fZGlyKHNvdXJjZV9kaXIpOgorICAgIG9sZF9kaXIgPSBvcy5nZXRjd2QoKQorICAgIG9zLmNoZGlyKHNvdXJjZV9kaXIpCisgICAgaW5zdGFsbF9tZXRob2QgPSBnZXRfaW5zdGFsbF9tZXRob2Qoc291cmNlX2RpcikKKyAgICBmdW5jID0gaW5zdGFsbF9tZXRob2RzW2luc3RhbGxfbWV0aG9kXQorICAgIHRyeToKKyAgICAgICAgZnVuYyA9IGluc3RhbGxfbWV0aG9kc1tpbnN0YWxsX21ldGhvZF0KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZnVuYyhzb3VyY2VfZGlyKQorICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgIyBmYWlsZWQgdG8gaW5zdGFsbAorICAgICAgICAgICAgbG9nZ2VyLmluZm8oc3RyKGVycikpCisgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBmaW5hbGx5OgorICAgICAgICBvcy5jaGRpcihvbGRfZGlyKQorCisKK2RlZiBpbnN0YWxsX2Rpc3RzKGRpc3RzLCBwYXRoLCBwYXRocz1Ob25lKToKKyAgICAiIiJJbnN0YWxsIGFsbCBkaXN0cmlidXRpb25zIHByb3ZpZGVkIGluIGRpc3RzLCB3aXRoIHRoZSBnaXZlbiBwcmVmaXguCisKKyAgICBJZiBhbiBlcnJvciBvY2N1cnMgd2hpbGUgaW5zdGFsbGluZyBvbmUgb2YgdGhlIGRpc3RyaWJ1dGlvbnMsIHVuaW5zdGFsbCBhbGwKKyAgICB0aGUgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbiAoaW4gdGhlIGNvbnRleHQgaWYgdGhpcyBmdW5jdGlvbikuCisKKyAgICBSZXR1cm4gYSBsaXN0IG9mIGluc3RhbGxlZCBkaXN0cy4KKworICAgIDpwYXJhbSBkaXN0czogZGlzdHJpYnV0aW9ucyB0byBpbnN0YWxsCisgICAgOnBhcmFtIHBhdGg6IGJhc2UgcGF0aCB0byBpbnN0YWxsIGRpc3RyaWJ1dGlvbiBpbgorICAgIDpwYXJhbSBwYXRoczogbGlzdCBvZiBwYXRocyAoZGVmYXVsdHMgdG8gc3lzLnBhdGgpIHRvIGxvb2sgZm9yIGluZm8KKyAgICAiIiIKKworICAgIGluc3RhbGxlZF9kaXN0cyA9IFtdCisgICAgZm9yIGRpc3QgaW4gZGlzdHM6CisgICAgICAgIGxvZ2dlci5pbmZvKCdJbnN0YWxsaW5nICVyICVzLi4uJywgZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIF9pbnN0YWxsX2Rpc3QoZGlzdCwgcGF0aCkKKyAgICAgICAgICAgIGluc3RhbGxlZF9kaXN0cy5hcHBlbmQoZGlzdCkKKyAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ0ZhaWxlZDogJXMnLCBlKQorCisgICAgICAgICAgICAjIHJldmVydGluZworICAgICAgICAgICAgZm9yIGluc3RhbGxlZF9kaXN0IGluIGluc3RhbGxlZF9kaXN0czoKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygnUmV2ZXJ0aW5nICVyJywgaW5zdGFsbGVkX2Rpc3QpCisgICAgICAgICAgICAgICAgcmVtb3ZlKGluc3RhbGxlZF9kaXN0Lm5hbWUsIHBhdGhzKQorICAgICAgICAgICAgcmFpc2UgZQorICAgIHJldHVybiBpbnN0YWxsZWRfZGlzdHMKKworCitkZWYgaW5zdGFsbF9mcm9tX2luZm9zKGluc3RhbGxfcGF0aD1Ob25lLCBpbnN0YWxsPVtdLCByZW1vdmU9W10sIGNvbmZsaWN0cz1bXSwKKyAgICAgICAgICAgICAgICAgICAgICAgcGF0aHM9Tm9uZSk6CisgICAgIiIiSW5zdGFsbCBhbmQgcmVtb3ZlIHRoZSBnaXZlbiBkaXN0cmlidXRpb25zLgorCisgICAgVGhlIGZ1bmN0aW9uIHNpZ25hdHVyZSBpcyBtYWRlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgb25lIG9mIGdldF9pbmZvcy4KKyAgICBUaGUgYWltIG9mIHRoaXMgc2NyaXB0IGlzIHRvIHBvdmlkZSBhIHdheSB0byBpbnN0YWxsL3JlbW92ZSB3aGF0J3MgYXNrZWQsCisgICAgYW5kIHRvIHJvbGxiYWNrIGlmIG5lZWRlZC4KKworICAgIFNvLCBpdCdzIG5vdCBwb3NzaWJsZSB0byBiZSBpbiBhbiBpbmNvbnNpc3RhbnQgc3RhdGUsIGl0IGNvdWxkIGJlIGVpdGhlcgorICAgIGluc3RhbGxlZCwgZWl0aGVyIHVuaW5zdGFsbGVkLCBub3QgaGFsZi1pbnN0YWxsZWQuCisKKyAgICBUaGUgcHJvY2VzcyBmb2xsb3cgdGhvc2Ugc3RlcHM6CisKKyAgICAgICAgMS4gTW92ZSBhbGwgZGlzdHJpYnV0aW9ucyB0aGF0IHdpbGwgYmUgcmVtb3ZlZCBpbiBhIHRlbXBvcmFyeSBsb2NhdGlvbgorICAgICAgICAyLiBJbnN0YWxsIGFsbCB0aGUgZGlzdHJpYnV0aW9ucyB0aGF0IHdpbGwgYmUgaW5zdGFsbGVkIGluIGEgdGVtcC4gbG9jLgorICAgICAgICAzLiBJZiB0aGUgaW5zdGFsbGF0aW9uIGZhaWxzLCByb2xsYmFjayAoZWcuIG1vdmUgYmFjaykgdGhvc2UKKyAgICAgICAgICAgZGlzdHJpYnV0aW9ucywgb3IgcmVtb3ZlIHdoYXQgaGF2ZSBiZWVuIGluc3RhbGxlZC4KKyAgICAgICAgNC4gRWxzZSwgbW92ZSB0aGUgZGlzdHJpYnV0aW9ucyB0byB0aGUgcmlnaHQgbG9jYXRpb25zLCBhbmQgcmVtb3ZlIGZvcgorICAgICAgICAgICByZWFsIHRoZSBkaXN0cmlidXRpb25zIHRoYXRzIG5lZWQgdG8gYmUgcmVtb3ZlZC4KKworICAgIDpwYXJhbSBpbnN0YWxsX3BhdGg6IHRoZSBpbnN0YWxsYXRpb24gcGF0aCB3aGVyZSB3ZSB3YW50IHRvIGluc3RhbGwgdGhlCisgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdHJpYnV0aW9ucy4KKyAgICA6cGFyYW0gaW5zdGFsbDogbGlzdCBvZiBkaXN0cmlidXRpb25zIHRoYXQgd2lsbCBiZSBpbnN0YWxsZWQ7IGluc3RhbGxfcGF0aAorICAgICAgICAgICAgICAgICAgICBtdXN0IGJlIHByb3ZpZGVkIGlmIHRoaXMgbGlzdCBpcyBub3QgZW1wdHkuCisgICAgOnBhcmFtIHJlbW92ZTogbGlzdCBvZiBkaXN0cmlidXRpb25zIHRoYXQgd2lsbCBiZSByZW1vdmVkLgorICAgIDpwYXJhbSBjb25mbGljdHM6IGxpc3Qgb2YgY29uZmxpY3RpbmcgZGlzdHJpYnV0aW9ucywgZWcuIHRoYXQgd2lsbCBiZSBpbgorICAgICAgICAgICAgICAgICAgICAgIGNvbmZsaWN0IG9uY2UgdGhlIGluc3RhbGwgYW5kIHJlbW92ZSBkaXN0cmlidXRpb24gd2lsbCBiZQorICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZC4KKyAgICA6cGFyYW0gcGF0aHM6IGxpc3Qgb2YgcGF0aHMgKGRlZmF1bHRzIHRvIHN5cy5wYXRoKSB0byBsb29rIGZvciBpbmZvCisgICAgIiIiCisgICAgIyBmaXJzdCBvZiBhbGwsIGlmIHdlIGhhdmUgY29uZmxpY3RzLCBzdG9wIGhlcmUuCisgICAgaWYgY29uZmxpY3RzOgorICAgICAgICByYWlzZSBJbnN0YWxsYXRpb25Db25mbGljdChjb25mbGljdHMpCisKKyAgICBpZiBpbnN0YWxsIGFuZCBub3QgaW5zdGFsbF9wYXRoOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJEaXN0cmlidXRpb25zIGFyZSB0byBiZSBpbnN0YWxsZWQgYnV0IGBpbnN0YWxsX3BhdGhgIgorICAgICAgICAgICAgICAgICAgICAgICAgICIgaXMgbm90IHByb3ZpZGVkLiIpCisKKyAgICAjIGJlZm9yZSByZW1vdmluZyB0aGUgZmlsZXMsIHdlIHdpbGwgc3RhcnQgYnkgbW92aW5nIHRoZW0gYXdheQorICAgICMgdGhlbiwgaWYgYW55IGVycm9yIG9jY3Vycywgd2UgY291bGQgcmVwbGFjZSB0aGVtIGluIHRoZSBnb29kIHBsYWNlLgorICAgIHRlbXBfZmlsZXMgPSB7fSAgIyBjb250YWlucyBsaXN0cyBvZiB7ZGlzdDogKG9sZCwgbmV3KX0gcGF0aHMKKyAgICB0ZW1wX2RpciA9IE5vbmUKKyAgICBpZiByZW1vdmU6CisgICAgICAgIHRlbXBfZGlyID0gdGVtcGZpbGUubWtkdGVtcCgpCisgICAgICAgIGZvciBkaXN0IGluIHJlbW92ZToKKyAgICAgICAgICAgIGZpbGVzID0gZGlzdC5saXN0X2luc3RhbGxlZF9maWxlcygpCisgICAgICAgICAgICB0ZW1wX2ZpbGVzW2Rpc3RdID0gX21vdmVfZmlsZXMoZmlsZXMsIHRlbXBfZGlyKQorICAgIHRyeToKKyAgICAgICAgaWYgaW5zdGFsbDoKKyAgICAgICAgICAgIGluc3RhbGxfZGlzdHMoaW5zdGFsbCwgaW5zdGFsbF9wYXRoLCBwYXRocykKKyAgICBleGNlcHQ6CisgICAgICAgICMgaWYgYW4gZXJyb3Igb2NjdXJzLCBwdXQgYmFjayB0aGUgZmlsZXMgaW4gdGhlIHJpZ2h0IHBsYWNlLgorICAgICAgICBmb3IgZmlsZXMgaW4gdGVtcF9maWxlcy52YWx1ZXMoKToKKyAgICAgICAgICAgIGZvciBvbGQsIG5ldyBpbiBmaWxlczoKKyAgICAgICAgICAgICAgICBzaHV0aWwubW92ZShuZXcsIG9sZCkKKyAgICAgICAgaWYgdGVtcF9kaXI6CisgICAgICAgICAgICBzaHV0aWwucm10cmVlKHRlbXBfZGlyKQorICAgICAgICAjIG5vdyByZS1yYWlzaW5nCisgICAgICAgIHJhaXNlCisKKyAgICAjIHdlIGNhbiByZW1vdmUgdGhlbSBmb3IgZ29vZAorICAgIGZvciBmaWxlcyBpbiB0ZW1wX2ZpbGVzLnZhbHVlcygpOgorICAgICAgICBmb3Igb2xkLCBuZXcgaW4gZmlsZXM6CisgICAgICAgICAgICBvcy5yZW1vdmUobmV3KQorICAgIGlmIHRlbXBfZGlyOgorICAgICAgICBzaHV0aWwucm10cmVlKHRlbXBfZGlyKQorCisKK2RlZiBfZ2V0X3NldHVwdG9vbHNfZGVwcyhyZWxlYXNlKToKKyAgICAjIE5vdEltcGxlbWVudGVkRXJyb3IKKyAgICBwYXNzCisKKworZGVmIGdldF9pbmZvcyhyZXF1aXJlbWVudHMsIGluZGV4PU5vbmUsIGluc3RhbGxlZD1Ob25lLCBwcmVmZXJfZmluYWw9VHJ1ZSk6CisgICAgIiIiUmV0dXJuIHRoZSBpbmZvcm1hdGlvbnMgb24gd2hhdCdzIGdvaW5nIHRvIGJlIGluc3RhbGxlZCBhbmQgdXBncmFkZWQuCisKKyAgICA6cGFyYW0gcmVxdWlyZW1lbnRzOiBpcyBhICpzdHJpbmcqIGNvbnRhaW5pbmcgdGhlIHJlcXVpcmVtZW50cyBmb3IgdGhpcworICAgICAgICAgICAgICAgICAgICAgICAgIHByb2plY3QgKGZvciBpbnN0YW5jZSAiRm9vQmFyIDEuMSIgb3IgIkJhckJheiAoPDEuMikiKQorICAgIDpwYXJhbSBpbmRleDogSWYgYW4gaW5kZXggaXMgc3BlY2lmaWVkLCB1c2UgdGhpcyBvbmUsIG90aGVyd2lzZSwgdXNlCisgICAgICAgICAgICAgICAgICA6Y2xhc3MgaW5kZXguQ2xpZW50V3JhcHBlcjogdG8gZ2V0IHByb2plY3QgbWV0YWRhdGFzLgorICAgIDpwYXJhbSBpbnN0YWxsZWQ6IGEgbGlzdCBvZiBhbHJlYWR5IGluc3RhbGxlZCBkaXN0cmlidXRpb25zLgorICAgIDpwYXJhbSBwcmVmZXJfZmluYWw6IHdoZW4gcGlja2luZyB1cCB0aGUgcmVsZWFzZXMsIHByZWZlciBhICJmaW5hbCIgb25lCisgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlciBhIGJldGEvYWxwaGEvZXRjIG9uZS4KKworICAgIFRoZSByZXN1bHRzIGFyZSByZXR1cm5lZCBpbiBhIGRpY3QsIGNvbnRhaW5pbmcgYWxsIHRoZSBvcGVyYXRpb25zCisgICAgbmVlZGVkIHRvIGluc3RhbGwgdGhlIGdpdmVuIHJlcXVpcmVtZW50czo6CisKKyAgICAgICAgPj4+IGdldF9pbnN0YWxsX2luZm8oIkZvb0JhciAoPD0xLjIpIikKKyAgICAgICAgeydpbnN0YWxsJzogWzxGb29CYXIgMS4xPl0sICdyZW1vdmUnOiBbXSwgJ2NvbmZsaWN0JzogW119CisKKyAgICBDb25mbGljdCBjb250YWlucyBhbGwgdGhlIGNvbmZsaWN0aW5nIGRpc3RyaWJ1dGlvbnMsIGlmIHRoZXJlIGlzIGEKKyAgICBjb25mbGljdC4KKyAgICAiIiIKKyAgICAjIHRoaXMgZnVuY3Rpb24gZG9lcyBzZXZlcmFsIHRoaW5nczoKKyAgICAjIDEuIGdldCBhIHJlbGVhc2Ugc3BlY2lmaWVkIGJ5IHRoZSByZXF1aXJlbWVudHMKKyAgICAjIDIuIGdhdGhlciBpdHMgbWV0YWRhdGEsIHVzaW5nIHNldHVwdG9vbHMgY29tcGF0aWJpbGl0eSBpZiBuZWVkZWQKKyAgICAjIDMuIGNvbXBhcmUgdGhpcyB0cmVlIHdpdGggd2hhdCBpcyBjdXJyZW50bHkgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sCisgICAgIyAgICByZXR1cm4gdGhlIHJlcXVpcmVtZW50cyBvZiB3aGF0IGlzIG1pc3NpbmcKKyAgICAjIDQuIGRvIHRoYXQgcmVjdXJzaXZlbHkgYW5kIG1lcmdlIGJhY2sgdGhlIHJlc3VsdHMKKyAgICAjIDUuIHJldHVybiBhIGRpY3QgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB3aGF0IGlzIG5lZWRlZCB0byBpbnN0YWxsCisgICAgIyAgICBvciByZW1vdmUKKworICAgIGlmIG5vdCBpbnN0YWxsZWQ6CisgICAgICAgIGxvZ2dlci5kZWJ1ZygnUmVhZGluZyBpbnN0YWxsZWQgZGlzdHJpYnV0aW9ucycpCisgICAgICAgIGluc3RhbGxlZCA9IGxpc3QoZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPVRydWUpKQorCisgICAgaW5mb3MgPSB7J2luc3RhbGwnOiBbXSwgJ3JlbW92ZSc6IFtdLCAnY29uZmxpY3QnOiBbXX0KKyAgICAjIElzIGEgY29tcGF0aWJsZSB2ZXJzaW9uIG9mIHRoZSBwcm9qZWN0IGFscmVhZHkgaW5zdGFsbGVkID8KKyAgICBwcmVkaWNhdGUgPSBnZXRfdmVyc2lvbl9wcmVkaWNhdGUocmVxdWlyZW1lbnRzKQorICAgIGZvdW5kID0gRmFsc2UKKworICAgICMgY2hlY2sgdGhhdCB0aGUgcHJvamVjdCBpc24ndCBhbHJlYWR5IGluc3RhbGxlZAorICAgIGZvciBpbnN0YWxsZWRfcHJvamVjdCBpbiBpbnN0YWxsZWQ6CisgICAgICAgICMgaXMgaXQgYSBjb21wYXRpYmxlIHByb2plY3QgPworICAgICAgICBpZiBwcmVkaWNhdGUubmFtZS5sb3dlcigpICE9IGluc3RhbGxlZF9wcm9qZWN0Lm5hbWUubG93ZXIoKToKKyAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgIGZvdW5kID0gVHJ1ZQorICAgICAgICBsb2dnZXIuaW5mbygnRm91bmQgJXIgJXMnLCBpbnN0YWxsZWRfcHJvamVjdC5uYW1lLAorICAgICAgICAgICAgICAgICAgICBpbnN0YWxsZWRfcHJvamVjdC52ZXJzaW9uKQorCisgICAgICAgICMgaWYgd2UgYWxyZWFkeSBoYXZlIHNvbWV0aGluZyBpbnN0YWxsZWQsIGNoZWNrIGl0IG1hdGNoZXMgdGhlCisgICAgICAgICMgcmVxdWlyZW1lbnRzCisgICAgICAgIGlmIHByZWRpY2F0ZS5tYXRjaChpbnN0YWxsZWRfcHJvamVjdC52ZXJzaW9uKToKKyAgICAgICAgICAgIHJldHVybiBpbmZvcworICAgICAgICBicmVhaworCisgICAgaWYgbm90IGZvdW5kOgorICAgICAgICBsb2dnZXIuZGVidWcoJ1Byb2plY3Qgbm90IGluc3RhbGxlZCcpCisKKyAgICBpZiBub3QgaW5kZXg6CisgICAgICAgIGluZGV4ID0gd3JhcHBlci5DbGllbnRXcmFwcGVyKCkKKworICAgIGlmIG5vdCBpbnN0YWxsZWQ6CisgICAgICAgIGluc3RhbGxlZCA9IGdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbz1UcnVlKQorCisgICAgIyBHZXQgYWxsIHRoZSByZWxlYXNlcyB0aGF0IG1hdGNoIHRoZSByZXF1aXJlbWVudHMKKyAgICB0cnk6CisgICAgICAgIHJlbGVhc2UgPSBpbmRleC5nZXRfcmVsZWFzZShyZXF1aXJlbWVudHMpCisgICAgZXhjZXB0IChSZWxlYXNlTm90Rm91bmQsIFByb2plY3ROb3RGb3VuZCk6CisgICAgICAgIHJhaXNlIEluc3RhbGxhdGlvbkV4Y2VwdGlvbignUmVsZWFzZSBub3QgZm91bmQ6ICVyJyAlIHJlcXVpcmVtZW50cykKKworICAgIGlmIHJlbGVhc2UgaXMgTm9uZToKKyAgICAgICAgbG9nZ2VyLmluZm8oJ0NvdWxkIG5vdCBmaW5kIGEgbWF0Y2hpbmcgcHJvamVjdCcpCisgICAgICAgIHJldHVybiBpbmZvcworCisgICAgbWV0YWRhdGEgPSByZWxlYXNlLmZldGNoX21ldGFkYXRhKCkKKworICAgICMgd2UgbmVlZCB0byBidWlsZCBzZXR1cHRvb2xzIGRlcHMgaWYgYW55CisgICAgaWYgJ3JlcXVpcmVzX2Rpc3QnIG5vdCBpbiBtZXRhZGF0YToKKyAgICAgICAgbWV0YWRhdGFbJ3JlcXVpcmVzX2Rpc3QnXSA9IF9nZXRfc2V0dXB0b29sc19kZXBzKHJlbGVhc2UpCisKKyAgICAjIGJ1aWxkIHRoZSBkZXBlbmRlbmN5IGdyYXBoIHdpdGggbG9jYWwgYW5kIHJlcXVpcmVkIGRlcGVuZGVuY2llcworICAgIGRpc3RzID0gbGlzdChpbnN0YWxsZWQpCisgICAgZGlzdHMuYXBwZW5kKHJlbGVhc2UpCisgICAgZGVwZ3JhcGggPSBnZW5lcmF0ZV9ncmFwaChkaXN0cykKKworICAgICMgR2V0IHdoYXQgdGhlIG1pc3NpbmcgZGVwcyBhcmUKKyAgICBkaXN0cyA9IGRlcGdyYXBoLm1pc3NpbmdbcmVsZWFzZV0KKyAgICBpZiBkaXN0czoKKyAgICAgICAgbG9nZ2VyLmluZm8oIk1pc3NpbmcgZGVwZW5kZW5jaWVzIGZvdW5kLCByZXRyaWV2aW5nIG1ldGFkYXRhIikKKyAgICAgICAgIyB3ZSBoYXZlIG1pc3NpbmcgZGVwcworICAgICAgICBmb3IgZGlzdCBpbiBkaXN0czoKKyAgICAgICAgICAgIF91cGRhdGVfaW5mb3MoaW5mb3MsIGdldF9pbmZvcyhkaXN0LCBpbmRleCwgaW5zdGFsbGVkKSkKKworICAgICMgRmlsbCBpbiB0aGUgaW5mb3MKKyAgICBleGlzdGluZyA9IFtkIGZvciBkIGluIGluc3RhbGxlZCBpZiBkLm5hbWUgPT0gcmVsZWFzZS5uYW1lXQorICAgIGlmIGV4aXN0aW5nOgorICAgICAgICBpbmZvc1sncmVtb3ZlJ10uYXBwZW5kKGV4aXN0aW5nWzBdKQorICAgICAgICBpbmZvc1snY29uZmxpY3QnXS5leHRlbmQoZGVwZ3JhcGgucmV2ZXJzZV9saXN0W2V4aXN0aW5nWzBdXSkKKyAgICBpbmZvc1snaW5zdGFsbCddLmFwcGVuZChyZWxlYXNlKQorICAgIHJldHVybiBpbmZvcworCisKK2RlZiBfdXBkYXRlX2luZm9zKGluZm9zLCBuZXdfaW5mb3MpOgorICAgICIiImV4dGVuZHMgdGhlIGxpc3RzIGNvbnRhaW5lZCBpbiB0aGUgYGluZm9gIGRpY3Qgd2l0aCB0aG9zZSBjb250YWluZWQKKyAgICBpbiB0aGUgYG5ld19pbmZvYCBvbmUKKyAgICAiIiIKKyAgICBmb3Iga2V5LCB2YWx1ZSBpbiBpbmZvcy5pdGVtcygpOgorICAgICAgICBpZiBrZXkgaW4gbmV3X2luZm9zOgorICAgICAgICAgICAgaW5mb3Nba2V5XS5leHRlbmQobmV3X2luZm9zW2tleV0pCisKKworZGVmIHJlbW92ZShwcm9qZWN0X25hbWUsIHBhdGhzPU5vbmUsIGF1dG9fY29uZmlybT1UcnVlKToKKyAgICAiIiJSZW1vdmVzIGEgc2luZ2xlIHByb2plY3QgZnJvbSB0aGUgaW5zdGFsbGF0aW9uLgorCisgICAgUmV0dXJucyBUcnVlIG9uIHN1Y2Nlc3MKKyAgICAiIiIKKyAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihwcm9qZWN0X25hbWUsIHVzZV9lZ2dfaW5mbz1UcnVlLCBwYXRocz1wYXRocykKKyAgICBpZiBkaXN0IGlzIE5vbmU6CisgICAgICAgIHJhaXNlIFBhY2thZ2luZ0Vycm9yKCdEaXN0cmlidXRpb24gJXIgbm90IGZvdW5kJyAlIHByb2plY3RfbmFtZSkKKyAgICBmaWxlcyA9IGRpc3QubGlzdF9pbnN0YWxsZWRfZmlsZXMobG9jYWw9VHJ1ZSkKKyAgICBybWRpcnMgPSBbXQorICAgIHJtZmlsZXMgPSBbXQorICAgIHRtcCA9IHRlbXBmaWxlLm1rZHRlbXAocHJlZml4PXByb2plY3RfbmFtZSArICctdW5pbnN0YWxsJykKKworICAgIGRlZiBfbW92ZV9maWxlKHNvdXJjZSwgdGFyZ2V0KToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3MucmVuYW1lKHNvdXJjZSwgdGFyZ2V0KQorICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlcnI6CisgICAgICAgICAgICByZXR1cm4gZXJyCisgICAgICAgIHJldHVybiBOb25lCisKKyAgICBzdWNjZXNzID0gVHJ1ZQorICAgIGVycm9yID0gTm9uZQorICAgIHRyeToKKyAgICAgICAgZm9yIGZpbGVfLCBtZDUsIHNpemUgaW4gZmlsZXM6CisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShmaWxlXyk6CisgICAgICAgICAgICAgICAgZGlybmFtZSwgZmlsZW5hbWUgPSBvcy5wYXRoLnNwbGl0KGZpbGVfKQorICAgICAgICAgICAgICAgIHRtcGZpbGUgPSBvcy5wYXRoLmpvaW4odG1wLCBmaWxlbmFtZSkKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGVycm9yID0gX21vdmVfZmlsZShmaWxlXywgdG1wZmlsZSkKKyAgICAgICAgICAgICAgICAgICAgaWYgZXJyb3IgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgICAgICAgICBzdWNjZXNzID0gRmFsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguaXNmaWxlKGZpbGVfKToKKyAgICAgICAgICAgICAgICAgICAgICAgIG9zLnJlbmFtZSh0bXBmaWxlLCBmaWxlXykKKyAgICAgICAgICAgICAgICBpZiBmaWxlXyBub3QgaW4gcm1maWxlczoKKyAgICAgICAgICAgICAgICAgICAgcm1maWxlcy5hcHBlbmQoZmlsZV8pCisgICAgICAgICAgICAgICAgaWYgZGlybmFtZSBub3QgaW4gcm1kaXJzOgorICAgICAgICAgICAgICAgICAgICBybWRpcnMuYXBwZW5kKGRpcm5hbWUpCisgICAgZmluYWxseToKKyAgICAgICAgc2h1dGlsLnJtdHJlZSh0bXApCisKKyAgICBpZiBub3Qgc3VjY2VzczoKKyAgICAgICAgbG9nZ2VyLmluZm8oJyVyIGNhbm5vdCBiZSByZW1vdmVkLicsIHByb2plY3RfbmFtZSkKKyAgICAgICAgbG9nZ2VyLmluZm8oJ0Vycm9yOiAlcycsIGVycm9yKQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGxvZ2dlci5pbmZvKCdSZW1vdmluZyAlcjogJywgcHJvamVjdF9uYW1lKQorCisgICAgZm9yIGZpbGVfIGluIHJtZmlsZXM6CisgICAgICAgIGxvZ2dlci5pbmZvKCcgICVzJywgZmlsZV8pCisKKyAgICAjIFRha2VuIGZyb20gdGhlIHBpcCBwcm9qZWN0CisgICAgaWYgYXV0b19jb25maXJtOgorICAgICAgICByZXNwb25zZSA9ICd5JworICAgIGVsc2U6CisgICAgICAgIHJlc3BvbnNlID0gYXNrKCdQcm9jZWVkICh5L24pPyAnLCAoJ3knLCAnbicpKQorCisgICAgaWYgcmVzcG9uc2UgPT0gJ3knOgorICAgICAgICBmaWxlX2NvdW50ID0gMAorICAgICAgICBmb3IgZmlsZV8gaW4gcm1maWxlczoKKyAgICAgICAgICAgIG9zLnJlbW92ZShmaWxlXykKKyAgICAgICAgICAgIGZpbGVfY291bnQgKz0gMQorCisgICAgICAgIGRpcl9jb3VudCA9IDAKKyAgICAgICAgZm9yIGRpcm5hbWUgaW4gcm1kaXJzOgorICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGRpcm5hbWUpOgorICAgICAgICAgICAgICAgICMgY291bGQKKyAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICBmaWxlc19jb3VudCA9IDAKKyAgICAgICAgICAgIGZvciByb290LCBkaXIsIGZpbGVzIGluIG9zLndhbGsoZGlybmFtZSk6CisgICAgICAgICAgICAgICAgZmlsZXNfY291bnQgKz0gbGVuKGZpbGVzKQorCisgICAgICAgICAgICBpZiBmaWxlc19jb3VudCA+IDA6CisgICAgICAgICAgICAgICAgIyBYWFggV2FybmluZworICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgICMgZW1wdHkgZGlycyB3aXRoIG9ubHkgZW1wdHkgZGlycworICAgICAgICAgICAgaWYgb3Muc3RhdChkaXJuYW1lKS5zdF9tb2RlICYgc3RhdC5TX0lXVVNSOgorICAgICAgICAgICAgICAgICMgWFhYIEFkZCBhIGNhbGxhYmxlIGluIHNodXRpbC5ybXRyZWUgdG8gY291bnQKKyAgICAgICAgICAgICAgICAjIHRoZSBudW1iZXIgb2YgZGVsZXRlZCBlbGVtZW50cworICAgICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoZGlybmFtZSkKKyAgICAgICAgICAgICAgICBkaXJfY291bnQgKz0gMQorCisgICAgICAgICMgcmVtb3ZpbmcgdGhlIHRvcCBwYXRoCisgICAgICAgICMgWFhYIGNvdW50IGl0ID8KKyAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZGlzdC5wYXRoKToKKyAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoZGlzdC5wYXRoKQorCisgICAgICAgIGxvZ2dlci5pbmZvKCdTdWNjZXNzOiByZW1vdmVkICVkIGZpbGVzIGFuZCAlZCBkaXJzJywKKyAgICAgICAgICAgICAgICAgICAgZmlsZV9jb3VudCwgZGlyX2NvdW50KQorCisgICAgcmV0dXJuIFRydWUKKworCitkZWYgaW5zdGFsbChwcm9qZWN0KToKKyAgICAiIiJJbnN0YWxscyBhIHByb2plY3QuCisKKyAgICBSZXR1cm5zIFRydWUgb24gc3VjY2VzcywgRmFsc2Ugb24gZmFpbHVyZQorICAgICIiIgorICAgIGlmIGlzX3B5dGhvbl9idWlsZCgpOgorICAgICAgICAjIFB5dGhvbiB3b3VsZCB0cnkgdG8gaW5zdGFsbCBpbnRvIHRoZSBzaXRlLXBhY2thZ2VzIGRpcmVjdG9yeSB1bmRlcgorICAgICAgICAjICRQUkVGSVgsIGJ1dCB3aGVuIHJ1bm5pbmcgZnJvbSBhbiB1bmluc3RhbGxlZCBjb2RlIGNoZWNrb3V0IHdlIGRvbid0CisgICAgICAgICMgd2FudCB0byBjcmVhdGUgZGlyZWN0b3JpZXMgdW5kZXIgdGhlIGluc3RhbGxhdGlvbiByb290CisgICAgICAgIG1lc3NhZ2UgPSAoJ2luc3RhbGxpbmcgdGhpcmQtcGFydHkgcHJvamVjdHMgZnJvbSBhbiB1bmluc3RhbGxlZCAnCisgICAgICAgICAgICAgICAgICAgJ1B5dGhvbiBpcyBub3Qgc3VwcG9ydGVkJykKKyAgICAgICAgbG9nZ2VyLmVycm9yKG1lc3NhZ2UpCisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgbG9nZ2VyLmluZm8oJ0NoZWNraW5nIHRoZSBpbnN0YWxsYXRpb24gbG9jYXRpb24uLi4nKQorICAgIHB1cmVsaWJfcGF0aCA9IGdldF9wYXRoKCdwdXJlbGliJykKKworICAgICMgdHJ5aW5nIHRvIHdyaXRlIGEgZmlsZSB0aGVyZQorICAgIHRyeToKKyAgICAgICAgd2l0aCB0ZW1wZmlsZS5OYW1lZFRlbXBvcmFyeUZpbGUoc3VmZml4PXByb2plY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcj1wdXJlbGliX3BhdGgpIGFzIHRlc3RmaWxlOgorICAgICAgICAgICAgdGVzdGZpbGUud3JpdGUoYid0ZXN0JykKKyAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgIyBGSVhNRSB0aGlzIHNob3VsZCBjaGVjayB0aGUgZXJybm8sIG9yIGJlIHJlbW92ZWQgYWx0b2dldGhlciAocmFjZQorICAgICAgICAjIGNvbmRpdGlvbjogdGhlIGRpcmVjdG9yeSBwZXJtaXNzaW9ucyBjb3VsZCBiZSBjaGFuZ2VkIGJldHdlZW4gaGVyZQorICAgICAgICAjIGFuZCB0aGUgYWN0dWFsIGluc3RhbGwpCisgICAgICAgIGxvZ2dlci5pbmZvKCdVbmFibGUgdG8gd3JpdGUgaW4gIiVzIi4gRG8geW91IGhhdmUgdGhlIHBlcm1pc3Npb25zID8nCisgICAgICAgICAgICAgICAgICAgICUgcHVyZWxpYl9wYXRoKQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGxvZ2dlci5pbmZvKCdHZXR0aW5nIGluZm9ybWF0aW9uIGFib3V0ICVyLi4uJywgcHJvamVjdCkKKyAgICB0cnk6CisgICAgICAgIGluZm8gPSBnZXRfaW5mb3MocHJvamVjdCkKKyAgICBleGNlcHQgSW5zdGFsbGF0aW9uRXhjZXB0aW9uOgorICAgICAgICBsb2dnZXIuaW5mbygnQ291bmQgbm90IGZpbmQgJXInLCBwcm9qZWN0KQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGlmIGluZm9bJ2luc3RhbGwnXSA9PSBbXToKKyAgICAgICAgbG9nZ2VyLmluZm8oJ05vdGhpbmcgdG8gaW5zdGFsbCcpCisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgaW5zdGFsbF9wYXRoID0gZ2V0X2NvbmZpZ192YXIoJ2Jhc2UnKQorICAgIHRyeToKKyAgICAgICAgaW5zdGFsbF9mcm9tX2luZm9zKGluc3RhbGxfcGF0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZm9bJ2luc3RhbGwnXSwgaW5mb1sncmVtb3ZlJ10sIGluZm9bJ2NvbmZsaWN0J10pCisKKyAgICBleGNlcHQgSW5zdGFsbGF0aW9uQ29uZmxpY3QgYXMgZToKKyAgICAgICAgaWYgbG9nZ2VyLmlzRW5hYmxlZEZvcihsb2dnaW5nLklORk8pOgorICAgICAgICAgICAgcHJvamVjdHMgPSAoJyVyICVzJyAlIChwLm5hbWUsIHAudmVyc2lvbikgZm9yIHAgaW4gZS5hcmdzWzBdKQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJyVyIGNvbmZsaWN0cyB3aXRoICVzJywgcHJvamVjdCwgJywnLmpvaW4ocHJvamVjdHMpKQorCisgICAgcmV0dXJuIFRydWUKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvbWFuaWZlc3QucHkgYi9MaWIvcGFja2FnaW5nL21hbmlmZXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwZTczMzAKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL21hbmlmZXN0LnB5CkBAIC0wLDAgKzEsMzgxIEBACisiIiJDbGFzcyByZXByZXNlbnRpbmcgdGhlIGxpc3Qgb2YgZmlsZXMgaW4gYSBkaXN0cmlidXRpb24uCisKK1RoZSBNYW5pZmVzdCBjbGFzcyBjYW4gYmUgdXNlZCB0bzoKKworIC0gcmVhZCBvciB3cml0ZSBhIE1BTklGRVNUIGZpbGUKKyAtIHJlYWQgYSB0ZW1wbGF0ZSBmaWxlIGFuZCBmaW5kIG91dCB0aGUgZmlsZSBsaXN0CisiIiIKKyMgWFhYIHRvZG86IGRvY3VtZW50ICsgYWRkIHRlc3RzCitpbXBvcnQgcmUKK2ltcG9ydCBvcworaW1wb3J0IGZubWF0Y2gKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgd3JpdGVfZmlsZSwgY29udmVydF9wYXRoCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChQYWNrYWdpbmdUZW1wbGF0ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFja2FnaW5nSW50ZXJuYWxFcnJvcikKKworX19hbGxfXyA9IFsnTWFuaWZlc3QnXQorCisjIGEgXCBmb2xsb3dlZCBieSBzb21lIHNwYWNlcyArIEVPTAorX0NPTExBUFNFX1BBVFRFUk4gPSByZS5jb21waWxlKCdcXFx3KlxuJywgcmUuTSkKK19DT01NRU5URURfTElORSA9IHJlLmNvbXBpbGUoJyMuKj8oPz1cbil8XG4oPz0kKScsIHJlLk0gfCByZS5TKQorCisKK2NsYXNzIE1hbmlmZXN0KG9iamVjdCk6CisgICAgIiIiQSBsaXN0IG9mIGZpbGVzIGJ1aWx0IGJ5IG9uIGV4cGxvcmluZyB0aGUgZmlsZXN5c3RlbSBhbmQgZmlsdGVyZWQgYnkKKyAgICBhcHBseWluZyB2YXJpb3VzIHBhdHRlcm5zIHRvIHdoYXQgd2UgZmluZCB0aGVyZS4KKyAgICAiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgc2VsZi5hbGxmaWxlcyA9IE5vbmUKKyAgICAgICAgc2VsZi5maWxlcyA9IFtdCisKKyAgICAjCisgICAgIyBQdWJsaWMgQVBJCisgICAgIworCisgICAgZGVmIGZpbmRhbGwoc2VsZiwgZGlyPW9zLmN1cmRpcik6CisgICAgICAgIHNlbGYuYWxsZmlsZXMgPSBfZmluZGFsbChkaXIpCisKKyAgICBkZWYgYXBwZW5kKHNlbGYsIGl0ZW0pOgorICAgICAgICBzZWxmLmZpbGVzLmFwcGVuZChpdGVtKQorCisgICAgZGVmIGV4dGVuZChzZWxmLCBpdGVtcyk6CisgICAgICAgIHNlbGYuZmlsZXMuZXh0ZW5kKGl0ZW1zKQorCisgICAgZGVmIHNvcnQoc2VsZik6CisgICAgICAgICMgTm90IGEgc3RyaWN0IGxleGljYWwgc29ydCEKKyAgICAgICAgc2VsZi5maWxlcyA9IFtvcy5wYXRoLmpvaW4oKnBhdGhfdHVwbGUpIGZvciBwYXRoX3R1cGxlIGluCisgICAgICAgICAgICAgICAgICAgICAgc29ydGVkKG9zLnBhdGguc3BsaXQocGF0aCkgZm9yIHBhdGggaW4gc2VsZi5maWxlcyldCisKKyAgICBkZWYgY2xlYXIoc2VsZik6CisgICAgICAgICIiIkNsZWFyIGFsbCBjb2xsZWN0ZWQgZmlsZXMuIiIiCisgICAgICAgIHNlbGYuZmlsZXMgPSBbXQorICAgICAgICBpZiBzZWxmLmFsbGZpbGVzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5hbGxmaWxlcyA9IFtdCisKKyAgICBkZWYgcmVtb3ZlX2R1cGxpY2F0ZXMoc2VsZik6CisgICAgICAgICMgQXNzdW1lcyBsaXN0IGhhcyBiZWVuIHNvcnRlZCEKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UobGVuKHNlbGYuZmlsZXMpIC0gMSwgMCwgLTEpOgorICAgICAgICAgICAgaWYgc2VsZi5maWxlc1tpXSA9PSBzZWxmLmZpbGVzW2kgLSAxXToKKyAgICAgICAgICAgICAgICBkZWwgc2VsZi5maWxlc1tpXQorCisgICAgZGVmIHJlYWRfdGVtcGxhdGUoc2VsZiwgcGF0aF9vcl9maWxlKToKKyAgICAgICAgIiIiUmVhZCBhbmQgcGFyc2UgYSBtYW5pZmVzdCB0ZW1wbGF0ZSBmaWxlLgorICAgICAgICAncGF0aCcgY2FuIGJlIGEgcGF0aCBvciBhIGZpbGUtbGlrZSBvYmplY3QuCisKKyAgICAgICAgVXBkYXRlcyB0aGUgbGlzdCBhY2NvcmRpbmdseS4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIGlzaW5zdGFuY2UocGF0aF9vcl9maWxlLCBzdHIpOgorICAgICAgICAgICAgZiA9IG9wZW4ocGF0aF9vcl9maWxlKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZiA9IHBhdGhfb3JfZmlsZQorCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmLnJlYWQoKQorICAgICAgICAgICAgIyBmaXJzdCwgbGV0J3MgdW53cmFwIGNvbGxhcHNlZCBsaW5lcworICAgICAgICAgICAgY29udGVudCA9IF9DT0xMQVBTRV9QQVRURVJOLnN1YignJywgY29udGVudCkKKyAgICAgICAgICAgICMgbmV4dCwgbGV0J3MgcmVtb3ZlIGNvbW1lbnRlZCBsaW5lcyBhbmQgZW1wdHkgbGluZXMKKyAgICAgICAgICAgIGNvbnRlbnQgPSBfQ09NTUVOVEVEX0xJTkUuc3ViKCcnLCBjb250ZW50KQorCisgICAgICAgICAgICAjIG5vdyB3ZSBoYXZlIG91ciBjbGVhbmVkIHVwIGxpbmVzCisgICAgICAgICAgICBsaW5lcyA9IFtsaW5lLnN0cmlwKCkgZm9yIGxpbmUgaW4gY29udGVudC5zcGxpdCgnXG4nKV0KKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGYuY2xvc2UoKQorCisgICAgICAgIGZvciBsaW5lIGluIGxpbmVzOgorICAgICAgICAgICAgaWYgbGluZSA9PSAnJzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZShsaW5lKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ1RlbXBsYXRlRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCIlcywgJXMiLCBwYXRoX29yX2ZpbGUsIG1zZykKKworICAgIGRlZiB3cml0ZShzZWxmLCBwYXRoKToKKyAgICAgICAgIiIiV3JpdGUgdGhlIGZpbGUgbGlzdCBpbiAnc2VsZi5maWxlbGlzdCcgKHByZXN1bWFibHkgYXMgZmlsbGVkIGluCisgICAgICAgIGJ5ICdhZGRfZGVmYXVsdHMoKScgYW5kICdyZWFkX3RlbXBsYXRlKCknKSB0byB0aGUgbWFuaWZlc3QgZmlsZQorICAgICAgICBuYW1lZCBieSAnc2VsZi5tYW5pZmVzdCcuCisgICAgICAgICIiIgorICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShwYXRoKToKKyAgICAgICAgICAgIHdpdGggb3BlbihwYXRoKSBhcyBmcDoKKyAgICAgICAgICAgICAgICBmaXJzdF9saW5lID0gZnAucmVhZGxpbmUoKQorCisgICAgICAgICAgICBpZiBmaXJzdF9saW5lICE9ICcjIGZpbGUgR0VORVJBVEVEIGJ5IHBhY2thZ2luZywgZG8gTk9UIGVkaXRcbic6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oIm5vdCB3cml0aW5nIHRvIG1hbnVhbGx5IG1haW50YWluZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYW5pZmVzdCBmaWxlICVyIiwgcGF0aCkKKyAgICAgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBzZWxmLnNvcnQoKQorICAgICAgICBzZWxmLnJlbW92ZV9kdXBsaWNhdGVzKCkKKyAgICAgICAgY29udGVudCA9IHNlbGYuZmlsZXNbOl0KKyAgICAgICAgY29udGVudC5pbnNlcnQoMCwgJyMgZmlsZSBHRU5FUkFURUQgYnkgcGFja2FnaW5nLCBkbyBOT1QgZWRpdCcpCisgICAgICAgIGxvZ2dlci5pbmZvKCJ3cml0aW5nIG1hbmlmZXN0IGZpbGUgJXIiLCBwYXRoKQorICAgICAgICB3cml0ZV9maWxlKHBhdGgsIGNvbnRlbnQpCisKKyAgICBkZWYgcmVhZChzZWxmLCBwYXRoKToKKyAgICAgICAgIiIiUmVhZCB0aGUgbWFuaWZlc3QgZmlsZSAobmFtZWQgYnkgJ3NlbGYubWFuaWZlc3QnKSBhbmQgdXNlIGl0IHRvCisgICAgICAgIGZpbGwgaW4gJ3NlbGYuZmlsZWxpc3QnLCB0aGUgbGlzdCBvZiBmaWxlcyB0byBpbmNsdWRlIGluIHRoZSBzb3VyY2UKKyAgICAgICAgZGlzdHJpYnV0aW9uLgorICAgICAgICAiIiIKKyAgICAgICAgbG9nZ2VyLmluZm8oInJlYWRpbmcgbWFuaWZlc3QgZmlsZSAlciIsIHBhdGgpCisgICAgICAgIHdpdGggb3BlbihwYXRoKSBhcyBtYW5pZmVzdDoKKyAgICAgICAgICAgIGZvciBsaW5lIGluIG1hbmlmZXN0LnJlYWRsaW5lcygpOgorICAgICAgICAgICAgICAgIHNlbGYuYXBwZW5kKGxpbmUpCisKKyAgICBkZWYgZXhjbHVkZV9wYXR0ZXJuKHNlbGYsIHBhdHRlcm4sIGFuY2hvcj1UcnVlLCBwcmVmaXg9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGlzX3JlZ2V4PUZhbHNlKToKKyAgICAgICAgIiIiUmVtb3ZlIHN0cmluZ3MgKHByZXN1bWFibHkgZmlsZW5hbWVzKSBmcm9tICdmaWxlcycgdGhhdCBtYXRjaAorICAgICAgICAncGF0dGVybicuCisKKyAgICAgICAgT3RoZXIgcGFyYW1ldGVycyBhcmUgdGhlIHNhbWUgYXMgZm9yICdpbmNsdWRlX3BhdHRlcm4oKScsIGFib3ZlLgorICAgICAgICBUaGUgbGlzdCAnc2VsZi5maWxlcycgaXMgbW9kaWZpZWQgaW4gcGxhY2UuIFJldHVybiBUcnVlIGlmIGZpbGVzIGFyZQorICAgICAgICBmb3VuZC4KKyAgICAgICAgIiIiCisgICAgICAgIGZpbGVzX2ZvdW5kID0gRmFsc2UKKyAgICAgICAgcGF0dGVybl9yZSA9IF90cmFuc2xhdGVfcGF0dGVybihwYXR0ZXJuLCBhbmNob3IsIHByZWZpeCwgaXNfcmVnZXgpCisgICAgICAgIGZvciBpIGluIHJhbmdlKGxlbihzZWxmLmZpbGVzKSAtIDEsIC0xLCAtMSk6CisgICAgICAgICAgICBpZiBwYXR0ZXJuX3JlLnNlYXJjaChzZWxmLmZpbGVzW2ldKToKKyAgICAgICAgICAgICAgICBkZWwgc2VsZi5maWxlc1tpXQorICAgICAgICAgICAgICAgIGZpbGVzX2ZvdW5kID0gVHJ1ZQorCisgICAgICAgIHJldHVybiBmaWxlc19mb3VuZAorCisgICAgIworICAgICMgUHJpdmF0ZSBBUEkKKyAgICAjCisKKyAgICBkZWYgX3BhcnNlX3RlbXBsYXRlX2xpbmUoc2VsZiwgbGluZSk6CisgICAgICAgIHdvcmRzID0gbGluZS5zcGxpdCgpCisgICAgICAgIGlmIGxlbih3b3JkcykgPT0gMSBhbmQgd29yZHNbMF0gbm90IGluICgKKyAgICAgICAgICAgICAgJ2luY2x1ZGUnLCAnZXhjbHVkZScsICdnbG9iYWwtaW5jbHVkZScsICdnbG9iYWwtZXhjbHVkZScsCisgICAgICAgICAgICAgICdyZWN1cnNpdmUtaW5jbHVkZScsICdyZWN1cnNpdmUtZXhjbHVkZScsICdncmFmdCcsICdwcnVuZScpOgorICAgICAgICAgICAgIyBubyBhY3Rpb24gZ2l2ZW4sIGxldCdzIHVzZSB0aGUgZGVmYXVsdCAnaW5jbHVkZScKKyAgICAgICAgICAgIHdvcmRzLmluc2VydCgwLCAnaW5jbHVkZScpCisKKyAgICAgICAgYWN0aW9uID0gd29yZHNbMF0KKyAgICAgICAgcGF0dGVybnMgPSBkaXIgPSBkaXJfcGF0dGVybiA9IE5vbmUKKworICAgICAgICBpZiBhY3Rpb24gaW4gKCdpbmNsdWRlJywgJ2V4Y2x1ZGUnLAorICAgICAgICAgICAgICAgICAgICAgICdnbG9iYWwtaW5jbHVkZScsICdnbG9iYWwtZXhjbHVkZScpOgorICAgICAgICAgICAgaWYgbGVuKHdvcmRzKSA8IDI6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nVGVtcGxhdGVFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAiJXIgZXhwZWN0cyA8cGF0dGVybjE+IDxwYXR0ZXJuMj4gLi4uIiAlIGFjdGlvbikKKworICAgICAgICAgICAgcGF0dGVybnMgPSBbY29udmVydF9wYXRoKHdvcmQpIGZvciB3b3JkIGluIHdvcmRzWzE6XV0KKworICAgICAgICBlbGlmIGFjdGlvbiBpbiAoJ3JlY3Vyc2l2ZS1pbmNsdWRlJywgJ3JlY3Vyc2l2ZS1leGNsdWRlJyk6CisgICAgICAgICAgICBpZiBsZW4od29yZHMpIDwgMzoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdUZW1wbGF0ZUVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICIlciBleHBlY3RzIDxkaXI+IDxwYXR0ZXJuMT4gPHBhdHRlcm4yPiAuLi4iICUgYWN0aW9uKQorCisgICAgICAgICAgICBkaXIgPSBjb252ZXJ0X3BhdGgod29yZHNbMV0pCisgICAgICAgICAgICBwYXR0ZXJucyA9IFtjb252ZXJ0X3BhdGgod29yZCkgZm9yIHdvcmQgaW4gd29yZHNbMjpdXQorCisgICAgICAgIGVsaWYgYWN0aW9uIGluICgnZ3JhZnQnLCAncHJ1bmUnKToKKyAgICAgICAgICAgIGlmIGxlbih3b3JkcykgIT0gMjoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdUZW1wbGF0ZUVycm9yKAorICAgICAgICAgICAgICAgICAgICAgIiVyIGV4cGVjdHMgYSBzaW5nbGUgPGRpcl9wYXR0ZXJuPiIgJSBhY3Rpb24pCisKKyAgICAgICAgICAgIGRpcl9wYXR0ZXJuID0gY29udmVydF9wYXRoKHdvcmRzWzFdKQorCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdUZW1wbGF0ZUVycm9yKCJ1bmtub3duIGFjdGlvbiAlciIgJSBhY3Rpb24pCisKKyAgICAgICAgcmV0dXJuIGFjdGlvbiwgcGF0dGVybnMsIGRpciwgZGlyX3BhdHRlcm4KKworICAgIGRlZiBfcHJvY2Vzc190ZW1wbGF0ZV9saW5lKHNlbGYsIGxpbmUpOgorICAgICAgICAjIFBhcnNlIHRoZSBsaW5lOiBzcGxpdCBpdCB1cCwgbWFrZSBzdXJlIHRoZSByaWdodCBudW1iZXIgb2Ygd29yZHMKKyAgICAgICAgIyBpcyB0aGVyZSwgYW5kIHJldHVybiB0aGUgcmVsZXZhbnQgd29yZHMuICAnYWN0aW9uJyBpcyBhbHdheXMKKyAgICAgICAgIyBkZWZpbmVkOiBpdCdzIHRoZSBmaXJzdCB3b3JkIG9mIHRoZSBsaW5lLiAgV2hpY2ggb2YgdGhlIG90aGVyCisgICAgICAgICMgdGhyZWUgYXJlIGRlZmluZWQgZGVwZW5kcyBvbiB0aGUgYWN0aW9uOyBpdCdsbCBiZSBlaXRoZXIKKyAgICAgICAgIyBwYXR0ZXJucywgKGRpciBhbmQgcGF0dGVybnMpLCBvciAoZGlyX3BhdHRlcm4pLgorICAgICAgICBhY3Rpb24sIHBhdHRlcm5zLCBkaXIsIGRpcl9wYXR0ZXJuID0gc2VsZi5fcGFyc2VfdGVtcGxhdGVfbGluZShsaW5lKQorCisgICAgICAgICMgT0ssIG5vdyB3ZSBrbm93IHRoYXQgdGhlIGFjdGlvbiBpcyB2YWxpZCBhbmQgd2UgaGF2ZSB0aGUKKyAgICAgICAgIyByaWdodCBudW1iZXIgb2Ygd29yZHMgb24gdGhlIGxpbmUgZm9yIHRoYXQgYWN0aW9uIC0tIHNvIHdlCisgICAgICAgICMgY2FuIHByb2NlZWQgd2l0aCBtaW5pbWFsIGVycm9yLWNoZWNraW5nLgorICAgICAgICBpZiBhY3Rpb24gPT0gJ2luY2x1ZGUnOgorICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6CisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuX2luY2x1ZGVfcGF0dGVybihwYXR0ZXJuLCBhbmNob3I9VHJ1ZSk6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJubyBmaWxlcyBmb3VuZCBtYXRjaGluZyAlciIsIHBhdHRlcm4pCisKKyAgICAgICAgZWxpZiBhY3Rpb24gPT0gJ2V4Y2x1ZGUnOgorICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6CisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuZXhjbHVkZV9wYXR0ZXJuKHBhdHRlcm4sIGFuY2hvcj1UcnVlKToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoIm5vIHByZXZpb3VzbHktaW5jbHVkZWQgZmlsZXMgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZm91bmQgbWF0Y2hpbmcgJXIiLCBwYXR0ZXJuKQorCisgICAgICAgIGVsaWYgYWN0aW9uID09ICdnbG9iYWwtaW5jbHVkZSc6CisgICAgICAgICAgICBmb3IgcGF0dGVybiBpbiBwYXR0ZXJuczoKKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5faW5jbHVkZV9wYXR0ZXJuKHBhdHRlcm4sIGFuY2hvcj1GYWxzZSk6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJubyBmaWxlcyBmb3VuZCBtYXRjaGluZyAlciAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbnl3aGVyZSBpbiBkaXN0cmlidXRpb24iLCBwYXR0ZXJuKQorCisgICAgICAgIGVsaWYgYWN0aW9uID09ICdnbG9iYWwtZXhjbHVkZSc6CisgICAgICAgICAgICBmb3IgcGF0dGVybiBpbiBwYXR0ZXJuczoKKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5leGNsdWRlX3BhdHRlcm4ocGF0dGVybiwgYW5jaG9yPUZhbHNlKToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoIm5vIHByZXZpb3VzbHktaW5jbHVkZWQgZmlsZXMgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF0Y2hpbmcgJXIgZm91bmQgYW55d2hlcmUgaW4gIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzdHJpYnV0aW9uIiwgcGF0dGVybikKKworICAgICAgICBlbGlmIGFjdGlvbiA9PSAncmVjdXJzaXZlLWluY2x1ZGUnOgorICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6CisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuX2luY2x1ZGVfcGF0dGVybihwYXR0ZXJuLCBwcmVmaXg9ZGlyKToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoIm5vIGZpbGVzIGZvdW5kIG1hdGNoaW5nICVyICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVuZGVyIGRpcmVjdG9yeSAlciIsIHBhdHRlcm4sIGRpcikKKworICAgICAgICBlbGlmIGFjdGlvbiA9PSAncmVjdXJzaXZlLWV4Y2x1ZGUnOgorICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6CisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuZXhjbHVkZV9wYXR0ZXJuKHBhdHRlcm4sIHByZWZpeD1kaXIpOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygibm8gcHJldmlvdXNseS1pbmNsdWRlZCBmaWxlcyAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXRjaGluZyAlciBmb3VuZCB1bmRlciBkaXJlY3RvcnkgJXIiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXR0ZXJuLCBkaXIpCisKKyAgICAgICAgZWxpZiBhY3Rpb24gPT0gJ2dyYWZ0JzoKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9pbmNsdWRlX3BhdHRlcm4oTm9uZSwgcHJlZml4PWRpcl9wYXR0ZXJuKToKKyAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygibm8gZGlyZWN0b3JpZXMgZm91bmQgbWF0Y2hpbmcgJXIiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcl9wYXR0ZXJuKQorCisgICAgICAgIGVsaWYgYWN0aW9uID09ICdwcnVuZSc6CisgICAgICAgICAgICBpZiBub3Qgc2VsZi5leGNsdWRlX3BhdHRlcm4oTm9uZSwgcHJlZml4PWRpcl9wYXR0ZXJuKToKKyAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygibm8gcHJldmlvdXNseS1pbmNsdWRlZCBkaXJlY3RvcmllcyBmb3VuZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1hdGNoaW5nICVyIiwgZGlyX3BhdHRlcm4pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdJbnRlcm5hbEVycm9yKAorICAgICAgICAgICAgICAgICJ0aGlzIGNhbm5vdCBoYXBwZW46IGludmFsaWQgYWN0aW9uICVyIiAlIGFjdGlvbikKKworICAgIGRlZiBfaW5jbHVkZV9wYXR0ZXJuKHNlbGYsIHBhdHRlcm4sIGFuY2hvcj1UcnVlLCBwcmVmaXg9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBpc19yZWdleD1GYWxzZSk6CisgICAgICAgICIiIlNlbGVjdCBzdHJpbmdzIChwcmVzdW1hYmx5IGZpbGVuYW1lcykgZnJvbSAnc2VsZi5maWxlcycgdGhhdAorICAgICAgICBtYXRjaCAncGF0dGVybicsIGEgVW5peC1zdHlsZSB3aWxkY2FyZCAoZ2xvYikgcGF0dGVybi4KKworICAgICAgICBQYXR0ZXJucyBhcmUgbm90IHF1aXRlIHRoZSBzYW1lIGFzIGltcGxlbWVudGVkIGJ5IHRoZSAnZm5tYXRjaCcKKyAgICAgICAgbW9kdWxlOiAnKicgYW5kICc/JyAgbWF0Y2ggbm9uLXNwZWNpYWwgY2hhcmFjdGVycywgd2hlcmUgInNwZWNpYWwiCisgICAgICAgIGlzIHBsYXRmb3JtLWRlcGVuZGVudDogc2xhc2ggb24gVW5peDsgY29sb24sIHNsYXNoLCBhbmQgYmFja3NsYXNoIG9uCisgICAgICAgIERPUy9XaW5kb3dzOyBhbmQgY29sb24gb24gTWFjIE9TLgorCisgICAgICAgIElmICdhbmNob3InIGlzIHRydWUgKHRoZSBkZWZhdWx0KSwgdGhlbiB0aGUgcGF0dGVybiBtYXRjaCBpcyBtb3JlCisgICAgICAgIHN0cmluZ2VudDogIioucHkiIHdpbGwgbWF0Y2ggImZvby5weSIgYnV0IG5vdCAiZm9vL2Jhci5weSIuICBJZgorICAgICAgICAnYW5jaG9yJyBpcyBmYWxzZSwgYm90aCBvZiB0aGVzZSB3aWxsIG1hdGNoLgorCisgICAgICAgIElmICdwcmVmaXgnIGlzIHN1cHBsaWVkLCB0aGVuIG9ubHkgZmlsZW5hbWVzIHN0YXJ0aW5nIHdpdGggJ3ByZWZpeCcKKyAgICAgICAgKGl0c2VsZiBhIHBhdHRlcm4pIGFuZCBlbmRpbmcgd2l0aCAncGF0dGVybicsIHdpdGggYW55dGhpbmcgaW4gYmV0d2VlbgorICAgICAgICB0aGVtLCB3aWxsIG1hdGNoLiAgJ2FuY2hvcicgaXMgaWdub3JlZCBpbiB0aGlzIGNhc2UuCisKKyAgICAgICAgSWYgJ2lzX3JlZ2V4JyBpcyB0cnVlLCAnYW5jaG9yJyBhbmQgJ3ByZWZpeCcgYXJlIGlnbm9yZWQsIGFuZAorICAgICAgICAncGF0dGVybicgaXMgYXNzdW1lZCB0byBiZSBlaXRoZXIgYSBzdHJpbmcgY29udGFpbmluZyBhIHJlZ2V4IG9yIGEKKyAgICAgICAgcmVnZXggb2JqZWN0IC0tIG5vIHRyYW5zbGF0aW9uIGlzIGRvbmUsIHRoZSByZWdleCBpcyBqdXN0IGNvbXBpbGVkCisgICAgICAgIGFuZCB1c2VkIGFzLWlzLgorCisgICAgICAgIFNlbGVjdGVkIHN0cmluZ3Mgd2lsbCBiZSBhZGRlZCB0byBzZWxmLmZpbGVzLgorCisgICAgICAgIFJldHVybiBUcnVlIGlmIGZpbGVzIGFyZSBmb3VuZC4KKyAgICAgICAgIiIiCisgICAgICAgICMgWFhYIGRvY3N0cmluZyBseWluZyBhYm91dCB3aGF0IHRoZSBzcGVjaWFsIGNoYXJzIGFyZT8KKyAgICAgICAgZmlsZXNfZm91bmQgPSBGYWxzZQorICAgICAgICBwYXR0ZXJuX3JlID0gX3RyYW5zbGF0ZV9wYXR0ZXJuKHBhdHRlcm4sIGFuY2hvciwgcHJlZml4LCBpc19yZWdleCkKKworICAgICAgICAjIGRlbGF5ZWQgbG9hZGluZyBvZiBhbGxmaWxlcyBsaXN0CisgICAgICAgIGlmIHNlbGYuYWxsZmlsZXMgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuZmluZGFsbCgpCisKKyAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5hbGxmaWxlczoKKyAgICAgICAgICAgIGlmIHBhdHRlcm5fcmUuc2VhcmNoKG5hbWUpOgorICAgICAgICAgICAgICAgIHNlbGYuZmlsZXMuYXBwZW5kKG5hbWUpCisgICAgICAgICAgICAgICAgZmlsZXNfZm91bmQgPSBUcnVlCisKKyAgICAgICAgcmV0dXJuIGZpbGVzX2ZvdW5kCisKKworIworIyBVdGlsaXR5IGZ1bmN0aW9ucworIworZGVmIF9maW5kYWxsKGRpcj1vcy5jdXJkaXIpOgorICAgICIiIkZpbmQgYWxsIGZpbGVzIHVuZGVyICdkaXInIGFuZCByZXR1cm4gdGhlIGxpc3Qgb2YgZnVsbCBmaWxlbmFtZXMKKyAgICAocmVsYXRpdmUgdG8gJ2RpcicpLgorICAgICIiIgorICAgIGZyb20gc3RhdCBpbXBvcnQgU19JU1JFRywgU19JU0RJUiwgU19JU0xOSworCisgICAgbGlzdCA9IFtdCisgICAgc3RhY2sgPSBbZGlyXQorICAgIHBvcCA9IHN0YWNrLnBvcAorICAgIHB1c2ggPSBzdGFjay5hcHBlbmQKKworICAgIHdoaWxlIHN0YWNrOgorICAgICAgICBkaXIgPSBwb3AoKQorICAgICAgICBuYW1lcyA9IG9zLmxpc3RkaXIoZGlyKQorCisgICAgICAgIGZvciBuYW1lIGluIG5hbWVzOgorICAgICAgICAgICAgaWYgZGlyICE9IG9zLmN1cmRpcjogICAgICAgICMgYXZvaWQgdGhlIGRyZWFkZWQgIi4vIiBzeW5kcm9tZQorICAgICAgICAgICAgICAgIGZ1bGxuYW1lID0gb3MucGF0aC5qb2luKGRpciwgbmFtZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZnVsbG5hbWUgPSBuYW1lCisKKyAgICAgICAgICAgICMgQXZvaWQgZXhjZXNzIHN0YXQgY2FsbHMgLS0ganVzdCBvbmUgd2lsbCBkbywgdGhhbmsgeW91IQorICAgICAgICAgICAgc3RhdCA9IG9zLnN0YXQoZnVsbG5hbWUpCisgICAgICAgICAgICBtb2RlID0gc3RhdC5zdF9tb2RlCisgICAgICAgICAgICBpZiBTX0lTUkVHKG1vZGUpOgorICAgICAgICAgICAgICAgIGxpc3QuYXBwZW5kKGZ1bGxuYW1lKQorICAgICAgICAgICAgZWxpZiBTX0lTRElSKG1vZGUpIGFuZCBub3QgU19JU0xOSyhtb2RlKToKKyAgICAgICAgICAgICAgICBwdXNoKGZ1bGxuYW1lKQorCisgICAgcmV0dXJuIGxpc3QKKworCitkZWYgX2dsb2JfdG9fcmUocGF0dGVybik6CisgICAgIiIiVHJhbnNsYXRlIGEgc2hlbGwtbGlrZSBnbG9iIHBhdHRlcm4gdG8gYSByZWd1bGFyIGV4cHJlc3Npb24uCisKKyAgICBSZXR1cm4gYSBzdHJpbmcgY29udGFpbmluZyB0aGUgcmVnZXguICBEaWZmZXJzIGZyb20KKyAgICAnZm5tYXRjaC50cmFuc2xhdGUoKScgaW4gdGhhdCAnKicgZG9lcyBub3QgbWF0Y2ggInNwZWNpYWwgY2hhcmFjdGVycyIKKyAgICAod2hpY2ggYXJlIHBsYXRmb3JtLXNwZWNpZmljKS4KKyAgICAiIiIKKyAgICBwYXR0ZXJuX3JlID0gZm5tYXRjaC50cmFuc2xhdGUocGF0dGVybikKKworICAgICMgJz8nIGFuZCAnKicgaW4gdGhlIGdsb2IgcGF0dGVybiBiZWNvbWUgJy4nIGFuZCAnLionIGluIHRoZSBSRSwgd2hpY2gKKyAgICAjIElNSE8gaXMgd3JvbmcgLS0gJz8nIGFuZCAnKicgYXJlbid0IHN1cHBvc2VkIHRvIG1hdGNoIHNsYXNoIGluIFVuaXgsCisgICAgIyBhbmQgYnkgZXh0ZW5zaW9uIHRoZXkgc2hvdWxkbid0IG1hdGNoIHN1Y2ggInNwZWNpYWwgY2hhcmFjdGVycyIgdW5kZXIKKyAgICAjIGFueSBPUy4gIFNvIGNoYW5nZSBhbGwgbm9uLWVzY2FwZWQgZG90cyBpbiB0aGUgUkUgdG8gbWF0Y2ggYW55CisgICAgIyBjaGFyYWN0ZXIgZXhjZXB0IHRoZSBzcGVjaWFsIGNoYXJhY3RlcnMgKGN1cnJlbnRseToganVzdCBvcy5zZXApLgorICAgIHNlcCA9IG9zLnNlcAorICAgIGlmIG9zLnNlcCA9PSAnXFwnOgorICAgICAgICAjIHdlJ3JlIHVzaW5nIGEgcmVnZXggdG8gbWFuaXB1bGF0ZSBhIHJlZ2V4LCBzbyB3ZSBuZWVkCisgICAgICAgICMgdG8gZXNjYXBlIHRoZSBiYWNrc2xhc2ggdHdpY2UKKyAgICAgICAgc2VwID0gcidcXFxcJworICAgIGVzY2FwZWQgPSByJ1wxW14lc10nICUgc2VwCisgICAgcGF0dGVybl9yZSA9IHJlLnN1YihyJygoPzwhXFwpKFxcXFwpKilcLicsIGVzY2FwZWQsIHBhdHRlcm5fcmUpCisgICAgcmV0dXJuIHBhdHRlcm5fcmUKKworCitkZWYgX3RyYW5zbGF0ZV9wYXR0ZXJuKHBhdHRlcm4sIGFuY2hvcj1UcnVlLCBwcmVmaXg9Tm9uZSwgaXNfcmVnZXg9RmFsc2UpOgorICAgICIiIlRyYW5zbGF0ZSBhIHNoZWxsLWxpa2Ugd2lsZGNhcmQgcGF0dGVybiB0byBhIGNvbXBpbGVkIHJlZ3VsYXIKKyAgICBleHByZXNzaW9uLgorCisgICAgUmV0dXJuIHRoZSBjb21waWxlZCByZWdleC4gIElmICdpc19yZWdleCcgdHJ1ZSwKKyAgICB0aGVuICdwYXR0ZXJuJyBpcyBkaXJlY3RseSBjb21waWxlZCB0byBhIHJlZ2V4IChpZiBpdCdzIGEgc3RyaW5nKQorICAgIG9yIGp1c3QgcmV0dXJuZWQgYXMtaXMgKGFzc3VtZXMgaXQncyBhIHJlZ2V4IG9iamVjdCkuCisgICAgIiIiCisgICAgaWYgaXNfcmVnZXg6CisgICAgICAgIGlmIGlzaW5zdGFuY2UocGF0dGVybiwgc3RyKToKKyAgICAgICAgICAgIHJldHVybiByZS5jb21waWxlKHBhdHRlcm4pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gcGF0dGVybgorCisgICAgaWYgcGF0dGVybjoKKyAgICAgICAgcGF0dGVybl9yZSA9IF9nbG9iX3RvX3JlKHBhdHRlcm4pCisgICAgZWxzZToKKyAgICAgICAgcGF0dGVybl9yZSA9ICcnCisKKyAgICBpZiBwcmVmaXggaXMgbm90IE5vbmU6CisgICAgICAgICMgZGl0Y2ggZW5kIG9mIHBhdHRlcm4gY2hhcmFjdGVyCisgICAgICAgIGVtcHR5X3BhdHRlcm4gPSBfZ2xvYl90b19yZSgnJykKKyAgICAgICAgcHJlZml4X3JlID0gX2dsb2JfdG9fcmUocHJlZml4KVs6LWxlbihlbXB0eV9wYXR0ZXJuKV0KKyAgICAgICAgc2VwID0gb3Muc2VwCisgICAgICAgIGlmIG9zLnNlcCA9PSAnXFwnOgorICAgICAgICAgICAgc2VwID0gcidcXCcKKyAgICAgICAgcGF0dGVybl9yZSA9ICJeIiArIHNlcC5qb2luKChwcmVmaXhfcmUsICIuKiIgKyBwYXR0ZXJuX3JlKSkKKyAgICBlbHNlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIG5vIHByZWZpeCAtLSByZXNwZWN0IGFuY2hvciBmbGFnCisgICAgICAgIGlmIGFuY2hvcjoKKyAgICAgICAgICAgIHBhdHRlcm5fcmUgPSAiXiIgKyBwYXR0ZXJuX3JlCisKKyAgICByZXR1cm4gcmUuY29tcGlsZShwYXR0ZXJuX3JlKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9tYXJrZXJzLnB5IGIvTGliL3BhY2thZ2luZy9tYXJrZXJzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYzZmRjMTkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL21hcmtlcnMucHkKQEAgLTAsMCArMSwxODkgQEAKKyIiIlBhcnNlciBmb3IgdGhlIGVudmlyb25tZW50IG1hcmtlcnMgbWljcm8tbGFuZ3VhZ2UgZGVmaW5lZCBpbiBQRVAgMzQ1LiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCBwbGF0Zm9ybQorZnJvbSBpbyBpbXBvcnQgQnl0ZXNJTworZnJvbSB0b2tlbml6ZSBpbXBvcnQgdG9rZW5pemUsIE5BTUUsIE9QLCBTVFJJTkcsIEVORE1BUktFUiwgRU5DT0RJTkcKKworX19hbGxfXyA9IFsnaW50ZXJwcmV0J10KKworCisjIGFsbG93ZWQgb3BlcmF0b3JzCitfT1BFUkFUT1JTID0geyc9PSc6IGxhbWJkYSB4LCB5OiB4ID09IHksCisgICAgICAgICAgICAgICchPSc6IGxhbWJkYSB4LCB5OiB4ICE9IHksCisgICAgICAgICAgICAgICc+JzogbGFtYmRhIHgsIHk6IHggPiB5LAorICAgICAgICAgICAgICAnPj0nOiBsYW1iZGEgeCwgeTogeCA+PSB5LAorICAgICAgICAgICAgICAnPCc6IGxhbWJkYSB4LCB5OiB4IDwgeSwKKyAgICAgICAgICAgICAgJzw9JzogbGFtYmRhIHgsIHk6IHggPD0geSwKKyAgICAgICAgICAgICAgJ2luJzogbGFtYmRhIHgsIHk6IHggaW4geSwKKyAgICAgICAgICAgICAgJ25vdCBpbic6IGxhbWJkYSB4LCB5OiB4IG5vdCBpbiB5fQorCisKK2RlZiBfb3BlcmF0ZShvcGVyYXRpb24sIHgsIHkpOgorICAgIHJldHVybiBfT1BFUkFUT1JTW29wZXJhdGlvbl0oeCwgeSkKKworCisjIHJlc3RyaWN0ZWQgc2V0IG9mIHZhcmlhYmxlcworX1ZBUlMgPSB7J3N5cy5wbGF0Zm9ybSc6IHN5cy5wbGF0Zm9ybSwKKyAgICAgICAgICdweXRob25fdmVyc2lvbic6ICclcy4lcycgJSBzeXMudmVyc2lvbl9pbmZvWzoyXSwKKyAgICAgICAgICMgRklYTUUgcGFyc2luZyBzeXMucGxhdGZvcm0gaXMgbm90IHJlbGlhYmxlLCBidXQgdGhlcmUgaXMgbm8gb3RoZXIKKyAgICAgICAgICMgd2F5IHRvIGdldCBlLmcuIDIuNy4yKywgYW5kIHRoZSBQRVAgaXMgZGVmaW5lZCB3aXRoIHN5cy52ZXJzaW9uCisgICAgICAgICAncHl0aG9uX2Z1bGxfdmVyc2lvbic6IHN5cy52ZXJzaW9uLnNwbGl0KCcgJywgMSlbMF0sCisgICAgICAgICAnb3MubmFtZSc6IG9zLm5hbWUsCisgICAgICAgICAncGxhdGZvcm0udmVyc2lvbic6IHBsYXRmb3JtLnZlcnNpb24oKSwKKyAgICAgICAgICdwbGF0Zm9ybS5tYWNoaW5lJzogcGxhdGZvcm0ubWFjaGluZSgpLAorICAgICAgICAgJ3BsYXRmb3JtLnB5dGhvbl9pbXBsZW1lbnRhdGlvbic6IHBsYXRmb3JtLnB5dGhvbl9pbXBsZW1lbnRhdGlvbigpLAorICAgICAgICB9CisKKworY2xhc3MgX09wZXJhdGlvbjoKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBleGVjdXRpb25fY29udGV4dD1Ob25lKToKKyAgICAgICAgc2VsZi5sZWZ0ID0gTm9uZQorICAgICAgICBzZWxmLm9wID0gTm9uZQorICAgICAgICBzZWxmLnJpZ2h0ID0gTm9uZQorICAgICAgICBpZiBleGVjdXRpb25fY29udGV4dCBpcyBOb25lOgorICAgICAgICAgICAgZXhlY3V0aW9uX2NvbnRleHQgPSB7fQorICAgICAgICBzZWxmLmV4ZWN1dGlvbl9jb250ZXh0ID0gZXhlY3V0aW9uX2NvbnRleHQKKworICAgIGRlZiBfZ2V0X3ZhcihzZWxmLCBuYW1lKToKKyAgICAgICAgaWYgbmFtZSBpbiBzZWxmLmV4ZWN1dGlvbl9jb250ZXh0OgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuZXhlY3V0aW9uX2NvbnRleHRbbmFtZV0KKyAgICAgICAgcmV0dXJuIF9WQVJTW25hbWVdCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiAnJXMgJXMgJXMnICUgKHNlbGYubGVmdCwgc2VsZi5vcCwgc2VsZi5yaWdodCkKKworICAgIGRlZiBfaXNfc3RyaW5nKHNlbGYsIHZhbHVlKToKKyAgICAgICAgaWYgdmFsdWUgaXMgTm9uZSBvciBsZW4odmFsdWUpIDwgMjoKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICBmb3IgZGVsaW1pdGVyIGluICciXCcnOgorICAgICAgICAgICAgaWYgdmFsdWVbMF0gPT0gdmFsdWVbLTFdID09IGRlbGltaXRlcjoKKyAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGRlZiBfaXNfbmFtZShzZWxmLCB2YWx1ZSk6CisgICAgICAgIHJldHVybiB2YWx1ZSBpbiBfVkFSUworCisgICAgZGVmIF9jb252ZXJ0KHNlbGYsIHZhbHVlKToKKyAgICAgICAgaWYgdmFsdWUgaW4gX1ZBUlM6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fZ2V0X3Zhcih2YWx1ZSkKKyAgICAgICAgcmV0dXJuIHZhbHVlLnN0cmlwKCciXCcnKQorCisgICAgZGVmIF9jaGVja19uYW1lKHNlbGYsIHZhbHVlKToKKyAgICAgICAgaWYgdmFsdWUgbm90IGluIF9WQVJTOgorICAgICAgICAgICAgcmFpc2UgTmFtZUVycm9yKHZhbHVlKQorCisgICAgZGVmIF9ub25zZW5zZV9vcChzZWxmKToKKyAgICAgICAgbXNnID0gJ1RoaXMgb3BlcmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgOiAiJXMiJyAlIHNlbGYKKyAgICAgICAgcmFpc2UgU3ludGF4RXJyb3IobXNnKQorCisgICAgZGVmIF9fY2FsbF9fKHNlbGYpOgorICAgICAgICAjIG1ha2Ugc3VyZSB3ZSBkbyBzb21ldGhpbmcgdXNlZnVsCisgICAgICAgIGlmIHNlbGYuX2lzX3N0cmluZyhzZWxmLmxlZnQpOgorICAgICAgICAgICAgaWYgc2VsZi5faXNfc3RyaW5nKHNlbGYucmlnaHQpOgorICAgICAgICAgICAgICAgIHNlbGYuX25vbnNlbnNlX29wKCkKKyAgICAgICAgICAgIHNlbGYuX2NoZWNrX25hbWUoc2VsZi5yaWdodCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9pc19zdHJpbmcoc2VsZi5yaWdodCk6CisgICAgICAgICAgICAgICAgc2VsZi5fbm9uc2Vuc2Vfb3AoKQorICAgICAgICAgICAgc2VsZi5fY2hlY2tfbmFtZShzZWxmLmxlZnQpCisKKyAgICAgICAgaWYgc2VsZi5vcCBub3QgaW4gX09QRVJBVE9SUzoKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignT3BlcmF0b3Igbm90IHN1cHBvcnRlZCAiJXMiJyAlIHNlbGYub3ApCisKKyAgICAgICAgbGVmdCA9IHNlbGYuX2NvbnZlcnQoc2VsZi5sZWZ0KQorICAgICAgICByaWdodCA9IHNlbGYuX2NvbnZlcnQoc2VsZi5yaWdodCkKKyAgICAgICAgcmV0dXJuIF9vcGVyYXRlKHNlbGYub3AsIGxlZnQsIHJpZ2h0KQorCisKK2NsYXNzIF9PUjoKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbGVmdCwgcmlnaHQ9Tm9uZSk6CisgICAgICAgIHNlbGYubGVmdCA9IGxlZnQKKyAgICAgICAgc2VsZi5yaWdodCA9IHJpZ2h0CisKKyAgICBkZWYgZmlsbGVkKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5yaWdodCBpcyBub3QgTm9uZQorCisgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gJ09SKCVyLCAlciknICUgKHNlbGYubGVmdCwgc2VsZi5yaWdodCkKKworICAgIGRlZiBfX2NhbGxfXyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYubGVmdCgpIG9yIHNlbGYucmlnaHQoKQorCisKK2NsYXNzIF9BTkQ6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGxlZnQsIHJpZ2h0PU5vbmUpOgorICAgICAgICBzZWxmLmxlZnQgPSBsZWZ0CisgICAgICAgIHNlbGYucmlnaHQgPSByaWdodAorCisgICAgZGVmIGZpbGxlZChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYucmlnaHQgaXMgbm90IE5vbmUKKworICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKKyAgICAgICAgcmV0dXJuICdBTkQoJXIsICVyKScgJSAoc2VsZi5sZWZ0LCBzZWxmLnJpZ2h0KQorCisgICAgZGVmIF9fY2FsbF9fKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5sZWZ0KCkgYW5kIHNlbGYucmlnaHQoKQorCisKK2RlZiBpbnRlcnByZXQobWFya2VyLCBleGVjdXRpb25fY29udGV4dD1Ob25lKToKKyAgICAiIiJJbnRlcnByZXQgYSBtYXJrZXIgYW5kIHJldHVybiBhIHJlc3VsdCBkZXBlbmRpbmcgb24gZW52aXJvbm1lbnQuIiIiCisgICAgbWFya2VyID0gbWFya2VyLnN0cmlwKCkuZW5jb2RlKCkKKyAgICBvcHMgPSBbXQorICAgIG9wX3N0YXJ0aW5nID0gVHJ1ZQorICAgIGZvciB0b2tlbiBpbiB0b2tlbml6ZShCeXRlc0lPKG1hcmtlcikucmVhZGxpbmUpOgorICAgICAgICAjIFVucGFjayB0b2tlbgorICAgICAgICB0b2t0eXBlLCB0b2t2YWwsIHJvd2NvbCwgbGluZSwgbG9naWNhbF9saW5lID0gdG9rZW4KKyAgICAgICAgaWYgdG9rdHlwZSBub3QgaW4gKE5BTUUsIE9QLCBTVFJJTkcsIEVORE1BUktFUiwgRU5DT0RJTkcpOgorICAgICAgICAgICAgcmFpc2UgU3ludGF4RXJyb3IoJ1R5cGUgbm90IHN1cHBvcnRlZCAiJXMiJyAlIHRva3ZhbCkKKworICAgICAgICBpZiBvcF9zdGFydGluZzoKKyAgICAgICAgICAgIG9wID0gX09wZXJhdGlvbihleGVjdXRpb25fY29udGV4dCkKKyAgICAgICAgICAgIGlmIGxlbihvcHMpID4gMDoKKyAgICAgICAgICAgICAgICBsYXN0ID0gb3BzWy0xXQorICAgICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UobGFzdCwgKF9PUiwgX0FORCkpIGFuZCBub3QgbGFzdC5maWxsZWQoKToKKyAgICAgICAgICAgICAgICAgICAgbGFzdC5yaWdodCA9IG9wCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgb3BzLmFwcGVuZChvcCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgb3BzLmFwcGVuZChvcCkKKyAgICAgICAgICAgIG9wX3N0YXJ0aW5nID0gRmFsc2UKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG9wID0gb3BzWy0xXQorCisgICAgICAgIGlmICh0b2t0eXBlID09IEVORE1BUktFUiBvcgorICAgICAgICAgICAgKHRva3R5cGUgPT0gTkFNRSBhbmQgdG9rdmFsIGluICgnYW5kJywgJ29yJykpKToKKyAgICAgICAgICAgIGlmIHRva3R5cGUgPT0gTkFNRSBhbmQgdG9rdmFsID09ICdhbmQnOgorICAgICAgICAgICAgICAgIG9wcy5hcHBlbmQoX0FORChvcHMucG9wKCkpKQorICAgICAgICAgICAgZWxpZiB0b2t0eXBlID09IE5BTUUgYW5kIHRva3ZhbCA9PSAnb3InOgorICAgICAgICAgICAgICAgIG9wcy5hcHBlbmQoX09SKG9wcy5wb3AoKSkpCisgICAgICAgICAgICBvcF9zdGFydGluZyA9IFRydWUKKyAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgaWYgaXNpbnN0YW5jZShvcCwgKF9PUiwgX0FORCkpIGFuZCBvcC5yaWdodCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIG9wID0gb3AucmlnaHQKKworICAgICAgICBpZiAoKHRva3R5cGUgaW4gKE5BTUUsIFNUUklORykgYW5kIHRva3ZhbCBub3QgaW4gKCdpbicsICdub3QnKSkKKyAgICAgICAgICAgIG9yICh0b2t0eXBlID09IE9QIGFuZCB0b2t2YWwgPT0gJy4nKSk6CisgICAgICAgICAgICBpZiBvcC5vcCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGlmIG9wLmxlZnQgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgb3AubGVmdCA9IHRva3ZhbAorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIG9wLmxlZnQgKz0gdG9rdmFsCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGlmIG9wLnJpZ2h0IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgICAgIG9wLnJpZ2h0ID0gdG9rdmFsCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgb3AucmlnaHQgKz0gdG9rdmFsCisgICAgICAgIGVsaWYgdG9rdHlwZSA9PSBPUCBvciB0b2t2YWwgaW4gKCdpbicsICdub3QnKToKKyAgICAgICAgICAgIGlmIHRva3ZhbCA9PSAnaW4nIGFuZCBvcC5vcCA9PSAnbm90JzoKKyAgICAgICAgICAgICAgICBvcC5vcCA9ICdub3QgaW4nCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG9wLm9wID0gdG9rdmFsCisKKyAgICBmb3Igb3AgaW4gb3BzOgorICAgICAgICBpZiBub3Qgb3AoKToKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgIHJldHVybiBUcnVlCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL21ldGFkYXRhLnB5IGIvTGliL3BhY2thZ2luZy9tZXRhZGF0YS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yOTkzZWJiCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9tZXRhZGF0YS5weQpAQCAtMCwwICsxLDU3MCBAQAorIiIiSW1wbGVtZW50YXRpb24gb2YgdGhlIE1ldGFkYXRhIGZvciBQeXRob24gcGFja2FnZXMgUEVQcy4KKworU3VwcG9ydHMgYWxsIG1ldGFkYXRhIGZvcm1hdHMgKDEuMCwgMS4xLCAxLjIpLgorIiIiCisKK2ltcG9ydCByZQoraW1wb3J0IGxvZ2dpbmcKKworZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KK2Zyb20gZW1haWwgaW1wb3J0IG1lc3NhZ2VfZnJvbV9maWxlCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5tYXJrZXJzIGltcG9ydCBpbnRlcnByZXQKK2Zyb20gcGFja2FnaW5nLnZlcnNpb24gaW1wb3J0IChpc192YWxpZF9wcmVkaWNhdGUsIGlzX3ZhbGlkX3ZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNfdmFsaWRfdmVyc2lvbnMpCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChNZXRhZGF0YU1pc3NpbmdFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1ldGFkYXRhQ29uZmxpY3RFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1ldGFkYXRhVW5yZWNvZ25pemVkVmVyc2lvbkVycm9yKQorCit0cnk6CisgICAgIyBkb2N1dGlscyBpcyBpbnN0YWxsZWQKKyAgICBmcm9tIGRvY3V0aWxzLnV0aWxzIGltcG9ydCBSZXBvcnRlcgorICAgIGZyb20gZG9jdXRpbHMucGFyc2Vycy5yc3QgaW1wb3J0IFBhcnNlcgorICAgIGZyb20gZG9jdXRpbHMgaW1wb3J0IGZyb250ZW5kCisgICAgZnJvbSBkb2N1dGlscyBpbXBvcnQgbm9kZXMKKworICAgIGNsYXNzIFNpbGVudFJlcG9ydGVyKFJlcG9ydGVyKToKKworICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgc291cmNlLCByZXBvcnRfbGV2ZWwsIGhhbHRfbGV2ZWwsIHN0cmVhbT1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgZGVidWc9MCwgZW5jb2Rpbmc9J2FzY2lpJywgZXJyb3JfaGFuZGxlcj0ncmVwbGFjZScpOgorICAgICAgICAgICAgc2VsZi5tZXNzYWdlcyA9IFtdCisgICAgICAgICAgICBzdXBlcihTaWxlbnRSZXBvcnRlciwgc2VsZikuX19pbml0X18oCisgICAgICAgICAgICAgICAgc291cmNlLCByZXBvcnRfbGV2ZWwsIGhhbHRfbGV2ZWwsIHN0cmVhbSwKKyAgICAgICAgICAgICAgICBkZWJ1ZywgZW5jb2RpbmcsIGVycm9yX2hhbmRsZXIpCisKKyAgICAgICAgZGVmIHN5c3RlbV9tZXNzYWdlKHNlbGYsIGxldmVsLCBtZXNzYWdlLCAqY2hpbGRyZW4sICoqa3dhcmdzKToKKyAgICAgICAgICAgIHNlbGYubWVzc2FnZXMuYXBwZW5kKChsZXZlbCwgbWVzc2FnZSwgY2hpbGRyZW4sIGt3YXJncykpCisKKyAgICBfSEFTX0RPQ1VUSUxTID0gVHJ1ZQorZXhjZXB0IEltcG9ydEVycm9yOgorICAgICMgZG9jdXRpbHMgaXMgbm90IGluc3RhbGxlZAorICAgIF9IQVNfRE9DVVRJTFMgPSBGYWxzZQorCisjIHB1YmxpYyBBUEkgb2YgdGhpcyBtb2R1bGUKK19fYWxsX18gPSBbJ01ldGFkYXRhJywgJ1BLR19JTkZPX0VOQ09ESU5HJywgJ1BLR19JTkZPX1BSRUZFUlJFRF9WRVJTSU9OJ10KKworIyBFbmNvZGluZyB1c2VkIGZvciB0aGUgUEtHLUlORk8gZmlsZXMKK1BLR19JTkZPX0VOQ09ESU5HID0gJ3V0Zi04JworCisjIHByZWZlcnJlZCB2ZXJzaW9uLiBIb3BlZnVsbHkgd2lsbCBiZSBjaGFuZ2VkCisjIHRvIDEuMiBvbmNlIFBFUCAzNDUgaXMgc3VwcG9ydGVkIGV2ZXJ5d2hlcmUKK1BLR19JTkZPX1BSRUZFUlJFRF9WRVJTSU9OID0gJzEuMCcKKworX0xJTkVfUFJFRklYID0gcmUuY29tcGlsZSgnXG4gICAgICAgXHwnKQorXzI0MV9GSUVMRFMgPSAoJ01ldGFkYXRhLVZlcnNpb24nLCAnTmFtZScsICdWZXJzaW9uJywgJ1BsYXRmb3JtJywKKyAgICAgICAgICAgICAgICdTdW1tYXJ5JywgJ0Rlc2NyaXB0aW9uJywKKyAgICAgICAgICAgICAgICdLZXl3b3JkcycsICdIb21lLXBhZ2UnLCAnQXV0aG9yJywgJ0F1dGhvci1lbWFpbCcsCisgICAgICAgICAgICAgICAnTGljZW5zZScpCisKK18zMTRfRklFTERTID0gKCdNZXRhZGF0YS1WZXJzaW9uJywgJ05hbWUnLCAnVmVyc2lvbicsICdQbGF0Zm9ybScsCisgICAgICAgICAgICAgICAnU3VwcG9ydGVkLVBsYXRmb3JtJywgJ1N1bW1hcnknLCAnRGVzY3JpcHRpb24nLAorICAgICAgICAgICAgICAgJ0tleXdvcmRzJywgJ0hvbWUtcGFnZScsICdBdXRob3InLCAnQXV0aG9yLWVtYWlsJywKKyAgICAgICAgICAgICAgICdMaWNlbnNlJywgJ0NsYXNzaWZpZXInLCAnRG93bmxvYWQtVVJMJywgJ09ic29sZXRlcycsCisgICAgICAgICAgICAgICAnUHJvdmlkZXMnLCAnUmVxdWlyZXMnKQorCitfMzE0X01BUktFUlMgPSAoJ09ic29sZXRlcycsICdQcm92aWRlcycsICdSZXF1aXJlcycsICdDbGFzc2lmaWVyJywKKyAgICAgICAgICAgICAgICAnRG93bmxvYWQtVVJMJykKKworXzM0NV9GSUVMRFMgPSAoJ01ldGFkYXRhLVZlcnNpb24nLCAnTmFtZScsICdWZXJzaW9uJywgJ1BsYXRmb3JtJywKKyAgICAgICAgICAgICAgICdTdXBwb3J0ZWQtUGxhdGZvcm0nLCAnU3VtbWFyeScsICdEZXNjcmlwdGlvbicsCisgICAgICAgICAgICAgICAnS2V5d29yZHMnLCAnSG9tZS1wYWdlJywgJ0F1dGhvcicsICdBdXRob3ItZW1haWwnLAorICAgICAgICAgICAgICAgJ01haW50YWluZXInLCAnTWFpbnRhaW5lci1lbWFpbCcsICdMaWNlbnNlJywKKyAgICAgICAgICAgICAgICdDbGFzc2lmaWVyJywgJ0Rvd25sb2FkLVVSTCcsICdPYnNvbGV0ZXMtRGlzdCcsCisgICAgICAgICAgICAgICAnUHJvamVjdC1VUkwnLCAnUHJvdmlkZXMtRGlzdCcsICdSZXF1aXJlcy1EaXN0JywKKyAgICAgICAgICAgICAgICdSZXF1aXJlcy1QeXRob24nLCAnUmVxdWlyZXMtRXh0ZXJuYWwnKQorCitfMzQ1X01BUktFUlMgPSAoJ1Byb3ZpZGVzLURpc3QnLCAnUmVxdWlyZXMtRGlzdCcsICdSZXF1aXJlcy1QeXRob24nLAorICAgICAgICAgICAgICAgICdPYnNvbGV0ZXMtRGlzdCcsICdSZXF1aXJlcy1FeHRlcm5hbCcsICdNYWludGFpbmVyJywKKyAgICAgICAgICAgICAgICAnTWFpbnRhaW5lci1lbWFpbCcsICdQcm9qZWN0LVVSTCcpCisKK19BTExfRklFTERTID0gc2V0KCkKK19BTExfRklFTERTLnVwZGF0ZShfMjQxX0ZJRUxEUykKK19BTExfRklFTERTLnVwZGF0ZShfMzE0X0ZJRUxEUykKK19BTExfRklFTERTLnVwZGF0ZShfMzQ1X0ZJRUxEUykKKworCitkZWYgX3ZlcnNpb24yZmllbGRsaXN0KHZlcnNpb24pOgorICAgIGlmIHZlcnNpb24gPT0gJzEuMCc6CisgICAgICAgIHJldHVybiBfMjQxX0ZJRUxEUworICAgIGVsaWYgdmVyc2lvbiA9PSAnMS4xJzoKKyAgICAgICAgcmV0dXJuIF8zMTRfRklFTERTCisgICAgZWxpZiB2ZXJzaW9uID09ICcxLjInOgorICAgICAgICByZXR1cm4gXzM0NV9GSUVMRFMKKyAgICByYWlzZSBNZXRhZGF0YVVucmVjb2duaXplZFZlcnNpb25FcnJvcih2ZXJzaW9uKQorCisKK2RlZiBfYmVzdF92ZXJzaW9uKGZpZWxkcyk6CisgICAgIiIiRGV0ZWN0IHRoZSBiZXN0IHZlcnNpb24gZGVwZW5kaW5nIG9uIHRoZSBmaWVsZHMgdXNlZC4iIiIKKyAgICBkZWYgX2hhc19tYXJrZXIoa2V5cywgbWFya2Vycyk6CisgICAgICAgIGZvciBtYXJrZXIgaW4gbWFya2VyczoKKyAgICAgICAgICAgIGlmIG1hcmtlciBpbiBrZXlzOgorICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAga2V5cyA9IGxpc3QoZmllbGRzKQorICAgIHBvc3NpYmxlX3ZlcnNpb25zID0gWycxLjAnLCAnMS4xJywgJzEuMiddCisKKyAgICAjIGZpcnN0IGxldCdzIHRyeSB0byBzZWUgaWYgYSBmaWVsZCBpcyBub3QgcGFydCBvZiBvbmUgb2YgdGhlIHZlcnNpb24KKyAgICBmb3Iga2V5IGluIGtleXM6CisgICAgICAgIGlmIGtleSBub3QgaW4gXzI0MV9GSUVMRFMgYW5kICcxLjAnIGluIHBvc3NpYmxlX3ZlcnNpb25zOgorICAgICAgICAgICAgcG9zc2libGVfdmVyc2lvbnMucmVtb3ZlKCcxLjAnKQorICAgICAgICBpZiBrZXkgbm90IGluIF8zMTRfRklFTERTIGFuZCAnMS4xJyBpbiBwb3NzaWJsZV92ZXJzaW9uczoKKyAgICAgICAgICAgIHBvc3NpYmxlX3ZlcnNpb25zLnJlbW92ZSgnMS4xJykKKyAgICAgICAgaWYga2V5IG5vdCBpbiBfMzQ1X0ZJRUxEUyBhbmQgJzEuMicgaW4gcG9zc2libGVfdmVyc2lvbnM6CisgICAgICAgICAgICBwb3NzaWJsZV92ZXJzaW9ucy5yZW1vdmUoJzEuMicpCisKKyAgICAjIHBvc3NpYmxlX3ZlcnNpb24gY29udGFpbnMgcXVhbGlmaWVkIHZlcnNpb25zCisgICAgaWYgbGVuKHBvc3NpYmxlX3ZlcnNpb25zKSA9PSAxOgorICAgICAgICByZXR1cm4gcG9zc2libGVfdmVyc2lvbnNbMF0gICAjIGZvdW5kICEKKyAgICBlbGlmIGxlbihwb3NzaWJsZV92ZXJzaW9ucykgPT0gMDoKKyAgICAgICAgcmFpc2UgTWV0YWRhdGFDb25mbGljdEVycm9yKCdVbmtub3duIG1ldGFkYXRhIHNldCcpCisKKyAgICAjIGxldCdzIHNlZSBpZiBvbmUgdW5pcXVlIG1hcmtlciBpcyBmb3VuZAorICAgIGlzXzFfMSA9ICcxLjEnIGluIHBvc3NpYmxlX3ZlcnNpb25zIGFuZCBfaGFzX21hcmtlcihrZXlzLCBfMzE0X01BUktFUlMpCisgICAgaXNfMV8yID0gJzEuMicgaW4gcG9zc2libGVfdmVyc2lvbnMgYW5kIF9oYXNfbWFya2VyKGtleXMsIF8zNDVfTUFSS0VSUykKKyAgICBpZiBpc18xXzEgYW5kIGlzXzFfMjoKKyAgICAgICAgcmFpc2UgTWV0YWRhdGFDb25mbGljdEVycm9yKCdZb3UgdXNlZCBpbmNvbXBhdGlibGUgMS4xIGFuZCAxLjIgZmllbGRzJykKKworICAgICMgd2UgaGF2ZSB0aGUgY2hvaWNlLCBlaXRoZXIgMS4wLCBvciAxLjIKKyAgICAjICAgLSAxLjAgaGFzIGEgYnJva2VuIFN1bW1hcnkgZmllbGQgYnV0IHdvcmtzIHdpdGggYWxsIHRvb2xzCisgICAgIyAgIC0gMS4xIGlzIHRvIGF2b2lkCisgICAgIyAgIC0gMS4yIGZpeGVzIFN1bW1hcnkgYnV0IGlzIG5vdCB3aWRlc3ByZWFkIHlldAorICAgIGlmIG5vdCBpc18xXzEgYW5kIG5vdCBpc18xXzI6CisgICAgICAgICMgd2UgY291bGRuJ3QgZmluZCBhbnkgc3BlY2lmaWMgbWFya2VyCisgICAgICAgIGlmIFBLR19JTkZPX1BSRUZFUlJFRF9WRVJTSU9OIGluIHBvc3NpYmxlX3ZlcnNpb25zOgorICAgICAgICAgICAgcmV0dXJuIFBLR19JTkZPX1BSRUZFUlJFRF9WRVJTSU9OCisgICAgaWYgaXNfMV8xOgorICAgICAgICByZXR1cm4gJzEuMScKKworICAgICMgZGVmYXVsdCBtYXJrZXIgd2hlbiAxLjAgaXMgZGlzcXVhbGlmaWVkCisgICAgcmV0dXJuICcxLjInCisKKworX0FUVFIyRklFTEQgPSB7CisgICAgJ21ldGFkYXRhX3ZlcnNpb24nOiAnTWV0YWRhdGEtVmVyc2lvbicsCisgICAgJ25hbWUnOiAnTmFtZScsCisgICAgJ3ZlcnNpb24nOiAnVmVyc2lvbicsCisgICAgJ3BsYXRmb3JtJzogJ1BsYXRmb3JtJywKKyAgICAnc3VwcG9ydGVkX3BsYXRmb3JtJzogJ1N1cHBvcnRlZC1QbGF0Zm9ybScsCisgICAgJ3N1bW1hcnknOiAnU3VtbWFyeScsCisgICAgJ2Rlc2NyaXB0aW9uJzogJ0Rlc2NyaXB0aW9uJywKKyAgICAna2V5d29yZHMnOiAnS2V5d29yZHMnLAorICAgICdob21lX3BhZ2UnOiAnSG9tZS1wYWdlJywKKyAgICAnYXV0aG9yJzogJ0F1dGhvcicsCisgICAgJ2F1dGhvcl9lbWFpbCc6ICdBdXRob3ItZW1haWwnLAorICAgICdtYWludGFpbmVyJzogJ01haW50YWluZXInLAorICAgICdtYWludGFpbmVyX2VtYWlsJzogJ01haW50YWluZXItZW1haWwnLAorICAgICdsaWNlbnNlJzogJ0xpY2Vuc2UnLAorICAgICdjbGFzc2lmaWVyJzogJ0NsYXNzaWZpZXInLAorICAgICdkb3dubG9hZF91cmwnOiAnRG93bmxvYWQtVVJMJywKKyAgICAnb2Jzb2xldGVzX2Rpc3QnOiAnT2Jzb2xldGVzLURpc3QnLAorICAgICdwcm92aWRlc19kaXN0JzogJ1Byb3ZpZGVzLURpc3QnLAorICAgICdyZXF1aXJlc19kaXN0JzogJ1JlcXVpcmVzLURpc3QnLAorICAgICdyZXF1aXJlc19weXRob24nOiAnUmVxdWlyZXMtUHl0aG9uJywKKyAgICAncmVxdWlyZXNfZXh0ZXJuYWwnOiAnUmVxdWlyZXMtRXh0ZXJuYWwnLAorICAgICdyZXF1aXJlcyc6ICdSZXF1aXJlcycsCisgICAgJ3Byb3ZpZGVzJzogJ1Byb3ZpZGVzJywKKyAgICAnb2Jzb2xldGVzJzogJ09ic29sZXRlcycsCisgICAgJ3Byb2plY3RfdXJsJzogJ1Byb2plY3QtVVJMJywKK30KKworX1BSRURJQ0FURV9GSUVMRFMgPSAoJ1JlcXVpcmVzLURpc3QnLCAnT2Jzb2xldGVzLURpc3QnLCAnUHJvdmlkZXMtRGlzdCcpCitfVkVSU0lPTlNfRklFTERTID0gKCdSZXF1aXJlcy1QeXRob24nLCkKK19WRVJTSU9OX0ZJRUxEUyA9ICgnVmVyc2lvbicsKQorX0xJU1RGSUVMRFMgPSAoJ1BsYXRmb3JtJywgJ0NsYXNzaWZpZXInLCAnT2Jzb2xldGVzJywKKyAgICAgICAgICAgICAgICdSZXF1aXJlcycsICdQcm92aWRlcycsICdPYnNvbGV0ZXMtRGlzdCcsCisgICAgICAgICAgICAgICAnUHJvdmlkZXMtRGlzdCcsICdSZXF1aXJlcy1EaXN0JywgJ1JlcXVpcmVzLUV4dGVybmFsJywKKyAgICAgICAgICAgICAgICdQcm9qZWN0LVVSTCcsICdTdXBwb3J0ZWQtUGxhdGZvcm0nKQorX0xJU1RUVVBMRUZJRUxEUyA9ICgnUHJvamVjdC1VUkwnLCkKKworX0VMRU1FTlRTRklFTEQgPSAoJ0tleXdvcmRzJywpCisKK19VTklDT0RFRklFTERTID0gKCdBdXRob3InLCAnTWFpbnRhaW5lcicsICdTdW1tYXJ5JywgJ0Rlc2NyaXB0aW9uJykKKworX01JU1NJTkcgPSBvYmplY3QoKQorCitfRklMRVNBRkUgPSByZS5jb21waWxlKCdbXkEtWmEtejAtOS5dKycpCisKKworY2xhc3MgTWV0YWRhdGE6CisgICAgIiIiVGhlIG1ldGFkYXRhIG9mIGEgcmVsZWFzZS4KKworICAgIFN1cHBvcnRzIHZlcnNpb25zIDEuMCwgMS4xIGFuZCAxLjIgKGF1dG8tZGV0ZWN0ZWQpLiBZb3UgY2FuCisgICAgaW5zdGFudGlhdGUgdGhlIGNsYXNzIHdpdGggb25lIG9mIHRoZXNlIGFyZ3VtZW50cyAob3Igbm9uZSk6CisgICAgLSAqcGF0aCosIHRoZSBwYXRoIHRvIGEgTUVUQURBVEEgZmlsZQorICAgIC0gKmZpbGVvYmoqIGdpdmUgYSBmaWxlLWxpa2Ugb2JqZWN0IHdpdGggTUVUQURBVEEgYXMgY29udGVudAorICAgIC0gKm1hcHBpbmcqIGlzIGEgZGljdC1saWtlIG9iamVjdAorICAgICIiIgorICAgICMgVE9ETyBkb2N1bWVudCB0aGF0IGV4ZWN1dGlvbl9jb250ZXh0IGFuZCBwbGF0Zm9ybV9kZXBlbmRlbnQgYXJlIHVzZWQKKyAgICAjIHRvIGZpbHRlciBvbiBxdWVyeSwgbm90IHdoZW4gc2V0dGluZyBhIGtleQorICAgICMgYWxzbyBkb2N1bWVudCB0aGUgbWFwcGluZyBBUEkgYW5kIFVOS05PV04gZGVmYXVsdCBrZXkKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXRoPU5vbmUsIHBsYXRmb3JtX2RlcGVuZGVudD1GYWxzZSwKKyAgICAgICAgICAgICAgICAgZXhlY3V0aW9uX2NvbnRleHQ9Tm9uZSwgZmlsZW9iaj1Ob25lLCBtYXBwaW5nPU5vbmUpOgorICAgICAgICBzZWxmLl9maWVsZHMgPSB7fQorICAgICAgICBzZWxmLnJlcXVpcmVzX2ZpbGVzID0gW10KKyAgICAgICAgc2VsZi5kb2N1dGlsc19zdXBwb3J0ID0gX0hBU19ET0NVVElMUworICAgICAgICBzZWxmLnBsYXRmb3JtX2RlcGVuZGVudCA9IHBsYXRmb3JtX2RlcGVuZGVudAorICAgICAgICBzZWxmLmV4ZWN1dGlvbl9jb250ZXh0ID0gZXhlY3V0aW9uX2NvbnRleHQKKyAgICAgICAgaWYgW3BhdGgsIGZpbGVvYmosIG1hcHBpbmddLmNvdW50KE5vbmUpIDwgMjoKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigncGF0aCwgZmlsZW9iaiBhbmQgbWFwcGluZyBhcmUgZXhjbHVzaXZlJykKKyAgICAgICAgaWYgcGF0aCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYucmVhZChwYXRoKQorICAgICAgICBlbGlmIGZpbGVvYmogaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLnJlYWRfZmlsZShmaWxlb2JqKQorICAgICAgICBlbGlmIG1hcHBpbmcgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLnVwZGF0ZShtYXBwaW5nKQorCisgICAgZGVmIF9zZXRfYmVzdF92ZXJzaW9uKHNlbGYpOgorICAgICAgICBzZWxmLl9maWVsZHNbJ01ldGFkYXRhLVZlcnNpb24nXSA9IF9iZXN0X3ZlcnNpb24oc2VsZi5fZmllbGRzKQorCisgICAgZGVmIF93cml0ZV9maWVsZChzZWxmLCBmaWxlLCBuYW1lLCB2YWx1ZSk6CisgICAgICAgIGZpbGUud3JpdGUoJyVzOiAlc1xuJyAlIChuYW1lLCB2YWx1ZSkpCisKKyAgICBkZWYgX19nZXRpdGVtX18oc2VsZiwgbmFtZSk6CisgICAgICAgIHJldHVybiBzZWxmLmdldChuYW1lKQorCisgICAgZGVmIF9fc2V0aXRlbV9fKHNlbGYsIG5hbWUsIHZhbHVlKToKKyAgICAgICAgcmV0dXJuIHNlbGYuc2V0KG5hbWUsIHZhbHVlKQorCisgICAgZGVmIF9fZGVsaXRlbV9fKHNlbGYsIG5hbWUpOgorICAgICAgICBmaWVsZF9uYW1lID0gc2VsZi5fY29udmVydF9uYW1lKG5hbWUpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGRlbCBzZWxmLl9maWVsZHNbZmllbGRfbmFtZV0KKyAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgcmFpc2UgS2V5RXJyb3IobmFtZSkKKyAgICAgICAgc2VsZi5fc2V0X2Jlc3RfdmVyc2lvbigpCisKKyAgICBkZWYgX19jb250YWluc19fKHNlbGYsIG5hbWUpOgorICAgICAgICByZXR1cm4gKG5hbWUgaW4gc2VsZi5fZmllbGRzIG9yCisgICAgICAgICAgICAgICAgc2VsZi5fY29udmVydF9uYW1lKG5hbWUpIGluIHNlbGYuX2ZpZWxkcykKKworICAgIGRlZiBfY29udmVydF9uYW1lKHNlbGYsIG5hbWUpOgorICAgICAgICBpZiBuYW1lIGluIF9BTExfRklFTERTOgorICAgICAgICAgICAgcmV0dXJuIG5hbWUKKyAgICAgICAgbmFtZSA9IG5hbWUucmVwbGFjZSgnLScsICdfJykubG93ZXIoKQorICAgICAgICByZXR1cm4gX0FUVFIyRklFTEQuZ2V0KG5hbWUsIG5hbWUpCisKKyAgICBkZWYgX2RlZmF1bHRfdmFsdWUoc2VsZiwgbmFtZSk6CisgICAgICAgIGlmIG5hbWUgaW4gX0xJU1RGSUVMRFMgb3IgbmFtZSBpbiBfRUxFTUVOVFNGSUVMRDoKKyAgICAgICAgICAgIHJldHVybiBbXQorICAgICAgICByZXR1cm4gJ1VOS05PV04nCisKKyAgICBkZWYgX2NoZWNrX3JzdF9kYXRhKHNlbGYsIGRhdGEpOgorICAgICAgICAiIiJSZXR1cm4gd2FybmluZ3Mgd2hlbiB0aGUgcHJvdmlkZWQgZGF0YSBoYXMgc3ludGF4IGVycm9ycy4iIiIKKyAgICAgICAgc291cmNlX3BhdGggPSBTdHJpbmdJTygpCisgICAgICAgIHBhcnNlciA9IFBhcnNlcigpCisgICAgICAgIHNldHRpbmdzID0gZnJvbnRlbmQuT3B0aW9uUGFyc2VyKCkuZ2V0X2RlZmF1bHRfdmFsdWVzKCkKKyAgICAgICAgc2V0dGluZ3MudGFiX3dpZHRoID0gNAorICAgICAgICBzZXR0aW5ncy5wZXBfcmVmZXJlbmNlcyA9IE5vbmUKKyAgICAgICAgc2V0dGluZ3MucmZjX3JlZmVyZW5jZXMgPSBOb25lCisgICAgICAgIHJlcG9ydGVyID0gU2lsZW50UmVwb3J0ZXIoc291cmNlX3BhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHNldHRpbmdzLnJlcG9ydF9sZXZlbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0dGluZ3MuaGFsdF9sZXZlbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyZWFtPXNldHRpbmdzLndhcm5pbmdfc3RyZWFtLAorICAgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz1zZXR0aW5ncy5kZWJ1ZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2Rpbmc9c2V0dGluZ3MuZXJyb3JfZW5jb2RpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yX2hhbmRsZXI9c2V0dGluZ3MuZXJyb3JfZW5jb2RpbmdfZXJyb3JfaGFuZGxlcikKKworICAgICAgICBkb2N1bWVudCA9IG5vZGVzLmRvY3VtZW50KHNldHRpbmdzLCByZXBvcnRlciwgc291cmNlPXNvdXJjZV9wYXRoKQorICAgICAgICBkb2N1bWVudC5ub3RlX3NvdXJjZShzb3VyY2VfcGF0aCwgLTEpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHBhcnNlci5wYXJzZShkYXRhLCBkb2N1bWVudCkKKyAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgcmVwb3J0ZXIubWVzc2FnZXMuYXBwZW5kKCgtMSwgJ0NvdWxkIG5vdCBmaW5pc2ggdGhlIHBhcnNpbmcuJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJycsIHt9KSkKKworICAgICAgICByZXR1cm4gcmVwb3J0ZXIubWVzc2FnZXMKKworICAgIGRlZiBfcGxhdGZvcm0oc2VsZiwgdmFsdWUpOgorICAgICAgICBpZiBub3Qgc2VsZi5wbGF0Zm9ybV9kZXBlbmRlbnQgb3IgJzsnIG5vdCBpbiB2YWx1ZToKKyAgICAgICAgICAgIHJldHVybiBUcnVlLCB2YWx1ZQorICAgICAgICB2YWx1ZSwgbWFya2VyID0gdmFsdWUuc3BsaXQoJzsnKQorICAgICAgICByZXR1cm4gaW50ZXJwcmV0KG1hcmtlciwgc2VsZi5leGVjdXRpb25fY29udGV4dCksIHZhbHVlCisKKyAgICBkZWYgX3JlbW92ZV9saW5lX3ByZWZpeChzZWxmLCB2YWx1ZSk6CisgICAgICAgIHJldHVybiBfTElORV9QUkVGSVguc3ViKCdcbicsIHZhbHVlKQorCisgICAgIworICAgICMgUHVibGljIEFQSQorICAgICMKKyAgICBkZWYgZ2V0X2Z1bGxuYW1lKHNlbGYsIGZpbGVzYWZlPUZhbHNlKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBkaXN0cmlidXRpb24gbmFtZSB3aXRoIHZlcnNpb24uCisKKyAgICAgICAgSWYgZmlsZXNhZmUgaXMgdHJ1ZSwgcmV0dXJuIGEgZmlsZW5hbWUtZXNjYXBlZCBmb3JtLiIiIgorICAgICAgICBuYW1lLCB2ZXJzaW9uID0gc2VsZlsnTmFtZSddLCBzZWxmWydWZXJzaW9uJ10KKyAgICAgICAgaWYgZmlsZXNhZmU6CisgICAgICAgICAgICAjIEZvciBib3RoIG5hbWUgYW5kIHZlcnNpb24gYW55IHJ1bnMgb2Ygbm9uLWFscGhhbnVtZXJpYyBvciAnLicKKyAgICAgICAgICAgICMgY2hhcmFjdGVycyBhcmUgcmVwbGFjZWQgd2l0aCBhIHNpbmdsZSAnLScuICBBZGRpdGlvbmFsbHkgYW55CisgICAgICAgICAgICAjIHNwYWNlcyBpbiB0aGUgdmVyc2lvbiBzdHJpbmcgYmVjb21lICcuJworICAgICAgICAgICAgbmFtZSA9IF9GSUxFU0FGRS5zdWIoJy0nLCBuYW1lKQorICAgICAgICAgICAgdmVyc2lvbiA9IF9GSUxFU0FGRS5zdWIoJy0nLCB2ZXJzaW9uLnJlcGxhY2UoJyAnLCAnLicpKQorICAgICAgICByZXR1cm4gJyVzLSVzJyAlIChuYW1lLCB2ZXJzaW9uKQorCisgICAgZGVmIGlzX21ldGFkYXRhX2ZpZWxkKHNlbGYsIG5hbWUpOgorICAgICAgICAiIiJyZXR1cm4gVHJ1ZSBpZiBuYW1lIGlzIGEgdmFsaWQgbWV0YWRhdGEga2V5IiIiCisgICAgICAgIG5hbWUgPSBzZWxmLl9jb252ZXJ0X25hbWUobmFtZSkKKyAgICAgICAgcmV0dXJuIG5hbWUgaW4gX0FMTF9GSUVMRFMKKworICAgIGRlZiBpc19tdWx0aV9maWVsZChzZWxmLCBuYW1lKToKKyAgICAgICAgbmFtZSA9IHNlbGYuX2NvbnZlcnRfbmFtZShuYW1lKQorICAgICAgICByZXR1cm4gbmFtZSBpbiBfTElTVEZJRUxEUworCisgICAgZGVmIHJlYWQoc2VsZiwgZmlsZXBhdGgpOgorICAgICAgICAiIiJSZWFkIHRoZSBtZXRhZGF0YSB2YWx1ZXMgZnJvbSBhIGZpbGUgcGF0aC4iIiIKKyAgICAgICAgd2l0aCBvcGVuKGZpbGVwYXRoLCAncicsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGZwOgorICAgICAgICAgICAgc2VsZi5yZWFkX2ZpbGUoZnApCisKKyAgICBkZWYgcmVhZF9maWxlKHNlbGYsIGZpbGVvYik6CisgICAgICAgICIiIlJlYWQgdGhlIG1ldGFkYXRhIHZhbHVlcyBmcm9tIGEgZmlsZSBvYmplY3QuIiIiCisgICAgICAgIG1zZyA9IG1lc3NhZ2VfZnJvbV9maWxlKGZpbGVvYikKKyAgICAgICAgc2VsZi5fZmllbGRzWydNZXRhZGF0YS1WZXJzaW9uJ10gPSBtc2dbJ21ldGFkYXRhLXZlcnNpb24nXQorCisgICAgICAgIGZvciBmaWVsZCBpbiBfdmVyc2lvbjJmaWVsZGxpc3Qoc2VsZlsnTWV0YWRhdGEtVmVyc2lvbiddKToKKyAgICAgICAgICAgIGlmIGZpZWxkIGluIF9MSVNURklFTERTOgorICAgICAgICAgICAgICAgICMgd2UgY2FuIGhhdmUgbXVsdGlwbGUgbGluZXMKKyAgICAgICAgICAgICAgICB2YWx1ZXMgPSBtc2cuZ2V0X2FsbChmaWVsZCkKKyAgICAgICAgICAgICAgICBpZiBmaWVsZCBpbiBfTElTVFRVUExFRklFTERTIGFuZCB2YWx1ZXMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgICAgIHZhbHVlcyA9IFt0dXBsZSh2YWx1ZS5zcGxpdCgnLCcpKSBmb3IgdmFsdWUgaW4gdmFsdWVzXQorICAgICAgICAgICAgICAgIHNlbGYuc2V0KGZpZWxkLCB2YWx1ZXMpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICMgc2luZ2xlIGxpbmUKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IG1zZ1tmaWVsZF0KKyAgICAgICAgICAgICAgICBpZiB2YWx1ZSBpcyBub3QgTm9uZSBhbmQgdmFsdWUgIT0gJ1VOS05PV04nOgorICAgICAgICAgICAgICAgICAgICBzZWxmLnNldChmaWVsZCwgdmFsdWUpCisKKyAgICBkZWYgd3JpdGUoc2VsZiwgZmlsZXBhdGgpOgorICAgICAgICAiIiJXcml0ZSB0aGUgbWV0YWRhdGEgZmllbGRzIHRvIGZpbGVwYXRoLiIiIgorICAgICAgICB3aXRoIG9wZW4oZmlsZXBhdGgsICd3JywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZnA6CisgICAgICAgICAgICBzZWxmLndyaXRlX2ZpbGUoZnApCisKKyAgICBkZWYgd3JpdGVfZmlsZShzZWxmLCBmaWxlb2JqZWN0KToKKyAgICAgICAgIiIiV3JpdGUgdGhlIFBLRy1JTkZPIGZvcm1hdCBkYXRhIHRvIGEgZmlsZSBvYmplY3QuIiIiCisgICAgICAgIHNlbGYuX3NldF9iZXN0X3ZlcnNpb24oKQorICAgICAgICBmb3IgZmllbGQgaW4gX3ZlcnNpb24yZmllbGRsaXN0KHNlbGZbJ01ldGFkYXRhLVZlcnNpb24nXSk6CisgICAgICAgICAgICB2YWx1ZXMgPSBzZWxmLmdldChmaWVsZCkKKyAgICAgICAgICAgIGlmIGZpZWxkIGluIF9FTEVNRU5UU0ZJRUxEOgorICAgICAgICAgICAgICAgIHNlbGYuX3dyaXRlX2ZpZWxkKGZpbGVvYmplY3QsIGZpZWxkLCAnLCcuam9pbih2YWx1ZXMpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBpZiBmaWVsZCBub3QgaW4gX0xJU1RGSUVMRFM6CisgICAgICAgICAgICAgICAgaWYgZmllbGQgPT0gJ0Rlc2NyaXB0aW9uJzoKKyAgICAgICAgICAgICAgICAgICAgdmFsdWVzID0gdmFsdWVzLnJlcGxhY2UoJ1xuJywgJ1xuICAgICAgIHwnKQorICAgICAgICAgICAgICAgIHZhbHVlcyA9IFt2YWx1ZXNdCisKKyAgICAgICAgICAgIGlmIGZpZWxkIGluIF9MSVNUVFVQTEVGSUVMRFM6CisgICAgICAgICAgICAgICAgdmFsdWVzID0gWycsJy5qb2luKHZhbHVlKSBmb3IgdmFsdWUgaW4gdmFsdWVzXQorCisgICAgICAgICAgICBmb3IgdmFsdWUgaW4gdmFsdWVzOgorICAgICAgICAgICAgICAgIHNlbGYuX3dyaXRlX2ZpZWxkKGZpbGVvYmplY3QsIGZpZWxkLCB2YWx1ZSkKKworICAgIGRlZiB1cGRhdGUoc2VsZiwgb3RoZXI9Tm9uZSwgKiprd2FyZ3MpOgorICAgICAgICAiIiJTZXQgbWV0YWRhdGEgdmFsdWVzIGZyb20gdGhlIGdpdmVuIGl0ZXJhYmxlIGBvdGhlcmAgYW5kIGt3YXJncy4KKworICAgICAgICBCZWhhdmlvciBpcyBsaWtlIGBkaWN0LnVwZGF0ZWA6IElmIGBvdGhlcmAgaGFzIGEgYGBrZXlzYGAgbWV0aG9kLAorICAgICAgICB0aGV5IGFyZSBsb29wZWQgb3ZlciBhbmQgYGBzZWxmW2tleV1gYCBpcyBhc3NpZ25lZCBgYG90aGVyW2tleV1gYC4KKyAgICAgICAgRWxzZSwgYGBvdGhlcmBgIGlzIGFuIGl0ZXJhYmxlIG9mIGBgKGtleSwgdmFsdWUpYGAgaXRlcmFibGVzLgorCisgICAgICAgIEtleXMgdGhhdCBkb24ndCBtYXRjaCBhIG1ldGFkYXRhIGZpZWxkIG9yIHRoYXQgaGF2ZSBhbiBlbXB0eSB2YWx1ZSBhcmUKKyAgICAgICAgZHJvcHBlZC4KKyAgICAgICAgIiIiCisgICAgICAgICMgWFhYIHRoZSBjb2RlIHNob3VsZCBqdXN0IHVzZSBzZWxmLnNldCwgd2hpY2ggZG9lcyB0YmUgc2FtZSBjaGVja3MgYW5kCisgICAgICAgICMgY29udmVyc2lvbnMgYWxyZWFkeSwgYnV0IHRoYXQgd291bGQgYnJlYWsgcGFja2FnaW5nLnB5cGk6IGl0IHVzZXMgdGhlCisgICAgICAgICMgdXBkYXRlIG1ldGhvZCwgd2hpY2ggZG9lcyBub3QgY2FsbCBfc2V0X2Jlc3RfdmVyc2lvbiAod2hpY2ggc2V0CisgICAgICAgICMgZG9lcyksIGFuZCB0aHVzIGFsbG93cyBoYXZpbmcgYSBNZXRhZGF0YSBvYmplY3QgKGFzIGxvbmcgYXMgeW91IGRvbid0CisgICAgICAgICMgbW9kaWZ5IG9yIHdyaXRlIGl0KSB3aXRoIGV4dHJhIGZpZWxkcyBmcm9tIFB5UEkgdGhhdCBhcmUgbm90IGZpZWxkcworICAgICAgICAjIGRlZmluZWQgaW4gTWV0YWRhdGEgUEVQcy4gIHRvIHNvbHZlIGl0LCB0aGUgYmVzdF92ZXJzaW9uIHN5c3RlbQorICAgICAgICAjIHNob3VsZCBiZSByZXdvcmtlZCBzbyB0aGF0IGl0J3MgY2FsbGVkIG9ubHkgZm9yIHdyaXRpbmcsIG9yIGluIGEgbmV3CisgICAgICAgICMgc3RyaWN0IG1vZGUsIG9yIHdpdGggYSBuZXcsIG1vcmUgbGF4IE1ldGFkYXRhIHN1YmNsYXNzIGluIHA3Zy5weXBpCisgICAgICAgIGRlZiBfc2V0KGtleSwgdmFsdWUpOgorICAgICAgICAgICAgaWYga2V5IGluIF9BVFRSMkZJRUxEIGFuZCB2YWx1ZToKKyAgICAgICAgICAgICAgICBzZWxmLnNldChzZWxmLl9jb252ZXJ0X25hbWUoa2V5KSwgdmFsdWUpCisKKyAgICAgICAgaWYgbm90IG90aGVyOgorICAgICAgICAgICAgIyBvdGhlciBpcyBOb25lIG9yIGVtcHR5IGNvbnRhaW5lcgorICAgICAgICAgICAgcGFzcworICAgICAgICBlbGlmIGhhc2F0dHIob3RoZXIsICdrZXlzJyk6CisgICAgICAgICAgICBmb3IgayBpbiBvdGhlci5rZXlzKCk6CisgICAgICAgICAgICAgICAgX3NldChrLCBvdGhlcltrXSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGZvciBrLCB2IGluIG90aGVyOgorICAgICAgICAgICAgICAgIF9zZXQoaywgdikKKworICAgICAgICBpZiBrd2FyZ3M6CisgICAgICAgICAgICBmb3IgaywgdiBpbiBrd2FyZ3MuaXRlbXMoKToKKyAgICAgICAgICAgICAgICBfc2V0KGssIHYpCisKKyAgICBkZWYgc2V0KHNlbGYsIG5hbWUsIHZhbHVlKToKKyAgICAgICAgIiIiQ29udHJvbCB0aGVuIHNldCBhIG1ldGFkYXRhIGZpZWxkLiIiIgorICAgICAgICBuYW1lID0gc2VsZi5fY29udmVydF9uYW1lKG5hbWUpCisKKyAgICAgICAgaWYgKChuYW1lIGluIF9FTEVNRU5UU0ZJRUxEIG9yIG5hbWUgPT0gJ1BsYXRmb3JtJykgYW5kCisgICAgICAgICAgICBub3QgaXNpbnN0YW5jZSh2YWx1ZSwgKGxpc3QsIHR1cGxlKSkpOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWx1ZSwgc3RyKToKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IFt2LnN0cmlwKCkgZm9yIHYgaW4gdmFsdWUuc3BsaXQoJywnKV0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgdmFsdWUgPSBbXQorICAgICAgICBlbGlmIChuYW1lIGluIF9MSVNURklFTERTIGFuZAorICAgICAgICAgICAgICBub3QgaXNpbnN0YW5jZSh2YWx1ZSwgKGxpc3QsIHR1cGxlKSkpOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWx1ZSwgc3RyKToKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IFt2YWx1ZV0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgdmFsdWUgPSBbXQorCisgICAgICAgIGlmIGxvZ2dlci5pc0VuYWJsZWRGb3IobG9nZ2luZy5XQVJOSU5HKToKKyAgICAgICAgICAgIHByb2plY3RfbmFtZSA9IHNlbGZbJ05hbWUnXQorCisgICAgICAgICAgICBpZiBuYW1lIGluIF9QUkVESUNBVEVfRklFTERTIGFuZCB2YWx1ZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBmb3IgdiBpbiB2YWx1ZToKKyAgICAgICAgICAgICAgICAgICAgIyBjaGVjayB0aGF0IHRoZSB2YWx1ZXMgYXJlIHZhbGlkIHByZWRpY2F0ZXMKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IGlzX3ZhbGlkX3ByZWRpY2F0ZSh2LnNwbGl0KCc7JylbMF0pOgorICAgICAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyVyOiAlciBpcyBub3QgYSB2YWxpZCBwcmVkaWNhdGUgKGZpZWxkICVyKScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvamVjdF9uYW1lLCB2LCBuYW1lKQorICAgICAgICAgICAgIyBGSVhNRSB0aGlzIHJlamVjdHMgVU5LTk9XTiwgaXMgdGhhdCByaWdodD8KKyAgICAgICAgICAgIGVsaWYgbmFtZSBpbiBfVkVSU0lPTlNfRklFTERTIGFuZCB2YWx1ZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBpZiBub3QgaXNfdmFsaWRfdmVyc2lvbnModmFsdWUpOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygnJXI6ICVyIGlzIG5vdCBhIHZhbGlkIHZlcnNpb24gKGZpZWxkICVyKScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2plY3RfbmFtZSwgdmFsdWUsIG5hbWUpCisgICAgICAgICAgICBlbGlmIG5hbWUgaW4gX1ZFUlNJT05fRklFTERTIGFuZCB2YWx1ZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBpZiBub3QgaXNfdmFsaWRfdmVyc2lvbih2YWx1ZSk6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCclcjogJXIgaXMgbm90IGEgdmFsaWQgdmVyc2lvbiAoZmllbGQgJXIpJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvamVjdF9uYW1lLCB2YWx1ZSwgbmFtZSkKKworICAgICAgICBpZiBuYW1lIGluIF9VTklDT0RFRklFTERTOgorICAgICAgICAgICAgaWYgbmFtZSA9PSAnRGVzY3JpcHRpb24nOgorICAgICAgICAgICAgICAgIHZhbHVlID0gc2VsZi5fcmVtb3ZlX2xpbmVfcHJlZml4KHZhbHVlKQorCisgICAgICAgIHNlbGYuX2ZpZWxkc1tuYW1lXSA9IHZhbHVlCisgICAgICAgIHNlbGYuX3NldF9iZXN0X3ZlcnNpb24oKQorCisgICAgZGVmIGdldChzZWxmLCBuYW1lLCBkZWZhdWx0PV9NSVNTSU5HKToKKyAgICAgICAgIiIiR2V0IGEgbWV0YWRhdGEgZmllbGQuIiIiCisgICAgICAgIG5hbWUgPSBzZWxmLl9jb252ZXJ0X25hbWUobmFtZSkKKyAgICAgICAgaWYgbmFtZSBub3QgaW4gc2VsZi5fZmllbGRzOgorICAgICAgICAgICAgaWYgZGVmYXVsdCBpcyBfTUlTU0lORzoKKyAgICAgICAgICAgICAgICBkZWZhdWx0ID0gc2VsZi5fZGVmYXVsdF92YWx1ZShuYW1lKQorICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHQKKyAgICAgICAgaWYgbmFtZSBpbiBfVU5JQ09ERUZJRUxEUzoKKyAgICAgICAgICAgIHZhbHVlID0gc2VsZi5fZmllbGRzW25hbWVdCisgICAgICAgICAgICByZXR1cm4gdmFsdWUKKyAgICAgICAgZWxpZiBuYW1lIGluIF9MSVNURklFTERTOgorICAgICAgICAgICAgdmFsdWUgPSBzZWxmLl9maWVsZHNbbmFtZV0KKyAgICAgICAgICAgIGlmIHZhbHVlIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgcmV0dXJuIFtdCisgICAgICAgICAgICByZXMgPSBbXQorICAgICAgICAgICAgZm9yIHZhbCBpbiB2YWx1ZToKKyAgICAgICAgICAgICAgICB2YWxpZCwgdmFsID0gc2VsZi5fcGxhdGZvcm0odmFsKQorICAgICAgICAgICAgICAgIGlmIG5vdCB2YWxpZDoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBpZiBuYW1lIG5vdCBpbiBfTElTVFRVUExFRklFTERTOgorICAgICAgICAgICAgICAgICAgICByZXMuYXBwZW5kKHZhbCkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAjIFRoYXQncyBmb3IgUHJvamVjdC1VUkwKKyAgICAgICAgICAgICAgICAgICAgcmVzLmFwcGVuZCgodmFsWzBdLCB2YWxbMV0pKQorICAgICAgICAgICAgcmV0dXJuIHJlcworCisgICAgICAgIGVsaWYgbmFtZSBpbiBfRUxFTUVOVFNGSUVMRDoKKyAgICAgICAgICAgIHZhbGlkLCB2YWx1ZSA9IHNlbGYuX3BsYXRmb3JtKHNlbGYuX2ZpZWxkc1tuYW1lXSkKKyAgICAgICAgICAgIGlmIG5vdCB2YWxpZDoKKyAgICAgICAgICAgICAgICByZXR1cm4gW10KKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UodmFsdWUsIHN0cik6CisgICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlLnNwbGl0KCcsJykKKyAgICAgICAgdmFsaWQsIHZhbHVlID0gc2VsZi5fcGxhdGZvcm0oc2VsZi5fZmllbGRzW25hbWVdKQorICAgICAgICBpZiBub3QgdmFsaWQ6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICByZXR1cm4gdmFsdWUKKworICAgIGRlZiBjaGVjayhzZWxmLCBzdHJpY3Q9RmFsc2UsIHJlc3RydWN0dXJlZHRleHQ9RmFsc2UpOgorICAgICAgICAiIiJDaGVjayBpZiB0aGUgbWV0YWRhdGEgaXMgY29tcGxpYW50LiBJZiBzdHJpY3QgaXMgRmFsc2UgdGhlbiByYWlzZSBpZgorICAgICAgICBubyBOYW1lIG9yIFZlcnNpb24gYXJlIHByb3ZpZGVkIiIiCisgICAgICAgICMgWFhYIHNob3VsZCBjaGVjayB0aGUgdmVyc2lvbnMgKGlmIHRoZSBmaWxlIHdhcyBsb2FkZWQpCisgICAgICAgIG1pc3NpbmcsIHdhcm5pbmdzID0gW10sIFtdCisKKyAgICAgICAgZm9yIGF0dHIgaW4gKCdOYW1lJywgJ1ZlcnNpb24nKTogICMgcmVxdWlyZWQgYnkgUEVQIDM0NQorICAgICAgICAgICAgaWYgYXR0ciBub3QgaW4gc2VsZjoKKyAgICAgICAgICAgICAgICBtaXNzaW5nLmFwcGVuZChhdHRyKQorCisgICAgICAgIGlmIHN0cmljdCBhbmQgbWlzc2luZyAhPSBbXToKKyAgICAgICAgICAgIG1zZyA9ICdtaXNzaW5nIHJlcXVpcmVkIG1ldGFkYXRhOiAlcycgJSAnLCAnLmpvaW4obWlzc2luZykKKyAgICAgICAgICAgIHJhaXNlIE1ldGFkYXRhTWlzc2luZ0Vycm9yKG1zZykKKworICAgICAgICBmb3IgYXR0ciBpbiAoJ0hvbWUtcGFnZScsICdBdXRob3InKToKKyAgICAgICAgICAgIGlmIGF0dHIgbm90IGluIHNlbGY6CisgICAgICAgICAgICAgICAgbWlzc2luZy5hcHBlbmQoYXR0cikKKworICAgICAgICBpZiBfSEFTX0RPQ1VUSUxTIGFuZCByZXN0cnVjdHVyZWR0ZXh0OgorICAgICAgICAgICAgd2FybmluZ3MuZXh0ZW5kKHNlbGYuX2NoZWNrX3JzdF9kYXRhKHNlbGZbJ0Rlc2NyaXB0aW9uJ10pKQorCisgICAgICAgICMgY2hlY2tpbmcgbWV0YWRhdGEgMS4yIChYWFggbmVlZHMgdG8gY2hlY2sgMS4xLCAxLjApCisgICAgICAgIGlmIHNlbGZbJ01ldGFkYXRhLVZlcnNpb24nXSAhPSAnMS4yJzoKKyAgICAgICAgICAgIHJldHVybiBtaXNzaW5nLCB3YXJuaW5ncworCisgICAgICAgIGRlZiBpc192YWxpZF9wcmVkaWNhdGVzKHZhbHVlKToKKyAgICAgICAgICAgIGZvciB2IGluIHZhbHVlOgorICAgICAgICAgICAgICAgIGlmIG5vdCBpc192YWxpZF9wcmVkaWNhdGUodi5zcGxpdCgnOycpWzBdKToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgICAgIGZvciBmaWVsZHMsIGNvbnRyb2xsZXIgaW4gKChfUFJFRElDQVRFX0ZJRUxEUywgaXNfdmFsaWRfcHJlZGljYXRlcyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfVkVSU0lPTlNfRklFTERTLCBpc192YWxpZF92ZXJzaW9ucyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfVkVSU0lPTl9GSUVMRFMsIGlzX3ZhbGlkX3ZlcnNpb24pKToKKyAgICAgICAgICAgIGZvciBmaWVsZCBpbiBmaWVsZHM6CisgICAgICAgICAgICAgICAgdmFsdWUgPSBzZWxmLmdldChmaWVsZCwgTm9uZSkKKyAgICAgICAgICAgICAgICBpZiB2YWx1ZSBpcyBub3QgTm9uZSBhbmQgbm90IGNvbnRyb2xsZXIodmFsdWUpOgorICAgICAgICAgICAgICAgICAgICB3YXJuaW5ncy5hcHBlbmQoJ1dyb25nIHZhbHVlIGZvciAlcjogJXMnICUgKGZpZWxkLCB2YWx1ZSkpCisKKyAgICAgICAgcmV0dXJuIG1pc3NpbmcsIHdhcm5pbmdzCisKKyAgICBkZWYgdG9kaWN0KHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gZmllbGRzIGFzIGEgZGljdC4KKworICAgICAgICBGaWVsZCBuYW1lcyB3aWxsIGJlIGNvbnZlcnRlZCB0byB1c2UgdGhlIHVuZGVyc2NvcmUtbG93ZXJjYXNlIHN0eWxlCisgICAgICAgIGluc3RlYWQgb2YgaHlwaGVuLW1peGVkIGNhc2UgKGkuZS4gaG9tZV9wYWdlIGluc3RlYWQgb2YgSG9tZS1wYWdlKS4KKyAgICAgICAgIiIiCisgICAgICAgIGRhdGEgPSB7CisgICAgICAgICAgICAnbWV0YWRhdGFfdmVyc2lvbic6IHNlbGZbJ01ldGFkYXRhLVZlcnNpb24nXSwKKyAgICAgICAgICAgICduYW1lJzogc2VsZlsnTmFtZSddLAorICAgICAgICAgICAgJ3ZlcnNpb24nOiBzZWxmWydWZXJzaW9uJ10sCisgICAgICAgICAgICAnc3VtbWFyeSc6IHNlbGZbJ1N1bW1hcnknXSwKKyAgICAgICAgICAgICdob21lX3BhZ2UnOiBzZWxmWydIb21lLXBhZ2UnXSwKKyAgICAgICAgICAgICdhdXRob3InOiBzZWxmWydBdXRob3InXSwKKyAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiBzZWxmWydBdXRob3ItZW1haWwnXSwKKyAgICAgICAgICAgICdsaWNlbnNlJzogc2VsZlsnTGljZW5zZSddLAorICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJzogc2VsZlsnRGVzY3JpcHRpb24nXSwKKyAgICAgICAgICAgICdrZXl3b3Jkcyc6IHNlbGZbJ0tleXdvcmRzJ10sCisgICAgICAgICAgICAncGxhdGZvcm0nOiBzZWxmWydQbGF0Zm9ybSddLAorICAgICAgICAgICAgJ2NsYXNzaWZpZXInOiBzZWxmWydDbGFzc2lmaWVyJ10sCisgICAgICAgICAgICAnZG93bmxvYWRfdXJsJzogc2VsZlsnRG93bmxvYWQtVVJMJ10sCisgICAgICAgIH0KKworICAgICAgICBpZiBzZWxmWydNZXRhZGF0YS1WZXJzaW9uJ10gPT0gJzEuMic6CisgICAgICAgICAgICBkYXRhWydyZXF1aXJlc19kaXN0J10gPSBzZWxmWydSZXF1aXJlcy1EaXN0J10KKyAgICAgICAgICAgIGRhdGFbJ3JlcXVpcmVzX3B5dGhvbiddID0gc2VsZlsnUmVxdWlyZXMtUHl0aG9uJ10KKyAgICAgICAgICAgIGRhdGFbJ3JlcXVpcmVzX2V4dGVybmFsJ10gPSBzZWxmWydSZXF1aXJlcy1FeHRlcm5hbCddCisgICAgICAgICAgICBkYXRhWydwcm92aWRlc19kaXN0J10gPSBzZWxmWydQcm92aWRlcy1EaXN0J10KKyAgICAgICAgICAgIGRhdGFbJ29ic29sZXRlc19kaXN0J10gPSBzZWxmWydPYnNvbGV0ZXMtRGlzdCddCisgICAgICAgICAgICBkYXRhWydwcm9qZWN0X3VybCddID0gWycsJy5qb2luKHVybCkgZm9yIHVybCBpbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmWydQcm9qZWN0LVVSTCddXQorCisgICAgICAgIGVsaWYgc2VsZlsnTWV0YWRhdGEtVmVyc2lvbiddID09ICcxLjEnOgorICAgICAgICAgICAgZGF0YVsncHJvdmlkZXMnXSA9IHNlbGZbJ1Byb3ZpZGVzJ10KKyAgICAgICAgICAgIGRhdGFbJ3JlcXVpcmVzJ10gPSBzZWxmWydSZXF1aXJlcyddCisgICAgICAgICAgICBkYXRhWydvYnNvbGV0ZXMnXSA9IHNlbGZbJ09ic29sZXRlcyddCisKKyAgICAgICAgcmV0dXJuIGRhdGEKKworICAgICMgTWFwcGluZyBBUEkKKyAgICAjIFhYWCB0aGVzZSBtZXRob2RzIHNob3VsZCByZXR1cm4gdmlld3Mgb3Igc2V0cyBpbiAzLngKKworICAgIGRlZiBrZXlzKHNlbGYpOgorICAgICAgICByZXR1cm4gbGlzdChfdmVyc2lvbjJmaWVsZGxpc3Qoc2VsZlsnTWV0YWRhdGEtVmVyc2lvbiddKSkKKworICAgIGRlZiBfX2l0ZXJfXyhzZWxmKToKKyAgICAgICAgZm9yIGtleSBpbiBzZWxmLmtleXMoKToKKyAgICAgICAgICAgIHlpZWxkIGtleQorCisgICAgZGVmIHZhbHVlcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIFtzZWxmW2tleV0gZm9yIGtleSBpbiBzZWxmLmtleXMoKV0KKworICAgIGRlZiBpdGVtcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIFsoa2V5LCBzZWxmW2tleV0pIGZvciBrZXkgaW4gc2VsZi5rZXlzKCldCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3B5cGkvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3B5cGkvX19pbml0X18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTY2MGM1MAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvcHlwaS9fX2luaXRfXy5weQpAQCAtMCwwICsxLDkgQEAKKyIiIkxvdy1sZXZlbCBhbmQgaGlnaC1sZXZlbCBBUElzIHRvIGludGVyYWN0IHdpdGggcHJvamVjdCBpbmRleGVzLiIiIgorCitfX2FsbF9fID0gWydzaW1wbGUnLAorICAgICAgICAgICAneG1scnBjJywKKyAgICAgICAgICAgJ2Rpc3QnLAorICAgICAgICAgICAnZXJyb3JzJywKKyAgICAgICAgICAgJ21pcnJvcnMnXQorCitmcm9tIHBhY2thZ2luZy5weXBpLmRpc3QgaW1wb3J0IFJlbGVhc2VJbmZvLCBSZWxlYXNlc0xpc3QsIERpc3RJbmZvCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3B5cGkvYmFzZS5weSBiL0xpYi9wYWNrYWdpbmcvcHlwaS9iYXNlLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMwNWZjYTkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3B5cGkvYmFzZS5weQpAQCAtMCwwICsxLDQ4IEBACisiIiJCYXNlIGNsYXNzIGZvciBpbmRleCBjcmF3bGVycy4iIiIKKworZnJvbSBwYWNrYWdpbmcucHlwaS5kaXN0IGltcG9ydCBSZWxlYXNlc0xpc3QKKworCitjbGFzcyBCYXNlQ2xpZW50OgorICAgICIiIkJhc2UgY2xhc3MgY29udGFpbmluZyBjb21tb24gbWV0aG9kcyBmb3IgdGhlIGluZGV4IGNyYXdsZXJzL2NsaWVudHMiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwcmVmZXJfZmluYWwsIHByZWZlcl9zb3VyY2UpOgorICAgICAgICBzZWxmLl9wcmVmZXJfZmluYWwgPSBwcmVmZXJfZmluYWwKKyAgICAgICAgc2VsZi5fcHJlZmVyX3NvdXJjZSA9IHByZWZlcl9zb3VyY2UKKyAgICAgICAgc2VsZi5faW5kZXggPSBzZWxmCisKKyAgICBkZWYgX2dldF9wcmVmZXJfZmluYWwoc2VsZiwgcHJlZmVyX2ZpbmFsPU5vbmUpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIHByZWZlcl9maW5hbCBpbnRlcm5hbCBwYXJhbWV0ZXIgb3IgdGhlIHNwZWNpZmllZCBvbmUgaWYKKyAgICAgICAgcHJvdmlkZWQiIiIKKyAgICAgICAgaWYgcHJlZmVyX2ZpbmFsOgorICAgICAgICAgICAgcmV0dXJuIHByZWZlcl9maW5hbAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3ByZWZlcl9maW5hbAorCisgICAgZGVmIF9nZXRfcHJlZmVyX3NvdXJjZShzZWxmLCBwcmVmZXJfc291cmNlPU5vbmUpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIHByZWZlcl9zb3VyY2UgaW50ZXJuYWwgcGFyYW1ldGVyIG9yIHRoZSBzcGVjaWZpZWQgb25lIGlmCisgICAgICAgIHByb3ZpZGVkIiIiCisgICAgICAgIGlmIHByZWZlcl9zb3VyY2U6CisgICAgICAgICAgICByZXR1cm4gcHJlZmVyX3NvdXJjZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3ByZWZlcl9zb3VyY2UKKworICAgIGRlZiBfZ2V0X3Byb2plY3Qoc2VsZiwgcHJvamVjdF9uYW1lKToKKyAgICAgICAgIiIiUmV0dXJuIGFuIHByb2plY3QgaW5zdGFuY2UsIGNyZWF0ZSBpdCBpZiBuZWNlc3NhcnkiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX3Byb2plY3RzLnNldGRlZmF1bHQocHJvamVjdF9uYW1lLmxvd2VyKCksCisgICAgICAgICAgICAgICAgICAgIFJlbGVhc2VzTGlzdChwcm9qZWN0X25hbWUsIGluZGV4PXNlbGYuX2luZGV4KSkKKworICAgIGRlZiBkb3dubG9hZF9kaXN0cmlidXRpb24oc2VsZiwgcmVxdWlyZW1lbnRzLCB0ZW1wX3BhdGg9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcl9zb3VyY2U9Tm9uZSwgcHJlZmVyX2ZpbmFsPU5vbmUpOgorICAgICAgICAiIiJEb3dubG9hZCBhIGRpc3RyaWJ1dGlvbiBmcm9tIHRoZSBsYXN0IHJlbGVhc2UgYWNjb3JkaW5nIHRvIHRoZQorICAgICAgICByZXF1aXJlbWVudHMuCisKKyAgICAgICAgSWYgdGVtcF9wYXRoIGlzIHByb3ZpZGVkLCBkb3dubG9hZCB0byB0aGlzIHBhdGgsIG90aGVyd2lzZSwgY3JlYXRlIGEKKyAgICAgICAgdGVtcG9yYXJ5IGxvY2F0aW9uIGZvciB0aGUgZG93bmxvYWQgYW5kIHJldHVybiBpdC4KKyAgICAgICAgIiIiCisgICAgICAgIHByZWZlcl9maW5hbCA9IHNlbGYuX2dldF9wcmVmZXJfZmluYWwocHJlZmVyX2ZpbmFsKQorICAgICAgICBwcmVmZXJfc291cmNlID0gc2VsZi5fZ2V0X3ByZWZlcl9zb3VyY2UocHJlZmVyX3NvdXJjZSkKKyAgICAgICAgcmVsZWFzZSA9IHNlbGYuZ2V0X3JlbGVhc2UocmVxdWlyZW1lbnRzLCBwcmVmZXJfZmluYWwpCisgICAgICAgIGlmIHJlbGVhc2U6CisgICAgICAgICAgICBkaXN0ID0gcmVsZWFzZS5nZXRfZGlzdHJpYnV0aW9uKHByZWZlcl9zb3VyY2U9cHJlZmVyX3NvdXJjZSkKKyAgICAgICAgICAgIHJldHVybiBkaXN0LmRvd25sb2FkKHRlbXBfcGF0aCkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvcHlwaS9kaXN0LnB5IGIvTGliL3BhY2thZ2luZy9weXBpL2Rpc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTQxNDY1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvcHlwaS9kaXN0LnB5CkBAIC0wLDAgKzEsNTQ0IEBACisiIiJDbGFzc2VzIHJlcHJlc2VudGluZyByZWxlYXNlcyBhbmQgZGlzdHJpYnV0aW9ucyByZXRyaWV2ZWQgZnJvbSBpbmRleGVzLgorCitBIHByb2plY3QgKD0gdW5pcXVlIG5hbWUpIGNhbiBoYXZlIHNldmVyYWwgcmVsZWFzZXMgKD0gdmVyc2lvbnMpIGFuZAorZWFjaCByZWxlYXNlIGNhbiBoYXZlIHNldmVyYWwgZGlzdHJpYnV0aW9ucyAoPSBzZGlzdCBhbmQgYmRpc3RzKS4KKworUmVsZWFzZSBvYmplY3RzIGNvbnRhaW4gbWV0YWRhdGEtcmVsYXRlZCBpbmZvcm1hdGlvbiAoc2VlIFBFUCAzNzYpOworZGlzdHJpYnV0aW9uIG9iamVjdHMgY29udGFpbiBkb3dubG9hZC1yZWxhdGVkIGluZm9ybWF0aW9uLgorIiIiCisKK2ltcG9ydCByZQoraW1wb3J0IGhhc2hsaWIKK2ltcG9ydCB0ZW1wZmlsZQoraW1wb3J0IHVybGxpYi5yZXF1ZXN0CitpbXBvcnQgdXJsbGliLnBhcnNlCitpbXBvcnQgdXJsbGliLmVycm9yCitpbXBvcnQgdXJsbGliLnBhcnNlCitmcm9tIHNodXRpbCBpbXBvcnQgdW5wYWNrX2FyY2hpdmUKKworZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBJcnJhdGlvbmFsVmVyc2lvbkVycm9yCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCAoc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb24sIE5vcm1hbGl6ZWRWZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldF92ZXJzaW9uX3ByZWRpY2F0ZSkKK2Zyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YQorZnJvbSBwYWNrYWdpbmcucHlwaS5lcnJvcnMgaW1wb3J0IChIYXNoRG9lc05vdE1hdGNoLCBVbnN1cHBvcnRlZEhhc2hOYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDYW50UGFyc2VBcmNoaXZlTmFtZSkKKworCitfX2FsbF9fID0gWydSZWxlYXNlSW5mbycsICdEaXN0SW5mbycsICdSZWxlYXNlc0xpc3QnLCAnZ2V0X2luZm9zX2Zyb21fdXJsJ10KKworRVhURU5TSU9OUyA9ICIudGFyLmd6IC50YXIuYnoyIC50YXIgLnppcCAudGd6IC5lZ2ciLnNwbGl0KCkKK01ENV9IQVNIID0gcmUuY29tcGlsZShyJ14uKiNtZDU9KFthLWYwLTldKykkJykKK0RJU1RfVFlQRVMgPSBbJ2JkaXN0JywgJ3NkaXN0J10KKworCitjbGFzcyBJbmRleFJlZmVyZW5jZToKKyAgICAiIiJNaXhpbiB1c2VkIHRvIHN0b3JlIHRoZSBpbmRleCByZWZlcmVuY2UiIiIKKyAgICBkZWYgc2V0X2luZGV4KHNlbGYsIGluZGV4PU5vbmUpOgorICAgICAgICBzZWxmLl9pbmRleCA9IGluZGV4CisKKworY2xhc3MgUmVsZWFzZUluZm8oSW5kZXhSZWZlcmVuY2UpOgorICAgICIiIlJlcHJlc2VudCBhIHJlbGVhc2Ugb2YgYSBwcm9qZWN0IChhIHByb2plY3Qgd2l0aCBhIHNwZWNpZmljIHZlcnNpb24pLgorICAgIFRoZSByZWxlYXNlIGNvbnRhaW4gdGhlIF9tZXRhZGF0YSBpbmZvcm1hdGlvbnMgcmVsYXRlZCB0byB0aGlzIHNwZWNpZmljCisgICAgdmVyc2lvbiwgYW5kIGlzIGFsc28gYSBjb250YWluZXIgZm9yIGRpc3RyaWJ1dGlvbiByZWxhdGVkIGluZm9ybWF0aW9ucy4KKworICAgIFNlZSB0aGUgRGlzdEluZm8gY2xhc3MgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgZGlzdHJpYnV0aW9ucy4KKyAgICAiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBuYW1lLCB2ZXJzaW9uLCBtZXRhZGF0YT1Ob25lLCBoaWRkZW49RmFsc2UsCisgICAgICAgICAgICAgICAgIGluZGV4PU5vbmUsICoqa3dhcmdzKToKKyAgICAgICAgIiIiCisgICAgICAgIDpwYXJhbSBuYW1lOiB0aGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uCisgICAgICAgIDpwYXJhbSB2ZXJzaW9uOiB0aGUgdmVyc2lvbiBvZiB0aGUgZGlzdHJpYnV0aW9uCisgICAgICAgIDpwYXJhbSBtZXRhZGF0YTogdGhlIG1ldGFkYXRhIGZpZWxkcyBvZiB0aGUgcmVsZWFzZS4KKyAgICAgICAgOnR5cGUgbWV0YWRhdGE6IGRpY3QKKyAgICAgICAgOnBhcmFtIGt3YXJnczogb3B0aW9uYWwgYXJndW1lbnRzIGZvciBhIG5ldyBkaXN0cmlidXRpb24uCisgICAgICAgICIiIgorICAgICAgICBzZWxmLnNldF9pbmRleChpbmRleCkKKyAgICAgICAgc2VsZi5uYW1lID0gbmFtZQorICAgICAgICBzZWxmLl92ZXJzaW9uID0gTm9uZQorICAgICAgICBzZWxmLnZlcnNpb24gPSB2ZXJzaW9uCisgICAgICAgIGlmIG1ldGFkYXRhOgorICAgICAgICAgICAgc2VsZi5tZXRhZGF0YSA9IE1ldGFkYXRhKG1hcHBpbmc9bWV0YWRhdGEpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLm1ldGFkYXRhID0gTm9uZQorICAgICAgICBzZWxmLmRpc3RzID0ge30KKyAgICAgICAgc2VsZi5oaWRkZW4gPSBoaWRkZW4KKworICAgICAgICBpZiAnZGlzdF90eXBlJyBpbiBrd2FyZ3M6CisgICAgICAgICAgICBkaXN0X3R5cGUgPSBrd2FyZ3MucG9wKCdkaXN0X3R5cGUnKQorICAgICAgICAgICAgc2VsZi5hZGRfZGlzdHJpYnV0aW9uKGRpc3RfdHlwZSwgKiprd2FyZ3MpCisKKyAgICBkZWYgc2V0X3ZlcnNpb24oc2VsZiwgdmVyc2lvbik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuX3ZlcnNpb24gPSBOb3JtYWxpemVkVmVyc2lvbih2ZXJzaW9uKQorICAgICAgICBleGNlcHQgSXJyYXRpb25hbFZlcnNpb25FcnJvcjoKKyAgICAgICAgICAgIHN1Z2dlc3Rpb24gPSBzdWdnZXN0X25vcm1hbGl6ZWRfdmVyc2lvbih2ZXJzaW9uKQorICAgICAgICAgICAgaWYgc3VnZ2VzdGlvbjoKKyAgICAgICAgICAgICAgICBzZWxmLnZlcnNpb24gPSBzdWdnZXN0aW9uCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlIElycmF0aW9uYWxWZXJzaW9uRXJyb3IodmVyc2lvbikKKworICAgIGRlZiBnZXRfdmVyc2lvbihzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX3ZlcnNpb24KKworICAgIHZlcnNpb24gPSBwcm9wZXJ0eShnZXRfdmVyc2lvbiwgc2V0X3ZlcnNpb24pCisKKyAgICBkZWYgZmV0Y2hfbWV0YWRhdGEoc2VsZik6CisgICAgICAgICIiIklmIHRoZSBtZXRhZGF0YSBpcyBub3Qgc2V0LCB1c2UgdGhlIGluZGV4ZXMgdG8gZ2V0IGl0IiIiCisgICAgICAgIGlmIG5vdCBzZWxmLm1ldGFkYXRhOgorICAgICAgICAgICAgc2VsZi5faW5kZXguZ2V0X21ldGFkYXRhKHNlbGYubmFtZSwgc3RyKHNlbGYudmVyc2lvbikpCisgICAgICAgIHJldHVybiBzZWxmLm1ldGFkYXRhCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgaXNfZmluYWwoc2VsZik6CisgICAgICAgICIiInByb3h5IHRvIHZlcnNpb24uaXNfZmluYWwiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYudmVyc2lvbi5pc19maW5hbAorCisgICAgZGVmIGZldGNoX2Rpc3RyaWJ1dGlvbnMoc2VsZik6CisgICAgICAgIGlmIHNlbGYuZGlzdHMgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2luZGV4LmdldF9kaXN0cmlidXRpb25zKHNlbGYubmFtZSwgc3RyKHNlbGYudmVyc2lvbikpCisgICAgICAgICAgICBpZiBzZWxmLmRpc3RzIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5kaXN0cyA9IHt9CisgICAgICAgIHJldHVybiBzZWxmLmRpc3RzCisKKyAgICBkZWYgYWRkX2Rpc3RyaWJ1dGlvbihzZWxmLCBkaXN0X3R5cGU9J3NkaXN0JywgcHl0aG9uX3ZlcnNpb249Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAqKnBhcmFtcyk6CisgICAgICAgICIiIkFkZCBkaXN0cmlidXRpb24gaW5mb3JtYXRpb25zIHRvIHRoaXMgcmVsZWFzZS4KKyAgICAgICAgSWYgZGlzdHJpYnV0aW9uIGluZm9ybWF0aW9uIGlzIGFscmVhZHkgc2V0IGZvciB0aGlzIGRpc3RyaWJ1dGlvbiB0eXBlLAorICAgICAgICBhZGQgdGhlIGdpdmVuIHVybCBwYXRocyB0byB0aGUgZGlzdHJpYnV0aW9uLiBUaGlzIGNhbiBiZSB1c2VmdWwgd2hpbGUKKyAgICAgICAgc29tZSBvZiB0aGVtIGZhaWxzIHRvIGRvd25sb2FkLgorCisgICAgICAgIDpwYXJhbSBkaXN0X3R5cGU6IHRoZSBkaXN0cmlidXRpb24gdHlwZSAoZWcuICJzZGlzdCIsICJiZGlzdCIsIGV0Yy4pCisgICAgICAgIDpwYXJhbSBwYXJhbXM6IHRoZSBmaWVsZHMgdG8gYmUgcGFzc2VkIHRvIHRoZSBkaXN0cmlidXRpb24gb2JqZWN0CisgICAgICAgICAgICAgICAgICAgICAgIChzZWUgdGhlIDpjbGFzczpEaXN0SW5mbyBjb25zdHJ1Y3RvcikuCisgICAgICAgICIiIgorICAgICAgICBpZiBkaXN0X3R5cGUgbm90IGluIERJU1RfVFlQRVM6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKGRpc3RfdHlwZSkKKyAgICAgICAgaWYgZGlzdF90eXBlIGluIHNlbGYuZGlzdHM6CisgICAgICAgICAgICBzZWxmLmRpc3RzW2Rpc3RfdHlwZV0uYWRkX3VybCgqKnBhcmFtcykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZGlzdHNbZGlzdF90eXBlXSA9IERpc3RJbmZvKHNlbGYsIGRpc3RfdHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4PXNlbGYuX2luZGV4LCAqKnBhcmFtcykKKyAgICAgICAgaWYgcHl0aG9uX3ZlcnNpb246CisgICAgICAgICAgICBzZWxmLmRpc3RzW2Rpc3RfdHlwZV0ucHl0aG9uX3ZlcnNpb24gPSBweXRob25fdmVyc2lvbgorCisgICAgZGVmIGdldF9kaXN0cmlidXRpb24oc2VsZiwgZGlzdF90eXBlPU5vbmUsIHByZWZlcl9zb3VyY2U9VHJ1ZSk6CisgICAgICAgICIiIlJldHVybiBhIGRpc3RyaWJ1dGlvbi4KKworICAgICAgICBJZiBkaXN0X3R5cGUgaXMgc2V0LCBmaW5kIGZpcnN0IGZvciB0aGlzIGRpc3RyaWJ1dGlvbiB0eXBlLCBhbmQganVzdAorICAgICAgICBhY3QgYXMgYW4gYWxpYXMgb2YgX19nZXRfaXRlbV9fLgorCisgICAgICAgIElmIHByZWZlcl9zb3VyY2UgaXMgVHJ1ZSwgc2VhcmNoIGZpcnN0IGZvciBzb3VyY2UgZGlzdHJpYnV0aW9uLCBhbmQgaWYKKyAgICAgICAgbm90IHJldHVybiBvbmUgZXhpc3RpbmcgZGlzdHJpYnV0aW9uLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgbGVuKHNlbGYuZGlzdHMpID09IDA6CisgICAgICAgICAgICByYWlzZSBMb29rdXBFcnJvcgorICAgICAgICBpZiBkaXN0X3R5cGU6CisgICAgICAgICAgICByZXR1cm4gc2VsZltkaXN0X3R5cGVdCisgICAgICAgIGlmIHByZWZlcl9zb3VyY2U6CisgICAgICAgICAgICBpZiAic2Rpc3QiIGluIHNlbGYuZGlzdHM6CisgICAgICAgICAgICAgICAgZGlzdCA9IHNlbGZbInNkaXN0Il0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZGlzdCA9IG5leHQoc2VsZi5kaXN0cy52YWx1ZXMoKSkKKyAgICAgICAgICAgIHJldHVybiBkaXN0CisKKyAgICBkZWYgdW5wYWNrKHNlbGYsIHBhdGg9Tm9uZSwgcHJlZmVyX3NvdXJjZT1UcnVlKToKKyAgICAgICAgIiIiVW5wYWNrIHRoZSBkaXN0cmlidXRpb24gdG8gdGhlIGdpdmVuIHBhdGguCisKKyAgICAgICAgSWYgbm90IGRlc3RpbmF0aW9uIGlzIGdpdmVuLCBjcmVhdGVzIGEgdGVtcG9yYXJ5IGxvY2F0aW9uLgorCisgICAgICAgIFJldHVybnMgdGhlIGxvY2F0aW9uIG9mIHRoZSBleHRyYWN0ZWQgZmlsZXMgKHJvb3QpLgorICAgICAgICAiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuZ2V0X2Rpc3RyaWJ1dGlvbihwcmVmZXJfc291cmNlPXByZWZlcl9zb3VyY2UpXAorICAgICAgICAgICAgICAgICAgIC51bnBhY2socGF0aD1wYXRoKQorCisgICAgZGVmIGRvd25sb2FkKHNlbGYsIHRlbXBfcGF0aD1Ob25lLCBwcmVmZXJfc291cmNlPVRydWUpOgorICAgICAgICAiIiJEb3dubG9hZCB0aGUgZGlzdHJpYnV0aW9uLCB1c2luZyB0aGUgcmVxdWlyZW1lbnRzLgorCisgICAgICAgIElmIG1vcmUgdGhhbiBvbmUgZGlzdHJpYnV0aW9uIG1hdGNoIHRoZSByZXF1aXJlbWVudHMsIHVzZSB0aGUgbGFzdAorICAgICAgICB2ZXJzaW9uLgorICAgICAgICBEb3dubG9hZCB0aGUgZGlzdHJpYnV0aW9uLCBhbmQgcHV0IGl0IGluIHRoZSB0ZW1wX3BhdGguIElmIG5vIHRlbXBfcGF0aAorICAgICAgICBpcyBnaXZlbiwgY3JlYXRlcyBhbmQgcmV0dXJuIG9uZS4KKworICAgICAgICBSZXR1cm5zIHRoZSBjb21wbGV0ZSBhYnNvbHV0ZSBwYXRoIHRvIHRoZSBkb3dubG9hZGVkIGFyY2hpdmUuCisgICAgICAgICIiIgorICAgICAgICByZXR1cm4gc2VsZi5nZXRfZGlzdHJpYnV0aW9uKHByZWZlcl9zb3VyY2U9cHJlZmVyX3NvdXJjZSlcCisgICAgICAgICAgICAgICAgICAgLmRvd25sb2FkKHBhdGg9dGVtcF9wYXRoKQorCisgICAgZGVmIHNldF9tZXRhZGF0YShzZWxmLCBtZXRhZGF0YSk6CisgICAgICAgIGlmIG5vdCBzZWxmLm1ldGFkYXRhOgorICAgICAgICAgICAgc2VsZi5tZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICAgICAgc2VsZi5tZXRhZGF0YS51cGRhdGUobWV0YWRhdGEpCisKKyAgICBkZWYgX19nZXRpdGVtX18oc2VsZiwgaXRlbSk6CisgICAgICAgICIiImRpc3RyaWJ1dGlvbnMgYXJlIGF2YWlsYWJsZSB1c2luZyByZWxlYXNlWyJzZGlzdCJdIiIiCisgICAgICAgIHJldHVybiBzZWxmLmRpc3RzW2l0ZW1dCisKKyAgICBkZWYgX2NoZWNrX2lzX2NvbXBhcmFibGUoc2VsZiwgb3RoZXIpOgorICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShvdGhlciwgUmVsZWFzZUluZm8pOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJjYW5ub3QgY29tcGFyZSAlcyBhbmQgJXMiCisgICAgICAgICAgICAgICAgJSAodHlwZShzZWxmKS5fX25hbWVfXywgdHlwZShvdGhlcikuX19uYW1lX18pKQorICAgICAgICBlbGlmIHNlbGYubmFtZSAhPSBvdGhlci5uYW1lOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJjYW5ub3QgY29tcGFyZSAlcyBhbmQgJXMiCisgICAgICAgICAgICAgICAgJSAoc2VsZi5uYW1lLCBvdGhlci5uYW1lKSkKKworICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKKyAgICAgICAgcmV0dXJuICI8JXMgJXM+IiAlIChzZWxmLm5hbWUsIHNlbGYudmVyc2lvbikKKworICAgIGRlZiBfX2VxX18oc2VsZiwgb3RoZXIpOgorICAgICAgICBzZWxmLl9jaGVja19pc19jb21wYXJhYmxlKG90aGVyKQorICAgICAgICByZXR1cm4gc2VsZi52ZXJzaW9uID09IG90aGVyLnZlcnNpb24KKworICAgIGRlZiBfX2x0X18oc2VsZiwgb3RoZXIpOgorICAgICAgICBzZWxmLl9jaGVja19pc19jb21wYXJhYmxlKG90aGVyKQorICAgICAgICByZXR1cm4gc2VsZi52ZXJzaW9uIDwgb3RoZXIudmVyc2lvbgorCisgICAgZGVmIF9fbmVfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBub3Qgc2VsZi5fX2VxX18ob3RoZXIpCisKKyAgICBkZWYgX19ndF9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIG5vdCAoc2VsZi5fX2x0X18ob3RoZXIpIG9yIHNlbGYuX19lcV9fKG90aGVyKSkKKworICAgIGRlZiBfX2xlX18oc2VsZiwgb3RoZXIpOgorICAgICAgICByZXR1cm4gc2VsZi5fX2VxX18ob3RoZXIpIG9yIHNlbGYuX19sdF9fKG90aGVyKQorCisgICAgZGVmIF9fZ2VfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBzZWxmLl9fZXFfXyhvdGhlcikgb3Igc2VsZi5fX2d0X18ob3RoZXIpCisKKyAgICAjIFNlZSBodHRwOi8vZG9jcy5weXRob24ub3JnL3JlZmVyZW5jZS9kYXRhbW9kZWwjb2JqZWN0Ll9faGFzaF9fCisgICAgX19oYXNoX18gPSBvYmplY3QuX19oYXNoX18KKworCitjbGFzcyBEaXN0SW5mbyhJbmRleFJlZmVyZW5jZSk6CisgICAgIiIiUmVwcmVzZW50cyBhIGRpc3RyaWJ1dGlvbiByZXRyaWV2ZWQgZnJvbSBhbiBpbmRleCAoc2Rpc3QsIGJkaXN0LCAuLi4pCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgcmVsZWFzZSwgZGlzdF90eXBlPU5vbmUsIHVybD1Ob25lLCBoYXNobmFtZT1Ob25lLAorICAgICAgICAgICAgICAgICBoYXNodmFsPU5vbmUsIGlzX2V4dGVybmFsPVRydWUsIHB5dGhvbl92ZXJzaW9uPU5vbmUsCisgICAgICAgICAgICAgICAgIGluZGV4PU5vbmUpOgorICAgICAgICAiIiJDcmVhdGUgYSBuZXcgaW5zdGFuY2Ugb2YgRGlzdEluZm8uCisKKyAgICAgICAgOnBhcmFtIHJlbGVhc2U6IGEgRGlzdEluZm8gY2xhc3MgaXMgcmVsYXRpdmUgdG8gYSByZWxlYXNlLgorICAgICAgICA6cGFyYW0gZGlzdF90eXBlOiB0aGUgdHlwZSBvZiB0aGUgZGlzdCAoZWcuIHNvdXJjZSwgYmluLSosIGV0Yy4pCisgICAgICAgIDpwYXJhbSB1cmw6IFVSTCB3aGVyZSB3ZSBmb3VuZCB0aGlzIGRpc3RyaWJ1dGlvbgorICAgICAgICA6cGFyYW0gaGFzaG5hbWU6IHRoZSBuYW1lIG9mIHRoZSBoYXNoIHdlIHdhbnQgdG8gdXNlLiBSZWZlciB0byB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgICBoYXNobGliLm5ldyBkb2N1bWVudGF0aW9uIGZvciBtb3JlIGluZm9ybWF0aW9uLgorICAgICAgICA6cGFyYW0gaGFzaHZhbDogdGhlIGhhc2ggdmFsdWUuCisgICAgICAgIDpwYXJhbSBpc19leHRlcm5hbDogd2UgbmVlZCB0byBrbm93IGlmIHRoZSBwcm92aWRlZCB1cmwgY29tZXMgZnJvbQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuIGluZGV4IGJyb3dzaW5nLCBvciBmcm9tIGFuIGV4dGVybmFsIHJlc291cmNlLgorCisgICAgICAgICIiIgorICAgICAgICBzZWxmLnNldF9pbmRleChpbmRleCkKKyAgICAgICAgc2VsZi5yZWxlYXNlID0gcmVsZWFzZQorICAgICAgICBzZWxmLmRpc3RfdHlwZSA9IGRpc3RfdHlwZQorICAgICAgICBzZWxmLnB5dGhvbl92ZXJzaW9uID0gcHl0aG9uX3ZlcnNpb24KKyAgICAgICAgc2VsZi5fdW5wYWNrZWRfZGlyID0gTm9uZQorICAgICAgICAjIHNldCB0aGUgZG93bmxvYWRlZCBwYXRoIHRvIE5vbmUgYnkgZGVmYXVsdC4gVGhlIGdvYWwgaGVyZQorICAgICAgICAjIGlzIHRvIG5vdCBkb3dubG9hZCBkaXN0cmlidXRpb25zIG11bHRpcGxlIHRpbWVzCisgICAgICAgIHNlbGYuZG93bmxvYWRlZF9sb2NhdGlvbiA9IE5vbmUKKyAgICAgICAgIyBXZSBzdG9yZSB1cmxzIGluIGRpY3QsIGJlY2F1c2Ugd2UgbmVlZCB0byBoYXZlIGEgYml0IG1vcmUgaW5mb3MKKyAgICAgICAgIyB0aGFuIHRoZSBzaW1wbGUgVVJMLiBJdCB3aWxsIGJlIHVzZWQgbGF0ZXIgdG8gZmluZCB0aGUgZ29vZCB1cmwgdG8KKyAgICAgICAgIyB1c2UuCisgICAgICAgICMgV2UgaGF2ZSB0d28gX3VybCogYXR0cmlidXRlczogX3VybCBhbmQgdXJscy4gdXJscyBjb250YWlucyBhIGxpc3QKKyAgICAgICAgIyBvZiBkaWN0IGZvciB0aGUgZGlmZmVyZW50IHVybHMsIGFuZCBfdXJsIGNvbnRhaW5zIHRoZSBjaG9vc2VuIHVybCwgaW4KKyAgICAgICAgIyBvcmRlciB0byBkb250IG1ha2UgdGhlIHNlbGVjdGlvbiBwcm9jZXNzIG11bHRpcGxlIHRpbWVzLgorICAgICAgICBzZWxmLnVybHMgPSBbXQorICAgICAgICBzZWxmLl91cmwgPSBOb25lCisgICAgICAgIHNlbGYuYWRkX3VybCh1cmwsIGhhc2huYW1lLCBoYXNodmFsLCBpc19leHRlcm5hbCkKKworICAgIGRlZiBhZGRfdXJsKHNlbGYsIHVybD1Ob25lLCBoYXNobmFtZT1Ob25lLCBoYXNodmFsPU5vbmUsIGlzX2V4dGVybmFsPVRydWUpOgorICAgICAgICAiIiJBZGQgYSBuZXcgdXJsIHRvIHRoZSBsaXN0IG9mIHVybHMiIiIKKyAgICAgICAgaWYgaGFzaG5hbWUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaGFzaGxpYi5uZXcoaGFzaG5hbWUpCisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICAgICByYWlzZSBVbnN1cHBvcnRlZEhhc2hOYW1lKGhhc2huYW1lKQorICAgICAgICBpZiB1cmwgbm90IGluIFt1Wyd1cmwnXSBmb3IgdSBpbiBzZWxmLnVybHNdOgorICAgICAgICAgICAgc2VsZi51cmxzLmFwcGVuZCh7CisgICAgICAgICAgICAgICAgJ3VybCc6IHVybCwKKyAgICAgICAgICAgICAgICAnaGFzaG5hbWUnOiBoYXNobmFtZSwKKyAgICAgICAgICAgICAgICAnaGFzaHZhbCc6IGhhc2h2YWwsCisgICAgICAgICAgICAgICAgJ2lzX2V4dGVybmFsJzogaXNfZXh0ZXJuYWwsCisgICAgICAgICAgICB9KQorICAgICAgICAgICAgIyByZXNldCB0aGUgdXJsIHNlbGVjdGlvbiBwcm9jZXNzCisgICAgICAgICAgICBzZWxmLl91cmwgPSBOb25lCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgdXJsKHNlbGYpOgorICAgICAgICAiIiJQaWNrIHVwIHRoZSByaWdodCB1cmwgZm9yIHRoZSBsaXN0IG9mIHVybHMgaW4gc2VsZi51cmxzIiIiCisgICAgICAgICMgV2UgcmV0dXJuIGludGVybmFsIHVybHMgb3ZlciBleHRlcm5hbHMuCisgICAgICAgICMgSWYgdGhlcmUgaXMgbW9yZSB0aGFuIG9uZSBpbnRlcm5hbCBvciBleHRlcm5hbCwgcmV0dXJuIHRoZSBmaXJzdAorICAgICAgICAjIG9uZS4KKyAgICAgICAgaWYgc2VsZi5fdXJsIGlzIE5vbmU6CisgICAgICAgICAgICBpZiBsZW4oc2VsZi51cmxzKSA+IDE6CisgICAgICAgICAgICAgICAgaW50ZXJuYWxzX3VybHMgPSBbdSBmb3IgdSBpbiBzZWxmLnVybHMgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHVbJ2lzX2V4dGVybmFsJ10gPT0gRmFsc2VdCisgICAgICAgICAgICAgICAgaWYgbGVuKGludGVybmFsc191cmxzKSA+PSAxOgorICAgICAgICAgICAgICAgICAgICBzZWxmLl91cmwgPSBpbnRlcm5hbHNfdXJsc1swXQorICAgICAgICAgICAgaWYgc2VsZi5fdXJsIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5fdXJsID0gc2VsZi51cmxzWzBdCisgICAgICAgIHJldHVybiBzZWxmLl91cmwKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBpc19zb3VyY2Uoc2VsZik6CisgICAgICAgICIiInJldHVybiBpZiB0aGUgZGlzdHJpYnV0aW9uIGlzIGEgc291cmNlIG9uZSBvciBub3QiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuZGlzdF90eXBlID09ICdzZGlzdCcKKworICAgIGRlZiBkb3dubG9hZChzZWxmLCBwYXRoPU5vbmUpOgorICAgICAgICAiIiJEb3dubG9hZCB0aGUgZGlzdHJpYnV0aW9uIHRvIGEgcGF0aCwgYW5kIHJldHVybiBpdC4KKworICAgICAgICBJZiB0aGUgcGF0aCBpcyBnaXZlbiBpbiBwYXRoLCB1c2UgdGhpcywgb3RoZXJ3aXNlLCBnZW5lcmF0ZXMgYSBuZXcgb25lCisgICAgICAgIFJldHVybiB0aGUgZG93bmxvYWQgbG9jYXRpb24uCisgICAgICAgICIiIgorICAgICAgICBpZiBwYXRoIGlzIE5vbmU6CisgICAgICAgICAgICBwYXRoID0gdGVtcGZpbGUubWtkdGVtcCgpCisKKyAgICAgICAgIyBpZiB3ZSBkbyBub3QgaGF2ZSBkb3dubG9hZGVkIGl0IHlldCwgZG8gaXQuCisgICAgICAgIGlmIHNlbGYuZG93bmxvYWRlZF9sb2NhdGlvbiBpcyBOb25lOgorICAgICAgICAgICAgdXJsID0gc2VsZi51cmxbJ3VybCddCisgICAgICAgICAgICBhcmNoaXZlX25hbWUgPSB1cmxsaWIucGFyc2UudXJscGFyc2UodXJsKVsyXS5zcGxpdCgnLycpWy0xXQorICAgICAgICAgICAgZmlsZW5hbWUsIGhlYWRlcnMgPSB1cmxsaWIucmVxdWVzdC51cmxyZXRyaWV2ZSh1cmwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoICsgIi8iICsgYXJjaGl2ZV9uYW1lKQorICAgICAgICAgICAgc2VsZi5kb3dubG9hZGVkX2xvY2F0aW9uID0gZmlsZW5hbWUKKyAgICAgICAgICAgIHNlbGYuX2NoZWNrX21kNShmaWxlbmFtZSkKKyAgICAgICAgcmV0dXJuIHNlbGYuZG93bmxvYWRlZF9sb2NhdGlvbgorCisgICAgZGVmIHVucGFjayhzZWxmLCBwYXRoPU5vbmUpOgorICAgICAgICAiIiJVbnBhY2sgdGhlIGRpc3RyaWJ1dGlvbiB0byB0aGUgZ2l2ZW4gcGF0aC4KKworICAgICAgICBJZiBub3QgZGVzdGluYXRpb24gaXMgZ2l2ZW4sIGNyZWF0ZXMgYSB0ZW1wb3JhcnkgbG9jYXRpb24uCisKKyAgICAgICAgUmV0dXJucyB0aGUgbG9jYXRpb24gb2YgdGhlIGV4dHJhY3RlZCBmaWxlcyAocm9vdCkuCisgICAgICAgICIiIgorICAgICAgICBpZiBub3Qgc2VsZi5fdW5wYWNrZWRfZGlyOgorICAgICAgICAgICAgaWYgcGF0aCBpcyBOb25lOgorICAgICAgICAgICAgICAgIHBhdGggPSB0ZW1wZmlsZS5ta2R0ZW1wKCkKKworICAgICAgICAgICAgZmlsZW5hbWUgPSBzZWxmLmRvd25sb2FkKHBhdGgpCisgICAgICAgICAgICB1bnBhY2tfYXJjaGl2ZShmaWxlbmFtZSwgcGF0aCkKKyAgICAgICAgICAgIHNlbGYuX3VucGFja2VkX2RpciA9IHBhdGgKKworICAgICAgICByZXR1cm4gcGF0aAorCisgICAgZGVmIF9jaGVja19tZDUoc2VsZiwgZmlsZW5hbWUpOgorICAgICAgICAiIiJDaGVjayB0aGF0IHRoZSBtZDUgY2hlY2tzdW0gb2YgdGhlIGdpdmVuIGZpbGUgbWF0Y2hlcyB0aGUgb25lIGluCisgICAgICAgIHVybCBwYXJhbSIiIgorICAgICAgICBoYXNobmFtZSA9IHNlbGYudXJsWydoYXNobmFtZSddCisgICAgICAgIGV4cGVjdGVkX2hhc2h2YWwgPSBzZWxmLnVybFsnaGFzaHZhbCddCisgICAgICAgIGlmIE5vbmUgbm90IGluIChleHBlY3RlZF9oYXNodmFsLCBoYXNobmFtZSk6CisgICAgICAgICAgICB3aXRoIG9wZW4oZmlsZW5hbWUsICdyYicpIGFzIGY6CisgICAgICAgICAgICAgICAgaGFzaHZhbCA9IGhhc2hsaWIubmV3KGhhc2huYW1lKQorICAgICAgICAgICAgICAgIGhhc2h2YWwudXBkYXRlKGYucmVhZCgpKQorCisgICAgICAgICAgICBpZiBoYXNodmFsLmhleGRpZ2VzdCgpICE9IGV4cGVjdGVkX2hhc2h2YWw6CisgICAgICAgICAgICAgICAgcmFpc2UgSGFzaERvZXNOb3RNYXRjaCgiZ290ICVzIGluc3RlYWQgb2YgJXMiCisgICAgICAgICAgICAgICAgICAgICUgKGhhc2h2YWwuaGV4ZGlnZXN0KCksIGV4cGVjdGVkX2hhc2h2YWwpKQorCisgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgorICAgICAgICBpZiBzZWxmLnJlbGVhc2UgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiAiPD8gPyAlcz4iICUgc2VsZi5kaXN0X3R5cGUKKworICAgICAgICByZXR1cm4gIjwlcyAlcyAlcz4iICUgKAorICAgICAgICAgICAgc2VsZi5yZWxlYXNlLm5hbWUsIHNlbGYucmVsZWFzZS52ZXJzaW9uLCBzZWxmLmRpc3RfdHlwZSBvciAiIikKKworCitjbGFzcyBSZWxlYXNlc0xpc3QoSW5kZXhSZWZlcmVuY2UpOgorICAgICIiIkEgY29udGFpbmVyIG9mIFJlbGVhc2UuCisKKyAgICBQcm92aWRlcyB1c2VmdWwgbWV0aG9kcyBhbmQgZmFjaWxpdGllcyB0byBzb3J0IGFuZCBmaWx0ZXIgcmVsZWFzZXMuCisgICAgIiIiCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIHJlbGVhc2VzPU5vbmUsIGNvbnRhaW5zX2hpZGRlbj1GYWxzZSwgaW5kZXg9Tm9uZSk6CisgICAgICAgIHNlbGYuc2V0X2luZGV4KGluZGV4KQorICAgICAgICBzZWxmLnJlbGVhc2VzID0gW10KKyAgICAgICAgc2VsZi5uYW1lID0gbmFtZQorICAgICAgICBzZWxmLmNvbnRhaW5zX2hpZGRlbiA9IGNvbnRhaW5zX2hpZGRlbgorICAgICAgICBpZiByZWxlYXNlczoKKyAgICAgICAgICAgIHNlbGYuYWRkX3JlbGVhc2VzKHJlbGVhc2VzKQorCisgICAgZGVmIGZldGNoX3JlbGVhc2VzKHNlbGYpOgorICAgICAgICBzZWxmLl9pbmRleC5nZXRfcmVsZWFzZXMoc2VsZi5uYW1lKQorICAgICAgICByZXR1cm4gc2VsZi5yZWxlYXNlcworCisgICAgZGVmIGZpbHRlcihzZWxmLCBwcmVkaWNhdGUpOgorICAgICAgICAiIiJGaWx0ZXIgYW5kIHJldHVybiBhIHN1YnNldCBvZiByZWxlYXNlcyBtYXRjaGluZyB0aGUgZ2l2ZW4gcHJlZGljYXRlLgorICAgICAgICAiIiIKKyAgICAgICAgcmV0dXJuIFJlbGVhc2VzTGlzdChzZWxmLm5hbWUsIFtyZWxlYXNlIGZvciByZWxlYXNlIGluIHNlbGYucmVsZWFzZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBwcmVkaWNhdGUubWF0Y2gocmVsZWFzZS52ZXJzaW9uKV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg9c2VsZi5faW5kZXgpCisKKyAgICBkZWYgZ2V0X2xhc3Qoc2VsZiwgcmVxdWlyZW1lbnRzLCBwcmVmZXJfZmluYWw9Tm9uZSk6CisgICAgICAgICIiIlJldHVybiB0aGUgImxhc3QiIHJlbGVhc2UsIHRoYXQgc2F0aXNmeSB0aGUgZ2l2ZW4gcHJlZGljYXRlcy4KKworICAgICAgICAibGFzdCIgaXMgZGVmaW5lZCBieSB0aGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlIHJlbGVhc2VzLCB5b3UgYWxzbyBjb3VsZAorICAgICAgICBzZXQgcHJlZmVyX2ZpbmFsIHBhcmFtZXRlciB0byBUcnVlIG9yIEZhbHNlIHRvIGNoYW5nZSB0aGUgb3JkZXIgcmVzdWx0cworICAgICAgICAiIiIKKyAgICAgICAgcHJlZGljYXRlID0gZ2V0X3ZlcnNpb25fcHJlZGljYXRlKHJlcXVpcmVtZW50cykKKyAgICAgICAgcmVsZWFzZXMgPSBzZWxmLmZpbHRlcihwcmVkaWNhdGUpCisgICAgICAgIGlmIGxlbihyZWxlYXNlcykgPT0gMDoKKyAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIHJlbGVhc2VzLnNvcnRfcmVsZWFzZXMocHJlZmVyX2ZpbmFsLCByZXZlcnNlPVRydWUpCisgICAgICAgIHJldHVybiByZWxlYXNlc1swXQorCisgICAgZGVmIGFkZF9yZWxlYXNlcyhzZWxmLCByZWxlYXNlcyk6CisgICAgICAgICIiIkFkZCByZWxlYXNlcyBpbiB0aGUgcmVsZWFzZSBsaXN0LgorCisgICAgICAgIDpwYXJhbTogcmVsZWFzZXMgaXMgYSBsaXN0IG9mIFJlbGVhc2VJbmZvIG9iamVjdHMuCisgICAgICAgICIiIgorICAgICAgICBmb3IgciBpbiByZWxlYXNlczoKKyAgICAgICAgICAgIHNlbGYuYWRkX3JlbGVhc2UocmVsZWFzZT1yKQorCisgICAgZGVmIGFkZF9yZWxlYXNlKHNlbGYsIHZlcnNpb249Tm9uZSwgZGlzdF90eXBlPSdzZGlzdCcsIHJlbGVhc2U9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgKipkaXN0X2FyZ3MpOgorICAgICAgICAiIiJBZGQgYSByZWxlYXNlIHRvIHRoZSBsaXN0LgorCisgICAgICAgIFRoZSByZWxlYXNlIGNhbiBiZSBwYXNzZWQgaW4gdGhlIGByZWxlYXNlYCBwYXJhbWV0ZXIsIGFuZCBpbiB0aGlzIGNhc2UsCisgICAgICAgIGl0IHdpbGwgYmUgY3Jhd2xlZCB0byBleHRyYWN0IHRoZSB1c2VmdWwgaW5mb3JtYXRpb25zIGlmIG5lY2Vzc2FyeSwgb3IKKyAgICAgICAgdGhlIHJlbGVhc2UgaW5mb3JtYXRpb25zIGNhbiBiZSBkaXJlY3RseSBwYXNzZWQgaW4gdGhlIGB2ZXJzaW9uYCBhbmQKKyAgICAgICAgYGRpc3RfdHlwZWAgYXJndW1lbnRzLgorCisgICAgICAgIE90aGVyIGtleXdvcmRzIGFyZ3VtZW50cyBjYW4gYmUgcHJvdmlkZWQsIGFuZCB3aWxsIGJlIGZvcndhcmRlZCB0byB0aGUKKyAgICAgICAgZGlzdHJpYnV0aW9uIGNyZWF0aW9uIChlZy4gdGhlIGFyZ3VtZW50cyBvZiB0aGUgRGlzdEluZm8gY29uc3RydWN0b3IpLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgcmVsZWFzZToKKyAgICAgICAgICAgIGlmIHJlbGVhc2UubmFtZS5sb3dlcigpICE9IHNlbGYubmFtZS5sb3dlcigpOgorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIiVzIGlzIG5vdCB0aGUgc2FtZSBwcm9qZWN0IGFzICVzIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocmVsZWFzZS5uYW1lLCBzZWxmLm5hbWUpKQorICAgICAgICAgICAgdmVyc2lvbiA9IHN0cihyZWxlYXNlLnZlcnNpb24pCisKKyAgICAgICAgICAgIGlmIHZlcnNpb24gbm90IGluIHNlbGYuZ2V0X3ZlcnNpb25zKCk6CisgICAgICAgICAgICAgICAgIyBhcHBlbmQgb25seSBpZiBub3QgYWxyZWFkeSBleGlzdHMKKyAgICAgICAgICAgICAgICBzZWxmLnJlbGVhc2VzLmFwcGVuZChyZWxlYXNlKQorICAgICAgICAgICAgZm9yIGRpc3QgaW4gcmVsZWFzZS5kaXN0cy52YWx1ZXMoKToKKyAgICAgICAgICAgICAgICBmb3IgdXJsIGluIGRpc3QudXJsczoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hZGRfcmVsZWFzZSh2ZXJzaW9uLCBkaXN0LmRpc3RfdHlwZSwgKip1cmwpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBtYXRjaGVzID0gW3IgZm9yIHIgaW4gc2VsZi5yZWxlYXNlcworICAgICAgICAgICAgICAgICAgICAgICBpZiBzdHIoci52ZXJzaW9uKSA9PSB2ZXJzaW9uIGFuZCByLm5hbWUgPT0gc2VsZi5uYW1lXQorICAgICAgICAgICAgaWYgbm90IG1hdGNoZXM6CisgICAgICAgICAgICAgICAgcmVsZWFzZSA9IFJlbGVhc2VJbmZvKHNlbGYubmFtZSwgdmVyc2lvbiwgaW5kZXg9c2VsZi5faW5kZXgpCisgICAgICAgICAgICAgICAgc2VsZi5yZWxlYXNlcy5hcHBlbmQocmVsZWFzZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmVsZWFzZSA9IG1hdGNoZXNbMF0KKworICAgICAgICAgICAgcmVsZWFzZS5hZGRfZGlzdHJpYnV0aW9uKGRpc3RfdHlwZT1kaXN0X3R5cGUsICoqZGlzdF9hcmdzKQorCisgICAgZGVmIHNvcnRfcmVsZWFzZXMoc2VsZiwgcHJlZmVyX2ZpbmFsPUZhbHNlLCByZXZlcnNlPVRydWUsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICIiIlNvcnQgdGhlIHJlc3VsdHMgd2l0aCB0aGUgZ2l2ZW4gcHJvcGVydGllcy4KKworICAgICAgICBUaGUgYHByZWZlcl9maW5hbGAgYXJndW1lbnQgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBpZiBmaW5hbAorICAgICAgICBkaXN0cmlidXRpb25zIChlZy4gbm90IGRldiwgYmV0YSBvciBhbHBoYSkgd291bGQgYmUgcHJlZmVycmVkIG9yIG5vdC4KKworICAgICAgICBSZXN1bHRzIGNhbiBiZSBpbnZlcnRlZCBieSB1c2luZyBgcmV2ZXJzZWAuCisKKyAgICAgICAgQW55IG90aGVyIHBhcmFtZXRlciBwcm92aWRlZCB3aWxsIGJlIGZvcndhcmRlZCB0byB0aGUgc29ydGVkIGNhbGwuIFlvdQorICAgICAgICBjYW5ub3QgcmVkZWZpbmUgdGhlIGtleSBhcmd1bWVudCBvZiAic29ydGVkIiBoZXJlLCBhcyBpdCBpcyB1c2VkCisgICAgICAgIGludGVybmFsbHkgdG8gc29ydCB0aGUgcmVsZWFzZXMuCisgICAgICAgICIiIgorCisgICAgICAgIHNvcnRfYnkgPSBbXQorICAgICAgICBpZiBwcmVmZXJfZmluYWw6CisgICAgICAgICAgICBzb3J0X2J5LmFwcGVuZCgiaXNfZmluYWwiKQorICAgICAgICBzb3J0X2J5LmFwcGVuZCgidmVyc2lvbiIpCisKKyAgICAgICAgc2VsZi5yZWxlYXNlcy5zb3J0KAorICAgICAgICAgICAga2V5PWxhbWJkYSBpOiB0dXBsZShnZXRhdHRyKGksIGFyZykgZm9yIGFyZyBpbiBzb3J0X2J5KSwKKyAgICAgICAgICAgIHJldmVyc2U9cmV2ZXJzZSwgKmFyZ3MsICoqa3dhcmdzKQorCisgICAgZGVmIGdldF9yZWxlYXNlKHNlbGYsIHZlcnNpb24pOgorICAgICAgICAiIiJSZXR1cm4gYSByZWxlYXNlIGZyb20gaXRzIHZlcnNpb24uIiIiCisgICAgICAgIG1hdGNoZXMgPSBbciBmb3IgciBpbiBzZWxmLnJlbGVhc2VzIGlmIHN0cihyLnZlcnNpb24pID09IHZlcnNpb25dCisgICAgICAgIGlmIGxlbihtYXRjaGVzKSAhPSAxOgorICAgICAgICAgICAgcmFpc2UgS2V5RXJyb3IodmVyc2lvbikKKyAgICAgICAgcmV0dXJuIG1hdGNoZXNbMF0KKworICAgIGRlZiBnZXRfdmVyc2lvbnMoc2VsZik6CisgICAgICAgICIiIlJldHVybiBhIGxpc3Qgb2YgcmVsZWFzZXMgdmVyc2lvbnMgY29udGFpbmVkIiIiCisgICAgICAgIHJldHVybiBbc3RyKHIudmVyc2lvbikgZm9yIHIgaW4gc2VsZi5yZWxlYXNlc10KKworICAgIGRlZiBfX2dldGl0ZW1fXyhzZWxmLCBrZXkpOgorICAgICAgICByZXR1cm4gc2VsZi5yZWxlYXNlc1trZXldCisKKyAgICBkZWYgX19sZW5fXyhzZWxmKToKKyAgICAgICAgcmV0dXJuIGxlbihzZWxmLnJlbGVhc2VzKQorCisgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgorICAgICAgICBzdHJpbmcgPSAnUHJvamVjdCAiJXMiJyAlIHNlbGYubmFtZQorICAgICAgICBpZiBzZWxmLmdldF92ZXJzaW9ucygpOgorICAgICAgICAgICAgc3RyaW5nICs9ICcgdmVyc2lvbnM6ICVzJyAlICcsICcuam9pbihzZWxmLmdldF92ZXJzaW9ucygpKQorICAgICAgICByZXR1cm4gJzwlcz4nICUgc3RyaW5nCisKKworZGVmIGdldF9pbmZvc19mcm9tX3VybCh1cmwsIHByb2JhYmxlX2Rpc3RfbmFtZT1Ob25lLCBpc19leHRlcm5hbD1UcnVlKToKKyAgICAiIiJHZXQgdXNlZnVsIGluZm9ybWF0aW9ucyBmcm9tIGFuIFVSTC4KKworICAgIFJldHVybiBhIGRpY3Qgb2YgKG5hbWUsIHZlcnNpb24sIHVybCwgaGFzaHR5cGUsIGhhc2gsIGlzX2V4dGVybmFsKQorCisgICAgOnBhcmFtIHVybDogY29tcGxldGUgdXJsIG9mIHRoZSBkaXN0cmlidXRpb24KKyAgICA6cGFyYW0gcHJvYmFibGVfZGlzdF9uYW1lOiBBIHByb2JhYmxlIG5hbWUgb2YgdGhlIHByb2plY3QuCisgICAgOnBhcmFtIGlzX2V4dGVybmFsOiBUZWxsIGlmIHRoZSB1cmwgY29tbWVzIGZyb20gYW4gaW5kZXggb3IgZnJvbQorICAgICAgICAgICAgICAgICAgICAgICAgYW4gZXh0ZXJuYWwgVVJMLgorICAgICIiIgorICAgICMgaWYgdGhlIHVybCBjb250YWlucyBhIG1kNSBoYXNoLCBnZXQgaXQuCisgICAgbWQ1X2hhc2ggPSBOb25lCisgICAgbWF0Y2ggPSBNRDVfSEFTSC5tYXRjaCh1cmwpCisgICAgaWYgbWF0Y2ggaXMgbm90IE5vbmU6CisgICAgICAgIG1kNV9oYXNoID0gbWF0Y2guZ3JvdXAoMSkKKyAgICAgICAgIyByZW1vdmUgdGhlIGhhc2gKKyAgICAgICAgdXJsID0gdXJsLnJlcGxhY2UoIiNtZDU9JXMiICUgbWQ1X2hhc2gsICIiKQorCisgICAgIyBwYXJzZSB0aGUgYXJjaGl2ZSBuYW1lIHRvIGZpbmQgZGlzdCBuYW1lIGFuZCB2ZXJzaW9uCisgICAgYXJjaGl2ZV9uYW1lID0gdXJsbGliLnBhcnNlLnVybHBhcnNlKHVybClbMl0uc3BsaXQoJy8nKVstMV0KKyAgICBleHRlbnNpb25fbWF0Y2hlZCA9IEZhbHNlCisgICAgIyByZW1vdmUgdGhlIGV4dGVuc2lvbiBmcm9tIHRoZSBuYW1lCisgICAgZm9yIGV4dCBpbiBFWFRFTlNJT05TOgorICAgICAgICBpZiBhcmNoaXZlX25hbWUuZW5kc3dpdGgoZXh0KToKKyAgICAgICAgICAgIGFyY2hpdmVfbmFtZSA9IGFyY2hpdmVfbmFtZVs6LWxlbihleHQpXQorICAgICAgICAgICAgZXh0ZW5zaW9uX21hdGNoZWQgPSBUcnVlCisKKyAgICBuYW1lLCB2ZXJzaW9uID0gc3BsaXRfYXJjaGl2ZV9uYW1lKGFyY2hpdmVfbmFtZSkKKyAgICBpZiBleHRlbnNpb25fbWF0Y2hlZCBpcyBUcnVlOgorICAgICAgICByZXR1cm4geyduYW1lJzogbmFtZSwKKyAgICAgICAgICAgICAgICAndmVyc2lvbic6IHZlcnNpb24sCisgICAgICAgICAgICAgICAgJ3VybCc6IHVybCwKKyAgICAgICAgICAgICAgICAnaGFzaG5hbWUnOiAibWQ1IiwKKyAgICAgICAgICAgICAgICAnaGFzaHZhbCc6IG1kNV9oYXNoLAorICAgICAgICAgICAgICAgICdpc19leHRlcm5hbCc6IGlzX2V4dGVybmFsLAorICAgICAgICAgICAgICAgICdkaXN0X3R5cGUnOiAnc2Rpc3QnfQorCisKK2RlZiBzcGxpdF9hcmNoaXZlX25hbWUoYXJjaGl2ZV9uYW1lLCBwcm9iYWJsZV9uYW1lPU5vbmUpOgorICAgICIiIlNwbGl0IGFuIGFyY2hpdmUgbmFtZSBpbnRvIHR3byBwYXJ0czogbmFtZSBhbmQgdmVyc2lvbi4KKworICAgIFJldHVybiB0aGUgdHVwbGUgKG5hbWUsIHZlcnNpb24pCisgICAgIiIiCisgICAgIyBUcnkgdG8gZGV0ZXJtaW5lIHdpY2ggcGFydCBpcyB0aGUgbmFtZSBhbmQgd2ljaCBpcyB0aGUgdmVyc2lvbiB1c2luZyB0aGUKKyAgICAjICItIiBzZXBhcmF0b3IuIFRha2UgdGhlIGxhcmdlciBwYXJ0IHRvIGJlIHRoZSB2ZXJzaW9uIG51bWJlciB0aGVuIHJlZHVjZQorICAgICMgaWYgdGhpcyBub3Qgd29ya3MuCisgICAgZGVmIGVhZ2VyX3NwbGl0KHN0ciwgbWF4c3BsaXQ9Mik6CisgICAgICAgICMgc3BsaXQgdXNpbmcgdGhlICItIiBzZXBhcmF0b3IKKyAgICAgICAgc3BsaXRzID0gc3RyLnJzcGxpdCgiLSIsIG1heHNwbGl0KQorICAgICAgICBuYW1lID0gc3BsaXRzWzBdCisgICAgICAgIHZlcnNpb24gPSAiLSIuam9pbihzcGxpdHNbMTpdKQorICAgICAgICBpZiB2ZXJzaW9uLnN0YXJ0c3dpdGgoIi0iKToKKyAgICAgICAgICAgIHZlcnNpb24gPSB2ZXJzaW9uWzE6XQorICAgICAgICBpZiBzdWdnZXN0X25vcm1hbGl6ZWRfdmVyc2lvbih2ZXJzaW9uKSBpcyBOb25lIGFuZCBtYXhzcGxpdCA+PSAwOgorICAgICAgICAgICAgIyB3ZSBkb250IGdldCBhIGdvb2QgdmVyc2lvbiBudW1iZXI6IHJlY3Vyc2UgIQorICAgICAgICAgICAgcmV0dXJuIGVhZ2VyX3NwbGl0KHN0ciwgbWF4c3BsaXQgLSAxKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIG5hbWUsIHZlcnNpb24KKyAgICBpZiBwcm9iYWJsZV9uYW1lIGlzIG5vdCBOb25lOgorICAgICAgICBwcm9iYWJsZV9uYW1lID0gcHJvYmFibGVfbmFtZS5sb3dlcigpCisgICAgbmFtZSA9IE5vbmUKKyAgICBpZiBwcm9iYWJsZV9uYW1lIGlzIG5vdCBOb25lIGFuZCBwcm9iYWJsZV9uYW1lIGluIGFyY2hpdmVfbmFtZToKKyAgICAgICAgIyB3ZSBnZXQgdGhlIG5hbWUgZnJvbSBwcm9iYWJsZV9uYW1lLCBpZiBnaXZlbi4KKyAgICAgICAgbmFtZSA9IHByb2JhYmxlX25hbWUKKyAgICAgICAgdmVyc2lvbiA9IGFyY2hpdmVfbmFtZS5sc3RyaXAobmFtZSkKKyAgICBlbHNlOgorICAgICAgICBuYW1lLCB2ZXJzaW9uID0gZWFnZXJfc3BsaXQoYXJjaGl2ZV9uYW1lKQorCisgICAgdmVyc2lvbiA9IHN1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uKHZlcnNpb24pCisgICAgaWYgdmVyc2lvbiBpcyBub3QgTm9uZSBhbmQgbmFtZSAhPSAiIjoKKyAgICAgICAgcmV0dXJuIG5hbWUubG93ZXIoKSwgdmVyc2lvbgorICAgIGVsc2U6CisgICAgICAgIHJhaXNlIENhbnRQYXJzZUFyY2hpdmVOYW1lKGFyY2hpdmVfbmFtZSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvcHlwaS9lcnJvcnMucHkgYi9MaWIvcGFja2FnaW5nL3B5cGkvZXJyb3JzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIxOTFhYzEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3B5cGkvZXJyb3JzLnB5CkBAIC0wLDAgKzEsMzkgQEAKKyIiIkV4Y2VwdGlvbnMgcmFpc2VkIGJ5IHBhY2thZ2luZy5weXBpIGNvZGUuIiIiCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nUHlQSUVycm9yCisKKworY2xhc3MgUHJvamVjdE5vdEZvdW5kKFBhY2thZ2luZ1B5UElFcnJvcik6CisgICAgIiIiUHJvamVjdCBoYXMgbm90IGJlZW4gZm91bmQiIiIKKworCitjbGFzcyBEaXN0cmlidXRpb25Ob3RGb3VuZChQYWNrYWdpbmdQeVBJRXJyb3IpOgorICAgICIiIlRoZSByZWxlYXNlIGhhcyBub3QgYmVlbiBmb3VuZCIiIgorCisKK2NsYXNzIFJlbGVhc2VOb3RGb3VuZChQYWNrYWdpbmdQeVBJRXJyb3IpOgorICAgICIiIlRoZSByZWxlYXNlIGhhcyBub3QgYmVlbiBmb3VuZCIiIgorCisKK2NsYXNzIENhbnRQYXJzZUFyY2hpdmVOYW1lKFBhY2thZ2luZ1B5UElFcnJvcik6CisgICAgIiIiQW4gYXJjaGl2ZSBuYW1lIGNhbid0IGJlIHBhcnNlZCB0byBmaW5kIGRpc3RyaWJ1dGlvbiBuYW1lIGFuZCB2ZXJzaW9uIiIiCisKKworY2xhc3MgRG93bmxvYWRFcnJvcihQYWNrYWdpbmdQeVBJRXJyb3IpOgorICAgICIiIkFuIGVycm9yIGhhcyBvY2N1cnMgd2hpbGUgZG93bmxvYWRpbmciIiIKKworCitjbGFzcyBIYXNoRG9lc05vdE1hdGNoKERvd25sb2FkRXJyb3IpOgorICAgICIiIkNvbXBhcmVkIGhhc2hlcyBkb2VzIG5vdCBtYXRjaCIiIgorCisKK2NsYXNzIFVuc3VwcG9ydGVkSGFzaE5hbWUoUGFja2FnaW5nUHlQSUVycm9yKToKKyAgICAiIiJBIHVuc3VwcG9ydGVkIGhhc2huYW1lIGhhcyBiZWVuIHVzZWQiIiIKKworCitjbGFzcyBVbmFibGVUb0Rvd25sb2FkKFBhY2thZ2luZ1B5UElFcnJvcik6CisgICAgIiIiQWxsIG1pcnJvcnMgaGF2ZSBiZWVuIHRyaWVkLCB3aXRob3V0IHN1Y2Nlc3MiIiIKKworCitjbGFzcyBJbnZhbGlkU2VhcmNoRmllbGQoUGFja2FnaW5nUHlQSUVycm9yKToKKyAgICAiIiJBbiBpbnZhbGlkIHNlYXJjaCBmaWVsZCBoYXMgYmVlbiB1c2VkIiIiCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3B5cGkvbWlycm9ycy5weSBiL0xpYi9wYWNrYWdpbmcvcHlwaS9taXJyb3JzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2NDZhY2ZmCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9weXBpL21pcnJvcnMucHkKQEAgLTAsMCArMSw1MiBAQAorIiIiVXRpbGl0aWVzIHJlbGF0ZWQgdG8gdGhlIG1pcnJvciBpbmZyYXN0cnVjdHVyZSBkZWZpbmVkIGluIFBFUCAzODEuIiIiCisKK2Zyb20gc3RyaW5nIGltcG9ydCBhc2NpaV9sb3dlcmNhc2UKK2ltcG9ydCBzb2NrZXQKKworREVGQVVMVF9NSVJST1JfVVJMID0gImxhc3QucHlwaS5weXRob24ub3JnIgorCisKK2RlZiBnZXRfbWlycm9ycyhob3N0bmFtZT1Ob25lKToKKyAgICAiIiJSZXR1cm4gdGhlIGxpc3Qgb2YgbWlycm9ycyBmcm9tIHRoZSBsYXN0IHJlY29yZCBmb3VuZCBvbiB0aGUgRE5TCisgICAgZW50cnk6OgorCisgICAgPj4+IGZyb20gcGFja2FnaW5nLnB5cGkubWlycm9ycyBpbXBvcnQgZ2V0X21pcnJvcnMKKyAgICA+Pj4gZ2V0X21pcnJvcnMoKQorICAgIFsnYS5weXBpLnB5dGhvbi5vcmcnLCAnYi5weXBpLnB5dGhvbi5vcmcnLCAnYy5weXBpLnB5dGhvbi5vcmcnLAorICAgICdkLnB5cGkucHl0aG9uLm9yZyddCisKKyAgICAiIiIKKyAgICBpZiBob3N0bmFtZSBpcyBOb25lOgorICAgICAgICBob3N0bmFtZSA9IERFRkFVTFRfTUlSUk9SX1VSTAorCisgICAgIyByZXR1cm4gdGhlIGxhc3QgbWlycm9yIHJlZ2lzdGVyZWQgb24gUHlQSS4KKyAgICB0cnk6CisgICAgICAgIGhvc3RuYW1lID0gc29ja2V0LmdldGhvc3RieW5hbWVfZXgoaG9zdG5hbWUpWzBdCisgICAgZXhjZXB0IHNvY2tldC5nYWllcnJvcjoKKyAgICAgICAgcmV0dXJuIFtdCisgICAgZW5kX2xldHRlciA9IGhvc3RuYW1lLnNwbGl0KCIuIiwgMSkKKworICAgICMgZGV0ZXJtaW5lIHRoZSBsaXN0IGZyb20gdGhlIGxhc3Qgb25lLgorICAgIHJldHVybiBbIiVzLiVzIiAlIChzLCBlbmRfbGV0dGVyWzFdKSBmb3IgcyBpbiBzdHJpbmdfcmFuZ2UoZW5kX2xldHRlclswXSldCisKKworZGVmIHN0cmluZ19yYW5nZShsYXN0KToKKyAgICAiIiJDb21wdXRlIHRoZSByYW5nZSBvZiBzdHJpbmcgYmV0d2VlbiAiYSIgYW5kIGxhc3QuCisKKyAgICBUaGlzIHdvcmtzIGZvciBzaW1wbGUgImEgdG8geiIgbGlzdHMsIGJ1dCBhbHNvIGZvciAiYSB0byB6eiIgbGlzdHMuCisgICAgIiIiCisgICAgZm9yIGsgaW4gcmFuZ2UobGVuKGxhc3QpKToKKyAgICAgICAgZm9yIHggaW4gcHJvZHVjdChhc2NpaV9sb3dlcmNhc2UsIHJlcGVhdD0oayArIDEpKToKKyAgICAgICAgICAgIHJlc3VsdCA9ICcnLmpvaW4oeCkKKyAgICAgICAgICAgIHlpZWxkIHJlc3VsdAorICAgICAgICAgICAgaWYgcmVzdWx0ID09IGxhc3Q6CisgICAgICAgICAgICAgICAgcmV0dXJuCisKKworZGVmIHByb2R1Y3QoKmFyZ3MsICoqa3dkcyk6CisgICAgcG9vbHMgPSBbdHVwbGUoYXJnKSBmb3IgYXJnIGluIGFyZ3NdICoga3dkcy5nZXQoJ3JlcGVhdCcsIDEpCisgICAgcmVzdWx0ID0gW1tdXQorICAgIGZvciBwb29sIGluIHBvb2xzOgorICAgICAgICByZXN1bHQgPSBbeCArIFt5XSBmb3IgeCBpbiByZXN1bHQgZm9yIHkgaW4gcG9vbF0KKyAgICBmb3IgcHJvZCBpbiByZXN1bHQ6CisgICAgICAgIHlpZWxkIHR1cGxlKHByb2QpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3B5cGkvc2ltcGxlLnB5IGIvTGliL3BhY2thZ2luZy9weXBpL3NpbXBsZS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMjZkNTVkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9weXBpL3NpbXBsZS5weQpAQCAtMCwwICsxLDQ2MiBAQAorIiIiU3BpZGVyIHVzaW5nIHRoZSBzY3JlZW4tc2NyYXBpbmcgInNpbXBsZSIgUHlQSSBBUEkuCisKK1RoaXMgbW9kdWxlIGNvbnRhaW5zIHRoZSBjbGFzcyBDcmF3bGVyLCBhIHNpbXBsZSBzcGlkZXIgdGhhdAorY2FuIGJlIHVzZWQgdG8gZmluZCBhbmQgcmV0cmlldmUgZGlzdHJpYnV0aW9ucyBmcm9tIGEgcHJvamVjdCBpbmRleAorKGxpa2UgdGhlIFB5dGhvbiBQYWNrYWdlIEluZGV4KSwgdXNpbmcgaXRzIHNvLWNhbGxlZCBzaW1wbGUgQVBJIChzZWUKK3JlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBhdmFpbGFibGUgYXQgaHR0cDovL3B5cGkucHl0aG9uLm9yZy9zaW1wbGUvKS4KKyIiIgorCitpbXBvcnQgaHR0cC5jbGllbnQKK2ltcG9ydCByZQoraW1wb3J0IHNvY2tldAoraW1wb3J0IHN5cworaW1wb3J0IHVybGxpYi5yZXF1ZXN0CitpbXBvcnQgdXJsbGliLnBhcnNlCitpbXBvcnQgdXJsbGliLmVycm9yCitpbXBvcnQgb3MKKworZnJvbSBmbm1hdGNoIGltcG9ydCB0cmFuc2xhdGUKK2Zyb20gZnVuY3Rvb2xzIGltcG9ydCB3cmFwcworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcubWV0YWRhdGEgaW1wb3J0IE1ldGFkYXRhCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBnZXRfdmVyc2lvbl9wcmVkaWNhdGUKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBfX3ZlcnNpb25fXyBhcyBwYWNrYWdpbmdfdmVyc2lvbgorZnJvbSBwYWNrYWdpbmcucHlwaS5iYXNlIGltcG9ydCBCYXNlQ2xpZW50Citmcm9tIHBhY2thZ2luZy5weXBpLmRpc3QgaW1wb3J0IChSZWxlYXNlc0xpc3QsIEVYVEVOU0lPTlMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRfaW5mb3NfZnJvbV91cmwsIE1ENV9IQVNIKQorZnJvbSBwYWNrYWdpbmcucHlwaS5lcnJvcnMgaW1wb3J0IChQYWNrYWdpbmdQeVBJRXJyb3IsIERvd25sb2FkRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVuYWJsZVRvRG93bmxvYWQsIENhbnRQYXJzZUFyY2hpdmVOYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWxlYXNlTm90Rm91bmQsIFByb2plY3ROb3RGb3VuZCkKK2Zyb20gcGFja2FnaW5nLnB5cGkubWlycm9ycyBpbXBvcnQgZ2V0X21pcnJvcnMKKworX19hbGxfXyA9IFsnQ3Jhd2xlcicsICdERUZBVUxUX1NJTVBMRV9JTkRFWF9VUkwnXQorCisjIC0tIENvbnN0YW50cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorREVGQVVMVF9TSU1QTEVfSU5ERVhfVVJMID0gImh0dHA6Ly9hLnB5cGkucHl0aG9uLm9yZy9zaW1wbGUvIgorREVGQVVMVF9IT1NUUyA9ICgiKiIsKQorU09DS0VUX1RJTUVPVVQgPSAxNQorVVNFUl9BR0VOVCA9ICJQeXRob24tdXJsbGliLyVzLiVzIHBhY2thZ2luZy8lcyIgJSAoCisgICAgc3lzLnZlcnNpb25faW5mb1swXSwgc3lzLnZlcnNpb25faW5mb1sxXSwgcGFja2FnaW5nX3ZlcnNpb24pCisKKyMgLS0gUmVnZXhwcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitFR0dfRlJBR01FTlQgPSByZS5jb21waWxlKHInXmVnZz0oWy1BLVphLXowLTlfLl0rKSQnKQorSFJFRiA9IHJlLmNvbXBpbGUoIiIiaHJlZlxccyo9XFxzKlsnIl0/KFteJyI+IF0rKSIiIiwgcmUuSSkKK1VSTF9TQ0hFTUUgPSByZS5jb21waWxlKCcoWy0rLmEtejAtOV17Mix9KTonLCByZS5JKS5tYXRjaAorCisjIFRoaXMgcGF0dGVybiBtYXRjaGVzIGEgY2hhcmFjdGVyIGVudGl0eSByZWZlcmVuY2UgKGEgZGVjaW1hbCBudW1lcmljCisjIHJlZmVyZW5jZXMsIGEgaGV4YWRlY2ltYWwgbnVtZXJpYyByZWZlcmVuY2UsIG9yIGEgbmFtZWQgcmVmZXJlbmNlKS4KK0VOVElUWV9TVUIgPSByZS5jb21waWxlKHInJigjKFxkK3x4W1xkYS1mQS1GXSspfFtcdy46LV0rKTs/Jykuc3ViCitSRUwgPSByZS5jb21waWxlKCIiIjwoW14+XSpcc3JlbFxzKj1ccypbJyJdPyhbXiciPl0rKVtePl0qKT4iIiIsIHJlLkkpCisKKworZGVmIHNvY2tldF90aW1lb3V0KHRpbWVvdXQ9U09DS0VUX1RJTUVPVVQpOgorICAgICIiIkRlY29yYXRvciB0byBhZGQgYSBzb2NrZXQgdGltZW91dCB3aGVuIHJlcXVlc3RpbmcgcGFnZXMgb24gUHlQSS4KKyAgICAiIiIKKyAgICBkZWYgd3JhcHBlcihmdW5jKToKKyAgICAgICAgQHdyYXBzKGZ1bmMpCisgICAgICAgIGRlZiB3cmFwcGVkKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICAgICBvbGRfdGltZW91dCA9IHNvY2tldC5nZXRkZWZhdWx0dGltZW91dCgpCisgICAgICAgICAgICBpZiBoYXNhdHRyKHNlbGYsICJfdGltZW91dCIpOgorICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBzZWxmLl90aW1lb3V0CisgICAgICAgICAgICBzb2NrZXQuc2V0ZGVmYXVsdHRpbWVvdXQodGltZW91dCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICByZXR1cm4gZnVuYyhzZWxmLCAqYXJncywgKiprd2FyZ3MpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHNvY2tldC5zZXRkZWZhdWx0dGltZW91dChvbGRfdGltZW91dCkKKyAgICAgICAgcmV0dXJuIHdyYXBwZWQKKyAgICByZXR1cm4gd3JhcHBlcgorCisKK2RlZiB3aXRoX21pcnJvcl9zdXBwb3J0KCk6CisgICAgIiIiRGVjb3JhdG9yIHRoYXQgbWFrZXMgdGhlIG1pcnJvcmluZyBzdXBwb3J0IGVhc2llciIiIgorICAgIGRlZiB3cmFwcGVyKGZ1bmMpOgorICAgICAgICBAd3JhcHMoZnVuYykKKyAgICAgICAgZGVmIHdyYXBwZWQoc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICByZXR1cm4gZnVuYyhzZWxmLCAqYXJncywgKiprd2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgRG93bmxvYWRFcnJvcjoKKyAgICAgICAgICAgICAgICAjIGlmIGFuIGVycm9yIG9jY3VycywgdHJ5IHdpdGggdGhlIG5leHQgaW5kZXhfdXJsCisgICAgICAgICAgICAgICAgaWYgc2VsZi5fbWlycm9yc190cmllcyA+PSBzZWxmLl9taXJyb3JzX21heF90cmllczoKKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fc3dpdGNoX3RvX25leHRfbWlycm9yKCkKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgVW5hYmxlVG9Eb3dubG9hZCgiVHJpZWQgYWxsIG1pcnJvcnMiKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX21pcnJvcnNfdHJpZXMgKz0gMQorICAgICAgICAgICAgICAgIHNlbGYuX3Byb2plY3RzLmNsZWFyKCkKKyAgICAgICAgICAgICAgICByZXR1cm4gd3JhcHBlZChzZWxmLCAqYXJncywgKiprd2FyZ3MpCisgICAgICAgIHJldHVybiB3cmFwcGVkCisgICAgcmV0dXJuIHdyYXBwZXIKKworCitjbGFzcyBDcmF3bGVyKEJhc2VDbGllbnQpOgorICAgICIiIlByb3ZpZGVzIHVzZWZ1bCB0b29scyB0byByZXF1ZXN0IHRoZSBQeXRob24gUGFja2FnZSBJbmRleCBzaW1wbGUgQVBJLgorCisgICAgWW91IGNhbiBzcGVjaWZ5IGJvdGggbWlycm9ycyBhbmQgbWlycm9yc191cmwsIGJ1dCBtaXJyb3JzX3VybCB3aWxsIG9ubHkgYmUKKyAgICB1c2VkIGlmIG1pcnJvcnMgaXMgc2V0IHRvIE5vbmUuCisKKyAgICA6cGFyYW0gaW5kZXhfdXJsOiB0aGUgdXJsIG9mIHRoZSBzaW1wbGUgaW5kZXggdG8gc2VhcmNoIG9uLgorICAgIDpwYXJhbSBwcmVmZXJfZmluYWw6IGlmIHRoZSB2ZXJzaW9uIGlzIG5vdCBtZW50aW9uZWQsIGFuZCB0aGUgbGFzdAorICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gaXMgbm90IGEgImZpbmFsIiBvbmUgKGFscGhhLCBiZXRhLCBldGMuKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBwaWNrIHVwIHRoZSBsYXN0IGZpbmFsIHZlcnNpb24uCisgICAgOnBhcmFtIHByZWZlcl9zb3VyY2U6IGlmIHRoZSBkaXN0cmlidXRpb24gdHlwZSBpcyBub3QgbWVudGlvbmVkLCBwaWNrIHVwCisgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBzb3VyY2Ugb25lIGlmIGF2YWlsYWJsZS4KKyAgICA6cGFyYW0gZm9sbG93X2V4dGVybmFsczogdGVsbCBpZiBmb2xsb3dpbmcgZXh0ZXJuYWwgbGlua3MgaXMgbmVlZGVkIG9yCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdC4gRGVmYXVsdCBpcyBGYWxzZS4KKyAgICA6cGFyYW0gaG9zdHM6IGEgbGlzdCBvZiBob3N0cyBhbGxvd2VkIHRvIGJlIHByb2Nlc3NlZCB3aGlsZSB1c2luZworICAgICAgICAgICAgICAgICAgZm9sbG93X2V4dGVybmFscz1UcnVlLiBEZWZhdWx0IGJlaGF2aW9yIGlzIHRvIGZvbGxvdyBhbGwKKyAgICAgICAgICAgICAgICAgIGhvc3RzLgorICAgIDpwYXJhbSBmb2xsb3dfZXh0ZXJuYWxzOiB0ZWxsIGlmIGZvbGxvd2luZyBleHRlcm5hbCBsaW5rcyBpcyBuZWVkZWQgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm90LiBEZWZhdWx0IGlzIEZhbHNlLgorICAgIDpwYXJhbSBtaXJyb3JzX3VybDogdGhlIHVybCB0byBsb29rIG9uIGZvciBETlMgcmVjb3JkcyBnaXZpbmcgbWlycm9yCisgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzZXMuCisgICAgOnBhcmFtIG1pcnJvcnM6IGEgbGlzdCBvZiBtaXJyb3JzIChzZWUgUEVQIDM4MSkuCisgICAgOnBhcmFtIHRpbWVvdXQ6IHRpbWUgaW4gc2Vjb25kcyB0byBjb25zaWRlciBhIHVybCBoYXMgdGltZW91dGVkLgorICAgIDpwYXJhbSBtaXJyb3JzX21heF90cmllcyI6IG51bWJlciBvZiB0aW1lcyB0byB0cnkgcmVxdWVzdGluZyBpbmZvcm1hdGlvbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbiBtaXJyb3JzIGJlZm9yZSBzd2l0Y2hpbmcuCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgaW5kZXhfdXJsPURFRkFVTFRfU0lNUExFX0lOREVYX1VSTCwgcHJlZmVyX2ZpbmFsPUZhbHNlLAorICAgICAgICAgICAgICAgICBwcmVmZXJfc291cmNlPVRydWUsIGhvc3RzPURFRkFVTFRfSE9TVFMsCisgICAgICAgICAgICAgICAgIGZvbGxvd19leHRlcm5hbHM9RmFsc2UsIG1pcnJvcnNfdXJsPU5vbmUsIG1pcnJvcnM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgdGltZW91dD1TT0NLRVRfVElNRU9VVCwgbWlycm9yc19tYXhfdHJpZXM9MCk6CisgICAgICAgIHN1cGVyKENyYXdsZXIsIHNlbGYpLl9faW5pdF9fKHByZWZlcl9maW5hbCwgcHJlZmVyX3NvdXJjZSkKKyAgICAgICAgc2VsZi5mb2xsb3dfZXh0ZXJuYWxzID0gZm9sbG93X2V4dGVybmFscworCisgICAgICAgICMgbWlycm9yaW5nIGF0dHJpYnV0ZXMuCisgICAgICAgIHBhcnNlZCA9IHVybGxpYi5wYXJzZS51cmxwYXJzZShpbmRleF91cmwpCisgICAgICAgIHNlbGYuc2NoZW1lID0gcGFyc2VkWzBdCisgICAgICAgIGlmIHNlbGYuc2NoZW1lID09ICdmaWxlJzoKKyAgICAgICAgICAgIGVuZGVyID0gb3MucGF0aC5zZXAKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGVuZGVyID0gJy8nCisgICAgICAgIGlmIG5vdCBpbmRleF91cmwuZW5kc3dpdGgoZW5kZXIpOgorICAgICAgICAgICAgaW5kZXhfdXJsICs9IGVuZGVyCisgICAgICAgICMgaWYgbm8gbWlycm9ycyBhcmUgZGVmaW5lZCwgdXNlIHRoZSBtZXRob2QgZGVzY3JpYmVkIGluIFBFUCAzODEuCisgICAgICAgIGlmIG1pcnJvcnMgaXMgTm9uZToKKyAgICAgICAgICAgIG1pcnJvcnMgPSBnZXRfbWlycm9ycyhtaXJyb3JzX3VybCkKKyAgICAgICAgc2VsZi5fbWlycm9ycyA9IHNldChtaXJyb3JzKQorICAgICAgICBzZWxmLl9taXJyb3JzX3VzZWQgPSBzZXQoKQorICAgICAgICBzZWxmLmluZGV4X3VybCA9IGluZGV4X3VybAorICAgICAgICBzZWxmLl9taXJyb3JzX21heF90cmllcyA9IG1pcnJvcnNfbWF4X3RyaWVzCisgICAgICAgIHNlbGYuX21pcnJvcnNfdHJpZXMgPSAwCisgICAgICAgIHNlbGYuX3RpbWVvdXQgPSB0aW1lb3V0CisKKyAgICAgICAgIyBjcmVhdGUgYSByZWdleHAgdG8gbWF0Y2ggYWxsIGdpdmVuIGhvc3RzCisgICAgICAgIHNlbGYuX2FsbG93ZWRfaG9zdHMgPSByZS5jb21waWxlKCd8Jy5qb2luKG1hcCh0cmFuc2xhdGUsIGhvc3RzKSkpLm1hdGNoCisKKyAgICAgICAgIyB3ZSBrZWVwIGFuIGluZGV4IG9mIHBhZ2VzIHdlIGhhdmUgcHJvY2Vzc2VkLCBpbiBvcmRlciB0byBhdm9pZAorICAgICAgICAjIHNjYW5uaW5nIHRoZW0gbXVsdHBsZSB0aW1lIChlZy4gaWYgdGhlcmUgaXMgbXVsdGlwbGUgcGFnZXMgcG9pbnRpbmcKKyAgICAgICAgIyBvbiBvbmUpCisgICAgICAgIHNlbGYuX3Byb2Nlc3NlZF91cmxzID0gW10KKyAgICAgICAgc2VsZi5fcHJvamVjdHMgPSB7fQorCisgICAgQHdpdGhfbWlycm9yX3N1cHBvcnQoKQorICAgIGRlZiBzZWFyY2hfcHJvamVjdHMoc2VsZiwgbmFtZT1Ob25lLCAqKmt3YXJncyk6CisgICAgICAgICIiIlNlYXJjaCB0aGUgaW5kZXggZm9yIHByb2plY3RzIGNvbnRhaW5pbmcgdGhlIGdpdmVuIG5hbWUuCisKKyAgICAgICAgUmV0dXJuIGEgbGlzdCBvZiBuYW1lcy4KKyAgICAgICAgIiIiCisgICAgICAgIGlmICcqJyBpbiBuYW1lOgorICAgICAgICAgICAgbmFtZS5yZXBsYWNlKCcqJywgJy4qJykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG5hbWUgPSAiJXMlcyVzIiAlICgnKi4/JywgbmFtZSwgJyouPycpCisgICAgICAgIG5hbWUgPSBuYW1lLnJlcGxhY2UoJyonLCAnW148XSonKSAgIyBhdm9pZCBtYXRjaGluZyBlbmQgdGFnCisgICAgICAgIHBhdHRlcm4gPSAoJzxhW14+XSo+KCVzKTwvYT4nICUgbmFtZSkuZW5jb2RlKCd1dGYtOCcpCisgICAgICAgIHByb2plY3RuYW1lID0gcmUuY29tcGlsZShwYXR0ZXJuLCByZS5JKQorICAgICAgICBtYXRjaGluZ19wcm9qZWN0cyA9IFtdCisKKyAgICAgICAgd2l0aCBzZWxmLl9vcGVuX3VybChzZWxmLmluZGV4X3VybCkgYXMgaW5kZXg6CisgICAgICAgICAgICBpbmRleF9jb250ZW50ID0gaW5kZXgucmVhZCgpCisKKyAgICAgICAgZm9yIG1hdGNoIGluIHByb2plY3RuYW1lLmZpbmRpdGVyKGluZGV4X2NvbnRlbnQpOgorICAgICAgICAgICAgcHJvamVjdF9uYW1lID0gbWF0Y2guZ3JvdXAoMSkuZGVjb2RlKCd1dGYtOCcpCisgICAgICAgICAgICBtYXRjaGluZ19wcm9qZWN0cy5hcHBlbmQoc2VsZi5fZ2V0X3Byb2plY3QocHJvamVjdF9uYW1lKSkKKyAgICAgICAgcmV0dXJuIG1hdGNoaW5nX3Byb2plY3RzCisKKyAgICBkZWYgZ2V0X3JlbGVhc2VzKHNlbGYsIHJlcXVpcmVtZW50cywgcHJlZmVyX2ZpbmFsPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICBmb3JjZV91cGRhdGU9RmFsc2UpOgorICAgICAgICAiIiJTZWFyY2ggZm9yIHJlbGVhc2VzIGFuZCByZXR1cm4gYSBSZWxlYXNlc0xpc3Qgb2JqZWN0IGNvbnRhaW5pbmcKKyAgICAgICAgdGhlIHJlc3VsdHMuCisgICAgICAgICIiIgorICAgICAgICBwcmVkaWNhdGUgPSBnZXRfdmVyc2lvbl9wcmVkaWNhdGUocmVxdWlyZW1lbnRzKQorICAgICAgICBpZiBwcmVkaWNhdGUubmFtZS5sb3dlcigpIGluIHNlbGYuX3Byb2plY3RzIGFuZCBub3QgZm9yY2VfdXBkYXRlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3Byb2plY3RzLmdldChwcmVkaWNhdGUubmFtZS5sb3dlcigpKQorICAgICAgICBwcmVmZXJfZmluYWwgPSBzZWxmLl9nZXRfcHJlZmVyX2ZpbmFsKHByZWZlcl9maW5hbCkKKyAgICAgICAgbG9nZ2VyLmRlYnVnKCdSZWFkaW5nIGluZm8gb24gUHlQSSBhYm91dCAlcycsIHByZWRpY2F0ZS5uYW1lKQorICAgICAgICBzZWxmLl9wcm9jZXNzX2luZGV4X3BhZ2UocHJlZGljYXRlLm5hbWUpCisKKyAgICAgICAgaWYgcHJlZGljYXRlLm5hbWUubG93ZXIoKSBub3QgaW4gc2VsZi5fcHJvamVjdHM6CisgICAgICAgICAgICByYWlzZSBQcm9qZWN0Tm90Rm91bmQKKworICAgICAgICByZWxlYXNlcyA9IHNlbGYuX3Byb2plY3RzLmdldChwcmVkaWNhdGUubmFtZS5sb3dlcigpKQorICAgICAgICByZWxlYXNlcy5zb3J0X3JlbGVhc2VzKHByZWZlcl9maW5hbD1wcmVmZXJfZmluYWwpCisgICAgICAgIHJldHVybiByZWxlYXNlcworCisgICAgZGVmIGdldF9yZWxlYXNlKHNlbGYsIHJlcXVpcmVtZW50cywgcHJlZmVyX2ZpbmFsPU5vbmUpOgorICAgICAgICAiIiJSZXR1cm4gb25seSBvbmUgcmVsZWFzZSB0aGF0IGZ1bGZpbGwgdGhlIGdpdmVuIHJlcXVpcmVtZW50cyIiIgorICAgICAgICBwcmVkaWNhdGUgPSBnZXRfdmVyc2lvbl9wcmVkaWNhdGUocmVxdWlyZW1lbnRzKQorICAgICAgICByZWxlYXNlID0gc2VsZi5nZXRfcmVsZWFzZXMocHJlZGljYXRlLCBwcmVmZXJfZmluYWwpXAorICAgICAgICAgICAgICAgICAgICAgIC5nZXRfbGFzdChwcmVkaWNhdGUpCisgICAgICAgIGlmIG5vdCByZWxlYXNlOgorICAgICAgICAgICAgcmFpc2UgUmVsZWFzZU5vdEZvdW5kKCJObyByZWxlYXNlIG1hdGNoZXMgdGhlIGdpdmVuIGNyaXRlcmlhcyIpCisgICAgICAgIHJldHVybiByZWxlYXNlCisKKyAgICBkZWYgZ2V0X2Rpc3RyaWJ1dGlvbnMoc2VsZiwgcHJvamVjdF9uYW1lLCB2ZXJzaW9uKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBkaXN0cmlidXRpb25zIGZvdW5kIG9uIHRoZSBpbmRleCBmb3IgdGhlIHNwZWNpZmljIGdpdmVuCisgICAgICAgIHJlbGVhc2UiIiIKKyAgICAgICAgIyBhcyB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiBnZXRfcmVsZWFzZSBpcyB0byByZXR1cm4gYSByZWxlYXNlCisgICAgICAgICMgY29udGFpbmluZyB0aGUgZGlzdHJpYnV0aW9ucywganVzdCBhbGlhcyBpdC4KKyAgICAgICAgcmV0dXJuIHNlbGYuZ2V0X3JlbGVhc2UoIiVzICglcykiICUgKHByb2plY3RfbmFtZSwgdmVyc2lvbikpCisKKyAgICBkZWYgZ2V0X21ldGFkYXRhKHNlbGYsIHByb2plY3RfbmFtZSwgdmVyc2lvbik6CisgICAgICAgICIiIlJldHVybiB0aGUgbWV0YWRhdGFzIGZyb20gdGhlIHNpbXBsZSBpbmRleC4KKworICAgICAgICBDdXJyZW50bHksIGRvd25sb2FkIG9uZSBhcmNoaXZlLCBleHRyYWN0IGl0IGFuZCB1c2UgdGhlIFBLRy1JTkZPIGZpbGUuCisgICAgICAgICIiIgorICAgICAgICByZWxlYXNlID0gc2VsZi5nZXRfZGlzdHJpYnV0aW9ucyhwcm9qZWN0X25hbWUsIHZlcnNpb24pCisgICAgICAgIGlmIG5vdCByZWxlYXNlLm1ldGFkYXRhOgorICAgICAgICAgICAgbG9jYXRpb24gPSByZWxlYXNlLmdldF9kaXN0cmlidXRpb24oKS51bnBhY2soKQorICAgICAgICAgICAgcGtnX2luZm8gPSBvcy5wYXRoLmpvaW4obG9jYXRpb24sICdQS0ctSU5GTycpCisgICAgICAgICAgICByZWxlYXNlLm1ldGFkYXRhID0gTWV0YWRhdGEocGtnX2luZm8pCisgICAgICAgIHJldHVybiByZWxlYXNlCisKKyAgICBkZWYgX3N3aXRjaF90b19uZXh0X21pcnJvcihzZWxmKToKKyAgICAgICAgIiIiU3dpdGNoIHRvIHRoZSBuZXh0IG1pcnJvciAoZWcuIHBvaW50IHNlbGYuaW5kZXhfdXJsIHRvIHRoZSBuZXh0CisgICAgICAgIG1pcnJvciB1cmwuCisKKyAgICAgICAgUmFpc2UgYSBLZXlFcnJvciBpZiBhbGwgbWlycm9ycyBoYXZlIGJlZW4gdHJpZWQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9taXJyb3JzX3VzZWQuYWRkKHNlbGYuaW5kZXhfdXJsKQorICAgICAgICBpbmRleF91cmwgPSBzZWxmLl9taXJyb3JzLnBvcCgpCisgICAgICAgICMgWFhYIHVzZSB1cmxsaWIucGFyc2UgZm9yIGEgcmVhbCBjaGVjayBvZiBtaXNzaW5nIHNjaGVtZSBwYXJ0CisgICAgICAgIGlmIG5vdCBpbmRleF91cmwuc3RhcnRzd2l0aCgoImh0dHA6Ly8iLCAiaHR0cHM6Ly8iLCAiZmlsZTovLyIpKToKKyAgICAgICAgICAgIGluZGV4X3VybCA9ICJodHRwOi8vJXMiICUgaW5kZXhfdXJsCisKKyAgICAgICAgaWYgbm90IGluZGV4X3VybC5lbmRzd2l0aCgiL3NpbXBsZSIpOgorICAgICAgICAgICAgaW5kZXhfdXJsID0gIiVzL3NpbXBsZS8iICUgaW5kZXhfdXJsCisKKyAgICAgICAgc2VsZi5pbmRleF91cmwgPSBpbmRleF91cmwKKworICAgIGRlZiBfaXNfYnJvd3NhYmxlKHNlbGYsIHVybCk6CisgICAgICAgICIiIlRlbGwgaWYgdGhlIGdpdmVuIFVSTCBjYW4gYmUgYnJvd3NlZCBvciBub3QuCisKKyAgICAgICAgSXQgdXNlcyB0aGUgZm9sbG93X2V4dGVybmFscyBhbmQgdGhlIGhvc3RzIGxpc3QgdG8gdGVsbCBpZiB0aGUgZ2l2ZW4KKyAgICAgICAgdXJsIGlzIGJyb3dzYWJsZSBvciBub3QuCisgICAgICAgICIiIgorICAgICAgICAjIGlmIF9pbmRleF91cmwgaXMgY29udGFpbmVkIGluIHRoZSBnaXZlbiBVUkwsIHdlIGFyZSBicm93c2luZyB0aGUKKyAgICAgICAgIyBpbmRleCwgYW5kIGl0J3MgYWx3YXlzICJicm93c2FibGUiLgorICAgICAgICAjIGxvY2FsIGZpbGVzIGFyZSBhbHdheXMgY29uc2lkZXJlZCBicm93YWJsZSByZXNvdXJjZXMKKyAgICAgICAgaWYgc2VsZi5pbmRleF91cmwgaW4gdXJsIG9yIHVybGxpYi5wYXJzZS51cmxwYXJzZSh1cmwpWzBdID09ICJmaWxlIjoKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgIGVsaWYgc2VsZi5mb2xsb3dfZXh0ZXJuYWxzOgorICAgICAgICAgICAgaWYgc2VsZi5fYWxsb3dlZF9ob3N0cyh1cmxsaWIucGFyc2UudXJscGFyc2UodXJsKVsxXSk6ICAjIDEgaXMgbmV0bG9jCisgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgZGVmIF9pc19kaXN0cmlidXRpb24oc2VsZiwgbGluayk6CisgICAgICAgICIiIlRlbGwgaWYgdGhlIGdpdmVuIFVSTCBtYXRjaGVzIHRvIGEgZGlzdHJpYnV0aW9uIG5hbWUgb3Igbm90LgorICAgICAgICAiIiIKKyAgICAgICAgI1hYWCBmaW5kIGEgYmV0dGVyIHdheSB0byBjaGVjayB0aGF0IGxpbmtzIGFyZSBkaXN0cmlidXRpb25zCisgICAgICAgICMgVXNpbmcgYSByZWdleHAgPworICAgICAgICBmb3IgZXh0IGluIEVYVEVOU0lPTlM6CisgICAgICAgICAgICBpZiBleHQgaW4gbGluazoKKyAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGRlZiBfcmVnaXN0ZXJfcmVsZWFzZShzZWxmLCByZWxlYXNlPU5vbmUsIHJlbGVhc2VfaW5mbz17fSk6CisgICAgICAgICIiIlJlZ2lzdGVyIGEgbmV3IHJlbGVhc2UuCisKKyAgICAgICAgQm90aCBhIHJlbGVhc2Ugb3IgYSBkaWN0IG9mIHJlbGVhc2VfaW5mbyBjYW4gYmUgcHJvdmlkZWQsIHRoZSBwcmVmZXJyZWQKKyAgICAgICAgd2F5IChlZy4gdGhlIHF1aWNrZXIpIGlzIHRoZSBkaWN0IG9uZS4KKworICAgICAgICBSZXR1cm4gdGhlIGxpc3Qgb2YgZXhpc3RpbmcgcmVsZWFzZXMgZm9yIHRoZSBnaXZlbiBwcm9qZWN0LgorICAgICAgICAiIiIKKyAgICAgICAgIyBDaGVjayBpZiB0aGUgcHJvamVjdCBhbHJlYWR5IGhhcyBhIGxpc3Qgb2YgcmVsZWFzZXMgKHJlZmVyaW5nIHRvCisgICAgICAgICMgdGhlIHByb2plY3QgbmFtZSkuIElmIG5vdCwgY3JlYXRlIGEgbmV3IHJlbGVhc2UgbGlzdC4KKyAgICAgICAgIyBUaGVuLCBhZGQgdGhlIHJlbGVhc2UgdG8gdGhlIGxpc3QuCisgICAgICAgIGlmIHJlbGVhc2U6CisgICAgICAgICAgICBuYW1lID0gcmVsZWFzZS5uYW1lCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBuYW1lID0gcmVsZWFzZV9pbmZvWyduYW1lJ10KKyAgICAgICAgaWYgbmFtZS5sb3dlcigpIG5vdCBpbiBzZWxmLl9wcm9qZWN0czoKKyAgICAgICAgICAgIHNlbGYuX3Byb2plY3RzW25hbWUubG93ZXIoKV0gPSBSZWxlYXNlc0xpc3QobmFtZSwgaW5kZXg9c2VsZi5faW5kZXgpCisKKyAgICAgICAgaWYgcmVsZWFzZToKKyAgICAgICAgICAgIHNlbGYuX3Byb2plY3RzW25hbWUubG93ZXIoKV0uYWRkX3JlbGVhc2UocmVsZWFzZT1yZWxlYXNlKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbmFtZSA9IHJlbGVhc2VfaW5mby5wb3AoJ25hbWUnKQorICAgICAgICAgICAgdmVyc2lvbiA9IHJlbGVhc2VfaW5mby5wb3AoJ3ZlcnNpb24nKQorICAgICAgICAgICAgZGlzdF90eXBlID0gcmVsZWFzZV9pbmZvLnBvcCgnZGlzdF90eXBlJykKKyAgICAgICAgICAgIHNlbGYuX3Byb2plY3RzW25hbWUubG93ZXIoKV0uYWRkX3JlbGVhc2UodmVyc2lvbiwgZGlzdF90eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKnJlbGVhc2VfaW5mbykKKyAgICAgICAgcmV0dXJuIHNlbGYuX3Byb2plY3RzW25hbWUubG93ZXIoKV0KKworICAgIGRlZiBfcHJvY2Vzc191cmwoc2VsZiwgdXJsLCBwcm9qZWN0X25hbWU9Tm9uZSwgZm9sbG93X2xpbmtzPVRydWUpOgorICAgICAgICAiIiJQcm9jZXNzIGFuIHVybCBhbmQgc2VhcmNoIGZvciBkaXN0cmlidXRpb25zIHBhY2thZ2VzLgorCisgICAgICAgIEZvciBlYWNoIFVSTCBmb3VuZCwgaWYgaXQncyBhIGRvd25sb2FkLCBjcmVhdGVzIGEgUHlQSWRpc3RyaWJ1dGlvbgorICAgICAgICBvYmplY3QuIElmIGl0J3MgYSBob21lcGFnZSBhbmQgd2UgY2FuIGZvbGxvdyBsaW5rcywgcHJvY2VzcyBpdCB0b28uCisKKyAgICAgICAgOnBhcmFtIHVybDogdGhlIHVybCB0byBwcm9jZXNzCisgICAgICAgIDpwYXJhbSBwcm9qZWN0X25hbWU6IHRoZSBwcm9qZWN0IG5hbWUgd2UgYXJlIHNlYXJjaGluZyBmb3IuCisgICAgICAgIDpwYXJhbSBmb2xsb3dfbGlua3M6IERvIG5vdCB3YW50IHRvIGZvbGxvdyBsaW5rcyBtb3JlIHRoYW4gZnJvbSBvbmUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV2ZWwuIFRoaXMgcGFyYW1ldGVyIHRlbGxzIGlmIHdlIHdhbnQgdG8gZm9sbG93CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBsaW5rcyB3ZSBmaW5kIChlZy4gcnVuIHJlY3Vyc2l2ZWx5IHRoaXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kIG9uIGl0KQorICAgICAgICAiIiIKKyAgICAgICAgd2l0aCBzZWxmLl9vcGVuX3VybCh1cmwpIGFzIGY6CisgICAgICAgICAgICBiYXNlX3VybCA9IGYudXJsCisgICAgICAgICAgICBpZiB1cmwgbm90IGluIHNlbGYuX3Byb2Nlc3NlZF91cmxzOgorICAgICAgICAgICAgICAgIHNlbGYuX3Byb2Nlc3NlZF91cmxzLmFwcGVuZCh1cmwpCisgICAgICAgICAgICAgICAgbGlua19tYXRjaGVyID0gc2VsZi5fZ2V0X2xpbmtfbWF0Y2hlcih1cmwpCisgICAgICAgICAgICAgICAgZm9yIGxpbmssIGlzX2Rvd25sb2FkIGluIGxpbmtfbWF0Y2hlcihmLnJlYWQoKS5kZWNvZGUoKSwgYmFzZV91cmwpOgorICAgICAgICAgICAgICAgICAgICBpZiBsaW5rIG5vdCBpbiBzZWxmLl9wcm9jZXNzZWRfdXJsczoKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHNlbGYuX2lzX2Rpc3RyaWJ1dGlvbihsaW5rKSBvciBpc19kb3dubG9hZDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9wcm9jZXNzZWRfdXJscy5hcHBlbmQobGluaykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGl0J3MgYSBkaXN0cmlidXRpb24sIHNvIGNyZWF0ZSBhIGRpc3Qgb2JqZWN0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmZvcyA9IGdldF9pbmZvc19mcm9tX3VybChsaW5rLCBwcm9qZWN0X25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzX2V4dGVybmFsPXNlbGYuaW5kZXhfdXJsIG5vdCBpbiB1cmwpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IENhbnRQYXJzZUFyY2hpdmVOYW1lIGFzIGU6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZlcnNpb24gaGFzIG5vdCBiZWVuIHBhcnNlZDogJXMiLCBlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX3JlZ2lzdGVyX3JlbGVhc2UocmVsZWFzZV9pbmZvPWluZm9zKQorICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLl9pc19icm93c2FibGUobGluaykgYW5kIGZvbGxvd19saW5rczoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fcHJvY2Vzc191cmwobGluaywgcHJvamVjdF9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9sbG93X2xpbmtzPUZhbHNlKQorCisgICAgZGVmIF9nZXRfbGlua19tYXRjaGVyKHNlbGYsIHVybCk6CisgICAgICAgICIiIlJldHVybnMgdGhlIHJpZ2h0IGxpbmsgbWF0Y2hlciBmdW5jdGlvbiBvZiB0aGUgZ2l2ZW4gdXJsCisgICAgICAgICIiIgorICAgICAgICBpZiBzZWxmLmluZGV4X3VybCBpbiB1cmw6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fc2ltcGxlX2xpbmtfbWF0Y2hlcgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2RlZmF1bHRfbGlua19tYXRjaGVyCisKKyAgICBkZWYgX2dldF9mdWxsX3VybChzZWxmLCB1cmwsIGJhc2VfdXJsKToKKyAgICAgICAgcmV0dXJuIHVybGxpYi5wYXJzZS51cmxqb2luKGJhc2VfdXJsLCBzZWxmLl9odG1sZGVjb2RlKHVybCkpCisKKyAgICBkZWYgX3NpbXBsZV9saW5rX21hdGNoZXIoc2VsZiwgY29udGVudCwgYmFzZV91cmwpOgorICAgICAgICAiIiJZaWVsZCBhbGwgbGlua3Mgd2l0aCBhIHJlbD0iZG93bmxvYWQiIG9yIHJlbD0iaG9tZXBhZ2UiLgorCisgICAgICAgIFRoaXMgbWF0Y2hlcyB0aGUgc2ltcGxlIGluZGV4IHJlcXVpcmVtZW50cyBmb3IgbWF0Y2hpbmcgbGlua3MuCisgICAgICAgIElmIGZvbGxvd19leHRlcm5hbHMgaXMgc2V0IHRvIEZhbHNlLCBkb250IHllbGQgdGhlIGV4dGVybmFsCisgICAgICAgIHVybHMuCisKKyAgICAgICAgOnBhcmFtIGNvbnRlbnQ6IHRoZSBjb250ZW50IG9mIHRoZSBwYWdlIHdlIHdhbnQgdG8gcGFyc2UKKyAgICAgICAgOnBhcmFtIGJhc2VfdXJsOiB0aGUgdXJsIG9mIHRoaXMgcGFnZS4KKyAgICAgICAgIiIiCisgICAgICAgIGZvciBtYXRjaCBpbiBIUkVGLmZpbmRpdGVyKGNvbnRlbnQpOgorICAgICAgICAgICAgdXJsID0gc2VsZi5fZ2V0X2Z1bGxfdXJsKG1hdGNoLmdyb3VwKDEpLCBiYXNlX3VybCkKKyAgICAgICAgICAgIGlmIE1ENV9IQVNILm1hdGNoKHVybCk6CisgICAgICAgICAgICAgICAgeWllbGQgKHVybCwgVHJ1ZSkKKworICAgICAgICBmb3IgbWF0Y2ggaW4gUkVMLmZpbmRpdGVyKGNvbnRlbnQpOgorICAgICAgICAgICAgIyBzZWFyY2ggZm9yIHJlbCBsaW5rcy4KKyAgICAgICAgICAgIHRhZywgcmVsID0gbWF0Y2guZ3JvdXBzKCkKKyAgICAgICAgICAgIHJlbHMgPSBbcy5zdHJpcCgpIGZvciBzIGluIHJlbC5sb3dlcigpLnNwbGl0KCcsJyldCisgICAgICAgICAgICBpZiAnaG9tZXBhZ2UnIGluIHJlbHMgb3IgJ2Rvd25sb2FkJyBpbiByZWxzOgorICAgICAgICAgICAgICAgIGZvciBtYXRjaCBpbiBIUkVGLmZpbmRpdGVyKHRhZyk6CisgICAgICAgICAgICAgICAgICAgIHVybCA9IHNlbGYuX2dldF9mdWxsX3VybChtYXRjaC5ncm91cCgxKSwgYmFzZV91cmwpCisgICAgICAgICAgICAgICAgICAgIGlmICdkb3dubG9hZCcgaW4gcmVscyBvciBzZWxmLl9pc19icm93c2FibGUodXJsKToKKyAgICAgICAgICAgICAgICAgICAgICAgICMgeWllbGQgYSBsaXN0IG9mICh1cmwsIGlzX2Rvd25sb2FkKQorICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgKHVybCwgJ2Rvd25sb2FkJyBpbiByZWxzKQorCisgICAgZGVmIF9kZWZhdWx0X2xpbmtfbWF0Y2hlcihzZWxmLCBjb250ZW50LCBiYXNlX3VybCk6CisgICAgICAgICIiIllpZWxkIGFsbCBsaW5rcyBmb3VuZCBvbiB0aGUgcGFnZS4KKyAgICAgICAgIiIiCisgICAgICAgIGZvciBtYXRjaCBpbiBIUkVGLmZpbmRpdGVyKGNvbnRlbnQpOgorICAgICAgICAgICAgdXJsID0gc2VsZi5fZ2V0X2Z1bGxfdXJsKG1hdGNoLmdyb3VwKDEpLCBiYXNlX3VybCkKKyAgICAgICAgICAgIGlmIHNlbGYuX2lzX2Jyb3dzYWJsZSh1cmwpOgorICAgICAgICAgICAgICAgIHlpZWxkICh1cmwsIEZhbHNlKQorCisgICAgQHdpdGhfbWlycm9yX3N1cHBvcnQoKQorICAgIGRlZiBfcHJvY2Vzc19pbmRleF9wYWdlKHNlbGYsIG5hbWUpOgorICAgICAgICAiIiJGaW5kIGFuZCBwcm9jZXNzIGEgUHlQSSBwYWdlIGZvciB0aGUgZ2l2ZW4gcHJvamVjdCBuYW1lLgorCisgICAgICAgIDpwYXJhbSBuYW1lOiB0aGUgbmFtZSBvZiB0aGUgcHJvamVjdCB0byBmaW5kIHRoZSBwYWdlCisgICAgICAgICIiIgorICAgICAgICAjIEJyb3dzZSBhbmQgaW5kZXggdGhlIGNvbnRlbnQgb2YgdGhlIGdpdmVuIFB5UEkgcGFnZS4KKyAgICAgICAgaWYgc2VsZi5zY2hlbWUgPT0gJ2ZpbGUnOgorICAgICAgICAgICAgZW5kZXIgPSBvcy5wYXRoLnNlcAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZW5kZXIgPSAnLycKKyAgICAgICAgdXJsID0gc2VsZi5pbmRleF91cmwgKyBuYW1lICsgZW5kZXIKKyAgICAgICAgc2VsZi5fcHJvY2Vzc191cmwodXJsLCBuYW1lKQorCisgICAgQHNvY2tldF90aW1lb3V0KCkKKyAgICBkZWYgX29wZW5fdXJsKHNlbGYsIHVybCk6CisgICAgICAgICIiIk9wZW4gYSB1cmxsaWIyIHJlcXVlc3QsIGhhbmRsaW5nIEhUVFAgYXV0aGVudGljYXRpb24sIGFuZCBsb2NhbAorICAgICAgICBmaWxlcyBzdXBwb3J0LgorCisgICAgICAgICIiIgorICAgICAgICBzY2hlbWUsIG5ldGxvYywgcGF0aCwgcGFyYW1zLCBxdWVyeSwgZnJhZyA9IHVybGxpYi5wYXJzZS51cmxwYXJzZSh1cmwpCisKKyAgICAgICAgIyBhdXRoZW50aWNhdGlvbiBzdHVmZgorICAgICAgICBpZiBzY2hlbWUgaW4gKCdodHRwJywgJ2h0dHBzJyk6CisgICAgICAgICAgICBhdXRoLCBob3N0ID0gdXJsbGliLnBhcnNlLnNwbGl0dXNlcihuZXRsb2MpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBhdXRoID0gTm9uZQorCisgICAgICAgICMgYWRkIGluZGV4Lmh0bWwgYXV0b21hdGljYWxseSBmb3IgZmlsZXN5c3RlbSBwYXRocworICAgICAgICBpZiBzY2hlbWUgPT0gJ2ZpbGUnOgorICAgICAgICAgICAgaWYgdXJsLmVuZHN3aXRoKG9zLnBhdGguc2VwKToKKyAgICAgICAgICAgICAgICB1cmwgKz0gImluZGV4Lmh0bWwiCisKKyAgICAgICAgIyBhZGQgYXV0aG9yaXphdGlvbiBoZWFkZXJzIGlmIGF1dGggaXMgcHJvdmlkZWQKKyAgICAgICAgaWYgYXV0aDoKKyAgICAgICAgICAgIGF1dGggPSAiQmFzaWMgIiArIFwKKyAgICAgICAgICAgICAgICB1cmxsaWIucGFyc2UudW5xdW90ZShhdXRoKS5lbmNvZGUoJ2Jhc2U2NCcpLnN0cmlwKCkKKyAgICAgICAgICAgIG5ld191cmwgPSB1cmxsaWIucGFyc2UudXJsdW5wYXJzZSgoCisgICAgICAgICAgICAgICAgc2NoZW1lLCBob3N0LCBwYXRoLCBwYXJhbXMsIHF1ZXJ5LCBmcmFnKSkKKyAgICAgICAgICAgIHJlcXVlc3QgPSB1cmxsaWIucmVxdWVzdC5SZXF1ZXN0KG5ld191cmwpCisgICAgICAgICAgICByZXF1ZXN0LmFkZF9oZWFkZXIoIkF1dGhvcml6YXRpb24iLCBhdXRoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmVxdWVzdCA9IHVybGxpYi5yZXF1ZXN0LlJlcXVlc3QodXJsKQorICAgICAgICByZXF1ZXN0LmFkZF9oZWFkZXIoJ1VzZXItQWdlbnQnLCBVU0VSX0FHRU5UKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBmcCA9IHVybGxpYi5yZXF1ZXN0LnVybG9wZW4ocmVxdWVzdCkKKyAgICAgICAgZXhjZXB0IChWYWx1ZUVycm9yLCBodHRwLmNsaWVudC5JbnZhbGlkVVJMKSBhcyB2OgorICAgICAgICAgICAgbXNnID0gJyAnLmpvaW4oW3N0cihhcmcpIGZvciBhcmcgaW4gdi5hcmdzXSkKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1B5UElFcnJvcignJXMgJXMnICUgKHVybCwgbXNnKSkKKyAgICAgICAgZXhjZXB0IHVybGxpYi5lcnJvci5IVFRQRXJyb3IgYXMgdjoKKyAgICAgICAgICAgIHJldHVybiB2CisgICAgICAgIGV4Y2VwdCB1cmxsaWIuZXJyb3IuVVJMRXJyb3IgYXMgdjoKKyAgICAgICAgICAgIHJhaXNlIERvd25sb2FkRXJyb3IoIkRvd25sb2FkIGVycm9yIGZvciAlczogJXMiICUgKHVybCwgdi5yZWFzb24pKQorICAgICAgICBleGNlcHQgaHR0cC5jbGllbnQuQmFkU3RhdHVzTGluZSBhcyB2OgorICAgICAgICAgICAgcmFpc2UgRG93bmxvYWRFcnJvcignJXMgcmV0dXJuZWQgYSBiYWQgc3RhdHVzIGxpbmUuICcKKyAgICAgICAgICAgICAgICAnVGhlIHNlcnZlciBtaWdodCBiZSBkb3duLCAlcycgJSAodXJsLCB2LmxpbmUpKQorICAgICAgICBleGNlcHQgaHR0cC5jbGllbnQuSFRUUEV4Y2VwdGlvbiBhcyB2OgorICAgICAgICAgICAgcmFpc2UgRG93bmxvYWRFcnJvcigiRG93bmxvYWQgZXJyb3IgZm9yICVzOiAlcyIgJSAodXJsLCB2KSkKKyAgICAgICAgZXhjZXB0IHNvY2tldC50aW1lb3V0OgorICAgICAgICAgICAgcmFpc2UgRG93bmxvYWRFcnJvcigiVGhlIHNlcnZlciB0aW1lb3V0ZWQiKQorCisgICAgICAgIGlmIGF1dGg6CisgICAgICAgICAgICAjIFB1dCBhdXRoZW50aWNhdGlvbiBpbmZvIGJhY2sgaW50byByZXF1ZXN0IFVSTCBpZiBzYW1lIGhvc3QsCisgICAgICAgICAgICAjIHNvIHRoYXQgbGlua3MgZm91bmQgb24gdGhlIHBhZ2Ugd2lsbCB3b3JrCisgICAgICAgICAgICBzMiwgaDIsIHBhdGgyLCBwYXJhbTIsIHF1ZXJ5MiwgZnJhZzIgPSBcCisgICAgICAgICAgICAgICAgdXJsbGliLnBhcnNlLnVybHBhcnNlKGZwLnVybCkKKyAgICAgICAgICAgIGlmIHMyID09IHNjaGVtZSBhbmQgaDIgPT0gaG9zdDoKKyAgICAgICAgICAgICAgICBmcC51cmwgPSB1cmxsaWIucGFyc2UudXJsdW5wYXJzZSgKKyAgICAgICAgICAgICAgICAgICAgKHMyLCBuZXRsb2MsIHBhdGgyLCBwYXJhbTIsIHF1ZXJ5MiwgZnJhZzIpKQorICAgICAgICByZXR1cm4gZnAKKworICAgIGRlZiBfZGVjb2RlX2VudGl0eShzZWxmLCBtYXRjaCk6CisgICAgICAgIHdoYXQgPSBtYXRjaC5ncm91cCgxKQorICAgICAgICBpZiB3aGF0LnN0YXJ0c3dpdGgoJyN4Jyk6CisgICAgICAgICAgICB3aGF0ID0gaW50KHdoYXRbMjpdLCAxNikKKyAgICAgICAgZWxpZiB3aGF0LnN0YXJ0c3dpdGgoJyMnKToKKyAgICAgICAgICAgIHdoYXQgPSBpbnQod2hhdFsxOl0pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBmcm9tIGh0bWwuZW50aXRpZXMgaW1wb3J0IG5hbWUyY29kZXBvaW50CisgICAgICAgICAgICB3aGF0ID0gbmFtZTJjb2RlcG9pbnQuZ2V0KHdoYXQsIG1hdGNoLmdyb3VwKDApKQorICAgICAgICByZXR1cm4gY2hyKHdoYXQpCisKKyAgICBkZWYgX2h0bWxkZWNvZGUoc2VsZiwgdGV4dCk6CisgICAgICAgICIiIkRlY29kZSBIVE1MIGVudGl0aWVzIGluIHRoZSBnaXZlbiB0ZXh0LiIiIgorICAgICAgICByZXR1cm4gRU5USVRZX1NVQihzZWxmLl9kZWNvZGVfZW50aXR5LCB0ZXh0KQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9weXBpL3dyYXBwZXIucHkgYi9MaWIvcGFja2FnaW5nL3B5cGkvd3JhcHBlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NDVkMDhhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9weXBpL3dyYXBwZXIucHkKQEAgLTAsMCArMSw5OSBAQAorIiIiQ29udmVuaWVudCBjbGllbnQgZm9yIGFsbCBQeVBJIEFQSXMuCisKK1RoaXMgbW9kdWxlIHByb3ZpZGVzIGEgQ2xpZW50V3JhcHBlciBjbGFzcyB3aGljaCB3aWxsIHVzZSB0aGUgInNpbXBsZSIKK29yIFhNTC1SUEMgQVBJIHRvIHJlcXVlc3QgaW5mb3JtYXRpb24gb3IgZmlsZXMgZnJvbSBhbiBpbmRleC4KKyIiIgorCitmcm9tIHBhY2thZ2luZy5weXBpIGltcG9ydCBzaW1wbGUsIHhtbHJwYworCitfV1JBUFBFUl9NQVBQSU5HUyA9IHsnZ2V0X3JlbGVhc2UnOiAnc2ltcGxlJywKKyAgICAgICAgICAgICAgICAgICAgICdnZXRfcmVsZWFzZXMnOiAnc2ltcGxlJywKKyAgICAgICAgICAgICAgICAgICAgICdzZWFyY2hfcHJvamVjdHMnOiAnc2ltcGxlJywKKyAgICAgICAgICAgICAgICAgICAgICdnZXRfbWV0YWRhdGEnOiAneG1scnBjJywKKyAgICAgICAgICAgICAgICAgICAgICdnZXRfZGlzdHJpYnV0aW9ucyc6ICdzaW1wbGUnfQorCitfV1JBUFBFUl9JTkRFWEVTID0geyd4bWxycGMnOiB4bWxycGMuQ2xpZW50LAorICAgICAgICAgICAgICAgICAgICAnc2ltcGxlJzogc2ltcGxlLkNyYXdsZXJ9CisKKworZGVmIHN3aXRjaF9pbmRleF9pZl9mYWlscyhmdW5jLCB3cmFwcGVyKToKKyAgICAiIiJEZWNvcmF0b3IgdGhhdCBzd2l0Y2ggb2YgaW5kZXggKGZvciBpbnN0YW5jZSBmcm9tIHhtbHJwYyB0byBzaW1wbGUpCisgICAgaWYgdGhlIGZpcnN0IG1pcnJvciByZXR1cm4gYW4gZW1wdHkgbGlzdCBvciByYWlzZXMgYW4gZXhjZXB0aW9uLgorICAgICIiIgorICAgIGRlZiBkZWNvcmF0b3IoKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmV0cnkgPSBUcnVlCisgICAgICAgIGV4Y2VwdGlvbiA9IE5vbmUKKyAgICAgICAgbWV0aG9kcyA9IFtmdW5jXQorICAgICAgICBmb3IgZiBpbiB3cmFwcGVyLl9pbmRleGVzLnZhbHVlcygpOgorICAgICAgICAgICAgaWYgZiAhPSBmdW5jLl9fc2VsZl9fIGFuZCBoYXNhdHRyKGYsIGZ1bmMuX19uYW1lX18pOgorICAgICAgICAgICAgICAgIG1ldGhvZHMuYXBwZW5kKGdldGF0dHIoZiwgZnVuYy5fX25hbWVfXykpCisgICAgICAgIGZvciBtZXRob2QgaW4gbWV0aG9kczoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICByZXNwb25zZSA9IG1ldGhvZCgqYXJncywgKiprd2FyZ3MpCisgICAgICAgICAgICAgICAgcmV0cnkgPSBGYWxzZQorICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgICAgIGV4Y2VwdGlvbiA9IGUKKyAgICAgICAgICAgIGlmIG5vdCByZXRyeToKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICBpZiByZXRyeSBhbmQgZXhjZXB0aW9uOgorICAgICAgICAgICAgcmFpc2UgZXhjZXB0aW9uCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UKKyAgICByZXR1cm4gZGVjb3JhdG9yCisKKworY2xhc3MgQ2xpZW50V3JhcHBlcjoKKyAgICAiIiJXcmFwcGVyIGFyb3VuZCBzaW1wbGUgYW5kIHhtbHJwYyBjbGllbnRzLAorCisgICAgQ2hvb3NlIHRoZSBiZXN0IGltcGxlbWVudGF0aW9uIHRvIHVzZSBkZXBlbmRpbmcgdGhlIG5lZWRzLCB1c2luZyB0aGUgZ2l2ZW4KKyAgICBtYXBwaW5ncy4KKyAgICBJZiBvbmUgb2YgdGhlIGluZGV4ZXMgcmV0dXJucyBhbiBlcnJvciwgdHJpZXMgdG8gdXNlIG90aGVycyBpbmRleGVzLgorCisgICAgOnBhcmFtIGluZGV4OiB0ZWxsIHdoaWNoIGluZGV4IHRvIHJlbHkgb24gYnkgZGVmYXVsdC4KKyAgICA6cGFyYW0gaW5kZXhfY2xhc3NlczogYSBkaWN0IG9mIG5hbWU6Y2xhc3MgdG8gdXNlIGFzIGluZGV4ZXMuCisgICAgOnBhcmFtIGluZGV4ZXM6IGEgZGljdCBvZiBuYW1lOmluZGV4IGFscmVhZHkgaW5zdGFudGlhdGVkCisgICAgOnBhcmFtIG1hcHBpbmdzOiB0aGUgbWFwcGluZ3MgdG8gdXNlIGZvciB0aGlzIHdyYXBwZXIKKyAgICAiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkZWZhdWx0X2luZGV4PSdzaW1wbGUnLCBpbmRleF9jbGFzc2VzPV9XUkFQUEVSX0lOREVYRVMsCisgICAgICAgICAgICAgICAgIGluZGV4ZXM9e30sIG1hcHBpbmdzPV9XUkFQUEVSX01BUFBJTkdTKToKKyAgICAgICAgc2VsZi5fcHJvamVjdHMgPSB7fQorICAgICAgICBzZWxmLl9tYXBwaW5ncyA9IG1hcHBpbmdzCisgICAgICAgIHNlbGYuX2luZGV4ZXMgPSBpbmRleGVzCisgICAgICAgIHNlbGYuX2RlZmF1bHRfaW5kZXggPSBkZWZhdWx0X2luZGV4CisKKyAgICAgICAgIyBpbnN0YW50aWF0ZSB0aGUgY2xhc3NlcyBhbmQgc2V0IHRoZWlyIF9wcm9qZWN0IGF0dHJpYnV0ZSB0byB0aGUgb25lCisgICAgICAgICMgb2YgdGhlIHdyYXBwZXIuCisgICAgICAgIGZvciBuYW1lLCBjbHMgaW4gaW5kZXhfY2xhc3Nlcy5pdGVtcygpOgorICAgICAgICAgICAgb2JqID0gc2VsZi5faW5kZXhlcy5zZXRkZWZhdWx0KG5hbWUsIGNscygpKQorICAgICAgICAgICAgb2JqLl9wcm9qZWN0cyA9IHNlbGYuX3Byb2plY3RzCisgICAgICAgICAgICBvYmouX2luZGV4ID0gc2VsZgorCisgICAgZGVmIF9fZ2V0YXR0cl9fKHNlbGYsIG1ldGhvZF9uYW1lKToKKyAgICAgICAgIiIiV2hlbiBhc2tpbmcgZm9yIG1ldGhvZHMgb2YgdGhlIHdyYXBwZXIsIHJldHVybiB0aGUgaW1wbGVtZW50YXRpb24gb2YKKyAgICAgICAgdGhlIHdyYXBwZWQgY2xhc3NlcywgZGVwZW5kaW5nIHRoZSBtYXBwaW5nLgorCisgICAgICAgIERlY29yYXRlIHRoZSBtZXRob2RzIHRvIHN3aXRjaCBvZiBpbXBsZW1lbnRhdGlvbiBpZiBhbiBlcnJvciBvY2N1cnMKKyAgICAgICAgIiIiCisgICAgICAgIHJlYWxfbWV0aG9kID0gTm9uZQorICAgICAgICBpZiBtZXRob2RfbmFtZSBpbiBfV1JBUFBFUl9NQVBQSU5HUzoKKyAgICAgICAgICAgIG9iaiA9IHNlbGYuX2luZGV4ZXNbX1dSQVBQRVJfTUFQUElOR1NbbWV0aG9kX25hbWVdXQorICAgICAgICAgICAgcmVhbF9tZXRob2QgPSBnZXRhdHRyKG9iaiwgbWV0aG9kX25hbWUpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIHRoZSBtZXRob2QgaXMgbm90IGRlZmluZWQgaW4gdGhlIG1hcHBpbmdzLCBzbyB3ZSB0cnkgZmlyc3QgdG8gZ2V0CisgICAgICAgICAgICAjIGl0IHZpYSB0aGUgZGVmYXVsdCBpbmRleCwgYW5kIHJlbHkgb24gb3RoZXJzIGlmIG5lZWRlZC4KKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICByZWFsX21ldGhvZCA9IGdldGF0dHIoc2VsZi5faW5kZXhlc1tzZWxmLl9kZWZhdWx0X2luZGV4XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kX25hbWUpCisgICAgICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CisgICAgICAgICAgICAgICAgb3RoZXJfaW5kZXhlcyA9IFtpIGZvciBpIGluIHNlbGYuX2luZGV4ZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGkgIT0gc2VsZi5fZGVmYXVsdF9pbmRleF0KKyAgICAgICAgICAgICAgICBmb3IgaW5kZXggaW4gb3RoZXJfaW5kZXhlczoKKyAgICAgICAgICAgICAgICAgICAgcmVhbF9tZXRob2QgPSBnZXRhdHRyKHNlbGYuX2luZGV4ZXNbaW5kZXhdLCBtZXRob2RfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vbmUpCisgICAgICAgICAgICAgICAgICAgIGlmIHJlYWxfbWV0aG9kOgorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgaWYgcmVhbF9tZXRob2Q6CisgICAgICAgICAgICByZXR1cm4gc3dpdGNoX2luZGV4X2lmX2ZhaWxzKHJlYWxfbWV0aG9kLCBzZWxmKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgQXR0cmlidXRlRXJyb3IoIk5vIGluZGV4IGhhdmUgYXR0cmlidXRlICclcyciICUgbWV0aG9kX25hbWUpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3B5cGkveG1scnBjLnB5IGIvTGliL3BhY2thZ2luZy9weXBpL3htbHJwYy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZWZkZjZkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9weXBpL3htbHJwYy5weQpAQCAtMCwwICsxLDIwMCBAQAorIiIiU3BpZGVyIHVzaW5nIHRoZSBYTUwtUlBDIFB5UEkgQVBJLgorCitUaGlzIG1vZHVsZSBjb250YWlucyB0aGUgY2xhc3MgQ2xpZW50LCBhIHNwaWRlciB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbmQKK2FuZCByZXRyaWV2ZSBkaXN0cmlidXRpb25zIGZyb20gYSBwcm9qZWN0IGluZGV4IChsaWtlIHRoZSBQeXRob24gUGFja2FnZQorSW5kZXgpLCB1c2luZyBpdHMgWE1MLVJQQyBBUEkgKHNlZSBkb2N1bWVudGF0aW9uIG9mIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIGF0IGh0dHA6Ly93aWtpLnB5dGhvbi5vcmcvbW9pbi9QeVBpWG1sUnBjKS4KKyIiIgorCitpbXBvcnQgeG1scnBjLmNsaWVudAorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IElycmF0aW9uYWxWZXJzaW9uRXJyb3IKK2Zyb20gcGFja2FnaW5nLnZlcnNpb24gaW1wb3J0IGdldF92ZXJzaW9uX3ByZWRpY2F0ZQorZnJvbSBwYWNrYWdpbmcucHlwaS5iYXNlIGltcG9ydCBCYXNlQ2xpZW50Citmcm9tIHBhY2thZ2luZy5weXBpLmVycm9ycyBpbXBvcnQgKFByb2plY3ROb3RGb3VuZCwgSW52YWxpZFNlYXJjaEZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWxlYXNlTm90Rm91bmQpCitmcm9tIHBhY2thZ2luZy5weXBpLmRpc3QgaW1wb3J0IFJlbGVhc2VJbmZvCisKK19fYWxsX18gPSBbJ0NsaWVudCcsICdERUZBVUxUX1hNTFJQQ19JTkRFWF9VUkwnXQorCitERUZBVUxUX1hNTFJQQ19JTkRFWF9VUkwgPSAnaHR0cDovL3B5dGhvbi5vcmcvcHlwaScKKworX1NFQVJDSF9GSUVMRFMgPSBbJ25hbWUnLCAndmVyc2lvbicsICdhdXRob3InLCAnYXV0aG9yX2VtYWlsJywgJ21haW50YWluZXInLAorICAgICAgICAgICAgICAgICAgJ21haW50YWluZXJfZW1haWwnLCAnaG9tZV9wYWdlJywgJ2xpY2Vuc2UnLCAnc3VtbWFyeScsCisgICAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24nLCAna2V5d29yZHMnLCAncGxhdGZvcm0nLCAnZG93bmxvYWRfdXJsJ10KKworCitjbGFzcyBDbGllbnQoQmFzZUNsaWVudCk6CisgICAgIiIiQ2xpZW50IHRvIHF1ZXJ5IGluZGV4ZXMgdXNpbmcgWE1MLVJQQyBtZXRob2QgY2FsbHMuCisKKyAgICBJZiBubyBzZXJ2ZXJfdXJsIGlzIHNwZWNpZmllZCwgdXNlIHRoZSBkZWZhdWx0IFB5UEkgWE1MLVJQQyBVUkwsCisgICAgZGVmaW5lZCBpbiB0aGUgREVGQVVMVF9YTUxSUENfSU5ERVhfVVJMIGNvbnN0YW50OjoKKworICAgICAgICA+Pj4gY2xpZW50ID0gQ2xpZW50KCkKKyAgICAgICAgPj4+IGNsaWVudC5zZXJ2ZXJfdXJsID09IERFRkFVTFRfWE1MUlBDX0lOREVYX1VSTAorICAgICAgICBUcnVlCisKKyAgICAgICAgPj4+IGNsaWVudCA9IENsaWVudCgiaHR0cDovL3NvbWV1cmwvIikKKyAgICAgICAgPj4+IGNsaWVudC5zZXJ2ZXJfdXJsCisgICAgICAgICdodHRwOi8vc29tZXVybC8nCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgc2VydmVyX3VybD1ERUZBVUxUX1hNTFJQQ19JTkRFWF9VUkwsIHByZWZlcl9maW5hbD1GYWxzZSwKKyAgICAgICAgICAgICAgICAgcHJlZmVyX3NvdXJjZT1UcnVlKToKKyAgICAgICAgc3VwZXIoQ2xpZW50LCBzZWxmKS5fX2luaXRfXyhwcmVmZXJfZmluYWwsIHByZWZlcl9zb3VyY2UpCisgICAgICAgIHNlbGYuc2VydmVyX3VybCA9IHNlcnZlcl91cmwKKyAgICAgICAgc2VsZi5fcHJvamVjdHMgPSB7fQorCisgICAgZGVmIGdldF9yZWxlYXNlKHNlbGYsIHJlcXVpcmVtZW50cywgcHJlZmVyX2ZpbmFsPUZhbHNlKToKKyAgICAgICAgIiIiUmV0dXJuIGEgcmVsZWFzZSB3aXRoIGFsbCBjb21wbGV0ZSBtZXRhZGF0YSBhbmQgZGlzdHJpYnV0aW9uCisgICAgICAgIHJlbGF0ZWQgaW5mb3JtYXRpb25zLgorICAgICAgICAiIiIKKyAgICAgICAgcHJlZmVyX2ZpbmFsID0gc2VsZi5fZ2V0X3ByZWZlcl9maW5hbChwcmVmZXJfZmluYWwpCisgICAgICAgIHByZWRpY2F0ZSA9IGdldF92ZXJzaW9uX3ByZWRpY2F0ZShyZXF1aXJlbWVudHMpCisgICAgICAgIHJlbGVhc2VzID0gc2VsZi5nZXRfcmVsZWFzZXMocHJlZGljYXRlLm5hbWUpCisgICAgICAgIHJlbGVhc2UgPSByZWxlYXNlcy5nZXRfbGFzdChwcmVkaWNhdGUsIHByZWZlcl9maW5hbCkKKyAgICAgICAgc2VsZi5nZXRfbWV0YWRhdGEocmVsZWFzZS5uYW1lLCBzdHIocmVsZWFzZS52ZXJzaW9uKSkKKyAgICAgICAgc2VsZi5nZXRfZGlzdHJpYnV0aW9ucyhyZWxlYXNlLm5hbWUsIHN0cihyZWxlYXNlLnZlcnNpb24pKQorICAgICAgICByZXR1cm4gcmVsZWFzZQorCisgICAgZGVmIGdldF9yZWxlYXNlcyhzZWxmLCByZXF1aXJlbWVudHMsIHByZWZlcl9maW5hbD1Ob25lLCBzaG93X2hpZGRlbj1UcnVlLAorICAgICAgICAgICAgICAgICAgICAgZm9yY2VfdXBkYXRlPUZhbHNlKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBsaXN0IG9mIGV4aXN0aW5nIHJlbGVhc2VzIGZvciBhIHNwZWNpZmljIHByb2plY3QuCisKKyAgICAgICAgQ2FjaGUgdGhlIHJlc3VsdHMgZnJvbSBvbmUgY2FsbCB0byBhbm90aGVyLgorCisgICAgICAgIElmIHNob3dfaGlkZGVuIGlzIFRydWUsIHJldHVybiB0aGUgaGlkZGVuIHJlbGVhc2VzIHRvby4KKyAgICAgICAgSWYgZm9yY2VfdXBkYXRlIGlzIFRydWUsIHJlcHJvY2VzcyB0aGUgaW5kZXggdG8gdXBkYXRlIHRoZQorICAgICAgICBpbmZvcm1hdGlvbnMgKGVnLiBtYWtlIGEgbmV3IFhNTC1SUEMgY2FsbCkuCisgICAgICAgIDo6CisKKyAgICAgICAgICAgID4+PiBjbGllbnQgPSBDbGllbnQoKQorICAgICAgICAgICAgPj4+IGNsaWVudC5nZXRfcmVsZWFzZXMoJ0ZvbycpCisgICAgICAgICAgICBbJzEuMScsICcxLjInLCAnMS4zJ10KKworICAgICAgICBJZiBubyBzdWNoIHByb2plY3QgZXhpc3RzLCByYWlzZSBhIFByb2plY3ROb3RGb3VuZCBleGNlcHRpb246OgorCisgICAgICAgICAgICA+Pj4gY2xpZW50LmdldF9wcm9qZWN0X3ZlcnNpb25zKCdVbmV4aXN0aW5nUHJvamVjdCcpCisgICAgICAgICAgICBQcm9qZWN0Tm90Rm91bmQ6IFVuZXhpc3RpbmdQcm9qZWN0CisKKyAgICAgICAgIiIiCisgICAgICAgIGRlZiBnZXRfdmVyc2lvbnMocHJvamVjdF9uYW1lLCBzaG93X2hpZGRlbik6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5wcm94eS5wYWNrYWdlX3JlbGVhc2VzKHByb2plY3RfbmFtZSwgc2hvd19oaWRkZW4pCisKKyAgICAgICAgcHJlZGljYXRlID0gZ2V0X3ZlcnNpb25fcHJlZGljYXRlKHJlcXVpcmVtZW50cykKKyAgICAgICAgcHJlZmVyX2ZpbmFsID0gc2VsZi5fZ2V0X3ByZWZlcl9maW5hbChwcmVmZXJfZmluYWwpCisgICAgICAgIHByb2plY3RfbmFtZSA9IHByZWRpY2F0ZS5uYW1lCisgICAgICAgIGlmIG5vdCBmb3JjZV91cGRhdGUgYW5kIChwcm9qZWN0X25hbWUubG93ZXIoKSBpbiBzZWxmLl9wcm9qZWN0cyk6CisgICAgICAgICAgICBwcm9qZWN0ID0gc2VsZi5fcHJvamVjdHNbcHJvamVjdF9uYW1lLmxvd2VyKCldCisgICAgICAgICAgICBpZiBub3QgcHJvamVjdC5jb250YWluc19oaWRkZW4gYW5kIHNob3dfaGlkZGVuOgorICAgICAgICAgICAgICAgICMgaWYgaGlkZGVuIHJlbGVhc2VzIGFyZSByZXF1ZXN0ZWQsIGFuZCBoYXZlIGFuIGV4aXN0aW5nCisgICAgICAgICAgICAgICAgIyBsaXN0IG9mIHJlbGVhc2VzIHRoYXQgZG9lcyBub3QgY29udGFpbnMgaGlkZGVuIG9uZXMKKyAgICAgICAgICAgICAgICBhbGxfdmVyc2lvbnMgPSBnZXRfdmVyc2lvbnMocHJvamVjdF9uYW1lLCBzaG93X2hpZGRlbikKKyAgICAgICAgICAgICAgICBleGlzdGluZ192ZXJzaW9ucyA9IHByb2plY3QuZ2V0X3ZlcnNpb25zKCkKKyAgICAgICAgICAgICAgICBoaWRkZW5fdmVyc2lvbnMgPSBzZXQoYWxsX3ZlcnNpb25zKSAtIHNldChleGlzdGluZ192ZXJzaW9ucykKKyAgICAgICAgICAgICAgICBmb3IgdmVyc2lvbiBpbiBoaWRkZW5fdmVyc2lvbnM6CisgICAgICAgICAgICAgICAgICAgIHByb2plY3QuYWRkX3JlbGVhc2UocmVsZWFzZT1SZWxlYXNlSW5mbyhwcm9qZWN0X25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24sIGluZGV4PXNlbGYuX2luZGV4KSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHZlcnNpb25zID0gZ2V0X3ZlcnNpb25zKHByb2plY3RfbmFtZSwgc2hvd19oaWRkZW4pCisgICAgICAgICAgICBpZiBub3QgdmVyc2lvbnM6CisgICAgICAgICAgICAgICAgcmFpc2UgUHJvamVjdE5vdEZvdW5kKHByb2plY3RfbmFtZSkKKyAgICAgICAgICAgIHByb2plY3QgPSBzZWxmLl9nZXRfcHJvamVjdChwcm9qZWN0X25hbWUpCisgICAgICAgICAgICBwcm9qZWN0LmFkZF9yZWxlYXNlcyhbUmVsZWFzZUluZm8ocHJvamVjdF9uYW1lLCB2ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4PXNlbGYuX2luZGV4KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciB2ZXJzaW9uIGluIHZlcnNpb25zXSkKKyAgICAgICAgcHJvamVjdCA9IHByb2plY3QuZmlsdGVyKHByZWRpY2F0ZSkKKyAgICAgICAgaWYgbGVuKHByb2plY3QpID09IDA6CisgICAgICAgICAgICByYWlzZSBSZWxlYXNlTm90Rm91bmQoIiVzIiAlIHByZWRpY2F0ZSkKKyAgICAgICAgcHJvamVjdC5zb3J0X3JlbGVhc2VzKHByZWZlcl9maW5hbCkKKyAgICAgICAgcmV0dXJuIHByb2plY3QKKworCisgICAgZGVmIGdldF9kaXN0cmlidXRpb25zKHNlbGYsIHByb2plY3RfbmFtZSwgdmVyc2lvbik6CisgICAgICAgICIiIkdyYWIgaW5mb3JtYXRpb25zIGFib3V0IGRpc3RyaWJ1dGlvbnMgZnJvbSBYTUwtUlBDLgorCisgICAgICAgIFJldHVybiBhIFJlbGVhc2VJbmZvIG9iamVjdCwgd2l0aCBkaXN0cmlidXRpb24tcmVsYXRlZCBpbmZvcm1hdGlvbnMKKyAgICAgICAgZmlsbGVkIGluLgorICAgICAgICAiIiIKKyAgICAgICAgdXJsX2luZm9zID0gc2VsZi5wcm94eS5yZWxlYXNlX3VybHMocHJvamVjdF9uYW1lLCB2ZXJzaW9uKQorICAgICAgICBwcm9qZWN0ID0gc2VsZi5fZ2V0X3Byb2plY3QocHJvamVjdF9uYW1lKQorICAgICAgICBpZiB2ZXJzaW9uIG5vdCBpbiBwcm9qZWN0LmdldF92ZXJzaW9ucygpOgorICAgICAgICAgICAgcHJvamVjdC5hZGRfcmVsZWFzZShyZWxlYXNlPVJlbGVhc2VJbmZvKHByb2plY3RfbmFtZSwgdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleD1zZWxmLl9pbmRleCkpCisgICAgICAgIHJlbGVhc2UgPSBwcm9qZWN0LmdldF9yZWxlYXNlKHZlcnNpb24pCisgICAgICAgIGZvciBpbmZvIGluIHVybF9pbmZvczoKKyAgICAgICAgICAgIHBhY2thZ2V0eXBlID0gaW5mb1sncGFja2FnZXR5cGUnXQorICAgICAgICAgICAgZGlzdF9pbmZvcyA9IHsndXJsJzogaW5mb1sndXJsJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICdoYXNodmFsJzogaW5mb1snbWQ1X2RpZ2VzdCddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnaGFzaG5hbWUnOiAnbWQ1JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lzX2V4dGVybmFsJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICdweXRob25fdmVyc2lvbic6IGluZm9bJ3B5dGhvbl92ZXJzaW9uJ119CisgICAgICAgICAgICByZWxlYXNlLmFkZF9kaXN0cmlidXRpb24ocGFja2FnZXR5cGUsICoqZGlzdF9pbmZvcykKKyAgICAgICAgcmV0dXJuIHJlbGVhc2UKKworICAgIGRlZiBnZXRfbWV0YWRhdGEoc2VsZiwgcHJvamVjdF9uYW1lLCB2ZXJzaW9uKToKKyAgICAgICAgIiIiUmV0cmlldmUgcHJvamVjdCBtZXRhZGF0YS4KKworICAgICAgICBSZXR1cm4gYSBSZWxlYXNlSW5mbyBvYmplY3QsIHdpdGggbWV0YWRhdGEgaW5mb3JtYXRpb25zIGZpbGxlZCBpbi4KKyAgICAgICAgIiIiCisgICAgICAgICMgdG8gYmUgY2FzZS1pbnNlbnNpdGl2ZSwgZ2V0IHRoZSBpbmZvcm1hdGlvbnMgZnJvbSB0aGUgWE1MUlBDIEFQSQorICAgICAgICBwcm9qZWN0cyA9IFtkWyduYW1lJ10gZm9yIGQgaW4KKyAgICAgICAgICAgICAgICAgICAgc2VsZi5wcm94eS5zZWFyY2goeyduYW1lJzogcHJvamVjdF9uYW1lfSkKKyAgICAgICAgICAgICAgICAgICAgaWYgZFsnbmFtZSddLmxvd2VyKCkgPT0gcHJvamVjdF9uYW1lXQorICAgICAgICBpZiBsZW4ocHJvamVjdHMpID4gMDoKKyAgICAgICAgICAgIHByb2plY3RfbmFtZSA9IHByb2plY3RzWzBdCisKKyAgICAgICAgbWV0YWRhdGEgPSBzZWxmLnByb3h5LnJlbGVhc2VfZGF0YShwcm9qZWN0X25hbWUsIHZlcnNpb24pCisgICAgICAgIHByb2plY3QgPSBzZWxmLl9nZXRfcHJvamVjdChwcm9qZWN0X25hbWUpCisgICAgICAgIGlmIHZlcnNpb24gbm90IGluIHByb2plY3QuZ2V0X3ZlcnNpb25zKCk6CisgICAgICAgICAgICBwcm9qZWN0LmFkZF9yZWxlYXNlKHJlbGVhc2U9UmVsZWFzZUluZm8ocHJvamVjdF9uYW1lLCB2ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4PXNlbGYuX2luZGV4KSkKKyAgICAgICAgcmVsZWFzZSA9IHByb2plY3QuZ2V0X3JlbGVhc2UodmVyc2lvbikKKyAgICAgICAgcmVsZWFzZS5zZXRfbWV0YWRhdGEobWV0YWRhdGEpCisgICAgICAgIHJldHVybiByZWxlYXNlCisKKyAgICBkZWYgc2VhcmNoX3Byb2plY3RzKHNlbGYsIG5hbWU9Tm9uZSwgb3BlcmF0b3I9Im9yIiwgKiprd2FyZ3MpOgorICAgICAgICAiIiJGaW5kIHVzaW5nIHRoZSBrZXlzIHByb3ZpZGVkIGluIGt3YXJncy4KKworICAgICAgICBZb3UgY2FuIHNldCBvcGVyYXRvciB0byAiYW5kIiBvciAib3IiLgorICAgICAgICAiIiIKKyAgICAgICAgZm9yIGtleSBpbiBrd2FyZ3M6CisgICAgICAgICAgICBpZiBrZXkgbm90IGluIF9TRUFSQ0hfRklFTERTOgorICAgICAgICAgICAgICAgIHJhaXNlIEludmFsaWRTZWFyY2hGaWVsZChrZXkpCisgICAgICAgIGlmIG5hbWU6CisgICAgICAgICAgICBrd2FyZ3NbIm5hbWUiXSA9IG5hbWUKKyAgICAgICAgcHJvamVjdHMgPSBzZWxmLnByb3h5LnNlYXJjaChrd2FyZ3MsIG9wZXJhdG9yKQorICAgICAgICBmb3IgcCBpbiBwcm9qZWN0czoKKyAgICAgICAgICAgIHByb2plY3QgPSBzZWxmLl9nZXRfcHJvamVjdChwWyduYW1lJ10pCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgcHJvamVjdC5hZGRfcmVsZWFzZShyZWxlYXNlPVJlbGVhc2VJbmZvKHBbJ25hbWUnXSwKKyAgICAgICAgICAgICAgICAgICAgcFsndmVyc2lvbiddLCBtZXRhZGF0YT17J3N1bW1hcnknOiBwWydzdW1tYXJ5J119LAorICAgICAgICAgICAgICAgICAgICBpbmRleD1zZWxmLl9pbmRleCkpCisgICAgICAgICAgICBleGNlcHQgSXJyYXRpb25hbFZlcnNpb25FcnJvciBhcyBlOgorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJJcnJhdGlvbmFsIHZlcnNpb24gZXJyb3IgZm91bmQ6ICVzIiwgZSkKKyAgICAgICAgcmV0dXJuIFtzZWxmLl9wcm9qZWN0c1twWyduYW1lJ10ubG93ZXIoKV0gZm9yIHAgaW4gcHJvamVjdHNdCisKKyAgICBkZWYgZ2V0X2FsbF9wcm9qZWN0cyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBsaXN0IG9mIGFsbCBwcm9qZWN0cyByZWdpc3RlcmVkIGluIHRoZSBwYWNrYWdlIGluZGV4IiIiCisgICAgICAgIHByb2plY3RzID0gc2VsZi5wcm94eS5saXN0X3BhY2thZ2VzKCkKKyAgICAgICAgZm9yIG5hbWUgaW4gcHJvamVjdHM6CisgICAgICAgICAgICBzZWxmLmdldF9yZWxlYXNlcyhuYW1lLCBzaG93X2hpZGRlbj1UcnVlKQorCisgICAgICAgIHJldHVybiBbc2VsZi5fcHJvamVjdHNbbmFtZS5sb3dlcigpXSBmb3IgbmFtZSBpbiBzZXQocHJvamVjdHMpXQorCisgICAgQHByb3BlcnR5CisgICAgZGVmIHByb3h5KHNlbGYpOgorICAgICAgICAiIiJQcm9wZXJ0eSB1c2VkIHRvIHJldHVybiB0aGUgWE1MUlBDIHNlcnZlciBwcm94eS4KKworICAgICAgICBJZiBubyBzZXJ2ZXIgcHJveHkgaXMgZGVmaW5lZCB5ZXQsIGNyZWF0ZXMgYSBuZXcgb25lOjoKKworICAgICAgICAgICAgPj4+IGNsaWVudCA9IENsaWVudCgpCisgICAgICAgICAgICA+Pj4gY2xpZW50LnByb3h5KCkKKyAgICAgICAgICAgIDxTZXJ2ZXJQcm94eSBmb3IgcHl0aG9uLm9yZy9weXBpPgorCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgaGFzYXR0cihzZWxmLCAnX3NlcnZlcl9wcm94eScpOgorICAgICAgICAgICAgc2VsZi5fc2VydmVyX3Byb3h5ID0geG1scnBjLmNsaWVudC5TZXJ2ZXJQcm94eShzZWxmLnNlcnZlcl91cmwpCisKKyAgICAgICAgcmV0dXJuIHNlbGYuX3NlcnZlcl9wcm94eQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9ydW4ucHkgYi9MaWIvcGFja2FnaW5nL3J1bi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMzYwMGE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9ydW4ucHkKQEAgLTAsMCArMSw2NjMgQEAKKyIiIk1haW4gY29tbWFuZCBsaW5lIHBhcnNlci4gIEltcGxlbWVudHMgdGhlIHB5c2V0dXAgc2NyaXB0LiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHN5cworaW1wb3J0IGdldG9wdAoraW1wb3J0IGxvZ2dpbmcKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBfaXNfYXJjaGl2ZV9maWxlLCBnZW5lcmF0ZV9zZXR1cF9weQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZCBpbXBvcnQgZ2V0X2NvbW1hbmRfY2xhc3MsIFNUQU5EQVJEX0NPTU1BTkRTCitmcm9tIHBhY2thZ2luZy5pbnN0YWxsIGltcG9ydCBpbnN0YWxsLCBpbnN0YWxsX2xvY2FsX3Byb2plY3QsIHJlbW92ZQorZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0IGdldF9kaXN0cmlidXRpb24sIGdldF9kaXN0cmlidXRpb25zCitmcm9tIHBhY2thZ2luZy5kZXBncmFwaCBpbXBvcnQgZ2VuZXJhdGVfZ3JhcGgKK2Zyb20gcGFja2FnaW5nLmZhbmN5X2dldG9wdCBpbXBvcnQgRmFuY3lHZXRvcHQKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKFBhY2thZ2luZ0FyZ0Vycm9yLCBQYWNrYWdpbmdFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2luZ01vZHVsZUVycm9yLCBQYWNrYWdpbmdDbGFzc0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ0NvbXBpbGVyRXJyb3IpCisKKworY29tbWFuZF9yZSA9IHJlLmNvbXBpbGUocideW2EtekEtWl0oW2EtekEtWjAtOV9dKikkJykKKworY29tbW9uX3VzYWdlID0gIiIiXAorQWN0aW9uczoKKyUoYWN0aW9ucylzCisKK1RvIGdldCBtb3JlIGhlbHAgb24gYW4gYWN0aW9uLCB1c2U6CisKKyAgICBweXNldHVwIGFjdGlvbiAtLWhlbHAKKyIiIgorCitnbG9iYWxfb3B0aW9ucyA9IFsKKyAgICAjIFRoZSBmb3VydGggZW50cnkgZm9yIHZlcmJvc2UgbWVhbnMgdGhhdCBpdCBjYW4gYmUgcmVwZWF0ZWQuCisgICAgKCd2ZXJib3NlJywgJ3YnLCAicnVuIHZlcmJvc2VseSAoZGVmYXVsdCkiLCBUcnVlKSwKKyAgICAoJ3F1aWV0JywgJ3EnLCAicnVuIHF1aWV0bHkgKHR1cm5zIHZlcmJvc2l0eSBvZmYpIiksCisgICAgKCdkcnktcnVuJywgJ24nLCAiZG9uJ3QgYWN0dWFsbHkgZG8gYW55dGhpbmciKSwKKyAgICAoJ2hlbHAnLCAnaCcsICJzaG93IGRldGFpbGVkIGhlbHAgbWVzc2FnZSIpLAorICAgICgnbm8tdXNlci1jZmcnLCBOb25lLCAnaWdub3JlIHB5ZGlzdHV0aWxzLmNmZyBpbiB5b3VyIGhvbWUgZGlyZWN0b3J5JyksCisgICAgKCd2ZXJzaW9uJywgTm9uZSwgJ0Rpc3BsYXkgdGhlIHZlcnNpb24nKSwKK10KKworbmVnYXRpdmVfb3B0ID0geydxdWlldCc6ICd2ZXJib3NlJ30KKworZGlzcGxheV9vcHRpb25zID0gWworICAgICgnaGVscC1jb21tYW5kcycsIE5vbmUsICJsaXN0IGFsbCBhdmFpbGFibGUgY29tbWFuZHMiKSwKK10KKworZGlzcGxheV9vcHRpb25fbmFtZXMgPSBbeFswXS5yZXBsYWNlKCctJywgJ18nKSBmb3IgeCBpbiBkaXNwbGF5X29wdGlvbnNdCisKKworZGVmIF9wYXJzZV9hcmdzKGFyZ3MsIG9wdGlvbnMsIGxvbmdfb3B0aW9ucyk6CisgICAgIiIiVHJhbnNmb3JtIHN5cy5hcmd2IGlucHV0IGludG8gYSBkaWN0LgorCisgICAgOnBhcmFtIGFyZ3M6IHRoZSBhcmdzIHRvIHBhcnNlIChpLmUgc3lzLmFyZ3YpCisgICAgOnBhcmFtIG9wdGlvbnM6IHRoZSBsaXN0IG9mIG9wdGlvbnMgdG8gcGFzcyB0byBnZXRvcHQKKyAgICA6cGFyYW0gbG9uZ19vcHRpb25zOiB0aGUgbGlzdCBvZiBzdHJpbmcgd2l0aCB0aGUgbmFtZXMgb2YgdGhlIGxvbmcgb3B0aW9ucworICAgICAgICAgICAgICAgICAgICAgICAgIHRvIGJlIHBhc3NlZCB0byBnZXRvcHQuCisKKyAgICBUaGUgZnVuY3Rpb24gcmV0dXJucyBhIGRpY3Qgd2l0aCBvcHRpb25zL2xvbmdfb3B0aW9ucyBhcyBrZXlzIGFuZCBtYXRjaGluZworICAgIHZhbHVlcyBhcyB2YWx1ZXMuCisgICAgIiIiCisgICAgb3B0bGlzdCwgYXJncyA9IGdldG9wdC5nbnVfZ2V0b3B0KGFyZ3MsIG9wdGlvbnMsIGxvbmdfb3B0aW9ucykKKyAgICBvcHRkaWN0ID0ge30KKyAgICBvcHRkaWN0WydhcmdzJ10gPSBhcmdzCisgICAgZm9yIGssIHYgaW4gb3B0bGlzdDoKKyAgICAgICAgayA9IGsubHN0cmlwKCctJykKKyAgICAgICAgaWYgayBub3QgaW4gb3B0ZGljdDoKKyAgICAgICAgICAgIG9wdGRpY3Rba10gPSBbXQorICAgICAgICAgICAgaWYgdjoKKyAgICAgICAgICAgICAgICBvcHRkaWN0W2tdLmFwcGVuZCh2KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgb3B0ZGljdFtrXS5hcHBlbmQodikKKyAgICByZXR1cm4gb3B0ZGljdAorCisKK2NsYXNzIGFjdGlvbl9oZWxwOgorICAgICIiIlByaW50cyBhIGhlbHAgbWVzc2FnZSB3aGVuIHRoZSBzdGFuZGFyZCBoZWxwIGZsYWdzOiAtaCBhbmQgLS1oZWxwCisgICAgYXJlIHVzZWQgb24gdGhlIGNvbW1hbmRsaW5lLgorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGhlbHBfbXNnKToKKyAgICAgICAgc2VsZi5oZWxwX21zZyA9IGhlbHBfbXNnCisKKyAgICBkZWYgX19jYWxsX18oc2VsZiwgZik6CisgICAgICAgIGRlZiB3cmFwcGVyKCphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICAgICBmX2FyZ3MgPSBhcmdzWzFdCisgICAgICAgICAgICBpZiAnLS1oZWxwJyBpbiBmX2FyZ3Mgb3IgJy1oJyBpbiBmX2FyZ3M6CisgICAgICAgICAgICAgICAgcHJpbnQoc2VsZi5oZWxwX21zZykKKyAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgICAgIHJldHVybiBmKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgcmV0dXJuIHdyYXBwZXIKKworCitAYWN0aW9uX2hlbHAoIiIiXAorVXNhZ2U6IHB5c2V0dXAgY3JlYXRlCisgICBvcjogcHlzZXR1cCBjcmVhdGUgLS1oZWxwCisKK0NyZWF0ZSBhIG5ldyBQeXRob24gcHJvamVjdC4KKyIiIikKK2RlZiBfY3JlYXRlKGRpc3RwYXRjaGVyLCBhcmdzLCAqKmt3KToKKyAgICBmcm9tIHBhY2thZ2luZy5jcmVhdGUgaW1wb3J0IG1haW4KKyAgICByZXR1cm4gbWFpbigpCisKKworQGFjdGlvbl9oZWxwKCIiIlwKK1VzYWdlOiBweXNldHVwIGdlbmVyYXRlLXNldHVwCisgICBvcjogcHlzZXR1cCBnZW5lcmF0ZS1zZXR1cCAtLWhlbHAKKworR2VuZXJhdGUgYSBzZXR1cC5weSBzY3JpcHQgZm9yIGJhY2t3YXJkLWNvbXBhdGliaWxpdHkgcHVycG9zZXMuCisiIiIpCitkZWYgX2dlbmVyYXRlKGRpc3RwYXRjaGVyLCBhcmdzLCAqKmt3KToKKyAgICBnZW5lcmF0ZV9zZXR1cF9weSgpCisgICAgbG9nZ2VyLmluZm8oJ1RoZSBzZXR1cC5weSB3YXMgZ2VuZXJhdGVkJykKKworCitAYWN0aW9uX2hlbHAoIiIiXAorVXNhZ2U6IHB5c2V0dXAgZ3JhcGggZGlzdAorICAgb3I6IHB5c2V0dXAgZ3JhcGggLS1oZWxwCisKK1ByaW50IGRlcGVuZGVuY3kgZ3JhcGggZm9yIHRoZSBkaXN0cmlidXRpb24uCisKK3Bvc2l0aW9uYWwgYXJndW1lbnRzOgorICAgZGlzdCAgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbiBuYW1lCisiIiIpCitkZWYgX2dyYXBoKGRpc3BhdGNoZXIsIGFyZ3MsICoqa3cpOgorICAgIG5hbWUgPSBhcmdzWzFdCisgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24obmFtZSwgdXNlX2VnZ19pbmZvPVRydWUpCisgICAgaWYgZGlzdCBpcyBOb25lOgorICAgICAgICBsb2dnZXIud2FybmluZygnRGlzdHJpYnV0aW9uIG5vdCBmb3VuZC4nKQorICAgICAgICByZXR1cm4gMQorICAgIGVsc2U6CisgICAgICAgIGRpc3RzID0gZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPVRydWUpCisgICAgICAgIGdyYXBoID0gZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisgICAgICAgIHByaW50KGdyYXBoLnJlcHJfbm9kZShkaXN0KSkKKworCitAYWN0aW9uX2hlbHAoIiIiXAorVXNhZ2U6IHB5c2V0dXAgaW5zdGFsbCBbZGlzdF0KKyAgIG9yOiBweXNldHVwIGluc3RhbGwgW2FyY2hpdmVdCisgICBvcjogcHlzZXR1cCBpbnN0YWxsIFtzcmNfZGlyXQorICAgb3I6IHB5c2V0dXAgaW5zdGFsbCAtLWhlbHAKKworSW5zdGFsbCBhIFB5dGhvbiBkaXN0cmlidXRpb24gZnJvbSB0aGUgaW5kZXhlcywgc291cmNlIGRpcmVjdG9yeSwgb3Igc2Rpc3QuCisKK3Bvc2l0aW9uYWwgYXJndW1lbnRzOgorICAgYXJjaGl2ZSAgcGF0aCB0byBzb3VyY2UgZGlzdHJpYnV0aW9uICh6aXAsIHRhci5neikKKyAgIGRpc3QgICAgIGRpc3RyaWJ1dGlvbiBuYW1lIHRvIGluc3RhbGwgZnJvbSB0aGUgaW5kZXhlcworICAgc2NyX2RpciAgcGF0aCB0byBzb3VyY2UgZGlyZWN0b3J5CisiIiIpCitkZWYgX2luc3RhbGwoZGlzcGF0Y2hlciwgYXJncywgKiprdyk6CisgICAgIyBmaXJzdCBjaGVjayBpZiB3ZSBhcmUgaW4gYSBzb3VyY2UgZGlyZWN0b3J5CisgICAgaWYgbGVuKGFyZ3MpIDwgMjoKKyAgICAgICAgIyBhcmUgd2UgaW5zaWRlIGEgcHJvamVjdCBkaXI/CisgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKCdzZXR1cC5jZmcnKSBvciBvcy5wYXRoLmlzZmlsZSgnc2V0dXAucHknKToKKyAgICAgICAgICAgIGFyZ3MuaW5zZXJ0KDEsIG9zLmdldGN3ZCgpKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoJ05vIHByb2plY3QgdG8gaW5zdGFsbC4nKQorICAgICAgICAgICAgcmV0dXJuIDEKKworICAgIHRhcmdldCA9IGFyZ3NbMV0KKyAgICAjIGluc3RhbGxpbmcgZnJvbSBhIHNvdXJjZSBkaXIgb3IgYXJjaGl2ZSBmaWxlPworICAgIGlmIG9zLnBhdGguaXNkaXIodGFyZ2V0KSBvciBfaXNfYXJjaGl2ZV9maWxlKHRhcmdldCk6CisgICAgICAgIHJldHVybiBub3QgaW5zdGFsbF9sb2NhbF9wcm9qZWN0KHRhcmdldCkKKyAgICBlbHNlOgorICAgICAgICAjIGRvd25sb2FkIGZyb20gUHlQSQorICAgICAgICByZXR1cm4gbm90IGluc3RhbGwodGFyZ2V0KQorCisKK0BhY3Rpb25faGVscCgiIiJcCitVc2FnZTogcHlzZXR1cCBtZXRhZGF0YSBbZGlzdF0KKyAgIG9yOiBweXNldHVwIG1ldGFkYXRhIFtkaXN0XSBbLWYgZmllbGQgLi4uXQorICAgb3I6IHB5c2V0dXAgbWV0YWRhdGEgLS1oZWxwCisKK1ByaW50IG1ldGFkYXRhIGZvciB0aGUgZGlzdHJpYnV0aW9uLgorCitwb3NpdGlvbmFsIGFyZ3VtZW50czoKKyAgIGRpc3QgIGluc3RhbGxlZCBkaXN0cmlidXRpb24gbmFtZQorCitvcHRpb25hbCBhcmd1bWVudHM6CisgICAtZiAgICAgbWV0YWRhdGEgZmllbGQgdG8gcHJpbnQ7IG9taXQgdG8gZ2V0IGFsbCBmaWVsZHMKKyIiIikKK2RlZiBfbWV0YWRhdGEoZGlzcGF0Y2hlciwgYXJncywgKiprdyk6CisgICAgb3B0cyA9IF9wYXJzZV9hcmdzKGFyZ3NbMTpdLCAnZjonLCBbXSkKKyAgICBpZiBvcHRzWydhcmdzJ106CisgICAgICAgIG5hbWUgPSBvcHRzWydhcmdzJ11bMF0KKyAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24obmFtZSwgdXNlX2VnZ19pbmZvPVRydWUpCisgICAgICAgIGlmIGRpc3QgaXMgTm9uZToKKyAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCclciBub3QgaW5zdGFsbGVkJywgbmFtZSkKKyAgICAgICAgICAgIHJldHVybiAxCisgICAgZWxpZiBvcy5wYXRoLmlzZmlsZSgnc2V0dXAuY2ZnJyk6CisgICAgICAgIGxvZ2dlci5pbmZvKCdzZWFyY2hpbmcgbG9jYWwgZGlyIGZvciBtZXRhZGF0YScpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKSAgIyBYWFggdXNlIGNvbmZpZyBtb2R1bGUKKyAgICAgICAgZGlzdC5wYXJzZV9jb25maWdfZmlsZXMoKQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dlci53YXJuaW5nKCdubyBhcmd1bWVudCBnaXZlbiBhbmQgbm8gbG9jYWwgc2V0dXAuY2ZnIGZvdW5kJykKKyAgICAgICAgcmV0dXJuIDEKKworICAgIG1ldGFkYXRhID0gZGlzdC5tZXRhZGF0YQorCisgICAgaWYgJ2YnIGluIG9wdHM6CisgICAgICAgIGtleXMgPSAoayBmb3IgayBpbiBvcHRzWydmJ10gaWYgayBpbiBtZXRhZGF0YSkKKyAgICBlbHNlOgorICAgICAgICBrZXlzID0gbWV0YWRhdGEua2V5cygpCisKKyAgICBmb3Iga2V5IGluIGtleXM6CisgICAgICAgIGlmIGtleSBpbiBtZXRhZGF0YToKKyAgICAgICAgICAgIHByaW50KG1ldGFkYXRhLl9jb252ZXJ0X25hbWUoa2V5KSArICc6JykKKyAgICAgICAgICAgIHZhbHVlID0gbWV0YWRhdGFba2V5XQorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWx1ZSwgbGlzdCk6CisgICAgICAgICAgICAgICAgZm9yIHYgaW4gdmFsdWU6CisgICAgICAgICAgICAgICAgICAgIHByaW50KCcgICAnLCB2KQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBwcmludCgnICAgJywgdmFsdWUucmVwbGFjZSgnXG4nLCAnXG4gICAgJykpCisKKworQGFjdGlvbl9oZWxwKCIiIlwKK1VzYWdlOiBweXNldHVwIHJlbW92ZSBkaXN0IFsteV0KKyAgIG9yOiBweXNldHVwIHJlbW92ZSAtLWhlbHAKKworVW5pbnN0YWxsIGEgUHl0aG9uIGRpc3RyaWJ1dGlvbi4KKworcG9zaXRpb25hbCBhcmd1bWVudHM6CisgICBkaXN0ICBpbnN0YWxsZWQgZGlzdHJpYnV0aW9uIG5hbWUKKworb3B0aW9uYWwgYXJndW1lbnRzOgorICAgLXkgIGF1dG8gY29uZmlybSBkaXN0cmlidXRpb24gcmVtb3ZhbAorIiIiKQorZGVmIF9yZW1vdmUoZGlzdHBhdGNoZXIsIGFyZ3MsICoqa3cpOgorICAgIG9wdHMgPSBfcGFyc2VfYXJncyhhcmdzWzE6XSwgJ3knLCBbXSkKKyAgICBpZiAneScgaW4gb3B0czoKKyAgICAgICAgYXV0b19jb25maXJtID0gVHJ1ZQorICAgIGVsc2U6CisgICAgICAgIGF1dG9fY29uZmlybSA9IEZhbHNlCisKKyAgICByZXRjb2RlID0gMAorICAgIGZvciBkaXN0IGluIHNldChvcHRzWydhcmdzJ10pOgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZW1vdmUoZGlzdCwgYXV0b19jb25maXJtPWF1dG9fY29uZmlybSkKKyAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0Vycm9yOgorICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoJyVyIG5vdCBpbnN0YWxsZWQnLCBkaXN0KQorICAgICAgICAgICAgcmV0Y29kZSA9IDEKKworICAgIHJldHVybiByZXRjb2RlCisKKworQGFjdGlvbl9oZWxwKCIiIlwKK1VzYWdlOiBweXNldHVwIHJ1biBbZ2xvYmFsX29wdHNdIGNtZDEgW2NtZDFfb3B0c10gW2NtZDIgW2NtZDJfb3B0c10gLi4uXQorICAgb3I6IHB5c2V0dXAgcnVuIC0taGVscAorICAgb3I6IHB5c2V0dXAgcnVuIC0tbGlzdC1jb21tYW5kcworICAgb3I6IHB5c2V0dXAgcnVuIGNtZCAtLWhlbHAKKyIiIikKK2RlZiBfcnVuKGRpc3BhdGNoZXIsIGFyZ3MsICoqa3cpOgorICAgIHBhcnNlciA9IGRpc3BhdGNoZXIucGFyc2VyCisgICAgYXJncyA9IGFyZ3NbMTpdCisKKyAgICBjb21tYW5kcyA9IFNUQU5EQVJEX0NPTU1BTkRTICAjIEZJWE1FIGRpc3BsYXkgZXh0cmEgY29tbWFuZHMKKworICAgIGlmIGFyZ3MgPT0gWyctLWxpc3QtY29tbWFuZHMnXToKKyAgICAgICAgcHJpbnQoJ0xpc3Qgb2YgYXZhaWxhYmxlIGNvbW1hbmRzOicpCisgICAgICAgIGZvciBjbWQgaW4gY29tbWFuZHM6CisgICAgICAgICAgICBjbHMgPSBkaXNwYXRjaGVyLmNtZGNsYXNzLmdldChjbWQpIG9yIGdldF9jb21tYW5kX2NsYXNzKGNtZCkKKyAgICAgICAgICAgIGRlc2MgPSBnZXRhdHRyKGNscywgJ2Rlc2NyaXB0aW9uJywgJyhubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpJykKKyAgICAgICAgICAgIHByaW50KCcgICVzOiAlcycgJSAoY21kLCBkZXNjKSkKKyAgICAgICAgcmV0dXJuCisKKyAgICB3aGlsZSBhcmdzOgorICAgICAgICBhcmdzID0gZGlzcGF0Y2hlci5fcGFyc2VfY29tbWFuZF9vcHRzKHBhcnNlciwgYXJncykKKyAgICAgICAgaWYgYXJncyBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAjIGNyZWF0ZSB0aGUgRGlzdHJpYnV0aW9uIGNsYXNzCisgICAgIyBuZWVkIHRvIGZlZWQgc2V0dXAuY2ZnIGhlcmUgIQorICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorCisgICAgIyBGaW5kIGFuZCBwYXJzZSB0aGUgY29uZmlnIGZpbGUocyk6IHRoZXkgd2lsbCBvdmVycmlkZSBvcHRpb25zIGZyb20KKyAgICAjIHRoZSBzZXR1cCBzY3JpcHQsIGJ1dCBiZSBvdmVycmlkZGVuIGJ5IHRoZSBjb21tYW5kIGxpbmUuCisKKyAgICAjIFhYWCBzdGlsbCBuZWVkIHRvIGJlIGV4dHJhY3RlZCBmcm9tIERpc3RyaWJ1dGlvbgorICAgIGRpc3QucGFyc2VfY29uZmlnX2ZpbGVzKCkKKworICAgIGZvciBjbWQgaW4gZGlzcGF0Y2hlci5jb21tYW5kczoKKyAgICAgICAgIyBGSVhNRSBuZWVkIHRvIGNhdGNoIE1ldGFkYXRhTWlzc2luZ0Vycm9yIGhlcmUgKGZyb20gdGhlIGNoZWNrIGNvbW1hbmQKKyAgICAgICAgIyBlLmcuKS0tb3IgY2F0Y2ggYW55IGV4Y2VwdGlvbiwgcHJpbnQgYW4gZXJyb3IgbWVzc2FnZSBhbmQgZXhpdCB3aXRoIDEKKyAgICAgICAgZGlzdC5ydW5fY29tbWFuZChjbWQsIGRpc3BhdGNoZXIuY29tbWFuZF9vcHRpb25zW2NtZF0pCisKKyAgICByZXR1cm4gMAorCisKK0BhY3Rpb25faGVscCgiIiJcCitVc2FnZTogcHlzZXR1cCBsaXN0IFtkaXN0IC4uLl0KKyAgIG9yOiBweXNldHVwIGxpc3QgLS1oZWxwCisKK1ByaW50IG5hbWUsIHZlcnNpb24gYW5kIGxvY2F0aW9uIGZvciB0aGUgbWF0Y2hpbmcgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbnMuCisKK3Bvc2l0aW9uYWwgYXJndW1lbnRzOgorICAgZGlzdCAgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbiBuYW1lOyBvbWl0IHRvIGdldCBhbGwgZGlzdHJpYnV0aW9ucworIiIiKQorZGVmIF9saXN0KGRpc3BhdGNoZXIsIGFyZ3MsICoqa3cpOgorICAgIG9wdHMgPSBfcGFyc2VfYXJncyhhcmdzWzE6XSwgJycsIFtdKQorICAgIGRpc3RzID0gZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPVRydWUpCisgICAgaWYgb3B0c1snYXJncyddOgorICAgICAgICByZXN1bHRzID0gKGQgZm9yIGQgaW4gZGlzdHMgaWYgZC5uYW1lLmxvd2VyKCkgaW4gb3B0c1snYXJncyddKQorICAgICAgICBsaXN0YWxsID0gRmFsc2UKKyAgICBlbHNlOgorICAgICAgICByZXN1bHRzID0gZGlzdHMKKyAgICAgICAgbGlzdGFsbCA9IFRydWUKKworICAgIG51bWJlciA9IDAKKyAgICBmb3IgZGlzdCBpbiByZXN1bHRzOgorICAgICAgICBwcmludCgnJXIgJXMgKGZyb20gJXIpJyAlIChkaXN0Lm5hbWUsIGRpc3QudmVyc2lvbiwgZGlzdC5wYXRoKSkKKyAgICAgICAgbnVtYmVyICs9IDEKKworICAgIGlmIG51bWJlciA9PSAwOgorICAgICAgICBpZiBsaXN0YWxsOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ05vdGhpbmcgc2VlbXMgdG8gYmUgaW5zdGFsbGVkLicpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIud2FybmluZygnTm8gbWF0Y2hpbmcgZGlzdHJpYnV0aW9uIGZvdW5kLicpCisgICAgICAgICAgICByZXR1cm4gMQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dlci5pbmZvKCdGb3VuZCAlZCBwcm9qZWN0cyBpbnN0YWxsZWQuJywgbnVtYmVyKQorCisKK0BhY3Rpb25faGVscCgiIiJcCitVc2FnZTogcHlzZXR1cCBzZWFyY2ggW3Byb2plY3RdIFstLXNpbXBsZSBbdXJsXV0gWy0teG1scnBjIFt1cmxdIFstLWZpZWxkbmFtZSB2YWx1ZSAuLi5dIC0tb3BlcmF0b3Igb3J8YW5kXQorICAgb3I6IHB5c2V0dXAgc2VhcmNoIC0taGVscAorCitTZWFyY2ggdGhlIGluZGV4ZXMgZm9yIHRoZSBtYXRjaGluZyBwcm9qZWN0cy4KKworcG9zaXRpb25hbCBhcmd1bWVudHM6CisgICAgcHJvamVjdCAgICAgdGhlIHByb2plY3QgcGF0dGVybiB0byBzZWFyY2ggZm9yCisKK29wdGlvbmFsIGFyZ3VtZW50czoKKyAgICAtLXhtbHJwYyBbdXJsXSAgICAgIHdoZXRoZXIgdG8gdXNlIHRoZSB4bWxycGMgaW5kZXggb3Igbm90LiBJZiBhbiB1cmwgaXMKKyAgICAgICAgICAgICAgICAgICAgICAgIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkIHJhdGhlciB0aGFuIHRoZSBkZWZhdWx0IG9uZS4KKworICAgIC0tc2ltcGxlIFt1cmxdICAgICAgd2hldGhlciB0byB1c2UgdGhlIHNpbXBsZSBpbmRleCBvciBub3QuIElmIGFuIHVybCBpcworICAgICAgICAgICAgICAgICAgICAgICAgc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQgcmF0aGVyIHRoYW4gdGhlIGRlZmF1bHQgb25lLgorCisgICAgLS1maWVsZG5hbWUgdmFsdWUgICBNYWtlIGEgc2VhcmNoIG9uIHRoaXMgZmllbGQuIENhbiBvbmx5IGJlIHVzZWQgaWYKKyAgICAgICAgICAgICAgICAgICAgICAgIC0teG1scnBjIGhhcyBiZWVuIHNlbGVjdGVkIG9yIGlzIHRoZSBkZWZhdWx0IGluZGV4LgorCisgICAgLS1vcGVyYXRvciBvcnxhbmQgICBEZWZpbmVzIHdoYXQgaXMgdGhlIG9wZXJhdG9yIHRvIHVzZSB3aGVuIGRvaW5nIHhtbHJwYworICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNocyB3aXRoIG11bHRpcGxlIGZpZWxkbmFtZXMuIENhbiBvbmx5IGJlIHVzZWQgaWYKKyAgICAgICAgICAgICAgICAgICAgICAgIC0teG1scnBjIGhhcyBiZWVuIHNlbGVjdGVkIG9yIGlzIHRoZSBkZWZhdWx0IGluZGV4LgorIiIiKQorZGVmIF9zZWFyY2goZGlzcGF0Y2hlciwgYXJncywgKiprdyk6CisgICAgIiIiVGhlIHNlYXJjaCBhY3Rpb24uCisKKyAgICBJdCBpcyBhYmxlIHRvIHNlYXJjaCBmb3IgYSBzcGVjaWZpYyBpbmRleCAoc3BlY2lmaWVkIHdpdGggLS1pbmRleCksIHVzaW5nCisgICAgdGhlIHNpbXBsZSBvciB4bWxycGMgaW5kZXggdHlwZXMgKHdpdGggLS10eXBlIHhtbHJwYyAvIC0tdHlwZSBzaW1wbGUpCisgICAgIiIiCisgICAgI29wdHMgPSBfcGFyc2VfYXJncyhhcmdzWzE6XSwgJycsIFsnc2ltcGxlJywgJ3htbHJwYyddKQorICAgICMgMS4gd2hhdCBraW5kIG9mIGluZGV4IGlzIHJlcXVlc3RlZCA/ICh4bWxycGMgLyBzaW1wbGUpCisgICAgbG9nZ2VyLmVycm9yKCdub3QgaW1wbGVtZW50ZWQnKQorICAgIHJldHVybiAxCisKKworYWN0aW9ucyA9IFsKKyAgICAoJ3J1bicsICdSdW4gb25lIG9yIHNldmVyYWwgY29tbWFuZHMnLCBfcnVuKSwKKyAgICAoJ21ldGFkYXRhJywgJ0Rpc3BsYXkgdGhlIG1ldGFkYXRhIG9mIGEgcHJvamVjdCcsIF9tZXRhZGF0YSksCisgICAgKCdpbnN0YWxsJywgJ0luc3RhbGwgYSBwcm9qZWN0JywgX2luc3RhbGwpLAorICAgICgncmVtb3ZlJywgJ1JlbW92ZSBhIHByb2plY3QnLCBfcmVtb3ZlKSwKKyAgICAoJ3NlYXJjaCcsICdTZWFyY2ggZm9yIGEgcHJvamVjdCBpbiB0aGUgaW5kZXhlcycsIF9zZWFyY2gpLAorICAgICgnbGlzdCcsICdMaXN0IGluc3RhbGxlZCBwcm9qZWN0cycsIF9saXN0KSwKKyAgICAoJ2dyYXBoJywgJ0Rpc3BsYXkgYSBncmFwaCcsIF9ncmFwaCksCisgICAgKCdjcmVhdGUnLCAnQ3JlYXRlIGEgcHJvamVjdCcsIF9jcmVhdGUpLAorICAgICgnZ2VuZXJhdGUtc2V0dXAnLCAnR2VuZXJhdGUgYSBiYWNrd2FyZC1jb21wYXRpYmxlIHNldHVwLnB5JywgX2dlbmVyYXRlKSwKK10KKworCitjbGFzcyBEaXNwYXRjaGVyOgorICAgICIiIlJlYWRzIHRoZSBjb21tYW5kLWxpbmUgb3B0aW9ucworICAgICIiIgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhcmdzPU5vbmUpOgorICAgICAgICBzZWxmLnZlcmJvc2UgPSAxCisgICAgICAgIHNlbGYuZHJ5X3J1biA9IEZhbHNlCisgICAgICAgIHNlbGYuaGVscCA9IEZhbHNlCisgICAgICAgIHNlbGYuY21kY2xhc3MgPSB7fQorICAgICAgICBzZWxmLmNvbW1hbmRzID0gW10KKyAgICAgICAgc2VsZi5jb21tYW5kX29wdGlvbnMgPSB7fQorCisgICAgICAgIGZvciBhdHRyIGluIGRpc3BsYXlfb3B0aW9uX25hbWVzOgorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBhdHRyLCBGYWxzZSkKKworICAgICAgICBzZWxmLnBhcnNlciA9IEZhbmN5R2V0b3B0KGdsb2JhbF9vcHRpb25zICsgZGlzcGxheV9vcHRpb25zKQorICAgICAgICBzZWxmLnBhcnNlci5zZXRfbmVnYXRpdmVfYWxpYXNlcyhuZWdhdGl2ZV9vcHQpCisgICAgICAgICMgRklYTUUgdGhpcyBwYXJzZXMgZXZlcnl0aGluZywgaW5jbHVkaW5nIGNvbW1hbmQgb3B0aW9ucyAoZS5nLiAicnVuCisgICAgICAgICMgYnVpbGQgLWkiIGVycm9ycyB3aXRoICJvcHRpb24gLWkgbm90IHJlY29nbml6ZWQiKQorICAgICAgICBhcmdzID0gc2VsZi5wYXJzZXIuZ2V0b3B0KGFyZ3M9YXJncywgb2JqZWN0PXNlbGYpCisKKyAgICAgICAgIyBpZiBmaXJzdCBhcmcgaXMgInJ1biIsIHdlIGhhdmUgc29tZSBjb21tYW5kcworICAgICAgICBpZiBsZW4oYXJncykgPT0gMDoKKyAgICAgICAgICAgIHNlbGYuYWN0aW9uID0gTm9uZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5hY3Rpb24gPSBhcmdzWzBdCisKKyAgICAgICAgYWxsb3dlZCA9IFthY3Rpb25bMF0gZm9yIGFjdGlvbiBpbiBhY3Rpb25zXSArIFtOb25lXQorICAgICAgICBpZiBzZWxmLmFjdGlvbiBub3QgaW4gYWxsb3dlZDoKKyAgICAgICAgICAgIG1zZyA9ICdVbnJlY29nbml6ZWQgYWN0aW9uICIlcyInICUgc2VsZi5hY3Rpb24KKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0FyZ0Vycm9yKG1zZykKKworICAgICAgICBzZWxmLl9zZXRfbG9nZ2VyKCkKKyAgICAgICAgc2VsZi5hcmdzID0gYXJncworCisgICAgICAgICMgZm9yIGRpc3BsYXkgb3B0aW9ucyB3ZSByZXR1cm4gaW1tZWRpYXRlbHkKKyAgICAgICAgaWYgc2VsZi5oZWxwIG9yIHNlbGYuYWN0aW9uIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLl9zaG93X2hlbHAoc2VsZi5wYXJzZXIsIGRpc3BsYXlfb3B0aW9uc189RmFsc2UpCisKKyAgICBkZWYgX3NldF9sb2dnZXIoc2VsZik6CisgICAgICAgICMgc2V0dGluZyB1cCB0aGUgbG9nZ2luZyBsZXZlbCBmcm9tIHRoZSBjb21tYW5kLWxpbmUgb3B0aW9ucworICAgICAgICAjIC1xIGdldHMgd2FybmluZywgZXJyb3IgYW5kIGNyaXRpY2FsCisgICAgICAgIGlmIHNlbGYudmVyYm9zZSA9PSAwOgorICAgICAgICAgICAgbGV2ZWwgPSBsb2dnaW5nLldBUk5JTkcKKyAgICAgICAgIyBkZWZhdWx0IGxldmVsIG9yIC12IGdldHMgaW5mbyB0b28KKyAgICAgICAgIyBYWFggdGhlcmUncyBhIGJ1ZyBzb21ld2hlcmU6IHRoZSBoZWxwIHRleHQgc2F5cyB0aGF0IC12IGlzIGRlZmF1bHQKKyAgICAgICAgIyAoYW5kIHZlcmJvc2UgaXMgc2V0IHRvIDEgYWJvdmUpLCBidXQgd2hlbiB0aGUgdXNlciBleHBsaWNpdGx5IGdpdmVzCisgICAgICAgICMgLXYgb24gdGhlIGNvbW1hbmQgbGluZSwgc2VsZi52ZXJib3NlIGlzIGluY3JlbWVudGVkIHRvIDIhICBIZXJlIHdlCisgICAgICAgICMgY29tcGVuc2F0ZSBmb3IgdGhhdCAoSSB0ZXN0ZWQgbWFudWFsbHkpLiAgT24gYSByZWxhdGVkIG5vdGUsIEkgdGhpbmsKKyAgICAgICAgIyBpdCdzIGEgZ29vZCB0aGluZyB0byB1c2UgLXEvbm90aGluZy8tdi8tdnYgb24gdGhlIGNvbW1hbmQgbGluZQorICAgICAgICAjIGluc3RlYWQgb2YgbG9nZ2luZyBjb25zdGFudHM7IGl0IHdpbGwgYmUgZWFzeSB0byBhZGQgc3VwcG9ydCBmb3IKKyAgICAgICAgIyBsb2dnaW5nIGNvbmZpZ3VyYXRpb24gaW4gc2V0dXAuY2ZnIGZvciBhZHZhbmNlZCB1c2Vycy4gLS1tZXJ3b2sKKyAgICAgICAgZWxpZiBzZWxmLnZlcmJvc2UgaW4gKDEsIDIpOgorICAgICAgICAgICAgbGV2ZWwgPSBsb2dnaW5nLklORk8KKyAgICAgICAgZWxzZTogICMgLXZ2IGFuZCBtb3JlIGZvciBkZWJ1ZworICAgICAgICAgICAgbGV2ZWwgPSBsb2dnaW5nLkRFQlVHCisKKyAgICAgICAgIyBzZXR0aW5nIHVwIHRoZSBzdHJlYW0gaGFuZGxlcgorICAgICAgICBoYW5kbGVyID0gbG9nZ2luZy5TdHJlYW1IYW5kbGVyKHN5cy5zdGRlcnIpCisgICAgICAgIGhhbmRsZXIuc2V0TGV2ZWwobGV2ZWwpCisgICAgICAgIGxvZ2dlci5hZGRIYW5kbGVyKGhhbmRsZXIpCisgICAgICAgIGxvZ2dlci5zZXRMZXZlbChsZXZlbCkKKworICAgIGRlZiBfcGFyc2VfY29tbWFuZF9vcHRzKHNlbGYsIHBhcnNlciwgYXJncyk6CisgICAgICAgICMgUHVsbCB0aGUgY3VycmVudCBjb21tYW5kIGZyb20gdGhlIGhlYWQgb2YgdGhlIGNvbW1hbmQgbGluZQorICAgICAgICBjb21tYW5kID0gYXJnc1swXQorICAgICAgICBpZiBub3QgY29tbWFuZF9yZS5tYXRjaChjb21tYW5kKToKKyAgICAgICAgICAgIHJhaXNlIFN5c3RlbUV4aXQoImludmFsaWQgY29tbWFuZCBuYW1lICVyIiAlIChjb21tYW5kLCkpCisgICAgICAgIHNlbGYuY29tbWFuZHMuYXBwZW5kKGNvbW1hbmQpCisKKyAgICAgICAgIyBEaWcgdXAgdGhlIGNvbW1hbmQgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIHRoaXMgY29tbWFuZCwgc28gd2UKKyAgICAgICAgIyAxKSBrbm93IHRoYXQgaXQncyBhIHZhbGlkIGNvbW1hbmQsIGFuZCAyKSBrbm93IHdoaWNoIG9wdGlvbnMKKyAgICAgICAgIyBpdCB0YWtlcy4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY21kX2NsYXNzID0gZ2V0X2NvbW1hbmRfY2xhc3MoY29tbWFuZCkKKyAgICAgICAgZXhjZXB0IFBhY2thZ2luZ01vZHVsZUVycm9yIGFzIG1zZzoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0FyZ0Vycm9yKG1zZykKKworICAgICAgICAjIFhYWCBXZSB3YW50IHRvIHB1c2ggdGhpcyBpbiBwYWNrYWdpbmcuY29tbWFuZAorICAgICAgICAjCisgICAgICAgICMgUmVxdWlyZSB0aGF0IHRoZSBjb21tYW5kIGNsYXNzIGJlIGRlcml2ZWQgZnJvbSBDb21tYW5kIC0tIHdhbnQKKyAgICAgICAgIyB0byBiZSBzdXJlIHRoYXQgdGhlIGJhc2ljICJjb21tYW5kIiBpbnRlcmZhY2UgaXMgaW1wbGVtZW50ZWQuCisgICAgICAgIGZvciBtZXRoIGluICgnaW5pdGlhbGl6ZV9vcHRpb25zJywgJ2ZpbmFsaXplX29wdGlvbnMnLCAncnVuJyk6CisgICAgICAgICAgICBpZiBoYXNhdHRyKGNtZF9jbGFzcywgbWV0aCk6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0NsYXNzRXJyb3IoCisgICAgICAgICAgICAgICAgJ2NvbW1hbmQgJXIgbXVzdCBpbXBsZW1lbnQgJXInICUgKGNtZF9jbGFzcywgbWV0aCkpCisKKyAgICAgICAgIyBBbHNvIG1ha2Ugc3VyZSB0aGF0IHRoZSBjb21tYW5kIG9iamVjdCBwcm92aWRlcyBhIGxpc3Qgb2YgaXRzCisgICAgICAgICMga25vd24gb3B0aW9ucy4KKyAgICAgICAgaWYgbm90IChoYXNhdHRyKGNtZF9jbGFzcywgJ3VzZXJfb3B0aW9ucycpIGFuZAorICAgICAgICAgICAgICAgIGlzaW5zdGFuY2UoY21kX2NsYXNzLnVzZXJfb3B0aW9ucywgbGlzdCkpOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nQ2xhc3NFcnJvcigKKyAgICAgICAgICAgICAgICAiY29tbWFuZCBjbGFzcyAlcyBtdXN0IHByb3ZpZGUgIgorICAgICAgICAgICAgICAgICIndXNlcl9vcHRpb25zJyBhdHRyaWJ1dGUgKGEgbGlzdCBvZiB0dXBsZXMpIiAlIGNtZF9jbGFzcykKKworICAgICAgICAjIElmIHRoZSBjb21tYW5kIGNsYXNzIGhhcyBhIGxpc3Qgb2YgbmVnYXRpdmUgYWxpYXMgb3B0aW9ucywKKyAgICAgICAgIyBtZXJnZSBpdCBpbiB3aXRoIHRoZSBnbG9iYWwgbmVnYXRpdmUgYWxpYXNlcy4KKyAgICAgICAgX25lZ2F0aXZlX29wdCA9IG5lZ2F0aXZlX29wdC5jb3B5KCkKKworICAgICAgICBpZiBoYXNhdHRyKGNtZF9jbGFzcywgJ25lZ2F0aXZlX29wdCcpOgorICAgICAgICAgICAgX25lZ2F0aXZlX29wdC51cGRhdGUoY21kX2NsYXNzLm5lZ2F0aXZlX29wdCkKKworICAgICAgICAjIENoZWNrIGZvciBoZWxwX29wdGlvbnMgaW4gY29tbWFuZCBjbGFzcy4gIFRoZXkgaGF2ZSBhIGRpZmZlcmVudAorICAgICAgICAjIGZvcm1hdCAodHVwbGUgb2YgZm91cikgc28gd2UgbmVlZCB0byBwcmVwcm9jZXNzIHRoZW0gaGVyZS4KKyAgICAgICAgaWYgKGhhc2F0dHIoY21kX2NsYXNzLCAnaGVscF9vcHRpb25zJykgYW5kCisgICAgICAgICAgICBpc2luc3RhbmNlKGNtZF9jbGFzcy5oZWxwX29wdGlvbnMsIGxpc3QpKToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9ucyA9IGNtZF9jbGFzcy5oZWxwX29wdGlvbnNbOl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9ucyA9IFtdCisKKyAgICAgICAgIyBBbGwgY29tbWFuZHMgc3VwcG9ydCB0aGUgZ2xvYmFsIG9wdGlvbnMgdG9vLCBqdXN0IGJ5IGFkZGluZworICAgICAgICAjIGluICdnbG9iYWxfb3B0aW9ucycuCisgICAgICAgIHBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGdsb2JhbF9vcHRpb25zICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY21kX2NsYXNzLnVzZXJfb3B0aW9ucyArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHBfb3B0aW9ucykKKyAgICAgICAgcGFyc2VyLnNldF9uZWdhdGl2ZV9hbGlhc2VzKF9uZWdhdGl2ZV9vcHQpCisgICAgICAgIGFyZ3MsIG9wdHMgPSBwYXJzZXIuZ2V0b3B0KGFyZ3NbMTpdKQorCisgICAgICAgIGlmIGhhc2F0dHIob3B0cywgJ2hlbHAnKSBhbmQgb3B0cy5oZWxwOgorICAgICAgICAgICAgc2VsZi5fc2hvd19jb21tYW5kX2hlbHAoY21kX2NsYXNzKQorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgaWYgKGhhc2F0dHIoY21kX2NsYXNzLCAnaGVscF9vcHRpb25zJykgYW5kCisgICAgICAgICAgICBpc2luc3RhbmNlKGNtZF9jbGFzcy5oZWxwX29wdGlvbnMsIGxpc3QpKToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9uX2ZvdW5kID0gRmFsc2UKKyAgICAgICAgICAgIGZvciBoZWxwX29wdGlvbiwgc2hvcnQsIGRlc2MsIGZ1bmMgaW4gY21kX2NsYXNzLmhlbHBfb3B0aW9uczoKKyAgICAgICAgICAgICAgICBpZiBoYXNhdHRyKG9wdHMsIGhlbHBfb3B0aW9uLnJlcGxhY2UoJy0nLCAnXycpKToKKyAgICAgICAgICAgICAgICAgICAgaGVscF9vcHRpb25fZm91bmQgPSBUcnVlCisgICAgICAgICAgICAgICAgICAgIGlmIGNhbGxhYmxlKGZ1bmMpOgorICAgICAgICAgICAgICAgICAgICAgICAgZnVuYygpCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdDbGFzc0Vycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnZhbGlkIGhlbHAgZnVuY3Rpb24gJXIgZm9yIGhlbHAgb3B0aW9uICVyOiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm11c3QgYmUgYSBjYWxsYWJsZSBvYmplY3QgKGZ1bmN0aW9uLCBldGMuKSIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIChmdW5jLCBoZWxwX29wdGlvbikpCisKKyAgICAgICAgICAgIGlmIGhlbHBfb3B0aW9uX2ZvdW5kOgorICAgICAgICAgICAgICAgIHJldHVybgorCisgICAgICAgICMgUHV0IHRoZSBvcHRpb25zIGZyb20gdGhlIGNvbW1hbmQgbGluZSBpbnRvIHRoZWlyIG9mZmljaWFsCisgICAgICAgICMgaG9sZGluZyBwZW4sIHRoZSAnY29tbWFuZF9vcHRpb25zJyBkaWN0aW9uYXJ5LgorICAgICAgICBvcHRfZGljdCA9IHNlbGYuZ2V0X29wdGlvbl9kaWN0KGNvbW1hbmQpCisgICAgICAgIGZvciBuYW1lLCB2YWx1ZSBpbiB2YXJzKG9wdHMpLml0ZW1zKCk6CisgICAgICAgICAgICBvcHRfZGljdFtuYW1lXSA9ICgiY29tbWFuZCBsaW5lIiwgdmFsdWUpCisKKyAgICAgICAgcmV0dXJuIGFyZ3MKKworICAgIGRlZiBnZXRfb3B0aW9uX2RpY3Qoc2VsZiwgY29tbWFuZCk6CisgICAgICAgICIiIkdldCB0aGUgb3B0aW9uIGRpY3Rpb25hcnkgZm9yIGEgZ2l2ZW4gY29tbWFuZC4gIElmIHRoYXQKKyAgICAgICAgY29tbWFuZCdzIG9wdGlvbiBkaWN0aW9uYXJ5IGhhc24ndCBiZWVuIGNyZWF0ZWQgeWV0LCB0aGVuIGNyZWF0ZSBpdAorICAgICAgICBhbmQgcmV0dXJuIHRoZSBuZXcgZGljdGlvbmFyeTsgb3RoZXJ3aXNlLCByZXR1cm4gdGhlIGV4aXN0aW5nCisgICAgICAgIG9wdGlvbiBkaWN0aW9uYXJ5LgorICAgICAgICAiIiIKKyAgICAgICAgZCA9IHNlbGYuY29tbWFuZF9vcHRpb25zLmdldChjb21tYW5kKQorICAgICAgICBpZiBkIGlzIE5vbmU6CisgICAgICAgICAgICBkID0gc2VsZi5jb21tYW5kX29wdGlvbnNbY29tbWFuZF0gPSB7fQorICAgICAgICByZXR1cm4gZAorCisgICAgZGVmIHNob3dfaGVscChzZWxmKToKKyAgICAgICAgc2VsZi5fc2hvd19oZWxwKHNlbGYucGFyc2VyKQorCisgICAgZGVmIHByaW50X3VzYWdlKHNlbGYsIHBhcnNlcik6CisgICAgICAgIHBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGdsb2JhbF9vcHRpb25zKQorCisgICAgICAgIGFjdGlvbnNfID0gWycgICAgJXM6ICVzJyAlIChuYW1lLCBkZXNjKSBmb3IgbmFtZSwgZGVzYywgX18gaW4gYWN0aW9uc10KKyAgICAgICAgdXNhZ2UgPSBjb21tb25fdXNhZ2UgJSB7J2FjdGlvbnMnOiAnXG4nLmpvaW4oYWN0aW9uc18pfQorCisgICAgICAgIHBhcnNlci5wcmludF9oZWxwKHVzYWdlICsgIlxuR2xvYmFsIG9wdGlvbnM6IikKKworICAgIGRlZiBfc2hvd19oZWxwKHNlbGYsIHBhcnNlciwgZ2xvYmFsX29wdGlvbnNfPVRydWUsIGRpc3BsYXlfb3B0aW9uc189VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICBjb21tYW5kcz1bXSk6CisgICAgICAgICMgbGF0ZSBpbXBvcnQgYmVjYXVzZSBvZiBtdXR1YWwgZGVwZW5kZW5jZSBiZXR3ZWVuIHRoZXNlIG1vZHVsZXMKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKKworICAgICAgICBwcmludCgnVXNhZ2U6IHB5c2V0dXAgW29wdGlvbnNdIGFjdGlvbiBbYWN0aW9uX29wdGlvbnNdJykKKyAgICAgICAgcHJpbnQoKQorICAgICAgICBpZiBnbG9iYWxfb3B0aW9uc186CisgICAgICAgICAgICBzZWxmLnByaW50X3VzYWdlKHNlbGYucGFyc2VyKQorICAgICAgICAgICAgcHJpbnQoKQorCisgICAgICAgIGlmIGRpc3BsYXlfb3B0aW9uc186CisgICAgICAgICAgICBwYXJzZXIuc2V0X29wdGlvbl90YWJsZShkaXNwbGF5X29wdGlvbnMpCisgICAgICAgICAgICBwYXJzZXIucHJpbnRfaGVscCgKKyAgICAgICAgICAgICAgICAiSW5mb3JtYXRpb24gZGlzcGxheSBvcHRpb25zIChqdXN0IGRpc3BsYXkgIiArCisgICAgICAgICAgICAgICAgImluZm9ybWF0aW9uLCBpZ25vcmUgYW55IGNvbW1hbmRzKSIpCisgICAgICAgICAgICBwcmludCgpCisKKyAgICAgICAgZm9yIGNvbW1hbmQgaW4gY29tbWFuZHM6CisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGNvbW1hbmQsIHR5cGUpIGFuZCBpc3N1YmNsYXNzKGNvbW1hbmQsIENvbW1hbmQpOgorICAgICAgICAgICAgICAgIGNscyA9IGNvbW1hbmQKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgY2xzID0gZ2V0X2NvbW1hbmRfY2xhc3MoY29tbWFuZCkKKyAgICAgICAgICAgIGlmIChoYXNhdHRyKGNscywgJ2hlbHBfb3B0aW9ucycpIGFuZAorICAgICAgICAgICAgICAgIGlzaW5zdGFuY2UoY2xzLmhlbHBfb3B0aW9ucywgbGlzdCkpOgorICAgICAgICAgICAgICAgIHBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGNscy51c2VyX29wdGlvbnMgKyBjbHMuaGVscF9vcHRpb25zKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBwYXJzZXIuc2V0X29wdGlvbl90YWJsZShjbHMudXNlcl9vcHRpb25zKQorCisgICAgICAgICAgICBwYXJzZXIucHJpbnRfaGVscCgiT3B0aW9ucyBmb3IgJXIgY29tbWFuZDoiICUgY2xzLl9fbmFtZV9fKQorICAgICAgICAgICAgcHJpbnQoKQorCisgICAgZGVmIF9zaG93X2NvbW1hbmRfaGVscChzZWxmLCBjb21tYW5kKToKKyAgICAgICAgaWYgaXNpbnN0YW5jZShjb21tYW5kLCBzdHIpOgorICAgICAgICAgICAgY29tbWFuZCA9IGdldF9jb21tYW5kX2NsYXNzKGNvbW1hbmQpCisKKyAgICAgICAgZGVzYyA9IGdldGF0dHIoY29tbWFuZCwgJ2Rlc2NyaXB0aW9uJywgJyhubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpJykKKyAgICAgICAgcHJpbnQoJ0Rlc2NyaXB0aW9uOicsIGRlc2MpCisgICAgICAgIHByaW50KCkKKworICAgICAgICBpZiAoaGFzYXR0cihjb21tYW5kLCAnaGVscF9vcHRpb25zJykgYW5kCisgICAgICAgICAgICBpc2luc3RhbmNlKGNvbW1hbmQuaGVscF9vcHRpb25zLCBsaXN0KSk6CisgICAgICAgICAgICBzZWxmLnBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGNvbW1hbmQudXNlcl9vcHRpb25zICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tbWFuZC5oZWxwX29wdGlvbnMpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLnBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGNvbW1hbmQudXNlcl9vcHRpb25zKQorCisgICAgICAgIHNlbGYucGFyc2VyLnByaW50X2hlbHAoIk9wdGlvbnM6IikKKyAgICAgICAgcHJpbnQoKQorCisgICAgZGVmIF9nZXRfY29tbWFuZF9ncm91cHMoc2VsZik6CisgICAgICAgICIiIkhlbHBlciBmdW5jdGlvbiB0byByZXRyaWV2ZSBhbGwgdGhlIGNvbW1hbmQgY2xhc3MgbmFtZXMgZGl2aWRlZAorICAgICAgICBpbnRvIHN0YW5kYXJkIGNvbW1hbmRzIChsaXN0ZWQgaW4KKyAgICAgICAgcGFja2FnaW5nLmNvbW1hbmQuU1RBTkRBUkRfQ09NTUFORFMpIGFuZCBleHRyYSBjb21tYW5kcyAoZ2l2ZW4gaW4KKyAgICAgICAgc2VsZi5jbWRjbGFzcyBhbmQgbm90IHN0YW5kYXJkIGNvbW1hbmRzKS4KKyAgICAgICAgIiIiCisgICAgICAgIGV4dHJhX2NvbW1hbmRzID0gW2NtZCBmb3IgY21kIGluIHNlbGYuY21kY2xhc3MKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgY21kIG5vdCBpbiBTVEFOREFSRF9DT01NQU5EU10KKyAgICAgICAgcmV0dXJuIFNUQU5EQVJEX0NPTU1BTkRTLCBleHRyYV9jb21tYW5kcworCisgICAgZGVmIHByaW50X2NvbW1hbmRzKHNlbGYpOgorICAgICAgICAiIiJQcmludCBvdXQgYSBoZWxwIG1lc3NhZ2UgbGlzdGluZyBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzIHdpdGggYQorICAgICAgICBkZXNjcmlwdGlvbiBvZiBlYWNoLiAgVGhlIGxpc3QgaXMgZGl2aWRlZCBpbnRvIHN0YW5kYXJkIGNvbW1hbmRzCisgICAgICAgIChsaXN0ZWQgaW4gcGFja2FnaW5nLmNvbW1hbmQuU1RBTkRBUkRfQ09NTUFORFMpIGFuZCBleHRyYSBjb21tYW5kcworICAgICAgICAoZ2l2ZW4gaW4gc2VsZi5jbWRjbGFzcyBhbmQgbm90IHN0YW5kYXJkIGNvbW1hbmRzKS4gIFRoZQorICAgICAgICBkZXNjcmlwdGlvbnMgY29tZSBmcm9tIHRoZSBjb21tYW5kIGNsYXNzIGF0dHJpYnV0ZQorICAgICAgICAnZGVzY3JpcHRpb24nLgorICAgICAgICAiIiIKKyAgICAgICAgc3RkX2NvbW1hbmRzLCBleHRyYV9jb21tYW5kcyA9IHNlbGYuX2dldF9jb21tYW5kX2dyb3VwcygpCisgICAgICAgIG1heF9sZW5ndGggPSBtYXgobGVuKGNvbW1hbmQpCisgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGNvbW1hbmRzIGluIChzdGRfY29tbWFuZHMsIGV4dHJhX2NvbW1hbmRzKQorICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBjb21tYW5kIGluIGNvbW1hbmRzKQorCisgICAgICAgIHNlbGYucHJpbnRfY29tbWFuZF9saXN0KHN0ZF9jb21tYW5kcywgIlN0YW5kYXJkIGNvbW1hbmRzIiwgbWF4X2xlbmd0aCkKKyAgICAgICAgaWYgZXh0cmFfY29tbWFuZHM6CisgICAgICAgICAgICBwcmludCgpCisgICAgICAgICAgICBzZWxmLnByaW50X2NvbW1hbmRfbGlzdChleHRyYV9jb21tYW5kcywgIkV4dHJhIGNvbW1hbmRzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heF9sZW5ndGgpCisKKyAgICBkZWYgcHJpbnRfY29tbWFuZF9saXN0KHNlbGYsIGNvbW1hbmRzLCBoZWFkZXIsIG1heF9sZW5ndGgpOgorICAgICAgICAiIiJQcmludCBhIHN1YnNldCBvZiB0aGUgbGlzdCBvZiBhbGwgY29tbWFuZHMgLS0gdXNlZCBieQorICAgICAgICAncHJpbnRfY29tbWFuZHMoKScuCisgICAgICAgICIiIgorICAgICAgICBwcmludChoZWFkZXIgKyAiOiIpCisKKyAgICAgICAgZm9yIGNtZCBpbiBjb21tYW5kczoKKyAgICAgICAgICAgIGNscyA9IHNlbGYuY21kY2xhc3MuZ2V0KGNtZCkgb3IgZ2V0X2NvbW1hbmRfY2xhc3MoY21kKQorICAgICAgICAgICAgZGVzY3JpcHRpb24gPSBnZXRhdHRyKGNscywgJ2Rlc2NyaXB0aW9uJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSknKQorCisgICAgICAgICAgICBwcmludCgiICAlLSpzICAlcyIgJSAobWF4X2xlbmd0aCwgY21kLCBkZXNjcmlwdGlvbikpCisKKyAgICBkZWYgX19jYWxsX18oc2VsZik6CisgICAgICAgIGlmIHNlbGYuYWN0aW9uIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBmb3IgYWN0aW9uLCBkZXNjLCBmdW5jIGluIGFjdGlvbnM6CisgICAgICAgICAgICBpZiBhY3Rpb24gPT0gc2VsZi5hY3Rpb246CisgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmMoc2VsZiwgc2VsZi5hcmdzKQorICAgICAgICByZXR1cm4gLTEKKworCitkZWYgbWFpbihhcmdzPU5vbmUpOgorICAgIG9sZF9sZXZlbCA9IGxvZ2dlci5sZXZlbAorICAgIG9sZF9oYW5kbGVycyA9IGxpc3QobG9nZ2VyLmhhbmRsZXJzKQorICAgIHRyeToKKyAgICAgICAgZGlzcGF0Y2hlciA9IERpc3BhdGNoZXIoYXJncykKKyAgICAgICAgaWYgZGlzcGF0Y2hlci5hY3Rpb24gaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICByZXR1cm4gZGlzcGF0Y2hlcigpCisgICAgZXhjZXB0IEtleWJvYXJkSW50ZXJydXB0OgorICAgICAgICBsb2dnZXIuaW5mbygnaW50ZXJydXB0ZWQnKQorICAgICAgICByZXR1cm4gMQorICAgIGV4Y2VwdCAoSU9FcnJvciwgb3MuZXJyb3IsIFBhY2thZ2luZ0Vycm9yLCBDQ29tcGlsZXJFcnJvcikgYXMgZXhjOgorICAgICAgICBsb2dnZXIuZXhjZXB0aW9uKGV4YykKKyAgICAgICAgcmV0dXJuIDEKKyAgICBmaW5hbGx5OgorICAgICAgICBsb2dnZXIuc2V0TGV2ZWwob2xkX2xldmVsKQorICAgICAgICBsb2dnZXIuaGFuZGxlcnNbOl0gPSBvbGRfaGFuZGxlcnMKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHN5cy5leGl0KG1haW4oKSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvTE9OR19ERVNDLnR4dCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvTE9OR19ERVNDLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYjQzNThhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9MT05HX0RFU0MudHh0CkBAIC0wLDAgKzEsNDQgQEAKK0NMVmF1bHQKKz09PT09PT0KKworQ0xWYXVsdCB1c2VzIEtleXJpbmcgdG8gcHJvdmlkZSBhIGNvbW1hbmQtbGluZSB1dGlsaXR5IHRvIHNhZmVseSBzdG9yZQorYW5kIHJldHJpZXZlIHBhc3N3b3Jkcy4KKworSW5zdGFsbCBpdCB1c2luZyBwaXAgb3IgdGhlIHNldHVwLnB5IHNjcmlwdDo6CisKKyAgICAkIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsCisKKyAgICAkIHBpcCBpbnN0YWxsIGNsdmF1bHQKKworT25jZSBpdCdzIGluc3RhbGxlZCwgeW91IHdpbGwgaGF2ZSB0aHJlZSBzY3JpcHRzIGluc3RhbGxlZCBpbiB5b3VyCitQeXRob24gc2NyaXB0cyBmb2xkZXIsIHlvdSBjYW4gdXNlIHRvIGxpc3QsIHN0b3JlIGFuZCByZXRyaWV2ZSBwYXNzd29yZHM6OgorCisgICAgJCBjbHZhdWx0LXNldCBibG9nCisgICAgU2V0IHlvdXIgcGFzc3dvcmQ6CisgICAgU2V0IHRoZSBhc3NvY2lhdGVkIHVzZXJuYW1lIChjYW4gYmUgYmxhbmspOiB0YXJlaworICAgIFNldCBhIGRlc2NyaXB0aW9uIChjYW4gYmUgYmxhbmspOiBNeSBibG9nIHBhc3N3b3JkCisgICAgUGFzc3dvcmQgc2V0LgorCisgICAgJCBjbHZhdWx0LWdldCBibG9nCisgICAgVGhlIHVzZXJuYW1lIGlzICJ0YXJlayIKKyAgICBUaGUgcGFzc3dvcmQgaGFzIGJlZW4gY29waWVkIGluIHlvdXIgY2xpcGJvYXJkCisKKyAgICAkIGNsdmF1bHQtbGlzdAorICAgIFJlZ2lzdGVyZWQgc2VydmljZXM6CisgICAgYmxvZyAgICBNeSBibG9nIHBhc3N3b3JkCisKKworKmNsdmF1bHQtc2V0KiB0YWtlcyBhIHNlcnZpY2UgbmFtZSB0aGVuIHByb21wdCB5b3UgZm9yIGEgcGFzc3dvcmQsIGFuZCBzb21lCitvcHRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHNlcnZpY2UuIFRoZSBwYXNzd29yZCBpcyBzYWZlbHkgc3RvcmVkIGluCithIGtleXJpbmcgd2hpbGUgdGhlIGRlc2NyaXB0aW9uIGlzIHNhdmVkIGluIGEgYGAuY2x2YXVsdGBgIGZpbGUgaW4geW91cgoraG9tZSBkaXJlY3RvcnkuIFRoaXMgZmlsZSBpcyBjcmVhdGVkIGF1dG9tYXRpY2FsbHkgdGhlIGZpcnN0IHRpbWUgdGhlIGNvbW1hbmQKK2lzIHVzZWQuCisKKypjbHZhdWx0LWdldCogY29waWVzIHRoZSBwYXNzd29yZCBmb3IgYSBnaXZlbiBzZXJ2aWNlIGluIHlvdXIgY2xpcGJvYXJkLCBhbmQKK2Rpc3BsYXlzIHRoZSBhc3NvY2lhdGVkIHVzZXIgaWYgYW55LgorCisqY2x2YXVsdC1saXN0KiBsaXN0cyBhbGwgcmVnaXN0ZXJlZCBzZXJ2aWNlcywgd2l0aCB0aGVpciBkZXNjcmlwdGlvbiB3aGVuCitnaXZlbi4KKworCitQcm9qZWN0IHBhZ2U6IGh0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL2NsdmF1bHQKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvUEtHLUlORk8gYi9MaWIvcGFja2FnaW5nL3Rlc3RzL1BLRy1JTkZPCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY0ODU0NmUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL1BLRy1JTkZPCkBAIC0wLDAgKzEsNTcgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogQ0xWYXVsdAorVmVyc2lvbjogMC41CitTdW1tYXJ5OiBDb21tYW5kLUxpbmUgdXRpbGl0eSB0byBzdG9yZSBhbmQgcmV0cmlldmUgcGFzc3dvcmRzCitIb21lLXBhZ2U6IGh0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL2NsdmF1bHQKK0F1dGhvcjogVGFyZWsgWmlhZGUKK0F1dGhvci1lbWFpbDogdGFyZWtAemlhZGUub3JnCitMaWNlbnNlOiBQU0YKK0tleXdvcmRzOiBrZXlyaW5nLHBhc3N3b3JkLGNyeXB0CitSZXF1aXJlcy1EaXN0OiBmb287IHN5cy5wbGF0Zm9ybSA9PSAnb2tvb2snCitSZXF1aXJlcy1EaXN0OiBiYXI7IHN5cy5wbGF0Zm9ybSA9PSAnJXMnCitQbGF0Zm9ybTogVU5LTk9XTgorRGVzY3JpcHRpb246IENMVmF1bHQKKyAgICAgICB8PT09PT09PQorICAgICAgIHwKKyAgICAgICB8Q0xWYXVsdCB1c2VzIEtleXJpbmcgdG8gcHJvdmlkZSBhIGNvbW1hbmQtbGluZSB1dGlsaXR5IHRvIHNhZmVseSBzdG9yZQorICAgICAgIHxhbmQgcmV0cmlldmUgcGFzc3dvcmRzLgorICAgICAgIHwKKyAgICAgICB8SW5zdGFsbCBpdCB1c2luZyBwaXAgb3IgdGhlIHNldHVwLnB5IHNjcmlwdDo6CisgICAgICAgfAorICAgICAgIHwgICAgJCBweXRob24gc2V0dXAucHkgaW5zdGFsbAorICAgICAgIHwKKyAgICAgICB8ICAgICQgcGlwIGluc3RhbGwgY2x2YXVsdAorICAgICAgIHwKKyAgICAgICB8T25jZSBpdCdzIGluc3RhbGxlZCwgeW91IHdpbGwgaGF2ZSB0aHJlZSBzY3JpcHRzIGluc3RhbGxlZCBpbiB5b3VyCisgICAgICAgfFB5dGhvbiBzY3JpcHRzIGZvbGRlciwgeW91IGNhbiB1c2UgdG8gbGlzdCwgc3RvcmUgYW5kIHJldHJpZXZlIHBhc3N3b3Jkczo6CisgICAgICAgfAorICAgICAgIHwgICAgJCBjbHZhdWx0LXNldCBibG9nCisgICAgICAgfCAgICBTZXQgeW91ciBwYXNzd29yZDoKKyAgICAgICB8ICAgIFNldCB0aGUgYXNzb2NpYXRlZCB1c2VybmFtZSAoY2FuIGJlIGJsYW5rKTogdGFyZWsKKyAgICAgICB8ICAgIFNldCBhIGRlc2NyaXB0aW9uIChjYW4gYmUgYmxhbmspOiBNeSBibG9nIHBhc3N3b3JkCisgICAgICAgfCAgICBQYXNzd29yZCBzZXQuCisgICAgICAgfAorICAgICAgIHwgICAgJCBjbHZhdWx0LWdldCBibG9nCisgICAgICAgfCAgICBUaGUgdXNlcm5hbWUgaXMgInRhcmVrIgorICAgICAgIHwgICAgVGhlIHBhc3N3b3JkIGhhcyBiZWVuIGNvcGllZCBpbiB5b3VyIGNsaXBib2FyZAorICAgICAgIHwKKyAgICAgICB8ICAgICQgY2x2YXVsdC1saXN0CisgICAgICAgfCAgICBSZWdpc3RlcmVkIHNlcnZpY2VzOgorICAgICAgIHwgICAgYmxvZyAgICBNeSBibG9nIHBhc3N3b3JkCisgICAgICAgfAorICAgICAgIHwKKyAgICAgICB8KmNsdmF1bHQtc2V0KiB0YWtlcyBhIHNlcnZpY2UgbmFtZSB0aGVuIHByb21wdCB5b3UgZm9yIGEgcGFzc3dvcmQsIGFuZCBzb21lCisgICAgICAgfG9wdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHlvdXIgc2VydmljZS4gVGhlIHBhc3N3b3JkIGlzIHNhZmVseSBzdG9yZWQgaW4KKyAgICAgICB8YSBrZXlyaW5nIHdoaWxlIHRoZSBkZXNjcmlwdGlvbiBpcyBzYXZlZCBpbiBhIGBgLmNsdmF1bHRgYCBmaWxlIGluIHlvdXIKKyAgICAgICB8aG9tZSBkaXJlY3RvcnkuIFRoaXMgZmlsZSBpcyBjcmVhdGVkIGF1dG9tYXRpY2FsbHkgdGhlIGZpcnN0IHRpbWUgdGhlIGNvbW1hbmQKKyAgICAgICB8aXMgdXNlZC4KKyAgICAgICB8CisgICAgICAgfCpjbHZhdWx0LWdldCogY29waWVzIHRoZSBwYXNzd29yZCBmb3IgYSBnaXZlbiBzZXJ2aWNlIGluIHlvdXIgY2xpcGJvYXJkLCBhbmQKKyAgICAgICB8ZGlzcGxheXMgdGhlIGFzc29jaWF0ZWQgdXNlciBpZiBhbnkuCisgICAgICAgfAorICAgICAgIHwqY2x2YXVsdC1saXN0KiBsaXN0cyBhbGwgcmVnaXN0ZXJlZCBzZXJ2aWNlcywgd2l0aCB0aGVpciBkZXNjcmlwdGlvbiB3aGVuCisgICAgICAgfGdpdmVuLgorICAgICAgIHwKKyAgICAgICB8CisgICAgICAgfFByb2plY3QgcGFnZTogaHR0cDovL2JpdGJ1Y2tldC5vcmcvdGFyZWsvY2x2YXVsdAorICAgICAgIHwKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvU0VUVVBUT09MUy1QS0ctSU5GTyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvU0VUVVBUT09MUy1QS0ctSU5GTwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZmY4ZDAwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9TRVRVUFRPT0xTLVBLRy1JTkZPCkBAIC0wLDAgKzEsMTgyIEBACitNZXRhZGF0YS1WZXJzaW9uOiAxLjAKK05hbWU6IHNldHVwdG9vbHMKK1ZlcnNpb246IDAuNmM5CitTdW1tYXJ5OiBEb3dubG9hZCwgYnVpbGQsIGluc3RhbGwsIHVwZ3JhZGUsIGFuZCB1bmluc3RhbGwgUHl0aG9uIHBhY2thZ2VzIC0tIGVhc2lseSEKK0hvbWUtcGFnZTogaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpL3NldHVwdG9vbHMKK0F1dGhvcjogUGhpbGxpcCBKLiBFYnkKK0F1dGhvci1lbWFpbDogZGlzdHV0aWxzLXNpZ0BweXRob24ub3JnCitMaWNlbnNlOiBQU0Ygb3IgWlBMCitEZXNjcmlwdGlvbjogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICAgICAgICBJbnN0YWxsaW5nIGFuZCBVc2luZyBTZXR1cHRvb2xzCisgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgICAgICAuLiBjb250ZW50czo6ICoqVGFibGUgb2YgQ29udGVudHMqKgorCisKKyAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICBJbnN0YWxsYXRpb24gSW5zdHJ1Y3Rpb25zCisgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgICAgICBXaW5kb3dzCisgICAgICAgID09PT09PT0KKworICAgICAgICBJbnN0YWxsIHNldHVwdG9vbHMgdXNpbmcgdGhlIHByb3ZpZGVkIGBgLmV4ZWBgIGluc3RhbGxlci4gIElmIHlvdSd2ZSBwcmV2aW91c2x5CisgICAgICAgIGluc3RhbGxlZCBvbGRlciB2ZXJzaW9ucyBvZiBzZXR1cHRvb2xzLCBwbGVhc2UgZGVsZXRlIGFsbCBgYHNldHVwdG9vbHMqLmVnZ2BgCisgICAgICAgIGFuZCBgYHNldHVwdG9vbHMucHRoYGAgZmlsZXMgZnJvbSB5b3VyIHN5c3RlbSdzIGBgc2l0ZS1wYWNrYWdlc2BgIGRpcmVjdG9yeQorICAgICAgICAoYW5kIGFueSBvdGhlciBgYHN5cy5wYXRoYGAgZGlyZWN0b3JpZXMpIEZJUlNULgorCisgICAgICAgIElmIHlvdSBhcmUgdXBncmFkaW5nIGEgcHJldmlvdXMgdmVyc2lvbiBvZiBzZXR1cHRvb2xzIHRoYXQgd2FzIGluc3RhbGxlZCB1c2luZworICAgICAgICBhbiBgYC5leGVgYCBpbnN0YWxsZXIsIHBsZWFzZSBiZSBzdXJlIHRvIGFsc28gKnVuaW5zdGFsbCB0aGF0IG9sZGVyIHZlcnNpb24qCisgICAgICAgIHZpYSB5b3VyIHN5c3RlbSdzICJBZGQvUmVtb3ZlIFByb2dyYW1zIiBmZWF0dXJlLCBCRUZPUkUgaW5zdGFsbGluZyB0aGUgbmV3ZXIKKyAgICAgICAgdmVyc2lvbi4KKworICAgICAgICBPbmNlIGluc3RhbGxhdGlvbiBpcyBjb21wbGV0ZSwgeW91IHdpbGwgZmluZCBhbiBgYGVhc3lfaW5zdGFsbC5leGVgYCBwcm9ncmFtIGluCisgICAgICAgIHlvdXIgUHl0aG9uIGBgU2NyaXB0c2BgIHN1YmRpcmVjdG9yeS4gIEJlIHN1cmUgdG8gYWRkIHRoaXMgZGlyZWN0b3J5IHRvIHlvdXIKKyAgICAgICAgYGBQQVRIYGAgZW52aXJvbm1lbnQgdmFyaWFibGUsIGlmIHlvdSBoYXZlbid0IGFscmVhZHkgZG9uZSBzby4KKworCisgICAgICAgIFJQTS1CYXNlZCBTeXN0ZW1zCisgICAgICAgID09PT09PT09PT09PT09PT09CisKKyAgICAgICAgSW5zdGFsbCBzZXR1cHRvb2xzIHVzaW5nIHRoZSBwcm92aWRlZCBzb3VyY2UgUlBNLiAgVGhlIGluY2x1ZGVkIGBgLnNwZWNgYCBmaWxlCisgICAgICAgIGFzc3VtZXMgeW91IGFyZSBpbnN0YWxsaW5nIHVzaW5nIHRoZSBkZWZhdWx0IGBgcHl0aG9uYGAgZXhlY3V0YWJsZSwgYW5kIGlzIG5vdAorICAgICAgICBzcGVjaWZpYyB0byBhIHBhcnRpY3VsYXIgUHl0aG9uIHZlcnNpb24uICBUaGUgYGBlYXN5X2luc3RhbGxgYCBleGVjdXRhYmxlIHdpbGwKKyAgICAgICAgYmUgaW5zdGFsbGVkIHRvIGEgc3lzdGVtIGBgYmluYGAgZGlyZWN0b3J5IHN1Y2ggYXMgYGAvdXNyL2JpbmBgLgorCisgICAgICAgIElmIHlvdSB3aXNoIHRvIGluc3RhbGwgdG8gYSBsb2NhdGlvbiBvdGhlciB0aGFuIHRoZSBkZWZhdWx0IFB5dGhvbgorICAgICAgICBpbnN0YWxsYXRpb24ncyBkZWZhdWx0IGBgc2l0ZS1wYWNrYWdlc2BgIGRpcmVjdG9yeSAoYW5kIGBgJHByZWZpeC9iaW5gYCBmb3IKKyAgICAgICAgc2NyaXB0cyksIHBsZWFzZSB1c2UgdGhlIGBgLmVnZ2BgLWJhc2VkIGluc3RhbGxhdGlvbiBhcHByb2FjaCBkZXNjcmliZWQgaW4gdGhlCisgICAgICAgIGZvbGxvd2luZyBzZWN0aW9uLgorCisKKyAgICAgICAgQ3lnd2luLCBNYWMgT1MgWCwgTGludXgsIE90aGVyCisgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisgICAgICAgIDEuIERvd25sb2FkIHRoZSBhcHByb3ByaWF0ZSBlZ2cgZm9yIHlvdXIgdmVyc2lvbiBvZiBQeXRob24gKGUuZy4KKyAgICAgICAgYGBzZXR1cHRvb2xzLTAuNmM5LXB5Mi40LmVnZ2BgKS4gIERvIE5PVCByZW5hbWUgaXQuCisKKyAgICAgICAgMi4gUnVuIGl0IGFzIGlmIGl0IHdlcmUgYSBzaGVsbCBzY3JpcHQsIGUuZy4gYGBzaCBzZXR1cHRvb2xzLTAuNmM5LXB5Mi40LmVnZ2BgLgorICAgICAgICBTZXR1cHRvb2xzIHdpbGwgaW5zdGFsbCBpdHNlbGYgdXNpbmcgdGhlIG1hdGNoaW5nIHZlcnNpb24gb2YgUHl0aG9uIChlLmcuCisgICAgICAgIGBgcHl0aG9uMi40YGApLCBhbmQgd2lsbCBwbGFjZSB0aGUgYGBlYXN5X2luc3RhbGxgYCBleGVjdXRhYmxlIGluIHRoZQorICAgICAgICBkZWZhdWx0IGxvY2F0aW9uIGZvciBpbnN0YWxsaW5nIFB5dGhvbiBzY3JpcHRzIChhcyBkZXRlcm1pbmVkIGJ5IHRoZQorICAgICAgICBzdGFuZGFyZCBkaXN0dXRpbHMgY29uZmlndXJhdGlvbiBmaWxlcywgb3IgYnkgdGhlIFB5dGhvbiBpbnN0YWxsYXRpb24pLgorCisgICAgICAgIElmIHlvdSB3YW50IHRvIGluc3RhbGwgc2V0dXB0b29scyB0byBzb21ld2hlcmUgb3RoZXIgdGhhbiBgYHNpdGUtcGFja2FnZXNgYCBvcgorICAgICAgICB5b3VyIGRlZmF1bHQgZGlzdHV0aWxzIGluc3RhbGxhdGlvbiBsb2NhdGlvbnMgZm9yIGxpYnJhcmllcyBhbmQgc2NyaXB0cywgeW91CisgICAgICAgIG1heSBpbmNsdWRlIEVhc3lJbnN0YWxsIGNvbW1hbmQtbGluZSBvcHRpb25zIHN1Y2ggYXMgYGAtLXByZWZpeGBgLAorICAgICAgICBgYC0taW5zdGFsbC1kaXJgYCwgYW5kIHNvIG9uLCBmb2xsb3dpbmcgdGhlIGBgLmVnZ2BgIGZpbGVuYW1lIG9uIHRoZSBzYW1lCisgICAgICAgIGNvbW1hbmQgbGluZS4gIEZvciBleGFtcGxlOjoKKworICAgICAgICBzaCBzZXR1cHRvb2xzLTAuNmM5LXB5Mi40LmVnZyAtLXByZWZpeD1+CisKKyAgICAgICAgWW91IGNhbiB1c2UgYGAtLWhlbHBgYCB0byBnZXQgYSBmdWxsIG9wdGlvbnMgbGlzdCwgYnV0IHdlIHJlY29tbWVuZCBjb25zdWx0aW5nCisgICAgICAgIHRoZSBgRWFzeUluc3RhbGwgbWFudWFsYF8gZm9yIGRldGFpbGVkIGluc3RydWN0aW9ucywgZXNwZWNpYWxseSBgdGhlIHNlY3Rpb24KKyAgICAgICAgb24gY3VzdG9tIGluc3RhbGxhdGlvbiBsb2NhdGlvbnNgXy4KKworICAgICAgICAuLiBfRWFzeUluc3RhbGwgbWFudWFsOiBodHRwOi8vcGVhay50ZWxlY29tbXVuaXR5LmNvbS9EZXZDZW50ZXIvRWFzeUluc3RhbGwKKyAgICAgICAgLi4gX3RoZSBzZWN0aW9uIG9uIGN1c3RvbSBpbnN0YWxsYXRpb24gbG9jYXRpb25zOiBodHRwOi8vcGVhay50ZWxlY29tbXVuaXR5LmNvbS9EZXZDZW50ZXIvRWFzeUluc3RhbGwjY3VzdG9tLWluc3RhbGxhdGlvbi1sb2NhdGlvbnMKKworCisgICAgICAgIEN5Z3dpbiBOb3RlCisgICAgICAgIC0tLS0tLS0tLS0tCisKKyAgICAgICAgSWYgeW91IGFyZSB0cnlpbmcgdG8gaW5zdGFsbCBzZXR1cHRvb2xzIGZvciB0aGUgKipXaW5kb3dzKiogdmVyc2lvbiBvZiBQeXRob24KKyAgICAgICAgKGFzIG9wcG9zZWQgdG8gdGhlIEN5Z3dpbiB2ZXJzaW9uIHRoYXQgbGl2ZXMgaW4gYGAvdXNyL2JpbmBgKSwgeW91IG11c3QgbWFrZQorICAgICAgICBzdXJlIHRoYXQgYW4gYXBwcm9wcmlhdGUgZXhlY3V0YWJsZSAoYGBweXRob24yLjNgYCwgYGBweXRob24yLjRgYCwgb3IKKyAgICAgICAgYGBweXRob24yLjVgYCkgaXMgb24geW91ciAqKkN5Z3dpbioqIGBgUEFUSGBgIHdoZW4gaW52b2tpbmcgdGhlIGVnZy4gIEZvcgorICAgICAgICBleGFtcGxlLCBkb2luZyB0aGUgZm9sbG93aW5nIGF0IGEgQ3lnd2luIGJhc2ggcHJvbXB0IHdpbGwgaW5zdGFsbCBzZXR1cHRvb2xzCisgICAgICAgIGZvciB0aGUgKipXaW5kb3dzKiogUHl0aG9uIGZvdW5kIGF0IGBgQzpcXFB5dGhvbjI0YGA6OgorCisgICAgICAgIGxuIC1zIC9jeWdkcml2ZS9jL1B5dGhvbjI0L3B5dGhvbi5leGUgcHl0aG9uMi40CisgICAgICAgIFBBVEg9LjokUEFUSCBzaCBzZXR1cHRvb2xzLTAuNmM5LXB5Mi40LmVnZworICAgICAgICBybSBweXRob24yLjQKKworCisgICAgICAgIERvd25sb2FkcworICAgICAgICA9PT09PT09PT0KKworICAgICAgICBBbGwgc2V0dXB0b29scyBkb3dubG9hZHMgY2FuIGJlIGZvdW5kIGF0IGB0aGUgcHJvamVjdCdzIGhvbWUgcGFnZSBpbiB0aGUgUHl0aG9uCisgICAgICAgIFBhY2thZ2UgSW5kZXhgXy4gIFNjcm9sbCB0byB0aGUgdmVyeSBib3R0b20gb2YgdGhlIHBhZ2UgdG8gZmluZCB0aGUgbGlua3MuCisKKyAgICAgICAgLi4gX3RoZSBwcm9qZWN0J3MgaG9tZSBwYWdlIGluIHRoZSBQeXRob24gUGFja2FnZSBJbmRleDogaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpL3NldHVwdG9vbHMKKworICAgICAgICBJbiBhZGRpdGlvbiB0byB0aGUgUHlQSSBkb3dubG9hZHMsIHRoZSBkZXZlbG9wbWVudCB2ZXJzaW9uIG9mIGBgc2V0dXB0b29sc2BgCisgICAgICAgIGlzIGF2YWlsYWJsZSBmcm9tIHRoZSBgUHl0aG9uIFNWTiBzYW5kYm94YF8sIGFuZCBpbi1kZXZlbG9wbWVudCB2ZXJzaW9ucyBvZiB0aGUKKyAgICAgICAgYDAuNiBicmFuY2hgXyBhcmUgYXZhaWxhYmxlIGFzIHdlbGwuCisKKyAgICAgICAgLi4gXzAuNiBicmFuY2g6IGh0dHA6Ly9zdm4ucHl0aG9uLm9yZy9wcm9qZWN0cy9zYW5kYm94L2JyYW5jaGVzL3NldHVwdG9vbHMtMC42LyNlZ2c9c2V0dXB0b29scy1kZXYwNgorCisgICAgICAgIC4uIF9QeXRob24gU1ZOIHNhbmRib3g6IGh0dHA6Ly9zdm4ucHl0aG9uLm9yZy9wcm9qZWN0cy9zYW5kYm94L3RydW5rL3NldHVwdG9vbHMvI2VnZz1zZXR1cHRvb2xzLWRldgorCisgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgIFVzaW5nIFNldHVwdG9vbHMgYW5kIEVhc3lJbnN0YWxsCisgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICAgICAgSGVyZSBhcmUgc29tZSBvZiB0aGUgYXZhaWxhYmxlIG1hbnVhbHMsIHR1dG9yaWFscywgYW5kIG90aGVyIHJlc291cmNlcyBmb3IKKyAgICAgICAgbGVhcm5pbmcgYWJvdXQgU2V0dXB0b29scywgUHl0aG9uIEVnZ3MsIGFuZCBFYXN5SW5zdGFsbDoKKworICAgICAgICAqIGBUaGUgRWFzeUluc3RhbGwgdXNlcidzIGd1aWRlIGFuZCByZWZlcmVuY2UgbWFudWFsYF8KKyAgICAgICAgKiBgVGhlIHNldHVwdG9vbHMgRGV2ZWxvcGVyJ3MgR3VpZGVgXworICAgICAgICAqIGBUaGUgcGtnX3Jlc291cmNlcyBBUEkgcmVmZXJlbmNlYF8KKyAgICAgICAgKiBgUGFja2FnZSBDb21wYXRpYmlsaXR5IE5vdGVzYF8gKHVzZXItbWFpbnRhaW5lZCkKKyAgICAgICAgKiBgVGhlIEludGVybmFsIFN0cnVjdHVyZSBvZiBQeXRob24gRWdnc2BfCisKKyAgICAgICAgUXVlc3Rpb25zLCBjb21tZW50cywgYW5kIGJ1ZyByZXBvcnRzIHNob3VsZCBiZSBkaXJlY3RlZCB0byB0aGUgYGRpc3R1dGlscy1zaWcKKyAgICAgICAgbWFpbGluZyBsaXN0YF8uICBJZiB5b3UgaGF2ZSB3cml0dGVuIChvciBrbm93IG9mKSBhbnkgdHV0b3JpYWxzLCBkb2N1bWVudGF0aW9uLAorICAgICAgICBwbHVnLWlucywgb3Igb3RoZXIgcmVzb3VyY2VzIGZvciBzZXR1cHRvb2xzIHVzZXJzLCBwbGVhc2UgbGV0IHVzIGtub3cgYWJvdXQKKyAgICAgICAgdGhlbSB0aGVyZSwgc28gdGhpcyByZWZlcmVuY2UgbGlzdCBjYW4gYmUgdXBkYXRlZC4gIElmIHlvdSBoYXZlIHdvcmtpbmcsCisgICAgICAgICp0ZXN0ZWQqIHBhdGNoZXMgdG8gY29ycmVjdCBwcm9ibGVtcyBvciBhZGQgZmVhdHVyZXMsIHlvdSBtYXkgc3VibWl0IHRoZW0gdG8KKyAgICAgICAgdGhlIGBzZXR1cHRvb2xzIGJ1ZyB0cmFja2VyYF8uCisKKyAgICAgICAgLi4gX3NldHVwdG9vbHMgYnVnIHRyYWNrZXI6IGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvc2V0dXB0b29scy8KKyAgICAgICAgLi4gX1BhY2thZ2UgQ29tcGF0aWJpbGl0eSBOb3RlczogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL1BhY2thZ2VOb3RlcworICAgICAgICAuLiBfVGhlIEludGVybmFsIFN0cnVjdHVyZSBvZiBQeXRob24gRWdnczogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL0VnZ0Zvcm1hdHMKKyAgICAgICAgLi4gX1RoZSBzZXR1cHRvb2xzIERldmVsb3BlcidzIEd1aWRlOiBodHRwOi8vcGVhay50ZWxlY29tbXVuaXR5LmNvbS9EZXZDZW50ZXIvc2V0dXB0b29scworICAgICAgICAuLiBfVGhlIHBrZ19yZXNvdXJjZXMgQVBJIHJlZmVyZW5jZTogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL1BrZ1Jlc291cmNlcworICAgICAgICAuLiBfVGhlIEVhc3lJbnN0YWxsIHVzZXIncyBndWlkZSBhbmQgcmVmZXJlbmNlIG1hbnVhbDogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL0Vhc3lJbnN0YWxsCisgICAgICAgIC4uIF9kaXN0dXRpbHMtc2lnIG1haWxpbmcgbGlzdDogaHR0cDovL21haWwucHl0aG9uLm9yZy9waXBlcm1haWwvZGlzdHV0aWxzLXNpZy8KKworCisgICAgICAgIC0tLS0tLS0KKyAgICAgICAgQ3JlZGl0cworICAgICAgICAtLS0tLS0tCisKKyAgICAgICAgKiBUaGUgb3JpZ2luYWwgZGVzaWduIGZvciB0aGUgYGAuZWdnYGAgZm9ybWF0IGFuZCB0aGUgYGBwa2dfcmVzb3VyY2VzYGAgQVBJIHdhcworICAgICAgICBjby1jcmVhdGVkIGJ5IFBoaWxsaXAgRWJ5IGFuZCBCb2IgSXBwb2xpdG8uICBCb2IgYWxzbyBpbXBsZW1lbnRlZCB0aGUgZmlyc3QKKyAgICAgICAgdmVyc2lvbiBvZiBgYHBrZ19yZXNvdXJjZXNgYCwgYW5kIHN1cHBsaWVkIHRoZSBPUyBYIG9wZXJhdGluZyBzeXN0ZW0gdmVyc2lvbgorICAgICAgICBjb21wYXRpYmlsaXR5IGFsZ29yaXRobS4KKworICAgICAgICAqIElhbiBCaWNraW5nIGltcGxlbWVudGVkIG1hbnkgZWFybHkgImNyZWF0dXJlIGNvbWZvcnQiIGZlYXR1cmVzIG9mCisgICAgICAgIGVhc3lfaW5zdGFsbCwgaW5jbHVkaW5nIHN1cHBvcnQgZm9yIGRvd25sb2FkaW5nIHZpYSBTb3VyY2Vmb3JnZSBhbmQKKyAgICAgICAgU3VidmVyc2lvbiByZXBvc2l0b3JpZXMuICBJYW4ncyBjb21tZW50cyBvbiB0aGUgV2ViLVNJRyBhYm91dCBXU0dJCisgICAgICAgIGFwcGxpY2F0aW9uIGRlcGxveW1lbnQgYWxzbyBpbnNwaXJlZCB0aGUgY29uY2VwdCBvZiAiZW50cnkgcG9pbnRzIiBpbiBlZ2dzLAorICAgICAgICBhbmQgaGUgaGFzIGdpdmVuIHRhbGtzIGF0IFB5Q29uIGFuZCBlbHNld2hlcmUgdG8gaW5mb3JtIGFuZCBlZHVjYXRlIHRoZQorICAgICAgICBjb21tdW5pdHkgYWJvdXQgZWdncyBhbmQgc2V0dXB0b29scy4KKworICAgICAgICAqIEppbSBGdWx0b24gY29udHJpYnV0ZWQgdGltZSBhbmQgZWZmb3J0IHRvIGJ1aWxkIGF1dG9tYXRlZCB0ZXN0cyBvZiB2YXJpb3VzCisgICAgICAgIGFzcGVjdHMgb2YgYGBlYXN5X2luc3RhbGxgYCwgYW5kIHN1cHBsaWVkIHRoZSBkb2N0ZXN0cyBmb3IgdGhlIGNvbW1hbmQtbGluZQorICAgICAgICBgYC5leGVgYCB3cmFwcGVycyBvbiBXaW5kb3dzLgorCisgICAgICAgICogUGhpbGxpcCBKLiBFYnkgaXMgdGhlIHByaW5jaXBhbCBhdXRob3IgYW5kIG1haW50YWluZXIgb2Ygc2V0dXB0b29scywgYW5kCisgICAgICAgIGZpcnN0IHByb3Bvc2VkIHRoZSBpZGVhIG9mIGFuIGltcG9ydGFibGUgYmluYXJ5IGRpc3RyaWJ1dGlvbiBmb3JtYXQgZm9yCisgICAgICAgIFB5dGhvbiBhcHBsaWNhdGlvbiBwbHVnLWlucy4KKworICAgICAgICAqIFNpZ25pZmljYW50IHBhcnRzIG9mIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBzZXR1cHRvb2xzIHdlcmUgZnVuZGVkIGJ5IHRoZSBPcGVuCisgICAgICAgIFNvdXJjZSBBcHBsaWNhdGlvbnMgRm91bmRhdGlvbiwgdG8gcHJvdmlkZSBhIHBsdWctaW4gaW5mcmFzdHJ1Y3R1cmUgZm9yIHRoZQorICAgICAgICBDaGFuZGxlciBQSU0gYXBwbGljYXRpb24uICBJbiBhZGRpdGlvbiwgbWFueSBPU0FGIHN0YWZmZXJzIChzdWNoIGFzIE1pa2UKKyAgICAgICAgIkNvZGUgQmVhciIgVGF5bG9yKSBjb250cmlidXRlZCB0aGVpciB0aW1lIGFuZCBzdHJlc3MgYXMgZ3VpbmVhIHBpZ3MgZm9yIHRoZQorICAgICAgICB1c2Ugb2YgZWdncyBhbmQgc2V0dXB0b29scywgZXZlbiBiZWZvcmUgZWdncyB3ZXJlICJjb29sIi4gIChUaGFua3MsIGd1eXMhKQorCisKK0tleXdvcmRzOiBDUEFOIFB5UEkgZGlzdHV0aWxzIGVnZ3MgcGFja2FnZSBtYW5hZ2VtZW50CitQbGF0Zm9ybTogVU5LTk9XTgorQ2xhc3NpZmllcjogRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDMgLSBBbHBoYQorQ2xhc3NpZmllcjogSW50ZW5kZWQgQXVkaWVuY2UgOjogRGV2ZWxvcGVycworQ2xhc3NpZmllcjogTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogUHl0aG9uIFNvZnR3YXJlIEZvdW5kYXRpb24gTGljZW5zZQorQ2xhc3NpZmllcjogTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogWm9wZSBQdWJsaWMgTGljZW5zZQorQ2xhc3NpZmllcjogT3BlcmF0aW5nIFN5c3RlbSA6OiBPUyBJbmRlcGVuZGVudAorQ2xhc3NpZmllcjogUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uCitDbGFzc2lmaWVyOiBUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMgOjogUHl0aG9uIE1vZHVsZXMKK0NsYXNzaWZpZXI6IFRvcGljIDo6IFN5c3RlbSA6OiBBcmNoaXZpbmcgOjogUGFja2FnaW5nCitDbGFzc2lmaWVyOiBUb3BpYyA6OiBTeXN0ZW0gOjogU3lzdGVtcyBBZG1pbmlzdHJhdGlvbgorQ2xhc3NpZmllcjogVG9waWMgOjogVXRpbGl0aWVzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL1NFVFVQVE9PTFMtUEtHLUlORk8yIGIvTGliL3BhY2thZ2luZy90ZXN0cy9TRVRVUFRPT0xTLVBLRy1JTkZPMgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjM5MDZhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9TRVRVUFRPT0xTLVBLRy1JTkZPMgpAQCAtMCwwICsxLDE4MyBAQAorTWV0YWRhdGEtVmVyc2lvbjogMS4xCitOYW1lOiBzZXR1cHRvb2xzCitWZXJzaW9uOiAwLjZjOQorU3VtbWFyeTogRG93bmxvYWQsIGJ1aWxkLCBpbnN0YWxsLCB1cGdyYWRlLCBhbmQgdW5pbnN0YWxsIFB5dGhvbiBwYWNrYWdlcyAtLSBlYXNpbHkhCitIb21lLXBhZ2U6IGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaS9zZXR1cHRvb2xzCitBdXRob3I6IFBoaWxsaXAgSi4gRWJ5CitBdXRob3ItZW1haWw6IGRpc3R1dGlscy1zaWdAcHl0aG9uLm9yZworTGljZW5zZTogUFNGIG9yIFpQTAorRGVzY3JpcHRpb246ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAgICAgICAgSW5zdGFsbGluZyBhbmQgVXNpbmcgU2V0dXB0b29scworICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKyAgICAgICAgLi4gY29udGVudHM6OiAqKlRhYmxlIG9mIENvbnRlbnRzKioKKworCisgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgSW5zdGFsbGF0aW9uIEluc3RydWN0aW9ucworICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICAgICAgV2luZG93cworICAgICAgICA9PT09PT09CisKKyAgICAgICAgSW5zdGFsbCBzZXR1cHRvb2xzIHVzaW5nIHRoZSBwcm92aWRlZCBgYC5leGVgYCBpbnN0YWxsZXIuICBJZiB5b3UndmUgcHJldmlvdXNseQorICAgICAgICBpbnN0YWxsZWQgb2xkZXIgdmVyc2lvbnMgb2Ygc2V0dXB0b29scywgcGxlYXNlIGRlbGV0ZSBhbGwgYGBzZXR1cHRvb2xzKi5lZ2dgYAorICAgICAgICBhbmQgYGBzZXR1cHRvb2xzLnB0aGBgIGZpbGVzIGZyb20geW91ciBzeXN0ZW0ncyBgYHNpdGUtcGFja2FnZXNgYCBkaXJlY3RvcnkKKyAgICAgICAgKGFuZCBhbnkgb3RoZXIgYGBzeXMucGF0aGBgIGRpcmVjdG9yaWVzKSBGSVJTVC4KKworICAgICAgICBJZiB5b3UgYXJlIHVwZ3JhZGluZyBhIHByZXZpb3VzIHZlcnNpb24gb2Ygc2V0dXB0b29scyB0aGF0IHdhcyBpbnN0YWxsZWQgdXNpbmcKKyAgICAgICAgYW4gYGAuZXhlYGAgaW5zdGFsbGVyLCBwbGVhc2UgYmUgc3VyZSB0byBhbHNvICp1bmluc3RhbGwgdGhhdCBvbGRlciB2ZXJzaW9uKgorICAgICAgICB2aWEgeW91ciBzeXN0ZW0ncyAiQWRkL1JlbW92ZSBQcm9ncmFtcyIgZmVhdHVyZSwgQkVGT1JFIGluc3RhbGxpbmcgdGhlIG5ld2VyCisgICAgICAgIHZlcnNpb24uCisKKyAgICAgICAgT25jZSBpbnN0YWxsYXRpb24gaXMgY29tcGxldGUsIHlvdSB3aWxsIGZpbmQgYW4gYGBlYXN5X2luc3RhbGwuZXhlYGAgcHJvZ3JhbSBpbgorICAgICAgICB5b3VyIFB5dGhvbiBgYFNjcmlwdHNgYCBzdWJkaXJlY3RvcnkuICBCZSBzdXJlIHRvIGFkZCB0aGlzIGRpcmVjdG9yeSB0byB5b3VyCisgICAgICAgIGBgUEFUSGBgIGVudmlyb25tZW50IHZhcmlhYmxlLCBpZiB5b3UgaGF2ZW4ndCBhbHJlYWR5IGRvbmUgc28uCisKKworICAgICAgICBSUE0tQmFzZWQgU3lzdGVtcworICAgICAgICA9PT09PT09PT09PT09PT09PQorCisgICAgICAgIEluc3RhbGwgc2V0dXB0b29scyB1c2luZyB0aGUgcHJvdmlkZWQgc291cmNlIFJQTS4gIFRoZSBpbmNsdWRlZCBgYC5zcGVjYGAgZmlsZQorICAgICAgICBhc3N1bWVzIHlvdSBhcmUgaW5zdGFsbGluZyB1c2luZyB0aGUgZGVmYXVsdCBgYHB5dGhvbmBgIGV4ZWN1dGFibGUsIGFuZCBpcyBub3QKKyAgICAgICAgc3BlY2lmaWMgdG8gYSBwYXJ0aWN1bGFyIFB5dGhvbiB2ZXJzaW9uLiAgVGhlIGBgZWFzeV9pbnN0YWxsYGAgZXhlY3V0YWJsZSB3aWxsCisgICAgICAgIGJlIGluc3RhbGxlZCB0byBhIHN5c3RlbSBgYGJpbmBgIGRpcmVjdG9yeSBzdWNoIGFzIGBgL3Vzci9iaW5gYC4KKworICAgICAgICBJZiB5b3Ugd2lzaCB0byBpbnN0YWxsIHRvIGEgbG9jYXRpb24gb3RoZXIgdGhhbiB0aGUgZGVmYXVsdCBQeXRob24KKyAgICAgICAgaW5zdGFsbGF0aW9uJ3MgZGVmYXVsdCBgYHNpdGUtcGFja2FnZXNgYCBkaXJlY3RvcnkgKGFuZCBgYCRwcmVmaXgvYmluYGAgZm9yCisgICAgICAgIHNjcmlwdHMpLCBwbGVhc2UgdXNlIHRoZSBgYC5lZ2dgYC1iYXNlZCBpbnN0YWxsYXRpb24gYXBwcm9hY2ggZGVzY3JpYmVkIGluIHRoZQorICAgICAgICBmb2xsb3dpbmcgc2VjdGlvbi4KKworCisgICAgICAgIEN5Z3dpbiwgTWFjIE9TIFgsIExpbnV4LCBPdGhlcgorICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgICAgICAxLiBEb3dubG9hZCB0aGUgYXBwcm9wcmlhdGUgZWdnIGZvciB5b3VyIHZlcnNpb24gb2YgUHl0aG9uIChlLmcuCisgICAgICAgIGBgc2V0dXB0b29scy0wLjZjOS1weTIuNC5lZ2dgYCkuICBEbyBOT1QgcmVuYW1lIGl0LgorCisgICAgICAgIDIuIFJ1biBpdCBhcyBpZiBpdCB3ZXJlIGEgc2hlbGwgc2NyaXB0LCBlLmcuIGBgc2ggc2V0dXB0b29scy0wLjZjOS1weTIuNC5lZ2dgYC4KKyAgICAgICAgU2V0dXB0b29scyB3aWxsIGluc3RhbGwgaXRzZWxmIHVzaW5nIHRoZSBtYXRjaGluZyB2ZXJzaW9uIG9mIFB5dGhvbiAoZS5nLgorICAgICAgICBgYHB5dGhvbjIuNGBgKSwgYW5kIHdpbGwgcGxhY2UgdGhlIGBgZWFzeV9pbnN0YWxsYGAgZXhlY3V0YWJsZSBpbiB0aGUKKyAgICAgICAgZGVmYXVsdCBsb2NhdGlvbiBmb3IgaW5zdGFsbGluZyBQeXRob24gc2NyaXB0cyAoYXMgZGV0ZXJtaW5lZCBieSB0aGUKKyAgICAgICAgc3RhbmRhcmQgZGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24gZmlsZXMsIG9yIGJ5IHRoZSBQeXRob24gaW5zdGFsbGF0aW9uKS4KKworICAgICAgICBJZiB5b3Ugd2FudCB0byBpbnN0YWxsIHNldHVwdG9vbHMgdG8gc29tZXdoZXJlIG90aGVyIHRoYW4gYGBzaXRlLXBhY2thZ2VzYGAgb3IKKyAgICAgICAgeW91ciBkZWZhdWx0IGRpc3R1dGlscyBpbnN0YWxsYXRpb24gbG9jYXRpb25zIGZvciBsaWJyYXJpZXMgYW5kIHNjcmlwdHMsIHlvdQorICAgICAgICBtYXkgaW5jbHVkZSBFYXN5SW5zdGFsbCBjb21tYW5kLWxpbmUgb3B0aW9ucyBzdWNoIGFzIGBgLS1wcmVmaXhgYCwKKyAgICAgICAgYGAtLWluc3RhbGwtZGlyYGAsIGFuZCBzbyBvbiwgZm9sbG93aW5nIHRoZSBgYC5lZ2dgYCBmaWxlbmFtZSBvbiB0aGUgc2FtZQorICAgICAgICBjb21tYW5kIGxpbmUuICBGb3IgZXhhbXBsZTo6CisKKyAgICAgICAgc2ggc2V0dXB0b29scy0wLjZjOS1weTIuNC5lZ2cgLS1wcmVmaXg9fgorCisgICAgICAgIFlvdSBjYW4gdXNlIGBgLS1oZWxwYGAgdG8gZ2V0IGEgZnVsbCBvcHRpb25zIGxpc3QsIGJ1dCB3ZSByZWNvbW1lbmQgY29uc3VsdGluZworICAgICAgICB0aGUgYEVhc3lJbnN0YWxsIG1hbnVhbGBfIGZvciBkZXRhaWxlZCBpbnN0cnVjdGlvbnMsIGVzcGVjaWFsbHkgYHRoZSBzZWN0aW9uCisgICAgICAgIG9uIGN1c3RvbSBpbnN0YWxsYXRpb24gbG9jYXRpb25zYF8uCisKKyAgICAgICAgLi4gX0Vhc3lJbnN0YWxsIG1hbnVhbDogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL0Vhc3lJbnN0YWxsCisgICAgICAgIC4uIF90aGUgc2VjdGlvbiBvbiBjdXN0b20gaW5zdGFsbGF0aW9uIGxvY2F0aW9uczogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL0Vhc3lJbnN0YWxsI2N1c3RvbS1pbnN0YWxsYXRpb24tbG9jYXRpb25zCisKKworICAgICAgICBDeWd3aW4gTm90ZQorICAgICAgICAtLS0tLS0tLS0tLQorCisgICAgICAgIElmIHlvdSBhcmUgdHJ5aW5nIHRvIGluc3RhbGwgc2V0dXB0b29scyBmb3IgdGhlICoqV2luZG93cyoqIHZlcnNpb24gb2YgUHl0aG9uCisgICAgICAgIChhcyBvcHBvc2VkIHRvIHRoZSBDeWd3aW4gdmVyc2lvbiB0aGF0IGxpdmVzIGluIGBgL3Vzci9iaW5gYCksIHlvdSBtdXN0IG1ha2UKKyAgICAgICAgc3VyZSB0aGF0IGFuIGFwcHJvcHJpYXRlIGV4ZWN1dGFibGUgKGBgcHl0aG9uMi4zYGAsIGBgcHl0aG9uMi40YGAsIG9yCisgICAgICAgIGBgcHl0aG9uMi41YGApIGlzIG9uIHlvdXIgKipDeWd3aW4qKiBgYFBBVEhgYCB3aGVuIGludm9raW5nIHRoZSBlZ2cuICBGb3IKKyAgICAgICAgZXhhbXBsZSwgZG9pbmcgdGhlIGZvbGxvd2luZyBhdCBhIEN5Z3dpbiBiYXNoIHByb21wdCB3aWxsIGluc3RhbGwgc2V0dXB0b29scworICAgICAgICBmb3IgdGhlICoqV2luZG93cyoqIFB5dGhvbiBmb3VuZCBhdCBgYEM6XFxQeXRob24yNGBgOjoKKworICAgICAgICBsbiAtcyAvY3lnZHJpdmUvYy9QeXRob24yNC9weXRob24uZXhlIHB5dGhvbjIuNAorICAgICAgICBQQVRIPS46JFBBVEggc2ggc2V0dXB0b29scy0wLjZjOS1weTIuNC5lZ2cKKyAgICAgICAgcm0gcHl0aG9uMi40CisKKworICAgICAgICBEb3dubG9hZHMKKyAgICAgICAgPT09PT09PT09CisKKyAgICAgICAgQWxsIHNldHVwdG9vbHMgZG93bmxvYWRzIGNhbiBiZSBmb3VuZCBhdCBgdGhlIHByb2plY3QncyBob21lIHBhZ2UgaW4gdGhlIFB5dGhvbgorICAgICAgICBQYWNrYWdlIEluZGV4YF8uICBTY3JvbGwgdG8gdGhlIHZlcnkgYm90dG9tIG9mIHRoZSBwYWdlIHRvIGZpbmQgdGhlIGxpbmtzLgorCisgICAgICAgIC4uIF90aGUgcHJvamVjdCdzIGhvbWUgcGFnZSBpbiB0aGUgUHl0aG9uIFBhY2thZ2UgSW5kZXg6IGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaS9zZXR1cHRvb2xzCisKKyAgICAgICAgSW4gYWRkaXRpb24gdG8gdGhlIFB5UEkgZG93bmxvYWRzLCB0aGUgZGV2ZWxvcG1lbnQgdmVyc2lvbiBvZiBgYHNldHVwdG9vbHNgYAorICAgICAgICBpcyBhdmFpbGFibGUgZnJvbSB0aGUgYFB5dGhvbiBTVk4gc2FuZGJveGBfLCBhbmQgaW4tZGV2ZWxvcG1lbnQgdmVyc2lvbnMgb2YgdGhlCisgICAgICAgIGAwLjYgYnJhbmNoYF8gYXJlIGF2YWlsYWJsZSBhcyB3ZWxsLgorCisgICAgICAgIC4uIF8wLjYgYnJhbmNoOiBodHRwOi8vc3ZuLnB5dGhvbi5vcmcvcHJvamVjdHMvc2FuZGJveC9icmFuY2hlcy9zZXR1cHRvb2xzLTAuNi8jZWdnPXNldHVwdG9vbHMtZGV2MDYKKworICAgICAgICAuLiBfUHl0aG9uIFNWTiBzYW5kYm94OiBodHRwOi8vc3ZuLnB5dGhvbi5vcmcvcHJvamVjdHMvc2FuZGJveC90cnVuay9zZXR1cHRvb2xzLyNlZ2c9c2V0dXB0b29scy1kZXYKKworICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICBVc2luZyBTZXR1cHRvb2xzIGFuZCBFYXN5SW5zdGFsbAorICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgICAgIEhlcmUgYXJlIHNvbWUgb2YgdGhlIGF2YWlsYWJsZSBtYW51YWxzLCB0dXRvcmlhbHMsIGFuZCBvdGhlciByZXNvdXJjZXMgZm9yCisgICAgICAgIGxlYXJuaW5nIGFib3V0IFNldHVwdG9vbHMsIFB5dGhvbiBFZ2dzLCBhbmQgRWFzeUluc3RhbGw6CisKKyAgICAgICAgKiBgVGhlIEVhc3lJbnN0YWxsIHVzZXIncyBndWlkZSBhbmQgcmVmZXJlbmNlIG1hbnVhbGBfCisgICAgICAgICogYFRoZSBzZXR1cHRvb2xzIERldmVsb3BlcidzIEd1aWRlYF8KKyAgICAgICAgKiBgVGhlIHBrZ19yZXNvdXJjZXMgQVBJIHJlZmVyZW5jZWBfCisgICAgICAgICogYFBhY2thZ2UgQ29tcGF0aWJpbGl0eSBOb3Rlc2BfICh1c2VyLW1haW50YWluZWQpCisgICAgICAgICogYFRoZSBJbnRlcm5hbCBTdHJ1Y3R1cmUgb2YgUHl0aG9uIEVnZ3NgXworCisgICAgICAgIFF1ZXN0aW9ucywgY29tbWVudHMsIGFuZCBidWcgcmVwb3J0cyBzaG91bGQgYmUgZGlyZWN0ZWQgdG8gdGhlIGBkaXN0dXRpbHMtc2lnCisgICAgICAgIG1haWxpbmcgbGlzdGBfLiAgSWYgeW91IGhhdmUgd3JpdHRlbiAob3Iga25vdyBvZikgYW55IHR1dG9yaWFscywgZG9jdW1lbnRhdGlvbiwKKyAgICAgICAgcGx1Zy1pbnMsIG9yIG90aGVyIHJlc291cmNlcyBmb3Igc2V0dXB0b29scyB1c2VycywgcGxlYXNlIGxldCB1cyBrbm93IGFib3V0CisgICAgICAgIHRoZW0gdGhlcmUsIHNvIHRoaXMgcmVmZXJlbmNlIGxpc3QgY2FuIGJlIHVwZGF0ZWQuICBJZiB5b3UgaGF2ZSB3b3JraW5nLAorICAgICAgICAqdGVzdGVkKiBwYXRjaGVzIHRvIGNvcnJlY3QgcHJvYmxlbXMgb3IgYWRkIGZlYXR1cmVzLCB5b3UgbWF5IHN1Ym1pdCB0aGVtIHRvCisgICAgICAgIHRoZSBgc2V0dXB0b29scyBidWcgdHJhY2tlcmBfLgorCisgICAgICAgIC4uIF9zZXR1cHRvb2xzIGJ1ZyB0cmFja2VyOiBodHRwOi8vYnVncy5weXRob24ub3JnL3NldHVwdG9vbHMvCisgICAgICAgIC4uIF9QYWNrYWdlIENvbXBhdGliaWxpdHkgTm90ZXM6IGh0dHA6Ly9wZWFrLnRlbGVjb21tdW5pdHkuY29tL0RldkNlbnRlci9QYWNrYWdlTm90ZXMKKyAgICAgICAgLi4gX1RoZSBJbnRlcm5hbCBTdHJ1Y3R1cmUgb2YgUHl0aG9uIEVnZ3M6IGh0dHA6Ly9wZWFrLnRlbGVjb21tdW5pdHkuY29tL0RldkNlbnRlci9FZ2dGb3JtYXRzCisgICAgICAgIC4uIF9UaGUgc2V0dXB0b29scyBEZXZlbG9wZXIncyBHdWlkZTogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL3NldHVwdG9vbHMKKyAgICAgICAgLi4gX1RoZSBwa2dfcmVzb3VyY2VzIEFQSSByZWZlcmVuY2U6IGh0dHA6Ly9wZWFrLnRlbGVjb21tdW5pdHkuY29tL0RldkNlbnRlci9Qa2dSZXNvdXJjZXMKKyAgICAgICAgLi4gX1RoZSBFYXN5SW5zdGFsbCB1c2VyJ3MgZ3VpZGUgYW5kIHJlZmVyZW5jZSBtYW51YWw6IGh0dHA6Ly9wZWFrLnRlbGVjb21tdW5pdHkuY29tL0RldkNlbnRlci9FYXN5SW5zdGFsbAorICAgICAgICAuLiBfZGlzdHV0aWxzLXNpZyBtYWlsaW5nIGxpc3Q6IGh0dHA6Ly9tYWlsLnB5dGhvbi5vcmcvcGlwZXJtYWlsL2Rpc3R1dGlscy1zaWcvCisKKworICAgICAgICAtLS0tLS0tCisgICAgICAgIENyZWRpdHMKKyAgICAgICAgLS0tLS0tLQorCisgICAgICAgICogVGhlIG9yaWdpbmFsIGRlc2lnbiBmb3IgdGhlIGBgLmVnZ2BgIGZvcm1hdCBhbmQgdGhlIGBgcGtnX3Jlc291cmNlc2BgIEFQSSB3YXMKKyAgICAgICAgY28tY3JlYXRlZCBieSBQaGlsbGlwIEVieSBhbmQgQm9iIElwcG9saXRvLiAgQm9iIGFsc28gaW1wbGVtZW50ZWQgdGhlIGZpcnN0CisgICAgICAgIHZlcnNpb24gb2YgYGBwa2dfcmVzb3VyY2VzYGAsIGFuZCBzdXBwbGllZCB0aGUgT1MgWCBvcGVyYXRpbmcgc3lzdGVtIHZlcnNpb24KKyAgICAgICAgY29tcGF0aWJpbGl0eSBhbGdvcml0aG0uCisKKyAgICAgICAgKiBJYW4gQmlja2luZyBpbXBsZW1lbnRlZCBtYW55IGVhcmx5ICJjcmVhdHVyZSBjb21mb3J0IiBmZWF0dXJlcyBvZgorICAgICAgICBlYXN5X2luc3RhbGwsIGluY2x1ZGluZyBzdXBwb3J0IGZvciBkb3dubG9hZGluZyB2aWEgU291cmNlZm9yZ2UgYW5kCisgICAgICAgIFN1YnZlcnNpb24gcmVwb3NpdG9yaWVzLiAgSWFuJ3MgY29tbWVudHMgb24gdGhlIFdlYi1TSUcgYWJvdXQgV1NHSQorICAgICAgICBhcHBsaWNhdGlvbiBkZXBsb3ltZW50IGFsc28gaW5zcGlyZWQgdGhlIGNvbmNlcHQgb2YgImVudHJ5IHBvaW50cyIgaW4gZWdncywKKyAgICAgICAgYW5kIGhlIGhhcyBnaXZlbiB0YWxrcyBhdCBQeUNvbiBhbmQgZWxzZXdoZXJlIHRvIGluZm9ybSBhbmQgZWR1Y2F0ZSB0aGUKKyAgICAgICAgY29tbXVuaXR5IGFib3V0IGVnZ3MgYW5kIHNldHVwdG9vbHMuCisKKyAgICAgICAgKiBKaW0gRnVsdG9uIGNvbnRyaWJ1dGVkIHRpbWUgYW5kIGVmZm9ydCB0byBidWlsZCBhdXRvbWF0ZWQgdGVzdHMgb2YgdmFyaW91cworICAgICAgICBhc3BlY3RzIG9mIGBgZWFzeV9pbnN0YWxsYGAsIGFuZCBzdXBwbGllZCB0aGUgZG9jdGVzdHMgZm9yIHRoZSBjb21tYW5kLWxpbmUKKyAgICAgICAgYGAuZXhlYGAgd3JhcHBlcnMgb24gV2luZG93cy4KKworICAgICAgICAqIFBoaWxsaXAgSi4gRWJ5IGlzIHRoZSBwcmluY2lwYWwgYXV0aG9yIGFuZCBtYWludGFpbmVyIG9mIHNldHVwdG9vbHMsIGFuZAorICAgICAgICBmaXJzdCBwcm9wb3NlZCB0aGUgaWRlYSBvZiBhbiBpbXBvcnRhYmxlIGJpbmFyeSBkaXN0cmlidXRpb24gZm9ybWF0IGZvcgorICAgICAgICBQeXRob24gYXBwbGljYXRpb24gcGx1Zy1pbnMuCisKKyAgICAgICAgKiBTaWduaWZpY2FudCBwYXJ0cyBvZiB0aGUgaW1wbGVtZW50YXRpb24gb2Ygc2V0dXB0b29scyB3ZXJlIGZ1bmRlZCBieSB0aGUgT3BlbgorICAgICAgICBTb3VyY2UgQXBwbGljYXRpb25zIEZvdW5kYXRpb24sIHRvIHByb3ZpZGUgYSBwbHVnLWluIGluZnJhc3RydWN0dXJlIGZvciB0aGUKKyAgICAgICAgQ2hhbmRsZXIgUElNIGFwcGxpY2F0aW9uLiAgSW4gYWRkaXRpb24sIG1hbnkgT1NBRiBzdGFmZmVycyAoc3VjaCBhcyBNaWtlCisgICAgICAgICJDb2RlIEJlYXIiIFRheWxvcikgY29udHJpYnV0ZWQgdGhlaXIgdGltZSBhbmQgc3RyZXNzIGFzIGd1aW5lYSBwaWdzIGZvciB0aGUKKyAgICAgICAgdXNlIG9mIGVnZ3MgYW5kIHNldHVwdG9vbHMsIGV2ZW4gYmVmb3JlIGVnZ3Mgd2VyZSAiY29vbCIuICAoVGhhbmtzLCBndXlzISkKKworCitLZXl3b3JkczogQ1BBTiBQeVBJIGRpc3R1dGlscyBlZ2dzIHBhY2thZ2UgbWFuYWdlbWVudAorUGxhdGZvcm06IFVOS05PV04KK0NsYXNzaWZpZXI6IERldmVsb3BtZW50IFN0YXR1cyA6OiAzIC0gQWxwaGEKK0NsYXNzaWZpZXI6IEludGVuZGVkIEF1ZGllbmNlIDo6IERldmVsb3BlcnMKK0NsYXNzaWZpZXI6IExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFB5dGhvbiBTb2Z0d2FyZSBGb3VuZGF0aW9uIExpY2Vuc2UKK0NsYXNzaWZpZXI6IExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFpvcGUgUHVibGljIExpY2Vuc2UKK0NsYXNzaWZpZXI6IE9wZXJhdGluZyBTeXN0ZW0gOjogT1MgSW5kZXBlbmRlbnQKK0NsYXNzaWZpZXI6IFByb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbgorQ2xhc3NpZmllcjogVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzIDo6IFB5dGhvbiBNb2R1bGVzCitDbGFzc2lmaWVyOiBUb3BpYyA6OiBTeXN0ZW0gOjogQXJjaGl2aW5nIDo6IFBhY2thZ2luZworQ2xhc3NpZmllcjogVG9waWMgOjogU3lzdGVtIDo6IFN5c3RlbXMgQWRtaW5pc3RyYXRpb24KK0NsYXNzaWZpZXI6IFRvcGljIDo6IFV0aWxpdGllcworUmVxdWlyZXM6IEZvbwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvX19pbml0X18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2I4MjAwNAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvX19pbml0X18ucHkKQEAgLTAsMCArMSwyOCBAQAorIiIiVGVzdCBzdWl0ZSBmb3IgcGFja2FnaW5nLgorCitUaGlzIHRlc3Qgc3VpdGUgY29uc2lzdHMgb2YgYSBjb2xsZWN0aW9uIG9mIHRlc3QgbW9kdWxlcyBpbiB0aGUKK3BhY2thZ2luZy50ZXN0cyBwYWNrYWdlLiAgRWFjaCB0ZXN0IG1vZHVsZSBoYXMgYSBuYW1lIHN0YXJ0aW5nIHdpdGgKKyd0ZXN0JyBhbmQgY29udGFpbnMgYSBmdW5jdGlvbiB0ZXN0X3N1aXRlKCkuICBUaGUgZnVuY3Rpb24gaXMgZXhwZWN0ZWQKK3RvIHJldHVybiBhbiBpbml0aWFsaXplZCB1bml0dGVzdC5UZXN0U3VpdGUgaW5zdGFuY2UuCisKK1V0aWxpdHkgY29kZSBpcyBpbmNsdWRlZCBpbiBwYWNrYWdpbmcudGVzdHMuc3VwcG9ydC4KKworQWx3YXlzIGltcG9ydCB1bml0dGVzdCBmcm9tIHRoaXMgbW9kdWxlOiBpdCB3aWxsIGJlIHVuaXR0ZXN0IGZyb20gdGhlCitzdGFuZGFyZCBsaWJyYXJ5IGZvciBwYWNrYWdpbmcgdGVzdHMgYW5kIHVuaXR0ZXN0MiBmb3IgZGlzdHV0aWxzMiB0ZXN0cy4KKyIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB1bml0dGVzdAorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgc3VpdGUgPSB1bml0dGVzdC5UZXN0U3VpdGUoKQorICAgIGhlcmUgPSBvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pIG9yIG9zLmN1cmRpcgorICAgIGZvciBmbiBpbiBvcy5saXN0ZGlyKGhlcmUpOgorICAgICAgICBpZiBmbi5zdGFydHN3aXRoKCJ0ZXN0IikgYW5kIGZuLmVuZHN3aXRoKCIucHkiKToKKyAgICAgICAgICAgIG1vZG5hbWUgPSAicGFja2FnaW5nLnRlc3RzLiIgKyBmbls6LTNdCisgICAgICAgICAgICBfX2ltcG9ydF9fKG1vZG5hbWUpCisgICAgICAgICAgICBtb2R1bGUgPSBzeXMubW9kdWxlc1ttb2RuYW1lXQorICAgICAgICAgICAgc3VpdGUuYWRkVGVzdChtb2R1bGUudGVzdF9zdWl0ZSgpKQorICAgIHJldHVybiBzdWl0ZQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9fX21haW5fXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvX19tYWluX18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDBmMzIzZQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvX19tYWluX18ucHkKQEAgLTAsMCArMSwyNCBAQAorIiIiUGFja2FnaW5nIHRlc3Qgc3VpdGUgcnVubmVyLiIiIgorCisjIFJpcHBlZCBmcm9tIGltcG9ydGxpYiB0ZXN0cywgdGhhbmtzIEJyZXR0IQorCitpbXBvcnQgb3MKK2ltcG9ydCB1bml0dGVzdAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdCwgcmVhcF9jaGlsZHJlbiwgcmVhcF90aHJlYWRzCisKKworQHJlYXBfdGhyZWFkcworZGVmIHRlc3RfbWFpbigpOgorICAgIHRyeToKKyAgICAgICAgc3RhcnRfZGlyID0gb3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKQorICAgICAgICB0b3BfZGlyID0gb3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShzdGFydF9kaXIpKQorICAgICAgICB0ZXN0X2xvYWRlciA9IHVuaXR0ZXN0LlRlc3RMb2FkZXIoKQorICAgICAgICAjIFhYWCBmaW5kIG91dCBob3cgdG8gdXNlIHVuaXR0ZXN0Lm1haW4sIHRvIGdldCBjb21tYW5kLWxpbmUgb3B0aW9ucworICAgICAgICAjIChmYWlsZmFzdCwgY2F0Y2gsIGV0Yy4pCisgICAgICAgIHJ1bl91bml0dGVzdCh0ZXN0X2xvYWRlci5kaXNjb3ZlcihzdGFydF9kaXIsIHRvcF9sZXZlbF9kaXI9dG9wX2RpcikpCisgICAgZmluYWxseToKKyAgICAgICAgcmVhcF9jaGlsZHJlbigpCisKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mby9JTlNUQUxMRVIKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWJhci0wLjEuZGlzdC1pbmZvL0lOU1RBTExFUgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vTUVUQURBVEEgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mby9NRVRBREFUQQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NWU4MzlhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vTUVUQURBVEEKQEAgLTAsMCArMSw0IEBACitNZXRhZGF0YS12ZXJzaW9uOiAxLjIKK05hbWU6IGJhYmFyCitWZXJzaW9uOiAwLjEKK0F1dGhvcjogRkVMRCBCb3JpcwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vUkVDT1JECnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mby9SRUNPUkQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vUkVRVUVTVEVECnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mby9SRVFVRVNURUQKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWJhci0wLjEuZGlzdC1pbmZvL1JFU09VUkNFUyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWJhci0wLjEuZGlzdC1pbmZvL1JFU09VUkNFUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZDBkYTQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vUkVTT1VSQ0VTCkBAIC0wLDAgKzEsMiBAQAorYmFiYXIucG5nLGJhYmFyLnBuZworYmFiYXIuY2ZnLGJhYmFyLmNmZwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWJhci5jZmcgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXIuY2ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVjZDZlZmUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXIuY2ZnCkBAIC0wLDAgKzEgQEAKK0NvbmZpZwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLnBuZwpzaW1pbGFyaXR5IGluZGV4IDEwMCUKY29weSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CmNvcHkgdG8gTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLnBuZwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhY29uLTAuMS5lZ2ctaW5mby9QS0ctSU5GTyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWNvbi0wLjEuZWdnLWluZm8vUEtHLUlORk8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTE3NmRmZAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWNvbi0wLjEuZWdnLWluZm8vUEtHLUlORk8KQEAgLTAsMCArMSw2IEBACitNZXRhZGF0YS1WZXJzaW9uOiAxLjIKK05hbWU6IGJhY29uCitWZXJzaW9uOiAwLjEKK1Byb3ZpZGVzLURpc3Q6IHRydWZmbGVzICgyLjApCitQcm92aWRlcy1EaXN0OiBiYWNvbiAoMC4xKQorT2Jzb2xldGVzLURpc3Q6IHRydWZmbGVzICg+PTAuOSw8PTEuNSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9QS0ctSU5GTyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9QS0ctSU5GTwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hN2UxMThhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL1BLRy1JTkZPCkBAIC0wLDAgKzEsMTggQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMAorTmFtZTogYmFuYW5hCitWZXJzaW9uOiAwLjQKK1N1bW1hcnk6IEEgeWVsbG93IGZydWl0CitIb21lLXBhZ2U6IGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQmFuYW5hCitBdXRob3I6IEpvc2lwIERqb2xvbmdhCitBdXRob3ItZW1haWw6IGZvb0BuYmFyLmNvbQorTGljZW5zZTogQlNECitEZXNjcmlwdGlvbjogQSBmcnVpdAorS2V5d29yZHM6IGZvbyBiYXIKK1BsYXRmb3JtOiBVTktOT1dOCitDbGFzc2lmaWVyOiBEZXZlbG9wbWVudCBTdGF0dXMgOjogNCAtIEJldGEKK0NsYXNzaWZpZXI6IEludGVuZGVkIEF1ZGllbmNlIDo6IERldmVsb3BlcnMKK0NsYXNzaWZpZXI6IEludGVuZGVkIEF1ZGllbmNlIDo6IFNjaWVuY2UvUmVzZWFyY2gKK0NsYXNzaWZpZXI6IExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IEJTRCBMaWNlbnNlCitDbGFzc2lmaWVyOiBPcGVyYXRpbmcgU3lzdGVtIDo6IE9TIEluZGVwZW5kZW50CitDbGFzc2lmaWVyOiBQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24KK0NsYXNzaWZpZXI6IFRvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogR0lTCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9TT1VSQ0VTLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKY29weSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CmNvcHkgdG8gTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL1NPVVJDRVMudHh0CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFuYW5hLTAuNC5lZ2cvRUdHLUlORk8vZGVwZW5kZW5jeV9saW5rcy50eHQgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFuYW5hLTAuNC5lZ2cvRUdHLUlORk8vZGVwZW5kZW5jeV9saW5rcy50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGIxMzc4OQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9kZXBlbmRlbmN5X2xpbmtzLnR4dApAQCAtMCwwICsxIEBACisKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9lbnRyeV9wb2ludHMudHh0IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL2VudHJ5X3BvaW50cy50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWQzZTVmNgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9lbnRyeV9wb2ludHMudHh0CkBAIC0wLDAgKzEsMyBAQAorCisgICAgICAjIC0qLSBFbnRyeSBwb2ludHM6IC0qLQorICAgICAgClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL25vdC16aXAtc2FmZSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9ub3QtemlwLXNhZmUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGIxMzc4OQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9ub3QtemlwLXNhZmUKQEAgLTAsMCArMSBAQAorCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFuYW5hLTAuNC5lZ2cvRUdHLUlORk8vcmVxdWlyZXMudHh0IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL3JlcXVpcmVzLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MzU0MzA1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL3JlcXVpcmVzLnR4dApAQCAtMCwwICsxLDYgQEAKKyMgdGhpcyBzaG91bGQgYmUgaWdub3JlZAorCitzdHJhd2JlcnJ5ID49MC41CisKK1tzZWN0aW9uIGlnbm9yZWRdCitmb28gPT0wLjUKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL3RvcF9sZXZlbC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy90b3BfbGV2ZWwudHh0CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hlZXNlLTIuMC4yLmVnZy1pbmZvIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2NoZWVzZS0yLjAuMi5lZ2ctaW5mbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yN2NiZTMwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2NoZWVzZS0yLjAuMi5lZ2ctaW5mbwpAQCAtMCwwICsxLDUgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogY2hlZXNlCitWZXJzaW9uOiAyLjAuMgorUHJvdmlkZXMtRGlzdDogdHJ1ZmZsZXMgKDEuMC4yKQorT2Jzb2xldGVzLURpc3Q6IHRydWZmbGVzICghPTEuMiw8PTIuMCkKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9JTlNUQUxMRVIKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS5kaXN0LWluZm8vSU5TVEFMTEVSCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkuZGlzdC1pbmZvL01FVEFEQVRBIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9NRVRBREFUQQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MTg5MjllCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9NRVRBREFUQQpAQCAtMCwwICsxLDkgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogY2hveGllCitWZXJzaW9uOiAyLjAuMC45CitTdW1tYXJ5OiBDaG9jb2xhdGUgd2l0aCBhIGtpY2shCitSZXF1aXJlcy1EaXN0OiB0b3dlbC1zdHVmZiAoMC4xKQorUmVxdWlyZXMtRGlzdDogbnV0CitQcm92aWRlcy1EaXN0OiB0cnVmZmxlcyAoMS4wKQorT2Jzb2xldGVzLURpc3Q6IHRydWZmbGVzICg8PTAuOCw+PTAuNSkKK09ic29sZXRlcy1EaXN0OiB0cnVmZmxlcyAoPD0wLjksPj0wLjYpCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS5kaXN0LWluZm8vUkVDT1JECnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkuZGlzdC1pbmZvL1JFQ09SRApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkuZGlzdC1pbmZvL1JFUVVFU1RFRApzaW1pbGFyaXR5IGluZGV4IDEwMCUKY29weSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CmNvcHkgdG8gTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9SRVFVRVNURUQKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS9jaG94aWUvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkvY2hveGllL19faW5pdF9fLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwYTk2YWYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkvY2hveGllL19faW5pdF9fLnB5CkBAIC0wLDAgKzEgQEAKKyMgLSotIGNvZGluZzogdXRmLTggLSotCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkvY2hveGllL2Nob2NvbGF0ZS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS9jaG94aWUvY2hvY29sYXRlLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0MDI3ZjMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkvY2hveGllL2Nob2NvbGF0ZS5weQpAQCAtMCwwICsxLDEwIEBACisjIC0qLSBjb2Rpbmc6IHV0Zi04IC0qLQorZnJvbSB0b3dlbF9zdHVmZiBpbXBvcnQgVG93ZWwKKworY2xhc3MgQ2hvY29sYXRlKG9iamVjdCk6CisgICAgIiIiQSBwaWVjZSBvZiBjaG9jb2xhdGUuIiIiCisKKyAgICBkZWYgd3JhcF93aXRoX3Rvd2VsKHNlbGYpOgorICAgICAgICB0b3dlbCA9IFRvd2VsKCkKKyAgICAgICAgdG93ZWwud3JhcChzZWxmKQorICAgICAgICByZXR1cm4gdG93ZWwKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS90cnVmZmxlcy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS90cnVmZmxlcy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNDJiOGVhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45L3RydWZmbGVzLnB5CkBAIC0wLDAgKzEsNSBAQAorIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KK2Zyb20gY2hveGllLmNob2NvbGF0ZSBpbXBvcnQgQ2hvY29sYXRlCisKK2NsYXNzIFRydWZmbGUoQ2hvY29sYXRlKToKKyAgICAiIiJBIHRydWZmbGUuIiIiCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY29jb251dHMtYXN0ZXItMTAuMy5lZ2ctaW5mby9QS0ctSU5GTyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jb2NvbnV0cy1hc3Rlci0xMC4zLmVnZy1pbmZvL1BLRy1JTkZPCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ5OWEwODMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY29jb251dHMtYXN0ZXItMTAuMy5lZ2ctaW5mby9QS0ctSU5GTwpAQCAtMCwwICsxLDUgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogY29jb251dHMtYXN0ZXIKK1ZlcnNpb246IDEwLjMKK1Byb3ZpZGVzLURpc3Q6IHN0cmF3YmVycnkgKDAuNikKK1Byb3ZpZGVzLURpc3Q6IGJhbmFuYSAoMC40KQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8vSU5TVEFMTEVSCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8vSU5TVEFMTEVSCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8vTUVUQURBVEEgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8vTUVUQURBVEEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGI5OWY1MgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0LmRpc3QtaW5mby9NRVRBREFUQQpAQCAtMCwwICsxLDUgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogZ3JhbW1hcgorVmVyc2lvbjogMS4wYTQKK1JlcXVpcmVzLURpc3Q6IHRydWZmbGVzICg+PTEuMikKK0F1dGhvcjogU2hlcmxvY2sgSG9sbWVzCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0LmRpc3QtaW5mby9SRUNPUkQKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0LmRpc3QtaW5mby9SRUNPUkQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2dyYW1tYXItMS4wYTQuZGlzdC1pbmZvL1JFUVVFU1RFRApzaW1pbGFyaXR5IGluZGV4IDEwMCUKY29weSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CmNvcHkgdG8gTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2dyYW1tYXItMS4wYTQuZGlzdC1pbmZvL1JFUVVFU1RFRApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2dyYW1tYXItMS4wYTQvZ3JhbW1hci9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0L2dyYW1tYXIvX19pbml0X18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDBhOTZhZgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0L2dyYW1tYXIvX19pbml0X18ucHkKQEAgLTAsMCArMSBAQAorIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0L2dyYW1tYXIvdXRpbHMucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC9ncmFtbWFyL3V0aWxzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2YmE3OTYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC9ncmFtbWFyL3V0aWxzLnB5CkBAIC0wLDAgKzEsOCBAQAorIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KK2Zyb20gcmFuZG9tIGltcG9ydCByYW5kaW50CisKK2RlZiBpc192YWxpZF9ncmFtbWFyKHNlbnRlbmNlKToKKyAgICBpZiByYW5kaW50KDAsIDEwKSA8IDI6CisgICAgICAgIHJldHVybiBGYWxzZQorICAgIGVsc2U6CisgICAgICAgIHJldHVybiBUcnVlCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvbnV0LWZ1bmt5dmVyc2lvbi5lZ2ctaW5mbyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9udXQtZnVua3l2ZXJzaW9uLmVnZy1pbmZvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBjNThlYzEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvbnV0LWZ1bmt5dmVyc2lvbi5lZ2ctaW5mbwpAQCAtMCwwICsxLDMgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogbnV0CitWZXJzaW9uOiBmdW5reXZlcnNpb24KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9zdHJhd2JlcnJ5LTAuNi5lZ2cgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvc3RyYXdiZXJyeS0wLjYuZWdnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkMTYwZTgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvc3RyYXdiZXJyeS0wLjYuZWdnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL3Rvd2VsX3N0dWZmLTAuMS5kaXN0LWluZm8vSU5TVEFMTEVSCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdG93ZWxfc3R1ZmYtMC4xLmRpc3QtaW5mby9JTlNUQUxMRVIKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvL01FVEFEQVRBIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL3Rvd2VsX3N0dWZmLTAuMS5kaXN0LWluZm8vTUVUQURBVEEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2E0NmQwYQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvL01FVEFEQVRBCkBAIC0wLDAgKzEsNyBAQAorTWV0YWRhdGEtVmVyc2lvbjogMS4yCitOYW1lOiB0b3dlbC1zdHVmZgorVmVyc2lvbjogMC4xCitQcm92aWRlcy1EaXN0OiB0cnVmZmxlcyAoMS4xLjIpCitQcm92aWRlcy1EaXN0OiB0b3dlbC1zdHVmZiAoMC4xKQorT2Jzb2xldGVzLURpc3Q6IHRydWZmbGVzICghPTAuOCw8MS4wKQorUmVxdWlyZXMtRGlzdDogYmFjb24gKDw9MC4yKQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdG93ZWxfc3R1ZmYtMC4xLmRpc3QtaW5mby9SRUNPUkQKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvL1JFQ09SRApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdG93ZWxfc3R1ZmYtMC4xLmRpc3QtaW5mby9SRVFVRVNURUQKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvL1JFUVVFU1RFRApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL3Rvd2VsX3N0dWZmLTAuMS90b3dlbF9zdHVmZi9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEvdG93ZWxfc3R1ZmYvX19pbml0X18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTkxZjg5NQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEvdG93ZWxfc3R1ZmYvX19pbml0X18ucHkKQEAgLTAsMCArMSwxOCBAQAorIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KKworY2xhc3MgVG93ZWwob2JqZWN0KToKKyAgICAiIiJBIHRvd2VsLCB0aGF0IG9uZSBzaG91bGQgbmV2ZXIgYmUgd2l0aG91dC4iIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBjb2xvcj0ndGllLWR5ZScpOgorICAgICAgICBzZWxmLmNvbG9yID0gY29sb3IKKyAgICAgICAgc2VsZi53cmFwcGVkX29iaiA9IE5vbmUKKworICAgIGRlZiB3cmFwKHNlbGYsIG9iaik6CisgICAgICAgICIiIldyYXAgYW4gb2JqZWN0IHVwIGluIG91ciB0b3dlbC4iIiIKKyAgICAgICAgc2VsZi53cmFwcGVkX29iaiA9IG9iagorCisgICAgZGVmIHVud3JhcChzZWxmKToKKyAgICAgICAgIiIiVW53cmFwIHdoYXRldmVyIGlzIGluIG91ciB0b3dlbCBhbmQgcmV0dXJuIHdoYXRldmVyIGl0IGlzLiIiIgorICAgICAgICBvYmogPSBzZWxmLndyYXBwZWRfb2JqCisgICAgICAgIHNlbGYud3JhcHBlZF9vYmogPSBOb25lCisgICAgICAgIHJldHVybiBvYmoKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90cnVmZmxlcy01LjAuZWdnLWluZm8gYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdHJ1ZmZsZXMtNS4wLmVnZy1pbmZvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ1ZjBjZjgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdHJ1ZmZsZXMtNS4wLmVnZy1pbmZvCkBAIC0wLDAgKzEsMyBAQAorTWV0YWRhdGEtVmVyc2lvbjogMS4yCitOYW1lOiB0cnVmZmxlcworVmVyc2lvbjogNS4wCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZml4ZXIvX19pbml0X18ucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CnJlbmFtZSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2ZpeGVyL19faW5pdF9fLnB5CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2ZpeGVyL2ZpeF9lY2hvLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9maXhlci9maXhfZWNoby5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZGFhZTNlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9maXhlci9maXhfZWNoby5weQpAQCAtMCwwICsxLDE2IEBACisjIEV4YW1wbGUgY3VzdG9tIGZpeGVyLCBkZXJpdmVkIGZyb20gZml4X3Jhd19pbnB1dCBieSBBbmRyZSBSb2JlcmdlCisKK2Zyb20gbGliMnRvMyBpbXBvcnQgZml4ZXJfYmFzZQorZnJvbSBsaWIydG8zLmZpeGVyX3V0aWwgaW1wb3J0IE5hbWUKKworCitjbGFzcyBGaXhFY2hvKGZpeGVyX2Jhc2UuQmFzZUZpeCk6CisKKyAgICBCTV9jb21wYXRpYmxlID0gVHJ1ZQorICAgIFBBVFRFUk4gPSAiIiIKKyAgICAgICAgICAgICAgcG93ZXI8IG5hbWU9J2VjaG8nIHRyYWlsZXI8ICcoJyBbYW55XSAnKScgPiBhbnkqID4KKyAgICAgICAgICAgICAgIiIiCisKKyAgICBkZWYgdHJhbnNmb3JtKHNlbGYsIG5vZGUsIHJlc3VsdHMpOgorICAgICAgICBuYW1lID0gcmVzdWx0c1snbmFtZSddCisgICAgICAgIG5hbWUucmVwbGFjZShOYW1lKCdwcmludCcsIHByZWZpeD1uYW1lLnByZWZpeCkpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2ZpeGVyL2ZpeF9lY2hvMi5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZml4ZXIvZml4X2VjaG8yLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFiOTI4OTEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2ZpeGVyL2ZpeF9lY2hvMi5weQpAQCAtMCwwICsxLDE2IEBACisjIEV4YW1wbGUgY3VzdG9tIGZpeGVyLCBkZXJpdmVkIGZyb20gZml4X3Jhd19pbnB1dCBieSBBbmRyZSBSb2JlcmdlCisKK2Zyb20gbGliMnRvMyBpbXBvcnQgZml4ZXJfYmFzZQorZnJvbSBsaWIydG8zLmZpeGVyX3V0aWwgaW1wb3J0IE5hbWUKKworCitjbGFzcyBGaXhFY2hvMihmaXhlcl9iYXNlLkJhc2VGaXgpOgorCisgICAgQk1fY29tcGF0aWJsZSA9IFRydWUKKyAgICBQQVRURVJOID0gIiIiCisgICAgICAgICAgICAgIHBvd2VyPCBuYW1lPSdlY2hvMicgdHJhaWxlcjwgJygnIFthbnldICcpJyA+IGFueSogPgorICAgICAgICAgICAgICAiIiIKKworICAgIGRlZiB0cmFuc2Zvcm0oc2VsZiwgbm9kZSwgcmVzdWx0cyk6CisgICAgICAgIG5hbWUgPSByZXN1bHRzWyduYW1lJ10KKyAgICAgICAgbmFtZS5yZXBsYWNlKE5hbWUoJ3ByaW50JywgcHJlZml4PW5hbWUucHJlZml4KSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaV9zZXJ2ZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlfc2VydmVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzYzMwY2YKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlfc2VydmVyLnB5CkBAIC0wLDAgKzEsNDQ5IEBACisiIiJNb2NrIFB5UEkgU2VydmVyIGltcGxlbWVudGF0aW9uLCB0byB1c2UgaW4gdGVzdHMuCisKK1RoaXMgbW9kdWxlIGFsc28gcHJvdmlkZXMgYSBzaW1wbGUgdGVzdCBjYXNlIHRvIGV4dGVuZCBpZiB5b3UgbmVlZCB0byB1c2UKK3RoZSBQeVBJU2VydmVyIGFsbCBhbG9uZyB5b3VyIHRlc3QgY2FzZS4gQmUgc3VyZSB0byByZWFkIHRoZSBkb2N1bWVudGF0aW9uCitiZWZvcmUgYW55IHVzZS4KKworWFhYIFRPRE86CisKK1RoZSBtb2NrIHNlcnZlciBjYW4gaGFuZGxlIHNpbXBsZSBIVFRQIHJlcXVlc3QgKHRvIHNpbXVsYXRlIGEgc2ltcGxlIGluZGV4KSBvcgorWE1MUlBDIHJlcXVlc3RzLCBvdmVyIEhUVFAuIEJvdGggZG9lcyBub3QgaGF2ZSB0aGUgc2FtZSBpbnRlcmdmYWNlIHRvIGRlYWwKK3dpdGgsIGFuZCBJIHRoaW5rIGl0J3MgYSBwYWluLgorCitBIGdvb2QgaWRlYSBjb3VsZCBiZSB0byByZS10aGluayBhIGJpdCB0aGUgd2F5IGRzdHJpYnV0aW9ucyBhcmUgaGFuZGxlZCBpbiB0aGUKK21vY2sgc2VydmVyLiBBcyBpdCBzaG91bGQgcmV0dXJuIG1hbGZvcm1lZCBIVE1MIHBhZ2VzLCB3ZSBuZWVkIHRvIGtlZXAgdGhlCitzdGF0aWMgYmVoYXZpb3IuCisKK0kgdGhpbmsgb2Ygc29tZXRoaW5nIGxpa2UgdGhhdDoKKworICAgID4+PiBzZXJ2ZXIgPSBQeVBJTW9ja1NlcnZlcigpCisgICAgPj4+IHNlcnZlci5zdGFydEhUVFAoKQorICAgID4+PiBzZXJ2ZXIuc3RhcnRYTUxSUEMoKQorCitUaGVuLCB0aGUgc2VydmVyIG11c3QgaGF2ZSBvbmx5IG9uZSBwb3J0IHRvIHJlbHkgb24sIGVnLgorCisgICAgPj4+IHNlcnZlci5mdWxsYWRkcmVzcygpCisgICAgImh0dHA6Ly9pcDpwb3J0LyIKKworSXQgY291bGQgYmUgc2ltcGxlIHRvIGhhdmUgb25lIEhUVFAgc2VydmVyLCByZWxheWluZyB0aGUgcmVxdWVzdHMgdG8gdGhlIHR3bworaW1wbGVtZW50YXRpb25zIChzdGF0aWMgSFRUUCBhbmQgWE1MUlBDIG92ZXIgSFRUUCkuCisiIiIKKworaW1wb3J0IG9zCitpbXBvcnQgcXVldWUKK2ltcG9ydCBzZWxlY3QKK2ltcG9ydCB0aHJlYWRpbmcKK2Zyb20gZnVuY3Rvb2xzIGltcG9ydCB3cmFwcworZnJvbSBodHRwLnNlcnZlciBpbXBvcnQgSFRUUFNlcnZlciwgU2ltcGxlSFRUUFJlcXVlc3RIYW5kbGVyCitmcm9tIHhtbHJwYy5zZXJ2ZXIgaW1wb3J0IFNpbXBsZVhNTFJQQ1NlcnZlcgorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKKworCitQWVBJX0RFRkFVTFRfU1RBVElDX1BBVEggPSBvcy5wYXRoLmpvaW4oCisgICAgb3MucGF0aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0aChfX2ZpbGVfXykpLCAncHlwaXNlcnZlcicpCisKKworZGVmIHVzZV94bWxycGNfc2VydmVyKCpzZXJ2ZXJfYXJncywgKipzZXJ2ZXJfa3dhcmdzKToKKyAgICBzZXJ2ZXJfa3dhcmdzWydzZXJ2ZV94bWxycGMnXSA9IFRydWUKKyAgICByZXR1cm4gdXNlX3B5cGlfc2VydmVyKCpzZXJ2ZXJfYXJncywgKipzZXJ2ZXJfa3dhcmdzKQorCisKK2RlZiB1c2VfaHR0cF9zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpOgorICAgIHNlcnZlcl9rd2FyZ3NbJ3NlcnZlX3htbHJwYyddID0gRmFsc2UKKyAgICByZXR1cm4gdXNlX3B5cGlfc2VydmVyKCpzZXJ2ZXJfYXJncywgKipzZXJ2ZXJfa3dhcmdzKQorCisKK2RlZiB1c2VfcHlwaV9zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpOgorICAgICIiIkRlY29yYXRvciB0byBtYWtlIHVzZSBvZiB0aGUgUHlQSVNlcnZlciBmb3IgdGVzdCBtZXRob2RzLAorICAgIGp1c3Qgd2hlbiBuZWVkZWQsIGFuZCBub3QgZm9yIHRoZSBlbnRpcmUgZHVyYXRpb24gb2YgdGhlIHRlc3RjYXNlLgorICAgICIiIgorICAgIGRlZiB3cmFwcGVyKGZ1bmMpOgorICAgICAgICBAd3JhcHMoZnVuYykKKyAgICAgICAgZGVmIHdyYXBwZWQoKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgICAgIHNlcnZlciA9IFB5UElTZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpCisgICAgICAgICAgICBzZXJ2ZXIuc3RhcnQoKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGZ1bmMoc2VydmVyPXNlcnZlciwgKmFyZ3MsICoqa3dhcmdzKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICBzZXJ2ZXIuc3RvcCgpCisgICAgICAgIHJldHVybiB3cmFwcGVkCisgICAgcmV0dXJuIHdyYXBwZXIKKworCitjbGFzcyBQeVBJU2VydmVyVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihQeVBJU2VydmVyVGVzdENhc2UsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5weXBpID0gUHlQSVNlcnZlcigpCisgICAgICAgIHNlbGYucHlwaS5zdGFydCgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLnB5cGkuc3RvcCkKKworCitjbGFzcyBQeVBJU2VydmVyKHRocmVhZGluZy5UaHJlYWQpOgorICAgICIiIlB5UEkgTW9ja2VkIHNlcnZlci4KKyAgICBQcm92aWRlcyBhIG1vY2tlZCB2ZXJzaW9uIG9mIHRoZSBQeVBJIEFQSSdzLCB0byBlYXNlIHRlc3RzLgorCisgICAgU3VwcG9ydCBzZXJ2aW5nIHN0YXRpYyBjb250ZW50IGFuZCBzZXJ2aW5nIHByZXZpb3VzbHkgZ2l2ZW4gdGV4dC4KKyAgICAiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0ZXN0X3N0YXRpY19wYXRoPU5vbmUsCisgICAgICAgICAgICAgICAgIHN0YXRpY19maWxlc3lzdGVtX3BhdGhzPU5vbmUsCisgICAgICAgICAgICAgICAgIHN0YXRpY191cmlfcGF0aHM9WyJzaW1wbGUiLCAicGFja2FnZXMiXSwgc2VydmVfeG1scnBjPUZhbHNlKToKKyAgICAgICAgIiIiSW5pdGlhbGl6ZSB0aGUgc2VydmVyLgorCisgICAgICAgIERlZmF1bHQgYmVoYXZpb3IgaXMgdG8gc3RhcnQgdGhlIEhUVFAgc2VydmVyLiBZb3UgY2FuIGVpdGhlciBzdGFydCB0aGUKKyAgICAgICAgeG1scnBjIHNlcnZlciBieSBzZXR0aW5nIHhtbHJwYyB0byBUcnVlLiBDYXV0aW9uOiBPbmx5IG9uZSBzZXJ2ZXIgd2lsbAorICAgICAgICBiZSBzdGFydGVkLgorCisgICAgICAgIHN0YXRpY191cmlfcGF0aHMgYW5kIHN0YXRpY19iYXNlX3BhdGggYXJlIHBhcmFtZXRlcnMgdXNlZCB0byBwcm92aWRlcworICAgICAgICByZXNwZWN0aXZlbHkgdGhlIGh0dHBfcGF0aHMgdG8gc2VydmUgc3RhdGljYWxseSwgYW5kIHdoZXJlIHRvIGZpbmQgdGhlCisgICAgICAgIG1hdGNoaW5nIGZpbGVzIG9uIHRoZSBmaWxlc3lzdGVtLgorICAgICAgICAiIiIKKyAgICAgICAgIyB3ZSB3YW50IHRvIGxhdW5jaCB0aGUgc2VydmVyIGluIGEgbmV3IGRlZGljYXRlZCB0aHJlYWQsIHRvIG5vdCBmcmVlemUKKyAgICAgICAgIyB0ZXN0cy4KKyAgICAgICAgc3VwZXIoUHlQSVNlcnZlciwgc2VsZikuX19pbml0X18oKQorICAgICAgICBzZWxmLl9ydW4gPSBUcnVlCisgICAgICAgIHNlbGYuX3NlcnZlX3htbHJwYyA9IHNlcnZlX3htbHJwYworICAgICAgICBpZiBzdGF0aWNfZmlsZXN5c3RlbV9wYXRocyBpcyBOb25lOgorICAgICAgICAgICAgc3RhdGljX2ZpbGVzeXN0ZW1fcGF0aHMgPSBbImRlZmF1bHQiXQorCisgICAgICAgICNUT0RPIGFsbG93IHRvIHNlcnZlIFhNTFJQQyBhbmQgSFRUUCBzdGF0aWMgZmlsZXMgYXQgdGhlIHNhbWUgdGltZS4KKyAgICAgICAgaWYgbm90IHNlbGYuX3NlcnZlX3htbHJwYzoKKyAgICAgICAgICAgIHNlbGYuc2VydmVyID0gSFRUUFNlcnZlcigoJzEyNy4wLjAuMScsIDApLCBQeVBJUmVxdWVzdEhhbmRsZXIpCisgICAgICAgICAgICBzZWxmLnNlcnZlci5SZXF1ZXN0SGFuZGxlckNsYXNzLnB5cGlfc2VydmVyID0gc2VsZgorCisgICAgICAgICAgICBzZWxmLnJlcXVlc3RfcXVldWUgPSBxdWV1ZS5RdWV1ZSgpCisgICAgICAgICAgICBzZWxmLl9yZXF1ZXN0cyA9IFtdCisgICAgICAgICAgICBzZWxmLmRlZmF1bHRfcmVzcG9uc2Vfc3RhdHVzID0gNDA0CisgICAgICAgICAgICBzZWxmLmRlZmF1bHRfcmVzcG9uc2VfaGVhZGVycyA9IFsoJ0NvbnRlbnQtdHlwZScsICd0ZXh0L3BsYWluJyldCisgICAgICAgICAgICBzZWxmLmRlZmF1bHRfcmVzcG9uc2VfZGF0YSA9ICJUaGUgcGFnZSBkb2VzIG5vdCBleGlzdHMiCisKKyAgICAgICAgICAgICMgaW5pdGlhbGl6ZSBzdGF0aWMgcGF0aHMgLyBmaWxlc3lzdGVtcworICAgICAgICAgICAgc2VsZi5zdGF0aWNfdXJpX3BhdGhzID0gc3RhdGljX3VyaV9wYXRocworCisgICAgICAgICAgICAjIGFwcGVuZCB0aGUgc3RhdGljIHBhdGhzIGRlZmluZWQgbG9jYWxseQorICAgICAgICAgICAgaWYgdGVzdF9zdGF0aWNfcGF0aCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBzdGF0aWNfZmlsZXN5c3RlbV9wYXRocy5hcHBlbmQodGVzdF9zdGF0aWNfcGF0aCkKKyAgICAgICAgICAgIHNlbGYuc3RhdGljX2ZpbGVzeXN0ZW1fcGF0aHMgPSBbCisgICAgICAgICAgICAgICAgUFlQSV9ERUZBVUxUX1NUQVRJQ19QQVRIICsgIi8iICsgcGF0aAorICAgICAgICAgICAgICAgIGZvciBwYXRoIGluIHN0YXRpY19maWxlc3lzdGVtX3BhdGhzXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBYTUxSUEMgc2VydmVyCisgICAgICAgICAgICBzZWxmLnNlcnZlciA9IFB5UElYTUxSUENTZXJ2ZXIoKCcxMjcuMC4wLjEnLCAwKSkKKyAgICAgICAgICAgIHNlbGYueG1scnBjID0gWE1MUlBDTW9ja0luZGV4KCkKKyAgICAgICAgICAgICMgcmVnaXN0ZXIgdGhlIHhtbHJwYyBtZXRob2RzCisgICAgICAgICAgICBzZWxmLnNlcnZlci5yZWdpc3Rlcl9pbnRyb3NwZWN0aW9uX2Z1bmN0aW9ucygpCisgICAgICAgICAgICBzZWxmLnNlcnZlci5yZWdpc3Rlcl9pbnN0YW5jZShzZWxmLnhtbHJwYykKKworICAgICAgICBzZWxmLmFkZHJlc3MgPSAoJzEyNy4wLjAuMScsIHNlbGYuc2VydmVyLnNlcnZlcl9wb3J0KQorICAgICAgICAjIHRvIG5vdCBoYXZlIHVud2FudGVkIG91dHB1dHMuCisgICAgICAgIHNlbGYuc2VydmVyLlJlcXVlc3RIYW5kbGVyQ2xhc3MubG9nX3JlcXVlc3QgPSBsYW1iZGEgKl86IE5vbmUKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgICMgbG9vcCBiZWNhdXNlIHdlIGNhbid0IHN0b3AgaXQgb3RoZXJ3aXNlLCBmb3IgcHl0aG9uIDwgMi42CisgICAgICAgIHdoaWxlIHNlbGYuX3J1bjoKKyAgICAgICAgICAgIHIsIHcsIGUgPSBzZWxlY3Quc2VsZWN0KFtzZWxmLnNlcnZlcl0sIFtdLCBbXSwgMC41KQorICAgICAgICAgICAgaWYgcjoKKyAgICAgICAgICAgICAgICBzZWxmLnNlcnZlci5oYW5kbGVfcmVxdWVzdCgpCisKKyAgICBkZWYgc3RvcChzZWxmKToKKyAgICAgICAgIiIic2VsZiBzaHV0ZG93biBpcyBub3Qgc3VwcG9ydGVkIGZvciBweXRob24gPCAyLjYiIiIKKyAgICAgICAgc2VsZi5fcnVuID0gRmFsc2UKKyAgICAgICAgaWYgc2VsZi5pc19hbGl2ZSgpOgorICAgICAgICAgICAgc2VsZi5qb2luKCkKKyAgICAgICAgc2VsZi5zZXJ2ZXIuc2VydmVyX2Nsb3NlKCkKKworICAgIGRlZiBnZXRfbmV4dF9yZXNwb25zZShzZWxmKToKKyAgICAgICAgcmV0dXJuIChzZWxmLmRlZmF1bHRfcmVzcG9uc2Vfc3RhdHVzLAorICAgICAgICAgICAgICAgIHNlbGYuZGVmYXVsdF9yZXNwb25zZV9oZWFkZXJzLAorICAgICAgICAgICAgICAgIHNlbGYuZGVmYXVsdF9yZXNwb25zZV9kYXRhKQorCisgICAgQHByb3BlcnR5CisgICAgZGVmIHJlcXVlc3RzKHNlbGYpOgorICAgICAgICAiIiJVc2UgdGhpcyBwcm9wZXJ0eSB0byBnZXQgYWxsIHJlcXVlc3RzIHRoYXQgaGF2ZSBiZWVuIG1hZGUKKyAgICAgICAgdG8gdGhlIHNlcnZlcgorICAgICAgICAiIiIKKyAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLl9yZXF1ZXN0cy5hcHBlbmQoc2VsZi5yZXF1ZXN0X3F1ZXVlLmdldF9ub3dhaXQoKSkKKyAgICAgICAgICAgIGV4Y2VwdCBxdWV1ZS5FbXB0eToKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICByZXR1cm4gc2VsZi5fcmVxdWVzdHMKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBmdWxsX2FkZHJlc3Moc2VsZik6CisgICAgICAgIHJldHVybiAiaHR0cDovLyVzOiVzIiAlIHNlbGYuYWRkcmVzcworCisKK2NsYXNzIFB5UElSZXF1ZXN0SGFuZGxlcihTaW1wbGVIVFRQUmVxdWVzdEhhbmRsZXIpOgorICAgICMgd2UgbmVlZCB0byBhY2Nlc3MgdGhlIHB5cGkgc2VydmVyIHdoaWxlIHNlcnZpbmcgdGhlIGNvbnRlbnQKKyAgICBweXBpX3NlcnZlciA9IE5vbmUKKworICAgIGRlZiBzZXJ2ZV9yZXF1ZXN0KHNlbGYpOgorICAgICAgICAiIiJTZXJ2ZSB0aGUgY29udGVudC4KKworICAgICAgICBBbHNvIHJlY29yZCB0aGUgcmVxdWVzdHMgdG8gYmUgYWNjZXNzZWQgbGF0ZXIuIElmIHRyeWluZyB0byBhY2Nlc3MgYW4KKyAgICAgICAgdXJsIG1hdGNoaW5nIGEgc3RhdGljIHVyaSwgc2VydmUgc3RhdGljIGNvbnRlbnQsIG90aGVyd2lzZSBzZXJ2ZQorICAgICAgICB3aGF0IGlzIHByb3ZpZGVkIGJ5IHRoZSBgZ2V0X25leHRfcmVzcG9uc2VgIG1ldGhvZC4KKworICAgICAgICBJZiBub3RoaW5nIGlzIGRlZmluZWQgdGhlcmUsIHJldHVybiBhIDQwNCBoZWFkZXIuCisgICAgICAgICIiIgorICAgICAgICAjIHJlY29yZCB0aGUgcmVxdWVzdC4gUmVhZCB0aGUgaW5wdXQgb25seSBvbiBQVVQgb3IgUE9TVCByZXF1ZXN0cworICAgICAgICBpZiBzZWxmLmNvbW1hbmQgaW4gKCJQVVQiLCAiUE9TVCIpOgorICAgICAgICAgICAgaWYgJ2NvbnRlbnQtbGVuZ3RoJyBpbiBzZWxmLmhlYWRlcnM6CisgICAgICAgICAgICAgICAgcmVxdWVzdF9kYXRhID0gc2VsZi5yZmlsZS5yZWFkKAorICAgICAgICAgICAgICAgICAgICBpbnQoc2VsZi5oZWFkZXJzWydjb250ZW50LWxlbmd0aCddKSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmVxdWVzdF9kYXRhID0gc2VsZi5yZmlsZS5yZWFkKCkKKworICAgICAgICBlbGlmIHNlbGYuY29tbWFuZCBpbiAoIkdFVCIsICJERUxFVEUiKToKKyAgICAgICAgICAgIHJlcXVlc3RfZGF0YSA9ICcnCisKKyAgICAgICAgc2VsZi5weXBpX3NlcnZlci5yZXF1ZXN0X3F1ZXVlLnB1dCgoc2VsZiwgcmVxdWVzdF9kYXRhKSkKKworICAgICAgICAjIHNlcnZlIHRoZSBjb250ZW50IGZyb20gbG9jYWwgZGlzYyBpZiB3ZSByZXF1ZXN0IGFuIFVSTCBiZWdpbm5pbmcKKyAgICAgICAgIyBieSBhIHBhdHRlcm4gZGVmaW5lZCBpbiBgc3RhdGljX3BhdGhzYAorICAgICAgICB1cmxfcGFydHMgPSBzZWxmLnBhdGguc3BsaXQoIi8iKQorICAgICAgICBpZiAobGVuKHVybF9wYXJ0cykgPiAxIGFuZAorICAgICAgICAgICAgICAgIHVybF9wYXJ0c1sxXSBpbiBzZWxmLnB5cGlfc2VydmVyLnN0YXRpY191cmlfcGF0aHMpOgorICAgICAgICAgICAgZGF0YSA9IE5vbmUKKyAgICAgICAgICAgICMgYWx3YXlzIHRha2UgdGhlIGxhc3QgZmlyc3QuCisgICAgICAgICAgICBmc19wYXRocyA9IFtdCisgICAgICAgICAgICBmc19wYXRocy5leHRlbmQoc2VsZi5weXBpX3NlcnZlci5zdGF0aWNfZmlsZXN5c3RlbV9wYXRocykKKyAgICAgICAgICAgIGZzX3BhdGhzLnJldmVyc2UoKQorICAgICAgICAgICAgcmVsYXRpdmVfcGF0aCA9IHNlbGYucGF0aAorICAgICAgICAgICAgZm9yIGZzX3BhdGggaW4gZnNfcGF0aHM6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLnBhdGguZW5kc3dpdGgoIi8iKToKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aXZlX3BhdGggKz0gImluZGV4Lmh0bWwiCisKKyAgICAgICAgICAgICAgICAgICAgaWYgcmVsYXRpdmVfcGF0aC5lbmRzd2l0aCgnLnRhci5neicpOgorICAgICAgICAgICAgICAgICAgICAgICAgd2l0aCBvcGVuKGZzX3BhdGggKyByZWxhdGl2ZV9wYXRoLCAncmInKSBhcyBmaWxlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBmaWxlLnJlYWQoKQorICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVycyA9IFsoJ0NvbnRlbnQtdHlwZScsICdhcHBsaWNhdGlvbi94LWd0YXInKV0KKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIHdpdGggb3Blbihmc19wYXRoICsgcmVsYXRpdmVfcGF0aCkgYXMgZmlsZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhID0gZmlsZS5yZWFkKCkuZW5jb2RlKCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnMgPSBbKCdDb250ZW50LXR5cGUnLCAndGV4dC9odG1sJyldCisKKyAgICAgICAgICAgICAgICAgICAgaGVhZGVycy5hcHBlbmQoKCdDb250ZW50LUxlbmd0aCcsIGxlbihkYXRhKSkpCisgICAgICAgICAgICAgICAgICAgIHNlbGYubWFrZV9yZXNwb25zZShkYXRhLCBoZWFkZXJzPWhlYWRlcnMpCisKKyAgICAgICAgICAgICAgICBleGNlcHQgSU9FcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgcGFzcworCisgICAgICAgICAgICBpZiBkYXRhIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5tYWtlX3Jlc3BvbnNlKCJOb3QgZm91bmQiLCA0MDQpCisKKyAgICAgICAgIyBvdGhlcndpc2Ugc2VydmUgdGhlIGNvbnRlbnQgZnJvbSBnZXRfbmV4dF9yZXNwb25zZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBzZW5kIGJhY2sgYSByZXNwb25zZQorICAgICAgICAgICAgc3RhdHVzLCBoZWFkZXJzLCBkYXRhID0gc2VsZi5weXBpX3NlcnZlci5nZXRfbmV4dF9yZXNwb25zZSgpCisgICAgICAgICAgICBzZWxmLm1ha2VfcmVzcG9uc2UoZGF0YSwgc3RhdHVzLCBoZWFkZXJzKQorCisgICAgZG9fUE9TVCA9IGRvX0dFVCA9IGRvX0RFTEVURSA9IGRvX1BVVCA9IHNlcnZlX3JlcXVlc3QKKworICAgIGRlZiBtYWtlX3Jlc3BvbnNlKHNlbGYsIGRhdGEsIHN0YXR1cz0yMDAsCisgICAgICAgICAgICAgICAgICAgICAgaGVhZGVycz1bKCdDb250ZW50LXR5cGUnLCAndGV4dC9odG1sJyldKToKKyAgICAgICAgIiIiU2VuZCB0aGUgcmVzcG9uc2UgdG8gdGhlIEhUVFAgY2xpZW50IiIiCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKHN0YXR1cywgaW50KToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzdGF0dXMgPSBpbnQoc3RhdHVzKQorICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICAgICAgIyB3ZSBwcm9iYWJseSBnb3Qgc29tZXRoaW5nIGxpa2UgWVlZIENvZGVuYW1lLgorICAgICAgICAgICAgICAgICMgSnVzdCBnZXQgdGhlIGZpcnN0IDMgZGlnaXRzCisgICAgICAgICAgICAgICAgc3RhdHVzID0gaW50KHN0YXR1c1s6M10pCisKKyAgICAgICAgc2VsZi5zZW5kX3Jlc3BvbnNlKHN0YXR1cykKKyAgICAgICAgZm9yIGhlYWRlciwgdmFsdWUgaW4gaGVhZGVyczoKKyAgICAgICAgICAgIHNlbGYuc2VuZF9oZWFkZXIoaGVhZGVyLCB2YWx1ZSkKKyAgICAgICAgc2VsZi5lbmRfaGVhZGVycygpCisKKyAgICAgICAgaWYgaXNpbnN0YW5jZShkYXRhLCBzdHIpOgorICAgICAgICAgICAgZGF0YSA9IGRhdGEuZW5jb2RlKCd1dGYtOCcpCisKKyAgICAgICAgc2VsZi53ZmlsZS53cml0ZShkYXRhKQorCisKK2NsYXNzIFB5UElYTUxSUENTZXJ2ZXIoU2ltcGxlWE1MUlBDU2VydmVyKToKKyAgICBkZWYgc2VydmVyX2JpbmQoc2VsZik6CisgICAgICAgICIiIk92ZXJyaWRlIHNlcnZlcl9iaW5kIHRvIHN0b3JlIHRoZSBzZXJ2ZXIgbmFtZS4iIiIKKyAgICAgICAgc3VwZXIoUHlQSVhNTFJQQ1NlcnZlciwgc2VsZikuc2VydmVyX2JpbmQoKQorICAgICAgICBob3N0LCBwb3J0ID0gc2VsZi5zb2NrZXQuZ2V0c29ja25hbWUoKVs6Ml0KKyAgICAgICAgc2VsZi5zZXJ2ZXJfcG9ydCA9IHBvcnQKKworCitjbGFzcyBNb2NrRGlzdDoKKyAgICAiIiJGYWtlIGRpc3RyaWJ1dGlvbiwgdXNlZCBpbiB0aGUgTW9jayBQeVBJIFNlcnZlciIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIHZlcnNpb249IjEuMCIsIGhpZGRlbj1GYWxzZSwgdXJsPSJodHRwOi8vdXJsLyIsCisgICAgICAgICAgICAgdHlwZT0ic2Rpc3QiLCBmaWxlbmFtZT0iIiwgc2l6ZT0xMDAwMCwKKyAgICAgICAgICAgICBkaWdlc3Q9IjEyMzQ1NiIsIGRvd25sb2Fkcz03LCBoYXNfc2lnPUZhbHNlLAorICAgICAgICAgICAgIHB5dGhvbl92ZXJzaW9uPSJzb3VyY2UiLCBjb21tZW50PSJjb21tZW50IiwKKyAgICAgICAgICAgICBhdXRob3I9IkpvaG4gRG9lIiwgYXV0aG9yX2VtYWlsPSJqb2huQGRvZS5uYW1lIiwKKyAgICAgICAgICAgICBtYWludGFpbmVyPSJNYWluIFRheW5lciIsIG1haW50YWluZXJfZW1haWw9Im1haW50YWluZXJfbWFpbCIsCisgICAgICAgICAgICAgcHJvamVjdF91cmw9Imh0dHA6Ly9wcm9qZWN0X3VybC8iLCBob21lcGFnZT0iaHR0cDovL2hvbWVwYWdlLyIsCisgICAgICAgICAgICAga2V5d29yZHM9IiIsIHBsYXRmb3JtPSJVTktOT1dOIiwgY2xhc3NpZmllcnM9W10sIGxpY2VuY2U9IiIsCisgICAgICAgICAgICAgZGVzY3JpcHRpb249IkRlc2NyaXB0aW9uIiwgc3VtbWFyeT0iU3VtbWFyeSIsIHN0YWJsZV92ZXJzaW9uPSIiLAorICAgICAgICAgICAgIG9yZGVyaW5nPSIiLCBkb2N1bWVudGF0aW9uX2lkPSIiLCBjb2RlX2t3YWxpdGVlX2lkPSIiLAorICAgICAgICAgICAgIGluc3RhbGxhYmlsaXR5X2lkPSIiLCBvYnNvbGV0ZXM9W10sIG9ic29sZXRlc19kaXN0PVtdLAorICAgICAgICAgICAgIHByb3ZpZGVzPVtdLCBwcm92aWRlc19kaXN0PVtdLCByZXF1aXJlcz1bXSwgcmVxdWlyZXNfZGlzdD1bXSwKKyAgICAgICAgICAgICByZXF1aXJlc19leHRlcm5hbD1bXSwgcmVxdWlyZXNfcHl0aG9uPSIiKToKKworICAgICAgICAjIGJhc2ljIGZpZWxkcworICAgICAgICBzZWxmLm5hbWUgPSBuYW1lCisgICAgICAgIHNlbGYudmVyc2lvbiA9IHZlcnNpb24KKyAgICAgICAgc2VsZi5oaWRkZW4gPSBoaWRkZW4KKworICAgICAgICAjIFVSTCBpbmZvcworICAgICAgICBzZWxmLnVybCA9IHVybAorICAgICAgICBzZWxmLmRpZ2VzdCA9IGRpZ2VzdAorICAgICAgICBzZWxmLmRvd25sb2FkcyA9IGRvd25sb2FkcworICAgICAgICBzZWxmLmhhc19zaWcgPSBoYXNfc2lnCisgICAgICAgIHNlbGYucHl0aG9uX3ZlcnNpb24gPSBweXRob25fdmVyc2lvbgorICAgICAgICBzZWxmLmNvbW1lbnQgPSBjb21tZW50CisgICAgICAgIHNlbGYudHlwZSA9IHR5cGUKKworICAgICAgICAjIG1ldGFkYXRhCisgICAgICAgIHNlbGYuYXV0aG9yID0gYXV0aG9yCisgICAgICAgIHNlbGYuYXV0aG9yX2VtYWlsID0gYXV0aG9yX2VtYWlsCisgICAgICAgIHNlbGYubWFpbnRhaW5lciA9IG1haW50YWluZXIKKyAgICAgICAgc2VsZi5tYWludGFpbmVyX2VtYWlsID0gbWFpbnRhaW5lcl9lbWFpbAorICAgICAgICBzZWxmLnByb2plY3RfdXJsID0gcHJvamVjdF91cmwKKyAgICAgICAgc2VsZi5ob21lcGFnZSA9IGhvbWVwYWdlCisgICAgICAgIHNlbGYua2V5d29yZHMgPSBrZXl3b3JkcworICAgICAgICBzZWxmLnBsYXRmb3JtID0gcGxhdGZvcm0KKyAgICAgICAgc2VsZi5jbGFzc2lmaWVycyA9IGNsYXNzaWZpZXJzCisgICAgICAgIHNlbGYubGljZW5jZSA9IGxpY2VuY2UKKyAgICAgICAgc2VsZi5kZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uCisgICAgICAgIHNlbGYuc3VtbWFyeSA9IHN1bW1hcnkKKyAgICAgICAgc2VsZi5zdGFibGVfdmVyc2lvbiA9IHN0YWJsZV92ZXJzaW9uCisgICAgICAgIHNlbGYub3JkZXJpbmcgPSBvcmRlcmluZworICAgICAgICBzZWxmLmNoZWVzZWNha2VfZG9jdW1lbnRhdGlvbl9pZCA9IGRvY3VtZW50YXRpb25faWQKKyAgICAgICAgc2VsZi5jaGVlc2VjYWtlX2NvZGVfa3dhbGl0ZWVfaWQgPSBjb2RlX2t3YWxpdGVlX2lkCisgICAgICAgIHNlbGYuY2hlZXNlY2FrZV9pbnN0YWxsYWJpbGl0eV9pZCA9IGluc3RhbGxhYmlsaXR5X2lkCisKKyAgICAgICAgc2VsZi5vYnNvbGV0ZXMgPSBvYnNvbGV0ZXMKKyAgICAgICAgc2VsZi5vYnNvbGV0ZXNfZGlzdCA9IG9ic29sZXRlc19kaXN0CisgICAgICAgIHNlbGYucHJvdmlkZXMgPSBwcm92aWRlcworICAgICAgICBzZWxmLnByb3ZpZGVzX2Rpc3QgPSBwcm92aWRlc19kaXN0CisgICAgICAgIHNlbGYucmVxdWlyZXMgPSByZXF1aXJlcworICAgICAgICBzZWxmLnJlcXVpcmVzX2Rpc3QgPSByZXF1aXJlc19kaXN0CisgICAgICAgIHNlbGYucmVxdWlyZXNfZXh0ZXJuYWwgPSByZXF1aXJlc19leHRlcm5hbAorICAgICAgICBzZWxmLnJlcXVpcmVzX3B5dGhvbiA9IHJlcXVpcmVzX3B5dGhvbgorCisgICAgZGVmIHVybF9pbmZvcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHsKKyAgICAgICAgICAgICd1cmwnOiBzZWxmLnVybCwKKyAgICAgICAgICAgICdwYWNrYWdldHlwZSc6IHNlbGYudHlwZSwKKyAgICAgICAgICAgICdmaWxlbmFtZSc6ICdmaWxlbmFtZS50YXIuZ3onLAorICAgICAgICAgICAgJ3NpemUnOiAnNjAwMCcsCisgICAgICAgICAgICAnbWQ1X2RpZ2VzdCc6IHNlbGYuZGlnZXN0LAorICAgICAgICAgICAgJ2Rvd25sb2Fkcyc6IHNlbGYuZG93bmxvYWRzLAorICAgICAgICAgICAgJ2hhc19zaWcnOiBzZWxmLmhhc19zaWcsCisgICAgICAgICAgICAncHl0aG9uX3ZlcnNpb24nOiBzZWxmLnB5dGhvbl92ZXJzaW9uLAorICAgICAgICAgICAgJ2NvbW1lbnRfdGV4dCc6IHNlbGYuY29tbWVudCwKKyAgICAgICAgfQorCisgICAgZGVmIG1ldGFkYXRhKHNlbGYpOgorICAgICAgICByZXR1cm4geworICAgICAgICAgICAgJ21haW50YWluZXInOiBzZWxmLm1haW50YWluZXIsCisgICAgICAgICAgICAncHJvamVjdF91cmwnOiBbc2VsZi5wcm9qZWN0X3VybF0sCisgICAgICAgICAgICAnbWFpbnRhaW5lcl9lbWFpbCc6IHNlbGYubWFpbnRhaW5lcl9lbWFpbCwKKyAgICAgICAgICAgICdjaGVlc2VjYWtlX2NvZGVfa3dhbGl0ZWVfaWQnOiBzZWxmLmNoZWVzZWNha2VfY29kZV9rd2FsaXRlZV9pZCwKKyAgICAgICAgICAgICdrZXl3b3Jkcyc6IHNlbGYua2V5d29yZHMsCisgICAgICAgICAgICAnb2Jzb2xldGVzX2Rpc3QnOiBzZWxmLm9ic29sZXRlc19kaXN0LAorICAgICAgICAgICAgJ3JlcXVpcmVzX2V4dGVybmFsJzogc2VsZi5yZXF1aXJlc19leHRlcm5hbCwKKyAgICAgICAgICAgICdhdXRob3InOiBzZWxmLmF1dGhvciwKKyAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiBzZWxmLmF1dGhvcl9lbWFpbCwKKyAgICAgICAgICAgICdkb3dubG9hZF91cmwnOiBzZWxmLnVybCwKKyAgICAgICAgICAgICdwbGF0Zm9ybSc6IHNlbGYucGxhdGZvcm0sCisgICAgICAgICAgICAndmVyc2lvbic6IHNlbGYudmVyc2lvbiwKKyAgICAgICAgICAgICdvYnNvbGV0ZXMnOiBzZWxmLm9ic29sZXRlcywKKyAgICAgICAgICAgICdwcm92aWRlcyc6IHNlbGYucHJvdmlkZXMsCisgICAgICAgICAgICAnY2hlZXNlY2FrZV9kb2N1bWVudGF0aW9uX2lkJzogc2VsZi5jaGVlc2VjYWtlX2RvY3VtZW50YXRpb25faWQsCisgICAgICAgICAgICAnX3B5cGlfaGlkZGVuJzogc2VsZi5oaWRkZW4sCisgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiBzZWxmLmRlc2NyaXB0aW9uLAorICAgICAgICAgICAgJ19weXBpX29yZGVyaW5nJzogMTksCisgICAgICAgICAgICAncmVxdWlyZXNfZGlzdCc6IHNlbGYucmVxdWlyZXNfZGlzdCwKKyAgICAgICAgICAgICdyZXF1aXJlc19weXRob24nOiBzZWxmLnJlcXVpcmVzX3B5dGhvbiwKKyAgICAgICAgICAgICdjbGFzc2lmaWVycyc6IFtdLAorICAgICAgICAgICAgJ25hbWUnOiBzZWxmLm5hbWUsCisgICAgICAgICAgICAnbGljZW5jZSc6IHNlbGYubGljZW5jZSwgICMgWFhYIGxpY2VuY2Ugb3IgbGljZW5zZT8KKyAgICAgICAgICAgICdzdW1tYXJ5Jzogc2VsZi5zdW1tYXJ5LAorICAgICAgICAgICAgJ2hvbWVfcGFnZSc6IHNlbGYuaG9tZXBhZ2UsCisgICAgICAgICAgICAnc3RhYmxlX3ZlcnNpb24nOiBzZWxmLnN0YWJsZV92ZXJzaW9uLAorICAgICAgICAgICAgIyBGSVhNRSBkb2Vzbid0IHRoYXQgcmVwcm9kdWNlIHRoZSBidWcgZnJvbSA2NTI3ZDMxMDZlOWY/CisgICAgICAgICAgICAncHJvdmlkZXNfZGlzdCc6IChzZWxmLnByb3ZpZGVzX2Rpc3Qgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiVzICglcykiICUgKHNlbGYubmFtZSwgc2VsZi52ZXJzaW9uKSksCisgICAgICAgICAgICAncmVxdWlyZXMnOiBzZWxmLnJlcXVpcmVzLAorICAgICAgICAgICAgJ2NoZWVzZWNha2VfaW5zdGFsbGFiaWxpdHlfaWQnOiBzZWxmLmNoZWVzZWNha2VfaW5zdGFsbGFiaWxpdHlfaWQsCisgICAgICAgIH0KKworICAgIGRlZiBzZWFyY2hfcmVzdWx0KHNlbGYpOgorICAgICAgICByZXR1cm4geworICAgICAgICAgICAgJ19weXBpX29yZGVyaW5nJzogMCwKKyAgICAgICAgICAgICd2ZXJzaW9uJzogc2VsZi52ZXJzaW9uLAorICAgICAgICAgICAgJ25hbWUnOiBzZWxmLm5hbWUsCisgICAgICAgICAgICAnc3VtbWFyeSc6IHNlbGYuc3VtbWFyeSwKKyAgICAgICAgfQorCisKK2NsYXNzIFhNTFJQQ01vY2tJbmRleDoKKyAgICAiIiJNb2NrIFhNTFJQQyBzZXJ2ZXIiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkaXN0cz1bXSk6CisgICAgICAgIHNlbGYuX2Rpc3RzID0gZGlzdHMKKyAgICAgICAgc2VsZi5fc2VhcmNoX3Jlc3VsdCA9IFtdCisKKyAgICBkZWYgYWRkX2Rpc3RyaWJ1dGlvbnMoc2VsZiwgZGlzdHMpOgorICAgICAgICBmb3IgZGlzdCBpbiBkaXN0czoKKyAgICAgICAgICAgIHNlbGYuX2Rpc3RzLmFwcGVuZChNb2NrRGlzdCgqKmRpc3QpKQorCisgICAgZGVmIHNldF9kaXN0cmlidXRpb25zKHNlbGYsIGRpc3RzKToKKyAgICAgICAgc2VsZi5fZGlzdHMgPSBbXQorICAgICAgICBzZWxmLmFkZF9kaXN0cmlidXRpb25zKGRpc3RzKQorCisgICAgZGVmIHNldF9zZWFyY2hfcmVzdWx0KHNlbGYsIHJlc3VsdCk6CisgICAgICAgICIiInNldCBhIHByZWRlZmluZWQgc2VhcmNoIHJlc3VsdCIiIgorICAgICAgICBzZWxmLl9zZWFyY2hfcmVzdWx0ID0gcmVzdWx0CisKKyAgICBkZWYgX2dldF9zZWFyY2hfcmVzdWx0cyhzZWxmKToKKyAgICAgICAgcmVzdWx0cyA9IFtdCisgICAgICAgIGZvciBuYW1lIGluIHNlbGYuX3NlYXJjaF9yZXN1bHQ6CisgICAgICAgICAgICBmb3VuZF9kaXN0ID0gW2QgZm9yIGQgaW4gc2VsZi5fZGlzdHMgaWYgZC5uYW1lID09IG5hbWVdCisgICAgICAgICAgICBpZiBmb3VuZF9kaXN0OgorICAgICAgICAgICAgICAgIHJlc3VsdHMuYXBwZW5kKGZvdW5kX2Rpc3RbMF0pCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGRpc3QgPSBNb2NrRGlzdChuYW1lKQorICAgICAgICAgICAgICAgIHJlc3VsdHMuYXBwZW5kKGRpc3QpCisgICAgICAgICAgICAgICAgc2VsZi5fZGlzdHMuYXBwZW5kKGRpc3QpCisgICAgICAgIHJldHVybiBbci5zZWFyY2hfcmVzdWx0KCkgZm9yIHIgaW4gcmVzdWx0c10KKworICAgIGRlZiBsaXN0X3BhY2thZ2VzKHNlbGYpOgorICAgICAgICByZXR1cm4gW2QubmFtZSBmb3IgZCBpbiBzZWxmLl9kaXN0c10KKworICAgIGRlZiBwYWNrYWdlX3JlbGVhc2VzKHNlbGYsIHBhY2thZ2VfbmFtZSwgc2hvd19oaWRkZW49RmFsc2UpOgorICAgICAgICBpZiBzaG93X2hpZGRlbjoKKyAgICAgICAgICAgICMgcmV0dXJuIGFsbAorICAgICAgICAgICAgcmV0dXJuIFtkLnZlcnNpb24gZm9yIGQgaW4gc2VsZi5fZGlzdHMgaWYgZC5uYW1lID09IHBhY2thZ2VfbmFtZV0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgcmV0dXJuIG9ubHkgdW4taGlkZGVuCisgICAgICAgICAgICByZXR1cm4gW2QudmVyc2lvbiBmb3IgZCBpbiBzZWxmLl9kaXN0cyBpZiBkLm5hbWUgPT0gcGFja2FnZV9uYW1lCisgICAgICAgICAgICAgICAgICAgIGFuZCBub3QgZC5oaWRkZW5dCisKKyAgICBkZWYgcmVsZWFzZV91cmxzKHNlbGYsIHBhY2thZ2VfbmFtZSwgdmVyc2lvbik6CisgICAgICAgIHJldHVybiBbZC51cmxfaW5mb3MoKSBmb3IgZCBpbiBzZWxmLl9kaXN0cworICAgICAgICAgICAgICAgIGlmIGQubmFtZSA9PSBwYWNrYWdlX25hbWUgYW5kIGQudmVyc2lvbiA9PSB2ZXJzaW9uXQorCisgICAgZGVmIHJlbGVhc2VfZGF0YShzZWxmLCBwYWNrYWdlX25hbWUsIHZlcnNpb24pOgorICAgICAgICByZWxlYXNlID0gW2QgZm9yIGQgaW4gc2VsZi5fZGlzdHMKKyAgICAgICAgICAgICAgICAgICBpZiBkLm5hbWUgPT0gcGFja2FnZV9uYW1lIGFuZCBkLnZlcnNpb24gPT0gdmVyc2lvbl0KKyAgICAgICAgaWYgcmVsZWFzZToKKyAgICAgICAgICAgIHJldHVybiByZWxlYXNlWzBdLm1ldGFkYXRhKCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiB7fQorCisgICAgZGVmIHNlYXJjaChzZWxmLCBzcGVjLCBvcGVyYXRvcj0iYW5kIik6CisgICAgICAgIHJldHVybiBzZWxmLl9nZXRfc2VhcmNoX3Jlc3VsdHMoKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpX3Rlc3Rfc2VydmVyLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpX3Rlc3Rfc2VydmVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhjOGM2NDEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlfdGVzdF9zZXJ2ZXIucHkKQEAgLTAsMCArMSw1OSBAQAorIiIiVGVzdCBQeVBJIFNlcnZlciBpbXBsZW1lbnRhdGlvbiBhdCB0ZXN0cHlwaS5weXRob24ub3JnLCB0byB1c2UgaW4gdGVzdHMuCisKK1RoaXMgaXMgYSBkcm9wLWluIHJlcGxhY2VtZW50IGZvciB0aGUgbW9jayBweXBpIHNlcnZlciBmb3IgdGVzdGluZyBhZ2FpbnN0IGEKK3JlYWwgcHlwaSBzZXJ2ZXIgaG9zdGVkIGJ5IHB5dGhvbi5vcmcgZXNwZWNpYWxseSBmb3IgdGVzdGluZyBhZ2FpbnN0LgorIiIiCisKK2ltcG9ydCB1bml0dGVzdAorCitQWVBJX0RFRkFVTFRfU1RBVElDX1BBVEggPSBOb25lCisKKworZGVmIHVzZV94bWxycGNfc2VydmVyKCpzZXJ2ZXJfYXJncywgKipzZXJ2ZXJfa3dhcmdzKToKKyAgICBzZXJ2ZXJfa3dhcmdzWydzZXJ2ZV94bWxycGMnXSA9IFRydWUKKyAgICByZXR1cm4gdXNlX3B5cGlfc2VydmVyKCpzZXJ2ZXJfYXJncywgKipzZXJ2ZXJfa3dhcmdzKQorCisKK2RlZiB1c2VfaHR0cF9zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpOgorICAgIHNlcnZlcl9rd2FyZ3NbJ3NlcnZlX3htbHJwYyddID0gRmFsc2UKKyAgICByZXR1cm4gdXNlX3B5cGlfc2VydmVyKCpzZXJ2ZXJfYXJncywgKipzZXJ2ZXJfa3dhcmdzKQorCisKK2RlZiB1c2VfcHlwaV9zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpOgorICAgICIiIkRlY29yYXRvciB0byBtYWtlIHVzZSBvZiB0aGUgUHlQSVNlcnZlciBmb3IgdGVzdCBtZXRob2RzLAorICAgIGp1c3Qgd2hlbiBuZWVkZWQsIGFuZCBub3QgZm9yIHRoZSBlbnRpcmUgZHVyYXRpb24gb2YgdGhlIHRlc3RjYXNlLgorICAgICIiIgorICAgIGRlZiB3cmFwcGVyKGZ1bmMpOgorICAgICAgICBkZWYgd3JhcHBlZCgqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAgICAgc2VydmVyID0gUHlQSVNlcnZlcigqc2VydmVyX2FyZ3MsICoqc2VydmVyX2t3YXJncykKKyAgICAgICAgICAgIGZ1bmMoc2VydmVyPXNlcnZlciwgKmFyZ3MsICoqa3dhcmdzKQorICAgICAgICByZXR1cm4gd3JhcHBlZAorICAgIHJldHVybiB3cmFwcGVyCisKKworY2xhc3MgUHlQSVNlcnZlclRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoUHlQSVNlcnZlclRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYucHlwaSA9IFB5UElTZXJ2ZXIoKQorICAgICAgICBzZWxmLnB5cGkuc3RhcnQoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi5weXBpLnN0b3ApCisKKworY2xhc3MgUHlQSVNlcnZlcjoKKyAgICAiIiJTaGltIHRvIGFjY2VzcyB0ZXN0cHlwaS5weXRob24ub3JnLCBmb3IgdGVzdGluZyBhIHJlYWwgc2VydmVyLiIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHRlc3Rfc3RhdGljX3BhdGg9Tm9uZSwKKyAgICAgICAgICAgICAgICAgc3RhdGljX2ZpbGVzeXN0ZW1fcGF0aHM9WyJkZWZhdWx0Il0sCisgICAgICAgICAgICAgICAgIHN0YXRpY191cmlfcGF0aHM9WyJzaW1wbGUiXSwgc2VydmVfeG1scnBjPUZhbHNlKToKKyAgICAgICAgc2VsZi5hZGRyZXNzID0gKCd0ZXN0cHlwaS5weXRob24ub3JnJywgJzgwJykKKworICAgIGRlZiBzdGFydChzZWxmKToKKyAgICAgICAgcGFzcworCisgICAgZGVmIHN0b3Aoc2VsZik6CisgICAgICAgIHBhc3MKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBmdWxsX2FkZHJlc3Moc2VsZik6CisgICAgICAgIHJldHVybiAiaHR0cDovLyVzOiVzIiAlIHNlbGYuYWRkcmVzcwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9wYWNrYWdlcy9zb3VyY2UvZi9mb29iYXIvZm9vYmFyLTAuMS50YXIuZ3ogYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3BhY2thZ2VzL3NvdXJjZS9mL2Zvb2Jhci9mb29iYXItMC4xLnRhci5negpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMzM5NjFlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9wYWNrYWdlcy9zb3VyY2UvZi9mb29iYXIvZm9vYmFyLTAuMS50YXIuZ3oKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9iYWRtZDUvYmFkbWQ1LTAuMS50YXIuZ3oKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2JhZG1kNS9iYWRtZDUtMC4xLnRhci5negpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9zaW1wbGUvYmFkbWQ1L2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9iYWRtZDUvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iODlmMWJkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9zaW1wbGUvYmFkbWQ1L2luZGV4Lmh0bWwKQEAgLTAsMCArMSwzIEBACis8aHRtbD48Ym9keT4KKzxhIGhyZWY9ImJhZG1kNS0wLjEudGFyLmd6I21kNT0zZTNkODY2OTNkNjU2NGM4MDcyNzJiMTFiMzA2OWRmZSIgcmVsPSJkb3dubG9hZCI+YmFkbWQ1LTAuMS50YXIuZ3o8L2E+PGJyLz4KKzwvYm9keT48L2h0bWw+CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9mb29iYXIvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjllNDJiMTYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9mb29iYXIvaW5kZXguaHRtbApAQCAtMCwwICsxLDMgQEAKKzxodG1sPjxib2R5PgorPGEgaHJlZj0iZm9vYmFyLTAuMS50YXIuZ3ojbWQ1PWZlMTg4MDRjNWI3MjJmZjAyNGNhYmRmNTE0OTI0ZmM0IiByZWw9ImRvd25sb2FkIj5mb29iYXItMC4xLnRhci5nejwvYT48YnIvPgorPC9ib2R5PjwvaHRtbD4KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjliYWVlMDQKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9pbmRleC5odG1sCkBAIC0wLDAgKzEsMiBAQAorPGEgaHJlZj0iZm9vYmFyLyI+Zm9vYmFyLzwvYT4gCis8YSBocmVmPSJiYWRtZDUvIj5iYWRtZDUvPC9hPiAKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvYmFyL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlL2Jhci9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMzZDQyYzUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlL2Jhci9pbmRleC5odG1sCkBAIC0wLDAgKzEsNiBAQAorPGh0bWw+PGhlYWQ+PHRpdGxlPkxpbmtzIGZvciBiYXI8L3RpdGxlPjwvaGVhZD48Ym9keT48aDE+TGlua3MgZm9yIGJhcjwvaDE+Cis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9iYXIvYmFyLTEuMC50YXIuZ3oiPmJhci0xLjAudGFyLmd6PC9hPjxici8+IAorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvYmFyL2Jhci0xLjAuMS50YXIuZ3oiPmJhci0xLjAuMS50YXIuZ3o8L2E+PGJyLz4gCis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9iYXIvYmFyLTIuMC50YXIuZ3oiPmJhci0yLjAudGFyLmd6PC9hPjxici8+IAorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvYmFyL2Jhci0yLjAuMS50YXIuZ3oiPmJhci0yLjAuMS50YXIuZ3o8L2E+PGJyLz4gCis8L2JvZHk+PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9iYXovaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvYmF6L2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGYzNDMxMgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvYmF6L2luZGV4Lmh0bWwKQEAgLTAsMCArMSw2IEBACis8aHRtbD48aGVhZD48dGl0bGU+TGlua3MgZm9yIGJhejwvdGl0bGU+PC9oZWFkPjxib2R5PjxoMT5MaW5rcyBmb3IgYmF6PC9oMT4KKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL2Jhei9iYXotMS4wLnRhci5neiI+YmF6LTEuMC50YXIuZ3o8L2E+PGJyLz4gCis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9iYXovYmF6LTEuMC4xLnRhci5neiI+YmF6LTEuMC4xLnRhci5nejwvYT48YnIvPiAKKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL2Jhei9iYXotMi4wLnRhci5neiI+YmF6LTIuMC50YXIuZ3o8L2E+PGJyLz4gCis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9iYXovYmF6LTIuMC4xLnRhci5neiI+YmF6LTIuMC4xLnRhci5nejwvYT48YnIvPiAKKzwvYm9keT48L2h0bWw+CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlL2Zvby9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9mb28vaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNTY1ZTExCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9mb28vaW5kZXguaHRtbApAQCAtMCwwICsxLDYgQEAKKzxodG1sPjxoZWFkPjx0aXRsZT5MaW5rcyBmb3IgZm9vPC90aXRsZT48L2hlYWQ+PGJvZHk+PGgxPkxpbmtzIGZvciBmb288L2gxPgorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvZm9vL2Zvby0xLjAudGFyLmd6Ij5mb28tMS4wLnRhci5nejwvYT48YnIvPiAKKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL2Zvby9mb28tMS4wLjEudGFyLmd6Ij5mb28tMS4wLjEudGFyLmd6PC9hPjxici8+IAorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvZm9vL2Zvby0yLjAudGFyLmd6Ij5mb28tMi4wLnRhci5nejwvYT48YnIvPiAKKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL2Zvby9mb28tMi4wLjEudGFyLmd6Ij5mb28tMi4wLjEudGFyLmd6PC9hPjxici8+IAorPC9ib2R5PjwvaHRtbD4KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNzBjZmQzCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9pbmRleC5odG1sCkBAIC0wLDAgKzEsMyBAQAorPGEgaHJlZj0iZm9vLyI+Zm9vLzwvYT4gCis8YSBocmVmPSJiYXIvIj5iYXIvPC9hPiAKKzxhIGhyZWY9ImJhei8iPmJhei88L2E+IApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Byb2plY3RfbGlzdC9zaW1wbGUvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9wcm9qZWN0X2xpc3Qvc2ltcGxlL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjM2ZDcyOAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9wcm9qZWN0X2xpc3Qvc2ltcGxlL2luZGV4Lmh0bWwKQEAgLTAsMCArMSw1IEBACis8YSBjbGFzcz0idGVzdCIgaHJlZj0ieWVhaCI+Rm9vQmFyLWJhcjwvYT4KKzxhIGNsYXNzPSJ0ZXN0IiBocmVmPSJ5ZWFoIj5Gb29iYXItYmF6PC9hPgorPGEgY2xhc3M9InRlc3QiIGhyZWY9InllYWgiPkJhei1Gb29CYXI8L2E+Cis8YSBjbGFzcz0idGVzdCIgaHJlZj0ieWVhaCI+QmF6PC9hPgorPGEgY2xhc3M9InRlc3QiIGhyZWY9InllYWgiPkZvbzwvYT4KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X2ZvdW5kX2xpbmtzL3NpbXBsZS9mb29iYXIvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X2ZvdW5kX2xpbmtzL3NpbXBsZS9mb29iYXIvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMjgyYTRlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3Mvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sCkBAIC0wLDAgKzEsNiBAQAorPGh0bWw+PGhlYWQ+PHRpdGxlPkxpbmtzIGZvciBGb29iYXI8L3RpdGxlPjwvaGVhZD48Ym9keT48aDE+TGlua3MgZm9yIEZvb2JhcjwvaDE+Cis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9Gb29iYXIvRm9vYmFyLTEuMC50YXIuZ3ojbWQ1PTk4ZmE4MzNmZGFiY2RkNzhkMDAyNDVhZWFkNjZjMTc0Ij5Gb29iYXItMS4wLnRhci5nejwvYT48YnIvPiAKKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL0Zvb2Jhci9Gb29iYXItMS4wLjEudGFyLmd6I21kNT0yMzUxZWZiMjBmNmI3YjVkOWNlODBmYTRjYjFiZDljYSI+Rm9vYmFyLTEuMC4xLnRhci5nejwvYT48YnIvPiAKKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL0Zvb2Jhci9Gb29iYXItMi4wLnRhci5neiNtZDU9OThmYTgzM2ZkYWJjZGQ3OGQwMDI0NWFlYWQ2NmMyNzQiPkZvb2Jhci0yLjAudGFyLmd6PC9hPjxici8+IAorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvRm9vYmFyL0Zvb2Jhci0yLjAuMS50YXIuZ3ojbWQ1PTIzNTJlZmIyMGY2YjdiNWQ5Y2U4MGZhNGNiMmJkOWNhIj5Gb29iYXItMi4wLjEudGFyLmd6PC9hPjxici8+IAorPC9ib2R5PjwvaHRtbD4KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X2ZvdW5kX2xpbmtzL3NpbXBsZS9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3Mvc2ltcGxlL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTFhN2JiNwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X2ZvdW5kX2xpbmtzL3NpbXBsZS9pbmRleC5odG1sCkBAIC0wLDAgKzEgQEAKKzxhIGhyZWY9ImZvb2Jhci8iPmZvb2Jhci88L2E+IApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfcHlwaV9zZXJ2ZXIvZXh0ZXJuYWwvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X3B5cGlfc2VydmVyL2V4dGVybmFsL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjY1ZWUwYQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X3B5cGlfc2VydmVyL2V4dGVybmFsL2luZGV4Lmh0bWwKQEAgLTAsMCArMSBAQAoraW5kZXguaHRtbCBmcm9tIGV4dGVybmFsIHNlcnZlcgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfcHlwaV9zZXJ2ZXIvc2ltcGxlL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvdGVzdF9weXBpX3NlcnZlci9zaW1wbGUvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42Zjk3NjY3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfcHlwaV9zZXJ2ZXIvc2ltcGxlL2luZGV4Lmh0bWwKQEAgLTAsMCArMSBAQAorWWVhaApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfZXh0ZXJuYWxzL2V4dGVybmFsL2V4dGVybmFsLmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvZXh0ZXJuYWwvZXh0ZXJuYWwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MmU0NzAyCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfZXh0ZXJuYWxzL2V4dGVybmFsL2V4dGVybmFsLmh0bWwKQEAgLTAsMCArMSwzIEBACis8aHRtbD48Ym9keT4KKzxhIGhyZWY9Ii9mb29iYXItMC4xLnRhci5neiNtZDU9MV9fYmFkX21kNV9fXyI+YmFkIG9sZCBsaW5rPC9hPgorPC9ib2R5PjwvaHRtbD4KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX2V4dGVybmFscy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIxMDBhMjYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sCkBAIC0wLDAgKzEsNCBAQAorPGh0bWw+PGJvZHk+Cis8YSByZWwgPSJkb3dubG9hZCIgaHJlZj0iL2Zvb2Jhci0wLjEudGFyLmd6I21kNT0xMjM0NTY3ODkwMTIzNDU2NyI+Zm9vYmFyLTAuMS50YXIuZ3o8L2E+PGJyLz4KKzxhIGhyZWY9Ii4uLy4uL2V4dGVybmFsL2V4dGVybmFsLmh0bWwiIHJlbD0iaG9tZXBhZ2UiPmV4dGVybmFsIGhvbWVwYWdlPC9hPjxici8+Cis8L2JvZHk+PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfZXh0ZXJuYWxzL3NpbXBsZS9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfZXh0ZXJuYWxzL3NpbXBsZS9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExYTdiYjcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvc2ltcGxlL2luZGV4Lmh0bWwKQEAgLTAsMCArMSBAQAorPGEgaHJlZj0iZm9vYmFyLyI+Zm9vYmFyLzwvYT4gCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9leHRlcm5hbC9ob21lcGFnZS5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3MvZXh0ZXJuYWwvaG9tZXBhZ2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xY2MwYzMyCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3MvZXh0ZXJuYWwvaG9tZXBhZ2UuaHRtbApAQCAtMCwwICsxLDcgQEAKKzxodG1sPgorPGJvZHk+Cis8cD5hIHJlbD1ob21lcGFnZSBIVE1MIHBhZ2U8L3A+Cis8YSBocmVmPSIvZm9vYmFyLTIuMC50YXIuZ3oiPmZvb2JhciAyLjA8L2E+Cis8L2JvZHk+Cis8L2h0bWw+CisKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL2V4dGVybmFsL25vbnJlbC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3MvZXh0ZXJuYWwvbm9ucmVsLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjZhY2UyMgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL2V4dGVybmFsL25vbnJlbC5odG1sCkBAIC0wLDAgKzEgQEAKK0EgcGFnZSBsaW5rZWQgd2l0aG91dCByZWw9ImRvd25sb2FkIiBvciByZWw9ImhvbWVwYWdlIiBsaW5rLgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3Mvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3Mvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE3MWRmOTMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwKQEAgLTAsMCArMSw2IEBACis8aHRtbD48Ym9keT4KKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii9mb29iYXItMC4xLnRhci5neiIgcmVsPSJkb3dubG9hZCI+Zm9vYmFyLTAuMS50YXIuZ3o8L2E+PGJyLz4KKzxhIGhyZWY9Ii4uLy4uL2V4dGVybmFsL2hvbWVwYWdlLmh0bWwiIHJlbD0iaG9tZXBhZ2UiPmV4dGVybmFsIGhvbWVwYWdlPC9hPjxici8+Cis8YSBocmVmPSIuLi8uLi9leHRlcm5hbC9ub25yZWwuaHRtbCI+dW5yZWxhdGVkIGxpbms8L2E+PGJyLz4KKzxhIGhyZWY9Ii91bnJlbGF0ZWQtMC4yLnRhci5neiI+dW5yZWxhdGVkIGRvd25sb2FkPC9hPjwvYnIvPgorPC9ib2R5PjwvaHRtbD4KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL3NpbXBsZS9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3Mvc2ltcGxlL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTFhN2JiNwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL3NpbXBsZS9pbmRleC5odG1sCkBAIC0wLDAgKzEgQEAKKzxhIGhyZWY9ImZvb2Jhci8iPmZvb2Jhci88L2E+IApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfcmVhbF9leHRlcm5hbHMvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfcmVhbF9leHRlcm5hbHMvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIyODg1YWUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9yZWFsX2V4dGVybmFscy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwKQEAgLTAsMCArMSw0IEBACis8aHRtbD48Ym9keT4KKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii9mb29iYXItMC4xLnRhci5neiNtZDU9MF9jb3JyZWN0X21kNSI+Zm9vYmFyLTAuMS50YXIuZ3o8L2E+PGJyLz4KKzxhIGhyZWY9Imh0dHA6Ly9hLXJlYWxseS1leHRlcm5hbC13ZWJzaXRlL2V4dGVybmFsL2V4dGVybmFsLmh0bWwiIHJlbD0iaG9tZXBhZ2UiPmV4dGVybmFsIGhvbWVwYWdlPC9hPjxici8+Cis8L2JvZHk+PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfcmVhbF9leHRlcm5hbHMvc2ltcGxlL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9yZWFsX2V4dGVybmFscy9zaW1wbGUvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMWE3YmI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfcmVhbF9leHRlcm5hbHMvc2ltcGxlL2luZGV4Lmh0bWwKQEAgLTAsMCArMSBAQAorPGEgaHJlZj0iZm9vYmFyLyI+Zm9vYmFyLzwvYT4gCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3N1cHBvcnQucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3N1cHBvcnQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDc2ZDNkYgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvc3VwcG9ydC5weQpAQCAtMCwwICsxLDQwMCBAQAorIiIiU3VwcG9ydCBjb2RlIGZvciBwYWNrYWdpbmcgdGVzdCBjYXNlcy4KKworKlRoaXMgbW9kdWxlIHNob3VsZCBub3QgYmUgY29uc2lkZXJlZCBwdWJsaWM6IGl0cyBjb250ZW50IGFuZCBBUEkgbWF5CitjaGFuZ2UgaW4gaW5jb21wYXRpYmxlIHdheXMuKgorCitBIGZldyBoZWxwZXIgY2xhc3NlcyBhcmUgcHJvdmlkZWQ6IExvZ2dpbmdDYXRjaGVyLCBUZW1wZGlyTWFuYWdlciBhbmQKK0Vudmlyb25SZXN0b3Jlci4gVGhleSBhcmUgd3JpdHRlbiB0byBiZSB1c2VkIGFzIG1peGluczo6CisKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCBMb2dnaW5nQ2F0Y2hlcgorCisgICAgY2xhc3MgU29tZVRlc3RDYXNlKExvZ2dpbmdDYXRjaGVyLCB1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgICAgIC4uLgorCitJZiB5b3UgbmVlZCB0byBkZWZpbmUgYSBzZXRVcCBtZXRob2Qgb24geW91ciB0ZXN0IGNsYXNzLCB5b3UgaGF2ZSB0bworY2FsbCB0aGUgbWl4aW4gY2xhc3MnIHNldFVwIG1ldGhvZCBvciBpdCB3b24ndCB3b3JrIChzYW1lIHRoaW5nIGZvcgordGVhckRvd24pOgorCisgICAgICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgICAgIHN1cGVyKFNvbWVUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICAgICAgLi4uICAjIG90aGVyIHNldHVwIGNvZGUKKworQWxzbyBwcm92aWRlZCBpcyBhIER1bW15Q29tbWFuZCBjbGFzcywgdXNlZnVsIHRvIG1vY2sgY29tbWFuZHMgaW4gdGhlCit0ZXN0cyBvZiBhbm90aGVyIGNvbW1hbmQgdGhhdCBuZWVkcyB0aGVtLCBmb3IgZXhhbXBsZSB0byBmYWtlCitjb21waWxhdGlvbiBpbiBidWlsZF9leHQgKHRoaXMgcmVxdWlyZXMgdGhhdCB0aGUgbW9jayBidWlsZF9leHQgY29tbWFuZAorYmUgaW5qZWN0ZWQgaW50byB0aGUgZGlzdHJpYnV0aW9uIG9iamVjdCdzIGNvbW1hbmRfb2JqIGRpY3Rpb25hcnkpLgorCitGb3IgdGVzdHMgdGhhdCBuZWVkIHRvIGNvbXBpbGUgYW4gZXh0ZW5zaW9uIG1vZHVsZSwgdXNlIHRoZQorY29weV94eG1vZHVsZV9jIGFuZCBmaXh1cF9idWlsZF9leHQgZnVuY3Rpb25zLgorCitFYWNoIGNsYXNzIG9yIGZ1bmN0aW9uIGhhcyBhIGRvY3N0cmluZyB0byBleHBsYWluIGl0cyBwdXJwb3NlIGFuZCB1c2FnZS4KK0V4aXN0aW5nIHRlc3RzIHNob3VsZCBhbHNvIGJlIHVzZWQgYXMgZXhhbXBsZXMuCisiIiIKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgc2h1dGlsCitpbXBvcnQgbG9nZ2luZworaW1wb3J0IHdlYWtyZWYKK2ltcG9ydCB0ZW1wZmlsZQoraW1wb3J0IHN5c2NvbmZpZworCitmcm9tIHBhY2thZ2luZy5kaXN0IGltcG9ydCBEaXN0cmlidXRpb24KK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHJlc29sdmVfbmFtZQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZCBpbXBvcnQgc2V0X2NvbW1hbmQsIF9DT01NQU5EUworCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCByZXF1aXJlc196bGliLCB1bmxpbmsKKworIyBkZWZpbmUgX19hbGxfXyB0byBtYWtlIHB5ZG9jIG1vcmUgdXNlZnVsCitfX2FsbF9fID0gWworICAgICMgVGVzdENhc2UgbWl4aW5zCisgICAgJ0xvZ2dpbmdDYXRjaGVyJywgJ1RlbXBkaXJNYW5hZ2VyJywgJ0Vudmlyb25SZXN0b3JlcicsCisgICAgIyBtb2NrcworICAgICdEdW1teUNvbW1hbmQnLCAnVGVzdERpc3RyaWJ1dGlvbicsICdJbnB1dHMnLAorICAgICMgbWlzYy4gZnVuY3Rpb25zIGFuZCBkZWNvcmF0b3JzCisgICAgJ2Zha2VfZGVjJywgJ2NyZWF0ZV9kaXN0cmlidXRpb24nLCAndXNlX2NvbW1hbmQnLAorICAgICdjb3B5X3h4bW9kdWxlX2MnLCAnZml4dXBfYnVpbGRfZXh0JywKKyAgICAnc2tpcF8ydG8zX29wdGltaXplJywKKyAgICAjIGltcG9ydGVkIGZyb20gdGhpcyBtb2R1bGUgZm9yIGJhY2twb3J0IHB1cnBvc2VzCisgICAgJ3VuaXR0ZXN0JywgJ3JlcXVpcmVzX3psaWInLCAnc2tpcF91bmxlc3Nfc3ltbGluaycsCitdCisKKworbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoJ3BhY2thZ2luZycpCitsb2dnZXIydG8zID0gbG9nZ2luZy5nZXRMb2dnZXIoJ1JlZmFjdG9yaW5nVG9vbCcpCisKKworY2xhc3MgX1Rlc3RIYW5kbGVyKGxvZ2dpbmcuaGFuZGxlcnMuQnVmZmVyaW5nSGFuZGxlcik6CisgICAgIyBzdG9sZW4gYW5kIGFkYXB0ZWQgZnJvbSB0ZXN0LnN1cHBvcnQKKworICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgc3VwZXIoX1Rlc3RIYW5kbGVyLCBzZWxmKS5fX2luaXRfXygwKQorICAgICAgICBzZWxmLnNldExldmVsKGxvZ2dpbmcuREVCVUcpCisKKyAgICBkZWYgc2hvdWxkRmx1c2goc2VsZik6CisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgZGVmIGVtaXQoc2VsZiwgcmVjb3JkKToKKyAgICAgICAgc2VsZi5idWZmZXIuYXBwZW5kKHJlY29yZCkKKworCitjbGFzcyBMb2dnaW5nQ2F0Y2hlcjoKKyAgICAiIiJUZXN0Q2FzZS1jb21wYXRpYmxlIG1peGluIHRvIHJlY2VpdmUgbG9nZ2luZyBjYWxscy4KKworICAgIFVwb24gc2V0VXAsIGluc3RhbmNlcyBvZiB0aGlzIGNsYXNzZXMgZ2V0IGEgQnVmZmVyaW5nSGFuZGxlciB0aGF0J3MKKyAgICBjb25maWd1cmVkIHRvIHJlY29yZCBhbGwgbWVzc2FnZXMgbG9nZ2VkIHRvIHRoZSAncGFja2FnaW5nJyBsb2dnZXIuCisKKyAgICBVc2UgZ2V0X2xvZ3MgdG8gcmV0cmlldmUgbWVzc2FnZXMgYW5kIHNlbGYubG9naGFuZGxlci5mbHVzaCB0byBkaXNjYXJkCisgICAgdGhlbS4gIGdldF9sb2dzIGF1dG9tYXRpY2FsbHkgZmx1c2hlcyB0aGUgbG9ncywgdW5sZXNzIHlvdSBwYXNzCisgICAgKmZsdXNoPUZhbHNlKiwgZm9yIGV4YW1wbGUgdG8gbWFrZSBtdWx0aXBsZSBjYWxscyB0byB0aGUgbWV0aG9kIHdpdGgKKyAgICBkaWZmZXJlbnQgbGV2ZWwgYXJndW1lbnRzLiAgSWYgeW91ciB0ZXN0IGNhbGxzIHNvbWUgY29kZSB0aGF0IGdlbmVyYXRlcworICAgIGxvZ2dpbmcgbWVzc2FnZSBhbmQgdGhlbiB5b3UgZG9uJ3QgY2FsbCBnZXRfbG9ncywgeW91IHdpbGwgbmVlZCB0byBmbHVzaAorICAgIG1hbnVhbGx5IGJlZm9yZSB0ZXN0aW5nIG90aGVyIGNvZGUgaW4gdGhlIHNhbWUgdGVzdF8qIG1ldGhvZCwgb3RoZXJ3aXNlCisgICAgZ2V0X2xvZ3MgaW4gdGhlIG5leHQgbGluZXMgd2lsbCBzZWUgbWVzc2FnZXMgZnJvbSB0aGUgcHJldmlvdXMgbGluZXMuCisgICAgU2VlIGV4YW1wbGUgaW4gdGVzdF9jb21tYW5kX2NoZWNrLgorICAgICIiIgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihMb2dnaW5nQ2F0Y2hlciwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLmxvZ2hhbmRsZXIgPSBoYW5kbGVyID0gX1Rlc3RIYW5kbGVyKCkKKyAgICAgICAgc2VsZi5fb2xkX2xldmVscyA9IGxvZ2dlci5sZXZlbCwgbG9nZ2VyMnRvMy5sZXZlbAorICAgICAgICBsb2dnZXIuYWRkSGFuZGxlcihoYW5kbGVyKQorICAgICAgICBsb2dnZXIuc2V0TGV2ZWwobG9nZ2luZy5ERUJVRykgICMgd2Ugd2FudCBhbGwgbWVzc2FnZXMKKyAgICAgICAgbG9nZ2VyMnRvMy5zZXRMZXZlbChsb2dnaW5nLkNSSVRJQ0FMKSAgIyB3ZSBkb24ndCB3YW50IDJ0bzMgbWVzc2FnZXMKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgaGFuZGxlciA9IHNlbGYubG9naGFuZGxlcgorICAgICAgICAjIEFsbCB0aGlzIGlzIG5lY2Vzc2FyeSB0byBwcm9wZXJseSBzaHV0IGRvd24gdGhlIGxvZ2dpbmcgc3lzdGVtIGFuZAorICAgICAgICAjIGF2b2lkIGEgcmVncnRlc3QgY29tcGxhaW50LiAgVGhhbmtzIHRvIFZpbmF5IFNhamlwIGZvciB0aGUgaGVscC4KKyAgICAgICAgaGFuZGxlci5jbG9zZSgpCisgICAgICAgIGxvZ2dlci5yZW1vdmVIYW5kbGVyKGhhbmRsZXIpCisgICAgICAgIGZvciByZWYgaW4gd2Vha3JlZi5nZXR3ZWFrcmVmcyhoYW5kbGVyKToKKyAgICAgICAgICAgIGxvZ2dpbmcuX3JlbW92ZUhhbmRsZXJSZWYocmVmKQorICAgICAgICBkZWwgc2VsZi5sb2doYW5kbGVyCisgICAgICAgIGxvZ2dlci5zZXRMZXZlbChzZWxmLl9vbGRfbGV2ZWxzWzBdKQorICAgICAgICBsb2dnZXIydG8zLnNldExldmVsKHNlbGYuX29sZF9sZXZlbHNbMV0pCisgICAgICAgIHN1cGVyKExvZ2dpbmdDYXRjaGVyLCBzZWxmKS50ZWFyRG93bigpCisKKyAgICBkZWYgZ2V0X2xvZ3Moc2VsZiwgbGV2ZWw9bG9nZ2luZy5XQVJOSU5HLCBmbHVzaD1UcnVlKToKKyAgICAgICAgIiIiUmV0dXJuIGFsbCBsb2cgbWVzc2FnZXMgd2l0aCBnaXZlbiBsZXZlbC4KKworICAgICAgICAqbGV2ZWwqIGRlZmF1bHRzIHRvIGxvZ2dpbmcuV0FSTklORy4KKworICAgICAgICBGb3IgbG9nIGNhbGxzIHdpdGggYXJndW1lbnRzIChpLmUuICBsb2dnZXIuaW5mbygnYmxhIGJsYSAlcicsIGFyZykpLAorICAgICAgICB0aGUgbWVzc2FnZXMgd2lsbCBiZSBmb3JtYXR0ZWQgYmVmb3JlIGJlaW5nIHJldHVybmVkIChlLmcuICJibGEgYmxhCisgICAgICAgICd0aGluZyciKS4KKworICAgICAgICBSZXR1cm5zIGEgbGlzdC4gIEF1dG9tYXRpY2FsbHkgZmx1c2hlcyB0aGUgbG9naGFuZGxlciBhZnRlciBiZWluZworICAgICAgICBjYWxsZWQsIHVubGVzcyAqZmx1c2gqIGlzIEZhbHNlICh0aGlzIGlzIHVzZWZ1bCB0byBnZXQgZS5nLiBhbGwKKyAgICAgICAgd2FybmluZ3MgdGhlbiBhbGwgaW5mbyBtZXNzYWdlcykuCisgICAgICAgICIiIgorICAgICAgICBtZXNzYWdlcyA9IFtsb2cuZ2V0TWVzc2FnZSgpIGZvciBsb2cgaW4gc2VsZi5sb2doYW5kbGVyLmJ1ZmZlcgorICAgICAgICAgICAgICAgICAgICBpZiBsb2cubGV2ZWxubyA9PSBsZXZlbF0KKyAgICAgICAgaWYgZmx1c2g6CisgICAgICAgICAgICBzZWxmLmxvZ2hhbmRsZXIuZmx1c2goKQorICAgICAgICByZXR1cm4gbWVzc2FnZXMKKworCitjbGFzcyBUZW1wZGlyTWFuYWdlcjoKKyAgICAiIiJUZXN0Q2FzZS1jb21wYXRpYmxlIG1peGluIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3JpZXMgYW5kIGZpbGVzLgorCisgICAgRGlyZWN0b3JpZXMgYW5kIGZpbGVzIGNyZWF0ZWQgaW4gYSB0ZXN0XyogbWV0aG9kIHdpbGwgYmUgcmVtb3ZlZCBhZnRlciBpdAorICAgIGhhcyBydW4uCisgICAgIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFRlbXBkaXJNYW5hZ2VyLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYuX29sZGRpciA9IG9zLmdldGN3ZCgpCisgICAgICAgIHNlbGYuX2Jhc2V0ZW1wZGlyID0gdGVtcGZpbGUubWtkdGVtcCgpCisgICAgICAgIHNlbGYuX2ZpbGVzID0gW10KKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgZm9yIGhhbmRsZSwgbmFtZSBpbiBzZWxmLl9maWxlczoKKyAgICAgICAgICAgIGhhbmRsZS5jbG9zZSgpCisgICAgICAgICAgICB1bmxpbmsobmFtZSkKKworICAgICAgICBvcy5jaGRpcihzZWxmLl9vbGRkaXIpCisgICAgICAgIHNodXRpbC5ybXRyZWUoc2VsZi5fYmFzZXRlbXBkaXIpCisgICAgICAgIHN1cGVyKFRlbXBkaXJNYW5hZ2VyLCBzZWxmKS50ZWFyRG93bigpCisKKyAgICBkZWYgbWt0ZW1wZmlsZShzZWxmKToKKyAgICAgICAgIiIiQ3JlYXRlIGEgcmVhZC13cml0ZSB0ZW1wb3JhcnkgZmlsZSBhbmQgcmV0dXJuIGl0LiIiIgorICAgICAgICBmZCwgZm4gPSB0ZW1wZmlsZS5ta3N0ZW1wKGRpcj1zZWxmLl9iYXNldGVtcGRpcikKKyAgICAgICAgb3MuY2xvc2UoZmQpCisgICAgICAgIGZwID0gb3BlbihmbiwgJ3crJykKKyAgICAgICAgc2VsZi5fZmlsZXMuYXBwZW5kKChmcCwgZm4pKQorICAgICAgICByZXR1cm4gZnAKKworICAgIGRlZiBta2R0ZW1wKHNlbGYpOgorICAgICAgICAiIiJDcmVhdGUgYSB0ZW1wb3JhcnkgZGlyZWN0b3J5IGFuZCByZXR1cm4gaXRzIHBhdGguIiIiCisgICAgICAgIGQgPSB0ZW1wZmlsZS5ta2R0ZW1wKGRpcj1zZWxmLl9iYXNldGVtcGRpcikKKyAgICAgICAgcmV0dXJuIGQKKworICAgIGRlZiB3cml0ZV9maWxlKHNlbGYsIHBhdGgsIGNvbnRlbnQ9J3h4eCcsIGVuY29kaW5nPU5vbmUpOgorICAgICAgICAiIiJXcml0ZSBhIGZpbGUgYXQgdGhlIGdpdmVuIHBhdGguCisKKyAgICAgICAgcGF0aCBjYW4gYmUgYSBzdHJpbmcsIGEgdHVwbGUgb3IgYSBsaXN0OyBpZiBpdCdzIGEgdHVwbGUgb3IgbGlzdCwKKyAgICAgICAgb3MucGF0aC5qb2luIHdpbGwgYmUgdXNlZCB0byBwcm9kdWNlIGEgcGF0aC4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIGlzaW5zdGFuY2UocGF0aCwgKGxpc3QsIHR1cGxlKSk6CisgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKCpwYXRoKQorICAgICAgICB3aXRoIG9wZW4ocGF0aCwgJ3cnLCBlbmNvZGluZz1lbmNvZGluZykgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoY29udGVudCkKKworICAgIGRlZiBjcmVhdGVfZGlzdChzZWxmLCAqKmt3KToKKyAgICAgICAgIiIiQ3JlYXRlIGEgc3R1YiBkaXN0cmlidXRpb24gb2JqZWN0IGFuZCBmaWxlcy4KKworICAgICAgICBUaGlzIGZ1bmN0aW9uIGNyZWF0ZXMgYSBEaXN0cmlidXRpb24gaW5zdGFuY2UgKHVzZSBrZXl3b3JkIGFyZ3VtZW50cworICAgICAgICB0byBjdXN0b21pemUgaXQpIGFuZCBhIHRlbXBvcmFyeSBkaXJlY3Rvcnkgd2l0aCBhIHByb2plY3Qgc3RydWN0dXJlCisgICAgICAgIChjdXJyZW50bHkgYW4gZW1wdHkgZGlyZWN0b3J5KS4KKworICAgICAgICBJdCByZXR1cm5zIHRoZSBwYXRoIHRvIHRoZSBkaXJlY3RvcnkgYW5kIHRoZSBEaXN0cmlidXRpb24gaW5zdGFuY2UuCisgICAgICAgIFlvdSBjYW4gdXNlIHNlbGYud3JpdGVfZmlsZSB0byB3cml0ZSBhbnkgZmlsZSBpbiB0aGF0CisgICAgICAgIGRpcmVjdG9yeSwgZS5nLiBzZXR1cCBzY3JpcHRzIG9yIFB5dGhvbiBtb2R1bGVzLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgJ25hbWUnIG5vdCBpbiBrdzoKKyAgICAgICAgICAgIGt3WyduYW1lJ10gPSAnZm9vJworICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgcHJvamVjdF9kaXIgPSBvcy5wYXRoLmpvaW4odG1wX2Rpciwga3dbJ25hbWUnXSkKKyAgICAgICAgb3MubWtkaXIocHJvamVjdF9kaXIpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oYXR0cnM9a3cpCisgICAgICAgIHJldHVybiBwcm9qZWN0X2RpciwgZGlzdAorCisgICAgZGVmIGFzc2VydElzRmlsZShzZWxmLCAqYXJncyk6CisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oKmFyZ3MpCisgICAgICAgIGRpcm5hbWUgPSBvcy5wYXRoLmRpcm5hbWUocGF0aCkKKyAgICAgICAgZmlsZSA9IG9zLnBhdGguYmFzZW5hbWUocGF0aCkKKyAgICAgICAgaWYgb3MucGF0aC5pc2RpcihkaXJuYW1lKToKKyAgICAgICAgICAgIGZpbGVzID0gb3MubGlzdGRpcihkaXJuYW1lKQorICAgICAgICAgICAgbXNnID0gIiVzIG5vdCBmb3VuZCBpbiAlczogJXMiICUgKGZpbGUsIGRpcm5hbWUsIGZpbGVzKQorICAgICAgICAgICAgYXNzZXJ0IG9zLnBhdGguaXNmaWxlKHBhdGgpLCBtc2cKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKAorICAgICAgICAgICAgICAgICAgICAnJXMgbm90IGZvdW5kLiAlcyBkb2VzIG5vdCBleGlzdCcgJSAoZmlsZSwgZGlybmFtZSkpCisKKyAgICBkZWYgYXNzZXJ0SXNOb3RGaWxlKHNlbGYsICphcmdzKToKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbigqYXJncykKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmlzZmlsZShwYXRoKSwgIiVyIGV4aXN0cyIgJSBwYXRoKQorCisKK2NsYXNzIEVudmlyb25SZXN0b3JlcjoKKyAgICAiIiJUZXN0Q2FzZS1jb21wYXRpYmxlIG1peGluIHRvIHJlc3RvcmUgb3IgZGVsZXRlIGVudmlyb25tZW50IHZhcmlhYmxlcy4KKworICAgIFRoZSB2YXJpYWJsZXMgdG8gcmVzdG9yZSAob3IgZGVsZXRlIGlmIHRoZXkgd2VyZSBub3Qgb3JpZ2luYWxseSBwcmVzZW50KQorICAgIG11c3QgYmUgZXhwbGljaXRseSBsaXN0ZWQgaW4gc2VsZi5yZXN0b3JlX2Vudmlyb24uICBJdCdzIGJldHRlciB0byBiZQorICAgIGF3YXJlIG9mIHdoYXQgd2UncmUgbW9kaWZ5aW5nIGluc3RlYWQgb2Ygc2F2aW5nIGFuZCByZXN0b3JpbmcgdGhlIHdob2xlCisgICAgZW52aXJvbm1lbnQuCisgICAgIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKEVudmlyb25SZXN0b3Jlciwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLl9zYXZlZCA9IFtdCisgICAgICAgIHNlbGYuX2FkZGVkID0gW10KKyAgICAgICAgZm9yIGtleSBpbiBzZWxmLnJlc3RvcmVfZW52aXJvbjoKKyAgICAgICAgICAgIGlmIGtleSBpbiBvcy5lbnZpcm9uOgorICAgICAgICAgICAgICAgIHNlbGYuX3NhdmVkLmFwcGVuZCgoa2V5LCBvcy5lbnZpcm9uW2tleV0pKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLl9hZGRlZC5hcHBlbmQoa2V5KQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBmb3Iga2V5LCB2YWx1ZSBpbiBzZWxmLl9zYXZlZDoKKyAgICAgICAgICAgIG9zLmVudmlyb25ba2V5XSA9IHZhbHVlCisgICAgICAgIGZvciBrZXkgaW4gc2VsZi5fYWRkZWQ6CisgICAgICAgICAgICBvcy5lbnZpcm9uLnBvcChrZXksIE5vbmUpCisgICAgICAgIHN1cGVyKEVudmlyb25SZXN0b3Jlciwgc2VsZikudGVhckRvd24oKQorCisKK2NsYXNzIER1bW15Q29tbWFuZDoKKyAgICAiIiJDbGFzcyB0byBzdG9yZSBvcHRpb25zIGZvciByZXRyaWV2YWwgdmlhIHNldF91bmRlZmluZWRfb3B0aW9ucygpLgorCisgICAgVXNlZnVsIGZvciBtb2NraW5nIG9uZSBkZXBlbmRlbmN5IGNvbW1hbmQgaW4gdGhlIHRlc3RzIGZvciBhbm90aGVyCisgICAgY29tbWFuZCwgc2VlIGUuZy4gdGhlIGR1bW15IGJ1aWxkIGNvbW1hbmQgaW4gdGVzdF9idWlsZF9zY3JpcHRzLgorICAgICIiIgorICAgICMgWFhYIGRvZXMgbm90IHdvcmsgd2l0aCBkaXN0LnJlaW5pdGlhbGl6ZV9jb21tYW5kLCB3aGljaCB0eXBlY2hlY2tzCisgICAgIyBhbmQgd2FudHMgYSBmaW5hbGl6ZWQgYXR0cmlidXRlCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgorICAgICAgICBmb3Iga3csIHZhbCBpbiBrd2FyZ3MuaXRlbXMoKToKKyAgICAgICAgICAgIHNldGF0dHIoc2VsZiwga3csIHZhbCkKKworICAgIGRlZiBlbnN1cmVfZmluYWxpemVkKHNlbGYpOgorICAgICAgICBwYXNzCisKKworY2xhc3MgVGVzdERpc3RyaWJ1dGlvbihEaXN0cmlidXRpb24pOgorICAgICIiIkRpc3RyaWJ1dGlvbiBzdWJjbGFzc2VzIHRoYXQgYXZvaWRzIHRoZSBkZWZhdWx0IHNlYXJjaCBmb3IKKyAgICBjb25maWd1cmF0aW9uIGZpbGVzLgorCisgICAgVGhlIC5fY29uZmlnX2ZpbGVzIGF0dHJpYnV0ZSBtdXN0IGJlIHNldCBiZWZvcmUKKyAgICAucGFyc2VfY29uZmlnX2ZpbGVzKCkgaXMgY2FsbGVkLgorICAgICIiIgorCisgICAgZGVmIGZpbmRfY29uZmlnX2ZpbGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fY29uZmlnX2ZpbGVzCisKKworY2xhc3MgSW5wdXRzOgorICAgICIiIkZha2VzIHVzZXIgaW5wdXRzLiIiIgorICAgICMgVE9ETyBkb2N1bWVudCB1c2FnZQorICAgICMgVE9ETyB1c2UgY29udGV4dCBtYW5hZ2VyIG9yIHNvbWV0aGluZyBmb3IgYXV0byBjbGVhbnVwCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmFuc3dlcnMpOgorICAgICAgICBzZWxmLmFuc3dlcnMgPSBhbnN3ZXJzCisgICAgICAgIHNlbGYuaW5kZXggPSAwCisKKyAgICBkZWYgX19jYWxsX18oc2VsZiwgcHJvbXB0PScnKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuYW5zd2Vyc1tzZWxmLmluZGV4XQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VsZi5pbmRleCArPSAxCisKKworZGVmIGNyZWF0ZV9kaXN0cmlidXRpb24oY29uZmlnZmlsZXM9KCkpOgorICAgICIiIlByZXBhcmVzIGEgZGlzdHJpYnV0aW9uIHdpdGggZ2l2ZW4gY29uZmlnIGZpbGVzIHBhcnNlZC4iIiIKKyAgICBkID0gVGVzdERpc3RyaWJ1dGlvbigpCisgICAgZC5jb25maWcuZmluZF9jb25maWdfZmlsZXMgPSBkLmZpbmRfY29uZmlnX2ZpbGVzCisgICAgZC5fY29uZmlnX2ZpbGVzID0gY29uZmlnZmlsZXMKKyAgICBkLnBhcnNlX2NvbmZpZ19maWxlcygpCisgICAgZC5wYXJzZV9jb21tYW5kX2xpbmUoKQorICAgIHJldHVybiBkCisKKworZGVmIHVzZV9jb21tYW5kKHRlc3RjYXNlLCBmdWxsbmFtZSk6CisgICAgIiIiUmVnaXN0ZXIgY29tbWFuZCBhdCAqZnVsbG5hbWUqIGZvciB0aGUgZHVyYXRpb24gb2YgYSB0ZXN0LiIiIgorICAgIHNldF9jb21tYW5kKGZ1bGxuYW1lKQorICAgICMgWFhYIG1heWJlIHNldF9jb21tYW5kIHNob3VsZCByZXR1cm4gdGhlIGNsYXNzIG9iamVjdAorICAgIG5hbWUgPSByZXNvbHZlX25hbWUoZnVsbG5hbWUpLmdldF9jb21tYW5kX25hbWUoKQorICAgICMgWFhYIG1heWJlIHdlIG5lZWQgYSBwdWJsaWMgQVBJIHRvIHJlbW92ZSBjb21tYW5kcworICAgIHRlc3RjYXNlLmFkZENsZWFudXAoX0NPTU1BTkRTLl9fZGVsaXRlbV9fLCBuYW1lKQorCisKK2RlZiBmYWtlX2RlYygqYXJncywgKiprdyk6CisgICAgIiIiRmFrZSBkZWNvcmF0b3IiIiIKKyAgICBkZWYgX3dyYXAoZnVuYyk6CisgICAgICAgIGRlZiBfX3dyYXAoKmFyZ3MsICoqa3cpOgorICAgICAgICAgICAgcmV0dXJuIGZ1bmMoKmFyZ3MsICoqa3cpCisgICAgICAgIHJldHVybiBfX3dyYXAKKyAgICByZXR1cm4gX3dyYXAKKworCitkZWYgY29weV94eG1vZHVsZV9jKGRpcmVjdG9yeSk6CisgICAgIiIiSGVscGVyIGZvciB0ZXN0cyB0aGF0IG5lZWQgdGhlIHh4bW9kdWxlLmMgc291cmNlIGZpbGUuCisKKyAgICBFeGFtcGxlIHVzZToKKworICAgICAgICBkZWYgdGVzdF9jb21waWxlKHNlbGYpOgorICAgICAgICAgICAgY29weV94eG1vZHVsZV9jKHNlbGYudG1wZGlyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigneHhtb2R1bGUuYycsIG9zLmxpc3RkaXIoc2VsZi50bXBkaXIpKQorCisgICAgSWYgdGhlIHNvdXJjZSBmaWxlIGNhbiBiZSBmb3VuZCwgaXQgd2lsbCBiZSBjb3BpZWQgdG8gKmRpcmVjdG9yeSouICBJZiBub3QsCisgICAgdGhlIHRlc3Qgd2lsbCBiZSBza2lwcGVkLiAgRXJyb3JzIGR1cmluZyBjb3B5IGFyZSBub3QgY2F1Z2h0LgorICAgICIiIgorICAgIGZpbGVuYW1lID0gX2dldF94eG1vZHVsZV9wYXRoKCkKKyAgICBpZiBmaWxlbmFtZSBpcyBOb25lOgorICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgnY2Fubm90IGZpbmQgeHhtb2R1bGUuYycpCisgICAgc2h1dGlsLmNvcHkoZmlsZW5hbWUsIGRpcmVjdG9yeSkKKworCitkZWYgX2dldF94eG1vZHVsZV9wYXRoKCk6CisgICAgaWYgc3lzY29uZmlnLmlzX3B5dGhvbl9idWlsZCgpOgorICAgICAgICBzcmNkaXIgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ3Byb2plY3RiYXNlJykKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbihvcy5nZXRjd2QoKSwgc3JjZGlyLCAnTW9kdWxlcycsICd4eG1vZHVsZS5jJykKKyAgICBlbHNlOgorICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICd4eG1vZHVsZS5jJykKKyAgICBpZiBvcy5wYXRoLmV4aXN0cyhwYXRoKToKKyAgICAgICAgcmV0dXJuIHBhdGgKKworCitkZWYgZml4dXBfYnVpbGRfZXh0KGNtZCk6CisgICAgIiIiRnVuY3Rpb24gbmVlZGVkIHRvIG1ha2UgYnVpbGRfZXh0IHRlc3RzIHBhc3MuCisKKyAgICBXaGVuIFB5dGhvbiB3YXMgYnVpbHQgd2l0aCAtLWVuYWJsZS1zaGFyZWQgb24gVW5peCwgLUwuIGlzIG5vdCBlbm91Z2ggdG8KKyAgICBmaW5kIGxpYnB5dGhvbjxibGFoPi5zbywgYmVjYXVzZSByZWdydGVzdCBydW5zIGluIGEgdGVtcGRpciwgbm90IGluIHRoZQorICAgIHNvdXJjZSBkaXJlY3Rvcnkgd2hlcmUgdGhlIC5zbyBsaXZlcy4gIChNYWMgT1MgWCBlbWJlZHMgYWJzb2x1dGUgcGF0aHMKKyAgICB0byBzaGFyZWQgbGlicmFyaWVzIGludG8gZXhlY3V0YWJsZXMsIHNvIHRoZSBmaXh1cCBpcyBhIG5vLW9wIG9uIHRoYXQKKyAgICBwbGF0Zm9ybS4pCisKKyAgICBXaGVuIFB5dGhvbiB3YXMgYnVpbHQgd2l0aCBpbiBkZWJ1ZyBtb2RlIG9uIFdpbmRvd3MsIGJ1aWxkX2V4dCBjb21tYW5kcworICAgIG5lZWQgdGhlaXIgZGVidWcgYXR0cmlidXRlIHNldCwgYW5kIGl0IGlzIG5vdCBkb25lIGF1dG9tYXRpY2FsbHkgZm9yCisgICAgc29tZSByZWFzb24uCisKKyAgICBUaGlzIGZ1bmN0aW9uIGhhbmRsZXMgYm90aCBvZiB0aGVzZSB0aGluZ3MsIGFuZCBhbHNvIGZpeGVzCisgICAgY21kLmRpc3RyaWJ1dGlvbi5pbmNsdWRlX2RpcnMgaWYgdGhlIHJ1bm5pbmcgUHl0aG9uIGlzIGFuIHVuaW5zdGFsbGVkCisgICAgYnVpbGQuICBFeGFtcGxlIHVzZToKKworICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgc3VwcG9ydC5maXh1cF9idWlsZF9leHQoY21kKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgIiIiCisgICAgaWYgb3MubmFtZSA9PSAnbnQnOgorICAgICAgICBjbWQuZGVidWcgPSBzeXMuZXhlY3V0YWJsZS5lbmRzd2l0aCgnX2QuZXhlJykKKyAgICBlbGlmIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignUHlfRU5BQkxFX1NIQVJFRCcpOgorICAgICAgICAjIFRvIGZ1cnRoZXIgYWRkIHRvIHRoZSBzaGFyZWQgYnVpbGRzIGZ1biBvbiBVbml4LCB3ZSBjYW4ndCBqdXN0IGFkZAorICAgICAgICAjIGxpYnJhcnlfZGlycyB0byB0aGUgRXh0ZW5zaW9uKCkgaW5zdGFuY2UgYmVjYXVzZSB0aGF0IGRvZXNuJ3QgZ2V0CisgICAgICAgICMgcGx1bWJlZCB0aHJvdWdoIHRvIHRoZSBmaW5hbCBjb21waWxlciBjb21tYW5kLgorICAgICAgICBydW5zaGFyZWQgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ1JVTlNIQVJFRCcpCisgICAgICAgIGlmIHJ1bnNoYXJlZCBpcyBOb25lOgorICAgICAgICAgICAgY21kLmxpYnJhcnlfZGlycyA9IFsnLiddCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgICAgICAgICAgICAgY21kLmxpYnJhcnlfZGlycyA9IFtdCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG5hbWUsIGVxdWFscywgdmFsdWUgPSBydW5zaGFyZWQucGFydGl0aW9uKCc9JykKKyAgICAgICAgICAgICAgICBjbWQubGlicmFyeV9kaXJzID0gdmFsdWUuc3BsaXQob3MucGF0aHNlcCkKKworICAgICMgQWxsb3cgdGVzdHMgdG8gcnVuIHdpdGggYW4gdW5pbnN0YWxsZWQgUHl0aG9uCisgICAgaWYgc3lzY29uZmlnLmlzX3B5dGhvbl9idWlsZCgpOgorICAgICAgICBweXNyY2RpciA9IHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcigncHJvamVjdGJhc2UnKQorICAgICAgICBjbWQuZGlzdHJpYnV0aW9uLmluY2x1ZGVfZGlycy5hcHBlbmQob3MucGF0aC5qb2luKHB5c3JjZGlyLCAnSW5jbHVkZScpKQorCisKK3RyeToKKyAgICBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgc2tpcF91bmxlc3Nfc3ltbGluaworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHNraXBfdW5sZXNzX3N5bWxpbmsgPSB1bml0dGVzdC5za2lwKAorICAgICAgICAncmVxdWlyZXMgdGVzdC5zdXBwb3J0LnNraXBfdW5sZXNzX3N5bWxpbmsnKQorCitza2lwXzJ0bzNfb3B0aW1pemUgPSB1bml0dGVzdC5za2lwSWYoc3lzLmZsYWdzLm9wdGltaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIydG8zIGRvZXNuJ3Qgd29yayB1bmRlciAtTyIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY2NvbXBpbGVyLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2Njb21waWxlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZDRiZGQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2Njb21waWxlci5weQpAQCAtMCwwICsxLDE1IEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNvbXBpbGVyLmNjb21waWxlci4iIiIKKworZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IGNjb21waWxlcgorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgQ0NvbXBpbGVyVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIHBhc3MgICMgWFhYIG5lZWQgc29tZSB0ZXN0cyBvbiBDQ29tcGlsZXIKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoQ0NvbXBpbGVyVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2JkaXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiMmVhMDEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdC5weQpAQCAtMCwwICsxLDYxIEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNvbW1hbmQuYmRpc3QuIiIiCitpbXBvcnQgb3MKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBjYXB0dXJlZF9zdGRvdXQKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuYmRpc3QgaW1wb3J0IGJkaXN0LCBzaG93X2Zvcm1hdHMKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK2NsYXNzIEJ1aWxkVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfZm9ybWF0cyhzZWxmKToKKyAgICAgICAgIyBsZXQncyBjcmVhdGUgYSBjb21tYW5kIGFuZCBtYWtlIHN1cmUKKyAgICAgICAgIyB3ZSBjYW4gc2V0IHRoZSBmb3JtYXQKKyAgICAgICAgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKVsxXQorICAgICAgICBjbWQgPSBiZGlzdChkaXN0KQorICAgICAgICBjbWQuZm9ybWF0cyA9IFsnbXNpJ10KKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5mb3JtYXRzLCBbJ21zaSddKQorCisgICAgICAgICMgd2hhdCBmb3JtYXRzIGRvZXMgYmRpc3Qgb2ZmZXI/CisgICAgICAgICMgWFhYIGhhcmQtY29kZWQgbGlzdHMgYXJlIG5vdCB0aGUgYmVzdCB3YXkgdG8gZmluZCBhdmFpbGFibGUgYmRpc3RfKgorICAgICAgICAjIGNvbW1hbmRzOyB3ZSBzaG91bGQgYWRkIGEgcmVnaXN0cnkKKyAgICAgICAgZm9ybWF0cyA9IFsnYnp0YXInLCAnZ3p0YXInLCAnbXNpJywgJ3RhcicsICd3aW5pbnN0JywgJ3ppcCddCisgICAgICAgIGZvdW5kID0gc29ydGVkKGNtZC5mb3JtYXRfY29tbWFuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3VuZCwgZm9ybWF0cykKKworICAgIGRlZiB0ZXN0X3NraXBfYnVpbGQoc2VsZik6CisgICAgICAgICMgYnVnICMxMDk0NjogYmRpc3QgLS1za2lwLWJ1aWxkIHNob3VsZCB0cmlja2xlIGRvd24gdG8gc3ViY29tbWFuZHMKKyAgICAgICAgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKVsxXQorICAgICAgICBjbWQgPSBiZGlzdChkaXN0KQorICAgICAgICBjbWQuc2tpcF9idWlsZCA9IFRydWUKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydiZGlzdCddID0gY21kCisKKyAgICAgICAgbmFtZXMgPSBbJ2JkaXN0X2R1bWInLCAnYmRpc3Rfd2luaW5zdCddCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ250JzoKKyAgICAgICAgICAgIG5hbWVzLmFwcGVuZCgnYmRpc3RfbXNpJykKKworICAgICAgICBmb3IgbmFtZSBpbiBuYW1lczoKKyAgICAgICAgICAgIHN1YmNtZCA9IGNtZC5nZXRfZmluYWxpemVkX2NvbW1hbmQobmFtZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzdWJjbWQuc2tpcF9idWlsZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAnJXMgc2hvdWxkIHRha2UgLS1za2lwLWJ1aWxkIGZyb20gYmRpc3QnICUgbmFtZSkKKworICAgIGRlZiB0ZXN0X3Nob3dfZm9ybWF0cyhzZWxmKToKKyAgICAgICAgd2l0aCBjYXB0dXJlZF9zdGRvdXQoKSBhcyBzdGRvdXQ6CisgICAgICAgICAgICBzaG93X2Zvcm1hdHMoKQorICAgICAgICBzdGRvdXQgPSBzdGRvdXQuZ2V0dmFsdWUoKQorCisgICAgICAgICMgdGhlIG91dHB1dCBzaG91bGQgYmUgYSBoZWFkZXIgbGluZSArIG9uZSBsaW5lIHBlciBmb3JtYXQKKyAgICAgICAgbnVtX2Zvcm1hdHMgPSBsZW4oYmRpc3QuZm9ybWF0X2NvbW1hbmRzKQorICAgICAgICBvdXRwdXQgPSBbbGluZSBmb3IgbGluZSBpbiBzdGRvdXQuc3BsaXQoJ1xuJykKKyAgICAgICAgICAgICAgICAgIGlmIGxpbmUuc3RyaXAoKS5zdGFydHN3aXRoKCctLWZvcm1hdHM9JyldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG91dHB1dCksIG51bV9mb3JtYXRzKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShCdWlsZFRlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3Rlc3Rfc3VpdGUnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYmRpc3RfZHVtYi5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2JkaXN0X2R1bWIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTVjZjY1OAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2JkaXN0X2R1bWIucHkKQEAgLTAsMCArMSw5MSBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21tYW5kLmJkaXN0X2R1bWIuIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IGltcAoraW1wb3J0IHN5cworaW1wb3J0IHppcGZpbGUKK2ltcG9ydCBwYWNrYWdpbmcudXRpbAorCitmcm9tIHBhY2thZ2luZy5kaXN0IGltcG9ydCBEaXN0cmlidXRpb24KK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuYmRpc3RfZHVtYiBpbXBvcnQgYmRpc3RfZHVtYgorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCByZXF1aXJlc196bGliCisKKworY2xhc3MgQnVpbGREdW1iVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKEJ1aWxkRHVtYlRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYub2xkX2xvY2F0aW9uID0gb3MuZ2V0Y3dkKCkKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgb3MuY2hkaXIoc2VsZi5vbGRfbG9jYXRpb24pCisgICAgICAgIHBhY2thZ2luZy51dGlsLl9wYXRoX2NyZWF0ZWQuY2xlYXIoKQorICAgICAgICBzdXBlcihCdWlsZER1bWJUZXN0Q2FzZSwgc2VsZikudGVhckRvd24oKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF9zaW1wbGVfYnVpbHQoc2VsZik6CisKKyAgICAgICAgIyBsZXQncyBjcmVhdGUgYSBzaW1wbGUgcGFja2FnZQorICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgcGtnX2RpciA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnZm9vJykKKyAgICAgICAgb3MubWtkaXIocGtnX2RpcikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2dfZGlyLCAnZm9vLnB5JyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2dfZGlyLCAnTUFOSUZFU1QuaW4nKSwgJ2luY2x1ZGUgZm9vLnB5JykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2dfZGlyLCAnUkVBRE1FJyksICcnKQorCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ2ZvbycsICd2ZXJzaW9uJzogJzAuMScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdweV9tb2R1bGVzJzogWydmb28nXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hvbWVfcGFnZSc6ICd4eHgnLCAnYXV0aG9yJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiAneHh4J30pCisgICAgICAgIG9zLmNoZGlyKHBrZ19kaXIpCisgICAgICAgIGNtZCA9IGJkaXN0X2R1bWIoZGlzdCkKKworICAgICAgICAjIHNvIHRoZSBvdXRwdXQgaXMgdGhlIHNhbWUgbm8gbWF0dGVyCisgICAgICAgICMgd2hhdCBpcyB0aGUgcGxhdGZvcm0KKyAgICAgICAgY21kLmZvcm1hdCA9ICd6aXAnCisKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAjIHNlZSB3aGF0IHdlIGhhdmUKKyAgICAgICAgZGlzdF9jcmVhdGVkID0gb3MubGlzdGRpcihvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ2Rpc3QnKSkKKyAgICAgICAgYmFzZSA9ICIlcy4lcy56aXAiICUgKGRpc3QuZ2V0X2Z1bGxuYW1lKCksIGNtZC5wbGF0X25hbWUpCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ29zMic6CisgICAgICAgICAgICBiYXNlID0gYmFzZS5yZXBsYWNlKCc6JywgJy0nKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdF9jcmVhdGVkLCBbYmFzZV0pCisKKyAgICAgICAgIyBub3cgbGV0J3MgY2hlY2sgd2hhdCB3ZSBoYXZlIGluIHRoZSB6aXAgZmlsZQorICAgICAgICB3aXRoIHppcGZpbGUuWmlwRmlsZShvcy5wYXRoLmpvaW4oJ2Rpc3QnLCBiYXNlKSkgYXMgZnA6CisgICAgICAgICAgICBjb250ZW50cyA9IGZwLm5hbWVsaXN0KCkKKworICAgICAgICBjb250ZW50cyA9IHNvcnRlZChvcy5wYXRoLmJhc2VuYW1lKGZuKSBmb3IgZm4gaW4gY29udGVudHMpCisgICAgICAgIHdhbnRlZCA9IFsnZm9vLnB5JywKKyAgICAgICAgICAgICAgICAgICdmb28uJXMucHljJyAlIGltcC5nZXRfdGFnKCksCisgICAgICAgICAgICAgICAgICAnTUVUQURBVEEnLCAnSU5TVEFMTEVSJywgJ1JFUVVFU1RFRCcsICdSRUNPUkQnXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRlbnRzLCBzb3J0ZWQod2FudGVkKSkKKworICAgIGRlZiB0ZXN0X2ZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgb3MuY2hkaXIocGtnX2RpcikKKyAgICAgICAgY21kID0gYmRpc3RfZHVtYihkaXN0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5iZGlzdF9kaXIsIE5vbmUpCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKworICAgICAgICAjIGJkaXN0X2RpciBpcyBpbml0aWFsaXplZCB0byBiZGlzdF9iYXNlL2R1bWIgaWYgbm90IHNldAorICAgICAgICBiYXNlID0gY21kLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYmRpc3QnKS5iZGlzdF9iYXNlCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmJkaXN0X2Rpciwgb3MucGF0aC5qb2luKGJhc2UsICdkdW1iJykpCisKKyAgICAgICAgIyB0aGUgZm9ybWF0IGlzIHNldCB0byBhIGRlZmF1bHQgdmFsdWUgZGVwZW5kaW5nIG9uIHRoZSBvcy5uYW1lCisgICAgICAgIGRlZmF1bHQgPSBjbWQuZGVmYXVsdF9mb3JtYXRbb3MubmFtZV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZm9ybWF0LCBkZWZhdWx0KQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShCdWlsZER1bWJUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2JkaXN0X21zaS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2JkaXN0X21zaS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44Njc1NGE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYmRpc3RfbXNpLnB5CkBAIC0wLDAgKzEsMjUgQEAKKyIiIlRlc3RzIGZvciBkaXN0dXRpbHMuY29tbWFuZC5iZGlzdF9tc2kuIiIiCitpbXBvcnQgc3lzCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInLCAndGhlc2UgdGVzdHMgcmVxdWlyZSBXaW5kb3dzJykKK2NsYXNzIEJEaXN0TVNJVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfbWluaW1hbChzZWxmKToKKyAgICAgICAgIyBtaW5pbWFsIHRlc3QgWFhYIG5lZWQgbW9yZSB0ZXN0cworICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJkaXN0X21zaSBpbXBvcnQgYmRpc3RfbXNpCisgICAgICAgIHByb2plY3RfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGJkaXN0X21zaShkaXN0KQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKEJEaXN0TVNJVGVzdENhc2UpCisKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2JkaXN0X3dpbmluc3QucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdF93aW5pbnN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5YmRhYWQKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdF93aW5pbnN0LnB5CkBAIC0wLDAgKzEsMzIgQEAKKyIiIlRlc3RzIGZvciBkaXN0dXRpbHMuY29tbWFuZC5iZGlzdF93aW5pbnN0LiIiIgorCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJkaXN0X3dpbmluc3QgaW1wb3J0IGJkaXN0X3dpbmluc3QKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK2NsYXNzIEJ1aWxkV2luSW5zdFRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfZ2V0X2V4ZV9ieXRlcyhzZWxmKToKKworICAgICAgICAjIGlzc3VlNTczMTogY29tbWFuZCB3YXMgYnJva2VuIG9uIG5vbi13aW5kb3dzIHBsYXRmb3JtcworICAgICAgICAjIHRoaXMgdGVzdCBtYWtlcyBzdXJlIGl0IHdvcmtzIG5vdyBmb3IgZXZlcnkgcGxhdGZvcm0KKyAgICAgICAgIyBsZXQncyBjcmVhdGUgYSBjb21tYW5kCisgICAgICAgIHBrZ19wdGgsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gYmRpc3Rfd2luaW5zdChkaXN0KQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisKKyAgICAgICAgIyBsZXQncyBydW4gdGhlIGNvZGUgdGhhdCBmaW5kcyB0aGUgcmlnaHQgd2luaW5zdCouZXhlIGZpbGUKKyAgICAgICAgIyBhbmQgbWFrZSBzdXJlIGl0IGZpbmRzIGl0IGFuZCByZXR1cm5zIGl0cyBjb250ZW50CisgICAgICAgICMgbm8gbWF0dGVyIHdoYXQgcGxhdGZvcm0gd2UgaGF2ZQorICAgICAgICBleGVfZmlsZSA9IGNtZC5nZXRfZXhlX2J5dGVzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxlbihleGVfZmlsZSksIDEwKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShCdWlsZFdpbkluc3RUZXN0Q2FzZSkKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3Rlc3Rfc3VpdGUnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGQucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yODBkNzA5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGQucHkKQEAgLTAsMCArMSw1NiBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21tYW5kLmJ1aWxkLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCisKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuYnVpbGQgaW1wb3J0IGJ1aWxkCitmcm9tIHN5c2NvbmZpZyBpbXBvcnQgZ2V0X3BsYXRmb3JtCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBCdWlsZFRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2ZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gYnVpbGQoZGlzdCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorCisgICAgICAgICMgaWYgbm90IHNwZWNpZmllZCwgcGxhdF9uYW1lIGdldHMgdGhlIGN1cnJlbnQgcGxhdGZvcm0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQucGxhdF9uYW1lLCBnZXRfcGxhdGZvcm0oKSkKKworICAgICAgICAjIGJ1aWxkX3B1cmVsaWIgaXMgYnVpbGQgKyBsaWIKKyAgICAgICAgd2FudGVkID0gb3MucGF0aC5qb2luKGNtZC5idWlsZF9iYXNlLCAnbGliJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuYnVpbGRfcHVyZWxpYiwgd2FudGVkKQorCisgICAgICAgICMgYnVpbGRfcGxhdGxpYiBpcyAnYnVpbGQvbGliLnBsYXRmb3JtLXgueFstcHlkZWJ1Z10nCisgICAgICAgICMgZXhhbXBsZXM6CisgICAgICAgICMgICBidWlsZC9saWIubWFjb3N4LTEwLjMtaTM4Ni0yLjcKKyAgICAgICAgcHl2ZXJzaW9uID0gJyVzLiVzJyAlIHN5cy52ZXJzaW9uX2luZm9bOjJdCisgICAgICAgIHBsYXRfc3BlYyA9ICcuJXMtJXMnICUgKGNtZC5wbGF0X25hbWUsIHB5dmVyc2lvbikKKyAgICAgICAgaWYgaGFzYXR0cihzeXMsICdnZXR0b3RhbHJlZmNvdW50Jyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoY21kLmJ1aWxkX3BsYXRsaWIuZW5kc3dpdGgoJy1weWRlYnVnJykpCisgICAgICAgICAgICBwbGF0X3NwZWMgKz0gJy1weWRlYnVnJworICAgICAgICB3YW50ZWQgPSBvcy5wYXRoLmpvaW4oY21kLmJ1aWxkX2Jhc2UsICdsaWInICsgcGxhdF9zcGVjKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5idWlsZF9wbGF0bGliLCB3YW50ZWQpCisKKyAgICAgICAgIyBieSBkZWZhdWx0LCBidWlsZF9saWIgPSBidWlsZF9wdXJlbGliCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmJ1aWxkX2xpYiwgY21kLmJ1aWxkX3B1cmVsaWIpCisKKyAgICAgICAgIyBidWlsZF90ZW1wIGlzIGJ1aWxkL3RlbXAuPHBsYXQ+CisgICAgICAgIHdhbnRlZCA9IG9zLnBhdGguam9pbihjbWQuYnVpbGRfYmFzZSwgJ3RlbXAnICsgcGxhdF9zcGVjKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5idWlsZF90ZW1wLCB3YW50ZWQpCisKKyAgICAgICAgIyBidWlsZF9zY3JpcHRzIGlzIGJ1aWxkL3NjcmlwdHMteC54CisgICAgICAgIHdhbnRlZCA9IG9zLnBhdGguam9pbihjbWQuYnVpbGRfYmFzZSwgJ3NjcmlwdHMtJyArIHB5dmVyc2lvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuYnVpbGRfc2NyaXB0cywgd2FudGVkKQorCisgICAgICAgICMgZXhlY3V0YWJsZSBpcyBvcy5wYXRoLm5vcm1wYXRoKHN5cy5leGVjdXRhYmxlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5leGVjdXRhYmxlLCBvcy5wYXRoLm5vcm1wYXRoKHN5cy5leGVjdXRhYmxlKSkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoQnVpbGRUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2J1aWxkX2NsaWIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9jbGliLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyYTg1ODMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9jbGliLnB5CkBAIC0wLDAgKzEsMTQxIEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNvbW1hbmQuYnVpbGRfY2xpYi4iIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBmaW5kX2V4ZWN1dGFibGUKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuYnVpbGRfY2xpYiBpbXBvcnQgYnVpbGRfY2xpYgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdTZXR1cEVycm9yCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBCdWlsZENMaWJUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2NoZWNrX2xpYnJhcnlfZGlzdChzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBjbWQgPSBidWlsZF9jbGliKGRpc3QpCisKKyAgICAgICAgIyAnbGlicmFyaWVzJyBvcHRpb24gbXVzdCBiZSBhIGxpc3QKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLmNoZWNrX2xpYnJhcnlfbGlzdCwgJ2ZvbycpCisKKyAgICAgICAgIyBlYWNoIGVsZW1lbnQgb2YgJ2xpYnJhcmllcycgbXVzdCBhIDItdHVwbGUKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLmNoZWNrX2xpYnJhcnlfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgWydmb28xJywgJ2ZvbzInXSkKKworICAgICAgICAjIGZpcnN0IGVsZW1lbnQgb2YgZWFjaCB0dXBsZSBpbiAnbGlicmFyaWVzJworICAgICAgICAjIG11c3QgYmUgYSBzdHJpbmcgKHRoZSBsaWJyYXJ5IG5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1NldHVwRXJyb3IsIGNtZC5jaGVja19saWJyYXJ5X2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFsoMSwgJ2ZvbzEnKSwgKCduYW1lJywgJ2ZvbzInKV0pCisKKyAgICAgICAgIyBsaWJyYXJ5IG5hbWUgbWF5IG5vdCBjb250YWluIGRpcmVjdG9yeSBzZXBhcmF0b3JzCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1NldHVwRXJyb3IsIGNtZC5jaGVja19saWJyYXJ5X2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFsoJ25hbWUnLCAnZm9vMScpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdhbm90aGVyL25hbWUnLCAnZm9vMicpXSkKKworICAgICAgICAjIHNlY29uZCBlbGVtZW50IG9mIGVhY2ggdHVwbGUgbXVzdCBiZSBhIGRpY3Rpb25hcnkgKGJ1aWxkIGluZm8pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1NldHVwRXJyb3IsIGNtZC5jaGVja19saWJyYXJ5X2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFsoJ25hbWUnLCB7fSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ2Fub3RoZXInLCAnZm9vMicpXSkKKworICAgICAgICAjIHRob3NlIHdvcmsKKyAgICAgICAgbGlicyA9IFsoJ25hbWUnLCB7fSksICgnbmFtZScsIHsnb2snOiAnZ29vZCd9KV0KKyAgICAgICAgY21kLmNoZWNrX2xpYnJhcnlfbGlzdChsaWJzKQorCisgICAgZGVmIHRlc3RfZ2V0X3NvdXJjZV9maWxlcyhzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBjbWQgPSBidWlsZF9jbGliKGRpc3QpCisKKyAgICAgICAgIyAiaW4gJ2xpYnJhcmllcycgb3B0aW9uICdzb3VyY2VzJyBtdXN0IGJlIHByZXNlbnQgYW5kIG11c3QgYmUKKyAgICAgICAgIyBhIGxpc3Qgb2Ygc291cmNlIGZpbGVuYW1lcworICAgICAgICBjbWQubGlicmFyaWVzID0gWygnbmFtZScsIHt9KV0KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLmdldF9zb3VyY2VfZmlsZXMpCisKKyAgICAgICAgY21kLmxpYnJhcmllcyA9IFsoJ25hbWUnLCB7J3NvdXJjZXMnOiAxfSldCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1NldHVwRXJyb3IsIGNtZC5nZXRfc291cmNlX2ZpbGVzKQorCisgICAgICAgIGNtZC5saWJyYXJpZXMgPSBbKCduYW1lJywgeydzb3VyY2VzJzogWydhJywgJ2InXX0pXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5nZXRfc291cmNlX2ZpbGVzKCksIFsnYScsICdiJ10pCisKKyAgICAgICAgY21kLmxpYnJhcmllcyA9IFsoJ25hbWUnLCB7J3NvdXJjZXMnOiAoJ2EnLCAnYicpfSldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmdldF9zb3VyY2VfZmlsZXMoKSwgWydhJywgJ2InXSkKKworICAgICAgICBjbWQubGlicmFyaWVzID0gWygnbmFtZScsIHsnc291cmNlcyc6ICgnYScsICdiJyl9KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAoJ25hbWUyJywgeydzb3VyY2VzJzogWydjJywgJ2QnXX0pXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5nZXRfc291cmNlX2ZpbGVzKCksIFsnYScsICdiJywgJ2MnLCAnZCddKQorCisgICAgZGVmIHRlc3RfYnVpbGRfbGlicmFyaWVzKHNlbGYpOgorICAgICAgICBwa2dfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGJ1aWxkX2NsaWIoZGlzdCkKKworICAgICAgICBjbGFzcyBGYWtlQ29tcGlsZXI6CisgICAgICAgICAgICBkZWYgY29tcGlsZSgqYXJncywgKiprdyk6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICAgICAgY3JlYXRlX3N0YXRpY19saWIgPSBjb21waWxlCisKKyAgICAgICAgY21kLmNvbXBpbGVyID0gRmFrZUNvbXBpbGVyKCkKKworICAgICAgICAjIGJ1aWxkX2xpYnJhcmllcyBpcyBhbHNvIGRvaW5nIGEgYml0IG9mIHR5cGUgY2hlY2tpbmcKKyAgICAgICAgbGliID0gWygnbmFtZScsIHsnc291cmNlcyc6ICdub3R2YWxpZCd9KV0KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLmJ1aWxkX2xpYnJhcmllcywgbGliKQorCisgICAgICAgIGxpYiA9IFsoJ25hbWUnLCB7J3NvdXJjZXMnOiBbXX0pXQorICAgICAgICBjbWQuYnVpbGRfbGlicmFyaWVzKGxpYikKKworICAgICAgICBsaWIgPSBbKCduYW1lJywgeydzb3VyY2VzJzogKCl9KV0KKyAgICAgICAgY21kLmJ1aWxkX2xpYnJhcmllcyhsaWIpCisKKyAgICBkZWYgdGVzdF9maW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBwa2dfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGJ1aWxkX2NsaWIoZGlzdCkKKworICAgICAgICBjbWQuaW5jbHVkZV9kaXJzID0gJ29uZS1kaXInCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuaW5jbHVkZV9kaXJzLCBbJ29uZS1kaXInXSkKKworICAgICAgICBjbWQuaW5jbHVkZV9kaXJzID0gTm9uZQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmluY2x1ZGVfZGlycywgW10pCisKKyAgICAgICAgY21kLmRpc3RyaWJ1dGlvbi5saWJyYXJpZXMgPSAnV09OVFdPUksnCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1NldHVwRXJyb3IsIGNtZC5maW5hbGl6ZV9vcHRpb25zKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJywgJ2Rpc2FibGVkIG9uIHdpbjMyJykKKyAgICBkZWYgdGVzdF9ydW4oc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gYnVpbGRfY2xpYihkaXN0KQorCisgICAgICAgIGZvb19jID0gb3MucGF0aC5qb2luKHBrZ19kaXIsICdmb28uYycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShmb29fYywgJ2ludCBtYWluKHZvaWQpIHsgcmV0dXJuIDE7fVxuJykKKyAgICAgICAgY21kLmxpYnJhcmllcyA9IFsoJ2ZvbycsIHsnc291cmNlcyc6IFtmb29fY119KV0KKworICAgICAgICBidWlsZF90ZW1wID0gb3MucGF0aC5qb2luKHBrZ19kaXIsICdidWlsZCcpCisgICAgICAgIG9zLm1rZGlyKGJ1aWxkX3RlbXApCisgICAgICAgIGNtZC5idWlsZF90ZW1wID0gYnVpbGRfdGVtcAorICAgICAgICBjbWQuYnVpbGRfY2xpYiA9IGJ1aWxkX3RlbXAKKworICAgICAgICAjIGJlZm9yZSB3ZSBydW4gdGhlIGNvbW1hbmQsIHdlIHdhbnQgdG8gbWFrZSBzdXJlCisgICAgICAgICMgYWxsIGNvbW1hbmRzIGFyZSBwcmVzZW50IG9uIHRoZSBzeXN0ZW0KKyAgICAgICAgIyBieSBjcmVhdGluZyBhIGNvbXBpbGVyIGFuZCBjaGVja2luZyBpdHMgZXhlY3V0YWJsZXMKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IG5ld19jb21waWxlciwgY3VzdG9taXplX2NvbXBpbGVyCisKKyAgICAgICAgY29tcGlsZXIgPSBuZXdfY29tcGlsZXIoKQorICAgICAgICBjdXN0b21pemVfY29tcGlsZXIoY29tcGlsZXIpCisgICAgICAgIGZvciBjY21kIGluIGNvbXBpbGVyLmV4ZWN1dGFibGVzLnZhbHVlcygpOgorICAgICAgICAgICAgaWYgY2NtZCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBpZiBmaW5kX2V4ZWN1dGFibGUoY2NtZFswXSkgaXMgTm9uZToKKyAgICAgICAgICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgiY2FuJ3QgdGVzdCIpCisKKyAgICAgICAgIyB0aGlzIHNob3VsZCB3b3JrCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgbGV0J3MgY2hlY2sgdGhlIHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEluKCdsaWJmb28uYScsIG9zLmxpc3RkaXIoYnVpbGRfdGVtcCkpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKEJ1aWxkQ0xpYlRlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGRfZXh0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGRfZXh0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlhMDBjMTEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9leHQucHkKQEAgLTAsMCArMSwzOTQgQEAKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHNpdGUKK2ltcG9ydCBzeXNjb25maWcKK2ltcG9ydCB0ZXh0d3JhcAorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChVbmtub3duRmlsZUVycm9yLCBDb21waWxlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5idWlsZF9leHQgaW1wb3J0IGJ1aWxkX2V4dAorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uIGltcG9ydCBFeHRlbnNpb24KKworZnJvbSB0ZXN0LnNjcmlwdF9oZWxwZXIgaW1wb3J0IGFzc2VydF9weXRob25fb2sKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCBzdXBwb3J0LCB1bml0dGVzdAorCisKK2NsYXNzIEJ1aWxkRXh0VGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoQnVpbGRFeHRUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZWxmLm9sZF91c2VyX2Jhc2UgPSBzaXRlLlVTRVJfQkFTRQorICAgICAgICBzaXRlLlVTRVJfQkFTRSA9IHNlbGYubWtkdGVtcCgpCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHNpdGUuVVNFUl9CQVNFID0gc2VsZi5vbGRfdXNlcl9iYXNlCisgICAgICAgIHN1cGVyKEJ1aWxkRXh0VGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgIGRlZiB0ZXN0X2J1aWxkX2V4dChzZWxmKToKKyAgICAgICAgc3VwcG9ydC5jb3B5X3h4bW9kdWxlX2Moc2VsZi50bXBfZGlyKQorICAgICAgICB4eF9jID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJ3h4bW9kdWxlLmMnKQorICAgICAgICB4eF9leHQgPSBFeHRlbnNpb24oJ3h4JywgW3h4X2NdKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCcsICdleHRfbW9kdWxlcyc6IFt4eF9leHRdfSkKKyAgICAgICAgZGlzdC5wYWNrYWdlX2RpciA9IHNlbGYudG1wX2RpcgorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgc3VwcG9ydC5maXh1cF9idWlsZF9leHQoY21kKQorICAgICAgICBjbWQuYnVpbGRfbGliID0gc2VsZi50bXBfZGlyCisgICAgICAgIGNtZC5idWlsZF90ZW1wID0gc2VsZi50bXBfZGlyCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgY29kZSA9IHRleHR3cmFwLmRlZGVudCgiIiJcCisgICAgICAgICAgICBpbXBvcnQgc3lzCisgICAgICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgJXIpCisKKyAgICAgICAgICAgIGltcG9ydCB4eAorCisgICAgICAgICAgICBmb3IgYXR0ciBpbiAoJ2Vycm9yJywgJ2ZvbycsICduZXcnLCAncm9qJyk6CisgICAgICAgICAgICAgICAgYXNzZXJ0IGhhc2F0dHIoeHgsIGF0dHIpCisKKyAgICAgICAgICAgIGFzc2VydCB4eC5mb28oMiwgNSkgPT0gNworICAgICAgICAgICAgYXNzZXJ0IHh4LmZvbygxMywgMTUpID09IDI4CisgICAgICAgICAgICBhc3NlcnQgeHgubmV3KCkuZGVtbygpIGlzIE5vbmUKKyAgICAgICAgICAgIGRvYyA9ICdUaGlzIGlzIGEgdGVtcGxhdGUgbW9kdWxlIGp1c3QgZm9yIGluc3RydWN0aW9uLicKKyAgICAgICAgICAgIGFzc2VydCB4eC5fX2RvY19fID09IGRvYworICAgICAgICAgICAgYXNzZXJ0IGlzaW5zdGFuY2UoeHguTnVsbCgpLCB4eC5OdWxsKQorICAgICAgICAgICAgYXNzZXJ0IGlzaW5zdGFuY2UoeHguU3RyKCksIHh4LlN0cikKKyAgICAgICAgICAgICIiIikKKyAgICAgICAgY29kZSA9IGNvZGUgJSBzZWxmLnRtcF9kaXIKKyAgICAgICAgYXNzZXJ0X3B5dGhvbl9vaygnLWMnLCBjb2RlKQorCisgICAgZGVmIHRlc3Rfc29sYXJpc19lbmFibGVfc2hhcmVkKHNlbGYpOgorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCd9KQorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgb2xkID0gc3lzLnBsYXRmb3JtCisKKyAgICAgICAgc3lzLnBsYXRmb3JtID0gJ3N1bm9zJyAgIyBmb29saW5nIGZpbmFsaXplX29wdGlvbnMKKworICAgICAgICBvbGRfdmFyID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdQeV9FTkFCTEVfU0hBUkVEJykKKyAgICAgICAgc3lzY29uZmlnLl9DT05GSUdfVkFSU1snUHlfRU5BQkxFX1NIQVJFRCddID0gMQorICAgICAgICB0cnk6CisgICAgICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzeXMucGxhdGZvcm0gPSBvbGQKKyAgICAgICAgICAgIGlmIG9sZF92YXIgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBkZWwgc3lzY29uZmlnLl9DT05GSUdfVkFSU1snUHlfRU5BQkxFX1NIQVJFRCddCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHN5c2NvbmZpZy5fQ09ORklHX1ZBUlNbJ1B5X0VOQUJMRV9TSEFSRUQnXSA9IG9sZF92YXIKKworICAgICAgICAjIG1ha2Ugc3VyZSB3ZSBnZXQgc29tZSBsaWJyYXJ5IGRpcnMgdW5kZXIgc29sYXJpcworICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKGNtZC5saWJyYXJ5X2RpcnMpLCAwKQorCisgICAgZGVmIHRlc3RfdXNlcl9zaXRlKHNlbGYpOgorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCd9KQorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKworICAgICAgICAjIG1ha2luZyBzdXJlIHRoZSB1c2VyIG9wdGlvbiBpcyB0aGVyZQorICAgICAgICBvcHRpb25zID0gW25hbWUgZm9yIG5hbWUsIHNob3J0LCBsYWJlbCBpbgorICAgICAgICAgICAgICAgICAgIGNtZC51c2VyX29wdGlvbnNdCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3VzZXInLCBvcHRpb25zKQorCisgICAgICAgICMgc2V0dGluZyBhIHZhbHVlCisgICAgICAgIGNtZC51c2VyID0gVHJ1ZQorCisgICAgICAgICMgc2V0dGluZyB1c2VyIGJhc2VkIGxpYiBhbmQgaW5jbHVkZQorICAgICAgICBsaWIgPSBvcy5wYXRoLmpvaW4oc2l0ZS5VU0VSX0JBU0UsICdsaWInKQorICAgICAgICBpbmNsID0gb3MucGF0aC5qb2luKHNpdGUuVVNFUl9CQVNFLCAnaW5jbHVkZScpCisgICAgICAgIG9zLm1rZGlyKGxpYikKKyAgICAgICAgb3MubWtkaXIoaW5jbCkKKworICAgICAgICAjIGxldCdzIHJ1biBmaW5hbGl6ZQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisKKyAgICAgICAgIyBzZWUgaWYgaW5jbHVkZV9kaXJzIGFuZCBsaWJyYXJ5X2RpcnMKKyAgICAgICAgIyB3ZXJlIHNldAorICAgICAgICBzZWxmLmFzc2VydEluKGxpYiwgY21kLmxpYnJhcnlfZGlycykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihsaWIsIGNtZC5ycGF0aCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihpbmNsLCBjbWQuaW5jbHVkZV9kaXJzKQorCisgICAgZGVmIHRlc3Rfb3B0aW9uYWxfZXh0ZW5zaW9uKHNlbGYpOgorCisgICAgICAgICMgdGhpcyBleHRlbnNpb24gd2lsbCBmYWlsLCBidXQgbGV0J3MgaWdub3JlIHRoaXMgZmFpbHVyZQorICAgICAgICAjIHdpdGggdGhlIG9wdGlvbmFsIGFyZ3VtZW50LgorICAgICAgICBtb2R1bGVzID0gW0V4dGVuc2lvbignZm9vJywgWyd4eHgnXSwgb3B0aW9uYWw9RmFsc2UpXQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCcsICdleHRfbW9kdWxlcyc6IG1vZHVsZXN9KQorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcygoVW5rbm93bkZpbGVFcnJvciwgQ29tcGlsZUVycm9yKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY21kLnJ1bikgICMgc2hvdWxkIHJhaXNlIGFuIGVycm9yCisKKyAgICAgICAgbW9kdWxlcyA9IFtFeHRlbnNpb24oJ2ZvbycsIFsneHh4J10sIG9wdGlvbmFsPVRydWUpXQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCcsICdleHRfbW9kdWxlcyc6IG1vZHVsZXN9KQorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkgICMgc2hvdWxkIHBhc3MKKworICAgIGRlZiB0ZXN0X2ZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgICMgTWFrZSBzdXJlIFB5dGhvbidzIGluY2x1ZGUgZGlyZWN0b3JpZXMgKGZvciBQeXRob24uaCwgcHljb25maWcuaCwKKyAgICAgICAgIyBldGMuKSBhcmUgaW4gdGhlIGluY2x1ZGUgc2VhcmNoIHBhdGguCisgICAgICAgIG1vZHVsZXMgPSBbRXh0ZW5zaW9uKCdmb28nLCBbJ3h4eCddLCBvcHRpb25hbD1GYWxzZSldCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ3h4JywgJ2V4dF9tb2R1bGVzJzogbW9kdWxlc30pCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisKKyAgICAgICAgcHlfaW5jbHVkZSA9IHN5c2NvbmZpZy5nZXRfcGF0aCgnaW5jbHVkZScpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4ocHlfaW5jbHVkZSwgY21kLmluY2x1ZGVfZGlycykKKworICAgICAgICBwbGF0X3B5X2luY2x1ZGUgPSBzeXNjb25maWcuZ2V0X3BhdGgoJ3BsYXRpbmNsdWRlJykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihwbGF0X3B5X2luY2x1ZGUsIGNtZC5pbmNsdWRlX2RpcnMpCisKKyAgICAgICAgIyBtYWtlIHN1cmUgY21kLmxpYnJhcmllcyBpcyB0dXJuZWQgaW50byBhIGxpc3QKKyAgICAgICAgIyBpZiBpdCdzIGEgc3RyaW5nCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQubGlicmFyaWVzID0gJ215X2xpYiwgb3RoZXJfbGliIGxhc3RsaWInCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQubGlicmFyaWVzLCBbJ215X2xpYicsICdvdGhlcl9saWInLCAnbGFzdGxpYiddKQorCisgICAgICAgICMgbWFrZSBzdXJlIGNtZC5saWJyYXJ5X2RpcnMgaXMgdHVybmVkIGludG8gYSBsaXN0CisgICAgICAgICMgaWYgaXQncyBhIHN0cmluZworICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLmxpYnJhcnlfZGlycyA9ICdteV9saWJfZGlyJXNvdGhlcl9saWJfZGlyJyAlIG9zLnBhdGhzZXAKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEluKCdteV9saWJfZGlyJywgY21kLmxpYnJhcnlfZGlycykKKyAgICAgICAgc2VsZi5hc3NlcnRJbignb3RoZXJfbGliX2RpcicsIGNtZC5saWJyYXJ5X2RpcnMpCisKKyAgICAgICAgIyBtYWtlIHN1cmUgcnBhdGggaXMgdHVybmVkIGludG8gYSBsaXN0CisgICAgICAgICMgaWYgaXQncyBhIHN0cmluZworICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLnJwYXRoID0gJ29uZSVzdHdvJyAlIG9zLnBhdGhzZXAKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5ycGF0aCwgWydvbmUnLCAndHdvJ10pCisKKyAgICAgICAgIyBYWFggbW9yZSB0ZXN0cyB0byBwZXJmb3JtIGZvciB3aW4zMgorCisgICAgICAgICMgbWFrZSBzdXJlIGRlZmluZSBpcyB0dXJuZWQgaW50byAyLXR1cGxlcworICAgICAgICAjIHN0cmluZ3MgaWYgdGhleSBhcmUgJywnLXNlcGFyYXRlZCBzdHJpbmdzCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuZGVmaW5lID0gJ29uZSx0d28nCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZGVmaW5lLCBbKCdvbmUnLCAnMScpLCAoJ3R3bycsICcxJyldKQorCisgICAgICAgICMgbWFrZSBzdXJlIHVuZGVmIGlzIHR1cm5lZCBpbnRvIGEgbGlzdCBvZgorICAgICAgICAjIHN0cmluZ3MgaWYgdGhleSBhcmUgJywnLXNlcGFyYXRlZCBzdHJpbmdzCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQudW5kZWYgPSAnb25lLHR3bycKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC51bmRlZiwgWydvbmUnLCAndHdvJ10pCisKKyAgICAgICAgIyBtYWtlIHN1cmUgc3dpZ19vcHRzIGlzIHR1cm5lZCBpbnRvIGEgbGlzdAorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLnN3aWdfb3B0cyA9IE5vbmUKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5zd2lnX29wdHMsIFtdKQorCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuc3dpZ19vcHRzID0gJzEgMicKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5zd2lnX29wdHMsIFsnMScsICcyJ10pCisKKyAgICBkZWYgdGVzdF9nZXRfc291cmNlX2ZpbGVzKHNlbGYpOgorICAgICAgICBtb2R1bGVzID0gW0V4dGVuc2lvbignZm9vJywgWyd4eHgnXSwgb3B0aW9uYWw9RmFsc2UpXQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCcsICdleHRfbW9kdWxlcyc6IG1vZHVsZXN9KQorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5nZXRfc291cmNlX2ZpbGVzKCksIFsneHh4J10pCisKKyAgICBkZWYgdGVzdF9jb21waWxlcl9vcHRpb24oc2VsZik6CisgICAgICAgICMgY21kLmNvbXBpbGVyIGlzIGFuIG9wdGlvbiBhbmQKKyAgICAgICAgIyBzaG91bGQgbm90IGJlIG92ZXJyaWRlbiBieSBhIGNvbXBpbGVyIGluc3RhbmNlCisgICAgICAgICMgd2hlbiB0aGUgY29tbWFuZCBpcyBydW4KKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuY29tcGlsZXIgPSAndW5peCcKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuY29tcGlsZXIsICd1bml4JykKKworICAgIGRlZiB0ZXN0X2dldF9vdXRwdXRzKHNlbGYpOgorICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgY19maWxlID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdmb28uYycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShjX2ZpbGUsICd2b2lkIFB5SW5pdF9mb28odm9pZCkge31cbicpCisgICAgICAgIGV4dCA9IEV4dGVuc2lvbignZm9vJywgW2NfZmlsZV0sIG9wdGlvbmFsPUZhbHNlKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdleHRfbW9kdWxlcyc6IFtleHRdfSkKKyAgICAgICAgY21kID0gYnVpbGRfZXh0KGRpc3QpCisgICAgICAgIHN1cHBvcnQuZml4dXBfYnVpbGRfZXh0KGNtZCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbWQuZ2V0X291dHB1dHMoKSksIDEpCisKKyAgICAgICAgY21kLmJ1aWxkX2xpYiA9IG9zLnBhdGguam9pbihzZWxmLnRtcF9kaXIsICdidWlsZCcpCisgICAgICAgIGNtZC5idWlsZF90ZW1wID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJ3RlbXB0JykKKworICAgICAgICAjIGlzc3VlICM1OTc3IDogZGlzdHV0aWxzIGJ1aWxkX2V4dC5nZXRfb3V0cHV0cworICAgICAgICAjIHJldHVybnMgd3JvbmcgcmVzdWx0IHdpdGggLS1pbnBsYWNlCisgICAgICAgIG90aGVyX3RtcF9kaXIgPSBvcy5wYXRoLnJlYWxwYXRoKHNlbGYubWtkdGVtcCgpKQorICAgICAgICBvbGRfd2QgPSBvcy5nZXRjd2QoKQorICAgICAgICBvcy5jaGRpcihvdGhlcl90bXBfZGlyKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBjbWQuaW5wbGFjZSA9IFRydWUKKyAgICAgICAgICAgIGNtZC5ydW4oKQorICAgICAgICAgICAgc29fZmlsZSA9IGNtZC5nZXRfb3V0cHV0cygpWzBdCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jaGRpcihvbGRfd2QpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhzb19maWxlKSkKKyAgICAgICAgc29fZXh0ID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdTTycpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzb19maWxlLmVuZHN3aXRoKHNvX2V4dCkpCisgICAgICAgIHNvX2RpciA9IG9zLnBhdGguZGlybmFtZShzb19maWxlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvX2Rpciwgb3RoZXJfdG1wX2RpcikKKworICAgICAgICBjbWQuaW5wbGFjZSA9IEZhbHNlCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBzb19maWxlID0gY21kLmdldF9vdXRwdXRzKClbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKHNvX2ZpbGUpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoc29fZmlsZS5lbmRzd2l0aChzb19leHQpKQorICAgICAgICBzb19kaXIgPSBvcy5wYXRoLmRpcm5hbWUoc29fZmlsZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb19kaXIsIGNtZC5idWlsZF9saWIpCisKKyAgICAgICAgIyBpbnBsYWNlID0gRmFsc2UsIGNtZC5wYWNrYWdlID0gJ2JhcicKKyAgICAgICAgYnVpbGRfcHkgPSBjbWQuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdidWlsZF9weScpCisgICAgICAgIGJ1aWxkX3B5LnBhY2thZ2VfZGlyID0gJ2JhcicKKyAgICAgICAgcGF0aCA9IGNtZC5nZXRfZXh0X2Z1bGxwYXRoKCdmb28nKQorICAgICAgICAjIGNoZWNraW5nIHRoYXQgdGhlIGxhc3QgZGlyZWN0b3J5IGlzIHRoZSBidWlsZF9kaXIKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguc3BsaXQocGF0aClbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwYXRoLCBjbWQuYnVpbGRfbGliKQorCisgICAgICAgICMgaW5wbGFjZSA9IFRydWUsIGNtZC5wYWNrYWdlID0gJ2JhcicKKyAgICAgICAgY21kLmlucGxhY2UgPSBUcnVlCisgICAgICAgIG90aGVyX3RtcF9kaXIgPSBvcy5wYXRoLnJlYWxwYXRoKHNlbGYubWtkdGVtcCgpKQorICAgICAgICBvbGRfd2QgPSBvcy5nZXRjd2QoKQorICAgICAgICBvcy5jaGRpcihvdGhlcl90bXBfZGlyKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwYXRoID0gY21kLmdldF9leHRfZnVsbHBhdGgoJ2ZvbycpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jaGRpcihvbGRfd2QpCisgICAgICAgICMgY2hlY2tpbmcgdGhhdCB0aGUgbGFzdCBkaXJlY3RvcnkgaXMgYmFyCisgICAgICAgIHBhdGggPSBvcy5wYXRoLnNwbGl0KHBhdGgpWzBdCisgICAgICAgIGxhc3RkaXIgPSBvcy5wYXRoLnNwbGl0KHBhdGgpWy0xXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxhc3RkaXIsICdiYXInKQorCisgICAgZGVmIHRlc3RfZXh0X2Z1bGxwYXRoKHNlbGYpOgorICAgICAgICBleHQgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXJzKClbJ1NPJ10KKyAgICAgICAgIyBidWlsZGluZyBseG1sLmV0cmVlIGlucGxhY2UKKyAgICAgICAgI2V0cmVlX2MgPSBvcy5wYXRoLmpvaW4oc2VsZi50bXBfZGlyLCAnbHhtbC5ldHJlZS5jJykKKyAgICAgICAgI2V0cmVlX2V4dCA9IEV4dGVuc2lvbignbHhtbC5ldHJlZScsIFtldHJlZV9jXSkKKyAgICAgICAgI2Rpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ2x4bWwnLCAnZXh0X21vZHVsZXMnOiBbZXRyZWVfZXh0XX0pCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLmlucGxhY2UgPSBUcnVlCisgICAgICAgIGNtZC5kaXN0cmlidXRpb24ucGFja2FnZV9kaXIgPSAnc3JjJworICAgICAgICBjbWQuZGlzdHJpYnV0aW9uLnBhY2thZ2VzID0gWydseG1sJywgJ2x4bWwuaHRtbCddCisgICAgICAgIGN1cmRpciA9IG9zLmdldGN3ZCgpCisgICAgICAgIHdhbnRlZCA9IG9zLnBhdGguam9pbihjdXJkaXIsICdzcmMnLCAnbHhtbCcsICdldHJlZScgKyBleHQpCisgICAgICAgIHBhdGggPSBjbWQuZ2V0X2V4dF9mdWxscGF0aCgnbHhtbC5ldHJlZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod2FudGVkLCBwYXRoKQorCisgICAgICAgICMgYnVpbGRpbmcgbHhtbC5ldHJlZSBub3QgaW5wbGFjZQorICAgICAgICBjbWQuaW5wbGFjZSA9IEZhbHNlCisgICAgICAgIGNtZC5idWlsZF9saWIgPSBvcy5wYXRoLmpvaW4oY3VyZGlyLCAndG1wZGlyJykKKyAgICAgICAgd2FudGVkID0gb3MucGF0aC5qb2luKGN1cmRpciwgJ3RtcGRpcicsICdseG1sJywgJ2V0cmVlJyArIGV4dCkKKyAgICAgICAgcGF0aCA9IGNtZC5nZXRfZXh0X2Z1bGxwYXRoKCdseG1sLmV0cmVlJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3YW50ZWQsIHBhdGgpCisKKyAgICAgICAgIyBidWlsZGluZyB0d2lzdGVkLnJ1bm5lci5wb3J0bWFwIG5vdCBpbnBsYWNlCisgICAgICAgIGJ1aWxkX3B5ID0gY21kLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGRfcHknKQorICAgICAgICBidWlsZF9weS5wYWNrYWdlX2RpciA9IE5vbmUKKyAgICAgICAgY21kLmRpc3RyaWJ1dGlvbi5wYWNrYWdlcyA9IFsndHdpc3RlZCcsICd0d2lzdGVkLnJ1bm5lci5wb3J0bWFwJ10KKyAgICAgICAgcGF0aCA9IGNtZC5nZXRfZXh0X2Z1bGxwYXRoKCd0d2lzdGVkLnJ1bm5lci5wb3J0bWFwJykKKyAgICAgICAgd2FudGVkID0gb3MucGF0aC5qb2luKGN1cmRpciwgJ3RtcGRpcicsICd0d2lzdGVkJywgJ3J1bm5lcicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9ydG1hcCcgKyBleHQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod2FudGVkLCBwYXRoKQorCisgICAgICAgICMgYnVpbGRpbmcgdHdpc3RlZC5ydW5uZXIucG9ydG1hcCBpbnBsYWNlCisgICAgICAgIGNtZC5pbnBsYWNlID0gVHJ1ZQorICAgICAgICBwYXRoID0gY21kLmdldF9leHRfZnVsbHBhdGgoJ3R3aXN0ZWQucnVubmVyLnBvcnRtYXAnKQorICAgICAgICB3YW50ZWQgPSBvcy5wYXRoLmpvaW4oY3VyZGlyLCAndHdpc3RlZCcsICdydW5uZXInLCAncG9ydG1hcCcgKyBleHQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod2FudGVkLCBwYXRoKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLAorICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXN0IG9ubHkgcmVsZXZhbnQgZm9yIE1hYyBPUyBYJykKKyAgICBkZWYgdGVzdF9kZXBsb3ltZW50X3RhcmdldF9kZWZhdWx0KHNlbGYpOgorICAgICAgICAjIElzc3VlIDk1MTY6IFRlc3QgdGhhdCwgaW4gdGhlIGFic2VuY2Ugb2YgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLAorICAgICAgICAjIGFuIGV4dGVuc2lvbiBtb2R1bGUgaXMgY29tcGlsZWQgd2l0aCB0aGUgc2FtZSBkZXBsb3ltZW50IHRhcmdldCBhcworICAgICAgICAjICB0aGUgaW50ZXJwcmV0ZXIuCisgICAgICAgIHNlbGYuX3RyeV9jb21waWxlX2RlcGxveW1lbnRfdGFyZ2V0KCc9PScsIE5vbmUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gJ2RhcndpbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgJ3Rlc3Qgb25seSByZWxldmFudCBmb3IgTWFjIE9TIFgnKQorICAgIGRlZiB0ZXN0X2RlcGxveW1lbnRfdGFyZ2V0X3Rvb19sb3coc2VsZik6CisgICAgICAgICMgSXNzdWUgOTUxNjogVGVzdCB0aGF0IGFuIGV4dGVuc2lvbiBtb2R1bGUgaXMgbm90IGFsbG93ZWQgdG8gYmUKKyAgICAgICAgIyBjb21waWxlZCB3aXRoIGEgZGVwbG95bWVudCB0YXJnZXQgbGVzcyB0aGFuIHRoYXQgb2YgdGhlIGludGVycHJldGVyLgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdQbGF0Zm9ybUVycm9yLAorICAgICAgICAgICAgc2VsZi5fdHJ5X2NvbXBpbGVfZGVwbG95bWVudF90YXJnZXQsICc+JywgJzEwLjEnKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLAorICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXN0IG9ubHkgcmVsZXZhbnQgZm9yIE1hYyBPUyBYJykKKyAgICBkZWYgdGVzdF9kZXBsb3ltZW50X3RhcmdldF9oaWdoZXJfb2soc2VsZik6CisgICAgICAgICMgSXNzdWUgOTUxNjogVGVzdCB0aGF0IGFuIGV4dGVuc2lvbiBtb2R1bGUgY2FuIGJlIGNvbXBpbGVkIHdpdGggYQorICAgICAgICAjIGRlcGxveW1lbnQgdGFyZ2V0IGhpZ2hlciB0aGFuIHRoYXQgb2YgdGhlIGludGVycHJldGVyOiB0aGUgZXh0CisgICAgICAgICMgbW9kdWxlIG1heSBkZXBlbmQgb24gc29tZSBuZXdlciBPUyBmZWF0dXJlLgorICAgICAgICBkZXB0YXJnZXQgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCcpCisgICAgICAgIGlmIGRlcHRhcmdldDoKKyAgICAgICAgICAgICMgaW5jcmVtZW50IHRoZSBtaW5vciB2ZXJzaW9uIG51bWJlciAoaS5lLiAxMC42IC0+IDEwLjcpCisgICAgICAgICAgICBkZXB0YXJnZXQgPSBbaW50KHgpIGZvciB4IGluIGRlcHRhcmdldC5zcGxpdCgnLicpXQorICAgICAgICAgICAgZGVwdGFyZ2V0Wy0xXSArPSAxCisgICAgICAgICAgICBkZXB0YXJnZXQgPSAnLicuam9pbihzdHIoaSkgZm9yIGkgaW4gZGVwdGFyZ2V0KQorICAgICAgICAgICAgc2VsZi5fdHJ5X2NvbXBpbGVfZGVwbG95bWVudF90YXJnZXQoJzwnLCBkZXB0YXJnZXQpCisKKyAgICBkZWYgX3RyeV9jb21waWxlX2RlcGxveW1lbnRfdGFyZ2V0KHNlbGYsIG9wZXJhdG9yLCB0YXJnZXQpOgorICAgICAgICBvcmlnX2Vudmlyb24gPSBvcy5lbnZpcm9uCisgICAgICAgIG9zLmVudmlyb24gPSBvcmlnX2Vudmlyb24uY29weSgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZXRhdHRyLCBvcywgJ2Vudmlyb24nLCBvcmlnX2Vudmlyb24pCisKKyAgICAgICAgaWYgdGFyZ2V0IGlzIE5vbmU6CisgICAgICAgICAgICBpZiBvcy5lbnZpcm9uLmdldCgnTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUJyk6CisgICAgICAgICAgICAgICAgZGVsIG9zLmVudmlyb25bJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCddCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBvcy5lbnZpcm9uWydNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQnXSA9IHRhcmdldAorCisgICAgICAgIGRlcHRhcmdldF9jID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJ2RlcHRhcmdldG1vZHVsZS5jJykKKworICAgICAgICB3aXRoIG9wZW4oZGVwdGFyZ2V0X2MsICd3JykgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZSh0ZXh0d3JhcC5kZWRlbnQoJycnXAorICAgICAgICAgICAgICAgICNpbmNsdWRlIDxBdmFpbGFiaWxpdHlNYWNyb3MuaD4KKworICAgICAgICAgICAgICAgIGludCBkdW1teTsKKworICAgICAgICAgICAgICAgICNpZiBUQVJHRVQgJXMgTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQKKyAgICAgICAgICAgICAgICAjZWxzZQorICAgICAgICAgICAgICAgICNlcnJvciAiVW5leHBlY3RlZCB0YXJnZXQiCisgICAgICAgICAgICAgICAgI2VuZGlmCisKKyAgICAgICAgICAgICcnJyAlIG9wZXJhdG9yKSkKKworICAgICAgICAjIGdldCB0aGUgZGVwbG95bWVudCB0YXJnZXQgdGhhdCB0aGUgaW50ZXJwcmV0ZXIgd2FzIGJ1aWx0IHdpdGgKKyAgICAgICAgdGFyZ2V0ID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQnKQorICAgICAgICB0YXJnZXQgPSB0dXBsZShtYXAoaW50LCB0YXJnZXQuc3BsaXQoJy4nKSkpCisgICAgICAgIHRhcmdldCA9ICclMDJkJTAxZDAnICUgdGFyZ2V0CisKKyAgICAgICAgZGVwdGFyZ2V0X2V4dCA9IEV4dGVuc2lvbigKKyAgICAgICAgICAgICdkZXB0YXJnZXQnLAorICAgICAgICAgICAgW2RlcHRhcmdldF9jXSwKKyAgICAgICAgICAgIGV4dHJhX2NvbXBpbGVfYXJncz1bJy1EVEFSR0VUPSVzJyAlICh0YXJnZXQsKV0sCisgICAgICAgICkKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbih7CisgICAgICAgICAgICAnbmFtZSc6ICdkZXB0YXJnZXQnLAorICAgICAgICAgICAgJ2V4dF9tb2R1bGVzJzogW2RlcHRhcmdldF9leHRdLAorICAgICAgICB9KQorICAgICAgICBkaXN0LnBhY2thZ2VfZGlyID0gc2VsZi50bXBfZGlyCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuYnVpbGRfbGliID0gc2VsZi50bXBfZGlyCisgICAgICAgIGNtZC5idWlsZF90ZW1wID0gc2VsZi50bXBfZGlyCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICAgICAgY21kLnJ1bigpCisgICAgICAgIGV4Y2VwdCBDb21waWxlRXJyb3I6CisgICAgICAgICAgICBzZWxmLmZhaWwoIldyb25nIGRlcGxveW1lbnQgdGFyZ2V0IGR1cmluZyBjb21waWxhdGlvbiIpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKEJ1aWxkRXh0VGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9weS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2J1aWxkX3B5LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA1OTliZjIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9weS5weQpAQCAtMCwwICsxLDE0NiBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21tYW5kLmJ1aWxkX3B5LiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCBpbXAKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5idWlsZF9weSBpbXBvcnQgYnVpbGRfcHkKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdGaWxlRXJyb3IKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgQnVpbGRQeVRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9wYWNrYWdlX2RhdGEoc2VsZik6CisgICAgICAgIHNvdXJjZXMgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBwa2dfZGlyID0gb3MucGF0aC5qb2luKHNvdXJjZXMsICdwa2cnKQorICAgICAgICBvcy5ta2Rpcihwa2dfZGlyKQorICAgICAgICBmID0gb3Blbihvcy5wYXRoLmpvaW4ocGtnX2RpciwgIl9faW5pdF9fLnB5IiksICJ3IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZi53cml0ZSgiIyBQcmV0ZW5kIHRoaXMgaXMgYSBwYWNrYWdlLiIpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgIyBsZXQncyBoYXZlIHR3byBmaWxlcyB0byBtYWtlIHN1cmUgZ2xvYmJpbmcgd29ya3MKKyAgICAgICAgZiA9IG9wZW4ob3MucGF0aC5qb2luKHBrZ19kaXIsICJSRUFETUUudHh0IiksICJ3IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZi53cml0ZSgiSW5mbyBhYm91dCB0aGlzIHBhY2thZ2UiKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIGYgPSBvcGVuKG9zLnBhdGguam9pbihwa2dfZGlyLCAiSEFDS0lORy50eHQiKSwgInciKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBmLndyaXRlKCJIb3cgdG8gY29udHJpYnV0ZSIpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKworICAgICAgICBkZXN0aW5hdGlvbiA9IHNlbGYubWtkdGVtcCgpCisKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbih7InBhY2thZ2VzIjogWyJwa2ciXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhY2thZ2VfZGlyIjogc291cmNlc30pCisKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsiYnVpbGQiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgZm9yY2U9RmFsc2UsCisgICAgICAgICAgICBidWlsZF9saWI9ZGVzdGluYXRpb24sCisgICAgICAgICAgICB1c2VfMnRvM19maXhlcnM9Tm9uZSwKKyAgICAgICAgICAgIGNvbnZlcnRfMnRvM19kb2N0ZXN0cz1Ob25lLAorICAgICAgICAgICAgdXNlXzJ0bzM9RmFsc2UpCisgICAgICAgIGRpc3QucGFja2FnZXMgPSBbInBrZyJdCisgICAgICAgIGRpc3QucGFja2FnZV9kYXRhID0geyJwa2ciOiBbIioudHh0Il19CisgICAgICAgIGRpc3QucGFja2FnZV9kaXIgPSBzb3VyY2VzCisKKyAgICAgICAgY21kID0gYnVpbGRfcHkoZGlzdCkKKyAgICAgICAgY21kLmNvbXBpbGUgPSBUcnVlCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQucGFja2FnZV9kYXRhLCBkaXN0LnBhY2thZ2VfZGF0YSkKKworICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAjIFRoaXMgbWFrZXMgc3VyZSB0aGUgbGlzdCBvZiBvdXRwdXRzIGluY2x1ZGVzIGJ5dGUtY29tcGlsZWQKKyAgICAgICAgIyBmaWxlcyBmb3IgUHl0aG9uIG1vZHVsZXMgYnV0IG5vdCBmb3IgcGFja2FnZSBkYXRhIGZpbGVzCisgICAgICAgICMgKHRoZXJlIHNob3VsZG4ndCAqYmUqIGJ5dGUtY29kZSBmaWxlcyBmb3IgdGhvc2UhKS4KKyAgICAgICAgIyBGSVhNRSB0aGUgdGVzdCBiZWxvdyBpcyBub3QgZG9pbmcgd2hhdCB0aGUgY29tbWVudCBhYm92ZSBzYXlzLCBhbmQKKyAgICAgICAgIyBpZiBpdCBkaWQgaXQgd291bGQgc2hvdyBhIGNvZGUgYnVnOiBpZiB3ZSBhZGQgYSBkZW1vLnB5IGZpbGUgdG8KKyAgICAgICAgIyBwYWNrYWdlX2RhdGEsIGl0IGdldHMgYnl0ZS1jb21waWxlZCEKKyAgICAgICAgb3V0cHV0cyA9IGNtZC5nZXRfb3V0cHV0cygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG91dHB1dHMpLCA0LCBvdXRwdXRzKQorICAgICAgICBwa2dkZXN0ID0gb3MucGF0aC5qb2luKGRlc3RpbmF0aW9uLCAicGtnIikKKyAgICAgICAgZmlsZXMgPSBvcy5saXN0ZGlyKHBrZ2Rlc3QpCisgICAgICAgIHB5Y2FjaGVfZGlyID0gb3MucGF0aC5qb2luKHBrZ2Rlc3QsICJfX3B5Y2FjaGVfXyIpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oIl9faW5pdF9fLnB5IiwgZmlsZXMpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oIlJFQURNRS50eHQiLCBmaWxlcykKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiSEFDS0lORy50eHQiLCBmaWxlcykKKyAgICAgICAgcHljX2ZpbGVzID0gb3MubGlzdGRpcihweWNhY2hlX2RpcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbIl9faW5pdF9fLiVzLnB5YyIgJSBpbXAuZ2V0X3RhZygpXSwgcHljX2ZpbGVzKQorCisgICAgZGVmIHRlc3RfZW1wdHlfcGFja2FnZV9kaXIoc2VsZik6CisgICAgICAgICMgU2VlIFNGIDE2Njg1OTYvMTcyMDg5Ny4KKyAgICAgICAgIyBjcmVhdGUgdGhlIGRpc3RyaWJ1dGlvbiBmaWxlcy4KKyAgICAgICAgc291cmNlcyA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHBrZyA9IG9zLnBhdGguam9pbihzb3VyY2VzLCAncGtnJykKKyAgICAgICAgb3MubWtkaXIocGtnKQorICAgICAgICBvcGVuKG9zLnBhdGguam9pbihwa2csICJfX2luaXRfXy5weSIpLCAid2IiKS5jbG9zZSgpCisgICAgICAgIHRlc3RkaXIgPSBvcy5wYXRoLmpvaW4ocGtnLCAiZG9jIikKKyAgICAgICAgb3MubWtkaXIodGVzdGRpcikKKyAgICAgICAgb3Blbihvcy5wYXRoLmpvaW4odGVzdGRpciwgInRlc3RmaWxlIiksICJ3YiIpLmNsb3NlKCkKKworICAgICAgICBvcy5jaGRpcihzb3VyY2VzKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsicGFja2FnZXMiOiBbInBrZyJdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFja2FnZV9kaXIiOiBzb3VyY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFja2FnZV9kYXRhIjogeyJwa2ciOiBbImRvYy8qIl19fSkKKyAgICAgICAgZGlzdC5zY3JpcHRfYXJncyA9IFsiYnVpbGQiXQorICAgICAgICBkaXN0LnBhcnNlX2NvbW1hbmRfbGluZSgpCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZGlzdC5ydW5fY29tbWFuZHMoKQorICAgICAgICBleGNlcHQgUGFja2FnaW5nRmlsZUVycm9yOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJmYWlsZWQgcGFja2FnZV9kYXRhIHRlc3Qgd2hlbiBwYWNrYWdlX2RpciBpcyAnJyIpCisKKyAgICBkZWYgdGVzdF9ieXRlX2NvbXBpbGUoc2VsZik6CisgICAgICAgIHByb2plY3RfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdChweV9tb2R1bGVzPVsnYm9pbGVkZWdncyddKQorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdib2lsZWRlZ2dzLnB5JywgJ2ltcG9ydCBhbnRpZ3Jhdml0eScpCisgICAgICAgIGNtZCA9IGJ1aWxkX3B5KGRpc3QpCisgICAgICAgIGNtZC5jb21waWxlID0gVHJ1ZQorICAgICAgICBjbWQuYnVpbGRfbGliID0gJ2hlcmUnCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgZm91bmQgPSBvcy5saXN0ZGlyKGNtZC5idWlsZF9saWIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ydGVkKGZvdW5kKSwgWydfX3B5Y2FjaGVfXycsICdib2lsZWRlZ2dzLnB5J10pCisgICAgICAgIGZvdW5kID0gb3MubGlzdGRpcihvcy5wYXRoLmpvaW4oY21kLmJ1aWxkX2xpYiwgJ19fcHljYWNoZV9fJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm91bmQsIFsnYm9pbGVkZWdncy4lcy5weWMnICUgaW1wLmdldF90YWcoKV0pCisKKyAgICBkZWYgdGVzdF9ieXRlX2NvbXBpbGVfb3B0aW1pemVkKHNlbGYpOgorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QocHlfbW9kdWxlcz1bJ2JvaWxlZGVnZ3MnXSkKKyAgICAgICAgb3MuY2hkaXIocHJvamVjdF9kaXIpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnYm9pbGVkZWdncy5weScsICdpbXBvcnQgYW50aWdyYXZpdHknKQorICAgICAgICBjbWQgPSBidWlsZF9weShkaXN0KQorICAgICAgICBjbWQuY29tcGlsZSA9IFRydWUKKyAgICAgICAgY21kLm9wdGltaXplID0gMQorICAgICAgICBjbWQuYnVpbGRfbGliID0gJ2hlcmUnCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgZm91bmQgPSBvcy5saXN0ZGlyKGNtZC5idWlsZF9saWIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ydGVkKGZvdW5kKSwgWydfX3B5Y2FjaGVfXycsICdib2lsZWRlZ2dzLnB5J10pCisgICAgICAgIGZvdW5kID0gb3MubGlzdGRpcihvcy5wYXRoLmpvaW4oY21kLmJ1aWxkX2xpYiwgJ19fcHljYWNoZV9fJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ydGVkKGZvdW5kKSwgWydib2lsZWRlZ2dzLiVzLnB5YycgJSBpbXAuZ2V0X3RhZygpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYm9pbGVkZWdncy4lcy5weW8nICUgaW1wLmdldF90YWcoKV0pCisKKyAgICBkZWYgdGVzdF9ieXRlX2NvbXBpbGVfdW5kZXJfQihzZWxmKToKKyAgICAgICAgIyBtYWtlIHN1cmUgYnl0ZSBjb21waWxhdGlvbiB3b3JrcyB1bmRlciAtQiAoZG9udF93cml0ZV9ieXRlY29kZSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldGF0dHIsIHN5cywgJ2RvbnRfd3JpdGVfYnl0ZWNvZGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGUpCisgICAgICAgIHN5cy5kb250X3dyaXRlX2J5dGVjb2RlID0gVHJ1ZQorICAgICAgICBzZWxmLnRlc3RfYnl0ZV9jb21waWxlKCkKKyAgICAgICAgc2VsZi50ZXN0X2J5dGVfY29tcGlsZV9vcHRpbWl6ZWQoKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShCdWlsZFB5VGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9zY3JpcHRzLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGRfc2NyaXB0cy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZDNhYzI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGRfc2NyaXB0cy5weQpAQCAtMCwwICsxLDEwOSBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21tYW5kLmJ1aWxkX3NjcmlwdHMuIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHN5c2NvbmZpZworZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJ1aWxkX3NjcmlwdHMgaW1wb3J0IGJ1aWxkX3NjcmlwdHMKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgQnVpbGRTY3JpcHRzVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9kZWZhdWx0X3NldHRpbmdzKHNlbGYpOgorICAgICAgICBjbWQgPSBzZWxmLmdldF9idWlsZF9zY3JpcHRzX2NtZCgiL2Zvby9iYXIiLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShjbWQuZm9yY2UpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoY21kLmJ1aWxkX2RpciwgTm9uZSkKKworICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNtZC5mb3JjZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuYnVpbGRfZGlyLCAiL2Zvby9iYXIiKQorCisgICAgZGVmIHRlc3RfYnVpbGQoc2VsZik6CisgICAgICAgIHNvdXJjZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHRhcmdldCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGV4cGVjdGVkID0gc2VsZi53cml0ZV9zYW1wbGVfc2NyaXB0cyhzb3VyY2UpCisKKyAgICAgICAgY21kID0gc2VsZi5nZXRfYnVpbGRfc2NyaXB0c19jbWQodGFyZ2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbb3MucGF0aC5qb2luKHNvdXJjZSwgZm4pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZm4gaW4gZXhwZWN0ZWRdKQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIGJ1aWx0ID0gb3MubGlzdGRpcih0YXJnZXQpCisgICAgICAgIGZvciBuYW1lIGluIGV4cGVjdGVkOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihuYW1lLCBidWlsdCkKKworICAgIGRlZiBnZXRfYnVpbGRfc2NyaXB0c19jbWQoc2VsZiwgdGFyZ2V0LCBzY3JpcHRzKToKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGRpc3Quc2NyaXB0cyA9IHNjcmlwdHMKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsiYnVpbGQiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgYnVpbGRfc2NyaXB0cz10YXJnZXQsCisgICAgICAgICAgICBmb3JjZT1UcnVlLAorICAgICAgICAgICAgZXhlY3V0YWJsZT1zeXMuZXhlY3V0YWJsZSwKKyAgICAgICAgICAgIHVzZV8ydG8zPUZhbHNlLAorICAgICAgICAgICAgdXNlXzJ0bzNfZml4ZXJzPU5vbmUsCisgICAgICAgICAgICBjb252ZXJ0XzJ0bzNfZG9jdGVzdHM9Tm9uZQorICAgICAgICAgICAgKQorICAgICAgICByZXR1cm4gYnVpbGRfc2NyaXB0cyhkaXN0KQorCisgICAgZGVmIHdyaXRlX3NhbXBsZV9zY3JpcHRzKHNlbGYsIGRpcik6CisgICAgICAgIGV4cGVjdGVkID0gW10KKyAgICAgICAgZXhwZWN0ZWQuYXBwZW5kKCJzY3JpcHQxLnB5IikKKyAgICAgICAgc2VsZi53cml0ZV9zY3JpcHQoZGlyLCAic2NyaXB0MS5weSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICgiIyEgL3Vzci9iaW4vZW52IHB5dGhvbjIuM1xuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIiMgYm9ndXMgc2NyaXB0IHcvIFB5dGhvbiBzaC1iYW5nXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFzc1xuIikpCisgICAgICAgIGV4cGVjdGVkLmFwcGVuZCgic2NyaXB0Mi5weSIpCisgICAgICAgIHNlbGYud3JpdGVfc2NyaXB0KGRpciwgInNjcmlwdDIucHkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAoIiMhL3Vzci9iaW4vcHl0aG9uXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiIyBib2d1cyBzY3JpcHQgdy8gUHl0aG9uIHNoLWJhbmdcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXNzXG4iKSkKKyAgICAgICAgZXhwZWN0ZWQuYXBwZW5kKCJzaGVsbC5zaCIpCisgICAgICAgIHNlbGYud3JpdGVfc2NyaXB0KGRpciwgInNoZWxsLnNoIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKCIjIS9iaW4vc2hcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIjIGJvZ3VzIHNoZWxsIHNjcmlwdCB3LyBzaC1iYW5nXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhpdCAwXG4iKSkKKyAgICAgICAgcmV0dXJuIGV4cGVjdGVkCisKKyAgICBkZWYgd3JpdGVfc2NyaXB0KHNlbGYsIGRpciwgbmFtZSwgdGV4dCk6CisgICAgICAgIHdpdGggb3Blbihvcy5wYXRoLmpvaW4oZGlyLCBuYW1lKSwgInciKSBhcyBmOgorICAgICAgICAgICAgZi53cml0ZSh0ZXh0KQorCisgICAgZGVmIHRlc3RfdmVyc2lvbl9pbnQoc2VsZik6CisgICAgICAgIHNvdXJjZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHRhcmdldCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGV4cGVjdGVkID0gc2VsZi53cml0ZV9zYW1wbGVfc2NyaXB0cyhzb3VyY2UpCisKKworICAgICAgICBjbWQgPSBzZWxmLmdldF9idWlsZF9zY3JpcHRzX2NtZCh0YXJnZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcy5wYXRoLmpvaW4oc291cmNlLCBmbikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBmbiBpbiBleHBlY3RlZF0pCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKworICAgICAgICAjIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWU0NTI0CisgICAgICAgICMKKyAgICAgICAgIyBPbiBsaW51eC1nKystMzIgd2l0aCBjb21tYW5kIGxpbmUgYC4vY29uZmlndXJlIC0tZW5hYmxlLWlwdjYKKyAgICAgICAgIyAtLXdpdGgtc3VmZml4PTNgLCBweXRob24gaXMgY29tcGlsZWQgb2theSBidXQgdGhlIGJ1aWxkIHNjcmlwdHMKKyAgICAgICAgIyBmYWlsZWQgd2hlbiB3cml0aW5nIHRoZSBuYW1lIG9mIHRoZSBleGVjdXRhYmxlCisgICAgICAgIG9sZCA9IHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcnMoKS5nZXQoJ1ZFUlNJT04nKQorICAgICAgICBzeXNjb25maWcuX0NPTkZJR19WQVJTWydWRVJTSU9OJ10gPSA0CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgaWYgb2xkIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHN5c2NvbmZpZy5fQ09ORklHX1ZBUlNbJ1ZFUlNJT04nXSA9IG9sZAorCisgICAgICAgIGJ1aWx0ID0gb3MubGlzdGRpcih0YXJnZXQpCisgICAgICAgIGZvciBuYW1lIGluIGV4cGVjdGVkOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihuYW1lLCBidWlsdCkKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKEJ1aWxkU2NyaXB0c1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY2hlY2sucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9jaGVjay5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYjkxMDUwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY2hlY2sucHkKQEAgLTAsMCArMSwxNjEgQEAKKyIiIlRlc3RzIGZvciBkaXN0dXRpbHMuY29tbWFuZC5jaGVjay4iIiIKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jaGVjayBpbXBvcnQgY2hlY2sKK2Zyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBfSEFTX0RPQ1VUSUxTCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1NldHVwRXJyb3IsIE1ldGFkYXRhTWlzc2luZ0Vycm9yCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBDaGVja1Rlc3RDYXNlKHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBfcnVuKHNlbGYsIG1ldGFkYXRhPU5vbmUsICoqb3B0aW9ucyk6CisgICAgICAgIGlmIG1ldGFkYXRhIGlzIE5vbmU6CisgICAgICAgICAgICBtZXRhZGF0YSA9IHsnbmFtZSc6ICd4eHgnLCAndmVyc2lvbic6ICcxLjInfQorICAgICAgICBwa2dfaW5mbywgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKiptZXRhZGF0YSkKKyAgICAgICAgY21kID0gY2hlY2soZGlzdCkKKyAgICAgICAgY21kLmluaXRpYWxpemVfb3B0aW9ucygpCisgICAgICAgIGZvciBuYW1lLCB2YWx1ZSBpbiBvcHRpb25zLml0ZW1zKCk6CisgICAgICAgICAgICBzZXRhdHRyKGNtZCwgbmFtZSwgdmFsdWUpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisgICAgICAgIHJldHVybiBjbWQKKworICAgIGRlZiB0ZXN0X2NoZWNrX21ldGFkYXRhKHNlbGYpOgorICAgICAgICAjIGxldCdzIHJ1biB0aGUgY29tbWFuZCB3aXRoIG5vIG1ldGFkYXRhIGF0IGFsbAorICAgICAgICAjIGJ5IGRlZmF1bHQsIGNoZWNrIGlzIGNoZWNraW5nIHRoZSBtZXRhZGF0YQorICAgICAgICAjIHNob3VsZCBoYXZlIHNvbWUgd2FybmluZ3MKKyAgICAgICAgc2VsZi5fcnVuKCkKKyAgICAgICAgIyB0cmljazogdXNpbmcgYXNzZXJ0Tm90RXF1YWwgd2l0aCBhbiBlbXB0eSBsaXN0IHdpbGwgZ2l2ZSB1cyBhIG1vcmUKKyAgICAgICAgIyB1c2VmdWwgZXJyb3IgbWVzc2FnZSB0aGFuIGFzc2VydEdyZWF0ZXIoLi4sIDApIHdoZW4gdGhlIGNvZGUgY2hhbmdlCisgICAgICAgICMgYW5kIHRoZSB0ZXN0IGZhaWxzCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKworICAgICAgICAjIG5vdyBsZXQncyBhZGQgdGhlIHJlcXVpcmVkIGZpZWxkcworICAgICAgICAjIGFuZCBydW4gaXQgYWdhaW4sIHRvIG1ha2Ugc3VyZSB3ZSBkb24ndCBnZXQKKyAgICAgICAgIyBhbnkgd2FybmluZyBhbnltb3JlCisgICAgICAgIG1ldGFkYXRhID0geydob21lX3BhZ2UnOiAneHh4JywgJ2F1dGhvcic6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAnYXV0aG9yX2VtYWlsJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICduYW1lJzogJ3h4eCcsICd2ZXJzaW9uJzogJzQuMicsCisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgc2VsZi5fcnVuKG1ldGFkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZ2V0X2xvZ3MoKSwgW10pCisKKyAgICAgICAgIyBub3cgd2l0aCB0aGUgc3RyaWN0IG1vZGUsIHdlIHNob3VsZAorICAgICAgICAjIGdldCBhbiBlcnJvciBpZiB0aGVyZSBhcmUgbWlzc2luZyBtZXRhZGF0YQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhNZXRhZGF0YU1pc3NpbmdFcnJvciwgc2VsZi5fcnVuLCB7fSwgKip7J3N0cmljdCc6IDF9KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBzZWxmLl9ydW4sCisgICAgICAgICAgICB7J25hbWUnOiAneHh4JywgJ3ZlcnNpb24nOiAneHh4J30sICoqeydzdHJpY3QnOiAxfSkKKworICAgICAgICAjIGNsZWFyIHdhcm5pbmdzIGZyb20gdGhlIHByZXZpb3VzIGNhbGxzCisgICAgICAgIHNlbGYubG9naGFuZGxlci5mbHVzaCgpCisKKyAgICAgICAgIyBhbmQgb2YgY291cnNlLCBubyBlcnJvciB3aGVuIGFsbCBtZXRhZGF0YSBmaWVsZHMgYXJlIHByZXNlbnQKKyAgICAgICAgc2VsZi5fcnVuKG1ldGFkYXRhLCBzdHJpY3Q9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9sb2dzKCksIFtdKQorCisgICAgICAgICMgbm93IGEgdGVzdCB3aXRoIG5vbi1BU0NJSSBjaGFyYWN0ZXJzCisgICAgICAgIG1ldGFkYXRhID0geydob21lX3BhZ2UnOiAneHh4JywgJ2F1dGhvcic6ICdcdTAwYzlyaWMnLAorICAgICAgICAgICAgICAgICAgICAnYXV0aG9yX2VtYWlsJzogJ3h4eCcsICduYW1lJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMicsCisgICAgICAgICAgICAgICAgICAgICdzdW1tYXJ5JzogJ1NvbWV0aGluZyBhYm91dCBlc3N6ZXQgXHUwMGRmJywKKyAgICAgICAgICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJzogJ01vcmUgdGhpbmdzIGFib3V0IGVzc3pldCBcdTAwZGYnfQorICAgICAgICBzZWxmLl9ydW4obWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKworICAgIGRlZiB0ZXN0X2NoZWNrX21ldGFkYXRhXzFfMihzZWxmKToKKyAgICAgICAgIyBsZXQncyBydW4gdGhlIGNvbW1hbmQgd2l0aCBubyBtZXRhZGF0YSBhdCBhbGwKKyAgICAgICAgIyBieSBkZWZhdWx0LCBjaGVjayBpcyBjaGVja2luZyB0aGUgbWV0YWRhdGEKKyAgICAgICAgIyBzaG91bGQgaGF2ZSBzb21lIHdhcm5pbmdzCisgICAgICAgIHNlbGYuX3J1bigpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKworICAgICAgICAjIG5vdyBsZXQncyBhZGQgdGhlIHJlcXVpcmVkIGZpZWxkcyBhbmQgcnVuIGl0IGFnYWluLCB0byBtYWtlIHN1cmUgd2UKKyAgICAgICAgIyBkb24ndCBnZXQgYW55IHdhcm5pbmcgYW55bW9yZSBsZXQncyB1c2UgcmVxdWlyZXNfcHl0aG9uIGFzIGEgbWFya2VyCisgICAgICAgICMgdG8gZW5mb3JjZSBNZXRhZGF0YS1WZXJzaW9uIDEuMgorICAgICAgICBtZXRhZGF0YSA9IHsnaG9tZV9wYWdlJzogJ3h4eCcsICdhdXRob3InOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgJ2F1dGhvcl9lbWFpbCc6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICd4eHgnLCAndmVyc2lvbic6ICc0LjInLAorICAgICAgICAgICAgICAgICAgICAncmVxdWlyZXNfcHl0aG9uJzogJzIuNCcsCisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgc2VsZi5fcnVuKG1ldGFkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZ2V0X2xvZ3MoKSwgW10pCisKKyAgICAgICAgIyBub3cgd2l0aCB0aGUgc3RyaWN0IG1vZGUsIHdlIHNob3VsZAorICAgICAgICAjIGdldCBhbiBlcnJvciBpZiB0aGVyZSBhcmUgbWlzc2luZyBtZXRhZGF0YQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhNZXRhZGF0YU1pc3NpbmdFcnJvciwgc2VsZi5fcnVuLCB7fSwgKip7J3N0cmljdCc6IDF9KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBzZWxmLl9ydW4sCisgICAgICAgICAgICB7J25hbWUnOiAneHh4JywgJ3ZlcnNpb24nOiAneHh4J30sICoqeydzdHJpY3QnOiAxfSkKKworICAgICAgICAjIGNvbXBsYWluIGFib3V0IHZlcnNpb24gZm9ybWF0CisgICAgICAgIG1ldGFkYXRhWyd2ZXJzaW9uJ10gPSAneHh4JworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBzZWxmLl9ydW4sIG1ldGFkYXRhLAorICAgICAgICAgICAgKip7J3N0cmljdCc6IDF9KQorCisgICAgICAgICMgY2xlYXIgd2FybmluZ3MgZnJvbSB0aGUgcHJldmlvdXMgY2FsbHMKKyAgICAgICAgc2VsZi5sb2doYW5kbGVyLmZsdXNoKCkKKworICAgICAgICAjIG5vdyB3aXRoIGNvcnJlY3QgdmVyc2lvbiBmb3JtYXQgYWdhaW4KKyAgICAgICAgbWV0YWRhdGFbJ3ZlcnNpb24nXSA9ICc0LjInCisgICAgICAgIHNlbGYuX3J1bihtZXRhZGF0YSwgc3RyaWN0PVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKF9IQVNfRE9DVVRJTFMsICJyZXF1aXJlcyBkb2N1dGlscyIpCisgICAgZGVmIHRlc3RfY2hlY2tfcmVzdHJ1Y3R1cmVkdGV4dChzZWxmKToKKyAgICAgICAgIyBsZXQncyBzZWUgaWYgaXQgZGV0ZWN0cyBicm9rZW4gcmVzdCBpbiBkZXNjcmlwdGlvbgorICAgICAgICBicm9rZW5fcmVzdCA9ICd0aXRsZVxuPT09XG5cbnRlc3QnCisgICAgICAgIHBrZ19pbmZvLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdChkZXNjcmlwdGlvbj1icm9rZW5fcmVzdCkKKyAgICAgICAgY21kID0gY2hlY2soZGlzdCkKKyAgICAgICAgY21kLmNoZWNrX3Jlc3RydWN0dXJlZHRleHQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLmdldF9sb2dzKCkpLCAxKQorCisgICAgICAgICMgbGV0J3Mgc2VlIGlmIHdlIGhhdmUgYW4gZXJyb3Igd2l0aCBzdHJpY3Q9MQorICAgICAgICBtZXRhZGF0YSA9IHsnaG9tZV9wYWdlJzogJ3h4eCcsICdhdXRob3InOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgJ2F1dGhvcl9lbWFpbCc6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICd4eHgnLCAndmVyc2lvbic6ICcxLjInLAorICAgICAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiBicm9rZW5fcmVzdH0KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgc2VsZi5fcnVuLCBtZXRhZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaWN0PVRydWUsIGFsbD1UcnVlKQorICAgICAgICBzZWxmLmxvZ2hhbmRsZXIuZmx1c2goKQorCisgICAgICAgICMgYW5kIG5vbi1icm9rZW4gcmVzdCwgaW5jbHVkaW5nIGEgbm9uLUFTQ0lJIGNoYXJhY3RlciB0byB0ZXN0ICMxMjExNAorICAgICAgICBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdChkZXNjcmlwdGlvbj0ndGl0bGVcbj09PT09XG5cbnRlc3QgXHUwMGRmJylbMV0KKyAgICAgICAgY21kID0gY2hlY2soZGlzdCkKKyAgICAgICAgY21kLmNoZWNrX3Jlc3RydWN0dXJlZHRleHQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZ2V0X2xvZ3MoKSwgW10pCisKKyAgICBkZWYgdGVzdF9jaGVja19hbGwoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1NldHVwRXJyb3IsIHNlbGYuX3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgeyduYW1lJzogJ3h4eCcsICd2ZXJzaW9uJzogJ3h4eCd9LCAqKnsnc3RyaWN0JzogMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhbGwnOiAxfSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTWV0YWRhdGFNaXNzaW5nRXJyb3IsIHNlbGYuX3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAge30sICoqeydzdHJpY3QnOiAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FsbCc6IDF9KQorCisgICAgZGVmIHRlc3RfY2hlY2tfaG9va3Moc2VsZik6CisgICAgICAgIHBrZ19pbmZvLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGRpc3QuY29tbWFuZF9vcHRpb25zWydpbnN0YWxsX2Rpc3QnXSA9IHsKKyAgICAgICAgICAgICdwcmVfaG9vayc6ICgnZmlsZScsIHsiYSI6ICdzb21lLm5vbmV4dGlzdGFudC5ob29rLmdocnJyYWFycmhsbCd9KSwKKyAgICAgICAgfQorICAgICAgICBjbWQgPSBjaGVjayhkaXN0KQorICAgICAgICBjbWQuY2hlY2tfaG9va3NfcmVzb2x2YWJsZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuZ2V0X2xvZ3MoKSksIDEpCisKKyAgICBkZWYgdGVzdF93YXJuKHNlbGYpOgorICAgICAgICBfLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGNoZWNrKGRpc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKyAgICAgICAgY21kLndhcm4oJ2hlbGxvJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9sb2dzKCksIFsnY2hlY2s6IGhlbGxvJ10pCisgICAgICAgIGNtZC53YXJuKCdoZWxsbyAlcycsICd3b3JsZCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbJ2NoZWNrOiBoZWxsbyB3b3JsZCddKQorICAgICAgICBjbWQud2FybignaGVsbG8gJXMgJXMnLCAnYmVhdXRpZnVsJywgJ3dvcmxkJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9sb2dzKCksIFsnY2hlY2s6IGhlbGxvIGJlYXV0aWZ1bCB3b3JsZCddKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShDaGVja1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY2xlYW4ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9jbGVhbi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNzhjM2E3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY2xlYW4ucHkKQEAgLTAsMCArMSw0NiBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21tYW5kLmNsZWFuLiIiIgoraW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY2xlYW4gaW1wb3J0IGNsZWFuCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBjbGVhblRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9ydW4oc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gY2xlYW4oZGlzdCkKKworICAgICAgICAjIGxldCdzIGFkZCBzb21lIGVsZW1lbnRzIGNsZWFuIHNob3VsZCByZW1vdmUKKyAgICAgICAgZGlycyA9IFsoZCwgb3MucGF0aC5qb2luKHBrZ19kaXIsIGQpKQorICAgICAgICAgICAgICAgIGZvciBkIGluICgnYnVpbGRfdGVtcCcsICdidWlsZF9saWInLCAnYmRpc3RfYmFzZScsCisgICAgICAgICAgICAgICAgJ2J1aWxkX3NjcmlwdHMnLCAnYnVpbGRfYmFzZScpXQorCisgICAgICAgIGZvciBuYW1lLCBwYXRoIGluIGRpcnM6CisgICAgICAgICAgICBvcy5ta2RpcihwYXRoKQorICAgICAgICAgICAgc2V0YXR0cihjbWQsIG5hbWUsIHBhdGgpCisgICAgICAgICAgICBpZiBuYW1lID09ICdidWlsZF9iYXNlJzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZm9yIGYgaW4gKCdvbmUnLCAndHdvJywgJ3RocmVlJyk6CisgICAgICAgICAgICAgICAgc2VsZi53cml0ZV9maWxlKChwYXRoLCBmKSkKKworICAgICAgICAjIGxldCdzIHJ1biB0aGUgY29tbWFuZAorICAgICAgICBjbWQuYWxsID0gVHJ1ZQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgbWFrZSBzdXJlIHRoZSBmaWxlcyB3aGVyZSByZW1vdmVkCisgICAgICAgIGZvciBuYW1lLCBwYXRoIGluIGRpcnM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKHBhdGgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnJXIgd2FzIG5vdCByZW1vdmVkJyAlIHBhdGgpCisKKyAgICAgICAgIyBsZXQncyBydW4gdGhlIGNvbW1hbmQgYWdhaW4gKHNob3VsZCBzcGl0IHdhcm5pbmdzIGJ1dCBzdWNjZWVkKQorICAgICAgICBjbWQucnVuKCkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoY2xlYW5UZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2NtZC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2NtZC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZDAwZWMzCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY21kLnB5CkBAIC0wLDAgKzEsMTAyIEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNtZC4iIiIKK2ltcG9ydCBvcworaW1wb3J0IGxvZ2dpbmcKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHN1cHBvcnQsIHVuaXR0ZXN0CisKKworY2xhc3MgTXlDbWQoQ29tbWFuZCk6CisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgcGFzcworCisKK2NsYXNzIENvbW1hbmRUZXN0Q2FzZShzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoQ29tbWFuZFRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBzZWxmLmNtZCA9IE15Q21kKGRpc3QpCisKKyAgICBkZWYgdGVzdF9tYWtlX2ZpbGUoc2VsZik6CisgICAgICAgIGNtZCA9IHNlbGYuY21kCisKKyAgICAgICAgIyBtYWtpbmcgc3VyZSBpdCByYWlzZXMgd2hlbiBpbmZpbGVzIGlzIG5vdCBhIHN0cmluZyBvciBhIGxpc3QvdHVwbGUKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjbWQubWFrZV9maWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBpbmZpbGVzPTEsIG91dGZpbGU9JycsIGZ1bmM9J2Z1bmMnLCBhcmdzPSgpKQorCisgICAgICAgICMgbWFraW5nIHN1cmUgZXhlY3V0ZSBnZXRzIGNhbGxlZCBwcm9wZXJseQorICAgICAgICBkZWYgX2V4ZWN1dGUoZnVuYywgYXJncywgZXhlY19tc2csIGxldmVsKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhlY19tc2csICdnZW5lcmF0aW5nIG91dCBmcm9tIGluJykKKyAgICAgICAgY21kLmZvcmNlID0gVHJ1ZQorICAgICAgICBjbWQuZXhlY3V0ZSA9IF9leGVjdXRlCisgICAgICAgIGNtZC5tYWtlX2ZpbGUoaW5maWxlcz0naW4nLCBvdXRmaWxlPSdvdXQnLCBmdW5jPSdmdW5jJywgYXJncz0oKSkKKworICAgIGRlZiB0ZXN0X2R1bXBfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgY21kID0gc2VsZi5jbWQKKyAgICAgICAgY21kLm9wdGlvbjEgPSAxCisgICAgICAgIGNtZC5vcHRpb24yID0gMQorICAgICAgICBjbWQudXNlcl9vcHRpb25zID0gWygnb3B0aW9uMScsICcnLCAnJyksICgnb3B0aW9uMicsICcnLCAnJyldCisgICAgICAgIGNtZC5kdW1wX29wdGlvbnMoKQorCisgICAgICAgIHdhbnRlZCA9IFsiY29tbWFuZCBvcHRpb25zIGZvciAnTXlDbWQnOiIsICcgIG9wdGlvbjEgPSAxJywKKyAgICAgICAgICAgICAgICAgICcgIG9wdGlvbjIgPSAxJ10KKyAgICAgICAgbXNncyA9IHNlbGYuZ2V0X2xvZ3MobG9nZ2luZy5JTkZPKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZ3MsIHdhbnRlZCkKKworICAgIGRlZiB0ZXN0X2Vuc3VyZV9zdHJpbmcoc2VsZik6CisgICAgICAgIGNtZCA9IHNlbGYuY21kCisgICAgICAgIGNtZC5vcHRpb24xID0gJ29rJworICAgICAgICBjbWQuZW5zdXJlX3N0cmluZygnb3B0aW9uMScpCisKKyAgICAgICAgY21kLm9wdGlvbjIgPSBOb25lCisgICAgICAgIGNtZC5lbnN1cmVfc3RyaW5nKCdvcHRpb24yJywgJ3h4eCcpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShoYXNhdHRyKGNtZCwgJ29wdGlvbjInKSkKKworICAgICAgICBjbWQub3B0aW9uMyA9IDEKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5lbnN1cmVfc3RyaW5nLCAnb3B0aW9uMycpCisKKyAgICBkZWYgdGVzdF9lbnN1cmVfc3RyaW5nX2xpc3Qoc2VsZik6CisgICAgICAgIGNtZCA9IHNlbGYuY21kCisgICAgICAgIGNtZC5vcHRpb24xID0gJ29rLGRvaycKKyAgICAgICAgY21kLmVuc3VyZV9zdHJpbmdfbGlzdCgnb3B0aW9uMScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLm9wdGlvbjEsIFsnb2snLCAnZG9rJ10pCisKKyAgICAgICAgY21kLnllc19zdHJpbmdfbGlzdCA9IFsnb25lJywgJ3R3bycsICd0aHJlZSddCisgICAgICAgIGNtZC55ZXNfc3RyaW5nX2xpc3QyID0gJ29rJworICAgICAgICBjbWQuZW5zdXJlX3N0cmluZ19saXN0KCd5ZXNfc3RyaW5nX2xpc3QnKQorICAgICAgICBjbWQuZW5zdXJlX3N0cmluZ19saXN0KCd5ZXNfc3RyaW5nX2xpc3QyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQueWVzX3N0cmluZ19saXN0LCBbJ29uZScsICd0d28nLCAndGhyZWUnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQueWVzX3N0cmluZ19saXN0MiwgWydvayddKQorCisgICAgICAgIGNtZC5ub3Rfc3RyaW5nX2xpc3QgPSBbJ29uZScsIDIsICd0aHJlZSddCisgICAgICAgIGNtZC5ub3Rfc3RyaW5nX2xpc3QyID0gb2JqZWN0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNtZC5lbnN1cmVfc3RyaW5nX2xpc3QsICdub3Rfc3RyaW5nX2xpc3QnKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ09wdGlvbkVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjbWQuZW5zdXJlX3N0cmluZ19saXN0LCAnbm90X3N0cmluZ19saXN0MicpCisKKyAgICBkZWYgdGVzdF9lbnN1cmVfZmlsZW5hbWUoc2VsZik6CisgICAgICAgIGNtZCA9IHNlbGYuY21kCisgICAgICAgIGNtZC5vcHRpb24xID0gX19maWxlX18KKyAgICAgICAgY21kLmVuc3VyZV9maWxlbmFtZSgnb3B0aW9uMScpCisgICAgICAgIGNtZC5vcHRpb24yID0gJ3h4eCcKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5lbnN1cmVfZmlsZW5hbWUsICdvcHRpb24yJykKKworICAgIGRlZiB0ZXN0X2Vuc3VyZV9kaXJuYW1lKHNlbGYpOgorICAgICAgICBjbWQgPSBzZWxmLmNtZAorICAgICAgICBjbWQub3B0aW9uMSA9IG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykgb3Igb3MuY3VyZGlyCisgICAgICAgIGNtZC5lbnN1cmVfZGlybmFtZSgnb3B0aW9uMScpCisgICAgICAgIGNtZC5vcHRpb24yID0gJ3h4eCcKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5lbnN1cmVfZGlybmFtZSwgJ29wdGlvbjInKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShDb21tYW5kVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9jb25maWcucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9jb25maWcucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGFlNzViNAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2NvbmZpZy5weQpAQCAtMCwwICsxLDc2IEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNvbW1hbmQuY29uZmlnLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgbG9nZ2luZworCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNvbmZpZyBpbXBvcnQgZHVtcF9maWxlLCBjb25maWcKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK2NsYXNzIENvbmZpZ1Rlc3RDYXNlKHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfZHVtcF9maWxlKHNlbGYpOgorICAgICAgICB0aGlzX2ZpbGUgPSBfX2ZpbGVfXy5yc3RyaXAoJ2NvJykKKyAgICAgICAgd2l0aCBvcGVuKHRoaXNfZmlsZSkgYXMgZjoKKyAgICAgICAgICAgIG51bWxpbmVzID0gbGVuKGYucmVhZGxpbmVzKCkpCisKKyAgICAgICAgZHVtcF9maWxlKHRoaXNfZmlsZSwgJ0kgYW0gdGhlIGhlYWRlcicpCisKKyAgICAgICAgbG9ncyA9IFtdCisgICAgICAgIGZvciBsb2cgaW4gc2VsZi5nZXRfbG9ncyhsb2dnaW5nLklORk8pOgorICAgICAgICAgICAgbG9ncy5leHRlbmQobGluZSBmb3IgbGluZSBpbiBsb2cuc3BsaXQoJ1xuJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGxvZ3MpLCBudW1saW5lcyArIDIpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInLCAnZGlzYWJsZWQgb24gd2luMzInKQorICAgIGRlZiB0ZXN0X3NlYXJjaF9jcHAoc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gY29uZmlnKGRpc3QpCisKKyAgICAgICAgIyBzaW1wbGUgcGF0dGVybiBzZWFyY2hlcworICAgICAgICBtYXRjaCA9IGNtZC5zZWFyY2hfY3BwKHBhdHRlcm49J3h4eCcsIGJvZHk9Jy8qIHh4eCAqLycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0Y2gsIDApCisKKyAgICAgICAgbWF0Y2ggPSBjbWQuc2VhcmNoX2NwcChwYXR0ZXJuPSdfY29uZmlndGVzdCcsIGJvZHk9Jy8qIHh4eCAqLycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0Y2gsIDEpCisKKyAgICBkZWYgdGVzdF9maW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICAjIGZpbmFsaXplX29wdGlvbnMgZG9lcyBhIGJpdCBvZiB0cmFuc2Zvcm1hdGlvbgorICAgICAgICAjIG9uIG9wdGlvbnMKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBjbWQgPSBjb25maWcoZGlzdCkKKyAgICAgICAgY21kLmluY2x1ZGVfZGlycyA9ICdvbmUlc3R3bycgJSBvcy5wYXRoc2VwCisgICAgICAgIGNtZC5saWJyYXJpZXMgPSAnb25lJworICAgICAgICBjbWQubGlicmFyeV9kaXJzID0gJ3RocmVlJXNmb3VyJyAlIG9zLnBhdGhzZXAKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmluY2x1ZGVfZGlycywgWydvbmUnLCAndHdvJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmxpYnJhcmllcywgWydvbmUnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQubGlicmFyeV9kaXJzLCBbJ3RocmVlJywgJ2ZvdXInXSkKKworICAgIGRlZiB0ZXN0X2NsZWFuKHNlbGYpOgorICAgICAgICAjIF9jbGVhbiByZW1vdmVzIGZpbGVzCisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBmMSA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnb25lJykKKyAgICAgICAgZjIgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ3R3bycpCisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGYxLCAneHh4JykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGYyLCAneHh4JykKKworICAgICAgICBmb3IgZiBpbiAoZjEsIGYyKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhmKSkKKworICAgICAgICBwa2dfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGNvbmZpZyhkaXN0KQorICAgICAgICBjbWQuX2NsZWFuKGYxLCBmMikKKworICAgICAgICBmb3IgZiBpbiAoZjEsIGYyKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoZikpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKENvbmZpZ1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kYXRhLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kYXRhLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhkNDM3M2QKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2RhdGEucHkKQEAgLTAsMCArMSwxNDggQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX2RhdGEuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCBzeXNjb25maWcKK2ltcG9ydCBwYWNrYWdpbmcuZGF0YWJhc2UKK2Zyb20gc3lzY29uZmlnIGltcG9ydCBfZ2V0X2RlZmF1bHRfc2NoZW1lCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kYXRhIGltcG9ydCBpbnN0YWxsX2RhdGEKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kaXN0IGltcG9ydCBpbnN0YWxsX2Rpc3QKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kaXN0aW5mbyBpbXBvcnQgaW5zdGFsbF9kaXN0aW5mbworCisKK2NsYXNzIEluc3RhbGxEYXRhVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihJbnN0YWxsRGF0YVRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNjaGVtZSA9IF9nZXRfZGVmYXVsdF9zY2hlbWUoKQorICAgICAgICBvbGRfaXRlbXMgPSBzeXNjb25maWcuX1NDSEVNRVMuaXRlbXMoc2NoZW1lKQorCisgICAgICAgIGRlZiByZXN0b3JlKCk6CisgICAgICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMucmVtb3ZlX3NlY3Rpb24oc2NoZW1lKQorICAgICAgICAgICAgc3lzY29uZmlnLl9TQ0hFTUVTLmFkZF9zZWN0aW9uKHNjaGVtZSkKKyAgICAgICAgICAgIGZvciBvcHRpb24sIHZhbHVlIGluIG9sZF9pdGVtczoKKyAgICAgICAgICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KHNjaGVtZSwgb3B0aW9uLCB2YWx1ZSkKKworICAgICAgICBzZWxmLmFkZENsZWFudXAocmVzdG9yZSkKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9ydW4oc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gaW5zdGFsbF9kYXRhKGRpc3QpCisgICAgICAgIGNtZC5pbnN0YWxsX2RpciA9IGluc3QgPSBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ2luc3QnKQorICAgICAgICBzY2hlbWUgPSBfZ2V0X2RlZmF1bHRfc2NoZW1lKCkKKworICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KHNjaGVtZSwgJ2luc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihwa2dfZGlyLCAnaW5zdCcpKQorICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KHNjaGVtZSwgJ2luc3QyJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ2luc3QyJykpCisKKyAgICAgICAgb25lID0gb3MucGF0aC5qb2luKHBrZ19kaXIsICdvbmUnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUob25lLCAneHh4JykKKyAgICAgICAgaW5zdDIgPSBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ2luc3QyJykKKyAgICAgICAgdHdvID0gb3MucGF0aC5qb2luKHBrZ19kaXIsICd0d28nKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUodHdvLCAneHh4JykKKworICAgICAgICAjIEZJWE1FIHRoaXMgY3JlYXRlcyBhIGxpdGVyYWwgXHtpbnN0Mlx9IGRpcmVjdG9yeSEKKyAgICAgICAgY21kLmRhdGFfZmlsZXMgPSB7b25lOiAne2luc3R9L29uZScsIHR3bzogJ3tpbnN0Mn0vdHdvJ30KKyAgICAgICAgc2VsZi5hc3NlcnRDb3VudEVxdWFsKGNtZC5nZXRfaW5wdXRzKCksIFtvbmUsIHR3b10pCisKKyAgICAgICAgIyBsZXQncyBydW4gdGhlIGNvbW1hbmQKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAjIGxldCdzIGNoZWNrIHRoZSByZXN1bHQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY21kLmdldF9vdXRwdXRzKCkpLCAyKQorICAgICAgICBydHdvID0gb3MucGF0aC5zcGxpdCh0d28pWy0xXQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMob3MucGF0aC5qb2luKGluc3QyLCBydHdvKSkpCisgICAgICAgIHJvbmUgPSBvcy5wYXRoLnNwbGl0KG9uZSlbLTFdCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhvcy5wYXRoLmpvaW4oaW5zdCwgcm9uZSkpKQorICAgICAgICBjbWQub3V0ZmlsZXMgPSBbXQorCisgICAgICAgICMgbGV0J3MgdHJ5IHdpdGggd2Fybl9kaXIgb25lCisgICAgICAgIGNtZC53YXJuX2RpciA9IFRydWUKKyAgICAgICAgY21kLmZpbmFsaXplZCA9IEZhbHNlCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBsZXQncyBjaGVjayB0aGUgcmVzdWx0CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGNtZC5nZXRfb3V0cHV0cygpKSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKG9zLnBhdGguam9pbihpbnN0MiwgcnR3bykpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMob3MucGF0aC5qb2luKGluc3QsIHJvbmUpKSkKKyAgICAgICAgY21kLm91dGZpbGVzID0gW10KKworICAgICAgICAjIG5vdyB1c2luZyByb290IGFuZCBlbXB0eSBkaXIKKyAgICAgICAgY21kLnJvb3QgPSBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ3Jvb3QnKQorICAgICAgICB0aHJlZSA9IG9zLnBhdGguam9pbihjbWQuaW5zdGFsbF9kaXIsICd0aHJlZScpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSh0aHJlZSwgJ3h4JykKKworICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KHNjaGVtZSwgJ2luc3QzJywgY21kLmluc3RhbGxfZGlyKQorCisgICAgICAgIGNtZC5kYXRhX2ZpbGVzID0ge29uZTogJ3tpbnN0fS9vbmUnLCB0d286ICd7aW5zdDJ9L3R3bycsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHRocmVlOiAne2luc3QzfS90aHJlZSd9CisgICAgICAgIGNtZC5maW5hbGl6ZWQgPSBGYWxzZQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgbGV0J3MgY2hlY2sgdGhlIHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbWQuZ2V0X291dHB1dHMoKSksIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhvcy5wYXRoLmpvaW4oaW5zdDIsIHJ0d28pKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKG9zLnBhdGguam9pbihpbnN0LCByb25lKSkpCisKKyAgICBkZWYgdGVzdF9yZXNvdXJjZXMoc2VsZik6CisgICAgICAgIGluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2NyaXB0c19kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoCisgICAgICAgICAgICBuYW1lPSdTcGFtbGliJywgdmVyc2lvbj0nMC4xJywKKyAgICAgICAgICAgIGRhdGFfZmlsZXM9eydzcGFtZCc6ICd7c2NyaXB0c30vc3BhbWQnfSkKKworICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzcGFtZCcsICcjIFB5dGhvbiBzY3JpcHQnKQorICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KF9nZXRfZGVmYXVsdF9zY2hlbWUoKSwgJ3NjcmlwdHMnLCBzY3JpcHRzX2RpcikKKyAgICAgICAgc3lzLnBhdGguaW5zZXJ0KDAsIGluc3RhbGxfZGlyKQorICAgICAgICBwYWNrYWdpbmcuZGF0YWJhc2UuZGlzYWJsZV9jYWNoZSgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMucGF0aC5yZW1vdmUsIGluc3RhbGxfZGlyKQorICAgICAgICBzZWxmLmFkZENsZWFudXAocGFja2FnaW5nLmRhdGFiYXNlLmVuYWJsZV9jYWNoZSkKKworICAgICAgICBjbWQgPSBpbnN0YWxsX2Rpc3QoZGlzdCkKKyAgICAgICAgY21kLm91dHB1dHMgPSBbJ3NwYW1kJ10KKyAgICAgICAgY21kLmluc3RhbGxfbGliID0gaW5zdGFsbF9kaXIKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBjbWQKKworICAgICAgICBjbWQgPSBpbnN0YWxsX2RhdGEoZGlzdCkKKyAgICAgICAgY21kLmluc3RhbGxfZGlyID0gaW5zdGFsbF9kaXIKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2RhdGEnXSA9IGNtZAorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICBjbWQgPSBpbnN0YWxsX2Rpc3RpbmZvKGRpc3QpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0aW5mbyddID0gY21kCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgZmlyc3QgYSBmZXcgc2FuaXR5IGNoZWNrcworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLmxpc3RkaXIoc2NyaXB0c19kaXIpLCBbJ3NwYW1kJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3MubGlzdGRpcihpbnN0YWxsX2RpciksIFsnU3BhbWxpYi0wLjEuZGlzdC1pbmZvJ10pCisKKyAgICAgICAgIyBub3cgdGhlIHJlYWwgdGVzdAorICAgICAgICBmbiA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ1NwYW1saWItMC4xLmRpc3QtaW5mbycsICdSRVNPVVJDRVMnKQorICAgICAgICB3aXRoIG9wZW4oZm4sIGVuY29kaW5nPSd1dGYtOCcpIGFzIGZwOgorICAgICAgICAgICAgY29udGVudCA9IGZwLnJlYWQoKS5zdHJpcCgpCisKKyAgICAgICAgZXhwZWN0ZWQgPSAnc3BhbWQsJXMnICUgb3MucGF0aC5qb2luKHNjcmlwdHNfZGlyLCAnc3BhbWQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRlbnQsIGV4cGVjdGVkKQorCisgICAgICAgICMganVzdCB0byBiZSBzdXJlLCB3ZSBhbHNvIHRlc3QgdGhhdCBnZXRfZmlsZSB3b3JrcyBoZXJlLCBldmVuIHRob3VnaAorICAgICAgICAjIHBhY2thZ2luZy5kYXRhYmFzZSBoYXMgaXRzIG93biB0ZXN0IGZpbGUKKyAgICAgICAgd2l0aCBwYWNrYWdpbmcuZGF0YWJhc2UuZ2V0X2ZpbGUoJ1NwYW1saWInLCAnc3BhbWQnKSBhcyBmcDoKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmcC5yZWFkKCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcjIFB5dGhvbiBzY3JpcHQnLCBjb250ZW50KQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShJbnN0YWxsRGF0YVRlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kaXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kaXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMzNDVkMmUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2Rpc3QucHkKQEAgLTAsMCArMSwyNDEgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBpbXAKK2ltcG9ydCBzeXMKK2Zyb20gc3lzY29uZmlnIGltcG9ydCAoZ2V0X3NjaGVtZV9uYW1lcywgZ2V0X2NvbmZpZ192YXJzLAorICAgICAgICAgICAgICAgICAgICAgICBfU0NIRU1FUywgZ2V0X2NvbmZpZ192YXIsIGdldF9wYXRoKQorCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJ1aWxkX2V4dCBpbXBvcnQgYnVpbGRfZXh0Citmcm9tIHBhY2thZ2luZy5jb21tYW5kLmluc3RhbGxfZGlzdCBpbXBvcnQgaW5zdGFsbF9kaXN0Citmcm9tIHBhY2thZ2luZy5jb21waWxlci5leHRlbnNpb24gaW1wb3J0IEV4dGVuc2lvbgorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK19DT05GSUdfVkFSUyA9IGdldF9jb25maWdfdmFycygpCisKKworZGVmIF9tYWtlX2V4dF9uYW1lKG1vZG5hbWUpOgorICAgIGlmIG9zLm5hbWUgPT0gJ250JyBhbmQgc3lzLmV4ZWN1dGFibGUuZW5kc3dpdGgoJ19kLmV4ZScpOgorICAgICAgICBtb2RuYW1lICs9ICdfZCcKKyAgICByZXR1cm4gbW9kbmFtZSArIGdldF9jb25maWdfdmFyKCdTTycpCisKKworY2xhc3MgSW5zdGFsbFRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9ob21lX2luc3RhbGxhdGlvbl9zY2hlbWUoc2VsZik6CisgICAgICAgICMgVGhpcyBlbnN1cmUgdHdvIHRoaW5nczoKKyAgICAgICAgIyAtIHRoYXQgLS1ob21lIGdlbmVyYXRlcyB0aGUgZGVzaXJlZCBzZXQgb2YgZGlyZWN0b3J5IG5hbWVzCisgICAgICAgICMgLSB0ZXN0IC0taG9tZSBpcyBzdXBwb3J0ZWQgb24gYWxsIHBsYXRmb3JtcworICAgICAgICBidWlsZGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGRlc3RpbmF0aW9uID0gb3MucGF0aC5qb2luKGJ1aWxkZGlyLCAiaW5zdGFsbGF0aW9uIikKKworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsibmFtZSI6ICJmb29wa2cifSkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsiYnVpbGQiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgYnVpbGRfYmFzZT1idWlsZGRpciwKKyAgICAgICAgICAgIGJ1aWxkX2xpYj1vcy5wYXRoLmpvaW4oYnVpbGRkaXIsICJsaWIiKSwKKyAgICAgICAgKQorCisgICAgICAgIG9sZF9wb3NpeF9wcmVmaXggPSBfU0NIRU1FUy5nZXQoJ3Bvc2l4X3ByZWZpeCcsICdwbGF0aW5jbHVkZScpCisgICAgICAgIG9sZF9wb3NpeF9ob21lID0gX1NDSEVNRVMuZ2V0KCdwb3NpeF9ob21lJywgJ3BsYXRpbmNsdWRlJykKKworICAgICAgICBuZXdfcGF0aCA9ICd7cGxhdGJhc2V9L2luY2x1ZGUvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9JworICAgICAgICBfU0NIRU1FUy5zZXQoJ3Bvc2l4X3ByZWZpeCcsICdwbGF0aW5jbHVkZScsIG5ld19wYXRoKQorICAgICAgICBfU0NIRU1FUy5zZXQoJ3Bvc2l4X2hvbWUnLCAncGxhdGluY2x1ZGUnLCAne3BsYXRiYXNlfS9pbmNsdWRlL3B5dGhvbicpCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0KGRpc3QpCisgICAgICAgICAgICBjbWQuaG9tZSA9IGRlc3RpbmF0aW9uCisgICAgICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBfU0NIRU1FUy5zZXQoJ3Bvc2l4X3ByZWZpeCcsICdwbGF0aW5jbHVkZScsIG9sZF9wb3NpeF9wcmVmaXgpCisgICAgICAgICAgICBfU0NIRU1FUy5zZXQoJ3Bvc2l4X2hvbWUnLCAncGxhdGluY2x1ZGUnLCBvbGRfcG9zaXhfaG9tZSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5pbnN0YWxsX2Jhc2UsIGRlc3RpbmF0aW9uKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5pbnN0YWxsX3BsYXRiYXNlLCBkZXN0aW5hdGlvbikKKworICAgICAgICBkZWYgY2hlY2tfcGF0aChnb3QsIGV4cGVjdGVkKToKKyAgICAgICAgICAgIGdvdCA9IG9zLnBhdGgubm9ybXBhdGgoZ290KQorICAgICAgICAgICAgZXhwZWN0ZWQgPSBvcy5wYXRoLm5vcm1wYXRoKGV4cGVjdGVkKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnb3QsIGV4cGVjdGVkKQorCisgICAgICAgIGxpYmRpciA9IG9zLnBhdGguam9pbihkZXN0aW5hdGlvbiwgImxpYiIsICJweXRob24iKQorICAgICAgICBjaGVja19wYXRoKGNtZC5pbnN0YWxsX2xpYiwgbGliZGlyKQorICAgICAgICBjaGVja19wYXRoKGNtZC5pbnN0YWxsX3BsYXRsaWIsIGxpYmRpcikKKyAgICAgICAgY2hlY2tfcGF0aChjbWQuaW5zdGFsbF9wdXJlbGliLCBsaWJkaXIpCisgICAgICAgIGNoZWNrX3BhdGgoY21kLmluc3RhbGxfaGVhZGVycywKKyAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4oZGVzdGluYXRpb24sICJpbmNsdWRlIiwgInB5dGhvbiIsICJmb29wa2ciKSkKKyAgICAgICAgY2hlY2tfcGF0aChjbWQuaW5zdGFsbF9zY3JpcHRzLCBvcy5wYXRoLmpvaW4oZGVzdGluYXRpb24sICJiaW4iKSkKKyAgICAgICAgY2hlY2tfcGF0aChjbWQuaW5zdGFsbF9kYXRhLCBkZXN0aW5hdGlvbikKKworICAgIGRlZiB0ZXN0X3VzZXJfc2l0ZShzZWxmKToKKyAgICAgICAgIyB0ZXN0IGluc3RhbGwgd2l0aCAtLXVzZXIKKyAgICAgICAgIyBwcmVwYXJpbmcgdGhlIGVudmlyb25tZW50IGZvciB0aGUgdGVzdAorICAgICAgICBzZWxmLm9sZF91c2VyX2Jhc2UgPSBnZXRfY29uZmlnX3ZhcigndXNlcmJhc2UnKQorICAgICAgICBzZWxmLm9sZF91c2VyX3NpdGUgPSBnZXRfcGF0aCgncHVyZWxpYicsICclc191c2VyJyAlIG9zLm5hbWUpCisgICAgICAgIHNlbGYudG1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi51c2VyX2Jhc2UgPSBvcy5wYXRoLmpvaW4oc2VsZi50bXBkaXIsICdCJykKKyAgICAgICAgc2VsZi51c2VyX3NpdGUgPSBvcy5wYXRoLmpvaW4oc2VsZi50bXBkaXIsICdTJykKKyAgICAgICAgX0NPTkZJR19WQVJTWyd1c2VyYmFzZSddID0gc2VsZi51c2VyX2Jhc2UKKyAgICAgICAgc2NoZW1lID0gJyVzX3VzZXInICUgb3MubmFtZQorICAgICAgICBfU0NIRU1FUy5zZXQoc2NoZW1lLCAncHVyZWxpYicsIHNlbGYudXNlcl9zaXRlKQorCisgICAgICAgIGRlZiBfZXhwYW5kdXNlcihwYXRoKToKKyAgICAgICAgICAgIGlmIHBhdGhbMF0gPT0gJ34nOgorICAgICAgICAgICAgICAgIHBhdGggPSBvcy5wYXRoLm5vcm1wYXRoKHNlbGYudG1wZGlyKSArIHBhdGhbMTpdCisgICAgICAgICAgICByZXR1cm4gcGF0aAorCisgICAgICAgIHNlbGYub2xkX2V4cGFuZCA9IG9zLnBhdGguZXhwYW5kdXNlcgorICAgICAgICBvcy5wYXRoLmV4cGFuZHVzZXIgPSBfZXhwYW5kdXNlcgorCisgICAgICAgIGRlZiBjbGVhbnVwKCk6CisgICAgICAgICAgICBfQ09ORklHX1ZBUlNbJ3VzZXJiYXNlJ10gPSBzZWxmLm9sZF91c2VyX2Jhc2UKKyAgICAgICAgICAgIF9TQ0hFTUVTLnNldChzY2hlbWUsICdwdXJlbGliJywgc2VsZi5vbGRfdXNlcl9zaXRlKQorICAgICAgICAgICAgb3MucGF0aC5leHBhbmR1c2VyID0gc2VsZi5vbGRfZXhwYW5kCisKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKGNsZWFudXApCisKKyAgICAgICAgc2NoZW1lcyA9IGdldF9zY2hlbWVfbmFtZXMoKQorICAgICAgICBmb3Iga2V5IGluICgnbnRfdXNlcicsICdwb3NpeF91c2VyJywgJ29zMl9ob21lJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEluKGtleSwgc2NoZW1lcykKKworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCd9KQorICAgICAgICBjbWQgPSBpbnN0YWxsX2Rpc3QoZGlzdCkKKworICAgICAgICAjIG1ha2luZyBzdXJlIHRoZSB1c2VyIG9wdGlvbiBpcyB0aGVyZQorICAgICAgICBvcHRpb25zID0gW25hbWUgZm9yIG5hbWUsIHNob3J0LCBsYWJsZSBpbgorICAgICAgICAgICAgICAgICAgIGNtZC51c2VyX29wdGlvbnNdCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3VzZXInLCBvcHRpb25zKQorCisgICAgICAgICMgc2V0dGluZyBhIHZhbHVlCisgICAgICAgIGNtZC51c2VyID0gVHJ1ZQorCisgICAgICAgICMgdXNlciBiYXNlIGFuZCBzaXRlIHNob3VsZG4ndCBiZSBjcmVhdGVkIHlldAorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKHNlbGYudXNlcl9iYXNlKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhzZWxmLnVzZXJfc2l0ZSkpCisKKyAgICAgICAgIyBsZXQncyBydW4gZmluYWxpemUKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgICMgbm93IHRoZXkgc2hvdWxkCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhzZWxmLnVzZXJfYmFzZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhzZWxmLnVzZXJfc2l0ZSkpCisKKyAgICAgICAgc2VsZi5hc3NlcnRJbigndXNlcmJhc2UnLCBjbWQuY29uZmlnX3ZhcnMpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3VzZXJzaXRlJywgY21kLmNvbmZpZ192YXJzKQorCisgICAgZGVmIHRlc3RfaGFuZGxlX2V4dHJhX3BhdGgoc2VsZik6CisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ3h4JywgJ2V4dHJhX3BhdGgnOiAncGF0aCxkaXJzJ30pCisgICAgICAgIGNtZCA9IGluc3RhbGxfZGlzdChkaXN0KQorCisgICAgICAgICMgdHdvIGVsZW1lbnRzCisgICAgICAgIGNtZC5oYW5kbGVfZXh0cmFfcGF0aCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmV4dHJhX3BhdGgsIFsncGF0aCcsICdkaXJzJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmV4dHJhX2RpcnMsICdkaXJzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQucGF0aF9maWxlLCAncGF0aCcpCisKKyAgICAgICAgIyBvbmUgZWxlbWVudAorICAgICAgICBjbWQuZXh0cmFfcGF0aCA9IFsncGF0aCddCisgICAgICAgIGNtZC5oYW5kbGVfZXh0cmFfcGF0aCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmV4dHJhX3BhdGgsIFsncGF0aCddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5leHRyYV9kaXJzLCAncGF0aCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLnBhdGhfZmlsZSwgJ3BhdGgnKQorCisgICAgICAgICMgbm9uZQorICAgICAgICBkaXN0LmV4dHJhX3BhdGggPSBjbWQuZXh0cmFfcGF0aCA9IE5vbmUKKyAgICAgICAgY21kLmhhbmRsZV9leHRyYV9wYXRoKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZXh0cmFfcGF0aCwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZXh0cmFfZGlycywgJycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLnBhdGhfZmlsZSwgTm9uZSkKKworICAgICAgICAjIHRocmVlIGVsZW1lbnRzIChubyB3YXkgISkKKyAgICAgICAgY21kLmV4dHJhX3BhdGggPSAncGF0aCxkaXJzLGFnYWluJworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmhhbmRsZV9leHRyYV9wYXRoKQorCisgICAgZGVmIHRlc3RfZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbih7J25hbWUnOiAneHgnfSkKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0KGRpc3QpCisKKyAgICAgICAgIyBtdXN0IHN1cHBseSBlaXRoZXIgcHJlZml4L2V4ZWMtcHJlZml4L2hvbWUgb3IKKyAgICAgICAgIyBpbnN0YWxsLWJhc2UvaW5zdGFsbC1wbGF0YmFzZSAtLSBub3QgYm90aAorICAgICAgICBjbWQucHJlZml4ID0gJ3ByZWZpeCcKKyAgICAgICAgY21kLmluc3RhbGxfYmFzZSA9ICdiYXNlJworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmZpbmFsaXplX29wdGlvbnMpCisKKyAgICAgICAgIyBtdXN0IHN1cHBseSBlaXRoZXIgaG9tZSBvciBwcmVmaXgvZXhlYy1wcmVmaXggLS0gbm90IGJvdGgKKyAgICAgICAgY21kLmluc3RhbGxfYmFzZSA9IE5vbmUKKyAgICAgICAgY21kLmhvbWUgPSAnaG9tZScKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5maW5hbGl6ZV9vcHRpb25zKQorCisgICAgICAgICMgY2FuJ3QgY29tYmluZSB1c2VyIHdpdGggd2l0aCBwcmVmaXgvZXhlY19wcmVmaXgvaG9tZSBvcgorICAgICAgICAjIGluc3RhbGxfKHBsYXQpYmFzZQorICAgICAgICBjbWQucHJlZml4ID0gTm9uZQorICAgICAgICBjbWQudXNlciA9ICd1c2VyJworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmZpbmFsaXplX29wdGlvbnMpCisKKyAgICBkZWYgdGVzdF9vbGRfcmVjb3JkKHNlbGYpOgorICAgICAgICAjIHRlc3QgcHJlLVBFUCAzNzYgLS1yZWNvcmQgb3B0aW9uIChvdXRzaWRlIGRpc3QtaW5mbyBkaXIpCisgICAgICAgIGluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgcHJvamVjdF9kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KHB5X21vZHVsZXM9WydoZWxsbyddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NyaXB0cz1bJ3NheWhpJ10pCisgICAgICAgIG9zLmNoZGlyKHByb2plY3RfZGlyKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ2hlbGxvLnB5JywgImRlZiBtYWluKCk6IHByaW50KCdvIGhhaScpIikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzYXloaScsICdmcm9tIGhlbGxvIGltcG9ydCBtYWluOyBtYWluKCknKQorCisgICAgICAgIGNtZCA9IGluc3RhbGxfZGlzdChkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3QnXSA9IGNtZAorICAgICAgICBjbWQucm9vdCA9IGluc3RhbGxfZGlyCisgICAgICAgIGNtZC5yZWNvcmQgPSBvcy5wYXRoLmpvaW4ocHJvamVjdF9kaXIsICdmaWxlbGlzdCcpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgd2l0aCBvcGVuKGNtZC5yZWNvcmQpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50ID0gZi5yZWFkKCkKKworICAgICAgICBmb3VuZCA9IFtvcy5wYXRoLmJhc2VuYW1lKGxpbmUpIGZvciBsaW5lIGluIGNvbnRlbnQuc3BsaXRsaW5lcygpXQorICAgICAgICBleHBlY3RlZCA9IFsnaGVsbG8ucHknLCAnaGVsbG8uJXMucHljJyAlIGltcC5nZXRfdGFnKCksICdzYXloaScsCisgICAgICAgICAgICAgICAgICAgICdNRVRBREFUQScsICdJTlNUQUxMRVInLCAnUkVRVUVTVEVEJywgJ1JFQ09SRCddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ydGVkKGZvdW5kKSwgc29ydGVkKGV4cGVjdGVkKSkKKworICAgICAgICAjIFhYWCB0ZXN0IHRoYXQgZmFuY3lfZ2V0b3B0IGlzIG9rYXkgd2l0aCBvcHRpb25zIG5hbWVkCisgICAgICAgICMgcmVjb3JkIGFuZCBuby1yZWNvcmQgYnV0IHVucmVsYXRlZAorCisgICAgZGVmIHRlc3Rfb2xkX3JlY29yZF9leHRlbnNpb25zKHNlbGYpOgorICAgICAgICAjIHRlc3QgcHJlLVBFUCAzNzYgLS1yZWNvcmQgb3B0aW9uIHdpdGggZXh0IG1vZHVsZXMKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoZXh0X21vZHVsZXM9WworICAgICAgICAgICAgRXh0ZW5zaW9uKCd4eCcsIFsneHhtb2R1bGUuYyddKV0pCisgICAgICAgIG9zLmNoZGlyKHByb2plY3RfZGlyKQorICAgICAgICBzdXBwb3J0LmNvcHlfeHhtb2R1bGVfYyhwcm9qZWN0X2RpcikKKworICAgICAgICBidWlsZGV4dGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBzdXBwb3J0LmZpeHVwX2J1aWxkX2V4dChidWlsZGV4dGNtZCkKKyAgICAgICAgYnVpbGRleHRjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0KGRpc3QpCisgICAgICAgIGRpc3QuY29tbWFuZF9vYmpbJ2luc3RhbGxfZGlzdCddID0gY21kCisgICAgICAgIGRpc3QuY29tbWFuZF9vYmpbJ2J1aWxkX2V4dCddID0gYnVpbGRleHRjbWQKKyAgICAgICAgY21kLnJvb3QgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQucmVjb3JkID0gb3MucGF0aC5qb2luKHByb2plY3RfZGlyLCAnZmlsZWxpc3QnKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIHdpdGggb3BlbihjbWQucmVjb3JkKSBhcyBmOgorICAgICAgICAgICAgY29udGVudCA9IGYucmVhZCgpCisKKyAgICAgICAgZm91bmQgPSBbb3MucGF0aC5iYXNlbmFtZShsaW5lKSBmb3IgbGluZSBpbiBjb250ZW50LnNwbGl0bGluZXMoKV0KKyAgICAgICAgZXhwZWN0ZWQgPSBbX21ha2VfZXh0X25hbWUoJ3h4JyksCisgICAgICAgICAgICAgICAgICAgICdNRVRBREFUQScsICdJTlNUQUxMRVInLCAnUkVRVUVTVEVEJywgJ1JFQ09SRCddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm91bmQsIGV4cGVjdGVkKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShJbnN0YWxsVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2Rpc3RpbmZvLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kaXN0aW5mby5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMzE1M2U3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kaXN0aW5mby5weQpAQCAtMCwwICsxLDI1MiBAQAorIiIiVGVzdHMgZm9yIGBgcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kaXN0aW5mb2BgLgorCitXcml0aW5nIG9mIHRoZSBSRVNPVVJDRVMgZmlsZSBpcyB0ZXN0ZWQgaW4gdGVzdF9jb21tYW5kX2luc3RhbGxfZGF0YS4KKyIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBjc3YKK2ltcG9ydCBoYXNobGliCitpbXBvcnQgc3lzY29uZmlnCisKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kaXN0aW5mbyBpbXBvcnQgaW5zdGFsbF9kaXN0aW5mbworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLmV4dGVuc2lvbiBpbXBvcnQgRXh0ZW5zaW9uCitmcm9tIHBhY2thZ2luZy5tZXRhZGF0YSBpbXBvcnQgTWV0YWRhdGEKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK2NsYXNzIER1bW15SW5zdGFsbENtZChDb21tYW5kKToKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkaXN0PU5vbmUpOgorICAgICAgICBzZWxmLm91dHB1dHMgPSBbXQorICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbiA9IGRpc3QKKworICAgIGRlZiBfX2dldGF0dHJfXyhzZWxmLCBuYW1lKToKKyAgICAgICAgcmV0dXJuIE5vbmUKKworICAgIGRlZiBlbnN1cmVfZmluYWxpemVkKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgZ2V0X291dHB1dHMoc2VsZik6CisgICAgICAgIHJldHVybiAoc2VsZi5vdXRwdXRzICsKKyAgICAgICAgICAgICAgICBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnaW5zdGFsbF9kaXN0aW5mbycpLmdldF9vdXRwdXRzKCkpCisKKworY2xhc3MgSW5zdGFsbERpc3RpbmZvVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBjaGVja0xpc3RzID0gbGFtYmRhIHNlbGYsIHgsIHk6IHNlbGYuYXNzZXJ0TGlzdEVxdWFsKHNvcnRlZCh4KSwgc29ydGVkKHkpKQorCisgICAgZGVmIHRlc3RfZW1wdHlfaW5zdGFsbChzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QobmFtZT0nZm9vJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj0nMS4wJykKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBpbnN0YWxsCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0aW5mbyhkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKworICAgICAgICBjbWQuaW5zdGFsbF9kaXIgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhvcy5saXN0ZGlyKGluc3RhbGxfZGlyKSwgWydmb28tMS4wLmRpc3QtaW5mbyddKQorCisgICAgICAgIGRpc3RfaW5mbyA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2Zvby0xLjAuZGlzdC1pbmZvJykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKG9zLmxpc3RkaXIoZGlzdF9pbmZvKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFsnTUVUQURBVEEnLCAnUkVDT1JEJywgJ1JFUVVFU1RFRCcsICdJTlNUQUxMRVInXSkKKyAgICAgICAgd2l0aCBvcGVuKG9zLnBhdGguam9pbihkaXN0X2luZm8sICdJTlNUQUxMRVInKSkgYXMgZnA6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZwLnJlYWQoKSwgJ2Rpc3R1dGlscycpCisgICAgICAgIHdpdGggb3Blbihvcy5wYXRoLmpvaW4oZGlzdF9pbmZvLCAnUkVRVUVTVEVEJykpIGFzIGZwOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmcC5yZWFkKCksICcnKQorICAgICAgICBtZXRhX3BhdGggPSBvcy5wYXRoLmpvaW4oZGlzdF9pbmZvLCAnTUVUQURBVEEnKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoTWV0YWRhdGEocGF0aD1tZXRhX3BhdGgpLmNoZWNrKCkpCisKKyAgICBkZWYgdGVzdF9pbnN0YWxsZXIoc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KG5hbWU9J2ZvbycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb249JzEuMCcpCisgICAgICAgIGluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKworICAgICAgICBpbnN0YWxsID0gRHVtbXlJbnN0YWxsQ21kKGRpc3QpCisgICAgICAgIGRpc3QuY29tbWFuZF9vYmpbJ2luc3RhbGxfZGlzdCddID0gaW5zdGFsbAorCisgICAgICAgIGNtZCA9IGluc3RhbGxfZGlzdGluZm8oZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0aW5mbyddID0gY21kCisKKyAgICAgICAgY21kLmluc3RhbGxfZGlyID0gaW5zdGFsbF9kaXIKKyAgICAgICAgY21kLmluc3RhbGxlciA9ICdiYWNvbi1weXRob24nCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgZGlzdF9pbmZvID0gb3MucGF0aC5qb2luKGluc3RhbGxfZGlyLCAnZm9vLTEuMC5kaXN0LWluZm8nKQorICAgICAgICB3aXRoIG9wZW4ob3MucGF0aC5qb2luKGRpc3RfaW5mbywgJ0lOU1RBTExFUicpKSBhcyBmcDoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnAucmVhZCgpLCAnYmFjb24tcHl0aG9uJykKKworICAgIGRlZiB0ZXN0X3JlcXVlc3RlZChzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QobmFtZT0nZm9vJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj0nMS4wJykKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBpbnN0YWxsCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0aW5mbyhkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKworICAgICAgICBjbWQuaW5zdGFsbF9kaXIgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQucmVxdWVzdGVkID0gRmFsc2UKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICBkaXN0X2luZm8gPSBvcy5wYXRoLmpvaW4oaW5zdGFsbF9kaXIsICdmb28tMS4wLmRpc3QtaW5mbycpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhvcy5saXN0ZGlyKGRpc3RfaW5mbyksCisgICAgICAgICAgICAgICAgICAgICAgICBbJ01FVEFEQVRBJywgJ1JFQ09SRCcsICdJTlNUQUxMRVInXSkKKworICAgIGRlZiB0ZXN0X25vX3JlY29yZChzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QobmFtZT0nZm9vJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj0nMS4wJykKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBpbnN0YWxsCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0aW5mbyhkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKworICAgICAgICBjbWQuaW5zdGFsbF9kaXIgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQubm9fcmVjb3JkID0gVHJ1ZQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIGRpc3RfaW5mbyA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2Zvby0xLjAuZGlzdC1pbmZvJykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKG9zLmxpc3RkaXIoZGlzdF9pbmZvKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFsnTUVUQURBVEEnLCAnUkVRVUVTVEVEJywgJ0lOU1RBTExFUiddKQorCisgICAgZGVmIHRlc3RfcmVjb3JkX2Jhc2ljKHNlbGYpOgorICAgICAgICBpbnN0YWxsX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG1vZHVsZXNfZGVzdCA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2xpYicpCisgICAgICAgIHNjcmlwdHNfZGVzdCA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2JpbicpCisgICAgICAgIHByb2plY3RfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgKKyAgICAgICAgICAgIG5hbWU9J1NwYW1saWInLCB2ZXJzaW9uPScwLjEnLAorICAgICAgICAgICAgcHlfbW9kdWxlcz1bJ3NwYW0nXSwgc2NyaXB0cz1bJ3NwYW1kJ10sCisgICAgICAgICAgICBleHRfbW9kdWxlcz1bRXh0ZW5zaW9uKCdfc3BlZWRzcGFtJywgWydfc3BlZWRzcGFtLmMnXSldKQorCisgICAgICAgICMgdXNpbmcgYSByZWFsIGluc3RhbGxfZGlzdCBjb21tYW5kIGlzIHRvbyBwYWluZnVsLCBzbyB3ZSB1c2UgYSBtb2NrCisgICAgICAgICMgY2xhc3MgdGhhdCdzIG9ubHkgYSBob2xkZXIgZm9yIG9wdGlvbnMgdG8gYmUgdXNlZCBieSBpbnN0YWxsX2Rpc3RpbmZvCisgICAgICAgICMgYW5kIHdlIGNyZWF0ZSBwbGFjZWhvbGRlciBmaWxlcyBtYW51YWxseSBpbnN0ZWFkIG9mIHVzaW5nIGJ1aWxkXyouCisgICAgICAgICMgdGhlIGluc3RhbGxfKiBjb21tYW5kcyB3aWxsIHN0aWxsIGJlIGNvbnN1bHRlZCBieSBpbnN0YWxsX2Rpc3RpbmZvLgorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzcGFtJywgJyMgUHl0aG9uIG1vZHVsZScpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc3BhbWQnLCAnIyBQeXRob24gc2NyaXB0JykKKyAgICAgICAgZXh0bW9kID0gJ19zcGVlZHNwYW0nICsgc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdTTycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShleHRtb2QsICcnKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgaW5zdGFsbC5vdXRwdXRzID0gWydzcGFtJywgJ3NwYW1kJywgZXh0bW9kXQorICAgICAgICBpbnN0YWxsLmluc3RhbGxfbGliID0gbW9kdWxlc19kZXN0CisgICAgICAgIGluc3RhbGwuaW5zdGFsbF9zY3JpcHRzID0gc2NyaXB0c19kZXN0CisgICAgICAgIGRpc3QuY29tbWFuZF9vYmpbJ2luc3RhbGxfZGlzdCddID0gaW5zdGFsbAorCisgICAgICAgIGNtZCA9IGluc3RhbGxfZGlzdGluZm8oZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBjaGVja3N1bSBhbmQgc2l6ZSBhcmUgbm90IGhhcmQtY29kZWQgZm9yIE1FVEFEQVRBIGFzIGl0IGlzCisgICAgICAgICMgcGxhdGZvcm0tZGVwZW5kZW50IChsaW5lIGVuZGluZ3MpCisgICAgICAgIG1ldGFkYXRhID0gb3MucGF0aC5qb2luKG1vZHVsZXNfZGVzdCwgJ1NwYW1saWItMC4xLmRpc3QtaW5mbycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdNRVRBREFUQScpCisgICAgICAgIHdpdGggb3BlbihtZXRhZGF0YSwgJ3JiJykgYXMgZnA6CisgICAgICAgICAgICBjb250ZW50ID0gZnAucmVhZCgpCisKKyAgICAgICAgbWV0YWRhdGFfc2l6ZSA9IHN0cihsZW4oY29udGVudCkpCisgICAgICAgIG1ldGFkYXRhX21kNSA9IGhhc2hsaWIubWQ1KGNvbnRlbnQpLmhleGRpZ2VzdCgpCisKKyAgICAgICAgcmVjb3JkID0gb3MucGF0aC5qb2luKG1vZHVsZXNfZGVzdCwgJ1NwYW1saWItMC4xLmRpc3QtaW5mbycsICdSRUNPUkQnKQorICAgICAgICB3aXRoIG9wZW4ocmVjb3JkLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBmcDoKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmcC5yZWFkKCkKKworICAgICAgICBmb3VuZCA9IFtdCisgICAgICAgIGZvciBsaW5lIGluIGNvbnRlbnQuc3BsaXRsaW5lcygpOgorICAgICAgICAgICAgZmlsZW5hbWUsIGNoZWNrc3VtLCBzaXplID0gbGluZS5zcGxpdCgnLCcpCisgICAgICAgICAgICBmaWxlbmFtZSA9IG9zLnBhdGguYmFzZW5hbWUoZmlsZW5hbWUpCisgICAgICAgICAgICBmb3VuZC5hcHBlbmQoKGZpbGVuYW1lLCBjaGVja3N1bSwgc2l6ZSkpCisKKyAgICAgICAgZXhwZWN0ZWQgPSBbCisgICAgICAgICAgICAoJ3NwYW0nLCAnNmFiMmYyODhlZjI1NDU4NjhlZmZlNjg3NTc0NDhiNDUnLCAnMTUnKSwKKyAgICAgICAgICAgICgnc3BhbWQnLCAnZDEzZTYxNTZjZTc4OTE5YTk4MWU0MjRiMmZkY2Q5NzQnLCAnMTUnKSwKKyAgICAgICAgICAgIChleHRtb2QsICdkNDFkOGNkOThmMDBiMjA0ZTk4MDA5OThlY2Y4NDI3ZScsICcwJyksCisgICAgICAgICAgICAoJ01FVEFEQVRBJywgbWV0YWRhdGFfbWQ1LCBtZXRhZGF0YV9zaXplKSwKKyAgICAgICAgICAgICgnSU5TVEFMTEVSJywgJzQ0ZTNmZGUwNWYzZjUzN2VkODU4MzE5NjlhY2YzOTZkJywgJzknKSwKKyAgICAgICAgICAgICgnUkVRVUVTVEVEJywgJ2Q0MWQ4Y2Q5OGYwMGIyMDRlOTgwMDk5OGVjZjg0MjdlJywgJzAnKSwKKyAgICAgICAgICAgICgnUkVDT1JEJywgJycsICcnKSwKKyAgICAgICAgXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvdW5kLCBleHBlY3RlZCkKKworICAgIGRlZiB0ZXN0X3JlY29yZChzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QobmFtZT0nZm9vJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj0nMS4wJykKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBpbnN0YWxsCisKKyAgICAgICAgZmFrZV9kaXN0cyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnZmFrZV9kaXN0cycpCisgICAgICAgIGZha2VfZGlzdHMgPSBvcy5wYXRoLnJlYWxwYXRoKGZha2VfZGlzdHMpCisKKyAgICAgICAgIyBmb3IgdGVzdGluZywgd2Ugc2ltcGx5IGFkZCBhbGwgZmlsZXMgZnJvbSBfYmFja3BvcnQncyBmYWtlX2Rpc3RzCisgICAgICAgIGRpcnMgPSBbXQorICAgICAgICBmb3IgZGlyIGluIG9zLmxpc3RkaXIoZmFrZV9kaXN0cyk6CisgICAgICAgICAgICBmdWxsX3BhdGggPSBvcy5wYXRoLmpvaW4oZmFrZV9kaXN0cywgZGlyKQorICAgICAgICAgICAgaWYgKG5vdCBkaXIuZW5kc3dpdGgoJy5lZ2cnKSBvciBkaXIuZW5kc3dpdGgoJy5lZ2ctaW5mbycpIG9yCisgICAgICAgICAgICAgICAgZGlyLmVuZHN3aXRoKCcuZGlzdC1pbmZvJykpIGFuZCBvcy5wYXRoLmlzZGlyKGZ1bGxfcGF0aCk6CisgICAgICAgICAgICAgICAgZGlycy5hcHBlbmQoZnVsbF9wYXRoKQorCisgICAgICAgIGZvciBkaXIgaW4gZGlyczoKKyAgICAgICAgICAgIGZvciBwYXRoLCBzdWJkaXJzLCBmaWxlcyBpbiBvcy53YWxrKGRpcik6CisgICAgICAgICAgICAgICAgaW5zdGFsbC5vdXRwdXRzICs9IFtvcy5wYXRoLmpvaW4ocGF0aCwgZikgZm9yIGYgaW4gZmlsZXNdCisgICAgICAgICAgICAgICAgaW5zdGFsbC5vdXRwdXRzICs9IFtvcy5wYXRoLmpvaW4oJ3BhdGgnLCBmICsgJ2MnKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gZmlsZXMgaWYgZi5lbmRzd2l0aCgnLnB5JyldCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0aW5mbyhkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKworICAgICAgICBjbWQuaW5zdGFsbF9kaXIgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIGRpc3RfaW5mbyA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2Zvby0xLjAuZGlzdC1pbmZvJykKKworICAgICAgICBleHBlY3RlZCA9IFtdCisgICAgICAgIGZvciBmIGluIGluc3RhbGwuZ2V0X291dHB1dHMoKToKKyAgICAgICAgICAgIGlmIChmLmVuZHN3aXRoKCgnLnB5YycsICcucHlvJykpIG9yIGYgPT0gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgICAgIGluc3RhbGxfZGlyLCAnZm9vLTEuMC5kaXN0LWluZm8nLCAnUkVDT1JEJykpOgorICAgICAgICAgICAgICAgIGV4cGVjdGVkLmFwcGVuZChbZiwgJycsICcnXSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2l6ZSA9IG9zLnBhdGguZ2V0c2l6ZShmKQorICAgICAgICAgICAgICAgIG1kNSA9IGhhc2hsaWIubWQ1KCkKKyAgICAgICAgICAgICAgICB3aXRoIG9wZW4oZiwgJ3JiJykgYXMgZnA6CisgICAgICAgICAgICAgICAgICAgIG1kNS51cGRhdGUoZnAucmVhZCgpKQorICAgICAgICAgICAgICAgIGhhc2ggPSBtZDUuaGV4ZGlnZXN0KCkKKyAgICAgICAgICAgICAgICBleHBlY3RlZC5hcHBlbmQoW2YsIGhhc2gsIHN0cihzaXplKV0pCisKKyAgICAgICAgcGFyc2VkID0gW10KKyAgICAgICAgd2l0aCBvcGVuKG9zLnBhdGguam9pbihkaXN0X2luZm8sICdSRUNPUkQnKSwgJ3InKSBhcyBmOgorICAgICAgICAgICAgcmVhZGVyID0gY3N2LnJlYWRlcihmLCBkZWxpbWl0ZXI9JywnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5ldGVybWluYXRvcj1vcy5saW5lc2VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdW90ZWNoYXI9JyInKQorICAgICAgICAgICAgcGFyc2VkID0gbGlzdChyZWFkZXIpCisKKyAgICAgICAgc2VsZi5tYXhEaWZmID0gTm9uZQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMocGFyc2VkLCBleHBlY3RlZCkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoSW5zdGFsbERpc3RpbmZvVGVzdENhc2UpCisKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2luc3RhbGxfaGVhZGVycy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2luc3RhbGxfaGVhZGVycy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMjkwNmE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9oZWFkZXJzLnB5CkBAIC0wLDAgKzEsMzggQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX2hlYWRlcnMuIiIiCitpbXBvcnQgb3MKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX2hlYWRlcnMgaW1wb3J0IGluc3RhbGxfaGVhZGVycworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgSW5zdGFsbEhlYWRlcnNUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9zaW1wbGVfcnVuKHNlbGYpOgorICAgICAgICAjIHdlIGhhdmUgdHdvIGhlYWRlcnMKKyAgICAgICAgaGVhZGVyX2xpc3QgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBoZWFkZXIxID0gb3MucGF0aC5qb2luKGhlYWRlcl9saXN0LCAnaGVhZGVyMScpCisgICAgICAgIGhlYWRlcjIgPSBvcy5wYXRoLmpvaW4oaGVhZGVyX2xpc3QsICdoZWFkZXIyJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGhlYWRlcjEpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShoZWFkZXIyKQorICAgICAgICBoZWFkZXJzID0gW2hlYWRlcjEsIGhlYWRlcjJdCisKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoaGVhZGVycz1oZWFkZXJzKQorICAgICAgICBjbWQgPSBpbnN0YWxsX2hlYWRlcnMoZGlzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZ2V0X2lucHV0cygpLCBoZWFkZXJzKQorCisgICAgICAgICMgbGV0J3MgcnVuIHRoZSBjb21tYW5kCisgICAgICAgIGNtZC5pbnN0YWxsX2RpciA9IG9zLnBhdGguam9pbihwa2dfZGlyLCAnaW5zdCcpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBsZXQncyBjaGVjayB0aGUgcmVzdWx0cworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbWQuZ2V0X291dHB1dHMoKSksIDIpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKEluc3RhbGxIZWFkZXJzVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2xpYi5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2luc3RhbGxfbGliLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5ZThmYTgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2xpYi5weQpAQCAtMCwwICsxLDExMCBAQAorIiIiVGVzdHMgZm9yIHBhY2thZ2luZy5jb21tYW5kLmluc3RhbGxfZGF0YS4iIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IGltcAorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9saWIgaW1wb3J0IGluc3RhbGxfbGliCitmcm9tIHBhY2thZ2luZy5jb21waWxlci5leHRlbnNpb24gaW1wb3J0IEV4dGVuc2lvbgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorCisKK2NsYXNzIEluc3RhbGxMaWJUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5FbnZpcm9uUmVzdG9yZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydQWVRIT05QQVRIJ10KKworICAgIGRlZiB0ZXN0X2ZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KClbMV0KKyAgICAgICAgY21kID0gaW5zdGFsbF9saWIoZGlzdCkKKworICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjbWQuY29tcGlsZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQub3B0aW1pemUsIDApCisKKyAgICAgICAgIyBvcHRpbWl6ZSBtdXN0IGJlIDAsIDEsIG9yIDIKKyAgICAgICAgY21kLm9wdGltaXplID0gJ2ZvbycKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5maW5hbGl6ZV9vcHRpb25zKQorICAgICAgICBjbWQub3B0aW1pemUgPSAnNCcKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5maW5hbGl6ZV9vcHRpb25zKQorCisgICAgICAgIGNtZC5vcHRpbWl6ZSA9ICcyJworICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLm9wdGltaXplLCAyKQorCisgICAgZGVmIHRlc3RfYnl0ZV9jb21waWxlKHNlbGYpOgorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgY21kID0gaW5zdGFsbF9saWIoZGlzdCkKKyAgICAgICAgY21kLmNvbXBpbGUgPSBUcnVlCisgICAgICAgIGNtZC5vcHRpbWl6ZSA9IDEKKworICAgICAgICBmID0gb3MucGF0aC5qb2luKHByb2plY3RfZGlyLCAnZm9vLnB5JykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGYsICcjIHB5dGhvbiBmaWxlJykKKyAgICAgICAgY21kLmJ5dGVfY29tcGlsZShbZl0pCisgICAgICAgIHB5Y19maWxlID0gaW1wLmNhY2hlX2Zyb21fc291cmNlKCdmb28ucHknLCBUcnVlKQorICAgICAgICBweW9fZmlsZSA9IGltcC5jYWNoZV9mcm9tX3NvdXJjZSgnZm9vLnB5JywgRmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhweWNfZmlsZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhweW9fZmlsZSkpCisKKyAgICBkZWYgdGVzdF9ieXRlX2NvbXBpbGVfdW5kZXJfQihzZWxmKToKKyAgICAgICAgIyBtYWtlIHN1cmUgYnl0ZSBjb21waWxhdGlvbiB3b3JrcyB1bmRlciAtQiAoZG9udF93cml0ZV9ieXRlY29kZSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldGF0dHIsIHN5cywgJ2RvbnRfd3JpdGVfYnl0ZWNvZGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGUpCisgICAgICAgIHN5cy5kb250X3dyaXRlX2J5dGVjb2RlID0gVHJ1ZQorICAgICAgICBzZWxmLnRlc3RfYnl0ZV9jb21waWxlKCkKKworICAgIGRlZiB0ZXN0X2dldF9vdXRwdXRzKHNlbGYpOgorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgb3MubWtkaXIoJ3NwYW0nKQorICAgICAgICBjbWQgPSBpbnN0YWxsX2xpYihkaXN0KQorCisgICAgICAgICMgc2V0dGluZyB1cCBhIGRpc3QgZW52aXJvbm1lbnQKKyAgICAgICAgY21kLmNvbXBpbGUgPSBUcnVlCisgICAgICAgIGNtZC5vcHRpbWl6ZSA9IDEKKyAgICAgICAgY21kLmluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgZiA9IG9zLnBhdGguam9pbihwcm9qZWN0X2RpciwgJ3NwYW0nLCAnX19pbml0X18ucHknKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoZiwgJyMgcHl0aG9uIHBhY2thZ2UnKQorICAgICAgICBjbWQuZGlzdHJpYnV0aW9uLmV4dF9tb2R1bGVzID0gW0V4dGVuc2lvbignZm9vJywgWyd4eHgnXSldCisgICAgICAgIGNtZC5kaXN0cmlidXRpb24ucGFja2FnZXMgPSBbJ3NwYW0nXQorCisgICAgICAgICMgbWFrZSBzdXJlIHRoZSBidWlsZF9saWIgaXMgc2V0IHRoZSB0ZW1wIGRpciAgIyBYWFggd2hhdD8gIHRoaXMgaXMgbm90CisgICAgICAgICMgbmVlZGVkIGluIHRoZSBzYW1lIGRpc3R1dGlscyB0ZXN0IGFuZCBzaG91bGQgd29yayB3aXRob3V0IG1hbnVhbAorICAgICAgICAjIGludGVydmVudGlvbgorICAgICAgICBidWlsZF9kaXIgPSBvcy5wYXRoLnNwbGl0KHByb2plY3RfZGlyKVswXQorICAgICAgICBjbWQuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdidWlsZF9weScpLmJ1aWxkX2xpYiA9IGJ1aWxkX2RpcgorCisgICAgICAgICMgZ2V0X291dHB1dHMgc2hvdWxkIHJldHVybiA0IGVsZW1lbnRzOiBzcGFtL19faW5pdF9fLnB5LCAucHljIGFuZAorICAgICAgICAjIC5weW8sIGZvby5pbXBvcnQtdGFnLWFiaWZsYWdzLnNvIC8gZm9vLnB5ZAorICAgICAgICBvdXRwdXRzID0gY21kLmdldF9vdXRwdXRzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4ob3V0cHV0cyksIDQsIG91dHB1dHMpCisKKyAgICBkZWYgdGVzdF9nZXRfaW5wdXRzKHNlbGYpOgorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgb3MubWtkaXIoJ3NwYW0nKQorICAgICAgICBjbWQgPSBpbnN0YWxsX2xpYihkaXN0KQorCisgICAgICAgICMgc2V0dGluZyB1cCBhIGRpc3QgZW52aXJvbm1lbnQKKyAgICAgICAgY21kLmNvbXBpbGUgPSBUcnVlCisgICAgICAgIGNtZC5vcHRpbWl6ZSA9IDEKKyAgICAgICAgY21kLmluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgZiA9IG9zLnBhdGguam9pbihwcm9qZWN0X2RpciwgJ3NwYW0nLCAnX19pbml0X18ucHknKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoZiwgJyMgcHl0aG9uIHBhY2thZ2UnKQorICAgICAgICBjbWQuZGlzdHJpYnV0aW9uLmV4dF9tb2R1bGVzID0gW0V4dGVuc2lvbignZm9vJywgWyd4eHgnXSldCisgICAgICAgIGNtZC5kaXN0cmlidXRpb24ucGFja2FnZXMgPSBbJ3NwYW0nXQorCisgICAgICAgICMgZ2V0X2lucHV0cyBzaG91bGQgcmV0dXJuIDIgZWxlbWVudHM6IHNwYW0vX19pbml0X18ucHkgYW5kCisgICAgICAgICMgZm9vLmltcG9ydC10YWctYWJpZmxhZ3Muc28gLyBmb28ucHlkCisgICAgICAgIGlucHV0cyA9IGNtZC5nZXRfaW5wdXRzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oaW5wdXRzKSwgMiwgaW5wdXRzKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShJbnN0YWxsTGliVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX3NjcmlwdHMucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX3NjcmlwdHMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjQ1MmEzNAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2luc3RhbGxfc2NyaXB0cy5weQpAQCAtMCwwICsxLDc1IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9zY3JpcHRzLiIiIgoraW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX3NjcmlwdHMgaW1wb3J0IGluc3RhbGxfc2NyaXB0cworZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCisKKworY2xhc3MgSW5zdGFsbFNjcmlwdHNUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9kZWZhdWx0X3NldHRpbmdzKHNlbGYpOgorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsiYnVpbGQiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgYnVpbGRfc2NyaXB0cz0iL2Zvby9iYXIiKQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWyJpbnN0YWxsX2Rpc3QiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgaW5zdGFsbF9zY3JpcHRzPSIvc3BsYXQvZnVuayIsCisgICAgICAgICAgICBmb3JjZT1UcnVlLAorICAgICAgICAgICAgc2tpcF9idWlsZD1UcnVlLAorICAgICAgICAgICAgKQorICAgICAgICBjbWQgPSBpbnN0YWxsX3NjcmlwdHMoZGlzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShjbWQuZm9yY2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoY21kLnNraXBfYnVpbGQpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoY21kLmJ1aWxkX2RpciwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhjbWQuaW5zdGFsbF9kaXIsIE5vbmUpCisKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjbWQuZm9yY2UpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjbWQuc2tpcF9idWlsZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuYnVpbGRfZGlyLCAiL2Zvby9iYXIiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5pbnN0YWxsX2RpciwgIi9zcGxhdC9mdW5rIikKKworICAgIGRlZiB0ZXN0X2luc3RhbGxhdGlvbihzZWxmKToKKyAgICAgICAgc291cmNlID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgZXhwZWN0ZWQgPSBbXQorCisgICAgICAgIGRlZiB3cml0ZV9zY3JpcHQobmFtZSwgdGV4dCk6CisgICAgICAgICAgICBleHBlY3RlZC5hcHBlbmQobmFtZSkKKyAgICAgICAgICAgIHdpdGggb3Blbihvcy5wYXRoLmpvaW4oc291cmNlLCBuYW1lKSwgInciKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUodGV4dCkKKworICAgICAgICB3cml0ZV9zY3JpcHQoInNjcmlwdDEucHkiLCAoIiMhIC91c3IvYmluL2VudiBweXRob24yLjNcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIjIGJvZ3VzIHNjcmlwdCB3LyBQeXRob24gc2gtYmFuZ1xuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhc3NcbiIpKQorICAgICAgICB3cml0ZV9zY3JpcHQoInNjcmlwdDIucHkiLCAoIiMhL3Vzci9iaW4vcHl0aG9uXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIyBib2d1cyBzY3JpcHQgdy8gUHl0aG9uIHNoLWJhbmdcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXNzXG4iKSkKKyAgICAgICAgd3JpdGVfc2NyaXB0KCJzaGVsbC5zaCIsICgiIyEvYmluL3NoXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiMgYm9ndXMgc2hlbGwgc2NyaXB0IHcvIHNoLWJhbmdcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhpdCAwXG4iKSkKKworICAgICAgICB0YXJnZXQgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsiYnVpbGQiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKGJ1aWxkX3NjcmlwdHM9c291cmNlKQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWyJpbnN0YWxsX2Rpc3QiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgaW5zdGFsbF9zY3JpcHRzPXRhcmdldCwKKyAgICAgICAgICAgIGZvcmNlPVRydWUsCisgICAgICAgICAgICBza2lwX2J1aWxkPVRydWUsCisgICAgICAgICAgICApCisgICAgICAgIGNtZCA9IGluc3RhbGxfc2NyaXB0cyhkaXN0KQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIGluc3RhbGxlZCA9IG9zLmxpc3RkaXIodGFyZ2V0KQorICAgICAgICBmb3IgbmFtZSBpbiBleHBlY3RlZDoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4obmFtZSwgaW5zdGFsbGVkKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShJbnN0YWxsU2NyaXB0c1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfcmVnaXN0ZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9yZWdpc3Rlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wN2ZhZDg5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfcmVnaXN0ZXIucHkKQEAgLTAsMCArMSwyNjAgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC5yZWdpc3Rlci4iIiIKK2ltcG9ydCBvcworaW1wb3J0IGdldHBhc3MKK2ltcG9ydCB1cmxsaWIucmVxdWVzdAoraW1wb3J0IHVybGxpYi5lcnJvcgoraW1wb3J0IHVybGxpYi5wYXJzZQorCit0cnk6CisgICAgaW1wb3J0IGRvY3V0aWxzCisgICAgRE9DVVRJTFNfU1VQUE9SVCA9IFRydWUKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBET0NVVElMU19TVVBQT1JUID0gRmFsc2UKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCBJbnB1dHMKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQgaW1wb3J0IHJlZ2lzdGVyIGFzIHJlZ2lzdGVyX21vZHVsZQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5yZWdpc3RlciBpbXBvcnQgcmVnaXN0ZXIKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nU2V0dXBFcnJvcgorCisKK1BZUElSQ19OT1BBU1NXT1JEID0gIiIiXAorW2Rpc3R1dGlsc10KKworaW5kZXgtc2VydmVycyA9CisgICAgc2VydmVyMQorCitbc2VydmVyMV0KK3VzZXJuYW1lOm1lCisiIiIKKworV0FOVEVEX1BZUElSQyA9ICIiIlwKK1tkaXN0dXRpbHNdCitpbmRleC1zZXJ2ZXJzID0KKyAgICBweXBpCisKK1tweXBpXQordXNlcm5hbWU6dGFyZWsKK3Bhc3N3b3JkOnBhc3N3b3JkCisiIiIKKworCitjbGFzcyBGYWtlT3BlbmVyOgorICAgICIiIkZha2VzIGEgUHlQSSBzZXJ2ZXIiIiIKKyAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgIHNlbGYucmVxcyA9IFtdCisKKyAgICBkZWYgX19jYWxsX18oc2VsZiwgKmFyZ3MpOgorICAgICAgICByZXR1cm4gc2VsZgorCisgICAgZGVmIG9wZW4oc2VsZiwgcmVxKToKKyAgICAgICAgc2VsZi5yZXFzLmFwcGVuZChyZXEpCisgICAgICAgIHJldHVybiBzZWxmCisKKyAgICBkZWYgcmVhZChzZWxmKToKKyAgICAgICAgcmV0dXJuICd4eHgnCisKKworY2xhc3MgUmVnaXN0ZXJUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydIT01FJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoUmVnaXN0ZXJUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZWxmLnJjID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJy5weXBpcmMnKQorICAgICAgICBvcy5lbnZpcm9uWydIT01FJ10gPSBzZWxmLnRtcF9kaXIKKworICAgICAgICAjIHBhdGNoaW5nIHRoZSBwYXNzd29yZCBwcm9tcHQKKyAgICAgICAgc2VsZi5fb2xkX2dldHBhc3MgPSBnZXRwYXNzLmdldHBhc3MKKworICAgICAgICBkZWYgX2dldHBhc3MocHJvbXB0KToKKyAgICAgICAgICAgIHJldHVybiAncGFzc3dvcmQnCisKKyAgICAgICAgZ2V0cGFzcy5nZXRwYXNzID0gX2dldHBhc3MKKyAgICAgICAgc2VsZi5vbGRfb3BlbmVyID0gdXJsbGliLnJlcXVlc3QuYnVpbGRfb3BlbmVyCisgICAgICAgIHNlbGYuY29ubiA9IHVybGxpYi5yZXF1ZXN0LmJ1aWxkX29wZW5lciA9IEZha2VPcGVuZXIoKQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBnZXRwYXNzLmdldHBhc3MgPSBzZWxmLl9vbGRfZ2V0cGFzcworICAgICAgICB1cmxsaWIucmVxdWVzdC5idWlsZF9vcGVuZXIgPSBzZWxmLm9sZF9vcGVuZXIKKyAgICAgICAgaWYgaGFzYXR0cihyZWdpc3Rlcl9tb2R1bGUsICdpbnB1dCcpOgorICAgICAgICAgICAgZGVsIHJlZ2lzdGVyX21vZHVsZS5pbnB1dAorICAgICAgICBzdXBlcihSZWdpc3RlclRlc3RDYXNlLCBzZWxmKS50ZWFyRG93bigpCisKKyAgICBkZWYgX2dldF9jbWQoc2VsZiwgbWV0YWRhdGE9Tm9uZSk6CisgICAgICAgIGlmIG1ldGFkYXRhIGlzIE5vbmU6CisgICAgICAgICAgICBtZXRhZGF0YSA9IHsnaG9tZV9wYWdlJzogJ3h4eCcsICdhdXRob3InOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgICAgICduYW1lJzogJ3h4eCcsICd2ZXJzaW9uJzogJ3h4eCd9CisgICAgICAgIHBrZ19pbmZvLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgqKm1ldGFkYXRhKQorICAgICAgICByZXR1cm4gcmVnaXN0ZXIoZGlzdCkKKworICAgIGRlZiB0ZXN0X2NyZWF0ZV9weXBpcmMoc2VsZik6CisgICAgICAgICMgdGhpcyB0ZXN0IG1ha2VzIHN1cmUgYSAucHlwaXJjIGZpbGUKKyAgICAgICAgIyBpcyBjcmVhdGVkIHdoZW4gcmVxdWVzdGVkLgorCisgICAgICAgICMgbGV0J3MgY3JlYXRlIGEgcmVnaXN0ZXIgaW5zdGFuY2UKKyAgICAgICAgY21kID0gc2VsZi5fZ2V0X2NtZCgpCisKKyAgICAgICAgIyB3ZSBzaG91bGRuJ3QgaGF2ZSBhIC5weXBpcmMgZmlsZSB5ZXQKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhzZWxmLnJjKSkKKworICAgICAgICAjIHBhdGNoaW5nIGlucHV0IGFuZCBnZXRwYXNzLmdldHBhc3MKKyAgICAgICAgIyBzbyByZWdpc3RlciBnZXRzIGhhcHB5CisgICAgICAgICMgSGVyZSdzIHdoYXQgd2UgYXJlIGZha2luZyA6CisgICAgICAgICMgdXNlIHlvdXIgZXhpc3RpbmcgbG9naW4gKGNob2ljZSAxLikKKyAgICAgICAgIyBVc2VybmFtZSA6ICd0YXJlaycKKyAgICAgICAgIyBQYXNzd29yZCA6ICdwYXNzd29yZCcKKyAgICAgICAgIyBTYXZlIHlvdXIgbG9naW4gKHkvTik/IDogJ3knCisgICAgICAgIGlucHV0cyA9IElucHV0cygnMScsICd0YXJlaycsICd5JykKKyAgICAgICAgcmVnaXN0ZXJfbW9kdWxlLmlucHV0ID0gaW5wdXRzCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyB3ZSBzaG91bGQgaGF2ZSBhIGJyYW5kIG5ldyAucHlwaXJjIGZpbGUKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKHNlbGYucmMpKQorCisgICAgICAgICMgd2l0aCB0aGUgY29udGVudCBzaW1pbGFyIHRvIFdBTlRFRF9QWVBJUkMKKyAgICAgICAgd2l0aCBvcGVuKHNlbGYucmMpIGFzIGZwOgorICAgICAgICAgICAgY29udGVudCA9IGZwLnJlYWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRlbnQsIFdBTlRFRF9QWVBJUkMpCisKKyAgICAgICAgIyBub3cgbGV0J3MgbWFrZSBzdXJlIHRoZSAucHlwaXJjIGZpbGUgZ2VuZXJhdGVkCisgICAgICAgICMgcmVhbGx5IHdvcmtzIDogd2Ugc2hvdWxkbid0IGJlIGFza2VkIGFueXRoaW5nCisgICAgICAgICMgaWYgd2UgcnVuIHRoZSBjb21tYW5kIGFnYWluCisgICAgICAgIGRlZiBfbm9fd2F5KHByb21wdD0nJyk6CisgICAgICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcihwcm9tcHQpCisKKyAgICAgICAgcmVnaXN0ZXJfbW9kdWxlLmlucHV0ID0gX25vX3dheQorICAgICAgICBjbWQuc2hvd19yZXNwb25zZSA9IFRydWUKKyAgICAgICAgY21kLmZpbmFsaXplZCA9IEZhbHNlCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBsZXQncyBzZWUgd2hhdCB0aGUgc2VydmVyIHJlY2VpdmVkIDogd2Ugc2hvdWxkCisgICAgICAgICMgaGF2ZSAyIHNpbWlsYXIgcmVxdWVzdHMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5jb25uLnJlcXMpLCAyKQorICAgICAgICByZXExID0gZGljdChzZWxmLmNvbm4ucmVxc1swXS5oZWFkZXJzKQorICAgICAgICByZXEyID0gZGljdChzZWxmLmNvbm4ucmVxc1sxXS5oZWFkZXJzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcTJbJ0NvbnRlbnQtbGVuZ3RoJ10sIHJlcTFbJ0NvbnRlbnQtbGVuZ3RoJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYid4eHgnLCBzZWxmLmNvbm4ucmVxc1sxXS5kYXRhKQorCisgICAgZGVmIHRlc3RfcGFzc3dvcmRfbm90X2luX2ZpbGUoc2VsZik6CisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKHNlbGYucmMsIFBZUElSQ19OT1BBU1NXT1JEKQorICAgICAgICBjbWQgPSBzZWxmLl9nZXRfY21kKCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBjbWQuX3NldF9jb25maWcoKQorICAgICAgICBjbWQuc2VuZF9tZXRhZGF0YSgpCisKKyAgICAgICAgIyBkaXN0LnBhc3N3b3JkIHNob3VsZCBiZSBzZXQKKyAgICAgICAgIyB0aGVyZWZvcmUgdXNlZCBhZnRlcndhcmRzIGJ5IG90aGVyIGNvbW1hbmRzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmRpc3RyaWJ1dGlvbi5wYXNzd29yZCwgJ3Bhc3N3b3JkJykKKworICAgIGRlZiB0ZXN0X3JlZ2lzdHJhdGlvbihzZWxmKToKKyAgICAgICAgIyB0aGlzIHRlc3QgcnVucyBjaG9pY2UgMgorICAgICAgICBjbWQgPSBzZWxmLl9nZXRfY21kKCkKKyAgICAgICAgaW5wdXRzID0gSW5wdXRzKCcyJywgJ3RhcmVrJywgJ3RhcmVrQHppYWRlLm9yZycpCisgICAgICAgIHJlZ2lzdGVyX21vZHVsZS5pbnB1dCA9IGlucHV0cworICAgICAgICAjIGxldCdzIHJ1biB0aGUgY29tbWFuZAorICAgICAgICAjIEZJWE1FIGRvZXMgdGhpcyBzZW5kIGEgcmVhbCByZXF1ZXN0PyB1c2UgYSBtb2NrIHNlcnZlcgorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgd2Ugc2hvdWxkIGhhdmUgc2VuZCBhIHJlcXVlc3QKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5jb25uLnJlcXMpLCAxKQorICAgICAgICByZXEgPSBzZWxmLmNvbm4ucmVxc1swXQorICAgICAgICBoZWFkZXJzID0gZGljdChyZXEuaGVhZGVycykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoZWFkZXJzWydDb250ZW50LWxlbmd0aCddLCAnNjI4JykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ3RhcmVrJywgcmVxLmRhdGEpCisKKyAgICBkZWYgdGVzdF9wYXNzd29yZF9yZXNldChzZWxmKToKKyAgICAgICAgIyB0aGlzIHRlc3QgcnVucyBjaG9pY2UgMworICAgICAgICBjbWQgPSBzZWxmLl9nZXRfY21kKCkKKyAgICAgICAgaW5wdXRzID0gSW5wdXRzKCczJywgJ3RhcmVrQHppYWRlLm9yZycpCisgICAgICAgIHJlZ2lzdGVyX21vZHVsZS5pbnB1dCA9IGlucHV0cworICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgd2Ugc2hvdWxkIGhhdmUgc2VuZCBhIHJlcXVlc3QKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5jb25uLnJlcXMpLCAxKQorICAgICAgICByZXEgPSBzZWxmLmNvbm4ucmVxc1swXQorICAgICAgICBoZWFkZXJzID0gZGljdChyZXEuaGVhZGVycykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoZWFkZXJzWydDb250ZW50LWxlbmd0aCddLCAnMjk4JykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ3RhcmVrJywgcmVxLmRhdGEpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhET0NVVElMU19TVVBQT1JULCAnbmVlZHMgZG9jdXRpbHMnKQorICAgIGRlZiB0ZXN0X3N0cmljdChzZWxmKToKKyAgICAgICAgIyB0ZXN0aW5nIHRoZSBzdHJpY3Qgb3B0aW9uOiB3aGVuIG9uLCB0aGUgcmVnaXN0ZXIgY29tbWFuZCBzdG9wcyBpZiB0aGUKKyAgICAgICAgIyBtZXRhZGF0YSBpcyBpbmNvbXBsZXRlIG9yIGlmIGRlc2NyaXB0aW9uIGNvbnRhaW5zIGJhZCByZVNUCisKKyAgICAgICAgIyBlbXB0eSBtZXRhZGF0YSAgIyBYWFggdGhpcyBpcyBub3QgcmVhbGx5IGVtcHR5Li4KKyAgICAgICAgY21kID0gc2VsZi5fZ2V0X2NtZCh7J25hbWUnOiAneHh4JywgJ3ZlcnNpb24nOiAneHh4J30pCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnN0cmljdCA9IFRydWUKKyAgICAgICAgaW5wdXRzID0gSW5wdXRzKCcxJywgJ3RhcmVrJywgJ3knKQorICAgICAgICByZWdpc3Rlcl9tb2R1bGUuaW5wdXQgPSBpbnB1dHMKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLnJ1bikKKworICAgICAgICAjIG1ldGFkYXRhIGlzIE9LIGJ1dCBkZXNjcmlwdGlvbiBpcyBicm9rZW4KKyAgICAgICAgbWV0YWRhdGEgPSB7J2hvbWVfcGFnZSc6ICd4eHgnLCAnYXV0aG9yJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiAnw6l4w6l4w6knLAorICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICd4eHgnLCAndmVyc2lvbic6ICc0LjInLAorICAgICAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiAndGl0bGVcbj09XG5cbnRleHQnfQorCisgICAgICAgIGNtZCA9IHNlbGYuX2dldF9jbWQobWV0YWRhdGEpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnN0cmljdCA9IFRydWUKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLnJ1bikKKworICAgICAgICAjIG5vdyBzb21ldGhpbmcgdGhhdCB3b3JrcworICAgICAgICBtZXRhZGF0YVsnZGVzY3JpcHRpb24nXSA9ICd0aXRsZVxuPT09PT1cblxudGV4dCcKKyAgICAgICAgY21kID0gc2VsZi5fZ2V0X2NtZChtZXRhZGF0YSkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQuc3RyaWN0ID0gVHJ1ZQorICAgICAgICBpbnB1dHMgPSBJbnB1dHMoJzEnLCAndGFyZWsnLCAneScpCisgICAgICAgIHJlZ2lzdGVyX21vZHVsZS5pbnB1dCA9IGlucHV0cworICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgc3RyaWN0IGlzIG5vdCBieSBkZWZhdWx0CisgICAgICAgIGNtZCA9IHNlbGYuX2dldF9jbWQoKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGlucHV0cyA9IElucHV0cygnMScsICd0YXJlaycsICd5JykKKyAgICAgICAgcmVnaXN0ZXJfbW9kdWxlLmlucHV0ID0gaW5wdXRzCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBhbmQgZmluYWxseSBhIFVuaWNvZGUgdGVzdCAoYnVnICMxMjExNCkKKyAgICAgICAgbWV0YWRhdGEgPSB7J2hvbWVfcGFnZSc6ICd4eHgnLCAnYXV0aG9yJzogJ1x1MDBjOXJpYycsCisgICAgICAgICAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiAneHh4JywgJ25hbWUnOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgJ3N1bW1hcnknOiAnU29tZXRoaW5nIGFib3V0IGVzc3pldCBcdTAwZGYnLAorICAgICAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnTW9yZSB0aGluZ3MgYWJvdXQgZXNzemV0IFx1MDBkZid9CisKKyAgICAgICAgY21kID0gc2VsZi5fZ2V0X2NtZChtZXRhZGF0YSkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQuc3RyaWN0ID0gVHJ1ZQorICAgICAgICBpbnB1dHMgPSBJbnB1dHMoJzEnLCAndGFyZWsnLCAneScpCisgICAgICAgIHJlZ2lzdGVyX21vZHVsZS5pbnB1dCA9IGlucHV0cworICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgZGVmIHRlc3RfcmVnaXN0ZXJfcGVwMzQ1KHNlbGYpOgorICAgICAgICBjbWQgPSBzZWxmLl9nZXRfY21kKHt9KQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5kaXN0cmlidXRpb24ubWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSA9IFsnbHhtbCddCisgICAgICAgIGRhdGEgPSBjbWQuYnVpbGRfcG9zdF9kYXRhKCdzdWJtaXQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRhdGFbJ21ldGFkYXRhX3ZlcnNpb24nXSwgJzEuMicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YVsncmVxdWlyZXNfZGlzdCddLCBbJ2x4bWwnXSkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoUmVnaXN0ZXJUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3NkaXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfc2Rpc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDk3NDcxOAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3NkaXN0LnB5CkBAIC0wLDAgKzEsMzk0IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmNvbW1hbmQuc2Rpc3QuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCB0YXJmaWxlCitpbXBvcnQgemlwZmlsZQorCit0cnk6CisgICAgaW1wb3J0IGdycAorICAgIGltcG9ydCBwd2QKKyAgICBVSURfR0lEX1NVUFBPUlQgPSBUcnVlCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgVUlEX0dJRF9TVVBQT1JUID0gRmFsc2UKKworZnJvbSBzaHV0aWwgaW1wb3J0IGdldF9hcmNoaXZlX2Zvcm1hdHMKK2Zyb20gb3MucGF0aCBpbXBvcnQgam9pbgorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBmaW5kX2V4ZWN1dGFibGUKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nT3B0aW9uRXJyb3IKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuc2Rpc3QgaW1wb3J0IHNkaXN0LCBzaG93X2Zvcm1hdHMKKworZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGNhcHR1cmVkX3N0ZG91dAorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHN1cHBvcnQsIHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCByZXF1aXJlc196bGliCisKKworTUFOSUZFU1QgPSAiIiJcCisjIGZpbGUgR0VORVJBVEVEIGJ5IHBhY2thZ2luZywgZG8gTk9UIGVkaXQKK2lucm9vdC50eHQKK3NldHVwLmNmZworZGF0YSUoc2VwKXNkYXRhLmR0CitzY3JpcHRzJShzZXApc3NjcmlwdC5weQorc29tZSUoc2VwKXNmaWxlLnR4dAorc29tZSUoc2VwKXNvdGhlcl9maWxlLnR4dAorc29tZWNvZGUlKHNlcClzX19pbml0X18ucHkKK3NvbWVjb2RlJShzZXApc2RvYy5kYXQKK3NvbWVjb2RlJShzZXApc2RvYy50eHQKKyIiIgorCisKK2RlZiBidWlsZGVyKGRpc3QsIGZpbGVsaXN0KToKKyAgICBmaWxlbGlzdC5hcHBlbmQoJ2JhaCcpCisKKworY2xhc3MgU0Rpc3RUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydIT01FJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoU0Rpc3RUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBvcy5lbnZpcm9uWydIT01FJ10gPSBzZWxmLnRtcF9kaXIKKyAgICAgICAgIyBzZXR0aW5nIHVwIGFuIGVudmlyb25tZW50CisgICAgICAgIHNlbGYub2xkX3BhdGggPSBvcy5nZXRjd2QoKQorICAgICAgICBvcy5ta2Rpcihqb2luKHNlbGYudG1wX2RpciwgJ3NvbWVjb2RlJykpCisgICAgICAgIG9zLm1rZGlyKGpvaW4oc2VsZi50bXBfZGlyLCAnZGlzdCcpKQorICAgICAgICAjIGEgcGFja2FnZSwgYW5kIGEgUkVBRE1FCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnUkVBRE1FJyksICd4eHgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYudG1wX2RpciwgJ3NvbWVjb2RlJywgJ19faW5pdF9fLnB5JyksICcjJykKKyAgICAgICAgb3MuY2hkaXIoc2VsZi50bXBfZGlyKQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICAjIGJhY2sgdG8gbm9ybWFsCisgICAgICAgIG9zLmNoZGlyKHNlbGYub2xkX3BhdGgpCisgICAgICAgIHN1cGVyKFNEaXN0VGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgIGRlZiBnZXRfY21kKHNlbGYsIG1ldGFkYXRhPU5vbmUpOgorICAgICAgICAiIiJSZXR1cm5zIGEgY21kIiIiCisgICAgICAgIGlmIG1ldGFkYXRhIGlzIE5vbmU6CisgICAgICAgICAgICBtZXRhZGF0YSA9IHsnbmFtZSc6ICdmYWtlJywgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICAgICAgICdob21lX3BhZ2UnOiAneHh4JywgJ2F1dGhvcic6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2F1dGhvcl9lbWFpbCc6ICd4eHgnfQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKG1ldGFkYXRhKQorICAgICAgICBkaXN0LnBhY2thZ2VzID0gWydzb21lY29kZSddCisgICAgICAgIGNtZCA9IHNkaXN0KGRpc3QpCisgICAgICAgIGNtZC5kaXN0X2RpciA9ICdkaXN0JworICAgICAgICByZXR1cm4gZGlzdCwgY21kCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X3BydW5lX2ZpbGVfbGlzdChzZWxmKToKKyAgICAgICAgIyB0aGlzIHRlc3QgY3JlYXRlcyBhIHBhY2thZ2Ugd2l0aCBzb21lIHZjcyBkaXJzIGluIGl0CisgICAgICAgICMgYW5kIGxhdW5jaCBzZGlzdCB0byBtYWtlIHN1cmUgdGhleSBnZXQgcHJ1bmVkCisgICAgICAgICMgb24gYWxsIHN5c3RlbXMKKworICAgICAgICAjIGNyZWF0aW5nIFZDUyBkaXJlY3RvcmllcyB3aXRoIHNvbWUgZmlsZXMgaW4gdGhlbQorICAgICAgICBvcy5ta2Rpcihqb2luKHNlbGYudG1wX2RpciwgJ3NvbWVjb2RlJywgJy5zdm4nKSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChzZWxmLnRtcF9kaXIsICdzb21lY29kZScsICcuc3ZuJywgJ29rLnB5JyksICd4eHgnKQorCisgICAgICAgIG9zLm1rZGlyKGpvaW4oc2VsZi50bXBfZGlyLCAnc29tZWNvZGUnLCAnLmhnJykpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnc29tZWNvZGUnLCAnLmhnJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAnb2snKSwgJ3h4eCcpCisKKyAgICAgICAgb3MubWtkaXIoam9pbihzZWxmLnRtcF9kaXIsICdzb21lY29kZScsICcuZ2l0JykpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnc29tZWNvZGUnLCAnLmdpdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgJ29rJyksICd4eHgnKQorCisgICAgICAgICMgbm93IGJ1aWxkaW5nIGEgc2Rpc3QKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKworICAgICAgICAjIHppcCBpcyBhdmFpbGFibGUgdW5pdmVyc2FsbHkKKyAgICAgICAgIyAodGFyIG1pZ2h0IG5vdCBiZSBpbnN0YWxsZWQgdW5kZXIgd2luMzIpCisgICAgICAgIGNtZC5mb3JtYXRzID0gWyd6aXAnXQorCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBub3cgbGV0J3MgY2hlY2sgd2hhdCB3ZSBoYXZlCisgICAgICAgIGRpc3RfZm9sZGVyID0gam9pbihzZWxmLnRtcF9kaXIsICdkaXN0JykKKyAgICAgICAgZmlsZXMgPSBvcy5saXN0ZGlyKGRpc3RfZm9sZGVyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZpbGVzLCBbJ2Zha2UtMS4wLnppcCddKQorCisgICAgICAgIHdpdGggemlwZmlsZS5aaXBGaWxlKGpvaW4oZGlzdF9mb2xkZXIsICdmYWtlLTEuMC56aXAnKSkgYXMgemlwX2ZpbGU6CisgICAgICAgICAgICBjb250ZW50ID0gemlwX2ZpbGUubmFtZWxpc3QoKQorCisgICAgICAgICMgbWFraW5nIHN1cmUgZXZlcnl0aGluZyBoYXMgYmVlbiBwcnVuZWQgY29ycmVjdGx5CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGNvbnRlbnQpLCAyKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBAdW5pdHRlc3Quc2tpcElmKGZpbmRfZXhlY3V0YWJsZSgndGFyJykgaXMgTm9uZSBvcgorICAgICAgICAgICAgICAgICAgICAgZmluZF9leGVjdXRhYmxlKCdnemlwJykgaXMgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICdyZXF1aXJlcyB0YXIgYW5kIGd6aXAgcHJvZ3JhbXMnKQorICAgIGRlZiB0ZXN0X21ha2VfZGlzdHJpYnV0aW9uKHNlbGYpOgorICAgICAgICAjIGJ1aWxkaW5nIGEgc2Rpc3QKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKworICAgICAgICAjIGNyZWF0aW5nIGEgZ3p0YXIgdGhlbiBhIHRhcgorICAgICAgICBjbWQuZm9ybWF0cyA9IFsnZ3p0YXInLCAndGFyJ10KKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAjIG1ha2luZyBzdXJlIHdlIGhhdmUgdHdvIGZpbGVzCisgICAgICAgIGRpc3RfZm9sZGVyID0gam9pbihzZWxmLnRtcF9kaXIsICdkaXN0JykKKyAgICAgICAgcmVzdWx0ID0gc29ydGVkKG9zLmxpc3RkaXIoZGlzdF9mb2xkZXIpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdCwgWydmYWtlLTEuMC50YXInLCAnZmFrZS0xLjAudGFyLmd6J10pCisKKyAgICAgICAgb3MucmVtb3ZlKGpvaW4oZGlzdF9mb2xkZXIsICdmYWtlLTEuMC50YXInKSkKKyAgICAgICAgb3MucmVtb3ZlKGpvaW4oZGlzdF9mb2xkZXIsICdmYWtlLTEuMC50YXIuZ3onKSkKKworICAgICAgICAjIG5vdyB0cnlpbmcgYSB0YXIgdGhlbiBhIGd6dGFyCisgICAgICAgIGNtZC5mb3JtYXRzID0gWyd0YXInLCAnZ3p0YXInXQorICAgICAgICBjbWQuZmluYWxpemVkID0gRmFsc2UKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICByZXN1bHQgPSBzb3J0ZWQob3MubGlzdGRpcihkaXN0X2ZvbGRlcikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0LCBbJ2Zha2UtMS4wLnRhcicsICdmYWtlLTEuMC50YXIuZ3onXSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfYWRkX2RlZmF1bHRzKHNlbGYpOgorCisgICAgICAgICMgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTIyNzkKKworICAgICAgICAjIGFkZF9kZWZhdWx0IHNob3VsZCBhbHNvIGluY2x1ZGUKKyAgICAgICAgIyBkYXRhX2ZpbGVzIGFuZCBwYWNrYWdlX2RhdGEKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKworICAgICAgICAjIGZpbGxpbmcgZGF0YV9maWxlcyBieSBwb2ludGluZyBmaWxlcworICAgICAgICAjIGluIHBhY2thZ2VfZGF0YQorICAgICAgICBkaXN0LnBhY2thZ2VfZGF0YSA9IHsnJzogWycqLmNmZycsICcqLmRhdCddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc29tZWNvZGUnOiBbJyoudHh0J119CisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnc2V0dXAuY2ZnJyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChzZWxmLnRtcF9kaXIsICdzb21lY29kZScsICdkb2MudHh0JyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChzZWxmLnRtcF9kaXIsICdzb21lY29kZScsICdkb2MuZGF0JyksICcjJykKKworICAgICAgICAjIGFkZGluZyBzb21lIGRhdGEgaW4gZGF0YV9maWxlcworICAgICAgICBkYXRhX2RpciA9IGpvaW4oc2VsZi50bXBfZGlyLCAnZGF0YScpCisgICAgICAgIG9zLm1rZGlyKGRhdGFfZGlyKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKGRhdGFfZGlyLCAnZGF0YS5kdCcpLCAnIycpCisgICAgICAgIHNvbWVfZGlyID0gam9pbihzZWxmLnRtcF9kaXIsICdzb21lJykKKyAgICAgICAgb3MubWtkaXIoc29tZV9kaXIpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnaW5yb290LnR4dCcpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc29tZV9kaXIsICdmaWxlLnR4dCcpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc29tZV9kaXIsICdvdGhlcl9maWxlLnR4dCcpLCAnIycpCisKKyAgICAgICAgZGlzdC5kYXRhX2ZpbGVzID0geydkYXRhL2RhdGEuZHQnOiAne2FwcGRhdGF9L2RhdGEuZHQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lucm9vdC50eHQnOiAne2FwcGRhdGF9L2lucm9vdC50eHQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NvbWUvZmlsZS50eHQnOiAne2FwcGRhdGF9L2ZpbGUudHh0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICdzb21lL290aGVyX2ZpbGUudHh0JzogJ3thcHBkYXRhfS9vdGhlcl9maWxlLnR4dCd9CisKKyAgICAgICAgIyBhZGRpbmcgYSBzY3JpcHQKKyAgICAgICAgc2NyaXB0X2RpciA9IGpvaW4oc2VsZi50bXBfZGlyLCAnc2NyaXB0cycpCisgICAgICAgIG9zLm1rZGlyKHNjcmlwdF9kaXIpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2NyaXB0X2RpciwgJ3NjcmlwdC5weScpLCAnIycpCisgICAgICAgIGRpc3Quc2NyaXB0cyA9IFtqb2luKCdzY3JpcHRzJywgJ3NjcmlwdC5weScpXQorCisgICAgICAgIGNtZC5mb3JtYXRzID0gWyd6aXAnXQorICAgICAgICBjbWQudXNlX2RlZmF1bHRzID0gVHJ1ZQorCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBub3cgbGV0J3MgY2hlY2sgd2hhdCB3ZSBoYXZlCisgICAgICAgIGRpc3RfZm9sZGVyID0gam9pbihzZWxmLnRtcF9kaXIsICdkaXN0JykKKyAgICAgICAgZmlsZXMgPSBvcy5saXN0ZGlyKGRpc3RfZm9sZGVyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZpbGVzLCBbJ2Zha2UtMS4wLnppcCddKQorCisgICAgICAgIHdpdGggemlwZmlsZS5aaXBGaWxlKGpvaW4oZGlzdF9mb2xkZXIsICdmYWtlLTEuMC56aXAnKSkgYXMgemlwX2ZpbGU6CisgICAgICAgICAgICBjb250ZW50ID0gemlwX2ZpbGUubmFtZWxpc3QoKQorCisgICAgICAgICMgTWFraW5nIHN1cmUgZXZlcnl0aGluZyB3YXMgYWRkZWQuIFRoaXMgaW5jbHVkZXMgOCBjb2RlIGFuZCBkYXRhCisgICAgICAgICMgZmlsZXMgaW4gYWRkaXRpb24gdG8gUEtHLUlORk8gYW5kIHNldHVwLmNmZworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjb250ZW50KSwgMTApCisKKyAgICAgICAgIyBDaGVja2luZyB0aGUgTUFOSUZFU1QKKyAgICAgICAgd2l0aCBvcGVuKGpvaW4oc2VsZi50bXBfZGlyLCAnTUFOSUZFU1QnKSkgYXMgZnA6CisgICAgICAgICAgICBtYW5pZmVzdCA9IGZwLnJlYWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LCBNQU5JRkVTVCAlIHsnc2VwJzogb3Muc2VwfSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfbWV0YWRhdGFfY2hlY2tfb3B0aW9uKHNlbGYpOgorICAgICAgICAjIHRlc3RpbmcgdGhlIGBjaGVjay1tZXRhZGF0YWAgb3B0aW9uCisgICAgICAgIGRpc3QsIGNtZCA9IHNlbGYuZ2V0X2NtZChtZXRhZGF0YT17J25hbWUnOiAneHh4JywgJ3ZlcnNpb24nOiAneHh4J30pCisKKyAgICAgICAgIyB0aGlzIHNob3VsZCBjYXVzZSB0aGUgY2hlY2sgc3ViY29tbWFuZCB0byBsb2cgdHdvIHdhcm5pbmdzOgorICAgICAgICAjIHZlcnNpb24gaXMgaW52YWxpZCwgaG9tZS1wYWdlIGFuZCBhdXRob3IgYXJlIG1pc3NpbmcKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKyAgICAgICAgd2FybmluZ3MgPSBzZWxmLmdldF9sb2dzKCkKKyAgICAgICAgY2hlY2tfd2FybmluZ3MgPSBbbXNnIGZvciBtc2cgaW4gd2FybmluZ3MgaWYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbm90IG1zZy5zdGFydHN3aXRoKCdzZGlzdDonKV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY2hlY2tfd2FybmluZ3MpLCAyLCB3YXJuaW5ncykKKworICAgICAgICAjIHRyeWluZyB3aXRoIGEgY29tcGxldGUgc2V0IG9mIG1ldGFkYXRhCisgICAgICAgIHNlbGYubG9naGFuZGxlci5mbHVzaCgpCisgICAgICAgIGRpc3QsIGNtZCA9IHNlbGYuZ2V0X2NtZCgpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLm1ldGFkYXRhX2NoZWNrID0gRmFsc2UKKyAgICAgICAgY21kLnJ1bigpCisgICAgICAgIHdhcm5pbmdzID0gc2VsZi5nZXRfbG9ncygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHdhcm5pbmdzKSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRJbigndXNpbmcgZGVmYXVsdCBmaWxlIGxpc3QnLCB3YXJuaW5nc1swXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiJ3NldHVwLmNmZycgZmlsZSBub3QgZm91bmQiLCB3YXJuaW5nc1sxXSkKKworICAgIGRlZiB0ZXN0X3Nob3dfZm9ybWF0cyhzZWxmKToKKyAgICAgICAgd2l0aCBjYXB0dXJlZF9zdGRvdXQoKSBhcyBzdGRvdXQ6CisgICAgICAgICAgICBzaG93X2Zvcm1hdHMoKQorICAgICAgICBzdGRvdXQgPSBzdGRvdXQuZ2V0dmFsdWUoKQorCisgICAgICAgICMgdGhlIG91dHB1dCBzaG91bGQgYmUgYSBoZWFkZXIgbGluZSArIG9uZSBsaW5lIHBlciBmb3JtYXQKKyAgICAgICAgbnVtX2Zvcm1hdHMgPSBsZW4oZ2V0X2FyY2hpdmVfZm9ybWF0cygpKQorICAgICAgICBvdXRwdXQgPSBbbGluZSBmb3IgbGluZSBpbiBzdGRvdXQuc3BsaXQoJ1xuJykKKyAgICAgICAgICAgICAgICAgIGlmIGxpbmUuc3RyaXAoKS5zdGFydHN3aXRoKCctLWZvcm1hdHM9JyldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG91dHB1dCksIG51bV9mb3JtYXRzKQorCisgICAgZGVmIHRlc3RfZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorCisgICAgICAgICMgZGVmYXVsdCBvcHRpb25zIHNldCBieSBmaW5hbGl6ZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5tYW5pZmVzdCwgJ01BTklGRVNUJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZGlzdF9kaXIsICdkaXN0JykKKworICAgICAgICAjIGZvcm1hdHMgaGFzIHRvIGJlIGEgc3RyaW5nIHNwbGl0YWJsZSBvbiAoJyAnLCAnLCcpIG9yCisgICAgICAgICMgYSBzdHJpbmdsaXN0CisgICAgICAgIGNtZC5mb3JtYXRzID0gMQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmZpbmFsaXplX29wdGlvbnMpCisgICAgICAgIGNtZC5mb3JtYXRzID0gWyd6aXAnXQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisKKyAgICAgICAgIyBmb3JtYXRzIGhhcyB0byBiZSBrbm93bgorICAgICAgICBjbWQuZm9ybWF0cyA9ICdzdXBhemlwYScKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5maW5hbGl6ZV9vcHRpb25zKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF90ZW1wbGF0ZShzZWxmKToKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKyAgICAgICAgZGlzdC5leHRyYV9maWxlcyA9IFsnaW5jbHVkZSB5ZWFoJ10KKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYudG1wX2RpciwgJ3llYWgnKSwgJ3h4eCcpCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICB3aXRoIG9wZW4oY21kLm1hbmlmZXN0KSBhcyBmOgorICAgICAgICAgICAgY29udGVudCA9IGYucmVhZCgpCisKKyAgICAgICAgc2VsZi5hc3NlcnRJbigneWVhaCcsIGNvbnRlbnQpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKFVJRF9HSURfU1VQUE9SVCwgInJlcXVpcmVzIGdycCBhbmQgcHdkIHN1cHBvcnQiKQorICAgIEB1bml0dGVzdC5za2lwSWYoZmluZF9leGVjdXRhYmxlKCd0YXInKSBpcyBOb25lIG9yCisgICAgICAgICAgICAgICAgICAgICBmaW5kX2V4ZWN1dGFibGUoJ2d6aXAnKSBpcyBOb25lLAorICAgICAgICAgICAgICAgICAgICAgJ3JlcXVpcmVzIHRhciBhbmQgZ3ppcCBwcm9ncmFtcycpCisgICAgZGVmIHRlc3RfbWFrZV9kaXN0cmlidXRpb25fb3duZXJfZ3JvdXAoc2VsZik6CisgICAgICAgICMgYnVpbGRpbmcgYSBzZGlzdAorICAgICAgICBkaXN0LCBjbWQgPSBzZWxmLmdldF9jbWQoKQorCisgICAgICAgICMgY3JlYXRpbmcgYSBnenRhciBhbmQgc3BlY2lmeWluZyB0aGUgb3duZXIrZ3JvdXAKKyAgICAgICAgY21kLmZvcm1hdHMgPSBbJ2d6dGFyJ10KKyAgICAgICAgY21kLm93bmVyID0gcHdkLmdldHB3dWlkKDApWzBdCisgICAgICAgIGNtZC5ncm91cCA9IGdycC5nZXRncmdpZCgwKVswXQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgbWFraW5nIHN1cmUgd2UgaGF2ZSB0aGUgZ29vZCByaWdodHMKKyAgICAgICAgYXJjaGl2ZV9uYW1lID0gam9pbihzZWxmLnRtcF9kaXIsICdkaXN0JywgJ2Zha2UtMS4wLnRhci5neicpCisgICAgICAgIHdpdGggdGFyZmlsZS5vcGVuKGFyY2hpdmVfbmFtZSkgYXMgYXJjaGl2ZToKKyAgICAgICAgICAgIGZvciBtZW1iZXIgaW4gYXJjaGl2ZS5nZXRtZW1iZXJzKCk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZW1iZXIudWlkLCAwKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWVtYmVyLmdpZCwgMCkKKworICAgICAgICAjIGJ1aWxkaW5nIGEgc2Rpc3QgYWdhaW4KKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKworICAgICAgICAjIGNyZWF0aW5nIGEgZ3p0YXIKKyAgICAgICAgY21kLmZvcm1hdHMgPSBbJ2d6dGFyJ10KKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAjIG1ha2luZyBzdXJlIHdlIGhhdmUgdGhlIGdvb2QgcmlnaHRzCisgICAgICAgIGFyY2hpdmVfbmFtZSA9IGpvaW4oc2VsZi50bXBfZGlyLCAnZGlzdCcsICdmYWtlLTEuMC50YXIuZ3onKQorICAgICAgICB3aXRoIHRhcmZpbGUub3BlbihhcmNoaXZlX25hbWUpIGFzIGFyY2hpdmU6CisKKyAgICAgICAgICAgICMgbm90ZSB0aGF0IHdlIGFyZSBub3QgdGVzdGluZyB0aGUgZ3JvdXAgb3duZXJzaGlwIGhlcmUKKyAgICAgICAgICAgICMgYmVjYXVzZSwgZGVwZW5kaW5nIG9uIHRoZSBwbGF0Zm9ybXMgYW5kIHRoZSBjb250YWluZXIKKyAgICAgICAgICAgICMgcmlnaHRzIChzZWUgIzc0MDgpCisgICAgICAgICAgICBmb3IgbWVtYmVyIGluIGFyY2hpdmUuZ2V0bWVtYmVycygpOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWVtYmVyLnVpZCwgb3MuZ2V0dWlkKCkpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X2dldF9maWxlX2xpc3Qoc2VsZik6CisgICAgICAgICMgbWFrZSBzdXJlIE1BTklGRVNUIGlzIHJlY2FsY3VsYXRlZAorICAgICAgICBkaXN0LCBjbWQgPSBzZWxmLmdldF9jbWQoKQorICAgICAgICAjIGZpbGxpbmcgZGF0YV9maWxlcyBieSBwb2ludGluZyBmaWxlcyBpbiBwYWNrYWdlX2RhdGEKKyAgICAgICAgZGlzdC5wYWNrYWdlX2RhdGEgPSB7J3NvbWVjb2RlJzogWycqLnR4dCddfQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYudG1wX2RpciwgJ3NvbWVjb2RlJywgJ2RvYy50eHQnKSwgJyMnKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgU2hvdWxkIHByb2R1Y2UgZm91ciBsaW5lcy4gVGhvc2UgbGluZXMgYXJlIG9uZSBjb21tZW50LCBvbmUgZGVmYXVsdAorICAgICAgICAjIChSRUFETUUpIGFuZCB0d28gcGFja2FnZSBmaWxlcy4KKyAgICAgICAgd2l0aCBvcGVuKGNtZC5tYW5pZmVzdCkgYXMgZjoKKyAgICAgICAgICAgIG1hbmlmZXN0ID0gW2xpbmUuc3RyaXAoKSBmb3IgbGluZSBpbiBmLnJlYWQoKS5zcGxpdCgnXG4nKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgbGluZS5zdHJpcCgpICE9ICcnXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtYW5pZmVzdCksIDMpCisKKyAgICAgICAgIyBBZGRpbmcgYSBmaWxlCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnc29tZWNvZGUnLCAnZG9jMi50eHQnKSwgJyMnKQorCisgICAgICAgICMgbWFrZSBzdXJlIGJ1aWxkX3B5IGlzIHJlaW5pdGlhbGl6ZWQsIGxpa2UgYSBmcmVzaCBydW4KKyAgICAgICAgYnVpbGRfcHkgPSBkaXN0LmdldF9jb21tYW5kX29iaignYnVpbGRfcHknKQorICAgICAgICBidWlsZF9weS5maW5hbGl6ZWQgPSBGYWxzZQorICAgICAgICBidWlsZF9weS5lbnN1cmVfZmluYWxpemVkKCkKKworICAgICAgICBjbWQucnVuKCkKKworICAgICAgICB3aXRoIG9wZW4oY21kLm1hbmlmZXN0KSBhcyBmOgorICAgICAgICAgICAgbWFuaWZlc3QyID0gW2xpbmUuc3RyaXAoKSBmb3IgbGluZSBpbiBmLnJlYWQoKS5zcGxpdCgnXG4nKQorICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGxpbmUuc3RyaXAoKSAhPSAnJ10KKworICAgICAgICAjIERvIHdlIGhhdmUgdGhlIG5ldyBmaWxlIGluIE1BTklGRVNUPworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtYW5pZmVzdDIpLCA0KQorICAgICAgICBzZWxmLmFzc2VydEluKCdkb2MyLnR4dCcsIG1hbmlmZXN0MlstMV0pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X21hbmlmZXN0X21hcmtlcihzZWxmKToKKyAgICAgICAgIyBjaGVjayB0aGF0IGF1dG9nZW5lcmF0ZWQgTUFOSUZFU1RzIGhhdmUgYSBtYXJrZXIKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICB3aXRoIG9wZW4oY21kLm1hbmlmZXN0KSBhcyBmOgorICAgICAgICAgICAgbWFuaWZlc3QgPSBbbGluZS5zdHJpcCgpIGZvciBsaW5lIGluIGYucmVhZCgpLnNwbGl0KCdcbicpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBsaW5lLnN0cmlwKCkgIT0gJyddCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdFswXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnIyBmaWxlIEdFTkVSQVRFRCBieSBwYWNrYWdpbmcsIGRvIE5PVCBlZGl0JykKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfbWFudWFsX21hbmlmZXN0KHNlbGYpOgorICAgICAgICAjIGNoZWNrIHRoYXQgYSBNQU5JRkVTVCB3aXRob3V0IGEgbWFya2VyIGlzIGxlZnQgYWxvbmUKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYudG1wX2RpciwgY21kLm1hbmlmZXN0KSwgJ1JFQURNRS5tYW51YWwnKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICB3aXRoIG9wZW4oY21kLm1hbmlmZXN0KSBhcyBmOgorICAgICAgICAgICAgbWFuaWZlc3QgPSBbbGluZS5zdHJpcCgpIGZvciBsaW5lIGluIGYucmVhZCgpLnNwbGl0KCdcbicpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBsaW5lLnN0cmlwKCkgIT0gJyddCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdCwgWydSRUFETUUubWFudWFsJ10pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X21hbmlmZXN0X2J1aWxkZXIoc2VsZik6CisgICAgICAgIGRpc3QsIGNtZCA9IHNlbGYuZ2V0X2NtZCgpCisgICAgICAgIGNtZC5tYW5pZmVzdF9idWlsZGVycyA9ICdwYWNrYWdpbmcudGVzdHMudGVzdF9jb21tYW5kX3NkaXN0LmJ1aWxkZXInCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2JhaCcsIGNtZC5maWxlbGlzdC5maWxlcykKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoU0Rpc3RUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3Rlc3QucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF90ZXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdhYTFmNzkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF90ZXN0LnB5CkBAIC0wLDAgKzEsMjI0IEBACitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHN5cworaW1wb3J0IHNodXRpbAoraW1wb3J0IHVuaXR0ZXN0IGFzIHV0MQoraW1wb3J0IHBhY2thZ2luZy5kYXRhYmFzZQorCitmcm9tIG9zLnBhdGggaW1wb3J0IGpvaW4KK2Zyb20gb3BlcmF0b3IgaW1wb3J0IGdldGl0ZW0sIHNldGl0ZW0sIGRlbGl0ZW0KK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuYnVpbGQgaW1wb3J0IGJ1aWxkCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IChUZW1wZGlyTWFuYWdlciwgRW52aXJvblJlc3RvcmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExvZ2dpbmdDYXRjaGVyKQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC50ZXN0IGltcG9ydCB0ZXN0Citmcm9tIHBhY2thZ2luZy5jb21tYW5kIGltcG9ydCBzZXRfY29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCisKKworRVhQRUNURURfT1VUUFVUX1JFID0gcicnJ0ZBSUw6IHRlc3RfYmxhaCBcKG15b3dudGVzdG1vZHVsZS5Tb21lVGVzdFwpCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitUcmFjZWJhY2sgXChtb3N0IHJlY2VudCBjYWxsIGxhc3RcKToKKyAgRmlsZSAiLisvbXlvd250ZXN0bW9kdWxlLnB5IiwgbGluZSBcZCssIGluIHRlc3RfYmxhaAorICAgIHNlbGYuZmFpbFwoImhvcnJpYmx5IlwpCitBc3NlcnRpb25FcnJvcjogaG9ycmlibHkKKycnJworCitoZXJlID0gb3MucGF0aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0aChfX2ZpbGVfXykpCisKKworY2xhc3MgTW9ja0J1aWxkQ21kKGJ1aWxkKToKKyAgICBidWlsZF9saWIgPSAibW9jayBidWlsZCBsaWIiCisgICAgY29tbWFuZF9uYW1lID0gJ2J1aWxkJworICAgIHBsYXRfbmFtZSA9ICd3aGF0ZXZlcicKKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHBhc3MKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBzZWxmLl9yZWNvcmQuYXBwZW5kKCJidWlsZCBoYXMgcnVuIikKKworCitjbGFzcyBUZXN0VGVzdChUZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgIEVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgIExvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydQWVRIT05QQVRIJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoVGVzdFRlc3QsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHBhY2thZ2luZy5kYXRhYmFzZS5jbGVhcl9jYWNoZSkKKyAgICAgICAgbmV3X3B5dGhvbnBhdGggPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKGhlcmUpKQorICAgICAgICBweXRob25wYXRoID0gb3MuZW52aXJvbi5nZXQoJ1BZVEhPTlBBVEgnKQorICAgICAgICBpZiBweXRob25wYXRoIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgbmV3X3B5dGhvbnBhdGggPSBvcy5wYXRoc2VwLmpvaW4oKG5ld19weXRob25wYXRoLCBweXRob25wYXRoKSkKKyAgICAgICAgb3MuZW52aXJvblsnUFlUSE9OUEFUSCddID0gbmV3X3B5dGhvbnBhdGgKKworICAgIGRlZiBhc3NlcnRfcmVfbWF0Y2goc2VsZiwgcGF0dGVybiwgc3RyaW5nKToKKyAgICAgICAgZGVmIHF1b3RlKHMpOgorICAgICAgICAgICAgbGluZXMgPSBbJyMjICcgKyBsaW5lIGZvciBsaW5lIGluIHMuc3BsaXQoJ1xuJyldCisgICAgICAgICAgICBzZXAgPSBbIiMiICogNjBdCisgICAgICAgICAgICByZXR1cm4gWycnXSArIHNlcCArIGxpbmVzICsgc2VwCisgICAgICAgIG1zZyA9IHF1b3RlKHBhdHRlcm4pICsgWyJkaWRuJ3QgbWF0Y2giXSArIHF1b3RlKHN0cmluZykKKyAgICAgICAgbXNnID0gIlxuIi5qb2luKG1zZykKKyAgICAgICAgaWYgbm90IHJlLnNlYXJjaChwYXR0ZXJuLCBzdHJpbmcpOgorICAgICAgICAgICAgc2VsZi5mYWlsKG1zZykKKworICAgIGRlZiBwcmVwYXJlX2Rpc3Qoc2VsZiwgZGlzdF9uYW1lKToKKyAgICAgICAgcGtnX2RpciA9IGpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgImRpc3RzIiwgZGlzdF9uYW1lKQorICAgICAgICB0ZW1wX3BrZ19kaXIgPSBqb2luKHNlbGYubWtkdGVtcCgpLCBkaXN0X25hbWUpCisgICAgICAgIHNodXRpbC5jb3B5dHJlZShwa2dfZGlyLCB0ZW1wX3BrZ19kaXIpCisgICAgICAgIHJldHVybiB0ZW1wX3BrZ19kaXIKKworICAgIGRlZiBzYWZlbHlfcmVwbGFjZShzZWxmLCBvYmosIGF0dHIsCisgICAgICAgICAgICAgICAgICAgICAgIG5ld192YWw9Tm9uZSwgZGVsZXRlPUZhbHNlLCBkaWN0aW9uYXJ5PUZhbHNlKToKKyAgICAgICAgIiIiUmVwbGFjZSBhIG9iamVjdCdzIGF0dHJpYnV0ZSByZXR1cm5pbmcgdG8gaXRzIG9yaWdpbmFsIHN0YXRlIGF0IHRoZQorICAgICAgICBlbmQgb2YgdGhlIHRlc3QgcnVuLiBDcmVhdGVzIHRoZSBhdHRyaWJ1dGUgaWYgbm90IHByZXNlbnQgYmVmb3JlCisgICAgICAgIChkZWxldGluZyBhZnRlcndhcmRzKS4gV2hlbiBkZWxldGU9VHJ1ZSwgbWFrZXMgc3VyZSB0aGUgdmFsdWUgaXMgZGVsJ2QKKyAgICAgICAgZm9yIHRoZSB0ZXN0IHJ1bi4gSWYgZGljdGlvbmFyeSBpcyBzZXQgdG8gVHJ1ZSwgb3BlcmF0ZXMgb2YgaXRzIGl0ZW1zCisgICAgICAgIHJhdGhlciB0aGFuIGF0dHJpYnV0ZXMuIiIiCisgICAgICAgIGlmIGRpY3Rpb25hcnk6CisgICAgICAgICAgICBfc2V0YXR0ciwgX2dldGF0dHIsIF9kZWxhdHRyID0gc2V0aXRlbSwgZ2V0aXRlbSwgZGVsaXRlbQorCisgICAgICAgICAgICBkZWYgX2hhc2F0dHIoX2RpY3QsIHZhbHVlKToKKyAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWUgaW4gX2RpY3QKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIF9zZXRhdHRyLCBfZ2V0YXR0ciwgX2RlbGF0dHIsIF9oYXNhdHRyID0gKHNldGF0dHIsIGdldGF0dHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxhdHRyLCBoYXNhdHRyKQorCisgICAgICAgIG9yaWdfaGFzX2F0dHIgPSBfaGFzYXR0cihvYmosIGF0dHIpCisgICAgICAgIGlmIG9yaWdfaGFzX2F0dHI6CisgICAgICAgICAgICBvcmlnX3ZhbCA9IF9nZXRhdHRyKG9iaiwgYXR0cikKKworICAgICAgICBpZiBkZWxldGUgaXMgRmFsc2U6CisgICAgICAgICAgICBfc2V0YXR0cihvYmosIGF0dHIsIG5ld192YWwpCisgICAgICAgIGVsaWYgb3JpZ19oYXNfYXR0cjoKKyAgICAgICAgICAgIF9kZWxhdHRyKG9iaiwgYXR0cikKKworICAgICAgICBkZWYgZG9fY2xlYW51cCgpOgorICAgICAgICAgICAgaWYgb3JpZ19oYXNfYXR0cjoKKyAgICAgICAgICAgICAgICBfc2V0YXR0cihvYmosIGF0dHIsIG9yaWdfdmFsKQorICAgICAgICAgICAgZWxpZiBfaGFzYXR0cihvYmosIGF0dHIpOgorICAgICAgICAgICAgICAgIF9kZWxhdHRyKG9iaiwgYXR0cikKKworICAgICAgICBzZWxmLmFkZENsZWFudXAoZG9fY2xlYW51cCkKKworICAgIGRlZiB0ZXN0X3J1bnNfdW5pdHRlc3Qoc2VsZik6CisgICAgICAgIG1vZHVsZV9uYW1lLCBhX21vZHVsZSA9IHNlbGYucHJlcGFyZV9hX21vZHVsZSgpCisgICAgICAgIHJlY29yZCA9IFtdCisgICAgICAgIGFfbW9kdWxlLnJlY29yZGVyID0gbGFtYmRhICphcmdzOiByZWNvcmQuYXBwZW5kKCJzdWl0ZSIpCisKKyAgICAgICAgY2xhc3MgTW9ja1RleHRUZXN0UnVubmVyOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKCpfLCAqKl9fKToKKyAgICAgICAgICAgICAgICBwYXNzCisKKyAgICAgICAgICAgIGRlZiBydW4oX3NlbGYsIHN1aXRlKToKKyAgICAgICAgICAgICAgICByZWNvcmQuYXBwZW5kKCJydW4iKQorCisgICAgICAgIHNlbGYuc2FmZWx5X3JlcGxhY2UodXQxLCAiVGV4dFRlc3RSdW5uZXIiLCBNb2NrVGV4dFRlc3RSdW5uZXIpCisKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGNtZCA9IHRlc3QoZGlzdCkKKyAgICAgICAgY21kLnN1aXRlID0gIiVzLnJlY29yZGVyIiAlIG1vZHVsZV9uYW1lCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZCwgWyJzdWl0ZSIsICJydW4iXSkKKworICAgIGRlZiB0ZXN0X2J1aWxkc19iZWZvcmVfcnVubmluZ190ZXN0cyhzZWxmKToKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldF9jb21tYW5kLCAncGFja2FnaW5nLmNvbW1hbmQuYnVpbGQuYnVpbGQnKQorICAgICAgICBzZXRfY29tbWFuZCgncGFja2FnaW5nLnRlc3RzLnRlc3RfY29tbWFuZF90ZXN0Lk1vY2tCdWlsZENtZCcpCisKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGRpc3QuZ2V0X2NvbW1hbmRfb2JqKCdidWlsZCcpLl9yZWNvcmQgPSByZWNvcmQgPSBbXQorICAgICAgICBjbWQgPSB0ZXN0KGRpc3QpCisgICAgICAgIGNtZC5ydW5uZXIgPSBzZWxmLnByZXBhcmVfbmFtZWRfZnVuY3Rpb24obGFtYmRhOiBOb25lKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnYnVpbGQgaGFzIHJ1biddLCByZWNvcmQpCisKKyAgICBAdW5pdHRlc3Quc2tpcCgnbmVlZHMgdG8gYmUgd3JpdHRlbicpCisgICAgZGVmIHRlc3Rfd29ya3Nfd2l0aF8ydG8zKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgdGVzdF9jaGVja3NfcmVxdWlyZXMoc2VsZik6CisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBjbWQgPSB0ZXN0KGRpc3QpCisgICAgICAgIHBob255X3Byb2plY3QgPSAnb2hub19vaG5vLWltcG9zc2libGVfMTIzNC1uYW1lX3N0b3AtdGhhdCEnCisgICAgICAgIGNtZC50ZXN0c19yZXF1aXJlID0gW3Bob255X3Byb2plY3RdCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgbG9ncyA9IHNlbGYuZ2V0X2xvZ3MoKQorICAgICAgICBzZWxmLmFzc2VydEluKHBob255X3Byb2plY3QsIGxvZ3NbLTFdKQorCisgICAgZGVmIHByZXBhcmVfYV9tb2R1bGUoc2VsZik6CisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzeXMucGF0aC5hcHBlbmQodG1wX2RpcikKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5wYXRoLnJlbW92ZSwgdG1wX2RpcikKKworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHRtcF9kaXIsICdwYWNrYWdpbmdfdGVzdHNfYS5weScpLCAnJykKKyAgICAgICAgaW1wb3J0IHBhY2thZ2luZ190ZXN0c19hIGFzIGFfbW9kdWxlCisgICAgICAgIHJldHVybiAicGFja2FnaW5nX3Rlc3RzX2EiLCBhX21vZHVsZQorCisgICAgZGVmIHByZXBhcmVfbmFtZWRfZnVuY3Rpb24oc2VsZiwgZnVuYyk6CisgICAgICAgIG1vZHVsZV9uYW1lLCBhX21vZHVsZSA9IHNlbGYucHJlcGFyZV9hX21vZHVsZSgpCisgICAgICAgIGFfbW9kdWxlLnJlY29yZGVyID0gZnVuYworICAgICAgICByZXR1cm4gIiVzLnJlY29yZGVyIiAlIG1vZHVsZV9uYW1lCisKKyAgICBkZWYgdGVzdF9jdXN0b21fcnVubmVyKHNlbGYpOgorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgY21kID0gdGVzdChkaXN0KQorICAgICAgICByZWNvcmQgPSBbXQorICAgICAgICBjbWQucnVubmVyID0gc2VsZi5wcmVwYXJlX25hbWVkX2Z1bmN0aW9uKAorICAgICAgICAgICAgbGFtYmRhOiByZWNvcmQuYXBwZW5kKCJydW5uZXIgY2FsbGVkIikpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWyJydW5uZXIgY2FsbGVkIl0sIHJlY29yZCkKKworICAgIGRlZiBwcmVwYXJlX21vY2tfdXQyKHNlbGYpOgorICAgICAgICBjbGFzcyBNb2NrVVRDbGFzczoKKyAgICAgICAgICAgIGRlZiBfX2luaXRfXygqXywgKipfXyk6CisgICAgICAgICAgICAgICAgcGFzcworCisgICAgICAgICAgICBkZWYgZGlzY292ZXIoc2VsZik6CisgICAgICAgICAgICAgICAgcGFzcworCisgICAgICAgICAgICBkZWYgcnVuKHNlbGYsIF8pOgorICAgICAgICAgICAgICAgIHBhc3MKKworICAgICAgICBjbGFzcyBNb2NrVVRNb2R1bGU6CisgICAgICAgICAgICBUZXN0TG9hZGVyID0gTW9ja1VUQ2xhc3MKKyAgICAgICAgICAgIFRleHRUZXN0UnVubmVyID0gTW9ja1VUQ2xhc3MKKworICAgICAgICBtb2NrX3V0MiA9IE1vY2tVVE1vZHVsZSgpCisgICAgICAgIHNlbGYuc2FmZWx5X3JlcGxhY2Uoc3lzLm1vZHVsZXMsICJ1bml0dGVzdDIiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vY2tfdXQyLCBkaWN0aW9uYXJ5PVRydWUpCisgICAgICAgIHJldHVybiBtb2NrX3V0MgorCisgICAgZGVmIHRlc3RfZ2V0c191bml0dGVzdF9kaXNjb3Zlcnkoc2VsZik6CisgICAgICAgIG1vY2tfdXQyID0gc2VsZi5wcmVwYXJlX21vY2tfdXQyKCkKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGNtZCA9IHRlc3QoZGlzdCkKKyAgICAgICAgc2VsZi5zYWZlbHlfcmVwbGFjZSh1dDEuVGVzdExvYWRlciwgImRpc2NvdmVyIiwgbGFtYmRhOiBOb25lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5nZXRfdXRfd2l0aF9kaXNjb3ZlcnkoKSwgdXQxKQorCisgICAgICAgIGRlbCB1dDEuVGVzdExvYWRlci5kaXNjb3ZlcgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5nZXRfdXRfd2l0aF9kaXNjb3ZlcnkoKSwgbW9ja191dDIpCisKKyAgICBkZWYgdGVzdF9jYWxsc19kaXNjb3ZlcihzZWxmKToKKyAgICAgICAgc2VsZi5zYWZlbHlfcmVwbGFjZSh1dDEuVGVzdExvYWRlciwgImRpc2NvdmVyIiwgZGVsZXRlPVRydWUpCisgICAgICAgIG1vY2tfdXQyID0gc2VsZi5wcmVwYXJlX21vY2tfdXQyKCkKKyAgICAgICAgcmVjb3JkID0gW10KKyAgICAgICAgbW9ja191dDIuVGVzdExvYWRlci5kaXNjb3ZlciA9IGxhbWJkYSBzZWxmLCBwYXRoOiByZWNvcmQuYXBwZW5kKHBhdGgpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBjbWQgPSB0ZXN0KGRpc3QpCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFtvcy5jdXJkaXJdLCByZWNvcmQpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKFRlc3RUZXN0KQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfdXBsb2FkLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfdXBsb2FkLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFmNjhjMWQKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF91cGxvYWQucHkKQEAgLTAsMCArMSwxNTkgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC51cGxvYWQuIiIiCitpbXBvcnQgb3MKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC51cGxvYWQgaW1wb3J0IHVwbG9hZAorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgUHlQSVNlcnZlclRlc3RDYXNlCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgdGhyZWFkaW5nID0gTm9uZQorICAgIFB5UElTZXJ2ZXJUZXN0Q2FzZSA9IHVuaXR0ZXN0LlRlc3RDYXNlCisKKworUFlQSVJDX05PUEFTU1dPUkQgPSAiIiJcCitbZGlzdHV0aWxzXQorCitpbmRleC1zZXJ2ZXJzID0KKyAgICBzZXJ2ZXIxCisKK1tzZXJ2ZXIxXQordXNlcm5hbWU6bWUKKyIiIgorCitQWVBJUkMgPSAiIiJcCitbZGlzdHV0aWxzXQorCitpbmRleC1zZXJ2ZXJzID0KKyAgICBzZXJ2ZXIxCisgICAgc2VydmVyMgorCitbc2VydmVyMV0KK3VzZXJuYW1lOm1lCitwYXNzd29yZDpzZWNyZXQKKworW3NlcnZlcjJdCit1c2VybmFtZTptZWFnYWluCitwYXNzd29yZDogc2VjcmV0CityZWFsbTphY21lCityZXBvc2l0b3J5Omh0dHA6Ly9hbm90aGVyLnB5cGkvCisiIiIKKworCitAdW5pdHRlc3Quc2tpcElmKHRocmVhZGluZyBpcyBOb25lLCAnbmVlZHMgdGhyZWFkaW5nJykKK2NsYXNzIFVwbG9hZFRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsIHN1cHBvcnQuRW52aXJvblJlc3RvcmVyLAorICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwgUHlQSVNlcnZlclRlc3RDYXNlKToKKworICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnSE9NRSddCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFVwbG9hZFRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYudG1wX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNlbGYucmMgPSBvcy5wYXRoLmpvaW4oc2VsZi50bXBfZGlyLCAnLnB5cGlyYycpCisgICAgICAgIG9zLmVudmlyb25bJ0hPTUUnXSA9IHNlbGYudG1wX2RpcgorCisgICAgZGVmIHRlc3RfZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIyBuZXcgZm9ybWF0CisgICAgICAgIHNlbGYud3JpdGVfZmlsZShzZWxmLnJjLCBQWVBJUkMpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBjbWQgPSB1cGxvYWQoZGlzdCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBmb3IgYXR0ciwgZXhwZWN0ZWQgaW4gKCgndXNlcm5hbWUnLCAnbWUnKSwgKCdwYXNzd29yZCcsICdzZWNyZXQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ3JlYWxtJywgJ3B5cGknKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ3JlcG9zaXRvcnknLCAnaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpJykpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRhdHRyKGNtZCwgYXR0ciksIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3RfZmluYWxpemVfb3B0aW9uc191bnNpZ25lZF9pZGVudGl0eV9yYWlzZXNfZXhjZXB0aW9uKHNlbGYpOgorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoc2VsZi5yYywgUFlQSVJDKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgY21kID0gdXBsb2FkKGRpc3QpCisgICAgICAgIGNtZC5pZGVudGl0eSA9IFRydWUKKyAgICAgICAgY21kLnNpZ24gPSBGYWxzZQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmZpbmFsaXplX29wdGlvbnMpCisKKyAgICBkZWYgdGVzdF9zYXZlZF9wYXNzd29yZChzZWxmKToKKyAgICAgICAgIyBmaWxlIHdpdGggbm8gcGFzc3dvcmQKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKHNlbGYucmMsIFBZUElSQ19OT1BBU1NXT1JEKQorCisgICAgICAgICMgbWFrZSBzdXJlIGl0IHBhc3NlcworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgY21kID0gdXBsb2FkKGRpc3QpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQucGFzc3dvcmQsIE5vbmUpCisKKyAgICAgICAgIyBtYWtlIHN1cmUgd2UgZ2V0IGl0IGFzIHdlbGwsIGlmIGFub3RoZXIgY29tbWFuZAorICAgICAgICAjIGluaXRpYWxpemVkIGl0IGF0IHRoZSBkaXN0IGxldmVsCisgICAgICAgIGRpc3QucGFzc3dvcmQgPSAneHh4JworICAgICAgICBjbWQgPSB1cGxvYWQoZGlzdCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5wYXNzd29yZCwgJ3h4eCcpCisKKyAgICBkZWYgdGVzdF91cGxvYWRfd2l0aG91dF9maWxlc19yYWlzZXNfZXhjZXB0aW9uKHNlbGYpOgorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgY21kID0gdXBsb2FkKGRpc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ09wdGlvbkVycm9yLCBjbWQucnVuKQorCisgICAgZGVmIHRlc3RfdXBsb2FkKHNlbGYpOgorICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJ3h4eCcpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShwYXRoKQorICAgICAgICBjb21tYW5kLCBweXZlcnNpb24sIGZpbGVuYW1lID0gJ3h4eCcsICczLjMnLCBwYXRoCisgICAgICAgIGRpc3RfZmlsZXMgPSBbKGNvbW1hbmQsIHB5dmVyc2lvbiwgZmlsZW5hbWUpXQorCisgICAgICAgICMgbGV0J3MgcnVuIGl0CisgICAgICAgIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KGRpc3RfZmlsZXM9ZGlzdF9maWxlcywgYXV0aG9yPSdkw6lkw6knKVsxXQorICAgICAgICBjbWQgPSB1cGxvYWQoZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucmVwb3NpdG9yeSA9IHNlbGYucHlwaS5mdWxsX2FkZHJlc3MKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyB3aGF0IGRpZCB3ZSBzZW5kPworICAgICAgICBoYW5kbGVyLCByZXF1ZXN0X2RhdGEgPSBzZWxmLnB5cGkucmVxdWVzdHNbLTFdCisgICAgICAgIGhlYWRlcnMgPSBoYW5kbGVyLmhlYWRlcnMKKyAgICAgICAgc2VsZi5hc3NlcnRJbignZMOpZMOpJy5lbmNvZGUoJ3V0Zi04JyksIHJlcXVlc3RfZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ3h4eCcsIHJlcXVlc3RfZGF0YSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGludChoZWFkZXJzWydjb250ZW50LWxlbmd0aCddKSwgbGVuKHJlcXVlc3RfZGF0YSkpCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzcyhpbnQoaGVhZGVyc1snY29udGVudC1sZW5ndGgnXSksIDI1MDApCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShoZWFkZXJzWydjb250ZW50LXR5cGUnXS5zdGFydHN3aXRoKAorICAgICAgICAgICAgJ211bHRpcGFydC9mb3JtLWRhdGEnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYW5kbGVyLmNvbW1hbmQsICdQT1NUJykKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignXG4nLCBoZWFkZXJzWydhdXRob3JpemF0aW9uJ10pCisKKyAgICBkZWYgdGVzdF91cGxvYWRfZG9jcyhzZWxmKToKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLnRtcF9kaXIsICd4eHgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUocGF0aCkKKyAgICAgICAgY29tbWFuZCwgcHl2ZXJzaW9uLCBmaWxlbmFtZSA9ICd4eHgnLCAnMy4zJywgcGF0aAorICAgICAgICBkaXN0X2ZpbGVzID0gWyhjb21tYW5kLCBweXZlcnNpb24sIGZpbGVuYW1lKV0KKyAgICAgICAgZG9jc19wYXRoID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgImJ1aWxkIiwgImRvY3MiKQorICAgICAgICBvcy5tYWtlZGlycyhkb2NzX3BhdGgpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoZG9jc19wYXRoLCAiaW5kZXguaHRtbCIpLCAieWVsbG93IikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKHNlbGYucmMsIFBZUElSQykKKworICAgICAgICAjIGxldCdzIHJ1biBpdAorICAgICAgICBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdChkaXN0X2ZpbGVzPWRpc3RfZmlsZXMsIGF1dGhvcj0nZMOpZMOpJylbMV0KKworICAgICAgICBjbWQgPSB1cGxvYWQoZGlzdCkKKyAgICAgICAgY21kLmdldF9maW5hbGl6ZWRfY29tbWFuZCgiYnVpbGQiKS5ydW4oKQorICAgICAgICBjbWQudXBsb2FkX2RvY3MgPSBUcnVlCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJlcG9zaXRvcnkgPSBzZWxmLnB5cGkuZnVsbF9hZGRyZXNzCisgICAgICAgIG9zLmNoZGlyKHNlbGYudG1wX2RpcikKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgaGFuZGxlciwgcmVxdWVzdF9kYXRhID0gc2VsZi5weXBpLnJlcXVlc3RzWy0xXQorICAgICAgICBhY3Rpb24sIG5hbWUsIGNvbnRlbnQgPSByZXF1ZXN0X2RhdGEuc3BsaXQoCisgICAgICAgICAgICAiLS0tLS0tLS0tLS0tLS0tLUdIU0tGSkRMR0RTNzU0M0ZKS0xGSFJFNzU2NDI3NTY3NDMyNTQiCisgICAgICAgICAgICAuZW5jb2RlKCkpWzE6NF0KKworICAgICAgICBzZWxmLmFzc2VydEluKGInbmFtZT0iOmFjdGlvbiInLCBhY3Rpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYidkb2NfdXBsb2FkJywgYWN0aW9uKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShVcGxvYWRUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3VwbG9hZF9kb2NzLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfdXBsb2FkX2RvY3MucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODAzZTczMwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3VwbG9hZF9kb2NzLnB5CkBAIC0wLDAgKzEsMTg2IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmNvbW1hbmQudXBsb2FkX2RvY3MuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBzaHV0aWwKK2ltcG9ydCBsb2dnaW5nCitpbXBvcnQgemlwZmlsZQordHJ5OgorICAgIGltcG9ydCBfc3NsCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgX3NzbCA9IE5vbmUKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZCBpbXBvcnQgdXBsb2FkX2RvY3MgYXMgdXBsb2FkX2RvY3NfbW9kCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLnVwbG9hZF9kb2NzIGltcG9ydCB1cGxvYWRfZG9jcywgemlwX2RpcgorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0ZpbGVFcnJvciwgUGFja2FnaW5nT3B0aW9uRXJyb3IKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0Cit0cnk6CisgICAgaW1wb3J0IHRocmVhZGluZworICAgIGZyb20gcGFja2FnaW5nLnRlc3RzLnB5cGlfc2VydmVyIGltcG9ydCBQeVBJU2VydmVyVGVzdENhc2UKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICB0aHJlYWRpbmcgPSBOb25lCisgICAgUHlQSVNlcnZlclRlc3RDYXNlID0gdW5pdHRlc3QuVGVzdENhc2UKKworCitQWVBJUkMgPSAiIiJcCitbZGlzdHV0aWxzXQoraW5kZXgtc2VydmVycyA9IHNlcnZlcjEKKworW3NlcnZlcjFdCityZXBvc2l0b3J5ID0gJXMKK3VzZXJuYW1lID0gcmVhbF9zbGltX3NoYWR5CitwYXNzd29yZCA9IGxvbmdfaXNsYW5kCisiIiIKKworCitAdW5pdHRlc3Quc2tpcElmKHRocmVhZGluZyBpcyBOb25lLCAiTmVlZHMgdGhyZWFkaW5nIikKK2NsYXNzIFVwbG9hZERvY3NUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuRW52aXJvblJlc3RvcmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlQSVNlcnZlclRlc3RDYXNlKToKKworICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnSE9NRSddCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFVwbG9hZERvY3NUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZWxmLnJjID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJy5weXBpcmMnKQorICAgICAgICBvcy5lbnZpcm9uWydIT01FJ10gPSBzZWxmLnRtcF9kaXIKKyAgICAgICAgc2VsZi5kaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgc2VsZi5kaXN0Lm1ldGFkYXRhWydOYW1lJ10gPSAiZGlzdHItbmFtZSIKKyAgICAgICAgc2VsZi5jbWQgPSB1cGxvYWRfZG9jcyhzZWxmLmRpc3QpCisKKyAgICBkZWYgdGVzdF9kZWZhdWx0X3VwbG9hZGRpcihzZWxmKToKKyAgICAgICAgc2FuZGJveCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG9zLmNoZGlyKHNhbmRib3gpCisgICAgICAgIG9zLm1rZGlyKCJidWlsZCIpCisgICAgICAgIHNlbGYucHJlcGFyZV9zYW1wbGVfZGlyKCJidWlsZCIpCisgICAgICAgIHNlbGYuY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY21kLnVwbG9hZF9kaXIsIG9zLnBhdGguam9pbigiYnVpbGQiLCAiZG9jcyIpKQorCisgICAgZGVmIHRlc3RfZGVmYXVsdF91cGxvYWRkaXJfbG9va3NfZm9yX2RvY19hbHNvKHNlbGYpOgorICAgICAgICBzYW5kYm94ID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgb3MuY2hkaXIoc2FuZGJveCkKKyAgICAgICAgb3MubWtkaXIoImJ1aWxkIikKKyAgICAgICAgc2VsZi5wcmVwYXJlX3NhbXBsZV9kaXIoImJ1aWxkIikKKyAgICAgICAgb3MucmVuYW1lKG9zLnBhdGguam9pbigiYnVpbGQiLCAiZG9jcyIpLCBvcy5wYXRoLmpvaW4oImJ1aWxkIiwgImRvYyIpKQorICAgICAgICBzZWxmLmNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNtZC51cGxvYWRfZGlyLCBvcy5wYXRoLmpvaW4oImJ1aWxkIiwgImRvYyIpKQorCisgICAgZGVmIHByZXBhcmVfc2FtcGxlX2RpcihzZWxmLCBzYW1wbGVfZGlyPU5vbmUpOgorICAgICAgICBpZiBzYW1wbGVfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBzYW1wbGVfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgb3MubWtkaXIob3MucGF0aC5qb2luKHNhbXBsZV9kaXIsICJkb2NzIikpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2FtcGxlX2RpciwgImRvY3MiLCAiaW5kZXguaHRtbCIpLCAiQ2UgbW9ydGVsIGVubnVpIikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChzYW1wbGVfZGlyLCAiaW5kZXguaHRtbCIpLCAiT2ggbGEgbGEiKQorICAgICAgICByZXR1cm4gc2FtcGxlX2RpcgorCisgICAgZGVmIHRlc3RfemlwX2RpcihzZWxmKToKKyAgICAgICAgc291cmNlX2RpciA9IHNlbGYucHJlcGFyZV9zYW1wbGVfZGlyKCkKKyAgICAgICAgY29tcHJlc3NlZCA9IHppcF9kaXIoc291cmNlX2RpcikKKworICAgICAgICB6aXBfZiA9IHppcGZpbGUuWmlwRmlsZShjb21wcmVzc2VkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHppcF9mLm5hbWVsaXN0KCksIFsnaW5kZXguaHRtbCcsICdkb2NzL2luZGV4Lmh0bWwnXSkKKworICAgIGRlZiBwcmVwYXJlX2NvbW1hbmQoc2VsZik6CisgICAgICAgIHNlbGYuY21kLnVwbG9hZF9kaXIgPSBzZWxmLnByZXBhcmVfc2FtcGxlX2RpcigpCisgICAgICAgIHNlbGYuY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmNtZC5yZXBvc2l0b3J5ID0gc2VsZi5weXBpLmZ1bGxfYWRkcmVzcworICAgICAgICBzZWxmLmNtZC51c2VybmFtZSA9ICJ1c2VybmFtZSIKKyAgICAgICAgc2VsZi5jbWQucGFzc3dvcmQgPSAicGFzc3dvcmQiCisKKyAgICBkZWYgdGVzdF91cGxvYWQoc2VsZik6CisgICAgICAgIHNlbGYucHJlcGFyZV9jb21tYW5kKCkKKyAgICAgICAgc2VsZi5jbWQucnVuKCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLnB5cGkucmVxdWVzdHMpLCAxKQorICAgICAgICBoYW5kbGVyLCByZXF1ZXN0X2RhdGEgPSBzZWxmLnB5cGkucmVxdWVzdHNbLTFdCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYiJjb250ZW50IiwgcmVxdWVzdF9kYXRhKQorICAgICAgICBzZWxmLmFzc2VydEluKCJCYXNpYyIsIGhhbmRsZXIuaGVhZGVyc1snYXV0aG9yaXphdGlvbiddKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFuZGxlci5oZWFkZXJzWydjb250ZW50LXR5cGUnXQorICAgICAgICAgICAgLnN0YXJ0c3dpdGgoJ211bHRpcGFydC9mb3JtLWRhdGE7JykpCisKKyAgICAgICAgYWN0aW9uLCBuYW1lLCB2ZXJzaW9uLCBjb250ZW50ID0gcmVxdWVzdF9kYXRhLnNwbGl0KAorICAgICAgICAgICAgYictLS0tLS0tLS0tLS0tLS0tR0hTS0ZKRExHRFM3NTQzRkpLTEZIUkU3NTY0Mjc1Njc0MzI1NCcpWzE6NV0KKworICAgICAgICAjIGNoZWNrIHRoYXQgd2UgcGlja2VkIHRoZSByaWdodCBjaHVua3MKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ25hbWU9IjphY3Rpb24iJywgYWN0aW9uKQorICAgICAgICBzZWxmLmFzc2VydEluKGInbmFtZT0ibmFtZSInLCBuYW1lKQorICAgICAgICBzZWxmLmFzc2VydEluKGInbmFtZT0idmVyc2lvbiInLCB2ZXJzaW9uKQorICAgICAgICBzZWxmLmFzc2VydEluKGInbmFtZT0iY29udGVudCInLCBjb250ZW50KQorCisgICAgICAgICMgY2hlY2sgdGhlaXIgY29udGVudHMKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ2RvY191cGxvYWQnLCBhY3Rpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYidkaXN0ci1uYW1lJywgbmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ2RvY3MvaW5kZXguaHRtbCcsIGNvbnRlbnQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYidDZSBtb3J0ZWwgZW5udWknLCBjb250ZW50KQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfc3NsIGlzIE5vbmUsICdOZWVkcyBTU0wgc3VwcG9ydCcpCisgICAgZGVmIHRlc3RfaHR0cHNfY29ubmVjdGlvbihzZWxmKToKKyAgICAgICAgc2VsZi5odHRwc19jYWxsZWQgPSBGYWxzZQorICAgICAgICBzZWxmLmFkZENsZWFudXAoCisgICAgICAgICAgICBzZXRhdHRyLCB1cGxvYWRfZG9jc19tb2QuaHR0cC5jbGllbnQsICdIVFRQU0Nvbm5lY3Rpb24nLAorICAgICAgICAgICAgdXBsb2FkX2RvY3NfbW9kLmh0dHAuY2xpZW50LkhUVFBTQ29ubmVjdGlvbikKKworICAgICAgICBkZWYgaHR0cHNfY29ubl93cmFwcGVyKCphcmdzKToKKyAgICAgICAgICAgIHNlbGYuaHR0cHNfY2FsbGVkID0gVHJ1ZQorICAgICAgICAgICAgIyB0aGUgdGVzdGluZyBzZXJ2ZXIgaXMgaHR0cAorICAgICAgICAgICAgcmV0dXJuIHVwbG9hZF9kb2NzX21vZC5odHRwLmNsaWVudC5IVFRQQ29ubmVjdGlvbigqYXJncykKKworICAgICAgICB1cGxvYWRfZG9jc19tb2QuaHR0cC5jbGllbnQuSFRUUFNDb25uZWN0aW9uID0gaHR0cHNfY29ubl93cmFwcGVyCisKKyAgICAgICAgc2VsZi5wcmVwYXJlX2NvbW1hbmQoKQorICAgICAgICBzZWxmLmNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlbGYuaHR0cHNfY2FsbGVkKQorCisgICAgICAgIHNlbGYuY21kLnJlcG9zaXRvcnkgPSBzZWxmLmNtZC5yZXBvc2l0b3J5LnJlcGxhY2UoImh0dHAiLCAiaHR0cHMiKQorICAgICAgICBzZWxmLmNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5odHRwc19jYWxsZWQpCisKKyAgICBkZWYgdGVzdF9oYW5kbGluZ19yZXNwb25zZShzZWxmKToKKyAgICAgICAgc2VsZi5weXBpLmRlZmF1bHRfcmVzcG9uc2Vfc3RhdHVzID0gJzQwMyBGb3JiaWRkZW4nCisgICAgICAgIHNlbGYucHJlcGFyZV9jb21tYW5kKCkKKyAgICAgICAgc2VsZi5jbWQucnVuKCkKKyAgICAgICAgZXJyb3JzID0gc2VsZi5nZXRfbG9ncyhsb2dnaW5nLkVSUk9SKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihlcnJvcnMpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEluKCdVcGxvYWQgZmFpbGVkICg0MDMpOiBGb3JiaWRkZW4nLCBlcnJvcnNbMF0pCisKKyAgICAgICAgc2VsZi5weXBpLmRlZmF1bHRfcmVzcG9uc2Vfc3RhdHVzID0gJzMwMSBNb3ZlZCBQZXJtYW5lbnRseScKKyAgICAgICAgc2VsZi5weXBpLmRlZmF1bHRfcmVzcG9uc2VfaGVhZGVycy5hcHBlbmQoCisgICAgICAgICAgICAoIkxvY2F0aW9uIiwgImJyYW5kX25ld19sb2NhdGlvbiIpKQorICAgICAgICBzZWxmLmNtZC5ydW4oKQorICAgICAgICBsYXN0bG9nID0gc2VsZi5nZXRfbG9ncyhsb2dnaW5nLklORk8pWy0xXQorICAgICAgICBzZWxmLmFzc2VydEluKCdicmFuZF9uZXdfbG9jYXRpb24nLCBsYXN0bG9nKQorCisgICAgZGVmIHRlc3RfcmVhZHNfcHlwaXJjX2RhdGEoc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfZmlsZShzZWxmLnJjLCBQWVBJUkMgJSBzZWxmLnB5cGkuZnVsbF9hZGRyZXNzKQorICAgICAgICBzZWxmLmNtZC5yZXBvc2l0b3J5ID0gc2VsZi5weXBpLmZ1bGxfYWRkcmVzcworICAgICAgICBzZWxmLmNtZC51cGxvYWRfZGlyID0gc2VsZi5wcmVwYXJlX3NhbXBsZV9kaXIoKQorICAgICAgICBzZWxmLmNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNtZC51c2VybmFtZSwgInJlYWxfc2xpbV9zaGFkeSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jbWQucGFzc3dvcmQsICJsb25nX2lzbGFuZCIpCisKKyAgICBkZWYgdGVzdF9jaGVja3NfaW5kZXhfaHRtbF9wcmVzZW5jZShzZWxmKToKKyAgICAgICAgc2VsZi5jbWQudXBsb2FkX2RpciA9IHNlbGYucHJlcGFyZV9zYW1wbGVfZGlyKCkKKyAgICAgICAgb3MucmVtb3ZlKG9zLnBhdGguam9pbihzZWxmLmNtZC51cGxvYWRfZGlyLCAiaW5kZXguaHRtbCIpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdGaWxlRXJyb3IsIHNlbGYuY21kLmVuc3VyZV9maW5hbGl6ZWQpCisKKyAgICBkZWYgdGVzdF9jaGVja3NfdXBsb2FkX2RpcihzZWxmKToKKyAgICAgICAgc2VsZi5jbWQudXBsb2FkX2RpciA9IHNlbGYucHJlcGFyZV9zYW1wbGVfZGlyKCkKKyAgICAgICAgc2h1dGlsLnJtdHJlZShvcy5wYXRoLmpvaW4oc2VsZi5jbWQudXBsb2FkX2RpcikpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ09wdGlvbkVycm9yLCBzZWxmLmNtZC5lbnN1cmVfZmluYWxpemVkKQorCisgICAgZGVmIHRlc3Rfc2hvd19yZXNwb25zZShzZWxmKToKKyAgICAgICAgc2VsZi5wcmVwYXJlX2NvbW1hbmQoKQorICAgICAgICBzZWxmLmNtZC5zaG93X3Jlc3BvbnNlID0gVHJ1ZQorICAgICAgICBzZWxmLmNtZC5ydW4oKQorICAgICAgICByZWNvcmQgPSBzZWxmLmdldF9sb2dzKGxvZ2dpbmcuSU5GTylbLTFdCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZWNvcmQsICJzaG91bGQgcmVwb3J0IHRoZSByZXNwb25zZSIpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi5weXBpLmRlZmF1bHRfcmVzcG9uc2VfZGF0YSwgcmVjb3JkKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShVcGxvYWREb2NzVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tcGlsZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmM2MjBjYgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21waWxlci5weQpAQCAtMCwwICsxLDY2IEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNvbXBpbGVyLiIiIgoraW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCAoZ2V0X2RlZmF1bHRfY29tcGlsZXIsIGN1c3RvbWl6ZV9jb21waWxlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuX2xpYl9vcHRpb25zKQorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgRmFrZUNvbXBpbGVyOgorCisgICAgbmFtZSA9ICdmYWtlJworICAgIGRlc2NyaXB0aW9uID0gJ0Zha2UnCisKKyAgICBkZWYgbGlicmFyeV9kaXJfb3B0aW9uKHNlbGYsIGRpcik6CisgICAgICAgIHJldHVybiAiLUwiICsgZGlyCisKKyAgICBkZWYgcnVudGltZV9saWJyYXJ5X2Rpcl9vcHRpb24oc2VsZiwgZGlyKToKKyAgICAgICAgcmV0dXJuIFsiLWNvb2wiLCAiLVIiICsgZGlyXQorCisgICAgZGVmIGZpbmRfbGlicmFyeV9maWxlKHNlbGYsIGRpcnMsIGxpYiwgZGVidWc9RmFsc2UpOgorICAgICAgICByZXR1cm4gJ2ZvdW5kJworCisgICAgZGVmIGxpYnJhcnlfb3B0aW9uKHNlbGYsIGxpYik6CisgICAgICAgIHJldHVybiAiLWwiICsgbGliCisKKworY2xhc3MgQ29tcGlsZXJUZXN0Q2FzZShzdXBwb3J0LkVudmlyb25SZXN0b3JlciwgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydBUicsICdBUkZMQUdTJ10KKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGdldF9kZWZhdWx0X2NvbXBpbGVyKCkgPT0gJ3VuaXgnLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2lycmVsZXZhbnQgaWYgZGVmYXVsdCBjb21waWxlciBpcyBub3QgdW5peCcpCisgICAgZGVmIHRlc3RfY3VzdG9taXplX2NvbXBpbGVyKHNlbGYpOgorCisgICAgICAgIG9zLmVudmlyb25bJ0FSJ10gPSAnbXlfYXInCisgICAgICAgIG9zLmVudmlyb25bJ0FSRkxBR1MnXSA9ICctYXJmbGFncycKKworICAgICAgICAjIG1ha2Ugc3VyZSBBUiBnZXRzIGNhdWdodAorICAgICAgICBjbGFzcyBjb21waWxlcjoKKyAgICAgICAgICAgIG5hbWUgPSAndW5peCcKKworICAgICAgICAgICAgZGVmIHNldF9leGVjdXRhYmxlcyhzZWxmLCAqKmt3KToKKyAgICAgICAgICAgICAgICBzZWxmLmV4ZXMgPSBrdworCisgICAgICAgIGNvbXAgPSBjb21waWxlcigpCisgICAgICAgIGN1c3RvbWl6ZV9jb21waWxlcihjb21wKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbXAuZXhlc1snYXJjaGl2ZXInXSwgJ215X2FyIC1hcmZsYWdzJykKKworICAgIGRlZiB0ZXN0X2dlbl9saWJfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgY29tcGlsZXIgPSBGYWtlQ29tcGlsZXIoKQorICAgICAgICBsaWJkaXJzID0gWydsaWIxJywgJ2xpYjInXQorICAgICAgICBydW5saWJkaXJzID0gWydydW5saWIxJ10KKyAgICAgICAgbGlicyA9IFtvcy5wYXRoLmpvaW4oJ2RpcicsICduYW1lJyksICduYW1lMiddCisKKyAgICAgICAgb3B0cyA9IGdlbl9saWJfb3B0aW9ucyhjb21waWxlciwgbGliZGlycywgcnVubGliZGlycywgbGlicykKKyAgICAgICAgd2FudGVkID0gWyctTGxpYjEnLCAnLUxsaWIyJywgJy1jb29sJywgJy1ScnVubGliMScsICdmb3VuZCcsCisgICAgICAgICAgICAgICAgICAnLWxuYW1lMiddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3B0cywgd2FudGVkKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShDb21waWxlclRlc3RDYXNlKQorCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29uZmlnLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbmZpZy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZDc2YjI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbmZpZy5weQpAQCAtMCwwICsxLDUxOSBAQAorIiIiVGVzdHMgZm9yIHBhY2thZ2luZy5jb25maWcuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGNvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdGaWxlRXJyb3IsIFBhY2thZ2luZ09wdGlvbkVycm9yCitmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgbmV3X2NvbXBpbGVyLCBfQ09NUElMRVJTCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLnNkaXN0IGltcG9ydCBzZGlzdAorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IHJlcXVpcmVzX3psaWIKKworCitTRVRVUF9DRkcgPSAiIiIKK1ttZXRhZGF0YV0KK25hbWUgPSBSZXN0aW5nUGFycm90Cit2ZXJzaW9uID0gMC42LjQKK2F1dGhvciA9IENhcmwgTWV5ZXIKK2F1dGhvcl9lbWFpbCA9IGNhcmxAb2RkYmlyZC5uZXQKK21haW50YWluZXIgPSDDiXJpYyBBcmF1am8KK21haW50YWluZXJfZW1haWwgPSBtZXJ3b2tAbmV0d29rLm9yZworc3VtbWFyeSA9IEEgc2FtcGxlIHByb2plY3QgZGVtb25zdHJhdGluZyBwYWNrYWdpbmcKK2Rlc2NyaXB0aW9uLWZpbGUgPSAlKGRlc2NyaXB0aW9uLWZpbGUpcwora2V5d29yZHMgPSBwYWNrYWdpbmcsIHNhbXBsZSBwcm9qZWN0CisKK2NsYXNzaWZpZXIgPQorICBEZXZlbG9wbWVudCBTdGF0dXMgOjogNCAtIEJldGEKKyAgRW52aXJvbm1lbnQgOjogQ29uc29sZSAoVGV4dCBCYXNlZCkKKyAgRW52aXJvbm1lbnQgOjogWDExIEFwcGxpY2F0aW9ucyA6OiBHVEs7IHB5dGhvbl92ZXJzaW9uIDwgJzMnCisgIExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IE1JVCBMaWNlbnNlCisgIFByb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbgorICBQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMgorICBQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMworCityZXF1aXJlc19weXRob24gPSA+PTIuNCwgPDMuMgorCityZXF1aXJlc19kaXN0ID0KKyAgUGV0U2hvcHBlCisgIE1pY2hhZWxQYWxpbiAoPiAxLjEpCisgIHB5d2luMzI7IHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInCisgIHB5c3FsaXRlMjsgcHl0aG9uX3ZlcnNpb24gPCAnMi41JworICBpbm90aWZ5ICgwLjAuMSk7IHN5cy5wbGF0Zm9ybSA9PSAnbGludXgyJworCityZXF1aXJlc19leHRlcm5hbCA9IGxpYnhtbDIKKworcHJvdmlkZXNfZGlzdCA9IHBhY2thZ2luZy1zYW1wbGUtcHJvamVjdCAoMC4yKQorICAgICAgICAgICAgICAgIHVuaXR0ZXN0Mi1zYW1wbGUtcHJvamVjdAorCitwcm9qZWN0X3VybCA9CisgIE1haW4gcmVwb3NpdG9yeSwgaHR0cDovL2JpdGJ1Y2tldC5vcmcvY2FybGptL3NhbXBsZS1kaXN0dXRpbHMyLXByb2plY3QKKyAgRm9yayBpbiBwcm9ncmVzcywgaHR0cDovL2JpdGJ1Y2tldC5vcmcvTWVyd29rL3NhbXBsZS1kaXN0dXRpbHMyLXByb2plY3QKKworW2ZpbGVzXQorcGFja2FnZXNfcm9vdCA9IHNyYworCitwYWNrYWdlcyA9IG9uZQorICAgICAgICAgICB0d28KKyAgICAgICAgICAgdGhyZWUKKworbW9kdWxlcyA9IGhhdmVuCisKK3NjcmlwdHMgPQorICBzY3JpcHQxLnB5CisgIHNjcmlwdHMvZmluZC1jb2NvbnV0cworICBiaW4vdGF1bnQKKworcGFja2FnZV9kYXRhID0KKyAgY2hlZXNlID0gZGF0YS90ZW1wbGF0ZXMvKiBkb2MvKgorICAgICAgZG9jL2ltYWdlcy8qLnBuZworCisKK2V4dHJhX2ZpbGVzID0gJShleHRyYS1maWxlcylzCisKKyMgUmVwbGFjZXMgTUFOSUZFU1QuaW4KKyMgRklYTUUgbm8sIGl0J3MgZXh0cmFfZmlsZXMKKyMgKGJ1dCBzZGlzdF9leHRyYSBpcyBhIGJldHRlciBuYW1lLCBzaG91bGQgdXNlIGl0KQorc2Rpc3RfZXh0cmEgPQorICBpbmNsdWRlIFRIQU5LUyBIQUNLSU5HCisgIHJlY3Vyc2l2ZS1pbmNsdWRlIGV4YW1wbGVzICoudHh0ICoucHkKKyAgcHJ1bmUgZXhhbXBsZXMvc2FtcGxlPy9idWlsZAorCityZXNvdXJjZXM9CisgIGJtLyB7YjEsYjJ9LmdpZiA9IHtpY29ufQorICBDZiovICouQ0ZHID0ge2NvbmZpZ30vYmFCYXIvCisgIGluaXRfc2NyaXB0ID0ge3NjcmlwdH0vSnVuR2xlLworCitbZ2xvYmFsXQorY29tbWFuZHMgPQorICAgIHBhY2thZ2luZy50ZXN0cy50ZXN0X2NvbmZpZy5Gb29CYXJCYXpUZXN0CisKK2NvbXBpbGVycyA9CisgICAgcGFja2FnaW5nLnRlc3RzLnRlc3RfY29uZmlnLkRDb21waWxlcgorCitzZXR1cF9ob29rcyA9ICUoc2V0dXAtaG9va3MpcworCisKKworW2luc3RhbGxfZGlzdF0KK3N1Yl9jb21tYW5kcyA9IGZvbworIiIiCisKK1NFVFVQX0NGR19QS0dEQVRBX0JVR0dZXzEgPSAiIiIKK1tmaWxlc10KK3BhY2thZ2VfZGF0YSA9IGZvby4qCisiIiIKKworU0VUVVBfQ0ZHX1BLR0RBVEFfQlVHR1lfMiA9ICIiIgorW2ZpbGVzXQorcGFja2FnZV9kYXRhID0KKyAgICBmb28uKgorIiIiCisKKyMgQ2FuIG5vdCBiZSBtZXJnZWQgd2l0aCBTRVRVUF9DRkcgZWxzZSBpbnN0YWxsX2Rpc3QKKyMgY29tbWFuZCB3aWxsIGZhaWwgd2hlbiB0cnlpbmcgdG8gY29tcGlsZSBDIHNvdXJjZXMKKyMgVE9ETyB1c2UgYSBEdW1teUNvbW1hbmQgdG8gbW9jayBidWlsZF9leHQKK0VYVF9TRVRVUF9DRkcgPSAiIiIKK1tmaWxlc10KK3BhY2thZ2VzID0gb25lCisgICAgICAgICAgIHR3bworICAgICAgICAgICBwYXJlbnQudW5kZWNsYXJlZAorCitbZXh0ZW5zaW9uOm9uZS5zcGVlZF9jb2NvbnV0c10KK3NvdXJjZXMgPSBjX3NyYy9zcGVlZF9jb2NvbnV0cy5jCitleHRyYV9saW5rX2FyZ3MgPSAiYGdjYyAtcHJpbnQtZmlsZS1uYW1lPWxpYmdjYy5hYCIgLXNoYXJlZAorZGVmaW5lX21hY3JvcyA9IEhBVkVfQ0FJUk8gSEFWRV9HVEsyCitsaWJyYXJpZXMgPSBnZWNvZGVpbnQgZ2Vjb2Rla2VybmVsIC0tIHN5cy5wbGF0Zm9ybSAhPSAnd2luMzInCisgICAgR2Vjb2RlSW50IEdlY29kZUtlcm5lbCAtLSBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJworCitbZXh0ZW5zaW9uOiB0d28uZmFzdF90YXVudF0KK3NvdXJjZXMgPSBjeHhfc3JjL3V0aWxzX3RhdW50LmN4eAorICAgICAgICAgIGN4eF9zcmMvcHl0aG9uX21vZHVsZS5jeHgKK2luY2x1ZGVfZGlycyA9IC91c3IvaW5jbHVkZS9nZWNvZGUKKyAgICAvdXNyL2luY2x1ZGUvYmxpdHoKK2V4dHJhX2NvbXBpbGVfYXJncyA9IC1mUElDIC1PMgorICAgIC1ER0VDT0RFX1ZFUlNJT049JCguL2dlY29kZV92ZXJzaW9uKSAtLSBzeXMucGxhdGZvcm0gIT0gJ3dpbjMyJworICAgIC9ER0VDT0RFX1ZFUlNJT049d2luMzIgLS0gc3lzLnBsYXRmb3JtID09ICd3aW4zMicKK2xhbmd1YWdlID0gY3h4CisKKyMgY29ybmVyIGNhc2U6IGlmIHRoZSBwYXJlbnQgcGFja2FnZSBvZiBhbiBleHRlbnNpb24gaXMgZGVjbGFyZWQgYnV0CisjIG5vdCBpdHMgZ3JhbmRwYXJlbnQsIGl0J3MgbGVnYWwKK1tleHRlbnNpb246IHBhcmVudC51bmRlY2xhcmVkLl9zcGVlZF0KK3NvdXJjZXMgPSBwYXJlbnQvdW5kZWNsYXJlZC9fc3BlZWQuYworIiIiCisKK0VYVF9TRVRVUF9DRkdfQlVHR1lfMSA9ICIiIgorW2V4dGVuc2lvbjogcmVhbG5hbWVdCituYW1lID0gY3Jhc2hfaGVyZQorIiIiCisKK0VYVF9TRVRVUF9DRkdfQlVHR1lfMiA9ICIiIgorW2ZpbGVzXQorcGFja2FnZXMgPSBoYW0KKworW2V4dGVuc2lvbjogc3BhbS5lZ2dzXQorIiIiCisKK0VYVF9TRVRVUF9DRkdfQlVHR1lfMyA9ICIiIgorW2ZpbGVzXQorcGFja2FnZXMgPSBvaworICAgICAgICAgICBvay53b3JrcworCitbZXh0ZW5zaW9uOiBvay53b3Jrcy5icmVha3MuX2V4dF0KKyIiIgorCitIT09LU19NT0RVTEUgPSAiIiIKK2ltcG9ydCBsb2dnaW5nCisKK2xvZ2dlciA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCdwYWNrYWdpbmcnKQorCitkZWYgbG9nZ2luZ19ob29rKGNvbmZpZyk6CisgICAgbG9nZ2VyLndhcm5pbmcoJ2xvZ2dpbmdfaG9vayBjYWxsZWQnKQorIiIiCisKKworY2xhc3MgRENvbXBpbGVyOgorICAgIG5hbWUgPSAnZCcKKyAgICBkZXNjcmlwdGlvbiA9ICdEIENvbXBpbGVyJworCisgICAgZGVmIF9faW5pdF9fKHNlbGYsICphcmdzKToKKyAgICAgICAgcGFzcworCisKK2RlZiB2ZXJzaW9uX2hvb2soY29uZmlnKToKKyAgICBjb25maWdbJ21ldGFkYXRhJ11bJ3ZlcnNpb24nXSArPSAnLmRldjEnCisKKworZGVmIGZpcnN0X2hvb2soY29uZmlnKToKKyAgICBjb25maWdbJ2ZpbGVzJ11bJ21vZHVsZXMnXSArPSAnXG4gZmlyc3QnCisKKworZGVmIHRoaXJkX2hvb2soY29uZmlnKToKKyAgICBjb25maWdbJ2ZpbGVzJ11bJ21vZHVsZXMnXSArPSAnXG4gdGhpcmQnCisKKworY2xhc3MgRm9vQmFyQmF6VGVzdDoKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkaXN0KToKKyAgICAgICAgc2VsZi5kaXN0cmlidXRpb24gPSBkaXN0CisgICAgICAgIHNlbGYuX3JlY29yZCA9IFtdCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgZ2V0X2NvbW1hbmRfbmFtZShjbHMpOgorICAgICAgICByZXR1cm4gJ2ZvbycKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIHNlbGYuX3JlY29yZC5hcHBlbmQoJ2ZvbyBoYXMgcnVuJykKKworICAgIGRlZiBub3RoaW5nKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgZ2V0X3NvdXJjZV9maWxlcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIFtdCisKKyAgICBlbnN1cmVfZmluYWxpemVkID0gZmluYWxpemVfb3B0aW9ucyA9IGluaXRpYWxpemVfb3B0aW9ucyA9IG5vdGhpbmcKKworCitjbGFzcyBDb25maWdUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5FbnZpcm9uUmVzdG9yZXIsCisgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydQTEFUJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoQ29uZmlnVGVzdENhc2UsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgdGVtcGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNlbGYud29ya2luZ19kaXIgPSBvcy5nZXRjd2QoKQorICAgICAgICBvcy5jaGRpcih0ZW1wZGlyKQorICAgICAgICBzZWxmLnRlbXBkaXIgPSB0ZW1wZGlyCisKKyAgICBkZWYgd3JpdGVfc2V0dXAoc2VsZiwga3dhcmdzPU5vbmUpOgorICAgICAgICBvcHRzID0geydkZXNjcmlwdGlvbi1maWxlJzogJ1JFQURNRScsICdleHRyYS1maWxlcyc6ICcnLAorICAgICAgICAgICAgICAgICdzZXR1cC1ob29rcyc6ICdwYWNrYWdpbmcudGVzdHMudGVzdF9jb25maWcudmVyc2lvbl9ob29rJ30KKyAgICAgICAgaWYga3dhcmdzOgorICAgICAgICAgICAgb3B0cy51cGRhdGUoa3dhcmdzKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ3NldHVwLmNmZycsIFNFVFVQX0NGRyAlIG9wdHMsIGVuY29kaW5nPSd1dGYtOCcpCisKKyAgICBkZWYgZ2V0X2Rpc3Qoc2VsZik6CisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBkaXN0LnBhcnNlX2NvbmZpZ19maWxlcygpCisgICAgICAgIHJldHVybiBkaXN0CisKKyAgICBkZWYgdGVzdF9jb25maWcoc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfc2V0dXAoKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRScsICd5ZWFoJykKKyAgICAgICAgb3MubWtkaXIoJ2JtJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCgnYm0nLCAnYjEuZ2lmJyksICcnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKCdibScsICdiMi5naWYnKSwgJycpCisgICAgICAgIG9zLm1rZGlyKCdDZmcnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKCdDZmcnLCAnZGF0YS5DRkcnKSwgJycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnaW5pdF9zY3JpcHQnLCAnJykKKworICAgICAgICAjIHRyeSB0byBsb2FkIHRoZSBtZXRhZGF0YSBub3cKKyAgICAgICAgZGlzdCA9IHNlbGYuZ2V0X2Rpc3QoKQorCisgICAgICAgICMgY2hlY2sgd2hhdCB3YXMgZG9uZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGFbJ0F1dGhvciddLCAnQ2FybCBNZXllcicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YVsnQXV0aG9yLUVtYWlsJ10sICdjYXJsQG9kZGJpcmQubmV0JykKKworICAgICAgICAjIHRoZSBob29rIGFkZHMgLmRldjEKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydWZXJzaW9uJ10sICcwLjYuNC5kZXYxJykKKworICAgICAgICB3YW50ZWQgPSBbCisgICAgICAgICAgICAnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDQgLSBCZXRhJywKKyAgICAgICAgICAgICdFbnZpcm9ubWVudCA6OiBDb25zb2xlIChUZXh0IEJhc2VkKScsCisgICAgICAgICAgICAiRW52aXJvbm1lbnQgOjogWDExIEFwcGxpY2F0aW9ucyA6OiBHVEs7IHB5dGhvbl92ZXJzaW9uIDwgJzMnIiwKKyAgICAgICAgICAgICdMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBNSVQgTGljZW5zZScsCisgICAgICAgICAgICAnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uJywKKyAgICAgICAgICAgICdQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMicsCisgICAgICAgICAgICAnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IDMnXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGFbJ0NsYXNzaWZpZXInXSwgd2FudGVkKQorCisgICAgICAgIHdhbnRlZCA9IFsncGFja2FnaW5nJywgJ3NhbXBsZSBwcm9qZWN0J10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydLZXl3b3JkcyddLCB3YW50ZWQpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydSZXF1aXJlcy1QeXRob24nXSwgJz49Mi40LCA8My4yJykKKworICAgICAgICB3YW50ZWQgPSBbJ1BldFNob3BwZScsCisgICAgICAgICAgICAgICAgICAnTWljaGFlbFBhbGluICg+IDEuMSknLAorICAgICAgICAgICAgICAgICAgInB5d2luMzI7IHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInIiwKKyAgICAgICAgICAgICAgICAgICJweXNxbGl0ZTI7IHB5dGhvbl92ZXJzaW9uIDwgJzIuNSciLAorICAgICAgICAgICAgICAgICAgImlub3RpZnkgKDAuMC4xKTsgc3lzLnBsYXRmb3JtID09ICdsaW51eDInIl0KKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSwgd2FudGVkKQorICAgICAgICB1cmxzID0gWygnTWFpbiByZXBvc2l0b3J5JywKKyAgICAgICAgICAgICAgICAgJ2h0dHA6Ly9iaXRidWNrZXQub3JnL2NhcmxqbS9zYW1wbGUtZGlzdHV0aWxzMi1wcm9qZWN0JyksCisgICAgICAgICAgICAgICAgKCdGb3JrIGluIHByb2dyZXNzJywKKyAgICAgICAgICAgICAgICAgJ2h0dHA6Ly9iaXRidWNrZXQub3JnL01lcndvay9zYW1wbGUtZGlzdHV0aWxzMi1wcm9qZWN0JyldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YVsnUHJvamVjdC1VcmwnXSwgdXJscykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QucGFja2FnZXMsIFsnb25lJywgJ3R3bycsICd0aHJlZSddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QucHlfbW9kdWxlcywgWydoYXZlbiddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QucGFja2FnZV9kYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgIHsnY2hlZXNlJzogWydkYXRhL3RlbXBsYXRlcy8qJywgJ2RvYy8qJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZG9jL2ltYWdlcy8qLnBuZyddfSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0LmRhdGFfZmlsZXMsCisgICAgICAgICAgICB7J2JtL2IxLmdpZic6ICd7aWNvbn0vYjEuZ2lmJywKKyAgICAgICAgICAgICAnYm0vYjIuZ2lmJzogJ3tpY29ufS9iMi5naWYnLAorICAgICAgICAgICAgICdDZmcvZGF0YS5DRkcnOiAne2NvbmZpZ30vYmFCYXIvZGF0YS5DRkcnLAorICAgICAgICAgICAgICdpbml0X3NjcmlwdCc6ICd7c2NyaXB0fS9KdW5HbGUvaW5pdF9zY3JpcHQnfSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QucGFja2FnZV9kaXIsICdzcmMnKQorCisgICAgICAgICMgTWFrZSBzdXJlIHdlIGdldCB0aGUgZm9vIGNvbW1hbmQgbG9hZGVkLiAgV2UgdXNlIGEgc3RyaW5nIGNvbXBhcmlzb24KKyAgICAgICAgIyBpbnN0ZWFkIG9mIGFzc2VydElzSW5zdGFuY2UgYmVjYXVzZSB0aGUgY2xhc3MgaXMgbm90IHRoZSBzYW1lIHdoZW4KKyAgICAgICAgIyB0aGlzIHRlc3QgaXMgcnVuIGRpcmVjdGx5OiBmb28gaXMgcGFja2FnaW5nLnRlc3RzLnRlc3RfY29uZmlnLkZvbworICAgICAgICAjIGJlY2F1c2UgZ2V0X2NvbW1hbmRfY2xhc3MgdXNlcyB0aGUgZnVsbCBuYW1lLCBidXQgYSBiYXJlICJGb28iIGluCisgICAgICAgICMgdGhpcyBmaWxlIHdvdWxkIGJlIF9fbWFpbl9fLkZvbyB3aGVuIHJ1biBhcyAicHl0aG9uIHRlc3RfY29uZmlnLnB5Ii4KKyAgICAgICAgIyBUaGUgbmFtZSBGb29CYXJCYXpUZXN0IHNob3VsZCBiZSB1bmlxdWUgZW5vdWdoIHRvIHByZXZlbnQKKyAgICAgICAgIyBjb2xsaXNpb25zLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QuZ2V0X2NvbW1hbmRfb2JqKCdmb28nKS5fX2NsYXNzX18uX19uYW1lX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgJ0Zvb0JhckJhelRlc3QnKQorCisgICAgICAgICMgZGlkIHRoZSBSRUFETUUgZ290IGxvYWRlZCA/CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YVsnZGVzY3JpcHRpb24nXSwgJ3llYWgnKQorCisgICAgICAgICMgZG8gd2UgaGF2ZSB0aGUgRCBDb21waWxlciBlbmFibGVkID8KKyAgICAgICAgc2VsZi5hc3NlcnRJbignZCcsIF9DT01QSUxFUlMpCisgICAgICAgIGQgPSBuZXdfY29tcGlsZXIoY29tcGlsZXI9J2QnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGQuZGVzY3JpcHRpb24sICdEIENvbXBpbGVyJykKKworICAgICAgICAjIGNoZWNrIGVycm9yIHJlcG9ydGluZyBmb3IgaW52YWxpZCBwYWNrYWdlX2RhdGEgdmFsdWUKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzZXR1cC5jZmcnLCBTRVRVUF9DRkdfUEtHREFUQV9CVUdHWV8xKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgc2VsZi5nZXRfZGlzdCkKKworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ3NldHVwLmNmZycsIFNFVFVQX0NGR19QS0dEQVRBX0JVR0dZXzIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ09wdGlvbkVycm9yLCBzZWxmLmdldF9kaXN0KQorCisgICAgZGVmIHRlc3RfbXVsdGlwbGVfZGVzY3JpcHRpb25fZmlsZShzZWxmKToKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCh7J2Rlc2NyaXB0aW9uLWZpbGUnOiAnUkVBRE1FICBDSEFOR0VTJ30pCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FJywgJ3llYWgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ0NIQU5HRVMnLCAnY2hhbmdlbG9nMicpCisgICAgICAgIGRpc3QgPSBzZWxmLmdldF9kaXN0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhLnJlcXVpcmVzX2ZpbGVzLCBbJ1JFQURNRScsICdDSEFOR0VTJ10pCisKKyAgICBkZWYgdGVzdF9tdWx0aWxpbmVfZGVzY3JpcHRpb25fZmlsZShzZWxmKToKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCh7J2Rlc2NyaXB0aW9uLWZpbGUnOiAnUkVBRE1FXG4gIENIQU5HRVMnfSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdSRUFETUUnLCAneWVhaCcpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnQ0hBTkdFUycsICdjaGFuZ2Vsb2cnKQorICAgICAgICBkaXN0ID0gc2VsZi5nZXRfZGlzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YVsnZGVzY3JpcHRpb24nXSwgJ3llYWhcbmNoYW5nZWxvZycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YS5yZXF1aXJlc19maWxlcywgWydSRUFETUUnLCAnQ0hBTkdFUyddKQorCisgICAgZGVmIHRlc3RfcGFyc2VfZXh0ZW5zaW9uc19pbl9jb25maWcoc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc2V0dXAuY2ZnJywgRVhUX1NFVFVQX0NGRykKKyAgICAgICAgZGlzdCA9IHNlbGYuZ2V0X2Rpc3QoKQorCisgICAgICAgIGV4dF9tb2R1bGVzID0gZGljdCgobW9kLm5hbWUsIG1vZCkgZm9yIG1vZCBpbiBkaXN0LmV4dF9tb2R1bGVzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihleHRfbW9kdWxlcyksIDMpCisgICAgICAgIGV4dCA9IGV4dF9tb2R1bGVzLmdldCgnb25lLnNwZWVkX2NvY29udXRzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHQuc291cmNlcywgWydjX3NyYy9zcGVlZF9jb2NvbnV0cy5jJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXh0LmRlZmluZV9tYWNyb3MsIFsnSEFWRV9DQUlSTycsICdIQVZFX0dUSzInXSkKKyAgICAgICAgbGlicyA9IFsnZ2Vjb2RlaW50JywgJ2dlY29kZWtlcm5lbCddCisgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInOgorICAgICAgICAgICAgbGlicyA9IFsnR2Vjb2RlSW50JywgJ0dlY29kZUtlcm5lbCddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXh0LmxpYnJhcmllcywgbGlicykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHQuZXh0cmFfbGlua19hcmdzLAorICAgICAgICAgICAgWydgZ2NjIC1wcmludC1maWxlLW5hbWU9bGliZ2NjLmFgJywgJy1zaGFyZWQnXSkKKworICAgICAgICBleHQgPSBleHRfbW9kdWxlcy5nZXQoJ3R3by5mYXN0X3RhdW50JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHQuc291cmNlcywKKyAgICAgICAgICAgIFsnY3h4X3NyYy91dGlsc190YXVudC5jeHgnLCAnY3h4X3NyYy9weXRob25fbW9kdWxlLmN4eCddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4dC5pbmNsdWRlX2RpcnMsCisgICAgICAgICAgICBbJy91c3IvaW5jbHVkZS9nZWNvZGUnLCAnL3Vzci9pbmNsdWRlL2JsaXR6J10pCisgICAgICAgIGNhcmdzID0gWyctZlBJQycsICctTzInXQorICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKKyAgICAgICAgICAgIGNhcmdzLmFwcGVuZCgiL0RHRUNPREVfVkVSU0lPTj13aW4zMiIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBjYXJncy5hcHBlbmQoJy1ER0VDT0RFX1ZFUlNJT049JCguL2dlY29kZV92ZXJzaW9uKScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXh0LmV4dHJhX2NvbXBpbGVfYXJncywgY2FyZ3MpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXh0Lmxhbmd1YWdlLCAnY3h4JykKKworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ3NldHVwLmNmZycsIEVYVF9TRVRVUF9DRkdfQlVHR1lfMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIHNlbGYuZ2V0X2Rpc3QpCisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzZXR1cC5jZmcnLCBFWFRfU0VUVVBfQ0ZHX0JVR0dZXzIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ09wdGlvbkVycm9yLCBzZWxmLmdldF9kaXN0KQorCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc2V0dXAuY2ZnJywgRVhUX1NFVFVQX0NGR19CVUdHWV8zKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgc2VsZi5nZXRfZGlzdCkKKworICAgIGRlZiB0ZXN0X3Byb2plY3Rfc2V0dXBfaG9va193b3JrcyhzZWxmKToKKyAgICAgICAgIyBCdWcgIzExNjM3OiBlbnN1cmUgdGhlIHByb2plY3QgZGlyZWN0b3J5IGlzIG9uIHN5cy5wYXRoIHRvIGFsbG93CisgICAgICAgICMgcHJvamVjdC1zcGVjaWZpYyBob29rcworICAgICAgICBzZWxmLndyaXRlX3NldHVwKHsnc2V0dXAtaG9va3MnOiAnaG9va3MubG9nZ2luZ19ob29rJ30pCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FJywgJ3llYWgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ2hvb2tzLnB5JywgSE9PS1NfTU9EVUxFKQorICAgICAgICBzZWxmLmdldF9kaXN0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ2xvZ2dpbmdfaG9vayBjYWxsZWQnXSwgc2VsZi5nZXRfbG9ncygpKQorICAgICAgICBzZWxmLmFzc2VydEluKCdob29rcycsIHN5cy5tb2R1bGVzKQorCisgICAgZGVmIHRlc3RfbWlzc2luZ19zZXR1cF9ob29rX3dhcm5zKHNlbGYpOgorICAgICAgICBzZWxmLndyaXRlX3NldHVwKHsnc2V0dXAtaG9va3MnOiAnZG9lcy5fbm90LmV4aXN0J30pCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FJywgJ3llYWgnKQorICAgICAgICBzZWxmLmdldF9kaXN0KCkKKyAgICAgICAgbG9ncyA9IHNlbGYuZ2V0X2xvZ3MoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihsb2dzKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignY2Fubm90IGZpbmQgc2V0dXAgaG9vaycsIGxvZ3NbMF0pCisKKyAgICBkZWYgdGVzdF9tdWx0aXBsZV9zZXR1cF9ob29rcyhzZWxmKToKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCh7CisgICAgICAgICAgICAnc2V0dXAtaG9va3MnOiAnXG4gIHBhY2thZ2luZy50ZXN0cy50ZXN0X2NvbmZpZy5maXJzdF9ob29rJworICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xuICBwYWNrYWdpbmcudGVzdHMudGVzdF9jb25maWcubWlzc2luZ19ob29rJworICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xuICBwYWNrYWdpbmcudGVzdHMudGVzdF9jb25maWcudGhpcmRfaG9vaycsCisgICAgICAgIH0pCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FJywgJ3llYWgnKQorICAgICAgICBkaXN0ID0gc2VsZi5nZXRfZGlzdCgpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ2hhdmVuJywgJ2ZpcnN0JywgJ3RoaXJkJ10sIGRpc3QucHlfbW9kdWxlcykKKyAgICAgICAgbG9ncyA9IHNlbGYuZ2V0X2xvZ3MoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihsb2dzKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignY2Fubm90IGZpbmQgc2V0dXAgaG9vaycsIGxvZ3NbMF0pCisKKyAgICBkZWYgdGVzdF9tZXRhZGF0YV9yZXF1aXJlc19kZXNjcmlwdGlvbl9maWxlc19taXNzaW5nKHNlbGYpOgorICAgICAgICBzZWxmLndyaXRlX3NldHVwKHsnZGVzY3JpcHRpb24tZmlsZSc6ICdSRUFETUUgUkVBRE1FMid9KQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRScsICd5ZWFoJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdSRUFETUUyJywgJ3llYWgnKQorICAgICAgICBvcy5ta2Rpcignc3JjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCgnc3JjJywgJ2hhdmVuLnB5JyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzY3JpcHQxLnB5JywgJyMnKQorICAgICAgICBvcy5ta2Rpcignc2NyaXB0cycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoJ3NjcmlwdHMnLCAnZmluZC1jb2NvbnV0cycpLCAnIycpCisgICAgICAgIG9zLm1rZGlyKCdiaW4nKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKCdiaW4nLCAndGF1bnQnKSwgJyMnKQorCisgICAgICAgIGZvciBwa2cgaW4gKCdvbmUnLCAndHdvJywgJ3RocmVlJyk6CisgICAgICAgICAgICBwa2cgPSBvcy5wYXRoLmpvaW4oJ3NyYycsIHBrZykKKyAgICAgICAgICAgIG9zLm1rZGlyKHBrZykKKyAgICAgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnLCAnX19pbml0X18ucHknKSwgJyMnKQorCisgICAgICAgIGRpc3QgPSBzZWxmLmdldF9kaXN0KCkKKyAgICAgICAgY21kID0gc2Rpc3QoZGlzdCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBjbWQuZ2V0X2ZpbGVfbGlzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ0ZpbGVFcnJvciwgY21kLm1ha2VfZGlzdHJpYnV0aW9uKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF9tZXRhZGF0YV9yZXF1aXJlc19kZXNjcmlwdGlvbl9maWxlcyhzZWxmKToKKyAgICAgICAgIyBDcmVhdGUgdGhlIGZvbGxvd2luZyBmaWxlIHN0cnVjdHVyZToKKyAgICAgICAgIyAgIFJFQURNRQorICAgICAgICAjICAgUkVBRE1FMgorICAgICAgICAjICAgc2NyaXB0MS5weQorICAgICAgICAjICAgc2NyaXB0cy8KKyAgICAgICAgIyAgICAgICBmaW5kLWNvY29udXRzCisgICAgICAgICMgICBiaW4vCisgICAgICAgICMgICAgICAgdGF1bnQKKyAgICAgICAgIyAgIHNyYy8KKyAgICAgICAgIyAgICAgICBoYXZlbi5weQorICAgICAgICAjICAgICAgIG9uZS9fX2luaXRfXy5weQorICAgICAgICAjICAgICAgIHR3by9fX2luaXRfXy5weQorICAgICAgICAjICAgICAgIHRocmVlL19faW5pdF9fLnB5CisKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCh7J2Rlc2NyaXB0aW9uLWZpbGUnOiAnUkVBRE1FXG4gIFJFQURNRTInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnZXh0cmEtZmlsZXMnOiAnXG4gIFJFQURNRTMnfSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdSRUFETUUnLCAneWVhaCAxJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdSRUFETUUyJywgJ3llYWggMicpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FMycsICd5ZWFoIDMnKQorICAgICAgICBvcy5ta2Rpcignc3JjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCgnc3JjJywgJ2hhdmVuLnB5JyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzY3JpcHQxLnB5JywgJyMnKQorICAgICAgICBvcy5ta2Rpcignc2NyaXB0cycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoJ3NjcmlwdHMnLCAnZmluZC1jb2NvbnV0cycpLCAnIycpCisgICAgICAgIG9zLm1rZGlyKCdiaW4nKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKCdiaW4nLCAndGF1bnQnKSwgJyMnKQorCisgICAgICAgIGZvciBwa2cgaW4gKCdvbmUnLCAndHdvJywgJ3RocmVlJyk6CisgICAgICAgICAgICBwa2cgPSBvcy5wYXRoLmpvaW4oJ3NyYycsIHBrZykKKyAgICAgICAgICAgIG9zLm1rZGlyKHBrZykKKyAgICAgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnLCAnX19pbml0X18ucHknKSwgJyMnKQorCisgICAgICAgIGRpc3QgPSBzZWxmLmdldF9kaXN0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigneWVhaCAxXG55ZWFoIDInLCBkaXN0Lm1ldGFkYXRhWydkZXNjcmlwdGlvbiddKQorCisgICAgICAgIGNtZCA9IHNkaXN0KGRpc3QpCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgY21kLmdldF9maWxlX2xpc3QoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdGaWxlRXJyb3IsIGNtZC5tYWtlX2Rpc3RyaWJ1dGlvbikKKworICAgICAgICBzZWxmLndyaXRlX3NldHVwKHsnZGVzY3JpcHRpb24tZmlsZSc6ICdSRUFETUVcbiAgUkVBRE1FMicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICdleHRyYS1maWxlcyc6ICdcbiAgUkVBRE1FMlxuICAgIFJFQURNRSd9KQorICAgICAgICBkaXN0ID0gc2VsZi5nZXRfZGlzdCgpCisgICAgICAgIGNtZCA9IHNkaXN0KGRpc3QpCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgY21kLmdldF9maWxlX2xpc3QoKQorICAgICAgICBjbWQubWFrZV9kaXN0cmlidXRpb24oKQorICAgICAgICB3aXRoIG9wZW4oJ01BTklGRVNUJykgYXMgZnA6CisgICAgICAgICAgICBzZWxmLmFzc2VydEluKCdSRUFETUVcblJFQURNRTJcbicsIGZwLnJlYWQoKSkKKworICAgIGRlZiB0ZXN0X3N1Yl9jb21tYW5kcyhzZWxmKToKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCgpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FJywgJ3llYWgnKQorICAgICAgICBvcy5ta2Rpcignc3JjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCgnc3JjJywgJ2hhdmVuLnB5JyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzY3JpcHQxLnB5JywgJyMnKQorICAgICAgICBvcy5ta2Rpcignc2NyaXB0cycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoJ3NjcmlwdHMnLCAnZmluZC1jb2NvbnV0cycpLCAnIycpCisgICAgICAgIG9zLm1rZGlyKCdiaW4nKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKCdiaW4nLCAndGF1bnQnKSwgJyMnKQorCisgICAgICAgIGZvciBwa2cgaW4gKCdvbmUnLCAndHdvJywgJ3RocmVlJyk6CisgICAgICAgICAgICBwa2cgPSBvcy5wYXRoLmpvaW4oJ3NyYycsIHBrZykKKyAgICAgICAgICAgIG9zLm1rZGlyKHBrZykKKyAgICAgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnLCAnX19pbml0X18ucHknKSwgJyMnKQorCisgICAgICAgICMgdHJ5IHRvIHJ1biB0aGUgaW5zdGFsbCBjb21tYW5kIHRvIHNlZSBpZiBmb28gaXMgY2FsbGVkCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChjb21tYW5kLl9DT01NQU5EUy5fX2RlbGl0ZW1fXywgJ2ZvbycpCisgICAgICAgIGRpc3QgPSBzZWxmLmdldF9kaXN0KCkKKyAgICAgICAgZGlzdC5ydW5fY29tbWFuZCgnaW5zdGFsbF9kaXN0JykKKyAgICAgICAgY21kID0gZGlzdC5nZXRfY29tbWFuZF9vYmooJ2ZvbycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLl9fY2xhc3NfXy5fX25hbWVfXywgJ0Zvb0JhckJhelRlc3QnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5fcmVjb3JkLCBbJ2ZvbyBoYXMgcnVuJ10pCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKENvbmZpZ1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3Rlc3Rfc3VpdGUnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NyZWF0ZS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jcmVhdGUucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzZiYzMzMQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jcmVhdGUucHkKQEAgLTAsMCArMSwyMzMgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY3JlYXRlLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgc3lzY29uZmlnCitmcm9tIHRleHR3cmFwIGltcG9ydCBkZWRlbnQKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBjcmVhdGUKK2Zyb20gcGFja2FnaW5nLmNyZWF0ZSBpbXBvcnQgTWFpblByb2dyYW0sIGFza195biwgYXNrLCBtYWluCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCBzdXBwb3J0LCB1bml0dGVzdAorZnJvbSBwYWNrYWdpbmcudGVzdHMuc3VwcG9ydCBpbXBvcnQgSW5wdXRzCisKKworY2xhc3MgQ3JlYXRlVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuRW52aXJvblJlc3RvcmVyLAorICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIG1heERpZmYgPSBOb25lCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydQTEFUJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoQ3JlYXRlVGVzdENhc2UsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi53ZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgb3MuY2hkaXIoc2VsZi53ZGlyKQorICAgICAgICAjIHBhdGNoIHN5c2NvbmZpZworICAgICAgICBzZWxmLl9vbGRfZ2V0X3BhdGhzID0gc3lzY29uZmlnLmdldF9wYXRocworICAgICAgICBzeXNjb25maWcuZ2V0X3BhdGhzID0gbGFtYmRhICphcmdzLCAqKmt3YXJnczogeworICAgICAgICAgICAgJ21hbic6IHN5cy5wcmVmaXggKyAnL3NoYXJlL21hbicsCisgICAgICAgICAgICAnZG9jJzogc3lzLnByZWZpeCArICcvc2hhcmUvZG9jL3B5eGZvaWwnLCB9CisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHN5c2NvbmZpZy5nZXRfcGF0aHMgPSBzZWxmLl9vbGRfZ2V0X3BhdGhzCisgICAgICAgIGlmIGhhc2F0dHIoY3JlYXRlLCAnaW5wdXQnKToKKyAgICAgICAgICAgIGRlbCBjcmVhdGUuaW5wdXQKKyAgICAgICAgc3VwZXIoQ3JlYXRlVGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgIGRlZiB0ZXN0X2Fza195bihzZWxmKToKKyAgICAgICAgY3JlYXRlLmlucHV0ID0gSW5wdXRzKCd5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgneScsIGFza195bignaXMgdGhpcyBhIHRlc3QnKSkKKworICAgIGRlZiB0ZXN0X2FzayhzZWxmKToKKyAgICAgICAgY3JlYXRlLmlucHV0ID0gSW5wdXRzKCdhJywgJ2InKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdhJywgYXNrKCdpcyB0aGlzIGEgdGVzdCcpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdiJywgYXNrKHN0cihsaXN0KHJhbmdlKDAsIDcwKSkpLCBkZWZhdWx0PSdjJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW5ndGh5PVRydWUpKQorCisgICAgZGVmIHRlc3Rfc2V0X211bHRpKHNlbGYpOgorICAgICAgICBtYWlucHJvZ3JhbSA9IE1haW5Qcm9ncmFtKCkKKyAgICAgICAgY3JlYXRlLmlucHV0ID0gSW5wdXRzKCdhYWFhYScpCisgICAgICAgIG1haW5wcm9ncmFtLmRhdGFbJ2F1dGhvciddID0gW10KKyAgICAgICAgbWFpbnByb2dyYW0uX3NldF9tdWx0aSgnX3NldF9tdWx0aSB0ZXN0JywgJ2F1dGhvcicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydhYWFhYSddLCBtYWlucHJvZ3JhbS5kYXRhWydhdXRob3InXSkKKworICAgIGRlZiB0ZXN0X2ZpbmRfZmlsZXMoc2VsZik6CisgICAgICAgICMgbWFraW5nIHN1cmUgd2Ugc2NhbiBhIHByb2plY3QgZGlyIGNvcnJlY3RseQorICAgICAgICBtYWlucHJvZ3JhbSA9IE1haW5Qcm9ncmFtKCkKKworICAgICAgICAjIGJ1aWxkaW5nIHRoZSBzdHJ1Y3R1cmUKKyAgICAgICAgdGVtcGRpciA9IHNlbGYud2RpcgorICAgICAgICBkaXJzID0gWydwa2cxJywgJ2RhdGEnLCAncGtnMicsICdwa2cyL3N1YiddCisgICAgICAgIGZpbGVzID0gWworICAgICAgICAgICAgJ1JFQURNRScsCisgICAgICAgICAgICAnZGF0YS9kYXRhMScsCisgICAgICAgICAgICAnZm9vLnB5JywKKyAgICAgICAgICAgICdwa2cxL19faW5pdF9fLnB5JywKKyAgICAgICAgICAgICdwa2cxL2Jhci5weScsCisgICAgICAgICAgICAncGtnMi9fX2luaXRfXy5weScsCisgICAgICAgICAgICAncGtnMi9zdWIvX19pbml0X18ucHknLAorICAgICAgICBdCisKKyAgICAgICAgZm9yIGRpcl8gaW4gZGlyczoKKyAgICAgICAgICAgIG9zLm1rZGlyKG9zLnBhdGguam9pbih0ZW1wZGlyLCBkaXJfKSkKKworICAgICAgICBmb3IgZmlsZV8gaW4gZmlsZXM6CisgICAgICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHRlbXBkaXIsIGZpbGVfKSwgJ3h4eCcpCisKKyAgICAgICAgbWFpbnByb2dyYW0uX2ZpbmRfZmlsZXMoKQorICAgICAgICBtYWlucHJvZ3JhbS5kYXRhWydwYWNrYWdlcyddLnNvcnQoKQorCisgICAgICAgICMgZG8gd2UgaGF2ZSB3aGF0IHdlIHdhbnQ/CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFpbnByb2dyYW0uZGF0YVsncGFja2FnZXMnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBbJ3BrZzEnLCAncGtnMicsICdwa2cyLnN1YiddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1haW5wcm9ncmFtLmRhdGFbJ21vZHVsZXMnXSwgWydmb28nXSkKKyAgICAgICAgZGF0YV9mbiA9IG9zLnBhdGguam9pbignZGF0YScsICdkYXRhMScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFpbnByb2dyYW0uZGF0YVsnZXh0cmFfZmlsZXMnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBbJ1JFQURNRScsIGRhdGFfZm5dKQorCisgICAgZGVmIHRlc3RfY29udmVydF9zZXR1cF9weV90b19jZmcoc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi53ZGlyLCAnc2V0dXAucHknKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlZGVudCgiIiIKKyAgICAgICAgIyBjb2Rpbmc6IHV0Zi04CisgICAgICAgIGZyb20gZGlzdHV0aWxzLmNvcmUgaW1wb3J0IHNldHVwCisKKyAgICAgICAgbG9uZ19kZXNjcmlwdGlvbiA9ICcnJ015IHN1cGVyIERlYXRoLXNjcmlwdGlvbgorICAgICAgICBiYXJiYXIgaXMgbm93IG9uIHRoZSBwdWJsaWMgZG9tYWluLAorICAgICAgICBobywgYmFieSAhJycnCisKKyAgICAgICAgc2V0dXAobmFtZT0ncHl4Zm9pbCcsCisgICAgICAgICAgICAgIHZlcnNpb249JzAuMicsCisgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPSdQeXRob24gYmluZGluZ3MgZm9yIHRoZSBYZm9pbCBlbmdpbmUnLAorICAgICAgICAgICAgICBsb25nX2Rlc2NyaXB0aW9uPWxvbmdfZGVzY3JpcHRpb24sCisgICAgICAgICAgICAgIG1haW50YWluZXI9J0FuZHLDqSBFc3BhemUnLAorICAgICAgICAgICAgICBtYWludGFpbmVyX2VtYWlsPSdhbmRyZS5lc3BhemVAbG9naWxhYi5mcicsCisgICAgICAgICAgICAgIHVybD0naHR0cDovL3d3dy5weXRob24tc2NpZW5jZS5vcmcvcHJvamVjdC9weXhmb2lsJywKKyAgICAgICAgICAgICAgbGljZW5zZT0nR1BMdjInLAorICAgICAgICAgICAgICBwYWNrYWdlcz1bJ3B5eGZvaWwnLCAnYmFiYXInLCAnbWUnXSwKKyAgICAgICAgICAgICAgZGF0YV9maWxlcz1bCisgICAgICAgICAgICAgICAgICAoJ3NoYXJlL2RvYy9weXhmb2lsJywgWydSRUFETUUucnN0J10pLAorICAgICAgICAgICAgICAgICAgKCdzaGFyZS9tYW4nLCBbJ3B5eGZvaWwuMSddKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBdLAorICAgICAgICAgICAgICBweV9tb2R1bGVzPVsnbXlfbGliJywgJ215bW9kdWxlJ10sCisgICAgICAgICAgICAgIHBhY2thZ2VfZGlyPXsKKyAgICAgICAgICAgICAgICAgICdiYWJhcic6ICcnLAorICAgICAgICAgICAgICAgICAgJ21lJzogJ01hcnRpbmlxdWUvTGFtZW50aW4nLAorICAgICAgICAgICAgICAgICAgICAgICAgICB9LAorICAgICAgICAgICAgICBwYWNrYWdlX2RhdGE9eworICAgICAgICAgICAgICAgICAgJ2JhYmFyJzogWydQb20nLCAnRmxvcmEnLCAnQWxleGFuZGVyJ10sCisgICAgICAgICAgICAgICAgICAnbWUnOiBbJ2RhZHknLCAnbXVteScsICdzeXMnLCAnYnJvJ10sCisgICAgICAgICAgICAgICAgICAncHl4Zm9pbCc6IFsnZmVuZ2luZS5zbyddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICAgc2NyaXB0cz1bJ215X3NjcmlwdCcsICdiaW4vcnVuJ10sCisgICAgICAgICAgICAgICkKKyAgICAgICAgIiIiKSwgZW5jb2Rpbmc9J3V0Zi04JykKKyAgICAgICAgY3JlYXRlLmlucHV0ID0gSW5wdXRzKCd5JykKKyAgICAgICAgbWFpbigpCisKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLndkaXIsICdzZXR1cC5jZmcnKQorICAgICAgICB3aXRoIG9wZW4ocGF0aCwgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZnA6CisgICAgICAgICAgICBjb250ZW50cyA9IGZwLnJlYWQoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udGVudHMsIGRlZGVudCgiIiJcCisgICAgICAgICAgICBbbWV0YWRhdGFdCisgICAgICAgICAgICBuYW1lID0gcHl4Zm9pbAorICAgICAgICAgICAgdmVyc2lvbiA9IDAuMgorICAgICAgICAgICAgc3VtbWFyeSA9IFB5dGhvbiBiaW5kaW5ncyBmb3IgdGhlIFhmb2lsIGVuZ2luZQorICAgICAgICAgICAgZG93bmxvYWRfdXJsID0gVU5LTk9XTgorICAgICAgICAgICAgaG9tZV9wYWdlID0gaHR0cDovL3d3dy5weXRob24tc2NpZW5jZS5vcmcvcHJvamVjdC9weXhmb2lsCisgICAgICAgICAgICBtYWludGFpbmVyID0gQW5kcsOpIEVzcGF6ZQorICAgICAgICAgICAgbWFpbnRhaW5lcl9lbWFpbCA9IGFuZHJlLmVzcGF6ZUBsb2dpbGFiLmZyCisgICAgICAgICAgICBkZXNjcmlwdGlvbiA9IE15IHN1cGVyIERlYXRoLXNjcmlwdGlvbgorICAgICAgICAgICAgICAgICAgIHxiYXJiYXIgaXMgbm93IG9uIHRoZSBwdWJsaWMgZG9tYWluLAorICAgICAgICAgICAgICAgICAgIHxobywgYmFieSAhCisKKyAgICAgICAgICAgIFtmaWxlc10KKyAgICAgICAgICAgIHBhY2thZ2VzID0gcHl4Zm9pbAorICAgICAgICAgICAgICAgIGJhYmFyCisgICAgICAgICAgICAgICAgbWUKKyAgICAgICAgICAgIG1vZHVsZXMgPSBteV9saWIKKyAgICAgICAgICAgICAgICBteW1vZHVsZQorICAgICAgICAgICAgc2NyaXB0cyA9IG15X3NjcmlwdAorICAgICAgICAgICAgICAgIGJpbi9ydW4KKyAgICAgICAgICAgIHBhY2thZ2VfZGF0YSA9CisgICAgICAgICAgICAgICAgYmFiYXIgPSBQb20KKyAgICAgICAgICAgICAgICAgICAgICAgIEZsb3JhCisgICAgICAgICAgICAgICAgICAgICAgICBBbGV4YW5kZXIKKyAgICAgICAgICAgICAgICBtZSA9IGRhZHkKKyAgICAgICAgICAgICAgICAgICAgIG11bXkKKyAgICAgICAgICAgICAgICAgICAgIHN5cworICAgICAgICAgICAgICAgICAgICAgYnJvCisgICAgICAgICAgICAgICAgcHl4Zm9pbCA9IGZlbmdpbmUuc28KKworICAgICAgICAgICAgcmVzb3VyY2VzID0KKyAgICAgICAgICAgICAgICBSRUFETUUucnN0ID0ge2RvY30KKyAgICAgICAgICAgICAgICBweXhmb2lsLjEgPSB7bWFufQorCisgICAgICAgICAgICAiIiIpKQorCisgICAgZGVmIHRlc3RfY29udmVydF9zZXR1cF9weV90b19jZmdfd2l0aF9kZXNjcmlwdGlvbl9pbl9yZWFkbWUoc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi53ZGlyLCAnc2V0dXAucHknKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlZGVudCgiIiIKKyAgICAgICAgIyBjb2Rpbmc6IHV0Zi04CisgICAgICAgIGZyb20gZGlzdHV0aWxzLmNvcmUgaW1wb3J0IHNldHVwCisgICAgICAgIHdpdGggb3BlbignUkVBRE1FLnR4dCcpIGFzIGZwOgorICAgICAgICAgICAgbG9uZ19kZXNjcmlwdGlvbiA9IGZwLnJlYWQoKQorCisgICAgICAgIHNldHVwKG5hbWU9J3B5eGZvaWwnLAorICAgICAgICAgICAgICB2ZXJzaW9uPScwLjInLAorICAgICAgICAgICAgICBkZXNjcmlwdGlvbj0nUHl0aG9uIGJpbmRpbmdzIGZvciB0aGUgWGZvaWwgZW5naW5lJywKKyAgICAgICAgICAgICAgbG9uZ19kZXNjcmlwdGlvbj1sb25nX2Rlc2NyaXB0aW9uLAorICAgICAgICAgICAgICBtYWludGFpbmVyPSdBbmRyw6kgRXNwYXplJywKKyAgICAgICAgICAgICAgbWFpbnRhaW5lcl9lbWFpbD0nYW5kcmUuZXNwYXplQGxvZ2lsYWIuZnInLAorICAgICAgICAgICAgICB1cmw9J2h0dHA6Ly93d3cucHl0aG9uLXNjaWVuY2Uub3JnL3Byb2plY3QvcHl4Zm9pbCcsCisgICAgICAgICAgICAgIGxpY2Vuc2U9J0dQTHYyJywKKyAgICAgICAgICAgICAgcGFja2FnZXM9WydweXhmb2lsJ10sCisgICAgICAgICAgICAgIHBhY2thZ2VfZGF0YT17J3B5eGZvaWwnOiBbJ2ZlbmdpbmUuc28nLCAnYmFiYXIuc28nXX0sCisgICAgICAgICAgICAgIGRhdGFfZmlsZXM9WworICAgICAgICAgICAgICAgICgnc2hhcmUvZG9jL3B5eGZvaWwnLCBbJ1JFQURNRS5yc3QnXSksCisgICAgICAgICAgICAgICAgKCdzaGFyZS9tYW4nLCBbJ3B5eGZvaWwuMSddKSwKKyAgICAgICAgICAgICAgXSwKKyAgICAgICAgKQorICAgICAgICAiIiIpLCBlbmNvZGluZz0ndXRmLTgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYud2RpciwgJ1JFQURNRS50eHQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlZGVudCgnJycKK015IHN1cGVyIERlYXRoLXNjcmlwdGlvbgorYmFyYmFyIGlzIG5vdyBpbiB0aGUgcHVibGljIGRvbWFpbiwKK2hvLCBiYWJ5IQorICAgICAgICAgICAgICAgICAgICAgICAgJycnKSkKKyAgICAgICAgY3JlYXRlLmlucHV0ID0gSW5wdXRzKCd5JykKKyAgICAgICAgbWFpbigpCisKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLndkaXIsICdzZXR1cC5jZmcnKQorICAgICAgICB3aXRoIG9wZW4ocGF0aCwgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZnA6CisgICAgICAgICAgICBjb250ZW50cyA9IGZwLnJlYWQoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udGVudHMsIGRlZGVudCgiIiJcCisgICAgICAgICAgICBbbWV0YWRhdGFdCisgICAgICAgICAgICBuYW1lID0gcHl4Zm9pbAorICAgICAgICAgICAgdmVyc2lvbiA9IDAuMgorICAgICAgICAgICAgc3VtbWFyeSA9IFB5dGhvbiBiaW5kaW5ncyBmb3IgdGhlIFhmb2lsIGVuZ2luZQorICAgICAgICAgICAgZG93bmxvYWRfdXJsID0gVU5LTk9XTgorICAgICAgICAgICAgaG9tZV9wYWdlID0gaHR0cDovL3d3dy5weXRob24tc2NpZW5jZS5vcmcvcHJvamVjdC9weXhmb2lsCisgICAgICAgICAgICBtYWludGFpbmVyID0gQW5kcsOpIEVzcGF6ZQorICAgICAgICAgICAgbWFpbnRhaW5lcl9lbWFpbCA9IGFuZHJlLmVzcGF6ZUBsb2dpbGFiLmZyCisgICAgICAgICAgICBkZXNjcmlwdGlvbi1maWxlID0gUkVBRE1FLnR4dAorCisgICAgICAgICAgICBbZmlsZXNdCisgICAgICAgICAgICBwYWNrYWdlcyA9IHB5eGZvaWwKKyAgICAgICAgICAgIHBhY2thZ2VfZGF0YSA9CisgICAgICAgICAgICAgICAgcHl4Zm9pbCA9IGZlbmdpbmUuc28KKyAgICAgICAgICAgICAgICAgICAgICAgICAgYmFiYXIuc28KKworICAgICAgICAgICAgcmVzb3VyY2VzID0KKyAgICAgICAgICAgICAgICBSRUFETUUucnN0ID0ge2RvY30KKyAgICAgICAgICAgICAgICBweXhmb2lsLjEgPSB7bWFufQorCisgICAgICAgICAgICAiIiIpKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShDcmVhdGVUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jeWd3aW5jY29tcGlsZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY3lnd2luY2NvbXBpbGVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE3YzQzY2QKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY3lnd2luY2NvbXBpbGVyLnB5CkBAIC0wLDAgKzEsODggQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY3lnd2luY2NvbXBpbGVyLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgc3lzY29uZmlnCitmcm9tIHBhY2thZ2luZy5jb21waWxlci5jeWd3aW5jY29tcGlsZXIgaW1wb3J0ICgKKyAgICBjaGVja19jb25maWdfaCwgZ2V0X21zdmNyLAorICAgIENPTkZJR19IX09LLCBDT05GSUdfSF9OT1RPSywgQ09ORklHX0hfVU5DRVJUQUlOKQorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBDeWd3aW5DQ29tcGlsZXJUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihDeWd3aW5DQ29tcGlsZXJUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnZlcnNpb24gPSBzeXMudmVyc2lvbgorICAgICAgICBzZWxmLnB5dGhvbl9oID0gb3MucGF0aC5qb2luKHNlbGYubWtkdGVtcCgpLCAncHl0aG9uLmgnKQorICAgICAgICBzZWxmLm9sZF9nZXRfY29uZmlnX2hfZmlsZW5hbWUgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ19oX2ZpbGVuYW1lCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX2hfZmlsZW5hbWUgPSBzZWxmLl9nZXRfY29uZmlnX2hfZmlsZW5hbWUKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc3lzLnZlcnNpb24gPSBzZWxmLnZlcnNpb24KKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfaF9maWxlbmFtZSA9IHNlbGYub2xkX2dldF9jb25maWdfaF9maWxlbmFtZQorICAgICAgICBzdXBlcihDeWd3aW5DQ29tcGlsZXJUZXN0Q2FzZSwgc2VsZikudGVhckRvd24oKQorCisgICAgZGVmIF9nZXRfY29uZmlnX2hfZmlsZW5hbWUoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLnB5dGhvbl9oCisKKyAgICBkZWYgdGVzdF9jaGVja19jb25maWdfaChzZWxmKToKKyAgICAgICAgIyBjaGVja19jb25maWdfaCBsb29rcyBmb3IgIkdDQyIgaW4gc3lzLnZlcnNpb24gZmlyc3QKKyAgICAgICAgIyByZXR1cm5zIENPTkZJR19IX09LIGlmIGZvdW5kCisgICAgICAgIHN5cy52ZXJzaW9uID0gKCcyLjYuMSAocjI2MTo2NzUxNSwgRGVjICA2IDIwMDgsIDE2OjQyOjIxKSBcbltHQ0MgJworICAgICAgICAgICAgICAgICAgICAgICAnNC4wLjEgKEFwcGxlIENvbXB1dGVyLCBJbmMuIGJ1aWxkIDUzNzApXScpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjaGVja19jb25maWdfaCgpWzBdLCBDT05GSUdfSF9PSykKKworICAgICAgICAjIHRoZW4gaXQgdHJpZXMgdG8gc2VlIGlmIGl0IGNhbiBmaW5kICJfX0dOVUNfXyIgaW4gcHljb25maWcuaAorICAgICAgICBzeXMudmVyc2lvbiA9ICdzb21ldGhpbmcgd2l0aG91dCB0aGUgKkNDIHdvcmQnCisKKyAgICAgICAgIyBpZiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0IGl0IHJldHVybnMgIENPTkZJR19IX1VOQ0VSVEFJTgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNoZWNrX2NvbmZpZ19oKClbMF0sIENPTkZJR19IX1VOQ0VSVEFJTikKKworICAgICAgICAjIGlmIGl0IGV4aXN0cyBidXQgZG9lcyBub3QgY29udGFpbiBfX0dOVUNfXywgaXQgcmV0dXJucyBDT05GSUdfSF9OT1RPSworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoc2VsZi5weXRob25faCwgJ3h4eCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hlY2tfY29uZmlnX2goKVswXSwgQ09ORklHX0hfTk9UT0spCisKKyAgICAgICAgIyBhbmQgQ09ORklHX0hfT0sgaWYgX19HTlVDX18gaXMgZm91bmQKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKHNlbGYucHl0aG9uX2gsICd4eHggX19HTlVDX18geHh4JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjaGVja19jb25maWdfaCgpWzBdLCBDT05GSUdfSF9PSykKKworICAgIGRlZiB0ZXN0X2dldF9tc3ZjcihzZWxmKToKKyAgICAgICAgIyBub25lCisgICAgICAgIHN5cy52ZXJzaW9uID0gKCcyLjYuMSAocjI2MTo2NzUxNSwgRGVjICA2IDIwMDgsIDE2OjQyOjIxKSAnCisgICAgICAgICAgICAgICAgICAgICAgICdcbltHQ0MgNC4wLjEgKEFwcGxlIENvbXB1dGVyLCBJbmMuIGJ1aWxkIDUzNzApXScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0X21zdmNyKCksIE5vbmUpCisKKyAgICAgICAgIyBNU1ZDIDcuMAorICAgICAgICBzeXMudmVyc2lvbiA9ICgnMi41LjEgKHIyNTE6NTQ4NjMsIEFwciAxOCAyMDA3LCAwODo1MTowOCkgJworICAgICAgICAgICAgICAgICAgICAgICAnW01TQyB2LjEzMDAgMzIgYml0cyAoSW50ZWwpXScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0X21zdmNyKCksIFsnbXN2Y3I3MCddKQorCisgICAgICAgICMgTVNWQyA3LjEKKyAgICAgICAgc3lzLnZlcnNpb24gPSAoJzIuNS4xIChyMjUxOjU0ODYzLCBBcHIgMTggMjAwNywgMDg6NTE6MDgpICcKKyAgICAgICAgICAgICAgICAgICAgICAgJ1tNU0Mgdi4xMzEwIDMyIGJpdHMgKEludGVsKV0nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldF9tc3ZjcigpLCBbJ21zdmNyNzEnXSkKKworICAgICAgICAjIFZTMjAwNSAvIE1TVkMgOC4wCisgICAgICAgIHN5cy52ZXJzaW9uID0gKCcyLjUuMSAocjI1MTo1NDg2MywgQXByIDE4IDIwMDcsIDA4OjUxOjA4KSAnCisgICAgICAgICAgICAgICAgICAgICAgICdbTVNDIHYuMTQwMCAzMiBiaXRzIChJbnRlbCldJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRfbXN2Y3IoKSwgWydtc3ZjcjgwJ10pCisKKyAgICAgICAgIyBWUzIwMDggLyBNU1ZDIDkuMAorICAgICAgICBzeXMudmVyc2lvbiA9ICgnMi41LjEgKHIyNTE6NTQ4NjMsIEFwciAxOCAyMDA3LCAwODo1MTowOCkgJworICAgICAgICAgICAgICAgICAgICAgICAnW01TQyB2LjE1MDAgMzIgYml0cyAoSW50ZWwpXScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0X21zdmNyKCksIFsnbXN2Y3I5MCddKQorCisgICAgICAgICMgdW5rbm93bgorICAgICAgICBzeXMudmVyc2lvbiA9ICgnMi41LjEgKHIyNTE6NTQ4NjMsIEFwciAxOCAyMDA3LCAwODo1MTowOCkgJworICAgICAgICAgICAgICAgICAgICAgICAnW01TQyB2LjE5OTkgMzIgYml0cyAoSW50ZWwpXScpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGdldF9tc3ZjcikKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoQ3lnd2luQ0NvbXBpbGVyVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfZGF0YWJhc2UucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfZGF0YWJhc2UucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWQ5MWI5NAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kYXRhYmFzZS5weQpAQCAtMCwwICsxLDY4NiBAQAoraW1wb3J0IG9zCitpbXBvcnQgaW8KK2ltcG9ydCBjc3YKK2ltcG9ydCBzeXMKK2ltcG9ydCBzaHV0aWwKK2ltcG9ydCB0ZW1wZmlsZQorZnJvbSBoYXNobGliIGltcG9ydCBtZDUKK2Zyb20gdGV4dHdyYXAgaW1wb3J0IGRlZGVudAorCitmcm9tIHBhY2thZ2luZy50ZXN0cy50ZXN0X3V0aWwgaW1wb3J0IEdsb2JUZXN0Q2FzZUJhc2UKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IHJlcXVpcmVzX3psaWIKKworaW1wb3J0IHBhY2thZ2luZy5kYXRhYmFzZQorZnJvbSBwYWNrYWdpbmcuY29uZmlnIGltcG9ydCBnZXRfcmVzb3VyY2VzX2Rlc3RzCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0Vycm9yCitmcm9tIHBhY2thZ2luZy5tZXRhZGF0YSBpbXBvcnQgTWV0YWRhdGEKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0ICgKKyAgICBEaXN0cmlidXRpb24sIEVnZ0luZm9EaXN0cmlidXRpb24sIGdldF9kaXN0cmlidXRpb24sIGdldF9kaXN0cmlidXRpb25zLAorICAgIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbiwgb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbiwgZ2V0X2ZpbGVfdXNlcnMsCisgICAgZW5hYmxlX2NhY2hlLCBkaXNhYmxlX2NhY2hlLCBkaXN0aW5mb19kaXJuYW1lLCBfeWllbGRfZGlzdHJpYnV0aW9ucywKKyAgICBnZXRfZmlsZSwgZ2V0X2ZpbGVfcGF0aCkKKworIyBUT0RPIEFkZCBhIHRlc3QgZm9yIGdldHRpbmcgYSBkaXN0cmlidXRpb24gcHJvdmlkZWQgYnkgYW5vdGhlciBkaXN0cmlidXRpb24KKyMgVE9ETyBBZGQgYSB0ZXN0IGZvciBhYnNvbHV0ZSBwYXRoZWQgUkVDT1JEIGl0ZW1zIChlLmcuIC9ldGMvbXlhcHAvY29uZmlnLmluaSkKKyMgVE9ETyBBZGQgdGVzdHMgZnJvbSB0aGUgZm9ybWVyIHBlcDM3NiBwcm9qZWN0ICh6aXBwZWQgc2l0ZS1wYWNrYWdlcywgZXRjLikKKworCitkZWYgZ2V0X2hleGRpZ2VzdChmaWxlbmFtZSk6CisgICAgd2l0aCBvcGVuKGZpbGVuYW1lLCAncmInKSBhcyBmaWxlOgorICAgICAgICBjaGVja3N1bSA9IG1kNShmaWxlLnJlYWQoKSkKKyAgICByZXR1cm4gY2hlY2tzdW0uaGV4ZGlnZXN0KCkKKworCitkZWYgcmVjb3JkX3BpZWNlcyhwYXRoKToKKyAgICBwYXRoID0gb3MucGF0aC5qb2luKCpwYXRoKQorICAgIGRpZ2VzdCA9IGdldF9oZXhkaWdlc3QocGF0aCkKKyAgICBzaXplID0gb3MucGF0aC5nZXRzaXplKHBhdGgpCisgICAgcmV0dXJuIHBhdGgsIGRpZ2VzdCwgc2l6ZQorCisKK2NsYXNzIEZha2VEaXN0c01peGluOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihGYWtlRGlzdHNNaXhpbiwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoZW5hYmxlX2NhY2hlKQorICAgICAgICBkaXNhYmxlX2NhY2hlKCkKKworICAgICAgICAjIG1ha2UgYSBjb3B5IHRoYXQgd2UgY2FuIHdyaXRlIGludG8gZm9yIG91ciBmYWtlIGluc3RhbGxlZAorICAgICAgICAjIGRpc3RyaWJ1dGlvbnMKKyAgICAgICAgdG1wZGlyID0gdGVtcGZpbGUubWtkdGVtcCgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzaHV0aWwucm10cmVlLCB0bXBkaXIpCisgICAgICAgIHNlbGYuZmFrZV9kaXN0c19wYXRoID0gb3MucGF0aC5yZWFscGF0aCgKKyAgICAgICAgICAgIG9zLnBhdGguam9pbih0bXBkaXIsICdmYWtlX2Rpc3RzJykpCisgICAgICAgIGZha2VfZGlzdHNfc3JjID0gb3MucGF0aC5hYnNwYXRoKAorICAgICAgICAgICAgb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICdmYWtlX2Rpc3RzJykpCisgICAgICAgIHNodXRpbC5jb3B5dHJlZShmYWtlX2Rpc3RzX3NyYywgc2VsZi5mYWtlX2Rpc3RzX3BhdGgpCisgICAgICAgICMgWFhYIHVnbHkgd29ya2Fyb3VuZDogcmV2ZXJ0IGNvcHlzdGF0IGNhbGxzIGRvbmUgYnkgc2h1dGlsIGJlaGluZCBvdXIKKyAgICAgICAgIyBiYWNrICh0byBhdm9pZCBnZXR0aW5nIGEgcmVhZC1vbmx5IGNvcHkgb2YgYSByZWFkLW9ubHkgZmlsZSkuICB3ZQorICAgICAgICAjIGNvdWxkIHBhc3MgYSBjdXN0b20gY29weV9mdW5jdGlvbiB0byBjaGFuZ2UgdGhlIG1vZGUgb2YgZmlsZXMsIGJ1dAorICAgICAgICAjIHNodXRpbCBnaXZlcyBubyBjb250cm9sIG92ZXIgdGhlIG1vZGUgb2YgZGlyZWN0b3JpZXMgOigKKyAgICAgICAgIyBzZWUgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTE2NjYzMTgKKyAgICAgICAgZm9yIHJvb3QsIGRpcnMsIGZpbGVzIGluIG9zLndhbGsoc2VsZi5mYWtlX2Rpc3RzX3BhdGgpOgorICAgICAgICAgICAgb3MuY2htb2Qocm9vdCwgMG83NTUpCisgICAgICAgICAgICBmb3IgZiBpbiBmaWxlczoKKyAgICAgICAgICAgICAgICBvcy5jaG1vZChvcy5wYXRoLmpvaW4ocm9vdCwgZiksIDBvNjQ0KQorICAgICAgICAgICAgZm9yIGQgaW4gZGlyczoKKyAgICAgICAgICAgICAgICBvcy5jaG1vZChvcy5wYXRoLmpvaW4ocm9vdCwgZCksIDBvNzU1KQorCisKK2NsYXNzIENvbW1vbkRpc3RyaWJ1dGlvblRlc3RzKEZha2VEaXN0c01peGluKToKKyAgICAiIiJNaXhpbiB1c2VkIHRvIHRlc3QgdGhlIGludGVyZmFjZSBjb21tb24gdG8gYm90aCBEaXN0cmlidXRpb24gY2xhc3Nlcy4KKworICAgIERlcml2ZWQgY2xhc3NlcyBkZWZpbmUgY2xzLCBzYW1wbGVfZGlzdCwgZGlycyBhbmQgcmVjb3Jkcy4gIFRoZXNlCisgICAgYXR0cmlidXRlcyBhcmUgdXNlZCBpbiB0ZXN0IG1ldGhvZHMuICBTZWUgc291cmNlIGNvZGUgZm9yIGRldGFpbHMuCisgICAgIiIiCisKKyAgICBkZWYgdGVzdF9pbnN0YW50aWF0aW9uKHNlbGYpOgorICAgICAgICAjIGNoZWNrIHRoYXQgdXNlZnVsIGF0dHJpYnV0ZXMgYXJlIGhlcmUKKyAgICAgICAgbmFtZSwgdmVyc2lvbiwgZGlzdGRpciA9IHNlbGYuc2FtcGxlX2Rpc3QKKyAgICAgICAgaGVyZSA9IG9zLnBhdGguYWJzcGF0aChvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pKQorICAgICAgICBkaXN0X3BhdGggPSBvcy5wYXRoLmpvaW4oaGVyZSwgJ2Zha2VfZGlzdHMnLCBkaXN0ZGlyKQorCisgICAgICAgIGRpc3QgPSBzZWxmLmRpc3QgPSBzZWxmLmNscyhkaXN0X3BhdGgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5wYXRoLCBkaXN0X3BhdGgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5uYW1lLCBuYW1lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGFbJ05hbWUnXSwgbmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGRpc3QubWV0YWRhdGEsIE1ldGFkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QudmVyc2lvbiwgdmVyc2lvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydWZXJzaW9uJ10sIHZlcnNpb24pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X3JlcHIoc2VsZik6CisgICAgICAgIGRpc3QgPSBzZWxmLmNscyhzZWxmLmRpcnNbMF0pCisgICAgICAgICMganVzdCBjaGVjayB0aGF0IHRoZSBjbGFzcyBuYW1lIGlzIGluIHRoZSByZXByCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi5jbHMuX19uYW1lX18sIHJlcHIoZGlzdCkpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X2NvbXBhcmlzb24oc2VsZik6CisgICAgICAgICMgdGVzdHMgZm9yIF9fZXFfXyBhbmQgX19oYXNoX18KKyAgICAgICAgZGlzdCA9IHNlbGYuY2xzKHNlbGYuZGlyc1swXSkKKyAgICAgICAgZGlzdDIgPSBzZWxmLmNscyhzZWxmLmRpcnNbMF0pCisgICAgICAgIGRpc3QzID0gc2VsZi5jbHMoc2VsZi5kaXJzWzFdKQorICAgICAgICBzZWxmLmFzc2VydEluKGRpc3QsIHtkaXN0OiBUcnVlfSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0LCBkaXN0KQorCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoZGlzdCwgZGlzdDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdCwgZGlzdDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgZGlzdDMpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgKCkpCisKKyAgICBkZWYgdGVzdF9saXN0X2luc3RhbGxlZF9maWxlcyhzZWxmKToKKyAgICAgICAgZm9yIGRpcl8gaW4gc2VsZi5kaXJzOgorICAgICAgICAgICAgZGlzdCA9IHNlbGYuY2xzKGRpcl8pCisgICAgICAgICAgICBmb3IgcGF0aCwgbWQ1Xywgc2l6ZSBpbiBkaXN0Lmxpc3RfaW5zdGFsbGVkX2ZpbGVzKCk6CisgICAgICAgICAgICAgICAgcmVjb3JkX2RhdGEgPSBzZWxmLnJlY29yZHNbZGlzdC5wYXRoXQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4ocGF0aCwgcmVjb3JkX2RhdGEpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZDVfLCByZWNvcmRfZGF0YVtwYXRoXVswXSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpemUsIHJlY29yZF9kYXRhW3BhdGhdWzFdKQorCisKK2NsYXNzIFRlc3REaXN0cmlidXRpb24oQ29tbW9uRGlzdHJpYnV0aW9uVGVzdHMsIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGNscyA9IERpc3RyaWJ1dGlvbgorICAgIHNhbXBsZV9kaXN0ID0gJ2Nob3hpZScsICcyLjAuMC45JywgJ2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mbycKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoVGVzdERpc3RyaWJ1dGlvbiwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLmRpcnMgPSBbb3MucGF0aC5qb2luKHNlbGYuZmFrZV9kaXN0c19wYXRoLCBmKQorICAgICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gb3MubGlzdGRpcihzZWxmLmZha2VfZGlzdHNfcGF0aCkKKyAgICAgICAgICAgICAgICAgICAgIGlmIGYuZW5kc3dpdGgoJy5kaXN0LWluZm8nKV0KKworICAgICAgICBzZWxmLnJlY29yZHMgPSB7fQorICAgICAgICBmb3IgZGlzdGluZm9fZGlyIGluIHNlbGYuZGlyczoKKworICAgICAgICAgICAgcmVjb3JkX2ZpbGUgPSBvcy5wYXRoLmpvaW4oZGlzdGluZm9fZGlyLCAnUkVDT1JEJykKKyAgICAgICAgICAgIHdpdGggb3BlbihyZWNvcmRfZmlsZSwgJ3cnKSBhcyBmaWxlOgorICAgICAgICAgICAgICAgIHJlY29yZF93cml0ZXIgPSBjc3Yud3JpdGVyKAorICAgICAgICAgICAgICAgICAgICBmaWxlLCBkZWxpbWl0ZXI9JywnLCBxdW90aW5nPWNzdi5RVU9URV9OT05FLAorICAgICAgICAgICAgICAgICAgICBsaW5ldGVybWluYXRvcj0nXG4nKQorCisgICAgICAgICAgICAgICAgZGlzdF9sb2NhdGlvbiA9IGRpc3RpbmZvX2Rpci5yZXBsYWNlKCcuZGlzdC1pbmZvJywgJycpCisKKyAgICAgICAgICAgICAgICBmb3IgcGF0aCwgZGlycywgZmlsZXMgaW4gb3Mud2FsayhkaXN0X2xvY2F0aW9uKToKKyAgICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gZmlsZXM6CisgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmRfd3JpdGVyLndyaXRlcm93KHJlY29yZF9waWVjZXMoKHBhdGgsIGYpKSkKKyAgICAgICAgICAgICAgICBmb3IgZmlsZSBpbiAoJ0lOU1RBTExFUicsICdNRVRBREFUQScsICdSRVFVRVNURUQnKToKKyAgICAgICAgICAgICAgICAgICAgcmVjb3JkX3dyaXRlci53cml0ZXJvdyhyZWNvcmRfcGllY2VzKChkaXN0aW5mb19kaXIsIGZpbGUpKSkKKyAgICAgICAgICAgICAgICByZWNvcmRfd3JpdGVyLndyaXRlcm93KFtyZWNvcmRfZmlsZV0pCisKKyAgICAgICAgICAgIHdpdGggb3BlbihyZWNvcmRfZmlsZSkgYXMgZmlsZToKKyAgICAgICAgICAgICAgICByZWNvcmRfcmVhZGVyID0gY3N2LnJlYWRlcihmaWxlLCBsaW5ldGVybWluYXRvcj0nXG4nKQorICAgICAgICAgICAgICAgIHJlY29yZF9kYXRhID0ge30KKyAgICAgICAgICAgICAgICBmb3Igcm93IGluIHJlY29yZF9yZWFkZXI6CisgICAgICAgICAgICAgICAgICAgIGlmIHJvdyA9PSBbXToKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgICAgIHBhdGgsIG1kNV8sIHNpemUgPSAocm93WzpdICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbTm9uZSBmb3IgaSBpbiByYW5nZShsZW4ocm93KSwgMyldKQorICAgICAgICAgICAgICAgICAgICByZWNvcmRfZGF0YVtwYXRoXSA9IG1kNV8sIHNpemUKKyAgICAgICAgICAgIHNlbGYucmVjb3Jkc1tkaXN0aW5mb19kaXJdID0gcmVjb3JkX2RhdGEKKworICAgIGRlZiB0ZXN0X2luc3RhbnRpYXRpb24oc2VsZik6CisgICAgICAgIHN1cGVyKFRlc3REaXN0cmlidXRpb24sIHNlbGYpLnRlc3RfaW5zdGFudGlhdGlvbigpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShzZWxmLmRpc3QucmVxdWVzdGVkLCBib29sKQorCisgICAgZGVmIHRlc3RfdXNlcyhzZWxmKToKKyAgICAgICAgIyBUZXN0IHRvIGRldGVybWluZSBpZiBhIGRpc3RyaWJ1dGlvbiB1c2VzIGEgc3BlY2lmaWVkIGZpbGUuCisgICAgICAgICMgQ3JpdGVyaWEgdG8gdGVzdCBhZ2FpbnN0CisgICAgICAgIGRpc3RpbmZvX25hbWUgPSAnZ3JhbW1hci0xLjBhNCcKKyAgICAgICAgZGlzdGluZm9fZGlyID0gb3MucGF0aC5qb2luKHNlbGYuZmFrZV9kaXN0c19wYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluZm9fbmFtZSArICcuZGlzdC1pbmZvJykKKyAgICAgICAgdHJ1ZV9wYXRoID0gW3NlbGYuZmFrZV9kaXN0c19wYXRoLCBkaXN0aW5mb19uYW1lLAorICAgICAgICAgICAgICAgICAgICAgJ2dyYW1tYXInLCAndXRpbHMucHknXQorICAgICAgICB0cnVlX3BhdGggPSBvcy5wYXRoLmpvaW4oKnRydWVfcGF0aCkKKyAgICAgICAgZmFsc2VfcGF0aCA9IFtzZWxmLmZha2VfZGlzdHNfcGF0aCwgJ3Rvd2VsX3N0dWZmLTAuMScsICd0b3dlbF9zdHVmZicsCisgICAgICAgICAgICAgICAgICAgICAgJ19faW5pdF9fLnB5J10KKyAgICAgICAgZmFsc2VfcGF0aCA9IG9zLnBhdGguam9pbigqZmFsc2VfcGF0aCkKKworICAgICAgICAjIFRlc3QgaWYgdGhlIGRpc3RyaWJ1dGlvbiB1c2VzIHRoZSBmaWxlIGluIHF1ZXN0aW9uCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oZGlzdGluZm9fZGlyKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZGlzdC51c2VzKHRydWVfcGF0aCksICdkaXN0ICVyIGlzIHN1cHBvc2VkIHRvIHVzZSAlcicgJQorICAgICAgICAgICAgICAgICAgICAgICAgKGRpc3QsIHRydWVfcGF0aCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZGlzdC51c2VzKGZhbHNlX3BhdGgpLCAnZGlzdCAlciBpcyBub3Qgc3VwcG9zZWQgdG8gJworICAgICAgICAgICAgICAgICAgICAgICAgICd1c2UgJXInICUgKGRpc3QsIHRydWVfcGF0aCkpCisKKyAgICBkZWYgdGVzdF9nZXRfZGlzdGluZm9fZmlsZShzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoZSByZXRyaWV2YWwgb2YgZGlzdC1pbmZvIGZpbGUgb2JqZWN0cy4KKyAgICAgICAgZGlzdGluZm9fbmFtZSA9ICdjaG94aWUtMi4wLjAuOScKKyAgICAgICAgb3RoZXJfZGlzdGluZm9fbmFtZSA9ICdncmFtbWFyLTEuMGE0JworICAgICAgICBkaXN0aW5mb19kaXIgPSBvcy5wYXRoLmpvaW4oc2VsZi5mYWtlX2Rpc3RzX3BhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5mb19uYW1lICsgJy5kaXN0LWluZm8nKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKGRpc3RpbmZvX2RpcikKKyAgICAgICAgIyBUZXN0IGZvciBrbm93biBnb29kIGZpbGUgbWF0Y2hlcworICAgICAgICBkaXN0aW5mb19maWxlcyA9IFsKKyAgICAgICAgICAgICMgUmVsYXRpdmUgcGF0aHMKKyAgICAgICAgICAgICdJTlNUQUxMRVInLCAnTUVUQURBVEEnLAorICAgICAgICAgICAgIyBBYnNvbHV0ZSBwYXRocworICAgICAgICAgICAgb3MucGF0aC5qb2luKGRpc3RpbmZvX2RpciwgJ1JFQ09SRCcpLAorICAgICAgICAgICAgb3MucGF0aC5qb2luKGRpc3RpbmZvX2RpciwgJ1JFUVVFU1RFRCcpLAorICAgICAgICBdCisKKyAgICAgICAgZm9yIGRpc3RmaWxlIGluIGRpc3RpbmZvX2ZpbGVzOgorICAgICAgICAgICAgd2l0aCBkaXN0LmdldF9kaXN0aW5mb19maWxlKGRpc3RmaWxlKSBhcyB2YWx1ZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UodmFsdWUsIGlvLlRleHRJT1dyYXBwZXIpCisgICAgICAgICAgICAgICAgIyBJcyBpdCB0aGUgY29ycmVjdCBmaWxlPworICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodmFsdWUubmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihkaXN0aW5mb19kaXIsIGRpc3RmaWxlKSkKKworICAgICAgICAjIFRlc3QgYW4gYWJzb2x1dGUgcGF0aCB0aGF0IGlzIHBhcnQgb2YgYW5vdGhlciBkaXN0cmlidXRpb25zIGRpc3QtaW5mbworICAgICAgICBvdGhlcl9kaXN0aW5mb19maWxlID0gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgc2VsZi5mYWtlX2Rpc3RzX3BhdGgsIG90aGVyX2Rpc3RpbmZvX25hbWUgKyAnLmRpc3QtaW5mbycsCisgICAgICAgICAgICAnUkVRVUVTVEVEJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nRXJyb3IsIGRpc3QuZ2V0X2Rpc3RpbmZvX2ZpbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIG90aGVyX2Rpc3RpbmZvX2ZpbGUpCisgICAgICAgICMgVGVzdCBmb3IgYSBmaWxlIHRoYXQgc2hvdWxkIG5vdCBleGlzdAorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdFcnJvciwgZGlzdC5nZXRfZGlzdGluZm9fZmlsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ01BR0lDRklMRScpCisKKyAgICBkZWYgdGVzdF9saXN0X2Rpc3RpbmZvX2ZpbGVzKHNlbGYpOgorICAgICAgICBkaXN0aW5mb19uYW1lID0gJ3Rvd2VsX3N0dWZmLTAuMScKKyAgICAgICAgZGlzdGluZm9fZGlyID0gb3MucGF0aC5qb2luKHNlbGYuZmFrZV9kaXN0c19wYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluZm9fbmFtZSArICcuZGlzdC1pbmZvJykKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbihkaXN0aW5mb19kaXIpCisgICAgICAgICMgVGVzdCBmb3IgdGhlIGl0ZXJhdGlvbiBvZiB0aGUgcmF3IHBhdGgKKyAgICAgICAgZGlzdGluZm9fZmlsZXMgPSBbb3MucGF0aC5qb2luKGRpc3RpbmZvX2RpciwgZmlsZW5hbWUpIGZvciBmaWxlbmFtZSBpbgorICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5saXN0ZGlyKGRpc3RpbmZvX2RpcildCisgICAgICAgIGZvdW5kID0gZGlzdC5saXN0X2Rpc3RpbmZvX2ZpbGVzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoZm91bmQpLCBzb3J0ZWQoZGlzdGluZm9fZmlsZXMpKQorICAgICAgICAjIFRlc3QgZm9yIHRoZSBpdGVyYXRpb24gb2YgbG9jYWwgYWJzb2x1dGUgcGF0aHMKKyAgICAgICAgZGlzdGluZm9fZmlsZXMgPSBbb3MucGF0aC5qb2luKHN5cy5wcmVmaXgsIGRpc3RpbmZvX2RpciwgcGF0aCkgZm9yCisgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGggaW4gZGlzdGluZm9fZmlsZXNdCisgICAgICAgIGZvdW5kID0gc29ydGVkKGRpc3QubGlzdF9kaXN0aW5mb19maWxlcyhsb2NhbD1UcnVlKSkKKyAgICAgICAgaWYgb3Muc2VwICE9ICcvJzoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJy8nLCBmb3VuZFswXSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4ob3Muc2VwLCBmb3VuZFswXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3VuZCwgc29ydGVkKGRpc3RpbmZvX2ZpbGVzKSkKKworICAgIGRlZiB0ZXN0X2dldF9yZXNvdXJjZXNfcGF0aChzZWxmKToKKyAgICAgICAgZGlzdGluZm9fbmFtZSA9ICdiYWJhci0wLjEnCisgICAgICAgIGRpc3RpbmZvX2RpciA9IG9zLnBhdGguam9pbihzZWxmLmZha2VfZGlzdHNfcGF0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RpbmZvX25hbWUgKyAnLmRpc3QtaW5mbycpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oZGlzdGluZm9fZGlyKQorICAgICAgICByZXNvdXJjZV9wYXRoID0gZGlzdC5nZXRfcmVzb3VyY2VfcGF0aCgnYmFiYXIucG5nJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNvdXJjZV9wYXRoLCAnYmFiYXIucG5nJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoS2V5RXJyb3IsIGRpc3QuZ2V0X3Jlc291cmNlX3BhdGgsICdub3RleGlzdCcpCisKKworY2xhc3MgVGVzdEVnZ0luZm9EaXN0cmlidXRpb24oQ29tbW9uRGlzdHJpYnV0aW9uVGVzdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgY2xzID0gRWdnSW5mb0Rpc3RyaWJ1dGlvbgorICAgIHNhbXBsZV9kaXN0ID0gJ2JhY29uJywgJzAuMScsICdiYWNvbi0wLjEuZWdnLWluZm8nCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFRlc3RFZ2dJbmZvRGlzdHJpYnV0aW9uLCBzZWxmKS5zZXRVcCgpCisKKyAgICAgICAgc2VsZi5kaXJzID0gW29zLnBhdGguam9pbihzZWxmLmZha2VfZGlzdHNfcGF0aCwgZikKKyAgICAgICAgICAgICAgICAgICAgIGZvciBmIGluIG9zLmxpc3RkaXIoc2VsZi5mYWtlX2Rpc3RzX3BhdGgpCisgICAgICAgICAgICAgICAgICAgICBpZiBmLmVuZHN3aXRoKCcuZWdnJykgb3IgZi5lbmRzd2l0aCgnLmVnZy1pbmZvJyldCisKKyAgICAgICAgc2VsZi5yZWNvcmRzID0ge30KKworICAgIEB1bml0dGVzdC5za2lwKCdub3QgaW1wbGVtZW50ZWQgeWV0JykKKyAgICBkZWYgdGVzdF9saXN0X2luc3RhbGxlZF9maWxlcyhzZWxmKToKKyAgICAgICAgIyBFZ2dJbmZvRGlzdHJpYnV0aW9uIGRlZmluZXMgbGlzdF9pbnN0YWxsZWRfZmlsZXMgYnV0IHRoZXJlIGlzIG5vCisgICAgICAgICMgdGVzdCBmb3IgaXQgeWV0OyBzb21lb25lIHdpdGggc2V0dXB0b29scyBleHBlcnRpc2UgbmVlZHMgdG8gYWRkIGEKKyAgICAgICAgIyBmaWxlIHdpdGggdGhlIGxpc3Qgb2YgaW5zdGFsbGVkIGZpbGVzIGZvciBvbmUgb2YgdGhlIGVnZyBmYWtlIGRpc3RzCisgICAgICAgICMgYW5kIHdyaXRlIHRoZSBzdXBwb3J0IGNvZGUgdG8gcG9wdWxhdGUgc2VsZi5yZWNvcmRzIChhbmQgdGhlbiBkZWxldGUKKyAgICAgICAgIyB0aGlzIG1ldGhvZCkKKyAgICAgICAgcGFzcworCisKK2NsYXNzIFRlc3REYXRhYmFzZShzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgIEZha2VEaXN0c01peGluLAorICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoVGVzdERhdGFiYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHN5cy5wYXRoLmluc2VydCgwLCBzZWxmLmZha2VfZGlzdHNfcGF0aCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5wYXRoLnJlbW92ZSwgc2VsZi5mYWtlX2Rpc3RzX3BhdGgpCisKKyAgICBkZWYgdGVzdF9jYWNoZXMoc2VsZik6CisgICAgICAgICMgc2FuaXR5IGNoZWNrIGZvciBpbnRlcm5hbCBjYWNoZXMKKyAgICAgICAgZm9yIG5hbWUgaW4gKCdfY2FjaGVfbmFtZScsICdfY2FjaGVfbmFtZV9lZ2cnLAorICAgICAgICAgICAgICAgICAgICAgJ19jYWNoZV9wYXRoJywgJ19jYWNoZV9wYXRoX2VnZycpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRhdHRyKHBhY2thZ2luZy5kYXRhYmFzZSwgbmFtZSksIHt9KQorCisgICAgZGVmIHRlc3RfZGlzdGluZm9fZGlybmFtZShzZWxmKToKKyAgICAgICAgIyBHaXZlbiBhIG5hbWUgYW5kIGEgdmVyc2lvbiwgd2UgZXhwZWN0IHRoZSBkaXN0aW5mb19kaXJuYW1lIGZ1bmN0aW9uCisgICAgICAgICMgdG8gcmV0dXJuIGEgc3RhbmRhcmQgZGlzdHJpYnV0aW9uIGluZm9ybWF0aW9uIGRpcmVjdG9yeSBuYW1lLgorCisgICAgICAgIGl0ZW1zID0gWworICAgICAgICAgICAgIyAobmFtZSwgdmVyc2lvbiwgc3RhbmRhcmRfZGlybmFtZSkKKyAgICAgICAgICAgICMgVGVzdCBmb3IgYSB2ZXJ5IHNpbXBsZSBzaW5nbGUgd29yZCBuYW1lIGFuZCBkZWNpbWFsIHZlcnNpb24KKyAgICAgICAgICAgICMgbnVtYmVyCisgICAgICAgICAgICAoJ2RvY3V0aWxzJywgJzAuNScsICdkb2N1dGlscy0wLjUuZGlzdC1pbmZvJyksCisgICAgICAgICAgICAjIFRlc3QgZm9yIGFub3RoZXIgZXhjZXB0IHRoaXMgdGltZSB3aXRoIGEgJy0nIGluIHRoZSBuYW1lLCB3aGljaAorICAgICAgICAgICAgIyBuZWVkcyB0byBiZSB0cmFuc2Zvcm1lZCBkdXJpbmcgdGhlIG5hbWUgbG9va3VwCisgICAgICAgICAgICAoJ3B5dGhvbi1sZGFwJywgJzIuNScsICdweXRob25fbGRhcC0yLjUuZGlzdC1pbmZvJyksCisgICAgICAgICAgICAjIFRlc3QgZm9yIGJvdGggJy0nIGluIHRoZSBuYW1lIGFuZCBhIGZ1bmt5IHZlcnNpb24gbnVtYmVyCisgICAgICAgICAgICAoJ3B5dGhvbi1sZGFwJywgJzIuNSBhLS0tNScsICdweXRob25fbGRhcC0yLjUgYS0tLTUuZGlzdC1pbmZvJyksCisgICAgICAgICAgICBdCisKKyAgICAgICAgIyBMb29wIHRocm91Z2ggdGhlIGl0ZW1zIHRvIHZhbGlkYXRlIHRoZSByZXN1bHRzCisgICAgICAgIGZvciBuYW1lLCB2ZXJzaW9uLCBzdGFuZGFyZF9kaXJuYW1lIGluIGl0ZW1zOgorICAgICAgICAgICAgZGlybmFtZSA9IGRpc3RpbmZvX2Rpcm5hbWUobmFtZSwgdmVyc2lvbikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlybmFtZSwgc3RhbmRhcmRfZGlybmFtZSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfZ2V0X2Rpc3RyaWJ1dGlvbnMoc2VsZik6CisgICAgICAgICMgTG9va3VwIGFsbCBkaXN0cmlidXRpb25zIGZvdW5kIGluIHRoZSBgYHN5cy5wYXRoYGAuCisgICAgICAgICMgVGhpcyB0ZXN0IGNvdWxkIHBvdGVudGlhbGx5IHBpY2sgdXAgb3RoZXIgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbnMKKyAgICAgICAgZmFrZV9kaXN0cyA9IFsoJ2dyYW1tYXInLCAnMS4wYTQnKSwgKCdjaG94aWUnLCAnMi4wLjAuOScpLAorICAgICAgICAgICAgICAgICAgICAgICgndG93ZWwtc3R1ZmYnLCAnMC4xJyksICgnYmFiYXInLCAnMC4xJyldCisgICAgICAgIGZvdW5kX2Rpc3RzID0gW10KKworICAgICAgICAjIFZlcmlmeSB0aGUgZmFrZSBkaXN0cyBoYXZlIGJlZW4gZm91bmQuCisgICAgICAgIGRpc3RzID0gW2Rpc3QgZm9yIGRpc3QgaW4gZ2V0X2Rpc3RyaWJ1dGlvbnMoKV0KKyAgICAgICAgZm9yIGRpc3QgaW4gZGlzdHM6CisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZGlzdCwgRGlzdHJpYnV0aW9uKQorICAgICAgICAgICAgaWYgKGRpc3QubmFtZSBpbiBkaWN0KGZha2VfZGlzdHMpIGFuZAorICAgICAgICAgICAgICAgIGRpc3QucGF0aC5zdGFydHN3aXRoKHNlbGYuZmFrZV9kaXN0c19wYXRoKSk6CisgICAgICAgICAgICAgICAgZm91bmRfZGlzdHMuYXBwZW5kKChkaXN0Lm5hbWUsIGRpc3QudmVyc2lvbikpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICMgY2hlY2sgdGhhdCBpdCBkb2Vzbid0IGZpbmQgYW55dGhpbmcgbW9yZSB0aGFuIHRoaXMKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGRpc3QucGF0aC5zdGFydHN3aXRoKHNlbGYuZmFrZV9kaXN0c19wYXRoKSkKKyAgICAgICAgICAgICMgb3RoZXJ3aXNlIHdlIGRvbid0IGNhcmUgd2hhdCBvdGhlciBkaXN0cmlidXRpb25zIGFyZSBmb3VuZAorCisgICAgICAgICMgRmluYWxseSwgdGVzdCB0aGF0IHdlIGZvdW5kIGFsbCB0aGF0IHdlIHdlcmUgbG9va2luZyBmb3IKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoZm91bmRfZGlzdHMpLCBzb3J0ZWQoZmFrZV9kaXN0cykpCisKKyAgICAgICAgIyBOb3csIHRlc3QgaWYgdGhlIGVnZy1pbmZvIGRpc3RyaWJ1dGlvbnMgYXJlIGZvdW5kIGNvcnJlY3RseSBhcyB3ZWxsCisgICAgICAgIGZha2VfZGlzdHMgKz0gWygnYmFjb24nLCAnMC4xJyksICgnY2hlZXNlJywgJzIuMC4yJyksCisgICAgICAgICAgICAgICAgICAgICAgICgnY29jb251dHMtYXN0ZXInLCAnMTAuMycpLAorICAgICAgICAgICAgICAgICAgICAgICAoJ2JhbmFuYScsICcwLjQnKSwgKCdzdHJhd2JlcnJ5JywgJzAuNicpLAorICAgICAgICAgICAgICAgICAgICAgICAoJ3RydWZmbGVzJywgJzUuMCcpLCAoJ251dCcsICdmdW5reXZlcnNpb24nKV0KKyAgICAgICAgZm91bmRfZGlzdHMgPSBbXQorCisgICAgICAgIGRpc3RzID0gW2Rpc3QgZm9yIGRpc3QgaW4gZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBmb3IgZGlzdCBpbiBkaXN0czoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkaXN0LCAoRGlzdHJpYnV0aW9uLCBFZ2dJbmZvRGlzdHJpYnV0aW9uKSkKKyAgICAgICAgICAgIGlmIChkaXN0Lm5hbWUgaW4gZGljdChmYWtlX2Rpc3RzKSBhbmQKKyAgICAgICAgICAgICAgICBkaXN0LnBhdGguc3RhcnRzd2l0aChzZWxmLmZha2VfZGlzdHNfcGF0aCkpOgorICAgICAgICAgICAgICAgIGZvdW5kX2Rpc3RzLmFwcGVuZCgoZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGRpc3QucGF0aC5zdGFydHN3aXRoKHNlbGYuZmFrZV9kaXN0c19wYXRoKSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvcnRlZChmYWtlX2Rpc3RzKSwgc29ydGVkKGZvdW5kX2Rpc3RzKSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfZ2V0X2Rpc3RyaWJ1dGlvbihzZWxmKToKKyAgICAgICAgIyBUZXN0IGZvciBsb29raW5nIHVwIGEgZGlzdHJpYnV0aW9uIGJ5IG5hbWUuCisgICAgICAgICMgVGVzdCB0aGUgbG9va3VwIG9mIHRoZSB0b3dlbC1zdHVmZiBkaXN0cmlidXRpb24KKyAgICAgICAgbmFtZSA9ICd0b3dlbC1zdHVmZicgICMgTm90ZTogVGhpcyBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgZGlyZWN0b3J5IG5hbWUKKworICAgICAgICAjIExvb2t1cCB0aGUgZGlzdHJpYnV0aW9uCisgICAgICAgIGRpc3QgPSBnZXRfZGlzdHJpYnV0aW9uKG5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkaXN0LCBEaXN0cmlidXRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5uYW1lLCBuYW1lKQorCisgICAgICAgICMgVmVyaWZ5IHRoYXQgYW4gdW5rbm93biBkaXN0cmlidXRpb24gcmV0dXJucyBOb25lCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGdldF9kaXN0cmlidXRpb24oJ2JvZ3VzJykpCisKKyAgICAgICAgIyBWZXJpZnkgcGFydGlhbCBuYW1lIG1hdGNoaW5nIGRvZXNuJ3Qgd29yaworICAgICAgICBzZWxmLmFzc2VydElzTm9uZShnZXRfZGlzdHJpYnV0aW9uKCd0b3dlbCcpKQorCisgICAgICAgICMgVmVyaWZ5IHRoYXQgaXQgZG9lcyBub3QgZmluZCBlZ2ctaW5mbyBkaXN0cmlidXRpb25zLCB3aGVuIG5vdAorICAgICAgICAjIGluc3RydWN0ZWQgdG8KKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZ2V0X2Rpc3RyaWJ1dGlvbignYmFjb24nKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZ2V0X2Rpc3RyaWJ1dGlvbignY2hlZXNlJykpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGdldF9kaXN0cmlidXRpb24oJ3N0cmF3YmVycnknKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZ2V0X2Rpc3RyaWJ1dGlvbignYmFuYW5hJykpCisKKyAgICAgICAgIyBOb3cgY2hlY2sgdGhhdCBpdCB3b3JrcyB3ZWxsIGluIGJvdGggc2l0dWF0aW9ucywgd2hlbiBlZ2ctaW5mbworICAgICAgICAjIGlzIGEgZmlsZSBhbmQgZGlyZWN0b3J5IHJlc3BlY3RpdmVseS4KKyAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24oJ2NoZWVzZScsIHVzZV9lZ2dfaW5mbz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZGlzdCwgRWdnSW5mb0Rpc3RyaWJ1dGlvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm5hbWUsICdjaGVlc2UnKQorCisgICAgICAgIGRpc3QgPSBnZXRfZGlzdHJpYnV0aW9uKCdiYWNvbicsIHVzZV9lZ2dfaW5mbz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZGlzdCwgRWdnSW5mb0Rpc3RyaWJ1dGlvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm5hbWUsICdiYWNvbicpCisKKyAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24oJ2JhbmFuYScsIHVzZV9lZ2dfaW5mbz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZGlzdCwgRWdnSW5mb0Rpc3RyaWJ1dGlvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm5hbWUsICdiYW5hbmEnKQorCisgICAgICAgIGRpc3QgPSBnZXRfZGlzdHJpYnV0aW9uKCdzdHJhd2JlcnJ5JywgdXNlX2VnZ19pbmZvPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkaXN0LCBFZ2dJbmZvRGlzdHJpYnV0aW9uKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubmFtZSwgJ3N0cmF3YmVycnknKQorCisgICAgZGVmIHRlc3RfZ2V0X2ZpbGVfdXNlcnMoc2VsZik6CisgICAgICAgICMgVGVzdCB0aGUgaXRlcmF0aW9uIG9mIGRpc3RyaWJ1dGlvbnMgdGhhdCB1c2UgYSBmaWxlLgorICAgICAgICBuYW1lID0gJ3Rvd2VsX3N0dWZmLTAuMScKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLmZha2VfZGlzdHNfcGF0aCwgbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAndG93ZWxfc3R1ZmYnLCAnX19pbml0X18ucHknKQorICAgICAgICBmb3IgZGlzdCBpbiBnZXRfZmlsZV91c2VycyhwYXRoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkaXN0LCBEaXN0cmlidXRpb24pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubmFtZSwgbmFtZSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfcHJvdmlkZXMoc2VsZik6CisgICAgICAgICMgVGVzdCBmb3IgbG9va2luZyB1cCBkaXN0cmlidXRpb25zIGJ5IHdoYXQgdGhleSBwcm92aWRlCisgICAgICAgIGNoZWNrTGlzdHMgPSBsYW1iZGEgeCwgeTogc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoeCksIHNvcnRlZCh5KSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ3RydWZmbGVzJyldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWydjaG94aWUnLCAndG93ZWwtc3R1ZmYnXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ3RydWZmbGVzJywgJzEuMCcpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY2hveGllJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICcxLjAnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY2hveGllJywgJ2NoZWVzZSddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnMS4xLjInKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ3Rvd2VsLXN0dWZmJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICcxLjEnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ3Rvd2VsLXN0dWZmJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnIT0xLjEsPD0yLjAnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2Nob3hpZSddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyE9MS4xLDw9Mi4wJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWydjaG94aWUnLCAnYmFjb24nLCAnY2hlZXNlJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICc+MS4wJyldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWyd0b3dlbC1zdHVmZiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnPjEuNScpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFtdKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnPjEuNScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWydiYWNvbiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnPj0xLjAnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2Nob3hpZScsICd0b3dlbC1zdHVmZiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbignc3RyYXdiZXJyeScsICcwLjYnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY29jb251dHMtYXN0ZXInXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ3N0cmF3YmVycnknLCAnPj0wLjUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY29jb251dHMtYXN0ZXInXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ3N0cmF3YmVycnknLCAnPjAuNicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgW10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCdiYW5hbmEnLCAnMC40JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZV9lZ2dfaW5mbz1UcnVlKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2NvY29udXRzLWFzdGVyJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCdiYW5hbmEnLCAnPj0wLjMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY29jb251dHMtYXN0ZXInXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ2JhbmFuYScsICchPTAuNCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgW10pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X29ic29sZXRlcyhzZWxmKToKKyAgICAgICAgIyBUZXN0IGxvb2tpbmcgZm9yIGRpc3RyaWJ1dGlvbnMgYmFzZWQgb24gd2hhdCB0aGV5IG9ic29sZXRlCisgICAgICAgIGNoZWNrTGlzdHMgPSBsYW1iZGEgeCwgeTogc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoeCksIHNvcnRlZCh5KSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBvYnNvbGV0ZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICcxLjAnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBvYnNvbGV0ZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICcxLjAnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZV9lZ2dfaW5mbz1UcnVlKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2NoZWVzZScsICdiYWNvbiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIG9ic29sZXRlc19kaXN0cmlidXRpb24oJ3RydWZmbGVzJywgJzAuOCcpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY2hveGllJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnMC44JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWydjaG94aWUnLCAnY2hlZXNlJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnMC45LjYnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2Nob3hpZScsICd0b3dlbC1zdHVmZiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIG9ic29sZXRlc19kaXN0cmlidXRpb24oJ3RydWZmbGVzJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnMC41LjIuMycpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY2hveGllJywgJ3Rvd2VsLXN0dWZmJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnMC4yJyldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWyd0b3dlbC1zdHVmZiddKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF95aWVsZF9kaXN0cmlidXRpb24oc2VsZik6CisgICAgICAgICMgdGVzdHMgdGhlIGludGVybmFsIGZ1bmN0aW9uIF95aWVsZF9kaXN0cmlidXRpb25zCisgICAgICAgIGNoZWNrTGlzdHMgPSBsYW1iZGEgeCwgeTogc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoeCksIHNvcnRlZCh5KSkKKworICAgICAgICBlZ2dzID0gWygnYmFjb24nLCAnMC4xJyksICgnYmFuYW5hJywgJzAuNCcpLCAoJ3N0cmF3YmVycnknLCAnMC42JyksCisgICAgICAgICAgICAgICAgKCd0cnVmZmxlcycsICc1LjAnKSwgKCdjaGVlc2UnLCAnMi4wLjInKSwKKyAgICAgICAgICAgICAgICAoJ2NvY29udXRzLWFzdGVyJywgJzEwLjMnKSwgKCdudXQnLCAnZnVua3l2ZXJzaW9uJyldCisgICAgICAgIGRpc3RzID0gWygnY2hveGllJywgJzIuMC4wLjknKSwgKCdncmFtbWFyJywgJzEuMGE0JyksCisgICAgICAgICAgICAgICAgICgndG93ZWwtc3R1ZmYnLCAnMC4xJyksICgnYmFiYXInLCAnMC4xJyldCisKKyAgICAgICAgY2hlY2tMaXN0cyhbXSwgX3lpZWxkX2Rpc3RyaWJ1dGlvbnMoRmFsc2UsIEZhbHNlLCBzeXMucGF0aCkpCisKKyAgICAgICAgZm91bmQgPSBbKGRpc3QubmFtZSwgZGlzdC52ZXJzaW9uKQorICAgICAgICAgICAgICAgICBmb3IgZGlzdCBpbiBfeWllbGRfZGlzdHJpYnV0aW9ucyhGYWxzZSwgVHJ1ZSwgc3lzLnBhdGgpCisgICAgICAgICAgICAgICAgIGlmIGRpc3QucGF0aC5zdGFydHN3aXRoKHNlbGYuZmFrZV9kaXN0c19wYXRoKV0KKyAgICAgICAgY2hlY2tMaXN0cyhlZ2dzLCBmb3VuZCkKKworICAgICAgICBmb3VuZCA9IFsoZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pCisgICAgICAgICAgICAgICAgIGZvciBkaXN0IGluIF95aWVsZF9kaXN0cmlidXRpb25zKFRydWUsIEZhbHNlLCBzeXMucGF0aCkKKyAgICAgICAgICAgICAgICAgaWYgZGlzdC5wYXRoLnN0YXJ0c3dpdGgoc2VsZi5mYWtlX2Rpc3RzX3BhdGgpXQorICAgICAgICBjaGVja0xpc3RzKGRpc3RzLCBmb3VuZCkKKworICAgICAgICBmb3VuZCA9IFsoZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pCisgICAgICAgICAgICAgICAgIGZvciBkaXN0IGluIF95aWVsZF9kaXN0cmlidXRpb25zKFRydWUsIFRydWUsIHN5cy5wYXRoKQorICAgICAgICAgICAgICAgICBpZiBkaXN0LnBhdGguc3RhcnRzd2l0aChzZWxmLmZha2VfZGlzdHNfcGF0aCldCisgICAgICAgIGNoZWNrTGlzdHMoZGlzdHMgKyBlZ2dzLCBmb3VuZCkKKworCitjbGFzcyBEYXRhRmlsZXNUZXN0Q2FzZShHbG9iVGVzdENhc2VCYXNlKToKKworICAgIGRlZiBhc3NlcnRSdWxlc01hdGNoKHNlbGYsIHJ1bGVzLCBzcGVjKToKKyAgICAgICAgdGVtcGRpciA9IHNlbGYuYnVpbGRfZmlsZXNfdHJlZShzcGVjKQorICAgICAgICBleHBlY3RlZCA9IHNlbGYuY2xlYW5fdHJlZShzcGVjKQorICAgICAgICByZXN1bHQgPSBnZXRfcmVzb3VyY2VzX2Rlc3RzKHRlbXBkaXIsIHJ1bGVzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCByZXN1bHQpCisKKyAgICBkZWYgY2xlYW5fdHJlZShzZWxmLCBzcGVjKToKKyAgICAgICAgZmlsZXMgPSB7fQorICAgICAgICBmb3IgcGF0aCwgdmFsdWUgaW4gc3BlYy5pdGVtcygpOgorICAgICAgICAgICAgaWYgdmFsdWUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZmlsZXNbcGF0aF0gPSB2YWx1ZQorICAgICAgICByZXR1cm4gZmlsZXMKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9nbG9iKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsoJycsICcqLnRwbCcsICd7ZGF0YX0nKV0KKyAgICAgICAgc3BlYyA9IHsnY291Y291LnRwbCc6ICd7ZGF0YX0vY291Y291LnRwbCcsCisgICAgICAgICAgICAgICAgJ0Rvbm90d2FudCc6IE5vbmV9CisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X211bHRpcGxlX21hdGNoKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsoJ3NjcmlwdHMnLCAnKi5iaW4nLCAne2FwcGRhdGF9JyksCisgICAgICAgICAgICAgICAgICgnc2NyaXB0cycsICcqJywgJ3thcHBzY3JpcHR9JyldCisgICAgICAgIHNwZWMgPSB7J3NjcmlwdHMvc2NyaXB0LmJpbic6ICd7YXBwc2NyaXB0fS9zY3JpcHQuYmluJywKKyAgICAgICAgICAgICAgICAnQmFiYXJsaWtlc3RyYXdiZXJyeSc6IE5vbmV9CisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X3NldF9tYXRjaChzZWxmKToKKyAgICAgICAgcnVsZXMgPSBbKCdzY3JpcHRzJywgJyoue2JpbixzaH0nLCAne2FwcHNjcmlwdH0nKV0KKyAgICAgICAgc3BlYyA9IHsnc2NyaXB0cy9zY3JpcHQuYmluJzogJ3thcHBzY3JpcHR9L3NjcmlwdC5iaW4nLAorICAgICAgICAgICAgICAgICdzY3JpcHRzL2JhYmFyLnNoJzogICd7YXBwc2NyaXB0fS9iYWJhci5zaCcsCisgICAgICAgICAgICAgICAgJ0JhYmFybGlrZXN0cmF3YmVycnknOiBOb25lfQorICAgICAgICBzZWxmLmFzc2VydFJ1bGVzTWF0Y2gocnVsZXMsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9zZXRfbWF0Y2hfbXVsdGlwbGUoc2VsZik6CisgICAgICAgIHJ1bGVzID0gWygnc2NyaXB0cycsICdzY3JpcHR7cyx9LntiaW4sc2h9JywgJ3thcHBzY3JpcHR9JyldCisgICAgICAgIHNwZWMgPSB7J3NjcmlwdHMvc2NyaXB0cy5iaW4nOiAne2FwcHNjcmlwdH0vc2NyaXB0cy5iaW4nLAorICAgICAgICAgICAgICAgICdzY3JpcHRzL3NjcmlwdC5zaCc6ICAne2FwcHNjcmlwdH0vc2NyaXB0LnNoJywKKyAgICAgICAgICAgICAgICAnQmFiYXJsaWtlc3RyYXdiZXJyeSc6IE5vbmV9CisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X3NldF9tYXRjaF9leGNsdWRlKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsoJ3NjcmlwdHMnLCAnKicsICd7YXBwc2NyaXB0fScpLAorICAgICAgICAgICAgICAgICAoJycsIG9zLnBhdGguam9pbignKionLCAnKi5zaCcpLCBOb25lKV0KKyAgICAgICAgc3BlYyA9IHsnc2NyaXB0cy9zY3JpcHRzLmJpbic6ICd7YXBwc2NyaXB0fS9zY3JpcHRzLmJpbicsCisgICAgICAgICAgICAgICAgJ3NjcmlwdHMvc2NyaXB0LnNoJzogIE5vbmUsCisgICAgICAgICAgICAgICAgJ0JhYmFybGlrZXN0cmF3YmVycnknOiBOb25lfQorICAgICAgICBzZWxmLmFzc2VydFJ1bGVzTWF0Y2gocnVsZXMsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9nbG9iX2luX2Jhc2Uoc2VsZik6CisgICAgICAgIHJ1bGVzID0gWygnc2NyaXAqJywgJyouYmluJywgJ3thcHBzY3JpcHR9JyldCisgICAgICAgIHNwZWMgPSB7J3NjcmlwdHMvc2NyaXB0cy5iaW4nOiAne2FwcHNjcmlwdH0vc2NyaXB0cy5iaW4nLAorICAgICAgICAgICAgICAgICdzY3JpcG91aWxsZS9iYWJhci5iaW4nOiAne2FwcHNjcmlwdH0vYmFiYXIuYmluJywKKyAgICAgICAgICAgICAgICAnc2NyaXB0b3J0dS9sb3R1cy5iaW4nOiAne2FwcHNjcmlwdH0vbG90dXMuYmluJywKKyAgICAgICAgICAgICAgICAnQmFiYXJsaWtlc3RyYXdiZXJyeSc6IE5vbmV9CisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X3JlY3Vyc2l2ZV9nbG9iKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsoJycsIG9zLnBhdGguam9pbignKionLCAnKi5iaW4nKSwgJ3tiaW5hcnl9JyldCisgICAgICAgIHNwZWMgPSB7J2JpbmFyeTAuYmluJzogJ3tiaW5hcnl9L2JpbmFyeTAuYmluJywKKyAgICAgICAgICAgICAgICAnc2NyaXB0cy9iaW5hcnkxLmJpbic6ICd7YmluYXJ5fS9zY3JpcHRzL2JpbmFyeTEuYmluJywKKyAgICAgICAgICAgICAgICAnc2NyaXB0cy9iaW4vYmluYXJ5Mi5iaW4nOiAne2JpbmFyeX0vc2NyaXB0cy9iaW4vYmluYXJ5Mi5iaW4nLAorICAgICAgICAgICAgICAgICd5b3Uva2lsbC9wYW5kYWJlYXIuZ3V5JzogTm9uZX0KKyAgICAgICAgc2VsZi5hc3NlcnRSdWxlc01hdGNoKHJ1bGVzLCBzcGVjKQorCisgICAgZGVmIHRlc3RfZmluYWxfZXhlbXBsZV9nbG9iKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsKKyAgICAgICAgICAgICgnbWFpbG1hbi9kYXRhYmFzZS9zY2hlbWFzLycsICcqJywgJ3thcHBkYXRhfS9zY2hlbWFzJyksCisgICAgICAgICAgICAoJycsIG9zLnBhdGguam9pbignKionLCAnKi50cGwnKSwgJ3thcHBkYXRhfS90ZW1wbGF0ZXMnKSwKKyAgICAgICAgICAgICgnJywgb3MucGF0aC5qb2luKCdkZXZlbG9wZXItZG9jcycsICcqKicsICcqLnR4dCcpLCAne2RvY30nKSwKKyAgICAgICAgICAgICgnJywgJ1JFQURNRScsICd7ZG9jfScpLAorICAgICAgICAgICAgKCdtYWlsbWFuL2V0Yy8nLCAnKicsICd7Y29uZmlnfScpLAorICAgICAgICAgICAgKCdtYWlsbWFuL2Zvby8nLCBvcy5wYXRoLmpvaW4oJyoqJywgJ2JhcicsICcqLmNmZycpLAorICAgICAgICAgICAgICd7Y29uZmlnfS9iYXonKSwKKyAgICAgICAgICAgICgnbWFpbG1hbi9mb28vJywgb3MucGF0aC5qb2luKCcqKicsICcqLmNmZycpLCAne2NvbmZpZ30vaG1tJyksCisgICAgICAgICAgICAoJycsICdzb21lLW5ldy1zZW1hbnRpYy5zbnMnLCAne2Z1bmt5LWNyYXp5LWNhdGVnb3J5fScpLAorICAgICAgICBdCisgICAgICAgIHNwZWMgPSB7CisgICAgICAgICAgICAnUkVBRE1FJzogJ3tkb2N9L1JFQURNRScsCisgICAgICAgICAgICAnc29tZS50cGwnOiAne2FwcGRhdGF9L3RlbXBsYXRlcy9zb21lLnRwbCcsCisgICAgICAgICAgICAnc29tZS1uZXctc2VtYW50aWMuc25zJzoKKyAgICAgICAgICAgICAgICAne2Z1bmt5LWNyYXp5LWNhdGVnb3J5fS9zb21lLW5ldy1zZW1hbnRpYy5zbnMnLAorICAgICAgICAgICAgJ21haWxtYW4vZGF0YWJhc2UvbWFpbG1hbi5kYic6IE5vbmUsCisgICAgICAgICAgICAnbWFpbG1hbi9kYXRhYmFzZS9zY2hlbWFzL2JsYWguc2NoZW1hJzoKKyAgICAgICAgICAgICAgICAne2FwcGRhdGF9L3NjaGVtYXMvYmxhaC5zY2hlbWEnLAorICAgICAgICAgICAgJ21haWxtYW4vZXRjL215LmNuZic6ICd7Y29uZmlnfS9teS5jbmYnLAorICAgICAgICAgICAgJ21haWxtYW4vZm9vL3NvbWUvcGF0aC9iYXIvbXkuY2ZnJzoKKyAgICAgICAgICAgICAgICAne2NvbmZpZ30vaG1tL3NvbWUvcGF0aC9iYXIvbXkuY2ZnJywKKyAgICAgICAgICAgICdtYWlsbWFuL2Zvby9zb21lL3BhdGgvb3RoZXIuY2ZnJzoKKyAgICAgICAgICAgICAgICAne2NvbmZpZ30vaG1tL3NvbWUvcGF0aC9vdGhlci5jZmcnLAorICAgICAgICAgICAgJ2RldmVsb3Blci1kb2NzL2luZGV4LnR4dCc6ICd7ZG9jfS9kZXZlbG9wZXItZG9jcy9pbmRleC50eHQnLAorICAgICAgICAgICAgJ2RldmVsb3Blci1kb2NzL2FwaS90b2MudHh0JzogJ3tkb2N9L2RldmVsb3Blci1kb2NzL2FwaS90b2MudHh0JywKKyAgICAgICAgfQorICAgICAgICBzZWxmLm1heERpZmYgPSBOb25lCisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X2dldF9maWxlKHNlbGYpOgorICAgICAgICAjIENyZWF0ZSBhIGZha2UgZGlzdAorICAgICAgICB0ZW1wX3NpdGVfcGFja2FnZXMgPSB0ZW1wZmlsZS5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNodXRpbC5ybXRyZWUsIHRlbXBfc2l0ZV9wYWNrYWdlcykKKworICAgICAgICBkaXN0X25hbWUgPSAndGVzdCcKKyAgICAgICAgZGlzdF9pbmZvID0gb3MucGF0aC5qb2luKHRlbXBfc2l0ZV9wYWNrYWdlcywgJ3Rlc3QtMC4xLmRpc3QtaW5mbycpCisgICAgICAgIG9zLm1rZGlyKGRpc3RfaW5mbykKKworICAgICAgICBtZXRhZGF0YV9wYXRoID0gb3MucGF0aC5qb2luKGRpc3RfaW5mbywgJ01FVEFEQVRBJykKKyAgICAgICAgcmVzb3VyY2VzX3BhdGggPSBvcy5wYXRoLmpvaW4oZGlzdF9pbmZvLCAnUkVTT1VSQ0VTJykKKworICAgICAgICB3aXRoIG9wZW4obWV0YWRhdGFfcGF0aCwgJ3cnKSBhcyBmcDoKKyAgICAgICAgICAgIGZwLndyaXRlKGRlZGVudCgiIiJcCisgICAgICAgICAgICAgICAgTWV0YWRhdGEtVmVyc2lvbjogMS4yCisgICAgICAgICAgICAgICAgTmFtZTogdGVzdAorICAgICAgICAgICAgICAgIFZlcnNpb246IDAuMQorICAgICAgICAgICAgICAgIFN1bW1hcnk6IHRlc3QKKyAgICAgICAgICAgICAgICBBdXRob3I6IG1lCisgICAgICAgICAgICAgICAgIiIiKSkKKworICAgICAgICB0ZXN0X3BhdGggPSAndGVzdC5jZmcnCisKKyAgICAgICAgZmQsIHRlc3RfcmVzb3VyY2VfcGF0aCA9IHRlbXBmaWxlLm1rc3RlbXAoKQorICAgICAgICBvcy5jbG9zZShmZCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLnJlbW92ZSwgdGVzdF9yZXNvdXJjZV9wYXRoKQorCisgICAgICAgIHdpdGggb3Blbih0ZXN0X3Jlc291cmNlX3BhdGgsICd3JykgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZSgnQ29uZmlnJykKKworICAgICAgICB3aXRoIG9wZW4ocmVzb3VyY2VzX3BhdGgsICd3JykgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZSgnJXMsJXMnICUgKHRlc3RfcGF0aCwgdGVzdF9yZXNvdXJjZV9wYXRoKSkKKworICAgICAgICAjIEFkZCBmYWtlIHNpdGUtcGFja2FnZXMgdG8gc3lzLnBhdGggdG8gcmV0cmlldmUgZmFrZSBkaXN0CisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMucGF0aC5yZW1vdmUsIHRlbXBfc2l0ZV9wYWNrYWdlcykKKyAgICAgICAgc3lzLnBhdGguaW5zZXJ0KDAsIHRlbXBfc2l0ZV9wYWNrYWdlcykKKworICAgICAgICAjIEZvcmNlIHBhY2thZ2luZy5kYXRhYmFzZSB0byByZXNjYW4gdGhlIHN5cy5wYXRoCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChlbmFibGVfY2FjaGUpCisgICAgICAgIGRpc2FibGVfY2FjaGUoKQorCisgICAgICAgICMgVHJ5IHRvIHJldHJpZXZlIHJlc291cmNlcyBwYXRocyBhbmQgZmlsZXMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRfZmlsZV9wYXRoKGRpc3RfbmFtZSwgdGVzdF9wYXRoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3Jlc291cmNlX3BhdGgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEtleUVycm9yLCBnZXRfZmlsZV9wYXRoLCBkaXN0X25hbWUsICdpLWRvbnQtZXhpc3QnKQorCisgICAgICAgIHdpdGggZ2V0X2ZpbGUoZGlzdF9uYW1lLCB0ZXN0X3BhdGgpIGFzIGZwOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmcC5yZWFkKCksICdDb25maWcnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhLZXlFcnJvciwgZ2V0X2ZpbGUsIGRpc3RfbmFtZSwgJ2ktZG9udC1leGlzdCcpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICBzdWl0ZSA9IHVuaXR0ZXN0LlRlc3RTdWl0ZSgpCisgICAgbG9hZCA9IHVuaXR0ZXN0LmRlZmF1bHRUZXN0TG9hZGVyLmxvYWRUZXN0c0Zyb21UZXN0Q2FzZQorICAgIHN1aXRlLmFkZFRlc3QobG9hZChUZXN0RGlzdHJpYnV0aW9uKSkKKyAgICBzdWl0ZS5hZGRUZXN0KGxvYWQoVGVzdEVnZ0luZm9EaXN0cmlidXRpb24pKQorICAgIHN1aXRlLmFkZFRlc3QobG9hZChUZXN0RGF0YWJhc2UpKQorICAgIHN1aXRlLmFkZFRlc3QobG9hZChEYXRhRmlsZXNUZXN0Q2FzZSkpCisgICAgcmV0dXJuIHN1aXRlCisKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kZXBncmFwaC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kZXBncmFwaC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ODMzMzAyCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2RlcGdyYXBoLnB5CkBAIC0wLDAgKzEsMzEwIEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmRlcGdyYXBoICIiIgoraW1wb3J0IG9zCitpbXBvcnQgcmUKK2ltcG9ydCBzeXMKK2Zyb20gaW8gaW1wb3J0IFN0cmluZ0lPCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBkZXBncmFwaAorZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0IGdldF9kaXN0cmlidXRpb24sIGVuYWJsZV9jYWNoZSwgZGlzYWJsZV9jYWNoZQorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IHJlcXVpcmVzX3psaWIKKworCitjbGFzcyBEZXBHcmFwaFRlc3RDYXNlKHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIERJU1RST1NfRElTVCA9ICgnY2hveGllJywgJ2dyYW1tYXInLCAndG93ZWwtc3R1ZmYnKQorICAgIERJU1RST1NfRUdHID0gKCdiYWNvbicsICdiYW5hbmEnLCAnc3RyYXdiZXJyeScsICdjaGVlc2UnKQorICAgIEJBRF9FR0dTID0gKCdudXQnLCkKKworICAgIEVER0UgPSByZS5jb21waWxlKAorICAgICAgICAgICByJyIoP1A8ZnJvbT4uKikiIC0+ICIoP1A8dG8+LiopIiBcW2xhYmVsPSIoP1A8bGFiZWw+LiopIlxdJykKKworICAgIGRlZiBjaGVja0xpc3RzKHNlbGYsIGwxLCBsMik6CisgICAgICAgICIiIiBDb21wYXJlIHR3byBsaXN0cyB3aXRob3V0IHRha2luZyB0aGUgb3JkZXIgaW50byBjb25zaWRlcmF0aW9uICIiIgorICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChzb3J0ZWQobDEpLCBzb3J0ZWQobDIpKQorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihEZXBHcmFwaFRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgJ2Zha2VfZGlzdHMnKQorICAgICAgICBwYXRoID0gb3MucGF0aC5hYnNwYXRoKHBhdGgpCisgICAgICAgIHN5cy5wYXRoLmluc2VydCgwLCBwYXRoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnBhdGgucmVtb3ZlLCBwYXRoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoZW5hYmxlX2NhY2hlKQorICAgICAgICBkaXNhYmxlX2NhY2hlKCkKKworICAgIGRlZiB0ZXN0X2dlbmVyYXRlX2dyYXBoKHNlbGYpOgorICAgICAgICBkaXN0cyA9IFtdCisgICAgICAgIGZvciBuYW1lIGluIHNlbGYuRElTVFJPU19ESVNUOgorICAgICAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24obmFtZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGNob3hpZSwgZ3JhbW1hciwgdG93ZWwgPSBkaXN0cworCisgICAgICAgIGdyYXBoID0gZGVwZ3JhcGguZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisKKyAgICAgICAgZGVwcyA9IFsoeC5uYW1lLCB5KSBmb3IgeCwgeSBpbiBncmFwaC5hZGphY2VuY3lfbGlzdFtjaG94aWVdXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWygndG93ZWwtc3R1ZmYnLCAndG93ZWwtc3R1ZmYgKDAuMSknKV0sIGRlcHMpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oY2hveGllLCBncmFwaC5yZXZlcnNlX2xpc3RbdG93ZWxdKQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoZ3JhcGgubWlzc2luZ1tjaG94aWVdLCBbJ251dCddKQorCisgICAgICAgIGRlcHMgPSBbKHgubmFtZSwgeSkgZm9yIHgsIHkgaW4gZ3JhcGguYWRqYWNlbmN5X2xpc3RbZ3JhbW1hcl1dCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhbXSwgZGVwcykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKGdyYXBoLm1pc3NpbmdbZ3JhbW1hcl0sIFsndHJ1ZmZsZXMgKD49MS4yKSddKQorCisgICAgICAgIGRlcHMgPSBbKHgubmFtZSwgeSkgZm9yIHgsIHkgaW4gZ3JhcGguYWRqYWNlbmN5X2xpc3RbdG93ZWxdXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoW10sIGRlcHMpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhncmFwaC5taXNzaW5nW3Rvd2VsXSwgWydiYWNvbiAoPD0wLjIpJ10pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X2dlbmVyYXRlX2dyYXBoX2VnZyhzZWxmKToKKyAgICAgICAgZGlzdHMgPSBbXQorICAgICAgICBmb3IgbmFtZSBpbiBzZWxmLkRJU1RST1NfRElTVCArIHNlbGYuRElTVFJPU19FR0c6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lLCB1c2VfZWdnX2luZm89VHJ1ZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGNob3hpZSwgZ3JhbW1hciwgdG93ZWwsIGJhY29uLCBiYW5hbmEsIHN0cmF3YmVycnksIGNoZWVzZSA9IGRpc3RzCisKKyAgICAgICAgZ3JhcGggPSBkZXBncmFwaC5nZW5lcmF0ZV9ncmFwaChkaXN0cykKKworICAgICAgICBkZXBzID0gWyh4Lm5hbWUsIHkpIGZvciB4LCB5IGluIGdyYXBoLmFkamFjZW5jeV9saXN0W2Nob3hpZV1dCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhbKCd0b3dlbC1zdHVmZicsICd0b3dlbC1zdHVmZiAoMC4xKScpXSwgZGVwcykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihjaG94aWUsIGdyYXBoLnJldmVyc2VfbGlzdFt0b3dlbF0pCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhncmFwaC5taXNzaW5nW2Nob3hpZV0sIFsnbnV0J10pCisKKyAgICAgICAgZGVwcyA9IFsoeC5uYW1lLCB5KSBmb3IgeCwgeSBpbiBncmFwaC5hZGphY2VuY3lfbGlzdFtncmFtbWFyXV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFsoJ2JhY29uJywgJ3RydWZmbGVzICg+PTEuMiknKV0sIGRlcHMpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhncmFwaC5taXNzaW5nW2dyYW1tYXJdLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihncmFtbWFyLCBncmFwaC5yZXZlcnNlX2xpc3RbYmFjb25dKQorCisgICAgICAgIGRlcHMgPSBbKHgubmFtZSwgeSkgZm9yIHgsIHkgaW4gZ3JhcGguYWRqYWNlbmN5X2xpc3RbdG93ZWxdXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWygnYmFjb24nLCAnYmFjb24gKDw9MC4yKScpXSwgZGVwcykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKGdyYXBoLm1pc3NpbmdbdG93ZWxdLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbih0b3dlbCwgZ3JhcGgucmV2ZXJzZV9saXN0W2JhY29uXSkKKworICAgICAgICBkZXBzID0gWyh4Lm5hbWUsIHkpIGZvciB4LCB5IGluIGdyYXBoLmFkamFjZW5jeV9saXN0W2JhY29uXV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFtdLCBkZXBzKQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoZ3JhcGgubWlzc2luZ1tiYWNvbl0sIFtdKQorCisgICAgICAgIGRlcHMgPSBbKHgubmFtZSwgeSkgZm9yIHgsIHkgaW4gZ3JhcGguYWRqYWNlbmN5X2xpc3RbYmFuYW5hXV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFsoJ3N0cmF3YmVycnknLCAnc3RyYXdiZXJyeSAoPj0wLjUpJyldLCBkZXBzKQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoZ3JhcGgubWlzc2luZ1tiYW5hbmFdLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiYW5hbmEsIGdyYXBoLnJldmVyc2VfbGlzdFtzdHJhd2JlcnJ5XSkKKworICAgICAgICBkZXBzID0gWyh4Lm5hbWUsIHkpIGZvciB4LCB5IGluIGdyYXBoLmFkamFjZW5jeV9saXN0W3N0cmF3YmVycnldXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoW10sIGRlcHMpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhncmFwaC5taXNzaW5nW3N0cmF3YmVycnldLCBbXSkKKworICAgICAgICBkZXBzID0gWyh4Lm5hbWUsIHkpIGZvciB4LCB5IGluIGdyYXBoLmFkamFjZW5jeV9saXN0W2NoZWVzZV1dCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhbXSwgZGVwcykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKGdyYXBoLm1pc3NpbmdbY2hlZXNlXSwgW10pCisKKyAgICBkZWYgdGVzdF9kZXBlbmRlbnRfZGlzdHMoc2VsZik6CisgICAgICAgIGRpc3RzID0gW10KKyAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5ESVNUUk9TX0RJU1Q6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChkaXN0LCBOb25lKQorICAgICAgICAgICAgZGlzdHMuYXBwZW5kKGRpc3QpCisKKyAgICAgICAgY2hveGllLCBncmFtbWFyLCB0b3dlbCA9IGRpc3RzCisKKyAgICAgICAgZGVwcyA9IFtkLm5hbWUgZm9yIGQgaW4gZGVwZ3JhcGguZGVwZW5kZW50X2Rpc3RzKGRpc3RzLCBjaG94aWUpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoW10sIGRlcHMpCisKKyAgICAgICAgZGVwcyA9IFtkLm5hbWUgZm9yIGQgaW4gZGVwZ3JhcGguZGVwZW5kZW50X2Rpc3RzKGRpc3RzLCBncmFtbWFyKV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFtdLCBkZXBzKQorCisgICAgICAgIGRlcHMgPSBbZC5uYW1lIGZvciBkIGluIGRlcGdyYXBoLmRlcGVuZGVudF9kaXN0cyhkaXN0cywgdG93ZWwpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWydjaG94aWUnXSwgZGVwcykKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfZGVwZW5kZW50X2Rpc3RzX2VnZyhzZWxmKToKKyAgICAgICAgZGlzdHMgPSBbXQorICAgICAgICBmb3IgbmFtZSBpbiBzZWxmLkRJU1RST1NfRElTVCArIHNlbGYuRElTVFJPU19FR0c6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lLCB1c2VfZWdnX2luZm89VHJ1ZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGNob3hpZSwgZ3JhbW1hciwgdG93ZWwsIGJhY29uLCBiYW5hbmEsIHN0cmF3YmVycnksIGNoZWVzZSA9IGRpc3RzCisKKyAgICAgICAgZGVwcyA9IFtkLm5hbWUgZm9yIGQgaW4gZGVwZ3JhcGguZGVwZW5kZW50X2Rpc3RzKGRpc3RzLCBjaG94aWUpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoW10sIGRlcHMpCisKKyAgICAgICAgZGVwcyA9IFtkLm5hbWUgZm9yIGQgaW4gZGVwZ3JhcGguZGVwZW5kZW50X2Rpc3RzKGRpc3RzLCBncmFtbWFyKV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFtdLCBkZXBzKQorCisgICAgICAgIGRlcHMgPSBbZC5uYW1lIGZvciBkIGluIGRlcGdyYXBoLmRlcGVuZGVudF9kaXN0cyhkaXN0cywgdG93ZWwpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWydjaG94aWUnXSwgZGVwcykKKworICAgICAgICBkZXBzID0gW2QubmFtZSBmb3IgZCBpbiBkZXBncmFwaC5kZXBlbmRlbnRfZGlzdHMoZGlzdHMsIGJhY29uKV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFsnY2hveGllJywgJ3Rvd2VsLXN0dWZmJywgJ2dyYW1tYXInXSwgZGVwcykKKworICAgICAgICBkZXBzID0gW2QubmFtZSBmb3IgZCBpbiBkZXBncmFwaC5kZXBlbmRlbnRfZGlzdHMoZGlzdHMsIHN0cmF3YmVycnkpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWydiYW5hbmEnXSwgZGVwcykKKworICAgICAgICBkZXBzID0gW2QubmFtZSBmb3IgZCBpbiBkZXBncmFwaC5kZXBlbmRlbnRfZGlzdHMoZGlzdHMsIGNoZWVzZSldCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhbXSwgZGVwcykKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfZ3JhcGhfdG9fZG90KHNlbGYpOgorICAgICAgICBleHBlY3RlZCA9ICgKKyAgICAgICAgICAgICgndG93ZWwtc3R1ZmYnLCAnYmFjb24nLCAnYmFjb24gKDw9MC4yKScpLAorICAgICAgICAgICAgKCdncmFtbWFyJywgJ2JhY29uJywgJ3RydWZmbGVzICg+PTEuMiknKSwKKyAgICAgICAgICAgICgnY2hveGllJywgJ3Rvd2VsLXN0dWZmJywgJ3Rvd2VsLXN0dWZmICgwLjEpJyksCisgICAgICAgICAgICAoJ2JhbmFuYScsICdzdHJhd2JlcnJ5JywgJ3N0cmF3YmVycnkgKD49MC41KScpLAorICAgICAgICApCisKKyAgICAgICAgZGlzdHMgPSBbXQorICAgICAgICBmb3IgbmFtZSBpbiBzZWxmLkRJU1RST1NfRElTVCArIHNlbGYuRElTVFJPU19FR0c6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lLCB1c2VfZWdnX2luZm89VHJ1ZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGdyYXBoID0gZGVwZ3JhcGguZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisgICAgICAgIGJ1ZiA9IFN0cmluZ0lPKCkKKyAgICAgICAgZGVwZ3JhcGguZ3JhcGhfdG9fZG90KGdyYXBoLCBidWYpCisgICAgICAgIGJ1Zi5zZWVrKDApCisgICAgICAgIG1hdGNoZXMgPSBbXQorICAgICAgICBsaW5lcyA9IGJ1Zi5yZWFkbGluZXMoKQorICAgICAgICBmb3IgbGluZSBpbiBsaW5lc1sxOi0xXTogICMgc2tpcCB0aGUgZmlyc3QgYW5kIHRoZSBsYXN0IGxpbmVzCisgICAgICAgICAgICBpZiBsaW5lWy0xXSA9PSAnXG4nOgorICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lWzotMV0KKyAgICAgICAgICAgIG1hdGNoID0gc2VsZi5FREdFLm1hdGNoKGxpbmUuc3RyaXAoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QobWF0Y2gsIE5vbmUpCisgICAgICAgICAgICBtYXRjaGVzLmFwcGVuZChtYXRjaC5ncm91cHMoKSkKKworICAgICAgICBzZWxmLmNoZWNrTGlzdHMobWF0Y2hlcywgZXhwZWN0ZWQpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X2dyYXBoX2Rpc2Nvbm5lY3RlZF90b19kb3Qoc2VsZik6CisgICAgICAgIGRlcGVuZGVuY2llc19leHBlY3RlZCA9ICgKKyAgICAgICAgICAgICgndG93ZWwtc3R1ZmYnLCAnYmFjb24nLCAnYmFjb24gKDw9MC4yKScpLAorICAgICAgICAgICAgKCdncmFtbWFyJywgJ2JhY29uJywgJ3RydWZmbGVzICg+PTEuMiknKSwKKyAgICAgICAgICAgICgnY2hveGllJywgJ3Rvd2VsLXN0dWZmJywgJ3Rvd2VsLXN0dWZmICgwLjEpJyksCisgICAgICAgICAgICAoJ2JhbmFuYScsICdzdHJhd2JlcnJ5JywgJ3N0cmF3YmVycnkgKD49MC41KScpLAorICAgICAgICApCisgICAgICAgIGRpc2Nvbm5lY3RlZF9leHBlY3RlZCA9ICgnY2hlZXNlJywgJ2JhY29uJywgJ3N0cmF3YmVycnknKQorCisgICAgICAgIGRpc3RzID0gW10KKyAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5ESVNUUk9TX0RJU1QgKyBzZWxmLkRJU1RST1NfRUdHOgorICAgICAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24obmFtZSwgdXNlX2VnZ19pbmZvPVRydWUpCisgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGRpc3QsIE5vbmUpCisgICAgICAgICAgICBkaXN0cy5hcHBlbmQoZGlzdCkKKworICAgICAgICBncmFwaCA9IGRlcGdyYXBoLmdlbmVyYXRlX2dyYXBoKGRpc3RzKQorICAgICAgICBidWYgPSBTdHJpbmdJTygpCisgICAgICAgIGRlcGdyYXBoLmdyYXBoX3RvX2RvdChncmFwaCwgYnVmLCBza2lwX2Rpc2Nvbm5lY3RlZD1GYWxzZSkKKyAgICAgICAgYnVmLnNlZWsoMCkKKyAgICAgICAgbGluZXMgPSBidWYucmVhZGxpbmVzKCkKKworICAgICAgICBkZXBlbmRlbmNpZXNfbGluZXMgPSBbXQorICAgICAgICBkaXNjb25uZWN0ZWRfbGluZXMgPSBbXQorCisgICAgICAgICMgRmlyc3Qgc29ydCBvdXRwdXQgbGluZXMgaW50byBkZXBlbmRlbmNpZXMgYW5kIGRpc2Nvbm5lY3RlZCBsaW5lcy4KKyAgICAgICAgIyBXZSBhbHNvIHNraXAgdGhlIGF0dHJpYnV0ZSBsaW5lcywgYW5kIGRvbid0IGluY2x1ZGUgdGhlICJ7IiBhbmQgIn0iCisgICAgICAgICMgbGluZXMuCisgICAgICAgIGRpc2Nvbm5lY3RlZF9hY3RpdmUgPSBGYWxzZQorICAgICAgICBmb3IgbGluZSBpbiBsaW5lc1sxOi0xXTogICMgU2tpcCBmaXJzdCBhbmQgbGFzdCBsaW5lCisgICAgICAgICAgICBpZiBsaW5lLnN0YXJ0c3dpdGgoJ3N1YmdyYXBoIGRpc2Nvbm5lY3RlZCcpOgorICAgICAgICAgICAgICAgIGRpc2Nvbm5lY3RlZF9hY3RpdmUgPSBUcnVlCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGlmIGxpbmUuc3RhcnRzd2l0aCgnfScpIGFuZCBkaXNjb25uZWN0ZWRfYWN0aXZlOgorICAgICAgICAgICAgICAgIGRpc2Nvbm5lY3RlZF9hY3RpdmUgPSBGYWxzZQorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgIGlmIGRpc2Nvbm5lY3RlZF9hY3RpdmU6CisgICAgICAgICAgICAgICAgIyBTa2lwIHRoZSAnbGFiZWwgPSAiRGlzY29ubmVjdGVkIicsIGV0Yy4gYXR0cmlidXRlIGxpbmVzLgorICAgICAgICAgICAgICAgIGlmICcgPSAnIG5vdCBpbiBsaW5lOgorICAgICAgICAgICAgICAgICAgICBkaXNjb25uZWN0ZWRfbGluZXMuYXBwZW5kKGxpbmUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llc19saW5lcy5hcHBlbmQobGluZSkKKworICAgICAgICBkZXBlbmRlbmNpZXNfbWF0Y2hlcyA9IFtdCisgICAgICAgIGZvciBsaW5lIGluIGRlcGVuZGVuY2llc19saW5lczoKKyAgICAgICAgICAgIGlmIGxpbmVbLTFdID09ICdcbic6CisgICAgICAgICAgICAgICAgbGluZSA9IGxpbmVbOi0xXQorICAgICAgICAgICAgbWF0Y2ggPSBzZWxmLkVER0UubWF0Y2gobGluZS5zdHJpcCgpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vdChtYXRjaCwgTm9uZSkKKyAgICAgICAgICAgIGRlcGVuZGVuY2llc19tYXRjaGVzLmFwcGVuZChtYXRjaC5ncm91cHMoKSkKKworICAgICAgICBkaXNjb25uZWN0ZWRfbWF0Y2hlcyA9IFtdCisgICAgICAgIGZvciBsaW5lIGluIGRpc2Nvbm5lY3RlZF9saW5lczoKKyAgICAgICAgICAgIGlmIGxpbmVbLTFdID09ICdcbic6CisgICAgICAgICAgICAgICAgbGluZSA9IGxpbmVbOi0xXQorICAgICAgICAgICAgbGluZSA9IGxpbmUuc3RyaXAoJyInKQorICAgICAgICAgICAgZGlzY29ubmVjdGVkX21hdGNoZXMuYXBwZW5kKGxpbmUpCisKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKGRlcGVuZGVuY2llc19tYXRjaGVzLCBkZXBlbmRlbmNpZXNfZXhwZWN0ZWQpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhkaXNjb25uZWN0ZWRfbWF0Y2hlcywgZGlzY29ubmVjdGVkX2V4cGVjdGVkKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF9ncmFwaF9iYWRfdmVyc2lvbl90b19kb3Qoc2VsZik6CisgICAgICAgIGV4cGVjdGVkID0gKAorICAgICAgICAgICAgKCd0b3dlbC1zdHVmZicsICdiYWNvbicsICdiYWNvbiAoPD0wLjIpJyksCisgICAgICAgICAgICAoJ2dyYW1tYXInLCAnYmFjb24nLCAndHJ1ZmZsZXMgKD49MS4yKScpLAorICAgICAgICAgICAgKCdjaG94aWUnLCAndG93ZWwtc3R1ZmYnLCAndG93ZWwtc3R1ZmYgKDAuMSknKSwKKyAgICAgICAgICAgICgnYmFuYW5hJywgJ3N0cmF3YmVycnknLCAnc3RyYXdiZXJyeSAoPj0wLjUpJyksCisgICAgICAgICkKKworICAgICAgICBkaXN0cyA9IFtdCisgICAgICAgIGZvciBuYW1lIGluIHNlbGYuRElTVFJPU19ESVNUICsgc2VsZi5ESVNUUk9TX0VHRyArIHNlbGYuQkFEX0VHR1M6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lLCB1c2VfZWdnX2luZm89VHJ1ZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGdyYXBoID0gZGVwZ3JhcGguZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisgICAgICAgIGJ1ZiA9IFN0cmluZ0lPKCkKKyAgICAgICAgZGVwZ3JhcGguZ3JhcGhfdG9fZG90KGdyYXBoLCBidWYpCisgICAgICAgIGJ1Zi5zZWVrKDApCisgICAgICAgIG1hdGNoZXMgPSBbXQorICAgICAgICBsaW5lcyA9IGJ1Zi5yZWFkbGluZXMoKQorICAgICAgICBmb3IgbGluZSBpbiBsaW5lc1sxOi0xXTogICMgc2tpcCB0aGUgZmlyc3QgYW5kIHRoZSBsYXN0IGxpbmVzCisgICAgICAgICAgICBpZiBsaW5lWy0xXSA9PSAnXG4nOgorICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lWzotMV0KKyAgICAgICAgICAgIG1hdGNoID0gc2VsZi5FREdFLm1hdGNoKGxpbmUuc3RyaXAoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QobWF0Y2gsIE5vbmUpCisgICAgICAgICAgICBtYXRjaGVzLmFwcGVuZChtYXRjaC5ncm91cHMoKSkKKworICAgICAgICBzZWxmLmNoZWNrTGlzdHMobWF0Y2hlcywgZXhwZWN0ZWQpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X3JlcHIoc2VsZik6CisgICAgICAgIGRpc3RzID0gW10KKyAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5ESVNUUk9TX0RJU1QgKyBzZWxmLkRJU1RST1NfRUdHICsgc2VsZi5CQURfRUdHUzoKKyAgICAgICAgICAgIGRpc3QgPSBnZXRfZGlzdHJpYnV0aW9uKG5hbWUsIHVzZV9lZ2dfaW5mbz1UcnVlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChkaXN0LCBOb25lKQorICAgICAgICAgICAgZGlzdHMuYXBwZW5kKGRpc3QpCisKKyAgICAgICAgZ3JhcGggPSBkZXBncmFwaC5nZW5lcmF0ZV9ncmFwaChkaXN0cykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlcHIoZ3JhcGgpKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF9tYWluKHNlbGYpOgorICAgICAgICB0ZW1wb3V0ID0gU3RyaW5nSU8oKQorICAgICAgICBvbGQgPSBzeXMuc3Rkb3V0CisgICAgICAgIHN5cy5zdGRvdXQgPSB0ZW1wb3V0CisgICAgICAgIG9sZGFyZ3YgPSBzeXMuYXJndls6XQorICAgICAgICBzeXMuYXJndls6XSA9IFsnc2NyaXB0LnB5J10KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGRlcGdyYXBoLm1haW4oKQorICAgICAgICAgICAgZXhjZXB0IFN5c3RlbUV4aXQ6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc3lzLnN0ZG91dCA9IG9sZAorICAgICAgICAgICAgc3lzLmFyZ3ZbOl0gPSBvbGRhcmd2CisKKyAgICAgICAgIyBjaGVja3Mgd2hhdCBtYWluIGRpZCBYWFggY291bGQgZG8gbW9yZSBoZXJlCisgICAgICAgIHRlbXBvdXQuc2VlaygwKQorICAgICAgICByZXMgPSB0ZW1wb3V0LnJlYWQoKQorICAgICAgICBzZWxmLmFzc2VydEluKCd0b3dlbCcsIHJlcykKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoRGVwR3JhcGhUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kaXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2Rpc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDYyMzk5MAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kaXN0LnB5CkBAIC0wLDAgKzEsMjY0IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmRpc3QuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0ZXh0d3JhcAorCitpbXBvcnQgcGFja2FnaW5nLmRpc3QKKworZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdNb2R1bGVFcnJvciwgUGFja2FnaW5nT3B0aW9uRXJyb3IKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCBzdXBwb3J0LCB1bml0dGVzdAorZnJvbSBwYWNrYWdpbmcudGVzdHMuc3VwcG9ydCBpbXBvcnQgY3JlYXRlX2Rpc3RyaWJ1dGlvbiwgdXNlX2NvbW1hbmQKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCB1bmxvYWQKKworCitjbGFzcyB0ZXN0X2Rpc3QoQ29tbWFuZCk6CisgICAgIiIiQ3VzdG9tIGNvbW1hbmQgdXNlZCBmb3IgdGVzdGluZy4iIiIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdzYW1wbGUtb3B0aW9uPScsICdTJywKKyAgICAgICAgICJoZWxwIHRleHQiKSwKKyAgICAgICAgXQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zYW1wbGVfb3B0aW9uID0gTm9uZQorICAgICAgICBzZWxmLl9yZWNvcmQgPSBbXQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGlmIHNlbGYuc2FtcGxlX29wdGlvbiBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5zYW1wbGVfb3B0aW9uID0gJ2RlZmF1bHQgdmFsdWUnCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBzZWxmLl9yZWNvcmQuYXBwZW5kKCd0ZXN0X2Rpc3QgaGFzIHJ1bicpCisKKworY2xhc3MgRGlzdHJpYnV0aW9uVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnSE9NRScsICdQTEFUJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoRGlzdHJpYnV0aW9uVGVzdENhc2UsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgIyBYWFggdGhpcyBpcyB1Z2x5LCB3ZSBzaG91bGQgZml4IHRoZSBmdW5jdGlvbnMgdG8gYWNjZXB0IGFyZ3MKKyAgICAgICAgIyAoZGVmYXVsdGluZyB0byBzeXMuYXJndikKKyAgICAgICAgc2VsZi5hcmd2ID0gc3lzLmFyZ3YsIHN5cy5hcmd2WzpdCisgICAgICAgIGRlbCBzeXMuYXJndlsxOl0KKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc3lzLmFyZ3YgPSBzZWxmLmFyZ3ZbMF0KKyAgICAgICAgc3lzLmFyZ3ZbOl0gPSBzZWxmLmFyZ3ZbMV0KKyAgICAgICAgc3VwZXIoRGlzdHJpYnV0aW9uVGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgIEB1bml0dGVzdC5za2lwKCduZWVkcyB0byBiZSB1cGRhdGVkJykKKyAgICBkZWYgdGVzdF9kZWJ1Z19tb2RlKHNlbGYpOgorICAgICAgICB0bXBkaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZXR1cGNmZyA9IG9zLnBhdGguam9pbih0bXBkaXIsICdzZXR1cC5jZmcnKQorICAgICAgICB3aXRoIG9wZW4oc2V0dXBjZmcsICJ3IikgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoIltnbG9iYWxdXG4iKQorICAgICAgICAgICAgZi53cml0ZSgiY29tbWFuZF9wYWNrYWdlcyA9IGZvby5iYXIsIHNwbGF0IikKKworICAgICAgICBmaWxlcyA9IFtzZXR1cGNmZ10KKyAgICAgICAgc3lzLmFyZ3YuYXBwZW5kKCJidWlsZCIpCisgICAgICAgIF9fLCBzdGRvdXQgPSBjYXB0dXJlZF9zdGRvdXQoY3JlYXRlX2Rpc3RyaWJ1dGlvbiwgZmlsZXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3Rkb3V0LCAnJykKKyAgICAgICAgIyBYWFggZGVidWcgbW9kZSBkb2VzIG5vdCBleGlzdCBhbnltb3JlLCB0ZXN0IGxvZ2dpbmcgbGV2ZWxzIGluIHRoaXMKKyAgICAgICAgIyB0ZXN0IGluc3RlYWQKKyAgICAgICAgcGFja2FnaW5nLmRpc3QuREVCVUcgPSBUcnVlCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIF9fLCBzdGRvdXQgPSBjYXB0dXJlZF9zdGRvdXQoY3JlYXRlX2Rpc3RyaWJ1dGlvbiwgZmlsZXMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0ZG91dCwgJycpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBwYWNrYWdpbmcuZGlzdC5ERUJVRyA9IEZhbHNlCisKKyAgICBkZWYgdGVzdF9iYWRfYXR0cihzZWxmKToKKyAgICAgICAgRGlzdHJpYnV0aW9uKGF0dHJzPXsnYXV0aG9yJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ25hbWUnOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmVyc2lvbic6ICcxLjInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICdob21lX3BhZ2UnOiAneHh4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JhZG9wdG5hbWUnOiAneHh4J30pCisgICAgICAgIGxvZ3MgPSBzZWxmLmdldF9sb2dzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obG9ncyksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3Vua25vd24gYXJndW1lbnQnLCBsb2dzWzBdKQorCisgICAgZGVmIHRlc3RfZW1wdHlfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIyBhbiBlbXB0eSBvcHRpb25zIGRpY3Rpb25hcnkgc2hvdWxkIG5vdCBzdGF5IGluIHRoZQorICAgICAgICAjIGxpc3Qgb2YgYXR0cmlidXRlcworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKGF0dHJzPXsnYXV0aG9yJzogJ3h4eCcsICduYW1lJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMicsICdob21lX3BhZ2UnOiAneHh4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcHRpb25zJzoge319KQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignb3B0aW9ucycsIGRpcihkaXN0KSkKKworICAgIGRlZiB0ZXN0X25vbl9lbXB0eV9vcHRpb25zKHNlbGYpOgorICAgICAgICAjIFRPRE86IGhvdyB0byBhY3R1YWxseSB1c2Ugb3B0aW9ucyBpcyBub3QgZG9jdW1lbnRlZCBleGNlcHQKKyAgICAgICAgIyBmb3IgYSBmZXcgY3J5cHRpYyBjb21tZW50cyBpbiBkaXN0LnB5LiAgSWYgdGhpcyBpcyB0byBzdGF5CisgICAgICAgICMgaW4gdGhlIHB1YmxpYyBBUEksIGl0IGRlc2VydmVzIHNvbWUgYmV0dGVyIGRvY3VtZW50YXRpb24uCisKKyAgICAgICAgIyBIZXJlIGlzIGFuIGV4YW1wbGUgb2YgaG93IGl0J3MgdXNlZCBvdXQgdGhlcmU6CisgICAgICAgICMgaHR0cDovL3N2bi5weXRob25tYWMub3JnL3B5MmFwcC9weTJhcHAvdHJ1bmsvZG9jLworICAgICAgICAjIGluZGV4Lmh0bWwjc3BlY2lmeWluZy1jdXN0b21pemF0aW9ucworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKGF0dHJzPXsnYXV0aG9yJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICduYW1lJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdob21lX3BhZ2UnOiAneHh4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcHRpb25zJzogeydzZGlzdCc6IHsnb3duZXInOiAncm9vdCd9fX0pCisKKyAgICAgICAgc2VsZi5hc3NlcnRJbignb3duZXInLCBkaXN0LmdldF9vcHRpb25fZGljdCgnc2Rpc3QnKSkKKworICAgIGRlZiB0ZXN0X2ZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGF0dHJzID0geydrZXl3b3Jkcyc6ICdvbmUsdHdvJywKKyAgICAgICAgICAgICAgICAgJ3BsYXRmb3JtJzogJ29uZSx0d28nfQorCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oYXR0cnM9YXR0cnMpCisgICAgICAgIGRpc3QuZmluYWxpemVfb3B0aW9ucygpCisKKyAgICAgICAgIyBmaW5hbGl6ZV9vcHRpb24gc3BsaXRzIHBsYXRmb3JtcyBhbmQga2V5d29yZHMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydwbGF0Zm9ybSddLCBbJ29uZScsICd0d28nXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydrZXl3b3JkcyddLCBbJ29uZScsICd0d28nXSkKKworICAgIGRlZiB0ZXN0X2N1c3RvbV9weWRpc3R1dGlscyhzZWxmKToKKyAgICAgICAgIyBCdWcgIzIxNjY6ICBtYWtlIHN1cmUgcHlkaXN0dXRpbHMuY2ZnIGlzIGZvdW5kCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgICAgIHVzZXJfZmlsZW5hbWUgPSAiLnB5ZGlzdHV0aWxzLmNmZyIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHVzZXJfZmlsZW5hbWUgPSAicHlkaXN0dXRpbHMuY2ZnIgorCisgICAgICAgIHRlbXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgdXNlcl9maWxlbmFtZSA9IG9zLnBhdGguam9pbih0ZW1wX2RpciwgdXNlcl9maWxlbmFtZSkKKyAgICAgICAgd2l0aCBvcGVuKHVzZXJfZmlsZW5hbWUsICd3JykgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoJy4nKQorCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorCisgICAgICAgIG9zLmVudmlyb25bJ0hPTUUnXSA9IHRlbXBfZGlyCisgICAgICAgIGZpbGVzID0gZGlzdC5maW5kX2NvbmZpZ19maWxlcygpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4odXNlcl9maWxlbmFtZSwgZmlsZXMpCisKKyAgICBkZWYgdGVzdF9maW5kX2NvbmZpZ19maWxlc19kaXNhYmxlKHNlbGYpOgorICAgICAgICAjIEJ1ZyAjMTE4MDogQWxsb3cgdXNlcnMgdG8gZGlzYWJsZSB0aGVpciBvd24gY29uZmlnIGZpbGUuCisgICAgICAgIHRlbXBfaG9tZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgICAgIHVzZXJfZmlsZW5hbWUgPSBvcy5wYXRoLmpvaW4odGVtcF9ob21lLCAiLnB5ZGlzdHV0aWxzLmNmZyIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB1c2VyX2ZpbGVuYW1lID0gb3MucGF0aC5qb2luKHRlbXBfaG9tZSwgInB5ZGlzdHV0aWxzLmNmZyIpCisKKyAgICAgICAgd2l0aCBvcGVuKHVzZXJfZmlsZW5hbWUsICd3JykgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoJ1tkaXN0dXRpbHMyXVxuJykKKworICAgICAgICBkZWYgX2V4cGFuZGVyKHBhdGgpOgorICAgICAgICAgICAgcmV0dXJuIHRlbXBfaG9tZQorCisgICAgICAgIG9sZF9leHBhbmRlciA9IG9zLnBhdGguZXhwYW5kdXNlcgorICAgICAgICBvcy5wYXRoLmV4cGFuZHVzZXIgPSBfZXhwYW5kZXIKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZCA9IHBhY2thZ2luZy5kaXN0LkRpc3RyaWJ1dGlvbigpCisgICAgICAgICAgICBhbGxfZmlsZXMgPSBkLmZpbmRfY29uZmlnX2ZpbGVzKCkKKworICAgICAgICAgICAgZCA9IHBhY2thZ2luZy5kaXN0LkRpc3RyaWJ1dGlvbihhdHRycz17J3NjcmlwdF9hcmdzJzoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsnLS1uby11c2VyLWNmZyddfSkKKyAgICAgICAgICAgIGZpbGVzID0gZC5maW5kX2NvbmZpZ19maWxlcygpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5wYXRoLmV4cGFuZHVzZXIgPSBvbGRfZXhwYW5kZXIKKworICAgICAgICAjIG1ha2Ugc3VyZSAtLW5vLXVzZXItY2ZnIGRpc2FibGVzIHRoZSB1c2VyIGNmZyBmaWxlCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKGxlbihhbGxfZmlsZXMpIC0gMSksIGxlbihmaWxlcykpCisKKyAgICBkZWYgdGVzdF9zcGVjaWFsX2hvb2tzX3BhcnNpbmcoc2VsZik6CisgICAgICAgIHRlbXBfaG9tZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGNvbmZpZ19maWxlcyA9IFtvcy5wYXRoLmpvaW4odGVtcF9ob21lLCAiY29uZmlnMS5jZmciKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbih0ZW1wX2hvbWUsICJjb25maWcyLmNmZyIpXQorCisgICAgICAgICMgU3RvcmUgdHdvIGFsaWFzZWQgaG9va3MgaW4gY29uZmlnIGZpbGVzCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgodGVtcF9ob21lLCAiY29uZmlnMS5jZmciKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICdbdGVzdF9kaXN0XVxucHJlLWhvb2suYSA9IHR5cGUnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHRlbXBfaG9tZSwgImNvbmZpZzIuY2ZnIiksCisgICAgICAgICAgICAgICAgICAgICAgICAnW3Rlc3RfZGlzdF1cbnByZS1ob29rLmIgPSB0eXBlJykKKworICAgICAgICB1c2VfY29tbWFuZChzZWxmLCAncGFja2FnaW5nLnRlc3RzLnRlc3RfZGlzdC50ZXN0X2Rpc3QnKQorCisgICAgICAgIGRpc3QgPSBjcmVhdGVfZGlzdHJpYnV0aW9uKGNvbmZpZ19maWxlcykKKyAgICAgICAgY21kID0gZGlzdC5nZXRfY29tbWFuZF9vYmooInRlc3RfZGlzdCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLnByZV9ob29rLCB7ImEiOiAndHlwZScsICJiIjogJ3R5cGUnfSkKKworICAgIGRlZiB0ZXN0X2hvb2tzX2dldF9ydW4oc2VsZik6CisgICAgICAgIHRlbXBfaG9tZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG1vZHVsZV9uYW1lID0gb3MucGF0aC5zcGxpdCh0ZW1wX2hvbWUpWy0xXQorICAgICAgICBweW5hbWUgPSAnJXMucHknICUgbW9kdWxlX25hbWUKKyAgICAgICAgY29uZmlnX2ZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcF9ob21lLCAiY29uZmlnMS5jZmciKQorICAgICAgICBob29rc19tb2R1bGUgPSBvcy5wYXRoLmpvaW4odGVtcF9ob21lLCBweW5hbWUpCisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGNvbmZpZ19maWxlLCB0ZXh0d3JhcC5kZWRlbnQoJycnXAorICAgICAgICAgICAgW3Rlc3RfZGlzdF0KKyAgICAgICAgICAgIHByZS1ob29rLnRlc3QgPSAlKG1vZG5hbWUpcy5sb2dfcHJlX2NhbGwKKyAgICAgICAgICAgIHBvc3QtaG9vay50ZXN0ID0gJShtb2RuYW1lKXMubG9nX3Bvc3RfY2FsbCcnJworICAgICAgICAgICAgJSB7J21vZG5hbWUnOiBtb2R1bGVfbmFtZX0pKQorCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShob29rc19tb2R1bGUsIHRleHR3cmFwLmRlZGVudCgnJydcCisgICAgICAgICAgICByZWNvcmQgPSBbXQorCisgICAgICAgICAgICBkZWYgbG9nX3ByZV9jYWxsKGNtZCk6CisgICAgICAgICAgICAgICAgcmVjb3JkLmFwcGVuZCgncHJlLSVzJyAlIGNtZC5nZXRfY29tbWFuZF9uYW1lKCkpCisKKyAgICAgICAgICAgIGRlZiBsb2dfcG9zdF9jYWxsKGNtZCk6CisgICAgICAgICAgICAgICAgcmVjb3JkLmFwcGVuZCgncG9zdC0lcycgJSBjbWQuZ2V0X2NvbW1hbmRfbmFtZSgpKQorICAgICAgICAgICAgJycnKSkKKworICAgICAgICB1c2VfY29tbWFuZChzZWxmLCAncGFja2FnaW5nLnRlc3RzLnRlc3RfZGlzdC50ZXN0X2Rpc3QnKQorICAgICAgICBkID0gY3JlYXRlX2Rpc3RyaWJ1dGlvbihbY29uZmlnX2ZpbGVdKQorICAgICAgICBjbWQgPSBkLmdldF9jb21tYW5kX29iaigidGVzdF9kaXN0IikKKworICAgICAgICAjIHByZXBhcmUgdGhlIGNhbGwgcmVjb3JkZXJzCisgICAgICAgIHN5cy5wYXRoLmFwcGVuZCh0ZW1wX2hvbWUpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMucGF0aC5yZW1vdmUsIHRlbXBfaG9tZSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHVubG9hZCwgbW9kdWxlX25hbWUpCisgICAgICAgIHJlY29yZCA9IF9faW1wb3J0X18obW9kdWxlX25hbWUpLnJlY29yZAorCisgICAgICAgIGNtZC5ydW4gPSBsYW1iZGE6IHJlY29yZC5hcHBlbmQoJ3J1bicpCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zID0gbGFtYmRhOiByZWNvcmQuYXBwZW5kKCdmaW5hbGl6ZScpCisgICAgICAgIGQucnVuX2NvbW1hbmQoJ3Rlc3RfZGlzdCcpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQsIFsnZmluYWxpemUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwcmUtdGVzdF9kaXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncnVuJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zdC10ZXN0X2Rpc3QnXSkKKworICAgIGRlZiB0ZXN0X2hvb2tzX2ltcG9ydGFibGUoc2VsZik6CisgICAgICAgIHRlbXBfaG9tZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGNvbmZpZ19maWxlID0gb3MucGF0aC5qb2luKHRlbXBfaG9tZSwgImNvbmZpZzEuY2ZnIikKKworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoY29uZmlnX2ZpbGUsIHRleHR3cmFwLmRlZGVudCgnJydcCisgICAgICAgICAgICBbdGVzdF9kaXN0XQorICAgICAgICAgICAgcHJlLWhvb2sudGVzdCA9IG5vbmV4aXN0ZW50LmRvdHRlZC5uYW1lJycnKSkKKworICAgICAgICB1c2VfY29tbWFuZChzZWxmLCAncGFja2FnaW5nLnRlc3RzLnRlc3RfZGlzdC50ZXN0X2Rpc3QnKQorICAgICAgICBkID0gY3JlYXRlX2Rpc3RyaWJ1dGlvbihbY29uZmlnX2ZpbGVdKQorICAgICAgICBjbWQgPSBkLmdldF9jb21tYW5kX29iaigidGVzdF9kaXN0IikKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ01vZHVsZUVycm9yLCBkLnJ1bl9jb21tYW5kLCAndGVzdF9kaXN0JykKKworICAgIGRlZiB0ZXN0X2hvb2tzX2NhbGxhYmxlKHNlbGYpOgorICAgICAgICB0ZW1wX2hvbWUgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBjb25maWdfZmlsZSA9IG9zLnBhdGguam9pbih0ZW1wX2hvbWUsICJjb25maWcxLmNmZyIpCisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGNvbmZpZ19maWxlLCB0ZXh0d3JhcC5kZWRlbnQoJycnXAorICAgICAgICAgICAgW3Rlc3RfZGlzdF0KKyAgICAgICAgICAgIHByZS1ob29rLnRlc3QgPSBwYWNrYWdpbmcudGVzdHMudGVzdF9kaXN0Ll9fZG9jX18nJycpKQorCisgICAgICAgIHVzZV9jb21tYW5kKHNlbGYsICdwYWNrYWdpbmcudGVzdHMudGVzdF9kaXN0LnRlc3RfZGlzdCcpCisgICAgICAgIGQgPSBjcmVhdGVfZGlzdHJpYnV0aW9uKFtjb25maWdfZmlsZV0pCisgICAgICAgIGNtZCA9IGQuZ2V0X2NvbW1hbmRfb2JqKCJ0ZXN0X2Rpc3QiKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGQucnVuX2NvbW1hbmQsICd0ZXN0X2Rpc3QnKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShEaXN0cmlidXRpb25UZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9leHRlbnNpb24ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfZXh0ZW5zaW9uLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxMTgyZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfZXh0ZW5zaW9uLnB5CkBAIC0wLDAgKzEsMTUgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuZXh0ZW5zaW9uLiIiIgoraW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLmV4dGVuc2lvbiBpbXBvcnQgRXh0ZW5zaW9uCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKKworY2xhc3MgRXh0ZW5zaW9uVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcGFzcworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoRXh0ZW5zaW9uVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfaW5zdGFsbC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9pbnN0YWxsLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNjMWY1ZDMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfaW5zdGFsbC5weQpAQCAtMCwwICsxLDM5MSBAQAorIiIiVGVzdHMgZm9yIHRoZSBwYWNrYWdpbmcuaW5zdGFsbCBtb2R1bGUuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBsb2dnaW5nCitmcm9tIHRlbXBmaWxlIGltcG9ydCBta3N0ZW1wCitmcm9tIHN5c2NvbmZpZyBpbXBvcnQgaXNfcHl0aG9uX2J1aWxkCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBpbnN0YWxsCitmcm9tIHBhY2thZ2luZy5weXBpLnhtbHJwYyBpbXBvcnQgQ2xpZW50Citmcm9tIHBhY2thZ2luZy5tZXRhZGF0YSBpbXBvcnQgTWV0YWRhdGEKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IChMb2dnaW5nQ2F0Y2hlciwgVGVtcGRpck1hbmFnZXIsIHVuaXR0ZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZha2VfZGVjKQordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgdXNlX3htbHJwY19zZXJ2ZXIKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICB0aHJlYWRpbmcgPSBOb25lCisgICAgdXNlX3htbHJwY19zZXJ2ZXIgPSBmYWtlX2RlYworCisKK2NsYXNzIEluc3RhbGxlZERpc3Q6CisgICAgIiIiRGlzdHJpYnV0aW9uIG9iamVjdCwgcmVwcmVzZW50IGRpc3RyaWJ1dGlvbnMgY3VycmVudGx5IGluc3RhbGxlZCBvbiB0aGUKKyAgICBzeXN0ZW0iIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbmFtZSwgdmVyc2lvbiwgZGVwcyk6CisgICAgICAgIHNlbGYubWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIHNlbGYubmFtZSA9IG5hbWUKKyAgICAgICAgc2VsZi52ZXJzaW9uID0gdmVyc2lvbgorICAgICAgICBzZWxmLm1ldGFkYXRhWydOYW1lJ10gPSBuYW1lCisgICAgICAgIHNlbGYubWV0YWRhdGFbJ1ZlcnNpb24nXSA9IHZlcnNpb24KKyAgICAgICAgc2VsZi5tZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddID0gZGVwcworCisgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gJzxJbnN0YWxsZWREaXN0ICVyPicgJSBzZWxmLm1ldGFkYXRhWydOYW1lJ10KKworCitjbGFzcyBUb0luc3RhbGxEaXN0OgorICAgICIiIkRpc3RyaWJ1dGlvbiB0aGF0IHdpbGwgYmUgaW5zdGFsbGVkIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZXM9RmFsc2UpOgorICAgICAgICBzZWxmLl9maWxlcyA9IGZpbGVzCisgICAgICAgIHNlbGYuaW5zdGFsbF9jYWxsZWQgPSBGYWxzZQorICAgICAgICBzZWxmLmluc3RhbGxfY2FsbGVkX3dpdGggPSB7fQorICAgICAgICBzZWxmLnVuaW5zdGFsbF9jYWxsZWQgPSBGYWxzZQorICAgICAgICBzZWxmLl9yZWFsX2ZpbGVzID0gW10KKyAgICAgICAgc2VsZi5uYW1lID0gImZha2UiCisgICAgICAgIHNlbGYudmVyc2lvbiA9ICJmYWtlIgorICAgICAgICBpZiBmaWxlczoKKyAgICAgICAgICAgIGZvciBmIGluIHJhbmdlKDAsIDMpOgorICAgICAgICAgICAgICAgIGZwLCBmbiA9IG1rc3RlbXAoKQorICAgICAgICAgICAgICAgIG9zLmNsb3NlKGZwKQorICAgICAgICAgICAgICAgIHNlbGYuX3JlYWxfZmlsZXMuYXBwZW5kKGZuKQorCisgICAgZGVmIF91bmxpbmtfaW5zdGFsbGVkX2ZpbGVzKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9maWxlczoKKyAgICAgICAgICAgIGZvciBmbiBpbiBzZWxmLl9yZWFsX2ZpbGVzOgorICAgICAgICAgICAgICAgIG9zLnVubGluayhmbikKKworICAgIGRlZiBsaXN0X2luc3RhbGxlZF9maWxlcyhzZWxmLCAqKmFyZ3MpOgorICAgICAgICBpZiBzZWxmLl9maWxlczoKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9yZWFsX2ZpbGVzCisKKyAgICBkZWYgZ2V0X2luc3RhbGwoc2VsZiwgKiphcmdzKToKKyAgICAgICAgcmV0dXJuIHNlbGYubGlzdF9pbnN0YWxsZWRfZmlsZXMoKQorCisKK2NsYXNzIE1hZ2ljTW9jazoKKyAgICBkZWYgX19pbml0X18oc2VsZiwgcmV0dXJuX3ZhbHVlPU5vbmUsIHJhaXNlX2V4Y2VwdGlvbj1GYWxzZSk6CisgICAgICAgIHNlbGYuY2FsbGVkID0gRmFsc2UKKyAgICAgICAgc2VsZi5fdGltZXNfY2FsbGVkID0gMAorICAgICAgICBzZWxmLl9jYWxsZWRfd2l0aCA9IFtdCisgICAgICAgIHNlbGYuX3JldHVybl92YWx1ZSA9IHJldHVybl92YWx1ZQorICAgICAgICBzZWxmLl9yYWlzZSA9IHJhaXNlX2V4Y2VwdGlvbgorCisgICAgZGVmIF9fY2FsbF9fKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHNlbGYuY2FsbGVkID0gVHJ1ZQorICAgICAgICBzZWxmLl90aW1lc19jYWxsZWQgPSBzZWxmLl90aW1lc19jYWxsZWQgKyAxCisgICAgICAgIHNlbGYuX2NhbGxlZF93aXRoLmFwcGVuZCgoYXJncywga3dhcmdzKSkKKyAgICAgICAgaXRlcmFibGUgPSBoYXNhdHRyKHNlbGYuX3JhaXNlLCAnX19pdGVyX18nKQorICAgICAgICBpZiBzZWxmLl9yYWlzZToKKyAgICAgICAgICAgIGlmICgobm90IGl0ZXJhYmxlIGFuZCBzZWxmLl9yYWlzZSkKKyAgICAgICAgICAgICAgICAgICAgb3Igc2VsZi5fcmFpc2Vbc2VsZi5fdGltZXNfY2FsbGVkIC0gMV0pOgorICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbgorICAgICAgICByZXR1cm4gc2VsZi5fcmV0dXJuX3ZhbHVlCisKKyAgICBkZWYgY2FsbGVkX3dpdGgoc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmV0dXJuIChhcmdzLCBrd2FyZ3MpIGluIHNlbGYuX2NhbGxlZF93aXRoCisKKworZGVmIGdldF9pbnN0YWxsZWRfZGlzdHMoZGlzdHMpOgorICAgICIiIlJldHVybiBhIGxpc3Qgb2YgZmFrZSBpbnN0YWxsZWQgZGlzdHMuCisgICAgVGhlIGxpc3QgaXMgbmFtZSwgdmVyc2lvbiwgZGVwcyIiIgorICAgIG9iamVjdHMgPSBbXQorICAgIGZvciBuYW1lLCB2ZXJzaW9uLCBkZXBzIGluIGRpc3RzOgorICAgICAgICBvYmplY3RzLmFwcGVuZChJbnN0YWxsZWREaXN0KG5hbWUsIHZlcnNpb24sIGRlcHMpKQorICAgIHJldHVybiBvYmplY3RzCisKKworY2xhc3MgVGVzdEluc3RhbGwoTG9nZ2luZ0NhdGNoZXIsIFRlbXBkaXJNYW5hZ2VyLCB1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIF9nZXRfY2xpZW50KHNlbGYsIHNlcnZlciwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmV0dXJuIENsaWVudChzZXJ2ZXIuZnVsbF9hZGRyZXNzLCAqYXJncywgKiprd2FyZ3MpCisKKyAgICBkZWYgX2dldF9yZXN1bHRzKHNlbGYsIG91dHB1dCk6CisgICAgICAgICIiInJldHVybiBhIGxpc3Qgb2YgcmVzdWx0cyIiIgorICAgICAgICBpbnN0YWxsZWQgPSBbKG8ubmFtZSwgc3RyKG8udmVyc2lvbikpIGZvciBvIGluIG91dHB1dFsnaW5zdGFsbCddXQorICAgICAgICByZW1vdmUgPSBbKG8ubmFtZSwgc3RyKG8udmVyc2lvbikpIGZvciBvIGluIG91dHB1dFsncmVtb3ZlJ11dCisgICAgICAgIGNvbmZsaWN0ID0gWyhvLm5hbWUsIHN0cihvLnZlcnNpb24pKSBmb3IgbyBpbiBvdXRwdXRbJ2NvbmZsaWN0J11dCisgICAgICAgIHJldHVybiBpbnN0YWxsZWQsIHJlbW92ZSwgY29uZmxpY3QKKworICAgIEB1bml0dGVzdC5za2lwSWYodGhyZWFkaW5nIGlzIE5vbmUsICduZWVkcyB0aHJlYWRpbmcnKQorICAgIEB1c2VfeG1scnBjX3NlcnZlcigpCisgICAgZGVmIHRlc3RfZXhpc3RpbmdfZGVwcyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAjIFRlc3QgdGhhdCB0aGUgaW5zdGFsbGVyIGdldCB0aGUgZGVwZW5kZW5jaWVzIGZyb20gdGhlIG1ldGFkYXRhcworICAgICAgICAjIGFuZCBhc2sgdGhlIGluZGV4IGZvciB0aGlzIGRlcGVuZGVuY2llcy4KKyAgICAgICAgIyBJbiB0aGlzIHRlc3QgY2FzZSwgd2UgaGF2ZSBjaG94aWUgdGhhdCBpcyBkZXBlbmRlbnQgZnJvbSB0b3dlbC1zdHVmZgorICAgICAgICAjIDAuMSwgd2hpY2ggaXMgaW4tdHVybiBkZXBlbmRlbnQgb24gYmFjb24gPD0gMC4yOgorICAgICAgICAjIGNob3hpZSAtPiB0b3dlbC1zdHVmZiAtPiBiYWNvbi4KKyAgICAgICAgIyBFYWNoIHJlbGVhc2UgbWV0YWRhdGEgaXMgbm90IHByb3ZpZGVkIGluIG1ldGFkYXRhIDEuMi4KKyAgICAgICAgY2xpZW50ID0gc2VsZi5fZ2V0X2NsaWVudChzZXJ2ZXIpCisgICAgICAgIGFyY2hpdmVfcGF0aCA9ICclcy9kaXN0cmlidXRpb24udGFyLmd6JyAlIHNlcnZlci5mdWxsX2FkZHJlc3MKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfZGlzdHJpYnV0aW9ucyhbCisgICAgICAgICAgICB7J25hbWUnOiAnY2hveGllJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcyLjAuMC45JywKKyAgICAgICAgICAgICAncmVxdWlyZXNfZGlzdCc6IFsndG93ZWwtc3R1ZmYgKDAuMSknXSwKKyAgICAgICAgICAgICAndXJsJzogYXJjaGl2ZV9wYXRofSwKKyAgICAgICAgICAgIHsnbmFtZSc6ICd0b3dlbC1zdHVmZicsCisgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMC4xJywKKyAgICAgICAgICAgICAncmVxdWlyZXNfZGlzdCc6IFsnYmFjb24gKDw9IDAuMiknXSwKKyAgICAgICAgICAgICAndXJsJzogYXJjaGl2ZV9wYXRofSwKKyAgICAgICAgICAgIHsnbmFtZSc6ICdiYWNvbicsCisgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMC4xJywKKyAgICAgICAgICAgICAncmVxdWlyZXNfZGlzdCc6IFtdLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgXSkKKyAgICAgICAgaW5zdGFsbGVkID0gZ2V0X2luc3RhbGxlZF9kaXN0cyhbKCdiYWNvbicsICcwLjEnLCBbXSldKQorICAgICAgICBvdXRwdXQgPSBpbnN0YWxsLmdldF9pbmZvcygiY2hveGllIiwgaW5kZXg9Y2xpZW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxsZWQ9aW5zdGFsbGVkKQorCisgICAgICAgICMgd2UgZG9uJ3QgaGF2ZSBpbnN0YWxsZWQgYmFjb24gYXMgaXQncyBhbHJlYWR5IGluc3RhbGxlZCBzeXN0ZW0td2lkZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGxlbihvdXRwdXRbJ3JlbW92ZSddKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBsZW4ob3V0cHV0WydpbnN0YWxsJ10pKQorICAgICAgICByZWFkYWJsZV9vdXRwdXQgPSBbKG8ubmFtZSwgc3RyKG8udmVyc2lvbikpCisgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgbyBpbiBvdXRwdXRbJ2luc3RhbGwnXV0KKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ3Rvd2VsLXN0dWZmJywgJzAuMScpLCByZWFkYWJsZV9vdXRwdXQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oKCdjaG94aWUnLCAnMi4wLjAuOScpLCByZWFkYWJsZV9vdXRwdXQpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKHRocmVhZGluZyBpcyBOb25lLCAnbmVlZHMgdGhyZWFkaW5nJykKKyAgICBAdXNlX3htbHJwY19zZXJ2ZXIoKQorICAgIGRlZiB0ZXN0X3VwZ3JhZGVfZXhpc3RpbmdfZGVwcyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgYXJjaGl2ZV9wYXRoID0gJyVzL2Rpc3RyaWJ1dGlvbi50YXIuZ3onICUgc2VydmVyLmZ1bGxfYWRkcmVzcworICAgICAgICBzZXJ2ZXIueG1scnBjLnNldF9kaXN0cmlidXRpb25zKFsKKyAgICAgICAgICAgIHsnbmFtZSc6ICdjaG94aWUnLAorICAgICAgICAgICAgICd2ZXJzaW9uJzogJzIuMC4wLjknLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWyd0b3dlbC1zdHVmZiAoMC4xKSddLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgeyduYW1lJzogJ3Rvd2VsLXN0dWZmJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcwLjEnLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWydiYWNvbiAoPj0gMC4yKSddLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgeyduYW1lJzogJ2JhY29uJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcwLjInLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogW10sCisgICAgICAgICAgICAgJ3VybCc6IGFyY2hpdmVfcGF0aH0sCisgICAgICAgICAgICBdKQorCisgICAgICAgIG91dHB1dCA9IGluc3RhbGwuZ2V0X2luZm9zKCJjaG94aWUiLCBpbmRleD1jbGllbnQsCisgICAgICAgICAgICAgICAgICAgICBpbnN0YWxsZWQ9Z2V0X2luc3RhbGxlZF9kaXN0cyhbKCdiYWNvbicsICcwLjEnLCBbXSldKSkKKyAgICAgICAgaW5zdGFsbGVkID0gWyhvLm5hbWUsIHN0cihvLnZlcnNpb24pKSBmb3IgbyBpbiBvdXRwdXRbJ2luc3RhbGwnXV0KKworICAgICAgICAjIHdlIG5lZWQgYmFjb24gMC4yLCBidXQgMC4xIGlzIGluc3RhbGxlZC4KKyAgICAgICAgIyBTbyB3ZSBleHBlY3QgdG8gcmVtb3ZlIDAuMSBhbmQgdG8gaW5zdGFsbCAwLjIgaW5zdGVhZC4KKyAgICAgICAgcmVtb3ZlID0gWyhvLm5hbWUsIHN0cihvLnZlcnNpb24pKSBmb3IgbyBpbiBvdXRwdXRbJ3JlbW92ZSddXQorICAgICAgICBzZWxmLmFzc2VydEluKCgnY2hveGllJywgJzIuMC4wLjknKSwgaW5zdGFsbGVkKQorICAgICAgICBzZWxmLmFzc2VydEluKCgndG93ZWwtc3R1ZmYnLCAnMC4xJyksIGluc3RhbGxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ2JhY29uJywgJzAuMicpLCBpbnN0YWxsZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oKCdiYWNvbicsICcwLjEnKSwgcmVtb3ZlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGxlbihvdXRwdXRbJ2NvbmZsaWN0J10pKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZih0aHJlYWRpbmcgaXMgTm9uZSwgJ25lZWRzIHRocmVhZGluZycpCisgICAgQHVzZV94bWxycGNfc2VydmVyKCkKKyAgICBkZWYgdGVzdF9jb25mbGljdHMoc2VsZiwgc2VydmVyKToKKyAgICAgICAgIyBUZXN0cyB0aGF0IGNvbmZsaWN0cyBhcmUgZGV0ZWN0ZWQKKyAgICAgICAgY2xpZW50ID0gc2VsZi5fZ2V0X2NsaWVudChzZXJ2ZXIpCisgICAgICAgIGFyY2hpdmVfcGF0aCA9ICclcy9kaXN0cmlidXRpb24udGFyLmd6JyAlIHNlcnZlci5mdWxsX2FkZHJlc3MKKworICAgICAgICAjIGNob3hpZSBkZXBlbmRzIG9uIHRvd2VsLXN0dWZmLCB3aGljaCBkZXBlbmRzIG9uIGJhY29uLgorICAgICAgICBzZXJ2ZXIueG1scnBjLnNldF9kaXN0cmlidXRpb25zKFsKKyAgICAgICAgICAgIHsnbmFtZSc6ICdjaG94aWUnLAorICAgICAgICAgICAgICd2ZXJzaW9uJzogJzIuMC4wLjknLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWyd0b3dlbC1zdHVmZiAoMC4xKSddLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgeyduYW1lJzogJ3Rvd2VsLXN0dWZmJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcwLjEnLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWydiYWNvbiAoPj0gMC4yKSddLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgeyduYW1lJzogJ2JhY29uJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcwLjInLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogW10sCisgICAgICAgICAgICAgJ3VybCc6IGFyY2hpdmVfcGF0aH0sCisgICAgICAgICAgICBdKQorCisgICAgICAgICMgbmFtZSwgdmVyc2lvbiwgZGVwcy4KKyAgICAgICAgYWxyZWFkeV9pbnN0YWxsZWQgPSBbKCdiYWNvbicsICcwLjEnLCBbXSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnY2hpY2tlbicsICcxLjEnLCBbJ2JhY29uICgwLjEpJ10pXQorICAgICAgICBvdXRwdXQgPSBpbnN0YWxsLmdldF9pbmZvcygKKyAgICAgICAgICAgICdjaG94aWUnLCBpbmRleD1jbGllbnQsCisgICAgICAgICAgICBpbnN0YWxsZWQ9Z2V0X2luc3RhbGxlZF9kaXN0cyhhbHJlYWR5X2luc3RhbGxlZCkpCisKKyAgICAgICAgIyB3ZSBuZWVkIGJhY29uIDAuMiwgYnV0IDAuMSBpcyBpbnN0YWxsZWQuCisgICAgICAgICMgU28gd2UgZXhwZWN0IHRvIHJlbW92ZSAwLjEgYW5kIHRvIGluc3RhbGwgMC4yIGluc3RlYWQuCisgICAgICAgIGluc3RhbGxlZCwgcmVtb3ZlLCBjb25mbGljdCA9IHNlbGYuX2dldF9yZXN1bHRzKG91dHB1dCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ2Nob3hpZScsICcyLjAuMC45JyksIGluc3RhbGxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ3Rvd2VsLXN0dWZmJywgJzAuMScpLCBpbnN0YWxsZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oKCdiYWNvbicsICcwLjInKSwgaW5zdGFsbGVkKQorICAgICAgICBzZWxmLmFzc2VydEluKCgnYmFjb24nLCAnMC4xJyksIHJlbW92ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ2NoaWNrZW4nLCAnMS4xJyksIGNvbmZsaWN0KQorCisgICAgQHVuaXR0ZXN0LnNraXBJZih0aHJlYWRpbmcgaXMgTm9uZSwgJ25lZWRzIHRocmVhZGluZycpCisgICAgQHVzZV94bWxycGNfc2VydmVyKCkKKyAgICBkZWYgdGVzdF9pbnN0YWxsYXRpb25fdW5leGlzdGluZ19wcm9qZWN0KHNlbGYsIHNlcnZlcik6CisgICAgICAgICMgVGVzdCB0aGF0IHRoZSBpc250YWxsZWQgcmFpc2VzIGFuIGV4Y2VwdGlvbiBpZiB0aGUgcHJvamVjdCBkb2VzIG5vdAorICAgICAgICAjIGV4aXN0cy4KKyAgICAgICAgY2xpZW50ID0gc2VsZi5fZ2V0X2NsaWVudChzZXJ2ZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKGluc3RhbGwuSW5zdGFsbGF0aW9uRXhjZXB0aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxsLmdldF9pbmZvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ3VuZXhpc3RpbmcgcHJvamVjdCcsIGluZGV4PWNsaWVudCkKKworICAgIGRlZiB0ZXN0X21vdmVfZmlsZXMoc2VsZik6CisgICAgICAgICMgdGVzdCB0aGF0IHRoZSBmaWxlcyBhcmUgcmVhbGx5IG1vdmVkLCBhbmQgdGhhdCB0aGUgbmV3IHBhdGggaXMKKyAgICAgICAgIyByZXR1cm5lZC4KKyAgICAgICAgcGF0aCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG5ld3BhdGggPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBmaWxlcyA9IFtvcy5wYXRoLmpvaW4ocGF0aCwgc3RyKHgpKSBmb3IgeCBpbiByYW5nZSgxLCAyMCldCisgICAgICAgIGZvciBmIGluIGZpbGVzOgorICAgICAgICAgICAgb3BlbihmLCAnYWIrJykuY2xvc2UoKQorICAgICAgICBvdXRwdXQgPSBbbyBmb3IgbyBpbiBpbnN0YWxsLl9tb3ZlX2ZpbGVzKGZpbGVzLCBuZXdwYXRoKV0KKworICAgICAgICAjIGNoZWNrIHRoYXQgb3V0cHV0IHJldHVybiB0aGUgbGlzdCBvZiBvbGQvbmV3IHBsYWNlcworICAgICAgICBmb3IgZmlsZV8gaW4gZmlsZXM6CisgICAgICAgICAgICBuYW1lID0gb3MucGF0aC5zcGxpdChmaWxlXylbLTFdCisgICAgICAgICAgICBuZXdsb2MgPSBvcy5wYXRoLmpvaW4obmV3cGF0aCwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oKGZpbGVfLCBuZXdsb2MpLCBvdXRwdXQpCisKKyAgICAgICAgIyByZW1vdmUgdGhlIGZpbGVzCisgICAgICAgIGZvciBmIGluIFtvWzFdIGZvciBvIGluIG91dHB1dF06ICAjIG9bMV0gaXMgdGhlIG5ldyBwbGFjZQorICAgICAgICAgICAgb3MucmVtb3ZlKGYpCisKKyAgICBkZWYgdGVzdF91cGRhdGVfaW5mb3Moc2VsZik6CisgICAgICAgIHRlc3RzID0gW1sKKyAgICAgICAgICAgIHsnZm9vJzogWydmb29iYXInLCAnZm9vJywgJ2JheiddLCAnYmF6JzogWydmb28nLCAnZm9vJ119LAorICAgICAgICAgICAgeydmb28nOiBbJ2FkZGl0aW9uYWxfY29udGVudCcsICd5ZWFoJ10sICdiYXonOiBbJ3Rlc3QnLCAnZm9vJ119LAorICAgICAgICAgICAgeydmb28nOiBbJ2Zvb2JhcicsICdmb28nLCAnYmF6JywgJ2FkZGl0aW9uYWxfY29udGVudCcsICd5ZWFoJ10sCisgICAgICAgICAgICAgJ2Jheic6IFsnZm9vJywgJ2ZvbycsICd0ZXN0JywgJ2ZvbyddfSwKKyAgICAgICAgXV0KKworICAgICAgICBmb3IgZGljdDEsIGRpY3QyLCBleHBlY3QgaW4gdGVzdHM6CisgICAgICAgICAgICBpbnN0YWxsLl91cGRhdGVfaW5mb3MoZGljdDEsIGRpY3QyKQorICAgICAgICAgICAgZm9yIGtleSBpbiBleHBlY3Q6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHBlY3Rba2V5XSwgZGljdDFba2V5XSkKKworICAgIGRlZiB0ZXN0X2luc3RhbGxfZGlzdHNfcm9sbGJhY2soc2VsZik6CisgICAgICAgICMgaWYgb25lIG9mIHRoZSBkaXN0cmlidXRpb24gaW5zdGFsbGF0aW9uIGZhaWxzLCBjYWxsIHVuaW5zdGFsbCBvbiBhbGwKKyAgICAgICAgIyBpbnN0YWxsZWQgZGlzdHJpYnV0aW9ucy4KKworICAgICAgICBvbGRfaW5zdGFsbF9kaXN0ID0gaW5zdGFsbC5faW5zdGFsbF9kaXN0CisgICAgICAgIG9sZF91bmluc3RhbGwgPSBnZXRhdHRyKGluc3RhbGwsICd1bmluc3RhbGwnLCBOb25lKQorCisgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IE1hZ2ljTW9jayhyZXR1cm5fdmFsdWU9W10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZV9leGNlcHRpb249KEZhbHNlLCBUcnVlKSkKKyAgICAgICAgaW5zdGFsbC5yZW1vdmUgPSBNYWdpY01vY2soKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBkMSA9IFRvSW5zdGFsbERpc3QoKQorICAgICAgICAgICAgZDIgPSBUb0luc3RhbGxEaXN0KCkKKyAgICAgICAgICAgIHBhdGggPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRXhjZXB0aW9uLCBpbnN0YWxsLmluc3RhbGxfZGlzdHMsIFtkMSwgZDJdLCBwYXRoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGluc3RhbGwuX2luc3RhbGxfZGlzdC5jYWxsZWRfd2l0aChkMSwgcGF0aCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaW5zdGFsbC5yZW1vdmUuY2FsbGVkKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgaW5zdGFsbC5faW5zdGFsbF9kaXN0ID0gb2xkX2luc3RhbGxfZGlzdAorICAgICAgICAgICAgaW5zdGFsbC5yZW1vdmUgPSBvbGRfdW5pbnN0YWxsCisKKyAgICBkZWYgdGVzdF9pbnN0YWxsX2Rpc3RzX3N1Y2Nlc3Moc2VsZik6CisgICAgICAgIG9sZF9pbnN0YWxsX2Rpc3QgPSBpbnN0YWxsLl9pbnN0YWxsX2Rpc3QKKyAgICAgICAgaW5zdGFsbC5faW5zdGFsbF9kaXN0ID0gTWFnaWNNb2NrKHJldHVybl92YWx1ZT1bXSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyB0ZXN0IHRoYXQgdGhlIGluc3RhbGwgbWV0aG9kIGlzIGNhbGxlZCBvbiBlYWNoIGRpc3RyaWJ1dGlvbnMKKyAgICAgICAgICAgIGQxID0gVG9JbnN0YWxsRGlzdCgpCisgICAgICAgICAgICBkMiA9IFRvSW5zdGFsbERpc3QoKQorCisgICAgICAgICAgICAjIHNob3VsZCBjYWxsIGluc3RhbGwKKyAgICAgICAgICAgIHBhdGggPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICAgICAgaW5zdGFsbC5pbnN0YWxsX2Rpc3RzKFtkMSwgZDJdLCBwYXRoKQorICAgICAgICAgICAgZm9yIGRpc3QgaW4gKGQxLCBkMik6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGluc3RhbGwuX2luc3RhbGxfZGlzdC5jYWxsZWRfd2l0aChkaXN0LCBwYXRoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IG9sZF9pbnN0YWxsX2Rpc3QKKworICAgIGRlZiB0ZXN0X2luc3RhbGxfZnJvbV9pbmZvc19jb25mbGljdChzZWxmKToKKyAgICAgICAgIyBhc3NlcnQgY29uZmxpY3RzIHJhaXNlIGFuIGV4Y2VwdGlvbgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhpbnN0YWxsLkluc3RhbGxhdGlvbkNvbmZsaWN0LAorICAgICAgICAgICAgaW5zdGFsbC5pbnN0YWxsX2Zyb21faW5mb3MsCisgICAgICAgICAgICBjb25mbGljdHM9W1RvSW5zdGFsbERpc3QoKV0pCisKKyAgICBkZWYgdGVzdF9pbnN0YWxsX2Zyb21faW5mb3NfcmVtb3ZlX3N1Y2Nlc3Moc2VsZik6CisgICAgICAgIG9sZF9pbnN0YWxsX2Rpc3RzID0gaW5zdGFsbC5pbnN0YWxsX2Rpc3RzCisgICAgICAgIGluc3RhbGwuaW5zdGFsbF9kaXN0cyA9IGxhbWJkYSB4LCB5PU5vbmU6IE5vbmUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZGlzdHMgPSBbXQorICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMik6CisgICAgICAgICAgICAgICAgZGlzdHMuYXBwZW5kKFRvSW5zdGFsbERpc3QoZmlsZXM9VHJ1ZSkpCisgICAgICAgICAgICBpbnN0YWxsLmluc3RhbGxfZnJvbV9pbmZvcyhyZW1vdmU9ZGlzdHMpCisKKyAgICAgICAgICAgICMgYXNzZXJ0IHRoYXQgdGhlIGZpbGVzIGhhdmUgYmVlbiByZW1vdmVkCisgICAgICAgICAgICBmb3IgZGlzdCBpbiBkaXN0czoKKyAgICAgICAgICAgICAgICBmb3IgZiBpbiBkaXN0Lmxpc3RfaW5zdGFsbGVkX2ZpbGVzKCk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoZikpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBpbnN0YWxsLmluc3RhbGxfZGlzdHMgPSBvbGRfaW5zdGFsbF9kaXN0cworCisgICAgZGVmIHRlc3RfaW5zdGFsbF9mcm9tX2luZm9zX3JlbW92ZV9yb2xsYmFjayhzZWxmKToKKyAgICAgICAgb2xkX2luc3RhbGxfZGlzdCA9IGluc3RhbGwuX2luc3RhbGxfZGlzdAorICAgICAgICBvbGRfdW5pbnN0YWxsID0gZ2V0YXR0cihpbnN0YWxsLCAndW5pbnN0YWxsJywgTm9uZSkKKworICAgICAgICBpbnN0YWxsLl9pbnN0YWxsX2Rpc3QgPSBNYWdpY01vY2socmV0dXJuX3ZhbHVlPVtdLAorICAgICAgICAgICAgICAgIHJhaXNlX2V4Y2VwdGlvbj0oRmFsc2UsIFRydWUpKQorICAgICAgICBpbnN0YWxsLnVuaW5zdGFsbCA9IE1hZ2ljTW9jaygpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgICMgYXNzZXJ0IHRoYXQgaWYgYW4gZXJyb3Igb2NjdXJzLCB0aGUgcmVtb3ZlZCBmaWxlcyBhcmUgcmVzdG9yZWQuCisgICAgICAgICAgICByZW1vdmUgPSBbXQorICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMik6CisgICAgICAgICAgICAgICAgcmVtb3ZlLmFwcGVuZChUb0luc3RhbGxEaXN0KGZpbGVzPVRydWUpKQorICAgICAgICAgICAgdG9faW5zdGFsbCA9IFtUb0luc3RhbGxEaXN0KCksIFRvSW5zdGFsbERpc3QoKV0KKyAgICAgICAgICAgIHRlbXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKworICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRXhjZXB0aW9uLCBpbnN0YWxsLmluc3RhbGxfZnJvbV9pbmZvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbGxfcGF0aD10ZW1wX2RpciwgaW5zdGFsbD10b19pbnN0YWxsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3ZlPXJlbW92ZSkKKyAgICAgICAgICAgICMgYXNzZXJ0IHRoYXQgdGhlIGZpbGVzIGFyZSBpbiB0aGUgc2FtZSBwbGFjZQorICAgICAgICAgICAgIyBhc3NlcnQgdGhhdCB0aGUgZmlsZXMgaGF2ZSBiZWVuIHJlbW92ZWQKKyAgICAgICAgICAgIGZvciBkaXN0IGluIHJlbW92ZToKKyAgICAgICAgICAgICAgICBmb3IgZiBpbiBkaXN0Lmxpc3RfaW5zdGFsbGVkX2ZpbGVzKCk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhmKSkKKyAgICAgICAgICAgICAgICBkaXN0Ll91bmxpbmtfaW5zdGFsbGVkX2ZpbGVzKCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IG9sZF9pbnN0YWxsX2Rpc3QKKyAgICAgICAgICAgIGluc3RhbGwudW5pbnN0YWxsID0gb2xkX3VuaW5zdGFsbAorCisgICAgZGVmIHRlc3RfaW5zdGFsbF9mcm9tX2luZm9zX2luc3RhbGxfc3VjY2VzKHNlbGYpOgorICAgICAgICBvbGRfaW5zdGFsbF9kaXN0ID0gaW5zdGFsbC5faW5zdGFsbF9kaXN0CisgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IE1hZ2ljTW9jayhbXSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBhc3NlcnQgdGhhdCB0aGUgZGlzdHJpYnV0aW9uIGNhbiBiZSBpbnN0YWxsZWQKKyAgICAgICAgICAgIGluc3RhbGxfcGF0aCA9ICJteV9pbnN0YWxsX3BhdGgiCisgICAgICAgICAgICB0b19pbnN0YWxsID0gW1RvSW5zdGFsbERpc3QoKSwgVG9JbnN0YWxsRGlzdCgpXQorCisgICAgICAgICAgICBpbnN0YWxsLmluc3RhbGxfZnJvbV9pbmZvcyhpbnN0YWxsX3BhdGgsIGluc3RhbGw9dG9faW5zdGFsbCkKKyAgICAgICAgICAgIGZvciBkaXN0IGluIHRvX2luc3RhbGw6CisgICAgICAgICAgICAgICAgaW5zdGFsbC5faW5zdGFsbF9kaXN0LmNhbGxlZF93aXRoKGluc3RhbGxfcGF0aCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IG9sZF9pbnN0YWxsX2Rpc3QKKworICAgIGRlZiB0ZXN0X2luc3RhbGxfcGVybWlzc2lvbl9kZW5pZWQoc2VsZik6CisgICAgICAgICMgaWYgd2UgZG9uJ3QgaGF2ZSBhY2Nlc3MgdG8gdGhlIGluc3RhbGxhdGlvbiBwYXRoLCB3ZSBzaG91bGQgYWJvcnQKKyAgICAgICAgIyBpbW1lZGlhdGVseQorICAgICAgICBwcm9qZWN0ID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICdwYWNrYWdlLnRneicpCisKKyAgICAgICAgIyB3aGVuIHJ1bm5pbmcgZnJvbSBhbiB1bmluc3RhbGxlZCBidWlsZCwgYSB3YXJuaW5nIGlzIGVtaXR0ZWQgYW5kIHRoZQorICAgICAgICAjIGluc3RhbGxhdGlvbiBpcyBub3QgYXR0ZW1wdGVkCisgICAgICAgIGlmIGlzX3B5dGhvbl9idWlsZCgpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpbnN0YWxsLmluc3RhbGwocHJvamVjdCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihzZWxmLmdldF9sb2dzKGxvZ2dpbmcuRVJST1IpKSkKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGluc3RhbGxfcGF0aCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG9sZF9nZXRfcGF0aCA9IGluc3RhbGwuZ2V0X3BhdGgKKyAgICAgICAgaW5zdGFsbC5nZXRfcGF0aCA9IGxhbWJkYSBwYXRoOiBpbnN0YWxsX3BhdGgKKyAgICAgICAgb2xkX21vZCA9IG9zLnN0YXQoaW5zdGFsbF9wYXRoKS5zdF9tb2RlCisgICAgICAgIG9zLmNobW9kKGluc3RhbGxfcGF0aCwgMCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpbnN0YWxsLmluc3RhbGwocHJvamVjdCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jaG1vZChpbnN0YWxsX3BhdGgsIG9sZF9tb2QpCisgICAgICAgICAgICBpbnN0YWxsLmdldF9wYXRoID0gb2xkX2dldF9wYXRoCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICBzdWl0ZSA9IHVuaXR0ZXN0LlRlc3RTdWl0ZSgpCisgICAgc3VpdGUuYWRkVGVzdCh1bml0dGVzdC5tYWtlU3VpdGUoVGVzdEluc3RhbGwpKQorICAgIHJldHVybiBzdWl0ZQorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3Rlc3Rfc3VpdGUnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21hbmlmZXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21hbmlmZXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdhYTU5YzEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfbWFuaWZlc3QucHkKQEAgLTAsMCArMSwzMzEgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcubWFuaWZlc3QuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCByZQorZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nVGVtcGxhdGVFcnJvcgorZnJvbSBwYWNrYWdpbmcubWFuaWZlc3QgaW1wb3J0IE1hbmlmZXN0LCBfdHJhbnNsYXRlX3BhdHRlcm4sIF9nbG9iX3RvX3JlCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCitNQU5JRkVTVF9JTiA9ICIiIlwKK2luY2x1ZGUgb2sKK2luY2x1ZGUgeG8KK2V4Y2x1ZGUgeG8KK2luY2x1ZGUgZm9vLnRtcAoraW5jbHVkZSBidWlsZG91dC5jZmcKK2dsb2JhbC1pbmNsdWRlICoueAorZ2xvYmFsLWluY2x1ZGUgKi50eHQKK2dsb2JhbC1leGNsdWRlICoudG1wCityZWN1cnNpdmUtaW5jbHVkZSBmICoub28KK3JlY3Vyc2l2ZS1leGNsdWRlIGdsb2JhbCAqLngKK2dyYWZ0IGRpcgorcHJ1bmUgZGlyMworIiIiCisKK01BTklGRVNUX0lOXzIgPSAiIiJcCityZWN1cnNpdmUtaW5jbHVkZSBmb28gKi5weSAgICMgb2sKKyMgbm90aGluZyBoZXJlCisKKyMKKworcmVjdXJzaXZlLWluY2x1ZGUgYmFyIFxcCisgICouZGF0ICAgKi50eHQKKyIiIgorCitNQU5JRkVTVF9JTl8zID0gIiIiXAorUkVBRE1FCitmaWxlMQorIiIiCisKKworZGVmIG1ha2VfbG9jYWxfcGF0aChzKToKKyAgICAiIiJDb252ZXJ0cyAnLycgaW4gYSBzdHJpbmcgdG8gb3Muc2VwIiIiCisgICAgcmV0dXJuIHMucmVwbGFjZSgnLycsIG9zLnNlcCkKKworCitjbGFzcyBNYW5pZmVzdFRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBhc3NlcnROb1dhcm5pbmdzKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZ2V0X2xvZ3MoKSwgW10pCisKKyAgICBkZWYgYXNzZXJ0V2FybmluZ3Moc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKworICAgIGRlZiB0ZXN0X21hbmlmZXN0X3JlYWRlcihzZWxmKToKKyAgICAgICAgdG1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgTUFOSUZFU1QgPSBvcy5wYXRoLmpvaW4odG1wZGlyLCAnTUFOSUZFU1QuaW4nKQorICAgICAgICB3aXRoIG9wZW4oTUFOSUZFU1QsICd3JykgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoTUFOSUZFU1RfSU5fMikKKworICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QucmVhZF90ZW1wbGF0ZShNQU5JRkVTVCkKKworICAgICAgICB3YXJuaW5ncyA9IHNlbGYuZ2V0X2xvZ3MoKQorICAgICAgICAjIHRoZSBtYW5pZmVzdCBzaG91bGQgaGF2ZSBiZWVuIHJlYWQgYW5kIDMgd2FybmluZ3MgaXNzdWVkCisgICAgICAgICMgKHdlIGRpZG4ndCBwcm92aWRlIHRoZSBmaWxlcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgzLCBsZW4od2FybmluZ3MpKQorICAgICAgICBmb3Igd2FybmluZyBpbiB3YXJuaW5nczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ25vIGZpbGVzIGZvdW5kIG1hdGNoaW5nJywgd2FybmluZykKKworICAgICAgICAjIG1hbmlmZXN0IGFsc28gYWNjZXB0cyBmaWxlLWxpa2Ugb2JqZWN0cworICAgICAgICB3aXRoIG9wZW4oTUFOSUZFU1QpIGFzIGY6CisgICAgICAgICAgICBtYW5pZmVzdC5yZWFkX3RlbXBsYXRlKGYpCisKKyAgICAgICAgIyB0aGUgbWFuaWZlc3Qgc2hvdWxkIGhhdmUgYmVlbiByZWFkIGFuZCAzIHdhcm5pbmdzIGlzc3VlZAorICAgICAgICAjICh3ZSBkaWRuJ3QgcHJvdmlkZSB0aGUgZmlsZXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMywgbGVuKHdhcm5pbmdzKSkKKworICAgIGRlZiB0ZXN0X2RlZmF1bHRfYWN0aW9ucyhzZWxmKToKKyAgICAgICAgdG1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLmNoZGlyLCBvcy5nZXRjd2QoKSkKKyAgICAgICAgb3MuY2hkaXIodG1wZGlyKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRScsICd4eHgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ2ZpbGUxJywgJ3h4eCcpCisgICAgICAgIGNvbnRlbnQgPSBTdHJpbmdJTyhNQU5JRkVTVF9JTl8zKQorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QucmVhZF90ZW1wbGF0ZShjb250ZW50KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnUkVBRE1FJywgJ2ZpbGUxJ10sIG1hbmlmZXN0LmZpbGVzKQorCisgICAgZGVmIHRlc3RfZ2xvYl90b19yZShzZWxmKToKKyAgICAgICAgc2VwID0gb3Muc2VwCisgICAgICAgIGlmIG9zLnNlcCA9PSAnXFwnOgorICAgICAgICAgICAgc2VwID0gcidcXCcKKworICAgICAgICBmb3IgZ2xvYiwgcmVnZXggaW4gKAorICAgICAgICAgICAgIyBzaW1wbGUgY2FzZXMKKyAgICAgICAgICAgICgnZm9vKicsIHInZm9vW14lKHNlcClzXSpcWig/bXMpJyksCisgICAgICAgICAgICAoJ2Zvbz8nLCByJ2Zvb1teJShzZXApc11cWig/bXMpJyksCisgICAgICAgICAgICAoJ2Zvbz8/Jywgcidmb29bXiUoc2VwKXNdW14lKHNlcClzXVxaKD9tcyknKSwKKyAgICAgICAgICAgICMgc3BlY2lhbCBjYXNlcworICAgICAgICAgICAgKHInZm9vXFwqJywgcidmb29cXFxcW14lKHNlcClzXSpcWig/bXMpJyksCisgICAgICAgICAgICAocidmb29cXFwqJywgcidmb29cXFxcXFxbXiUoc2VwKXNdKlxaKD9tcyknKSwKKyAgICAgICAgICAgICgnZm9vPz8/PycsIHInZm9vW14lKHNlcClzXVteJShzZXApc11bXiUoc2VwKXNdW14lKHNlcClzXVxaKD9tcyknKSwKKyAgICAgICAgICAgIChyJ2Zvb1xcPz8nLCByJ2Zvb1xcXFxbXiUoc2VwKXNdW14lKHNlcClzXVxaKD9tcyknKSwKKyAgICAgICAgKToKKyAgICAgICAgICAgIHJlZ2V4ID0gcmVnZXggJSB7J3NlcCc6IHNlcH0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoX2dsb2JfdG9fcmUoZ2xvYiksIHJlZ2V4KQorCisgICAgZGVmIHRlc3RfcHJvY2Vzc190ZW1wbGF0ZV9saW5lKHNlbGYpOgorICAgICAgICAjIHRlc3RpbmcgIGFsbCBNQU5JRkVTVC5pbiB0ZW1wbGF0ZSBwYXR0ZXJucworICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbCA9IG1ha2VfbG9jYWxfcGF0aAorCisgICAgICAgICMgc2ltdWxhdGVkIGZpbGUgbGlzdAorICAgICAgICBtYW5pZmVzdC5hbGxmaWxlcyA9IFsnZm9vLnRtcCcsICdvaycsICd4bycsICdmb3VyLnR4dCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYnVpbGRvdXQuY2ZnJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZmlsZWxpc3QgZG9lcyBub3QgZmlsdGVyIG91dCBWQ1MgZGlyZWN0b3JpZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGl0J3Mgc2Rpc3QgdGhhdCBkb2VzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsKCcuaGcvbGFzdC1tZXNzYWdlLnR4dCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbCgnZ2xvYmFsL29uZS50eHQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGwoJ2dsb2JhbC90d28udHh0JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsKCdnbG9iYWwvZmlsZXMueCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbCgnZ2xvYmFsL2hlcmUudG1wJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsKCdmL28vZi5vbycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbCgnZGlyL2dyYWZ0LW9uZScpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbCgnZGlyL2RpcjIvZ3JhZnQyJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsKCdkaXIzL29rJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsKCdkaXIzL3N1Yi9vay50eHQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXQorCisgICAgICAgIGZvciBsaW5lIGluIE1BTklGRVNUX0lOLnNwbGl0KCdcbicpOgorICAgICAgICAgICAgaWYgbGluZS5zdHJpcCgpID09ICcnOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKGxpbmUpCisKKyAgICAgICAgd2FudGVkID0gWydvaycsCisgICAgICAgICAgICAgICAgICAnYnVpbGRvdXQuY2ZnJywKKyAgICAgICAgICAgICAgICAgICdmb3VyLnR4dCcsCisgICAgICAgICAgICAgICAgICBsKCcuaGcvbGFzdC1tZXNzYWdlLnR4dCcpLAorICAgICAgICAgICAgICAgICAgbCgnZ2xvYmFsL29uZS50eHQnKSwKKyAgICAgICAgICAgICAgICAgIGwoJ2dsb2JhbC90d28udHh0JyksCisgICAgICAgICAgICAgICAgICBsKCdmL28vZi5vbycpLAorICAgICAgICAgICAgICAgICAgbCgnZGlyL2dyYWZ0LW9uZScpLAorICAgICAgICAgICAgICAgICAgbCgnZGlyL2RpcjIvZ3JhZnQyJyksCisgICAgICAgICAgICAgICAgIF0KKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCB3YW50ZWQpCisKKyAgICBkZWYgdGVzdF9yZW1vdmVfZHVwbGljYXRlcyhzZWxmKToKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmZpbGVzID0gWydhJywgJ2InLCAnYScsICdnJywgJ2MnLCAnZyddCisgICAgICAgICMgZmlsZXMgbXVzdCBiZSBzb3J0ZWQgYmVmb3JlaGFuZCAobGlrZSBzZGlzdCBkb2VzKQorICAgICAgICBtYW5pZmVzdC5zb3J0KCkKKyAgICAgICAgbWFuaWZlc3QucmVtb3ZlX2R1cGxpY2F0ZXMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2EnLCAnYicsICdjJywgJ2cnXSkKKworICAgIGRlZiB0ZXN0X3RyYW5zbGF0ZV9wYXR0ZXJuKHNlbGYpOgorICAgICAgICAjIGJsYWNrYm94IHRlc3Qgb2YgYSBwcml2YXRlIGZ1bmN0aW9uCisKKyAgICAgICAgIyBub3QgcmVnZXgKKyAgICAgICAgcGF0dGVybiA9IF90cmFuc2xhdGVfcGF0dGVybignYScsIGFuY2hvcj1UcnVlLCBpc19yZWdleD1GYWxzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIocGF0dGVybiwgJ3NlYXJjaCcpKQorCisgICAgICAgICMgaXMgYSByZWdleAorICAgICAgICByZWdleCA9IHJlLmNvbXBpbGUoJ2EnKQorICAgICAgICBwYXR0ZXJuID0gX3RyYW5zbGF0ZV9wYXR0ZXJuKHJlZ2V4LCBhbmNob3I9VHJ1ZSwgaXNfcmVnZXg9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwYXR0ZXJuLCByZWdleCkKKworICAgICAgICAjIHBsYWluIHN0cmluZyBmbGFnZ2VkIGFzIHJlZ2V4CisgICAgICAgIHBhdHRlcm4gPSBfdHJhbnNsYXRlX3BhdHRlcm4oJ2EnLCBhbmNob3I9VHJ1ZSwgaXNfcmVnZXg9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIocGF0dGVybiwgJ3NlYXJjaCcpKQorCisgICAgICAgICMgZ2xvYiBzdXBwb3J0CisgICAgICAgIHBhdHRlcm4gPSBfdHJhbnNsYXRlX3BhdHRlcm4oJyoucHknLCBhbmNob3I9VHJ1ZSwgaXNfcmVnZXg9RmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShwYXR0ZXJuLnNlYXJjaCgnZmlsZWxpc3QucHknKSkKKworICAgIGRlZiB0ZXN0X2V4Y2x1ZGVfcGF0dGVybihzZWxmKToKKyAgICAgICAgIyByZXR1cm4gRmFsc2UgaWYgbm8gbWF0Y2gKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UobWFuaWZlc3QuZXhjbHVkZV9wYXR0ZXJuKCcqLnB5JykpCisKKyAgICAgICAgIyByZXR1cm4gVHJ1ZSBpZiBmaWxlcyBtYXRjaAorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QuZmlsZXMgPSBbJ2EucHknLCAnYi5weSddCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYW5pZmVzdC5leGNsdWRlX3BhdHRlcm4oJyoucHknKSkKKworICAgICAgICAjIHRlc3QgZXhjbHVkZXMKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmZpbGVzID0gWydhLnB5JywgJ2EudHh0J10KKyAgICAgICAgbWFuaWZlc3QuZXhjbHVkZV9wYXR0ZXJuKCcqLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydhLnR4dCddKQorCisgICAgZGVmIHRlc3RfaW5jbHVkZV9wYXR0ZXJuKHNlbGYpOgorICAgICAgICAjIHJldHVybiBGYWxzZSBpZiBubyBtYXRjaAorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QuYWxsZmlsZXMgPSBbXQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG1hbmlmZXN0Ll9pbmNsdWRlX3BhdHRlcm4oJyoucHknKSkKKworICAgICAgICAjIHJldHVybiBUcnVlIGlmIGZpbGVzIG1hdGNoCisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBtYW5pZmVzdC5hbGxmaWxlcyA9IFsnYS5weScsICdiLnR4dCddCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYW5pZmVzdC5faW5jbHVkZV9wYXR0ZXJuKCcqLnB5JykpCisKKyAgICAgICAgIyB0ZXN0ICogbWF0Y2hlcyBhbGwgZmlsZXMKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKG1hbmlmZXN0LmFsbGZpbGVzKQorICAgICAgICBtYW5pZmVzdC5hbGxmaWxlcyA9IFsnYS5weScsICdiLnR4dCddCisgICAgICAgIG1hbmlmZXN0Ll9pbmNsdWRlX3BhdHRlcm4oJyonKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmFsbGZpbGVzLCBbJ2EucHknLCAnYi50eHQnXSkKKworICAgIGRlZiB0ZXN0X3Byb2Nlc3NfdGVtcGxhdGUoc2VsZik6CisgICAgICAgIGwgPSBtYWtlX2xvY2FsX3BhdGgKKyAgICAgICAgIyBpbnZhbGlkIGxpbmVzCisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBmb3IgYWN0aW9uIGluICgnaW5jbHVkZScsICdleGNsdWRlJywgJ2dsb2JhbC1pbmNsdWRlJywKKyAgICAgICAgICAgICAgICAgICAgICAgJ2dsb2JhbC1leGNsdWRlJywgJ3JlY3Vyc2l2ZS1pbmNsdWRlJywKKyAgICAgICAgICAgICAgICAgICAgICAgJ3JlY3Vyc2l2ZS1leGNsdWRlJywgJ2dyYWZ0JywgJ3BydW5lJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdUZW1wbGF0ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFuaWZlc3QuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZSwgYWN0aW9uKQorCisgICAgICAgICMgaW1wbGljaXQgaW5jbHVkZQorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QuYWxsZmlsZXMgPSBbJ2EucHknLCAnYi50eHQnLCBsKCdkL2MucHknKV0KKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCcqLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydhLnB5J10pCisgICAgICAgIHNlbGYuYXNzZXJ0Tm9XYXJuaW5ncygpCisKKyAgICAgICAgIyBpbmNsdWRlCisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBtYW5pZmVzdC5hbGxmaWxlcyA9IFsnYS5weScsICdiLnR4dCcsIGwoJ2QvYy5weScpXQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ2luY2x1ZGUgKi5weScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuaWZlc3QuZmlsZXMsIFsnYS5weSddKQorICAgICAgICBzZWxmLmFzc2VydE5vV2FybmluZ3MoKQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ2luY2x1ZGUgKi5yYicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuaWZlc3QuZmlsZXMsIFsnYS5weSddKQorICAgICAgICBzZWxmLmFzc2VydFdhcm5pbmdzKCkKKworICAgICAgICAjIGV4Y2x1ZGUKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmZpbGVzID0gWydhLnB5JywgJ2IudHh0JywgbCgnZC9jLnB5JyldCisKKyAgICAgICAgbWFuaWZlc3QuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZSgnZXhjbHVkZSAqLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydiLnR4dCcsIGwoJ2QvYy5weScpXSkKKyAgICAgICAgc2VsZi5hc3NlcnROb1dhcm5pbmdzKCkKKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdleGNsdWRlICoucmInKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2IudHh0JywgbCgnZC9jLnB5JyldKQorICAgICAgICBzZWxmLmFzc2VydFdhcm5pbmdzKCkKKworICAgICAgICAjIGdsb2JhbC1pbmNsdWRlCisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBtYW5pZmVzdC5hbGxmaWxlcyA9IFsnYS5weScsICdiLnR4dCcsIGwoJ2QvYy5weScpXQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ2dsb2JhbC1pbmNsdWRlICoucHknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2EucHknLCBsKCdkL2MucHknKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0Tm9XYXJuaW5ncygpCisKKyAgICAgICAgbWFuaWZlc3QuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZSgnZ2xvYmFsLWluY2x1ZGUgKi5yYicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuaWZlc3QuZmlsZXMsIFsnYS5weScsIGwoJ2QvYy5weScpXSkKKyAgICAgICAgc2VsZi5hc3NlcnRXYXJuaW5ncygpCisKKyAgICAgICAgIyBnbG9iYWwtZXhjbHVkZQorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QuZmlsZXMgPSBbJ2EucHknLCAnYi50eHQnLCBsKCdkL2MucHknKV0KKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdnbG9iYWwtZXhjbHVkZSAqLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydiLnR4dCddKQorICAgICAgICBzZWxmLmFzc2VydE5vV2FybmluZ3MoKQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ2dsb2JhbC1leGNsdWRlICoucmInKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2IudHh0J10pCisgICAgICAgIHNlbGYuYXNzZXJ0V2FybmluZ3MoKQorCisgICAgICAgICMgcmVjdXJzaXZlLWluY2x1ZGUKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmFsbGZpbGVzID0gWydhLnB5JywgbCgnZC9iLnB5JyksIGwoJ2QvYy50eHQnKSwgbCgnZC9kL2UucHknKV0KKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdyZWN1cnNpdmUtaW5jbHVkZSBkICoucHknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbbCgnZC9iLnB5JyksIGwoJ2QvZC9lLnB5JyldKQorICAgICAgICBzZWxmLmFzc2VydE5vV2FybmluZ3MoKQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ3JlY3Vyc2l2ZS1pbmNsdWRlIGUgKi5weScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuaWZlc3QuZmlsZXMsIFtsKCdkL2IucHknKSwgbCgnZC9kL2UucHknKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0V2FybmluZ3MoKQorCisgICAgICAgICMgcmVjdXJzaXZlLWV4Y2x1ZGUKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmZpbGVzID0gWydhLnB5JywgbCgnZC9iLnB5JyksIGwoJ2QvYy50eHQnKSwgbCgnZC9kL2UucHknKV0KKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdyZWN1cnNpdmUtZXhjbHVkZSBkICoucHknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2EucHknLCBsKCdkL2MudHh0JyldKQorICAgICAgICBzZWxmLmFzc2VydE5vV2FybmluZ3MoKQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ3JlY3Vyc2l2ZS1leGNsdWRlIGUgKi5weScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuaWZlc3QuZmlsZXMsIFsnYS5weScsIGwoJ2QvYy50eHQnKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0V2FybmluZ3MoKQorCisgICAgICAgICMgZ3JhZnQKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmFsbGZpbGVzID0gWydhLnB5JywgbCgnZC9iLnB5JyksIGwoJ2QvZC9lLnB5JyksIGwoJ2YvZi5weScpXQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ2dyYWZ0IGQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbbCgnZC9iLnB5JyksIGwoJ2QvZC9lLnB5JyldKQorICAgICAgICBzZWxmLmFzc2VydE5vV2FybmluZ3MoKQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ2dyYWZ0IGUnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbbCgnZC9iLnB5JyksIGwoJ2QvZC9lLnB5JyldKQorICAgICAgICBzZWxmLmFzc2VydFdhcm5pbmdzKCkKKworICAgICAgICAjIHBydW5lCisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBtYW5pZmVzdC5maWxlcyA9IFsnYS5weScsIGwoJ2QvYi5weScpLCBsKCdkL2QvZS5weScpLCBsKCdmL2YucHknKV0KKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdwcnVuZSBkJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydhLnB5JywgbCgnZi9mLnB5JyldKQorICAgICAgICBzZWxmLmFzc2VydE5vV2FybmluZ3MoKQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ3BydW5lIGUnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2EucHknLCBsKCdmL2YucHknKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0V2FybmluZ3MoKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShNYW5pZmVzdFRlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3Rlc3Rfc3VpdGUnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21hcmtlcnMucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfbWFya2Vycy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNDk0YzZiCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21hcmtlcnMucHkKQEAgLTAsMCArMSw3NSBAQAorIiIiVGVzdHMgZm9yIHBhY2thZ2luZy5tYXJrZXJzLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgcGxhdGZvcm0KK2Zyb20gcGFja2FnaW5nLm1hcmtlcnMgaW1wb3J0IGludGVycHJldAorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IExvZ2dpbmdDYXRjaGVyCisKKworY2xhc3MgTWFya2Vyc1Rlc3RDYXNlKExvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2ludGVycHJldChzZWxmKToKKyAgICAgICAgc3lzX3BsYXRmb3JtID0gc3lzLnBsYXRmb3JtCisgICAgICAgIHZlcnNpb24gPSBzeXMudmVyc2lvbi5zcGxpdCgpWzBdCisgICAgICAgIG9zX25hbWUgPSBvcy5uYW1lCisgICAgICAgIHBsYXRmb3JtX3ZlcnNpb24gPSBwbGF0Zm9ybS52ZXJzaW9uKCkKKyAgICAgICAgcGxhdGZvcm1fbWFjaGluZSA9IHBsYXRmb3JtLm1hY2hpbmUoKQorICAgICAgICBwbGF0Zm9ybV9weXRob25faW1wbGVtZW50YXRpb24gPSBwbGF0Zm9ybS5weXRob25faW1wbGVtZW50YXRpb24oKQorCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoInN5cy5wbGF0Zm9ybSA9PSAnJXMnIiAlIHN5c19wbGF0Zm9ybSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoCisgICAgICAgICAgICAic3lzLnBsYXRmb3JtID09ICclcycgYW5kIHB5dGhvbl9mdWxsX3ZlcnNpb24gPT0gJyVzJyIgJQorICAgICAgICAgICAgKHN5c19wbGF0Zm9ybSwgdmVyc2lvbikpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCInJXMnID09IHN5cy5wbGF0Zm9ybSIgJSBzeXNfcGxhdGZvcm0pKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCdvcy5uYW1lID09ICIlcyInICUgb3NfbmFtZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoCisgICAgICAgICAgICAncGxhdGZvcm0udmVyc2lvbiA9PSAiJXMiIGFuZCBwbGF0Zm9ybS5tYWNoaW5lID09ICIlcyInICUKKyAgICAgICAgICAgIChwbGF0Zm9ybV92ZXJzaW9uLCBwbGF0Zm9ybV9tYWNoaW5lKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoJ3BsYXRmb3JtLnB5dGhvbl9pbXBsZW1lbnRhdGlvbiA9PSAiJXMiJyAlCisgICAgICAgICAgICBwbGF0Zm9ybV9weXRob25faW1wbGVtZW50YXRpb24pKQorCisgICAgICAgICMgc3R1ZmYgdGhhdCBuZWVkIHRvIHJhaXNlIGEgc3ludGF4IGVycm9yCisgICAgICAgIG9wcyA9ICgnb3MubmFtZSA9PSBvcy5uYW1lJywgJ29zLm5hbWUgPT0gMicsICInMicgPT0gJzInIiwKKyAgICAgICAgICAgICAgICdva3Bqb25vbicsICcnLCAnb3MubmFtZSA9PScsICdweXRob25fdmVyc2lvbiA9PSAyLjQnKQorICAgICAgICBmb3Igb3AgaW4gb3BzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGludGVycHJldCwgb3ApCisKKyAgICAgICAgIyBjb21iaW5lZCBvcGVyYXRpb25zCisgICAgICAgIE9QID0gJ29zLm5hbWUgPT0gIiVzIicgJSBvc19uYW1lCisgICAgICAgIEZBTFNFT1AgPSAnb3MubmFtZSA9PSAiYnV1dXUiJworICAgICAgICBBTkQgPSAnIGFuZCAnCisgICAgICAgIE9SID0gJyBvciAnCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoT1AgKyBBTkQgKyBPUCkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoT1AgKyBBTkQgKyBPUCArIEFORCArIE9QKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldChPUCArIE9SICsgT1ApKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KE9QICsgT1IgKyBGQUxTRU9QKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldChPUCArIE9SICsgT1AgKyBPUiArIEZBTFNFT1ApKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KE9QICsgT1IgKyBGQUxTRU9QICsgT1IgKyBGQUxTRU9QKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldChGQUxTRU9QICsgT1IgKyBPUCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaW50ZXJwcmV0KEZBTFNFT1AgKyBBTkQgKyBGQUxTRU9QKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpbnRlcnByZXQoRkFMU0VPUCArIE9SICsgRkFMU0VPUCkpCisKKyAgICAgICAgIyBvdGhlciBvcGVyYXRvcnMKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldCgib3MubmFtZSAhPSAnYnV1dXUnIikpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoInB5dGhvbl92ZXJzaW9uID4gJzEuMCciKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldCgicHl0aG9uX3ZlcnNpb24gPCAnNS4wJyIpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCJweXRob25fdmVyc2lvbiA8PSAnNS4wJyIpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCJweXRob25fdmVyc2lvbiA+PSAnMS4wJyIpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCInJXMnIGluIG9zLm5hbWUiICUgb3NfbmFtZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoIididXV1dScgbm90IGluIG9zLm5hbWUiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldCgKKyAgICAgICAgICAgICInYnV1dXUnIG5vdCBpbiBvcy5uYW1lIGFuZCAnJXMnIGluIG9zLm5hbWUiICUgb3NfbmFtZSkpCisKKyAgICAgICAgIyBleGVjdXRpb24gY29udGV4dAorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCdweXRob25fdmVyc2lvbiA9PSAiMC4xIicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeydweXRob25fdmVyc2lvbic6ICcwLjEnfSkpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKE1hcmtlcnNUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9tZXRhZGF0YS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9tZXRhZGF0YS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NGE3YWYzCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21ldGFkYXRhLnB5CkBAIC0wLDAgKzEsNDU0IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLm1ldGFkYXRhLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitmcm9tIHRleHR3cmFwIGltcG9ydCBkZWRlbnQKK2Zyb20gaW8gaW1wb3J0IFN0cmluZ0lPCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKE1ldGFkYXRhQ29uZmxpY3RFcnJvciwgTWV0YWRhdGFNaXNzaW5nRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNZXRhZGF0YVVucmVjb2duaXplZFZlcnNpb25FcnJvcikKK2Zyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YSwgUEtHX0lORk9fUFJFRkVSUkVEX1ZFUlNJT04KKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCAoTG9nZ2luZ0NhdGNoZXIsIFRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVudmlyb25SZXN0b3JlcikKKworCitjbGFzcyBNZXRhZGF0YVRlc3RDYXNlKExvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICBUZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgRW52aXJvblJlc3RvcmVyLAorICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBtYXhEaWZmID0gTm9uZQorICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnSE9NRSddCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKE1ldGFkYXRhVGVzdENhc2UsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5hcmd2ID0gc3lzLmFyZ3YsIHN5cy5hcmd2WzpdCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHN5cy5hcmd2ID0gc2VsZi5hcmd2WzBdCisgICAgICAgIHN5cy5hcmd2WzpdID0gc2VsZi5hcmd2WzFdCisgICAgICAgIHN1cGVyKE1ldGFkYXRhVGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgICMjIyMgIFRlc3QgdmFyaW91cyBtZXRob2RzIG9mIHRoZSBNZXRhZGF0YSBjbGFzcworCisgICAgZGVmIHRlc3RfaW5zdGFudGlhdGlvbihzZWxmKToKKyAgICAgICAgUEtHX0lORk8gPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgJ1BLRy1JTkZPJykKKyAgICAgICAgd2l0aCBvcGVuKFBLR19JTkZPLCAncicsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50cyA9IGYucmVhZCgpCisgICAgICAgIGZwID0gU3RyaW5nSU8oY29udGVudHMpCisKKyAgICAgICAgbSA9IE1ldGFkYXRhKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTWV0YWRhdGFVbnJlY29nbml6ZWRWZXJzaW9uRXJyb3IsIG0uaXRlbXMpCisKKyAgICAgICAgbSA9IE1ldGFkYXRhKFBLR19JTkZPKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtLml0ZW1zKCkpLCAyMikKKworICAgICAgICBtID0gTWV0YWRhdGEoZmlsZW9iaj1mcCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obS5pdGVtcygpKSwgMjIpCisKKyAgICAgICAgbSA9IE1ldGFkYXRhKG1hcHBpbmc9ZGljdChuYW1lPSdUZXN0JywgdmVyc2lvbj0nMS4wJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG0uaXRlbXMoKSksIDExKQorCisgICAgICAgIGQgPSBkaWN0KG0uaXRlbXMoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBNZXRhZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUEtHX0lORk8sIGZpbGVvYmo9ZnApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTWV0YWRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFBLR19JTkZPLCBtYXBwaW5nPWQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTWV0YWRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVvYmo9ZnAsIG1hcHBpbmc9ZCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBNZXRhZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUEtHX0lORk8sIG1hcHBpbmc9bSwgZmlsZW9iaj1mcCkKKworICAgIGRlZiB0ZXN0X21ldGFkYXRhX21hcmtlcnMoc2VsZik6CisgICAgICAgICMgc2VlIGlmIHdlIGNhbiBiZSBwbGF0Zm9ybS1hd2FyZQorICAgICAgICBQS0dfSU5GTyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnUEtHLUlORk8nKQorICAgICAgICB3aXRoIG9wZW4oUEtHX0lORk8sICdyJywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZjoKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmLnJlYWQoKSAlIHN5cy5wbGF0Zm9ybQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKHBsYXRmb3JtX2RlcGVuZGVudD1UcnVlKQorCisgICAgICAgIG1ldGFkYXRhLnJlYWRfZmlsZShTdHJpbmdJTyhjb250ZW50KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddLCBbJ2JhciddKQorICAgICAgICBtZXRhZGF0YVsnTmFtZSddID0gImJhejsgc3lzLnBsYXRmb3JtID09ICdibGFoJyIKKyAgICAgICAgIyBGSVhNRSBpcyBOb25lIG9yICdVTktOT1dOJyBjb3JyZWN0IGhlcmU/CisgICAgICAgICMgd2hlcmUgaXMgdGhhdCBkb2N1bWVudGVkPworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydOYW1lJ10sIE5vbmUpCisKKyAgICAgICAgIyB0ZXN0IHdpdGggY29udGV4dAorICAgICAgICBjb250ZXh0ID0geydzeXMucGxhdGZvcm0nOiAnb2tvb2snfQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKHBsYXRmb3JtX2RlcGVuZGVudD1UcnVlLCBleGVjdXRpb25fY29udGV4dD1jb250ZXh0KQorICAgICAgICBtZXRhZGF0YS5yZWFkX2ZpbGUoU3RyaW5nSU8oY29udGVudCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSwgWydmb28nXSkKKworICAgIGRlZiB0ZXN0X21hcHBpbmdfYXBpKHNlbGYpOgorICAgICAgICBQS0dfSU5GTyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnUEtHLUlORk8nKQorICAgICAgICB3aXRoIG9wZW4oUEtHX0lORk8sICdyJywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZjoKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmLnJlYWQoKSAlIHN5cy5wbGF0Zm9ybQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKGZpbGVvYmo9U3RyaW5nSU8oY29udGVudCkpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ1ZlcnNpb24nLCBtZXRhZGF0YS5rZXlzKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJzAuNScsIG1ldGFkYXRhLnZhbHVlcygpKQorICAgICAgICBzZWxmLmFzc2VydEluKCgnVmVyc2lvbicsICcwLjUnKSwgbWV0YWRhdGEuaXRlbXMoKSkKKworICAgICAgICBtZXRhZGF0YS51cGRhdGUoeyd2ZXJzaW9uJzogJzAuNid9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydWZXJzaW9uJ10sICcwLjYnKQorICAgICAgICBtZXRhZGF0YS51cGRhdGUoWygndmVyc2lvbicsICcwLjcnKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ1ZlcnNpb24nXSwgJzAuNycpCisKKyAgICAgICAgIyBtYWtlIHN1cmUgdXBkYXRlIG1ldGhvZCBjaGVja3MgdmFsdWVzIGxpa2UgdGhlIHNldCBtZXRob2QgZG9lcworICAgICAgICBtZXRhZGF0YS51cGRhdGUoeyd2ZXJzaW9uJzogJzEtLTInfSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5nZXRfbG9ncygpKSwgMSkKKworICAgICAgICAjIFhYWCBjYXZlYXQ6IHRoZSBrZXlzIG1ldGhvZCBhbmQgZnJpZW5kcyBhcmUgbm90IDMueC1zdHlsZSB2aWV3cworICAgICAgICAjIHNob3VsZCBiZSBjaGFuZ2VkIG9yIGRvY3VtZW50ZWQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KG1ldGFkYXRhKSwgbWV0YWRhdGEua2V5cygpKQorCisgICAgZGVmIHRlc3RfcmVhZF9tZXRhZGF0YShzZWxmKToKKyAgICAgICAgZmllbGRzID0geyduYW1lJzogJ3Byb2plY3QnLAorICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbic6ICdkZXNjJywKKyAgICAgICAgICAgICAgICAgICdzdW1tYXJ5JzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAnZG93bmxvYWRfdXJsJzogJ2h0dHA6Ly9leGFtcGxlLmNvbScsCisgICAgICAgICAgICAgICAgICAna2V5d29yZHMnOiBbJ29uZScsICd0d28nXSwKKyAgICAgICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWydmb28nXX0KKworICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKG1hcHBpbmc9ZmllbGRzKQorICAgICAgICBQS0dfSU5GTyA9IFN0cmluZ0lPKCkKKyAgICAgICAgbWV0YWRhdGEud3JpdGVfZmlsZShQS0dfSU5GTykKKyAgICAgICAgUEtHX0lORk8uc2VlaygwKQorCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoZmlsZW9iaj1QS0dfSU5GTykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWyduYW1lJ10sICdwcm9qZWN0JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsndmVyc2lvbiddLCAnMS4wJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnc3VtbWFyeSddLCAneHh4JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnZG93bmxvYWRfdXJsJ10sICdodHRwOi8vZXhhbXBsZS5jb20nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydrZXl3b3JkcyddLCBbJ29uZScsICd0d28nXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsncGxhdGZvcm0nXSwgW10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ29ic29sZXRlcyddLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsncmVxdWlyZXMtZGlzdCddLCBbJ2ZvbyddKQorCisgICAgZGVmIHRlc3Rfd3JpdGVfbWV0YWRhdGEoc2VsZik6CisgICAgICAgICMgY2hlY2sgc3VwcG9ydCBvZiBub24tQVNDSUkgdmFsdWVzCisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBteV9maWxlID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdmJykKKworICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKG1hcHBpbmc9eydhdXRob3InOiAnTWlzdGVyIENhZsOpJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICdteS5wcm9qZWN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYXV0aG9yJzogJ0NhZsOpIEp1bmlvcicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N1bW1hcnknOiAnQ2Fmw6kgdG9ycsOpZmnDqScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJzogJ0jDqWjDqWjDqScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2tleXdvcmRzJzogWydjYWbDqScsICdjb2ZmZWUnXX0pCisgICAgICAgIG1ldGFkYXRhLndyaXRlKG15X2ZpbGUpCisKKyAgICAgICAgIyB0aGUgZmlsZSBzaG91bGQgdXNlIFVURi04CisgICAgICAgIG1ldGFkYXRhMiA9IE1ldGFkYXRhKCkKKyAgICAgICAgd2l0aCBvcGVuKG15X2ZpbGUsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGZwOgorICAgICAgICAgICAgbWV0YWRhdGEyLnJlYWRfZmlsZShmcCkKKworICAgICAgICAjIFhYWCB3aGVuIGtleXdvcmRzIGFyZSBub3QgZGVmaW5lZCwgbWV0YWRhdGEgd2lsbCBoYXZlCisgICAgICAgICMgJ0tleXdvcmRzJzogW10gYnV0IG1ldGFkYXRhMiB3aWxsIGhhdmUgJ0tleXdvcmRzJzogWycnXQorICAgICAgICAjIGJlY2F1c2Ugb2YgYSB2YWx1ZS5zcGxpdCgnLCcpIGluIE1ldGFkYXRhLmdldAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhLml0ZW1zKCksIG1ldGFkYXRhMi5pdGVtcygpKQorCisgICAgICAgICMgQVNDSUkgYWxzbyB3b3JrcywgaXQncyBhIHN1YnNldCBvZiBVVEYtOAorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKG1hcHBpbmc9eydhdXRob3InOiAnTWlzdGVyIENhZmUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICduYW1lJzogJ215LnByb2plY3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhdXRob3InOiAnQ2FmZSBKdW5pb3InLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzdW1tYXJ5JzogJ0NhZmUgdG9ycmVmaWUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbic6ICdIZWhlaGUnfSkKKyAgICAgICAgbWV0YWRhdGEud3JpdGUobXlfZmlsZSkKKworICAgICAgICBtZXRhZGF0YTIgPSBNZXRhZGF0YSgpCisgICAgICAgIHdpdGggb3BlbihteV9maWxlLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBmcDoKKyAgICAgICAgICAgIG1ldGFkYXRhMi5yZWFkX2ZpbGUoZnApCisKKyAgICBkZWYgdGVzdF9tZXRhZGF0YV9yZWFkX3dyaXRlKHNlbGYpOgorICAgICAgICBQS0dfSU5GTyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnUEtHLUlORk8nKQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKFBLR19JTkZPKQorICAgICAgICBvdXQgPSBTdHJpbmdJTygpCisgICAgICAgIG1ldGFkYXRhLndyaXRlX2ZpbGUob3V0KQorCisgICAgICAgIG91dC5zZWVrKDApCisgICAgICAgIHJlcyA9IE1ldGFkYXRhKCkKKyAgICAgICAgcmVzLnJlYWRfZmlsZShvdXQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGEudmFsdWVzKCksIHJlcy52YWx1ZXMoKSkKKworICAgICMjIyMgIFRlc3QgY2hlY2tzCisKKyAgICBkZWYgdGVzdF9jaGVja192ZXJzaW9uKHNlbGYpOgorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICAgICAgbWV0YWRhdGFbJ05hbWUnXSA9ICd2aW1wZGInCisgICAgICAgIG1ldGFkYXRhWydIb21lLXBhZ2UnXSA9ICdodHRwOi8vcHlwaS5weXRob24ub3JnJworICAgICAgICBtZXRhZGF0YVsnQXV0aG9yJ10gPSAnTW9udHkgUHl0aG9uJworICAgICAgICBtZXRhZGF0YS5kb2N1dGlsc19zdXBwb3J0ID0gRmFsc2UKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBtZXRhZGF0YS5jaGVjaygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWlzc2luZywgWydWZXJzaW9uJ10pCisKKyAgICBkZWYgdGVzdF9jaGVja192ZXJzaW9uX3N0cmljdChzZWxmKToKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhWydOYW1lJ10gPSAndmltcGRiJworICAgICAgICBtZXRhZGF0YVsnSG9tZS1wYWdlJ10gPSAnaHR0cDovL3B5cGkucHl0aG9uLm9yZycKKyAgICAgICAgbWV0YWRhdGFbJ0F1dGhvciddID0gJ01vbnR5IFB5dGhvbicKKyAgICAgICAgbWV0YWRhdGEuZG9jdXRpbHNfc3VwcG9ydCA9IEZhbHNlCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1ldGFkYXRhTWlzc2luZ0Vycm9yLCBtZXRhZGF0YS5jaGVjaywgc3RyaWN0PVRydWUpCisKKyAgICBkZWYgdGVzdF9jaGVja19uYW1lKHNlbGYpOgorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICAgICAgbWV0YWRhdGFbJ1ZlcnNpb24nXSA9ICcxLjAnCisgICAgICAgIG1ldGFkYXRhWydIb21lLXBhZ2UnXSA9ICdodHRwOi8vcHlwaS5weXRob24ub3JnJworICAgICAgICBtZXRhZGF0YVsnQXV0aG9yJ10gPSAnTW9udHkgUHl0aG9uJworICAgICAgICBtZXRhZGF0YS5kb2N1dGlsc19zdXBwb3J0ID0gRmFsc2UKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBtZXRhZGF0YS5jaGVjaygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWlzc2luZywgWydOYW1lJ10pCisKKyAgICBkZWYgdGVzdF9jaGVja19uYW1lX3N0cmljdChzZWxmKToKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhWydWZXJzaW9uJ10gPSAnMS4wJworICAgICAgICBtZXRhZGF0YVsnSG9tZS1wYWdlJ10gPSAnaHR0cDovL3B5cGkucHl0aG9uLm9yZycKKyAgICAgICAgbWV0YWRhdGFbJ0F1dGhvciddID0gJ01vbnR5IFB5dGhvbicKKyAgICAgICAgbWV0YWRhdGEuZG9jdXRpbHNfc3VwcG9ydCA9IEZhbHNlCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1ldGFkYXRhTWlzc2luZ0Vycm9yLCBtZXRhZGF0YS5jaGVjaywgc3RyaWN0PVRydWUpCisKKyAgICBkZWYgdGVzdF9jaGVja19hdXRob3Ioc2VsZik6CisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnVmVyc2lvbiddID0gJzEuMCcKKyAgICAgICAgbWV0YWRhdGFbJ05hbWUnXSA9ICd2aW1wZGInCisgICAgICAgIG1ldGFkYXRhWydIb21lLXBhZ2UnXSA9ICdodHRwOi8vcHlwaS5weXRob24ub3JnJworICAgICAgICBtZXRhZGF0YS5kb2N1dGlsc19zdXBwb3J0ID0gRmFsc2UKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBtZXRhZGF0YS5jaGVjaygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWlzc2luZywgWydBdXRob3InXSkKKworICAgIGRlZiB0ZXN0X2NoZWNrX2hvbWVwYWdlKHNlbGYpOgorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICAgICAgbWV0YWRhdGFbJ1ZlcnNpb24nXSA9ICcxLjAnCisgICAgICAgIG1ldGFkYXRhWydOYW1lJ10gPSAndmltcGRiJworICAgICAgICBtZXRhZGF0YVsnQXV0aG9yJ10gPSAnTW9udHkgUHl0aG9uJworICAgICAgICBtZXRhZGF0YS5kb2N1dGlsc19zdXBwb3J0ID0gRmFsc2UKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBtZXRhZGF0YS5jaGVjaygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWlzc2luZywgWydIb21lLXBhZ2UnXSkKKworICAgIGRlZiB0ZXN0X2NoZWNrX3ByZWRpY2F0ZXMoc2VsZik6CisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnVmVyc2lvbiddID0gJ3JyJworICAgICAgICBtZXRhZGF0YVsnTmFtZSddID0gJ3ZpbXBkYicKKyAgICAgICAgbWV0YWRhdGFbJ0hvbWUtcGFnZSddID0gJ2h0dHA6Ly9weXBpLnB5dGhvbi5vcmcnCisgICAgICAgIG1ldGFkYXRhWydBdXRob3InXSA9ICdNb250eSBQeXRob24nCisgICAgICAgIG1ldGFkYXRhWydSZXF1aXJlcy1kaXN0J10gPSBbJ0ZvbyAoYSknXQorICAgICAgICBtZXRhZGF0YVsnT2Jzb2xldGVzLWRpc3QnXSA9IFsnRm9vIChhKSddCisgICAgICAgIG1ldGFkYXRhWydQcm92aWRlcy1kaXN0J10gPSBbJ0ZvbyAoYSknXQorICAgICAgICBtaXNzaW5nLCB3YXJuaW5ncyA9IG1ldGFkYXRhLmNoZWNrKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4od2FybmluZ3MpLCA0KQorCisgICAgIyMjIyAgVGVzdCBmaWVsZHMgYW5kIG1ldGFkYXRhIHZlcnNpb25zCisKKyAgICBkZWYgdGVzdF9tZXRhZGF0YV92ZXJzaW9ucyhzZWxmKToKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YShtYXBwaW5nPXsnbmFtZSc6ICdwcm9qZWN0JywgJ3ZlcnNpb24nOiAnMS4wJ30pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQS0dfSU5GT19QUkVGRVJSRURfVkVSU0lPTikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignUHJvdmlkZXMnLCBtZXRhZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignUmVxdWlyZXMnLCBtZXRhZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignT2Jzb2xldGVzJywgbWV0YWRhdGEpCisKKyAgICAgICAgbWV0YWRhdGFbJ0NsYXNzaWZpZXInXSA9IFsnb2snXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjEnKQorCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnRG93bmxvYWQtVVJMJ10gPSAnb2snCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwgJzEuMScpCisKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhWydPYnNvbGV0ZXMnXSA9ICdvaycKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnTWV0YWRhdGEtVmVyc2lvbiddLCAnMS4xJykKKworICAgICAgICBkZWwgbWV0YWRhdGFbJ09ic29sZXRlcyddCisgICAgICAgIG1ldGFkYXRhWydPYnNvbGV0ZXMtRGlzdCddID0gJ29rJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjInKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1ldGFkYXRhQ29uZmxpY3RFcnJvciwgbWV0YWRhdGEuc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAnT2Jzb2xldGVzJywgJ29rJykKKworICAgICAgICBkZWwgbWV0YWRhdGFbJ09ic29sZXRlcyddCisgICAgICAgIGRlbCBtZXRhZGF0YVsnT2Jzb2xldGVzLURpc3QnXQorICAgICAgICBtZXRhZGF0YVsnVmVyc2lvbiddID0gJzEnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwgJzEuMCcpCisKKyAgICAgICAgIyBtYWtlIHN1cmUgdGhlIF9iZXN0X3ZlcnNpb24gZnVuY3Rpb24gd29ya3Mgb2theSB3aXRoCisgICAgICAgICMgbm9uLWNvbmZsaWN0aW5nIGZpZWxkcyBmcm9tIDEuMSBhbmQgMS4yIChpLmUuIHdlIHdhbnQgb25seSB0aGUKKyAgICAgICAgIyByZXF1aXJlcy9yZXF1aXJlcy1kaXN0IGFuZCBjby4gcGFpcnMgdG8gY2F1c2UgYSBjb25mbGljdCwgbm90IGFsbAorICAgICAgICAjIGZpZWxkcyBpbiBfMzE0X01BUktFUlMpCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnUmVxdWlyZXMtUHl0aG9uJ10gPSAnMycKKyAgICAgICAgbWV0YWRhdGFbJ0NsYXNzaWZpZXInXSA9IFsnUHJvZ3JhbW1pbmcgbGFuZ3VhZ2UgOjogUHl0aG9uIDo6IDMnXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjInKQorCisgICAgICAgIFBLR19JTkZPID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdTRVRVUFRPT0xTLVBLRy1JTkZPJykKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YShQS0dfSU5GTykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnTWV0YWRhdGEtVmVyc2lvbiddLCAnMS4wJykKKworICAgICAgICBQS0dfSU5GTyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnU0VUVVBUT09MUy1QS0ctSU5GTzInKQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKFBLR19JTkZPKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjEnKQorCisgICAgICAgICMgVXBkYXRlIHRoZSBfZmllbGRzIGRpY3QgZGlyZWN0bHkgdG8gcHJldmVudCAnTWV0YWRhdGEtVmVyc2lvbicKKyAgICAgICAgIyBmcm9tIGJlaW5nIHVwZGF0ZWQgYnkgdGhlIF9zZXRfYmVzdF92ZXJzaW9uKCkgbWV0aG9kLgorICAgICAgICBtZXRhZGF0YS5fZmllbGRzWydNZXRhZGF0YS1WZXJzaW9uJ10gPSAnMS42MTgnCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1ldGFkYXRhVW5yZWNvZ25pemVkVmVyc2lvbkVycm9yLCBtZXRhZGF0YS5rZXlzKQorCisgICAgZGVmIHRlc3RfdmVyc2lvbihzZWxmKToKKyAgICAgICAgTWV0YWRhdGEobWFwcGluZz17J2F1dGhvcic6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAndmVyc2lvbic6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnaG9tZV9wYWdlJzogJ3h4eHgnfSkKKyAgICAgICAgbG9ncyA9IHNlbGYuZ2V0X2xvZ3MoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihsb2dzKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignbm90IGEgdmFsaWQgdmVyc2lvbicsIGxvZ3NbMF0pCisKKyAgICBkZWYgdGVzdF9kZXNjcmlwdGlvbihzZWxmKToKKyAgICAgICAgUEtHX0lORk8gPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgJ1BLRy1JTkZPJykKKyAgICAgICAgd2l0aCBvcGVuKFBLR19JTkZPLCAncicsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50ID0gZi5yZWFkKCkgJSBzeXMucGxhdGZvcm0KKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhLnJlYWRfZmlsZShTdHJpbmdJTyhjb250ZW50KSkKKworICAgICAgICAjIHNlZSBpZiB3ZSBjYW4gcmVhZCB0aGUgZGVzY3JpcHRpb24gbm93CisgICAgICAgIERFU0MgPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgJ0xPTkdfREVTQy50eHQnKQorICAgICAgICB3aXRoIG9wZW4oREVTQykgYXMgZjoKKyAgICAgICAgICAgIHdhbnRlZCA9IGYucmVhZCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod2FudGVkLCBtZXRhZGF0YVsnRGVzY3JpcHRpb24nXSkKKworICAgICAgICAjIHNhdmUgdGhlIGZpbGUgc29tZXdoZXJlIGFuZCBtYWtlIHN1cmUgd2UgY2FuIHJlYWQgaXQgYmFjaworICAgICAgICBvdXQgPSBTdHJpbmdJTygpCisgICAgICAgIG1ldGFkYXRhLndyaXRlX2ZpbGUob3V0KQorICAgICAgICBvdXQuc2VlaygwKQorCisgICAgICAgIG91dC5zZWVrKDApCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YS5yZWFkX2ZpbGUob3V0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdhbnRlZCwgbWV0YWRhdGFbJ0Rlc2NyaXB0aW9uJ10pCisKKyAgICBkZWYgdGVzdF9kZXNjcmlwdGlvbl9mb2xkaW5nKHNlbGYpOgorICAgICAgICAjIG1ha2Ugc3VyZSB0aGUgaW5kZW50YXRpb24gaXMgcHJlc2VydmVkCisgICAgICAgIG91dCA9IFN0cmluZ0lPKCkKKyAgICAgICAgZGVzYyA9IGRlZGVudCgiIiJcCisgICAgICAgIGV4YW1wbGU6OgorICAgICAgICAgICAgICBXZSBzdGFydCBoZXJlCisgICAgICAgICAgICBhbmQgY29udGludWUgaGVyZQorICAgICAgICAgIGFuZCBlbmQgaGVyZS4KKyAgICAgICAgIiIiKQorCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnZGVzY3JpcHRpb24nXSA9IGRlc2MKKyAgICAgICAgbWV0YWRhdGEud3JpdGVfZmlsZShvdXQpCisKKyAgICAgICAgZm9sZGVkX2Rlc2MgPSBkZXNjLnJlcGxhY2UoJ1xuJywgJ1xuJyArICg3ICogJyAnKSArICd8JykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihmb2xkZWRfZGVzYywgb3V0LmdldHZhbHVlKCkpCisKKyAgICBkZWYgdGVzdF9wcm9qZWN0X3VybChzZWxmKToKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhWydQcm9qZWN0LVVSTCddID0gWygnb25lJywgJ2h0dHA6Ly9vaycpXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydQcm9qZWN0LVVSTCddLCBbKCdvbmUnLCAnaHR0cDovL29rJyldKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjInKQorCisgICAgICAgICMgbWFrZSBzdXJlIHRoaXMgcGFydGljdWxhciBmaWVsZCBpcyBoYW5kbGVkIHByb3Blcmx5IHdoZW4gd3JpdHRlbgorICAgICAgICBmcCA9IFN0cmluZ0lPKCkKKyAgICAgICAgbWV0YWRhdGEud3JpdGVfZmlsZShmcCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignUHJvamVjdC1VUkw6IG9uZSxodHRwOi8vb2snLCBmcC5nZXR2YWx1ZSgpLnNwbGl0KCdcbicpKQorCisgICAgICAgIGZwLnNlZWsoMCkKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhLnJlYWRfZmlsZShmcCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnUHJvamVjdC1VcmwnXSwgWygnb25lJywgJ2h0dHA6Ly9vaycpXSkKKworICAgICMgVE9ETyBjb3B5IHRlc3RzIGZvciB2MS4xIHJlcXVpcmVzLCBvYnNvbGV0ZXMgYW5kIHByb3ZpZGVzIGZyb20gZGlzdHV0aWxzCisgICAgIyAodGhleSdyZSB1c2VsZXNzIGJ1dCB3ZSBzdXBwb3J0IHRoZW0gc28gd2Ugc2hvdWxkIHRlc3QgdGhlbSBhbnl3YXkpCisKKyAgICBkZWYgdGVzdF9wcm92aWRlc19kaXN0KHNlbGYpOgorICAgICAgICBmaWVsZHMgPSB7J25hbWUnOiAncHJvamVjdCcsCisgICAgICAgICAgICAgICAgICAndmVyc2lvbic6ICcxLjAnLAorICAgICAgICAgICAgICAgICAgJ3Byb3ZpZGVzX2Rpc3QnOiBbJ3Byb2plY3QnLCAnbXkucHJvamVjdCddfQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKG1hcHBpbmc9ZmllbGRzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydQcm92aWRlcy1EaXN0J10sCisgICAgICAgICAgICAgICAgICAgICAgICAgWydwcm9qZWN0JywgJ215LnByb2plY3QnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnTWV0YWRhdGEtVmVyc2lvbiddLCAnMS4yJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ1JlcXVpcmVzJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ09ic29sZXRlcycsIG1ldGFkYXRhKQorCisgICAgQHVuaXR0ZXN0LnNraXAoJ25lZWRzIHRvIGJlIGltcGxlbWVudGVkJykKKyAgICBkZWYgdGVzdF9wcm92aWRlc19pbGxlZ2FsKHNlbGYpOgorICAgICAgICAjIFRPRE8gY2hlY2sgdGhlIHZlcnNpb25zIChsaWtlIGRpc3R1dGlscyBkb2VzIGZvciBvbGQgcHJvdmlkZXMgZmllbGQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIE1ldGFkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBwaW5nPXsnbmFtZSc6ICdwcm9qZWN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Byb3ZpZGVzX2Rpc3QnOiBbJ215LnBrZyAoc3BsYXQpJ119KQorCisgICAgZGVmIHRlc3RfcmVxdWlyZXNfZGlzdChzZWxmKToKKyAgICAgICAgZmllbGRzID0geyduYW1lJzogJ3Byb2plY3QnLAorICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWydvdGhlcicsICdhbm90aGVyICg9PTEuMCknXX0KKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YShtYXBwaW5nPWZpZWxkcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddLAorICAgICAgICAgICAgICAgICAgICAgICAgIFsnb3RoZXInLCAnYW5vdGhlciAoPT0xLjApJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwgJzEuMicpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ1Byb3ZpZGVzJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBbJ290aGVyJywgJ2Fub3RoZXIgKD09MS4wKSddKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKCdPYnNvbGV0ZXMnLCBtZXRhZGF0YSkKKworICAgICAgICAjIG1ha2Ugc3VyZSB3cml0ZV9maWxlIHVzZXMgb25lIFJGQyA4MjIgaGVhZGVyIHBlciBpdGVtCisgICAgICAgIGZwID0gU3RyaW5nSU8oKQorICAgICAgICBtZXRhZGF0YS53cml0ZV9maWxlKGZwKQorICAgICAgICBsaW5lcyA9IGZwLmdldHZhbHVlKCkuc3BsaXQoJ1xuJykKKyAgICAgICAgc2VsZi5hc3NlcnRJbignUmVxdWlyZXMtRGlzdDogb3RoZXInLCBsaW5lcykKKyAgICAgICAgc2VsZi5hc3NlcnRJbignUmVxdWlyZXMtRGlzdDogYW5vdGhlciAoPT0xLjApJywgbGluZXMpCisKKyAgICAgICAgIyB0ZXN0IHdhcm5pbmdzIGZvciBpbnZhbGlkIHZlcnNpb24gcHJlZGljYXRlcworICAgICAgICAjIFhYWCB0aGlzIHdvdWxkIGNhdXNlIG5vIHdhcm5pbmdzIGlmIHdlIHVzZWQgdXBkYXRlIChvciB0aGUgbWFwcGluZworICAgICAgICAjIGFyZ3VtZW50IG9mIHRoZSBjb25zdHJ1Y3RvciksIHNlZSBjb21tZW50IGluIE1ldGFkYXRhLnVwZGF0ZQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICAgICAgbWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSA9ICdGdW5reSAoR3Jvb3ZpZSknCisgICAgICAgIG1ldGFkYXRhWydSZXF1aXJlcy1QeXRob24nXSA9ICcxLTQnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuZ2V0X2xvZ3MoKSksIDIpCisKKyAgICAgICAgIyB0ZXN0IG11bHRpcGxlIHZlcnNpb24gcHJlZGljYXRlcworICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKworICAgICAgICAjIFhYWCBjaGVjayBQRVAgYW5kIHNlZSBpZiAzID09IDMuMAorICAgICAgICBtZXRhZGF0YVsnUmVxdWlyZXMtUHl0aG9uJ10gPSAnPj0yLjYsIDwzLjAnCisgICAgICAgIG1ldGFkYXRhWydSZXF1aXJlcy1EaXN0J10gPSBbJ0ZvbyAoPj0yLjYsIDwzLjApJ10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9sb2dzKCksIFtdKQorCisgICAgQHVuaXR0ZXN0LnNraXAoJ25lZWRzIHRvIGJlIGltcGxlbWVudGVkJykKKyAgICBkZWYgdGVzdF9yZXF1aXJlc19pbGxlZ2FsKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBNZXRhZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwcGluZz17J25hbWUnOiAncHJvamVjdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdyZXF1aXJlcyc6IFsnbXkucGtnIChzcGxhdCknXX0pCisKKyAgICBkZWYgdGVzdF9vYnNvbGV0ZXNfZGlzdChzZWxmKToKKyAgICAgICAgZmllbGRzID0geyduYW1lJzogJ3Byb2plY3QnLAorICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICdvYnNvbGV0ZXNfZGlzdCc6IFsnb3RoZXInLCAnYW5vdGhlciAoPDEuMCknXX0KKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YShtYXBwaW5nPWZpZWxkcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnT2Jzb2xldGVzLURpc3QnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBbJ290aGVyJywgJ2Fub3RoZXIgKDwxLjApJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwgJzEuMicpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ1Byb3ZpZGVzJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ1JlcXVpcmVzJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ09ic29sZXRlcy1EaXN0J10sCisgICAgICAgICAgICAgICAgICAgICAgICAgWydvdGhlcicsICdhbm90aGVyICg8MS4wKSddKQorCisgICAgQHVuaXR0ZXN0LnNraXAoJ25lZWRzIHRvIGJlIGltcGxlbWVudGVkJykKKyAgICBkZWYgdGVzdF9vYnNvbGV0ZXNfaWxsZWdhbChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgTWV0YWRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcHBpbmc9eyduYW1lJzogJ3Byb2plY3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmVyc2lvbic6ICcxLjAnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb2Jzb2xldGVzJzogWydteS5wa2cgKHNwbGF0KSddfSkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoTWV0YWRhdGFUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9taXhpbjJ0bzMucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfbWl4aW4ydG8zLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA4YTEwMmIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfbWl4aW4ydG8zLnB5CkBAIC0wLDAgKzEsODcgQEAKK2ltcG9ydCB0ZXh0d3JhcAorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLmNvbXBhdCBpbXBvcnQgTWl4aW4ydG8zCisKKworY2xhc3MgTWl4aW4ydG8zVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKE1peGluMnRvM1Rlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYuZmlsZW5hbWUgPSBzZWxmLm1rdGVtcGZpbGUoKS5uYW1lCisKKyAgICBkZWYgY2hlY2soc2VsZiwgc291cmNlLCB3YW50ZWQsICoqa3dhcmdzKToKKyAgICAgICAgc291cmNlID0gdGV4dHdyYXAuZGVkZW50KHNvdXJjZSkKKyAgICAgICAgd2l0aCBvcGVuKHNlbGYuZmlsZW5hbWUsICd3JykgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZShzb3VyY2UpCisKKyAgICAgICAgTWl4aW4ydG8zKCkuX3J1bl8ydG8zKCoqa3dhcmdzKQorCisgICAgICAgIHdhbnRlZCA9IHRleHR3cmFwLmRlZGVudCh3YW50ZWQpCisgICAgICAgIHdpdGggb3BlbihzZWxmLmZpbGVuYW1lKSBhcyBmcDoKKyAgICAgICAgICAgIGNvbnZlcnRlZCA9IGZwLnJlYWQoKQorICAgICAgICBzZWxmLmFzc2VydE11bHRpTGluZUVxdWFsKGNvbnZlcnRlZCwgd2FudGVkKQorCisgICAgZGVmIHRlc3RfY29udmVyc2lvbihzZWxmKToKKyAgICAgICAgIyBjaGVjayB0aGF0IGNvZGUgYW5kIGRvY3Rlc3RzIGdldCBjb252ZXJ0ZWQKKyAgICAgICAgc2VsZi5jaGVjaygnJydcCisgICAgICAgICAgICAiIiJFeGFtcGxlIGRvY3N0cmluZy4KKworICAgICAgICAgICAgPj4+IHByaW50IHRlc3QKKyAgICAgICAgICAgIHRlc3QKKworICAgICAgICAgICAgSXQgd29ya3MuCisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIHByaW50ICd0ZXN0JworICAgICAgICAgICAgJycnLAorICAgICAgICAgICAgJycnXAorICAgICAgICAgICAgIiIiRXhhbXBsZSBkb2NzdHJpbmcuCisKKyAgICAgICAgICAgID4+PiBwcmludCh0ZXN0KQorICAgICAgICAgICAgdGVzdAorCisgICAgICAgICAgICBJdCB3b3Jrcy4KKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgcHJpbnQoJ3Rlc3QnKQorCisgICAgICAgICAgICAnJycsICAjIDJ0bzMgYWRkcyBhIG5ld2xpbmUgaGVyZQorICAgICAgICAgICAgZmlsZXM9W3NlbGYuZmlsZW5hbWVdKQorCisgICAgZGVmIHRlc3RfZG9jdGVzdHNfY29udmVyc2lvbihzZWxmKToKKyAgICAgICAgIyBjaGVjayB0aGF0IGRvY3Rlc3QgZmlsZXMgYXJlIGNvbnZlcnRlZAorICAgICAgICBzZWxmLmNoZWNrKCcnJ1wKKyAgICAgICAgICAgIFdlbGNvbWUgdG8gdGhlIGRvYy4KKworICAgICAgICAgICAgPj4+IHByaW50IHRlc3QKKyAgICAgICAgICAgIHRlc3QKKyAgICAgICAgICAgICcnJywKKyAgICAgICAgICAgICcnJ1wKKyAgICAgICAgICAgIFdlbGNvbWUgdG8gdGhlIGRvYy4KKworICAgICAgICAgICAgPj4+IHByaW50KHRlc3QpCisgICAgICAgICAgICB0ZXN0CisKKyAgICAgICAgICAgICcnJywKKyAgICAgICAgICAgIGRvY3Rlc3RzPVtzZWxmLmZpbGVuYW1lXSkKKworICAgIGRlZiB0ZXN0X2FkZGl0aW9uYWxfZml4ZXJzKHNlbGYpOgorICAgICAgICAjIG1ha2Ugc3VyZSB0aGUgZml4ZXJzIGFyZ3VtZW50IHdvcmtzCisgICAgICAgIHNlbGYuY2hlY2soIiIiXAorICAgICAgICAgICAgZWNobygnNDInKQorICAgICAgICAgICAgZWNobzIoJ29oIG5vJykKKyAgICAgICAgICAgICIiIiwKKyAgICAgICAgICAgICIiIlwKKyAgICAgICAgICAgIHByaW50KCc0MicpCisgICAgICAgICAgICBwcmludCgnb2ggbm8nKQorICAgICAgICAgICAgIiIiLAorICAgICAgICAgICAgZmlsZXM9W3NlbGYuZmlsZW5hbWVdLAorICAgICAgICAgICAgZml4ZXJzPVsncGFja2FnaW5nLnRlc3RzLmZpeGVyJ10pCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKE1peGluMnRvM1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21zdmM5Y29tcGlsZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfbXN2Yzljb21waWxlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYzNhZTY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21zdmM5Y29tcGlsZXIucHkKQEAgLTAsMCArMSwxNDAgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tcGlsZXIubXN2Yzljb21waWxlci4iIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKK19NQU5JRkVTVCA9ICIiIlwKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJ5ZXMiPz4KKzxhc3NlbWJseSB4bWxucz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTphc20udjEiCisgICAgICAgICAgbWFuaWZlc3RWZXJzaW9uPSIxLjAiPgorICA8dHJ1c3RJbmZvIHhtbG5zPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOmFzbS52MyI+CisgICAgPHNlY3VyaXR5PgorICAgICAgPHJlcXVlc3RlZFByaXZpbGVnZXM+CisgICAgICAgIDxyZXF1ZXN0ZWRFeGVjdXRpb25MZXZlbCBsZXZlbD0iYXNJbnZva2VyIiB1aUFjY2Vzcz0iZmFsc2UiPgorICAgICAgICA8L3JlcXVlc3RlZEV4ZWN1dGlvbkxldmVsPgorICAgICAgPC9yZXF1ZXN0ZWRQcml2aWxlZ2VzPgorICAgIDwvc2VjdXJpdHk+CisgIDwvdHJ1c3RJbmZvPgorICA8ZGVwZW5kZW5jeT4KKyAgICA8ZGVwZW5kZW50QXNzZW1ibHk+CisgICAgICA8YXNzZW1ibHlJZGVudGl0eSB0eXBlPSJ3aW4zMiIgbmFtZT0iTWljcm9zb2Z0LlZDOTAuQ1JUIgorICAgICAgICAgdmVyc2lvbj0iOS4wLjIxMDIyLjgiIHByb2Nlc3NvckFyY2hpdGVjdHVyZT0ieDg2IgorICAgICAgICAgcHVibGljS2V5VG9rZW49IlhYWFgiPgorICAgICAgPC9hc3NlbWJseUlkZW50aXR5PgorICAgIDwvZGVwZW5kZW50QXNzZW1ibHk+CisgIDwvZGVwZW5kZW5jeT4KKyAgPGRlcGVuZGVuY3k+CisgICAgPGRlcGVuZGVudEFzc2VtYmx5PgorICAgICAgPGFzc2VtYmx5SWRlbnRpdHkgdHlwZT0id2luMzIiIG5hbWU9Ik1pY3Jvc29mdC5WQzkwLk1GQyIKKyAgICAgICAgdmVyc2lvbj0iOS4wLjIxMDIyLjgiIHByb2Nlc3NvckFyY2hpdGVjdHVyZT0ieDg2IgorICAgICAgICBwdWJsaWNLZXlUb2tlbj0iWFhYWCI+PC9hc3NlbWJseUlkZW50aXR5PgorICAgIDwvZGVwZW5kZW50QXNzZW1ibHk+CisgIDwvZGVwZW5kZW5jeT4KKzwvYXNzZW1ibHk+CisiIiIKKworX0NMRUFORURfTUFOSUZFU1QgPSAiIiJcCis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ieWVzIj8+Cis8YXNzZW1ibHkgeG1sbnM9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206YXNtLnYxIgorICAgICAgICAgIG1hbmlmZXN0VmVyc2lvbj0iMS4wIj4KKyAgPHRydXN0SW5mbyB4bWxucz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTphc20udjMiPgorICAgIDxzZWN1cml0eT4KKyAgICAgIDxyZXF1ZXN0ZWRQcml2aWxlZ2VzPgorICAgICAgICA8cmVxdWVzdGVkRXhlY3V0aW9uTGV2ZWwgbGV2ZWw9ImFzSW52b2tlciIgdWlBY2Nlc3M9ImZhbHNlIj4KKyAgICAgICAgPC9yZXF1ZXN0ZWRFeGVjdXRpb25MZXZlbD4KKyAgICAgIDwvcmVxdWVzdGVkUHJpdmlsZWdlcz4KKyAgICA8L3NlY3VyaXR5PgorICA8L3RydXN0SW5mbz4KKyAgPGRlcGVuZGVuY3k+CisKKyAgPC9kZXBlbmRlbmN5PgorICA8ZGVwZW5kZW5jeT4KKyAgICA8ZGVwZW5kZW50QXNzZW1ibHk+CisgICAgICA8YXNzZW1ibHlJZGVudGl0eSB0eXBlPSJ3aW4zMiIgbmFtZT0iTWljcm9zb2Z0LlZDOTAuTUZDIgorICAgICAgICB2ZXJzaW9uPSI5LjAuMjEwMjIuOCIgcHJvY2Vzc29yQXJjaGl0ZWN0dXJlPSJ4ODYiCisgICAgICAgIHB1YmxpY0tleVRva2VuPSJYWFhYIj48L2Fzc2VtYmx5SWRlbnRpdHk+CisgICAgPC9kZXBlbmRlbnRBc3NlbWJseT4KKyAgPC9kZXBlbmRlbmN5PgorPC9hc3NlbWJseT4iIiIKKworCitjbGFzcyBtc3ZjOWNvbXBpbGVyVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gIndpbjMyIiwgInJ1bnMgb25seSBvbiB3aW4zMiIpCisgICAgZGVmIHRlc3Rfbm9fY29tcGlsZXIoc2VsZik6CisgICAgICAgICMgbWFrZSBzdXJlIHF1ZXJ5X3ZjdmFyc2FsbCByYWlzZXMgYSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yIGlmCisgICAgICAgICMgdGhlIGNvbXBpbGVyIGlzIG5vdCBmb3VuZAorICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5tc3ZjY29tcGlsZXIgaW1wb3J0IGdldF9idWlsZF92ZXJzaW9uCisgICAgICAgIGlmIGdldF9idWlsZF92ZXJzaW9uKCkgPCA4LjA6CisgICAgICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgnb25seSBmb3IgTVNWQzguMCBvciBhYm92ZScpCisKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IG1zdmM5Y29tcGlsZXIKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIubXN2Yzljb21waWxlciBpbXBvcnQgcXVlcnlfdmN2YXJzYWxsCisKKyAgICAgICAgZGVmIF9maW5kX3ZjdmFyc2FsbCh2ZXJzaW9uKToKKyAgICAgICAgICAgIHJldHVybiBOb25lCisKKyAgICAgICAgb2xkX2ZpbmRfdmN2YXJzYWxsID0gbXN2Yzljb21waWxlci5maW5kX3ZjdmFyc2FsbAorICAgICAgICBtc3ZjOWNvbXBpbGVyLmZpbmRfdmN2YXJzYWxsID0gX2ZpbmRfdmN2YXJzYWxsCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IsIHF1ZXJ5X3ZjdmFyc2FsbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dvbnQgZmluZCB0aGlzIHZlcnNpb24nKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgbXN2Yzljb21waWxlci5maW5kX3ZjdmFyc2FsbCA9IG9sZF9maW5kX3ZjdmFyc2FsbAorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICJ3aW4zMiIsICJydW5zIG9ubHkgb24gd2luMzIiKQorICAgIGRlZiB0ZXN0X3JlZ19jbGFzcyhzZWxmKToKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIubXN2Y2NvbXBpbGVyIGltcG9ydCBnZXRfYnVpbGRfdmVyc2lvbgorICAgICAgICBpZiBnZXRfYnVpbGRfdmVyc2lvbigpIDwgOC4wOgorICAgICAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoInJlcXVpcmVzIE1TVkMgOC4wIG9yIGxhdGVyIikKKworICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5tc3ZjOWNvbXBpbGVyIGltcG9ydCBSZWcKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoS2V5RXJyb3IsIFJlZy5nZXRfdmFsdWUsICd4eHgnLCAneHh4JykKKworICAgICAgICAjIGxvb2tpbmcgZm9yIHZhbHVlcyB0aGF0IHNob3VsZCBleGlzdCBvbiBhbGwKKyAgICAgICAgIyB3aW5kb3dzIHJlZ2lzdGVyaWVzIHZlcnNpb25zLgorICAgICAgICBwYXRoID0gcidDb250cm9sIFBhbmVsXERlc2t0b3AnCisgICAgICAgIHYgPSBSZWcuZ2V0X3ZhbHVlKHBhdGgsICdkcmFnZnVsbHdpbmRvd3MnKQorICAgICAgICBzZWxmLmFzc2VydEluKHYsICgnMCcsICcxJywgJzInKSkKKworICAgICAgICBpbXBvcnQgd2lucmVnCisgICAgICAgIEhLQ1UgPSB3aW5yZWcuSEtFWV9DVVJSRU5UX1VTRVIKKyAgICAgICAga2V5cyA9IFJlZy5yZWFkX2tleXMoSEtDVSwgJ3h4eHgnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleXMsIE5vbmUpCisKKyAgICAgICAga2V5cyA9IFJlZy5yZWFkX2tleXMoSEtDVSwgcidDb250cm9sIFBhbmVsJykKKyAgICAgICAgc2VsZi5hc3NlcnRJbignRGVza3RvcCcsIGtleXMpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gIndpbjMyIiwgInJ1bnMgb25seSBvbiB3aW4zMiIpCisgICAgZGVmIHRlc3RfcmVtb3ZlX3Zpc3VhbF9jX3JlZihzZWxmKToKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIubXN2Y2NvbXBpbGVyIGltcG9ydCBnZXRfYnVpbGRfdmVyc2lvbgorICAgICAgICBpZiBnZXRfYnVpbGRfdmVyc2lvbigpIDwgOC4wOgorICAgICAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoInJlcXVpcmVzIE1TVkMgOC4wIG9yIGxhdGVyIikKKworICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5tc3ZjOWNvbXBpbGVyIGltcG9ydCBNU1ZDQ29tcGlsZXIKKyAgICAgICAgdGVtcGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG1hbmlmZXN0ID0gb3MucGF0aC5qb2luKHRlbXBkaXIsICdtYW5pZmVzdCcpCisgICAgICAgIHdpdGggb3BlbihtYW5pZmVzdCwgJ3cnKSBhcyBmOgorICAgICAgICAgICAgZi53cml0ZShfTUFOSUZFU1QpCisKKyAgICAgICAgY29tcGlsZXIgPSBNU1ZDQ29tcGlsZXIoKQorICAgICAgICBjb21waWxlci5fcmVtb3ZlX3Zpc3VhbF9jX3JlZihtYW5pZmVzdCkKKworICAgICAgICAjIHNlZSB3aGF0IHdlIGdvdAorICAgICAgICB3aXRoIG9wZW4obWFuaWZlc3QpIGFzIGY6CisgICAgICAgICAgICAjIHJlbW92aW5nIHRyYWlsaW5nIHNwYWNlcworICAgICAgICAgICAgY29udGVudCA9ICdcbicuam9pbihsaW5lLnJzdHJpcCgpIGZvciBsaW5lIGluIGYucmVhZGxpbmVzKCkpCisKKyAgICAgICAgIyBtYWtlcyBzdXJlIHRoZSBtYW5pZmVzdCB3YXMgcHJvcGVybHkgY2xlYW5lZAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRlbnQsIF9DTEVBTkVEX01BTklGRVNUKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShtc3ZjOWNvbXBpbGVyVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfcHlwaV9kaXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3B5cGlfZGlzdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40M2M4Y2JlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3B5cGlfZGlzdC5weQpAQCAtMCwwICsxLDI4NyBAQAorIiIiVGVzdHMgZm9yIHRoZSBwYWNrYWdpbmcucHlwaS5kaXN0IG1vZHVsZS4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgc2h1dGlsCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBWZXJzaW9uUHJlZGljYXRlCitmcm9tIHBhY2thZ2luZy5weXBpLmRpc3QgaW1wb3J0IChSZWxlYXNlSW5mbywgUmVsZWFzZXNMaXN0LCBEaXN0SW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwbGl0X2FyY2hpdmVfbmFtZSwgZ2V0X2luZm9zX2Zyb21fdXJsKQorZnJvbSBwYWNrYWdpbmcucHlwaS5lcnJvcnMgaW1wb3J0IEhhc2hEb2VzTm90TWF0Y2gsIFVuc3VwcG9ydGVkSGFzaE5hbWUKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCBUZW1wZGlyTWFuYWdlciwgcmVxdWlyZXNfemxpYiwgZmFrZV9kZWMKK3RyeToKKyAgICBpbXBvcnQgdGhyZWFkaW5nCisgICAgZnJvbSBwYWNrYWdpbmcudGVzdHMucHlwaV9zZXJ2ZXIgaW1wb3J0IHVzZV9weXBpX3NlcnZlcgorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHRocmVhZGluZyA9IE5vbmUKKyAgICB1c2VfcHlwaV9zZXJ2ZXIgPSBmYWtlX2RlYworCisKK2RlZiBEaXN0KCphcmdzLCAqKmt3YXJncyk6CisgICAgIyBEaXN0SW5mbyB0YWtlcyBhIHJlbGVhc2UgYXMgYSBmaXJzdCBwYXJhbWV0ZXIsIGF2b2lkIHRoaXMgaW4gdGVzdHMuCisgICAgcmV0dXJuIERpc3RJbmZvKE5vbmUsICphcmdzLCAqKmt3YXJncykKKworCitjbGFzcyBUZXN0UmVsZWFzZUluZm8odW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfaW5zdGFudGlhdGlvbihzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoZSBEaXN0SW5mbyBjbGFzcyBwcm92aWRlcyB1cyB0aGUgZ29vZCBhdHRyaWJ1dGVzIHdoZW4KKyAgICAgICAgIyBnaXZlbiBvbiBjb25zdHJ1Y3Rpb24KKyAgICAgICAgcmVsZWFzZSA9IFJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4xIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiRm9vQmFyIiwgcmVsZWFzZS5uYW1lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCIxLjEiLCAiJXMiICUgcmVsZWFzZS52ZXJzaW9uKQorCisgICAgZGVmIHRlc3RfYWRkX2Rpc3Qoc2VsZik6CisgICAgICAgICMgZW1wdHkgZGlzdHJpYnV0aW9uIHR5cGUgc2hvdWxkIGFzc3VtZSAic2Rpc3QiCisgICAgICAgIHJlbGVhc2UgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMSIpCisgICAgICAgIHJlbGVhc2UuYWRkX2Rpc3RyaWJ1dGlvbih1cmw9Imh0dHA6Ly9leGFtcGxlLm9yZy8iKQorICAgICAgICAjIHNob3VsZCBub3QgZmFpbAorICAgICAgICByZWxlYXNlWydzZGlzdCddCisKKyAgICBkZWYgdGVzdF9nZXRfdW5rbm93bl9kaXN0cmlidXRpb24oc2VsZik6CisgICAgICAgICMgc2hvdWxkIHJhaXNlIGEgS2V5RXJyb3IKKyAgICAgICAgcGFzcworCisgICAgZGVmIHRlc3RfZ2V0X2luZm9zX2Zyb21fdXJsKHNlbGYpOgorICAgICAgICAjIFRlc3QgdGhhdCB0aGUgdGhlIFVSTHMgYXJlIHBhcnNlZCB0aGUgcmlnaHQgd2F5CisgICAgICAgIHVybF9saXN0ID0geworICAgICAgICAgICAgJ0Zvb0Jhci0xLjEuMC50YXIuZ3onOiB7CisgICAgICAgICAgICAgICAgJ25hbWUnOiAnZm9vYmFyJywgICMgbG93ZXJjYXNlIHRoZSBuYW1lCisgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4xLjAnLAorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICdGb28tQmFyLTEuMS4wLnppcCc6IHsKKyAgICAgICAgICAgICAgICAnbmFtZSc6ICdmb28tYmFyJywgICMga2VlcCB0aGUgZGFzaAorICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMS4wJywKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAnZm9vYmFyLTEuMWIyLnRhci5neiNtZDU9MTIzMTIzMTIzMTIzMTIzJzogeworICAgICAgICAgICAgICAgICduYW1lJzogJ2Zvb2JhcicsCisgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4xYjInLAorICAgICAgICAgICAgICAgICd1cmwnOiAnaHR0cDovL2V4YW1wbGUub3JnL2Zvb2Jhci0xLjFiMi50YXIuZ3onLCAgIyBubyBoYXNoCisgICAgICAgICAgICAgICAgJ2hhc2h2YWwnOiAnMTIzMTIzMTIzMTIzMTIzJywKKyAgICAgICAgICAgICAgICAnaGFzaG5hbWUnOiAnbWQ1JywKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAnZm9vYmFyLTEuMS1yYzIudGFyLmd6JzogeyAgIyB1c2Ugc3VnZ2VzdGVkIG5hbWUKKyAgICAgICAgICAgICAgICAnbmFtZSc6ICdmb29iYXInLAorICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMWMyJywKKyAgICAgICAgICAgICAgICAndXJsJzogJ2h0dHA6Ly9leGFtcGxlLm9yZy9mb29iYXItMS4xLXJjMi50YXIuZ3onLAorICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgZm9yIHVybCwgYXR0cmlidXRlcyBpbiB1cmxfbGlzdC5pdGVtcygpOgorICAgICAgICAgICAgIyBmb3IgZWFjaCB1cmwKKyAgICAgICAgICAgIGluZm9zID0gZ2V0X2luZm9zX2Zyb21fdXJsKCJodHRwOi8vZXhhbXBsZS5vcmcvIiArIHVybCkKKyAgICAgICAgICAgIGZvciBhdHRyaWJ1dGUsIGV4cGVjdGVkIGluIGF0dHJpYnV0ZXMuaXRlbXMoKToKKyAgICAgICAgICAgICAgICBnb3QgPSBpbmZvcy5nZXQoYXR0cmlidXRlKQorICAgICAgICAgICAgICAgIGlmIGF0dHJpYnV0ZSA9PSAidmVyc2lvbiI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIiVzIiAlIGdvdCwgZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnb3QsIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3Rfc3BsaXRfYXJjaGl2ZV9uYW1lKHNlbGYpOgorICAgICAgICAjIFRlc3Qgd2UgY2FuIHNwbGl0IHRoZSBhcmNoaXZlIG5hbWVzCisgICAgICAgIG5hbWVzID0geworICAgICAgICAgICAgJ2Zvby1iYXItYmF6LTEuMC1yYzInOiAoJ2Zvby1iYXItYmF6JywgJzEuMGMyJyksCisgICAgICAgICAgICAnZm9vLWJhci1iYXotMS4wJzogKCdmb28tYmFyLWJheicsICcxLjAnKSwKKyAgICAgICAgICAgICdmb29iYXJiYXotMS4wJzogKCdmb29iYXJiYXonLCAnMS4wJyksCisgICAgICAgIH0KKyAgICAgICAgZm9yIG5hbWUsIHJlc3VsdHMgaW4gbmFtZXMuaXRlbXMoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0cywgc3BsaXRfYXJjaGl2ZV9uYW1lKG5hbWUpKQorCisKK2NsYXNzIFRlc3REaXN0SW5mbyhUZW1wZGlyTWFuYWdlciwgdW5pdHRlc3QuVGVzdENhc2UpOgorICAgIHNyY3BhdGggPSAiL3BhY2thZ2VzL3NvdXJjZS9mL2Zvb2Jhci9mb29iYXItMC4xLnRhci5neiIKKworICAgIGRlZiB0ZXN0X2dldF91cmwoc2VsZik6CisgICAgICAgICMgVGVzdCB0aGF0IHRoZSB1cmwgcHJvcGVydHkgd29ya3Mgd2VsbAorCisgICAgICAgIGQgPSBEaXN0KHVybD0idGVzdF91cmwiKQorICAgICAgICBzZWxmLmFzc2VydERpY3RFcXVhbChkLnVybCwgeworICAgICAgICAgICAgInVybCI6ICJ0ZXN0X3VybCIsCisgICAgICAgICAgICAiaXNfZXh0ZXJuYWwiOiBUcnVlLAorICAgICAgICAgICAgImhhc2huYW1lIjogTm9uZSwKKyAgICAgICAgICAgICJoYXNodmFsIjogTm9uZSwKKyAgICAgICAgfSkKKworICAgICAgICAjIGFkZCBhIG5ldyB1cmwKKyAgICAgICAgZC5hZGRfdXJsKHVybD0iaW50ZXJuYWxfdXJsIiwgaXNfZXh0ZXJuYWw9RmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZC5fdXJsLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydERpY3RFcXVhbChkLnVybCwgeworICAgICAgICAgICAgInVybCI6ICJpbnRlcm5hbF91cmwiLAorICAgICAgICAgICAgImlzX2V4dGVybmFsIjogRmFsc2UsCisgICAgICAgICAgICAiaGFzaG5hbWUiOiBOb25lLAorICAgICAgICAgICAgImhhc2h2YWwiOiBOb25lLAorICAgICAgICB9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihkLnVybHMpKQorCisgICAgZGVmIHRlc3RfY29tcGFyaXNvbihzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoYXQgd2UgY2FuIGNvbXBhcmUgRGlzdEluZm9yaWJ1dGlvbkluZm9MaXN0CisgICAgICAgIGZvbzEgPSBSZWxlYXNlSW5mbygiZm9vIiwgIjEuMCIpCisgICAgICAgIGZvbzIgPSBSZWxlYXNlSW5mbygiZm9vIiwgIjIuMCIpCisgICAgICAgIGJhciA9IFJlbGVhc2VJbmZvKCJiYXIiLCAiMi4wIikKKyAgICAgICAgIyBhc3NlcnQgd2UgdXNlIHRoZSB2ZXJzaW9uIHRvIGNvbXBhcmUKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvbzEgPCBmb28yKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGZvbzEgPiBmb28yKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGZvbzEgPT0gZm9vMikKKworICAgICAgICAjIGFzc2VydCB3ZSBjYW4ndCBjb21wYXJlIGRpc3RzIHdpdGggZGlmZmVyZW50IG5hbWVzCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZm9vMS5fX2VxX18sIGJhcikKKworICAgIEB1bml0dGVzdC5za2lwSWYodGhyZWFkaW5nIGlzIE5vbmUsICduZWVkcyB0aHJlYWRpbmcnKQorICAgIEB1c2VfcHlwaV9zZXJ2ZXIoImRvd25sb2Fkc193aXRoX21kNSIpCisgICAgZGVmIHRlc3RfZG93bmxvYWQoc2VsZiwgc2VydmVyKToKKyAgICAgICAgIyBEb3dubG9hZCBpcyBwb3NzaWJsZSwgYW5kIHRoZSBtZDUgaXMgY2hlY2tlZCBpZiBnaXZlbgorCisgICAgICAgIHVybCA9IHNlcnZlci5mdWxsX2FkZHJlc3MgKyBzZWxmLnNyY3BhdGgKKworICAgICAgICAjIGNoZWNrIHRoYXQgYSBtZDUgaWYgZ2l2ZW4KKyAgICAgICAgZGlzdCA9IERpc3QodXJsPXVybCwgaGFzaG5hbWU9Im1kNSIsCisgICAgICAgICAgICAgICAgICAgIGhhc2h2YWw9ImZlMTg4MDRjNWI3MjJmZjAyNGNhYmRmNTE0OTI0ZmM0IikKKyAgICAgICAgZGlzdC5kb3dubG9hZChzZWxmLm1rZHRlbXAoKSkKKworICAgICAgICAjIGEgd3JvbmcgbWQ1IGZhaWxzCisgICAgICAgIGRpc3QyID0gRGlzdCh1cmw9dXJsLCBoYXNobmFtZT0ibWQ1IiwgaGFzaHZhbD0id3JvbmdtZDUiKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEhhc2hEb2VzTm90TWF0Y2gsIGRpc3QyLmRvd25sb2FkLCBzZWxmLm1rZHRlbXAoKSkKKworICAgICAgICAjIHdlIGNhbiBvbWl0IHRoZSBtZDUgaGFzaAorICAgICAgICBkaXN0MyA9IERpc3QodXJsPXVybCkKKyAgICAgICAgZGlzdDMuZG93bmxvYWQoc2VsZi5ta2R0ZW1wKCkpCisKKyAgICAgICAgIyBhbmQgc3BlY2lmeSBhIHRlbXBvcmFyeSBsb2NhdGlvbgorICAgICAgICAjIGZvciBhbiBhbHJlYWR5IGRvd25sb2FkZWQgZGlzdAorICAgICAgICBwYXRoMSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGRpc3QzLmRvd25sb2FkKHBhdGg9cGF0aDEpCisgICAgICAgICMgYW5kIGZvciBhIG5ldyBvbmUKKyAgICAgICAgcGF0aDJfYmFzZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGRpc3Q0ID0gRGlzdCh1cmw9dXJsKQorICAgICAgICBwYXRoMiA9IGRpc3Q0LmRvd25sb2FkKHBhdGg9cGF0aDJfYmFzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihwYXRoMl9iYXNlLCBwYXRoMikKKworICAgIGRlZiB0ZXN0X2hhc2huYW1lKHNlbGYpOgorICAgICAgICAjIEludmFsaWQgaGFzaG5hbWVzIHJhaXNlcyBhbiBleGNlcHRpb24gb24gYXNzaWduYXRpb24KKyAgICAgICAgRGlzdChoYXNobmFtZT0ibWQ1IiwgaGFzaHZhbD0idmFsdWUiKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuc3VwcG9ydGVkSGFzaE5hbWUsIERpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc2huYW1lPSJpbnZhbGlkX2hhc2huYW1lIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzaHZhbD0idmFsdWUiKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZih0aHJlYWRpbmcgaXMgTm9uZSwgJ25lZWRzIHRocmVhZGluZycpCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBAdXNlX3B5cGlfc2VydmVyKCdkb3dubG9hZHNfd2l0aF9tZDUnKQorICAgIGRlZiB0ZXN0X3VucGFjayhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICB1cmwgPSBzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgc2VsZi5zcmNwYXRoCisgICAgICAgIGRpc3QxID0gRGlzdCh1cmw9dXJsKQorCisgICAgICAgICMgdW5wYWNrIHRoZSBkaXN0cmlidXRpb24gaW4gYSBzcGVjZmllZCBmb2xkZXIKKyAgICAgICAgZGlzdDFfaGVyZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGRpc3QxX3RoZXJlID0gZGlzdDEudW5wYWNrKHBhdGg9ZGlzdDFfaGVyZSkKKworICAgICAgICAjIGFzc2VydCB3ZSB1bnBhY2sgdG8gdGhlIHBhdGggcHJvdmlkZWQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0MV9oZXJlLCBkaXN0MV90aGVyZSkKKyAgICAgICAgZGlzdDFfcmVzdWx0ID0gb3MubGlzdGRpcihkaXN0MV90aGVyZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigncGFmJywgZGlzdDFfcmVzdWx0KQorICAgICAgICBvcy5yZW1vdmUob3MucGF0aC5qb2luKGRpc3QxX3RoZXJlLCAncGFmJykpCisKKyAgICAgICAgIyBUZXN0IHVucGFjayB3b3JrcyB3aXRob3V0IGEgcGF0aCBhcmd1bWVudAorICAgICAgICBkaXN0MiA9IERpc3QodXJsPXVybCkKKyAgICAgICAgIyBkb2luZyBhbiB1bnBhY2sKKyAgICAgICAgZGlzdDJfdGhlcmUgPSBkaXN0Mi51bnBhY2soKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2h1dGlsLnJtdHJlZSwgZGlzdDJfdGhlcmUpCisgICAgICAgIGRpc3QyX3Jlc3VsdCA9IG9zLmxpc3RkaXIoZGlzdDJfdGhlcmUpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3BhZicsIGRpc3QyX3Jlc3VsdCkKKyAgICAgICAgb3MucmVtb3ZlKG9zLnBhdGguam9pbihkaXN0Ml90aGVyZSwgJ3BhZicpKQorCisKK2NsYXNzIFRlc3RSZWxlYXNlc0xpc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfZmlsdGVyKHNlbGYpOgorICAgICAgICAjIFRlc3Qgd2UgZmlsdGVyIHRoZSBkaXN0cmlidXRpb25zIHRoZSByaWdodCB3YXksIHVzaW5nIHZlcnNpb24KKyAgICAgICAgIyBwcmVkaWNhdGUgbWF0Y2ggbWV0aG9kCisgICAgICAgIHJlbGVhc2VzID0gUmVsZWFzZXNMaXN0KCdGb29CYXInLCAoCisgICAgICAgICAgICBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMSIpLAorICAgICAgICAgICAgUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjEuMSIpLAorICAgICAgICAgICAgUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjIiKSwKKyAgICAgICAgICAgIFJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4yLjEiKSwKKyAgICAgICAgKSkKKyAgICAgICAgZmlsdGVyZWQgPSByZWxlYXNlcy5maWx0ZXIoVmVyc2lvblByZWRpY2F0ZSgiRm9vQmFyICg8MS4yKSIpKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKHJlbGVhc2VzWzJdLCBmaWx0ZXJlZCkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbihyZWxlYXNlc1szXSwgZmlsdGVyZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4ocmVsZWFzZXNbMF0sIGZpbHRlcmVkKQorICAgICAgICBzZWxmLmFzc2VydEluKHJlbGVhc2VzWzFdLCBmaWx0ZXJlZCkKKworICAgIGRlZiB0ZXN0X2FwcGVuZChzZWxmKToKKyAgICAgICAgIyBXaGVuIGFkZGluZyBhIG5ldyBpdGVtIHRvIHRoZSBsaXN0LCB0aGUgYmVoYXZpb3IgaXMgdG8gdGVzdCBpZgorICAgICAgICAjIGEgcmVsZWFzZSB3aXRoIHRoZSBzYW1lIG5hbWUgYW5kIHZlcnNpb24gbnVtYmVyIGFscmVhZHkgZXhpc3RzLAorICAgICAgICAjIGFuZCBpZiBzbywgdG8gYWRkIGEgbmV3IGRpc3RyaWJ1dGlvbiBmb3IgaXQuIElmIHRoZSBkaXN0cmlidXRpb24gdHlwZQorICAgICAgICAjIGlzIGFscmVhZHkgZGVmaW5lZCB0b28sIGFkZCB1cmwgaW5mb3JtYXRpb25zIHRvIHRoZSBleGlzdGluZyBEaXN0SW5mbworICAgICAgICAjIG9iamVjdC4KKworICAgICAgICByZWxlYXNlcyA9IFJlbGVhc2VzTGlzdCgiRm9vQmFyIiwgWworICAgICAgICAgICAgUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjEiLCB1cmw9ImV4dGVybmFsX3VybCIsCisgICAgICAgICAgICAgICAgICAgICAgICBkaXN0X3R5cGU9InNkaXN0IiksCisgICAgICAgIF0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMSwgbGVuKHJlbGVhc2VzKSkKKyAgICAgICAgcmVsZWFzZXMuYWRkX3JlbGVhc2UocmVsZWFzZT1SZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsPSJpbnRlcm5hbF91cmwiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzX2V4dGVybmFsPUZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RfdHlwZT0ic2Rpc3QiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgxLCBsZW4ocmVsZWFzZXMpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihyZWxlYXNlc1swXVsnc2Rpc3QnXS51cmxzKSkKKworICAgICAgICByZWxlYXNlcy5hZGRfcmVsZWFzZShyZWxlYXNlPVJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4xLjEiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RfdHlwZT0ic2Rpc3QiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBsZW4ocmVsZWFzZXMpKQorCisgICAgICAgICMgd2hlbiBhZGRpbmcgYSBkaXN0cmlidXRpb24gd2hpdGggYSBkaWZmZXJlbnQgdHlwZSwgYSBuZXcgZGlzdHJpYnV0aW9uCisgICAgICAgICMgaGFzIHRvIGJlIGFkZGVkLgorICAgICAgICByZWxlYXNlcy5hZGRfcmVsZWFzZShyZWxlYXNlPVJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4xLjEiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RfdHlwZT0iYmRpc3QiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBsZW4ocmVsZWFzZXMpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihyZWxlYXNlc1sxXS5kaXN0cykpCisKKyAgICBkZWYgdGVzdF9wcmVmZXJfZmluYWwoc2VsZik6CisgICAgICAgICMgQ2FuIG9yZGVyIHRoZSBkaXN0cmlidXRpb25zIHVzaW5nIHByZWZlcl9maW5hbAorICAgICAgICBmYjEwID0gUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjAiKSAgIyBmaW5hbCBkaXN0cmlidXRpb24KKyAgICAgICAgZmIxMWEgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMWExIikgICMgYWxwaGEKKyAgICAgICAgZmIxMmEgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMmExIikgICMgYWxwaGEKKyAgICAgICAgZmIxMmIgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMmIxIikgICMgYmV0YQorICAgICAgICBkaXN0cyA9IFJlbGVhc2VzTGlzdCgiRm9vQmFyIiwgW2ZiMTAsIGZiMTFhLCBmYjEyYSwgZmIxMmJdKQorCisgICAgICAgIGRpc3RzLnNvcnRfcmVsZWFzZXMocHJlZmVyX2ZpbmFsPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmIxMCwgZGlzdHNbMF0pCisKKyAgICAgICAgZGlzdHMuc29ydF9yZWxlYXNlcyhwcmVmZXJfZmluYWw9RmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmIxMmIsIGRpc3RzWzBdKQorCisgICAgQHVuaXR0ZXN0LnNraXAoJ21ldGhvZCBub3QgaW1wbGVtZW50ZWQgeWV0JykKKyAgICBkZWYgdGVzdF9wcmVmZXJfc291cmNlKHNlbGYpOgorICAgICAgICAjIE9yZGVyaW5nIHN1cHBvcnRzIHByZWZlcl9zb3VyY2UKKyAgICAgICAgZmJfc291cmNlID0gRGlzdCgiRm9vQmFyIiwgIjEuMCIsIHR5cGU9InNvdXJjZSIpCisgICAgICAgIGZiX2JpbmFyeSA9IERpc3QoIkZvb0JhciIsICIxLjAiLCB0eXBlPSJiaW5hcnkiKQorICAgICAgICBmYjJfYmluYXJ5ID0gRGlzdCgiRm9vQmFyIiwgIjIuMCIsIHR5cGU9ImJpbmFyeSIpCisgICAgICAgIGRpc3RzID0gUmVsZWFzZXNMaXN0KFtmYl9iaW5hcnksIGZiX3NvdXJjZV0pCisKKyAgICAgICAgZGlzdHMuc29ydF9kaXN0cmlidXRpb25zKHByZWZlcl9zb3VyY2U9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmYl9zb3VyY2UsIGRpc3RzWzBdKQorCisgICAgICAgIGRpc3RzLnNvcnRfZGlzdHJpYnV0aW9ucyhwcmVmZXJfc291cmNlPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZiX2JpbmFyeSwgZGlzdHNbMF0pCisKKyAgICAgICAgZGlzdHMuYXBwZW5kKGZiMl9iaW5hcnkpCisgICAgICAgIGRpc3RzLnNvcnRfZGlzdHJpYnV0aW9ucyhwcmVmZXJfc291cmNlPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmIyX2JpbmFyeSwgZGlzdHNbMF0pCisKKyAgICBkZWYgdGVzdF9nZXRfbGFzdChzZWxmKToKKyAgICAgICAgZGlzdHMgPSBSZWxlYXNlc0xpc3QoJ0ZvbycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdHMuZ2V0X2xhc3QoJ0ZvbyAxLjAnKSwgTm9uZSkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHN1aXRlID0gdW5pdHRlc3QuVGVzdFN1aXRlKCkKKyAgICBzdWl0ZS5hZGRUZXN0KHVuaXR0ZXN0Lm1ha2VTdWl0ZShUZXN0RGlzdEluZm8pKQorICAgIHN1aXRlLmFkZFRlc3QodW5pdHRlc3QubWFrZVN1aXRlKFRlc3RSZWxlYXNlSW5mbykpCisgICAgc3VpdGUuYWRkVGVzdCh1bml0dGVzdC5tYWtlU3VpdGUoVGVzdFJlbGVhc2VzTGlzdCkpCisgICAgcmV0dXJuIHN1aXRlCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfcHlwaV9zZXJ2ZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfcHlwaV9zZXJ2ZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDU3YzQ5NAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3NlcnZlci5weQpAQCAtMCwwICsxLDg4IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmNvbW1hbmQuYmRpc3QuIiIiCitpbXBvcnQgdXJsbGliLnJlcXVlc3QKK2ltcG9ydCB1cmxsaWIucGFyc2UKK2ltcG9ydCB1cmxsaWIuZXJyb3IKKwordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgKAorICAgICAgICBQeVBJU2VydmVyLCBQWVBJX0RFRkFVTFRfU1RBVElDX1BBVEgpCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgdGhyZWFkaW5nID0gTm9uZQorICAgIFB5UElTZXJ2ZXIgPSBOb25lCisgICAgUFlQSV9ERUZBVUxUX1NUQVRJQ19QQVRIID0gTm9uZQorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKKworCitAdW5pdHRlc3Quc2tpcElmKHRocmVhZGluZyBpcyBOb25lLCAiTmVlZHMgdGhyZWFkaW5nIikKK2NsYXNzIFB5UElTZXJ2ZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X3JlY29yZHNfcmVxdWVzdHMoc2VsZik6CisgICAgICAgICMgV2UgZXhwZWN0IHRoYXQgUHlQSVNlcnZlciBjYW4gbG9nIG91ciByZXF1ZXN0cworICAgICAgICBzZXJ2ZXIgPSBQeVBJU2VydmVyKCkKKyAgICAgICAgc2VydmVyLmRlZmF1bHRfcmVzcG9uc2Vfc3RhdHVzID0gMjAwCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VydmVyLnN0YXJ0KCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlcnZlci5yZXF1ZXN0cyksIDApCisKKyAgICAgICAgICAgIGRhdGEgPSBiJ1JvY2sgQXJvdW5kIFRoZSBCdW5rZXInCisKKyAgICAgICAgICAgIGhlYWRlcnMgPSB7IlgtdGVzdC1oZWFkZXIiOiAiTWlzdGVyIEljZWJlcmcifQorCisgICAgICAgICAgICByZXF1ZXN0ID0gdXJsbGliLnJlcXVlc3QuUmVxdWVzdCgKKyAgICAgICAgICAgICAgICBzZXJ2ZXIuZnVsbF9hZGRyZXNzLCBkYXRhLCBoZWFkZXJzKQorICAgICAgICAgICAgdXJsbGliLnJlcXVlc3QudXJsb3BlbihyZXF1ZXN0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VydmVyLnJlcXVlc3RzKSwgMSkKKyAgICAgICAgICAgIGhhbmRsZXIsIHJlcXVlc3RfZGF0YSA9IHNlcnZlci5yZXF1ZXN0c1stMV0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oZGF0YSwgcmVxdWVzdF9kYXRhKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigieC10ZXN0LWhlYWRlciIsIGhhbmRsZXIuaGVhZGVycykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFuZGxlci5oZWFkZXJzWyJ4LXRlc3QtaGVhZGVyIl0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNaXN0ZXIgSWNlYmVyZyIpCisKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHNlcnZlci5zdG9wKCkKKworICAgIGRlZiB0ZXN0X3NlcnZlX3N0YXRpY19jb250ZW50KHNlbGYpOgorICAgICAgICAjIFBZUEkgTW9ja2VkIHNlcnZlciBjYW4gc2VydmUgc3RhdGljIGNvbnRlbnQgZnJvbSBkaXNrLgorCisgICAgICAgIGRlZiB1c2VzX2xvY2FsX2ZpbGVzX2ZvcihzZXJ2ZXIsIHVybF9wYXRoKToKKyAgICAgICAgICAgICIiIlRlc3QgdGhhdCBmaWxlcyBhcmUgc2VydmVkIHN0YXRpY2FsbHkgKGVnLiB0aGUgb3V0cHV0IGZyb20gdGhlCisgICAgICAgICAgICBzZXJ2ZXIgaXMgdGhlIHNhbWUgdGhhbiB0aGUgb25lIG1hZGUgYnkgYSBzaW1wbGUgZmlsZSByZWFkLgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICB1cmwgPSBzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgdXJsX3BhdGgKKyAgICAgICAgICAgIHJlcXVlc3QgPSB1cmxsaWIucmVxdWVzdC5SZXF1ZXN0KHVybCkKKyAgICAgICAgICAgIHJlc3BvbnNlID0gdXJsbGliLnJlcXVlc3QudXJsb3BlbihyZXF1ZXN0KQorICAgICAgICAgICAgd2l0aCBvcGVuKFBZUElfREVGQVVMVF9TVEFUSUNfUEFUSCArICIvdGVzdF9weXBpX3NlcnZlciIKKyAgICAgICAgICAgICAgICAgICAgICArIHVybF9wYXRoKSBhcyBmaWxlOgorICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5yZWFkKCkuZGVjb2RlKCkgPT0gZmlsZS5yZWFkKCkKKworICAgICAgICBzZXJ2ZXIgPSBQeVBJU2VydmVyKHN0YXRpY191cmlfcGF0aHM9WyJzaW1wbGUiLCAiZXh0ZXJuYWwiXSwKKyAgICAgICAgICAgIHN0YXRpY19maWxlc3lzdGVtX3BhdGhzPVsidGVzdF9weXBpX3NlcnZlciJdKQorICAgICAgICBzZXJ2ZXIuc3RhcnQoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICAjIHRoZSBmaWxlIGRvZXMgbm90IGV4aXN0cyBvbiB0aGUgZGlzYywgc28gaXQgbWlnaHQgbm90IGJlIHNlcnZlZAorICAgICAgICAgICAgdXJsID0gc2VydmVyLmZ1bGxfYWRkcmVzcyArICIvc2ltcGxlL3VuZXhpc3RpbmdfcGFnZSIKKyAgICAgICAgICAgIHJlcXVlc3QgPSB1cmxsaWIucmVxdWVzdC5SZXF1ZXN0KHVybCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB1cmxsaWIucmVxdWVzdC51cmxvcGVuKHJlcXVlc3QpCisgICAgICAgICAgICBleGNlcHQgdXJsbGliLmVycm9yLkhUVFBFcnJvciBhcyBlOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5jb2RlLCA0MDQpCisKKyAgICAgICAgICAgICMgbm93IHRyeSBzZXJ2aW5nIGEgY29udGVudCB0aGF0IGRvIGV4aXN0cworICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHVzZXNfbG9jYWxfZmlsZXNfZm9yKHNlcnZlciwgIi9zaW1wbGUvaW5kZXguaHRtbCIpKQorCisgICAgICAgICAgICAjIGFuZCBhbm90aGVyIG9uZSBpbiBhbm90aGVyIHJvb3QgcGF0aAorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHVzZXNfbG9jYWxfZmlsZXNfZm9yKHNlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiL2V4dGVybmFsL2luZGV4Lmh0bWwiKSkKKworICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VydmVyLnN0b3AoKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShQeVBJU2VydmVyVGVzdCkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3NpbXBsZS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3NpbXBsZS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41OTIwNGM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3B5cGlfc2ltcGxlLnB5CkBAIC0wLDAgKzEsMzUzIEBACisiIiJUZXN0cyBmb3IgdGhlIHBhY2thZ2luZy5weXBpLnNpbXBsZSBtb2R1bGUuIiIiCitpbXBvcnQgcmUKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IGh0dHAuY2xpZW50CitpbXBvcnQgdXJsbGliLmVycm9yCitpbXBvcnQgdXJsbGliLnBhcnNlCitpbXBvcnQgdXJsbGliLnJlcXVlc3QKKworZnJvbSBwYWNrYWdpbmcucHlwaS5zaW1wbGUgaW1wb3J0IENyYXdsZXIKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCAoVGVtcGRpck1hbmFnZXIsIExvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZha2VfZGVjKQorCit0cnk6CisgICAgaW1wb3J0IF90aHJlYWQKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgKHVzZV9weXBpX3NlcnZlciwgUHlQSVNlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBZUElfREVGQVVMVF9TVEFUSUNfUEFUSCkKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBfdGhyZWFkID0gTm9uZQorICAgIHVzZV9weXBpX3NlcnZlciA9IGZha2VfZGVjCisgICAgUFlQSV9ERUZBVUxUX1NUQVRJQ19QQVRIID0gb3MucGF0aC5qb2luKAorICAgICAgICBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKF9fZmlsZV9fKSksICdweXBpc2VydmVyJykKKworCisKK2NsYXNzIFNpbXBsZUNyYXdsZXJUZXN0Q2FzZShUZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgX2dldF9zaW1wbGVfY3Jhd2xlcihzZWxmLCBzZXJ2ZXIsIGJhc2VfdXJsPSIvc2ltcGxlLyIsIGhvc3RzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgIiIiQnVpbGQgYW5kIHJldHVybiBhIFNpbXBsZUluZGV4IHdpdGggdGhlIHRlc3Qgc2VydmVyIHVybHMiIiIKKyAgICAgICAgaWYgaG9zdHMgaXMgTm9uZToKKyAgICAgICAgICAgIGhvc3RzID0gKHNlcnZlci5mdWxsX2FkZHJlc3MucmVwbGFjZSgiaHR0cDovLyIsICIiKSwpCisgICAgICAgIGt3YXJnc1snaG9zdHMnXSA9IGhvc3RzCisgICAgICAgIHJldHVybiBDcmF3bGVyKHNlcnZlci5mdWxsX2FkZHJlc3MgKyBiYXNlX3VybCwgKmFyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICoqa3dhcmdzKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKCkKKyAgICBkZWYgdGVzdF9iYWRfdXJscyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcigpCisgICAgICAgIHVybCA9ICdodHRwOi8vMTI3LjAuMC4xOjAvbm9uZXN1Y2gvdGVzdF9zaW1wbGUnCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHYgPSBjcmF3bGVyLl9vcGVuX3VybCh1cmwpCisgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgdjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4odXJsLCBzdHIodikpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB2LmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZSh2LCB1cmxsaWIuZXJyb3IuSFRUUEVycm9yKQorCisgICAgICAgICMgaXNzdWUgMTYKKyAgICAgICAgIyBlYXN5X2luc3RhbGwgaW5xdWFudC5jb250ZW50bWlycm9yLnBsb25lIGJyZWFrcyBiZWNhdXNlIG9mIGEgdHlwbworICAgICAgICAjIGluIGl0cyBob21lIFVSTAorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcihob3N0cz0oJ2V4YW1wbGUub3JnJywpKQorICAgICAgICB1cmwgPSAoJ3VybDolMjBodHRwczovL3N2bi5wbG9uZS5vcmcvc3ZuL2NvbGxlY3RpdmUvJworICAgICAgICAgICAgICAgJ2lucXVhbnQuY29udGVudG1pcnJvci5wbG9uZS90cnVuaycpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHYgPSBjcmF3bGVyLl9vcGVuX3VybCh1cmwpCisgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgdjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4odXJsLCBzdHIodikpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB2LmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZSh2LCB1cmxsaWIuZXJyb3IuSFRUUEVycm9yKQorCisgICAgICAgIGRlZiBfdXJsb3BlbigqYXJncyk6CisgICAgICAgICAgICByYWlzZSBodHRwLmNsaWVudC5CYWRTdGF0dXNMaW5lKCdsaW5lJykKKworICAgICAgICBvbGRfdXJsb3BlbiA9IHVybGxpYi5yZXF1ZXN0LnVybG9wZW4KKyAgICAgICAgdXJsbGliLnJlcXVlc3QudXJsb3BlbiA9IF91cmxvcGVuCisgICAgICAgIHVybCA9ICdodHRwOi8vZXhhbXBsZS5vcmcnCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHYgPSBjcmF3bGVyLl9vcGVuX3VybCh1cmwpCisgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgdjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2xpbmUnLCBzdHIodikpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB2LmNsb3NlKCkKKyAgICAgICAgICAgICMgVE9ETyB1c2Ugc2VsZi5hc3NlcnRSYWlzZXMKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCdTaG91bGQgaGF2ZSByYWlzZSBoZXJlIScpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICB1cmxsaWIucmVxdWVzdC51cmxvcGVuID0gb2xkX3VybG9wZW4KKworICAgICAgICAjIGlzc3VlIDIwCisgICAgICAgIHVybCA9ICdodHRwOi8vaHR0cDovL3N2bi5weXRob25wYXN0ZS5vcmcvUGFzdGUvd3BocC90cnVuaycKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY3Jhd2xlci5fb3Blbl91cmwodXJsKQorICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIHY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEluKCdEb3dubG9hZCBlcnJvcicsIHN0cih2KSkKKworICAgICAgICAjIGlzc3VlICMxNjAKKyAgICAgICAgdXJsID0gc2VydmVyLmZ1bGxfYWRkcmVzcworICAgICAgICBwYWdlID0gKCc8YSBocmVmPSJodHRwOi8vd3d3LmZhbWZhbWZhbS5jb21dKCcKKyAgICAgICAgICAgICAgICAnaHR0cDovL3d3dy5mYW1mYW1mYW0uY29tLyI+JykKKyAgICAgICAgY3Jhd2xlci5fcHJvY2Vzc191cmwodXJsLCBwYWdlKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKCJ0ZXN0X2ZvdW5kX2xpbmtzIikKKyAgICBkZWYgdGVzdF9mb3VuZF9saW5rcyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAjIEJyb3dzZSB0aGUgaW5kZXgsIGFza2luZyBmb3IgYSBzcGVjaWZpZWQgcmVsZWFzZSB2ZXJzaW9uCisgICAgICAgICMgVGhlIFB5UEkgaW5kZXggY29udGFpbnMgbGlua3MgZm9yIHZlcnNpb24gMS4wLCAxLjEsIDIuMCBhbmQgMi4wLjEKKyAgICAgICAgY3Jhd2xlciA9IHNlbGYuX2dldF9zaW1wbGVfY3Jhd2xlcihzZXJ2ZXIpCisgICAgICAgIGxhc3RfcmVsZWFzZSA9IGNyYXdsZXIuZ2V0X3JlbGVhc2UoImZvb2JhciIpCisKKyAgICAgICAgIyB3ZSBoYXZlIHNjYW5uZWQgdGhlIGluZGV4IHBhZ2UKKyAgICAgICAgc2VsZi5hc3NlcnRJbihzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgIi9zaW1wbGUvZm9vYmFyLyIsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykKKworICAgICAgICAjIHdlIGhhdmUgZm91bmQgNCByZWxlYXNlcyBpbiB0aGlzIHBhZ2UKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY3Jhd2xlci5fcHJvamVjdHNbImZvb2JhciJdKSwgNCkKKworICAgICAgICAjIGFuZCByZXR1cm5lZCB0aGUgbW9zdCByZWNlbnQgb25lCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIiVzIiAlIGxhc3RfcmVsZWFzZS52ZXJzaW9uLCAnMi4wLjEnKQorCisgICAgZGVmIHRlc3RfaXNfYnJvd3NhYmxlKHNlbGYpOgorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcihmb2xsb3dfZXh0ZXJuYWxzPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoY3Jhd2xlci5faXNfYnJvd3NhYmxlKGNyYXdsZXIuaW5kZXhfdXJsICsgInRlc3QiKSkKKworICAgICAgICAjIE5vdywgd2hlbiBmb2xsb3dpbmcgZXh0ZXJuYWxzLCB3ZSBjYW4gaGF2ZSBhIGxpc3Qgb2YgaG9zdHMgdG8gdHJ1c3QuCisgICAgICAgICMgYW5kIGRvbid0IGZvbGxvdyBvdGhlciBleHRlcm5hbCBsaW5rcyB0aGFuIHRoZSBvbmUgZGVzY3JpYmVkIGhlcmUuCisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKGhvc3RzPVsicHlwaS5weXRob24ub3JnIiwgImV4YW1wbGUub3JnIl0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbGxvd19leHRlcm5hbHM9VHJ1ZSkKKyAgICAgICAgZ29vZF91cmxzID0gKAorICAgICAgICAgICAgImh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvZm9vL2JhciIsCisgICAgICAgICAgICAiaHR0cDovL3B5cGkucHl0aG9uLm9yZy9zaW1wbGUvZm9vYmFyIiwKKyAgICAgICAgICAgICJodHRwOi8vZXhhbXBsZS5vcmciLAorICAgICAgICAgICAgImh0dHA6Ly9leGFtcGxlLm9yZy8iLAorICAgICAgICAgICAgImh0dHA6Ly9leGFtcGxlLm9yZy9zaW1wbGUvIiwKKyAgICAgICAgKQorICAgICAgICBiYWRfdXJscyA9ICgKKyAgICAgICAgICAgICJodHRwOi8vcHl0aG9uLm9yZyIsCisgICAgICAgICAgICAiaHR0cDovL2V4YW1wbGUudGxkIiwKKyAgICAgICAgKQorCisgICAgICAgIGZvciB1cmwgaW4gZ29vZF91cmxzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSh1cmwpKQorCisgICAgICAgIGZvciB1cmwgaW4gYmFkX3VybHM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSh1cmwpKQorCisgICAgICAgICMgYWxsb3cgYWxsIGhvc3RzCisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKGZvbGxvd19leHRlcm5hbHM9VHJ1ZSwgaG9zdHM9KCIqIiwpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoY3Jhd2xlci5faXNfYnJvd3NhYmxlKCJodHRwOi8vYW4tZXh0ZXJuYWwubGluay9wYXRoIikpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjcmF3bGVyLl9pc19icm93c2FibGUoInB5cGkuZXhhbXBsZS5vcmcvYS9wYXRoIikpCisKKyAgICAgICAgIyBzcGVjaWZ5IGEgbGlzdCBvZiBob3N0cyB3ZSB3YW50IHRvIGFsbG93CisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKGZvbGxvd19leHRlcm5hbHM9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaG9zdHM9KCIqLmV4YW1wbGUub3JnIiwpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSgiaHR0cDovL2FuLWV4dGVybmFsLmxpbmsvcGF0aCIpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoCisgICAgICAgICAgICBjcmF3bGVyLl9pc19icm93c2FibGUoImh0dHA6Ly9weXBpLmV4YW1wbGUub3JnL2EvcGF0aCIpKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKCJ3aXRoX2V4dGVybmFscyIpCisgICAgZGVmIHRlc3RfZm9sbG93X2V4dGVybmFscyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAjIEluY2x1ZGUgZXh0ZXJuYWwgcGFnZXMKKyAgICAgICAgIyBUcnkgdG8gcmVxdWVzdCB0aGUgcGFja2FnZSBpbmRleCwgd2ljaCBjb250YWlucyBsaW5rcyB0byAiZXh0ZXJuYWxzIgorICAgICAgICAjIHJlc291cmNlcy4gVGhleSBoYXZlIHRvICBiZSBzY2FubmVkIHRvby4KKyAgICAgICAgY3Jhd2xlciA9IHNlbGYuX2dldF9zaW1wbGVfY3Jhd2xlcihzZXJ2ZXIsIGZvbGxvd19leHRlcm5hbHM9VHJ1ZSkKKyAgICAgICAgY3Jhd2xlci5nZXRfcmVsZWFzZSgiZm9vYmFyIikKKyAgICAgICAgc2VsZi5hc3NlcnRJbihzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgIi9leHRlcm5hbC9leHRlcm5hbC5odG1sIiwKKyAgICAgICAgICAgIGNyYXdsZXIuX3Byb2Nlc3NlZF91cmxzKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKCJ3aXRoX3JlYWxfZXh0ZXJuYWxzIikKKyAgICBkZWYgdGVzdF9yZXN0cmljdF9ob3N0cyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAjIE9ubHkgdXNlIGEgbGlzdCBvZiBhbGxvd2VkIGhvc3RzIGlzIHBvc3NpYmxlCisgICAgICAgICMgVGVzdCB0aGF0IHRlbGxpbmcgdGhlIHNpbXBsZSBweVBJIGNsaWVudCB0byBub3QgcmV0cmlldmUgZXh0ZXJuYWwKKyAgICAgICAgIyB3b3JrcworICAgICAgICBjcmF3bGVyID0gc2VsZi5fZ2V0X3NpbXBsZV9jcmF3bGVyKHNlcnZlciwgZm9sbG93X2V4dGVybmFscz1GYWxzZSkKKyAgICAgICAgY3Jhd2xlci5nZXRfcmVsZWFzZSgiZm9vYmFyIikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbihzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgIi9leHRlcm5hbC9leHRlcm5hbC5odG1sIiwKKyAgICAgICAgICAgIGNyYXdsZXIuX3Byb2Nlc3NlZF91cmxzKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKHN0YXRpY19maWxlc3lzdGVtX3BhdGhzPVsid2l0aF9leHRlcm5hbHMiXSwKKyAgICAgICAgc3RhdGljX3VyaV9wYXRocz1bInNpbXBsZSIsICJleHRlcm5hbCJdKQorICAgIGRlZiB0ZXN0X2xpbmtzX3ByaW9yaXR5KHNlbGYsIHNlcnZlcik6CisgICAgICAgICMgRG93bmxvYWQgbGlua3MgZnJvbSB0aGUgcHlwaSBzaW1wbGUgaW5kZXggc2hvdWxkIGJlIHVzZWQgYmVmb3JlCisgICAgICAgICMgZXh0ZXJuYWwgZG93bmxvYWQgbGlua3MuCisgICAgICAgICMgaHR0cDovL2JpdGJ1Y2tldC5vcmcvdGFyZWsvZGlzdHJpYnV0ZS9pc3N1ZS8xNjMvbWQ1LXZhbGlkYXRpb24tZXJyb3IKKyAgICAgICAgIworICAgICAgICAjIFVzZWNhc2UgOgorICAgICAgICAjIC0gc29tZW9uZSB1cGxvYWRzIGEgcGFja2FnZSBvbiBweXBpLCBhIG1kNSBpcyBnZW5lcmF0ZWQKKyAgICAgICAgIyAtIHNvbWVvbmUgbWFudWFsbHkgY29pbmRleGVzIHRoaXMgbGluayAod2l0aCB0aGUgbWQ1IGluIHRoZSB1cmwpIG9udG8KKyAgICAgICAgIyAgIGFuIGV4dGVybmFsIHBhZ2UgYWNjZXNzaWJsZSBmcm9tIHRoZSBwYWNrYWdlIHBhZ2UuCisgICAgICAgICMgLSBzb21lb25lIHJldXBsb2FkcyB0aGUgcGFja2FnZSAod2l0aCBhIGRpZmZlcmVudCBtZDUpCisgICAgICAgICMgLSB3aGlsZSBlYXN5X2luc3RhbGxpbmcsIGFuIE1ENSBlcnJvciBvY2N1cnMgYmVjYXVzZSB0aGUgZXh0ZXJuYWwKKyAgICAgICAgIyBsaW5rIGlzIHVzZWQKKyAgICAgICAgIyAtPiBUaGUgaW5kZXggc2hvdWxkIHVzZSB0aGUgbGluayBmcm9tIHB5cGksIG5vdCB0aGUgZXh0ZXJuYWwgb25lLgorCisgICAgICAgICMgc3RhcnQgYW4gaW5kZXggc2VydmVyCisgICAgICAgIGluZGV4X3VybCA9IHNlcnZlci5mdWxsX2FkZHJlc3MgKyAnL3NpbXBsZS8nCisKKyAgICAgICAgIyBzY2FuIGEgdGVzdCBpbmRleAorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcihpbmRleF91cmwsIGZvbGxvd19leHRlcm5hbHM9VHJ1ZSkKKyAgICAgICAgcmVsZWFzZXMgPSBjcmF3bGVyLmdldF9yZWxlYXNlcygiZm9vYmFyIikKKyAgICAgICAgc2VydmVyLnN0b3AoKQorCisgICAgICAgICMgd2UgaGF2ZSBvbmx5IG9uZSBsaW5rLCBiZWNhdXNlIGxpbmtzIGFyZSBjb21wYXJlZCB3aXRob3V0IG1kNQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihyZWxlYXNlcykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMSwgbGVuKHJlbGVhc2VzWzBdLmRpc3RzKSkKKyAgICAgICAgIyB0aGUgbGluayBzaG91bGQgYmUgZnJvbSB0aGUgaW5kZXgKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBsZW4ocmVsZWFzZXNbMF0uZGlzdHNbJ3NkaXN0J10udXJscykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzEyMzQ1Njc4OTAxMjM0NTY3JywKKyAgICAgICAgICAgICAgICAgICAgICAgICByZWxlYXNlc1swXS5kaXN0c1snc2Rpc3QnXS51cmxbJ2hhc2h2YWwnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnbWQ1JywgcmVsZWFzZXNbMF0uZGlzdHNbJ3NkaXN0J10udXJsWydoYXNobmFtZSddKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKHN0YXRpY19maWxlc3lzdGVtX3BhdGhzPVsid2l0aF9ub3JlbF9saW5rcyJdLAorICAgICAgICBzdGF0aWNfdXJpX3BhdGhzPVsic2ltcGxlIiwgImV4dGVybmFsIl0pCisgICAgZGVmIHRlc3Rfbm90X3NjYW5fYWxsX2xpbmtzKHNlbGYsIHNlcnZlcik6CisgICAgICAgICMgRG8gbm90IGZvbGxvdyBhbGwgaW5kZXggcGFnZSBsaW5rcy4KKyAgICAgICAgIyBUaGUgbGlua3Mgbm90IHRhZ2dlZCB3aXRoIHJlbD0iZG93bmxvYWQiIGFuZCByZWw9ImhvbWVwYWdlIiBoYXZlCisgICAgICAgICMgdG8gbm90IGJlIHByb2Nlc3NlZCBieSB0aGUgcGFja2FnZSBpbmRleCwgd2hpbGUgcHJvY2Vzc2luZyAicGFnZXMiLgorCisgICAgICAgICMgcHJvY2VzcyB0aGUgcGFnZXMKKyAgICAgICAgY3Jhd2xlciA9IHNlbGYuX2dldF9zaW1wbGVfY3Jhd2xlcihzZXJ2ZXIsIGZvbGxvd19leHRlcm5hbHM9VHJ1ZSkKKyAgICAgICAgY3Jhd2xlci5nZXRfcmVsZWFzZXMoImZvb2JhciIpCisgICAgICAgICMgbm93IGl0IHNob3VsZCBoYXZlIHByb2Nlc3NlZCBvbmx5IHBhZ2VzIHdpdGggbGlua3MgcmVsPSJkb3dubG9hZCIKKyAgICAgICAgIyBhbmQgcmVsPSJob21lcGFnZSIKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiJXMvc2ltcGxlL2Zvb2Jhci8iICUgc2VydmVyLmZ1bGxfYWRkcmVzcywKKyAgICAgICAgICAgIGNyYXdsZXIuX3Byb2Nlc3NlZF91cmxzKSAgIyBpdCdzIHRoZSBzaW1wbGUgaW5kZXggcGFnZQorICAgICAgICBzZWxmLmFzc2VydEluKCIlcy9leHRlcm5hbC9ob21lcGFnZS5odG1sIiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgdGhlIGV4dGVybmFsIGhvbWVwYWdlIGlzIHJlbD0iaG9tZXBhZ2UiCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oIiVzL2V4dGVybmFsL25vbnJlbC5odG1sIiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgdGhpcyBsaW5rIGNvbnRhaW5zIG5vIHJlbD0qCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oIiVzL3VucmVsYXRlZC0wLjIudGFyLmd6IiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgbGlua2VkIGZyb20gc2ltcGxlIGluZGV4IChubyByZWwpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oIiVzL2Zvb2Jhci0wLjEudGFyLmd6IiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgbGlua2VkIGZyb20gc2ltcGxlIGluZGV4IChyZWwpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oIiVzL2Zvb2Jhci0yLjAudGFyLmd6IiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgbGlua2VkIGZyb20gZXh0ZXJuYWwgaG9tZXBhZ2UgKHJlbCkKKworICAgIEB1bml0dGVzdC5za2lwSWYoX3RocmVhZCBpcyBOb25lLCAnbmVlZHMgdGhyZWFkcycpCisgICAgZGVmIHRlc3RfdXNlc19taXJyb3JzKHNlbGYpOgorICAgICAgICAjIFdoZW4gdGhlIG1haW4gcmVwb3NpdG9yeSBzZWVtcyBkb3duLCB0cnkgdXNpbmcgdGhlIGdpdmVuIG1pcnJvcnMiIiIKKyAgICAgICAgc2VydmVyID0gUHlQSVNlcnZlcigiZm9vX2Jhcl9iYXoiKQorICAgICAgICBtaXJyb3IgPSBQeVBJU2VydmVyKCJmb29fYmFyX2JheiIpCisgICAgICAgIG1pcnJvci5zdGFydCgpICAjIHdlIGRvbnQgc3RhcnQgdGhlIHNlcnZlciBoZXJlCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBjcmVhdGUgdGhlIGluZGV4IHVzaW5nIGJvdGggc2VydmVycworICAgICAgICAgICAgY3Jhd2xlciA9IENyYXdsZXIoc2VydmVyLmZ1bGxfYWRkcmVzcyArICIvc2ltcGxlLyIsIGhvc3RzPSgnKicsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgc2V0IHRoZSB0aW1lb3V0IHRvIDFzIGZvciB0aGUgdGVzdHMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9MSwgbWlycm9ycz1bbWlycm9yLmZ1bGxfYWRkcmVzc10pCisKKyAgICAgICAgICAgICMgdGhpcyBzaG91bGQgbm90IHJhaXNlIGEgdGltZW91dAorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg0LCBsZW4oY3Jhd2xlci5nZXRfcmVsZWFzZXMoImZvbyIpKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG1pcnJvci5zdG9wKCkKKyAgICAgICAgICAgIHNlcnZlci5zdG9wKCkKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9saW5rX21hdGNoZXIoc2VsZik6CisgICAgICAgICMgVGVzdCB0aGF0IHRoZSBzaW1wbGUgbGluayBtYXRjaGVyIGZpbmRzIHRoZSByaWdodCBsaW5rcyIiIgorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcihmb2xsb3dfZXh0ZXJuYWxzPUZhbHNlKQorCisgICAgICAgICMgSGVyZSwgd2UgZGVmaW5lOgorICAgICAgICAjICAgMS4gb25lIGxpbmsgdGhhdCBtdXN0IGJlIGZvbGxvd2VkLCBjYXVzZSBpdCdzIGEgZG93bmxvYWQgb25lCisgICAgICAgICMgICAyLiBvbmUgbGluayB0aGF0IG11c3QgKm5vdCogYmUgZm9sbG93ZWQsIGNhdXNlIHRoZSBpc19icm93c2FibGUKKyAgICAgICAgIyAgICAgIHJldHVybnMgZmFsc2UgZm9yIGl0LgorICAgICAgICAjICAgMy4gb25lIGxpbmsgdGhhdCBtdXN0IGJlIGZvbGxvd2VkIGNhdXNlIGl0J3MgYSBob21lcGFnZSB0aGF0IGlzCisgICAgICAgICMgICAgICBicm93c2FibGUKKyAgICAgICAgIyAgIDQuIG9uZSBsaW5rIHRoYXQgbXVzdCBiZSBmb2xsb3dlZCwgYmVjYXVzZSBpdCBjb250YWluIGEgbWQ1IGhhc2gKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSgiJXN0ZXN0IiAlIGNyYXdsZXIuaW5kZXhfdXJsKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShjcmF3bGVyLl9pc19icm93c2FibGUoImh0dHA6Ly9kbC1saW5rMiIpKQorICAgICAgICBjb250ZW50ID0gIiIiCisgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9kbC1saW5rMSIgcmVsPSJkb3dubG9hZCI+ZG93bmxvYWRfbGluazE8L2E+CisgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9kbC1saW5rMiIgcmVsPSJob21lcGFnZSI+aG9tZXBhZ2VfbGluazE8L2E+CisgICAgICAgIDxhIGhyZWY9IiUoaW5kZXhfdXJsKXN0ZXN0IiByZWw9ImhvbWVwYWdlIj5ob21lcGFnZV9saW5rMjwvYT4KKyAgICAgICAgPGEgaHJlZj0iJShpbmRleF91cmwpc3Rlc3QvZm9vYmFyLTEudGFyLmd6I21kNT1hYmNkZWY+ZG93bmxvYWRfbGluazI8L2E+CisgICAgICAgICIiIiAlIHsnaW5kZXhfdXJsJzogY3Jhd2xlci5pbmRleF91cmx9CisKKyAgICAgICAgIyBUZXN0IHRoYXQgdGhlIHNpbXBsZSBsaW5rIG1hdGNoZXIgeWllbGQgdGhlIGdvb2QgbGlua3MuCisgICAgICAgIGdlbmVyYXRvciA9IGNyYXdsZXIuX3NpbXBsZV9saW5rX21hdGNoZXIoY29udGVudCwgY3Jhd2xlci5pbmRleF91cmwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCclc3Rlc3QvZm9vYmFyLTEudGFyLmd6I21kNT1hYmNkZWYnICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY3Jhd2xlci5pbmRleF91cmwsIFRydWUpLCBuZXh0KGdlbmVyYXRvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCdodHRwOi8vZGwtbGluazEnLCBUcnVlKSwgbmV4dChnZW5lcmF0b3IpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgnJXN0ZXN0JyAlIGNyYXdsZXIuaW5kZXhfdXJsLCBGYWxzZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgbmV4dChnZW5lcmF0b3IpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTdG9wSXRlcmF0aW9uLCBnZW5lcmF0b3IuX19uZXh0X18pCisKKyAgICAgICAgIyBGb2xsb3cgdGhlIGV4dGVybmFsIGxpbmtzIGlzIHBvc3NpYmxlIChlZy4gaG9tZXBhZ2VzKQorICAgICAgICBjcmF3bGVyLmZvbGxvd19leHRlcm5hbHMgPSBUcnVlCisgICAgICAgIGdlbmVyYXRvciA9IGNyYXdsZXIuX3NpbXBsZV9saW5rX21hdGNoZXIoY29udGVudCwgY3Jhd2xlci5pbmRleF91cmwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCclc3Rlc3QvZm9vYmFyLTEudGFyLmd6I21kNT1hYmNkZWYnICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY3Jhd2xlci5pbmRleF91cmwsIFRydWUpLCBuZXh0KGdlbmVyYXRvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCdodHRwOi8vZGwtbGluazEnLCBUcnVlKSwgbmV4dChnZW5lcmF0b3IpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgnaHR0cDovL2RsLWxpbmsyJywgRmFsc2UpLCBuZXh0KGdlbmVyYXRvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCclc3Rlc3QnICUgY3Jhd2xlci5pbmRleF91cmwsIEZhbHNlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBuZXh0KGdlbmVyYXRvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFN0b3BJdGVyYXRpb24sIGdlbmVyYXRvci5fX25leHRfXykKKworICAgIGRlZiB0ZXN0X2Jyb3dzZV9sb2NhbF9maWxlcyhzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoYXQgd2UgY2FuIGJyb3dzZSBsb2NhbCBmaWxlcyIiIgorICAgICAgICBpbmRleF91cmwgPSAiZmlsZTovLyIgKyBQWVBJX0RFRkFVTFRfU1RBVElDX1BBVEgKKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgICAgICAgICAjIHVuZGVyIHdpbmRvd3MgdGhlIGNvcnJlY3Qgc3ludGF4IGlzOgorICAgICAgICAgICAgIyAgIGZpbGU6Ly8vQ3xcdGhlXHBhdGhcaGVyZQorICAgICAgICAgICAgIyBpbnN0ZWFkIG9mCisgICAgICAgICAgICAjICAgZmlsZTovL0M6XHRoZVxwYXRoXGhlcmUKKyAgICAgICAgICAgIGZpeCA9IHJlLmNvbXBpbGUocideKGZpbGU6Ly8pKFtBLVphLXpdKSg6KScpCisgICAgICAgICAgICBpbmRleF91cmwgPSBmaXguc3ViKCdcXDEvXFwyfCcsIGluZGV4X3VybCkKKworICAgICAgICBpbmRleF9wYXRoID0gb3Muc2VwLmpvaW4oW2luZGV4X3VybCwgInRlc3RfZm91bmRfbGlua3MiLCAic2ltcGxlIl0pCisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKGluZGV4X3BhdGgpCisgICAgICAgIGRpc3RzID0gY3Jhd2xlci5nZXRfcmVsZWFzZXMoImZvb2JhciIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoNCwgbGVuKGRpc3RzKSkKKworICAgIGRlZiB0ZXN0X2dldF9saW5rX21hdGNoZXIoc2VsZik6CisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKCJodHRwOi8vZXhhbXBsZS5vcmciKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdfc2ltcGxlX2xpbmtfbWF0Y2hlcicsIGNyYXdsZXIuX2dldF9saW5rX21hdGNoZXIoCisgICAgICAgICAgICAgICAgICAgICAgICAgImh0dHA6Ly9leGFtcGxlLm9yZy9zb21lL2ZpbGUiKS5fX25hbWVfXykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnX2RlZmF1bHRfbGlua19tYXRjaGVyJywgY3Jhd2xlci5fZ2V0X2xpbmtfbWF0Y2hlcigKKyAgICAgICAgICAgICAgICAgICAgICAgICAiaHR0cDovL290aGVyLXVybCIpLl9fbmFtZV9fKQorCisgICAgZGVmIHRlc3RfZGVmYXVsdF9saW5rX21hdGNoZXIoc2VsZik6CisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKCJodHRwOi8vZXhhbXBsZS5vcmciLCBtaXJyb3JzPVtdKQorICAgICAgICBjcmF3bGVyLmZvbGxvd19leHRlcm5hbHMgPSBUcnVlCisgICAgICAgIGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSA9IGxhbWJkYSAqYXJnczogVHJ1ZQorICAgICAgICBiYXNlX3VybCA9ICJodHRwOi8vZXhhbXBsZS5vcmcvc29tZS9maWxlLyIKKyAgICAgICAgY29udGVudCA9ICIiIgorPGEgaHJlZj0iLi4vaG9tZXBhZ2UiIHJlbD0iaG9tZXBhZ2UiPmxpbms8L2E+Cis8YSBocmVmPSIuLi9kb3dubG9hZCIgcmVsPSJkb3dubG9hZCI+bGluazI8L2E+Cis8YSBocmVmPSIuLi9zaW1wbGV1cmwiPmxpbmsyPC9hPgorICAgICAgICAiIiIKKyAgICAgICAgZm91bmRfbGlua3MgPSBzZXQodXJpIGZvciB1cmksIF8gaW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgY3Jhd2xlci5fZGVmYXVsdF9saW5rX21hdGNoZXIoY29udGVudCwgYmFzZV91cmwpKQorICAgICAgICBzZWxmLmFzc2VydEluKCdodHRwOi8vZXhhbXBsZS5vcmcvc29tZS9ob21lcGFnZScsIGZvdW5kX2xpbmtzKQorICAgICAgICBzZWxmLmFzc2VydEluKCdodHRwOi8vZXhhbXBsZS5vcmcvc29tZS9zaW1wbGV1cmwnLCBmb3VuZF9saW5rcykKKyAgICAgICAgc2VsZi5hc3NlcnRJbignaHR0cDovL2V4YW1wbGUub3JnL3NvbWUvZG93bmxvYWQnLCBmb3VuZF9saW5rcykKKworICAgIEB1bml0dGVzdC5za2lwSWYoX3RocmVhZCBpcyBOb25lLCAnbmVlZHMgdGhyZWFkcycpCisgICAgQHVzZV9weXBpX3NlcnZlcigicHJvamVjdF9saXN0IikKKyAgICBkZWYgdGVzdF9zZWFyY2hfcHJvamVjdHMoc2VsZiwgc2VydmVyKToKKyAgICAgICAgIyB3ZSBjYW4gc2VhcmNoIHRoZSBpbmRleCBmb3Igc29tZSBwcm9qZWN0cywgb24gdGhlaXIgbmFtZXMKKyAgICAgICAgIyB0aGUgY2FzZSB1c2VkIG5vIG1hdHRlcnMgaGVyZQorICAgICAgICBjcmF3bGVyID0gc2VsZi5fZ2V0X3NpbXBsZV9jcmF3bGVyKHNlcnZlcikKKyAgICAgICAgdGVzdHMgPSAoKCdGb29iYXInLCBbJ0Zvb0Jhci1iYXInLCAnRm9vYmFyLWJheicsICdCYXotRm9vQmFyJ10pLAorICAgICAgICAgICAgICAgICAoJ2Zvb2JhcionLCBbJ0Zvb0Jhci1iYXInLCAnRm9vYmFyLWJheiddKSwKKyAgICAgICAgICAgICAgICAgKCcqZm9vYmFyJywgWydCYXotRm9vQmFyJ10pKQorCisgICAgICAgIGZvciBzZWFyY2gsIGV4cGVjdGVkIGluIHRlc3RzOgorICAgICAgICAgICAgcHJvamVjdHMgPSBbcC5uYW1lIGZvciBwIGluIGNyYXdsZXIuc2VhcmNoX3Byb2plY3RzKHNlYXJjaCldCisgICAgICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChleHBlY3RlZCwgcHJvamVjdHMpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKFNpbXBsZUNyYXdsZXJUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3htbHJwYy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3htbHJwYy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iN2IzODJkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3B5cGlfeG1scnBjLnB5CkBAIC0wLDAgKzEsMTAxIEBACisiIiJUZXN0cyBmb3IgdGhlIHBhY2thZ2luZy5weXBpLnhtbHJwYyBtb2R1bGUuIiIiCisKK2Zyb20gcGFja2FnaW5nLnB5cGkueG1scnBjIGltcG9ydCBDbGllbnQsIEludmFsaWRTZWFyY2hGaWVsZCwgUHJvamVjdE5vdEZvdW5kCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdAorZnJvbSBwYWNrYWdpbmcudGVzdHMuc3VwcG9ydCBpbXBvcnQgZmFrZV9kZWMKKwordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgdXNlX3htbHJwY19zZXJ2ZXIKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICB0aHJlYWRpbmcgPSBOb25lCisgICAgdXNlX3htbHJwY19zZXJ2ZXIgPSBmYWtlX2RlYworCisKK0B1bml0dGVzdC5za2lwSWYodGhyZWFkaW5nIGlzIE5vbmUsICJOZWVkcyB0aHJlYWRpbmciKQorY2xhc3MgVGVzdFhNTFJQQ0NsaWVudCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIF9nZXRfY2xpZW50KHNlbGYsIHNlcnZlciwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmV0dXJuIENsaWVudChzZXJ2ZXIuZnVsbF9hZGRyZXNzLCAqYXJncywgKiprd2FyZ3MpCisKKyAgICBAdXNlX3htbHJwY19zZXJ2ZXIoKQorICAgIGRlZiB0ZXN0X3NlYXJjaF9wcm9qZWN0cyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfc2VhcmNoX3Jlc3VsdChbJ0Zvb0JhcicsICdGb28nLCAnRm9vRm9vJ10pCisgICAgICAgIHJlc3VsdHMgPSBbci5uYW1lIGZvciByIGluIGNsaWVudC5zZWFyY2hfcHJvamVjdHMobmFtZT0nRm9vJyldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMywgbGVuKHJlc3VsdHMpKQorICAgICAgICBzZWxmLmFzc2VydEluKCdGb29CYXInLCByZXN1bHRzKQorICAgICAgICBzZWxmLmFzc2VydEluKCdGb28nLCByZXN1bHRzKQorICAgICAgICBzZWxmLmFzc2VydEluKCdGb29Gb28nLCByZXN1bHRzKQorCisgICAgZGVmIHRlc3Rfc2VhcmNoX3Byb2plY3RzX2JhZF9maWVsZHMoc2VsZik6CisgICAgICAgIGNsaWVudCA9IENsaWVudCgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEludmFsaWRTZWFyY2hGaWVsZCwgY2xpZW50LnNlYXJjaF9wcm9qZWN0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaW52YWxpZD0idGVzdCIpCisKKyAgICBAdXNlX3htbHJwY19zZXJ2ZXIoKQorICAgIGRlZiB0ZXN0X2dldF9yZWxlYXNlcyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfZGlzdHJpYnV0aW9ucyhbCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywgJ3ZlcnNpb24nOiAnMS4xJ30sCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywgJ3ZlcnNpb24nOiAnMS4yJywgJ3VybCc6ICdodHRwOi8vc29tZS91cmwvJ30sCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywgJ3ZlcnNpb24nOiAnMS4zJywgJ3VybCc6ICdodHRwOi8vb3RoZXIvdXJsLyd9LAorICAgICAgICBdKQorCisgICAgICAgICMgdXNlIGEgbGFtYmRhIGhlcmUgdG8gYXZvaWQgYW4gdXNlbGVzcyBtb2NrIGNhbGwKKyAgICAgICAgc2VydmVyLnhtbHJwYy5saXN0X3JlbGVhc2VzID0gbGFtYmRhICphLCAqKms6IFsnMS4xJywgJzEuMicsICcxLjMnXQorCisgICAgICAgIHJlbGVhc2VzID0gY2xpZW50LmdldF9yZWxlYXNlcygnRm9vQmFyICg8PTEuMiknKQorICAgICAgICAjIGRvbnQgY2FsbCByZWxlYXNlX2RhdGEgYW5kIHJlbGVhc2VfdXJsOyBqdXN0IHJldHVybiBuYW1lIGFuZCB2ZXJzaW9uLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihyZWxlYXNlcykpCisgICAgICAgIHZlcnNpb25zID0gcmVsZWFzZXMuZ2V0X3ZlcnNpb25zKCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignMS4xJywgdmVyc2lvbnMpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJzEuMicsIHZlcnNpb25zKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKCcxLjMnLCB2ZXJzaW9ucykKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQcm9qZWN0Tm90Rm91bmQsIGNsaWVudC5nZXRfcmVsZWFzZXMsICdGb28nKQorCisgICAgQHVzZV94bWxycGNfc2VydmVyKCkKKyAgICBkZWYgdGVzdF9nZXRfZGlzdHJpYnV0aW9ucyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfZGlzdHJpYnV0aW9ucyhbCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywgJ3ZlcnNpb24nOiAnMS4xJywKKyAgICAgICAgICAgICAndXJsJzogJ2h0dHA6Ly9leGFtcGxlLm9yZy9mb29iYXItMS4xLXNkaXN0LnRhci5neicsCisgICAgICAgICAgICAgJ2RpZ2VzdCc6ICcxMjM0NTY3JywKKyAgICAgICAgICAgICAndHlwZSc6ICdzZGlzdCcsICdweXRob25fdmVyc2lvbic6ICdzb3VyY2UnfSwKKyAgICAgICAgICAgIHsnbmFtZSc6J0Zvb0JhcicsICd2ZXJzaW9uJzogJzEuMScsCisgICAgICAgICAgICAgJ3VybCc6ICdodHRwOi8vZXhhbXBsZS5vcmcvZm9vYmFyLTEuMS1iZGlzdC50YXIuZ3onLAorICAgICAgICAgICAgICdkaWdlc3QnOiAnODkxMjM0NScsICd0eXBlJzogJ2JkaXN0J30sCisgICAgICAgIF0pCisKKyAgICAgICAgcmVsZWFzZXMgPSBjbGllbnQuZ2V0X3JlbGVhc2VzKCdGb29CYXInLCAnMS4xJykKKyAgICAgICAgY2xpZW50LmdldF9kaXN0cmlidXRpb25zKCdGb29CYXInLCAnMS4xJykKKyAgICAgICAgcmVsZWFzZSA9IHJlbGVhc2VzLmdldF9yZWxlYXNlKCcxLjEnKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoJ2h0dHA6Ly9leGFtcGxlLm9yZy9mb29iYXItMS4xLXNkaXN0LnRhci5neicsCisgICAgICAgICAgICAgICAgICAgICAgICByZWxlYXNlWydzZGlzdCddLnVybFsndXJsJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnaHR0cDovL2V4YW1wbGUub3JnL2Zvb2Jhci0xLjEtYmRpc3QudGFyLmd6JywKKyAgICAgICAgICAgICAgICByZWxlYXNlWydiZGlzdCddLnVybFsndXJsJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVsZWFzZVsnc2Rpc3QnXS5weXRob25fdmVyc2lvbiwgJ3NvdXJjZScpCisKKyAgICBAdXNlX3htbHJwY19zZXJ2ZXIoKQorICAgIGRlZiB0ZXN0X2dldF9tZXRhZGF0YShzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfZGlzdHJpYnV0aW9ucyhbCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcxLjEnLAorICAgICAgICAgICAgICdrZXl3b3Jkcyc6ICcnLAorICAgICAgICAgICAgICdvYnNvbGV0ZXNfZGlzdCc6IFsnRm9vRm9vJ10sCisgICAgICAgICAgICAgJ3JlcXVpcmVzX2V4dGVybmFsJzogWydGb28nXSwKKyAgICAgICAgICAgIH1dKQorICAgICAgICByZWxlYXNlID0gY2xpZW50LmdldF9tZXRhZGF0YSgnRm9vQmFyJywgJzEuMScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydGb28nXSwgcmVsZWFzZS5tZXRhZGF0YVsncmVxdWlyZXNfZXh0ZXJuYWwnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0Zvb0ZvbyddLCByZWxlYXNlLm1ldGFkYXRhWydvYnNvbGV0ZXNfZGlzdCddKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgc3VpdGUgPSB1bml0dGVzdC5UZXN0U3VpdGUoKQorICAgIHN1aXRlLmFkZFRlc3QodW5pdHRlc3QubWFrZVN1aXRlKFRlc3RYTUxSUENDbGllbnQpKQorICAgIHJldHVybiBzdWl0ZQorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3Rlc3Rfc3VpdGUnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3J1bi5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9ydW4ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTRlN2IwNwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9ydW4ucHkKQEAgLTAsMCArMSw5MiBAQAorIiIiVGVzdHMgZm9yIHBhY2thZ2luZy5ydW4uIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGluc3RhbGwKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorZnJvbSBwYWNrYWdpbmcucnVuIGltcG9ydCBtYWluCisKK2Zyb20gdGVzdC5zY3JpcHRfaGVscGVyIGltcG9ydCBhc3NlcnRfcHl0aG9uX29rCisKKyMgc2V0dXAgc2NyaXB0IHRoYXQgdXNlcyBfX2ZpbGVfXworc2V0dXBfdXNpbmdfX19maWxlX18gPSAiIiJcCitfX2ZpbGVfXworCitmcm9tIHBhY2thZ2luZy5ydW4gaW1wb3J0IHNldHVwCitzZXR1cCgpCisiIiIKKworc2V0dXBfcHJpbnRzX2N3ZCA9ICIiIlwKK2ltcG9ydCBvcworcHJpbnQgb3MuZ2V0Y3dkKCkKKworZnJvbSBwYWNrYWdpbmcucnVuIGltcG9ydCBzZXR1cAorc2V0dXAoKQorIiIiCisKKworY2xhc3MgUnVuVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFJ1blRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYub2xkX2FyZ3YgPSBzeXMuYXJndiwgc3lzLmFyZ3ZbOl0KKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc3lzLmFyZ3YgPSBzZWxmLm9sZF9hcmd2WzBdCisgICAgICAgIHN5cy5hcmd2WzpdID0gc2VsZi5vbGRfYXJndlsxXQorICAgICAgICBzdXBlcihSdW5UZXN0Q2FzZSwgc2VsZikudGVhckRvd24oKQorCisgICAgIyBUT0RPIHJlc3RvcmUgdGhlIHRlc3RzIHJlbW92ZWQgc2l4IG1vbnRocyBhZ28gYW5kIHBvcnQgdGhlbSB0byBweXNldHVwCisKKyAgICBkZWYgdGVzdF9pbnN0YWxsKHNlbGYpOgorICAgICAgICAjIG1ha2luZyBzdXJlIGluc3RhbGwgcmV0dXJucyAwIG9yIDEgZXhpdCBjb2RlcworICAgICAgICBwcm9qZWN0ID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICdwYWNrYWdlLnRneicpCisgICAgICAgIGluc3RhbGxfcGF0aCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG9sZF9nZXRfcGF0aCA9IGluc3RhbGwuZ2V0X3BhdGgKKyAgICAgICAgaW5zdGFsbC5nZXRfcGF0aCA9IGxhbWJkYSBwYXRoOiBpbnN0YWxsX3BhdGgKKyAgICAgICAgb2xkX21vZCA9IG9zLnN0YXQoaW5zdGFsbF9wYXRoKS5zdF9tb2RlCisgICAgICAgIG9zLmNobW9kKGluc3RhbGxfcGF0aCwgMCkKKyAgICAgICAgb2xkX3N0ZGVyciA9IHN5cy5zdGRlcnIKKyAgICAgICAgc3lzLnN0ZGVyciA9IFN0cmluZ0lPKCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpbnN0YWxsLmluc3RhbGwocHJvamVjdCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1haW4oWydpbnN0YWxsJywgJ2JsYWJsYSddKSwgMSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHN5cy5zdGRlcnIgPSBvbGRfc3RkZXJyCisgICAgICAgICAgICBvcy5jaG1vZChpbnN0YWxsX3BhdGgsIG9sZF9tb2QpCisgICAgICAgICAgICBpbnN0YWxsLmdldF9wYXRoID0gb2xkX2dldF9wYXRoCisKKyAgICBkZWYgdGVzdF9zaG93X2hlbHAoc2VsZik6CisgICAgICAgICMgc21va2UgdGVzdCwganVzdCBtYWtlcyBzdXJlIHNvbWUgaGVscCBpcyBkaXNwbGF5ZWQKKyAgICAgICAgc3RhdHVzLCBvdXQsIGVyciA9IGFzc2VydF9weXRob25fb2soJy1tJywgJ3BhY2thZ2luZy5ydW4nLCAnLS1oZWxwJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGF0dXMsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihvdXQsIGInJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlcnIsIGInJykKKworICAgIGRlZiB0ZXN0X2xpc3RfY29tbWFuZHMoc2VsZik6CisgICAgICAgIHN0YXR1cywgb3V0LCBlcnIgPSBhc3NlcnRfcHl0aG9uX29rKCctbScsICdwYWNrYWdpbmcucnVuJywgJ3J1bicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICctLWxpc3QtY29tbWFuZHMnKQorICAgICAgICAjIGNoZWNrIHRoYXQgc29tZXRoaW5nIGlzIGRpc3BsYXllZAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0YXR1cywgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKG91dCwgYicnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVyciwgYicnKQorCisgICAgICAgICMgbWFrZSBzdXJlIHRoZSBtYW51YWwgZ3JvdXBpbmcgb2YgY29tbWFuZHMgaXMgcmVzcGVjdGVkCisgICAgICAgIGNoZWNrX3Bvc2l0aW9uID0gb3V0LmZpbmQoYicgIGNoZWNrOiAnKQorICAgICAgICBidWlsZF9wb3NpdGlvbiA9IG91dC5maW5kKGInICBidWlsZDogJykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNoZWNrX3Bvc2l0aW9uLCBvdXQpICAjICJvdXQiIHByaW50ZWQgYXMgZGVidWdnaW5nIGFpZAorICAgICAgICBzZWxmLmFzc2VydFRydWUoYnVpbGRfcG9zaXRpb24sIG91dCkKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzKGNoZWNrX3Bvc2l0aW9uLCBidWlsZF9wb3NpdGlvbiwgb3V0KQorCisgICAgICAgICMgVE9ETyB0ZXN0IHRoYXQgY3VzdG9tIGNvbW1hbmRzIGRvbid0IGJyZWFrIC0tbGlzdC1jb21tYW5kcworCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShSdW5UZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9zdXBwb3J0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3N1cHBvcnQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGFlOWUxYgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9zdXBwb3J0LnB5CkBAIC0wLDAgKzEsNzggQEAKK2ltcG9ydCBvcworaW1wb3J0IHRlbXBmaWxlCisKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHN1cHBvcnQsIHVuaXR0ZXN0CisKKworY2xhc3MgVGVzdGluZ1N1cHBvcnRUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9mYWtlX2RlYyhzZWxmKToKKyAgICAgICAgQHN1cHBvcnQuZmFrZV9kZWMoMSwgMiwgaz0zKQorICAgICAgICBkZWYgZnVuYyhhcmcwLCAqYXJncywgKiprYXJncyk6CisgICAgICAgICAgICByZXR1cm4gYXJnMCwgYXJncywga2FyZ3MKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdW5jKC0xLCAtMiwgaz0tMyksICgtMSwgKC0yLCksIHsnayc6IC0zfSkpCisKKyAgICBkZWYgdGVzdF9UZW1wZGlyTWFuYWdlcihzZWxmKToKKyAgICAgICAgZmlsZXMgPSB7fQorCisgICAgICAgIGNsYXNzIFRlc3RlcihzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLCB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICAgICAgICAgIGRlZiB0ZXN0X21rdGVtcGZpbGUoc2VsZjIpOgorICAgICAgICAgICAgICAgIHRtcGZpbGUgPSBzZWxmMi5ta3RlbXBmaWxlKCkKKyAgICAgICAgICAgICAgICBmaWxlc1sndGVzdF9ta3RlbXBmaWxlJ10gPSB0bXBmaWxlLm5hbWUKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2ZpbGUodG1wZmlsZS5uYW1lKSkKKworICAgICAgICAgICAgZGVmIHRlc3RfbWtkdGVtcChzZWxmMik6CisgICAgICAgICAgICAgICAgdG1wZGlyID0gc2VsZjIubWtkdGVtcCgpCisgICAgICAgICAgICAgICAgZmlsZXNbJ3Rlc3RfbWtkdGVtcCddID0gdG1wZGlyCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNkaXIodG1wZGlyKSkKKworICAgICAgICAgICAgZGVmIHRlc3Rfd3JpdGVfZmlsZShzZWxmMik6CisgICAgICAgICAgICAgICAgdG1wZGlyID0gc2VsZjIubWtkdGVtcCgpCisgICAgICAgICAgICAgICAgZmlsZXNbJ3Rlc3Rfd3JpdGVfZmlsZSddID0gdG1wZGlyCisgICAgICAgICAgICAgICAgc2VsZjIud3JpdGVfZmlsZSgodG1wZGlyLCAnZmlsZTEnKSwgJ21lIGZpbGUgMScpCisgICAgICAgICAgICAgICAgZmlsZTEgPSBvcy5wYXRoLmpvaW4odG1wZGlyLCAnZmlsZTEnKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShmaWxlMSkpCisgICAgICAgICAgICAgICAgdGV4dCA9ICcnCisgICAgICAgICAgICAgICAgd2l0aCBvcGVuKGZpbGUxLCAncicpIGFzIGY6CisgICAgICAgICAgICAgICAgICAgIHRleHQgPSBmLnJlYWQoKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgJ21lIGZpbGUgMScpCisKKyAgICAgICAgICAgIGRlZiB0ZXN0X2NyZWF0ZV9kaXN0KHNlbGYyKToKKyAgICAgICAgICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYyLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgICAgICAgICBmaWxlc1sndGVzdF9jcmVhdGVfZGlzdCddID0gcHJvamVjdF9kaXIKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2Rpcihwcm9qZWN0X2RpcikpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGRpc3QsIERpc3RyaWJ1dGlvbikKKworICAgICAgICAgICAgZGVmIHRlc3RfYXNzZXJ0SXNGaWxlKHNlbGYyKToKKyAgICAgICAgICAgICAgICBmZCwgZm4gPSB0ZW1wZmlsZS5ta3N0ZW1wKCkKKyAgICAgICAgICAgICAgICBvcy5jbG9zZShmZCkKKyAgICAgICAgICAgICAgICBzZWxmLmFkZENsZWFudXAoc3VwcG9ydC51bmxpbmssIGZuKQorICAgICAgICAgICAgICAgIHNlbGYyLmFzc2VydElzRmlsZShmbikKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhBc3NlcnRpb25FcnJvciwgc2VsZjIuYXNzZXJ0SXNGaWxlLCAnZm9PJykKKworICAgICAgICAgICAgZGVmIHRlc3RfYXNzZXJ0SXNOb3RGaWxlKHNlbGYyKToKKyAgICAgICAgICAgICAgICB0bXBkaXIgPSBzZWxmMi5ta2R0ZW1wKCkKKyAgICAgICAgICAgICAgICBzZWxmMi5hc3NlcnRJc05vdEZpbGUodG1wZGlyKQorCisgICAgICAgIHRlc3RlciA9IFRlc3RlcigpCisgICAgICAgIGZvciBuYW1lIGluICgndGVzdF9ta3RlbXBmaWxlJywgJ3Rlc3RfbWtkdGVtcCcsICd0ZXN0X3dyaXRlX2ZpbGUnLAorICAgICAgICAgICAgICAgICAgICAgJ3Rlc3RfY3JlYXRlX2Rpc3QnLCAndGVzdF9hc3NlcnRJc0ZpbGUnLAorICAgICAgICAgICAgICAgICAgICAgJ3Rlc3RfYXNzZXJ0SXNOb3RGaWxlJyk6CisgICAgICAgICAgICB0ZXN0ZXIuc2V0VXAoKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGdldGF0dHIodGVzdGVyLCBuYW1lKSgpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRlc3Rlci50ZWFyRG93bigpCisKKyAgICAgICAgICAgICMgY2hlY2sgY2xlYW4tdXAKKyAgICAgICAgICAgIGlmIG5hbWUgaW4gZmlsZXM6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhmaWxlc1tuYW1lXSkpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKFRlc3RpbmdTdXBwb3J0VGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfdW5pbnN0YWxsLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3VuaW5zdGFsbC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMGQ5YmE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3VuaW5zdGFsbC5weQpAQCAtMCwwICsxLDEyNCBAQAorIiIiVGVzdHMgZm9yIHRoZSBwYWNrYWdpbmcudW5pbnN0YWxsIG1vZHVsZS4iIiIKK2ltcG9ydCBvcworaW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCBwYWNrYWdpbmcudXRpbAorCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0Vycm9yCitmcm9tIHBhY2thZ2luZy5pbnN0YWxsIGltcG9ydCByZW1vdmUKK2Zyb20gcGFja2FnaW5nLmRhdGFiYXNlIGltcG9ydCBkaXNhYmxlX2NhY2hlLCBlbmFibGVfY2FjaGUKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKK1NFVFVQX0NGRyA9ICIiIgorW21ldGFkYXRhXQorbmFtZSA9ICUobmFtZSlzCit2ZXJzaW9uID0gJSh2ZXJzaW9uKXMKKworW2ZpbGVzXQorcGFja2FnZXMgPQorICAgICUocGtnKXMKKyAgICAlKHBrZylzLnN1YgorIiIiCisKKworY2xhc3MgVW5pbnN0YWxsVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnUExBVCddCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFVuaW5zdGFsbFRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChlbmFibGVfY2FjaGUpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChwYWNrYWdpbmcudXRpbC5fcGF0aF9jcmVhdGVkLmNsZWFyKQorICAgICAgICBkaXNhYmxlX2NhY2hlKCkKKworICAgIGRlZiBnZXRfcGF0aChzZWxmLCBkaXN0LCBuYW1lKToKKyAgICAgICAgIyB0aGUgZGlzdCBhcmd1bWVudCBtdXN0IGNvbnRhaW4gYW4gaW5zdGFsbF9kaXN0IGNvbW1hbmQgY29ycmVjdGx5CisgICAgICAgICMgaW5pdGlhbGl6ZWQgd2l0aCBhIHByZWZpeCBvcHRpb24gYW5kIGZpbmFsaXplZCBiZWZvcmVkIHRoaXMgbWV0aG9kCisgICAgICAgICMgY2FuIGJlIGNhbGxlZCBzdWNjZXNzZnVsbHk7IHByYWN0aWNhbGx5LCB0aGlzIG1lYW5zIHRoYXQgeW91IHNob3VsZAorICAgICAgICAjIGNhbGwgc2VsZi5pbnN0YWxsX2Rpc3QgYmVmb3JlIHNlbGYuZ2V0X3BhdGgKKyAgICAgICAgY21kID0gZGlzdC5nZXRfY29tbWFuZF9vYmooJ2luc3RhbGxfZGlzdCcpCisgICAgICAgIHJldHVybiBnZXRhdHRyKGNtZCwgJ2luc3RhbGxfJyArIG5hbWUpCisKKyAgICBkZWYgbWFrZV9kaXN0KHNlbGYsIG5hbWU9J0ZvbycsICoqa3cpOgorICAgICAgICBrd1snbmFtZSddID0gbmFtZQorICAgICAgICBwa2cgPSBuYW1lLmxvd2VyKCkKKyAgICAgICAgaWYgJ3ZlcnNpb24nIG5vdCBpbiBrdzoKKyAgICAgICAgICAgIGt3Wyd2ZXJzaW9uJ10gPSAnMC4xJworICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKiprdykKKyAgICAgICAga3dbJ3BrZyddID0gcGtnCisKKyAgICAgICAgcGtnX2RpciA9IG9zLnBhdGguam9pbihwcm9qZWN0X2RpciwgcGtnKQorICAgICAgICBvcy5tYWtlZGlycyhvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ3N1YicpKQorCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocHJvamVjdF9kaXIsICdzZXR1cC5jZmcnKSwgU0VUVVBfQ0ZHICUga3cpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnX2RpciwgJ19faW5pdF9fLnB5JyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2dfZGlyLCBwa2cgKyAnX3V0aWxzLnB5JyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2dfZGlyLCAnc3ViJywgJ19faW5pdF9fLnB5JyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2dfZGlyLCAnc3ViJywgcGtnICsgJ191dGlscy5weScpLCAnIycpCisKKyAgICAgICAgcmV0dXJuIHByb2plY3RfZGlyCisKKyAgICBkZWYgaW5zdGFsbF9kaXN0KHNlbGYsIG5hbWU9J0ZvbycsIGRpcm5hbWU9Tm9uZSwgKiprdyk6CisgICAgICAgIGlmIG5vdCBkaXJuYW1lOgorICAgICAgICAgICAgZGlybmFtZSA9IHNlbGYubWFrZV9kaXN0KG5hbWUsICoqa3cpCisgICAgICAgIG9zLmNoZGlyKGRpcm5hbWUpCisKKyAgICAgICAgZGlzdCA9IHN1cHBvcnQuVGVzdERpc3RyaWJ1dGlvbigpCisgICAgICAgICMgZm9yIHNvbWUgdW5mYXRob21hYmxlIHJlYXNvbiwgdGhlIHRlc3RzIHdpbGwgZmFpbCBob3JyaWJseSBpZiB0aGUKKyAgICAgICAgIyBwYXJzZV9jb25maWdfZmlsZXMgbWV0aG9kIGlzIG5vdCBjYWxsZWQsIGV2ZW4gaWYgaXQgZG9lc24ndCBkbworICAgICAgICAjIGFueXRoaW5nIHVzZWZ1bDsgdHJ5aW5nIHRvIGJ1aWxkIGFuZCB1c2UgYSBjb21tYW5kIG9iamVjdCBtYW51YWxseQorICAgICAgICAjIGFsc28gZmFpbHMKKyAgICAgICAgZGlzdC5wYXJzZV9jb25maWdfZmlsZXMoKQorICAgICAgICBkaXN0LmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBkaXN0LnJ1bl9jb21tYW5kKCdpbnN0YWxsX2Rpc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgIHsncHJlZml4JzogKCdjb21tYW5kIGxpbmUnLCBzZWxmLm1rZHRlbXAoKSl9KQorCisgICAgICAgIHNpdGVfcGFja2FnZXMgPSBzZWxmLmdldF9wYXRoKGRpc3QsICdwdXJlbGliJykKKyAgICAgICAgcmV0dXJuIGRpc3QsIHNpdGVfcGFja2FnZXMKKworICAgIGRlZiB0ZXN0X3VuaW5zdGFsbF91bmtub3duX2Rpc3RyaWJ1dGlvbihzZWxmKToKKyAgICAgICAgZGlzdCwgc2l0ZV9wYWNrYWdlcyA9IHNlbGYuaW5zdGFsbF9kaXN0KCdGb29zcGFtJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nRXJyb3IsIHJlbW92ZSwgJ0ZvbycsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGhzPVtzaXRlX3BhY2thZ2VzXSkKKworICAgIGRlZiB0ZXN0X3VuaW5zdGFsbChzZWxmKToKKyAgICAgICAgZGlzdCwgc2l0ZV9wYWNrYWdlcyA9IHNlbGYuaW5zdGFsbF9kaXN0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0ZpbGUoc2l0ZV9wYWNrYWdlcywgJ2ZvbycsICdfX2luaXRfXy5weScpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNGaWxlKHNpdGVfcGFja2FnZXMsICdmb28nLCAnc3ViJywgJ19faW5pdF9fLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRJc0ZpbGUoc2l0ZV9wYWNrYWdlcywgJ0Zvby0wLjEuZGlzdC1pbmZvJywgJ1JFQ09SRCcpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZW1vdmUoJ0ZvbycsIHBhdGhzPVtzaXRlX3BhY2thZ2VzXSkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3RGaWxlKHNpdGVfcGFja2FnZXMsICdmb28nLCAnc3ViJywgJ19faW5pdF9fLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdEZpbGUoc2l0ZV9wYWNrYWdlcywgJ0Zvby0wLjEuZGlzdC1pbmZvJywgJ1JFQ09SRCcpCisKKyAgICBkZWYgdGVzdF91bmluc3RhbGxfZXJyb3JfaGFuZGxpbmcoc2VsZik6CisgICAgICAgICMgbWFrZXMgc3VyZSBpZiB0aGVyZSBhcmUgT1NFcnJvcnMgKGxpa2UgcGVybWlzc2lvbiBkZW5pZWQpCisgICAgICAgICMgcmVtb3ZlKCkgc3RvcHMgYW5kIGRpc3BsYXlzIGEgY2xlYW4gZXJyb3IKKyAgICAgICAgZGlzdCwgc2l0ZV9wYWNrYWdlcyA9IHNlbGYuaW5zdGFsbF9kaXN0KCdNZWgnKQorCisgICAgICAgICMgYnJlYWtpbmcgb3MucmVuYW1lCisgICAgICAgIG9sZCA9IG9zLnJlbmFtZQorCisgICAgICAgIGRlZiBfcmVuYW1lKHNvdXJjZSwgdGFyZ2V0KToKKyAgICAgICAgICAgIHJhaXNlIE9TRXJyb3IoNDIsICdpbXBvc3NpYmxlIG9wZXJhdGlvbicpCisKKyAgICAgICAgb3MucmVuYW1lID0gX3JlbmFtZQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHJlbW92ZSgnTWVoJywgcGF0aHM9W3NpdGVfcGFja2FnZXNdKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLnJlbmFtZSA9IG9sZAorCisgICAgICAgIGxvZ3MgPSBbbG9nIGZvciBsb2cgaW4gc2VsZi5nZXRfbG9ncyhsb2dnaW5nLklORk8pCisgICAgICAgICAgICAgICAgaWYgbG9nLnN0YXJ0c3dpdGgoJ0Vycm9yOicpXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxvZ3MsIFsnRXJyb3I6IFtFcnJubyA0Ml0gaW1wb3NzaWJsZSBvcGVyYXRpb24nXSkKKworICAgICAgICBzZWxmLmFzc2VydFRydWUocmVtb3ZlKCdNZWgnLCBwYXRocz1bc2l0ZV9wYWNrYWdlc10pKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShVbmluc3RhbGxUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF91bml4Y2NvbXBpbGVyLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3VuaXhjY29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTZhMWFmMwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF91bml4Y2NvbXBpbGVyLnB5CkBAIC0wLDAgKzEsMTMyIEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLnVuaXhjY29tcGlsZXIuIiIiCitpbXBvcnQgc3lzCisKK2ltcG9ydCBzeXNjb25maWcKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLnVuaXhjY29tcGlsZXIgaW1wb3J0IFVuaXhDQ29tcGlsZXIKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdAorCisKK2NsYXNzIFVuaXhDQ29tcGlsZXJUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuX2JhY2t1cF9wbGF0Zm9ybSA9IHN5cy5wbGF0Zm9ybQorICAgICAgICBzZWxmLl9iYWNrdXBfZ2V0X2NvbmZpZ192YXIgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIKKworICAgICAgICBjbGFzcyBDb21waWxlcldyYXBwZXIoVW5peENDb21waWxlcik6CisgICAgICAgICAgICBkZWYgcnBhdGhfZm9vKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLnJ1bnRpbWVfbGlicmFyeV9kaXJfb3B0aW9uKCcvZm9vJykKKyAgICAgICAgc2VsZi5jYyA9IENvbXBpbGVyV3JhcHBlcigpCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHN5cy5wbGF0Zm9ybSA9IHNlbGYuX2JhY2t1cF9wbGF0Zm9ybQorICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIgPSBzZWxmLl9iYWNrdXBfZ2V0X2NvbmZpZ192YXIKKworICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtID09ICd3aW4zMicsICdpcnJlbGV2YW50IG9uIHdpbjMyJykKKyAgICBkZWYgdGVzdF9ydW50aW1lX2xpYmRpcl9vcHRpb24oc2VsZik6CisKKyAgICAgICAgIyBJc3N1ZSAjNTkwMDogRW5zdXJlIFJVTlBBVEggaXMgYWRkZWQgdG8gZXh0ZW5zaW9uCisgICAgICAgICMgbW9kdWxlcyB3aXRoIFJQQVRIIGlmIEdOVSBsZCBpcyB1c2VkCisKKyAgICAgICAgIyBkYXJ3aW4KKyAgICAgICAgc3lzLnBsYXRmb3JtID0gJ2RhcndpbicKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNjLnJwYXRoX2ZvbygpLCAnLUwvZm9vJykKKworICAgICAgICAjIGhwLXV4CisgICAgICAgIHN5cy5wbGF0Zm9ybSA9ICdocC11eCcKKyAgICAgICAgb2xkX2djdiA9IHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcgorCisgICAgICAgIGRlZiBnY3Yodik6CisgICAgICAgICAgICByZXR1cm4gJ3h4eCcKKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyID0gZ2N2CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jYy5ycGF0aF9mb28oKSwgWycrcycsICctTC9mb28nXSkKKworICAgICAgICBkZWYgZ2N2KHYpOgorICAgICAgICAgICAgcmV0dXJuICdnY2MnCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhciA9IGdjdgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2MucnBhdGhfZm9vKCksIFsnLVdsLCtzJywgJy1ML2ZvbyddKQorCisgICAgICAgIGRlZiBnY3Yodik6CisgICAgICAgICAgICByZXR1cm4gJ2crKycKKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyID0gZ2N2CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jYy5ycGF0aF9mb28oKSwgWyctV2wsK3MnLCAnLUwvZm9vJ10pCisKKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyID0gb2xkX2djdgorCisgICAgICAgICMgaXJpeDY0NgorICAgICAgICBzeXMucGxhdGZvcm0gPSAnaXJpeDY0NicKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNjLnJwYXRoX2ZvbygpLCBbJy1ycGF0aCcsICcvZm9vJ10pCisKKyAgICAgICAgIyBvc2YxVjUKKyAgICAgICAgc3lzLnBsYXRmb3JtID0gJ29zZjFWNScKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNjLnJwYXRoX2ZvbygpLCBbJy1ycGF0aCcsICcvZm9vJ10pCisKKyAgICAgICAgIyBHQ0MgR05VTEQKKyAgICAgICAgc3lzLnBsYXRmb3JtID0gJ2JhcicKKworICAgICAgICBkZWYgZ2N2KHYpOgorICAgICAgICAgICAgaWYgdiA9PSAnQ0MnOgorICAgICAgICAgICAgICAgIHJldHVybiAnZ2NjJworICAgICAgICAgICAgZWxpZiB2ID09ICdHTlVMRCc6CisgICAgICAgICAgICAgICAgcmV0dXJuICd5ZXMnCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhciA9IGdjdgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2MucnBhdGhfZm9vKCksICctV2wsLS1lbmFibGUtbmV3LWR0YWdzLC1SL2ZvbycpCisKKyAgICAgICAgIyBHQ0Mgbm9uLUdOVUxECisgICAgICAgIHN5cy5wbGF0Zm9ybSA9ICdiYXInCisKKyAgICAgICAgZGVmIGdjdih2KToKKyAgICAgICAgICAgIGlmIHYgPT0gJ0NDJzoKKyAgICAgICAgICAgICAgICByZXR1cm4gJ2djYycKKyAgICAgICAgICAgIGVsaWYgdiA9PSAnR05VTEQnOgorICAgICAgICAgICAgICAgIHJldHVybiAnbm8nCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhciA9IGdjdgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2MucnBhdGhfZm9vKCksICctV2wsLVIvZm9vJykKKworICAgICAgICAjIEdDQyBHTlVMRCB3aXRoIGZ1bGx5IHF1YWxpZmllZCBjb25maWd1cmF0aW9uIHByZWZpeAorICAgICAgICAjIHNlZSAjNzYxNworICAgICAgICBzeXMucGxhdGZvcm0gPSAnYmFyJworCisgICAgICAgIGRlZiBnY3Yodik6CisgICAgICAgICAgICBpZiB2ID09ICdDQyc6CisgICAgICAgICAgICAgICAgcmV0dXJuICd4ODZfNjQtcGMtbGludXgtZ251LWdjYy00LjQuMicKKyAgICAgICAgICAgIGVsaWYgdiA9PSAnR05VTEQnOgorICAgICAgICAgICAgICAgIHJldHVybiAneWVzJworICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIgPSBnY3YKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNjLnJwYXRoX2ZvbygpLCAnLVdsLC0tZW5hYmxlLW5ldy1kdGFncywtUi9mb28nKQorCisgICAgICAgICMgbm9uLUdDQyBHTlVMRAorICAgICAgICBzeXMucGxhdGZvcm0gPSAnYmFyJworCisgICAgICAgIGRlZiBnY3Yodik6CisgICAgICAgICAgICBpZiB2ID09ICdDQyc6CisgICAgICAgICAgICAgICAgcmV0dXJuICdjYycKKyAgICAgICAgICAgIGVsaWYgdiA9PSAnR05VTEQnOgorICAgICAgICAgICAgICAgIHJldHVybiAneWVzJworICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIgPSBnY3YKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNjLnJwYXRoX2ZvbygpLCAnLVIvZm9vJykKKworICAgICAgICAjIG5vbi1HQ0Mgbm9uLUdOVUxECisgICAgICAgIHN5cy5wbGF0Zm9ybSA9ICdiYXInCisKKyAgICAgICAgZGVmIGdjdih2KToKKyAgICAgICAgICAgIGlmIHYgPT0gJ0NDJzoKKyAgICAgICAgICAgICAgICByZXR1cm4gJ2NjJworICAgICAgICAgICAgZWxpZiB2ID09ICdHTlVMRCc6CisgICAgICAgICAgICAgICAgcmV0dXJuICdubycKKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyID0gZ2N2CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jYy5ycGF0aF9mb28oKSwgJy1SL2ZvbycpCisKKyAgICAgICAgIyBBSVggQy9DKysgbGlua2VyCisgICAgICAgIHN5cy5wbGF0Zm9ybSA9ICdhaXgnCisKKyAgICAgICAgZGVmIGdjdih2KToKKyAgICAgICAgICAgIHJldHVybiAneHh4JworICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIgPSBnY3YKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNjLnJwYXRoX2ZvbygpLCAnLWJsaWJwYXRoOi9mb28nKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShVbml4Q0NvbXBpbGVyVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfdXRpbC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF91dGlsLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdmN2VkMTgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfdXRpbC5weQpAQCAtMCwwICsxLDEwMTMgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcudXRpbC4iIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHRpbWUKK2ltcG9ydCBsb2dnaW5nCitpbXBvcnQgdGVtcGZpbGUKK2ltcG9ydCB0ZXh0d3JhcAoraW1wb3J0IHdhcm5pbmdzCitpbXBvcnQgc3VicHJvY2VzcworZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KKworZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCAoCisgICAgUGFja2FnaW5nUGxhdGZvcm1FcnJvciwgUGFja2FnaW5nRmlsZUVycm9yLAorICAgIFBhY2thZ2luZ0V4ZWNFcnJvciwgSW5zdGFsbGF0aW9uRXhjZXB0aW9uKQorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IHV0aWwKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgKAorICAgIGNvbnZlcnRfcGF0aCwgY2hhbmdlX3Jvb3QsIHNwbGl0X3F1b3RlZCwgc3RydG9ib29sLCBydW5fMnRvMywKKyAgICBnZXRfY29tcGlsZXJfdmVyc2lvbnMsIF9NQUNfT1NfWF9MRF9WRVJTSU9OLCBieXRlX2NvbXBpbGUsIGZpbmRfcGFja2FnZXMsCisgICAgc3Bhd24sIGdldF9weXBpcmNfcGF0aCwgZ2VuZXJhdGVfcHlwaXJjLCByZWFkX3B5cGlyYywgcmVzb2x2ZV9uYW1lLCBpZ2xvYiwKKyAgICBSSUNIX0dMT0IsIGVnZ2luZm9fdG9fZGlzdGluZm8sIGlzX3NldHVwdG9vbHMsIGlzX2Rpc3R1dGlscywgaXNfcGFja2FnaW5nLAorICAgIGdldF9pbnN0YWxsX21ldGhvZCwgY2ZnX3RvX2FyZ3MsIGdlbmVyYXRlX3NldHVwX3B5LCBlbmNvZGVfbXVsdGlwYXJ0KQorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgc3VwcG9ydCwgdW5pdHRlc3QKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnRlc3RfY29uZmlnIGltcG9ydCBTRVRVUF9DRkcKK2Zyb20gdGVzdC5zY3JpcHRfaGVscGVyIGltcG9ydCBhc3NlcnRfcHl0aG9uX29rLCBhc3NlcnRfcHl0aG9uX2ZhaWx1cmUKKworCitQWVBJUkMgPSAiIiJcCitbZGlzdHV0aWxzXQoraW5kZXgtc2VydmVycyA9CisgICAgcHlwaQorICAgIHNlcnZlcjEKKworW3B5cGldCit1c2VybmFtZTptZQorcGFzc3dvcmQ6eHh4eAorCitbc2VydmVyMV0KK3JlcG9zaXRvcnk6aHR0cDovL2V4YW1wbGUuY29tCit1c2VybmFtZTp0YXJlaworcGFzc3dvcmQ6c2VjcmV0CisiIiIKKworUFlQSVJDX09MRCA9ICIiIlwKK1tzZXJ2ZXItbG9naW5dCit1c2VybmFtZTp0YXJlaworcGFzc3dvcmQ6c2VjcmV0CisiIiIKKworV0FOVEVEID0gIiIiXAorW2Rpc3R1dGlsc10KK2luZGV4LXNlcnZlcnMgPQorICAgIHB5cGkKKworW3B5cGldCit1c2VybmFtZTp0YXJlaworcGFzc3dvcmQ6eHh4CisiIiIKKworRVhQRUNURURfTVVMVElQQVJUX09VVFBVVCA9IFsKKyAgICBiJy0tLXgnLAorICAgIGInQ29udGVudC1EaXNwb3NpdGlvbjogZm9ybS1kYXRhOyBuYW1lPSJ1c2VybmFtZSInLAorICAgIGInJywKKyAgICBiJ3dvaycsCisgICAgYictLS14JywKKyAgICBiJ0NvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0icGFzc3dvcmQiJywKKyAgICBiJycsCisgICAgYidzZWNyZXQnLAorICAgIGInLS0teCcsCisgICAgYidDb250ZW50LURpc3Bvc2l0aW9uOiBmb3JtLWRhdGE7IG5hbWU9InBpY3R1cmUiOyBmaWxlbmFtZT0id29rLnBuZyInLAorICAgIGInJywKKyAgICBiJ1BORzg5JywKKyAgICBiJy0tLXgtLScsCisgICAgYicnLAorXQorCisKK2NsYXNzIEZha2VQb3BlbjoKKyAgICB0ZXN0X2NsYXNzID0gTm9uZQorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGFyZ3MsIGJ1ZnNpemU9MCwgZXhlY3V0YWJsZT1Ob25lLAorICAgICAgICAgICAgICAgICBzdGRpbj1Ob25lLCBzdGRvdXQ9Tm9uZSwgc3RkZXJyPU5vbmUsCisgICAgICAgICAgICAgICAgIHByZWV4ZWNfZm49Tm9uZSwgY2xvc2VfZmRzPUZhbHNlLAorICAgICAgICAgICAgICAgICBzaGVsbD1GYWxzZSwgY3dkPU5vbmUsIGVudj1Ob25lLCB1bml2ZXJzYWxfbmV3bGluZXM9RmFsc2UsCisgICAgICAgICAgICAgICAgIHN0YXJ0dXBpbmZvPU5vbmUsIGNyZWF0aW9uZmxhZ3M9MCwKKyAgICAgICAgICAgICAgICAgcmVzdG9yZV9zaWduYWxzPVRydWUsIHN0YXJ0X25ld19zZXNzaW9uPUZhbHNlLAorICAgICAgICAgICAgICAgICBwYXNzX2Zkcz0oKSk6CisgICAgICAgIGlmIGlzaW5zdGFuY2UoYXJncywgc3RyKToKKyAgICAgICAgICAgIGFyZ3MgPSBhcmdzLnNwbGl0KCkKKyAgICAgICAgc2VsZi5jbWQgPSBhcmdzWzBdCisgICAgICAgIGV4ZXMgPSBzZWxmLnRlc3RfY2xhc3MuX2V4ZXMKKyAgICAgICAgaWYgc2VsZi5jbWQgbm90IGluIGV4ZXM6CisgICAgICAgICAgICAjIHdlIGRvbid0IHdhbnQgdG8gY2FsbCB0aGUgc3lzdGVtLCByZXR1cm5pbmcgYW4gZW1wdHkKKyAgICAgICAgICAgICMgb3V0cHV0IHNvIGl0IGRvZXNuJ3QgbWF0Y2gKKyAgICAgICAgICAgIHNlbGYuc3Rkb3V0ID0gU3RyaW5nSU8oKQorICAgICAgICAgICAgc2VsZi5zdGRlcnIgPSBTdHJpbmdJTygpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLnN0ZG91dCA9IFN0cmluZ0lPKGV4ZXNbc2VsZi5jbWRdKQorICAgICAgICAgICAgc2VsZi5zdGRlcnIgPSBTdHJpbmdJTygpCisKKyAgICBkZWYgY29tbXVuaWNhdGUoc2VsZiwgaW5wdXQ9Tm9uZSwgdGltZW91dD1Ob25lKToKKyAgICAgICAgcmV0dXJuIHNlbGYuc3Rkb3V0LnJlYWQoKSwgc2VsZi5zdGRlcnIucmVhZCgpCisKKyAgICBkZWYgd2FpdChzZWxmLCB0aW1lb3V0PU5vbmUpOgorICAgICAgICByZXR1cm4gMAorCisKK2NsYXNzIFV0aWxUZXN0Q2FzZShzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICBzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydIT01FJywgJ1BMQVQnXQorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihVdGlsVGVzdENhc2UsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLmNoZGlyLCBvcy5nZXRjd2QoKSkKKyAgICAgICAgdGVtcGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNlbGYucmMgPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgJy5weXBpcmMnKQorICAgICAgICBvcy5lbnZpcm9uWydIT01FJ10gPSB0ZW1wZGlyCisgICAgICAgIG9zLmNoZGlyKHRlbXBkaXIpCisgICAgICAgICMgc2F2aW5nIHRoZSBlbnZpcm9ubWVudAorICAgICAgICBzZWxmLm5hbWUgPSBvcy5uYW1lCisgICAgICAgIHNlbGYucGxhdGZvcm0gPSBzeXMucGxhdGZvcm0KKyAgICAgICAgc2VsZi52ZXJzaW9uID0gc3lzLnZlcnNpb24KKyAgICAgICAgc2VsZi5zZXAgPSBvcy5zZXAKKyAgICAgICAgc2VsZi5qb2luID0gb3MucGF0aC5qb2luCisgICAgICAgIHNlbGYuaXNhYnMgPSBvcy5wYXRoLmlzYWJzCisgICAgICAgIHNlbGYuc3BsaXRkcml2ZSA9IG9zLnBhdGguc3BsaXRkcml2ZQorCisgICAgICAgICMgcGF0Y2hpbmcgb3MudW5hbWUKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ3VuYW1lJyk6CisgICAgICAgICAgICBzZWxmLnVuYW1lID0gb3MudW5hbWUKKyAgICAgICAgICAgIHNlbGYuX3VuYW1lID0gb3MudW5hbWUoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi51bmFtZSA9IE5vbmUKKyAgICAgICAgICAgIHNlbGYuX3VuYW1lID0gTm9uZQorICAgICAgICBvcy51bmFtZSA9IHNlbGYuX2dldF91bmFtZQorCisgICAgZGVmIF9nZXRfdW5hbWUoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLl91bmFtZQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICAjIGdldHRpbmcgYmFjayB0aGUgZW52aXJvbm1lbnQKKyAgICAgICAgb3MubmFtZSA9IHNlbGYubmFtZQorICAgICAgICBzeXMucGxhdGZvcm0gPSBzZWxmLnBsYXRmb3JtCisgICAgICAgIHN5cy52ZXJzaW9uID0gc2VsZi52ZXJzaW9uCisgICAgICAgIG9zLnNlcCA9IHNlbGYuc2VwCisgICAgICAgIG9zLnBhdGguam9pbiA9IHNlbGYuam9pbgorICAgICAgICBvcy5wYXRoLmlzYWJzID0gc2VsZi5pc2FicworICAgICAgICBvcy5wYXRoLnNwbGl0ZHJpdmUgPSBzZWxmLnNwbGl0ZHJpdmUKKyAgICAgICAgaWYgc2VsZi51bmFtZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIG9zLnVuYW1lID0gc2VsZi51bmFtZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZGVsIG9zLnVuYW1lCisgICAgICAgIHN1cGVyKFV0aWxUZXN0Q2FzZSwgc2VsZikudGVhckRvd24oKQorCisgICAgZGVmIG1vY2tfcG9wZW4oc2VsZik6CisgICAgICAgIHNlbGYub2xkX2ZpbmRfZXhlY3V0YWJsZSA9IHV0aWwuZmluZF9leGVjdXRhYmxlCisgICAgICAgIHV0aWwuZmluZF9leGVjdXRhYmxlID0gc2VsZi5fZmluZF9leGVjdXRhYmxlCisgICAgICAgIHNlbGYuX2V4ZXMgPSB7fQorICAgICAgICBzZWxmLm9sZF9wb3BlbiA9IHN1YnByb2Nlc3MuUG9wZW4KKyAgICAgICAgc2VsZi5vbGRfc3Rkb3V0ID0gc3lzLnN0ZG91dAorICAgICAgICBzZWxmLm9sZF9zdGRlcnIgPSBzeXMuc3RkZXJyCisgICAgICAgIEZha2VQb3Blbi50ZXN0X2NsYXNzID0gc2VsZgorICAgICAgICBzdWJwcm9jZXNzLlBvcGVuID0gRmFrZVBvcGVuCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLnVubW9ja19wb3BlbikKKworICAgIGRlZiB1bm1vY2tfcG9wZW4oc2VsZik6CisgICAgICAgIHV0aWwuZmluZF9leGVjdXRhYmxlID0gc2VsZi5vbGRfZmluZF9leGVjdXRhYmxlCisgICAgICAgIHN1YnByb2Nlc3MuUG9wZW4gPSBzZWxmLm9sZF9wb3BlbgorICAgICAgICBzeXMuc3Rkb3V0ID0gc2VsZi5vbGRfc3Rkb3V0CisgICAgICAgIHN5cy5zdGRlcnIgPSBzZWxmLm9sZF9zdGRlcnIKKworICAgIGRlZiB0ZXN0X3NldF9wbGF0Zm9ybShzZWxmKToKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHV0aWwuc2V0X3BsYXRmb3JtLCB1dGlsLmdldF9wbGF0Zm9ybSgpKQorICAgICAgICB1dGlsLnNldF9wbGF0Zm9ybSgiZmFrZSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoImZha2UiLCB1dGlsLmdldF9wbGF0Zm9ybSgpKQorCisgICAgZGVmIHRlc3RfY29udmVydF9wYXRoKHNlbGYpOgorICAgICAgICAjIGxpbnV4L21hYworICAgICAgICBvcy5zZXAgPSAnLycKKworICAgICAgICBkZWYgX2pvaW4ocGF0aCk6CisgICAgICAgICAgICByZXR1cm4gJy8nLmpvaW4ocGF0aCkKKyAgICAgICAgb3MucGF0aC5qb2luID0gX2pvaW4KKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnZlcnRfcGF0aCgnL2hvbWUvdG8vbXkvc3R1ZmYnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnL2hvbWUvdG8vbXkvc3R1ZmYnKQorCisgICAgICAgICMgd2luCisgICAgICAgIG9zLnNlcCA9ICdcXCcKKworICAgICAgICBkZWYgX2pvaW4oKnBhdGgpOgorICAgICAgICAgICAgcmV0dXJuICdcXCcuam9pbihwYXRoKQorICAgICAgICBvcy5wYXRoLmpvaW4gPSBfam9pbgorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGNvbnZlcnRfcGF0aCwgJy9ob21lL3RvL215L3N0dWZmJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgY29udmVydF9wYXRoLCAnaG9tZS90by9teS9zdHVmZi8nKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udmVydF9wYXRoKCdob21lL3RvL215L3N0dWZmJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ2hvbWVcXHRvXFxteVxcc3R1ZmYnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnZlcnRfcGF0aCgnLicpLAorICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmN1cmRpcikKKworICAgIGRlZiB0ZXN0X2NoYW5nZV9yb290KHNlbGYpOgorICAgICAgICAjIGxpbnV4L21hYworICAgICAgICBvcy5uYW1lID0gJ3Bvc2l4JworCisgICAgICAgIGRlZiBfaXNhYnMocGF0aCk6CisgICAgICAgICAgICByZXR1cm4gcGF0aFswXSA9PSAnLycKKyAgICAgICAgb3MucGF0aC5pc2FicyA9IF9pc2FicworCisgICAgICAgIGRlZiBfam9pbigqcGF0aCk6CisgICAgICAgICAgICByZXR1cm4gJy8nLmpvaW4ocGF0aCkKKyAgICAgICAgb3MucGF0aC5qb2luID0gX2pvaW4KKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNoYW5nZV9yb290KCcvcm9vdCcsICcvb2xkL2l0cy9oZXJlJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJy9yb290L29sZC9pdHMvaGVyZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hhbmdlX3Jvb3QoJy9yb290JywgJ2l0cy9oZXJlJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJy9yb290L2l0cy9oZXJlJykKKworICAgICAgICAjIHdpbmRvd3MKKyAgICAgICAgb3MubmFtZSA9ICdudCcKKworICAgICAgICBkZWYgX2lzYWJzKHBhdGgpOgorICAgICAgICAgICAgcmV0dXJuIHBhdGguc3RhcnRzd2l0aCgnYzpcXCcpCisgICAgICAgIG9zLnBhdGguaXNhYnMgPSBfaXNhYnMKKworICAgICAgICBkZWYgX3NwbGl0ZHJpdmUocGF0aCk6CisgICAgICAgICAgICBpZiBwYXRoLnN0YXJ0c3dpdGgoJ2M6Jyk6CisgICAgICAgICAgICAgICAgcmV0dXJuICcnLCBwYXRoLnJlcGxhY2UoJ2M6JywgJycpCisgICAgICAgICAgICByZXR1cm4gJycsIHBhdGgKKyAgICAgICAgb3MucGF0aC5zcGxpdGRyaXZlID0gX3NwbGl0ZHJpdmUKKworICAgICAgICBkZWYgX2pvaW4oKnBhdGgpOgorICAgICAgICAgICAgcmV0dXJuICdcXCcuam9pbihwYXRoKQorICAgICAgICBvcy5wYXRoLmpvaW4gPSBfam9pbgorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hhbmdlX3Jvb3QoJ2M6XFxyb290JywgJ2M6XFxvbGRcXGl0c1xcaGVyZScpLAorICAgICAgICAgICAgICAgICAgICAgICAgICdjOlxccm9vdFxcb2xkXFxpdHNcXGhlcmUnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNoYW5nZV9yb290KCdjOlxccm9vdCcsICdpdHNcXGhlcmUnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnYzpcXHJvb3RcXGl0c1xcaGVyZScpCisKKyAgICAgICAgIyBCdWdzQnVubnkgb3MgKGl0J3MgYSBncmVhdCBvcykKKyAgICAgICAgb3MubmFtZSA9ICdCdWdzQnVubnknCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZV9yb290LCAnYzpcXHJvb3QnLCAnaXRzXFxoZXJlJykKKworICAgICAgICAjIFhYWCBwbGF0Zm9ybXMgdG8gYmUgY292ZXJlZDogb3MyLCBtYWMKKworICAgIGRlZiB0ZXN0X3NwbGl0X3F1b3RlZChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzcGxpdF9xdW90ZWQoJyIib25lIiIgInR3byIgXCd0aHJlZVwnIFxcZm91cicpLAorICAgICAgICAgICAgICAgICAgICAgICAgIFsnb25lJywgJ3R3bycsICd0aHJlZScsICdmb3VyJ10pCisKKyAgICBkZWYgdGVzdF9zdHJ0b2Jvb2woc2VsZik6CisgICAgICAgIHllcyA9ICgneScsICdZJywgJ3llcycsICdUcnVlJywgJ3QnLCAndHJ1ZScsICdUcnVlJywgJ09uJywgJ29uJywgJzEnKQorICAgICAgICBubyA9ICgnbicsICdubycsICdmJywgJ2ZhbHNlJywgJ29mZicsICcwJywgJ09mZicsICdObycsICdOJykKKworICAgICAgICBmb3IgeSBpbiB5ZXM6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc3RydG9ib29sKHkpKQorCisgICAgICAgIGZvciBuIGluIG5vOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzdHJ0b2Jvb2wobikpCisKKyAgICBkZWYgdGVzdF9maW5kX2V4ZV92ZXJzaW9uKHNlbGYpOgorICAgICAgICAjIHRoZSBsZCB2ZXJzaW9uIHNjaGVtZSB1bmRlciBNQUMgT1MgaXM6CisgICAgICAgICMgICBeQCgjKVBST0dSQU06bGQgIFBST0pFQ1Q6bGQ2NC1WRVJTSU9OCisgICAgICAgICMKKyAgICAgICAgIyB3aGVyZSBWRVJTSU9OIGlzIGEgMi1kaWdpdCBudW1iZXIgZm9yIG1ham9yCisgICAgICAgICMgcmV2aXNpb25zLiBGb3IgaW5zdGFuY2UgdW5kZXIgTGVvcGFyZCwgaXQncworICAgICAgICAjIGN1cnJlbnRseSA3NworICAgICAgICAjCisgICAgICAgICMgRG90cyBhcmUgdXNlZCB3aGVuIGJyYW5jaGluZyBpcyBkb25lLgorICAgICAgICAjCisgICAgICAgICMgVGhlIFNub3dMZW9wYXJkIGxkNjQgaXMgY3VycmVudGx5IDk1LjIuMTIKKworICAgICAgICBmb3Igb3V0cHV0LCB2ZXJzaW9uIGluICgoJ0AoIylQUk9HUkFNOmxkICBQUk9KRUNUOmxkNjQtNzcnLCAnNzcnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdAKCMpUFJPR1JBTTpsZCAgUFJPSkVDVDpsZDY0LTk1LjIuMTInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJzk1LjIuMTInKSk6CisgICAgICAgICAgICByZXN1bHQgPSBfTUFDX09TX1hfTERfVkVSU0lPTi5zZWFyY2gob3V0cHV0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQuZ3JvdXAoMSksIHZlcnNpb24pCisKKyAgICBkZWYgX2ZpbmRfZXhlY3V0YWJsZShzZWxmLCBuYW1lKToKKyAgICAgICAgaWYgbmFtZSBpbiBzZWxmLl9leGVzOgorICAgICAgICAgICAgcmV0dXJuIG5hbWUKKyAgICAgICAgcmV0dXJuIE5vbmUKKworICAgIGRlZiB0ZXN0X2dldF9jb21waWxlcl92ZXJzaW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5tb2NrX3BvcGVuKCkKKyAgICAgICAgIyBnZXRfdmVyc2lvbnMgY2FsbHMgZGlzdHV0aWxzLnNwYXduLmZpbmRfZXhlY3V0YWJsZSBvbgorICAgICAgICAjICdnY2MnLCAnbGQnIGFuZCAnZGxsd3JhcCcKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRfY29tcGlsZXJfdmVyc2lvbnMoKSwgKE5vbmUsIE5vbmUsIE5vbmUpKQorCisgICAgICAgICMgTGV0J3MgZmFrZSB3ZSBoYXZlICdnY2MnIGFuZCBpdCByZXR1cm5zICczLjQuNScKKyAgICAgICAgc2VsZi5fZXhlc1snZ2NjJ10gPSAnZ2NjIChHQ0MpIDMuNC41IChtaW5ndyBzcGVjaWFsKVxuRlNGJworICAgICAgICByZXMgPSBnZXRfY29tcGlsZXJfdmVyc2lvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihyZXNbMF0pLCAnMy40LjUnKQorCisgICAgICAgICMgYW5kIGxldCdzIHNlZSB3aGF0IGhhcHBlbnMgd2hlbiB0aGUgdmVyc2lvbgorICAgICAgICAjIGRvZXNuJ3QgbWF0Y2ggdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbgorICAgICAgICAjIChcZCtcLlxkKyhcLlxkKykqKQorICAgICAgICBzZWxmLl9leGVzWydnY2MnXSA9ICd2ZXJ5IHN0cmFuZ2Ugb3V0cHV0JworICAgICAgICByZXMgPSBnZXRfY29tcGlsZXJfdmVyc2lvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc1swXSwgTm9uZSkKKworICAgICAgICAjIHNhbWUgdGhpbmcgZm9yIGxkCisgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSAhPSAnZGFyd2luJzoKKyAgICAgICAgICAgIHNlbGYuX2V4ZXNbJ2xkJ10gPSAnR05VIGxkIHZlcnNpb24gMi4xNy41MCAyMDA2MDgyNCcKKyAgICAgICAgICAgIHJlcyA9IGdldF9jb21waWxlcl92ZXJzaW9ucygpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihyZXNbMV0pLCAnMi4xNy41MCcpCisgICAgICAgICAgICBzZWxmLl9leGVzWydsZCddID0gJ0AoIylQUk9HUkFNOmxkICBQUk9KRUNUOmxkNjQtNzcnCisgICAgICAgICAgICByZXMgPSBnZXRfY29tcGlsZXJfdmVyc2lvbnMoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNbMV0sIE5vbmUpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLl9leGVzWydsZCddID0gJ0dOVSBsZCB2ZXJzaW9uIDIuMTcuNTAgMjAwNjA4MjQnCisgICAgICAgICAgICByZXMgPSBnZXRfY29tcGlsZXJfdmVyc2lvbnMoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNbMV0sIE5vbmUpCisgICAgICAgICAgICBzZWxmLl9leGVzWydsZCddID0gJ0AoIylQUk9HUkFNOmxkICBQUk9KRUNUOmxkNjQtNzcnCisgICAgICAgICAgICByZXMgPSBnZXRfY29tcGlsZXJfdmVyc2lvbnMoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIocmVzWzFdKSwgJzc3JykKKworICAgICAgICAjIGFuZCBkbGx3cmFwCisgICAgICAgIHNlbGYuX2V4ZXNbJ2RsbHdyYXAnXSA9ICdHTlUgZGxsd3JhcCAyLjE3LjUwIDIwMDYwODI0XG5GU0YnCisgICAgICAgIHJlcyA9IGdldF9jb21waWxlcl92ZXJzaW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHJlc1syXSksICcyLjE3LjUwJykKKyAgICAgICAgc2VsZi5fZXhlc1snZGxsd3JhcCddID0gJ0NoZWVzZSBXcmFwJworICAgICAgICByZXMgPSBnZXRfY29tcGlsZXJfdmVyc2lvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc1syXSwgTm9uZSkKKworICAgIGRlZiB0ZXN0X2J5dGVfY29tcGlsZV91bmRlcl9CKHNlbGYpOgorICAgICAgICAjIG1ha2Ugc3VyZSBieXRlIGNvbXBpbGF0aW9uIHdvcmtzIHVuZGVyIC1CIChkb250X3dyaXRlX2J5dGVjb2RlKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2V0YXR0ciwgc3lzLCAnZG9udF93cml0ZV9ieXRlY29kZScsCisgICAgICAgICAgICAgICAgICAgICAgICBzeXMuZG9udF93cml0ZV9ieXRlY29kZSkKKyAgICAgICAgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGUgPSBUcnVlCisgICAgICAgIGJ5dGVfY29tcGlsZShbXSkKKworICAgIGRlZiB0ZXN0X25ld2VyKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdGaWxlRXJyb3IsIHV0aWwubmV3ZXIsICd4eHgnLCAneHh4JykKKyAgICAgICAgc2VsZi5uZXdlcl9mMSA9IHNlbGYubWt0ZW1wZmlsZSgpCisgICAgICAgIHRpbWUuc2xlZXAoMSkKKyAgICAgICAgc2VsZi5uZXdlcl9mMiA9IHNlbGYubWt0ZW1wZmlsZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh1dGlsLm5ld2VyKHNlbGYubmV3ZXJfZjIubmFtZSwgc2VsZi5uZXdlcl9mMS5uYW1lKSkKKworICAgIGRlZiB0ZXN0X2ZpbmRfcGFja2FnZXMoc2VsZik6CisgICAgICAgICMgbGV0J3MgY3JlYXRlIGEgc3RydWN0dXJlIHdlIHdhbnQgdG8gc2NhbjoKKyAgICAgICAgIworICAgICAgICAjICAgcGtnMQorICAgICAgICAjICAgICBfX2luaXRfXworICAgICAgICAjICAgICBwa2cyCisgICAgICAgICMgICAgICAgX19pbml0X18KKyAgICAgICAgIyAgICAgcGtnMworICAgICAgICAjICAgICAgIF9faW5pdF9fCisgICAgICAgICMgICAgICAgcGtnNgorICAgICAgICAjICAgICAgICAgICBfX2luaXRfXworICAgICAgICAjICAgICBwa2c0ICAgIDwtLS0gbm90IGEgcGtnCisgICAgICAgICMgICAgICAgcGtnOAorICAgICAgICAjICAgICAgICAgIF9faW5pdF9fCisgICAgICAgICMgICBwa2c1CisgICAgICAgICMgICAgIF9faW5pdF9fCisgICAgICAgICMKKyAgICAgICAgcm9vdCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHBrZzEgPSBvcy5wYXRoLmpvaW4ocm9vdCwgJ3BrZzEnKQorICAgICAgICBvcy5tYWtlZGlycyhvcy5wYXRoLmpvaW4ocGtnMSwgJ3BrZzInKSkKKyAgICAgICAgb3MubWFrZWRpcnMob3MucGF0aC5qb2luKHBrZzEsICdwa2czJywgJ3BrZzYnKSkKKyAgICAgICAgb3MubWFrZWRpcnMob3MucGF0aC5qb2luKHBrZzEsICdwa2c0JywgJ3BrZzgnKSkKKyAgICAgICAgb3MubWFrZWRpcnMob3MucGF0aC5qb2luKHJvb3QsICdwa2c1JykpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnMSwgJ19faW5pdF9fLnB5JykpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnMSwgJ3BrZzInLCAnX19pbml0X18ucHknKSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2cxLCAncGtnMycsICdfX2luaXRfXy5weScpKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHBrZzEsICdwa2czJywgJ3BrZzYnLCAnX19pbml0X18ucHknKSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2cxLCAncGtnNCcsICdwa2c4JywgJ19faW5pdF9fLnB5JykpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocm9vdCwgJ3BrZzUnLCAnX19pbml0X18ucHknKSkKKworICAgICAgICByZXMgPSBmaW5kX3BhY2thZ2VzKFtyb290XSwgWydwa2cxLnBrZzInXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQocmVzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBbJ3BrZzEnLCAncGtnMS5wa2czJywgJ3BrZzEucGtnMy5wa2c2JywgJ3BrZzUnXSkKKworICAgIGRlZiB0ZXN0X3Jlc29sdmVfbmFtZShzZWxmKToKKyAgICAgICAgIyB0ZXN0IHJhdyBtb2R1bGUgbmFtZQorICAgICAgICB0bXBkaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzeXMucGF0aC5hcHBlbmQodG1wZGlyKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnBhdGgucmVtb3ZlLCB0bXBkaXIpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgodG1wZGlyLCAnaGVsbG8ucHknKSwgJycpCisKKyAgICAgICAgb3MubWFrZWRpcnMob3MucGF0aC5qb2luKHRtcGRpciwgJ2EnLCAnYicpKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHRtcGRpciwgJ2EnLCAnX19pbml0X18ucHknKSwgJycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgodG1wZGlyLCAnYScsICdiJywgJ19faW5pdF9fLnB5JyksICcnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHRtcGRpciwgJ2EnLCAnYicsICdjLnB5JyksICdjbGFzcyBGb286IHBhc3MnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHRtcGRpciwgJ2EnLCAnYicsICdkLnB5JyksIHRleHR3cmFwLmRlZGVudCgiIiJcCisgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3MgRm9vQmFyOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcyBCYXI6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWYgYmF6KHNlbGYpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIiIpKQorCisgICAgICAgICMgY2hlY2sgUHl0aG9uLCBDIGFuZCBidWlsdC1pbiBtb2R1bGUKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNvbHZlX25hbWUoJ2hlbGxvJykuX19uYW1lX18sICdoZWxsbycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzb2x2ZV9uYW1lKCdfY3N2JykuX19uYW1lX18sICdfY3N2JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNvbHZlX25hbWUoJ3N5cycpLl9fbmFtZV9fLCAnc3lzJykKKworICAgICAgICAjIHRlc3QgbW9kdWxlLmF0dHIKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyZXNvbHZlX25hbWUoJ2J1aWx0aW5zLnN0cicpLCBzdHIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKHJlc29sdmVfbmFtZSgnaGVsbG8uX19kb2NfXycpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc29sdmVfbmFtZSgnYS5iLmMuRm9vJykuX19uYW1lX18sICdGb28nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc29sdmVfbmFtZSgnYS5iLmQuRm9vQmFyLkJhci5iYXonKS5fX25hbWVfXywgJ2JheicpCisKKyAgICAgICAgIyBlcnJvciBpZiBtb2R1bGUgbm90IGZvdW5kCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEltcG9ydEVycm9yLCByZXNvbHZlX25hbWUsICdub25leGlzdGVudCcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEltcG9ydEVycm9yLCByZXNvbHZlX25hbWUsICdub24uZXhpc3RlbnQnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbXBvcnRFcnJvciwgcmVzb2x2ZV9uYW1lLCAnYS5ubycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEltcG9ydEVycm9yLCByZXNvbHZlX25hbWUsICdhLmIubm8nKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbXBvcnRFcnJvciwgcmVzb2x2ZV9uYW1lLCAnYS5iLm5vLm5vJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW1wb3J0RXJyb3IsIHJlc29sdmVfbmFtZSwgJ2ludmEtbGlkJykKKworICAgICAgICAjIGxvb2tpbmcgdXAgYnVpbHQtaW4gbmFtZXMgaXMgbm90IHN1cHBvcnRlZAorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbXBvcnRFcnJvciwgcmVzb2x2ZV9uYW1lLCAnc3RyJykKKworICAgICAgICAjIGVycm9yIGlmIG1vZHVsZSBmb3VuZCBidXQgbm90IGF0dHIKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW1wb3J0RXJyb3IsIHJlc29sdmVfbmFtZSwgJ2EuYi5TcGFtJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW1wb3J0RXJyb3IsIHJlc29sdmVfbmFtZSwgJ2EuYi5jLlNwYW0nKQorCisgICAgQHN1cHBvcnQuc2tpcF8ydG8zX29wdGltaXplCisgICAgZGVmIHRlc3RfcnVuXzJ0bzNfb25fY29kZShzZWxmKToKKyAgICAgICAgY29udGVudCA9ICJwcmludCAndGVzdCciCisgICAgICAgIGNvbnZlcnRlZF9jb250ZW50ID0gInByaW50KCd0ZXN0JykiCisgICAgICAgIGZpbGVfaGFuZGxlID0gc2VsZi5ta3RlbXBmaWxlKCkKKyAgICAgICAgZmlsZV9uYW1lID0gZmlsZV9oYW5kbGUubmFtZQorICAgICAgICBmaWxlX2hhbmRsZS53cml0ZShjb250ZW50KQorICAgICAgICBmaWxlX2hhbmRsZS5mbHVzaCgpCisgICAgICAgIGZpbGVfaGFuZGxlLnNlZWsoMCkKKyAgICAgICAgcnVuXzJ0bzMoW2ZpbGVfbmFtZV0pCisgICAgICAgIG5ld19jb250ZW50ID0gIiIuam9pbihmaWxlX2hhbmRsZS5yZWFkKCkpCisgICAgICAgIGZpbGVfaGFuZGxlLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZXdfY29udGVudCwgY29udmVydGVkX2NvbnRlbnQpCisKKyAgICBAc3VwcG9ydC5za2lwXzJ0bzNfb3B0aW1pemUKKyAgICBkZWYgdGVzdF9ydW5fMnRvM19vbl9kb2N0ZXN0cyhzZWxmKToKKyAgICAgICAgIyB0byBjaGVjayBpZiB0ZXh0IGZpbGVzIGNvbnRhaW5pbmcgZG9jdGVzdHMgb25seSBnZXQgY29udmVydGVkLgorICAgICAgICBjb250ZW50ID0gIj4+PiBwcmludCAndGVzdCdcbnRlc3RcbiIKKyAgICAgICAgY29udmVydGVkX2NvbnRlbnQgPSAiPj4+IHByaW50KCd0ZXN0JylcbnRlc3RcblxuIgorICAgICAgICBmaWxlX2hhbmRsZSA9IHNlbGYubWt0ZW1wZmlsZSgpCisgICAgICAgIGZpbGVfbmFtZSA9IGZpbGVfaGFuZGxlLm5hbWUKKyAgICAgICAgZmlsZV9oYW5kbGUud3JpdGUoY29udGVudCkKKyAgICAgICAgZmlsZV9oYW5kbGUuZmx1c2goKQorICAgICAgICBmaWxlX2hhbmRsZS5zZWVrKDApCisgICAgICAgIHJ1bl8ydG8zKFtmaWxlX25hbWVdLCBkb2N0ZXN0c19vbmx5PVRydWUpCisgICAgICAgIG5ld19jb250ZW50ID0gIiIuam9pbihmaWxlX2hhbmRsZS5yZWFkbGluZXMoKSkKKyAgICAgICAgZmlsZV9oYW5kbGUuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld19jb250ZW50LCBjb252ZXJ0ZWRfY29udGVudCkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKG9zLm5hbWUgaW4gKCdudCcsICdwb3NpeCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICdydW5zIG9ubHkgdW5kZXIgcG9zaXggb3IgbnQnKQorICAgIGRlZiB0ZXN0X3NwYXduKHNlbGYpOgorICAgICAgICB0bXBkaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgICMgY3JlYXRpbmcgc29tZXRoaW5nIGV4ZWN1dGFibGUKKyAgICAgICAgIyB0aHJvdWdoIHRoZSBzaGVsbCB0aGF0IHJldHVybnMgMQorICAgICAgICBpZiBvcy5uYW1lID09ICdwb3NpeCc6CisgICAgICAgICAgICBleGUgPSBvcy5wYXRoLmpvaW4odG1wZGlyLCAnZm9vLnNoJykKKyAgICAgICAgICAgIHNlbGYud3JpdGVfZmlsZShleGUsICcjIS9iaW4vc2hcbmV4aXQgMScpCisgICAgICAgICAgICBvcy5jaG1vZChleGUsIDBvNzc3KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZXhlID0gb3MucGF0aC5qb2luKHRtcGRpciwgJ2Zvby5iYXQnKQorICAgICAgICAgICAgc2VsZi53cml0ZV9maWxlKGV4ZSwgJ2V4aXQgMScpCisKKyAgICAgICAgb3MuY2htb2QoZXhlLCAwbzc3NykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nRXhlY0Vycm9yLCBzcGF3biwgW2V4ZV0pCisKKyAgICAgICAgIyBub3cgc29tZXRoaW5nIHRoYXQgd29ya3MKKyAgICAgICAgaWYgb3MubmFtZSA9PSAncG9zaXgnOgorICAgICAgICAgICAgZXhlID0gb3MucGF0aC5qb2luKHRtcGRpciwgJ2Zvby5zaCcpCisgICAgICAgICAgICBzZWxmLndyaXRlX2ZpbGUoZXhlLCAnIyEvYmluL3NoXG5leGl0IDAnKQorICAgICAgICAgICAgb3MuY2htb2QoZXhlLCAwbzc3NykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGV4ZSA9IG9zLnBhdGguam9pbih0bXBkaXIsICdmb28uYmF0JykKKyAgICAgICAgICAgIHNlbGYud3JpdGVfZmlsZShleGUsICdleGl0IDAnKQorCisgICAgICAgIG9zLmNobW9kKGV4ZSwgMG83NzcpCisgICAgICAgIHNwYXduKFtleGVdKSAgIyBzaG91bGQgd29yayB3aXRob3V0IGFueSBlcnJvcgorCisgICAgZGVmIHRlc3Rfc2VydmVyX3JlZ2lzdHJhdGlvbihzZWxmKToKKyAgICAgICAgIyBUaGlzIHRlc3QgbWFrZXMgc3VyZSB3ZSBrbm93IGhvdyB0bzoKKyAgICAgICAgIyAxLiBoYW5kbGUgc2V2ZXJhbCBzZWN0aW9ucyBpbiAucHlwaXJjCisgICAgICAgICMgMi4gaGFuZGxlIHRoZSBvbGQgZm9ybWF0CisKKyAgICAgICAgIyBuZXcgZm9ybWF0CisgICAgICAgIHNlbGYud3JpdGVfZmlsZShzZWxmLnJjLCBQWVBJUkMpCisgICAgICAgIGNvbmZpZyA9IHJlYWRfcHlwaXJjKCkKKworICAgICAgICBjb25maWcgPSBzb3J0ZWQoY29uZmlnLml0ZW1zKCkpCisgICAgICAgIGV4cGVjdGVkID0gWygncGFzc3dvcmQnLCAneHh4eCcpLCAoJ3JlYWxtJywgJ3B5cGknKSwKKyAgICAgICAgICAgICAgICAgICAgKCdyZXBvc2l0b3J5JywgJ2h0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaScpLAorICAgICAgICAgICAgICAgICAgICAoJ3NlcnZlcicsICdweXBpJyksICgndXNlcm5hbWUnLCAnbWUnKV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb25maWcsIGV4cGVjdGVkKQorCisgICAgICAgICMgb2xkIGZvcm1hdAorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoc2VsZi5yYywgUFlQSVJDX09MRCkKKyAgICAgICAgY29uZmlnID0gcmVhZF9weXBpcmMoKQorICAgICAgICBjb25maWcgPSBzb3J0ZWQoY29uZmlnLml0ZW1zKCkpCisgICAgICAgIGV4cGVjdGVkID0gWygncGFzc3dvcmQnLCAnc2VjcmV0JyksICgncmVhbG0nLCAncHlwaScpLAorICAgICAgICAgICAgICAgICAgICAoJ3JlcG9zaXRvcnknLCAnaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpJyksCisgICAgICAgICAgICAgICAgICAgICgnc2VydmVyJywgJ3NlcnZlci1sb2dpbicpLCAoJ3VzZXJuYW1lJywgJ3RhcmVrJyldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29uZmlnLCBleHBlY3RlZCkKKworICAgIGRlZiB0ZXN0X3NlcnZlcl9lbXB0eV9yZWdpc3RyYXRpb24oc2VsZik6CisgICAgICAgIHJjID0gZ2V0X3B5cGlyY19wYXRoKCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhyYykpCisgICAgICAgIGdlbmVyYXRlX3B5cGlyYygndGFyZWsnLCAneHh4JykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKHJjKSkKKyAgICAgICAgd2l0aCBvcGVuKHJjKSBhcyBmOgorICAgICAgICAgICAgY29udGVudCA9IGYucmVhZCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udGVudCwgV0FOVEVEKQorCisgICAgZGVmIHRlc3RfY2ZnX3RvX2FyZ3Moc2VsZik6CisgICAgICAgIG9wdHMgPSB7J2Rlc2NyaXB0aW9uLWZpbGUnOiAnUkVBRE1FJywgJ2V4dHJhLWZpbGVzJzogJycsCisgICAgICAgICAgICAgICAgJ3NldHVwLWhvb2tzJzogJ3BhY2thZ2luZy50ZXN0cy50ZXN0X2NvbmZpZy52ZXJzaW9uX2hvb2snfQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ3NldHVwLmNmZycsIFNFVFVQX0NGRyAlIG9wdHMsIGVuY29kaW5nPSd1dGYtOCcpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FJywgJ2xvb29vbmcgZGVzY3JpcHRpb24nKQorCisgICAgICAgIHdpdGggd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKToKKyAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcignaWdub3JlJywgRGVwcmVjYXRpb25XYXJuaW5nKQorICAgICAgICAgICAgYXJncyA9IGNmZ190b19hcmdzKCkKKyAgICAgICAgIyB1c2UgRGlzdHJpYnV0aW9uIHRvIGdldCB0aGUgY29udGVudHMgb2YgdGhlIHNldHVwLmNmZyBmaWxlCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBkaXN0LnBhcnNlX2NvbmZpZ19maWxlcygpCisgICAgICAgIG1ldGFkYXRhID0gZGlzdC5tZXRhZGF0YQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXJnc1snbmFtZSddLCBtZXRhZGF0YVsnTmFtZSddKQorICAgICAgICAjICsgLmRldjEgYmVjYXVzZSB0aGUgdGVzdCBTRVRVUF9DRkcgYWxzbyB0ZXN0cyBhIGhvb2sgZnVuY3Rpb24gaW4KKyAgICAgICAgIyB0ZXN0X2NvbmZpZy5weSBmb3IgYXBwZW5kaW5nIHRvIHRoZSB2ZXJzaW9uIHN0cmluZworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ3ZlcnNpb24nXSArICcuZGV2MScsIG1ldGFkYXRhWydWZXJzaW9uJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXJnc1snYXV0aG9yJ10sIG1ldGFkYXRhWydBdXRob3InXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydhdXRob3JfZW1haWwnXSwgbWV0YWRhdGFbJ0F1dGhvci1FbWFpbCddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ21haW50YWluZXInXSwgbWV0YWRhdGFbJ01haW50YWluZXInXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydtYWludGFpbmVyX2VtYWlsJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGFbJ01haW50YWluZXItRW1haWwnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydkZXNjcmlwdGlvbiddLCBtZXRhZGF0YVsnU3VtbWFyeSddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ2xvbmdfZGVzY3JpcHRpb24nXSwgbWV0YWRhdGFbJ0Rlc2NyaXB0aW9uJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXJnc1snY2xhc3NpZmllcnMnXSwgbWV0YWRhdGFbJ0NsYXNzaWZpZXInXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydyZXF1aXJlcyddLCBtZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ3Byb3ZpZGVzJ10sIG1ldGFkYXRhWydQcm92aWRlcy1EaXN0J10pCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydwYWNrYWdlX2RpciddLmdldCgnJyksIGRpc3QucGFja2FnZV9kaXIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXJnc1sncGFja2FnZXMnXSwgZGlzdC5wYWNrYWdlcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydzY3JpcHRzJ10sIGRpc3Quc2NyaXB0cykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydweV9tb2R1bGVzJ10sIGRpc3QucHlfbW9kdWxlcykKKworICAgIGRlZiB0ZXN0X2dlbmVyYXRlX3NldHVwX3B5KHNlbGYpOgorICAgICAgICBvcy5jaGRpcihzZWxmLm1rZHRlbXAoKSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzZXR1cC5jZmcnLCB0ZXh0d3JhcC5kZWRlbnQoIiIiXAorICAgICAgICAgICAgW21ldGFkYXRhXQorICAgICAgICAgICAgbmFtZSA9IFNQQU0KKyAgICAgICAgICAgIGNsYXNzaWZpZXIgPSBQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24KKyAgICAgICAgICAgICIiIikpCisgICAgICAgIGdlbmVyYXRlX3NldHVwX3B5KCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKCdzZXR1cC5weScpLCAnc2V0dXAucHkgbm90IGNyZWF0ZWQnKQorICAgICAgICByYywgb3V0LCBlcnIgPSBhc3NlcnRfcHl0aG9uX29rKCdzZXR1cC5weScsICctLW5hbWUnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG91dCwgYidTUEFNXG4nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVyciwgYicnKQorCisgICAgICAgICMgYSBnZW5lcmF0ZWQgc2V0dXAucHkgc2hvdWxkIGNvbXBsYWluIGlmIG5vIHNldHVwLmNmZyBpcyBwcmVzZW50CisgICAgICAgIG9zLnVubGluaygnc2V0dXAuY2ZnJykKKyAgICAgICAgcmMsIG91dCwgZXJyID0gYXNzZXJ0X3B5dGhvbl9mYWlsdXJlKCdzZXR1cC5weScsICctLW5hbWUnKQorICAgICAgICBzZWxmLmFzc2VydEluKGInc2V0dXAuY2ZnJywgZXJyKQorCisgICAgZGVmIHRlc3RfZW5jb2RlX211bHRpcGFydChzZWxmKToKKyAgICAgICAgZmllbGRzID0gWygndXNlcm5hbWUnLCAnd29rJyksICgncGFzc3dvcmQnLCAnc2VjcmV0JyldCisgICAgICAgIGZpbGVzID0gWygncGljdHVyZScsICd3b2sucG5nJywgYidQTkc4OScpXQorICAgICAgICBjb250ZW50X3R5cGUsIGJvZHkgPSBlbmNvZGVfbXVsdGlwYXJ0KGZpZWxkcywgZmlsZXMsIGInLXgnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGInbXVsdGlwYXJ0L2Zvcm0tZGF0YTsgYm91bmRhcnk9LXgnLCBjb250ZW50X3R5cGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRVhQRUNURURfTVVMVElQQVJUX09VVFBVVCwgYm9keS5zcGxpdChiJ1xyXG4nKSkKKworCitjbGFzcyBHbG9iVGVzdENhc2VCYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBidWlsZF9maWxlc190cmVlKHNlbGYsIGZpbGVzKToKKyAgICAgICAgdGVtcGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGZvciBmaWxlcGF0aCBpbiBmaWxlczoKKyAgICAgICAgICAgIGlzX2RpciA9IGZpbGVwYXRoLmVuZHN3aXRoKCcvJykKKyAgICAgICAgICAgIGZpbGVwYXRoID0gb3MucGF0aC5qb2luKHRlbXBkaXIsICpmaWxlcGF0aC5zcGxpdCgnLycpKQorICAgICAgICAgICAgaWYgaXNfZGlyOgorICAgICAgICAgICAgICAgIGRpcm5hbWUgPSBmaWxlcGF0aAorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBkaXJuYW1lID0gb3MucGF0aC5kaXJuYW1lKGZpbGVwYXRoKQorICAgICAgICAgICAgaWYgZGlybmFtZSBhbmQgbm90IG9zLnBhdGguZXhpc3RzKGRpcm5hbWUpOgorICAgICAgICAgICAgICAgIG9zLm1ha2VkaXJzKGRpcm5hbWUpCisgICAgICAgICAgICBpZiBub3QgaXNfZGlyOgorICAgICAgICAgICAgICAgIHNlbGYud3JpdGVfZmlsZShmaWxlcGF0aCwgJ2JhYmFyJykKKyAgICAgICAgcmV0dXJuIHRlbXBkaXIKKworICAgIEBzdGF0aWNtZXRob2QKKyAgICBkZWYgb3NfZGVwZW5kZW50X3BhdGgocGF0aCk6CisgICAgICAgIHBhdGggPSBwYXRoLnJzdHJpcCgnLycpLnNwbGl0KCcvJykKKyAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbigqcGF0aCkKKworICAgIGRlZiBjbGVhbl90cmVlKHNlbGYsIHNwZWMpOgorICAgICAgICBmaWxlcyA9IFtdCisgICAgICAgIGZvciBwYXRoLCBpbmNsdWRlcyBpbiBzcGVjLml0ZW1zKCk6CisgICAgICAgICAgICBpZiBpbmNsdWRlczoKKyAgICAgICAgICAgICAgICBmaWxlcy5hcHBlbmQoc2VsZi5vc19kZXBlbmRlbnRfcGF0aChwYXRoKSkKKyAgICAgICAgcmV0dXJuIGZpbGVzCisKKworY2xhc3MgR2xvYlRlc3RDYXNlKEdsb2JUZXN0Q2FzZUJhc2UpOgorCisgICAgZGVmIGFzc2VydEdsb2JNYXRjaChzZWxmLCBnbG9iLCBzcGVjKToKKyAgICAgICAgdGVtcGRpciA9IHNlbGYuYnVpbGRfZmlsZXNfdHJlZShzcGVjKQorICAgICAgICBleHBlY3RlZCA9IHNlbGYuY2xlYW5fdHJlZShzcGVjKQorICAgICAgICBvcy5jaGRpcih0ZW1wZGlyKQorICAgICAgICByZXN1bHQgPSBsaXN0KGlnbG9iKGdsb2IpKQorICAgICAgICBzZWxmLmFzc2VydENvdW50RXF1YWwoZXhwZWN0ZWQsIHJlc3VsdCkKKworICAgIGRlZiB0ZXN0X3JlZ2V4X3JpY2hfZ2xvYihzZWxmKToKKyAgICAgICAgbWF0Y2hlcyA9IFJJQ0hfR0xPQi5maW5kYWxsKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByImJhYmFyIGFpbWUgbGVzIHtmcmFpc2VzfSBlc3QgbGVzIHtodWl0cmVzfSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWyJmcmFpc2VzIiwgImh1aXRyZXMiXSwgbWF0Y2hlcykKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9nbG9iKHNlbGYpOgorICAgICAgICBnbG9iID0gJyoudHA/JworICAgICAgICBzcGVjID0geydjb3Vjb3UudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2NvdWNvdS50cGonOiBUcnVlLAorICAgICAgICAgICAgICAgICAnRG9ub3R3YW50JzogRmFsc2V9CisgICAgICAgIHNlbGYuYXNzZXJ0R2xvYk1hdGNoKGdsb2IsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9zaW1wbGVfZ2xvYl9pbl9kaXIoc2VsZik6CisgICAgICAgIGdsb2IgPSBvcy5wYXRoLmpvaW4oJ2JhYmFyJywgJyoudHA/JykKKyAgICAgICAgc3BlYyA9IHsnYmFiYXIvY291Y291LnRwbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICdiYWJhci9jb3Vjb3UudHBqJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2JhYmFyL3RvdG8uYmluJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICdEb25vdHdhbnQnOiBGYWxzZX0KKyAgICAgICAgc2VsZi5hc3NlcnRHbG9iTWF0Y2goZ2xvYiwgc3BlYykKKworICAgIGRlZiB0ZXN0X3JlY3Vyc2l2ZV9nbG9iX2hlYWQoc2VsZik6CisgICAgICAgIGdsb2IgPSBvcy5wYXRoLmpvaW4oJyoqJywgJ3RpcCcsICcqLnQ/bCcpCisgICAgICAgIHNwZWMgPSB7J2JhYmFyL3phemEvenV6dS90aXAvY291Y291LnRwbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICdiYWJhci96L3RpcC9jb3Vjb3UudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2JhYmFyL3RpcC9jb3Vjb3UudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2JhYmFyL3plb3AvdGlwL2JhYmFyL2JhYmFyLnRwbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnYmFiYXIvei90aXAvY291Y291LmJpbic6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnYmFiYXIvdG90by5iaW4nOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ3pvem8venV6dS90aXAvYmFiYXIudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ3pvem8vdGlwL2JhYmFyLnRwbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICdEb25vdHdhbnQnOiBGYWxzZX0KKyAgICAgICAgc2VsZi5hc3NlcnRHbG9iTWF0Y2goZ2xvYiwgc3BlYykKKworICAgIGRlZiB0ZXN0X3JlY3Vyc2l2ZV9nbG9iX3RhaWwoc2VsZik6CisgICAgICAgIGdsb2IgPSBvcy5wYXRoLmpvaW4oJ2JhYmFyJywgJyoqJykKKyAgICAgICAgc3BlYyA9IHsnYmFiYXIvemF6YS8nOiBUcnVlLAorICAgICAgICAgICAgICAgICdiYWJhci96YXphL3p1enUvJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAnYmFiYXIvemF6YS96dXp1L2JhYmFyLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgJ2JhYmFyL3phemEvenV6dS90b3RvLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgJ2JhYmFyL3phemEvenV6dS90b3RvLmNzdic6IFRydWUsCisgICAgICAgICAgICAgICAgJ2JhYmFyL3phemEvY291Y291LnRwbCc6IFRydWUsCisgICAgICAgICAgICAgICAgJ2JhYmFyL2J1YnUudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAnem96by96dXp1L3RpcC9iYWJhci50cGwnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAnem96by90aXAvYmFiYXIudHBsJzogRmFsc2UsCisgICAgICAgICAgICAgICAgJ0Rvbm90d2FudCc6IEZhbHNlfQorICAgICAgICBzZWxmLmFzc2VydEdsb2JNYXRjaChnbG9iLCBzcGVjKQorCisgICAgZGVmIHRlc3RfcmVjdXJzaXZlX2dsb2JfbWlkZGxlKHNlbGYpOgorICAgICAgICBnbG9iID0gb3MucGF0aC5qb2luKCdiYWJhcicsICcqKicsICd0aXAnLCAnKi50P2wnKQorICAgICAgICBzcGVjID0geydiYWJhci96YXphL3p1enUvdGlwL2NvdWNvdS50cGwnOiBUcnVlLAorICAgICAgICAgICAgICAgICAnYmFiYXIvei90aXAvY291Y291LnRwbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICdiYWJhci90aXAvY291Y291LnRwbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICdiYWJhci96ZW9wL3RpcC9iYWJhci9iYWJhci50cGwnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ2JhYmFyL3ovdGlwL2NvdWNvdS5iaW4nOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ2JhYmFyL3RvdG8uYmluJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICd6b3pvL3p1enUvdGlwL2JhYmFyLnRwbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnem96by90aXAvYmFiYXIudHBsJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICdEb25vdHdhbnQnOiBGYWxzZX0KKyAgICAgICAgc2VsZi5hc3NlcnRHbG9iTWF0Y2goZ2xvYiwgc3BlYykKKworICAgIGRlZiB0ZXN0X2dsb2Jfc2V0X3RhaWwoc2VsZik6CisgICAgICAgIGdsb2IgPSBvcy5wYXRoLmpvaW4oJ2JpbicsICcqLntiaW4sc2gsZXhlfScpCisgICAgICAgIHNwZWMgPSB7J2Jpbi9iYWJhci5iaW4nOiBUcnVlLAorICAgICAgICAgICAgICAgICAnYmluL3plcGhpci5zaCc6IFRydWUsCisgICAgICAgICAgICAgICAgICdiaW4vY2VsZXN0aW5lLmV4ZSc6IFRydWUsCisgICAgICAgICAgICAgICAgICdiaW4vY29ybmVsaXVzLmJhdCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnYmluL2Nvcm5lbGl1cy54bWwnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ3RvdG8veXVyZyc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnRG9ub3R3YW50JzogRmFsc2V9CisgICAgICAgIHNlbGYuYXNzZXJ0R2xvYk1hdGNoKGdsb2IsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9nbG9iX3NldF9taWRkbGUoc2VsZik6CisgICAgICAgIGdsb2IgPSBvcy5wYXRoLmpvaW4oJ3htbCcsICd7YmFiYXIsdG90b30ueG1sJykKKyAgICAgICAgc3BlYyA9IHsneG1sL2JhYmFyLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICd4bWwvdG90by54bWwnOiBUcnVlLAorICAgICAgICAgICAgICAgICAneG1sL2JhYmFyLnhzbHQnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ3htbC9jb3JuZWxpdXMuc2dtbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAneG1sL3plcGhpci54bWwnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ3RvdG8veXVyZy54bWwnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ0Rvbm90d2FudCc6IEZhbHNlfQorICAgICAgICBzZWxmLmFzc2VydEdsb2JNYXRjaChnbG9iLCBzcGVjKQorCisgICAgZGVmIHRlc3RfZ2xvYl9zZXRfaGVhZChzZWxmKToKKyAgICAgICAgZ2xvYiA9IG9zLnBhdGguam9pbigne3htbCx4c2x0fScsICdiYWJhci4qJykKKyAgICAgICAgc3BlYyA9IHsneG1sL2JhYmFyLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICd4bWwvdG90by54bWwnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ3hzbHQvYmFiYXIueHNsdCc6IFRydWUsCisgICAgICAgICAgICAgICAgICd4c2x0L3RvdG8ueHNsdCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAndG90by95dXJnLnhtbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnRG9ub3R3YW50JzogRmFsc2V9CisgICAgICAgIHNlbGYuYXNzZXJ0R2xvYk1hdGNoKGdsb2IsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9nbG9iX2FsbChzZWxmKToKKyAgICAgICAgZGlycyA9ICd7JXMsJXN9JyAlIChvcy5wYXRoLmpvaW4oJ3htbCcsICcqJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5qb2luKCd4c2x0JywgJyoqJykpCisgICAgICAgIGdsb2IgPSBvcy5wYXRoLmpvaW4oZGlycywgJ2JhYmFyLnhtbCcpCisgICAgICAgIHNwZWMgPSB7J3htbC9hL2JhYmFyLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICd4bWwvYi9iYWJhci54bWwnOiBUcnVlLAorICAgICAgICAgICAgICAgICAneG1sL2EvYy9iYWJhci54bWwnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ3hzbHQvYS9iYWJhci54bWwnOiBUcnVlLAorICAgICAgICAgICAgICAgICAneHNsdC9iL2JhYmFyLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICd4c2x0L2EvYy9iYWJhci54bWwnOiBUcnVlLAorICAgICAgICAgICAgICAgICAndG90by95dXJnLnhtbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnRG9ub3R3YW50JzogRmFsc2V9CisgICAgICAgIHNlbGYuYXNzZXJ0R2xvYk1hdGNoKGdsb2IsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9pbnZhbGlkX2dsb2JfcGF0dGVybihzZWxmKToKKyAgICAgICAgaW52YWxpZHMgPSBbCisgICAgICAgICAgICAncHBvb2EqKicsCisgICAgICAgICAgICAnYXp6YWVhejQqKi8nLAorICAgICAgICAgICAgJy8qKmRkc2ZzJywKKyAgICAgICAgICAgICcqKiMjMWUiJmUnLAorICAgICAgICAgICAgJ0RTRmIqKmMwMDknLAorICAgICAgICAgICAgJ3snLAorICAgICAgICAgICAgJ3thYVFTREZhJywKKyAgICAgICAgICAgICd9JywKKyAgICAgICAgICAgICdhUVNERlNhYX0nLAorICAgICAgICAgICAgJ3sqKmEsJywKKyAgICAgICAgICAgICcsKiphfScsCisgICAgICAgICAgICAne2EqKiwnLAorICAgICAgICAgICAgJyxiKip9JywKKyAgICAgICAgICAgICd7YSoqYSxiYWJhcn0nLAorICAgICAgICAgICAgJ3tib2IsYioqen0nLAorICAgICAgICBdCisgICAgICAgIGZvciBwYXR0ZXJuIGluIGludmFsaWRzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgaWdsb2IsIHBhdHRlcm4pCisKKworY2xhc3MgRWdnSW5mb1RvRGlzdEluZm9UZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgZ2V0X21ldGFkYXRhX2ZpbGVfcGF0aHMoc2VsZiwgZGlzdGluZm9fcGF0aCk6CisgICAgICAgIHJlcV9tZXRhZGF0YV9maWxlcyA9IFsnTUVUQURBVEEnLCAnUkVDT1JEJywgJ0lOU1RBTExFUiddCisgICAgICAgIG1ldGFkYXRhX2ZpbGVfcGF0aHMgPSBbXQorICAgICAgICBmb3IgbWV0YWRhdGFfZmlsZSBpbiByZXFfbWV0YWRhdGFfZmlsZXM6CisgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKGRpc3RpbmZvX3BhdGgsIG1ldGFkYXRhX2ZpbGUpCisgICAgICAgICAgICBtZXRhZGF0YV9maWxlX3BhdGhzLmFwcGVuZChwYXRoKQorICAgICAgICByZXR1cm4gbWV0YWRhdGFfZmlsZV9wYXRocworCisgICAgZGVmIHRlc3RfZWdnaW5mb190b19kaXN0aW5mb19zZXR1cHRvb2xzKHNlbGYpOgorICAgICAgICBkaXN0aW5mbyA9ICdoZWxsby0wLjEuMS1weTMuMy5kaXN0LWluZm8nCisgICAgICAgIGVnZ2luZm8gPSAnaGVsbG8tMC4xLjEtcHkzLjMuZWdnLWluZm8nCisgICAgICAgIGRpcnMgPSBbZWdnaW5mb10KKyAgICAgICAgZmlsZXMgPSBbJ2hlbGxvLnB5JywgJ2hlbGxvLnB5YyddCisgICAgICAgIGV4dHJhX21ldGFkYXRhID0gWydkZXBlbmRlbmN5X2xpbmtzLnR4dCcsICdlbnRyeV9wb2ludHMudHh0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ25vdC16aXAtc2FmZScsICdQS0ctSU5GTycsICd0b3BfbGV2ZWwudHh0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ1NPVVJDRVMudHh0J10KKyAgICAgICAgZm9yIGYgaW4gZXh0cmFfbWV0YWRhdGE6CisgICAgICAgICAgICBmaWxlcy5hcHBlbmQob3MucGF0aC5qb2luKGVnZ2luZm8sIGYpKQorCisgICAgICAgIHRlbXBkaXIsIHJlY29yZF9maWxlID0gc2VsZi5idWlsZF9kaXN0X3RyZWUoZmlsZXMsIGRpcnMpCisgICAgICAgIGRpc3RpbmZvX3BhdGggPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgZGlzdGluZm8pCisgICAgICAgIGVnZ2luZm9fcGF0aCA9IG9zLnBhdGguam9pbih0ZW1wZGlyLCBlZ2dpbmZvKQorICAgICAgICBtZXRhZGF0YV9maWxlX3BhdGhzID0gc2VsZi5nZXRfbWV0YWRhdGFfZmlsZV9wYXRocyhkaXN0aW5mb19wYXRoKQorCisgICAgICAgIGVnZ2luZm9fdG9fZGlzdGluZm8ocmVjb3JkX2ZpbGUpCisgICAgICAgICMgdGVzdCB0aGF0IGRpcmVjdG9yaWVzIGFuZCBmaWxlcyBnZXQgY3JlYXRlZAorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2RpcihkaXN0aW5mb19wYXRoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNkaXIoZWdnaW5mb19wYXRoKSkKKworICAgICAgICBmb3IgbWZpbGUgaW4gbWV0YWRhdGFfZmlsZV9wYXRoczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShtZmlsZSkpCisKKyAgICBkZWYgdGVzdF9lZ2dpbmZvX3RvX2Rpc3RpbmZvX2Rpc3R1dGlscyhzZWxmKToKKyAgICAgICAgZGlzdGluZm8gPSAnaGVsbG8tMC4xLjEtcHkzLjMuZGlzdC1pbmZvJworICAgICAgICBlZ2dpbmZvID0gJ2hlbGxvLTAuMS4xLXB5My4zLmVnZy1pbmZvJworICAgICAgICAjIGVnZ2luZm8gaXMgYSBmaWxlIGluIGRpc3R1dGlscyB3aGljaCBjb250YWlucyB0aGUgbWV0YWRhdGEKKyAgICAgICAgZmlsZXMgPSBbJ2hlbGxvLnB5JywgJ2hlbGxvLnB5YycsIGVnZ2luZm9dCisKKyAgICAgICAgdGVtcGRpciwgcmVjb3JkX2ZpbGUgPSBzZWxmLmJ1aWxkX2Rpc3RfdHJlZShmaWxlcywgZGlycz1bXSkKKyAgICAgICAgZGlzdGluZm9fcGF0aCA9IG9zLnBhdGguam9pbih0ZW1wZGlyLCBkaXN0aW5mbykKKyAgICAgICAgZWdnaW5mb19wYXRoID0gb3MucGF0aC5qb2luKHRlbXBkaXIsIGVnZ2luZm8pCisgICAgICAgIG1ldGFkYXRhX2ZpbGVfcGF0aHMgPSBzZWxmLmdldF9tZXRhZGF0YV9maWxlX3BhdGhzKGRpc3RpbmZvX3BhdGgpCisKKyAgICAgICAgZWdnaW5mb190b19kaXN0aW5mbyhyZWNvcmRfZmlsZSkKKyAgICAgICAgIyB0ZXN0IHRoYXQgZGlyZWN0b3JpZXMgYW5kIGZpbGVzIGdldCBjcmVhdGVkCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZGlyKGRpc3RpbmZvX3BhdGgpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2ZpbGUoZWdnaW5mb19wYXRoKSkKKworICAgICAgICBmb3IgbWZpbGUgaW4gbWV0YWRhdGFfZmlsZV9wYXRoczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShtZmlsZSkpCisKKyAgICBkZWYgYnVpbGRfZGlzdF90cmVlKHNlbGYsIGZpbGVzLCBkaXJzKToKKyAgICAgICAgdGVtcGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHJlY29yZF9maWxlX3BhdGggPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgJ1JFQ09SRCcpCisgICAgICAgIGZpbGVfcGF0aHMsIGRpcl9wYXRocyA9IChbXSwgW10pCisgICAgICAgIGZvciBkIGluIGRpcnM6CisgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKHRlbXBkaXIsIGQpCisgICAgICAgICAgICBvcy5tYWtlZGlycyhwYXRoKQorICAgICAgICAgICAgZGlyX3BhdGhzLmFwcGVuZChwYXRoKQorICAgICAgICBmb3IgZiBpbiBmaWxlczoKKyAgICAgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgZikKKyAgICAgICAgICAgIHdpdGggb3BlbihwYXRoLCAndycpIGFzIF9mOgorICAgICAgICAgICAgICAgIF9mLndyaXRlKGYpCisgICAgICAgICAgICBmaWxlX3BhdGhzLmFwcGVuZChwYXRoKQorCisgICAgICAgIHdpdGggb3BlbihyZWNvcmRfZmlsZV9wYXRoLCAndycpIGFzIHJlY29yZF9maWxlOgorICAgICAgICAgICAgZm9yIGZwYXRoIGluIGZpbGVfcGF0aHM6CisgICAgICAgICAgICAgICAgcmVjb3JkX2ZpbGUud3JpdGUoZnBhdGggKyAnXG4nKQorICAgICAgICAgICAgZm9yIGRwYXRoIGluIGRpcl9wYXRoczoKKyAgICAgICAgICAgICAgICByZWNvcmRfZmlsZS53cml0ZShkcGF0aCArICdcbicpCisKKyAgICAgICAgcmV0dXJuICh0ZW1wZGlyLCByZWNvcmRfZmlsZV9wYXRoKQorCisKK2NsYXNzIFBhY2thZ2luZ0xpYkNoZWNrcyhzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihQYWNrYWdpbmdMaWJDaGVja3MsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5fZW1wdHlfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKworICAgIGRlZiB0ZXN0X2VtcHR5X3BhY2thZ2VfaXNfbm90X2Jhc2VkX29uX2FueXRoaW5nKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX3NldHVwdG9vbHMoc2VsZi5fZW1wdHlfZGlyKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpc19kaXN0dXRpbHMoc2VsZi5fZW1wdHlfZGlyKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpc19wYWNrYWdpbmcoc2VsZi5fZW1wdHlfZGlyKSkKKworICAgIGRlZiB0ZXN0X3NldHVwX3B5X2ltcG9ydGluZ19zZXR1cHRvb2xzX2lzX3NldHVwdG9vbHNfYmFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc19zZXR1cHRvb2xzKHNlbGYuX3NldHVwdG9vbHNfc2V0dXBfcHlfcGtnKCkpKQorCisgICAgZGVmIHRlc3RfZWdnX2luZm9fZGlyX2FuZF9zZXR1cF9weV9pc19zZXR1cHRvb2xzX2Jhc2VkKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNfc2V0dXB0b29scyhzZWxmLl9zZXR1cHRvb2xzX2VnZ19pbmZvX3BrZygpKSkKKworICAgIGRlZiB0ZXN0X2VnZ19pbmZvX2FuZF9ub25fc2V0dXB0b29sc19zZXR1cF9weV9pc19zZXR1cHRvb2xzX2Jhc2VkKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNfc2V0dXB0b29scyhzZWxmLl9lZ2dfaW5mb193aXRoX25vX3NldHVwdG9vbHMoKSkpCisKKyAgICBkZWYgdGVzdF9zZXR1cF9weV9ub3RfaW1wb3J0aW5nX3NldHVwdG9vbHNfaXNfbm90X3NldHVwdG9vbHNfYmFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaXNfc2V0dXB0b29scyhzZWxmLl9yYW5kb21fc2V0dXBfcHlfcGtnKCkpKQorCisgICAgZGVmIHRlc3Rfc2V0dXBfcHlfaW1wb3J0aW5nX2Rpc3R1dGlsc19pc19kaXN0dXRpbHNfYmFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc19kaXN0dXRpbHMoc2VsZi5fZGlzdHV0aWxzX3NldHVwX3B5X3BrZygpKSkKKworICAgIGRlZiB0ZXN0X3BrZ19pbmZvX2ZpbGVfYW5kX3NldHVwX3B5X2lzX2Rpc3R1dGlsc19iYXNlZChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzX2Rpc3R1dGlscyhzZWxmLl9kaXN0dXRpbHNfcGtnX2luZm8oKSkpCisKKyAgICBkZWYgdGVzdF9wa2dfaW5mb19hbmRfbm9uX2Rpc3R1dGlsc19zZXR1cF9weV9pc19kaXN0dXRpbHNfYmFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc19kaXN0dXRpbHMoc2VsZi5fcGtnX2luZm9fd2l0aF9ub19kaXN0dXRpbHMoKSkpCisKKyAgICBkZWYgdGVzdF9zZXR1cF9weV9ub3RfaW1wb3J0aW5nX2Rpc3R1dGlsc19pc19ub3RfZGlzdHV0aWxzX2Jhc2VkKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX2Rpc3R1dGlscyhzZWxmLl9yYW5kb21fc2V0dXBfcHlfcGtnKCkpKQorCisgICAgZGVmIHRlc3Rfc2V0dXBfY2ZnX3dpdGhfbm9fbWV0YWRhdGFfc2VjdGlvbl9pc19ub3RfcGFja2FnaW5nX2Jhc2VkKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX3BhY2thZ2luZyhzZWxmLl9zZXR1cF9jZmdfd2l0aF9ub19tZXRhZGF0YV9wa2coKSkpCisKKyAgICBkZWYgdGVzdF9zZXR1cF9jZmdfd2l0aF92YWxpZF9tZXRhZGF0YV9zZWN0aW9uX2lzX3BhY2thZ2luZ19iYXNlZChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzX3BhY2thZ2luZyhzZWxmLl92YWxpZF9zZXR1cF9jZmdfcGtnKCkpKQorCisgICAgZGVmIHRlc3Rfc2V0dXBfY2ZnX2FuZF9pbnZhbGlkX3NldHVwX2NmZ19pc19ub3RfcGFja2FnaW5nX2Jhc2VkKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX3BhY2thZ2luZyhzZWxmLl9pbnZhbGlkX3NldHVwX2NmZ19wa2coKSkpCisKKyAgICBkZWYgdGVzdF9nZXRfaW5zdGFsbF9tZXRob2Rfd2l0aF9zZXR1cHRvb2xzX3BrZyhzZWxmKToKKyAgICAgICAgcGF0aCA9IHNlbGYuX3NldHVwdG9vbHNfc2V0dXBfcHlfcGtnKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgic2V0dXB0b29scyIsIGdldF9pbnN0YWxsX21ldGhvZChwYXRoKSkKKworICAgIGRlZiB0ZXN0X2dldF9pbnN0YWxsX21ldGhvZF93aXRoX2Rpc3R1dGlsc19wa2coc2VsZik6CisgICAgICAgIHBhdGggPSBzZWxmLl9kaXN0dXRpbHNfcGtnX2luZm8oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJkaXN0dXRpbHMiLCBnZXRfaW5zdGFsbF9tZXRob2QocGF0aCkpCisKKyAgICBkZWYgdGVzdF9nZXRfaW5zdGFsbF9tZXRob2Rfd2l0aF9wYWNrYWdpbmdfcGtnKHNlbGYpOgorICAgICAgICBwYXRoID0gc2VsZi5fdmFsaWRfc2V0dXBfY2ZnX3BrZygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInBhY2thZ2luZyIsIGdldF9pbnN0YWxsX21ldGhvZChwYXRoKSkKKworICAgIGRlZiB0ZXN0X2dldF9pbnN0YWxsX21ldGhvZF93aXRoX3Vua25vd25fcGtnKHNlbGYpOgorICAgICAgICBwYXRoID0gc2VsZi5faW52YWxpZF9zZXR1cF9jZmdfcGtnKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW5zdGFsbGF0aW9uRXhjZXB0aW9uLCBnZXRfaW5zdGFsbF9tZXRob2QsIHBhdGgpCisKKyAgICBkZWYgdGVzdF9pc19zZXR1cHRvb2xzX2xvZ3Nfc2V0dXBfcHlfdGV4dF9mb3VuZChzZWxmKToKKyAgICAgICAgaXNfc2V0dXB0b29scyhzZWxmLl9zZXR1cHRvb2xzX3NldHVwX3B5X3BrZygpKQorICAgICAgICBleHBlY3RlZCA9IFsnc2V0dXAucHkgZmlsZSBmb3VuZC4nLAorICAgICAgICAgICAgICAgICAgICAnTm8gZWdnLWluZm8gZGlyZWN0b3J5IGZvdW5kLicsCisgICAgICAgICAgICAgICAgICAgICdGb3VuZCBzZXR1cHRvb2xzIHRleHQgaW4gc2V0dXAucHkuJ10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHBlY3RlZCwgc2VsZi5nZXRfbG9ncyhsb2dnaW5nLkRFQlVHKSkKKworICAgIGRlZiB0ZXN0X2lzX3NldHVwdG9vbHNfbG9nc19zZXR1cF9weV90ZXh0X25vdF9mb3VuZChzZWxmKToKKyAgICAgICAgZGlyZWN0b3J5ID0gc2VsZi5fcmFuZG9tX3NldHVwX3B5X3BrZygpCisgICAgICAgIGlzX3NldHVwdG9vbHMoZGlyZWN0b3J5KQorICAgICAgICBleHBlY3RlZCA9IFsnc2V0dXAucHkgZmlsZSBmb3VuZC4nLCAnTm8gZWdnLWluZm8gZGlyZWN0b3J5IGZvdW5kLicsCisgICAgICAgICAgICAgICAgICAgICdObyBzZXR1cHRvb2xzIHRleHQgZm91bmQgaW4gc2V0dXAucHkuJ10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHBlY3RlZCwgc2VsZi5nZXRfbG9ncyhsb2dnaW5nLkRFQlVHKSkKKworICAgIGRlZiB0ZXN0X2lzX3NldHVwdG9vbHNfbG9nc19lZ2dfaW5mb19kaXJfZm91bmQoc2VsZik6CisgICAgICAgIGlzX3NldHVwdG9vbHMoc2VsZi5fc2V0dXB0b29sc19lZ2dfaW5mb19wa2coKSkKKyAgICAgICAgZXhwZWN0ZWQgPSBbJ3NldHVwLnB5IGZpbGUgZm91bmQuJywgJ0ZvdW5kIGVnZy1pbmZvIGRpcmVjdG9yeS4nXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBzZWxmLmdldF9sb2dzKGxvZ2dpbmcuREVCVUcpKQorCisgICAgZGVmIHRlc3RfaXNfZGlzdHV0aWxzX2xvZ3Nfc2V0dXBfcHlfdGV4dF9mb3VuZChzZWxmKToKKyAgICAgICAgaXNfZGlzdHV0aWxzKHNlbGYuX2Rpc3R1dGlsc19zZXR1cF9weV9wa2coKSkKKyAgICAgICAgZXhwZWN0ZWQgPSBbJ3NldHVwLnB5IGZpbGUgZm91bmQuJywKKyAgICAgICAgICAgICAgICAgICAgJ05vIFBLRy1JTkZPIGZpbGUgZm91bmQuJywKKyAgICAgICAgICAgICAgICAgICAgJ0ZvdW5kIGRpc3R1dGlscyB0ZXh0IGluIHNldHVwLnB5LiddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhwZWN0ZWQsIHNlbGYuZ2V0X2xvZ3MobG9nZ2luZy5ERUJVRykpCisKKyAgICBkZWYgdGVzdF9pc19kaXN0dXRpbHNfbG9nc19zZXR1cF9weV90ZXh0X25vdF9mb3VuZChzZWxmKToKKyAgICAgICAgZGlyZWN0b3J5ID0gc2VsZi5fcmFuZG9tX3NldHVwX3B5X3BrZygpCisgICAgICAgIGlzX2Rpc3R1dGlscyhkaXJlY3RvcnkpCisgICAgICAgIGV4cGVjdGVkID0gWydzZXR1cC5weSBmaWxlIGZvdW5kLicsICdObyBQS0ctSU5GTyBmaWxlIGZvdW5kLicsCisgICAgICAgICAgICAgICAgICAgICdObyBkaXN0dXRpbHMgdGV4dCBmb3VuZCBpbiBzZXR1cC5weS4nXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBzZWxmLmdldF9sb2dzKGxvZ2dpbmcuREVCVUcpKQorCisgICAgZGVmIHRlc3RfaXNfZGlzdHV0aWxzX2xvZ3NfcGtnX2luZm9fZmlsZV9mb3VuZChzZWxmKToKKyAgICAgICAgaXNfZGlzdHV0aWxzKHNlbGYuX2Rpc3R1dGlsc19wa2dfaW5mbygpKQorICAgICAgICBleHBlY3RlZCA9IFsnc2V0dXAucHkgZmlsZSBmb3VuZC4nLCAnUEtHLUlORk8gZmlsZSBmb3VuZC4nXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBzZWxmLmdldF9sb2dzKGxvZ2dpbmcuREVCVUcpKQorCisgICAgZGVmIHRlc3RfaXNfcGFja2FnaW5nX2xvZ3Nfc2V0dXBfY2ZnX2ZvdW5kKHNlbGYpOgorICAgICAgICBpc19wYWNrYWdpbmcoc2VsZi5fdmFsaWRfc2V0dXBfY2ZnX3BrZygpKQorICAgICAgICBleHBlY3RlZCA9IFsnc2V0dXAuY2ZnIGZpbGUgZm91bmQuJ10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHBlY3RlZCwgc2VsZi5nZXRfbG9ncyhsb2dnaW5nLkRFQlVHKSkKKworICAgIGRlZiB0ZXN0X2lzX3BhY2thZ2luZ19sb2dzX3NldHVwX2NmZ19ub3RfZm91bmQoc2VsZik6CisgICAgICAgIGlzX3BhY2thZ2luZyhzZWxmLl9lbXB0eV9kaXIpCisgICAgICAgIGV4cGVjdGVkID0gWydObyBzZXR1cC5jZmcgZmlsZSBmb3VuZC4nXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBzZWxmLmdldF9sb2dzKGxvZ2dpbmcuREVCVUcpKQorCisgICAgZGVmIF93cml0ZV9zZXR1cHRvb2xzX3NldHVwX3B5KHNlbGYsIGRpcmVjdG9yeSk6CisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoZGlyZWN0b3J5LCAnc2V0dXAucHknKSwKKyAgICAgICAgICAgICAgICAiZnJvbSBzZXR1cHRvb2xzIGltcG9ydCBzZXR1cCIpCisKKyAgICBkZWYgX3dyaXRlX2Rpc3R1dGlsc19zZXR1cF9weShzZWxmLCBkaXJlY3RvcnkpOgorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoW2RpcmVjdG9yeSwgJ3NldHVwLnB5J10sCisgICAgICAgICAgICAgICAgImZyb20gZGlzdHV0aWxzLmNvcmUgaW1wb3J0IHNldHVwIikKKworICAgIGRlZiBfd3JpdGVfcGFja2FnaW5nX3NldHVwX2NmZyhzZWxmLCBkaXJlY3RvcnkpOgorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoW2RpcmVjdG9yeSwgJ3NldHVwLmNmZyddLAorICAgICAgICAgICAgICAgICAgICAgICAgKCJbbWV0YWRhdGFdXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUgPSBteXBhY2thZ2VcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAidmVyc2lvbiA9IDAuMS4wXG4iKSkKKworICAgIGRlZiBfc2V0dXB0b29sc19zZXR1cF9weV9wa2coc2VsZik6CisgICAgICAgIHRtcCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNlbGYuX3dyaXRlX3NldHVwdG9vbHNfc2V0dXBfcHkodG1wKQorICAgICAgICByZXR1cm4gdG1wCisKKyAgICBkZWYgX2Rpc3R1dGlsc19zZXR1cF9weV9wa2coc2VsZik6CisgICAgICAgIHRtcCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNlbGYuX3dyaXRlX2Rpc3R1dGlsc19zZXR1cF9weSh0bXApCisgICAgICAgIHJldHVybiB0bXAKKworICAgIGRlZiBfdmFsaWRfc2V0dXBfY2ZnX3BrZyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi5fd3JpdGVfcGFja2FnaW5nX3NldHVwX2NmZyh0bXApCisgICAgICAgIHJldHVybiB0bXAKKworICAgIGRlZiBfc2V0dXB0b29sc19lZ2dfaW5mb19wa2coc2VsZik6CisgICAgICAgIHRtcCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNlbGYuX3dyaXRlX3NldHVwdG9vbHNfc2V0dXBfcHkodG1wKQorICAgICAgICB0ZW1wZmlsZS5ta2R0ZW1wKHN1ZmZpeD0nLmVnZy1pbmZvJywgZGlyPXRtcCkKKyAgICAgICAgcmV0dXJuIHRtcAorCisgICAgZGVmIF9kaXN0dXRpbHNfcGtnX2luZm8oc2VsZik6CisgICAgICAgIHRtcCA9IHNlbGYuX2Rpc3R1dGlsc19zZXR1cF9weV9wa2coKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoW3RtcCwgJ1BLRy1JTkZPJ10sICcnLCBlbmNvZGluZz0nVVRGLTgnKQorICAgICAgICByZXR1cm4gdG1wCisKKyAgICBkZWYgX3NldHVwX2NmZ193aXRoX25vX21ldGFkYXRhX3BrZyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKFt0bXAsICdzZXR1cC5jZmcnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICgiW290aGVyc2VjdGlvbl1cbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAiZm9vID0gYmFyXG4iKSkKKyAgICAgICAgcmV0dXJuIHRtcAorCisgICAgZGVmIF9pbnZhbGlkX3NldHVwX2NmZ19wa2coc2VsZik6CisgICAgICAgIHRtcCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShbdG1wLCAnc2V0dXAuY2ZnJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAoIlttZXRhZGF0YV1cbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSA9IGpvaG5cbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAibGFzdF9uYW1lID0gZG9lXG4iKSkKKyAgICAgICAgcmV0dXJuIHRtcAorCisgICAgZGVmIF9lZ2dfaW5mb193aXRoX25vX3NldHVwdG9vbHMoc2VsZik6CisgICAgICAgIHRtcCA9IHNlbGYuX3JhbmRvbV9zZXR1cF9weV9wa2coKQorICAgICAgICB0ZW1wZmlsZS5ta2R0ZW1wKHN1ZmZpeD0nLmVnZy1pbmZvJywgZGlyPXRtcCkKKyAgICAgICAgcmV0dXJuIHRtcAorCisgICAgZGVmIF9wa2dfaW5mb193aXRoX25vX2Rpc3R1dGlscyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5fcmFuZG9tX3NldHVwX3B5X3BrZygpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShbdG1wLCAnUEtHLUlORk8nXSwgJycsIGVuY29kaW5nPSdVVEYtOCcpCisgICAgICAgIHJldHVybiB0bXAKKworICAgIGRlZiBfcmFuZG9tX3NldHVwX3B5X3BrZyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCh0bXAsICdzZXR1cC5weScpLCAiZnJvbSBteXBhY2thZ2UgaW1wb3J0IHNldHVwIikKKyAgICAgICAgcmV0dXJuIHRtcAorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgc3VpdGUgPSB1bml0dGVzdC5tYWtlU3VpdGUoVXRpbFRlc3RDYXNlKQorICAgIHN1aXRlLmFkZFRlc3QodW5pdHRlc3QubWFrZVN1aXRlKEdsb2JUZXN0Q2FzZSkpCisgICAgc3VpdGUuYWRkVGVzdCh1bml0dGVzdC5tYWtlU3VpdGUoRWdnSW5mb1RvRGlzdEluZm9UZXN0Q2FzZSkpCisgICAgc3VpdGUuYWRkVGVzdCh1bml0dGVzdC5tYWtlU3VpdGUoUGFja2FnaW5nTGliQ2hlY2tzKSkKKyAgICByZXR1cm4gc3VpdGUKKworCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3ZlcnNpb24ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfdmVyc2lvbi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZDE3OGJmCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3ZlcnNpb24ucHkKQEAgLTAsMCArMSwyNzEgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcudmVyc2lvbi4iIiIKK2ltcG9ydCBkb2N0ZXN0CisKK2Zyb20gcGFja2FnaW5nLnZlcnNpb24gaW1wb3J0IE5vcm1hbGl6ZWRWZXJzaW9uIGFzIFYKK2Zyb20gcGFja2FnaW5nLnZlcnNpb24gaW1wb3J0IEh1Z2VNYWpvclZlcnNpb25OdW1FcnJvciwgSXJyYXRpb25hbFZlcnNpb25FcnJvcgorZnJvbSBwYWNrYWdpbmcudmVyc2lvbiBpbXBvcnQgc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb24gYXMgc3VnZ2VzdAorZnJvbSBwYWNrYWdpbmcudmVyc2lvbiBpbXBvcnQgVmVyc2lvblByZWRpY2F0ZQorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0CisKKworY2xhc3MgVmVyc2lvblRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIHZlcnNpb25zID0gKChWKCcxLjAnKSwgJzEuMCcpLAorICAgICAgICAgICAgICAgIChWKCcxLjEnKSwgJzEuMScpLAorICAgICAgICAgICAgICAgIChWKCcxLjIuMycpLCAnMS4yLjMnKSwKKyAgICAgICAgICAgICAgICAoVignMS4yJyksICcxLjInKSwKKyAgICAgICAgICAgICAgICAoVignMS4yLjNhNCcpLCAnMS4yLjNhNCcpLAorICAgICAgICAgICAgICAgIChWKCcxLjJjNCcpLCAnMS4yYzQnKSwKKyAgICAgICAgICAgICAgICAoVignNC4xN3JjMicpLCAnNC4xN3JjMicpLAorICAgICAgICAgICAgICAgIChWKCcxLjIuMy40JyksICcxLjIuMy40JyksCisgICAgICAgICAgICAgICAgKFYoJzEuMi4zLjQuMGIzJyksICcxLjIuMy40YjMnKSwKKyAgICAgICAgICAgICAgICAoVignMS4yLjAuMC4wJyksICcxLjInKSwKKyAgICAgICAgICAgICAgICAoVignMS4wLmRldjM0NScpLCAnMS4wLmRldjM0NScpLAorICAgICAgICAgICAgICAgIChWKCcxLjAucG9zdDQ1Ni5kZXY2MjMnKSwgJzEuMC5wb3N0NDU2LmRldjYyMycpKQorCisgICAgZGVmIHRlc3RfcmVwcihzZWxmKToKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIoVignMS4wJykpLCAiTm9ybWFsaXplZFZlcnNpb24oJzEuMCcpIikKKworICAgIGRlZiB0ZXN0X2Jhc2ljX3ZlcnNpb25zKHNlbGYpOgorCisgICAgICAgIGZvciB2LCBzIGluIHNlbGYudmVyc2lvbnM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih2KSwgcykKKworICAgIGRlZiB0ZXN0X2hhc2goc2VsZik6CisKKyAgICAgICAgZm9yIHYsIHMgaW4gc2VsZi52ZXJzaW9uczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFzaCh2KSwgaGFzaChWKHMpKSkKKworICAgICAgICB2ZXJzaW9ucyA9IHNldChbdiBmb3IgdiwgcyBpbiBzZWxmLnZlcnNpb25zXSkKKyAgICAgICAgZm9yIHYsIHMgaW4gc2VsZi52ZXJzaW9uczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4odiwgdmVyc2lvbnMpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZXQoW1YoJzEuMCcpXSksIHNldChbVignMS4wJyksIFYoJzEuMCcpXSkpCisKKyAgICBkZWYgdGVzdF9mcm9tX3BhcnRzKHNlbGYpOgorCisgICAgICAgIGZvciB2LCBzIGluIHNlbGYudmVyc2lvbnM6CisgICAgICAgICAgICB2MiA9IFYuZnJvbV9wYXJ0cygqdi5wYXJ0cykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgdjIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih2KSwgc3RyKHYyKSkKKworICAgIGRlZiB0ZXN0X2lycmF0aW9uYWxfdmVyc2lvbnMoc2VsZik6CisKKyAgICAgICAgaXJyYXRpb25hbCA9ICgnMScsICcxLjJhJywgJzEuMi4zYicsICcxLjAyJywgJzEuMmEwMycsCisgICAgICAgICAgICAgICAgICAgICAgJzEuMmEzLjA0JywgJzEuMi5kZXYuMicsICcxLjJkZXYnLCAnMS4yLmRldicsCisgICAgICAgICAgICAgICAgICAgICAgJzEuMi5kZXYyLnBvc3QyJywgJzEuMi5wb3N0Mi5kZXYzLnBvc3Q0JykKKworICAgICAgICBmb3IgcyBpbiBpcnJhdGlvbmFsOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSXJyYXRpb25hbFZlcnNpb25FcnJvciwgViwgcykKKworICAgIGRlZiB0ZXN0X2h1Z2VfdmVyc2lvbihzZWxmKToKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihWKCcxOTgwLjAnKSksICcxOTgwLjAnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhIdWdlTWFqb3JWZXJzaW9uTnVtRXJyb3IsIFYsICcxOTgxLjAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihWKCcxOTgxLjAnLCBlcnJvcl9vbl9odWdlX21ham9yX251bT1GYWxzZSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICcxOTgxLjAnKQorCisgICAgZGVmIHRlc3RfY29tcGFyaXNvbihzZWxmKToKKyAgICAgICAgY29tcGFyaXNvbl9kb2N0ZXN0X3N0cmluZyA9IHIiIiIKKyAgICAgICAgPj4+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+Pj4gKFYoJzEuMGExJykKKyAgICAgICAgLi4uICA8IFYoJzEuMGEyLmRldjQ1NicpCisgICAgICAgIC4uLiAgPCBWKCcxLjBhMicpCisgICAgICAgIC4uLiAgPCBWKCcxLjBhMi4xLmRldjQ1NicpICAjIGUuZy4gbmVlZCB0byBkbyBhIHF1aWNrIHBvc3QgcmVsZWFzZSBvbiAxLjBhMgorICAgICAgICAuLi4gIDwgVignMS4wYTIuMScpCisgICAgICAgIC4uLiAgPCBWKCcxLjBiMS5kZXY0NTYnKQorICAgICAgICAuLi4gIDwgVignMS4wYjInKQorICAgICAgICAuLi4gIDwgVignMS4wYzEuZGV2NDU2JykKKyAgICAgICAgLi4uICA8IFYoJzEuMGMxJykKKyAgICAgICAgLi4uICA8IFYoJzEuMC5kZXY3JykKKyAgICAgICAgLi4uICA8IFYoJzEuMC5kZXYxOCcpCisgICAgICAgIC4uLiAgPCBWKCcxLjAuZGV2NDU2JykKKyAgICAgICAgLi4uICA8IFYoJzEuMC5kZXYxMjM0JykKKyAgICAgICAgLi4uICA8IFYoJzEuMHJjMScpCisgICAgICAgIC4uLiAgPCBWKCcxLjByYzInKQorICAgICAgICAuLi4gIDwgVignMS4wJykKKyAgICAgICAgLi4uICA8IFYoJzEuMC5wb3N0NDU2LmRldjYyMycpICAjIGRldmVsb3BtZW50IHZlcnNpb24gb2YgYSBwb3N0IHJlbGVhc2UKKyAgICAgICAgLi4uICA8IFYoJzEuMC5wb3N0NDU2JykpCisgICAgICAgIFRydWUKKyAgICAgICAgIiIiCisgICAgICAgIGRvY3Rlc3Quc2NyaXB0X2Zyb21fZXhhbXBsZXMoY29tcGFyaXNvbl9kb2N0ZXN0X3N0cmluZykKKworICAgICAgICAjIHRoZSBkb2N0ZXN0IGFib3ZlIGlzIG5ldmVyIHJ1biwgc28gdGVtcG9yYXJpbHkgYWRkIHJlYWwgdW5pdAorICAgICAgICAjIHRlc3RzIHVudGlsIHRoZSBkb2N0ZXN0IGlzIHJld3JpdHRlbgorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChWKCcxLjIuMHJjMScpLCBWKCcxLjIuMCcpKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIoVignMS4wJyksIFYoJzEuMGMyJykpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihWKCcxLjAnKSwgVignMS4wcmMyJykpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihWKCcxLjByYzInKSwgVignMS4wcmMxJykpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihWKCcxLjBjNCcpLCBWKCcxLjBjMScpKQorCisgICAgZGVmIHRlc3Rfc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb24oc2VsZik6CisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWdnZXN0KCcxLjAnKSwgJzEuMCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnMS4wLWFscGhhMScpLCAnMS4wYTEnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzEuMGMyJyksICcxLjBjMicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnd2FsbGEgd2FsbGEgd2FzaGluZ3RvbicpLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzIuNGMxJyksICcyLjRjMScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgndjEuMCcpLCAnMS4wJykKKworICAgICAgICAjIGZyb20gc2V0dXB0b29scworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzAuNGExLnIxMCcpLCAnMC40YTEucG9zdDEwJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWdnZXN0KCcwLjdhMWRldi1yNjY2MDgnKSwgJzAuN2ExLmRldjY2NjA4JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWdnZXN0KCcwLjZhOS5kZXYtcjQxNDc1JyksICcwLjZhOS5kZXY0MTQ3NScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnMi40cHJldmlldzEnKSwgJzIuNGMxJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWdnZXN0KCcyLjRwcmUxJyksICcyLjRjMScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnMi4xLXJjMicpLCAnMi4xYzInKQorCisgICAgICAgICMgZnJvbSBweXBpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnMC4xZGV2JyksICcwLjEuZGV2MCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnMC4xLmRldicpLCAnMC4xLmRldjAnKQorCisgICAgICAgICMgd2Ugd2FudCB0byBiZSBhYmxlIHRvIHBhcnNlIFR3aXN0ZWQKKyAgICAgICAgIyBkZXZlbG9wbWVudCB2ZXJzaW9ucyBhcmUgbGlrZSBwb3N0IHJlbGVhc2VzIGluIFR3aXN0ZWQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWdnZXN0KCc5LjAuMCtyMjM2MycpLCAnOS4wLjAucG9zdDIzNjMnKQorCisgICAgICAgICMgcHJlLXJlbGVhc2VzIGFyZSB1c2luZyBtYXJrZXJzIGxpa2UgInByZTEiCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnOS4wLjBwcmUxJyksICc5LjAuMGMxJykKKworICAgICAgICAjIHdlIHdhbnQgdG8gYmUgYWJsZSB0byBwYXJzZSBUY2wtVEsKKyAgICAgICAgIyB0aGV5IHVzICJwMSIgInAyIiBmb3IgcG9zdCByZWxlYXNlcworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzEuNHAxJyksICcxLjQucG9zdDEnKQorCisgICAgZGVmIHRlc3RfcHJlZGljYXRlKHNlbGYpOgorICAgICAgICAjIFZlcnNpb25QcmVkaWNhdGUga25vd3MgaG93IHRvIHBhcnNlIHN0dWZmIGxpa2U6CisgICAgICAgICMKKyAgICAgICAgIyAgIFByb2plY3QgKD49dmVyc2lvbiwgdmVyMikKKworICAgICAgICBwcmVkaWNhdGVzID0gKCd6b3BlLmludGVyZmFjZSAoPjMuNS4wKScsCisgICAgICAgICAgICAgICAgICAgICAgJ0Fub3RoZXJQcm9qZWN0ICgzLjQpJywKKyAgICAgICAgICAgICAgICAgICAgICAnT3RoZXJQcm9qZWN0ICg8My4wKScsCisgICAgICAgICAgICAgICAgICAgICAgJ05vVmVyc2lvbicsCisgICAgICAgICAgICAgICAgICAgICAgJ0hleSAoPj0yLjUsPDIuNyknKQorCisgICAgICAgIGZvciBwcmVkaWNhdGUgaW4gcHJlZGljYXRlczoKKyAgICAgICAgICAgIFZlcnNpb25QcmVkaWNhdGUocHJlZGljYXRlKQorCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCdIZXkgKD49Mi41LDwyLjcpJykubWF0Y2goJzIuNicpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgnSG8nKS5tYXRjaCgnMi42JykpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoVmVyc2lvblByZWRpY2F0ZSgnSGV5ICg+PTIuNSwhPTIuNiw8Mi43KScpLm1hdGNoKCcyLjYnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFZlcnNpb25QcmVkaWNhdGUoJ0hvICg8My4wKScpLm1hdGNoKCcyLjYnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFZlcnNpb25QcmVkaWNhdGUoJ0hvICg8My4wLCE9Mi41KScpLm1hdGNoKCcyLjYuMCcpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKFZlcnNpb25QcmVkaWNhdGUoJ0hvICg8My4wLCE9Mi42KScpLm1hdGNoKCcyLjYuMCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgnSG8gKDIuNSknKS5tYXRjaCgnMi41LjQnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShWZXJzaW9uUHJlZGljYXRlKCdIbyAoIT0yLjUpJykubWF0Y2goJzIuNS4yJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCdIZXkgKDw9Mi41KScpLm1hdGNoKCcyLjUuOScpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKFZlcnNpb25QcmVkaWNhdGUoJ0hleSAoPD0yLjUpJykubWF0Y2goJzIuNi4wJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCdIZXkgKD49Mi41KScpLm1hdGNoKCcyLjUuMScpKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIFZlcnNpb25QcmVkaWNhdGUsICcnKQorCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCdIZXkgMi41JykubWF0Y2goJzIuNS4xJykpCisKKyAgICAgICAgIyBYWFggbmVlZCB0byBzaWxlbnQgdGhlIG1pY3JvIHZlcnNpb24gaW4gdGhpcyBjYXNlCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoVmVyc2lvblByZWRpY2F0ZSgnSG8gKDwzLjAsIT0yLjYpJykubWF0Y2goJzIuNi4zJykpCisKKyAgICAgICAgIyBNYWtlIHN1cmUgYSBwcmVkaWNhdGUgdGhhdCBlbmRzIHdpdGggYSBudW1iZXIgd29ya3MKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFZlcnNpb25QcmVkaWNhdGUoJ3ZpcnR1YWxlbnY1ICgxLjApJykubWF0Y2goJzEuMCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgndmlydHVhbGVudjUnKS5tYXRjaCgnMS4wJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCd2aTV0d28nKS5tYXRjaCgnMS4wJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCc1dHdvJykubWF0Y2goJzEuMCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgndmk1dHdvIDEuMCcpLm1hdGNoKCcxLjAnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFZlcnNpb25QcmVkaWNhdGUoJzV0d28gMS4wJykubWF0Y2goJzEuMCcpKQorCisgICAgICAgICMgdGVzdCByZXByCisgICAgICAgIGZvciBwcmVkaWNhdGUgaW4gcHJlZGljYXRlczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKFZlcnNpb25QcmVkaWNhdGUocHJlZGljYXRlKSksIHByZWRpY2F0ZSkKKworICAgIGRlZiB0ZXN0X3ByZWRpY2F0ZV9uYW1lKHNlbGYpOgorICAgICAgICAjIFRlc3QgdGhhdCBuYW1lcyBhcmUgcGFyc2VkIHRoZSByaWdodCB3YXkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdIZXknLCBWZXJzaW9uUHJlZGljYXRlKCdIZXkgKDwxLjEpJykubmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnRm9vLUJhcicsIFZlcnNpb25QcmVkaWNhdGUoJ0Zvby1CYXIgKDEuMSknKS5uYW1lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdGb28gQmFyJywgVmVyc2lvblByZWRpY2F0ZSgnRm9vIEJhciAoMS4xKScpLm5hbWUpCisKKyAgICBkZWYgdGVzdF9pc19maW5hbChzZWxmKToKKyAgICAgICAgIyBWZXJzaW9uUHJlZGljYXRlIGtub3dzIGlzIGEgZGlzdHJpYnV0aW9uIGlzIGEgZmluYWwgb25lIG9yIG5vdC4KKyAgICAgICAgZmluYWxfdmVyc2lvbnMgPSAoJzEuMCcsICcxLjAucG9zdDQ1NicpCisgICAgICAgIG90aGVyX3ZlcnNpb25zID0gKCcxLjAuZGV2MScsICcxLjBhMicsICcxLjBjMycpCisKKyAgICAgICAgZm9yIHZlcnNpb24gaW4gZmluYWxfdmVyc2lvbnM6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoVih2ZXJzaW9uKS5pc19maW5hbCkKKyAgICAgICAgZm9yIHZlcnNpb24gaW4gb3RoZXJfdmVyc2lvbnM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKFYodmVyc2lvbikuaXNfZmluYWwpCisKKworY2xhc3MgVmVyc2lvbldoaXRlQm94VGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfcGFyc2VfbnVtZG90cyhzZWxmKToKKyAgICAgICAgIyBGb3IgY29kZSBjb3ZlcmFnZSBjb21wbGV0ZW5lc3MsIGFzIHBhZF96ZXJvc19sZW5ndGggY2FuJ3QgYmUgc2V0IG9yCisgICAgICAgICMgaW5mbHVlbmNlZCBmcm9tIHRoZSBwdWJsaWMgaW50ZXJmYWNlCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBWKCcxLjAnKS5fcGFyc2VfbnVtZG90cygnMS4wJywgJzEuMCcsIHBhZF96ZXJvc19sZW5ndGg9MyksCisgICAgICAgICAgICBbMSwgMCwgMF0pCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICAjUkVBRE1FID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICdSRUFETUUudHh0JykKKyAgICAjc3VpdGUgPSBbZG9jdGVzdC5Eb2NGaWxlU3VpdGUoUkVBRE1FKSwgdW5pdHRlc3QubWFrZVN1aXRlKFZlcnNpb25UZXN0Q2FzZSldCisgICAgc3VpdGUgPSBbdW5pdHRlc3QubWFrZVN1aXRlKFZlcnNpb25UZXN0Q2FzZSksCisgICAgICAgICAgICAgdW5pdHRlc3QubWFrZVN1aXRlKFZlcnNpb25XaGl0ZUJveFRlc3RDYXNlKV0KKyAgICByZXR1cm4gdW5pdHRlc3QuVGVzdFN1aXRlKHN1aXRlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy91dGlsLnB5IGIvTGliL3BhY2thZ2luZy91dGlsLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExZjY3ODIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3V0aWwucHkKQEAgLTAsMCArMSwxNDgwIEBACisiIiJNaXNjZWxsYW5lb3VzIHV0aWxpdHkgZnVuY3Rpb25zLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IGNzdgoraW1wb3J0IGltcAoraW1wb3J0IHN5cworaW1wb3J0IGVycm5vCitpbXBvcnQgY29kZWNzCitpbXBvcnQgc2h1dGlsCitpbXBvcnQgc3RyaW5nCitpbXBvcnQgaGFzaGxpYgoraW1wb3J0IHBvc2l4cGF0aAoraW1wb3J0IHN1YnByb2Nlc3MKK2ltcG9ydCBzeXNjb25maWcKK2Zyb20gZ2xvYiBpbXBvcnQgaWdsb2IgYXMgc3RkX2lnbG9iCitmcm9tIGZubWF0Y2ggaW1wb3J0IGZubWF0Y2hjYXNlCitmcm9tIGluc3BlY3QgaW1wb3J0IGdldHNvdXJjZQorZnJvbSBjb25maWdwYXJzZXIgaW1wb3J0IFJhd0NvbmZpZ1BhcnNlcgorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChQYWNrYWdpbmdQbGF0Zm9ybUVycm9yLCBQYWNrYWdpbmdGaWxlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWNrYWdpbmdFeGVjRXJyb3IsIEluc3RhbGxhdGlvbkV4Y2VwdGlvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2luZ0ludGVybmFsRXJyb3IpCisKK19fYWxsX18gPSBbCisgICAgIyBmaWxlIGRlcGVuZGVuY2llcworICAgICduZXdlcicsICduZXdlcl9ncm91cCcsCisgICAgIyBoZWxwZXJzIGZvciBjb21tYW5kcyAoZHJ5LXJ1biBzeXN0ZW0pCisgICAgJ2V4ZWN1dGUnLCAnd3JpdGVfZmlsZScsCisgICAgIyBzcGF3bmluZyBwcm9ncmFtcworICAgICdmaW5kX2V4ZWN1dGFibGUnLCAnc3Bhd24nLAorICAgICMgcGF0aCBtYW5pcHVsYXRpb24KKyAgICAnY29udmVydF9wYXRoJywgJ2NoYW5nZV9yb290JywKKyAgICAjIDJ0bzMgY29udmVyc2lvbgorICAgICdNaXhpbjJ0bzMnLCAncnVuXzJ0bzMnLAorICAgICMgcGFja2FnaW5nIGNvbXBhdGliaWxpdHkgaGVscGVycworICAgICdjZmdfdG9fYXJncycsICdnZW5lcmF0ZV9zZXR1cF9weScsCisgICAgJ2VnZ2luZm9fdG9fZGlzdGluZm8nLAorICAgICdnZXRfaW5zdGFsbF9tZXRob2QnLAorICAgICMgbWlzYworICAgICdhc2snLCAnY2hlY2tfZW52aXJvbicsICdlbmNvZGVfbXVsdGlwYXJ0JywgJ3Jlc29sdmVfbmFtZScsCisgICAgIyBxdWVyeWluZyBmb3IgaW5mb3JtYXRpb24gIFRPRE8gbW92ZSB0byBzeXNjb25maWcKKyAgICAnZ2V0X2NvbXBpbGVyX3ZlcnNpb25zJywgJ2dldF9wbGF0Zm9ybScsICdzZXRfcGxhdGZvcm0nLAorICAgICMgY29uZmlndXJhdGlvbiAgVE9ETyBtb3ZlIHRvIHBhY2thZ2luZy5jb25maWcKKyAgICAnZ2V0X3B5cGlyY19wYXRoJywgJ3JlYWRfcHlwaXJjJywgJ2dlbmVyYXRlX3B5cGlyYycsCisgICAgJ3N0cnRvYm9vbCcsICdzcGxpdF9tdWx0aWxpbmUnLAorXQorCitfUExBVEZPUk0gPSBOb25lCitfREVGQVVMVF9JTlNUQUxMRVIgPSAncGFja2FnaW5nJworCisKK2RlZiBuZXdlcihzb3VyY2UsIHRhcmdldCk6CisgICAgIiIiVGVsbCBpZiB0aGUgdGFyZ2V0IGlzIG5ld2VyIHRoYW4gdGhlIHNvdXJjZS4KKworICAgIFJldHVybnMgdHJ1ZSBpZiAnc291cmNlJyBleGlzdHMgYW5kIGlzIG1vcmUgcmVjZW50bHkgbW9kaWZpZWQgdGhhbgorICAgICd0YXJnZXQnLCBvciBpZiAnc291cmNlJyBleGlzdHMgYW5kICd0YXJnZXQnIGRvZXNuJ3QuCisKKyAgICBSZXR1cm5zIGZhbHNlIGlmIGJvdGggZXhpc3QgYW5kICd0YXJnZXQnIGlzIHRoZSBzYW1lIGFnZSBvciB5b3VuZ2VyCisgICAgdGhhbiAnc291cmNlJy4gUmFpc2UgUGFja2FnaW5nRmlsZUVycm9yIGlmICdzb3VyY2UnIGRvZXMgbm90IGV4aXN0LgorCisgICAgTm90ZSB0aGF0IHRoaXMgdGVzdCBpcyBub3QgdmVyeSBhY2N1cmF0ZTogZmlsZXMgY3JlYXRlZCBpbiB0aGUgc2FtZSBzZWNvbmQKKyAgICB3aWxsIGhhdmUgdGhlIHNhbWUgImFnZSIuCisgICAgIiIiCisgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHNvdXJjZSk6CisgICAgICAgIHJhaXNlIFBhY2thZ2luZ0ZpbGVFcnJvcigiZmlsZSAnJXMnIGRvZXMgbm90IGV4aXN0IiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmFic3BhdGgoc291cmNlKSkKKyAgICBpZiBub3Qgb3MucGF0aC5leGlzdHModGFyZ2V0KToKKyAgICAgICAgcmV0dXJuIFRydWUKKworICAgIHJldHVybiBvcy5zdGF0KHNvdXJjZSkuc3RfbXRpbWUgPiBvcy5zdGF0KHRhcmdldCkuc3RfbXRpbWUKKworCitkZWYgZ2V0X3BsYXRmb3JtKCk6CisgICAgIiIiUmV0dXJuIGEgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgY3VycmVudCBwbGF0Zm9ybS4KKworICAgIEJ5IGRlZmF1bHQsIHdpbGwgcmV0dXJuIHRoZSB2YWx1ZSByZXR1cm5lZCBieSBzeXNjb25maWcuZ2V0X3BsYXRmb3JtKCksCisgICAgYnV0IGl0IGNhbiBiZSBjaGFuZ2VkIGJ5IGNhbGxpbmcgc2V0X3BsYXRmb3JtKCkuCisgICAgIiIiCisgICAgZ2xvYmFsIF9QTEFURk9STQorICAgIGlmIF9QTEFURk9STSBpcyBOb25lOgorICAgICAgICBfUExBVEZPUk0gPSBzeXNjb25maWcuZ2V0X3BsYXRmb3JtKCkKKyAgICByZXR1cm4gX1BMQVRGT1JNCisKKworZGVmIHNldF9wbGF0Zm9ybShpZGVudGlmaWVyKToKKyAgICAiIiJTZXQgdGhlIHBsYXRmb3JtIHN0cmluZyBpZGVudGlmaWVyIHJldHVybmVkIGJ5IGdldF9wbGF0Zm9ybSgpLgorCisgICAgTm90ZSB0aGF0IHRoaXMgY2hhbmdlIGRvZXNuJ3QgaW1wYWN0IHRoZSB2YWx1ZSByZXR1cm5lZCBieQorICAgIHN5c2NvbmZpZy5nZXRfcGxhdGZvcm0oKTsgaXQgaXMgbG9jYWwgdG8gcGFja2FnaW5nLgorICAgICIiIgorICAgIGdsb2JhbCBfUExBVEZPUk0KKyAgICBfUExBVEZPUk0gPSBpZGVudGlmaWVyCisKKworZGVmIGNvbnZlcnRfcGF0aChwYXRobmFtZSk6CisgICAgIiIiUmV0dXJuICdwYXRobmFtZScgYXMgYSBuYW1lIHRoYXQgd2lsbCB3b3JrIG9uIHRoZSBuYXRpdmUgZmlsZXN5c3RlbS4KKworICAgIFRoZSBwYXRoIGlzIHNwbGl0IG9uICcvJyBhbmQgcHV0IGJhY2sgdG9nZXRoZXIgYWdhaW4gdXNpbmcgdGhlIGN1cnJlbnQKKyAgICBkaXJlY3Rvcnkgc2VwYXJhdG9yLiAgTmVlZGVkIGJlY2F1c2UgZmlsZW5hbWVzIGluIHRoZSBzZXR1cCBzY3JpcHQgYXJlCisgICAgYWx3YXlzIHN1cHBsaWVkIGluIFVuaXggc3R5bGUsIGFuZCBoYXZlIHRvIGJlIGNvbnZlcnRlZCB0byB0aGUgbG9jYWwKKyAgICBjb252ZW50aW9uIGJlZm9yZSB3ZSBjYW4gYWN0dWFsbHkgdXNlIHRoZW0gaW4gdGhlIGZpbGVzeXN0ZW0uICBSYWlzZXMKKyAgICBWYWx1ZUVycm9yIG9uIG5vbi1Vbml4LWlzaCBzeXN0ZW1zIGlmICdwYXRobmFtZScgZWl0aGVyIHN0YXJ0cyBvcgorICAgIGVuZHMgd2l0aCBhIHNsYXNoLgorICAgICIiIgorICAgIGlmIG9zLnNlcCA9PSAnLyc6CisgICAgICAgIHJldHVybiBwYXRobmFtZQorICAgIGlmIG5vdCBwYXRobmFtZToKKyAgICAgICAgcmV0dXJuIHBhdGhuYW1lCisgICAgaWYgcGF0aG5hbWVbMF0gPT0gJy8nOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJwYXRoICclcycgY2Fubm90IGJlIGFic29sdXRlIiAlIHBhdGhuYW1lKQorICAgIGlmIHBhdGhuYW1lWy0xXSA9PSAnLyc6CisgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoInBhdGggJyVzJyBjYW5ub3QgZW5kIHdpdGggJy8nIiAlIHBhdGhuYW1lKQorCisgICAgcGF0aHMgPSBwYXRobmFtZS5zcGxpdCgnLycpCisgICAgd2hpbGUgb3MuY3VyZGlyIGluIHBhdGhzOgorICAgICAgICBwYXRocy5yZW1vdmUob3MuY3VyZGlyKQorICAgIGlmIG5vdCBwYXRoczoKKyAgICAgICAgcmV0dXJuIG9zLmN1cmRpcgorICAgIHJldHVybiBvcy5wYXRoLmpvaW4oKnBhdGhzKQorCisKK2RlZiBjaGFuZ2Vfcm9vdChuZXdfcm9vdCwgcGF0aG5hbWUpOgorICAgICIiIlJldHVybiAncGF0aG5hbWUnIHdpdGggJ25ld19yb290JyBwcmVwZW5kZWQuCisKKyAgICBJZiAncGF0aG5hbWUnIGlzIHJlbGF0aXZlLCB0aGlzIGlzIGVxdWl2YWxlbnQgdG8KKyAgICBvcy5wYXRoLmpvaW4obmV3X3Jvb3QscGF0aG5hbWUpLiBPdGhlcndpc2UsIGl0IHJlcXVpcmVzIG1ha2luZyAncGF0aG5hbWUnCisgICAgcmVsYXRpdmUgYW5kIHRoZW4gam9pbmluZyB0aGUgdHdvLCB3aGljaCBpcyB0cmlja3kgb24gRE9TL1dpbmRvd3MuCisgICAgIiIiCisgICAgaWYgb3MubmFtZSA9PSAncG9zaXgnOgorICAgICAgICBpZiBub3Qgb3MucGF0aC5pc2FicyhwYXRobmFtZSk6CisgICAgICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKG5ld19yb290LCBwYXRobmFtZSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4obmV3X3Jvb3QsIHBhdGhuYW1lWzE6XSkKKworICAgIGVsaWYgb3MubmFtZSA9PSAnbnQnOgorICAgICAgICBkcml2ZSwgcGF0aCA9IG9zLnBhdGguc3BsaXRkcml2ZShwYXRobmFtZSkKKyAgICAgICAgaWYgcGF0aFswXSA9PSAnXFwnOgorICAgICAgICAgICAgcGF0aCA9IHBhdGhbMTpdCisgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4obmV3X3Jvb3QsIHBhdGgpCisKKyAgICBlbGlmIG9zLm5hbWUgPT0gJ29zMic6CisgICAgICAgIGRyaXZlLCBwYXRoID0gb3MucGF0aC5zcGxpdGRyaXZlKHBhdGhuYW1lKQorICAgICAgICBpZiBwYXRoWzBdID09IG9zLnNlcDoKKyAgICAgICAgICAgIHBhdGggPSBwYXRoWzE6XQorICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKG5ld19yb290LCBwYXRoKQorCisgICAgZWxzZToKKyAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigibm90aGluZyBrbm93biBhYm91dCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBsYXRmb3JtICclcyciICUgb3MubmFtZSkKKworX2Vudmlyb25fY2hlY2tlZCA9IEZhbHNlCisKKworZGVmIGNoZWNrX2Vudmlyb24oKToKKyAgICAiIiJFbnN1cmUgdGhhdCAnb3MuZW52aXJvbicgaGFzIGFsbCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzIG5lZWRlZC4KKworICAgIFdlIGd1YXJhbnRlZSB0aGF0IHVzZXJzIGNhbiB1c2UgaW4gY29uZmlnIGZpbGVzLCBjb21tYW5kLWxpbmUgb3B0aW9ucywKKyAgICBldGMuICBDdXJyZW50bHkgdGhpcyBpbmNsdWRlczoKKyAgICAgIEhPTUUgLSB1c2VyJ3MgaG9tZSBkaXJlY3RvcnkgKFVuaXggb25seSkKKyAgICAgIFBMQVQgLSBkZXNjcmlwdGlvbiBvZiB0aGUgY3VycmVudCBwbGF0Zm9ybSwgaW5jbHVkaW5nIGhhcmR3YXJlCisgICAgICAgICAgICAgYW5kIE9TIChzZWUgJ2dldF9wbGF0Zm9ybSgpJykKKyAgICAiIiIKKyAgICBnbG9iYWwgX2Vudmlyb25fY2hlY2tlZAorICAgIGlmIF9lbnZpcm9uX2NoZWNrZWQ6CisgICAgICAgIHJldHVybgorCisgICAgaWYgb3MubmFtZSA9PSAncG9zaXgnIGFuZCAnSE9NRScgbm90IGluIG9zLmVudmlyb246CisgICAgICAgIGltcG9ydCBwd2QKKyAgICAgICAgb3MuZW52aXJvblsnSE9NRSddID0gcHdkLmdldHB3dWlkKG9zLmdldHVpZCgpKVs1XQorCisgICAgaWYgJ1BMQVQnIG5vdCBpbiBvcy5lbnZpcm9uOgorICAgICAgICBvcy5lbnZpcm9uWydQTEFUJ10gPSBzeXNjb25maWcuZ2V0X3BsYXRmb3JtKCkKKworICAgIF9lbnZpcm9uX2NoZWNrZWQgPSBUcnVlCisKKworIyBOZWVkZWQgYnkgJ3NwbGl0X3F1b3RlZCgpJworX3dvcmRjaGFyc19yZSA9IF9zcXVvdGVfcmUgPSBfZHF1b3RlX3JlID0gTm9uZQorCisKK2RlZiBfaW5pdF9yZWdleCgpOgorICAgIGdsb2JhbCBfd29yZGNoYXJzX3JlLCBfc3F1b3RlX3JlLCBfZHF1b3RlX3JlCisgICAgX3dvcmRjaGFyc19yZSA9IHJlLmNvbXBpbGUocidbXlxcXCdcIiVzIF0qJyAlIHN0cmluZy53aGl0ZXNwYWNlKQorICAgIF9zcXVvdGVfcmUgPSByZS5jb21waWxlKHIiJyg/OlteJ1xcXXxcXC4pKiciKQorICAgIF9kcXVvdGVfcmUgPSByZS5jb21waWxlKHInIig/OlteIlxcXXxcXC4pKiInKQorCisKKyMgVE9ETyByZXBsYWNlIHdpdGggc2hsZXguc3BsaXQgYWZ0ZXIgdGVzdGluZworCitkZWYgc3BsaXRfcXVvdGVkKHMpOgorICAgICIiIlNwbGl0IGEgc3RyaW5nIHVwIGFjY29yZGluZyB0byBVbml4IHNoZWxsLWxpa2UgcnVsZXMgZm9yIHF1b3RlcyBhbmQKKyAgICBiYWNrc2xhc2hlcy4KKworICAgIEluIHNob3J0OiB3b3JkcyBhcmUgZGVsaW1pdGVkIGJ5IHNwYWNlcywgYXMgbG9uZyBhcyB0aG9zZQorICAgIHNwYWNlcyBhcmUgbm90IGVzY2FwZWQgYnkgYSBiYWNrc2xhc2gsIG9yIGluc2lkZSBhIHF1b3RlZCBzdHJpbmcuCisgICAgU2luZ2xlIGFuZCBkb3VibGUgcXVvdGVzIGFyZSBlcXVpdmFsZW50LCBhbmQgdGhlIHF1b3RlIGNoYXJhY3RlcnMgY2FuCisgICAgYmUgYmFja3NsYXNoLWVzY2FwZWQuICBUaGUgYmFja3NsYXNoIGlzIHN0cmlwcGVkIGZyb20gYW55IHR3by1jaGFyYWN0ZXIKKyAgICBlc2NhcGUgc2VxdWVuY2UsIGxlYXZpbmcgb25seSB0aGUgZXNjYXBlZCBjaGFyYWN0ZXIuICBUaGUgcXVvdGUKKyAgICBjaGFyYWN0ZXJzIGFyZSBzdHJpcHBlZCBmcm9tIGFueSBxdW90ZWQgc3RyaW5nLiAgUmV0dXJucyBhIGxpc3Qgb2YKKyAgICB3b3Jkcy4KKyAgICAiIiIKKyAgICAjIFRoaXMgaXMgYSBuaWNlIGFsZ29yaXRobSBmb3Igc3BsaXR0aW5nIHVwIGEgc2luZ2xlIHN0cmluZywgc2luY2UgaXQKKyAgICAjIGRvZXNuJ3QgcmVxdWlyZSBjaGFyYWN0ZXItYnktY2hhcmFjdGVyIGV4YW1pbmF0aW9uLiAgSXQgd2FzIGEgbGl0dGxlCisgICAgIyBiaXQgb2YgYSBicmFpbi1iZW5kZXIgdG8gZ2V0IGl0IHdvcmtpbmcgcmlnaHQsIHRob3VnaC4uLgorICAgIGlmIF93b3JkY2hhcnNfcmUgaXMgTm9uZToKKyAgICAgICAgX2luaXRfcmVnZXgoKQorCisgICAgcyA9IHMuc3RyaXAoKQorICAgIHdvcmRzID0gW10KKyAgICBwb3MgPSAwCisKKyAgICB3aGlsZSBzOgorICAgICAgICBtID0gX3dvcmRjaGFyc19yZS5tYXRjaChzLCBwb3MpCisgICAgICAgIGVuZCA9IG0uZW5kKCkKKyAgICAgICAgaWYgZW5kID09IGxlbihzKToKKyAgICAgICAgICAgIHdvcmRzLmFwcGVuZChzWzplbmRdKQorICAgICAgICAgICAgYnJlYWsKKworICAgICAgICBpZiBzW2VuZF0gaW4gc3RyaW5nLndoaXRlc3BhY2U6ICAjIHVuZXNjYXBlZCwgdW5xdW90ZWQgd2hpdGVzcGFjZTogbm93CisgICAgICAgICAgICB3b3Jkcy5hcHBlbmQoc1s6ZW5kXSkgICAgICAgICMgd2UgZGVmaW5pdGVseSBoYXZlIGEgd29yZCBkZWxpbWl0ZXIKKyAgICAgICAgICAgIHMgPSBzW2VuZDpdLmxzdHJpcCgpCisgICAgICAgICAgICBwb3MgPSAwCisKKyAgICAgICAgZWxpZiBzW2VuZF0gPT0gJ1xcJzogICAgICAgICAgICAgIyBwcmVzZXJ2ZSB3aGF0ZXZlciBpcyBiZWluZyBlc2NhcGVkOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHdpbGwgYmVjb21lIHBhcnQgb2YgdGhlIGN1cnJlbnQgd29yZAorICAgICAgICAgICAgcyA9IHNbOmVuZF0gKyBzW2VuZCArIDE6XQorICAgICAgICAgICAgcG9zID0gZW5kICsgMQorCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBzW2VuZF0gPT0gIiciOiAgICAgICAgICAgICMgc2x1cnAgc2luZ2x5LXF1b3RlZCBzdHJpbmcKKyAgICAgICAgICAgICAgICBtID0gX3NxdW90ZV9yZS5tYXRjaChzLCBlbmQpCisgICAgICAgICAgICBlbGlmIHNbZW5kXSA9PSAnIic6ICAgICAgICAgICMgc2x1cnAgZG91Ymx5LXF1b3RlZCBzdHJpbmcKKyAgICAgICAgICAgICAgICBtID0gX2RxdW90ZV9yZS5tYXRjaChzLCBlbmQpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigidGhpcyBjYW4ndCBoYXBwZW4gIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKGJhZCBjaGFyICclYycpIiAlIHNbZW5kXSkKKworICAgICAgICAgICAgaWYgbSBpcyBOb25lOgorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImJhZCBzdHJpbmcgKG1pc21hdGNoZWQgJXMgcXVvdGVzPykiICUgc1tlbmRdKQorCisgICAgICAgICAgICBiZWcsIGVuZCA9IG0uc3BhbigpCisgICAgICAgICAgICBzID0gc1s6YmVnXSArIHNbYmVnICsgMTplbmQgLSAxXSArIHNbZW5kOl0KKyAgICAgICAgICAgIHBvcyA9IG0uZW5kKCkgLSAyCisKKyAgICAgICAgaWYgcG9zID49IGxlbihzKToKKyAgICAgICAgICAgIHdvcmRzLmFwcGVuZChzKQorICAgICAgICAgICAgYnJlYWsKKworICAgIHJldHVybiB3b3JkcworCisKK2RlZiBzcGxpdF9tdWx0aWxpbmUodmFsdWUpOgorICAgICIiIlNwbGl0IGEgbXVsdGlsaW5lIHN0cmluZyBpbnRvIGEgbGlzdCwgZXhjbHVkaW5nIGJsYW5rIGxpbmVzLiIiIgorCisgICAgcmV0dXJuIFtlbGVtZW50IGZvciBlbGVtZW50IGluCisgICAgICAgICAgICAobGluZS5zdHJpcCgpIGZvciBsaW5lIGluIHZhbHVlLnNwbGl0KCdcbicpKQorICAgICAgICAgICAgaWYgZWxlbWVudF0KKworCitkZWYgZXhlY3V0ZShmdW5jLCBhcmdzLCBtc2c9Tm9uZSwgZHJ5X3J1bj1GYWxzZSk6CisgICAgIiIiUGVyZm9ybSBzb21lIGFjdGlvbiB0aGF0IGFmZmVjdHMgdGhlIG91dHNpZGUgd29ybGQuCisKKyAgICBTb21lIGFjdGlvbnMgKGUuZy4gd3JpdGluZyB0byB0aGUgZmlsZXN5c3RlbSkgYXJlIHNwZWNpYWwgYmVjYXVzZQorICAgIHRoZXkgYXJlIGRpc2FibGVkIGJ5IHRoZSAnZHJ5X3J1bicgZmxhZy4gIFRoaXMgbWV0aG9kIHRha2VzIGNhcmUgb2YgYWxsCisgICAgdGhhdCBidXJlYXVjcmFjeSBmb3IgeW91OyBhbGwgeW91IGhhdmUgdG8gZG8gaXMgc3VwcGx5IHRoZQorICAgIGZ1bmN0aW9uIHRvIGNhbGwgYW5kIGFuIGFyZ3VtZW50IHR1cGxlIGZvciBpdCAodG8gZW1ib2R5IHRoZQorICAgICJleHRlcm5hbCBhY3Rpb24iIGJlaW5nIHBlcmZvcm1lZCksIGFuZCBhbiBvcHRpb25hbCBtZXNzYWdlIHRvCisgICAgcHJpbnQuCisgICAgIiIiCisgICAgaWYgbXNnIGlzIE5vbmU6CisgICAgICAgIG1zZyA9ICIlcyVyIiAlIChmdW5jLl9fbmFtZV9fLCBhcmdzKQorICAgICAgICBpZiBtc2dbLTI6XSA9PSAnLCknOiAgICAgICAgIyBjb3JyZWN0IGZvciBzaW5nbGV0b24gdHVwbGUKKyAgICAgICAgICAgIG1zZyA9IG1zZ1swOi0yXSArICcpJworCisgICAgbG9nZ2VyLmluZm8obXNnKQorICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICBmdW5jKCphcmdzKQorCisKK2RlZiBzdHJ0b2Jvb2wodmFsKToKKyAgICAiIiJDb252ZXJ0IGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRydXRoIHRvIGEgYm9vbGVhbi4KKworICAgIFRydWUgdmFsdWVzIGFyZSAneScsICd5ZXMnLCAndCcsICd0cnVlJywgJ29uJywgYW5kICcxJzsgZmFsc2UgdmFsdWVzCisgICAgYXJlICduJywgJ25vJywgJ2YnLCAnZmFsc2UnLCAnb2ZmJywgYW5kICcwJy4gIFJhaXNlcyBWYWx1ZUVycm9yIGlmCisgICAgJ3ZhbCcgaXMgYW55dGhpbmcgZWxzZS4KKyAgICAiIiIKKyAgICB2YWwgPSB2YWwubG93ZXIoKQorICAgIGlmIHZhbCBpbiAoJ3knLCAneWVzJywgJ3QnLCAndHJ1ZScsICdvbicsICcxJyk6CisgICAgICAgIHJldHVybiBUcnVlCisgICAgZWxpZiB2YWwgaW4gKCduJywgJ25vJywgJ2YnLCAnZmFsc2UnLCAnb2ZmJywgJzAnKToKKyAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgZWxzZToKKyAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiaW52YWxpZCB0cnV0aCB2YWx1ZSAlciIgJSAodmFsLCkpCisKKworZGVmIGJ5dGVfY29tcGlsZShweV9maWxlcywgb3B0aW1pemU9MCwgZm9yY2U9RmFsc2UsIHByZWZpeD1Ob25lLAorICAgICAgICAgICAgICAgICBiYXNlX2Rpcj1Ob25lLCBkcnlfcnVuPUZhbHNlLCBkaXJlY3Q9Tm9uZSk6CisgICAgIiIiQnl0ZS1jb21waWxlIGEgY29sbGVjdGlvbiBvZiBQeXRob24gc291cmNlIGZpbGVzIHRvIGVpdGhlciAucHljCisgICAgb3IgLnB5byBmaWxlcyBpbiBhIF9fcHljYWNoZV9fIHN1YmRpcmVjdG9yeS4KKworICAgICdweV9maWxlcycgaXMgYSBsaXN0IG9mIGZpbGVzIHRvIGNvbXBpbGU7IGFueSBmaWxlcyB0aGF0IGRvbid0IGVuZCBpbgorICAgICIucHkiIGFyZSBzaWxlbnRseSBza2lwcGVkLiAnb3B0aW1pemUnIG11c3QgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmc6CisgICAgICAwIC0gZG9uJ3Qgb3B0aW1pemUgKGdlbmVyYXRlIC5weWMpCisgICAgICAxIC0gbm9ybWFsIG9wdGltaXphdGlvbiAobGlrZSAicHl0aG9uIC1PIikKKyAgICAgIDIgLSBleHRyYSBvcHRpbWl6YXRpb24gKGxpa2UgInB5dGhvbiAtT08iKQorICAgIFRoaXMgZnVuY3Rpb24gaXMgaW5kZXBlbmRlbnQgZnJvbSB0aGUgcnVubmluZyBQeXRob24ncyAtTyBvciAtQiBvcHRpb25zOworICAgIGl0IGlzIGZ1bGx5IGNvbnRyb2xsZWQgYnkgdGhlIHBhcmFtZXRlcnMgcGFzc2VkIGluLgorCisgICAgSWYgJ2ZvcmNlJyBpcyB0cnVlLCBhbGwgZmlsZXMgYXJlIHJlY29tcGlsZWQgcmVnYXJkbGVzcyBvZgorICAgIHRpbWVzdGFtcHMuCisKKyAgICBUaGUgc291cmNlIGZpbGVuYW1lIGVuY29kZWQgaW4gZWFjaCBieXRlY29kZSBmaWxlIGRlZmF1bHRzIHRvIHRoZQorICAgIGZpbGVuYW1lcyBsaXN0ZWQgaW4gJ3B5X2ZpbGVzJzsgeW91IGNhbiBtb2RpZnkgdGhlc2Ugd2l0aCAncHJlZml4JyBhbmQKKyAgICAnYmFzZWRpcicuICAncHJlZml4JyBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgc3RyaXBwZWQgb2ZmIG9mIGVhY2gKKyAgICBzb3VyY2UgZmlsZW5hbWUsIGFuZCAnYmFzZV9kaXInIGlzIGEgZGlyZWN0b3J5IG5hbWUgdGhhdCB3aWxsIGJlCisgICAgcHJlcGVuZGVkIChhZnRlciAncHJlZml4JyBpcyBzdHJpcHBlZCkuICBZb3UgY2FuIHN1cHBseSBlaXRoZXIgb3IgYm90aAorICAgIChvciBuZWl0aGVyKSBvZiAncHJlZml4JyBhbmQgJ2Jhc2VfZGlyJywgYXMgeW91IHdpc2guCisKKyAgICBJZiAnZHJ5X3J1bicgaXMgdHJ1ZSwgZG9lc24ndCBhY3R1YWxseSBkbyBhbnl0aGluZyB0aGF0IHdvdWxkCisgICAgYWZmZWN0IHRoZSBmaWxlc3lzdGVtLgorCisgICAgQnl0ZS1jb21waWxhdGlvbiBpcyBlaXRoZXIgZG9uZSBkaXJlY3RseSBpbiB0aGlzIGludGVycHJldGVyIHByb2Nlc3MKKyAgICB3aXRoIHRoZSBzdGFuZGFyZCBweV9jb21waWxlIG1vZHVsZSwgb3IgaW5kaXJlY3RseSBieSB3cml0aW5nIGEKKyAgICB0ZW1wb3Jhcnkgc2NyaXB0IGFuZCBleGVjdXRpbmcgaXQuICBOb3JtYWxseSwgeW91IHNob3VsZCBsZXQKKyAgICAnYnl0ZV9jb21waWxlKCknIGZpZ3VyZSBvdXQgdG8gdXNlIGRpcmVjdCBjb21waWxhdGlvbiBvciBub3QgKHNlZQorICAgIHRoZSBzb3VyY2UgZm9yIGRldGFpbHMpLiAgVGhlICdkaXJlY3QnIGZsYWcgaXMgdXNlZCBieSB0aGUgc2NyaXB0CisgICAgZ2VuZXJhdGVkIGluIGluZGlyZWN0IG1vZGU7IHVubGVzcyB5b3Uga25vdyB3aGF0IHlvdSdyZSBkb2luZywgbGVhdmUKKyAgICBpdCBzZXQgdG8gTm9uZS4KKyAgICAiIiIKKyAgICAjIEZJWE1FIHVzZSBjb21waWxlYWxsICsgcmVtb3ZlIGRpcmVjdC9pbmRpcmVjdCBzaGVuYW5pZ2FucworCisgICAgIyBGaXJzdCwgaWYgdGhlIGNhbGxlciBkaWRuJ3QgZm9yY2UgdXMgaW50byBkaXJlY3Qgb3IgaW5kaXJlY3QgbW9kZSwKKyAgICAjIGZpZ3VyZSBvdXQgd2hpY2ggbW9kZSB3ZSBzaG91bGQgYmUgaW4uICBXZSB0YWtlIGEgY29uc2VydmF0aXZlCisgICAgIyBhcHByb2FjaDogY2hvb3NlIGRpcmVjdCBtb2RlICpvbmx5KiBpZiB0aGUgY3VycmVudCBpbnRlcnByZXRlciBpcworICAgICMgaW4gZGVidWcgbW9kZSBhbmQgb3B0aW1pemUgaXMgMC4gIElmIHdlJ3JlIG5vdCBpbiBkZWJ1ZyBtb2RlICgtTworICAgICMgb3IgLU9PKSwgd2UgZG9uJ3Qga25vdyB3aGljaCBsZXZlbCBvZiBvcHRpbWl6YXRpb24gdGhpcworICAgICMgaW50ZXJwcmV0ZXIgaXMgcnVubmluZyB3aXRoLCBzbyB3ZSBjYW4ndCBkbyBkaXJlY3QKKyAgICAjIGJ5dGUtY29tcGlsYXRpb24gYW5kIGJlIGNlcnRhaW4gdGhhdCBpdCdzIHRoZSByaWdodCB0aGluZy4gIFRodXMsCisgICAgIyBhbHdheXMgY29tcGlsZSBpbmRpcmVjdGx5IGlmIHRoZSBjdXJyZW50IGludGVycHJldGVyIGlzIGluIGVpdGhlcgorICAgICMgb3B0aW1pemUgbW9kZSwgb3IgaWYgZWl0aGVyIG9wdGltaXphdGlvbiBsZXZlbCB3YXMgcmVxdWVzdGVkIGJ5CisgICAgIyB0aGUgY2FsbGVyLgorICAgIGlmIGRpcmVjdCBpcyBOb25lOgorICAgICAgICBkaXJlY3QgPSAoX19kZWJ1Z19fIGFuZCBvcHRpbWl6ZSA9PSAwKQorCisgICAgIyAiSW5kaXJlY3QiIGJ5dGUtY29tcGlsYXRpb246IHdyaXRlIGEgdGVtcG9yYXJ5IHNjcmlwdCBhbmQgdGhlbgorICAgICMgcnVuIGl0IHdpdGggdGhlIGFwcHJvcHJpYXRlIGZsYWdzLgorICAgIGlmIG5vdCBkaXJlY3Q6CisgICAgICAgIGZyb20gdGVtcGZpbGUgaW1wb3J0IG1rc3RlbXAKKyAgICAgICAgIyBYWFggdXNlIHNvbWV0aGluZyBiZXR0ZXIgdGhhbiBta3N0ZW1wCisgICAgICAgIHNjcmlwdF9mZCwgc2NyaXB0X25hbWUgPSBta3N0ZW1wKCIucHkiKQorICAgICAgICBvcy5jbG9zZShzY3JpcHRfZmQpCisgICAgICAgIHNjcmlwdF9mZCA9IE5vbmUKKyAgICAgICAgbG9nZ2VyLmluZm8oIndyaXRpbmcgYnl0ZS1jb21waWxhdGlvbiBzY3JpcHQgJyVzJyIsIHNjcmlwdF9uYW1lKQorICAgICAgICBpZiBub3QgZHJ5X3J1bjoKKyAgICAgICAgICAgIGlmIHNjcmlwdF9mZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBzY3JpcHQgPSBvcy5mZG9wZW4oc2NyaXB0X2ZkLCAidyIsIGVuY29kaW5nPSd1dGYtOCcpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNjcmlwdCA9IG9wZW4oc2NyaXB0X25hbWUsICJ3IiwgZW5jb2Rpbmc9J3V0Zi04JykKKworICAgICAgICAgICAgd2l0aCBzY3JpcHQ6CisgICAgICAgICAgICAgICAgc2NyaXB0LndyaXRlKCIiIlwKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGJ5dGVfY29tcGlsZQorZmlsZXMgPSBbCisiIiIpCisKKyAgICAgICAgICAgICAgICAjIFhYWCB3b3VsZCBiZSBuaWNlIHRvIHdyaXRlIGFic29sdXRlIGZpbGVuYW1lcywganVzdCBmb3IKKyAgICAgICAgICAgICAgICAjIHNhZmV0eSdzIHNha2UgKHNjcmlwdCBzaG91bGQgYmUgbW9yZSByb2J1c3QgaW4gdGhlIGZhY2Ugb2YKKyAgICAgICAgICAgICAgICAjIGNoZGlyJ2luZyBiZWZvcmUgcnVubmluZyBpdCkuICBCdXQgdGhpcyByZXF1aXJlcyBhYnNwYXRoJ2luZworICAgICAgICAgICAgICAgICMgJ3ByZWZpeCcgYXMgd2VsbCwgYW5kIHRoYXQgYnJlYWtzIHRoZSBoYWNrIGluIGJ1aWxkX2xpYidzCisgICAgICAgICAgICAgICAgIyAnYnl0ZV9jb21waWxlKCknIG1ldGhvZCB0aGF0IGNhcmVmdWxseSB0YWNrcyBvbiBhIHRyYWlsaW5nCisgICAgICAgICAgICAgICAgIyBzbGFzaCAob3Muc2VwIHJlYWxseSkgdG8gbWFrZSBzdXJlIHRoZSBwcmVmaXggaGVyZSBpcyAianVzdAorICAgICAgICAgICAgICAgICMgcmlnaHQiLiAgVGhpcyB3aG9sZSBwcmVmaXggYnVzaW5lc3MgaXMgcmF0aGVyIGRlbGljYXRlIC0tIHRoZQorICAgICAgICAgICAgICAgICMgcHJvYmxlbSBpcyB0aGF0IGl0J3MgcmVhbGx5IGEgZGlyZWN0b3J5LCBidXQgSSdtIHRyZWF0aW5nIGl0CisgICAgICAgICAgICAgICAgIyBhcyBhIGR1bWIgc3RyaW5nLCBzbyB0cmFpbGluZyBzbGFzaGVzIGFuZCBzbyBmb3J0aCBtYXR0ZXIuCisKKyAgICAgICAgICAgICAgICAjcHlfZmlsZXMgPSBtYXAob3MucGF0aC5hYnNwYXRoLCBweV9maWxlcykKKyAgICAgICAgICAgICAgICAjaWYgcHJlZml4OgorICAgICAgICAgICAgICAgICMgICAgcHJlZml4ID0gb3MucGF0aC5hYnNwYXRoKHByZWZpeCkKKworICAgICAgICAgICAgICAgIHNjcmlwdC53cml0ZSgiLFxuIi5qb2luKG1hcChyZXByLCBweV9maWxlcykpICsgIl1cbiIpCisgICAgICAgICAgICAgICAgc2NyaXB0LndyaXRlKCIiIgorYnl0ZV9jb21waWxlKGZpbGVzLCBvcHRpbWl6ZT0lciwgZm9yY2U9JXIsCisgICAgICAgICAgICAgcHJlZml4PSVyLCBiYXNlX2Rpcj0lciwKKyAgICAgICAgICAgICBkcnlfcnVuPUZhbHNlLAorICAgICAgICAgICAgIGRpcmVjdD1UcnVlKQorIiIiICUgKG9wdGltaXplLCBmb3JjZSwgcHJlZml4LCBiYXNlX2RpcikpCisKKyAgICAgICAgY21kID0gW3N5cy5leGVjdXRhYmxlLCBzY3JpcHRfbmFtZV0KKworICAgICAgICBlbnYgPSBvcy5lbnZpcm9uLmNvcHkoKQorICAgICAgICBlbnZbJ1BZVEhPTlBBVEgnXSA9IG9zLnBhdGgucGF0aHNlcC5qb2luKHN5cy5wYXRoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzcGF3bihjbWQsIGVudj1lbnYpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBleGVjdXRlKG9zLnJlbW92ZSwgKHNjcmlwdF9uYW1lLCksICJyZW1vdmluZyAlcyIgJSBzY3JpcHRfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgZHJ5X3J1bj1kcnlfcnVuKQorCisgICAgIyAiRGlyZWN0IiBieXRlLWNvbXBpbGF0aW9uOiB1c2UgdGhlIHB5X2NvbXBpbGUgbW9kdWxlIHRvIGNvbXBpbGUKKyAgICAjIHJpZ2h0IGhlcmUsIHJpZ2h0IG5vdy4gIE5vdGUgdGhhdCB0aGUgc2NyaXB0IGdlbmVyYXRlZCBpbiBpbmRpcmVjdAorICAgICMgbW9kZSBzaW1wbHkgY2FsbHMgJ2J5dGVfY29tcGlsZSgpJyBpbiBkaXJlY3QgbW9kZSwgYSB3ZWlyZCBzb3J0IG9mCisgICAgIyBjcm9zcy1wcm9jZXNzIHJlY3Vyc2lvbi4gIEhleSwgaXQgd29ya3MhCisgICAgZWxzZToKKyAgICAgICAgZnJvbSBweV9jb21waWxlIGltcG9ydCBjb21waWxlCisKKyAgICAgICAgZm9yIGZpbGUgaW4gcHlfZmlsZXM6CisgICAgICAgICAgICBpZiBmaWxlWy0zOl0gIT0gIi5weSI6CisgICAgICAgICAgICAgICAgIyBUaGlzIGxldHMgdXMgYmUgbGF6eSBhbmQgbm90IGZpbHRlciBmaWxlbmFtZXMgaW4KKyAgICAgICAgICAgICAgICAjIHRoZSAiaW5zdGFsbF9saWIiIGNvbW1hbmQuCisgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgIyBUZXJtaW5vbG9neSBmcm9tIHRoZSBweV9jb21waWxlIG1vZHVsZToKKyAgICAgICAgICAgICMgICBjZmlsZSAtIGJ5dGUtY29tcGlsZWQgZmlsZQorICAgICAgICAgICAgIyAgIGRmaWxlIC0gcHVycG9ydGVkIHNvdXJjZSBmaWxlbmFtZSAoc2FtZSBhcyAnZmlsZScgYnkgZGVmYXVsdCkKKyAgICAgICAgICAgICMgVGhlIHNlY29uZCBhcmd1bWVudCB0byBjYWNoZV9mcm9tX3NvdXJjZSBmb3JjZXMgdGhlIGV4dGVuc2lvbiB0bworICAgICAgICAgICAgIyBiZSAucHljIChpZiB0cnVlKSBvciAucHlvIChpZiBmYWxzZSk7IHdpdGhvdXQgaXQsIHRoZSBleHRlbnNpb24KKyAgICAgICAgICAgICMgd291bGQgZGVwZW5kIG9uIHRoZSBjYWxsaW5nIFB5dGhvbidzIC1PIG9wdGlvbgorICAgICAgICAgICAgY2ZpbGUgPSBpbXAuY2FjaGVfZnJvbV9zb3VyY2UoZmlsZSwgbm90IG9wdGltaXplKQorICAgICAgICAgICAgZGZpbGUgPSBmaWxlCisKKyAgICAgICAgICAgIGlmIHByZWZpeDoKKyAgICAgICAgICAgICAgICBpZiBmaWxlWzpsZW4ocHJlZml4KV0gIT0gcHJlZml4OgorICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJpbnZhbGlkIHByZWZpeDogZmlsZW5hbWUgJXIgZG9lc24ndCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0YXJ0IHdpdGggJXIiICUgKGZpbGUsIHByZWZpeCkpCisgICAgICAgICAgICAgICAgZGZpbGUgPSBkZmlsZVtsZW4ocHJlZml4KTpdCisgICAgICAgICAgICBpZiBiYXNlX2RpcjoKKyAgICAgICAgICAgICAgICBkZmlsZSA9IG9zLnBhdGguam9pbihiYXNlX2RpciwgZGZpbGUpCisKKyAgICAgICAgICAgIGNmaWxlX2Jhc2UgPSBvcy5wYXRoLmJhc2VuYW1lKGNmaWxlKQorICAgICAgICAgICAgaWYgZGlyZWN0OgorICAgICAgICAgICAgICAgIGlmIGZvcmNlIG9yIG5ld2VyKGZpbGUsIGNmaWxlKToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oImJ5dGUtY29tcGlsaW5nICVzIHRvICVzIiwgZmlsZSwgY2ZpbGVfYmFzZSkKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IGRyeV9ydW46CisgICAgICAgICAgICAgICAgICAgICAgICBjb21waWxlKGZpbGUsIGNmaWxlLCBkZmlsZSkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIuZGVidWcoInNraXBwaW5nIGJ5dGUtY29tcGlsYXRpb24gb2YgJXMgdG8gJXMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZSwgY2ZpbGVfYmFzZSkKKworCitfUkVfVkVSU0lPTiA9IHJlLmNvbXBpbGUoJyhcZCtcLlxkKyhcLlxkKykqKScpCitfTUFDX09TX1hfTERfVkVSU0lPTiA9IHJlLmNvbXBpbGUoJ15AXCgjXClQUk9HUkFNOmxkICAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1BST0pFQ1Q6bGQ2NC0oKFxkKykoXC5cZCspKiknKQorCisKK2RlZiBfZmluZF9sZF92ZXJzaW9uKCk6CisgICAgIiIiRmluZCB0aGUgbGQgdmVyc2lvbi4gIFRoZSB2ZXJzaW9uIHNjaGVtZSBkaWZmZXJzIHVuZGVyIE1hYyBPUyBYLiIiIgorICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnZGFyd2luJzoKKyAgICAgICAgcmV0dXJuIF9maW5kX2V4ZV92ZXJzaW9uKCdsZCAtdicsIF9NQUNfT1NfWF9MRF9WRVJTSU9OKQorICAgIGVsc2U6CisgICAgICAgIHJldHVybiBfZmluZF9leGVfdmVyc2lvbignbGQgLXYnKQorCisKK2RlZiBfZmluZF9leGVfdmVyc2lvbihjbWQsIHBhdHRlcm49X1JFX1ZFUlNJT04pOgorICAgICIiIkZpbmQgdGhlIHZlcnNpb24gb2YgYW4gZXhlY3V0YWJsZSBieSBydW5uaW5nIGBjbWRgIGluIHRoZSBzaGVsbC4KKworICAgIGBwYXR0ZXJuYCBpcyBhIGNvbXBpbGVkIHJlZ3VsYXIgZXhwcmVzc2lvbi4gIElmIG5vdCBwcm92aWRlZCwgZGVmYXVsdHMKKyAgICB0byBfUkVfVkVSU0lPTi4gSWYgdGhlIGNvbW1hbmQgaXMgbm90IGZvdW5kLCBvciB0aGUgb3V0cHV0IGRvZXMgbm90CisgICAgbWF0Y2ggdGhlIG1hdHRlcm4sIHJldHVybnMgTm9uZS4KKyAgICAiIiIKKyAgICBmcm9tIHN1YnByb2Nlc3MgaW1wb3J0IFBvcGVuLCBQSVBFCisgICAgZXhlY3V0YWJsZSA9IGNtZC5zcGxpdCgpWzBdCisgICAgaWYgZmluZF9leGVjdXRhYmxlKGV4ZWN1dGFibGUpIGlzIE5vbmU6CisgICAgICAgIHJldHVybiBOb25lCisgICAgcGlwZSA9IFBvcGVuKGNtZCwgc2hlbGw9VHJ1ZSwgc3Rkb3V0PVBJUEUsIHN0ZGVycj1QSVBFKQorICAgIHRyeToKKyAgICAgICAgc3Rkb3V0LCBzdGRlcnIgPSBwaXBlLmNvbW11bmljYXRlKCkKKyAgICBmaW5hbGx5OgorICAgICAgICBwaXBlLnN0ZG91dC5jbG9zZSgpCisgICAgICAgIHBpcGUuc3RkZXJyLmNsb3NlKCkKKyAgICAjIHNvbWUgY29tbWFuZHMgbGlrZSBsZCB1bmRlciBNYWNPUyBYLCB3aWxsIGdpdmUgdGhlCisgICAgIyBvdXRwdXQgaW4gdGhlIHN0ZGVyciwgcmF0aGVyIHRoYW4gc3Rkb3V0LgorICAgIGlmIHN0ZG91dCAhPSAnJzoKKyAgICAgICAgb3V0X3N0cmluZyA9IHN0ZG91dAorICAgIGVsc2U6CisgICAgICAgIG91dF9zdHJpbmcgPSBzdGRlcnIKKworICAgIHJlc3VsdCA9IHBhdHRlcm4uc2VhcmNoKG91dF9zdHJpbmcpCisgICAgaWYgcmVzdWx0IGlzIE5vbmU6CisgICAgICAgIHJldHVybiBOb25lCisgICAgcmV0dXJuIHJlc3VsdC5ncm91cCgxKQorCisKK2RlZiBnZXRfY29tcGlsZXJfdmVyc2lvbnMoKToKKyAgICAiIiJSZXR1cm4gYSB0dXBsZSBwcm92aWRpbmcgdGhlIHZlcnNpb25zIG9mIGdjYywgbGQgYW5kIGRsbHdyYXAKKworICAgIEZvciBlYWNoIGNvbW1hbmQsIGlmIGEgY29tbWFuZCBpcyBub3QgZm91bmQsIE5vbmUgaXMgcmV0dXJuZWQuCisgICAgT3RoZXJ3aXNlIGEgc3RyaW5nIHdpdGggdGhlIHZlcnNpb24gaXMgcmV0dXJuZWQuCisgICAgIiIiCisgICAgZ2NjID0gX2ZpbmRfZXhlX3ZlcnNpb24oJ2djYyAtZHVtcHZlcnNpb24nKQorICAgIGxkID0gX2ZpbmRfbGRfdmVyc2lvbigpCisgICAgZGxsd3JhcCA9IF9maW5kX2V4ZV92ZXJzaW9uKCdkbGx3cmFwIC0tdmVyc2lvbicpCisgICAgcmV0dXJuIGdjYywgbGQsIGRsbHdyYXAKKworCitkZWYgbmV3ZXJfZ3JvdXAoc291cmNlcywgdGFyZ2V0LCBtaXNzaW5nPSdlcnJvcicpOgorICAgICIiIlJldHVybiB0cnVlIGlmICd0YXJnZXQnIGlzIG91dC1vZi1kYXRlIHdpdGggcmVzcGVjdCB0byBhbnkgZmlsZQorICAgIGxpc3RlZCBpbiAnc291cmNlcycuCisKKyAgICBJbiBvdGhlciB3b3JkcywgaWYgJ3RhcmdldCcgZXhpc3RzIGFuZCBpcyBuZXdlcgorICAgIHRoYW4gZXZlcnkgZmlsZSBpbiAnc291cmNlcycsIHJldHVybiBmYWxzZTsgb3RoZXJ3aXNlIHJldHVybiB0cnVlLgorICAgICdtaXNzaW5nJyBjb250cm9scyB3aGF0IHdlIGRvIHdoZW4gYSBzb3VyY2UgZmlsZSBpcyBtaXNzaW5nOyB0aGUKKyAgICBkZWZhdWx0ICgiZXJyb3IiKSBpcyB0byBibG93IHVwIHdpdGggYW4gT1NFcnJvciBmcm9tIGluc2lkZSAnc3RhdCgpJzsKKyAgICBpZiBpdCBpcyAiaWdub3JlIiwgd2Ugc2lsZW50bHkgZHJvcCBhbnkgbWlzc2luZyBzb3VyY2UgZmlsZXM7IGlmIGl0IGlzCisgICAgIm5ld2VyIiwgYW55IG1pc3Npbmcgc291cmNlIGZpbGVzIG1ha2UgdXMgYXNzdW1lIHRoYXQgJ3RhcmdldCcgaXMKKyAgICBvdXQtb2YtZGF0ZSAodGhpcyBpcyBoYW5keSBpbiAiZHJ5LXJ1biIgbW9kZTogaXQnbGwgbWFrZSB5b3UgcHJldGVuZCB0bworICAgIGNhcnJ5IG91dCBjb21tYW5kcyB0aGF0IHdvdWxkbid0IHdvcmsgYmVjYXVzZSBpbnB1dHMgYXJlIG1pc3NpbmcsIGJ1dAorICAgIHRoYXQgZG9lc24ndCBtYXR0ZXIgYmVjYXVzZSB5b3UncmUgbm90IGFjdHVhbGx5IGdvaW5nIHRvIHJ1biB0aGUKKyAgICBjb21tYW5kcykuCisgICAgIiIiCisgICAgIyBJZiB0aGUgdGFyZ2V0IGRvZXNuJ3QgZXZlbiBleGlzdCwgdGhlbiBpdCdzIGRlZmluaXRlbHkgb3V0LW9mLWRhdGUuCisgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHRhcmdldCk6CisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICAjIE90aGVyd2lzZSB3ZSBoYXZlIHRvIGZpbmQgb3V0IHRoZSBoYXJkIHdheTogaWYgKmFueSogc291cmNlIGZpbGUKKyAgICAjIGlzIG1vcmUgcmVjZW50IHRoYW4gJ3RhcmdldCcsIHRoZW4gJ3RhcmdldCcgaXMgb3V0LW9mLWRhdGUgYW5kCisgICAgIyB3ZSBjYW4gaW1tZWRpYXRlbHkgcmV0dXJuIHRydWUuICBJZiB3ZSBmYWxsIHRocm91Z2ggdG8gdGhlIGVuZAorICAgICMgb2YgdGhlIGxvb3AsIHRoZW4gJ3RhcmdldCcgaXMgdXAtdG8tZGF0ZSBhbmQgd2UgcmV0dXJuIGZhbHNlLgorICAgIHRhcmdldF9tdGltZSA9IG9zLnN0YXQodGFyZ2V0KS5zdF9tdGltZQorCisgICAgZm9yIHNvdXJjZSBpbiBzb3VyY2VzOgorICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoc291cmNlKToKKyAgICAgICAgICAgIGlmIG1pc3NpbmcgPT0gJ2Vycm9yJzogICAgICAjIGJsb3cgdXAgd2hlbiB3ZSBzdGF0KCkgdGhlIGZpbGUKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBlbGlmIG1pc3NpbmcgPT0gJ2lnbm9yZSc6ICAgIyBtaXNzaW5nIHNvdXJjZSBkcm9wcGVkIGZyb20KKyAgICAgICAgICAgICAgICBjb250aW51ZSAgICAgICAgICAgICAgICAjIHRhcmdldCdzIGRlcGVuZGVuY3kgbGlzdAorICAgICAgICAgICAgZWxpZiBtaXNzaW5nID09ICduZXdlcic6ICAgICMgbWlzc2luZyBzb3VyY2UgbWVhbnMgdGFyZ2V0IGlzCisgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUgICAgICAgICAgICAgIyBvdXQtb2YtZGF0ZQorCisgICAgICAgIGlmIG9zLnN0YXQoc291cmNlKS5zdF9tdGltZSA+IHRhcmdldF9tdGltZToKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisKKyAgICByZXR1cm4gRmFsc2UKKworCitkZWYgd3JpdGVfZmlsZShmaWxlbmFtZSwgY29udGVudHMpOgorICAgICIiIkNyZWF0ZSAqZmlsZW5hbWUqIGFuZCB3cml0ZSAqY29udGVudHMqIHRvIGl0LgorCisgICAgKmNvbnRlbnRzKiBpcyBhIHNlcXVlbmNlIG9mIHN0cmluZ3Mgd2l0aG91dCBsaW5lIHRlcm1pbmF0b3JzLgorCisgICAgVGhpcyBmdW5jdGlvbnMgaXMgbm90IGludGVuZGVkIHRvIHJlcGxhY2UgdGhlIHVzdWFsIHdpdGggb3BlbiArIHdyaXRlCisgICAgaWRpb20gaW4gYWxsIGNhc2VzLCBvbmx5IHdpdGggQ29tbWFuZC5leGVjdXRlLCB3aGljaCBydW5zIGRlcGVuZGluZyBvbgorICAgIHRoZSBkcnlfcnVuIGFyZ3VtZW50IGFuZCBhbHNvIGxvZ3MgaXRzIGFyZ3VtZW50cykuCisgICAgIiIiCisgICAgd2l0aCBvcGVuKGZpbGVuYW1lLCAidyIpIGFzIGY6CisgICAgICAgIGZvciBsaW5lIGluIGNvbnRlbnRzOgorICAgICAgICAgICAgZi53cml0ZShsaW5lICsgIlxuIikKKworCitkZWYgX2lzX3BhY2thZ2UocGF0aCk6CisgICAgcmV0dXJuIG9zLnBhdGguaXNkaXIocGF0aCkgYW5kIG9zLnBhdGguaXNmaWxlKAorICAgICAgICBvcy5wYXRoLmpvaW4ocGF0aCwgJ19faW5pdF9fLnB5JykpCisKKworIyBDb2RlIHRha2VuIGZyb20gdGhlIHBpcCBwcm9qZWN0CitkZWYgX2lzX2FyY2hpdmVfZmlsZShuYW1lKToKKyAgICBhcmNoaXZlcyA9ICgnLnppcCcsICcudGFyLmd6JywgJy50YXIuYnoyJywgJy50Z3onLCAnLnRhcicpCisgICAgZXh0ID0gc3BsaXRleHQobmFtZSlbMV0ubG93ZXIoKQorICAgIHJldHVybiBleHQgaW4gYXJjaGl2ZXMKKworCitkZWYgX3VuZGVyKHBhdGgsIHJvb3QpOgorICAgICMgWFhYIHVzZSBvcy5wYXRoCisgICAgcGF0aCA9IHBhdGguc3BsaXQob3Muc2VwKQorICAgIHJvb3QgPSByb290LnNwbGl0KG9zLnNlcCkKKyAgICBpZiBsZW4ocm9vdCkgPiBsZW4ocGF0aCk6CisgICAgICAgIHJldHVybiBGYWxzZQorICAgIGZvciBwb3MsIHBhcnQgaW4gZW51bWVyYXRlKHJvb3QpOgorICAgICAgICBpZiBwYXRoW3Bvc10gIT0gcGFydDoKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgIHJldHVybiBUcnVlCisKKworZGVmIF9wYWNrYWdlX25hbWUocm9vdF9wYXRoLCBwYXRoKToKKyAgICAjIFJldHVybiBhIGRvdHRlZCBwYWNrYWdlIG5hbWUsIGdpdmVuIGEgc3VicGF0aAorICAgIGlmIG5vdCBfdW5kZXIocGF0aCwgcm9vdF9wYXRoKToKKyAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignIiVzIiBpcyBub3QgYSBzdWJwYXRoIG9mICIlcyInICUgKHBhdGgsIHJvb3RfcGF0aCkpCisgICAgcmV0dXJuIHBhdGhbbGVuKHJvb3RfcGF0aCkgKyAxOl0ucmVwbGFjZShvcy5zZXAsICcuJykKKworCitkZWYgZmluZF9wYWNrYWdlcyhwYXRocz0ob3MuY3VyZGlyLCksIGV4Y2x1ZGU9KCkpOgorICAgICIiIlJldHVybiBhIGxpc3QgYWxsIFB5dGhvbiBwYWNrYWdlcyBmb3VuZCByZWN1cnNpdmVseSB3aXRoaW4KKyAgICBkaXJlY3RvcmllcyAncGF0aHMnCisKKyAgICAncGF0aHMnIHNob3VsZCBiZSBzdXBwbGllZCBhcyBhIHNlcXVlbmNlIG9mICJjcm9zcy1wbGF0Zm9ybSIKKyAgICAoaS5lLiBVUkwtc3R5bGUpIHBhdGg7IGl0IHdpbGwgYmUgY29udmVydGVkIHRvIHRoZSBhcHByb3ByaWF0ZSBsb2NhbAorICAgIHBhdGggc3ludGF4LgorCisgICAgJ2V4Y2x1ZGUnIGlzIGEgc2VxdWVuY2Ugb2YgcGFja2FnZSBuYW1lcyB0byBleGNsdWRlOyAnKicgY2FuIGJlIHVzZWQgYXMKKyAgICBhIHdpbGRjYXJkIGluIHRoZSBuYW1lcywgc3VjaCB0aGF0ICdmb28uKicgd2lsbCBleGNsdWRlIGFsbCBzdWJwYWNrYWdlcworICAgIG9mICdmb28nIChidXQgbm90ICdmb28nIGl0c2VsZikuCisgICAgIiIiCisgICAgcGFja2FnZXMgPSBbXQorICAgIGRpc2NhcmRlZCA9IFtdCisKKyAgICBkZWYgX2Rpc2NhcmRlZChwYXRoKToKKyAgICAgICAgZm9yIGRpc2NhcmQgaW4gZGlzY2FyZGVkOgorICAgICAgICAgICAgaWYgX3VuZGVyKHBhdGgsIGRpc2NhcmQpOgorICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgZm9yIHBhdGggaW4gcGF0aHM6CisgICAgICAgIHBhdGggPSBjb252ZXJ0X3BhdGgocGF0aCkKKyAgICAgICAgZm9yIHJvb3QsIGRpcnMsIGZpbGVzIGluIG9zLndhbGsocGF0aCk6CisgICAgICAgICAgICBmb3IgZGlyXyBpbiBkaXJzOgorICAgICAgICAgICAgICAgIGZ1bGxwYXRoID0gb3MucGF0aC5qb2luKHJvb3QsIGRpcl8pCisgICAgICAgICAgICAgICAgaWYgX2Rpc2NhcmRlZChmdWxscGF0aCk6CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgIyB3ZSB3b3JrIG9ubHkgd2l0aCBQeXRob24gcGFja2FnZXMKKyAgICAgICAgICAgICAgICBpZiBub3QgX2lzX3BhY2thZ2UoZnVsbHBhdGgpOgorICAgICAgICAgICAgICAgICAgICBkaXNjYXJkZWQuYXBwZW5kKGZ1bGxwYXRoKQorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICMgc2VlIGlmIGl0J3MgZXhjbHVkZWQKKyAgICAgICAgICAgICAgICBleGNsdWRlZCA9IEZhbHNlCisgICAgICAgICAgICAgICAgcGFja2FnZV9uYW1lID0gX3BhY2thZ2VfbmFtZShwYXRoLCBmdWxscGF0aCkKKyAgICAgICAgICAgICAgICBmb3IgcGF0dGVybiBpbiBleGNsdWRlOgorICAgICAgICAgICAgICAgICAgICBpZiBmbm1hdGNoY2FzZShwYWNrYWdlX25hbWUsIHBhdHRlcm4pOgorICAgICAgICAgICAgICAgICAgICAgICAgZXhjbHVkZWQgPSBUcnVlCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGlmIGV4Y2x1ZGVkOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICAgICAgIyBhZGRpbmcgaXQgdG8gdGhlIGxpc3QKKyAgICAgICAgICAgICAgICBwYWNrYWdlcy5hcHBlbmQocGFja2FnZV9uYW1lKQorICAgIHJldHVybiBwYWNrYWdlcworCisKK2RlZiByZXNvbHZlX25hbWUobmFtZSk6CisgICAgIiIiUmVzb2x2ZSBhIG5hbWUgbGlrZSBgYG1vZHVsZS5vYmplY3RgYCB0byBhbiBvYmplY3QgYW5kIHJldHVybiBpdC4KKworICAgIFRoaXMgZnVuY3Rpb25zIHN1cHBvcnRzIHBhY2thZ2VzIGFuZCBhdHRyaWJ1dGVzIHdpdGhvdXQgZGVwdGggbGltaXRhdGlvbjoKKyAgICBgYHBhY2thZ2UucGFja2FnZS5tb2R1bGUuY2xhc3MuY2xhc3MuZnVuY3Rpb24uYXR0cmBgIGlzIHZhbGlkIGlucHV0LgorICAgIEhvd2V2ZXIsIGxvb2tpbmcgdXAgYnVpbHRpbnMgaXMgbm90IGRpcmVjdGx5IHN1cHBvcnRlZDogdXNlCisgICAgYGBidWlsdGlucy5uYW1lYGAuCisKKyAgICBSYWlzZXMgSW1wb3J0RXJyb3IgaWYgaW1wb3J0aW5nIHRoZSBtb2R1bGUgZmFpbHMgb3IgaWYgb25lIHJlcXVlc3RlZAorICAgIGF0dHJpYnV0ZSBpcyBub3QgZm91bmQuCisgICAgIiIiCisgICAgaWYgJy4nIG5vdCBpbiBuYW1lOgorICAgICAgICAjIHNob3J0Y3V0CisgICAgICAgIF9faW1wb3J0X18obmFtZSkKKyAgICAgICAgcmV0dXJuIHN5cy5tb2R1bGVzW25hbWVdCisKKyAgICAjIEZJWE1FIGNsZWFuIHVwIHRoaXMgY29kZSEKKyAgICBwYXJ0cyA9IG5hbWUuc3BsaXQoJy4nKQorICAgIGN1cnNvciA9IGxlbihwYXJ0cykKKyAgICBtb2R1bGVfbmFtZSA9IHBhcnRzWzpjdXJzb3JdCisgICAgcmV0ID0gJycKKworICAgIHdoaWxlIGN1cnNvciA+IDA6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJldCA9IF9faW1wb3J0X18oJy4nLmpvaW4obW9kdWxlX25hbWUpKQorICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgorICAgICAgICAgICAgY3Vyc29yIC09IDEKKyAgICAgICAgICAgIG1vZHVsZV9uYW1lID0gcGFydHNbOmN1cnNvcl0KKworICAgIGlmIHJldCA9PSAnJzoKKyAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IocGFydHNbMF0pCisKKyAgICBmb3IgcGFydCBpbiBwYXJ0c1sxOl06CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJldCA9IGdldGF0dHIocmV0LCBwYXJ0KQorICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3IgYXMgZXhjOgorICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IoZXhjKQorCisgICAgcmV0dXJuIHJldAorCisKK2RlZiBzcGxpdGV4dChwYXRoKToKKyAgICAiIiJMaWtlIG9zLnBhdGguc3BsaXRleHQsIGJ1dCB0YWtlIG9mZiAudGFyIHRvbyIiIgorICAgIGJhc2UsIGV4dCA9IHBvc2l4cGF0aC5zcGxpdGV4dChwYXRoKQorICAgIGlmIGJhc2UubG93ZXIoKS5lbmRzd2l0aCgnLnRhcicpOgorICAgICAgICBleHQgPSBiYXNlWy00Ol0gKyBleHQKKyAgICAgICAgYmFzZSA9IGJhc2VbOi00XQorICAgIHJldHVybiBiYXNlLCBleHQKKworCitpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgX2NmZ190YXJnZXQgPSBOb25lCisgICAgX2NmZ190YXJnZXRfc3BsaXQgPSBOb25lCisKKworZGVmIHNwYXduKGNtZCwgc2VhcmNoX3BhdGg9VHJ1ZSwgZHJ5X3J1bj1GYWxzZSwgZW52PU5vbmUpOgorICAgICIiIlJ1biBhbm90aGVyIHByb2dyYW0gc3BlY2lmaWVkIGFzIGEgY29tbWFuZCBsaXN0ICdjbWQnIGluIGEgbmV3IHByb2Nlc3MuCisKKyAgICAnY21kJyBpcyBqdXN0IHRoZSBhcmd1bWVudCBsaXN0IGZvciB0aGUgbmV3IHByb2Nlc3MsIGllLgorICAgIGNtZFswXSBpcyB0aGUgcHJvZ3JhbSB0byBydW4gYW5kIGNtZFsxOl0gYXJlIHRoZSByZXN0IG9mIGl0cyBhcmd1bWVudHMuCisgICAgVGhlcmUgaXMgbm8gd2F5IHRvIHJ1biBhIHByb2dyYW0gd2l0aCBhIG5hbWUgZGlmZmVyZW50IGZyb20gdGhhdCBvZiBpdHMKKyAgICBleGVjdXRhYmxlLgorCisgICAgSWYgJ3NlYXJjaF9wYXRoJyBpcyB0cnVlICh0aGUgZGVmYXVsdCksIHRoZSBzeXN0ZW0ncyBleGVjdXRhYmxlCisgICAgc2VhcmNoIHBhdGggd2lsbCBiZSB1c2VkIHRvIGZpbmQgdGhlIHByb2dyYW07IG90aGVyd2lzZSwgY21kWzBdCisgICAgbXVzdCBiZSB0aGUgZXhhY3QgcGF0aCB0byB0aGUgZXhlY3V0YWJsZS4gIElmICdkcnlfcnVuJyBpcyB0cnVlLAorICAgIHRoZSBjb21tYW5kIHdpbGwgbm90IGFjdHVhbGx5IGJlIHJ1bi4KKworICAgIElmICdlbnYnIGlzIGdpdmVuLCBpdCdzIGEgZW52aXJvbm1lbnQgZGljdGlvbmFyeSB1c2VkIGZvciB0aGUgZXhlY3V0aW9uCisgICAgZW52aXJvbm1lbnQuCisKKyAgICBSYWlzZSBQYWNrYWdpbmdFeGVjRXJyb3IgaWYgcnVubmluZyB0aGUgcHJvZ3JhbSBmYWlscyBpbiBhbnkgd2F5OyBqdXN0CisgICAgcmV0dXJuIG9uIHN1Y2Nlc3MuCisgICAgIiIiCisgICAgbG9nZ2VyLmRlYnVnKCdzcGF3bjogcnVubmluZyAlcicsIGNtZCkKKyAgICBpZiBkcnlfcnVuOgorICAgICAgICBsb2dnZXIuZGVidWcoJ2RyeSBydW4sIG5vIHByb2Nlc3MgYWN0dWFsbHkgc3Bhd25lZCcpCisgICAgICAgIHJldHVybgorICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnZGFyd2luJzoKKyAgICAgICAgZ2xvYmFsIF9jZmdfdGFyZ2V0LCBfY2ZnX3RhcmdldF9zcGxpdAorICAgICAgICBpZiBfY2ZnX3RhcmdldCBpcyBOb25lOgorICAgICAgICAgICAgX2NmZ190YXJnZXQgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCcpIG9yICcnCisgICAgICAgICAgICBpZiBfY2ZnX3RhcmdldDoKKyAgICAgICAgICAgICAgICBfY2ZnX3RhcmdldF9zcGxpdCA9IFtpbnQoeCkgZm9yIHggaW4gX2NmZ190YXJnZXQuc3BsaXQoJy4nKV0KKyAgICAgICAgaWYgX2NmZ190YXJnZXQ6CisgICAgICAgICAgICAjIGVuc3VyZSB0aGF0IHRoZSBkZXBsb3ltZW50IHRhcmdldCBvZiBidWlsZCBwcm9jZXNzIGlzIG5vdCBsZXNzCisgICAgICAgICAgICAjIHRoYW4gdGhhdCB1c2VkIHdoZW4gdGhlIGludGVycHJldGVyIHdhcyBidWlsdC4gVGhpcyBlbnN1cmVzCisgICAgICAgICAgICAjIGV4dGVuc2lvbiBtb2R1bGVzIGFyZSBidWlsdCB3aXRoIGNvcnJlY3QgY29tcGF0aWJpbGl0eSB2YWx1ZXMKKyAgICAgICAgICAgIGVudiA9IGVudiBvciBvcy5lbnZpcm9uCisgICAgICAgICAgICBjdXJfdGFyZ2V0ID0gZW52LmdldCgnTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUJywgX2NmZ190YXJnZXQpCisgICAgICAgICAgICBpZiBfY2ZnX3RhcmdldF9zcGxpdCA+IFtpbnQoeCkgZm9yIHggaW4gY3VyX3RhcmdldC5zcGxpdCgnLicpXToKKyAgICAgICAgICAgICAgICBteV9tc2cgPSAoJyRNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQgbWlzbWF0Y2g6ICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ25vdyAiJXMiIGJ1dCAiJXMiIGR1cmluZyBjb25maWd1cmUnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgKGN1cl90YXJnZXQsIF9jZmdfdGFyZ2V0KSkKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKG15X21zZykKKyAgICAgICAgICAgIGVudiA9IGRpY3QoZW52LCBNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQ9Y3VyX3RhcmdldCkKKworICAgIGV4aXRfc3RhdHVzID0gc3VicHJvY2Vzcy5jYWxsKGNtZCwgZW52PWVudikKKyAgICBpZiBleGl0X3N0YXR1cyAhPSAwOgorICAgICAgICBtc2cgPSAiY29tbWFuZCAlciBmYWlsZWQgd2l0aCBleGl0IHN0YXR1cyAlZCIKKyAgICAgICAgcmFpc2UgUGFja2FnaW5nRXhlY0Vycm9yKG1zZyAlIChjbWQsIGV4aXRfc3RhdHVzKSkKKworCitkZWYgZmluZF9leGVjdXRhYmxlKGV4ZWN1dGFibGUsIHBhdGg9Tm9uZSk6CisgICAgIiIiVHJ5IHRvIGZpbmQgJ2V4ZWN1dGFibGUnIGluIHRoZSBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gJ3BhdGgnLgorCisgICAgKnBhdGgqIGlzIGEgc3RyaW5nIGxpc3RpbmcgZGlyZWN0b3JpZXMgc2VwYXJhdGVkIGJ5ICdvcy5wYXRoc2VwJyBhbmQKKyAgICBkZWZhdWx0cyB0byBvcy5lbnZpcm9uWydQQVRIJ10uICBSZXR1cm5zIHRoZSBjb21wbGV0ZSBmaWxlbmFtZSBvciBOb25lCisgICAgaWYgbm90IGZvdW5kLgorICAgICIiIgorICAgIGlmIHBhdGggaXMgTm9uZToKKyAgICAgICAgcGF0aCA9IG9zLmVudmlyb25bJ1BBVEgnXQorICAgIHBhdGhzID0gcGF0aC5zcGxpdChvcy5wYXRoc2VwKQorICAgIGJhc2UsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQoZXhlY3V0YWJsZSkKKworICAgIGlmIChzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJyBvciBvcy5uYW1lID09ICdvczInKSBhbmQgKGV4dCAhPSAnLmV4ZScpOgorICAgICAgICBleGVjdXRhYmxlID0gZXhlY3V0YWJsZSArICcuZXhlJworCisgICAgaWYgbm90IG9zLnBhdGguaXNmaWxlKGV4ZWN1dGFibGUpOgorICAgICAgICBmb3IgcCBpbiBwYXRoczoKKyAgICAgICAgICAgIGYgPSBvcy5wYXRoLmpvaW4ocCwgZXhlY3V0YWJsZSkKKyAgICAgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKGYpOgorICAgICAgICAgICAgICAgICMgdGhlIGZpbGUgZXhpc3RzLCB3ZSBoYXZlIGEgc2hvdCBhdCBzcGF3biB3b3JraW5nCisgICAgICAgICAgICAgICAgcmV0dXJuIGYKKyAgICAgICAgcmV0dXJuIE5vbmUKKyAgICBlbHNlOgorICAgICAgICByZXR1cm4gZXhlY3V0YWJsZQorCisKK0RFRkFVTFRfUkVQT1NJVE9SWSA9ICdodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGknCitERUZBVUxUX1JFQUxNID0gJ3B5cGknCitERUZBVUxUX1BZUElSQyA9ICIiIlwKK1tkaXN0dXRpbHNdCitpbmRleC1zZXJ2ZXJzID0KKyAgICBweXBpCisKK1tweXBpXQordXNlcm5hbWU6JXMKK3Bhc3N3b3JkOiVzCisiIiIKKworCitkZWYgZ2V0X3B5cGlyY19wYXRoKCk6CisgICAgIiIiUmV0dXJuIHBhdGggdG8gcHlwaXJjIGNvbmZpZyBmaWxlLiIiIgorICAgIHJldHVybiBvcy5wYXRoLmpvaW4ob3MucGF0aC5leHBhbmR1c2VyKCd+JyksICcucHlwaXJjJykKKworCitkZWYgZ2VuZXJhdGVfcHlwaXJjKHVzZXJuYW1lLCBwYXNzd29yZCk6CisgICAgIiIiQ3JlYXRlIGEgZGVmYXVsdCAucHlwaXJjIGZpbGUuIiIiCisgICAgcmMgPSBnZXRfcHlwaXJjX3BhdGgoKQorICAgIHdpdGggb3BlbihyYywgJ3cnKSBhcyBmOgorICAgICAgICBmLndyaXRlKERFRkFVTFRfUFlQSVJDICUgKHVzZXJuYW1lLCBwYXNzd29yZCkpCisgICAgdHJ5OgorICAgICAgICBvcy5jaG1vZChyYywgMG82MDApCisgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgICMgc2hvdWxkIGRvIHNvbWV0aGluZyBiZXR0ZXIgaGVyZQorICAgICAgICBwYXNzCisKKworZGVmIHJlYWRfcHlwaXJjKHJlcG9zaXRvcnk9REVGQVVMVF9SRVBPU0lUT1JZLCByZWFsbT1ERUZBVUxUX1JFQUxNKToKKyAgICAiIiJSZWFkIHRoZSAucHlwaXJjIGZpbGUuIiIiCisgICAgcmMgPSBnZXRfcHlwaXJjX3BhdGgoKQorICAgIGlmIG9zLnBhdGguZXhpc3RzKHJjKToKKyAgICAgICAgY29uZmlnID0gUmF3Q29uZmlnUGFyc2VyKCkKKyAgICAgICAgY29uZmlnLnJlYWQocmMpCisgICAgICAgIHNlY3Rpb25zID0gY29uZmlnLnNlY3Rpb25zKCkKKyAgICAgICAgaWYgJ2Rpc3R1dGlscycgaW4gc2VjdGlvbnM6CisgICAgICAgICAgICAjIGxldCdzIGdldCB0aGUgbGlzdCBvZiBzZXJ2ZXJzCisgICAgICAgICAgICBpbmRleF9zZXJ2ZXJzID0gY29uZmlnLmdldCgnZGlzdHV0aWxzJywgJ2luZGV4LXNlcnZlcnMnKQorICAgICAgICAgICAgX3NlcnZlcnMgPSBbc2VydmVyLnN0cmlwKCkgZm9yIHNlcnZlciBpbgorICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXhfc2VydmVycy5zcGxpdCgnXG4nKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgc2VydmVyLnN0cmlwKCkgIT0gJyddCisgICAgICAgICAgICBpZiBfc2VydmVycyA9PSBbXToKKyAgICAgICAgICAgICAgICAjIG5vdGhpbmcgc2V0LCBsZXQncyB0cnkgdG8gZ2V0IHRoZSBkZWZhdWx0IHB5cGkKKyAgICAgICAgICAgICAgICBpZiAncHlwaScgaW4gc2VjdGlvbnM6CisgICAgICAgICAgICAgICAgICAgIF9zZXJ2ZXJzID0gWydweXBpJ10KKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAjIHRoZSBmaWxlIGlzIG5vdCBwcm9wZXJseSBkZWZpbmVkLCByZXR1cm5pbmcKKyAgICAgICAgICAgICAgICAgICAgIyBhbiBlbXB0eSBkaWN0CisgICAgICAgICAgICAgICAgICAgIHJldHVybiB7fQorICAgICAgICAgICAgZm9yIHNlcnZlciBpbiBfc2VydmVyczoKKyAgICAgICAgICAgICAgICBjdXJyZW50ID0geydzZXJ2ZXInOiBzZXJ2ZXJ9CisgICAgICAgICAgICAgICAgY3VycmVudFsndXNlcm5hbWUnXSA9IGNvbmZpZy5nZXQoc2VydmVyLCAndXNlcm5hbWUnKQorCisgICAgICAgICAgICAgICAgIyBvcHRpb25hbCBwYXJhbXMKKyAgICAgICAgICAgICAgICBmb3Iga2V5LCBkZWZhdWx0IGluICgoJ3JlcG9zaXRvcnknLCBERUZBVUxUX1JFUE9TSVRPUlkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgncmVhbG0nLCBERUZBVUxUX1JFQUxNKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ3Bhc3N3b3JkJywgTm9uZSkpOgorICAgICAgICAgICAgICAgICAgICBpZiBjb25maWcuaGFzX29wdGlvbihzZXJ2ZXIsIGtleSk6CisgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50W2tleV0gPSBjb25maWcuZ2V0KHNlcnZlciwga2V5KQorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudFtrZXldID0gZGVmYXVsdAorICAgICAgICAgICAgICAgIGlmIChjdXJyZW50WydzZXJ2ZXInXSA9PSByZXBvc2l0b3J5IG9yCisgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRbJ3JlcG9zaXRvcnknXSA9PSByZXBvc2l0b3J5KToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGN1cnJlbnQKKyAgICAgICAgZWxpZiAnc2VydmVyLWxvZ2luJyBpbiBzZWN0aW9uczoKKyAgICAgICAgICAgICMgb2xkIGZvcm1hdAorICAgICAgICAgICAgc2VydmVyID0gJ3NlcnZlci1sb2dpbicKKyAgICAgICAgICAgIGlmIGNvbmZpZy5oYXNfb3B0aW9uKHNlcnZlciwgJ3JlcG9zaXRvcnknKToKKyAgICAgICAgICAgICAgICByZXBvc2l0b3J5ID0gY29uZmlnLmdldChzZXJ2ZXIsICdyZXBvc2l0b3J5JykKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmVwb3NpdG9yeSA9IERFRkFVTFRfUkVQT1NJVE9SWQorCisgICAgICAgICAgICByZXR1cm4geyd1c2VybmFtZSc6IGNvbmZpZy5nZXQoc2VydmVyLCAndXNlcm5hbWUnKSwKKyAgICAgICAgICAgICAgICAgICAgJ3Bhc3N3b3JkJzogY29uZmlnLmdldChzZXJ2ZXIsICdwYXNzd29yZCcpLAorICAgICAgICAgICAgICAgICAgICAncmVwb3NpdG9yeSc6IHJlcG9zaXRvcnksCisgICAgICAgICAgICAgICAgICAgICdzZXJ2ZXInOiBzZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICdyZWFsbSc6IERFRkFVTFRfUkVBTE19CisKKyAgICByZXR1cm4ge30KKworCisjIHV0aWxpdHkgZnVuY3Rpb25zIGZvciAydG8zIHN1cHBvcnQKKworZGVmIHJ1bl8ydG8zKGZpbGVzLCBkb2N0ZXN0c19vbmx5PUZhbHNlLCBmaXhlcl9uYW1lcz1Ob25lLAorICAgICAgICAgICAgIG9wdGlvbnM9Tm9uZSwgZXhwbGljaXQ9Tm9uZSk6CisgICAgIiIiIFdyYXBwZXIgZnVuY3Rpb24gYXJvdW5kIHRoZSByZWZhY3RvcigpIGNsYXNzIHdoaWNoCisgICAgcGVyZm9ybXMgdGhlIGNvbnZlcnNpb25zIG9uIGEgbGlzdCBvZiBweXRob24gZmlsZXMuCisgICAgSW52b2tlIDJ0bzMgb24gYSBsaXN0IG9mIFB5dGhvbiBmaWxlcy4gVGhlIGZpbGVzIHNob3VsZCBhbGwgY29tZQorICAgIGZyb20gdGhlIGJ1aWxkIGFyZWEsIGFzIHRoZSBtb2RpZmljYXRpb24gaXMgZG9uZSBpbi1wbGFjZS4iIiIKKworICAgICNpZiBub3QgZmlsZXM6CisgICAgIyAgICByZXR1cm4KKworICAgICMgTWFrZSB0aGlzIGNsYXNzIGxvY2FsLCB0byBkZWxheSBpbXBvcnQgb2YgMnRvMworICAgIGZyb20gbGliMnRvMy5yZWZhY3RvciBpbXBvcnQgZ2V0X2ZpeGVyc19mcm9tX3BhY2thZ2UsIFJlZmFjdG9yaW5nVG9vbAorICAgIGZpeGVycyA9IGdldF9maXhlcnNfZnJvbV9wYWNrYWdlKCdsaWIydG8zLmZpeGVzJykKKworICAgIGlmIGZpeGVyX25hbWVzOgorICAgICAgICBmb3IgZml4ZXJuYW1lIGluIGZpeGVyX25hbWVzOgorICAgICAgICAgICAgZml4ZXJzLmV4dGVuZChnZXRfZml4ZXJzX2Zyb21fcGFja2FnZShmaXhlcm5hbWUpKQorICAgIHIgPSBSZWZhY3RvcmluZ1Rvb2woZml4ZXJzLCBvcHRpb25zPW9wdGlvbnMpCisgICAgci5yZWZhY3RvcihmaWxlcywgd3JpdGU9VHJ1ZSwgZG9jdGVzdHNfb25seT1kb2N0ZXN0c19vbmx5KQorCisKK2NsYXNzIE1peGluMnRvMzoKKyAgICAiIiIgV3JhcHBlciBjbGFzcyBmb3IgY29tbWFuZHMgdGhhdCBydW4gMnRvMy4KKyAgICBUbyBjb25maWd1cmUgMnRvMywgc2V0dXAgc2NyaXB0cyBtYXkgZWl0aGVyIGNoYW5nZQorICAgIHRoZSBjbGFzcyB2YXJpYWJsZXMsIG9yIGluaGVyaXQgZnJvbSB0aGlzIGNsYXNzCisgICAgdG8gb3ZlcnJpZGUgaG93IDJ0bzMgaXMgaW52b2tlZC4KKyAgICAiIiIKKyAgICAjIGxpc3Qgb2YgZml4ZXJzIHRvIHJ1bjsgZGVmYXVsdHMgdG8gYWxsIGltcGxpY2l0IGZyb20gbGliMnRvMy5maXhlcnMKKyAgICBmaXhlcl9uYW1lcyA9IE5vbmUKKyAgICAjIGRpY3Qgb2Ygb3B0aW9ucworICAgIG9wdGlvbnMgPSBOb25lCisgICAgIyBsaXN0IG9mIGV4dHJhIGZpeGVycyB0byBpbnZva2UKKyAgICBleHBsaWNpdCA9IE5vbmUKKyAgICAjIFRPRE8gbmVlZCBhIGJldHRlciB3YXkgdG8gYWRkIGp1c3Qgb25lIGZpeGVyIGZyb20gYSBwYWNrYWdlCisgICAgIyBUT0RPIG5lZWQgYSB3YXkgdG8gZXhjbHVkZSBpbmRpdmlkdWFsIGZpeGVycworCisgICAgZGVmIHJ1bl8ydG8zKHNlbGYsIGZpbGVzLCBkb2N0ZXN0c19vbmx5PUZhbHNlKToKKyAgICAgICAgIiIiIElzc3VlcyBhIGNhbGwgdG8gdXRpbC5ydW5fMnRvMy4gIiIiCisgICAgICAgIHJldHVybiBydW5fMnRvMyhmaWxlcywgZG9jdGVzdHNfb25seSwgc2VsZi5maXhlcl9uYW1lcywKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYub3B0aW9ucywgc2VsZi5leHBsaWNpdCkKKworICAgICMgVE9ETyBwcm92aWRlIGluaXRpYWxpemUvZmluYWxpemVfb3B0aW9ucworCisKK1JJQ0hfR0xPQiA9IHJlLmNvbXBpbGUocidceyhbXn1dKilcfScpCitfQ0hFQ0tfUkVDVVJTSVZFX0dMT0IgPSByZS5jb21waWxlKHInW14vXFwse11cKlwqfFwqXCpbXi9cXCx9XScpCitfQ0hFQ0tfTUlTTUFUQ0hfU0VUID0gcmUuY29tcGlsZShyJ15bXntdKlx9fFx7W159XSokJykKKworCitkZWYgaWdsb2IocGF0aF9nbG9iKToKKyAgICAiIiJFeHRlbmRlZCBnbG9iYmluZyBmdW5jdGlvbiB0aGF0IHN1cHBvcnRzICoqIGFuZCB7b3B0MSxvcHQyLG9wdDN9LiIiIgorICAgIGlmIF9DSEVDS19SRUNVUlNJVkVfR0xPQi5zZWFyY2gocGF0aF9nbG9iKToKKyAgICAgICAgbXNnID0gIiIiaW52YWxpZCBnbG9iICVyOiByZWN1cnNpdmUgZ2xvYiAiKioiIG11c3QgYmUgdXNlZCBhbG9uZSIiIgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKG1zZyAlIHBhdGhfZ2xvYikKKyAgICBpZiBfQ0hFQ0tfTUlTTUFUQ0hfU0VULnNlYXJjaChwYXRoX2dsb2IpOgorICAgICAgICBtc2cgPSAiIiJpbnZhbGlkIGdsb2IgJXI6IG1pc21hdGNoaW5nIHNldCBtYXJrZXIgJ3snIG9yICd9JyIiIgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKG1zZyAlIHBhdGhfZ2xvYikKKyAgICByZXR1cm4gX2lnbG9iKHBhdGhfZ2xvYikKKworCitkZWYgX2lnbG9iKHBhdGhfZ2xvYik6CisgICAgcmljaF9wYXRoX2dsb2IgPSBSSUNIX0dMT0Iuc3BsaXQocGF0aF9nbG9iLCAxKQorICAgIGlmIGxlbihyaWNoX3BhdGhfZ2xvYikgPiAxOgorICAgICAgICBhc3NlcnQgbGVuKHJpY2hfcGF0aF9nbG9iKSA9PSAzLCByaWNoX3BhdGhfZ2xvYgorICAgICAgICBwcmVmaXgsIHNldCwgc3VmZml4ID0gcmljaF9wYXRoX2dsb2IKKyAgICAgICAgZm9yIGl0ZW0gaW4gc2V0LnNwbGl0KCcsJyk6CisgICAgICAgICAgICBmb3IgcGF0aCBpbiBfaWdsb2IoJycuam9pbigocHJlZml4LCBpdGVtLCBzdWZmaXgpKSk6CisgICAgICAgICAgICAgICAgeWllbGQgcGF0aAorICAgIGVsc2U6CisgICAgICAgIGlmICcqKicgbm90IGluIHBhdGhfZ2xvYjoKKyAgICAgICAgICAgIGZvciBpdGVtIGluIHN0ZF9pZ2xvYihwYXRoX2dsb2IpOgorICAgICAgICAgICAgICAgIHlpZWxkIGl0ZW0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHByZWZpeCwgcmFkaWNhbCA9IHBhdGhfZ2xvYi5zcGxpdCgnKionLCAxKQorICAgICAgICAgICAgaWYgcHJlZml4ID09ICcnOgorICAgICAgICAgICAgICAgIHByZWZpeCA9ICcuJworICAgICAgICAgICAgaWYgcmFkaWNhbCA9PSAnJzoKKyAgICAgICAgICAgICAgICByYWRpY2FsID0gJyonCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICMgd2Ugc3VwcG9ydCBib3RoCisgICAgICAgICAgICAgICAgcmFkaWNhbCA9IHJhZGljYWwubHN0cmlwKCcvJykKKyAgICAgICAgICAgICAgICByYWRpY2FsID0gcmFkaWNhbC5sc3RyaXAoJ1xcJykKKyAgICAgICAgICAgIGZvciBwYXRoLCBkaXIsIGZpbGVzIGluIG9zLndhbGsocHJlZml4KToKKyAgICAgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5ub3JtcGF0aChwYXRoKQorICAgICAgICAgICAgICAgIGZvciBmaWxlIGluIF9pZ2xvYihvcy5wYXRoLmpvaW4ocGF0aCwgcmFkaWNhbCkpOgorICAgICAgICAgICAgICAgICAgICB5aWVsZCBmaWxlCisKKworIyBIT1dUTyBjaGFuZ2UgY2ZnX3RvX2FyZ3MKKyMKKyMgVGhpcyBmdW5jdGlvbiBoYXMgdHdvIG1ham9yIGNvbnN0cmFpbnRzOiBJdCBpcyBjb3BpZWQgYnkgaW5zcGVjdC5nZXRzb3VyY2UKKyMgaW4gZ2VuZXJhdGVfc2V0dXBfcHk7IGl0IGlzIHVzZWQgaW4gZ2VuZXJhdGVkIHNldHVwLnB5IHdoaWNoIG1heSBiZSBydW4gYnkKKyMgYW55IFB5dGhvbiB2ZXJzaW9uIHN1cHBvcnRlZCBieSBkaXN0dXRpbHMyICgyLjQtMy4zKS4KKyMKKyMgKiBLZWVwIG9iamVjdHMgbGlrZSBEMV9EMl9TRVRVUF9BUkdTIHN0YXRpYywgaS5lLiBpbiB0aGUgZnVuY3Rpb24gYm9keQorIyAgIGluc3RlYWQgb2YgZ2xvYmFsLgorIyAqIElmIHlvdSB1c2UgYSBmdW5jdGlvbiBmcm9tIGFub3RoZXIgbW9kdWxlLCB1cGRhdGUgdGhlIGltcG9ydHMgaW4KKyMgICBTRVRVUF9URU1QTEFURS4gIFVzZSBvbmx5IG1vZHVsZXMsIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucyBjb21wYXRpYmxlIHdpdGgKKyMgICBhbGwgdmVyc2lvbnM6IGNvZGVjcy5vcGVuIGluc3RlYWQgb2Ygb3BlbiwgUmF3Q29uZmlnUGFyc2VyLnJlYWRmcCBpbnN0ZWFkCisjICAgb2YgcmVhZCwgc3RhbmRhcmQgZXhjZXB0aW9ucyBpbnN0ZWFkIG9mIFBhY2thZ2luZypFcnJvciwgZXRjLgorIyAqIElmIHlvdSB1c2UgYSBmdW5jdGlvbiBmcm9tIHRoaXMgbW9kdWxlLCB1cGRhdGUgdGhlIHRlbXBsYXRlIGFuZAorIyAgIGdlbmVyYXRlX3NldHVwX3B5LgorIworIyB0ZXN0X3V0aWwgdGVzdHMgdGhpcyBmdW5jdGlvbiBhbmQgdGhlIGdlbmVyYXRlZCBzZXR1cC5weSwgYnV0IGRvZXMgbm90IHRlc3QKKyMgdGhhdCBpdCdzIGNvbXBhdGlibGUgd2l0aCBhbGwgUHl0aG9uIHZlcnNpb25zLgorCitkZWYgY2ZnX3RvX2FyZ3MocGF0aD0nc2V0dXAuY2ZnJyk6CisgICAgIiIiQ29tcGF0aWJpbGl0eSBoZWxwZXIgdG8gdXNlIHNldHVwLmNmZyBpbiBzZXR1cC5weS4KKworICAgIFRoaXMgZnVuY3Rpb25zIHVzZXMgYW4gZXhpc3Rpbmcgc2V0dXAuY2ZnIHRvIGdlbmVyYXRlIGEgZGljdGlvbm5hcnkgb2YKKyAgICBrZXl3b3JkcyB0aGF0IGNhbiBiZSB1c2VkIGJ5IGRpc3R1dGlscy5jb3JlLnNldHVwKCoqa3dhcmdzKS4gIEl0IGlzIHVzZWQKKyAgICBieSBnZW5lcmF0ZV9zZXR1cF9weS4KKworICAgICpmaWxlKiBpcyB0aGUgcGF0aCB0byB0aGUgc2V0dXAuY2ZnIGZpbGUuICBJZiBpdCBkb2Vzbid0IGV4aXN0LAorICAgIFBhY2thZ2luZ0ZpbGVFcnJvciBpcyByYWlzZWQuCisgICAgIiIiCisKKyAgICAjIFhYWCAqKiA9PSBuZWVkcyB0ZXN0aW5nCisgICAgRDFfRDJfU0VUVVBfQVJHUyA9IHsibmFtZSI6ICgibWV0YWRhdGEiLCksCisgICAgICAgICAgICAgICAgICAgICAgICAidmVyc2lvbiI6ICgibWV0YWRhdGEiLCksCisgICAgICAgICAgICAgICAgICAgICAgICAiYXV0aG9yIjogKCJtZXRhZGF0YSIsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJhdXRob3JfZW1haWwiOiAoIm1ldGFkYXRhIiwpLAorICAgICAgICAgICAgICAgICAgICAgICAgIm1haW50YWluZXIiOiAoIm1ldGFkYXRhIiwpLAorICAgICAgICAgICAgICAgICAgICAgICAgIm1haW50YWluZXJfZW1haWwiOiAoIm1ldGFkYXRhIiwpLAorICAgICAgICAgICAgICAgICAgICAgICAgInVybCI6ICgibWV0YWRhdGEiLCAiaG9tZV9wYWdlIiksCisgICAgICAgICAgICAgICAgICAgICAgICAiZGVzY3JpcHRpb24iOiAoIm1ldGFkYXRhIiwgInN1bW1hcnkiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJsb25nX2Rlc2NyaXB0aW9uIjogKCJtZXRhZGF0YSIsICJkZXNjcmlwdGlvbiIpLAorICAgICAgICAgICAgICAgICAgICAgICAgImRvd25sb2FkLXVybCI6ICgibWV0YWRhdGEiLCksCisgICAgICAgICAgICAgICAgICAgICAgICAiY2xhc3NpZmllcnMiOiAoIm1ldGFkYXRhIiwgImNsYXNzaWZpZXIiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJwbGF0Zm9ybXMiOiAoIm1ldGFkYXRhIiwgInBsYXRmb3JtIiksICAjICoqCisgICAgICAgICAgICAgICAgICAgICAgICAibGljZW5zZSI6ICgibWV0YWRhdGEiLCksCisgICAgICAgICAgICAgICAgICAgICAgICAicmVxdWlyZXMiOiAoIm1ldGFkYXRhIiwgInJlcXVpcmVzX2Rpc3QiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJwcm92aWRlcyI6ICgibWV0YWRhdGEiLCAicHJvdmlkZXNfZGlzdCIpLCAgIyAqKgorICAgICAgICAgICAgICAgICAgICAgICAgIm9ic29sZXRlcyI6ICgibWV0YWRhdGEiLCAib2Jzb2xldGVzX2Rpc3QiKSwgICMgKioKKyAgICAgICAgICAgICAgICAgICAgICAgICJwYWNrYWdlX2RpciI6ICgiZmlsZXMiLCAncGFja2FnZXNfcm9vdCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgInBhY2thZ2VzIjogKCJmaWxlcyIsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRzIjogKCJmaWxlcyIsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJweV9tb2R1bGVzIjogKCJmaWxlcyIsICJtb2R1bGVzIiksICAjICoqCisgICAgICAgICAgICAgICAgICAgICAgICB9CisKKyAgICBNVUxUSV9GSUVMRFMgPSAoImNsYXNzaWZpZXJzIiwKKyAgICAgICAgICAgICAgICAgICAgInBsYXRmb3JtcyIsCisgICAgICAgICAgICAgICAgICAgICJyZXF1aXJlcyIsCisgICAgICAgICAgICAgICAgICAgICJwcm92aWRlcyIsCisgICAgICAgICAgICAgICAgICAgICJvYnNvbGV0ZXMiLAorICAgICAgICAgICAgICAgICAgICAicGFja2FnZXMiLAorICAgICAgICAgICAgICAgICAgICAic2NyaXB0cyIsCisgICAgICAgICAgICAgICAgICAgICJweV9tb2R1bGVzIikKKworICAgIGRlZiBoYXNfZ2V0X29wdGlvbihjb25maWcsIHNlY3Rpb24sIG9wdGlvbik6CisgICAgICAgIGlmIGNvbmZpZy5oYXNfb3B0aW9uKHNlY3Rpb24sIG9wdGlvbik6CisgICAgICAgICAgICByZXR1cm4gY29uZmlnLmdldChzZWN0aW9uLCBvcHRpb24pCisgICAgICAgIGVsaWYgY29uZmlnLmhhc19vcHRpb24oc2VjdGlvbiwgb3B0aW9uLnJlcGxhY2UoJ18nLCAnLScpKToKKyAgICAgICAgICAgIHJldHVybiBjb25maWcuZ2V0KHNlY3Rpb24sIG9wdGlvbi5yZXBsYWNlKCdfJywgJy0nKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgIyBUaGUgcmVhbCBjb2RlIHN0YXJ0cyBoZXJlCisgICAgY29uZmlnID0gUmF3Q29uZmlnUGFyc2VyKCkKKyAgICBmID0gY29kZWNzLm9wZW4ocGF0aCwgZW5jb2Rpbmc9J3V0Zi04JykKKyAgICB0cnk6CisgICAgICAgIGNvbmZpZy5yZWFkZnAoZikKKyAgICBmaW5hbGx5OgorICAgICAgICBmLmNsb3NlKCkKKworICAgIGt3YXJncyA9IHt9CisgICAgZm9yIGFyZyBpbiBEMV9EMl9TRVRVUF9BUkdTOgorICAgICAgICBpZiBsZW4oRDFfRDJfU0VUVVBfQVJHU1thcmddKSA9PSAyOgorICAgICAgICAgICAgIyBUaGUgZGlzdHV0aWxzIGZpZWxkIG5hbWUgaXMgZGlmZmVyZW50IHRoYW4gcGFja2FnaW5nJ3MKKyAgICAgICAgICAgIHNlY3Rpb24sIG9wdGlvbiA9IEQxX0QyX1NFVFVQX0FSR1NbYXJnXQorCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIFRoZSBkaXN0dXRpbHMgZmllbGQgbmFtZSBpcyB0aGUgc2FtZSB0aGFudCBwYWNrYWdpbmcncworICAgICAgICAgICAgc2VjdGlvbiA9IEQxX0QyX1NFVFVQX0FSR1NbYXJnXVswXQorICAgICAgICAgICAgb3B0aW9uID0gYXJnCisKKyAgICAgICAgaW5fY2ZnX3ZhbHVlID0gaGFzX2dldF9vcHRpb24oY29uZmlnLCBzZWN0aW9uLCBvcHRpb24pCisgICAgICAgIGlmIG5vdCBpbl9jZmdfdmFsdWU6CisgICAgICAgICAgICAjIFRoZXJlIGlzIG5vIHN1Y2ggb3B0aW9uIGluIHRoZSBzZXR1cC5jZmcKKyAgICAgICAgICAgIGlmIGFyZyA9PSAnbG9uZ19kZXNjcmlwdGlvbic6CisgICAgICAgICAgICAgICAgZmlsZW5hbWVzID0gaGFzX2dldF9vcHRpb24oY29uZmlnLCBzZWN0aW9uLCAnZGVzY3JpcHRpb24tZmlsZScpCisgICAgICAgICAgICAgICAgaWYgZmlsZW5hbWVzOgorICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZXMgPSBzcGxpdF9tdWx0aWxpbmUoZmlsZW5hbWVzKQorICAgICAgICAgICAgICAgICAgICBpbl9jZmdfdmFsdWUgPSBbXQorICAgICAgICAgICAgICAgICAgICBmb3IgZmlsZW5hbWUgaW4gZmlsZW5hbWVzOgorICAgICAgICAgICAgICAgICAgICAgICAgZnAgPSBjb2RlY3Mub3BlbihmaWxlbmFtZSwgZW5jb2Rpbmc9J3V0Zi04JykKKyAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbl9jZmdfdmFsdWUuYXBwZW5kKGZwLnJlYWQoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnAuY2xvc2UoKQorICAgICAgICAgICAgICAgICAgICBpbl9jZmdfdmFsdWUgPSAnXG5cbicuam9pbihpbl9jZmdfdmFsdWUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgaWYgYXJnID09ICdwYWNrYWdlX2RpcicgYW5kIGluX2NmZ192YWx1ZToKKyAgICAgICAgICAgIGluX2NmZ192YWx1ZSA9IHsnJzogaW5fY2ZnX3ZhbHVlfQorCisgICAgICAgIGlmIGFyZyBpbiBNVUxUSV9GSUVMRFM6CisgICAgICAgICAgICAjIHN1cHBvcnQgbXVsdGlsaW5lIG9wdGlvbnMKKyAgICAgICAgICAgIGluX2NmZ192YWx1ZSA9IHNwbGl0X211bHRpbGluZShpbl9jZmdfdmFsdWUpCisKKyAgICAgICAga3dhcmdzW2FyZ10gPSBpbl9jZmdfdmFsdWUKKworICAgIHJldHVybiBrd2FyZ3MKKworCitTRVRVUF9URU1QTEFURSA9ICIiIlwKKyMgVGhpcyBzY3JpcHQgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IHBhY2thZ2luZworaW1wb3J0IGNvZGVjcworZnJvbSBkaXN0dXRpbHMuY29yZSBpbXBvcnQgc2V0dXAKK3RyeToKKyAgICBmcm9tIENvbmZpZ1BhcnNlciBpbXBvcnQgUmF3Q29uZmlnUGFyc2VyCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgZnJvbSBjb25maWdwYXJzZXIgaW1wb3J0IFJhd0NvbmZpZ1BhcnNlcgorCisKKyUoc3BsaXRfbXVsdGlsaW5lKXMKKworJShjZmdfdG9fYXJncylzCisKK3NldHVwKCoqY2ZnX3RvX2FyZ3MoKSkKKyIiIgorCisKK2RlZiBnZW5lcmF0ZV9zZXR1cF9weSgpOgorICAgICIiIkdlbmVyYXRlIGEgZGlzdHV0aWxzIGNvbXBhdGlibGUgc2V0dXAucHkgdXNpbmcgYW4gZXhpc3Rpbmcgc2V0dXAuY2ZnLgorCisgICAgUmFpc2VzIGEgUGFja2FnaW5nRmlsZUVycm9yIHdoZW4gYSBzZXR1cC5weSBhbHJlYWR5IGV4aXN0cy4KKyAgICAiIiIKKyAgICBpZiBvcy5wYXRoLmV4aXN0cygic2V0dXAucHkiKToKKyAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKCJhIHNldHVwLnB5IGZpbGUgYWxyZWFkeSBleGlzdHMiKQorCisgICAgc291cmNlID0gU0VUVVBfVEVNUExBVEUgJSB7J3NwbGl0X211bHRpbGluZSc6IGdldHNvdXJjZShzcGxpdF9tdWx0aWxpbmUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjZmdfdG9fYXJncyc6IGdldHNvdXJjZShjZmdfdG9fYXJncyl9CisgICAgd2l0aCBvcGVuKCJzZXR1cC5weSIsICJ3IiwgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZnA6CisgICAgICAgIGZwLndyaXRlKHNvdXJjZSkKKworCisjIFRha2VuIGZyb20gdGhlIHBpcCBwcm9qZWN0CisjIGh0dHBzOi8vZ2l0aHViLmNvbS9weXBhL3BpcC9ibG9iL21hc3Rlci9waXAvdXRpbC5weQorZGVmIGFzayhtZXNzYWdlLCBvcHRpb25zKToKKyAgICAiIiJQcm9tcHQgdGhlIHVzZXIgd2l0aCAqbWVzc2FnZSo7ICpvcHRpb25zKiBjb250YWlucyBhbGxvd2VkIHJlc3BvbnNlcy4iIiIKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICByZXNwb25zZSA9IGlucHV0KG1lc3NhZ2UpCisgICAgICAgIHJlc3BvbnNlID0gcmVzcG9uc2Uuc3RyaXAoKS5sb3dlcigpCisgICAgICAgIGlmIHJlc3BvbnNlIG5vdCBpbiBvcHRpb25zOgorICAgICAgICAgICAgcHJpbnQoJ2ludmFsaWQgcmVzcG9uc2U6JywgcmVwcihyZXNwb25zZSkpCisgICAgICAgICAgICBwcmludCgnY2hvb3NlIG9uZSBvZicsICcsICcuam9pbihyZXByKG8pIGZvciBvIGluIG9wdGlvbnMpKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlCisKKworZGVmIF9wYXJzZV9yZWNvcmRfZmlsZShyZWNvcmRfZmlsZSk6CisgICAgZGlzdGluZm8sIGV4dHJhX21ldGFkYXRhLCBpbnN0YWxsZWQgPSAoe30sIFtdLCBbXSkKKyAgICB3aXRoIG9wZW4ocmVjb3JkX2ZpbGUsICdyJykgYXMgcmZpbGU6CisgICAgICAgIGZvciBwYXRoIGluIHJmaWxlOgorICAgICAgICAgICAgcGF0aCA9IHBhdGguc3RyaXAoKQorICAgICAgICAgICAgaWYgcGF0aC5lbmRzd2l0aCgnZWdnLWluZm8nKSBhbmQgb3MucGF0aC5pc2ZpbGUocGF0aCk6CisgICAgICAgICAgICAgICAgZGlzdGluZm9fZGlyID0gcGF0aC5yZXBsYWNlKCdlZ2ctaW5mbycsICdkaXN0LWluZm8nKQorICAgICAgICAgICAgICAgIG1ldGFkYXRhID0gcGF0aAorICAgICAgICAgICAgICAgIGVnZ2luZm8gPSBwYXRoCisgICAgICAgICAgICBlbGlmIHBhdGguZW5kc3dpdGgoJ2VnZy1pbmZvJykgYW5kIG9zLnBhdGguaXNkaXIocGF0aCk6CisgICAgICAgICAgICAgICAgZGlzdGluZm9fZGlyID0gcGF0aC5yZXBsYWNlKCdlZ2ctaW5mbycsICdkaXN0LWluZm8nKQorICAgICAgICAgICAgICAgIGVnZ2luZm8gPSBwYXRoCisgICAgICAgICAgICAgICAgZm9yIG1ldGFkYXRhX2ZpbGUgaW4gb3MubGlzdGRpcihwYXRoKToKKyAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGFfZnBhdGggPSBvcy5wYXRoLmpvaW4ocGF0aCwgbWV0YWRhdGFfZmlsZSkKKyAgICAgICAgICAgICAgICAgICAgaWYgbWV0YWRhdGFfZmlsZSA9PSAnUEtHLUlORk8nOgorICAgICAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGEgPSBtZXRhZGF0YV9mcGF0aAorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFfbWV0YWRhdGEuYXBwZW5kKG1ldGFkYXRhX2ZwYXRoKQorICAgICAgICAgICAgZWxpZiAnZWdnLWluZm8nIGluIHBhdGggYW5kIG9zLnBhdGguaXNmaWxlKHBhdGgpOgorICAgICAgICAgICAgICAgICMgc2tpcCBleHRyYSBtZXRhZGF0YSBmaWxlcworICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGluc3RhbGxlZC5hcHBlbmQocGF0aCkKKworICAgIGRpc3RpbmZvWydlZ2dpbmZvJ10gPSBlZ2dpbmZvCisgICAgZGlzdGluZm9bJ21ldGFkYXRhJ10gPSBtZXRhZGF0YQorICAgIGRpc3RpbmZvWydkaXN0aW5mb19kaXInXSA9IGRpc3RpbmZvX2RpcgorICAgIGRpc3RpbmZvWydpbnN0YWxsZXJfcGF0aCddID0gb3MucGF0aC5qb2luKGRpc3RpbmZvX2RpciwgJ0lOU1RBTExFUicpCisgICAgZGlzdGluZm9bJ21ldGFkYXRhX3BhdGgnXSA9IG9zLnBhdGguam9pbihkaXN0aW5mb19kaXIsICdNRVRBREFUQScpCisgICAgZGlzdGluZm9bJ3JlY29yZF9wYXRoJ10gPSBvcy5wYXRoLmpvaW4oZGlzdGluZm9fZGlyLCAnUkVDT1JEJykKKyAgICBkaXN0aW5mb1sncmVxdWVzdGVkX3BhdGgnXSA9IG9zLnBhdGguam9pbihkaXN0aW5mb19kaXIsICdSRVFVRVNURUQnKQorICAgIGluc3RhbGxlZC5leHRlbmQoW2Rpc3RpbmZvWydpbnN0YWxsZXJfcGF0aCddLCBkaXN0aW5mb1snbWV0YWRhdGFfcGF0aCddXSkKKyAgICBkaXN0aW5mb1snaW5zdGFsbGVkJ10gPSBpbnN0YWxsZWQKKyAgICBkaXN0aW5mb1snZXh0cmFfbWV0YWRhdGEnXSA9IGV4dHJhX21ldGFkYXRhCisgICAgcmV0dXJuIGRpc3RpbmZvCisKKworZGVmIF93cml0ZV9yZWNvcmRfZmlsZShyZWNvcmRfcGF0aCwgaW5zdGFsbGVkX2ZpbGVzKToKKyAgICB3aXRoIG9wZW4ocmVjb3JkX3BhdGgsICd3JywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZjoKKyAgICAgICAgd3JpdGVyID0gY3N2LndyaXRlcihmLCBkZWxpbWl0ZXI9JywnLCBsaW5ldGVybWluYXRvcj1vcy5saW5lc2VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1b3RlY2hhcj0nIicpCisKKyAgICAgICAgZm9yIGZwYXRoIGluIGluc3RhbGxlZF9maWxlczoKKyAgICAgICAgICAgIGlmIGZwYXRoLmVuZHN3aXRoKCcucHljJykgb3IgZnBhdGguZW5kc3dpdGgoJy5weW8nKToKKyAgICAgICAgICAgICAgICAjIGRvIG5vdCBwdXQgc2l6ZSBhbmQgbWQ1IGhhc2gsIGFzIGluIFBFUC0zNzYKKyAgICAgICAgICAgICAgICB3cml0ZXIud3JpdGVyb3coKGZwYXRoLCAnJywgJycpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBoYXNoID0gaGFzaGxpYi5tZDUoKQorICAgICAgICAgICAgICAgIHdpdGggb3BlbihmcGF0aCwgJ3JiJykgYXMgZnA6CisgICAgICAgICAgICAgICAgICAgIGhhc2gudXBkYXRlKGZwLnJlYWQoKSkKKyAgICAgICAgICAgICAgICBtZDVzdW0gPSBoYXNoLmhleGRpZ2VzdCgpCisgICAgICAgICAgICAgICAgc2l6ZSA9IG9zLnBhdGguZ2V0c2l6ZShmcGF0aCkKKyAgICAgICAgICAgICAgICB3cml0ZXIud3JpdGVyb3coKGZwYXRoLCBtZDVzdW0sIHNpemUpKQorCisgICAgICAgICMgYWRkIHRoZSBSRUNPUkQgZmlsZSBpdHNlbGYKKyAgICAgICAgd3JpdGVyLndyaXRlcm93KChyZWNvcmRfcGF0aCwgJycsICcnKSkKKyAgICByZXR1cm4gcmVjb3JkX3BhdGgKKworCitkZWYgZWdnaW5mb190b19kaXN0aW5mbyhyZWNvcmRfZmlsZSwgaW5zdGFsbGVyPV9ERUZBVUxUX0lOU1RBTExFUiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZD1GYWxzZSwgcmVtb3ZlX2VnZ2luZm89RmFsc2UpOgorICAgICIiIkNyZWF0ZSBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgcmVxdWlyZWQgZm9yIFBFUCAzNzYKKworICAgIDpwYXJhbSByZWNvcmRfZmlsZTogcGF0aCB0byBSRUNPUkQgZmlsZSBhcyBwcm9kdWNlZCBieSBzZXR1cC5weSAtLXJlY29yZAorICAgIDpwYXJhbSBpbnN0YWxsZXI6IGluc3RhbGxlciBuYW1lCisgICAgOnBhcmFtIHJlcXVlc3RlZDogVHJ1ZSBpZiBub3QgaW5zdGFsbGVkIGFzIGEgZGVwZW5kZW5jeQorICAgIDpwYXJhbSByZW1vdmVfZWdnaW5mbzogZGVsZXRlIGVnZ2luZm8gZGlyPworICAgICIiIgorICAgIGRpc3RpbmZvID0gX3BhcnNlX3JlY29yZF9maWxlKHJlY29yZF9maWxlKQorICAgIGRpc3RpbmZvX2RpciA9IGRpc3RpbmZvWydkaXN0aW5mb19kaXInXQorICAgIGlmIG9zLnBhdGguaXNkaXIoZGlzdGluZm9fZGlyKSBhbmQgbm90IG9zLnBhdGguaXNsaW5rKGRpc3RpbmZvX2Rpcik6CisgICAgICAgIHNodXRpbC5ybXRyZWUoZGlzdGluZm9fZGlyKQorICAgIGVsaWYgb3MucGF0aC5leGlzdHMoZGlzdGluZm9fZGlyKToKKyAgICAgICAgb3MudW5saW5rKGRpc3RpbmZvX2RpcikKKworICAgIG9zLm1ha2VkaXJzKGRpc3RpbmZvX2RpcikKKworICAgICMgY29weSBzZXR1cHRvb2xzIGV4dHJhIG1ldGFkYXRhIGZpbGVzCisgICAgaWYgZGlzdGluZm9bJ2V4dHJhX21ldGFkYXRhJ106CisgICAgICAgIGZvciBwYXRoIGluIGRpc3RpbmZvWydleHRyYV9tZXRhZGF0YSddOgorICAgICAgICAgICAgc2h1dGlsLmNvcHkyKHBhdGgsIGRpc3RpbmZvX2RpcikKKyAgICAgICAgICAgIG5ld19wYXRoID0gcGF0aC5yZXBsYWNlKCdlZ2ctaW5mbycsICdkaXN0LWluZm8nKQorICAgICAgICAgICAgZGlzdGluZm9bJ2luc3RhbGxlZCddLmFwcGVuZChuZXdfcGF0aCkKKworICAgIG1ldGFkYXRhX3BhdGggPSBkaXN0aW5mb1snbWV0YWRhdGFfcGF0aCddCisgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgbWV0YWRhdGFfcGF0aCkKKyAgICBzaHV0aWwuY29weTIoZGlzdGluZm9bJ21ldGFkYXRhJ10sIG1ldGFkYXRhX3BhdGgpCisKKyAgICBpbnN0YWxsZXJfcGF0aCA9IGRpc3RpbmZvWydpbnN0YWxsZXJfcGF0aCddCisgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgaW5zdGFsbGVyX3BhdGgpCisgICAgd2l0aCBvcGVuKGluc3RhbGxlcl9wYXRoLCAndycpIGFzIGY6CisgICAgICAgIGYud3JpdGUoaW5zdGFsbGVyKQorCisgICAgaWYgcmVxdWVzdGVkOgorICAgICAgICByZXF1ZXN0ZWRfcGF0aCA9IGRpc3RpbmZvWydyZXF1ZXN0ZWRfcGF0aCddCisgICAgICAgIGxvZ2dlci5pbmZvKCdjcmVhdGluZyAlcycsIHJlcXVlc3RlZF9wYXRoKQorICAgICAgICBvcGVuKHJlcXVlc3RlZF9wYXRoLCAnd2InKS5jbG9zZSgpCisgICAgICAgIGRpc3RpbmZvWydpbnN0YWxsZWQnXS5hcHBlbmQocmVxdWVzdGVkX3BhdGgpCisKKyAgICByZWNvcmRfcGF0aCA9IGRpc3RpbmZvWydyZWNvcmRfcGF0aCddCisgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgcmVjb3JkX3BhdGgpCisgICAgX3dyaXRlX3JlY29yZF9maWxlKHJlY29yZF9wYXRoLCBkaXN0aW5mb1snaW5zdGFsbGVkJ10pCisKKyAgICBpZiByZW1vdmVfZWdnaW5mbzoKKyAgICAgICAgZWdnaW5mbyA9IGRpc3RpbmZvWydlZ2dpbmZvJ10KKyAgICAgICAgbG9nZ2VyLmluZm8oJ3JlbW92aW5nICVzJywgZWdnaW5mbykKKyAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUoZWdnaW5mbyk6CisgICAgICAgICAgICBvcy5yZW1vdmUoZWdnaW5mbykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoZWdnaW5mbykKKworCitkZWYgX2hhc19lZ2dfaW5mbyhzcmNkaXIpOgorICAgIGlmIG9zLnBhdGguaXNkaXIoc3JjZGlyKToKKyAgICAgICAgZm9yIGl0ZW0gaW4gb3MubGlzdGRpcihzcmNkaXIpOgorICAgICAgICAgICAgZnVsbF9wYXRoID0gb3MucGF0aC5qb2luKHNyY2RpciwgaXRlbSkKKyAgICAgICAgICAgIGlmIGl0ZW0uZW5kc3dpdGgoJy5lZ2ctaW5mbycpIGFuZCBvcy5wYXRoLmlzZGlyKGZ1bGxfcGF0aCk6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJGb3VuZCBlZ2ctaW5mbyBkaXJlY3RvcnkuIikKKyAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgIGxvZ2dlci5kZWJ1ZygiTm8gZWdnLWluZm8gZGlyZWN0b3J5IGZvdW5kLiIpCisgICAgcmV0dXJuIEZhbHNlCisKKworZGVmIF9oYXNfc2V0dXB0b29sc190ZXh0KHNldHVwX3B5KToKKyAgICByZXR1cm4gX2hhc190ZXh0KHNldHVwX3B5LCAnc2V0dXB0b29scycpCisKKworZGVmIF9oYXNfZGlzdHV0aWxzX3RleHQoc2V0dXBfcHkpOgorICAgIHJldHVybiBfaGFzX3RleHQoc2V0dXBfcHksICdkaXN0dXRpbHMnKQorCisKK2RlZiBfaGFzX3RleHQoc2V0dXBfcHksIGluc3RhbGxlcik6CisgICAgaW5zdGFsbGVyX3BhdHRlcm4gPSByZS5jb21waWxlKCdpbXBvcnQgezB9fGZyb20gezB9Jy5mb3JtYXQoaW5zdGFsbGVyKSkKKyAgICB3aXRoIG9wZW4oc2V0dXBfcHksICdyJywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgc2V0dXA6CisgICAgICAgIGZvciBsaW5lIGluIHNldHVwOgorICAgICAgICAgICAgaWYgcmUuc2VhcmNoKGluc3RhbGxlcl9wYXR0ZXJuLCBsaW5lKToKKyAgICAgICAgICAgICAgICBsb2dnZXIuZGVidWcoIkZvdW5kICVzIHRleHQgaW4gc2V0dXAucHkuIiwgaW5zdGFsbGVyKQorICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgbG9nZ2VyLmRlYnVnKCJObyAlcyB0ZXh0IGZvdW5kIGluIHNldHVwLnB5LiIsIGluc3RhbGxlcikKKyAgICByZXR1cm4gRmFsc2UKKworCitkZWYgX2hhc19yZXF1aXJlZF9tZXRhZGF0YShzZXR1cF9jZmcpOgorICAgIGNvbmZpZyA9IFJhd0NvbmZpZ1BhcnNlcigpCisgICAgY29uZmlnLnJlYWQoW3NldHVwX2NmZ10sIGVuY29kaW5nPSd1dGY4JykKKyAgICByZXR1cm4gKGNvbmZpZy5oYXNfc2VjdGlvbignbWV0YWRhdGEnKSBhbmQKKyAgICAgICAgICAgICduYW1lJyBpbiBjb25maWcub3B0aW9ucygnbWV0YWRhdGEnKSBhbmQKKyAgICAgICAgICAgICd2ZXJzaW9uJyBpbiBjb25maWcub3B0aW9ucygnbWV0YWRhdGEnKSkKKworCitkZWYgX2hhc19wa2dfaW5mbyhzcmNkaXIpOgorICAgIHBrZ19pbmZvID0gb3MucGF0aC5qb2luKHNyY2RpciwgJ1BLRy1JTkZPJykKKyAgICBoYXNfcGtnX2luZm8gPSBvcy5wYXRoLmlzZmlsZShwa2dfaW5mbykKKyAgICBpZiBoYXNfcGtnX2luZm86CisgICAgICAgIGxvZ2dlci5kZWJ1ZygiUEtHLUlORk8gZmlsZSBmb3VuZC4iKQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dlci5kZWJ1ZygiTm8gUEtHLUlORk8gZmlsZSBmb3VuZC4iKQorICAgIHJldHVybiBoYXNfcGtnX2luZm8KKworCitkZWYgX2hhc19zZXR1cF9weShzcmNkaXIpOgorICAgIHNldHVwX3B5ID0gb3MucGF0aC5qb2luKHNyY2RpciwgJ3NldHVwLnB5JykKKyAgICBpZiBvcy5wYXRoLmlzZmlsZShzZXR1cF9weSk6CisgICAgICAgIGxvZ2dlci5kZWJ1Zygnc2V0dXAucHkgZmlsZSBmb3VuZC4nKQorICAgICAgICByZXR1cm4gVHJ1ZQorICAgIHJldHVybiBGYWxzZQorCisKK2RlZiBfaGFzX3NldHVwX2NmZyhzcmNkaXIpOgorICAgIHNldHVwX2NmZyA9IG9zLnBhdGguam9pbihzcmNkaXIsICdzZXR1cC5jZmcnKQorICAgIGlmIG9zLnBhdGguaXNmaWxlKHNldHVwX2NmZyk6CisgICAgICAgIGxvZ2dlci5kZWJ1Zygnc2V0dXAuY2ZnIGZpbGUgZm91bmQuJykKKyAgICAgICAgcmV0dXJuIFRydWUKKyAgICBsb2dnZXIuZGVidWcoIk5vIHNldHVwLmNmZyBmaWxlIGZvdW5kLiIpCisgICAgcmV0dXJuIEZhbHNlCisKKworZGVmIGlzX3NldHVwdG9vbHMocGF0aCk6CisgICAgIiIiQ2hlY2sgaWYgdGhlIHByb2plY3QgaXMgYmFzZWQgb24gc2V0dXB0b29scy4KKworICAgIDpwYXJhbSBwYXRoOiBwYXRoIHRvIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbmluZyBhIHNldHVwLnB5IHNjcmlwdC4KKworICAgIFJldHVybiBUcnVlIGlmIHRoZSBwcm9qZWN0IHJlcXVpcmVzIHNldHVwdG9vbHMgdG8gaW5zdGFsbCwgZWxzZSBGYWxzZS4KKyAgICAiIiIKKyAgICBzcmNkaXIgPSBvcy5wYXRoLmFic3BhdGgocGF0aCkKKyAgICBzZXR1cF9weSA9IG9zLnBhdGguam9pbihzcmNkaXIsICdzZXR1cC5weScpCisKKyAgICByZXR1cm4gX2hhc19zZXR1cF9weShzcmNkaXIpIGFuZCAoX2hhc19lZ2dfaW5mbyhzcmNkaXIpIG9yCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9oYXNfc2V0dXB0b29sc190ZXh0KHNldHVwX3B5KSkKKworCitkZWYgaXNfZGlzdHV0aWxzKHBhdGgpOgorICAgICIiIkNoZWNrIGlmIHRoZSBwcm9qZWN0IGlzIGJhc2VkIG9uIGRpc3R1dGlscy4KKworICAgIDpwYXJhbSBwYXRoOiBwYXRoIHRvIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbmluZyBhIHNldHVwLnB5IHNjcmlwdC4KKworICAgIFJldHVybiBUcnVlIGlmIHRoZSBwcm9qZWN0IHJlcXVpcmVzIGRpc3R1dGlscyB0byBpbnN0YWxsLCBlbHNlIEZhbHNlLgorICAgICIiIgorICAgIHNyY2RpciA9IG9zLnBhdGguYWJzcGF0aChwYXRoKQorICAgIHNldHVwX3B5ID0gb3MucGF0aC5qb2luKHNyY2RpciwgJ3NldHVwLnB5JykKKworICAgIHJldHVybiBfaGFzX3NldHVwX3B5KHNyY2RpcikgYW5kIChfaGFzX3BrZ19pbmZvKHNyY2Rpcikgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2hhc19kaXN0dXRpbHNfdGV4dChzZXR1cF9weSkpCisKKworZGVmIGlzX3BhY2thZ2luZyhwYXRoKToKKyAgICAiIiJDaGVjayBpZiB0aGUgcHJvamVjdCBpcyBiYXNlZCBvbiBwYWNrYWdpbmcKKworICAgIDpwYXJhbSBwYXRoOiBwYXRoIHRvIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbmluZyBhIHNldHVwLmNmZyBmaWxlLgorCisgICAgUmV0dXJuIFRydWUgaWYgdGhlIHByb2plY3QgaGFzIGEgdmFsaWQgc2V0dXAuY2ZnLCBlbHNlIEZhbHNlLgorICAgICIiIgorICAgIHNyY2RpciA9IG9zLnBhdGguYWJzcGF0aChwYXRoKQorICAgIHNldHVwX2NmZyA9IG9zLnBhdGguam9pbihzcmNkaXIsICdzZXR1cC5jZmcnKQorCisgICAgcmV0dXJuIF9oYXNfc2V0dXBfY2ZnKHNyY2RpcikgYW5kIF9oYXNfcmVxdWlyZWRfbWV0YWRhdGEoc2V0dXBfY2ZnKQorCisKK2RlZiBnZXRfaW5zdGFsbF9tZXRob2QocGF0aCk6CisgICAgIiIiQ2hlY2sgaWYgdGhlIHByb2plY3QgaXMgYmFzZWQgb24gcGFja2FnaW5nLCBzZXR1cHRvb2xzLCBvciBkaXN0dXRpbHMKKworICAgIDpwYXJhbSBwYXRoOiBwYXRoIHRvIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbmluZyBhIHNldHVwLmNmZyBmaWxlLAorICAgICAgICAgICAgICAgICBvciBzZXR1cC5weS4KKworICAgIFJldHVybnMgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBiZXN0IGluc3RhbGwgbWV0aG9kIHRvIHVzZS4KKyAgICAiIiIKKyAgICBpZiBpc19wYWNrYWdpbmcocGF0aCk6CisgICAgICAgIHJldHVybiAicGFja2FnaW5nIgorICAgIGVsaWYgaXNfc2V0dXB0b29scyhwYXRoKToKKyAgICAgICAgcmV0dXJuICJzZXR1cHRvb2xzIgorICAgIGVsaWYgaXNfZGlzdHV0aWxzKHBhdGgpOgorICAgICAgICByZXR1cm4gImRpc3R1dGlscyIKKyAgICBlbHNlOgorICAgICAgICByYWlzZSBJbnN0YWxsYXRpb25FeGNlcHRpb24oJ0Nhbm5vdCBkZXRlY3QgaW5zdGFsbCBtZXRob2QnKQorCisKKyMgWFhYIHRvIGJlIHJlcGxhY2VkIGJ5IHNodXRpbC5jb3B5dHJlZQorZGVmIGNvcHlfdHJlZShzcmMsIGRzdCwgcHJlc2VydmVfbW9kZT1UcnVlLCBwcmVzZXJ2ZV90aW1lcz1UcnVlLAorICAgICAgICAgICAgICBwcmVzZXJ2ZV9zeW1saW5rcz1GYWxzZSwgdXBkYXRlPUZhbHNlLCBkcnlfcnVuPUZhbHNlKToKKyAgICAjIEZJWE1FIHVzZSBvZiB0aGlzIGZ1bmN0aW9uIGlzIHdoeSB3ZSBnZXQgc3B1cmlvdXMgbG9nZ2luZyBtZXNzYWdlIG9uCisgICAgIyBzdGRvdXQgd2hlbiB0ZXN0cyBydW47IGtpbGwgYW5kIHJlcGxhY2UgYnkgc2h1dGlsIQorICAgIGZyb20gZGlzdHV0aWxzLmZpbGVfdXRpbCBpbXBvcnQgY29weV9maWxlCisKKyAgICBpZiBub3QgZHJ5X3J1biBhbmQgbm90IG9zLnBhdGguaXNkaXIoc3JjKToKKyAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKAorICAgICAgICAgICAgICAiY2Fubm90IGNvcHkgdHJlZSAnJXMnOiBub3QgYSBkaXJlY3RvcnkiICUgc3JjKQorICAgIHRyeToKKyAgICAgICAgbmFtZXMgPSBvcy5saXN0ZGlyKHNyYykKKyAgICBleGNlcHQgb3MuZXJyb3IgYXMgZToKKyAgICAgICAgZXJyc3RyID0gZVsxXQorICAgICAgICBpZiBkcnlfcnVuOgorICAgICAgICAgICAgbmFtZXMgPSBbXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKAorICAgICAgICAgICAgICAgICAgImVycm9yIGxpc3RpbmcgZmlsZXMgaW4gJyVzJzogJXMiICUgKHNyYywgZXJyc3RyKSkKKworICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICBfbWtwYXRoKGRzdCkKKworICAgIG91dHB1dHMgPSBbXQorCisgICAgZm9yIG4gaW4gbmFtZXM6CisgICAgICAgIHNyY19uYW1lID0gb3MucGF0aC5qb2luKHNyYywgbikKKyAgICAgICAgZHN0X25hbWUgPSBvcy5wYXRoLmpvaW4oZHN0LCBuKQorCisgICAgICAgIGlmIHByZXNlcnZlX3N5bWxpbmtzIGFuZCBvcy5wYXRoLmlzbGluayhzcmNfbmFtZSk6CisgICAgICAgICAgICBsaW5rX2Rlc3QgPSBvcy5yZWFkbGluayhzcmNfbmFtZSkKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJsaW5raW5nICVzIC0+ICVzIiwgZHN0X25hbWUsIGxpbmtfZGVzdCkKKyAgICAgICAgICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICAgICAgICAgIG9zLnN5bWxpbmsobGlua19kZXN0LCBkc3RfbmFtZSkKKyAgICAgICAgICAgIG91dHB1dHMuYXBwZW5kKGRzdF9uYW1lKQorCisgICAgICAgIGVsaWYgb3MucGF0aC5pc2RpcihzcmNfbmFtZSk6CisgICAgICAgICAgICBvdXRwdXRzLmV4dGVuZCgKKyAgICAgICAgICAgICAgICBjb3B5X3RyZWUoc3JjX25hbWUsIGRzdF9uYW1lLCBwcmVzZXJ2ZV9tb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVzZXJ2ZV90aW1lcywgcHJlc2VydmVfc3ltbGlua3MsIHVwZGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZHJ5X3J1bj1kcnlfcnVuKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGNvcHlfZmlsZShzcmNfbmFtZSwgZHN0X25hbWUsIHByZXNlcnZlX21vZGUsCisgICAgICAgICAgICAgICAgICAgICAgcHJlc2VydmVfdGltZXMsIHVwZGF0ZSwgZHJ5X3J1bj1kcnlfcnVuKQorICAgICAgICAgICAgb3V0cHV0cy5hcHBlbmQoZHN0X25hbWUpCisKKyAgICByZXR1cm4gb3V0cHV0cworCisjIGNhY2hlIGZvciBieSBta3BhdGgoKSAtLSBpbiBhZGRpdGlvbiB0byBjaGVhcGVuaW5nIHJlZHVuZGFudCBjYWxscywKKyMgZWxpbWluYXRlcyByZWR1bmRhbnQgImNyZWF0aW5nIC9mb28vYmFyL2JheiIgbWVzc2FnZXMgaW4gZHJ5LXJ1biBtb2RlCitfcGF0aF9jcmVhdGVkID0gc2V0KCkKKworCisjIEkgZG9uJ3QgdXNlIG9zLm1ha2VkaXJzIGJlY2F1c2UgYSkgaXQncyBuZXcgdG8gUHl0aG9uIDEuNS4yLCBhbmQKKyMgYikgaXQgYmxvd3MgdXAgaWYgdGhlIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyAoSSB3YW50IHRvIHNpbGVudGx5CisjIHN1Y2NlZWQgaW4gdGhhdCBjYXNlKS4KK2RlZiBfbWtwYXRoKG5hbWUsIG1vZGU9MG83NzcsIGRyeV9ydW49RmFsc2UpOgorICAgICMgRGV0ZWN0IGEgY29tbW9uIGJ1ZyAtLSBuYW1lIGlzIE5vbmUKKyAgICBpZiBub3QgaXNpbnN0YW5jZShuYW1lLCBzdHIpOgorICAgICAgICByYWlzZSBQYWNrYWdpbmdJbnRlcm5hbEVycm9yKAorICAgICAgICAgICAgICAibWtwYXRoOiAnbmFtZScgbXVzdCBiZSBhIHN0cmluZyAoZ290ICVyKSIgJSAobmFtZSwpKQorCisgICAgIyBYWFggd2hhdCdzIHRoZSBiZXR0ZXIgd2F5IHRvIGhhbmRsZSB2ZXJib3NpdHk/IHByaW50IGFzIHdlIGNyZWF0ZQorICAgICMgZWFjaCBkaXJlY3RvcnkgaW4gdGhlIHBhdGggKHRoZSBjdXJyZW50IGJlaGF2aW91ciksIG9yIG9ubHkgYW5ub3VuY2UKKyAgICAjIHRoZSBjcmVhdGlvbiBvZiB0aGUgd2hvbGUgcGF0aD8gKHF1aXRlIGVhc3kgdG8gZG8gdGhlIGxhdHRlciBzaW5jZQorICAgICMgd2UncmUgbm90IHVzaW5nIGEgcmVjdXJzaXZlIGFsZ29yaXRobSkKKworICAgIG5hbWUgPSBvcy5wYXRoLm5vcm1wYXRoKG5hbWUpCisgICAgY3JlYXRlZF9kaXJzID0gW10KKyAgICBpZiBvcy5wYXRoLmlzZGlyKG5hbWUpIG9yIG5hbWUgPT0gJyc6CisgICAgICAgIHJldHVybiBjcmVhdGVkX2RpcnMKKyAgICBpZiBvcy5wYXRoLmFic3BhdGgobmFtZSkgaW4gX3BhdGhfY3JlYXRlZDoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZWRfZGlycworCisgICAgaGVhZCwgdGFpbCA9IG9zLnBhdGguc3BsaXQobmFtZSkKKyAgICB0YWlscyA9IFt0YWlsXSAgICAgICAgICAgICAgICAgICAgICAjIHN0YWNrIG9mIGxvbmUgZGlycyB0byBjcmVhdGUKKworICAgIHdoaWxlIGhlYWQgYW5kIHRhaWwgYW5kIG5vdCBvcy5wYXRoLmlzZGlyKGhlYWQpOgorICAgICAgICBoZWFkLCB0YWlsID0gb3MucGF0aC5zcGxpdChoZWFkKQorICAgICAgICB0YWlscy5pbnNlcnQoMCwgdGFpbCkgICAgICAgICAgIyBwdXNoIG5leHQgaGlnaGVyIGRpciBvbnRvIHN0YWNrCisKKyAgICAjIG5vdyAnaGVhZCcgY29udGFpbnMgdGhlIGRlZXBlc3QgZGlyZWN0b3J5IHRoYXQgYWxyZWFkeSBleGlzdHMKKyAgICAjICh0aGF0IGlzLCB0aGUgY2hpbGQgb2YgJ2hlYWQnIGluICduYW1lJyBpcyB0aGUgaGlnaGVzdCBkaXJlY3RvcnkKKyAgICAjIHRoYXQgZG9lcyAqbm90KiBleGlzdCkKKyAgICBmb3IgZCBpbiB0YWlsczoKKyAgICAgICAgaGVhZCA9IG9zLnBhdGguam9pbihoZWFkLCBkKQorICAgICAgICBhYnNfaGVhZCA9IG9zLnBhdGguYWJzcGF0aChoZWFkKQorCisgICAgICAgIGlmIGFic19oZWFkIGluIF9wYXRoX2NyZWF0ZWQ6CisgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgIGxvZ2dlci5pbmZvKCJjcmVhdGluZyAlcyIsIGhlYWQpCisgICAgICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIG9zLm1rZGlyKGhlYWQsIG1vZGUpCisgICAgICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBleGM6CisgICAgICAgICAgICAgICAgaWYgbm90IChleGMuZXJybm8gPT0gZXJybm8uRUVYSVNUIGFuZCBvcy5wYXRoLmlzZGlyKGhlYWQpKToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAiY291bGQgbm90IGNyZWF0ZSAnJXMnOiAlcyIgJSAoaGVhZCwgZXhjLmFyZ3NbLTFdKSkKKyAgICAgICAgICAgIGNyZWF0ZWRfZGlycy5hcHBlbmQoaGVhZCkKKworICAgICAgICBfcGF0aF9jcmVhdGVkLmFkZChhYnNfaGVhZCkKKyAgICByZXR1cm4gY3JlYXRlZF9kaXJzCisKKworZGVmIGVuY29kZV9tdWx0aXBhcnQoZmllbGRzLCBmaWxlcywgYm91bmRhcnk9Tm9uZSk6CisgICAgIiIiUHJlcGFyZSBhIG11bHRpcGFydCBIVFRQIHJlcXVlc3QuCisKKyAgICAqZmllbGRzKiBpcyBhIHNlcXVlbmNlIG9mIChuYW1lOiBzdHIsIHZhbHVlOiBzdHIpIGVsZW1lbnRzIGZvciByZWd1bGFyCisgICAgZm9ybSBmaWVsZHMsICpmaWxlcyogaXMgYSBzZXF1ZW5jZSBvZiAobmFtZTogc3RyLCBmaWxlbmFtZTogc3RyLCB2YWx1ZToKKyAgICBieXRlcykgZWxlbWVudHMgZm9yIGRhdGEgdG8gYmUgdXBsb2FkZWQgYXMgZmlsZXMuCisKKyAgICBSZXR1cm5zIChjb250ZW50X3R5cGU6IGJ5dGVzLCBib2R5OiBieXRlcykgcmVhZHkgZm9yIGh0dHAuY2xpZW50LkhUVFAuCisgICAgIiIiCisgICAgIyBUYWtlbiBmcm9tIGh0dHA6Ly9jb2RlLmFjdGl2ZXN0YXRlLmNvbS9yZWNpcGVzLzE0NjMwNgorCisgICAgaWYgYm91bmRhcnkgaXMgTm9uZToKKyAgICAgICAgYm91bmRhcnkgPSBiJy0tLS0tLS0tLS0tLS0tR0hTS0ZKRExHRFM3NTQzRkpLTEZIUkU3NTY0Mjc1Njc0MzI1NCcKKyAgICBlbGlmIG5vdCBpc2luc3RhbmNlKGJvdW5kYXJ5LCBieXRlcyk6CisgICAgICAgIHJhaXNlIFR5cGVFcnJvcignYm91bmRhcnkgbXVzdCBiZSBieXRlcywgbm90ICVyJyAlIHR5cGUoYm91bmRhcnkpKQorCisgICAgbCA9IFtdCisgICAgZm9yIGtleSwgdmFsdWVzIGluIGZpZWxkczoKKyAgICAgICAgIyBoYW5kbGUgbXVsdGlwbGUgZW50cmllcyBmb3IgdGhlIHNhbWUgbmFtZQorICAgICAgICBpZiBub3QgaXNpbnN0YW5jZSh2YWx1ZXMsICh0dXBsZSwgbGlzdCkpOgorICAgICAgICAgICAgdmFsdWVzID0gW3ZhbHVlc10KKworICAgICAgICBmb3IgdmFsdWUgaW4gdmFsdWVzOgorICAgICAgICAgICAgbC5leHRlbmQoKAorICAgICAgICAgICAgICAgIGInLS0nICsgYm91bmRhcnksCisgICAgICAgICAgICAgICAgKCdDb250ZW50LURpc3Bvc2l0aW9uOiBmb3JtLWRhdGE7IG5hbWU9IiVzIicgJQorICAgICAgICAgICAgICAgICBrZXkpLmVuY29kZSgndXRmLTgnKSwKKyAgICAgICAgICAgICAgICBiJycsCisgICAgICAgICAgICAgICAgdmFsdWUuZW5jb2RlKCd1dGYtOCcpKSkKKworICAgIGZvciBrZXksIGZpbGVuYW1lLCB2YWx1ZSBpbiBmaWxlczoKKyAgICAgICAgbC5leHRlbmQoKAorICAgICAgICAgICAgYictLScgKyBib3VuZGFyeSwKKyAgICAgICAgICAgICgnQ29udGVudC1EaXNwb3NpdGlvbjogZm9ybS1kYXRhOyBuYW1lPSIlcyI7IGZpbGVuYW1lPSIlcyInICUKKyAgICAgICAgICAgICAoa2V5LCBmaWxlbmFtZSkpLmVuY29kZSgndXRmLTgnKSwKKyAgICAgICAgICAgIGInJywKKyAgICAgICAgICAgIHZhbHVlKSkKKworICAgIGwuYXBwZW5kKGInLS0nICsgYm91bmRhcnkgKyBiJy0tJykKKyAgICBsLmFwcGVuZChiJycpCisKKyAgICBib2R5ID0gYidcclxuJy5qb2luKGwpCisgICAgY29udGVudF90eXBlID0gYidtdWx0aXBhcnQvZm9ybS1kYXRhOyBib3VuZGFyeT0nICsgYm91bmRhcnkKKyAgICByZXR1cm4gY29udGVudF90eXBlLCBib2R5CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3ZlcnNpb24ucHkgYi9MaWIvcGFja2FnaW5nL3ZlcnNpb24ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTk3MDMyMgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdmVyc2lvbi5weQpAQCAtMCwwICsxLDQ1MSBAQAorIiIiSW1wbGVtZW50YXRpb24gb2YgdGhlIHZlcnNpb25pbmcgc2NoZW1lIGRlZmluZWQgaW4gUEVQIDM4Ni4iIiIKKworaW1wb3J0IHJlCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgSXJyYXRpb25hbFZlcnNpb25FcnJvciwgSHVnZU1ham9yVmVyc2lvbk51bUVycm9yCisKK19fYWxsX18gPSBbJ05vcm1hbGl6ZWRWZXJzaW9uJywgJ3N1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uJywKKyAgICAgICAgICAgJ1ZlcnNpb25QcmVkaWNhdGUnLCAnaXNfdmFsaWRfdmVyc2lvbicsICdpc192YWxpZF92ZXJzaW9ucycsCisgICAgICAgICAgICdpc192YWxpZF9wcmVkaWNhdGUnXQorCisjIEEgbWFya2VyIHVzZWQgaW4gdGhlIHNlY29uZCBhbmQgdGhpcmQgcGFydHMgb2YgdGhlIGBwYXJ0c2AgdHVwbGUsIGZvcgorIyB2ZXJzaW9ucyB0aGF0IGRvbid0IGhhdmUgdGhvc2Ugc2VnbWVudHMsIHRvIHNvcnQgcHJvcGVybHkuIEFuIGV4YW1wbGUKKyMgb2YgdmVyc2lvbnMgaW4gc29ydCBvcmRlciAoJ2hpZ2hlc3QnIGxhc3QpOgorIyAgIDEuMGIxICAgICAgICAgICAgICAgICAoKDEsMCksICgnYicsMSksICgneicsKSkKKyMgICAxLjAuZGV2MzQ1ICAgICAgICAgICAgKCgxLDApLCAoJ3onLCksICAoJ2RldicsIDM0NSkpCisjICAgMS4wICAgICAgICAgICAgICAgICAgICgoMSwwKSwgKCd6JywpLCAgKCd6JywpKQorIyAgIDEuMC5wb3N0MjU2LmRldjM0NSAgICAoKDEsMCksICgneicsKSwgICgneicsICdwb3N0JywgMjU2LCAnZGV2JywgMzQ1KSkKKyMgICAxLjAucG9zdDM0NSAgICAgICAgICAgKCgxLDApLCAoJ3onLCksICAoJ3onLCAncG9zdCcsIDM0NSwgJ3onKSkKKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgICAgIF4gICAgICAgICAgICAgICAgIF4KKyMgICAnYicgPCAneicgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLyAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwKKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwKKyMgICAnZGV2JyA8ICd6JyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLyAgICAgICAgICAgICAgICAgIHwKKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyMgICAnZGV2JyA8ICd6JyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLworIyAnZicgZm9yICdmaW5hbCcgd291bGQgYmUga2luZCBvZiBuaWNlLCBidXQgZHVlIHRvIGJ1Z3MgaW4gdGhlIHN1cHBvcnQgb2YKKyMgJ3JjJyB3ZSBtdXN0IHVzZSAneicKK19GSU5BTF9NQVJLRVIgPSAoJ3onLCkKKworX1ZFUlNJT05fUkUgPSByZS5jb21waWxlKHInJycKKyAgICBeCisgICAgKD9QPHZlcnNpb24+XGQrXC5cZCspICAgICAgICAgICMgbWluaW11bSAnTi5OJworICAgICg/UDxleHRyYXZlcnNpb24+KD86XC5cZCspKikgICAjIGFueSBudW1iZXIgb2YgZXh0cmEgJy5OJyBzZWdtZW50cworICAgICg/OgorICAgICAgICAoP1A8cHJlcmVsPlthYmNdfHJjKSAgICAgICAjICdhJz1hbHBoYSwgJ2InPWJldGEsICdjJz1yZWxlYXNlIGNhbmRpZGF0ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICdyYyc9IGFsaWFzIGZvciByZWxlYXNlIGNhbmRpZGF0ZQorICAgICAgICAoP1A8cHJlcmVsdmVyc2lvbj5cZCsoPzpcLlxkKykqKQorICAgICk/CisgICAgKD9QPHBvc3RkZXY+KFwucG9zdCg/UDxwb3N0PlxkKykpPyhcLmRldig/UDxkZXY+XGQrKSk/KT8KKyAgICAkJycnLCByZS5WRVJCT1NFKQorCisKK2NsYXNzIE5vcm1hbGl6ZWRWZXJzaW9uOgorICAgICIiIkEgcmF0aW9uYWwgdmVyc2lvbi4KKworICAgIEdvb2Q6CisgICAgICAgIDEuMiAgICAgICAgICMgZXF1aXZhbGVudCB0byAiMS4yLjAiCisgICAgICAgIDEuMi4wCisgICAgICAgIDEuMmExCisgICAgICAgIDEuMi4zYTIKKyAgICAgICAgMS4yLjNiMQorICAgICAgICAxLjIuM2MxCisgICAgICAgIDEuMi4zLjQKKyAgICAgICAgVE9ETzogZmlsbCB0aGlzIG91dAorCisgICAgQmFkOgorICAgICAgICAxICAgICAgICAgICAjIG1pbmludW0gdHdvIG51bWJlcnMKKyAgICAgICAgMS4yYSAgICAgICAgIyByZWxlYXNlIGxldmVsIG11c3QgaGF2ZSBhIHJlbGVhc2Ugc2VyaWFsCisgICAgICAgIDEuMi4zYgorICAgICIiIgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBzLCBlcnJvcl9vbl9odWdlX21ham9yX251bT1UcnVlKToKKyAgICAgICAgIiIiQ3JlYXRlIGEgTm9ybWFsaXplZFZlcnNpb24gaW5zdGFuY2UgZnJvbSBhIHZlcnNpb24gc3RyaW5nLgorCisgICAgICAgIEBwYXJhbSBzIHtzdHJ9IFRoZSB2ZXJzaW9uIHN0cmluZy4KKyAgICAgICAgQHBhcmFtIGVycm9yX29uX2h1Z2VfbWFqb3JfbnVtIHtib29sfSBXaGV0aGVyIHRvIGNvbnNpZGVyIGFuCisgICAgICAgICAgICBhcHBhcmVudCB1c2Ugb2YgYSB5ZWFyIG9yIGZ1bGwgZGF0ZSBhcyB0aGUgbWFqb3IgdmVyc2lvbiBudW1iZXIKKyAgICAgICAgICAgIGFuIGVycm9yLiBEZWZhdWx0IFRydWUuIE9uZSBvZiB0aGUgb2JzZXJ2ZWQgcGF0dGVybnMgb24gUHlQSSBiZWZvcmUKKyAgICAgICAgICAgIHRoZSBpbnRyb2R1Y3Rpb24gb2YgYE5vcm1hbGl6ZWRWZXJzaW9uYCB3YXMgdmVyc2lvbiBudW1iZXJzIGxpa2UKKyAgICAgICAgICAgIHRoaXM6CisgICAgICAgICAgICAgICAgMjAwOS4wMS4wMworICAgICAgICAgICAgICAgIDIwMDQwNjAzCisgICAgICAgICAgICAgICAgMjAwNS4wMQorICAgICAgICAgICAgVGhpcyBndWFyZCBpcyBoZXJlIHRvIHN0cm9uZ2x5IGVuY291cmFnZSB0aGUgcGFja2FnZSBhdXRob3IgdG8KKyAgICAgICAgICAgIHVzZSBhbiBhbHRlcm5hdGUgdmVyc2lvbiwgYmVjYXVzZSBhIHJlbGVhc2UgZGVwbG95ZWQgaW50byBQeVBJCisgICAgICAgICAgICBhbmQsIGUuZy4gZG93bnN0cmVhbSBMaW51eCBwYWNrYWdlIG1hbmFnZXJzLCB3aWxsIGZvcmV2ZXIgcmVtb3ZlCisgICAgICAgICAgICB0aGUgcG9zc2liaWxpdHkgb2YgdXNpbmcgYSB2ZXJzaW9uIG51bWJlciBsaWtlICIxLjAiIChpLmUuCisgICAgICAgICAgICB3aGVyZSB0aGUgbWFqb3IgbnVtYmVyIGlzIGxlc3MgdGhhbiB0aGF0IGh1Z2UgbWFqb3IgbnVtYmVyKS4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuaXNfZmluYWwgPSBUcnVlICAjIGJ5IGRlZmF1bHQsIGNvbnNpZGVyIGEgdmVyc2lvbiBhcyBmaW5hbC4KKyAgICAgICAgc2VsZi5fcGFyc2UocywgZXJyb3Jfb25faHVnZV9tYWpvcl9udW0pCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgZnJvbV9wYXJ0cyhjbHMsIHZlcnNpb24sIHByZXJlbGVhc2U9X0ZJTkFMX01BUktFUiwKKyAgICAgICAgICAgICAgICAgICBkZXZwb3N0PV9GSU5BTF9NQVJLRVIpOgorICAgICAgICByZXR1cm4gY2xzKGNscy5wYXJ0c190b19zdHIoKHZlcnNpb24sIHByZXJlbGVhc2UsIGRldnBvc3QpKSkKKworICAgIGRlZiBfcGFyc2Uoc2VsZiwgcywgZXJyb3Jfb25faHVnZV9tYWpvcl9udW09VHJ1ZSk6CisgICAgICAgICIiIlBhcnNlcyBhIHN0cmluZyB2ZXJzaW9uIGludG8gcGFydHMuIiIiCisgICAgICAgIG1hdGNoID0gX1ZFUlNJT05fUkUuc2VhcmNoKHMpCisgICAgICAgIGlmIG5vdCBtYXRjaDoKKyAgICAgICAgICAgIHJhaXNlIElycmF0aW9uYWxWZXJzaW9uRXJyb3IocykKKworICAgICAgICBncm91cHMgPSBtYXRjaC5ncm91cGRpY3QoKQorICAgICAgICBwYXJ0cyA9IFtdCisKKyAgICAgICAgIyBtYWluIHZlcnNpb24KKyAgICAgICAgYmxvY2sgPSBzZWxmLl9wYXJzZV9udW1kb3RzKGdyb3Vwc1sndmVyc2lvbiddLCBzLCBGYWxzZSwgMikKKyAgICAgICAgZXh0cmF2ZXJzaW9uID0gZ3JvdXBzLmdldCgnZXh0cmF2ZXJzaW9uJykKKyAgICAgICAgaWYgZXh0cmF2ZXJzaW9uIG5vdCBpbiAoJycsIE5vbmUpOgorICAgICAgICAgICAgYmxvY2sgKz0gc2VsZi5fcGFyc2VfbnVtZG90cyhleHRyYXZlcnNpb25bMTpdLCBzKQorICAgICAgICBwYXJ0cy5hcHBlbmQodHVwbGUoYmxvY2spKQorCisgICAgICAgICMgcHJlcmVsZWFzZQorICAgICAgICBwcmVyZWwgPSBncm91cHMuZ2V0KCdwcmVyZWwnKQorICAgICAgICBpZiBwcmVyZWwgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBibG9jayA9IFtwcmVyZWxdCisgICAgICAgICAgICBibG9jayArPSBzZWxmLl9wYXJzZV9udW1kb3RzKGdyb3Vwcy5nZXQoJ3ByZXJlbHZlcnNpb24nKSwgcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkX3plcm9zX2xlbmd0aD0xKQorICAgICAgICAgICAgcGFydHMuYXBwZW5kKHR1cGxlKGJsb2NrKSkKKyAgICAgICAgICAgIHNlbGYuaXNfZmluYWwgPSBGYWxzZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcGFydHMuYXBwZW5kKF9GSU5BTF9NQVJLRVIpCisKKyAgICAgICAgIyBwb3N0ZGV2CisgICAgICAgIGlmIGdyb3Vwcy5nZXQoJ3Bvc3RkZXYnKToKKyAgICAgICAgICAgIHBvc3QgPSBncm91cHMuZ2V0KCdwb3N0JykKKyAgICAgICAgICAgIGRldiA9IGdyb3Vwcy5nZXQoJ2RldicpCisgICAgICAgICAgICBwb3N0ZGV2ID0gW10KKyAgICAgICAgICAgIGlmIHBvc3QgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcG9zdGRldi5leHRlbmQoKF9GSU5BTF9NQVJLRVJbMF0sICdwb3N0JywgaW50KHBvc3QpKSkKKyAgICAgICAgICAgICAgICBpZiBkZXYgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgcG9zdGRldi5hcHBlbmQoX0ZJTkFMX01BUktFUlswXSkKKyAgICAgICAgICAgIGlmIGRldiBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBwb3N0ZGV2LmV4dGVuZCgoJ2RldicsIGludChkZXYpKSkKKyAgICAgICAgICAgICAgICBzZWxmLmlzX2ZpbmFsID0gRmFsc2UKKyAgICAgICAgICAgIHBhcnRzLmFwcGVuZCh0dXBsZShwb3N0ZGV2KSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHBhcnRzLmFwcGVuZChfRklOQUxfTUFSS0VSKQorICAgICAgICBzZWxmLnBhcnRzID0gdHVwbGUocGFydHMpCisgICAgICAgIGlmIGVycm9yX29uX2h1Z2VfbWFqb3JfbnVtIGFuZCBzZWxmLnBhcnRzWzBdWzBdID4gMTk4MDoKKyAgICAgICAgICAgIHJhaXNlIEh1Z2VNYWpvclZlcnNpb25OdW1FcnJvcigiaHVnZSBtYWpvciB2ZXJzaW9uIG51bWJlciwgJXIsICIKKyAgICAgICAgICAgICAgICJ3aGljaCBtaWdodCBjYXVzZSBmdXR1cmUgcHJvYmxlbXM6ICVyIiAlIChzZWxmLnBhcnRzWzBdWzBdLCBzKSkKKworICAgIGRlZiBfcGFyc2VfbnVtZG90cyhzZWxmLCBzLCBmdWxsX3Zlcl9zdHIsIGRyb3BfdHJhaWxpbmdfemVyb3M9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgcGFkX3plcm9zX2xlbmd0aD0wKToKKyAgICAgICAgIiIiUGFyc2UgJ04uTi5OJyBzZXF1ZW5jZXMsIHJldHVybiBhIGxpc3Qgb2YgaW50cy4KKworICAgICAgICBAcGFyYW0gcyB7c3RyfSAnTi5OLk4uLi4nIHNlcXVlbmNlIHRvIGJlIHBhcnNlZAorICAgICAgICBAcGFyYW0gZnVsbF92ZXJfc3RyIHtzdHJ9IFRoZSBmdWxsIHZlcnNpb24gc3RyaW5nIGZyb20gd2hpY2ggdGhpcworICAgICAgICAgICAgY29tZXMuIFVzZWQgZm9yIGVycm9yIHN0cmluZ3MuCisgICAgICAgIEBwYXJhbSBkcm9wX3RyYWlsaW5nX3plcm9zIHtib29sfSBXaGV0aGVyIHRvIGRyb3AgdHJhaWxpbmcgemVyb3MKKyAgICAgICAgICAgIGZyb20gdGhlIHJldHVybmVkIGxpc3QuIERlZmF1bHQgVHJ1ZS4KKyAgICAgICAgQHBhcmFtIHBhZF96ZXJvc19sZW5ndGgge2ludH0gVGhlIGxlbmd0aCB0byB3aGljaCB0byBwYWQgdGhlCisgICAgICAgICAgICByZXR1cm5lZCBsaXN0IHdpdGggemVyb3MsIGlmIG5lY2Vzc2FyeS4gRGVmYXVsdCAwLgorICAgICAgICAiIiIKKyAgICAgICAgbnVtcyA9IFtdCisgICAgICAgIGZvciBuIGluIHMuc3BsaXQoIi4iKToKKyAgICAgICAgICAgIGlmIGxlbihuKSA+IDEgYW5kIG5bMF0gPT0gJzAnOgorICAgICAgICAgICAgICAgIHJhaXNlIElycmF0aW9uYWxWZXJzaW9uRXJyb3IoImNhbm5vdCBoYXZlIGxlYWRpbmcgemVybyBpbiAiCisgICAgICAgICAgICAgICAgICAgICJ2ZXJzaW9uIG51bWJlciBzZWdtZW50OiAnJXMnIGluICVyIiAlIChuLCBmdWxsX3Zlcl9zdHIpKQorICAgICAgICAgICAgbnVtcy5hcHBlbmQoaW50KG4pKQorICAgICAgICBpZiBkcm9wX3RyYWlsaW5nX3plcm9zOgorICAgICAgICAgICAgd2hpbGUgbnVtcyBhbmQgbnVtc1stMV0gPT0gMDoKKyAgICAgICAgICAgICAgICBudW1zLnBvcCgpCisgICAgICAgIHdoaWxlIGxlbihudW1zKSA8IHBhZF96ZXJvc19sZW5ndGg6CisgICAgICAgICAgICBudW1zLmFwcGVuZCgwKQorICAgICAgICByZXR1cm4gbnVtcworCisgICAgZGVmIF9fc3RyX18oc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLnBhcnRzX3RvX3N0cihzZWxmLnBhcnRzKQorCisgICAgQGNsYXNzbWV0aG9kCisgICAgZGVmIHBhcnRzX3RvX3N0cihjbHMsIHBhcnRzKToKKyAgICAgICAgIiIiVHJhbnNmb3JtcyBhIHZlcnNpb24gZXhwcmVzc2VkIGluIHR1cGxlIGludG8gaXRzIHN0cmluZworICAgICAgICByZXByZXNlbnRhdGlvbi4iIiIKKyAgICAgICAgIyBYWFggVGhpcyBkb2Vzbid0IGNoZWNrIGZvciBpbnZhbGlkIHR1cGxlcworICAgICAgICBtYWluLCBwcmVyZWwsIHBvc3RkZXYgPSBwYXJ0cworICAgICAgICBzID0gJy4nLmpvaW4oc3RyKHYpIGZvciB2IGluIG1haW4pCisgICAgICAgIGlmIHByZXJlbCBpcyBub3QgX0ZJTkFMX01BUktFUjoKKyAgICAgICAgICAgIHMgKz0gcHJlcmVsWzBdCisgICAgICAgICAgICBzICs9ICcuJy5qb2luKHN0cih2KSBmb3IgdiBpbiBwcmVyZWxbMTpdKQorICAgICAgICAjIFhYWCBjbGVhbiB1cDogcG9zdGRldiBpcyBhbHdheXMgdHJ1ZTsgY29kZSBpcyBvYnNjdXJlCisgICAgICAgIGlmIHBvc3RkZXYgYW5kIHBvc3RkZXYgaXMgbm90IF9GSU5BTF9NQVJLRVI6CisgICAgICAgICAgICBpZiBwb3N0ZGV2WzBdID09IF9GSU5BTF9NQVJLRVJbMF06CisgICAgICAgICAgICAgICAgcG9zdGRldiA9IHBvc3RkZXZbMTpdCisgICAgICAgICAgICBpID0gMAorICAgICAgICAgICAgd2hpbGUgaSA8IGxlbihwb3N0ZGV2KToKKyAgICAgICAgICAgICAgICBpZiBpICUgMiA9PSAwOgorICAgICAgICAgICAgICAgICAgICBzICs9ICcuJworICAgICAgICAgICAgICAgIHMgKz0gc3RyKHBvc3RkZXZbaV0pCisgICAgICAgICAgICAgICAgaSArPSAxCisgICAgICAgIHJldHVybiBzCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiAiJXMoJyVzJykiICUgKHNlbGYuX19jbGFzc19fLl9fbmFtZV9fLCBzZWxmKQorCisgICAgZGVmIF9jYW5ub3RfY29tcGFyZShzZWxmLCBvdGhlcik6CisgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiY2Fubm90IGNvbXBhcmUgJXMgYW5kICVzIgorICAgICAgICAgICAgICAgICUgKHR5cGUoc2VsZikuX19uYW1lX18sIHR5cGUob3RoZXIpLl9fbmFtZV9fKSkKKworICAgIGRlZiBfX2VxX18oc2VsZiwgb3RoZXIpOgorICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShvdGhlciwgTm9ybWFsaXplZFZlcnNpb24pOgorICAgICAgICAgICAgc2VsZi5fY2Fubm90X2NvbXBhcmUob3RoZXIpCisgICAgICAgIHJldHVybiBzZWxmLnBhcnRzID09IG90aGVyLnBhcnRzCisKKyAgICBkZWYgX19sdF9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uob3RoZXIsIE5vcm1hbGl6ZWRWZXJzaW9uKToKKyAgICAgICAgICAgIHNlbGYuX2Nhbm5vdF9jb21wYXJlKG90aGVyKQorICAgICAgICByZXR1cm4gc2VsZi5wYXJ0cyA8IG90aGVyLnBhcnRzCisKKyAgICBkZWYgX19uZV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIG5vdCBzZWxmLl9fZXFfXyhvdGhlcikKKworICAgIGRlZiBfX2d0X18oc2VsZiwgb3RoZXIpOgorICAgICAgICByZXR1cm4gbm90IChzZWxmLl9fbHRfXyhvdGhlcikgb3Igc2VsZi5fX2VxX18ob3RoZXIpKQorCisgICAgZGVmIF9fbGVfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBzZWxmLl9fZXFfXyhvdGhlcikgb3Igc2VsZi5fX2x0X18ob3RoZXIpCisKKyAgICBkZWYgX19nZV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX19lcV9fKG90aGVyKSBvciBzZWxmLl9fZ3RfXyhvdGhlcikKKworICAgICMgU2VlIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvcmVmZXJlbmNlL2RhdGFtb2RlbCNvYmplY3QuX19oYXNoX18KKyAgICBkZWYgX19oYXNoX18oc2VsZik6CisgICAgICAgIHJldHVybiBoYXNoKHNlbGYucGFydHMpCisKKworZGVmIHN1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uKHMpOgorICAgICIiIlN1Z2dlc3QgYSBub3JtYWxpemVkIHZlcnNpb24gY2xvc2UgdG8gdGhlIGdpdmVuIHZlcnNpb24gc3RyaW5nLgorCisgICAgSWYgeW91IGhhdmUgYSB2ZXJzaW9uIHN0cmluZyB0aGF0IGlzbid0IHJhdGlvbmFsIChpLmUuIE5vcm1hbGl6ZWRWZXJzaW9uCisgICAgZG9lc24ndCBsaWtlIGl0KSB0aGVuIHlvdSBtaWdodCBiZSBhYmxlIHRvIGdldCBhbiBlcXVpdmFsZW50IChvciBjbG9zZSkKKyAgICByYXRpb25hbCB2ZXJzaW9uIGZyb20gdGhpcyBmdW5jdGlvbi4KKworICAgIFRoaXMgZG9lcyBhIG51bWJlciBvZiBzaW1wbGUgbm9ybWFsaXphdGlvbnMgdG8gdGhlIGdpdmVuIHN0cmluZywgYmFzZWQKKyAgICBvbiBvYnNlcnZhdGlvbiBvZiB2ZXJzaW9ucyBjdXJyZW50bHkgaW4gdXNlIG9uIFB5UEkuIEdpdmVuIGEgZHVtcCBvZgorICAgIHRob3NlIHZlcnNpb24gZHVyaW5nIFB5Q29uIDIwMDksIDQyODcgb2YgdGhlbToKKyAgICAtIDIzMTIgKDUzLjkzJSkgbWF0Y2ggTm9ybWFsaXplZFZlcnNpb24gd2l0aG91dCBjaGFuZ2UKKyAgICAgIHdpdGggdGhlIGF1dG9tYXRpYyBzdWdnZXN0aW9uCisgICAgLSAzNDc0ICg4MS4wNCUpIG1hdGNoIHdoZW4gdXNpbmcgdGhpcyBzdWdnZXN0aW9uIG1ldGhvZAorCisgICAgQHBhcmFtIHMge3N0cn0gQW4gaXJyYXRpb25hbCB2ZXJzaW9uIHN0cmluZy4KKyAgICBAcmV0dXJucyBBIHJhdGlvbmFsIHZlcnNpb24gc3RyaW5nLCBvciBOb25lLCBpZiBjb3VsZG4ndCBkZXRlcm1pbmUgb25lLgorICAgICIiIgorICAgIHRyeToKKyAgICAgICAgTm9ybWFsaXplZFZlcnNpb24ocykKKyAgICAgICAgcmV0dXJuIHMgICAjIGFscmVhZHkgcmF0aW9uYWwKKyAgICBleGNlcHQgSXJyYXRpb25hbFZlcnNpb25FcnJvcjoKKyAgICAgICAgcGFzcworCisgICAgcnMgPSBzLmxvd2VyKCkKKworICAgICMgcGFydCBvZiB0aGlzIGNvdWxkIHVzZSBtYWtldHJhbnMKKyAgICBmb3Igb3JpZywgcmVwbCBpbiAoKCctYWxwaGEnLCAnYScpLCAoJy1iZXRhJywgJ2InKSwgKCdhbHBoYScsICdhJyksCisgICAgICAgICAgICAgICAgICAgICAgICgnYmV0YScsICdiJyksICgncmMnLCAnYycpLCAoJy1maW5hbCcsICcnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgKCctcHJlJywgJ2MnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgKCctcmVsZWFzZScsICcnKSwgKCcucmVsZWFzZScsICcnKSwgKCctc3RhYmxlJywgJycpLAorICAgICAgICAgICAgICAgICAgICAgICAoJysnLCAnLicpLCAoJ18nLCAnLicpLCAoJyAnLCAnJyksICgnLmZpbmFsJywgJycpLAorICAgICAgICAgICAgICAgICAgICAgICAoJ2ZpbmFsJywgJycpKToKKyAgICAgICAgcnMgPSBycy5yZXBsYWNlKG9yaWcsIHJlcGwpCisKKyAgICAjIGlmIHNvbWV0aGluZyBlbmRzIHdpdGggZGV2IG9yIHByZSwgd2UgYWRkIGEgMAorICAgIHJzID0gcmUuc3ViKHIicHJlJCIsIHIicHJlMCIsIHJzKQorICAgIHJzID0gcmUuc3ViKHIiZGV2JCIsIHIiZGV2MCIsIHJzKQorCisgICAgIyBpZiB3ZSBoYXZlIHNvbWV0aGluZyBsaWtlICJiLTIiIG9yICJhLjIiIGF0IHRoZSBlbmQgb2YgdGhlCisgICAgIyB2ZXJzaW9uLCB0aGF0IGlzIHBvYmFibHkgYmV0YSwgYWxwaGEsIGV0YworICAgICMgbGV0J3MgcmVtb3ZlIHRoZSBkYXNoIG9yIGRvdAorICAgIHJzID0gcmUuc3ViKHIiKFthYmNdfHJjKVtcLVwuXShcZCspJCIsIHIiXDFcMiIsIHJzKQorCisgICAgIyAxLjAtZGV2LXIzNzEgLT4gMS4wLmRldjM3MQorICAgICMgMC4xLWRldi1yNzkgLT4gMC4xLmRldjc5CisgICAgcnMgPSByZS5zdWIociJbXC1cLl0oZGV2KVtcLVwuXT9yPyhcZCspJCIsIHIiLlwxXDIiLCBycykKKworICAgICMgQ2xlYW46IDIuMC5hLjMsIDIuMC5iMSwgMC45LjB+YzEKKyAgICBycyA9IHJlLnN1YihyIlsufl0/KFthYmNdKVwuPyIsIHIiXDEiLCBycykKKworICAgICMgQ2xlYW46IHYwLjMsIHYxLjAKKyAgICBpZiBycy5zdGFydHN3aXRoKCd2Jyk6CisgICAgICAgIHJzID0gcnNbMTpdCisKKyAgICAjIENsZWFuIGxlYWRpbmcgJzAncyBvbiBudW1iZXJzLgorICAgICNUT0RPOiB1bmludGVuZGVkIHNpZGUtZWZmZWN0IG9uLCBlLmcuLCAiMjAwMy4wNS4wOSIKKyAgICAjIFB5UEkgc3RhdHM6IDc3ICh+MiUpIGJldHRlcgorICAgIHJzID0gcmUuc3ViKHIiXGIwKyhcZCspKD8hXGQpIiwgciJcMSIsIHJzKQorCisgICAgIyBDbGVhbiBhL2IvYyB3aXRoIG5vIHZlcnNpb24uIEUuZy4gIjEuMGEiIC0+ICIxLjBhMCIuIFNldHVwdG9vbHMgaW5mZXJzCisgICAgIyB6ZXJvLgorICAgICMgUHlQSSBzdGF0czogMjQ1ICg3LjU2JSkgYmV0dGVyCisgICAgcnMgPSByZS5zdWIociIoXGQrW2FiY10pJCIsIHIiXGc8MT4wIiwgcnMpCisKKyAgICAjIHRoZSAnZGV2LXJOTk4nIHRhZyBpcyBhIGRldiB0YWcKKyAgICBycyA9IHJlLnN1YihyIlwuPyhkZXYtcnxkZXZcLnIpXC4/KFxkKykkIiwgciIuZGV2XDIiLCBycykKKworICAgICMgY2xlYW4gdGhlIC0gd2hlbiB1c2VkIGFzIGEgcHJlIGRlbGltaXRlcgorICAgIHJzID0gcmUuc3ViKHIiLShhfGJ8YykoXGQrKSQiLCByIlwxXDIiLCBycykKKworICAgICMgYSB0ZXJtaW5hbCAiZGV2IiBvciAiZGV2ZWwiIGNhbiBiZSBjaGFuZ2VkIGludG8gIi5kZXYwIgorICAgIHJzID0gcmUuc3ViKHIiW1wuXC1dKGRldnxkZXZlbCkkIiwgciIuZGV2MCIsIHJzKQorCisgICAgIyBhIHRlcm1pbmFsICJkZXYiIGNhbiBiZSBjaGFuZ2VkIGludG8gIi5kZXYwIgorICAgIHJzID0gcmUuc3ViKHIiKD8hW1wuXC1dKWRldiQiLCByIi5kZXYwIiwgcnMpCisKKyAgICAjIGEgdGVybWluYWwgImZpbmFsIiBvciAic3RhYmxlIiBjYW4gYmUgcmVtb3ZlZAorICAgIHJzID0gcmUuc3ViKHIiKGZpbmFsfHN0YWJsZSkkIiwgIiIsIHJzKQorCisgICAgIyBUaGUgJ3InIGFuZCB0aGUgJy0nIHRhZ3MgYXJlIHBvc3QgcmVsZWFzZSB0YWdzCisgICAgIyAgIDAuNGExLnIxMCAgICAgICAtPiAgMC40YTEucG9zdDEwCisgICAgIyAgIDAuOS4zMy0xNzIyMiAgICAtPiAgMC45LjMzLnBvc3QxNzIyMgorICAgICMgICAwLjkuMzMtcjE3MjIyICAgLT4gIDAuOS4zMy5wb3N0MTcyMjIKKyAgICBycyA9IHJlLnN1YihyIlwuPyhyfC18LXIpXC4/KFxkKykkIiwgciIucG9zdFwyIiwgcnMpCisKKyAgICAjIENsZWFuICdyJyBpbnN0ZWFkIG9mICdkZXYnIHVzYWdlOgorICAgICMgICAwLjkuMzMrcjE3MjIyICAgLT4gIDAuOS4zMy5kZXYxNzIyMgorICAgICMgICAxLjBkZXYxMjMgICAgICAgLT4gIDEuMC5kZXYxMjMKKyAgICAjICAgMS4wLmdpdDEyMyAgICAgIC0+ICAxLjAuZGV2MTIzCisgICAgIyAgIDEuMC5ienIxMjMgICAgICAtPiAgMS4wLmRldjEyMworICAgICMgICAwLjFhMGRldi4xMjMgICAgLT4gIDAuMWEwLmRldjEyMworICAgICMgUHlQSSBzdGF0czogIH4xNTAgKH40JSkgYmV0dGVyCisgICAgcnMgPSByZS5zdWIociJcLj8oZGV2fGdpdHxienIpXC4/KFxkKykkIiwgciIuZGV2XDIiLCBycykKKworICAgICMgQ2xlYW4gJy5wcmUnIChub3JtYWxpemVkIGZyb20gJy1wcmUnIGFib3ZlKSBpbnN0ZWFkIG9mICdjJyB1c2FnZToKKyAgICAjICAgMC4yLnByZTEgICAgICAgIC0+ICAwLjJjMQorICAgICMgICAwLjItYzEgICAgICAgICAtPiAgMC4yYzEKKyAgICAjICAgMS4wcHJldmlldzEyMyAgIC0+ICAxLjBjMTIzCisgICAgIyBQeVBJIHN0YXRzOiB+MjEgKDAuNjIlKSBiZXR0ZXIKKyAgICBycyA9IHJlLnN1YihyIlwuPyhwcmV8cHJldmlld3wtYykoXGQrKSQiLCByImNcZzwyPiIsIHJzKQorCisgICAgIyBUY2wvVGsgdXNlcyAicHgiIGZvciB0aGVpciBwb3N0IHJlbGVhc2UgbWFya2VycworICAgIHJzID0gcmUuc3ViKHIicChcZCspJCIsIHIiLnBvc3RcMSIsIHJzKQorCisgICAgdHJ5OgorICAgICAgICBOb3JtYWxpemVkVmVyc2lvbihycykKKyAgICAgICAgcmV0dXJuIHJzICAgIyBhbHJlYWR5IHJhdGlvbmFsCisgICAgZXhjZXB0IElycmF0aW9uYWxWZXJzaW9uRXJyb3I6CisgICAgICAgIHBhc3MKKyAgICByZXR1cm4gTm9uZQorCisKKyMgQSBwcmVkaWNhdGUgaXM6ICJQcm9qZWN0TmFtZSAoVkVSU0lPTjEsIFZFUlNJT04yLCAuLikKK19QUkVESUNBVEUgPSByZS5jb21waWxlKHIiKD9pKV5ccyooXHdbXHNcdy1dKig/OlwuXHcqKSopKC4qKSIpCitfVkVSU0lPTlMgPSByZS5jb21waWxlKHIiXlxzKlwoKD9QPHZlcnNpb25zPi4qKVwpXHMqJHxeXHMqIgorICAgICAgICAgICAgICAgICAgICAgICAgIig/UDx2ZXJzaW9uczI+LiopXHMqJCIpCitfUExBSU5fVkVSU0lPTlMgPSByZS5jb21waWxlKHIiXlxzKiguKilccyokIikKK19TUExJVF9DTVAgPSByZS5jb21waWxlKHIiXlxzKig8PXw+PXw8fD58IT18PT0pXHMqKFteXHMsXSspXHMqJCIpCisKKworZGVmIF9zcGxpdF9wcmVkaWNhdGUocHJlZGljYXRlKToKKyAgICBtYXRjaCA9IF9TUExJVF9DTVAubWF0Y2gocHJlZGljYXRlKQorICAgIGlmIG1hdGNoIGlzIE5vbmU6CisgICAgICAgICMgcHJvYmFibHkgbm8gb3AsIHdlJ2xsIHVzZSAiPT0iCisgICAgICAgIGNvbXAsIHZlcnNpb24gPSAnPT0nLCBwcmVkaWNhdGUKKyAgICBlbHNlOgorICAgICAgICBjb21wLCB2ZXJzaW9uID0gbWF0Y2guZ3JvdXBzKCkKKyAgICByZXR1cm4gY29tcCwgTm9ybWFsaXplZFZlcnNpb24odmVyc2lvbikKKworCitjbGFzcyBWZXJzaW9uUHJlZGljYXRlOgorICAgICIiIkRlZmluZXMgYSBwcmVkaWNhdGU6IFByb2plY3ROYW1lICg+dmVyMSx2ZXIyLCAuLikiIiIKKworICAgIF9vcGVyYXRvcnMgPSB7IjwiOiBsYW1iZGEgeCwgeTogeCA8IHksCisgICAgICAgICAgICAgICAgICAiPiI6IGxhbWJkYSB4LCB5OiB4ID4geSwKKyAgICAgICAgICAgICAgICAgICI8PSI6IGxhbWJkYSB4LCB5OiBzdHIoeCkuc3RhcnRzd2l0aChzdHIoeSkpIG9yIHggPCB5LAorICAgICAgICAgICAgICAgICAgIj49IjogbGFtYmRhIHgsIHk6IHN0cih4KS5zdGFydHN3aXRoKHN0cih5KSkgb3IgeCA+IHksCisgICAgICAgICAgICAgICAgICAiPT0iOiBsYW1iZGEgeCwgeTogc3RyKHgpLnN0YXJ0c3dpdGgoc3RyKHkpKSwKKyAgICAgICAgICAgICAgICAgICIhPSI6IGxhbWJkYSB4LCB5OiBub3Qgc3RyKHgpLnN0YXJ0c3dpdGgoc3RyKHkpKSwKKyAgICAgICAgICAgICAgICAgIH0KKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwcmVkaWNhdGUpOgorICAgICAgICBzZWxmLl9zdHJpbmcgPSBwcmVkaWNhdGUKKyAgICAgICAgcHJlZGljYXRlID0gcHJlZGljYXRlLnN0cmlwKCkKKyAgICAgICAgbWF0Y2ggPSBfUFJFRElDQVRFLm1hdGNoKHByZWRpY2F0ZSkKKyAgICAgICAgaWYgbWF0Y2ggaXMgTm9uZToKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ0JhZCBwcmVkaWNhdGUgIiVzIicgJSBwcmVkaWNhdGUpCisKKyAgICAgICAgbmFtZSwgcHJlZGljYXRlcyA9IG1hdGNoLmdyb3VwcygpCisgICAgICAgIHNlbGYubmFtZSA9IG5hbWUuc3RyaXAoKQorICAgICAgICBzZWxmLnByZWRpY2F0ZXMgPSBbXQorICAgICAgICBpZiBwcmVkaWNhdGVzIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBwcmVkaWNhdGVzID0gX1ZFUlNJT05TLm1hdGNoKHByZWRpY2F0ZXMuc3RyaXAoKSkKKyAgICAgICAgaWYgcHJlZGljYXRlcyBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgcHJlZGljYXRlcyA9IHByZWRpY2F0ZXMuZ3JvdXBkaWN0KCkKKyAgICAgICAgaWYgcHJlZGljYXRlc1sndmVyc2lvbnMnXSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHZlcnNpb25zID0gcHJlZGljYXRlc1sndmVyc2lvbnMnXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgdmVyc2lvbnMgPSBwcmVkaWNhdGVzLmdldCgndmVyc2lvbnMyJykKKworICAgICAgICBpZiB2ZXJzaW9ucyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIGZvciB2ZXJzaW9uIGluIHZlcnNpb25zLnNwbGl0KCcsJyk6CisgICAgICAgICAgICAgICAgaWYgdmVyc2lvbi5zdHJpcCgpID09ICcnOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIHNlbGYucHJlZGljYXRlcy5hcHBlbmQoX3NwbGl0X3ByZWRpY2F0ZSh2ZXJzaW9uKSkKKworICAgIGRlZiBtYXRjaChzZWxmLCB2ZXJzaW9uKToKKyAgICAgICAgIiIiQ2hlY2sgaWYgdGhlIHByb3ZpZGVkIHZlcnNpb24gbWF0Y2hlcyB0aGUgcHJlZGljYXRlcy4iIiIKKyAgICAgICAgaWYgaXNpbnN0YW5jZSh2ZXJzaW9uLCBzdHIpOgorICAgICAgICAgICAgdmVyc2lvbiA9IE5vcm1hbGl6ZWRWZXJzaW9uKHZlcnNpb24pCisgICAgICAgIGZvciBvcGVyYXRvciwgcHJlZGljYXRlIGluIHNlbGYucHJlZGljYXRlczoKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9vcGVyYXRvcnNbb3BlcmF0b3JdKHZlcnNpb24sIHByZWRpY2F0ZSk6CisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLl9zdHJpbmcKKworCitjbGFzcyBfVmVyc2lvbnMoVmVyc2lvblByZWRpY2F0ZSk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHByZWRpY2F0ZSk6CisgICAgICAgIHByZWRpY2F0ZSA9IHByZWRpY2F0ZS5zdHJpcCgpCisgICAgICAgIG1hdGNoID0gX1BMQUlOX1ZFUlNJT05TLm1hdGNoKHByZWRpY2F0ZSkKKyAgICAgICAgc2VsZi5uYW1lID0gTm9uZQorICAgICAgICBwcmVkaWNhdGVzID0gbWF0Y2guZ3JvdXBzKClbMF0KKyAgICAgICAgc2VsZi5wcmVkaWNhdGVzID0gW19zcGxpdF9wcmVkaWNhdGUocHJlZC5zdHJpcCgpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIHByZWQgaW4gcHJlZGljYXRlcy5zcGxpdCgnLCcpXQorCisKK2NsYXNzIF9WZXJzaW9uKFZlcnNpb25QcmVkaWNhdGUpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwcmVkaWNhdGUpOgorICAgICAgICBwcmVkaWNhdGUgPSBwcmVkaWNhdGUuc3RyaXAoKQorICAgICAgICBtYXRjaCA9IF9QTEFJTl9WRVJTSU9OUy5tYXRjaChwcmVkaWNhdGUpCisgICAgICAgIHNlbGYubmFtZSA9IE5vbmUKKyAgICAgICAgc2VsZi5wcmVkaWNhdGVzID0gX3NwbGl0X3ByZWRpY2F0ZShtYXRjaC5ncm91cHMoKVswXSkKKworCitkZWYgaXNfdmFsaWRfcHJlZGljYXRlKHByZWRpY2F0ZSk6CisgICAgdHJ5OgorICAgICAgICBWZXJzaW9uUHJlZGljYXRlKHByZWRpY2F0ZSkKKyAgICBleGNlcHQgKFZhbHVlRXJyb3IsIElycmF0aW9uYWxWZXJzaW9uRXJyb3IpOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBlbHNlOgorICAgICAgICByZXR1cm4gVHJ1ZQorCisKK2RlZiBpc192YWxpZF92ZXJzaW9ucyhwcmVkaWNhdGUpOgorICAgIHRyeToKKyAgICAgICAgX1ZlcnNpb25zKHByZWRpY2F0ZSkKKyAgICBleGNlcHQgKFZhbHVlRXJyb3IsIElycmF0aW9uYWxWZXJzaW9uRXJyb3IpOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBlbHNlOgorICAgICAgICByZXR1cm4gVHJ1ZQorCisKK2RlZiBpc192YWxpZF92ZXJzaW9uKHByZWRpY2F0ZSk6CisgICAgdHJ5OgorICAgICAgICBfVmVyc2lvbihwcmVkaWNhdGUpCisgICAgZXhjZXB0IChWYWx1ZUVycm9yLCBJcnJhdGlvbmFsVmVyc2lvbkVycm9yKToKKyAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgZWxzZToKKyAgICAgICAgcmV0dXJuIFRydWUKKworCitkZWYgZ2V0X3ZlcnNpb25fcHJlZGljYXRlKHJlcXVpcmVtZW50cyk6CisgICAgIiIiUmV0dXJuIGEgVmVyc2lvblByZWRpY2F0ZSBvYmplY3QsIGZyb20gYSBzdHJpbmcgb3IgYW4gYWxyZWFkeQorICAgIGV4aXN0aW5nIG9iamVjdC4KKyAgICAiIiIKKyAgICBpZiBpc2luc3RhbmNlKHJlcXVpcmVtZW50cywgc3RyKToKKyAgICAgICAgcmVxdWlyZW1lbnRzID0gVmVyc2lvblByZWRpY2F0ZShyZXF1aXJlbWVudHMpCisgICAgcmV0dXJuIHJlcXVpcmVtZW50cwpkaWZmIC0tZ2l0IGEvTGliL3BpY2tsZS5weSBiL0xpYi9waWNrbGUucHkKaW5kZXggZDEwYWM3NzYuLjIwYjM2NDYgMTAwNjQ0Ci0tLSBhL0xpYi9waWNrbGUucHkKKysrIGIvTGliL3BpY2tsZS5weQpAQCAtMjMsOCArMjMsNiBAQAogCiAiIiIKIAotX192ZXJzaW9uX18gPSAiJFJldmlzaW9uJCIgICAgICAgIyBDb2RlIHZlcnNpb24KLQogZnJvbSB0eXBlcyBpbXBvcnQgRnVuY3Rpb25UeXBlLCBCdWlsdGluRnVuY3Rpb25UeXBlCiBmcm9tIGNvcHlyZWcgaW1wb3J0IGRpc3BhdGNoX3RhYmxlCiBmcm9tIGNvcHlyZWcgaW1wb3J0IF9leHRlbnNpb25fcmVnaXN0cnksIF9pbnZlcnRlZF9yZWdpc3RyeSwgX2V4dGVuc2lvbl9jYWNoZQpAQCAtMjk5LDggKzI5Nyw4IEBACiAgICAgICAgICAgICBmKHNlbGYsIG9iaikgIyBDYWxsIHVuYm91bmQgbWV0aG9kIHdpdGggZXhwbGljaXQgc2VsZgogICAgICAgICAgICAgcmV0dXJuCiAKLSAgICAgICAgIyBDaGVjayBjb3B5cmVnLmRpc3BhdGNoX3RhYmxlCi0gICAgICAgIHJlZHVjZSA9IGRpc3BhdGNoX3RhYmxlLmdldCh0KQorICAgICAgICAjIENoZWNrIHByaXZhdGUgZGlzcGF0Y2ggdGFibGUgaWYgYW55LCBvciBlbHNlIGNvcHlyZWcuZGlzcGF0Y2hfdGFibGUKKyAgICAgICAgcmVkdWNlID0gZ2V0YXR0cihzZWxmLCAnZGlzcGF0Y2hfdGFibGUnLCBkaXNwYXRjaF90YWJsZSkuZ2V0KHQpCiAgICAgICAgIGlmIHJlZHVjZToKICAgICAgICAgICAgIHJ2ID0gcmVkdWNlKG9iaikKICAgICAgICAgZWxzZToKQEAgLTM3Nyw3ICszNzUsNyBAQAogICAgICAgICAgICAgIyBhbGxvd2luZyBwcm90b2NvbCAwIGFuZCAxIHRvIHdvcmsgbm9ybWFsbHkuICBGb3IgdGhpcyB0bwogICAgICAgICAgICAgIyB3b3JrLCB0aGUgZnVuY3Rpb24gcmV0dXJuZWQgYnkgX19yZWR1Y2VfXyBzaG91bGQgYmUKICAgICAgICAgICAgICMgY2FsbGVkIF9fbmV3b2JqX18sIGFuZCBpdHMgZmlyc3QgYXJndW1lbnQgc2hvdWxkIGJlIGEKLSAgICAgICAgICAgICMgbmV3LXN0eWxlIGNsYXNzLiAgVGhlIGltcGxlbWVudGF0aW9uIGZvciBfX25ld29ial9fCisgICAgICAgICAgICAjIGNsYXNzLiAgVGhlIGltcGxlbWVudGF0aW9uIGZvciBfX25ld29ial9fCiAgICAgICAgICAgICAjIHNob3VsZCBiZSBhcyBmb2xsb3dzLCBhbHRob3VnaCBwaWNrbGUgaGFzIG5vIHdheSB0bwogICAgICAgICAgICAgIyB2ZXJpZnkgdGhpczoKICAgICAgICAgICAgICMKQEAgLTEzMzIsNyArMTMzMCw3IEBACiAgICAgcmV0dXJuIGRvY3Rlc3QudGVzdG1vZCgpCiAKIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6Ci0gICAgaW1wb3J0IHN5cywgYXJncGFyc2UKKyAgICBpbXBvcnQgYXJncGFyc2UKICAgICBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcigKICAgICAgICAgZGVzY3JpcHRpb249J2Rpc3BsYXkgY29udGVudHMgb2YgdGhlIHBpY2tsZSBmaWxlcycpCiAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgKZGlmZiAtLWdpdCBhL0xpYi9waWNrbGV0b29scy5weSBiL0xpYi9waWNrbGV0b29scy5weQppbmRleCBlYzZjYzUzLi42NmY0ZWRkIDEwMDY0NAotLS0gYS9MaWIvcGlja2xldG9vbHMucHkKKysrIGIvTGliL3BpY2tsZXRvb2xzLnB5CkBAIC01MTAsMTAgKzUxMCw3IEBACiAgICAgZWxpZiBzID09IGIiMDEiOgogICAgICAgICByZXR1cm4gVHJ1ZQogCi0gICAgdHJ5OgotICAgICAgICByZXR1cm4gaW50KHMpCi0gICAgZXhjZXB0IE92ZXJmbG93RXJyb3I6Ci0gICAgICAgIHJldHVybiBpbnQocykKKyAgICByZXR1cm4gaW50KHMpCiAKIGRlZiByZWFkX2RlY2ltYWxubF9sb25nKGYpOgogICAgIHIiIiIKQEAgLTE2NDIsNiArMTYzOSw4IEBACiAgICAgICBpcyBwdXNoZWQgb24gdGhlIHN0YWNrLgogCiAgICAgICBOT1RFOiAgY2hlY2tzIGZvciBfX3NhZmVfZm9yX3VucGlja2xpbmdfXyB3ZW50IGF3YXkgaW4gUHl0aG9uIDIuMy4KKyAgICAgIE5PVEU6ICB0aGUgZGlzdGluY3Rpb24gYmV0d2VlbiBvbGQtc3R5bGUgYW5kIG5ldy1zdHlsZSBjbGFzc2VzIGRvZXMKKyAgICAgICAgICAgICBub3QgbWFrZSBzZW5zZSBpbiBQeXRob24gMy4KICAgICAgICIiIiksCiAKICAgICBJKG5hbWU9J09CSicsCmRpZmYgLS1naXQgYS9MaWIvcGlwZXMucHkgYi9MaWIvcGlwZXMucHkKaW5kZXggNDI5NzA1My4uZjFhMTZmNiAxMDA2NDQKLS0tIGEvTGliL3BpcGVzLnB5CisrKyBiL0xpYi9waXBlcy5weQpAQCAtNjAsNyArNjAsOSBAQAogaW1wb3J0IHJlCiBpbXBvcnQgb3MKIGltcG9ydCB0ZW1wZmlsZQotaW1wb3J0IHN0cmluZworIyB3ZSBpbXBvcnQgdGhlIHF1b3RlIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBtb2R1bGUgZm9yIGJhY2t3YXJkIGNvbXBhdAorIyAocXVvdGUgdXNlZCB0byBiZSBhbiB1bmRvY3VtZW50ZWQgYnV0IHVzZWQgZnVuY3Rpb24gaW4gcGlwZXMpCitmcm9tIHNobGV4IGltcG9ydCBxdW90ZQogCiBfX2FsbF9fID0gWyJUZW1wbGF0ZSJdCiAKQEAgLTI0MywyMiArMjQ1LDMgQEAKICAgICAgICAgY21kbGlzdCA9IHRyYXBjbWQgKyAnXG4nICsgY21kbGlzdCArICdcbicgKyBybWNtZAogICAgICMKICAgICByZXR1cm4gY21kbGlzdAotCi0KLSMgUmVsaWFibHkgcXVvdGUgYSBzdHJpbmcgYXMgYSBzaW5nbGUgYXJndW1lbnQgZm9yIC9iaW4vc2gKLQotIyBTYWZlIHVucXVvdGVkCi1fc2FmZWNoYXJzID0gZnJvemVuc2V0KHN0cmluZy5hc2NpaV9sZXR0ZXJzICsgc3RyaW5nLmRpZ2l0cyArICdAJV8tKz06LC4vJykKLQotZGVmIHF1b3RlKGZpbGUpOgotICAgICIiIlJldHVybiBhIHNoZWxsLWVzY2FwZWQgdmVyc2lvbiBvZiB0aGUgZmlsZSBzdHJpbmcuIiIiCi0gICAgZm9yIGMgaW4gZmlsZToKLSAgICAgICAgaWYgYyBub3QgaW4gX3NhZmVjaGFyczoKLSAgICAgICAgICAgIGJyZWFrCi0gICAgZWxzZToKLSAgICAgICAgaWYgbm90IGZpbGU6Ci0gICAgICAgICAgICByZXR1cm4gIicnIgotICAgICAgICByZXR1cm4gZmlsZQotICAgICMgdXNlIHNpbmdsZSBxdW90ZXMsIGFuZCBwdXQgc2luZ2xlIHF1b3RlcyBpbnRvIGRvdWJsZSBxdW90ZXMKLSAgICAjIHRoZSBzdHJpbmcgJCdiIGlzIHRoZW4gcXVvdGVkIGFzICckJyInIidiJwotICAgIHJldHVybiAiJyIgKyBmaWxlLnJlcGxhY2UoIiciLCAiJ1wiJ1wiJyIpICsgIiciCmRpZmYgLS1naXQgYS9MaWIvcGtndXRpbC5weSBiL0xpYi9wa2d1dGlsLnB5CmluZGV4IDUxZGEwYjEuLmVmMDI3YmUgMTAwNjQ0Ci0tLSBhL0xpYi9wa2d1dGlsLnB5CisrKyBiL0xpYi9wa2d1dGlsLnB5CkBAIC0yMSw3ICsyMSw3IEBACiAgICAgaWYgbWFnaWMgIT0gaW1wLmdldF9tYWdpYygpOgogICAgICAgICByZXR1cm4gTm9uZQogCi0gICAgc3RyZWFtLnJlYWQoNCkgIyBTa2lwIHRpbWVzdGFtcAorICAgIHN0cmVhbS5yZWFkKDgpICMgU2tpcCB0aW1lc3RhbXAgYW5kIHNpemUKICAgICByZXR1cm4gbWFyc2hhbC5sb2FkKHN0cmVhbSkKIAogCkBAIC0yNTYsNyArMjU2LDcgQEAKICAgICAgICAgaWYgc2VsZi5maWxlIGFuZCBzZWxmLmZpbGUuY2xvc2VkOgogICAgICAgICAgICAgbW9kX3R5cGUgPSBzZWxmLmV0Y1syXQogICAgICAgICAgICAgaWYgbW9kX3R5cGU9PWltcC5QWV9TT1VSQ0U6Ci0gICAgICAgICAgICAgICAgc2VsZi5maWxlID0gb3BlbihzZWxmLmZpbGVuYW1lLCAnclUnKQorICAgICAgICAgICAgICAgIHNlbGYuZmlsZSA9IG9wZW4oc2VsZi5maWxlbmFtZSwgJ3InKQogICAgICAgICAgICAgZWxpZiBtb2RfdHlwZSBpbiAoaW1wLlBZX0NPTVBJTEVELCBpbXAuQ19FWFRFTlNJT04pOgogICAgICAgICAgICAgICAgIHNlbGYuZmlsZSA9IG9wZW4oc2VsZi5maWxlbmFtZSwgJ3JiJykKIApAQCAtMzAxLDcgKzMwMSw3IEBACiAgICAgICAgICAgICAgICAgICAgIHNlbGYuZmlsZS5jbG9zZSgpCiAgICAgICAgICAgICBlbGlmIG1vZF90eXBlPT1pbXAuUFlfQ09NUElMRUQ6CiAgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoc2VsZi5maWxlbmFtZVs6LTFdKToKLSAgICAgICAgICAgICAgICAgICAgZiA9IG9wZW4oc2VsZi5maWxlbmFtZVs6LTFdLCAnclUnKQorICAgICAgICAgICAgICAgICAgICBmID0gb3BlbihzZWxmLmZpbGVuYW1lWzotMV0sICdyJykKICAgICAgICAgICAgICAgICAgICAgc2VsZi5zb3VyY2UgPSBmLnJlYWQoKQogICAgICAgICAgICAgICAgICAgICBmLmNsb3NlKCkKICAgICAgICAgICAgIGVsaWYgbW9kX3R5cGU9PWltcC5QS0dfRElSRUNUT1JZOgpAQCAtMzE1LDkgKzMxNSw5IEBACiAgICAgZGVmIGdldF9maWxlbmFtZShzZWxmLCBmdWxsbmFtZT1Ob25lKToKICAgICAgICAgZnVsbG5hbWUgPSBzZWxmLl9maXhfbmFtZShmdWxsbmFtZSkKICAgICAgICAgbW9kX3R5cGUgPSBzZWxmLmV0Y1syXQotICAgICAgICBpZiBzZWxmLmV0Y1syXT09aW1wLlBLR19ESVJFQ1RPUlk6CisgICAgICAgIGlmIG1vZF90eXBlPT1pbXAuUEtHX0RJUkVDVE9SWToKICAgICAgICAgICAgIHJldHVybiBzZWxmLl9nZXRfZGVsZWdhdGUoKS5nZXRfZmlsZW5hbWUoKQotICAgICAgICBlbGlmIHNlbGYuZXRjWzJdIGluIChpbXAuUFlfU09VUkNFLCBpbXAuUFlfQ09NUElMRUQsIGltcC5DX0VYVEVOU0lPTik6CisgICAgICAgIGVsaWYgbW9kX3R5cGUgaW4gKGltcC5QWV9TT1VSQ0UsIGltcC5QWV9DT01QSUxFRCwgaW1wLkNfRVhURU5TSU9OKToKICAgICAgICAgICAgIHJldHVybiBzZWxmLmZpbGVuYW1lCiAgICAgICAgIHJldHVybiBOb25lCiAKZGlmZiAtLWdpdCBhL0xpYi9wbGF0LWxpbnV4Mi9DRFJPTS5weSBiL0xpYi9wbGF0LWxpbnV4L0NEUk9NLnB5CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvcGxhdC1saW51eDIvQ0RST00ucHkKcmVuYW1lIHRvIExpYi9wbGF0LWxpbnV4L0NEUk9NLnB5CmRpZmYgLS1naXQgYS9MaWIvcGxhdC1saW51eDIvRExGQ04ucHkgYi9MaWIvcGxhdC1saW51eC9ETEZDTi5weQpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL3BsYXQtbGludXgyL0RMRkNOLnB5CnJlbmFtZSB0byBMaWIvcGxhdC1saW51eC9ETEZDTi5weQpkaWZmIC0tZ2l0IGEvTGliL3BsYXQtbGludXgyL0lOLnB5IGIvTGliL3BsYXQtbGludXgvSU4ucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9wbGF0LWxpbnV4Mi9JTi5weQpyZW5hbWUgdG8gTGliL3BsYXQtbGludXgvSU4ucHkKZGlmZiAtLWdpdCBhL0xpYi9wbGF0LWxpbnV4Mi9UWVBFUy5weSBiL0xpYi9wbGF0LWxpbnV4L1RZUEVTLnB5CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvcGxhdC1saW51eDIvVFlQRVMucHkKcmVuYW1lIHRvIExpYi9wbGF0LWxpbnV4L1RZUEVTLnB5CmRpZmYgLS1naXQgYS9MaWIvcGxhdC1saW51eDIvcmVnZW4gYi9MaWIvcGxhdC1saW51eC9yZWdlbgpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL3BsYXQtbGludXgyL3JlZ2VuCnJlbmFtZSB0byBMaWIvcGxhdC1saW51eC9yZWdlbgpkaWZmIC0tZ2l0IGEvTGliL3BsYXRmb3JtLnB5IGIvTGliL3BsYXRmb3JtLnB5CmluZGV4IDk4NWE5ZjguLjQ1NTQ2NTkgMTAwNzU1Ci0tLSBhL0xpYi9wbGF0Zm9ybS5weQorKysgYi9MaWIvcGxhdGZvcm0ucHkKQEAgLTEzMCwxNSArMTMwLDE1IEBACiAKICMjIyBQbGF0Zm9ybSBzcGVjaWZpYyBBUElzCiAKLV9saWJjX3NlYXJjaCA9IHJlLmNvbXBpbGUocicoX19saWJjX2luaXQpJwotICAgICAgICAgICAgICAgICAgICAgICAgICAnfCcKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJyhHTElCQ18oWzAtOS5dKykpJwotICAgICAgICAgICAgICAgICAgICAgICAgICAnfCcKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJyhsaWJjKF9cdyspP1wuc28oPzpcLihcZFswLTkuXSopKT8pJywgcmUuQVNDSUkpCitfbGliY19zZWFyY2ggPSByZS5jb21waWxlKGInKF9fbGliY19pbml0KScKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYid8JworICAgICAgICAgICAgICAgICAgICAgICAgICBiJyhHTElCQ18oWzAtOS5dKykpJworICAgICAgICAgICAgICAgICAgICAgICAgICBiJ3wnCisgICAgICAgICAgICAgICAgICAgICAgICAgIGJyJyhsaWJjKF9cdyspP1wuc28oPzpcLihcZFswLTkuXSopKT8pJywgcmUuQVNDSUkpCiAKIGRlZiBsaWJjX3ZlcihleGVjdXRhYmxlPXN5cy5leGVjdXRhYmxlLGxpYj0nJyx2ZXJzaW9uPScnLAogCi0gICAgICAgICAgICAgY2h1bmtzaXplPTIwNDgpOgorICAgICAgICAgICAgIGNodW5rc2l6ZT0xNjM4NCk6CiAKICAgICAiIiIgVHJpZXMgdG8gZGV0ZXJtaW5lIHRoZSBsaWJjIHZlcnNpb24gdGhhdCB0aGUgZmlsZSBleGVjdXRhYmxlCiAgICAgICAgICh3aGljaCBkZWZhdWx0cyB0byB0aGUgUHl0aG9uIGludGVycHJldGVyKSBpcyBsaW5rZWQgYWdhaW5zdC4KQEAgLTE1OSwxNyArMTU5LDIyIEBACiAgICAgICAgICMgYWJsZSB0byBvcGVuIHN5bWxpbmtzIGZvciByZWFkaW5nCiAgICAgICAgIGV4ZWN1dGFibGUgPSBvcy5wYXRoLnJlYWxwYXRoKGV4ZWN1dGFibGUpCiAgICAgZiA9IG9wZW4oZXhlY3V0YWJsZSwncmInKQotICAgIGJpbmFyeSA9IGYucmVhZChjaHVua3NpemUpLmRlY29kZSgnbGF0aW4tMScpCisgICAgYmluYXJ5ID0gZi5yZWFkKGNodW5rc2l6ZSkKICAgICBwb3MgPSAwCiAgICAgd2hpbGUgMToKLSAgICAgICAgbSA9IF9saWJjX3NlYXJjaC5zZWFyY2goYmluYXJ5LHBvcykKKyAgICAgICAgaWYgYidsaWJjJyBpbiBiaW5hcnkgb3IgYidHTElCQycgaW4gYmluYXJ5OgorICAgICAgICAgICAgbSA9IF9saWJjX3NlYXJjaC5zZWFyY2goYmluYXJ5LHBvcykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG0gPSBOb25lCiAgICAgICAgIGlmIG5vdCBtOgotICAgICAgICAgICAgYmluYXJ5ID0gZi5yZWFkKGNodW5rc2l6ZSkuZGVjb2RlKCdsYXRpbi0xJykKKyAgICAgICAgICAgIGJpbmFyeSA9IGYucmVhZChjaHVua3NpemUpCiAgICAgICAgICAgICBpZiBub3QgYmluYXJ5OgogICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICBwb3MgPSAwCiAgICAgICAgICAgICBjb250aW51ZQotICAgICAgICBsaWJjaW5pdCxnbGliYyxnbGliY3ZlcnNpb24sc28sdGhyZWFkcyxzb3ZlcnNpb24gPSBtLmdyb3VwcygpCisgICAgICAgIGxpYmNpbml0LGdsaWJjLGdsaWJjdmVyc2lvbixzbyx0aHJlYWRzLHNvdmVyc2lvbiA9IFsKKyAgICAgICAgICAgIHMuZGVjb2RlKCdsYXRpbjEnKSBpZiBzIGlzIG5vdCBOb25lIGVsc2UgcworICAgICAgICAgICAgZm9yIHMgaW4gbS5ncm91cHMoKV0KICAgICAgICAgaWYgbGliY2luaXQgYW5kIG5vdCBsaWI6CiAgICAgICAgICAgICBsaWIgPSAnbGliYycKICAgICAgICAgZWxpZiBnbGliYzoKQEAgLTM1Nyw5MiArMzYyLDEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0ZWRfZGlzdHM9c3VwcG9ydGVkX2Rpc3RzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbF9kaXN0cmlidXRpb25fbmFtZT0wKQogCi1jbGFzcyBfcG9wZW46Ci0KLSAgICAiIiIgRmFpcmx5IHBvcnRhYmxlIChhbHRlcm5hdGl2ZSkgcG9wZW4gaW1wbGVtZW50YXRpb24uCi0KLSAgICAgICAgVGhpcyBpcyBtb3N0bHkgbmVlZGVkIGluIGNhc2Ugb3MucG9wZW4oKSBpcyBub3QgYXZhaWxhYmxlLCBvcgotICAgICAgICBkb2Vzbid0IHdvcmsgYXMgYWR2ZXJ0aXNlZCwgZS5nLiBpbiBXaW45WCBHVUkgcHJvZ3JhbXMgbGlrZQotICAgICAgICBQeXRob25XaW4gb3IgSURMRS4KLQotICAgICAgICBXcml0aW5nIHRvIHRoZSBwaXBlIGlzIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkLgotCi0gICAgIiIiCi0gICAgdG1wZmlsZSA9ICcnCi0gICAgcGlwZSA9IE5vbmUKLSAgICBidWZzaXplID0gTm9uZQotICAgIG1vZGUgPSAncicKLQotICAgIGRlZiBfX2luaXRfXyhzZWxmLGNtZCxtb2RlPSdyJyxidWZzaXplPU5vbmUpOgotCi0gICAgICAgIGlmIG1vZGUgIT0gJ3InOgotICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigncG9wZW4oKS1lbXVsYXRpb24gb25seSBzdXBwb3J0cyByZWFkIG1vZGUnKQotICAgICAgICBpbXBvcnQgdGVtcGZpbGUKLSAgICAgICAgc2VsZi50bXBmaWxlID0gdG1wZmlsZSA9IHRlbXBmaWxlLm1rdGVtcCgpCi0gICAgICAgIG9zLnN5c3RlbShjbWQgKyAnID4gJXMnICUgdG1wZmlsZSkKLSAgICAgICAgc2VsZi5waXBlID0gb3Blbih0bXBmaWxlLCdyYicpCi0gICAgICAgIHNlbGYuYnVmc2l6ZSA9IGJ1ZnNpemUKLSAgICAgICAgc2VsZi5tb2RlID0gbW9kZQotCi0gICAgZGVmIHJlYWQoc2VsZik6Ci0KLSAgICAgICAgcmV0dXJuIHNlbGYucGlwZS5yZWFkKCkKLQotICAgIGRlZiByZWFkbGluZXMoc2VsZik6Ci0KLSAgICAgICAgaWYgc2VsZi5idWZzaXplIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgcmV0dXJuIHNlbGYucGlwZS5yZWFkbGluZXMoKQotCi0gICAgZGVmIGNsb3NlKHNlbGYsCi0KLSAgICAgICAgICAgICAgcmVtb3ZlPW9zLnVubGluayxlcnJvcj1vcy5lcnJvcik6Ci0KLSAgICAgICAgaWYgc2VsZi5waXBlOgotICAgICAgICAgICAgcmMgPSBzZWxmLnBpcGUuY2xvc2UoKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcmMgPSAyNTUKLSAgICAgICAgaWYgc2VsZi50bXBmaWxlOgotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHJlbW92ZShzZWxmLnRtcGZpbGUpCi0gICAgICAgICAgICBleGNlcHQgZXJyb3I6Ci0gICAgICAgICAgICAgICAgcGFzcwotICAgICAgICByZXR1cm4gcmMKLQotICAgICMgQWxpYXMKLSAgICBfX2RlbF9fID0gY2xvc2UKLQogZGVmIHBvcGVuKGNtZCwgbW9kZT0ncicsIGJ1ZnNpemU9LTEpOgogCiAgICAgIiIiIFBvcnRhYmxlIHBvcGVuKCkgaW50ZXJmYWNlLgogICAgICIiIgotICAgICMgRmluZCBhIHdvcmtpbmcgcG9wZW4gaW1wbGVtZW50YXRpb24gcHJlZmVycmluZyB3aW4zMnBpcGUucG9wZW4KLSAgICAjIG92ZXIgb3MucG9wZW4gb3ZlciBfcG9wZW4KLSAgICBwb3BlbiA9IE5vbmUKLSAgICBpZiBvcy5lbnZpcm9uLmdldCgnT1MnLCcnKSA9PSAnV2luZG93c19OVCc6Ci0gICAgICAgICMgT24gTlQgd2luMzJwaXBlIHNob3VsZCB3b3JrOyBvbiBXaW45eCBpdCBoYW5ncyBkdWUgdG8gYnVncwotICAgICAgICAjIGluIHRoZSBNUyBDIGxpYiAoc2VlIE1TIEtub3dsZWRnZUJhc2UgYXJ0aWNsZSBRMTUwOTU2KQotICAgICAgICB0cnk6Ci0gICAgICAgICAgICBpbXBvcnQgd2luMzJwaXBlCi0gICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICAgICAgICAgIHBhc3MKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHBvcGVuID0gd2luMzJwaXBlLnBvcGVuCi0gICAgaWYgcG9wZW4gaXMgTm9uZToKLSAgICAgICAgaWYgaGFzYXR0cihvcywncG9wZW4nKToKLSAgICAgICAgICAgIHBvcGVuID0gb3MucG9wZW4KLSAgICAgICAgICAgICMgQ2hlY2sgd2hldGhlciBpdCB3b3Jrcy4uLiBpdCBkb2Vzbid0IGluIEdVSSBwcm9ncmFtcwotICAgICAgICAgICAgIyBvbiBXaW5kb3dzIHBsYXRmb3JtcwotICAgICAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6ICMgWFhYIE90aGVycyB0b28gPwotICAgICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICAgICAgcG9wZW4oJycpCi0gICAgICAgICAgICAgICAgZXhjZXB0IG9zLmVycm9yOgotICAgICAgICAgICAgICAgICAgICBwb3BlbiA9IF9wb3BlbgotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcG9wZW4gPSBfcG9wZW4KLSAgICBpZiBidWZzaXplIGlzIE5vbmU6Ci0gICAgICAgIHJldHVybiBwb3BlbihjbWQsbW9kZSkKLSAgICBlbHNlOgotICAgICAgICByZXR1cm4gcG9wZW4oY21kLG1vZGUsYnVmc2l6ZSkKKyAgICBpbXBvcnQgd2FybmluZ3MKKyAgICB3YXJuaW5ncy53YXJuKCd1c2Ugb3MucG9wZW4gaW5zdGVhZCcsIERlcHJlY2F0aW9uV2FybmluZywgc3RhY2tsZXZlbD0yKQorICAgIHJldHVybiBvcy5wb3BlbihjbWQsIG1vZGUsIGJ1ZnNpemUpCiAKIGRlZiBfbm9ybV92ZXJzaW9uKHZlcnNpb24sIGJ1aWxkPScnKToKIApkaWZmIC0tZ2l0IGEvTGliL3BsaXN0bGliLnB5IGIvTGliL3BsaXN0bGliLnB5CmluZGV4IDJlN2U1MTIuLjIxMDc2ZGIgMTAwNjQ0Ci0tLSBhL0xpYi9wbGlzdGxpYi5weQorKysgYi9MaWIvcGxpc3RsaWIucHkKQEAgLTI2NiwxMyArMjY2LDEzIEBACiAgICAgICAgICAgICByYWlzZSBBdHRyaWJ1dGVFcnJvcihhdHRyKQogICAgICAgICBmcm9tIHdhcm5pbmdzIGltcG9ydCB3YXJuCiAgICAgICAgIHdhcm4oIkF0dHJpYnV0ZSBhY2Nlc3MgZnJvbSBwbGlzdCBkaWN0cyBpcyBkZXByZWNhdGVkLCB1c2UgZFtrZXldICIKLSAgICAgICAgICAgICAibm90YXRpb24gaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAgIm5vdGF0aW9uIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHJldHVybiB2YWx1ZQogCiAgICAgZGVmIF9fc2V0YXR0cl9fKHNlbGYsIGF0dHIsIHZhbHVlKToKICAgICAgICAgZnJvbSB3YXJuaW5ncyBpbXBvcnQgd2FybgogICAgICAgICB3YXJuKCJBdHRyaWJ1dGUgYWNjZXNzIGZyb20gcGxpc3QgZGljdHMgaXMgZGVwcmVjYXRlZCwgdXNlIGRba2V5XSAiCi0gICAgICAgICAgICAgIm5vdGF0aW9uIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgICJub3RhdGlvbiBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBzZWxmW2F0dHJdID0gdmFsdWUKIAogICAgIGRlZiBfX2RlbGF0dHJfXyhzZWxmLCBhdHRyKToKQEAgLTI4MiwxNCArMjgyLDE0IEBACiAgICAgICAgICAgICByYWlzZSBBdHRyaWJ1dGVFcnJvcihhdHRyKQogICAgICAgICBmcm9tIHdhcm5pbmdzIGltcG9ydCB3YXJuCiAgICAgICAgIHdhcm4oIkF0dHJpYnV0ZSBhY2Nlc3MgZnJvbSBwbGlzdCBkaWN0cyBpcyBkZXByZWNhdGVkLCB1c2UgZFtrZXldICIKLSAgICAgICAgICAgICAibm90YXRpb24gaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAgIm5vdGF0aW9uIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAKIGNsYXNzIERpY3QoX0ludGVybmFsRGljdCk6CiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgogICAgICAgICBmcm9tIHdhcm5pbmdzIGltcG9ydCB3YXJuCiAgICAgICAgIHdhcm4oIlRoZSBwbGlzdGxpYi5EaWN0IGNsYXNzIGlzIGRlcHJlY2F0ZWQsIHVzZSBidWlsdGluIGRpY3QgaW5zdGVhZCIsCi0gICAgICAgICAgICAgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHN1cGVyKCkuX19pbml0X18oKiprd2FyZ3MpCiAKIApAQCAtMzAyLDcgKzMwMiw3IEBACiAgICAgZGVmIF9faW5pdF9fKHNlbGYsICoqa3dhcmdzKToKICAgICAgICAgZnJvbSB3YXJuaW5ncyBpbXBvcnQgd2FybgogICAgICAgICB3YXJuKCJUaGUgUGxpc3QgY2xhc3MgaXMgZGVwcmVjYXRlZCwgdXNlIHRoZSByZWFkUGxpc3QoKSBhbmQgIgotICAgICAgICAgICAgICJ3cml0ZVBsaXN0KCkgZnVuY3Rpb25zIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgICJ3cml0ZVBsaXN0KCkgZnVuY3Rpb25zIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHN1cGVyKCkuX19pbml0X18oKiprd2FyZ3MpCiAKICAgICBkZWYgZnJvbUZpbGUoY2xzLCBwYXRoT3JGaWxlKToKZGlmZiAtLWdpdCBhL0xpYi9wb3BsaWIucHkgYi9MaWIvcG9wbGliLnB5CmluZGV4IDg0ZWE4OGQuLmQ0MmQ5ZGQgMTAwNjQ0Ci0tLSBhL0xpYi9wb3BsaWIucHkKKysrIGIvTGliL3BvcGxpYi5weQpAQCAtMjUwLDE1ICsyNTAsMTggQEAKIAogICAgIGRlZiBxdWl0KHNlbGYpOgogICAgICAgICAiIiJTaWdub2ZmOiBjb21taXQgY2hhbmdlcyBvbiBzZXJ2ZXIsIHVubG9jayBtYWlsYm94LCBjbG9zZSBjb25uZWN0aW9uLiIiIgotICAgICAgICB0cnk6Ci0gICAgICAgICAgICByZXNwID0gc2VsZi5fc2hvcnRjbWQoJ1FVSVQnKQotICAgICAgICBleGNlcHQgZXJyb3JfcHJvdG8gYXMgdmFsOgotICAgICAgICAgICAgcmVzcCA9IHZhbAotICAgICAgICBzZWxmLmZpbGUuY2xvc2UoKQotICAgICAgICBzZWxmLnNvY2suY2xvc2UoKQotICAgICAgICBkZWwgc2VsZi5maWxlLCBzZWxmLnNvY2sKKyAgICAgICAgcmVzcCA9IHNlbGYuX3Nob3J0Y21kKCdRVUlUJykKKyAgICAgICAgc2VsZi5jbG9zZSgpCiAgICAgICAgIHJldHVybiByZXNwCiAKKyAgICBkZWYgY2xvc2Uoc2VsZik6CisgICAgICAgICIiIkNsb3NlIHRoZSBjb25uZWN0aW9uIHdpdGhvdXQgYXNzdW1pbmcgYW55dGhpbmcgYWJvdXQgaXQuIiIiCisgICAgICAgIGlmIHNlbGYuZmlsZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuZmlsZS5jbG9zZSgpCisgICAgICAgIGlmIHNlbGYuc29jayBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuc29jay5jbG9zZSgpCisgICAgICAgIHNlbGYuZmlsZSA9IHNlbGYuc29jayA9IE5vbmUKKwogICAgICNfX2RlbF9fID0gcXVpdAogCiAKZGlmZiAtLWdpdCBhL0xpYi9wc3RhdHMucHkgYi9MaWIvcHN0YXRzLnB5CmluZGV4IDNmMGFkZDIuLjMzNGQ3MTcgMTAwNjQ0Ci0tLSBhL0xpYi9wc3RhdHMucHkKKysrIGIvTGliL3BzdGF0cy5weQpAQCAtNjc0LDcgKzY3NCw2IEBACiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0b3AKICAgICAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICBpbXBvcnQgc3lzCiAgICAgaWYgbGVuKHN5cy5hcmd2KSA+IDE6CiAgICAgICAgIGluaXRwcm9maWxlID0gc3lzLmFyZ3ZbMV0KICAgICBlbHNlOgpkaWZmIC0tZ2l0IGEvTGliL3B5X2NvbXBpbGUucHkgYi9MaWIvcHlfY29tcGlsZS5weQppbmRleCA1YWRiNzBhLi42MmQ2OWFkIDEwMDY0NAotLS0gYS9MaWIvcHlfY29tcGlsZS5weQorKysgYi9MaWIvcHlfY29tcGlsZS5weQpAQCAtMTEwLDkgKzExMCwxMSBAQAogICAgICIiIgogICAgIHdpdGggdG9rZW5pemUub3BlbihmaWxlKSBhcyBmOgogICAgICAgICB0cnk6Ci0gICAgICAgICAgICB0aW1lc3RhbXAgPSBpbnQob3MuZnN0YXQoZi5maWxlbm8oKSkuc3RfbXRpbWUpCisgICAgICAgICAgICBzdCA9IG9zLmZzdGF0KGYuZmlsZW5vKCkpCiAgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKLSAgICAgICAgICAgIHRpbWVzdGFtcCA9IGludChvcy5zdGF0KGZpbGUpLnN0X210aW1lKQorICAgICAgICAgICAgc3QgPSBvcy5zdGF0KGZpbGUpCisgICAgICAgIHRpbWVzdGFtcCA9IGludChzdC5zdF9tdGltZSkKKyAgICAgICAgc2l6ZSA9IHN0LnN0X3NpemUgJiAweEZGRkZGRkZGCiAgICAgICAgIGNvZGVzdHJpbmcgPSBmLnJlYWQoKQogICAgIHRyeToKICAgICAgICAgY29kZW9iamVjdCA9IGJ1aWx0aW5zLmNvbXBpbGUoY29kZXN0cmluZywgZGZpbGUgb3IgZmlsZSwgJ2V4ZWMnLApAQCAtMTM5LDYgKzE0MSw3IEBACiAgICAgd2l0aCBvcGVuKGNmaWxlLCAnd2InKSBhcyBmYzoKICAgICAgICAgZmMud3JpdGUoYidcMFwwXDBcMCcpCiAgICAgICAgIHdyX2xvbmcoZmMsIHRpbWVzdGFtcCkKKyAgICAgICAgd3JfbG9uZyhmYywgc2l6ZSkKICAgICAgICAgbWFyc2hhbC5kdW1wKGNvZGVvYmplY3QsIGZjKQogICAgICAgICBmYy5mbHVzaCgpCiAgICAgICAgIGZjLnNlZWsoMCwgMCkKZGlmZiAtLWdpdCBhL0xpYi9weWRvYy5weSBiL0xpYi9weWRvYy5weQppbmRleCBmNDVkNDYxLi41OTE3MTdiIDEwMDc1NQotLS0gYS9MaWIvcHlkb2MucHkKKysrIGIvTGliL3B5ZG9jLnB5CkBAIC0yMiwxMSArMjIsNiBAQAogb3BlbiBhIFdlYiBicm93c2VyIHRvIGludGVyYWN0aXZlbHkgYnJvd3NlIGRvY3VtZW50YXRpb24uICBUaGUgLXAgb3B0aW9uCiBjYW4gYmUgdXNlZCB3aXRoIHRoZSAtYiBvcHRpb24gdG8gZXhwbGljaXRseSBzcGVjaWZ5IHRoZSBzZXJ2ZXIgcG9ydC4KIAotRm9yIHBsYXRmb3JtcyB3aXRob3V0IGEgY29tbWFuZCBsaW5lLCAicHlkb2MgLWciIHN0YXJ0cyB0aGUgSFRUUCBzZXJ2ZXIKLWFuZCBhbHNvIHBvcHMgdXAgYSBsaXR0bGUgd2luZG93IGZvciBjb250cm9sbGluZyBpdC4gIFRoaXMgb3B0aW9uIGlzCi1kZXByZWNhdGVkLCBzaW5jZSB0aGUgc2VydmVyIGNhbiBub3cgYmUgY29udHJvbGxlZCBkaXJlY3RseSBmcm9tIEhUVFAKLWNsaWVudHMuCi0KIFJ1biAicHlkb2MgLXcgPG5hbWU+IiB0byB3cml0ZSBvdXQgdGhlIEhUTUwgZG9jdW1lbnRhdGlvbiBmb3IgYSBtb2R1bGUKIHRvIGEgZmlsZSBuYW1lZCAiPG5hbWU+Lmh0bWwiLgogCkBAIC00Miw3ICszNyw2IEBACiBfX2F1dGhvcl9fID0gIkthLVBpbmcgWWVlIDxwaW5nQGxmdy5vcmc+IgogX19kYXRlX18gPSAiMjYgRmVicnVhcnkgMjAwMSIKIAotX192ZXJzaW9uX18gPSAiJFJldmlzaW9uJCIKIF9fY3JlZGl0c19fID0gIiIiR3VpZG8gdmFuIFJvc3N1bSwgZm9yIGFuIGV4Y2VsbGVudCBwcm9ncmFtbWluZyBsYW5ndWFnZS4KIFRvbW15IEJ1cm5ldHRlLCB0aGUgb3JpZ2luYWwgY3JlYXRvciBvZiBtYW5weS4KIFBhdWwgUHJlc2NvZCwgZm9yIGFsbCBoaXMgd29yayBvbiBvbmxpbmVoZWxwLgpAQCAtMTY5LDExICsxNjMsMTEgQEAKIGRlZiB2aXNpYmxlbmFtZShuYW1lLCBhbGw9Tm9uZSwgb2JqPU5vbmUpOgogICAgICIiIkRlY2lkZSB3aGV0aGVyIHRvIHNob3cgZG9jdW1lbnRhdGlvbiBvbiBhIHZhcmlhYmxlLiIiIgogICAgICMgQ2VydGFpbiBzcGVjaWFsIG5hbWVzIGFyZSByZWR1bmRhbnQuCi0gICAgX2hpZGRlbl9uYW1lcyA9ICgnX19idWlsdGluc19fJywgJ19fZG9jX18nLCAnX19maWxlX18nLCAnX19wYXRoX18nLAorICAgIGlmIG5hbWUgaW4geydfX2J1aWx0aW5zX18nLCAnX19kb2NfXycsICdfX2ZpbGVfXycsICdfX3BhdGhfXycsCiAgICAgICAgICAgICAgICAgICAgICAnX19tb2R1bGVfXycsICdfX25hbWVfXycsICdfX3Nsb3RzX18nLCAnX19wYWNrYWdlX18nLAogICAgICAgICAgICAgICAgICAgICAgJ19fY2FjaGVkX18nLCAnX19hdXRob3JfXycsICdfX2NyZWRpdHNfXycsICdfX2RhdGVfXycsCi0gICAgICAgICAgICAgICAgICAgICAnX192ZXJzaW9uX18nKQotICAgIGlmIG5hbWUgaW4gX2hpZGRlbl9uYW1lczogcmV0dXJuIDAKKyAgICAgICAgICAgICAgICAgICAgICdfX3ZlcnNpb25fXycsICdfX3F1YWxuYW1lX18nfToKKyAgICAgICAgcmV0dXJuIDAKICAgICAjIFByaXZhdGUgbmFtZXMgYXJlIGhpZGRlbiwgYnV0IHNwZWNpYWwgbmFtZXMgYXJlIGRpc3BsYXllZC4KICAgICBpZiBuYW1lLnN0YXJ0c3dpdGgoJ19fJykgYW5kIG5hbWUuZW5kc3dpdGgoJ19fJyk6IHJldHVybiAxCiAgICAgIyBOYW1lZHR1cGxlcyBoYXZlIHB1YmxpYyBmaWVsZHMgYW5kIG1ldGhvZHMgd2l0aCBhIHNpbmdsZSBsZWFkaW5nIHVuZGVyc2NvcmUKQEAgLTk2Myw2ICs5NTcsOSBAQAogICAgICAgICBtb2Rwa2dzID0gW10KICAgICAgICAgaWYgc2hhZG93ZWQgaXMgTm9uZTogc2hhZG93ZWQgPSB7fQogICAgICAgICBmb3IgaW1wb3J0ZXIsIG5hbWUsIGlzcGtnIGluIHBrZ3V0aWwuaXRlcl9tb2R1bGVzKFtkaXJdKToKKyAgICAgICAgICAgIGlmIGFueSgoMHhEODAwIDw9IG9yZChjaCkgPD0gMHhERkZGKSBmb3IgY2ggaW4gbmFtZSk6CisgICAgICAgICAgICAgICAgIyBpZ25vcmUgYSBtb2R1bGUgaWYgaXRzIG5hbWUgY29udGFpbnMgYSBzdXJyb2dhdGUgY2hhcmFjdGVyCisgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgIG1vZHBrZ3MuYXBwZW5kKChuYW1lLCAnJywgaXNwa2csIG5hbWUgaW4gc2hhZG93ZWQpKQogICAgICAgICAgICAgc2hhZG93ZWRbbmFtZV0gPSAxCiAKQEAgLTIwNzMsMjcyICsyMDcwLDYgQEAKICAgICAgICAgd2FybmluZ3MuZmlsdGVyd2FybmluZ3MoJ2lnbm9yZScpICMgaWdub3JlIHByb2JsZW1zIGR1cmluZyBpbXBvcnQKICAgICAgICAgTW9kdWxlU2Nhbm5lcigpLnJ1bihjYWxsYmFjaywga2V5LCBvbmVycm9yPW9uZXJyb3IpCiAKLSMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFdlYiBicm93c2VyIGludGVyZmFjZQotCi1kZWYgc2VydmUocG9ydCwgY2FsbGJhY2s9Tm9uZSwgY29tcGxldGVyPU5vbmUpOgotICAgIGltcG9ydCBodHRwLnNlcnZlciwgZW1haWwubWVzc2FnZSwgc2VsZWN0Ci0KLSAgICBtc2cgPSAndGhlIHB5ZG9jLnNlcnZlKCkgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCcKLSAgICB3YXJuaW5ncy53YXJuKG1zZywgRGVwcmVjYXRpb25XYXJuaW5nLCBzdGFja2xldmVsPTIpCi0KLSAgICBjbGFzcyBEb2NIYW5kbGVyKGh0dHAuc2VydmVyLkJhc2VIVFRQUmVxdWVzdEhhbmRsZXIpOgotICAgICAgICBkZWYgc2VuZF9kb2N1bWVudChzZWxmLCB0aXRsZSwgY29udGVudHMpOgotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHNlbGYuc2VuZF9yZXNwb25zZSgyMDApCi0gICAgICAgICAgICAgICAgc2VsZi5zZW5kX2hlYWRlcignQ29udGVudC1UeXBlJywgJ3RleHQvaHRtbDsgY2hhcnNldD1VVEYtOCcpCi0gICAgICAgICAgICAgICAgc2VsZi5lbmRfaGVhZGVycygpCi0gICAgICAgICAgICAgICAgc2VsZi53ZmlsZS53cml0ZShodG1sLnBhZ2UodGl0bGUsIGNvbnRlbnRzKS5lbmNvZGUoJ3V0Zi04JykpCi0gICAgICAgICAgICBleGNlcHQgSU9FcnJvcjogcGFzcwotCi0gICAgICAgIGRlZiBkb19HRVQoc2VsZik6Ci0gICAgICAgICAgICBwYXRoID0gc2VsZi5wYXRoCi0gICAgICAgICAgICBpZiBwYXRoWy01Ol0gPT0gJy5odG1sJzogcGF0aCA9IHBhdGhbOi01XQotICAgICAgICAgICAgaWYgcGF0aFs6MV0gPT0gJy8nOiBwYXRoID0gcGF0aFsxOl0KLSAgICAgICAgICAgIGlmIHBhdGggYW5kIHBhdGggIT0gJy4nOgotICAgICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICAgICAgb2JqID0gbG9jYXRlKHBhdGgsIGZvcmNlbG9hZD0xKQotICAgICAgICAgICAgICAgIGV4Y2VwdCBFcnJvckR1cmluZ0ltcG9ydCBhcyB2YWx1ZToKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5zZW5kX2RvY3VtZW50KHBhdGgsIGh0bWwuZXNjYXBlKHN0cih2YWx1ZSkpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4KLSAgICAgICAgICAgICAgICBpZiBvYmo6Ci0gICAgICAgICAgICAgICAgICAgIHNlbGYuc2VuZF9kb2N1bWVudChkZXNjcmliZShvYmopLCBodG1sLmRvY3VtZW50KG9iaiwgcGF0aCkpCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5zZW5kX2RvY3VtZW50KHBhdGgsCi0nbm8gUHl0aG9uIGRvY3VtZW50YXRpb24gZm91bmQgZm9yICVzJyAlIHJlcHIocGF0aCkpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGhlYWRpbmcgPSBodG1sLmhlYWRpbmcoCi0nPGJpZz48YmlnPjxzdHJvbmc+UHl0aG9uOiBJbmRleCBvZiBNb2R1bGVzPC9zdHJvbmc+PC9iaWc+PC9iaWc+JywKLScjZmZmZmZmJywgJyM3Nzk5ZWUnKQotICAgICAgICAgICAgICAgIGRlZiBibHRpbmxpbmsobmFtZSk6Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiAnPGEgaHJlZj0iJXMuaHRtbCI+JXM8L2E+JyAlIChuYW1lLCBuYW1lKQotICAgICAgICAgICAgICAgIG5hbWVzID0gW3ggZm9yIHggaW4gc3lzLmJ1aWx0aW5fbW9kdWxlX25hbWVzIGlmIHggIT0gJ19fbWFpbl9fJ10KLSAgICAgICAgICAgICAgICBjb250ZW50cyA9IGh0bWwubXVsdGljb2x1bW4obmFtZXMsIGJsdGlubGluaykKLSAgICAgICAgICAgICAgICBpbmRpY2VzID0gWyc8cD4nICsgaHRtbC5iaWdzZWN0aW9uKAotICAgICAgICAgICAgICAgICAgICAnQnVpbHQtaW4gTW9kdWxlcycsICcjZmZmZmZmJywgJyNlZTc3YWEnLCBjb250ZW50cyldCi0KLSAgICAgICAgICAgICAgICBzZWVuID0ge30KLSAgICAgICAgICAgICAgICBmb3IgZGlyIGluIHN5cy5wYXRoOgotICAgICAgICAgICAgICAgICAgICBpbmRpY2VzLmFwcGVuZChodG1sLmluZGV4KGRpciwgc2VlbikpCi0gICAgICAgICAgICAgICAgY29udGVudHMgPSBoZWFkaW5nICsgJyAnLmpvaW4oaW5kaWNlcykgKyAnJyc8cCBhbGlnbj1yaWdodD4KLTxmb250IGNvbG9yPSIjOTA5MDkwIiBmYWNlPSJoZWx2ZXRpY2EsIGFyaWFsIj48c3Ryb25nPgotcHlkb2M8L3N0cm9uZz4gYnkgS2EtUGluZyBZZWUgJmx0O3BpbmdAbGZ3Lm9yZyZndDs8L2ZvbnQ+JycnCi0gICAgICAgICAgICAgICAgc2VsZi5zZW5kX2RvY3VtZW50KCdJbmRleCBvZiBNb2R1bGVzJywgY29udGVudHMpCi0KLSAgICAgICAgZGVmIGxvZ19tZXNzYWdlKHNlbGYsICphcmdzKTogcGFzcwotCi0gICAgY2xhc3MgRG9jU2VydmVyKGh0dHAuc2VydmVyLkhUVFBTZXJ2ZXIpOgotICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgcG9ydCwgY2FsbGJhY2spOgotICAgICAgICAgICAgaG9zdCA9ICdsb2NhbGhvc3QnCi0gICAgICAgICAgICBzZWxmLmFkZHJlc3MgPSAoaG9zdCwgcG9ydCkKLSAgICAgICAgICAgIHNlbGYudXJsID0gJ2h0dHA6Ly8lczolZC8nICUgKGhvc3QsIHBvcnQpCi0gICAgICAgICAgICBzZWxmLmNhbGxiYWNrID0gY2FsbGJhY2sKLSAgICAgICAgICAgIHNlbGYuYmFzZS5fX2luaXRfXyhzZWxmLCBzZWxmLmFkZHJlc3MsIHNlbGYuaGFuZGxlcikKLQotICAgICAgICBkZWYgc2VydmVfdW50aWxfcXVpdChzZWxmKToKLSAgICAgICAgICAgIGltcG9ydCBzZWxlY3QKLSAgICAgICAgICAgIHNlbGYucXVpdCA9IEZhbHNlCi0gICAgICAgICAgICB3aGlsZSBub3Qgc2VsZi5xdWl0OgotICAgICAgICAgICAgICAgIHJkLCB3ciwgZXggPSBzZWxlY3Quc2VsZWN0KFtzZWxmLnNvY2tldC5maWxlbm8oKV0sIFtdLCBbXSwgMSkKLSAgICAgICAgICAgICAgICBpZiByZDogc2VsZi5oYW5kbGVfcmVxdWVzdCgpCi0gICAgICAgICAgICBzZWxmLnNlcnZlcl9jbG9zZSgpCi0KLSAgICAgICAgZGVmIHNlcnZlcl9hY3RpdmF0ZShzZWxmKToKLSAgICAgICAgICAgIHNlbGYuYmFzZS5zZXJ2ZXJfYWN0aXZhdGUoc2VsZikKLSAgICAgICAgICAgIGlmIHNlbGYuY2FsbGJhY2s6IHNlbGYuY2FsbGJhY2soc2VsZikKLQotICAgIERvY1NlcnZlci5iYXNlID0gaHR0cC5zZXJ2ZXIuSFRUUFNlcnZlcgotICAgIERvY1NlcnZlci5oYW5kbGVyID0gRG9jSGFuZGxlcgotICAgIERvY0hhbmRsZXIuTWVzc2FnZUNsYXNzID0gZW1haWwubWVzc2FnZS5NZXNzYWdlCi0gICAgdHJ5OgotICAgICAgICB0cnk6Ci0gICAgICAgICAgICBEb2NTZXJ2ZXIocG9ydCwgY2FsbGJhY2spLnNlcnZlX3VudGlsX3F1aXQoKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBzZWxlY3QuZXJyb3IpOgotICAgICAgICAgICAgcGFzcwotICAgIGZpbmFsbHk6Ci0gICAgICAgIGlmIGNvbXBsZXRlcjogY29tcGxldGVyKCkKLQotIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBncmFwaGljYWwgaW50ZXJmYWNlCi0KLWRlZiBndWkoKToKLSAgICAiIiJHcmFwaGljYWwgaW50ZXJmYWNlIChzdGFydHMgV2ViIHNlcnZlciBhbmQgcG9wcyB1cCBhIGNvbnRyb2wgd2luZG93KS4iIiIKLQotICAgIG1zZyA9ICgndGhlIHB5ZG9jLmd1aSgpIGZ1bmN0aW9uIGFuZCAicHlkb2MgLWciIG9wdGlvbiBhcmUgZGVwcmVjYXRlZFxuJywKLSAgICAgICAgICAgJ3VzZSAicHlkb2MuYnJvd3NlKCkgZnVuY3Rpb24gYW5kICJweWRvYyAtYiIgb3B0aW9uIGluc3RlYWQuJykKLSAgICB3YXJuaW5ncy53YXJuKG1zZywgRGVwcmVjYXRpb25XYXJuaW5nLCBzdGFja2xldmVsPTIpCi0KLSAgICBjbGFzcyBHVUk6Ci0gICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCB3aW5kb3csIHBvcnQ9NzQ2NCk6Ci0gICAgICAgICAgICBzZWxmLndpbmRvdyA9IHdpbmRvdwotICAgICAgICAgICAgc2VsZi5zZXJ2ZXIgPSBOb25lCi0gICAgICAgICAgICBzZWxmLnNjYW5uZXIgPSBOb25lCi0KLSAgICAgICAgICAgIGltcG9ydCB0a2ludGVyCi0gICAgICAgICAgICBzZWxmLnNlcnZlcl9mcm0gPSB0a2ludGVyLkZyYW1lKHdpbmRvdykKLSAgICAgICAgICAgIHNlbGYudGl0bGVfbGJsID0gdGtpbnRlci5MYWJlbChzZWxmLnNlcnZlcl9mcm0sCi0gICAgICAgICAgICAgICAgdGV4dD0nU3RhcnRpbmcgc2VydmVyLi4uXG4gJykKLSAgICAgICAgICAgIHNlbGYub3Blbl9idG4gPSB0a2ludGVyLkJ1dHRvbihzZWxmLnNlcnZlcl9mcm0sCi0gICAgICAgICAgICAgICAgdGV4dD0nb3BlbiBicm93c2VyJywgY29tbWFuZD1zZWxmLm9wZW4sIHN0YXRlPSdkaXNhYmxlZCcpCi0gICAgICAgICAgICBzZWxmLnF1aXRfYnRuID0gdGtpbnRlci5CdXR0b24oc2VsZi5zZXJ2ZXJfZnJtLAotICAgICAgICAgICAgICAgIHRleHQ9J3F1aXQgc2VydmluZycsIGNvbW1hbmQ9c2VsZi5xdWl0LCBzdGF0ZT0nZGlzYWJsZWQnKQotCi0gICAgICAgICAgICBzZWxmLnNlYXJjaF9mcm0gPSB0a2ludGVyLkZyYW1lKHdpbmRvdykKLSAgICAgICAgICAgIHNlbGYuc2VhcmNoX2xibCA9IHRraW50ZXIuTGFiZWwoc2VsZi5zZWFyY2hfZnJtLCB0ZXh0PSdTZWFyY2ggZm9yJykKLSAgICAgICAgICAgIHNlbGYuc2VhcmNoX2VudCA9IHRraW50ZXIuRW50cnkoc2VsZi5zZWFyY2hfZnJtKQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfZW50LmJpbmQoJzxSZXR1cm4+Jywgc2VsZi5zZWFyY2gpCi0gICAgICAgICAgICBzZWxmLnN0b3BfYnRuID0gdGtpbnRlci5CdXR0b24oc2VsZi5zZWFyY2hfZnJtLAotICAgICAgICAgICAgICAgIHRleHQ9J3N0b3AnLCBwYWR5PTAsIGNvbW1hbmQ9c2VsZi5zdG9wLCBzdGF0ZT0nZGlzYWJsZWQnKQotICAgICAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6Ci0gICAgICAgICAgICAgICAgIyBUcnlpbmcgdG8gaGlkZSBhbmQgc2hvdyB0aGlzIGJ1dHRvbiBjcmFzaGVzIHVuZGVyIFdpbmRvd3MuCi0gICAgICAgICAgICAgICAgc2VsZi5zdG9wX2J0bi5wYWNrKHNpZGU9J3JpZ2h0JykKLQotICAgICAgICAgICAgc2VsZi53aW5kb3cudGl0bGUoJ3B5ZG9jJykKLSAgICAgICAgICAgIHNlbGYud2luZG93LnByb3RvY29sKCdXTV9ERUxFVEVfV0lORE9XJywgc2VsZi5xdWl0KQotICAgICAgICAgICAgc2VsZi50aXRsZV9sYmwucGFjayhzaWRlPSd0b3AnLCBmaWxsPSd4JykKLSAgICAgICAgICAgIHNlbGYub3Blbl9idG4ucGFjayhzaWRlPSdsZWZ0JywgZmlsbD0neCcsIGV4cGFuZD0xKQotICAgICAgICAgICAgc2VsZi5xdWl0X2J0bi5wYWNrKHNpZGU9J3JpZ2h0JywgZmlsbD0neCcsIGV4cGFuZD0xKQotICAgICAgICAgICAgc2VsZi5zZXJ2ZXJfZnJtLnBhY2soc2lkZT0ndG9wJywgZmlsbD0neCcpCi0KLSAgICAgICAgICAgIHNlbGYuc2VhcmNoX2xibC5wYWNrKHNpZGU9J2xlZnQnKQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfZW50LnBhY2soc2lkZT0ncmlnaHQnLCBmaWxsPSd4JywgZXhwYW5kPTEpCi0gICAgICAgICAgICBzZWxmLnNlYXJjaF9mcm0ucGFjayhzaWRlPSd0b3AnLCBmaWxsPSd4JykKLSAgICAgICAgICAgIHNlbGYuc2VhcmNoX2VudC5mb2N1c19zZXQoKQotCi0gICAgICAgICAgICBmb250ID0gKCdoZWx2ZXRpY2EnLCBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJyBhbmQgOCBvciAxMCkKLSAgICAgICAgICAgIHNlbGYucmVzdWx0X2xzdCA9IHRraW50ZXIuTGlzdGJveCh3aW5kb3csIGZvbnQ9Zm9udCwgaGVpZ2h0PTYpCi0gICAgICAgICAgICBzZWxmLnJlc3VsdF9sc3QuYmluZCgnPEJ1dHRvbi0xPicsIHNlbGYuc2VsZWN0KQotICAgICAgICAgICAgc2VsZi5yZXN1bHRfbHN0LmJpbmQoJzxEb3VibGUtQnV0dG9uLTE+Jywgc2VsZi5nb3RvKQotICAgICAgICAgICAgc2VsZi5yZXN1bHRfc2NyID0gdGtpbnRlci5TY3JvbGxiYXIod2luZG93LAotICAgICAgICAgICAgICAgIG9yaWVudD0ndmVydGljYWwnLCBjb21tYW5kPXNlbGYucmVzdWx0X2xzdC55dmlldykKLSAgICAgICAgICAgIHNlbGYucmVzdWx0X2xzdC5jb25maWcoeXNjcm9sbGNvbW1hbmQ9c2VsZi5yZXN1bHRfc2NyLnNldCkKLQotICAgICAgICAgICAgc2VsZi5yZXN1bHRfZnJtID0gdGtpbnRlci5GcmFtZSh3aW5kb3cpCi0gICAgICAgICAgICBzZWxmLmdvdG9fYnRuID0gdGtpbnRlci5CdXR0b24oc2VsZi5yZXN1bHRfZnJtLAotICAgICAgICAgICAgICAgIHRleHQ9J2dvIHRvIHNlbGVjdGVkJywgY29tbWFuZD1zZWxmLmdvdG8pCi0gICAgICAgICAgICBzZWxmLmhpZGVfYnRuID0gdGtpbnRlci5CdXR0b24oc2VsZi5yZXN1bHRfZnJtLAotICAgICAgICAgICAgICAgIHRleHQ9J2hpZGUgcmVzdWx0cycsIGNvbW1hbmQ9c2VsZi5oaWRlKQotICAgICAgICAgICAgc2VsZi5nb3RvX2J0bi5wYWNrKHNpZGU9J2xlZnQnLCBmaWxsPSd4JywgZXhwYW5kPTEpCi0gICAgICAgICAgICBzZWxmLmhpZGVfYnRuLnBhY2soc2lkZT0ncmlnaHQnLCBmaWxsPSd4JywgZXhwYW5kPTEpCi0KLSAgICAgICAgICAgIHNlbGYud2luZG93LnVwZGF0ZSgpCi0gICAgICAgICAgICBzZWxmLm1pbndpZHRoID0gc2VsZi53aW5kb3cud2luZm9fd2lkdGgoKQotICAgICAgICAgICAgc2VsZi5taW5oZWlnaHQgPSBzZWxmLndpbmRvdy53aW5mb19oZWlnaHQoKQotICAgICAgICAgICAgc2VsZi5iaWdtaW5oZWlnaHQgPSAoc2VsZi5zZXJ2ZXJfZnJtLndpbmZvX3JlcWhlaWdodCgpICsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2VhcmNoX2ZybS53aW5mb19yZXFoZWlnaHQoKSArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnJlc3VsdF9sc3Qud2luZm9fcmVxaGVpZ2h0KCkgKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5yZXN1bHRfZnJtLndpbmZvX3JlcWhlaWdodCgpKQotICAgICAgICAgICAgc2VsZi5iaWd3aWR0aCwgc2VsZi5iaWdoZWlnaHQgPSBzZWxmLm1pbndpZHRoLCBzZWxmLmJpZ21pbmhlaWdodAotICAgICAgICAgICAgc2VsZi5leHBhbmRlZCA9IDAKLSAgICAgICAgICAgIHNlbGYud2luZG93LndtX2dlb21ldHJ5KCclZHglZCcgJSAoc2VsZi5taW53aWR0aCwgc2VsZi5taW5oZWlnaHQpKQotICAgICAgICAgICAgc2VsZi53aW5kb3cud21fbWluc2l6ZShzZWxmLm1pbndpZHRoLCBzZWxmLm1pbmhlaWdodCkKLSAgICAgICAgICAgIHNlbGYud2luZG93LnRrLndpbGxkaXNwYXRjaCgpCi0KLSAgICAgICAgICAgIGltcG9ydCB0aHJlYWRpbmcKLSAgICAgICAgICAgIHRocmVhZGluZy5UaHJlYWQoCi0gICAgICAgICAgICAgICAgdGFyZ2V0PXNlcnZlLCBhcmdzPShwb3J0LCBzZWxmLnJlYWR5LCBzZWxmLnF1aXQpKS5zdGFydCgpCi0KLSAgICAgICAgZGVmIHJlYWR5KHNlbGYsIHNlcnZlcik6Ci0gICAgICAgICAgICBzZWxmLnNlcnZlciA9IHNlcnZlcgotICAgICAgICAgICAgc2VsZi50aXRsZV9sYmwuY29uZmlnKAotICAgICAgICAgICAgICAgIHRleHQ9J1B5dGhvbiBkb2N1bWVudGF0aW9uIHNlcnZlciBhdFxuJyArIHNlcnZlci51cmwpCi0gICAgICAgICAgICBzZWxmLm9wZW5fYnRuLmNvbmZpZyhzdGF0ZT0nbm9ybWFsJykKLSAgICAgICAgICAgIHNlbGYucXVpdF9idG4uY29uZmlnKHN0YXRlPSdub3JtYWwnKQotCi0gICAgICAgIGRlZiBvcGVuKHNlbGYsIGV2ZW50PU5vbmUsIHVybD1Ob25lKToKLSAgICAgICAgICAgIHVybCA9IHVybCBvciBzZWxmLnNlcnZlci51cmwKLSAgICAgICAgICAgIGltcG9ydCB3ZWJicm93c2VyCi0gICAgICAgICAgICB3ZWJicm93c2VyLm9wZW4odXJsKQotCi0gICAgICAgIGRlZiBxdWl0KHNlbGYsIGV2ZW50PU5vbmUpOgotICAgICAgICAgICAgaWYgc2VsZi5zZXJ2ZXI6Ci0gICAgICAgICAgICAgICAgc2VsZi5zZXJ2ZXIucXVpdCA9IDEKLSAgICAgICAgICAgIHNlbGYud2luZG93LnF1aXQoKQotCi0gICAgICAgIGRlZiBzZWFyY2goc2VsZiwgZXZlbnQ9Tm9uZSk6Ci0gICAgICAgICAgICBrZXkgPSBzZWxmLnNlYXJjaF9lbnQuZ2V0KCkKLSAgICAgICAgICAgIHNlbGYuc3RvcF9idG4ucGFjayhzaWRlPSdyaWdodCcpCi0gICAgICAgICAgICBzZWxmLnN0b3BfYnRuLmNvbmZpZyhzdGF0ZT0nbm9ybWFsJykKLSAgICAgICAgICAgIHNlbGYuc2VhcmNoX2xibC5jb25maWcodGV4dD0nU2VhcmNoaW5nIGZvciAiJXMiLi4uJyAlIGtleSkKLSAgICAgICAgICAgIHNlbGYuc2VhcmNoX2VudC5mb3JnZXQoKQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfbGJsLnBhY2soc2lkZT0nbGVmdCcpCi0gICAgICAgICAgICBzZWxmLnJlc3VsdF9sc3QuZGVsZXRlKDAsICdlbmQnKQotICAgICAgICAgICAgc2VsZi5nb3RvX2J0bi5jb25maWcoc3RhdGU9J2Rpc2FibGVkJykKLSAgICAgICAgICAgIHNlbGYuZXhwYW5kKCkKLQotICAgICAgICAgICAgaW1wb3J0IHRocmVhZGluZwotICAgICAgICAgICAgaWYgc2VsZi5zY2FubmVyOgotICAgICAgICAgICAgICAgIHNlbGYuc2Nhbm5lci5xdWl0ID0gMQotICAgICAgICAgICAgc2VsZi5zY2FubmVyID0gTW9kdWxlU2Nhbm5lcigpCi0gICAgICAgICAgICB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1zZWxmLnNjYW5uZXIucnVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzPShzZWxmLnVwZGF0ZSwga2V5LCBzZWxmLmRvbmUpKS5zdGFydCgpCi0KLSAgICAgICAgZGVmIHVwZGF0ZShzZWxmLCBwYXRoLCBtb2RuYW1lLCBkZXNjKToKLSAgICAgICAgICAgIGlmIG1vZG5hbWVbLTk6XSA9PSAnLl9faW5pdF9fJzoKLSAgICAgICAgICAgICAgICBtb2RuYW1lID0gbW9kbmFtZVs6LTldICsgJyAocGFja2FnZSknCi0gICAgICAgICAgICBzZWxmLnJlc3VsdF9sc3QuaW5zZXJ0KCdlbmQnLAotICAgICAgICAgICAgICAgIG1vZG5hbWUgKyAnIC0gJyArIChkZXNjIG9yICcobm8gZGVzY3JpcHRpb24pJykpCi0KLSAgICAgICAgZGVmIHN0b3Aoc2VsZiwgZXZlbnQ9Tm9uZSk6Ci0gICAgICAgICAgICBpZiBzZWxmLnNjYW5uZXI6Ci0gICAgICAgICAgICAgICAgc2VsZi5zY2FubmVyLnF1aXQgPSAxCi0gICAgICAgICAgICAgICAgc2VsZi5zY2FubmVyID0gTm9uZQotCi0gICAgICAgIGRlZiBkb25lKHNlbGYpOgotICAgICAgICAgICAgc2VsZi5zY2FubmVyID0gTm9uZQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfbGJsLmNvbmZpZyh0ZXh0PSdTZWFyY2ggZm9yJykKLSAgICAgICAgICAgIHNlbGYuc2VhcmNoX2xibC5wYWNrKHNpZGU9J2xlZnQnKQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfZW50LnBhY2soc2lkZT0ncmlnaHQnLCBmaWxsPSd4JywgZXhwYW5kPTEpCi0gICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0gIT0gJ3dpbjMyJzogc2VsZi5zdG9wX2J0bi5mb3JnZXQoKQotICAgICAgICAgICAgc2VsZi5zdG9wX2J0bi5jb25maWcoc3RhdGU9J2Rpc2FibGVkJykKLQotICAgICAgICBkZWYgc2VsZWN0KHNlbGYsIGV2ZW50PU5vbmUpOgotICAgICAgICAgICAgc2VsZi5nb3RvX2J0bi5jb25maWcoc3RhdGU9J25vcm1hbCcpCi0KLSAgICAgICAgZGVmIGdvdG8oc2VsZiwgZXZlbnQ9Tm9uZSk6Ci0gICAgICAgICAgICBzZWxlY3Rpb24gPSBzZWxmLnJlc3VsdF9sc3QuY3Vyc2VsZWN0aW9uKCkKLSAgICAgICAgICAgIGlmIHNlbGVjdGlvbjoKLSAgICAgICAgICAgICAgICBtb2RuYW1lID0gc2VsZi5yZXN1bHRfbHN0LmdldChzZWxlY3Rpb25bMF0pLnNwbGl0KClbMF0KLSAgICAgICAgICAgICAgICBzZWxmLm9wZW4odXJsPXNlbGYuc2VydmVyLnVybCArIG1vZG5hbWUgKyAnLmh0bWwnKQotCi0gICAgICAgIGRlZiBjb2xsYXBzZShzZWxmKToKLSAgICAgICAgICAgIGlmIG5vdCBzZWxmLmV4cGFuZGVkOiByZXR1cm4KLSAgICAgICAgICAgIHNlbGYucmVzdWx0X2ZybS5mb3JnZXQoKQotICAgICAgICAgICAgc2VsZi5yZXN1bHRfc2NyLmZvcmdldCgpCi0gICAgICAgICAgICBzZWxmLnJlc3VsdF9sc3QuZm9yZ2V0KCkKLSAgICAgICAgICAgIHNlbGYuYmlnd2lkdGggPSBzZWxmLndpbmRvdy53aW5mb193aWR0aCgpCi0gICAgICAgICAgICBzZWxmLmJpZ2hlaWdodCA9IHNlbGYud2luZG93LndpbmZvX2hlaWdodCgpCi0gICAgICAgICAgICBzZWxmLndpbmRvdy53bV9nZW9tZXRyeSgnJWR4JWQnICUgKHNlbGYubWlud2lkdGgsIHNlbGYubWluaGVpZ2h0KSkKLSAgICAgICAgICAgIHNlbGYud2luZG93LndtX21pbnNpemUoc2VsZi5taW53aWR0aCwgc2VsZi5taW5oZWlnaHQpCi0gICAgICAgICAgICBzZWxmLmV4cGFuZGVkID0gMAotCi0gICAgICAgIGRlZiBleHBhbmQoc2VsZik6Ci0gICAgICAgICAgICBpZiBzZWxmLmV4cGFuZGVkOiByZXR1cm4KLSAgICAgICAgICAgIHNlbGYucmVzdWx0X2ZybS5wYWNrKHNpZGU9J2JvdHRvbScsIGZpbGw9J3gnKQotICAgICAgICAgICAgc2VsZi5yZXN1bHRfc2NyLnBhY2soc2lkZT0ncmlnaHQnLCBmaWxsPSd5JykKLSAgICAgICAgICAgIHNlbGYucmVzdWx0X2xzdC5wYWNrKHNpZGU9J3RvcCcsIGZpbGw9J2JvdGgnLCBleHBhbmQ9MSkKLSAgICAgICAgICAgIHNlbGYud2luZG93LndtX2dlb21ldHJ5KCclZHglZCcgJSAoc2VsZi5iaWd3aWR0aCwgc2VsZi5iaWdoZWlnaHQpKQotICAgICAgICAgICAgc2VsZi53aW5kb3cud21fbWluc2l6ZShzZWxmLm1pbndpZHRoLCBzZWxmLmJpZ21pbmhlaWdodCkKLSAgICAgICAgICAgIHNlbGYuZXhwYW5kZWQgPSAxCi0KLSAgICAgICAgZGVmIGhpZGUoc2VsZiwgZXZlbnQ9Tm9uZSk6Ci0gICAgICAgICAgICBzZWxmLnN0b3AoKQotICAgICAgICAgICAgc2VsZi5jb2xsYXBzZSgpCi0KLSAgICBpbXBvcnQgdGtpbnRlcgotICAgIHRyeToKLSAgICAgICAgcm9vdCA9IHRraW50ZXIuVGsoKQotICAgICAgICAjIFRrIHdpbGwgY3Jhc2ggaWYgcHl0aG9udy5leGUgaGFzIGFuIFhQIC5tYW5pZmVzdAotICAgICAgICAjIGZpbGUgYW5kIHRoZSByb290IGhhcyBpcyBub3QgZGVzdHJveWVkIGV4cGxpY2l0bHkuCi0gICAgICAgICMgSWYgdGhlIHByb2JsZW0gaXMgZXZlciBmaXhlZCBpbiBUaywgdGhlIGV4cGxpY2l0Ci0gICAgICAgICMgZGVzdHJveSBjYW4gZ28uCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIGd1aSA9IEdVSShyb290KQotICAgICAgICAgICAgcm9vdC5tYWlubG9vcCgpCi0gICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICByb290LmRlc3Ryb3koKQotICAgIGV4Y2VwdCBLZXlib2FyZEludGVycnVwdDoKLSAgICAgICAgcGFzcwotCi0KICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGVuaGFuY2VkIFdlYiBicm93c2VyIGludGVyZmFjZQogCiBkZWYgX3N0YXJ0X3NlcnZlcih1cmxoYW5kbGVyLCBwb3J0KToKQEAgLTI3OTUsMTUgKzI1MjYsMTIgQEAKICAgICAgICAgc3lzLnBhdGguaW5zZXJ0KDAsICcuJykKIAogICAgIHRyeToKLSAgICAgICAgb3B0cywgYXJncyA9IGdldG9wdC5nZXRvcHQoc3lzLmFyZ3ZbMTpdLCAnYmdrOnA6dycpCisgICAgICAgIG9wdHMsIGFyZ3MgPSBnZXRvcHQuZ2V0b3B0KHN5cy5hcmd2WzE6XSwgJ2JrOnA6dycpCiAgICAgICAgIHdyaXRpbmcgPSBGYWxzZQogICAgICAgICBzdGFydF9zZXJ2ZXIgPSBGYWxzZQogICAgICAgICBvcGVuX2Jyb3dzZXIgPSBGYWxzZQogICAgICAgICBwb3J0ID0gTm9uZQogICAgICAgICBmb3Igb3B0LCB2YWwgaW4gb3B0czoKLSAgICAgICAgICAgIGlmIG9wdCA9PSAnLWcnOgotICAgICAgICAgICAgICAgIGd1aSgpCi0gICAgICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgICAgICBpZiBvcHQgPT0gJy1iJzoKICAgICAgICAgICAgICAgICBzdGFydF9zZXJ2ZXIgPSBUcnVlCiAgICAgICAgICAgICAgICAgb3Blbl9icm93c2VyID0gVHJ1ZQpAQCAtMjg2NCw5ICsyNTkyLDYgQEAKICAgICB0byBpbnRlcmFjdGl2ZWx5IGJyb3dzZSBkb2N1bWVudGF0aW9uLiAgVGhlIC1wIG9wdGlvbiBjYW4gYmUgdXNlZCB3aXRoCiAgICAgdGhlIC1iIG9wdGlvbiB0byBleHBsaWNpdGx5IHNwZWNpZnkgdGhlIHNlcnZlciBwb3J0LgogCi17Y21kfSAtZwotICAgIERlcHJlY2F0ZWQuCi0KIHtjbWR9IC13IDxuYW1lPiAuLi4KICAgICBXcml0ZSBvdXQgdGhlIEhUTUwgZG9jdW1lbnRhdGlvbiBmb3IgYSBtb2R1bGUgdG8gYSBmaWxlIGluIHRoZSBjdXJyZW50CiAgICAgZGlyZWN0b3J5LiAgSWYgPG5hbWU+IGNvbnRhaW5zIGEgJ3tzZXB9JywgaXQgaXMgdHJlYXRlZCBhcyBhIGZpbGVuYW1lOyBpZgpkaWZmIC0tZ2l0IGEvTGliL3B5ZG9jX2RhdGEvdG9waWNzLnB5IGIvTGliL3B5ZG9jX2RhdGEvdG9waWNzLnB5CmluZGV4IDA4YTllN2MuLjkyZTA0NWUgMTAwNjQ0Ci0tLSBhL0xpYi9weWRvY19kYXRhL3RvcGljcy5weQorKysgYi9MaWIvcHlkb2NfZGF0YS90b3BpY3MucHkKQEAgLTEsMTYgKzEsMTcgQEAKLSMgQXV0b2dlbmVyYXRlZCBieSBTcGhpbnggb24gVGh1IEZlYiAyMyAxODozNzo1NCAyMDEyCisjIC0qLSBjb2Rpbmc6IHV0Zi04IC0qLQorIyBBdXRvZ2VuZXJhdGVkIGJ5IFNwaGlueCBvbiBTdW4gTWFyICA0IDE2OjExOjI3IDIwMTIKIHRvcGljcyA9IHsnYXNzZXJ0JzogJ1xuVGhlIGBgYXNzZXJ0YGAgc3RhdGVtZW50XG4qKioqKioqKioqKioqKioqKioqKioqKipcblxuQXNzZXJ0IHN0YXRlbWVudHMgYXJlIGEgY29udmVuaWVudCB3YXkgdG8gaW5zZXJ0IGRlYnVnZ2luZyBhc3NlcnRpb25zXG5pbnRvIGEgcHJvZ3JhbTpcblxuICAgYXNzZXJ0X3N0bXQgOjo9ICJhc3NlcnQiIGV4cHJlc3Npb24gWyIsIiBleHByZXNzaW9uXVxuXG5UaGUgc2ltcGxlIGZvcm0sIGBgYXNzZXJ0IGV4cHJlc3Npb25gYCwgaXMgZXF1aXZhbGVudCB0b1xuXG4gICBpZiBfX2RlYnVnX186XG4gICAgICBpZiBub3QgZXhwcmVzc2lvbjogcmFpc2UgQXNzZXJ0aW9uRXJyb3JcblxuVGhlIGV4dGVuZGVkIGZvcm0sIGBgYXNzZXJ0IGV4cHJlc3Npb24xLCBleHByZXNzaW9uMmBgLCBpcyBlcXVpdmFsZW50XG50b1xuXG4gICBpZiBfX2RlYnVnX186XG4gICAgICBpZiBub3QgZXhwcmVzc2lvbjE6IHJhaXNlIEFzc2VydGlvbkVycm9yKGV4cHJlc3Npb24yKVxuXG5UaGVzZSBlcXVpdmFsZW5jZXMgYXNzdW1lIHRoYXQgYGBfX2RlYnVnX19gYCBhbmQgYGBBc3NlcnRpb25FcnJvcmBgXG5yZWZlciB0byB0aGUgYnVpbHQtaW4gdmFyaWFibGVzIHdpdGggdGhvc2UgbmFtZXMuICBJbiB0aGUgY3VycmVudFxuaW1wbGVtZW50YXRpb24sIHRoZSBidWlsdC1pbiB2YXJpYWJsZSBgYF9fZGVidWdfX2BgIGlzIGBgVHJ1ZWBgIHVuZGVyXG5ub3JtYWwgY2lyY3Vtc3RhbmNlcywgYGBGYWxzZWBgIHdoZW4gb3B0aW1pemF0aW9uIGlzIHJlcXVlc3RlZFxuKGNvbW1hbmQgbGluZSBvcHRpb24gLU8pLiAgVGhlIGN1cnJlbnQgY29kZSBnZW5lcmF0b3IgZW1pdHMgbm8gY29kZVxuZm9yIGFuIGFzc2VydCBzdGF0ZW1lbnQgd2hlbiBvcHRpbWl6YXRpb24gaXMgcmVxdWVzdGVkIGF0IGNvbXBpbGVcbnRpbWUuICBOb3RlIHRoYXQgaXQgaXMgdW5uZWNlc3NhcnkgdG8gaW5jbHVkZSB0aGUgc291cmNlIGNvZGUgZm9yIHRoZVxuZXhwcmVzc2lvbiB0aGF0IGZhaWxlZCBpbiB0aGUgZXJyb3IgbWVzc2FnZTsgaXQgd2lsbCBiZSBkaXNwbGF5ZWQgYXNcbnBhcnQgb2YgdGhlIHN0YWNrIHRyYWNlLlxuXG5Bc3NpZ25tZW50cyB0byBgYF9fZGVidWdfX2BgIGFyZSBpbGxlZ2FsLiAgVGhlIHZhbHVlIGZvciB0aGUgYnVpbHQtaW5cbnZhcmlhYmxlIGlzIGRldGVybWluZWQgd2hlbiB0aGUgaW50ZXJwcmV0ZXIgc3RhcnRzLlxuJywKICAnYXNzaWdubWVudCc6ICdcbkFzc2lnbm1lbnQgc3RhdGVtZW50c1xuKioqKioqKioqKioqKioqKioqKioqXG5cbkFzc2lnbm1lbnQgc3RhdGVtZW50cyBhcmUgdXNlZCB0byAocmUpYmluZCBuYW1lcyB0byB2YWx1ZXMgYW5kIHRvXG5tb2RpZnkgYXR0cmlidXRlcyBvciBpdGVtcyBvZiBtdXRhYmxlIG9iamVjdHM6XG5cbiAgIGFzc2lnbm1lbnRfc3RtdCA6Oj0gKHRhcmdldF9saXN0ICI9IikrIChleHByZXNzaW9uX2xpc3QgfCB5aWVsZF9leHByZXNzaW9uKVxuICAgdGFyZ2V0X2xpc3QgICAgIDo6PSB0YXJnZXQgKCIsIiB0YXJnZXQpKiBbIiwiXVxuICAgdGFyZ2V0ICAgICAgICAgIDo6PSBpZGVudGlmaWVyXG4gICAgICAgICAgICAgIHwgIigiIHRhcmdldF9saXN0ICIpIlxuICAgICAgICAgICAgICB8ICJbIiB0YXJnZXRfbGlzdCAiXSJcbiAgICAgICAgICAgICAgfCBhdHRyaWJ1dGVyZWZcbiAgICAgICAgICAgICAgfCBzdWJzY3JpcHRpb25cbiAgICAgICAgICAgICAgfCBzbGljaW5nXG4gICAgICAgICAgICAgIHwgIioiIHRhcmdldFxuXG4oU2VlIHNlY3Rpb24gKlByaW1hcmllcyogZm9yIHRoZSBzeW50YXggZGVmaW5pdGlvbnMgZm9yIHRoZSBsYXN0IHRocmVlXG5zeW1ib2xzLilcblxuQW4gYXNzaWdubWVudCBzdGF0ZW1lbnQgZXZhbHVhdGVzIHRoZSBleHByZXNzaW9uIGxpc3QgKHJlbWVtYmVyIHRoYXRcbnRoaXMgY2FuIGJlIGEgc2luZ2xlIGV4cHJlc3Npb24gb3IgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgdGhlIGxhdHRlclxueWllbGRpbmcgYSB0dXBsZSkgYW5kIGFzc2lnbnMgdGhlIHNpbmdsZSByZXN1bHRpbmcgb2JqZWN0IHRvIGVhY2ggb2ZcbnRoZSB0YXJnZXQgbGlzdHMsIGZyb20gbGVmdCB0byByaWdodC5cblxuQXNzaWdubWVudCBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGRlcGVuZGluZyBvbiB0aGUgZm9ybSBvZiB0aGUgdGFyZ2V0XG4obGlzdCkuIFdoZW4gYSB0YXJnZXQgaXMgcGFydCBvZiBhIG11dGFibGUgb2JqZWN0IChhbiBhdHRyaWJ1dGVcbnJlZmVyZW5jZSwgc3Vic2NyaXB0aW9uIG9yIHNsaWNpbmcpLCB0aGUgbXV0YWJsZSBvYmplY3QgbXVzdFxudWx0aW1hdGVseSBwZXJmb3JtIHRoZSBhc3NpZ25tZW50IGFuZCBkZWNpZGUgYWJvdXQgaXRzIHZhbGlkaXR5LCBhbmRcbm1heSByYWlzZSBhbiBleGNlcHRpb24gaWYgdGhlIGFzc2lnbm1lbnQgaXMgdW5hY2NlcHRhYmxlLiAgVGhlIHJ1bGVzXG5vYnNlcnZlZCBieSB2YXJpb3VzIHR5cGVzIGFuZCB0aGUgZXhjZXB0aW9ucyByYWlzZWQgYXJlIGdpdmVuIHdpdGggdGhlXG5kZWZpbml0aW9uIG9mIHRoZSBvYmplY3QgdHlwZXMgKHNlZSBzZWN0aW9uICpUaGUgc3RhbmRhcmQgdHlwZVxuaGllcmFyY2h5KikuXG5cbkFzc2lnbm1lbnQgb2YgYW4gb2JqZWN0IHRvIGEgdGFyZ2V0IGxpc3QsIG9wdGlvbmFsbHkgZW5jbG9zZWQgaW5cbnBhcmVudGhlc2VzIG9yIHNxdWFyZSBicmFja2V0cywgaXMgcmVjdXJzaXZlbHkgZGVmaW5lZCBhcyBmb2xsb3dzLlxuXG4qIElmIHRoZSB0YXJnZXQgbGlzdCBpcyBhIHNpbmdsZSB0YXJnZXQ6IFRoZSBvYmplY3QgaXMgYXNzaWduZWQgdG9cbiAgdGhhdCB0YXJnZXQuXG5cbiogSWYgdGhlIHRhcmdldCBsaXN0IGlzIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgdGFyZ2V0czogVGhlIG9iamVjdFxuICBtdXN0IGJlIGFuIGl0ZXJhYmxlIHdpdGggdGhlIHNhbWUgbnVtYmVyIG9mIGl0ZW1zIGFzIHRoZXJlIGFyZVxuICB0YXJnZXRzIGluIHRoZSB0YXJnZXQgbGlzdCwgYW5kIHRoZSBpdGVtcyBhcmUgYXNzaWduZWQsIGZyb20gbGVmdCB0b1xuICByaWdodCwgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdGFyZ2V0cy5cblxuICAqIElmIHRoZSB0YXJnZXQgbGlzdCBjb250YWlucyBvbmUgdGFyZ2V0IHByZWZpeGVkIHdpdGggYW4gYXN0ZXJpc2ssXG4gICAgY2FsbGVkIGEgInN0YXJyZWQiIHRhcmdldDogVGhlIG9iamVjdCBtdXN0IGJlIGEgc2VxdWVuY2Ugd2l0aCBhdFxuICAgIGxlYXN0IGFzIG1hbnkgaXRlbXMgYXMgdGhlcmUgYXJlIHRhcmdldHMgaW4gdGhlIHRhcmdldCBsaXN0LCBtaW51c1xuICAgIG9uZS4gIFRoZSBmaXJzdCBpdGVtcyBvZiB0aGUgc2VxdWVuY2UgYXJlIGFzc2lnbmVkLCBmcm9tIGxlZnQgdG9cbiAgICByaWdodCwgdG8gdGhlIHRhcmdldHMgYmVmb3JlIHRoZSBzdGFycmVkIHRhcmdldC4gIFRoZSBmaW5hbCBpdGVtc1xuICAgIG9mIHRoZSBzZXF1ZW5jZSBhcmUgYXNzaWduZWQgdG8gdGhlIHRhcmdldHMgYWZ0ZXIgdGhlIHN0YXJyZWRcbiAgICB0YXJnZXQuICBBIGxpc3Qgb2YgdGhlIHJlbWFpbmluZyBpdGVtcyBpbiB0aGUgc2VxdWVuY2UgaXMgdGhlblxuICAgIGFzc2lnbmVkIHRvIHRoZSBzdGFycmVkIHRhcmdldCAodGhlIGxpc3QgY2FuIGJlIGVtcHR5KS5cblxuICAqIEVsc2U6IFRoZSBvYmplY3QgbXVzdCBiZSBhIHNlcXVlbmNlIHdpdGggdGhlIHNhbWUgbnVtYmVyIG9mIGl0ZW1zXG4gICAgYXMgdGhlcmUgYXJlIHRhcmdldHMgaW4gdGhlIHRhcmdldCBsaXN0LCBhbmQgdGhlIGl0ZW1zIGFyZVxuICAgIGFzc2lnbmVkLCBmcm9tIGxlZnQgdG8gcmlnaHQsIHRvIHRoZSBjb3JyZXNwb25kaW5nIHRhcmdldHMuXG5cbkFzc2lnbm1lbnQgb2YgYW4gb2JqZWN0IHRvIGEgc2luZ2xlIHRhcmdldCBpcyByZWN1cnNpdmVseSBkZWZpbmVkIGFzXG5mb2xsb3dzLlxuXG4qIElmIHRoZSB0YXJnZXQgaXMgYW4gaWRlbnRpZmllciAobmFtZSk6XG5cbiAgKiBJZiB0aGUgbmFtZSBkb2VzIG5vdCBvY2N1ciBpbiBhIGBgZ2xvYmFsYGAgb3IgYGBub25sb2NhbGBgXG4gICAgc3RhdGVtZW50IGluIHRoZSBjdXJyZW50IGNvZGUgYmxvY2s6IHRoZSBuYW1lIGlzIGJvdW5kIHRvIHRoZVxuICAgIG9iamVjdCBpbiB0aGUgY3VycmVudCBsb2NhbCBuYW1lc3BhY2UuXG5cbiAgKiBPdGhlcndpc2U6IHRoZSBuYW1lIGlzIGJvdW5kIHRvIHRoZSBvYmplY3QgaW4gdGhlIGdsb2JhbCBuYW1lc3BhY2VcbiAgICBvciB0aGUgb3V0ZXIgbmFtZXNwYWNlIGRldGVybWluZWQgYnkgYGBub25sb2NhbGBgLCByZXNwZWN0aXZlbHkuXG5cbiAgVGhlIG5hbWUgaXMgcmVib3VuZCBpZiBpdCB3YXMgYWxyZWFkeSBib3VuZC4gIFRoaXMgbWF5IGNhdXNlIHRoZVxuICByZWZlcmVuY2UgY291bnQgZm9yIHRoZSBvYmplY3QgcHJldmlvdXNseSBib3VuZCB0byB0aGUgbmFtZSB0byByZWFjaFxuICB6ZXJvLCBjYXVzaW5nIHRoZSBvYmplY3QgdG8gYmUgZGVhbGxvY2F0ZWQgYW5kIGl0cyBkZXN0cnVjdG9yIChpZiBpdFxuICBoYXMgb25lKSB0byBiZSBjYWxsZWQuXG5cbiogSWYgdGhlIHRhcmdldCBpcyBhIHRhcmdldCBsaXN0IGVuY2xvc2VkIGluIHBhcmVudGhlc2VzIG9yIGluIHNxdWFyZVxuICBicmFja2V0czogVGhlIG9iamVjdCBtdXN0IGJlIGFuIGl0ZXJhYmxlIHdpdGggdGhlIHNhbWUgbnVtYmVyIG9mXG4gIGl0ZW1zIGFzIHRoZXJlIGFyZSB0YXJnZXRzIGluIHRoZSB0YXJnZXQgbGlzdCwgYW5kIGl0cyBpdGVtcyBhcmVcbiAgYXNzaWduZWQsIGZyb20gbGVmdCB0byByaWdodCwgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdGFyZ2V0cy5cblxuKiBJZiB0aGUgdGFyZ2V0IGlzIGFuIGF0dHJpYnV0ZSByZWZlcmVuY2U6IFRoZSBwcmltYXJ5IGV4cHJlc3Npb24gaW5cbiAgdGhlIHJlZmVyZW5jZSBpcyBldmFsdWF0ZWQuICBJdCBzaG91bGQgeWllbGQgYW4gb2JqZWN0IHdpdGhcbiAgYXNzaWduYWJsZSBhdHRyaWJ1dGVzOyBpZiB0aGlzIGlzIG5vdCB0aGUgY2FzZSwgYGBUeXBlRXJyb3JgYCBpc1xuICByYWlzZWQuICBUaGF0IG9iamVjdCBpcyB0aGVuIGFza2VkIHRvIGFzc2lnbiB0aGUgYXNzaWduZWQgb2JqZWN0IHRvXG4gIHRoZSBnaXZlbiBhdHRyaWJ1dGU7IGlmIGl0IGNhbm5vdCBwZXJmb3JtIHRoZSBhc3NpZ25tZW50LCBpdCByYWlzZXNcbiAgYW4gZXhjZXB0aW9uICh1c3VhbGx5IGJ1dCBub3QgbmVjZXNzYXJpbHkgYGBBdHRyaWJ1dGVFcnJvcmBgKS5cblxuICBOb3RlOiBJZiB0aGUgb2JqZWN0IGlzIGEgY2xhc3MgaW5zdGFuY2UgYW5kIHRoZSBhdHRyaWJ1dGUgcmVmZXJlbmNlXG4gIG9jY3VycyBvbiBib3RoIHNpZGVzIG9mIHRoZSBhc3NpZ25tZW50IG9wZXJhdG9yLCB0aGUgUkhTIGV4cHJlc3Npb24sXG4gIGBgYS54YGAgY2FuIGFjY2VzcyBlaXRoZXIgYW4gaW5zdGFuY2UgYXR0cmlidXRlIG9yIChpZiBubyBpbnN0YW5jZVxuICBhdHRyaWJ1dGUgZXhpc3RzKSBhIGNsYXNzIGF0dHJpYnV0ZS4gIFRoZSBMSFMgdGFyZ2V0IGBgYS54YGAgaXNcbiAgYWx3YXlzIHNldCBhcyBhbiBpbnN0YW5jZSBhdHRyaWJ1dGUsIGNyZWF0aW5nIGl0IGlmIG5lY2Vzc2FyeS5cbiAgVGh1cywgdGhlIHR3byBvY2N1cnJlbmNlcyBvZiBgYGEueGBgIGRvIG5vdCBuZWNlc3NhcmlseSByZWZlciB0byB0aGVcbiAgc2FtZSBhdHRyaWJ1dGU6IGlmIHRoZSBSSFMgZXhwcmVzc2lvbiByZWZlcnMgdG8gYSBjbGFzcyBhdHRyaWJ1dGUsXG4gIHRoZSBMSFMgY3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBhdHRyaWJ1dGUgYXMgdGhlIHRhcmdldCBvZiB0aGVcbiAgYXNzaWdubWVudDpcblxuICAgICBjbGFzcyBDbHM6XG4gICAgICAgICB4ID0gMyAgICAgICAgICAgICAjIGNsYXNzIHZhcmlhYmxlXG4gICAgIGluc3QgPSBDbHMoKVxuICAgICBpbnN0LnggPSBpbnN0LnggKyAxICAgIyB3cml0ZXMgaW5zdC54IGFzIDQgbGVhdmluZyBDbHMueCBhcyAzXG5cbiAgVGhpcyBkZXNjcmlwdGlvbiBkb2VzIG5vdCBuZWNlc3NhcmlseSBhcHBseSB0byBkZXNjcmlwdG9yXG4gIGF0dHJpYnV0ZXMsIHN1Y2ggYXMgcHJvcGVydGllcyBjcmVhdGVkIHdpdGggYGBwcm9wZXJ0eSgpYGAuXG5cbiogSWYgdGhlIHRhcmdldCBpcyBhIHN1YnNjcmlwdGlvbjogVGhlIHByaW1hcnkgZXhwcmVzc2lvbiBpbiB0aGVcbiAgcmVmZXJlbmNlIGlzIGV2YWx1YXRlZC4gIEl0IHNob3VsZCB5aWVsZCBlaXRoZXIgYSBtdXRhYmxlIHNlcXVlbmNlXG4gIG9iamVjdCAoc3VjaCBhcyBhIGxpc3QpIG9yIGEgbWFwcGluZyBvYmplY3QgKHN1Y2ggYXMgYSBkaWN0aW9uYXJ5KS5cbiAgTmV4dCwgdGhlIHN1YnNjcmlwdCBleHByZXNzaW9uIGlzIGV2YWx1YXRlZC5cblxuICBJZiB0aGUgcHJpbWFyeSBpcyBhIG11dGFibGUgc2VxdWVuY2Ugb2JqZWN0IChzdWNoIGFzIGEgbGlzdCksIHRoZVxuICBzdWJzY3JpcHQgbXVzdCB5aWVsZCBhbiBpbnRlZ2VyLiAgSWYgaXQgaXMgbmVnYXRpdmUsIHRoZSBzZXF1ZW5jZVwnc1xuICBsZW5ndGggaXMgYWRkZWQgdG8gaXQuICBUaGUgcmVzdWx0aW5nIHZhbHVlIG11c3QgYmUgYSBub25uZWdhdGl2ZVxuICBpbnRlZ2VyIGxlc3MgdGhhbiB0aGUgc2VxdWVuY2VcJ3MgbGVuZ3RoLCBhbmQgdGhlIHNlcXVlbmNlIGlzIGFza2VkXG4gIHRvIGFzc2lnbiB0aGUgYXNzaWduZWQgb2JqZWN0IHRvIGl0cyBpdGVtIHdpdGggdGhhdCBpbmRleC4gIElmIHRoZVxuICBpbmRleCBpcyBvdXQgb2YgcmFuZ2UsIGBgSW5kZXhFcnJvcmBgIGlzIHJhaXNlZCAoYXNzaWdubWVudCB0byBhXG4gIHN1YnNjcmlwdGVkIHNlcXVlbmNlIGNhbm5vdCBhZGQgbmV3IGl0ZW1zIHRvIGEgbGlzdCkuXG5cbiAgSWYgdGhlIHByaW1hcnkgaXMgYSBtYXBwaW5nIG9iamVjdCAoc3VjaCBhcyBhIGRpY3Rpb25hcnkpLCB0aGVcbiAgc3Vic2NyaXB0IG11c3QgaGF2ZSBhIHR5cGUgY29tcGF0aWJsZSB3aXRoIHRoZSBtYXBwaW5nXCdzIGtleSB0eXBlLFxuICBhbmQgdGhlIG1hcHBpbmcgaXMgdGhlbiBhc2tlZCB0byBjcmVhdGUgYSBrZXkvZGF0dW0gcGFpciB3aGljaCBtYXBzXG4gIHRoZSBzdWJzY3JpcHQgdG8gdGhlIGFzc2lnbmVkIG9iamVjdC4gIFRoaXMgY2FuIGVpdGhlciByZXBsYWNlIGFuXG4gIGV4aXN0aW5nIGtleS92YWx1ZSBwYWlyIHdpdGggdGhlIHNhbWUga2V5IHZhbHVlLCBvciBpbnNlcnQgYSBuZXdcbiAga2V5L3ZhbHVlIHBhaXIgKGlmIG5vIGtleSB3aXRoIHRoZSBzYW1lIHZhbHVlIGV4aXN0ZWQpLlxuXG4gIEZvciB1c2VyLWRlZmluZWQgb2JqZWN0cywgdGhlIGBgX19zZXRpdGVtX18oKWBgIG1ldGhvZCBpcyBjYWxsZWRcbiAgd2l0aCBhcHByb3ByaWF0ZSBhcmd1bWVudHMuXG5cbiogSWYgdGhlIHRhcmdldCBpcyBhIHNsaWNpbmc6IFRoZSBwcmltYXJ5IGV4cHJlc3Npb24gaW4gdGhlIHJlZmVyZW5jZVxuICBpcyBldmFsdWF0ZWQuICBJdCBzaG91bGQgeWllbGQgYSBtdXRhYmxlIHNlcXVlbmNlIG9iamVjdCAoc3VjaCBhcyBhXG4gIGxpc3QpLiAgVGhlIGFzc2lnbmVkIG9iamVjdCBzaG91bGQgYmUgYSBzZXF1ZW5jZSBvYmplY3Qgb2YgdGhlIHNhbWVcbiAgdHlwZS4gIE5leHQsIHRoZSBsb3dlciBhbmQgdXBwZXIgYm91bmQgZXhwcmVzc2lvbnMgYXJlIGV2YWx1YXRlZCxcbiAgaW5zb2ZhciB0aGV5IGFyZSBwcmVzZW50OyBkZWZhdWx0cyBhcmUgemVybyBhbmQgdGhlIHNlcXVlbmNlXCdzXG4gIGxlbmd0aC4gIFRoZSBib3VuZHMgc2hvdWxkIGV2YWx1YXRlIHRvIGludGVnZXJzLiBJZiBlaXRoZXIgYm91bmQgaXNcbiAgbmVnYXRpdmUsIHRoZSBzZXF1ZW5jZVwncyBsZW5ndGggaXMgYWRkZWQgdG8gaXQuICBUaGUgcmVzdWx0aW5nXG4gIGJvdW5kcyBhcmUgY2xpcHBlZCB0byBsaWUgYmV0d2VlbiB6ZXJvIGFuZCB0aGUgc2VxdWVuY2VcJ3MgbGVuZ3RoLFxuICBpbmNsdXNpdmUuICBGaW5hbGx5LCB0aGUgc2VxdWVuY2Ugb2JqZWN0IGlzIGFza2VkIHRvIHJlcGxhY2UgdGhlXG4gIHNsaWNlIHdpdGggdGhlIGl0ZW1zIG9mIHRoZSBhc3NpZ25lZCBzZXF1ZW5jZS4gIFRoZSBsZW5ndGggb2YgdGhlXG4gIHNsaWNlIG1heSBiZSBkaWZmZXJlbnQgZnJvbSB0aGUgbGVuZ3RoIG9mIHRoZSBhc3NpZ25lZCBzZXF1ZW5jZSxcbiAgdGh1cyBjaGFuZ2luZyB0aGUgbGVuZ3RoIG9mIHRoZSB0YXJnZXQgc2VxdWVuY2UsIGlmIHRoZSBvYmplY3RcbiAgYWxsb3dzIGl0LlxuXG4qKkNQeXRob24gaW1wbGVtZW50YXRpb24gZGV0YWlsOioqIEluIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uLCB0aGVcbnN5bnRheCBmb3IgdGFyZ2V0cyBpcyB0YWtlbiB0byBiZSB0aGUgc2FtZSBhcyBmb3IgZXhwcmVzc2lvbnMsIGFuZFxuaW52YWxpZCBzeW50YXggaXMgcmVqZWN0ZWQgZHVyaW5nIHRoZSBjb2RlIGdlbmVyYXRpb24gcGhhc2UsIGNhdXNpbmdcbmxlc3MgZGV0YWlsZWQgZXJyb3IgbWVzc2FnZXMuXG5cbldBUk5JTkc6IEFsdGhvdWdoIHRoZSBkZWZpbml0aW9uIG9mIGFzc2lnbm1lbnQgaW1wbGllcyB0aGF0IG92ZXJsYXBzXG5iZXR3ZWVuIHRoZSBsZWZ0LWhhbmQgc2lkZSBhbmQgdGhlIHJpZ2h0LWhhbmQgc2lkZSBhcmUgXCdzYWZlXCcgKGZvclxuZXhhbXBsZSBgYGEsIGIgPSBiLCBhYGAgc3dhcHMgdHdvIHZhcmlhYmxlcyksIG92ZXJsYXBzICp3aXRoaW4qIHRoZVxuY29sbGVjdGlvbiBvZiBhc3NpZ25lZC10byB2YXJpYWJsZXMgYXJlIG5vdCBzYWZlISAgRm9yIGluc3RhbmNlLCB0aGVcbmZvbGxvd2luZyBwcm9ncmFtIHByaW50cyBgYFswLCAyXWBgOlxuXG4gICB4ID0gWzAsIDFdXG4gICBpID0gMFxuICAgaSwgeFtpXSA9IDEsIDJcbiAgIHByaW50KHgpXG5cblNlZSBhbHNvOlxuXG4gICAqKlBFUCAzMTMyKiogLSBFeHRlbmRlZCBJdGVyYWJsZSBVbnBhY2tpbmdcbiAgICAgIFRoZSBzcGVjaWZpY2F0aW9uIGZvciB0aGUgYGAqdGFyZ2V0YGAgZmVhdHVyZS5cblxuXG5BdWdtZW50ZWQgYXNzaWdubWVudCBzdGF0ZW1lbnRzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkF1Z21lbnRlZCBhc3NpZ25tZW50IGlzIHRoZSBjb21iaW5hdGlvbiwgaW4gYSBzaW5nbGUgc3RhdGVtZW50LCBvZiBhXG5iaW5hcnkgb3BlcmF0aW9uIGFuZCBhbiBhc3NpZ25tZW50IHN0YXRlbWVudDpcblxuICAgYXVnbWVudGVkX2Fzc2lnbm1lbnRfc3RtdCA6Oj0gYXVndGFyZ2V0IGF1Z29wIChleHByZXNzaW9uX2xpc3QgfCB5aWVsZF9leHByZXNzaW9uKVxuICAgYXVndGFyZ2V0ICAgICAgICAgICAgICAgICA6Oj0gaWRlbnRpZmllciB8IGF0dHJpYnV0ZXJlZiB8IHN1YnNjcmlwdGlvbiB8IHNsaWNpbmdcbiAgIGF1Z29wICAgICAgICAgICAgICAgICAgICAgOjo9ICIrPSIgfCAiLT0iIHwgIio9IiB8ICIvPSIgfCAiLy89IiB8ICIlPSIgfCAiKio9IlxuICAgICAgICAgICAgIHwgIj4+PSIgfCAiPDw9IiB8ICImPSIgfCAiXj0iIHwgInw9IlxuXG4oU2VlIHNlY3Rpb24gKlByaW1hcmllcyogZm9yIHRoZSBzeW50YXggZGVmaW5pdGlvbnMgZm9yIHRoZSBsYXN0IHRocmVlXG5zeW1ib2xzLilcblxuQW4gYXVnbWVudGVkIGFzc2lnbm1lbnQgZXZhbHVhdGVzIHRoZSB0YXJnZXQgKHdoaWNoLCB1bmxpa2Ugbm9ybWFsXG5hc3NpZ25tZW50IHN0YXRlbWVudHMsIGNhbm5vdCBiZSBhbiB1bnBhY2tpbmcpIGFuZCB0aGUgZXhwcmVzc2lvblxubGlzdCwgcGVyZm9ybXMgdGhlIGJpbmFyeSBvcGVyYXRpb24gc3BlY2lmaWMgdG8gdGhlIHR5cGUgb2YgYXNzaWdubWVudFxub24gdGhlIHR3byBvcGVyYW5kcywgYW5kIGFzc2lnbnMgdGhlIHJlc3VsdCB0byB0aGUgb3JpZ2luYWwgdGFyZ2V0LlxuVGhlIHRhcmdldCBpcyBvbmx5IGV2YWx1YXRlZCBvbmNlLlxuXG5BbiBhdWdtZW50ZWQgYXNzaWdubWVudCBleHByZXNzaW9uIGxpa2UgYGB4ICs9IDFgYCBjYW4gYmUgcmV3cml0dGVuIGFzXG5gYHggPSB4ICsgMWBgIHRvIGFjaGlldmUgYSBzaW1pbGFyLCBidXQgbm90IGV4YWN0bHkgZXF1YWwgZWZmZWN0LiBJblxudGhlIGF1Z21lbnRlZCB2ZXJzaW9uLCBgYHhgYCBpcyBvbmx5IGV2YWx1YXRlZCBvbmNlLiBBbHNvLCB3aGVuXG5wb3NzaWJsZSwgdGhlIGFjdHVhbCBvcGVyYXRpb24gaXMgcGVyZm9ybWVkICppbi1wbGFjZSosIG1lYW5pbmcgdGhhdFxucmF0aGVyIHRoYW4gY3JlYXRpbmcgYSBuZXcgb2JqZWN0IGFuZCBhc3NpZ25pbmcgdGhhdCB0byB0aGUgdGFyZ2V0LFxudGhlIG9sZCBvYmplY3QgaXMgbW9kaWZpZWQgaW5zdGVhZC5cblxuV2l0aCB0aGUgZXhjZXB0aW9uIG9mIGFzc2lnbmluZyB0byB0dXBsZXMgYW5kIG11bHRpcGxlIHRhcmdldHMgaW4gYVxuc2luZ2xlIHN0YXRlbWVudCwgdGhlIGFzc2lnbm1lbnQgZG9uZSBieSBhdWdtZW50ZWQgYXNzaWdubWVudFxuc3RhdGVtZW50cyBpcyBoYW5kbGVkIHRoZSBzYW1lIHdheSBhcyBub3JtYWwgYXNzaWdubWVudHMuIFNpbWlsYXJseSxcbndpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgcG9zc2libGUgKmluLXBsYWNlKiBiZWhhdmlvciwgdGhlIGJpbmFyeVxub3BlcmF0aW9uIHBlcmZvcm1lZCBieSBhdWdtZW50ZWQgYXNzaWdubWVudCBpcyB0aGUgc2FtZSBhcyB0aGUgbm9ybWFsXG5iaW5hcnkgb3BlcmF0aW9ucy5cblxuRm9yIHRhcmdldHMgd2hpY2ggYXJlIGF0dHJpYnV0ZSByZWZlcmVuY2VzLCB0aGUgc2FtZSAqY2F2ZWF0IGFib3V0XG5jbGFzcyBhbmQgaW5zdGFuY2UgYXR0cmlidXRlcyogYXBwbGllcyBhcyBmb3IgcmVndWxhciBhc3NpZ25tZW50cy5cbicsCiAgJ2F0b20taWRlbnRpZmllcnMnOiAnXG5JZGVudGlmaWVycyAoTmFtZXMpXG4qKioqKioqKioqKioqKioqKioqXG5cbkFuIGlkZW50aWZpZXIgb2NjdXJyaW5nIGFzIGFuIGF0b20gaXMgYSBuYW1lLiAgU2VlIHNlY3Rpb25cbipJZGVudGlmaWVycyBhbmQga2V5d29yZHMqIGZvciBsZXhpY2FsIGRlZmluaXRpb24gYW5kIHNlY3Rpb24gKk5hbWluZ1xuYW5kIGJpbmRpbmcqIGZvciBkb2N1bWVudGF0aW9uIG9mIG5hbWluZyBhbmQgYmluZGluZy5cblxuV2hlbiB0aGUgbmFtZSBpcyBib3VuZCB0byBhbiBvYmplY3QsIGV2YWx1YXRpb24gb2YgdGhlIGF0b20geWllbGRzXG50aGF0IG9iamVjdC4gV2hlbiBhIG5hbWUgaXMgbm90IGJvdW5kLCBhbiBhdHRlbXB0IHRvIGV2YWx1YXRlIGl0XG5yYWlzZXMgYSBgYE5hbWVFcnJvcmBgIGV4Y2VwdGlvbi5cblxuKipQcml2YXRlIG5hbWUgbWFuZ2xpbmc6KiogV2hlbiBhbiBpZGVudGlmaWVyIHRoYXQgdGV4dHVhbGx5IG9jY3VycyBpblxuYSBjbGFzcyBkZWZpbml0aW9uIGJlZ2lucyB3aXRoIHR3byBvciBtb3JlIHVuZGVyc2NvcmUgY2hhcmFjdGVycyBhbmRcbmRvZXMgbm90IGVuZCBpbiB0d28gb3IgbW9yZSB1bmRlcnNjb3JlcywgaXQgaXMgY29uc2lkZXJlZCBhICpwcml2YXRlXG5uYW1lKiBvZiB0aGF0IGNsYXNzLiBQcml2YXRlIG5hbWVzIGFyZSB0cmFuc2Zvcm1lZCB0byBhIGxvbmdlciBmb3JtXG5iZWZvcmUgY29kZSBpcyBnZW5lcmF0ZWQgZm9yIHRoZW0uICBUaGUgdHJhbnNmb3JtYXRpb24gaW5zZXJ0cyB0aGVcbmNsYXNzIG5hbWUgaW4gZnJvbnQgb2YgdGhlIG5hbWUsIHdpdGggbGVhZGluZyB1bmRlcnNjb3JlcyByZW1vdmVkLCBhbmRcbmEgc2luZ2xlIHVuZGVyc2NvcmUgaW5zZXJ0ZWQgaW4gZnJvbnQgb2YgdGhlIGNsYXNzIG5hbWUuICBGb3IgZXhhbXBsZSxcbnRoZSBpZGVudGlmaWVyIGBgX19zcGFtYGAgb2NjdXJyaW5nIGluIGEgY2xhc3MgbmFtZWQgYGBIYW1gYCB3aWxsIGJlXG50cmFuc2Zvcm1lZCB0byBgYF9IYW1fX3NwYW1gYC4gIFRoaXMgdHJhbnNmb3JtYXRpb24gaXMgaW5kZXBlbmRlbnQgb2ZcbnRoZSBzeW50YWN0aWNhbCBjb250ZXh0IGluIHdoaWNoIHRoZSBpZGVudGlmaWVyIGlzIHVzZWQuICBJZiB0aGVcbnRyYW5zZm9ybWVkIG5hbWUgaXMgZXh0cmVtZWx5IGxvbmcgKGxvbmdlciB0aGFuIDI1NSBjaGFyYWN0ZXJzKSxcbmltcGxlbWVudGF0aW9uIGRlZmluZWQgdHJ1bmNhdGlvbiBtYXkgaGFwcGVuLiAgSWYgdGhlIGNsYXNzIG5hbWVcbmNvbnNpc3RzIG9ubHkgb2YgdW5kZXJzY29yZXMsIG5vIHRyYW5zZm9ybWF0aW9uIGlzIGRvbmUuXG4nLAogICdhdG9tLWxpdGVyYWxzJzogIlxuTGl0ZXJhbHNcbioqKioqKioqXG5cblB5dGhvbiBzdXBwb3J0cyBzdHJpbmcgYW5kIGJ5dGVzIGxpdGVyYWxzIGFuZCB2YXJpb3VzIG51bWVyaWNcbmxpdGVyYWxzOlxuXG4gICBsaXRlcmFsIDo6PSBzdHJpbmdsaXRlcmFsIHwgYnl0ZXNsaXRlcmFsXG4gICAgICAgICAgICAgICB8IGludGVnZXIgfCBmbG9hdG51bWJlciB8IGltYWdudW1iZXJcblxuRXZhbHVhdGlvbiBvZiBhIGxpdGVyYWwgeWllbGRzIGFuIG9iamVjdCBvZiB0aGUgZ2l2ZW4gdHlwZSAoc3RyaW5nLFxuYnl0ZXMsIGludGVnZXIsIGZsb2F0aW5nIHBvaW50IG51bWJlciwgY29tcGxleCBudW1iZXIpIHdpdGggdGhlIGdpdmVuXG52YWx1ZS4gIFRoZSB2YWx1ZSBtYXkgYmUgYXBwcm94aW1hdGVkIGluIHRoZSBjYXNlIG9mIGZsb2F0aW5nIHBvaW50XG5hbmQgaW1hZ2luYXJ5IChjb21wbGV4KSBsaXRlcmFscy4gIFNlZSBzZWN0aW9uICpMaXRlcmFscyogZm9yIGRldGFpbHMuXG5cbkFsbCBsaXRlcmFscyBjb3JyZXNwb25kIHRvIGltbXV0YWJsZSBkYXRhIHR5cGVzLCBhbmQgaGVuY2UgdGhlXG5vYmplY3QncyBpZGVudGl0eSBpcyBsZXNzIGltcG9ydGFudCB0aGFuIGl0cyB2YWx1ZS4gIE11bHRpcGxlXG5ldmFsdWF0aW9ucyBvZiBsaXRlcmFscyB3aXRoIHRoZSBzYW1lIHZhbHVlIChlaXRoZXIgdGhlIHNhbWVcbm9jY3VycmVuY2UgaW4gdGhlIHByb2dyYW0gdGV4dCBvciBhIGRpZmZlcmVudCBvY2N1cnJlbmNlKSBtYXkgb2J0YWluXG50aGUgc2FtZSBvYmplY3Qgb3IgYSBkaWZmZXJlbnQgb2JqZWN0IHdpdGggdGhlIHNhbWUgdmFsdWUuXG4iLAotICdhdHRyaWJ1dGUtYWNjZXNzJzogJ1xuQ3VzdG9taXppbmcgYXR0cmlidXRlIGFjY2Vzc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5UaGUgZm9sbG93aW5nIG1ldGhvZHMgY2FuIGJlIGRlZmluZWQgdG8gY3VzdG9taXplIHRoZSBtZWFuaW5nIG9mXG5hdHRyaWJ1dGUgYWNjZXNzICh1c2Ugb2YsIGFzc2lnbm1lbnQgdG8sIG9yIGRlbGV0aW9uIG9mIGBgeC5uYW1lYGApXG5mb3IgY2xhc3MgaW5zdGFuY2VzLlxuXG5vYmplY3QuX19nZXRhdHRyX18oc2VsZiwgbmFtZSlcblxuICAgQ2FsbGVkIHdoZW4gYW4gYXR0cmlidXRlIGxvb2t1cCBoYXMgbm90IGZvdW5kIHRoZSBhdHRyaWJ1dGUgaW4gdGhlXG4gICB1c3VhbCBwbGFjZXMgKGkuZS4gaXQgaXMgbm90IGFuIGluc3RhbmNlIGF0dHJpYnV0ZSBub3IgaXMgaXQgZm91bmRcbiAgIGluIHRoZSBjbGFzcyB0cmVlIGZvciBgYHNlbGZgYCkuICBgYG5hbWVgYCBpcyB0aGUgYXR0cmlidXRlIG5hbWUuXG4gICBUaGlzIG1ldGhvZCBzaG91bGQgcmV0dXJuIHRoZSAoY29tcHV0ZWQpIGF0dHJpYnV0ZSB2YWx1ZSBvciByYWlzZVxuICAgYW4gYGBBdHRyaWJ1dGVFcnJvcmBgIGV4Y2VwdGlvbi5cblxuICAgTm90ZSB0aGF0IGlmIHRoZSBhdHRyaWJ1dGUgaXMgZm91bmQgdGhyb3VnaCB0aGUgbm9ybWFsIG1lY2hhbmlzbSxcbiAgIGBgX19nZXRhdHRyX18oKWBgIGlzIG5vdCBjYWxsZWQuICAoVGhpcyBpcyBhbiBpbnRlbnRpb25hbCBhc3ltbWV0cnlcbiAgIGJldHdlZW4gYGBfX2dldGF0dHJfXygpYGAgYW5kIGBgX19zZXRhdHRyX18oKWBgLikgVGhpcyBpcyBkb25lIGJvdGhcbiAgIGZvciBlZmZpY2llbmN5IHJlYXNvbnMgYW5kIGJlY2F1c2Ugb3RoZXJ3aXNlIGBgX19nZXRhdHRyX18oKWBgXG4gICB3b3VsZCBoYXZlIG5vIHdheSB0byBhY2Nlc3Mgb3RoZXIgYXR0cmlidXRlcyBvZiB0aGUgaW5zdGFuY2UuICBOb3RlXG4gICB0aGF0IGF0IGxlYXN0IGZvciBpbnN0YW5jZSB2YXJpYWJsZXMsIHlvdSBjYW4gZmFrZSB0b3RhbCBjb250cm9sIGJ5XG4gICBub3QgaW5zZXJ0aW5nIGFueSB2YWx1ZXMgaW4gdGhlIGluc3RhbmNlIGF0dHJpYnV0ZSBkaWN0aW9uYXJ5IChidXRcbiAgIGluc3RlYWQgaW5zZXJ0aW5nIHRoZW0gaW4gYW5vdGhlciBvYmplY3QpLiAgU2VlIHRoZVxuICAgYGBfX2dldGF0dHJpYnV0ZV9fKClgYCBtZXRob2QgYmVsb3cgZm9yIGEgd2F5IHRvIGFjdHVhbGx5IGdldCB0b3RhbFxuICAgY29udHJvbCBvdmVyIGF0dHJpYnV0ZSBhY2Nlc3MuXG5cbm9iamVjdC5fX2dldGF0dHJpYnV0ZV9fKHNlbGYsIG5hbWUpXG5cbiAgIENhbGxlZCB1bmNvbmRpdGlvbmFsbHkgdG8gaW1wbGVtZW50IGF0dHJpYnV0ZSBhY2Nlc3NlcyBmb3JcbiAgIGluc3RhbmNlcyBvZiB0aGUgY2xhc3MuIElmIHRoZSBjbGFzcyBhbHNvIGRlZmluZXNcbiAgIGBgX19nZXRhdHRyX18oKWBgLCB0aGUgbGF0dGVyIHdpbGwgbm90IGJlIGNhbGxlZCB1bmxlc3NcbiAgIGBgX19nZXRhdHRyaWJ1dGVfXygpYGAgZWl0aGVyIGNhbGxzIGl0IGV4cGxpY2l0bHkgb3IgcmFpc2VzIGFuXG4gICBgYEF0dHJpYnV0ZUVycm9yYGAuIFRoaXMgbWV0aG9kIHNob3VsZCByZXR1cm4gdGhlIChjb21wdXRlZClcbiAgIGF0dHJpYnV0ZSB2YWx1ZSBvciByYWlzZSBhbiBgYEF0dHJpYnV0ZUVycm9yYGAgZXhjZXB0aW9uLiBJbiBvcmRlclxuICAgdG8gYXZvaWQgaW5maW5pdGUgcmVjdXJzaW9uIGluIHRoaXMgbWV0aG9kLCBpdHMgaW1wbGVtZW50YXRpb25cbiAgIHNob3VsZCBhbHdheXMgY2FsbCB0aGUgYmFzZSBjbGFzcyBtZXRob2Qgd2l0aCB0aGUgc2FtZSBuYW1lIHRvXG4gICBhY2Nlc3MgYW55IGF0dHJpYnV0ZXMgaXQgbmVlZHMsIGZvciBleGFtcGxlLFxuICAgYGBvYmplY3QuX19nZXRhdHRyaWJ1dGVfXyhzZWxmLCBuYW1lKWBgLlxuXG4gICBOb3RlOiBUaGlzIG1ldGhvZCBtYXkgc3RpbGwgYmUgYnlwYXNzZWQgd2hlbiBsb29raW5nIHVwIHNwZWNpYWwgbWV0aG9kc1xuICAgICBhcyB0aGUgcmVzdWx0IG9mIGltcGxpY2l0IGludm9jYXRpb24gdmlhIGxhbmd1YWdlIHN5bnRheCBvclxuICAgICBidWlsdC1pbiBmdW5jdGlvbnMuIFNlZSAqU3BlY2lhbCBtZXRob2QgbG9va3VwKi5cblxub2JqZWN0Ll9fc2V0YXR0cl9fKHNlbGYsIG5hbWUsIHZhbHVlKVxuXG4gICBDYWxsZWQgd2hlbiBhbiBhdHRyaWJ1dGUgYXNzaWdubWVudCBpcyBhdHRlbXB0ZWQuICBUaGlzIGlzIGNhbGxlZFxuICAgaW5zdGVhZCBvZiB0aGUgbm9ybWFsIG1lY2hhbmlzbSAoaS5lLiBzdG9yZSB0aGUgdmFsdWUgaW4gdGhlXG4gICBpbnN0YW5jZSBkaWN0aW9uYXJ5KS4gKm5hbWUqIGlzIHRoZSBhdHRyaWJ1dGUgbmFtZSwgKnZhbHVlKiBpcyB0aGVcbiAgIHZhbHVlIHRvIGJlIGFzc2lnbmVkIHRvIGl0LlxuXG4gICBJZiBgYF9fc2V0YXR0cl9fKClgYCB3YW50cyB0byBhc3NpZ24gdG8gYW4gaW5zdGFuY2UgYXR0cmlidXRlLCBpdFxuICAgc2hvdWxkIGNhbGwgdGhlIGJhc2UgY2xhc3MgbWV0aG9kIHdpdGggdGhlIHNhbWUgbmFtZSwgZm9yIGV4YW1wbGUsXG4gICBgYG9iamVjdC5fX3NldGF0dHJfXyhzZWxmLCBuYW1lLCB2YWx1ZSlgYC5cblxub2JqZWN0Ll9fZGVsYXR0cl9fKHNlbGYsIG5hbWUpXG5cbiAgIExpa2UgYGBfX3NldGF0dHJfXygpYGAgYnV0IGZvciBhdHRyaWJ1dGUgZGVsZXRpb24gaW5zdGVhZCBvZlxuICAgYXNzaWdubWVudC4gIFRoaXMgc2hvdWxkIG9ubHkgYmUgaW1wbGVtZW50ZWQgaWYgYGBkZWwgb2JqLm5hbWVgYCBpc1xuICAgbWVhbmluZ2Z1bCBmb3IgdGhlIG9iamVjdC5cblxub2JqZWN0Ll9fZGlyX18oc2VsZilcblxuICAgQ2FsbGVkIHdoZW4gYGBkaXIoKWBgIGlzIGNhbGxlZCBvbiB0aGUgb2JqZWN0LiAgQSBsaXN0IG11c3QgYmVcbiAgIHJldHVybmVkLlxuXG5cbkltcGxlbWVudGluZyBEZXNjcmlwdG9yc1xuPT09PT09PT09PT09PT09PT09PT09PT09XG5cblRoZSBmb2xsb3dpbmcgbWV0aG9kcyBvbmx5IGFwcGx5IHdoZW4gYW4gaW5zdGFuY2Ugb2YgdGhlIGNsYXNzXG5jb250YWluaW5nIHRoZSBtZXRob2QgKGEgc28tY2FsbGVkICpkZXNjcmlwdG9yKiBjbGFzcykgYXBwZWFycyBpbiBhblxuKm93bmVyKiBjbGFzcyAodGhlIGRlc2NyaXB0b3IgbXVzdCBiZSBpbiBlaXRoZXIgdGhlIG93bmVyXCdzIGNsYXNzXG5kaWN0aW9uYXJ5IG9yIGluIHRoZSBjbGFzcyBkaWN0aW9uYXJ5IGZvciBvbmUgb2YgaXRzIHBhcmVudHMpLiAgSW4gdGhlXG5leGFtcGxlcyBiZWxvdywgInRoZSBhdHRyaWJ1dGUiIHJlZmVycyB0byB0aGUgYXR0cmlidXRlIHdob3NlIG5hbWUgaXNcbnRoZSBrZXkgb2YgdGhlIHByb3BlcnR5IGluIHRoZSBvd25lciBjbGFzc1wnIGBgX19kaWN0X19gYC5cblxub2JqZWN0Ll9fZ2V0X18oc2VsZiwgaW5zdGFuY2UsIG93bmVyKVxuXG4gICBDYWxsZWQgdG8gZ2V0IHRoZSBhdHRyaWJ1dGUgb2YgdGhlIG93bmVyIGNsYXNzIChjbGFzcyBhdHRyaWJ1dGVcbiAgIGFjY2Vzcykgb3Igb2YgYW4gaW5zdGFuY2Ugb2YgdGhhdCBjbGFzcyAoaW5zdGFuY2UgYXR0cmlidXRlXG4gICBhY2Nlc3MpLiAqb3duZXIqIGlzIGFsd2F5cyB0aGUgb3duZXIgY2xhc3MsIHdoaWxlICppbnN0YW5jZSogaXMgdGhlXG4gICBpbnN0YW5jZSB0aGF0IHRoZSBhdHRyaWJ1dGUgd2FzIGFjY2Vzc2VkIHRocm91Z2gsIG9yIGBgTm9uZWBgIHdoZW5cbiAgIHRoZSBhdHRyaWJ1dGUgaXMgYWNjZXNzZWQgdGhyb3VnaCB0aGUgKm93bmVyKi4gIFRoaXMgbWV0aG9kIHNob3VsZFxuICAgcmV0dXJuIHRoZSAoY29tcHV0ZWQpIGF0dHJpYnV0ZSB2YWx1ZSBvciByYWlzZSBhblxuICAgYGBBdHRyaWJ1dGVFcnJvcmBgIGV4Y2VwdGlvbi5cblxub2JqZWN0Ll9fc2V0X18oc2VsZiwgaW5zdGFuY2UsIHZhbHVlKVxuXG4gICBDYWxsZWQgdG8gc2V0IHRoZSBhdHRyaWJ1dGUgb24gYW4gaW5zdGFuY2UgKmluc3RhbmNlKiBvZiB0aGUgb3duZXJcbiAgIGNsYXNzIHRvIGEgbmV3IHZhbHVlLCAqdmFsdWUqLlxuXG5vYmplY3QuX19kZWxldGVfXyhzZWxmLCBpbnN0YW5jZSlcblxuICAgQ2FsbGVkIHRvIGRlbGV0ZSB0aGUgYXR0cmlidXRlIG9uIGFuIGluc3RhbmNlICppbnN0YW5jZSogb2YgdGhlXG4gICBvd25lciBjbGFzcy5cblxuXG5JbnZva2luZyBEZXNjcmlwdG9yc1xuPT09PT09PT09PT09PT09PT09PT1cblxuSW4gZ2VuZXJhbCwgYSBkZXNjcmlwdG9yIGlzIGFuIG9iamVjdCBhdHRyaWJ1dGUgd2l0aCAiYmluZGluZ1xuYmVoYXZpb3IiLCBvbmUgd2hvc2UgYXR0cmlidXRlIGFjY2VzcyBoYXMgYmVlbiBvdmVycmlkZGVuIGJ5IG1ldGhvZHNcbmluIHRoZSBkZXNjcmlwdG9yIHByb3RvY29sOiAgYGBfX2dldF9fKClgYCwgYGBfX3NldF9fKClgYCwgYW5kXG5gYF9fZGVsZXRlX18oKWBgLiBJZiBhbnkgb2YgdGhvc2UgbWV0aG9kcyBhcmUgZGVmaW5lZCBmb3IgYW4gb2JqZWN0LFxuaXQgaXMgc2FpZCB0byBiZSBhIGRlc2NyaXB0b3IuXG5cblRoZSBkZWZhdWx0IGJlaGF2aW9yIGZvciBhdHRyaWJ1dGUgYWNjZXNzIGlzIHRvIGdldCwgc2V0LCBvciBkZWxldGVcbnRoZSBhdHRyaWJ1dGUgZnJvbSBhbiBvYmplY3RcJ3MgZGljdGlvbmFyeS4gRm9yIGluc3RhbmNlLCBgYGEueGBgIGhhcyBhXG5sb29rdXAgY2hhaW4gc3RhcnRpbmcgd2l0aCBgYGEuX19kaWN0X19bXCd4XCddYGAsIHRoZW5cbmBgdHlwZShhKS5fX2RpY3RfX1tcJ3hcJ11gYCwgYW5kIGNvbnRpbnVpbmcgdGhyb3VnaCB0aGUgYmFzZSBjbGFzc2VzIG9mXG5gYHR5cGUoYSlgYCBleGNsdWRpbmcgbWV0YWNsYXNzZXMuXG5cbkhvd2V2ZXIsIGlmIHRoZSBsb29rZWQtdXAgdmFsdWUgaXMgYW4gb2JqZWN0IGRlZmluaW5nIG9uZSBvZiB0aGVcbmRlc2NyaXB0b3IgbWV0aG9kcywgdGhlbiBQeXRob24gbWF5IG92ZXJyaWRlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIGFuZFxuaW52b2tlIHRoZSBkZXNjcmlwdG9yIG1ldGhvZCBpbnN0ZWFkLiAgV2hlcmUgdGhpcyBvY2N1cnMgaW4gdGhlXG5wcmVjZWRlbmNlIGNoYWluIGRlcGVuZHMgb24gd2hpY2ggZGVzY3JpcHRvciBtZXRob2RzIHdlcmUgZGVmaW5lZCBhbmRcbmhvdyB0aGV5IHdlcmUgY2FsbGVkLlxuXG5UaGUgc3RhcnRpbmcgcG9pbnQgZm9yIGRlc2NyaXB0b3IgaW52b2NhdGlvbiBpcyBhIGJpbmRpbmcsIGBgYS54YGAuXG5Ib3cgdGhlIGFyZ3VtZW50cyBhcmUgYXNzZW1ibGVkIGRlcGVuZHMgb24gYGBhYGA6XG5cbkRpcmVjdCBDYWxsXG4gICBUaGUgc2ltcGxlc3QgYW5kIGxlYXN0IGNvbW1vbiBjYWxsIGlzIHdoZW4gdXNlciBjb2RlIGRpcmVjdGx5XG4gICBpbnZva2VzIGEgZGVzY3JpcHRvciBtZXRob2Q6ICAgIGBgeC5fX2dldF9fKGEpYGAuXG5cbkluc3RhbmNlIEJpbmRpbmdcbiAgIElmIGJpbmRpbmcgdG8gYW4gb2JqZWN0IGluc3RhbmNlLCBgYGEueGBgIGlzIHRyYW5zZm9ybWVkIGludG8gdGhlXG4gICBjYWxsOiBgYHR5cGUoYSkuX19kaWN0X19bXCd4XCddLl9fZ2V0X18oYSwgdHlwZShhKSlgYC5cblxuQ2xhc3MgQmluZGluZ1xuICAgSWYgYmluZGluZyB0byBhIGNsYXNzLCBgYEEueGBgIGlzIHRyYW5zZm9ybWVkIGludG8gdGhlIGNhbGw6XG4gICBgYEEuX19kaWN0X19bXCd4XCddLl9fZ2V0X18oTm9uZSwgQSlgYC5cblxuU3VwZXIgQmluZGluZ1xuICAgSWYgYGBhYGAgaXMgYW4gaW5zdGFuY2Ugb2YgYGBzdXBlcmBgLCB0aGVuIHRoZSBiaW5kaW5nIGBgc3VwZXIoQixcbiAgIG9iaikubSgpYGAgc2VhcmNoZXMgYGBvYmouX19jbGFzc19fLl9fbXJvX19gYCBmb3IgdGhlIGJhc2UgY2xhc3NcbiAgIGBgQWBgIGltbWVkaWF0ZWx5IHByZWNlZGluZyBgYEJgYCBhbmQgdGhlbiBpbnZva2VzIHRoZSBkZXNjcmlwdG9yXG4gICB3aXRoIHRoZSBjYWxsOiBgYEEuX19kaWN0X19bXCdtXCddLl9fZ2V0X18ob2JqLCBvYmouX19jbGFzc19fKWBgLlxuXG5Gb3IgaW5zdGFuY2UgYmluZGluZ3MsIHRoZSBwcmVjZWRlbmNlIG9mIGRlc2NyaXB0b3IgaW52b2NhdGlvbiBkZXBlbmRzXG5vbiB0aGUgd2hpY2ggZGVzY3JpcHRvciBtZXRob2RzIGFyZSBkZWZpbmVkLiAgQSBkZXNjcmlwdG9yIGNhbiBkZWZpbmVcbmFueSBjb21iaW5hdGlvbiBvZiBgYF9fZ2V0X18oKWBgLCBgYF9fc2V0X18oKWBgIGFuZCBgYF9fZGVsZXRlX18oKWBgLlxuSWYgaXQgZG9lcyBub3QgZGVmaW5lIGBgX19nZXRfXygpYGAsIHRoZW4gYWNjZXNzaW5nIHRoZSBhdHRyaWJ1dGUgd2lsbFxucmV0dXJuIHRoZSBkZXNjcmlwdG9yIG9iamVjdCBpdHNlbGYgdW5sZXNzIHRoZXJlIGlzIGEgdmFsdWUgaW4gdGhlXG5vYmplY3RcJ3MgaW5zdGFuY2UgZGljdGlvbmFyeS4gIElmIHRoZSBkZXNjcmlwdG9yIGRlZmluZXMgYGBfX3NldF9fKClgYFxuYW5kL29yIGBgX19kZWxldGVfXygpYGAsIGl0IGlzIGEgZGF0YSBkZXNjcmlwdG9yOyBpZiBpdCBkZWZpbmVzXG5uZWl0aGVyLCBpdCBpcyBhIG5vbi1kYXRhIGRlc2NyaXB0b3IuICBOb3JtYWxseSwgZGF0YSBkZXNjcmlwdG9yc1xuZGVmaW5lIGJvdGggYGBfX2dldF9fKClgYCBhbmQgYGBfX3NldF9fKClgYCwgd2hpbGUgbm9uLWRhdGFcbmRlc2NyaXB0b3JzIGhhdmUganVzdCB0aGUgYGBfX2dldF9fKClgYCBtZXRob2QuICBEYXRhIGRlc2NyaXB0b3JzIHdpdGhcbmBgX19zZXRfXygpYGAgYW5kIGBgX19nZXRfXygpYGAgZGVmaW5lZCBhbHdheXMgb3ZlcnJpZGUgYSByZWRlZmluaXRpb25cbmluIGFuIGluc3RhbmNlIGRpY3Rpb25hcnkuICBJbiBjb250cmFzdCwgbm9uLWRhdGEgZGVzY3JpcHRvcnMgY2FuIGJlXG5vdmVycmlkZGVuIGJ5IGluc3RhbmNlcy5cblxuUHl0aG9uIG1ldGhvZHMgKGluY2x1ZGluZyBgYHN0YXRpY21ldGhvZCgpYGAgYW5kIGBgY2xhc3NtZXRob2QoKWBgKVxuYXJlIGltcGxlbWVudGVkIGFzIG5vbi1kYXRhIGRlc2NyaXB0b3JzLiAgQWNjb3JkaW5nbHksIGluc3RhbmNlcyBjYW5cbnJlZGVmaW5lIGFuZCBvdmVycmlkZSBtZXRob2RzLiAgVGhpcyBhbGxvd3MgaW5kaXZpZHVhbCBpbnN0YW5jZXMgdG9cbmFjcXVpcmUgYmVoYXZpb3JzIHRoYXQgZGlmZmVyIGZyb20gb3RoZXIgaW5zdGFuY2VzIG9mIHRoZSBzYW1lIGNsYXNzLlxuXG5UaGUgYGBwcm9wZXJ0eSgpYGAgZnVuY3Rpb24gaXMgaW1wbGVtZW50ZWQgYXMgYSBkYXRhIGRlc2NyaXB0b3IuXG5BY2NvcmRpbmdseSwgaW5zdGFuY2VzIGNhbm5vdCBvdmVycmlkZSB0aGUgYmVoYXZpb3Igb2YgYSBwcm9wZXJ0eS5cblxuXG5fX3Nsb3RzX19cbj09PT09PT09PVxuXG5CeSBkZWZhdWx0LCBpbnN0YW5jZXMgb2YgY2xhc3NlcyBoYXZlIGEgZGljdGlvbmFyeSBmb3IgYXR0cmlidXRlXG5zdG9yYWdlLiAgVGhpcyB3YXN0ZXMgc3BhY2UgZm9yIG9iamVjdHMgaGF2aW5nIHZlcnkgZmV3IGluc3RhbmNlXG52YXJpYWJsZXMuICBUaGUgc3BhY2UgY29uc3VtcHRpb24gY2FuIGJlY29tZSBhY3V0ZSB3aGVuIGNyZWF0aW5nIGxhcmdlXG5udW1iZXJzIG9mIGluc3RhbmNlcy5cblxuVGhlIGRlZmF1bHQgY2FuIGJlIG92ZXJyaWRkZW4gYnkgZGVmaW5pbmcgKl9fc2xvdHNfXyogaW4gYSBjbGFzc1xuZGVmaW5pdGlvbi4gVGhlICpfX3Nsb3RzX18qIGRlY2xhcmF0aW9uIHRha2VzIGEgc2VxdWVuY2Ugb2YgaW5zdGFuY2VcbnZhcmlhYmxlcyBhbmQgcmVzZXJ2ZXMganVzdCBlbm91Z2ggc3BhY2UgaW4gZWFjaCBpbnN0YW5jZSB0byBob2xkIGFcbnZhbHVlIGZvciBlYWNoIHZhcmlhYmxlLiAgU3BhY2UgaXMgc2F2ZWQgYmVjYXVzZSAqX19kaWN0X18qIGlzIG5vdFxuY3JlYXRlZCBmb3IgZWFjaCBpbnN0YW5jZS5cblxub2JqZWN0Ll9fc2xvdHNfX1xuXG4gICBUaGlzIGNsYXNzIHZhcmlhYmxlIGNhbiBiZSBhc3NpZ25lZCBhIHN0cmluZywgaXRlcmFibGUsIG9yIHNlcXVlbmNlXG4gICBvZiBzdHJpbmdzIHdpdGggdmFyaWFibGUgbmFtZXMgdXNlZCBieSBpbnN0YW5jZXMuICBJZiBkZWZpbmVkIGluIGFcbiAgIGNsYXNzLCAqX19zbG90c19fKiByZXNlcnZlcyBzcGFjZSBmb3IgdGhlIGRlY2xhcmVkIHZhcmlhYmxlcyBhbmRcbiAgIHByZXZlbnRzIHRoZSBhdXRvbWF0aWMgY3JlYXRpb24gb2YgKl9fZGljdF9fKiBhbmQgKl9fd2Vha3JlZl9fKiBmb3JcbiAgIGVhY2ggaW5zdGFuY2UuXG5cblxuTm90ZXMgb24gdXNpbmcgKl9fc2xvdHNfXypcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiogV2hlbiBpbmhlcml0aW5nIGZyb20gYSBjbGFzcyB3aXRob3V0ICpfX3Nsb3RzX18qLCB0aGUgKl9fZGljdF9fKlxuICBhdHRyaWJ1dGUgb2YgdGhhdCBjbGFzcyB3aWxsIGFsd2F5cyBiZSBhY2Nlc3NpYmxlLCBzbyBhICpfX3Nsb3RzX18qXG4gIGRlZmluaXRpb24gaW4gdGhlIHN1YmNsYXNzIGlzIG1lYW5pbmdsZXNzLlxuXG4qIFdpdGhvdXQgYSAqX19kaWN0X18qIHZhcmlhYmxlLCBpbnN0YW5jZXMgY2Fubm90IGJlIGFzc2lnbmVkIG5ld1xuICB2YXJpYWJsZXMgbm90IGxpc3RlZCBpbiB0aGUgKl9fc2xvdHNfXyogZGVmaW5pdGlvbi4gIEF0dGVtcHRzIHRvXG4gIGFzc2lnbiB0byBhbiB1bmxpc3RlZCB2YXJpYWJsZSBuYW1lIHJhaXNlcyBgYEF0dHJpYnV0ZUVycm9yYGAuIElmXG4gIGR5bmFtaWMgYXNzaWdubWVudCBvZiBuZXcgdmFyaWFibGVzIGlzIGRlc2lyZWQsIHRoZW4gYWRkXG4gIGBgXCdfX2RpY3RfX1wnYGAgdG8gdGhlIHNlcXVlbmNlIG9mIHN0cmluZ3MgaW4gdGhlICpfX3Nsb3RzX18qXG4gIGRlY2xhcmF0aW9uLlxuXG4qIFdpdGhvdXQgYSAqX193ZWFrcmVmX18qIHZhcmlhYmxlIGZvciBlYWNoIGluc3RhbmNlLCBjbGFzc2VzIGRlZmluaW5nXG4gICpfX3Nsb3RzX18qIGRvIG5vdCBzdXBwb3J0IHdlYWsgcmVmZXJlbmNlcyB0byBpdHMgaW5zdGFuY2VzLiBJZiB3ZWFrXG4gIHJlZmVyZW5jZSBzdXBwb3J0IGlzIG5lZWRlZCwgdGhlbiBhZGQgYGBcJ19fd2Vha3JlZl9fXCdgYCB0byB0aGVcbiAgc2VxdWVuY2Ugb2Ygc3RyaW5ncyBpbiB0aGUgKl9fc2xvdHNfXyogZGVjbGFyYXRpb24uXG5cbiogKl9fc2xvdHNfXyogYXJlIGltcGxlbWVudGVkIGF0IHRoZSBjbGFzcyBsZXZlbCBieSBjcmVhdGluZ1xuICBkZXNjcmlwdG9ycyAoKkltcGxlbWVudGluZyBEZXNjcmlwdG9ycyopIGZvciBlYWNoIHZhcmlhYmxlIG5hbWUuICBBc1xuICBhIHJlc3VsdCwgY2xhc3MgYXR0cmlidXRlcyBjYW5ub3QgYmUgdXNlZCB0byBzZXQgZGVmYXVsdCB2YWx1ZXMgZm9yXG4gIGluc3RhbmNlIHZhcmlhYmxlcyBkZWZpbmVkIGJ5ICpfX3Nsb3RzX18qOyBvdGhlcndpc2UsIHRoZSBjbGFzc1xuICBhdHRyaWJ1dGUgd291bGQgb3ZlcndyaXRlIHRoZSBkZXNjcmlwdG9yIGFzc2lnbm1lbnQuXG5cbiogVGhlIGFjdGlvbiBvZiBhICpfX3Nsb3RzX18qIGRlY2xhcmF0aW9uIGlzIGxpbWl0ZWQgdG8gdGhlIGNsYXNzXG4gIHdoZXJlIGl0IGlzIGRlZmluZWQuICBBcyBhIHJlc3VsdCwgc3ViY2xhc3NlcyB3aWxsIGhhdmUgYSAqX19kaWN0X18qXG4gIHVubGVzcyB0aGV5IGFsc28gZGVmaW5lICpfX3Nsb3RzX18qICh3aGljaCBtdXN0IG9ubHkgY29udGFpbiBuYW1lc1xuICBvZiBhbnkgKmFkZGl0aW9uYWwqIHNsb3RzKS5cblxuKiBJZiBhIGNsYXNzIGRlZmluZXMgYSBzbG90IGFsc28gZGVmaW5lZCBpbiBhIGJhc2UgY2xhc3MsIHRoZSBpbnN0YW5jZVxuICB2YXJpYWJsZSBkZWZpbmVkIGJ5IHRoZSBiYXNlIGNsYXNzIHNsb3QgaXMgaW5hY2Nlc3NpYmxlIChleGNlcHQgYnlcbiAgcmV0cmlldmluZyBpdHMgZGVzY3JpcHRvciBkaXJlY3RseSBmcm9tIHRoZSBiYXNlIGNsYXNzKS4gVGhpc1xuICByZW5kZXJzIHRoZSBtZWFuaW5nIG9mIHRoZSBwcm9ncmFtIHVuZGVmaW5lZC4gIEluIHRoZSBmdXR1cmUsIGFcbiAgY2hlY2sgbWF5IGJlIGFkZGVkIHRvIHByZXZlbnQgdGhpcy5cblxuKiBOb25lbXB0eSAqX19zbG90c19fKiBkb2VzIG5vdCB3b3JrIGZvciBjbGFzc2VzIGRlcml2ZWQgZnJvbVxuICAidmFyaWFibGUtbGVuZ3RoIiBidWlsdC1pbiB0eXBlcyBzdWNoIGFzIGBgaW50YGAsIGBgc3RyYGAgYW5kXG4gIGBgdHVwbGVgYC5cblxuKiBBbnkgbm9uLXN0cmluZyBpdGVyYWJsZSBtYXkgYmUgYXNzaWduZWQgdG8gKl9fc2xvdHNfXyouIE1hcHBpbmdzIG1heVxuICBhbHNvIGJlIHVzZWQ7IGhvd2V2ZXIsIGluIHRoZSBmdXR1cmUsIHNwZWNpYWwgbWVhbmluZyBtYXkgYmVcbiAgYXNzaWduZWQgdG8gdGhlIHZhbHVlcyBjb3JyZXNwb25kaW5nIHRvIGVhY2gga2V5LlxuXG4qICpfX2NsYXNzX18qIGFzc2lnbm1lbnQgd29ya3Mgb25seSBpZiBib3RoIGNsYXNzZXMgaGF2ZSB0aGUgc2FtZVxuICAqX19zbG90c19fKi5cbicsCisgJ2F0dHJpYnV0ZS1hY2Nlc3MnOiAnXG5DdXN0b21pemluZyBhdHRyaWJ1dGUgYWNjZXNzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cblRoZSBmb2xsb3dpbmcgbWV0aG9kcyBjYW4gYmUgZGVmaW5lZCB0byBjdXN0b21pemUgdGhlIG1lYW5pbmcgb2ZcbmF0dHJpYnV0ZSBhY2Nlc3MgKHVzZSBvZiwgYXNzaWdubWVudCB0bywgb3IgZGVsZXRpb24gb2YgYGB4Lm5hbWVgYClcbmZvciBjbGFzcyBpbnN0YW5jZXMuXG5cbm9iamVjdC5fX2dldGF0dHJfXyhzZWxmLCBuYW1lKVxuXG4gICBDYWxsZWQgd2hlbiBhbiBhdHRyaWJ1dGUgbG9va3VwIGhhcyBub3QgZm91bmQgdGhlIGF0dHJpYnV0ZSBpbiB0aGVcbiAgIHVzdWFsIHBsYWNlcyAoaS5lLiBpdCBpcyBub3QgYW4gaW5zdGFuY2UgYXR0cmlidXRlIG5vciBpcyBpdCBmb3VuZFxuICAgaW4gdGhlIGNsYXNzIHRyZWUgZm9yIGBgc2VsZmBgKS4gIGBgbmFtZWBgIGlzIHRoZSBhdHRyaWJ1dGUgbmFtZS5cbiAgIFRoaXMgbWV0aG9kIHNob3VsZCByZXR1cm4gdGhlIChjb21wdXRlZCkgYXR0cmlidXRlIHZhbHVlIG9yIHJhaXNlXG4gICBhbiBgYEF0dHJpYnV0ZUVycm9yYGAgZXhjZXB0aW9uLlxuXG4gICBOb3RlIHRoYXQgaWYgdGhlIGF0dHJpYnV0ZSBpcyBmb3VuZCB0aHJvdWdoIHRoZSBub3JtYWwgbWVjaGFuaXNtLFxuICAgYGBfX2dldGF0dHJfXygpYGAgaXMgbm90IGNhbGxlZC4gIChUaGlzIGlzIGFuIGludGVudGlvbmFsIGFzeW1tZXRyeVxuICAgYmV0d2VlbiBgYF9fZ2V0YXR0cl9fKClgYCBhbmQgYGBfX3NldGF0dHJfXygpYGAuKSBUaGlzIGlzIGRvbmUgYm90aFxuICAgZm9yIGVmZmljaWVuY3kgcmVhc29ucyBhbmQgYmVjYXVzZSBvdGhlcndpc2UgYGBfX2dldGF0dHJfXygpYGBcbiAgIHdvdWxkIGhhdmUgbm8gd2F5IHRvIGFjY2VzcyBvdGhlciBhdHRyaWJ1dGVzIG9mIHRoZSBpbnN0YW5jZS4gIE5vdGVcbiAgIHRoYXQgYXQgbGVhc3QgZm9yIGluc3RhbmNlIHZhcmlhYmxlcywgeW91IGNhbiBmYWtlIHRvdGFsIGNvbnRyb2wgYnlcbiAgIG5vdCBpbnNlcnRpbmcgYW55IHZhbHVlcyBpbiB0aGUgaW5zdGFuY2UgYXR0cmlidXRlIGRpY3Rpb25hcnkgKGJ1dFxuICAgaW5zdGVhZCBpbnNlcnRpbmcgdGhlbSBpbiBhbm90aGVyIG9iamVjdCkuICBTZWUgdGhlXG4gICBgYF9fZ2V0YXR0cmlidXRlX18oKWBgIG1ldGhvZCBiZWxvdyBmb3IgYSB3YXkgdG8gYWN0dWFsbHkgZ2V0IHRvdGFsXG4gICBjb250cm9sIG92ZXIgYXR0cmlidXRlIGFjY2Vzcy5cblxub2JqZWN0Ll9fZ2V0YXR0cmlidXRlX18oc2VsZiwgbmFtZSlcblxuICAgQ2FsbGVkIHVuY29uZGl0aW9uYWxseSB0byBpbXBsZW1lbnQgYXR0cmlidXRlIGFjY2Vzc2VzIGZvclxuICAgaW5zdGFuY2VzIG9mIHRoZSBjbGFzcy4gSWYgdGhlIGNsYXNzIGFsc28gZGVmaW5lc1xuICAgYGBfX2dldGF0dHJfXygpYGAsIHRoZSBsYXR0ZXIgd2lsbCBub3QgYmUgY2FsbGVkIHVubGVzc1xuICAgYGBfX2dldGF0dHJpYnV0ZV9fKClgYCBlaXRoZXIgY2FsbHMgaXQgZXhwbGljaXRseSBvciByYWlzZXMgYW5cbiAgIGBgQXR0cmlidXRlRXJyb3JgYC4gVGhpcyBtZXRob2Qgc2hvdWxkIHJldHVybiB0aGUgKGNvbXB1dGVkKVxuICAgYXR0cmlidXRlIHZhbHVlIG9yIHJhaXNlIGFuIGBgQXR0cmlidXRlRXJyb3JgYCBleGNlcHRpb24uIEluIG9yZGVyXG4gICB0byBhdm9pZCBpbmZpbml0ZSByZWN1cnNpb24gaW4gdGhpcyBtZXRob2QsIGl0cyBpbXBsZW1lbnRhdGlvblxuICAgc2hvdWxkIGFsd2F5cyBjYWxsIHRoZSBiYXNlIGNsYXNzIG1ldGhvZCB3aXRoIHRoZSBzYW1lIG5hbWUgdG9cbiAgIGFjY2VzcyBhbnkgYXR0cmlidXRlcyBpdCBuZWVkcywgZm9yIGV4YW1wbGUsXG4gICBgYG9iamVjdC5fX2dldGF0dHJpYnV0ZV9fKHNlbGYsIG5hbWUpYGAuXG5cbiAgIE5vdGU6IFRoaXMgbWV0aG9kIG1heSBzdGlsbCBiZSBieXBhc3NlZCB3aGVuIGxvb2tpbmcgdXAgc3BlY2lhbCBtZXRob2RzXG4gICAgIGFzIHRoZSByZXN1bHQgb2YgaW1wbGljaXQgaW52b2NhdGlvbiB2aWEgbGFuZ3VhZ2Ugc3ludGF4IG9yXG4gICAgIGJ1aWx0LWluIGZ1bmN0aW9ucy4gU2VlICpTcGVjaWFsIG1ldGhvZCBsb29rdXAqLlxuXG5vYmplY3QuX19zZXRhdHRyX18oc2VsZiwgbmFtZSwgdmFsdWUpXG5cbiAgIENhbGxlZCB3aGVuIGFuIGF0dHJpYnV0ZSBhc3NpZ25tZW50IGlzIGF0dGVtcHRlZC4gIFRoaXMgaXMgY2FsbGVkXG4gICBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgbWVjaGFuaXNtIChpLmUuIHN0b3JlIHRoZSB2YWx1ZSBpbiB0aGVcbiAgIGluc3RhbmNlIGRpY3Rpb25hcnkpLiAqbmFtZSogaXMgdGhlIGF0dHJpYnV0ZSBuYW1lLCAqdmFsdWUqIGlzIHRoZVxuICAgdmFsdWUgdG8gYmUgYXNzaWduZWQgdG8gaXQuXG5cbiAgIElmIGBgX19zZXRhdHRyX18oKWBgIHdhbnRzIHRvIGFzc2lnbiB0byBhbiBpbnN0YW5jZSBhdHRyaWJ1dGUsIGl0XG4gICBzaG91bGQgY2FsbCB0aGUgYmFzZSBjbGFzcyBtZXRob2Qgd2l0aCB0aGUgc2FtZSBuYW1lLCBmb3IgZXhhbXBsZSxcbiAgIGBgb2JqZWN0Ll9fc2V0YXR0cl9fKHNlbGYsIG5hbWUsIHZhbHVlKWBgLlxuXG5vYmplY3QuX19kZWxhdHRyX18oc2VsZiwgbmFtZSlcblxuICAgTGlrZSBgYF9fc2V0YXR0cl9fKClgYCBidXQgZm9yIGF0dHJpYnV0ZSBkZWxldGlvbiBpbnN0ZWFkIG9mXG4gICBhc3NpZ25tZW50LiAgVGhpcyBzaG91bGQgb25seSBiZSBpbXBsZW1lbnRlZCBpZiBgYGRlbCBvYmoubmFtZWBgIGlzXG4gICBtZWFuaW5nZnVsIGZvciB0aGUgb2JqZWN0LlxuXG5vYmplY3QuX19kaXJfXyhzZWxmKVxuXG4gICBDYWxsZWQgd2hlbiBgYGRpcigpYGAgaXMgY2FsbGVkIG9uIHRoZSBvYmplY3QuIEEgc2VxdWVuY2UgbXVzdCBiZVxuICAgcmV0dXJuZWQuIGBgZGlyKClgYCBjb252ZXJ0cyB0aGUgcmV0dXJuZWQgc2VxdWVuY2UgdG8gYSBsaXN0IGFuZFxuICAgc29ydHMgaXQuXG5cblxuSW1wbGVtZW50aW5nIERlc2NyaXB0b3JzXG49PT09PT09PT09PT09PT09PT09PT09PT1cblxuVGhlIGZvbGxvd2luZyBtZXRob2RzIG9ubHkgYXBwbHkgd2hlbiBhbiBpbnN0YW5jZSBvZiB0aGUgY2xhc3NcbmNvbnRhaW5pbmcgdGhlIG1ldGhvZCAoYSBzby1jYWxsZWQgKmRlc2NyaXB0b3IqIGNsYXNzKSBhcHBlYXJzIGluIGFuXG4qb3duZXIqIGNsYXNzICh0aGUgZGVzY3JpcHRvciBtdXN0IGJlIGluIGVpdGhlciB0aGUgb3duZXJcJ3MgY2xhc3NcbmRpY3Rpb25hcnkgb3IgaW4gdGhlIGNsYXNzIGRpY3Rpb25hcnkgZm9yIG9uZSBvZiBpdHMgcGFyZW50cykuICBJbiB0aGVcbmV4YW1wbGVzIGJlbG93LCAidGhlIGF0dHJpYnV0ZSIgcmVmZXJzIHRvIHRoZSBhdHRyaWJ1dGUgd2hvc2UgbmFtZSBpc1xudGhlIGtleSBvZiB0aGUgcHJvcGVydHkgaW4gdGhlIG93bmVyIGNsYXNzXCcgYGBfX2RpY3RfX2BgLlxuXG5vYmplY3QuX19nZXRfXyhzZWxmLCBpbnN0YW5jZSwgb3duZXIpXG5cbiAgIENhbGxlZCB0byBnZXQgdGhlIGF0dHJpYnV0ZSBvZiB0aGUgb3duZXIgY2xhc3MgKGNsYXNzIGF0dHJpYnV0ZVxuICAgYWNjZXNzKSBvciBvZiBhbiBpbnN0YW5jZSBvZiB0aGF0IGNsYXNzIChpbnN0YW5jZSBhdHRyaWJ1dGVcbiAgIGFjY2VzcykuICpvd25lciogaXMgYWx3YXlzIHRoZSBvd25lciBjbGFzcywgd2hpbGUgKmluc3RhbmNlKiBpcyB0aGVcbiAgIGluc3RhbmNlIHRoYXQgdGhlIGF0dHJpYnV0ZSB3YXMgYWNjZXNzZWQgdGhyb3VnaCwgb3IgYGBOb25lYGAgd2hlblxuICAgdGhlIGF0dHJpYnV0ZSBpcyBhY2Nlc3NlZCB0aHJvdWdoIHRoZSAqb3duZXIqLiAgVGhpcyBtZXRob2Qgc2hvdWxkXG4gICByZXR1cm4gdGhlIChjb21wdXRlZCkgYXR0cmlidXRlIHZhbHVlIG9yIHJhaXNlIGFuXG4gICBgYEF0dHJpYnV0ZUVycm9yYGAgZXhjZXB0aW9uLlxuXG5vYmplY3QuX19zZXRfXyhzZWxmLCBpbnN0YW5jZSwgdmFsdWUpXG5cbiAgIENhbGxlZCB0byBzZXQgdGhlIGF0dHJpYnV0ZSBvbiBhbiBpbnN0YW5jZSAqaW5zdGFuY2UqIG9mIHRoZSBvd25lclxuICAgY2xhc3MgdG8gYSBuZXcgdmFsdWUsICp2YWx1ZSouXG5cbm9iamVjdC5fX2RlbGV0ZV9fKHNlbGYsIGluc3RhbmNlKVxuXG4gICBDYWxsZWQgdG8gZGVsZXRlIHRoZSBhdHRyaWJ1dGUgb24gYW4gaW5zdGFuY2UgKmluc3RhbmNlKiBvZiB0aGVcbiAgIG93bmVyIGNsYXNzLlxuXG5cbkludm9raW5nIERlc2NyaXB0b3JzXG49PT09PT09PT09PT09PT09PT09PVxuXG5JbiBnZW5lcmFsLCBhIGRlc2NyaXB0b3IgaXMgYW4gb2JqZWN0IGF0dHJpYnV0ZSB3aXRoICJiaW5kaW5nXG5iZWhhdmlvciIsIG9uZSB3aG9zZSBhdHRyaWJ1dGUgYWNjZXNzIGhhcyBiZWVuIG92ZXJyaWRkZW4gYnkgbWV0aG9kc1xuaW4gdGhlIGRlc2NyaXB0b3IgcHJvdG9jb2w6ICBgYF9fZ2V0X18oKWBgLCBgYF9fc2V0X18oKWBgLCBhbmRcbmBgX19kZWxldGVfXygpYGAuIElmIGFueSBvZiB0aG9zZSBtZXRob2RzIGFyZSBkZWZpbmVkIGZvciBhbiBvYmplY3QsXG5pdCBpcyBzYWlkIHRvIGJlIGEgZGVzY3JpcHRvci5cblxuVGhlIGRlZmF1bHQgYmVoYXZpb3IgZm9yIGF0dHJpYnV0ZSBhY2Nlc3MgaXMgdG8gZ2V0LCBzZXQsIG9yIGRlbGV0ZVxudGhlIGF0dHJpYnV0ZSBmcm9tIGFuIG9iamVjdFwncyBkaWN0aW9uYXJ5LiBGb3IgaW5zdGFuY2UsIGBgYS54YGAgaGFzIGFcbmxvb2t1cCBjaGFpbiBzdGFydGluZyB3aXRoIGBgYS5fX2RpY3RfX1tcJ3hcJ11gYCwgdGhlblxuYGB0eXBlKGEpLl9fZGljdF9fW1wneFwnXWBgLCBhbmQgY29udGludWluZyB0aHJvdWdoIHRoZSBiYXNlIGNsYXNzZXMgb2ZcbmBgdHlwZShhKWBgIGV4Y2x1ZGluZyBtZXRhY2xhc3Nlcy5cblxuSG93ZXZlciwgaWYgdGhlIGxvb2tlZC11cCB2YWx1ZSBpcyBhbiBvYmplY3QgZGVmaW5pbmcgb25lIG9mIHRoZVxuZGVzY3JpcHRvciBtZXRob2RzLCB0aGVuIFB5dGhvbiBtYXkgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYmVoYXZpb3IgYW5kXG5pbnZva2UgdGhlIGRlc2NyaXB0b3IgbWV0aG9kIGluc3RlYWQuICBXaGVyZSB0aGlzIG9jY3VycyBpbiB0aGVcbnByZWNlZGVuY2UgY2hhaW4gZGVwZW5kcyBvbiB3aGljaCBkZXNjcmlwdG9yIG1ldGhvZHMgd2VyZSBkZWZpbmVkIGFuZFxuaG93IHRoZXkgd2VyZSBjYWxsZWQuXG5cblRoZSBzdGFydGluZyBwb2ludCBmb3IgZGVzY3JpcHRvciBpbnZvY2F0aW9uIGlzIGEgYmluZGluZywgYGBhLnhgYC5cbkhvdyB0aGUgYXJndW1lbnRzIGFyZSBhc3NlbWJsZWQgZGVwZW5kcyBvbiBgYGFgYDpcblxuRGlyZWN0IENhbGxcbiAgIFRoZSBzaW1wbGVzdCBhbmQgbGVhc3QgY29tbW9uIGNhbGwgaXMgd2hlbiB1c2VyIGNvZGUgZGlyZWN0bHlcbiAgIGludm9rZXMgYSBkZXNjcmlwdG9yIG1ldGhvZDogICAgYGB4Ll9fZ2V0X18oYSlgYC5cblxuSW5zdGFuY2UgQmluZGluZ1xuICAgSWYgYmluZGluZyB0byBhbiBvYmplY3QgaW5zdGFuY2UsIGBgYS54YGAgaXMgdHJhbnNmb3JtZWQgaW50byB0aGVcbiAgIGNhbGw6IGBgdHlwZShhKS5fX2RpY3RfX1tcJ3hcJ10uX19nZXRfXyhhLCB0eXBlKGEpKWBgLlxuXG5DbGFzcyBCaW5kaW5nXG4gICBJZiBiaW5kaW5nIHRvIGEgY2xhc3MsIGBgQS54YGAgaXMgdHJhbnNmb3JtZWQgaW50byB0aGUgY2FsbDpcbiAgIGBgQS5fX2RpY3RfX1tcJ3hcJ10uX19nZXRfXyhOb25lLCBBKWBgLlxuXG5TdXBlciBCaW5kaW5nXG4gICBJZiBgYGFgYCBpcyBhbiBpbnN0YW5jZSBvZiBgYHN1cGVyYGAsIHRoZW4gdGhlIGJpbmRpbmcgYGBzdXBlcihCLFxuICAgb2JqKS5tKClgYCBzZWFyY2hlcyBgYG9iai5fX2NsYXNzX18uX19tcm9fX2BgIGZvciB0aGUgYmFzZSBjbGFzc1xuICAgYGBBYGAgaW1tZWRpYXRlbHkgcHJlY2VkaW5nIGBgQmBgIGFuZCB0aGVuIGludm9rZXMgdGhlIGRlc2NyaXB0b3JcbiAgIHdpdGggdGhlIGNhbGw6IGBgQS5fX2RpY3RfX1tcJ21cJ10uX19nZXRfXyhvYmosIG9iai5fX2NsYXNzX18pYGAuXG5cbkZvciBpbnN0YW5jZSBiaW5kaW5ncywgdGhlIHByZWNlZGVuY2Ugb2YgZGVzY3JpcHRvciBpbnZvY2F0aW9uIGRlcGVuZHNcbm9uIHRoZSB3aGljaCBkZXNjcmlwdG9yIG1ldGhvZHMgYXJlIGRlZmluZWQuICBBIGRlc2NyaXB0b3IgY2FuIGRlZmluZVxuYW55IGNvbWJpbmF0aW9uIG9mIGBgX19nZXRfXygpYGAsIGBgX19zZXRfXygpYGAgYW5kIGBgX19kZWxldGVfXygpYGAuXG5JZiBpdCBkb2VzIG5vdCBkZWZpbmUgYGBfX2dldF9fKClgYCwgdGhlbiBhY2Nlc3NpbmcgdGhlIGF0dHJpYnV0ZSB3aWxsXG5yZXR1cm4gdGhlIGRlc2NyaXB0b3Igb2JqZWN0IGl0c2VsZiB1bmxlc3MgdGhlcmUgaXMgYSB2YWx1ZSBpbiB0aGVcbm9iamVjdFwncyBpbnN0YW5jZSBkaWN0aW9uYXJ5LiAgSWYgdGhlIGRlc2NyaXB0b3IgZGVmaW5lcyBgYF9fc2V0X18oKWBgXG5hbmQvb3IgYGBfX2RlbGV0ZV9fKClgYCwgaXQgaXMgYSBkYXRhIGRlc2NyaXB0b3I7IGlmIGl0IGRlZmluZXNcbm5laXRoZXIsIGl0IGlzIGEgbm9uLWRhdGEgZGVzY3JpcHRvci4gIE5vcm1hbGx5LCBkYXRhIGRlc2NyaXB0b3JzXG5kZWZpbmUgYm90aCBgYF9fZ2V0X18oKWBgIGFuZCBgYF9fc2V0X18oKWBgLCB3aGlsZSBub24tZGF0YVxuZGVzY3JpcHRvcnMgaGF2ZSBqdXN0IHRoZSBgYF9fZ2V0X18oKWBgIG1ldGhvZC4gIERhdGEgZGVzY3JpcHRvcnMgd2l0aFxuYGBfX3NldF9fKClgYCBhbmQgYGBfX2dldF9fKClgYCBkZWZpbmVkIGFsd2F5cyBvdmVycmlkZSBhIHJlZGVmaW5pdGlvblxuaW4gYW4gaW5zdGFuY2UgZGljdGlvbmFyeS4gIEluIGNvbnRyYXN0LCBub24tZGF0YSBkZXNjcmlwdG9ycyBjYW4gYmVcbm92ZXJyaWRkZW4gYnkgaW5zdGFuY2VzLlxuXG5QeXRob24gbWV0aG9kcyAoaW5jbHVkaW5nIGBgc3RhdGljbWV0aG9kKClgYCBhbmQgYGBjbGFzc21ldGhvZCgpYGApXG5hcmUgaW1wbGVtZW50ZWQgYXMgbm9uLWRhdGEgZGVzY3JpcHRvcnMuICBBY2NvcmRpbmdseSwgaW5zdGFuY2VzIGNhblxucmVkZWZpbmUgYW5kIG92ZXJyaWRlIG1ldGhvZHMuICBUaGlzIGFsbG93cyBpbmRpdmlkdWFsIGluc3RhbmNlcyB0b1xuYWNxdWlyZSBiZWhhdmlvcnMgdGhhdCBkaWZmZXIgZnJvbSBvdGhlciBpbnN0YW5jZXMgb2YgdGhlIHNhbWUgY2xhc3MuXG5cblRoZSBgYHByb3BlcnR5KClgYCBmdW5jdGlvbiBpcyBpbXBsZW1lbnRlZCBhcyBhIGRhdGEgZGVzY3JpcHRvci5cbkFjY29yZGluZ2x5LCBpbnN0YW5jZXMgY2Fubm90IG92ZXJyaWRlIHRoZSBiZWhhdmlvciBvZiBhIHByb3BlcnR5LlxuXG5cbl9fc2xvdHNfX1xuPT09PT09PT09XG5cbkJ5IGRlZmF1bHQsIGluc3RhbmNlcyBvZiBjbGFzc2VzIGhhdmUgYSBkaWN0aW9uYXJ5IGZvciBhdHRyaWJ1dGVcbnN0b3JhZ2UuICBUaGlzIHdhc3RlcyBzcGFjZSBmb3Igb2JqZWN0cyBoYXZpbmcgdmVyeSBmZXcgaW5zdGFuY2VcbnZhcmlhYmxlcy4gIFRoZSBzcGFjZSBjb25zdW1wdGlvbiBjYW4gYmVjb21lIGFjdXRlIHdoZW4gY3JlYXRpbmcgbGFyZ2Vcbm51bWJlcnMgb2YgaW5zdGFuY2VzLlxuXG5UaGUgZGVmYXVsdCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyAqX19zbG90c19fKiBpbiBhIGNsYXNzXG5kZWZpbml0aW9uLiBUaGUgKl9fc2xvdHNfXyogZGVjbGFyYXRpb24gdGFrZXMgYSBzZXF1ZW5jZSBvZiBpbnN0YW5jZVxudmFyaWFibGVzIGFuZCByZXNlcnZlcyBqdXN0IGVub3VnaCBzcGFjZSBpbiBlYWNoIGluc3RhbmNlIHRvIGhvbGQgYVxudmFsdWUgZm9yIGVhY2ggdmFyaWFibGUuICBTcGFjZSBpcyBzYXZlZCBiZWNhdXNlICpfX2RpY3RfXyogaXMgbm90XG5jcmVhdGVkIGZvciBlYWNoIGluc3RhbmNlLlxuXG5vYmplY3QuX19zbG90c19fXG5cbiAgIFRoaXMgY2xhc3MgdmFyaWFibGUgY2FuIGJlIGFzc2lnbmVkIGEgc3RyaW5nLCBpdGVyYWJsZSwgb3Igc2VxdWVuY2VcbiAgIG9mIHN0cmluZ3Mgd2l0aCB2YXJpYWJsZSBuYW1lcyB1c2VkIGJ5IGluc3RhbmNlcy4gIElmIGRlZmluZWQgaW4gYVxuICAgY2xhc3MsICpfX3Nsb3RzX18qIHJlc2VydmVzIHNwYWNlIGZvciB0aGUgZGVjbGFyZWQgdmFyaWFibGVzIGFuZFxuICAgcHJldmVudHMgdGhlIGF1dG9tYXRpYyBjcmVhdGlvbiBvZiAqX19kaWN0X18qIGFuZCAqX193ZWFrcmVmX18qIGZvclxuICAgZWFjaCBpbnN0YW5jZS5cblxuXG5Ob3RlcyBvbiB1c2luZyAqX19zbG90c19fKlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuKiBXaGVuIGluaGVyaXRpbmcgZnJvbSBhIGNsYXNzIHdpdGhvdXQgKl9fc2xvdHNfXyosIHRoZSAqX19kaWN0X18qXG4gIGF0dHJpYnV0ZSBvZiB0aGF0IGNsYXNzIHdpbGwgYWx3YXlzIGJlIGFjY2Vzc2libGUsIHNvIGEgKl9fc2xvdHNfXypcbiAgZGVmaW5pdGlvbiBpbiB0aGUgc3ViY2xhc3MgaXMgbWVhbmluZ2xlc3MuXG5cbiogV2l0aG91dCBhICpfX2RpY3RfXyogdmFyaWFibGUsIGluc3RhbmNlcyBjYW5ub3QgYmUgYXNzaWduZWQgbmV3XG4gIHZhcmlhYmxlcyBub3QgbGlzdGVkIGluIHRoZSAqX19zbG90c19fKiBkZWZpbml0aW9uLiAgQXR0ZW1wdHMgdG9cbiAgYXNzaWduIHRvIGFuIHVubGlzdGVkIHZhcmlhYmxlIG5hbWUgcmFpc2VzIGBgQXR0cmlidXRlRXJyb3JgYC4gSWZcbiAgZHluYW1pYyBhc3NpZ25tZW50IG9mIG5ldyB2YXJpYWJsZXMgaXMgZGVzaXJlZCwgdGhlbiBhZGRcbiAgYGBcJ19fZGljdF9fXCdgYCB0byB0aGUgc2VxdWVuY2Ugb2Ygc3RyaW5ncyBpbiB0aGUgKl9fc2xvdHNfXypcbiAgZGVjbGFyYXRpb24uXG5cbiogV2l0aG91dCBhICpfX3dlYWtyZWZfXyogdmFyaWFibGUgZm9yIGVhY2ggaW5zdGFuY2UsIGNsYXNzZXMgZGVmaW5pbmdcbiAgKl9fc2xvdHNfXyogZG8gbm90IHN1cHBvcnQgd2VhayByZWZlcmVuY2VzIHRvIGl0cyBpbnN0YW5jZXMuIElmIHdlYWtcbiAgcmVmZXJlbmNlIHN1cHBvcnQgaXMgbmVlZGVkLCB0aGVuIGFkZCBgYFwnX193ZWFrcmVmX19cJ2BgIHRvIHRoZVxuICBzZXF1ZW5jZSBvZiBzdHJpbmdzIGluIHRoZSAqX19zbG90c19fKiBkZWNsYXJhdGlvbi5cblxuKiAqX19zbG90c19fKiBhcmUgaW1wbGVtZW50ZWQgYXQgdGhlIGNsYXNzIGxldmVsIGJ5IGNyZWF0aW5nXG4gIGRlc2NyaXB0b3JzICgqSW1wbGVtZW50aW5nIERlc2NyaXB0b3JzKikgZm9yIGVhY2ggdmFyaWFibGUgbmFtZS4gIEFzXG4gIGEgcmVzdWx0LCBjbGFzcyBhdHRyaWJ1dGVzIGNhbm5vdCBiZSB1c2VkIHRvIHNldCBkZWZhdWx0IHZhbHVlcyBmb3JcbiAgaW5zdGFuY2UgdmFyaWFibGVzIGRlZmluZWQgYnkgKl9fc2xvdHNfXyo7IG90aGVyd2lzZSwgdGhlIGNsYXNzXG4gIGF0dHJpYnV0ZSB3b3VsZCBvdmVyd3JpdGUgdGhlIGRlc2NyaXB0b3IgYXNzaWdubWVudC5cblxuKiBUaGUgYWN0aW9uIG9mIGEgKl9fc2xvdHNfXyogZGVjbGFyYXRpb24gaXMgbGltaXRlZCB0byB0aGUgY2xhc3NcbiAgd2hlcmUgaXQgaXMgZGVmaW5lZC4gIEFzIGEgcmVzdWx0LCBzdWJjbGFzc2VzIHdpbGwgaGF2ZSBhICpfX2RpY3RfXypcbiAgdW5sZXNzIHRoZXkgYWxzbyBkZWZpbmUgKl9fc2xvdHNfXyogKHdoaWNoIG11c3Qgb25seSBjb250YWluIG5hbWVzXG4gIG9mIGFueSAqYWRkaXRpb25hbCogc2xvdHMpLlxuXG4qIElmIGEgY2xhc3MgZGVmaW5lcyBhIHNsb3QgYWxzbyBkZWZpbmVkIGluIGEgYmFzZSBjbGFzcywgdGhlIGluc3RhbmNlXG4gIHZhcmlhYmxlIGRlZmluZWQgYnkgdGhlIGJhc2UgY2xhc3Mgc2xvdCBpcyBpbmFjY2Vzc2libGUgKGV4Y2VwdCBieVxuICByZXRyaWV2aW5nIGl0cyBkZXNjcmlwdG9yIGRpcmVjdGx5IGZyb20gdGhlIGJhc2UgY2xhc3MpLiBUaGlzXG4gIHJlbmRlcnMgdGhlIG1lYW5pbmcgb2YgdGhlIHByb2dyYW0gdW5kZWZpbmVkLiAgSW4gdGhlIGZ1dHVyZSwgYVxuICBjaGVjayBtYXkgYmUgYWRkZWQgdG8gcHJldmVudCB0aGlzLlxuXG4qIE5vbmVtcHR5ICpfX3Nsb3RzX18qIGRvZXMgbm90IHdvcmsgZm9yIGNsYXNzZXMgZGVyaXZlZCBmcm9tXG4gICJ2YXJpYWJsZS1sZW5ndGgiIGJ1aWx0LWluIHR5cGVzIHN1Y2ggYXMgYGBpbnRgYCwgYGBzdHJgYCBhbmRcbiAgYGB0dXBsZWBgLlxuXG4qIEFueSBub24tc3RyaW5nIGl0ZXJhYmxlIG1heSBiZSBhc3NpZ25lZCB0byAqX19zbG90c19fKi4gTWFwcGluZ3MgbWF5XG4gIGFsc28gYmUgdXNlZDsgaG93ZXZlciwgaW4gdGhlIGZ1dHVyZSwgc3BlY2lhbCBtZWFuaW5nIG1heSBiZVxuICBhc3NpZ25lZCB0byB0aGUgdmFsdWVzIGNvcnJlc3BvbmRpbmcgdG8gZWFjaCBrZXkuXG5cbiogKl9fY2xhc3NfXyogYXNzaWdubWVudCB3b3JrcyBvbmx5IGlmIGJvdGggY2xhc3NlcyBoYXZlIHRoZSBzYW1lXG4gICpfX3Nsb3RzX18qLlxuJywKICAnYXR0cmlidXRlLXJlZmVyZW5jZXMnOiAnXG5BdHRyaWJ1dGUgcmVmZXJlbmNlc1xuKioqKioqKioqKioqKioqKioqKipcblxuQW4gYXR0cmlidXRlIHJlZmVyZW5jZSBpcyBhIHByaW1hcnkgZm9sbG93ZWQgYnkgYSBwZXJpb2QgYW5kIGEgbmFtZTpcblxuICAgYXR0cmlidXRlcmVmIDo6PSBwcmltYXJ5ICIuIiBpZGVudGlmaWVyXG5cblRoZSBwcmltYXJ5IG11c3QgZXZhbHVhdGUgdG8gYW4gb2JqZWN0IG9mIGEgdHlwZSB0aGF0IHN1cHBvcnRzXG5hdHRyaWJ1dGUgcmVmZXJlbmNlcywgd2hpY2ggbW9zdCBvYmplY3RzIGRvLiAgVGhpcyBvYmplY3QgaXMgdGhlblxuYXNrZWQgdG8gcHJvZHVjZSB0aGUgYXR0cmlidXRlIHdob3NlIG5hbWUgaXMgdGhlIGlkZW50aWZpZXIgKHdoaWNoIGNhblxuYmUgY3VzdG9taXplZCBieSBvdmVycmlkaW5nIHRoZSBgYF9fZ2V0YXR0cl9fKClgYCBtZXRob2QpLiAgSWYgdGhpc1xuYXR0cmlidXRlIGlzIG5vdCBhdmFpbGFibGUsIHRoZSBleGNlcHRpb24gYGBBdHRyaWJ1dGVFcnJvcmBgIGlzXG5yYWlzZWQuICBPdGhlcndpc2UsIHRoZSB0eXBlIGFuZCB2YWx1ZSBvZiB0aGUgb2JqZWN0IHByb2R1Y2VkIGlzXG5kZXRlcm1pbmVkIGJ5IHRoZSBvYmplY3QuICBNdWx0aXBsZSBldmFsdWF0aW9ucyBvZiB0aGUgc2FtZSBhdHRyaWJ1dGVcbnJlZmVyZW5jZSBtYXkgeWllbGQgZGlmZmVyZW50IG9iamVjdHMuXG4nLAogICdhdWdhc3NpZ24nOiAnXG5BdWdtZW50ZWQgYXNzaWdubWVudCBzdGF0ZW1lbnRzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkF1Z21lbnRlZCBhc3NpZ25tZW50IGlzIHRoZSBjb21iaW5hdGlvbiwgaW4gYSBzaW5nbGUgc3RhdGVtZW50LCBvZiBhXG5iaW5hcnkgb3BlcmF0aW9uIGFuZCBhbiBhc3NpZ25tZW50IHN0YXRlbWVudDpcblxuICAgYXVnbWVudGVkX2Fzc2lnbm1lbnRfc3RtdCA6Oj0gYXVndGFyZ2V0IGF1Z29wIChleHByZXNzaW9uX2xpc3QgfCB5aWVsZF9leHByZXNzaW9uKVxuICAgYXVndGFyZ2V0ICAgICAgICAgICAgICAgICA6Oj0gaWRlbnRpZmllciB8IGF0dHJpYnV0ZXJlZiB8IHN1YnNjcmlwdGlvbiB8IHNsaWNpbmdcbiAgIGF1Z29wICAgICAgICAgICAgICAgICAgICAgOjo9ICIrPSIgfCAiLT0iIHwgIio9IiB8ICIvPSIgfCAiLy89IiB8ICIlPSIgfCAiKio9IlxuICAgICAgICAgICAgIHwgIj4+PSIgfCAiPDw9IiB8ICImPSIgfCAiXj0iIHwgInw9IlxuXG4oU2VlIHNlY3Rpb24gKlByaW1hcmllcyogZm9yIHRoZSBzeW50YXggZGVmaW5pdGlvbnMgZm9yIHRoZSBsYXN0IHRocmVlXG5zeW1ib2xzLilcblxuQW4gYXVnbWVudGVkIGFzc2lnbm1lbnQgZXZhbHVhdGVzIHRoZSB0YXJnZXQgKHdoaWNoLCB1bmxpa2Ugbm9ybWFsXG5hc3NpZ25tZW50IHN0YXRlbWVudHMsIGNhbm5vdCBiZSBhbiB1bnBhY2tpbmcpIGFuZCB0aGUgZXhwcmVzc2lvblxubGlzdCwgcGVyZm9ybXMgdGhlIGJpbmFyeSBvcGVyYXRpb24gc3BlY2lmaWMgdG8gdGhlIHR5cGUgb2YgYXNzaWdubWVudFxub24gdGhlIHR3byBvcGVyYW5kcywgYW5kIGFzc2lnbnMgdGhlIHJlc3VsdCB0byB0aGUgb3JpZ2luYWwgdGFyZ2V0LlxuVGhlIHRhcmdldCBpcyBvbmx5IGV2YWx1YXRlZCBvbmNlLlxuXG5BbiBhdWdtZW50ZWQgYXNzaWdubWVudCBleHByZXNzaW9uIGxpa2UgYGB4ICs9IDFgYCBjYW4gYmUgcmV3cml0dGVuIGFzXG5gYHggPSB4ICsgMWBgIHRvIGFjaGlldmUgYSBzaW1pbGFyLCBidXQgbm90IGV4YWN0bHkgZXF1YWwgZWZmZWN0LiBJblxudGhlIGF1Z21lbnRlZCB2ZXJzaW9uLCBgYHhgYCBpcyBvbmx5IGV2YWx1YXRlZCBvbmNlLiBBbHNvLCB3aGVuXG5wb3NzaWJsZSwgdGhlIGFjdHVhbCBvcGVyYXRpb24gaXMgcGVyZm9ybWVkICppbi1wbGFjZSosIG1lYW5pbmcgdGhhdFxucmF0aGVyIHRoYW4gY3JlYXRpbmcgYSBuZXcgb2JqZWN0IGFuZCBhc3NpZ25pbmcgdGhhdCB0byB0aGUgdGFyZ2V0LFxudGhlIG9sZCBvYmplY3QgaXMgbW9kaWZpZWQgaW5zdGVhZC5cblxuV2l0aCB0aGUgZXhjZXB0aW9uIG9mIGFzc2lnbmluZyB0byB0dXBsZXMgYW5kIG11bHRpcGxlIHRhcmdldHMgaW4gYVxuc2luZ2xlIHN0YXRlbWVudCwgdGhlIGFzc2lnbm1lbnQgZG9uZSBieSBhdWdtZW50ZWQgYXNzaWdubWVudFxuc3RhdGVtZW50cyBpcyBoYW5kbGVkIHRoZSBzYW1lIHdheSBhcyBub3JtYWwgYXNzaWdubWVudHMuIFNpbWlsYXJseSxcbndpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgcG9zc2libGUgKmluLXBsYWNlKiBiZWhhdmlvciwgdGhlIGJpbmFyeVxub3BlcmF0aW9uIHBlcmZvcm1lZCBieSBhdWdtZW50ZWQgYXNzaWdubWVudCBpcyB0aGUgc2FtZSBhcyB0aGUgbm9ybWFsXG5iaW5hcnkgb3BlcmF0aW9ucy5cblxuRm9yIHRhcmdldHMgd2hpY2ggYXJlIGF0dHJpYnV0ZSByZWZlcmVuY2VzLCB0aGUgc2FtZSAqY2F2ZWF0IGFib3V0XG5jbGFzcyBhbmQgaW5zdGFuY2UgYXR0cmlidXRlcyogYXBwbGllcyBhcyBmb3IgcmVndWxhciBhc3NpZ25tZW50cy5cbicsCiAgJ2JpbmFyeSc6ICdcbkJpbmFyeSBhcml0aG1ldGljIG9wZXJhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuVGhlIGJpbmFyeSBhcml0aG1ldGljIG9wZXJhdGlvbnMgaGF2ZSB0aGUgY29udmVudGlvbmFsIHByaW9yaXR5XG5sZXZlbHMuICBOb3RlIHRoYXQgc29tZSBvZiB0aGVzZSBvcGVyYXRpb25zIGFsc28gYXBwbHkgdG8gY2VydGFpbiBub24tXG5udW1lcmljIHR5cGVzLiAgQXBhcnQgZnJvbSB0aGUgcG93ZXIgb3BlcmF0b3IsIHRoZXJlIGFyZSBvbmx5IHR3b1xubGV2ZWxzLCBvbmUgZm9yIG11bHRpcGxpY2F0aXZlIG9wZXJhdG9ycyBhbmQgb25lIGZvciBhZGRpdGl2ZVxub3BlcmF0b3JzOlxuXG4gICBtX2V4cHIgOjo9IHVfZXhwciB8IG1fZXhwciAiKiIgdV9leHByIHwgbV9leHByICIvLyIgdV9leHByIHwgbV9leHByICIvIiB1X2V4cHJcbiAgICAgICAgICAgICAgfCBtX2V4cHIgIiUiIHVfZXhwclxuICAgYV9leHByIDo6PSBtX2V4cHIgfCBhX2V4cHIgIisiIG1fZXhwciB8IGFfZXhwciAiLSIgbV9leHByXG5cblRoZSBgYCpgYCAobXVsdGlwbGljYXRpb24pIG9wZXJhdG9yIHlpZWxkcyB0aGUgcHJvZHVjdCBvZiBpdHNcbmFyZ3VtZW50cy4gIFRoZSBhcmd1bWVudHMgbXVzdCBlaXRoZXIgYm90aCBiZSBudW1iZXJzLCBvciBvbmUgYXJndW1lbnRcbm11c3QgYmUgYW4gaW50ZWdlciBhbmQgdGhlIG90aGVyIG11c3QgYmUgYSBzZXF1ZW5jZS4gSW4gdGhlIGZvcm1lclxuY2FzZSwgdGhlIG51bWJlcnMgYXJlIGNvbnZlcnRlZCB0byBhIGNvbW1vbiB0eXBlIGFuZCB0aGVuIG11bHRpcGxpZWRcbnRvZ2V0aGVyLiAgSW4gdGhlIGxhdHRlciBjYXNlLCBzZXF1ZW5jZSByZXBldGl0aW9uIGlzIHBlcmZvcm1lZDsgYVxubmVnYXRpdmUgcmVwZXRpdGlvbiBmYWN0b3IgeWllbGRzIGFuIGVtcHR5IHNlcXVlbmNlLlxuXG5UaGUgYGAvYGAgKGRpdmlzaW9uKSBhbmQgYGAvL2BgIChmbG9vciBkaXZpc2lvbikgb3BlcmF0b3JzIHlpZWxkIHRoZVxucXVvdGllbnQgb2YgdGhlaXIgYXJndW1lbnRzLiAgVGhlIG51bWVyaWMgYXJndW1lbnRzIGFyZSBmaXJzdFxuY29udmVydGVkIHRvIGEgY29tbW9uIHR5cGUuIEludGVnZXIgZGl2aXNpb24geWllbGRzIGEgZmxvYXQsIHdoaWxlXG5mbG9vciBkaXZpc2lvbiBvZiBpbnRlZ2VycyByZXN1bHRzIGluIGFuIGludGVnZXI7IHRoZSByZXN1bHQgaXMgdGhhdFxub2YgbWF0aGVtYXRpY2FsIGRpdmlzaW9uIHdpdGggdGhlIFwnZmxvb3JcJyBmdW5jdGlvbiBhcHBsaWVkIHRvIHRoZVxucmVzdWx0LiAgRGl2aXNpb24gYnkgemVybyByYWlzZXMgdGhlIGBgWmVyb0RpdmlzaW9uRXJyb3JgYCBleGNlcHRpb24uXG5cblRoZSBgYCVgYCAobW9kdWxvKSBvcGVyYXRvciB5aWVsZHMgdGhlIHJlbWFpbmRlciBmcm9tIHRoZSBkaXZpc2lvbiBvZlxudGhlIGZpcnN0IGFyZ3VtZW50IGJ5IHRoZSBzZWNvbmQuICBUaGUgbnVtZXJpYyBhcmd1bWVudHMgYXJlIGZpcnN0XG5jb252ZXJ0ZWQgdG8gYSBjb21tb24gdHlwZS4gIEEgemVybyByaWdodCBhcmd1bWVudCByYWlzZXMgdGhlXG5gYFplcm9EaXZpc2lvbkVycm9yYGAgZXhjZXB0aW9uLiAgVGhlIGFyZ3VtZW50cyBtYXkgYmUgZmxvYXRpbmcgcG9pbnRcbm51bWJlcnMsIGUuZy4sIGBgMy4xNCUwLjdgYCBlcXVhbHMgYGAwLjM0YGAgKHNpbmNlIGBgMy4xNGBgIGVxdWFsc1xuYGA0KjAuNyArIDAuMzRgYC4pICBUaGUgbW9kdWxvIG9wZXJhdG9yIGFsd2F5cyB5aWVsZHMgYSByZXN1bHQgd2l0aFxudGhlIHNhbWUgc2lnbiBhcyBpdHMgc2Vjb25kIG9wZXJhbmQgKG9yIHplcm8pOyB0aGUgYWJzb2x1dGUgdmFsdWUgb2ZcbnRoZSByZXN1bHQgaXMgc3RyaWN0bHkgc21hbGxlciB0aGFuIHRoZSBhYnNvbHV0ZSB2YWx1ZSBvZiB0aGUgc2Vjb25kXG5vcGVyYW5kIFsxXS5cblxuVGhlIGZsb29yIGRpdmlzaW9uIGFuZCBtb2R1bG8gb3BlcmF0b3JzIGFyZSBjb25uZWN0ZWQgYnkgdGhlIGZvbGxvd2luZ1xuaWRlbnRpdHk6IGBgeCA9PSAoeC8veSkqeSArICh4JXkpYGAuICBGbG9vciBkaXZpc2lvbiBhbmQgbW9kdWxvIGFyZVxuYWxzbyBjb25uZWN0ZWQgd2l0aCB0aGUgYnVpbHQtaW4gZnVuY3Rpb24gYGBkaXZtb2QoKWBgOiBgYGRpdm1vZCh4LCB5KVxuPT0gKHgvL3ksIHgleSlgYC4gWzJdLlxuXG5JbiBhZGRpdGlvbiB0byBwZXJmb3JtaW5nIHRoZSBtb2R1bG8gb3BlcmF0aW9uIG9uIG51bWJlcnMsIHRoZSBgYCVgYFxub3BlcmF0b3IgaXMgYWxzbyBvdmVybG9hZGVkIGJ5IHN0cmluZyBvYmplY3RzIHRvIHBlcmZvcm0gb2xkLXN0eWxlXG5zdHJpbmcgZm9ybWF0dGluZyAoYWxzbyBrbm93biBhcyBpbnRlcnBvbGF0aW9uKS4gIFRoZSBzeW50YXggZm9yXG5zdHJpbmcgZm9ybWF0dGluZyBpcyBkZXNjcmliZWQgaW4gdGhlIFB5dGhvbiBMaWJyYXJ5IFJlZmVyZW5jZSxcbnNlY3Rpb24gKk9sZCBTdHJpbmcgRm9ybWF0dGluZyBPcGVyYXRpb25zKi5cblxuVGhlIGZsb29yIGRpdmlzaW9uIG9wZXJhdG9yLCB0aGUgbW9kdWxvIG9wZXJhdG9yLCBhbmQgdGhlIGBgZGl2bW9kKClgYFxuZnVuY3Rpb24gYXJlIG5vdCBkZWZpbmVkIGZvciBjb21wbGV4IG51bWJlcnMuICBJbnN0ZWFkLCBjb252ZXJ0IHRvIGFcbmZsb2F0aW5nIHBvaW50IG51bWJlciB1c2luZyB0aGUgYGBhYnMoKWBgIGZ1bmN0aW9uIGlmIGFwcHJvcHJpYXRlLlxuXG5UaGUgYGArYGAgKGFkZGl0aW9uKSBvcGVyYXRvciB5aWVsZHMgdGhlIHN1bSBvZiBpdHMgYXJndW1lbnRzLiAgVGhlXG5hcmd1bWVudHMgbXVzdCBlaXRoZXIgYm90aCBiZSBudW1iZXJzIG9yIGJvdGggc2VxdWVuY2VzIG9mIHRoZSBzYW1lXG50eXBlLiAgSW4gdGhlIGZvcm1lciBjYXNlLCB0aGUgbnVtYmVycyBhcmUgY29udmVydGVkIHRvIGEgY29tbW9uIHR5cGVcbmFuZCB0aGVuIGFkZGVkIHRvZ2V0aGVyLiAgSW4gdGhlIGxhdHRlciBjYXNlLCB0aGUgc2VxdWVuY2VzIGFyZVxuY29uY2F0ZW5hdGVkLlxuXG5UaGUgYGAtYGAgKHN1YnRyYWN0aW9uKSBvcGVyYXRvciB5aWVsZHMgdGhlIGRpZmZlcmVuY2Ugb2YgaXRzXG5hcmd1bWVudHMuICBUaGUgbnVtZXJpYyBhcmd1bWVudHMgYXJlIGZpcnN0IGNvbnZlcnRlZCB0byBhIGNvbW1vblxudHlwZS5cbicsCiAgJ2JpdHdpc2UnOiAnXG5CaW5hcnkgYml0d2lzZSBvcGVyYXRpb25zXG4qKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkVhY2ggb2YgdGhlIHRocmVlIGJpdHdpc2Ugb3BlcmF0aW9ucyBoYXMgYSBkaWZmZXJlbnQgcHJpb3JpdHkgbGV2ZWw6XG5cbiAgIGFuZF9leHByIDo6PSBzaGlmdF9leHByIHwgYW5kX2V4cHIgIiYiIHNoaWZ0X2V4cHJcbiAgIHhvcl9leHByIDo6PSBhbmRfZXhwciB8IHhvcl9leHByICJeIiBhbmRfZXhwclxuICAgb3JfZXhwciAgOjo9IHhvcl9leHByIHwgb3JfZXhwciAifCIgeG9yX2V4cHJcblxuVGhlIGBgJmBgIG9wZXJhdG9yIHlpZWxkcyB0aGUgYml0d2lzZSBBTkQgb2YgaXRzIGFyZ3VtZW50cywgd2hpY2ggbXVzdFxuYmUgaW50ZWdlcnMuXG5cblRoZSBgYF5gYCBvcGVyYXRvciB5aWVsZHMgdGhlIGJpdHdpc2UgWE9SIChleGNsdXNpdmUgT1IpIG9mIGl0c1xuYXJndW1lbnRzLCB3aGljaCBtdXN0IGJlIGludGVnZXJzLlxuXG5UaGUgYGB8YGAgb3BlcmF0b3IgeWllbGRzIHRoZSBiaXR3aXNlIChpbmNsdXNpdmUpIE9SIG9mIGl0cyBhcmd1bWVudHMsXG53aGljaCBtdXN0IGJlIGludGVnZXJzLlxuJywKICAnYmx0aW4tY29kZS1vYmplY3RzJzogJ1xuQ29kZSBPYmplY3RzXG4qKioqKioqKioqKipcblxuQ29kZSBvYmplY3RzIGFyZSB1c2VkIGJ5IHRoZSBpbXBsZW1lbnRhdGlvbiB0byByZXByZXNlbnQgInBzZXVkby1cbmNvbXBpbGVkIiBleGVjdXRhYmxlIFB5dGhvbiBjb2RlIHN1Y2ggYXMgYSBmdW5jdGlvbiBib2R5LiBUaGV5IGRpZmZlclxuZnJvbSBmdW5jdGlvbiBvYmplY3RzIGJlY2F1c2UgdGhleSBkb25cJ3QgY29udGFpbiBhIHJlZmVyZW5jZSB0byB0aGVpclxuZ2xvYmFsIGV4ZWN1dGlvbiBlbnZpcm9ubWVudC4gIENvZGUgb2JqZWN0cyBhcmUgcmV0dXJuZWQgYnkgdGhlIGJ1aWx0LVxuaW4gYGBjb21waWxlKClgYCBmdW5jdGlvbiBhbmQgY2FuIGJlIGV4dHJhY3RlZCBmcm9tIGZ1bmN0aW9uIG9iamVjdHNcbnRocm91Z2ggdGhlaXIgYGBfX2NvZGVfX2BgIGF0dHJpYnV0ZS4gU2VlIGFsc28gdGhlIGBgY29kZWBgIG1vZHVsZS5cblxuQSBjb2RlIG9iamVjdCBjYW4gYmUgZXhlY3V0ZWQgb3IgZXZhbHVhdGVkIGJ5IHBhc3NpbmcgaXQgKGluc3RlYWQgb2YgYVxuc291cmNlIHN0cmluZykgdG8gdGhlIGBgZXhlYygpYGAgb3IgYGBldmFsKClgYCAgYnVpbHQtaW4gZnVuY3Rpb25zLlxuXG5TZWUgKlRoZSBzdGFuZGFyZCB0eXBlIGhpZXJhcmNoeSogZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4nLAotICdibHRpbi1lbGxpcHNpcy1vYmplY3QnOiAnXG5UaGUgRWxsaXBzaXMgT2JqZWN0XG4qKioqKioqKioqKioqKioqKioqXG5cblRoaXMgb2JqZWN0IGlzIGNvbW1vbmx5IHVzZWQgYnkgc2xpY2luZyAoc2VlICpTbGljaW5ncyopLiAgSXQgc3VwcG9ydHNcbm5vIHNwZWNpYWwgb3BlcmF0aW9ucy4gIFRoZXJlIGlzIGV4YWN0bHkgb25lIGVsbGlwc2lzIG9iamVjdCwgbmFtZWRcbmBgRWxsaXBzaXNgYCAoYSBidWlsdC1pbiBuYW1lKS5cblxuSXQgaXMgd3JpdHRlbiBhcyBgYEVsbGlwc2lzYGAgb3IgYGAuLi5gYC5cbicsCi0gJ2JsdGluLW51bGwtb2JqZWN0JzogIlxuVGhlIE51bGwgT2JqZWN0XG4qKioqKioqKioqKioqKipcblxuVGhpcyBvYmplY3QgaXMgcmV0dXJuZWQgYnkgZnVuY3Rpb25zIHRoYXQgZG9uJ3QgZXhwbGljaXRseSByZXR1cm4gYVxudmFsdWUuICBJdCBzdXBwb3J0cyBubyBzcGVjaWFsIG9wZXJhdGlvbnMuICBUaGVyZSBpcyBleGFjdGx5IG9uZSBudWxsXG5vYmplY3QsIG5hbWVkIGBgTm9uZWBgIChhIGJ1aWx0LWluIG5hbWUpLlxuXG5JdCBpcyB3cml0dGVuIGFzIGBgTm9uZWBgLlxuIiwKKyAnYmx0aW4tZWxsaXBzaXMtb2JqZWN0JzogJ1xuVGhlIEVsbGlwc2lzIE9iamVjdFxuKioqKioqKioqKioqKioqKioqKlxuXG5UaGlzIG9iamVjdCBpcyBjb21tb25seSB1c2VkIGJ5IHNsaWNpbmcgKHNlZSAqU2xpY2luZ3MqKSwgYnV0IG1heSBhbHNvXG5iZSB1c2VkIGluIG90aGVyIHNpdHVhdGlvbnMgd2hlcmUgYSBzZW50aW5lbCB2YWx1ZSBvdGhlciB0aGFuIGBgTm9uZWBgXG5pcyBuZWVkZWQuICBJdCBzdXBwb3J0cyBubyBzcGVjaWFsIG9wZXJhdGlvbnMuICBUaGVyZSBpcyBleGFjdGx5IG9uZVxuZWxsaXBzaXMgb2JqZWN0LCBuYW1lZCBgYEVsbGlwc2lzYGAgKGEgYnVpbHQtaW4gbmFtZSkuXG5gYHR5cGUoRWxsaXBzaXMpKClgYCBwcm9kdWNlcyB0aGUgYGBFbGxpcHNpc2BgIHNpbmdsZXRvbi5cblxuSXQgaXMgd3JpdHRlbiBhcyBgYEVsbGlwc2lzYGAgb3IgYGAuLi5gYC5cbicsCisgJ2JsdGluLW51bGwtb2JqZWN0JzogIlxuVGhlIE51bGwgT2JqZWN0XG4qKioqKioqKioqKioqKipcblxuVGhpcyBvYmplY3QgaXMgcmV0dXJuZWQgYnkgZnVuY3Rpb25zIHRoYXQgZG9uJ3QgZXhwbGljaXRseSByZXR1cm4gYVxudmFsdWUuICBJdCBzdXBwb3J0cyBubyBzcGVjaWFsIG9wZXJhdGlvbnMuICBUaGVyZSBpcyBleGFjdGx5IG9uZSBudWxsXG5vYmplY3QsIG5hbWVkIGBgTm9uZWBgIChhIGJ1aWx0LWluIG5hbWUpLiAgYGB0eXBlKE5vbmUpKClgYCBwcm9kdWNlc1xudGhlIHNhbWUgc2luZ2xldG9uLlxuXG5JdCBpcyB3cml0dGVuIGFzIGBgTm9uZWBgLlxuIiwKICAnYmx0aW4tdHlwZS1vYmplY3RzJzogIlxuVHlwZSBPYmplY3RzXG4qKioqKioqKioqKipcblxuVHlwZSBvYmplY3RzIHJlcHJlc2VudCB0aGUgdmFyaW91cyBvYmplY3QgdHlwZXMuICBBbiBvYmplY3QncyB0eXBlIGlzXG5hY2Nlc3NlZCBieSB0aGUgYnVpbHQtaW4gZnVuY3Rpb24gYGB0eXBlKClgYC4gIFRoZXJlIGFyZSBubyBzcGVjaWFsXG5vcGVyYXRpb25zIG9uIHR5cGVzLiAgVGhlIHN0YW5kYXJkIG1vZHVsZSBgYHR5cGVzYGAgZGVmaW5lcyBuYW1lcyBmb3JcbmFsbCBzdGFuZGFyZCBidWlsdC1pbiB0eXBlcy5cblxuVHlwZXMgYXJlIHdyaXR0ZW4gbGlrZSB0aGlzOiBgYDxjbGFzcyAnaW50Jz5gYC5cbiIsCiAgJ2Jvb2xlYW5zJzogJ1xuQm9vbGVhbiBvcGVyYXRpb25zXG4qKioqKioqKioqKioqKioqKipcblxuICAgb3JfdGVzdCAgOjo9IGFuZF90ZXN0IHwgb3JfdGVzdCAib3IiIGFuZF90ZXN0XG4gICBhbmRfdGVzdCA6Oj0gbm90X3Rlc3QgfCBhbmRfdGVzdCAiYW5kIiBub3RfdGVzdFxuICAgbm90X3Rlc3QgOjo9IGNvbXBhcmlzb24gfCAibm90IiBub3RfdGVzdFxuXG5JbiB0aGUgY29udGV4dCBvZiBCb29sZWFuIG9wZXJhdGlvbnMsIGFuZCBhbHNvIHdoZW4gZXhwcmVzc2lvbnMgYXJlXG51c2VkIGJ5IGNvbnRyb2wgZmxvdyBzdGF0ZW1lbnRzLCB0aGUgZm9sbG93aW5nIHZhbHVlcyBhcmUgaW50ZXJwcmV0ZWRcbmFzIGZhbHNlOiBgYEZhbHNlYGAsIGBgTm9uZWBgLCBudW1lcmljIHplcm8gb2YgYWxsIHR5cGVzLCBhbmQgZW1wdHlcbnN0cmluZ3MgYW5kIGNvbnRhaW5lcnMgKGluY2x1ZGluZyBzdHJpbmdzLCB0dXBsZXMsIGxpc3RzLFxuZGljdGlvbmFyaWVzLCBzZXRzIGFuZCBmcm96ZW5zZXRzKS4gIEFsbCBvdGhlciB2YWx1ZXMgYXJlIGludGVycHJldGVkXG5hcyB0cnVlLiAgVXNlci1kZWZpbmVkIG9iamVjdHMgY2FuIGN1c3RvbWl6ZSB0aGVpciB0cnV0aCB2YWx1ZSBieVxucHJvdmlkaW5nIGEgYGBfX2Jvb2xfXygpYGAgbWV0aG9kLlxuXG5UaGUgb3BlcmF0b3IgYGBub3RgYCB5aWVsZHMgYGBUcnVlYGAgaWYgaXRzIGFyZ3VtZW50IGlzIGZhbHNlLFxuYGBGYWxzZWBgIG90aGVyd2lzZS5cblxuVGhlIGV4cHJlc3Npb24gYGB4IGFuZCB5YGAgZmlyc3QgZXZhbHVhdGVzICp4KjsgaWYgKngqIGlzIGZhbHNlLCBpdHNcbnZhbHVlIGlzIHJldHVybmVkOyBvdGhlcndpc2UsICp5KiBpcyBldmFsdWF0ZWQgYW5kIHRoZSByZXN1bHRpbmcgdmFsdWVcbmlzIHJldHVybmVkLlxuXG5UaGUgZXhwcmVzc2lvbiBgYHggb3IgeWBgIGZpcnN0IGV2YWx1YXRlcyAqeCo7IGlmICp4KiBpcyB0cnVlLCBpdHNcbnZhbHVlIGlzIHJldHVybmVkOyBvdGhlcndpc2UsICp5KiBpcyBldmFsdWF0ZWQgYW5kIHRoZSByZXN1bHRpbmcgdmFsdWVcbmlzIHJldHVybmVkLlxuXG4oTm90ZSB0aGF0IG5laXRoZXIgYGBhbmRgYCBub3IgYGBvcmBgIHJlc3RyaWN0IHRoZSB2YWx1ZSBhbmQgdHlwZSB0aGV5XG5yZXR1cm4gdG8gYGBGYWxzZWBgIGFuZCBgYFRydWVgYCwgYnV0IHJhdGhlciByZXR1cm4gdGhlIGxhc3QgZXZhbHVhdGVkXG5hcmd1bWVudC4gIFRoaXMgaXMgc29tZXRpbWVzIHVzZWZ1bCwgZS5nLiwgaWYgYGBzYGAgaXMgYSBzdHJpbmcgdGhhdFxuc2hvdWxkIGJlIHJlcGxhY2VkIGJ5IGEgZGVmYXVsdCB2YWx1ZSBpZiBpdCBpcyBlbXB0eSwgdGhlIGV4cHJlc3Npb25cbmBgcyBvciBcJ2Zvb1wnYGAgeWllbGRzIHRoZSBkZXNpcmVkIHZhbHVlLiAgQmVjYXVzZSBgYG5vdGBgIGhhcyB0b1xuaW52ZW50IGEgdmFsdWUgYW55d2F5LCBpdCBkb2VzIG5vdCBib3RoZXIgdG8gcmV0dXJuIGEgdmFsdWUgb2YgdGhlXG5zYW1lIHR5cGUgYXMgaXRzIGFyZ3VtZW50LCBzbyBlLmcuLCBgYG5vdCBcJ2Zvb1wnYGAgeWllbGRzIGBgRmFsc2VgYCxcbm5vdCBgYFwnXCdgYC4pXG4nLAogICdicmVhayc6ICdcblRoZSBgYGJyZWFrYGAgc3RhdGVtZW50XG4qKioqKioqKioqKioqKioqKioqKioqKlxuXG4gICBicmVha19zdG10IDo6PSAiYnJlYWsiXG5cbmBgYnJlYWtgYCBtYXkgb25seSBvY2N1ciBzeW50YWN0aWNhbGx5IG5lc3RlZCBpbiBhIGBgZm9yYGAgb3JcbmBgd2hpbGVgYCBsb29wLCBidXQgbm90IG5lc3RlZCBpbiBhIGZ1bmN0aW9uIG9yIGNsYXNzIGRlZmluaXRpb25cbndpdGhpbiB0aGF0IGxvb3AuXG5cbkl0IHRlcm1pbmF0ZXMgdGhlIG5lYXJlc3QgZW5jbG9zaW5nIGxvb3AsIHNraXBwaW5nIHRoZSBvcHRpb25hbFxuYGBlbHNlYGAgY2xhdXNlIGlmIHRoZSBsb29wIGhhcyBvbmUuXG5cbklmIGEgYGBmb3JgYCBsb29wIGlzIHRlcm1pbmF0ZWQgYnkgYGBicmVha2BgLCB0aGUgbG9vcCBjb250cm9sIHRhcmdldFxua2VlcHMgaXRzIGN1cnJlbnQgdmFsdWUuXG5cbldoZW4gYGBicmVha2BgIHBhc3NlcyBjb250cm9sIG91dCBvZiBhIGBgdHJ5YGAgc3RhdGVtZW50IHdpdGggYVxuYGBmaW5hbGx5YGAgY2xhdXNlLCB0aGF0IGBgZmluYWxseWBgIGNsYXVzZSBpcyBleGVjdXRlZCBiZWZvcmUgcmVhbGx5XG5sZWF2aW5nIHRoZSBsb29wLlxuJywKQEAgLTIyLDcgKzIzLDcgQEAKICAnY29udGV4dC1tYW5hZ2Vycyc6ICdcbldpdGggU3RhdGVtZW50IENvbnRleHQgTWFuYWdlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQSAqY29udGV4dCBtYW5hZ2VyKiBpcyBhbiBvYmplY3QgdGhhdCBkZWZpbmVzIHRoZSBydW50aW1lIGNvbnRleHQgdG9cbmJlIGVzdGFibGlzaGVkIHdoZW4gZXhlY3V0aW5nIGEgYGB3aXRoYGAgc3RhdGVtZW50LiBUaGUgY29udGV4dFxubWFuYWdlciBoYW5kbGVzIHRoZSBlbnRyeSBpbnRvLCBhbmQgdGhlIGV4aXQgZnJvbSwgdGhlIGRlc2lyZWQgcnVudGltZVxuY29udGV4dCBmb3IgdGhlIGV4ZWN1dGlvbiBvZiB0aGUgYmxvY2sgb2YgY29kZS4gIENvbnRleHQgbWFuYWdlcnMgYXJlXG5ub3JtYWxseSBpbnZva2VkIHVzaW5nIHRoZSBgYHdpdGhgYCBzdGF0ZW1lbnQgKGRlc2NyaWJlZCBpbiBzZWN0aW9uXG4qVGhlIHdpdGggc3RhdGVtZW50KiksIGJ1dCBjYW4gYWxzbyBiZSB1c2VkIGJ5IGRpcmVjdGx5IGludm9raW5nIHRoZWlyXG5tZXRob2RzLlxuXG5UeXBpY2FsIHVzZXMgb2YgY29udGV4dCBtYW5hZ2VycyBpbmNsdWRlIHNhdmluZyBhbmQgcmVzdG9yaW5nIHZhcmlvdXNcbmtpbmRzIG9mIGdsb2JhbCBzdGF0ZSwgbG9ja2luZyBhbmQgdW5sb2NraW5nIHJlc291cmNlcywgY2xvc2luZyBvcGVuZWRcbmZpbGVzLCBldGMuXG5cbkZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGNvbnRleHQgbWFuYWdlcnMsIHNlZSAqQ29udGV4dCBNYW5hZ2VyIFR5cGVzKi5cblxub2JqZWN0Ll9fZW50ZXJfXyhzZWxmKVxuXG4gICBFbnRlciB0aGUgcnVudGltZSBjb250ZXh0IHJlbGF0ZWQgdG8gdGhpcyBvYmplY3QuIFRoZSBgYHdpdGhgYFxuICAgc3RhdGVtZW50IHdpbGwgYmluZCB0aGlzIG1ldGhvZFwncyByZXR1cm4gdmFsdWUgdG8gdGhlIHRhcmdldChzKVxuICAgc3BlY2lmaWVkIGluIHRoZSBgYGFzYGAgY2xhdXNlIG9mIHRoZSBzdGF0ZW1lbnQsIGlmIGFueS5cblxub2JqZWN0Ll9fZXhpdF9fKHNlbGYsIGV4Y190eXBlLCBleGNfdmFsdWUsIHRyYWNlYmFjaylcblxuICAgRXhpdCB0aGUgcnVudGltZSBjb250ZXh0IHJlbGF0ZWQgdG8gdGhpcyBvYmplY3QuIFRoZSBwYXJhbWV0ZXJzXG4gICBkZXNjcmliZSB0aGUgZXhjZXB0aW9uIHRoYXQgY2F1c2VkIHRoZSBjb250ZXh0IHRvIGJlIGV4aXRlZC4gSWYgdGhlXG4gICBjb250ZXh0IHdhcyBleGl0ZWQgd2l0aG91dCBhbiBleGNlcHRpb24sIGFsbCB0aHJlZSBhcmd1bWVudHMgd2lsbFxuICAgYmUgYGBOb25lYGAuXG5cbiAgIElmIGFuIGV4Y2VwdGlvbiBpcyBzdXBwbGllZCwgYW5kIHRoZSBtZXRob2Qgd2lzaGVzIHRvIHN1cHByZXNzIHRoZVxuICAgZXhjZXB0aW9uIChpLmUuLCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgcHJvcGFnYXRlZCksIGl0IHNob3VsZFxuICAgcmV0dXJuIGEgdHJ1ZSB2YWx1ZS4gT3RoZXJ3aXNlLCB0aGUgZXhjZXB0aW9uIHdpbGwgYmUgcHJvY2Vzc2VkXG4gICBub3JtYWxseSB1cG9uIGV4aXQgZnJvbSB0aGlzIG1ldGhvZC5cblxuICAgTm90ZSB0aGF0IGBgX19leGl0X18oKWBgIG1ldGhvZHMgc2hvdWxkIG5vdCByZXJhaXNlIHRoZSBwYXNzZWQtaW5cbiAgIGV4Y2VwdGlvbjsgdGhpcyBpcyB0aGUgY2FsbGVyXCdzIHJlc3BvbnNpYmlsaXR5LlxuXG5TZWUgYWxzbzpcblxuICAgKipQRVAgMDM0MyoqIC0gVGhlICJ3aXRoIiBzdGF0ZW1lbnRcbiAgICAgIFRoZSBzcGVjaWZpY2F0aW9uLCBiYWNrZ3JvdW5kLCBhbmQgZXhhbXBsZXMgZm9yIHRoZSBQeXRob25cbiAgICAgIGBgd2l0aGBgIHN0YXRlbWVudC5cbicsCiAgJ2NvbnRpbnVlJzogJ1xuVGhlIGBgY29udGludWVgYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiAgIGNvbnRpbnVlX3N0bXQgOjo9ICJjb250aW51ZSJcblxuYGBjb250aW51ZWBgIG1heSBvbmx5IG9jY3VyIHN5bnRhY3RpY2FsbHkgbmVzdGVkIGluIGEgYGBmb3JgYCBvclxuYGB3aGlsZWBgIGxvb3AsIGJ1dCBub3QgbmVzdGVkIGluIGEgZnVuY3Rpb24gb3IgY2xhc3MgZGVmaW5pdGlvbiBvclxuYGBmaW5hbGx5YGAgY2xhdXNlIHdpdGhpbiB0aGF0IGxvb3AuICBJdCBjb250aW51ZXMgd2l0aCB0aGUgbmV4dCBjeWNsZVxub2YgdGhlIG5lYXJlc3QgZW5jbG9zaW5nIGxvb3AuXG5cbldoZW4gYGBjb250aW51ZWBgIHBhc3NlcyBjb250cm9sIG91dCBvZiBhIGBgdHJ5YGAgc3RhdGVtZW50IHdpdGggYVxuYGBmaW5hbGx5YGAgY2xhdXNlLCB0aGF0IGBgZmluYWxseWBgIGNsYXVzZSBpcyBleGVjdXRlZCBiZWZvcmUgcmVhbGx5XG5zdGFydGluZyB0aGUgbmV4dCBsb29wIGN5Y2xlLlxuJywKICAnY29udmVyc2lvbnMnOiAnXG5Bcml0aG1ldGljIGNvbnZlcnNpb25zXG4qKioqKioqKioqKioqKioqKioqKioqXG5cbldoZW4gYSBkZXNjcmlwdGlvbiBvZiBhbiBhcml0aG1ldGljIG9wZXJhdG9yIGJlbG93IHVzZXMgdGhlIHBocmFzZVxuInRoZSBudW1lcmljIGFyZ3VtZW50cyBhcmUgY29udmVydGVkIHRvIGEgY29tbW9uIHR5cGUsIiB0aGlzIG1lYW5zXG50aGF0IHRoZSBvcGVyYXRvciBpbXBsZW1lbnRhdGlvbiBmb3IgYnVpbHQtaW4gdHlwZXMgd29ya3MgdGhhdCB3YXk6XG5cbiogSWYgZWl0aGVyIGFyZ3VtZW50IGlzIGEgY29tcGxleCBudW1iZXIsIHRoZSBvdGhlciBpcyBjb252ZXJ0ZWQgdG9cbiAgY29tcGxleDtcblxuKiBvdGhlcndpc2UsIGlmIGVpdGhlciBhcmd1bWVudCBpcyBhIGZsb2F0aW5nIHBvaW50IG51bWJlciwgdGhlIG90aGVyXG4gIGlzIGNvbnZlcnRlZCB0byBmbG9hdGluZyBwb2ludDtcblxuKiBvdGhlcndpc2UsIGJvdGggbXVzdCBiZSBpbnRlZ2VycyBhbmQgbm8gY29udmVyc2lvbiBpcyBuZWNlc3NhcnkuXG5cblNvbWUgYWRkaXRpb25hbCBydWxlcyBhcHBseSBmb3IgY2VydGFpbiBvcGVyYXRvcnMgKGUuZy4sIGEgc3RyaW5nIGxlZnRcbmFyZ3VtZW50IHRvIHRoZSBcJyVcJyBvcGVyYXRvcikuICBFeHRlbnNpb25zIG11c3QgZGVmaW5lIHRoZWlyIG93blxuY29udmVyc2lvbiBiZWhhdmlvci5cbicsCi0gJ2N1c3RvbWl6YXRpb24nOiAnXG5CYXNpYyBjdXN0b21pemF0aW9uXG4qKioqKioqKioqKioqKioqKioqXG5cbm9iamVjdC5fX25ld19fKGNsc1ssIC4uLl0pXG5cbiAgIENhbGxlZCB0byBjcmVhdGUgYSBuZXcgaW5zdGFuY2Ugb2YgY2xhc3MgKmNscyouICBgYF9fbmV3X18oKWBgIGlzIGFcbiAgIHN0YXRpYyBtZXRob2QgKHNwZWNpYWwtY2FzZWQgc28geW91IG5lZWQgbm90IGRlY2xhcmUgaXQgYXMgc3VjaClcbiAgIHRoYXQgdGFrZXMgdGhlIGNsYXNzIG9mIHdoaWNoIGFuIGluc3RhbmNlIHdhcyByZXF1ZXN0ZWQgYXMgaXRzXG4gICBmaXJzdCBhcmd1bWVudC4gIFRoZSByZW1haW5pbmcgYXJndW1lbnRzIGFyZSB0aG9zZSBwYXNzZWQgdG8gdGhlXG4gICBvYmplY3QgY29uc3RydWN0b3IgZXhwcmVzc2lvbiAodGhlIGNhbGwgdG8gdGhlIGNsYXNzKS4gIFRoZSByZXR1cm5cbiAgIHZhbHVlIG9mIGBgX19uZXdfXygpYGAgc2hvdWxkIGJlIHRoZSBuZXcgb2JqZWN0IGluc3RhbmNlICh1c3VhbGx5XG4gICBhbiBpbnN0YW5jZSBvZiAqY2xzKikuXG5cbiAgIFR5cGljYWwgaW1wbGVtZW50YXRpb25zIGNyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiB0aGUgY2xhc3MgYnlcbiAgIGludm9raW5nIHRoZSBzdXBlcmNsYXNzXCdzIGBgX19uZXdfXygpYGAgbWV0aG9kIHVzaW5nXG4gICBgYHN1cGVyKGN1cnJlbnRjbGFzcywgY2xzKS5fX25ld19fKGNsc1ssIC4uLl0pYGAgd2l0aCBhcHByb3ByaWF0ZVxuICAgYXJndW1lbnRzIGFuZCB0aGVuIG1vZGlmeWluZyB0aGUgbmV3bHktY3JlYXRlZCBpbnN0YW5jZSBhc1xuICAgbmVjZXNzYXJ5IGJlZm9yZSByZXR1cm5pbmcgaXQuXG5cbiAgIElmIGBgX19uZXdfXygpYGAgcmV0dXJucyBhbiBpbnN0YW5jZSBvZiAqY2xzKiwgdGhlbiB0aGUgbmV3XG4gICBpbnN0YW5jZVwncyBgYF9faW5pdF9fKClgYCBtZXRob2Qgd2lsbCBiZSBpbnZva2VkIGxpa2VcbiAgIGBgX19pbml0X18oc2VsZlssIC4uLl0pYGAsIHdoZXJlICpzZWxmKiBpcyB0aGUgbmV3IGluc3RhbmNlIGFuZCB0aGVcbiAgIHJlbWFpbmluZyBhcmd1bWVudHMgYXJlIHRoZSBzYW1lIGFzIHdlcmUgcGFzc2VkIHRvIGBgX19uZXdfXygpYGAuXG5cbiAgIElmIGBgX19uZXdfXygpYGAgZG9lcyBub3QgcmV0dXJuIGFuIGluc3RhbmNlIG9mICpjbHMqLCB0aGVuIHRoZSBuZXdcbiAgIGluc3RhbmNlXCdzIGBgX19pbml0X18oKWBgIG1ldGhvZCB3aWxsIG5vdCBiZSBpbnZva2VkLlxuXG4gICBgYF9fbmV3X18oKWBgIGlzIGludGVuZGVkIG1haW5seSB0byBhbGxvdyBzdWJjbGFzc2VzIG9mIGltbXV0YWJsZVxuICAgdHlwZXMgKGxpa2UgaW50LCBzdHIsIG9yIHR1cGxlKSB0byBjdXN0b21pemUgaW5zdGFuY2UgY3JlYXRpb24uICBJdFxuICAgaXMgYWxzbyBjb21tb25seSBvdmVycmlkZGVuIGluIGN1c3RvbSBtZXRhY2xhc3NlcyBpbiBvcmRlciB0b1xuICAgY3VzdG9taXplIGNsYXNzIGNyZWF0aW9uLlxuXG5vYmplY3QuX19pbml0X18oc2VsZlssIC4uLl0pXG5cbiAgIENhbGxlZCB3aGVuIHRoZSBpbnN0YW5jZSBpcyBjcmVhdGVkLiAgVGhlIGFyZ3VtZW50cyBhcmUgdGhvc2VcbiAgIHBhc3NlZCB0byB0aGUgY2xhc3MgY29uc3RydWN0b3IgZXhwcmVzc2lvbi4gIElmIGEgYmFzZSBjbGFzcyBoYXMgYW5cbiAgIGBgX19pbml0X18oKWBgIG1ldGhvZCwgdGhlIGRlcml2ZWQgY2xhc3NcJ3MgYGBfX2luaXRfXygpYGAgbWV0aG9kLFxuICAgaWYgYW55LCBtdXN0IGV4cGxpY2l0bHkgY2FsbCBpdCB0byBlbnN1cmUgcHJvcGVyIGluaXRpYWxpemF0aW9uIG9mXG4gICB0aGUgYmFzZSBjbGFzcyBwYXJ0IG9mIHRoZSBpbnN0YW5jZTsgZm9yIGV4YW1wbGU6XG4gICBgYEJhc2VDbGFzcy5fX2luaXRfXyhzZWxmLCBbYXJncy4uLl0pYGAuICBBcyBhIHNwZWNpYWwgY29uc3RyYWludFxuICAgb24gY29uc3RydWN0b3JzLCBubyB2YWx1ZSBtYXkgYmUgcmV0dXJuZWQ7IGRvaW5nIHNvIHdpbGwgY2F1c2UgYVxuICAgYGBUeXBlRXJyb3JgYCB0byBiZSByYWlzZWQgYXQgcnVudGltZS5cblxub2JqZWN0Ll9fZGVsX18oc2VsZilcblxuICAgQ2FsbGVkIHdoZW4gdGhlIGluc3RhbmNlIGlzIGFib3V0IHRvIGJlIGRlc3Ryb3llZC4gIFRoaXMgaXMgYWxzb1xuICAgY2FsbGVkIGEgZGVzdHJ1Y3Rvci4gIElmIGEgYmFzZSBjbGFzcyBoYXMgYSBgYF9fZGVsX18oKWBgIG1ldGhvZCxcbiAgIHRoZSBkZXJpdmVkIGNsYXNzXCdzIGBgX19kZWxfXygpYGAgbWV0aG9kLCBpZiBhbnksIG11c3QgZXhwbGljaXRseVxuICAgY2FsbCBpdCB0byBlbnN1cmUgcHJvcGVyIGRlbGV0aW9uIG9mIHRoZSBiYXNlIGNsYXNzIHBhcnQgb2YgdGhlXG4gICBpbnN0YW5jZS4gIE5vdGUgdGhhdCBpdCBpcyBwb3NzaWJsZSAodGhvdWdoIG5vdCByZWNvbW1lbmRlZCEpIGZvclxuICAgdGhlIGBgX19kZWxfXygpYGAgbWV0aG9kIHRvIHBvc3Rwb25lIGRlc3RydWN0aW9uIG9mIHRoZSBpbnN0YW5jZSBieVxuICAgY3JlYXRpbmcgYSBuZXcgcmVmZXJlbmNlIHRvIGl0LiAgSXQgbWF5IHRoZW4gYmUgY2FsbGVkIGF0IGEgbGF0ZXJcbiAgIHRpbWUgd2hlbiB0aGlzIG5ldyByZWZlcmVuY2UgaXMgZGVsZXRlZC4gIEl0IGlzIG5vdCBndWFyYW50ZWVkIHRoYXRcbiAgIGBgX19kZWxfXygpYGAgbWV0aG9kcyBhcmUgY2FsbGVkIGZvciBvYmplY3RzIHRoYXQgc3RpbGwgZXhpc3Qgd2hlblxuICAgdGhlIGludGVycHJldGVyIGV4aXRzLlxuXG4gICBOb3RlOiBgYGRlbCB4YGAgZG9lc25cJ3QgZGlyZWN0bHkgY2FsbCBgYHguX19kZWxfXygpYGAgLS0tIHRoZSBmb3JtZXJcbiAgICAgZGVjcmVtZW50cyB0aGUgcmVmZXJlbmNlIGNvdW50IGZvciBgYHhgYCBieSBvbmUsIGFuZCB0aGUgbGF0dGVyXG4gICAgIGlzIG9ubHkgY2FsbGVkIHdoZW4gYGB4YGBcJ3MgcmVmZXJlbmNlIGNvdW50IHJlYWNoZXMgemVyby4gIFNvbWVcbiAgICAgY29tbW9uIHNpdHVhdGlvbnMgdGhhdCBtYXkgcHJldmVudCB0aGUgcmVmZXJlbmNlIGNvdW50IG9mIGFuXG4gICAgIG9iamVjdCBmcm9tIGdvaW5nIHRvIHplcm8gaW5jbHVkZTogY2lyY3VsYXIgcmVmZXJlbmNlcyBiZXR3ZWVuXG4gICAgIG9iamVjdHMgKGUuZy4sIGEgZG91Ymx5LWxpbmtlZCBsaXN0IG9yIGEgdHJlZSBkYXRhIHN0cnVjdHVyZSB3aXRoXG4gICAgIHBhcmVudCBhbmQgY2hpbGQgcG9pbnRlcnMpOyBhIHJlZmVyZW5jZSB0byB0aGUgb2JqZWN0IG9uIHRoZVxuICAgICBzdGFjayBmcmFtZSBvZiBhIGZ1bmN0aW9uIHRoYXQgY2F1Z2h0IGFuIGV4Y2VwdGlvbiAodGhlIHRyYWNlYmFja1xuICAgICBzdG9yZWQgaW4gYGBzeXMuZXhjX2luZm8oKVsyXWBgIGtlZXBzIHRoZSBzdGFjayBmcmFtZSBhbGl2ZSk7IG9yXG4gICAgIGEgcmVmZXJlbmNlIHRvIHRoZSBvYmplY3Qgb24gdGhlIHN0YWNrIGZyYW1lIHRoYXQgcmFpc2VkIGFuXG4gICAgIHVuaGFuZGxlZCBleGNlcHRpb24gaW4gaW50ZXJhY3RpdmUgbW9kZSAodGhlIHRyYWNlYmFjayBzdG9yZWQgaW5cbiAgICAgYGBzeXMubGFzdF90cmFjZWJhY2tgYCBrZWVwcyB0aGUgc3RhY2sgZnJhbWUgYWxpdmUpLiAgVGhlIGZpcnN0XG4gICAgIHNpdHVhdGlvbiBjYW4gb25seSBiZSByZW1lZGllZCBieSBleHBsaWNpdGx5IGJyZWFraW5nIHRoZSBjeWNsZXM7XG4gICAgIHRoZSBsYXR0ZXIgdHdvIHNpdHVhdGlvbnMgY2FuIGJlIHJlc29sdmVkIGJ5IHN0b3JpbmcgYGBOb25lYGAgaW5cbiAgICAgYGBzeXMubGFzdF90cmFjZWJhY2tgYC4gQ2lyY3VsYXIgcmVmZXJlbmNlcyB3aGljaCBhcmUgZ2FyYmFnZSBhcmVcbiAgICAgZGV0ZWN0ZWQgd2hlbiB0aGUgb3B0aW9uIGN5Y2xlIGRldGVjdG9yIGlzIGVuYWJsZWQgKGl0XCdzIG9uIGJ5XG4gICAgIGRlZmF1bHQpLCBidXQgY2FuIG9ubHkgYmUgY2xlYW5lZCB1cCBpZiB0aGVyZSBhcmUgbm8gUHl0aG9uLVxuICAgICBsZXZlbCBgYF9fZGVsX18oKWBgIG1ldGhvZHMgaW52b2x2ZWQuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uXG4gICAgIGZvciB0aGUgYGBnY2BgIG1vZHVsZSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBob3dcbiAgICAgYGBfX2RlbF9fKClgYCBtZXRob2RzIGFyZSBoYW5kbGVkIGJ5IHRoZSBjeWNsZSBkZXRlY3RvcixcbiAgICAgcGFydGljdWxhcmx5IHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgYGBnYXJiYWdlYGAgdmFsdWUuXG5cbiAgIFdhcm5pbmc6IER1ZSB0byB0aGUgcHJlY2FyaW91cyBjaXJjdW1zdGFuY2VzIHVuZGVyIHdoaWNoIGBgX19kZWxfXygpYGBcbiAgICAgbWV0aG9kcyBhcmUgaW52b2tlZCwgZXhjZXB0aW9ucyB0aGF0IG9jY3VyIGR1cmluZyB0aGVpciBleGVjdXRpb25cbiAgICAgYXJlIGlnbm9yZWQsIGFuZCBhIHdhcm5pbmcgaXMgcHJpbnRlZCB0byBgYHN5cy5zdGRlcnJgYCBpbnN0ZWFkLlxuICAgICBBbHNvLCB3aGVuIGBgX19kZWxfXygpYGAgaXMgaW52b2tlZCBpbiByZXNwb25zZSB0byBhIG1vZHVsZSBiZWluZ1xuICAgICBkZWxldGVkIChlLmcuLCB3aGVuIGV4ZWN1dGlvbiBvZiB0aGUgcHJvZ3JhbSBpcyBkb25lKSwgb3RoZXJcbiAgICAgZ2xvYmFscyByZWZlcmVuY2VkIGJ5IHRoZSBgYF9fZGVsX18oKWBgIG1ldGhvZCBtYXkgYWxyZWFkeSBoYXZlXG4gICAgIGJlZW4gZGVsZXRlZCBvciBpbiB0aGUgcHJvY2VzcyBvZiBiZWluZyB0b3JuIGRvd24gKGUuZy4gdGhlXG4gICAgIGltcG9ydCBtYWNoaW5lcnkgc2h1dHRpbmcgZG93bikuICBGb3IgdGhpcyByZWFzb24sIGBgX19kZWxfXygpYGBcbiAgICAgbWV0aG9kcyBzaG91bGQgZG8gdGhlIGFic29sdXRlIG1pbmltdW0gbmVlZGVkIHRvIG1haW50YWluXG4gICAgIGV4dGVybmFsIGludmFyaWFudHMuICBTdGFydGluZyB3aXRoIHZlcnNpb24gMS41LCBQeXRob25cbiAgICAgZ3VhcmFudGVlcyB0aGF0IGdsb2JhbHMgd2hvc2UgbmFtZSBiZWdpbnMgd2l0aCBhIHNpbmdsZVxuICAgICB1bmRlcnNjb3JlIGFyZSBkZWxldGVkIGZyb20gdGhlaXIgbW9kdWxlIGJlZm9yZSBvdGhlciBnbG9iYWxzIGFyZVxuICAgICBkZWxldGVkOyBpZiBubyBvdGhlciByZWZlcmVuY2VzIHRvIHN1Y2ggZ2xvYmFscyBleGlzdCwgdGhpcyBtYXlcbiAgICAgaGVscCBpbiBhc3N1cmluZyB0aGF0IGltcG9ydGVkIG1vZHVsZXMgYXJlIHN0aWxsIGF2YWlsYWJsZSBhdCB0aGVcbiAgICAgdGltZSB3aGVuIHRoZSBgYF9fZGVsX18oKWBgIG1ldGhvZCBpcyBjYWxsZWQuXG5cbm9iamVjdC5fX3JlcHJfXyhzZWxmKVxuXG4gICBDYWxsZWQgYnkgdGhlIGBgcmVwcigpYGAgYnVpbHQtaW4gZnVuY3Rpb24gdG8gY29tcHV0ZSB0aGVcbiAgICJvZmZpY2lhbCIgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9iamVjdC4gIElmIGF0IGFsbCBwb3NzaWJsZSxcbiAgIHRoaXMgc2hvdWxkIGxvb2sgbGlrZSBhIHZhbGlkIFB5dGhvbiBleHByZXNzaW9uIHRoYXQgY291bGQgYmUgdXNlZFxuICAgdG8gcmVjcmVhdGUgYW4gb2JqZWN0IHdpdGggdGhlIHNhbWUgdmFsdWUgKGdpdmVuIGFuIGFwcHJvcHJpYXRlXG4gICBlbnZpcm9ubWVudCkuICBJZiB0aGlzIGlzIG5vdCBwb3NzaWJsZSwgYSBzdHJpbmcgb2YgdGhlIGZvcm1cbiAgIGBgPC4uLnNvbWUgdXNlZnVsIGRlc2NyaXB0aW9uLi4uPmBgIHNob3VsZCBiZSByZXR1cm5lZC4gVGhlIHJldHVyblxuICAgdmFsdWUgbXVzdCBiZSBhIHN0cmluZyBvYmplY3QuIElmIGEgY2xhc3MgZGVmaW5lcyBgYF9fcmVwcl9fKClgYFxuICAgYnV0IG5vdCBgYF9fc3RyX18oKWBgLCB0aGVuIGBgX19yZXByX18oKWBgIGlzIGFsc28gdXNlZCB3aGVuIGFuXG4gICAiaW5mb3JtYWwiIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBpbnN0YW5jZXMgb2YgdGhhdCBjbGFzcyBpc1xuICAgcmVxdWlyZWQuXG5cbiAgIFRoaXMgaXMgdHlwaWNhbGx5IHVzZWQgZm9yIGRlYnVnZ2luZywgc28gaXQgaXMgaW1wb3J0YW50IHRoYXQgdGhlXG4gICByZXByZXNlbnRhdGlvbiBpcyBpbmZvcm1hdGlvbi1yaWNoIGFuZCB1bmFtYmlndW91cy5cblxub2JqZWN0Ll9fc3RyX18oc2VsZilcblxuICAgQ2FsbGVkIGJ5IHRoZSBgYHN0cigpYGAgYnVpbHQtaW4gZnVuY3Rpb24gYW5kIGJ5IHRoZSBgYHByaW50KClgYFxuICAgZnVuY3Rpb24gdG8gY29tcHV0ZSB0aGUgImluZm9ybWFsIiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYW5cbiAgIG9iamVjdC4gIFRoaXMgZGlmZmVycyBmcm9tIGBgX19yZXByX18oKWBgIGluIHRoYXQgaXQgZG9lcyBub3QgaGF2ZVxuICAgdG8gYmUgYSB2YWxpZCBQeXRob24gZXhwcmVzc2lvbjogYSBtb3JlIGNvbnZlbmllbnQgb3IgY29uY2lzZVxuICAgcmVwcmVzZW50YXRpb24gbWF5IGJlIHVzZWQgaW5zdGVhZC4gVGhlIHJldHVybiB2YWx1ZSBtdXN0IGJlIGFcbiAgIHN0cmluZyBvYmplY3QuXG5cbm9iamVjdC5fX2J5dGVzX18oc2VsZilcblxuICAgQ2FsbGVkIGJ5IGBgYnl0ZXMoKWBgIHRvIGNvbXB1dGUgYSBieXRlLXN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhblxuICAgb2JqZWN0LiBUaGlzIHNob3VsZCByZXR1cm4gYSBgYGJ5dGVzYGAgb2JqZWN0LlxuXG5vYmplY3QuX19mb3JtYXRfXyhzZWxmLCBmb3JtYXRfc3BlYylcblxuICAgQ2FsbGVkIGJ5IHRoZSBgYGZvcm1hdCgpYGAgYnVpbHQtaW4gZnVuY3Rpb24gKGFuZCBieSBleHRlbnNpb24sIHRoZVxuICAgYGBmb3JtYXQoKWBgIG1ldGhvZCBvZiBjbGFzcyBgYHN0cmBgKSB0byBwcm9kdWNlIGEgImZvcm1hdHRlZCJcbiAgIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhbiBvYmplY3QuIFRoZSBgYGZvcm1hdF9zcGVjYGAgYXJndW1lbnQgaXNcbiAgIGEgc3RyaW5nIHRoYXQgY29udGFpbnMgYSBkZXNjcmlwdGlvbiBvZiB0aGUgZm9ybWF0dGluZyBvcHRpb25zXG4gICBkZXNpcmVkLiBUaGUgaW50ZXJwcmV0YXRpb24gb2YgdGhlIGBgZm9ybWF0X3NwZWNgYCBhcmd1bWVudCBpcyB1cFxuICAgdG8gdGhlIHR5cGUgaW1wbGVtZW50aW5nIGBgX19mb3JtYXRfXygpYGAsIGhvd2V2ZXIgbW9zdCBjbGFzc2VzXG4gICB3aWxsIGVpdGhlciBkZWxlZ2F0ZSBmb3JtYXR0aW5nIHRvIG9uZSBvZiB0aGUgYnVpbHQtaW4gdHlwZXMsIG9yXG4gICB1c2UgYSBzaW1pbGFyIGZvcm1hdHRpbmcgb3B0aW9uIHN5bnRheC5cblxuICAgU2VlICpGb3JtYXQgU3BlY2lmaWNhdGlvbiBNaW5pLUxhbmd1YWdlKiBmb3IgYSBkZXNjcmlwdGlvbiBvZiB0aGVcbiAgIHN0YW5kYXJkIGZvcm1hdHRpbmcgc3ludGF4LlxuXG4gICBUaGUgcmV0dXJuIHZhbHVlIG11c3QgYmUgYSBzdHJpbmcgb2JqZWN0LlxuXG5vYmplY3QuX19sdF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fbGVfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2VxX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19uZV9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fZ3RfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2dlX18oc2VsZiwgb3RoZXIpXG5cbiAgIFRoZXNlIGFyZSB0aGUgc28tY2FsbGVkICJyaWNoIGNvbXBhcmlzb24iIG1ldGhvZHMuIFRoZVxuICAgY29ycmVzcG9uZGVuY2UgYmV0d2VlbiBvcGVyYXRvciBzeW1ib2xzIGFuZCBtZXRob2QgbmFtZXMgaXMgYXNcbiAgIGZvbGxvd3M6IGBgeDx5YGAgY2FsbHMgYGB4Ll9fbHRfXyh5KWBgLCBgYHg8PXlgYCBjYWxsc1xuICAgYGB4Ll9fbGVfXyh5KWBgLCBgYHg9PXlgYCBjYWxscyBgYHguX19lcV9fKHkpYGAsIGBgeCE9eWBgIGNhbGxzXG4gICBgYHguX19uZV9fKHkpYGAsIGBgeD55YGAgY2FsbHMgYGB4Ll9fZ3RfXyh5KWBgLCBhbmQgYGB4Pj15YGAgY2FsbHNcbiAgIGBgeC5fX2dlX18oeSlgYC5cblxuICAgQSByaWNoIGNvbXBhcmlzb24gbWV0aG9kIG1heSByZXR1cm4gdGhlIHNpbmdsZXRvblxuICAgYGBOb3RJbXBsZW1lbnRlZGBgIGlmIGl0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgb3BlcmF0aW9uIGZvciBhXG4gICBnaXZlbiBwYWlyIG9mIGFyZ3VtZW50cy4gQnkgY29udmVudGlvbiwgYGBGYWxzZWBgIGFuZCBgYFRydWVgYCBhcmVcbiAgIHJldHVybmVkIGZvciBhIHN1Y2Nlc3NmdWwgY29tcGFyaXNvbi4gSG93ZXZlciwgdGhlc2UgbWV0aG9kcyBjYW5cbiAgIHJldHVybiBhbnkgdmFsdWUsIHNvIGlmIHRoZSBjb21wYXJpc29uIG9wZXJhdG9yIGlzIHVzZWQgaW4gYVxuICAgQm9vbGVhbiBjb250ZXh0IChlLmcuLCBpbiB0aGUgY29uZGl0aW9uIG9mIGFuIGBgaWZgYCBzdGF0ZW1lbnQpLFxuICAgUHl0aG9uIHdpbGwgY2FsbCBgYGJvb2woKWBgIG9uIHRoZSB2YWx1ZSB0byBkZXRlcm1pbmUgaWYgdGhlIHJlc3VsdFxuICAgaXMgdHJ1ZSBvciBmYWxzZS5cblxuICAgVGhlcmUgYXJlIG5vIGltcGxpZWQgcmVsYXRpb25zaGlwcyBhbW9uZyB0aGUgY29tcGFyaXNvbiBvcGVyYXRvcnMuXG4gICBUaGUgdHJ1dGggb2YgYGB4PT15YGAgZG9lcyBub3QgaW1wbHkgdGhhdCBgYHghPXlgYCBpcyBmYWxzZS5cbiAgIEFjY29yZGluZ2x5LCB3aGVuIGRlZmluaW5nIGBgX19lcV9fKClgYCwgb25lIHNob3VsZCBhbHNvIGRlZmluZVxuICAgYGBfX25lX18oKWBgIHNvIHRoYXQgdGhlIG9wZXJhdG9ycyB3aWxsIGJlaGF2ZSBhcyBleHBlY3RlZC4gIFNlZVxuICAgdGhlIHBhcmFncmFwaCBvbiBgYF9faGFzaF9fKClgYCBmb3Igc29tZSBpbXBvcnRhbnQgbm90ZXMgb25cbiAgIGNyZWF0aW5nICpoYXNoYWJsZSogb2JqZWN0cyB3aGljaCBzdXBwb3J0IGN1c3RvbSBjb21wYXJpc29uXG4gICBvcGVyYXRpb25zIGFuZCBhcmUgdXNhYmxlIGFzIGRpY3Rpb25hcnkga2V5cy5cblxuICAgVGhlcmUgYXJlIG5vIHN3YXBwZWQtYXJndW1lbnQgdmVyc2lvbnMgb2YgdGhlc2UgbWV0aG9kcyAodG8gYmUgdXNlZFxuICAgd2hlbiB0aGUgbGVmdCBhcmd1bWVudCBkb2VzIG5vdCBzdXBwb3J0IHRoZSBvcGVyYXRpb24gYnV0IHRoZSByaWdodFxuICAgYXJndW1lbnQgZG9lcyk7IHJhdGhlciwgYGBfX2x0X18oKWBgIGFuZCBgYF9fZ3RfXygpYGAgYXJlIGVhY2hcbiAgIG90aGVyXCdzIHJlZmxlY3Rpb24sIGBgX19sZV9fKClgYCBhbmQgYGBfX2dlX18oKWBgIGFyZSBlYWNoIG90aGVyXCdzXG4gICByZWZsZWN0aW9uLCBhbmQgYGBfX2VxX18oKWBgIGFuZCBgYF9fbmVfXygpYGAgYXJlIHRoZWlyIG93blxuICAgcmVmbGVjdGlvbi5cblxuICAgQXJndW1lbnRzIHRvIHJpY2ggY29tcGFyaXNvbiBtZXRob2RzIGFyZSBuZXZlciBjb2VyY2VkLlxuXG4gICBUbyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIG9yZGVyaW5nIG9wZXJhdGlvbnMgZnJvbSBhIHNpbmdsZSByb290XG4gICBvcGVyYXRpb24sIHNlZSBgYGZ1bmN0b29scy50b3RhbF9vcmRlcmluZygpYGAuXG5cbm9iamVjdC5fX2hhc2hfXyhzZWxmKVxuXG4gICBDYWxsZWQgYnkgYnVpbHQtaW4gZnVuY3Rpb24gYGBoYXNoKClgYCBhbmQgZm9yIG9wZXJhdGlvbnMgb25cbiAgIG1lbWJlcnMgb2YgaGFzaGVkIGNvbGxlY3Rpb25zIGluY2x1ZGluZyBgYHNldGBgLCBgYGZyb3plbnNldGBgLCBhbmRcbiAgIGBgZGljdGBgLiAgYGBfX2hhc2hfXygpYGAgc2hvdWxkIHJldHVybiBhbiBpbnRlZ2VyLiAgVGhlIG9ubHlcbiAgIHJlcXVpcmVkIHByb3BlcnR5IGlzIHRoYXQgb2JqZWN0cyB3aGljaCBjb21wYXJlIGVxdWFsIGhhdmUgdGhlIHNhbWVcbiAgIGhhc2ggdmFsdWU7IGl0IGlzIGFkdmlzZWQgdG8gc29tZWhvdyBtaXggdG9nZXRoZXIgKGUuZy4gdXNpbmdcbiAgIGV4Y2x1c2l2ZSBvcikgdGhlIGhhc2ggdmFsdWVzIGZvciB0aGUgY29tcG9uZW50cyBvZiB0aGUgb2JqZWN0IHRoYXRcbiAgIGFsc28gcGxheSBhIHBhcnQgaW4gY29tcGFyaXNvbiBvZiBvYmplY3RzLlxuXG4gICBJZiBhIGNsYXNzIGRvZXMgbm90IGRlZmluZSBhbiBgYF9fZXFfXygpYGAgbWV0aG9kIGl0IHNob3VsZCBub3RcbiAgIGRlZmluZSBhIGBgX19oYXNoX18oKWBgIG9wZXJhdGlvbiBlaXRoZXI7IGlmIGl0IGRlZmluZXNcbiAgIGBgX19lcV9fKClgYCBidXQgbm90IGBgX19oYXNoX18oKWBgLCBpdHMgaW5zdGFuY2VzIHdpbGwgbm90IGJlXG4gICB1c2FibGUgYXMgaXRlbXMgaW4gaGFzaGFibGUgY29sbGVjdGlvbnMuICBJZiBhIGNsYXNzIGRlZmluZXNcbiAgIG11dGFibGUgb2JqZWN0cyBhbmQgaW1wbGVtZW50cyBhbiBgYF9fZXFfXygpYGAgbWV0aG9kLCBpdCBzaG91bGRcbiAgIG5vdCBpbXBsZW1lbnQgYGBfX2hhc2hfXygpYGAsIHNpbmNlIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBoYXNoYWJsZVxuICAgY29sbGVjdGlvbnMgcmVxdWlyZXMgdGhhdCBhIGtleVwncyBoYXNoIHZhbHVlIGlzIGltbXV0YWJsZSAoaWYgdGhlXG4gICBvYmplY3RcJ3MgaGFzaCB2YWx1ZSBjaGFuZ2VzLCBpdCB3aWxsIGJlIGluIHRoZSB3cm9uZyBoYXNoIGJ1Y2tldCkuXG5cbiAgIFVzZXItZGVmaW5lZCBjbGFzc2VzIGhhdmUgYGBfX2VxX18oKWBgIGFuZCBgYF9faGFzaF9fKClgYCBtZXRob2RzXG4gICBieSBkZWZhdWx0OyB3aXRoIHRoZW0sIGFsbCBvYmplY3RzIGNvbXBhcmUgdW5lcXVhbCAoZXhjZXB0IHdpdGhcbiAgIHRoZW1zZWx2ZXMpIGFuZCBgYHguX19oYXNoX18oKWBgIHJldHVybnMgYGBpZCh4KWBgLlxuXG4gICBDbGFzc2VzIHdoaWNoIGluaGVyaXQgYSBgYF9faGFzaF9fKClgYCBtZXRob2QgZnJvbSBhIHBhcmVudCBjbGFzc1xuICAgYnV0IGNoYW5nZSB0aGUgbWVhbmluZyBvZiBgYF9fZXFfXygpYGAgc3VjaCB0aGF0IHRoZSBoYXNoIHZhbHVlXG4gICByZXR1cm5lZCBpcyBubyBsb25nZXIgYXBwcm9wcmlhdGUgKGUuZy4gYnkgc3dpdGNoaW5nIHRvIGEgdmFsdWUtXG4gICBiYXNlZCBjb25jZXB0IG9mIGVxdWFsaXR5IGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgaWRlbnRpdHkgYmFzZWRcbiAgIGVxdWFsaXR5KSBjYW4gZXhwbGljaXRseSBmbGFnIHRoZW1zZWx2ZXMgYXMgYmVpbmcgdW5oYXNoYWJsZSBieVxuICAgc2V0dGluZyBgYF9faGFzaF9fID0gTm9uZWBgIGluIHRoZSBjbGFzcyBkZWZpbml0aW9uLiBEb2luZyBzbyBtZWFuc1xuICAgdGhhdCBub3Qgb25seSB3aWxsIGluc3RhbmNlcyBvZiB0aGUgY2xhc3MgcmFpc2UgYW4gYXBwcm9wcmlhdGVcbiAgIGBgVHlwZUVycm9yYGAgd2hlbiBhIHByb2dyYW0gYXR0ZW1wdHMgdG8gcmV0cmlldmUgdGhlaXIgaGFzaCB2YWx1ZSxcbiAgIGJ1dCB0aGV5IHdpbGwgYWxzbyBiZSBjb3JyZWN0bHkgaWRlbnRpZmllZCBhcyB1bmhhc2hhYmxlIHdoZW5cbiAgIGNoZWNraW5nIGBgaXNpbnN0YW5jZShvYmosIGNvbGxlY3Rpb25zLkhhc2hhYmxlKWBgICh1bmxpa2UgY2xhc3Nlc1xuICAgd2hpY2ggZGVmaW5lIHRoZWlyIG93biBgYF9faGFzaF9fKClgYCB0byBleHBsaWNpdGx5IHJhaXNlXG4gICBgYFR5cGVFcnJvcmBgKS5cblxuICAgSWYgYSBjbGFzcyB0aGF0IG92ZXJyaWRlcyBgYF9fZXFfXygpYGAgbmVlZHMgdG8gcmV0YWluIHRoZVxuICAgaW1wbGVtZW50YXRpb24gb2YgYGBfX2hhc2hfXygpYGAgZnJvbSBhIHBhcmVudCBjbGFzcywgdGhlXG4gICBpbnRlcnByZXRlciBtdXN0IGJlIHRvbGQgdGhpcyBleHBsaWNpdGx5IGJ5IHNldHRpbmcgYGBfX2hhc2hfXyA9XG4gICA8UGFyZW50Q2xhc3M+Ll9faGFzaF9fYGAuIE90aGVyd2lzZSB0aGUgaW5oZXJpdGFuY2Ugb2ZcbiAgIGBgX19oYXNoX18oKWBgIHdpbGwgYmUgYmxvY2tlZCwganVzdCBhcyBpZiBgYF9faGFzaF9fYGAgaGFkIGJlZW5cbiAgIGV4cGxpY2l0bHkgc2V0IHRvIGBgTm9uZWBgLlxuXG4gICBTZWUgYWxzbyB0aGUgKi1SKiBjb21tYW5kLWxpbmUgb3B0aW9uLlxuXG5vYmplY3QuX19ib29sX18oc2VsZilcblxuICAgQ2FsbGVkIHRvIGltcGxlbWVudCB0cnV0aCB2YWx1ZSB0ZXN0aW5nIGFuZCB0aGUgYnVpbHQtaW4gb3BlcmF0aW9uXG4gICBgYGJvb2woKWBgOyBzaG91bGQgcmV0dXJuIGBgRmFsc2VgYCBvciBgYFRydWVgYC4gIFdoZW4gdGhpcyBtZXRob2RcbiAgIGlzIG5vdCBkZWZpbmVkLCBgYF9fbGVuX18oKWBgIGlzIGNhbGxlZCwgaWYgaXQgaXMgZGVmaW5lZCwgYW5kIHRoZVxuICAgb2JqZWN0IGlzIGNvbnNpZGVyZWQgdHJ1ZSBpZiBpdHMgcmVzdWx0IGlzIG5vbnplcm8uICBJZiBhIGNsYXNzXG4gICBkZWZpbmVzIG5laXRoZXIgYGBfX2xlbl9fKClgYCBub3IgYGBfX2Jvb2xfXygpYGAsIGFsbCBpdHMgaW5zdGFuY2VzXG4gICBhcmUgY29uc2lkZXJlZCB0cnVlLlxuJywKKyAnY3VzdG9taXphdGlvbic6ICdcbkJhc2ljIGN1c3RvbWl6YXRpb25cbioqKioqKioqKioqKioqKioqKipcblxub2JqZWN0Ll9fbmV3X18oY2xzWywgLi4uXSlcblxuICAgQ2FsbGVkIHRvIGNyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiBjbGFzcyAqY2xzKi4gIGBgX19uZXdfXygpYGAgaXMgYVxuICAgc3RhdGljIG1ldGhvZCAoc3BlY2lhbC1jYXNlZCBzbyB5b3UgbmVlZCBub3QgZGVjbGFyZSBpdCBhcyBzdWNoKVxuICAgdGhhdCB0YWtlcyB0aGUgY2xhc3Mgb2Ygd2hpY2ggYW4gaW5zdGFuY2Ugd2FzIHJlcXVlc3RlZCBhcyBpdHNcbiAgIGZpcnN0IGFyZ3VtZW50LiAgVGhlIHJlbWFpbmluZyBhcmd1bWVudHMgYXJlIHRob3NlIHBhc3NlZCB0byB0aGVcbiAgIG9iamVjdCBjb25zdHJ1Y3RvciBleHByZXNzaW9uICh0aGUgY2FsbCB0byB0aGUgY2xhc3MpLiAgVGhlIHJldHVyblxuICAgdmFsdWUgb2YgYGBfX25ld19fKClgYCBzaG91bGQgYmUgdGhlIG5ldyBvYmplY3QgaW5zdGFuY2UgKHVzdWFsbHlcbiAgIGFuIGluc3RhbmNlIG9mICpjbHMqKS5cblxuICAgVHlwaWNhbCBpbXBsZW1lbnRhdGlvbnMgY3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBjbGFzcyBieVxuICAgaW52b2tpbmcgdGhlIHN1cGVyY2xhc3NcJ3MgYGBfX25ld19fKClgYCBtZXRob2QgdXNpbmdcbiAgIGBgc3VwZXIoY3VycmVudGNsYXNzLCBjbHMpLl9fbmV3X18oY2xzWywgLi4uXSlgYCB3aXRoIGFwcHJvcHJpYXRlXG4gICBhcmd1bWVudHMgYW5kIHRoZW4gbW9kaWZ5aW5nIHRoZSBuZXdseS1jcmVhdGVkIGluc3RhbmNlIGFzXG4gICBuZWNlc3NhcnkgYmVmb3JlIHJldHVybmluZyBpdC5cblxuICAgSWYgYGBfX25ld19fKClgYCByZXR1cm5zIGFuIGluc3RhbmNlIG9mICpjbHMqLCB0aGVuIHRoZSBuZXdcbiAgIGluc3RhbmNlXCdzIGBgX19pbml0X18oKWBgIG1ldGhvZCB3aWxsIGJlIGludm9rZWQgbGlrZVxuICAgYGBfX2luaXRfXyhzZWxmWywgLi4uXSlgYCwgd2hlcmUgKnNlbGYqIGlzIHRoZSBuZXcgaW5zdGFuY2UgYW5kIHRoZVxuICAgcmVtYWluaW5nIGFyZ3VtZW50cyBhcmUgdGhlIHNhbWUgYXMgd2VyZSBwYXNzZWQgdG8gYGBfX25ld19fKClgYC5cblxuICAgSWYgYGBfX25ld19fKClgYCBkb2VzIG5vdCByZXR1cm4gYW4gaW5zdGFuY2Ugb2YgKmNscyosIHRoZW4gdGhlIG5ld1xuICAgaW5zdGFuY2VcJ3MgYGBfX2luaXRfXygpYGAgbWV0aG9kIHdpbGwgbm90IGJlIGludm9rZWQuXG5cbiAgIGBgX19uZXdfXygpYGAgaXMgaW50ZW5kZWQgbWFpbmx5IHRvIGFsbG93IHN1YmNsYXNzZXMgb2YgaW1tdXRhYmxlXG4gICB0eXBlcyAobGlrZSBpbnQsIHN0ciwgb3IgdHVwbGUpIHRvIGN1c3RvbWl6ZSBpbnN0YW5jZSBjcmVhdGlvbi4gIEl0XG4gICBpcyBhbHNvIGNvbW1vbmx5IG92ZXJyaWRkZW4gaW4gY3VzdG9tIG1ldGFjbGFzc2VzIGluIG9yZGVyIHRvXG4gICBjdXN0b21pemUgY2xhc3MgY3JlYXRpb24uXG5cbm9iamVjdC5fX2luaXRfXyhzZWxmWywgLi4uXSlcblxuICAgQ2FsbGVkIHdoZW4gdGhlIGluc3RhbmNlIGlzIGNyZWF0ZWQuICBUaGUgYXJndW1lbnRzIGFyZSB0aG9zZVxuICAgcGFzc2VkIHRvIHRoZSBjbGFzcyBjb25zdHJ1Y3RvciBleHByZXNzaW9uLiAgSWYgYSBiYXNlIGNsYXNzIGhhcyBhblxuICAgYGBfX2luaXRfXygpYGAgbWV0aG9kLCB0aGUgZGVyaXZlZCBjbGFzc1wncyBgYF9faW5pdF9fKClgYCBtZXRob2QsXG4gICBpZiBhbnksIG11c3QgZXhwbGljaXRseSBjYWxsIGl0IHRvIGVuc3VyZSBwcm9wZXIgaW5pdGlhbGl6YXRpb24gb2ZcbiAgIHRoZSBiYXNlIGNsYXNzIHBhcnQgb2YgdGhlIGluc3RhbmNlOyBmb3IgZXhhbXBsZTpcbiAgIGBgQmFzZUNsYXNzLl9faW5pdF9fKHNlbGYsIFthcmdzLi4uXSlgYC4gIEFzIGEgc3BlY2lhbCBjb25zdHJhaW50XG4gICBvbiBjb25zdHJ1Y3RvcnMsIG5vIHZhbHVlIG1heSBiZSByZXR1cm5lZDsgZG9pbmcgc28gd2lsbCBjYXVzZSBhXG4gICBgYFR5cGVFcnJvcmBgIHRvIGJlIHJhaXNlZCBhdCBydW50aW1lLlxuXG5vYmplY3QuX19kZWxfXyhzZWxmKVxuXG4gICBDYWxsZWQgd2hlbiB0aGUgaW5zdGFuY2UgaXMgYWJvdXQgdG8gYmUgZGVzdHJveWVkLiAgVGhpcyBpcyBhbHNvXG4gICBjYWxsZWQgYSBkZXN0cnVjdG9yLiAgSWYgYSBiYXNlIGNsYXNzIGhhcyBhIGBgX19kZWxfXygpYGAgbWV0aG9kLFxuICAgdGhlIGRlcml2ZWQgY2xhc3NcJ3MgYGBfX2RlbF9fKClgYCBtZXRob2QsIGlmIGFueSwgbXVzdCBleHBsaWNpdGx5XG4gICBjYWxsIGl0IHRvIGVuc3VyZSBwcm9wZXIgZGVsZXRpb24gb2YgdGhlIGJhc2UgY2xhc3MgcGFydCBvZiB0aGVcbiAgIGluc3RhbmNlLiAgTm90ZSB0aGF0IGl0IGlzIHBvc3NpYmxlICh0aG91Z2ggbm90IHJlY29tbWVuZGVkISkgZm9yXG4gICB0aGUgYGBfX2RlbF9fKClgYCBtZXRob2QgdG8gcG9zdHBvbmUgZGVzdHJ1Y3Rpb24gb2YgdGhlIGluc3RhbmNlIGJ5XG4gICBjcmVhdGluZyBhIG5ldyByZWZlcmVuY2UgdG8gaXQuICBJdCBtYXkgdGhlbiBiZSBjYWxsZWQgYXQgYSBsYXRlclxuICAgdGltZSB3aGVuIHRoaXMgbmV3IHJlZmVyZW5jZSBpcyBkZWxldGVkLiAgSXQgaXMgbm90IGd1YXJhbnRlZWQgdGhhdFxuICAgYGBfX2RlbF9fKClgYCBtZXRob2RzIGFyZSBjYWxsZWQgZm9yIG9iamVjdHMgdGhhdCBzdGlsbCBleGlzdCB3aGVuXG4gICB0aGUgaW50ZXJwcmV0ZXIgZXhpdHMuXG5cbiAgIE5vdGU6IGBgZGVsIHhgYCBkb2VzblwndCBkaXJlY3RseSBjYWxsIGBgeC5fX2RlbF9fKClgYCAtLS0gdGhlIGZvcm1lclxuICAgICBkZWNyZW1lbnRzIHRoZSByZWZlcmVuY2UgY291bnQgZm9yIGBgeGBgIGJ5IG9uZSwgYW5kIHRoZSBsYXR0ZXJcbiAgICAgaXMgb25seSBjYWxsZWQgd2hlbiBgYHhgYFwncyByZWZlcmVuY2UgY291bnQgcmVhY2hlcyB6ZXJvLiAgU29tZVxuICAgICBjb21tb24gc2l0dWF0aW9ucyB0aGF0IG1heSBwcmV2ZW50IHRoZSByZWZlcmVuY2UgY291bnQgb2YgYW5cbiAgICAgb2JqZWN0IGZyb20gZ29pbmcgdG8gemVybyBpbmNsdWRlOiBjaXJjdWxhciByZWZlcmVuY2VzIGJldHdlZW5cbiAgICAgb2JqZWN0cyAoZS5nLiwgYSBkb3VibHktbGlua2VkIGxpc3Qgb3IgYSB0cmVlIGRhdGEgc3RydWN0dXJlIHdpdGhcbiAgICAgcGFyZW50IGFuZCBjaGlsZCBwb2ludGVycyk7IGEgcmVmZXJlbmNlIHRvIHRoZSBvYmplY3Qgb24gdGhlXG4gICAgIHN0YWNrIGZyYW1lIG9mIGEgZnVuY3Rpb24gdGhhdCBjYXVnaHQgYW4gZXhjZXB0aW9uICh0aGUgdHJhY2ViYWNrXG4gICAgIHN0b3JlZCBpbiBgYHN5cy5leGNfaW5mbygpWzJdYGAga2VlcHMgdGhlIHN0YWNrIGZyYW1lIGFsaXZlKTsgb3JcbiAgICAgYSByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCBvbiB0aGUgc3RhY2sgZnJhbWUgdGhhdCByYWlzZWQgYW5cbiAgICAgdW5oYW5kbGVkIGV4Y2VwdGlvbiBpbiBpbnRlcmFjdGl2ZSBtb2RlICh0aGUgdHJhY2ViYWNrIHN0b3JlZCBpblxuICAgICBgYHN5cy5sYXN0X3RyYWNlYmFja2BgIGtlZXBzIHRoZSBzdGFjayBmcmFtZSBhbGl2ZSkuICBUaGUgZmlyc3RcbiAgICAgc2l0dWF0aW9uIGNhbiBvbmx5IGJlIHJlbWVkaWVkIGJ5IGV4cGxpY2l0bHkgYnJlYWtpbmcgdGhlIGN5Y2xlcztcbiAgICAgdGhlIGxhdHRlciB0d28gc2l0dWF0aW9ucyBjYW4gYmUgcmVzb2x2ZWQgYnkgc3RvcmluZyBgYE5vbmVgYCBpblxuICAgICBgYHN5cy5sYXN0X3RyYWNlYmFja2BgLiBDaXJjdWxhciByZWZlcmVuY2VzIHdoaWNoIGFyZSBnYXJiYWdlIGFyZVxuICAgICBkZXRlY3RlZCB3aGVuIHRoZSBvcHRpb24gY3ljbGUgZGV0ZWN0b3IgaXMgZW5hYmxlZCAoaXRcJ3Mgb24gYnlcbiAgICAgZGVmYXVsdCksIGJ1dCBjYW4gb25seSBiZSBjbGVhbmVkIHVwIGlmIHRoZXJlIGFyZSBubyBQeXRob24tXG4gICAgIGxldmVsIGBgX19kZWxfXygpYGAgbWV0aG9kcyBpbnZvbHZlZC4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb25cbiAgICAgZm9yIHRoZSBgYGdjYGAgbW9kdWxlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGhvd1xuICAgICBgYF9fZGVsX18oKWBgIG1ldGhvZHMgYXJlIGhhbmRsZWQgYnkgdGhlIGN5Y2xlIGRldGVjdG9yLFxuICAgICBwYXJ0aWN1bGFybHkgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBgYGdhcmJhZ2VgYCB2YWx1ZS5cblxuICAgV2FybmluZzogRHVlIHRvIHRoZSBwcmVjYXJpb3VzIGNpcmN1bXN0YW5jZXMgdW5kZXIgd2hpY2ggYGBfX2RlbF9fKClgYFxuICAgICBtZXRob2RzIGFyZSBpbnZva2VkLCBleGNlcHRpb25zIHRoYXQgb2NjdXIgZHVyaW5nIHRoZWlyIGV4ZWN1dGlvblxuICAgICBhcmUgaWdub3JlZCwgYW5kIGEgd2FybmluZyBpcyBwcmludGVkIHRvIGBgc3lzLnN0ZGVycmBgIGluc3RlYWQuXG4gICAgIEFsc28sIHdoZW4gYGBfX2RlbF9fKClgYCBpcyBpbnZva2VkIGluIHJlc3BvbnNlIHRvIGEgbW9kdWxlIGJlaW5nXG4gICAgIGRlbGV0ZWQgKGUuZy4sIHdoZW4gZXhlY3V0aW9uIG9mIHRoZSBwcm9ncmFtIGlzIGRvbmUpLCBvdGhlclxuICAgICBnbG9iYWxzIHJlZmVyZW5jZWQgYnkgdGhlIGBgX19kZWxfXygpYGAgbWV0aG9kIG1heSBhbHJlYWR5IGhhdmVcbiAgICAgYmVlbiBkZWxldGVkIG9yIGluIHRoZSBwcm9jZXNzIG9mIGJlaW5nIHRvcm4gZG93biAoZS5nLiB0aGVcbiAgICAgaW1wb3J0IG1hY2hpbmVyeSBzaHV0dGluZyBkb3duKS4gIEZvciB0aGlzIHJlYXNvbiwgYGBfX2RlbF9fKClgYFxuICAgICBtZXRob2RzIHNob3VsZCBkbyB0aGUgYWJzb2x1dGUgbWluaW11bSBuZWVkZWQgdG8gbWFpbnRhaW5cbiAgICAgZXh0ZXJuYWwgaW52YXJpYW50cy4gIFN0YXJ0aW5nIHdpdGggdmVyc2lvbiAxLjUsIFB5dGhvblxuICAgICBndWFyYW50ZWVzIHRoYXQgZ2xvYmFscyB3aG9zZSBuYW1lIGJlZ2lucyB3aXRoIGEgc2luZ2xlXG4gICAgIHVuZGVyc2NvcmUgYXJlIGRlbGV0ZWQgZnJvbSB0aGVpciBtb2R1bGUgYmVmb3JlIG90aGVyIGdsb2JhbHMgYXJlXG4gICAgIGRlbGV0ZWQ7IGlmIG5vIG90aGVyIHJlZmVyZW5jZXMgdG8gc3VjaCBnbG9iYWxzIGV4aXN0LCB0aGlzIG1heVxuICAgICBoZWxwIGluIGFzc3VyaW5nIHRoYXQgaW1wb3J0ZWQgbW9kdWxlcyBhcmUgc3RpbGwgYXZhaWxhYmxlIGF0IHRoZVxuICAgICB0aW1lIHdoZW4gdGhlIGBgX19kZWxfXygpYGAgbWV0aG9kIGlzIGNhbGxlZC5cblxub2JqZWN0Ll9fcmVwcl9fKHNlbGYpXG5cbiAgIENhbGxlZCBieSB0aGUgYGByZXByKClgYCBidWlsdC1pbiBmdW5jdGlvbiB0byBjb21wdXRlIHRoZVxuICAgIm9mZmljaWFsIiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYW4gb2JqZWN0LiAgSWYgYXQgYWxsIHBvc3NpYmxlLFxuICAgdGhpcyBzaG91bGQgbG9vayBsaWtlIGEgdmFsaWQgUHl0aG9uIGV4cHJlc3Npb24gdGhhdCBjb3VsZCBiZSB1c2VkXG4gICB0byByZWNyZWF0ZSBhbiBvYmplY3Qgd2l0aCB0aGUgc2FtZSB2YWx1ZSAoZ2l2ZW4gYW4gYXBwcm9wcmlhdGVcbiAgIGVudmlyb25tZW50KS4gIElmIHRoaXMgaXMgbm90IHBvc3NpYmxlLCBhIHN0cmluZyBvZiB0aGUgZm9ybVxuICAgYGA8Li4uc29tZSB1c2VmdWwgZGVzY3JpcHRpb24uLi4+YGAgc2hvdWxkIGJlIHJldHVybmVkLiBUaGUgcmV0dXJuXG4gICB2YWx1ZSBtdXN0IGJlIGEgc3RyaW5nIG9iamVjdC4gSWYgYSBjbGFzcyBkZWZpbmVzIGBgX19yZXByX18oKWBgXG4gICBidXQgbm90IGBgX19zdHJfXygpYGAsIHRoZW4gYGBfX3JlcHJfXygpYGAgaXMgYWxzbyB1c2VkIHdoZW4gYW5cbiAgICJpbmZvcm1hbCIgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGluc3RhbmNlcyBvZiB0aGF0IGNsYXNzIGlzXG4gICByZXF1aXJlZC5cblxuICAgVGhpcyBpcyB0eXBpY2FsbHkgdXNlZCBmb3IgZGVidWdnaW5nLCBzbyBpdCBpcyBpbXBvcnRhbnQgdGhhdCB0aGVcbiAgIHJlcHJlc2VudGF0aW9uIGlzIGluZm9ybWF0aW9uLXJpY2ggYW5kIHVuYW1iaWd1b3VzLlxuXG5vYmplY3QuX19zdHJfXyhzZWxmKVxuXG4gICBDYWxsZWQgYnkgdGhlIGBgc3RyKClgYCBidWlsdC1pbiBmdW5jdGlvbiBhbmQgYnkgdGhlIGBgcHJpbnQoKWBgXG4gICBmdW5jdGlvbiB0byBjb21wdXRlIHRoZSAiaW5mb3JtYWwiIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhblxuICAgb2JqZWN0LiAgVGhpcyBkaWZmZXJzIGZyb20gYGBfX3JlcHJfXygpYGAgaW4gdGhhdCBpdCBkb2VzIG5vdCBoYXZlXG4gICB0byBiZSBhIHZhbGlkIFB5dGhvbiBleHByZXNzaW9uOiBhIG1vcmUgY29udmVuaWVudCBvciBjb25jaXNlXG4gICByZXByZXNlbnRhdGlvbiBtYXkgYmUgdXNlZCBpbnN0ZWFkLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgYmUgYVxuICAgc3RyaW5nIG9iamVjdC5cblxub2JqZWN0Ll9fYnl0ZXNfXyhzZWxmKVxuXG4gICBDYWxsZWQgYnkgYGBieXRlcygpYGAgdG8gY29tcHV0ZSBhIGJ5dGUtc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuXG4gICBvYmplY3QuIFRoaXMgc2hvdWxkIHJldHVybiBhIGBgYnl0ZXNgYCBvYmplY3QuXG5cbm9iamVjdC5fX2Zvcm1hdF9fKHNlbGYsIGZvcm1hdF9zcGVjKVxuXG4gICBDYWxsZWQgYnkgdGhlIGBgZm9ybWF0KClgYCBidWlsdC1pbiBmdW5jdGlvbiAoYW5kIGJ5IGV4dGVuc2lvbiwgdGhlXG4gICBgYGZvcm1hdCgpYGAgbWV0aG9kIG9mIGNsYXNzIGBgc3RyYGApIHRvIHByb2R1Y2UgYSAiZm9ybWF0dGVkIlxuICAgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9iamVjdC4gVGhlIGBgZm9ybWF0X3NwZWNgYCBhcmd1bWVudCBpc1xuICAgYSBzdHJpbmcgdGhhdCBjb250YWlucyBhIGRlc2NyaXB0aW9uIG9mIHRoZSBmb3JtYXR0aW5nIG9wdGlvbnNcbiAgIGRlc2lyZWQuIFRoZSBpbnRlcnByZXRhdGlvbiBvZiB0aGUgYGBmb3JtYXRfc3BlY2BgIGFyZ3VtZW50IGlzIHVwXG4gICB0byB0aGUgdHlwZSBpbXBsZW1lbnRpbmcgYGBfX2Zvcm1hdF9fKClgYCwgaG93ZXZlciBtb3N0IGNsYXNzZXNcbiAgIHdpbGwgZWl0aGVyIGRlbGVnYXRlIGZvcm1hdHRpbmcgdG8gb25lIG9mIHRoZSBidWlsdC1pbiB0eXBlcywgb3JcbiAgIHVzZSBhIHNpbWlsYXIgZm9ybWF0dGluZyBvcHRpb24gc3ludGF4LlxuXG4gICBTZWUgKkZvcm1hdCBTcGVjaWZpY2F0aW9uIE1pbmktTGFuZ3VhZ2UqIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZVxuICAgc3RhbmRhcmQgZm9ybWF0dGluZyBzeW50YXguXG5cbiAgIFRoZSByZXR1cm4gdmFsdWUgbXVzdCBiZSBhIHN0cmluZyBvYmplY3QuXG5cbm9iamVjdC5fX2x0X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19sZV9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fZXFfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX25lX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19ndF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fZ2VfXyhzZWxmLCBvdGhlcilcblxuICAgVGhlc2UgYXJlIHRoZSBzby1jYWxsZWQgInJpY2ggY29tcGFyaXNvbiIgbWV0aG9kcy4gVGhlXG4gICBjb3JyZXNwb25kZW5jZSBiZXR3ZWVuIG9wZXJhdG9yIHN5bWJvbHMgYW5kIG1ldGhvZCBuYW1lcyBpcyBhc1xuICAgZm9sbG93czogYGB4PHlgYCBjYWxscyBgYHguX19sdF9fKHkpYGAsIGBgeDw9eWBgIGNhbGxzXG4gICBgYHguX19sZV9fKHkpYGAsIGBgeD09eWBgIGNhbGxzIGBgeC5fX2VxX18oeSlgYCwgYGB4IT15YGAgY2FsbHNcbiAgIGBgeC5fX25lX18oeSlgYCwgYGB4PnlgYCBjYWxscyBgYHguX19ndF9fKHkpYGAsIGFuZCBgYHg+PXlgYCBjYWxsc1xuICAgYGB4Ll9fZ2VfXyh5KWBgLlxuXG4gICBBIHJpY2ggY29tcGFyaXNvbiBtZXRob2QgbWF5IHJldHVybiB0aGUgc2luZ2xldG9uXG4gICBgYE5vdEltcGxlbWVudGVkYGAgaWYgaXQgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBvcGVyYXRpb24gZm9yIGFcbiAgIGdpdmVuIHBhaXIgb2YgYXJndW1lbnRzLiBCeSBjb252ZW50aW9uLCBgYEZhbHNlYGAgYW5kIGBgVHJ1ZWBgIGFyZVxuICAgcmV0dXJuZWQgZm9yIGEgc3VjY2Vzc2Z1bCBjb21wYXJpc29uLiBIb3dldmVyLCB0aGVzZSBtZXRob2RzIGNhblxuICAgcmV0dXJuIGFueSB2YWx1ZSwgc28gaWYgdGhlIGNvbXBhcmlzb24gb3BlcmF0b3IgaXMgdXNlZCBpbiBhXG4gICBCb29sZWFuIGNvbnRleHQgKGUuZy4sIGluIHRoZSBjb25kaXRpb24gb2YgYW4gYGBpZmBgIHN0YXRlbWVudCksXG4gICBQeXRob24gd2lsbCBjYWxsIGBgYm9vbCgpYGAgb24gdGhlIHZhbHVlIHRvIGRldGVybWluZSBpZiB0aGUgcmVzdWx0XG4gICBpcyB0cnVlIG9yIGZhbHNlLlxuXG4gICBUaGVyZSBhcmUgbm8gaW1wbGllZCByZWxhdGlvbnNoaXBzIGFtb25nIHRoZSBjb21wYXJpc29uIG9wZXJhdG9ycy5cbiAgIFRoZSB0cnV0aCBvZiBgYHg9PXlgYCBkb2VzIG5vdCBpbXBseSB0aGF0IGBgeCE9eWBgIGlzIGZhbHNlLlxuICAgQWNjb3JkaW5nbHksIHdoZW4gZGVmaW5pbmcgYGBfX2VxX18oKWBgLCBvbmUgc2hvdWxkIGFsc28gZGVmaW5lXG4gICBgYF9fbmVfXygpYGAgc28gdGhhdCB0aGUgb3BlcmF0b3JzIHdpbGwgYmVoYXZlIGFzIGV4cGVjdGVkLiAgU2VlXG4gICB0aGUgcGFyYWdyYXBoIG9uIGBgX19oYXNoX18oKWBgIGZvciBzb21lIGltcG9ydGFudCBub3RlcyBvblxuICAgY3JlYXRpbmcgKmhhc2hhYmxlKiBvYmplY3RzIHdoaWNoIHN1cHBvcnQgY3VzdG9tIGNvbXBhcmlzb25cbiAgIG9wZXJhdGlvbnMgYW5kIGFyZSB1c2FibGUgYXMgZGljdGlvbmFyeSBrZXlzLlxuXG4gICBUaGVyZSBhcmUgbm8gc3dhcHBlZC1hcmd1bWVudCB2ZXJzaW9ucyBvZiB0aGVzZSBtZXRob2RzICh0byBiZSB1c2VkXG4gICB3aGVuIHRoZSBsZWZ0IGFyZ3VtZW50IGRvZXMgbm90IHN1cHBvcnQgdGhlIG9wZXJhdGlvbiBidXQgdGhlIHJpZ2h0XG4gICBhcmd1bWVudCBkb2VzKTsgcmF0aGVyLCBgYF9fbHRfXygpYGAgYW5kIGBgX19ndF9fKClgYCBhcmUgZWFjaFxuICAgb3RoZXJcJ3MgcmVmbGVjdGlvbiwgYGBfX2xlX18oKWBgIGFuZCBgYF9fZ2VfXygpYGAgYXJlIGVhY2ggb3RoZXJcJ3NcbiAgIHJlZmxlY3Rpb24sIGFuZCBgYF9fZXFfXygpYGAgYW5kIGBgX19uZV9fKClgYCBhcmUgdGhlaXIgb3duXG4gICByZWZsZWN0aW9uLlxuXG4gICBBcmd1bWVudHMgdG8gcmljaCBjb21wYXJpc29uIG1ldGhvZHMgYXJlIG5ldmVyIGNvZXJjZWQuXG5cbiAgIFRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgb3JkZXJpbmcgb3BlcmF0aW9ucyBmcm9tIGEgc2luZ2xlIHJvb3RcbiAgIG9wZXJhdGlvbiwgc2VlIGBgZnVuY3Rvb2xzLnRvdGFsX29yZGVyaW5nKClgYC5cblxub2JqZWN0Ll9faGFzaF9fKHNlbGYpXG5cbiAgIENhbGxlZCBieSBidWlsdC1pbiBmdW5jdGlvbiBgYGhhc2goKWBgIGFuZCBmb3Igb3BlcmF0aW9ucyBvblxuICAgbWVtYmVycyBvZiBoYXNoZWQgY29sbGVjdGlvbnMgaW5jbHVkaW5nIGBgc2V0YGAsIGBgZnJvemVuc2V0YGAsIGFuZFxuICAgYGBkaWN0YGAuICBgYF9faGFzaF9fKClgYCBzaG91bGQgcmV0dXJuIGFuIGludGVnZXIuICBUaGUgb25seVxuICAgcmVxdWlyZWQgcHJvcGVydHkgaXMgdGhhdCBvYmplY3RzIHdoaWNoIGNvbXBhcmUgZXF1YWwgaGF2ZSB0aGUgc2FtZVxuICAgaGFzaCB2YWx1ZTsgaXQgaXMgYWR2aXNlZCB0byBzb21laG93IG1peCB0b2dldGhlciAoZS5nLiB1c2luZ1xuICAgZXhjbHVzaXZlIG9yKSB0aGUgaGFzaCB2YWx1ZXMgZm9yIHRoZSBjb21wb25lbnRzIG9mIHRoZSBvYmplY3QgdGhhdFxuICAgYWxzbyBwbGF5IGEgcGFydCBpbiBjb21wYXJpc29uIG9mIG9iamVjdHMuXG5cbiAgIElmIGEgY2xhc3MgZG9lcyBub3QgZGVmaW5lIGFuIGBgX19lcV9fKClgYCBtZXRob2QgaXQgc2hvdWxkIG5vdFxuICAgZGVmaW5lIGEgYGBfX2hhc2hfXygpYGAgb3BlcmF0aW9uIGVpdGhlcjsgaWYgaXQgZGVmaW5lc1xuICAgYGBfX2VxX18oKWBgIGJ1dCBub3QgYGBfX2hhc2hfXygpYGAsIGl0cyBpbnN0YW5jZXMgd2lsbCBub3QgYmVcbiAgIHVzYWJsZSBhcyBpdGVtcyBpbiBoYXNoYWJsZSBjb2xsZWN0aW9ucy4gIElmIGEgY2xhc3MgZGVmaW5lc1xuICAgbXV0YWJsZSBvYmplY3RzIGFuZCBpbXBsZW1lbnRzIGFuIGBgX19lcV9fKClgYCBtZXRob2QsIGl0IHNob3VsZFxuICAgbm90IGltcGxlbWVudCBgYF9faGFzaF9fKClgYCwgc2luY2UgdGhlIGltcGxlbWVudGF0aW9uIG9mIGhhc2hhYmxlXG4gICBjb2xsZWN0aW9ucyByZXF1aXJlcyB0aGF0IGEga2V5XCdzIGhhc2ggdmFsdWUgaXMgaW1tdXRhYmxlIChpZiB0aGVcbiAgIG9iamVjdFwncyBoYXNoIHZhbHVlIGNoYW5nZXMsIGl0IHdpbGwgYmUgaW4gdGhlIHdyb25nIGhhc2ggYnVja2V0KS5cblxuICAgVXNlci1kZWZpbmVkIGNsYXNzZXMgaGF2ZSBgYF9fZXFfXygpYGAgYW5kIGBgX19oYXNoX18oKWBgIG1ldGhvZHNcbiAgIGJ5IGRlZmF1bHQ7IHdpdGggdGhlbSwgYWxsIG9iamVjdHMgY29tcGFyZSB1bmVxdWFsIChleGNlcHQgd2l0aFxuICAgdGhlbXNlbHZlcykgYW5kIGBgeC5fX2hhc2hfXygpYGAgcmV0dXJucyBgYGlkKHgpYGAuXG5cbiAgIENsYXNzZXMgd2hpY2ggaW5oZXJpdCBhIGBgX19oYXNoX18oKWBgIG1ldGhvZCBmcm9tIGEgcGFyZW50IGNsYXNzXG4gICBidXQgY2hhbmdlIHRoZSBtZWFuaW5nIG9mIGBgX19lcV9fKClgYCBzdWNoIHRoYXQgdGhlIGhhc2ggdmFsdWVcbiAgIHJldHVybmVkIGlzIG5vIGxvbmdlciBhcHByb3ByaWF0ZSAoZS5nLiBieSBzd2l0Y2hpbmcgdG8gYSB2YWx1ZS1cbiAgIGJhc2VkIGNvbmNlcHQgb2YgZXF1YWxpdHkgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCBpZGVudGl0eSBiYXNlZFxuICAgZXF1YWxpdHkpIGNhbiBleHBsaWNpdGx5IGZsYWcgdGhlbXNlbHZlcyBhcyBiZWluZyB1bmhhc2hhYmxlIGJ5XG4gICBzZXR0aW5nIGBgX19oYXNoX18gPSBOb25lYGAgaW4gdGhlIGNsYXNzIGRlZmluaXRpb24uIERvaW5nIHNvIG1lYW5zXG4gICB0aGF0IG5vdCBvbmx5IHdpbGwgaW5zdGFuY2VzIG9mIHRoZSBjbGFzcyByYWlzZSBhbiBhcHByb3ByaWF0ZVxuICAgYGBUeXBlRXJyb3JgYCB3aGVuIGEgcHJvZ3JhbSBhdHRlbXB0cyB0byByZXRyaWV2ZSB0aGVpciBoYXNoIHZhbHVlLFxuICAgYnV0IHRoZXkgd2lsbCBhbHNvIGJlIGNvcnJlY3RseSBpZGVudGlmaWVkIGFzIHVuaGFzaGFibGUgd2hlblxuICAgY2hlY2tpbmcgYGBpc2luc3RhbmNlKG9iaiwgY29sbGVjdGlvbnMuSGFzaGFibGUpYGAgKHVubGlrZSBjbGFzc2VzXG4gICB3aGljaCBkZWZpbmUgdGhlaXIgb3duIGBgX19oYXNoX18oKWBgIHRvIGV4cGxpY2l0bHkgcmFpc2VcbiAgIGBgVHlwZUVycm9yYGApLlxuXG4gICBJZiBhIGNsYXNzIHRoYXQgb3ZlcnJpZGVzIGBgX19lcV9fKClgYCBuZWVkcyB0byByZXRhaW4gdGhlXG4gICBpbXBsZW1lbnRhdGlvbiBvZiBgYF9faGFzaF9fKClgYCBmcm9tIGEgcGFyZW50IGNsYXNzLCB0aGVcbiAgIGludGVycHJldGVyIG11c3QgYmUgdG9sZCB0aGlzIGV4cGxpY2l0bHkgYnkgc2V0dGluZyBgYF9faGFzaF9fID1cbiAgIDxQYXJlbnRDbGFzcz4uX19oYXNoX19gYC4gT3RoZXJ3aXNlIHRoZSBpbmhlcml0YW5jZSBvZlxuICAgYGBfX2hhc2hfXygpYGAgd2lsbCBiZSBibG9ja2VkLCBqdXN0IGFzIGlmIGBgX19oYXNoX19gYCBoYWQgYmVlblxuICAgZXhwbGljaXRseSBzZXQgdG8gYGBOb25lYGAuXG5cbiAgIE5vdGU6IE5vdGUgYnkgZGVmYXVsdCB0aGUgYGBfX2hhc2hfXygpYGAgdmFsdWVzIG9mIHN0ciwgYnl0ZXMgYW5kXG4gICAgIGRhdGV0aW1lIG9iamVjdHMgYXJlICJzYWx0ZWQiIHdpdGggYW4gdW5wcmVkaWN0YWJsZSByYW5kb20gdmFsdWUuXG4gICAgIEFsdGhvdWdoIHRoZXkgcmVtYWluIGNvbnN0YW50IHdpdGhpbiBhbiBpbmRpdmlkdWFsIFB5dGhvblxuICAgICBwcm9jZXNzLCB0aGV5IGFyZSBub3QgcHJlZGljdGFibGUgYmV0d2VlbiByZXBlYXRlZCBpbnZvY2F0aW9ucyBvZlxuICAgICBQeXRob24uVGhpcyBpcyBpbnRlbmRlZCB0byBwcm92aWRlIHByb3RlY3Rpb24gYWdhaW5zdCBhIGRlbmlhbC1cbiAgICAgb2Ytc2VydmljZSBjYXVzZWQgYnkgY2FyZWZ1bGx5LWNob3NlbiBpbnB1dHMgdGhhdCBleHBsb2l0IHRoZVxuICAgICB3b3JzdCBjYXNlIHBlcmZvcm1hbmNlIG9mIGEgZGljdCBpbnNlcnRpb24sIE8obl4yKSBjb21wbGV4aXR5LlxuICAgICBTZWUgaHR0cDovL3d3dy5vY2VydC5vcmcvYWR2aXNvcmllcy9vY2VydC0yMDExLTAwMy5odG1sIGZvclxuICAgICBkZXRhaWxzLkNoYW5naW5nIGhhc2ggdmFsdWVzIGFmZmVjdHMgdGhlIG9yZGVyIGluIHdoaWNoIGtleXMgYXJlXG4gICAgIHJldHJpZXZlZCBmcm9tIGEgZGljdC4gIE5vdGUgUHl0aG9uIGhhcyBuZXZlciBtYWRlIGd1YXJhbnRlZXNcbiAgICAgYWJvdXQgdGhpcyBvcmRlcmluZyAoYW5kIGl0IHR5cGljYWxseSB2YXJpZXMgYmV0d2VlbiAzMi1iaXQgYW5kXG4gICAgIDY0LWJpdCBidWlsZHMpLlNlZSBhbHNvIGBgUFlUSE9OSEFTSFNFRURgYC5cblxuICAgQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMzogSGFzaCByYW5kb21pemF0aW9uIGlzIGVuYWJsZWQgYnkgZGVmYXVsdC5cblxub2JqZWN0Ll9fYm9vbF9fKHNlbGYpXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgdHJ1dGggdmFsdWUgdGVzdGluZyBhbmQgdGhlIGJ1aWx0LWluIG9wZXJhdGlvblxuICAgYGBib29sKClgYDsgc2hvdWxkIHJldHVybiBgYEZhbHNlYGAgb3IgYGBUcnVlYGAuICBXaGVuIHRoaXMgbWV0aG9kXG4gICBpcyBub3QgZGVmaW5lZCwgYGBfX2xlbl9fKClgYCBpcyBjYWxsZWQsIGlmIGl0IGlzIGRlZmluZWQsIGFuZCB0aGVcbiAgIG9iamVjdCBpcyBjb25zaWRlcmVkIHRydWUgaWYgaXRzIHJlc3VsdCBpcyBub256ZXJvLiAgSWYgYSBjbGFzc1xuICAgZGVmaW5lcyBuZWl0aGVyIGBgX19sZW5fXygpYGAgbm9yIGBgX19ib29sX18oKWBgLCBhbGwgaXRzIGluc3RhbmNlc1xuICAgYXJlIGNvbnNpZGVyZWQgdHJ1ZS5cbicsCiAgJ2RlYnVnZ2VyJzogJ1xuYGBwZGJgYCAtLS0gVGhlIFB5dGhvbiBEZWJ1Z2dlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5UaGUgbW9kdWxlIGBgcGRiYGAgZGVmaW5lcyBhbiBpbnRlcmFjdGl2ZSBzb3VyY2UgY29kZSBkZWJ1Z2dlciBmb3JcblB5dGhvbiBwcm9ncmFtcy4gIEl0IHN1cHBvcnRzIHNldHRpbmcgKGNvbmRpdGlvbmFsKSBicmVha3BvaW50cyBhbmRcbnNpbmdsZSBzdGVwcGluZyBhdCB0aGUgc291cmNlIGxpbmUgbGV2ZWwsIGluc3BlY3Rpb24gb2Ygc3RhY2sgZnJhbWVzLFxuc291cmNlIGNvZGUgbGlzdGluZywgYW5kIGV2YWx1YXRpb24gb2YgYXJiaXRyYXJ5IFB5dGhvbiBjb2RlIGluIHRoZVxuY29udGV4dCBvZiBhbnkgc3RhY2sgZnJhbWUuICBJdCBhbHNvIHN1cHBvcnRzIHBvc3QtbW9ydGVtIGRlYnVnZ2luZ1xuYW5kIGNhbiBiZSBjYWxsZWQgdW5kZXIgcHJvZ3JhbSBjb250cm9sLlxuXG5UaGUgZGVidWdnZXIgaXMgZXh0ZW5zaWJsZSAtLSBpdCBpcyBhY3R1YWxseSBkZWZpbmVkIGFzIHRoZSBjbGFzc1xuYGBQZGJgYC4gVGhpcyBpcyBjdXJyZW50bHkgdW5kb2N1bWVudGVkIGJ1dCBlYXNpbHkgdW5kZXJzdG9vZCBieVxucmVhZGluZyB0aGUgc291cmNlLiAgVGhlIGV4dGVuc2lvbiBpbnRlcmZhY2UgdXNlcyB0aGUgbW9kdWxlcyBgYGJkYmBgXG5hbmQgYGBjbWRgYC5cblxuVGhlIGRlYnVnZ2VyXCdzIHByb21wdCBpcyBgYChQZGIpYGAuIFR5cGljYWwgdXNhZ2UgdG8gcnVuIGEgcHJvZ3JhbVxudW5kZXIgY29udHJvbCBvZiB0aGUgZGVidWdnZXIgaXM6XG5cbiAgID4+PiBpbXBvcnQgcGRiXG4gICA+Pj4gaW1wb3J0IG15bW9kdWxlXG4gICA+Pj4gcGRiLnJ1bihcJ215bW9kdWxlLnRlc3QoKVwnKVxuICAgPiA8c3RyaW5nPigwKT8oKVxuICAgKFBkYikgY29udGludWVcbiAgID4gPHN0cmluZz4oMSk/KClcbiAgIChQZGIpIGNvbnRpbnVlXG4gICBOYW1lRXJyb3I6IFwnc3BhbVwnXG4gICA+IDxzdHJpbmc+KDEpPygpXG4gICAoUGRiKVxuXG5gYHBkYi5weWBgIGNhbiBhbHNvIGJlIGludm9rZWQgYXMgYSBzY3JpcHQgdG8gZGVidWcgb3RoZXIgc2NyaXB0cy5cbkZvciBleGFtcGxlOlxuXG4gICBweXRob24zIC1tIHBkYiBteXNjcmlwdC5weVxuXG5XaGVuIGludm9rZWQgYXMgYSBzY3JpcHQsIHBkYiB3aWxsIGF1dG9tYXRpY2FsbHkgZW50ZXIgcG9zdC1tb3J0ZW1cbmRlYnVnZ2luZyBpZiB0aGUgcHJvZ3JhbSBiZWluZyBkZWJ1Z2dlZCBleGl0cyBhYm5vcm1hbGx5LiAgQWZ0ZXIgcG9zdC1cbm1vcnRlbSBkZWJ1Z2dpbmcgKG9yIGFmdGVyIG5vcm1hbCBleGl0IG9mIHRoZSBwcm9ncmFtKSwgcGRiIHdpbGxcbnJlc3RhcnQgdGhlIHByb2dyYW0uICBBdXRvbWF0aWMgcmVzdGFydGluZyBwcmVzZXJ2ZXMgcGRiXCdzIHN0YXRlIChzdWNoXG5hcyBicmVha3BvaW50cykgYW5kIGluIG1vc3QgY2FzZXMgaXMgbW9yZSB1c2VmdWwgdGhhbiBxdWl0dGluZyB0aGVcbmRlYnVnZ2VyIHVwb24gcHJvZ3JhbVwncyBleGl0LlxuXG5OZXcgaW4gdmVyc2lvbiAzLjI6IGBgcGRiLnB5YGAgbm93IGFjY2VwdHMgYSBgYC1jYGAgb3B0aW9uIHRoYXRcbmV4ZWN1dGVzIGNvbW1hbmRzIGFzIGlmIGdpdmVuIGluIGEgYGAucGRicmNgYCBmaWxlLCBzZWUgKkRlYnVnZ2VyXG5Db21tYW5kcyouXG5cblRoZSB0eXBpY2FsIHVzYWdlIHRvIGJyZWFrIGludG8gdGhlIGRlYnVnZ2VyIGZyb20gYSBydW5uaW5nIHByb2dyYW0gaXNcbnRvIGluc2VydFxuXG4gICBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKClcblxuYXQgdGhlIGxvY2F0aW9uIHlvdSB3YW50IHRvIGJyZWFrIGludG8gdGhlIGRlYnVnZ2VyLiAgWW91IGNhbiB0aGVuXG5zdGVwIHRocm91Z2ggdGhlIGNvZGUgZm9sbG93aW5nIHRoaXMgc3RhdGVtZW50LCBhbmQgY29udGludWUgcnVubmluZ1xud2l0aG91dCB0aGUgZGVidWdnZXIgdXNpbmcgdGhlIGBgY29udGludWVgYCBjb21tYW5kLlxuXG5UaGUgdHlwaWNhbCB1c2FnZSB0byBpbnNwZWN0IGEgY3Jhc2hlZCBwcm9ncmFtIGlzOlxuXG4gICA+Pj4gaW1wb3J0IHBkYlxuICAgPj4+IGltcG9ydCBteW1vZHVsZVxuICAgPj4+IG15bW9kdWxlLnRlc3QoKVxuICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOlxuICAgICBGaWxlICI8c3RkaW4+IiwgbGluZSAxLCBpbiA/XG4gICAgIEZpbGUgIi4vbXltb2R1bGUucHkiLCBsaW5lIDQsIGluIHRlc3RcbiAgICAgICB0ZXN0MigpXG4gICAgIEZpbGUgIi4vbXltb2R1bGUucHkiLCBsaW5lIDMsIGluIHRlc3QyXG4gICAgICAgcHJpbnQoc3BhbSlcbiAgIE5hbWVFcnJvcjogc3BhbVxuICAgPj4+IHBkYi5wbSgpXG4gICA+IC4vbXltb2R1bGUucHkoMyl0ZXN0MigpXG4gICAtPiBwcmludChzcGFtKVxuICAgKFBkYilcblxuVGhlIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zOyBlYWNoIGVudGVycyB0aGUgZGVidWdnZXJcbmluIGEgc2xpZ2h0bHkgZGlmZmVyZW50IHdheTpcblxucGRiLnJ1bihzdGF0ZW1lbnQsIGdsb2JhbHM9Tm9uZSwgbG9jYWxzPU5vbmUpXG5cbiAgIEV4ZWN1dGUgdGhlICpzdGF0ZW1lbnQqIChnaXZlbiBhcyBhIHN0cmluZyBvciBhIGNvZGUgb2JqZWN0KSB1bmRlclxuICAgZGVidWdnZXIgY29udHJvbC4gIFRoZSBkZWJ1Z2dlciBwcm9tcHQgYXBwZWFycyBiZWZvcmUgYW55IGNvZGUgaXNcbiAgIGV4ZWN1dGVkOyB5b3UgY2FuIHNldCBicmVha3BvaW50cyBhbmQgdHlwZSBgYGNvbnRpbnVlYGAsIG9yIHlvdSBjYW5cbiAgIHN0ZXAgdGhyb3VnaCB0aGUgc3RhdGVtZW50IHVzaW5nIGBgc3RlcGBgIG9yIGBgbmV4dGBgIChhbGwgdGhlc2VcbiAgIGNvbW1hbmRzIGFyZSBleHBsYWluZWQgYmVsb3cpLiAgVGhlIG9wdGlvbmFsICpnbG9iYWxzKiBhbmQgKmxvY2FscypcbiAgIGFyZ3VtZW50cyBzcGVjaWZ5IHRoZSBlbnZpcm9ubWVudCBpbiB3aGljaCB0aGUgY29kZSBpcyBleGVjdXRlZDsgYnlcbiAgIGRlZmF1bHQgdGhlIGRpY3Rpb25hcnkgb2YgdGhlIG1vZHVsZSBgYF9fbWFpbl9fYGAgaXMgdXNlZC4gIChTZWVcbiAgIHRoZSBleHBsYW5hdGlvbiBvZiB0aGUgYnVpbHQtaW4gYGBleGVjKClgYCBvciBgYGV2YWwoKWBgXG4gICBmdW5jdGlvbnMuKVxuXG5wZGIucnVuZXZhbChleHByZXNzaW9uLCBnbG9iYWxzPU5vbmUsIGxvY2Fscz1Ob25lKVxuXG4gICBFdmFsdWF0ZSB0aGUgKmV4cHJlc3Npb24qIChnaXZlbiBhcyBhIHN0cmluZyBvciBhIGNvZGUgb2JqZWN0KVxuICAgdW5kZXIgZGVidWdnZXIgY29udHJvbC4gIFdoZW4gYGBydW5ldmFsKClgYCByZXR1cm5zLCBpdCByZXR1cm5zIHRoZVxuICAgdmFsdWUgb2YgdGhlIGV4cHJlc3Npb24uICBPdGhlcndpc2UgdGhpcyBmdW5jdGlvbiBpcyBzaW1pbGFyIHRvXG4gICBgYHJ1bigpYGAuXG5cbnBkYi5ydW5jYWxsKGZ1bmN0aW9uLCAqYXJncywgKiprd2RzKVxuXG4gICBDYWxsIHRoZSAqZnVuY3Rpb24qIChhIGZ1bmN0aW9uIG9yIG1ldGhvZCBvYmplY3QsIG5vdCBhIHN0cmluZylcbiAgIHdpdGggdGhlIGdpdmVuIGFyZ3VtZW50cy4gIFdoZW4gYGBydW5jYWxsKClgYCByZXR1cm5zLCBpdCByZXR1cm5zXG4gICB3aGF0ZXZlciB0aGUgZnVuY3Rpb24gY2FsbCByZXR1cm5lZC4gIFRoZSBkZWJ1Z2dlciBwcm9tcHQgYXBwZWFyc1xuICAgYXMgc29vbiBhcyB0aGUgZnVuY3Rpb24gaXMgZW50ZXJlZC5cblxucGRiLnNldF90cmFjZSgpXG5cbiAgIEVudGVyIHRoZSBkZWJ1Z2dlciBhdCB0aGUgY2FsbGluZyBzdGFjayBmcmFtZS4gIFRoaXMgaXMgdXNlZnVsIHRvXG4gICBoYXJkLWNvZGUgYSBicmVha3BvaW50IGF0IGEgZ2l2ZW4gcG9pbnQgaW4gYSBwcm9ncmFtLCBldmVuIGlmIHRoZVxuICAgY29kZSBpcyBub3Qgb3RoZXJ3aXNlIGJlaW5nIGRlYnVnZ2VkIChlLmcuIHdoZW4gYW4gYXNzZXJ0aW9uXG4gICBmYWlscykuXG5cbnBkYi5wb3N0X21vcnRlbSh0cmFjZWJhY2s9Tm9uZSlcblxuICAgRW50ZXIgcG9zdC1tb3J0ZW0gZGVidWdnaW5nIG9mIHRoZSBnaXZlbiAqdHJhY2ViYWNrKiBvYmplY3QuICBJZiBub1xuICAgKnRyYWNlYmFjayogaXMgZ2l2ZW4sIGl0IHVzZXMgdGhlIG9uZSBvZiB0aGUgZXhjZXB0aW9uIHRoYXQgaXNcbiAgIGN1cnJlbnRseSBiZWluZyBoYW5kbGVkIChhbiBleGNlcHRpb24gbXVzdCBiZSBiZWluZyBoYW5kbGVkIGlmIHRoZVxuICAgZGVmYXVsdCBpcyB0byBiZSB1c2VkKS5cblxucGRiLnBtKClcblxuICAgRW50ZXIgcG9zdC1tb3J0ZW0gZGVidWdnaW5nIG9mIHRoZSB0cmFjZWJhY2sgZm91bmQgaW5cbiAgIGBgc3lzLmxhc3RfdHJhY2ViYWNrYGAuXG5cblRoZSBgYHJ1bipgYCBmdW5jdGlvbnMgYW5kIGBgc2V0X3RyYWNlKClgYCBhcmUgYWxpYXNlcyBmb3Jcbmluc3RhbnRpYXRpbmcgdGhlIGBgUGRiYGAgY2xhc3MgYW5kIGNhbGxpbmcgdGhlIG1ldGhvZCBvZiB0aGUgc2FtZVxubmFtZS4gIElmIHlvdSB3YW50IHRvIGFjY2VzcyBmdXJ0aGVyIGZlYXR1cmVzLCB5b3UgaGF2ZSB0byBkbyB0aGlzXG55b3Vyc2VsZjpcblxuY2xhc3MgY2xhc3MgcGRiLlBkYihjb21wbGV0ZWtleT1cJ3RhYlwnLCBzdGRpbj1Ob25lLCBzdGRvdXQ9Tm9uZSwgc2tpcD1Ob25lLCBub3NpZ2ludD1GYWxzZSlcblxuICAgYGBQZGJgYCBpcyB0aGUgZGVidWdnZXIgY2xhc3MuXG5cbiAgIFRoZSAqY29tcGxldGVrZXkqLCAqc3RkaW4qIGFuZCAqc3Rkb3V0KiBhcmd1bWVudHMgYXJlIHBhc3NlZCB0byB0aGVcbiAgIHVuZGVybHlpbmcgYGBjbWQuQ21kYGAgY2xhc3M7IHNlZSB0aGUgZGVzY3JpcHRpb24gdGhlcmUuXG5cbiAgIFRoZSAqc2tpcCogYXJndW1lbnQsIGlmIGdpdmVuLCBtdXN0IGJlIGFuIGl0ZXJhYmxlIG9mIGdsb2Itc3R5bGVcbiAgIG1vZHVsZSBuYW1lIHBhdHRlcm5zLiAgVGhlIGRlYnVnZ2VyIHdpbGwgbm90IHN0ZXAgaW50byBmcmFtZXMgdGhhdFxuICAgb3JpZ2luYXRlIGluIGEgbW9kdWxlIHRoYXQgbWF0Y2hlcyBvbmUgb2YgdGhlc2UgcGF0dGVybnMuIFsxXVxuXG4gICBCeSBkZWZhdWx0LCBQZGIgc2V0cyBhIGhhbmRsZXIgZm9yIHRoZSBTSUdJTlQgc2lnbmFsICh3aGljaCBpcyBzZW50XG4gICB3aGVuIHRoZSB1c2VyIHByZXNzZXMgQ3RybC1DIG9uIHRoZSBjb25zb2xlKSB3aGVuIHlvdSBnaXZlIGFcbiAgIGBgY29udGludWVgYCBjb21tYW5kLiBUaGlzIGFsbG93cyB5b3UgdG8gYnJlYWsgaW50byB0aGUgZGVidWdnZXJcbiAgIGFnYWluIGJ5IHByZXNzaW5nIEN0cmwtQy4gIElmIHlvdSB3YW50IFBkYiBub3QgdG8gdG91Y2ggdGhlIFNJR0lOVFxuICAgaGFuZGxlciwgc2V0ICpub3NpZ2ludCogdG90IHRydWUuXG5cbiAgIEV4YW1wbGUgY2FsbCB0byBlbmFibGUgdHJhY2luZyB3aXRoICpza2lwKjpcblxuICAgICAgaW1wb3J0IHBkYjsgcGRiLlBkYihza2lwPVtcJ2RqYW5nby4qXCddKS5zZXRfdHJhY2UoKVxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjE6IFRoZSAqc2tpcCogYXJndW1lbnQuXG5cbiAgIE5ldyBpbiB2ZXJzaW9uIDMuMjogVGhlICpub3NpZ2ludCogYXJndW1lbnQuICBQcmV2aW91c2x5LCBhIFNJR0lOVFxuICAgaGFuZGxlciB3YXMgbmV2ZXIgc2V0IGJ5IFBkYi5cblxuICAgcnVuKHN0YXRlbWVudCwgZ2xvYmFscz1Ob25lLCBsb2NhbHM9Tm9uZSlcbiAgIHJ1bmV2YWwoZXhwcmVzc2lvbiwgZ2xvYmFscz1Ob25lLCBsb2NhbHM9Tm9uZSlcbiAgIHJ1bmNhbGwoZnVuY3Rpb24sICphcmdzLCAqKmt3ZHMpXG4gICBzZXRfdHJhY2UoKVxuXG4gICAgICBTZWUgdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBmdW5jdGlvbnMgZXhwbGFpbmVkIGFib3ZlLlxuXG5cbkRlYnVnZ2VyIENvbW1hbmRzXG49PT09PT09PT09PT09PT09PVxuXG5UaGUgY29tbWFuZHMgcmVjb2duaXplZCBieSB0aGUgZGVidWdnZXIgYXJlIGxpc3RlZCBiZWxvdy4gIE1vc3RcbmNvbW1hbmRzIGNhbiBiZSBhYmJyZXZpYXRlZCB0byBvbmUgb3IgdHdvIGxldHRlcnMgYXMgaW5kaWNhdGVkOyBlLmcuXG5gYGgoZWxwKWBgIG1lYW5zIHRoYXQgZWl0aGVyIGBgaGBgIG9yIGBgaGVscGBgIGNhbiBiZSB1c2VkIHRvIGVudGVyXG50aGUgaGVscCBjb21tYW5kIChidXQgbm90IGBgaGVgYCBvciBgYGhlbGBgLCBub3IgYGBIYGAgb3IgYGBIZWxwYGAgb3JcbmBgSEVMUGBgKS4gIEFyZ3VtZW50cyB0byBjb21tYW5kcyBtdXN0IGJlIHNlcGFyYXRlZCBieSB3aGl0ZXNwYWNlXG4oc3BhY2VzIG9yIHRhYnMpLiAgT3B0aW9uYWwgYXJndW1lbnRzIGFyZSBlbmNsb3NlZCBpbiBzcXVhcmUgYnJhY2tldHNcbihgYFtdYGApIGluIHRoZSBjb21tYW5kIHN5bnRheDsgdGhlIHNxdWFyZSBicmFja2V0cyBtdXN0IG5vdCBiZSB0eXBlZC5cbkFsdGVybmF0aXZlcyBpbiB0aGUgY29tbWFuZCBzeW50YXggYXJlIHNlcGFyYXRlZCBieSBhIHZlcnRpY2FsIGJhclxuKGBgfGBgKS5cblxuRW50ZXJpbmcgYSBibGFuayBsaW5lIHJlcGVhdHMgdGhlIGxhc3QgY29tbWFuZCBlbnRlcmVkLiAgRXhjZXB0aW9uOiBpZlxudGhlIGxhc3QgY29tbWFuZCB3YXMgYSBgYGxpc3RgYCBjb21tYW5kLCB0aGUgbmV4dCAxMSBsaW5lcyBhcmUgbGlzdGVkLlxuXG5Db21tYW5kcyB0aGF0IHRoZSBkZWJ1Z2dlciBkb2VzblwndCByZWNvZ25pemUgYXJlIGFzc3VtZWQgdG8gYmUgUHl0aG9uXG5zdGF0ZW1lbnRzIGFuZCBhcmUgZXhlY3V0ZWQgaW4gdGhlIGNvbnRleHQgb2YgdGhlIHByb2dyYW0gYmVpbmdcbmRlYnVnZ2VkLiAgUHl0aG9uIHN0YXRlbWVudHMgY2FuIGFsc28gYmUgcHJlZml4ZWQgd2l0aCBhbiBleGNsYW1hdGlvblxucG9pbnQgKGBgIWBgKS4gIFRoaXMgaXMgYSBwb3dlcmZ1bCB3YXkgdG8gaW5zcGVjdCB0aGUgcHJvZ3JhbSBiZWluZ1xuZGVidWdnZWQ7IGl0IGlzIGV2ZW4gcG9zc2libGUgdG8gY2hhbmdlIGEgdmFyaWFibGUgb3IgY2FsbCBhIGZ1bmN0aW9uLlxuV2hlbiBhbiBleGNlcHRpb24gb2NjdXJzIGluIHN1Y2ggYSBzdGF0ZW1lbnQsIHRoZSBleGNlcHRpb24gbmFtZSBpc1xucHJpbnRlZCBidXQgdGhlIGRlYnVnZ2VyXCdzIHN0YXRlIGlzIG5vdCBjaGFuZ2VkLlxuXG5UaGUgZGVidWdnZXIgc3VwcG9ydHMgKmFsaWFzZXMqLiAgQWxpYXNlcyBjYW4gaGF2ZSBwYXJhbWV0ZXJzIHdoaWNoXG5hbGxvd3Mgb25lIGEgY2VydGFpbiBsZXZlbCBvZiBhZGFwdGFiaWxpdHkgdG8gdGhlIGNvbnRleHQgdW5kZXJcbmV4YW1pbmF0aW9uLlxuXG5NdWx0aXBsZSBjb21tYW5kcyBtYXkgYmUgZW50ZXJlZCBvbiBhIHNpbmdsZSBsaW5lLCBzZXBhcmF0ZWQgYnlcbmBgOztgYC4gIChBIHNpbmdsZSBgYDtgYCBpcyBub3QgdXNlZCBhcyBpdCBpcyB0aGUgc2VwYXJhdG9yIGZvclxubXVsdGlwbGUgY29tbWFuZHMgaW4gYSBsaW5lIHRoYXQgaXMgcGFzc2VkIHRvIHRoZSBQeXRob24gcGFyc2VyLikgIE5vXG5pbnRlbGxpZ2VuY2UgaXMgYXBwbGllZCB0byBzZXBhcmF0aW5nIHRoZSBjb21tYW5kczsgdGhlIGlucHV0IGlzIHNwbGl0XG5hdCB0aGUgZmlyc3QgYGA7O2BgIHBhaXIsIGV2ZW4gaWYgaXQgaXMgaW4gdGhlIG1pZGRsZSBvZiBhIHF1b3RlZFxuc3RyaW5nLlxuXG5JZiBhIGZpbGUgYGAucGRicmNgYCBleGlzdHMgaW4gdGhlIHVzZXJcJ3MgaG9tZSBkaXJlY3Rvcnkgb3IgaW4gdGhlXG5jdXJyZW50IGRpcmVjdG9yeSwgaXQgaXMgcmVhZCBpbiBhbmQgZXhlY3V0ZWQgYXMgaWYgaXQgaGFkIGJlZW4gdHlwZWRcbmF0IHRoZSBkZWJ1Z2dlciBwcm9tcHQuICBUaGlzIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgZm9yIGFsaWFzZXMuICBJZlxuYm90aCBmaWxlcyBleGlzdCwgdGhlIG9uZSBpbiB0aGUgaG9tZSBkaXJlY3RvcnkgaXMgcmVhZCBmaXJzdCBhbmRcbmFsaWFzZXMgZGVmaW5lZCB0aGVyZSBjYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgbG9jYWwgZmlsZS5cblxuQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMjogYGAucGRicmNgYCBjYW4gbm93IGNvbnRhaW4gY29tbWFuZHMgdGhhdFxuY29udGludWUgZGVidWdnaW5nLCBzdWNoIGFzIGBgY29udGludWVgYCBvciBgYG5leHRgYC4gIFByZXZpb3VzbHksXG50aGVzZSBjb21tYW5kcyBoYWQgbm8gZWZmZWN0LlxuXG5oKGVscCkgW2NvbW1hbmRdXG5cbiAgIFdpdGhvdXQgYXJndW1lbnQsIHByaW50IHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBjb21tYW5kcy4gIFdpdGggYVxuICAgKmNvbW1hbmQqIGFzIGFyZ3VtZW50LCBwcmludCBoZWxwIGFib3V0IHRoYXQgY29tbWFuZC4gIGBgaGVscCBwZGJgYFxuICAgZGlzcGxheXMgdGhlIGZ1bGwgZG9jdW1lbnRhdGlvbiAodGhlIGRvY3N0cmluZyBvZiB0aGUgYGBwZGJgYFxuICAgbW9kdWxlKS4gIFNpbmNlIHRoZSAqY29tbWFuZCogYXJndW1lbnQgbXVzdCBiZSBhbiBpZGVudGlmaWVyLFxuICAgYGBoZWxwIGV4ZWNgYCBtdXN0IGJlIGVudGVyZWQgdG8gZ2V0IGhlbHAgb24gdGhlIGBgIWBgIGNvbW1hbmQuXG5cbncoaGVyZSlcblxuICAgUHJpbnQgYSBzdGFjayB0cmFjZSwgd2l0aCB0aGUgbW9zdCByZWNlbnQgZnJhbWUgYXQgdGhlIGJvdHRvbS4gIEFuXG4gICBhcnJvdyBpbmRpY2F0ZXMgdGhlIGN1cnJlbnQgZnJhbWUsIHdoaWNoIGRldGVybWluZXMgdGhlIGNvbnRleHQgb2ZcbiAgIG1vc3QgY29tbWFuZHMuXG5cbmQob3duKSBbY291bnRdXG5cbiAgIE1vdmUgdGhlIGN1cnJlbnQgZnJhbWUgKmNvdW50KiAoZGVmYXVsdCBvbmUpIGxldmVscyBkb3duIGluIHRoZVxuICAgc3RhY2sgdHJhY2UgKHRvIGEgbmV3ZXIgZnJhbWUpLlxuXG51KHApIFtjb3VudF1cblxuICAgTW92ZSB0aGUgY3VycmVudCBmcmFtZSAqY291bnQqIChkZWZhdWx0IG9uZSkgbGV2ZWxzIHVwIGluIHRoZSBzdGFja1xuICAgdHJhY2UgKHRvIGFuIG9sZGVyIGZyYW1lKS5cblxuYihyZWFrKSBbKFtmaWxlbmFtZTpdbGluZW5vIHwgZnVuY3Rpb24pIFssIGNvbmRpdGlvbl1dXG5cbiAgIFdpdGggYSAqbGluZW5vKiBhcmd1bWVudCwgc2V0IGEgYnJlYWsgdGhlcmUgaW4gdGhlIGN1cnJlbnQgZmlsZS5cbiAgIFdpdGggYSAqZnVuY3Rpb24qIGFyZ3VtZW50LCBzZXQgYSBicmVhayBhdCB0aGUgZmlyc3QgZXhlY3V0YWJsZVxuICAgc3RhdGVtZW50IHdpdGhpbiB0aGF0IGZ1bmN0aW9uLiAgVGhlIGxpbmUgbnVtYmVyIG1heSBiZSBwcmVmaXhlZFxuICAgd2l0aCBhIGZpbGVuYW1lIGFuZCBhIGNvbG9uLCB0byBzcGVjaWZ5IGEgYnJlYWtwb2ludCBpbiBhbm90aGVyXG4gICBmaWxlIChwcm9iYWJseSBvbmUgdGhhdCBoYXNuXCd0IGJlZW4gbG9hZGVkIHlldCkuICBUaGUgZmlsZSBpc1xuICAgc2VhcmNoZWQgb24gYGBzeXMucGF0aGBgLiAgTm90ZSB0aGF0IGVhY2ggYnJlYWtwb2ludCBpcyBhc3NpZ25lZCBhXG4gICBudW1iZXIgdG8gd2hpY2ggYWxsIHRoZSBvdGhlciBicmVha3BvaW50IGNvbW1hbmRzIHJlZmVyLlxuXG4gICBJZiBhIHNlY29uZCBhcmd1bWVudCBpcyBwcmVzZW50LCBpdCBpcyBhbiBleHByZXNzaW9uIHdoaWNoIG11c3RcbiAgIGV2YWx1YXRlIHRvIHRydWUgYmVmb3JlIHRoZSBicmVha3BvaW50IGlzIGhvbm9yZWQuXG5cbiAgIFdpdGhvdXQgYXJndW1lbnQsIGxpc3QgYWxsIGJyZWFrcywgaW5jbHVkaW5nIGZvciBlYWNoIGJyZWFrcG9pbnQsXG4gICB0aGUgbnVtYmVyIG9mIHRpbWVzIHRoYXQgYnJlYWtwb2ludCBoYXMgYmVlbiBoaXQsIHRoZSBjdXJyZW50XG4gICBpZ25vcmUgY291bnQsIGFuZCB0aGUgYXNzb2NpYXRlZCBjb25kaXRpb24gaWYgYW55LlxuXG50YnJlYWsgWyhbZmlsZW5hbWU6XWxpbmVubyB8IGZ1bmN0aW9uKSBbLCBjb25kaXRpb25dXVxuXG4gICBUZW1wb3JhcnkgYnJlYWtwb2ludCwgd2hpY2ggaXMgcmVtb3ZlZCBhdXRvbWF0aWNhbGx5IHdoZW4gaXQgaXNcbiAgIGZpcnN0IGhpdC4gVGhlIGFyZ3VtZW50cyBhcmUgdGhlIHNhbWUgYXMgZm9yIGBgYnJlYWtgYC5cblxuY2woZWFyKSBbZmlsZW5hbWU6bGluZW5vIHwgYnBudW1iZXIgW2JwbnVtYmVyIC4uLl1dXG5cbiAgIFdpdGggYSAqZmlsZW5hbWU6bGluZW5vKiBhcmd1bWVudCwgY2xlYXIgYWxsIHRoZSBicmVha3BvaW50cyBhdFxuICAgdGhpcyBsaW5lLiBXaXRoIGEgc3BhY2Ugc2VwYXJhdGVkIGxpc3Qgb2YgYnJlYWtwb2ludCBudW1iZXJzLCBjbGVhclxuICAgdGhvc2UgYnJlYWtwb2ludHMuIFdpdGhvdXQgYXJndW1lbnQsIGNsZWFyIGFsbCBicmVha3MgKGJ1dCBmaXJzdFxuICAgYXNrIGNvbmZpcm1hdGlvbikuXG5cbmRpc2FibGUgW2JwbnVtYmVyIFticG51bWJlciAuLi5dXVxuXG4gICBEaXNhYmxlIHRoZSBicmVha3BvaW50cyBnaXZlbiBhcyBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mXG4gICBicmVha3BvaW50IG51bWJlcnMuICBEaXNhYmxpbmcgYSBicmVha3BvaW50IG1lYW5zIGl0IGNhbm5vdCBjYXVzZVxuICAgdGhlIHByb2dyYW0gdG8gc3RvcCBleGVjdXRpb24sIGJ1dCB1bmxpa2UgY2xlYXJpbmcgYSBicmVha3BvaW50LCBpdFxuICAgcmVtYWlucyBpbiB0aGUgbGlzdCBvZiBicmVha3BvaW50cyBhbmQgY2FuIGJlIChyZS0pZW5hYmxlZC5cblxuZW5hYmxlIFticG51bWJlciBbYnBudW1iZXIgLi4uXV1cblxuICAgRW5hYmxlIHRoZSBicmVha3BvaW50cyBzcGVjaWZpZWQuXG5cbmlnbm9yZSBicG51bWJlciBbY291bnRdXG5cbiAgIFNldCB0aGUgaWdub3JlIGNvdW50IGZvciB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBudW1iZXIuICBJZiBjb3VudCBpc1xuICAgb21pdHRlZCwgdGhlIGlnbm9yZSBjb3VudCBpcyBzZXQgdG8gMC4gIEEgYnJlYWtwb2ludCBiZWNvbWVzIGFjdGl2ZVxuICAgd2hlbiB0aGUgaWdub3JlIGNvdW50IGlzIHplcm8uICBXaGVuIG5vbi16ZXJvLCB0aGUgY291bnQgaXNcbiAgIGRlY3JlbWVudGVkIGVhY2ggdGltZSB0aGUgYnJlYWtwb2ludCBpcyByZWFjaGVkIGFuZCB0aGUgYnJlYWtwb2ludFxuICAgaXMgbm90IGRpc2FibGVkIGFuZCBhbnkgYXNzb2NpYXRlZCBjb25kaXRpb24gZXZhbHVhdGVzIHRvIHRydWUuXG5cbmNvbmRpdGlvbiBicG51bWJlciBbY29uZGl0aW9uXVxuXG4gICBTZXQgYSBuZXcgKmNvbmRpdGlvbiogZm9yIHRoZSBicmVha3BvaW50LCBhbiBleHByZXNzaW9uIHdoaWNoIG11c3RcbiAgIGV2YWx1YXRlIHRvIHRydWUgYmVmb3JlIHRoZSBicmVha3BvaW50IGlzIGhvbm9yZWQuICBJZiAqY29uZGl0aW9uKlxuICAgaXMgYWJzZW50LCBhbnkgZXhpc3RpbmcgY29uZGl0aW9uIGlzIHJlbW92ZWQ7IGkuZS4sIHRoZSBicmVha3BvaW50XG4gICBpcyBtYWRlIHVuY29uZGl0aW9uYWwuXG5cbmNvbW1hbmRzIFticG51bWJlcl1cblxuICAgU3BlY2lmeSBhIGxpc3Qgb2YgY29tbWFuZHMgZm9yIGJyZWFrcG9pbnQgbnVtYmVyICpicG51bWJlciouICBUaGVcbiAgIGNvbW1hbmRzIHRoZW1zZWx2ZXMgYXBwZWFyIG9uIHRoZSBmb2xsb3dpbmcgbGluZXMuICBUeXBlIGEgbGluZVxuICAgY29udGFpbmluZyBqdXN0IGBgZW5kYGAgdG8gdGVybWluYXRlIHRoZSBjb21tYW5kcy4gQW4gZXhhbXBsZTpcblxuICAgICAgKFBkYikgY29tbWFuZHMgMVxuICAgICAgKGNvbSkgcHJpbnQgc29tZV92YXJpYWJsZVxuICAgICAgKGNvbSkgZW5kXG4gICAgICAoUGRiKVxuXG4gICBUbyByZW1vdmUgYWxsIGNvbW1hbmRzIGZyb20gYSBicmVha3BvaW50LCB0eXBlIGNvbW1hbmRzIGFuZCBmb2xsb3dcbiAgIGl0IGltbWVkaWF0ZWx5IHdpdGggYGBlbmRgYDsgdGhhdCBpcywgZ2l2ZSBubyBjb21tYW5kcy5cblxuICAgV2l0aCBubyAqYnBudW1iZXIqIGFyZ3VtZW50LCBjb21tYW5kcyByZWZlcnMgdG8gdGhlIGxhc3QgYnJlYWtwb2ludFxuICAgc2V0LlxuXG4gICBZb3UgY2FuIHVzZSBicmVha3BvaW50IGNvbW1hbmRzIHRvIHN0YXJ0IHlvdXIgcHJvZ3JhbSB1cCBhZ2Fpbi5cbiAgIFNpbXBseSB1c2UgdGhlIGNvbnRpbnVlIGNvbW1hbmQsIG9yIHN0ZXAsIG9yIGFueSBvdGhlciBjb21tYW5kIHRoYXRcbiAgIHJlc3VtZXMgZXhlY3V0aW9uLlxuXG4gICBTcGVjaWZ5aW5nIGFueSBjb21tYW5kIHJlc3VtaW5nIGV4ZWN1dGlvbiAoY3VycmVudGx5IGNvbnRpbnVlLFxuICAgc3RlcCwgbmV4dCwgcmV0dXJuLCBqdW1wLCBxdWl0IGFuZCB0aGVpciBhYmJyZXZpYXRpb25zKSB0ZXJtaW5hdGVzXG4gICB0aGUgY29tbWFuZCBsaXN0IChhcyBpZiB0aGF0IGNvbW1hbmQgd2FzIGltbWVkaWF0ZWx5IGZvbGxvd2VkIGJ5XG4gICBlbmQpLiBUaGlzIGlzIGJlY2F1c2UgYW55IHRpbWUgeW91IHJlc3VtZSBleGVjdXRpb24gKGV2ZW4gd2l0aCBhXG4gICBzaW1wbGUgbmV4dCBvciBzdGVwKSwgeW91IG1heSBlbmNvdW50ZXIgYW5vdGhlciBicmVha3BvaW50LS13aGljaFxuICAgY291bGQgaGF2ZSBpdHMgb3duIGNvbW1hbmQgbGlzdCwgbGVhZGluZyB0byBhbWJpZ3VpdGllcyBhYm91dCB3aGljaFxuICAgbGlzdCB0byBleGVjdXRlLlxuXG4gICBJZiB5b3UgdXNlIHRoZSBcJ3NpbGVudFwnIGNvbW1hbmQgaW4gdGhlIGNvbW1hbmQgbGlzdCwgdGhlIHVzdWFsXG4gICBtZXNzYWdlIGFib3V0IHN0b3BwaW5nIGF0IGEgYnJlYWtwb2ludCBpcyBub3QgcHJpbnRlZC4gIFRoaXMgbWF5IGJlXG4gICBkZXNpcmFibGUgZm9yIGJyZWFrcG9pbnRzIHRoYXQgYXJlIHRvIHByaW50IGEgc3BlY2lmaWMgbWVzc2FnZSBhbmRcbiAgIHRoZW4gY29udGludWUuICBJZiBub25lIG9mIHRoZSBvdGhlciBjb21tYW5kcyBwcmludCBhbnl0aGluZywgeW91XG4gICBzZWUgbm8gc2lnbiB0aGF0IHRoZSBicmVha3BvaW50IHdhcyByZWFjaGVkLlxuXG5zKHRlcClcblxuICAgRXhlY3V0ZSB0aGUgY3VycmVudCBsaW5lLCBzdG9wIGF0IHRoZSBmaXJzdCBwb3NzaWJsZSBvY2Nhc2lvblxuICAgKGVpdGhlciBpbiBhIGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkIG9yIG9uIHRoZSBuZXh0IGxpbmUgaW4gdGhlXG4gICBjdXJyZW50IGZ1bmN0aW9uKS5cblxubihleHQpXG5cbiAgIENvbnRpbnVlIGV4ZWN1dGlvbiB1bnRpbCB0aGUgbmV4dCBsaW5lIGluIHRoZSBjdXJyZW50IGZ1bmN0aW9uIGlzXG4gICByZWFjaGVkIG9yIGl0IHJldHVybnMuICAoVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBgYG5leHRgYCBhbmRcbiAgIGBgc3RlcGBgIGlzIHRoYXQgYGBzdGVwYGAgc3RvcHMgaW5zaWRlIGEgY2FsbGVkIGZ1bmN0aW9uLCB3aGlsZVxuICAgYGBuZXh0YGAgZXhlY3V0ZXMgY2FsbGVkIGZ1bmN0aW9ucyBhdCAobmVhcmx5KSBmdWxsIHNwZWVkLCBvbmx5XG4gICBzdG9wcGluZyBhdCB0aGUgbmV4dCBsaW5lIGluIHRoZSBjdXJyZW50IGZ1bmN0aW9uLilcblxudW50KGlsKSBbbGluZW5vXVxuXG4gICBXaXRob3V0IGFyZ3VtZW50LCBjb250aW51ZSBleGVjdXRpb24gdW50aWwgdGhlIGxpbmUgd2l0aCBhIG51bWJlclxuICAgZ3JlYXRlciB0aGFuIHRoZSBjdXJyZW50IG9uZSBpcyByZWFjaGVkLlxuXG4gICBXaXRoIGEgbGluZSBudW1iZXIsIGNvbnRpbnVlIGV4ZWN1dGlvbiB1bnRpbCBhIGxpbmUgd2l0aCBhIG51bWJlclxuICAgZ3JlYXRlciBvciBlcXVhbCB0byB0aGF0IGlzIHJlYWNoZWQuICBJbiBib3RoIGNhc2VzLCBhbHNvIHN0b3Agd2hlblxuICAgdGhlIGN1cnJlbnQgZnJhbWUgcmV0dXJucy5cblxuICAgQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMjogQWxsb3cgZ2l2aW5nIGFuIGV4cGxpY2l0IGxpbmUgbnVtYmVyLlxuXG5yKGV0dXJuKVxuXG4gICBDb250aW51ZSBleGVjdXRpb24gdW50aWwgdGhlIGN1cnJlbnQgZnVuY3Rpb24gcmV0dXJucy5cblxuYyhvbnQoaW51ZSkpXG5cbiAgIENvbnRpbnVlIGV4ZWN1dGlvbiwgb25seSBzdG9wIHdoZW4gYSBicmVha3BvaW50IGlzIGVuY291bnRlcmVkLlxuXG5qKHVtcCkgbGluZW5vXG5cbiAgIFNldCB0aGUgbmV4dCBsaW5lIHRoYXQgd2lsbCBiZSBleGVjdXRlZC4gIE9ubHkgYXZhaWxhYmxlIGluIHRoZVxuICAgYm90dG9tLW1vc3QgZnJhbWUuICBUaGlzIGxldHMgeW91IGp1bXAgYmFjayBhbmQgZXhlY3V0ZSBjb2RlIGFnYWluLFxuICAgb3IganVtcCBmb3J3YXJkIHRvIHNraXAgY29kZSB0aGF0IHlvdSBkb25cJ3Qgd2FudCB0byBydW4uXG5cbiAgIEl0IHNob3VsZCBiZSBub3RlZCB0aGF0IG5vdCBhbGwganVtcHMgYXJlIGFsbG93ZWQgLS0gZm9yIGluc3RhbmNlXG4gICBpdCBpcyBub3QgcG9zc2libGUgdG8ganVtcCBpbnRvIHRoZSBtaWRkbGUgb2YgYSBgYGZvcmBgIGxvb3Agb3Igb3V0XG4gICBvZiBhIGBgZmluYWxseWBgIGNsYXVzZS5cblxubChpc3QpIFtmaXJzdFssIGxhc3RdXVxuXG4gICBMaXN0IHNvdXJjZSBjb2RlIGZvciB0aGUgY3VycmVudCBmaWxlLiAgV2l0aG91dCBhcmd1bWVudHMsIGxpc3QgMTFcbiAgIGxpbmVzIGFyb3VuZCB0aGUgY3VycmVudCBsaW5lIG9yIGNvbnRpbnVlIHRoZSBwcmV2aW91cyBsaXN0aW5nLlxuICAgV2l0aCBgYC5gYCBhcyBhcmd1bWVudCwgbGlzdCAxMSBsaW5lcyBhcm91bmQgdGhlIGN1cnJlbnQgbGluZS5cbiAgIFdpdGggb25lIGFyZ3VtZW50LCBsaXN0IDExIGxpbmVzIGFyb3VuZCBhdCB0aGF0IGxpbmUuICBXaXRoIHR3b1xuICAgYXJndW1lbnRzLCBsaXN0IHRoZSBnaXZlbiByYW5nZTsgaWYgdGhlIHNlY29uZCBhcmd1bWVudCBpcyBsZXNzXG4gICB0aGFuIHRoZSBmaXJzdCwgaXQgaXMgaW50ZXJwcmV0ZWQgYXMgYSBjb3VudC5cblxuICAgVGhlIGN1cnJlbnQgbGluZSBpbiB0aGUgY3VycmVudCBmcmFtZSBpcyBpbmRpY2F0ZWQgYnkgYGAtPmBgLiAgSWZcbiAgIGFuIGV4Y2VwdGlvbiBpcyBiZWluZyBkZWJ1Z2dlZCwgdGhlIGxpbmUgd2hlcmUgdGhlIGV4Y2VwdGlvbiB3YXNcbiAgIG9yaWdpbmFsbHkgcmFpc2VkIG9yIHByb3BhZ2F0ZWQgaXMgaW5kaWNhdGVkIGJ5IGBgPj5gYCwgaWYgaXRcbiAgIGRpZmZlcnMgZnJvbSB0aGUgY3VycmVudCBsaW5lLlxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjI6IFRoZSBgYD4+YGAgbWFya2VyLlxuXG5sbCB8IGxvbmdsaXN0XG5cbiAgIExpc3QgYWxsIHNvdXJjZSBjb2RlIGZvciB0aGUgY3VycmVudCBmdW5jdGlvbiBvciBmcmFtZS5cbiAgIEludGVyZXN0aW5nIGxpbmVzIGFyZSBtYXJrZWQgYXMgZm9yIGBgbGlzdGBgLlxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjIuXG5cbmEocmdzKVxuXG4gICBQcmludCB0aGUgYXJndW1lbnQgbGlzdCBvZiB0aGUgY3VycmVudCBmdW5jdGlvbi5cblxucChyaW50KSBleHByZXNzaW9uXG5cbiAgIEV2YWx1YXRlIHRoZSAqZXhwcmVzc2lvbiogaW4gdGhlIGN1cnJlbnQgY29udGV4dCBhbmQgcHJpbnQgaXRzXG4gICB2YWx1ZS5cblxucHAgZXhwcmVzc2lvblxuXG4gICBMaWtlIHRoZSBgYHByaW50YGAgY29tbWFuZCwgZXhjZXB0IHRoZSB2YWx1ZSBvZiB0aGUgZXhwcmVzc2lvbiBpc1xuICAgcHJldHR5LXByaW50ZWQgdXNpbmcgdGhlIGBgcHByaW50YGAgbW9kdWxlLlxuXG53aGF0aXMgZXhwcmVzc2lvblxuXG4gICBQcmludCB0aGUgdHlwZSBvZiB0aGUgKmV4cHJlc3Npb24qLlxuXG5zb3VyY2UgZXhwcmVzc2lvblxuXG4gICBUcnkgdG8gZ2V0IHNvdXJjZSBjb2RlIGZvciB0aGUgZ2l2ZW4gb2JqZWN0IGFuZCBkaXNwbGF5IGl0LlxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjIuXG5cbmRpc3BsYXkgW2V4cHJlc3Npb25dXG5cbiAgIERpc3BsYXkgdGhlIHZhbHVlIG9mIHRoZSBleHByZXNzaW9uIGlmIGl0IGNoYW5nZWQsIGVhY2ggdGltZVxuICAgZXhlY3V0aW9uIHN0b3BzIGluIHRoZSBjdXJyZW50IGZyYW1lLlxuXG4gICBXaXRob3V0IGV4cHJlc3Npb24sIGxpc3QgYWxsIGRpc3BsYXkgZXhwcmVzc2lvbnMgZm9yIHRoZSBjdXJyZW50XG4gICBmcmFtZS5cblxuICAgTmV3IGluIHZlcnNpb24gMy4yLlxuXG51bmRpc3BsYXkgW2V4cHJlc3Npb25dXG5cbiAgIERvIG5vdCBkaXNwbGF5IHRoZSBleHByZXNzaW9uIGFueSBtb3JlIGluIHRoZSBjdXJyZW50IGZyYW1lLlxuICAgV2l0aG91dCBleHByZXNzaW9uLCBjbGVhciBhbGwgZGlzcGxheSBleHByZXNzaW9ucyBmb3IgdGhlIGN1cnJlbnRcbiAgIGZyYW1lLlxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjIuXG5cbmludGVyYWN0XG5cbiAgIFN0YXJ0IGFuIGludGVyYXRpdmUgaW50ZXJwcmV0ZXIgKHVzaW5nIHRoZSBgYGNvZGVgYCBtb2R1bGUpIHdob3NlXG4gICBnbG9iYWwgbmFtZXNwYWNlIGNvbnRhaW5zIGFsbCB0aGUgKGdsb2JhbCBhbmQgbG9jYWwpIG5hbWVzIGZvdW5kIGluXG4gICB0aGUgY3VycmVudCBzY29wZS5cblxuICAgTmV3IGluIHZlcnNpb24gMy4yLlxuXG5hbGlhcyBbbmFtZSBbY29tbWFuZF1dXG5cbiAgIENyZWF0ZSBhbiBhbGlhcyBjYWxsZWQgKm5hbWUqIHRoYXQgZXhlY3V0ZXMgKmNvbW1hbmQqLiAgVGhlIGNvbW1hbmRcbiAgIG11c3QgKm5vdCogYmUgZW5jbG9zZWQgaW4gcXVvdGVzLiAgUmVwbGFjZWFibGUgcGFyYW1ldGVycyBjYW4gYmVcbiAgIGluZGljYXRlZCBieSBgYCUxYGAsIGBgJTJgYCwgYW5kIHNvIG9uLCB3aGlsZSBgYCUqYGAgaXMgcmVwbGFjZWQgYnlcbiAgIGFsbCB0aGUgcGFyYW1ldGVycy4gSWYgbm8gY29tbWFuZCBpcyBnaXZlbiwgdGhlIGN1cnJlbnQgYWxpYXMgZm9yXG4gICAqbmFtZSogaXMgc2hvd24uIElmIG5vIGFyZ3VtZW50cyBhcmUgZ2l2ZW4sIGFsbCBhbGlhc2VzIGFyZSBsaXN0ZWQuXG5cbiAgIEFsaWFzZXMgbWF5IGJlIG5lc3RlZCBhbmQgY2FuIGNvbnRhaW4gYW55dGhpbmcgdGhhdCBjYW4gYmUgbGVnYWxseVxuICAgdHlwZWQgYXQgdGhlIHBkYiBwcm9tcHQuICBOb3RlIHRoYXQgaW50ZXJuYWwgcGRiIGNvbW1hbmRzICpjYW4qIGJlXG4gICBvdmVycmlkZGVuIGJ5IGFsaWFzZXMuICBTdWNoIGEgY29tbWFuZCBpcyB0aGVuIGhpZGRlbiB1bnRpbCB0aGVcbiAgIGFsaWFzIGlzIHJlbW92ZWQuICBBbGlhc2luZyBpcyByZWN1cnNpdmVseSBhcHBsaWVkIHRvIHRoZSBmaXJzdFxuICAgd29yZCBvZiB0aGUgY29tbWFuZCBsaW5lOyBhbGwgb3RoZXIgd29yZHMgaW4gdGhlIGxpbmUgYXJlIGxlZnRcbiAgIGFsb25lLlxuXG4gICBBcyBhbiBleGFtcGxlLCBoZXJlIGFyZSB0d28gdXNlZnVsIGFsaWFzZXMgKGVzcGVjaWFsbHkgd2hlbiBwbGFjZWRcbiAgIGluIHRoZSBgYC5wZGJyY2BgIGZpbGUpOlxuXG4gICAgICAjIFByaW50IGluc3RhbmNlIHZhcmlhYmxlcyAodXNhZ2UgInBpIGNsYXNzSW5zdCIpXG4gICAgICBhbGlhcyBwaSBmb3IgayBpbiAlMS5fX2RpY3RfXy5rZXlzKCk6IHByaW50KCIlMS4iLGssIj0iLCUxLl9fZGljdF9fW2tdKVxuICAgICAgIyBQcmludCBpbnN0YW5jZSB2YXJpYWJsZXMgaW4gc2VsZlxuICAgICAgYWxpYXMgcHMgcGkgc2VsZlxuXG51bmFsaWFzIG5hbWVcblxuICAgRGVsZXRlIHRoZSBzcGVjaWZpZWQgYWxpYXMuXG5cbiEgc3RhdGVtZW50XG5cbiAgIEV4ZWN1dGUgdGhlIChvbmUtbGluZSkgKnN0YXRlbWVudCogaW4gdGhlIGNvbnRleHQgb2YgdGhlIGN1cnJlbnRcbiAgIHN0YWNrIGZyYW1lLiBUaGUgZXhjbGFtYXRpb24gcG9pbnQgY2FuIGJlIG9taXR0ZWQgdW5sZXNzIHRoZSBmaXJzdFxuICAgd29yZCBvZiB0aGUgc3RhdGVtZW50IHJlc2VtYmxlcyBhIGRlYnVnZ2VyIGNvbW1hbmQuICBUbyBzZXQgYVxuICAgZ2xvYmFsIHZhcmlhYmxlLCB5b3UgY2FuIHByZWZpeCB0aGUgYXNzaWdubWVudCBjb21tYW5kIHdpdGggYVxuICAgYGBnbG9iYWxgYCBzdGF0ZW1lbnQgb24gdGhlIHNhbWUgbGluZSwgZS5nLjpcblxuICAgICAgKFBkYikgZ2xvYmFsIGxpc3Rfb3B0aW9uczsgbGlzdF9vcHRpb25zID0gW1wnLWxcJ11cbiAgICAgIChQZGIpXG5cbnJ1biBbYXJncyAuLi5dXG5yZXN0YXJ0IFthcmdzIC4uLl1cblxuICAgUmVzdGFydCB0aGUgZGVidWdnZWQgUHl0aG9uIHByb2dyYW0uICBJZiBhbiBhcmd1bWVudCBpcyBzdXBwbGllZCxcbiAgIGl0IGlzIHNwbGl0IHdpdGggYGBzaGxleGBgIGFuZCB0aGUgcmVzdWx0IGlzIHVzZWQgYXMgdGhlIG5ld1xuICAgYGBzeXMuYXJndmBgLiBIaXN0b3J5LCBicmVha3BvaW50cywgYWN0aW9ucyBhbmQgZGVidWdnZXIgb3B0aW9uc1xuICAgYXJlIHByZXNlcnZlZC4gYGByZXN0YXJ0YGAgaXMgYW4gYWxpYXMgZm9yIGBgcnVuYGAuXG5cbnEodWl0KVxuXG4gICBRdWl0IGZyb20gdGhlIGRlYnVnZ2VyLiAgVGhlIHByb2dyYW0gYmVpbmcgZXhlY3V0ZWQgaXMgYWJvcnRlZC5cblxuLVsgRm9vdG5vdGVzIF0tXG5cblsxXSBXaGV0aGVyIGEgZnJhbWUgaXMgY29uc2lkZXJlZCB0byBvcmlnaW5hdGUgaW4gYSBjZXJ0YWluIG1vZHVsZSBpc1xuICAgIGRldGVybWluZWQgYnkgdGhlIGBgX19uYW1lX19gYCBpbiB0aGUgZnJhbWUgZ2xvYmFscy5cbicsCiAgJ2RlbCc6ICdcblRoZSBgYGRlbGBgIHN0YXRlbWVudFxuKioqKioqKioqKioqKioqKioqKioqXG5cbiAgIGRlbF9zdG10IDo6PSAiZGVsIiB0YXJnZXRfbGlzdFxuXG5EZWxldGlvbiBpcyByZWN1cnNpdmVseSBkZWZpbmVkIHZlcnkgc2ltaWxhciB0byB0aGUgd2F5IGFzc2lnbm1lbnQgaXNcbmRlZmluZWQuIFJhdGhlciB0aGFuIHNwZWxsaW5nIGl0IG91dCBpbiBmdWxsIGRldGFpbHMsIGhlcmUgYXJlIHNvbWVcbmhpbnRzLlxuXG5EZWxldGlvbiBvZiBhIHRhcmdldCBsaXN0IHJlY3Vyc2l2ZWx5IGRlbGV0ZXMgZWFjaCB0YXJnZXQsIGZyb20gbGVmdFxudG8gcmlnaHQuXG5cbkRlbGV0aW9uIG9mIGEgbmFtZSByZW1vdmVzIHRoZSBiaW5kaW5nIG9mIHRoYXQgbmFtZSBmcm9tIHRoZSBsb2NhbCBvclxuZ2xvYmFsIG5hbWVzcGFjZSwgZGVwZW5kaW5nIG9uIHdoZXRoZXIgdGhlIG5hbWUgb2NjdXJzIGluIGEgYGBnbG9iYWxgYFxuc3RhdGVtZW50IGluIHRoZSBzYW1lIGNvZGUgYmxvY2suICBJZiB0aGUgbmFtZSBpcyB1bmJvdW5kLCBhXG5gYE5hbWVFcnJvcmBgIGV4Y2VwdGlvbiB3aWxsIGJlIHJhaXNlZC5cblxuRGVsZXRpb24gb2YgYXR0cmlidXRlIHJlZmVyZW5jZXMsIHN1YnNjcmlwdGlvbnMgYW5kIHNsaWNpbmdzIGlzIHBhc3NlZFxudG8gdGhlIHByaW1hcnkgb2JqZWN0IGludm9sdmVkOyBkZWxldGlvbiBvZiBhIHNsaWNpbmcgaXMgaW4gZ2VuZXJhbFxuZXF1aXZhbGVudCB0byBhc3NpZ25tZW50IG9mIGFuIGVtcHR5IHNsaWNlIG9mIHRoZSByaWdodCB0eXBlIChidXQgZXZlblxudGhpcyBpcyBkZXRlcm1pbmVkIGJ5IHRoZSBzbGljZWQgb2JqZWN0KS5cblxuQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMi5cbicsCiAgJ2RpY3QnOiAnXG5EaWN0aW9uYXJ5IGRpc3BsYXlzXG4qKioqKioqKioqKioqKioqKioqXG5cbkEgZGljdGlvbmFyeSBkaXNwbGF5IGlzIGEgcG9zc2libHkgZW1wdHkgc2VyaWVzIG9mIGtleS9kYXR1bSBwYWlyc1xuZW5jbG9zZWQgaW4gY3VybHkgYnJhY2VzOlxuXG4gICBkaWN0X2Rpc3BsYXkgICAgICAgOjo9ICJ7IiBba2V5X2RhdHVtX2xpc3QgfCBkaWN0X2NvbXByZWhlbnNpb25dICJ9IlxuICAga2V5X2RhdHVtX2xpc3QgICAgIDo6PSBrZXlfZGF0dW0gKCIsIiBrZXlfZGF0dW0pKiBbIiwiXVxuICAga2V5X2RhdHVtICAgICAgICAgIDo6PSBleHByZXNzaW9uICI6IiBleHByZXNzaW9uXG4gICBkaWN0X2NvbXByZWhlbnNpb24gOjo9IGV4cHJlc3Npb24gIjoiIGV4cHJlc3Npb24gY29tcF9mb3JcblxuQSBkaWN0aW9uYXJ5IGRpc3BsYXkgeWllbGRzIGEgbmV3IGRpY3Rpb25hcnkgb2JqZWN0LlxuXG5JZiBhIGNvbW1hLXNlcGFyYXRlZCBzZXF1ZW5jZSBvZiBrZXkvZGF0dW0gcGFpcnMgaXMgZ2l2ZW4sIHRoZXkgYXJlXG5ldmFsdWF0ZWQgZnJvbSBsZWZ0IHRvIHJpZ2h0IHRvIGRlZmluZSB0aGUgZW50cmllcyBvZiB0aGUgZGljdGlvbmFyeTpcbmVhY2gga2V5IG9iamVjdCBpcyB1c2VkIGFzIGEga2V5IGludG8gdGhlIGRpY3Rpb25hcnkgdG8gc3RvcmUgdGhlXG5jb3JyZXNwb25kaW5nIGRhdHVtLiAgVGhpcyBtZWFucyB0aGF0IHlvdSBjYW4gc3BlY2lmeSB0aGUgc2FtZSBrZXlcbm11bHRpcGxlIHRpbWVzIGluIHRoZSBrZXkvZGF0dW0gbGlzdCwgYW5kIHRoZSBmaW5hbCBkaWN0aW9uYXJ5XCdzIHZhbHVlXG5mb3IgdGhhdCBrZXkgd2lsbCBiZSB0aGUgbGFzdCBvbmUgZ2l2ZW4uXG5cbkEgZGljdCBjb21wcmVoZW5zaW9uLCBpbiBjb250cmFzdCB0byBsaXN0IGFuZCBzZXQgY29tcHJlaGVuc2lvbnMsXG5uZWVkcyB0d28gZXhwcmVzc2lvbnMgc2VwYXJhdGVkIHdpdGggYSBjb2xvbiBmb2xsb3dlZCBieSB0aGUgdXN1YWxcbiJmb3IiIGFuZCAiaWYiIGNsYXVzZXMuIFdoZW4gdGhlIGNvbXByZWhlbnNpb24gaXMgcnVuLCB0aGUgcmVzdWx0aW5nXG5rZXkgYW5kIHZhbHVlIGVsZW1lbnRzIGFyZSBpbnNlcnRlZCBpbiB0aGUgbmV3IGRpY3Rpb25hcnkgaW4gdGhlIG9yZGVyXG50aGV5IGFyZSBwcm9kdWNlZC5cblxuUmVzdHJpY3Rpb25zIG9uIHRoZSB0eXBlcyBvZiB0aGUga2V5IHZhbHVlcyBhcmUgbGlzdGVkIGVhcmxpZXIgaW5cbnNlY3Rpb24gKlRoZSBzdGFuZGFyZCB0eXBlIGhpZXJhcmNoeSouICAoVG8gc3VtbWFyaXplLCB0aGUga2V5IHR5cGVcbnNob3VsZCBiZSAqaGFzaGFibGUqLCB3aGljaCBleGNsdWRlcyBhbGwgbXV0YWJsZSBvYmplY3RzLikgIENsYXNoZXNcbmJldHdlZW4gZHVwbGljYXRlIGtleXMgYXJlIG5vdCBkZXRlY3RlZDsgdGhlIGxhc3QgZGF0dW0gKHRleHR1YWxseVxucmlnaHRtb3N0IGluIHRoZSBkaXNwbGF5KSBzdG9yZWQgZm9yIGEgZ2l2ZW4ga2V5IHZhbHVlIHByZXZhaWxzLlxuJywKQEAgLTU0LDI1ICs1NSwyNSBAQAogICdwYXNzJzogJ1xuVGhlIGBgcGFzc2BgIHN0YXRlbWVudFxuKioqKioqKioqKioqKioqKioqKioqKlxuXG4gICBwYXNzX3N0bXQgOjo9ICJwYXNzIlxuXG5gYHBhc3NgYCBpcyBhIG51bGwgb3BlcmF0aW9uIC0tLSB3aGVuIGl0IGlzIGV4ZWN1dGVkLCBub3RoaW5nIGhhcHBlbnMuXG5JdCBpcyB1c2VmdWwgYXMgYSBwbGFjZWhvbGRlciB3aGVuIGEgc3RhdGVtZW50IGlzIHJlcXVpcmVkXG5zeW50YWN0aWNhbGx5LCBidXQgbm8gY29kZSBuZWVkcyB0byBiZSBleGVjdXRlZCwgZm9yIGV4YW1wbGU6XG5cbiAgIGRlZiBmKGFyZyk6IHBhc3MgICAgIyBhIGZ1bmN0aW9uIHRoYXQgZG9lcyBub3RoaW5nICh5ZXQpXG5cbiAgIGNsYXNzIEM6IHBhc3MgICAgICAgIyBhIGNsYXNzIHdpdGggbm8gbWV0aG9kcyAoeWV0KVxuJywKICAncG93ZXInOiAnXG5UaGUgcG93ZXIgb3BlcmF0b3JcbioqKioqKioqKioqKioqKioqKlxuXG5UaGUgcG93ZXIgb3BlcmF0b3IgYmluZHMgbW9yZSB0aWdodGx5IHRoYW4gdW5hcnkgb3BlcmF0b3JzIG9uIGl0c1xubGVmdDsgaXQgYmluZHMgbGVzcyB0aWdodGx5IHRoYW4gdW5hcnkgb3BlcmF0b3JzIG9uIGl0cyByaWdodC4gIFRoZVxuc3ludGF4IGlzOlxuXG4gICBwb3dlciA6Oj0gcHJpbWFyeSBbIioqIiB1X2V4cHJdXG5cblRodXMsIGluIGFuIHVucGFyZW50aGVzaXplZCBzZXF1ZW5jZSBvZiBwb3dlciBhbmQgdW5hcnkgb3BlcmF0b3JzLCB0aGVcbm9wZXJhdG9ycyBhcmUgZXZhbHVhdGVkIGZyb20gcmlnaHQgdG8gbGVmdCAodGhpcyBkb2VzIG5vdCBjb25zdHJhaW5cbnRoZSBldmFsdWF0aW9uIG9yZGVyIGZvciB0aGUgb3BlcmFuZHMpOiBgYC0xKioyYGAgcmVzdWx0cyBpbiBgYC0xYGAuXG5cblRoZSBwb3dlciBvcGVyYXRvciBoYXMgdGhlIHNhbWUgc2VtYW50aWNzIGFzIHRoZSBidWlsdC1pbiBgYHBvdygpYGBcbmZ1bmN0aW9uLCB3aGVuIGNhbGxlZCB3aXRoIHR3byBhcmd1bWVudHM6IGl0IHlpZWxkcyBpdHMgbGVmdCBhcmd1bWVudFxucmFpc2VkIHRvIHRoZSBwb3dlciBvZiBpdHMgcmlnaHQgYXJndW1lbnQuICBUaGUgbnVtZXJpYyBhcmd1bWVudHMgYXJlXG5maXJzdCBjb252ZXJ0ZWQgdG8gYSBjb21tb24gdHlwZSwgYW5kIHRoZSByZXN1bHQgaXMgb2YgdGhhdCB0eXBlLlxuXG5Gb3IgaW50IG9wZXJhbmRzLCB0aGUgcmVzdWx0IGhhcyB0aGUgc2FtZSB0eXBlIGFzIHRoZSBvcGVyYW5kcyB1bmxlc3NcbnRoZSBzZWNvbmQgYXJndW1lbnQgaXMgbmVnYXRpdmU7IGluIHRoYXQgY2FzZSwgYWxsIGFyZ3VtZW50cyBhcmVcbmNvbnZlcnRlZCB0byBmbG9hdCBhbmQgYSBmbG9hdCByZXN1bHQgaXMgZGVsaXZlcmVkLiBGb3IgZXhhbXBsZSxcbmBgMTAqKjJgYCByZXR1cm5zIGBgMTAwYGAsIGJ1dCBgYDEwKiotMmBgIHJldHVybnMgYGAwLjAxYGAuXG5cblJhaXNpbmcgYGAwLjBgYCB0byBhIG5lZ2F0aXZlIHBvd2VyIHJlc3VsdHMgaW4gYVxuYGBaZXJvRGl2aXNpb25FcnJvcmBgLiBSYWlzaW5nIGEgbmVnYXRpdmUgbnVtYmVyIHRvIGEgZnJhY3Rpb25hbCBwb3dlclxucmVzdWx0cyBpbiBhIGBgY29tcGxleGBgIG51bWJlci4gKEluIGVhcmxpZXIgdmVyc2lvbnMgaXQgcmFpc2VkIGFcbmBgVmFsdWVFcnJvcmBgLilcbicsCiAgJ3JhaXNlJzogJ1xuVGhlIGBgcmFpc2VgYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqXG5cbiAgIHJhaXNlX3N0bXQgOjo9ICJyYWlzZSIgW2V4cHJlc3Npb24gWyJmcm9tIiBleHByZXNzaW9uXV1cblxuSWYgbm8gZXhwcmVzc2lvbnMgYXJlIHByZXNlbnQsIGBgcmFpc2VgYCByZS1yYWlzZXMgdGhlIGxhc3QgZXhjZXB0aW9uXG50aGF0IHdhcyBhY3RpdmUgaW4gdGhlIGN1cnJlbnQgc2NvcGUuICBJZiBubyBleGNlcHRpb24gaXMgYWN0aXZlIGluXG50aGUgY3VycmVudCBzY29wZSwgYSBgYFJ1bnRpbWVFcnJvcmBgIGV4Y2VwdGlvbiBpcyByYWlzZWQgaW5kaWNhdGluZ1xudGhhdCB0aGlzIGlzIGFuIGVycm9yLlxuXG5PdGhlcndpc2UsIGBgcmFpc2VgYCBldmFsdWF0ZXMgdGhlIGZpcnN0IGV4cHJlc3Npb24gYXMgdGhlIGV4Y2VwdGlvblxub2JqZWN0LiAgSXQgbXVzdCBiZSBlaXRoZXIgYSBzdWJjbGFzcyBvciBhbiBpbnN0YW5jZSBvZlxuYGBCYXNlRXhjZXB0aW9uYGAuIElmIGl0IGlzIGEgY2xhc3MsIHRoZSBleGNlcHRpb24gaW5zdGFuY2Ugd2lsbCBiZVxub2J0YWluZWQgd2hlbiBuZWVkZWQgYnkgaW5zdGFudGlhdGluZyB0aGUgY2xhc3Mgd2l0aCBubyBhcmd1bWVudHMuXG5cblRoZSAqdHlwZSogb2YgdGhlIGV4Y2VwdGlvbiBpcyB0aGUgZXhjZXB0aW9uIGluc3RhbmNlXCdzIGNsYXNzLCB0aGVcbip2YWx1ZSogaXMgdGhlIGluc3RhbmNlIGl0c2VsZi5cblxuQSB0cmFjZWJhY2sgb2JqZWN0IGlzIG5vcm1hbGx5IGNyZWF0ZWQgYXV0b21hdGljYWxseSB3aGVuIGFuIGV4Y2VwdGlvblxuaXMgcmFpc2VkIGFuZCBhdHRhY2hlZCB0byBpdCBhcyB0aGUgYGBfX3RyYWNlYmFja19fYGAgYXR0cmlidXRlLCB3aGljaFxuaXMgd3JpdGFibGUuIFlvdSBjYW4gY3JlYXRlIGFuIGV4Y2VwdGlvbiBhbmQgc2V0IHlvdXIgb3duIHRyYWNlYmFjayBpblxub25lIHN0ZXAgdXNpbmcgdGhlIGBgd2l0aF90cmFjZWJhY2soKWBgIGV4Y2VwdGlvbiBtZXRob2QgKHdoaWNoXG5yZXR1cm5zIHRoZSBzYW1lIGV4Y2VwdGlvbiBpbnN0YW5jZSwgd2l0aCBpdHMgdHJhY2ViYWNrIHNldCB0byBpdHNcbmFyZ3VtZW50KSwgbGlrZSBzbzpcblxuICAgcmFpc2UgRXhjZXB0aW9uKCJmb28gb2NjdXJyZWQiKS53aXRoX3RyYWNlYmFjayh0cmFjZWJhY2tvYmopXG5cblRoZSBgYGZyb21gYCBjbGF1c2UgaXMgdXNlZCBmb3IgZXhjZXB0aW9uIGNoYWluaW5nOiBpZiBnaXZlbiwgdGhlXG5zZWNvbmQgKmV4cHJlc3Npb24qIG11c3QgYmUgYW5vdGhlciBleGNlcHRpb24gY2xhc3Mgb3IgaW5zdGFuY2UsIHdoaWNoXG53aWxsIHRoZW4gYmUgYXR0YWNoZWQgdG8gdGhlIHJhaXNlZCBleGNlcHRpb24gYXMgdGhlIGBgX19jYXVzZV9fYGBcbmF0dHJpYnV0ZSAod2hpY2ggaXMgd3JpdGFibGUpLiAgSWYgdGhlIHJhaXNlZCBleGNlcHRpb24gaXMgbm90XG5oYW5kbGVkLCBib3RoIGV4Y2VwdGlvbnMgd2lsbCBiZSBwcmludGVkOlxuXG4gICA+Pj4gdHJ5OlxuICAgLi4uICAgICBwcmludCgxIC8gMClcbiAgIC4uLiBleGNlcHQgRXhjZXB0aW9uIGFzIGV4YzpcbiAgIC4uLiAgICAgcmFpc2UgUnVudGltZUVycm9yKCJTb21ldGhpbmcgYmFkIGhhcHBlbmVkIikgZnJvbSBleGNcbiAgIC4uLlxuICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOlxuICAgICBGaWxlICI8c3RkaW4+IiwgbGluZSAyLCBpbiA8bW9kdWxlPlxuICAgWmVyb0RpdmlzaW9uRXJyb3I6IGludCBkaXZpc2lvbiBvciBtb2R1bG8gYnkgemVyb1xuXG4gICBUaGUgYWJvdmUgZXhjZXB0aW9uIHdhcyB0aGUgZGlyZWN0IGNhdXNlIG9mIHRoZSBmb2xsb3dpbmcgZXhjZXB0aW9uOlxuXG4gICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6XG4gICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDQsIGluIDxtb2R1bGU+XG4gICBSdW50aW1lRXJyb3I6IFNvbWV0aGluZyBiYWQgaGFwcGVuZWRcblxuQSBzaW1pbGFyIG1lY2hhbmlzbSB3b3JrcyBpbXBsaWNpdGx5IGlmIGFuIGV4Y2VwdGlvbiBpcyByYWlzZWQgaW5zaWRlXG5hbiBleGNlcHRpb24gaGFuZGxlcjogdGhlIHByZXZpb3VzIGV4Y2VwdGlvbiBpcyB0aGVuIGF0dGFjaGVkIGFzIHRoZVxubmV3IGV4Y2VwdGlvblwncyBgYF9fY29udGV4dF9fYGAgYXR0cmlidXRlOlxuXG4gICA+Pj4gdHJ5OlxuICAgLi4uICAgICBwcmludCgxIC8gMClcbiAgIC4uLiBleGNlcHQ6XG4gICAuLi4gICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiU29tZXRoaW5nIGJhZCBoYXBwZW5lZCIpXG4gICAuLi5cbiAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KTpcbiAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMiwgaW4gPG1vZHVsZT5cbiAgIFplcm9EaXZpc2lvbkVycm9yOiBpbnQgZGl2aXNpb24gb3IgbW9kdWxvIGJ5IHplcm9cblxuICAgRHVyaW5nIGhhbmRsaW5nIG9mIHRoZSBhYm92ZSBleGNlcHRpb24sIGFub3RoZXIgZXhjZXB0aW9uIG9jY3VycmVkOlxuXG4gICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6XG4gICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDQsIGluIDxtb2R1bGU+XG4gICBSdW50aW1lRXJyb3I6IFNvbWV0aGluZyBiYWQgaGFwcGVuZWRcblxuQWRkaXRpb25hbCBpbmZvcm1hdGlvbiBvbiBleGNlcHRpb25zIGNhbiBiZSBmb3VuZCBpbiBzZWN0aW9uXG4qRXhjZXB0aW9ucyosIGFuZCBpbmZvcm1hdGlvbiBhYm91dCBoYW5kbGluZyBleGNlcHRpb25zIGlzIGluIHNlY3Rpb25cbipUaGUgdHJ5IHN0YXRlbWVudCouXG4nLAotICdyZXR1cm4nOiAnXG5UaGUgYGByZXR1cm5gYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKlxuXG4gICByZXR1cm5fc3RtdCA6Oj0gInJldHVybiIgW2V4cHJlc3Npb25fbGlzdF1cblxuYGByZXR1cm5gYCBtYXkgb25seSBvY2N1ciBzeW50YWN0aWNhbGx5IG5lc3RlZCBpbiBhIGZ1bmN0aW9uXG5kZWZpbml0aW9uLCBub3Qgd2l0aGluIGEgbmVzdGVkIGNsYXNzIGRlZmluaXRpb24uXG5cbklmIGFuIGV4cHJlc3Npb24gbGlzdCBpcyBwcmVzZW50LCBpdCBpcyBldmFsdWF0ZWQsIGVsc2UgYGBOb25lYGAgaXNcbnN1YnN0aXR1dGVkLlxuXG5gYHJldHVybmBgIGxlYXZlcyB0aGUgY3VycmVudCBmdW5jdGlvbiBjYWxsIHdpdGggdGhlIGV4cHJlc3Npb24gbGlzdFxuKG9yIGBgTm9uZWBgKSBhcyByZXR1cm4gdmFsdWUuXG5cbldoZW4gYGByZXR1cm5gYCBwYXNzZXMgY29udHJvbCBvdXQgb2YgYSBgYHRyeWBgIHN0YXRlbWVudCB3aXRoIGFcbmBgZmluYWxseWBgIGNsYXVzZSwgdGhhdCBgYGZpbmFsbHlgYCBjbGF1c2UgaXMgZXhlY3V0ZWQgYmVmb3JlIHJlYWxseVxubGVhdmluZyB0aGUgZnVuY3Rpb24uXG5cbkluIGEgZ2VuZXJhdG9yIGZ1bmN0aW9uLCB0aGUgYGByZXR1cm5gYCBzdGF0ZW1lbnQgaXMgbm90IGFsbG93ZWQgdG9cbmluY2x1ZGUgYW4gYGBleHByZXNzaW9uX2xpc3RgYC4gIEluIHRoYXQgY29udGV4dCwgYSBiYXJlIGBgcmV0dXJuYGBcbmluZGljYXRlcyB0aGF0IHRoZSBnZW5lcmF0b3IgaXMgZG9uZSBhbmQgd2lsbCBjYXVzZSBgYFN0b3BJdGVyYXRpb25gYFxudG8gYmUgcmFpc2VkLlxuJywKKyAncmV0dXJuJzogJ1xuVGhlIGBgcmV0dXJuYGAgc3RhdGVtZW50XG4qKioqKioqKioqKioqKioqKioqKioqKipcblxuICAgcmV0dXJuX3N0bXQgOjo9ICJyZXR1cm4iIFtleHByZXNzaW9uX2xpc3RdXG5cbmBgcmV0dXJuYGAgbWF5IG9ubHkgb2NjdXIgc3ludGFjdGljYWxseSBuZXN0ZWQgaW4gYSBmdW5jdGlvblxuZGVmaW5pdGlvbiwgbm90IHdpdGhpbiBhIG5lc3RlZCBjbGFzcyBkZWZpbml0aW9uLlxuXG5JZiBhbiBleHByZXNzaW9uIGxpc3QgaXMgcHJlc2VudCwgaXQgaXMgZXZhbHVhdGVkLCBlbHNlIGBgTm9uZWBgIGlzXG5zdWJzdGl0dXRlZC5cblxuYGByZXR1cm5gYCBsZWF2ZXMgdGhlIGN1cnJlbnQgZnVuY3Rpb24gY2FsbCB3aXRoIHRoZSBleHByZXNzaW9uIGxpc3RcbihvciBgYE5vbmVgYCkgYXMgcmV0dXJuIHZhbHVlLlxuXG5XaGVuIGBgcmV0dXJuYGAgcGFzc2VzIGNvbnRyb2wgb3V0IG9mIGEgYGB0cnlgYCBzdGF0ZW1lbnQgd2l0aCBhXG5gYGZpbmFsbHlgYCBjbGF1c2UsIHRoYXQgYGBmaW5hbGx5YGAgY2xhdXNlIGlzIGV4ZWN1dGVkIGJlZm9yZSByZWFsbHlcbmxlYXZpbmcgdGhlIGZ1bmN0aW9uLlxuXG5JbiBhIGdlbmVyYXRvciBmdW5jdGlvbiwgdGhlIGBgcmV0dXJuYGAgc3RhdGVtZW50IGluZGljYXRlcyB0aGF0IHRoZVxuZ2VuZXJhdG9yIGlzIGRvbmUgYW5kIHdpbGwgY2F1c2UgYGBTdG9wSXRlcmF0aW9uYGAgdG8gYmUgcmFpc2VkLiBUaGVcbnJldHVybmVkIHZhbHVlIChpZiBhbnkpIGlzIHVzZWQgYXMgYW4gYXJndW1lbnQgdG8gY29uc3RydWN0XG5gYFN0b3BJdGVyYXRpb25gYCBhbmQgYmVjb21lcyB0aGUgYGBTdG9wSXRlcmF0aW9uLnZhbHVlYGAgYXR0cmlidXRlLlxuJywKICAnc2VxdWVuY2UtdHlwZXMnOiAiXG5FbXVsYXRpbmcgY29udGFpbmVyIHR5cGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqXG5cblRoZSBmb2xsb3dpbmcgbWV0aG9kcyBjYW4gYmUgZGVmaW5lZCB0byBpbXBsZW1lbnQgY29udGFpbmVyIG9iamVjdHMuXG5Db250YWluZXJzIHVzdWFsbHkgYXJlIHNlcXVlbmNlcyAoc3VjaCBhcyBsaXN0cyBvciB0dXBsZXMpIG9yIG1hcHBpbmdzXG4obGlrZSBkaWN0aW9uYXJpZXMpLCBidXQgY2FuIHJlcHJlc2VudCBvdGhlciBjb250YWluZXJzIGFzIHdlbGwuICBUaGVcbmZpcnN0IHNldCBvZiBtZXRob2RzIGlzIHVzZWQgZWl0aGVyIHRvIGVtdWxhdGUgYSBzZXF1ZW5jZSBvciB0b1xuZW11bGF0ZSBhIG1hcHBpbmc7IHRoZSBkaWZmZXJlbmNlIGlzIHRoYXQgZm9yIGEgc2VxdWVuY2UsIHRoZVxuYWxsb3dhYmxlIGtleXMgc2hvdWxkIGJlIHRoZSBpbnRlZ2VycyAqayogZm9yIHdoaWNoIGBgMCA8PSBrIDwgTmBgXG53aGVyZSAqTiogaXMgdGhlIGxlbmd0aCBvZiB0aGUgc2VxdWVuY2UsIG9yIHNsaWNlIG9iamVjdHMsIHdoaWNoXG5kZWZpbmUgYSByYW5nZSBvZiBpdGVtcy4gIEl0IGlzIGFsc28gcmVjb21tZW5kZWQgdGhhdCBtYXBwaW5ncyBwcm92aWRlXG50aGUgbWV0aG9kcyBgYGtleXMoKWBgLCBgYHZhbHVlcygpYGAsIGBgaXRlbXMoKWBgLCBgYGdldCgpYGAsXG5gYGNsZWFyKClgYCwgYGBzZXRkZWZhdWx0KClgYCwgYGBwb3AoKWBgLCBgYHBvcGl0ZW0oKWBgLCBgYGNvcHkoKWBgLFxuYW5kIGBgdXBkYXRlKClgYCBiZWhhdmluZyBzaW1pbGFyIHRvIHRob3NlIGZvciBQeXRob24ncyBzdGFuZGFyZFxuZGljdGlvbmFyeSBvYmplY3RzLiAgVGhlIGBgY29sbGVjdGlvbnNgYCBtb2R1bGUgcHJvdmlkZXMgYVxuYGBNdXRhYmxlTWFwcGluZ2BgIGFic3RyYWN0IGJhc2UgY2xhc3MgdG8gaGVscCBjcmVhdGUgdGhvc2UgbWV0aG9kc1xuZnJvbSBhIGJhc2Ugc2V0IG9mIGBgX19nZXRpdGVtX18oKWBgLCBgYF9fc2V0aXRlbV9fKClgYCxcbmBgX19kZWxpdGVtX18oKWBgLCBhbmQgYGBrZXlzKClgYC4gTXV0YWJsZSBzZXF1ZW5jZXMgc2hvdWxkIHByb3ZpZGVcbm1ldGhvZHMgYGBhcHBlbmQoKWBgLCBgYGNvdW50KClgYCwgYGBpbmRleCgpYGAsIGBgZXh0ZW5kKClgYCxcbmBgaW5zZXJ0KClgYCwgYGBwb3AoKWBgLCBgYHJlbW92ZSgpYGAsIGBgcmV2ZXJzZSgpYGAgYW5kIGBgc29ydCgpYGAsXG5saWtlIFB5dGhvbiBzdGFuZGFyZCBsaXN0IG9iamVjdHMuICBGaW5hbGx5LCBzZXF1ZW5jZSB0eXBlcyBzaG91bGRcbmltcGxlbWVudCBhZGRpdGlvbiAobWVhbmluZyBjb25jYXRlbmF0aW9uKSBhbmQgbXVsdGlwbGljYXRpb24gKG1lYW5pbmdcbnJlcGV0aXRpb24pIGJ5IGRlZmluaW5nIHRoZSBtZXRob2RzIGBgX19hZGRfXygpYGAsIGBgX19yYWRkX18oKWBgLFxuYGBfX2lhZGRfXygpYGAsIGBgX19tdWxfXygpYGAsIGBgX19ybXVsX18oKWBgIGFuZCBgYF9faW11bF9fKClgYFxuZGVzY3JpYmVkIGJlbG93OyB0aGV5IHNob3VsZCBub3QgZGVmaW5lIG90aGVyIG51bWVyaWNhbCBvcGVyYXRvcnMuICBJdFxuaXMgcmVjb21tZW5kZWQgdGhhdCBib3RoIG1hcHBpbmdzIGFuZCBzZXF1ZW5jZXMgaW1wbGVtZW50IHRoZVxuYGBfX2NvbnRhaW5zX18oKWBgIG1ldGhvZCB0byBhbGxvdyBlZmZpY2llbnQgdXNlIG9mIHRoZSBgYGluYGBcbm9wZXJhdG9yOyBmb3IgbWFwcGluZ3MsIGBgaW5gYCBzaG91bGQgc2VhcmNoIHRoZSBtYXBwaW5nJ3Mga2V5czsgZm9yXG5zZXF1ZW5jZXMsIGl0IHNob3VsZCBzZWFyY2ggdGhyb3VnaCB0aGUgdmFsdWVzLiAgSXQgaXMgZnVydGhlclxucmVjb21tZW5kZWQgdGhhdCBib3RoIG1hcHBpbmdzIGFuZCBzZXF1ZW5jZXMgaW1wbGVtZW50IHRoZVxuYGBfX2l0ZXJfXygpYGAgbWV0aG9kIHRvIGFsbG93IGVmZmljaWVudCBpdGVyYXRpb24gdGhyb3VnaCB0aGVcbmNvbnRhaW5lcjsgZm9yIG1hcHBpbmdzLCBgYF9faXRlcl9fKClgYCBzaG91bGQgYmUgdGhlIHNhbWUgYXNcbmBga2V5cygpYGA7IGZvciBzZXF1ZW5jZXMsIGl0IHNob3VsZCBpdGVyYXRlIHRocm91Z2ggdGhlIHZhbHVlcy5cblxub2JqZWN0Ll9fbGVuX18oc2VsZilcblxuICAgQ2FsbGVkIHRvIGltcGxlbWVudCB0aGUgYnVpbHQtaW4gZnVuY3Rpb24gYGBsZW4oKWBgLiAgU2hvdWxkIHJldHVyblxuICAgdGhlIGxlbmd0aCBvZiB0aGUgb2JqZWN0LCBhbiBpbnRlZ2VyIGBgPj1gYCAwLiAgQWxzbywgYW4gb2JqZWN0XG4gICB0aGF0IGRvZXNuJ3QgZGVmaW5lIGEgYGBfX2Jvb2xfXygpYGAgbWV0aG9kIGFuZCB3aG9zZSBgYF9fbGVuX18oKWBgXG4gICBtZXRob2QgcmV0dXJucyB6ZXJvIGlzIGNvbnNpZGVyZWQgdG8gYmUgZmFsc2UgaW4gYSBCb29sZWFuIGNvbnRleHQuXG5cbk5vdGU6IFNsaWNpbmcgaXMgZG9uZSBleGNsdXNpdmVseSB3aXRoIHRoZSBmb2xsb3dpbmcgdGhyZWUgbWV0aG9kcy4gIEFcbiAgY2FsbCBsaWtlXG5cbiAgICAgYVsxOjJdID0gYlxuXG4gIGlzIHRyYW5zbGF0ZWQgdG9cblxuICAgICBhW3NsaWNlKDEsIDIsIE5vbmUpXSA9IGJcblxuICBhbmQgc28gZm9ydGguICBNaXNzaW5nIHNsaWNlIGl0ZW1zIGFyZSBhbHdheXMgZmlsbGVkIGluIHdpdGhcbiAgYGBOb25lYGAuXG5cbm9iamVjdC5fX2dldGl0ZW1fXyhzZWxmLCBrZXkpXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgZXZhbHVhdGlvbiBvZiBgYHNlbGZba2V5XWBgLiBGb3Igc2VxdWVuY2VcbiAgIHR5cGVzLCB0aGUgYWNjZXB0ZWQga2V5cyBzaG91bGQgYmUgaW50ZWdlcnMgYW5kIHNsaWNlIG9iamVjdHMuXG4gICBOb3RlIHRoYXQgdGhlIHNwZWNpYWwgaW50ZXJwcmV0YXRpb24gb2YgbmVnYXRpdmUgaW5kZXhlcyAoaWYgdGhlXG4gICBjbGFzcyB3aXNoZXMgdG8gZW11bGF0ZSBhIHNlcXVlbmNlIHR5cGUpIGlzIHVwIHRvIHRoZVxuICAgYGBfX2dldGl0ZW1fXygpYGAgbWV0aG9kLiBJZiAqa2V5KiBpcyBvZiBhbiBpbmFwcHJvcHJpYXRlIHR5cGUsXG4gICBgYFR5cGVFcnJvcmBgIG1heSBiZSByYWlzZWQ7IGlmIG9mIGEgdmFsdWUgb3V0c2lkZSB0aGUgc2V0IG9mXG4gICBpbmRleGVzIGZvciB0aGUgc2VxdWVuY2UgKGFmdGVyIGFueSBzcGVjaWFsIGludGVycHJldGF0aW9uIG9mXG4gICBuZWdhdGl2ZSB2YWx1ZXMpLCBgYEluZGV4RXJyb3JgYCBzaG91bGQgYmUgcmFpc2VkLiBGb3IgbWFwcGluZ1xuICAgdHlwZXMsIGlmICprZXkqIGlzIG1pc3NpbmcgKG5vdCBpbiB0aGUgY29udGFpbmVyKSwgYGBLZXlFcnJvcmBgXG4gICBzaG91bGQgYmUgcmFpc2VkLlxuXG4gICBOb3RlOiBgYGZvcmBgIGxvb3BzIGV4cGVjdCB0aGF0IGFuIGBgSW5kZXhFcnJvcmBgIHdpbGwgYmUgcmFpc2VkIGZvclxuICAgICBpbGxlZ2FsIGluZGV4ZXMgdG8gYWxsb3cgcHJvcGVyIGRldGVjdGlvbiBvZiB0aGUgZW5kIG9mIHRoZVxuICAgICBzZXF1ZW5jZS5cblxub2JqZWN0Ll9fc2V0aXRlbV9fKHNlbGYsIGtleSwgdmFsdWUpXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgYXNzaWdubWVudCB0byBgYHNlbGZba2V5XWBgLiAgU2FtZSBub3RlIGFzIGZvclxuICAgYGBfX2dldGl0ZW1fXygpYGAuICBUaGlzIHNob3VsZCBvbmx5IGJlIGltcGxlbWVudGVkIGZvciBtYXBwaW5ncyBpZlxuICAgdGhlIG9iamVjdHMgc3VwcG9ydCBjaGFuZ2VzIHRvIHRoZSB2YWx1ZXMgZm9yIGtleXMsIG9yIGlmIG5ldyBrZXlzXG4gICBjYW4gYmUgYWRkZWQsIG9yIGZvciBzZXF1ZW5jZXMgaWYgZWxlbWVudHMgY2FuIGJlIHJlcGxhY2VkLiAgVGhlXG4gICBzYW1lIGV4Y2VwdGlvbnMgc2hvdWxkIGJlIHJhaXNlZCBmb3IgaW1wcm9wZXIgKmtleSogdmFsdWVzIGFzIGZvclxuICAgdGhlIGBgX19nZXRpdGVtX18oKWBgIG1ldGhvZC5cblxub2JqZWN0Ll9fZGVsaXRlbV9fKHNlbGYsIGtleSlcblxuICAgQ2FsbGVkIHRvIGltcGxlbWVudCBkZWxldGlvbiBvZiBgYHNlbGZba2V5XWBgLiAgU2FtZSBub3RlIGFzIGZvclxuICAgYGBfX2dldGl0ZW1fXygpYGAuICBUaGlzIHNob3VsZCBvbmx5IGJlIGltcGxlbWVudGVkIGZvciBtYXBwaW5ncyBpZlxuICAgdGhlIG9iamVjdHMgc3VwcG9ydCByZW1vdmFsIG9mIGtleXMsIG9yIGZvciBzZXF1ZW5jZXMgaWYgZWxlbWVudHNcbiAgIGNhbiBiZSByZW1vdmVkIGZyb20gdGhlIHNlcXVlbmNlLiAgVGhlIHNhbWUgZXhjZXB0aW9ucyBzaG91bGQgYmVcbiAgIHJhaXNlZCBmb3IgaW1wcm9wZXIgKmtleSogdmFsdWVzIGFzIGZvciB0aGUgYGBfX2dldGl0ZW1fXygpYGBcbiAgIG1ldGhvZC5cblxub2JqZWN0Ll9faXRlcl9fKHNlbGYpXG5cbiAgIFRoaXMgbWV0aG9kIGlzIGNhbGxlZCB3aGVuIGFuIGl0ZXJhdG9yIGlzIHJlcXVpcmVkIGZvciBhIGNvbnRhaW5lci5cbiAgIFRoaXMgbWV0aG9kIHNob3VsZCByZXR1cm4gYSBuZXcgaXRlcmF0b3Igb2JqZWN0IHRoYXQgY2FuIGl0ZXJhdGVcbiAgIG92ZXIgYWxsIHRoZSBvYmplY3RzIGluIHRoZSBjb250YWluZXIuICBGb3IgbWFwcGluZ3MsIGl0IHNob3VsZFxuICAgaXRlcmF0ZSBvdmVyIHRoZSBrZXlzIG9mIHRoZSBjb250YWluZXIsIGFuZCBzaG91bGQgYWxzbyBiZSBtYWRlXG4gICBhdmFpbGFibGUgYXMgdGhlIG1ldGhvZCBgYGtleXMoKWBgLlxuXG4gICBJdGVyYXRvciBvYmplY3RzIGFsc28gbmVlZCB0byBpbXBsZW1lbnQgdGhpcyBtZXRob2Q7IHRoZXkgYXJlXG4gICByZXF1aXJlZCB0byByZXR1cm4gdGhlbXNlbHZlcy4gIEZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGl0ZXJhdG9yXG4gICBvYmplY3RzLCBzZWUgKkl0ZXJhdG9yIFR5cGVzKi5cblxub2JqZWN0Ll9fcmV2ZXJzZWRfXyhzZWxmKVxuXG4gICBDYWxsZWQgKGlmIHByZXNlbnQpIGJ5IHRoZSBgYHJldmVyc2VkKClgYCBidWlsdC1pbiB0byBpbXBsZW1lbnRcbiAgIHJldmVyc2UgaXRlcmF0aW9uLiAgSXQgc2hvdWxkIHJldHVybiBhIG5ldyBpdGVyYXRvciBvYmplY3QgdGhhdFxuICAgaXRlcmF0ZXMgb3ZlciBhbGwgdGhlIG9iamVjdHMgaW4gdGhlIGNvbnRhaW5lciBpbiByZXZlcnNlIG9yZGVyLlxuXG4gICBJZiB0aGUgYGBfX3JldmVyc2VkX18oKWBgIG1ldGhvZCBpcyBub3QgcHJvdmlkZWQsIHRoZVxuICAgYGByZXZlcnNlZCgpYGAgYnVpbHQtaW4gd2lsbCBmYWxsIGJhY2sgdG8gdXNpbmcgdGhlIHNlcXVlbmNlXG4gICBwcm90b2NvbCAoYGBfX2xlbl9fKClgYCBhbmQgYGBfX2dldGl0ZW1fXygpYGApLiAgT2JqZWN0cyB0aGF0XG4gICBzdXBwb3J0IHRoZSBzZXF1ZW5jZSBwcm90b2NvbCBzaG91bGQgb25seSBwcm92aWRlXG4gICBgYF9fcmV2ZXJzZWRfXygpYGAgaWYgdGhleSBjYW4gcHJvdmlkZSBhbiBpbXBsZW1lbnRhdGlvbiB0aGF0IGlzXG4gICBtb3JlIGVmZmljaWVudCB0aGFuIHRoZSBvbmUgcHJvdmlkZWQgYnkgYGByZXZlcnNlZCgpYGAuXG5cblRoZSBtZW1iZXJzaGlwIHRlc3Qgb3BlcmF0b3JzIChgYGluYGAgYW5kIGBgbm90IGluYGApIGFyZSBub3JtYWxseVxuaW1wbGVtZW50ZWQgYXMgYW4gaXRlcmF0aW9uIHRocm91Z2ggYSBzZXF1ZW5jZS4gIEhvd2V2ZXIsIGNvbnRhaW5lclxub2JqZWN0cyBjYW4gc3VwcGx5IHRoZSBmb2xsb3dpbmcgc3BlY2lhbCBtZXRob2Qgd2l0aCBhIG1vcmUgZWZmaWNpZW50XG5pbXBsZW1lbnRhdGlvbiwgd2hpY2ggYWxzbyBkb2VzIG5vdCByZXF1aXJlIHRoZSBvYmplY3QgYmUgYSBzZXF1ZW5jZS5cblxub2JqZWN0Ll9fY29udGFpbnNfXyhzZWxmLCBpdGVtKVxuXG4gICBDYWxsZWQgdG8gaW1wbGVtZW50IG1lbWJlcnNoaXAgdGVzdCBvcGVyYXRvcnMuICBTaG91bGQgcmV0dXJuIHRydWVcbiAgIGlmICppdGVtKiBpcyBpbiAqc2VsZiosIGZhbHNlIG90aGVyd2lzZS4gIEZvciBtYXBwaW5nIG9iamVjdHMsIHRoaXNcbiAgIHNob3VsZCBjb25zaWRlciB0aGUga2V5cyBvZiB0aGUgbWFwcGluZyByYXRoZXIgdGhhbiB0aGUgdmFsdWVzIG9yXG4gICB0aGUga2V5LWl0ZW0gcGFpcnMuXG5cbiAgIEZvciBvYmplY3RzIHRoYXQgZG9uJ3QgZGVmaW5lIGBgX19jb250YWluc19fKClgYCwgdGhlIG1lbWJlcnNoaXBcbiAgIHRlc3QgZmlyc3QgdHJpZXMgaXRlcmF0aW9uIHZpYSBgYF9faXRlcl9fKClgYCwgdGhlbiB0aGUgb2xkXG4gICBzZXF1ZW5jZSBpdGVyYXRpb24gcHJvdG9jb2wgdmlhIGBgX19nZXRpdGVtX18oKWBgLCBzZWUgKnRoaXNcbiAgIHNlY3Rpb24gaW4gdGhlIGxhbmd1YWdlIHJlZmVyZW5jZSouXG4iLAogICdzaGlmdGluZyc6ICdcblNoaWZ0aW5nIG9wZXJhdGlvbnNcbioqKioqKioqKioqKioqKioqKipcblxuVGhlIHNoaWZ0aW5nIG9wZXJhdGlvbnMgaGF2ZSBsb3dlciBwcmlvcml0eSB0aGFuIHRoZSBhcml0aG1ldGljXG5vcGVyYXRpb25zOlxuXG4gICBzaGlmdF9leHByIDo6PSBhX2V4cHIgfCBzaGlmdF9leHByICggIjw8IiB8ICI+PiIgKSBhX2V4cHJcblxuVGhlc2Ugb3BlcmF0b3JzIGFjY2VwdCBpbnRlZ2VycyBhcyBhcmd1bWVudHMuICBUaGV5IHNoaWZ0IHRoZSBmaXJzdFxuYXJndW1lbnQgdG8gdGhlIGxlZnQgb3IgcmlnaHQgYnkgdGhlIG51bWJlciBvZiBiaXRzIGdpdmVuIGJ5IHRoZVxuc2Vjb25kIGFyZ3VtZW50LlxuXG5BIHJpZ2h0IHNoaWZ0IGJ5ICpuKiBiaXRzIGlzIGRlZmluZWQgYXMgZGl2aXNpb24gYnkgYGBwb3coMixuKWBgLiAgQVxubGVmdCBzaGlmdCBieSAqbiogYml0cyBpcyBkZWZpbmVkIGFzIG11bHRpcGxpY2F0aW9uIHdpdGggYGBwb3coMixuKWBgLlxuXG5Ob3RlOiBJbiB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiwgdGhlIHJpZ2h0LWhhbmQgb3BlcmFuZCBpcyByZXF1aXJlZCB0b1xuICBiZSBhdCBtb3N0IGBgc3lzLm1heHNpemVgYC4gIElmIHRoZSByaWdodC1oYW5kIG9wZXJhbmQgaXMgbGFyZ2VyXG4gIHRoYW4gYGBzeXMubWF4c2l6ZWBgIGFuIGBgT3ZlcmZsb3dFcnJvcmBgIGV4Y2VwdGlvbiBpcyByYWlzZWQuXG4nLAogICdzbGljaW5ncyc6ICdcblNsaWNpbmdzXG4qKioqKioqKlxuXG5BIHNsaWNpbmcgc2VsZWN0cyBhIHJhbmdlIG9mIGl0ZW1zIGluIGEgc2VxdWVuY2Ugb2JqZWN0IChlLmcuLCBhXG5zdHJpbmcsIHR1cGxlIG9yIGxpc3QpLiAgU2xpY2luZ3MgbWF5IGJlIHVzZWQgYXMgZXhwcmVzc2lvbnMgb3IgYXNcbnRhcmdldHMgaW4gYXNzaWdubWVudCBvciBgYGRlbGBgIHN0YXRlbWVudHMuICBUaGUgc3ludGF4IGZvciBhXG5zbGljaW5nOlxuXG4gICBzbGljaW5nICAgICAgOjo9IHByaW1hcnkgIlsiIHNsaWNlX2xpc3QgIl0iXG4gICBzbGljZV9saXN0ICAgOjo9IHNsaWNlX2l0ZW0gKCIsIiBzbGljZV9pdGVtKSogWyIsIl1cbiAgIHNsaWNlX2l0ZW0gICA6Oj0gZXhwcmVzc2lvbiB8IHByb3Blcl9zbGljZVxuICAgcHJvcGVyX3NsaWNlIDo6PSBbbG93ZXJfYm91bmRdICI6IiBbdXBwZXJfYm91bmRdIFsgIjoiIFtzdHJpZGVdIF1cbiAgIGxvd2VyX2JvdW5kICA6Oj0gZXhwcmVzc2lvblxuICAgdXBwZXJfYm91bmQgIDo6PSBleHByZXNzaW9uXG4gICBzdHJpZGUgICAgICAgOjo9IGV4cHJlc3Npb25cblxuVGhlcmUgaXMgYW1iaWd1aXR5IGluIHRoZSBmb3JtYWwgc3ludGF4IGhlcmU6IGFueXRoaW5nIHRoYXQgbG9va3MgbGlrZVxuYW4gZXhwcmVzc2lvbiBsaXN0IGFsc28gbG9va3MgbGlrZSBhIHNsaWNlIGxpc3QsIHNvIGFueSBzdWJzY3JpcHRpb25cbmNhbiBiZSBpbnRlcnByZXRlZCBhcyBhIHNsaWNpbmcuICBSYXRoZXIgdGhhbiBmdXJ0aGVyIGNvbXBsaWNhdGluZyB0aGVcbnN5bnRheCwgdGhpcyBpcyBkaXNhbWJpZ3VhdGVkIGJ5IGRlZmluaW5nIHRoYXQgaW4gdGhpcyBjYXNlIHRoZVxuaW50ZXJwcmV0YXRpb24gYXMgYSBzdWJzY3JpcHRpb24gdGFrZXMgcHJpb3JpdHkgb3ZlciB0aGVcbmludGVycHJldGF0aW9uIGFzIGEgc2xpY2luZyAodGhpcyBpcyB0aGUgY2FzZSBpZiB0aGUgc2xpY2UgbGlzdFxuY29udGFpbnMgbm8gcHJvcGVyIHNsaWNlKS5cblxuVGhlIHNlbWFudGljcyBmb3IgYSBzbGljaW5nIGFyZSBhcyBmb2xsb3dzLiAgVGhlIHByaW1hcnkgbXVzdCBldmFsdWF0ZVxudG8gYSBtYXBwaW5nIG9iamVjdCwgYW5kIGl0IGlzIGluZGV4ZWQgKHVzaW5nIHRoZSBzYW1lXG5gYF9fZ2V0aXRlbV9fKClgYCBtZXRob2QgYXMgbm9ybWFsIHN1YnNjcmlwdGlvbikgd2l0aCBhIGtleSB0aGF0IGlzXG5jb25zdHJ1Y3RlZCBmcm9tIHRoZSBzbGljZSBsaXN0LCBhcyBmb2xsb3dzLiAgSWYgdGhlIHNsaWNlIGxpc3RcbmNvbnRhaW5zIGF0IGxlYXN0IG9uZSBjb21tYSwgdGhlIGtleSBpcyBhIHR1cGxlIGNvbnRhaW5pbmcgdGhlXG5jb252ZXJzaW9uIG9mIHRoZSBzbGljZSBpdGVtczsgb3RoZXJ3aXNlLCB0aGUgY29udmVyc2lvbiBvZiB0aGUgbG9uZVxuc2xpY2UgaXRlbSBpcyB0aGUga2V5LiAgVGhlIGNvbnZlcnNpb24gb2YgYSBzbGljZSBpdGVtIHRoYXQgaXMgYW5cbmV4cHJlc3Npb24gaXMgdGhhdCBleHByZXNzaW9uLiAgVGhlIGNvbnZlcnNpb24gb2YgYSBwcm9wZXIgc2xpY2UgaXMgYVxuc2xpY2Ugb2JqZWN0IChzZWUgc2VjdGlvbiAqVGhlIHN0YW5kYXJkIHR5cGUgaGllcmFyY2h5Kikgd2hvc2VcbmBgc3RhcnRgYCwgYGBzdG9wYGAgYW5kIGBgc3RlcGBgIGF0dHJpYnV0ZXMgYXJlIHRoZSB2YWx1ZXMgb2YgdGhlXG5leHByZXNzaW9ucyBnaXZlbiBhcyBsb3dlciBib3VuZCwgdXBwZXIgYm91bmQgYW5kIHN0cmlkZSxcbnJlc3BlY3RpdmVseSwgc3Vic3RpdHV0aW5nIGBgTm9uZWBgIGZvciBtaXNzaW5nIGV4cHJlc3Npb25zLlxuJywKLSAnc3BlY2lhbGF0dHJzJzogJ1xuU3BlY2lhbCBBdHRyaWJ1dGVzXG4qKioqKioqKioqKioqKioqKipcblxuVGhlIGltcGxlbWVudGF0aW9uIGFkZHMgYSBmZXcgc3BlY2lhbCByZWFkLW9ubHkgYXR0cmlidXRlcyB0byBzZXZlcmFsXG5vYmplY3QgdHlwZXMsIHdoZXJlIHRoZXkgYXJlIHJlbGV2YW50LiAgU29tZSBvZiB0aGVzZSBhcmUgbm90IHJlcG9ydGVkXG5ieSB0aGUgYGBkaXIoKWBgIGJ1aWx0LWluIGZ1bmN0aW9uLlxuXG5vYmplY3QuX19kaWN0X19cblxuICAgQSBkaWN0aW9uYXJ5IG9yIG90aGVyIG1hcHBpbmcgb2JqZWN0IHVzZWQgdG8gc3RvcmUgYW4gb2JqZWN0XCdzXG4gICAod3JpdGFibGUpIGF0dHJpYnV0ZXMuXG5cbmluc3RhbmNlLl9fY2xhc3NfX1xuXG4gICBUaGUgY2xhc3MgdG8gd2hpY2ggYSBjbGFzcyBpbnN0YW5jZSBiZWxvbmdzLlxuXG5jbGFzcy5fX2Jhc2VzX19cblxuICAgVGhlIHR1cGxlIG9mIGJhc2UgY2xhc3NlcyBvZiBhIGNsYXNzIG9iamVjdC5cblxuY2xhc3MuX19uYW1lX19cblxuICAgVGhlIG5hbWUgb2YgdGhlIGNsYXNzIG9yIHR5cGUuXG5cbmNsYXNzLl9fbXJvX19cblxuICAgVGhpcyBhdHRyaWJ1dGUgaXMgYSB0dXBsZSBvZiBjbGFzc2VzIHRoYXQgYXJlIGNvbnNpZGVyZWQgd2hlblxuICAgbG9va2luZyBmb3IgYmFzZSBjbGFzc2VzIGR1cmluZyBtZXRob2QgcmVzb2x1dGlvbi5cblxuY2xhc3MubXJvKClcblxuICAgVGhpcyBtZXRob2QgY2FuIGJlIG92ZXJyaWRkZW4gYnkgYSBtZXRhY2xhc3MgdG8gY3VzdG9taXplIHRoZVxuICAgbWV0aG9kIHJlc29sdXRpb24gb3JkZXIgZm9yIGl0cyBpbnN0YW5jZXMuICBJdCBpcyBjYWxsZWQgYXQgY2xhc3NcbiAgIGluc3RhbnRpYXRpb24sIGFuZCBpdHMgcmVzdWx0IGlzIHN0b3JlZCBpbiBgYF9fbXJvX19gYC5cblxuY2xhc3MuX19zdWJjbGFzc2VzX18oKVxuXG4gICBFYWNoIGNsYXNzIGtlZXBzIGEgbGlzdCBvZiB3ZWFrIHJlZmVyZW5jZXMgdG8gaXRzIGltbWVkaWF0ZVxuICAgc3ViY2xhc3Nlcy4gIFRoaXMgbWV0aG9kIHJldHVybnMgYSBsaXN0IG9mIGFsbCB0aG9zZSByZWZlcmVuY2VzXG4gICBzdGlsbCBhbGl2ZS4gRXhhbXBsZTpcblxuICAgICAgPj4+IGludC5fX3N1YmNsYXNzZXNfXygpXG4gICAgICBbPGNsYXNzIFwnYm9vbFwnPl1cblxuLVsgRm9vdG5vdGVzIF0tXG5cblsxXSBBZGRpdGlvbmFsIGluZm9ybWF0aW9uIG9uIHRoZXNlIHNwZWNpYWwgbWV0aG9kcyBtYXkgYmUgZm91bmQgaW5cbiAgICB0aGUgUHl0aG9uIFJlZmVyZW5jZSBNYW51YWwgKCpCYXNpYyBjdXN0b21pemF0aW9uKikuXG5cblsyXSBBcyBhIGNvbnNlcXVlbmNlLCB0aGUgbGlzdCBgYFsxLCAyXWBgIGlzIGNvbnNpZGVyZWQgZXF1YWwgdG9cbiAgICBgYFsxLjAsIDIuMF1gYCwgYW5kIHNpbWlsYXJseSBmb3IgdHVwbGVzLlxuXG5bM10gVGhleSBtdXN0IGhhdmUgc2luY2UgdGhlIHBhcnNlciBjYW5cJ3QgdGVsbCB0aGUgdHlwZSBvZiB0aGVcbiAgICBvcGVyYW5kcy5cblxuWzRdIENhc2VkIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggZ2VuZXJhbCBjYXRlZ29yeSBwcm9wZXJ0eSBiZWluZ1xuICAgIG9uZSBvZiAiTHUiIChMZXR0ZXIsIHVwcGVyY2FzZSksICJMbCIgKExldHRlciwgbG93ZXJjYXNlKSwgb3IgIkx0IlxuICAgIChMZXR0ZXIsIHRpdGxlY2FzZSkuXG5cbls1XSBUbyBmb3JtYXQgb25seSBhIHR1cGxlIHlvdSBzaG91bGQgdGhlcmVmb3JlIHByb3ZpZGUgYSBzaW5nbGV0b25cbiAgICB0dXBsZSB3aG9zZSBvbmx5IGVsZW1lbnQgaXMgdGhlIHR1cGxlIHRvIGJlIGZvcm1hdHRlZC5cbicsCi0gJ3NwZWNpYWxuYW1lcyc6ICdcblNwZWNpYWwgbWV0aG9kIG5hbWVzXG4qKioqKioqKioqKioqKioqKioqKlxuXG5BIGNsYXNzIGNhbiBpbXBsZW1lbnQgY2VydGFpbiBvcGVyYXRpb25zIHRoYXQgYXJlIGludm9rZWQgYnkgc3BlY2lhbFxuc3ludGF4IChzdWNoIGFzIGFyaXRobWV0aWMgb3BlcmF0aW9ucyBvciBzdWJzY3JpcHRpbmcgYW5kIHNsaWNpbmcpIGJ5XG5kZWZpbmluZyBtZXRob2RzIHdpdGggc3BlY2lhbCBuYW1lcy4gVGhpcyBpcyBQeXRob25cJ3MgYXBwcm9hY2ggdG9cbipvcGVyYXRvciBvdmVybG9hZGluZyosIGFsbG93aW5nIGNsYXNzZXMgdG8gZGVmaW5lIHRoZWlyIG93biBiZWhhdmlvclxud2l0aCByZXNwZWN0IHRvIGxhbmd1YWdlIG9wZXJhdG9ycy4gIEZvciBpbnN0YW5jZSwgaWYgYSBjbGFzcyBkZWZpbmVzXG5hIG1ldGhvZCBuYW1lZCBgYF9fZ2V0aXRlbV9fKClgYCwgYW5kIGBgeGBgIGlzIGFuIGluc3RhbmNlIG9mIHRoaXNcbmNsYXNzLCB0aGVuIGBgeFtpXWBgIGlzIHJvdWdobHkgZXF1aXZhbGVudCB0byBgYHR5cGUoeCkuX19nZXRpdGVtX18oeCxcbmkpYGAuICBFeGNlcHQgd2hlcmUgbWVudGlvbmVkLCBhdHRlbXB0cyB0byBleGVjdXRlIGFuIG9wZXJhdGlvbiByYWlzZVxuYW4gZXhjZXB0aW9uIHdoZW4gbm8gYXBwcm9wcmlhdGUgbWV0aG9kIGlzIGRlZmluZWQgKHR5cGljYWxseVxuYGBBdHRyaWJ1dGVFcnJvcmBgIG9yIGBgVHlwZUVycm9yYGApLlxuXG5XaGVuIGltcGxlbWVudGluZyBhIGNsYXNzIHRoYXQgZW11bGF0ZXMgYW55IGJ1aWx0LWluIHR5cGUsIGl0IGlzXG5pbXBvcnRhbnQgdGhhdCB0aGUgZW11bGF0aW9uIG9ubHkgYmUgaW1wbGVtZW50ZWQgdG8gdGhlIGRlZ3JlZSB0aGF0IGl0XG5tYWtlcyBzZW5zZSBmb3IgdGhlIG9iamVjdCBiZWluZyBtb2RlbGxlZC4gIEZvciBleGFtcGxlLCBzb21lXG5zZXF1ZW5jZXMgbWF5IHdvcmsgd2VsbCB3aXRoIHJldHJpZXZhbCBvZiBpbmRpdmlkdWFsIGVsZW1lbnRzLCBidXRcbmV4dHJhY3RpbmcgYSBzbGljZSBtYXkgbm90IG1ha2Ugc2Vuc2UuICAoT25lIGV4YW1wbGUgb2YgdGhpcyBpcyB0aGVcbmBgTm9kZUxpc3RgYCBpbnRlcmZhY2UgaW4gdGhlIFczQ1wncyBEb2N1bWVudCBPYmplY3QgTW9kZWwuKVxuXG5cbkJhc2ljIGN1c3RvbWl6YXRpb25cbj09PT09PT09PT09PT09PT09PT1cblxub2JqZWN0Ll9fbmV3X18oY2xzWywgLi4uXSlcblxuICAgQ2FsbGVkIHRvIGNyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiBjbGFzcyAqY2xzKi4gIGBgX19uZXdfXygpYGAgaXMgYVxuICAgc3RhdGljIG1ldGhvZCAoc3BlY2lhbC1jYXNlZCBzbyB5b3UgbmVlZCBub3QgZGVjbGFyZSBpdCBhcyBzdWNoKVxuICAgdGhhdCB0YWtlcyB0aGUgY2xhc3Mgb2Ygd2hpY2ggYW4gaW5zdGFuY2Ugd2FzIHJlcXVlc3RlZCBhcyBpdHNcbiAgIGZpcnN0IGFyZ3VtZW50LiAgVGhlIHJlbWFpbmluZyBhcmd1bWVudHMgYXJlIHRob3NlIHBhc3NlZCB0byB0aGVcbiAgIG9iamVjdCBjb25zdHJ1Y3RvciBleHByZXNzaW9uICh0aGUgY2FsbCB0byB0aGUgY2xhc3MpLiAgVGhlIHJldHVyblxuICAgdmFsdWUgb2YgYGBfX25ld19fKClgYCBzaG91bGQgYmUgdGhlIG5ldyBvYmplY3QgaW5zdGFuY2UgKHVzdWFsbHlcbiAgIGFuIGluc3RhbmNlIG9mICpjbHMqKS5cblxuICAgVHlwaWNhbCBpbXBsZW1lbnRhdGlvbnMgY3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBjbGFzcyBieVxuICAgaW52b2tpbmcgdGhlIHN1cGVyY2xhc3NcJ3MgYGBfX25ld19fKClgYCBtZXRob2QgdXNpbmdcbiAgIGBgc3VwZXIoY3VycmVudGNsYXNzLCBjbHMpLl9fbmV3X18oY2xzWywgLi4uXSlgYCB3aXRoIGFwcHJvcHJpYXRlXG4gICBhcmd1bWVudHMgYW5kIHRoZW4gbW9kaWZ5aW5nIHRoZSBuZXdseS1jcmVhdGVkIGluc3RhbmNlIGFzXG4gICBuZWNlc3NhcnkgYmVmb3JlIHJldHVybmluZyBpdC5cblxuICAgSWYgYGBfX25ld19fKClgYCByZXR1cm5zIGFuIGluc3RhbmNlIG9mICpjbHMqLCB0aGVuIHRoZSBuZXdcbiAgIGluc3RhbmNlXCdzIGBgX19pbml0X18oKWBgIG1ldGhvZCB3aWxsIGJlIGludm9rZWQgbGlrZVxuICAgYGBfX2luaXRfXyhzZWxmWywgLi4uXSlgYCwgd2hlcmUgKnNlbGYqIGlzIHRoZSBuZXcgaW5zdGFuY2UgYW5kIHRoZVxuICAgcmVtYWluaW5nIGFyZ3VtZW50cyBhcmUgdGhlIHNhbWUgYXMgd2VyZSBwYXNzZWQgdG8gYGBfX25ld19fKClgYC5cblxuICAgSWYgYGBfX25ld19fKClgYCBkb2VzIG5vdCByZXR1cm4gYW4gaW5zdGFuY2Ugb2YgKmNscyosIHRoZW4gdGhlIG5ld1xuICAgaW5zdGFuY2VcJ3MgYGBfX2luaXRfXygpYGAgbWV0aG9kIHdpbGwgbm90IGJlIGludm9rZWQuXG5cbiAgIGBgX19uZXdfXygpYGAgaXMgaW50ZW5kZWQgbWFpbmx5IHRvIGFsbG93IHN1YmNsYXNzZXMgb2YgaW1tdXRhYmxlXG4gICB0eXBlcyAobGlrZSBpbnQsIHN0ciwgb3IgdHVwbGUpIHRvIGN1c3RvbWl6ZSBpbnN0YW5jZSBjcmVhdGlvbi4gIEl0XG4gICBpcyBhbHNvIGNvbW1vbmx5IG92ZXJyaWRkZW4gaW4gY3VzdG9tIG1ldGFjbGFzc2VzIGluIG9yZGVyIHRvXG4gICBjdXN0b21pemUgY2xhc3MgY3JlYXRpb24uXG5cbm9iamVjdC5fX2luaXRfXyhzZWxmWywgLi4uXSlcblxuICAgQ2FsbGVkIHdoZW4gdGhlIGluc3RhbmNlIGlzIGNyZWF0ZWQuICBUaGUgYXJndW1lbnRzIGFyZSB0aG9zZVxuICAgcGFzc2VkIHRvIHRoZSBjbGFzcyBjb25zdHJ1Y3RvciBleHByZXNzaW9uLiAgSWYgYSBiYXNlIGNsYXNzIGhhcyBhblxuICAgYGBfX2luaXRfXygpYGAgbWV0aG9kLCB0aGUgZGVyaXZlZCBjbGFzc1wncyBgYF9faW5pdF9fKClgYCBtZXRob2QsXG4gICBpZiBhbnksIG11c3QgZXhwbGljaXRseSBjYWxsIGl0IHRvIGVuc3VyZSBwcm9wZXIgaW5pdGlhbGl6YXRpb24gb2ZcbiAgIHRoZSBiYXNlIGNsYXNzIHBhcnQgb2YgdGhlIGluc3RhbmNlOyBmb3IgZXhhbXBsZTpcbiAgIGBgQmFzZUNsYXNzLl9faW5pdF9fKHNlbGYsIFthcmdzLi4uXSlgYC4gIEFzIGEgc3BlY2lhbCBjb25zdHJhaW50XG4gICBvbiBjb25zdHJ1Y3RvcnMsIG5vIHZhbHVlIG1heSBiZSByZXR1cm5lZDsgZG9pbmcgc28gd2lsbCBjYXVzZSBhXG4gICBgYFR5cGVFcnJvcmBgIHRvIGJlIHJhaXNlZCBhdCBydW50aW1lLlxuXG5vYmplY3QuX19kZWxfXyhzZWxmKVxuXG4gICBDYWxsZWQgd2hlbiB0aGUgaW5zdGFuY2UgaXMgYWJvdXQgdG8gYmUgZGVzdHJveWVkLiAgVGhpcyBpcyBhbHNvXG4gICBjYWxsZWQgYSBkZXN0cnVjdG9yLiAgSWYgYSBiYXNlIGNsYXNzIGhhcyBhIGBgX19kZWxfXygpYGAgbWV0aG9kLFxuICAgdGhlIGRlcml2ZWQgY2xhc3NcJ3MgYGBfX2RlbF9fKClgYCBtZXRob2QsIGlmIGFueSwgbXVzdCBleHBsaWNpdGx5XG4gICBjYWxsIGl0IHRvIGVuc3VyZSBwcm9wZXIgZGVsZXRpb24gb2YgdGhlIGJhc2UgY2xhc3MgcGFydCBvZiB0aGVcbiAgIGluc3RhbmNlLiAgTm90ZSB0aGF0IGl0IGlzIHBvc3NpYmxlICh0aG91Z2ggbm90IHJlY29tbWVuZGVkISkgZm9yXG4gICB0aGUgYGBfX2RlbF9fKClgYCBtZXRob2QgdG8gcG9zdHBvbmUgZGVzdHJ1Y3Rpb24gb2YgdGhlIGluc3RhbmNlIGJ5XG4gICBjcmVhdGluZyBhIG5ldyByZWZlcmVuY2UgdG8gaXQuICBJdCBtYXkgdGhlbiBiZSBjYWxsZWQgYXQgYSBsYXRlclxuICAgdGltZSB3aGVuIHRoaXMgbmV3IHJlZmVyZW5jZSBpcyBkZWxldGVkLiAgSXQgaXMgbm90IGd1YXJhbnRlZWQgdGhhdFxuICAgYGBfX2RlbF9fKClgYCBtZXRob2RzIGFyZSBjYWxsZWQgZm9yIG9iamVjdHMgdGhhdCBzdGlsbCBleGlzdCB3aGVuXG4gICB0aGUgaW50ZXJwcmV0ZXIgZXhpdHMuXG5cbiAgIE5vdGU6IGBgZGVsIHhgYCBkb2VzblwndCBkaXJlY3RseSBjYWxsIGBgeC5fX2RlbF9fKClgYCAtLS0gdGhlIGZvcm1lclxuICAgICBkZWNyZW1lbnRzIHRoZSByZWZlcmVuY2UgY291bnQgZm9yIGBgeGBgIGJ5IG9uZSwgYW5kIHRoZSBsYXR0ZXJcbiAgICAgaXMgb25seSBjYWxsZWQgd2hlbiBgYHhgYFwncyByZWZlcmVuY2UgY291bnQgcmVhY2hlcyB6ZXJvLiAgU29tZVxuICAgICBjb21tb24gc2l0dWF0aW9ucyB0aGF0IG1heSBwcmV2ZW50IHRoZSByZWZlcmVuY2UgY291bnQgb2YgYW5cbiAgICAgb2JqZWN0IGZyb20gZ29pbmcgdG8gemVybyBpbmNsdWRlOiBjaXJjdWxhciByZWZlcmVuY2VzIGJldHdlZW5cbiAgICAgb2JqZWN0cyAoZS5nLiwgYSBkb3VibHktbGlua2VkIGxpc3Qgb3IgYSB0cmVlIGRhdGEgc3RydWN0dXJlIHdpdGhcbiAgICAgcGFyZW50IGFuZCBjaGlsZCBwb2ludGVycyk7IGEgcmVmZXJlbmNlIHRvIHRoZSBvYmplY3Qgb24gdGhlXG4gICAgIHN0YWNrIGZyYW1lIG9mIGEgZnVuY3Rpb24gdGhhdCBjYXVnaHQgYW4gZXhjZXB0aW9uICh0aGUgdHJhY2ViYWNrXG4gICAgIHN0b3JlZCBpbiBgYHN5cy5leGNfaW5mbygpWzJdYGAga2VlcHMgdGhlIHN0YWNrIGZyYW1lIGFsaXZlKTsgb3JcbiAgICAgYSByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCBvbiB0aGUgc3RhY2sgZnJhbWUgdGhhdCByYWlzZWQgYW5cbiAgICAgdW5oYW5kbGVkIGV4Y2VwdGlvbiBpbiBpbnRlcmFjdGl2ZSBtb2RlICh0aGUgdHJhY2ViYWNrIHN0b3JlZCBpblxuICAgICBgYHN5cy5sYXN0X3RyYWNlYmFja2BgIGtlZXBzIHRoZSBzdGFjayBmcmFtZSBhbGl2ZSkuICBUaGUgZmlyc3RcbiAgICAgc2l0dWF0aW9uIGNhbiBvbmx5IGJlIHJlbWVkaWVkIGJ5IGV4cGxpY2l0bHkgYnJlYWtpbmcgdGhlIGN5Y2xlcztcbiAgICAgdGhlIGxhdHRlciB0d28gc2l0dWF0aW9ucyBjYW4gYmUgcmVzb2x2ZWQgYnkgc3RvcmluZyBgYE5vbmVgYCBpblxuICAgICBgYHN5cy5sYXN0X3RyYWNlYmFja2BgLiBDaXJjdWxhciByZWZlcmVuY2VzIHdoaWNoIGFyZSBnYXJiYWdlIGFyZVxuICAgICBkZXRlY3RlZCB3aGVuIHRoZSBvcHRpb24gY3ljbGUgZGV0ZWN0b3IgaXMgZW5hYmxlZCAoaXRcJ3Mgb24gYnlcbiAgICAgZGVmYXVsdCksIGJ1dCBjYW4gb25seSBiZSBjbGVhbmVkIHVwIGlmIHRoZXJlIGFyZSBubyBQeXRob24tXG4gICAgIGxldmVsIGBgX19kZWxfXygpYGAgbWV0aG9kcyBpbnZvbHZlZC4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb25cbiAgICAgZm9yIHRoZSBgYGdjYGAgbW9kdWxlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGhvd1xuICAgICBgYF9fZGVsX18oKWBgIG1ldGhvZHMgYXJlIGhhbmRsZWQgYnkgdGhlIGN5Y2xlIGRldGVjdG9yLFxuICAgICBwYXJ0aWN1bGFybHkgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBgYGdhcmJhZ2VgYCB2YWx1ZS5cblxuICAgV2FybmluZzogRHVlIHRvIHRoZSBwcmVjYXJpb3VzIGNpcmN1bXN0YW5jZXMgdW5kZXIgd2hpY2ggYGBfX2RlbF9fKClgYFxuICAgICBtZXRob2RzIGFyZSBpbnZva2VkLCBleGNlcHRpb25zIHRoYXQgb2NjdXIgZHVyaW5nIHRoZWlyIGV4ZWN1dGlvblxuICAgICBhcmUgaWdub3JlZCwgYW5kIGEgd2FybmluZyBpcyBwcmludGVkIHRvIGBgc3lzLnN0ZGVycmBgIGluc3RlYWQuXG4gICAgIEFsc28sIHdoZW4gYGBfX2RlbF9fKClgYCBpcyBpbnZva2VkIGluIHJlc3BvbnNlIHRvIGEgbW9kdWxlIGJlaW5nXG4gICAgIGRlbGV0ZWQgKGUuZy4sIHdoZW4gZXhlY3V0aW9uIG9mIHRoZSBwcm9ncmFtIGlzIGRvbmUpLCBvdGhlclxuICAgICBnbG9iYWxzIHJlZmVyZW5jZWQgYnkgdGhlIGBgX19kZWxfXygpYGAgbWV0aG9kIG1heSBhbHJlYWR5IGhhdmVcbiAgICAgYmVlbiBkZWxldGVkIG9yIGluIHRoZSBwcm9jZXNzIG9mIGJlaW5nIHRvcm4gZG93biAoZS5nLiB0aGVcbiAgICAgaW1wb3J0IG1hY2hpbmVyeSBzaHV0dGluZyBkb3duKS4gIEZvciB0aGlzIHJlYXNvbiwgYGBfX2RlbF9fKClgYFxuICAgICBtZXRob2RzIHNob3VsZCBkbyB0aGUgYWJzb2x1dGUgbWluaW11bSBuZWVkZWQgdG8gbWFpbnRhaW5cbiAgICAgZXh0ZXJuYWwgaW52YXJpYW50cy4gIFN0YXJ0aW5nIHdpdGggdmVyc2lvbiAxLjUsIFB5dGhvblxuICAgICBndWFyYW50ZWVzIHRoYXQgZ2xvYmFscyB3aG9zZSBuYW1lIGJlZ2lucyB3aXRoIGEgc2luZ2xlXG4gICAgIHVuZGVyc2NvcmUgYXJlIGRlbGV0ZWQgZnJvbSB0aGVpciBtb2R1bGUgYmVmb3JlIG90aGVyIGdsb2JhbHMgYXJlXG4gICAgIGRlbGV0ZWQ7IGlmIG5vIG90aGVyIHJlZmVyZW5jZXMgdG8gc3VjaCBnbG9iYWxzIGV4aXN0LCB0aGlzIG1heVxuICAgICBoZWxwIGluIGFzc3VyaW5nIHRoYXQgaW1wb3J0ZWQgbW9kdWxlcyBhcmUgc3RpbGwgYXZhaWxhYmxlIGF0IHRoZVxuICAgICB0aW1lIHdoZW4gdGhlIGBgX19kZWxfXygpYGAgbWV0aG9kIGlzIGNhbGxlZC5cblxub2JqZWN0Ll9fcmVwcl9fKHNlbGYpXG5cbiAgIENhbGxlZCBieSB0aGUgYGByZXByKClgYCBidWlsdC1pbiBmdW5jdGlvbiB0byBjb21wdXRlIHRoZVxuICAgIm9mZmljaWFsIiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYW4gb2JqZWN0LiAgSWYgYXQgYWxsIHBvc3NpYmxlLFxuICAgdGhpcyBzaG91bGQgbG9vayBsaWtlIGEgdmFsaWQgUHl0aG9uIGV4cHJlc3Npb24gdGhhdCBjb3VsZCBiZSB1c2VkXG4gICB0byByZWNyZWF0ZSBhbiBvYmplY3Qgd2l0aCB0aGUgc2FtZSB2YWx1ZSAoZ2l2ZW4gYW4gYXBwcm9wcmlhdGVcbiAgIGVudmlyb25tZW50KS4gIElmIHRoaXMgaXMgbm90IHBvc3NpYmxlLCBhIHN0cmluZyBvZiB0aGUgZm9ybVxuICAgYGA8Li4uc29tZSB1c2VmdWwgZGVzY3JpcHRpb24uLi4+YGAgc2hvdWxkIGJlIHJldHVybmVkLiBUaGUgcmV0dXJuXG4gICB2YWx1ZSBtdXN0IGJlIGEgc3RyaW5nIG9iamVjdC4gSWYgYSBjbGFzcyBkZWZpbmVzIGBgX19yZXByX18oKWBgXG4gICBidXQgbm90IGBgX19zdHJfXygpYGAsIHRoZW4gYGBfX3JlcHJfXygpYGAgaXMgYWxzbyB1c2VkIHdoZW4gYW5cbiAgICJpbmZvcm1hbCIgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGluc3RhbmNlcyBvZiB0aGF0IGNsYXNzIGlzXG4gICByZXF1aXJlZC5cblxuICAgVGhpcyBpcyB0eXBpY2FsbHkgdXNlZCBmb3IgZGVidWdnaW5nLCBzbyBpdCBpcyBpbXBvcnRhbnQgdGhhdCB0aGVcbiAgIHJlcHJlc2VudGF0aW9uIGlzIGluZm9ybWF0aW9uLXJpY2ggYW5kIHVuYW1iaWd1b3VzLlxuXG5vYmplY3QuX19zdHJfXyhzZWxmKVxuXG4gICBDYWxsZWQgYnkgdGhlIGBgc3RyKClgYCBidWlsdC1pbiBmdW5jdGlvbiBhbmQgYnkgdGhlIGBgcHJpbnQoKWBgXG4gICBmdW5jdGlvbiB0byBjb21wdXRlIHRoZSAiaW5mb3JtYWwiIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhblxuICAgb2JqZWN0LiAgVGhpcyBkaWZmZXJzIGZyb20gYGBfX3JlcHJfXygpYGAgaW4gdGhhdCBpdCBkb2VzIG5vdCBoYXZlXG4gICB0byBiZSBhIHZhbGlkIFB5dGhvbiBleHByZXNzaW9uOiBhIG1vcmUgY29udmVuaWVudCBvciBjb25jaXNlXG4gICByZXByZXNlbnRhdGlvbiBtYXkgYmUgdXNlZCBpbnN0ZWFkLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgYmUgYVxuICAgc3RyaW5nIG9iamVjdC5cblxub2JqZWN0Ll9fYnl0ZXNfXyhzZWxmKVxuXG4gICBDYWxsZWQgYnkgYGBieXRlcygpYGAgdG8gY29tcHV0ZSBhIGJ5dGUtc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuXG4gICBvYmplY3QuIFRoaXMgc2hvdWxkIHJldHVybiBhIGBgYnl0ZXNgYCBvYmplY3QuXG5cbm9iamVjdC5fX2Zvcm1hdF9fKHNlbGYsIGZvcm1hdF9zcGVjKVxuXG4gICBDYWxsZWQgYnkgdGhlIGBgZm9ybWF0KClgYCBidWlsdC1pbiBmdW5jdGlvbiAoYW5kIGJ5IGV4dGVuc2lvbiwgdGhlXG4gICBgYGZvcm1hdCgpYGAgbWV0aG9kIG9mIGNsYXNzIGBgc3RyYGApIHRvIHByb2R1Y2UgYSAiZm9ybWF0dGVkIlxuICAgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9iamVjdC4gVGhlIGBgZm9ybWF0X3NwZWNgYCBhcmd1bWVudCBpc1xuICAgYSBzdHJpbmcgdGhhdCBjb250YWlucyBhIGRlc2NyaXB0aW9uIG9mIHRoZSBmb3JtYXR0aW5nIG9wdGlvbnNcbiAgIGRlc2lyZWQuIFRoZSBpbnRlcnByZXRhdGlvbiBvZiB0aGUgYGBmb3JtYXRfc3BlY2BgIGFyZ3VtZW50IGlzIHVwXG4gICB0byB0aGUgdHlwZSBpbXBsZW1lbnRpbmcgYGBfX2Zvcm1hdF9fKClgYCwgaG93ZXZlciBtb3N0IGNsYXNzZXNcbiAgIHdpbGwgZWl0aGVyIGRlbGVnYXRlIGZvcm1hdHRpbmcgdG8gb25lIG9mIHRoZSBidWlsdC1pbiB0eXBlcywgb3JcbiAgIHVzZSBhIHNpbWlsYXIgZm9ybWF0dGluZyBvcHRpb24gc3ludGF4LlxuXG4gICBTZWUgKkZvcm1hdCBTcGVjaWZpY2F0aW9uIE1pbmktTGFuZ3VhZ2UqIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZVxuICAgc3RhbmRhcmQgZm9ybWF0dGluZyBzeW50YXguXG5cbiAgIFRoZSByZXR1cm4gdmFsdWUgbXVzdCBiZSBhIHN0cmluZyBvYmplY3QuXG5cbm9iamVjdC5fX2x0X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19sZV9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fZXFfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX25lX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19ndF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fZ2VfXyhzZWxmLCBvdGhlcilcblxuICAgVGhlc2UgYXJlIHRoZSBzby1jYWxsZWQgInJpY2ggY29tcGFyaXNvbiIgbWV0aG9kcy4gVGhlXG4gICBjb3JyZXNwb25kZW5jZSBiZXR3ZWVuIG9wZXJhdG9yIHN5bWJvbHMgYW5kIG1ldGhvZCBuYW1lcyBpcyBhc1xuICAgZm9sbG93czogYGB4PHlgYCBjYWxscyBgYHguX19sdF9fKHkpYGAsIGBgeDw9eWBgIGNhbGxzXG4gICBgYHguX19sZV9fKHkpYGAsIGBgeD09eWBgIGNhbGxzIGBgeC5fX2VxX18oeSlgYCwgYGB4IT15YGAgY2FsbHNcbiAgIGBgeC5fX25lX18oeSlgYCwgYGB4PnlgYCBjYWxscyBgYHguX19ndF9fKHkpYGAsIGFuZCBgYHg+PXlgYCBjYWxsc1xuICAgYGB4Ll9fZ2VfXyh5KWBgLlxuXG4gICBBIHJpY2ggY29tcGFyaXNvbiBtZXRob2QgbWF5IHJldHVybiB0aGUgc2luZ2xldG9uXG4gICBgYE5vdEltcGxlbWVudGVkYGAgaWYgaXQgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBvcGVyYXRpb24gZm9yIGFcbiAgIGdpdmVuIHBhaXIgb2YgYXJndW1lbnRzLiBCeSBjb252ZW50aW9uLCBgYEZhbHNlYGAgYW5kIGBgVHJ1ZWBgIGFyZVxuICAgcmV0dXJuZWQgZm9yIGEgc3VjY2Vzc2Z1bCBjb21wYXJpc29uLiBIb3dldmVyLCB0aGVzZSBtZXRob2RzIGNhblxuICAgcmV0dXJuIGFueSB2YWx1ZSwgc28gaWYgdGhlIGNvbXBhcmlzb24gb3BlcmF0b3IgaXMgdXNlZCBpbiBhXG4gICBCb29sZWFuIGNvbnRleHQgKGUuZy4sIGluIHRoZSBjb25kaXRpb24gb2YgYW4gYGBpZmBgIHN0YXRlbWVudCksXG4gICBQeXRob24gd2lsbCBjYWxsIGBgYm9vbCgpYGAgb24gdGhlIHZhbHVlIHRvIGRldGVybWluZSBpZiB0aGUgcmVzdWx0XG4gICBpcyB0cnVlIG9yIGZhbHNlLlxuXG4gICBUaGVyZSBhcmUgbm8gaW1wbGllZCByZWxhdGlvbnNoaXBzIGFtb25nIHRoZSBjb21wYXJpc29uIG9wZXJhdG9ycy5cbiAgIFRoZSB0cnV0aCBvZiBgYHg9PXlgYCBkb2VzIG5vdCBpbXBseSB0aGF0IGBgeCE9eWBgIGlzIGZhbHNlLlxuICAgQWNjb3JkaW5nbHksIHdoZW4gZGVmaW5pbmcgYGBfX2VxX18oKWBgLCBvbmUgc2hvdWxkIGFsc28gZGVmaW5lXG4gICBgYF9fbmVfXygpYGAgc28gdGhhdCB0aGUgb3BlcmF0b3JzIHdpbGwgYmVoYXZlIGFzIGV4cGVjdGVkLiAgU2VlXG4gICB0aGUgcGFyYWdyYXBoIG9uIGBgX19oYXNoX18oKWBgIGZvciBzb21lIGltcG9ydGFudCBub3RlcyBvblxuICAgY3JlYXRpbmcgKmhhc2hhYmxlKiBvYmplY3RzIHdoaWNoIHN1cHBvcnQgY3VzdG9tIGNvbXBhcmlzb25cbiAgIG9wZXJhdGlvbnMgYW5kIGFyZSB1c2FibGUgYXMgZGljdGlvbmFyeSBrZXlzLlxuXG4gICBUaGVyZSBhcmUgbm8gc3dhcHBlZC1hcmd1bWVudCB2ZXJzaW9ucyBvZiB0aGVzZSBtZXRob2RzICh0byBiZSB1c2VkXG4gICB3aGVuIHRoZSBsZWZ0IGFyZ3VtZW50IGRvZXMgbm90IHN1cHBvcnQgdGhlIG9wZXJhdGlvbiBidXQgdGhlIHJpZ2h0XG4gICBhcmd1bWVudCBkb2VzKTsgcmF0aGVyLCBgYF9fbHRfXygpYGAgYW5kIGBgX19ndF9fKClgYCBhcmUgZWFjaFxuICAgb3RoZXJcJ3MgcmVmbGVjdGlvbiwgYGBfX2xlX18oKWBgIGFuZCBgYF9fZ2VfXygpYGAgYXJlIGVhY2ggb3RoZXJcJ3NcbiAgIHJlZmxlY3Rpb24sIGFuZCBgYF9fZXFfXygpYGAgYW5kIGBgX19uZV9fKClgYCBhcmUgdGhlaXIgb3duXG4gICByZWZsZWN0aW9uLlxuXG4gICBBcmd1bWVudHMgdG8gcmljaCBjb21wYXJpc29uIG1ldGhvZHMgYXJlIG5ldmVyIGNvZXJjZWQuXG5cbiAgIFRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgb3JkZXJpbmcgb3BlcmF0aW9ucyBmcm9tIGEgc2luZ2xlIHJvb3RcbiAgIG9wZXJhdGlvbiwgc2VlIGBgZnVuY3Rvb2xzLnRvdGFsX29yZGVyaW5nKClgYC5cblxub2JqZWN0Ll9faGFzaF9fKHNlbGYpXG5cbiAgIENhbGxlZCBieSBidWlsdC1pbiBmdW5jdGlvbiBgYGhhc2goKWBgIGFuZCBmb3Igb3BlcmF0aW9ucyBvblxuICAgbWVtYmVycyBvZiBoYXNoZWQgY29sbGVjdGlvbnMgaW5jbHVkaW5nIGBgc2V0YGAsIGBgZnJvemVuc2V0YGAsIGFuZFxuICAgYGBkaWN0YGAuICBgYF9faGFzaF9fKClgYCBzaG91bGQgcmV0dXJuIGFuIGludGVnZXIuICBUaGUgb25seVxuICAgcmVxdWlyZWQgcHJvcGVydHkgaXMgdGhhdCBvYmplY3RzIHdoaWNoIGNvbXBhcmUgZXF1YWwgaGF2ZSB0aGUgc2FtZVxuICAgaGFzaCB2YWx1ZTsgaXQgaXMgYWR2aXNlZCB0byBzb21laG93IG1peCB0b2dldGhlciAoZS5nLiB1c2luZ1xuICAgZXhjbHVzaXZlIG9yKSB0aGUgaGFzaCB2YWx1ZXMgZm9yIHRoZSBjb21wb25lbnRzIG9mIHRoZSBvYmplY3QgdGhhdFxuICAgYWxzbyBwbGF5IGEgcGFydCBpbiBjb21wYXJpc29uIG9mIG9iamVjdHMuXG5cbiAgIElmIGEgY2xhc3MgZG9lcyBub3QgZGVmaW5lIGFuIGBgX19lcV9fKClgYCBtZXRob2QgaXQgc2hvdWxkIG5vdFxuICAgZGVmaW5lIGEgYGBfX2hhc2hfXygpYGAgb3BlcmF0aW9uIGVpdGhlcjsgaWYgaXQgZGVmaW5lc1xuICAgYGBfX2VxX18oKWBgIGJ1dCBub3QgYGBfX2hhc2hfXygpYGAsIGl0cyBpbnN0YW5jZXMgd2lsbCBub3QgYmVcbiAgIHVzYWJsZSBhcyBpdGVtcyBpbiBoYXNoYWJsZSBjb2xsZWN0aW9ucy4gIElmIGEgY2xhc3MgZGVmaW5lc1xuICAgbXV0YWJsZSBvYmplY3RzIGFuZCBpbXBsZW1lbnRzIGFuIGBgX19lcV9fKClgYCBtZXRob2QsIGl0IHNob3VsZFxuICAgbm90IGltcGxlbWVudCBgYF9faGFzaF9fKClgYCwgc2luY2UgdGhlIGltcGxlbWVudGF0aW9uIG9mIGhhc2hhYmxlXG4gICBjb2xsZWN0aW9ucyByZXF1aXJlcyB0aGF0IGEga2V5XCdzIGhhc2ggdmFsdWUgaXMgaW1tdXRhYmxlIChpZiB0aGVcbiAgIG9iamVjdFwncyBoYXNoIHZhbHVlIGNoYW5nZXMsIGl0IHdpbGwgYmUgaW4gdGhlIHdyb25nIGhhc2ggYnVja2V0KS5cblxuICAgVXNlci1kZWZpbmVkIGNsYXNzZXMgaGF2ZSBgYF9fZXFfXygpYGAgYW5kIGBgX19oYXNoX18oKWBgIG1ldGhvZHNcbiAgIGJ5IGRlZmF1bHQ7IHdpdGggdGhlbSwgYWxsIG9iamVjdHMgY29tcGFyZSB1bmVxdWFsIChleGNlcHQgd2l0aFxuICAgdGhlbXNlbHZlcykgYW5kIGBgeC5fX2hhc2hfXygpYGAgcmV0dXJucyBgYGlkKHgpYGAuXG5cbiAgIENsYXNzZXMgd2hpY2ggaW5oZXJpdCBhIGBgX19oYXNoX18oKWBgIG1ldGhvZCBmcm9tIGEgcGFyZW50IGNsYXNzXG4gICBidXQgY2hhbmdlIHRoZSBtZWFuaW5nIG9mIGBgX19lcV9fKClgYCBzdWNoIHRoYXQgdGhlIGhhc2ggdmFsdWVcbiAgIHJldHVybmVkIGlzIG5vIGxvbmdlciBhcHByb3ByaWF0ZSAoZS5nLiBieSBzd2l0Y2hpbmcgdG8gYSB2YWx1ZS1cbiAgIGJhc2VkIGNvbmNlcHQgb2YgZXF1YWxpdHkgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCBpZGVudGl0eSBiYXNlZFxuICAgZXF1YWxpdHkpIGNhbiBleHBsaWNpdGx5IGZsYWcgdGhlbXNlbHZlcyBhcyBiZWluZyB1bmhhc2hhYmxlIGJ5XG4gICBzZXR0aW5nIGBgX19oYXNoX18gPSBOb25lYGAgaW4gdGhlIGNsYXNzIGRlZmluaXRpb24uIERvaW5nIHNvIG1lYW5zXG4gICB0aGF0IG5vdCBvbmx5IHdpbGwgaW5zdGFuY2VzIG9mIHRoZSBjbGFzcyByYWlzZSBhbiBhcHByb3ByaWF0ZVxuICAgYGBUeXBlRXJyb3JgYCB3aGVuIGEgcHJvZ3JhbSBhdHRlbXB0cyB0byByZXRyaWV2ZSB0aGVpciBoYXNoIHZhbHVlLFxuICAgYnV0IHRoZXkgd2lsbCBhbHNvIGJlIGNvcnJlY3RseSBpZGVudGlmaWVkIGFzIHVuaGFzaGFibGUgd2hlblxuICAgY2hlY2tpbmcgYGBpc2luc3RhbmNlKG9iaiwgY29sbGVjdGlvbnMuSGFzaGFibGUpYGAgKHVubGlrZSBjbGFzc2VzXG4gICB3aGljaCBkZWZpbmUgdGhlaXIgb3duIGBgX19oYXNoX18oKWBgIHRvIGV4cGxpY2l0bHkgcmFpc2VcbiAgIGBgVHlwZUVycm9yYGApLlxuXG4gICBJZiBhIGNsYXNzIHRoYXQgb3ZlcnJpZGVzIGBgX19lcV9fKClgYCBuZWVkcyB0byByZXRhaW4gdGhlXG4gICBpbXBsZW1lbnRhdGlvbiBvZiBgYF9faGFzaF9fKClgYCBmcm9tIGEgcGFyZW50IGNsYXNzLCB0aGVcbiAgIGludGVycHJldGVyIG11c3QgYmUgdG9sZCB0aGlzIGV4cGxpY2l0bHkgYnkgc2V0dGluZyBgYF9faGFzaF9fID1cbiAgIDxQYXJlbnRDbGFzcz4uX19oYXNoX19gYC4gT3RoZXJ3aXNlIHRoZSBpbmhlcml0YW5jZSBvZlxuICAgYGBfX2hhc2hfXygpYGAgd2lsbCBiZSBibG9ja2VkLCBqdXN0IGFzIGlmIGBgX19oYXNoX19gYCBoYWQgYmVlblxuICAgZXhwbGljaXRseSBzZXQgdG8gYGBOb25lYGAuXG5cbiAgIFNlZSBhbHNvIHRoZSAqLVIqIGNvbW1hbmQtbGluZSBvcHRpb24uXG5cbm9iamVjdC5fX2Jvb2xfXyhzZWxmKVxuXG4gICBDYWxsZWQgdG8gaW1wbGVtZW50IHRydXRoIHZhbHVlIHRlc3RpbmcgYW5kIHRoZSBidWlsdC1pbiBvcGVyYXRpb25cbiAgIGBgYm9vbCgpYGA7IHNob3VsZCByZXR1cm4gYGBGYWxzZWBgIG9yIGBgVHJ1ZWBgLiAgV2hlbiB0aGlzIG1ldGhvZFxuICAgaXMgbm90IGRlZmluZWQsIGBgX19sZW5fXygpYGAgaXMgY2FsbGVkLCBpZiBpdCBpcyBkZWZpbmVkLCBhbmQgdGhlXG4gICBvYmplY3QgaXMgY29uc2lkZXJlZCB0cnVlIGlmIGl0cyByZXN1bHQgaXMgbm9uemVyby4gIElmIGEgY2xhc3NcbiAgIGRlZmluZXMgbmVpdGhlciBgYF9fbGVuX18oKWBgIG5vciBgYF9fYm9vbF9fKClgYCwgYWxsIGl0cyBpbnN0YW5jZXNcbiAgIGFyZSBjb25zaWRlcmVkIHRydWUuXG5cblxuQ3VzdG9taXppbmcgYXR0cmlidXRlIGFjY2Vzc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5UaGUgZm9sbG93aW5nIG1ldGhvZHMgY2FuIGJlIGRlZmluZWQgdG8gY3VzdG9taXplIHRoZSBtZWFuaW5nIG9mXG5hdHRyaWJ1dGUgYWNjZXNzICh1c2Ugb2YsIGFzc2lnbm1lbnQgdG8sIG9yIGRlbGV0aW9uIG9mIGBgeC5uYW1lYGApXG5mb3IgY2xhc3MgaW5zdGFuY2VzLlxuXG5vYmplY3QuX19nZXRhdHRyX18oc2VsZiwgbmFtZSlcblxuICAgQ2FsbGVkIHdoZW4gYW4gYXR0cmlidXRlIGxvb2t1cCBoYXMgbm90IGZvdW5kIHRoZSBhdHRyaWJ1dGUgaW4gdGhlXG4gICB1c3VhbCBwbGFjZXMgKGkuZS4gaXQgaXMgbm90IGFuIGluc3RhbmNlIGF0dHJpYnV0ZSBub3IgaXMgaXQgZm91bmRcbiAgIGluIHRoZSBjbGFzcyB0cmVlIGZvciBgYHNlbGZgYCkuICBgYG5hbWVgYCBpcyB0aGUgYXR0cmlidXRlIG5hbWUuXG4gICBUaGlzIG1ldGhvZCBzaG91bGQgcmV0dXJuIHRoZSAoY29tcHV0ZWQpIGF0dHJpYnV0ZSB2YWx1ZSBvciByYWlzZVxuICAgYW4gYGBBdHRyaWJ1dGVFcnJvcmBgIGV4Y2VwdGlvbi5cblxuICAgTm90ZSB0aGF0IGlmIHRoZSBhdHRyaWJ1dGUgaXMgZm91bmQgdGhyb3VnaCB0aGUgbm9ybWFsIG1lY2hhbmlzbSxcbiAgIGBgX19nZXRhdHRyX18oKWBgIGlzIG5vdCBjYWxsZWQuICAoVGhpcyBpcyBhbiBpbnRlbnRpb25hbCBhc3ltbWV0cnlcbiAgIGJldHdlZW4gYGBfX2dldGF0dHJfXygpYGAgYW5kIGBgX19zZXRhdHRyX18oKWBgLikgVGhpcyBpcyBkb25lIGJvdGhcbiAgIGZvciBlZmZpY2llbmN5IHJlYXNvbnMgYW5kIGJlY2F1c2Ugb3RoZXJ3aXNlIGBgX19nZXRhdHRyX18oKWBgXG4gICB3b3VsZCBoYXZlIG5vIHdheSB0byBhY2Nlc3Mgb3RoZXIgYXR0cmlidXRlcyBvZiB0aGUgaW5zdGFuY2UuICBOb3RlXG4gICB0aGF0IGF0IGxlYXN0IGZvciBpbnN0YW5jZSB2YXJpYWJsZXMsIHlvdSBjYW4gZmFrZSB0b3RhbCBjb250cm9sIGJ5XG4gICBub3QgaW5zZXJ0aW5nIGFueSB2YWx1ZXMgaW4gdGhlIGluc3RhbmNlIGF0dHJpYnV0ZSBkaWN0aW9uYXJ5IChidXRcbiAgIGluc3RlYWQgaW5zZXJ0aW5nIHRoZW0gaW4gYW5vdGhlciBvYmplY3QpLiAgU2VlIHRoZVxuICAgYGBfX2dldGF0dHJpYnV0ZV9fKClgYCBtZXRob2QgYmVsb3cgZm9yIGEgd2F5IHRvIGFjdHVhbGx5IGdldCB0b3RhbFxuICAgY29udHJvbCBvdmVyIGF0dHJpYnV0ZSBhY2Nlc3MuXG5cbm9iamVjdC5fX2dldGF0dHJpYnV0ZV9fKHNlbGYsIG5hbWUpXG5cbiAgIENhbGxlZCB1bmNvbmRpdGlvbmFsbHkgdG8gaW1wbGVtZW50IGF0dHJpYnV0ZSBhY2Nlc3NlcyBmb3JcbiAgIGluc3RhbmNlcyBvZiB0aGUgY2xhc3MuIElmIHRoZSBjbGFzcyBhbHNvIGRlZmluZXNcbiAgIGBgX19nZXRhdHRyX18oKWBgLCB0aGUgbGF0dGVyIHdpbGwgbm90IGJlIGNhbGxlZCB1bmxlc3NcbiAgIGBgX19nZXRhdHRyaWJ1dGVfXygpYGAgZWl0aGVyIGNhbGxzIGl0IGV4cGxpY2l0bHkgb3IgcmFpc2VzIGFuXG4gICBgYEF0dHJpYnV0ZUVycm9yYGAuIFRoaXMgbWV0aG9kIHNob3VsZCByZXR1cm4gdGhlIChjb21wdXRlZClcbiAgIGF0dHJpYnV0ZSB2YWx1ZSBvciByYWlzZSBhbiBgYEF0dHJpYnV0ZUVycm9yYGAgZXhjZXB0aW9uLiBJbiBvcmRlclxuICAgdG8gYXZvaWQgaW5maW5pdGUgcmVjdXJzaW9uIGluIHRoaXMgbWV0aG9kLCBpdHMgaW1wbGVtZW50YXRpb25cbiAgIHNob3VsZCBhbHdheXMgY2FsbCB0aGUgYmFzZSBjbGFzcyBtZXRob2Qgd2l0aCB0aGUgc2FtZSBuYW1lIHRvXG4gICBhY2Nlc3MgYW55IGF0dHJpYnV0ZXMgaXQgbmVlZHMsIGZvciBleGFtcGxlLFxuICAgYGBvYmplY3QuX19nZXRhdHRyaWJ1dGVfXyhzZWxmLCBuYW1lKWBgLlxuXG4gICBOb3RlOiBUaGlzIG1ldGhvZCBtYXkgc3RpbGwgYmUgYnlwYXNzZWQgd2hlbiBsb29raW5nIHVwIHNwZWNpYWwgbWV0aG9kc1xuICAgICBhcyB0aGUgcmVzdWx0IG9mIGltcGxpY2l0IGludm9jYXRpb24gdmlhIGxhbmd1YWdlIHN5bnRheCBvclxuICAgICBidWlsdC1pbiBmdW5jdGlvbnMuIFNlZSAqU3BlY2lhbCBtZXRob2QgbG9va3VwKi5cblxub2JqZWN0Ll9fc2V0YXR0cl9fKHNlbGYsIG5hbWUsIHZhbHVlKVxuXG4gICBDYWxsZWQgd2hlbiBhbiBhdHRyaWJ1dGUgYXNzaWdubWVudCBpcyBhdHRlbXB0ZWQuICBUaGlzIGlzIGNhbGxlZFxuICAgaW5zdGVhZCBvZiB0aGUgbm9ybWFsIG1lY2hhbmlzbSAoaS5lLiBzdG9yZSB0aGUgdmFsdWUgaW4gdGhlXG4gICBpbnN0YW5jZSBkaWN0aW9uYXJ5KS4gKm5hbWUqIGlzIHRoZSBhdHRyaWJ1dGUgbmFtZSwgKnZhbHVlKiBpcyB0aGVcbiAgIHZhbHVlIHRvIGJlIGFzc2lnbmVkIHRvIGl0LlxuXG4gICBJZiBgYF9fc2V0YXR0cl9fKClgYCB3YW50cyB0byBhc3NpZ24gdG8gYW4gaW5zdGFuY2UgYXR0cmlidXRlLCBpdFxuICAgc2hvdWxkIGNhbGwgdGhlIGJhc2UgY2xhc3MgbWV0aG9kIHdpdGggdGhlIHNhbWUgbmFtZSwgZm9yIGV4YW1wbGUsXG4gICBgYG9iamVjdC5fX3NldGF0dHJfXyhzZWxmLCBuYW1lLCB2YWx1ZSlgYC5cblxub2JqZWN0Ll9fZGVsYXR0cl9fKHNlbGYsIG5hbWUpXG5cbiAgIExpa2UgYGBfX3NldGF0dHJfXygpYGAgYnV0IGZvciBhdHRyaWJ1dGUgZGVsZXRpb24gaW5zdGVhZCBvZlxuICAgYXNzaWdubWVudC4gIFRoaXMgc2hvdWxkIG9ubHkgYmUgaW1wbGVtZW50ZWQgaWYgYGBkZWwgb2JqLm5hbWVgYCBpc1xuICAgbWVhbmluZ2Z1bCBmb3IgdGhlIG9iamVjdC5cblxub2JqZWN0Ll9fZGlyX18oc2VsZilcblxuICAgQ2FsbGVkIHdoZW4gYGBkaXIoKWBgIGlzIGNhbGxlZCBvbiB0aGUgb2JqZWN0LiAgQSBsaXN0IG11c3QgYmVcbiAgIHJldHVybmVkLlxuXG5cbkltcGxlbWVudGluZyBEZXNjcmlwdG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblRoZSBmb2xsb3dpbmcgbWV0aG9kcyBvbmx5IGFwcGx5IHdoZW4gYW4gaW5zdGFuY2Ugb2YgdGhlIGNsYXNzXG5jb250YWluaW5nIHRoZSBtZXRob2QgKGEgc28tY2FsbGVkICpkZXNjcmlwdG9yKiBjbGFzcykgYXBwZWFycyBpbiBhblxuKm93bmVyKiBjbGFzcyAodGhlIGRlc2NyaXB0b3IgbXVzdCBiZSBpbiBlaXRoZXIgdGhlIG93bmVyXCdzIGNsYXNzXG5kaWN0aW9uYXJ5IG9yIGluIHRoZSBjbGFzcyBkaWN0aW9uYXJ5IGZvciBvbmUgb2YgaXRzIHBhcmVudHMpLiAgSW4gdGhlXG5leGFtcGxlcyBiZWxvdywgInRoZSBhdHRyaWJ1dGUiIHJlZmVycyB0byB0aGUgYXR0cmlidXRlIHdob3NlIG5hbWUgaXNcbnRoZSBrZXkgb2YgdGhlIHByb3BlcnR5IGluIHRoZSBvd25lciBjbGFzc1wnIGBgX19kaWN0X19gYC5cblxub2JqZWN0Ll9fZ2V0X18oc2VsZiwgaW5zdGFuY2UsIG93bmVyKVxuXG4gICBDYWxsZWQgdG8gZ2V0IHRoZSBhdHRyaWJ1dGUgb2YgdGhlIG93bmVyIGNsYXNzIChjbGFzcyBhdHRyaWJ1dGVcbiAgIGFjY2Vzcykgb3Igb2YgYW4gaW5zdGFuY2Ugb2YgdGhhdCBjbGFzcyAoaW5zdGFuY2UgYXR0cmlidXRlXG4gICBhY2Nlc3MpLiAqb3duZXIqIGlzIGFsd2F5cyB0aGUgb3duZXIgY2xhc3MsIHdoaWxlICppbnN0YW5jZSogaXMgdGhlXG4gICBpbnN0YW5jZSB0aGF0IHRoZSBhdHRyaWJ1dGUgd2FzIGFjY2Vzc2VkIHRocm91Z2gsIG9yIGBgTm9uZWBgIHdoZW5cbiAgIHRoZSBhdHRyaWJ1dGUgaXMgYWNjZXNzZWQgdGhyb3VnaCB0aGUgKm93bmVyKi4gIFRoaXMgbWV0aG9kIHNob3VsZFxuICAgcmV0dXJuIHRoZSAoY29tcHV0ZWQpIGF0dHJpYnV0ZSB2YWx1ZSBvciByYWlzZSBhblxuICAgYGBBdHRyaWJ1dGVFcnJvcmBgIGV4Y2VwdGlvbi5cblxub2JqZWN0Ll9fc2V0X18oc2VsZiwgaW5zdGFuY2UsIHZhbHVlKVxuXG4gICBDYWxsZWQgdG8gc2V0IHRoZSBhdHRyaWJ1dGUgb24gYW4gaW5zdGFuY2UgKmluc3RhbmNlKiBvZiB0aGUgb3duZXJcbiAgIGNsYXNzIHRvIGEgbmV3IHZhbHVlLCAqdmFsdWUqLlxuXG5vYmplY3QuX19kZWxldGVfXyhzZWxmLCBpbnN0YW5jZSlcblxuICAgQ2FsbGVkIHRvIGRlbGV0ZSB0aGUgYXR0cmlidXRlIG9uIGFuIGluc3RhbmNlICppbnN0YW5jZSogb2YgdGhlXG4gICBvd25lciBjbGFzcy5cblxuXG5JbnZva2luZyBEZXNjcmlwdG9yc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuSW4gZ2VuZXJhbCwgYSBkZXNjcmlwdG9yIGlzIGFuIG9iamVjdCBhdHRyaWJ1dGUgd2l0aCAiYmluZGluZ1xuYmVoYXZpb3IiLCBvbmUgd2hvc2UgYXR0cmlidXRlIGFjY2VzcyBoYXMgYmVlbiBvdmVycmlkZGVuIGJ5IG1ldGhvZHNcbmluIHRoZSBkZXNjcmlwdG9yIHByb3RvY29sOiAgYGBfX2dldF9fKClgYCwgYGBfX3NldF9fKClgYCwgYW5kXG5gYF9fZGVsZXRlX18oKWBgLiBJZiBhbnkgb2YgdGhvc2UgbWV0aG9kcyBhcmUgZGVmaW5lZCBmb3IgYW4gb2JqZWN0LFxuaXQgaXMgc2FpZCB0byBiZSBhIGRlc2NyaXB0b3IuXG5cblRoZSBkZWZhdWx0IGJlaGF2aW9yIGZvciBhdHRyaWJ1dGUgYWNjZXNzIGlzIHRvIGdldCwgc2V0LCBvciBkZWxldGVcbnRoZSBhdHRyaWJ1dGUgZnJvbSBhbiBvYmplY3RcJ3MgZGljdGlvbmFyeS4gRm9yIGluc3RhbmNlLCBgYGEueGBgIGhhcyBhXG5sb29rdXAgY2hhaW4gc3RhcnRpbmcgd2l0aCBgYGEuX19kaWN0X19bXCd4XCddYGAsIHRoZW5cbmBgdHlwZShhKS5fX2RpY3RfX1tcJ3hcJ11gYCwgYW5kIGNvbnRpbnVpbmcgdGhyb3VnaCB0aGUgYmFzZSBjbGFzc2VzIG9mXG5gYHR5cGUoYSlgYCBleGNsdWRpbmcgbWV0YWNsYXNzZXMuXG5cbkhvd2V2ZXIsIGlmIHRoZSBsb29rZWQtdXAgdmFsdWUgaXMgYW4gb2JqZWN0IGRlZmluaW5nIG9uZSBvZiB0aGVcbmRlc2NyaXB0b3IgbWV0aG9kcywgdGhlbiBQeXRob24gbWF5IG92ZXJyaWRlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIGFuZFxuaW52b2tlIHRoZSBkZXNjcmlwdG9yIG1ldGhvZCBpbnN0ZWFkLiAgV2hlcmUgdGhpcyBvY2N1cnMgaW4gdGhlXG5wcmVjZWRlbmNlIGNoYWluIGRlcGVuZHMgb24gd2hpY2ggZGVzY3JpcHRvciBtZXRob2RzIHdlcmUgZGVmaW5lZCBhbmRcbmhvdyB0aGV5IHdlcmUgY2FsbGVkLlxuXG5UaGUgc3RhcnRpbmcgcG9pbnQgZm9yIGRlc2NyaXB0b3IgaW52b2NhdGlvbiBpcyBhIGJpbmRpbmcsIGBgYS54YGAuXG5Ib3cgdGhlIGFyZ3VtZW50cyBhcmUgYXNzZW1ibGVkIGRlcGVuZHMgb24gYGBhYGA6XG5cbkRpcmVjdCBDYWxsXG4gICBUaGUgc2ltcGxlc3QgYW5kIGxlYXN0IGNvbW1vbiBjYWxsIGlzIHdoZW4gdXNlciBjb2RlIGRpcmVjdGx5XG4gICBpbnZva2VzIGEgZGVzY3JpcHRvciBtZXRob2Q6ICAgIGBgeC5fX2dldF9fKGEpYGAuXG5cbkluc3RhbmNlIEJpbmRpbmdcbiAgIElmIGJpbmRpbmcgdG8gYW4gb2JqZWN0IGluc3RhbmNlLCBgYGEueGBgIGlzIHRyYW5zZm9ybWVkIGludG8gdGhlXG4gICBjYWxsOiBgYHR5cGUoYSkuX19kaWN0X19bXCd4XCddLl9fZ2V0X18oYSwgdHlwZShhKSlgYC5cblxuQ2xhc3MgQmluZGluZ1xuICAgSWYgYmluZGluZyB0byBhIGNsYXNzLCBgYEEueGBgIGlzIHRyYW5zZm9ybWVkIGludG8gdGhlIGNhbGw6XG4gICBgYEEuX19kaWN0X19bXCd4XCddLl9fZ2V0X18oTm9uZSwgQSlgYC5cblxuU3VwZXIgQmluZGluZ1xuICAgSWYgYGBhYGAgaXMgYW4gaW5zdGFuY2Ugb2YgYGBzdXBlcmBgLCB0aGVuIHRoZSBiaW5kaW5nIGBgc3VwZXIoQixcbiAgIG9iaikubSgpYGAgc2VhcmNoZXMgYGBvYmouX19jbGFzc19fLl9fbXJvX19gYCBmb3IgdGhlIGJhc2UgY2xhc3NcbiAgIGBgQWBgIGltbWVkaWF0ZWx5IHByZWNlZGluZyBgYEJgYCBhbmQgdGhlbiBpbnZva2VzIHRoZSBkZXNjcmlwdG9yXG4gICB3aXRoIHRoZSBjYWxsOiBgYEEuX19kaWN0X19bXCdtXCddLl9fZ2V0X18ob2JqLCBvYmouX19jbGFzc19fKWBgLlxuXG5Gb3IgaW5zdGFuY2UgYmluZGluZ3MsIHRoZSBwcmVjZWRlbmNlIG9mIGRlc2NyaXB0b3IgaW52b2NhdGlvbiBkZXBlbmRzXG5vbiB0aGUgd2hpY2ggZGVzY3JpcHRvciBtZXRob2RzIGFyZSBkZWZpbmVkLiAgQSBkZXNjcmlwdG9yIGNhbiBkZWZpbmVcbmFueSBjb21iaW5hdGlvbiBvZiBgYF9fZ2V0X18oKWBgLCBgYF9fc2V0X18oKWBgIGFuZCBgYF9fZGVsZXRlX18oKWBgLlxuSWYgaXQgZG9lcyBub3QgZGVmaW5lIGBgX19nZXRfXygpYGAsIHRoZW4gYWNjZXNzaW5nIHRoZSBhdHRyaWJ1dGUgd2lsbFxucmV0dXJuIHRoZSBkZXNjcmlwdG9yIG9iamVjdCBpdHNlbGYgdW5sZXNzIHRoZXJlIGlzIGEgdmFsdWUgaW4gdGhlXG5vYmplY3RcJ3MgaW5zdGFuY2UgZGljdGlvbmFyeS4gIElmIHRoZSBkZXNjcmlwdG9yIGRlZmluZXMgYGBfX3NldF9fKClgYFxuYW5kL29yIGBgX19kZWxldGVfXygpYGAsIGl0IGlzIGEgZGF0YSBkZXNjcmlwdG9yOyBpZiBpdCBkZWZpbmVzXG5uZWl0aGVyLCBpdCBpcyBhIG5vbi1kYXRhIGRlc2NyaXB0b3IuICBOb3JtYWxseSwgZGF0YSBkZXNjcmlwdG9yc1xuZGVmaW5lIGJvdGggYGBfX2dldF9fKClgYCBhbmQgYGBfX3NldF9fKClgYCwgd2hpbGUgbm9uLWRhdGFcbmRlc2NyaXB0b3JzIGhhdmUganVzdCB0aGUgYGBfX2dldF9fKClgYCBtZXRob2QuICBEYXRhIGRlc2NyaXB0b3JzIHdpdGhcbmBgX19zZXRfXygpYGAgYW5kIGBgX19nZXRfXygpYGAgZGVmaW5lZCBhbHdheXMgb3ZlcnJpZGUgYSByZWRlZmluaXRpb25cbmluIGFuIGluc3RhbmNlIGRpY3Rpb25hcnkuICBJbiBjb250cmFzdCwgbm9uLWRhdGEgZGVzY3JpcHRvcnMgY2FuIGJlXG5vdmVycmlkZGVuIGJ5IGluc3RhbmNlcy5cblxuUHl0aG9uIG1ldGhvZHMgKGluY2x1ZGluZyBgYHN0YXRpY21ldGhvZCgpYGAgYW5kIGBgY2xhc3NtZXRob2QoKWBgKVxuYXJlIGltcGxlbWVudGVkIGFzIG5vbi1kYXRhIGRlc2NyaXB0b3JzLiAgQWNjb3JkaW5nbHksIGluc3RhbmNlcyBjYW5cbnJlZGVmaW5lIGFuZCBvdmVycmlkZSBtZXRob2RzLiAgVGhpcyBhbGxvd3MgaW5kaXZpZHVhbCBpbnN0YW5jZXMgdG9cbmFjcXVpcmUgYmVoYXZpb3JzIHRoYXQgZGlmZmVyIGZyb20gb3RoZXIgaW5zdGFuY2VzIG9mIHRoZSBzYW1lIGNsYXNzLlxuXG5UaGUgYGBwcm9wZXJ0eSgpYGAgZnVuY3Rpb24gaXMgaW1wbGVtZW50ZWQgYXMgYSBkYXRhIGRlc2NyaXB0b3IuXG5BY2NvcmRpbmdseSwgaW5zdGFuY2VzIGNhbm5vdCBvdmVycmlkZSB0aGUgYmVoYXZpb3Igb2YgYSBwcm9wZXJ0eS5cblxuXG5fX3Nsb3RzX19cbi0tLS0tLS0tLVxuXG5CeSBkZWZhdWx0LCBpbnN0YW5jZXMgb2YgY2xhc3NlcyBoYXZlIGEgZGljdGlvbmFyeSBmb3IgYXR0cmlidXRlXG5zdG9yYWdlLiAgVGhpcyB3YXN0ZXMgc3BhY2UgZm9yIG9iamVjdHMgaGF2aW5nIHZlcnkgZmV3IGluc3RhbmNlXG52YXJpYWJsZXMuICBUaGUgc3BhY2UgY29uc3VtcHRpb24gY2FuIGJlY29tZSBhY3V0ZSB3aGVuIGNyZWF0aW5nIGxhcmdlXG5udW1iZXJzIG9mIGluc3RhbmNlcy5cblxuVGhlIGRlZmF1bHQgY2FuIGJlIG92ZXJyaWRkZW4gYnkgZGVmaW5pbmcgKl9fc2xvdHNfXyogaW4gYSBjbGFzc1xuZGVmaW5pdGlvbi4gVGhlICpfX3Nsb3RzX18qIGRlY2xhcmF0aW9uIHRha2VzIGEgc2VxdWVuY2Ugb2YgaW5zdGFuY2VcbnZhcmlhYmxlcyBhbmQgcmVzZXJ2ZXMganVzdCBlbm91Z2ggc3BhY2UgaW4gZWFjaCBpbnN0YW5jZSB0byBob2xkIGFcbnZhbHVlIGZvciBlYWNoIHZhcmlhYmxlLiAgU3BhY2UgaXMgc2F2ZWQgYmVjYXVzZSAqX19kaWN0X18qIGlzIG5vdFxuY3JlYXRlZCBmb3IgZWFjaCBpbnN0YW5jZS5cblxub2JqZWN0Ll9fc2xvdHNfX1xuXG4gICBUaGlzIGNsYXNzIHZhcmlhYmxlIGNhbiBiZSBhc3NpZ25lZCBhIHN0cmluZywgaXRlcmFibGUsIG9yIHNlcXVlbmNlXG4gICBvZiBzdHJpbmdzIHdpdGggdmFyaWFibGUgbmFtZXMgdXNlZCBieSBpbnN0YW5jZXMuICBJZiBkZWZpbmVkIGluIGFcbiAgIGNsYXNzLCAqX19zbG90c19fKiByZXNlcnZlcyBzcGFjZSBmb3IgdGhlIGRlY2xhcmVkIHZhcmlhYmxlcyBhbmRcbiAgIHByZXZlbnRzIHRoZSBhdXRvbWF0aWMgY3JlYXRpb24gb2YgKl9fZGljdF9fKiBhbmQgKl9fd2Vha3JlZl9fKiBmb3JcbiAgIGVhY2ggaW5zdGFuY2UuXG5cblxuTm90ZXMgb24gdXNpbmcgKl9fc2xvdHNfXypcbn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+XG5cbiogV2hlbiBpbmhlcml0aW5nIGZyb20gYSBjbGFzcyB3aXRob3V0ICpfX3Nsb3RzX18qLCB0aGUgKl9fZGljdF9fKlxuICBhdHRyaWJ1dGUgb2YgdGhhdCBjbGFzcyB3aWxsIGFsd2F5cyBiZSBhY2Nlc3NpYmxlLCBzbyBhICpfX3Nsb3RzX18qXG4gIGRlZmluaXRpb24gaW4gdGhlIHN1YmNsYXNzIGlzIG1lYW5pbmdsZXNzLlxuXG4qIFdpdGhvdXQgYSAqX19kaWN0X18qIHZhcmlhYmxlLCBpbnN0YW5jZXMgY2Fubm90IGJlIGFzc2lnbmVkIG5ld1xuICB2YXJpYWJsZXMgbm90IGxpc3RlZCBpbiB0aGUgKl9fc2xvdHNfXyogZGVmaW5pdGlvbi4gIEF0dGVtcHRzIHRvXG4gIGFzc2lnbiB0byBhbiB1bmxpc3RlZCB2YXJpYWJsZSBuYW1lIHJhaXNlcyBgYEF0dHJpYnV0ZUVycm9yYGAuIElmXG4gIGR5bmFtaWMgYXNzaWdubWVudCBvZiBuZXcgdmFyaWFibGVzIGlzIGRlc2lyZWQsIHRoZW4gYWRkXG4gIGBgXCdfX2RpY3RfX1wnYGAgdG8gdGhlIHNlcXVlbmNlIG9mIHN0cmluZ3MgaW4gdGhlICpfX3Nsb3RzX18qXG4gIGRlY2xhcmF0aW9uLlxuXG4qIFdpdGhvdXQgYSAqX193ZWFrcmVmX18qIHZhcmlhYmxlIGZvciBlYWNoIGluc3RhbmNlLCBjbGFzc2VzIGRlZmluaW5nXG4gICpfX3Nsb3RzX18qIGRvIG5vdCBzdXBwb3J0IHdlYWsgcmVmZXJlbmNlcyB0byBpdHMgaW5zdGFuY2VzLiBJZiB3ZWFrXG4gIHJlZmVyZW5jZSBzdXBwb3J0IGlzIG5lZWRlZCwgdGhlbiBhZGQgYGBcJ19fd2Vha3JlZl9fXCdgYCB0byB0aGVcbiAgc2VxdWVuY2Ugb2Ygc3RyaW5ncyBpbiB0aGUgKl9fc2xvdHNfXyogZGVjbGFyYXRpb24uXG5cbiogKl9fc2xvdHNfXyogYXJlIGltcGxlbWVudGVkIGF0IHRoZSBjbGFzcyBsZXZlbCBieSBjcmVhdGluZ1xuICBkZXNjcmlwdG9ycyAoKkltcGxlbWVudGluZyBEZXNjcmlwdG9ycyopIGZvciBlYWNoIHZhcmlhYmxlIG5hbWUuICBBc1xuICBhIHJlc3VsdCwgY2xhc3MgYXR0cmlidXRlcyBjYW5ub3QgYmUgdXNlZCB0byBzZXQgZGVmYXVsdCB2YWx1ZXMgZm9yXG4gIGluc3RhbmNlIHZhcmlhYmxlcyBkZWZpbmVkIGJ5ICpfX3Nsb3RzX18qOyBvdGhlcndpc2UsIHRoZSBjbGFzc1xuICBhdHRyaWJ1dGUgd291bGQgb3ZlcndyaXRlIHRoZSBkZXNjcmlwdG9yIGFzc2lnbm1lbnQuXG5cbiogVGhlIGFjdGlvbiBvZiBhICpfX3Nsb3RzX18qIGRlY2xhcmF0aW9uIGlzIGxpbWl0ZWQgdG8gdGhlIGNsYXNzXG4gIHdoZXJlIGl0IGlzIGRlZmluZWQuICBBcyBhIHJlc3VsdCwgc3ViY2xhc3NlcyB3aWxsIGhhdmUgYSAqX19kaWN0X18qXG4gIHVubGVzcyB0aGV5IGFsc28gZGVmaW5lICpfX3Nsb3RzX18qICh3aGljaCBtdXN0IG9ubHkgY29udGFpbiBuYW1lc1xuICBvZiBhbnkgKmFkZGl0aW9uYWwqIHNsb3RzKS5cblxuKiBJZiBhIGNsYXNzIGRlZmluZXMgYSBzbG90IGFsc28gZGVmaW5lZCBpbiBhIGJhc2UgY2xhc3MsIHRoZSBpbnN0YW5jZVxuICB2YXJpYWJsZSBkZWZpbmVkIGJ5IHRoZSBiYXNlIGNsYXNzIHNsb3QgaXMgaW5hY2Nlc3NpYmxlIChleGNlcHQgYnlcbiAgcmV0cmlldmluZyBpdHMgZGVzY3JpcHRvciBkaXJlY3RseSBmcm9tIHRoZSBiYXNlIGNsYXNzKS4gVGhpc1xuICByZW5kZXJzIHRoZSBtZWFuaW5nIG9mIHRoZSBwcm9ncmFtIHVuZGVmaW5lZC4gIEluIHRoZSBmdXR1cmUsIGFcbiAgY2hlY2sgbWF5IGJlIGFkZGVkIHRvIHByZXZlbnQgdGhpcy5cblxuKiBOb25lbXB0eSAqX19zbG90c19fKiBkb2VzIG5vdCB3b3JrIGZvciBjbGFzc2VzIGRlcml2ZWQgZnJvbVxuICAidmFyaWFibGUtbGVuZ3RoIiBidWlsdC1pbiB0eXBlcyBzdWNoIGFzIGBgaW50YGAsIGBgc3RyYGAgYW5kXG4gIGBgdHVwbGVgYC5cblxuKiBBbnkgbm9uLXN0cmluZyBpdGVyYWJsZSBtYXkgYmUgYXNzaWduZWQgdG8gKl9fc2xvdHNfXyouIE1hcHBpbmdzIG1heVxuICBhbHNvIGJlIHVzZWQ7IGhvd2V2ZXIsIGluIHRoZSBmdXR1cmUsIHNwZWNpYWwgbWVhbmluZyBtYXkgYmVcbiAgYXNzaWduZWQgdG8gdGhlIHZhbHVlcyBjb3JyZXNwb25kaW5nIHRvIGVhY2gga2V5LlxuXG4qICpfX2NsYXNzX18qIGFzc2lnbm1lbnQgd29ya3Mgb25seSBpZiBib3RoIGNsYXNzZXMgaGF2ZSB0aGUgc2FtZVxuICAqX19zbG90c19fKi5cblxuXG5DdXN0b21pemluZyBjbGFzcyBjcmVhdGlvblxuPT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQnkgZGVmYXVsdCwgY2xhc3NlcyBhcmUgY29uc3RydWN0ZWQgdXNpbmcgYGB0eXBlKClgYC4gQSBjbGFzc1xuZGVmaW5pdGlvbiBpcyByZWFkIGludG8gYSBzZXBhcmF0ZSBuYW1lc3BhY2UgYW5kIHRoZSB2YWx1ZSBvZiBjbGFzc1xubmFtZSBpcyBib3VuZCB0byB0aGUgcmVzdWx0IG9mIGBgdHlwZShuYW1lLCBiYXNlcywgZGljdClgYC5cblxuV2hlbiB0aGUgY2xhc3MgZGVmaW5pdGlvbiBpcyByZWFkLCBpZiBhIGNhbGxhYmxlIGBgbWV0YWNsYXNzYGAga2V5d29yZFxuYXJndW1lbnQgaXMgcGFzc2VkIGFmdGVyIHRoZSBiYXNlcyBpbiB0aGUgY2xhc3MgZGVmaW5pdGlvbiwgdGhlXG5jYWxsYWJsZSBnaXZlbiB3aWxsIGJlIGNhbGxlZCBpbnN0ZWFkIG9mIGBgdHlwZSgpYGAuICBJZiBvdGhlciBrZXl3b3JkXG5hcmd1bWVudHMgYXJlIHBhc3NlZCwgdGhleSB3aWxsIGFsc28gYmUgcGFzc2VkIHRvIHRoZSBtZXRhY2xhc3MuICBUaGlzXG5hbGxvd3MgY2xhc3NlcyBvciBmdW5jdGlvbnMgdG8gYmUgd3JpdHRlbiB3aGljaCBtb25pdG9yIG9yIGFsdGVyIHRoZVxuY2xhc3MgY3JlYXRpb24gcHJvY2VzczpcblxuKiBNb2RpZnlpbmcgdGhlIGNsYXNzIGRpY3Rpb25hcnkgcHJpb3IgdG8gdGhlIGNsYXNzIGJlaW5nIGNyZWF0ZWQuXG5cbiogUmV0dXJuaW5nIGFuIGluc3RhbmNlIG9mIGFub3RoZXIgY2xhc3MgLS0gZXNzZW50aWFsbHkgcGVyZm9ybWluZyB0aGVcbiAgcm9sZSBvZiBhIGZhY3RvcnkgZnVuY3Rpb24uXG5cblRoZXNlIHN0ZXBzIHdpbGwgaGF2ZSB0byBiZSBwZXJmb3JtZWQgaW4gdGhlIG1ldGFjbGFzc1wncyBgYF9fbmV3X18oKWBgXG5tZXRob2QgLS0gYGB0eXBlLl9fbmV3X18oKWBgIGNhbiB0aGVuIGJlIGNhbGxlZCBmcm9tIHRoaXMgbWV0aG9kIHRvXG5jcmVhdGUgYSBjbGFzcyB3aXRoIGRpZmZlcmVudCBwcm9wZXJ0aWVzLiAgVGhpcyBleGFtcGxlIGFkZHMgYSBuZXdcbmVsZW1lbnQgdG8gdGhlIGNsYXNzIGRpY3Rpb25hcnkgYmVmb3JlIGNyZWF0aW5nIHRoZSBjbGFzczpcblxuICAgY2xhc3MgbWV0YWNscyh0eXBlKTpcbiAgICAgICBkZWYgX19uZXdfXyhtY3MsIG5hbWUsIGJhc2VzLCBkaWN0KTpcbiAgICAgICAgICAgZGljdFtcJ2Zvb1wnXSA9IFwnbWV0YWNscyB3YXMgaGVyZVwnXG4gICAgICAgICAgIHJldHVybiB0eXBlLl9fbmV3X18obWNzLCBuYW1lLCBiYXNlcywgZGljdClcblxuWW91IGNhbiBvZiBjb3Vyc2UgYWxzbyBvdmVycmlkZSBvdGhlciBjbGFzcyBtZXRob2RzIChvciBhZGQgbmV3XG5tZXRob2RzKTsgZm9yIGV4YW1wbGUgZGVmaW5pbmcgYSBjdXN0b20gYGBfX2NhbGxfXygpYGAgbWV0aG9kIGluIHRoZVxubWV0YWNsYXNzIGFsbG93cyBjdXN0b20gYmVoYXZpb3Igd2hlbiB0aGUgY2xhc3MgaXMgY2FsbGVkLCBlLmcuIG5vdFxuYWx3YXlzIGNyZWF0aW5nIGEgbmV3IGluc3RhbmNlLlxuXG5JZiB0aGUgbWV0YWNsYXNzIGhhcyBhIGBgX19wcmVwYXJlX18oKWBgIGF0dHJpYnV0ZSAodXN1YWxseVxuaW1wbGVtZW50ZWQgYXMgYSBjbGFzcyBvciBzdGF0aWMgbWV0aG9kKSwgaXQgaXMgY2FsbGVkIGJlZm9yZSB0aGVcbmNsYXNzIGJvZHkgaXMgZXZhbHVhdGVkIHdpdGggdGhlIG5hbWUgb2YgdGhlIGNsYXNzIGFuZCBhIHR1cGxlIG9mIGl0c1xuYmFzZXMgZm9yIGFyZ3VtZW50cy4gIEl0IHNob3VsZCByZXR1cm4gYW4gb2JqZWN0IHRoYXQgc3VwcG9ydHMgdGhlXG5tYXBwaW5nIGludGVyZmFjZSB0aGF0IHdpbGwgYmUgdXNlZCB0byBzdG9yZSB0aGUgbmFtZXNwYWNlIG9mIHRoZVxuY2xhc3MuICBUaGUgZGVmYXVsdCBpcyBhIHBsYWluIGRpY3Rpb25hcnkuICBUaGlzIGNvdWxkIGJlIHVzZWQsIGZvclxuZXhhbXBsZSwgdG8ga2VlcCB0cmFjayBvZiB0aGUgb3JkZXIgdGhhdCBjbGFzcyBhdHRyaWJ1dGVzIGFyZSBkZWNsYXJlZFxuaW4gYnkgcmV0dXJuaW5nIGFuIG9yZGVyZWQgZGljdGlvbmFyeS5cblxuVGhlIGFwcHJvcHJpYXRlIG1ldGFjbGFzcyBpcyBkZXRlcm1pbmVkIGJ5IHRoZSBmb2xsb3dpbmcgcHJlY2VkZW5jZVxucnVsZXM6XG5cbiogSWYgdGhlIGBgbWV0YWNsYXNzYGAga2V5d29yZCBhcmd1bWVudCBpcyBwYXNzZWQgd2l0aCB0aGUgYmFzZXMsIGl0XG4gIGlzIHVzZWQuXG5cbiogT3RoZXJ3aXNlLCBpZiB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgYmFzZSBjbGFzcywgaXRzIG1ldGFjbGFzcyBpc1xuICB1c2VkLlxuXG4qIE90aGVyd2lzZSwgdGhlIGRlZmF1bHQgbWV0YWNsYXNzIChgYHR5cGVgYCkgaXMgdXNlZC5cblxuVGhlIHBvdGVudGlhbCB1c2VzIGZvciBtZXRhY2xhc3NlcyBhcmUgYm91bmRsZXNzLiBTb21lIGlkZWFzIHRoYXQgaGF2ZVxuYmVlbiBleHBsb3JlZCBpbmNsdWRpbmcgbG9nZ2luZywgaW50ZXJmYWNlIGNoZWNraW5nLCBhdXRvbWF0aWNcbmRlbGVnYXRpb24sIGF1dG9tYXRpYyBwcm9wZXJ0eSBjcmVhdGlvbiwgcHJveGllcywgZnJhbWV3b3JrcywgYW5kXG5hdXRvbWF0aWMgcmVzb3VyY2UgbG9ja2luZy9zeW5jaHJvbml6YXRpb24uXG5cbkhlcmUgaXMgYW4gZXhhbXBsZSBvZiBhIG1ldGFjbGFzcyB0aGF0IHVzZXMgYW5cbmBgY29sbGVjdGlvbnMuT3JkZXJlZERpY3RgYCB0byByZW1lbWJlciB0aGUgb3JkZXIgdGhhdCBjbGFzcyBtZW1iZXJzXG53ZXJlIGRlZmluZWQ6XG5cbiAgIGNsYXNzIE9yZGVyZWRDbGFzcyh0eXBlKTpcblxuICAgICAgICBAY2xhc3NtZXRob2RcbiAgICAgICAgZGVmIF9fcHJlcGFyZV9fKG1ldGFjbHMsIG5hbWUsIGJhc2VzLCAqKmt3ZHMpOlxuICAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbnMuT3JkZXJlZERpY3QoKVxuXG4gICAgICAgIGRlZiBfX25ld19fKGNscywgbmFtZSwgYmFzZXMsIGNsYXNzZGljdCk6XG4gICAgICAgICAgIHJlc3VsdCA9IHR5cGUuX19uZXdfXyhjbHMsIG5hbWUsIGJhc2VzLCBkaWN0KGNsYXNzZGljdCkpXG4gICAgICAgICAgIHJlc3VsdC5tZW1iZXJzID0gdHVwbGUoY2xhc3NkaWN0KVxuICAgICAgICAgICByZXR1cm4gcmVzdWx0XG5cbiAgIGNsYXNzIEEobWV0YWNsYXNzPU9yZGVyZWRDbGFzcyk6XG4gICAgICAgZGVmIG9uZShzZWxmKTogcGFzc1xuICAgICAgIGRlZiB0d28oc2VsZik6IHBhc3NcbiAgICAgICBkZWYgdGhyZWUoc2VsZik6IHBhc3NcbiAgICAgICBkZWYgZm91cihzZWxmKTogcGFzc1xuXG4gICA+Pj4gQS5tZW1iZXJzXG4gICAoXCdfX21vZHVsZV9fXCcsIFwnb25lXCcsIFwndHdvXCcsIFwndGhyZWVcJywgXCdmb3VyXCcpXG5cbldoZW4gdGhlIGNsYXNzIGRlZmluaXRpb24gZm9yICpBKiBnZXRzIGV4ZWN1dGVkLCB0aGUgcHJvY2VzcyBiZWdpbnNcbndpdGggY2FsbGluZyB0aGUgbWV0YWNsYXNzXCdzIGBgX19wcmVwYXJlX18oKWBgIG1ldGhvZCB3aGljaCByZXR1cm5zIGFuXG5lbXB0eSBgYGNvbGxlY3Rpb25zLk9yZGVyZWREaWN0YGAuICBUaGF0IG1hcHBpbmcgcmVjb3JkcyB0aGUgbWV0aG9kc1xuYW5kIGF0dHJpYnV0ZXMgb2YgKkEqIGFzIHRoZXkgYXJlIGRlZmluZWQgd2l0aGluIHRoZSBib2R5IG9mIHRoZSBjbGFzc1xuc3RhdGVtZW50LiBPbmNlIHRob3NlIGRlZmluaXRpb25zIGFyZSBleGVjdXRlZCwgdGhlIG9yZGVyZWQgZGljdGlvbmFyeVxuaXMgZnVsbHkgcG9wdWxhdGVkIGFuZCB0aGUgbWV0YWNsYXNzXCdzIGBgX19uZXdfXygpYGAgbWV0aG9kIGdldHNcbmludm9rZWQuICBUaGF0IG1ldGhvZCBidWlsZHMgdGhlIG5ldyB0eXBlIGFuZCBpdCBzYXZlcyB0aGUgb3JkZXJlZFxuZGljdGlvbmFyeSBrZXlzIGluIGFuIGF0dHJpYnV0ZSBjYWxsZWQgYGBtZW1iZXJzYGAuXG5cblxuQ3VzdG9taXppbmcgaW5zdGFuY2UgYW5kIHN1YmNsYXNzIGNoZWNrc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5UaGUgZm9sbG93aW5nIG1ldGhvZHMgYXJlIHVzZWQgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlXG5gYGlzaW5zdGFuY2UoKWBgIGFuZCBgYGlzc3ViY2xhc3MoKWBgIGJ1aWx0LWluIGZ1bmN0aW9ucy5cblxuSW4gcGFydGljdWxhciwgdGhlIG1ldGFjbGFzcyBgYGFiYy5BQkNNZXRhYGAgaW1wbGVtZW50cyB0aGVzZSBtZXRob2RzXG5pbiBvcmRlciB0byBhbGxvdyB0aGUgYWRkaXRpb24gb2YgQWJzdHJhY3QgQmFzZSBDbGFzc2VzIChBQkNzKSBhc1xuInZpcnR1YWwgYmFzZSBjbGFzc2VzIiB0byBhbnkgY2xhc3Mgb3IgdHlwZSAoaW5jbHVkaW5nIGJ1aWx0LWluXG50eXBlcyksIGluY2x1ZGluZyBvdGhlciBBQkNzLlxuXG5jbGFzcy5fX2luc3RhbmNlY2hlY2tfXyhzZWxmLCBpbnN0YW5jZSlcblxuICAgUmV0dXJuIHRydWUgaWYgKmluc3RhbmNlKiBzaG91bGQgYmUgY29uc2lkZXJlZCBhIChkaXJlY3Qgb3JcbiAgIGluZGlyZWN0KSBpbnN0YW5jZSBvZiAqY2xhc3MqLiBJZiBkZWZpbmVkLCBjYWxsZWQgdG8gaW1wbGVtZW50XG4gICBgYGlzaW5zdGFuY2UoaW5zdGFuY2UsIGNsYXNzKWBgLlxuXG5jbGFzcy5fX3N1YmNsYXNzY2hlY2tfXyhzZWxmLCBzdWJjbGFzcylcblxuICAgUmV0dXJuIHRydWUgaWYgKnN1YmNsYXNzKiBzaG91bGQgYmUgY29uc2lkZXJlZCBhIChkaXJlY3Qgb3JcbiAgIGluZGlyZWN0KSBzdWJjbGFzcyBvZiAqY2xhc3MqLiAgSWYgZGVmaW5lZCwgY2FsbGVkIHRvIGltcGxlbWVudFxuICAgYGBpc3N1YmNsYXNzKHN1YmNsYXNzLCBjbGFzcylgYC5cblxuTm90ZSB0aGF0IHRoZXNlIG1ldGhvZHMgYXJlIGxvb2tlZCB1cCBvbiB0aGUgdHlwZSAobWV0YWNsYXNzKSBvZiBhXG5jbGFzcy4gIFRoZXkgY2Fubm90IGJlIGRlZmluZWQgYXMgY2xhc3MgbWV0aG9kcyBpbiB0aGUgYWN0dWFsIGNsYXNzLlxuVGhpcyBpcyBjb25zaXN0ZW50IHdpdGggdGhlIGxvb2t1cCBvZiBzcGVjaWFsIG1ldGhvZHMgdGhhdCBhcmUgY2FsbGVkXG5vbiBpbnN0YW5jZXMsIG9ubHkgaW4gdGhpcyBjYXNlIHRoZSBpbnN0YW5jZSBpcyBpdHNlbGYgYSBjbGFzcy5cblxuU2VlIGFsc286XG5cbiAgICoqUEVQIDMxMTkqKiAtIEludHJvZHVjaW5nIEFic3RyYWN0IEJhc2UgQ2xhc3Nlc1xuICAgICAgSW5jbHVkZXMgdGhlIHNwZWNpZmljYXRpb24gZm9yIGN1c3RvbWl6aW5nIGBgaXNpbnN0YW5jZSgpYGAgYW5kXG4gICAgICBgYGlzc3ViY2xhc3MoKWBgIGJlaGF2aW9yIHRocm91Z2ggYGBfX2luc3RhbmNlY2hlY2tfXygpYGAgYW5kXG4gICAgICBgYF9fc3ViY2xhc3NjaGVja19fKClgYCwgd2l0aCBtb3RpdmF0aW9uIGZvciB0aGlzIGZ1bmN0aW9uYWxpdHlcbiAgICAgIGluIHRoZSBjb250ZXh0IG9mIGFkZGluZyBBYnN0cmFjdCBCYXNlIENsYXNzZXMgKHNlZSB0aGUgYGBhYmNgYFxuICAgICAgbW9kdWxlKSB0byB0aGUgbGFuZ3VhZ2UuXG5cblxuRW11bGF0aW5nIGNhbGxhYmxlIG9iamVjdHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbm9iamVjdC5fX2NhbGxfXyhzZWxmWywgYXJncy4uLl0pXG5cbiAgIENhbGxlZCB3aGVuIHRoZSBpbnN0YW5jZSBpcyAiY2FsbGVkIiBhcyBhIGZ1bmN0aW9uOyBpZiB0aGlzIG1ldGhvZFxuICAgaXMgZGVmaW5lZCwgYGB4KGFyZzEsIGFyZzIsIC4uLilgYCBpcyBhIHNob3J0aGFuZCBmb3JcbiAgIGBgeC5fX2NhbGxfXyhhcmcxLCBhcmcyLCAuLi4pYGAuXG5cblxuRW11bGF0aW5nIGNvbnRhaW5lciB0eXBlc1xuPT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5UaGUgZm9sbG93aW5nIG1ldGhvZHMgY2FuIGJlIGRlZmluZWQgdG8gaW1wbGVtZW50IGNvbnRhaW5lciBvYmplY3RzLlxuQ29udGFpbmVycyB1c3VhbGx5IGFyZSBzZXF1ZW5jZXMgKHN1Y2ggYXMgbGlzdHMgb3IgdHVwbGVzKSBvciBtYXBwaW5nc1xuKGxpa2UgZGljdGlvbmFyaWVzKSwgYnV0IGNhbiByZXByZXNlbnQgb3RoZXIgY29udGFpbmVycyBhcyB3ZWxsLiAgVGhlXG5maXJzdCBzZXQgb2YgbWV0aG9kcyBpcyB1c2VkIGVpdGhlciB0byBlbXVsYXRlIGEgc2VxdWVuY2Ugb3IgdG9cbmVtdWxhdGUgYSBtYXBwaW5nOyB0aGUgZGlmZmVyZW5jZSBpcyB0aGF0IGZvciBhIHNlcXVlbmNlLCB0aGVcbmFsbG93YWJsZSBrZXlzIHNob3VsZCBiZSB0aGUgaW50ZWdlcnMgKmsqIGZvciB3aGljaCBgYDAgPD0gayA8IE5gYFxud2hlcmUgKk4qIGlzIHRoZSBsZW5ndGggb2YgdGhlIHNlcXVlbmNlLCBvciBzbGljZSBvYmplY3RzLCB3aGljaFxuZGVmaW5lIGEgcmFuZ2Ugb2YgaXRlbXMuICBJdCBpcyBhbHNvIHJlY29tbWVuZGVkIHRoYXQgbWFwcGluZ3MgcHJvdmlkZVxudGhlIG1ldGhvZHMgYGBrZXlzKClgYCwgYGB2YWx1ZXMoKWBgLCBgYGl0ZW1zKClgYCwgYGBnZXQoKWBgLFxuYGBjbGVhcigpYGAsIGBgc2V0ZGVmYXVsdCgpYGAsIGBgcG9wKClgYCwgYGBwb3BpdGVtKClgYCwgYGBjb3B5KClgYCxcbmFuZCBgYHVwZGF0ZSgpYGAgYmVoYXZpbmcgc2ltaWxhciB0byB0aG9zZSBmb3IgUHl0aG9uXCdzIHN0YW5kYXJkXG5kaWN0aW9uYXJ5IG9iamVjdHMuICBUaGUgYGBjb2xsZWN0aW9uc2BgIG1vZHVsZSBwcm92aWRlcyBhXG5gYE11dGFibGVNYXBwaW5nYGAgYWJzdHJhY3QgYmFzZSBjbGFzcyB0byBoZWxwIGNyZWF0ZSB0aG9zZSBtZXRob2RzXG5mcm9tIGEgYmFzZSBzZXQgb2YgYGBfX2dldGl0ZW1fXygpYGAsIGBgX19zZXRpdGVtX18oKWBgLFxuYGBfX2RlbGl0ZW1fXygpYGAsIGFuZCBgYGtleXMoKWBgLiBNdXRhYmxlIHNlcXVlbmNlcyBzaG91bGQgcHJvdmlkZVxubWV0aG9kcyBgYGFwcGVuZCgpYGAsIGBgY291bnQoKWBgLCBgYGluZGV4KClgYCwgYGBleHRlbmQoKWBgLFxuYGBpbnNlcnQoKWBgLCBgYHBvcCgpYGAsIGBgcmVtb3ZlKClgYCwgYGByZXZlcnNlKClgYCBhbmQgYGBzb3J0KClgYCxcbmxpa2UgUHl0aG9uIHN0YW5kYXJkIGxpc3Qgb2JqZWN0cy4gIEZpbmFsbHksIHNlcXVlbmNlIHR5cGVzIHNob3VsZFxuaW1wbGVtZW50IGFkZGl0aW9uIChtZWFuaW5nIGNvbmNhdGVuYXRpb24pIGFuZCBtdWx0aXBsaWNhdGlvbiAobWVhbmluZ1xucmVwZXRpdGlvbikgYnkgZGVmaW5pbmcgdGhlIG1ldGhvZHMgYGBfX2FkZF9fKClgYCwgYGBfX3JhZGRfXygpYGAsXG5gYF9faWFkZF9fKClgYCwgYGBfX211bF9fKClgYCwgYGBfX3JtdWxfXygpYGAgYW5kIGBgX19pbXVsX18oKWBgXG5kZXNjcmliZWQgYmVsb3c7IHRoZXkgc2hvdWxkIG5vdCBkZWZpbmUgb3RoZXIgbnVtZXJpY2FsIG9wZXJhdG9ycy4gIEl0XG5pcyByZWNvbW1lbmRlZCB0aGF0IGJvdGggbWFwcGluZ3MgYW5kIHNlcXVlbmNlcyBpbXBsZW1lbnQgdGhlXG5gYF9fY29udGFpbnNfXygpYGAgbWV0aG9kIHRvIGFsbG93IGVmZmljaWVudCB1c2Ugb2YgdGhlIGBgaW5gYFxub3BlcmF0b3I7IGZvciBtYXBwaW5ncywgYGBpbmBgIHNob3VsZCBzZWFyY2ggdGhlIG1hcHBpbmdcJ3Mga2V5czsgZm9yXG5zZXF1ZW5jZXMsIGl0IHNob3VsZCBzZWFyY2ggdGhyb3VnaCB0aGUgdmFsdWVzLiAgSXQgaXMgZnVydGhlclxucmVjb21tZW5kZWQgdGhhdCBib3RoIG1hcHBpbmdzIGFuZCBzZXF1ZW5jZXMgaW1wbGVtZW50IHRoZVxuYGBfX2l0ZXJfXygpYGAgbWV0aG9kIHRvIGFsbG93IGVmZmljaWVudCBpdGVyYXRpb24gdGhyb3VnaCB0aGVcbmNvbnRhaW5lcjsgZm9yIG1hcHBpbmdzLCBgYF9faXRlcl9fKClgYCBzaG91bGQgYmUgdGhlIHNhbWUgYXNcbmBga2V5cygpYGA7IGZvciBzZXF1ZW5jZXMsIGl0IHNob3VsZCBpdGVyYXRlIHRocm91Z2ggdGhlIHZhbHVlcy5cblxub2JqZWN0Ll9fbGVuX18oc2VsZilcblxuICAgQ2FsbGVkIHRvIGltcGxlbWVudCB0aGUgYnVpbHQtaW4gZnVuY3Rpb24gYGBsZW4oKWBgLiAgU2hvdWxkIHJldHVyblxuICAgdGhlIGxlbmd0aCBvZiB0aGUgb2JqZWN0LCBhbiBpbnRlZ2VyIGBgPj1gYCAwLiAgQWxzbywgYW4gb2JqZWN0XG4gICB0aGF0IGRvZXNuXCd0IGRlZmluZSBhIGBgX19ib29sX18oKWBgIG1ldGhvZCBhbmQgd2hvc2UgYGBfX2xlbl9fKClgYFxuICAgbWV0aG9kIHJldHVybnMgemVybyBpcyBjb25zaWRlcmVkIHRvIGJlIGZhbHNlIGluIGEgQm9vbGVhbiBjb250ZXh0LlxuXG5Ob3RlOiBTbGljaW5nIGlzIGRvbmUgZXhjbHVzaXZlbHkgd2l0aCB0aGUgZm9sbG93aW5nIHRocmVlIG1ldGhvZHMuICBBXG4gIGNhbGwgbGlrZVxuXG4gICAgIGFbMToyXSA9IGJcblxuICBpcyB0cmFuc2xhdGVkIHRvXG5cbiAgICAgYVtzbGljZSgxLCAyLCBOb25lKV0gPSBiXG5cbiAgYW5kIHNvIGZvcnRoLiAgTWlzc2luZyBzbGljZSBpdGVtcyBhcmUgYWx3YXlzIGZpbGxlZCBpbiB3aXRoXG4gIGBgTm9uZWBgLlxuXG5vYmplY3QuX19nZXRpdGVtX18oc2VsZiwga2V5KVxuXG4gICBDYWxsZWQgdG8gaW1wbGVtZW50IGV2YWx1YXRpb24gb2YgYGBzZWxmW2tleV1gYC4gRm9yIHNlcXVlbmNlXG4gICB0eXBlcywgdGhlIGFjY2VwdGVkIGtleXMgc2hvdWxkIGJlIGludGVnZXJzIGFuZCBzbGljZSBvYmplY3RzLlxuICAgTm90ZSB0aGF0IHRoZSBzcGVjaWFsIGludGVycHJldGF0aW9uIG9mIG5lZ2F0aXZlIGluZGV4ZXMgKGlmIHRoZVxuICAgY2xhc3Mgd2lzaGVzIHRvIGVtdWxhdGUgYSBzZXF1ZW5jZSB0eXBlKSBpcyB1cCB0byB0aGVcbiAgIGBgX19nZXRpdGVtX18oKWBgIG1ldGhvZC4gSWYgKmtleSogaXMgb2YgYW4gaW5hcHByb3ByaWF0ZSB0eXBlLFxuICAgYGBUeXBlRXJyb3JgYCBtYXkgYmUgcmFpc2VkOyBpZiBvZiBhIHZhbHVlIG91dHNpZGUgdGhlIHNldCBvZlxuICAgaW5kZXhlcyBmb3IgdGhlIHNlcXVlbmNlIChhZnRlciBhbnkgc3BlY2lhbCBpbnRlcnByZXRhdGlvbiBvZlxuICAgbmVnYXRpdmUgdmFsdWVzKSwgYGBJbmRleEVycm9yYGAgc2hvdWxkIGJlIHJhaXNlZC4gRm9yIG1hcHBpbmdcbiAgIHR5cGVzLCBpZiAqa2V5KiBpcyBtaXNzaW5nIChub3QgaW4gdGhlIGNvbnRhaW5lciksIGBgS2V5RXJyb3JgYFxuICAgc2hvdWxkIGJlIHJhaXNlZC5cblxuICAgTm90ZTogYGBmb3JgYCBsb29wcyBleHBlY3QgdGhhdCBhbiBgYEluZGV4RXJyb3JgYCB3aWxsIGJlIHJhaXNlZCBmb3JcbiAgICAgaWxsZWdhbCBpbmRleGVzIHRvIGFsbG93IHByb3BlciBkZXRlY3Rpb24gb2YgdGhlIGVuZCBvZiB0aGVcbiAgICAgc2VxdWVuY2UuXG5cbm9iamVjdC5fX3NldGl0ZW1fXyhzZWxmLCBrZXksIHZhbHVlKVxuXG4gICBDYWxsZWQgdG8gaW1wbGVtZW50IGFzc2lnbm1lbnQgdG8gYGBzZWxmW2tleV1gYC4gIFNhbWUgbm90ZSBhcyBmb3JcbiAgIGBgX19nZXRpdGVtX18oKWBgLiAgVGhpcyBzaG91bGQgb25seSBiZSBpbXBsZW1lbnRlZCBmb3IgbWFwcGluZ3MgaWZcbiAgIHRoZSBvYmplY3RzIHN1cHBvcnQgY2hhbmdlcyB0byB0aGUgdmFsdWVzIGZvciBrZXlzLCBvciBpZiBuZXcga2V5c1xuICAgY2FuIGJlIGFkZGVkLCBvciBmb3Igc2VxdWVuY2VzIGlmIGVsZW1lbnRzIGNhbiBiZSByZXBsYWNlZC4gIFRoZVxuICAgc2FtZSBleGNlcHRpb25zIHNob3VsZCBiZSByYWlzZWQgZm9yIGltcHJvcGVyICprZXkqIHZhbHVlcyBhcyBmb3JcbiAgIHRoZSBgYF9fZ2V0aXRlbV9fKClgYCBtZXRob2QuXG5cbm9iamVjdC5fX2RlbGl0ZW1fXyhzZWxmLCBrZXkpXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgZGVsZXRpb24gb2YgYGBzZWxmW2tleV1gYC4gIFNhbWUgbm90ZSBhcyBmb3JcbiAgIGBgX19nZXRpdGVtX18oKWBgLiAgVGhpcyBzaG91bGQgb25seSBiZSBpbXBsZW1lbnRlZCBmb3IgbWFwcGluZ3MgaWZcbiAgIHRoZSBvYmplY3RzIHN1cHBvcnQgcmVtb3ZhbCBvZiBrZXlzLCBvciBmb3Igc2VxdWVuY2VzIGlmIGVsZW1lbnRzXG4gICBjYW4gYmUgcmVtb3ZlZCBmcm9tIHRoZSBzZXF1ZW5jZS4gIFRoZSBzYW1lIGV4Y2VwdGlvbnMgc2hvdWxkIGJlXG4gICByYWlzZWQgZm9yIGltcHJvcGVyICprZXkqIHZhbHVlcyBhcyBmb3IgdGhlIGBgX19nZXRpdGVtX18oKWBgXG4gICBtZXRob2QuXG5cbm9iamVjdC5fX2l0ZXJfXyhzZWxmKVxuXG4gICBUaGlzIG1ldGhvZCBpcyBjYWxsZWQgd2hlbiBhbiBpdGVyYXRvciBpcyByZXF1aXJlZCBmb3IgYSBjb250YWluZXIuXG4gICBUaGlzIG1ldGhvZCBzaG91bGQgcmV0dXJuIGEgbmV3IGl0ZXJhdG9yIG9iamVjdCB0aGF0IGNhbiBpdGVyYXRlXG4gICBvdmVyIGFsbCB0aGUgb2JqZWN0cyBpbiB0aGUgY29udGFpbmVyLiAgRm9yIG1hcHBpbmdzLCBpdCBzaG91bGRcbiAgIGl0ZXJhdGUgb3ZlciB0aGUga2V5cyBvZiB0aGUgY29udGFpbmVyLCBhbmQgc2hvdWxkIGFsc28gYmUgbWFkZVxuICAgYXZhaWxhYmxlIGFzIHRoZSBtZXRob2QgYGBrZXlzKClgYC5cblxuICAgSXRlcmF0b3Igb2JqZWN0cyBhbHNvIG5lZWQgdG8gaW1wbGVtZW50IHRoaXMgbWV0aG9kOyB0aGV5IGFyZVxuICAgcmVxdWlyZWQgdG8gcmV0dXJuIHRoZW1zZWx2ZXMuICBGb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBpdGVyYXRvclxuICAgb2JqZWN0cywgc2VlICpJdGVyYXRvciBUeXBlcyouXG5cbm9iamVjdC5fX3JldmVyc2VkX18oc2VsZilcblxuICAgQ2FsbGVkIChpZiBwcmVzZW50KSBieSB0aGUgYGByZXZlcnNlZCgpYGAgYnVpbHQtaW4gdG8gaW1wbGVtZW50XG4gICByZXZlcnNlIGl0ZXJhdGlvbi4gIEl0IHNob3VsZCByZXR1cm4gYSBuZXcgaXRlcmF0b3Igb2JqZWN0IHRoYXRcbiAgIGl0ZXJhdGVzIG92ZXIgYWxsIHRoZSBvYmplY3RzIGluIHRoZSBjb250YWluZXIgaW4gcmV2ZXJzZSBvcmRlci5cblxuICAgSWYgdGhlIGBgX19yZXZlcnNlZF9fKClgYCBtZXRob2QgaXMgbm90IHByb3ZpZGVkLCB0aGVcbiAgIGBgcmV2ZXJzZWQoKWBgIGJ1aWx0LWluIHdpbGwgZmFsbCBiYWNrIHRvIHVzaW5nIHRoZSBzZXF1ZW5jZVxuICAgcHJvdG9jb2wgKGBgX19sZW5fXygpYGAgYW5kIGBgX19nZXRpdGVtX18oKWBgKS4gIE9iamVjdHMgdGhhdFxuICAgc3VwcG9ydCB0aGUgc2VxdWVuY2UgcHJvdG9jb2wgc2hvdWxkIG9ubHkgcHJvdmlkZVxuICAgYGBfX3JldmVyc2VkX18oKWBgIGlmIHRoZXkgY2FuIHByb3ZpZGUgYW4gaW1wbGVtZW50YXRpb24gdGhhdCBpc1xuICAgbW9yZSBlZmZpY2llbnQgdGhhbiB0aGUgb25lIHByb3ZpZGVkIGJ5IGBgcmV2ZXJzZWQoKWBgLlxuXG5UaGUgbWVtYmVyc2hpcCB0ZXN0IG9wZXJhdG9ycyAoYGBpbmBgIGFuZCBgYG5vdCBpbmBgKSBhcmUgbm9ybWFsbHlcbmltcGxlbWVudGVkIGFzIGFuIGl0ZXJhdGlvbiB0aHJvdWdoIGEgc2VxdWVuY2UuICBIb3dldmVyLCBjb250YWluZXJcbm9iamVjdHMgY2FuIHN1cHBseSB0aGUgZm9sbG93aW5nIHNwZWNpYWwgbWV0aG9kIHdpdGggYSBtb3JlIGVmZmljaWVudFxuaW1wbGVtZW50YXRpb24sIHdoaWNoIGFsc28gZG9lcyBub3QgcmVxdWlyZSB0aGUgb2JqZWN0IGJlIGEgc2VxdWVuY2UuXG5cbm9iamVjdC5fX2NvbnRhaW5zX18oc2VsZiwgaXRlbSlcblxuICAgQ2FsbGVkIHRvIGltcGxlbWVudCBtZW1iZXJzaGlwIHRlc3Qgb3BlcmF0b3JzLiAgU2hvdWxkIHJldHVybiB0cnVlXG4gICBpZiAqaXRlbSogaXMgaW4gKnNlbGYqLCBmYWxzZSBvdGhlcndpc2UuICBGb3IgbWFwcGluZyBvYmplY3RzLCB0aGlzXG4gICBzaG91bGQgY29uc2lkZXIgdGhlIGtleXMgb2YgdGhlIG1hcHBpbmcgcmF0aGVyIHRoYW4gdGhlIHZhbHVlcyBvclxuICAgdGhlIGtleS1pdGVtIHBhaXJzLlxuXG4gICBGb3Igb2JqZWN0cyB0aGF0IGRvblwndCBkZWZpbmUgYGBfX2NvbnRhaW5zX18oKWBgLCB0aGUgbWVtYmVyc2hpcFxuICAgdGVzdCBmaXJzdCB0cmllcyBpdGVyYXRpb24gdmlhIGBgX19pdGVyX18oKWBgLCB0aGVuIHRoZSBvbGRcbiAgIHNlcXVlbmNlIGl0ZXJhdGlvbiBwcm90b2NvbCB2aWEgYGBfX2dldGl0ZW1fXygpYGAsIHNlZSAqdGhpc1xuICAgc2VjdGlvbiBpbiB0aGUgbGFuZ3VhZ2UgcmVmZXJlbmNlKi5cblxuXG5FbXVsYXRpbmcgbnVtZXJpYyB0eXBlc1xuPT09PT09PT09PT09PT09PT09PT09PT1cblxuVGhlIGZvbGxvd2luZyBtZXRob2RzIGNhbiBiZSBkZWZpbmVkIHRvIGVtdWxhdGUgbnVtZXJpYyBvYmplY3RzLlxuTWV0aG9kcyBjb3JyZXNwb25kaW5nIHRvIG9wZXJhdGlvbnMgdGhhdCBhcmUgbm90IHN1cHBvcnRlZCBieSB0aGVcbnBhcnRpY3VsYXIga2luZCBvZiBudW1iZXIgaW1wbGVtZW50ZWQgKGUuZy4sIGJpdHdpc2Ugb3BlcmF0aW9ucyBmb3Jcbm5vbi1pbnRlZ3JhbCBudW1iZXJzKSBzaG91bGQgYmUgbGVmdCB1bmRlZmluZWQuXG5cbm9iamVjdC5fX2FkZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fc3ViX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19tdWxfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX3RydWVkaXZfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2Zsb29yZGl2X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19tb2RfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2Rpdm1vZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcG93X18oc2VsZiwgb3RoZXJbLCBtb2R1bG9dKVxub2JqZWN0Ll9fbHNoaWZ0X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19yc2hpZnRfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2FuZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9feG9yX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19vcl9fKHNlbGYsIG90aGVyKVxuXG4gICBUaGVzZSBtZXRob2RzIGFyZSBjYWxsZWQgdG8gaW1wbGVtZW50IHRoZSBiaW5hcnkgYXJpdGhtZXRpY1xuICAgb3BlcmF0aW9ucyAoYGArYGAsIGBgLWBgLCBgYCpgYCwgYGAvYGAsIGBgLy9gYCwgYGAlYGAsXG4gICBgYGRpdm1vZCgpYGAsIGBgcG93KClgYCwgYGAqKmBgLCBgYDw8YGAsIGBgPj5gYCwgYGAmYGAsIGBgXmBgLFxuICAgYGB8YGApLiAgRm9yIGluc3RhbmNlLCB0byBldmFsdWF0ZSB0aGUgZXhwcmVzc2lvbiBgYHggKyB5YGAsIHdoZXJlXG4gICAqeCogaXMgYW4gaW5zdGFuY2Ugb2YgYSBjbGFzcyB0aGF0IGhhcyBhbiBgYF9fYWRkX18oKWBgIG1ldGhvZCxcbiAgIGBgeC5fX2FkZF9fKHkpYGAgaXMgY2FsbGVkLiAgVGhlIGBgX19kaXZtb2RfXygpYGAgbWV0aG9kIHNob3VsZCBiZVxuICAgdGhlIGVxdWl2YWxlbnQgdG8gdXNpbmcgYGBfX2Zsb29yZGl2X18oKWBgIGFuZCBgYF9fbW9kX18oKWBgOyBpdFxuICAgc2hvdWxkIG5vdCBiZSByZWxhdGVkIHRvIGBgX190cnVlZGl2X18oKWBgLiAgTm90ZSB0aGF0XG4gICBgYF9fcG93X18oKWBgIHNob3VsZCBiZSBkZWZpbmVkIHRvIGFjY2VwdCBhbiBvcHRpb25hbCB0aGlyZFxuICAgYXJndW1lbnQgaWYgdGhlIHRlcm5hcnkgdmVyc2lvbiBvZiB0aGUgYnVpbHQtaW4gYGBwb3coKWBgIGZ1bmN0aW9uXG4gICBpcyB0byBiZSBzdXBwb3J0ZWQuXG5cbiAgIElmIG9uZSBvZiB0aG9zZSBtZXRob2RzIGRvZXMgbm90IHN1cHBvcnQgdGhlIG9wZXJhdGlvbiB3aXRoIHRoZVxuICAgc3VwcGxpZWQgYXJndW1lbnRzLCBpdCBzaG91bGQgcmV0dXJuIGBgTm90SW1wbGVtZW50ZWRgYC5cblxub2JqZWN0Ll9fcmFkZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcnN1Yl9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcm11bF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcnRydWVkaXZfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX3JmbG9vcmRpdl9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcm1vZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcmRpdm1vZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcnBvd19fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcmxzaGlmdF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcnJzaGlmdF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcmFuZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcnhvcl9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcm9yX18oc2VsZiwgb3RoZXIpXG5cbiAgIFRoZXNlIG1ldGhvZHMgYXJlIGNhbGxlZCB0byBpbXBsZW1lbnQgdGhlIGJpbmFyeSBhcml0aG1ldGljXG4gICBvcGVyYXRpb25zIChgYCtgYCwgYGAtYGAsIGBgKmBgLCBgYC9gYCwgYGAvL2BgLCBgYCVgYCxcbiAgIGBgZGl2bW9kKClgYCwgYGBwb3coKWBgLCBgYCoqYGAsIGBgPDxgYCwgYGA+PmBgLCBgYCZgYCwgYGBeYGAsXG4gICBgYHxgYCkgd2l0aCByZWZsZWN0ZWQgKHN3YXBwZWQpIG9wZXJhbmRzLiBUaGVzZSBmdW5jdGlvbnMgYXJlIG9ubHlcbiAgIGNhbGxlZCBpZiB0aGUgbGVmdCBvcGVyYW5kIGRvZXMgbm90IHN1cHBvcnQgdGhlIGNvcnJlc3BvbmRpbmdcbiAgIG9wZXJhdGlvbiBhbmQgdGhlIG9wZXJhbmRzIGFyZSBvZiBkaWZmZXJlbnQgdHlwZXMuIFsyXSAgRm9yXG4gICBpbnN0YW5jZSwgdG8gZXZhbHVhdGUgdGhlIGV4cHJlc3Npb24gYGB4IC0geWBgLCB3aGVyZSAqeSogaXMgYW5cbiAgIGluc3RhbmNlIG9mIGEgY2xhc3MgdGhhdCBoYXMgYW4gYGBfX3JzdWJfXygpYGAgbWV0aG9kLFxuICAgYGB5Ll9fcnN1Yl9fKHgpYGAgaXMgY2FsbGVkIGlmIGBgeC5fX3N1Yl9fKHkpYGAgcmV0dXJuc1xuICAgKk5vdEltcGxlbWVudGVkKi5cblxuICAgTm90ZSB0aGF0IHRlcm5hcnkgYGBwb3coKWBgIHdpbGwgbm90IHRyeSBjYWxsaW5nIGBgX19ycG93X18oKWBgXG4gICAodGhlIGNvZXJjaW9uIHJ1bGVzIHdvdWxkIGJlY29tZSB0b28gY29tcGxpY2F0ZWQpLlxuXG4gICBOb3RlOiBJZiB0aGUgcmlnaHQgb3BlcmFuZFwncyB0eXBlIGlzIGEgc3ViY2xhc3Mgb2YgdGhlIGxlZnQgb3BlcmFuZFwnc1xuICAgICB0eXBlIGFuZCB0aGF0IHN1YmNsYXNzIHByb3ZpZGVzIHRoZSByZWZsZWN0ZWQgbWV0aG9kIGZvciB0aGVcbiAgICAgb3BlcmF0aW9uLCB0aGlzIG1ldGhvZCB3aWxsIGJlIGNhbGxlZCBiZWZvcmUgdGhlIGxlZnQgb3BlcmFuZFwnc1xuICAgICBub24tcmVmbGVjdGVkIG1ldGhvZC4gIFRoaXMgYmVoYXZpb3IgYWxsb3dzIHN1YmNsYXNzZXMgdG9cbiAgICAgb3ZlcnJpZGUgdGhlaXIgYW5jZXN0b3JzXCcgb3BlcmF0aW9ucy5cblxub2JqZWN0Ll9faWFkZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faXN1Yl9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faW11bF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faXRydWVkaXZfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2lmbG9vcmRpdl9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faW1vZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faXBvd19fKHNlbGYsIG90aGVyWywgbW9kdWxvXSlcbm9iamVjdC5fX2lsc2hpZnRfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2lyc2hpZnRfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2lhbmRfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2l4b3JfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2lvcl9fKHNlbGYsIG90aGVyKVxuXG4gICBUaGVzZSBtZXRob2RzIGFyZSBjYWxsZWQgdG8gaW1wbGVtZW50IHRoZSBhdWdtZW50ZWQgYXJpdGhtZXRpY1xuICAgYXNzaWdubWVudHMgKGBgKz1gYCwgYGAtPWBgLCBgYCo9YGAsIGBgLz1gYCwgYGAvLz1gYCwgYGAlPWBgLFxuICAgYGAqKj1gYCwgYGA8PD1gYCwgYGA+Pj1gYCwgYGAmPWBgLCBgYF49YGAsIGBgfD1gYCkuICBUaGVzZSBtZXRob2RzXG4gICBzaG91bGQgYXR0ZW1wdCB0byBkbyB0aGUgb3BlcmF0aW9uIGluLXBsYWNlIChtb2RpZnlpbmcgKnNlbGYqKSBhbmRcbiAgIHJldHVybiB0aGUgcmVzdWx0ICh3aGljaCBjb3VsZCBiZSwgYnV0IGRvZXMgbm90IGhhdmUgdG8gYmUsXG4gICAqc2VsZiopLiAgSWYgYSBzcGVjaWZpYyBtZXRob2QgaXMgbm90IGRlZmluZWQsIHRoZSBhdWdtZW50ZWRcbiAgIGFzc2lnbm1lbnQgZmFsbHMgYmFjayB0byB0aGUgbm9ybWFsIG1ldGhvZHMuICBGb3IgaW5zdGFuY2UsIHRvXG4gICBleGVjdXRlIHRoZSBzdGF0ZW1lbnQgYGB4ICs9IHlgYCwgd2hlcmUgKngqIGlzIGFuIGluc3RhbmNlIG9mIGFcbiAgIGNsYXNzIHRoYXQgaGFzIGFuIGBgX19pYWRkX18oKWBgIG1ldGhvZCwgYGB4Ll9faWFkZF9fKHkpYGAgaXNcbiAgIGNhbGxlZC4gIElmICp4KiBpcyBhbiBpbnN0YW5jZSBvZiBhIGNsYXNzIHRoYXQgZG9lcyBub3QgZGVmaW5lIGFcbiAgIGBgX19pYWRkX18oKWBgIG1ldGhvZCwgYGB4Ll9fYWRkX18oeSlgYCBhbmQgYGB5Ll9fcmFkZF9fKHgpYGAgYXJlXG4gICBjb25zaWRlcmVkLCBhcyB3aXRoIHRoZSBldmFsdWF0aW9uIG9mIGBgeCArIHlgYC5cblxub2JqZWN0Ll9fbmVnX18oc2VsZilcbm9iamVjdC5fX3Bvc19fKHNlbGYpXG5vYmplY3QuX19hYnNfXyhzZWxmKVxub2JqZWN0Ll9faW52ZXJ0X18oc2VsZilcblxuICAgQ2FsbGVkIHRvIGltcGxlbWVudCB0aGUgdW5hcnkgYXJpdGhtZXRpYyBvcGVyYXRpb25zIChgYC1gYCwgYGArYGAsXG4gICBgYGFicygpYGAgYW5kIGBgfmBgKS5cblxub2JqZWN0Ll9fY29tcGxleF9fKHNlbGYpXG5vYmplY3QuX19pbnRfXyhzZWxmKVxub2JqZWN0Ll9fZmxvYXRfXyhzZWxmKVxub2JqZWN0Ll9fcm91bmRfXyhzZWxmWywgbl0pXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgdGhlIGJ1aWx0LWluIGZ1bmN0aW9ucyBgYGNvbXBsZXgoKWBgLFxuICAgYGBpbnQoKWBgLCBgYGZsb2F0KClgYCBhbmQgYGByb3VuZCgpYGAuICBTaG91bGQgcmV0dXJuIGEgdmFsdWUgb2ZcbiAgIHRoZSBhcHByb3ByaWF0ZSB0eXBlLlxuXG5vYmplY3QuX19pbmRleF9fKHNlbGYpXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgYGBvcGVyYXRvci5pbmRleCgpYGAuICBBbHNvIGNhbGxlZCB3aGVuZXZlclxuICAgUHl0aG9uIG5lZWRzIGFuIGludGVnZXIgb2JqZWN0IChzdWNoIGFzIGluIHNsaWNpbmcsIG9yIGluIHRoZVxuICAgYnVpbHQtaW4gYGBiaW4oKWBgLCBgYGhleCgpYGAgYW5kIGBgb2N0KClgYCBmdW5jdGlvbnMpLiBNdXN0IHJldHVyblxuICAgYW4gaW50ZWdlci5cblxuXG5XaXRoIFN0YXRlbWVudCBDb250ZXh0IE1hbmFnZXJzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkEgKmNvbnRleHQgbWFuYWdlciogaXMgYW4gb2JqZWN0IHRoYXQgZGVmaW5lcyB0aGUgcnVudGltZSBjb250ZXh0IHRvXG5iZSBlc3RhYmxpc2hlZCB3aGVuIGV4ZWN1dGluZyBhIGBgd2l0aGBgIHN0YXRlbWVudC4gVGhlIGNvbnRleHRcbm1hbmFnZXIgaGFuZGxlcyB0aGUgZW50cnkgaW50bywgYW5kIHRoZSBleGl0IGZyb20sIHRoZSBkZXNpcmVkIHJ1bnRpbWVcbmNvbnRleHQgZm9yIHRoZSBleGVjdXRpb24gb2YgdGhlIGJsb2NrIG9mIGNvZGUuICBDb250ZXh0IG1hbmFnZXJzIGFyZVxubm9ybWFsbHkgaW52b2tlZCB1c2luZyB0aGUgYGB3aXRoYGAgc3RhdGVtZW50IChkZXNjcmliZWQgaW4gc2VjdGlvblxuKlRoZSB3aXRoIHN0YXRlbWVudCopLCBidXQgY2FuIGFsc28gYmUgdXNlZCBieSBkaXJlY3RseSBpbnZva2luZyB0aGVpclxubWV0aG9kcy5cblxuVHlwaWNhbCB1c2VzIG9mIGNvbnRleHQgbWFuYWdlcnMgaW5jbHVkZSBzYXZpbmcgYW5kIHJlc3RvcmluZyB2YXJpb3VzXG5raW5kcyBvZiBnbG9iYWwgc3RhdGUsIGxvY2tpbmcgYW5kIHVubG9ja2luZyByZXNvdXJjZXMsIGNsb3Npbmcgb3BlbmVkXG5maWxlcywgZXRjLlxuXG5Gb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBjb250ZXh0IG1hbmFnZXJzLCBzZWUgKkNvbnRleHQgTWFuYWdlciBUeXBlcyouXG5cbm9iamVjdC5fX2VudGVyX18oc2VsZilcblxuICAgRW50ZXIgdGhlIHJ1bnRpbWUgY29udGV4dCByZWxhdGVkIHRvIHRoaXMgb2JqZWN0LiBUaGUgYGB3aXRoYGBcbiAgIHN0YXRlbWVudCB3aWxsIGJpbmQgdGhpcyBtZXRob2RcJ3MgcmV0dXJuIHZhbHVlIHRvIHRoZSB0YXJnZXQocylcbiAgIHNwZWNpZmllZCBpbiB0aGUgYGBhc2BgIGNsYXVzZSBvZiB0aGUgc3RhdGVtZW50LCBpZiBhbnkuXG5cbm9iamVjdC5fX2V4aXRfXyhzZWxmLCBleGNfdHlwZSwgZXhjX3ZhbHVlLCB0cmFjZWJhY2spXG5cbiAgIEV4aXQgdGhlIHJ1bnRpbWUgY29udGV4dCByZWxhdGVkIHRvIHRoaXMgb2JqZWN0LiBUaGUgcGFyYW1ldGVyc1xuICAgZGVzY3JpYmUgdGhlIGV4Y2VwdGlvbiB0aGF0IGNhdXNlZCB0aGUgY29udGV4dCB0byBiZSBleGl0ZWQuIElmIHRoZVxuICAgY29udGV4dCB3YXMgZXhpdGVkIHdpdGhvdXQgYW4gZXhjZXB0aW9uLCBhbGwgdGhyZWUgYXJndW1lbnRzIHdpbGxcbiAgIGJlIGBgTm9uZWBgLlxuXG4gICBJZiBhbiBleGNlcHRpb24gaXMgc3VwcGxpZWQsIGFuZCB0aGUgbWV0aG9kIHdpc2hlcyB0byBzdXBwcmVzcyB0aGVcbiAgIGV4Y2VwdGlvbiAoaS5lLiwgcHJldmVudCBpdCBmcm9tIGJlaW5nIHByb3BhZ2F0ZWQpLCBpdCBzaG91bGRcbiAgIHJldHVybiBhIHRydWUgdmFsdWUuIE90aGVyd2lzZSwgdGhlIGV4Y2VwdGlvbiB3aWxsIGJlIHByb2Nlc3NlZFxuICAgbm9ybWFsbHkgdXBvbiBleGl0IGZyb20gdGhpcyBtZXRob2QuXG5cbiAgIE5vdGUgdGhhdCBgYF9fZXhpdF9fKClgYCBtZXRob2RzIHNob3VsZCBub3QgcmVyYWlzZSB0aGUgcGFzc2VkLWluXG4gICBleGNlcHRpb247IHRoaXMgaXMgdGhlIGNhbGxlclwncyByZXNwb25zaWJpbGl0eS5cblxuU2VlIGFsc286XG5cbiAgICoqUEVQIDAzNDMqKiAtIFRoZSAid2l0aCIgc3RhdGVtZW50XG4gICAgICBUaGUgc3BlY2lmaWNhdGlvbiwgYmFja2dyb3VuZCwgYW5kIGV4YW1wbGVzIGZvciB0aGUgUHl0aG9uXG4gICAgICBgYHdpdGhgYCBzdGF0ZW1lbnQuXG5cblxuU3BlY2lhbCBtZXRob2QgbG9va3VwXG49PT09PT09PT09PT09PT09PT09PT1cblxuRm9yIGN1c3RvbSBjbGFzc2VzLCBpbXBsaWNpdCBpbnZvY2F0aW9ucyBvZiBzcGVjaWFsIG1ldGhvZHMgYXJlIG9ubHlcbmd1YXJhbnRlZWQgdG8gd29yayBjb3JyZWN0bHkgaWYgZGVmaW5lZCBvbiBhbiBvYmplY3RcJ3MgdHlwZSwgbm90IGluXG50aGUgb2JqZWN0XCdzIGluc3RhbmNlIGRpY3Rpb25hcnkuICBUaGF0IGJlaGF2aW91ciBpcyB0aGUgcmVhc29uIHdoeVxudGhlIGZvbGxvd2luZyBjb2RlIHJhaXNlcyBhbiBleGNlcHRpb246XG5cbiAgID4+PiBjbGFzcyBDOlxuICAgLi4uICAgICBwYXNzXG4gICAuLi5cbiAgID4+PiBjID0gQygpXG4gICA+Pj4gYy5fX2xlbl9fID0gbGFtYmRhOiA1XG4gICA+Pj4gbGVuKGMpXG4gICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6XG4gICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDEsIGluIDxtb2R1bGU+XG4gICBUeXBlRXJyb3I6IG9iamVjdCBvZiB0eXBlIFwnQ1wnIGhhcyBubyBsZW4oKVxuXG5UaGUgcmF0aW9uYWxlIGJlaGluZCB0aGlzIGJlaGF2aW91ciBsaWVzIHdpdGggYSBudW1iZXIgb2Ygc3BlY2lhbFxubWV0aG9kcyBzdWNoIGFzIGBgX19oYXNoX18oKWBgIGFuZCBgYF9fcmVwcl9fKClgYCB0aGF0IGFyZSBpbXBsZW1lbnRlZFxuYnkgYWxsIG9iamVjdHMsIGluY2x1ZGluZyB0eXBlIG9iamVjdHMuIElmIHRoZSBpbXBsaWNpdCBsb29rdXAgb2ZcbnRoZXNlIG1ldGhvZHMgdXNlZCB0aGUgY29udmVudGlvbmFsIGxvb2t1cCBwcm9jZXNzLCB0aGV5IHdvdWxkIGZhaWxcbndoZW4gaW52b2tlZCBvbiB0aGUgdHlwZSBvYmplY3QgaXRzZWxmOlxuXG4gICA+Pj4gMSAuX19oYXNoX18oKSA9PSBoYXNoKDEpXG4gICBUcnVlXG4gICA+Pj4gaW50Ll9faGFzaF9fKCkgPT0gaGFzaChpbnQpXG4gICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6XG4gICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDEsIGluIDxtb2R1bGU+XG4gICBUeXBlRXJyb3I6IGRlc2NyaXB0b3IgXCdfX2hhc2hfX1wnIG9mIFwnaW50XCcgb2JqZWN0IG5lZWRzIGFuIGFyZ3VtZW50XG5cbkluY29ycmVjdGx5IGF0dGVtcHRpbmcgdG8gaW52b2tlIGFuIHVuYm91bmQgbWV0aG9kIG9mIGEgY2xhc3MgaW4gdGhpc1xud2F5IGlzIHNvbWV0aW1lcyByZWZlcnJlZCB0byBhcyBcJ21ldGFjbGFzcyBjb25mdXNpb25cJywgYW5kIGlzIGF2b2lkZWRcbmJ5IGJ5cGFzc2luZyB0aGUgaW5zdGFuY2Ugd2hlbiBsb29raW5nIHVwIHNwZWNpYWwgbWV0aG9kczpcblxuICAgPj4+IHR5cGUoMSkuX19oYXNoX18oMSkgPT0gaGFzaCgxKVxuICAgVHJ1ZVxuICAgPj4+IHR5cGUoaW50KS5fX2hhc2hfXyhpbnQpID09IGhhc2goaW50KVxuICAgVHJ1ZVxuXG5JbiBhZGRpdGlvbiB0byBieXBhc3NpbmcgYW55IGluc3RhbmNlIGF0dHJpYnV0ZXMgaW4gdGhlIGludGVyZXN0IG9mXG5jb3JyZWN0bmVzcywgaW1wbGljaXQgc3BlY2lhbCBtZXRob2QgbG9va3VwIGdlbmVyYWxseSBhbHNvIGJ5cGFzc2VzXG50aGUgYGBfX2dldGF0dHJpYnV0ZV9fKClgYCBtZXRob2QgZXZlbiBvZiB0aGUgb2JqZWN0XCdzIG1ldGFjbGFzczpcblxuICAgPj4+IGNsYXNzIE1ldGEodHlwZSk6XG4gICAuLi4gICAgZGVmIF9fZ2V0YXR0cmlidXRlX18oKmFyZ3MpOlxuICAgLi4uICAgICAgIHByaW50KCJNZXRhY2xhc3MgZ2V0YXR0cmlidXRlIGludm9rZWQiKVxuICAgLi4uICAgICAgIHJldHVybiB0eXBlLl9fZ2V0YXR0cmlidXRlX18oKmFyZ3MpXG4gICAuLi5cbiAgID4+PiBjbGFzcyBDKG9iamVjdCwgbWV0YWNsYXNzPU1ldGEpOlxuICAgLi4uICAgICBkZWYgX19sZW5fXyhzZWxmKTpcbiAgIC4uLiAgICAgICAgIHJldHVybiAxMFxuICAgLi4uICAgICBkZWYgX19nZXRhdHRyaWJ1dGVfXygqYXJncyk6XG4gICAuLi4gICAgICAgICBwcmludCgiQ2xhc3MgZ2V0YXR0cmlidXRlIGludm9rZWQiKVxuICAgLi4uICAgICAgICAgcmV0dXJuIG9iamVjdC5fX2dldGF0dHJpYnV0ZV9fKCphcmdzKVxuICAgLi4uXG4gICA+Pj4gYyA9IEMoKVxuICAgPj4+IGMuX19sZW5fXygpICAgICAgICAgICAgICAgICAjIEV4cGxpY2l0IGxvb2t1cCB2aWEgaW5zdGFuY2VcbiAgIENsYXNzIGdldGF0dHJpYnV0ZSBpbnZva2VkXG4gICAxMFxuICAgPj4+IHR5cGUoYykuX19sZW5fXyhjKSAgICAgICAgICAjIEV4cGxpY2l0IGxvb2t1cCB2aWEgdHlwZVxuICAgTWV0YWNsYXNzIGdldGF0dHJpYnV0ZSBpbnZva2VkXG4gICAxMFxuICAgPj4+IGxlbihjKSAgICAgICAgICAgICAgICAgICAgICAjIEltcGxpY2l0IGxvb2t1cFxuICAgMTBcblxuQnlwYXNzaW5nIHRoZSBgYF9fZ2V0YXR0cmlidXRlX18oKWBgIG1hY2hpbmVyeSBpbiB0aGlzIGZhc2hpb25cbnByb3ZpZGVzIHNpZ25pZmljYW50IHNjb3BlIGZvciBzcGVlZCBvcHRpbWlzYXRpb25zIHdpdGhpbiB0aGVcbmludGVycHJldGVyLCBhdCB0aGUgY29zdCBvZiBzb21lIGZsZXhpYmlsaXR5IGluIHRoZSBoYW5kbGluZyBvZlxuc3BlY2lhbCBtZXRob2RzICh0aGUgc3BlY2lhbCBtZXRob2QgKm11c3QqIGJlIHNldCBvbiB0aGUgY2xhc3Mgb2JqZWN0XG5pdHNlbGYgaW4gb3JkZXIgdG8gYmUgY29uc2lzdGVudGx5IGludm9rZWQgYnkgdGhlIGludGVycHJldGVyKS5cblxuLVsgRm9vdG5vdGVzIF0tXG5cblsxXSBJdCAqaXMqIHBvc3NpYmxlIGluIHNvbWUgY2FzZXMgdG8gY2hhbmdlIGFuIG9iamVjdFwncyB0eXBlLCB1bmRlclxuICAgIGNlcnRhaW4gY29udHJvbGxlZCBjb25kaXRpb25zLiBJdCBnZW5lcmFsbHkgaXNuXCd0IGEgZ29vZCBpZGVhXG4gICAgdGhvdWdoLCBzaW5jZSBpdCBjYW4gbGVhZCB0byBzb21lIHZlcnkgc3RyYW5nZSBiZWhhdmlvdXIgaWYgaXQgaXNcbiAgICBoYW5kbGVkIGluY29ycmVjdGx5LlxuXG5bMl0gRm9yIG9wZXJhbmRzIG9mIHRoZSBzYW1lIHR5cGUsIGl0IGlzIGFzc3VtZWQgdGhhdCBpZiB0aGUgbm9uLVxuICAgIHJlZmxlY3RlZCBtZXRob2QgKHN1Y2ggYXMgYGBfX2FkZF9fKClgYCkgZmFpbHMgdGhlIG9wZXJhdGlvbiBpc1xuICAgIG5vdCBzdXBwb3J0ZWQsIHdoaWNoIGlzIHdoeSB0aGUgcmVmbGVjdGVkIG1ldGhvZCBpcyBub3QgY2FsbGVkLlxuJywKLSAnc3RyaW5nLW1ldGhvZHMnOiAnXG5TdHJpbmcgTWV0aG9kc1xuKioqKioqKioqKioqKipcblxuU3RyaW5nIG9iamVjdHMgc3VwcG9ydCB0aGUgbWV0aG9kcyBsaXN0ZWQgYmVsb3cuXG5cbkluIGFkZGl0aW9uLCBQeXRob25cJ3Mgc3RyaW5ncyBzdXBwb3J0IHRoZSBzZXF1ZW5jZSB0eXBlIG1ldGhvZHNcbmRlc2NyaWJlZCBpbiB0aGUgKlNlcXVlbmNlIFR5cGVzIC0tLSBzdHIsIGJ5dGVzLCBieXRlYXJyYXksIGxpc3QsXG50dXBsZSwgcmFuZ2UqIHNlY3Rpb24uIFRvIG91dHB1dCBmb3JtYXR0ZWQgc3RyaW5ncywgc2VlIHRoZSAqU3RyaW5nXG5Gb3JtYXR0aW5nKiBzZWN0aW9uLiBBbHNvLCBzZWUgdGhlIGBgcmVgYCBtb2R1bGUgZm9yIHN0cmluZyBmdW5jdGlvbnNcbmJhc2VkIG9uIHJlZ3VsYXIgZXhwcmVzc2lvbnMuXG5cbnN0ci5jYXBpdGFsaXplKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggaXRzIGZpcnN0IGNoYXJhY3RlciBjYXBpdGFsaXplZFxuICAgYW5kIHRoZSByZXN0IGxvd2VyY2FzZWQuXG5cbnN0ci5jZW50ZXIod2lkdGhbLCBmaWxsY2hhcl0pXG5cbiAgIFJldHVybiBjZW50ZXJlZCBpbiBhIHN0cmluZyBvZiBsZW5ndGggKndpZHRoKi4gUGFkZGluZyBpcyBkb25lXG4gICB1c2luZyB0aGUgc3BlY2lmaWVkICpmaWxsY2hhciogKGRlZmF1bHQgaXMgYSBzcGFjZSkuXG5cbnN0ci5jb3VudChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gdGhlIG51bWJlciBvZiBub24tb3ZlcmxhcHBpbmcgb2NjdXJyZW5jZXMgb2Ygc3Vic3RyaW5nICpzdWIqXG4gICBpbiB0aGUgcmFuZ2UgWypzdGFydCosICplbmQqXS4gIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZFxuICAgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlIG5vdGF0aW9uLlxuXG5zdHIuZW5jb2RlKGVuY29kaW5nPSJ1dGYtOCIsIGVycm9ycz0ic3RyaWN0IilcblxuICAgUmV0dXJuIGFuIGVuY29kZWQgdmVyc2lvbiBvZiB0aGUgc3RyaW5nIGFzIGEgYnl0ZXMgb2JqZWN0LiBEZWZhdWx0XG4gICBlbmNvZGluZyBpcyBgYFwndXRmLThcJ2BgLiAqZXJyb3JzKiBtYXkgYmUgZ2l2ZW4gdG8gc2V0IGEgZGlmZmVyZW50XG4gICBlcnJvciBoYW5kbGluZyBzY2hlbWUuIFRoZSBkZWZhdWx0IGZvciAqZXJyb3JzKiBpcyBgYFwnc3RyaWN0XCdgYCxcbiAgIG1lYW5pbmcgdGhhdCBlbmNvZGluZyBlcnJvcnMgcmFpc2UgYSBgYFVuaWNvZGVFcnJvcmBgLiBPdGhlclxuICAgcG9zc2libGUgdmFsdWVzIGFyZSBgYFwnaWdub3JlXCdgYCwgYGBcJ3JlcGxhY2VcJ2BgLFxuICAgYGBcJ3htbGNoYXJyZWZyZXBsYWNlXCdgYCwgYGBcJ2JhY2tzbGFzaHJlcGxhY2VcJ2BgIGFuZCBhbnkgb3RoZXIgbmFtZVxuICAgcmVnaXN0ZXJlZCB2aWEgYGBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoKWBgLCBzZWUgc2VjdGlvbiAqQ29kZWMgQmFzZVxuICAgQ2xhc3NlcyouIEZvciBhIGxpc3Qgb2YgcG9zc2libGUgZW5jb2RpbmdzLCBzZWUgc2VjdGlvbiAqU3RhbmRhcmRcbiAgIEVuY29kaW5ncyouXG5cbiAgIENoYW5nZWQgaW4gdmVyc2lvbiAzLjE6IFN1cHBvcnQgZm9yIGtleXdvcmQgYXJndW1lbnRzIGFkZGVkLlxuXG5zdHIuZW5kc3dpdGgoc3VmZml4Wywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIHRoZSBzdHJpbmcgZW5kcyB3aXRoIHRoZSBzcGVjaWZpZWQgKnN1ZmZpeCosXG4gICBvdGhlcndpc2UgcmV0dXJuIGBgRmFsc2VgYC4gICpzdWZmaXgqIGNhbiBhbHNvIGJlIGEgdHVwbGUgb2ZcbiAgIHN1ZmZpeGVzIHRvIGxvb2sgZm9yLiAgV2l0aCBvcHRpb25hbCAqc3RhcnQqLCB0ZXN0IGJlZ2lubmluZyBhdFxuICAgdGhhdCBwb3NpdGlvbi4gIFdpdGggb3B0aW9uYWwgKmVuZCosIHN0b3AgY29tcGFyaW5nIGF0IHRoYXRcbiAgIHBvc2l0aW9uLlxuXG5zdHIuZXhwYW5kdGFicyhbdGFic2l6ZV0pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aGVyZSBhbGwgdGFiIGNoYXJhY3RlcnMgYXJlIHJlcGxhY2VkXG4gICBieSB6ZXJvIG9yIG1vcmUgc3BhY2VzLCBkZXBlbmRpbmcgb24gdGhlIGN1cnJlbnQgY29sdW1uIGFuZCB0aGVcbiAgIGdpdmVuIHRhYiBzaXplLiAgVGhlIGNvbHVtbiBudW1iZXIgaXMgcmVzZXQgdG8gemVybyBhZnRlciBlYWNoXG4gICBuZXdsaW5lIG9jY3VycmluZyBpbiB0aGUgc3RyaW5nLiBJZiAqdGFic2l6ZSogaXMgbm90IGdpdmVuLCBhIHRhYlxuICAgc2l6ZSBvZiBgYDhgYCBjaGFyYWN0ZXJzIGlzIGFzc3VtZWQuICBUaGlzIGRvZXNuXCd0IHVuZGVyc3RhbmQgb3RoZXJcbiAgIG5vbi1wcmludGluZyBjaGFyYWN0ZXJzIG9yIGVzY2FwZSBzZXF1ZW5jZXMuXG5cbnN0ci5maW5kKHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiB0aGUgbG93ZXN0IGluZGV4IGluIHRoZSBzdHJpbmcgd2hlcmUgc3Vic3RyaW5nICpzdWIqIGlzXG4gICBmb3VuZCwgc3VjaCB0aGF0ICpzdWIqIGlzIGNvbnRhaW5lZCBpbiB0aGUgc2xpY2UgYGBzW3N0YXJ0OmVuZF1gYC5cbiAgIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZCAqZW5kKiBhcmUgaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2VcbiAgIG5vdGF0aW9uLiAgUmV0dXJuIGBgLTFgYCBpZiAqc3ViKiBpcyBub3QgZm91bmQuXG5cbiAgIE5vdGU6IFRoZSBgYGZpbmQoKWBgIG1ldGhvZCBzaG91bGQgYmUgdXNlZCBvbmx5IGlmIHlvdSBuZWVkIHRvIGtub3cgdGhlXG4gICAgIHBvc2l0aW9uIG9mICpzdWIqLiAgVG8gY2hlY2sgaWYgKnN1YiogaXMgYSBzdWJzdHJpbmcgb3Igbm90LCB1c2VcbiAgICAgdGhlIGBgaW5gYCBvcGVyYXRvcjpcblxuICAgICAgICA+Pj4gXCdQeVwnIGluIFwnUHl0aG9uXCdcbiAgICAgICAgVHJ1ZVxuXG5zdHIuZm9ybWF0KCphcmdzLCAqKmt3YXJncylcblxuICAgUGVyZm9ybSBhIHN0cmluZyBmb3JtYXR0aW5nIG9wZXJhdGlvbi4gIFRoZSBzdHJpbmcgb24gd2hpY2ggdGhpc1xuICAgbWV0aG9kIGlzIGNhbGxlZCBjYW4gY29udGFpbiBsaXRlcmFsIHRleHQgb3IgcmVwbGFjZW1lbnQgZmllbGRzXG4gICBkZWxpbWl0ZWQgYnkgYnJhY2VzIGBge31gYC4gIEVhY2ggcmVwbGFjZW1lbnQgZmllbGQgY29udGFpbnMgZWl0aGVyXG4gICB0aGUgbnVtZXJpYyBpbmRleCBvZiBhIHBvc2l0aW9uYWwgYXJndW1lbnQsIG9yIHRoZSBuYW1lIG9mIGFcbiAgIGtleXdvcmQgYXJndW1lbnQuICBSZXR1cm5zIGEgY29weSBvZiB0aGUgc3RyaW5nIHdoZXJlIGVhY2hcbiAgIHJlcGxhY2VtZW50IGZpZWxkIGlzIHJlcGxhY2VkIHdpdGggdGhlIHN0cmluZyB2YWx1ZSBvZiB0aGVcbiAgIGNvcnJlc3BvbmRpbmcgYXJndW1lbnQuXG5cbiAgID4+PiAiVGhlIHN1bSBvZiAxICsgMiBpcyB7MH0iLmZvcm1hdCgxKzIpXG4gICBcJ1RoZSBzdW0gb2YgMSArIDIgaXMgM1wnXG5cbiAgIFNlZSAqRm9ybWF0IFN0cmluZyBTeW50YXgqIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZSB2YXJpb3VzXG4gICBmb3JtYXR0aW5nIG9wdGlvbnMgdGhhdCBjYW4gYmUgc3BlY2lmaWVkIGluIGZvcm1hdCBzdHJpbmdzLlxuXG5zdHIuZm9ybWF0X21hcChtYXBwaW5nKVxuXG4gICBTaW1pbGFyIHRvIGBgc3RyLmZvcm1hdCgqKm1hcHBpbmcpYGAsIGV4Y2VwdCB0aGF0IGBgbWFwcGluZ2BgIGlzXG4gICB1c2VkIGRpcmVjdGx5IGFuZCBub3QgY29waWVkIHRvIGEgYGBkaWN0YGAgLiAgVGhpcyBpcyB1c2VmdWwgaWYgZm9yXG4gICBleGFtcGxlIGBgbWFwcGluZ2BgIGlzIGEgZGljdCBzdWJjbGFzczpcblxuICAgPj4+IGNsYXNzIERlZmF1bHQoZGljdCk6XG4gICAuLi4gICAgIGRlZiBfX21pc3NpbmdfXyhzZWxmLCBrZXkpOlxuICAgLi4uICAgICAgICAgcmV0dXJuIGtleVxuICAgLi4uXG4gICA+Pj4gXCd7bmFtZX0gd2FzIGJvcm4gaW4ge2NvdW50cnl9XCcuZm9ybWF0X21hcChEZWZhdWx0KG5hbWU9XCdHdWlkb1wnKSlcbiAgIFwnR3VpZG8gd2FzIGJvcm4gaW4gY291bnRyeVwnXG5cbiAgIE5ldyBpbiB2ZXJzaW9uIDMuMi5cblxuc3RyLmluZGV4KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIExpa2UgYGBmaW5kKClgYCwgYnV0IHJhaXNlIGBgVmFsdWVFcnJvcmBgIHdoZW4gdGhlIHN1YnN0cmluZyBpcyBub3RcbiAgIGZvdW5kLlxuXG5zdHIuaXNhbG51bSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGFscGhhbnVtZXJpYyBhbmRcbiAgIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIEEgY2hhcmFjdGVyXG4gICBgYGNgYCBpcyBhbHBoYW51bWVyaWMgaWYgb25lIG9mIHRoZSBmb2xsb3dpbmcgcmV0dXJucyBgYFRydWVgYDpcbiAgIGBgYy5pc2FscGhhKClgYCwgYGBjLmlzZGVjaW1hbCgpYGAsIGBgYy5pc2RpZ2l0KClgYCwgb3JcbiAgIGBgYy5pc251bWVyaWMoKWBgLlxuXG5zdHIuaXNhbHBoYSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGFscGhhYmV0aWMgYW5kXG4gICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBBbHBoYWJldGljXG4gICBjaGFyYWN0ZXJzIGFyZSB0aG9zZSBjaGFyYWN0ZXJzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgY2hhcmFjdGVyXG4gICBkYXRhYmFzZSBhcyAiTGV0dGVyIiwgaS5lLiwgdGhvc2Ugd2l0aCBnZW5lcmFsIGNhdGVnb3J5IHByb3BlcnR5XG4gICBiZWluZyBvbmUgb2YgIkxtIiwgIkx0IiwgIkx1IiwgIkxsIiwgb3IgIkxvIi4gIE5vdGUgdGhhdCB0aGlzIGlzXG4gICBkaWZmZXJlbnQgZnJvbSB0aGUgIkFscGhhYmV0aWMiIHByb3BlcnR5IGRlZmluZWQgaW4gdGhlIFVuaWNvZGVcbiAgIFN0YW5kYXJkLlxuXG5zdHIuaXNkZWNpbWFsKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgZGVjaW1hbCBjaGFyYWN0ZXJzXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiBEZWNpbWFsXG4gICBjaGFyYWN0ZXJzIGFyZSB0aG9zZSBmcm9tIGdlbmVyYWwgY2F0ZWdvcnkgIk5kIi4gVGhpcyBjYXRlZ29yeVxuICAgaW5jbHVkZXMgZGlnaXQgY2hhcmFjdGVycywgYW5kIGFsbCBjaGFyYWN0ZXJzIHRoYXQgY2FuIGJlIHVzZWQgdG9cbiAgIGZvcm0gZGVjaW1hbC1yYWRpeCBudW1iZXJzLCBlLmcuIFUrMDY2MCwgQVJBQklDLUlORElDIERJR0lUIFpFUk8uXG5cbnN0ci5pc2RpZ2l0KClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgZGlnaXRzIGFuZCB0aGVyZSBpc1xuICAgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgRGlnaXRzIGluY2x1ZGUgZGVjaW1hbFxuICAgY2hhcmFjdGVycyBhbmQgZGlnaXRzIHRoYXQgbmVlZCBzcGVjaWFsIGhhbmRsaW5nLCBzdWNoIGFzIHRoZVxuICAgY29tcGF0aWJpbGl0eSBzdXBlcnNjcmlwdCBkaWdpdHMuICBGb3JtYWxseSwgYSBkaWdpdCBpcyBhIGNoYXJhY3RlclxuICAgdGhhdCBoYXMgdGhlIHByb3BlcnR5IHZhbHVlIE51bWVyaWNfVHlwZT1EaWdpdCBvclxuICAgTnVtZXJpY19UeXBlPURlY2ltYWwuXG5cbnN0ci5pc2lkZW50aWZpZXIoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiB0aGUgc3RyaW5nIGlzIGEgdmFsaWQgaWRlbnRpZmllciBhY2NvcmRpbmcgdG8gdGhlXG4gICBsYW5ndWFnZSBkZWZpbml0aW9uLCBzZWN0aW9uICpJZGVudGlmaWVycyBhbmQga2V5d29yZHMqLlxuXG5zdHIuaXNsb3dlcigpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjYXNlZCBjaGFyYWN0ZXJzIFs0XSBpbiB0aGUgc3RyaW5nIGFyZSBsb3dlcmNhc2VcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuXG5cbnN0ci5pc251bWVyaWMoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBudW1lcmljIGNoYXJhY3RlcnMsXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiBOdW1lcmljXG4gICBjaGFyYWN0ZXJzIGluY2x1ZGUgZGlnaXQgY2hhcmFjdGVycywgYW5kIGFsbCBjaGFyYWN0ZXJzIHRoYXQgaGF2ZVxuICAgdGhlIFVuaWNvZGUgbnVtZXJpYyB2YWx1ZSBwcm9wZXJ0eSwgZS5nLiBVKzIxNTUsIFZVTEdBUiBGUkFDVElPTlxuICAgT05FIEZJRlRILiAgRm9ybWFsbHksIG51bWVyaWMgY2hhcmFjdGVycyBhcmUgdGhvc2Ugd2l0aCB0aGVcbiAgIHByb3BlcnR5IHZhbHVlIE51bWVyaWNfVHlwZT1EaWdpdCwgTnVtZXJpY19UeXBlPURlY2ltYWwgb3JcbiAgIE51bWVyaWNfVHlwZT1OdW1lcmljLlxuXG5zdHIuaXNwcmludGFibGUoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBwcmludGFibGUgb3IgdGhlXG4gICBzdHJpbmcgaXMgZW1wdHksIGZhbHNlIG90aGVyd2lzZS4gIE5vbnByaW50YWJsZSBjaGFyYWN0ZXJzIGFyZVxuICAgdGhvc2UgY2hhcmFjdGVycyBkZWZpbmVkIGluIHRoZSBVbmljb2RlIGNoYXJhY3RlciBkYXRhYmFzZSBhc1xuICAgIk90aGVyIiBvciAiU2VwYXJhdG9yIiwgZXhjZXB0aW5nIHRoZSBBU0NJSSBzcGFjZSAoMHgyMCkgd2hpY2ggaXNcbiAgIGNvbnNpZGVyZWQgcHJpbnRhYmxlLiAgKE5vdGUgdGhhdCBwcmludGFibGUgY2hhcmFjdGVycyBpbiB0aGlzXG4gICBjb250ZXh0IGFyZSB0aG9zZSB3aGljaCBzaG91bGQgbm90IGJlIGVzY2FwZWQgd2hlbiBgYHJlcHIoKWBgIGlzXG4gICBpbnZva2VkIG9uIGEgc3RyaW5nLiAgSXQgaGFzIG5vIGJlYXJpbmcgb24gdGhlIGhhbmRsaW5nIG9mIHN0cmluZ3NcbiAgIHdyaXR0ZW4gdG8gYGBzeXMuc3Rkb3V0YGAgb3IgYGBzeXMuc3RkZXJyYGAuKVxuXG5zdHIuaXNzcGFjZSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIHRoZXJlIGFyZSBvbmx5IHdoaXRlc3BhY2UgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgV2hpdGVzcGFjZVxuICAgY2hhcmFjdGVycyAgYXJlIHRob3NlIGNoYXJhY3RlcnMgZGVmaW5lZCBpbiB0aGUgVW5pY29kZSBjaGFyYWN0ZXJcbiAgIGRhdGFiYXNlIGFzICJPdGhlciIgb3IgIlNlcGFyYXRvciIgYW5kIHRob3NlIHdpdGggYmlkaXJlY3Rpb25hbFxuICAgcHJvcGVydHkgYmVpbmcgb25lIG9mICJXUyIsICJCIiwgb3IgIlMiLlxuXG5zdHIuaXN0aXRsZSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIHRoZSBzdHJpbmcgaXMgYSB0aXRsZWNhc2VkIHN0cmluZyBhbmQgdGhlcmUgaXMgYXRcbiAgIGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZvciBleGFtcGxlIHVwcGVyY2FzZSBjaGFyYWN0ZXJzIG1heSBvbmx5XG4gICBmb2xsb3cgdW5jYXNlZCBjaGFyYWN0ZXJzIGFuZCBsb3dlcmNhc2UgY2hhcmFjdGVycyBvbmx5IGNhc2VkIG9uZXMuXG4gICBSZXR1cm4gZmFsc2Ugb3RoZXJ3aXNlLlxuXG5zdHIuaXN1cHBlcigpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjYXNlZCBjaGFyYWN0ZXJzIFs0XSBpbiB0aGUgc3RyaW5nIGFyZSB1cHBlcmNhc2VcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuXG5cbnN0ci5qb2luKGl0ZXJhYmxlKVxuXG4gICBSZXR1cm4gYSBzdHJpbmcgd2hpY2ggaXMgdGhlIGNvbmNhdGVuYXRpb24gb2YgdGhlIHN0cmluZ3MgaW4gdGhlXG4gICAqaXRlcmFibGUqICppdGVyYWJsZSouICBBIGBgVHlwZUVycm9yYGAgd2lsbCBiZSByYWlzZWQgaWYgdGhlcmUgYXJlXG4gICBhbnkgbm9uLXN0cmluZyB2YWx1ZXMgaW4gKml0ZXJhYmxlKiwgaW5jbHVkaW5nIGBgYnl0ZXNgYCBvYmplY3RzLlxuICAgVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGVsZW1lbnRzIGlzIHRoZSBzdHJpbmcgcHJvdmlkaW5nIHRoaXMgbWV0aG9kLlxuXG5zdHIubGp1c3Qod2lkdGhbLCBmaWxsY2hhcl0pXG5cbiAgIFJldHVybiB0aGUgc3RyaW5nIGxlZnQganVzdGlmaWVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLlxuICAgUGFkZGluZyBpcyBkb25lIHVzaW5nIHRoZSBzcGVjaWZpZWQgKmZpbGxjaGFyKiAoZGVmYXVsdCBpcyBhXG4gICBzcGFjZSkuICBUaGUgb3JpZ2luYWwgc3RyaW5nIGlzIHJldHVybmVkIGlmICp3aWR0aCogaXMgbGVzcyB0aGFuIG9yXG4gICBlcXVhbCB0byBgYGxlbihzKWBgLlxuXG5zdHIubG93ZXIoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBhbGwgdGhlIGNhc2VkIGNoYXJhY3RlcnMgWzRdXG4gICBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlLlxuXG5zdHIubHN0cmlwKFtjaGFyc10pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGxlYWRpbmcgY2hhcmFjdGVycyByZW1vdmVkLiAgVGhlXG4gICAqY2hhcnMqIGFyZ3VtZW50IGlzIGEgc3RyaW5nIHNwZWNpZnlpbmcgdGhlIHNldCBvZiBjaGFyYWN0ZXJzIHRvIGJlXG4gICByZW1vdmVkLiAgSWYgb21pdHRlZCBvciBgYE5vbmVgYCwgdGhlICpjaGFycyogYXJndW1lbnQgZGVmYXVsdHMgdG9cbiAgIHJlbW92aW5nIHdoaXRlc3BhY2UuICBUaGUgKmNoYXJzKiBhcmd1bWVudCBpcyBub3QgYSBwcmVmaXg7IHJhdGhlcixcbiAgIGFsbCBjb21iaW5hdGlvbnMgb2YgaXRzIHZhbHVlcyBhcmUgc3RyaXBwZWQ6XG5cbiAgID4+PiBcJyAgIHNwYWNpb3VzICAgXCcubHN0cmlwKClcbiAgIFwnc3BhY2lvdXMgICBcJ1xuICAgPj4+IFwnd3d3LmV4YW1wbGUuY29tXCcubHN0cmlwKFwnY21vd3ouXCcpXG4gICBcJ2V4YW1wbGUuY29tXCdcblxuc3RhdGljIHN0ci5tYWtldHJhbnMoeFssIHlbLCB6XV0pXG5cbiAgIFRoaXMgc3RhdGljIG1ldGhvZCByZXR1cm5zIGEgdHJhbnNsYXRpb24gdGFibGUgdXNhYmxlIGZvclxuICAgYGBzdHIudHJhbnNsYXRlKClgYC5cblxuICAgSWYgdGhlcmUgaXMgb25seSBvbmUgYXJndW1lbnQsIGl0IG11c3QgYmUgYSBkaWN0aW9uYXJ5IG1hcHBpbmdcbiAgIFVuaWNvZGUgb3JkaW5hbHMgKGludGVnZXJzKSBvciBjaGFyYWN0ZXJzIChzdHJpbmdzIG9mIGxlbmd0aCAxKSB0b1xuICAgVW5pY29kZSBvcmRpbmFscywgc3RyaW5ncyAob2YgYXJiaXRyYXJ5IGxlbmd0aHMpIG9yIE5vbmUuXG4gICBDaGFyYWN0ZXIga2V5cyB3aWxsIHRoZW4gYmUgY29udmVydGVkIHRvIG9yZGluYWxzLlxuXG4gICBJZiB0aGVyZSBhcmUgdHdvIGFyZ3VtZW50cywgdGhleSBtdXN0IGJlIHN0cmluZ3Mgb2YgZXF1YWwgbGVuZ3RoLFxuICAgYW5kIGluIHRoZSByZXN1bHRpbmcgZGljdGlvbmFyeSwgZWFjaCBjaGFyYWN0ZXIgaW4geCB3aWxsIGJlIG1hcHBlZFxuICAgdG8gdGhlIGNoYXJhY3RlciBhdCB0aGUgc2FtZSBwb3NpdGlvbiBpbiB5LiAgSWYgdGhlcmUgaXMgYSB0aGlyZFxuICAgYXJndW1lbnQsIGl0IG11c3QgYmUgYSBzdHJpbmcsIHdob3NlIGNoYXJhY3RlcnMgd2lsbCBiZSBtYXBwZWQgdG9cbiAgIE5vbmUgaW4gdGhlIHJlc3VsdC5cblxuc3RyLnBhcnRpdGlvbihzZXApXG5cbiAgIFNwbGl0IHRoZSBzdHJpbmcgYXQgdGhlIGZpcnN0IG9jY3VycmVuY2Ugb2YgKnNlcCosIGFuZCByZXR1cm4gYVxuICAgMy10dXBsZSBjb250YWluaW5nIHRoZSBwYXJ0IGJlZm9yZSB0aGUgc2VwYXJhdG9yLCB0aGUgc2VwYXJhdG9yXG4gICBpdHNlbGYsIGFuZCB0aGUgcGFydCBhZnRlciB0aGUgc2VwYXJhdG9yLiAgSWYgdGhlIHNlcGFyYXRvciBpcyBub3RcbiAgIGZvdW5kLCByZXR1cm4gYSAzLXR1cGxlIGNvbnRhaW5pbmcgdGhlIHN0cmluZyBpdHNlbGYsIGZvbGxvd2VkIGJ5XG4gICB0d28gZW1wdHkgc3RyaW5ncy5cblxuc3RyLnJlcGxhY2Uob2xkLCBuZXdbLCBjb3VudF0pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGFsbCBvY2N1cnJlbmNlcyBvZiBzdWJzdHJpbmcgKm9sZCpcbiAgIHJlcGxhY2VkIGJ5ICpuZXcqLiAgSWYgdGhlIG9wdGlvbmFsIGFyZ3VtZW50ICpjb3VudCogaXMgZ2l2ZW4sIG9ubHlcbiAgIHRoZSBmaXJzdCAqY291bnQqIG9jY3VycmVuY2VzIGFyZSByZXBsYWNlZC5cblxuc3RyLnJmaW5kKHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiB0aGUgaGlnaGVzdCBpbmRleCBpbiB0aGUgc3RyaW5nIHdoZXJlIHN1YnN0cmluZyAqc3ViKiBpc1xuICAgZm91bmQsIHN1Y2ggdGhhdCAqc3ViKiBpcyBjb250YWluZWQgd2l0aGluIGBgc1tzdGFydDplbmRdYGAuXG4gICBPcHRpb25hbCBhcmd1bWVudHMgKnN0YXJ0KiBhbmQgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlXG4gICBub3RhdGlvbi4gIFJldHVybiBgYC0xYGAgb24gZmFpbHVyZS5cblxuc3RyLnJpbmRleChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBMaWtlIGBgcmZpbmQoKWBgIGJ1dCByYWlzZXMgYGBWYWx1ZUVycm9yYGAgd2hlbiB0aGUgc3Vic3RyaW5nICpzdWIqXG4gICBpcyBub3QgZm91bmQuXG5cbnN0ci5yanVzdCh3aWR0aFssIGZpbGxjaGFyXSlcblxuICAgUmV0dXJuIHRoZSBzdHJpbmcgcmlnaHQganVzdGlmaWVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLlxuICAgUGFkZGluZyBpcyBkb25lIHVzaW5nIHRoZSBzcGVjaWZpZWQgKmZpbGxjaGFyKiAoZGVmYXVsdCBpcyBhXG4gICBzcGFjZSkuIFRoZSBvcmlnaW5hbCBzdHJpbmcgaXMgcmV0dXJuZWQgaWYgKndpZHRoKiBpcyBsZXNzIHRoYW4gb3JcbiAgIGVxdWFsIHRvIGBgbGVuKHMpYGAuXG5cbnN0ci5ycGFydGl0aW9uKHNlcClcblxuICAgU3BsaXQgdGhlIHN0cmluZyBhdCB0aGUgbGFzdCBvY2N1cnJlbmNlIG9mICpzZXAqLCBhbmQgcmV0dXJuIGFcbiAgIDMtdHVwbGUgY29udGFpbmluZyB0aGUgcGFydCBiZWZvcmUgdGhlIHNlcGFyYXRvciwgdGhlIHNlcGFyYXRvclxuICAgaXRzZWxmLCBhbmQgdGhlIHBhcnQgYWZ0ZXIgdGhlIHNlcGFyYXRvci4gIElmIHRoZSBzZXBhcmF0b3IgaXMgbm90XG4gICBmb3VuZCwgcmV0dXJuIGEgMy10dXBsZSBjb250YWluaW5nIHR3byBlbXB0eSBzdHJpbmdzLCBmb2xsb3dlZCBieVxuICAgdGhlIHN0cmluZyBpdHNlbGYuXG5cbnN0ci5yc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIHdvcmRzIGluIHRoZSBzdHJpbmcsIHVzaW5nICpzZXAqIGFzIHRoZVxuICAgZGVsaW1pdGVyIHN0cmluZy4gSWYgKm1heHNwbGl0KiBpcyBnaXZlbiwgYXQgbW9zdCAqbWF4c3BsaXQqIHNwbGl0c1xuICAgYXJlIGRvbmUsIHRoZSAqcmlnaHRtb3N0KiBvbmVzLiAgSWYgKnNlcCogaXMgbm90IHNwZWNpZmllZCBvclxuICAgYGBOb25lYGAsIGFueSB3aGl0ZXNwYWNlIHN0cmluZyBpcyBhIHNlcGFyYXRvci4gIEV4Y2VwdCBmb3JcbiAgIHNwbGl0dGluZyBmcm9tIHRoZSByaWdodCwgYGByc3BsaXQoKWBgIGJlaGF2ZXMgbGlrZSBgYHNwbGl0KClgYFxuICAgd2hpY2ggaXMgZGVzY3JpYmVkIGluIGRldGFpbCBiZWxvdy5cblxuc3RyLnJzdHJpcChbY2hhcnNdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB0cmFpbGluZyBjaGFyYWN0ZXJzIHJlbW92ZWQuICBUaGVcbiAgICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGUgc2V0IG9mIGNoYXJhY3RlcnMgdG8gYmVcbiAgIHJlbW92ZWQuICBJZiBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGUgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0b1xuICAgcmVtb3Zpbmcgd2hpdGVzcGFjZS4gIFRoZSAqY2hhcnMqIGFyZ3VtZW50IGlzIG5vdCBhIHN1ZmZpeDsgcmF0aGVyLFxuICAgYWxsIGNvbWJpbmF0aW9ucyBvZiBpdHMgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5yc3RyaXAoKVxuICAgXCcgICBzcGFjaW91c1wnXG4gICA+Pj4gXCdtaXNzaXNzaXBwaVwnLnJzdHJpcChcJ2lwelwnKVxuICAgXCdtaXNzaXNzXCdcblxuc3RyLnNwbGl0KFtzZXBbLCBtYXhzcGxpdF1dKVxuXG4gICBSZXR1cm4gYSBsaXN0IG9mIHRoZSB3b3JkcyBpbiB0aGUgc3RyaW5nLCB1c2luZyAqc2VwKiBhcyB0aGVcbiAgIGRlbGltaXRlciBzdHJpbmcuICBJZiAqbWF4c3BsaXQqIGlzIGdpdmVuLCBhdCBtb3N0ICptYXhzcGxpdCpcbiAgIHNwbGl0cyBhcmUgZG9uZSAodGh1cywgdGhlIGxpc3Qgd2lsbCBoYXZlIGF0IG1vc3QgYGBtYXhzcGxpdCsxYGBcbiAgIGVsZW1lbnRzKS4gIElmICptYXhzcGxpdCogaXMgbm90IHNwZWNpZmllZCwgdGhlbiB0aGVyZSBpcyBubyBsaW1pdFxuICAgb24gdGhlIG51bWJlciBvZiBzcGxpdHMgKGFsbCBwb3NzaWJsZSBzcGxpdHMgYXJlIG1hZGUpLlxuXG4gICBJZiAqc2VwKiBpcyBnaXZlbiwgY29uc2VjdXRpdmUgZGVsaW1pdGVycyBhcmUgbm90IGdyb3VwZWQgdG9nZXRoZXJcbiAgIGFuZCBhcmUgZGVlbWVkIHRvIGRlbGltaXQgZW1wdHkgc3RyaW5ncyAoZm9yIGV4YW1wbGUsXG4gICBgYFwnMSwsMlwnLnNwbGl0KFwnLFwnKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnXCcsIFwnMlwnXWBgKS4gIFRoZSAqc2VwKlxuICAgYXJndW1lbnQgbWF5IGNvbnNpc3Qgb2YgbXVsdGlwbGUgY2hhcmFjdGVycyAoZm9yIGV4YW1wbGUsXG4gICBgYFwnMTw+Mjw+M1wnLnNwbGl0KFwnPD5cJylgYCByZXR1cm5zIGBgW1wnMVwnLCBcJzJcJywgXCczXCddYGApLiBTcGxpdHRpbmdcbiAgIGFuIGVtcHR5IHN0cmluZyB3aXRoIGEgc3BlY2lmaWVkIHNlcGFyYXRvciByZXR1cm5zIGBgW1wnXCddYGAuXG5cbiAgIElmICpzZXAqIGlzIG5vdCBzcGVjaWZpZWQgb3IgaXMgYGBOb25lYGAsIGEgZGlmZmVyZW50IHNwbGl0dGluZ1xuICAgYWxnb3JpdGhtIGlzIGFwcGxpZWQ6IHJ1bnMgb2YgY29uc2VjdXRpdmUgd2hpdGVzcGFjZSBhcmUgcmVnYXJkZWRcbiAgIGFzIGEgc2luZ2xlIHNlcGFyYXRvciwgYW5kIHRoZSByZXN1bHQgd2lsbCBjb250YWluIG5vIGVtcHR5IHN0cmluZ3NcbiAgIGF0IHRoZSBzdGFydCBvciBlbmQgaWYgdGhlIHN0cmluZyBoYXMgbGVhZGluZyBvciB0cmFpbGluZ1xuICAgd2hpdGVzcGFjZS4gIENvbnNlcXVlbnRseSwgc3BsaXR0aW5nIGFuIGVtcHR5IHN0cmluZyBvciBhIHN0cmluZ1xuICAgY29uc2lzdGluZyBvZiBqdXN0IHdoaXRlc3BhY2Ugd2l0aCBhIGBgTm9uZWBgIHNlcGFyYXRvciByZXR1cm5zXG4gICBgYFtdYGAuXG5cbiAgIEZvciBleGFtcGxlLCBgYFwnIDEgIDIgICAzICBcJy5zcGxpdCgpYGAgcmV0dXJucyBgYFtcJzFcJywgXCcyXCcsIFwnM1wnXWBgLFxuICAgYW5kIGBgXCcgIDEgIDIgICAzICBcJy5zcGxpdChOb25lLCAxKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnMiAgIDMgIFwnXWBgLlxuXG5zdHIuc3BsaXRsaW5lcyhba2VlcGVuZHNdKVxuXG4gICBSZXR1cm4gYSBsaXN0IG9mIHRoZSBsaW5lcyBpbiB0aGUgc3RyaW5nLCBicmVha2luZyBhdCBsaW5lXG4gICBib3VuZGFyaWVzLiAgTGluZSBicmVha3MgYXJlIG5vdCBpbmNsdWRlZCBpbiB0aGUgcmVzdWx0aW5nIGxpc3RcbiAgIHVubGVzcyAqa2VlcGVuZHMqIGlzIGdpdmVuIGFuZCB0cnVlLlxuXG5zdHIuc3RhcnRzd2l0aChwcmVmaXhbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gYGBUcnVlYGAgaWYgc3RyaW5nIHN0YXJ0cyB3aXRoIHRoZSAqcHJlZml4Kiwgb3RoZXJ3aXNlXG4gICByZXR1cm4gYGBGYWxzZWBgLiAqcHJlZml4KiBjYW4gYWxzbyBiZSBhIHR1cGxlIG9mIHByZWZpeGVzIHRvIGxvb2tcbiAgIGZvci4gIFdpdGggb3B0aW9uYWwgKnN0YXJ0KiwgdGVzdCBzdHJpbmcgYmVnaW5uaW5nIGF0IHRoYXRcbiAgIHBvc2l0aW9uLiAgV2l0aCBvcHRpb25hbCAqZW5kKiwgc3RvcCBjb21wYXJpbmcgc3RyaW5nIGF0IHRoYXRcbiAgIHBvc2l0aW9uLlxuXG5zdHIuc3RyaXAoW2NoYXJzXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggdGhlIGxlYWRpbmcgYW5kIHRyYWlsaW5nXG4gICBjaGFyYWN0ZXJzIHJlbW92ZWQuIFRoZSAqY2hhcnMqIGFyZ3VtZW50IGlzIGEgc3RyaW5nIHNwZWNpZnlpbmcgdGhlXG4gICBzZXQgb2YgY2hhcmFjdGVycyB0byBiZSByZW1vdmVkLiBJZiBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGVcbiAgICpjaGFycyogYXJndW1lbnQgZGVmYXVsdHMgdG8gcmVtb3Zpbmcgd2hpdGVzcGFjZS4gVGhlICpjaGFycypcbiAgIGFyZ3VtZW50IGlzIG5vdCBhIHByZWZpeCBvciBzdWZmaXg7IHJhdGhlciwgYWxsIGNvbWJpbmF0aW9ucyBvZiBpdHNcbiAgIHZhbHVlcyBhcmUgc3RyaXBwZWQ6XG5cbiAgID4+PiBcJyAgIHNwYWNpb3VzICAgXCcuc3RyaXAoKVxuICAgXCdzcGFjaW91c1wnXG4gICA+Pj4gXCd3d3cuZXhhbXBsZS5jb21cJy5zdHJpcChcJ2Ntb3d6LlwnKVxuICAgXCdleGFtcGxlXCdcblxuc3RyLnN3YXBjYXNlKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggdXBwZXJjYXNlIGNoYXJhY3RlcnMgY29udmVydGVkIHRvXG4gICBsb3dlcmNhc2UgYW5kIHZpY2UgdmVyc2EuXG5cbnN0ci50aXRsZSgpXG5cbiAgIFJldHVybiBhIHRpdGxlY2FzZWQgdmVyc2lvbiBvZiB0aGUgc3RyaW5nIHdoZXJlIHdvcmRzIHN0YXJ0IHdpdGggYW5cbiAgIHVwcGVyY2FzZSBjaGFyYWN0ZXIgYW5kIHRoZSByZW1haW5pbmcgY2hhcmFjdGVycyBhcmUgbG93ZXJjYXNlLlxuXG4gICBUaGUgYWxnb3JpdGhtIHVzZXMgYSBzaW1wbGUgbGFuZ3VhZ2UtaW5kZXBlbmRlbnQgZGVmaW5pdGlvbiBvZiBhXG4gICB3b3JkIGFzIGdyb3VwcyBvZiBjb25zZWN1dGl2ZSBsZXR0ZXJzLiAgVGhlIGRlZmluaXRpb24gd29ya3MgaW5cbiAgIG1hbnkgY29udGV4dHMgYnV0IGl0IG1lYW5zIHRoYXQgYXBvc3Ryb3BoZXMgaW4gY29udHJhY3Rpb25zIGFuZFxuICAgcG9zc2Vzc2l2ZXMgZm9ybSB3b3JkIGJvdW5kYXJpZXMsIHdoaWNoIG1heSBub3QgYmUgdGhlIGRlc2lyZWRcbiAgIHJlc3VsdDpcblxuICAgICAgPj4+ICJ0aGV5XCdyZSBiaWxsXCdzIGZyaWVuZHMgZnJvbSB0aGUgVUsiLnRpdGxlKClcbiAgICAgICJUaGV5XCdSZSBCaWxsXCdTIEZyaWVuZHMgRnJvbSBUaGUgVWsiXG5cbiAgIEEgd29ya2Fyb3VuZCBmb3IgYXBvc3Ryb3BoZXMgY2FuIGJlIGNvbnN0cnVjdGVkIHVzaW5nIHJlZ3VsYXJcbiAgIGV4cHJlc3Npb25zOlxuXG4gICAgICA+Pj4gaW1wb3J0IHJlXG4gICAgICA+Pj4gZGVmIHRpdGxlY2FzZShzKTpcbiAgICAgICAgICAgICAgcmV0dXJuIHJlLnN1YihyIltBLVphLXpdKyhcJ1tBLVphLXpdKyk/IixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgbW86IG1vLmdyb3VwKDApWzBdLnVwcGVyKCkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW8uZ3JvdXAoMClbMTpdLmxvd2VyKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcylcblxuICAgICAgPj4+IHRpdGxlY2FzZSgidGhleVwncmUgYmlsbFwncyBmcmllbmRzLiIpXG4gICAgICAiVGhleVwncmUgQmlsbFwncyBGcmllbmRzLiJcblxuc3RyLnRyYW5zbGF0ZShtYXApXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlICpzKiB3aGVyZSBhbGwgY2hhcmFjdGVycyBoYXZlIGJlZW4gbWFwcGVkXG4gICB0aHJvdWdoIHRoZSAqbWFwKiB3aGljaCBtdXN0IGJlIGEgZGljdGlvbmFyeSBvZiBVbmljb2RlIG9yZGluYWxzXG4gICAoaW50ZWdlcnMpIHRvIFVuaWNvZGUgb3JkaW5hbHMsIHN0cmluZ3Mgb3IgYGBOb25lYGAuICBVbm1hcHBlZFxuICAgY2hhcmFjdGVycyBhcmUgbGVmdCB1bnRvdWNoZWQuIENoYXJhY3RlcnMgbWFwcGVkIHRvIGBgTm9uZWBgIGFyZVxuICAgZGVsZXRlZC5cblxuICAgWW91IGNhbiB1c2UgYGBzdHIubWFrZXRyYW5zKClgYCB0byBjcmVhdGUgYSB0cmFuc2xhdGlvbiBtYXAgZnJvbVxuICAgY2hhcmFjdGVyLXRvLWNoYXJhY3RlciBtYXBwaW5ncyBpbiBkaWZmZXJlbnQgZm9ybWF0cy5cblxuICAgTm90ZTogQW4gZXZlbiBtb3JlIGZsZXhpYmxlIGFwcHJvYWNoIGlzIHRvIGNyZWF0ZSBhIGN1c3RvbSBjaGFyYWN0ZXJcbiAgICAgbWFwcGluZyBjb2RlYyB1c2luZyB0aGUgYGBjb2RlY3NgYCBtb2R1bGUgKHNlZVxuICAgICBgYGVuY29kaW5ncy5jcDEyNTFgYCBmb3IgYW4gZXhhbXBsZSkuXG5cbnN0ci51cHBlcigpXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGFsbCB0aGUgY2FzZWQgY2hhcmFjdGVycyBbNF1cbiAgIGNvbnZlcnRlZCB0byB1cHBlcmNhc2UuICBOb3RlIHRoYXQgYGBzdHIudXBwZXIoKS5pc3VwcGVyKClgYCBtaWdodFxuICAgYmUgYGBGYWxzZWBgIGlmIGBgc2BgIGNvbnRhaW5zIHVuY2FzZWQgY2hhcmFjdGVycyBvciBpZiB0aGUgVW5pY29kZVxuICAgY2F0ZWdvcnkgb2YgdGhlIHJlc3VsdGluZyBjaGFyYWN0ZXIocykgaXMgbm90ICJMdSIgKExldHRlcixcbiAgIHVwcGVyY2FzZSksIGJ1dCBlLmcuICJMdCIgKExldHRlciwgdGl0bGVjYXNlKS5cblxuc3RyLnpmaWxsKHdpZHRoKVxuXG4gICBSZXR1cm4gdGhlIG51bWVyaWMgc3RyaW5nIGxlZnQgZmlsbGVkIHdpdGggemVyb3MgaW4gYSBzdHJpbmcgb2ZcbiAgIGxlbmd0aCAqd2lkdGgqLiAgQSBzaWduIHByZWZpeCBpcyBoYW5kbGVkIGNvcnJlY3RseS4gIFRoZSBvcmlnaW5hbFxuICAgc3RyaW5nIGlzIHJldHVybmVkIGlmICp3aWR0aCogaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIGBgbGVuKHMpYGAuXG4nLAotICdzdHJpbmdzJzogJ1xuU3RyaW5nIGFuZCBCeXRlcyBsaXRlcmFsc1xuKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5TdHJpbmcgbGl0ZXJhbHMgYXJlIGRlc2NyaWJlZCBieSB0aGUgZm9sbG93aW5nIGxleGljYWwgZGVmaW5pdGlvbnM6XG5cbiAgIHN0cmluZ2xpdGVyYWwgICA6Oj0gW3N0cmluZ3ByZWZpeF0oc2hvcnRzdHJpbmcgfCBsb25nc3RyaW5nKVxuICAgc3RyaW5ncHJlZml4ICAgIDo6PSAiciIgfCAiUiJcbiAgIHNob3J0c3RyaW5nICAgICA6Oj0gIlwnIiBzaG9ydHN0cmluZ2l0ZW0qICJcJyIgfCBcJyJcJyBzaG9ydHN0cmluZ2l0ZW0qIFwnIlwnXG4gICBsb25nc3RyaW5nICAgICAgOjo9ICJcJ1wnXCciIGxvbmdzdHJpbmdpdGVtKiAiXCdcJ1wnIiB8IFwnIiIiXCcgbG9uZ3N0cmluZ2l0ZW0qIFwnIiIiXCdcbiAgIHNob3J0c3RyaW5naXRlbSA6Oj0gc2hvcnRzdHJpbmdjaGFyIHwgc3RyaW5nZXNjYXBlc2VxXG4gICBsb25nc3RyaW5naXRlbSAgOjo9IGxvbmdzdHJpbmdjaGFyIHwgc3RyaW5nZXNjYXBlc2VxXG4gICBzaG9ydHN0cmluZ2NoYXIgOjo9IDxhbnkgc291cmNlIGNoYXJhY3RlciBleGNlcHQgIlxcIiBvciBuZXdsaW5lIG9yIHRoZSBxdW90ZT5cbiAgIGxvbmdzdHJpbmdjaGFyICA6Oj0gPGFueSBzb3VyY2UgY2hhcmFjdGVyIGV4Y2VwdCAiXFwiPlxuICAgc3RyaW5nZXNjYXBlc2VxIDo6PSAiXFwiIDxhbnkgc291cmNlIGNoYXJhY3Rlcj5cblxuICAgYnl0ZXNsaXRlcmFsICAgOjo9IGJ5dGVzcHJlZml4KHNob3J0Ynl0ZXMgfCBsb25nYnl0ZXMpXG4gICBieXRlc3ByZWZpeCAgICA6Oj0gImIiIHwgIkIiIHwgImJyIiB8ICJCciIgfCAiYlIiIHwgIkJSIlxuICAgc2hvcnRieXRlcyAgICAgOjo9ICJcJyIgc2hvcnRieXRlc2l0ZW0qICJcJyIgfCBcJyJcJyBzaG9ydGJ5dGVzaXRlbSogXCciXCdcbiAgIGxvbmdieXRlcyAgICAgIDo6PSAiXCdcJ1wnIiBsb25nYnl0ZXNpdGVtKiAiXCdcJ1wnIiB8IFwnIiIiXCcgbG9uZ2J5dGVzaXRlbSogXCciIiJcJ1xuICAgc2hvcnRieXRlc2l0ZW0gOjo9IHNob3J0Ynl0ZXNjaGFyIHwgYnl0ZXNlc2NhcGVzZXFcbiAgIGxvbmdieXRlc2l0ZW0gIDo6PSBsb25nYnl0ZXNjaGFyIHwgYnl0ZXNlc2NhcGVzZXFcbiAgIHNob3J0Ynl0ZXNjaGFyIDo6PSA8YW55IEFTQ0lJIGNoYXJhY3RlciBleGNlcHQgIlxcIiBvciBuZXdsaW5lIG9yIHRoZSBxdW90ZT5cbiAgIGxvbmdieXRlc2NoYXIgIDo6PSA8YW55IEFTQ0lJIGNoYXJhY3RlciBleGNlcHQgIlxcIj5cbiAgIGJ5dGVzZXNjYXBlc2VxIDo6PSAiXFwiIDxhbnkgQVNDSUkgY2hhcmFjdGVyPlxuXG5PbmUgc3ludGFjdGljIHJlc3RyaWN0aW9uIG5vdCBpbmRpY2F0ZWQgYnkgdGhlc2UgcHJvZHVjdGlvbnMgaXMgdGhhdFxud2hpdGVzcGFjZSBpcyBub3QgYWxsb3dlZCBiZXR3ZWVuIHRoZSBgYHN0cmluZ3ByZWZpeGBgIG9yXG5gYGJ5dGVzcHJlZml4YGAgYW5kIHRoZSByZXN0IG9mIHRoZSBsaXRlcmFsLiBUaGUgc291cmNlIGNoYXJhY3RlciBzZXRcbmlzIGRlZmluZWQgYnkgdGhlIGVuY29kaW5nIGRlY2xhcmF0aW9uOyBpdCBpcyBVVEYtOCBpZiBubyBlbmNvZGluZ1xuZGVjbGFyYXRpb24gaXMgZ2l2ZW4gaW4gdGhlIHNvdXJjZSBmaWxlOyBzZWUgc2VjdGlvbiAqRW5jb2RpbmdcbmRlY2xhcmF0aW9ucyouXG5cbkluIHBsYWluIEVuZ2xpc2g6IEJvdGggdHlwZXMgb2YgbGl0ZXJhbHMgY2FuIGJlIGVuY2xvc2VkIGluIG1hdGNoaW5nXG5zaW5nbGUgcXVvdGVzIChgYFwnYGApIG9yIGRvdWJsZSBxdW90ZXMgKGBgImBgKS4gIFRoZXkgY2FuIGFsc28gYmVcbmVuY2xvc2VkIGluIG1hdGNoaW5nIGdyb3VwcyBvZiB0aHJlZSBzaW5nbGUgb3IgZG91YmxlIHF1b3RlcyAodGhlc2VcbmFyZSBnZW5lcmFsbHkgcmVmZXJyZWQgdG8gYXMgKnRyaXBsZS1xdW90ZWQgc3RyaW5ncyopLiAgVGhlIGJhY2tzbGFzaFxuKGBgXFxgYCkgY2hhcmFjdGVyIGlzIHVzZWQgdG8gZXNjYXBlIGNoYXJhY3RlcnMgdGhhdCBvdGhlcndpc2UgaGF2ZSBhXG5zcGVjaWFsIG1lYW5pbmcsIHN1Y2ggYXMgbmV3bGluZSwgYmFja3NsYXNoIGl0c2VsZiwgb3IgdGhlIHF1b3RlXG5jaGFyYWN0ZXIuXG5cbkJ5dGVzIGxpdGVyYWxzIGFyZSBhbHdheXMgcHJlZml4ZWQgd2l0aCBgYFwnYlwnYGAgb3IgYGBcJ0JcJ2BgOyB0aGV5XG5wcm9kdWNlIGFuIGluc3RhbmNlIG9mIHRoZSBgYGJ5dGVzYGAgdHlwZSBpbnN0ZWFkIG9mIHRoZSBgYHN0cmBgIHR5cGUuXG5UaGV5IG1heSBvbmx5IGNvbnRhaW4gQVNDSUkgY2hhcmFjdGVyczsgYnl0ZXMgd2l0aCBhIG51bWVyaWMgdmFsdWUgb2ZcbjEyOCBvciBncmVhdGVyIG11c3QgYmUgZXhwcmVzc2VkIHdpdGggZXNjYXBlcy5cblxuQm90aCBzdHJpbmcgYW5kIGJ5dGVzIGxpdGVyYWxzIG1heSBvcHRpb25hbGx5IGJlIHByZWZpeGVkIHdpdGggYVxubGV0dGVyIGBgXCdyXCdgYCBvciBgYFwnUlwnYGA7IHN1Y2ggc3RyaW5ncyBhcmUgY2FsbGVkICpyYXcgc3RyaW5ncyogYW5kXG50cmVhdCBiYWNrc2xhc2hlcyBhcyBsaXRlcmFsIGNoYXJhY3RlcnMuICBBcyBhIHJlc3VsdCwgaW4gc3RyaW5nXG5saXRlcmFscywgYGBcJ1xcVVwnYGAgYW5kIGBgXCdcXHVcJ2BgIGVzY2FwZXMgaW4gcmF3IHN0cmluZ3MgYXJlIG5vdCB0cmVhdGVkXG5zcGVjaWFsbHkuXG5cbkluIHRyaXBsZS1xdW90ZWQgc3RyaW5ncywgdW5lc2NhcGVkIG5ld2xpbmVzIGFuZCBxdW90ZXMgYXJlIGFsbG93ZWRcbihhbmQgYXJlIHJldGFpbmVkKSwgZXhjZXB0IHRoYXQgdGhyZWUgdW5lc2NhcGVkIHF1b3RlcyBpbiBhIHJvd1xudGVybWluYXRlIHRoZSBzdHJpbmcuICAoQSAicXVvdGUiIGlzIHRoZSBjaGFyYWN0ZXIgdXNlZCB0byBvcGVuIHRoZVxuc3RyaW5nLCBpLmUuIGVpdGhlciBgYFwnYGAgb3IgYGAiYGAuKVxuXG5Vbmxlc3MgYW4gYGBcJ3JcJ2BgIG9yIGBgXCdSXCdgYCBwcmVmaXggaXMgcHJlc2VudCwgZXNjYXBlIHNlcXVlbmNlcyBpblxuc3RyaW5ncyBhcmUgaW50ZXJwcmV0ZWQgYWNjb3JkaW5nIHRvIHJ1bGVzIHNpbWlsYXIgdG8gdGhvc2UgdXNlZCBieVxuU3RhbmRhcmQgQy4gIFRoZSByZWNvZ25pemVkIGVzY2FwZSBzZXF1ZW5jZXMgYXJlOlxuXG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IEVzY2FwZSBTZXF1ZW5jZSAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgICB8XG4rPT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT0rXG58IGBgXFxuZXdsaW5lYGAgICAgICB8IEJhY2tzbGFzaCBhbmQgbmV3bGluZSBpZ25vcmVkICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcXFxgYCAgICAgICAgICAgIHwgQmFja3NsYXNoIChgYFxcYGApICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcXCdgYCAgICAgICAgICAgIHwgU2luZ2xlIHF1b3RlIChgYFwnYGApICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcImBgICAgICAgICAgICAgfCBEb3VibGUgcXVvdGUgKGBgImBgKSAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXGFgYCAgICAgICAgICAgIHwgQVNDSUkgQmVsbCAoQkVMKSAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFxiYGAgICAgICAgICAgICB8IEFTQ0lJIEJhY2tzcGFjZSAoQlMpICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcZmBgICAgICAgICAgICAgfCBBU0NJSSBGb3JtZmVlZCAoRkYpICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXG5gYCAgICAgICAgICAgIHwgQVNDSUkgTGluZWZlZWQgKExGKSAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFxyYGAgICAgICAgICAgICB8IEFTQ0lJIENhcnJpYWdlIFJldHVybiAoQ1IpICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcdGBgICAgICAgICAgICAgfCBBU0NJSSBIb3Jpem9udGFsIFRhYiAoVEFCKSAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXHZgYCAgICAgICAgICAgIHwgQVNDSUkgVmVydGljYWwgVGFiIChWVCkgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFxvb29gYCAgICAgICAgICB8IENoYXJhY3RlciB3aXRoIG9jdGFsIHZhbHVlICpvb28qICB8ICgxLDMpICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxceGhoYGAgICAgICAgICAgfCBDaGFyYWN0ZXIgd2l0aCBoZXggdmFsdWUgKmhoKiAgICAgfCAoMiwzKSAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcblxuRXNjYXBlIHNlcXVlbmNlcyBvbmx5IHJlY29nbml6ZWQgaW4gc3RyaW5nIGxpdGVyYWxzIGFyZTpcblxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBFc2NhcGUgU2VxdWVuY2UgICB8IE1lYW5pbmcgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgfFxuKz09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09K1xufCBgYFxcTntuYW1lfWBgICAgICAgfCBDaGFyYWN0ZXIgbmFtZWQgKm5hbWUqIGluIHRoZSAgICAgfCAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgfCBVbmljb2RlIGRhdGFiYXNlICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXHV4eHh4YGAgICAgICAgIHwgQ2hhcmFjdGVyIHdpdGggMTYtYml0IGhleCB2YWx1ZSAgIHwgKDQpICAgICB8XG58ICAgICAgICAgICAgICAgICAgIHwgKnh4eHgqICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFxVeHh4eHh4eHhgYCAgICB8IENoYXJhY3RlciB3aXRoIDMyLWJpdCBoZXggdmFsdWUgICB8ICg1KSAgICAgfFxufCAgICAgICAgICAgICAgICAgICB8ICp4eHh4eHh4eCogICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xuXG5Ob3RlczpcblxuMS4gQXMgaW4gU3RhbmRhcmQgQywgdXAgdG8gdGhyZWUgb2N0YWwgZGlnaXRzIGFyZSBhY2NlcHRlZC5cblxuMi4gVW5saWtlIGluIFN0YW5kYXJkIEMsIGV4YWN0bHkgdHdvIGhleCBkaWdpdHMgYXJlIHJlcXVpcmVkLlxuXG4zLiBJbiBhIGJ5dGVzIGxpdGVyYWwsIGhleGFkZWNpbWFsIGFuZCBvY3RhbCBlc2NhcGVzIGRlbm90ZSB0aGUgYnl0ZVxuICAgd2l0aCB0aGUgZ2l2ZW4gdmFsdWUuIEluIGEgc3RyaW5nIGxpdGVyYWwsIHRoZXNlIGVzY2FwZXMgZGVub3RlIGFcbiAgIFVuaWNvZGUgY2hhcmFjdGVyIHdpdGggdGhlIGdpdmVuIHZhbHVlLlxuXG40LiBJbmRpdmlkdWFsIGNvZGUgdW5pdHMgd2hpY2ggZm9ybSBwYXJ0cyBvZiBhIHN1cnJvZ2F0ZSBwYWlyIGNhbiBiZVxuICAgZW5jb2RlZCB1c2luZyB0aGlzIGVzY2FwZSBzZXF1ZW5jZS4gIEV4YWN0bHkgZm91ciBoZXggZGlnaXRzIGFyZVxuICAgcmVxdWlyZWQuXG5cbjUuIEFueSBVbmljb2RlIGNoYXJhY3RlciBjYW4gYmUgZW5jb2RlZCB0aGlzIHdheSwgYnV0IGNoYXJhY3RlcnNcbiAgIG91dHNpZGUgdGhlIEJhc2ljIE11bHRpbGluZ3VhbCBQbGFuZSAoQk1QKSB3aWxsIGJlIGVuY29kZWQgdXNpbmcgYVxuICAgc3Vycm9nYXRlIHBhaXIgaWYgUHl0aG9uIGlzIGNvbXBpbGVkIHRvIHVzZSAxNi1iaXQgY29kZSB1bml0cyAodGhlXG4gICBkZWZhdWx0KS4gIEV4YWN0bHkgZWlnaHQgaGV4IGRpZ2l0cyBhcmUgcmVxdWlyZWQuXG5cblVubGlrZSBTdGFuZGFyZCBDLCBhbGwgdW5yZWNvZ25pemVkIGVzY2FwZSBzZXF1ZW5jZXMgYXJlIGxlZnQgaW4gdGhlXG5zdHJpbmcgdW5jaGFuZ2VkLCBpLmUuLCAqdGhlIGJhY2tzbGFzaCBpcyBsZWZ0IGluIHRoZSBzdHJpbmcqLiAgKFRoaXNcbmJlaGF2aW9yIGlzIHVzZWZ1bCB3aGVuIGRlYnVnZ2luZzogaWYgYW4gZXNjYXBlIHNlcXVlbmNlIGlzIG1pc3R5cGVkLFxudGhlIHJlc3VsdGluZyBvdXRwdXQgaXMgbW9yZSBlYXNpbHkgcmVjb2duaXplZCBhcyBicm9rZW4uKSAgSXQgaXMgYWxzb1xuaW1wb3J0YW50IHRvIG5vdGUgdGhhdCB0aGUgZXNjYXBlIHNlcXVlbmNlcyBvbmx5IHJlY29nbml6ZWQgaW4gc3RyaW5nXG5saXRlcmFscyBmYWxsIGludG8gdGhlIGNhdGVnb3J5IG9mIHVucmVjb2duaXplZCBlc2NhcGVzIGZvciBieXRlc1xubGl0ZXJhbHMuXG5cbkV2ZW4gaW4gYSByYXcgc3RyaW5nLCBzdHJpbmcgcXVvdGVzIGNhbiBiZSBlc2NhcGVkIHdpdGggYSBiYWNrc2xhc2gsXG5idXQgdGhlIGJhY2tzbGFzaCByZW1haW5zIGluIHRoZSBzdHJpbmc7IGZvciBleGFtcGxlLCBgYHIiXFwiImBgIGlzIGFcbnZhbGlkIHN0cmluZyBsaXRlcmFsIGNvbnNpc3Rpbmcgb2YgdHdvIGNoYXJhY3RlcnM6IGEgYmFja3NsYXNoIGFuZCBhXG5kb3VibGUgcXVvdGU7IGBgciJcXCJgYCBpcyBub3QgYSB2YWxpZCBzdHJpbmcgbGl0ZXJhbCAoZXZlbiBhIHJhd1xuc3RyaW5nIGNhbm5vdCBlbmQgaW4gYW4gb2RkIG51bWJlciBvZiBiYWNrc2xhc2hlcykuICBTcGVjaWZpY2FsbHksICphXG5yYXcgc3RyaW5nIGNhbm5vdCBlbmQgaW4gYSBzaW5nbGUgYmFja3NsYXNoKiAoc2luY2UgdGhlIGJhY2tzbGFzaFxud291bGQgZXNjYXBlIHRoZSBmb2xsb3dpbmcgcXVvdGUgY2hhcmFjdGVyKS4gIE5vdGUgYWxzbyB0aGF0IGEgc2luZ2xlXG5iYWNrc2xhc2ggZm9sbG93ZWQgYnkgYSBuZXdsaW5lIGlzIGludGVycHJldGVkIGFzIHRob3NlIHR3byBjaGFyYWN0ZXJzXG5hcyBwYXJ0IG9mIHRoZSBzdHJpbmcsICpub3QqIGFzIGEgbGluZSBjb250aW51YXRpb24uXG4nLAorICdzcGVjaWFsYXR0cnMnOiAnXG5TcGVjaWFsIEF0dHJpYnV0ZXNcbioqKioqKioqKioqKioqKioqKlxuXG5UaGUgaW1wbGVtZW50YXRpb24gYWRkcyBhIGZldyBzcGVjaWFsIHJlYWQtb25seSBhdHRyaWJ1dGVzIHRvIHNldmVyYWxcbm9iamVjdCB0eXBlcywgd2hlcmUgdGhleSBhcmUgcmVsZXZhbnQuICBTb21lIG9mIHRoZXNlIGFyZSBub3QgcmVwb3J0ZWRcbmJ5IHRoZSBgYGRpcigpYGAgYnVpbHQtaW4gZnVuY3Rpb24uXG5cbm9iamVjdC5fX2RpY3RfX1xuXG4gICBBIGRpY3Rpb25hcnkgb3Igb3RoZXIgbWFwcGluZyBvYmplY3QgdXNlZCB0byBzdG9yZSBhbiBvYmplY3RcJ3NcbiAgICh3cml0YWJsZSkgYXR0cmlidXRlcy5cblxuaW5zdGFuY2UuX19jbGFzc19fXG5cbiAgIFRoZSBjbGFzcyB0byB3aGljaCBhIGNsYXNzIGluc3RhbmNlIGJlbG9uZ3MuXG5cbmNsYXNzLl9fYmFzZXNfX1xuXG4gICBUaGUgdHVwbGUgb2YgYmFzZSBjbGFzc2VzIG9mIGEgY2xhc3Mgb2JqZWN0LlxuXG5jbGFzcy5fX25hbWVfX1xuXG4gICBUaGUgbmFtZSBvZiB0aGUgY2xhc3Mgb3IgdHlwZS5cblxuY2xhc3MuX19xdWFsbmFtZV9fXG5cbiAgIFRoZSAqcXVhbGlmaWVkIG5hbWUqIG9mIHRoZSBjbGFzcyBvciB0eXBlLlxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjMuXG5cbmNsYXNzLl9fbXJvX19cblxuICAgVGhpcyBhdHRyaWJ1dGUgaXMgYSB0dXBsZSBvZiBjbGFzc2VzIHRoYXQgYXJlIGNvbnNpZGVyZWQgd2hlblxuICAgbG9va2luZyBmb3IgYmFzZSBjbGFzc2VzIGR1cmluZyBtZXRob2QgcmVzb2x1dGlvbi5cblxuY2xhc3MubXJvKClcblxuICAgVGhpcyBtZXRob2QgY2FuIGJlIG92ZXJyaWRkZW4gYnkgYSBtZXRhY2xhc3MgdG8gY3VzdG9taXplIHRoZVxuICAgbWV0aG9kIHJlc29sdXRpb24gb3JkZXIgZm9yIGl0cyBpbnN0YW5jZXMuICBJdCBpcyBjYWxsZWQgYXQgY2xhc3NcbiAgIGluc3RhbnRpYXRpb24sIGFuZCBpdHMgcmVzdWx0IGlzIHN0b3JlZCBpbiBgYF9fbXJvX19gYC5cblxuY2xhc3MuX19zdWJjbGFzc2VzX18oKVxuXG4gICBFYWNoIGNsYXNzIGtlZXBzIGEgbGlzdCBvZiB3ZWFrIHJlZmVyZW5jZXMgdG8gaXRzIGltbWVkaWF0ZVxuICAgc3ViY2xhc3Nlcy4gIFRoaXMgbWV0aG9kIHJldHVybnMgYSBsaXN0IG9mIGFsbCB0aG9zZSByZWZlcmVuY2VzXG4gICBzdGlsbCBhbGl2ZS4gRXhhbXBsZTpcblxuICAgICAgPj4+IGludC5fX3N1YmNsYXNzZXNfXygpXG4gICAgICBbPGNsYXNzIFwnYm9vbFwnPl1cblxuLVsgRm9vdG5vdGVzIF0tXG5cblsxXSBBZGRpdGlvbmFsIGluZm9ybWF0aW9uIG9uIHRoZXNlIHNwZWNpYWwgbWV0aG9kcyBtYXkgYmUgZm91bmQgaW5cbiAgICB0aGUgUHl0aG9uIFJlZmVyZW5jZSBNYW51YWwgKCpCYXNpYyBjdXN0b21pemF0aW9uKikuXG5cblsyXSBBcyBhIGNvbnNlcXVlbmNlLCB0aGUgbGlzdCBgYFsxLCAyXWBgIGlzIGNvbnNpZGVyZWQgZXF1YWwgdG9cbiAgICBgYFsxLjAsIDIuMF1gYCwgYW5kIHNpbWlsYXJseSBmb3IgdHVwbGVzLlxuXG5bM10gVGhleSBtdXN0IGhhdmUgc2luY2UgdGhlIHBhcnNlciBjYW5cJ3QgdGVsbCB0aGUgdHlwZSBvZiB0aGVcbiAgICBvcGVyYW5kcy5cblxuWzRdIENhc2VkIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggZ2VuZXJhbCBjYXRlZ29yeSBwcm9wZXJ0eSBiZWluZ1xuICAgIG9uZSBvZiAiTHUiIChMZXR0ZXIsIHVwcGVyY2FzZSksICJMbCIgKExldHRlciwgbG93ZXJjYXNlKSwgb3IgIkx0IlxuICAgIChMZXR0ZXIsIHRpdGxlY2FzZSkuXG5cbls1XSBUbyBmb3JtYXQgb25seSBhIHR1cGxlIHlvdSBzaG91bGQgdGhlcmVmb3JlIHByb3ZpZGUgYSBzaW5nbGV0b25cbiAgICB0dXBsZSB3aG9zZSBvbmx5IGVsZW1lbnQgaXMgdGhlIHR1cGxlIHRvIGJlIGZvcm1hdHRlZC5cbicsCisgJ3NwZWNpYWxuYW1lcyc6ICdcblNwZWNpYWwgbWV0aG9kIG5hbWVzXG4qKioqKioqKioqKioqKioqKioqKlxuXG5BIGNsYXNzIGNhbiBpbXBsZW1lbnQgY2VydGFpbiBvcGVyYXRpb25zIHRoYXQgYXJlIGludm9rZWQgYnkgc3BlY2lhbFxuc3ludGF4IChzdWNoIGFzIGFyaXRobWV0aWMgb3BlcmF0aW9ucyBvciBzdWJzY3JpcHRpbmcgYW5kIHNsaWNpbmcpIGJ5XG5kZWZpbmluZyBtZXRob2RzIHdpdGggc3BlY2lhbCBuYW1lcy4gVGhpcyBpcyBQeXRob25cJ3MgYXBwcm9hY2ggdG9cbipvcGVyYXRvciBvdmVybG9hZGluZyosIGFsbG93aW5nIGNsYXNzZXMgdG8gZGVmaW5lIHRoZWlyIG93biBiZWhhdmlvclxud2l0aCByZXNwZWN0IHRvIGxhbmd1YWdlIG9wZXJhdG9ycy4gIEZvciBpbnN0YW5jZSwgaWYgYSBjbGFzcyBkZWZpbmVzXG5hIG1ldGhvZCBuYW1lZCBgYF9fZ2V0aXRlbV9fKClgYCwgYW5kIGBgeGBgIGlzIGFuIGluc3RhbmNlIG9mIHRoaXNcbmNsYXNzLCB0aGVuIGBgeFtpXWBgIGlzIHJvdWdobHkgZXF1aXZhbGVudCB0byBgYHR5cGUoeCkuX19nZXRpdGVtX18oeCxcbmkpYGAuICBFeGNlcHQgd2hlcmUgbWVudGlvbmVkLCBhdHRlbXB0cyB0byBleGVjdXRlIGFuIG9wZXJhdGlvbiByYWlzZVxuYW4gZXhjZXB0aW9uIHdoZW4gbm8gYXBwcm9wcmlhdGUgbWV0aG9kIGlzIGRlZmluZWQgKHR5cGljYWxseVxuYGBBdHRyaWJ1dGVFcnJvcmBgIG9yIGBgVHlwZUVycm9yYGApLlxuXG5XaGVuIGltcGxlbWVudGluZyBhIGNsYXNzIHRoYXQgZW11bGF0ZXMgYW55IGJ1aWx0LWluIHR5cGUsIGl0IGlzXG5pbXBvcnRhbnQgdGhhdCB0aGUgZW11bGF0aW9uIG9ubHkgYmUgaW1wbGVtZW50ZWQgdG8gdGhlIGRlZ3JlZSB0aGF0IGl0XG5tYWtlcyBzZW5zZSBmb3IgdGhlIG9iamVjdCBiZWluZyBtb2RlbGxlZC4gIEZvciBleGFtcGxlLCBzb21lXG5zZXF1ZW5jZXMgbWF5IHdvcmsgd2VsbCB3aXRoIHJldHJpZXZhbCBvZiBpbmRpdmlkdWFsIGVsZW1lbnRzLCBidXRcbmV4dHJhY3RpbmcgYSBzbGljZSBtYXkgbm90IG1ha2Ugc2Vuc2UuICAoT25lIGV4YW1wbGUgb2YgdGhpcyBpcyB0aGVcbmBgTm9kZUxpc3RgYCBpbnRlcmZhY2UgaW4gdGhlIFczQ1wncyBEb2N1bWVudCBPYmplY3QgTW9kZWwuKVxuXG5cbkJhc2ljIGN1c3RvbWl6YXRpb25cbj09PT09PT09PT09PT09PT09PT1cblxub2JqZWN0Ll9fbmV3X18oY2xzWywgLi4uXSlcblxuICAgQ2FsbGVkIHRvIGNyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiBjbGFzcyAqY2xzKi4gIGBgX19uZXdfXygpYGAgaXMgYVxuICAgc3RhdGljIG1ldGhvZCAoc3BlY2lhbC1jYXNlZCBzbyB5b3UgbmVlZCBub3QgZGVjbGFyZSBpdCBhcyBzdWNoKVxuICAgdGhhdCB0YWtlcyB0aGUgY2xhc3Mgb2Ygd2hpY2ggYW4gaW5zdGFuY2Ugd2FzIHJlcXVlc3RlZCBhcyBpdHNcbiAgIGZpcnN0IGFyZ3VtZW50LiAgVGhlIHJlbWFpbmluZyBhcmd1bWVudHMgYXJlIHRob3NlIHBhc3NlZCB0byB0aGVcbiAgIG9iamVjdCBjb25zdHJ1Y3RvciBleHByZXNzaW9uICh0aGUgY2FsbCB0byB0aGUgY2xhc3MpLiAgVGhlIHJldHVyblxuICAgdmFsdWUgb2YgYGBfX25ld19fKClgYCBzaG91bGQgYmUgdGhlIG5ldyBvYmplY3QgaW5zdGFuY2UgKHVzdWFsbHlcbiAgIGFuIGluc3RhbmNlIG9mICpjbHMqKS5cblxuICAgVHlwaWNhbCBpbXBsZW1lbnRhdGlvbnMgY3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBjbGFzcyBieVxuICAgaW52b2tpbmcgdGhlIHN1cGVyY2xhc3NcJ3MgYGBfX25ld19fKClgYCBtZXRob2QgdXNpbmdcbiAgIGBgc3VwZXIoY3VycmVudGNsYXNzLCBjbHMpLl9fbmV3X18oY2xzWywgLi4uXSlgYCB3aXRoIGFwcHJvcHJpYXRlXG4gICBhcmd1bWVudHMgYW5kIHRoZW4gbW9kaWZ5aW5nIHRoZSBuZXdseS1jcmVhdGVkIGluc3RhbmNlIGFzXG4gICBuZWNlc3NhcnkgYmVmb3JlIHJldHVybmluZyBpdC5cblxuICAgSWYgYGBfX25ld19fKClgYCByZXR1cm5zIGFuIGluc3RhbmNlIG9mICpjbHMqLCB0aGVuIHRoZSBuZXdcbiAgIGluc3RhbmNlXCdzIGBgX19pbml0X18oKWBgIG1ldGhvZCB3aWxsIGJlIGludm9rZWQgbGlrZVxuICAgYGBfX2luaXRfXyhzZWxmWywgLi4uXSlgYCwgd2hlcmUgKnNlbGYqIGlzIHRoZSBuZXcgaW5zdGFuY2UgYW5kIHRoZVxuICAgcmVtYWluaW5nIGFyZ3VtZW50cyBhcmUgdGhlIHNhbWUgYXMgd2VyZSBwYXNzZWQgdG8gYGBfX25ld19fKClgYC5cblxuICAgSWYgYGBfX25ld19fKClgYCBkb2VzIG5vdCByZXR1cm4gYW4gaW5zdGFuY2Ugb2YgKmNscyosIHRoZW4gdGhlIG5ld1xuICAgaW5zdGFuY2VcJ3MgYGBfX2luaXRfXygpYGAgbWV0aG9kIHdpbGwgbm90IGJlIGludm9rZWQuXG5cbiAgIGBgX19uZXdfXygpYGAgaXMgaW50ZW5kZWQgbWFpbmx5IHRvIGFsbG93IHN1YmNsYXNzZXMgb2YgaW1tdXRhYmxlXG4gICB0eXBlcyAobGlrZSBpbnQsIHN0ciwgb3IgdHVwbGUpIHRvIGN1c3RvbWl6ZSBpbnN0YW5jZSBjcmVhdGlvbi4gIEl0XG4gICBpcyBhbHNvIGNvbW1vbmx5IG92ZXJyaWRkZW4gaW4gY3VzdG9tIG1ldGFjbGFzc2VzIGluIG9yZGVyIHRvXG4gICBjdXN0b21pemUgY2xhc3MgY3JlYXRpb24uXG5cbm9iamVjdC5fX2luaXRfXyhzZWxmWywgLi4uXSlcblxuICAgQ2FsbGVkIHdoZW4gdGhlIGluc3RhbmNlIGlzIGNyZWF0ZWQuICBUaGUgYXJndW1lbnRzIGFyZSB0aG9zZVxuICAgcGFzc2VkIHRvIHRoZSBjbGFzcyBjb25zdHJ1Y3RvciBleHByZXNzaW9uLiAgSWYgYSBiYXNlIGNsYXNzIGhhcyBhblxuICAgYGBfX2luaXRfXygpYGAgbWV0aG9kLCB0aGUgZGVyaXZlZCBjbGFzc1wncyBgYF9faW5pdF9fKClgYCBtZXRob2QsXG4gICBpZiBhbnksIG11c3QgZXhwbGljaXRseSBjYWxsIGl0IHRvIGVuc3VyZSBwcm9wZXIgaW5pdGlhbGl6YXRpb24gb2ZcbiAgIHRoZSBiYXNlIGNsYXNzIHBhcnQgb2YgdGhlIGluc3RhbmNlOyBmb3IgZXhhbXBsZTpcbiAgIGBgQmFzZUNsYXNzLl9faW5pdF9fKHNlbGYsIFthcmdzLi4uXSlgYC4gIEFzIGEgc3BlY2lhbCBjb25zdHJhaW50XG4gICBvbiBjb25zdHJ1Y3RvcnMsIG5vIHZhbHVlIG1heSBiZSByZXR1cm5lZDsgZG9pbmcgc28gd2lsbCBjYXVzZSBhXG4gICBgYFR5cGVFcnJvcmBgIHRvIGJlIHJhaXNlZCBhdCBydW50aW1lLlxuXG5vYmplY3QuX19kZWxfXyhzZWxmKVxuXG4gICBDYWxsZWQgd2hlbiB0aGUgaW5zdGFuY2UgaXMgYWJvdXQgdG8gYmUgZGVzdHJveWVkLiAgVGhpcyBpcyBhbHNvXG4gICBjYWxsZWQgYSBkZXN0cnVjdG9yLiAgSWYgYSBiYXNlIGNsYXNzIGhhcyBhIGBgX19kZWxfXygpYGAgbWV0aG9kLFxuICAgdGhlIGRlcml2ZWQgY2xhc3NcJ3MgYGBfX2RlbF9fKClgYCBtZXRob2QsIGlmIGFueSwgbXVzdCBleHBsaWNpdGx5XG4gICBjYWxsIGl0IHRvIGVuc3VyZSBwcm9wZXIgZGVsZXRpb24gb2YgdGhlIGJhc2UgY2xhc3MgcGFydCBvZiB0aGVcbiAgIGluc3RhbmNlLiAgTm90ZSB0aGF0IGl0IGlzIHBvc3NpYmxlICh0aG91Z2ggbm90IHJlY29tbWVuZGVkISkgZm9yXG4gICB0aGUgYGBfX2RlbF9fKClgYCBtZXRob2QgdG8gcG9zdHBvbmUgZGVzdHJ1Y3Rpb24gb2YgdGhlIGluc3RhbmNlIGJ5XG4gICBjcmVhdGluZyBhIG5ldyByZWZlcmVuY2UgdG8gaXQuICBJdCBtYXkgdGhlbiBiZSBjYWxsZWQgYXQgYSBsYXRlclxuICAgdGltZSB3aGVuIHRoaXMgbmV3IHJlZmVyZW5jZSBpcyBkZWxldGVkLiAgSXQgaXMgbm90IGd1YXJhbnRlZWQgdGhhdFxuICAgYGBfX2RlbF9fKClgYCBtZXRob2RzIGFyZSBjYWxsZWQgZm9yIG9iamVjdHMgdGhhdCBzdGlsbCBleGlzdCB3aGVuXG4gICB0aGUgaW50ZXJwcmV0ZXIgZXhpdHMuXG5cbiAgIE5vdGU6IGBgZGVsIHhgYCBkb2VzblwndCBkaXJlY3RseSBjYWxsIGBgeC5fX2RlbF9fKClgYCAtLS0gdGhlIGZvcm1lclxuICAgICBkZWNyZW1lbnRzIHRoZSByZWZlcmVuY2UgY291bnQgZm9yIGBgeGBgIGJ5IG9uZSwgYW5kIHRoZSBsYXR0ZXJcbiAgICAgaXMgb25seSBjYWxsZWQgd2hlbiBgYHhgYFwncyByZWZlcmVuY2UgY291bnQgcmVhY2hlcyB6ZXJvLiAgU29tZVxuICAgICBjb21tb24gc2l0dWF0aW9ucyB0aGF0IG1heSBwcmV2ZW50IHRoZSByZWZlcmVuY2UgY291bnQgb2YgYW5cbiAgICAgb2JqZWN0IGZyb20gZ29pbmcgdG8gemVybyBpbmNsdWRlOiBjaXJjdWxhciByZWZlcmVuY2VzIGJldHdlZW5cbiAgICAgb2JqZWN0cyAoZS5nLiwgYSBkb3VibHktbGlua2VkIGxpc3Qgb3IgYSB0cmVlIGRhdGEgc3RydWN0dXJlIHdpdGhcbiAgICAgcGFyZW50IGFuZCBjaGlsZCBwb2ludGVycyk7IGEgcmVmZXJlbmNlIHRvIHRoZSBvYmplY3Qgb24gdGhlXG4gICAgIHN0YWNrIGZyYW1lIG9mIGEgZnVuY3Rpb24gdGhhdCBjYXVnaHQgYW4gZXhjZXB0aW9uICh0aGUgdHJhY2ViYWNrXG4gICAgIHN0b3JlZCBpbiBgYHN5cy5leGNfaW5mbygpWzJdYGAga2VlcHMgdGhlIHN0YWNrIGZyYW1lIGFsaXZlKTsgb3JcbiAgICAgYSByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCBvbiB0aGUgc3RhY2sgZnJhbWUgdGhhdCByYWlzZWQgYW5cbiAgICAgdW5oYW5kbGVkIGV4Y2VwdGlvbiBpbiBpbnRlcmFjdGl2ZSBtb2RlICh0aGUgdHJhY2ViYWNrIHN0b3JlZCBpblxuICAgICBgYHN5cy5sYXN0X3RyYWNlYmFja2BgIGtlZXBzIHRoZSBzdGFjayBmcmFtZSBhbGl2ZSkuICBUaGUgZmlyc3RcbiAgICAgc2l0dWF0aW9uIGNhbiBvbmx5IGJlIHJlbWVkaWVkIGJ5IGV4cGxpY2l0bHkgYnJlYWtpbmcgdGhlIGN5Y2xlcztcbiAgICAgdGhlIGxhdHRlciB0d28gc2l0dWF0aW9ucyBjYW4gYmUgcmVzb2x2ZWQgYnkgc3RvcmluZyBgYE5vbmVgYCBpblxuICAgICBgYHN5cy5sYXN0X3RyYWNlYmFja2BgLiBDaXJjdWxhciByZWZlcmVuY2VzIHdoaWNoIGFyZSBnYXJiYWdlIGFyZVxuICAgICBkZXRlY3RlZCB3aGVuIHRoZSBvcHRpb24gY3ljbGUgZGV0ZWN0b3IgaXMgZW5hYmxlZCAoaXRcJ3Mgb24gYnlcbiAgICAgZGVmYXVsdCksIGJ1dCBjYW4gb25seSBiZSBjbGVhbmVkIHVwIGlmIHRoZXJlIGFyZSBubyBQeXRob24tXG4gICAgIGxldmVsIGBgX19kZWxfXygpYGAgbWV0aG9kcyBpbnZvbHZlZC4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb25cbiAgICAgZm9yIHRoZSBgYGdjYGAgbW9kdWxlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGhvd1xuICAgICBgYF9fZGVsX18oKWBgIG1ldGhvZHMgYXJlIGhhbmRsZWQgYnkgdGhlIGN5Y2xlIGRldGVjdG9yLFxuICAgICBwYXJ0aWN1bGFybHkgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBgYGdhcmJhZ2VgYCB2YWx1ZS5cblxuICAgV2FybmluZzogRHVlIHRvIHRoZSBwcmVjYXJpb3VzIGNpcmN1bXN0YW5jZXMgdW5kZXIgd2hpY2ggYGBfX2RlbF9fKClgYFxuICAgICBtZXRob2RzIGFyZSBpbnZva2VkLCBleGNlcHRpb25zIHRoYXQgb2NjdXIgZHVyaW5nIHRoZWlyIGV4ZWN1dGlvblxuICAgICBhcmUgaWdub3JlZCwgYW5kIGEgd2FybmluZyBpcyBwcmludGVkIHRvIGBgc3lzLnN0ZGVycmBgIGluc3RlYWQuXG4gICAgIEFsc28sIHdoZW4gYGBfX2RlbF9fKClgYCBpcyBpbnZva2VkIGluIHJlc3BvbnNlIHRvIGEgbW9kdWxlIGJlaW5nXG4gICAgIGRlbGV0ZWQgKGUuZy4sIHdoZW4gZXhlY3V0aW9uIG9mIHRoZSBwcm9ncmFtIGlzIGRvbmUpLCBvdGhlclxuICAgICBnbG9iYWxzIHJlZmVyZW5jZWQgYnkgdGhlIGBgX19kZWxfXygpYGAgbWV0aG9kIG1heSBhbHJlYWR5IGhhdmVcbiAgICAgYmVlbiBkZWxldGVkIG9yIGluIHRoZSBwcm9jZXNzIG9mIGJlaW5nIHRvcm4gZG93biAoZS5nLiB0aGVcbiAgICAgaW1wb3J0IG1hY2hpbmVyeSBzaHV0dGluZyBkb3duKS4gIEZvciB0aGlzIHJlYXNvbiwgYGBfX2RlbF9fKClgYFxuICAgICBtZXRob2RzIHNob3VsZCBkbyB0aGUgYWJzb2x1dGUgbWluaW11bSBuZWVkZWQgdG8gbWFpbnRhaW5cbiAgICAgZXh0ZXJuYWwgaW52YXJpYW50cy4gIFN0YXJ0aW5nIHdpdGggdmVyc2lvbiAxLjUsIFB5dGhvblxuICAgICBndWFyYW50ZWVzIHRoYXQgZ2xvYmFscyB3aG9zZSBuYW1lIGJlZ2lucyB3aXRoIGEgc2luZ2xlXG4gICAgIHVuZGVyc2NvcmUgYXJlIGRlbGV0ZWQgZnJvbSB0aGVpciBtb2R1bGUgYmVmb3JlIG90aGVyIGdsb2JhbHMgYXJlXG4gICAgIGRlbGV0ZWQ7IGlmIG5vIG90aGVyIHJlZmVyZW5jZXMgdG8gc3VjaCBnbG9iYWxzIGV4aXN0LCB0aGlzIG1heVxuICAgICBoZWxwIGluIGFzc3VyaW5nIHRoYXQgaW1wb3J0ZWQgbW9kdWxlcyBhcmUgc3RpbGwgYXZhaWxhYmxlIGF0IHRoZVxuICAgICB0aW1lIHdoZW4gdGhlIGBgX19kZWxfXygpYGAgbWV0aG9kIGlzIGNhbGxlZC5cblxub2JqZWN0Ll9fcmVwcl9fKHNlbGYpXG5cbiAgIENhbGxlZCBieSB0aGUgYGByZXByKClgYCBidWlsdC1pbiBmdW5jdGlvbiB0byBjb21wdXRlIHRoZVxuICAgIm9mZmljaWFsIiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYW4gb2JqZWN0LiAgSWYgYXQgYWxsIHBvc3NpYmxlLFxuICAgdGhpcyBzaG91bGQgbG9vayBsaWtlIGEgdmFsaWQgUHl0aG9uIGV4cHJlc3Npb24gdGhhdCBjb3VsZCBiZSB1c2VkXG4gICB0byByZWNyZWF0ZSBhbiBvYmplY3Qgd2l0aCB0aGUgc2FtZSB2YWx1ZSAoZ2l2ZW4gYW4gYXBwcm9wcmlhdGVcbiAgIGVudmlyb25tZW50KS4gIElmIHRoaXMgaXMgbm90IHBvc3NpYmxlLCBhIHN0cmluZyBvZiB0aGUgZm9ybVxuICAgYGA8Li4uc29tZSB1c2VmdWwgZGVzY3JpcHRpb24uLi4+YGAgc2hvdWxkIGJlIHJldHVybmVkLiBUaGUgcmV0dXJuXG4gICB2YWx1ZSBtdXN0IGJlIGEgc3RyaW5nIG9iamVjdC4gSWYgYSBjbGFzcyBkZWZpbmVzIGBgX19yZXByX18oKWBgXG4gICBidXQgbm90IGBgX19zdHJfXygpYGAsIHRoZW4gYGBfX3JlcHJfXygpYGAgaXMgYWxzbyB1c2VkIHdoZW4gYW5cbiAgICJpbmZvcm1hbCIgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGluc3RhbmNlcyBvZiB0aGF0IGNsYXNzIGlzXG4gICByZXF1aXJlZC5cblxuICAgVGhpcyBpcyB0eXBpY2FsbHkgdXNlZCBmb3IgZGVidWdnaW5nLCBzbyBpdCBpcyBpbXBvcnRhbnQgdGhhdCB0aGVcbiAgIHJlcHJlc2VudGF0aW9uIGlzIGluZm9ybWF0aW9uLXJpY2ggYW5kIHVuYW1iaWd1b3VzLlxuXG5vYmplY3QuX19zdHJfXyhzZWxmKVxuXG4gICBDYWxsZWQgYnkgdGhlIGBgc3RyKClgYCBidWlsdC1pbiBmdW5jdGlvbiBhbmQgYnkgdGhlIGBgcHJpbnQoKWBgXG4gICBmdW5jdGlvbiB0byBjb21wdXRlIHRoZSAiaW5mb3JtYWwiIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhblxuICAgb2JqZWN0LiAgVGhpcyBkaWZmZXJzIGZyb20gYGBfX3JlcHJfXygpYGAgaW4gdGhhdCBpdCBkb2VzIG5vdCBoYXZlXG4gICB0byBiZSBhIHZhbGlkIFB5dGhvbiBleHByZXNzaW9uOiBhIG1vcmUgY29udmVuaWVudCBvciBjb25jaXNlXG4gICByZXByZXNlbnRhdGlvbiBtYXkgYmUgdXNlZCBpbnN0ZWFkLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgYmUgYVxuICAgc3RyaW5nIG9iamVjdC5cblxub2JqZWN0Ll9fYnl0ZXNfXyhzZWxmKVxuXG4gICBDYWxsZWQgYnkgYGBieXRlcygpYGAgdG8gY29tcHV0ZSBhIGJ5dGUtc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuXG4gICBvYmplY3QuIFRoaXMgc2hvdWxkIHJldHVybiBhIGBgYnl0ZXNgYCBvYmplY3QuXG5cbm9iamVjdC5fX2Zvcm1hdF9fKHNlbGYsIGZvcm1hdF9zcGVjKVxuXG4gICBDYWxsZWQgYnkgdGhlIGBgZm9ybWF0KClgYCBidWlsdC1pbiBmdW5jdGlvbiAoYW5kIGJ5IGV4dGVuc2lvbiwgdGhlXG4gICBgYGZvcm1hdCgpYGAgbWV0aG9kIG9mIGNsYXNzIGBgc3RyYGApIHRvIHByb2R1Y2UgYSAiZm9ybWF0dGVkIlxuICAgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9iamVjdC4gVGhlIGBgZm9ybWF0X3NwZWNgYCBhcmd1bWVudCBpc1xuICAgYSBzdHJpbmcgdGhhdCBjb250YWlucyBhIGRlc2NyaXB0aW9uIG9mIHRoZSBmb3JtYXR0aW5nIG9wdGlvbnNcbiAgIGRlc2lyZWQuIFRoZSBpbnRlcnByZXRhdGlvbiBvZiB0aGUgYGBmb3JtYXRfc3BlY2BgIGFyZ3VtZW50IGlzIHVwXG4gICB0byB0aGUgdHlwZSBpbXBsZW1lbnRpbmcgYGBfX2Zvcm1hdF9fKClgYCwgaG93ZXZlciBtb3N0IGNsYXNzZXNcbiAgIHdpbGwgZWl0aGVyIGRlbGVnYXRlIGZvcm1hdHRpbmcgdG8gb25lIG9mIHRoZSBidWlsdC1pbiB0eXBlcywgb3JcbiAgIHVzZSBhIHNpbWlsYXIgZm9ybWF0dGluZyBvcHRpb24gc3ludGF4LlxuXG4gICBTZWUgKkZvcm1hdCBTcGVjaWZpY2F0aW9uIE1pbmktTGFuZ3VhZ2UqIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZVxuICAgc3RhbmRhcmQgZm9ybWF0dGluZyBzeW50YXguXG5cbiAgIFRoZSByZXR1cm4gdmFsdWUgbXVzdCBiZSBhIHN0cmluZyBvYmplY3QuXG5cbm9iamVjdC5fX2x0X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19sZV9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fZXFfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX25lX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19ndF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fZ2VfXyhzZWxmLCBvdGhlcilcblxuICAgVGhlc2UgYXJlIHRoZSBzby1jYWxsZWQgInJpY2ggY29tcGFyaXNvbiIgbWV0aG9kcy4gVGhlXG4gICBjb3JyZXNwb25kZW5jZSBiZXR3ZWVuIG9wZXJhdG9yIHN5bWJvbHMgYW5kIG1ldGhvZCBuYW1lcyBpcyBhc1xuICAgZm9sbG93czogYGB4PHlgYCBjYWxscyBgYHguX19sdF9fKHkpYGAsIGBgeDw9eWBgIGNhbGxzXG4gICBgYHguX19sZV9fKHkpYGAsIGBgeD09eWBgIGNhbGxzIGBgeC5fX2VxX18oeSlgYCwgYGB4IT15YGAgY2FsbHNcbiAgIGBgeC5fX25lX18oeSlgYCwgYGB4PnlgYCBjYWxscyBgYHguX19ndF9fKHkpYGAsIGFuZCBgYHg+PXlgYCBjYWxsc1xuICAgYGB4Ll9fZ2VfXyh5KWBgLlxuXG4gICBBIHJpY2ggY29tcGFyaXNvbiBtZXRob2QgbWF5IHJldHVybiB0aGUgc2luZ2xldG9uXG4gICBgYE5vdEltcGxlbWVudGVkYGAgaWYgaXQgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBvcGVyYXRpb24gZm9yIGFcbiAgIGdpdmVuIHBhaXIgb2YgYXJndW1lbnRzLiBCeSBjb252ZW50aW9uLCBgYEZhbHNlYGAgYW5kIGBgVHJ1ZWBgIGFyZVxuICAgcmV0dXJuZWQgZm9yIGEgc3VjY2Vzc2Z1bCBjb21wYXJpc29uLiBIb3dldmVyLCB0aGVzZSBtZXRob2RzIGNhblxuICAgcmV0dXJuIGFueSB2YWx1ZSwgc28gaWYgdGhlIGNvbXBhcmlzb24gb3BlcmF0b3IgaXMgdXNlZCBpbiBhXG4gICBCb29sZWFuIGNvbnRleHQgKGUuZy4sIGluIHRoZSBjb25kaXRpb24gb2YgYW4gYGBpZmBgIHN0YXRlbWVudCksXG4gICBQeXRob24gd2lsbCBjYWxsIGBgYm9vbCgpYGAgb24gdGhlIHZhbHVlIHRvIGRldGVybWluZSBpZiB0aGUgcmVzdWx0XG4gICBpcyB0cnVlIG9yIGZhbHNlLlxuXG4gICBUaGVyZSBhcmUgbm8gaW1wbGllZCByZWxhdGlvbnNoaXBzIGFtb25nIHRoZSBjb21wYXJpc29uIG9wZXJhdG9ycy5cbiAgIFRoZSB0cnV0aCBvZiBgYHg9PXlgYCBkb2VzIG5vdCBpbXBseSB0aGF0IGBgeCE9eWBgIGlzIGZhbHNlLlxuICAgQWNjb3JkaW5nbHksIHdoZW4gZGVmaW5pbmcgYGBfX2VxX18oKWBgLCBvbmUgc2hvdWxkIGFsc28gZGVmaW5lXG4gICBgYF9fbmVfXygpYGAgc28gdGhhdCB0aGUgb3BlcmF0b3JzIHdpbGwgYmVoYXZlIGFzIGV4cGVjdGVkLiAgU2VlXG4gICB0aGUgcGFyYWdyYXBoIG9uIGBgX19oYXNoX18oKWBgIGZvciBzb21lIGltcG9ydGFudCBub3RlcyBvblxuICAgY3JlYXRpbmcgKmhhc2hhYmxlKiBvYmplY3RzIHdoaWNoIHN1cHBvcnQgY3VzdG9tIGNvbXBhcmlzb25cbiAgIG9wZXJhdGlvbnMgYW5kIGFyZSB1c2FibGUgYXMgZGljdGlvbmFyeSBrZXlzLlxuXG4gICBUaGVyZSBhcmUgbm8gc3dhcHBlZC1hcmd1bWVudCB2ZXJzaW9ucyBvZiB0aGVzZSBtZXRob2RzICh0byBiZSB1c2VkXG4gICB3aGVuIHRoZSBsZWZ0IGFyZ3VtZW50IGRvZXMgbm90IHN1cHBvcnQgdGhlIG9wZXJhdGlvbiBidXQgdGhlIHJpZ2h0XG4gICBhcmd1bWVudCBkb2VzKTsgcmF0aGVyLCBgYF9fbHRfXygpYGAgYW5kIGBgX19ndF9fKClgYCBhcmUgZWFjaFxuICAgb3RoZXJcJ3MgcmVmbGVjdGlvbiwgYGBfX2xlX18oKWBgIGFuZCBgYF9fZ2VfXygpYGAgYXJlIGVhY2ggb3RoZXJcJ3NcbiAgIHJlZmxlY3Rpb24sIGFuZCBgYF9fZXFfXygpYGAgYW5kIGBgX19uZV9fKClgYCBhcmUgdGhlaXIgb3duXG4gICByZWZsZWN0aW9uLlxuXG4gICBBcmd1bWVudHMgdG8gcmljaCBjb21wYXJpc29uIG1ldGhvZHMgYXJlIG5ldmVyIGNvZXJjZWQuXG5cbiAgIFRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgb3JkZXJpbmcgb3BlcmF0aW9ucyBmcm9tIGEgc2luZ2xlIHJvb3RcbiAgIG9wZXJhdGlvbiwgc2VlIGBgZnVuY3Rvb2xzLnRvdGFsX29yZGVyaW5nKClgYC5cblxub2JqZWN0Ll9faGFzaF9fKHNlbGYpXG5cbiAgIENhbGxlZCBieSBidWlsdC1pbiBmdW5jdGlvbiBgYGhhc2goKWBgIGFuZCBmb3Igb3BlcmF0aW9ucyBvblxuICAgbWVtYmVycyBvZiBoYXNoZWQgY29sbGVjdGlvbnMgaW5jbHVkaW5nIGBgc2V0YGAsIGBgZnJvemVuc2V0YGAsIGFuZFxuICAgYGBkaWN0YGAuICBgYF9faGFzaF9fKClgYCBzaG91bGQgcmV0dXJuIGFuIGludGVnZXIuICBUaGUgb25seVxuICAgcmVxdWlyZWQgcHJvcGVydHkgaXMgdGhhdCBvYmplY3RzIHdoaWNoIGNvbXBhcmUgZXF1YWwgaGF2ZSB0aGUgc2FtZVxuICAgaGFzaCB2YWx1ZTsgaXQgaXMgYWR2aXNlZCB0byBzb21laG93IG1peCB0b2dldGhlciAoZS5nLiB1c2luZ1xuICAgZXhjbHVzaXZlIG9yKSB0aGUgaGFzaCB2YWx1ZXMgZm9yIHRoZSBjb21wb25lbnRzIG9mIHRoZSBvYmplY3QgdGhhdFxuICAgYWxzbyBwbGF5IGEgcGFydCBpbiBjb21wYXJpc29uIG9mIG9iamVjdHMuXG5cbiAgIElmIGEgY2xhc3MgZG9lcyBub3QgZGVmaW5lIGFuIGBgX19lcV9fKClgYCBtZXRob2QgaXQgc2hvdWxkIG5vdFxuICAgZGVmaW5lIGEgYGBfX2hhc2hfXygpYGAgb3BlcmF0aW9uIGVpdGhlcjsgaWYgaXQgZGVmaW5lc1xuICAgYGBfX2VxX18oKWBgIGJ1dCBub3QgYGBfX2hhc2hfXygpYGAsIGl0cyBpbnN0YW5jZXMgd2lsbCBub3QgYmVcbiAgIHVzYWJsZSBhcyBpdGVtcyBpbiBoYXNoYWJsZSBjb2xsZWN0aW9ucy4gIElmIGEgY2xhc3MgZGVmaW5lc1xuICAgbXV0YWJsZSBvYmplY3RzIGFuZCBpbXBsZW1lbnRzIGFuIGBgX19lcV9fKClgYCBtZXRob2QsIGl0IHNob3VsZFxuICAgbm90IGltcGxlbWVudCBgYF9faGFzaF9fKClgYCwgc2luY2UgdGhlIGltcGxlbWVudGF0aW9uIG9mIGhhc2hhYmxlXG4gICBjb2xsZWN0aW9ucyByZXF1aXJlcyB0aGF0IGEga2V5XCdzIGhhc2ggdmFsdWUgaXMgaW1tdXRhYmxlIChpZiB0aGVcbiAgIG9iamVjdFwncyBoYXNoIHZhbHVlIGNoYW5nZXMsIGl0IHdpbGwgYmUgaW4gdGhlIHdyb25nIGhhc2ggYnVja2V0KS5cblxuICAgVXNlci1kZWZpbmVkIGNsYXNzZXMgaGF2ZSBgYF9fZXFfXygpYGAgYW5kIGBgX19oYXNoX18oKWBgIG1ldGhvZHNcbiAgIGJ5IGRlZmF1bHQ7IHdpdGggdGhlbSwgYWxsIG9iamVjdHMgY29tcGFyZSB1bmVxdWFsIChleGNlcHQgd2l0aFxuICAgdGhlbXNlbHZlcykgYW5kIGBgeC5fX2hhc2hfXygpYGAgcmV0dXJucyBgYGlkKHgpYGAuXG5cbiAgIENsYXNzZXMgd2hpY2ggaW5oZXJpdCBhIGBgX19oYXNoX18oKWBgIG1ldGhvZCBmcm9tIGEgcGFyZW50IGNsYXNzXG4gICBidXQgY2hhbmdlIHRoZSBtZWFuaW5nIG9mIGBgX19lcV9fKClgYCBzdWNoIHRoYXQgdGhlIGhhc2ggdmFsdWVcbiAgIHJldHVybmVkIGlzIG5vIGxvbmdlciBhcHByb3ByaWF0ZSAoZS5nLiBieSBzd2l0Y2hpbmcgdG8gYSB2YWx1ZS1cbiAgIGJhc2VkIGNvbmNlcHQgb2YgZXF1YWxpdHkgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCBpZGVudGl0eSBiYXNlZFxuICAgZXF1YWxpdHkpIGNhbiBleHBsaWNpdGx5IGZsYWcgdGhlbXNlbHZlcyBhcyBiZWluZyB1bmhhc2hhYmxlIGJ5XG4gICBzZXR0aW5nIGBgX19oYXNoX18gPSBOb25lYGAgaW4gdGhlIGNsYXNzIGRlZmluaXRpb24uIERvaW5nIHNvIG1lYW5zXG4gICB0aGF0IG5vdCBvbmx5IHdpbGwgaW5zdGFuY2VzIG9mIHRoZSBjbGFzcyByYWlzZSBhbiBhcHByb3ByaWF0ZVxuICAgYGBUeXBlRXJyb3JgYCB3aGVuIGEgcHJvZ3JhbSBhdHRlbXB0cyB0byByZXRyaWV2ZSB0aGVpciBoYXNoIHZhbHVlLFxuICAgYnV0IHRoZXkgd2lsbCBhbHNvIGJlIGNvcnJlY3RseSBpZGVudGlmaWVkIGFzIHVuaGFzaGFibGUgd2hlblxuICAgY2hlY2tpbmcgYGBpc2luc3RhbmNlKG9iaiwgY29sbGVjdGlvbnMuSGFzaGFibGUpYGAgKHVubGlrZSBjbGFzc2VzXG4gICB3aGljaCBkZWZpbmUgdGhlaXIgb3duIGBgX19oYXNoX18oKWBgIHRvIGV4cGxpY2l0bHkgcmFpc2VcbiAgIGBgVHlwZUVycm9yYGApLlxuXG4gICBJZiBhIGNsYXNzIHRoYXQgb3ZlcnJpZGVzIGBgX19lcV9fKClgYCBuZWVkcyB0byByZXRhaW4gdGhlXG4gICBpbXBsZW1lbnRhdGlvbiBvZiBgYF9faGFzaF9fKClgYCBmcm9tIGEgcGFyZW50IGNsYXNzLCB0aGVcbiAgIGludGVycHJldGVyIG11c3QgYmUgdG9sZCB0aGlzIGV4cGxpY2l0bHkgYnkgc2V0dGluZyBgYF9faGFzaF9fID1cbiAgIDxQYXJlbnRDbGFzcz4uX19oYXNoX19gYC4gT3RoZXJ3aXNlIHRoZSBpbmhlcml0YW5jZSBvZlxuICAgYGBfX2hhc2hfXygpYGAgd2lsbCBiZSBibG9ja2VkLCBqdXN0IGFzIGlmIGBgX19oYXNoX19gYCBoYWQgYmVlblxuICAgZXhwbGljaXRseSBzZXQgdG8gYGBOb25lYGAuXG5cbiAgIE5vdGU6IE5vdGUgYnkgZGVmYXVsdCB0aGUgYGBfX2hhc2hfXygpYGAgdmFsdWVzIG9mIHN0ciwgYnl0ZXMgYW5kXG4gICAgIGRhdGV0aW1lIG9iamVjdHMgYXJlICJzYWx0ZWQiIHdpdGggYW4gdW5wcmVkaWN0YWJsZSByYW5kb20gdmFsdWUuXG4gICAgIEFsdGhvdWdoIHRoZXkgcmVtYWluIGNvbnN0YW50IHdpdGhpbiBhbiBpbmRpdmlkdWFsIFB5dGhvblxuICAgICBwcm9jZXNzLCB0aGV5IGFyZSBub3QgcHJlZGljdGFibGUgYmV0d2VlbiByZXBlYXRlZCBpbnZvY2F0aW9ucyBvZlxuICAgICBQeXRob24uVGhpcyBpcyBpbnRlbmRlZCB0byBwcm92aWRlIHByb3RlY3Rpb24gYWdhaW5zdCBhIGRlbmlhbC1cbiAgICAgb2Ytc2VydmljZSBjYXVzZWQgYnkgY2FyZWZ1bGx5LWNob3NlbiBpbnB1dHMgdGhhdCBleHBsb2l0IHRoZVxuICAgICB3b3JzdCBjYXNlIHBlcmZvcm1hbmNlIG9mIGEgZGljdCBpbnNlcnRpb24sIE8obl4yKSBjb21wbGV4aXR5LlxuICAgICBTZWUgaHR0cDovL3d3dy5vY2VydC5vcmcvYWR2aXNvcmllcy9vY2VydC0yMDExLTAwMy5odG1sIGZvclxuICAgICBkZXRhaWxzLkNoYW5naW5nIGhhc2ggdmFsdWVzIGFmZmVjdHMgdGhlIG9yZGVyIGluIHdoaWNoIGtleXMgYXJlXG4gICAgIHJldHJpZXZlZCBmcm9tIGEgZGljdC4gIE5vdGUgUHl0aG9uIGhhcyBuZXZlciBtYWRlIGd1YXJhbnRlZXNcbiAgICAgYWJvdXQgdGhpcyBvcmRlcmluZyAoYW5kIGl0IHR5cGljYWxseSB2YXJpZXMgYmV0d2VlbiAzMi1iaXQgYW5kXG4gICAgIDY0LWJpdCBidWlsZHMpLlNlZSBhbHNvIGBgUFlUSE9OSEFTSFNFRURgYC5cblxuICAgQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMzogSGFzaCByYW5kb21pemF0aW9uIGlzIGVuYWJsZWQgYnkgZGVmYXVsdC5cblxub2JqZWN0Ll9fYm9vbF9fKHNlbGYpXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgdHJ1dGggdmFsdWUgdGVzdGluZyBhbmQgdGhlIGJ1aWx0LWluIG9wZXJhdGlvblxuICAgYGBib29sKClgYDsgc2hvdWxkIHJldHVybiBgYEZhbHNlYGAgb3IgYGBUcnVlYGAuICBXaGVuIHRoaXMgbWV0aG9kXG4gICBpcyBub3QgZGVmaW5lZCwgYGBfX2xlbl9fKClgYCBpcyBjYWxsZWQsIGlmIGl0IGlzIGRlZmluZWQsIGFuZCB0aGVcbiAgIG9iamVjdCBpcyBjb25zaWRlcmVkIHRydWUgaWYgaXRzIHJlc3VsdCBpcyBub256ZXJvLiAgSWYgYSBjbGFzc1xuICAgZGVmaW5lcyBuZWl0aGVyIGBgX19sZW5fXygpYGAgbm9yIGBgX19ib29sX18oKWBgLCBhbGwgaXRzIGluc3RhbmNlc1xuICAgYXJlIGNvbnNpZGVyZWQgdHJ1ZS5cblxuXG5DdXN0b21pemluZyBhdHRyaWJ1dGUgYWNjZXNzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblRoZSBmb2xsb3dpbmcgbWV0aG9kcyBjYW4gYmUgZGVmaW5lZCB0byBjdXN0b21pemUgdGhlIG1lYW5pbmcgb2ZcbmF0dHJpYnV0ZSBhY2Nlc3MgKHVzZSBvZiwgYXNzaWdubWVudCB0bywgb3IgZGVsZXRpb24gb2YgYGB4Lm5hbWVgYClcbmZvciBjbGFzcyBpbnN0YW5jZXMuXG5cbm9iamVjdC5fX2dldGF0dHJfXyhzZWxmLCBuYW1lKVxuXG4gICBDYWxsZWQgd2hlbiBhbiBhdHRyaWJ1dGUgbG9va3VwIGhhcyBub3QgZm91bmQgdGhlIGF0dHJpYnV0ZSBpbiB0aGVcbiAgIHVzdWFsIHBsYWNlcyAoaS5lLiBpdCBpcyBub3QgYW4gaW5zdGFuY2UgYXR0cmlidXRlIG5vciBpcyBpdCBmb3VuZFxuICAgaW4gdGhlIGNsYXNzIHRyZWUgZm9yIGBgc2VsZmBgKS4gIGBgbmFtZWBgIGlzIHRoZSBhdHRyaWJ1dGUgbmFtZS5cbiAgIFRoaXMgbWV0aG9kIHNob3VsZCByZXR1cm4gdGhlIChjb21wdXRlZCkgYXR0cmlidXRlIHZhbHVlIG9yIHJhaXNlXG4gICBhbiBgYEF0dHJpYnV0ZUVycm9yYGAgZXhjZXB0aW9uLlxuXG4gICBOb3RlIHRoYXQgaWYgdGhlIGF0dHJpYnV0ZSBpcyBmb3VuZCB0aHJvdWdoIHRoZSBub3JtYWwgbWVjaGFuaXNtLFxuICAgYGBfX2dldGF0dHJfXygpYGAgaXMgbm90IGNhbGxlZC4gIChUaGlzIGlzIGFuIGludGVudGlvbmFsIGFzeW1tZXRyeVxuICAgYmV0d2VlbiBgYF9fZ2V0YXR0cl9fKClgYCBhbmQgYGBfX3NldGF0dHJfXygpYGAuKSBUaGlzIGlzIGRvbmUgYm90aFxuICAgZm9yIGVmZmljaWVuY3kgcmVhc29ucyBhbmQgYmVjYXVzZSBvdGhlcndpc2UgYGBfX2dldGF0dHJfXygpYGBcbiAgIHdvdWxkIGhhdmUgbm8gd2F5IHRvIGFjY2VzcyBvdGhlciBhdHRyaWJ1dGVzIG9mIHRoZSBpbnN0YW5jZS4gIE5vdGVcbiAgIHRoYXQgYXQgbGVhc3QgZm9yIGluc3RhbmNlIHZhcmlhYmxlcywgeW91IGNhbiBmYWtlIHRvdGFsIGNvbnRyb2wgYnlcbiAgIG5vdCBpbnNlcnRpbmcgYW55IHZhbHVlcyBpbiB0aGUgaW5zdGFuY2UgYXR0cmlidXRlIGRpY3Rpb25hcnkgKGJ1dFxuICAgaW5zdGVhZCBpbnNlcnRpbmcgdGhlbSBpbiBhbm90aGVyIG9iamVjdCkuICBTZWUgdGhlXG4gICBgYF9fZ2V0YXR0cmlidXRlX18oKWBgIG1ldGhvZCBiZWxvdyBmb3IgYSB3YXkgdG8gYWN0dWFsbHkgZ2V0IHRvdGFsXG4gICBjb250cm9sIG92ZXIgYXR0cmlidXRlIGFjY2Vzcy5cblxub2JqZWN0Ll9fZ2V0YXR0cmlidXRlX18oc2VsZiwgbmFtZSlcblxuICAgQ2FsbGVkIHVuY29uZGl0aW9uYWxseSB0byBpbXBsZW1lbnQgYXR0cmlidXRlIGFjY2Vzc2VzIGZvclxuICAgaW5zdGFuY2VzIG9mIHRoZSBjbGFzcy4gSWYgdGhlIGNsYXNzIGFsc28gZGVmaW5lc1xuICAgYGBfX2dldGF0dHJfXygpYGAsIHRoZSBsYXR0ZXIgd2lsbCBub3QgYmUgY2FsbGVkIHVubGVzc1xuICAgYGBfX2dldGF0dHJpYnV0ZV9fKClgYCBlaXRoZXIgY2FsbHMgaXQgZXhwbGljaXRseSBvciByYWlzZXMgYW5cbiAgIGBgQXR0cmlidXRlRXJyb3JgYC4gVGhpcyBtZXRob2Qgc2hvdWxkIHJldHVybiB0aGUgKGNvbXB1dGVkKVxuICAgYXR0cmlidXRlIHZhbHVlIG9yIHJhaXNlIGFuIGBgQXR0cmlidXRlRXJyb3JgYCBleGNlcHRpb24uIEluIG9yZGVyXG4gICB0byBhdm9pZCBpbmZpbml0ZSByZWN1cnNpb24gaW4gdGhpcyBtZXRob2QsIGl0cyBpbXBsZW1lbnRhdGlvblxuICAgc2hvdWxkIGFsd2F5cyBjYWxsIHRoZSBiYXNlIGNsYXNzIG1ldGhvZCB3aXRoIHRoZSBzYW1lIG5hbWUgdG9cbiAgIGFjY2VzcyBhbnkgYXR0cmlidXRlcyBpdCBuZWVkcywgZm9yIGV4YW1wbGUsXG4gICBgYG9iamVjdC5fX2dldGF0dHJpYnV0ZV9fKHNlbGYsIG5hbWUpYGAuXG5cbiAgIE5vdGU6IFRoaXMgbWV0aG9kIG1heSBzdGlsbCBiZSBieXBhc3NlZCB3aGVuIGxvb2tpbmcgdXAgc3BlY2lhbCBtZXRob2RzXG4gICAgIGFzIHRoZSByZXN1bHQgb2YgaW1wbGljaXQgaW52b2NhdGlvbiB2aWEgbGFuZ3VhZ2Ugc3ludGF4IG9yXG4gICAgIGJ1aWx0LWluIGZ1bmN0aW9ucy4gU2VlICpTcGVjaWFsIG1ldGhvZCBsb29rdXAqLlxuXG5vYmplY3QuX19zZXRhdHRyX18oc2VsZiwgbmFtZSwgdmFsdWUpXG5cbiAgIENhbGxlZCB3aGVuIGFuIGF0dHJpYnV0ZSBhc3NpZ25tZW50IGlzIGF0dGVtcHRlZC4gIFRoaXMgaXMgY2FsbGVkXG4gICBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgbWVjaGFuaXNtIChpLmUuIHN0b3JlIHRoZSB2YWx1ZSBpbiB0aGVcbiAgIGluc3RhbmNlIGRpY3Rpb25hcnkpLiAqbmFtZSogaXMgdGhlIGF0dHJpYnV0ZSBuYW1lLCAqdmFsdWUqIGlzIHRoZVxuICAgdmFsdWUgdG8gYmUgYXNzaWduZWQgdG8gaXQuXG5cbiAgIElmIGBgX19zZXRhdHRyX18oKWBgIHdhbnRzIHRvIGFzc2lnbiB0byBhbiBpbnN0YW5jZSBhdHRyaWJ1dGUsIGl0XG4gICBzaG91bGQgY2FsbCB0aGUgYmFzZSBjbGFzcyBtZXRob2Qgd2l0aCB0aGUgc2FtZSBuYW1lLCBmb3IgZXhhbXBsZSxcbiAgIGBgb2JqZWN0Ll9fc2V0YXR0cl9fKHNlbGYsIG5hbWUsIHZhbHVlKWBgLlxuXG5vYmplY3QuX19kZWxhdHRyX18oc2VsZiwgbmFtZSlcblxuICAgTGlrZSBgYF9fc2V0YXR0cl9fKClgYCBidXQgZm9yIGF0dHJpYnV0ZSBkZWxldGlvbiBpbnN0ZWFkIG9mXG4gICBhc3NpZ25tZW50LiAgVGhpcyBzaG91bGQgb25seSBiZSBpbXBsZW1lbnRlZCBpZiBgYGRlbCBvYmoubmFtZWBgIGlzXG4gICBtZWFuaW5nZnVsIGZvciB0aGUgb2JqZWN0LlxuXG5vYmplY3QuX19kaXJfXyhzZWxmKVxuXG4gICBDYWxsZWQgd2hlbiBgYGRpcigpYGAgaXMgY2FsbGVkIG9uIHRoZSBvYmplY3QuIEEgc2VxdWVuY2UgbXVzdCBiZVxuICAgcmV0dXJuZWQuIGBgZGlyKClgYCBjb252ZXJ0cyB0aGUgcmV0dXJuZWQgc2VxdWVuY2UgdG8gYSBsaXN0IGFuZFxuICAgc29ydHMgaXQuXG5cblxuSW1wbGVtZW50aW5nIERlc2NyaXB0b3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuVGhlIGZvbGxvd2luZyBtZXRob2RzIG9ubHkgYXBwbHkgd2hlbiBhbiBpbnN0YW5jZSBvZiB0aGUgY2xhc3NcbmNvbnRhaW5pbmcgdGhlIG1ldGhvZCAoYSBzby1jYWxsZWQgKmRlc2NyaXB0b3IqIGNsYXNzKSBhcHBlYXJzIGluIGFuXG4qb3duZXIqIGNsYXNzICh0aGUgZGVzY3JpcHRvciBtdXN0IGJlIGluIGVpdGhlciB0aGUgb3duZXJcJ3MgY2xhc3NcbmRpY3Rpb25hcnkgb3IgaW4gdGhlIGNsYXNzIGRpY3Rpb25hcnkgZm9yIG9uZSBvZiBpdHMgcGFyZW50cykuICBJbiB0aGVcbmV4YW1wbGVzIGJlbG93LCAidGhlIGF0dHJpYnV0ZSIgcmVmZXJzIHRvIHRoZSBhdHRyaWJ1dGUgd2hvc2UgbmFtZSBpc1xudGhlIGtleSBvZiB0aGUgcHJvcGVydHkgaW4gdGhlIG93bmVyIGNsYXNzXCcgYGBfX2RpY3RfX2BgLlxuXG5vYmplY3QuX19nZXRfXyhzZWxmLCBpbnN0YW5jZSwgb3duZXIpXG5cbiAgIENhbGxlZCB0byBnZXQgdGhlIGF0dHJpYnV0ZSBvZiB0aGUgb3duZXIgY2xhc3MgKGNsYXNzIGF0dHJpYnV0ZVxuICAgYWNjZXNzKSBvciBvZiBhbiBpbnN0YW5jZSBvZiB0aGF0IGNsYXNzIChpbnN0YW5jZSBhdHRyaWJ1dGVcbiAgIGFjY2VzcykuICpvd25lciogaXMgYWx3YXlzIHRoZSBvd25lciBjbGFzcywgd2hpbGUgKmluc3RhbmNlKiBpcyB0aGVcbiAgIGluc3RhbmNlIHRoYXQgdGhlIGF0dHJpYnV0ZSB3YXMgYWNjZXNzZWQgdGhyb3VnaCwgb3IgYGBOb25lYGAgd2hlblxuICAgdGhlIGF0dHJpYnV0ZSBpcyBhY2Nlc3NlZCB0aHJvdWdoIHRoZSAqb3duZXIqLiAgVGhpcyBtZXRob2Qgc2hvdWxkXG4gICByZXR1cm4gdGhlIChjb21wdXRlZCkgYXR0cmlidXRlIHZhbHVlIG9yIHJhaXNlIGFuXG4gICBgYEF0dHJpYnV0ZUVycm9yYGAgZXhjZXB0aW9uLlxuXG5vYmplY3QuX19zZXRfXyhzZWxmLCBpbnN0YW5jZSwgdmFsdWUpXG5cbiAgIENhbGxlZCB0byBzZXQgdGhlIGF0dHJpYnV0ZSBvbiBhbiBpbnN0YW5jZSAqaW5zdGFuY2UqIG9mIHRoZSBvd25lclxuICAgY2xhc3MgdG8gYSBuZXcgdmFsdWUsICp2YWx1ZSouXG5cbm9iamVjdC5fX2RlbGV0ZV9fKHNlbGYsIGluc3RhbmNlKVxuXG4gICBDYWxsZWQgdG8gZGVsZXRlIHRoZSBhdHRyaWJ1dGUgb24gYW4gaW5zdGFuY2UgKmluc3RhbmNlKiBvZiB0aGVcbiAgIG93bmVyIGNsYXNzLlxuXG5cbkludm9raW5nIERlc2NyaXB0b3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5JbiBnZW5lcmFsLCBhIGRlc2NyaXB0b3IgaXMgYW4gb2JqZWN0IGF0dHJpYnV0ZSB3aXRoICJiaW5kaW5nXG5iZWhhdmlvciIsIG9uZSB3aG9zZSBhdHRyaWJ1dGUgYWNjZXNzIGhhcyBiZWVuIG92ZXJyaWRkZW4gYnkgbWV0aG9kc1xuaW4gdGhlIGRlc2NyaXB0b3IgcHJvdG9jb2w6ICBgYF9fZ2V0X18oKWBgLCBgYF9fc2V0X18oKWBgLCBhbmRcbmBgX19kZWxldGVfXygpYGAuIElmIGFueSBvZiB0aG9zZSBtZXRob2RzIGFyZSBkZWZpbmVkIGZvciBhbiBvYmplY3QsXG5pdCBpcyBzYWlkIHRvIGJlIGEgZGVzY3JpcHRvci5cblxuVGhlIGRlZmF1bHQgYmVoYXZpb3IgZm9yIGF0dHJpYnV0ZSBhY2Nlc3MgaXMgdG8gZ2V0LCBzZXQsIG9yIGRlbGV0ZVxudGhlIGF0dHJpYnV0ZSBmcm9tIGFuIG9iamVjdFwncyBkaWN0aW9uYXJ5LiBGb3IgaW5zdGFuY2UsIGBgYS54YGAgaGFzIGFcbmxvb2t1cCBjaGFpbiBzdGFydGluZyB3aXRoIGBgYS5fX2RpY3RfX1tcJ3hcJ11gYCwgdGhlblxuYGB0eXBlKGEpLl9fZGljdF9fW1wneFwnXWBgLCBhbmQgY29udGludWluZyB0aHJvdWdoIHRoZSBiYXNlIGNsYXNzZXMgb2ZcbmBgdHlwZShhKWBgIGV4Y2x1ZGluZyBtZXRhY2xhc3Nlcy5cblxuSG93ZXZlciwgaWYgdGhlIGxvb2tlZC11cCB2YWx1ZSBpcyBhbiBvYmplY3QgZGVmaW5pbmcgb25lIG9mIHRoZVxuZGVzY3JpcHRvciBtZXRob2RzLCB0aGVuIFB5dGhvbiBtYXkgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYmVoYXZpb3IgYW5kXG5pbnZva2UgdGhlIGRlc2NyaXB0b3IgbWV0aG9kIGluc3RlYWQuICBXaGVyZSB0aGlzIG9jY3VycyBpbiB0aGVcbnByZWNlZGVuY2UgY2hhaW4gZGVwZW5kcyBvbiB3aGljaCBkZXNjcmlwdG9yIG1ldGhvZHMgd2VyZSBkZWZpbmVkIGFuZFxuaG93IHRoZXkgd2VyZSBjYWxsZWQuXG5cblRoZSBzdGFydGluZyBwb2ludCBmb3IgZGVzY3JpcHRvciBpbnZvY2F0aW9uIGlzIGEgYmluZGluZywgYGBhLnhgYC5cbkhvdyB0aGUgYXJndW1lbnRzIGFyZSBhc3NlbWJsZWQgZGVwZW5kcyBvbiBgYGFgYDpcblxuRGlyZWN0IENhbGxcbiAgIFRoZSBzaW1wbGVzdCBhbmQgbGVhc3QgY29tbW9uIGNhbGwgaXMgd2hlbiB1c2VyIGNvZGUgZGlyZWN0bHlcbiAgIGludm9rZXMgYSBkZXNjcmlwdG9yIG1ldGhvZDogICAgYGB4Ll9fZ2V0X18oYSlgYC5cblxuSW5zdGFuY2UgQmluZGluZ1xuICAgSWYgYmluZGluZyB0byBhbiBvYmplY3QgaW5zdGFuY2UsIGBgYS54YGAgaXMgdHJhbnNmb3JtZWQgaW50byB0aGVcbiAgIGNhbGw6IGBgdHlwZShhKS5fX2RpY3RfX1tcJ3hcJ10uX19nZXRfXyhhLCB0eXBlKGEpKWBgLlxuXG5DbGFzcyBCaW5kaW5nXG4gICBJZiBiaW5kaW5nIHRvIGEgY2xhc3MsIGBgQS54YGAgaXMgdHJhbnNmb3JtZWQgaW50byB0aGUgY2FsbDpcbiAgIGBgQS5fX2RpY3RfX1tcJ3hcJ10uX19nZXRfXyhOb25lLCBBKWBgLlxuXG5TdXBlciBCaW5kaW5nXG4gICBJZiBgYGFgYCBpcyBhbiBpbnN0YW5jZSBvZiBgYHN1cGVyYGAsIHRoZW4gdGhlIGJpbmRpbmcgYGBzdXBlcihCLFxuICAgb2JqKS5tKClgYCBzZWFyY2hlcyBgYG9iai5fX2NsYXNzX18uX19tcm9fX2BgIGZvciB0aGUgYmFzZSBjbGFzc1xuICAgYGBBYGAgaW1tZWRpYXRlbHkgcHJlY2VkaW5nIGBgQmBgIGFuZCB0aGVuIGludm9rZXMgdGhlIGRlc2NyaXB0b3JcbiAgIHdpdGggdGhlIGNhbGw6IGBgQS5fX2RpY3RfX1tcJ21cJ10uX19nZXRfXyhvYmosIG9iai5fX2NsYXNzX18pYGAuXG5cbkZvciBpbnN0YW5jZSBiaW5kaW5ncywgdGhlIHByZWNlZGVuY2Ugb2YgZGVzY3JpcHRvciBpbnZvY2F0aW9uIGRlcGVuZHNcbm9uIHRoZSB3aGljaCBkZXNjcmlwdG9yIG1ldGhvZHMgYXJlIGRlZmluZWQuICBBIGRlc2NyaXB0b3IgY2FuIGRlZmluZVxuYW55IGNvbWJpbmF0aW9uIG9mIGBgX19nZXRfXygpYGAsIGBgX19zZXRfXygpYGAgYW5kIGBgX19kZWxldGVfXygpYGAuXG5JZiBpdCBkb2VzIG5vdCBkZWZpbmUgYGBfX2dldF9fKClgYCwgdGhlbiBhY2Nlc3NpbmcgdGhlIGF0dHJpYnV0ZSB3aWxsXG5yZXR1cm4gdGhlIGRlc2NyaXB0b3Igb2JqZWN0IGl0c2VsZiB1bmxlc3MgdGhlcmUgaXMgYSB2YWx1ZSBpbiB0aGVcbm9iamVjdFwncyBpbnN0YW5jZSBkaWN0aW9uYXJ5LiAgSWYgdGhlIGRlc2NyaXB0b3IgZGVmaW5lcyBgYF9fc2V0X18oKWBgXG5hbmQvb3IgYGBfX2RlbGV0ZV9fKClgYCwgaXQgaXMgYSBkYXRhIGRlc2NyaXB0b3I7IGlmIGl0IGRlZmluZXNcbm5laXRoZXIsIGl0IGlzIGEgbm9uLWRhdGEgZGVzY3JpcHRvci4gIE5vcm1hbGx5LCBkYXRhIGRlc2NyaXB0b3JzXG5kZWZpbmUgYm90aCBgYF9fZ2V0X18oKWBgIGFuZCBgYF9fc2V0X18oKWBgLCB3aGlsZSBub24tZGF0YVxuZGVzY3JpcHRvcnMgaGF2ZSBqdXN0IHRoZSBgYF9fZ2V0X18oKWBgIG1ldGhvZC4gIERhdGEgZGVzY3JpcHRvcnMgd2l0aFxuYGBfX3NldF9fKClgYCBhbmQgYGBfX2dldF9fKClgYCBkZWZpbmVkIGFsd2F5cyBvdmVycmlkZSBhIHJlZGVmaW5pdGlvblxuaW4gYW4gaW5zdGFuY2UgZGljdGlvbmFyeS4gIEluIGNvbnRyYXN0LCBub24tZGF0YSBkZXNjcmlwdG9ycyBjYW4gYmVcbm92ZXJyaWRkZW4gYnkgaW5zdGFuY2VzLlxuXG5QeXRob24gbWV0aG9kcyAoaW5jbHVkaW5nIGBgc3RhdGljbWV0aG9kKClgYCBhbmQgYGBjbGFzc21ldGhvZCgpYGApXG5hcmUgaW1wbGVtZW50ZWQgYXMgbm9uLWRhdGEgZGVzY3JpcHRvcnMuICBBY2NvcmRpbmdseSwgaW5zdGFuY2VzIGNhblxucmVkZWZpbmUgYW5kIG92ZXJyaWRlIG1ldGhvZHMuICBUaGlzIGFsbG93cyBpbmRpdmlkdWFsIGluc3RhbmNlcyB0b1xuYWNxdWlyZSBiZWhhdmlvcnMgdGhhdCBkaWZmZXIgZnJvbSBvdGhlciBpbnN0YW5jZXMgb2YgdGhlIHNhbWUgY2xhc3MuXG5cblRoZSBgYHByb3BlcnR5KClgYCBmdW5jdGlvbiBpcyBpbXBsZW1lbnRlZCBhcyBhIGRhdGEgZGVzY3JpcHRvci5cbkFjY29yZGluZ2x5LCBpbnN0YW5jZXMgY2Fubm90IG92ZXJyaWRlIHRoZSBiZWhhdmlvciBvZiBhIHByb3BlcnR5LlxuXG5cbl9fc2xvdHNfX1xuLS0tLS0tLS0tXG5cbkJ5IGRlZmF1bHQsIGluc3RhbmNlcyBvZiBjbGFzc2VzIGhhdmUgYSBkaWN0aW9uYXJ5IGZvciBhdHRyaWJ1dGVcbnN0b3JhZ2UuICBUaGlzIHdhc3RlcyBzcGFjZSBmb3Igb2JqZWN0cyBoYXZpbmcgdmVyeSBmZXcgaW5zdGFuY2VcbnZhcmlhYmxlcy4gIFRoZSBzcGFjZSBjb25zdW1wdGlvbiBjYW4gYmVjb21lIGFjdXRlIHdoZW4gY3JlYXRpbmcgbGFyZ2Vcbm51bWJlcnMgb2YgaW5zdGFuY2VzLlxuXG5UaGUgZGVmYXVsdCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyAqX19zbG90c19fKiBpbiBhIGNsYXNzXG5kZWZpbml0aW9uLiBUaGUgKl9fc2xvdHNfXyogZGVjbGFyYXRpb24gdGFrZXMgYSBzZXF1ZW5jZSBvZiBpbnN0YW5jZVxudmFyaWFibGVzIGFuZCByZXNlcnZlcyBqdXN0IGVub3VnaCBzcGFjZSBpbiBlYWNoIGluc3RhbmNlIHRvIGhvbGQgYVxudmFsdWUgZm9yIGVhY2ggdmFyaWFibGUuICBTcGFjZSBpcyBzYXZlZCBiZWNhdXNlICpfX2RpY3RfXyogaXMgbm90XG5jcmVhdGVkIGZvciBlYWNoIGluc3RhbmNlLlxuXG5vYmplY3QuX19zbG90c19fXG5cbiAgIFRoaXMgY2xhc3MgdmFyaWFibGUgY2FuIGJlIGFzc2lnbmVkIGEgc3RyaW5nLCBpdGVyYWJsZSwgb3Igc2VxdWVuY2VcbiAgIG9mIHN0cmluZ3Mgd2l0aCB2YXJpYWJsZSBuYW1lcyB1c2VkIGJ5IGluc3RhbmNlcy4gIElmIGRlZmluZWQgaW4gYVxuICAgY2xhc3MsICpfX3Nsb3RzX18qIHJlc2VydmVzIHNwYWNlIGZvciB0aGUgZGVjbGFyZWQgdmFyaWFibGVzIGFuZFxuICAgcHJldmVudHMgdGhlIGF1dG9tYXRpYyBjcmVhdGlvbiBvZiAqX19kaWN0X18qIGFuZCAqX193ZWFrcmVmX18qIGZvclxuICAgZWFjaCBpbnN0YW5jZS5cblxuXG5Ob3RlcyBvbiB1c2luZyAqX19zbG90c19fKlxufn5+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+Pj4gbGVuKGMpICAgICAgICAgICAgICAgICAgICAgICMgSW1wbGljaXQgbG9va3VwXG4gICAxMFxuXG5CeXBhc3NpbmcgdGhlIGBgX19nZXRhdHRyaWJ1dGVfXygpYGAgbWFjaGluZXJ5IGluIHRoaXMgZmFzaGlvblxucHJvdmlkZXMgc2lnbmlmaWNhbnQgc2NvcGUgZm9yIHNwZWVkIG9wdGltaXNhdGlvbnMgd2l0aGluIHRoZVxuaW50ZXJwcmV0ZXIsIGF0IHRoZSBjb3N0IG9mIHNvbWUgZmxleGliaWxpdHkgaW4gdGhlIGhhbmRsaW5nIG9mXG5zcGVjaWFsIG1ldGhvZHMgKHRoZSBzcGVjaWFsIG1ldGhvZCAqbXVzdCogYmUgc2V0IG9uIHRoZSBjbGFzcyBvYmplY3Rcbml0c2VsZiBpbiBvcmRlciB0byBiZSBjb25zaXN0ZW50bHkgaW52b2tlZCBieSB0aGUgaW50ZXJwcmV0ZXIpLlxuXG4tWyBGb290bm90ZXMgXS1cblxuWzFdIEl0ICppcyogcG9zc2libGUgaW4gc29tZSBjYXNlcyB0byBjaGFuZ2UgYW4gb2JqZWN0XCdzIHR5cGUsIHVuZGVyXG4gICAgY2VydGFpbiBjb250cm9sbGVkIGNvbmRpdGlvbnMuIEl0IGdlbmVyYWxseSBpc25cJ3QgYSBnb29kIGlkZWFcbiAgICB0aG91Z2gsIHNpbmNlIGl0IGNhbiBsZWFkIHRvIHNvbWUgdmVyeSBzdHJhbmdlIGJlaGF2aW91ciBpZiBpdCBpc1xuICAgIGhhbmRsZWQgaW5jb3JyZWN0bHkuXG5cblsyXSBGb3Igb3BlcmFuZHMgb2YgdGhlIHNhbWUgdHlwZSwgaXQgaXMgYXNzdW1lZCB0aGF0IGlmIHRoZSBub24tXG4gICAgcmVmbGVjdGVkIG1ldGhvZCAoc3VjaCBhcyBgYF9fYWRkX18oKWBgKSBmYWlscyB0aGUgb3BlcmF0aW9uIGlzXG4gICAgbm90IHN1cHBvcnRlZCwgd2hpY2ggaXMgd2h5IHRoZSByZWZsZWN0ZWQgbWV0aG9kIGlzIG5vdCBjYWxsZWQuXG4nLAorICdzdHJpbmctbWV0aG9kcyc6ICdcblN0cmluZyBNZXRob2RzXG4qKioqKioqKioqKioqKlxuXG5TdHJpbmcgb2JqZWN0cyBzdXBwb3J0IHRoZSBtZXRob2RzIGxpc3RlZCBiZWxvdy5cblxuSW4gYWRkaXRpb24sIFB5dGhvblwncyBzdHJpbmdzIHN1cHBvcnQgdGhlIHNlcXVlbmNlIHR5cGUgbWV0aG9kc1xuZGVzY3JpYmVkIGluIHRoZSAqU2VxdWVuY2UgVHlwZXMgLS0tIHN0ciwgYnl0ZXMsIGJ5dGVhcnJheSwgbGlzdCxcbnR1cGxlLCByYW5nZSogc2VjdGlvbi4gVG8gb3V0cHV0IGZvcm1hdHRlZCBzdHJpbmdzLCBzZWUgdGhlICpTdHJpbmdcbkZvcm1hdHRpbmcqIHNlY3Rpb24uIEFsc28sIHNlZSB0aGUgYGByZWBgIG1vZHVsZSBmb3Igc3RyaW5nIGZ1bmN0aW9uc1xuYmFzZWQgb24gcmVndWxhciBleHByZXNzaW9ucy5cblxuc3RyLmNhcGl0YWxpemUoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBpdHMgZmlyc3QgY2hhcmFjdGVyIGNhcGl0YWxpemVkXG4gICBhbmQgdGhlIHJlc3QgbG93ZXJjYXNlZC5cblxuc3RyLmNhc2Vmb2xkKClcblxuICAgUmV0dXJuIGEgY2FzZWZvbGRlZCBjb3B5IG9mIHRoZSBzdHJpbmcuIENhc2Vmb2xkZWQgc3RyaW5ncyBtYXkgYmVcbiAgIHVzZWQgZm9yIGNhc2VsZXNzIG1hdGNoaW5nLlxuXG4gICBDYXNlZm9sZGluZyBpcyBzaW1pbGFyIHRvIGxvd2VyY2FzaW5nIGJ1dCBtb3JlIGFnZ3Jlc3NpdmUgYmVjYXVzZVxuICAgaXQgaXMgaW50ZW5kZWQgdG8gcmVtb3ZlIGFsbCBjYXNlIGRpc3RpbmN0aW9ucyBpbiBhIHN0cmluZy4gRm9yXG4gICBleGFtcGxlLCB0aGUgR2VybWFuIGxvd2VyY2FzZSBsZXR0ZXIgYGBcJ1x4YzNceDlmXCdgYCBpcyBlcXVpdmFsZW50IHRvXG4gICBgYCJzcyJgYC4gU2luY2UgaXQgaXMgYWxyZWFkeSBsb3dlcmNhc2UsIGBgbG93ZXIoKWBgIHdvdWxkIGRvXG4gICBub3RoaW5nIHRvIGBgXCdceGMzXHg5ZlwnYGA7IGBgY2FzZWZvbGQoKWBgIGNvbnZlcnRzIGl0IHRvIGBgInNzImBgLlxuXG4gICBUaGUgY2FzZWZvbGRpbmcgYWxnb3JpdGhtIGlzIGRlc2NyaWJlZCBpbiBzZWN0aW9uIDMuMTMgb2YgdGhlXG4gICBVbmljb2RlIFN0YW5kYXJkLlxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjMuXG5cbnN0ci5jZW50ZXIod2lkdGhbLCBmaWxsY2hhcl0pXG5cbiAgIFJldHVybiBjZW50ZXJlZCBpbiBhIHN0cmluZyBvZiBsZW5ndGggKndpZHRoKi4gUGFkZGluZyBpcyBkb25lXG4gICB1c2luZyB0aGUgc3BlY2lmaWVkICpmaWxsY2hhciogKGRlZmF1bHQgaXMgYSBzcGFjZSkuXG5cbnN0ci5jb3VudChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gdGhlIG51bWJlciBvZiBub24tb3ZlcmxhcHBpbmcgb2NjdXJyZW5jZXMgb2Ygc3Vic3RyaW5nICpzdWIqXG4gICBpbiB0aGUgcmFuZ2UgWypzdGFydCosICplbmQqXS4gIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZFxuICAgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlIG5vdGF0aW9uLlxuXG5zdHIuZW5jb2RlKGVuY29kaW5nPSJ1dGYtOCIsIGVycm9ycz0ic3RyaWN0IilcblxuICAgUmV0dXJuIGFuIGVuY29kZWQgdmVyc2lvbiBvZiB0aGUgc3RyaW5nIGFzIGEgYnl0ZXMgb2JqZWN0LiBEZWZhdWx0XG4gICBlbmNvZGluZyBpcyBgYFwndXRmLThcJ2BgLiAqZXJyb3JzKiBtYXkgYmUgZ2l2ZW4gdG8gc2V0IGEgZGlmZmVyZW50XG4gICBlcnJvciBoYW5kbGluZyBzY2hlbWUuIFRoZSBkZWZhdWx0IGZvciAqZXJyb3JzKiBpcyBgYFwnc3RyaWN0XCdgYCxcbiAgIG1lYW5pbmcgdGhhdCBlbmNvZGluZyBlcnJvcnMgcmFpc2UgYSBgYFVuaWNvZGVFcnJvcmBgLiBPdGhlclxuICAgcG9zc2libGUgdmFsdWVzIGFyZSBgYFwnaWdub3JlXCdgYCwgYGBcJ3JlcGxhY2VcJ2BgLFxuICAgYGBcJ3htbGNoYXJyZWZyZXBsYWNlXCdgYCwgYGBcJ2JhY2tzbGFzaHJlcGxhY2VcJ2BgIGFuZCBhbnkgb3RoZXIgbmFtZVxuICAgcmVnaXN0ZXJlZCB2aWEgYGBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoKWBgLCBzZWUgc2VjdGlvbiAqQ29kZWMgQmFzZVxuICAgQ2xhc3NlcyouIEZvciBhIGxpc3Qgb2YgcG9zc2libGUgZW5jb2RpbmdzLCBzZWUgc2VjdGlvbiAqU3RhbmRhcmRcbiAgIEVuY29kaW5ncyouXG5cbiAgIENoYW5nZWQgaW4gdmVyc2lvbiAzLjE6IFN1cHBvcnQgZm9yIGtleXdvcmQgYXJndW1lbnRzIGFkZGVkLlxuXG5zdHIuZW5kc3dpdGgoc3VmZml4Wywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIHRoZSBzdHJpbmcgZW5kcyB3aXRoIHRoZSBzcGVjaWZpZWQgKnN1ZmZpeCosXG4gICBvdGhlcndpc2UgcmV0dXJuIGBgRmFsc2VgYC4gICpzdWZmaXgqIGNhbiBhbHNvIGJlIGEgdHVwbGUgb2ZcbiAgIHN1ZmZpeGVzIHRvIGxvb2sgZm9yLiAgV2l0aCBvcHRpb25hbCAqc3RhcnQqLCB0ZXN0IGJlZ2lubmluZyBhdFxuICAgdGhhdCBwb3NpdGlvbi4gIFdpdGggb3B0aW9uYWwgKmVuZCosIHN0b3AgY29tcGFyaW5nIGF0IHRoYXRcbiAgIHBvc2l0aW9uLlxuXG5zdHIuZXhwYW5kdGFicyhbdGFic2l6ZV0pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aGVyZSBhbGwgdGFiIGNoYXJhY3RlcnMgYXJlIHJlcGxhY2VkXG4gICBieSB6ZXJvIG9yIG1vcmUgc3BhY2VzLCBkZXBlbmRpbmcgb24gdGhlIGN1cnJlbnQgY29sdW1uIGFuZCB0aGVcbiAgIGdpdmVuIHRhYiBzaXplLiAgVGhlIGNvbHVtbiBudW1iZXIgaXMgcmVzZXQgdG8gemVybyBhZnRlciBlYWNoXG4gICBuZXdsaW5lIG9jY3VycmluZyBpbiB0aGUgc3RyaW5nLiBJZiAqdGFic2l6ZSogaXMgbm90IGdpdmVuLCBhIHRhYlxuICAgc2l6ZSBvZiBgYDhgYCBjaGFyYWN0ZXJzIGlzIGFzc3VtZWQuICBUaGlzIGRvZXNuXCd0IHVuZGVyc3RhbmQgb3RoZXJcbiAgIG5vbi1wcmludGluZyBjaGFyYWN0ZXJzIG9yIGVzY2FwZSBzZXF1ZW5jZXMuXG5cbnN0ci5maW5kKHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiB0aGUgbG93ZXN0IGluZGV4IGluIHRoZSBzdHJpbmcgd2hlcmUgc3Vic3RyaW5nICpzdWIqIGlzXG4gICBmb3VuZCwgc3VjaCB0aGF0ICpzdWIqIGlzIGNvbnRhaW5lZCBpbiB0aGUgc2xpY2UgYGBzW3N0YXJ0OmVuZF1gYC5cbiAgIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZCAqZW5kKiBhcmUgaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2VcbiAgIG5vdGF0aW9uLiAgUmV0dXJuIGBgLTFgYCBpZiAqc3ViKiBpcyBub3QgZm91bmQuXG5cbiAgIE5vdGU6IFRoZSBgYGZpbmQoKWBgIG1ldGhvZCBzaG91bGQgYmUgdXNlZCBvbmx5IGlmIHlvdSBuZWVkIHRvIGtub3cgdGhlXG4gICAgIHBvc2l0aW9uIG9mICpzdWIqLiAgVG8gY2hlY2sgaWYgKnN1YiogaXMgYSBzdWJzdHJpbmcgb3Igbm90LCB1c2VcbiAgICAgdGhlIGBgaW5gYCBvcGVyYXRvcjpcblxuICAgICAgICA+Pj4gXCdQeVwnIGluIFwnUHl0aG9uXCdcbiAgICAgICAgVHJ1ZVxuXG5zdHIuZm9ybWF0KCphcmdzLCAqKmt3YXJncylcblxuICAgUGVyZm9ybSBhIHN0cmluZyBmb3JtYXR0aW5nIG9wZXJhdGlvbi4gIFRoZSBzdHJpbmcgb24gd2hpY2ggdGhpc1xuICAgbWV0aG9kIGlzIGNhbGxlZCBjYW4gY29udGFpbiBsaXRlcmFsIHRleHQgb3IgcmVwbGFjZW1lbnQgZmllbGRzXG4gICBkZWxpbWl0ZWQgYnkgYnJhY2VzIGBge31gYC4gIEVhY2ggcmVwbGFjZW1lbnQgZmllbGQgY29udGFpbnMgZWl0aGVyXG4gICB0aGUgbnVtZXJpYyBpbmRleCBvZiBhIHBvc2l0aW9uYWwgYXJndW1lbnQsIG9yIHRoZSBuYW1lIG9mIGFcbiAgIGtleXdvcmQgYXJndW1lbnQuICBSZXR1cm5zIGEgY29weSBvZiB0aGUgc3RyaW5nIHdoZXJlIGVhY2hcbiAgIHJlcGxhY2VtZW50IGZpZWxkIGlzIHJlcGxhY2VkIHdpdGggdGhlIHN0cmluZyB2YWx1ZSBvZiB0aGVcbiAgIGNvcnJlc3BvbmRpbmcgYXJndW1lbnQuXG5cbiAgID4+PiAiVGhlIHN1bSBvZiAxICsgMiBpcyB7MH0iLmZvcm1hdCgxKzIpXG4gICBcJ1RoZSBzdW0gb2YgMSArIDIgaXMgM1wnXG5cbiAgIFNlZSAqRm9ybWF0IFN0cmluZyBTeW50YXgqIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZSB2YXJpb3VzXG4gICBmb3JtYXR0aW5nIG9wdGlvbnMgdGhhdCBjYW4gYmUgc3BlY2lmaWVkIGluIGZvcm1hdCBzdHJpbmdzLlxuXG5zdHIuZm9ybWF0X21hcChtYXBwaW5nKVxuXG4gICBTaW1pbGFyIHRvIGBgc3RyLmZvcm1hdCgqKm1hcHBpbmcpYGAsIGV4Y2VwdCB0aGF0IGBgbWFwcGluZ2BgIGlzXG4gICB1c2VkIGRpcmVjdGx5IGFuZCBub3QgY29waWVkIHRvIGEgYGBkaWN0YGAgLiAgVGhpcyBpcyB1c2VmdWwgaWYgZm9yXG4gICBleGFtcGxlIGBgbWFwcGluZ2BgIGlzIGEgZGljdCBzdWJjbGFzczpcblxuICAgPj4+IGNsYXNzIERlZmF1bHQoZGljdCk6XG4gICAuLi4gICAgIGRlZiBfX21pc3NpbmdfXyhzZWxmLCBrZXkpOlxuICAgLi4uICAgICAgICAgcmV0dXJuIGtleVxuICAgLi4uXG4gICA+Pj4gXCd7bmFtZX0gd2FzIGJvcm4gaW4ge2NvdW50cnl9XCcuZm9ybWF0X21hcChEZWZhdWx0KG5hbWU9XCdHdWlkb1wnKSlcbiAgIFwnR3VpZG8gd2FzIGJvcm4gaW4gY291bnRyeVwnXG5cbiAgIE5ldyBpbiB2ZXJzaW9uIDMuMi5cblxuc3RyLmluZGV4KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIExpa2UgYGBmaW5kKClgYCwgYnV0IHJhaXNlIGBgVmFsdWVFcnJvcmBgIHdoZW4gdGhlIHN1YnN0cmluZyBpcyBub3RcbiAgIGZvdW5kLlxuXG5zdHIuaXNhbG51bSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGFscGhhbnVtZXJpYyBhbmRcbiAgIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIEEgY2hhcmFjdGVyXG4gICBgYGNgYCBpcyBhbHBoYW51bWVyaWMgaWYgb25lIG9mIHRoZSBmb2xsb3dpbmcgcmV0dXJucyBgYFRydWVgYDpcbiAgIGBgYy5pc2FscGhhKClgYCwgYGBjLmlzZGVjaW1hbCgpYGAsIGBgYy5pc2RpZ2l0KClgYCwgb3JcbiAgIGBgYy5pc251bWVyaWMoKWBgLlxuXG5zdHIuaXNhbHBoYSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGFscGhhYmV0aWMgYW5kXG4gICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBBbHBoYWJldGljXG4gICBjaGFyYWN0ZXJzIGFyZSB0aG9zZSBjaGFyYWN0ZXJzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgY2hhcmFjdGVyXG4gICBkYXRhYmFzZSBhcyAiTGV0dGVyIiwgaS5lLiwgdGhvc2Ugd2l0aCBnZW5lcmFsIGNhdGVnb3J5IHByb3BlcnR5XG4gICBiZWluZyBvbmUgb2YgIkxtIiwgIkx0IiwgIkx1IiwgIkxsIiwgb3IgIkxvIi4gIE5vdGUgdGhhdCB0aGlzIGlzXG4gICBkaWZmZXJlbnQgZnJvbSB0aGUgIkFscGhhYmV0aWMiIHByb3BlcnR5IGRlZmluZWQgaW4gdGhlIFVuaWNvZGVcbiAgIFN0YW5kYXJkLlxuXG5zdHIuaXNkZWNpbWFsKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgZGVjaW1hbCBjaGFyYWN0ZXJzXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiBEZWNpbWFsXG4gICBjaGFyYWN0ZXJzIGFyZSB0aG9zZSBmcm9tIGdlbmVyYWwgY2F0ZWdvcnkgIk5kIi4gVGhpcyBjYXRlZ29yeVxuICAgaW5jbHVkZXMgZGlnaXQgY2hhcmFjdGVycywgYW5kIGFsbCBjaGFyYWN0ZXJzIHRoYXQgY2FuIGJlIHVzZWQgdG9cbiAgIGZvcm0gZGVjaW1hbC1yYWRpeCBudW1iZXJzLCBlLmcuIFUrMDY2MCwgQVJBQklDLUlORElDIERJR0lUIFpFUk8uXG5cbnN0ci5pc2RpZ2l0KClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgZGlnaXRzIGFuZCB0aGVyZSBpc1xuICAgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgRGlnaXRzIGluY2x1ZGUgZGVjaW1hbFxuICAgY2hhcmFjdGVycyBhbmQgZGlnaXRzIHRoYXQgbmVlZCBzcGVjaWFsIGhhbmRsaW5nLCBzdWNoIGFzIHRoZVxuICAgY29tcGF0aWJpbGl0eSBzdXBlcnNjcmlwdCBkaWdpdHMuICBGb3JtYWxseSwgYSBkaWdpdCBpcyBhIGNoYXJhY3RlclxuICAgdGhhdCBoYXMgdGhlIHByb3BlcnR5IHZhbHVlIE51bWVyaWNfVHlwZT1EaWdpdCBvclxuICAgTnVtZXJpY19UeXBlPURlY2ltYWwuXG5cbnN0ci5pc2lkZW50aWZpZXIoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiB0aGUgc3RyaW5nIGlzIGEgdmFsaWQgaWRlbnRpZmllciBhY2NvcmRpbmcgdG8gdGhlXG4gICBsYW5ndWFnZSBkZWZpbml0aW9uLCBzZWN0aW9uICpJZGVudGlmaWVycyBhbmQga2V5d29yZHMqLlxuXG5zdHIuaXNsb3dlcigpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjYXNlZCBjaGFyYWN0ZXJzIFs0XSBpbiB0aGUgc3RyaW5nIGFyZSBsb3dlcmNhc2VcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuXG5cbnN0ci5pc251bWVyaWMoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBudW1lcmljIGNoYXJhY3RlcnMsXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiBOdW1lcmljXG4gICBjaGFyYWN0ZXJzIGluY2x1ZGUgZGlnaXQgY2hhcmFjdGVycywgYW5kIGFsbCBjaGFyYWN0ZXJzIHRoYXQgaGF2ZVxuICAgdGhlIFVuaWNvZGUgbnVtZXJpYyB2YWx1ZSBwcm9wZXJ0eSwgZS5nLiBVKzIxNTUsIFZVTEdBUiBGUkFDVElPTlxuICAgT05FIEZJRlRILiAgRm9ybWFsbHksIG51bWVyaWMgY2hhcmFjdGVycyBhcmUgdGhvc2Ugd2l0aCB0aGVcbiAgIHByb3BlcnR5IHZhbHVlIE51bWVyaWNfVHlwZT1EaWdpdCwgTnVtZXJpY19UeXBlPURlY2ltYWwgb3JcbiAgIE51bWVyaWNfVHlwZT1OdW1lcmljLlxuXG5zdHIuaXNwcmludGFibGUoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBwcmludGFibGUgb3IgdGhlXG4gICBzdHJpbmcgaXMgZW1wdHksIGZhbHNlIG90aGVyd2lzZS4gIE5vbnByaW50YWJsZSBjaGFyYWN0ZXJzIGFyZVxuICAgdGhvc2UgY2hhcmFjdGVycyBkZWZpbmVkIGluIHRoZSBVbmljb2RlIGNoYXJhY3RlciBkYXRhYmFzZSBhc1xuICAgIk90aGVyIiBvciAiU2VwYXJhdG9yIiwgZXhjZXB0aW5nIHRoZSBBU0NJSSBzcGFjZSAoMHgyMCkgd2hpY2ggaXNcbiAgIGNvbnNpZGVyZWQgcHJpbnRhYmxlLiAgKE5vdGUgdGhhdCBwcmludGFibGUgY2hhcmFjdGVycyBpbiB0aGlzXG4gICBjb250ZXh0IGFyZSB0aG9zZSB3aGljaCBzaG91bGQgbm90IGJlIGVzY2FwZWQgd2hlbiBgYHJlcHIoKWBgIGlzXG4gICBpbnZva2VkIG9uIGEgc3RyaW5nLiAgSXQgaGFzIG5vIGJlYXJpbmcgb24gdGhlIGhhbmRsaW5nIG9mIHN0cmluZ3NcbiAgIHdyaXR0ZW4gdG8gYGBzeXMuc3Rkb3V0YGAgb3IgYGBzeXMuc3RkZXJyYGAuKVxuXG5zdHIuaXNzcGFjZSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIHRoZXJlIGFyZSBvbmx5IHdoaXRlc3BhY2UgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgV2hpdGVzcGFjZVxuICAgY2hhcmFjdGVycyAgYXJlIHRob3NlIGNoYXJhY3RlcnMgZGVmaW5lZCBpbiB0aGUgVW5pY29kZSBjaGFyYWN0ZXJcbiAgIGRhdGFiYXNlIGFzICJPdGhlciIgb3IgIlNlcGFyYXRvciIgYW5kIHRob3NlIHdpdGggYmlkaXJlY3Rpb25hbFxuICAgcHJvcGVydHkgYmVpbmcgb25lIG9mICJXUyIsICJCIiwgb3IgIlMiLlxuXG5zdHIuaXN0aXRsZSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIHRoZSBzdHJpbmcgaXMgYSB0aXRsZWNhc2VkIHN0cmluZyBhbmQgdGhlcmUgaXMgYXRcbiAgIGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZvciBleGFtcGxlIHVwcGVyY2FzZSBjaGFyYWN0ZXJzIG1heSBvbmx5XG4gICBmb2xsb3cgdW5jYXNlZCBjaGFyYWN0ZXJzIGFuZCBsb3dlcmNhc2UgY2hhcmFjdGVycyBvbmx5IGNhc2VkIG9uZXMuXG4gICBSZXR1cm4gZmFsc2Ugb3RoZXJ3aXNlLlxuXG5zdHIuaXN1cHBlcigpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjYXNlZCBjaGFyYWN0ZXJzIFs0XSBpbiB0aGUgc3RyaW5nIGFyZSB1cHBlcmNhc2VcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuXG5cbnN0ci5qb2luKGl0ZXJhYmxlKVxuXG4gICBSZXR1cm4gYSBzdHJpbmcgd2hpY2ggaXMgdGhlIGNvbmNhdGVuYXRpb24gb2YgdGhlIHN0cmluZ3MgaW4gdGhlXG4gICAqaXRlcmFibGUqICppdGVyYWJsZSouICBBIGBgVHlwZUVycm9yYGAgd2lsbCBiZSByYWlzZWQgaWYgdGhlcmUgYXJlXG4gICBhbnkgbm9uLXN0cmluZyB2YWx1ZXMgaW4gKml0ZXJhYmxlKiwgaW5jbHVkaW5nIGBgYnl0ZXNgYCBvYmplY3RzLlxuICAgVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGVsZW1lbnRzIGlzIHRoZSBzdHJpbmcgcHJvdmlkaW5nIHRoaXMgbWV0aG9kLlxuXG5zdHIubGp1c3Qod2lkdGhbLCBmaWxsY2hhcl0pXG5cbiAgIFJldHVybiB0aGUgc3RyaW5nIGxlZnQganVzdGlmaWVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLlxuICAgUGFkZGluZyBpcyBkb25lIHVzaW5nIHRoZSBzcGVjaWZpZWQgKmZpbGxjaGFyKiAoZGVmYXVsdCBpcyBhXG4gICBzcGFjZSkuICBUaGUgb3JpZ2luYWwgc3RyaW5nIGlzIHJldHVybmVkIGlmICp3aWR0aCogaXMgbGVzcyB0aGFuIG9yXG4gICBlcXVhbCB0byBgYGxlbihzKWBgLlxuXG5zdHIubG93ZXIoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBhbGwgdGhlIGNhc2VkIGNoYXJhY3RlcnMgWzRdXG4gICBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlLlxuXG4gICBUaGUgbG93ZXJjYXNpbmcgYWxnb3JpdGhtIHVzZWQgaXMgZGVzY3JpYmVkIGluIHNlY3Rpb24gMy4xMyBvZiB0aGVcbiAgIFVuaWNvZGUgU3RhbmRhcmQuXG5cbnN0ci5sc3RyaXAoW2NoYXJzXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggbGVhZGluZyBjaGFyYWN0ZXJzIHJlbW92ZWQuICBUaGVcbiAgICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGUgc2V0IG9mIGNoYXJhY3RlcnMgdG8gYmVcbiAgIHJlbW92ZWQuICBJZiBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGUgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0b1xuICAgcmVtb3Zpbmcgd2hpdGVzcGFjZS4gIFRoZSAqY2hhcnMqIGFyZ3VtZW50IGlzIG5vdCBhIHByZWZpeDsgcmF0aGVyLFxuICAgYWxsIGNvbWJpbmF0aW9ucyBvZiBpdHMgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5sc3RyaXAoKVxuICAgXCdzcGFjaW91cyAgIFwnXG4gICA+Pj4gXCd3d3cuZXhhbXBsZS5jb21cJy5sc3RyaXAoXCdjbW93ei5cJylcbiAgIFwnZXhhbXBsZS5jb21cJ1xuXG5zdGF0aWMgc3RyLm1ha2V0cmFucyh4WywgeVssIHpdXSlcblxuICAgVGhpcyBzdGF0aWMgbWV0aG9kIHJldHVybnMgYSB0cmFuc2xhdGlvbiB0YWJsZSB1c2FibGUgZm9yXG4gICBgYHN0ci50cmFuc2xhdGUoKWBgLlxuXG4gICBJZiB0aGVyZSBpcyBvbmx5IG9uZSBhcmd1bWVudCwgaXQgbXVzdCBiZSBhIGRpY3Rpb25hcnkgbWFwcGluZ1xuICAgVW5pY29kZSBvcmRpbmFscyAoaW50ZWdlcnMpIG9yIGNoYXJhY3RlcnMgKHN0cmluZ3Mgb2YgbGVuZ3RoIDEpIHRvXG4gICBVbmljb2RlIG9yZGluYWxzLCBzdHJpbmdzIChvZiBhcmJpdHJhcnkgbGVuZ3Rocykgb3IgTm9uZS5cbiAgIENoYXJhY3RlciBrZXlzIHdpbGwgdGhlbiBiZSBjb252ZXJ0ZWQgdG8gb3JkaW5hbHMuXG5cbiAgIElmIHRoZXJlIGFyZSB0d28gYXJndW1lbnRzLCB0aGV5IG11c3QgYmUgc3RyaW5ncyBvZiBlcXVhbCBsZW5ndGgsXG4gICBhbmQgaW4gdGhlIHJlc3VsdGluZyBkaWN0aW9uYXJ5LCBlYWNoIGNoYXJhY3RlciBpbiB4IHdpbGwgYmUgbWFwcGVkXG4gICB0byB0aGUgY2hhcmFjdGVyIGF0IHRoZSBzYW1lIHBvc2l0aW9uIGluIHkuICBJZiB0aGVyZSBpcyBhIHRoaXJkXG4gICBhcmd1bWVudCwgaXQgbXVzdCBiZSBhIHN0cmluZywgd2hvc2UgY2hhcmFjdGVycyB3aWxsIGJlIG1hcHBlZCB0b1xuICAgTm9uZSBpbiB0aGUgcmVzdWx0LlxuXG5zdHIucGFydGl0aW9uKHNlcClcblxuICAgU3BsaXQgdGhlIHN0cmluZyBhdCB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiAqc2VwKiwgYW5kIHJldHVybiBhXG4gICAzLXR1cGxlIGNvbnRhaW5pbmcgdGhlIHBhcnQgYmVmb3JlIHRoZSBzZXBhcmF0b3IsIHRoZSBzZXBhcmF0b3JcbiAgIGl0c2VsZiwgYW5kIHRoZSBwYXJ0IGFmdGVyIHRoZSBzZXBhcmF0b3IuICBJZiB0aGUgc2VwYXJhdG9yIGlzIG5vdFxuICAgZm91bmQsIHJldHVybiBhIDMtdHVwbGUgY29udGFpbmluZyB0aGUgc3RyaW5nIGl0c2VsZiwgZm9sbG93ZWQgYnlcbiAgIHR3byBlbXB0eSBzdHJpbmdzLlxuXG5zdHIucmVwbGFjZShvbGQsIG5ld1ssIGNvdW50XSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggYWxsIG9jY3VycmVuY2VzIG9mIHN1YnN0cmluZyAqb2xkKlxuICAgcmVwbGFjZWQgYnkgKm5ldyouICBJZiB0aGUgb3B0aW9uYWwgYXJndW1lbnQgKmNvdW50KiBpcyBnaXZlbiwgb25seVxuICAgdGhlIGZpcnN0ICpjb3VudCogb2NjdXJyZW5jZXMgYXJlIHJlcGxhY2VkLlxuXG5zdHIucmZpbmQoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIHRoZSBoaWdoZXN0IGluZGV4IGluIHRoZSBzdHJpbmcgd2hlcmUgc3Vic3RyaW5nICpzdWIqIGlzXG4gICBmb3VuZCwgc3VjaCB0aGF0ICpzdWIqIGlzIGNvbnRhaW5lZCB3aXRoaW4gYGBzW3N0YXJ0OmVuZF1gYC5cbiAgIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZCAqZW5kKiBhcmUgaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2VcbiAgIG5vdGF0aW9uLiAgUmV0dXJuIGBgLTFgYCBvbiBmYWlsdXJlLlxuXG5zdHIucmluZGV4KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIExpa2UgYGByZmluZCgpYGAgYnV0IHJhaXNlcyBgYFZhbHVlRXJyb3JgYCB3aGVuIHRoZSBzdWJzdHJpbmcgKnN1YipcbiAgIGlzIG5vdCBmb3VuZC5cblxuc3RyLnJqdXN0KHdpZHRoWywgZmlsbGNoYXJdKVxuXG4gICBSZXR1cm4gdGhlIHN0cmluZyByaWdodCBqdXN0aWZpZWQgaW4gYSBzdHJpbmcgb2YgbGVuZ3RoICp3aWR0aCouXG4gICBQYWRkaW5nIGlzIGRvbmUgdXNpbmcgdGhlIHNwZWNpZmllZCAqZmlsbGNoYXIqIChkZWZhdWx0IGlzIGFcbiAgIHNwYWNlKS4gVGhlIG9yaWdpbmFsIHN0cmluZyBpcyByZXR1cm5lZCBpZiAqd2lkdGgqIGlzIGxlc3MgdGhhbiBvclxuICAgZXF1YWwgdG8gYGBsZW4ocylgYC5cblxuc3RyLnJwYXJ0aXRpb24oc2VwKVxuXG4gICBTcGxpdCB0aGUgc3RyaW5nIGF0IHRoZSBsYXN0IG9jY3VycmVuY2Ugb2YgKnNlcCosIGFuZCByZXR1cm4gYVxuICAgMy10dXBsZSBjb250YWluaW5nIHRoZSBwYXJ0IGJlZm9yZSB0aGUgc2VwYXJhdG9yLCB0aGUgc2VwYXJhdG9yXG4gICBpdHNlbGYsIGFuZCB0aGUgcGFydCBhZnRlciB0aGUgc2VwYXJhdG9yLiAgSWYgdGhlIHNlcGFyYXRvciBpcyBub3RcbiAgIGZvdW5kLCByZXR1cm4gYSAzLXR1cGxlIGNvbnRhaW5pbmcgdHdvIGVtcHR5IHN0cmluZ3MsIGZvbGxvd2VkIGJ5XG4gICB0aGUgc3RyaW5nIGl0c2VsZi5cblxuc3RyLnJzcGxpdChzZXA9Tm9uZSwgbWF4c3BsaXQ9LTEpXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIHdvcmRzIGluIHRoZSBzdHJpbmcsIHVzaW5nICpzZXAqIGFzIHRoZVxuICAgZGVsaW1pdGVyIHN0cmluZy4gSWYgKm1heHNwbGl0KiBpcyBnaXZlbiwgYXQgbW9zdCAqbWF4c3BsaXQqIHNwbGl0c1xuICAgYXJlIGRvbmUsIHRoZSAqcmlnaHRtb3N0KiBvbmVzLiAgSWYgKnNlcCogaXMgbm90IHNwZWNpZmllZCBvclxuICAgYGBOb25lYGAsIGFueSB3aGl0ZXNwYWNlIHN0cmluZyBpcyBhIHNlcGFyYXRvci4gIEV4Y2VwdCBmb3JcbiAgIHNwbGl0dGluZyBmcm9tIHRoZSByaWdodCwgYGByc3BsaXQoKWBgIGJlaGF2ZXMgbGlrZSBgYHNwbGl0KClgYFxuICAgd2hpY2ggaXMgZGVzY3JpYmVkIGluIGRldGFpbCBiZWxvdy5cblxuc3RyLnJzdHJpcChbY2hhcnNdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB0cmFpbGluZyBjaGFyYWN0ZXJzIHJlbW92ZWQuICBUaGVcbiAgICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGUgc2V0IG9mIGNoYXJhY3RlcnMgdG8gYmVcbiAgIHJlbW92ZWQuICBJZiBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGUgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0b1xuICAgcmVtb3Zpbmcgd2hpdGVzcGFjZS4gIFRoZSAqY2hhcnMqIGFyZ3VtZW50IGlzIG5vdCBhIHN1ZmZpeDsgcmF0aGVyLFxuICAgYWxsIGNvbWJpbmF0aW9ucyBvZiBpdHMgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5yc3RyaXAoKVxuICAgXCcgICBzcGFjaW91c1wnXG4gICA+Pj4gXCdtaXNzaXNzaXBwaVwnLnJzdHJpcChcJ2lwelwnKVxuICAgXCdtaXNzaXNzXCdcblxuc3RyLnNwbGl0KHNlcD1Ob25lLCBtYXhzcGxpdD0tMSlcblxuICAgUmV0dXJuIGEgbGlzdCBvZiB0aGUgd29yZHMgaW4gdGhlIHN0cmluZywgdXNpbmcgKnNlcCogYXMgdGhlXG4gICBkZWxpbWl0ZXIgc3RyaW5nLiAgSWYgKm1heHNwbGl0KiBpcyBnaXZlbiwgYXQgbW9zdCAqbWF4c3BsaXQqXG4gICBzcGxpdHMgYXJlIGRvbmUgKHRodXMsIHRoZSBsaXN0IHdpbGwgaGF2ZSBhdCBtb3N0IGBgbWF4c3BsaXQrMWBgXG4gICBlbGVtZW50cykuICBJZiAqbWF4c3BsaXQqIGlzIG5vdCBzcGVjaWZpZWQsIHRoZW4gdGhlcmUgaXMgbm8gbGltaXRcbiAgIG9uIHRoZSBudW1iZXIgb2Ygc3BsaXRzIChhbGwgcG9zc2libGUgc3BsaXRzIGFyZSBtYWRlKS5cblxuICAgSWYgKnNlcCogaXMgZ2l2ZW4sIGNvbnNlY3V0aXZlIGRlbGltaXRlcnMgYXJlIG5vdCBncm91cGVkIHRvZ2V0aGVyXG4gICBhbmQgYXJlIGRlZW1lZCB0byBkZWxpbWl0IGVtcHR5IHN0cmluZ3MgKGZvciBleGFtcGxlLFxuICAgYGBcJzEsLDJcJy5zcGxpdChcJyxcJylgYCByZXR1cm5zIGBgW1wnMVwnLCBcJ1wnLCBcJzJcJ11gYCkuICBUaGUgKnNlcCpcbiAgIGFyZ3VtZW50IG1heSBjb25zaXN0IG9mIG11bHRpcGxlIGNoYXJhY3RlcnMgKGZvciBleGFtcGxlLFxuICAgYGBcJzE8PjI8PjNcJy5zcGxpdChcJzw+XCcpYGAgcmV0dXJucyBgYFtcJzFcJywgXCcyXCcsIFwnM1wnXWBgKS4gU3BsaXR0aW5nXG4gICBhbiBlbXB0eSBzdHJpbmcgd2l0aCBhIHNwZWNpZmllZCBzZXBhcmF0b3IgcmV0dXJucyBgYFtcJ1wnXWBgLlxuXG4gICBJZiAqc2VwKiBpcyBub3Qgc3BlY2lmaWVkIG9yIGlzIGBgTm9uZWBgLCBhIGRpZmZlcmVudCBzcGxpdHRpbmdcbiAgIGFsZ29yaXRobSBpcyBhcHBsaWVkOiBydW5zIG9mIGNvbnNlY3V0aXZlIHdoaXRlc3BhY2UgYXJlIHJlZ2FyZGVkXG4gICBhcyBhIHNpbmdsZSBzZXBhcmF0b3IsIGFuZCB0aGUgcmVzdWx0IHdpbGwgY29udGFpbiBubyBlbXB0eSBzdHJpbmdzXG4gICBhdCB0aGUgc3RhcnQgb3IgZW5kIGlmIHRoZSBzdHJpbmcgaGFzIGxlYWRpbmcgb3IgdHJhaWxpbmdcbiAgIHdoaXRlc3BhY2UuICBDb25zZXF1ZW50bHksIHNwbGl0dGluZyBhbiBlbXB0eSBzdHJpbmcgb3IgYSBzdHJpbmdcbiAgIGNvbnNpc3Rpbmcgb2YganVzdCB3aGl0ZXNwYWNlIHdpdGggYSBgYE5vbmVgYCBzZXBhcmF0b3IgcmV0dXJuc1xuICAgYGBbXWBgLlxuXG4gICBGb3IgZXhhbXBsZSwgYGBcJyAxICAyICAgMyAgXCcuc3BsaXQoKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnMlwnLCBcJzNcJ11gYCxcbiAgIGFuZCBgYFwnICAxICAyICAgMyAgXCcuc3BsaXQoTm9uZSwgMSlgYCByZXR1cm5zIGBgW1wnMVwnLCBcJzIgICAzICBcJ11gYC5cblxuc3RyLnNwbGl0bGluZXMoW2tlZXBlbmRzXSlcblxuICAgUmV0dXJuIGEgbGlzdCBvZiB0aGUgbGluZXMgaW4gdGhlIHN0cmluZywgYnJlYWtpbmcgYXQgbGluZVxuICAgYm91bmRhcmllcy4gIExpbmUgYnJlYWtzIGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIHJlc3VsdGluZyBsaXN0XG4gICB1bmxlc3MgKmtlZXBlbmRzKiBpcyBnaXZlbiBhbmQgdHJ1ZS5cblxuc3RyLnN0YXJ0c3dpdGgocHJlZml4Wywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIHN0cmluZyBzdGFydHMgd2l0aCB0aGUgKnByZWZpeCosIG90aGVyd2lzZVxuICAgcmV0dXJuIGBgRmFsc2VgYC4gKnByZWZpeCogY2FuIGFsc28gYmUgYSB0dXBsZSBvZiBwcmVmaXhlcyB0byBsb29rXG4gICBmb3IuICBXaXRoIG9wdGlvbmFsICpzdGFydCosIHRlc3Qgc3RyaW5nIGJlZ2lubmluZyBhdCB0aGF0XG4gICBwb3NpdGlvbi4gIFdpdGggb3B0aW9uYWwgKmVuZCosIHN0b3AgY29tcGFyaW5nIHN0cmluZyBhdCB0aGF0XG4gICBwb3NpdGlvbi5cblxuc3RyLnN0cmlwKFtjaGFyc10pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIHRoZSBsZWFkaW5nIGFuZCB0cmFpbGluZ1xuICAgY2hhcmFjdGVycyByZW1vdmVkLiBUaGUgKmNoYXJzKiBhcmd1bWVudCBpcyBhIHN0cmluZyBzcGVjaWZ5aW5nIHRoZVxuICAgc2V0IG9mIGNoYXJhY3RlcnMgdG8gYmUgcmVtb3ZlZC4gSWYgb21pdHRlZCBvciBgYE5vbmVgYCwgdGhlXG4gICAqY2hhcnMqIGFyZ3VtZW50IGRlZmF1bHRzIHRvIHJlbW92aW5nIHdoaXRlc3BhY2UuIFRoZSAqY2hhcnMqXG4gICBhcmd1bWVudCBpcyBub3QgYSBwcmVmaXggb3Igc3VmZml4OyByYXRoZXIsIGFsbCBjb21iaW5hdGlvbnMgb2YgaXRzXG4gICB2YWx1ZXMgYXJlIHN0cmlwcGVkOlxuXG4gICA+Pj4gXCcgICBzcGFjaW91cyAgIFwnLnN0cmlwKClcbiAgIFwnc3BhY2lvdXNcJ1xuICAgPj4+IFwnd3d3LmV4YW1wbGUuY29tXCcuc3RyaXAoXCdjbW93ei5cJylcbiAgIFwnZXhhbXBsZVwnXG5cbnN0ci5zd2FwY2FzZSgpXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIHVwcGVyY2FzZSBjaGFyYWN0ZXJzIGNvbnZlcnRlZCB0b1xuICAgbG93ZXJjYXNlIGFuZCB2aWNlIHZlcnNhLiBOb3RlIHRoYXQgaXQgaXMgbm90IG5lY2Vzc2FyaWx5IHRydWUgdGhhdFxuICAgYGBzLnN3YXBjYXNlKCkuc3dhcGNhc2UoKSA9PSBzYGAuXG5cbnN0ci50aXRsZSgpXG5cbiAgIFJldHVybiBhIHRpdGxlY2FzZWQgdmVyc2lvbiBvZiB0aGUgc3RyaW5nIHdoZXJlIHdvcmRzIHN0YXJ0IHdpdGggYW5cbiAgIHVwcGVyY2FzZSBjaGFyYWN0ZXIgYW5kIHRoZSByZW1haW5pbmcgY2hhcmFjdGVycyBhcmUgbG93ZXJjYXNlLlxuXG4gICBUaGUgYWxnb3JpdGhtIHVzZXMgYSBzaW1wbGUgbGFuZ3VhZ2UtaW5kZXBlbmRlbnQgZGVmaW5pdGlvbiBvZiBhXG4gICB3b3JkIGFzIGdyb3VwcyBvZiBjb25zZWN1dGl2ZSBsZXR0ZXJzLiAgVGhlIGRlZmluaXRpb24gd29ya3MgaW5cbiAgIG1hbnkgY29udGV4dHMgYnV0IGl0IG1lYW5zIHRoYXQgYXBvc3Ryb3BoZXMgaW4gY29udHJhY3Rpb25zIGFuZFxuICAgcG9zc2Vzc2l2ZXMgZm9ybSB3b3JkIGJvdW5kYXJpZXMsIHdoaWNoIG1heSBub3QgYmUgdGhlIGRlc2lyZWRcbiAgIHJlc3VsdDpcblxuICAgICAgPj4+ICJ0aGV5XCdyZSBiaWxsXCdzIGZyaWVuZHMgZnJvbSB0aGUgVUsiLnRpdGxlKClcbiAgICAgICJUaGV5XCdSZSBCaWxsXCdTIEZyaWVuZHMgRnJvbSBUaGUgVWsiXG5cbiAgIEEgd29ya2Fyb3VuZCBmb3IgYXBvc3Ryb3BoZXMgY2FuIGJlIGNvbnN0cnVjdGVkIHVzaW5nIHJlZ3VsYXJcbiAgIGV4cHJlc3Npb25zOlxuXG4gICAgICA+Pj4gaW1wb3J0IHJlXG4gICAgICA+Pj4gZGVmIHRpdGxlY2FzZShzKTpcbiAgICAgICAgICAgICAgcmV0dXJuIHJlLnN1YihyIltBLVphLXpdKyhcJ1tBLVphLXpdKyk/IixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgbW86IG1vLmdyb3VwKDApWzBdLnVwcGVyKCkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW8uZ3JvdXAoMClbMTpdLmxvd2VyKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcylcblxuICAgICAgPj4+IHRpdGxlY2FzZSgidGhleVwncmUgYmlsbFwncyBmcmllbmRzLiIpXG4gICAgICAiVGhleVwncmUgQmlsbFwncyBGcmllbmRzLiJcblxuc3RyLnRyYW5zbGF0ZShtYXApXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlICpzKiB3aGVyZSBhbGwgY2hhcmFjdGVycyBoYXZlIGJlZW4gbWFwcGVkXG4gICB0aHJvdWdoIHRoZSAqbWFwKiB3aGljaCBtdXN0IGJlIGEgZGljdGlvbmFyeSBvZiBVbmljb2RlIG9yZGluYWxzXG4gICAoaW50ZWdlcnMpIHRvIFVuaWNvZGUgb3JkaW5hbHMsIHN0cmluZ3Mgb3IgYGBOb25lYGAuICBVbm1hcHBlZFxuICAgY2hhcmFjdGVycyBhcmUgbGVmdCB1bnRvdWNoZWQuIENoYXJhY3RlcnMgbWFwcGVkIHRvIGBgTm9uZWBgIGFyZVxuICAgZGVsZXRlZC5cblxuICAgWW91IGNhbiB1c2UgYGBzdHIubWFrZXRyYW5zKClgYCB0byBjcmVhdGUgYSB0cmFuc2xhdGlvbiBtYXAgZnJvbVxuICAgY2hhcmFjdGVyLXRvLWNoYXJhY3RlciBtYXBwaW5ncyBpbiBkaWZmZXJlbnQgZm9ybWF0cy5cblxuICAgTm90ZTogQW4gZXZlbiBtb3JlIGZsZXhpYmxlIGFwcHJvYWNoIGlzIHRvIGNyZWF0ZSBhIGN1c3RvbSBjaGFyYWN0ZXJcbiAgICAgbWFwcGluZyBjb2RlYyB1c2luZyB0aGUgYGBjb2RlY3NgYCBtb2R1bGUgKHNlZVxuICAgICBgYGVuY29kaW5ncy5jcDEyNTFgYCBmb3IgYW4gZXhhbXBsZSkuXG5cbnN0ci51cHBlcigpXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGFsbCB0aGUgY2FzZWQgY2hhcmFjdGVycyBbNF1cbiAgIGNvbnZlcnRlZCB0byB1cHBlcmNhc2UuICBOb3RlIHRoYXQgYGBzdHIudXBwZXIoKS5pc3VwcGVyKClgYCBtaWdodFxuICAgYmUgYGBGYWxzZWBgIGlmIGBgc2BgIGNvbnRhaW5zIHVuY2FzZWQgY2hhcmFjdGVycyBvciBpZiB0aGUgVW5pY29kZVxuICAgY2F0ZWdvcnkgb2YgdGhlIHJlc3VsdGluZyBjaGFyYWN0ZXIocykgaXMgbm90ICJMdSIgKExldHRlcixcbiAgIHVwcGVyY2FzZSksIGJ1dCBlLmcuICJMdCIgKExldHRlciwgdGl0bGVjYXNlKS5cblxuICAgVGhlIHVwcGVyY2FzaW5nIGFsZ29yaXRobSB1c2VkIGlzIGRlc2NyaWJlZCBpbiBzZWN0aW9uIDMuMTMgb2YgdGhlXG4gICBVbmljb2RlIFN0YW5kYXJkLlxuXG5zdHIuemZpbGwod2lkdGgpXG5cbiAgIFJldHVybiB0aGUgbnVtZXJpYyBzdHJpbmcgbGVmdCBmaWxsZWQgd2l0aCB6ZXJvcyBpbiBhIHN0cmluZyBvZlxuICAgbGVuZ3RoICp3aWR0aCouICBBIHNpZ24gcHJlZml4IGlzIGhhbmRsZWQgY29ycmVjdGx5LiAgVGhlIG9yaWdpbmFsXG4gICBzdHJpbmcgaXMgcmV0dXJuZWQgaWYgKndpZHRoKiBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gYGBsZW4ocylgYC5cbicsCisgJ3N0cmluZ3MnOiAnXG5TdHJpbmcgYW5kIEJ5dGVzIGxpdGVyYWxzXG4qKioqKioqKioqKioqKioqKioqKioqKioqXG5cblN0cmluZyBsaXRlcmFscyBhcmUgZGVzY3JpYmVkIGJ5IHRoZSBmb2xsb3dpbmcgbGV4aWNhbCBkZWZpbml0aW9uczpcblxuICAgc3RyaW5nbGl0ZXJhbCAgIDo6PSBbc3RyaW5ncHJlZml4XShzaG9ydHN0cmluZyB8IGxvbmdzdHJpbmcpXG4gICBzdHJpbmdwcmVmaXggICAgOjo9ICJyIiB8ICJ1IiB8ICJ1ciIgfCAiUiIgfCAiVSIgfCAiVVIiIHwgIlVyIiB8ICJ1UiJcbiAgIHNob3J0c3RyaW5nICAgICA6Oj0gIlwnIiBzaG9ydHN0cmluZ2l0ZW0qICJcJyIgfCBcJyJcJyBzaG9ydHN0cmluZ2l0ZW0qIFwnIlwnXG4gICBsb25nc3RyaW5nICAgICAgOjo9ICJcJ1wnXCciIGxvbmdzdHJpbmdpdGVtKiAiXCdcJ1wnIiB8IFwnIiIiXCcgbG9uZ3N0cmluZ2l0ZW0qIFwnIiIiXCdcbiAgIHNob3J0c3RyaW5naXRlbSA6Oj0gc2hvcnRzdHJpbmdjaGFyIHwgc3RyaW5nZXNjYXBlc2VxXG4gICBsb25nc3RyaW5naXRlbSAgOjo9IGxvbmdzdHJpbmdjaGFyIHwgc3RyaW5nZXNjYXBlc2VxXG4gICBzaG9ydHN0cmluZ2NoYXIgOjo9IDxhbnkgc291cmNlIGNoYXJhY3RlciBleGNlcHQgIlxcIiBvciBuZXdsaW5lIG9yIHRoZSBxdW90ZT5cbiAgIGxvbmdzdHJpbmdjaGFyICA6Oj0gPGFueSBzb3VyY2UgY2hhcmFjdGVyIGV4Y2VwdCAiXFwiPlxuICAgc3RyaW5nZXNjYXBlc2VxIDo6PSAiXFwiIDxhbnkgc291cmNlIGNoYXJhY3Rlcj5cblxuICAgYnl0ZXNsaXRlcmFsICAgOjo9IGJ5dGVzcHJlZml4KHNob3J0Ynl0ZXMgfCBsb25nYnl0ZXMpXG4gICBieXRlc3ByZWZpeCAgICA6Oj0gImIiIHwgIkIiIHwgImJyIiB8ICJCciIgfCAiYlIiIHwgIkJSIiB8ICJyYiIgfCAickIiIHwgIlJiIiB8ICJSQiJcbiAgIHNob3J0Ynl0ZXMgICAgIDo6PSAiXCciIHNob3J0Ynl0ZXNpdGVtKiAiXCciIHwgXCciXCcgc2hvcnRieXRlc2l0ZW0qIFwnIlwnXG4gICBsb25nYnl0ZXMgICAgICA6Oj0gIlwnXCdcJyIgbG9uZ2J5dGVzaXRlbSogIlwnXCdcJyIgfCBcJyIiIlwnIGxvbmdieXRlc2l0ZW0qIFwnIiIiXCdcbiAgIHNob3J0Ynl0ZXNpdGVtIDo6PSBzaG9ydGJ5dGVzY2hhciB8IGJ5dGVzZXNjYXBlc2VxXG4gICBsb25nYnl0ZXNpdGVtICA6Oj0gbG9uZ2J5dGVzY2hhciB8IGJ5dGVzZXNjYXBlc2VxXG4gICBzaG9ydGJ5dGVzY2hhciA6Oj0gPGFueSBBU0NJSSBjaGFyYWN0ZXIgZXhjZXB0ICJcXCIgb3IgbmV3bGluZSBvciB0aGUgcXVvdGU+XG4gICBsb25nYnl0ZXNjaGFyICA6Oj0gPGFueSBBU0NJSSBjaGFyYWN0ZXIgZXhjZXB0ICJcXCI+XG4gICBieXRlc2VzY2FwZXNlcSA6Oj0gIlxcIiA8YW55IEFTQ0lJIGNoYXJhY3Rlcj5cblxuT25lIHN5bnRhY3RpYyByZXN0cmljdGlvbiBub3QgaW5kaWNhdGVkIGJ5IHRoZXNlIHByb2R1Y3Rpb25zIGlzIHRoYXRcbndoaXRlc3BhY2UgaXMgbm90IGFsbG93ZWQgYmV0d2VlbiB0aGUgYGBzdHJpbmdwcmVmaXhgYCBvclxuYGBieXRlc3ByZWZpeGBgIGFuZCB0aGUgcmVzdCBvZiB0aGUgbGl0ZXJhbC4gVGhlIHNvdXJjZSBjaGFyYWN0ZXIgc2V0XG5pcyBkZWZpbmVkIGJ5IHRoZSBlbmNvZGluZyBkZWNsYXJhdGlvbjsgaXQgaXMgVVRGLTggaWYgbm8gZW5jb2RpbmdcbmRlY2xhcmF0aW9uIGlzIGdpdmVuIGluIHRoZSBzb3VyY2UgZmlsZTsgc2VlIHNlY3Rpb24gKkVuY29kaW5nXG5kZWNsYXJhdGlvbnMqLlxuXG5JbiBwbGFpbiBFbmdsaXNoOiBCb3RoIHR5cGVzIG9mIGxpdGVyYWxzIGNhbiBiZSBlbmNsb3NlZCBpbiBtYXRjaGluZ1xuc2luZ2xlIHF1b3RlcyAoYGBcJ2BgKSBvciBkb3VibGUgcXVvdGVzIChgYCJgYCkuICBUaGV5IGNhbiBhbHNvIGJlXG5lbmNsb3NlZCBpbiBtYXRjaGluZyBncm91cHMgb2YgdGhyZWUgc2luZ2xlIG9yIGRvdWJsZSBxdW90ZXMgKHRoZXNlXG5hcmUgZ2VuZXJhbGx5IHJlZmVycmVkIHRvIGFzICp0cmlwbGUtcXVvdGVkIHN0cmluZ3MqKS4gIFRoZSBiYWNrc2xhc2hcbihgYFxcYGApIGNoYXJhY3RlciBpcyB1c2VkIHRvIGVzY2FwZSBjaGFyYWN0ZXJzIHRoYXQgb3RoZXJ3aXNlIGhhdmUgYVxuc3BlY2lhbCBtZWFuaW5nLCBzdWNoIGFzIG5ld2xpbmUsIGJhY2tzbGFzaCBpdHNlbGYsIG9yIHRoZSBxdW90ZVxuY2hhcmFjdGVyLlxuXG5CeXRlcyBsaXRlcmFscyBhcmUgYWx3YXlzIHByZWZpeGVkIHdpdGggYGBcJ2JcJ2BgIG9yIGBgXCdCXCdgYDsgdGhleVxucHJvZHVjZSBhbiBpbnN0YW5jZSBvZiB0aGUgYGBieXRlc2BgIHR5cGUgaW5zdGVhZCBvZiB0aGUgYGBzdHJgYCB0eXBlLlxuVGhleSBtYXkgb25seSBjb250YWluIEFTQ0lJIGNoYXJhY3RlcnM7IGJ5dGVzIHdpdGggYSBudW1lcmljIHZhbHVlIG9mXG4xMjggb3IgZ3JlYXRlciBtdXN0IGJlIGV4cHJlc3NlZCB3aXRoIGVzY2FwZXMuXG5cbkFzIG9mIFB5dGhvbiAzLjMgaXQgaXMgcG9zc2libGUgYWdhaW4gdG8gcHJlZml4IHVuaWNvZGUgc3RyaW5ncyB3aXRoIGFcbmBgdWBgIHByZWZpeCB0byBzaW1wbGlmeSBtYWludGVuYW5jZSBvZiBkdWFsIDIueCBhbmQgMy54IGNvZGViYXNlcy5cblxuQm90aCBzdHJpbmcgYW5kIGJ5dGVzIGxpdGVyYWxzIG1heSBvcHRpb25hbGx5IGJlIHByZWZpeGVkIHdpdGggYVxubGV0dGVyIGBgXCdyXCdgYCBvciBgYFwnUlwnYGA7IHN1Y2ggc3RyaW5ncyBhcmUgY2FsbGVkICpyYXcgc3RyaW5ncyogYW5kXG50cmVhdCBiYWNrc2xhc2hlcyBhcyBsaXRlcmFsIGNoYXJhY3RlcnMuICBBcyBhIHJlc3VsdCwgaW4gc3RyaW5nXG5saXRlcmFscywgYGBcJ1xcVVwnYGAgYW5kIGBgXCdcXHVcJ2BgIGVzY2FwZXMgaW4gcmF3IHN0cmluZ3MgYXJlIG5vdCB0cmVhdGVkXG5zcGVjaWFsbHkuXG5cbiAgIE5ldyBpbiB2ZXJzaW9uIDMuMzogVGhlIGBgXCdyYlwnYGAgcHJlZml4IG9mIHJhdyBieXRlcyBsaXRlcmFscyBoYXNcbiAgIGJlZW4gYWRkZWQgYXMgYSBzeW5vbnltIG9mIGBgXCdiclwnYGAuXG5cbiAgIE5ldyBpbiB2ZXJzaW9uIDMuMzogU3VwcG9ydCBmb3IgdGhlIHVuaWNvZGUgbGVnYWN5IGxpdGVyYWxcbiAgIChgYHVcJ3ZhbHVlXCdgYCkgYW5kIG90aGVyIHZlcnNpb25zIHdlcmUgcmVpbnRyb2R1Y2VkIHRvIHNpbXBsaWZ5IHRoZVxuICAgbWFpbnRlbmFuY2Ugb2YgZHVhbCBQeXRob24gMi54IGFuZCAzLnggY29kZWJhc2VzLiAgU2VlICoqUEVQIDQxNCoqXG4gICBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cblxuSW4gdHJpcGxlLXF1b3RlZCBzdHJpbmdzLCB1bmVzY2FwZWQgbmV3bGluZXMgYW5kIHF1b3RlcyBhcmUgYWxsb3dlZFxuKGFuZCBhcmUgcmV0YWluZWQpLCBleGNlcHQgdGhhdCB0aHJlZSB1bmVzY2FwZWQgcXVvdGVzIGluIGEgcm93XG50ZXJtaW5hdGUgdGhlIHN0cmluZy4gIChBICJxdW90ZSIgaXMgdGhlIGNoYXJhY3RlciB1c2VkIHRvIG9wZW4gdGhlXG5zdHJpbmcsIGkuZS4gZWl0aGVyIGBgXCdgYCBvciBgYCJgYC4pXG5cblVubGVzcyBhbiBgYFwnclwnYGAgb3IgYGBcJ1JcJ2BgIHByZWZpeCBpcyBwcmVzZW50LCBlc2NhcGUgc2VxdWVuY2VzIGluXG5zdHJpbmdzIGFyZSBpbnRlcnByZXRlZCBhY2NvcmRpbmcgdG8gcnVsZXMgc2ltaWxhciB0byB0aG9zZSB1c2VkIGJ5XG5TdGFuZGFyZCBDLiAgVGhlIHJlY29nbml6ZWQgZXNjYXBlIHNlcXVlbmNlcyBhcmU6XG5cbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgRXNjYXBlIFNlcXVlbmNlICAgfCBNZWFuaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyAgIHxcbis9PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PStcbnwgYGBcXG5ld2xpbmVgYCAgICAgIHwgQmFja3NsYXNoIGFuZCBuZXdsaW5lIGlnbm9yZWQgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFxcXGBgICAgICAgICAgICAgfCBCYWNrc2xhc2ggKGBgXFxgYCkgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFxcJ2BgICAgICAgICAgICAgfCBTaW5nbGUgcXVvdGUgKGBgXCdgYCkgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFwiYGAgICAgICAgICAgICB8IERvdWJsZSBxdW90ZSAoYGAiYGApICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcYWBgICAgICAgICAgICAgfCBBU0NJSSBCZWxsIChCRUwpICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXGJgYCAgICAgICAgICAgIHwgQVNDSUkgQmFja3NwYWNlIChCUykgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFxmYGAgICAgICAgICAgICB8IEFTQ0lJIEZvcm1mZWVkIChGRikgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcbmBgICAgICAgICAgICAgfCBBU0NJSSBMaW5lZmVlZCAoTEYpICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXHJgYCAgICAgICAgICAgIHwgQVNDSUkgQ2FycmlhZ2UgUmV0dXJuIChDUikgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFx0YGAgICAgICAgICAgICB8IEFTQ0lJIEhvcml6b250YWwgVGFiIChUQUIpICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcdmBgICAgICAgICAgICAgfCBBU0NJSSBWZXJ0aWNhbCBUYWIgKFZUKSAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXG9vb2BgICAgICAgICAgIHwgQ2hhcmFjdGVyIHdpdGggb2N0YWwgdmFsdWUgKm9vbyogIHwgKDEsMykgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFx4aGhgYCAgICAgICAgICB8IENoYXJhY3RlciB3aXRoIGhleCB2YWx1ZSAqaGgqICAgICB8ICgyLDMpICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xuXG5Fc2NhcGUgc2VxdWVuY2VzIG9ubHkgcmVjb2duaXplZCBpbiBzdHJpbmcgbGl0ZXJhbHMgYXJlOlxuXG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IEVzY2FwZSBTZXF1ZW5jZSAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgICB8XG4rPT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT0rXG58IGBgXFxOe25hbWV9YGAgICAgICB8IENoYXJhY3RlciBuYW1lZCAqbmFtZSogaW4gdGhlICAgICB8ICg0KSAgICAgfFxufCAgICAgICAgICAgICAgICAgICB8IFVuaWNvZGUgZGF0YWJhc2UgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcdXh4eHhgYCAgICAgICAgfCBDaGFyYWN0ZXIgd2l0aCAxNi1iaXQgaGV4IHZhbHVlICAgfCAoNSkgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgfCAqeHh4eCogICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXFV4eHh4eHh4eGBgICAgIHwgQ2hhcmFjdGVyIHdpdGggMzItYml0IGhleCB2YWx1ZSAgIHwgKDYpICAgICB8XG58ICAgICAgICAgICAgICAgICAgIHwgKnh4eHh4eHh4KiAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG5cbk5vdGVzOlxuXG4xLiBBcyBpbiBTdGFuZGFyZCBDLCB1cCB0byB0aHJlZSBvY3RhbCBkaWdpdHMgYXJlIGFjY2VwdGVkLlxuXG4yLiBVbmxpa2UgaW4gU3RhbmRhcmQgQywgZXhhY3RseSB0d28gaGV4IGRpZ2l0cyBhcmUgcmVxdWlyZWQuXG5cbjMuIEluIGEgYnl0ZXMgbGl0ZXJhbCwgaGV4YWRlY2ltYWwgYW5kIG9jdGFsIGVzY2FwZXMgZGVub3RlIHRoZSBieXRlXG4gICB3aXRoIHRoZSBnaXZlbiB2YWx1ZS4gSW4gYSBzdHJpbmcgbGl0ZXJhbCwgdGhlc2UgZXNjYXBlcyBkZW5vdGUgYVxuICAgVW5pY29kZSBjaGFyYWN0ZXIgd2l0aCB0aGUgZ2l2ZW4gdmFsdWUuXG5cbjQuIENoYW5nZWQgaW4gdmVyc2lvbiAzLjM6IFN1cHBvcnQgZm9yIG5hbWUgYWxpYXNlcyBbMV0gaGFzIGJlZW5cbiAgIGFkZGVkLlxuXG41LiBJbmRpdmlkdWFsIGNvZGUgdW5pdHMgd2hpY2ggZm9ybSBwYXJ0cyBvZiBhIHN1cnJvZ2F0ZSBwYWlyIGNhbiBiZVxuICAgZW5jb2RlZCB1c2luZyB0aGlzIGVzY2FwZSBzZXF1ZW5jZS4gIEV4YWN0bHkgZm91ciBoZXggZGlnaXRzIGFyZVxuICAgcmVxdWlyZWQuXG5cbjYuIEFueSBVbmljb2RlIGNoYXJhY3RlciBjYW4gYmUgZW5jb2RlZCB0aGlzIHdheSwgYnV0IGNoYXJhY3RlcnNcbiAgIG91dHNpZGUgdGhlIEJhc2ljIE11bHRpbGluZ3VhbCBQbGFuZSAoQk1QKSB3aWxsIGJlIGVuY29kZWQgdXNpbmcgYVxuICAgc3Vycm9nYXRlIHBhaXIgaWYgUHl0aG9uIGlzIGNvbXBpbGVkIHRvIHVzZSAxNi1iaXQgY29kZSB1bml0cyAodGhlXG4gICBkZWZhdWx0KS4gIEV4YWN0bHkgZWlnaHQgaGV4IGRpZ2l0cyBhcmUgcmVxdWlyZWQuXG5cblVubGlrZSBTdGFuZGFyZCBDLCBhbGwgdW5yZWNvZ25pemVkIGVzY2FwZSBzZXF1ZW5jZXMgYXJlIGxlZnQgaW4gdGhlXG5zdHJpbmcgdW5jaGFuZ2VkLCBpLmUuLCAqdGhlIGJhY2tzbGFzaCBpcyBsZWZ0IGluIHRoZSBzdHJpbmcqLiAgKFRoaXNcbmJlaGF2aW9yIGlzIHVzZWZ1bCB3aGVuIGRlYnVnZ2luZzogaWYgYW4gZXNjYXBlIHNlcXVlbmNlIGlzIG1pc3R5cGVkLFxudGhlIHJlc3VsdGluZyBvdXRwdXQgaXMgbW9yZSBlYXNpbHkgcmVjb2duaXplZCBhcyBicm9rZW4uKSAgSXQgaXMgYWxzb1xuaW1wb3J0YW50IHRvIG5vdGUgdGhhdCB0aGUgZXNjYXBlIHNlcXVlbmNlcyBvbmx5IHJlY29nbml6ZWQgaW4gc3RyaW5nXG5saXRlcmFscyBmYWxsIGludG8gdGhlIGNhdGVnb3J5IG9mIHVucmVjb2duaXplZCBlc2NhcGVzIGZvciBieXRlc1xubGl0ZXJhbHMuXG5cbkV2ZW4gaW4gYSByYXcgc3RyaW5nLCBzdHJpbmcgcXVvdGVzIGNhbiBiZSBlc2NhcGVkIHdpdGggYSBiYWNrc2xhc2gsXG5idXQgdGhlIGJhY2tzbGFzaCByZW1haW5zIGluIHRoZSBzdHJpbmc7IGZvciBleGFtcGxlLCBgYHIiXFwiImBgIGlzIGFcbnZhbGlkIHN0cmluZyBsaXRlcmFsIGNvbnNpc3Rpbmcgb2YgdHdvIGNoYXJhY3RlcnM6IGEgYmFja3NsYXNoIGFuZCBhXG5kb3VibGUgcXVvdGU7IGBgciJcXCJgYCBpcyBub3QgYSB2YWxpZCBzdHJpbmcgbGl0ZXJhbCAoZXZlbiBhIHJhd1xuc3RyaW5nIGNhbm5vdCBlbmQgaW4gYW4gb2RkIG51bWJlciBvZiBiYWNrc2xhc2hlcykuICBTcGVjaWZpY2FsbHksICphXG5yYXcgc3RyaW5nIGNhbm5vdCBlbmQgaW4gYSBzaW5nbGUgYmFja3NsYXNoKiAoc2luY2UgdGhlIGJhY2tzbGFzaFxud291bGQgZXNjYXBlIHRoZSBmb2xsb3dpbmcgcXVvdGUgY2hhcmFjdGVyKS4gIE5vdGUgYWxzbyB0aGF0IGEgc2luZ2xlXG5iYWNrc2xhc2ggZm9sbG93ZWQgYnkgYSBuZXdsaW5lIGlzIGludGVycHJldGVkIGFzIHRob3NlIHR3byBjaGFyYWN0ZXJzXG5hcyBwYXJ0IG9mIHRoZSBzdHJpbmcsICpub3QqIGFzIGEgbGluZSBjb250aW51YXRpb24uXG4nLAogICdzdWJzY3JpcHRpb25zJzogJ1xuU3Vic2NyaXB0aW9uc1xuKioqKioqKioqKioqKlxuXG5BIHN1YnNjcmlwdGlvbiBzZWxlY3RzIGFuIGl0ZW0gb2YgYSBzZXF1ZW5jZSAoc3RyaW5nLCB0dXBsZSBvciBsaXN0KVxub3IgbWFwcGluZyAoZGljdGlvbmFyeSkgb2JqZWN0OlxuXG4gICBzdWJzY3JpcHRpb24gOjo9IHByaW1hcnkgIlsiIGV4cHJlc3Npb25fbGlzdCAiXSJcblxuVGhlIHByaW1hcnkgbXVzdCBldmFsdWF0ZSB0byBhbiBvYmplY3QgdGhhdCBzdXBwb3J0cyBzdWJzY3JpcHRpb24sXG5lLmcuIGEgbGlzdCBvciBkaWN0aW9uYXJ5LiAgVXNlci1kZWZpbmVkIG9iamVjdHMgY2FuIHN1cHBvcnRcbnN1YnNjcmlwdGlvbiBieSBkZWZpbmluZyBhIGBgX19nZXRpdGVtX18oKWBgIG1ldGhvZC5cblxuRm9yIGJ1aWx0LWluIG9iamVjdHMsIHRoZXJlIGFyZSB0d28gdHlwZXMgb2Ygb2JqZWN0cyB0aGF0IHN1cHBvcnRcbnN1YnNjcmlwdGlvbjpcblxuSWYgdGhlIHByaW1hcnkgaXMgYSBtYXBwaW5nLCB0aGUgZXhwcmVzc2lvbiBsaXN0IG11c3QgZXZhbHVhdGUgdG8gYW5cbm9iamVjdCB3aG9zZSB2YWx1ZSBpcyBvbmUgb2YgdGhlIGtleXMgb2YgdGhlIG1hcHBpbmcsIGFuZCB0aGVcbnN1YnNjcmlwdGlvbiBzZWxlY3RzIHRoZSB2YWx1ZSBpbiB0aGUgbWFwcGluZyB0aGF0IGNvcnJlc3BvbmRzIHRvIHRoYXRcbmtleS4gIChUaGUgZXhwcmVzc2lvbiBsaXN0IGlzIGEgdHVwbGUgZXhjZXB0IGlmIGl0IGhhcyBleGFjdGx5IG9uZVxuaXRlbS4pXG5cbklmIHRoZSBwcmltYXJ5IGlzIGEgc2VxdWVuY2UsIHRoZSBleHByZXNzaW9uIChsaXN0KSBtdXN0IGV2YWx1YXRlIHRvXG5hbiBpbnRlZ2VyIG9yIGEgc2xpY2UgKGFzIGRpc2N1c3NlZCBpbiB0aGUgZm9sbG93aW5nIHNlY3Rpb24pLlxuXG5UaGUgZm9ybWFsIHN5bnRheCBtYWtlcyBubyBzcGVjaWFsIHByb3Zpc2lvbiBmb3IgbmVnYXRpdmUgaW5kaWNlcyBpblxuc2VxdWVuY2VzOyBob3dldmVyLCBidWlsdC1pbiBzZXF1ZW5jZXMgYWxsIHByb3ZpZGUgYSBgYF9fZ2V0aXRlbV9fKClgYFxubWV0aG9kIHRoYXQgaW50ZXJwcmV0cyBuZWdhdGl2ZSBpbmRpY2VzIGJ5IGFkZGluZyB0aGUgbGVuZ3RoIG9mIHRoZVxuc2VxdWVuY2UgdG8gdGhlIGluZGV4IChzbyB0aGF0IGBgeFstMV1gYCBzZWxlY3RzIHRoZSBsYXN0IGl0ZW0gb2ZcbmBgeGBgKS4gIFRoZSByZXN1bHRpbmcgdmFsdWUgbXVzdCBiZSBhIG5vbm5lZ2F0aXZlIGludGVnZXIgbGVzcyB0aGFuXG50aGUgbnVtYmVyIG9mIGl0ZW1zIGluIHRoZSBzZXF1ZW5jZSwgYW5kIHRoZSBzdWJzY3JpcHRpb24gc2VsZWN0cyB0aGVcbml0ZW0gd2hvc2UgaW5kZXggaXMgdGhhdCB2YWx1ZSAoY291bnRpbmcgZnJvbSB6ZXJvKS4gU2luY2UgdGhlIHN1cHBvcnRcbmZvciBuZWdhdGl2ZSBpbmRpY2VzIGFuZCBzbGljaW5nIG9jY3VycyBpbiB0aGUgb2JqZWN0XCdzXG5gYF9fZ2V0aXRlbV9fKClgYCBtZXRob2QsIHN1YmNsYXNzZXMgb3ZlcnJpZGluZyB0aGlzIG1ldGhvZCB3aWxsIG5lZWRcbnRvIGV4cGxpY2l0bHkgYWRkIHRoYXQgc3VwcG9ydC5cblxuQSBzdHJpbmdcJ3MgaXRlbXMgYXJlIGNoYXJhY3RlcnMuICBBIGNoYXJhY3RlciBpcyBub3QgYSBzZXBhcmF0ZSBkYXRhXG50eXBlIGJ1dCBhIHN0cmluZyBvZiBleGFjdGx5IG9uZSBjaGFyYWN0ZXIuXG4nLAogICd0cnV0aCc6ICJcblRydXRoIFZhbHVlIFRlc3RpbmdcbioqKioqKioqKioqKioqKioqKipcblxuQW55IG9iamVjdCBjYW4gYmUgdGVzdGVkIGZvciB0cnV0aCB2YWx1ZSwgZm9yIHVzZSBpbiBhbiBgYGlmYGAgb3JcbmBgd2hpbGVgYCBjb25kaXRpb24gb3IgYXMgb3BlcmFuZCBvZiB0aGUgQm9vbGVhbiBvcGVyYXRpb25zIGJlbG93LiBUaGVcbmZvbGxvd2luZyB2YWx1ZXMgYXJlIGNvbnNpZGVyZWQgZmFsc2U6XG5cbiogYGBOb25lYGBcblxuKiBgYEZhbHNlYGBcblxuKiB6ZXJvIG9mIGFueSBudW1lcmljIHR5cGUsIGZvciBleGFtcGxlLCBgYDBgYCwgYGAwLjBgYCwgYGAwamBgLlxuXG4qIGFueSBlbXB0eSBzZXF1ZW5jZSwgZm9yIGV4YW1wbGUsIGBgJydgYCwgYGAoKWBgLCBgYFtdYGAuXG5cbiogYW55IGVtcHR5IG1hcHBpbmcsIGZvciBleGFtcGxlLCBgYHt9YGAuXG5cbiogaW5zdGFuY2VzIG9mIHVzZXItZGVmaW5lZCBjbGFzc2VzLCBpZiB0aGUgY2xhc3MgZGVmaW5lcyBhXG4gIGBgX19ib29sX18oKWBgIG9yIGBgX19sZW5fXygpYGAgbWV0aG9kLCB3aGVuIHRoYXQgbWV0aG9kIHJldHVybnMgdGhlXG4gIGludGVnZXIgemVybyBvciBgYGJvb2xgYCB2YWx1ZSBgYEZhbHNlYGAuIFsxXVxuXG5BbGwgb3RoZXIgdmFsdWVzIGFyZSBjb25zaWRlcmVkIHRydWUgLS0tIHNvIG9iamVjdHMgb2YgbWFueSB0eXBlcyBhcmVcbmFsd2F5cyB0cnVlLlxuXG5PcGVyYXRpb25zIGFuZCBidWlsdC1pbiBmdW5jdGlvbnMgdGhhdCBoYXZlIGEgQm9vbGVhbiByZXN1bHQgYWx3YXlzXG5yZXR1cm4gYGAwYGAgb3IgYGBGYWxzZWBgIGZvciBmYWxzZSBhbmQgYGAxYGAgb3IgYGBUcnVlYGAgZm9yIHRydWUsXG51bmxlc3Mgb3RoZXJ3aXNlIHN0YXRlZC4gKEltcG9ydGFudCBleGNlcHRpb246IHRoZSBCb29sZWFuIG9wZXJhdGlvbnNcbmBgb3JgYCBhbmQgYGBhbmRgYCBhbHdheXMgcmV0dXJuIG9uZSBvZiB0aGVpciBvcGVyYW5kcy4pXG4iLAogICd0cnknOiAnXG5UaGUgYGB0cnlgYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKlxuXG5UaGUgYGB0cnlgYCBzdGF0ZW1lbnQgc3BlY2lmaWVzIGV4Y2VwdGlvbiBoYW5kbGVycyBhbmQvb3IgY2xlYW51cCBjb2RlXG5mb3IgYSBncm91cCBvZiBzdGF0ZW1lbnRzOlxuXG4gICB0cnlfc3RtdCAgOjo9IHRyeTFfc3RtdCB8IHRyeTJfc3RtdFxuICAgdHJ5MV9zdG10IDo6PSAidHJ5IiAiOiIgc3VpdGVcbiAgICAgICAgICAgICAgICAgKCJleGNlcHQiIFtleHByZXNzaW9uIFsiYXMiIHRhcmdldF1dICI6IiBzdWl0ZSkrXG4gICAgICAgICAgICAgICAgIFsiZWxzZSIgIjoiIHN1aXRlXVxuICAgICAgICAgICAgICAgICBbImZpbmFsbHkiICI6IiBzdWl0ZV1cbiAgIHRyeTJfc3RtdCA6Oj0gInRyeSIgIjoiIHN1aXRlXG4gICAgICAgICAgICAgICAgICJmaW5hbGx5IiAiOiIgc3VpdGVcblxuVGhlIGBgZXhjZXB0YGAgY2xhdXNlKHMpIHNwZWNpZnkgb25lIG9yIG1vcmUgZXhjZXB0aW9uIGhhbmRsZXJzLiBXaGVuXG5ubyBleGNlcHRpb24gb2NjdXJzIGluIHRoZSBgYHRyeWBgIGNsYXVzZSwgbm8gZXhjZXB0aW9uIGhhbmRsZXIgaXNcbmV4ZWN1dGVkLiBXaGVuIGFuIGV4Y2VwdGlvbiBvY2N1cnMgaW4gdGhlIGBgdHJ5YGAgc3VpdGUsIGEgc2VhcmNoIGZvclxuYW4gZXhjZXB0aW9uIGhhbmRsZXIgaXMgc3RhcnRlZC4gIFRoaXMgc2VhcmNoIGluc3BlY3RzIHRoZSBleGNlcHRcbmNsYXVzZXMgaW4gdHVybiB1bnRpbCBvbmUgaXMgZm91bmQgdGhhdCBtYXRjaGVzIHRoZSBleGNlcHRpb24uICBBblxuZXhwcmVzc2lvbi1sZXNzIGV4Y2VwdCBjbGF1c2UsIGlmIHByZXNlbnQsIG11c3QgYmUgbGFzdDsgaXQgbWF0Y2hlc1xuYW55IGV4Y2VwdGlvbi4gIEZvciBhbiBleGNlcHQgY2xhdXNlIHdpdGggYW4gZXhwcmVzc2lvbiwgdGhhdFxuZXhwcmVzc2lvbiBpcyBldmFsdWF0ZWQsIGFuZCB0aGUgY2xhdXNlIG1hdGNoZXMgdGhlIGV4Y2VwdGlvbiBpZiB0aGVcbnJlc3VsdGluZyBvYmplY3QgaXMgImNvbXBhdGlibGUiIHdpdGggdGhlIGV4Y2VwdGlvbi4gIEFuIG9iamVjdCBpc1xuY29tcGF0aWJsZSB3aXRoIGFuIGV4Y2VwdGlvbiBpZiBpdCBpcyB0aGUgY2xhc3Mgb3IgYSBiYXNlIGNsYXNzIG9mIHRoZVxuZXhjZXB0aW9uIG9iamVjdCBvciBhIHR1cGxlIGNvbnRhaW5pbmcgYW4gaXRlbSBjb21wYXRpYmxlIHdpdGggdGhlXG5leGNlcHRpb24uXG5cbklmIG5vIGV4Y2VwdCBjbGF1c2UgbWF0Y2hlcyB0aGUgZXhjZXB0aW9uLCB0aGUgc2VhcmNoIGZvciBhbiBleGNlcHRpb25cbmhhbmRsZXIgY29udGludWVzIGluIHRoZSBzdXJyb3VuZGluZyBjb2RlIGFuZCBvbiB0aGUgaW52b2NhdGlvbiBzdGFjay5cblsxXVxuXG5JZiB0aGUgZXZhbHVhdGlvbiBvZiBhbiBleHByZXNzaW9uIGluIHRoZSBoZWFkZXIgb2YgYW4gZXhjZXB0IGNsYXVzZVxucmFpc2VzIGFuIGV4Y2VwdGlvbiwgdGhlIG9yaWdpbmFsIHNlYXJjaCBmb3IgYSBoYW5kbGVyIGlzIGNhbmNlbGVkIGFuZFxuYSBzZWFyY2ggc3RhcnRzIGZvciB0aGUgbmV3IGV4Y2VwdGlvbiBpbiB0aGUgc3Vycm91bmRpbmcgY29kZSBhbmQgb25cbnRoZSBjYWxsIHN0YWNrIChpdCBpcyB0cmVhdGVkIGFzIGlmIHRoZSBlbnRpcmUgYGB0cnlgYCBzdGF0ZW1lbnRcbnJhaXNlZCB0aGUgZXhjZXB0aW9uKS5cblxuV2hlbiBhIG1hdGNoaW5nIGV4Y2VwdCBjbGF1c2UgaXMgZm91bmQsIHRoZSBleGNlcHRpb24gaXMgYXNzaWduZWQgdG9cbnRoZSB0YXJnZXQgc3BlY2lmaWVkIGFmdGVyIHRoZSBgYGFzYGAga2V5d29yZCBpbiB0aGF0IGV4Y2VwdCBjbGF1c2UsXG5pZiBwcmVzZW50LCBhbmQgdGhlIGV4Y2VwdCBjbGF1c2VcJ3Mgc3VpdGUgaXMgZXhlY3V0ZWQuICBBbGwgZXhjZXB0XG5jbGF1c2VzIG11c3QgaGF2ZSBhbiBleGVjdXRhYmxlIGJsb2NrLiAgV2hlbiB0aGUgZW5kIG9mIHRoaXMgYmxvY2sgaXNcbnJlYWNoZWQsIGV4ZWN1dGlvbiBjb250aW51ZXMgbm9ybWFsbHkgYWZ0ZXIgdGhlIGVudGlyZSB0cnkgc3RhdGVtZW50LlxuKFRoaXMgbWVhbnMgdGhhdCBpZiB0d28gbmVzdGVkIGhhbmRsZXJzIGV4aXN0IGZvciB0aGUgc2FtZSBleGNlcHRpb24sXG5hbmQgdGhlIGV4Y2VwdGlvbiBvY2N1cnMgaW4gdGhlIHRyeSBjbGF1c2Ugb2YgdGhlIGlubmVyIGhhbmRsZXIsIHRoZVxub3V0ZXIgaGFuZGxlciB3aWxsIG5vdCBoYW5kbGUgdGhlIGV4Y2VwdGlvbi4pXG5cbldoZW4gYW4gZXhjZXB0aW9uIGhhcyBiZWVuIGFzc2lnbmVkIHVzaW5nIGBgYXMgdGFyZ2V0YGAsIGl0IGlzIGNsZWFyZWRcbmF0IHRoZSBlbmQgb2YgdGhlIGV4Y2VwdCBjbGF1c2UuICBUaGlzIGlzIGFzIGlmXG5cbiAgIGV4Y2VwdCBFIGFzIE46XG4gICAgICAgZm9vXG5cbndhcyB0cmFuc2xhdGVkIHRvXG5cbiAgIGV4Y2VwdCBFIGFzIE46XG4gICAgICAgdHJ5OlxuICAgICAgICAgICBmb29cbiAgICAgICBmaW5hbGx5OlxuICAgICAgICAgICBkZWwgTlxuXG5UaGlzIG1lYW5zIHRoZSBleGNlcHRpb24gbXVzdCBiZSBhc3NpZ25lZCB0byBhIGRpZmZlcmVudCBuYW1lIHRvIGJlXG5hYmxlIHRvIHJlZmVyIHRvIGl0IGFmdGVyIHRoZSBleGNlcHQgY2xhdXNlLiAgRXhjZXB0aW9ucyBhcmUgY2xlYXJlZFxuYmVjYXVzZSB3aXRoIHRoZSB0cmFjZWJhY2sgYXR0YWNoZWQgdG8gdGhlbSwgdGhleSBmb3JtIGEgcmVmZXJlbmNlXG5jeWNsZSB3aXRoIHRoZSBzdGFjayBmcmFtZSwga2VlcGluZyBhbGwgbG9jYWxzIGluIHRoYXQgZnJhbWUgYWxpdmVcbnVudGlsIHRoZSBuZXh0IGdhcmJhZ2UgY29sbGVjdGlvbiBvY2N1cnMuXG5cbkJlZm9yZSBhbiBleGNlcHQgY2xhdXNlXCdzIHN1aXRlIGlzIGV4ZWN1dGVkLCBkZXRhaWxzIGFib3V0IHRoZVxuZXhjZXB0aW9uIGFyZSBzdG9yZWQgaW4gdGhlIGBgc3lzYGAgbW9kdWxlIGFuZCBjYW4gYmUgYWNjZXNzIHZpYVxuYGBzeXMuZXhjX2luZm8oKWBgLiBgYHN5cy5leGNfaW5mbygpYGAgcmV0dXJucyBhIDMtdHVwbGUgY29uc2lzdGluZyBvZlxudGhlIGV4Y2VwdGlvbiBjbGFzcywgdGhlIGV4Y2VwdGlvbiBpbnN0YW5jZSBhbmQgYSB0cmFjZWJhY2sgb2JqZWN0XG4oc2VlIHNlY3Rpb24gKlRoZSBzdGFuZGFyZCB0eXBlIGhpZXJhcmNoeSopIGlkZW50aWZ5aW5nIHRoZSBwb2ludCBpblxudGhlIHByb2dyYW0gd2hlcmUgdGhlIGV4Y2VwdGlvbiBvY2N1cnJlZC4gIGBgc3lzLmV4Y19pbmZvKClgYCB2YWx1ZXNcbmFyZSByZXN0b3JlZCB0byB0aGVpciBwcmV2aW91cyB2YWx1ZXMgKGJlZm9yZSB0aGUgY2FsbCkgd2hlbiByZXR1cm5pbmdcbmZyb20gYSBmdW5jdGlvbiB0aGF0IGhhbmRsZWQgYW4gZXhjZXB0aW9uLlxuXG5UaGUgb3B0aW9uYWwgYGBlbHNlYGAgY2xhdXNlIGlzIGV4ZWN1dGVkIGlmIGFuZCB3aGVuIGNvbnRyb2wgZmxvd3Mgb2ZmXG50aGUgZW5kIG9mIHRoZSBgYHRyeWBgIGNsYXVzZS4gWzJdIEV4Y2VwdGlvbnMgaW4gdGhlIGBgZWxzZWBgIGNsYXVzZVxuYXJlIG5vdCBoYW5kbGVkIGJ5IHRoZSBwcmVjZWRpbmcgYGBleGNlcHRgYCBjbGF1c2VzLlxuXG5JZiBgYGZpbmFsbHlgYCBpcyBwcmVzZW50LCBpdCBzcGVjaWZpZXMgYSBcJ2NsZWFudXBcJyBoYW5kbGVyLiAgVGhlXG5gYHRyeWBgIGNsYXVzZSBpcyBleGVjdXRlZCwgaW5jbHVkaW5nIGFueSBgYGV4Y2VwdGBgIGFuZCBgYGVsc2VgYFxuY2xhdXNlcy4gIElmIGFuIGV4Y2VwdGlvbiBvY2N1cnMgaW4gYW55IG9mIHRoZSBjbGF1c2VzIGFuZCBpcyBub3RcbmhhbmRsZWQsIHRoZSBleGNlcHRpb24gaXMgdGVtcG9yYXJpbHkgc2F2ZWQuIFRoZSBgYGZpbmFsbHlgYCBjbGF1c2UgaXNcbmV4ZWN1dGVkLiAgSWYgdGhlcmUgaXMgYSBzYXZlZCBleGNlcHRpb24sIGl0IGlzIHJlLXJhaXNlZCBhdCB0aGUgZW5kXG5vZiB0aGUgYGBmaW5hbGx5YGAgY2xhdXNlLiBJZiB0aGUgYGBmaW5hbGx5YGAgY2xhdXNlIHJhaXNlcyBhbm90aGVyXG5leGNlcHRpb24gb3IgZXhlY3V0ZXMgYSBgYHJldHVybmBgIG9yIGBgYnJlYWtgYCBzdGF0ZW1lbnQsIHRoZSBzYXZlZFxuZXhjZXB0aW9uIGlzIHNldCBhcyB0aGUgY29udGV4dCBvZiB0aGUgbmV3IGV4Y2VwdGlvbi4gIFRoZSBleGNlcHRpb25cbmluZm9ybWF0aW9uIGlzIG5vdCBhdmFpbGFibGUgdG8gdGhlIHByb2dyYW0gZHVyaW5nIGV4ZWN1dGlvbiBvZiB0aGVcbmBgZmluYWxseWBgIGNsYXVzZS5cblxuV2hlbiBhIGBgcmV0dXJuYGAsIGBgYnJlYWtgYCBvciBgYGNvbnRpbnVlYGAgc3RhdGVtZW50IGlzIGV4ZWN1dGVkIGluXG50aGUgYGB0cnlgYCBzdWl0ZSBvZiBhIGBgdHJ5YGAuLi5gYGZpbmFsbHlgYCBzdGF0ZW1lbnQsIHRoZVxuYGBmaW5hbGx5YGAgY2xhdXNlIGlzIGFsc28gZXhlY3V0ZWQgXCdvbiB0aGUgd2F5IG91dC5cJyBBIGBgY29udGludWVgYFxuc3RhdGVtZW50IGlzIGlsbGVnYWwgaW4gdGhlIGBgZmluYWxseWBgIGNsYXVzZS4gKFRoZSByZWFzb24gaXMgYVxucHJvYmxlbSB3aXRoIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIC0tLSB0aGlzIHJlc3RyaWN0aW9uIG1heSBiZVxubGlmdGVkIGluIHRoZSBmdXR1cmUpLlxuXG5BZGRpdGlvbmFsIGluZm9ybWF0aW9uIG9uIGV4Y2VwdGlvbnMgY2FuIGJlIGZvdW5kIGluIHNlY3Rpb25cbipFeGNlcHRpb25zKiwgYW5kIGluZm9ybWF0aW9uIG9uIHVzaW5nIHRoZSBgYHJhaXNlYGAgc3RhdGVtZW50IHRvXG5nZW5lcmF0ZSBleGNlcHRpb25zIG1heSBiZSBmb3VuZCBpbiBzZWN0aW9uICpUaGUgcmFpc2Ugc3RhdGVtZW50Ki5cbicsCi0gJ3R5cGVzJzogJ1xuVGhlIHN0YW5kYXJkIHR5cGUgaGllcmFyY2h5XG4qKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQmVsb3cgaXMgYSBsaXN0IG9mIHRoZSB0eXBlcyB0aGF0IGFyZSBidWlsdCBpbnRvIFB5dGhvbi4gIEV4dGVuc2lvblxubW9kdWxlcyAod3JpdHRlbiBpbiBDLCBKYXZhLCBvciBvdGhlciBsYW5ndWFnZXMsIGRlcGVuZGluZyBvbiB0aGVcbmltcGxlbWVudGF0aW9uKSBjYW4gZGVmaW5lIGFkZGl0aW9uYWwgdHlwZXMuICBGdXR1cmUgdmVyc2lvbnMgb2ZcblB5dGhvbiBtYXkgYWRkIHR5cGVzIHRvIHRoZSB0eXBlIGhpZXJhcmNoeSAoZS5nLiwgcmF0aW9uYWwgbnVtYmVycyxcbmVmZmljaWVudGx5IHN0b3JlZCBhcnJheXMgb2YgaW50ZWdlcnMsIGV0Yy4pLCBhbHRob3VnaCBzdWNoIGFkZGl0aW9uc1xud2lsbCBvZnRlbiBiZSBwcm92aWRlZCB2aWEgdGhlIHN0YW5kYXJkIGxpYnJhcnkgaW5zdGVhZC5cblxuU29tZSBvZiB0aGUgdHlwZSBkZXNjcmlwdGlvbnMgYmVsb3cgY29udGFpbiBhIHBhcmFncmFwaCBsaXN0aW5nXG5cJ3NwZWNpYWwgYXR0cmlidXRlcy5cJyAgVGhlc2UgYXJlIGF0dHJpYnV0ZXMgdGhhdCBwcm92aWRlIGFjY2VzcyB0byB0aGVcbmltcGxlbWVudGF0aW9uIGFuZCBhcmUgbm90IGludGVuZGVkIGZvciBnZW5lcmFsIHVzZS4gIFRoZWlyIGRlZmluaXRpb25cbm1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZS5cblxuTm9uZVxuICAgVGhpcyB0eXBlIGhhcyBhIHNpbmdsZSB2YWx1ZS4gIFRoZXJlIGlzIGEgc2luZ2xlIG9iamVjdCB3aXRoIHRoaXNcbiAgIHZhbHVlLiBUaGlzIG9iamVjdCBpcyBhY2Nlc3NlZCB0aHJvdWdoIHRoZSBidWlsdC1pbiBuYW1lIGBgTm9uZWBgLlxuICAgSXQgaXMgdXNlZCB0byBzaWduaWZ5IHRoZSBhYnNlbmNlIG9mIGEgdmFsdWUgaW4gbWFueSBzaXR1YXRpb25zLFxuICAgZS5nLiwgaXQgaXMgcmV0dXJuZWQgZnJvbSBmdW5jdGlvbnMgdGhhdCBkb25cJ3QgZXhwbGljaXRseSByZXR1cm5cbiAgIGFueXRoaW5nLiBJdHMgdHJ1dGggdmFsdWUgaXMgZmFsc2UuXG5cbk5vdEltcGxlbWVudGVkXG4gICBUaGlzIHR5cGUgaGFzIGEgc2luZ2xlIHZhbHVlLiAgVGhlcmUgaXMgYSBzaW5nbGUgb2JqZWN0IHdpdGggdGhpc1xuICAgdmFsdWUuIFRoaXMgb2JqZWN0IGlzIGFjY2Vzc2VkIHRocm91Z2ggdGhlIGJ1aWx0LWluIG5hbWVcbiAgIGBgTm90SW1wbGVtZW50ZWRgYC4gTnVtZXJpYyBtZXRob2RzIGFuZCByaWNoIGNvbXBhcmlzb24gbWV0aG9kcyBtYXlcbiAgIHJldHVybiB0aGlzIHZhbHVlIGlmIHRoZXkgZG8gbm90IGltcGxlbWVudCB0aGUgb3BlcmF0aW9uIGZvciB0aGVcbiAgIG9wZXJhbmRzIHByb3ZpZGVkLiAgKFRoZSBpbnRlcnByZXRlciB3aWxsIHRoZW4gdHJ5IHRoZSByZWZsZWN0ZWRcbiAgIG9wZXJhdGlvbiwgb3Igc29tZSBvdGhlciBmYWxsYmFjaywgZGVwZW5kaW5nIG9uIHRoZSBvcGVyYXRvci4pICBJdHNcbiAgIHRydXRoIHZhbHVlIGlzIHRydWUuXG5cbkVsbGlwc2lzXG4gICBUaGlzIHR5cGUgaGFzIGEgc2luZ2xlIHZhbHVlLiAgVGhlcmUgaXMgYSBzaW5nbGUgb2JqZWN0IHdpdGggdGhpc1xuICAgdmFsdWUuIFRoaXMgb2JqZWN0IGlzIGFjY2Vzc2VkIHRocm91Z2ggdGhlIGxpdGVyYWwgYGAuLi5gYCBvciB0aGVcbiAgIGJ1aWx0LWluIG5hbWUgYGBFbGxpcHNpc2BgLiAgSXRzIHRydXRoIHZhbHVlIGlzIHRydWUuXG5cbmBgbnVtYmVycy5OdW1iZXJgYFxuICAgVGhlc2UgYXJlIGNyZWF0ZWQgYnkgbnVtZXJpYyBsaXRlcmFscyBhbmQgcmV0dXJuZWQgYXMgcmVzdWx0cyBieVxuICAgYXJpdGhtZXRpYyBvcGVyYXRvcnMgYW5kIGFyaXRobWV0aWMgYnVpbHQtaW4gZnVuY3Rpb25zLiAgTnVtZXJpY1xuICAgb2JqZWN0cyBhcmUgaW1tdXRhYmxlOyBvbmNlIGNyZWF0ZWQgdGhlaXIgdmFsdWUgbmV2ZXIgY2hhbmdlcy5cbiAgIFB5dGhvbiBudW1iZXJzIGFyZSBvZiBjb3Vyc2Ugc3Ryb25nbHkgcmVsYXRlZCB0byBtYXRoZW1hdGljYWxcbiAgIG51bWJlcnMsIGJ1dCBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBvZiBudW1lcmljYWwgcmVwcmVzZW50YXRpb25cbiAgIGluIGNvbXB1dGVycy5cblxuICAgUHl0aG9uIGRpc3Rpbmd1aXNoZXMgYmV0d2VlbiBpbnRlZ2VycywgZmxvYXRpbmcgcG9pbnQgbnVtYmVycywgYW5kXG4gICBjb21wbGV4IG51bWJlcnM6XG5cbiAgIGBgbnVtYmVycy5JbnRlZ3JhbGBgXG4gICAgICBUaGVzZSByZXByZXNlbnQgZWxlbWVudHMgZnJvbSB0aGUgbWF0aGVtYXRpY2FsIHNldCBvZiBpbnRlZ2Vyc1xuICAgICAgKHBvc2l0aXZlIGFuZCBuZWdhdGl2ZSkuXG5cbiAgICAgIFRoZXJlIGFyZSB0d28gdHlwZXMgb2YgaW50ZWdlcnM6XG5cbiAgICAgIEludGVnZXJzIChgYGludGBgKVxuXG4gICAgICAgICBUaGVzZSByZXByZXNlbnQgbnVtYmVycyBpbiBhbiB1bmxpbWl0ZWQgcmFuZ2UsIHN1YmplY3QgdG9cbiAgICAgICAgIGF2YWlsYWJsZSAodmlydHVhbCkgbWVtb3J5IG9ubHkuICBGb3IgdGhlIHB1cnBvc2Ugb2Ygc2hpZnRcbiAgICAgICAgIGFuZCBtYXNrIG9wZXJhdGlvbnMsIGEgYmluYXJ5IHJlcHJlc2VudGF0aW9uIGlzIGFzc3VtZWQsIGFuZFxuICAgICAgICAgbmVnYXRpdmUgbnVtYmVycyBhcmUgcmVwcmVzZW50ZWQgaW4gYSB2YXJpYW50IG9mIDJcJ3NcbiAgICAgICAgIGNvbXBsZW1lbnQgd2hpY2ggZ2l2ZXMgdGhlIGlsbHVzaW9uIG9mIGFuIGluZmluaXRlIHN0cmluZyBvZlxuICAgICAgICAgc2lnbiBiaXRzIGV4dGVuZGluZyB0byB0aGUgbGVmdC5cblxuICAgICAgQm9vbGVhbnMgKGBgYm9vbGBgKVxuICAgICAgICAgVGhlc2UgcmVwcmVzZW50IHRoZSB0cnV0aCB2YWx1ZXMgRmFsc2UgYW5kIFRydWUuICBUaGUgdHdvXG4gICAgICAgICBvYmplY3RzIHJlcHJlc2VudGluZyB0aGUgdmFsdWVzIEZhbHNlIGFuZCBUcnVlIGFyZSB0aGUgb25seVxuICAgICAgICAgQm9vbGVhbiBvYmplY3RzLiBUaGUgQm9vbGVhbiB0eXBlIGlzIGEgc3VidHlwZSBvZiB0aGUgaW50ZWdlclxuICAgICAgICAgdHlwZSwgYW5kIEJvb2xlYW4gdmFsdWVzIGJlaGF2ZSBsaWtlIHRoZSB2YWx1ZXMgMCBhbmQgMSxcbiAgICAgICAgIHJlc3BlY3RpdmVseSwgaW4gYWxtb3N0IGFsbCBjb250ZXh0cywgdGhlIGV4Y2VwdGlvbiBiZWluZ1xuICAgICAgICAgdGhhdCB3aGVuIGNvbnZlcnRlZCB0byBhIHN0cmluZywgdGhlIHN0cmluZ3MgYGAiRmFsc2UiYGAgb3JcbiAgICAgICAgIGBgIlRydWUiYGAgYXJlIHJldHVybmVkLCByZXNwZWN0aXZlbHkuXG5cbiAgICAgIFRoZSBydWxlcyBmb3IgaW50ZWdlciByZXByZXNlbnRhdGlvbiBhcmUgaW50ZW5kZWQgdG8gZ2l2ZSB0aGVcbiAgICAgIG1vc3QgbWVhbmluZ2Z1bCBpbnRlcnByZXRhdGlvbiBvZiBzaGlmdCBhbmQgbWFzayBvcGVyYXRpb25zXG4gICAgICBpbnZvbHZpbmcgbmVnYXRpdmUgaW50ZWdlcnMuXG5cbiAgIGBgbnVtYmVycy5SZWFsYGAgKGBgZmxvYXRgYClcbiAgICAgIFRoZXNlIHJlcHJlc2VudCBtYWNoaW5lLWxldmVsIGRvdWJsZSBwcmVjaXNpb24gZmxvYXRpbmcgcG9pbnRcbiAgICAgIG51bWJlcnMuIFlvdSBhcmUgYXQgdGhlIG1lcmN5IG9mIHRoZSB1bmRlcmx5aW5nIG1hY2hpbmVcbiAgICAgIGFyY2hpdGVjdHVyZSAoYW5kIEMgb3IgSmF2YSBpbXBsZW1lbnRhdGlvbikgZm9yIHRoZSBhY2NlcHRlZFxuICAgICAgcmFuZ2UgYW5kIGhhbmRsaW5nIG9mIG92ZXJmbG93LiBQeXRob24gZG9lcyBub3Qgc3VwcG9ydCBzaW5nbGUtXG4gICAgICBwcmVjaXNpb24gZmxvYXRpbmcgcG9pbnQgbnVtYmVyczsgdGhlIHNhdmluZ3MgaW4gcHJvY2Vzc29yIGFuZFxuICAgICAgbWVtb3J5IHVzYWdlIHRoYXQgYXJlIHVzdWFsbHkgdGhlIHJlYXNvbiBmb3IgdXNpbmcgdGhlc2UgaXNcbiAgICAgIGR3YXJmZWQgYnkgdGhlIG92ZXJoZWFkIG9mIHVzaW5nIG9iamVjdHMgaW4gUHl0aG9uLCBzbyB0aGVyZSBpc1xuICAgICAgbm8gcmVhc29uIHRvIGNvbXBsaWNhdGUgdGhlIGxhbmd1YWdlIHdpdGggdHdvIGtpbmRzIG9mIGZsb2F0aW5nXG4gICAgICBwb2ludCBudW1iZXJzLlxuXG4gICBgYG51bWJlcnMuQ29tcGxleGBgIChgYGNvbXBsZXhgYClcbiAgICAgIFRoZXNlIHJlcHJlc2VudCBjb21wbGV4IG51bWJlcnMgYXMgYSBwYWlyIG9mIG1hY2hpbmUtbGV2ZWxcbiAgICAgIGRvdWJsZSBwcmVjaXNpb24gZmxvYXRpbmcgcG9pbnQgbnVtYmVycy4gIFRoZSBzYW1lIGNhdmVhdHMgYXBwbHlcbiAgICAgIGFzIGZvciBmbG9hdGluZyBwb2ludCBudW1iZXJzLiBUaGUgcmVhbCBhbmQgaW1hZ2luYXJ5IHBhcnRzIG9mIGFcbiAgICAgIGNvbXBsZXggbnVtYmVyIGBgemBgIGNhbiBiZSByZXRyaWV2ZWQgdGhyb3VnaCB0aGUgcmVhZC1vbmx5XG4gICAgICBhdHRyaWJ1dGVzIGBgei5yZWFsYGAgYW5kIGBgei5pbWFnYGAuXG5cblNlcXVlbmNlc1xuICAgVGhlc2UgcmVwcmVzZW50IGZpbml0ZSBvcmRlcmVkIHNldHMgaW5kZXhlZCBieSBub24tbmVnYXRpdmVcbiAgIG51bWJlcnMuIFRoZSBidWlsdC1pbiBmdW5jdGlvbiBgYGxlbigpYGAgcmV0dXJucyB0aGUgbnVtYmVyIG9mXG4gICBpdGVtcyBvZiBhIHNlcXVlbmNlLiBXaGVuIHRoZSBsZW5ndGggb2YgYSBzZXF1ZW5jZSBpcyAqbiosIHRoZVxuICAgaW5kZXggc2V0IGNvbnRhaW5zIHRoZSBudW1iZXJzIDAsIDEsIC4uLiwgKm4qLTEuICBJdGVtICppKiBvZlxuICAgc2VxdWVuY2UgKmEqIGlzIHNlbGVjdGVkIGJ5IGBgYVtpXWBgLlxuXG4gICBTZXF1ZW5jZXMgYWxzbyBzdXBwb3J0IHNsaWNpbmc6IGBgYVtpOmpdYGAgc2VsZWN0cyBhbGwgaXRlbXMgd2l0aFxuICAgaW5kZXggKmsqIHN1Y2ggdGhhdCAqaSogYGA8PWBgICprKiBgYDxgYCAqaiouICBXaGVuIHVzZWQgYXMgYW5cbiAgIGV4cHJlc3Npb24sIGEgc2xpY2UgaXMgYSBzZXF1ZW5jZSBvZiB0aGUgc2FtZSB0eXBlLiAgVGhpcyBpbXBsaWVzXG4gICB0aGF0IHRoZSBpbmRleCBzZXQgaXMgcmVudW1iZXJlZCBzbyB0aGF0IGl0IHN0YXJ0cyBhdCAwLlxuXG4gICBTb21lIHNlcXVlbmNlcyBhbHNvIHN1cHBvcnQgImV4dGVuZGVkIHNsaWNpbmciIHdpdGggYSB0aGlyZCAic3RlcCJcbiAgIHBhcmFtZXRlcjogYGBhW2k6ajprXWBgIHNlbGVjdHMgYWxsIGl0ZW1zIG9mICphKiB3aXRoIGluZGV4ICp4KlxuICAgd2hlcmUgYGB4ID0gaSArIG4qa2BgLCAqbiogYGA+PWBgIGBgMGBgIGFuZCAqaSogYGA8PWBgICp4KiBgYDxgYFxuICAgKmoqLlxuXG4gICBTZXF1ZW5jZXMgYXJlIGRpc3Rpbmd1aXNoZWQgYWNjb3JkaW5nIHRvIHRoZWlyIG11dGFiaWxpdHk6XG5cbiAgIEltbXV0YWJsZSBzZXF1ZW5jZXNcbiAgICAgIEFuIG9iamVjdCBvZiBhbiBpbW11dGFibGUgc2VxdWVuY2UgdHlwZSBjYW5ub3QgY2hhbmdlIG9uY2UgaXQgaXNcbiAgICAgIGNyZWF0ZWQuICAoSWYgdGhlIG9iamVjdCBjb250YWlucyByZWZlcmVuY2VzIHRvIG90aGVyIG9iamVjdHMsXG4gICAgICB0aGVzZSBvdGhlciBvYmplY3RzIG1heSBiZSBtdXRhYmxlIGFuZCBtYXkgYmUgY2hhbmdlZDsgaG93ZXZlcixcbiAgICAgIHRoZSBjb2xsZWN0aW9uIG9mIG9iamVjdHMgZGlyZWN0bHkgcmVmZXJlbmNlZCBieSBhbiBpbW11dGFibGVcbiAgICAgIG9iamVjdCBjYW5ub3QgY2hhbmdlLilcblxuICAgICAgVGhlIGZvbGxvd2luZyB0eXBlcyBhcmUgaW1tdXRhYmxlIHNlcXVlbmNlczpcblxuICAgICAgU3RyaW5nc1xuICAgICAgICAgVGhlIGl0ZW1zIG9mIGEgc3RyaW5nIG9iamVjdCBhcmUgVW5pY29kZSBjb2RlIHVuaXRzLiAgQVxuICAgICAgICAgVW5pY29kZSBjb2RlIHVuaXQgaXMgcmVwcmVzZW50ZWQgYnkgYSBzdHJpbmcgb2JqZWN0IG9mIG9uZVxuICAgICAgICAgaXRlbSBhbmQgY2FuIGhvbGQgZWl0aGVyIGEgMTYtYml0IG9yIDMyLWJpdCB2YWx1ZVxuICAgICAgICAgcmVwcmVzZW50aW5nIGEgVW5pY29kZSBvcmRpbmFsICh0aGUgbWF4aW11bSB2YWx1ZSBmb3IgdGhlXG4gICAgICAgICBvcmRpbmFsIGlzIGdpdmVuIGluIGBgc3lzLm1heHVuaWNvZGVgYCwgYW5kIGRlcGVuZHMgb24gaG93XG4gICAgICAgICBQeXRob24gaXMgY29uZmlndXJlZCBhdCBjb21waWxlIHRpbWUpLiAgU3Vycm9nYXRlIHBhaXJzIG1heVxuICAgICAgICAgYmUgcHJlc2VudCBpbiB0aGUgVW5pY29kZSBvYmplY3QsIGFuZCB3aWxsIGJlIHJlcG9ydGVkIGFzIHR3b1xuICAgICAgICAgc2VwYXJhdGUgaXRlbXMuICBUaGUgYnVpbHQtaW4gZnVuY3Rpb25zIGBgY2hyKClgYCBhbmRcbiAgICAgICAgIGBgb3JkKClgYCBjb252ZXJ0IGJldHdlZW4gY29kZSB1bml0cyBhbmQgbm9ubmVnYXRpdmUgaW50ZWdlcnNcbiAgICAgICAgIHJlcHJlc2VudGluZyB0aGUgVW5pY29kZSBvcmRpbmFscyBhcyBkZWZpbmVkIGluIHRoZSBVbmljb2RlXG4gICAgICAgICBTdGFuZGFyZCAzLjAuIENvbnZlcnNpb24gZnJvbSBhbmQgdG8gb3RoZXIgZW5jb2RpbmdzIGFyZVxuICAgICAgICAgcG9zc2libGUgdGhyb3VnaCB0aGUgc3RyaW5nIG1ldGhvZCBgYGVuY29kZSgpYGAuXG5cbiAgICAgIFR1cGxlc1xuICAgICAgICAgVGhlIGl0ZW1zIG9mIGEgdHVwbGUgYXJlIGFyYml0cmFyeSBQeXRob24gb2JqZWN0cy4gVHVwbGVzIG9mXG4gICAgICAgICB0d28gb3IgbW9yZSBpdGVtcyBhcmUgZm9ybWVkIGJ5IGNvbW1hLXNlcGFyYXRlZCBsaXN0cyBvZlxuICAgICAgICAgZXhwcmVzc2lvbnMuICBBIHR1cGxlIG9mIG9uZSBpdGVtIChhIFwnc2luZ2xldG9uXCcpIGNhbiBiZVxuICAgICAgICAgZm9ybWVkIGJ5IGFmZml4aW5nIGEgY29tbWEgdG8gYW4gZXhwcmVzc2lvbiAoYW4gZXhwcmVzc2lvbiBieVxuICAgICAgICAgaXRzZWxmIGRvZXMgbm90IGNyZWF0ZSBhIHR1cGxlLCBzaW5jZSBwYXJlbnRoZXNlcyBtdXN0IGJlXG4gICAgICAgICB1c2FibGUgZm9yIGdyb3VwaW5nIG9mIGV4cHJlc3Npb25zKS4gIEFuIGVtcHR5IHR1cGxlIGNhbiBiZVxuICAgICAgICAgZm9ybWVkIGJ5IGFuIGVtcHR5IHBhaXIgb2YgcGFyZW50aGVzZXMuXG5cbiAgICAgIEJ5dGVzXG4gICAgICAgICBBIGJ5dGVzIG9iamVjdCBpcyBhbiBpbW11dGFibGUgYXJyYXkuICBUaGUgaXRlbXMgYXJlIDgtYml0XG4gICAgICAgICBieXRlcywgcmVwcmVzZW50ZWQgYnkgaW50ZWdlcnMgaW4gdGhlIHJhbmdlIDAgPD0geCA8IDI1Ni5cbiAgICAgICAgIEJ5dGVzIGxpdGVyYWxzIChsaWtlIGBgYlwnYWJjXCdgYCBhbmQgdGhlIGJ1aWx0LWluIGZ1bmN0aW9uXG4gICAgICAgICBgYGJ5dGVzKClgYCBjYW4gYmUgdXNlZCB0byBjb25zdHJ1Y3QgYnl0ZXMgb2JqZWN0cy4gIEFsc28sXG4gICAgICAgICBieXRlcyBvYmplY3RzIGNhbiBiZSBkZWNvZGVkIHRvIHN0cmluZ3MgdmlhIHRoZSBgYGRlY29kZSgpYGBcbiAgICAgICAgIG1ldGhvZC5cblxuICAgTXV0YWJsZSBzZXF1ZW5jZXNcbiAgICAgIE11dGFibGUgc2VxdWVuY2VzIGNhbiBiZSBjaGFuZ2VkIGFmdGVyIHRoZXkgYXJlIGNyZWF0ZWQuICBUaGVcbiAgICAgIHN1YnNjcmlwdGlvbiBhbmQgc2xpY2luZyBub3RhdGlvbnMgY2FuIGJlIHVzZWQgYXMgdGhlIHRhcmdldCBvZlxuICAgICAgYXNzaWdubWVudCBhbmQgYGBkZWxgYCAoZGVsZXRlKSBzdGF0ZW1lbnRzLlxuXG4gICAgICBUaGVyZSBhcmUgY3VycmVudGx5IHR3byBpbnRyaW5zaWMgbXV0YWJsZSBzZXF1ZW5jZSB0eXBlczpcblxuICAgICAgTGlzdHNcbiAgICAgICAgIFRoZSBpdGVtcyBvZiBhIGxpc3QgYXJlIGFyYml0cmFyeSBQeXRob24gb2JqZWN0cy4gIExpc3RzIGFyZVxuICAgICAgICAgZm9ybWVkIGJ5IHBsYWNpbmcgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBleHByZXNzaW9ucyBpblxuICAgICAgICAgc3F1YXJlIGJyYWNrZXRzLiAoTm90ZSB0aGF0IHRoZXJlIGFyZSBubyBzcGVjaWFsIGNhc2VzIG5lZWRlZFxuICAgICAgICAgdG8gZm9ybSBsaXN0cyBvZiBsZW5ndGggMCBvciAxLilcblxuICAgICAgQnl0ZSBBcnJheXNcbiAgICAgICAgIEEgYnl0ZWFycmF5IG9iamVjdCBpcyBhIG11dGFibGUgYXJyYXkuIFRoZXkgYXJlIGNyZWF0ZWQgYnlcbiAgICAgICAgIHRoZSBidWlsdC1pbiBgYGJ5dGVhcnJheSgpYGAgY29uc3RydWN0b3IuICBBc2lkZSBmcm9tIGJlaW5nXG4gICAgICAgICBtdXRhYmxlIChhbmQgaGVuY2UgdW5oYXNoYWJsZSksIGJ5dGUgYXJyYXlzIG90aGVyd2lzZSBwcm92aWRlXG4gICAgICAgICB0aGUgc2FtZSBpbnRlcmZhY2UgYW5kIGZ1bmN0aW9uYWxpdHkgYXMgaW1tdXRhYmxlIGJ5dGVzXG4gICAgICAgICBvYmplY3RzLlxuXG4gICAgICBUaGUgZXh0ZW5zaW9uIG1vZHVsZSBgYGFycmF5YGAgcHJvdmlkZXMgYW4gYWRkaXRpb25hbCBleGFtcGxlIG9mXG4gICAgICBhIG11dGFibGUgc2VxdWVuY2UgdHlwZSwgYXMgZG9lcyB0aGUgYGBjb2xsZWN0aW9uc2BgIG1vZHVsZS5cblxuU2V0IHR5cGVzXG4gICBUaGVzZSByZXByZXNlbnQgdW5vcmRlcmVkLCBmaW5pdGUgc2V0cyBvZiB1bmlxdWUsIGltbXV0YWJsZVxuICAgb2JqZWN0cy4gQXMgc3VjaCwgdGhleSBjYW5ub3QgYmUgaW5kZXhlZCBieSBhbnkgc3Vic2NyaXB0LiBIb3dldmVyLFxuICAgdGhleSBjYW4gYmUgaXRlcmF0ZWQgb3ZlciwgYW5kIHRoZSBidWlsdC1pbiBmdW5jdGlvbiBgYGxlbigpYGBcbiAgIHJldHVybnMgdGhlIG51bWJlciBvZiBpdGVtcyBpbiBhIHNldC4gQ29tbW9uIHVzZXMgZm9yIHNldHMgYXJlIGZhc3RcbiAgIG1lbWJlcnNoaXAgdGVzdGluZywgcmVtb3ZpbmcgZHVwbGljYXRlcyBmcm9tIGEgc2VxdWVuY2UsIGFuZFxuICAgY29tcHV0aW5nIG1hdGhlbWF0aWNhbCBvcGVyYXRpb25zIHN1Y2ggYXMgaW50ZXJzZWN0aW9uLCB1bmlvbixcbiAgIGRpZmZlcmVuY2UsIGFuZCBzeW1tZXRyaWMgZGlmZmVyZW5jZS5cblxuICAgRm9yIHNldCBlbGVtZW50cywgdGhlIHNhbWUgaW1tdXRhYmlsaXR5IHJ1bGVzIGFwcGx5IGFzIGZvclxuICAgZGljdGlvbmFyeSBrZXlzLiBOb3RlIHRoYXQgbnVtZXJpYyB0eXBlcyBvYmV5IHRoZSBub3JtYWwgcnVsZXMgZm9yXG4gICBudW1lcmljIGNvbXBhcmlzb246IGlmIHR3byBudW1iZXJzIGNvbXBhcmUgZXF1YWwgKGUuZy4sIGBgMWBgIGFuZFxuICAgYGAxLjBgYCksIG9ubHkgb25lIG9mIHRoZW0gY2FuIGJlIGNvbnRhaW5lZCBpbiBhIHNldC5cblxuICAgVGhlcmUgYXJlIGN1cnJlbnRseSB0d28gaW50cmluc2ljIHNldCB0eXBlczpcblxuICAgU2V0c1xuICAgICAgVGhlc2UgcmVwcmVzZW50IGEgbXV0YWJsZSBzZXQuIFRoZXkgYXJlIGNyZWF0ZWQgYnkgdGhlIGJ1aWx0LWluXG4gICAgICBgYHNldCgpYGAgY29uc3RydWN0b3IgYW5kIGNhbiBiZSBtb2RpZmllZCBhZnRlcndhcmRzIGJ5IHNldmVyYWxcbiAgICAgIG1ldGhvZHMsIHN1Y2ggYXMgYGBhZGQoKWBgLlxuXG4gICBGcm96ZW4gc2V0c1xuICAgICAgVGhlc2UgcmVwcmVzZW50IGFuIGltbXV0YWJsZSBzZXQuICBUaGV5IGFyZSBjcmVhdGVkIGJ5IHRoZVxuICAgICAgYnVpbHQtaW4gYGBmcm96ZW5zZXQoKWBgIGNvbnN0cnVjdG9yLiAgQXMgYSBmcm96ZW5zZXQgaXNcbiAgICAgIGltbXV0YWJsZSBhbmQgKmhhc2hhYmxlKiwgaXQgY2FuIGJlIHVzZWQgYWdhaW4gYXMgYW4gZWxlbWVudCBvZlxuICAgICAgYW5vdGhlciBzZXQsIG9yIGFzIGEgZGljdGlvbmFyeSBrZXkuXG5cbk1hcHBpbmdzXG4gICBUaGVzZSByZXByZXNlbnQgZmluaXRlIHNldHMgb2Ygb2JqZWN0cyBpbmRleGVkIGJ5IGFyYml0cmFyeSBpbmRleFxuICAgc2V0cy4gVGhlIHN1YnNjcmlwdCBub3RhdGlvbiBgYGFba11gYCBzZWxlY3RzIHRoZSBpdGVtIGluZGV4ZWQgYnlcbiAgIGBga2BgIGZyb20gdGhlIG1hcHBpbmcgYGBhYGA7IHRoaXMgY2FuIGJlIHVzZWQgaW4gZXhwcmVzc2lvbnMgYW5kXG4gICBhcyB0aGUgdGFyZ2V0IG9mIGFzc2lnbm1lbnRzIG9yIGBgZGVsYGAgc3RhdGVtZW50cy4gVGhlIGJ1aWx0LWluXG4gICBmdW5jdGlvbiBgYGxlbigpYGAgcmV0dXJucyB0aGUgbnVtYmVyIG9mIGl0ZW1zIGluIGEgbWFwcGluZy5cblxuICAgVGhlcmUgaXMgY3VycmVudGx5IGEgc2luZ2xlIGludHJpbnNpYyBtYXBwaW5nIHR5cGU6XG5cbiAgIERpY3Rpb25hcmllc1xuICAgICAgVGhlc2UgcmVwcmVzZW50IGZpbml0ZSBzZXRzIG9mIG9iamVjdHMgaW5kZXhlZCBieSBuZWFybHlcbiAgICAgIGFyYml0cmFyeSB2YWx1ZXMuICBUaGUgb25seSB0eXBlcyBvZiB2YWx1ZXMgbm90IGFjY2VwdGFibGUgYXNcbiAgICAgIGtleXMgYXJlIHZhbHVlcyBjb250YWluaW5nIGxpc3RzIG9yIGRpY3Rpb25hcmllcyBvciBvdGhlclxuICAgICAgbXV0YWJsZSB0eXBlcyB0aGF0IGFyZSBjb21wYXJlZCBieSB2YWx1ZSByYXRoZXIgdGhhbiBieSBvYmplY3RcbiAgICAgIGlkZW50aXR5LCB0aGUgcmVhc29uIGJlaW5nIHRoYXQgdGhlIGVmZmljaWVudCBpbXBsZW1lbnRhdGlvbiBvZlxuICAgICAgZGljdGlvbmFyaWVzIHJlcXVpcmVzIGEga2V5XCdzIGhhc2ggdmFsdWUgdG8gcmVtYWluIGNvbnN0YW50LlxuICAgICAgTnVtZXJpYyB0eXBlcyB1c2VkIGZvciBrZXlzIG9iZXkgdGhlIG5vcm1hbCBydWxlcyBmb3IgbnVtZXJpY1xuICAgICAgY29tcGFyaXNvbjogaWYgdHdvIG51bWJlcnMgY29tcGFyZSBlcXVhbCAoZS5nLiwgYGAxYGAgYW5kXG4gICAgICBgYDEuMGBgKSB0aGVuIHRoZXkgY2FuIGJlIHVzZWQgaW50ZXJjaGFuZ2VhYmx5IHRvIGluZGV4IHRoZSBzYW1lXG4gICAgICBkaWN0aW9uYXJ5IGVudHJ5LlxuXG4gICAgICBEaWN0aW9uYXJpZXMgYXJlIG11dGFibGU7IHRoZXkgY2FuIGJlIGNyZWF0ZWQgYnkgdGhlIGBgey4uLn1gYFxuICAgICAgbm90YXRpb24gKHNlZSBzZWN0aW9uICpEaWN0aW9uYXJ5IGRpc3BsYXlzKikuXG5cbiAgICAgIFRoZSBleHRlbnNpb24gbW9kdWxlcyBgYGRibS5uZGJtYGAgYW5kIGBgZGJtLmdudWBgIHByb3ZpZGVcbiAgICAgIGFkZGl0aW9uYWwgZXhhbXBsZXMgb2YgbWFwcGluZyB0eXBlcywgYXMgZG9lcyB0aGVcbiAgICAgIGBgY29sbGVjdGlvbnNgYCBtb2R1bGUuXG5cbkNhbGxhYmxlIHR5cGVzXG4gICBUaGVzZSBhcmUgdGhlIHR5cGVzIHRvIHdoaWNoIHRoZSBmdW5jdGlvbiBjYWxsIG9wZXJhdGlvbiAoc2VlXG4gICBzZWN0aW9uICpDYWxscyopIGNhbiBiZSBhcHBsaWVkOlxuXG4gICBVc2VyLWRlZmluZWQgZnVuY3Rpb25zXG4gICAgICBBIHVzZXItZGVmaW5lZCBmdW5jdGlvbiBvYmplY3QgaXMgY3JlYXRlZCBieSBhIGZ1bmN0aW9uXG4gICAgICBkZWZpbml0aW9uIChzZWUgc2VjdGlvbiAqRnVuY3Rpb24gZGVmaW5pdGlvbnMqKS4gIEl0IHNob3VsZCBiZVxuICAgICAgY2FsbGVkIHdpdGggYW4gYXJndW1lbnQgbGlzdCBjb250YWluaW5nIHRoZSBzYW1lIG51bWJlciBvZiBpdGVtc1xuICAgICAgYXMgdGhlIGZ1bmN0aW9uXCdzIGZvcm1hbCBwYXJhbWV0ZXIgbGlzdC5cblxuICAgICAgU3BlY2lhbCBhdHRyaWJ1dGVzOlxuXG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBBdHRyaWJ1dGUgICAgICAgICAgICAgICAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICs9PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT0rXG4gICAgICB8IGBgX19kb2NfX2BgICAgICAgICAgICAgICAgfCBUaGUgZnVuY3Rpb25cJ3MgZG9jdW1lbnRhdGlvbiAgICB8IFdyaXRhYmxlICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHN0cmluZywgb3IgYGBOb25lYGAgaWYgICAgICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB1bmF2YWlsYWJsZSAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcbiAgICAgIHwgYGBfX25hbWVfX2BgICAgICAgICAgICAgICB8IFRoZSBmdW5jdGlvblwncyBuYW1lICAgICAgICAgICAgIHwgV3JpdGFibGUgICAgfFxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcbiAgICAgIHwgYGBfX21vZHVsZV9fYGAgICAgICAgICAgICB8IFRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgdGhlICAgICAgfCBXcml0YWJsZSAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBmdW5jdGlvbiB3YXMgZGVmaW5lZCBpbiwgb3IgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBOb25lYGAgaWYgdW5hdmFpbGFibGUuICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19kZWZhdWx0c19fYGAgICAgICAgICAgfCBBIHR1cGxlIGNvbnRhaW5pbmcgZGVmYXVsdCAgICAgIHwgV3JpdGFibGUgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYXJndW1lbnQgdmFsdWVzIGZvciB0aG9zZSAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFyZ3VtZW50cyB0aGF0IGhhdmUgZGVmYXVsdHMsICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBvciBgYE5vbmVgYCBpZiBubyBhcmd1bWVudHMgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgaGF2ZSBhIGRlZmF1bHQgdmFsdWUgICAgICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19jb2RlX19gYCAgICAgICAgICAgICAgfCBUaGUgY29kZSBvYmplY3QgcmVwcmVzZW50aW5nICAgIHwgV3JpdGFibGUgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdGhlIGNvbXBpbGVkIGZ1bmN0aW9uIGJvZHkuICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19nbG9iYWxzX19gYCAgICAgICAgICAgfCBBIHJlZmVyZW5jZSB0byB0aGUgZGljdGlvbmFyeSAgIHwgUmVhZC1vbmx5ICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdGhhdCBob2xkcyB0aGUgZnVuY3Rpb25cJ3MgICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBnbG9iYWwgdmFyaWFibGVzIC0tLSB0aGUgZ2xvYmFsIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgbmFtZXNwYWNlIG9mIHRoZSBtb2R1bGUgaW4gICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHdoaWNoIHRoZSBmdW5jdGlvbiB3YXMgZGVmaW5lZC4gfCAgICAgICAgICAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fZGljdF9fYGAgICAgICAgICAgICAgIHwgVGhlIG5hbWVzcGFjZSBzdXBwb3J0aW5nICAgICAgICB8IFdyaXRhYmxlICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFyYml0cmFyeSBmdW5jdGlvbiBhdHRyaWJ1dGVzLiAgfCAgICAgICAgICAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fY2xvc3VyZV9fYGAgICAgICAgICAgIHwgYGBOb25lYGAgb3IgYSB0dXBsZSBvZiBjZWxscyAgICB8IFJlYWQtb25seSAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRoYXQgY29udGFpbiBiaW5kaW5ncyBmb3IgdGhlICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBmdW5jdGlvblwncyBmcmVlIHZhcmlhYmxlcy4gICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19hbm5vdGF0aW9uc19fYGAgICAgICAgfCBBIGRpY3QgY29udGFpbmluZyBhbm5vdGF0aW9ucyAgIHwgV3JpdGFibGUgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb2YgcGFyYW1ldGVycy4gIFRoZSBrZXlzIG9mIHRoZSB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGRpY3QgYXJlIHRoZSBwYXJhbWV0ZXIgbmFtZXMsICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBvciBgYFwncmV0dXJuXCdgYCBmb3IgdGhlIHJldHVybiAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhbm5vdGF0aW9uLCBpZiBwcm92aWRlZC4gICAgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcbiAgICAgIHwgYGBfX2t3ZGVmYXVsdHNfX2BgICAgICAgICB8IEEgZGljdCBjb250YWluaW5nIGRlZmF1bHRzIGZvciAgfCBXcml0YWJsZSAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBrZXl3b3JkLW9ubHkgcGFyYW1ldGVycy4gICAgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcblxuICAgICAgTW9zdCBvZiB0aGUgYXR0cmlidXRlcyBsYWJlbGxlZCAiV3JpdGFibGUiIGNoZWNrIHRoZSB0eXBlIG9mIHRoZVxuICAgICAgYXNzaWduZWQgdmFsdWUuXG5cbiAgICAgIEZ1bmN0aW9uIG9iamVjdHMgYWxzbyBzdXBwb3J0IGdldHRpbmcgYW5kIHNldHRpbmcgYXJiaXRyYXJ5XG4gICAgICBhdHRyaWJ1dGVzLCB3aGljaCBjYW4gYmUgdXNlZCwgZm9yIGV4YW1wbGUsIHRvIGF0dGFjaCBtZXRhZGF0YVxuICAgICAgdG8gZnVuY3Rpb25zLiAgUmVndWxhciBhdHRyaWJ1dGUgZG90LW5vdGF0aW9uIGlzIHVzZWQgdG8gZ2V0IGFuZFxuICAgICAgc2V0IHN1Y2ggYXR0cmlidXRlcy4gKk5vdGUgdGhhdCB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBvbmx5XG4gICAgICBzdXBwb3J0cyBmdW5jdGlvbiBhdHRyaWJ1dGVzIG9uIHVzZXItZGVmaW5lZCBmdW5jdGlvbnMuIEZ1bmN0aW9uXG4gICAgICBhdHRyaWJ1dGVzIG9uIGJ1aWx0LWluIGZ1bmN0aW9ucyBtYXkgYmUgc3VwcG9ydGVkIGluIHRoZVxuICAgICAgZnV0dXJlLipcblxuICAgICAgQWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCBhIGZ1bmN0aW9uXCdzIGRlZmluaXRpb24gY2FuIGJlXG4gICAgICByZXRyaWV2ZWQgZnJvbSBpdHMgY29kZSBvYmplY3Q7IHNlZSB0aGUgZGVzY3JpcHRpb24gb2YgaW50ZXJuYWxcbiAgICAgIHR5cGVzIGJlbG93LlxuXG4gICBJbnN0YW5jZSBtZXRob2RzXG4gICAgICBBbiBpbnN0YW5jZSBtZXRob2Qgb2JqZWN0IGNvbWJpbmVzIGEgY2xhc3MsIGEgY2xhc3MgaW5zdGFuY2UgYW5kXG4gICAgICBhbnkgY2FsbGFibGUgb2JqZWN0IChub3JtYWxseSBhIHVzZXItZGVmaW5lZCBmdW5jdGlvbikuXG5cbiAgICAgIFNwZWNpYWwgcmVhZC1vbmx5IGF0dHJpYnV0ZXM6IGBgX19zZWxmX19gYCBpcyB0aGUgY2xhc3MgaW5zdGFuY2VcbiAgICAgIG9iamVjdCwgYGBfX2Z1bmNfX2BgIGlzIHRoZSBmdW5jdGlvbiBvYmplY3Q7IGBgX19kb2NfX2BgIGlzIHRoZVxuICAgICAgbWV0aG9kXCdzIGRvY3VtZW50YXRpb24gKHNhbWUgYXMgYGBfX2Z1bmNfXy5fX2RvY19fYGApO1xuICAgICAgYGBfX25hbWVfX2BgIGlzIHRoZSBtZXRob2QgbmFtZSAoc2FtZSBhcyBgYF9fZnVuY19fLl9fbmFtZV9fYGApO1xuICAgICAgYGBfX21vZHVsZV9fYGAgaXMgdGhlIG5hbWUgb2YgdGhlIG1vZHVsZSB0aGUgbWV0aG9kIHdhcyBkZWZpbmVkXG4gICAgICBpbiwgb3IgYGBOb25lYGAgaWYgdW5hdmFpbGFibGUuXG5cbiAgICAgIE1ldGhvZHMgYWxzbyBzdXBwb3J0IGFjY2Vzc2luZyAoYnV0IG5vdCBzZXR0aW5nKSB0aGUgYXJiaXRyYXJ5XG4gICAgICBmdW5jdGlvbiBhdHRyaWJ1dGVzIG9uIHRoZSB1bmRlcmx5aW5nIGZ1bmN0aW9uIG9iamVjdC5cblxuICAgICAgVXNlci1kZWZpbmVkIG1ldGhvZCBvYmplY3RzIG1heSBiZSBjcmVhdGVkIHdoZW4gZ2V0dGluZyBhblxuICAgICAgYXR0cmlidXRlIG9mIGEgY2xhc3MgKHBlcmhhcHMgdmlhIGFuIGluc3RhbmNlIG9mIHRoYXQgY2xhc3MpLCBpZlxuICAgICAgdGhhdCBhdHRyaWJ1dGUgaXMgYSB1c2VyLWRlZmluZWQgZnVuY3Rpb24gb2JqZWN0IG9yIGEgY2xhc3NcbiAgICAgIG1ldGhvZCBvYmplY3QuXG5cbiAgICAgIFdoZW4gYW4gaW5zdGFuY2UgbWV0aG9kIG9iamVjdCBpcyBjcmVhdGVkIGJ5IHJldHJpZXZpbmcgYSB1c2VyLVxuICAgICAgZGVmaW5lZCBmdW5jdGlvbiBvYmplY3QgZnJvbSBhIGNsYXNzIHZpYSBvbmUgb2YgaXRzIGluc3RhbmNlcyxcbiAgICAgIGl0cyBgYF9fc2VsZl9fYGAgYXR0cmlidXRlIGlzIHRoZSBpbnN0YW5jZSwgYW5kIHRoZSBtZXRob2RcbiAgICAgIG9iamVjdCBpcyBzYWlkIHRvIGJlIGJvdW5kLiAgVGhlIG5ldyBtZXRob2RcJ3MgYGBfX2Z1bmNfX2BgXG4gICAgICBhdHRyaWJ1dGUgaXMgdGhlIG9yaWdpbmFsIGZ1bmN0aW9uIG9iamVjdC5cblxuICAgICAgV2hlbiBhIHVzZXItZGVmaW5lZCBtZXRob2Qgb2JqZWN0IGlzIGNyZWF0ZWQgYnkgcmV0cmlldmluZ1xuICAgICAgYW5vdGhlciBtZXRob2Qgb2JqZWN0IGZyb20gYSBjbGFzcyBvciBpbnN0YW5jZSwgdGhlIGJlaGF2aW91ciBpc1xuICAgICAgdGhlIHNhbWUgYXMgZm9yIGEgZnVuY3Rpb24gb2JqZWN0LCBleGNlcHQgdGhhdCB0aGUgYGBfX2Z1bmNfX2BgXG4gICAgICBhdHRyaWJ1dGUgb2YgdGhlIG5ldyBpbnN0YW5jZSBpcyBub3QgdGhlIG9yaWdpbmFsIG1ldGhvZCBvYmplY3RcbiAgICAgIGJ1dCBpdHMgYGBfX2Z1bmNfX2BgIGF0dHJpYnV0ZS5cblxuICAgICAgV2hlbiBhbiBpbnN0YW5jZSBtZXRob2Qgb2JqZWN0IGlzIGNyZWF0ZWQgYnkgcmV0cmlldmluZyBhIGNsYXNzXG4gICAgICBtZXRob2Qgb2JqZWN0IGZyb20gYSBjbGFzcyBvciBpbnN0YW5jZSwgaXRzIGBgX19zZWxmX19gYFxuICAgICAgYXR0cmlidXRlIGlzIHRoZSBjbGFzcyBpdHNlbGYsIGFuZCBpdHMgYGBfX2Z1bmNfX2BgIGF0dHJpYnV0ZSBpc1xuICAgICAgdGhlIGZ1bmN0aW9uIG9iamVjdCB1bmRlcmx5aW5nIHRoZSBjbGFzcyBtZXRob2QuXG5cbiAgICAgIFdoZW4gYW4gaW5zdGFuY2UgbWV0aG9kIG9iamVjdCBpcyBjYWxsZWQsIHRoZSB1bmRlcmx5aW5nXG4gICAgICBmdW5jdGlvbiAoYGBfX2Z1bmNfX2BgKSBpcyBjYWxsZWQsIGluc2VydGluZyB0aGUgY2xhc3MgaW5zdGFuY2VcbiAgICAgIChgYF9fc2VsZl9fYGApIGluIGZyb250IG9mIHRoZSBhcmd1bWVudCBsaXN0LiAgRm9yIGluc3RhbmNlLFxuICAgICAgd2hlbiBgYENgYCBpcyBhIGNsYXNzIHdoaWNoIGNvbnRhaW5zIGEgZGVmaW5pdGlvbiBmb3IgYSBmdW5jdGlvblxuICAgICAgYGBmKClgYCwgYW5kIGBgeGBgIGlzIGFuIGluc3RhbmNlIG9mIGBgQ2BgLCBjYWxsaW5nIGBgeC5mKDEpYGBcbiAgICAgIGlzIGVxdWl2YWxlbnQgdG8gY2FsbGluZyBgYEMuZih4LCAxKWBgLlxuXG4gICAgICBXaGVuIGFuIGluc3RhbmNlIG1ldGhvZCBvYmplY3QgaXMgZGVyaXZlZCBmcm9tIGEgY2xhc3MgbWV0aG9kXG4gICAgICBvYmplY3QsIHRoZSAiY2xhc3MgaW5zdGFuY2UiIHN0b3JlZCBpbiBgYF9fc2VsZl9fYGAgd2lsbFxuICAgICAgYWN0dWFsbHkgYmUgdGhlIGNsYXNzIGl0c2VsZiwgc28gdGhhdCBjYWxsaW5nIGVpdGhlciBgYHguZigxKWBgXG4gICAgICBvciBgYEMuZigxKWBgIGlzIGVxdWl2YWxlbnQgdG8gY2FsbGluZyBgYGYoQywxKWBgIHdoZXJlIGBgZmBgIGlzXG4gICAgICB0aGUgdW5kZXJseWluZyBmdW5jdGlvbi5cblxuICAgICAgTm90ZSB0aGF0IHRoZSB0cmFuc2Zvcm1hdGlvbiBmcm9tIGZ1bmN0aW9uIG9iamVjdCB0byBpbnN0YW5jZVxuICAgICAgbWV0aG9kIG9iamVjdCBoYXBwZW5zIGVhY2ggdGltZSB0aGUgYXR0cmlidXRlIGlzIHJldHJpZXZlZCBmcm9tXG4gICAgICB0aGUgaW5zdGFuY2UuICBJbiBzb21lIGNhc2VzLCBhIGZydWl0ZnVsIG9wdGltaXphdGlvbiBpcyB0b1xuICAgICAgYXNzaWduIHRoZSBhdHRyaWJ1dGUgdG8gYSBsb2NhbCB2YXJpYWJsZSBhbmQgY2FsbCB0aGF0IGxvY2FsXG4gICAgICB2YXJpYWJsZS4gQWxzbyBub3RpY2UgdGhhdCB0aGlzIHRyYW5zZm9ybWF0aW9uIG9ubHkgaGFwcGVucyBmb3JcbiAgICAgIHVzZXItZGVmaW5lZCBmdW5jdGlvbnM7IG90aGVyIGNhbGxhYmxlIG9iamVjdHMgKGFuZCBhbGwgbm9uLVxuICAgICAgY2FsbGFibGUgb2JqZWN0cykgYXJlIHJldHJpZXZlZCB3aXRob3V0IHRyYW5zZm9ybWF0aW9uLiAgSXQgaXNcbiAgICAgIGFsc28gaW1wb3J0YW50IHRvIG5vdGUgdGhhdCB1c2VyLWRlZmluZWQgZnVuY3Rpb25zIHdoaWNoIGFyZVxuICAgICAgYXR0cmlidXRlcyBvZiBhIGNsYXNzIGluc3RhbmNlIGFyZSBub3QgY29udmVydGVkIHRvIGJvdW5kXG4gICAgICBtZXRob2RzOyB0aGlzICpvbmx5KiBoYXBwZW5zIHdoZW4gdGhlIGZ1bmN0aW9uIGlzIGFuIGF0dHJpYnV0ZVxuICAgICAgb2YgdGhlIGNsYXNzLlxuXG4gICBHZW5lcmF0b3IgZnVuY3Rpb25zXG4gICAgICBBIGZ1bmN0aW9uIG9yIG1ldGhvZCB3aGljaCB1c2VzIHRoZSBgYHlpZWxkYGAgc3RhdGVtZW50IChzZWVcbiAgICAgIHNlY3Rpb24gKlRoZSB5aWVsZCBzdGF0ZW1lbnQqKSBpcyBjYWxsZWQgYSAqZ2VuZXJhdG9yIGZ1bmN0aW9uKi5cbiAgICAgIFN1Y2ggYSBmdW5jdGlvbiwgd2hlbiBjYWxsZWQsIGFsd2F5cyByZXR1cm5zIGFuIGl0ZXJhdG9yIG9iamVjdFxuICAgICAgd2hpY2ggY2FuIGJlIHVzZWQgdG8gZXhlY3V0ZSB0aGUgYm9keSBvZiB0aGUgZnVuY3Rpb246ICBjYWxsaW5nXG4gICAgICB0aGUgaXRlcmF0b3JcJ3MgYGBfX25leHRfXygpYGAgbWV0aG9kIHdpbGwgY2F1c2UgdGhlIGZ1bmN0aW9uIHRvXG4gICAgICBleGVjdXRlIHVudGlsIGl0IHByb3ZpZGVzIGEgdmFsdWUgdXNpbmcgdGhlIGBgeWllbGRgYCBzdGF0ZW1lbnQuXG4gICAgICBXaGVuIHRoZSBmdW5jdGlvbiBleGVjdXRlcyBhIGBgcmV0dXJuYGAgc3RhdGVtZW50IG9yIGZhbGxzIG9mZlxuICAgICAgdGhlIGVuZCwgYSBgYFN0b3BJdGVyYXRpb25gYCBleGNlcHRpb24gaXMgcmFpc2VkIGFuZCB0aGVcbiAgICAgIGl0ZXJhdG9yIHdpbGwgaGF2ZSByZWFjaGVkIHRoZSBlbmQgb2YgdGhlIHNldCBvZiB2YWx1ZXMgdG8gYmVcbiAgICAgIHJldHVybmVkLlxuXG4gICBCdWlsdC1pbiBmdW5jdGlvbnNcbiAgICAgIEEgYnVpbHQtaW4gZnVuY3Rpb24gb2JqZWN0IGlzIGEgd3JhcHBlciBhcm91bmQgYSBDIGZ1bmN0aW9uLlxuICAgICAgRXhhbXBsZXMgb2YgYnVpbHQtaW4gZnVuY3Rpb25zIGFyZSBgYGxlbigpYGAgYW5kIGBgbWF0aC5zaW4oKWBgXG4gICAgICAoYGBtYXRoYGAgaXMgYSBzdGFuZGFyZCBidWlsdC1pbiBtb2R1bGUpLiBUaGUgbnVtYmVyIGFuZCB0eXBlIG9mXG4gICAgICB0aGUgYXJndW1lbnRzIGFyZSBkZXRlcm1pbmVkIGJ5IHRoZSBDIGZ1bmN0aW9uLiBTcGVjaWFsIHJlYWQtXG4gICAgICBvbmx5IGF0dHJpYnV0ZXM6IGBgX19kb2NfX2BgIGlzIHRoZSBmdW5jdGlvblwncyBkb2N1bWVudGF0aW9uXG4gICAgICBzdHJpbmcsIG9yIGBgTm9uZWBgIGlmIHVuYXZhaWxhYmxlOyBgYF9fbmFtZV9fYGAgaXMgdGhlXG4gICAgICBmdW5jdGlvblwncyBuYW1lOyBgYF9fc2VsZl9fYGAgaXMgc2V0IHRvIGBgTm9uZWBgIChidXQgc2VlIHRoZVxuICAgICAgbmV4dCBpdGVtKTsgYGBfX21vZHVsZV9fYGAgaXMgdGhlIG5hbWUgb2YgdGhlIG1vZHVsZSB0aGVcbiAgICAgIGZ1bmN0aW9uIHdhcyBkZWZpbmVkIGluIG9yIGBgTm9uZWBgIGlmIHVuYXZhaWxhYmxlLlxuXG4gICBCdWlsdC1pbiBtZXRob2RzXG4gICAgICBUaGlzIGlzIHJlYWxseSBhIGRpZmZlcmVudCBkaXNndWlzZSBvZiBhIGJ1aWx0LWluIGZ1bmN0aW9uLCB0aGlzXG4gICAgICB0aW1lIGNvbnRhaW5pbmcgYW4gb2JqZWN0IHBhc3NlZCB0byB0aGUgQyBmdW5jdGlvbiBhcyBhblxuICAgICAgaW1wbGljaXQgZXh0cmEgYXJndW1lbnQuICBBbiBleGFtcGxlIG9mIGEgYnVpbHQtaW4gbWV0aG9kIGlzXG4gICAgICBgYGFsaXN0LmFwcGVuZCgpYGAsIGFzc3VtaW5nICphbGlzdCogaXMgYSBsaXN0IG9iamVjdC4gSW4gdGhpc1xuICAgICAgY2FzZSwgdGhlIHNwZWNpYWwgcmVhZC1vbmx5IGF0dHJpYnV0ZSBgYF9fc2VsZl9fYGAgaXMgc2V0IHRvIHRoZVxuICAgICAgb2JqZWN0IGRlbm90ZWQgYnkgKmFsaXN0Ki5cblxuICAgQ2xhc3Nlc1xuICAgICAgQ2xhc3NlcyBhcmUgY2FsbGFibGUuICBUaGVzZSBvYmplY3RzIG5vcm1hbGx5IGFjdCBhcyBmYWN0b3JpZXNcbiAgICAgIGZvciBuZXcgaW5zdGFuY2VzIG9mIHRoZW1zZWx2ZXMsIGJ1dCB2YXJpYXRpb25zIGFyZSBwb3NzaWJsZSBmb3JcbiAgICAgIGNsYXNzIHR5cGVzIHRoYXQgb3ZlcnJpZGUgYGBfX25ld19fKClgYC4gIFRoZSBhcmd1bWVudHMgb2YgdGhlXG4gICAgICBjYWxsIGFyZSBwYXNzZWQgdG8gYGBfX25ld19fKClgYCBhbmQsIGluIHRoZSB0eXBpY2FsIGNhc2UsIHRvXG4gICAgICBgYF9faW5pdF9fKClgYCB0byBpbml0aWFsaXplIHRoZSBuZXcgaW5zdGFuY2UuXG5cbiAgIENsYXNzIEluc3RhbmNlc1xuICAgICAgSW5zdGFuY2VzIG9mIGFyYml0cmFyeSBjbGFzc2VzIGNhbiBiZSBtYWRlIGNhbGxhYmxlIGJ5IGRlZmluaW5nXG4gICAgICBhIGBgX19jYWxsX18oKWBgIG1ldGhvZCBpbiB0aGVpciBjbGFzcy5cblxuTW9kdWxlc1xuICAgTW9kdWxlcyBhcmUgaW1wb3J0ZWQgYnkgdGhlIGBgaW1wb3J0YGAgc3RhdGVtZW50IChzZWUgc2VjdGlvbiAqVGhlXG4gICBpbXBvcnQgc3RhdGVtZW50KikuIEEgbW9kdWxlIG9iamVjdCBoYXMgYSBuYW1lc3BhY2UgaW1wbGVtZW50ZWQgYnlcbiAgIGEgZGljdGlvbmFyeSBvYmplY3QgKHRoaXMgaXMgdGhlIGRpY3Rpb25hcnkgcmVmZXJlbmNlZCBieSB0aGVcbiAgIF9fZ2xvYmFsc19fIGF0dHJpYnV0ZSBvZiBmdW5jdGlvbnMgZGVmaW5lZCBpbiB0aGUgbW9kdWxlKS5cbiAgIEF0dHJpYnV0ZSByZWZlcmVuY2VzIGFyZSB0cmFuc2xhdGVkIHRvIGxvb2t1cHMgaW4gdGhpcyBkaWN0aW9uYXJ5LFxuICAgZS5nLiwgYGBtLnhgYCBpcyBlcXVpdmFsZW50IHRvIGBgbS5fX2RpY3RfX1sieCJdYGAuIEEgbW9kdWxlIG9iamVjdFxuICAgZG9lcyBub3QgY29udGFpbiB0aGUgY29kZSBvYmplY3QgdXNlZCB0byBpbml0aWFsaXplIHRoZSBtb2R1bGVcbiAgIChzaW5jZSBpdCBpc25cJ3QgbmVlZGVkIG9uY2UgdGhlIGluaXRpYWxpemF0aW9uIGlzIGRvbmUpLlxuXG4gICBBdHRyaWJ1dGUgYXNzaWdubWVudCB1cGRhdGVzIHRoZSBtb2R1bGVcJ3MgbmFtZXNwYWNlIGRpY3Rpb25hcnksXG4gICBlLmcuLCBgYG0ueCA9IDFgYCBpcyBlcXVpdmFsZW50IHRvIGBgbS5fX2RpY3RfX1sieCJdID0gMWBgLlxuXG4gICBTcGVjaWFsIHJlYWQtb25seSBhdHRyaWJ1dGU6IGBgX19kaWN0X19gYCBpcyB0aGUgbW9kdWxlXCdzIG5hbWVzcGFjZVxuICAgYXMgYSBkaWN0aW9uYXJ5IG9iamVjdC5cblxuICAgKipDUHl0aG9uIGltcGxlbWVudGF0aW9uIGRldGFpbDoqKiBCZWNhdXNlIG9mIHRoZSB3YXkgQ1B5dGhvblxuICAgY2xlYXJzIG1vZHVsZSBkaWN0aW9uYXJpZXMsIHRoZSBtb2R1bGUgZGljdGlvbmFyeSB3aWxsIGJlIGNsZWFyZWRcbiAgIHdoZW4gdGhlIG1vZHVsZSBmYWxscyBvdXQgb2Ygc2NvcGUgZXZlbiBpZiB0aGUgZGljdGlvbmFyeSBzdGlsbCBoYXNcbiAgIGxpdmUgcmVmZXJlbmNlcy4gIFRvIGF2b2lkIHRoaXMsIGNvcHkgdGhlIGRpY3Rpb25hcnkgb3Iga2VlcCB0aGVcbiAgIG1vZHVsZSBhcm91bmQgd2hpbGUgdXNpbmcgaXRzIGRpY3Rpb25hcnkgZGlyZWN0bHkuXG5cbiAgIFByZWRlZmluZWQgKHdyaXRhYmxlKSBhdHRyaWJ1dGVzOiBgYF9fbmFtZV9fYGAgaXMgdGhlIG1vZHVsZVwnc1xuICAgbmFtZTsgYGBfX2RvY19fYGAgaXMgdGhlIG1vZHVsZVwncyBkb2N1bWVudGF0aW9uIHN0cmluZywgb3IgYGBOb25lYGBcbiAgIGlmIHVuYXZhaWxhYmxlOyBgYF9fZmlsZV9fYGAgaXMgdGhlIHBhdGhuYW1lIG9mIHRoZSBmaWxlIGZyb20gd2hpY2hcbiAgIHRoZSBtb2R1bGUgd2FzIGxvYWRlZCwgaWYgaXQgd2FzIGxvYWRlZCBmcm9tIGEgZmlsZS4gVGhlXG4gICBgYF9fZmlsZV9fYGAgYXR0cmlidXRlIGlzIG5vdCBwcmVzZW50IGZvciBDIG1vZHVsZXMgdGhhdCBhcmVcbiAgIHN0YXRpY2FsbHkgbGlua2VkIGludG8gdGhlIGludGVycHJldGVyOyBmb3IgZXh0ZW5zaW9uIG1vZHVsZXNcbiAgIGxvYWRlZCBkeW5hbWljYWxseSBmcm9tIGEgc2hhcmVkIGxpYnJhcnksIGl0IGlzIHRoZSBwYXRobmFtZSBvZiB0aGVcbiAgIHNoYXJlZCBsaWJyYXJ5IGZpbGUuXG5cbkN1c3RvbSBjbGFzc2VzXG4gICBDdXN0b20gY2xhc3MgdHlwZXMgYXJlIHR5cGljYWxseSBjcmVhdGVkIGJ5IGNsYXNzIGRlZmluaXRpb25zIChzZWVcbiAgIHNlY3Rpb24gKkNsYXNzIGRlZmluaXRpb25zKikuICBBIGNsYXNzIGhhcyBhIG5hbWVzcGFjZSBpbXBsZW1lbnRlZFxuICAgYnkgYSBkaWN0aW9uYXJ5IG9iamVjdC4gQ2xhc3MgYXR0cmlidXRlIHJlZmVyZW5jZXMgYXJlIHRyYW5zbGF0ZWRcbiAgIHRvIGxvb2t1cHMgaW4gdGhpcyBkaWN0aW9uYXJ5LCBlLmcuLCBgYEMueGBgIGlzIHRyYW5zbGF0ZWQgdG9cbiAgIGBgQy5fX2RpY3RfX1sieCJdYGAgKGFsdGhvdWdoIHRoZXJlIGFyZSBhIG51bWJlciBvZiBob29rcyB3aGljaFxuICAgYWxsb3cgZm9yIG90aGVyIG1lYW5zIG9mIGxvY2F0aW5nIGF0dHJpYnV0ZXMpLiBXaGVuIHRoZSBhdHRyaWJ1dGVcbiAgIG5hbWUgaXMgbm90IGZvdW5kIHRoZXJlLCB0aGUgYXR0cmlidXRlIHNlYXJjaCBjb250aW51ZXMgaW4gdGhlIGJhc2VcbiAgIGNsYXNzZXMuIFRoaXMgc2VhcmNoIG9mIHRoZSBiYXNlIGNsYXNzZXMgdXNlcyB0aGUgQzMgbWV0aG9kXG4gICByZXNvbHV0aW9uIG9yZGVyIHdoaWNoIGJlaGF2ZXMgY29ycmVjdGx5IGV2ZW4gaW4gdGhlIHByZXNlbmNlIG9mXG4gICBcJ2RpYW1vbmRcJyBpbmhlcml0YW5jZSBzdHJ1Y3R1cmVzIHdoZXJlIHRoZXJlIGFyZSBtdWx0aXBsZVxuICAgaW5oZXJpdGFuY2UgcGF0aHMgbGVhZGluZyBiYWNrIHRvIGEgY29tbW9uIGFuY2VzdG9yLiBBZGRpdGlvbmFsXG4gICBkZXRhaWxzIG9uIHRoZSBDMyBNUk8gdXNlZCBieSBQeXRob24gY2FuIGJlIGZvdW5kIGluIHRoZVxuICAgZG9jdW1lbnRhdGlvbiBhY2NvbXBhbnlpbmcgdGhlIDIuMyByZWxlYXNlIGF0XG4gICBodHRwOi8vd3d3LnB5dGhvbi5vcmcvZG93bmxvYWQvcmVsZWFzZXMvMi4zL21yby8uXG5cbiAgIFdoZW4gYSBjbGFzcyBhdHRyaWJ1dGUgcmVmZXJlbmNlIChmb3IgY2xhc3MgYGBDYGAsIHNheSkgd291bGQgeWllbGRcbiAgIGEgY2xhc3MgbWV0aG9kIG9iamVjdCwgaXQgaXMgdHJhbnNmb3JtZWQgaW50byBhbiBpbnN0YW5jZSBtZXRob2RcbiAgIG9iamVjdCB3aG9zZSBgYF9fc2VsZl9fYGAgYXR0cmlidXRlcyBpcyBgYENgYC4gIFdoZW4gaXQgd291bGQgeWllbGRcbiAgIGEgc3RhdGljIG1ldGhvZCBvYmplY3QsIGl0IGlzIHRyYW5zZm9ybWVkIGludG8gdGhlIG9iamVjdCB3cmFwcGVkXG4gICBieSB0aGUgc3RhdGljIG1ldGhvZCBvYmplY3QuIFNlZSBzZWN0aW9uICpJbXBsZW1lbnRpbmcgRGVzY3JpcHRvcnMqXG4gICBmb3IgYW5vdGhlciB3YXkgaW4gd2hpY2ggYXR0cmlidXRlcyByZXRyaWV2ZWQgZnJvbSBhIGNsYXNzIG1heVxuICAgZGlmZmVyIGZyb20gdGhvc2UgYWN0dWFsbHkgY29udGFpbmVkIGluIGl0cyBgYF9fZGljdF9fYGAuXG5cbiAgIENsYXNzIGF0dHJpYnV0ZSBhc3NpZ25tZW50cyB1cGRhdGUgdGhlIGNsYXNzXCdzIGRpY3Rpb25hcnksIG5ldmVyXG4gICB0aGUgZGljdGlvbmFyeSBvZiBhIGJhc2UgY2xhc3MuXG5cbiAgIEEgY2xhc3Mgb2JqZWN0IGNhbiBiZSBjYWxsZWQgKHNlZSBhYm92ZSkgdG8geWllbGQgYSBjbGFzcyBpbnN0YW5jZVxuICAgKHNlZSBiZWxvdykuXG5cbiAgIFNwZWNpYWwgYXR0cmlidXRlczogYGBfX25hbWVfX2BgIGlzIHRoZSBjbGFzcyBuYW1lOyBgYF9fbW9kdWxlX19gYFxuICAgaXMgdGhlIG1vZHVsZSBuYW1lIGluIHdoaWNoIHRoZSBjbGFzcyB3YXMgZGVmaW5lZDsgYGBfX2RpY3RfX2BgIGlzXG4gICB0aGUgZGljdGlvbmFyeSBjb250YWluaW5nIHRoZSBjbGFzc1wncyBuYW1lc3BhY2U7IGBgX19iYXNlc19fYGAgaXMgYVxuICAgdHVwbGUgKHBvc3NpYmx5IGVtcHR5IG9yIGEgc2luZ2xldG9uKSBjb250YWluaW5nIHRoZSBiYXNlIGNsYXNzZXMsXG4gICBpbiB0aGUgb3JkZXIgb2YgdGhlaXIgb2NjdXJyZW5jZSBpbiB0aGUgYmFzZSBjbGFzcyBsaXN0O1xuICAgYGBfX2RvY19fYGAgaXMgdGhlIGNsYXNzXCdzIGRvY3VtZW50YXRpb24gc3RyaW5nLCBvciBOb25lIGlmXG4gICB1bmRlZmluZWQuXG5cbkNsYXNzIGluc3RhbmNlc1xuICAgQSBjbGFzcyBpbnN0YW5jZSBpcyBjcmVhdGVkIGJ5IGNhbGxpbmcgYSBjbGFzcyBvYmplY3QgKHNlZSBhYm92ZSkuXG4gICBBIGNsYXNzIGluc3RhbmNlIGhhcyBhIG5hbWVzcGFjZSBpbXBsZW1lbnRlZCBhcyBhIGRpY3Rpb25hcnkgd2hpY2hcbiAgIGlzIHRoZSBmaXJzdCBwbGFjZSBpbiB3aGljaCBhdHRyaWJ1dGUgcmVmZXJlbmNlcyBhcmUgc2VhcmNoZWQuXG4gICBXaGVuIGFuIGF0dHJpYnV0ZSBpcyBub3QgZm91bmQgdGhlcmUsIGFuZCB0aGUgaW5zdGFuY2VcJ3MgY2xhc3MgaGFzXG4gICBhbiBhdHRyaWJ1dGUgYnkgdGhhdCBuYW1lLCB0aGUgc2VhcmNoIGNvbnRpbnVlcyB3aXRoIHRoZSBjbGFzc1xuICAgYXR0cmlidXRlcy4gIElmIGEgY2xhc3MgYXR0cmlidXRlIGlzIGZvdW5kIHRoYXQgaXMgYSB1c2VyLWRlZmluZWRcbiAgIGZ1bmN0aW9uIG9iamVjdCwgaXQgaXMgdHJhbnNmb3JtZWQgaW50byBhbiBpbnN0YW5jZSBtZXRob2Qgb2JqZWN0XG4gICB3aG9zZSBgYF9fc2VsZl9fYGAgYXR0cmlidXRlIGlzIHRoZSBpbnN0YW5jZS4gIFN0YXRpYyBtZXRob2QgYW5kXG4gICBjbGFzcyBtZXRob2Qgb2JqZWN0cyBhcmUgYWxzbyB0cmFuc2Zvcm1lZDsgc2VlIGFib3ZlIHVuZGVyXG4gICAiQ2xhc3NlcyIuICBTZWUgc2VjdGlvbiAqSW1wbGVtZW50aW5nIERlc2NyaXB0b3JzKiBmb3IgYW5vdGhlciB3YXlcbiAgIGluIHdoaWNoIGF0dHJpYnV0ZXMgb2YgYSBjbGFzcyByZXRyaWV2ZWQgdmlhIGl0cyBpbnN0YW5jZXMgbWF5XG4gICBkaWZmZXIgZnJvbSB0aGUgb2JqZWN0cyBhY3R1YWxseSBzdG9yZWQgaW4gdGhlIGNsYXNzXCdzXG4gICBgYF9fZGljdF9fYGAuICBJZiBubyBjbGFzcyBhdHRyaWJ1dGUgaXMgZm91bmQsIGFuZCB0aGUgb2JqZWN0XCdzXG4gICBjbGFzcyBoYXMgYSBgYF9fZ2V0YXR0cl9fKClgYCBtZXRob2QsIHRoYXQgaXMgY2FsbGVkIHRvIHNhdGlzZnkgdGhlXG4gICBsb29rdXAuXG5cbiAgIEF0dHJpYnV0ZSBhc3NpZ25tZW50cyBhbmQgZGVsZXRpb25zIHVwZGF0ZSB0aGUgaW5zdGFuY2VcJ3NcbiAgIGRpY3Rpb25hcnksIG5ldmVyIGEgY2xhc3NcJ3MgZGljdGlvbmFyeS4gIElmIHRoZSBjbGFzcyBoYXMgYVxuICAgYGBfX3NldGF0dHJfXygpYGAgb3IgYGBfX2RlbGF0dHJfXygpYGAgbWV0aG9kLCB0aGlzIGlzIGNhbGxlZFxuICAgaW5zdGVhZCBvZiB1cGRhdGluZyB0aGUgaW5zdGFuY2UgZGljdGlvbmFyeSBkaXJlY3RseS5cblxuICAgQ2xhc3MgaW5zdGFuY2VzIGNhbiBwcmV0ZW5kIHRvIGJlIG51bWJlcnMsIHNlcXVlbmNlcywgb3IgbWFwcGluZ3NcbiAgIGlmIHRoZXkgaGF2ZSBtZXRob2RzIHdpdGggY2VydGFpbiBzcGVjaWFsIG5hbWVzLiAgU2VlIHNlY3Rpb25cbiAgICpTcGVjaWFsIG1ldGhvZCBuYW1lcyouXG5cbiAgIFNwZWNpYWwgYXR0cmlidXRlczogYGBfX2RpY3RfX2BgIGlzIHRoZSBhdHRyaWJ1dGUgZGljdGlvbmFyeTtcbiAgIGBgX19jbGFzc19fYGAgaXMgdGhlIGluc3RhbmNlXCdzIGNsYXNzLlxuXG5JL08gb2JqZWN0cyAoYWxzbyBrbm93biBhcyBmaWxlIG9iamVjdHMpXG4gICBBICpmaWxlIG9iamVjdCogcmVwcmVzZW50cyBhbiBvcGVuIGZpbGUuICBWYXJpb3VzIHNob3J0Y3V0cyBhcmVcbiAgIGF2YWlsYWJsZSB0byBjcmVhdGUgZmlsZSBvYmplY3RzOiB0aGUgYGBvcGVuKClgYCBidWlsdC1pbiBmdW5jdGlvbixcbiAgIGFuZCBhbHNvIGBgb3MucG9wZW4oKWBgLCBgYG9zLmZkb3BlbigpYGAsIGFuZCB0aGUgYGBtYWtlZmlsZSgpYGBcbiAgIG1ldGhvZCBvZiBzb2NrZXQgb2JqZWN0cyAoYW5kIHBlcmhhcHMgYnkgb3RoZXIgZnVuY3Rpb25zIG9yIG1ldGhvZHNcbiAgIHByb3ZpZGVkIGJ5IGV4dGVuc2lvbiBtb2R1bGVzKS5cblxuICAgVGhlIG9iamVjdHMgYGBzeXMuc3RkaW5gYCwgYGBzeXMuc3Rkb3V0YGAgYW5kIGBgc3lzLnN0ZGVycmBgIGFyZVxuICAgaW5pdGlhbGl6ZWQgdG8gZmlsZSBvYmplY3RzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGludGVycHJldGVyXCdzXG4gICBzdGFuZGFyZCBpbnB1dCwgb3V0cHV0IGFuZCBlcnJvciBzdHJlYW1zOyB0aGV5IGFyZSBhbGwgb3BlbiBpbiB0ZXh0XG4gICBtb2RlIGFuZCB0aGVyZWZvcmUgZm9sbG93IHRoZSBpbnRlcmZhY2UgZGVmaW5lZCBieSB0aGVcbiAgIGBgaW8uVGV4dElPQmFzZWBgIGFic3RyYWN0IGNsYXNzLlxuXG5JbnRlcm5hbCB0eXBlc1xuICAgQSBmZXcgdHlwZXMgdXNlZCBpbnRlcm5hbGx5IGJ5IHRoZSBpbnRlcnByZXRlciBhcmUgZXhwb3NlZCB0byB0aGVcbiAgIHVzZXIuIFRoZWlyIGRlZmluaXRpb25zIG1heSBjaGFuZ2Ugd2l0aCBmdXR1cmUgdmVyc2lvbnMgb2YgdGhlXG4gICBpbnRlcnByZXRlciwgYnV0IHRoZXkgYXJlIG1lbnRpb25lZCBoZXJlIGZvciBjb21wbGV0ZW5lc3MuXG5cbiAgIENvZGUgb2JqZWN0c1xuICAgICAgQ29kZSBvYmplY3RzIHJlcHJlc2VudCAqYnl0ZS1jb21waWxlZCogZXhlY3V0YWJsZSBQeXRob24gY29kZSxcbiAgICAgIG9yICpieXRlY29kZSouIFRoZSBkaWZmZXJlbmNlIGJldHdlZW4gYSBjb2RlIG9iamVjdCBhbmQgYVxuICAgICAgZnVuY3Rpb24gb2JqZWN0IGlzIHRoYXQgdGhlIGZ1bmN0aW9uIG9iamVjdCBjb250YWlucyBhbiBleHBsaWNpdFxuICAgICAgcmVmZXJlbmNlIHRvIHRoZSBmdW5jdGlvblwncyBnbG9iYWxzICh0aGUgbW9kdWxlIGluIHdoaWNoIGl0IHdhc1xuICAgICAgZGVmaW5lZCksIHdoaWxlIGEgY29kZSBvYmplY3QgY29udGFpbnMgbm8gY29udGV4dDsgYWxzbyB0aGVcbiAgICAgIGRlZmF1bHQgYXJndW1lbnQgdmFsdWVzIGFyZSBzdG9yZWQgaW4gdGhlIGZ1bmN0aW9uIG9iamVjdCwgbm90XG4gICAgICBpbiB0aGUgY29kZSBvYmplY3QgKGJlY2F1c2UgdGhleSByZXByZXNlbnQgdmFsdWVzIGNhbGN1bGF0ZWQgYXRcbiAgICAgIHJ1bi10aW1lKS4gIFVubGlrZSBmdW5jdGlvbiBvYmplY3RzLCBjb2RlIG9iamVjdHMgYXJlIGltbXV0YWJsZVxuICAgICAgYW5kIGNvbnRhaW4gbm8gcmVmZXJlbmNlcyAoZGlyZWN0bHkgb3IgaW5kaXJlY3RseSkgdG8gbXV0YWJsZVxuICAgICAgb2JqZWN0cy5cblxuICAgICAgU3BlY2lhbCByZWFkLW9ubHkgYXR0cmlidXRlczogYGBjb19uYW1lYGAgZ2l2ZXMgdGhlIGZ1bmN0aW9uXG4gICAgICBuYW1lOyBgYGNvX2FyZ2NvdW50YGAgaXMgdGhlIG51bWJlciBvZiBwb3NpdGlvbmFsIGFyZ3VtZW50c1xuICAgICAgKGluY2x1ZGluZyBhcmd1bWVudHMgd2l0aCBkZWZhdWx0IHZhbHVlcyk7IGBgY29fbmxvY2Fsc2BgIGlzIHRoZVxuICAgICAgbnVtYmVyIG9mIGxvY2FsIHZhcmlhYmxlcyB1c2VkIGJ5IHRoZSBmdW5jdGlvbiAoaW5jbHVkaW5nXG4gICAgICBhcmd1bWVudHMpOyBgYGNvX3Zhcm5hbWVzYGAgaXMgYSB0dXBsZSBjb250YWluaW5nIHRoZSBuYW1lcyBvZlxuICAgICAgdGhlIGxvY2FsIHZhcmlhYmxlcyAoc3RhcnRpbmcgd2l0aCB0aGUgYXJndW1lbnQgbmFtZXMpO1xuICAgICAgYGBjb19jZWxsdmFyc2BgIGlzIGEgdHVwbGUgY29udGFpbmluZyB0aGUgbmFtZXMgb2YgbG9jYWxcbiAgICAgIHZhcmlhYmxlcyB0aGF0IGFyZSByZWZlcmVuY2VkIGJ5IG5lc3RlZCBmdW5jdGlvbnM7XG4gICAgICBgYGNvX2ZyZWV2YXJzYGAgaXMgYSB0dXBsZSBjb250YWluaW5nIHRoZSBuYW1lcyBvZiBmcmVlXG4gICAgICB2YXJpYWJsZXM7IGBgY29fY29kZWBgIGlzIGEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgc2VxdWVuY2Ugb2ZcbiAgICAgIGJ5dGVjb2RlIGluc3RydWN0aW9uczsgYGBjb19jb25zdHNgYCBpcyBhIHR1cGxlIGNvbnRhaW5pbmcgdGhlXG4gICAgICBsaXRlcmFscyB1c2VkIGJ5IHRoZSBieXRlY29kZTsgYGBjb19uYW1lc2BgIGlzIGEgdHVwbGVcbiAgICAgIGNvbnRhaW5pbmcgdGhlIG5hbWVzIHVzZWQgYnkgdGhlIGJ5dGVjb2RlOyBgYGNvX2ZpbGVuYW1lYGAgaXNcbiAgICAgIHRoZSBmaWxlbmFtZSBmcm9tIHdoaWNoIHRoZSBjb2RlIHdhcyBjb21waWxlZDtcbiAgICAgIGBgY29fZmlyc3RsaW5lbm9gYCBpcyB0aGUgZmlyc3QgbGluZSBudW1iZXIgb2YgdGhlIGZ1bmN0aW9uO1xuICAgICAgYGBjb19sbm90YWJgYCBpcyBhIHN0cmluZyBlbmNvZGluZyB0aGUgbWFwcGluZyBmcm9tIGJ5dGVjb2RlXG4gICAgICBvZmZzZXRzIHRvIGxpbmUgbnVtYmVycyAoZm9yIGRldGFpbHMgc2VlIHRoZSBzb3VyY2UgY29kZSBvZiB0aGVcbiAgICAgIGludGVycHJldGVyKTsgYGBjb19zdGFja3NpemVgYCBpcyB0aGUgcmVxdWlyZWQgc3RhY2sgc2l6ZVxuICAgICAgKGluY2x1ZGluZyBsb2NhbCB2YXJpYWJsZXMpOyBgYGNvX2ZsYWdzYGAgaXMgYW4gaW50ZWdlciBlbmNvZGluZ1xuICAgICAgYSBudW1iZXIgb2YgZmxhZ3MgZm9yIHRoZSBpbnRlcnByZXRlci5cblxuICAgICAgVGhlIGZvbGxvd2luZyBmbGFnIGJpdHMgYXJlIGRlZmluZWQgZm9yIGBgY29fZmxhZ3NgYDogYml0XG4gICAgICBgYDB4MDRgYCBpcyBzZXQgaWYgdGhlIGZ1bmN0aW9uIHVzZXMgdGhlIGBgKmFyZ3VtZW50c2BgIHN5bnRheFxuICAgICAgdG8gYWNjZXB0IGFuIGFyYml0cmFyeSBudW1iZXIgb2YgcG9zaXRpb25hbCBhcmd1bWVudHM7IGJpdFxuICAgICAgYGAweDA4YGAgaXMgc2V0IGlmIHRoZSBmdW5jdGlvbiB1c2VzIHRoZSBgYCoqa2V5d29yZHNgYCBzeW50YXhcbiAgICAgIHRvIGFjY2VwdCBhcmJpdHJhcnkga2V5d29yZCBhcmd1bWVudHM7IGJpdCBgYDB4MjBgYCBpcyBzZXQgaWZcbiAgICAgIHRoZSBmdW5jdGlvbiBpcyBhIGdlbmVyYXRvci5cblxuICAgICAgRnV0dXJlIGZlYXR1cmUgZGVjbGFyYXRpb25zIChgYGZyb20gX19mdXR1cmVfXyBpbXBvcnRcbiAgICAgIGRpdmlzaW9uYGApIGFsc28gdXNlIGJpdHMgaW4gYGBjb19mbGFnc2BgIHRvIGluZGljYXRlIHdoZXRoZXIgYVxuICAgICAgY29kZSBvYmplY3Qgd2FzIGNvbXBpbGVkIHdpdGggYSBwYXJ0aWN1bGFyIGZlYXR1cmUgZW5hYmxlZDogYml0XG4gICAgICBgYDB4MjAwMGBgIGlzIHNldCBpZiB0aGUgZnVuY3Rpb24gd2FzIGNvbXBpbGVkIHdpdGggZnV0dXJlXG4gICAgICBkaXZpc2lvbiBlbmFibGVkOyBiaXRzIGBgMHgxMGBgIGFuZCBgYDB4MTAwMGBgIHdlcmUgdXNlZCBpblxuICAgICAgZWFybGllciB2ZXJzaW9ucyBvZiBQeXRob24uXG5cbiAgICAgIE90aGVyIGJpdHMgaW4gYGBjb19mbGFnc2BgIGFyZSByZXNlcnZlZCBmb3IgaW50ZXJuYWwgdXNlLlxuXG4gICAgICBJZiBhIGNvZGUgb2JqZWN0IHJlcHJlc2VudHMgYSBmdW5jdGlvbiwgdGhlIGZpcnN0IGl0ZW0gaW5cbiAgICAgIGBgY29fY29uc3RzYGAgaXMgdGhlIGRvY3VtZW50YXRpb24gc3RyaW5nIG9mIHRoZSBmdW5jdGlvbiwgb3JcbiAgICAgIGBgTm9uZWBgIGlmIHVuZGVmaW5lZC5cblxuICAgRnJhbWUgb2JqZWN0c1xuICAgICAgRnJhbWUgb2JqZWN0cyByZXByZXNlbnQgZXhlY3V0aW9uIGZyYW1lcy4gIFRoZXkgbWF5IG9jY3VyIGluXG4gICAgICB0cmFjZWJhY2sgb2JqZWN0cyAoc2VlIGJlbG93KS5cblxuICAgICAgU3BlY2lhbCByZWFkLW9ubHkgYXR0cmlidXRlczogYGBmX2JhY2tgYCBpcyB0byB0aGUgcHJldmlvdXNcbiAgICAgIHN0YWNrIGZyYW1lICh0b3dhcmRzIHRoZSBjYWxsZXIpLCBvciBgYE5vbmVgYCBpZiB0aGlzIGlzIHRoZVxuICAgICAgYm90dG9tIHN0YWNrIGZyYW1lOyBgYGZfY29kZWBgIGlzIHRoZSBjb2RlIG9iamVjdCBiZWluZyBleGVjdXRlZFxuICAgICAgaW4gdGhpcyBmcmFtZTsgYGBmX2xvY2Fsc2BgIGlzIHRoZSBkaWN0aW9uYXJ5IHVzZWQgdG8gbG9vayB1cFxuICAgICAgbG9jYWwgdmFyaWFibGVzOyBgYGZfZ2xvYmFsc2BgIGlzIHVzZWQgZm9yIGdsb2JhbCB2YXJpYWJsZXM7XG4gICAgICBgYGZfYnVpbHRpbnNgYCBpcyB1c2VkIGZvciBidWlsdC1pbiAoaW50cmluc2ljKSBuYW1lcztcbiAgICAgIGBgZl9sYXN0aWBgIGdpdmVzIHRoZSBwcmVjaXNlIGluc3RydWN0aW9uICh0aGlzIGlzIGFuIGluZGV4IGludG9cbiAgICAgIHRoZSBieXRlY29kZSBzdHJpbmcgb2YgdGhlIGNvZGUgb2JqZWN0KS5cblxuICAgICAgU3BlY2lhbCB3cml0YWJsZSBhdHRyaWJ1dGVzOiBgYGZfdHJhY2VgYCwgaWYgbm90IGBgTm9uZWBgLCBpcyBhXG4gICAgICBmdW5jdGlvbiBjYWxsZWQgYXQgdGhlIHN0YXJ0IG9mIGVhY2ggc291cmNlIGNvZGUgbGluZSAodGhpcyBpc1xuICAgICAgdXNlZCBieSB0aGUgZGVidWdnZXIpOyBgYGZfbGluZW5vYGAgaXMgdGhlIGN1cnJlbnQgbGluZSBudW1iZXJcbiAgICAgIG9mIHRoZSBmcmFtZSAtLS0gd3JpdGluZyB0byB0aGlzIGZyb20gd2l0aGluIGEgdHJhY2UgZnVuY3Rpb25cbiAgICAgIGp1bXBzIHRvIHRoZSBnaXZlbiBsaW5lIChvbmx5IGZvciB0aGUgYm90dG9tLW1vc3QgZnJhbWUpLiAgQVxuICAgICAgZGVidWdnZXIgY2FuIGltcGxlbWVudCBhIEp1bXAgY29tbWFuZCAoYWthIFNldCBOZXh0IFN0YXRlbWVudClcbiAgICAgIGJ5IHdyaXRpbmcgdG8gZl9saW5lbm8uXG5cbiAgIFRyYWNlYmFjayBvYmplY3RzXG4gICAgICBUcmFjZWJhY2sgb2JqZWN0cyByZXByZXNlbnQgYSBzdGFjayB0cmFjZSBvZiBhbiBleGNlcHRpb24uICBBXG4gICAgICB0cmFjZWJhY2sgb2JqZWN0IGlzIGNyZWF0ZWQgd2hlbiBhbiBleGNlcHRpb24gb2NjdXJzLiAgV2hlbiB0aGVcbiAgICAgIHNlYXJjaCBmb3IgYW4gZXhjZXB0aW9uIGhhbmRsZXIgdW53aW5kcyB0aGUgZXhlY3V0aW9uIHN0YWNrLCBhdFxuICAgICAgZWFjaCB1bndvdW5kIGxldmVsIGEgdHJhY2ViYWNrIG9iamVjdCBpcyBpbnNlcnRlZCBpbiBmcm9udCBvZlxuICAgICAgdGhlIGN1cnJlbnQgdHJhY2ViYWNrLiAgV2hlbiBhbiBleGNlcHRpb24gaGFuZGxlciBpcyBlbnRlcmVkLFxuICAgICAgdGhlIHN0YWNrIHRyYWNlIGlzIG1hZGUgYXZhaWxhYmxlIHRvIHRoZSBwcm9ncmFtLiAoU2VlIHNlY3Rpb25cbiAgICAgICpUaGUgdHJ5IHN0YXRlbWVudCouKSBJdCBpcyBhY2Nlc3NpYmxlIGFzIHRoZSB0aGlyZCBpdGVtIG9mIHRoZVxuICAgICAgdHVwbGUgcmV0dXJuZWQgYnkgYGBzeXMuZXhjX2luZm8oKWBgLiBXaGVuIHRoZSBwcm9ncmFtIGNvbnRhaW5zXG4gICAgICBubyBzdWl0YWJsZSBoYW5kbGVyLCB0aGUgc3RhY2sgdHJhY2UgaXMgd3JpdHRlbiAobmljZWx5XG4gICAgICBmb3JtYXR0ZWQpIHRvIHRoZSBzdGFuZGFyZCBlcnJvciBzdHJlYW07IGlmIHRoZSBpbnRlcnByZXRlciBpc1xuICAgICAgaW50ZXJhY3RpdmUsIGl0IGlzIGFsc28gbWFkZSBhdmFpbGFibGUgdG8gdGhlIHVzZXIgYXNcbiAgICAgIGBgc3lzLmxhc3RfdHJhY2ViYWNrYGAuXG5cbiAgICAgIFNwZWNpYWwgcmVhZC1vbmx5IGF0dHJpYnV0ZXM6IGBgdGJfbmV4dGBgIGlzIHRoZSBuZXh0IGxldmVsIGluXG4gICAgICB0aGUgc3RhY2sgdHJhY2UgKHRvd2FyZHMgdGhlIGZyYW1lIHdoZXJlIHRoZSBleGNlcHRpb25cbiAgICAgIG9jY3VycmVkKSwgb3IgYGBOb25lYGAgaWYgdGhlcmUgaXMgbm8gbmV4dCBsZXZlbDsgYGB0Yl9mcmFtZWBgXG4gICAgICBwb2ludHMgdG8gdGhlIGV4ZWN1dGlvbiBmcmFtZSBvZiB0aGUgY3VycmVudCBsZXZlbDtcbiAgICAgIGBgdGJfbGluZW5vYGAgZ2l2ZXMgdGhlIGxpbmUgbnVtYmVyIHdoZXJlIHRoZSBleGNlcHRpb25cbiAgICAgIG9jY3VycmVkOyBgYHRiX2xhc3RpYGAgaW5kaWNhdGVzIHRoZSBwcmVjaXNlIGluc3RydWN0aW9uLiAgVGhlXG4gICAgICBsaW5lIG51bWJlciBhbmQgbGFzdCBpbnN0cnVjdGlvbiBpbiB0aGUgdHJhY2ViYWNrIG1heSBkaWZmZXJcbiAgICAgIGZyb20gdGhlIGxpbmUgbnVtYmVyIG9mIGl0cyBmcmFtZSBvYmplY3QgaWYgdGhlIGV4Y2VwdGlvblxuICAgICAgb2NjdXJyZWQgaW4gYSBgYHRyeWBgIHN0YXRlbWVudCB3aXRoIG5vIG1hdGNoaW5nIGV4Y2VwdCBjbGF1c2VcbiAgICAgIG9yIHdpdGggYSBmaW5hbGx5IGNsYXVzZS5cblxuICAgU2xpY2Ugb2JqZWN0c1xuICAgICAgU2xpY2Ugb2JqZWN0cyBhcmUgdXNlZCB0byByZXByZXNlbnQgc2xpY2VzIGZvciBgYF9fZ2V0aXRlbV9fKClgYFxuICAgICAgbWV0aG9kcy4gIFRoZXkgYXJlIGFsc28gY3JlYXRlZCBieSB0aGUgYnVpbHQtaW4gYGBzbGljZSgpYGBcbiAgICAgIGZ1bmN0aW9uLlxuXG4gICAgICBTcGVjaWFsIHJlYWQtb25seSBhdHRyaWJ1dGVzOiBgYHN0YXJ0YGAgaXMgdGhlIGxvd2VyIGJvdW5kO1xuICAgICAgYGBzdG9wYGAgaXMgdGhlIHVwcGVyIGJvdW5kOyBgYHN0ZXBgYCBpcyB0aGUgc3RlcCB2YWx1ZTsgZWFjaCBpc1xuICAgICAgYGBOb25lYGAgaWYgb21pdHRlZC4gVGhlc2UgYXR0cmlidXRlcyBjYW4gaGF2ZSBhbnkgdHlwZS5cblxuICAgICAgU2xpY2Ugb2JqZWN0cyBzdXBwb3J0IG9uZSBtZXRob2Q6XG5cbiAgICAgIHNsaWNlLmluZGljZXMoc2VsZiwgbGVuZ3RoKVxuXG4gICAgICAgICBUaGlzIG1ldGhvZCB0YWtlcyBhIHNpbmdsZSBpbnRlZ2VyIGFyZ3VtZW50ICpsZW5ndGgqIGFuZFxuICAgICAgICAgY29tcHV0ZXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNsaWNlIHRoYXQgdGhlIHNsaWNlIG9iamVjdFxuICAgICAgICAgd291bGQgZGVzY3JpYmUgaWYgYXBwbGllZCB0byBhIHNlcXVlbmNlIG9mICpsZW5ndGgqIGl0ZW1zLlxuICAgICAgICAgSXQgcmV0dXJucyBhIHR1cGxlIG9mIHRocmVlIGludGVnZXJzOyByZXNwZWN0aXZlbHkgdGhlc2UgYXJlXG4gICAgICAgICB0aGUgKnN0YXJ0KiBhbmQgKnN0b3AqIGluZGljZXMgYW5kIHRoZSAqc3RlcCogb3Igc3RyaWRlXG4gICAgICAgICBsZW5ndGggb2YgdGhlIHNsaWNlLiBNaXNzaW5nIG9yIG91dC1vZi1ib3VuZHMgaW5kaWNlcyBhcmVcbiAgICAgICAgIGhhbmRsZWQgaW4gYSBtYW5uZXIgY29uc2lzdGVudCB3aXRoIHJlZ3VsYXIgc2xpY2VzLlxuXG4gICBTdGF0aWMgbWV0aG9kIG9iamVjdHNcbiAgICAgIFN0YXRpYyBtZXRob2Qgb2JqZWN0cyBwcm92aWRlIGEgd2F5IG9mIGRlZmVhdGluZyB0aGVcbiAgICAgIHRyYW5zZm9ybWF0aW9uIG9mIGZ1bmN0aW9uIG9iamVjdHMgdG8gbWV0aG9kIG9iamVjdHMgZGVzY3JpYmVkXG4gICAgICBhYm92ZS4gQSBzdGF0aWMgbWV0aG9kIG9iamVjdCBpcyBhIHdyYXBwZXIgYXJvdW5kIGFueSBvdGhlclxuICAgICAgb2JqZWN0LCB1c3VhbGx5IGEgdXNlci1kZWZpbmVkIG1ldGhvZCBvYmplY3QuIFdoZW4gYSBzdGF0aWNcbiAgICAgIG1ldGhvZCBvYmplY3QgaXMgcmV0cmlldmVkIGZyb20gYSBjbGFzcyBvciBhIGNsYXNzIGluc3RhbmNlLCB0aGVcbiAgICAgIG9iamVjdCBhY3R1YWxseSByZXR1cm5lZCBpcyB0aGUgd3JhcHBlZCBvYmplY3QsIHdoaWNoIGlzIG5vdFxuICAgICAgc3ViamVjdCB0byBhbnkgZnVydGhlciB0cmFuc2Zvcm1hdGlvbi4gU3RhdGljIG1ldGhvZCBvYmplY3RzIGFyZVxuICAgICAgbm90IHRoZW1zZWx2ZXMgY2FsbGFibGUsIGFsdGhvdWdoIHRoZSBvYmplY3RzIHRoZXkgd3JhcCB1c3VhbGx5XG4gICAgICBhcmUuIFN0YXRpYyBtZXRob2Qgb2JqZWN0cyBhcmUgY3JlYXRlZCBieSB0aGUgYnVpbHQtaW5cbiAgICAgIGBgc3RhdGljbWV0aG9kKClgYCBjb25zdHJ1Y3Rvci5cblxuICAgQ2xhc3MgbWV0aG9kIG9iamVjdHNcbiAgICAgIEEgY2xhc3MgbWV0aG9kIG9iamVjdCwgbGlrZSBhIHN0YXRpYyBtZXRob2Qgb2JqZWN0LCBpcyBhIHdyYXBwZXJcbiAgICAgIGFyb3VuZCBhbm90aGVyIG9iamVjdCB0aGF0IGFsdGVycyB0aGUgd2F5IGluIHdoaWNoIHRoYXQgb2JqZWN0XG4gICAgICBpcyByZXRyaWV2ZWQgZnJvbSBjbGFzc2VzIGFuZCBjbGFzcyBpbnN0YW5jZXMuIFRoZSBiZWhhdmlvdXIgb2ZcbiAgICAgIGNsYXNzIG1ldGhvZCBvYmplY3RzIHVwb24gc3VjaCByZXRyaWV2YWwgaXMgZGVzY3JpYmVkIGFib3ZlLFxuICAgICAgdW5kZXIgIlVzZXItZGVmaW5lZCBtZXRob2RzIi4gQ2xhc3MgbWV0aG9kIG9iamVjdHMgYXJlIGNyZWF0ZWRcbiAgICAgIGJ5IHRoZSBidWlsdC1pbiBgYGNsYXNzbWV0aG9kKClgYCBjb25zdHJ1Y3Rvci5cbicsCisgJ3R5cGVzJzogJ1xuVGhlIHN0YW5kYXJkIHR5cGUgaGllcmFyY2h5XG4qKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQmVsb3cgaXMgYSBsaXN0IG9mIHRoZSB0eXBlcyB0aGF0IGFyZSBidWlsdCBpbnRvIFB5dGhvbi4gIEV4dGVuc2lvblxubW9kdWxlcyAod3JpdHRlbiBpbiBDLCBKYXZhLCBvciBvdGhlciBsYW5ndWFnZXMsIGRlcGVuZGluZyBvbiB0aGVcbmltcGxlbWVudGF0aW9uKSBjYW4gZGVmaW5lIGFkZGl0aW9uYWwgdHlwZXMuICBGdXR1cmUgdmVyc2lvbnMgb2ZcblB5dGhvbiBtYXkgYWRkIHR5cGVzIHRvIHRoZSB0eXBlIGhpZXJhcmNoeSAoZS5nLiwgcmF0aW9uYWwgbnVtYmVycyxcbmVmZmljaWVudGx5IHN0b3JlZCBhcnJheXMgb2YgaW50ZWdlcnMsIGV0Yy4pLCBhbHRob3VnaCBzdWNoIGFkZGl0aW9uc1xud2lsbCBvZnRlbiBiZSBwcm92aWRlZCB2aWEgdGhlIHN0YW5kYXJkIGxpYnJhcnkgaW5zdGVhZC5cblxuU29tZSBvZiB0aGUgdHlwZSBkZXNjcmlwdGlvbnMgYmVsb3cgY29udGFpbiBhIHBhcmFncmFwaCBsaXN0aW5nXG5cJ3NwZWNpYWwgYXR0cmlidXRlcy5cJyAgVGhlc2UgYXJlIGF0dHJpYnV0ZXMgdGhhdCBwcm92aWRlIGFjY2VzcyB0byB0aGVcbmltcGxlbWVudGF0aW9uIGFuZCBhcmUgbm90IGludGVuZGVkIGZvciBnZW5lcmFsIHVzZS4gIFRoZWlyIGRlZmluaXRpb25cbm1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZS5cblxuTm9uZVxuICAgVGhpcyB0eXBlIGhhcyBhIHNpbmdsZSB2YWx1ZS4gIFRoZXJlIGlzIGEgc2luZ2xlIG9iamVjdCB3aXRoIHRoaXNcbiAgIHZhbHVlLiBUaGlzIG9iamVjdCBpcyBhY2Nlc3NlZCB0aHJvdWdoIHRoZSBidWlsdC1pbiBuYW1lIGBgTm9uZWBgLlxuICAgSXQgaXMgdXNlZCB0byBzaWduaWZ5IHRoZSBhYnNlbmNlIG9mIGEgdmFsdWUgaW4gbWFueSBzaXR1YXRpb25zLFxuICAgZS5nLiwgaXQgaXMgcmV0dXJuZWQgZnJvbSBmdW5jdGlvbnMgdGhhdCBkb25cJ3QgZXhwbGljaXRseSByZXR1cm5cbiAgIGFueXRoaW5nLiBJdHMgdHJ1dGggdmFsdWUgaXMgZmFsc2UuXG5cbk5vdEltcGxlbWVudGVkXG4gICBUaGlzIHR5cGUgaGFzIGEgc2luZ2xlIHZhbHVlLiAgVGhlcmUgaXMgYSBzaW5nbGUgb2JqZWN0IHdpdGggdGhpc1xuICAgdmFsdWUuIFRoaXMgb2JqZWN0IGlzIGFjY2Vzc2VkIHRocm91Z2ggdGhlIGJ1aWx0LWluIG5hbWVcbiAgIGBgTm90SW1wbGVtZW50ZWRgYC4gTnVtZXJpYyBtZXRob2RzIGFuZCByaWNoIGNvbXBhcmlzb24gbWV0aG9kcyBtYXlcbiAgIHJldHVybiB0aGlzIHZhbHVlIGlmIHRoZXkgZG8gbm90IGltcGxlbWVudCB0aGUgb3BlcmF0aW9uIGZvciB0aGVcbiAgIG9wZXJhbmRzIHByb3ZpZGVkLiAgKFRoZSBpbnRlcnByZXRlciB3aWxsIHRoZW4gdHJ5IHRoZSByZWZsZWN0ZWRcbiAgIG9wZXJhdGlvbiwgb3Igc29tZSBvdGhlciBmYWxsYmFjaywgZGVwZW5kaW5nIG9uIHRoZSBvcGVyYXRvci4pICBJdHNcbiAgIHRydXRoIHZhbHVlIGlzIHRydWUuXG5cbkVsbGlwc2lzXG4gICBUaGlzIHR5cGUgaGFzIGEgc2luZ2xlIHZhbHVlLiAgVGhlcmUgaXMgYSBzaW5nbGUgb2JqZWN0IHdpdGggdGhpc1xuICAgdmFsdWUuIFRoaXMgb2JqZWN0IGlzIGFjY2Vzc2VkIHRocm91Z2ggdGhlIGxpdGVyYWwgYGAuLi5gYCBvciB0aGVcbiAgIGJ1aWx0LWluIG5hbWUgYGBFbGxpcHNpc2BgLiAgSXRzIHRydXRoIHZhbHVlIGlzIHRydWUuXG5cbmBgbnVtYmVycy5OdW1iZXJgYFxuICAgVGhlc2UgYXJlIGNyZWF0ZWQgYnkgbnVtZXJpYyBsaXRlcmFscyBhbmQgcmV0dXJuZWQgYXMgcmVzdWx0cyBieVxuICAgYXJpdGhtZXRpYyBvcGVyYXRvcnMgYW5kIGFyaXRobWV0aWMgYnVpbHQtaW4gZnVuY3Rpb25zLiAgTnVtZXJpY1xuICAgb2JqZWN0cyBhcmUgaW1tdXRhYmxlOyBvbmNlIGNyZWF0ZWQgdGhlaXIgdmFsdWUgbmV2ZXIgY2hhbmdlcy5cbiAgIFB5dGhvbiBudW1iZXJzIGFyZSBvZiBjb3Vyc2Ugc3Ryb25nbHkgcmVsYXRlZCB0byBtYXRoZW1hdGljYWxcbiAgIG51bWJlcnMsIGJ1dCBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBvZiBudW1lcmljYWwgcmVwcmVzZW50YXRpb25cbiAgIGluIGNvbXB1dGVycy5cblxuICAgUHl0aG9uIGRpc3Rpbmd1aXNoZXMgYmV0d2VlbiBpbnRlZ2VycywgZmxvYXRpbmcgcG9pbnQgbnVtYmVycywgYW5kXG4gICBjb21wbGV4IG51bWJlcnM6XG5cbiAgIGBgbnVtYmVycy5JbnRlZ3JhbGBgXG4gICAgICBUaGVzZSByZXByZXNlbnQgZWxlbWVudHMgZnJvbSB0aGUgbWF0aGVtYXRpY2FsIHNldCBvZiBpbnRlZ2Vyc1xuICAgICAgKHBvc2l0aXZlIGFuZCBuZWdhdGl2ZSkuXG5cbiAgICAgIFRoZXJlIGFyZSB0d28gdHlwZXMgb2YgaW50ZWdlcnM6XG5cbiAgICAgIEludGVnZXJzIChgYGludGBgKVxuXG4gICAgICAgICBUaGVzZSByZXByZXNlbnQgbnVtYmVycyBpbiBhbiB1bmxpbWl0ZWQgcmFuZ2UsIHN1YmplY3QgdG9cbiAgICAgICAgIGF2YWlsYWJsZSAodmlydHVhbCkgbWVtb3J5IG9ubHkuICBGb3IgdGhlIHB1cnBvc2Ugb2Ygc2hpZnRcbiAgICAgICAgIGFuZCBtYXNrIG9wZXJhdGlvbnMsIGEgYmluYXJ5IHJlcHJlc2VudGF0aW9uIGlzIGFzc3VtZWQsIGFuZFxuICAgICAgICAgbmVnYXRpdmUgbnVtYmVycyBhcmUgcmVwcmVzZW50ZWQgaW4gYSB2YXJpYW50IG9mIDJcJ3NcbiAgICAgICAgIGNvbXBsZW1lbnQgd2hpY2ggZ2l2ZXMgdGhlIGlsbHVzaW9uIG9mIGFuIGluZmluaXRlIHN0cmluZyBvZlxuICAgICAgICAgc2lnbiBiaXRzIGV4dGVuZGluZyB0byB0aGUgbGVmdC5cblxuICAgICAgQm9vbGVhbnMgKGBgYm9vbGBgKVxuICAgICAgICAgVGhlc2UgcmVwcmVzZW50IHRoZSB0cnV0aCB2YWx1ZXMgRmFsc2UgYW5kIFRydWUuICBUaGUgdHdvXG4gICAgICAgICBvYmplY3RzIHJlcHJlc2VudGluZyB0aGUgdmFsdWVzIEZhbHNlIGFuZCBUcnVlIGFyZSB0aGUgb25seVxuICAgICAgICAgQm9vbGVhbiBvYmplY3RzLiBUaGUgQm9vbGVhbiB0eXBlIGlzIGEgc3VidHlwZSBvZiB0aGUgaW50ZWdlclxuICAgICAgICAgdHlwZSwgYW5kIEJvb2xlYW4gdmFsdWVzIGJlaGF2ZSBsaWtlIHRoZSB2YWx1ZXMgMCBhbmQgMSxcbiAgICAgICAgIHJlc3BlY3RpdmVseSwgaW4gYWxtb3N0IGFsbCBjb250ZXh0cywgdGhlIGV4Y2VwdGlvbiBiZWluZ1xuICAgICAgICAgdGhhdCB3aGVuIGNvbnZlcnRlZCB0byBhIHN0cmluZywgdGhlIHN0cmluZ3MgYGAiRmFsc2UiYGAgb3JcbiAgICAgICAgIGBgIlRydWUiYGAgYXJlIHJldHVybmVkLCByZXNwZWN0aXZlbHkuXG5cbiAgICAgIFRoZSBydWxlcyBmb3IgaW50ZWdlciByZXByZXNlbnRhdGlvbiBhcmUgaW50ZW5kZWQgdG8gZ2l2ZSB0aGVcbiAgICAgIG1vc3QgbWVhbmluZ2Z1bCBpbnRlcnByZXRhdGlvbiBvZiBzaGlmdCBhbmQgbWFzayBvcGVyYXRpb25zXG4gICAgICBpbnZvbHZpbmcgbmVnYXRpdmUgaW50ZWdlcnMuXG5cbiAgIGBgbnVtYmVycy5SZWFsYGAgKGBgZmxvYXRgYClcbiAgICAgIFRoZXNlIHJlcHJlc2VudCBtYWNoaW5lLWxldmVsIGRvdWJsZSBwcmVjaXNpb24gZmxvYXRpbmcgcG9pbnRcbiAgICAgIG51bWJlcnMuIFlvdSBhcmUgYXQgdGhlIG1lcmN5IG9mIHRoZSB1bmRlcmx5aW5nIG1hY2hpbmVcbiAgICAgIGFyY2hpdGVjdHVyZSAoYW5kIEMgb3IgSmF2YSBpbXBsZW1lbnRhdGlvbikgZm9yIHRoZSBhY2NlcHRlZFxuICAgICAgcmFuZ2UgYW5kIGhhbmRsaW5nIG9mIG92ZXJmbG93LiBQeXRob24gZG9lcyBub3Qgc3VwcG9ydCBzaW5nbGUtXG4gICAgICBwcmVjaXNpb24gZmxvYXRpbmcgcG9pbnQgbnVtYmVyczsgdGhlIHNhdmluZ3MgaW4gcHJvY2Vzc29yIGFuZFxuICAgICAgbWVtb3J5IHVzYWdlIHRoYXQgYXJlIHVzdWFsbHkgdGhlIHJlYXNvbiBmb3IgdXNpbmcgdGhlc2UgaXNcbiAgICAgIGR3YXJmZWQgYnkgdGhlIG92ZXJoZWFkIG9mIHVzaW5nIG9iamVjdHMgaW4gUHl0aG9uLCBzbyB0aGVyZSBpc1xuICAgICAgbm8gcmVhc29uIHRvIGNvbXBsaWNhdGUgdGhlIGxhbmd1YWdlIHdpdGggdHdvIGtpbmRzIG9mIGZsb2F0aW5nXG4gICAgICBwb2ludCBudW1iZXJzLlxuXG4gICBgYG51bWJlcnMuQ29tcGxleGBgIChgYGNvbXBsZXhgYClcbiAgICAgIFRoZXNlIHJlcHJlc2VudCBjb21wbGV4IG51bWJlcnMgYXMgYSBwYWlyIG9mIG1hY2hpbmUtbGV2ZWxcbiAgICAgIGRvdWJsZSBwcmVjaXNpb24gZmxvYXRpbmcgcG9pbnQgbnVtYmVycy4gIFRoZSBzYW1lIGNhdmVhdHMgYXBwbHlcbiAgICAgIGFzIGZvciBmbG9hdGluZyBwb2ludCBudW1iZXJzLiBUaGUgcmVhbCBhbmQgaW1hZ2luYXJ5IHBhcnRzIG9mIGFcbiAgICAgIGNvbXBsZXggbnVtYmVyIGBgemBgIGNhbiBiZSByZXRyaWV2ZWQgdGhyb3VnaCB0aGUgcmVhZC1vbmx5XG4gICAgICBhdHRyaWJ1dGVzIGBgei5yZWFsYGAgYW5kIGBgei5pbWFnYGAuXG5cblNlcXVlbmNlc1xuICAgVGhlc2UgcmVwcmVzZW50IGZpbml0ZSBvcmRlcmVkIHNldHMgaW5kZXhlZCBieSBub24tbmVnYXRpdmVcbiAgIG51bWJlcnMuIFRoZSBidWlsdC1pbiBmdW5jdGlvbiBgYGxlbigpYGAgcmV0dXJucyB0aGUgbnVtYmVyIG9mXG4gICBpdGVtcyBvZiBhIHNlcXVlbmNlLiBXaGVuIHRoZSBsZW5ndGggb2YgYSBzZXF1ZW5jZSBpcyAqbiosIHRoZVxuICAgaW5kZXggc2V0IGNvbnRhaW5zIHRoZSBudW1iZXJzIDAsIDEsIC4uLiwgKm4qLTEuICBJdGVtICppKiBvZlxuICAgc2VxdWVuY2UgKmEqIGlzIHNlbGVjdGVkIGJ5IGBgYVtpXWBgLlxuXG4gICBTZXF1ZW5jZXMgYWxzbyBzdXBwb3J0IHNsaWNpbmc6IGBgYVtpOmpdYGAgc2VsZWN0cyBhbGwgaXRlbXMgd2l0aFxuICAgaW5kZXggKmsqIHN1Y2ggdGhhdCAqaSogYGA8PWBgICprKiBgYDxgYCAqaiouICBXaGVuIHVzZWQgYXMgYW5cbiAgIGV4cHJlc3Npb24sIGEgc2xpY2UgaXMgYSBzZXF1ZW5jZSBvZiB0aGUgc2FtZSB0eXBlLiAgVGhpcyBpbXBsaWVzXG4gICB0aGF0IHRoZSBpbmRleCBzZXQgaXMgcmVudW1iZXJlZCBzbyB0aGF0IGl0IHN0YXJ0cyBhdCAwLlxuXG4gICBTb21lIHNlcXVlbmNlcyBhbHNvIHN1cHBvcnQgImV4dGVuZGVkIHNsaWNpbmciIHdpdGggYSB0aGlyZCAic3RlcCJcbiAgIHBhcmFtZXRlcjogYGBhW2k6ajprXWBgIHNlbGVjdHMgYWxsIGl0ZW1zIG9mICphKiB3aXRoIGluZGV4ICp4KlxuICAgd2hlcmUgYGB4ID0gaSArIG4qa2BgLCAqbiogYGA+PWBgIGBgMGBgIGFuZCAqaSogYGA8PWBgICp4KiBgYDxgYFxuICAgKmoqLlxuXG4gICBTZXF1ZW5jZXMgYXJlIGRpc3Rpbmd1aXNoZWQgYWNjb3JkaW5nIHRvIHRoZWlyIG11dGFiaWxpdHk6XG5cbiAgIEltbXV0YWJsZSBzZXF1ZW5jZXNcbiAgICAgIEFuIG9iamVjdCBvZiBhbiBpbW11dGFibGUgc2VxdWVuY2UgdHlwZSBjYW5ub3QgY2hhbmdlIG9uY2UgaXQgaXNcbiAgICAgIGNyZWF0ZWQuICAoSWYgdGhlIG9iamVjdCBjb250YWlucyByZWZlcmVuY2VzIHRvIG90aGVyIG9iamVjdHMsXG4gICAgICB0aGVzZSBvdGhlciBvYmplY3RzIG1heSBiZSBtdXRhYmxlIGFuZCBtYXkgYmUgY2hhbmdlZDsgaG93ZXZlcixcbiAgICAgIHRoZSBjb2xsZWN0aW9uIG9mIG9iamVjdHMgZGlyZWN0bHkgcmVmZXJlbmNlZCBieSBhbiBpbW11dGFibGVcbiAgICAgIG9iamVjdCBjYW5ub3QgY2hhbmdlLilcblxuICAgICAgVGhlIGZvbGxvd2luZyB0eXBlcyBhcmUgaW1tdXRhYmxlIHNlcXVlbmNlczpcblxuICAgICAgU3RyaW5nc1xuICAgICAgICAgQSBzdHJpbmcgaXMgYSBzZXF1ZW5jZSBvZiB2YWx1ZXMgdGhhdCByZXByZXNlbnQgVW5pY29kZVxuICAgICAgICAgY29kZXBvaW50cy4gQWxsIHRoZSBjb2RlcG9pbnRzIGluIHJhbmdlIGBgVSswMDAwIC0gVSsxMEZGRkZgYFxuICAgICAgICAgY2FuIGJlIHJlcHJlc2VudGVkIGluIGEgc3RyaW5nLiAgUHl0aG9uIGRvZXNuXCd0IGhhdmUgYVxuICAgICAgICAgYGBjaHJgYCB0eXBlLCBhbmQgZXZlcnkgY2hhcmFjdGVyIGluIHRoZSBzdHJpbmcgaXNcbiAgICAgICAgIHJlcHJlc2VudGVkIGFzIGEgc3RyaW5nIG9iamVjdCB3aXRoIGxlbmd0aCBgYDFgYC4gIFRoZSBidWlsdC1cbiAgICAgICAgIGluIGZ1bmN0aW9uIGBgb3JkKClgYCBjb252ZXJ0cyBhIGNoYXJhY3RlciB0byBpdHMgY29kZXBvaW50XG4gICAgICAgICAoYXMgYW4gaW50ZWdlcik7IGBgY2hyKClgYCBjb252ZXJ0cyBhbiBpbnRlZ2VyIGluIHJhbmdlIGBgMCAtXG4gICAgICAgICAxMEZGRkZgYCB0byB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIuIGBgc3RyLmVuY29kZSgpYGAgY2FuXG4gICAgICAgICBiZSB1c2VkIHRvIGNvbnZlcnQgYSBgYHN0cmBgIHRvIGBgYnl0ZXNgYCB1c2luZyB0aGUgZ2l2ZW5cbiAgICAgICAgIGVuY29kaW5nLCBhbmQgYGBieXRlcy5kZWNvZGUoKWBgIGNhbiBiZSB1c2VkIHRvIGFjaGlldmUgdGhlXG4gICAgICAgICBvcHBvc2l0ZS5cblxuICAgICAgVHVwbGVzXG4gICAgICAgICBUaGUgaXRlbXMgb2YgYSB0dXBsZSBhcmUgYXJiaXRyYXJ5IFB5dGhvbiBvYmplY3RzLiBUdXBsZXMgb2ZcbiAgICAgICAgIHR3byBvciBtb3JlIGl0ZW1zIGFyZSBmb3JtZWQgYnkgY29tbWEtc2VwYXJhdGVkIGxpc3RzIG9mXG4gICAgICAgICBleHByZXNzaW9ucy4gIEEgdHVwbGUgb2Ygb25lIGl0ZW0gKGEgXCdzaW5nbGV0b25cJykgY2FuIGJlXG4gICAgICAgICBmb3JtZWQgYnkgYWZmaXhpbmcgYSBjb21tYSB0byBhbiBleHByZXNzaW9uIChhbiBleHByZXNzaW9uIGJ5XG4gICAgICAgICBpdHNlbGYgZG9lcyBub3QgY3JlYXRlIGEgdHVwbGUsIHNpbmNlIHBhcmVudGhlc2VzIG11c3QgYmVcbiAgICAgICAgIHVzYWJsZSBmb3IgZ3JvdXBpbmcgb2YgZXhwcmVzc2lvbnMpLiAgQW4gZW1wdHkgdHVwbGUgY2FuIGJlXG4gICAgICAgICBmb3JtZWQgYnkgYW4gZW1wdHkgcGFpciBvZiBwYXJlbnRoZXNlcy5cblxuICAgICAgQnl0ZXNcbiAgICAgICAgIEEgYnl0ZXMgb2JqZWN0IGlzIGFuIGltbXV0YWJsZSBhcnJheS4gIFRoZSBpdGVtcyBhcmUgOC1iaXRcbiAgICAgICAgIGJ5dGVzLCByZXByZXNlbnRlZCBieSBpbnRlZ2VycyBpbiB0aGUgcmFuZ2UgMCA8PSB4IDwgMjU2LlxuICAgICAgICAgQnl0ZXMgbGl0ZXJhbHMgKGxpa2UgYGBiXCdhYmNcJ2BgIGFuZCB0aGUgYnVpbHQtaW4gZnVuY3Rpb25cbiAgICAgICAgIGBgYnl0ZXMoKWBgIGNhbiBiZSB1c2VkIHRvIGNvbnN0cnVjdCBieXRlcyBvYmplY3RzLiAgQWxzbyxcbiAgICAgICAgIGJ5dGVzIG9iamVjdHMgY2FuIGJlIGRlY29kZWQgdG8gc3RyaW5ncyB2aWEgdGhlIGBgZGVjb2RlKClgYFxuICAgICAgICAgbWV0aG9kLlxuXG4gICBNdXRhYmxlIHNlcXVlbmNlc1xuICAgICAgTXV0YWJsZSBzZXF1ZW5jZXMgY2FuIGJlIGNoYW5nZWQgYWZ0ZXIgdGhleSBhcmUgY3JlYXRlZC4gIFRoZVxuICAgICAgc3Vic2NyaXB0aW9uIGFuZCBzbGljaW5nIG5vdGF0aW9ucyBjYW4gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IG9mXG4gICAgICBhc3NpZ25tZW50IGFuZCBgYGRlbGBgIChkZWxldGUpIHN0YXRlbWVudHMuXG5cbiAgICAgIFRoZXJlIGFyZSBjdXJyZW50bHkgdHdvIGludHJpbnNpYyBtdXRhYmxlIHNlcXVlbmNlIHR5cGVzOlxuXG4gICAgICBMaXN0c1xuICAgICAgICAgVGhlIGl0ZW1zIG9mIGEgbGlzdCBhcmUgYXJiaXRyYXJ5IFB5dGhvbiBvYmplY3RzLiAgTGlzdHMgYXJlXG4gICAgICAgICBmb3JtZWQgYnkgcGxhY2luZyBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGV4cHJlc3Npb25zIGluXG4gICAgICAgICBzcXVhcmUgYnJhY2tldHMuIChOb3RlIHRoYXQgdGhlcmUgYXJlIG5vIHNwZWNpYWwgY2FzZXMgbmVlZGVkXG4gICAgICAgICB0byBmb3JtIGxpc3RzIG9mIGxlbmd0aCAwIG9yIDEuKVxuXG4gICAgICBCeXRlIEFycmF5c1xuICAgICAgICAgQSBieXRlYXJyYXkgb2JqZWN0IGlzIGEgbXV0YWJsZSBhcnJheS4gVGhleSBhcmUgY3JlYXRlZCBieVxuICAgICAgICAgdGhlIGJ1aWx0LWluIGBgYnl0ZWFycmF5KClgYCBjb25zdHJ1Y3Rvci4gIEFzaWRlIGZyb20gYmVpbmdcbiAgICAgICAgIG11dGFibGUgKGFuZCBoZW5jZSB1bmhhc2hhYmxlKSwgYnl0ZSBhcnJheXMgb3RoZXJ3aXNlIHByb3ZpZGVcbiAgICAgICAgIHRoZSBzYW1lIGludGVyZmFjZSBhbmQgZnVuY3Rpb25hbGl0eSBhcyBpbW11dGFibGUgYnl0ZXNcbiAgICAgICAgIG9iamVjdHMuXG5cbiAgICAgIFRoZSBleHRlbnNpb24gbW9kdWxlIGBgYXJyYXlgYCBwcm92aWRlcyBhbiBhZGRpdGlvbmFsIGV4YW1wbGUgb2ZcbiAgICAgIGEgbXV0YWJsZSBzZXF1ZW5jZSB0eXBlLCBhcyBkb2VzIHRoZSBgYGNvbGxlY3Rpb25zYGAgbW9kdWxlLlxuXG5TZXQgdHlwZXNcbiAgIFRoZXNlIHJlcHJlc2VudCB1bm9yZGVyZWQsIGZpbml0ZSBzZXRzIG9mIHVuaXF1ZSwgaW1tdXRhYmxlXG4gICBvYmplY3RzLiBBcyBzdWNoLCB0aGV5IGNhbm5vdCBiZSBpbmRleGVkIGJ5IGFueSBzdWJzY3JpcHQuIEhvd2V2ZXIsXG4gICB0aGV5IGNhbiBiZSBpdGVyYXRlZCBvdmVyLCBhbmQgdGhlIGJ1aWx0LWluIGZ1bmN0aW9uIGBgbGVuKClgYFxuICAgcmV0dXJucyB0aGUgbnVtYmVyIG9mIGl0ZW1zIGluIGEgc2V0LiBDb21tb24gdXNlcyBmb3Igc2V0cyBhcmUgZmFzdFxuICAgbWVtYmVyc2hpcCB0ZXN0aW5nLCByZW1vdmluZyBkdXBsaWNhdGVzIGZyb20gYSBzZXF1ZW5jZSwgYW5kXG4gICBjb21wdXRpbmcgbWF0aGVtYXRpY2FsIG9wZXJhdGlvbnMgc3VjaCBhcyBpbnRlcnNlY3Rpb24sIHVuaW9uLFxuICAgZGlmZmVyZW5jZSwgYW5kIHN5bW1ldHJpYyBkaWZmZXJlbmNlLlxuXG4gICBGb3Igc2V0IGVsZW1lbnRzLCB0aGUgc2FtZSBpbW11dGFiaWxpdHkgcnVsZXMgYXBwbHkgYXMgZm9yXG4gICBkaWN0aW9uYXJ5IGtleXMuIE5vdGUgdGhhdCBudW1lcmljIHR5cGVzIG9iZXkgdGhlIG5vcm1hbCBydWxlcyBmb3JcbiAgIG51bWVyaWMgY29tcGFyaXNvbjogaWYgdHdvIG51bWJlcnMgY29tcGFyZSBlcXVhbCAoZS5nLiwgYGAxYGAgYW5kXG4gICBgYDEuMGBgKSwgb25seSBvbmUgb2YgdGhlbSBjYW4gYmUgY29udGFpbmVkIGluIGEgc2V0LlxuXG4gICBUaGVyZSBhcmUgY3VycmVudGx5IHR3byBpbnRyaW5zaWMgc2V0IHR5cGVzOlxuXG4gICBTZXRzXG4gICAgICBUaGVzZSByZXByZXNlbnQgYSBtdXRhYmxlIHNldC4gVGhleSBhcmUgY3JlYXRlZCBieSB0aGUgYnVpbHQtaW5cbiAgICAgIGBgc2V0KClgYCBjb25zdHJ1Y3RvciBhbmQgY2FuIGJlIG1vZGlmaWVkIGFmdGVyd2FyZHMgYnkgc2V2ZXJhbFxuICAgICAgbWV0aG9kcywgc3VjaCBhcyBgYGFkZCgpYGAuXG5cbiAgIEZyb3plbiBzZXRzXG4gICAgICBUaGVzZSByZXByZXNlbnQgYW4gaW1tdXRhYmxlIHNldC4gIFRoZXkgYXJlIGNyZWF0ZWQgYnkgdGhlXG4gICAgICBidWlsdC1pbiBgYGZyb3plbnNldCgpYGAgY29uc3RydWN0b3IuICBBcyBhIGZyb3plbnNldCBpc1xuICAgICAgaW1tdXRhYmxlIGFuZCAqaGFzaGFibGUqLCBpdCBjYW4gYmUgdXNlZCBhZ2FpbiBhcyBhbiBlbGVtZW50IG9mXG4gICAgICBhbm90aGVyIHNldCwgb3IgYXMgYSBkaWN0aW9uYXJ5IGtleS5cblxuTWFwcGluZ3NcbiAgIFRoZXNlIHJlcHJlc2VudCBmaW5pdGUgc2V0cyBvZiBvYmplY3RzIGluZGV4ZWQgYnkgYXJiaXRyYXJ5IGluZGV4XG4gICBzZXRzLiBUaGUgc3Vic2NyaXB0IG5vdGF0aW9uIGBgYVtrXWBgIHNlbGVjdHMgdGhlIGl0ZW0gaW5kZXhlZCBieVxuICAgYGBrYGAgZnJvbSB0aGUgbWFwcGluZyBgYGFgYDsgdGhpcyBjYW4gYmUgdXNlZCBpbiBleHByZXNzaW9ucyBhbmRcbiAgIGFzIHRoZSB0YXJnZXQgb2YgYXNzaWdubWVudHMgb3IgYGBkZWxgYCBzdGF0ZW1lbnRzLiBUaGUgYnVpbHQtaW5cbiAgIGZ1bmN0aW9uIGBgbGVuKClgYCByZXR1cm5zIHRoZSBudW1iZXIgb2YgaXRlbXMgaW4gYSBtYXBwaW5nLlxuXG4gICBUaGVyZSBpcyBjdXJyZW50bHkgYSBzaW5nbGUgaW50cmluc2ljIG1hcHBpbmcgdHlwZTpcblxuICAgRGljdGlvbmFyaWVzXG4gICAgICBUaGVzZSByZXByZXNlbnQgZmluaXRlIHNldHMgb2Ygb2JqZWN0cyBpbmRleGVkIGJ5IG5lYXJseVxuICAgICAgYXJiaXRyYXJ5IHZhbHVlcy4gIFRoZSBvbmx5IHR5cGVzIG9mIHZhbHVlcyBub3QgYWNjZXB0YWJsZSBhc1xuICAgICAga2V5cyBhcmUgdmFsdWVzIGNvbnRhaW5pbmcgbGlzdHMgb3IgZGljdGlvbmFyaWVzIG9yIG90aGVyXG4gICAgICBtdXRhYmxlIHR5cGVzIHRoYXQgYXJlIGNvbXBhcmVkIGJ5IHZhbHVlIHJhdGhlciB0aGFuIGJ5IG9iamVjdFxuICAgICAgaWRlbnRpdHksIHRoZSByZWFzb24gYmVpbmcgdGhhdCB0aGUgZWZmaWNpZW50IGltcGxlbWVudGF0aW9uIG9mXG4gICAgICBkaWN0aW9uYXJpZXMgcmVxdWlyZXMgYSBrZXlcJ3MgaGFzaCB2YWx1ZSB0byByZW1haW4gY29uc3RhbnQuXG4gICAgICBOdW1lcmljIHR5cGVzIHVzZWQgZm9yIGtleXMgb2JleSB0aGUgbm9ybWFsIHJ1bGVzIGZvciBudW1lcmljXG4gICAgICBjb21wYXJpc29uOiBpZiB0d28gbnVtYmVycyBjb21wYXJlIGVxdWFsIChlLmcuLCBgYDFgYCBhbmRcbiAgICAgIGBgMS4wYGApIHRoZW4gdGhleSBjYW4gYmUgdXNlZCBpbnRlcmNoYW5nZWFibHkgdG8gaW5kZXggdGhlIHNhbWVcbiAgICAgIGRpY3Rpb25hcnkgZW50cnkuXG5cbiAgICAgIERpY3Rpb25hcmllcyBhcmUgbXV0YWJsZTsgdGhleSBjYW4gYmUgY3JlYXRlZCBieSB0aGUgYGB7Li4ufWBgXG4gICAgICBub3RhdGlvbiAoc2VlIHNlY3Rpb24gKkRpY3Rpb25hcnkgZGlzcGxheXMqKS5cblxuICAgICAgVGhlIGV4dGVuc2lvbiBtb2R1bGVzIGBgZGJtLm5kYm1gYCBhbmQgYGBkYm0uZ251YGAgcHJvdmlkZVxuICAgICAgYWRkaXRpb25hbCBleGFtcGxlcyBvZiBtYXBwaW5nIHR5cGVzLCBhcyBkb2VzIHRoZVxuICAgICAgYGBjb2xsZWN0aW9uc2BgIG1vZHVsZS5cblxuQ2FsbGFibGUgdHlwZXNcbiAgIFRoZXNlIGFyZSB0aGUgdHlwZXMgdG8gd2hpY2ggdGhlIGZ1bmN0aW9uIGNhbGwgb3BlcmF0aW9uIChzZWVcbiAgIHNlY3Rpb24gKkNhbGxzKikgY2FuIGJlIGFwcGxpZWQ6XG5cbiAgIFVzZXItZGVmaW5lZCBmdW5jdGlvbnNcbiAgICAgIEEgdXNlci1kZWZpbmVkIGZ1bmN0aW9uIG9iamVjdCBpcyBjcmVhdGVkIGJ5IGEgZnVuY3Rpb25cbiAgICAgIGRlZmluaXRpb24gKHNlZSBzZWN0aW9uICpGdW5jdGlvbiBkZWZpbml0aW9ucyopLiAgSXQgc2hvdWxkIGJlXG4gICAgICBjYWxsZWQgd2l0aCBhbiBhcmd1bWVudCBsaXN0IGNvbnRhaW5pbmcgdGhlIHNhbWUgbnVtYmVyIG9mIGl0ZW1zXG4gICAgICBhcyB0aGUgZnVuY3Rpb25cJ3MgZm9ybWFsIHBhcmFtZXRlciBsaXN0LlxuXG4gICAgICBTcGVjaWFsIGF0dHJpYnV0ZXM6XG5cbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IEF0dHJpYnV0ZSAgICAgICAgICAgICAgICAgfCBNZWFuaW5nICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgKz09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PStcbiAgICAgIHwgYGBfX2RvY19fYGAgICAgICAgICAgICAgICB8IFRoZSBmdW5jdGlvblwncyBkb2N1bWVudGF0aW9uICAgIHwgV3JpdGFibGUgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgc3RyaW5nLCBvciBgYE5vbmVgYCBpZiAgICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHVuYXZhaWxhYmxlICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fbmFtZV9fYGAgICAgICAgICAgICAgIHwgVGhlIGZ1bmN0aW9uXCdzIG5hbWUgICAgICAgICAgICAgfCBXcml0YWJsZSAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fcXVhbG5hbWVfX2BgICAgICAgICAgIHwgVGhlIGZ1bmN0aW9uXCdzICpxdWFsaWZpZWQgbmFtZSogfCBXcml0YWJsZSAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOZXcgaW4gdmVyc2lvbiAzLjMuICAgICAgICAgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcbiAgICAgIHwgYGBfX21vZHVsZV9fYGAgICAgICAgICAgICB8IFRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgdGhlICAgICAgfCBXcml0YWJsZSAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBmdW5jdGlvbiB3YXMgZGVmaW5lZCBpbiwgb3IgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBOb25lYGAgaWYgdW5hdmFpbGFibGUuICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19kZWZhdWx0c19fYGAgICAgICAgICAgfCBBIHR1cGxlIGNvbnRhaW5pbmcgZGVmYXVsdCAgICAgIHwgV3JpdGFibGUgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYXJndW1lbnQgdmFsdWVzIGZvciB0aG9zZSAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFyZ3VtZW50cyB0aGF0IGhhdmUgZGVmYXVsdHMsICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBvciBgYE5vbmVgYCBpZiBubyBhcmd1bWVudHMgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgaGF2ZSBhIGRlZmF1bHQgdmFsdWUgICAgICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19jb2RlX19gYCAgICAgICAgICAgICAgfCBUaGUgY29kZSBvYmplY3QgcmVwcmVzZW50aW5nICAgIHwgV3JpdGFibGUgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdGhlIGNvbXBpbGVkIGZ1bmN0aW9uIGJvZHkuICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19nbG9iYWxzX19gYCAgICAgICAgICAgfCBBIHJlZmVyZW5jZSB0byB0aGUgZGljdGlvbmFyeSAgIHwgUmVhZC1vbmx5ICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdGhhdCBob2xkcyB0aGUgZnVuY3Rpb25cJ3MgICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBnbG9iYWwgdmFyaWFibGVzIC0tLSB0aGUgZ2xvYmFsIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgbmFtZXNwYWNlIG9mIHRoZSBtb2R1bGUgaW4gICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHdoaWNoIHRoZSBmdW5jdGlvbiB3YXMgZGVmaW5lZC4gfCAgICAgICAgICAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fZGljdF9fYGAgICAgICAgICAgICAgIHwgVGhlIG5hbWVzcGFjZSBzdXBwb3J0aW5nICAgICAgICB8IFdyaXRhYmxlICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFyYml0cmFyeSBmdW5jdGlvbiBhdHRyaWJ1dGVzLiAgfCAgICAgICAgICAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fY2xvc3VyZV9fYGAgICAgICAgICAgIHwgYGBOb25lYGAgb3IgYSB0dXBsZSBvZiBjZWxscyAgICB8IFJlYWQtb25seSAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRoYXQgY29udGFpbiBiaW5kaW5ncyBmb3IgdGhlICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBmdW5jdGlvblwncyBmcmVlIHZhcmlhYmxlcy4gICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19hbm5vdGF0aW9uc19fYGAgICAgICAgfCBBIGRpY3QgY29udGFpbmluZyBhbm5vdGF0aW9ucyAgIHwgV3JpdGFibGUgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb2YgcGFyYW1ldGVycy4gIFRoZSBrZXlzIG9mIHRoZSB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGRpY3QgYXJlIHRoZSBwYXJhbWV0ZXIgbmFtZXMsICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBvciBgYFwncmV0dXJuXCdgYCBmb3IgdGhlIHJldHVybiAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhbm5vdGF0aW9uLCBpZiBwcm92aWRlZC4gICAgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcbiAgICAgIHwgYGBfX2t3ZGVmYXVsdHNfX2BgICAgICAgICB8IEEgZGljdCBjb250YWluaW5nIGRlZmF1bHRzIGZvciAgfCBXcml0YWJsZSAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBrZXl3b3JkLW9ubHkgcGFyYW1ldGVycy4gICAgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcblxuICAgICAgTW9zdCBvZiB0aGUgYXR0cmlidXRlcyBsYWJlbGxlZCAiV3JpdGFibGUiIGNoZWNrIHRoZSB0eXBlIG9mIHRoZVxuICAgICAgYXNzaWduZWQgdmFsdWUuXG5cbiAgICAgIEZ1bmN0aW9uIG9iamVjdHMgYWxzbyBzdXBwb3J0IGdldHRpbmcgYW5kIHNldHRpbmcgYXJiaXRyYXJ5XG4gICAgICBhdHRyaWJ1dGVzLCB3aGljaCBjYW4gYmUgdXNlZCwgZm9yIGV4YW1wbGUsIHRvIGF0dGFjaCBtZXRhZGF0YVxuICAgICAgdG8gZnVuY3Rpb25zLiAgUmVndWxhciBhdHRyaWJ1dGUgZG90LW5vdGF0aW9uIGlzIHVzZWQgdG8gZ2V0IGFuZFxuICAgICAgc2V0IHN1Y2ggYXR0cmlidXRlcy4gKk5vdGUgdGhhdCB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBvbmx5XG4gICAgICBzdXBwb3J0cyBmdW5jdGlvbiBhdHRyaWJ1dGVzIG9uIHVzZXItZGVmaW5lZCBmdW5jdGlvbnMuIEZ1bmN0aW9uXG4gICAgICBhdHRyaWJ1dGVzIG9uIGJ1aWx0LWluIGZ1bmN0aW9ucyBtYXkgYmUgc3VwcG9ydGVkIGluIHRoZVxuICAgICAgZnV0dXJlLipcblxuICAgICAgQWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCBhIGZ1bmN0aW9uXCdzIGRlZmluaXRpb24gY2FuIGJlXG4gICAgICByZXRyaWV2ZWQgZnJvbSBpdHMgY29kZSBvYmplY3Q7IHNlZSB0aGUgZGVzY3JpcHRpb24gb2YgaW50ZXJuYWxcbiAgICAgIHR5cGVzIGJlbG93LlxuXG4gICBJbnN0YW5jZSBtZXRob2RzXG4gICAgICBBbiBpbnN0YW5jZSBtZXRob2Qgb2JqZWN0IGNvbWJpbmVzIGEgY2xhc3MsIGEgY2xhc3MgaW5zdGFuY2UgYW5kXG4gICAgICBhbnkgY2FsbGFibGUgb2JqZWN0IChub3JtYWxseSBhIHVzZXItZGVmaW5lZCBmdW5jdGlvbikuXG5cbiAgICAgIFNwZWNpYWwgcmVhZC1vbmx5IGF0dHJpYnV0ZXM6IGBgX19zZWxmX19gYCBpcyB0aGUgY2xhc3MgaW5zdGFuY2VcbiAgICAgIG9iamVjdCwgYGBfX2Z1bmNfX2BgIGlzIHRoZSBmdW5jdGlvbiBvYmplY3Q7IGBgX19kb2NfX2BgIGlzIHRoZVxuICAgICAgbWV0aG9kXCdzIGRvY3VtZW50YXRpb24gKHNhbWUgYXMgYGBfX2Z1bmNfXy5fX2RvY19fYGApO1xuICAgICAgYGBfX25hbWVfX2BgIGlzIHRoZSBtZXRob2QgbmFtZSAoc2FtZSBhcyBgYF9fZnVuY19fLl9fbmFtZV9fYGApO1xuICAgICAgYGBfX21vZHVsZV9fYGAgaXMgdGhlIG5hbWUgb2YgdGhlIG1vZHVsZSB0aGUgbWV0aG9kIHdhcyBkZWZpbmVkXG4gICAgICBpbiwgb3IgYGBOb25lYGAgaWYgdW5hdmFpbGFibGUuXG5cbiAgICAgIE1ldGhvZHMgYWxzbyBzdXBwb3J0IGFjY2Vzc2luZyAoYnV0IG5vdCBzZXR0aW5nKSB0aGUgYXJiaXRyYXJ5XG4gICAgICBmdW5jdGlvbiBhdHRyaWJ1dGVzIG9uIHRoZSB1bmRlcmx5aW5nIGZ1bmN0aW9uIG9iamVjdC5cblxuICAgICAgVXNlci1kZWZpbmVkIG1ldGhvZCBvYmplY3RzIG1heSBiZSBjcmVhdGVkIHdoZW4gZ2V0dGluZyBhblxuICAgICAgYXR0cmlidXRlIG9mIGEgY2xhc3MgKHBlcmhhcHMgdmlhIGFuIGluc3RhbmNlIG9mIHRoYXQgY2xhc3MpLCBpZlxuICAgICAgdGhhdCBhdHRyaWJ1dGUgaXMgYSB1c2VyLWRlZmluZWQgZnVuY3Rpb24gb2JqZWN0IG9yIGEgY2xhc3NcbiAgICAgIG1ldGhvZCBvYmplY3QuXG5cbiAgICAgIFdoZW4gYW4gaW5zdGFuY2UgbWV0aG9kIG9iamVjdCBpcyBjcmVhdGVkIGJ5IHJldHJpZXZpbmcgYSB1c2VyLVxuICAgICAgZGVmaW5lZCBmdW5jdGlvbiBvYmplY3QgZnJvbSBhIGNsYXNzIHZpYSBvbmUgb2YgaXRzIGluc3RhbmNlcyxcbiAgICAgIGl0cyBgYF9fc2VsZl9fYGAgYXR0cmlidXRlIGlzIHRoZSBpbnN0YW5jZSwgYW5kIHRoZSBtZXRob2RcbiAgICAgIG9iamVjdCBpcyBzYWlkIHRvIGJlIGJvdW5kLiAgVGhlIG5ldyBtZXRob2RcJ3MgYGBfX2Z1bmNfX2BgXG4gICAgICBhdHRyaWJ1dGUgaXMgdGhlIG9yaWdpbmFsIGZ1bmN0aW9uIG9iamVjdC5cblxuICAgICAgV2hlbiBhIHVzZXItZGVmaW5lZCBtZXRob2Qgb2JqZWN0IGlzIGNyZWF0ZWQgYnkgcmV0cmlldmluZ1xuICAgICAgYW5vdGhlciBtZXRob2Qgb2JqZWN0IGZyb20gYSBjbGFzcyBvciBpbnN0YW5jZSwgdGhlIGJlaGF2aW91ciBpc1xuICAgICAgdGhlIHNhbWUgYXMgZm9yIGEgZnVuY3Rpb24gb2JqZWN0LCBleGNlcHQgdGhhdCB0aGUgYGBfX2Z1bmNfX2BgXG4gICAgICBhdHRyaWJ1dGUgb2YgdGhlIG5ldyBpbnN0YW5jZSBpcyBub3QgdGhlIG9yaWdpbmFsIG1ldGhvZCBvYmplY3RcbiAgICAgIGJ1dCBpdHMgYGBfX2Z1bmNfX2BgIGF0dHJpYnV0ZS5cblxuICAgICAgV2hlbiBhbiBpbnN0YW5jZSBtZXRob2Qgb2JqZWN0IGlzIGNyZWF0ZWQgYnkgcmV0cmlldmluZyBhIGNsYXNzXG4gICAgICBtZXRob2Qgb2JqZWN0IGZyb20gYSBjbGFzcyBvciBpbnN0YW5jZSwgaXRzIGBgX19zZWxmX19gYFxuICAgICAgYXR0cmlidXRlIGlzIHRoZSBjbGFzcyBpdHNlbGYsIGFuZCBpdHMgYGBfX2Z1bmNfX2BgIGF0dHJpYnV0ZSBpc1xuICAgICAgdGhlIGZ1bmN0aW9uIG9iamVjdCB1bmRlcmx5aW5nIHRoZSBjbGFzcyBtZXRob2QuXG5cbiAgICAgIFdoZW4gYW4gaW5zdGFuY2UgbWV0aG9kIG9iamVjdCBpcyBjYWxsZWQsIHRoZSB1bmRlcmx5aW5nXG4gICAgICBmdW5jdGlvbiAoYGBfX2Z1bmNfX2BgKSBpcyBjYWxsZWQsIGluc2VydGluZyB0aGUgY2xhc3MgaW5zdGFuY2VcbiAgICAgIChgYF9fc2VsZl9fYGApIGluIGZyb250IG9mIHRoZSBhcmd1bWVudCBsaXN0LiAgRm9yIGluc3RhbmNlLFxuICAgICAgd2hlbiBgYENgYCBpcyBhIGNsYXNzIHdoaWNoIGNvbnRhaW5zIGEgZGVmaW5pdGlvbiBmb3IgYSBmdW5jdGlvblxuICAgICAgYGBmKClgYCwgYW5kIGBgeGBgIGlzIGFuIGluc3RhbmNlIG9mIGBgQ2BgLCBjYWxsaW5nIGBgeC5mKDEpYGBcbiAgICAgIGlzIGVxdWl2YWxlbnQgdG8gY2FsbGluZyBgYEMuZih4LCAxKWBgLlxuXG4gICAgICBXaGVuIGFuIGluc3RhbmNlIG1ldGhvZCBvYmplY3QgaXMgZGVyaXZlZCBmcm9tIGEgY2xhc3MgbWV0aG9kXG4gICAgICBvYmplY3QsIHRoZSAiY2xhc3MgaW5zdGFuY2UiIHN0b3JlZCBpbiBgYF9fc2VsZl9fYGAgd2lsbFxuICAgICAgYWN0dWFsbHkgYmUgdGhlIGNsYXNzIGl0c2VsZiwgc28gdGhhdCBjYWxsaW5nIGVpdGhlciBgYHguZigxKWBgXG4gICAgICBvciBgYEMuZigxKWBgIGlzIGVxdWl2YWxlbnQgdG8gY2FsbGluZyBgYGYoQywxKWBgIHdoZXJlIGBgZmBgIGlzXG4gICAgICB0aGUgdW5kZXJseWluZyBmdW5jdGlvbi5cblxuICAgICAgTm90ZSB0aGF0IHRoZSB0cmFuc2Zvcm1hdGlvbiBmcm9tIGZ1bmN0aW9uIG9iamVjdCB0byBpbnN0YW5jZVxuICAgICAgbWV0aG9kIG9iamVjdCBoYXBwZW5zIGVhY2ggdGltZSB0aGUgYXR0cmlidXRlIGlzIHJldHJpZXZlZCBmcm9tXG4gICAgICB0aGUgaW5zdGFuY2UuICBJbiBzb21lIGNhc2VzLCBhIGZydWl0ZnVsIG9wdGltaXphdGlvbiBpcyB0b1xuICAgICAgYXNzaWduIHRoZSBhdHRyaWJ1dGUgdG8gYSBsb2NhbCB2YXJpYWJsZSBhbmQgY2FsbCB0aGF0IGxvY2FsXG4gICAgICB2YXJpYWJsZS4gQWxzbyBub3RpY2UgdGhhdCB0aGlzIHRyYW5zZm9ybWF0aW9uIG9ubHkgaGFwcGVucyBmb3JcbiAgICAgIHVzZXItZGVmaW5lZCBmdW5jdGlvbnM7IG90aGVyIGNhbGxhYmxlIG9iamVjdHMgKGFuZCBhbGwgbm9uLVxuICAgICAgY2FsbGFibGUgb2JqZWN0cykgYXJlIHJldHJpZXZlZCB3aXRob3V0IHRyYW5zZm9ybWF0aW9uLiAgSXQgaXNcbiAgICAgIGFsc28gaW1wb3J0YW50IHRvIG5vdGUgdGhhdCB1c2VyLWRlZmluZWQgZnVuY3Rpb25zIHdoaWNoIGFyZVxuICAgICAgYXR0cmlidXRlcyBvZiBhIGNsYXNzIGluc3RhbmNlIGFyZSBub3QgY29udmVydGVkIHRvIGJvdW5kXG4gICAgICBtZXRob2RzOyB0aGlzICpvbmx5KiBoYXBwZW5zIHdoZW4gdGhlIGZ1bmN0aW9uIGlzIGFuIGF0dHJpYnV0ZVxuICAgICAgb2YgdGhlIGNsYXNzLlxuXG4gICBHZW5lcmF0b3IgZnVuY3Rpb25zXG4gICAgICBBIGZ1bmN0aW9uIG9yIG1ldGhvZCB3aGljaCB1c2VzIHRoZSBgYHlpZWxkYGAgc3RhdGVtZW50IChzZWVcbiAgICAgIHNlY3Rpb24gKlRoZSB5aWVsZCBzdGF0ZW1lbnQqKSBpcyBjYWxsZWQgYSAqZ2VuZXJhdG9yIGZ1bmN0aW9uKi5cbiAgICAgIFN1Y2ggYSBmdW5jdGlvbiwgd2hlbiBjYWxsZWQsIGFsd2F5cyByZXR1cm5zIGFuIGl0ZXJhdG9yIG9iamVjdFxuICAgICAgd2hpY2ggY2FuIGJlIHVzZWQgdG8gZXhlY3V0ZSB0aGUgYm9keSBvZiB0aGUgZnVuY3Rpb246ICBjYWxsaW5nXG4gICAgICB0aGUgaXRlcmF0b3JcJ3MgYGBfX25leHRfXygpYGAgbWV0aG9kIHdpbGwgY2F1c2UgdGhlIGZ1bmN0aW9uIHRvXG4gICAgICBleGVjdXRlIHVudGlsIGl0IHByb3ZpZGVzIGEgdmFsdWUgdXNpbmcgdGhlIGBgeWllbGRgYCBzdGF0ZW1lbnQuXG4gICAgICBXaGVuIHRoZSBmdW5jdGlvbiBleGVjdXRlcyBhIGBgcmV0dXJuYGAgc3RhdGVtZW50IG9yIGZhbGxzIG9mZlxuICAgICAgdGhlIGVuZCwgYSBgYFN0b3BJdGVyYXRpb25gYCBleGNlcHRpb24gaXMgcmFpc2VkIGFuZCB0aGVcbiAgICAgIGl0ZXJhdG9yIHdpbGwgaGF2ZSByZWFjaGVkIHRoZSBlbmQgb2YgdGhlIHNldCBvZiB2YWx1ZXMgdG8gYmVcbiAgICAgIHJldHVybmVkLlxuXG4gICBCdWlsdC1pbiBmdW5jdGlvbnNcbiAgICAgIEEgYnVpbHQtaW4gZnVuY3Rpb24gb2JqZWN0IGlzIGEgd3JhcHBlciBhcm91bmQgYSBDIGZ1bmN0aW9uLlxuICAgICAgRXhhbXBsZXMgb2YgYnVpbHQtaW4gZnVuY3Rpb25zIGFyZSBgYGxlbigpYGAgYW5kIGBgbWF0aC5zaW4oKWBgXG4gICAgICAoYGBtYXRoYGAgaXMgYSBzdGFuZGFyZCBidWlsdC1pbiBtb2R1bGUpLiBUaGUgbnVtYmVyIGFuZCB0eXBlIG9mXG4gICAgICB0aGUgYXJndW1lbnRzIGFyZSBkZXRlcm1pbmVkIGJ5IHRoZSBDIGZ1bmN0aW9uLiBTcGVjaWFsIHJlYWQtXG4gICAgICBvbmx5IGF0dHJpYnV0ZXM6IGBgX19kb2NfX2BgIGlzIHRoZSBmdW5jdGlvblwncyBkb2N1bWVudGF0aW9uXG4gICAgICBzdHJpbmcsIG9yIGBgTm9uZWBgIGlmIHVuYXZhaWxhYmxlOyBgYF9fbmFtZV9fYGAgaXMgdGhlXG4gICAgICBmdW5jdGlvblwncyBuYW1lOyBgYF9fc2VsZl9fYGAgaXMgc2V0IHRvIGBgTm9uZWBgIChidXQgc2VlIHRoZVxuICAgICAgbmV4dCBpdGVtKTsgYGBfX21vZHVsZV9fYGAgaXMgdGhlIG5hbWUgb2YgdGhlIG1vZHVsZSB0aGVcbiAgICAgIGZ1bmN0aW9uIHdhcyBkZWZpbmVkIGluIG9yIGBgTm9uZWBgIGlmIHVuYXZhaWxhYmxlLlxuXG4gICBCdWlsdC1pbiBtZXRob2RzXG4gICAgICBUaGlzIGlzIHJlYWxseSBhIGRpZmZlcmVudCBkaXNndWlzZSBvZiBhIGJ1aWx0LWluIGZ1bmN0aW9uLCB0aGlzXG4gICAgICB0aW1lIGNvbnRhaW5pbmcgYW4gb2JqZWN0IHBhc3NlZCB0byB0aGUgQyBmdW5jdGlvbiBhcyBhblxuICAgICAgaW1wbGljaXQgZXh0cmEgYXJndW1lbnQuICBBbiBleGFtcGxlIG9mIGEgYnVpbHQtaW4gbWV0aG9kIGlzXG4gICAgICBgYGFsaXN0LmFwcGVuZCgpYGAsIGFzc3VtaW5nICphbGlzdCogaXMgYSBsaXN0IG9iamVjdC4gSW4gdGhpc1xuICAgICAgY2FzZSwgdGhlIHNwZWNpYWwgcmVhZC1vbmx5IGF0dHJpYnV0ZSBgYF9fc2VsZl9fYGAgaXMgc2V0IHRvIHRoZVxuICAgICAgb2JqZWN0IGRlbm90ZWQgYnkgKmFsaXN0Ki5cblxuICAgQ2xhc3Nlc1xuICAgICAgQ2xhc3NlcyBhcmUgY2FsbGFibGUuICBUaGVzZSBvYmplY3RzIG5vcm1hbGx5IGFjdCBhcyBmYWN0b3JpZXNcbiAgICAgIGZvciBuZXcgaW5zdGFuY2VzIG9mIHRoZW1zZWx2ZXMsIGJ1dCB2YXJpYXRpb25zIGFyZSBwb3NzaWJsZSBmb3JcbiAgICAgIGNsYXNzIHR5cGVzIHRoYXQgb3ZlcnJpZGUgYGBfX25ld19fKClgYC4gIFRoZSBhcmd1bWVudHMgb2YgdGhlXG4gICAgICBjYWxsIGFyZSBwYXNzZWQgdG8gYGBfX25ld19fKClgYCBhbmQsIGluIHRoZSB0eXBpY2FsIGNhc2UsIHRvXG4gICAgICBgYF9faW5pdF9fKClgYCB0byBpbml0aWFsaXplIHRoZSBuZXcgaW5zdGFuY2UuXG5cbiAgIENsYXNzIEluc3RhbmNlc1xuICAgICAgSW5zdGFuY2VzIG9mIGFyYml0cmFyeSBjbGFzc2VzIGNhbiBiZSBtYWRlIGNhbGxhYmxlIGJ5IGRlZmluaW5nXG4gICAgICBhIGBgX19jYWxsX18oKWBgIG1ldGhvZCBpbiB0aGVpciBjbGFzcy5cblxuTW9kdWxlc1xuICAgTW9kdWxlcyBhcmUgaW1wb3J0ZWQgYnkgdGhlIGBgaW1wb3J0YGAgc3RhdGVtZW50IChzZWUgc2VjdGlvbiAqVGhlXG4gICBpbXBvcnQgc3RhdGVtZW50KikuIEEgbW9kdWxlIG9iamVjdCBoYXMgYSBuYW1lc3BhY2UgaW1wbGVtZW50ZWQgYnlcbiAgIGEgZGljdGlvbmFyeSBvYmplY3QgKHRoaXMgaXMgdGhlIGRpY3Rpb25hcnkgcmVmZXJlbmNlZCBieSB0aGVcbiAgIF9fZ2xvYmFsc19fIGF0dHJpYnV0ZSBvZiBmdW5jdGlvbnMgZGVmaW5lZCBpbiB0aGUgbW9kdWxlKS5cbiAgIEF0dHJpYnV0ZSByZWZlcmVuY2VzIGFyZSB0cmFuc2xhdGVkIHRvIGxvb2t1cHMgaW4gdGhpcyBkaWN0aW9uYXJ5LFxuICAgZS5nLiwgYGBtLnhgYCBpcyBlcXVpdmFsZW50IHRvIGBgbS5fX2RpY3RfX1sieCJdYGAuIEEgbW9kdWxlIG9iamVjdFxuICAgZG9lcyBub3QgY29udGFpbiB0aGUgY29kZSBvYmplY3QgdXNlZCB0byBpbml0aWFsaXplIHRoZSBtb2R1bGVcbiAgIChzaW5jZSBpdCBpc25cJ3QgbmVlZGVkIG9uY2UgdGhlIGluaXRpYWxpemF0aW9uIGlzIGRvbmUpLlxuXG4gICBBdHRyaWJ1dGUgYXNzaWdubWVudCB1cGRhdGVzIHRoZSBtb2R1bGVcJ3MgbmFtZXNwYWNlIGRpY3Rpb25hcnksXG4gICBlLmcuLCBgYG0ueCA9IDFgYCBpcyBlcXVpdmFsZW50IHRvIGBgbS5fX2RpY3RfX1sieCJdID0gMWBgLlxuXG4gICBTcGVjaWFsIHJlYWQtb25seSBhdHRyaWJ1dGU6IGBgX19kaWN0X19gYCBpcyB0aGUgbW9kdWxlXCdzIG5hbWVzcGFjZVxuICAgYXMgYSBkaWN0aW9uYXJ5IG9iamVjdC5cblxuICAgKipDUHl0aG9uIGltcGxlbWVudGF0aW9uIGRldGFpbDoqKiBCZWNhdXNlIG9mIHRoZSB3YXkgQ1B5dGhvblxuICAgY2xlYXJzIG1vZHVsZSBkaWN0aW9uYXJpZXMsIHRoZSBtb2R1bGUgZGljdGlvbmFyeSB3aWxsIGJlIGNsZWFyZWRcbiAgIHdoZW4gdGhlIG1vZHVsZSBmYWxscyBvdXQgb2Ygc2NvcGUgZXZlbiBpZiB0aGUgZGljdGlvbmFyeSBzdGlsbCBoYXNcbiAgIGxpdmUgcmVmZXJlbmNlcy4gIFRvIGF2b2lkIHRoaXMsIGNvcHkgdGhlIGRpY3Rpb25hcnkgb3Iga2VlcCB0aGVcbiAgIG1vZHVsZSBhcm91bmQgd2hpbGUgdXNpbmcgaXRzIGRpY3Rpb25hcnkgZGlyZWN0bHkuXG5cbiAgIFByZWRlZmluZWQgKHdyaXRhYmxlKSBhdHRyaWJ1dGVzOiBgYF9fbmFtZV9fYGAgaXMgdGhlIG1vZHVsZVwnc1xuICAgbmFtZTsgYGBfX2RvY19fYGAgaXMgdGhlIG1vZHVsZVwncyBkb2N1bWVudGF0aW9uIHN0cmluZywgb3IgYGBOb25lYGBcbiAgIGlmIHVuYXZhaWxhYmxlOyBgYF9fZmlsZV9fYGAgaXMgdGhlIHBhdGhuYW1lIG9mIHRoZSBmaWxlIGZyb20gd2hpY2hcbiAgIHRoZSBtb2R1bGUgd2FzIGxvYWRlZCwgaWYgaXQgd2FzIGxvYWRlZCBmcm9tIGEgZmlsZS4gVGhlXG4gICBgYF9fZmlsZV9fYGAgYXR0cmlidXRlIGlzIG5vdCBwcmVzZW50IGZvciBDIG1vZHVsZXMgdGhhdCBhcmVcbiAgIHN0YXRpY2FsbHkgbGlua2VkIGludG8gdGhlIGludGVycHJldGVyOyBmb3IgZXh0ZW5zaW9uIG1vZHVsZXNcbiAgIGxvYWRlZCBkeW5hbWljYWxseSBmcm9tIGEgc2hhcmVkIGxpYnJhcnksIGl0IGlzIHRoZSBwYXRobmFtZSBvZiB0aGVcbiAgIHNoYXJlZCBsaWJyYXJ5IGZpbGUuXG5cbkN1c3RvbSBjbGFzc2VzXG4gICBDdXN0b20gY2xhc3MgdHlwZXMgYXJlIHR5cGljYWxseSBjcmVhdGVkIGJ5IGNsYXNzIGRlZmluaXRpb25zIChzZWVcbiAgIHNlY3Rpb24gKkNsYXNzIGRlZmluaXRpb25zKikuICBBIGNsYXNzIGhhcyBhIG5hbWVzcGFjZSBpbXBsZW1lbnRlZFxuICAgYnkgYSBkaWN0aW9uYXJ5IG9iamVjdC4gQ2xhc3MgYXR0cmlidXRlIHJlZmVyZW5jZXMgYXJlIHRyYW5zbGF0ZWRcbiAgIHRvIGxvb2t1cHMgaW4gdGhpcyBkaWN0aW9uYXJ5LCBlLmcuLCBgYEMueGBgIGlzIHRyYW5zbGF0ZWQgdG9cbiAgIGBgQy5fX2RpY3RfX1sieCJdYGAgKGFsdGhvdWdoIHRoZXJlIGFyZSBhIG51bWJlciBvZiBob29rcyB3aGljaFxuICAgYWxsb3cgZm9yIG90aGVyIG1lYW5zIG9mIGxvY2F0aW5nIGF0dHJpYnV0ZXMpLiBXaGVuIHRoZSBhdHRyaWJ1dGVcbiAgIG5hbWUgaXMgbm90IGZvdW5kIHRoZXJlLCB0aGUgYXR0cmlidXRlIHNlYXJjaCBjb250aW51ZXMgaW4gdGhlIGJhc2VcbiAgIGNsYXNzZXMuIFRoaXMgc2VhcmNoIG9mIHRoZSBiYXNlIGNsYXNzZXMgdXNlcyB0aGUgQzMgbWV0aG9kXG4gICByZXNvbHV0aW9uIG9yZGVyIHdoaWNoIGJlaGF2ZXMgY29ycmVjdGx5IGV2ZW4gaW4gdGhlIHByZXNlbmNlIG9mXG4gICBcJ2RpYW1vbmRcJyBpbmhlcml0YW5jZSBzdHJ1Y3R1cmVzIHdoZXJlIHRoZXJlIGFyZSBtdWx0aXBsZVxuICAgaW5oZXJpdGFuY2UgcGF0aHMgbGVhZGluZyBiYWNrIHRvIGEgY29tbW9uIGFuY2VzdG9yLiBBZGRpdGlvbmFsXG4gICBkZXRhaWxzIG9uIHRoZSBDMyBNUk8gdXNlZCBieSBQeXRob24gY2FuIGJlIGZvdW5kIGluIHRoZVxuICAgZG9jdW1lbnRhdGlvbiBhY2NvbXBhbnlpbmcgdGhlIDIuMyByZWxlYXNlIGF0XG4gICBodHRwOi8vd3d3LnB5dGhvbi5vcmcvZG93bmxvYWQvcmVsZWFzZXMvMi4zL21yby8uXG5cbiAgIFdoZW4gYSBjbGFzcyBhdHRyaWJ1dGUgcmVmZXJlbmNlIChmb3IgY2xhc3MgYGBDYGAsIHNheSkgd291bGQgeWllbGRcbiAgIGEgY2xhc3MgbWV0aG9kIG9iamVjdCwgaXQgaXMgdHJhbnNmb3JtZWQgaW50byBhbiBpbnN0YW5jZSBtZXRob2RcbiAgIG9iamVjdCB3aG9zZSBgYF9fc2VsZl9fYGAgYXR0cmlidXRlcyBpcyBgYENgYC4gIFdoZW4gaXQgd291bGQgeWllbGRcbiAgIGEgc3RhdGljIG1ldGhvZCBvYmplY3QsIGl0IGlzIHRyYW5zZm9ybWVkIGludG8gdGhlIG9iamVjdCB3cmFwcGVkXG4gICBieSB0aGUgc3RhdGljIG1ldGhvZCBvYmplY3QuIFNlZSBzZWN0aW9uICpJbXBsZW1lbnRpbmcgRGVzY3JpcHRvcnMqXG4gICBmb3IgYW5vdGhlciB3YXkgaW4gd2hpY2ggYXR0cmlidXRlcyByZXRyaWV2ZWQgZnJvbSBhIGNsYXNzIG1heVxuICAgZGlmZmVyIGZyb20gdGhvc2UgYWN0dWFsbHkgY29udGFpbmVkIGluIGl0cyBgYF9fZGljdF9fYGAuXG5cbiAgIENsYXNzIGF0dHJpYnV0ZSBhc3NpZ25tZW50cyB1cGRhdGUgdGhlIGNsYXNzXCdzIGRpY3Rpb25hcnksIG5ldmVyXG4gICB0aGUgZGljdGlvbmFyeSBvZiBhIGJhc2UgY2xhc3MuXG5cbiAgIEEgY2xhc3Mgb2JqZWN0IGNhbiBiZSBjYWxsZWQgKHNlZSBhYm92ZSkgdG8geWllbGQgYSBjbGFzcyBpbnN0YW5jZVxuICAgKHNlZSBiZWxvdykuXG5cbiAgIFNwZWNpYWwgYXR0cmlidXRlczogYGBfX25hbWVfX2BgIGlzIHRoZSBjbGFzcyBuYW1lOyBgYF9fbW9kdWxlX19gYFxuICAgaXMgdGhlIG1vZHVsZSBuYW1lIGluIHdoaWNoIHRoZSBjbGFzcyB3YXMgZGVmaW5lZDsgYGBfX2RpY3RfX2BgIGlzXG4gICB0aGUgZGljdGlvbmFyeSBjb250YWluaW5nIHRoZSBjbGFzc1wncyBuYW1lc3BhY2U7IGBgX19iYXNlc19fYGAgaXMgYVxuICAgdHVwbGUgKHBvc3NpYmx5IGVtcHR5IG9yIGEgc2luZ2xldG9uKSBjb250YWluaW5nIHRoZSBiYXNlIGNsYXNzZXMsXG4gICBpbiB0aGUgb3JkZXIgb2YgdGhlaXIgb2NjdXJyZW5jZSBpbiB0aGUgYmFzZSBjbGFzcyBsaXN0O1xuICAgYGBfX2RvY19fYGAgaXMgdGhlIGNsYXNzXCdzIGRvY3VtZW50YXRpb24gc3RyaW5nLCBvciBOb25lIGlmXG4gICB1bmRlZmluZWQuXG5cbkNsYXNzIGluc3RhbmNlc1xuICAgQSBjbGFzcyBpbnN0YW5jZSBpcyBjcmVhdGVkIGJ5IGNhbGxpbmcgYSBjbGFzcyBvYmplY3QgKHNlZSBhYm92ZSkuXG4gICBBIGNsYXNzIGluc3RhbmNlIGhhcyBhIG5hbWVzcGFjZSBpbXBsZW1lbnRlZCBhcyBhIGRpY3Rpb25hcnkgd2hpY2hcbiAgIGlzIHRoZSBmaXJzdCBwbGFjZSBpbiB3aGljaCBhdHRyaWJ1dGUgcmVmZXJlbmNlcyBhcmUgc2VhcmNoZWQuXG4gICBXaGVuIGFuIGF0dHJpYnV0ZSBpcyBub3QgZm91bmQgdGhlcmUsIGFuZCB0aGUgaW5zdGFuY2VcJ3MgY2xhc3MgaGFzXG4gICBhbiBhdHRyaWJ1dGUgYnkgdGhhdCBuYW1lLCB0aGUgc2VhcmNoIGNvbnRpbnVlcyB3aXRoIHRoZSBjbGFzc1xuICAgYXR0cmlidXRlcy4gIElmIGEgY2xhc3MgYXR0cmlidXRlIGlzIGZvdW5kIHRoYXQgaXMgYSB1c2VyLWRlZmluZWRcbiAgIGZ1bmN0aW9uIG9iamVjdCwgaXQgaXMgdHJhbnNmb3JtZWQgaW50byBhbiBpbnN0YW5jZSBtZXRob2Qgb2JqZWN0XG4gICB3aG9zZSBgYF9fc2VsZl9fYGAgYXR0cmlidXRlIGlzIHRoZSBpbnN0YW5jZS4gIFN0YXRpYyBtZXRob2QgYW5kXG4gICBjbGFzcyBtZXRob2Qgb2JqZWN0cyBhcmUgYWxzbyB0cmFuc2Zvcm1lZDsgc2VlIGFib3ZlIHVuZGVyXG4gICAiQ2xhc3NlcyIuICBTZWUgc2VjdGlvbiAqSW1wbGVtZW50aW5nIERlc2NyaXB0b3JzKiBmb3IgYW5vdGhlciB3YXlcbiAgIGluIHdoaWNoIGF0dHJpYnV0ZXMgb2YgYSBjbGFzcyByZXRyaWV2ZWQgdmlhIGl0cyBpbnN0YW5jZXMgbWF5XG4gICBkaWZmZXIgZnJvbSB0aGUgb2JqZWN0cyBhY3R1YWxseSBzdG9yZWQgaW4gdGhlIGNsYXNzXCdzXG4gICBgYF9fZGljdF9fYGAuICBJZiBubyBjbGFzcyBhdHRyaWJ1dGUgaXMgZm91bmQsIGFuZCB0aGUgb2JqZWN0XCdzXG4gICBjbGFzcyBoYXMgYSBgYF9fZ2V0YXR0cl9fKClgYCBtZXRob2QsIHRoYXQgaXMgY2FsbGVkIHRvIHNhdGlzZnkgdGhlXG4gICBsb29rdXAuXG5cbiAgIEF0dHJpYnV0ZSBhc3NpZ25tZW50cyBhbmQgZGVsZXRpb25zIHVwZGF0ZSB0aGUgaW5zdGFuY2VcJ3NcbiAgIGRpY3Rpb25hcnksIG5ldmVyIGEgY2xhc3NcJ3MgZGljdGlvbmFyeS4gIElmIHRoZSBjbGFzcyBoYXMgYVxuICAgYGBfX3NldGF0dHJfXygpYGAgb3IgYGBfX2RlbGF0dHJfXygpYGAgbWV0aG9kLCB0aGlzIGlzIGNhbGxlZFxuICAgaW5zdGVhZCBvZiB1cGRhdGluZyB0aGUgaW5zdGFuY2UgZGljdGlvbmFyeSBkaXJlY3RseS5cblxuICAgQ2xhc3MgaW5zdGFuY2VzIGNhbiBwcmV0ZW5kIHRvIGJlIG51bWJlcnMsIHNlcXVlbmNlcywgb3IgbWFwcGluZ3NcbiAgIGlmIHRoZXkgaGF2ZSBtZXRob2RzIHdpdGggY2VydGFpbiBzcGVjaWFsIG5hbWVzLiAgU2VlIHNlY3Rpb25cbiAgICpTcGVjaWFsIG1ldGhvZCBuYW1lcyouXG5cbiAgIFNwZWNpYWwgYXR0cmlidXRlczogYGBfX2RpY3RfX2BgIGlzIHRoZSBhdHRyaWJ1dGUgZGljdGlvbmFyeTtcbiAgIGBgX19jbGFzc19fYGAgaXMgdGhlIGluc3RhbmNlXCdzIGNsYXNzLlxuXG5JL08gb2JqZWN0cyAoYWxzbyBrbm93biBhcyBmaWxlIG9iamVjdHMpXG4gICBBICpmaWxlIG9iamVjdCogcmVwcmVzZW50cyBhbiBvcGVuIGZpbGUuICBWYXJpb3VzIHNob3J0Y3V0cyBhcmVcbiAgIGF2YWlsYWJsZSB0byBjcmVhdGUgZmlsZSBvYmplY3RzOiB0aGUgYGBvcGVuKClgYCBidWlsdC1pbiBmdW5jdGlvbixcbiAgIGFuZCBhbHNvIGBgb3MucG9wZW4oKWBgLCBgYG9zLmZkb3BlbigpYGAsIGFuZCB0aGUgYGBtYWtlZmlsZSgpYGBcbiAgIG1ldGhvZCBvZiBzb2NrZXQgb2JqZWN0cyAoYW5kIHBlcmhhcHMgYnkgb3RoZXIgZnVuY3Rpb25zIG9yIG1ldGhvZHNcbiAgIHByb3ZpZGVkIGJ5IGV4dGVuc2lvbiBtb2R1bGVzKS5cblxuICAgVGhlIG9iamVjdHMgYGBzeXMuc3RkaW5gYCwgYGBzeXMuc3Rkb3V0YGAgYW5kIGBgc3lzLnN0ZGVycmBgIGFyZVxuICAgaW5pdGlhbGl6ZWQgdG8gZmlsZSBvYmplY3RzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGludGVycHJldGVyXCdzXG4gICBzdGFuZGFyZCBpbnB1dCwgb3V0cHV0IGFuZCBlcnJvciBzdHJlYW1zOyB0aGV5IGFyZSBhbGwgb3BlbiBpbiB0ZXh0XG4gICBtb2RlIGFuZCB0aGVyZWZvcmUgZm9sbG93IHRoZSBpbnRlcmZhY2UgZGVmaW5lZCBieSB0aGVcbiAgIGBgaW8uVGV4dElPQmFzZWBgIGFic3RyYWN0IGNsYXNzLlxuXG5JbnRlcm5hbCB0eXBlc1xuICAgQSBmZXcgdHlwZXMgdXNlZCBpbnRlcm5hbGx5IGJ5IHRoZSBpbnRlcnByZXRlciBhcmUgZXhwb3NlZCB0byB0aGVcbiAgIHVzZXIuIFRoZWlyIGRlZmluaXRpb25zIG1heSBjaGFuZ2Ugd2l0aCBmdXR1cmUgdmVyc2lvbnMgb2YgdGhlXG4gICBpbnRlcnByZXRlciwgYnV0IHRoZXkgYXJlIG1lbnRpb25lZCBoZXJlIGZvciBjb21wbGV0ZW5lc3MuXG5cbiAgIENvZGUgb2JqZWN0c1xuICAgICAgQ29kZSBvYmplY3RzIHJlcHJlc2VudCAqYnl0ZS1jb21waWxlZCogZXhlY3V0YWJsZSBQeXRob24gY29kZSxcbiAgICAgIG9yICpieXRlY29kZSouIFRoZSBkaWZmZXJlbmNlIGJldHdlZW4gYSBjb2RlIG9iamVjdCBhbmQgYVxuICAgICAgZnVuY3Rpb24gb2JqZWN0IGlzIHRoYXQgdGhlIGZ1bmN0aW9uIG9iamVjdCBjb250YWlucyBhbiBleHBsaWNpdFxuICAgICAgcmVmZXJlbmNlIHRvIHRoZSBmdW5jdGlvblwncyBnbG9iYWxzICh0aGUgbW9kdWxlIGluIHdoaWNoIGl0IHdhc1xuICAgICAgZGVmaW5lZCksIHdoaWxlIGEgY29kZSBvYmplY3QgY29udGFpbnMgbm8gY29udGV4dDsgYWxzbyB0aGVcbiAgICAgIGRlZmF1bHQgYXJndW1lbnQgdmFsdWVzIGFyZSBzdG9yZWQgaW4gdGhlIGZ1bmN0aW9uIG9iamVjdCwgbm90XG4gICAgICBpbiB0aGUgY29kZSBvYmplY3QgKGJlY2F1c2UgdGhleSByZXByZXNlbnQgdmFsdWVzIGNhbGN1bGF0ZWQgYXRcbiAgICAgIHJ1bi10aW1lKS4gIFVubGlrZSBmdW5jdGlvbiBvYmplY3RzLCBjb2RlIG9iamVjdHMgYXJlIGltbXV0YWJsZVxuICAgICAgYW5kIGNvbnRhaW4gbm8gcmVmZXJlbmNlcyAoZGlyZWN0bHkgb3IgaW5kaXJlY3RseSkgdG8gbXV0YWJsZVxuICAgICAgb2JqZWN0cy5cblxuICAgICAgU3BlY2lhbCByZWFkLW9ubHkgYXR0cmlidXRlczogYGBjb19uYW1lYGAgZ2l2ZXMgdGhlIGZ1bmN0aW9uXG4gICAgICBuYW1lOyBgYGNvX2FyZ2NvdW50YGAgaXMgdGhlIG51bWJlciBvZiBwb3NpdGlvbmFsIGFyZ3VtZW50c1xuICAgICAgKGluY2x1ZGluZyBhcmd1bWVudHMgd2l0aCBkZWZhdWx0IHZhbHVlcyk7IGBgY29fbmxvY2Fsc2BgIGlzIHRoZVxuICAgICAgbnVtYmVyIG9mIGxvY2FsIHZhcmlhYmxlcyB1c2VkIGJ5IHRoZSBmdW5jdGlvbiAoaW5jbHVkaW5nXG4gICAgICBhcmd1bWVudHMpOyBgYGNvX3Zhcm5hbWVzYGAgaXMgYSB0dXBsZSBjb250YWluaW5nIHRoZSBuYW1lcyBvZlxuICAgICAgdGhlIGxvY2FsIHZhcmlhYmxlcyAoc3RhcnRpbmcgd2l0aCB0aGUgYXJndW1lbnQgbmFtZXMpO1xuICAgICAgYGBjb19jZWxsdmFyc2BgIGlzIGEgdHVwbGUgY29udGFpbmluZyB0aGUgbmFtZXMgb2YgbG9jYWxcbiAgICAgIHZhcmlhYmxlcyB0aGF0IGFyZSByZWZlcmVuY2VkIGJ5IG5lc3RlZCBmdW5jdGlvbnM7XG4gICAgICBgYGNvX2ZyZWV2YXJzYGAgaXMgYSB0dXBsZSBjb250YWluaW5nIHRoZSBuYW1lcyBvZiBmcmVlXG4gICAgICB2YXJpYWJsZXM7IGBgY29fY29kZWBgIGlzIGEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgc2VxdWVuY2Ugb2ZcbiAgICAgIGJ5dGVjb2RlIGluc3RydWN0aW9uczsgYGBjb19jb25zdHNgYCBpcyBhIHR1cGxlIGNvbnRhaW5pbmcgdGhlXG4gICAgICBsaXRlcmFscyB1c2VkIGJ5IHRoZSBieXRlY29kZTsgYGBjb19uYW1lc2BgIGlzIGEgdHVwbGVcbiAgICAgIGNvbnRhaW5pbmcgdGhlIG5hbWVzIHVzZWQgYnkgdGhlIGJ5dGVjb2RlOyBgYGNvX2ZpbGVuYW1lYGAgaXNcbiAgICAgIHRoZSBmaWxlbmFtZSBmcm9tIHdoaWNoIHRoZSBjb2RlIHdhcyBjb21waWxlZDtcbiAgICAgIGBgY29fZmlyc3RsaW5lbm9gYCBpcyB0aGUgZmlyc3QgbGluZSBudW1iZXIgb2YgdGhlIGZ1bmN0aW9uO1xuICAgICAgYGBjb19sbm90YWJgYCBpcyBhIHN0cmluZyBlbmNvZGluZyB0aGUgbWFwcGluZyBmcm9tIGJ5dGVjb2RlXG4gICAgICBvZmZzZXRzIHRvIGxpbmUgbnVtYmVycyAoZm9yIGRldGFpbHMgc2VlIHRoZSBzb3VyY2UgY29kZSBvZiB0aGVcbiAgICAgIGludGVycHJldGVyKTsgYGBjb19zdGFja3NpemVgYCBpcyB0aGUgcmVxdWlyZWQgc3RhY2sgc2l6ZVxuICAgICAgKGluY2x1ZGluZyBsb2NhbCB2YXJpYWJsZXMpOyBgYGNvX2ZsYWdzYGAgaXMgYW4gaW50ZWdlciBlbmNvZGluZ1xuICAgICAgYSBudW1iZXIgb2YgZmxhZ3MgZm9yIHRoZSBpbnRlcnByZXRlci5cblxuICAgICAgVGhlIGZvbGxvd2luZyBmbGFnIGJpdHMgYXJlIGRlZmluZWQgZm9yIGBgY29fZmxhZ3NgYDogYml0XG4gICAgICBgYDB4MDRgYCBpcyBzZXQgaWYgdGhlIGZ1bmN0aW9uIHVzZXMgdGhlIGBgKmFyZ3VtZW50c2BgIHN5bnRheFxuICAgICAgdG8gYWNjZXB0IGFuIGFyYml0cmFyeSBudW1iZXIgb2YgcG9zaXRpb25hbCBhcmd1bWVudHM7IGJpdFxuICAgICAgYGAweDA4YGAgaXMgc2V0IGlmIHRoZSBmdW5jdGlvbiB1c2VzIHRoZSBgYCoqa2V5d29yZHNgYCBzeW50YXhcbiAgICAgIHRvIGFjY2VwdCBhcmJpdHJhcnkga2V5d29yZCBhcmd1bWVudHM7IGJpdCBgYDB4MjBgYCBpcyBzZXQgaWZcbiAgICAgIHRoZSBmdW5jdGlvbiBpcyBhIGdlbmVyYXRvci5cblxuICAgICAgRnV0dXJlIGZlYXR1cmUgZGVjbGFyYXRpb25zIChgYGZyb20gX19mdXR1cmVfXyBpbXBvcnRcbiAgICAgIGRpdmlzaW9uYGApIGFsc28gdXNlIGJpdHMgaW4gYGBjb19mbGFnc2BgIHRvIGluZGljYXRlIHdoZXRoZXIgYVxuICAgICAgY29kZSBvYmplY3Qgd2FzIGNvbXBpbGVkIHdpdGggYSBwYXJ0aWN1bGFyIGZlYXR1cmUgZW5hYmxlZDogYml0XG4gICAgICBgYDB4MjAwMGBgIGlzIHNldCBpZiB0aGUgZnVuY3Rpb24gd2FzIGNvbXBpbGVkIHdpdGggZnV0dXJlXG4gICAgICBkaXZpc2lvbiBlbmFibGVkOyBiaXRzIGBgMHgxMGBgIGFuZCBgYDB4MTAwMGBgIHdlcmUgdXNlZCBpblxuICAgICAgZWFybGllciB2ZXJzaW9ucyBvZiBQeXRob24uXG5cbiAgICAgIE90aGVyIGJpdHMgaW4gYGBjb19mbGFnc2BgIGFyZSByZXNlcnZlZCBmb3IgaW50ZXJuYWwgdXNlLlxuXG4gICAgICBJZiBhIGNvZGUgb2JqZWN0IHJlcHJlc2VudHMgYSBmdW5jdGlvbiwgdGhlIGZpcnN0IGl0ZW0gaW5cbiAgICAgIGBgY29fY29uc3RzYGAgaXMgdGhlIGRvY3VtZW50YXRpb24gc3RyaW5nIG9mIHRoZSBmdW5jdGlvbiwgb3JcbiAgICAgIGBgTm9uZWBgIGlmIHVuZGVmaW5lZC5cblxuICAgRnJhbWUgb2JqZWN0c1xuICAgICAgRnJhbWUgb2JqZWN0cyByZXByZXNlbnQgZXhlY3V0aW9uIGZyYW1lcy4gIFRoZXkgbWF5IG9jY3VyIGluXG4gICAgICB0cmFjZWJhY2sgb2JqZWN0cyAoc2VlIGJlbG93KS5cblxuICAgICAgU3BlY2lhbCByZWFkLW9ubHkgYXR0cmlidXRlczogYGBmX2JhY2tgYCBpcyB0byB0aGUgcHJldmlvdXNcbiAgICAgIHN0YWNrIGZyYW1lICh0b3dhcmRzIHRoZSBjYWxsZXIpLCBvciBgYE5vbmVgYCBpZiB0aGlzIGlzIHRoZVxuICAgICAgYm90dG9tIHN0YWNrIGZyYW1lOyBgYGZfY29kZWBgIGlzIHRoZSBjb2RlIG9iamVjdCBiZWluZyBleGVjdXRlZFxuICAgICAgaW4gdGhpcyBmcmFtZTsgYGBmX2xvY2Fsc2BgIGlzIHRoZSBkaWN0aW9uYXJ5IHVzZWQgdG8gbG9vayB1cFxuICAgICAgbG9jYWwgdmFyaWFibGVzOyBgYGZfZ2xvYmFsc2BgIGlzIHVzZWQgZm9yIGdsb2JhbCB2YXJpYWJsZXM7XG4gICAgICBgYGZfYnVpbHRpbnNgYCBpcyB1c2VkIGZvciBidWlsdC1pbiAoaW50cmluc2ljKSBuYW1lcztcbiAgICAgIGBgZl9sYXN0aWBgIGdpdmVzIHRoZSBwcmVjaXNlIGluc3RydWN0aW9uICh0aGlzIGlzIGFuIGluZGV4IGludG9cbiAgICAgIHRoZSBieXRlY29kZSBzdHJpbmcgb2YgdGhlIGNvZGUgb2JqZWN0KS5cblxuICAgICAgU3BlY2lhbCB3cml0YWJsZSBhdHRyaWJ1dGVzOiBgYGZfdHJhY2VgYCwgaWYgbm90IGBgTm9uZWBgLCBpcyBhXG4gICAgICBmdW5jdGlvbiBjYWxsZWQgYXQgdGhlIHN0YXJ0IG9mIGVhY2ggc291cmNlIGNvZGUgbGluZSAodGhpcyBpc1xuICAgICAgdXNlZCBieSB0aGUgZGVidWdnZXIpOyBgYGZfbGluZW5vYGAgaXMgdGhlIGN1cnJlbnQgbGluZSBudW1iZXJcbiAgICAgIG9mIHRoZSBmcmFtZSAtLS0gd3JpdGluZyB0byB0aGlzIGZyb20gd2l0aGluIGEgdHJhY2UgZnVuY3Rpb25cbiAgICAgIGp1bXBzIHRvIHRoZSBnaXZlbiBsaW5lIChvbmx5IGZvciB0aGUgYm90dG9tLW1vc3QgZnJhbWUpLiAgQVxuICAgICAgZGVidWdnZXIgY2FuIGltcGxlbWVudCBhIEp1bXAgY29tbWFuZCAoYWthIFNldCBOZXh0IFN0YXRlbWVudClcbiAgICAgIGJ5IHdyaXRpbmcgdG8gZl9saW5lbm8uXG5cbiAgIFRyYWNlYmFjayBvYmplY3RzXG4gICAgICBUcmFjZWJhY2sgb2JqZWN0cyByZXByZXNlbnQgYSBzdGFjayB0cmFjZSBvZiBhbiBleGNlcHRpb24uICBBXG4gICAgICB0cmFjZWJhY2sgb2JqZWN0IGlzIGNyZWF0ZWQgd2hlbiBhbiBleGNlcHRpb24gb2NjdXJzLiAgV2hlbiB0aGVcbiAgICAgIHNlYXJjaCBmb3IgYW4gZXhjZXB0aW9uIGhhbmRsZXIgdW53aW5kcyB0aGUgZXhlY3V0aW9uIHN0YWNrLCBhdFxuICAgICAgZWFjaCB1bndvdW5kIGxldmVsIGEgdHJhY2ViYWNrIG9iamVjdCBpcyBpbnNlcnRlZCBpbiBmcm9udCBvZlxuICAgICAgdGhlIGN1cnJlbnQgdHJhY2ViYWNrLiAgV2hlbiBhbiBleGNlcHRpb24gaGFuZGxlciBpcyBlbnRlcmVkLFxuICAgICAgdGhlIHN0YWNrIHRyYWNlIGlzIG1hZGUgYXZhaWxhYmxlIHRvIHRoZSBwcm9ncmFtLiAoU2VlIHNlY3Rpb25cbiAgICAgICpUaGUgdHJ5IHN0YXRlbWVudCouKSBJdCBpcyBhY2Nlc3NpYmxlIGFzIHRoZSB0aGlyZCBpdGVtIG9mIHRoZVxuICAgICAgdHVwbGUgcmV0dXJuZWQgYnkgYGBzeXMuZXhjX2luZm8oKWBgLiBXaGVuIHRoZSBwcm9ncmFtIGNvbnRhaW5zXG4gICAgICBubyBzdWl0YWJsZSBoYW5kbGVyLCB0aGUgc3RhY2sgdHJhY2UgaXMgd3JpdHRlbiAobmljZWx5XG4gICAgICBmb3JtYXR0ZWQpIHRvIHRoZSBzdGFuZGFyZCBlcnJvciBzdHJlYW07IGlmIHRoZSBpbnRlcnByZXRlciBpc1xuICAgICAgaW50ZXJhY3RpdmUsIGl0IGlzIGFsc28gbWFkZSBhdmFpbGFibGUgdG8gdGhlIHVzZXIgYXNcbiAgICAgIGBgc3lzLmxhc3RfdHJhY2ViYWNrYGAuXG5cbiAgICAgIFNwZWNpYWwgcmVhZC1vbmx5IGF0dHJpYnV0ZXM6IGBgdGJfbmV4dGBgIGlzIHRoZSBuZXh0IGxldmVsIGluXG4gICAgICB0aGUgc3RhY2sgdHJhY2UgKHRvd2FyZHMgdGhlIGZyYW1lIHdoZXJlIHRoZSBleGNlcHRpb25cbiAgICAgIG9jY3VycmVkKSwgb3IgYGBOb25lYGAgaWYgdGhlcmUgaXMgbm8gbmV4dCBsZXZlbDsgYGB0Yl9mcmFtZWBgXG4gICAgICBwb2ludHMgdG8gdGhlIGV4ZWN1dGlvbiBmcmFtZSBvZiB0aGUgY3VycmVudCBsZXZlbDtcbiAgICAgIGBgdGJfbGluZW5vYGAgZ2l2ZXMgdGhlIGxpbmUgbnVtYmVyIHdoZXJlIHRoZSBleGNlcHRpb25cbiAgICAgIG9jY3VycmVkOyBgYHRiX2xhc3RpYGAgaW5kaWNhdGVzIHRoZSBwcmVjaXNlIGluc3RydWN0aW9uLiAgVGhlXG4gICAgICBsaW5lIG51bWJlciBhbmQgbGFzdCBpbnN0cnVjdGlvbiBpbiB0aGUgdHJhY2ViYWNrIG1heSBkaWZmZXJcbiAgICAgIGZyb20gdGhlIGxpbmUgbnVtYmVyIG9mIGl0cyBmcmFtZSBvYmplY3QgaWYgdGhlIGV4Y2VwdGlvblxuICAgICAgb2NjdXJyZWQgaW4gYSBgYHRyeWBgIHN0YXRlbWVudCB3aXRoIG5vIG1hdGNoaW5nIGV4Y2VwdCBjbGF1c2VcbiAgICAgIG9yIHdpdGggYSBmaW5hbGx5IGNsYXVzZS5cblxuICAgU2xpY2Ugb2JqZWN0c1xuICAgICAgU2xpY2Ugb2JqZWN0cyBhcmUgdXNlZCB0byByZXByZXNlbnQgc2xpY2VzIGZvciBgYF9fZ2V0aXRlbV9fKClgYFxuICAgICAgbWV0aG9kcy4gIFRoZXkgYXJlIGFsc28gY3JlYXRlZCBieSB0aGUgYnVpbHQtaW4gYGBzbGljZSgpYGBcbiAgICAgIGZ1bmN0aW9uLlxuXG4gICAgICBTcGVjaWFsIHJlYWQtb25seSBhdHRyaWJ1dGVzOiBgYHN0YXJ0YGAgaXMgdGhlIGxvd2VyIGJvdW5kO1xuICAgICAgYGBzdG9wYGAgaXMgdGhlIHVwcGVyIGJvdW5kOyBgYHN0ZXBgYCBpcyB0aGUgc3RlcCB2YWx1ZTsgZWFjaCBpc1xuICAgICAgYGBOb25lYGAgaWYgb21pdHRlZC4gVGhlc2UgYXR0cmlidXRlcyBjYW4gaGF2ZSBhbnkgdHlwZS5cblxuICAgICAgU2xpY2Ugb2JqZWN0cyBzdXBwb3J0IG9uZSBtZXRob2Q6XG5cbiAgICAgIHNsaWNlLmluZGljZXMoc2VsZiwgbGVuZ3RoKVxuXG4gICAgICAgICBUaGlzIG1ldGhvZCB0YWtlcyBhIHNpbmdsZSBpbnRlZ2VyIGFyZ3VtZW50ICpsZW5ndGgqIGFuZFxuICAgICAgICAgY29tcHV0ZXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNsaWNlIHRoYXQgdGhlIHNsaWNlIG9iamVjdFxuICAgICAgICAgd291bGQgZGVzY3JpYmUgaWYgYXBwbGllZCB0byBhIHNlcXVlbmNlIG9mICpsZW5ndGgqIGl0ZW1zLlxuICAgICAgICAgSXQgcmV0dXJucyBhIHR1cGxlIG9mIHRocmVlIGludGVnZXJzOyByZXNwZWN0aXZlbHkgdGhlc2UgYXJlXG4gICAgICAgICB0aGUgKnN0YXJ0KiBhbmQgKnN0b3AqIGluZGljZXMgYW5kIHRoZSAqc3RlcCogb3Igc3RyaWRlXG4gICAgICAgICBsZW5ndGggb2YgdGhlIHNsaWNlLiBNaXNzaW5nIG9yIG91dC1vZi1ib3VuZHMgaW5kaWNlcyBhcmVcbiAgICAgICAgIGhhbmRsZWQgaW4gYSBtYW5uZXIgY29uc2lzdGVudCB3aXRoIHJlZ3VsYXIgc2xpY2VzLlxuXG4gICBTdGF0aWMgbWV0aG9kIG9iamVjdHNcbiAgICAgIFN0YXRpYyBtZXRob2Qgb2JqZWN0cyBwcm92aWRlIGEgd2F5IG9mIGRlZmVhdGluZyB0aGVcbiAgICAgIHRyYW5zZm9ybWF0aW9uIG9mIGZ1bmN0aW9uIG9iamVjdHMgdG8gbWV0aG9kIG9iamVjdHMgZGVzY3JpYmVkXG4gICAgICBhYm92ZS4gQSBzdGF0aWMgbWV0aG9kIG9iamVjdCBpcyBhIHdyYXBwZXIgYXJvdW5kIGFueSBvdGhlclxuICAgICAgb2JqZWN0LCB1c3VhbGx5IGEgdXNlci1kZWZpbmVkIG1ldGhvZCBvYmplY3QuIFdoZW4gYSBzdGF0aWNcbiAgICAgIG1ldGhvZCBvYmplY3QgaXMgcmV0cmlldmVkIGZyb20gYSBjbGFzcyBvciBhIGNsYXNzIGluc3RhbmNlLCB0aGVcbiAgICAgIG9iamVjdCBhY3R1YWxseSByZXR1cm5lZCBpcyB0aGUgd3JhcHBlZCBvYmplY3QsIHdoaWNoIGlzIG5vdFxuICAgICAgc3ViamVjdCB0byBhbnkgZnVydGhlciB0cmFuc2Zvcm1hdGlvbi4gU3RhdGljIG1ldGhvZCBvYmplY3RzIGFyZVxuICAgICAgbm90IHRoZW1zZWx2ZXMgY2FsbGFibGUsIGFsdGhvdWdoIHRoZSBvYmplY3RzIHRoZXkgd3JhcCB1c3VhbGx5XG4gICAgICBhcmUuIFN0YXRpYyBtZXRob2Qgb2JqZWN0cyBhcmUgY3JlYXRlZCBieSB0aGUgYnVpbHQtaW5cbiAgICAgIGBgc3RhdGljbWV0aG9kKClgYCBjb25zdHJ1Y3Rvci5cblxuICAgQ2xhc3MgbWV0aG9kIG9iamVjdHNcbiAgICAgIEEgY2xhc3MgbWV0aG9kIG9iamVjdCwgbGlrZSBhIHN0YXRpYyBtZXRob2Qgb2JqZWN0LCBpcyBhIHdyYXBwZXJcbiAgICAgIGFyb3VuZCBhbm90aGVyIG9iamVjdCB0aGF0IGFsdGVycyB0aGUgd2F5IGluIHdoaWNoIHRoYXQgb2JqZWN0XG4gICAgICBpcyByZXRyaWV2ZWQgZnJvbSBjbGFzc2VzIGFuZCBjbGFzcyBpbnN0YW5jZXMuIFRoZSBiZWhhdmlvdXIgb2ZcbiAgICAgIGNsYXNzIG1ldGhvZCBvYmplY3RzIHVwb24gc3VjaCByZXRyaWV2YWwgaXMgZGVzY3JpYmVkIGFib3ZlLFxuICAgICAgdW5kZXIgIlVzZXItZGVmaW5lZCBtZXRob2RzIi4gQ2xhc3MgbWV0aG9kIG9iamVjdHMgYXJlIGNyZWF0ZWRcbiAgICAgIGJ5IHRoZSBidWlsdC1pbiBgYGNsYXNzbWV0aG9kKClgYCBjb25zdHJ1Y3Rvci5cbicsCiAgJ3R5cGVzZnVuY3Rpb25zJzogJ1xuRnVuY3Rpb25zXG4qKioqKioqKipcblxuRnVuY3Rpb24gb2JqZWN0cyBhcmUgY3JlYXRlZCBieSBmdW5jdGlvbiBkZWZpbml0aW9ucy4gIFRoZSBvbmx5XG5vcGVyYXRpb24gb24gYSBmdW5jdGlvbiBvYmplY3QgaXMgdG8gY2FsbCBpdDogYGBmdW5jKGFyZ3VtZW50LWxpc3QpYGAuXG5cblRoZXJlIGFyZSByZWFsbHkgdHdvIGZsYXZvcnMgb2YgZnVuY3Rpb24gb2JqZWN0czogYnVpbHQtaW4gZnVuY3Rpb25zXG5hbmQgdXNlci1kZWZpbmVkIGZ1bmN0aW9ucy4gIEJvdGggc3VwcG9ydCB0aGUgc2FtZSBvcGVyYXRpb24gKHRvIGNhbGxcbnRoZSBmdW5jdGlvbiksIGJ1dCB0aGUgaW1wbGVtZW50YXRpb24gaXMgZGlmZmVyZW50LCBoZW5jZSB0aGVcbmRpZmZlcmVudCBvYmplY3QgdHlwZXMuXG5cblNlZSAqRnVuY3Rpb24gZGVmaW5pdGlvbnMqIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuJywKICAndHlwZXNtYXBwaW5nJzogJ1xuTWFwcGluZyBUeXBlcyAtLS0gYGBkaWN0YGBcbioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkEgKm1hcHBpbmcqIG9iamVjdCBtYXBzICpoYXNoYWJsZSogdmFsdWVzIHRvIGFyYml0cmFyeSBvYmplY3RzLlxuTWFwcGluZ3MgYXJlIG11dGFibGUgb2JqZWN0cy4gIFRoZXJlIGlzIGN1cnJlbnRseSBvbmx5IG9uZSBzdGFuZGFyZFxubWFwcGluZyB0eXBlLCB0aGUgKmRpY3Rpb25hcnkqLiAgKEZvciBvdGhlciBjb250YWluZXJzIHNlZSB0aGUgYnVpbHRcbmluIGBgbGlzdGBgLCBgYHNldGBgLCBhbmQgYGB0dXBsZWBgIGNsYXNzZXMsIGFuZCB0aGUgYGBjb2xsZWN0aW9uc2BgXG5tb2R1bGUuKVxuXG5BIGRpY3Rpb25hcnlcJ3Mga2V5cyBhcmUgKmFsbW9zdCogYXJiaXRyYXJ5IHZhbHVlcy4gIFZhbHVlcyB0aGF0IGFyZVxubm90ICpoYXNoYWJsZSosIHRoYXQgaXMsIHZhbHVlcyBjb250YWluaW5nIGxpc3RzLCBkaWN0aW9uYXJpZXMgb3Jcbm90aGVyIG11dGFibGUgdHlwZXMgKHRoYXQgYXJlIGNvbXBhcmVkIGJ5IHZhbHVlIHJhdGhlciB0aGFuIGJ5IG9iamVjdFxuaWRlbnRpdHkpIG1heSBub3QgYmUgdXNlZCBhcyBrZXlzLiAgTnVtZXJpYyB0eXBlcyB1c2VkIGZvciBrZXlzIG9iZXlcbnRoZSBub3JtYWwgcnVsZXMgZm9yIG51bWVyaWMgY29tcGFyaXNvbjogaWYgdHdvIG51bWJlcnMgY29tcGFyZSBlcXVhbFxuKHN1Y2ggYXMgYGAxYGAgYW5kIGBgMS4wYGApIHRoZW4gdGhleSBjYW4gYmUgdXNlZCBpbnRlcmNoYW5nZWFibHkgdG9cbmluZGV4IHRoZSBzYW1lIGRpY3Rpb25hcnkgZW50cnkuICAoTm90ZSBob3dldmVyLCB0aGF0IHNpbmNlIGNvbXB1dGVyc1xuc3RvcmUgZmxvYXRpbmctcG9pbnQgbnVtYmVycyBhcyBhcHByb3hpbWF0aW9ucyBpdCBpcyB1c3VhbGx5IHVud2lzZSB0b1xudXNlIHRoZW0gYXMgZGljdGlvbmFyeSBrZXlzLilcblxuRGljdGlvbmFyaWVzIGNhbiBiZSBjcmVhdGVkIGJ5IHBsYWNpbmcgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZlxuYGBrZXk6IHZhbHVlYGAgcGFpcnMgd2l0aGluIGJyYWNlcywgZm9yIGV4YW1wbGU6IGBge1wnamFja1wnOiA0MDk4LFxuXCdzam9lcmRcJzogNDEyN31gYCBvciBgYHs0MDk4OiBcJ2phY2tcJywgNDEyNzogXCdzam9lcmRcJ31gYCwgb3IgYnkgdGhlXG5gYGRpY3RgYCBjb25zdHJ1Y3Rvci5cblxuY2xhc3MgY2xhc3MgZGljdChbYXJnXSlcblxuICAgUmV0dXJuIGEgbmV3IGRpY3Rpb25hcnkgaW5pdGlhbGl6ZWQgZnJvbSBhbiBvcHRpb25hbCBwb3NpdGlvbmFsXG4gICBhcmd1bWVudCBvciBmcm9tIGEgc2V0IG9mIGtleXdvcmQgYXJndW1lbnRzLiAgSWYgbm8gYXJndW1lbnRzIGFyZVxuICAgZ2l2ZW4sIHJldHVybiBhIG5ldyBlbXB0eSBkaWN0aW9uYXJ5LiAgSWYgdGhlIHBvc2l0aW9uYWwgYXJndW1lbnRcbiAgICphcmcqIGlzIGEgbWFwcGluZyBvYmplY3QsIHJldHVybiBhIGRpY3Rpb25hcnkgbWFwcGluZyB0aGUgc2FtZVxuICAga2V5cyB0byB0aGUgc2FtZSB2YWx1ZXMgYXMgZG9lcyB0aGUgbWFwcGluZyBvYmplY3QuICBPdGhlcndpc2UgdGhlXG4gICBwb3NpdGlvbmFsIGFyZ3VtZW50IG11c3QgYmUgYSBzZXF1ZW5jZSwgYSBjb250YWluZXIgdGhhdCBzdXBwb3J0c1xuICAgaXRlcmF0aW9uLCBvciBhbiBpdGVyYXRvciBvYmplY3QuICBUaGUgZWxlbWVudHMgb2YgdGhlIGFyZ3VtZW50XG4gICBtdXN0IGVhY2ggYWxzbyBiZSBvZiBvbmUgb2YgdGhvc2Uga2luZHMsIGFuZCBlYWNoIG11c3QgaW4gdHVyblxuICAgY29udGFpbiBleGFjdGx5IHR3byBvYmplY3RzLiAgVGhlIGZpcnN0IGlzIHVzZWQgYXMgYSBrZXkgaW4gdGhlIG5ld1xuICAgZGljdGlvbmFyeSwgYW5kIHRoZSBzZWNvbmQgYXMgdGhlIGtleVwncyB2YWx1ZS4gIElmIGEgZ2l2ZW4ga2V5IGlzXG4gICBzZWVuIG1vcmUgdGhhbiBvbmNlLCB0aGUgbGFzdCB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggaXQgaXMgcmV0YWluZWRcbiAgIGluIHRoZSBuZXcgZGljdGlvbmFyeS5cblxuICAgSWYga2V5d29yZCBhcmd1bWVudHMgYXJlIGdpdmVuLCB0aGUga2V5d29yZHMgdGhlbXNlbHZlcyB3aXRoIHRoZWlyXG4gICBhc3NvY2lhdGVkIHZhbHVlcyBhcmUgYWRkZWQgYXMgaXRlbXMgdG8gdGhlIGRpY3Rpb25hcnkuICBJZiBhIGtleVxuICAgaXMgc3BlY2lmaWVkIGJvdGggaW4gdGhlIHBvc2l0aW9uYWwgYXJndW1lbnQgYW5kIGFzIGEga2V5d29yZFxuICAgYXJndW1lbnQsIHRoZSB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggdGhlIGtleXdvcmQgaXMgcmV0YWluZWQgaW4gdGhlXG4gICBkaWN0aW9uYXJ5LiAgRm9yIGV4YW1wbGUsIHRoZXNlIGFsbCByZXR1cm4gYSBkaWN0aW9uYXJ5IGVxdWFsIHRvXG4gICBgYHsib25lIjogMSwgInR3byI6IDJ9YGA6XG5cbiAgICogYGBkaWN0KG9uZT0xLCB0d289MilgYFxuXG4gICAqIGBgZGljdCh7XCdvbmVcJzogMSwgXCd0d29cJzogMn0pYGBcblxuICAgKiBgYGRpY3QoemlwKChcJ29uZVwnLCBcJ3R3b1wnKSwgKDEsIDIpKSlgYFxuXG4gICAqIGBgZGljdChbW1wndHdvXCcsIDJdLCBbXCdvbmVcJywgMV1dKWBgXG5cbiAgIFRoZSBmaXJzdCBleGFtcGxlIG9ubHkgd29ya3MgZm9yIGtleXMgdGhhdCBhcmUgdmFsaWQgUHl0aG9uXG4gICBpZGVudGlmaWVyczsgdGhlIG90aGVycyB3b3JrIHdpdGggYW55IHZhbGlkIGtleXMuXG5cbiAgIFRoZXNlIGFyZSB0aGUgb3BlcmF0aW9ucyB0aGF0IGRpY3Rpb25hcmllcyBzdXBwb3J0IChhbmQgdGhlcmVmb3JlLFxuICAgY3VzdG9tIG1hcHBpbmcgdHlwZXMgc2hvdWxkIHN1cHBvcnQgdG9vKTpcblxuICAgbGVuKGQpXG5cbiAgICAgIFJldHVybiB0aGUgbnVtYmVyIG9mIGl0ZW1zIGluIHRoZSBkaWN0aW9uYXJ5ICpkKi5cblxuICAgZFtrZXldXG5cbiAgICAgIFJldHVybiB0aGUgaXRlbSBvZiAqZCogd2l0aCBrZXkgKmtleSouICBSYWlzZXMgYSBgYEtleUVycm9yYGAgaWZcbiAgICAgICprZXkqIGlzIG5vdCBpbiB0aGUgbWFwLlxuXG4gICAgICBJZiBhIHN1YmNsYXNzIG9mIGRpY3QgZGVmaW5lcyBhIG1ldGhvZCBgYF9fbWlzc2luZ19fKClgYCwgaWYgdGhlXG4gICAgICBrZXkgKmtleSogaXMgbm90IHByZXNlbnQsIHRoZSBgYGRba2V5XWBgIG9wZXJhdGlvbiBjYWxscyB0aGF0XG4gICAgICBtZXRob2Qgd2l0aCB0aGUga2V5ICprZXkqIGFzIGFyZ3VtZW50LiAgVGhlIGBgZFtrZXldYGAgb3BlcmF0aW9uXG4gICAgICB0aGVuIHJldHVybnMgb3IgcmFpc2VzIHdoYXRldmVyIGlzIHJldHVybmVkIG9yIHJhaXNlZCBieSB0aGVcbiAgICAgIGBgX19taXNzaW5nX18oa2V5KWBgIGNhbGwgaWYgdGhlIGtleSBpcyBub3QgcHJlc2VudC4gTm8gb3RoZXJcbiAgICAgIG9wZXJhdGlvbnMgb3IgbWV0aG9kcyBpbnZva2UgYGBfX21pc3NpbmdfXygpYGAuIElmXG4gICAgICBgYF9fbWlzc2luZ19fKClgYCBpcyBub3QgZGVmaW5lZCwgYGBLZXlFcnJvcmBgIGlzIHJhaXNlZC5cbiAgICAgIGBgX19taXNzaW5nX18oKWBgIG11c3QgYmUgYSBtZXRob2Q7IGl0IGNhbm5vdCBiZSBhbiBpbnN0YW5jZVxuICAgICAgdmFyaWFibGU6XG5cbiAgICAgICAgID4+PiBjbGFzcyBDb3VudGVyKGRpY3QpOlxuICAgICAgICAgLi4uICAgICBkZWYgX19taXNzaW5nX18oc2VsZiwga2V5KTpcbiAgICAgICAgIC4uLiAgICAgICAgIHJldHVybiAwXG4gICAgICAgICA+Pj4gYyA9IENvdW50ZXIoKVxuICAgICAgICAgPj4+IGNbXCdyZWRcJ11cbiAgICAgICAgIDBcbiAgICAgICAgID4+PiBjW1wncmVkXCddICs9IDFcbiAgICAgICAgID4+PiBjW1wncmVkXCddXG4gICAgICAgICAxXG5cbiAgICAgIFNlZSBgYGNvbGxlY3Rpb25zLkNvdW50ZXJgYCBmb3IgYSBjb21wbGV0ZSBpbXBsZW1lbnRhdGlvblxuICAgICAgaW5jbHVkaW5nIG90aGVyIG1ldGhvZHMgaGVscGZ1bCBmb3IgYWNjdW11bGF0aW5nIGFuZCBtYW5hZ2luZ1xuICAgICAgdGFsbGllcy5cblxuICAgZFtrZXldID0gdmFsdWVcblxuICAgICAgU2V0IGBgZFtrZXldYGAgdG8gKnZhbHVlKi5cblxuICAgZGVsIGRba2V5XVxuXG4gICAgICBSZW1vdmUgYGBkW2tleV1gYCBmcm9tICpkKi4gIFJhaXNlcyBhIGBgS2V5RXJyb3JgYCBpZiAqa2V5KiBpc1xuICAgICAgbm90IGluIHRoZSBtYXAuXG5cbiAgIGtleSBpbiBkXG5cbiAgICAgIFJldHVybiBgYFRydWVgYCBpZiAqZCogaGFzIGEga2V5ICprZXkqLCBlbHNlIGBgRmFsc2VgYC5cblxuICAga2V5IG5vdCBpbiBkXG5cbiAgICAgIEVxdWl2YWxlbnQgdG8gYGBub3Qga2V5IGluIGRgYC5cblxuICAgaXRlcihkKVxuXG4gICAgICBSZXR1cm4gYW4gaXRlcmF0b3Igb3ZlciB0aGUga2V5cyBvZiB0aGUgZGljdGlvbmFyeS4gIFRoaXMgaXMgYVxuICAgICAgc2hvcnRjdXQgZm9yIGBgaXRlcihkLmtleXMoKSlgYC5cblxuICAgY2xlYXIoKVxuXG4gICAgICBSZW1vdmUgYWxsIGl0ZW1zIGZyb20gdGhlIGRpY3Rpb25hcnkuXG5cbiAgIGNvcHkoKVxuXG4gICAgICBSZXR1cm4gYSBzaGFsbG93IGNvcHkgb2YgdGhlIGRpY3Rpb25hcnkuXG5cbiAgIGNsYXNzbWV0aG9kIGZyb21rZXlzKHNlcVssIHZhbHVlXSlcblxuICAgICAgQ3JlYXRlIGEgbmV3IGRpY3Rpb25hcnkgd2l0aCBrZXlzIGZyb20gKnNlcSogYW5kIHZhbHVlcyBzZXQgdG9cbiAgICAgICp2YWx1ZSouXG5cbiAgICAgIGBgZnJvbWtleXMoKWBgIGlzIGEgY2xhc3MgbWV0aG9kIHRoYXQgcmV0dXJucyBhIG5ldyBkaWN0aW9uYXJ5LlxuICAgICAgKnZhbHVlKiBkZWZhdWx0cyB0byBgYE5vbmVgYC5cblxuICAgZ2V0KGtleVssIGRlZmF1bHRdKVxuXG4gICAgICBSZXR1cm4gdGhlIHZhbHVlIGZvciAqa2V5KiBpZiAqa2V5KiBpcyBpbiB0aGUgZGljdGlvbmFyeSwgZWxzZVxuICAgICAgKmRlZmF1bHQqLiBJZiAqZGVmYXVsdCogaXMgbm90IGdpdmVuLCBpdCBkZWZhdWx0cyB0byBgYE5vbmVgYCxcbiAgICAgIHNvIHRoYXQgdGhpcyBtZXRob2QgbmV2ZXIgcmFpc2VzIGEgYGBLZXlFcnJvcmBgLlxuXG4gICBpdGVtcygpXG5cbiAgICAgIFJldHVybiBhIG5ldyB2aWV3IG9mIHRoZSBkaWN0aW9uYXJ5XCdzIGl0ZW1zIChgYChrZXksIHZhbHVlKWBgXG4gICAgICBwYWlycykuICBTZWUgYmVsb3cgZm9yIGRvY3VtZW50YXRpb24gb2YgdmlldyBvYmplY3RzLlxuXG4gICBrZXlzKClcblxuICAgICAgUmV0dXJuIGEgbmV3IHZpZXcgb2YgdGhlIGRpY3Rpb25hcnlcJ3Mga2V5cy4gIFNlZSBiZWxvdyBmb3JcbiAgICAgIGRvY3VtZW50YXRpb24gb2YgdmlldyBvYmplY3RzLlxuXG4gICBwb3Aoa2V5WywgZGVmYXVsdF0pXG5cbiAgICAgIElmICprZXkqIGlzIGluIHRoZSBkaWN0aW9uYXJ5LCByZW1vdmUgaXQgYW5kIHJldHVybiBpdHMgdmFsdWUsXG4gICAgICBlbHNlIHJldHVybiAqZGVmYXVsdCouICBJZiAqZGVmYXVsdCogaXMgbm90IGdpdmVuIGFuZCAqa2V5KiBpc1xuICAgICAgbm90IGluIHRoZSBkaWN0aW9uYXJ5LCBhIGBgS2V5RXJyb3JgYCBpcyByYWlzZWQuXG5cbiAgIHBvcGl0ZW0oKVxuXG4gICAgICBSZW1vdmUgYW5kIHJldHVybiBhbiBhcmJpdHJhcnkgYGAoa2V5LCB2YWx1ZSlgYCBwYWlyIGZyb20gdGhlXG4gICAgICBkaWN0aW9uYXJ5LlxuXG4gICAgICBgYHBvcGl0ZW0oKWBgIGlzIHVzZWZ1bCB0byBkZXN0cnVjdGl2ZWx5IGl0ZXJhdGUgb3ZlciBhXG4gICAgICBkaWN0aW9uYXJ5LCBhcyBvZnRlbiB1c2VkIGluIHNldCBhbGdvcml0aG1zLiAgSWYgdGhlIGRpY3Rpb25hcnlcbiAgICAgIGlzIGVtcHR5LCBjYWxsaW5nIGBgcG9waXRlbSgpYGAgcmFpc2VzIGEgYGBLZXlFcnJvcmBgLlxuXG4gICBzZXRkZWZhdWx0KGtleVssIGRlZmF1bHRdKVxuXG4gICAgICBJZiAqa2V5KiBpcyBpbiB0aGUgZGljdGlvbmFyeSwgcmV0dXJuIGl0cyB2YWx1ZS4gIElmIG5vdCwgaW5zZXJ0XG4gICAgICAqa2V5KiB3aXRoIGEgdmFsdWUgb2YgKmRlZmF1bHQqIGFuZCByZXR1cm4gKmRlZmF1bHQqLiAgKmRlZmF1bHQqXG4gICAgICBkZWZhdWx0cyB0byBgYE5vbmVgYC5cblxuICAgdXBkYXRlKFtvdGhlcl0pXG5cbiAgICAgIFVwZGF0ZSB0aGUgZGljdGlvbmFyeSB3aXRoIHRoZSBrZXkvdmFsdWUgcGFpcnMgZnJvbSAqb3RoZXIqLFxuICAgICAgb3ZlcndyaXRpbmcgZXhpc3Rpbmcga2V5cy4gIFJldHVybiBgYE5vbmVgYC5cblxuICAgICAgYGB1cGRhdGUoKWBgIGFjY2VwdHMgZWl0aGVyIGFub3RoZXIgZGljdGlvbmFyeSBvYmplY3Qgb3IgYW5cbiAgICAgIGl0ZXJhYmxlIG9mIGtleS92YWx1ZSBwYWlycyAoYXMgdHVwbGVzIG9yIG90aGVyIGl0ZXJhYmxlcyBvZlxuICAgICAgbGVuZ3RoIHR3bykuICBJZiBrZXl3b3JkIGFyZ3VtZW50cyBhcmUgc3BlY2lmaWVkLCB0aGUgZGljdGlvbmFyeVxuICAgICAgaXMgdGhlbiB1cGRhdGVkIHdpdGggdGhvc2Uga2V5L3ZhbHVlIHBhaXJzOiBgYGQudXBkYXRlKHJlZD0xLFxuICAgICAgYmx1ZT0yKWBgLlxuXG4gICB2YWx1ZXMoKVxuXG4gICAgICBSZXR1cm4gYSBuZXcgdmlldyBvZiB0aGUgZGljdGlvbmFyeVwncyB2YWx1ZXMuICBTZWUgYmVsb3cgZm9yXG4gICAgICBkb2N1bWVudGF0aW9uIG9mIHZpZXcgb2JqZWN0cy5cblxuXG5EaWN0aW9uYXJ5IHZpZXcgb2JqZWN0c1xuPT09PT09PT09PT09PT09PT09PT09PT1cblxuVGhlIG9iamVjdHMgcmV0dXJuZWQgYnkgYGBkaWN0LmtleXMoKWBgLCBgYGRpY3QudmFsdWVzKClgYCBhbmRcbmBgZGljdC5pdGVtcygpYGAgYXJlICp2aWV3IG9iamVjdHMqLiAgVGhleSBwcm92aWRlIGEgZHluYW1pYyB2aWV3IG9uXG50aGUgZGljdGlvbmFyeVwncyBlbnRyaWVzLCB3aGljaCBtZWFucyB0aGF0IHdoZW4gdGhlIGRpY3Rpb25hcnlcbmNoYW5nZXMsIHRoZSB2aWV3IHJlZmxlY3RzIHRoZXNlIGNoYW5nZXMuXG5cbkRpY3Rpb25hcnkgdmlld3MgY2FuIGJlIGl0ZXJhdGVkIG92ZXIgdG8geWllbGQgdGhlaXIgcmVzcGVjdGl2ZSBkYXRhLFxuYW5kIHN1cHBvcnQgbWVtYmVyc2hpcCB0ZXN0czpcblxubGVuKGRpY3R2aWV3KVxuXG4gICBSZXR1cm4gdGhlIG51bWJlciBvZiBlbnRyaWVzIGluIHRoZSBkaWN0aW9uYXJ5LlxuXG5pdGVyKGRpY3R2aWV3KVxuXG4gICBSZXR1cm4gYW4gaXRlcmF0b3Igb3ZlciB0aGUga2V5cywgdmFsdWVzIG9yIGl0ZW1zIChyZXByZXNlbnRlZCBhc1xuICAgdHVwbGVzIG9mIGBgKGtleSwgdmFsdWUpYGApIGluIHRoZSBkaWN0aW9uYXJ5LlxuXG4gICBLZXlzIGFuZCB2YWx1ZXMgYXJlIGl0ZXJhdGVkIG92ZXIgaW4gYW4gYXJiaXRyYXJ5IG9yZGVyIHdoaWNoIGlzXG4gICBub24tcmFuZG9tLCB2YXJpZXMgYWNyb3NzIFB5dGhvbiBpbXBsZW1lbnRhdGlvbnMsIGFuZCBkZXBlbmRzIG9uXG4gICB0aGUgZGljdGlvbmFyeVwncyBoaXN0b3J5IG9mIGluc2VydGlvbnMgYW5kIGRlbGV0aW9ucy4gSWYga2V5cyxcbiAgIHZhbHVlcyBhbmQgaXRlbXMgdmlld3MgYXJlIGl0ZXJhdGVkIG92ZXIgd2l0aCBubyBpbnRlcnZlbmluZ1xuICAgbW9kaWZpY2F0aW9ucyB0byB0aGUgZGljdGlvbmFyeSwgdGhlIG9yZGVyIG9mIGl0ZW1zIHdpbGwgZGlyZWN0bHlcbiAgIGNvcnJlc3BvbmQuICBUaGlzIGFsbG93cyB0aGUgY3JlYXRpb24gb2YgYGAodmFsdWUsIGtleSlgYCBwYWlyc1xuICAgdXNpbmcgYGB6aXAoKWBgOiBgYHBhaXJzID0gemlwKGQudmFsdWVzKCksIGQua2V5cygpKWBgLiAgQW5vdGhlclxuICAgd2F5IHRvIGNyZWF0ZSB0aGUgc2FtZSBsaXN0IGlzIGBgcGFpcnMgPSBbKHYsIGspIGZvciAoaywgdikgaW5cbiAgIGQuaXRlbXMoKV1gYC5cblxuICAgSXRlcmF0aW5nIHZpZXdzIHdoaWxlIGFkZGluZyBvciBkZWxldGluZyBlbnRyaWVzIGluIHRoZSBkaWN0aW9uYXJ5XG4gICBtYXkgcmFpc2UgYSBgYFJ1bnRpbWVFcnJvcmBgIG9yIGZhaWwgdG8gaXRlcmF0ZSBvdmVyIGFsbCBlbnRyaWVzLlxuXG54IGluIGRpY3R2aWV3XG5cbiAgIFJldHVybiBgYFRydWVgYCBpZiAqeCogaXMgaW4gdGhlIHVuZGVybHlpbmcgZGljdGlvbmFyeVwncyBrZXlzLFxuICAgdmFsdWVzIG9yIGl0ZW1zIChpbiB0aGUgbGF0dGVyIGNhc2UsICp4KiBzaG91bGQgYmUgYSBgYChrZXksXG4gICB2YWx1ZSlgYCB0dXBsZSkuXG5cbktleXMgdmlld3MgYXJlIHNldC1saWtlIHNpbmNlIHRoZWlyIGVudHJpZXMgYXJlIHVuaXF1ZSBhbmQgaGFzaGFibGUuXG5JZiBhbGwgdmFsdWVzIGFyZSBoYXNoYWJsZSwgc28gdGhhdCBgYChrZXksIHZhbHVlKWBgIHBhaXJzIGFyZSB1bmlxdWVcbmFuZCBoYXNoYWJsZSwgdGhlbiB0aGUgaXRlbXMgdmlldyBpcyBhbHNvIHNldC1saWtlLiAgKFZhbHVlcyB2aWV3cyBhcmVcbm5vdCB0cmVhdGVkIGFzIHNldC1saWtlIHNpbmNlIHRoZSBlbnRyaWVzIGFyZSBnZW5lcmFsbHkgbm90IHVuaXF1ZS4pXG5Gb3Igc2V0LWxpa2Ugdmlld3MsIGFsbCBvZiB0aGUgb3BlcmF0aW9ucyBkZWZpbmVkIGZvciB0aGUgYWJzdHJhY3RcbmJhc2UgY2xhc3MgYGBjb2xsZWN0aW9ucy5TZXRgYCBhcmUgYXZhaWxhYmxlIChmb3IgZXhhbXBsZSwgYGA9PWBgLFxuYGA8YGAsIG9yIGBgXmBgKS5cblxuQW4gZXhhbXBsZSBvZiBkaWN0aW9uYXJ5IHZpZXcgdXNhZ2U6XG5cbiAgID4+PiBkaXNoZXMgPSB7XCdlZ2dzXCc6IDIsIFwnc2F1c2FnZVwnOiAxLCBcJ2JhY29uXCc6IDEsIFwnc3BhbVwnOiA1MDB9XG4gICA+Pj4ga2V5cyA9IGRpc2hlcy5rZXlzKClcbiAgID4+PiB2YWx1ZXMgPSBkaXNoZXMudmFsdWVzKClcblxuICAgPj4+ICMgaXRlcmF0aW9uXG4gICA+Pj4gbiA9IDBcbiAgID4+PiBmb3IgdmFsIGluIHZhbHVlczpcbiAgIC4uLiAgICAgbiArPSB2YWxcbiAgID4+PiBwcmludChuKVxuICAgNTA0XG5cbiAgID4+PiAjIGtleXMgYW5kIHZhbHVlcyBhcmUgaXRlcmF0ZWQgb3ZlciBpbiB0aGUgc2FtZSBvcmRlclxuICAgPj4+IGxpc3Qoa2V5cylcbiAgIFtcJ2VnZ3NcJywgXCdiYWNvblwnLCBcJ3NhdXNhZ2VcJywgXCdzcGFtXCddXG4gICA+Pj4gbGlzdCh2YWx1ZXMpXG4gICBbMiwgMSwgMSwgNTAwXVxuXG4gICA+Pj4gIyB2aWV3IG9iamVjdHMgYXJlIGR5bmFtaWMgYW5kIHJlZmxlY3QgZGljdCBjaGFuZ2VzXG4gICA+Pj4gZGVsIGRpc2hlc1tcJ2VnZ3NcJ11cbiAgID4+PiBkZWwgZGlzaGVzW1wnc2F1c2FnZVwnXVxuICAgPj4+IGxpc3Qoa2V5cylcbiAgIFtcJ3NwYW1cJywgXCdiYWNvblwnXVxuXG4gICA+Pj4gIyBzZXQgb3BlcmF0aW9uc1xuICAgPj4+IGtleXMgJiB7XCdlZ2dzXCcsIFwnYmFjb25cJywgXCdzYWxhZFwnfVxuICAge1wnYmFjb25cJ31cbiAgID4+PiBrZXlzIF4ge1wnc2F1c2FnZVwnLCBcJ2p1aWNlXCd9XG4gICB7XCdqdWljZVwnLCBcJ3NhdXNhZ2VcJywgXCdiYWNvblwnLCBcJ3NwYW1cJ31cbicsCiAgJ3R5cGVzbWV0aG9kcyc6ICJcbk1ldGhvZHNcbioqKioqKipcblxuTWV0aG9kcyBhcmUgZnVuY3Rpb25zIHRoYXQgYXJlIGNhbGxlZCB1c2luZyB0aGUgYXR0cmlidXRlIG5vdGF0aW9uLlxuVGhlcmUgYXJlIHR3byBmbGF2b3JzOiBidWlsdC1pbiBtZXRob2RzIChzdWNoIGFzIGBgYXBwZW5kKClgYCBvblxubGlzdHMpIGFuZCBjbGFzcyBpbnN0YW5jZSBtZXRob2RzLiAgQnVpbHQtaW4gbWV0aG9kcyBhcmUgZGVzY3JpYmVkXG53aXRoIHRoZSB0eXBlcyB0aGF0IHN1cHBvcnQgdGhlbS5cblxuSWYgeW91IGFjY2VzcyBhIG1ldGhvZCAoYSBmdW5jdGlvbiBkZWZpbmVkIGluIGEgY2xhc3MgbmFtZXNwYWNlKVxudGhyb3VnaCBhbiBpbnN0YW5jZSwgeW91IGdldCBhIHNwZWNpYWwgb2JqZWN0OiBhICpib3VuZCBtZXRob2QqIChhbHNvXG5jYWxsZWQgKmluc3RhbmNlIG1ldGhvZCopIG9iamVjdC4gV2hlbiBjYWxsZWQsIGl0IHdpbGwgYWRkIHRoZVxuYGBzZWxmYGAgYXJndW1lbnQgdG8gdGhlIGFyZ3VtZW50IGxpc3QuICBCb3VuZCBtZXRob2RzIGhhdmUgdHdvXG5zcGVjaWFsIHJlYWQtb25seSBhdHRyaWJ1dGVzOiBgYG0uX19zZWxmX19gYCBpcyB0aGUgb2JqZWN0IG9uIHdoaWNoXG50aGUgbWV0aG9kIG9wZXJhdGVzLCBhbmQgYGBtLl9fZnVuY19fYGAgaXMgdGhlIGZ1bmN0aW9uIGltcGxlbWVudGluZ1xudGhlIG1ldGhvZC4gIENhbGxpbmcgYGBtKGFyZy0xLCBhcmctMiwgLi4uLCBhcmctbilgYCBpcyBjb21wbGV0ZWx5XG5lcXVpdmFsZW50IHRvIGNhbGxpbmcgYGBtLl9fZnVuY19fKG0uX19zZWxmX18sIGFyZy0xLCBhcmctMiwgLi4uLFxuYXJnLW4pYGAuXG5cbkxpa2UgZnVuY3Rpb24gb2JqZWN0cywgYm91bmQgbWV0aG9kIG9iamVjdHMgc3VwcG9ydCBnZXR0aW5nIGFyYml0cmFyeVxuYXR0cmlidXRlcy4gIEhvd2V2ZXIsIHNpbmNlIG1ldGhvZCBhdHRyaWJ1dGVzIGFyZSBhY3R1YWxseSBzdG9yZWQgb25cbnRoZSB1bmRlcmx5aW5nIGZ1bmN0aW9uIG9iamVjdCAoYGBtZXRoLl9fZnVuY19fYGApLCBzZXR0aW5nIG1ldGhvZFxuYXR0cmlidXRlcyBvbiBib3VuZCBtZXRob2RzIGlzIGRpc2FsbG93ZWQuICBBdHRlbXB0aW5nIHRvIHNldCBhIG1ldGhvZFxuYXR0cmlidXRlIHJlc3VsdHMgaW4gYSBgYFR5cGVFcnJvcmBgIGJlaW5nIHJhaXNlZC4gIEluIG9yZGVyIHRvIHNldCBhXG5tZXRob2QgYXR0cmlidXRlLCB5b3UgbmVlZCB0byBleHBsaWNpdGx5IHNldCBpdCBvbiB0aGUgdW5kZXJseWluZ1xuZnVuY3Rpb24gb2JqZWN0OlxuXG4gICBjbGFzcyBDOlxuICAgICAgIGRlZiBtZXRob2Qoc2VsZik6XG4gICAgICAgICAgIHBhc3NcblxuICAgYyA9IEMoKVxuICAgYy5tZXRob2QuX19mdW5jX18ud2hvYW1pID0gJ215IG5hbWUgaXMgYydcblxuU2VlICpUaGUgc3RhbmRhcmQgdHlwZSBoaWVyYXJjaHkqIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuIiwKICAndHlwZXNtb2R1bGVzJzogIlxuTW9kdWxlc1xuKioqKioqKlxuXG5UaGUgb25seSBzcGVjaWFsIG9wZXJhdGlvbiBvbiBhIG1vZHVsZSBpcyBhdHRyaWJ1dGUgYWNjZXNzOlxuYGBtLm5hbWVgYCwgd2hlcmUgKm0qIGlzIGEgbW9kdWxlIGFuZCAqbmFtZSogYWNjZXNzZXMgYSBuYW1lIGRlZmluZWRcbmluICptKidzIHN5bWJvbCB0YWJsZS4gTW9kdWxlIGF0dHJpYnV0ZXMgY2FuIGJlIGFzc2lnbmVkIHRvLiAgKE5vdGVcbnRoYXQgdGhlIGBgaW1wb3J0YGAgc3RhdGVtZW50IGlzIG5vdCwgc3RyaWN0bHkgc3BlYWtpbmcsIGFuIG9wZXJhdGlvblxub24gYSBtb2R1bGUgb2JqZWN0OyBgYGltcG9ydCBmb29gYCBkb2VzIG5vdCByZXF1aXJlIGEgbW9kdWxlIG9iamVjdFxubmFtZWQgKmZvbyogdG8gZXhpc3QsIHJhdGhlciBpdCByZXF1aXJlcyBhbiAoZXh0ZXJuYWwpICpkZWZpbml0aW9uKlxuZm9yIGEgbW9kdWxlIG5hbWVkICpmb28qIHNvbWV3aGVyZS4pXG5cbkEgc3BlY2lhbCBhdHRyaWJ1dGUgb2YgZXZlcnkgbW9kdWxlIGlzIGBgX19kaWN0X19gYC4gVGhpcyBpcyB0aGVcbmRpY3Rpb25hcnkgY29udGFpbmluZyB0aGUgbW9kdWxlJ3Mgc3ltYm9sIHRhYmxlLiBNb2RpZnlpbmcgdGhpc1xuZGljdGlvbmFyeSB3aWxsIGFjdHVhbGx5IGNoYW5nZSB0aGUgbW9kdWxlJ3Mgc3ltYm9sIHRhYmxlLCBidXQgZGlyZWN0XG5hc3NpZ25tZW50IHRvIHRoZSBgYF9fZGljdF9fYGAgYXR0cmlidXRlIGlzIG5vdCBwb3NzaWJsZSAoeW91IGNhblxud3JpdGUgYGBtLl9fZGljdF9fWydhJ10gPSAxYGAsIHdoaWNoIGRlZmluZXMgYGBtLmFgYCB0byBiZSBgYDFgYCwgYnV0XG55b3UgY2FuJ3Qgd3JpdGUgYGBtLl9fZGljdF9fID0ge31gYCkuICBNb2RpZnlpbmcgYGBfX2RpY3RfX2BgIGRpcmVjdGx5XG5pcyBub3QgcmVjb21tZW5kZWQuXG5cbk1vZHVsZXMgYnVpbHQgaW50byB0aGUgaW50ZXJwcmV0ZXIgYXJlIHdyaXR0ZW4gbGlrZSB0aGlzOiBgYDxtb2R1bGVcbidzeXMnIChidWlsdC1pbik+YGAuICBJZiBsb2FkZWQgZnJvbSBhIGZpbGUsIHRoZXkgYXJlIHdyaXR0ZW4gYXNcbmBgPG1vZHVsZSAnb3MnIGZyb20gJy91c3IvbG9jYWwvbGliL3B5dGhvblguWS9vcy5weWMnPmBgLlxuIiwKLSAndHlwZXNzZXEnOiAnXG5TZXF1ZW5jZSBUeXBlcyAtLS0gYGBzdHJgYCwgYGBieXRlc2BgLCBgYGJ5dGVhcnJheWBgLCBgYGxpc3RgYCwgYGB0dXBsZWBgLCBgYHJhbmdlYGBcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5UaGVyZSBhcmUgc2l4IHNlcXVlbmNlIHR5cGVzOiBzdHJpbmdzLCBieXRlIHNlcXVlbmNlcyAoYGBieXRlc2BgXG5vYmplY3RzKSwgYnl0ZSBhcnJheXMgKGBgYnl0ZWFycmF5YGAgb2JqZWN0cyksIGxpc3RzLCB0dXBsZXMsIGFuZFxucmFuZ2Ugb2JqZWN0cy4gIEZvciBvdGhlciBjb250YWluZXJzIHNlZSB0aGUgYnVpbHQgaW4gYGBkaWN0YGAgYW5kXG5gYHNldGBgIGNsYXNzZXMsIGFuZCB0aGUgYGBjb2xsZWN0aW9uc2BgIG1vZHVsZS5cblxuU3RyaW5ncyBjb250YWluIFVuaWNvZGUgY2hhcmFjdGVycy4gIFRoZWlyIGxpdGVyYWxzIGFyZSB3cml0dGVuIGluXG5zaW5nbGUgb3IgZG91YmxlIHF1b3RlczogYGBcJ3h5enp5XCdgYCwgYGAiZnJvYm96eiJgYC4gIFNlZSAqU3RyaW5nIGFuZFxuQnl0ZXMgbGl0ZXJhbHMqIGZvciBtb3JlIGFib3V0IHN0cmluZyBsaXRlcmFscy4gIEluIGFkZGl0aW9uIHRvIHRoZVxuZnVuY3Rpb25hbGl0eSBkZXNjcmliZWQgaGVyZSwgdGhlcmUgYXJlIGFsc28gc3RyaW5nLXNwZWNpZmljIG1ldGhvZHNcbmRlc2NyaWJlZCBpbiB0aGUgKlN0cmluZyBNZXRob2RzKiBzZWN0aW9uLlxuXG5CeXRlcyBhbmQgYnl0ZWFycmF5IG9iamVjdHMgY29udGFpbiBzaW5nbGUgYnl0ZXMgLS0gdGhlIGZvcm1lciBpc1xuaW1tdXRhYmxlIHdoaWxlIHRoZSBsYXR0ZXIgaXMgYSBtdXRhYmxlIHNlcXVlbmNlLiAgQnl0ZXMgb2JqZWN0cyBjYW5cbmJlIGNvbnN0cnVjdGVkIHRoZSBjb25zdHJ1Y3RvciwgYGBieXRlcygpYGAsIGFuZCBmcm9tIGxpdGVyYWxzOyB1c2UgYVxuYGBiYGAgcHJlZml4IHdpdGggbm9ybWFsIHN0cmluZyBzeW50YXg6IGBgYlwneHl6enlcJ2BgLiAgVG8gY29uc3RydWN0XG5ieXRlIGFycmF5cywgdXNlIHRoZSBgYGJ5dGVhcnJheSgpYGAgZnVuY3Rpb24uXG5cbldoaWxlIHN0cmluZyBvYmplY3RzIGFyZSBzZXF1ZW5jZXMgb2YgY2hhcmFjdGVycyAocmVwcmVzZW50ZWQgYnlcbnN0cmluZ3Mgb2YgbGVuZ3RoIDEpLCBieXRlcyBhbmQgYnl0ZWFycmF5IG9iamVjdHMgYXJlIHNlcXVlbmNlcyBvZlxuKmludGVnZXJzKiAoYmV0d2VlbiAwIGFuZCAyNTUpLCByZXByZXNlbnRpbmcgdGhlIEFTQ0lJIHZhbHVlIG9mIHNpbmdsZVxuYnl0ZXMuICBUaGF0IG1lYW5zIHRoYXQgZm9yIGEgYnl0ZXMgb3IgYnl0ZWFycmF5IG9iamVjdCAqYiosIGBgYlswXWBgXG53aWxsIGJlIGFuIGludGVnZXIsIHdoaWxlIGBgYlswOjFdYGAgd2lsbCBiZSBhIGJ5dGVzIG9yIGJ5dGVhcnJheVxub2JqZWN0IG9mIGxlbmd0aCAxLiAgVGhlIHJlcHJlc2VudGF0aW9uIG9mIGJ5dGVzIG9iamVjdHMgdXNlcyB0aGVcbmxpdGVyYWwgZm9ybWF0IChgYGJcJy4uLlwnYGApIHNpbmNlIGl0IGlzIGdlbmVyYWxseSBtb3JlIHVzZWZ1bCB0aGFuXG5lLmcuIGBgYnl0ZXMoWzUwLCAxOSwgMTAwXSlgYC4gIFlvdSBjYW4gYWx3YXlzIGNvbnZlcnQgYSBieXRlcyBvYmplY3RcbmludG8gYSBsaXN0IG9mIGludGVnZXJzIHVzaW5nIGBgbGlzdChiKWBgLlxuXG5BbHNvLCB3aGlsZSBpbiBwcmV2aW91cyBQeXRob24gdmVyc2lvbnMsIGJ5dGUgc3RyaW5ncyBhbmQgVW5pY29kZVxuc3RyaW5ncyBjb3VsZCBiZSBleGNoYW5nZWQgZm9yIGVhY2ggb3RoZXIgcmF0aGVyIGZyZWVseSAoYmFycmluZ1xuZW5jb2RpbmcgaXNzdWVzKSwgc3RyaW5ncyBhbmQgYnl0ZXMgYXJlIG5vdyBjb21wbGV0ZWx5IHNlcGFyYXRlXG5jb25jZXB0cy4gIFRoZXJlXCdzIG5vIGltcGxpY2l0IGVuLS9kZWNvZGluZyBpZiB5b3UgcGFzcyBhbiBvYmplY3Qgb2ZcbnRoZSB3cm9uZyB0eXBlLiAgQSBzdHJpbmcgYWx3YXlzIGNvbXBhcmVzIHVuZXF1YWwgdG8gYSBieXRlcyBvclxuYnl0ZWFycmF5IG9iamVjdC5cblxuTGlzdHMgYXJlIGNvbnN0cnVjdGVkIHdpdGggc3F1YXJlIGJyYWNrZXRzLCBzZXBhcmF0aW5nIGl0ZW1zIHdpdGhcbmNvbW1hczogYGBbYSwgYiwgY11gYC4gIFR1cGxlcyBhcmUgY29uc3RydWN0ZWQgYnkgdGhlIGNvbW1hIG9wZXJhdG9yXG4obm90IHdpdGhpbiBzcXVhcmUgYnJhY2tldHMpLCB3aXRoIG9yIHdpdGhvdXQgZW5jbG9zaW5nIHBhcmVudGhlc2VzLFxuYnV0IGFuIGVtcHR5IHR1cGxlIG11c3QgaGF2ZSB0aGUgZW5jbG9zaW5nIHBhcmVudGhlc2VzLCBzdWNoIGFzIGBgYSxcbmIsIGNgYCBvciBgYCgpYGAuICBBIHNpbmdsZSBpdGVtIHR1cGxlIG11c3QgaGF2ZSBhIHRyYWlsaW5nIGNvbW1hLFxuc3VjaCBhcyBgYChkLClgYC5cblxuT2JqZWN0cyBvZiB0eXBlIHJhbmdlIGFyZSBjcmVhdGVkIHVzaW5nIHRoZSBgYHJhbmdlKClgYCBmdW5jdGlvbi5cblRoZXkgZG9uXCd0IHN1cHBvcnQgY29uY2F0ZW5hdGlvbiBvciByZXBldGl0aW9uLCBhbmQgdXNpbmcgYGBtaW4oKWBgIG9yXG5gYG1heCgpYGAgb24gdGhlbSBpcyBpbmVmZmljaWVudC5cblxuTW9zdCBzZXF1ZW5jZSB0eXBlcyBzdXBwb3J0IHRoZSBmb2xsb3dpbmcgb3BlcmF0aW9ucy4gIFRoZSBgYGluYGAgYW5kXG5gYG5vdCBpbmBgIG9wZXJhdGlvbnMgaGF2ZSB0aGUgc2FtZSBwcmlvcml0aWVzIGFzIHRoZSBjb21wYXJpc29uXG5vcGVyYXRpb25zLiAgVGhlIGBgK2BgIGFuZCBgYCpgYCBvcGVyYXRpb25zIGhhdmUgdGhlIHNhbWUgcHJpb3JpdHkgYXNcbnRoZSBjb3JyZXNwb25kaW5nIG51bWVyaWMgb3BlcmF0aW9ucy4gWzNdIEFkZGl0aW9uYWwgbWV0aG9kcyBhcmVcbnByb3ZpZGVkIGZvciAqTXV0YWJsZSBTZXF1ZW5jZSBUeXBlcyouXG5cblRoaXMgdGFibGUgbGlzdHMgdGhlIHNlcXVlbmNlIG9wZXJhdGlvbnMgc29ydGVkIGluIGFzY2VuZGluZyBwcmlvcml0eVxuKG9wZXJhdGlvbnMgaW4gdGhlIHNhbWUgYm94IGhhdmUgdGhlIHNhbWUgcHJpb3JpdHkpLiAgSW4gdGhlIHRhYmxlLFxuKnMqIGFuZCAqdCogYXJlIHNlcXVlbmNlcyBvZiB0aGUgc2FtZSB0eXBlOyAqbiosICppKiwgKmoqIGFuZCAqayogYXJlXG5pbnRlZ2Vycy5cblxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBPcGVyYXRpb24gICAgICAgICAgfCBSZXN1bHQgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgICAgfFxuKz09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09K1xufCBgYHggaW4gc2BgICAgICAgICAgfCBgYFRydWVgYCBpZiBhbiBpdGVtIG9mICpzKiBpcyAgICB8ICgxKSAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgfCBlcXVhbCB0byAqeCosIGVsc2UgYGBGYWxzZWBgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHggbm90IGluIHNgYCAgICAgfCBgYEZhbHNlYGAgaWYgYW4gaXRlbSBvZiAqcyogaXMgICB8ICgxKSAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgfCBlcXVhbCB0byAqeCosIGVsc2UgYGBUcnVlYGAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHMgKyB0YGAgICAgICAgICAgfCB0aGUgY29uY2F0ZW5hdGlvbiBvZiAqcyogYW5kICp0KiB8ICg2KSAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHMgKiBuLCBuICogc2BgICAgfCAqbiogc2hhbGxvdyBjb3BpZXMgb2YgKnMqICAgICAgICB8ICgyKSAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgfCBjb25jYXRlbmF0ZWQgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHNbaV1gYCAgICAgICAgICAgfCAqaSp0aCBpdGVtIG9mICpzKiwgb3JpZ2luIDAgICAgICB8ICgzKSAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqXWBgICAgICAgICAgfCBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqICAgICB8ICgzKSg0KSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqOmtdYGAgICAgICAgfCBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqICAgICB8ICgzKSg1KSAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgfCB3aXRoIHN0ZXAgKmsqICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYGxlbihzKWBgICAgICAgICAgfCBsZW5ndGggb2YgKnMqICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYG1pbihzKWBgICAgICAgICAgfCBzbWFsbGVzdCBpdGVtIG9mICpzKiAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYG1heChzKWBgICAgICAgICAgfCBsYXJnZXN0IGl0ZW0gb2YgKnMqICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5kZXgoaSlgYCAgICAgfCBpbmRleCBvZiB0aGUgZmlyc3Qgb2NjdXJlbmNlIG9mICB8ICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgfCAqaSogaW4gKnMqICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHMuY291bnQoaSlgYCAgICAgfCB0b3RhbCBudW1iZXIgb2Ygb2NjdXJlbmNlcyBvZiAgICB8ICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgfCAqaSogaW4gKnMqICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xuXG5TZXF1ZW5jZSB0eXBlcyBhbHNvIHN1cHBvcnQgY29tcGFyaXNvbnMuICBJbiBwYXJ0aWN1bGFyLCB0dXBsZXMgYW5kXG5saXN0cyBhcmUgY29tcGFyZWQgbGV4aWNvZ3JhcGhpY2FsbHkgYnkgY29tcGFyaW5nIGNvcnJlc3BvbmRpbmdcbmVsZW1lbnRzLiAgVGhpcyBtZWFucyB0aGF0IHRvIGNvbXBhcmUgZXF1YWwsIGV2ZXJ5IGVsZW1lbnQgbXVzdFxuY29tcGFyZSBlcXVhbCBhbmQgdGhlIHR3byBzZXF1ZW5jZXMgbXVzdCBiZSBvZiB0aGUgc2FtZSB0eXBlIGFuZCBoYXZlXG50aGUgc2FtZSBsZW5ndGguICAoRm9yIGZ1bGwgZGV0YWlscyBzZWUgKkNvbXBhcmlzb25zKiBpbiB0aGUgbGFuZ3VhZ2VcbnJlZmVyZW5jZS4pXG5cbk5vdGVzOlxuXG4xLiBXaGVuICpzKiBpcyBhIHN0cmluZyBvYmplY3QsIHRoZSBgYGluYGAgYW5kIGBgbm90IGluYGAgb3BlcmF0aW9uc1xuICAgYWN0IGxpa2UgYSBzdWJzdHJpbmcgdGVzdC5cblxuMi4gVmFsdWVzIG9mICpuKiBsZXNzIHRoYW4gYGAwYGAgYXJlIHRyZWF0ZWQgYXMgYGAwYGAgKHdoaWNoIHlpZWxkcyBhblxuICAgZW1wdHkgc2VxdWVuY2Ugb2YgdGhlIHNhbWUgdHlwZSBhcyAqcyopLiAgTm90ZSBhbHNvIHRoYXQgdGhlIGNvcGllc1xuICAgYXJlIHNoYWxsb3c7IG5lc3RlZCBzdHJ1Y3R1cmVzIGFyZSBub3QgY29waWVkLiAgVGhpcyBvZnRlbiBoYXVudHNcbiAgIG5ldyBQeXRob24gcHJvZ3JhbW1lcnM7IGNvbnNpZGVyOlxuXG4gICA+Pj4gbGlzdHMgPSBbW11dICogM1xuICAgPj4+IGxpc3RzXG4gICBbW10sIFtdLCBbXV1cbiAgID4+PiBsaXN0c1swXS5hcHBlbmQoMylcbiAgID4+PiBsaXN0c1xuICAgW1szXSwgWzNdLCBbM11dXG5cbiAgIFdoYXQgaGFzIGhhcHBlbmVkIGlzIHRoYXQgYGBbW11dYGAgaXMgYSBvbmUtZWxlbWVudCBsaXN0IGNvbnRhaW5pbmdcbiAgIGFuIGVtcHR5IGxpc3QsIHNvIGFsbCB0aHJlZSBlbGVtZW50cyBvZiBgYFtbXV0gKiAzYGAgYXJlIChwb2ludGVyc1xuICAgdG8pIHRoaXMgc2luZ2xlIGVtcHR5IGxpc3QuICBNb2RpZnlpbmcgYW55IG9mIHRoZSBlbGVtZW50cyBvZlxuICAgYGBsaXN0c2BgIG1vZGlmaWVzIHRoaXMgc2luZ2xlIGxpc3QuIFlvdSBjYW4gY3JlYXRlIGEgbGlzdCBvZlxuICAgZGlmZmVyZW50IGxpc3RzIHRoaXMgd2F5OlxuXG4gICA+Pj4gbGlzdHMgPSBbW10gZm9yIGkgaW4gcmFuZ2UoMyldXG4gICA+Pj4gbGlzdHNbMF0uYXBwZW5kKDMpXG4gICA+Pj4gbGlzdHNbMV0uYXBwZW5kKDUpXG4gICA+Pj4gbGlzdHNbMl0uYXBwZW5kKDcpXG4gICA+Pj4gbGlzdHNcbiAgIFtbM10sIFs1XSwgWzddXVxuXG4zLiBJZiAqaSogb3IgKmoqIGlzIG5lZ2F0aXZlLCB0aGUgaW5kZXggaXMgcmVsYXRpdmUgdG8gdGhlIGVuZCBvZiB0aGVcbiAgIHN0cmluZzogYGBsZW4ocykgKyBpYGAgb3IgYGBsZW4ocykgKyBqYGAgaXMgc3Vic3RpdHV0ZWQuICBCdXQgbm90ZVxuICAgdGhhdCBgYC0wYGAgaXMgc3RpbGwgYGAwYGAuXG5cbjQuIFRoZSBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqIGlzIGRlZmluZWQgYXMgdGhlIHNlcXVlbmNlIG9mXG4gICBpdGVtcyB3aXRoIGluZGV4ICprKiBzdWNoIHRoYXQgYGBpIDw9IGsgPCBqYGAuICBJZiAqaSogb3IgKmoqIGlzXG4gICBncmVhdGVyIHRoYW4gYGBsZW4ocylgYCwgdXNlIGBgbGVuKHMpYGAuICBJZiAqaSogaXMgb21pdHRlZCBvclxuICAgYGBOb25lYGAsIHVzZSBgYDBgYC4gIElmICpqKiBpcyBvbWl0dGVkIG9yIGBgTm9uZWBgLCB1c2VcbiAgIGBgbGVuKHMpYGAuICBJZiAqaSogaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICpqKiwgdGhlIHNsaWNlIGlzXG4gICBlbXB0eS5cblxuNS4gVGhlIHNsaWNlIG9mICpzKiBmcm9tICppKiB0byAqaiogd2l0aCBzdGVwICprKiBpcyBkZWZpbmVkIGFzIHRoZVxuICAgc2VxdWVuY2Ugb2YgaXRlbXMgd2l0aCBpbmRleCAgYGB4ID0gaSArIG4qa2BgIHN1Y2ggdGhhdCBgYDAgPD0gbiA8XG4gICAoai1pKS9rYGAuICBJbiBvdGhlciB3b3JkcywgdGhlIGluZGljZXMgYXJlIGBgaWBgLCBgYGkra2BgLFxuICAgYGBpKzIqa2BgLCBgYGkrMyprYGAgYW5kIHNvIG9uLCBzdG9wcGluZyB3aGVuICpqKiBpcyByZWFjaGVkIChidXRcbiAgIG5ldmVyIGluY2x1ZGluZyAqaiopLiAgSWYgKmkqIG9yICpqKiBpcyBncmVhdGVyIHRoYW4gYGBsZW4ocylgYCxcbiAgIHVzZSBgYGxlbihzKWBgLiAgSWYgKmkqIG9yICpqKiBhcmUgb21pdHRlZCBvciBgYE5vbmVgYCwgdGhleSBiZWNvbWVcbiAgICJlbmQiIHZhbHVlcyAod2hpY2ggZW5kIGRlcGVuZHMgb24gdGhlIHNpZ24gb2YgKmsqKS4gIE5vdGUsICprKlxuICAgY2Fubm90IGJlIHplcm8uIElmICprKiBpcyBgYE5vbmVgYCwgaXQgaXMgdHJlYXRlZCBsaWtlIGBgMWBgLlxuXG42LiBDb25jYXRlbmF0aW5nIGltbXV0YWJsZSBzdHJpbmdzIGFsd2F5cyByZXN1bHRzIGluIGEgbmV3IG9iamVjdC5cbiAgIFRoaXMgbWVhbnMgdGhhdCBidWlsZGluZyB1cCBhIHN0cmluZyBieSByZXBlYXRlZCBjb25jYXRlbmF0aW9uIHdpbGxcbiAgIGhhdmUgYSBxdWFkcmF0aWMgcnVudGltZSBjb3N0IGluIHRoZSB0b3RhbCBzdHJpbmcgbGVuZ3RoLiAgVG8gZ2V0IGFcbiAgIGxpbmVhciBydW50aW1lIGNvc3QsIHlvdSBtdXN0IHN3aXRjaCB0byBvbmUgb2YgdGhlIGFsdGVybmF0aXZlc1xuICAgYmVsb3c6XG5cbiAgICogaWYgY29uY2F0ZW5hdGluZyBgYHN0cmBgIG9iamVjdHMsIHlvdSBjYW4gYnVpbGQgYSBsaXN0IGFuZCB1c2VcbiAgICAgYGBzdHIuam9pbigpYGAgYXQgdGhlIGVuZDtcblxuICAgKiBpZiBjb25jYXRlbmF0aW5nIGBgYnl0ZXNgYCBvYmplY3RzLCB5b3UgY2FuIHNpbWlsYXJseSB1c2VcbiAgICAgYGBieXRlcy5qb2luKClgYCwgb3IgeW91IGNhbiBkbyBpbi1wbGFjZSBjb25jYXRlbmF0aW9uIHdpdGggYVxuICAgICBgYGJ5dGVhcnJheWBgIG9iamVjdC4gIGBgYnl0ZWFycmF5YGAgb2JqZWN0cyBhcmUgbXV0YWJsZSBhbmQgaGF2ZVxuICAgICBhbiBlZmZpY2llbnQgb3ZlcmFsbG9jYXRpb24gbWVjaGFuaXNtLlxuXG5cblN0cmluZyBNZXRob2RzXG49PT09PT09PT09PT09PVxuXG5TdHJpbmcgb2JqZWN0cyBzdXBwb3J0IHRoZSBtZXRob2RzIGxpc3RlZCBiZWxvdy5cblxuSW4gYWRkaXRpb24sIFB5dGhvblwncyBzdHJpbmdzIHN1cHBvcnQgdGhlIHNlcXVlbmNlIHR5cGUgbWV0aG9kc1xuZGVzY3JpYmVkIGluIHRoZSAqU2VxdWVuY2UgVHlwZXMgLS0tIHN0ciwgYnl0ZXMsIGJ5dGVhcnJheSwgbGlzdCxcbnR1cGxlLCByYW5nZSogc2VjdGlvbi4gVG8gb3V0cHV0IGZvcm1hdHRlZCBzdHJpbmdzLCBzZWUgdGhlICpTdHJpbmdcbkZvcm1hdHRpbmcqIHNlY3Rpb24uIEFsc28sIHNlZSB0aGUgYGByZWBgIG1vZHVsZSBmb3Igc3RyaW5nIGZ1bmN0aW9uc1xuYmFzZWQgb24gcmVndWxhciBleHByZXNzaW9ucy5cblxuc3RyLmNhcGl0YWxpemUoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBpdHMgZmlyc3QgY2hhcmFjdGVyIGNhcGl0YWxpemVkXG4gICBhbmQgdGhlIHJlc3QgbG93ZXJjYXNlZC5cblxuc3RyLmNlbnRlcih3aWR0aFssIGZpbGxjaGFyXSlcblxuICAgUmV0dXJuIGNlbnRlcmVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLiBQYWRkaW5nIGlzIGRvbmVcbiAgIHVzaW5nIHRoZSBzcGVjaWZpZWQgKmZpbGxjaGFyKiAoZGVmYXVsdCBpcyBhIHNwYWNlKS5cblxuc3RyLmNvdW50KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiB0aGUgbnVtYmVyIG9mIG5vbi1vdmVybGFwcGluZyBvY2N1cnJlbmNlcyBvZiBzdWJzdHJpbmcgKnN1YipcbiAgIGluIHRoZSByYW5nZSBbKnN0YXJ0KiwgKmVuZCpdLiAgT3B0aW9uYWwgYXJndW1lbnRzICpzdGFydCogYW5kXG4gICAqZW5kKiBhcmUgaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2Ugbm90YXRpb24uXG5cbnN0ci5lbmNvZGUoZW5jb2Rpbmc9InV0Zi04IiwgZXJyb3JzPSJzdHJpY3QiKVxuXG4gICBSZXR1cm4gYW4gZW5jb2RlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgYXMgYSBieXRlcyBvYmplY3QuIERlZmF1bHRcbiAgIGVuY29kaW5nIGlzIGBgXCd1dGYtOFwnYGAuICplcnJvcnMqIG1heSBiZSBnaXZlbiB0byBzZXQgYSBkaWZmZXJlbnRcbiAgIGVycm9yIGhhbmRsaW5nIHNjaGVtZS4gVGhlIGRlZmF1bHQgZm9yICplcnJvcnMqIGlzIGBgXCdzdHJpY3RcJ2BgLFxuICAgbWVhbmluZyB0aGF0IGVuY29kaW5nIGVycm9ycyByYWlzZSBhIGBgVW5pY29kZUVycm9yYGAuIE90aGVyXG4gICBwb3NzaWJsZSB2YWx1ZXMgYXJlIGBgXCdpZ25vcmVcJ2BgLCBgYFwncmVwbGFjZVwnYGAsXG4gICBgYFwneG1sY2hhcnJlZnJlcGxhY2VcJ2BgLCBgYFwnYmFja3NsYXNocmVwbGFjZVwnYGAgYW5kIGFueSBvdGhlciBuYW1lXG4gICByZWdpc3RlcmVkIHZpYSBgYGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigpYGAsIHNlZSBzZWN0aW9uICpDb2RlYyBCYXNlXG4gICBDbGFzc2VzKi4gRm9yIGEgbGlzdCBvZiBwb3NzaWJsZSBlbmNvZGluZ3MsIHNlZSBzZWN0aW9uICpTdGFuZGFyZFxuICAgRW5jb2RpbmdzKi5cblxuICAgQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogU3VwcG9ydCBmb3Iga2V5d29yZCBhcmd1bWVudHMgYWRkZWQuXG5cbnN0ci5lbmRzd2l0aChzdWZmaXhbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gYGBUcnVlYGAgaWYgdGhlIHN0cmluZyBlbmRzIHdpdGggdGhlIHNwZWNpZmllZCAqc3VmZml4KixcbiAgIG90aGVyd2lzZSByZXR1cm4gYGBGYWxzZWBgLiAgKnN1ZmZpeCogY2FuIGFsc28gYmUgYSB0dXBsZSBvZlxuICAgc3VmZml4ZXMgdG8gbG9vayBmb3IuICBXaXRoIG9wdGlvbmFsICpzdGFydCosIHRlc3QgYmVnaW5uaW5nIGF0XG4gICB0aGF0IHBvc2l0aW9uLiAgV2l0aCBvcHRpb25hbCAqZW5kKiwgc3RvcCBjb21wYXJpbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uXG5cbnN0ci5leHBhbmR0YWJzKFt0YWJzaXplXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdoZXJlIGFsbCB0YWIgY2hhcmFjdGVycyBhcmUgcmVwbGFjZWRcbiAgIGJ5IHplcm8gb3IgbW9yZSBzcGFjZXMsIGRlcGVuZGluZyBvbiB0aGUgY3VycmVudCBjb2x1bW4gYW5kIHRoZVxuICAgZ2l2ZW4gdGFiIHNpemUuICBUaGUgY29sdW1uIG51bWJlciBpcyByZXNldCB0byB6ZXJvIGFmdGVyIGVhY2hcbiAgIG5ld2xpbmUgb2NjdXJyaW5nIGluIHRoZSBzdHJpbmcuIElmICp0YWJzaXplKiBpcyBub3QgZ2l2ZW4sIGEgdGFiXG4gICBzaXplIG9mIGBgOGBgIGNoYXJhY3RlcnMgaXMgYXNzdW1lZC4gIFRoaXMgZG9lc25cJ3QgdW5kZXJzdGFuZCBvdGhlclxuICAgbm9uLXByaW50aW5nIGNoYXJhY3RlcnMgb3IgZXNjYXBlIHNlcXVlbmNlcy5cblxuc3RyLmZpbmQoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIHRoZSBsb3dlc3QgaW5kZXggaW4gdGhlIHN0cmluZyB3aGVyZSBzdWJzdHJpbmcgKnN1YiogaXNcbiAgIGZvdW5kLCBzdWNoIHRoYXQgKnN1YiogaXMgY29udGFpbmVkIGluIHRoZSBzbGljZSBgYHNbc3RhcnQ6ZW5kXWBgLlxuICAgT3B0aW9uYWwgYXJndW1lbnRzICpzdGFydCogYW5kICplbmQqIGFyZSBpbnRlcnByZXRlZCBhcyBpbiBzbGljZVxuICAgbm90YXRpb24uICBSZXR1cm4gYGAtMWBgIGlmICpzdWIqIGlzIG5vdCBmb3VuZC5cblxuICAgTm90ZTogVGhlIGBgZmluZCgpYGAgbWV0aG9kIHNob3VsZCBiZSB1c2VkIG9ubHkgaWYgeW91IG5lZWQgdG8ga25vdyB0aGVcbiAgICAgcG9zaXRpb24gb2YgKnN1YiouICBUbyBjaGVjayBpZiAqc3ViKiBpcyBhIHN1YnN0cmluZyBvciBub3QsIHVzZVxuICAgICB0aGUgYGBpbmBgIG9wZXJhdG9yOlxuXG4gICAgICAgID4+PiBcJ1B5XCcgaW4gXCdQeXRob25cJ1xuICAgICAgICBUcnVlXG5cbnN0ci5mb3JtYXQoKmFyZ3MsICoqa3dhcmdzKVxuXG4gICBQZXJmb3JtIGEgc3RyaW5nIGZvcm1hdHRpbmcgb3BlcmF0aW9uLiAgVGhlIHN0cmluZyBvbiB3aGljaCB0aGlzXG4gICBtZXRob2QgaXMgY2FsbGVkIGNhbiBjb250YWluIGxpdGVyYWwgdGV4dCBvciByZXBsYWNlbWVudCBmaWVsZHNcbiAgIGRlbGltaXRlZCBieSBicmFjZXMgYGB7fWBgLiAgRWFjaCByZXBsYWNlbWVudCBmaWVsZCBjb250YWlucyBlaXRoZXJcbiAgIHRoZSBudW1lcmljIGluZGV4IG9mIGEgcG9zaXRpb25hbCBhcmd1bWVudCwgb3IgdGhlIG5hbWUgb2YgYVxuICAga2V5d29yZCBhcmd1bWVudC4gIFJldHVybnMgYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2hlcmUgZWFjaFxuICAgcmVwbGFjZW1lbnQgZmllbGQgaXMgcmVwbGFjZWQgd2l0aCB0aGUgc3RyaW5nIHZhbHVlIG9mIHRoZVxuICAgY29ycmVzcG9uZGluZyBhcmd1bWVudC5cblxuICAgPj4+ICJUaGUgc3VtIG9mIDEgKyAyIGlzIHswfSIuZm9ybWF0KDErMilcbiAgIFwnVGhlIHN1bSBvZiAxICsgMiBpcyAzXCdcblxuICAgU2VlICpGb3JtYXQgU3RyaW5nIFN5bnRheCogZm9yIGEgZGVzY3JpcHRpb24gb2YgdGhlIHZhcmlvdXNcbiAgIGZvcm1hdHRpbmcgb3B0aW9ucyB0aGF0IGNhbiBiZSBzcGVjaWZpZWQgaW4gZm9ybWF0IHN0cmluZ3MuXG5cbnN0ci5mb3JtYXRfbWFwKG1hcHBpbmcpXG5cbiAgIFNpbWlsYXIgdG8gYGBzdHIuZm9ybWF0KCoqbWFwcGluZylgYCwgZXhjZXB0IHRoYXQgYGBtYXBwaW5nYGAgaXNcbiAgIHVzZWQgZGlyZWN0bHkgYW5kIG5vdCBjb3BpZWQgdG8gYSBgYGRpY3RgYCAuICBUaGlzIGlzIHVzZWZ1bCBpZiBmb3JcbiAgIGV4YW1wbGUgYGBtYXBwaW5nYGAgaXMgYSBkaWN0IHN1YmNsYXNzOlxuXG4gICA+Pj4gY2xhc3MgRGVmYXVsdChkaWN0KTpcbiAgIC4uLiAgICAgZGVmIF9fbWlzc2luZ19fKHNlbGYsIGtleSk6XG4gICAuLi4gICAgICAgICByZXR1cm4ga2V5XG4gICAuLi5cbiAgID4+PiBcJ3tuYW1lfSB3YXMgYm9ybiBpbiB7Y291bnRyeX1cJy5mb3JtYXRfbWFwKERlZmF1bHQobmFtZT1cJ0d1aWRvXCcpKVxuICAgXCdHdWlkbyB3YXMgYm9ybiBpbiBjb3VudHJ5XCdcblxuICAgTmV3IGluIHZlcnNpb24gMy4yLlxuXG5zdHIuaW5kZXgoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgTGlrZSBgYGZpbmQoKWBgLCBidXQgcmFpc2UgYGBWYWx1ZUVycm9yYGAgd2hlbiB0aGUgc3Vic3RyaW5nIGlzIG5vdFxuICAgZm91bmQuXG5cbnN0ci5pc2FsbnVtKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgYWxwaGFudW1lcmljIGFuZFxuICAgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgQSBjaGFyYWN0ZXJcbiAgIGBgY2BgIGlzIGFscGhhbnVtZXJpYyBpZiBvbmUgb2YgdGhlIGZvbGxvd2luZyByZXR1cm5zIGBgVHJ1ZWBgOlxuICAgYGBjLmlzYWxwaGEoKWBgLCBgYGMuaXNkZWNpbWFsKClgYCwgYGBjLmlzZGlnaXQoKWBgLCBvclxuICAgYGBjLmlzbnVtZXJpYygpYGAuXG5cbnN0ci5pc2FscGhhKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgYWxwaGFiZXRpYyBhbmRcbiAgIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIEFscGhhYmV0aWNcbiAgIGNoYXJhY3RlcnMgYXJlIHRob3NlIGNoYXJhY3RlcnMgZGVmaW5lZCBpbiB0aGUgVW5pY29kZSBjaGFyYWN0ZXJcbiAgIGRhdGFiYXNlIGFzICJMZXR0ZXIiLCBpLmUuLCB0aG9zZSB3aXRoIGdlbmVyYWwgY2F0ZWdvcnkgcHJvcGVydHlcbiAgIGJlaW5nIG9uZSBvZiAiTG0iLCAiTHQiLCAiTHUiLCAiTGwiLCBvciAiTG8iLiAgTm90ZSB0aGF0IHRoaXMgaXNcbiAgIGRpZmZlcmVudCBmcm9tIHRoZSAiQWxwaGFiZXRpYyIgcHJvcGVydHkgZGVmaW5lZCBpbiB0aGUgVW5pY29kZVxuICAgU3RhbmRhcmQuXG5cbnN0ci5pc2RlY2ltYWwoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBkZWNpbWFsIGNoYXJhY3RlcnNcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuIERlY2ltYWxcbiAgIGNoYXJhY3RlcnMgYXJlIHRob3NlIGZyb20gZ2VuZXJhbCBjYXRlZ29yeSAiTmQiLiBUaGlzIGNhdGVnb3J5XG4gICBpbmNsdWRlcyBkaWdpdCBjaGFyYWN0ZXJzLCBhbmQgYWxsIGNoYXJhY3RlcnMgdGhhdCBjYW4gYmUgdXNlZCB0b1xuICAgZm9ybSBkZWNpbWFsLXJhZGl4IG51bWJlcnMsIGUuZy4gVSswNjYwLCBBUkFCSUMtSU5ESUMgRElHSVQgWkVSTy5cblxuc3RyLmlzZGlnaXQoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBkaWdpdHMgYW5kIHRoZXJlIGlzXG4gICBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBEaWdpdHMgaW5jbHVkZSBkZWNpbWFsXG4gICBjaGFyYWN0ZXJzIGFuZCBkaWdpdHMgdGhhdCBuZWVkIHNwZWNpYWwgaGFuZGxpbmcsIHN1Y2ggYXMgdGhlXG4gICBjb21wYXRpYmlsaXR5IHN1cGVyc2NyaXB0IGRpZ2l0cy4gIEZvcm1hbGx5LCBhIGRpZ2l0IGlzIGEgY2hhcmFjdGVyXG4gICB0aGF0IGhhcyB0aGUgcHJvcGVydHkgdmFsdWUgTnVtZXJpY19UeXBlPURpZ2l0IG9yXG4gICBOdW1lcmljX1R5cGU9RGVjaW1hbC5cblxuc3RyLmlzaWRlbnRpZmllcigpXG5cbiAgIFJldHVybiB0cnVlIGlmIHRoZSBzdHJpbmcgaXMgYSB2YWxpZCBpZGVudGlmaWVyIGFjY29yZGluZyB0byB0aGVcbiAgIGxhbmd1YWdlIGRlZmluaXRpb24sIHNlY3Rpb24gKklkZW50aWZpZXJzIGFuZCBrZXl3b3JkcyouXG5cbnN0ci5pc2xvd2VyKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNhc2VkIGNoYXJhY3RlcnMgWzRdIGluIHRoZSBzdHJpbmcgYXJlIGxvd2VyY2FzZVxuICAgYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjYXNlZCBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS5cblxuc3RyLmlzbnVtZXJpYygpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIG51bWVyaWMgY2hhcmFjdGVycyxcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuIE51bWVyaWNcbiAgIGNoYXJhY3RlcnMgaW5jbHVkZSBkaWdpdCBjaGFyYWN0ZXJzLCBhbmQgYWxsIGNoYXJhY3RlcnMgdGhhdCBoYXZlXG4gICB0aGUgVW5pY29kZSBudW1lcmljIHZhbHVlIHByb3BlcnR5LCBlLmcuIFUrMjE1NSwgVlVMR0FSIEZSQUNUSU9OXG4gICBPTkUgRklGVEguICBGb3JtYWxseSwgbnVtZXJpYyBjaGFyYWN0ZXJzIGFyZSB0aG9zZSB3aXRoIHRoZVxuICAgcHJvcGVydHkgdmFsdWUgTnVtZXJpY19UeXBlPURpZ2l0LCBOdW1lcmljX1R5cGU9RGVjaW1hbCBvclxuICAgTnVtZXJpY19UeXBlPU51bWVyaWMuXG5cbnN0ci5pc3ByaW50YWJsZSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIHByaW50YWJsZSBvciB0aGVcbiAgIHN0cmluZyBpcyBlbXB0eSwgZmFsc2Ugb3RoZXJ3aXNlLiAgTm9ucHJpbnRhYmxlIGNoYXJhY3RlcnMgYXJlXG4gICB0aG9zZSBjaGFyYWN0ZXJzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgY2hhcmFjdGVyIGRhdGFiYXNlIGFzXG4gICAiT3RoZXIiIG9yICJTZXBhcmF0b3IiLCBleGNlcHRpbmcgdGhlIEFTQ0lJIHNwYWNlICgweDIwKSB3aGljaCBpc1xuICAgY29uc2lkZXJlZCBwcmludGFibGUuICAoTm90ZSB0aGF0IHByaW50YWJsZSBjaGFyYWN0ZXJzIGluIHRoaXNcbiAgIGNvbnRleHQgYXJlIHRob3NlIHdoaWNoIHNob3VsZCBub3QgYmUgZXNjYXBlZCB3aGVuIGBgcmVwcigpYGAgaXNcbiAgIGludm9rZWQgb24gYSBzdHJpbmcuICBJdCBoYXMgbm8gYmVhcmluZyBvbiB0aGUgaGFuZGxpbmcgb2Ygc3RyaW5nc1xuICAgd3JpdHRlbiB0byBgYHN5cy5zdGRvdXRgYCBvciBgYHN5cy5zdGRlcnJgYC4pXG5cbnN0ci5pc3NwYWNlKClcblxuICAgUmV0dXJuIHRydWUgaWYgdGhlcmUgYXJlIG9ubHkgd2hpdGVzcGFjZSBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmdcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBXaGl0ZXNwYWNlXG4gICBjaGFyYWN0ZXJzICBhcmUgdGhvc2UgY2hhcmFjdGVycyBkZWZpbmVkIGluIHRoZSBVbmljb2RlIGNoYXJhY3RlclxuICAgZGF0YWJhc2UgYXMgIk90aGVyIiBvciAiU2VwYXJhdG9yIiBhbmQgdGhvc2Ugd2l0aCBiaWRpcmVjdGlvbmFsXG4gICBwcm9wZXJ0eSBiZWluZyBvbmUgb2YgIldTIiwgIkIiLCBvciAiUyIuXG5cbnN0ci5pc3RpdGxlKClcblxuICAgUmV0dXJuIHRydWUgaWYgdGhlIHN0cmluZyBpcyBhIHRpdGxlY2FzZWQgc3RyaW5nIGFuZCB0aGVyZSBpcyBhdFxuICAgbGVhc3Qgb25lIGNoYXJhY3RlciwgZm9yIGV4YW1wbGUgdXBwZXJjYXNlIGNoYXJhY3RlcnMgbWF5IG9ubHlcbiAgIGZvbGxvdyB1bmNhc2VkIGNoYXJhY3RlcnMgYW5kIGxvd2VyY2FzZSBjaGFyYWN0ZXJzIG9ubHkgY2FzZWQgb25lcy5cbiAgIFJldHVybiBmYWxzZSBvdGhlcndpc2UuXG5cbnN0ci5pc3VwcGVyKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNhc2VkIGNoYXJhY3RlcnMgWzRdIGluIHRoZSBzdHJpbmcgYXJlIHVwcGVyY2FzZVxuICAgYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjYXNlZCBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS5cblxuc3RyLmpvaW4oaXRlcmFibGUpXG5cbiAgIFJldHVybiBhIHN0cmluZyB3aGljaCBpcyB0aGUgY29uY2F0ZW5hdGlvbiBvZiB0aGUgc3RyaW5ncyBpbiB0aGVcbiAgICppdGVyYWJsZSogKml0ZXJhYmxlKi4gIEEgYGBUeXBlRXJyb3JgYCB3aWxsIGJlIHJhaXNlZCBpZiB0aGVyZSBhcmVcbiAgIGFueSBub24tc3RyaW5nIHZhbHVlcyBpbiAqaXRlcmFibGUqLCBpbmNsdWRpbmcgYGBieXRlc2BgIG9iamVjdHMuXG4gICBUaGUgc2VwYXJhdG9yIGJldHdlZW4gZWxlbWVudHMgaXMgdGhlIHN0cmluZyBwcm92aWRpbmcgdGhpcyBtZXRob2QuXG5cbnN0ci5sanVzdCh3aWR0aFssIGZpbGxjaGFyXSlcblxuICAgUmV0dXJuIHRoZSBzdHJpbmcgbGVmdCBqdXN0aWZpZWQgaW4gYSBzdHJpbmcgb2YgbGVuZ3RoICp3aWR0aCouXG4gICBQYWRkaW5nIGlzIGRvbmUgdXNpbmcgdGhlIHNwZWNpZmllZCAqZmlsbGNoYXIqIChkZWZhdWx0IGlzIGFcbiAgIHNwYWNlKS4gIFRoZSBvcmlnaW5hbCBzdHJpbmcgaXMgcmV0dXJuZWQgaWYgKndpZHRoKiBpcyBsZXNzIHRoYW4gb3JcbiAgIGVxdWFsIHRvIGBgbGVuKHMpYGAuXG5cbnN0ci5sb3dlcigpXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGFsbCB0aGUgY2FzZWQgY2hhcmFjdGVycyBbNF1cbiAgIGNvbnZlcnRlZCB0byBsb3dlcmNhc2UuXG5cbnN0ci5sc3RyaXAoW2NoYXJzXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggbGVhZGluZyBjaGFyYWN0ZXJzIHJlbW92ZWQuICBUaGVcbiAgICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGUgc2V0IG9mIGNoYXJhY3RlcnMgdG8gYmVcbiAgIHJlbW92ZWQuICBJZiBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGUgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0b1xuICAgcmVtb3Zpbmcgd2hpdGVzcGFjZS4gIFRoZSAqY2hhcnMqIGFyZ3VtZW50IGlzIG5vdCBhIHByZWZpeDsgcmF0aGVyLFxuICAgYWxsIGNvbWJpbmF0aW9ucyBvZiBpdHMgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5sc3RyaXAoKVxuICAgXCdzcGFjaW91cyAgIFwnXG4gICA+Pj4gXCd3d3cuZXhhbXBsZS5jb21cJy5sc3RyaXAoXCdjbW93ei5cJylcbiAgIFwnZXhhbXBsZS5jb21cJ1xuXG5zdGF0aWMgc3RyLm1ha2V0cmFucyh4WywgeVssIHpdXSlcblxuICAgVGhpcyBzdGF0aWMgbWV0aG9kIHJldHVybnMgYSB0cmFuc2xhdGlvbiB0YWJsZSB1c2FibGUgZm9yXG4gICBgYHN0ci50cmFuc2xhdGUoKWBgLlxuXG4gICBJZiB0aGVyZSBpcyBvbmx5IG9uZSBhcmd1bWVudCwgaXQgbXVzdCBiZSBhIGRpY3Rpb25hcnkgbWFwcGluZ1xuICAgVW5pY29kZSBvcmRpbmFscyAoaW50ZWdlcnMpIG9yIGNoYXJhY3RlcnMgKHN0cmluZ3Mgb2YgbGVuZ3RoIDEpIHRvXG4gICBVbmljb2RlIG9yZGluYWxzLCBzdHJpbmdzIChvZiBhcmJpdHJhcnkgbGVuZ3Rocykgb3IgTm9uZS5cbiAgIENoYXJhY3RlciBrZXlzIHdpbGwgdGhlbiBiZSBjb252ZXJ0ZWQgdG8gb3JkaW5hbHMuXG5cbiAgIElmIHRoZXJlIGFyZSB0d28gYXJndW1lbnRzLCB0aGV5IG11c3QgYmUgc3RyaW5ncyBvZiBlcXVhbCBsZW5ndGgsXG4gICBhbmQgaW4gdGhlIHJlc3VsdGluZyBkaWN0aW9uYXJ5LCBlYWNoIGNoYXJhY3RlciBpbiB4IHdpbGwgYmUgbWFwcGVkXG4gICB0byB0aGUgY2hhcmFjdGVyIGF0IHRoZSBzYW1lIHBvc2l0aW9uIGluIHkuICBJZiB0aGVyZSBpcyBhIHRoaXJkXG4gICBhcmd1bWVudCwgaXQgbXVzdCBiZSBhIHN0cmluZywgd2hvc2UgY2hhcmFjdGVycyB3aWxsIGJlIG1hcHBlZCB0b1xuICAgTm9uZSBpbiB0aGUgcmVzdWx0LlxuXG5zdHIucGFydGl0aW9uKHNlcClcblxuICAgU3BsaXQgdGhlIHN0cmluZyBhdCB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiAqc2VwKiwgYW5kIHJldHVybiBhXG4gICAzLXR1cGxlIGNvbnRhaW5pbmcgdGhlIHBhcnQgYmVmb3JlIHRoZSBzZXBhcmF0b3IsIHRoZSBzZXBhcmF0b3JcbiAgIGl0c2VsZiwgYW5kIHRoZSBwYXJ0IGFmdGVyIHRoZSBzZXBhcmF0b3IuICBJZiB0aGUgc2VwYXJhdG9yIGlzIG5vdFxuICAgZm91bmQsIHJldHVybiBhIDMtdHVwbGUgY29udGFpbmluZyB0aGUgc3RyaW5nIGl0c2VsZiwgZm9sbG93ZWQgYnlcbiAgIHR3byBlbXB0eSBzdHJpbmdzLlxuXG5zdHIucmVwbGFjZShvbGQsIG5ld1ssIGNvdW50XSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggYWxsIG9jY3VycmVuY2VzIG9mIHN1YnN0cmluZyAqb2xkKlxuICAgcmVwbGFjZWQgYnkgKm5ldyouICBJZiB0aGUgb3B0aW9uYWwgYXJndW1lbnQgKmNvdW50KiBpcyBnaXZlbiwgb25seVxuICAgdGhlIGZpcnN0ICpjb3VudCogb2NjdXJyZW5jZXMgYXJlIHJlcGxhY2VkLlxuXG5zdHIucmZpbmQoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIHRoZSBoaWdoZXN0IGluZGV4IGluIHRoZSBzdHJpbmcgd2hlcmUgc3Vic3RyaW5nICpzdWIqIGlzXG4gICBmb3VuZCwgc3VjaCB0aGF0ICpzdWIqIGlzIGNvbnRhaW5lZCB3aXRoaW4gYGBzW3N0YXJ0OmVuZF1gYC5cbiAgIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZCAqZW5kKiBhcmUgaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2VcbiAgIG5vdGF0aW9uLiAgUmV0dXJuIGBgLTFgYCBvbiBmYWlsdXJlLlxuXG5zdHIucmluZGV4KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIExpa2UgYGByZmluZCgpYGAgYnV0IHJhaXNlcyBgYFZhbHVlRXJyb3JgYCB3aGVuIHRoZSBzdWJzdHJpbmcgKnN1YipcbiAgIGlzIG5vdCBmb3VuZC5cblxuc3RyLnJqdXN0KHdpZHRoWywgZmlsbGNoYXJdKVxuXG4gICBSZXR1cm4gdGhlIHN0cmluZyByaWdodCBqdXN0aWZpZWQgaW4gYSBzdHJpbmcgb2YgbGVuZ3RoICp3aWR0aCouXG4gICBQYWRkaW5nIGlzIGRvbmUgdXNpbmcgdGhlIHNwZWNpZmllZCAqZmlsbGNoYXIqIChkZWZhdWx0IGlzIGFcbiAgIHNwYWNlKS4gVGhlIG9yaWdpbmFsIHN0cmluZyBpcyByZXR1cm5lZCBpZiAqd2lkdGgqIGlzIGxlc3MgdGhhbiBvclxuICAgZXF1YWwgdG8gYGBsZW4ocylgYC5cblxuc3RyLnJwYXJ0aXRpb24oc2VwKVxuXG4gICBTcGxpdCB0aGUgc3RyaW5nIGF0IHRoZSBsYXN0IG9jY3VycmVuY2Ugb2YgKnNlcCosIGFuZCByZXR1cm4gYVxuICAgMy10dXBsZSBjb250YWluaW5nIHRoZSBwYXJ0IGJlZm9yZSB0aGUgc2VwYXJhdG9yLCB0aGUgc2VwYXJhdG9yXG4gICBpdHNlbGYsIGFuZCB0aGUgcGFydCBhZnRlciB0aGUgc2VwYXJhdG9yLiAgSWYgdGhlIHNlcGFyYXRvciBpcyBub3RcbiAgIGZvdW5kLCByZXR1cm4gYSAzLXR1cGxlIGNvbnRhaW5pbmcgdHdvIGVtcHR5IHN0cmluZ3MsIGZvbGxvd2VkIGJ5XG4gICB0aGUgc3RyaW5nIGl0c2VsZi5cblxuc3RyLnJzcGxpdChbc2VwWywgbWF4c3BsaXRdXSlcblxuICAgUmV0dXJuIGEgbGlzdCBvZiB0aGUgd29yZHMgaW4gdGhlIHN0cmluZywgdXNpbmcgKnNlcCogYXMgdGhlXG4gICBkZWxpbWl0ZXIgc3RyaW5nLiBJZiAqbWF4c3BsaXQqIGlzIGdpdmVuLCBhdCBtb3N0ICptYXhzcGxpdCogc3BsaXRzXG4gICBhcmUgZG9uZSwgdGhlICpyaWdodG1vc3QqIG9uZXMuICBJZiAqc2VwKiBpcyBub3Qgc3BlY2lmaWVkIG9yXG4gICBgYE5vbmVgYCwgYW55IHdoaXRlc3BhY2Ugc3RyaW5nIGlzIGEgc2VwYXJhdG9yLiAgRXhjZXB0IGZvclxuICAgc3BsaXR0aW5nIGZyb20gdGhlIHJpZ2h0LCBgYHJzcGxpdCgpYGAgYmVoYXZlcyBsaWtlIGBgc3BsaXQoKWBgXG4gICB3aGljaCBpcyBkZXNjcmliZWQgaW4gZGV0YWlsIGJlbG93LlxuXG5zdHIucnN0cmlwKFtjaGFyc10pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIHRyYWlsaW5nIGNoYXJhY3RlcnMgcmVtb3ZlZC4gIFRoZVxuICAgKmNoYXJzKiBhcmd1bWVudCBpcyBhIHN0cmluZyBzcGVjaWZ5aW5nIHRoZSBzZXQgb2YgY2hhcmFjdGVycyB0byBiZVxuICAgcmVtb3ZlZC4gIElmIG9taXR0ZWQgb3IgYGBOb25lYGAsIHRoZSAqY2hhcnMqIGFyZ3VtZW50IGRlZmF1bHRzIHRvXG4gICByZW1vdmluZyB3aGl0ZXNwYWNlLiAgVGhlICpjaGFycyogYXJndW1lbnQgaXMgbm90IGEgc3VmZml4OyByYXRoZXIsXG4gICBhbGwgY29tYmluYXRpb25zIG9mIGl0cyB2YWx1ZXMgYXJlIHN0cmlwcGVkOlxuXG4gICA+Pj4gXCcgICBzcGFjaW91cyAgIFwnLnJzdHJpcCgpXG4gICBcJyAgIHNwYWNpb3VzXCdcbiAgID4+PiBcJ21pc3Npc3NpcHBpXCcucnN0cmlwKFwnaXB6XCcpXG4gICBcJ21pc3Npc3NcJ1xuXG5zdHIuc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIHdvcmRzIGluIHRoZSBzdHJpbmcsIHVzaW5nICpzZXAqIGFzIHRoZVxuICAgZGVsaW1pdGVyIHN0cmluZy4gIElmICptYXhzcGxpdCogaXMgZ2l2ZW4sIGF0IG1vc3QgKm1heHNwbGl0KlxuICAgc3BsaXRzIGFyZSBkb25lICh0aHVzLCB0aGUgbGlzdCB3aWxsIGhhdmUgYXQgbW9zdCBgYG1heHNwbGl0KzFgYFxuICAgZWxlbWVudHMpLiAgSWYgKm1heHNwbGl0KiBpcyBub3Qgc3BlY2lmaWVkLCB0aGVuIHRoZXJlIGlzIG5vIGxpbWl0XG4gICBvbiB0aGUgbnVtYmVyIG9mIHNwbGl0cyAoYWxsIHBvc3NpYmxlIHNwbGl0cyBhcmUgbWFkZSkuXG5cbiAgIElmICpzZXAqIGlzIGdpdmVuLCBjb25zZWN1dGl2ZSBkZWxpbWl0ZXJzIGFyZSBub3QgZ3JvdXBlZCB0b2dldGhlclxuICAgYW5kIGFyZSBkZWVtZWQgdG8gZGVsaW1pdCBlbXB0eSBzdHJpbmdzIChmb3IgZXhhbXBsZSxcbiAgIGBgXCcxLCwyXCcuc3BsaXQoXCcsXCcpYGAgcmV0dXJucyBgYFtcJzFcJywgXCdcJywgXCcyXCddYGApLiAgVGhlICpzZXAqXG4gICBhcmd1bWVudCBtYXkgY29uc2lzdCBvZiBtdWx0aXBsZSBjaGFyYWN0ZXJzIChmb3IgZXhhbXBsZSxcbiAgIGBgXCcxPD4yPD4zXCcuc3BsaXQoXCc8PlwnKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnMlwnLCBcJzNcJ11gYCkuIFNwbGl0dGluZ1xuICAgYW4gZW1wdHkgc3RyaW5nIHdpdGggYSBzcGVjaWZpZWQgc2VwYXJhdG9yIHJldHVybnMgYGBbXCdcJ11gYC5cblxuICAgSWYgKnNlcCogaXMgbm90IHNwZWNpZmllZCBvciBpcyBgYE5vbmVgYCwgYSBkaWZmZXJlbnQgc3BsaXR0aW5nXG4gICBhbGdvcml0aG0gaXMgYXBwbGllZDogcnVucyBvZiBjb25zZWN1dGl2ZSB3aGl0ZXNwYWNlIGFyZSByZWdhcmRlZFxuICAgYXMgYSBzaW5nbGUgc2VwYXJhdG9yLCBhbmQgdGhlIHJlc3VsdCB3aWxsIGNvbnRhaW4gbm8gZW1wdHkgc3RyaW5nc1xuICAgYXQgdGhlIHN0YXJ0IG9yIGVuZCBpZiB0aGUgc3RyaW5nIGhhcyBsZWFkaW5nIG9yIHRyYWlsaW5nXG4gICB3aGl0ZXNwYWNlLiAgQ29uc2VxdWVudGx5LCBzcGxpdHRpbmcgYW4gZW1wdHkgc3RyaW5nIG9yIGEgc3RyaW5nXG4gICBjb25zaXN0aW5nIG9mIGp1c3Qgd2hpdGVzcGFjZSB3aXRoIGEgYGBOb25lYGAgc2VwYXJhdG9yIHJldHVybnNcbiAgIGBgW11gYC5cblxuICAgRm9yIGV4YW1wbGUsIGBgXCcgMSAgMiAgIDMgIFwnLnNwbGl0KClgYCByZXR1cm5zIGBgW1wnMVwnLCBcJzJcJywgXCczXCddYGAsXG4gICBhbmQgYGBcJyAgMSAgMiAgIDMgIFwnLnNwbGl0KE5vbmUsIDEpYGAgcmV0dXJucyBgYFtcJzFcJywgXCcyICAgMyAgXCddYGAuXG5cbnN0ci5zcGxpdGxpbmVzKFtrZWVwZW5kc10pXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIGxpbmVzIGluIHRoZSBzdHJpbmcsIGJyZWFraW5nIGF0IGxpbmVcbiAgIGJvdW5kYXJpZXMuICBMaW5lIGJyZWFrcyBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSByZXN1bHRpbmcgbGlzdFxuICAgdW5sZXNzICprZWVwZW5kcyogaXMgZ2l2ZW4gYW5kIHRydWUuXG5cbnN0ci5zdGFydHN3aXRoKHByZWZpeFssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiBgYFRydWVgYCBpZiBzdHJpbmcgc3RhcnRzIHdpdGggdGhlICpwcmVmaXgqLCBvdGhlcndpc2VcbiAgIHJldHVybiBgYEZhbHNlYGAuICpwcmVmaXgqIGNhbiBhbHNvIGJlIGEgdHVwbGUgb2YgcHJlZml4ZXMgdG8gbG9va1xuICAgZm9yLiAgV2l0aCBvcHRpb25hbCAqc3RhcnQqLCB0ZXN0IHN0cmluZyBiZWdpbm5pbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uICBXaXRoIG9wdGlvbmFsICplbmQqLCBzdG9wIGNvbXBhcmluZyBzdHJpbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uXG5cbnN0ci5zdHJpcChbY2hhcnNdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB0aGUgbGVhZGluZyBhbmQgdHJhaWxpbmdcbiAgIGNoYXJhY3RlcnMgcmVtb3ZlZC4gVGhlICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGVcbiAgIHNldCBvZiBjaGFyYWN0ZXJzIHRvIGJlIHJlbW92ZWQuIElmIG9taXR0ZWQgb3IgYGBOb25lYGAsIHRoZVxuICAgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0byByZW1vdmluZyB3aGl0ZXNwYWNlLiBUaGUgKmNoYXJzKlxuICAgYXJndW1lbnQgaXMgbm90IGEgcHJlZml4IG9yIHN1ZmZpeDsgcmF0aGVyLCBhbGwgY29tYmluYXRpb25zIG9mIGl0c1xuICAgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5zdHJpcCgpXG4gICBcJ3NwYWNpb3VzXCdcbiAgID4+PiBcJ3d3dy5leGFtcGxlLmNvbVwnLnN0cmlwKFwnY21vd3ouXCcpXG4gICBcJ2V4YW1wbGVcJ1xuXG5zdHIuc3dhcGNhc2UoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB1cHBlcmNhc2UgY2hhcmFjdGVycyBjb252ZXJ0ZWQgdG9cbiAgIGxvd2VyY2FzZSBhbmQgdmljZSB2ZXJzYS5cblxuc3RyLnRpdGxlKClcblxuICAgUmV0dXJuIGEgdGl0bGVjYXNlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgd2hlcmUgd29yZHMgc3RhcnQgd2l0aCBhblxuICAgdXBwZXJjYXNlIGNoYXJhY3RlciBhbmQgdGhlIHJlbWFpbmluZyBjaGFyYWN0ZXJzIGFyZSBsb3dlcmNhc2UuXG5cbiAgIFRoZSBhbGdvcml0aG0gdXNlcyBhIHNpbXBsZSBsYW5ndWFnZS1pbmRlcGVuZGVudCBkZWZpbml0aW9uIG9mIGFcbiAgIHdvcmQgYXMgZ3JvdXBzIG9mIGNvbnNlY3V0aXZlIGxldHRlcnMuICBUaGUgZGVmaW5pdGlvbiB3b3JrcyBpblxuICAgbWFueSBjb250ZXh0cyBidXQgaXQgbWVhbnMgdGhhdCBhcG9zdHJvcGhlcyBpbiBjb250cmFjdGlvbnMgYW5kXG4gICBwb3NzZXNzaXZlcyBmb3JtIHdvcmQgYm91bmRhcmllcywgd2hpY2ggbWF5IG5vdCBiZSB0aGUgZGVzaXJlZFxuICAgcmVzdWx0OlxuXG4gICAgICA+Pj4gInRoZXlcJ3JlIGJpbGxcJ3MgZnJpZW5kcyBmcm9tIHRoZSBVSyIudGl0bGUoKVxuICAgICAgIlRoZXlcJ1JlIEJpbGxcJ1MgRnJpZW5kcyBGcm9tIFRoZSBVayJcblxuICAgQSB3b3JrYXJvdW5kIGZvciBhcG9zdHJvcGhlcyBjYW4gYmUgY29uc3RydWN0ZWQgdXNpbmcgcmVndWxhclxuICAgZXhwcmVzc2lvbnM6XG5cbiAgICAgID4+PiBpbXBvcnQgcmVcbiAgICAgID4+PiBkZWYgdGl0bGVjYXNlKHMpOlxuICAgICAgICAgICAgICByZXR1cm4gcmUuc3ViKHIiW0EtWmEtel0rKFwnW0EtWmEtel0rKT8iLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhbWJkYSBtbzogbW8uZ3JvdXAoMClbMF0udXBwZXIoKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtby5ncm91cCgwKVsxOl0ubG93ZXIoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzKVxuXG4gICAgICA+Pj4gdGl0bGVjYXNlKCJ0aGV5XCdyZSBiaWxsXCdzIGZyaWVuZHMuIilcbiAgICAgICJUaGV5XCdyZSBCaWxsXCdzIEZyaWVuZHMuIlxuXG5zdHIudHJhbnNsYXRlKG1hcClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgKnMqIHdoZXJlIGFsbCBjaGFyYWN0ZXJzIGhhdmUgYmVlbiBtYXBwZWRcbiAgIHRocm91Z2ggdGhlICptYXAqIHdoaWNoIG11c3QgYmUgYSBkaWN0aW9uYXJ5IG9mIFVuaWNvZGUgb3JkaW5hbHNcbiAgIChpbnRlZ2VycykgdG8gVW5pY29kZSBvcmRpbmFscywgc3RyaW5ncyBvciBgYE5vbmVgYC4gIFVubWFwcGVkXG4gICBjaGFyYWN0ZXJzIGFyZSBsZWZ0IHVudG91Y2hlZC4gQ2hhcmFjdGVycyBtYXBwZWQgdG8gYGBOb25lYGAgYXJlXG4gICBkZWxldGVkLlxuXG4gICBZb3UgY2FuIHVzZSBgYHN0ci5tYWtldHJhbnMoKWBgIHRvIGNyZWF0ZSBhIHRyYW5zbGF0aW9uIG1hcCBmcm9tXG4gICBjaGFyYWN0ZXItdG8tY2hhcmFjdGVyIG1hcHBpbmdzIGluIGRpZmZlcmVudCBmb3JtYXRzLlxuXG4gICBOb3RlOiBBbiBldmVuIG1vcmUgZmxleGlibGUgYXBwcm9hY2ggaXMgdG8gY3JlYXRlIGEgY3VzdG9tIGNoYXJhY3RlclxuICAgICBtYXBwaW5nIGNvZGVjIHVzaW5nIHRoZSBgYGNvZGVjc2BgIG1vZHVsZSAoc2VlXG4gICAgIGBgZW5jb2RpbmdzLmNwMTI1MWBgIGZvciBhbiBleGFtcGxlKS5cblxuc3RyLnVwcGVyKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggYWxsIHRoZSBjYXNlZCBjaGFyYWN0ZXJzIFs0XVxuICAgY29udmVydGVkIHRvIHVwcGVyY2FzZS4gIE5vdGUgdGhhdCBgYHN0ci51cHBlcigpLmlzdXBwZXIoKWBgIG1pZ2h0XG4gICBiZSBgYEZhbHNlYGAgaWYgYGBzYGAgY29udGFpbnMgdW5jYXNlZCBjaGFyYWN0ZXJzIG9yIGlmIHRoZSBVbmljb2RlXG4gICBjYXRlZ29yeSBvZiB0aGUgcmVzdWx0aW5nIGNoYXJhY3RlcihzKSBpcyBub3QgIkx1IiAoTGV0dGVyLFxuICAgdXBwZXJjYXNlKSwgYnV0IGUuZy4gIkx0IiAoTGV0dGVyLCB0aXRsZWNhc2UpLlxuXG5zdHIuemZpbGwod2lkdGgpXG5cbiAgIFJldHVybiB0aGUgbnVtZXJpYyBzdHJpbmcgbGVmdCBmaWxsZWQgd2l0aCB6ZXJvcyBpbiBhIHN0cmluZyBvZlxuICAgbGVuZ3RoICp3aWR0aCouICBBIHNpZ24gcHJlZml4IGlzIGhhbmRsZWQgY29ycmVjdGx5LiAgVGhlIG9yaWdpbmFsXG4gICBzdHJpbmcgaXMgcmV0dXJuZWQgaWYgKndpZHRoKiBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gYGBsZW4ocylgYC5cblxuXG5PbGQgU3RyaW5nIEZvcm1hdHRpbmcgT3BlcmF0aW9uc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuTm90ZTogVGhlIGZvcm1hdHRpbmcgb3BlcmF0aW9ucyBkZXNjcmliZWQgaGVyZSBhcmUgb2Jzb2xldGUgYW5kIG1heSBnb1xuICBhd2F5IGluIGZ1dHVyZSB2ZXJzaW9ucyBvZiBQeXRob24uICBVc2UgdGhlIG5ldyAqU3RyaW5nIEZvcm1hdHRpbmcqXG4gIGluIG5ldyBjb2RlLlxuXG5TdHJpbmcgb2JqZWN0cyBoYXZlIG9uZSB1bmlxdWUgYnVpbHQtaW4gb3BlcmF0aW9uOiB0aGUgYGAlYGAgb3BlcmF0b3Jcbihtb2R1bG8pLiBUaGlzIGlzIGFsc28ga25vd24gYXMgdGhlIHN0cmluZyAqZm9ybWF0dGluZyogb3JcbippbnRlcnBvbGF0aW9uKiBvcGVyYXRvci4gR2l2ZW4gYGBmb3JtYXQgJSB2YWx1ZXNgYCAod2hlcmUgKmZvcm1hdCogaXNcbmEgc3RyaW5nKSwgYGAlYGAgY29udmVyc2lvbiBzcGVjaWZpY2F0aW9ucyBpbiAqZm9ybWF0KiBhcmUgcmVwbGFjZWRcbndpdGggemVybyBvciBtb3JlIGVsZW1lbnRzIG9mICp2YWx1ZXMqLiBUaGUgZWZmZWN0IGlzIHNpbWlsYXIgdG8gdGhlXG51c2luZyBgYHNwcmludGYoKWBgIGluIHRoZSBDIGxhbmd1YWdlLlxuXG5JZiAqZm9ybWF0KiByZXF1aXJlcyBhIHNpbmdsZSBhcmd1bWVudCwgKnZhbHVlcyogbWF5IGJlIGEgc2luZ2xlIG5vbi1cbnR1cGxlIG9iamVjdC4gWzVdICBPdGhlcndpc2UsICp2YWx1ZXMqIG11c3QgYmUgYSB0dXBsZSB3aXRoIGV4YWN0bHlcbnRoZSBudW1iZXIgb2YgaXRlbXMgc3BlY2lmaWVkIGJ5IHRoZSBmb3JtYXQgc3RyaW5nLCBvciBhIHNpbmdsZVxubWFwcGluZyBvYmplY3QgKGZvciBleGFtcGxlLCBhIGRpY3Rpb25hcnkpLlxuXG5BIGNvbnZlcnNpb24gc3BlY2lmaWVyIGNvbnRhaW5zIHR3byBvciBtb3JlIGNoYXJhY3RlcnMgYW5kIGhhcyB0aGVcbmZvbGxvd2luZyBjb21wb25lbnRzLCB3aGljaCBtdXN0IG9jY3VyIGluIHRoaXMgb3JkZXI6XG5cbjEuIFRoZSBgYFwnJVwnYGAgY2hhcmFjdGVyLCB3aGljaCBtYXJrcyB0aGUgc3RhcnQgb2YgdGhlIHNwZWNpZmllci5cblxuMi4gTWFwcGluZyBrZXkgKG9wdGlvbmFsKSwgY29uc2lzdGluZyBvZiBhIHBhcmVudGhlc2lzZWQgc2VxdWVuY2Ugb2ZcbiAgIGNoYXJhY3RlcnMgKGZvciBleGFtcGxlLCBgYChzb21lbmFtZSlgYCkuXG5cbjMuIENvbnZlcnNpb24gZmxhZ3MgKG9wdGlvbmFsKSwgd2hpY2ggYWZmZWN0IHRoZSByZXN1bHQgb2Ygc29tZVxuICAgY29udmVyc2lvbiB0eXBlcy5cblxuNC4gTWluaW11bSBmaWVsZCB3aWR0aCAob3B0aW9uYWwpLiAgSWYgc3BlY2lmaWVkIGFzIGFuIGBgXCcqXCdgYFxuICAgKGFzdGVyaXNrKSwgdGhlIGFjdHVhbCB3aWR0aCBpcyByZWFkIGZyb20gdGhlIG5leHQgZWxlbWVudCBvZiB0aGVcbiAgIHR1cGxlIGluICp2YWx1ZXMqLCBhbmQgdGhlIG9iamVjdCB0byBjb252ZXJ0IGNvbWVzIGFmdGVyIHRoZVxuICAgbWluaW11bSBmaWVsZCB3aWR0aCBhbmQgb3B0aW9uYWwgcHJlY2lzaW9uLlxuXG41LiBQcmVjaXNpb24gKG9wdGlvbmFsKSwgZ2l2ZW4gYXMgYSBgYFwnLlwnYGAgKGRvdCkgZm9sbG93ZWQgYnkgdGhlXG4gICBwcmVjaXNpb24uICBJZiBzcGVjaWZpZWQgYXMgYGBcJypcJ2BgIChhbiBhc3RlcmlzayksIHRoZSBhY3R1YWxcbiAgIHByZWNpc2lvbiBpcyByZWFkIGZyb20gdGhlIG5leHQgZWxlbWVudCBvZiB0aGUgdHVwbGUgaW4gKnZhbHVlcyosXG4gICBhbmQgdGhlIHZhbHVlIHRvIGNvbnZlcnQgY29tZXMgYWZ0ZXIgdGhlIHByZWNpc2lvbi5cblxuNi4gTGVuZ3RoIG1vZGlmaWVyIChvcHRpb25hbCkuXG5cbjcuIENvbnZlcnNpb24gdHlwZS5cblxuV2hlbiB0aGUgcmlnaHQgYXJndW1lbnQgaXMgYSBkaWN0aW9uYXJ5IChvciBvdGhlciBtYXBwaW5nIHR5cGUpLCB0aGVuXG50aGUgZm9ybWF0cyBpbiB0aGUgc3RyaW5nICptdXN0KiBpbmNsdWRlIGEgcGFyZW50aGVzaXNlZCBtYXBwaW5nIGtleVxuaW50byB0aGF0IGRpY3Rpb25hcnkgaW5zZXJ0ZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIGBgXCclXCdgYCBjaGFyYWN0ZXIuXG5UaGUgbWFwcGluZyBrZXkgc2VsZWN0cyB0aGUgdmFsdWUgdG8gYmUgZm9ybWF0dGVkIGZyb20gdGhlIG1hcHBpbmcuXG5Gb3IgZXhhbXBsZTpcblxuPj4+IHByaW50KFwnJShsYW5ndWFnZSlzIGhhcyAlKG51bWJlcikwM2QgcXVvdGUgdHlwZXMuXCcgJVxuLi4uICAgICAgIHtcJ2xhbmd1YWdlXCc6ICJQeXRob24iLCAibnVtYmVyIjogMn0pXG5QeXRob24gaGFzIDAwMiBxdW90ZSB0eXBlcy5cblxuSW4gdGhpcyBjYXNlIG5vIGBgKmBgIHNwZWNpZmllcnMgbWF5IG9jY3VyIGluIGEgZm9ybWF0IChzaW5jZSB0aGV5XG5yZXF1aXJlIGEgc2VxdWVudGlhbCBwYXJhbWV0ZXIgbGlzdCkuXG5cblRoZSBjb252ZXJzaW9uIGZsYWcgY2hhcmFjdGVycyBhcmU6XG5cbistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgRmxhZyAgICAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbis9PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PStcbnwgYGBcJyNcJ2BgICAgfCBUaGUgdmFsdWUgY29udmVyc2lvbiB3aWxsIHVzZSB0aGUgImFsdGVybmF0ZSBmb3JtIiAod2hlcmUgZGVmaW5lZCAgICAgfFxufCAgICAgICAgICAgfCBiZWxvdykuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYFwnMFwnYGAgICB8IFRoZSBjb252ZXJzaW9uIHdpbGwgYmUgemVybyBwYWRkZWQgZm9yIG51bWVyaWMgdmFsdWVzLiAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgXCctXCdgYCAgIHwgVGhlIGNvbnZlcnRlZCB2YWx1ZSBpcyBsZWZ0IGFkanVzdGVkIChvdmVycmlkZXMgdGhlIGBgXCcwXCdgYCAgICAgICAgICAgfFxufCAgICAgICAgICAgfCBjb252ZXJzaW9uIGlmIGJvdGggYXJlIGdpdmVuKS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYFwnIFwnYGAgICB8IChhIHNwYWNlKSBBIGJsYW5rIHNob3VsZCBiZSBsZWZ0IGJlZm9yZSBhIHBvc2l0aXZlIG51bWJlciAob3IgZW1wdHkgICB8XG58ICAgICAgICAgICB8IHN0cmluZykgcHJvZHVjZWQgYnkgYSBzaWduZWQgY29udmVyc2lvbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgXCcrXCdgYCAgIHwgQSBzaWduIGNoYXJhY3RlciAoYGBcJytcJ2BgIG9yIGBgXCctXCdgYCkgd2lsbCBwcmVjZWRlIHRoZSBjb252ZXJzaW9uICAgICB8XG58ICAgICAgICAgICB8IChvdmVycmlkZXMgYSAic3BhY2UiIGZsYWcpLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG5cbkEgbGVuZ3RoIG1vZGlmaWVyIChgYGhgYCwgYGBsYGAsIG9yIGBgTGBgKSBtYXkgYmUgcHJlc2VudCwgYnV0IGlzXG5pZ25vcmVkIGFzIGl0IGlzIG5vdCBuZWNlc3NhcnkgZm9yIFB5dGhvbiAtLSBzbyBlLmcuIGBgJWxkYGAgaXNcbmlkZW50aWNhbCB0byBgYCVkYGAuXG5cblRoZSBjb252ZXJzaW9uIHR5cGVzIGFyZTpcblxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBDb252ZXJzaW9uICAgfCBNZWFuaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgfFxuKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09K1xufCBgYFwnZFwnYGAgICAgICB8IFNpZ25lZCBpbnRlZ2VyIGRlY2ltYWwuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdpXCdgYCAgICAgIHwgU2lnbmVkIGludGVnZXIgZGVjaW1hbC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ29cJ2BgICAgICAgfCBTaWduZWQgb2N0YWwgdmFsdWUuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICgxKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwndVwnYGAgICAgICB8IE9ic29sZXRlIHR5cGUgLS0gaXQgaXMgaWRlbnRpY2FsIHRvIGBgXCdkXCdgYC4gICAgICAgICAgfCAoNykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ3hcJ2BgICAgICAgfCBTaWduZWQgaGV4YWRlY2ltYWwgKGxvd2VyY2FzZSkuICAgICAgICAgICAgICAgICAgICAgICB8ICgyKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnWFwnYGAgICAgICB8IFNpZ25lZCBoZXhhZGVjaW1hbCAodXBwZXJjYXNlKS4gICAgICAgICAgICAgICAgICAgICAgIHwgKDIpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdlXCdgYCAgICAgIHwgRmxvYXRpbmcgcG9pbnQgZXhwb25lbnRpYWwgZm9ybWF0IChsb3dlcmNhc2UpLiAgICAgICAgfCAoMykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ0VcJ2BgICAgICAgfCBGbG9hdGluZyBwb2ludCBleHBvbmVudGlhbCBmb3JtYXQgKHVwcGVyY2FzZSkuICAgICAgICB8ICgzKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnZlwnYGAgICAgICB8IEZsb2F0aW5nIHBvaW50IGRlY2ltYWwgZm9ybWF0LiAgICAgICAgICAgICAgICAgICAgICAgIHwgKDMpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdGXCdgYCAgICAgIHwgRmxvYXRpbmcgcG9pbnQgZGVjaW1hbCBmb3JtYXQuICAgICAgICAgICAgICAgICAgICAgICAgfCAoMykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ2dcJ2BgICAgICAgfCBGbG9hdGluZyBwb2ludCBmb3JtYXQuIFVzZXMgbG93ZXJjYXNlIGV4cG9uZW50aWFsICAgICB8ICg0KSAgICAgfFxufCAgICAgICAgICAgICAgfCBmb3JtYXQgaWYgZXhwb25lbnQgaXMgbGVzcyB0aGFuIC00IG9yIG5vdCBsZXNzIHRoYW4gICB8ICAgICAgICAgfFxufCAgICAgICAgICAgICAgfCBwcmVjaXNpb24sIGRlY2ltYWwgZm9ybWF0IG90aGVyd2lzZS4gICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnR1wnYGAgICAgICB8IEZsb2F0aW5nIHBvaW50IGZvcm1hdC4gVXNlcyB1cHBlcmNhc2UgZXhwb25lbnRpYWwgICAgIHwgKDQpICAgICB8XG58ICAgICAgICAgICAgICB8IGZvcm1hdCBpZiBleHBvbmVudCBpcyBsZXNzIHRoYW4gLTQgb3Igbm90IGxlc3MgdGhhbiAgIHwgICAgICAgICB8XG58ICAgICAgICAgICAgICB8IHByZWNpc2lvbiwgZGVjaW1hbCBmb3JtYXQgb3RoZXJ3aXNlLiAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdjXCdgYCAgICAgIHwgU2luZ2xlIGNoYXJhY3RlciAoYWNjZXB0cyBpbnRlZ2VyIG9yIHNpbmdsZSBjaGFyYWN0ZXIgfCAgICAgICAgIHxcbnwgICAgICAgICAgICAgIHwgc3RyaW5nKS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ3JcJ2BgICAgICAgfCBTdHJpbmcgKGNvbnZlcnRzIGFueSBQeXRob24gb2JqZWN0IHVzaW5nIGBgcmVwcigpYGApLiB8ICg1KSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnc1wnYGAgICAgICB8IFN0cmluZyAoY29udmVydHMgYW55IFB5dGhvbiBvYmplY3QgdXNpbmcgYGBzdHIoKWBgKS4gIHwgKDUpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdhXCdgYCAgICAgIHwgU3RyaW5nIChjb252ZXJ0cyBhbnkgUHl0aG9uIG9iamVjdCB1c2luZyAgICAgICAgICAgICAgfCAoNSkgICAgIHxcbnwgICAgICAgICAgICAgIHwgYGBhc2NpaSgpYGApLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJyVcJ2BgICAgICAgfCBObyBhcmd1bWVudCBpcyBjb252ZXJ0ZWQsIHJlc3VsdHMgaW4gYSBgYFwnJVwnYGAgICAgICAgIHwgICAgICAgICB8XG58ICAgICAgICAgICAgICB8IGNoYXJhY3RlciBpbiB0aGUgcmVzdWx0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG5cbk5vdGVzOlxuXG4xLiBUaGUgYWx0ZXJuYXRlIGZvcm0gY2F1c2VzIGEgbGVhZGluZyB6ZXJvIChgYFwnMFwnYGApIHRvIGJlIGluc2VydGVkXG4gICBiZXR3ZWVuIGxlZnQtaGFuZCBwYWRkaW5nIGFuZCB0aGUgZm9ybWF0dGluZyBvZiB0aGUgbnVtYmVyIGlmIHRoZVxuICAgbGVhZGluZyBjaGFyYWN0ZXIgb2YgdGhlIHJlc3VsdCBpcyBub3QgYWxyZWFkeSBhIHplcm8uXG5cbjIuIFRoZSBhbHRlcm5hdGUgZm9ybSBjYXVzZXMgYSBsZWFkaW5nIGBgXCcweFwnYGAgb3IgYGBcJzBYXCdgYCAoZGVwZW5kaW5nXG4gICBvbiB3aGV0aGVyIHRoZSBgYFwneFwnYGAgb3IgYGBcJ1hcJ2BgIGZvcm1hdCB3YXMgdXNlZCkgdG8gYmUgaW5zZXJ0ZWRcbiAgIGJldHdlZW4gbGVmdC1oYW5kIHBhZGRpbmcgYW5kIHRoZSBmb3JtYXR0aW5nIG9mIHRoZSBudW1iZXIgaWYgdGhlXG4gICBsZWFkaW5nIGNoYXJhY3RlciBvZiB0aGUgcmVzdWx0IGlzIG5vdCBhbHJlYWR5IGEgemVyby5cblxuMy4gVGhlIGFsdGVybmF0ZSBmb3JtIGNhdXNlcyB0aGUgcmVzdWx0IHRvIGFsd2F5cyBjb250YWluIGEgZGVjaW1hbFxuICAgcG9pbnQsIGV2ZW4gaWYgbm8gZGlnaXRzIGZvbGxvdyBpdC5cblxuICAgVGhlIHByZWNpc2lvbiBkZXRlcm1pbmVzIHRoZSBudW1iZXIgb2YgZGlnaXRzIGFmdGVyIHRoZSBkZWNpbWFsXG4gICBwb2ludCBhbmQgZGVmYXVsdHMgdG8gNi5cblxuNC4gVGhlIGFsdGVybmF0ZSBmb3JtIGNhdXNlcyB0aGUgcmVzdWx0IHRvIGFsd2F5cyBjb250YWluIGEgZGVjaW1hbFxuICAgcG9pbnQsIGFuZCB0cmFpbGluZyB6ZXJvZXMgYXJlIG5vdCByZW1vdmVkIGFzIHRoZXkgd291bGQgb3RoZXJ3aXNlXG4gICBiZS5cblxuICAgVGhlIHByZWNpc2lvbiBkZXRlcm1pbmVzIHRoZSBudW1iZXIgb2Ygc2lnbmlmaWNhbnQgZGlnaXRzIGJlZm9yZVxuICAgYW5kIGFmdGVyIHRoZSBkZWNpbWFsIHBvaW50IGFuZCBkZWZhdWx0cyB0byA2LlxuXG41LiBJZiBwcmVjaXNpb24gaXMgYGBOYGAsIHRoZSBvdXRwdXQgaXMgdHJ1bmNhdGVkIHRvIGBgTmBgIGNoYXJhY3RlcnMuXG5cbjEuIFNlZSAqKlBFUCAyMzcqKi5cblxuU2luY2UgUHl0aG9uIHN0cmluZ3MgaGF2ZSBhbiBleHBsaWNpdCBsZW5ndGgsIGBgJXNgYCBjb252ZXJzaW9ucyBkb1xubm90IGFzc3VtZSB0aGF0IGBgXCdcXDBcJ2BgIGlzIHRoZSBlbmQgb2YgdGhlIHN0cmluZy5cblxuQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogYGAlZmBgIGNvbnZlcnNpb25zIGZvciBudW1iZXJzIHdob3NlIGFic29sdXRlXG52YWx1ZSBpcyBvdmVyIDFlNTAgYXJlIG5vIGxvbmdlciByZXBsYWNlZCBieSBgYCVnYGAgY29udmVyc2lvbnMuXG5cbkFkZGl0aW9uYWwgc3RyaW5nIG9wZXJhdGlvbnMgYXJlIGRlZmluZWQgaW4gc3RhbmRhcmQgbW9kdWxlc1xuYGBzdHJpbmdgYCBhbmQgYGByZWBgLlxuXG5cblJhbmdlIFR5cGVcbj09PT09PT09PT1cblxuVGhlIGBgcmFuZ2VgYCB0eXBlIGlzIGFuIGltbXV0YWJsZSBzZXF1ZW5jZSB3aGljaCBpcyBjb21tb25seSB1c2VkIGZvclxubG9vcGluZy4gIFRoZSBhZHZhbnRhZ2Ugb2YgdGhlIGBgcmFuZ2VgYCB0eXBlIGlzIHRoYXQgYW4gYGByYW5nZWBgXG5vYmplY3Qgd2lsbCBhbHdheXMgdGFrZSB0aGUgc2FtZSBhbW91bnQgb2YgbWVtb3J5LCBubyBtYXR0ZXIgdGhlIHNpemVcbm9mIHRoZSByYW5nZSBpdCByZXByZXNlbnRzLlxuXG5SYW5nZSBvYmplY3RzIGhhdmUgcmVsYXRpdmVseSBsaXR0bGUgYmVoYXZpb3I6IHRoZXkgc3VwcG9ydCBpbmRleGluZyxcbmNvbnRhaW5zLCBpdGVyYXRpb24sIHRoZSBgYGxlbigpYGAgZnVuY3Rpb24sIGFuZCB0aGUgZm9sbG93aW5nXG5tZXRob2RzOlxuXG5yYW5nZS5jb3VudCh4KVxuXG4gICBSZXR1cm4gdGhlIG51bWJlciBvZiAqaSpcJ3MgZm9yIHdoaWNoIGBgc1tpXSA9PSB4YGAuXG5cbiAgICAgIE5ldyBpbiB2ZXJzaW9uIDMuMi5cblxucmFuZ2UuaW5kZXgoeClcblxuICAgUmV0dXJuIHRoZSBzbWFsbGVzdCAqaSogc3VjaCB0aGF0IGBgc1tpXSA9PSB4YGAuICBSYWlzZXNcbiAgIGBgVmFsdWVFcnJvcmBgIHdoZW4gKngqIGlzIG5vdCBpbiB0aGUgcmFuZ2UuXG5cbiAgICAgIE5ldyBpbiB2ZXJzaW9uIDMuMi5cblxuXG5NdXRhYmxlIFNlcXVlbmNlIFR5cGVzXG49PT09PT09PT09PT09PT09PT09PT09XG5cbkxpc3QgYW5kIGJ5dGVhcnJheSBvYmplY3RzIHN1cHBvcnQgYWRkaXRpb25hbCBvcGVyYXRpb25zIHRoYXQgYWxsb3dcbmluLXBsYWNlIG1vZGlmaWNhdGlvbiBvZiB0aGUgb2JqZWN0LiAgT3RoZXIgbXV0YWJsZSBzZXF1ZW5jZSB0eXBlc1xuKHdoZW4gYWRkZWQgdG8gdGhlIGxhbmd1YWdlKSBzaG91bGQgYWxzbyBzdXBwb3J0IHRoZXNlIG9wZXJhdGlvbnMuXG5TdHJpbmdzIGFuZCB0dXBsZXMgYXJlIGltbXV0YWJsZSBzZXF1ZW5jZSB0eXBlczogc3VjaCBvYmplY3RzIGNhbm5vdFxuYmUgbW9kaWZpZWQgb25jZSBjcmVhdGVkLiBUaGUgZm9sbG93aW5nIG9wZXJhdGlvbnMgYXJlIGRlZmluZWQgb25cbm11dGFibGUgc2VxdWVuY2UgdHlwZXMgKHdoZXJlICp4KiBpcyBhbiBhcmJpdHJhcnkgb2JqZWN0KS5cblxuTm90ZSB0aGF0IHdoaWxlIGxpc3RzIGFsbG93IHRoZWlyIGl0ZW1zIHRvIGJlIG9mIGFueSB0eXBlLCBieXRlYXJyYXlcbm9iamVjdCAiaXRlbXMiIGFyZSBhbGwgaW50ZWdlcnMgaW4gdGhlIHJhbmdlIDAgPD0geCA8IDI1Ni5cblxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IE9wZXJhdGlvbiAgICAgICAgICAgICAgICAgICAgICB8IFJlc3VsdCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgICAgICAgICAgICAgICAgIHxcbis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09K1xufCBgYHNbaV0gPSB4YGAgICAgICAgICAgICAgICAgICAgfCBpdGVtICppKiBvZiAqcyogaXMgcmVwbGFjZWQgYnkgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICp4KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqXSA9IHRgYCAgICAgICAgICAgICAgICAgfCBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqIGlzICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHJlcGxhY2VkIGJ5IHRoZSBjb250ZW50cyBvZiB0aGUgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgaXRlcmFibGUgKnQqICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgZGVsIHNbaTpqXWBgICAgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2k6al0gPSBbXWBgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqOmtdID0gdGBgICAgICAgICAgICAgICAgfCB0aGUgZWxlbWVudHMgb2YgYGBzW2k6ajprXWBgIGFyZSB8ICgxKSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHJlcGxhY2VkIGJ5IHRob3NlIG9mICp0KiAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYGRlbCBzW2k6ajprXWBgICAgICAgICAgICAgICAgfCByZW1vdmVzIHRoZSBlbGVtZW50cyBvZiAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1tpOmo6a11gYCBmcm9tIHRoZSBsaXN0ICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuYXBwZW5kKHgpYGAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tsZW4ocyk6bGVuKHMpXSA9ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFt4XWBgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuZXh0ZW5kKHgpYGAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tsZW4ocyk6bGVuKHMpXSA9IHhgYCB8ICgyKSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmNvdW50KHgpYGAgICAgICAgICAgICAgICAgIHwgcmV0dXJuIG51bWJlciBvZiAqaSpcJ3MgZm9yIHdoaWNoIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBzW2ldID09IHhgYCAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5pbmRleCh4WywgaVssIGpdXSlgYCAgICAgICB8IHJldHVybiBzbWFsbGVzdCAqayogc3VjaCB0aGF0ICAgIHwgKDMpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBzW2tdID09IHhgYCBhbmQgYGBpIDw9IGsgPCBqYGAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5pbnNlcnQoaSwgeClgYCAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2k6aV0gPSBbeF1gYCAgICAgICAgIHwgKDQpICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMucG9wKFtpXSlgYCAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgeCA9IHNbaV07IGRlbCBzW2ldOyAgICB8ICg1KSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHJldHVybiB4YGAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMucmVtb3ZlKHgpYGAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgZGVsIHNbcy5pbmRleCh4KV1gYCAgICB8ICgzKSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnJldmVyc2UoKWBgICAgICAgICAgICAgICAgIHwgcmV2ZXJzZXMgdGhlIGl0ZW1zIG9mICpzKiBpbiAgICAgfCAoNikgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBwbGFjZSAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnNvcnQoW2tleVssIHJldmVyc2VdXSlgYCAgIHwgc29ydCB0aGUgaXRlbXMgb2YgKnMqIGluIHBsYWNlICAgfCAoNiksICg3KSwgKDgpICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG5cbk5vdGVzOlxuXG4xLiAqdCogbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aCBhcyB0aGUgc2xpY2UgaXQgaXMgcmVwbGFjaW5nLlxuXG4yLiAqeCogY2FuIGJlIGFueSBpdGVyYWJsZSBvYmplY3QuXG5cbjMuIFJhaXNlcyBgYFZhbHVlRXJyb3JgYCB3aGVuICp4KiBpcyBub3QgZm91bmQgaW4gKnMqLiBXaGVuIGEgbmVnYXRpdmVcbiAgIGluZGV4IGlzIHBhc3NlZCBhcyB0aGUgc2Vjb25kIG9yIHRoaXJkIHBhcmFtZXRlciB0byB0aGUgYGBpbmRleCgpYGBcbiAgIG1ldGhvZCwgdGhlIHNlcXVlbmNlIGxlbmd0aCBpcyBhZGRlZCwgYXMgZm9yIHNsaWNlIGluZGljZXMuICBJZiBpdFxuICAgaXMgc3RpbGwgbmVnYXRpdmUsIGl0IGlzIHRydW5jYXRlZCB0byB6ZXJvLCBhcyBmb3Igc2xpY2UgaW5kaWNlcy5cblxuNC4gV2hlbiBhIG5lZ2F0aXZlIGluZGV4IGlzIHBhc3NlZCBhcyB0aGUgZmlyc3QgcGFyYW1ldGVyIHRvIHRoZVxuICAgYGBpbnNlcnQoKWBgIG1ldGhvZCwgdGhlIHNlcXVlbmNlIGxlbmd0aCBpcyBhZGRlZCwgYXMgZm9yIHNsaWNlXG4gICBpbmRpY2VzLiAgSWYgaXQgaXMgc3RpbGwgbmVnYXRpdmUsIGl0IGlzIHRydW5jYXRlZCB0byB6ZXJvLCBhcyBmb3JcbiAgIHNsaWNlIGluZGljZXMuXG5cbjUuIFRoZSBvcHRpb25hbCBhcmd1bWVudCAqaSogZGVmYXVsdHMgdG8gYGAtMWBgLCBzbyB0aGF0IGJ5IGRlZmF1bHRcbiAgIHRoZSBsYXN0IGl0ZW0gaXMgcmVtb3ZlZCBhbmQgcmV0dXJuZWQuXG5cbjYuIFRoZSBgYHNvcnQoKWBgIGFuZCBgYHJldmVyc2UoKWBgIG1ldGhvZHMgbW9kaWZ5IHRoZSBzZXF1ZW5jZSBpblxuICAgcGxhY2UgZm9yIGVjb25vbXkgb2Ygc3BhY2Ugd2hlbiBzb3J0aW5nIG9yIHJldmVyc2luZyBhIGxhcmdlXG4gICBzZXF1ZW5jZS4gIFRvIHJlbWluZCB5b3UgdGhhdCB0aGV5IG9wZXJhdGUgYnkgc2lkZSBlZmZlY3QsIHRoZXlcbiAgIGRvblwndCByZXR1cm4gdGhlIHNvcnRlZCBvciByZXZlcnNlZCBzZXF1ZW5jZS5cblxuNy4gVGhlIGBgc29ydCgpYGAgbWV0aG9kIHRha2VzIG9wdGlvbmFsIGFyZ3VtZW50cyBmb3IgY29udHJvbGxpbmcgdGhlXG4gICBjb21wYXJpc29ucy4gIEVhY2ggbXVzdCBiZSBzcGVjaWZpZWQgYXMgYSBrZXl3b3JkIGFyZ3VtZW50LlxuXG4gICAqa2V5KiBzcGVjaWZpZXMgYSBmdW5jdGlvbiBvZiBvbmUgYXJndW1lbnQgdGhhdCBpcyB1c2VkIHRvIGV4dHJhY3RcbiAgIGEgY29tcGFyaXNvbiBrZXkgZnJvbSBlYWNoIGxpc3QgZWxlbWVudDogYGBrZXk9c3RyLmxvd2VyYGAuICBUaGVcbiAgIGRlZmF1bHQgdmFsdWUgaXMgYGBOb25lYGAuIFVzZSBgYGZ1bmN0b29scy5jbXBfdG9fa2V5KClgYCB0b1xuICAgY29udmVydCBhbiBvbGQtc3R5bGUgKmNtcCogZnVuY3Rpb24gdG8gYSAqa2V5KiBmdW5jdGlvbi5cblxuICAgKnJldmVyc2UqIGlzIGEgYm9vbGVhbiB2YWx1ZS4gIElmIHNldCB0byBgYFRydWVgYCwgdGhlbiB0aGUgbGlzdFxuICAgZWxlbWVudHMgYXJlIHNvcnRlZCBhcyBpZiBlYWNoIGNvbXBhcmlzb24gd2VyZSByZXZlcnNlZC5cblxuICAgVGhlIGBgc29ydCgpYGAgbWV0aG9kIGlzIGd1YXJhbnRlZWQgdG8gYmUgc3RhYmxlLiAgQSBzb3J0IGlzIHN0YWJsZVxuICAgaWYgaXQgZ3VhcmFudGVlcyBub3QgdG8gY2hhbmdlIHRoZSByZWxhdGl2ZSBvcmRlciBvZiBlbGVtZW50cyB0aGF0XG4gICBjb21wYXJlIGVxdWFsIC0tLSB0aGlzIGlzIGhlbHBmdWwgZm9yIHNvcnRpbmcgaW4gbXVsdGlwbGUgcGFzc2VzXG4gICAoZm9yIGV4YW1wbGUsIHNvcnQgYnkgZGVwYXJ0bWVudCwgdGhlbiBieSBzYWxhcnkgZ3JhZGUpLlxuXG4gICAqKkNQeXRob24gaW1wbGVtZW50YXRpb24gZGV0YWlsOioqIFdoaWxlIGEgbGlzdCBpcyBiZWluZyBzb3J0ZWQsXG4gICB0aGUgZWZmZWN0IG9mIGF0dGVtcHRpbmcgdG8gbXV0YXRlLCBvciBldmVuIGluc3BlY3QsIHRoZSBsaXN0IGlzXG4gICB1bmRlZmluZWQuICBUaGUgQyBpbXBsZW1lbnRhdGlvbiBvZiBQeXRob24gbWFrZXMgdGhlIGxpc3QgYXBwZWFyXG4gICBlbXB0eSBmb3IgdGhlIGR1cmF0aW9uLCBhbmQgcmFpc2VzIGBgVmFsdWVFcnJvcmBgIGlmIGl0IGNhbiBkZXRlY3RcbiAgIHRoYXQgdGhlIGxpc3QgaGFzIGJlZW4gbXV0YXRlZCBkdXJpbmcgYSBzb3J0LlxuXG44LiBgYHNvcnQoKWBgIGlzIG5vdCBzdXBwb3J0ZWQgYnkgYGBieXRlYXJyYXlgYCBvYmplY3RzLlxuXG5cbkJ5dGVzIGFuZCBCeXRlIEFycmF5IE1ldGhvZHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzLCBiZWluZyAic3RyaW5ncyBvZiBieXRlcyIsIGhhdmUgYWxsXG5tZXRob2RzIGZvdW5kIG9uIHN0cmluZ3MsIHdpdGggdGhlIGV4Y2VwdGlvbiBvZiBgYGVuY29kZSgpYGAsXG5gYGZvcm1hdCgpYGAgYW5kIGBgaXNpZGVudGlmaWVyKClgYCwgd2hpY2ggZG8gbm90IG1ha2Ugc2Vuc2Ugd2l0aFxudGhlc2UgdHlwZXMuICBGb3IgY29udmVydGluZyB0aGUgb2JqZWN0cyB0byBzdHJpbmdzLCB0aGV5IGhhdmUgYVxuYGBkZWNvZGUoKWBgIG1ldGhvZC5cblxuV2hlcmV2ZXIgb25lIG9mIHRoZXNlIG1ldGhvZHMgbmVlZHMgdG8gaW50ZXJwcmV0IHRoZSBieXRlcyBhc1xuY2hhcmFjdGVycyAoZS5nLiB0aGUgYGBpcy4uLigpYGAgbWV0aG9kcyksIHRoZSBBU0NJSSBjaGFyYWN0ZXIgc2V0IGlzXG5hc3N1bWVkLlxuXG5Ob3RlOiBUaGUgbWV0aG9kcyBvbiBieXRlcyBhbmQgYnl0ZWFycmF5IG9iamVjdHMgZG9uXCd0IGFjY2VwdCBzdHJpbmdzIGFzXG4gIHRoZWlyIGFyZ3VtZW50cywganVzdCBhcyB0aGUgbWV0aG9kcyBvbiBzdHJpbmdzIGRvblwndCBhY2NlcHQgYnl0ZXNcbiAgYXMgdGhlaXIgYXJndW1lbnRzLiAgRm9yIGV4YW1wbGUsIHlvdSBoYXZlIHRvIHdyaXRlXG5cbiAgICAgYSA9ICJhYmMiXG4gICAgIGIgPSBhLnJlcGxhY2UoImEiLCAiZiIpXG5cbiAgYW5kXG5cbiAgICAgYSA9IGIiYWJjIlxuICAgICBiID0gYS5yZXBsYWNlKGIiYSIsIGIiZiIpXG5cbmJ5dGVzLmRlY29kZShlbmNvZGluZz0idXRmLTgiLCBlcnJvcnM9InN0cmljdCIpXG5ieXRlYXJyYXkuZGVjb2RlKGVuY29kaW5nPSJ1dGYtOCIsIGVycm9ycz0ic3RyaWN0IilcblxuICAgUmV0dXJuIGEgc3RyaW5nIGRlY29kZWQgZnJvbSB0aGUgZ2l2ZW4gYnl0ZXMuICBEZWZhdWx0IGVuY29kaW5nIGlzXG4gICBgYFwndXRmLThcJ2BgLiAqZXJyb3JzKiBtYXkgYmUgZ2l2ZW4gdG8gc2V0IGEgZGlmZmVyZW50IGVycm9yXG4gICBoYW5kbGluZyBzY2hlbWUuICBUaGUgZGVmYXVsdCBmb3IgKmVycm9ycyogaXMgYGBcJ3N0cmljdFwnYGAsIG1lYW5pbmdcbiAgIHRoYXQgZW5jb2RpbmcgZXJyb3JzIHJhaXNlIGEgYGBVbmljb2RlRXJyb3JgYC4gIE90aGVyIHBvc3NpYmxlXG4gICB2YWx1ZXMgYXJlIGBgXCdpZ25vcmVcJ2BgLCBgYFwncmVwbGFjZVwnYGAgYW5kIGFueSBvdGhlciBuYW1lXG4gICByZWdpc3RlcmVkIHZpYSBgYGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigpYGAsIHNlZSBzZWN0aW9uICpDb2RlYyBCYXNlXG4gICBDbGFzc2VzKi4gRm9yIGEgbGlzdCBvZiBwb3NzaWJsZSBlbmNvZGluZ3MsIHNlZSBzZWN0aW9uICpTdGFuZGFyZFxuICAgRW5jb2RpbmdzKi5cblxuICAgQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogQWRkZWQgc3VwcG9ydCBmb3Iga2V5d29yZCBhcmd1bWVudHMuXG5cblRoZSBieXRlcyBhbmQgYnl0ZWFycmF5IHR5cGVzIGhhdmUgYW4gYWRkaXRpb25hbCBjbGFzcyBtZXRob2Q6XG5cbmNsYXNzbWV0aG9kIGJ5dGVzLmZyb21oZXgoc3RyaW5nKVxuY2xhc3NtZXRob2QgYnl0ZWFycmF5LmZyb21oZXgoc3RyaW5nKVxuXG4gICBUaGlzIGBgYnl0ZXNgYCBjbGFzcyBtZXRob2QgcmV0dXJucyBhIGJ5dGVzIG9yIGJ5dGVhcnJheSBvYmplY3QsXG4gICBkZWNvZGluZyB0aGUgZ2l2ZW4gc3RyaW5nIG9iamVjdC4gIFRoZSBzdHJpbmcgbXVzdCBjb250YWluIHR3b1xuICAgaGV4YWRlY2ltYWwgZGlnaXRzIHBlciBieXRlLCBzcGFjZXMgYXJlIGlnbm9yZWQuXG5cbiAgID4+PiBieXRlcy5mcm9taGV4KFwnZjAgZjFmMiAgXCcpXG4gICBiXCdcXHhmMFxceGYxXFx4ZjJcJ1xuXG5UaGUgbWFrZXRyYW5zIGFuZCB0cmFuc2xhdGUgbWV0aG9kcyBkaWZmZXIgaW4gc2VtYW50aWNzIGZyb20gdGhlXG52ZXJzaW9ucyBhdmFpbGFibGUgb24gc3RyaW5nczpcblxuYnl0ZXMudHJhbnNsYXRlKHRhYmxlWywgZGVsZXRlXSlcbmJ5dGVhcnJheS50cmFuc2xhdGUodGFibGVbLCBkZWxldGVdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBieXRlcyBvciBieXRlYXJyYXkgb2JqZWN0IHdoZXJlIGFsbCBieXRlc1xuICAgb2NjdXJyaW5nIGluIHRoZSBvcHRpb25hbCBhcmd1bWVudCAqZGVsZXRlKiBhcmUgcmVtb3ZlZCwgYW5kIHRoZVxuICAgcmVtYWluaW5nIGJ5dGVzIGhhdmUgYmVlbiBtYXBwZWQgdGhyb3VnaCB0aGUgZ2l2ZW4gdHJhbnNsYXRpb25cbiAgIHRhYmxlLCB3aGljaCBtdXN0IGJlIGEgYnl0ZXMgb2JqZWN0IG9mIGxlbmd0aCAyNTYuXG5cbiAgIFlvdSBjYW4gdXNlIHRoZSBgYGJ5dGVzLm1ha2V0cmFucygpYGAgbWV0aG9kIHRvIGNyZWF0ZSBhXG4gICB0cmFuc2xhdGlvbiB0YWJsZS5cblxuICAgU2V0IHRoZSAqdGFibGUqIGFyZ3VtZW50IHRvIGBgTm9uZWBgIGZvciB0cmFuc2xhdGlvbnMgdGhhdCBvbmx5XG4gICBkZWxldGUgY2hhcmFjdGVyczpcblxuICAgICAgPj4+IGJcJ3JlYWQgdGhpcyBzaG9ydCB0ZXh0XCcudHJhbnNsYXRlKE5vbmUsIGJcJ2FlaW91XCcpXG4gICAgICBiXCdyZCB0aHMgc2hydCB0eHRcJ1xuXG5zdGF0aWMgYnl0ZXMubWFrZXRyYW5zKGZyb20sIHRvKVxuc3RhdGljIGJ5dGVhcnJheS5tYWtldHJhbnMoZnJvbSwgdG8pXG5cbiAgIFRoaXMgc3RhdGljIG1ldGhvZCByZXR1cm5zIGEgdHJhbnNsYXRpb24gdGFibGUgdXNhYmxlIGZvclxuICAgYGBieXRlcy50cmFuc2xhdGUoKWBgIHRoYXQgd2lsbCBtYXAgZWFjaCBjaGFyYWN0ZXIgaW4gKmZyb20qIGludG9cbiAgIHRoZSBjaGFyYWN0ZXIgYXQgdGhlIHNhbWUgcG9zaXRpb24gaW4gKnRvKjsgKmZyb20qIGFuZCAqdG8qIG11c3QgYmVcbiAgIGJ5dGVzIG9iamVjdHMgYW5kIGhhdmUgdGhlIHNhbWUgbGVuZ3RoLlxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjEuXG4nLAotICd0eXBlc3NlcS1tdXRhYmxlJzogJ1xuTXV0YWJsZSBTZXF1ZW5jZSBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKlxuXG5MaXN0IGFuZCBieXRlYXJyYXkgb2JqZWN0cyBzdXBwb3J0IGFkZGl0aW9uYWwgb3BlcmF0aW9ucyB0aGF0IGFsbG93XG5pbi1wbGFjZSBtb2RpZmljYXRpb24gb2YgdGhlIG9iamVjdC4gIE90aGVyIG11dGFibGUgc2VxdWVuY2UgdHlwZXNcbih3aGVuIGFkZGVkIHRvIHRoZSBsYW5ndWFnZSkgc2hvdWxkIGFsc28gc3VwcG9ydCB0aGVzZSBvcGVyYXRpb25zLlxuU3RyaW5ncyBhbmQgdHVwbGVzIGFyZSBpbW11dGFibGUgc2VxdWVuY2UgdHlwZXM6IHN1Y2ggb2JqZWN0cyBjYW5ub3RcbmJlIG1vZGlmaWVkIG9uY2UgY3JlYXRlZC4gVGhlIGZvbGxvd2luZyBvcGVyYXRpb25zIGFyZSBkZWZpbmVkIG9uXG5tdXRhYmxlIHNlcXVlbmNlIHR5cGVzICh3aGVyZSAqeCogaXMgYW4gYXJiaXRyYXJ5IG9iamVjdCkuXG5cbk5vdGUgdGhhdCB3aGlsZSBsaXN0cyBhbGxvdyB0aGVpciBpdGVtcyB0byBiZSBvZiBhbnkgdHlwZSwgYnl0ZWFycmF5XG5vYmplY3QgIml0ZW1zIiBhcmUgYWxsIGludGVnZXJzIGluIHRoZSByYW5nZSAwIDw9IHggPCAyNTYuXG5cbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBPcGVyYXRpb24gICAgICAgICAgICAgICAgICAgICAgfCBSZXN1bHQgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgICAgICAgICAgICAgICB8XG4rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PStcbnwgYGBzW2ldID0geGBgICAgICAgICAgICAgICAgICAgIHwgaXRlbSAqaSogb2YgKnMqIGlzIHJlcGxhY2VkIGJ5ICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAqeCogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzW2k6al0gPSB0YGAgICAgICAgICAgICAgICAgIHwgc2xpY2Ugb2YgKnMqIGZyb20gKmkqIHRvICpqKiBpcyAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXBsYWNlZCBieSB0aGUgY29udGVudHMgb2YgdGhlICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGl0ZXJhYmxlICp0KiAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYGRlbCBzW2k6al1gYCAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tpOmpdID0gW11gYCAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzW2k6ajprXSA9IHRgYCAgICAgICAgICAgICAgIHwgdGhlIGVsZW1lbnRzIG9mIGBgc1tpOmo6a11gYCBhcmUgfCAoMSkgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXBsYWNlZCBieSB0aG9zZSBvZiAqdCogICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBkZWwgc1tpOmo6a11gYCAgICAgICAgICAgICAgIHwgcmVtb3ZlcyB0aGUgZWxlbWVudHMgb2YgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBgYHNbaTpqOmtdYGAgZnJvbSB0aGUgbGlzdCAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmFwcGVuZCh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHNbbGVuKHMpOmxlbihzKV0gPSAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbeF1gYCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmV4dGVuZCh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHNbbGVuKHMpOmxlbihzKV0gPSB4YGAgfCAoMikgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5jb3VudCh4KWBgICAgICAgICAgICAgICAgICB8IHJldHVybiBudW1iZXIgb2YgKmkqXCdzIGZvciB3aGljaCB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1tpXSA9PSB4YGAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5kZXgoeFssIGlbLCBqXV0pYGAgICAgICAgfCByZXR1cm4gc21hbGxlc3QgKmsqIHN1Y2ggdGhhdCAgICB8ICgzKSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1trXSA9PSB4YGAgYW5kIGBgaSA8PSBrIDwgamBgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5zZXJ0KGksIHgpYGAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tpOmldID0gW3hdYGAgICAgICAgICB8ICg0KSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnBvcChbaV0pYGAgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHggPSBzW2ldOyBkZWwgc1tpXTsgICAgfCAoNSkgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXR1cm4geGBgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnJlbW92ZSh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYGRlbCBzW3MuaW5kZXgoeCldYGAgICAgfCAoMykgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5yZXZlcnNlKClgYCAgICAgICAgICAgICAgICB8IHJldmVyc2VzIHRoZSBpdGVtcyBvZiAqcyogaW4gICAgIHwgKDYpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcGxhY2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5zb3J0KFtrZXlbLCByZXZlcnNlXV0pYGAgICB8IHNvcnQgdGhlIGl0ZW1zIG9mICpzKiBpbiBwbGFjZSAgIHwgKDYpLCAoNyksICg4KSAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuXG5Ob3RlczpcblxuMS4gKnQqIG11c3QgaGF2ZSB0aGUgc2FtZSBsZW5ndGggYXMgdGhlIHNsaWNlIGl0IGlzIHJlcGxhY2luZy5cblxuMi4gKngqIGNhbiBiZSBhbnkgaXRlcmFibGUgb2JqZWN0LlxuXG4zLiBSYWlzZXMgYGBWYWx1ZUVycm9yYGAgd2hlbiAqeCogaXMgbm90IGZvdW5kIGluICpzKi4gV2hlbiBhIG5lZ2F0aXZlXG4gICBpbmRleCBpcyBwYXNzZWQgYXMgdGhlIHNlY29uZCBvciB0aGlyZCBwYXJhbWV0ZXIgdG8gdGhlIGBgaW5kZXgoKWBgXG4gICBtZXRob2QsIHRoZSBzZXF1ZW5jZSBsZW5ndGggaXMgYWRkZWQsIGFzIGZvciBzbGljZSBpbmRpY2VzLiAgSWYgaXRcbiAgIGlzIHN0aWxsIG5lZ2F0aXZlLCBpdCBpcyB0cnVuY2F0ZWQgdG8gemVybywgYXMgZm9yIHNsaWNlIGluZGljZXMuXG5cbjQuIFdoZW4gYSBuZWdhdGl2ZSBpbmRleCBpcyBwYXNzZWQgYXMgdGhlIGZpcnN0IHBhcmFtZXRlciB0byB0aGVcbiAgIGBgaW5zZXJ0KClgYCBtZXRob2QsIHRoZSBzZXF1ZW5jZSBsZW5ndGggaXMgYWRkZWQsIGFzIGZvciBzbGljZVxuICAgaW5kaWNlcy4gIElmIGl0IGlzIHN0aWxsIG5lZ2F0aXZlLCBpdCBpcyB0cnVuY2F0ZWQgdG8gemVybywgYXMgZm9yXG4gICBzbGljZSBpbmRpY2VzLlxuXG41LiBUaGUgb3B0aW9uYWwgYXJndW1lbnQgKmkqIGRlZmF1bHRzIHRvIGBgLTFgYCwgc28gdGhhdCBieSBkZWZhdWx0XG4gICB0aGUgbGFzdCBpdGVtIGlzIHJlbW92ZWQgYW5kIHJldHVybmVkLlxuXG42LiBUaGUgYGBzb3J0KClgYCBhbmQgYGByZXZlcnNlKClgYCBtZXRob2RzIG1vZGlmeSB0aGUgc2VxdWVuY2UgaW5cbiAgIHBsYWNlIGZvciBlY29ub215IG9mIHNwYWNlIHdoZW4gc29ydGluZyBvciByZXZlcnNpbmcgYSBsYXJnZVxuICAgc2VxdWVuY2UuICBUbyByZW1pbmQgeW91IHRoYXQgdGhleSBvcGVyYXRlIGJ5IHNpZGUgZWZmZWN0LCB0aGV5XG4gICBkb25cJ3QgcmV0dXJuIHRoZSBzb3J0ZWQgb3IgcmV2ZXJzZWQgc2VxdWVuY2UuXG5cbjcuIFRoZSBgYHNvcnQoKWBgIG1ldGhvZCB0YWtlcyBvcHRpb25hbCBhcmd1bWVudHMgZm9yIGNvbnRyb2xsaW5nIHRoZVxuICAgY29tcGFyaXNvbnMuICBFYWNoIG11c3QgYmUgc3BlY2lmaWVkIGFzIGEga2V5d29yZCBhcmd1bWVudC5cblxuICAgKmtleSogc3BlY2lmaWVzIGEgZnVuY3Rpb24gb2Ygb25lIGFyZ3VtZW50IHRoYXQgaXMgdXNlZCB0byBleHRyYWN0XG4gICBhIGNvbXBhcmlzb24ga2V5IGZyb20gZWFjaCBsaXN0IGVsZW1lbnQ6IGBga2V5PXN0ci5sb3dlcmBgLiAgVGhlXG4gICBkZWZhdWx0IHZhbHVlIGlzIGBgTm9uZWBgLiBVc2UgYGBmdW5jdG9vbHMuY21wX3RvX2tleSgpYGAgdG9cbiAgIGNvbnZlcnQgYW4gb2xkLXN0eWxlICpjbXAqIGZ1bmN0aW9uIHRvIGEgKmtleSogZnVuY3Rpb24uXG5cbiAgICpyZXZlcnNlKiBpcyBhIGJvb2xlYW4gdmFsdWUuICBJZiBzZXQgdG8gYGBUcnVlYGAsIHRoZW4gdGhlIGxpc3RcbiAgIGVsZW1lbnRzIGFyZSBzb3J0ZWQgYXMgaWYgZWFjaCBjb21wYXJpc29uIHdlcmUgcmV2ZXJzZWQuXG5cbiAgIFRoZSBgYHNvcnQoKWBgIG1ldGhvZCBpcyBndWFyYW50ZWVkIHRvIGJlIHN0YWJsZS4gIEEgc29ydCBpcyBzdGFibGVcbiAgIGlmIGl0IGd1YXJhbnRlZXMgbm90IHRvIGNoYW5nZSB0aGUgcmVsYXRpdmUgb3JkZXIgb2YgZWxlbWVudHMgdGhhdFxuICAgY29tcGFyZSBlcXVhbCAtLS0gdGhpcyBpcyBoZWxwZnVsIGZvciBzb3J0aW5nIGluIG11bHRpcGxlIHBhc3Nlc1xuICAgKGZvciBleGFtcGxlLCBzb3J0IGJ5IGRlcGFydG1lbnQsIHRoZW4gYnkgc2FsYXJ5IGdyYWRlKS5cblxuICAgKipDUHl0aG9uIGltcGxlbWVudGF0aW9uIGRldGFpbDoqKiBXaGlsZSBhIGxpc3QgaXMgYmVpbmcgc29ydGVkLFxuICAgdGhlIGVmZmVjdCBvZiBhdHRlbXB0aW5nIHRvIG11dGF0ZSwgb3IgZXZlbiBpbnNwZWN0LCB0aGUgbGlzdCBpc1xuICAgdW5kZWZpbmVkLiAgVGhlIEMgaW1wbGVtZW50YXRpb24gb2YgUHl0aG9uIG1ha2VzIHRoZSBsaXN0IGFwcGVhclxuICAgZW1wdHkgZm9yIHRoZSBkdXJhdGlvbiwgYW5kIHJhaXNlcyBgYFZhbHVlRXJyb3JgYCBpZiBpdCBjYW4gZGV0ZWN0XG4gICB0aGF0IHRoZSBsaXN0IGhhcyBiZWVuIG11dGF0ZWQgZHVyaW5nIGEgc29ydC5cblxuOC4gYGBzb3J0KClgYCBpcyBub3Qgc3VwcG9ydGVkIGJ5IGBgYnl0ZWFycmF5YGAgb2JqZWN0cy5cbicsCisgJ3R5cGVzc2VxJzogJ1xuU2VxdWVuY2UgVHlwZXMgLS0tIGBgc3RyYGAsIGBgYnl0ZXNgYCwgYGBieXRlYXJyYXlgYCwgYGBsaXN0YGAsIGBgdHVwbGVgYCwgYGByYW5nZWBgXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuVGhlcmUgYXJlIHNpeCBzZXF1ZW5jZSB0eXBlczogc3RyaW5ncywgYnl0ZSBzZXF1ZW5jZXMgKGBgYnl0ZXNgYFxub2JqZWN0cyksIGJ5dGUgYXJyYXlzIChgYGJ5dGVhcnJheWBgIG9iamVjdHMpLCBsaXN0cywgdHVwbGVzLCBhbmRcbnJhbmdlIG9iamVjdHMuICBGb3Igb3RoZXIgY29udGFpbmVycyBzZWUgdGhlIGJ1aWx0IGluIGBgZGljdGBgIGFuZFxuYGBzZXRgYCBjbGFzc2VzLCBhbmQgdGhlIGBgY29sbGVjdGlvbnNgYCBtb2R1bGUuXG5cblN0cmluZ3MgY29udGFpbiBVbmljb2RlIGNoYXJhY3RlcnMuICBUaGVpciBsaXRlcmFscyBhcmUgd3JpdHRlbiBpblxuc2luZ2xlIG9yIGRvdWJsZSBxdW90ZXM6IGBgXCd4eXp6eVwnYGAsIGBgImZyb2JvenoiYGAuICBTZWUgKlN0cmluZyBhbmRcbkJ5dGVzIGxpdGVyYWxzKiBmb3IgbW9yZSBhYm91dCBzdHJpbmcgbGl0ZXJhbHMuICBJbiBhZGRpdGlvbiB0byB0aGVcbmZ1bmN0aW9uYWxpdHkgZGVzY3JpYmVkIGhlcmUsIHRoZXJlIGFyZSBhbHNvIHN0cmluZy1zcGVjaWZpYyBtZXRob2RzXG5kZXNjcmliZWQgaW4gdGhlICpTdHJpbmcgTWV0aG9kcyogc2VjdGlvbi5cblxuQnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzIGNvbnRhaW4gc2luZ2xlIGJ5dGVzIC0tIHRoZSBmb3JtZXIgaXNcbmltbXV0YWJsZSB3aGlsZSB0aGUgbGF0dGVyIGlzIGEgbXV0YWJsZSBzZXF1ZW5jZS4gIEJ5dGVzIG9iamVjdHMgY2FuXG5iZSBjb25zdHJ1Y3RlZCB0aGUgY29uc3RydWN0b3IsIGBgYnl0ZXMoKWBgLCBhbmQgZnJvbSBsaXRlcmFsczsgdXNlIGFcbmBgYmBgIHByZWZpeCB3aXRoIG5vcm1hbCBzdHJpbmcgc3ludGF4OiBgYGJcJ3h5enp5XCdgYC4gIFRvIGNvbnN0cnVjdFxuYnl0ZSBhcnJheXMsIHVzZSB0aGUgYGBieXRlYXJyYXkoKWBgIGZ1bmN0aW9uLlxuXG5XaGlsZSBzdHJpbmcgb2JqZWN0cyBhcmUgc2VxdWVuY2VzIG9mIGNoYXJhY3RlcnMgKHJlcHJlc2VudGVkIGJ5XG5zdHJpbmdzIG9mIGxlbmd0aCAxKSwgYnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzIGFyZSBzZXF1ZW5jZXMgb2ZcbippbnRlZ2VycyogKGJldHdlZW4gMCBhbmQgMjU1KSwgcmVwcmVzZW50aW5nIHRoZSBBU0NJSSB2YWx1ZSBvZiBzaW5nbGVcbmJ5dGVzLiAgVGhhdCBtZWFucyB0aGF0IGZvciBhIGJ5dGVzIG9yIGJ5dGVhcnJheSBvYmplY3QgKmIqLCBgYGJbMF1gYFxud2lsbCBiZSBhbiBpbnRlZ2VyLCB3aGlsZSBgYGJbMDoxXWBgIHdpbGwgYmUgYSBieXRlcyBvciBieXRlYXJyYXlcbm9iamVjdCBvZiBsZW5ndGggMS4gIFRoZSByZXByZXNlbnRhdGlvbiBvZiBieXRlcyBvYmplY3RzIHVzZXMgdGhlXG5saXRlcmFsIGZvcm1hdCAoYGBiXCcuLi5cJ2BgKSBzaW5jZSBpdCBpcyBnZW5lcmFsbHkgbW9yZSB1c2VmdWwgdGhhblxuZS5nLiBgYGJ5dGVzKFs1MCwgMTksIDEwMF0pYGAuICBZb3UgY2FuIGFsd2F5cyBjb252ZXJ0IGEgYnl0ZXMgb2JqZWN0XG5pbnRvIGEgbGlzdCBvZiBpbnRlZ2VycyB1c2luZyBgYGxpc3QoYilgYC5cblxuQWxzbywgd2hpbGUgaW4gcHJldmlvdXMgUHl0aG9uIHZlcnNpb25zLCBieXRlIHN0cmluZ3MgYW5kIFVuaWNvZGVcbnN0cmluZ3MgY291bGQgYmUgZXhjaGFuZ2VkIGZvciBlYWNoIG90aGVyIHJhdGhlciBmcmVlbHkgKGJhcnJpbmdcbmVuY29kaW5nIGlzc3VlcyksIHN0cmluZ3MgYW5kIGJ5dGVzIGFyZSBub3cgY29tcGxldGVseSBzZXBhcmF0ZVxuY29uY2VwdHMuICBUaGVyZVwncyBubyBpbXBsaWNpdCBlbi0vZGVjb2RpbmcgaWYgeW91IHBhc3MgYW4gb2JqZWN0IG9mXG50aGUgd3JvbmcgdHlwZS4gIEEgc3RyaW5nIGFsd2F5cyBjb21wYXJlcyB1bmVxdWFsIHRvIGEgYnl0ZXMgb3JcbmJ5dGVhcnJheSBvYmplY3QuXG5cbkxpc3RzIGFyZSBjb25zdHJ1Y3RlZCB3aXRoIHNxdWFyZSBicmFja2V0cywgc2VwYXJhdGluZyBpdGVtcyB3aXRoXG5jb21tYXM6IGBgW2EsIGIsIGNdYGAuICBUdXBsZXMgYXJlIGNvbnN0cnVjdGVkIGJ5IHRoZSBjb21tYSBvcGVyYXRvclxuKG5vdCB3aXRoaW4gc3F1YXJlIGJyYWNrZXRzKSwgd2l0aCBvciB3aXRob3V0IGVuY2xvc2luZyBwYXJlbnRoZXNlcyxcbmJ1dCBhbiBlbXB0eSB0dXBsZSBtdXN0IGhhdmUgdGhlIGVuY2xvc2luZyBwYXJlbnRoZXNlcywgc3VjaCBhcyBgYGEsXG5iLCBjYGAgb3IgYGAoKWBgLiAgQSBzaW5nbGUgaXRlbSB0dXBsZSBtdXN0IGhhdmUgYSB0cmFpbGluZyBjb21tYSxcbnN1Y2ggYXMgYGAoZCwpYGAuXG5cbk9iamVjdHMgb2YgdHlwZSByYW5nZSBhcmUgY3JlYXRlZCB1c2luZyB0aGUgYGByYW5nZSgpYGAgZnVuY3Rpb24uXG5UaGV5IGRvblwndCBzdXBwb3J0IGNvbmNhdGVuYXRpb24gb3IgcmVwZXRpdGlvbiwgYW5kIHVzaW5nIGBgbWluKClgYCBvclxuYGBtYXgoKWBgIG9uIHRoZW0gaXMgaW5lZmZpY2llbnQuXG5cbk1vc3Qgc2VxdWVuY2UgdHlwZXMgc3VwcG9ydCB0aGUgZm9sbG93aW5nIG9wZXJhdGlvbnMuICBUaGUgYGBpbmBgIGFuZFxuYGBub3QgaW5gYCBvcGVyYXRpb25zIGhhdmUgdGhlIHNhbWUgcHJpb3JpdGllcyBhcyB0aGUgY29tcGFyaXNvblxub3BlcmF0aW9ucy4gIFRoZSBgYCtgYCBhbmQgYGAqYGAgb3BlcmF0aW9ucyBoYXZlIHRoZSBzYW1lIHByaW9yaXR5IGFzXG50aGUgY29ycmVzcG9uZGluZyBudW1lcmljIG9wZXJhdGlvbnMuIFszXSBBZGRpdGlvbmFsIG1ldGhvZHMgYXJlXG5wcm92aWRlZCBmb3IgKk11dGFibGUgU2VxdWVuY2UgVHlwZXMqLlxuXG5UaGlzIHRhYmxlIGxpc3RzIHRoZSBzZXF1ZW5jZSBvcGVyYXRpb25zIHNvcnRlZCBpbiBhc2NlbmRpbmcgcHJpb3JpdHlcbihvcGVyYXRpb25zIGluIHRoZSBzYW1lIGJveCBoYXZlIHRoZSBzYW1lIHByaW9yaXR5KS4gIEluIHRoZSB0YWJsZSxcbipzKiBhbmQgKnQqIGFyZSBzZXF1ZW5jZXMgb2YgdGhlIHNhbWUgdHlwZTsgKm4qLCAqaSosICpqKiBhbmQgKmsqIGFyZVxuaW50ZWdlcnMuXG5cbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgT3BlcmF0aW9uICAgICAgICAgIHwgUmVzdWx0ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyAgICAgIHxcbis9PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PStcbnwgYGB4IGluIHNgYCAgICAgICAgIHwgYGBUcnVlYGAgaWYgYW4gaXRlbSBvZiAqcyogaXMgICAgfCAoMSkgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgIHwgZXF1YWwgdG8gKngqLCBlbHNlIGBgRmFsc2VgYCAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGB4IG5vdCBpbiBzYGAgICAgIHwgYGBGYWxzZWBgIGlmIGFuIGl0ZW0gb2YgKnMqIGlzICAgfCAoMSkgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgIHwgZXF1YWwgdG8gKngqLCBlbHNlIGBgVHJ1ZWBgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzICsgdGBgICAgICAgICAgIHwgdGhlIGNvbmNhdGVuYXRpb24gb2YgKnMqIGFuZCAqdCogfCAoNikgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzICogbiwgbiAqIHNgYCAgIHwgKm4qIHNoYWxsb3cgY29waWVzIG9mICpzKiAgICAgICAgfCAoMikgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgIHwgY29uY2F0ZW5hdGVkICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzW2ldYGAgICAgICAgICAgIHwgKmkqdGggaXRlbSBvZiAqcyosIG9yaWdpbiAwICAgICAgfCAoMykgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzW2k6al1gYCAgICAgICAgIHwgc2xpY2Ugb2YgKnMqIGZyb20gKmkqIHRvICpqKiAgICAgfCAoMykoNCkgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzW2k6ajprXWBgICAgICAgIHwgc2xpY2Ugb2YgKnMqIGZyb20gKmkqIHRvICpqKiAgICAgfCAoMykoNSkgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgIHwgd2l0aCBzdGVwICprKiAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBsZW4ocylgYCAgICAgICAgIHwgbGVuZ3RoIG9mICpzKiAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBtaW4ocylgYCAgICAgICAgIHwgc21hbGxlc3QgaXRlbSBvZiAqcyogICAgICAgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBtYXgocylgYCAgICAgICAgIHwgbGFyZ2VzdCBpdGVtIG9mICpzKiAgICAgICAgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzLmluZGV4KGkpYGAgICAgIHwgaW5kZXggb2YgdGhlIGZpcnN0IG9jY3VyZW5jZSBvZiAgfCAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgIHwgKmkqIGluICpzKiAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzLmNvdW50KGkpYGAgICAgIHwgdG90YWwgbnVtYmVyIG9mIG9jY3VyZW5jZXMgb2YgICAgfCAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgIHwgKmkqIGluICpzKiAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcblxuU2VxdWVuY2UgdHlwZXMgYWxzbyBzdXBwb3J0IGNvbXBhcmlzb25zLiAgSW4gcGFydGljdWxhciwgdHVwbGVzIGFuZFxubGlzdHMgYXJlIGNvbXBhcmVkIGxleGljb2dyYXBoaWNhbGx5IGJ5IGNvbXBhcmluZyBjb3JyZXNwb25kaW5nXG5lbGVtZW50cy4gIFRoaXMgbWVhbnMgdGhhdCB0byBjb21wYXJlIGVxdWFsLCBldmVyeSBlbGVtZW50IG11c3RcbmNvbXBhcmUgZXF1YWwgYW5kIHRoZSB0d28gc2VxdWVuY2VzIG11c3QgYmUgb2YgdGhlIHNhbWUgdHlwZSBhbmQgaGF2ZVxudGhlIHNhbWUgbGVuZ3RoLiAgKEZvciBmdWxsIGRldGFpbHMgc2VlICpDb21wYXJpc29ucyogaW4gdGhlIGxhbmd1YWdlXG5yZWZlcmVuY2UuKVxuXG5Ob3RlczpcblxuMS4gV2hlbiAqcyogaXMgYSBzdHJpbmcgb2JqZWN0LCB0aGUgYGBpbmBgIGFuZCBgYG5vdCBpbmBgIG9wZXJhdGlvbnNcbiAgIGFjdCBsaWtlIGEgc3Vic3RyaW5nIHRlc3QuXG5cbjIuIFZhbHVlcyBvZiAqbiogbGVzcyB0aGFuIGBgMGBgIGFyZSB0cmVhdGVkIGFzIGBgMGBgICh3aGljaCB5aWVsZHMgYW5cbiAgIGVtcHR5IHNlcXVlbmNlIG9mIHRoZSBzYW1lIHR5cGUgYXMgKnMqKS4gIE5vdGUgYWxzbyB0aGF0IHRoZSBjb3BpZXNcbiAgIGFyZSBzaGFsbG93OyBuZXN0ZWQgc3RydWN0dXJlcyBhcmUgbm90IGNvcGllZC4gIFRoaXMgb2Z0ZW4gaGF1bnRzXG4gICBuZXcgUHl0aG9uIHByb2dyYW1tZXJzOyBjb25zaWRlcjpcblxuICAgPj4+IGxpc3RzID0gW1tdXSAqIDNcbiAgID4+PiBsaXN0c1xuICAgW1tdLCBbXSwgW11dXG4gICA+Pj4gbGlzdHNbMF0uYXBwZW5kKDMpXG4gICA+Pj4gbGlzdHNcbiAgIFtbM10sIFszXSwgWzNdXVxuXG4gICBXaGF0IGhhcyBoYXBwZW5lZCBpcyB0aGF0IGBgW1tdXWBgIGlzIGEgb25lLWVsZW1lbnQgbGlzdCBjb250YWluaW5nXG4gICBhbiBlbXB0eSBsaXN0LCBzbyBhbGwgdGhyZWUgZWxlbWVudHMgb2YgYGBbW11dICogM2BgIGFyZSAocG9pbnRlcnNcbiAgIHRvKSB0aGlzIHNpbmdsZSBlbXB0eSBsaXN0LiAgTW9kaWZ5aW5nIGFueSBvZiB0aGUgZWxlbWVudHMgb2ZcbiAgIGBgbGlzdHNgYCBtb2RpZmllcyB0aGlzIHNpbmdsZSBsaXN0LiBZb3UgY2FuIGNyZWF0ZSBhIGxpc3Qgb2ZcbiAgIGRpZmZlcmVudCBsaXN0cyB0aGlzIHdheTpcblxuICAgPj4+IGxpc3RzID0gW1tdIGZvciBpIGluIHJhbmdlKDMpXVxuICAgPj4+IGxpc3RzWzBdLmFwcGVuZCgzKVxuICAgPj4+IGxpc3RzWzFdLmFwcGVuZCg1KVxuICAgPj4+IGxpc3RzWzJdLmFwcGVuZCg3KVxuICAgPj4+IGxpc3RzXG4gICBbWzNdLCBbNV0sIFs3XV1cblxuMy4gSWYgKmkqIG9yICpqKiBpcyBuZWdhdGl2ZSwgdGhlIGluZGV4IGlzIHJlbGF0aXZlIHRvIHRoZSBlbmQgb2YgdGhlXG4gICBzdHJpbmc6IGBgbGVuKHMpICsgaWBgIG9yIGBgbGVuKHMpICsgamBgIGlzIHN1YnN0aXR1dGVkLiAgQnV0IG5vdGVcbiAgIHRoYXQgYGAtMGBgIGlzIHN0aWxsIGBgMGBgLlxuXG40LiBUaGUgc2xpY2Ugb2YgKnMqIGZyb20gKmkqIHRvICpqKiBpcyBkZWZpbmVkIGFzIHRoZSBzZXF1ZW5jZSBvZlxuICAgaXRlbXMgd2l0aCBpbmRleCAqayogc3VjaCB0aGF0IGBgaSA8PSBrIDwgamBgLiAgSWYgKmkqIG9yICpqKiBpc1xuICAgZ3JlYXRlciB0aGFuIGBgbGVuKHMpYGAsIHVzZSBgYGxlbihzKWBgLiAgSWYgKmkqIGlzIG9taXR0ZWQgb3JcbiAgIGBgTm9uZWBgLCB1c2UgYGAwYGAuICBJZiAqaiogaXMgb21pdHRlZCBvciBgYE5vbmVgYCwgdXNlXG4gICBgYGxlbihzKWBgLiAgSWYgKmkqIGlzIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAqaiosIHRoZSBzbGljZSBpc1xuICAgZW1wdHkuXG5cbjUuIFRoZSBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqIHdpdGggc3RlcCAqayogaXMgZGVmaW5lZCBhcyB0aGVcbiAgIHNlcXVlbmNlIG9mIGl0ZW1zIHdpdGggaW5kZXggIGBgeCA9IGkgKyBuKmtgYCBzdWNoIHRoYXQgYGAwIDw9IG4gPFxuICAgKGotaSkva2BgLiAgSW4gb3RoZXIgd29yZHMsIHRoZSBpbmRpY2VzIGFyZSBgYGlgYCwgYGBpK2tgYCxcbiAgIGBgaSsyKmtgYCwgYGBpKzMqa2BgIGFuZCBzbyBvbiwgc3RvcHBpbmcgd2hlbiAqaiogaXMgcmVhY2hlZCAoYnV0XG4gICBuZXZlciBpbmNsdWRpbmcgKmoqKS4gIElmICppKiBvciAqaiogaXMgZ3JlYXRlciB0aGFuIGBgbGVuKHMpYGAsXG4gICB1c2UgYGBsZW4ocylgYC4gIElmICppKiBvciAqaiogYXJlIG9taXR0ZWQgb3IgYGBOb25lYGAsIHRoZXkgYmVjb21lXG4gICAiZW5kIiB2YWx1ZXMgKHdoaWNoIGVuZCBkZXBlbmRzIG9uIHRoZSBzaWduIG9mICprKikuICBOb3RlLCAqaypcbiAgIGNhbm5vdCBiZSB6ZXJvLiBJZiAqayogaXMgYGBOb25lYGAsIGl0IGlzIHRyZWF0ZWQgbGlrZSBgYDFgYC5cblxuNi4gQ29uY2F0ZW5hdGluZyBpbW11dGFibGUgc3RyaW5ncyBhbHdheXMgcmVzdWx0cyBpbiBhIG5ldyBvYmplY3QuXG4gICBUaGlzIG1lYW5zIHRoYXQgYnVpbGRpbmcgdXAgYSBzdHJpbmcgYnkgcmVwZWF0ZWQgY29uY2F0ZW5hdGlvbiB3aWxsXG4gICBoYXZlIGEgcXVhZHJhdGljIHJ1bnRpbWUgY29zdCBpbiB0aGUgdG90YWwgc3RyaW5nIGxlbmd0aC4gIFRvIGdldCBhXG4gICBsaW5lYXIgcnVudGltZSBjb3N0LCB5b3UgbXVzdCBzd2l0Y2ggdG8gb25lIG9mIHRoZSBhbHRlcm5hdGl2ZXNcbiAgIGJlbG93OlxuXG4gICAqIGlmIGNvbmNhdGVuYXRpbmcgYGBzdHJgYCBvYmplY3RzLCB5b3UgY2FuIGJ1aWxkIGEgbGlzdCBhbmQgdXNlXG4gICAgIGBgc3RyLmpvaW4oKWBgIGF0IHRoZSBlbmQ7XG5cbiAgICogaWYgY29uY2F0ZW5hdGluZyBgYGJ5dGVzYGAgb2JqZWN0cywgeW91IGNhbiBzaW1pbGFybHkgdXNlXG4gICAgIGBgYnl0ZXMuam9pbigpYGAsIG9yIHlvdSBjYW4gZG8gaW4tcGxhY2UgY29uY2F0ZW5hdGlvbiB3aXRoIGFcbiAgICAgYGBieXRlYXJyYXlgYCBvYmplY3QuICBgYGJ5dGVhcnJheWBgIG9iamVjdHMgYXJlIG11dGFibGUgYW5kIGhhdmVcbiAgICAgYW4gZWZmaWNpZW50IG92ZXJhbGxvY2F0aW9uIG1lY2hhbmlzbS5cblxuXG5TdHJpbmcgTWV0aG9kc1xuPT09PT09PT09PT09PT1cblxuU3RyaW5nIG9iamVjdHMgc3VwcG9ydCB0aGUgbWV0aG9kcyBsaXN0ZWQgYmVsb3cuXG5cbkluIGFkZGl0aW9uLCBQeXRob25cJ3Mgc3RyaW5ncyBzdXBwb3J0IHRoZSBzZXF1ZW5jZSB0eXBlIG1ldGhvZHNcbmRlc2NyaWJlZCBpbiB0aGUgKlNlcXVlbmNlIFR5cGVzIC0tLSBzdHIsIGJ5dGVzLCBieXRlYXJyYXksIGxpc3QsXG50dXBsZSwgcmFuZ2UqIHNlY3Rpb24uIFRvIG91dHB1dCBmb3JtYXR0ZWQgc3RyaW5ncywgc2VlIHRoZSAqU3RyaW5nXG5Gb3JtYXR0aW5nKiBzZWN0aW9uLiBBbHNvLCBzZWUgdGhlIGBgcmVgYCBtb2R1bGUgZm9yIHN0cmluZyBmdW5jdGlvbnNcbmJhc2VkIG9uIHJlZ3VsYXIgZXhwcmVzc2lvbnMuXG5cbnN0ci5jYXBpdGFsaXplKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggaXRzIGZpcnN0IGNoYXJhY3RlciBjYXBpdGFsaXplZFxuICAgYW5kIHRoZSByZXN0IGxvd2VyY2FzZWQuXG5cbnN0ci5jYXNlZm9sZCgpXG5cbiAgIFJldHVybiBhIGNhc2Vmb2xkZWQgY29weSBvZiB0aGUgc3RyaW5nLiBDYXNlZm9sZGVkIHN0cmluZ3MgbWF5IGJlXG4gICB1c2VkIGZvciBjYXNlbGVzcyBtYXRjaGluZy5cblxuICAgQ2FzZWZvbGRpbmcgaXMgc2ltaWxhciB0byBsb3dlcmNhc2luZyBidXQgbW9yZSBhZ2dyZXNzaXZlIGJlY2F1c2VcbiAgIGl0IGlzIGludGVuZGVkIHRvIHJlbW92ZSBhbGwgY2FzZSBkaXN0aW5jdGlvbnMgaW4gYSBzdHJpbmcuIEZvclxuICAgZXhhbXBsZSwgdGhlIEdlcm1hbiBsb3dlcmNhc2UgbGV0dGVyIGBgXCdceGMzXHg5ZlwnYGAgaXMgZXF1aXZhbGVudCB0b1xuICAgYGAic3MiYGAuIFNpbmNlIGl0IGlzIGFscmVhZHkgbG93ZXJjYXNlLCBgYGxvd2VyKClgYCB3b3VsZCBkb1xuICAgbm90aGluZyB0byBgYFwnXHhjM1x4OWZcJ2BgOyBgYGNhc2Vmb2xkKClgYCBjb252ZXJ0cyBpdCB0byBgYCJzcyJgYC5cblxuICAgVGhlIGNhc2Vmb2xkaW5nIGFsZ29yaXRobSBpcyBkZXNjcmliZWQgaW4gc2VjdGlvbiAzLjEzIG9mIHRoZVxuICAgVW5pY29kZSBTdGFuZGFyZC5cblxuICAgTmV3IGluIHZlcnNpb24gMy4zLlxuXG5zdHIuY2VudGVyKHdpZHRoWywgZmlsbGNoYXJdKVxuXG4gICBSZXR1cm4gY2VudGVyZWQgaW4gYSBzdHJpbmcgb2YgbGVuZ3RoICp3aWR0aCouIFBhZGRpbmcgaXMgZG9uZVxuICAgdXNpbmcgdGhlIHNwZWNpZmllZCAqZmlsbGNoYXIqIChkZWZhdWx0IGlzIGEgc3BhY2UpLlxuXG5zdHIuY291bnQoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIHRoZSBudW1iZXIgb2Ygbm9uLW92ZXJsYXBwaW5nIG9jY3VycmVuY2VzIG9mIHN1YnN0cmluZyAqc3ViKlxuICAgaW4gdGhlIHJhbmdlIFsqc3RhcnQqLCAqZW5kKl0uICBPcHRpb25hbCBhcmd1bWVudHMgKnN0YXJ0KiBhbmRcbiAgICplbmQqIGFyZSBpbnRlcnByZXRlZCBhcyBpbiBzbGljZSBub3RhdGlvbi5cblxuc3RyLmVuY29kZShlbmNvZGluZz0idXRmLTgiLCBlcnJvcnM9InN0cmljdCIpXG5cbiAgIFJldHVybiBhbiBlbmNvZGVkIHZlcnNpb24gb2YgdGhlIHN0cmluZyBhcyBhIGJ5dGVzIG9iamVjdC4gRGVmYXVsdFxuICAgZW5jb2RpbmcgaXMgYGBcJ3V0Zi04XCdgYC4gKmVycm9ycyogbWF5IGJlIGdpdmVuIHRvIHNldCBhIGRpZmZlcmVudFxuICAgZXJyb3IgaGFuZGxpbmcgc2NoZW1lLiBUaGUgZGVmYXVsdCBmb3IgKmVycm9ycyogaXMgYGBcJ3N0cmljdFwnYGAsXG4gICBtZWFuaW5nIHRoYXQgZW5jb2RpbmcgZXJyb3JzIHJhaXNlIGEgYGBVbmljb2RlRXJyb3JgYC4gT3RoZXJcbiAgIHBvc3NpYmxlIHZhbHVlcyBhcmUgYGBcJ2lnbm9yZVwnYGAsIGBgXCdyZXBsYWNlXCdgYCxcbiAgIGBgXCd4bWxjaGFycmVmcmVwbGFjZVwnYGAsIGBgXCdiYWNrc2xhc2hyZXBsYWNlXCdgYCBhbmQgYW55IG90aGVyIG5hbWVcbiAgIHJlZ2lzdGVyZWQgdmlhIGBgY29kZWNzLnJlZ2lzdGVyX2Vycm9yKClgYCwgc2VlIHNlY3Rpb24gKkNvZGVjIEJhc2VcbiAgIENsYXNzZXMqLiBGb3IgYSBsaXN0IG9mIHBvc3NpYmxlIGVuY29kaW5ncywgc2VlIHNlY3Rpb24gKlN0YW5kYXJkXG4gICBFbmNvZGluZ3MqLlxuXG4gICBDaGFuZ2VkIGluIHZlcnNpb24gMy4xOiBTdXBwb3J0IGZvciBrZXl3b3JkIGFyZ3VtZW50cyBhZGRlZC5cblxuc3RyLmVuZHN3aXRoKHN1ZmZpeFssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiBgYFRydWVgYCBpZiB0aGUgc3RyaW5nIGVuZHMgd2l0aCB0aGUgc3BlY2lmaWVkICpzdWZmaXgqLFxuICAgb3RoZXJ3aXNlIHJldHVybiBgYEZhbHNlYGAuICAqc3VmZml4KiBjYW4gYWxzbyBiZSBhIHR1cGxlIG9mXG4gICBzdWZmaXhlcyB0byBsb29rIGZvci4gIFdpdGggb3B0aW9uYWwgKnN0YXJ0KiwgdGVzdCBiZWdpbm5pbmcgYXRcbiAgIHRoYXQgcG9zaXRpb24uICBXaXRoIG9wdGlvbmFsICplbmQqLCBzdG9wIGNvbXBhcmluZyBhdCB0aGF0XG4gICBwb3NpdGlvbi5cblxuc3RyLmV4cGFuZHRhYnMoW3RhYnNpemVdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2hlcmUgYWxsIHRhYiBjaGFyYWN0ZXJzIGFyZSByZXBsYWNlZFxuICAgYnkgemVybyBvciBtb3JlIHNwYWNlcywgZGVwZW5kaW5nIG9uIHRoZSBjdXJyZW50IGNvbHVtbiBhbmQgdGhlXG4gICBnaXZlbiB0YWIgc2l6ZS4gIFRoZSBjb2x1bW4gbnVtYmVyIGlzIHJlc2V0IHRvIHplcm8gYWZ0ZXIgZWFjaFxuICAgbmV3bGluZSBvY2N1cnJpbmcgaW4gdGhlIHN0cmluZy4gSWYgKnRhYnNpemUqIGlzIG5vdCBnaXZlbiwgYSB0YWJcbiAgIHNpemUgb2YgYGA4YGAgY2hhcmFjdGVycyBpcyBhc3N1bWVkLiAgVGhpcyBkb2VzblwndCB1bmRlcnN0YW5kIG90aGVyXG4gICBub24tcHJpbnRpbmcgY2hhcmFjdGVycyBvciBlc2NhcGUgc2VxdWVuY2VzLlxuXG5zdHIuZmluZChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gdGhlIGxvd2VzdCBpbmRleCBpbiB0aGUgc3RyaW5nIHdoZXJlIHN1YnN0cmluZyAqc3ViKiBpc1xuICAgZm91bmQsIHN1Y2ggdGhhdCAqc3ViKiBpcyBjb250YWluZWQgaW4gdGhlIHNsaWNlIGBgc1tzdGFydDplbmRdYGAuXG4gICBPcHRpb25hbCBhcmd1bWVudHMgKnN0YXJ0KiBhbmQgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlXG4gICBub3RhdGlvbi4gIFJldHVybiBgYC0xYGAgaWYgKnN1YiogaXMgbm90IGZvdW5kLlxuXG4gICBOb3RlOiBUaGUgYGBmaW5kKClgYCBtZXRob2Qgc2hvdWxkIGJlIHVzZWQgb25seSBpZiB5b3UgbmVlZCB0byBrbm93IHRoZVxuICAgICBwb3NpdGlvbiBvZiAqc3ViKi4gIFRvIGNoZWNrIGlmICpzdWIqIGlzIGEgc3Vic3RyaW5nIG9yIG5vdCwgdXNlXG4gICAgIHRoZSBgYGluYGAgb3BlcmF0b3I6XG5cbiAgICAgICAgPj4+IFwnUHlcJyBpbiBcJ1B5dGhvblwnXG4gICAgICAgIFRydWVcblxuc3RyLmZvcm1hdCgqYXJncywgKiprd2FyZ3MpXG5cbiAgIFBlcmZvcm0gYSBzdHJpbmcgZm9ybWF0dGluZyBvcGVyYXRpb24uICBUaGUgc3RyaW5nIG9uIHdoaWNoIHRoaXNcbiAgIG1ldGhvZCBpcyBjYWxsZWQgY2FuIGNvbnRhaW4gbGl0ZXJhbCB0ZXh0IG9yIHJlcGxhY2VtZW50IGZpZWxkc1xuICAgZGVsaW1pdGVkIGJ5IGJyYWNlcyBgYHt9YGAuICBFYWNoIHJlcGxhY2VtZW50IGZpZWxkIGNvbnRhaW5zIGVpdGhlclxuICAgdGhlIG51bWVyaWMgaW5kZXggb2YgYSBwb3NpdGlvbmFsIGFyZ3VtZW50LCBvciB0aGUgbmFtZSBvZiBhXG4gICBrZXl3b3JkIGFyZ3VtZW50LiAgUmV0dXJucyBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aGVyZSBlYWNoXG4gICByZXBsYWNlbWVudCBmaWVsZCBpcyByZXBsYWNlZCB3aXRoIHRoZSBzdHJpbmcgdmFsdWUgb2YgdGhlXG4gICBjb3JyZXNwb25kaW5nIGFyZ3VtZW50LlxuXG4gICA+Pj4gIlRoZSBzdW0gb2YgMSArIDIgaXMgezB9Ii5mb3JtYXQoMSsyKVxuICAgXCdUaGUgc3VtIG9mIDEgKyAyIGlzIDNcJ1xuXG4gICBTZWUgKkZvcm1hdCBTdHJpbmcgU3ludGF4KiBmb3IgYSBkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91c1xuICAgZm9ybWF0dGluZyBvcHRpb25zIHRoYXQgY2FuIGJlIHNwZWNpZmllZCBpbiBmb3JtYXQgc3RyaW5ncy5cblxuc3RyLmZvcm1hdF9tYXAobWFwcGluZylcblxuICAgU2ltaWxhciB0byBgYHN0ci5mb3JtYXQoKiptYXBwaW5nKWBgLCBleGNlcHQgdGhhdCBgYG1hcHBpbmdgYCBpc1xuICAgdXNlZCBkaXJlY3RseSBhbmQgbm90IGNvcGllZCB0byBhIGBgZGljdGBgIC4gIFRoaXMgaXMgdXNlZnVsIGlmIGZvclxuICAgZXhhbXBsZSBgYG1hcHBpbmdgYCBpcyBhIGRpY3Qgc3ViY2xhc3M6XG5cbiAgID4+PiBjbGFzcyBEZWZhdWx0KGRpY3QpOlxuICAgLi4uICAgICBkZWYgX19taXNzaW5nX18oc2VsZiwga2V5KTpcbiAgIC4uLiAgICAgICAgIHJldHVybiBrZXlcbiAgIC4uLlxuICAgPj4+IFwne25hbWV9IHdhcyBib3JuIGluIHtjb3VudHJ5fVwnLmZvcm1hdF9tYXAoRGVmYXVsdChuYW1lPVwnR3VpZG9cJykpXG4gICBcJ0d1aWRvIHdhcyBib3JuIGluIGNvdW50cnlcJ1xuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjIuXG5cbnN0ci5pbmRleChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBMaWtlIGBgZmluZCgpYGAsIGJ1dCByYWlzZSBgYFZhbHVlRXJyb3JgYCB3aGVuIHRoZSBzdWJzdHJpbmcgaXMgbm90XG4gICBmb3VuZC5cblxuc3RyLmlzYWxudW0oKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBhbHBoYW51bWVyaWMgYW5kXG4gICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBBIGNoYXJhY3RlclxuICAgYGBjYGAgaXMgYWxwaGFudW1lcmljIGlmIG9uZSBvZiB0aGUgZm9sbG93aW5nIHJldHVybnMgYGBUcnVlYGA6XG4gICBgYGMuaXNhbHBoYSgpYGAsIGBgYy5pc2RlY2ltYWwoKWBgLCBgYGMuaXNkaWdpdCgpYGAsIG9yXG4gICBgYGMuaXNudW1lcmljKClgYC5cblxuc3RyLmlzYWxwaGEoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBhbHBoYWJldGljIGFuZFxuICAgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgQWxwaGFiZXRpY1xuICAgY2hhcmFjdGVycyBhcmUgdGhvc2UgY2hhcmFjdGVycyBkZWZpbmVkIGluIHRoZSBVbmljb2RlIGNoYXJhY3RlclxuICAgZGF0YWJhc2UgYXMgIkxldHRlciIsIGkuZS4sIHRob3NlIHdpdGggZ2VuZXJhbCBjYXRlZ29yeSBwcm9wZXJ0eVxuICAgYmVpbmcgb25lIG9mICJMbSIsICJMdCIsICJMdSIsICJMbCIsIG9yICJMbyIuICBOb3RlIHRoYXQgdGhpcyBpc1xuICAgZGlmZmVyZW50IGZyb20gdGhlICJBbHBoYWJldGljIiBwcm9wZXJ0eSBkZWZpbmVkIGluIHRoZSBVbmljb2RlXG4gICBTdGFuZGFyZC5cblxuc3RyLmlzZGVjaW1hbCgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGRlY2ltYWwgY2hhcmFjdGVyc1xuICAgYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gRGVjaW1hbFxuICAgY2hhcmFjdGVycyBhcmUgdGhvc2UgZnJvbSBnZW5lcmFsIGNhdGVnb3J5ICJOZCIuIFRoaXMgY2F0ZWdvcnlcbiAgIGluY2x1ZGVzIGRpZ2l0IGNoYXJhY3RlcnMsIGFuZCBhbGwgY2hhcmFjdGVycyB0aGF0IGNhbiBiZSB1c2VkIHRvXG4gICBmb3JtIGRlY2ltYWwtcmFkaXggbnVtYmVycywgZS5nLiBVKzA2NjAsIEFSQUJJQy1JTkRJQyBESUdJVCBaRVJPLlxuXG5zdHIuaXNkaWdpdCgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGRpZ2l0cyBhbmQgdGhlcmUgaXNcbiAgIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIERpZ2l0cyBpbmNsdWRlIGRlY2ltYWxcbiAgIGNoYXJhY3RlcnMgYW5kIGRpZ2l0cyB0aGF0IG5lZWQgc3BlY2lhbCBoYW5kbGluZywgc3VjaCBhcyB0aGVcbiAgIGNvbXBhdGliaWxpdHkgc3VwZXJzY3JpcHQgZGlnaXRzLiAgRm9ybWFsbHksIGEgZGlnaXQgaXMgYSBjaGFyYWN0ZXJcbiAgIHRoYXQgaGFzIHRoZSBwcm9wZXJ0eSB2YWx1ZSBOdW1lcmljX1R5cGU9RGlnaXQgb3JcbiAgIE51bWVyaWNfVHlwZT1EZWNpbWFsLlxuXG5zdHIuaXNpZGVudGlmaWVyKClcblxuICAgUmV0dXJuIHRydWUgaWYgdGhlIHN0cmluZyBpcyBhIHZhbGlkIGlkZW50aWZpZXIgYWNjb3JkaW5nIHRvIHRoZVxuICAgbGFuZ3VhZ2UgZGVmaW5pdGlvbiwgc2VjdGlvbiAqSWRlbnRpZmllcnMgYW5kIGtleXdvcmRzKi5cblxuc3RyLmlzbG93ZXIoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2FzZWQgY2hhcmFjdGVycyBbNF0gaW4gdGhlIHN0cmluZyBhcmUgbG93ZXJjYXNlXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNhc2VkIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLlxuXG5zdHIuaXNudW1lcmljKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgbnVtZXJpYyBjaGFyYWN0ZXJzLFxuICAgYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gTnVtZXJpY1xuICAgY2hhcmFjdGVycyBpbmNsdWRlIGRpZ2l0IGNoYXJhY3RlcnMsIGFuZCBhbGwgY2hhcmFjdGVycyB0aGF0IGhhdmVcbiAgIHRoZSBVbmljb2RlIG51bWVyaWMgdmFsdWUgcHJvcGVydHksIGUuZy4gVSsyMTU1LCBWVUxHQVIgRlJBQ1RJT05cbiAgIE9ORSBGSUZUSC4gIEZvcm1hbGx5LCBudW1lcmljIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggdGhlXG4gICBwcm9wZXJ0eSB2YWx1ZSBOdW1lcmljX1R5cGU9RGlnaXQsIE51bWVyaWNfVHlwZT1EZWNpbWFsIG9yXG4gICBOdW1lcmljX1R5cGU9TnVtZXJpYy5cblxuc3RyLmlzcHJpbnRhYmxlKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgcHJpbnRhYmxlIG9yIHRoZVxuICAgc3RyaW5nIGlzIGVtcHR5LCBmYWxzZSBvdGhlcndpc2UuICBOb25wcmludGFibGUgY2hhcmFjdGVycyBhcmVcbiAgIHRob3NlIGNoYXJhY3RlcnMgZGVmaW5lZCBpbiB0aGUgVW5pY29kZSBjaGFyYWN0ZXIgZGF0YWJhc2UgYXNcbiAgICJPdGhlciIgb3IgIlNlcGFyYXRvciIsIGV4Y2VwdGluZyB0aGUgQVNDSUkgc3BhY2UgKDB4MjApIHdoaWNoIGlzXG4gICBjb25zaWRlcmVkIHByaW50YWJsZS4gIChOb3RlIHRoYXQgcHJpbnRhYmxlIGNoYXJhY3RlcnMgaW4gdGhpc1xuICAgY29udGV4dCBhcmUgdGhvc2Ugd2hpY2ggc2hvdWxkIG5vdCBiZSBlc2NhcGVkIHdoZW4gYGByZXByKClgYCBpc1xuICAgaW52b2tlZCBvbiBhIHN0cmluZy4gIEl0IGhhcyBubyBiZWFyaW5nIG9uIHRoZSBoYW5kbGluZyBvZiBzdHJpbmdzXG4gICB3cml0dGVuIHRvIGBgc3lzLnN0ZG91dGBgIG9yIGBgc3lzLnN0ZGVycmBgLilcblxuc3RyLmlzc3BhY2UoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiB0aGVyZSBhcmUgb25seSB3aGl0ZXNwYWNlIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZ1xuICAgYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIFdoaXRlc3BhY2VcbiAgIGNoYXJhY3RlcnMgIGFyZSB0aG9zZSBjaGFyYWN0ZXJzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgY2hhcmFjdGVyXG4gICBkYXRhYmFzZSBhcyAiT3RoZXIiIG9yICJTZXBhcmF0b3IiIGFuZCB0aG9zZSB3aXRoIGJpZGlyZWN0aW9uYWxcbiAgIHByb3BlcnR5IGJlaW5nIG9uZSBvZiAiV1MiLCAiQiIsIG9yICJTIi5cblxuc3RyLmlzdGl0bGUoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiB0aGUgc3RyaW5nIGlzIGEgdGl0bGVjYXNlZCBzdHJpbmcgYW5kIHRoZXJlIGlzIGF0XG4gICBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmb3IgZXhhbXBsZSB1cHBlcmNhc2UgY2hhcmFjdGVycyBtYXkgb25seVxuICAgZm9sbG93IHVuY2FzZWQgY2hhcmFjdGVycyBhbmQgbG93ZXJjYXNlIGNoYXJhY3RlcnMgb25seSBjYXNlZCBvbmVzLlxuICAgUmV0dXJuIGZhbHNlIG90aGVyd2lzZS5cblxuc3RyLmlzdXBwZXIoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2FzZWQgY2hhcmFjdGVycyBbNF0gaW4gdGhlIHN0cmluZyBhcmUgdXBwZXJjYXNlXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNhc2VkIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLlxuXG5zdHIuam9pbihpdGVyYWJsZSlcblxuICAgUmV0dXJuIGEgc3RyaW5nIHdoaWNoIGlzIHRoZSBjb25jYXRlbmF0aW9uIG9mIHRoZSBzdHJpbmdzIGluIHRoZVxuICAgKml0ZXJhYmxlKiAqaXRlcmFibGUqLiAgQSBgYFR5cGVFcnJvcmBgIHdpbGwgYmUgcmFpc2VkIGlmIHRoZXJlIGFyZVxuICAgYW55IG5vbi1zdHJpbmcgdmFsdWVzIGluICppdGVyYWJsZSosIGluY2x1ZGluZyBgYGJ5dGVzYGAgb2JqZWN0cy5cbiAgIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBlbGVtZW50cyBpcyB0aGUgc3RyaW5nIHByb3ZpZGluZyB0aGlzIG1ldGhvZC5cblxuc3RyLmxqdXN0KHdpZHRoWywgZmlsbGNoYXJdKVxuXG4gICBSZXR1cm4gdGhlIHN0cmluZyBsZWZ0IGp1c3RpZmllZCBpbiBhIHN0cmluZyBvZiBsZW5ndGggKndpZHRoKi5cbiAgIFBhZGRpbmcgaXMgZG9uZSB1c2luZyB0aGUgc3BlY2lmaWVkICpmaWxsY2hhciogKGRlZmF1bHQgaXMgYVxuICAgc3BhY2UpLiAgVGhlIG9yaWdpbmFsIHN0cmluZyBpcyByZXR1cm5lZCBpZiAqd2lkdGgqIGlzIGxlc3MgdGhhbiBvclxuICAgZXF1YWwgdG8gYGBsZW4ocylgYC5cblxuc3RyLmxvd2VyKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggYWxsIHRoZSBjYXNlZCBjaGFyYWN0ZXJzIFs0XVxuICAgY29udmVydGVkIHRvIGxvd2VyY2FzZS5cblxuICAgVGhlIGxvd2VyY2FzaW5nIGFsZ29yaXRobSB1c2VkIGlzIGRlc2NyaWJlZCBpbiBzZWN0aW9uIDMuMTMgb2YgdGhlXG4gICBVbmljb2RlIFN0YW5kYXJkLlxuXG5zdHIubHN0cmlwKFtjaGFyc10pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGxlYWRpbmcgY2hhcmFjdGVycyByZW1vdmVkLiAgVGhlXG4gICAqY2hhcnMqIGFyZ3VtZW50IGlzIGEgc3RyaW5nIHNwZWNpZnlpbmcgdGhlIHNldCBvZiBjaGFyYWN0ZXJzIHRvIGJlXG4gICByZW1vdmVkLiAgSWYgb21pdHRlZCBvciBgYE5vbmVgYCwgdGhlICpjaGFycyogYXJndW1lbnQgZGVmYXVsdHMgdG9cbiAgIHJlbW92aW5nIHdoaXRlc3BhY2UuICBUaGUgKmNoYXJzKiBhcmd1bWVudCBpcyBub3QgYSBwcmVmaXg7IHJhdGhlcixcbiAgIGFsbCBjb21iaW5hdGlvbnMgb2YgaXRzIHZhbHVlcyBhcmUgc3RyaXBwZWQ6XG5cbiAgID4+PiBcJyAgIHNwYWNpb3VzICAgXCcubHN0cmlwKClcbiAgIFwnc3BhY2lvdXMgICBcJ1xuICAgPj4+IFwnd3d3LmV4YW1wbGUuY29tXCcubHN0cmlwKFwnY21vd3ouXCcpXG4gICBcJ2V4YW1wbGUuY29tXCdcblxuc3RhdGljIHN0ci5tYWtldHJhbnMoeFssIHlbLCB6XV0pXG5cbiAgIFRoaXMgc3RhdGljIG1ldGhvZCByZXR1cm5zIGEgdHJhbnNsYXRpb24gdGFibGUgdXNhYmxlIGZvclxuICAgYGBzdHIudHJhbnNsYXRlKClgYC5cblxuICAgSWYgdGhlcmUgaXMgb25seSBvbmUgYXJndW1lbnQsIGl0IG11c3QgYmUgYSBkaWN0aW9uYXJ5IG1hcHBpbmdcbiAgIFVuaWNvZGUgb3JkaW5hbHMgKGludGVnZXJzKSBvciBjaGFyYWN0ZXJzIChzdHJpbmdzIG9mIGxlbmd0aCAxKSB0b1xuICAgVW5pY29kZSBvcmRpbmFscywgc3RyaW5ncyAob2YgYXJiaXRyYXJ5IGxlbmd0aHMpIG9yIE5vbmUuXG4gICBDaGFyYWN0ZXIga2V5cyB3aWxsIHRoZW4gYmUgY29udmVydGVkIHRvIG9yZGluYWxzLlxuXG4gICBJZiB0aGVyZSBhcmUgdHdvIGFyZ3VtZW50cywgdGhleSBtdXN0IGJlIHN0cmluZ3Mgb2YgZXF1YWwgbGVuZ3RoLFxuICAgYW5kIGluIHRoZSByZXN1bHRpbmcgZGljdGlvbmFyeSwgZWFjaCBjaGFyYWN0ZXIgaW4geCB3aWxsIGJlIG1hcHBlZFxuICAgdG8gdGhlIGNoYXJhY3RlciBhdCB0aGUgc2FtZSBwb3NpdGlvbiBpbiB5LiAgSWYgdGhlcmUgaXMgYSB0aGlyZFxuICAgYXJndW1lbnQsIGl0IG11c3QgYmUgYSBzdHJpbmcsIHdob3NlIGNoYXJhY3RlcnMgd2lsbCBiZSBtYXBwZWQgdG9cbiAgIE5vbmUgaW4gdGhlIHJlc3VsdC5cblxuc3RyLnBhcnRpdGlvbihzZXApXG5cbiAgIFNwbGl0IHRoZSBzdHJpbmcgYXQgdGhlIGZpcnN0IG9jY3VycmVuY2Ugb2YgKnNlcCosIGFuZCByZXR1cm4gYVxuICAgMy10dXBsZSBjb250YWluaW5nIHRoZSBwYXJ0IGJlZm9yZSB0aGUgc2VwYXJhdG9yLCB0aGUgc2VwYXJhdG9yXG4gICBpdHNlbGYsIGFuZCB0aGUgcGFydCBhZnRlciB0aGUgc2VwYXJhdG9yLiAgSWYgdGhlIHNlcGFyYXRvciBpcyBub3RcbiAgIGZvdW5kLCByZXR1cm4gYSAzLXR1cGxlIGNvbnRhaW5pbmcgdGhlIHN0cmluZyBpdHNlbGYsIGZvbGxvd2VkIGJ5XG4gICB0d28gZW1wdHkgc3RyaW5ncy5cblxuc3RyLnJlcGxhY2Uob2xkLCBuZXdbLCBjb3VudF0pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGFsbCBvY2N1cnJlbmNlcyBvZiBzdWJzdHJpbmcgKm9sZCpcbiAgIHJlcGxhY2VkIGJ5ICpuZXcqLiAgSWYgdGhlIG9wdGlvbmFsIGFyZ3VtZW50ICpjb3VudCogaXMgZ2l2ZW4sIG9ubHlcbiAgIHRoZSBmaXJzdCAqY291bnQqIG9jY3VycmVuY2VzIGFyZSByZXBsYWNlZC5cblxuc3RyLnJmaW5kKHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiB0aGUgaGlnaGVzdCBpbmRleCBpbiB0aGUgc3RyaW5nIHdoZXJlIHN1YnN0cmluZyAqc3ViKiBpc1xuICAgZm91bmQsIHN1Y2ggdGhhdCAqc3ViKiBpcyBjb250YWluZWQgd2l0aGluIGBgc1tzdGFydDplbmRdYGAuXG4gICBPcHRpb25hbCBhcmd1bWVudHMgKnN0YXJ0KiBhbmQgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlXG4gICBub3RhdGlvbi4gIFJldHVybiBgYC0xYGAgb24gZmFpbHVyZS5cblxuc3RyLnJpbmRleChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBMaWtlIGBgcmZpbmQoKWBgIGJ1dCByYWlzZXMgYGBWYWx1ZUVycm9yYGAgd2hlbiB0aGUgc3Vic3RyaW5nICpzdWIqXG4gICBpcyBub3QgZm91bmQuXG5cbnN0ci5yanVzdCh3aWR0aFssIGZpbGxjaGFyXSlcblxuICAgUmV0dXJuIHRoZSBzdHJpbmcgcmlnaHQganVzdGlmaWVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLlxuICAgUGFkZGluZyBpcyBkb25lIHVzaW5nIHRoZSBzcGVjaWZpZWQgKmZpbGxjaGFyKiAoZGVmYXVsdCBpcyBhXG4gICBzcGFjZSkuIFRoZSBvcmlnaW5hbCBzdHJpbmcgaXMgcmV0dXJuZWQgaWYgKndpZHRoKiBpcyBsZXNzIHRoYW4gb3JcbiAgIGVxdWFsIHRvIGBgbGVuKHMpYGAuXG5cbnN0ci5ycGFydGl0aW9uKHNlcClcblxuICAgU3BsaXQgdGhlIHN0cmluZyBhdCB0aGUgbGFzdCBvY2N1cnJlbmNlIG9mICpzZXAqLCBhbmQgcmV0dXJuIGFcbiAgIDMtdHVwbGUgY29udGFpbmluZyB0aGUgcGFydCBiZWZvcmUgdGhlIHNlcGFyYXRvciwgdGhlIHNlcGFyYXRvclxuICAgaXRzZWxmLCBhbmQgdGhlIHBhcnQgYWZ0ZXIgdGhlIHNlcGFyYXRvci4gIElmIHRoZSBzZXBhcmF0b3IgaXMgbm90XG4gICBmb3VuZCwgcmV0dXJuIGEgMy10dXBsZSBjb250YWluaW5nIHR3byBlbXB0eSBzdHJpbmdzLCBmb2xsb3dlZCBieVxuICAgdGhlIHN0cmluZyBpdHNlbGYuXG5cbnN0ci5yc3BsaXQoc2VwPU5vbmUsIG1heHNwbGl0PS0xKVxuXG4gICBSZXR1cm4gYSBsaXN0IG9mIHRoZSB3b3JkcyBpbiB0aGUgc3RyaW5nLCB1c2luZyAqc2VwKiBhcyB0aGVcbiAgIGRlbGltaXRlciBzdHJpbmcuIElmICptYXhzcGxpdCogaXMgZ2l2ZW4sIGF0IG1vc3QgKm1heHNwbGl0KiBzcGxpdHNcbiAgIGFyZSBkb25lLCB0aGUgKnJpZ2h0bW9zdCogb25lcy4gIElmICpzZXAqIGlzIG5vdCBzcGVjaWZpZWQgb3JcbiAgIGBgTm9uZWBgLCBhbnkgd2hpdGVzcGFjZSBzdHJpbmcgaXMgYSBzZXBhcmF0b3IuICBFeGNlcHQgZm9yXG4gICBzcGxpdHRpbmcgZnJvbSB0aGUgcmlnaHQsIGBgcnNwbGl0KClgYCBiZWhhdmVzIGxpa2UgYGBzcGxpdCgpYGBcbiAgIHdoaWNoIGlzIGRlc2NyaWJlZCBpbiBkZXRhaWwgYmVsb3cuXG5cbnN0ci5yc3RyaXAoW2NoYXJzXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggdHJhaWxpbmcgY2hhcmFjdGVycyByZW1vdmVkLiAgVGhlXG4gICAqY2hhcnMqIGFyZ3VtZW50IGlzIGEgc3RyaW5nIHNwZWNpZnlpbmcgdGhlIHNldCBvZiBjaGFyYWN0ZXJzIHRvIGJlXG4gICByZW1vdmVkLiAgSWYgb21pdHRlZCBvciBgYE5vbmVgYCwgdGhlICpjaGFycyogYXJndW1lbnQgZGVmYXVsdHMgdG9cbiAgIHJlbW92aW5nIHdoaXRlc3BhY2UuICBUaGUgKmNoYXJzKiBhcmd1bWVudCBpcyBub3QgYSBzdWZmaXg7IHJhdGhlcixcbiAgIGFsbCBjb21iaW5hdGlvbnMgb2YgaXRzIHZhbHVlcyBhcmUgc3RyaXBwZWQ6XG5cbiAgID4+PiBcJyAgIHNwYWNpb3VzICAgXCcucnN0cmlwKClcbiAgIFwnICAgc3BhY2lvdXNcJ1xuICAgPj4+IFwnbWlzc2lzc2lwcGlcJy5yc3RyaXAoXCdpcHpcJylcbiAgIFwnbWlzc2lzc1wnXG5cbnN0ci5zcGxpdChzZXA9Tm9uZSwgbWF4c3BsaXQ9LTEpXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIHdvcmRzIGluIHRoZSBzdHJpbmcsIHVzaW5nICpzZXAqIGFzIHRoZVxuICAgZGVsaW1pdGVyIHN0cmluZy4gIElmICptYXhzcGxpdCogaXMgZ2l2ZW4sIGF0IG1vc3QgKm1heHNwbGl0KlxuICAgc3BsaXRzIGFyZSBkb25lICh0aHVzLCB0aGUgbGlzdCB3aWxsIGhhdmUgYXQgbW9zdCBgYG1heHNwbGl0KzFgYFxuICAgZWxlbWVudHMpLiAgSWYgKm1heHNwbGl0KiBpcyBub3Qgc3BlY2lmaWVkLCB0aGVuIHRoZXJlIGlzIG5vIGxpbWl0XG4gICBvbiB0aGUgbnVtYmVyIG9mIHNwbGl0cyAoYWxsIHBvc3NpYmxlIHNwbGl0cyBhcmUgbWFkZSkuXG5cbiAgIElmICpzZXAqIGlzIGdpdmVuLCBjb25zZWN1dGl2ZSBkZWxpbWl0ZXJzIGFyZSBub3QgZ3JvdXBlZCB0b2dldGhlclxuICAgYW5kIGFyZSBkZWVtZWQgdG8gZGVsaW1pdCBlbXB0eSBzdHJpbmdzIChmb3IgZXhhbXBsZSxcbiAgIGBgXCcxLCwyXCcuc3BsaXQoXCcsXCcpYGAgcmV0dXJucyBgYFtcJzFcJywgXCdcJywgXCcyXCddYGApLiAgVGhlICpzZXAqXG4gICBhcmd1bWVudCBtYXkgY29uc2lzdCBvZiBtdWx0aXBsZSBjaGFyYWN0ZXJzIChmb3IgZXhhbXBsZSxcbiAgIGBgXCcxPD4yPD4zXCcuc3BsaXQoXCc8PlwnKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnMlwnLCBcJzNcJ11gYCkuIFNwbGl0dGluZ1xuICAgYW4gZW1wdHkgc3RyaW5nIHdpdGggYSBzcGVjaWZpZWQgc2VwYXJhdG9yIHJldHVybnMgYGBbXCdcJ11gYC5cblxuICAgSWYgKnNlcCogaXMgbm90IHNwZWNpZmllZCBvciBpcyBgYE5vbmVgYCwgYSBkaWZmZXJlbnQgc3BsaXR0aW5nXG4gICBhbGdvcml0aG0gaXMgYXBwbGllZDogcnVucyBvZiBjb25zZWN1dGl2ZSB3aGl0ZXNwYWNlIGFyZSByZWdhcmRlZFxuICAgYXMgYSBzaW5nbGUgc2VwYXJhdG9yLCBhbmQgdGhlIHJlc3VsdCB3aWxsIGNvbnRhaW4gbm8gZW1wdHkgc3RyaW5nc1xuICAgYXQgdGhlIHN0YXJ0IG9yIGVuZCBpZiB0aGUgc3RyaW5nIGhhcyBsZWFkaW5nIG9yIHRyYWlsaW5nXG4gICB3aGl0ZXNwYWNlLiAgQ29uc2VxdWVudGx5LCBzcGxpdHRpbmcgYW4gZW1wdHkgc3RyaW5nIG9yIGEgc3RyaW5nXG4gICBjb25zaXN0aW5nIG9mIGp1c3Qgd2hpdGVzcGFjZSB3aXRoIGEgYGBOb25lYGAgc2VwYXJhdG9yIHJldHVybnNcbiAgIGBgW11gYC5cblxuICAgRm9yIGV4YW1wbGUsIGBgXCcgMSAgMiAgIDMgIFwnLnNwbGl0KClgYCByZXR1cm5zIGBgW1wnMVwnLCBcJzJcJywgXCczXCddYGAsXG4gICBhbmQgYGBcJyAgMSAgMiAgIDMgIFwnLnNwbGl0KE5vbmUsIDEpYGAgcmV0dXJucyBgYFtcJzFcJywgXCcyICAgMyAgXCddYGAuXG5cbnN0ci5zcGxpdGxpbmVzKFtrZWVwZW5kc10pXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIGxpbmVzIGluIHRoZSBzdHJpbmcsIGJyZWFraW5nIGF0IGxpbmVcbiAgIGJvdW5kYXJpZXMuICBMaW5lIGJyZWFrcyBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSByZXN1bHRpbmcgbGlzdFxuICAgdW5sZXNzICprZWVwZW5kcyogaXMgZ2l2ZW4gYW5kIHRydWUuXG5cbnN0ci5zdGFydHN3aXRoKHByZWZpeFssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiBgYFRydWVgYCBpZiBzdHJpbmcgc3RhcnRzIHdpdGggdGhlICpwcmVmaXgqLCBvdGhlcndpc2VcbiAgIHJldHVybiBgYEZhbHNlYGAuICpwcmVmaXgqIGNhbiBhbHNvIGJlIGEgdHVwbGUgb2YgcHJlZml4ZXMgdG8gbG9va1xuICAgZm9yLiAgV2l0aCBvcHRpb25hbCAqc3RhcnQqLCB0ZXN0IHN0cmluZyBiZWdpbm5pbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uICBXaXRoIG9wdGlvbmFsICplbmQqLCBzdG9wIGNvbXBhcmluZyBzdHJpbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uXG5cbnN0ci5zdHJpcChbY2hhcnNdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB0aGUgbGVhZGluZyBhbmQgdHJhaWxpbmdcbiAgIGNoYXJhY3RlcnMgcmVtb3ZlZC4gVGhlICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGVcbiAgIHNldCBvZiBjaGFyYWN0ZXJzIHRvIGJlIHJlbW92ZWQuIElmIG9taXR0ZWQgb3IgYGBOb25lYGAsIHRoZVxuICAgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0byByZW1vdmluZyB3aGl0ZXNwYWNlLiBUaGUgKmNoYXJzKlxuICAgYXJndW1lbnQgaXMgbm90IGEgcHJlZml4IG9yIHN1ZmZpeDsgcmF0aGVyLCBhbGwgY29tYmluYXRpb25zIG9mIGl0c1xuICAgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5zdHJpcCgpXG4gICBcJ3NwYWNpb3VzXCdcbiAgID4+PiBcJ3d3dy5leGFtcGxlLmNvbVwnLnN0cmlwKFwnY21vd3ouXCcpXG4gICBcJ2V4YW1wbGVcJ1xuXG5zdHIuc3dhcGNhc2UoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB1cHBlcmNhc2UgY2hhcmFjdGVycyBjb252ZXJ0ZWQgdG9cbiAgIGxvd2VyY2FzZSBhbmQgdmljZSB2ZXJzYS4gTm90ZSB0aGF0IGl0IGlzIG5vdCBuZWNlc3NhcmlseSB0cnVlIHRoYXRcbiAgIGBgcy5zd2FwY2FzZSgpLnN3YXBjYXNlKCkgPT0gc2BgLlxuXG5zdHIudGl0bGUoKVxuXG4gICBSZXR1cm4gYSB0aXRsZWNhc2VkIHZlcnNpb24gb2YgdGhlIHN0cmluZyB3aGVyZSB3b3JkcyBzdGFydCB3aXRoIGFuXG4gICB1cHBlcmNhc2UgY2hhcmFjdGVyIGFuZCB0aGUgcmVtYWluaW5nIGNoYXJhY3RlcnMgYXJlIGxvd2VyY2FzZS5cblxuICAgVGhlIGFsZ29yaXRobSB1c2VzIGEgc2ltcGxlIGxhbmd1YWdlLWluZGVwZW5kZW50IGRlZmluaXRpb24gb2YgYVxuICAgd29yZCBhcyBncm91cHMgb2YgY29uc2VjdXRpdmUgbGV0dGVycy4gIFRoZSBkZWZpbml0aW9uIHdvcmtzIGluXG4gICBtYW55IGNvbnRleHRzIGJ1dCBpdCBtZWFucyB0aGF0IGFwb3N0cm9waGVzIGluIGNvbnRyYWN0aW9ucyBhbmRcbiAgIHBvc3Nlc3NpdmVzIGZvcm0gd29yZCBib3VuZGFyaWVzLCB3aGljaCBtYXkgbm90IGJlIHRoZSBkZXNpcmVkXG4gICByZXN1bHQ6XG5cbiAgICAgID4+PiAidGhleVwncmUgYmlsbFwncyBmcmllbmRzIGZyb20gdGhlIFVLIi50aXRsZSgpXG4gICAgICAiVGhleVwnUmUgQmlsbFwnUyBGcmllbmRzIEZyb20gVGhlIFVrIlxuXG4gICBBIHdvcmthcm91bmQgZm9yIGFwb3N0cm9waGVzIGNhbiBiZSBjb25zdHJ1Y3RlZCB1c2luZyByZWd1bGFyXG4gICBleHByZXNzaW9uczpcblxuICAgICAgPj4+IGltcG9ydCByZVxuICAgICAgPj4+IGRlZiB0aXRsZWNhc2Uocyk6XG4gICAgICAgICAgICAgIHJldHVybiByZS5zdWIociJbQS1aYS16XSsoXCdbQS1aYS16XSspPyIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIG1vOiBtby5ncm91cCgwKVswXS51cHBlcigpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vLmdyb3VwKDApWzE6XS5sb3dlcigpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMpXG5cbiAgICAgID4+PiB0aXRsZWNhc2UoInRoZXlcJ3JlIGJpbGxcJ3MgZnJpZW5kcy4iKVxuICAgICAgIlRoZXlcJ3JlIEJpbGxcJ3MgRnJpZW5kcy4iXG5cbnN0ci50cmFuc2xhdGUobWFwKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSAqcyogd2hlcmUgYWxsIGNoYXJhY3RlcnMgaGF2ZSBiZWVuIG1hcHBlZFxuICAgdGhyb3VnaCB0aGUgKm1hcCogd2hpY2ggbXVzdCBiZSBhIGRpY3Rpb25hcnkgb2YgVW5pY29kZSBvcmRpbmFsc1xuICAgKGludGVnZXJzKSB0byBVbmljb2RlIG9yZGluYWxzLCBzdHJpbmdzIG9yIGBgTm9uZWBgLiAgVW5tYXBwZWRcbiAgIGNoYXJhY3RlcnMgYXJlIGxlZnQgdW50b3VjaGVkLiBDaGFyYWN0ZXJzIG1hcHBlZCB0byBgYE5vbmVgYCBhcmVcbiAgIGRlbGV0ZWQuXG5cbiAgIFlvdSBjYW4gdXNlIGBgc3RyLm1ha2V0cmFucygpYGAgdG8gY3JlYXRlIGEgdHJhbnNsYXRpb24gbWFwIGZyb21cbiAgIGNoYXJhY3Rlci10by1jaGFyYWN0ZXIgbWFwcGluZ3MgaW4gZGlmZmVyZW50IGZvcm1hdHMuXG5cbiAgIE5vdGU6IEFuIGV2ZW4gbW9yZSBmbGV4aWJsZSBhcHByb2FjaCBpcyB0byBjcmVhdGUgYSBjdXN0b20gY2hhcmFjdGVyXG4gICAgIG1hcHBpbmcgY29kZWMgdXNpbmcgdGhlIGBgY29kZWNzYGAgbW9kdWxlIChzZWVcbiAgICAgYGBlbmNvZGluZ3MuY3AxMjUxYGAgZm9yIGFuIGV4YW1wbGUpLlxuXG5zdHIudXBwZXIoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBhbGwgdGhlIGNhc2VkIGNoYXJhY3RlcnMgWzRdXG4gICBjb252ZXJ0ZWQgdG8gdXBwZXJjYXNlLiAgTm90ZSB0aGF0IGBgc3RyLnVwcGVyKCkuaXN1cHBlcigpYGAgbWlnaHRcbiAgIGJlIGBgRmFsc2VgYCBpZiBgYHNgYCBjb250YWlucyB1bmNhc2VkIGNoYXJhY3RlcnMgb3IgaWYgdGhlIFVuaWNvZGVcbiAgIGNhdGVnb3J5IG9mIHRoZSByZXN1bHRpbmcgY2hhcmFjdGVyKHMpIGlzIG5vdCAiTHUiIChMZXR0ZXIsXG4gICB1cHBlcmNhc2UpLCBidXQgZS5nLiAiTHQiIChMZXR0ZXIsIHRpdGxlY2FzZSkuXG5cbiAgIFRoZSB1cHBlcmNhc2luZyBhbGdvcml0aG0gdXNlZCBpcyBkZXNjcmliZWQgaW4gc2VjdGlvbiAzLjEzIG9mIHRoZVxuICAgVW5pY29kZSBTdGFuZGFyZC5cblxuc3RyLnpmaWxsKHdpZHRoKVxuXG4gICBSZXR1cm4gdGhlIG51bWVyaWMgc3RyaW5nIGxlZnQgZmlsbGVkIHdpdGggemVyb3MgaW4gYSBzdHJpbmcgb2ZcbiAgIGxlbmd0aCAqd2lkdGgqLiAgQSBzaWduIHByZWZpeCBpcyBoYW5kbGVkIGNvcnJlY3RseS4gIFRoZSBvcmlnaW5hbFxuICAgc3RyaW5nIGlzIHJldHVybmVkIGlmICp3aWR0aCogaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIGBgbGVuKHMpYGAuXG5cblxuT2xkIFN0cmluZyBGb3JtYXR0aW5nIE9wZXJhdGlvbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbk5vdGU6IFRoZSBmb3JtYXR0aW5nIG9wZXJhdGlvbnMgZGVzY3JpYmVkIGhlcmUgYXJlIG1vZGVsbGVkIG9uIENcJ3NcbiAgcHJpbnRmKCkgc3ludGF4LiAgVGhleSBvbmx5IHN1cHBvcnQgZm9ybWF0dGluZyBvZiBjZXJ0YWluIGJ1aWx0aW5cbiAgdHlwZXMuICBUaGUgdXNlIG9mIGEgYmluYXJ5IG9wZXJhdG9yIG1lYW5zIHRoYXQgY2FyZSBtYXkgYmUgbmVlZGVkXG4gIGluIG9yZGVyIHRvIGZvcm1hdCB0dXBsZXMgYW5kIGRpY3Rpb25hcmllcyBjb3JyZWN0bHkuICBBcyB0aGUgbmV3XG4gICpTdHJpbmcgRm9ybWF0dGluZyogc3ludGF4IGlzIG1vcmUgZmxleGlibGUgYW5kIGhhbmRsZXMgdHVwbGVzIGFuZFxuICBkaWN0aW9uYXJpZXMgbmF0dXJhbGx5LCBpdCBpcyByZWNvbW1lbmRlZCBmb3IgbmV3IGNvZGUuICBIb3dldmVyLFxuICB0aGVyZSBhcmUgbm8gY3VycmVudCBwbGFucyB0byBkZXByZWNhdGUgcHJpbnRmLXN0eWxlIGZvcm1hdHRpbmcuXG5cblN0cmluZyBvYmplY3RzIGhhdmUgb25lIHVuaXF1ZSBidWlsdC1pbiBvcGVyYXRpb246IHRoZSBgYCVgYCBvcGVyYXRvclxuKG1vZHVsbykuIFRoaXMgaXMgYWxzbyBrbm93biBhcyB0aGUgc3RyaW5nICpmb3JtYXR0aW5nKiBvclxuKmludGVycG9sYXRpb24qIG9wZXJhdG9yLiBHaXZlbiBgYGZvcm1hdCAlIHZhbHVlc2BgICh3aGVyZSAqZm9ybWF0KiBpc1xuYSBzdHJpbmcpLCBgYCVgYCBjb252ZXJzaW9uIHNwZWNpZmljYXRpb25zIGluICpmb3JtYXQqIGFyZSByZXBsYWNlZFxud2l0aCB6ZXJvIG9yIG1vcmUgZWxlbWVudHMgb2YgKnZhbHVlcyouIFRoZSBlZmZlY3QgaXMgc2ltaWxhciB0byB0aGVcbnVzaW5nIGBgc3ByaW50ZigpYGAgaW4gdGhlIEMgbGFuZ3VhZ2UuXG5cbklmICpmb3JtYXQqIHJlcXVpcmVzIGEgc2luZ2xlIGFyZ3VtZW50LCAqdmFsdWVzKiBtYXkgYmUgYSBzaW5nbGUgbm9uLVxudHVwbGUgb2JqZWN0LiBbNV0gIE90aGVyd2lzZSwgKnZhbHVlcyogbXVzdCBiZSBhIHR1cGxlIHdpdGggZXhhY3RseVxudGhlIG51bWJlciBvZiBpdGVtcyBzcGVjaWZpZWQgYnkgdGhlIGZvcm1hdCBzdHJpbmcsIG9yIGEgc2luZ2xlXG5tYXBwaW5nIG9iamVjdCAoZm9yIGV4YW1wbGUsIGEgZGljdGlvbmFyeSkuXG5cbkEgY29udmVyc2lvbiBzcGVjaWZpZXIgY29udGFpbnMgdHdvIG9yIG1vcmUgY2hhcmFjdGVycyBhbmQgaGFzIHRoZVxuZm9sbG93aW5nIGNvbXBvbmVudHMsIHdoaWNoIG11c3Qgb2NjdXIgaW4gdGhpcyBvcmRlcjpcblxuMS4gVGhlIGBgXCclXCdgYCBjaGFyYWN0ZXIsIHdoaWNoIG1hcmtzIHRoZSBzdGFydCBvZiB0aGUgc3BlY2lmaWVyLlxuXG4yLiBNYXBwaW5nIGtleSAob3B0aW9uYWwpLCBjb25zaXN0aW5nIG9mIGEgcGFyZW50aGVzaXNlZCBzZXF1ZW5jZSBvZlxuICAgY2hhcmFjdGVycyAoZm9yIGV4YW1wbGUsIGBgKHNvbWVuYW1lKWBgKS5cblxuMy4gQ29udmVyc2lvbiBmbGFncyAob3B0aW9uYWwpLCB3aGljaCBhZmZlY3QgdGhlIHJlc3VsdCBvZiBzb21lXG4gICBjb252ZXJzaW9uIHR5cGVzLlxuXG40LiBNaW5pbXVtIGZpZWxkIHdpZHRoIChvcHRpb25hbCkuICBJZiBzcGVjaWZpZWQgYXMgYW4gYGBcJypcJ2BgXG4gICAoYXN0ZXJpc2spLCB0aGUgYWN0dWFsIHdpZHRoIGlzIHJlYWQgZnJvbSB0aGUgbmV4dCBlbGVtZW50IG9mIHRoZVxuICAgdHVwbGUgaW4gKnZhbHVlcyosIGFuZCB0aGUgb2JqZWN0IHRvIGNvbnZlcnQgY29tZXMgYWZ0ZXIgdGhlXG4gICBtaW5pbXVtIGZpZWxkIHdpZHRoIGFuZCBvcHRpb25hbCBwcmVjaXNpb24uXG5cbjUuIFByZWNpc2lvbiAob3B0aW9uYWwpLCBnaXZlbiBhcyBhIGBgXCcuXCdgYCAoZG90KSBmb2xsb3dlZCBieSB0aGVcbiAgIHByZWNpc2lvbi4gIElmIHNwZWNpZmllZCBhcyBgYFwnKlwnYGAgKGFuIGFzdGVyaXNrKSwgdGhlIGFjdHVhbFxuICAgcHJlY2lzaW9uIGlzIHJlYWQgZnJvbSB0aGUgbmV4dCBlbGVtZW50IG9mIHRoZSB0dXBsZSBpbiAqdmFsdWVzKixcbiAgIGFuZCB0aGUgdmFsdWUgdG8gY29udmVydCBjb21lcyBhZnRlciB0aGUgcHJlY2lzaW9uLlxuXG42LiBMZW5ndGggbW9kaWZpZXIgKG9wdGlvbmFsKS5cblxuNy4gQ29udmVyc2lvbiB0eXBlLlxuXG5XaGVuIHRoZSByaWdodCBhcmd1bWVudCBpcyBhIGRpY3Rpb25hcnkgKG9yIG90aGVyIG1hcHBpbmcgdHlwZSksIHRoZW5cbnRoZSBmb3JtYXRzIGluIHRoZSBzdHJpbmcgKm11c3QqIGluY2x1ZGUgYSBwYXJlbnRoZXNpc2VkIG1hcHBpbmcga2V5XG5pbnRvIHRoYXQgZGljdGlvbmFyeSBpbnNlcnRlZCBpbW1lZGlhdGVseSBhZnRlciB0aGUgYGBcJyVcJ2BgIGNoYXJhY3Rlci5cblRoZSBtYXBwaW5nIGtleSBzZWxlY3RzIHRoZSB2YWx1ZSB0byBiZSBmb3JtYXR0ZWQgZnJvbSB0aGUgbWFwcGluZy5cbkZvciBleGFtcGxlOlxuXG4+Pj4gcHJpbnQoXCclKGxhbmd1YWdlKXMgaGFzICUobnVtYmVyKTAzZCBxdW90ZSB0eXBlcy5cJyAlXG4uLi4gICAgICAge1wnbGFuZ3VhZ2VcJzogIlB5dGhvbiIsICJudW1iZXIiOiAyfSlcblB5dGhvbiBoYXMgMDAyIHF1b3RlIHR5cGVzLlxuXG5JbiB0aGlzIGNhc2Ugbm8gYGAqYGAgc3BlY2lmaWVycyBtYXkgb2NjdXIgaW4gYSBmb3JtYXQgKHNpbmNlIHRoZXlcbnJlcXVpcmUgYSBzZXF1ZW50aWFsIHBhcmFtZXRlciBsaXN0KS5cblxuVGhlIGNvbnZlcnNpb24gZmxhZyBjaGFyYWN0ZXJzIGFyZTpcblxuKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBGbGFnICAgICAgfCBNZWFuaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuKz09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09K1xufCBgYFwnI1wnYGAgICB8IFRoZSB2YWx1ZSBjb252ZXJzaW9uIHdpbGwgdXNlIHRoZSAiYWx0ZXJuYXRlIGZvcm0iICh3aGVyZSBkZWZpbmVkICAgICB8XG58ICAgICAgICAgICB8IGJlbG93KS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgXCcwXCdgYCAgIHwgVGhlIGNvbnZlcnNpb24gd2lsbCBiZSB6ZXJvIHBhZGRlZCBmb3IgbnVtZXJpYyB2YWx1ZXMuICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBcJy1cJ2BgICAgfCBUaGUgY29udmVydGVkIHZhbHVlIGlzIGxlZnQgYWRqdXN0ZWQgKG92ZXJyaWRlcyB0aGUgYGBcJzBcJ2BgICAgICAgICAgICB8XG58ICAgICAgICAgICB8IGNvbnZlcnNpb24gaWYgYm90aCBhcmUgZ2l2ZW4pLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgXCcgXCdgYCAgIHwgKGEgc3BhY2UpIEEgYmxhbmsgc2hvdWxkIGJlIGxlZnQgYmVmb3JlIGEgcG9zaXRpdmUgbnVtYmVyIChvciBlbXB0eSAgIHxcbnwgICAgICAgICAgIHwgc3RyaW5nKSBwcm9kdWNlZCBieSBhIHNpZ25lZCBjb252ZXJzaW9uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBcJytcJ2BgICAgfCBBIHNpZ24gY2hhcmFjdGVyIChgYFwnK1wnYGAgb3IgYGBcJy1cJ2BgKSB3aWxsIHByZWNlZGUgdGhlIGNvbnZlcnNpb24gICAgIHxcbnwgICAgICAgICAgIHwgKG92ZXJyaWRlcyBhICJzcGFjZSIgZmxhZykuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcblxuQSBsZW5ndGggbW9kaWZpZXIgKGBgaGBgLCBgYGxgYCwgb3IgYGBMYGApIG1heSBiZSBwcmVzZW50LCBidXQgaXNcbmlnbm9yZWQgYXMgaXQgaXMgbm90IG5lY2Vzc2FyeSBmb3IgUHl0aG9uIC0tIHNvIGUuZy4gYGAlbGRgYCBpc1xuaWRlbnRpY2FsIHRvIGBgJWRgYC5cblxuVGhlIGNvbnZlcnNpb24gdHlwZXMgYXJlOlxuXG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IENvbnZlcnNpb24gICB8IE1lYW5pbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgICB8XG4rPT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT0rXG58IGBgXCdkXCdgYCAgICAgIHwgU2lnbmVkIGludGVnZXIgZGVjaW1hbC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ2lcJ2BgICAgICAgfCBTaWduZWQgaW50ZWdlciBkZWNpbWFsLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnb1wnYGAgICAgICB8IFNpZ25lZCBvY3RhbCB2YWx1ZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKDEpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCd1XCdgYCAgICAgIHwgT2Jzb2xldGUgdHlwZSAtLSBpdCBpcyBpZGVudGljYWwgdG8gYGBcJ2RcJ2BgLiAgICAgICAgICB8ICg3KSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwneFwnYGAgICAgICB8IFNpZ25lZCBoZXhhZGVjaW1hbCAobG93ZXJjYXNlKS4gICAgICAgICAgICAgICAgICAgICAgIHwgKDIpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdYXCdgYCAgICAgIHwgU2lnbmVkIGhleGFkZWNpbWFsICh1cHBlcmNhc2UpLiAgICAgICAgICAgICAgICAgICAgICAgfCAoMikgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ2VcJ2BgICAgICAgfCBGbG9hdGluZyBwb2ludCBleHBvbmVudGlhbCBmb3JtYXQgKGxvd2VyY2FzZSkuICAgICAgICB8ICgzKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnRVwnYGAgICAgICB8IEZsb2F0aW5nIHBvaW50IGV4cG9uZW50aWFsIGZvcm1hdCAodXBwZXJjYXNlKS4gICAgICAgIHwgKDMpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdmXCdgYCAgICAgIHwgRmxvYXRpbmcgcG9pbnQgZGVjaW1hbCBmb3JtYXQuICAgICAgICAgICAgICAgICAgICAgICAgfCAoMykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ0ZcJ2BgICAgICAgfCBGbG9hdGluZyBwb2ludCBkZWNpbWFsIGZvcm1hdC4gICAgICAgICAgICAgICAgICAgICAgICB8ICgzKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnZ1wnYGAgICAgICB8IEZsb2F0aW5nIHBvaW50IGZvcm1hdC4gVXNlcyBsb3dlcmNhc2UgZXhwb25lbnRpYWwgICAgIHwgKDQpICAgICB8XG58ICAgICAgICAgICAgICB8IGZvcm1hdCBpZiBleHBvbmVudCBpcyBsZXNzIHRoYW4gLTQgb3Igbm90IGxlc3MgdGhhbiAgIHwgICAgICAgICB8XG58ICAgICAgICAgICAgICB8IHByZWNpc2lvbiwgZGVjaW1hbCBmb3JtYXQgb3RoZXJ3aXNlLiAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdHXCdgYCAgICAgIHwgRmxvYXRpbmcgcG9pbnQgZm9ybWF0LiBVc2VzIHVwcGVyY2FzZSBleHBvbmVudGlhbCAgICAgfCAoNCkgICAgIHxcbnwgICAgICAgICAgICAgIHwgZm9ybWF0IGlmIGV4cG9uZW50IGlzIGxlc3MgdGhhbiAtNCBvciBub3QgbGVzcyB0aGFuICAgfCAgICAgICAgIHxcbnwgICAgICAgICAgICAgIHwgcHJlY2lzaW9uLCBkZWNpbWFsIGZvcm1hdCBvdGhlcndpc2UuICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ2NcJ2BgICAgICAgfCBTaW5nbGUgY2hhcmFjdGVyIChhY2NlcHRzIGludGVnZXIgb3Igc2luZ2xlIGNoYXJhY3RlciB8ICAgICAgICAgfFxufCAgICAgICAgICAgICAgfCBzdHJpbmcpLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnclwnYGAgICAgICB8IFN0cmluZyAoY29udmVydHMgYW55IFB5dGhvbiBvYmplY3QgdXNpbmcgYGByZXByKClgYCkuIHwgKDUpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdzXCdgYCAgICAgIHwgU3RyaW5nIChjb252ZXJ0cyBhbnkgUHl0aG9uIG9iamVjdCB1c2luZyBgYHN0cigpYGApLiAgfCAoNSkgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ2FcJ2BgICAgICAgfCBTdHJpbmcgKGNvbnZlcnRzIGFueSBQeXRob24gb2JqZWN0IHVzaW5nICAgICAgICAgICAgICB8ICg1KSAgICAgfFxufCAgICAgICAgICAgICAgfCBgYGFzY2lpKClgYCkuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnJVwnYGAgICAgICB8IE5vIGFyZ3VtZW50IGlzIGNvbnZlcnRlZCwgcmVzdWx0cyBpbiBhIGBgXCclXCdgYCAgICAgICAgfCAgICAgICAgIHxcbnwgICAgICAgICAgICAgIHwgY2hhcmFjdGVyIGluIHRoZSByZXN1bHQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcblxuTm90ZXM6XG5cbjEuIFRoZSBhbHRlcm5hdGUgZm9ybSBjYXVzZXMgYSBsZWFkaW5nIHplcm8gKGBgXCcwXCdgYCkgdG8gYmUgaW5zZXJ0ZWRcbiAgIGJldHdlZW4gbGVmdC1oYW5kIHBhZGRpbmcgYW5kIHRoZSBmb3JtYXR0aW5nIG9mIHRoZSBudW1iZXIgaWYgdGhlXG4gICBsZWFkaW5nIGNoYXJhY3RlciBvZiB0aGUgcmVzdWx0IGlzIG5vdCBhbHJlYWR5IGEgemVyby5cblxuMi4gVGhlIGFsdGVybmF0ZSBmb3JtIGNhdXNlcyBhIGxlYWRpbmcgYGBcJzB4XCdgYCBvciBgYFwnMFhcJ2BgIChkZXBlbmRpbmdcbiAgIG9uIHdoZXRoZXIgdGhlIGBgXCd4XCdgYCBvciBgYFwnWFwnYGAgZm9ybWF0IHdhcyB1c2VkKSB0byBiZSBpbnNlcnRlZFxuICAgYmV0d2VlbiBsZWZ0LWhhbmQgcGFkZGluZyBhbmQgdGhlIGZvcm1hdHRpbmcgb2YgdGhlIG51bWJlciBpZiB0aGVcbiAgIGxlYWRpbmcgY2hhcmFjdGVyIG9mIHRoZSByZXN1bHQgaXMgbm90IGFscmVhZHkgYSB6ZXJvLlxuXG4zLiBUaGUgYWx0ZXJuYXRlIGZvcm0gY2F1c2VzIHRoZSByZXN1bHQgdG8gYWx3YXlzIGNvbnRhaW4gYSBkZWNpbWFsXG4gICBwb2ludCwgZXZlbiBpZiBubyBkaWdpdHMgZm9sbG93IGl0LlxuXG4gICBUaGUgcHJlY2lzaW9uIGRldGVybWluZXMgdGhlIG51bWJlciBvZiBkaWdpdHMgYWZ0ZXIgdGhlIGRlY2ltYWxcbiAgIHBvaW50IGFuZCBkZWZhdWx0cyB0byA2LlxuXG40LiBUaGUgYWx0ZXJuYXRlIGZvcm0gY2F1c2VzIHRoZSByZXN1bHQgdG8gYWx3YXlzIGNvbnRhaW4gYSBkZWNpbWFsXG4gICBwb2ludCwgYW5kIHRyYWlsaW5nIHplcm9lcyBhcmUgbm90IHJlbW92ZWQgYXMgdGhleSB3b3VsZCBvdGhlcndpc2VcbiAgIGJlLlxuXG4gICBUaGUgcHJlY2lzaW9uIGRldGVybWluZXMgdGhlIG51bWJlciBvZiBzaWduaWZpY2FudCBkaWdpdHMgYmVmb3JlXG4gICBhbmQgYWZ0ZXIgdGhlIGRlY2ltYWwgcG9pbnQgYW5kIGRlZmF1bHRzIHRvIDYuXG5cbjUuIElmIHByZWNpc2lvbiBpcyBgYE5gYCwgdGhlIG91dHB1dCBpcyB0cnVuY2F0ZWQgdG8gYGBOYGAgY2hhcmFjdGVycy5cblxuMS4gU2VlICoqUEVQIDIzNyoqLlxuXG5TaW5jZSBQeXRob24gc3RyaW5ncyBoYXZlIGFuIGV4cGxpY2l0IGxlbmd0aCwgYGAlc2BgIGNvbnZlcnNpb25zIGRvXG5ub3QgYXNzdW1lIHRoYXQgYGBcJ1xcMFwnYGAgaXMgdGhlIGVuZCBvZiB0aGUgc3RyaW5nLlxuXG5DaGFuZ2VkIGluIHZlcnNpb24gMy4xOiBgYCVmYGAgY29udmVyc2lvbnMgZm9yIG51bWJlcnMgd2hvc2UgYWJzb2x1dGVcbnZhbHVlIGlzIG92ZXIgMWU1MCBhcmUgbm8gbG9uZ2VyIHJlcGxhY2VkIGJ5IGBgJWdgYCBjb252ZXJzaW9ucy5cblxuQWRkaXRpb25hbCBzdHJpbmcgb3BlcmF0aW9ucyBhcmUgZGVmaW5lZCBpbiBzdGFuZGFyZCBtb2R1bGVzXG5gYHN0cmluZ2BgIGFuZCBgYHJlYGAuXG5cblxuUmFuZ2UgVHlwZVxuPT09PT09PT09PVxuXG5UaGUgYGByYW5nZWBgIHR5cGUgaXMgYW4gaW1tdXRhYmxlIHNlcXVlbmNlIHdoaWNoIGlzIGNvbW1vbmx5IHVzZWQgZm9yXG5sb29waW5nLiAgVGhlIGFkdmFudGFnZSBvZiB0aGUgYGByYW5nZWBgIHR5cGUgaXMgdGhhdCBhbiBgYHJhbmdlYGBcbm9iamVjdCB3aWxsIGFsd2F5cyB0YWtlIHRoZSBzYW1lIGFtb3VudCBvZiBtZW1vcnksIG5vIG1hdHRlciB0aGUgc2l6ZVxub2YgdGhlIHJhbmdlIGl0IHJlcHJlc2VudHMuXG5cblJhbmdlIG9iamVjdHMgaGF2ZSByZWxhdGl2ZWx5IGxpdHRsZSBiZWhhdmlvcjogdGhleSBzdXBwb3J0IGluZGV4aW5nLFxuY29udGFpbnMsIGl0ZXJhdGlvbiwgdGhlIGBgbGVuKClgYCBmdW5jdGlvbiwgYW5kIHRoZSBmb2xsb3dpbmdcbm1ldGhvZHM6XG5cbnJhbmdlLmNvdW50KHgpXG5cbiAgIFJldHVybiB0aGUgbnVtYmVyIG9mICppKlwncyBmb3Igd2hpY2ggYGBzW2ldID09IHhgYC5cblxuICAgICAgTmV3IGluIHZlcnNpb24gMy4yLlxuXG5yYW5nZS5pbmRleCh4KVxuXG4gICBSZXR1cm4gdGhlIHNtYWxsZXN0ICppKiBzdWNoIHRoYXQgYGBzW2ldID09IHhgYC4gIFJhaXNlc1xuICAgYGBWYWx1ZUVycm9yYGAgd2hlbiAqeCogaXMgbm90IGluIHRoZSByYW5nZS5cblxuICAgICAgTmV3IGluIHZlcnNpb24gMy4yLlxuXG5cbk11dGFibGUgU2VxdWVuY2UgVHlwZXNcbj09PT09PT09PT09PT09PT09PT09PT1cblxuTGlzdCBhbmQgYnl0ZWFycmF5IG9iamVjdHMgc3VwcG9ydCBhZGRpdGlvbmFsIG9wZXJhdGlvbnMgdGhhdCBhbGxvd1xuaW4tcGxhY2UgbW9kaWZpY2F0aW9uIG9mIHRoZSBvYmplY3QuICBPdGhlciBtdXRhYmxlIHNlcXVlbmNlIHR5cGVzXG4od2hlbiBhZGRlZCB0byB0aGUgbGFuZ3VhZ2UpIHNob3VsZCBhbHNvIHN1cHBvcnQgdGhlc2Ugb3BlcmF0aW9ucy5cblN0cmluZ3MgYW5kIHR1cGxlcyBhcmUgaW1tdXRhYmxlIHNlcXVlbmNlIHR5cGVzOiBzdWNoIG9iamVjdHMgY2Fubm90XG5iZSBtb2RpZmllZCBvbmNlIGNyZWF0ZWQuIFRoZSBmb2xsb3dpbmcgb3BlcmF0aW9ucyBhcmUgZGVmaW5lZCBvblxubXV0YWJsZSBzZXF1ZW5jZSB0eXBlcyAod2hlcmUgKngqIGlzIGFuIGFyYml0cmFyeSBvYmplY3QpLlxuXG5Ob3RlIHRoYXQgd2hpbGUgbGlzdHMgYWxsb3cgdGhlaXIgaXRlbXMgdG8gYmUgb2YgYW55IHR5cGUsIGJ5dGVhcnJheVxub2JqZWN0ICJpdGVtcyIgYXJlIGFsbCBpbnRlZ2VycyBpbiB0aGUgcmFuZ2UgMCA8PSB4IDwgMjU2LlxuXG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgT3BlcmF0aW9uICAgICAgICAgICAgICAgICAgICAgIHwgUmVzdWx0ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyAgICAgICAgICAgICAgICAgfFxuKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT0rXG58IGBgc1tpXSA9IHhgYCAgICAgICAgICAgICAgICAgICB8IGl0ZW0gKmkqIG9mICpzKiBpcyByZXBsYWNlZCBieSAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKngqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgc1tpOmpdID0gdGBgICAgICAgICAgICAgICAgICB8IHNsaWNlIG9mICpzKiBmcm9tICppKiB0byAqaiogaXMgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcmVwbGFjZWQgYnkgdGhlIGNvbnRlbnRzIG9mIHRoZSAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBpdGVyYWJsZSAqdCogICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBkZWwgc1tpOmpdYGAgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHNbaTpqXSA9IFtdYGAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgc1tpOmo6a10gPSB0YGAgICAgICAgICAgICAgICB8IHRoZSBlbGVtZW50cyBvZiBgYHNbaTpqOmtdYGAgYXJlIHwgKDEpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcmVwbGFjZWQgYnkgdGhvc2Ugb2YgKnQqICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgZGVsIHNbaTpqOmtdYGAgICAgICAgICAgICAgICB8IHJlbW92ZXMgdGhlIGVsZW1lbnRzIG9mICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBzW2k6ajprXWBgIGZyb20gdGhlIGxpc3QgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5hcHBlbmQoeClgYCAgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2xlbihzKTpsZW4ocyldID0gICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdYGAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5leHRlbmQoeClgYCAgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2xlbihzKTpsZW4ocyldID0geGBgIHwgKDIpICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuY2xlYXIoKWBgICAgICAgICAgICAgICAgICAgfCByZW1vdmUgYWxsIGl0ZW1zIGZyb20gYGBzYGAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmNvcHkoKWBgICAgICAgICAgICAgICAgICAgIHwgcmV0dXJuIGEgc2hhbGxvdyBjb3B5IG9mIGBgc2BgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5jb3VudCh4KWBgICAgICAgICAgICAgICAgICB8IHJldHVybiBudW1iZXIgb2YgKmkqXCdzIGZvciB3aGljaCB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1tpXSA9PSB4YGAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5kZXgoeFssIGlbLCBqXV0pYGAgICAgICAgfCByZXR1cm4gc21hbGxlc3QgKmsqIHN1Y2ggdGhhdCAgICB8ICgzKSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1trXSA9PSB4YGAgYW5kIGBgaSA8PSBrIDwgamBgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5zZXJ0KGksIHgpYGAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tpOmldID0gW3hdYGAgICAgICAgICB8ICg0KSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnBvcChbaV0pYGAgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHggPSBzW2ldOyBkZWwgc1tpXTsgICAgfCAoNSkgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXR1cm4geGBgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnJlbW92ZSh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYGRlbCBzW3MuaW5kZXgoeCldYGAgICAgfCAoMykgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5yZXZlcnNlKClgYCAgICAgICAgICAgICAgICB8IHJldmVyc2VzIHRoZSBpdGVtcyBvZiAqcyogaW4gICAgIHwgKDYpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcGxhY2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5zb3J0KFtrZXlbLCByZXZlcnNlXV0pYGAgICB8IHNvcnQgdGhlIGl0ZW1zIG9mICpzKiBpbiBwbGFjZSAgIHwgKDYpLCAoNyksICg4KSAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuXG5Ob3RlczpcblxuMS4gKnQqIG11c3QgaGF2ZSB0aGUgc2FtZSBsZW5ndGggYXMgdGhlIHNsaWNlIGl0IGlzIHJlcGxhY2luZy5cblxuMi4gKngqIGNhbiBiZSBhbnkgaXRlcmFibGUgb2JqZWN0LlxuXG4zLiBSYWlzZXMgYGBWYWx1ZUVycm9yYGAgd2hlbiAqeCogaXMgbm90IGZvdW5kIGluICpzKi4gV2hlbiBhIG5lZ2F0aXZlXG4gICBpbmRleCBpcyBwYXNzZWQgYXMgdGhlIHNlY29uZCBvciB0aGlyZCBwYXJhbWV0ZXIgdG8gdGhlIGBgaW5kZXgoKWBgXG4gICBtZXRob2QsIHRoZSBzZXF1ZW5jZSBsZW5ndGggaXMgYWRkZWQsIGFzIGZvciBzbGljZSBpbmRpY2VzLiAgSWYgaXRcbiAgIGlzIHN0aWxsIG5lZ2F0aXZlLCBpdCBpcyB0cnVuY2F0ZWQgdG8gemVybywgYXMgZm9yIHNsaWNlIGluZGljZXMuXG5cbjQuIFdoZW4gYSBuZWdhdGl2ZSBpbmRleCBpcyBwYXNzZWQgYXMgdGhlIGZpcnN0IHBhcmFtZXRlciB0byB0aGVcbiAgIGBgaW5zZXJ0KClgYCBtZXRob2QsIHRoZSBzZXF1ZW5jZSBsZW5ndGggaXMgYWRkZWQsIGFzIGZvciBzbGljZVxuICAgaW5kaWNlcy4gIElmIGl0IGlzIHN0aWxsIG5lZ2F0aXZlLCBpdCBpcyB0cnVuY2F0ZWQgdG8gemVybywgYXMgZm9yXG4gICBzbGljZSBpbmRpY2VzLlxuXG41LiBUaGUgb3B0aW9uYWwgYXJndW1lbnQgKmkqIGRlZmF1bHRzIHRvIGBgLTFgYCwgc28gdGhhdCBieSBkZWZhdWx0XG4gICB0aGUgbGFzdCBpdGVtIGlzIHJlbW92ZWQgYW5kIHJldHVybmVkLlxuXG42LiBUaGUgYGBzb3J0KClgYCBhbmQgYGByZXZlcnNlKClgYCBtZXRob2RzIG1vZGlmeSB0aGUgc2VxdWVuY2UgaW5cbiAgIHBsYWNlIGZvciBlY29ub215IG9mIHNwYWNlIHdoZW4gc29ydGluZyBvciByZXZlcnNpbmcgYSBsYXJnZVxuICAgc2VxdWVuY2UuICBUbyByZW1pbmQgeW91IHRoYXQgdGhleSBvcGVyYXRlIGJ5IHNpZGUgZWZmZWN0LCB0aGV5XG4gICBkb25cJ3QgcmV0dXJuIHRoZSBzb3J0ZWQgb3IgcmV2ZXJzZWQgc2VxdWVuY2UuXG5cbjcuIFRoZSBgYHNvcnQoKWBgIG1ldGhvZCB0YWtlcyBvcHRpb25hbCBhcmd1bWVudHMgZm9yIGNvbnRyb2xsaW5nIHRoZVxuICAgY29tcGFyaXNvbnMuICBFYWNoIG11c3QgYmUgc3BlY2lmaWVkIGFzIGEga2V5d29yZCBhcmd1bWVudC5cblxuICAgKmtleSogc3BlY2lmaWVzIGEgZnVuY3Rpb24gb2Ygb25lIGFyZ3VtZW50IHRoYXQgaXMgdXNlZCB0byBleHRyYWN0XG4gICBhIGNvbXBhcmlzb24ga2V5IGZyb20gZWFjaCBsaXN0IGVsZW1lbnQ6IGBga2V5PXN0ci5sb3dlcmBgLiAgVGhlXG4gICBkZWZhdWx0IHZhbHVlIGlzIGBgTm9uZWBgLiBVc2UgYGBmdW5jdG9vbHMuY21wX3RvX2tleSgpYGAgdG9cbiAgIGNvbnZlcnQgYW4gb2xkLXN0eWxlICpjbXAqIGZ1bmN0aW9uIHRvIGEgKmtleSogZnVuY3Rpb24uXG5cbiAgICpyZXZlcnNlKiBpcyBhIGJvb2xlYW4gdmFsdWUuICBJZiBzZXQgdG8gYGBUcnVlYGAsIHRoZW4gdGhlIGxpc3RcbiAgIGVsZW1lbnRzIGFyZSBzb3J0ZWQgYXMgaWYgZWFjaCBjb21wYXJpc29uIHdlcmUgcmV2ZXJzZWQuXG5cbiAgIFRoZSBgYHNvcnQoKWBgIG1ldGhvZCBpcyBndWFyYW50ZWVkIHRvIGJlIHN0YWJsZS4gIEEgc29ydCBpcyBzdGFibGVcbiAgIGlmIGl0IGd1YXJhbnRlZXMgbm90IHRvIGNoYW5nZSB0aGUgcmVsYXRpdmUgb3JkZXIgb2YgZWxlbWVudHMgdGhhdFxuICAgY29tcGFyZSBlcXVhbCAtLS0gdGhpcyBpcyBoZWxwZnVsIGZvciBzb3J0aW5nIGluIG11bHRpcGxlIHBhc3Nlc1xuICAgKGZvciBleGFtcGxlLCBzb3J0IGJ5IGRlcGFydG1lbnQsIHRoZW4gYnkgc2FsYXJ5IGdyYWRlKS5cblxuICAgKipDUHl0aG9uIGltcGxlbWVudGF0aW9uIGRldGFpbDoqKiBXaGlsZSBhIGxpc3QgaXMgYmVpbmcgc29ydGVkLFxuICAgdGhlIGVmZmVjdCBvZiBhdHRlbXB0aW5nIHRvIG11dGF0ZSwgb3IgZXZlbiBpbnNwZWN0LCB0aGUgbGlzdCBpc1xuICAgdW5kZWZpbmVkLiAgVGhlIEMgaW1wbGVtZW50YXRpb24gb2YgUHl0aG9uIG1ha2VzIHRoZSBsaXN0IGFwcGVhclxuICAgZW1wdHkgZm9yIHRoZSBkdXJhdGlvbiwgYW5kIHJhaXNlcyBgYFZhbHVlRXJyb3JgYCBpZiBpdCBjYW4gZGV0ZWN0XG4gICB0aGF0IHRoZSBsaXN0IGhhcyBiZWVuIG11dGF0ZWQgZHVyaW5nIGEgc29ydC5cblxuOC4gYGBzb3J0KClgYCBpcyBub3Qgc3VwcG9ydGVkIGJ5IGBgYnl0ZWFycmF5YGAgb2JqZWN0cy5cblxuICAgICAgTmV3IGluIHZlcnNpb24gMy4zOiBgYGNsZWFyKClgYCBhbmQgYGBjb3B5KClgYCBtZXRob2RzLlxuXG5cbkJ5dGVzIGFuZCBCeXRlIEFycmF5IE1ldGhvZHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzLCBiZWluZyAic3RyaW5ncyBvZiBieXRlcyIsIGhhdmUgYWxsXG5tZXRob2RzIGZvdW5kIG9uIHN0cmluZ3MsIHdpdGggdGhlIGV4Y2VwdGlvbiBvZiBgYGVuY29kZSgpYGAsXG5gYGZvcm1hdCgpYGAgYW5kIGBgaXNpZGVudGlmaWVyKClgYCwgd2hpY2ggZG8gbm90IG1ha2Ugc2Vuc2Ugd2l0aFxudGhlc2UgdHlwZXMuICBGb3IgY29udmVydGluZyB0aGUgb2JqZWN0cyB0byBzdHJpbmdzLCB0aGV5IGhhdmUgYVxuYGBkZWNvZGUoKWBgIG1ldGhvZC5cblxuV2hlcmV2ZXIgb25lIG9mIHRoZXNlIG1ldGhvZHMgbmVlZHMgdG8gaW50ZXJwcmV0IHRoZSBieXRlcyBhc1xuY2hhcmFjdGVycyAoZS5nLiB0aGUgYGBpcy4uLigpYGAgbWV0aG9kcyksIHRoZSBBU0NJSSBjaGFyYWN0ZXIgc2V0IGlzXG5hc3N1bWVkLlxuXG5OZXcgaW4gdmVyc2lvbiAzLjM6IFRoZSBmdW5jdGlvbnMgYGBjb3VudCgpYGAsIGBgZmluZCgpYGAsXG5gYGluZGV4KClgYCwgYGByZmluZCgpYGAgYW5kIGBgcmluZGV4KClgYCBoYXZlIGFkZGl0aW9uYWwgc2VtYW50aWNzXG5jb21wYXJlZCB0byB0aGUgY29ycmVzcG9uZGluZyBzdHJpbmcgZnVuY3Rpb25zOiBUaGV5IGFsc28gYWNjZXB0IGFuXG5pbnRlZ2VyIGluIHJhbmdlIDAgdG8gMjU1IChhIGJ5dGUpIGFzIHRoZWlyIGZpcnN0IGFyZ3VtZW50LlxuXG5Ob3RlOiBUaGUgbWV0aG9kcyBvbiBieXRlcyBhbmQgYnl0ZWFycmF5IG9iamVjdHMgZG9uXCd0IGFjY2VwdCBzdHJpbmdzIGFzXG4gIHRoZWlyIGFyZ3VtZW50cywganVzdCBhcyB0aGUgbWV0aG9kcyBvbiBzdHJpbmdzIGRvblwndCBhY2NlcHQgYnl0ZXNcbiAgYXMgdGhlaXIgYXJndW1lbnRzLiAgRm9yIGV4YW1wbGUsIHlvdSBoYXZlIHRvIHdyaXRlXG5cbiAgICAgYSA9ICJhYmMiXG4gICAgIGIgPSBhLnJlcGxhY2UoImEiLCAiZiIpXG5cbiAgYW5kXG5cbiAgICAgYSA9IGIiYWJjIlxuICAgICBiID0gYS5yZXBsYWNlKGIiYSIsIGIiZiIpXG5cbmJ5dGVzLmRlY29kZShlbmNvZGluZz0idXRmLTgiLCBlcnJvcnM9InN0cmljdCIpXG5ieXRlYXJyYXkuZGVjb2RlKGVuY29kaW5nPSJ1dGYtOCIsIGVycm9ycz0ic3RyaWN0IilcblxuICAgUmV0dXJuIGEgc3RyaW5nIGRlY29kZWQgZnJvbSB0aGUgZ2l2ZW4gYnl0ZXMuICBEZWZhdWx0IGVuY29kaW5nIGlzXG4gICBgYFwndXRmLThcJ2BgLiAqZXJyb3JzKiBtYXkgYmUgZ2l2ZW4gdG8gc2V0IGEgZGlmZmVyZW50IGVycm9yXG4gICBoYW5kbGluZyBzY2hlbWUuICBUaGUgZGVmYXVsdCBmb3IgKmVycm9ycyogaXMgYGBcJ3N0cmljdFwnYGAsIG1lYW5pbmdcbiAgIHRoYXQgZW5jb2RpbmcgZXJyb3JzIHJhaXNlIGEgYGBVbmljb2RlRXJyb3JgYC4gIE90aGVyIHBvc3NpYmxlXG4gICB2YWx1ZXMgYXJlIGBgXCdpZ25vcmVcJ2BgLCBgYFwncmVwbGFjZVwnYGAgYW5kIGFueSBvdGhlciBuYW1lXG4gICByZWdpc3RlcmVkIHZpYSBgYGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigpYGAsIHNlZSBzZWN0aW9uICpDb2RlYyBCYXNlXG4gICBDbGFzc2VzKi4gRm9yIGEgbGlzdCBvZiBwb3NzaWJsZSBlbmNvZGluZ3MsIHNlZSBzZWN0aW9uICpTdGFuZGFyZFxuICAgRW5jb2RpbmdzKi5cblxuICAgQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogQWRkZWQgc3VwcG9ydCBmb3Iga2V5d29yZCBhcmd1bWVudHMuXG5cblRoZSBieXRlcyBhbmQgYnl0ZWFycmF5IHR5cGVzIGhhdmUgYW4gYWRkaXRpb25hbCBjbGFzcyBtZXRob2Q6XG5cbmNsYXNzbWV0aG9kIGJ5dGVzLmZyb21oZXgoc3RyaW5nKVxuY2xhc3NtZXRob2QgYnl0ZWFycmF5LmZyb21oZXgoc3RyaW5nKVxuXG4gICBUaGlzIGBgYnl0ZXNgYCBjbGFzcyBtZXRob2QgcmV0dXJucyBhIGJ5dGVzIG9yIGJ5dGVhcnJheSBvYmplY3QsXG4gICBkZWNvZGluZyB0aGUgZ2l2ZW4gc3RyaW5nIG9iamVjdC4gIFRoZSBzdHJpbmcgbXVzdCBjb250YWluIHR3b1xuICAgaGV4YWRlY2ltYWwgZGlnaXRzIHBlciBieXRlLCBzcGFjZXMgYXJlIGlnbm9yZWQuXG5cbiAgID4+PiBieXRlcy5mcm9taGV4KFwnZjAgZjFmMiAgXCcpXG4gICBiXCdcXHhmMFxceGYxXFx4ZjJcJ1xuXG5UaGUgbWFrZXRyYW5zIGFuZCB0cmFuc2xhdGUgbWV0aG9kcyBkaWZmZXIgaW4gc2VtYW50aWNzIGZyb20gdGhlXG52ZXJzaW9ucyBhdmFpbGFibGUgb24gc3RyaW5nczpcblxuYnl0ZXMudHJhbnNsYXRlKHRhYmxlWywgZGVsZXRlXSlcbmJ5dGVhcnJheS50cmFuc2xhdGUodGFibGVbLCBkZWxldGVdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBieXRlcyBvciBieXRlYXJyYXkgb2JqZWN0IHdoZXJlIGFsbCBieXRlc1xuICAgb2NjdXJyaW5nIGluIHRoZSBvcHRpb25hbCBhcmd1bWVudCAqZGVsZXRlKiBhcmUgcmVtb3ZlZCwgYW5kIHRoZVxuICAgcmVtYWluaW5nIGJ5dGVzIGhhdmUgYmVlbiBtYXBwZWQgdGhyb3VnaCB0aGUgZ2l2ZW4gdHJhbnNsYXRpb25cbiAgIHRhYmxlLCB3aGljaCBtdXN0IGJlIGEgYnl0ZXMgb2JqZWN0IG9mIGxlbmd0aCAyNTYuXG5cbiAgIFlvdSBjYW4gdXNlIHRoZSBgYGJ5dGVzLm1ha2V0cmFucygpYGAgbWV0aG9kIHRvIGNyZWF0ZSBhXG4gICB0cmFuc2xhdGlvbiB0YWJsZS5cblxuICAgU2V0IHRoZSAqdGFibGUqIGFyZ3VtZW50IHRvIGBgTm9uZWBgIGZvciB0cmFuc2xhdGlvbnMgdGhhdCBvbmx5XG4gICBkZWxldGUgY2hhcmFjdGVyczpcblxuICAgICAgPj4+IGJcJ3JlYWQgdGhpcyBzaG9ydCB0ZXh0XCcudHJhbnNsYXRlKE5vbmUsIGJcJ2FlaW91XCcpXG4gICAgICBiXCdyZCB0aHMgc2hydCB0eHRcJ1xuXG5zdGF0aWMgYnl0ZXMubWFrZXRyYW5zKGZyb20sIHRvKVxuc3RhdGljIGJ5dGVhcnJheS5tYWtldHJhbnMoZnJvbSwgdG8pXG5cbiAgIFRoaXMgc3RhdGljIG1ldGhvZCByZXR1cm5zIGEgdHJhbnNsYXRpb24gdGFibGUgdXNhYmxlIGZvclxuICAgYGBieXRlcy50cmFuc2xhdGUoKWBgIHRoYXQgd2lsbCBtYXAgZWFjaCBjaGFyYWN0ZXIgaW4gKmZyb20qIGludG9cbiAgIHRoZSBjaGFyYWN0ZXIgYXQgdGhlIHNhbWUgcG9zaXRpb24gaW4gKnRvKjsgKmZyb20qIGFuZCAqdG8qIG11c3QgYmVcbiAgIGJ5dGVzIG9iamVjdHMgYW5kIGhhdmUgdGhlIHNhbWUgbGVuZ3RoLlxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjEuXG4nLAorICd0eXBlc3NlcS1tdXRhYmxlJzogJ1xuTXV0YWJsZSBTZXF1ZW5jZSBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKlxuXG5MaXN0IGFuZCBieXRlYXJyYXkgb2JqZWN0cyBzdXBwb3J0IGFkZGl0aW9uYWwgb3BlcmF0aW9ucyB0aGF0IGFsbG93XG5pbi1wbGFjZSBtb2RpZmljYXRpb24gb2YgdGhlIG9iamVjdC4gIE90aGVyIG11dGFibGUgc2VxdWVuY2UgdHlwZXNcbih3aGVuIGFkZGVkIHRvIHRoZSBsYW5ndWFnZSkgc2hvdWxkIGFsc28gc3VwcG9ydCB0aGVzZSBvcGVyYXRpb25zLlxuU3RyaW5ncyBhbmQgdHVwbGVzIGFyZSBpbW11dGFibGUgc2VxdWVuY2UgdHlwZXM6IHN1Y2ggb2JqZWN0cyBjYW5ub3RcbmJlIG1vZGlmaWVkIG9uY2UgY3JlYXRlZC4gVGhlIGZvbGxvd2luZyBvcGVyYXRpb25zIGFyZSBkZWZpbmVkIG9uXG5tdXRhYmxlIHNlcXVlbmNlIHR5cGVzICh3aGVyZSAqeCogaXMgYW4gYXJiaXRyYXJ5IG9iamVjdCkuXG5cbk5vdGUgdGhhdCB3aGlsZSBsaXN0cyBhbGxvdyB0aGVpciBpdGVtcyB0byBiZSBvZiBhbnkgdHlwZSwgYnl0ZWFycmF5XG5vYmplY3QgIml0ZW1zIiBhcmUgYWxsIGludGVnZXJzIGluIHRoZSByYW5nZSAwIDw9IHggPCAyNTYuXG5cbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBPcGVyYXRpb24gICAgICAgICAgICAgICAgICAgICAgfCBSZXN1bHQgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgICAgICAgICAgICAgICB8XG4rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PStcbnwgYGBzW2ldID0geGBgICAgICAgICAgICAgICAgICAgIHwgaXRlbSAqaSogb2YgKnMqIGlzIHJlcGxhY2VkIGJ5ICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAqeCogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzW2k6al0gPSB0YGAgICAgICAgICAgICAgICAgIHwgc2xpY2Ugb2YgKnMqIGZyb20gKmkqIHRvICpqKiBpcyAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXBsYWNlZCBieSB0aGUgY29udGVudHMgb2YgdGhlICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGl0ZXJhYmxlICp0KiAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYGRlbCBzW2k6al1gYCAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tpOmpdID0gW11gYCAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzW2k6ajprXSA9IHRgYCAgICAgICAgICAgICAgIHwgdGhlIGVsZW1lbnRzIG9mIGBgc1tpOmo6a11gYCBhcmUgfCAoMSkgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXBsYWNlZCBieSB0aG9zZSBvZiAqdCogICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBkZWwgc1tpOmo6a11gYCAgICAgICAgICAgICAgIHwgcmVtb3ZlcyB0aGUgZWxlbWVudHMgb2YgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBgYHNbaTpqOmtdYGAgZnJvbSB0aGUgbGlzdCAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmFwcGVuZCh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHNbbGVuKHMpOmxlbihzKV0gPSAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbeF1gYCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmV4dGVuZCh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHNbbGVuKHMpOmxlbihzKV0gPSB4YGAgfCAoMikgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5jbGVhcigpYGAgICAgICAgICAgICAgICAgICB8IHJlbW92ZSBhbGwgaXRlbXMgZnJvbSBgYHNgYCAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuY29weSgpYGAgICAgICAgICAgICAgICAgICAgfCByZXR1cm4gYSBzaGFsbG93IGNvcHkgb2YgYGBzYGAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmNvdW50KHgpYGAgICAgICAgICAgICAgICAgIHwgcmV0dXJuIG51bWJlciBvZiAqaSpcJ3MgZm9yIHdoaWNoIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBzW2ldID09IHhgYCAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5pbmRleCh4WywgaVssIGpdXSlgYCAgICAgICB8IHJldHVybiBzbWFsbGVzdCAqayogc3VjaCB0aGF0ICAgIHwgKDMpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBzW2tdID09IHhgYCBhbmQgYGBpIDw9IGsgPCBqYGAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5pbnNlcnQoaSwgeClgYCAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2k6aV0gPSBbeF1gYCAgICAgICAgIHwgKDQpICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMucG9wKFtpXSlgYCAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgeCA9IHNbaV07IGRlbCBzW2ldOyAgICB8ICg1KSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHJldHVybiB4YGAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMucmVtb3ZlKHgpYGAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgZGVsIHNbcy5pbmRleCh4KV1gYCAgICB8ICgzKSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnJldmVyc2UoKWBgICAgICAgICAgICAgICAgIHwgcmV2ZXJzZXMgdGhlIGl0ZW1zIG9mICpzKiBpbiAgICAgfCAoNikgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBwbGFjZSAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnNvcnQoW2tleVssIHJldmVyc2VdXSlgYCAgIHwgc29ydCB0aGUgaXRlbXMgb2YgKnMqIGluIHBsYWNlICAgfCAoNiksICg3KSwgKDgpICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG5cbk5vdGVzOlxuXG4xLiAqdCogbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aCBhcyB0aGUgc2xpY2UgaXQgaXMgcmVwbGFjaW5nLlxuXG4yLiAqeCogY2FuIGJlIGFueSBpdGVyYWJsZSBvYmplY3QuXG5cbjMuIFJhaXNlcyBgYFZhbHVlRXJyb3JgYCB3aGVuICp4KiBpcyBub3QgZm91bmQgaW4gKnMqLiBXaGVuIGEgbmVnYXRpdmVcbiAgIGluZGV4IGlzIHBhc3NlZCBhcyB0aGUgc2Vjb25kIG9yIHRoaXJkIHBhcmFtZXRlciB0byB0aGUgYGBpbmRleCgpYGBcbiAgIG1ldGhvZCwgdGhlIHNlcXVlbmNlIGxlbmd0aCBpcyBhZGRlZCwgYXMgZm9yIHNsaWNlIGluZGljZXMuICBJZiBpdFxuICAgaXMgc3RpbGwgbmVnYXRpdmUsIGl0IGlzIHRydW5jYXRlZCB0byB6ZXJvLCBhcyBmb3Igc2xpY2UgaW5kaWNlcy5cblxuNC4gV2hlbiBhIG5lZ2F0aXZlIGluZGV4IGlzIHBhc3NlZCBhcyB0aGUgZmlyc3QgcGFyYW1ldGVyIHRvIHRoZVxuICAgYGBpbnNlcnQoKWBgIG1ldGhvZCwgdGhlIHNlcXVlbmNlIGxlbmd0aCBpcyBhZGRlZCwgYXMgZm9yIHNsaWNlXG4gICBpbmRpY2VzLiAgSWYgaXQgaXMgc3RpbGwgbmVnYXRpdmUsIGl0IGlzIHRydW5jYXRlZCB0byB6ZXJvLCBhcyBmb3JcbiAgIHNsaWNlIGluZGljZXMuXG5cbjUuIFRoZSBvcHRpb25hbCBhcmd1bWVudCAqaSogZGVmYXVsdHMgdG8gYGAtMWBgLCBzbyB0aGF0IGJ5IGRlZmF1bHRcbiAgIHRoZSBsYXN0IGl0ZW0gaXMgcmVtb3ZlZCBhbmQgcmV0dXJuZWQuXG5cbjYuIFRoZSBgYHNvcnQoKWBgIGFuZCBgYHJldmVyc2UoKWBgIG1ldGhvZHMgbW9kaWZ5IHRoZSBzZXF1ZW5jZSBpblxuICAgcGxhY2UgZm9yIGVjb25vbXkgb2Ygc3BhY2Ugd2hlbiBzb3J0aW5nIG9yIHJldmVyc2luZyBhIGxhcmdlXG4gICBzZXF1ZW5jZS4gIFRvIHJlbWluZCB5b3UgdGhhdCB0aGV5IG9wZXJhdGUgYnkgc2lkZSBlZmZlY3QsIHRoZXlcbiAgIGRvblwndCByZXR1cm4gdGhlIHNvcnRlZCBvciByZXZlcnNlZCBzZXF1ZW5jZS5cblxuNy4gVGhlIGBgc29ydCgpYGAgbWV0aG9kIHRha2VzIG9wdGlvbmFsIGFyZ3VtZW50cyBmb3IgY29udHJvbGxpbmcgdGhlXG4gICBjb21wYXJpc29ucy4gIEVhY2ggbXVzdCBiZSBzcGVjaWZpZWQgYXMgYSBrZXl3b3JkIGFyZ3VtZW50LlxuXG4gICAqa2V5KiBzcGVjaWZpZXMgYSBmdW5jdGlvbiBvZiBvbmUgYXJndW1lbnQgdGhhdCBpcyB1c2VkIHRvIGV4dHJhY3RcbiAgIGEgY29tcGFyaXNvbiBrZXkgZnJvbSBlYWNoIGxpc3QgZWxlbWVudDogYGBrZXk9c3RyLmxvd2VyYGAuICBUaGVcbiAgIGRlZmF1bHQgdmFsdWUgaXMgYGBOb25lYGAuIFVzZSBgYGZ1bmN0b29scy5jbXBfdG9fa2V5KClgYCB0b1xuICAgY29udmVydCBhbiBvbGQtc3R5bGUgKmNtcCogZnVuY3Rpb24gdG8gYSAqa2V5KiBmdW5jdGlvbi5cblxuICAgKnJldmVyc2UqIGlzIGEgYm9vbGVhbiB2YWx1ZS4gIElmIHNldCB0byBgYFRydWVgYCwgdGhlbiB0aGUgbGlzdFxuICAgZWxlbWVudHMgYXJlIHNvcnRlZCBhcyBpZiBlYWNoIGNvbXBhcmlzb24gd2VyZSByZXZlcnNlZC5cblxuICAgVGhlIGBgc29ydCgpYGAgbWV0aG9kIGlzIGd1YXJhbnRlZWQgdG8gYmUgc3RhYmxlLiAgQSBzb3J0IGlzIHN0YWJsZVxuICAgaWYgaXQgZ3VhcmFudGVlcyBub3QgdG8gY2hhbmdlIHRoZSByZWxhdGl2ZSBvcmRlciBvZiBlbGVtZW50cyB0aGF0XG4gICBjb21wYXJlIGVxdWFsIC0tLSB0aGlzIGlzIGhlbHBmdWwgZm9yIHNvcnRpbmcgaW4gbXVsdGlwbGUgcGFzc2VzXG4gICAoZm9yIGV4YW1wbGUsIHNvcnQgYnkgZGVwYXJ0bWVudCwgdGhlbiBieSBzYWxhcnkgZ3JhZGUpLlxuXG4gICAqKkNQeXRob24gaW1wbGVtZW50YXRpb24gZGV0YWlsOioqIFdoaWxlIGEgbGlzdCBpcyBiZWluZyBzb3J0ZWQsXG4gICB0aGUgZWZmZWN0IG9mIGF0dGVtcHRpbmcgdG8gbXV0YXRlLCBvciBldmVuIGluc3BlY3QsIHRoZSBsaXN0IGlzXG4gICB1bmRlZmluZWQuICBUaGUgQyBpbXBsZW1lbnRhdGlvbiBvZiBQeXRob24gbWFrZXMgdGhlIGxpc3QgYXBwZWFyXG4gICBlbXB0eSBmb3IgdGhlIGR1cmF0aW9uLCBhbmQgcmFpc2VzIGBgVmFsdWVFcnJvcmBgIGlmIGl0IGNhbiBkZXRlY3RcbiAgIHRoYXQgdGhlIGxpc3QgaGFzIGJlZW4gbXV0YXRlZCBkdXJpbmcgYSBzb3J0LlxuXG44LiBgYHNvcnQoKWBgIGlzIG5vdCBzdXBwb3J0ZWQgYnkgYGBieXRlYXJyYXlgYCBvYmplY3RzLlxuXG4gICAgICBOZXcgaW4gdmVyc2lvbiAzLjM6IGBgY2xlYXIoKWBgIGFuZCBgYGNvcHkoKWBgIG1ldGhvZHMuXG4nLAogICd1bmFyeSc6ICdcblVuYXJ5IGFyaXRobWV0aWMgYW5kIGJpdHdpc2Ugb3BlcmF0aW9uc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkFsbCB1bmFyeSBhcml0aG1ldGljIGFuZCBiaXR3aXNlIG9wZXJhdGlvbnMgaGF2ZSB0aGUgc2FtZSBwcmlvcml0eTpcblxuICAgdV9leHByIDo6PSBwb3dlciB8ICItIiB1X2V4cHIgfCAiKyIgdV9leHByIHwgIn4iIHVfZXhwclxuXG5UaGUgdW5hcnkgYGAtYGAgKG1pbnVzKSBvcGVyYXRvciB5aWVsZHMgdGhlIG5lZ2F0aW9uIG9mIGl0cyBudW1lcmljXG5hcmd1bWVudC5cblxuVGhlIHVuYXJ5IGBgK2BgIChwbHVzKSBvcGVyYXRvciB5aWVsZHMgaXRzIG51bWVyaWMgYXJndW1lbnQgdW5jaGFuZ2VkLlxuXG5UaGUgdW5hcnkgYGB+YGAgKGludmVydCkgb3BlcmF0b3IgeWllbGRzIHRoZSBiaXR3aXNlIGludmVyc2lvbiBvZiBpdHNcbmludGVnZXIgYXJndW1lbnQuICBUaGUgYml0d2lzZSBpbnZlcnNpb24gb2YgYGB4YGAgaXMgZGVmaW5lZCBhc1xuYGAtKHgrMSlgYC4gIEl0IG9ubHkgYXBwbGllcyB0byBpbnRlZ3JhbCBudW1iZXJzLlxuXG5JbiBhbGwgdGhyZWUgY2FzZXMsIGlmIHRoZSBhcmd1bWVudCBkb2VzIG5vdCBoYXZlIHRoZSBwcm9wZXIgdHlwZSwgYVxuYGBUeXBlRXJyb3JgYCBleGNlcHRpb24gaXMgcmFpc2VkLlxuJywKICAnd2hpbGUnOiAnXG5UaGUgYGB3aGlsZWBgIHN0YXRlbWVudFxuKioqKioqKioqKioqKioqKioqKioqKipcblxuVGhlIGBgd2hpbGVgYCBzdGF0ZW1lbnQgaXMgdXNlZCBmb3IgcmVwZWF0ZWQgZXhlY3V0aW9uIGFzIGxvbmcgYXMgYW5cbmV4cHJlc3Npb24gaXMgdHJ1ZTpcblxuICAgd2hpbGVfc3RtdCA6Oj0gIndoaWxlIiBleHByZXNzaW9uICI6IiBzdWl0ZVxuICAgICAgICAgICAgICAgICAgWyJlbHNlIiAiOiIgc3VpdGVdXG5cblRoaXMgcmVwZWF0ZWRseSB0ZXN0cyB0aGUgZXhwcmVzc2lvbiBhbmQsIGlmIGl0IGlzIHRydWUsIGV4ZWN1dGVzIHRoZVxuZmlyc3Qgc3VpdGU7IGlmIHRoZSBleHByZXNzaW9uIGlzIGZhbHNlICh3aGljaCBtYXkgYmUgdGhlIGZpcnN0IHRpbWVcbml0IGlzIHRlc3RlZCkgdGhlIHN1aXRlIG9mIHRoZSBgYGVsc2VgYCBjbGF1c2UsIGlmIHByZXNlbnQsIGlzXG5leGVjdXRlZCBhbmQgdGhlIGxvb3AgdGVybWluYXRlcy5cblxuQSBgYGJyZWFrYGAgc3RhdGVtZW50IGV4ZWN1dGVkIGluIHRoZSBmaXJzdCBzdWl0ZSB0ZXJtaW5hdGVzIHRoZSBsb29wXG53aXRob3V0IGV4ZWN1dGluZyB0aGUgYGBlbHNlYGAgY2xhdXNlXCdzIHN1aXRlLiAgQSBgYGNvbnRpbnVlYGBcbnN0YXRlbWVudCBleGVjdXRlZCBpbiB0aGUgZmlyc3Qgc3VpdGUgc2tpcHMgdGhlIHJlc3Qgb2YgdGhlIHN1aXRlIGFuZFxuZ29lcyBiYWNrIHRvIHRlc3RpbmcgdGhlIGV4cHJlc3Npb24uXG4nLAogICd3aXRoJzogJ1xuVGhlIGBgd2l0aGBgIHN0YXRlbWVudFxuKioqKioqKioqKioqKioqKioqKioqKlxuXG5UaGUgYGB3aXRoYGAgc3RhdGVtZW50IGlzIHVzZWQgdG8gd3JhcCB0aGUgZXhlY3V0aW9uIG9mIGEgYmxvY2sgd2l0aFxubWV0aG9kcyBkZWZpbmVkIGJ5IGEgY29udGV4dCBtYW5hZ2VyIChzZWUgc2VjdGlvbiAqV2l0aCBTdGF0ZW1lbnRcbkNvbnRleHQgTWFuYWdlcnMqKS4gVGhpcyBhbGxvd3MgY29tbW9uXG5gYHRyeWBgLi4uYGBleGNlcHRgYC4uLmBgZmluYWxseWBgIHVzYWdlIHBhdHRlcm5zIHRvIGJlIGVuY2Fwc3VsYXRlZFxuZm9yIGNvbnZlbmllbnQgcmV1c2UuXG5cbiAgIHdpdGhfc3RtdCA6Oj0gIndpdGgiIHdpdGhfaXRlbSAoIiwiIHdpdGhfaXRlbSkqICI6IiBzdWl0ZVxuICAgd2l0aF9pdGVtIDo6PSBleHByZXNzaW9uIFsiYXMiIHRhcmdldF1cblxuVGhlIGV4ZWN1dGlvbiBvZiB0aGUgYGB3aXRoYGAgc3RhdGVtZW50IHdpdGggb25lICJpdGVtIiBwcm9jZWVkcyBhc1xuZm9sbG93czpcblxuMS4gVGhlIGNvbnRleHQgZXhwcmVzc2lvbiAodGhlIGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhlIGBgd2l0aF9pdGVtYGApXG4gICBpcyBldmFsdWF0ZWQgdG8gb2J0YWluIGEgY29udGV4dCBtYW5hZ2VyLlxuXG4yLiBUaGUgY29udGV4dCBtYW5hZ2VyXCdzIGBgX19leGl0X18oKWBgIGlzIGxvYWRlZCBmb3IgbGF0ZXIgdXNlLlxuXG4zLiBUaGUgY29udGV4dCBtYW5hZ2VyXCdzIGBgX19lbnRlcl9fKClgYCBtZXRob2QgaXMgaW52b2tlZC5cblxuNC4gSWYgYSB0YXJnZXQgd2FzIGluY2x1ZGVkIGluIHRoZSBgYHdpdGhgYCBzdGF0ZW1lbnQsIHRoZSByZXR1cm5cbiAgIHZhbHVlIGZyb20gYGBfX2VudGVyX18oKWBgIGlzIGFzc2lnbmVkIHRvIGl0LlxuXG4gICBOb3RlOiBUaGUgYGB3aXRoYGAgc3RhdGVtZW50IGd1YXJhbnRlZXMgdGhhdCBpZiB0aGUgYGBfX2VudGVyX18oKWBgXG4gICAgIG1ldGhvZCByZXR1cm5zIHdpdGhvdXQgYW4gZXJyb3IsIHRoZW4gYGBfX2V4aXRfXygpYGAgd2lsbCBhbHdheXNcbiAgICAgYmUgY2FsbGVkLiBUaHVzLCBpZiBhbiBlcnJvciBvY2N1cnMgZHVyaW5nIHRoZSBhc3NpZ25tZW50IHRvIHRoZVxuICAgICB0YXJnZXQgbGlzdCwgaXQgd2lsbCBiZSB0cmVhdGVkIHRoZSBzYW1lIGFzIGFuIGVycm9yIG9jY3VycmluZ1xuICAgICB3aXRoaW4gdGhlIHN1aXRlIHdvdWxkIGJlLiBTZWUgc3RlcCA2IGJlbG93LlxuXG41LiBUaGUgc3VpdGUgaXMgZXhlY3V0ZWQuXG5cbjYuIFRoZSBjb250ZXh0IG1hbmFnZXJcJ3MgYGBfX2V4aXRfXygpYGAgbWV0aG9kIGlzIGludm9rZWQuICBJZiBhblxuICAgZXhjZXB0aW9uIGNhdXNlZCB0aGUgc3VpdGUgdG8gYmUgZXhpdGVkLCBpdHMgdHlwZSwgdmFsdWUsIGFuZFxuICAgdHJhY2ViYWNrIGFyZSBwYXNzZWQgYXMgYXJndW1lbnRzIHRvIGBgX19leGl0X18oKWBgLiBPdGhlcndpc2UsXG4gICB0aHJlZSBgYE5vbmVgYCBhcmd1bWVudHMgYXJlIHN1cHBsaWVkLlxuXG4gICBJZiB0aGUgc3VpdGUgd2FzIGV4aXRlZCBkdWUgdG8gYW4gZXhjZXB0aW9uLCBhbmQgdGhlIHJldHVybiB2YWx1ZVxuICAgZnJvbSB0aGUgYGBfX2V4aXRfXygpYGAgbWV0aG9kIHdhcyBmYWxzZSwgdGhlIGV4Y2VwdGlvbiBpc1xuICAgcmVyYWlzZWQuICBJZiB0aGUgcmV0dXJuIHZhbHVlIHdhcyB0cnVlLCB0aGUgZXhjZXB0aW9uIGlzXG4gICBzdXBwcmVzc2VkLCBhbmQgZXhlY3V0aW9uIGNvbnRpbnVlcyB3aXRoIHRoZSBzdGF0ZW1lbnQgZm9sbG93aW5nXG4gICB0aGUgYGB3aXRoYGAgc3RhdGVtZW50LlxuXG4gICBJZiB0aGUgc3VpdGUgd2FzIGV4aXRlZCBmb3IgYW55IHJlYXNvbiBvdGhlciB0aGFuIGFuIGV4Y2VwdGlvbiwgdGhlXG4gICByZXR1cm4gdmFsdWUgZnJvbSBgYF9fZXhpdF9fKClgYCBpcyBpZ25vcmVkLCBhbmQgZXhlY3V0aW9uIHByb2NlZWRzXG4gICBhdCB0aGUgbm9ybWFsIGxvY2F0aW9uIGZvciB0aGUga2luZCBvZiBleGl0IHRoYXQgd2FzIHRha2VuLlxuXG5XaXRoIG1vcmUgdGhhbiBvbmUgaXRlbSwgdGhlIGNvbnRleHQgbWFuYWdlcnMgYXJlIHByb2Nlc3NlZCBhcyBpZlxubXVsdGlwbGUgYGB3aXRoYGAgc3RhdGVtZW50cyB3ZXJlIG5lc3RlZDpcblxuICAgd2l0aCBBKCkgYXMgYSwgQigpIGFzIGI6XG4gICAgICAgc3VpdGVcblxuaXMgZXF1aXZhbGVudCB0b1xuXG4gICB3aXRoIEEoKSBhcyBhOlxuICAgICAgIHdpdGggQigpIGFzIGI6XG4gICAgICAgICAgIHN1aXRlXG5cbkNoYW5nZWQgaW4gdmVyc2lvbiAzLjE6IFN1cHBvcnQgZm9yIG11bHRpcGxlIGNvbnRleHQgZXhwcmVzc2lvbnMuXG5cblNlZSBhbHNvOlxuXG4gICAqKlBFUCAwMzQzKiogLSBUaGUgIndpdGgiIHN0YXRlbWVudFxuICAgICAgVGhlIHNwZWNpZmljYXRpb24sIGJhY2tncm91bmQsIGFuZCBleGFtcGxlcyBmb3IgdGhlIFB5dGhvblxuICAgICAgYGB3aXRoYGAgc3RhdGVtZW50LlxuJywKLSAneWllbGQnOiAnXG5UaGUgYGB5aWVsZGBgIHN0YXRlbWVudFxuKioqKioqKioqKioqKioqKioqKioqKipcblxuICAgeWllbGRfc3RtdCA6Oj0geWllbGRfZXhwcmVzc2lvblxuXG5UaGUgYGB5aWVsZGBgIHN0YXRlbWVudCBpcyBvbmx5IHVzZWQgd2hlbiBkZWZpbmluZyBhIGdlbmVyYXRvclxuZnVuY3Rpb24sIGFuZCBpcyBvbmx5IHVzZWQgaW4gdGhlIGJvZHkgb2YgdGhlIGdlbmVyYXRvciBmdW5jdGlvbi5cblVzaW5nIGEgYGB5aWVsZGBgIHN0YXRlbWVudCBpbiBhIGZ1bmN0aW9uIGRlZmluaXRpb24gaXMgc3VmZmljaWVudCB0b1xuY2F1c2UgdGhhdCBkZWZpbml0aW9uIHRvIGNyZWF0ZSBhIGdlbmVyYXRvciBmdW5jdGlvbiBpbnN0ZWFkIG9mIGFcbm5vcm1hbCBmdW5jdGlvbi4gV2hlbiBhIGdlbmVyYXRvciBmdW5jdGlvbiBpcyBjYWxsZWQsIGl0IHJldHVybnMgYW5cbml0ZXJhdG9yIGtub3duIGFzIGEgZ2VuZXJhdG9yIGl0ZXJhdG9yLCBvciBtb3JlIGNvbW1vbmx5LCBhIGdlbmVyYXRvci5cblRoZSBib2R5IG9mIHRoZSBnZW5lcmF0b3IgZnVuY3Rpb24gaXMgZXhlY3V0ZWQgYnkgY2FsbGluZyB0aGVcbmBgbmV4dCgpYGAgZnVuY3Rpb24gb24gdGhlIGdlbmVyYXRvciByZXBlYXRlZGx5IHVudGlsIGl0IHJhaXNlcyBhblxuZXhjZXB0aW9uLlxuXG5XaGVuIGEgYGB5aWVsZGBgIHN0YXRlbWVudCBpcyBleGVjdXRlZCwgdGhlIHN0YXRlIG9mIHRoZSBnZW5lcmF0b3IgaXNcbmZyb3plbiBhbmQgdGhlIHZhbHVlIG9mIGBgZXhwcmVzc2lvbl9saXN0YGAgaXMgcmV0dXJuZWQgdG9cbmBgbmV4dCgpYGBcJ3MgY2FsbGVyLiAgQnkgImZyb3plbiIgd2UgbWVhbiB0aGF0IGFsbCBsb2NhbCBzdGF0ZSBpc1xucmV0YWluZWQsIGluY2x1ZGluZyB0aGUgY3VycmVudCBiaW5kaW5ncyBvZiBsb2NhbCB2YXJpYWJsZXMsIHRoZVxuaW5zdHJ1Y3Rpb24gcG9pbnRlciwgYW5kIHRoZSBpbnRlcm5hbCBldmFsdWF0aW9uIHN0YWNrOiBlbm91Z2hcbmluZm9ybWF0aW9uIGlzIHNhdmVkIHNvIHRoYXQgdGhlIG5leHQgdGltZSBgYG5leHQoKWBgIGlzIGludm9rZWQsIHRoZVxuZnVuY3Rpb24gY2FuIHByb2NlZWQgZXhhY3RseSBhcyBpZiB0aGUgYGB5aWVsZGBgIHN0YXRlbWVudCB3ZXJlIGp1c3RcbmFub3RoZXIgZXh0ZXJuYWwgY2FsbC5cblxuVGhlIGBgeWllbGRgYCBzdGF0ZW1lbnQgaXMgYWxsb3dlZCBpbiB0aGUgYGB0cnlgYCBjbGF1c2Ugb2YgYSBgYHRyeWBgXG4uLi4gIGBgZmluYWxseWBgIGNvbnN0cnVjdC4gIElmIHRoZSBnZW5lcmF0b3IgaXMgbm90IHJlc3VtZWQgYmVmb3JlIGl0XG5pcyBmaW5hbGl6ZWQgKGJ5IHJlYWNoaW5nIGEgemVybyByZWZlcmVuY2UgY291bnQgb3IgYnkgYmVpbmcgZ2FyYmFnZVxuY29sbGVjdGVkKSwgdGhlIGdlbmVyYXRvci1pdGVyYXRvclwncyBgYGNsb3NlKClgYCBtZXRob2Qgd2lsbCBiZVxuY2FsbGVkLCBhbGxvd2luZyBhbnkgcGVuZGluZyBgYGZpbmFsbHlgYCBjbGF1c2VzIHRvIGV4ZWN1dGUuXG5cblNlZSBhbHNvOlxuXG4gICAqKlBFUCAwMjU1KiogLSBTaW1wbGUgR2VuZXJhdG9yc1xuICAgICAgVGhlIHByb3Bvc2FsIGZvciBhZGRpbmcgZ2VuZXJhdG9ycyBhbmQgdGhlIGBgeWllbGRgYCBzdGF0ZW1lbnRcbiAgICAgIHRvIFB5dGhvbi5cblxuICAgKipQRVAgMDM0MioqIC0gQ29yb3V0aW5lcyB2aWEgRW5oYW5jZWQgR2VuZXJhdG9yc1xuICAgICAgVGhlIHByb3Bvc2FsIHRoYXQsIGFtb25nIG90aGVyIGdlbmVyYXRvciBlbmhhbmNlbWVudHMsIHByb3Bvc2VkXG4gICAgICBhbGxvd2luZyBgYHlpZWxkYGAgdG8gYXBwZWFyIGluc2lkZSBhIGBgdHJ5YGAgLi4uIGBgZmluYWxseWBgXG4gICAgICBibG9jay5cbid9CisgJ3lpZWxkJzogJ1xuVGhlIGBgeWllbGRgYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqXG5cbiAgIHlpZWxkX3N0bXQgOjo9IHlpZWxkX2V4cHJlc3Npb25cblxuVGhlIGBgeWllbGRgYCBzdGF0ZW1lbnQgaXMgb25seSB1c2VkIHdoZW4gZGVmaW5pbmcgYSBnZW5lcmF0b3JcbmZ1bmN0aW9uLCBhbmQgaXMgb25seSB1c2VkIGluIHRoZSBib2R5IG9mIHRoZSBnZW5lcmF0b3IgZnVuY3Rpb24uXG5Vc2luZyBhIGBgeWllbGRgYCBzdGF0ZW1lbnQgaW4gYSBmdW5jdGlvbiBkZWZpbml0aW9uIGlzIHN1ZmZpY2llbnQgdG9cbmNhdXNlIHRoYXQgZGVmaW5pdGlvbiB0byBjcmVhdGUgYSBnZW5lcmF0b3IgZnVuY3Rpb24gaW5zdGVhZCBvZiBhXG5ub3JtYWwgZnVuY3Rpb24uXG5cbldoZW4gYSBnZW5lcmF0b3IgZnVuY3Rpb24gaXMgY2FsbGVkLCBpdCByZXR1cm5zIGFuIGl0ZXJhdG9yIGtub3duIGFzIGFcbmdlbmVyYXRvciBpdGVyYXRvciwgb3IgbW9yZSBjb21tb25seSwgYSBnZW5lcmF0b3IuICBUaGUgYm9keSBvZiB0aGVcbmdlbmVyYXRvciBmdW5jdGlvbiBpcyBleGVjdXRlZCBieSBjYWxsaW5nIHRoZSBgYG5leHQoKWBgIGZ1bmN0aW9uIG9uXG50aGUgZ2VuZXJhdG9yIHJlcGVhdGVkbHkgdW50aWwgaXQgcmFpc2VzIGFuIGV4Y2VwdGlvbi5cblxuV2hlbiBhIGBgeWllbGRgYCBzdGF0ZW1lbnQgaXMgZXhlY3V0ZWQsIHRoZSBzdGF0ZSBvZiB0aGUgZ2VuZXJhdG9yIGlzXG5mcm96ZW4gYW5kIHRoZSB2YWx1ZSBvZiBgYGV4cHJlc3Npb25fbGlzdGBgIGlzIHJldHVybmVkIHRvXG5gYG5leHQoKWBgXCdzIGNhbGxlci4gIEJ5ICJmcm96ZW4iIHdlIG1lYW4gdGhhdCBhbGwgbG9jYWwgc3RhdGUgaXNcbnJldGFpbmVkLCBpbmNsdWRpbmcgdGhlIGN1cnJlbnQgYmluZGluZ3Mgb2YgbG9jYWwgdmFyaWFibGVzLCB0aGVcbmluc3RydWN0aW9uIHBvaW50ZXIsIGFuZCB0aGUgaW50ZXJuYWwgZXZhbHVhdGlvbiBzdGFjazogZW5vdWdoXG5pbmZvcm1hdGlvbiBpcyBzYXZlZCBzbyB0aGF0IHRoZSBuZXh0IHRpbWUgYGBuZXh0KClgYCBpcyBpbnZva2VkLCB0aGVcbmZ1bmN0aW9uIGNhbiBwcm9jZWVkIGV4YWN0bHkgYXMgaWYgdGhlIGBgeWllbGRgYCBzdGF0ZW1lbnQgd2VyZSBqdXN0XG5hbm90aGVyIGV4dGVybmFsIGNhbGwuXG5cblRoZSBgYHlpZWxkYGAgc3RhdGVtZW50IGlzIGFsbG93ZWQgaW4gdGhlIGBgdHJ5YGAgY2xhdXNlIG9mIGEgYGB0cnlgYFxuLi4uICBgYGZpbmFsbHlgYCBjb25zdHJ1Y3QuICBJZiB0aGUgZ2VuZXJhdG9yIGlzIG5vdCByZXN1bWVkIGJlZm9yZSBpdFxuaXMgZmluYWxpemVkIChieSByZWFjaGluZyBhIHplcm8gcmVmZXJlbmNlIGNvdW50IG9yIGJ5IGJlaW5nIGdhcmJhZ2VcbmNvbGxlY3RlZCksIHRoZSBnZW5lcmF0b3ItaXRlcmF0b3JcJ3MgYGBjbG9zZSgpYGAgbWV0aG9kIHdpbGwgYmVcbmNhbGxlZCwgYWxsb3dpbmcgYW55IHBlbmRpbmcgYGBmaW5hbGx5YGAgY2xhdXNlcyB0byBleGVjdXRlLlxuXG5XaGVuIGBgeWllbGQgZnJvbSA8ZXhwcj5gYCBpcyB1c2VkLCBpdCB0cmVhdHMgdGhlIHN1cHBsaWVkIGV4cHJlc3Npb25cbmFzIGEgc3ViaXRlcmF0b3IsIHByb2R1Y2luZyB2YWx1ZXMgZnJvbSBpdCB1bnRpbCB0aGUgdW5kZXJseWluZ1xuaXRlcmF0b3IgaXMgZXhoYXVzdGVkLlxuXG4gICBDaGFuZ2VkIGluIHZlcnNpb24gMy4zOiBBZGRlZCBgYHlpZWxkIGZyb20gPGV4cHI+YGAgdG8gZGVsZWdhdGVcbiAgIGNvbnRyb2wgZmxvdyB0byBhIHN1Yml0ZXJhdG9yXG5cbkZvciBmdWxsIGRldGFpbHMgb2YgYGB5aWVsZGBgIHNlbWFudGljcywgcmVmZXIgdG8gdGhlICpZaWVsZFxuZXhwcmVzc2lvbnMqIHNlY3Rpb24uXG5cblNlZSBhbHNvOlxuXG4gICAqKlBFUCAwMjU1KiogLSBTaW1wbGUgR2VuZXJhdG9yc1xuICAgICAgVGhlIHByb3Bvc2FsIGZvciBhZGRpbmcgZ2VuZXJhdG9ycyBhbmQgdGhlIGBgeWllbGRgYCBzdGF0ZW1lbnRcbiAgICAgIHRvIFB5dGhvbi5cblxuICAgKipQRVAgMDM0MioqIC0gQ29yb3V0aW5lcyB2aWEgRW5oYW5jZWQgR2VuZXJhdG9yc1xuICAgICAgVGhlIHByb3Bvc2FsIHRvIGVuaGFuY2UgdGhlIEFQSSBhbmQgc3ludGF4IG9mIGdlbmVyYXRvcnMsIG1ha2luZ1xuICAgICAgdGhlbSB1c2FibGUgYXMgc2ltcGxlIGNvcm91dGluZXMuXG5cbiAgICoqUEVQIDAzODAqKiAtIFN5bnRheCBmb3IgRGVsZWdhdGluZyB0byBhIFN1YmdlbmVyYXRvclxuICAgICAgVGhlIHByb3Bvc2FsIHRvIGludHJvZHVjZSB0aGUgYGB5aWVsZF9mcm9tYGAgc3ludGF4LCBtYWtpbmdcbiAgICAgIGRlbGVnYXRpb24gdG8gc3ViLWdlbmVyYXRvcnMgZWFzeS5cbid9CmRpZmYgLS1naXQgYS9MaWIvcXVldWUucHkgYi9MaWIvcXVldWUucHkKaW5kZXggYmVlN2VkNC4uYmE2MDhjNSAxMDA2NDQKLS0tIGEvTGliL3F1ZXVlLnB5CisrKyBiL0xpYi9xdWV1ZS5weQpAQCAtMSw0OSArMSw1NCBAQAotIiIiQSBtdWx0aS1wcm9kdWNlciwgbXVsdGktY29uc3VtZXIgcXVldWUuIiIiCisnJydBIG11bHRpLXByb2R1Y2VyLCBtdWx0aS1jb25zdW1lciBxdWV1ZS4nJycKIAotZnJvbSB0aW1lIGltcG9ydCB0aW1lIGFzIF90aW1lCiB0cnk6Ci0gICAgaW1wb3J0IHRocmVhZGluZyBhcyBfdGhyZWFkaW5nCisgICAgaW1wb3J0IHRocmVhZGluZwogZXhjZXB0IEltcG9ydEVycm9yOgotICAgIGltcG9ydCBkdW1teV90aHJlYWRpbmcgYXMgX3RocmVhZGluZworICAgIGltcG9ydCBkdW1teV90aHJlYWRpbmcgYXMgdGhyZWFkaW5nCiBmcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBkZXF1ZQotaW1wb3J0IGhlYXBxCitmcm9tIGhlYXBxIGltcG9ydCBoZWFwcHVzaCwgaGVhcHBvcAorZnJvbSB0aW1lIGltcG9ydCB0aW1lCiAKIF9fYWxsX18gPSBbJ0VtcHR5JywgJ0Z1bGwnLCAnUXVldWUnLCAnUHJpb3JpdHlRdWV1ZScsICdMaWZvUXVldWUnXQogCiBjbGFzcyBFbXB0eShFeGNlcHRpb24pOgotICAgICJFeGNlcHRpb24gcmFpc2VkIGJ5IFF1ZXVlLmdldChibG9jaz0wKS9nZXRfbm93YWl0KCkuIgorICAgICdFeGNlcHRpb24gcmFpc2VkIGJ5IFF1ZXVlLmdldChibG9jaz0wKS9nZXRfbm93YWl0KCkuJwogICAgIHBhc3MKIAogY2xhc3MgRnVsbChFeGNlcHRpb24pOgotICAgICJFeGNlcHRpb24gcmFpc2VkIGJ5IFF1ZXVlLnB1dChibG9jaz0wKS9wdXRfbm93YWl0KCkuIgorICAgICdFeGNlcHRpb24gcmFpc2VkIGJ5IFF1ZXVlLnB1dChibG9jaz0wKS9wdXRfbm93YWl0KCkuJwogICAgIHBhc3MKIAogY2xhc3MgUXVldWU6Ci0gICAgIiIiQ3JlYXRlIGEgcXVldWUgb2JqZWN0IHdpdGggYSBnaXZlbiBtYXhpbXVtIHNpemUuCisgICAgJycnQ3JlYXRlIGEgcXVldWUgb2JqZWN0IHdpdGggYSBnaXZlbiBtYXhpbXVtIHNpemUuCiAKICAgICBJZiBtYXhzaXplIGlzIDw9IDAsIHRoZSBxdWV1ZSBzaXplIGlzIGluZmluaXRlLgotICAgICIiIgorICAgICcnJworCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIG1heHNpemU9MCk6CiAgICAgICAgIHNlbGYubWF4c2l6ZSA9IG1heHNpemUKICAgICAgICAgc2VsZi5faW5pdChtYXhzaXplKQorCiAgICAgICAgICMgbXV0ZXggbXVzdCBiZSBoZWxkIHdoZW5ldmVyIHRoZSBxdWV1ZSBpcyBtdXRhdGluZy4gIEFsbCBtZXRob2RzCiAgICAgICAgICMgdGhhdCBhY3F1aXJlIG11dGV4IG11c3QgcmVsZWFzZSBpdCBiZWZvcmUgcmV0dXJuaW5nLiAgbXV0ZXgKICAgICAgICAgIyBpcyBzaGFyZWQgYmV0d2VlbiB0aGUgdGhyZWUgY29uZGl0aW9ucywgc28gYWNxdWlyaW5nIGFuZAogICAgICAgICAjIHJlbGVhc2luZyB0aGUgY29uZGl0aW9ucyBhbHNvIGFjcXVpcmVzIGFuZCByZWxlYXNlcyBtdXRleC4KLSAgICAgICAgc2VsZi5tdXRleCA9IF90aHJlYWRpbmcuTG9jaygpCisgICAgICAgIHNlbGYubXV0ZXggPSB0aHJlYWRpbmcuTG9jaygpCisKICAgICAgICAgIyBOb3RpZnkgbm90X2VtcHR5IHdoZW5ldmVyIGFuIGl0ZW0gaXMgYWRkZWQgdG8gdGhlIHF1ZXVlOyBhCiAgICAgICAgICMgdGhyZWFkIHdhaXRpbmcgdG8gZ2V0IGlzIG5vdGlmaWVkIHRoZW4uCi0gICAgICAgIHNlbGYubm90X2VtcHR5ID0gX3RocmVhZGluZy5Db25kaXRpb24oc2VsZi5tdXRleCkKKyAgICAgICAgc2VsZi5ub3RfZW1wdHkgPSB0aHJlYWRpbmcuQ29uZGl0aW9uKHNlbGYubXV0ZXgpCisKICAgICAgICAgIyBOb3RpZnkgbm90X2Z1bGwgd2hlbmV2ZXIgYW4gaXRlbSBpcyByZW1vdmVkIGZyb20gdGhlIHF1ZXVlOwogICAgICAgICAjIGEgdGhyZWFkIHdhaXRpbmcgdG8gcHV0IGlzIG5vdGlmaWVkIHRoZW4uCi0gICAgICAgIHNlbGYubm90X2Z1bGwgPSBfdGhyZWFkaW5nLkNvbmRpdGlvbihzZWxmLm11dGV4KQorICAgICAgICBzZWxmLm5vdF9mdWxsID0gdGhyZWFkaW5nLkNvbmRpdGlvbihzZWxmLm11dGV4KQorCiAgICAgICAgICMgTm90aWZ5IGFsbF90YXNrc19kb25lIHdoZW5ldmVyIHRoZSBudW1iZXIgb2YgdW5maW5pc2hlZCB0YXNrcwogICAgICAgICAjIGRyb3BzIHRvIHplcm87IHRocmVhZCB3YWl0aW5nIHRvIGpvaW4oKSBpcyBub3RpZmllZCB0byByZXN1bWUKLSAgICAgICAgc2VsZi5hbGxfdGFza3NfZG9uZSA9IF90aHJlYWRpbmcuQ29uZGl0aW9uKHNlbGYubXV0ZXgpCisgICAgICAgIHNlbGYuYWxsX3Rhc2tzX2RvbmUgPSB0aHJlYWRpbmcuQ29uZGl0aW9uKHNlbGYubXV0ZXgpCiAgICAgICAgIHNlbGYudW5maW5pc2hlZF90YXNrcyA9IDAKIAogICAgIGRlZiB0YXNrX2RvbmUoc2VsZik6Ci0gICAgICAgICIiIkluZGljYXRlIHRoYXQgYSBmb3JtZXJseSBlbnF1ZXVlZCB0YXNrIGlzIGNvbXBsZXRlLgorICAgICAgICAnJydJbmRpY2F0ZSB0aGF0IGEgZm9ybWVybHkgZW5xdWV1ZWQgdGFzayBpcyBjb21wbGV0ZS4KIAogICAgICAgICBVc2VkIGJ5IFF1ZXVlIGNvbnN1bWVyIHRocmVhZHMuICBGb3IgZWFjaCBnZXQoKSB1c2VkIHRvIGZldGNoIGEgdGFzaywKICAgICAgICAgYSBzdWJzZXF1ZW50IGNhbGwgdG8gdGFza19kb25lKCkgdGVsbHMgdGhlIHF1ZXVlIHRoYXQgdGhlIHByb2Nlc3NpbmcKQEAgLTU1LDQzICs2MCwzNSBAQAogCiAgICAgICAgIFJhaXNlcyBhIFZhbHVlRXJyb3IgaWYgY2FsbGVkIG1vcmUgdGltZXMgdGhhbiB0aGVyZSB3ZXJlIGl0ZW1zCiAgICAgICAgIHBsYWNlZCBpbiB0aGUgcXVldWUuCi0gICAgICAgICIiIgotICAgICAgICBzZWxmLmFsbF90YXNrc19kb25lLmFjcXVpcmUoKQotICAgICAgICB0cnk6CisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYuYWxsX3Rhc2tzX2RvbmU6CiAgICAgICAgICAgICB1bmZpbmlzaGVkID0gc2VsZi51bmZpbmlzaGVkX3Rhc2tzIC0gMQogICAgICAgICAgICAgaWYgdW5maW5pc2hlZCA8PSAwOgogICAgICAgICAgICAgICAgIGlmIHVuZmluaXNoZWQgPCAwOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCd0YXNrX2RvbmUoKSBjYWxsZWQgdG9vIG1hbnkgdGltZXMnKQogICAgICAgICAgICAgICAgIHNlbGYuYWxsX3Rhc2tzX2RvbmUubm90aWZ5X2FsbCgpCiAgICAgICAgICAgICBzZWxmLnVuZmluaXNoZWRfdGFza3MgPSB1bmZpbmlzaGVkCi0gICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICBzZWxmLmFsbF90YXNrc19kb25lLnJlbGVhc2UoKQogCiAgICAgZGVmIGpvaW4oc2VsZik6Ci0gICAgICAgICIiIkJsb2NrcyB1bnRpbCBhbGwgaXRlbXMgaW4gdGhlIFF1ZXVlIGhhdmUgYmVlbiBnb3R0ZW4gYW5kIHByb2Nlc3NlZC4KKyAgICAgICAgJycnQmxvY2tzIHVudGlsIGFsbCBpdGVtcyBpbiB0aGUgUXVldWUgaGF2ZSBiZWVuIGdvdHRlbiBhbmQgcHJvY2Vzc2VkLgogCiAgICAgICAgIFRoZSBjb3VudCBvZiB1bmZpbmlzaGVkIHRhc2tzIGdvZXMgdXAgd2hlbmV2ZXIgYW4gaXRlbSBpcyBhZGRlZCB0byB0aGUKICAgICAgICAgcXVldWUuIFRoZSBjb3VudCBnb2VzIGRvd24gd2hlbmV2ZXIgYSBjb25zdW1lciB0aHJlYWQgY2FsbHMgdGFza19kb25lKCkKICAgICAgICAgdG8gaW5kaWNhdGUgdGhlIGl0ZW0gd2FzIHJldHJpZXZlZCBhbmQgYWxsIHdvcmsgb24gaXQgaXMgY29tcGxldGUuCiAKICAgICAgICAgV2hlbiB0aGUgY291bnQgb2YgdW5maW5pc2hlZCB0YXNrcyBkcm9wcyB0byB6ZXJvLCBqb2luKCkgdW5ibG9ja3MuCi0gICAgICAgICIiIgotICAgICAgICBzZWxmLmFsbF90YXNrc19kb25lLmFjcXVpcmUoKQotICAgICAgICB0cnk6CisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYuYWxsX3Rhc2tzX2RvbmU6CiAgICAgICAgICAgICB3aGlsZSBzZWxmLnVuZmluaXNoZWRfdGFza3M6CiAgICAgICAgICAgICAgICAgc2VsZi5hbGxfdGFza3NfZG9uZS53YWl0KCkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHNlbGYuYWxsX3Rhc2tzX2RvbmUucmVsZWFzZSgpCiAKICAgICBkZWYgcXNpemUoc2VsZik6Ci0gICAgICAgICIiIlJldHVybiB0aGUgYXBwcm94aW1hdGUgc2l6ZSBvZiB0aGUgcXVldWUgKG5vdCByZWxpYWJsZSEpLiIiIgotICAgICAgICBzZWxmLm11dGV4LmFjcXVpcmUoKQotICAgICAgICBuID0gc2VsZi5fcXNpemUoKQotICAgICAgICBzZWxmLm11dGV4LnJlbGVhc2UoKQotICAgICAgICByZXR1cm4gbgorICAgICAgICAnJydSZXR1cm4gdGhlIGFwcHJveGltYXRlIHNpemUgb2YgdGhlIHF1ZXVlIChub3QgcmVsaWFibGUhKS4nJycKKyAgICAgICAgd2l0aCBzZWxmLm11dGV4OgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3FzaXplKCkKIAogICAgIGRlZiBlbXB0eShzZWxmKToKLSAgICAgICAgIiIiUmV0dXJuIFRydWUgaWYgdGhlIHF1ZXVlIGlzIGVtcHR5LCBGYWxzZSBvdGhlcndpc2UgKG5vdCByZWxpYWJsZSEpLgorICAgICAgICAnJydSZXR1cm4gVHJ1ZSBpZiB0aGUgcXVldWUgaXMgZW1wdHksIEZhbHNlIG90aGVyd2lzZSAobm90IHJlbGlhYmxlISkuCiAKICAgICAgICAgVGhpcyBtZXRob2QgaXMgbGlrZWx5IHRvIGJlIHJlbW92ZWQgYXQgc29tZSBwb2ludC4gIFVzZSBxc2l6ZSgpID09IDAKICAgICAgICAgYXMgYSBkaXJlY3Qgc3Vic3RpdHV0ZSwgYnV0IGJlIGF3YXJlIHRoYXQgZWl0aGVyIGFwcHJvYWNoIHJpc2tzIGEgcmFjZQpAQCAtMTAwLDI5ICs5NywyMyBAQAogCiAgICAgICAgIFRvIGNyZWF0ZSBjb2RlIHRoYXQgbmVlZHMgdG8gd2FpdCBmb3IgYWxsIHF1ZXVlZCB0YXNrcyB0byBiZQogICAgICAgICBjb21wbGV0ZWQsIHRoZSBwcmVmZXJyZWQgdGVjaG5pcXVlIGlzIHRvIHVzZSB0aGUgam9pbigpIG1ldGhvZC4KLQotICAgICAgICAiIiIKLSAgICAgICAgc2VsZi5tdXRleC5hY3F1aXJlKCkKLSAgICAgICAgbiA9IG5vdCBzZWxmLl9xc2l6ZSgpCi0gICAgICAgIHNlbGYubXV0ZXgucmVsZWFzZSgpCi0gICAgICAgIHJldHVybiBuCisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYubXV0ZXg6CisgICAgICAgICAgICByZXR1cm4gbm90IHNlbGYuX3FzaXplKCkKIAogICAgIGRlZiBmdWxsKHNlbGYpOgotICAgICAgICAiIiJSZXR1cm4gVHJ1ZSBpZiB0aGUgcXVldWUgaXMgZnVsbCwgRmFsc2Ugb3RoZXJ3aXNlIChub3QgcmVsaWFibGUhKS4KKyAgICAgICAgJycnUmV0dXJuIFRydWUgaWYgdGhlIHF1ZXVlIGlzIGZ1bGwsIEZhbHNlIG90aGVyd2lzZSAobm90IHJlbGlhYmxlISkuCiAKICAgICAgICAgVGhpcyBtZXRob2QgaXMgbGlrZWx5IHRvIGJlIHJlbW92ZWQgYXQgc29tZSBwb2ludC4gIFVzZSBxc2l6ZSgpID49IG4KICAgICAgICAgYXMgYSBkaXJlY3Qgc3Vic3RpdHV0ZSwgYnV0IGJlIGF3YXJlIHRoYXQgZWl0aGVyIGFwcHJvYWNoIHJpc2tzIGEgcmFjZQogICAgICAgICBjb25kaXRpb24gd2hlcmUgYSBxdWV1ZSBjYW4gc2hyaW5rIGJlZm9yZSB0aGUgcmVzdWx0IG9mIGZ1bGwoKSBvcgogICAgICAgICBxc2l6ZSgpIGNhbiBiZSB1c2VkLgotCi0gICAgICAgICIiIgotICAgICAgICBzZWxmLm11dGV4LmFjcXVpcmUoKQotICAgICAgICBuID0gMCA8IHNlbGYubWF4c2l6ZSA8PSBzZWxmLl9xc2l6ZSgpCi0gICAgICAgIHNlbGYubXV0ZXgucmVsZWFzZSgpCi0gICAgICAgIHJldHVybiBuCisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYubXV0ZXg6CisgICAgICAgICAgICByZXR1cm4gMCA8IHNlbGYubWF4c2l6ZSA8PSBzZWxmLl9xc2l6ZSgpCiAKICAgICBkZWYgcHV0KHNlbGYsIGl0ZW0sIGJsb2NrPVRydWUsIHRpbWVvdXQ9Tm9uZSk6Ci0gICAgICAgICIiIlB1dCBhbiBpdGVtIGludG8gdGhlIHF1ZXVlLgorICAgICAgICAnJydQdXQgYW4gaXRlbSBpbnRvIHRoZSBxdWV1ZS4KIAogICAgICAgICBJZiBvcHRpb25hbCBhcmdzICdibG9jaycgaXMgdHJ1ZSBhbmQgJ3RpbWVvdXQnIGlzIE5vbmUgKHRoZSBkZWZhdWx0KSwKICAgICAgICAgYmxvY2sgaWYgbmVjZXNzYXJ5IHVudGlsIGEgZnJlZSBzbG90IGlzIGF2YWlsYWJsZS4gSWYgJ3RpbWVvdXQnIGlzCkBAIC0xMzEsOSArMTIyLDggQEAKICAgICAgICAgT3RoZXJ3aXNlICgnYmxvY2snIGlzIGZhbHNlKSwgcHV0IGFuIGl0ZW0gb24gdGhlIHF1ZXVlIGlmIGEgZnJlZSBzbG90CiAgICAgICAgIGlzIGltbWVkaWF0ZWx5IGF2YWlsYWJsZSwgZWxzZSByYWlzZSB0aGUgRnVsbCBleGNlcHRpb24gKCd0aW1lb3V0JwogICAgICAgICBpcyBpZ25vcmVkIGluIHRoYXQgY2FzZSkuCi0gICAgICAgICIiIgotICAgICAgICBzZWxmLm5vdF9mdWxsLmFjcXVpcmUoKQotICAgICAgICB0cnk6CisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYubm90X2Z1bGw6CiAgICAgICAgICAgICBpZiBzZWxmLm1heHNpemUgPiAwOgogICAgICAgICAgICAgICAgIGlmIG5vdCBibG9jazoKICAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5fcXNpemUoKSA+PSBzZWxmLm1heHNpemU6CkBAIC0xNDQsMjggKzEzNCwxOCBAQAogICAgICAgICAgICAgICAgIGVsaWYgdGltZW91dCA8IDA6CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIid0aW1lb3V0JyBtdXN0IGJlIGEgcG9zaXRpdmUgbnVtYmVyIikKICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBlbmR0aW1lID0gX3RpbWUoKSArIHRpbWVvdXQKKyAgICAgICAgICAgICAgICAgICAgZW5kdGltZSA9IHRpbWUoKSArIHRpbWVvdXQKICAgICAgICAgICAgICAgICAgICAgd2hpbGUgc2VsZi5fcXNpemUoKSA+PSBzZWxmLm1heHNpemU6Ci0gICAgICAgICAgICAgICAgICAgICAgICByZW1haW5pbmcgPSBlbmR0aW1lIC0gX3RpbWUoKQorICAgICAgICAgICAgICAgICAgICAgICAgcmVtYWluaW5nID0gZW5kdGltZSAtIHRpbWUoKQogICAgICAgICAgICAgICAgICAgICAgICAgaWYgcmVtYWluaW5nIDw9IDAuMDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBGdWxsCiAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLm5vdF9mdWxsLndhaXQocmVtYWluaW5nKQogICAgICAgICAgICAgc2VsZi5fcHV0KGl0ZW0pCiAgICAgICAgICAgICBzZWxmLnVuZmluaXNoZWRfdGFza3MgKz0gMQogICAgICAgICAgICAgc2VsZi5ub3RfZW1wdHkubm90aWZ5KCkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHNlbGYubm90X2Z1bGwucmVsZWFzZSgpCi0KLSAgICBkZWYgcHV0X25vd2FpdChzZWxmLCBpdGVtKToKLSAgICAgICAgIiIiUHV0IGFuIGl0ZW0gaW50byB0aGUgcXVldWUgd2l0aG91dCBibG9ja2luZy4KLQotICAgICAgICBPbmx5IGVucXVldWUgdGhlIGl0ZW0gaWYgYSBmcmVlIHNsb3QgaXMgaW1tZWRpYXRlbHkgYXZhaWxhYmxlLgotICAgICAgICBPdGhlcndpc2UgcmFpc2UgdGhlIEZ1bGwgZXhjZXB0aW9uLgotICAgICAgICAiIiIKLSAgICAgICAgcmV0dXJuIHNlbGYucHV0KGl0ZW0sIEZhbHNlKQogCiAgICAgZGVmIGdldChzZWxmLCBibG9jaz1UcnVlLCB0aW1lb3V0PU5vbmUpOgotICAgICAgICAiIiJSZW1vdmUgYW5kIHJldHVybiBhbiBpdGVtIGZyb20gdGhlIHF1ZXVlLgorICAgICAgICAnJydSZW1vdmUgYW5kIHJldHVybiBhbiBpdGVtIGZyb20gdGhlIHF1ZXVlLgogCiAgICAgICAgIElmIG9wdGlvbmFsIGFyZ3MgJ2Jsb2NrJyBpcyB0cnVlIGFuZCAndGltZW91dCcgaXMgTm9uZSAodGhlIGRlZmF1bHQpLAogICAgICAgICBibG9jayBpZiBuZWNlc3NhcnkgdW50aWwgYW4gaXRlbSBpcyBhdmFpbGFibGUuIElmICd0aW1lb3V0JyBpcwpAQCAtMTc0LDkgKzE1NCw4IEBACiAgICAgICAgIE90aGVyd2lzZSAoJ2Jsb2NrJyBpcyBmYWxzZSksIHJldHVybiBhbiBpdGVtIGlmIG9uZSBpcyBpbW1lZGlhdGVseQogICAgICAgICBhdmFpbGFibGUsIGVsc2UgcmFpc2UgdGhlIEVtcHR5IGV4Y2VwdGlvbiAoJ3RpbWVvdXQnIGlzIGlnbm9yZWQKICAgICAgICAgaW4gdGhhdCBjYXNlKS4KLSAgICAgICAgIiIiCi0gICAgICAgIHNlbGYubm90X2VtcHR5LmFjcXVpcmUoKQotICAgICAgICB0cnk6CisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYubm90X2VtcHR5OgogICAgICAgICAgICAgaWYgbm90IGJsb2NrOgogICAgICAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9xc2l6ZSgpOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBFbXB0eQpAQCAtMTg2LDI1ICsxNjUsMzEgQEAKICAgICAgICAgICAgIGVsaWYgdGltZW91dCA8IDA6CiAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiJ3RpbWVvdXQnIG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXIiKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBlbmR0aW1lID0gX3RpbWUoKSArIHRpbWVvdXQKKyAgICAgICAgICAgICAgICBlbmR0aW1lID0gdGltZSgpICsgdGltZW91dAogICAgICAgICAgICAgICAgIHdoaWxlIG5vdCBzZWxmLl9xc2l6ZSgpOgotICAgICAgICAgICAgICAgICAgICByZW1haW5pbmcgPSBlbmR0aW1lIC0gX3RpbWUoKQorICAgICAgICAgICAgICAgICAgICByZW1haW5pbmcgPSBlbmR0aW1lIC0gdGltZSgpCiAgICAgICAgICAgICAgICAgICAgIGlmIHJlbWFpbmluZyA8PSAwLjA6CiAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBFbXB0eQogICAgICAgICAgICAgICAgICAgICBzZWxmLm5vdF9lbXB0eS53YWl0KHJlbWFpbmluZykKICAgICAgICAgICAgIGl0ZW0gPSBzZWxmLl9nZXQoKQogICAgICAgICAgICAgc2VsZi5ub3RfZnVsbC5ub3RpZnkoKQogICAgICAgICAgICAgcmV0dXJuIGl0ZW0KLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHNlbGYubm90X2VtcHR5LnJlbGVhc2UoKQorCisgICAgZGVmIHB1dF9ub3dhaXQoc2VsZiwgaXRlbSk6CisgICAgICAgICcnJ1B1dCBhbiBpdGVtIGludG8gdGhlIHF1ZXVlIHdpdGhvdXQgYmxvY2tpbmcuCisKKyAgICAgICAgT25seSBlbnF1ZXVlIHRoZSBpdGVtIGlmIGEgZnJlZSBzbG90IGlzIGltbWVkaWF0ZWx5IGF2YWlsYWJsZS4KKyAgICAgICAgT3RoZXJ3aXNlIHJhaXNlIHRoZSBGdWxsIGV4Y2VwdGlvbi4KKyAgICAgICAgJycnCisgICAgICAgIHJldHVybiBzZWxmLnB1dChpdGVtLCBibG9jaz1GYWxzZSkKIAogICAgIGRlZiBnZXRfbm93YWl0KHNlbGYpOgotICAgICAgICAiIiJSZW1vdmUgYW5kIHJldHVybiBhbiBpdGVtIGZyb20gdGhlIHF1ZXVlIHdpdGhvdXQgYmxvY2tpbmcuCisgICAgICAgICcnJ1JlbW92ZSBhbmQgcmV0dXJuIGFuIGl0ZW0gZnJvbSB0aGUgcXVldWUgd2l0aG91dCBibG9ja2luZy4KIAogICAgICAgICBPbmx5IGdldCBhbiBpdGVtIGlmIG9uZSBpcyBpbW1lZGlhdGVseSBhdmFpbGFibGUuIE90aGVyd2lzZQogICAgICAgICByYWlzZSB0aGUgRW1wdHkgZXhjZXB0aW9uLgotICAgICAgICAiIiIKLSAgICAgICAgcmV0dXJuIHNlbGYuZ2V0KEZhbHNlKQorICAgICAgICAnJycKKyAgICAgICAgcmV0dXJuIHNlbGYuZ2V0KGJsb2NrPUZhbHNlKQogCiAgICAgIyBPdmVycmlkZSB0aGVzZSBtZXRob2RzIHRvIGltcGxlbWVudCBvdGhlciBxdWV1ZSBvcmdhbml6YXRpb25zCiAgICAgIyAoZS5nLiBzdGFjayBvciBwcmlvcml0eSBxdWV1ZSkuCkBAIC0yMTQsNyArMTk5LDcgQEAKICAgICBkZWYgX2luaXQoc2VsZiwgbWF4c2l6ZSk6CiAgICAgICAgIHNlbGYucXVldWUgPSBkZXF1ZSgpCiAKLSAgICBkZWYgX3FzaXplKHNlbGYsIGxlbj1sZW4pOgorICAgIGRlZiBfcXNpemUoc2VsZik6CiAgICAgICAgIHJldHVybiBsZW4oc2VsZi5xdWV1ZSkKIAogICAgICMgUHV0IGEgbmV3IGl0ZW0gaW4gdGhlIHF1ZXVlCkBAIC0yMzUsMTMgKzIyMCwxMyBAQAogICAgIGRlZiBfaW5pdChzZWxmLCBtYXhzaXplKToKICAgICAgICAgc2VsZi5xdWV1ZSA9IFtdCiAKLSAgICBkZWYgX3FzaXplKHNlbGYsIGxlbj1sZW4pOgorICAgIGRlZiBfcXNpemUoc2VsZik6CiAgICAgICAgIHJldHVybiBsZW4oc2VsZi5xdWV1ZSkKIAotICAgIGRlZiBfcHV0KHNlbGYsIGl0ZW0sIGhlYXBwdXNoPWhlYXBxLmhlYXBwdXNoKToKKyAgICBkZWYgX3B1dChzZWxmLCBpdGVtKToKICAgICAgICAgaGVhcHB1c2goc2VsZi5xdWV1ZSwgaXRlbSkKIAotICAgIGRlZiBfZ2V0KHNlbGYsIGhlYXBwb3A9aGVhcHEuaGVhcHBvcCk6CisgICAgZGVmIF9nZXQoc2VsZik6CiAgICAgICAgIHJldHVybiBoZWFwcG9wKHNlbGYucXVldWUpCiAKIApAQCAtMjUxLDcgKzIzNiw3IEBACiAgICAgZGVmIF9pbml0KHNlbGYsIG1heHNpemUpOgogICAgICAgICBzZWxmLnF1ZXVlID0gW10KIAotICAgIGRlZiBfcXNpemUoc2VsZiwgbGVuPWxlbik6CisgICAgZGVmIF9xc2l6ZShzZWxmKToKICAgICAgICAgcmV0dXJuIGxlbihzZWxmLnF1ZXVlKQogCiAgICAgZGVmIF9wdXQoc2VsZiwgaXRlbSk6CmRpZmYgLS1naXQgYS9MaWIvcmFuZG9tLnB5IGIvTGliL3JhbmRvbS5weQppbmRleCBkNDAwNmU1Li5hYzgwY2E3IDEwMDY0NAotLS0gYS9MaWIvcmFuZG9tLnB5CisrKyBiL0xpYi9yYW5kb20ucHkKQEAgLTQxLDcgKzQxLDcgQEAKIGZyb20gbWF0aCBpbXBvcnQgbG9nIGFzIF9sb2csIGV4cCBhcyBfZXhwLCBwaSBhcyBfcGksIGUgYXMgX2UsIGNlaWwgYXMgX2NlaWwKIGZyb20gbWF0aCBpbXBvcnQgc3FydCBhcyBfc3FydCwgYWNvcyBhcyBfYWNvcywgY29zIGFzIF9jb3MsIHNpbiBhcyBfc2luCiBmcm9tIG9zIGltcG9ydCB1cmFuZG9tIGFzIF91cmFuZG9tCi1mcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBTZXQgYXMgX1NldCwgU2VxdWVuY2UgYXMgX1NlcXVlbmNlCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgU2V0IGFzIF9TZXQsIFNlcXVlbmNlIGFzIF9TZXF1ZW5jZQogZnJvbSBoYXNobGliIGltcG9ydCBzaGE1MTIgYXMgX3NoYTUxMgogCiBfX2FsbF9fID0gWyJSYW5kb20iLCJzZWVkIiwicmFuZG9tIiwidW5pZm9ybSIsInJhbmRpbnQiLCJjaG9pY2UiLCJzYW1wbGUiLApkaWZmIC0tZ2l0IGEvTGliL3JlLnB5IGIvTGliL3JlLnB5CmluZGV4IDRmZTNiZDguLjIyOGM0ZjEgMTAwNjQ0Ci0tLSBhL0xpYi9yZS5weQorKysgYi9MaWIvcmUucHkKQEAgLTIwNyw3ICsyMDcsNyBAQAogCiBkZWYgcHVyZ2UoKToKICAgICAiQ2xlYXIgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiBjYWNoZXMiCi0gICAgX2NvbXBpbGVfdHlwZWQuY2FjaGVfY2xlYXIoKQorICAgIF9jb21waWxlLmNhY2hlX2NsZWFyKCkKICAgICBfY29tcGlsZV9yZXBsLmNhY2hlX2NsZWFyKCkKIAogZGVmIHRlbXBsYXRlKHBhdHRlcm4sIGZsYWdzPTApOgpAQCAtMjE1LDEyICsyMTUsMTQgQEAKICAgICByZXR1cm4gX2NvbXBpbGUocGF0dGVybiwgZmxhZ3N8VCkKIAogX2FscGhhbnVtX3N0ciA9IGZyb3plbnNldCgKLSAgICAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkwIikKKyAgICAiX2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5MCIpCiBfYWxwaGFudW1fYnl0ZXMgPSBmcm96ZW5zZXQoCi0gICAgYiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OTAiKQorICAgIGIiX2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5MCIpCiAKIGRlZiBlc2NhcGUocGF0dGVybik6Ci0gICAgIkVzY2FwZSBhbGwgbm9uLWFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGluIHBhdHRlcm4uIgorICAgICIiIgorICAgIEVzY2FwZSBhbGwgdGhlIGNoYXJhY3RlcnMgaW4gcGF0dGVybiBleGNlcHQgQVNDSUkgbGV0dGVycywgbnVtYmVycyBhbmQgJ18nLgorICAgICIiIgogICAgIGlmIGlzaW5zdGFuY2UocGF0dGVybiwgc3RyKToKICAgICAgICAgYWxwaGFudW0gPSBfYWxwaGFudW1fc3RyCiAgICAgICAgIHMgPSBsaXN0KHBhdHRlcm4pCkBAIC0yNTEsMTEgKzI1Myw4IEBACiAKIF9wYXR0ZXJuX3R5cGUgPSB0eXBlKHNyZV9jb21waWxlLmNvbXBpbGUoIiIsIDApKQogCitAZnVuY3Rvb2xzLmxydV9jYWNoZShtYXhzaXplPTUwMCwgdHlwZWQ9VHJ1ZSkKIGRlZiBfY29tcGlsZShwYXR0ZXJuLCBmbGFncyk6Ci0gICAgcmV0dXJuIF9jb21waWxlX3R5cGVkKHR5cGUocGF0dGVybiksIHBhdHRlcm4sIGZsYWdzKQotCi1AZnVuY3Rvb2xzLmxydV9jYWNoZShtYXhzaXplPTUwMCkKLWRlZiBfY29tcGlsZV90eXBlZCh0ZXh0X2J5dGVzX3R5cGUsIHBhdHRlcm4sIGZsYWdzKToKICAgICAjIGludGVybmFsOiBjb21waWxlIHBhdHRlcm4KICAgICBpZiBpc2luc3RhbmNlKHBhdHRlcm4sIF9wYXR0ZXJuX3R5cGUpOgogICAgICAgICBpZiBmbGFnczoKZGlmZiAtLWdpdCBhL0xpYi9zY2hlZC5weSBiL0xpYi9zY2hlZC5weQppbmRleCBhMTE5ODkyLi5iZDFmNDI3IDEwMDY0NAotLS0gYS9MaWIvc2NoZWQucHkKKysrIGIvTGliL3NjaGVkLnB5CkBAIC0yOCwxMiArMjgsMTcgQEAKICMgWFhYIGluc3RlYWQgb2YgaGF2aW5nIHRvIGRlZmluZSBhIG1vZHVsZSBvciBjbGFzcyBqdXN0IHRvIGhvbGQKICMgWFhYIHRoZSBnbG9iYWwgc3RhdGUgb2YgeW91ciBwYXJ0aWN1bGFyIHRpbWUgYW5kIGRlbGF5IGZ1bmN0aW9ucy4KIAoraW1wb3J0IHRpbWUKIGltcG9ydCBoZWFwcQogZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgbmFtZWR0dXBsZQordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBpbXBvcnQgZHVtbXlfdGhyZWFkaW5nIGFzIHRocmVhZGluZwogCiBfX2FsbF9fID0gWyJzY2hlZHVsZXIiXQogCi1jbGFzcyBFdmVudChuYW1lZHR1cGxlKCdFdmVudCcsICd0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCcpKToKK2NsYXNzIEV2ZW50KG5hbWVkdHVwbGUoJ0V2ZW50JywgJ3RpbWUsIHByaW9yaXR5LCBhY3Rpb24sIGFyZ3VtZW50LCBrd2FyZ3MnKSk6CiAgICAgZGVmIF9fZXFfXyhzLCBvKTogcmV0dXJuIChzLnRpbWUsIHMucHJpb3JpdHkpID09IChvLnRpbWUsIG8ucHJpb3JpdHkpCiAgICAgZGVmIF9fbmVfXyhzLCBvKTogcmV0dXJuIChzLnRpbWUsIHMucHJpb3JpdHkpICE9IChvLnRpbWUsIG8ucHJpb3JpdHkpCiAgICAgZGVmIF9fbHRfXyhzLCBvKTogcmV0dXJuIChzLnRpbWUsIHMucHJpb3JpdHkpIDwgIChvLnRpbWUsIG8ucHJpb3JpdHkpCkBAIC00MiwzMiArNDcsMzYgQEAKICAgICBkZWYgX19nZV9fKHMsIG8pOiByZXR1cm4gKHMudGltZSwgcy5wcmlvcml0eSkgPj0gKG8udGltZSwgby5wcmlvcml0eSkKIAogY2xhc3Mgc2NoZWR1bGVyOgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0aW1lZnVuYywgZGVsYXlmdW5jKToKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0aW1lZnVuYz10aW1lLnRpbWUsIGRlbGF5ZnVuYz10aW1lLnNsZWVwKToKICAgICAgICAgIiIiSW5pdGlhbGl6ZSBhIG5ldyBpbnN0YW5jZSwgcGFzc2luZyB0aGUgdGltZSBhbmQgZGVsYXkKICAgICAgICAgZnVuY3Rpb25zIiIiCiAgICAgICAgIHNlbGYuX3F1ZXVlID0gW10KKyAgICAgICAgc2VsZi5fbG9jayA9IHRocmVhZGluZy5STG9jaygpCiAgICAgICAgIHNlbGYudGltZWZ1bmMgPSB0aW1lZnVuYwogICAgICAgICBzZWxmLmRlbGF5ZnVuYyA9IGRlbGF5ZnVuYwogCi0gICAgZGVmIGVudGVyYWJzKHNlbGYsIHRpbWUsIHByaW9yaXR5LCBhY3Rpb24sIGFyZ3VtZW50KToKKyAgICBkZWYgZW50ZXJhYnMoc2VsZiwgdGltZSwgcHJpb3JpdHksIGFjdGlvbiwgYXJndW1lbnQ9W10sIGt3YXJncz17fSk6CiAgICAgICAgICIiIkVudGVyIGEgbmV3IGV2ZW50IGluIHRoZSBxdWV1ZSBhdCBhbiBhYnNvbHV0ZSB0aW1lLgogCiAgICAgICAgIFJldHVybnMgYW4gSUQgZm9yIHRoZSBldmVudCB3aGljaCBjYW4gYmUgdXNlZCB0byByZW1vdmUgaXQsCiAgICAgICAgIGlmIG5lY2Vzc2FyeS4KIAogICAgICAgICAiIiIKLSAgICAgICAgZXZlbnQgPSBFdmVudCh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCkKLSAgICAgICAgaGVhcHEuaGVhcHB1c2goc2VsZi5fcXVldWUsIGV2ZW50KQotICAgICAgICByZXR1cm4gZXZlbnQgIyBUaGUgSUQKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgZXZlbnQgPSBFdmVudCh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCwga3dhcmdzKQorICAgICAgICAgICAgaGVhcHEuaGVhcHB1c2goc2VsZi5fcXVldWUsIGV2ZW50KQorICAgICAgICAgICAgcmV0dXJuIGV2ZW50ICMgVGhlIElECiAKLSAgICBkZWYgZW50ZXIoc2VsZiwgZGVsYXksIHByaW9yaXR5LCBhY3Rpb24sIGFyZ3VtZW50KToKKyAgICBkZWYgZW50ZXIoc2VsZiwgZGVsYXksIHByaW9yaXR5LCBhY3Rpb24sIGFyZ3VtZW50PVtdLCBrd2FyZ3M9e30pOgogICAgICAgICAiIiJBIHZhcmlhbnQgdGhhdCBzcGVjaWZpZXMgdGhlIHRpbWUgYXMgYSByZWxhdGl2ZSB0aW1lLgogCiAgICAgICAgIFRoaXMgaXMgYWN0dWFsbHkgdGhlIG1vcmUgY29tbW9ubHkgdXNlZCBpbnRlcmZhY2UuCiAKICAgICAgICAgIiIiCi0gICAgICAgIHRpbWUgPSBzZWxmLnRpbWVmdW5jKCkgKyBkZWxheQotICAgICAgICByZXR1cm4gc2VsZi5lbnRlcmFicyh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCkKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgdGltZSA9IHNlbGYudGltZWZ1bmMoKSArIGRlbGF5CisgICAgICAgICAgICByZXR1cm4gc2VsZi5lbnRlcmFicyh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCwga3dhcmdzKQogCiAgICAgZGVmIGNhbmNlbChzZWxmLCBldmVudCk6CiAgICAgICAgICIiIlJlbW92ZSBhbiBldmVudCBmcm9tIHRoZSBxdWV1ZS4KQEAgLTc2LDE1ICs4NSwxOSBAQAogICAgICAgICBJZiB0aGUgZXZlbnQgaXMgbm90IGluIHRoZSBxdWV1ZSwgdGhpcyByYWlzZXMgVmFsdWVFcnJvci4KIAogICAgICAgICAiIiIKLSAgICAgICAgc2VsZi5fcXVldWUucmVtb3ZlKGV2ZW50KQotICAgICAgICBoZWFwcS5oZWFwaWZ5KHNlbGYuX3F1ZXVlKQorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICBzZWxmLl9xdWV1ZS5yZW1vdmUoZXZlbnQpCisgICAgICAgICAgICBoZWFwcS5oZWFwaWZ5KHNlbGYuX3F1ZXVlKQogCiAgICAgZGVmIGVtcHR5KHNlbGYpOgogICAgICAgICAiIiJDaGVjayB3aGV0aGVyIHRoZSBxdWV1ZSBpcyBlbXB0eS4iIiIKLSAgICAgICAgcmV0dXJuIG5vdCBzZWxmLl9xdWV1ZQorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICByZXR1cm4gbm90IHNlbGYuX3F1ZXVlCiAKLSAgICBkZWYgcnVuKHNlbGYpOgorICAgIGRlZiBydW4oc2VsZiwgYmxvY2tpbmc9VHJ1ZSk6CiAgICAgICAgICIiIkV4ZWN1dGUgZXZlbnRzIHVudGlsIHRoZSBxdWV1ZSBpcyBlbXB0eS4KKyAgICAgICAgSWYgYmxvY2tpbmcgaXMgRmFsc2UgZXhlY3V0ZXMgdGhlIHNjaGVkdWxlZCBldmVudHMgZHVlIHRvCisgICAgICAgIGV4cGlyZSBzb29uZXN0IChpZiBhbnkpIGFuZCB0aGVuIHJldHVybi4KIAogICAgICAgICBXaGVuIHRoZXJlIGlzIGEgcG9zaXRpdmUgZGVsYXkgdW50aWwgdGhlIGZpcnN0IGV2ZW50LCB0aGUKICAgICAgICAgZGVsYXkgZnVuY3Rpb24gaXMgY2FsbGVkIGFuZCB0aGUgZXZlbnQgaXMgbGVmdCBpbiB0aGUgcXVldWU7CkBAIC0xMDYsMjQgKzExOSwyNyBAQAogICAgICAgICAiIiIKICAgICAgICAgIyBsb2NhbGl6ZSB2YXJpYWJsZSBhY2Nlc3MgdG8gbWluaW1pemUgb3ZlcmhlYWQKICAgICAgICAgIyBhbmQgdG8gaW1wcm92ZSB0aHJlYWQgc2FmZXR5Ci0gICAgICAgIHEgPSBzZWxmLl9xdWV1ZQotICAgICAgICBkZWxheWZ1bmMgPSBzZWxmLmRlbGF5ZnVuYwotICAgICAgICB0aW1lZnVuYyA9IHNlbGYudGltZWZ1bmMKLSAgICAgICAgcG9wID0gaGVhcHEuaGVhcHBvcAotICAgICAgICB3aGlsZSBxOgotICAgICAgICAgICAgdGltZSwgcHJpb3JpdHksIGFjdGlvbiwgYXJndW1lbnQgPSBjaGVja2VkX2V2ZW50ID0gcVswXQotICAgICAgICAgICAgbm93ID0gdGltZWZ1bmMoKQotICAgICAgICAgICAgaWYgbm93IDwgdGltZToKLSAgICAgICAgICAgICAgICBkZWxheWZ1bmModGltZSAtIG5vdykKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgZXZlbnQgPSBwb3AocSkKLSAgICAgICAgICAgICAgICAjIFZlcmlmeSB0aGF0IHRoZSBldmVudCB3YXMgbm90IHJlbW92ZWQgb3IgYWx0ZXJlZAotICAgICAgICAgICAgICAgICMgYnkgYW5vdGhlciB0aHJlYWQgYWZ0ZXIgd2UgbGFzdCBsb29rZWQgYXQgcVswXS4KLSAgICAgICAgICAgICAgICBpZiBldmVudCBpcyBjaGVja2VkX2V2ZW50OgotICAgICAgICAgICAgICAgICAgICBhY3Rpb24oKmFyZ3VtZW50KQotICAgICAgICAgICAgICAgICAgICBkZWxheWZ1bmMoMCkgICAjIExldCBvdGhlciB0aHJlYWRzIHJ1bgorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICBxID0gc2VsZi5fcXVldWUKKyAgICAgICAgICAgIGRlbGF5ZnVuYyA9IHNlbGYuZGVsYXlmdW5jCisgICAgICAgICAgICB0aW1lZnVuYyA9IHNlbGYudGltZWZ1bmMKKyAgICAgICAgICAgIHBvcCA9IGhlYXBxLmhlYXBwb3AKKyAgICAgICAgICAgIHdoaWxlIHE6CisgICAgICAgICAgICAgICAgdGltZSwgcHJpb3JpdHksIGFjdGlvbiwgYXJndW1lbnQsIGt3YXJncyA9IGNoZWNrZWRfZXZlbnQgPSBxWzBdCisgICAgICAgICAgICAgICAgbm93ID0gdGltZWZ1bmMoKQorICAgICAgICAgICAgICAgIGlmIG5vdyA8IHRpbWU6CisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBibG9ja2luZzoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgICAgICAgICBkZWxheWZ1bmModGltZSAtIG5vdykKICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBoZWFwcS5oZWFwcHVzaChxLCBldmVudCkKKyAgICAgICAgICAgICAgICAgICAgZXZlbnQgPSBwb3AocSkKKyAgICAgICAgICAgICAgICAgICAgIyBWZXJpZnkgdGhhdCB0aGUgZXZlbnQgd2FzIG5vdCByZW1vdmVkIG9yIGFsdGVyZWQKKyAgICAgICAgICAgICAgICAgICAgIyBieSBhbm90aGVyIHRocmVhZCBhZnRlciB3ZSBsYXN0IGxvb2tlZCBhdCBxWzBdLgorICAgICAgICAgICAgICAgICAgICBpZiBldmVudCBpcyBjaGVja2VkX2V2ZW50OgorICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uKCphcmd1bWVudCwgKiprd2FyZ3MpCisgICAgICAgICAgICAgICAgICAgICAgICBkZWxheWZ1bmMoMCkgICAjIExldCBvdGhlciB0aHJlYWRzIHJ1bgorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgaGVhcHEuaGVhcHB1c2gocSwgZXZlbnQpCiAKICAgICBAcHJvcGVydHkKICAgICBkZWYgcXVldWUoc2VsZik6CkBAIC0xMzYsNSArMTUyLDYgQEAKICAgICAgICAgIyBVc2UgaGVhcHEgdG8gc29ydCB0aGUgcXVldWUgcmF0aGVyIHRoYW4gdXNpbmcgJ3NvcnRlZChzZWxmLl9xdWV1ZSknLgogICAgICAgICAjIFdpdGggaGVhcHEsIHR3byBldmVudHMgc2NoZWR1bGVkIGF0IHRoZSBzYW1lIHRpbWUgd2lsbCBzaG93IGluCiAgICAgICAgICMgdGhlIGFjdHVhbCBvcmRlciB0aGV5IHdvdWxkIGJlIHJldHJpZXZlZC4KLSAgICAgICAgZXZlbnRzID0gc2VsZi5fcXVldWVbOl0KLSAgICAgICAgcmV0dXJuIG1hcChoZWFwcS5oZWFwcG9wLCBbZXZlbnRzXSpsZW4oZXZlbnRzKSkKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgZXZlbnRzID0gc2VsZi5fcXVldWVbOl0KKyAgICAgICAgICAgIHJldHVybiBtYXAoaGVhcHEuaGVhcHBvcCwgW2V2ZW50c10qbGVuKGV2ZW50cykpCmRpZmYgLS1naXQgYS9MaWIvc2hsZXgucHkgYi9MaWIvc2hsZXgucHkKaW5kZXggM2VkZDNkYi4uNjlmM2I0NSAxMDA2NDQKLS0tIGEvTGliL3NobGV4LnB5CisrKyBiL0xpYi9zaGxleC5weQpAQCAtNiwxMyArNiwxNCBAQAogIyBQb3NpeCBjb21wbGlhbmNlLCBzcGxpdCgpLCBzdHJpbmcgYXJndW1lbnRzLCBhbmQKICMgaXRlcmF0b3IgaW50ZXJmYWNlIGJ5IEd1c3Rhdm8gTmllbWV5ZXIsIEFwcmlsIDIwMDMuCiAKLWltcG9ydCBvcy5wYXRoCitpbXBvcnQgb3MKK2ltcG9ydCByZQogaW1wb3J0IHN5cwogZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgZGVxdWUKIAogZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KIAotX19hbGxfXyA9IFsic2hsZXgiLCAic3BsaXQiXQorX19hbGxfXyA9IFsic2hsZXgiLCAic3BsaXQiLCAicXVvdGUiXQogCiBjbGFzcyBzaGxleDoKICAgICAiQSBsZXhpY2FsIGFuYWx5emVyIGNsYXNzIGZvciBzaW1wbGUgc2hlbGwtbGlrZSBzeW50YXhlcy4iCkBAIC0yNzQsNiArMjc1LDIxIEBACiAgICAgICAgIGxleC5jb21tZW50ZXJzID0gJycKICAgICByZXR1cm4gbGlzdChsZXgpCiAKKworX2ZpbmRfdW5zYWZlID0gcmUuY29tcGlsZShyJ1teXHdAJSs9OiwuLy1dJywgcmUuQVNDSUkpLnNlYXJjaAorCitkZWYgcXVvdGUocyk6CisgICAgIiIiUmV0dXJuIGEgc2hlbGwtZXNjYXBlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgKnMqLiIiIgorICAgIGlmIG5vdCBzOgorICAgICAgICByZXR1cm4gIicnIgorICAgIGlmIF9maW5kX3Vuc2FmZShzKSBpcyBOb25lOgorICAgICAgICByZXR1cm4gcworCisgICAgIyB1c2Ugc2luZ2xlIHF1b3RlcywgYW5kIHB1dCBzaW5nbGUgcXVvdGVzIGludG8gZG91YmxlIHF1b3RlcworICAgICMgdGhlIHN0cmluZyAkJ2IgaXMgdGhlbiBxdW90ZWQgYXMgJyQnIiciJ2InCisgICAgcmV0dXJuICInIiArIHMucmVwbGFjZSgiJyIsICInXCInXCInIikgKyAiJyIKKworCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgIGlmIGxlbihzeXMuYXJndikgPT0gMToKICAgICAgICAgbGV4ZXIgPSBzaGxleCgpCmRpZmYgLS1naXQgYS9MaWIvc2h1dGlsLnB5IGIvTGliL3NodXRpbC5weQppbmRleCBkMWIxYWYzLi42NjY0NTk5IDEwMDY0NAotLS0gYS9MaWIvc2h1dGlsLnB5CisrKyBiL0xpYi9zaHV0aWwucHkKQEAgLTE1LDYgKzE1LDcgQEAKIAogdHJ5OgogICAgIGltcG9ydCBiejIKKyAgICBkZWwgYnoyCiAgICAgX0JaMl9TVVBQT1JURUQgPSBUcnVlCiBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgX0JaMl9TVVBQT1JURUQgPSBGYWxzZQpAQCAtMzQsNyArMzUsOSBAQAogICAgICAgICAgICAiRXhlY0Vycm9yIiwgIm1ha2VfYXJjaGl2ZSIsICJnZXRfYXJjaGl2ZV9mb3JtYXRzIiwKICAgICAgICAgICAgInJlZ2lzdGVyX2FyY2hpdmVfZm9ybWF0IiwgInVucmVnaXN0ZXJfYXJjaGl2ZV9mb3JtYXQiLAogICAgICAgICAgICAiZ2V0X3VucGFja19mb3JtYXRzIiwgInJlZ2lzdGVyX3VucGFja19mb3JtYXQiLAotICAgICAgICAgICAidW5yZWdpc3Rlcl91bnBhY2tfZm9ybWF0IiwgInVucGFja19hcmNoaXZlIiwgImlnbm9yZV9wYXR0ZXJucyJdCisgICAgICAgICAgICJ1bnJlZ2lzdGVyX3VucGFja19mb3JtYXQiLCAidW5wYWNrX2FyY2hpdmUiLAorICAgICAgICAgICAiaWdub3JlX3BhdHRlcm5zIiwgImNob3duIl0KKyAgICAgICAgICAgIyBkaXNrX3VzYWdlIGlzIGFkZGVkIGxhdGVyLCBpZiBhdmFpbGFibGUgb24gdGhlIHBsYXRmb3JtCiAKIGNsYXNzIEVycm9yKEVudmlyb25tZW50RXJyb3IpOgogICAgIHBhc3MKQEAgLTc5LDggKzgyLDEzIEBACiAgICAgcmV0dXJuIChvcy5wYXRoLm5vcm1jYXNlKG9zLnBhdGguYWJzcGF0aChzcmMpKSA9PQogICAgICAgICAgICAgb3MucGF0aC5ub3JtY2FzZShvcy5wYXRoLmFic3BhdGgoZHN0KSkpCiAKLWRlZiBjb3B5ZmlsZShzcmMsIGRzdCk6Ci0gICAgIiIiQ29weSBkYXRhIGZyb20gc3JjIHRvIGRzdCIiIgorZGVmIGNvcHlmaWxlKHNyYywgZHN0LCBzeW1saW5rcz1GYWxzZSk6CisgICAgIiIiQ29weSBkYXRhIGZyb20gc3JjIHRvIGRzdC4KKworICAgIElmIG9wdGlvbmFsIGZsYWcgYHN5bWxpbmtzYCBpcyBzZXQgYW5kIGBzcmNgIGlzIGEgc3ltYm9saWMgbGluaywgYSBuZXcKKyAgICBzeW1saW5rIHdpbGwgYmUgY3JlYXRlZCBpbnN0ZWFkIG9mIGNvcHlpbmcgdGhlIGZpbGUgaXQgcG9pbnRzIHRvLgorCisgICAgIiIiCiAgICAgaWYgX3NhbWVmaWxlKHNyYywgZHN0KToKICAgICAgICAgcmFpc2UgRXJyb3IoImAlc2AgYW5kIGAlc2AgYXJlIHRoZSBzYW1lIGZpbGUiICUgKHNyYywgZHN0KSkKIApAQCAtOTUsNTQgKzEwMyw5NCBAQAogICAgICAgICAgICAgaWYgc3RhdC5TX0lTRklGTyhzdC5zdF9tb2RlKToKICAgICAgICAgICAgICAgICByYWlzZSBTcGVjaWFsRmlsZUVycm9yKCJgJXNgIGlzIGEgbmFtZWQgcGlwZSIgJSBmbikKIAotICAgIHdpdGggb3BlbihzcmMsICdyYicpIGFzIGZzcmM6Ci0gICAgICAgIHdpdGggb3Blbihkc3QsICd3YicpIGFzIGZkc3Q6Ci0gICAgICAgICAgICBjb3B5ZmlsZW9iaihmc3JjLCBmZHN0KQorICAgIGlmIHN5bWxpbmtzIGFuZCBvcy5wYXRoLmlzbGluayhzcmMpOgorICAgICAgICBvcy5zeW1saW5rKG9zLnJlYWRsaW5rKHNyYyksIGRzdCkKKyAgICBlbHNlOgorICAgICAgICB3aXRoIG9wZW4oc3JjLCAncmInKSBhcyBmc3JjOgorICAgICAgICAgICAgd2l0aCBvcGVuKGRzdCwgJ3diJykgYXMgZmRzdDoKKyAgICAgICAgICAgICAgICBjb3B5ZmlsZW9iaihmc3JjLCBmZHN0KQogCi1kZWYgY29weW1vZGUoc3JjLCBkc3QpOgotICAgICIiIkNvcHkgbW9kZSBiaXRzIGZyb20gc3JjIHRvIGRzdCIiIgotICAgIGlmIGhhc2F0dHIob3MsICdjaG1vZCcpOgotICAgICAgICBzdCA9IG9zLnN0YXQoc3JjKQotICAgICAgICBtb2RlID0gc3RhdC5TX0lNT0RFKHN0LnN0X21vZGUpCi0gICAgICAgIG9zLmNobW9kKGRzdCwgbW9kZSkKK2RlZiBjb3B5bW9kZShzcmMsIGRzdCwgc3ltbGlua3M9RmFsc2UpOgorICAgICIiIkNvcHkgbW9kZSBiaXRzIGZyb20gc3JjIHRvIGRzdC4KIAotZGVmIGNvcHlzdGF0KHNyYywgZHN0KToKLSAgICAiIiJDb3B5IGFsbCBzdGF0IGluZm8gKG1vZGUgYml0cywgYXRpbWUsIG10aW1lLCBmbGFncykgZnJvbSBzcmMgdG8gZHN0IiIiCi0gICAgc3QgPSBvcy5zdGF0KHNyYykKKyAgICBJZiB0aGUgb3B0aW9uYWwgZmxhZyBgc3ltbGlua3NgIGlzIHNldCwgc3ltbGlua3MgYXJlbid0IGZvbGxvd2VkIGlmIGFuZAorICAgIG9ubHkgaWYgYm90aCBgc3JjYCBhbmQgYGRzdGAgYXJlIHN5bWxpbmtzLiBJZiBgbGNobW9kYCBpc24ndCBhdmFpbGFibGUgKGVnLgorICAgIExpbnV4KSwgaW4gdGhlc2UgY2FzZXMsIHRoaXMgbWV0aG9kIGRvZXMgbm90aGluZy4KKworICAgICIiIgorICAgIGlmIHN5bWxpbmtzIGFuZCBvcy5wYXRoLmlzbGluayhzcmMpIGFuZCBvcy5wYXRoLmlzbGluayhkc3QpOgorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJyk6CisgICAgICAgICAgICBzdGF0X2Z1bmMsIGNobW9kX2Z1bmMgPSBvcy5sc3RhdCwgb3MubGNobW9kCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4KKyAgICBlbGlmIGhhc2F0dHIob3MsICdjaG1vZCcpOgorICAgICAgICBzdGF0X2Z1bmMsIGNobW9kX2Z1bmMgPSBvcy5zdGF0LCBvcy5jaG1vZAorICAgIGVsc2U6CisgICAgICAgIHJldHVybgorCisgICAgc3QgPSBzdGF0X2Z1bmMoc3JjKQorICAgIGNobW9kX2Z1bmMoZHN0LCBzdGF0LlNfSU1PREUoc3Quc3RfbW9kZSkpCisKK2RlZiBjb3B5c3RhdChzcmMsIGRzdCwgc3ltbGlua3M9RmFsc2UpOgorICAgICIiIkNvcHkgYWxsIHN0YXQgaW5mbyAobW9kZSBiaXRzLCBhdGltZSwgbXRpbWUsIGZsYWdzKSBmcm9tIHNyYyB0byBkc3QuCisKKyAgICBJZiB0aGUgb3B0aW9uYWwgZmxhZyBgc3ltbGlua3NgIGlzIHNldCwgc3ltbGlua3MgYXJlbid0IGZvbGxvd2VkIGlmIGFuZAorICAgIG9ubHkgaWYgYm90aCBgc3JjYCBhbmQgYGRzdGAgYXJlIHN5bWxpbmtzLgorCisgICAgIiIiCisgICAgZGVmIF9ub3AoKmFyZ3MpOgorICAgICAgICBwYXNzCisKKyAgICBpZiBzeW1saW5rcyBhbmQgb3MucGF0aC5pc2xpbmsoc3JjKSBhbmQgb3MucGF0aC5pc2xpbmsoZHN0KToKKyAgICAgICAgc3RhdF9mdW5jID0gb3MubHN0YXQKKyAgICAgICAgdXRpbWVfZnVuYyA9IG9zLmx1dGltZXMgaWYgaGFzYXR0cihvcywgJ2x1dGltZXMnKSBlbHNlIF9ub3AKKyAgICAgICAgY2htb2RfZnVuYyA9IG9zLmxjaG1vZCBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJykgZWxzZSBfbm9wCisgICAgICAgIGNoZmxhZ3NfZnVuYyA9IG9zLmxjaGZsYWdzIGlmIGhhc2F0dHIob3MsICdsY2hmbGFncycpIGVsc2UgX25vcAorICAgIGVsc2U6CisgICAgICAgIHN0YXRfZnVuYyA9IG9zLnN0YXQKKyAgICAgICAgdXRpbWVfZnVuYyA9IG9zLnV0aW1lIGlmIGhhc2F0dHIob3MsICd1dGltZScpIGVsc2UgX25vcAorICAgICAgICBjaG1vZF9mdW5jID0gb3MuY2htb2QgaWYgaGFzYXR0cihvcywgJ2NobW9kJykgZWxzZSBfbm9wCisgICAgICAgIGNoZmxhZ3NfZnVuYyA9IG9zLmNoZmxhZ3MgaWYgaGFzYXR0cihvcywgJ2NoZmxhZ3MnKSBlbHNlIF9ub3AKKworICAgIHN0ID0gc3RhdF9mdW5jKHNyYykKICAgICBtb2RlID0gc3RhdC5TX0lNT0RFKHN0LnN0X21vZGUpCi0gICAgaWYgaGFzYXR0cihvcywgJ3V0aW1lJyk6Ci0gICAgICAgIG9zLnV0aW1lKGRzdCwgKHN0LnN0X2F0aW1lLCBzdC5zdF9tdGltZSkpCi0gICAgaWYgaGFzYXR0cihvcywgJ2NobW9kJyk6Ci0gICAgICAgIG9zLmNobW9kKGRzdCwgbW9kZSkKLSAgICBpZiBoYXNhdHRyKG9zLCAnY2hmbGFncycpIGFuZCBoYXNhdHRyKHN0LCAnc3RfZmxhZ3MnKToKKyAgICB1dGltZV9mdW5jKGRzdCwgKHN0LnN0X2F0aW1lLCBzdC5zdF9tdGltZSkpCisgICAgY2htb2RfZnVuYyhkc3QsIG1vZGUpCisgICAgaWYgaGFzYXR0cihzdCwgJ3N0X2ZsYWdzJyk6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIG9zLmNoZmxhZ3MoZHN0LCBzdC5zdF9mbGFncykKKyAgICAgICAgICAgIGNoZmxhZ3NfZnVuYyhkc3QsIHN0LnN0X2ZsYWdzKQogICAgICAgICBleGNlcHQgT1NFcnJvciBhcyB3aHk6CiAgICAgICAgICAgICBpZiAobm90IGhhc2F0dHIoZXJybm8sICdFT1BOT1RTVVBQJykgb3IKICAgICAgICAgICAgICAgICB3aHkuZXJybm8gIT0gZXJybm8uRU9QTk9UU1VQUCk6CiAgICAgICAgICAgICAgICAgcmFpc2UKIAotZGVmIGNvcHkoc3JjLCBkc3QpOgorZGVmIGNvcHkoc3JjLCBkc3QsIHN5bWxpbmtzPUZhbHNlKToKICAgICAiIiJDb3B5IGRhdGEgYW5kIG1vZGUgYml0cyAoImNwIHNyYyBkc3QiKS4KIAogICAgIFRoZSBkZXN0aW5hdGlvbiBtYXkgYmUgYSBkaXJlY3RvcnkuCiAKKyAgICBJZiB0aGUgb3B0aW9uYWwgZmxhZyBgc3ltbGlua3NgIGlzIHNldCwgc3ltbGlua3Mgd29uJ3QgYmUgZm9sbG93ZWQuIFRoaXMKKyAgICByZXNlbWJsZXMgR05VJ3MgImNwIC1QIHNyYyBkc3QiLgorCiAgICAgIiIiCiAgICAgaWYgb3MucGF0aC5pc2Rpcihkc3QpOgogICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4oZHN0LCBvcy5wYXRoLmJhc2VuYW1lKHNyYykpCi0gICAgY29weWZpbGUoc3JjLCBkc3QpCi0gICAgY29weW1vZGUoc3JjLCBkc3QpCisgICAgY29weWZpbGUoc3JjLCBkc3QsIHN5bWxpbmtzPXN5bWxpbmtzKQorICAgIGNvcHltb2RlKHNyYywgZHN0LCBzeW1saW5rcz1zeW1saW5rcykKIAotZGVmIGNvcHkyKHNyYywgZHN0KToKK2RlZiBjb3B5MihzcmMsIGRzdCwgc3ltbGlua3M9RmFsc2UpOgogICAgICIiIkNvcHkgZGF0YSBhbmQgYWxsIHN0YXQgaW5mbyAoImNwIC1wIHNyYyBkc3QiKS4KIAogICAgIFRoZSBkZXN0aW5hdGlvbiBtYXkgYmUgYSBkaXJlY3RvcnkuCiAKKyAgICBJZiB0aGUgb3B0aW9uYWwgZmxhZyBgc3ltbGlua3NgIGlzIHNldCwgc3ltbGlua3Mgd29uJ3QgYmUgZm9sbG93ZWQuIFRoaXMKKyAgICByZXNlbWJsZXMgR05VJ3MgImNwIC1QIHNyYyBkc3QiLgorCiAgICAgIiIiCiAgICAgaWYgb3MucGF0aC5pc2Rpcihkc3QpOgogICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4oZHN0LCBvcy5wYXRoLmJhc2VuYW1lKHNyYykpCi0gICAgY29weWZpbGUoc3JjLCBkc3QpCi0gICAgY29weXN0YXQoc3JjLCBkc3QpCisgICAgY29weWZpbGUoc3JjLCBkc3QsIHN5bWxpbmtzPXN5bWxpbmtzKQorICAgIGNvcHlzdGF0KHNyYywgZHN0LCBzeW1saW5rcz1zeW1saW5rcykKIAogZGVmIGlnbm9yZV9wYXR0ZXJucygqcGF0dGVybnMpOgogICAgICIiIkZ1bmN0aW9uIHRoYXQgY2FuIGJlIHVzZWQgYXMgY29weXRyZWUoKSBpZ25vcmUgcGFyYW1ldGVyLgpAQCAtMjA5LDcgKzI1NywxMSBAQAogICAgICAgICAgICAgaWYgb3MucGF0aC5pc2xpbmsoc3JjbmFtZSk6CiAgICAgICAgICAgICAgICAgbGlua3RvID0gb3MucmVhZGxpbmsoc3JjbmFtZSkKICAgICAgICAgICAgICAgICBpZiBzeW1saW5rczoKKyAgICAgICAgICAgICAgICAgICAgIyBXZSBjYW4ndCBqdXN0IGxlYXZlIGl0IHRvIGBjb3B5X2Z1bmN0aW9uYCBiZWNhdXNlIGxlZ2FjeQorICAgICAgICAgICAgICAgICAgICAjIGNvZGUgd2l0aCBhIGN1c3RvbSBgY29weV9mdW5jdGlvbmAgbWF5IHJlbHkgb24gY29weXRyZWUKKyAgICAgICAgICAgICAgICAgICAgIyBkb2luZyB0aGUgcmlnaHQgdGhpbmcuCiAgICAgICAgICAgICAgICAgICAgIG9zLnN5bWxpbmsobGlua3RvLCBkc3RuYW1lKQorICAgICAgICAgICAgICAgICAgICBjb3B5c3RhdChzcmNuYW1lLCBkc3RuYW1lLCBzeW1saW5rcz1zeW1saW5rcykKICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICAjIGlnbm9yZSBkYW5nbGluZyBzeW1saW5rIGlmIHRoZSBmbGFnIGlzIG9uCiAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhsaW5rdG8pIGFuZCBpZ25vcmVfZGFuZ2xpbmdfc3ltbGlua3M6CkBAIC0yNjYsNyArMzE4LDcgQEAKICAgICBuYW1lcyA9IFtdCiAgICAgdHJ5OgogICAgICAgICBuYW1lcyA9IG9zLmxpc3RkaXIocGF0aCkKLSAgICBleGNlcHQgb3MuZXJyb3IgYXMgZXJyOgorICAgIGV4Y2VwdCBvcy5lcnJvcjoKICAgICAgICAgb25lcnJvcihvcy5saXN0ZGlyLCBwYXRoLCBzeXMuZXhjX2luZm8oKSkKICAgICBmb3IgbmFtZSBpbiBuYW1lczoKICAgICAgICAgZnVsbG5hbWUgPSBvcy5wYXRoLmpvaW4ocGF0aCwgbmFtZSkKQEAgLTI3OSw3ICszMzEsNyBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIG9zLnJlbW92ZShmdWxsbmFtZSkKLSAgICAgICAgICAgIGV4Y2VwdCBvcy5lcnJvciBhcyBlcnI6CisgICAgICAgICAgICBleGNlcHQgb3MuZXJyb3I6CiAgICAgICAgICAgICAgICAgb25lcnJvcihvcy5yZW1vdmUsIGZ1bGxuYW1lLCBzeXMuZXhjX2luZm8oKSkKICAgICB0cnk6CiAgICAgICAgIG9zLnJtZGlyKHBhdGgpCkBAIC0zMDQsNyArMzU2LDEwIEBACiAgICAgb3ZlcndyaXR0ZW4gZGVwZW5kaW5nIG9uIG9zLnJlbmFtZSgpIHNlbWFudGljcy4KIAogICAgIElmIHRoZSBkZXN0aW5hdGlvbiBpcyBvbiBvdXIgY3VycmVudCBmaWxlc3lzdGVtLCB0aGVuIHJlbmFtZSgpIGlzIHVzZWQuCi0gICAgT3RoZXJ3aXNlLCBzcmMgaXMgY29waWVkIHRvIHRoZSBkZXN0aW5hdGlvbiBhbmQgdGhlbiByZW1vdmVkLgorICAgIE90aGVyd2lzZSwgc3JjIGlzIGNvcGllZCB0byB0aGUgZGVzdGluYXRpb24gYW5kIHRoZW4gcmVtb3ZlZC4gU3ltbGlua3MgYXJlCisgICAgcmVjcmVhdGVkIHVuZGVyIHRoZSBuZXcgbmFtZSBpZiBvcy5yZW5hbWUoKSBmYWlscyBiZWNhdXNlIG9mIGNyb3NzCisgICAgZmlsZXN5c3RlbSByZW5hbWVzLgorCiAgICAgQSBsb3QgbW9yZSBjb3VsZCBiZSBkb25lIGhlcmUuLi4gIEEgbG9vayBhdCBhIG12LmMgc2hvd3MgYSBsb3Qgb2YKICAgICB0aGUgaXNzdWVzIHRoaXMgaW1wbGVtZW50YXRpb24gZ2xvc3NlcyBvdmVyLgogCkBAIC0zMjIsOCArMzc3LDEyIEBACiAgICAgICAgICAgICByYWlzZSBFcnJvcigiRGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIiAlIHJlYWxfZHN0KQogICAgIHRyeToKICAgICAgICAgb3MucmVuYW1lKHNyYywgcmVhbF9kc3QpCi0gICAgZXhjZXB0IE9TRXJyb3IgYXMgZXhjOgotICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKHNyYyk6CisgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgIGlmIG9zLnBhdGguaXNsaW5rKHNyYyk6CisgICAgICAgICAgICBsaW5rdG8gPSBvcy5yZWFkbGluayhzcmMpCisgICAgICAgICAgICBvcy5zeW1saW5rKGxpbmt0bywgcmVhbF9kc3QpCisgICAgICAgICAgICBvcy51bmxpbmsoc3JjKQorICAgICAgICBlbGlmIG9zLnBhdGguaXNkaXIoc3JjKToKICAgICAgICAgICAgIGlmIF9kZXN0aW5zcmMoc3JjLCBkc3QpOgogICAgICAgICAgICAgICAgIHJhaXNlIEVycm9yKCJDYW5ub3QgbW92ZSBhIGRpcmVjdG9yeSAnJXMnIGludG8gaXRzZWxmICclcycuIiAlIChzcmMsIGRzdCkpCiAgICAgICAgICAgICBjb3B5dHJlZShzcmMsIHJlYWxfZHN0LCBzeW1saW5rcz1UcnVlKQpAQCAtMzg5LDcgKzQ0OCw3IEBACiAgICAgICAgIGNvbXByZXNzX2V4dFsnYnppcDInXSA9ICcuYnoyJwogCiAgICAgIyBmbGFncyBmb3IgY29tcHJlc3Npb24gcHJvZ3JhbSwgZWFjaCBlbGVtZW50IG9mIGxpc3Qgd2lsbCBiZSBhbiBhcmd1bWVudAotICAgIGlmIGNvbXByZXNzIGlzIG5vdCBOb25lIGFuZCBjb21wcmVzcyBub3QgaW4gY29tcHJlc3NfZXh0LmtleXMoKToKKyAgICBpZiBjb21wcmVzcyBpcyBub3QgTm9uZSBhbmQgY29tcHJlc3Mgbm90IGluIGNvbXByZXNzX2V4dDoKICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiYmFkIHZhbHVlIGZvciAnY29tcHJlc3MnLCBvciBjb21wcmVzc2lvbiBmb3JtYXQgbm90ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAic3VwcG9ydGVkIDogezB9Ii5mb3JtYXQoY29tcHJlc3MpKQogCkBAIC00OTQsNyArNTUzLDcgQEAKIF9BUkNISVZFX0ZPUk1BVFMgPSB7CiAgICAgJ2d6dGFyJzogKF9tYWtlX3RhcmJhbGwsIFsoJ2NvbXByZXNzJywgJ2d6aXAnKV0sICJnemlwJ2VkIHRhci1maWxlIiksCiAgICAgJ3Rhcic6ICAgKF9tYWtlX3RhcmJhbGwsIFsoJ2NvbXByZXNzJywgTm9uZSldLCAidW5jb21wcmVzc2VkIHRhciBmaWxlIiksCi0gICAgJ3ppcCc6ICAgKF9tYWtlX3ppcGZpbGUsIFtdLCJaSVAgZmlsZSIpCisgICAgJ3ppcCc6ICAgKF9tYWtlX3ppcGZpbGUsIFtdLCAiWklQIGZpbGUiKQogICAgIH0KIAogaWYgX0JaMl9TVVBQT1JURUQ6CkBAIC01MjcsNyArNTg2LDcgQEAKICAgICBpZiBub3QgaXNpbnN0YW5jZShleHRyYV9hcmdzLCAodHVwbGUsIGxpc3QpKToKICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCdleHRyYV9hcmdzIG5lZWRzIHRvIGJlIGEgc2VxdWVuY2UnKQogICAgIGZvciBlbGVtZW50IGluIGV4dHJhX2FyZ3M6Ci0gICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKGVsZW1lbnQsICh0dXBsZSwgbGlzdCkpIG9yIGxlbihlbGVtZW50KSAhPTIgOgorICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShlbGVtZW50LCAodHVwbGUsIGxpc3QpKSBvciBsZW4oZWxlbWVudCkgIT0yOgogICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCdleHRyYV9hcmdzIGVsZW1lbnRzIGFyZSA6IChhcmdfbmFtZSwgdmFsdWUpJykKIAogICAgIF9BUkNISVZFX0ZPUk1BVFNbbmFtZV0gPSAoZnVuY3Rpb24sIGV4dHJhX2FyZ3MsIGRlc2NyaXB0aW9uKQpAQCAtNjc5LDcgKzczOCw3IEBACiAgICAgICAgICAgICBpZiBub3QgbmFtZS5lbmRzd2l0aCgnLycpOgogICAgICAgICAgICAgICAgICMgZmlsZQogICAgICAgICAgICAgICAgIGRhdGEgPSB6aXAucmVhZChpbmZvLmZpbGVuYW1lKQotICAgICAgICAgICAgICAgIGYgPSBvcGVuKHRhcmdldCwnd2InKQorICAgICAgICAgICAgICAgIGYgPSBvcGVuKHRhcmdldCwgJ3diJykKICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgIGYud3JpdGUoZGF0YSkKICAgICAgICAgICAgICAgICBmaW5hbGx5OgpAQCAtNzUzLDMgKzgxMiwxMTIgQEAKICAgICAgICAgZnVuYyA9IF9VTlBBQ0tfRk9STUFUU1tmb3JtYXRdWzFdCiAgICAgICAgIGt3YXJncyA9IGRpY3QoX1VOUEFDS19GT1JNQVRTW2Zvcm1hdF1bMl0pCiAgICAgICAgIGZ1bmMoZmlsZW5hbWUsIGV4dHJhY3RfZGlyLCAqKmt3YXJncykKKworCitpZiBoYXNhdHRyKG9zLCAnc3RhdHZmcycpOgorCisgICAgX19hbGxfXy5hcHBlbmQoJ2Rpc2tfdXNhZ2UnKQorICAgIF9udHVwbGVfZGlza3VzYWdlID0gY29sbGVjdGlvbnMubmFtZWR0dXBsZSgndXNhZ2UnLCAndG90YWwgdXNlZCBmcmVlJykKKworICAgIGRlZiBkaXNrX3VzYWdlKHBhdGgpOgorICAgICAgICAiIiJSZXR1cm4gZGlzayB1c2FnZSBzdGF0aXN0aWNzIGFib3V0IHRoZSBnaXZlbiBwYXRoLgorCisgICAgICAgIFJldHVybmVkIHZhbHVzIGlzIGEgbmFtZWQgdHVwbGUgd2l0aCBhdHRyaWJ1dGVzICd0b3RhbCcsICd1c2VkJyBhbmQKKyAgICAgICAgJ2ZyZWUnLCB3aGljaCBhcmUgdGhlIGFtb3VudCBvZiB0b3RhbCwgdXNlZCBhbmQgZnJlZSBzcGFjZSwgaW4gYnl0ZXMuCisgICAgICAgICIiIgorICAgICAgICBzdCA9IG9zLnN0YXR2ZnMocGF0aCkKKyAgICAgICAgZnJlZSA9IHN0LmZfYmF2YWlsICogc3QuZl9mcnNpemUKKyAgICAgICAgdG90YWwgPSBzdC5mX2Jsb2NrcyAqIHN0LmZfZnJzaXplCisgICAgICAgIHVzZWQgPSAoc3QuZl9ibG9ja3MgLSBzdC5mX2JmcmVlKSAqIHN0LmZfZnJzaXplCisgICAgICAgIHJldHVybiBfbnR1cGxlX2Rpc2t1c2FnZSh0b3RhbCwgdXNlZCwgZnJlZSkKKworZWxpZiBvcy5uYW1lID09ICdudCc6CisKKyAgICBpbXBvcnQgbnQKKyAgICBfX2FsbF9fLmFwcGVuZCgnZGlza191c2FnZScpCisgICAgX250dXBsZV9kaXNrdXNhZ2UgPSBjb2xsZWN0aW9ucy5uYW1lZHR1cGxlKCd1c2FnZScsICd0b3RhbCB1c2VkIGZyZWUnKQorCisgICAgZGVmIGRpc2tfdXNhZ2UocGF0aCk6CisgICAgICAgICIiIlJldHVybiBkaXNrIHVzYWdlIHN0YXRpc3RpY3MgYWJvdXQgdGhlIGdpdmVuIHBhdGguCisKKyAgICAgICAgUmV0dXJuZWQgdmFsdXMgaXMgYSBuYW1lZCB0dXBsZSB3aXRoIGF0dHJpYnV0ZXMgJ3RvdGFsJywgJ3VzZWQnIGFuZAorICAgICAgICAnZnJlZScsIHdoaWNoIGFyZSB0aGUgYW1vdW50IG9mIHRvdGFsLCB1c2VkIGFuZCBmcmVlIHNwYWNlLCBpbiBieXRlcy4KKyAgICAgICAgIiIiCisgICAgICAgIHRvdGFsLCBmcmVlID0gbnQuX2dldGRpc2t1c2FnZShwYXRoKQorICAgICAgICB1c2VkID0gdG90YWwgLSBmcmVlCisgICAgICAgIHJldHVybiBfbnR1cGxlX2Rpc2t1c2FnZSh0b3RhbCwgdXNlZCwgZnJlZSkKKworCitkZWYgY2hvd24ocGF0aCwgdXNlcj1Ob25lLCBncm91cD1Ob25lKToKKyAgICAiIiJDaGFuZ2Ugb3duZXIgdXNlciBhbmQgZ3JvdXAgb2YgdGhlIGdpdmVuIHBhdGguCisKKyAgICB1c2VyIGFuZCBncm91cCBjYW4gYmUgdGhlIHVpZC9naWQgb3IgdGhlIHVzZXIvZ3JvdXAgbmFtZXMsIGFuZCBpbiB0aGF0IGNhc2UsCisgICAgdGhleSBhcmUgY29udmVydGVkIHRvIHRoZWlyIHJlc3BlY3RpdmUgdWlkL2dpZC4KKyAgICAiIiIKKworICAgIGlmIHVzZXIgaXMgTm9uZSBhbmQgZ3JvdXAgaXMgTm9uZToKKyAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigidXNlciBhbmQvb3IgZ3JvdXAgbXVzdCBiZSBzZXQiKQorCisgICAgX3VzZXIgPSB1c2VyCisgICAgX2dyb3VwID0gZ3JvdXAKKworICAgICMgLTEgbWVhbnMgZG9uJ3QgY2hhbmdlIGl0CisgICAgaWYgdXNlciBpcyBOb25lOgorICAgICAgICBfdXNlciA9IC0xCisgICAgIyB1c2VyIGNhbiBlaXRoZXIgYmUgYW4gaW50ICh0aGUgdWlkKSBvciBhIHN0cmluZyAodGhlIHN5c3RlbSB1c2VybmFtZSkKKyAgICBlbGlmIGlzaW5zdGFuY2UodXNlciwgc3RyKToKKyAgICAgICAgX3VzZXIgPSBfZ2V0X3VpZCh1c2VyKQorICAgICAgICBpZiBfdXNlciBpcyBOb25lOgorICAgICAgICAgICAgcmFpc2UgTG9va3VwRXJyb3IoIm5vIHN1Y2ggdXNlcjogeyFyfSIuZm9ybWF0KHVzZXIpKQorCisgICAgaWYgZ3JvdXAgaXMgTm9uZToKKyAgICAgICAgX2dyb3VwID0gLTEKKyAgICBlbGlmIG5vdCBpc2luc3RhbmNlKGdyb3VwLCBpbnQpOgorICAgICAgICBfZ3JvdXAgPSBfZ2V0X2dpZChncm91cCkKKyAgICAgICAgaWYgX2dyb3VwIGlzIE5vbmU6CisgICAgICAgICAgICByYWlzZSBMb29rdXBFcnJvcigibm8gc3VjaCBncm91cDogeyFyfSIuZm9ybWF0KGdyb3VwKSkKKworICAgIG9zLmNob3duKHBhdGgsIF91c2VyLCBfZ3JvdXApCisKK2RlZiBnZXRfdGVybWluYWxfc2l6ZShmYWxsYmFjaz0oODAsIDI0KSk6CisgICAgIiIiR2V0IHRoZSBzaXplIG9mIHRoZSB0ZXJtaW5hbCB3aW5kb3cuCisKKyAgICBGb3IgZWFjaCBvZiB0aGUgdHdvIGRpbWVuc2lvbnMsIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSwgQ09MVU1OUworICAgIGFuZCBMSU5FUyByZXNwZWN0aXZlbHksIGlzIGNoZWNrZWQuIElmIHRoZSB2YXJpYWJsZSBpcyBkZWZpbmVkIGFuZAorICAgIHRoZSB2YWx1ZSBpcyBhIHBvc2l0aXZlIGludGVnZXIsIGl0IGlzIHVzZWQuCisKKyAgICBXaGVuIENPTFVNTlMgb3IgTElORVMgaXMgbm90IGRlZmluZWQsIHdoaWNoIGlzIHRoZSBjb21tb24gY2FzZSwKKyAgICB0aGUgdGVybWluYWwgY29ubmVjdGVkIHRvIHN5cy5fX3N0ZG91dF9fIGlzIHF1ZXJpZWQKKyAgICBieSBpbnZva2luZyBvcy5nZXRfdGVybWluYWxfc2l6ZS4KKworICAgIElmIHRoZSB0ZXJtaW5hbCBzaXplIGNhbm5vdCBiZSBzdWNjZXNzZnVsbHkgcXVlcmllZCwgZWl0aGVyIGJlY2F1c2UKKyAgICB0aGUgc3lzdGVtIGRvZXNuJ3Qgc3VwcG9ydCBxdWVyeWluZywgb3IgYmVjYXVzZSB3ZSBhcmUgbm90CisgICAgY29ubmVjdGVkIHRvIGEgdGVybWluYWwsIHRoZSB2YWx1ZSBnaXZlbiBpbiBmYWxsYmFjayBwYXJhbWV0ZXIKKyAgICBpcyB1c2VkLiBGYWxsYmFjayBkZWZhdWx0cyB0byAoODAsIDI0KSB3aGljaCBpcyB0aGUgZGVmYXVsdAorICAgIHNpemUgdXNlZCBieSBtYW55IHRlcm1pbmFsIGVtdWxhdG9ycy4KKworICAgIFRoZSB2YWx1ZSByZXR1cm5lZCBpcyBhIG5hbWVkIHR1cGxlIG9mIHR5cGUgb3MudGVybWluYWxfc2l6ZS4KKyAgICAiIiIKKyAgICAjIGNvbHVtbnMsIGxpbmVzIGFyZSB0aGUgd29ya2luZyB2YWx1ZXMKKyAgICB0cnk6CisgICAgICAgIGNvbHVtbnMgPSBpbnQob3MuZW52aXJvblsnQ09MVU1OUyddKQorICAgIGV4Y2VwdCAoS2V5RXJyb3IsIFZhbHVlRXJyb3IpOgorICAgICAgICBjb2x1bW5zID0gMAorCisgICAgdHJ5OgorICAgICAgICBsaW5lcyA9IGludChvcy5lbnZpcm9uWydMSU5FUyddKQorICAgIGV4Y2VwdCAoS2V5RXJyb3IsIFZhbHVlRXJyb3IpOgorICAgICAgICBsaW5lcyA9IDAKKworICAgICMgb25seSBxdWVyeSBpZiBuZWNlc3NhcnkKKyAgICBpZiBjb2x1bW5zIDw9IDAgb3IgbGluZXMgPD0gMDoKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2l6ZSA9IG9zLmdldF90ZXJtaW5hbF9zaXplKHN5cy5fX3N0ZG91dF9fLmZpbGVubygpKQorICAgICAgICBleGNlcHQgKE5hbWVFcnJvciwgT1NFcnJvcik6CisgICAgICAgICAgICBzaXplID0gb3MudGVybWluYWxfc2l6ZShmYWxsYmFjaykKKyAgICAgICAgaWYgY29sdW1ucyA8PSAwOgorICAgICAgICAgICAgY29sdW1ucyA9IHNpemUuY29sdW1ucworICAgICAgICBpZiBsaW5lcyA8PSAwOgorICAgICAgICAgICAgbGluZXMgPSBzaXplLmxpbmVzCisKKyAgICByZXR1cm4gb3MudGVybWluYWxfc2l6ZSgoY29sdW1ucywgbGluZXMpKQpkaWZmIC0tZ2l0IGEvTGliL3NpdGUucHkgYi9MaWIvc2l0ZS5weQppbmRleCBhMmMwYmVjLi5iODM0OThlIDEwMDY0NAotLS0gYS9MaWIvc2l0ZS5weQorKysgYi9MaWIvc2l0ZS5weQpAQCAtNTUsNyArNTUsNiBAQAogaW1wb3J0IHN5cwogaW1wb3J0IG9zCiBpbXBvcnQgYnVpbHRpbnMKLWltcG9ydCB0cmFjZWJhY2sKIAogIyBQcmVmaXhlcyBmb3Igc2l0ZS1wYWNrYWdlczsgYWRkIGFkZGl0aW9uYWwgcHJlZml4ZXMgbGlrZSAvdXNyL2xvY2FsIGhlcmUKIFBSRUZJWEVTID0gW3N5cy5wcmVmaXgsIHN5cy5leGVjX3ByZWZpeF0KQEAgLTEzOCw3ICsxMzcsNyBAQAogICAgICAgICByZXNldCA9IDAKICAgICBmdWxsbmFtZSA9IG9zLnBhdGguam9pbihzaXRlZGlyLCBuYW1lKQogICAgIHRyeToKLSAgICAgICAgZiA9IG9wZW4oZnVsbG5hbWUsICJyVSIpCisgICAgICAgIGYgPSBvcGVuKGZ1bGxuYW1lLCAiciIpCiAgICAgZXhjZXB0IElPRXJyb3I6CiAgICAgICAgIHJldHVybgogICAgIHdpdGggZjoKQEAgLTE1NCw5ICsxNTMsMTAgQEAKICAgICAgICAgICAgICAgICBpZiBub3QgZGlyY2FzZSBpbiBrbm93bl9wYXRocyBhbmQgb3MucGF0aC5leGlzdHMoZGlyKToKICAgICAgICAgICAgICAgICAgICAgc3lzLnBhdGguYXBwZW5kKGRpcikKICAgICAgICAgICAgICAgICAgICAga25vd25fcGF0aHMuYWRkKGRpcmNhc2UpCi0gICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGVycjoKKyAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb246CiAgICAgICAgICAgICAgICAgcHJpbnQoIkVycm9yIHByb2Nlc3NpbmcgbGluZSB7OmR9IG9mIHt9OlxuIi5mb3JtYXQobisxLCBmdWxsbmFtZSksCiAgICAgICAgICAgICAgICAgICAgICAgZmlsZT1zeXMuc3RkZXJyKQorICAgICAgICAgICAgICAgIGltcG9ydCB0cmFjZWJhY2sKICAgICAgICAgICAgICAgICBmb3IgcmVjb3JkIGluIHRyYWNlYmFjay5mb3JtYXRfZXhjZXB0aW9uKCpzeXMuZXhjX2luZm8oKSk6CiAgICAgICAgICAgICAgICAgICAgIGZvciBsaW5lIGluIHJlY29yZC5zcGxpdGxpbmVzKCk6CiAgICAgICAgICAgICAgICAgICAgICAgICBwcmludCgnICAnK2xpbmUsIGZpbGU9c3lzLnN0ZGVycikKQEAgLTI0MSw3ICsyNDEsNiBAQAogICAgICAgICByZXR1cm4gVVNFUl9TSVRFCiAKICAgICBmcm9tIHN5c2NvbmZpZyBpbXBvcnQgZ2V0X3BhdGgKLSAgICBpbXBvcnQgb3MKIAogICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnZGFyd2luJzoKICAgICAgICAgZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9jb25maWdfdmFyCkBAIC0zODUsNyArMzg0LDcgQEAKICAgICAgICAgICAgIGZvciBmaWxlbmFtZSBpbiBzZWxmLl9fZmlsZXM6CiAgICAgICAgICAgICAgICAgZmlsZW5hbWUgPSBvcy5wYXRoLmpvaW4oZGlyLCBmaWxlbmFtZSkKICAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgIGZwID0gb3BlbihmaWxlbmFtZSwgInJVIikKKyAgICAgICAgICAgICAgICAgICAgZnAgPSBvcGVuKGZpbGVuYW1lLCAiciIpCiAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBmcC5yZWFkKCkKICAgICAgICAgICAgICAgICAgICAgZnAuY2xvc2UoKQogICAgICAgICAgICAgICAgICAgICBicmVhawpAQCAtNTA4LDYgKzUwNywxMSBAQAogCiAKIGRlZiBtYWluKCk6CisgICAgIiIiQWRkIHN0YW5kYXJkIHNpdGUtc3BlY2lmaWMgZGlyZWN0b3JpZXMgdG8gdGhlIG1vZHVsZSBzZWFyY2ggcGF0aC4KKworICAgIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGlzIG1vZHVsZSBpcyBpbXBvcnRlZCwKKyAgICB1bmxlc3MgdGhlIHB5dGhvbiBpbnRlcnByZXRlciB3YXMgc3RhcnRlZCB3aXRoIHRoZSAtUyBmbGFnLgorICAgICIiIgogICAgIGdsb2JhbCBFTkFCTEVfVVNFUl9TSVRFCiAKICAgICBhYnNfcGF0aHMoKQpAQCAtNTI2LDcgKzUzMCwxMCBAQAogICAgIGlmIEVOQUJMRV9VU0VSX1NJVEU6CiAgICAgICAgIGV4ZWN1c2VyY3VzdG9taXplKCkKIAotbWFpbigpCisjIFByZXZlbnQgZWRpdGlvbiBvZiBzeXMucGF0aCB3aGVuIHB5dGhvbiB3YXMgc3RhcnRlZCB3aXRoIC1TIGFuZAorIyBzaXRlIGlzIGltcG9ydGVkIGxhdGVyLgoraWYgbm90IHN5cy5mbGFncy5ub19zaXRlOgorICAgIG1haW4oKQogCiBkZWYgX3NjcmlwdCgpOgogICAgIGhlbHAgPSAiIiJcCmRpZmYgLS1naXQgYS9MaWIvc210cGQucHkgYi9MaWIvc210cGQucHkKaW5kZXggOGNkNDA1Yy4uZDY2YjBkNyAxMDA3NTUKLS0tIGEvTGliL3NtdHBkLnB5CisrKyBiL0xpYi9zbXRwZC5weQpAQCAtMTQyLDEyMiArMTQyLDEyMiBAQAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX3NlcnZlcihzZWxmKToKICAgICAgICAgd2FybigiQWNjZXNzIHRvIF9fc2VydmVyIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAidXNlICdzbXRwX3NlcnZlcicgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdzbXRwX3NlcnZlcicgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgcmV0dXJuIHNlbGYuc210cF9zZXJ2ZXIKICAgICBAX19zZXJ2ZXIuc2V0dGVyCiAgICAgZGVmIF9fc2VydmVyKHNlbGYsIHZhbHVlKToKICAgICAgICAgd2FybigiU2V0dGluZyBfX3NlcnZlciBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInNldCAnc210cF9zZXJ2ZXInIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnc210cF9zZXJ2ZXInIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHNlbGYuc210cF9zZXJ2ZXIgPSB2YWx1ZQogCiAgICAgQHByb3BlcnR5CiAgICAgZGVmIF9fbGluZShzZWxmKToKICAgICAgICAgd2FybigiQWNjZXNzIHRvIF9fbGluZSBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAncmVjZWl2ZWRfbGluZXMnIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInVzZSAncmVjZWl2ZWRfbGluZXMnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHJldHVybiBzZWxmLnJlY2VpdmVkX2xpbmVzCiAgICAgQF9fbGluZS5zZXR0ZXIKICAgICBkZWYgX19saW5lKHNlbGYsIHZhbHVlKToKICAgICAgICAgd2FybigiU2V0dGluZyBfX2xpbmUgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ3JlY2VpdmVkX2xpbmVzJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJzZXQgJ3JlY2VpdmVkX2xpbmVzJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBzZWxmLnJlY2VpdmVkX2xpbmVzID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX3N0YXRlKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19zdGF0ZSBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnc210cF9zdGF0ZScgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdzbXRwX3N0YXRlJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICByZXR1cm4gc2VsZi5zbXRwX3N0YXRlCiAgICAgQF9fc3RhdGUuc2V0dGVyCiAgICAgZGVmIF9fc3RhdGUoc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fc3RhdGUgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ3NtdHBfc3RhdGUnIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnc210cF9zdGF0ZScgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc2VsZi5zbXRwX3N0YXRlID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX2dyZWV0aW5nKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19ncmVldGluZyBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnc2Vlbl9ncmVldGluZycgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdzZWVuX2dyZWV0aW5nJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICByZXR1cm4gc2VsZi5zZWVuX2dyZWV0aW5nCiAgICAgQF9fZ3JlZXRpbmcuc2V0dGVyCiAgICAgZGVmIF9fZ3JlZXRpbmcoc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fZ3JlZXRpbmcgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ3NlZW5fZ3JlZXRpbmcnIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnc2Vlbl9ncmVldGluZycgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc2VsZi5zZWVuX2dyZWV0aW5nID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX21haWxmcm9tKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19tYWlsZnJvbSBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnbWFpbGZyb20nIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInVzZSAnbWFpbGZyb20nIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHJldHVybiBzZWxmLm1haWxmcm9tCiAgICAgQF9fbWFpbGZyb20uc2V0dGVyCiAgICAgZGVmIF9fbWFpbGZyb20oc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fbWFpbGZyb20gYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ21haWxmcm9tJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJzZXQgJ21haWxmcm9tJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBzZWxmLm1haWxmcm9tID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX3JjcHR0b3Moc2VsZik6CiAgICAgICAgIHdhcm4oIkFjY2VzcyB0byBfX3JjcHR0b3MgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJ1c2UgJ3JjcHR0b3MnIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInVzZSAncmNwdHRvcycgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgcmV0dXJuIHNlbGYucmNwdHRvcwogICAgIEBfX3JjcHR0b3Muc2V0dGVyCiAgICAgZGVmIF9fcmNwdHRvcyhzZWxmLCB2YWx1ZSk6CiAgICAgICAgIHdhcm4oIlNldHRpbmcgX19yY3B0dG9zIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAic2V0ICdyY3B0dG9zJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJzZXQgJ3JjcHR0b3MnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHNlbGYucmNwdHRvcyA9IHZhbHVlCiAKICAgICBAcHJvcGVydHkKICAgICBkZWYgX19kYXRhKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19kYXRhIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAidXNlICdyZWNlaXZlZF9kYXRhJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJ1c2UgJ3JlY2VpdmVkX2RhdGEnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHJldHVybiBzZWxmLnJlY2VpdmVkX2RhdGEKICAgICBAX19kYXRhLnNldHRlcgogICAgIGRlZiBfX2RhdGEoc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fZGF0YSBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInNldCAncmVjZWl2ZWRfZGF0YScgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAic2V0ICdyZWNlaXZlZF9kYXRhJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBzZWxmLnJlY2VpdmVkX2RhdGEgPSB2YWx1ZQogCiAgICAgQHByb3BlcnR5CiAgICAgZGVmIF9fZnFkbihzZWxmKToKICAgICAgICAgd2FybigiQWNjZXNzIHRvIF9fZnFkbiBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnZnFkbicgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdmcWRuJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICByZXR1cm4gc2VsZi5mcWRuCiAgICAgQF9fZnFkbi5zZXR0ZXIKICAgICBkZWYgX19mcWRuKHNlbGYsIHZhbHVlKToKICAgICAgICAgd2FybigiU2V0dGluZyBfX2ZxZG4gYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ2ZxZG4nIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnZnFkbicgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc2VsZi5mcWRuID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX3BlZXIoc2VsZik6CiAgICAgICAgIHdhcm4oIkFjY2VzcyB0byBfX3BlZXIgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJ1c2UgJ3BlZXInIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInVzZSAncGVlcicgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgcmV0dXJuIHNlbGYucGVlcgogICAgIEBfX3BlZXIuc2V0dGVyCiAgICAgZGVmIF9fcGVlcihzZWxmLCB2YWx1ZSk6CiAgICAgICAgIHdhcm4oIlNldHRpbmcgX19wZWVyIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAic2V0ICdwZWVyJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJzZXQgJ3BlZXInIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHNlbGYucGVlciA9IHZhbHVlCiAKICAgICBAcHJvcGVydHkKICAgICBkZWYgX19jb25uKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19jb25uIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAidXNlICdjb25uJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJ1c2UgJ2Nvbm4nIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHJldHVybiBzZWxmLmNvbm4KICAgICBAX19jb25uLnNldHRlcgogICAgIGRlZiBfX2Nvbm4oc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fY29ubiBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInNldCAnY29ubicgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAic2V0ICdjb25uJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBzZWxmLmNvbm4gPSB2YWx1ZQogCiAgICAgQHByb3BlcnR5CiAgICAgZGVmIF9fYWRkcihzZWxmKToKICAgICAgICAgd2FybigiQWNjZXNzIHRvIF9fYWRkciBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnYWRkcicgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdhZGRyJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICByZXR1cm4gc2VsZi5hZGRyCiAgICAgQF9fYWRkci5zZXR0ZXIKICAgICBkZWYgX19hZGRyKHNlbGYsIHZhbHVlKToKICAgICAgICAgd2FybigiU2V0dGluZyBfX2FkZHIgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ2FkZHInIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnYWRkcicgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc2VsZi5hZGRyID0gdmFsdWUKIAogICAgICMgT3ZlcnJpZGVzIGJhc2UgY2xhc3MgZm9yIGNvbnZlbmllbmNlCkBAIC0yNzUsNyArMjc1LDcgQEAKICAgICAgICAgICAgIHJldHVybgogICAgICAgICBlbGlmIGxpbWl0OgogICAgICAgICAgICAgc2VsZi5udW1fYnl0ZXMgKz0gbGVuKGRhdGEpCi0gICAgICAgIHNlbGYucmVjZWl2ZWRfbGluZXMuYXBwZW5kKHN0cihkYXRhLCAidXRmOCIpKQorICAgICAgICBzZWxmLnJlY2VpdmVkX2xpbmVzLmFwcGVuZChzdHIoZGF0YSwgInV0Zi04IikpCiAKICAgICAjIEltcGxlbWVudGF0aW9uIG9mIGJhc2UgY2xhc3MgYWJzdHJhY3QgbWV0aG9kCiAgICAgZGVmIGZvdW5kX3Rlcm1pbmF0b3Ioc2VsZik6CmRpZmYgLS1naXQgYS9MaWIvc210cGxpYi5weSBiL0xpYi9zbXRwbGliLnB5CmluZGV4IGZiZWY5NmUuLmQzN2IwZTIgMTAwNjQ0Ci0tLSBhL0xpYi9zbXRwbGliLnB5CisrKyBiL0xpYi9zbXRwbGliLnB5CkBAIC0xMzMsMjQgKzEzMywxOCBAQAogICAgIGNvbWJpbmF0aW9uIHByb3ZpZGVkLgogICAgICIiIgogCi1kZWYgcXVvdGVhZGRyKGFkZHIpOgorZGVmIHF1b3RlYWRkcihhZGRyc3RyaW5nKToKICAgICAiIiJRdW90ZSBhIHN1YnNldCBvZiB0aGUgZW1haWwgYWRkcmVzc2VzIGRlZmluZWQgYnkgUkZDIDgyMS4KIAogICAgIFNob3VsZCBiZSBhYmxlIHRvIGhhbmRsZSBhbnl0aGluZyBlbWFpbC51dGlscy5wYXJzZWFkZHIgY2FuIGhhbmRsZS4KICAgICAiIiIKLSAgICBtID0gKE5vbmUsIE5vbmUpCi0gICAgdHJ5OgotICAgICAgICBtID0gZW1haWwudXRpbHMucGFyc2VhZGRyKGFkZHIpWzFdCi0gICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgotICAgICAgICBwYXNzCi0gICAgaWYgbSA9PSAoTm9uZSwgTm9uZSk6ICAjIEluZGljYXRlcyBwYXJzZSBmYWlsdXJlIG9yIEF0dHJpYnV0ZUVycm9yCi0gICAgICAgICMgc29tZXRoaW5nIHdlaXJkIGhlcmUuLiBwdW50IC1kZG0KLSAgICAgICAgcmV0dXJuICI8JXM+IiAlIGFkZHIKLSAgICBlbGlmIG0gaXMgTm9uZToKLSAgICAgICAgIyB0aGUgc2VuZGVyIHdhbnRzIGFuIGVtcHR5IHJldHVybiBhZGRyZXNzCi0gICAgICAgIHJldHVybiAiPD4iCi0gICAgZWxzZToKLSAgICAgICAgcmV0dXJuICI8JXM+IiAlIG0KKyAgICBkaXNwbGF5bmFtZSwgYWRkciA9IGVtYWlsLnV0aWxzLnBhcnNlYWRkcihhZGRyc3RyaW5nKQorICAgIGlmIChkaXNwbGF5bmFtZSwgYWRkcikgPT0gKCcnLCAnJyk6CisgICAgICAgICMgcGFyc2VhZGRyIGNvdWxkbid0IHBhcnNlIGl0LCB1c2UgaXQgYXMgaXMgYW5kIGhvcGUgZm9yIHRoZSBiZXN0LgorICAgICAgICBpZiBhZGRyc3RyaW5nLnN0cmlwKCkuc3RhcnRzd2l0aCgnPCcpOgorICAgICAgICAgICAgcmV0dXJuIGFkZHJzdHJpbmcKKyAgICAgICAgcmV0dXJuICI8JXM+IiAlIGFkZHJzdHJpbmcKKyAgICByZXR1cm4gIjwlcz4iICUgYWRkcgogCiBkZWYgX2FkZHJfb25seShhZGRyc3RyaW5nKToKICAgICBkaXNwbGF5bmFtZSwgYWRkciA9IGVtYWlsLnV0aWxzLnBhcnNlYWRkcihhZGRyc3RyaW5nKQpAQCAtMTgwLDI3ICsxNzQsNiBAQAogZXhjZXB0IEltcG9ydEVycm9yOgogICAgIF9oYXZlX3NzbCA9IEZhbHNlCiBlbHNlOgotICAgIGNsYXNzIFNTTEZha2VGaWxlOgotICAgICAgICAiIiJBIGZha2UgZmlsZSBsaWtlIG9iamVjdCB0aGF0IHJlYWxseSB3cmFwcyBhIFNTTE9iamVjdC4KLQotICAgICAgICBJdCBvbmx5IHN1cHBvcnRzIHdoYXQgaXMgbmVlZGVkIGluIHNtdHBsaWIuCi0gICAgICAgICIiIgotICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgc3Nsb2JqKToKLSAgICAgICAgICAgIHNlbGYuc3Nsb2JqID0gc3Nsb2JqCi0KLSAgICAgICAgZGVmIHJlYWRsaW5lKHNlbGYpOgotICAgICAgICAgICAgc3RyID0gYiIiCi0gICAgICAgICAgICBjaHIgPSBOb25lCi0gICAgICAgICAgICB3aGlsZSBjaHIgIT0gYiJcbiI6Ci0gICAgICAgICAgICAgICAgY2hyID0gc2VsZi5zc2xvYmoucmVhZCgxKQotICAgICAgICAgICAgICAgIGlmIG5vdCBjaHI6Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgc3RyICs9IGNocgotICAgICAgICAgICAgcmV0dXJuIHN0cgotCi0gICAgICAgIGRlZiBjbG9zZShzZWxmKToKLSAgICAgICAgICAgIHBhc3MKLQogICAgIF9oYXZlX3NzbCA9IFRydWUKIAogCkBAIC0yNDIsNyArMjE1LDggQEAKICAgICBkZWZhdWx0X3BvcnQgPSBTTVRQX1BPUlQKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBob3N0PScnLCBwb3J0PTAsIGxvY2FsX2hvc3RuYW1lPU5vbmUsCi0gICAgICAgICAgICAgICAgIHRpbWVvdXQ9c29ja2V0Ll9HTE9CQUxfREVGQVVMVF9USU1FT1VUKToKKyAgICAgICAgICAgICAgICAgdGltZW91dD1zb2NrZXQuX0dMT0JBTF9ERUZBVUxUX1RJTUVPVVQsCisgICAgICAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAiIiJJbml0aWFsaXplIGEgbmV3IGluc3RhbmNlLgogCiAgICAgICAgIElmIHNwZWNpZmllZCwgYGhvc3QnIGlzIHRoZSBuYW1lIG9mIHRoZSByZW1vdGUgaG9zdCB0byB3aGljaCB0bwpAQCAtMjUwLDExICsyMjQsMTYgQEAKICAgICAgICAgQnkgZGVmYXVsdCwgc210cGxpYi5TTVRQX1BPUlQgaXMgdXNlZC4gIEFuIFNNVFBDb25uZWN0RXJyb3IgaXMgcmFpc2VkCiAgICAgICAgIGlmIHRoZSBzcGVjaWZpZWQgYGhvc3QnIGRvZXNuJ3QgcmVzcG9uZCBjb3JyZWN0bHkuICBJZiBzcGVjaWZpZWQsCiAgICAgICAgIGBsb2NhbF9ob3N0bmFtZWAgaXMgdXNlZCBhcyB0aGUgRlFETiBvZiB0aGUgbG9jYWwgaG9zdC4gIEJ5IGRlZmF1bHQsCi0gICAgICAgIHRoZSBsb2NhbCBob3N0bmFtZSBpcyBmb3VuZCB1c2luZyBzb2NrZXQuZ2V0ZnFkbigpLgorICAgICAgICB0aGUgbG9jYWwgaG9zdG5hbWUgaXMgZm91bmQgdXNpbmcgc29ja2V0LmdldGZxZG4oKS4gVGhlCisgICAgICAgIGBzb3VyY2VfYWRkcmVzc2AgcGFyYW1ldGVyIHRha2VzIGEgMi10dXBsZSAoaG9zdCwgcG9ydCkgZm9yIHRoZSBzb2NrZXQKKyAgICAgICAgdG8gYmluZCB0byBhcyBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlIGNvbm5lY3RpbmcuIElmIHRoZSBob3N0IGlzICcnCisgICAgICAgIGFuZCBwb3J0IGlzIDAsIHRoZSBPUyBkZWZhdWx0IGJlaGF2aW9yIHdpbGwgYmUgdXNlZC4KIAogICAgICAgICAiIiIKICAgICAgICAgc2VsZi50aW1lb3V0ID0gdGltZW91dAogICAgICAgICBzZWxmLmVzbXRwX2ZlYXR1cmVzID0ge30KKyAgICAgICAgc2VsZi5zb3VyY2VfYWRkcmVzcyA9IHNvdXJjZV9hZGRyZXNzCisKICAgICAgICAgaWYgaG9zdDoKICAgICAgICAgICAgIChjb2RlLCBtc2cpID0gc2VsZi5jb25uZWN0KGhvc3QsIHBvcnQpCiAgICAgICAgICAgICBpZiBjb2RlICE9IDIyMDoKQEAgLTI3Nyw2ICsyNTYsMTkgQEAKICAgICAgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICAgICAgICAgIHNlbGYubG9jYWxfaG9zdG5hbWUgPSAnWyVzXScgJSBhZGRyCiAKKyAgICBkZWYgX19lbnRlcl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZgorCisgICAgZGVmIF9fZXhpdF9fKHNlbGYsICphcmdzKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY29kZSwgbWVzc2FnZSA9IHNlbGYuZG9jbWQoIlFVSVQiKQorICAgICAgICAgICAgaWYgY29kZSAhPSAyMjE6CisgICAgICAgICAgICAgICAgcmFpc2UgU01UUFJlc3BvbnNlRXhjZXB0aW9uKGNvZGUsIG1lc3NhZ2UpCisgICAgICAgIGV4Y2VwdCBTTVRQU2VydmVyRGlzY29ubmVjdGVkOgorICAgICAgICAgICAgcGFzcworICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VsZi5jbG9zZSgpCisKICAgICBkZWYgc2V0X2RlYnVnbGV2ZWwoc2VsZiwgZGVidWdsZXZlbCk6CiAgICAgICAgICIiIlNldCB0aGUgZGVidWcgb3V0cHV0IGxldmVsLgogCkBAIC0yOTAsMTAgKzI4MiwxMiBAQAogICAgICAgICAjIFRoaXMgbWFrZXMgaXQgc2ltcGxlciBmb3IgU01UUF9TU0wgdG8gdXNlIHRoZSBTTVRQIGNvbm5lY3QgY29kZQogICAgICAgICAjIGFuZCBqdXN0IGFsdGVyIHRoZSBzb2NrZXQgY29ubmVjdGlvbiBiaXQuCiAgICAgICAgIGlmIHNlbGYuZGVidWdsZXZlbCA+IDA6Ci0gICAgICAgICAgICBwcmludCgnY29ubmVjdDonLCAoaG9zdCwgcG9ydCksIGZpbGU9c3RkZXJyKQotICAgICAgICByZXR1cm4gc29ja2V0LmNyZWF0ZV9jb25uZWN0aW9uKChob3N0LCBwb3J0KSwgdGltZW91dCkKKyAgICAgICAgICAgIHByaW50KCdjb25uZWN0OiB0bycsIChob3N0LCBwb3J0KSwgc2VsZi5zb3VyY2VfYWRkcmVzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGU9c3RkZXJyKQorICAgICAgICByZXR1cm4gc29ja2V0LmNyZWF0ZV9jb25uZWN0aW9uKChob3N0LCBwb3J0KSwgdGltZW91dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnNvdXJjZV9hZGRyZXNzKQogCi0gICAgZGVmIGNvbm5lY3Qoc2VsZiwgaG9zdD0nbG9jYWxob3N0JywgcG9ydD0wKToKKyAgICBkZWYgY29ubmVjdChzZWxmLCBob3N0PSdsb2NhbGhvc3QnLCBwb3J0PTAsIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAiIiJDb25uZWN0IHRvIGEgaG9zdCBvbiBhIGdpdmVuIHBvcnQuCiAKICAgICAgICAgSWYgdGhlIGhvc3RuYW1lIGVuZHMgd2l0aCBhIGNvbG9uIChgOicpIGZvbGxvd2VkIGJ5IGEgbnVtYmVyLCBhbmQKQEAgLTMwNCw2ICsyOTgsMTAgQEAKICAgICAgICAgc3BlY2lmaWVkIGR1cmluZyBpbnN0YW50aWF0aW9uLgogCiAgICAgICAgICIiIgorCisgICAgICAgIGlmIHNvdXJjZV9hZGRyZXNzOgorICAgICAgICAgICAgc2VsZi5zb3VyY2VfYWRkcmVzcyA9IHNvdXJjZV9hZGRyZXNzCisKICAgICAgICAgaWYgbm90IHBvcnQgYW5kIChob3N0LmZpbmQoJzonKSA9PSBob3N0LnJmaW5kKCc6JykpOgogICAgICAgICAgICAgaSA9IGhvc3QucmZpbmQoJzonKQogICAgICAgICAgICAgaWYgaSA+PSAwOgpAQCAtMzE3LDYgKzMxNSw3IEBACiAgICAgICAgIGlmIHNlbGYuZGVidWdsZXZlbCA+IDA6CiAgICAgICAgICAgICBwcmludCgnY29ubmVjdDonLCAoaG9zdCwgcG9ydCksIGZpbGU9c3RkZXJyKQogICAgICAgICBzZWxmLnNvY2sgPSBzZWxmLl9nZXRfc29ja2V0KGhvc3QsIHBvcnQsIHNlbGYudGltZW91dCkKKyAgICAgICAgc2VsZi5maWxlID0gTm9uZQogICAgICAgICAoY29kZSwgbXNnKSA9IHNlbGYuZ2V0cmVwbHkoKQogICAgICAgICBpZiBzZWxmLmRlYnVnbGV2ZWwgPiAwOgogICAgICAgICAgICAgcHJpbnQoImNvbm5lY3Q6IiwgbXNnLCBmaWxlPXN0ZGVycikKQEAgLTM4OCw3ICszODcsOCBAQAogCiAgICAgICAgIGVycm1zZyA9IGIiXG4iLmpvaW4ocmVzcCkKICAgICAgICAgaWYgc2VsZi5kZWJ1Z2xldmVsID4gMDoKLSAgICAgICAgICAgIHByaW50KCdyZXBseTogcmV0Y29kZSAoJXMpOyBNc2c6ICVzJyAlIChlcnJjb2RlLCBlcnJtc2cpLCBmaWxlPXN0ZGVycikKKyAgICAgICAgICAgIHByaW50KCdyZXBseTogcmV0Y29kZSAoJXMpOyBNc2c6ICVzJyAlIChlcnJjb2RlLCBlcnJtc2cpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGU9c3RkZXJyKQogICAgICAgICByZXR1cm4gZXJyY29kZSwgZXJybXNnCiAKICAgICBkZWYgZG9jbWQoc2VsZiwgY21kLCBhcmdzPSIiKToKQEAgLTYzMiw3ICs2MzIsNyBAQAogICAgICAgICAjIFdlIGNvdWxkIG5vdCBsb2dpbiBzdWNlc3NmdWxseS4gUmV0dXJuIHJlc3VsdCBvZiBsYXN0IGF0dGVtcHQuCiAgICAgICAgIHJhaXNlIFNNVFBBdXRoZW50aWNhdGlvbkVycm9yKGNvZGUsIHJlc3ApCiAKLSAgICBkZWYgc3RhcnR0bHMoc2VsZiwga2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lKToKKyAgICBkZWYgc3RhcnR0bHMoc2VsZiwga2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lLCBjb250ZXh0PU5vbmUpOgogICAgICAgICAiIiJQdXRzIHRoZSBjb25uZWN0aW9uIHRvIHRoZSBTTVRQIHNlcnZlciBpbnRvIFRMUyBtb2RlLgogCiAgICAgICAgIElmIHRoZXJlIGhhcyBiZWVuIG5vIHByZXZpb3VzIEVITE8gb3IgSEVMTyBjb21tYW5kIHRoaXMgc2Vzc2lvbiwgdGhpcwpAQCAtNjU2LDggKzY1NiwxNyBAQAogICAgICAgICBpZiByZXNwID09IDIyMDoKICAgICAgICAgICAgIGlmIG5vdCBfaGF2ZV9zc2w6CiAgICAgICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJObyBTU0wgc3VwcG9ydCBpbmNsdWRlZCBpbiB0aGlzIFB5dGhvbiIpCi0gICAgICAgICAgICBzZWxmLnNvY2sgPSBzc2wud3JhcF9zb2NrZXQoc2VsZi5zb2NrLCBrZXlmaWxlLCBjZXJ0ZmlsZSkKLSAgICAgICAgICAgIHNlbGYuZmlsZSA9IFNTTEZha2VGaWxlKHNlbGYuc29jaykKKyAgICAgICAgICAgIGlmIGNvbnRleHQgaXMgbm90IE5vbmUgYW5kIGtleWZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY29udGV4dCBhbmQga2V5ZmlsZSBhcmd1bWVudHMgYXJlIG11dHVhbGx5ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleGNsdXNpdmUiKQorICAgICAgICAgICAgaWYgY29udGV4dCBpcyBub3QgTm9uZSBhbmQgY2VydGZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY29udGV4dCBhbmQgY2VydGZpbGUgYXJndW1lbnRzIGFyZSBtdXR1YWxseSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhjbHVzaXZlIikKKyAgICAgICAgICAgIGlmIGNvbnRleHQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5zb2NrID0gY29udGV4dC53cmFwX3NvY2tldChzZWxmLnNvY2spCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuc29jayA9IHNzbC53cmFwX3NvY2tldChzZWxmLnNvY2ssIGtleWZpbGUsIGNlcnRmaWxlKQorICAgICAgICAgICAgc2VsZi5maWxlID0gTm9uZQogICAgICAgICAgICAgIyBSRkMgMzIwNzoKICAgICAgICAgICAgICMgVGhlIGNsaWVudCBNVVNUIGRpc2NhcmQgYW55IGtub3dsZWRnZSBvYnRhaW5lZCBmcm9tCiAgICAgICAgICAgICAjIHRoZSBzZXJ2ZXIsIHN1Y2ggYXMgdGhlIGxpc3Qgb2YgU01UUCBzZXJ2aWNlIGV4dGVuc2lvbnMsCkBAIC03ODYsNyArNzk1LDggQEAKICAgICAgICAgIyBUT0RPIGltcGxlbWVudCBoZXVyaXN0aWNzIHRvIGd1ZXNzIHRoZSBjb3JyZWN0IFJlc2VudC0qIGJsb2NrIHdpdGggYW4KICAgICAgICAgIyBvcHRpb24gYWxsb3dpbmcgdGhlIHVzZXIgdG8gZW5hYmxlIHRoZSBoZXVyaXN0aWNzLiAgKEl0IHNob3VsZCBiZQogICAgICAgICAjIHBvc3NpYmxlIHRvIGd1ZXNzIGNvcnJlY3RseSBhbG1vc3QgYWxsIG9mIHRoZSB0aW1lLikKLSAgICAgICAgcmVzZW50ID1tc2cuZ2V0X2FsbCgnUmVzZW50LURhdGUnKQorCisgICAgICAgIHJlc2VudCA9IG1zZy5nZXRfYWxsKCdSZXNlbnQtRGF0ZScpCiAgICAgICAgIGlmIHJlc2VudCBpcyBOb25lOgogICAgICAgICAgICAgaGVhZGVyX3ByZWZpeCA9ICcnCiAgICAgICAgIGVsaWYgbGVuKHJlc2VudCkgPT0gMToKQEAgLTc5NSwxMyArODA1LDEzIEBACiAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJtZXNzYWdlIGhhcyBtb3JlIHRoYW4gb25lICdSZXNlbnQtJyBoZWFkZXIgYmxvY2siKQogICAgICAgICBpZiBmcm9tX2FkZHIgaXMgTm9uZToKICAgICAgICAgICAgICMgUHJlZmVyIHRoZSBzZW5kZXIgZmllbGQgcGVyIFJGQyAyODIyOjMuNi4yLgotICAgICAgICAgICAgZnJvbV9hZGRyID0gKG1zZ1toZWFkZXJfcHJlZml4KydTZW5kZXInXQotICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGhlYWRlcl9wcmVmaXgrJ1NlbmRlcicpIGluIG1zZwotICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBtc2dbaGVhZGVyX3ByZWZpeCsnRnJvbSddKQorICAgICAgICAgICAgZnJvbV9hZGRyID0gKG1zZ1toZWFkZXJfcHJlZml4ICsgJ1NlbmRlciddCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGVhZGVyX3ByZWZpeCArICdTZW5kZXInKSBpbiBtc2cKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgbXNnW2hlYWRlcl9wcmVmaXggKyAnRnJvbSddKQogICAgICAgICBpZiB0b19hZGRycyBpcyBOb25lOgotICAgICAgICAgICAgYWRkcl9maWVsZHMgPSBbZiBmb3IgZiBpbiAobXNnW2hlYWRlcl9wcmVmaXgrJ1RvJ10sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2dbaGVhZGVyX3ByZWZpeCsnQmNjJ10sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2dbaGVhZGVyX3ByZWZpeCsnQ2MnXSkgaWYgZiBpcyBub3QgTm9uZV0KKyAgICAgICAgICAgIGFkZHJfZmllbGRzID0gW2YgZm9yIGYgaW4gKG1zZ1toZWFkZXJfcHJlZml4ICsgJ1RvJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2dbaGVhZGVyX3ByZWZpeCArICdCY2MnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZ1toZWFkZXJfcHJlZml4ICsgJ0NjJ10pIGlmIGYgaXMgbm90IE5vbmVdCiAgICAgICAgICAgICB0b19hZGRycyA9IFthWzFdIGZvciBhIGluIGVtYWlsLnV0aWxzLmdldGFkZHJlc3NlcyhhZGRyX2ZpZWxkcyldCiAgICAgICAgICMgTWFrZSBhIGxvY2FsIGNvcHkgc28gd2UgY2FuIGRlbGV0ZSB0aGUgYmNjIGhlYWRlcnMuCiAgICAgICAgIG1zZ19jb3B5ID0gY29weS5jb3B5KG1zZykKQEAgLTgzNSwyNiArODQ1LDQxIEBACiAgICAgICAgICIiIiBUaGlzIGlzIGEgc3ViY2xhc3MgZGVyaXZlZCBmcm9tIFNNVFAgdGhhdCBjb25uZWN0cyBvdmVyIGFuIFNTTCBlbmNyeXB0ZWQKICAgICAgICAgc29ja2V0ICh0byB1c2UgdGhpcyBjbGFzcyB5b3UgbmVlZCBhIHNvY2tldCBtb2R1bGUgdGhhdCB3YXMgY29tcGlsZWQgd2l0aCBTU0wKICAgICAgICAgc3VwcG9ydCkuIElmIGhvc3QgaXMgbm90IHNwZWNpZmllZCwgJycgKHRoZSBsb2NhbCBob3N0KSBpcyB1c2VkLiBJZiBwb3J0IGlzCi0gICAgICAgIG9taXR0ZWQsIHRoZSBzdGFuZGFyZCBTTVRQLW92ZXItU1NMIHBvcnQgKDQ2NSkgaXMgdXNlZC4ga2V5ZmlsZSBhbmQgY2VydGZpbGUKKyAgICAgICAgb21pdHRlZCwgdGhlIHN0YW5kYXJkIFNNVFAtb3Zlci1TU0wgcG9ydCAoNDY1KSBpcyB1c2VkLiBUaGUgb3B0aW9uYWwKKyAgICAgICAgc291cmNlX2FkZHJlc3MgdGFrZXMgYSB0d28tdHVwbGUgKGhvc3QscG9ydCkgZm9yIHNvY2tldCB0byBiaW5kIHRvLiBrZXlmaWxlIGFuZCBjZXJ0ZmlsZQogICAgICAgICBhcmUgYWxzbyBvcHRpb25hbCAtIHRoZXkgY2FuIGNvbnRhaW4gYSBQRU0gZm9ybWF0dGVkIHByaXZhdGUga2V5IGFuZAotICAgICAgICBjZXJ0aWZpY2F0ZSBjaGFpbiBmaWxlIGZvciB0aGUgU1NMIGNvbm5lY3Rpb24uCisgICAgICAgIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgZm9yIHRoZSBTU0wgY29ubmVjdGlvbi4gY29udGV4dCBhbHNvIG9wdGlvbmFsLCBjYW4gY29udGFpbgorICAgICAgICBhIFNTTENvbnRleHQsIGFuZCBpcyBhbiBhbHRlcm5hdGl2ZSB0byBrZXlmaWxlIGFuZCBjZXJ0ZmlsZTsgSWYgaXQgaXMgc3BlY2lmaWVkIGJvdGgKKyAgICAgICAga2V5ZmlsZSBhbmQgY2VydGZpbGUgbXVzdCBiZSBOb25lLgogICAgICAgICAiIiIKIAogICAgICAgICBkZWZhdWx0X3BvcnQgPSBTTVRQX1NTTF9QT1JUCiAKICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGhvc3Q9JycsIHBvcnQ9MCwgbG9jYWxfaG9zdG5hbWU9Tm9uZSwKICAgICAgICAgICAgICAgICAgICAgIGtleWZpbGU9Tm9uZSwgY2VydGZpbGU9Tm9uZSwKLSAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9c29ja2V0Ll9HTE9CQUxfREVGQVVMVF9USU1FT1VUKToKKyAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9c29ja2V0Ll9HTE9CQUxfREVGQVVMVF9USU1FT1VULAorICAgICAgICAgICAgICAgICAgICAgc291cmNlX2FkZHJlc3M9Tm9uZSwgY29udGV4dD1Ob25lKToKKyAgICAgICAgICAgIGlmIGNvbnRleHQgaXMgbm90IE5vbmUgYW5kIGtleWZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY29udGV4dCBhbmQga2V5ZmlsZSBhcmd1bWVudHMgYXJlIG11dHVhbGx5ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleGNsdXNpdmUiKQorICAgICAgICAgICAgaWYgY29udGV4dCBpcyBub3QgTm9uZSBhbmQgY2VydGZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY29udGV4dCBhbmQgY2VydGZpbGUgYXJndW1lbnRzIGFyZSBtdXR1YWxseSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhjbHVzaXZlIikKICAgICAgICAgICAgIHNlbGYua2V5ZmlsZSA9IGtleWZpbGUKICAgICAgICAgICAgIHNlbGYuY2VydGZpbGUgPSBjZXJ0ZmlsZQotICAgICAgICAgICAgU01UUC5fX2luaXRfXyhzZWxmLCBob3N0LCBwb3J0LCBsb2NhbF9ob3N0bmFtZSwgdGltZW91dCkKKyAgICAgICAgICAgIHNlbGYuY29udGV4dCA9IGNvbnRleHQKKyAgICAgICAgICAgIFNNVFAuX19pbml0X18oc2VsZiwgaG9zdCwgcG9ydCwgbG9jYWxfaG9zdG5hbWUsIHRpbWVvdXQsCisgICAgICAgICAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzKQogCiAgICAgICAgIGRlZiBfZ2V0X3NvY2tldChzZWxmLCBob3N0LCBwb3J0LCB0aW1lb3V0KToKICAgICAgICAgICAgIGlmIHNlbGYuZGVidWdsZXZlbCA+IDA6CiAgICAgICAgICAgICAgICAgcHJpbnQoJ2Nvbm5lY3Q6JywgKGhvc3QsIHBvcnQpLCBmaWxlPXN0ZGVycikKLSAgICAgICAgICAgIG5ld19zb2NrZXQgPSBzb2NrZXQuY3JlYXRlX2Nvbm5lY3Rpb24oKGhvc3QsIHBvcnQpLCB0aW1lb3V0KQotICAgICAgICAgICAgbmV3X3NvY2tldCA9IHNzbC53cmFwX3NvY2tldChuZXdfc29ja2V0LCBzZWxmLmtleWZpbGUsIHNlbGYuY2VydGZpbGUpCi0gICAgICAgICAgICBzZWxmLmZpbGUgPSBTU0xGYWtlRmlsZShuZXdfc29ja2V0KQorICAgICAgICAgICAgbmV3X3NvY2tldCA9IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoaG9zdCwgcG9ydCksIHRpbWVvdXQsCisgICAgICAgICAgICAgICAgICAgIHNlbGYuc291cmNlX2FkZHJlc3MpCisgICAgICAgICAgICBpZiBzZWxmLmNvbnRleHQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgbmV3X3NvY2tldCA9IHNlbGYuY29udGV4dC53cmFwX3NvY2tldChuZXdfc29ja2V0KQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBuZXdfc29ja2V0ID0gc3NsLndyYXBfc29ja2V0KG5ld19zb2NrZXQsIHNlbGYua2V5ZmlsZSwgc2VsZi5jZXJ0ZmlsZSkKICAgICAgICAgICAgIHJldHVybiBuZXdfc29ja2V0CiAKICAgICBfX2FsbF9fLmFwcGVuZCgiU01UUF9TU0wiKQpAQCAtODc5LDE4ICs5MDQsMjEgQEAKIAogICAgIGVobG9fbXNnID0gImxobG8iCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdD0nJywgcG9ydD1MTVRQX1BPUlQsIGxvY2FsX2hvc3RuYW1lPU5vbmUpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBob3N0PScnLCBwb3J0PUxNVFBfUE9SVCwgbG9jYWxfaG9zdG5hbWU9Tm9uZSwKKyAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAiIiJJbml0aWFsaXplIGEgbmV3IGluc3RhbmNlLiIiIgotICAgICAgICBTTVRQLl9faW5pdF9fKHNlbGYsIGhvc3QsIHBvcnQsIGxvY2FsX2hvc3RuYW1lKQorICAgICAgICBTTVRQLl9faW5pdF9fKHNlbGYsIGhvc3QsIHBvcnQsIGxvY2FsX2hvc3RuYW1lPWxvY2FsX2hvc3RuYW1lLAorICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzPXNvdXJjZV9hZGRyZXNzKQogCi0gICAgZGVmIGNvbm5lY3Qoc2VsZiwgaG9zdD0nbG9jYWxob3N0JywgcG9ydD0wKToKKyAgICBkZWYgY29ubmVjdChzZWxmLCBob3N0PSdsb2NhbGhvc3QnLCBwb3J0PTAsIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAiIiJDb25uZWN0IHRvIHRoZSBMTVRQIGRhZW1vbiwgb24gZWl0aGVyIGEgVW5peCBvciBhIFRDUCBzb2NrZXQuIiIiCiAgICAgICAgIGlmIGhvc3RbMF0gIT0gJy8nOgotICAgICAgICAgICAgcmV0dXJuIFNNVFAuY29ubmVjdChzZWxmLCBob3N0LCBwb3J0KQorICAgICAgICAgICAgcmV0dXJuIFNNVFAuY29ubmVjdChzZWxmLCBob3N0LCBwb3J0LCBzb3VyY2VfYWRkcmVzcz1zb3VyY2VfYWRkcmVzcykKIAogICAgICAgICAjIEhhbmRsZSBVbml4LWRvbWFpbiBzb2NrZXRzLgogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzZWxmLnNvY2sgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9VTklYLCBzb2NrZXQuU09DS19TVFJFQU0pCisgICAgICAgICAgICBzZWxmLmZpbGUgPSBOb25lCiAgICAgICAgICAgICBzZWxmLnNvY2suY29ubmVjdChob3N0KQogICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIG1zZzoKICAgICAgICAgICAgIGlmIHNlbGYuZGVidWdsZXZlbCA+IDA6CmRpZmYgLS1naXQgYS9MaWIvc29ja2V0LnB5IGIvTGliL3NvY2tldC5weQppbmRleCAxZTI4NTQ5Li5iMjk1NGI1IDEwMDY0NAotLS0gYS9MaWIvc29ja2V0LnB5CisrKyBiL0xpYi9zb2NrZXQucHkKQEAgLTUzLDcgKzUzLDYgQEAKIGV4Y2VwdCBJbXBvcnRFcnJvcjoKICAgICBlcnJubyA9IE5vbmUKIEVCQURGID0gZ2V0YXR0cihlcnJubywgJ0VCQURGJywgOSkKLUVJTlRSID0gZ2V0YXR0cihlcnJubywgJ0VJTlRSJywgNCkKIEVBR0FJTiA9IGdldGF0dHIoZXJybm8sICdFQUdBSU4nLCAxMSkKIEVXT1VMREJMT0NLID0gZ2V0YXR0cihlcnJubywgJ0VXT1VMREJMT0NLJywgMTEpCiAKQEAgLTExMiw2ICsxMTEsOSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzWzc6XSkKICAgICAgICAgcmV0dXJuIHMKIAorICAgIGRlZiBfX2dldHN0YXRlX18oc2VsZik6CisgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBzb2NrZXQgb2JqZWN0IikKKwogICAgIGRlZiBkdXAoc2VsZik6CiAgICAgICAgICIiImR1cCgpIC0+IHNvY2tldCBvYmplY3QKIApAQCAtMjc3LDExICsyNzksMTAgQEAKICAgICAgICAgICAgIGV4Y2VwdCB0aW1lb3V0OgogICAgICAgICAgICAgICAgIHNlbGYuX3RpbWVvdXRfb2NjdXJyZWQgPSBUcnVlCiAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgIGV4Y2VwdCBJbnRlcnJ1cHRlZEVycm9yOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgICAgICBleGNlcHQgZXJyb3IgYXMgZToKLSAgICAgICAgICAgICAgICBuID0gZS5hcmdzWzBdCi0gICAgICAgICAgICAgICAgaWYgbiA9PSBFSU5UUjoKLSAgICAgICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgICAgICBpZiBuIGluIF9ibG9ja2luZ19lcnJub3M6CisgICAgICAgICAgICAgICAgaWYgZS5hcmdzWzBdIGluIF9ibG9ja2luZ19lcnJub3M6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCiAgICAgICAgICAgICAgICAgcmFpc2UKIApkaWZmIC0tZ2l0IGEvTGliL3NvY2tldHNlcnZlci5weSBiL0xpYi9zb2NrZXRzZXJ2ZXIucHkKaW5kZXggY2QzNjdmMS4uYTQ4N2U2MyAxMDA2NDQKLS0tIGEvTGliL3NvY2tldHNlcnZlci5weQorKysgYi9MaWIvc29ja2V0c2VydmVyLnB5CkBAIC0xNzAsNiArMTcwLDcgQEAKICAgICAtIHByb2Nlc3NfcmVxdWVzdChyZXF1ZXN0LCBjbGllbnRfYWRkcmVzcykKICAgICAtIHNodXRkb3duX3JlcXVlc3QocmVxdWVzdCkKICAgICAtIGNsb3NlX3JlcXVlc3QocmVxdWVzdCkKKyAgICAtIHNlcnZpY2VfYWN0aW9ucygpCiAgICAgLSBoYW5kbGVfZXJyb3IoKQogCiAgICAgTWV0aG9kcyBmb3IgZGVyaXZlZCBjbGFzc2VzOgpAQCAtMjI1LDYgKzIyNiw4IEBACiAgICAgICAgICAgICAgICAgciwgdywgZSA9IHNlbGVjdC5zZWxlY3QoW3NlbGZdLCBbXSwgW10sIHBvbGxfaW50ZXJ2YWwpCiAgICAgICAgICAgICAgICAgaWYgc2VsZiBpbiByOgogICAgICAgICAgICAgICAgICAgICBzZWxmLl9oYW5kbGVfcmVxdWVzdF9ub2Jsb2NrKCkKKworICAgICAgICAgICAgICAgIHNlbGYuc2VydmljZV9hY3Rpb25zKCkKICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIHNlbGYuX19zaHV0ZG93bl9yZXF1ZXN0ID0gRmFsc2UKICAgICAgICAgICAgIHNlbGYuX19pc19zaHV0X2Rvd24uc2V0KCkKQEAgLTIzOSw2ICsyNDIsMTQgQEAKICAgICAgICAgc2VsZi5fX3NodXRkb3duX3JlcXVlc3QgPSBUcnVlCiAgICAgICAgIHNlbGYuX19pc19zaHV0X2Rvd24ud2FpdCgpCiAKKyAgICBkZWYgc2VydmljZV9hY3Rpb25zKHNlbGYpOgorICAgICAgICAiIiJDYWxsZWQgYnkgdGhlIHNlcnZlX2ZvcmV2ZXIoKSBsb29wLgorCisgICAgICAgIE1heSBiZSBvdmVycmlkZGVuIGJ5IGEgc3ViY2xhc3MgLyBNaXhpbiB0byBpbXBsZW1lbnQgYW55IGNvZGUgdGhhdAorICAgICAgICBuZWVkcyB0byBiZSBydW4gZHVyaW5nIHRoZSBsb29wLgorICAgICAgICAiIiIKKyAgICAgICAgcGFzcworCiAgICAgIyBUaGUgZGlzdGluY3Rpb24gYmV0d2VlbiBoYW5kbGluZywgZ2V0dGluZywgcHJvY2Vzc2luZyBhbmQKICAgICAjIGZpbmlzaGluZyBhIHJlcXVlc3QgaXMgZmFpcmx5IGFyYml0cmFyeS4gIFJlbWVtYmVyOgogICAgICMKQEAgLTUzOSw5ICs1NTAsMTUgQEAKICAgICAgICAgIiIiCiAgICAgICAgIHNlbGYuY29sbGVjdF9jaGlsZHJlbigpCiAKKyAgICBkZWYgc2VydmljZV9hY3Rpb25zKHNlbGYpOgorICAgICAgICAiIiJDb2xsZWN0IHRoZSB6b21iaWUgY2hpbGQgcHJvY2Vzc2VzIHJlZ3VsYXJseSBpbiB0aGUgRm9ya2luZ01peGluLgorCisgICAgICAgIHNlcnZpY2VfYWN0aW9ucyBpcyBjYWxsZWQgaW4gdGhlIEJhc2VTZXJ2ZXIncyBzZXJ2ZV9mb3J2ZXIgbG9vcC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuY29sbGVjdF9jaGlsZHJlbigpCisKICAgICBkZWYgcHJvY2Vzc19yZXF1ZXN0KHNlbGYsIHJlcXVlc3QsIGNsaWVudF9hZGRyZXNzKToKICAgICAgICAgIiIiRm9yayBhIG5ldyBzdWJwcm9jZXNzIHRvIHByb2Nlc3MgdGhlIHJlcXVlc3QuIiIiCi0gICAgICAgIHNlbGYuY29sbGVjdF9jaGlsZHJlbigpCiAgICAgICAgIHBpZCA9IG9zLmZvcmsoKQogICAgICAgICBpZiBwaWQ6CiAgICAgICAgICAgICAjIFBhcmVudCBwcm9jZXNzCkBAIC01NDksNiArNTY2LDcgQEAKICAgICAgICAgICAgICAgICBzZWxmLmFjdGl2ZV9jaGlsZHJlbiA9IFtdCiAgICAgICAgICAgICBzZWxmLmFjdGl2ZV9jaGlsZHJlbi5hcHBlbmQocGlkKQogICAgICAgICAgICAgc2VsZi5jbG9zZV9yZXF1ZXN0KHJlcXVlc3QpCisgICAgICAgICAgICByZXR1cm4KICAgICAgICAgZWxzZToKICAgICAgICAgICAgICMgQ2hpbGQgcHJvY2Vzcy4KICAgICAgICAgICAgICMgVGhpcyBtdXN0IG5ldmVyIHJldHVybiwgaGVuY2Ugb3MuX2V4aXQoKSEKZGlmZiAtLWdpdCBhL0xpYi9zcWxpdGUzL3Rlc3QvZGJhcGkucHkgYi9MaWIvc3FsaXRlMy90ZXN0L2RiYXBpLnB5CmluZGV4IDIwMmJkMzguLmI3ZWMxYWQgMTAwNjQ0Ci0tLSBhL0xpYi9zcWxpdGUzL3Rlc3QvZGJhcGkucHkKKysrIGIvTGliL3NxbGl0ZTMvdGVzdC9kYmFwaS5weQpAQCAtMSw0ICsxLDQgQEAKLSMtKi0gY29kaW5nOiBJU08tODg1OS0xIC0qLQorIy0qLSBjb2Rpbmc6IGlzby04ODU5LTEgLSotCiAjIHB5c3FsaXRlMi90ZXN0L2RiYXBpLnB5OiB0ZXN0cyBmb3IgREItQVBJIGNvbXBsaWFuY2UKICMKICMgQ29weXJpZ2h0IChDKSAyMDA0LTIwMTAgR2VyaGFyZCBI5HJpbmcgPGdoQGdoYWVyaW5nLmRlPgpkaWZmIC0tZ2l0IGEvTGliL3NxbGl0ZTMvdGVzdC9mYWN0b3J5LnB5IGIvTGliL3NxbGl0ZTMvdGVzdC9mYWN0b3J5LnB5CmluZGV4IDdmNmYzNDcuLjllODMzYWUgMTAwNjQ0Ci0tLSBhL0xpYi9zcWxpdGUzL3Rlc3QvZmFjdG9yeS5weQorKysgYi9MaWIvc3FsaXRlMy90ZXN0L2ZhY3RvcnkucHkKQEAgLTEsNCArMSw0IEBACi0jLSotIGNvZGluZzogSVNPLTg4NTktMSAtKi0KKyMtKi0gY29kaW5nOiBpc28tODg1OS0xIC0qLQogIyBweXNxbGl0ZTIvdGVzdC9mYWN0b3J5LnB5OiB0ZXN0cyBmb3IgdGhlIHZhcmlvdXMgZmFjdG9yaWVzIGluIHB5c3FsaXRlCiAjCiAjIENvcHlyaWdodCAoQykgMjAwNS0yMDA3IEdlcmhhcmQgSORyaW5nIDxnaEBnaGFlcmluZy5kZT4KQEAgLTE3OCw2ICsxNzgsOCBAQAogICAgICAgICBzZWxmLmFzc2VydFRydWUocm93WzBdLmVuZHN3aXRoKCJyZWljaCIpLCAiY29sdW1uIG11c3QgY29udGFpbiBvcmlnaW5hbCBkYXRhIikKIAogICAgIGRlZiBDaGVja09wdGltaXplZFVuaWNvZGUoc2VsZik6CisgICAgICAgICMgSW4gcHkzaywgc3RyIG9iamVjdHMgYXJlIGFsd2F5cyByZXR1cm5lZCB3aGVuIHRleHRfZmFjdG9yeQorICAgICAgICAjIGlzIE9wdGltaXplZFVuaWNvZGUKICAgICAgICAgc2VsZi5jb24udGV4dF9mYWN0b3J5ID0gc3FsaXRlLk9wdGltaXplZFVuaWNvZGUKICAgICAgICAgYXVzdHJpYSA9ICLWc3RlcnJlaWNoIgogICAgICAgICBnZXJtYW55ID0gIkRldXRjaGxhbmQiCmRpZmYgLS1naXQgYS9MaWIvc3FsaXRlMy90ZXN0L2hvb2tzLnB5IGIvTGliL3NxbGl0ZTMvdGVzdC9ob29rcy5weQppbmRleCBhOTJlODM4Li4zZGM0NGY2IDEwMDY0NAotLS0gYS9MaWIvc3FsaXRlMy90ZXN0L2hvb2tzLnB5CisrKyBiL0xpYi9zcWxpdGUzL3Rlc3QvaG9va3MucHkKQEAgLTEsNCArMSw0IEBACi0jLSotIGNvZGluZzogSVNPLTg4NTktMSAtKi0KKyMtKi0gY29kaW5nOiBpc28tODg1OS0xIC0qLQogIyBweXNxbGl0ZTIvdGVzdC9ob29rcy5weTogdGVzdHMgZm9yIHZhcmlvdXMgU1FMaXRlLXNwZWNpZmljIGhvb2tzCiAjCiAjIENvcHlyaWdodCAoQykgMjAwNi0yMDA3IEdlcmhhcmQgSORyaW5nIDxnaEBnaGFlcmluZy5kZT4KQEAgLTE3NiwxMCArMTc2LDYwIEBACiAgICAgICAgIGNvbi5leGVjdXRlKCJzZWxlY3QgMSB1bmlvbiBzZWxlY3QgMiB1bmlvbiBzZWxlY3QgMyIpLmZldGNoYWxsKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhY3Rpb24sIDAsICJwcm9ncmVzcyBoYW5kbGVyIHdhcyBub3QgY2xlYXJlZCIpCiAKK2NsYXNzIFRyYWNlQ2FsbGJhY2tUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIENoZWNrVHJhY2VDYWxsYmFja1VzZWQoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IHRoYXQgdGhlIHRyYWNlIGNhbGxiYWNrIGlzIGludm9rZWQgb25jZSBpdCBpcyBzZXQuCisgICAgICAgICIiIgorICAgICAgICBjb24gPSBzcWxpdGUuY29ubmVjdCgiOm1lbW9yeToiKQorICAgICAgICB0cmFjZWRfc3RhdGVtZW50cyA9IFtdCisgICAgICAgIGRlZiB0cmFjZShzdGF0ZW1lbnQpOgorICAgICAgICAgICAgdHJhY2VkX3N0YXRlbWVudHMuYXBwZW5kKHN0YXRlbWVudCkKKyAgICAgICAgY29uLnNldF90cmFjZV9jYWxsYmFjayh0cmFjZSkKKyAgICAgICAgY29uLmV4ZWN1dGUoImNyZWF0ZSB0YWJsZSBmb28oYSwgYikiKQorICAgICAgICBzZWxmLmFzc2VydFRydWUodHJhY2VkX3N0YXRlbWVudHMpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShhbnkoImNyZWF0ZSB0YWJsZSBmb28iIGluIHN0bXQgZm9yIHN0bXQgaW4gdHJhY2VkX3N0YXRlbWVudHMpKQorCisgICAgZGVmIENoZWNrQ2xlYXJUcmFjZUNhbGxiYWNrKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCB0aGF0IHNldHRpbmcgdGhlIHRyYWNlIGNhbGxiYWNrIHRvIE5vbmUgY2xlYXJzIHRoZSBwcmV2aW91c2x5IHNldCBjYWxsYmFjay4KKyAgICAgICAgIiIiCisgICAgICAgIGNvbiA9IHNxbGl0ZS5jb25uZWN0KCI6bWVtb3J5OiIpCisgICAgICAgIHRyYWNlZF9zdGF0ZW1lbnRzID0gW10KKyAgICAgICAgZGVmIHRyYWNlKHN0YXRlbWVudCk6CisgICAgICAgICAgICB0cmFjZWRfc3RhdGVtZW50cy5hcHBlbmQoc3RhdGVtZW50KQorICAgICAgICBjb24uc2V0X3RyYWNlX2NhbGxiYWNrKHRyYWNlKQorICAgICAgICBjb24uc2V0X3RyYWNlX2NhbGxiYWNrKE5vbmUpCisgICAgICAgIGNvbi5leGVjdXRlKCJjcmVhdGUgdGFibGUgZm9vKGEsIGIpIikKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh0cmFjZWRfc3RhdGVtZW50cywgInRyYWNlIGNhbGxiYWNrIHdhcyBub3QgY2xlYXJlZCIpCisKKyAgICBkZWYgQ2hlY2tVbmljb2RlQ29udGVudChzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgdGhhdCB0aGUgc3RhdGVtZW50IGNhbiBjb250YWluIHVuaWNvZGUgbGl0ZXJhbHMuCisgICAgICAgICIiIgorICAgICAgICB1bmljb2RlX3ZhbHVlID0gJ1x4ZjZceGU0XHhmY1x4ZDZceGM0XHhkY1x4ZGZcdTIwYWMnCisgICAgICAgIGNvbiA9IHNxbGl0ZS5jb25uZWN0KCI6bWVtb3J5OiIpCisgICAgICAgIHRyYWNlZF9zdGF0ZW1lbnRzID0gW10KKyAgICAgICAgZGVmIHRyYWNlKHN0YXRlbWVudCk6CisgICAgICAgICAgICB0cmFjZWRfc3RhdGVtZW50cy5hcHBlbmQoc3RhdGVtZW50KQorICAgICAgICBjb24uc2V0X3RyYWNlX2NhbGxiYWNrKHRyYWNlKQorICAgICAgICBjb24uZXhlY3V0ZSgiY3JlYXRlIHRhYmxlIGZvbyh4KSIpCisgICAgICAgICMgQ2FuJ3QgZXhlY3V0ZSBib3VuZCBwYXJhbWV0ZXJzIGFzIHRoZWlyIHZhbHVlcyBkb24ndCBhcHBlYXIKKyAgICAgICAgIyBpbiB0cmFjZWQgc3RhdGVtZW50cyBiZWZvcmUgU1FMaXRlIDMuNi4yMQorICAgICAgICAjIChjZi4gaHR0cDovL3d3dy5zcWxpdGUub3JnL2RyYWZ0L3JlbGVhc2Vsb2cvM182XzIxLmh0bWwpCisgICAgICAgIGNvbi5leGVjdXRlKCdpbnNlcnQgaW50byBmb28oeCkgdmFsdWVzICgiJXMiKScgJSB1bmljb2RlX3ZhbHVlKQorICAgICAgICBjb24uY29tbWl0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGFueSh1bmljb2RlX3ZhbHVlIGluIHN0bXQgZm9yIHN0bXQgaW4gdHJhY2VkX3N0YXRlbWVudHMpLAorICAgICAgICAgICAgICAgICAgICAgICAgIlVuaWNvZGUgZGF0YSAlcyBnYXJibGVkIGluIHRyYWNlIGNhbGxiYWNrOiAlcyIKKyAgICAgICAgICAgICAgICAgICAgICAgICUgKGFzY2lpKHVuaWNvZGVfdmFsdWUpLCAnLCAnLmpvaW4obWFwKGFzY2lpLCB0cmFjZWRfc3RhdGVtZW50cykpKSkKKworCisKIGRlZiBzdWl0ZSgpOgogICAgIGNvbGxhdGlvbl9zdWl0ZSA9IHVuaXR0ZXN0Lm1ha2VTdWl0ZShDb2xsYXRpb25UZXN0cywgIkNoZWNrIikKICAgICBwcm9ncmVzc19zdWl0ZSA9IHVuaXR0ZXN0Lm1ha2VTdWl0ZShQcm9ncmVzc1Rlc3RzLCAiQ2hlY2siKQotICAgIHJldHVybiB1bml0dGVzdC5UZXN0U3VpdGUoKGNvbGxhdGlvbl9zdWl0ZSwgcHJvZ3Jlc3Nfc3VpdGUpKQorICAgIHRyYWNlX3N1aXRlID0gdW5pdHRlc3QubWFrZVN1aXRlKFRyYWNlQ2FsbGJhY2tUZXN0cywgIkNoZWNrIikKKyAgICByZXR1cm4gdW5pdHRlc3QuVGVzdFN1aXRlKChjb2xsYXRpb25fc3VpdGUsIHByb2dyZXNzX3N1aXRlLCB0cmFjZV9zdWl0ZSkpCiAKIGRlZiB0ZXN0KCk6CiAgICAgcnVubmVyID0gdW5pdHRlc3QuVGV4dFRlc3RSdW5uZXIoKQpkaWZmIC0tZ2l0IGEvTGliL3NxbGl0ZTMvdGVzdC9yZWdyZXNzaW9uLnB5IGIvTGliL3NxbGl0ZTMvdGVzdC9yZWdyZXNzaW9uLnB5CmluZGV4IGM3NTUxZTMuLjlkN2IyNzYgMTAwNjQ0Ci0tLSBhL0xpYi9zcWxpdGUzL3Rlc3QvcmVncmVzc2lvbi5weQorKysgYi9MaWIvc3FsaXRlMy90ZXN0L3JlZ3Jlc3Npb24ucHkKQEAgLTEsNCArMSw0IEBACi0jLSotIGNvZGluZzogSVNPLTg4NTktMSAtKi0KKyMtKi0gY29kaW5nOiBpc28tODg1OS0xIC0qLQogIyBweXNxbGl0ZTIvdGVzdC9yZWdyZXNzaW9uLnB5OiBweXNxbGl0ZSByZWdyZXNzaW9uIHRlc3RzCiAjCiAjIENvcHlyaWdodCAoQykgMjAwNi0yMDEwIEdlcmhhcmQgSORyaW5nIDxnaEBnaGFlcmluZy5kZT4KZGlmZiAtLWdpdCBhL0xpYi9zcWxpdGUzL3Rlc3QvdHJhbnNhY3Rpb25zLnB5IGIvTGliL3NxbGl0ZTMvdGVzdC90cmFuc2FjdGlvbnMucHkKaW5kZXggNzBlOTZhMS4uZmViNGZhMSAxMDA2NDQKLS0tIGEvTGliL3NxbGl0ZTMvdGVzdC90cmFuc2FjdGlvbnMucHkKKysrIGIvTGliL3NxbGl0ZTMvdGVzdC90cmFuc2FjdGlvbnMucHkKQEAgLTEsNCArMSw0IEBACi0jLSotIGNvZGluZzogSVNPLTg4NTktMSAtKi0KKyMtKi0gY29kaW5nOiBpc28tODg1OS0xIC0qLQogIyBweXNxbGl0ZTIvdGVzdC90cmFuc2FjdGlvbnMucHk6IHRlc3RzIHRyYW5zYWN0aW9ucwogIwogIyBDb3B5cmlnaHQgKEMpIDIwMDUtMjAwNyBHZXJoYXJkIEjkcmluZyA8Z2hAZ2hhZXJpbmcuZGU+CmRpZmYgLS1naXQgYS9MaWIvc3FsaXRlMy90ZXN0L3R5cGVzLnB5IGIvTGliL3NxbGl0ZTMvdGVzdC90eXBlcy5weQppbmRleCAyOTQxM2UxLi4zYjRjYjZkIDEwMDY0NAotLS0gYS9MaWIvc3FsaXRlMy90ZXN0L3R5cGVzLnB5CisrKyBiL0xpYi9zcWxpdGUzL3Rlc3QvdHlwZXMucHkKQEAgLTEsNCArMSw0IEBACi0jLSotIGNvZGluZzogSVNPLTg4NTktMSAtKi0KKyMtKi0gY29kaW5nOiBpc28tODg1OS0xIC0qLQogIyBweXNxbGl0ZTIvdGVzdC90eXBlcy5weTogdGVzdHMgZm9yIHR5cGUgY29udmVyc2lvbiBhbmQgZGV0ZWN0aW9uCiAjCiAjIENvcHlyaWdodCAoQykgMjAwNSBHZXJoYXJkIEjkcmluZyA8Z2hAZ2hhZXJpbmcuZGU+CkBAIC04NSw3ICs4NSw3IEBACiAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKF92YWwsIGJ5dGVzKToKICAgICAgICAgICAgICAgICAjIHNxbGl0ZTMgYWx3YXlzIGNhbGxzIF9faW5pdF9fIHdpdGggYSBieXRlcyBjcmVhdGVkIGZyb20gYQogICAgICAgICAgICAgICAgICMgVVRGLTggc3RyaW5nIHdoZW4gX19jb25mb3JtX18gd2FzIHVzZWQgdG8gc3RvcmUgdGhlIG9iamVjdC4KLSAgICAgICAgICAgICAgICBfdmFsID0gX3ZhbC5kZWNvZGUoJ3V0ZjgnKQorICAgICAgICAgICAgICAgIF92YWwgPSBfdmFsLmRlY29kZSgndXRmLTgnKQogICAgICAgICAgICAgc2VsZi52YWwgPSBfdmFsCiAKICAgICAgICAgZGVmIF9fY21wX18oc2VsZiwgb3RoZXIpOgpkaWZmIC0tZ2l0IGEvTGliL3NxbGl0ZTMvdGVzdC91c2VyZnVuY3Rpb25zLnB5IGIvTGliL3NxbGl0ZTMvdGVzdC91c2VyZnVuY3Rpb25zLnB5CmluZGV4IGUwMTM0MWUuLjE0ZjZiNjUgMTAwNjQ0Ci0tLSBhL0xpYi9zcWxpdGUzL3Rlc3QvdXNlcmZ1bmN0aW9ucy5weQorKysgYi9MaWIvc3FsaXRlMy90ZXN0L3VzZXJmdW5jdGlvbnMucHkKQEAgLTEsNCArMSw0IEBACi0jLSotIGNvZGluZzogSVNPLTg4NTktMSAtKi0KKyMtKi0gY29kaW5nOiBpc28tODg1OS0xIC0qLQogIyBweXNxbGl0ZTIvdGVzdC91c2VyZnVuY3Rpb25zLnB5OiB0ZXN0cyBmb3IgdXNlci1kZWZpbmVkIGZ1bmN0aW9ucyBhbmQKICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWdncmVnYXRlcy4KICMKZGlmZiAtLWdpdCBhL0xpYi9zcmVfY29tcGlsZS5weSBiL0xpYi9zcmVfY29tcGlsZS5weQppbmRleCBmNTJlYTAxLi43NWYzYTA5IDEwMDY0NAotLS0gYS9MaWIvc3JlX2NvbXBpbGUucHkKKysrIGIvTGliL3NyZV9jb21waWxlLnB5CkBAIC0zMTgsMTEgKzMxOCwxMyBAQAogICAgICAgICAgICAgICAgICMgWFhYOiBjb3VsZCBleHBhbmQgY2F0ZWdvcnkKICAgICAgICAgICAgICAgICByZXR1cm4gY2hhcnNldCAjIGNhbm5vdCBjb21wcmVzcwogICAgIGV4Y2VwdCBJbmRleEVycm9yOgotICAgICAgICAjIG5vbi1CTVAgY2hhcmFjdGVycworICAgICAgICAjIG5vbi1CTVAgY2hhcmFjdGVyczsgWFhYIG5vdyB0aGV5IHNob3VsZCB3b3JrCiAgICAgICAgIHJldHVybiBjaGFyc2V0CiAgICAgaWYgbmVnYXRlOgogICAgICAgICBpZiBzeXMubWF4dW5pY29kZSAhPSA2NTUzNToKICAgICAgICAgICAgICMgWFhYOiBuZWdhdGlvbiBkb2VzIG5vdCB3b3JrIHdpdGggYmlnIGNoYXJzZXRzCisgICAgICAgICAgICAjIFhYWDI6IG5vdyB0aGV5IHNob3VsZCB3b3JrLCBidXQgcmVtb3ZpbmcgdGhpcyB3aWxsIG1ha2UgdGhlCisgICAgICAgICAgICAjIGNoYXJtYXAgMTcgdGltZXMgYmlnZ2VyCiAgICAgICAgICAgICByZXR1cm4gY2hhcnNldAogICAgICAgICBmb3IgaSBpbiByYW5nZSg2NTUzNik6CiAgICAgICAgICAgICBjaGFybWFwW2ldID0gbm90IGNoYXJtYXBbaV0KZGlmZiAtLWdpdCBhL0xpYi9zcmVfcGFyc2UucHkgYi9MaWIvc3JlX3BhcnNlLnB5CmluZGV4IDEzNzM3Y2EuLmFlNjNjMzEgMTAwNjQ0Ci0tLSBhL0xpYi9zcmVfcGFyc2UucHkKKysrIGIvTGliL3NyZV9wYXJzZS5weQpAQCAtNzkxLDcgKzc5MSw3IEBACiAgICAgZWxzZToKICAgICAgICAgIyBUaGUgdG9rZW5pemVyIGltcGxpY2l0bHkgZGVjb2RlcyBieXRlcyBvYmplY3RzIGFzIGxhdGluLTEsIHdlIG11c3QKICAgICAgICAgIyB0aGVyZWZvcmUgcmUtZW5jb2RlIHRoZSBmaW5hbCByZXByZXNlbnRhdGlvbi4KLSAgICAgICAgZW5jb2RlID0gbGFtYmRhIHg6IHguZW5jb2RlKCdsYXRpbjEnKQorICAgICAgICBlbmNvZGUgPSBsYW1iZGEgeDogeC5lbmNvZGUoJ2xhdGluLTEnKQogICAgIGZvciBjLCBzIGluIHA6CiAgICAgICAgIGlmIGMgaXMgTUFSSzoKICAgICAgICAgICAgIGdyb3Vwc2FwcGVuZCgoaSwgcykpCmRpZmYgLS1naXQgYS9MaWIvc3NsLnB5IGIvTGliL3NzbC5weQppbmRleCA4MTM3MjMxLi5lODk5MDU5IDEwMDY0NAotLS0gYS9MaWIvc3NsLnB5CisrKyBiL0xpYi9zc2wucHkKQEAgLTYwLDEwICs2MCwyNSBAQAogaW1wb3J0IF9zc2wgICAgICAgICAgICAgIyBpZiB3ZSBjYW4ndCBpbXBvcnQgaXQsIGxldCB0aGUgZXJyb3IgcHJvcGFnYXRlCiAKIGZyb20gX3NzbCBpbXBvcnQgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiwgT1BFTlNTTF9WRVJTSU9OX0lORk8sIE9QRU5TU0xfVkVSU0lPTgotZnJvbSBfc3NsIGltcG9ydCBfU1NMQ29udGV4dCwgU1NMRXJyb3IKK2Zyb20gX3NzbCBpbXBvcnQgX1NTTENvbnRleHQKK2Zyb20gX3NzbCBpbXBvcnQgKAorICAgIFNTTEVycm9yLCBTU0xaZXJvUmV0dXJuRXJyb3IsIFNTTFdhbnRSZWFkRXJyb3IsIFNTTFdhbnRXcml0ZUVycm9yLAorICAgIFNTTFN5c2NhbGxFcnJvciwgU1NMRU9GRXJyb3IsCisgICAgKQogZnJvbSBfc3NsIGltcG9ydCBDRVJUX05PTkUsIENFUlRfT1BUSU9OQUwsIENFUlRfUkVRVUlSRUQKLWZyb20gX3NzbCBpbXBvcnQgT1BfQUxMLCBPUF9OT19TU0x2MiwgT1BfTk9fU1NMdjMsIE9QX05PX1RMU3YxCi1mcm9tIF9zc2wgaW1wb3J0IFJBTkRfc3RhdHVzLCBSQU5EX2VnZCwgUkFORF9hZGQKK2Zyb20gX3NzbCBpbXBvcnQgKAorICAgIE9QX0FMTCwgT1BfTk9fU1NMdjIsIE9QX05PX1NTTHYzLCBPUF9OT19UTFN2MSwKKyAgICBPUF9DSVBIRVJfU0VSVkVSX1BSRUZFUkVOQ0UsIE9QX1NJTkdMRV9ESF9VU0UKKyAgICApCit0cnk6CisgICAgZnJvbSBfc3NsIGltcG9ydCBPUF9OT19DT01QUkVTU0lPTgorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHBhc3MKK3RyeToKKyAgICBmcm9tIF9zc2wgaW1wb3J0IE9QX1NJTkdMRV9FQ0RIX1VTRQorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHBhc3MKK2Zyb20gX3NzbCBpbXBvcnQgUkFORF9zdGF0dXMsIFJBTkRfZWdkLCBSQU5EX2FkZCwgUkFORF9ieXRlcywgUkFORF9wc2V1ZG9fYnl0ZXMKIGZyb20gX3NzbCBpbXBvcnQgKAogICAgIFNTTF9FUlJPUl9aRVJPX1JFVFVSTiwKICAgICBTU0xfRVJST1JfV0FOVF9SRUFELApAQCAtNzUsOCArOTAsOSBAQAogICAgIFNTTF9FUlJPUl9FT0YsCiAgICAgU1NMX0VSUk9SX0lOVkFMSURfRVJST1JfQ09ERSwKICAgICApCi1mcm9tIF9zc2wgaW1wb3J0IEhBU19TTkkKLWZyb20gX3NzbCBpbXBvcnQgUFJPVE9DT0xfU1NMdjMsIFBST1RPQ09MX1NTTHYyMywgUFJPVE9DT0xfVExTdjEKK2Zyb20gX3NzbCBpbXBvcnQgSEFTX1NOSSwgSEFTX0VDREgKK2Zyb20gX3NzbCBpbXBvcnQgKFBST1RPQ09MX1NTTHYzLCBQUk9UT0NPTF9TU0x2MjMsCisgICAgICAgICAgICAgICAgICBQUk9UT0NPTF9UTFN2MSkKIGZyb20gX3NzbCBpbXBvcnQgX09QRU5TU0xfQVBJX1ZFUlNJT04KIAogX1BST1RPQ09MX05BTUVTID0gewpAQCAtOTQsMTEgKzExMCwxNiBAQAogCiBmcm9tIHNvY2tldCBpbXBvcnQgZ2V0bmFtZWluZm8gYXMgX2dldG5hbWVpbmZvCiBmcm9tIHNvY2tldCBpbXBvcnQgZXJyb3IgYXMgc29ja2V0X2Vycm9yCi1mcm9tIHNvY2tldCBpbXBvcnQgc29ja2V0LCBBRl9JTkVULCBTT0NLX1NUUkVBTQorZnJvbSBzb2NrZXQgaW1wb3J0IHNvY2tldCwgQUZfSU5FVCwgU09DS19TVFJFQU0sIGNyZWF0ZV9jb25uZWN0aW9uCiBpbXBvcnQgYmFzZTY0ICAgICAgICAjIGZvciBERVItdG8tUEVNIHRyYW5zbGF0aW9uCiBpbXBvcnQgdHJhY2ViYWNrCiBpbXBvcnQgZXJybm8KIAoraWYgX3NzbC5IQVNfVExTX1VOSVFVRToKKyAgICBDSEFOTkVMX0JJTkRJTkdfVFlQRVMgPSBbJ3Rscy11bmlxdWUnXQorZWxzZToKKyAgICBDSEFOTkVMX0JJTkRJTkdfVFlQRVMgPSBbXQorCiAjIERpc2FibGUgd2VhayBvciBpbnNlY3VyZSBjaXBoZXJzIGJ5IGRlZmF1bHQKICMgKE9wZW5TU0wncyBkZWZhdWx0IHNldHRpbmcgaXMgJ0RFRkFVTFQ6IWFOVUxMOiFlTlVMTCcpCiBfREVGQVVMVF9DSVBIRVJTID0gJ0RFRkFVTFQ6IWFOVUxMOiFlTlVMTDohTE9XOiFFWFBPUlQ6IVNTTHYyJwpAQCAtMzI2LDYgKzM0NywxMyBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3NzbG9iai5jaXBoZXIoKQogCisgICAgZGVmIGNvbXByZXNzaW9uKHNlbGYpOgorICAgICAgICBzZWxmLl9jaGVja0Nsb3NlZCgpCisgICAgICAgIGlmIG5vdCBzZWxmLl9zc2xvYmo6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3NzbG9iai5jb21wcmVzc2lvbigpCisKICAgICBkZWYgc2VuZChzZWxmLCBkYXRhLCBmbGFncz0wKToKICAgICAgICAgc2VsZi5fY2hlY2tDbG9zZWQoKQogICAgICAgICBpZiBzZWxmLl9zc2xvYmo6CkBAIC0zNTgsNiArMzg2LDEyIEBACiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICByZXR1cm4gc29ja2V0LnNlbmR0byhzZWxmLCBkYXRhLCBmbGFnc19vcl9hZGRyLCBhZGRyKQogCisgICAgZGVmIHNlbmRtc2coc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgIyBFbnN1cmUgcHJvZ3JhbXMgZG9uJ3Qgc2VuZCBkYXRhIHVuZW5jcnlwdGVkIGlmIHRoZXkgdHJ5IHRvCisgICAgICAgICMgdXNlIHRoaXMgbWV0aG9kLgorICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yKCJzZW5kbXNnIG5vdCBhbGxvd2VkIG9uIGluc3RhbmNlcyBvZiAlcyIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX19jbGFzc19fKQorCiAgICAgZGVmIHNlbmRhbGwoc2VsZiwgZGF0YSwgZmxhZ3M9MCk6CiAgICAgICAgIHNlbGYuX2NoZWNrQ2xvc2VkKCkKICAgICAgICAgaWYgc2VsZi5fc3Nsb2JqOgpAQCAtNDE2LDYgKzQ1MCwxNCBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmV0dXJuIHNvY2tldC5yZWN2ZnJvbV9pbnRvKHNlbGYsIGJ1ZmZlciwgbmJ5dGVzLCBmbGFncykKIAorICAgIGRlZiByZWN2bXNnKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IoInJlY3Ztc2cgbm90IGFsbG93ZWQgb24gaW5zdGFuY2VzIG9mICVzIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fX2NsYXNzX18pCisKKyAgICBkZWYgcmVjdm1zZ19pbnRvKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IoInJlY3Ztc2dfaW50byBub3QgYWxsb3dlZCBvbiBpbnN0YW5jZXMgb2YgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlcyIgJSBzZWxmLl9fY2xhc3NfXykKKwogICAgIGRlZiBwZW5kaW5nKHNlbGYpOgogICAgICAgICBzZWxmLl9jaGVja0Nsb3NlZCgpCiAgICAgICAgIGlmIHNlbGYuX3NzbG9iajoKQEAgLTUwMiw2ICs1NDQsMjEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZG9faGFuZHNoYWtlX29uX2Nvbm5lY3QpLAogICAgICAgICAgICAgICAgIGFkZHIpCiAKKyAgICBkZWYgZ2V0X2NoYW5uZWxfYmluZGluZyhzZWxmLCBjYl90eXBlPSJ0bHMtdW5pcXVlIik6CisgICAgICAgICIiIkdldCBjaGFubmVsIGJpbmRpbmcgZGF0YSBmb3IgY3VycmVudCBjb25uZWN0aW9uLiAgUmFpc2UgVmFsdWVFcnJvcgorICAgICAgICBpZiB0aGUgcmVxdWVzdGVkIGBjYl90eXBlYCBpcyBub3Qgc3VwcG9ydGVkLiAgUmV0dXJuIGJ5dGVzIG9mIHRoZSBkYXRhCisgICAgICAgIG9yIE5vbmUgaWYgdGhlIGRhdGEgaXMgbm90IGF2YWlsYWJsZSAoZS5nLiBiZWZvcmUgdGhlIGhhbmRzaGFrZSkuCisgICAgICAgICIiIgorICAgICAgICBpZiBjYl90eXBlIG5vdCBpbiBDSEFOTkVMX0JJTkRJTkdfVFlQRVM6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJVbnN1cHBvcnRlZCBjaGFubmVsIGJpbmRpbmcgdHlwZSIpCisgICAgICAgIGlmIGNiX3R5cGUgIT0gInRscy11bmlxdWUiOgorICAgICAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiezB9IGNoYW5uZWwgYmluZGluZyB0eXBlIG5vdCBpbXBsZW1lbnRlZCIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybWF0KGNiX3R5cGUpKQorICAgICAgICBpZiBzZWxmLl9zc2xvYmogaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIHJldHVybiBzZWxmLl9zc2xvYmoudGxzX3VuaXF1ZV9jYigpCisKICAgICBkZWYgX19kZWxfXyhzZWxmKToKICAgICAgICAgIyBzeXMuc3RkZXJyLndyaXRlKCJfX2RlbF9fIG9uICVzXG4iICUgcmVwcihzZWxmKSkKICAgICAgICAgc2VsZi5fcmVhbF9jbG9zZSgpCkBAIC01NjYsOSArNjIzLDkgQEAKICAgICAgICAgY2VydF9yZXFzID0gQ0VSVF9SRVFVSVJFRAogICAgIGVsc2U6CiAgICAgICAgIGNlcnRfcmVxcyA9IENFUlRfTk9ORQotICAgIHMgPSB3cmFwX3NvY2tldChzb2NrZXQoKSwgc3NsX3ZlcnNpb249c3NsX3ZlcnNpb24sCisgICAgcyA9IGNyZWF0ZV9jb25uZWN0aW9uKGFkZHIpCisgICAgcyA9IHdyYXBfc29ja2V0KHMsIHNzbF92ZXJzaW9uPXNzbF92ZXJzaW9uLAogICAgICAgICAgICAgICAgICAgICBjZXJ0X3JlcXM9Y2VydF9yZXFzLCBjYV9jZXJ0cz1jYV9jZXJ0cykKLSAgICBzLmNvbm5lY3QoYWRkcikKICAgICBkZXJjZXJ0ID0gcy5nZXRwZWVyY2VydChUcnVlKQogICAgIHMuY2xvc2UoKQogICAgIHJldHVybiBERVJfY2VydF90b19QRU1fY2VydChkZXJjZXJ0KQpkaWZmIC0tZ2l0IGEvTGliL3N0cmluZy5weSBiL0xpYi9zdHJpbmcucHkKaW5kZXggZWYwMzM0Yy4uOGJjZDFkYyAxMDA2NDQKLS0tIGEvTGliL3N0cmluZy5weQorKysgYi9MaWIvc3RyaW5nLnB5CkBAIC00NiwyMyArNDYsNyBAQAogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogaW1wb3J0IHJlIGFzIF9yZQotCi1jbGFzcyBfbXVsdGltYXA6Ci0gICAgIiIiSGVscGVyIGNsYXNzIGZvciBjb21iaW5pbmcgbXVsdGlwbGUgbWFwcGluZ3MuCi0KLSAgICBVc2VkIGJ5IC57c2FmZV8sfXN1YnN0aXR1dGUoKSB0byBjb21iaW5lIHRoZSBtYXBwaW5nIGFuZCBrZXl3b3JkCi0gICAgYXJndW1lbnRzLgotICAgICIiIgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwcmltYXJ5LCBzZWNvbmRhcnkpOgotICAgICAgICBzZWxmLl9wcmltYXJ5ID0gcHJpbWFyeQotICAgICAgICBzZWxmLl9zZWNvbmRhcnkgPSBzZWNvbmRhcnkKLQotICAgIGRlZiBfX2dldGl0ZW1fXyhzZWxmLCBrZXkpOgotICAgICAgICB0cnk6Ci0gICAgICAgICAgICByZXR1cm4gc2VsZi5fcHJpbWFyeVtrZXldCi0gICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKLSAgICAgICAgICAgIHJldHVybiBzZWxmLl9zZWNvbmRhcnlba2V5XQotCitmcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBDaGFpbk1hcAogCiBjbGFzcyBfVGVtcGxhdGVNZXRhY2xhc3ModHlwZSk6CiAgICAgcGF0dGVybiA9IHIiIiIKQEAgLTEwMCw3ICs4NCw3IEBACiAKICAgICBkZWYgX2ludmFsaWQoc2VsZiwgbW8pOgogICAgICAgICBpID0gbW8uc3RhcnQoJ2ludmFsaWQnKQotICAgICAgICBsaW5lcyA9IHNlbGYudGVtcGxhdGVbOmldLnNwbGl0bGluZXMoVHJ1ZSkKKyAgICAgICAgbGluZXMgPSBzZWxmLnRlbXBsYXRlWzppXS5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCiAgICAgICAgIGlmIG5vdCBsaW5lczoKICAgICAgICAgICAgIGNvbG5vID0gMQogICAgICAgICAgICAgbGluZW5vID0gMQpAQCAtMTE2LDcgKzEwMCw3IEBACiAgICAgICAgIGlmIG5vdCBhcmdzOgogICAgICAgICAgICAgbWFwcGluZyA9IGt3cwogICAgICAgICBlbGlmIGt3czoKLSAgICAgICAgICAgIG1hcHBpbmcgPSBfbXVsdGltYXAoa3dzLCBhcmdzWzBdKQorICAgICAgICAgICAgbWFwcGluZyA9IENoYWluTWFwKGt3cywgYXJnc1swXSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG1hcHBpbmcgPSBhcmdzWzBdCiAgICAgICAgICMgSGVscGVyIGZ1bmN0aW9uIGZvciAuc3ViKCkKQEAgLTE0Miw3ICsxMjYsNyBAQAogICAgICAgICBpZiBub3QgYXJnczoKICAgICAgICAgICAgIG1hcHBpbmcgPSBrd3MKICAgICAgICAgZWxpZiBrd3M6Ci0gICAgICAgICAgICBtYXBwaW5nID0gX211bHRpbWFwKGt3cywgYXJnc1swXSkKKyAgICAgICAgICAgIG1hcHBpbmcgPSBDaGFpbk1hcChrd3MsIGFyZ3NbMF0pCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBtYXBwaW5nID0gYXJnc1swXQogICAgICAgICAjIEhlbHBlciBmdW5jdGlvbiBmb3IgLnN1YigpCmRpZmYgLS1naXQgYS9MaWIvc3VicHJvY2Vzcy5weSBiL0xpYi9zdWJwcm9jZXNzLnB5CmluZGV4IDAxN2Y1OGQuLmEwYWFkYjkgMTAwNjQ0Ci0tLSBhL0xpYi9zdWJwcm9jZXNzLnB5CisrKyBiL0xpYi9zdWJwcm9jZXNzLnB5CkBAIC0xOTEsOCArMTkxLDEwIEBACiAKIEEgVmFsdWVFcnJvciB3aWxsIGJlIHJhaXNlZCBpZiBQb3BlbiBpcyBjYWxsZWQgd2l0aCBpbnZhbGlkIGFyZ3VtZW50cy4KIAotY2hlY2tfY2FsbCgpIGFuZCBjaGVja19vdXRwdXQoKSB3aWxsIHJhaXNlIENhbGxlZFByb2Nlc3NFcnJvciwgaWYgdGhlCi1jYWxsZWQgcHJvY2VzcyByZXR1cm5zIGEgbm9uLXplcm8gcmV0dXJuIGNvZGUuCitFeGNlcHRpb25zIGRlZmluZWQgd2l0aGluIHRoaXMgbW9kdWxlIGluaGVyaXQgZnJvbSBTdWJwcm9jZXNzRXJyb3IuCitjaGVja19jYWxsKCkgYW5kIGNoZWNrX291dHB1dCgpIHdpbGwgcmFpc2UgQ2FsbGVkUHJvY2Vzc0Vycm9yIGlmIHRoZQorY2FsbGVkIHByb2Nlc3MgcmV0dXJucyBhIG5vbi16ZXJvIHJldHVybiBjb2RlLiAgVGltZW91dEV4cGlyZWQKK2JlIHJhaXNlZCBpZiBhIHRpbWVvdXQgd2FzIHNwZWNpZmllZCBhbmQgZXhwaXJlZC4KIAogCiBTZWN1cml0eQpAQCAtMzQwLDYgKzM0Miw3IEBACiAKIGltcG9ydCBpbwogaW1wb3J0IG9zCitpbXBvcnQgdGltZQogaW1wb3J0IHRyYWNlYmFjawogaW1wb3J0IGdjCiBpbXBvcnQgc2lnbmFsCkBAIC0zNDgsNyArMzUxLDEwIEBACiBpbXBvcnQgZXJybm8KIAogIyBFeGNlcHRpb24gY2xhc3NlcyB1c2VkIGJ5IHRoaXMgbW9kdWxlLgotY2xhc3MgQ2FsbGVkUHJvY2Vzc0Vycm9yKEV4Y2VwdGlvbik6CitjbGFzcyBTdWJwcm9jZXNzRXJyb3IoRXhjZXB0aW9uKTogcGFzcworCisKK2NsYXNzIENhbGxlZFByb2Nlc3NFcnJvcihTdWJwcm9jZXNzRXJyb3IpOgogICAgICIiIlRoaXMgZXhjZXB0aW9uIGlzIHJhaXNlZCB3aGVuIGEgcHJvY2VzcyBydW4gYnkgY2hlY2tfY2FsbCgpIG9yCiAgICAgY2hlY2tfb3V0cHV0KCkgcmV0dXJucyBhIG5vbi16ZXJvIGV4aXQgc3RhdHVzLgogICAgIFRoZSBleGl0IHN0YXR1cyB3aWxsIGJlIHN0b3JlZCBpbiB0aGUgcmV0dXJuY29kZSBhdHRyaWJ1dGU7CkBAIC0zNjIsNiArMzY4LDIwIEBACiAgICAgICAgIHJldHVybiAiQ29tbWFuZCAnJXMnIHJldHVybmVkIG5vbi16ZXJvIGV4aXQgc3RhdHVzICVkIiAlIChzZWxmLmNtZCwgc2VsZi5yZXR1cm5jb2RlKQogCiAKK2NsYXNzIFRpbWVvdXRFeHBpcmVkKFN1YnByb2Nlc3NFcnJvcik6CisgICAgIiIiVGhpcyBleGNlcHRpb24gaXMgcmFpc2VkIHdoZW4gdGhlIHRpbWVvdXQgZXhwaXJlcyB3aGlsZSB3YWl0aW5nIGZvciBhCisgICAgY2hpbGQgcHJvY2Vzcy4KKyAgICAiIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgY21kLCB0aW1lb3V0LCBvdXRwdXQ9Tm9uZSk6CisgICAgICAgIHNlbGYuY21kID0gY21kCisgICAgICAgIHNlbGYudGltZW91dCA9IHRpbWVvdXQKKyAgICAgICAgc2VsZi5vdXRwdXQgPSBvdXRwdXQKKworICAgIGRlZiBfX3N0cl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gKCJDb21tYW5kICclcycgdGltZWQgb3V0IGFmdGVyICVzIHNlY29uZHMiICUKKyAgICAgICAgICAgICAgICAoc2VsZi5jbWQsIHNlbGYudGltZW91dCkpCisKKwogaWYgbXN3aW5kb3dzOgogICAgIGltcG9ydCB0aHJlYWRpbmcKICAgICBpbXBvcnQgbXN2Y3J0CkBAIC0zNzcsNDIgKzM5NywxNyBAQAogZWxzZToKICAgICBpbXBvcnQgc2VsZWN0CiAgICAgX2hhc19wb2xsID0gaGFzYXR0cihzZWxlY3QsICdwb2xsJykKLSAgICBpbXBvcnQgZmNudGwKLSAgICBpbXBvcnQgcGlja2xlCi0KLSAgICB0cnk6Ci0gICAgICAgIGltcG9ydCBfcG9zaXhzdWJwcm9jZXNzCi0gICAgZXhjZXB0IEltcG9ydEVycm9yOgotICAgICAgICBfcG9zaXhzdWJwcm9jZXNzID0gTm9uZQotICAgICAgICB3YXJuaW5ncy53YXJuKCJUaGUgX3Bvc2l4c3VicHJvY2VzcyBtb2R1bGUgaXMgbm90IGJlaW5nIHVzZWQuICIKLSAgICAgICAgICAgICAgICAgICAgICAiQ2hpbGQgcHJvY2VzcyByZWxpYWJpbGl0eSBtYXkgc3VmZmVyIGlmIHlvdXIgIgotICAgICAgICAgICAgICAgICAgICAgICJwcm9ncmFtIHVzZXMgdGhyZWFkcy4iLCBSdW50aW1lV2FybmluZykKKyAgICBpbXBvcnQgX3Bvc2l4c3VicHJvY2VzcworICAgIF9jcmVhdGVfcGlwZSA9IF9wb3NpeHN1YnByb2Nlc3MuY2xvZXhlY19waXBlCiAKICAgICAjIFdoZW4gc2VsZWN0IG9yIHBvbGwgaGFzIGluZGljYXRlZCB0aGF0IHRoZSBmaWxlIGlzIHdyaXRhYmxlLAogICAgICMgd2UgY2FuIHdyaXRlIHVwIHRvIF9QSVBFX0JVRiBieXRlcyB3aXRob3V0IHJpc2sgb2YgYmxvY2tpbmcuCiAgICAgIyBQT1NJWCBkZWZpbmVzIFBJUEVfQlVGIGFzID49IDUxMi4KICAgICBfUElQRV9CVUYgPSBnZXRhdHRyKHNlbGVjdCwgJ1BJUEVfQlVGJywgNTEyKQogCi0gICAgX0ZEX0NMT0VYRUMgPSBnZXRhdHRyKGZjbnRsLCAnRkRfQ0xPRVhFQycsIDEpCi0KLSAgICBkZWYgX3NldF9jbG9leGVjKGZkLCBjbG9leGVjKToKLSAgICAgICAgb2xkID0gZmNudGwuZmNudGwoZmQsIGZjbnRsLkZfR0VURkQpCi0gICAgICAgIGlmIGNsb2V4ZWM6Ci0gICAgICAgICAgICBmY250bC5mY250bChmZCwgZmNudGwuRl9TRVRGRCwgb2xkIHwgX0ZEX0NMT0VYRUMpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBmY250bC5mY250bChmZCwgZmNudGwuRl9TRVRGRCwgb2xkICYgfl9GRF9DTE9FWEVDKQotCi0gICAgaWYgX3Bvc2l4c3VicHJvY2VzczoKLSAgICAgICAgX2NyZWF0ZV9waXBlID0gX3Bvc2l4c3VicHJvY2Vzcy5jbG9leGVjX3BpcGUKLSAgICBlbHNlOgotICAgICAgICBkZWYgX2NyZWF0ZV9waXBlKCk6Ci0gICAgICAgICAgICBmZHMgPSBvcy5waXBlKCkKLSAgICAgICAgICAgIF9zZXRfY2xvZXhlYyhmZHNbMF0sIFRydWUpCi0gICAgICAgICAgICBfc2V0X2Nsb2V4ZWMoZmRzWzFdLCBUcnVlKQotICAgICAgICAgICAgcmV0dXJuIGZkcwogCiBfX2FsbF9fID0gWyJQb3BlbiIsICJQSVBFIiwgIlNURE9VVCIsICJjYWxsIiwgImNoZWNrX2NhbGwiLCAiZ2V0c3RhdHVzb3V0cHV0IiwKLSAgICAgICAgICAgImdldG91dHB1dCIsICJjaGVja19vdXRwdXQiLCAiQ2FsbGVkUHJvY2Vzc0Vycm9yIl0KKyAgICAgICAgICAgImdldG91dHB1dCIsICJjaGVja19vdXRwdXQiLCAiQ2FsbGVkUHJvY2Vzc0Vycm9yIiwgIkRFVk5VTEwiXQogCiBpZiBtc3dpbmRvd3M6CiAgICAgZnJvbSBfc3VicHJvY2VzcyBpbXBvcnQgKENSRUFURV9ORVdfQ09OU09MRSwgQ1JFQVRFX05FV19QUk9DRVNTX0dST1VQLApAQCAtNDQ4LDI3ICs0NDMsMzIgQEAKIAogUElQRSA9IC0xCiBTVERPVVQgPSAtMgorREVWTlVMTCA9IC0zCiAKIAogZGVmIF9laW50cl9yZXRyeV9jYWxsKGZ1bmMsICphcmdzKToKICAgICB3aGlsZSBUcnVlOgogICAgICAgICB0cnk6CiAgICAgICAgICAgICByZXR1cm4gZnVuYygqYXJncykKLSAgICAgICAgZXhjZXB0IChPU0Vycm9yLCBJT0Vycm9yKSBhcyBlOgotICAgICAgICAgICAgaWYgZS5lcnJubyA9PSBlcnJuby5FSU5UUjoKLSAgICAgICAgICAgICAgICBjb250aW51ZQotICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZXhjZXB0IEludGVycnVwdGVkRXJyb3I6CisgICAgICAgICAgICBjb250aW51ZQogCiAKLWRlZiBjYWxsKCpwb3BlbmFyZ3MsICoqa3dhcmdzKToKLSAgICAiIiJSdW4gY29tbWFuZCB3aXRoIGFyZ3VtZW50cy4gIFdhaXQgZm9yIGNvbW1hbmQgdG8gY29tcGxldGUsIHRoZW4KLSAgICByZXR1cm4gdGhlIHJldHVybmNvZGUgYXR0cmlidXRlLgorZGVmIGNhbGwoKnBvcGVuYXJncywgdGltZW91dD1Ob25lLCAqKmt3YXJncyk6CisgICAgIiIiUnVuIGNvbW1hbmQgd2l0aCBhcmd1bWVudHMuICBXYWl0IGZvciBjb21tYW5kIHRvIGNvbXBsZXRlIG9yCisgICAgdGltZW91dCwgdGhlbiByZXR1cm4gdGhlIHJldHVybmNvZGUgYXR0cmlidXRlLgogCiAgICAgVGhlIGFyZ3VtZW50cyBhcmUgdGhlIHNhbWUgYXMgZm9yIHRoZSBQb3BlbiBjb25zdHJ1Y3Rvci4gIEV4YW1wbGU6CiAKICAgICByZXRjb2RlID0gY2FsbChbImxzIiwgIi1sIl0pCiAgICAgIiIiCi0gICAgcmV0dXJuIFBvcGVuKCpwb3BlbmFyZ3MsICoqa3dhcmdzKS53YWl0KCkKKyAgICB3aXRoIFBvcGVuKCpwb3BlbmFyZ3MsICoqa3dhcmdzKSBhcyBwOgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXR1cm4gcC53YWl0KHRpbWVvdXQ9dGltZW91dCkKKyAgICAgICAgZXhjZXB0OgorICAgICAgICAgICAgcC5raWxsKCkKKyAgICAgICAgICAgIHAud2FpdCgpCisgICAgICAgICAgICByYWlzZQogCiAKIGRlZiBjaGVja19jYWxsKCpwb3BlbmFyZ3MsICoqa3dhcmdzKToKQEAgLTQ3Nyw3ICs0NzcsNyBAQAogICAgIENhbGxlZFByb2Nlc3NFcnJvci4gIFRoZSBDYWxsZWRQcm9jZXNzRXJyb3Igb2JqZWN0IHdpbGwgaGF2ZSB0aGUKICAgICByZXR1cm4gY29kZSBpbiB0aGUgcmV0dXJuY29kZSBhdHRyaWJ1dGUuCiAKLSAgICBUaGUgYXJndW1lbnRzIGFyZSB0aGUgc2FtZSBhcyBmb3IgdGhlIFBvcGVuIGNvbnN0cnVjdG9yLiAgRXhhbXBsZToKKyAgICBUaGUgYXJndW1lbnRzIGFyZSB0aGUgc2FtZSBhcyBmb3IgdGhlIGNhbGwgZnVuY3Rpb24uICBFeGFtcGxlOgogCiAgICAgY2hlY2tfY2FsbChbImxzIiwgIi1sIl0pCiAgICAgIiIiCkBAIC00OTAsNyArNDkwLDcgQEAKICAgICByZXR1cm4gMAogCiAKLWRlZiBjaGVja19vdXRwdXQoKnBvcGVuYXJncywgKiprd2FyZ3MpOgorZGVmIGNoZWNrX291dHB1dCgqcG9wZW5hcmdzLCB0aW1lb3V0PU5vbmUsICoqa3dhcmdzKToKICAgICByIiIiUnVuIGNvbW1hbmQgd2l0aCBhcmd1bWVudHMgYW5kIHJldHVybiBpdHMgb3V0cHV0IGFzIGEgYnl0ZSBzdHJpbmcuCiAKICAgICBJZiB0aGUgZXhpdCBjb2RlIHdhcyBub24temVybyBpdCByYWlzZXMgYSBDYWxsZWRQcm9jZXNzRXJyb3IuICBUaGUKQEAgLTUxMiwxNCArNTEyLDIwIEBACiAgICAgIiIiCiAgICAgaWYgJ3N0ZG91dCcgaW4ga3dhcmdzOgogICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdzdGRvdXQgYXJndW1lbnQgbm90IGFsbG93ZWQsIGl0IHdpbGwgYmUgb3ZlcnJpZGRlbi4nKQotICAgIHByb2Nlc3MgPSBQb3BlbigqcG9wZW5hcmdzLCBzdGRvdXQ9UElQRSwgKiprd2FyZ3MpCi0gICAgb3V0cHV0LCB1bnVzZWRfZXJyID0gcHJvY2Vzcy5jb21tdW5pY2F0ZSgpCi0gICAgcmV0Y29kZSA9IHByb2Nlc3MucG9sbCgpCi0gICAgaWYgcmV0Y29kZToKLSAgICAgICAgY21kID0ga3dhcmdzLmdldCgiYXJncyIpCi0gICAgICAgIGlmIGNtZCBpcyBOb25lOgotICAgICAgICAgICAgY21kID0gcG9wZW5hcmdzWzBdCi0gICAgICAgIHJhaXNlIENhbGxlZFByb2Nlc3NFcnJvcihyZXRjb2RlLCBjbWQsIG91dHB1dD1vdXRwdXQpCisgICAgd2l0aCBQb3BlbigqcG9wZW5hcmdzLCBzdGRvdXQ9UElQRSwgKiprd2FyZ3MpIGFzIHByb2Nlc3M6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG91dHB1dCwgdW51c2VkX2VyciA9IHByb2Nlc3MuY29tbXVuaWNhdGUodGltZW91dD10aW1lb3V0KQorICAgICAgICBleGNlcHQgVGltZW91dEV4cGlyZWQ6CisgICAgICAgICAgICBwcm9jZXNzLmtpbGwoKQorICAgICAgICAgICAgb3V0cHV0LCB1bnVzZWRfZXJyID0gcHJvY2Vzcy5jb21tdW5pY2F0ZSgpCisgICAgICAgICAgICByYWlzZSBUaW1lb3V0RXhwaXJlZChwcm9jZXNzLmFyZ3MsIHRpbWVvdXQsIG91dHB1dD1vdXRwdXQpCisgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgIHByb2Nlc3Mua2lsbCgpCisgICAgICAgICAgICBwcm9jZXNzLndhaXQoKQorICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgcmV0Y29kZSA9IHByb2Nlc3MucG9sbCgpCisgICAgICAgIGlmIHJldGNvZGU6CisgICAgICAgICAgICByYWlzZSBDYWxsZWRQcm9jZXNzRXJyb3IocmV0Y29kZSwgcHJvY2Vzcy5hcmdzLCBvdXRwdXQ9b3V0cHV0KQogICAgIHJldHVybiBvdXRwdXQKIAogCkBAIC02MTQsMTEgKzYyMCwxOSBAQAogICAgID4+PiBzdWJwcm9jZXNzLmdldHN0YXR1c291dHB1dCgnL2Jpbi9qdW5rJykKICAgICAoMjU2LCAnc2g6IC9iaW4vanVuazogbm90IGZvdW5kJykKICAgICAiIiIKLSAgICBwaXBlID0gb3MucG9wZW4oJ3sgJyArIGNtZCArICc7IH0gMj4mMScsICdyJykKLSAgICB0ZXh0ID0gcGlwZS5yZWFkKCkKLSAgICBzdHMgPSBwaXBlLmNsb3NlKCkKLSAgICBpZiBzdHMgaXMgTm9uZTogc3RzID0gMAotICAgIGlmIHRleHRbLTE6XSA9PSAnXG4nOiB0ZXh0ID0gdGV4dFs6LTFdCisgICAgd2l0aCBvcy5wb3BlbigneyAnICsgY21kICsgJzsgfSAyPiYxJywgJ3InKSBhcyBwaXBlOgorICAgICAgICB0cnk6CisgICAgICAgICAgICB0ZXh0ID0gcGlwZS5yZWFkKCkKKyAgICAgICAgICAgIHN0cyA9IHBpcGUuY2xvc2UoKQorICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBwcm9jZXNzID0gcGlwZS5fcHJvYworICAgICAgICAgICAgcHJvY2Vzcy5raWxsKCkKKyAgICAgICAgICAgIHByb2Nlc3Mud2FpdCgpCisgICAgICAgICAgICByYWlzZQorICAgIGlmIHN0cyBpcyBOb25lOgorICAgICAgICBzdHMgPSAwCisgICAgaWYgdGV4dFstMTpdID09ICdcbic6CisgICAgICAgIHRleHQgPSB0ZXh0WzotMV0KICAgICByZXR1cm4gc3RzLCB0ZXh0CiAKIApAQCAtNjUwLDYgKzY2NCw4IEBACiAgICAgICAgIF9jbGVhbnVwKCkKIAogICAgICAgICBzZWxmLl9jaGlsZF9jcmVhdGVkID0gRmFsc2UKKyAgICAgICAgc2VsZi5faW5wdXQgPSBOb25lCisgICAgICAgIHNlbGYuX2NvbW11bmljYXRpb25fc3RhcnRlZCA9IEZhbHNlCiAgICAgICAgIGlmIGJ1ZnNpemUgaXMgTm9uZToKICAgICAgICAgICAgIGJ1ZnNpemUgPSAwICAjIFJlc3RvcmUgZGVmYXVsdAogICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShidWZzaXplLCBpbnQpOgpAQCAtNjg0LDYgKzcwMCw3IEBACiAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY3JlYXRpb25mbGFncyBpcyBvbmx5IHN1cHBvcnRlZCBvbiBXaW5kb3dzICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwbGF0Zm9ybXMiKQogCisgICAgICAgIHNlbGYuYXJncyA9IGFyZ3MKICAgICAgICAgc2VsZi5zdGRpbiA9IE5vbmUKICAgICAgICAgc2VsZi5zdGRvdXQgPSBOb25lCiAgICAgICAgIHNlbGYuc3RkZXJyID0gTm9uZQpAQCAtNzg0LDE5ICs4MDEsMjggQEAKICAgICAgICAgICAgICMgQ2hpbGQgaXMgc3RpbGwgcnVubmluZywga2VlcCB1cyBhbGl2ZSB1bnRpbCB3ZSBjYW4gd2FpdCBvbiBpdC4KICAgICAgICAgICAgIF9hY3RpdmUuYXBwZW5kKHNlbGYpCiAKKyAgICBkZWYgX2dldF9kZXZudWxsKHNlbGYpOgorICAgICAgICBpZiBub3QgaGFzYXR0cihzZWxmLCAnX2Rldm51bGwnKToKKyAgICAgICAgICAgIHNlbGYuX2Rldm51bGwgPSBvcy5vcGVuKG9zLmRldm51bGwsIG9zLk9fUkRXUikKKyAgICAgICAgcmV0dXJuIHNlbGYuX2Rldm51bGwKIAotICAgIGRlZiBjb21tdW5pY2F0ZShzZWxmLCBpbnB1dD1Ob25lKToKKyAgICBkZWYgY29tbXVuaWNhdGUoc2VsZiwgaW5wdXQ9Tm9uZSwgdGltZW91dD1Ob25lKToKICAgICAgICAgIiIiSW50ZXJhY3Qgd2l0aCBwcm9jZXNzOiBTZW5kIGRhdGEgdG8gc3RkaW4uICBSZWFkIGRhdGEgZnJvbQogICAgICAgICBzdGRvdXQgYW5kIHN0ZGVyciwgdW50aWwgZW5kLW9mLWZpbGUgaXMgcmVhY2hlZC4gIFdhaXQgZm9yCi0gICAgICAgIHByb2Nlc3MgdG8gdGVybWluYXRlLiAgVGhlIG9wdGlvbmFsIGlucHV0IGFyZ3VtZW50IHNob3VsZCBiZSBhCi0gICAgICAgIHN0cmluZyB0byBiZSBzZW50IHRvIHRoZSBjaGlsZCBwcm9jZXNzLCBvciBOb25lLCBpZiBubyBkYXRhCisgICAgICAgIHByb2Nlc3MgdG8gdGVybWluYXRlLiAgVGhlIG9wdGlvbmFsIGlucHV0IGFyZ3VtZW50IHNob3VsZCBiZQorICAgICAgICBieXRlcyB0byBiZSBzZW50IHRvIHRoZSBjaGlsZCBwcm9jZXNzLCBvciBOb25lLCBpZiBubyBkYXRhCiAgICAgICAgIHNob3VsZCBiZSBzZW50IHRvIHRoZSBjaGlsZC4KIAogICAgICAgICBjb21tdW5pY2F0ZSgpIHJldHVybnMgYSB0dXBsZSAoc3Rkb3V0LCBzdGRlcnIpLiIiIgogCi0gICAgICAgICMgT3B0aW1pemF0aW9uOiBJZiB3ZSBhcmUgb25seSB1c2luZyBvbmUgcGlwZSwgb3Igbm8gcGlwZSBhdAotICAgICAgICAjIGFsbCwgdXNpbmcgc2VsZWN0KCkgb3IgdGhyZWFkcyBpcyB1bm5lY2Vzc2FyeS4KLSAgICAgICAgaWYgW3NlbGYuc3RkaW4sIHNlbGYuc3Rkb3V0LCBzZWxmLnN0ZGVycl0uY291bnQoTm9uZSkgPj0gMjoKKyAgICAgICAgaWYgc2VsZi5fY29tbXVuaWNhdGlvbl9zdGFydGVkIGFuZCBpbnB1dDoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkNhbm5vdCBzZW5kIGlucHV0IGFmdGVyIHN0YXJ0aW5nIGNvbW11bmljYXRpb24iKQorCisgICAgICAgICMgT3B0aW1pemF0aW9uOiBJZiB3ZSBhcmUgbm90IHdvcnJpZWQgYWJvdXQgdGltZW91dHMsIHdlIGhhdmVuJ3QKKyAgICAgICAgIyBzdGFydGVkIGNvbW11bmljYXRpbmcsIGFuZCB3ZSBoYXZlIG9uZSBvciB6ZXJvIHBpcGVzLCB1c2luZyBzZWxlY3QoKQorICAgICAgICAjIG9yIHRocmVhZHMgaXMgdW5uZWNlc3NhcnkuCisgICAgICAgIGlmICh0aW1lb3V0IGlzIE5vbmUgYW5kIG5vdCBzZWxmLl9jb21tdW5pY2F0aW9uX3N0YXJ0ZWQgYW5kCisgICAgICAgICAgICBbc2VsZi5zdGRpbiwgc2VsZi5zdGRvdXQsIHNlbGYuc3RkZXJyXS5jb3VudChOb25lKSA+PSAyKToKICAgICAgICAgICAgIHN0ZG91dCA9IE5vbmUKICAgICAgICAgICAgIHN0ZGVyciA9IE5vbmUKICAgICAgICAgICAgIGlmIHNlbGYuc3RkaW46CkBAIC04MTQsMTUgKzg0MCw0MiBAQAogICAgICAgICAgICAgICAgIHN0ZGVyciA9IF9laW50cl9yZXRyeV9jYWxsKHNlbGYuc3RkZXJyLnJlYWQpCiAgICAgICAgICAgICAgICAgc2VsZi5zdGRlcnIuY2xvc2UoKQogICAgICAgICAgICAgc2VsZi53YWl0KCkKLSAgICAgICAgICAgIHJldHVybiAoc3Rkb3V0LCBzdGRlcnIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiB0aW1lb3V0IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGVuZHRpbWUgPSB0aW1lLnRpbWUoKSArIHRpbWVvdXQKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZW5kdGltZSA9IE5vbmUKIAotICAgICAgICByZXR1cm4gc2VsZi5fY29tbXVuaWNhdGUoaW5wdXQpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc3Rkb3V0LCBzdGRlcnIgPSBzZWxmLl9jb21tdW5pY2F0ZShpbnB1dCwgZW5kdGltZSwgdGltZW91dCkKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgc2VsZi5fY29tbXVuaWNhdGlvbl9zdGFydGVkID0gVHJ1ZQorCisgICAgICAgICAgICBzdHMgPSBzZWxmLndhaXQodGltZW91dD1zZWxmLl9yZW1haW5pbmdfdGltZShlbmR0aW1lKSkKKworICAgICAgICByZXR1cm4gKHN0ZG91dCwgc3RkZXJyKQogCiAKICAgICBkZWYgcG9sbChzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuX2ludGVybmFsX3BvbGwoKQogCiAKKyAgICBkZWYgX3JlbWFpbmluZ190aW1lKHNlbGYsIGVuZHRpbWUpOgorICAgICAgICAiIiJDb252ZW5pZW5jZSBmb3IgX2NvbW11bmljYXRlIHdoZW4gY29tcHV0aW5nIHRpbWVvdXRzLiIiIgorICAgICAgICBpZiBlbmR0aW1lIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIGVuZHRpbWUgLSB0aW1lLnRpbWUoKQorCisKKyAgICBkZWYgX2NoZWNrX3RpbWVvdXQoc2VsZiwgZW5kdGltZSwgb3JpZ190aW1lb3V0KToKKyAgICAgICAgIiIiQ29udmVuaWVuY2UgZm9yIGNoZWNraW5nIGlmIGEgdGltZW91dCBoYXMgZXhwaXJlZC4iIiIKKyAgICAgICAgaWYgZW5kdGltZSBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGlmIHRpbWUudGltZSgpID4gZW5kdGltZToKKyAgICAgICAgICAgIHJhaXNlIFRpbWVvdXRFeHBpcmVkKHNlbGYuYXJncywgb3JpZ190aW1lb3V0KQorCisKICAgICBpZiBtc3dpbmRvd3M6CiAgICAgICAgICMKICAgICAgICAgIyBXaW5kb3dzIG1ldGhvZHMKQEAgLTg0NCw2ICs4OTcsOCBAQAogICAgICAgICAgICAgICAgICAgICBwMmNyZWFkLCBfID0gX3N1YnByb2Nlc3MuQ3JlYXRlUGlwZShOb25lLCAwKQogICAgICAgICAgICAgZWxpZiBzdGRpbiA9PSBQSVBFOgogICAgICAgICAgICAgICAgIHAyY3JlYWQsIHAyY3dyaXRlID0gX3N1YnByb2Nlc3MuQ3JlYXRlUGlwZShOb25lLCAwKQorICAgICAgICAgICAgZWxpZiBzdGRpbiA9PSBERVZOVUxMOgorICAgICAgICAgICAgICAgIHAyY3JlYWQgPSBtc3ZjcnQuZ2V0X29zZmhhbmRsZShzZWxmLl9nZXRfZGV2bnVsbCgpKQogICAgICAgICAgICAgZWxpZiBpc2luc3RhbmNlKHN0ZGluLCBpbnQpOgogICAgICAgICAgICAgICAgIHAyY3JlYWQgPSBtc3ZjcnQuZ2V0X29zZmhhbmRsZShzdGRpbikKICAgICAgICAgICAgIGVsc2U6CkBAIC04NTcsNiArOTEyLDggQEAKICAgICAgICAgICAgICAgICAgICAgXywgYzJwd3JpdGUgPSBfc3VicHJvY2Vzcy5DcmVhdGVQaXBlKE5vbmUsIDApCiAgICAgICAgICAgICBlbGlmIHN0ZG91dCA9PSBQSVBFOgogICAgICAgICAgICAgICAgIGMycHJlYWQsIGMycHdyaXRlID0gX3N1YnByb2Nlc3MuQ3JlYXRlUGlwZShOb25lLCAwKQorICAgICAgICAgICAgZWxpZiBzdGRvdXQgPT0gREVWTlVMTDoKKyAgICAgICAgICAgICAgICBjMnB3cml0ZSA9IG1zdmNydC5nZXRfb3NmaGFuZGxlKHNlbGYuX2dldF9kZXZudWxsKCkpCiAgICAgICAgICAgICBlbGlmIGlzaW5zdGFuY2Uoc3Rkb3V0LCBpbnQpOgogICAgICAgICAgICAgICAgIGMycHdyaXRlID0gbXN2Y3J0LmdldF9vc2ZoYW5kbGUoc3Rkb3V0KQogICAgICAgICAgICAgZWxzZToKQEAgLTg3Miw2ICs5MjksOCBAQAogICAgICAgICAgICAgICAgIGVycnJlYWQsIGVycndyaXRlID0gX3N1YnByb2Nlc3MuQ3JlYXRlUGlwZShOb25lLCAwKQogICAgICAgICAgICAgZWxpZiBzdGRlcnIgPT0gU1RET1VUOgogICAgICAgICAgICAgICAgIGVycndyaXRlID0gYzJwd3JpdGUKKyAgICAgICAgICAgIGVsaWYgc3RkZXJyID09IERFVk5VTEw6CisgICAgICAgICAgICAgICAgZXJyd3JpdGUgPSBtc3ZjcnQuZ2V0X29zZmhhbmRsZShzZWxmLl9nZXRfZGV2bnVsbCgpKQogICAgICAgICAgICAgZWxpZiBpc2luc3RhbmNlKHN0ZGVyciwgaW50KToKICAgICAgICAgICAgICAgICBlcnJ3cml0ZSA9IG1zdmNydC5nZXRfb3NmaGFuZGxlKHN0ZGVycikKICAgICAgICAgICAgIGVsc2U6CkBAIC05ODEsNiArMTA0MCw4IEBACiAgICAgICAgICAgICAgICAgICAgIGMycHdyaXRlLkNsb3NlKCkKICAgICAgICAgICAgICAgICBpZiBlcnJ3cml0ZSAhPSAtMToKICAgICAgICAgICAgICAgICAgICAgZXJyd3JpdGUuQ2xvc2UoKQorICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIoc2VsZiwgJ19kZXZudWxsJyk6CisgICAgICAgICAgICAgICAgICAgIG9zLmNsb3NlKHNlbGYuX2Rldm51bGwpCiAKICAgICAgICAgICAgICMgUmV0YWluIHRoZSBwcm9jZXNzIGhhbmRsZSwgYnV0IGNsb3NlIHRoZSB0aHJlYWQgaGFuZGxlCiAgICAgICAgICAgICBzZWxmLl9jaGlsZF9jcmVhdGVkID0gVHJ1ZQpAQCAtMTAwNSwxMiArMTA2NiwyMCBAQAogICAgICAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuY29kZQogCiAKLSAgICAgICAgZGVmIHdhaXQoc2VsZik6CisgICAgICAgIGRlZiB3YWl0KHNlbGYsIHRpbWVvdXQ9Tm9uZSwgZW5kdGltZT1Ob25lKToKICAgICAgICAgICAgICIiIldhaXQgZm9yIGNoaWxkIHByb2Nlc3MgdG8gdGVybWluYXRlLiAgUmV0dXJucyByZXR1cm5jb2RlCiAgICAgICAgICAgICBhdHRyaWJ1dGUuIiIiCisgICAgICAgICAgICBpZiBlbmR0aW1lIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBzZWxmLl9yZW1haW5pbmdfdGltZShlbmR0aW1lKQorICAgICAgICAgICAgaWYgdGltZW91dCBpcyBOb25lOgorICAgICAgICAgICAgICAgIHRpbWVvdXRfbWlsbGlzID0gX3N1YnByb2Nlc3MuSU5GSU5JVEUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgdGltZW91dF9taWxsaXMgPSBpbnQodGltZW91dCAqIDEwMDApCiAgICAgICAgICAgICBpZiBzZWxmLnJldHVybmNvZGUgaXMgTm9uZToKLSAgICAgICAgICAgICAgICBfc3VicHJvY2Vzcy5XYWl0Rm9yU2luZ2xlT2JqZWN0KHNlbGYuX2hhbmRsZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9zdWJwcm9jZXNzLklORklOSVRFKQorICAgICAgICAgICAgICAgIHJlc3VsdCA9IF9zdWJwcm9jZXNzLldhaXRGb3JTaW5nbGVPYmplY3Qoc2VsZi5faGFuZGxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dF9taWxsaXMpCisgICAgICAgICAgICAgICAgaWYgcmVzdWx0ID09IF9zdWJwcm9jZXNzLldBSVRfVElNRU9VVDoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgVGltZW91dEV4cGlyZWQoc2VsZi5hcmdzLCB0aW1lb3V0KQogICAgICAgICAgICAgICAgIHNlbGYucmV0dXJuY29kZSA9IF9zdWJwcm9jZXNzLkdldEV4aXRDb2RlUHJvY2VzcyhzZWxmLl9oYW5kbGUpCiAgICAgICAgICAgICByZXR1cm4gc2VsZi5yZXR1cm5jb2RlCiAKQEAgLTEwMjAsMjIgKzEwODksMjMgQEAKICAgICAgICAgICAgIGZoLmNsb3NlKCkKIAogCi0gICAgICAgIGRlZiBfY29tbXVuaWNhdGUoc2VsZiwgaW5wdXQpOgotICAgICAgICAgICAgc3Rkb3V0ID0gTm9uZSAjIFJldHVybgotICAgICAgICAgICAgc3RkZXJyID0gTm9uZSAjIFJldHVybgotCi0gICAgICAgICAgICBpZiBzZWxmLnN0ZG91dDoKLSAgICAgICAgICAgICAgICBzdGRvdXQgPSBbXQotICAgICAgICAgICAgICAgIHN0ZG91dF90aHJlYWQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1zZWxmLl9yZWFkZXJ0aHJlYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncz0oc2VsZi5zdGRvdXQsIHN0ZG91dCkpCi0gICAgICAgICAgICAgICAgc3Rkb3V0X3RocmVhZC5kYWVtb24gPSBUcnVlCi0gICAgICAgICAgICAgICAgc3Rkb3V0X3RocmVhZC5zdGFydCgpCi0gICAgICAgICAgICBpZiBzZWxmLnN0ZGVycjoKLSAgICAgICAgICAgICAgICBzdGRlcnIgPSBbXQotICAgICAgICAgICAgICAgIHN0ZGVycl90aHJlYWQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1zZWxmLl9yZWFkZXJ0aHJlYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncz0oc2VsZi5zdGRlcnIsIHN0ZGVycikpCi0gICAgICAgICAgICAgICAgc3RkZXJyX3RocmVhZC5kYWVtb24gPSBUcnVlCi0gICAgICAgICAgICAgICAgc3RkZXJyX3RocmVhZC5zdGFydCgpCisgICAgICAgIGRlZiBfY29tbXVuaWNhdGUoc2VsZiwgaW5wdXQsIGVuZHRpbWUsIG9yaWdfdGltZW91dCk6CisgICAgICAgICAgICAjIFN0YXJ0IHJlYWRlciB0aHJlYWRzIGZlZWRpbmcgaW50byBhIGxpc3QgaGFuZ2luZyBvZmYgb2YgdGhpcworICAgICAgICAgICAgIyBvYmplY3QsIHVubGVzcyB0aGV5J3ZlIGFscmVhZHkgYmVlbiBzdGFydGVkLgorICAgICAgICAgICAgaWYgc2VsZi5zdGRvdXQgYW5kIG5vdCBoYXNhdHRyKHNlbGYsICJfc3Rkb3V0X2J1ZmYiKToKKyAgICAgICAgICAgICAgICBzZWxmLl9zdGRvdXRfYnVmZiA9IFtdCisgICAgICAgICAgICAgICAgc2VsZi5zdGRvdXRfdGhyZWFkID0gXAorICAgICAgICAgICAgICAgICAgICAgICAgdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9c2VsZi5fcmVhZGVydGhyZWFkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzPShzZWxmLnN0ZG91dCwgc2VsZi5fc3Rkb3V0X2J1ZmYpKQorICAgICAgICAgICAgICAgIHNlbGYuc3Rkb3V0X3RocmVhZC5kYWVtb24gPSBUcnVlCisgICAgICAgICAgICAgICAgc2VsZi5zdGRvdXRfdGhyZWFkLnN0YXJ0KCkKKyAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyIGFuZCBub3QgaGFzYXR0cihzZWxmLCAiX3N0ZGVycl9idWZmIik6CisgICAgICAgICAgICAgICAgc2VsZi5fc3RkZXJyX2J1ZmYgPSBbXQorICAgICAgICAgICAgICAgIHNlbGYuc3RkZXJyX3RocmVhZCA9IFwKKyAgICAgICAgICAgICAgICAgICAgICAgIHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXNlbGYuX3JlYWRlcnRocmVhZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncz0oc2VsZi5zdGRlcnIsIHNlbGYuX3N0ZGVycl9idWZmKSkKKyAgICAgICAgICAgICAgICBzZWxmLnN0ZGVycl90aHJlYWQuZGFlbW9uID0gVHJ1ZQorICAgICAgICAgICAgICAgIHNlbGYuc3RkZXJyX3RocmVhZC5zdGFydCgpCiAKICAgICAgICAgICAgIGlmIHNlbGYuc3RkaW46CiAgICAgICAgICAgICAgICAgaWYgaW5wdXQgaXMgbm90IE5vbmU6CkBAIC0xMDQ2LDEwICsxMTE2LDI4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKICAgICAgICAgICAgICAgICBzZWxmLnN0ZGluLmNsb3NlKCkKIAorICAgICAgICAgICAgIyBXYWl0IGZvciB0aGUgcmVhZGVyIHRocmVhZHMsIG9yIHRpbWUgb3V0LiAgSWYgd2UgdGltZSBvdXQsIHRoZQorICAgICAgICAgICAgIyB0aHJlYWRzIHJlbWFpbiByZWFkaW5nIGFuZCB0aGUgZmRzIGxlZnQgb3BlbiBpbiBjYXNlIHRoZSB1c2VyCisgICAgICAgICAgICAjIGNhbGxzIGNvbW11bmljYXRlIGFnYWluLgorICAgICAgICAgICAgaWYgc2VsZi5zdGRvdXQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5zdGRvdXRfdGhyZWFkLmpvaW4oc2VsZi5fcmVtYWluaW5nX3RpbWUoZW5kdGltZSkpCisgICAgICAgICAgICAgICAgaWYgc2VsZi5zdGRvdXRfdGhyZWFkLmlzQWxpdmUoKToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgVGltZW91dEV4cGlyZWQoc2VsZi5hcmdzLCBvcmlnX3RpbWVvdXQpCisgICAgICAgICAgICBpZiBzZWxmLnN0ZGVyciBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBzZWxmLnN0ZGVycl90aHJlYWQuam9pbihzZWxmLl9yZW1haW5pbmdfdGltZShlbmR0aW1lKSkKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnN0ZGVycl90aHJlYWQuaXNBbGl2ZSgpOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBUaW1lb3V0RXhwaXJlZChzZWxmLmFyZ3MsIG9yaWdfdGltZW91dCkKKworICAgICAgICAgICAgIyBDb2xsZWN0IHRoZSBvdXRwdXQgZnJvbSBhbmQgY2xvc2UgYm90aCBwaXBlcywgbm93IHRoYXQgd2Uga25vdworICAgICAgICAgICAgIyBib3RoIGhhdmUgYmVlbiByZWFkIHN1Y2Nlc3NmdWxseS4KKyAgICAgICAgICAgIHN0ZG91dCA9IE5vbmUKKyAgICAgICAgICAgIHN0ZGVyciA9IE5vbmUKICAgICAgICAgICAgIGlmIHNlbGYuc3Rkb3V0OgotICAgICAgICAgICAgICAgIHN0ZG91dF90aHJlYWQuam9pbigpCisgICAgICAgICAgICAgICAgc3Rkb3V0ID0gc2VsZi5fc3Rkb3V0X2J1ZmYKKyAgICAgICAgICAgICAgICBzZWxmLnN0ZG91dC5jbG9zZSgpCiAgICAgICAgICAgICBpZiBzZWxmLnN0ZGVycjoKLSAgICAgICAgICAgICAgICBzdGRlcnJfdGhyZWFkLmpvaW4oKQorICAgICAgICAgICAgICAgIHN0ZGVyciA9IHNlbGYuX3N0ZGVycl9idWZmCisgICAgICAgICAgICAgICAgc2VsZi5zdGRlcnIuY2xvc2UoKQogCiAgICAgICAgICAgICAjIEFsbCBkYXRhIGV4Y2hhbmdlZC4gIFRyYW5zbGF0ZSBsaXN0cyBpbnRvIHN0cmluZ3MuCiAgICAgICAgICAgICBpZiBzdGRvdXQgaXMgbm90IE5vbmU6CkBAIC0xMDU3LDcgKzExNDUsNiBAQAogICAgICAgICAgICAgaWYgc3RkZXJyIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgIHN0ZGVyciA9IHN0ZGVyclswXQogCi0gICAgICAgICAgICBzZWxmLndhaXQoKQogICAgICAgICAgICAgcmV0dXJuIChzdGRvdXQsIHN0ZGVycikKIAogICAgICAgICBkZWYgc2VuZF9zaWduYWwoc2VsZiwgc2lnKToKQEAgLTEwOTUsNiArMTE4Miw4IEBACiAgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICAgICAgZWxpZiBzdGRpbiA9PSBQSVBFOgogICAgICAgICAgICAgICAgIHAyY3JlYWQsIHAyY3dyaXRlID0gX2NyZWF0ZV9waXBlKCkKKyAgICAgICAgICAgIGVsaWYgc3RkaW4gPT0gREVWTlVMTDoKKyAgICAgICAgICAgICAgICBwMmNyZWFkID0gc2VsZi5fZ2V0X2Rldm51bGwoKQogICAgICAgICAgICAgZWxpZiBpc2luc3RhbmNlKHN0ZGluLCBpbnQpOgogICAgICAgICAgICAgICAgIHAyY3JlYWQgPSBzdGRpbgogICAgICAgICAgICAgZWxzZToKQEAgLTExMDUsNiArMTE5NCw4IEBACiAgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICAgICAgZWxpZiBzdGRvdXQgPT0gUElQRToKICAgICAgICAgICAgICAgICBjMnByZWFkLCBjMnB3cml0ZSA9IF9jcmVhdGVfcGlwZSgpCisgICAgICAgICAgICBlbGlmIHN0ZG91dCA9PSBERVZOVUxMOgorICAgICAgICAgICAgICAgIGMycHdyaXRlID0gc2VsZi5fZ2V0X2Rldm51bGwoKQogICAgICAgICAgICAgZWxpZiBpc2luc3RhbmNlKHN0ZG91dCwgaW50KToKICAgICAgICAgICAgICAgICBjMnB3cml0ZSA9IHN0ZG91dAogICAgICAgICAgICAgZWxzZToKQEAgLTExMTcsNiArMTIwOCw4IEBACiAgICAgICAgICAgICAgICAgZXJycmVhZCwgZXJyd3JpdGUgPSBfY3JlYXRlX3BpcGUoKQogICAgICAgICAgICAgZWxpZiBzdGRlcnIgPT0gU1RET1VUOgogICAgICAgICAgICAgICAgIGVycndyaXRlID0gYzJwd3JpdGUKKyAgICAgICAgICAgIGVsaWYgc3RkZXJyID09IERFVk5VTEw6CisgICAgICAgICAgICAgICAgZXJyd3JpdGUgPSBzZWxmLl9nZXRfZGV2bnVsbCgpCiAgICAgICAgICAgICBlbGlmIGlzaW5zdGFuY2Uoc3RkZXJyLCBpbnQpOgogICAgICAgICAgICAgICAgIGVycndyaXRlID0gc3RkZXJyCiAgICAgICAgICAgICBlbHNlOgpAQCAtMTE0Nyw3ICsxMjQwLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3RvcmVfc2lnbmFscywgc3RhcnRfbmV3X3Nlc3Npb24pOgogICAgICAgICAgICAgIiIiRXhlY3V0ZSBwcm9ncmFtIChQT1NJWCB2ZXJzaW9uKSIiIgogCi0gICAgICAgICAgICBpZiBpc2luc3RhbmNlKGFyZ3MsIHN0cik6CisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGFyZ3MsIChzdHIsIGJ5dGVzKSk6CiAgICAgICAgICAgICAgICAgYXJncyA9IFthcmdzXQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBhcmdzID0gbGlzdChhcmdzKQpAQCAtMTE2NiwxNDkgKzEyNTksMzQgQEAKICAgICAgICAgICAgIGVycnBpcGVfcmVhZCwgZXJycGlwZV93cml0ZSA9IF9jcmVhdGVfcGlwZSgpCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAjIFdlIG11c3QgYXZvaWQgY29tcGxleCB3b3JrIHRoYXQgY291bGQgaW52b2x2ZQorICAgICAgICAgICAgICAgICAgICAjIG1hbGxvYyBvciBmcmVlIGluIHRoZSBjaGlsZCBwcm9jZXNzIHRvIGF2b2lkCisgICAgICAgICAgICAgICAgICAgICMgcG90ZW50aWFsIGRlYWRsb2NrcywgdGh1cyB3ZSBkbyBhbGwgdGhpcyBoZXJlLgorICAgICAgICAgICAgICAgICAgICAjIGFuZCBwYXNzIGl0IHRvIGZvcmtfZXhlYygpCiAKLSAgICAgICAgICAgICAgICAgICAgaWYgX3Bvc2l4c3VicHJvY2VzczoKLSAgICAgICAgICAgICAgICAgICAgICAgICMgV2UgbXVzdCBhdm9pZCBjb21wbGV4IHdvcmsgdGhhdCBjb3VsZCBpbnZvbHZlCi0gICAgICAgICAgICAgICAgICAgICAgICAjIG1hbGxvYyBvciBmcmVlIGluIHRoZSBjaGlsZCBwcm9jZXNzIHRvIGF2b2lkCi0gICAgICAgICAgICAgICAgICAgICAgICAjIHBvdGVudGlhbCBkZWFkbG9ja3MsIHRodXMgd2UgZG8gYWxsIHRoaXMgaGVyZS4KLSAgICAgICAgICAgICAgICAgICAgICAgICMgYW5kIHBhc3MgaXQgdG8gZm9ya19leGVjKCkKLQotICAgICAgICAgICAgICAgICAgICAgICAgaWYgZW52IGlzIG5vdCBOb25lOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudl9saXN0ID0gW29zLmZzZW5jb2RlKGspICsgYic9JyArIG9zLmZzZW5jb2RlKHYpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGssIHYgaW4gZW52Lml0ZW1zKCldCi0gICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudl9saXN0ID0gTm9uZSAgIyBVc2UgZXhlY3YgaW5zdGVhZCBvZiBleGVjdmUuCi0gICAgICAgICAgICAgICAgICAgICAgICBleGVjdXRhYmxlID0gb3MuZnNlbmNvZGUoZXhlY3V0YWJsZSkKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguZGlybmFtZShleGVjdXRhYmxlKToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGVjdXRhYmxlX2xpc3QgPSAoZXhlY3V0YWJsZSwpCi0gICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgVGhpcyBtYXRjaGVzIHRoZSBiZWhhdmlvciBvZiBvcy5fZXhlY3ZwZSgpLgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGFibGVfbGlzdCA9IHR1cGxlKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4ob3MuZnNlbmNvZGUoZGlyKSwgZXhlY3V0YWJsZSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGRpciBpbiBvcy5nZXRfZXhlY19wYXRoKGVudikpCi0gICAgICAgICAgICAgICAgICAgICAgICBmZHNfdG9fa2VlcCA9IHNldChwYXNzX2ZkcykKLSAgICAgICAgICAgICAgICAgICAgICAgIGZkc190b19rZWVwLmFkZChlcnJwaXBlX3dyaXRlKQotICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5waWQgPSBfcG9zaXhzdWJwcm9jZXNzLmZvcmtfZXhlYygKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncywgZXhlY3V0YWJsZV9saXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZV9mZHMsIHNvcnRlZChmZHNfdG9fa2VlcCksIGN3ZCwgZW52X2xpc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAyY3JlYWQsIHAyY3dyaXRlLCBjMnByZWFkLCBjMnB3cml0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJycmVhZCwgZXJyd3JpdGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycnBpcGVfcmVhZCwgZXJycGlwZV93cml0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdG9yZV9zaWduYWxzLCBzdGFydF9uZXdfc2Vzc2lvbiwgcHJlZXhlY19mbikKLSAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2NoaWxkX2NyZWF0ZWQgPSBUcnVlCisgICAgICAgICAgICAgICAgICAgIGlmIGVudiBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGVudl9saXN0ID0gW29zLmZzZW5jb2RlKGspICsgYic9JyArIG9zLmZzZW5jb2RlKHYpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgaywgdiBpbiBlbnYuaXRlbXMoKV0KICAgICAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgICAgICMgUHVyZSBQeXRob24gaW1wbGVtZW50YXRpb246IEl0IGlzIG5vdCB0aHJlYWQgc2FmZS4KLSAgICAgICAgICAgICAgICAgICAgICAgICMgVGhpcyBpbXBsZW1lbnRhdGlvbiBtYXkgZGVhZGxvY2sgaW4gdGhlIGNoaWxkIGlmIHlvdXIKLSAgICAgICAgICAgICAgICAgICAgICAgICMgcGFyZW50IHByb2Nlc3MgaGFzIGFueSBvdGhlciB0aHJlYWRzIHJ1bm5pbmcuCi0KLSAgICAgICAgICAgICAgICAgICAgICAgIGdjX3dhc19lbmFibGVkID0gZ2MuaXNlbmFibGVkKCkKLSAgICAgICAgICAgICAgICAgICAgICAgICMgRGlzYWJsZSBnYyB0byBhdm9pZCBidWcgd2hlcmUgZ2MgLT4gZmlsZV9kZWFsbG9jIC0+Ci0gICAgICAgICAgICAgICAgICAgICAgICAjIHdyaXRlIHRvIHN0ZGVyciAtPiBoYW5nLiAgU2VlIGlzc3VlMTMzNgotICAgICAgICAgICAgICAgICAgICAgICAgZ2MuZGlzYWJsZSgpCi0gICAgICAgICAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5waWQgPSBvcy5mb3JrKCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2VwdDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBnY193YXNfZW5hYmxlZDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2MuZW5hYmxlKCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZQotICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fY2hpbGRfY3JlYXRlZCA9IFRydWUKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIHNlbGYucGlkID09IDA6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBDaGlsZAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBDbG9zZSBwYXJlbnQncyBwaXBlIGVuZHMKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgcDJjd3JpdGUgIT0gLTE6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5jbG9zZShwMmN3cml0ZSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgYzJwcmVhZCAhPSAtMToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmNsb3NlKGMycHJlYWQpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGVycnJlYWQgIT0gLTE6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5jbG9zZShlcnJyZWFkKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5jbG9zZShlcnJwaXBlX3JlYWQpCi0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBXaGVuIGR1cGluZyBmZHMsIGlmIHRoZXJlIGFyaXNlcyBhIHNpdHVhdGlvbgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHdoZXJlIG9uZSBvZiB0aGUgZmRzIGlzIGVpdGhlciAwLCAxIG9yIDIsIGl0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgaXMgcG9zc2libGUgdGhhdCBpdCBpcyBvdmVyd3JpdHRlbiAoIzEyNjA3KS4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgYzJwd3JpdGUgPT0gMDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMycHdyaXRlID0gb3MuZHVwKGMycHdyaXRlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBlcnJ3cml0ZSA9PSAwIG9yIGVycndyaXRlID09IDE6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJ3cml0ZSA9IG9zLmR1cChlcnJ3cml0ZSkKLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIER1cCBmZHMgZm9yIGNoaWxkCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZiBfZHVwMihhLCBiKToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZHVwMigpIHJlbW92ZXMgdGhlIENMT0VYRUMgZmxhZyBidXQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgd2UgbXVzdCBkbyBpdCBvdXJzZWx2ZXMgaWYgZHVwMigpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHdvdWxkIGJlIGEgbm8tb3AgKGlzc3VlICMxMDgwNikuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBhID09IGI6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3NldF9jbG9leGVjKGEsIEZhbHNlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxpZiBhICE9IC0xOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmR1cDIoYSwgYikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2R1cDIocDJjcmVhZCwgMCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2R1cDIoYzJwd3JpdGUsIDEpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9kdXAyKGVycndyaXRlLCAyKQotCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgQ2xvc2UgcGlwZSBmZHMuICBNYWtlIHN1cmUgd2UgZG9uJ3QgY2xvc2UgdGhlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgc2FtZSBmZCBtb3JlIHRoYW4gb25jZSwgb3Igc3RhbmRhcmQgZmRzLgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZWQgPSBzZXQoKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZmQgaW4gW3AyY3JlYWQsIGMycHdyaXRlLCBlcnJ3cml0ZV06Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBmZCA+IDIgYW5kIGZkIG5vdCBpbiBjbG9zZWQ6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MuY2xvc2UoZmQpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xvc2VkLmFkZChmZCkKLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIENsb3NlIGFsbCBvdGhlciBmZHMsIGlmIGFza2VkIGZvcgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBjbG9zZV9mZHM6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZHNfdG9fa2VlcCA9IHNldChwYXNzX2ZkcykKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkc190b19rZWVwLmFkZChlcnJwaXBlX3dyaXRlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fY2xvc2VfZmRzKGZkc190b19rZWVwKQotCi0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgY3dkIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MuY2hkaXIoY3dkKQotCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgVGhpcyBpcyBhIGNvcHkgb2YgUHl0aG9uL3B5dGhvbnJ1bi5jCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgX1B5X1Jlc3RvcmVTaWduYWxzKCkuICBJZiB0aGF0IHdlcmUgZXhwb3NlZAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGFzIGEgc3lzLl9weV9yZXN0b3Jlc2lnbmFscyBmdW5jIGl0IHdvdWxkIGJlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgYmV0dGVyLi4gYnV0IHRoaXMgcHVyZSBweXRob24gaW1wbGVtZW50YXRpb24KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBpc24ndCBsaWtlbHkgdG8gYmUgdXNlZCBtdWNoIGFueW1vcmUuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHJlc3RvcmVfc2lnbmFsczoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ25hbHMgPSAoJ1NJR1BJUEUnLCAnU0lHWEZaJywgJ1NJR1hGU1onKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIHNpZyBpbiBzaWduYWxzOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIoc2lnbmFsLCBzaWcpOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWduYWwuc2lnbmFsKGdldGF0dHIoc2lnbmFsLCBzaWcpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ25hbC5TSUdfREZMKQotCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHN0YXJ0X25ld19zZXNzaW9uIGFuZCBoYXNhdHRyKG9zLCAnc2V0c2lkJyk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5zZXRzaWQoKQotCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHByZWV4ZWNfZm46Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVleGVjX2ZuKCkKLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBlbnYgaXMgTm9uZToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmV4ZWN2cChleGVjdXRhYmxlLCBhcmdzKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MuZXhlY3ZwZShleGVjdXRhYmxlLCBhcmdzLCBlbnYpCi0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQ6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4Y190eXBlLCBleGNfdmFsdWUgPSBzeXMuZXhjX2luZm8oKVs6Ml0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoZXhjX3ZhbHVlLCBPU0Vycm9yKToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJub19udW0gPSBleGNfdmFsdWUuZXJybm8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJybm9fbnVtID0gMAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSA9ICclczoleDolcycgJSAoZXhjX3R5cGUuX19uYW1lX18sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJub19udW0sIGV4Y192YWx1ZSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2UgPSBtZXNzYWdlLmVuY29kZShlcnJvcnM9InN1cnJvZ2F0ZXBhc3MiKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3Mud3JpdGUoZXJycGlwZV93cml0ZSwgbWVzc2FnZSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbjoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgV2UgTVVTVCBub3QgYWxsb3cgYW55dGhpbmcgb2RkIGhhcHBlbmluZwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBhYm92ZSB0byBwcmV2ZW50IHVzIGZyb20gZXhpdGluZyBiZWxvdy4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhc3MKLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgVGhpcyBleGl0Y29kZSB3b24ndCBiZSByZXBvcnRlZCB0byBhcHBsaWNhdGlvbnMKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHNvIGl0IHJlYWxseSBkb2Vzbid0IG1hdHRlciB3aGF0IHdlIHJldHVybi4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5fZXhpdCgyNTUpCi0KLSAgICAgICAgICAgICAgICAgICAgICAgICMgUGFyZW50Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiBnY193YXNfZW5hYmxlZDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYy5lbmFibGUoKQorICAgICAgICAgICAgICAgICAgICAgICAgZW52X2xpc3QgPSBOb25lICAjIFVzZSBleGVjdiBpbnN0ZWFkIG9mIGV4ZWN2ZS4KKyAgICAgICAgICAgICAgICAgICAgZXhlY3V0YWJsZSA9IG9zLmZzZW5jb2RlKGV4ZWN1dGFibGUpCisgICAgICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguZGlybmFtZShleGVjdXRhYmxlKToKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGFibGVfbGlzdCA9IChleGVjdXRhYmxlLCkKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgICMgVGhpcyBtYXRjaGVzIHRoZSBiZWhhdmlvciBvZiBvcy5fZXhlY3ZwZSgpLgorICAgICAgICAgICAgICAgICAgICAgICAgZXhlY3V0YWJsZV9saXN0ID0gdHVwbGUoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5qb2luKG9zLmZzZW5jb2RlKGRpciksIGV4ZWN1dGFibGUpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGRpciBpbiBvcy5nZXRfZXhlY19wYXRoKGVudikpCisgICAgICAgICAgICAgICAgICAgIGZkc190b19rZWVwID0gc2V0KHBhc3NfZmRzKQorICAgICAgICAgICAgICAgICAgICBmZHNfdG9fa2VlcC5hZGQoZXJycGlwZV93cml0ZSkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5waWQgPSBfcG9zaXhzdWJwcm9jZXNzLmZvcmtfZXhlYygKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLCBleGVjdXRhYmxlX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xvc2VfZmRzLCBzb3J0ZWQoZmRzX3RvX2tlZXApLCBjd2QsIGVudl9saXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAyY3JlYWQsIHAyY3dyaXRlLCBjMnByZWFkLCBjMnB3cml0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJyZWFkLCBlcnJ3cml0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJwaXBlX3JlYWQsIGVycnBpcGVfd3JpdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdG9yZV9zaWduYWxzLCBzdGFydF9uZXdfc2Vzc2lvbiwgcHJlZXhlY19mbikKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fY2hpbGRfY3JlYXRlZCA9IFRydWUKICAgICAgICAgICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgICAgICAgICAjIGJlIHN1cmUgdGhlIEZEIGlzIGNsb3NlZCBubyBtYXR0ZXIgd2hhdAogICAgICAgICAgICAgICAgICAgICBvcy5jbG9zZShlcnJwaXBlX3dyaXRlKQpAQCAtMTMxOSw2ICsxMjk3LDggQEAKICAgICAgICAgICAgICAgICAgICAgb3MuY2xvc2UoYzJwd3JpdGUpCiAgICAgICAgICAgICAgICAgaWYgZXJyd3JpdGUgIT0gLTEgYW5kIGVycnJlYWQgIT0gLTE6CiAgICAgICAgICAgICAgICAgICAgIG9zLmNsb3NlKGVycndyaXRlKQorICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIoc2VsZiwgJ19kZXZudWxsJyk6CisgICAgICAgICAgICAgICAgICAgIG9zLmNsb3NlKHNlbGYuX2Rldm51bGwpCiAKICAgICAgICAgICAgICAgICAjIFdhaXQgZm9yIGV4ZWMgdG8gZmFpbCBvciBzdWNjZWVkOyBwb3NzaWJseSByYWlzaW5nIGFuCiAgICAgICAgICAgICAgICAgIyBleGNlcHRpb24gKGxpbWl0ZWQgaW4gc2l6ZSkKQEAgLTEzOTYsMjUgKzEzNzYsNTcgQEAKICAgICAgICAgICAgIHJldHVybiBzZWxmLnJldHVybmNvZGUKIAogCi0gICAgICAgIGRlZiB3YWl0KHNlbGYpOgorICAgICAgICBkZWYgX3RyeV93YWl0KHNlbGYsIHdhaXRfZmxhZ3MpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIChwaWQsIHN0cykgPSBfZWludHJfcmV0cnlfY2FsbChvcy53YWl0cGlkLCBzZWxmLnBpZCwgd2FpdF9mbGFncykKKyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICAgICAgaWYgZS5lcnJubyAhPSBlcnJuby5FQ0hJTEQ6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICAgICAgIyBUaGlzIGhhcHBlbnMgaWYgU0lHQ0xEIGlzIHNldCB0byBiZSBpZ25vcmVkIG9yIHdhaXRpbmcKKyAgICAgICAgICAgICAgICAjIGZvciBjaGlsZCBwcm9jZXNzZXMgaGFzIG90aGVyd2lzZSBiZWVuIGRpc2FibGVkIGZvciBvdXIKKyAgICAgICAgICAgICAgICAjIHByb2Nlc3MuICBUaGlzIGNoaWxkIGlzIGRlYWQsIHdlIGNhbid0IGdldCB0aGUgc3RhdHVzLgorICAgICAgICAgICAgICAgIHBpZCA9IHNlbGYucGlkCisgICAgICAgICAgICAgICAgc3RzID0gMAorICAgICAgICAgICAgcmV0dXJuIChwaWQsIHN0cykKKworCisgICAgICAgIGRlZiB3YWl0KHNlbGYsIHRpbWVvdXQ9Tm9uZSwgZW5kdGltZT1Ob25lKToKICAgICAgICAgICAgICIiIldhaXQgZm9yIGNoaWxkIHByb2Nlc3MgdG8gdGVybWluYXRlLiAgUmV0dXJucyByZXR1cm5jb2RlCiAgICAgICAgICAgICBhdHRyaWJ1dGUuIiIiCi0gICAgICAgICAgICBpZiBzZWxmLnJldHVybmNvZGUgaXMgTm9uZToKLSAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgIHBpZCwgc3RzID0gX2VpbnRyX3JldHJ5X2NhbGwob3Mud2FpdHBpZCwgc2VsZi5waWQsIDApCi0gICAgICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKLSAgICAgICAgICAgICAgICAgICAgaWYgZS5lcnJubyAhPSBlcnJuby5FQ0hJTEQ6Ci0gICAgICAgICAgICAgICAgICAgICAgICByYWlzZQotICAgICAgICAgICAgICAgICAgICAjIFRoaXMgaGFwcGVucyBpZiBTSUdDTEQgaXMgc2V0IHRvIGJlIGlnbm9yZWQgb3Igd2FpdGluZwotICAgICAgICAgICAgICAgICAgICAjIGZvciBjaGlsZCBwcm9jZXNzZXMgaGFzIG90aGVyd2lzZSBiZWVuIGRpc2FibGVkIGZvciBvdXIKLSAgICAgICAgICAgICAgICAgICAgIyBwcm9jZXNzLiAgVGhpcyBjaGlsZCBpcyBkZWFkLCB3ZSBjYW4ndCBnZXQgdGhlIHN0YXR1cy4KLSAgICAgICAgICAgICAgICAgICAgc3RzID0gMAorICAgICAgICAgICAgaWYgc2VsZi5yZXR1cm5jb2RlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLnJldHVybmNvZGUKKworICAgICAgICAgICAgIyBlbmR0aW1lIGlzIHByZWZlcnJlZCB0byB0aW1lb3V0LiAgdGltZW91dCBpcyBvbmx5IHVzZWQgZm9yCisgICAgICAgICAgICAjIHByaW50aW5nLgorICAgICAgICAgICAgaWYgZW5kdGltZSBpcyBub3QgTm9uZSBvciB0aW1lb3V0IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGlmIGVuZHRpbWUgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgZW5kdGltZSA9IHRpbWUudGltZSgpICsgdGltZW91dAorICAgICAgICAgICAgICAgIGVsaWYgdGltZW91dCBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICB0aW1lb3V0ID0gc2VsZi5fcmVtYWluaW5nX3RpbWUoZW5kdGltZSkKKworICAgICAgICAgICAgaWYgZW5kdGltZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICAjIEVudGVyIGEgYnVzeSBsb29wIGlmIHdlIGhhdmUgYSB0aW1lb3V0LiAgVGhpcyBidXN5IGxvb3Agd2FzCisgICAgICAgICAgICAgICAgIyBjcmliYmVkIGZyb20gTGliL3RocmVhZGluZy5weSBpbiBUaHJlYWQud2FpdCgpIGF0IHI3MTA2NS4KKyAgICAgICAgICAgICAgICBkZWxheSA9IDAuMDAwNSAjIDUwMCB1cyAtPiBpbml0aWFsIGRlbGF5IG9mIDEgbXMKKyAgICAgICAgICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgICAgICAgICAocGlkLCBzdHMpID0gc2VsZi5fdHJ5X3dhaXQob3MuV05PSEFORykKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IHBpZCA9PSBzZWxmLnBpZCBvciBwaWQgPT0gMAorICAgICAgICAgICAgICAgICAgICBpZiBwaWQgPT0gc2VsZi5waWQ6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9oYW5kbGVfZXhpdHN0YXR1cyhzdHMpCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICByZW1haW5pbmcgPSBzZWxmLl9yZW1haW5pbmdfdGltZShlbmR0aW1lKQorICAgICAgICAgICAgICAgICAgICBpZiByZW1haW5pbmcgPD0gMDoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFRpbWVvdXRFeHBpcmVkKHNlbGYuYXJncywgdGltZW91dCkKKyAgICAgICAgICAgICAgICAgICAgZGVsYXkgPSBtaW4oZGVsYXkgKiAyLCByZW1haW5pbmcsIC4wNSkKKyAgICAgICAgICAgICAgICAgICAgdGltZS5zbGVlcChkZWxheSkKKyAgICAgICAgICAgIGVsaWYgc2VsZi5yZXR1cm5jb2RlIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgKHBpZCwgc3RzKSA9IHNlbGYuX3RyeV93YWl0KDApCiAgICAgICAgICAgICAgICAgc2VsZi5faGFuZGxlX2V4aXRzdGF0dXMoc3RzKQogICAgICAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuY29kZQogCiAKLSAgICAgICAgZGVmIF9jb21tdW5pY2F0ZShzZWxmLCBpbnB1dCk6Ci0gICAgICAgICAgICBpZiBzZWxmLnN0ZGluOgorICAgICAgICBkZWYgX2NvbW11bmljYXRlKHNlbGYsIGlucHV0LCBlbmR0aW1lLCBvcmlnX3RpbWVvdXQpOgorICAgICAgICAgICAgaWYgc2VsZi5zdGRpbiBhbmQgbm90IHNlbGYuX2NvbW11bmljYXRpb25fc3RhcnRlZDoKICAgICAgICAgICAgICAgICAjIEZsdXNoIHN0ZGlvIGJ1ZmZlci4gIFRoaXMgbWlnaHQgYmxvY2ssIGlmIHRoZSB1c2VyIGhhcwogICAgICAgICAgICAgICAgICMgYmVlbiB3cml0aW5nIHRvIC5zdGRpbiBpbiBhbiB1bmNvbnRyb2xsZWQgZmFzaGlvbi4KICAgICAgICAgICAgICAgICBzZWxmLnN0ZGluLmZsdXNoKCkKQEAgLTE0MjIsOSArMTQzNCwxMyBAQAogICAgICAgICAgICAgICAgICAgICBzZWxmLnN0ZGluLmNsb3NlKCkKIAogICAgICAgICAgICAgaWYgX2hhc19wb2xsOgotICAgICAgICAgICAgICAgIHN0ZG91dCwgc3RkZXJyID0gc2VsZi5fY29tbXVuaWNhdGVfd2l0aF9wb2xsKGlucHV0KQorICAgICAgICAgICAgICAgIHN0ZG91dCwgc3RkZXJyID0gc2VsZi5fY29tbXVuaWNhdGVfd2l0aF9wb2xsKGlucHV0LCBlbmR0aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yaWdfdGltZW91dCkKICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgc3Rkb3V0LCBzdGRlcnIgPSBzZWxmLl9jb21tdW5pY2F0ZV93aXRoX3NlbGVjdChpbnB1dCkKKyAgICAgICAgICAgICAgICBzdGRvdXQsIHN0ZGVyciA9IHNlbGYuX2NvbW11bmljYXRlX3dpdGhfc2VsZWN0KGlucHV0LCBlbmR0aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ190aW1lb3V0KQorCisgICAgICAgICAgICBzZWxmLndhaXQodGltZW91dD1zZWxmLl9yZW1haW5pbmdfdGltZShlbmR0aW1lKSkKIAogICAgICAgICAgICAgIyBBbGwgZGF0YSBleGNoYW5nZWQuICBUcmFuc2xhdGUgbGlzdHMgaW50byBzdHJpbmdzLgogICAgICAgICAgICAgaWYgc3Rkb3V0IGlzIG5vdCBOb25lOgpAQCAtMTQ0Miw2NyArMTQ1OCw4NyBAQAogICAgICAgICAgICAgICAgICAgICBzdGRlcnIgPSBzZWxmLl90cmFuc2xhdGVfbmV3bGluZXMoc3RkZXJyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zdGRlcnIuZW5jb2RpbmcpCiAKLSAgICAgICAgICAgIHNlbGYud2FpdCgpCiAgICAgICAgICAgICByZXR1cm4gKHN0ZG91dCwgc3RkZXJyKQogCiAKLSAgICAgICAgZGVmIF9jb21tdW5pY2F0ZV93aXRoX3BvbGwoc2VsZiwgaW5wdXQpOgorICAgICAgICBkZWYgX2NvbW11bmljYXRlX3dpdGhfcG9sbChzZWxmLCBpbnB1dCwgZW5kdGltZSwgb3JpZ190aW1lb3V0KToKICAgICAgICAgICAgIHN0ZG91dCA9IE5vbmUgIyBSZXR1cm4KICAgICAgICAgICAgIHN0ZGVyciA9IE5vbmUgIyBSZXR1cm4KLSAgICAgICAgICAgIGZkMmZpbGUgPSB7fQotICAgICAgICAgICAgZmQyb3V0cHV0ID0ge30KKworICAgICAgICAgICAgaWYgbm90IHNlbGYuX2NvbW11bmljYXRpb25fc3RhcnRlZDoKKyAgICAgICAgICAgICAgICBzZWxmLl9mZDJmaWxlID0ge30KIAogICAgICAgICAgICAgcG9sbGVyID0gc2VsZWN0LnBvbGwoKQogICAgICAgICAgICAgZGVmIHJlZ2lzdGVyX2FuZF9hcHBlbmQoZmlsZV9vYmosIGV2ZW50bWFzayk6CiAgICAgICAgICAgICAgICAgcG9sbGVyLnJlZ2lzdGVyKGZpbGVfb2JqLmZpbGVubygpLCBldmVudG1hc2spCi0gICAgICAgICAgICAgICAgZmQyZmlsZVtmaWxlX29iai5maWxlbm8oKV0gPSBmaWxlX29iagorICAgICAgICAgICAgICAgIHNlbGYuX2ZkMmZpbGVbZmlsZV9vYmouZmlsZW5vKCldID0gZmlsZV9vYmoKIAogICAgICAgICAgICAgZGVmIGNsb3NlX3VucmVnaXN0ZXJfYW5kX3JlbW92ZShmZCk6CiAgICAgICAgICAgICAgICAgcG9sbGVyLnVucmVnaXN0ZXIoZmQpCi0gICAgICAgICAgICAgICAgZmQyZmlsZVtmZF0uY2xvc2UoKQotICAgICAgICAgICAgICAgIGZkMmZpbGUucG9wKGZkKQorICAgICAgICAgICAgICAgIHNlbGYuX2ZkMmZpbGVbZmRdLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBzZWxmLl9mZDJmaWxlLnBvcChmZCkKIAogICAgICAgICAgICAgaWYgc2VsZi5zdGRpbiBhbmQgaW5wdXQ6CiAgICAgICAgICAgICAgICAgcmVnaXN0ZXJfYW5kX2FwcGVuZChzZWxmLnN0ZGluLCBzZWxlY3QuUE9MTE9VVCkKIAorICAgICAgICAgICAgIyBPbmx5IGNyZWF0ZSB0aGlzIG1hcHBpbmcgaWYgd2UgaGF2ZW4ndCBhbHJlYWR5LgorICAgICAgICAgICAgaWYgbm90IHNlbGYuX2NvbW11bmljYXRpb25fc3RhcnRlZDoKKyAgICAgICAgICAgICAgICBzZWxmLl9mZDJvdXRwdXQgPSB7fQorICAgICAgICAgICAgICAgIGlmIHNlbGYuc3Rkb3V0OgorICAgICAgICAgICAgICAgICAgICBzZWxmLl9mZDJvdXRwdXRbc2VsZi5zdGRvdXQuZmlsZW5vKCldID0gW10KKyAgICAgICAgICAgICAgICBpZiBzZWxmLnN0ZGVycjoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fZmQyb3V0cHV0W3NlbGYuc3RkZXJyLmZpbGVubygpXSA9IFtdCisKICAgICAgICAgICAgIHNlbGVjdF9QT0xMSU5fUE9MTFBSSSA9IHNlbGVjdC5QT0xMSU4gfCBzZWxlY3QuUE9MTFBSSQogICAgICAgICAgICAgaWYgc2VsZi5zdGRvdXQ6CiAgICAgICAgICAgICAgICAgcmVnaXN0ZXJfYW5kX2FwcGVuZChzZWxmLnN0ZG91dCwgc2VsZWN0X1BPTExJTl9QT0xMUFJJKQotICAgICAgICAgICAgICAgIGZkMm91dHB1dFtzZWxmLnN0ZG91dC5maWxlbm8oKV0gPSBzdGRvdXQgPSBbXQorICAgICAgICAgICAgICAgIHN0ZG91dCA9IHNlbGYuX2ZkMm91dHB1dFtzZWxmLnN0ZG91dC5maWxlbm8oKV0KICAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyOgogICAgICAgICAgICAgICAgIHJlZ2lzdGVyX2FuZF9hcHBlbmQoc2VsZi5zdGRlcnIsIHNlbGVjdF9QT0xMSU5fUE9MTFBSSSkKLSAgICAgICAgICAgICAgICBmZDJvdXRwdXRbc2VsZi5zdGRlcnIuZmlsZW5vKCldID0gc3RkZXJyID0gW10KKyAgICAgICAgICAgICAgICBzdGRlcnIgPSBzZWxmLl9mZDJvdXRwdXRbc2VsZi5zdGRlcnIuZmlsZW5vKCldCiAKLSAgICAgICAgICAgIGlucHV0X29mZnNldCA9IDAKLSAgICAgICAgICAgIHdoaWxlIGZkMmZpbGU6CisgICAgICAgICAgICAjIFNhdmUgdGhlIGlucHV0IGhlcmUgc28gdGhhdCBpZiB3ZSB0aW1lIG91dCB3aGlsZSBjb21tdW5pY2F0aW5nLAorICAgICAgICAgICAgIyB3ZSBjYW4gY29udGludWUgc2VuZGluZyBpbnB1dCBpZiB3ZSByZXRyeS4KKyAgICAgICAgICAgIGlmIHNlbGYuc3RkaW4gYW5kIHNlbGYuX2lucHV0IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5faW5wdXRfb2Zmc2V0ID0gMAorICAgICAgICAgICAgICAgIHNlbGYuX2lucHV0ID0gaW5wdXQKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnVuaXZlcnNhbF9uZXdsaW5lczoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5faW5wdXQgPSBzZWxmLl9pbnB1dC5lbmNvZGUoc2VsZi5zdGRpbi5lbmNvZGluZykKKworICAgICAgICAgICAgd2hpbGUgc2VsZi5fZmQyZmlsZToKKyAgICAgICAgICAgICAgICB0aW1lb3V0ID0gc2VsZi5fcmVtYWluaW5nX3RpbWUoZW5kdGltZSkKKyAgICAgICAgICAgICAgICBpZiB0aW1lb3V0IGlzIG5vdCBOb25lIGFuZCB0aW1lb3V0IDwgMDoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgVGltZW91dEV4cGlyZWQoc2VsZi5hcmdzLCBvcmlnX3RpbWVvdXQpCiAgICAgICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICAgICByZWFkeSA9IHBvbGxlci5wb2xsKCkKKyAgICAgICAgICAgICAgICAgICAgcmVhZHkgPSBwb2xsZXIucG9sbCh0aW1lb3V0KQogICAgICAgICAgICAgICAgIGV4Y2VwdCBzZWxlY3QuZXJyb3IgYXMgZToKICAgICAgICAgICAgICAgICAgICAgaWYgZS5hcmdzWzBdID09IGVycm5vLkVJTlRSOgogICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICBzZWxmLl9jaGVja190aW1lb3V0KGVuZHRpbWUsIG9yaWdfdGltZW91dCkKIAogICAgICAgICAgICAgICAgICMgWFhYIFJld3JpdGUgdGhlc2UgdG8gdXNlIG5vbi1ibG9ja2luZyBJL08gb24gdGhlCiAgICAgICAgICAgICAgICAgIyBmaWxlIG9iamVjdHM7IHRoZXkgYXJlIG5vIGxvbmdlciB1c2luZyBDIHN0ZGlvIQogCiAgICAgICAgICAgICAgICAgZm9yIGZkLCBtb2RlIGluIHJlYWR5OgogICAgICAgICAgICAgICAgICAgICBpZiBtb2RlICYgc2VsZWN0LlBPTExPVVQ6Ci0gICAgICAgICAgICAgICAgICAgICAgICBjaHVuayA9IGlucHV0W2lucHV0X29mZnNldCA6IGlucHV0X29mZnNldCArIF9QSVBFX0JVRl0KKyAgICAgICAgICAgICAgICAgICAgICAgIGNodW5rID0gc2VsZi5faW5wdXRbc2VsZi5faW5wdXRfb2Zmc2V0IDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5faW5wdXRfb2Zmc2V0ICsgX1BJUEVfQlVGXQogICAgICAgICAgICAgICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0X29mZnNldCArPSBvcy53cml0ZShmZCwgY2h1bmspCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5faW5wdXRfb2Zmc2V0ICs9IG9zLndyaXRlKGZkLCBjaHVuaykKICAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgZS5lcnJubyA9PSBlcnJuby5FUElQRToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xvc2VfdW5yZWdpc3Rlcl9hbmRfcmVtb3ZlKGZkKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGlucHV0X29mZnNldCA+PSBsZW4oaW5wdXQpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHNlbGYuX2lucHV0X29mZnNldCA+PSBsZW4oc2VsZi5faW5wdXQpOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZV91bnJlZ2lzdGVyX2FuZF9yZW1vdmUoZmQpCiAgICAgICAgICAgICAgICAgICAgIGVsaWYgbW9kZSAmIHNlbGVjdF9QT0xMSU5fUE9MTFBSSToKICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBvcy5yZWFkKGZkLCA0MDk2KQogICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGRhdGE6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xvc2VfdW5yZWdpc3Rlcl9hbmRfcmVtb3ZlKGZkKQotICAgICAgICAgICAgICAgICAgICAgICAgZmQyb3V0cHV0W2ZkXS5hcHBlbmQoZGF0YSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2ZkMm91dHB1dFtmZF0uYXBwZW5kKGRhdGEpCiAgICAgICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgICAgICAjIElnbm9yZSBoYW5nIHVwIG9yIGVycm9ycy4KICAgICAgICAgICAgICAgICAgICAgICAgIGNsb3NlX3VucmVnaXN0ZXJfYW5kX3JlbW92ZShmZCkKQEAgLTE1MTAsNjEgKzE1NDYsODcgQEAKICAgICAgICAgICAgIHJldHVybiAoc3Rkb3V0LCBzdGRlcnIpCiAKIAotICAgICAgICBkZWYgX2NvbW11bmljYXRlX3dpdGhfc2VsZWN0KHNlbGYsIGlucHV0KToKLSAgICAgICAgICAgIHJlYWRfc2V0ID0gW10KLSAgICAgICAgICAgIHdyaXRlX3NldCA9IFtdCisgICAgICAgIGRlZiBfY29tbXVuaWNhdGVfd2l0aF9zZWxlY3Qoc2VsZiwgaW5wdXQsIGVuZHRpbWUsIG9yaWdfdGltZW91dCk6CisgICAgICAgICAgICBpZiBub3Qgc2VsZi5fY29tbXVuaWNhdGlvbl9zdGFydGVkOgorICAgICAgICAgICAgICAgIHNlbGYuX3JlYWRfc2V0ID0gW10KKyAgICAgICAgICAgICAgICBzZWxmLl93cml0ZV9zZXQgPSBbXQorICAgICAgICAgICAgICAgIGlmIHNlbGYuc3RkaW4gYW5kIGlucHV0OgorICAgICAgICAgICAgICAgICAgICBzZWxmLl93cml0ZV9zZXQuYXBwZW5kKHNlbGYuc3RkaW4pCisgICAgICAgICAgICAgICAgaWYgc2VsZi5zdGRvdXQ6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX3JlYWRfc2V0LmFwcGVuZChzZWxmLnN0ZG91dCkKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnN0ZGVycjoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fcmVhZF9zZXQuYXBwZW5kKHNlbGYuc3RkZXJyKQorCisgICAgICAgICAgICBpZiBzZWxmLnN0ZGluIGFuZCBzZWxmLl9pbnB1dCBpcyBOb25lOgorICAgICAgICAgICAgICAgIHNlbGYuX2lucHV0X29mZnNldCA9IDAKKyAgICAgICAgICAgICAgICBzZWxmLl9pbnB1dCA9IGlucHV0CisgICAgICAgICAgICAgICAgaWYgc2VsZi51bml2ZXJzYWxfbmV3bGluZXM6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2lucHV0ID0gc2VsZi5faW5wdXQuZW5jb2RlKHNlbGYuc3RkaW4uZW5jb2RpbmcpCisKICAgICAgICAgICAgIHN0ZG91dCA9IE5vbmUgIyBSZXR1cm4KICAgICAgICAgICAgIHN0ZGVyciA9IE5vbmUgIyBSZXR1cm4KIAotICAgICAgICAgICAgaWYgc2VsZi5zdGRpbiBhbmQgaW5wdXQ6Ci0gICAgICAgICAgICAgICAgd3JpdGVfc2V0LmFwcGVuZChzZWxmLnN0ZGluKQogICAgICAgICAgICAgaWYgc2VsZi5zdGRvdXQ6Ci0gICAgICAgICAgICAgICAgcmVhZF9zZXQuYXBwZW5kKHNlbGYuc3Rkb3V0KQotICAgICAgICAgICAgICAgIHN0ZG91dCA9IFtdCisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuX2NvbW11bmljYXRpb25fc3RhcnRlZDoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fc3Rkb3V0X2J1ZmYgPSBbXQorICAgICAgICAgICAgICAgIHN0ZG91dCA9IHNlbGYuX3N0ZG91dF9idWZmCiAgICAgICAgICAgICBpZiBzZWxmLnN0ZGVycjoKLSAgICAgICAgICAgICAgICByZWFkX3NldC5hcHBlbmQoc2VsZi5zdGRlcnIpCi0gICAgICAgICAgICAgICAgc3RkZXJyID0gW10KKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5fY29tbXVuaWNhdGlvbl9zdGFydGVkOgorICAgICAgICAgICAgICAgICAgICBzZWxmLl9zdGRlcnJfYnVmZiA9IFtdCisgICAgICAgICAgICAgICAgc3RkZXJyID0gc2VsZi5fc3RkZXJyX2J1ZmYKIAotICAgICAgICAgICAgaW5wdXRfb2Zmc2V0ID0gMAotICAgICAgICAgICAgd2hpbGUgcmVhZF9zZXQgb3Igd3JpdGVfc2V0OgorICAgICAgICAgICAgd2hpbGUgc2VsZi5fcmVhZF9zZXQgb3Igc2VsZi5fd3JpdGVfc2V0OgorICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBzZWxmLl9yZW1haW5pbmdfdGltZShlbmR0aW1lKQorICAgICAgICAgICAgICAgIGlmIHRpbWVvdXQgaXMgbm90IE5vbmUgYW5kIHRpbWVvdXQgPCAwOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBUaW1lb3V0RXhwaXJlZChzZWxmLmFyZ3MsIG9yaWdfdGltZW91dCkKICAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgIHJsaXN0LCB3bGlzdCwgeGxpc3QgPSBzZWxlY3Quc2VsZWN0KHJlYWRfc2V0LCB3cml0ZV9zZXQsIFtdKQorICAgICAgICAgICAgICAgICAgICAocmxpc3QsIHdsaXN0LCB4bGlzdCkgPSBcCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KHNlbGYuX3JlYWRfc2V0LCBzZWxmLl93cml0ZV9zZXQsIFtdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lb3V0KQogICAgICAgICAgICAgICAgIGV4Y2VwdCBzZWxlY3QuZXJyb3IgYXMgZToKICAgICAgICAgICAgICAgICAgICAgaWYgZS5hcmdzWzBdID09IGVycm5vLkVJTlRSOgogICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgcmFpc2UKIAorICAgICAgICAgICAgICAgICMgQWNjb3JkaW5nIHRvIHRoZSBkb2NzLCByZXR1cm5pbmcgdGhyZWUgZW1wdHkgbGlzdHMgaW5kaWNhdGVzCisgICAgICAgICAgICAgICAgIyB0aGF0IHRoZSB0aW1lb3V0IGV4cGlyZWQuCisgICAgICAgICAgICAgICAgaWYgbm90IChybGlzdCBvciB3bGlzdCBvciB4bGlzdCk6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFRpbWVvdXRFeHBpcmVkKHNlbGYuYXJncywgb3JpZ190aW1lb3V0KQorICAgICAgICAgICAgICAgICMgV2UgYWxzbyBjaGVjayB3aGF0IHRpbWUgaXQgaXMgb3Vyc2VsdmVzIGZvciBnb29kIG1lYXN1cmUuCisgICAgICAgICAgICAgICAgc2VsZi5fY2hlY2tfdGltZW91dChlbmR0aW1lLCBvcmlnX3RpbWVvdXQpCisKICAgICAgICAgICAgICAgICAjIFhYWCBSZXdyaXRlIHRoZXNlIHRvIHVzZSBub24tYmxvY2tpbmcgSS9PIG9uIHRoZQogICAgICAgICAgICAgICAgICMgZmlsZSBvYmplY3RzOyB0aGV5IGFyZSBubyBsb25nZXIgdXNpbmcgQyBzdGRpbyEKIAogICAgICAgICAgICAgICAgIGlmIHNlbGYuc3RkaW4gaW4gd2xpc3Q6Ci0gICAgICAgICAgICAgICAgICAgIGNodW5rID0gaW5wdXRbaW5wdXRfb2Zmc2V0IDogaW5wdXRfb2Zmc2V0ICsgX1BJUEVfQlVGXQorICAgICAgICAgICAgICAgICAgICBjaHVuayA9IHNlbGYuX2lucHV0W3NlbGYuX2lucHV0X29mZnNldCA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5faW5wdXRfb2Zmc2V0ICsgX1BJUEVfQlVGXQogICAgICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgICAgICBieXRlc193cml0dGVuID0gb3Mud3JpdGUoc2VsZi5zdGRpbi5maWxlbm8oKSwgY2h1bmspCiAgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiBlLmVycm5vID09IGVycm5vLkVQSVBFOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc3RkaW4uY2xvc2UoKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlX3NldC5yZW1vdmUoc2VsZi5zdGRpbikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl93cml0ZV9zZXQucmVtb3ZlKHNlbGYuc3RkaW4pCiAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dF9vZmZzZXQgKz0gYnl0ZXNfd3JpdHRlbgotICAgICAgICAgICAgICAgICAgICAgICAgaWYgaW5wdXRfb2Zmc2V0ID49IGxlbihpbnB1dCk6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9pbnB1dF9vZmZzZXQgKz0gYnl0ZXNfd3JpdHRlbgorICAgICAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5faW5wdXRfb2Zmc2V0ID49IGxlbihzZWxmLl9pbnB1dCk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zdGRpbi5jbG9zZSgpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgd3JpdGVfc2V0LnJlbW92ZShzZWxmLnN0ZGluKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX3dyaXRlX3NldC5yZW1vdmUoc2VsZi5zdGRpbikKIAogICAgICAgICAgICAgICAgIGlmIHNlbGYuc3Rkb3V0IGluIHJsaXN0OgogICAgICAgICAgICAgICAgICAgICBkYXRhID0gb3MucmVhZChzZWxmLnN0ZG91dC5maWxlbm8oKSwgMTAyNCkKICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGRhdGE6CiAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnN0ZG91dC5jbG9zZSgpCi0gICAgICAgICAgICAgICAgICAgICAgICByZWFkX3NldC5yZW1vdmUoc2VsZi5zdGRvdXQpCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9yZWFkX3NldC5yZW1vdmUoc2VsZi5zdGRvdXQpCiAgICAgICAgICAgICAgICAgICAgIHN0ZG91dC5hcHBlbmQoZGF0YSkKIAogICAgICAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyIGluIHJsaXN0OgogICAgICAgICAgICAgICAgICAgICBkYXRhID0gb3MucmVhZChzZWxmLnN0ZGVyci5maWxlbm8oKSwgMTAyNCkKICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGRhdGE6CiAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnN0ZGVyci5jbG9zZSgpCi0gICAgICAgICAgICAgICAgICAgICAgICByZWFkX3NldC5yZW1vdmUoc2VsZi5zdGRlcnIpCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9yZWFkX3NldC5yZW1vdmUoc2VsZi5zdGRlcnIpCiAgICAgICAgICAgICAgICAgICAgIHN0ZGVyci5hcHBlbmQoZGF0YSkKIAogICAgICAgICAgICAgcmV0dXJuIChzdGRvdXQsIHN0ZGVycikKQEAgLTE1ODQsNjggKzE2NDYsMyBAQAogICAgICAgICAgICAgIiIiS2lsbCB0aGUgcHJvY2VzcyB3aXRoIFNJR0tJTEwKICAgICAgICAgICAgICIiIgogICAgICAgICAgICAgc2VsZi5zZW5kX3NpZ25hbChzaWduYWwuU0lHS0lMTCkKLQotCi1kZWYgX2RlbW9fcG9zaXgoKToKLSAgICAjCi0gICAgIyBFeGFtcGxlIDE6IFNpbXBsZSByZWRpcmVjdGlvbjogR2V0IHByb2Nlc3MgbGlzdAotICAgICMKLSAgICBwbGlzdCA9IFBvcGVuKFsicHMiXSwgc3Rkb3V0PVBJUEUpLmNvbW11bmljYXRlKClbMF0KLSAgICBwcmludCgiUHJvY2VzcyBsaXN0OiIpCi0gICAgcHJpbnQocGxpc3QpCi0KLSAgICAjCi0gICAgIyBFeGFtcGxlIDI6IENoYW5nZSB1aWQgYmVmb3JlIGV4ZWN1dGluZyBjaGlsZAotICAgICMKLSAgICBpZiBvcy5nZXR1aWQoKSA9PSAwOgotICAgICAgICBwID0gUG9wZW4oWyJpZCJdLCBwcmVleGVjX2ZuPWxhbWJkYTogb3Muc2V0dWlkKDEwMCkpCi0gICAgICAgIHAud2FpdCgpCi0KLSAgICAjCi0gICAgIyBFeGFtcGxlIDM6IENvbm5lY3Rpbmcgc2V2ZXJhbCBzdWJwcm9jZXNzZXMKLSAgICAjCi0gICAgcHJpbnQoIkxvb2tpbmcgZm9yICdoZGEnLi4uIikKLSAgICBwMSA9IFBvcGVuKFsiZG1lc2ciXSwgc3Rkb3V0PVBJUEUpCi0gICAgcDIgPSBQb3BlbihbImdyZXAiLCAiaGRhIl0sIHN0ZGluPXAxLnN0ZG91dCwgc3Rkb3V0PVBJUEUpCi0gICAgcHJpbnQocmVwcihwMi5jb21tdW5pY2F0ZSgpWzBdKSkKLQotICAgICMKLSAgICAjIEV4YW1wbGUgNDogQ2F0Y2ggZXhlY3V0aW9uIGVycm9yCi0gICAgIwotICAgIHByaW50KCkKLSAgICBwcmludCgiVHJ5aW5nIGEgd2VpcmQgZmlsZS4uLiIpCi0gICAgdHJ5OgotICAgICAgICBwcmludChQb3BlbihbIi90aGlzL3BhdGgvZG9lcy9ub3QvZXhpc3QiXSkuY29tbXVuaWNhdGUoKSkKLSAgICBleGNlcHQgT1NFcnJvciBhcyBlOgotICAgICAgICBpZiBlLmVycm5vID09IGVycm5vLkVOT0VOVDoKLSAgICAgICAgICAgIHByaW50KCJUaGUgZmlsZSBkaWRuJ3QgZXhpc3QuICBJIHRob3VnaHQgc28uLi4iKQotICAgICAgICAgICAgcHJpbnQoIkNoaWxkIHRyYWNlYmFjazoiKQotICAgICAgICAgICAgcHJpbnQoZS5jaGlsZF90cmFjZWJhY2spCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBwcmludCgiRXJyb3IiLCBlLmVycm5vKQotICAgIGVsc2U6Ci0gICAgICAgIHByaW50KCJHb3NoLiAgTm8gZXJyb3IuIiwgZmlsZT1zeXMuc3RkZXJyKQotCi0KLWRlZiBfZGVtb193aW5kb3dzKCk6Ci0gICAgIwotICAgICMgRXhhbXBsZSAxOiBDb25uZWN0aW5nIHNldmVyYWwgc3VicHJvY2Vzc2VzCi0gICAgIwotICAgIHByaW50KCJMb29raW5nIGZvciAnUFJPTVBUJyBpbiBzZXQgb3V0cHV0Li4uIikKLSAgICBwMSA9IFBvcGVuKCJzZXQiLCBzdGRvdXQ9UElQRSwgc2hlbGw9VHJ1ZSkKLSAgICBwMiA9IFBvcGVuKCdmaW5kICJQUk9NUFQiJywgc3RkaW49cDEuc3Rkb3V0LCBzdGRvdXQ9UElQRSkKLSAgICBwcmludChyZXByKHAyLmNvbW11bmljYXRlKClbMF0pKQotCi0gICAgIwotICAgICMgRXhhbXBsZSAyOiBTaW1wbGUgZXhlY3V0aW9uIG9mIHByb2dyYW0KLSAgICAjCi0gICAgcHJpbnQoIkV4ZWN1dGluZyBjYWxjLi4uIikKLSAgICBwID0gUG9wZW4oImNhbGMiKQotICAgIHAud2FpdCgpCi0KLQotaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKLSAgICBpZiBtc3dpbmRvd3M6Ci0gICAgICAgIF9kZW1vX3dpbmRvd3MoKQotICAgIGVsc2U6Ci0gICAgICAgIF9kZW1vX3Bvc2l4KCkKZGlmZiAtLWdpdCBhL0xpYi9zeXNjb25maWcuY2ZnIGIvTGliL3N5c2NvbmZpZy5jZmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTY1YzBlYgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9zeXNjb25maWcuY2ZnCkBAIC0wLDAgKzEsMTExIEBACitbZ2xvYmFsc10KKyMgVGhlc2UgYXJlIHVzZWZ1bCBjYXRlZ29yaWVzIHRoYXQgY2FuIGJlIHJlZmVyZW5jZWQgYXQgcnVuIHRpbWUsCisjIHVzaW5nIHBhY2thZ2luZy5kYXRhYmFzZS5nZXRfZmlsZS4KKyMgQ29uZmlndXJhdGlvbiBmaWxlcworY29uZmlnID0ge2NvbmZkaXJ9L3tkaXN0cmlidXRpb24ubmFtZX0KKyMgTm9uLXdyaXRhYmxlIGRhdGEgdGhhdCBpcyBpbmRlcGVuZGVudCBvZiBhcmNoaXRlY3R1cmUgKGltYWdlcywgbWFueSB4bWwvdGV4dCBmaWxlcykKK2FwcGRhdGEgPSB7ZGF0YWRpcn0ve2Rpc3RyaWJ1dGlvbi5uYW1lfQorIyBOb24td3JpdGFibGUgZGF0YSB0aGF0IGlzIGFyY2hpdGVjdHVyZS1kZXBlbmRlbnQgKHNvbWUgYmluYXJ5IGRhdGEgZm9ybWF0cykKK2FwcGRhdGEuYXJjaCA9IHtsaWJkaXJ9L3tkaXN0cmlidXRpb24ubmFtZX0KKyMgRGF0YSwgd3JpdHRlbiBieSB0aGUgYXBwL2xpYiwgdGhhdCBtdXN0IGJlIHByZXNlcnZlZCAoZGF0YWJhc2VzKQorYXBwZGF0YS5wZXJzaXN0ZW50ID0ge3N0YXRlZGlyfS9saWIve2Rpc3RyaWJ1dGlvbi5uYW1lfQorIyBEYXRhLCB3cml0dGVuIGJ5IHRoZSBhcHAvbGliLCB0aGF0IGNhbiBiZSBzYWZlbHkgZGlzY2FyZGVkIChjYWNoZSkKK2FwcGRhdGEuZGlzcG9zYWJsZSA9IHtzdGF0ZWRpcn0vY2FjaGUve2Rpc3RyaWJ1dGlvbi5uYW1lfQorIyBIZWxwIG9yIGRvY3VtZW50YXRpb24gZmlsZXMKK2hlbHAgPSB7ZGF0YWRpcn0ve2Rpc3RyaWJ1dGlvbi5uYW1lfQoraWNvbiA9IHtkYXRhZGlyfS9waXhtYXBzCitzY3JpcHRzID0ge2Jhc2V9L2JpbgorCisjIE5vbi1ydW50aW1lIGZpbGVzLiAgVGhlc2UgYXJlIHZhbGlkIGNhdGVnb3JpZXMgZm9yIG1hcmtpbmcgZmlsZXMgZm9yCisjIGluc3RhbGwsIGJ1dCB0aGV5IHNob3VsZCBub3QgYmUgcmVmZXJlbmNlZCBieSB0aGUgYXBwL2xpYiBhdCBydW4gdGltZS4KKyMgSGVscCBvciBkb2N1bWVudGF0aW9uIGZpbGVzCitkb2MgPSB7ZGF0YWRpcn0vZG9jL3tkaXN0cmlidXRpb24ubmFtZX0KKyMgR05VIGluZm8gZG9jdW1lbnRhdGlvbiBmaWxlcworaW5mbyA9IHtkYXRhZGlyfS9pbmZvCisjIG1hbiBwYWdlcworbWFuID0ge2RhdGFkaXJ9L21hbgorCitbcG9zaXhfcHJlZml4XQorIyBDb25maWd1cmF0aW9uIGRpcmVjdG9yaWVzLiAgU29tZSBvZiB0aGVzZSBjb21lIHN0cmFpZ2h0IG91dCBvZiB0aGUKKyMgY29uZmlndXJlIHNjcmlwdC4gIFRoZXkgYXJlIGZvciBpbXBsZW1lbnRpbmcgdGhlIG90aGVyIHZhcmlhYmxlcywgbm90IHRvCisjIGJlIHVzZWQgZGlyZWN0bHkgaW4gW3Jlc291cmNlX2xvY2F0aW9uc10uCitjb25mZGlyID0gL2V0YworZGF0YWRpciA9IC91c3Ivc2hhcmUKK2xpYmRpciA9IC91c3IvbGliCitzdGF0ZWRpciA9IC92YXIKKyMgVXNlciByZXNvdXJjZSBkaXJlY3RvcnkKK2xvY2FsID0gfi8ubG9jYWwve2Rpc3RyaWJ1dGlvbi5uYW1lfQorCitzdGRsaWIgPSB7YmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fQorcGxhdHN0ZGxpYiA9IHtwbGF0YmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fQorcHVyZWxpYiA9IHtiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9L3NpdGUtcGFja2FnZXMKK3BsYXRsaWIgPSB7cGxhdGJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0vc2l0ZS1wYWNrYWdlcworaW5jbHVkZSA9IHtiYXNlfS9pbmNsdWRlL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fXthYmlmbGFnc30KK3BsYXRpbmNsdWRlID0ge3BsYXRiYXNlfS9pbmNsdWRlL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fXthYmlmbGFnc30KK2RhdGEgPSB7YmFzZX0KKworW3Bvc2l4X2hvbWVdCitzdGRsaWIgPSB7YmFzZX0vbGliL3B5dGhvbgorcGxhdHN0ZGxpYiA9IHtiYXNlfS9saWIvcHl0aG9uCitwdXJlbGliID0ge2Jhc2V9L2xpYi9weXRob24KK3BsYXRsaWIgPSB7YmFzZX0vbGliL3B5dGhvbgoraW5jbHVkZSA9IHtiYXNlfS9pbmNsdWRlL3B5dGhvbgorcGxhdGluY2x1ZGUgPSB7YmFzZX0vaW5jbHVkZS9weXRob24KK3NjcmlwdHMgPSB7YmFzZX0vYmluCitkYXRhID0ge2Jhc2V9CisKK1tudF0KK3N0ZGxpYiA9IHtiYXNlfS9MaWIKK3BsYXRzdGRsaWIgPSB7YmFzZX0vTGliCitwdXJlbGliID0ge2Jhc2V9L0xpYi9zaXRlLXBhY2thZ2VzCitwbGF0bGliID0ge2Jhc2V9L0xpYi9zaXRlLXBhY2thZ2VzCitpbmNsdWRlID0ge2Jhc2V9L0luY2x1ZGUKK3BsYXRpbmNsdWRlID0ge2Jhc2V9L0luY2x1ZGUKK3NjcmlwdHMgPSB7YmFzZX0vU2NyaXB0cworZGF0YSA9IHtiYXNlfQorCitbb3MyXQorc3RkbGliID0ge2Jhc2V9L0xpYgorcGxhdHN0ZGxpYiA9IHtiYXNlfS9MaWIKK3B1cmVsaWIgPSB7YmFzZX0vTGliL3NpdGUtcGFja2FnZXMKK3BsYXRsaWIgPSB7YmFzZX0vTGliL3NpdGUtcGFja2FnZXMKK2luY2x1ZGUgPSB7YmFzZX0vSW5jbHVkZQorcGxhdGluY2x1ZGUgPSB7YmFzZX0vSW5jbHVkZQorc2NyaXB0cyA9IHtiYXNlfS9TY3JpcHRzCitkYXRhID0ge2Jhc2V9CisKK1tvczJfaG9tZV0KK3N0ZGxpYiA9IHt1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fQorcGxhdHN0ZGxpYiA9IHt1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fQorcHVyZWxpYiA9IHt1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fS9zaXRlLXBhY2thZ2VzCitwbGF0bGliID0ge3VzZXJiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9L3NpdGUtcGFja2FnZXMKK2luY2x1ZGUgPSB7dXNlcmJhc2V9L2luY2x1ZGUvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9CitzY3JpcHRzID0ge3VzZXJiYXNlfS9iaW4KK2RhdGEgPSB7dXNlcmJhc2V9CisKK1tudF91c2VyXQorc3RkbGliID0ge3VzZXJiYXNlfS9QeXRob257cHlfdmVyc2lvbl9ub2RvdH0KK3BsYXRzdGRsaWIgPSB7dXNlcmJhc2V9L1B5dGhvbntweV92ZXJzaW9uX25vZG90fQorcHVyZWxpYiA9IHt1c2VyYmFzZX0vUHl0aG9ue3B5X3ZlcnNpb25fbm9kb3R9L3NpdGUtcGFja2FnZXMKK3BsYXRsaWIgPSB7dXNlcmJhc2V9L1B5dGhvbntweV92ZXJzaW9uX25vZG90fS9zaXRlLXBhY2thZ2VzCitpbmNsdWRlID0ge3VzZXJiYXNlfS9QeXRob257cHlfdmVyc2lvbl9ub2RvdH0vSW5jbHVkZQorc2NyaXB0cyA9IHt1c2VyYmFzZX0vU2NyaXB0cworZGF0YSA9IHt1c2VyYmFzZX0KKworW3Bvc2l4X3VzZXJdCitzdGRsaWIgPSB7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0KK3BsYXRzdGRsaWIgPSB7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0KK3B1cmVsaWIgPSB7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0vc2l0ZS1wYWNrYWdlcworcGxhdGxpYiA9IHt1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fS9zaXRlLXBhY2thZ2VzCitpbmNsdWRlID0ge3VzZXJiYXNlfS9pbmNsdWRlL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fQorc2NyaXB0cyA9IHt1c2VyYmFzZX0vYmluCitkYXRhID0ge3VzZXJiYXNlfQorCitbb3N4X2ZyYW1ld29ya191c2VyXQorc3RkbGliID0ge3VzZXJiYXNlfS9saWIvcHl0aG9uCitwbGF0c3RkbGliID0ge3VzZXJiYXNlfS9saWIvcHl0aG9uCitwdXJlbGliID0ge3VzZXJiYXNlfS9saWIvcHl0aG9uL3NpdGUtcGFja2FnZXMKK3BsYXRsaWIgPSB7dXNlcmJhc2V9L2xpYi9weXRob24vc2l0ZS1wYWNrYWdlcworaW5jbHVkZSA9IHt1c2VyYmFzZX0vaW5jbHVkZQorc2NyaXB0cyA9IHt1c2VyYmFzZX0vYmluCitkYXRhID0ge3VzZXJiYXNlfQpkaWZmIC0tZ2l0IGEvTGliL3N5c2NvbmZpZy5weSBiL0xpYi9zeXNjb25maWcucHkKaW5kZXggYjIxODNkOC4uZTVjMWU2MCAxMDA2NDQKLS0tIGEvTGliL3N5c2NvbmZpZy5weQorKysgYi9MaWIvc3lzY29uZmlnLnB5CkBAIC0xLDkgKzEsMTAgQEAKLSIiIlByb3ZpZGUgYWNjZXNzIHRvIFB5dGhvbidzIGNvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24uCisiIiJBY2Nlc3MgdG8gUHl0aG9uJ3MgY29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbi4iIiIKIAotIiIiCi1pbXBvcnQgc3lzCiBpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHN5cwogZnJvbSBvcy5wYXRoIGltcG9ydCBwYXJkaXIsIHJlYWxwYXRoCitmcm9tIGNvbmZpZ3BhcnNlciBpbXBvcnQgUmF3Q29uZmlnUGFyc2VyCiAKIF9fYWxsX18gPSBbCiAgICAgJ2dldF9jb25maWdfaF9maWxlbmFtZScsCkBAIC0xNyw5MSArMTgsNTEgQEAKICAgICAnZ2V0X3B5dGhvbl92ZXJzaW9uJywKICAgICAnZ2V0X3NjaGVtZV9uYW1lcycsCiAgICAgJ3BhcnNlX2NvbmZpZ19oJywKLSAgICBdCitdCiAKLV9JTlNUQUxMX1NDSEVNRVMgPSB7Ci0gICAgJ3Bvc2l4X3ByZWZpeCc6IHsKLSAgICAgICAgJ3N0ZGxpYic6ICd7YmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fScsCi0gICAgICAgICdwbGF0c3RkbGliJzogJ3twbGF0YmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fScsCi0gICAgICAgICdwdXJlbGliJzogJ3tiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9L3NpdGUtcGFja2FnZXMnLAotICAgICAgICAncGxhdGxpYic6ICd7cGxhdGJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0vc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdpbmNsdWRlJzoKLSAgICAgICAgICAgICd7YmFzZX0vaW5jbHVkZS9weXRob257cHlfdmVyc2lvbl9zaG9ydH17YWJpZmxhZ3N9JywKLSAgICAgICAgJ3BsYXRpbmNsdWRlJzoKLSAgICAgICAgICAgICd7cGxhdGJhc2V9L2luY2x1ZGUvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9e2FiaWZsYWdzfScsCi0gICAgICAgICdzY3JpcHRzJzogJ3tiYXNlfS9iaW4nLAotICAgICAgICAnZGF0YSc6ICd7YmFzZX0nLAotICAgICAgICB9LAotICAgICdwb3NpeF9ob21lJzogewotICAgICAgICAnc3RkbGliJzogJ3tiYXNlfS9saWIvcHl0aG9uJywKLSAgICAgICAgJ3BsYXRzdGRsaWInOiAne2Jhc2V9L2xpYi9weXRob24nLAotICAgICAgICAncHVyZWxpYic6ICd7YmFzZX0vbGliL3B5dGhvbicsCi0gICAgICAgICdwbGF0bGliJzogJ3tiYXNlfS9saWIvcHl0aG9uJywKLSAgICAgICAgJ2luY2x1ZGUnOiAne2Jhc2V9L2luY2x1ZGUvcHl0aG9uJywKLSAgICAgICAgJ3BsYXRpbmNsdWRlJzogJ3tiYXNlfS9pbmNsdWRlL3B5dGhvbicsCi0gICAgICAgICdzY3JpcHRzJzogJ3tiYXNlfS9iaW4nLAotICAgICAgICAnZGF0YScgICA6ICd7YmFzZX0nLAotICAgICAgICB9LAotICAgICdudCc6IHsKLSAgICAgICAgJ3N0ZGxpYic6ICd7YmFzZX0vTGliJywKLSAgICAgICAgJ3BsYXRzdGRsaWInOiAne2Jhc2V9L0xpYicsCi0gICAgICAgICdwdXJlbGliJzogJ3tiYXNlfS9MaWIvc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdwbGF0bGliJzogJ3tiYXNlfS9MaWIvc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdpbmNsdWRlJzogJ3tiYXNlfS9JbmNsdWRlJywKLSAgICAgICAgJ3BsYXRpbmNsdWRlJzogJ3tiYXNlfS9JbmNsdWRlJywKLSAgICAgICAgJ3NjcmlwdHMnOiAne2Jhc2V9L1NjcmlwdHMnLAotICAgICAgICAnZGF0YScgICA6ICd7YmFzZX0nLAotICAgICAgICB9LAotICAgICdvczInOiB7Ci0gICAgICAgICdzdGRsaWInOiAne2Jhc2V9L0xpYicsCi0gICAgICAgICdwbGF0c3RkbGliJzogJ3tiYXNlfS9MaWInLAotICAgICAgICAncHVyZWxpYic6ICd7YmFzZX0vTGliL3NpdGUtcGFja2FnZXMnLAotICAgICAgICAncGxhdGxpYic6ICd7YmFzZX0vTGliL3NpdGUtcGFja2FnZXMnLAotICAgICAgICAnaW5jbHVkZSc6ICd7YmFzZX0vSW5jbHVkZScsCi0gICAgICAgICdwbGF0aW5jbHVkZSc6ICd7YmFzZX0vSW5jbHVkZScsCi0gICAgICAgICdzY3JpcHRzJzogJ3tiYXNlfS9TY3JpcHRzJywKLSAgICAgICAgJ2RhdGEnICAgOiAne2Jhc2V9JywKLSAgICAgICAgfSwKLSAgICAnb3MyX2hvbWUnOiB7Ci0gICAgICAgICdzdGRsaWInOiAne3VzZXJiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9JywKLSAgICAgICAgJ3BsYXRzdGRsaWInOiAne3VzZXJiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9JywKLSAgICAgICAgJ3B1cmVsaWInOiAne3VzZXJiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9L3NpdGUtcGFja2FnZXMnLAotICAgICAgICAncGxhdGxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0vc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdpbmNsdWRlJzogJ3t1c2VyYmFzZX0vaW5jbHVkZS9weXRob257cHlfdmVyc2lvbl9zaG9ydH0nLAotICAgICAgICAnc2NyaXB0cyc6ICd7dXNlcmJhc2V9L2JpbicsCi0gICAgICAgICdkYXRhJyAgIDogJ3t1c2VyYmFzZX0nLAotICAgICAgICB9LAotICAgICdudF91c2VyJzogewotICAgICAgICAnc3RkbGliJzogJ3t1c2VyYmFzZX0vUHl0aG9ue3B5X3ZlcnNpb25fbm9kb3R9JywKLSAgICAgICAgJ3BsYXRzdGRsaWInOiAne3VzZXJiYXNlfS9QeXRob257cHlfdmVyc2lvbl9ub2RvdH0nLAotICAgICAgICAncHVyZWxpYic6ICd7dXNlcmJhc2V9L1B5dGhvbntweV92ZXJzaW9uX25vZG90fS9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ3BsYXRsaWInOiAne3VzZXJiYXNlfS9QeXRob257cHlfdmVyc2lvbl9ub2RvdH0vc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdpbmNsdWRlJzogJ3t1c2VyYmFzZX0vUHl0aG9ue3B5X3ZlcnNpb25fbm9kb3R9L0luY2x1ZGUnLAotICAgICAgICAnc2NyaXB0cyc6ICd7dXNlcmJhc2V9L1NjcmlwdHMnLAotICAgICAgICAnZGF0YScgICA6ICd7dXNlcmJhc2V9JywKLSAgICAgICAgfSwKLSAgICAncG9zaXhfdXNlcic6IHsKLSAgICAgICAgJ3N0ZGxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0nLAotICAgICAgICAncGxhdHN0ZGxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0nLAotICAgICAgICAncHVyZWxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0vc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdwbGF0bGliJzogJ3t1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fS9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ2luY2x1ZGUnOiAne3VzZXJiYXNlfS9pbmNsdWRlL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fScsCi0gICAgICAgICdzY3JpcHRzJzogJ3t1c2VyYmFzZX0vYmluJywKLSAgICAgICAgJ2RhdGEnICAgOiAne3VzZXJiYXNlfScsCi0gICAgICAgIH0sCi0gICAgJ29zeF9mcmFtZXdvcmtfdXNlcic6IHsKLSAgICAgICAgJ3N0ZGxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob24nLAotICAgICAgICAncGxhdHN0ZGxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob24nLAotICAgICAgICAncHVyZWxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob24vc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdwbGF0bGliJzogJ3t1c2VyYmFzZX0vbGliL3B5dGhvbi9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ2luY2x1ZGUnOiAne3VzZXJiYXNlfS9pbmNsdWRlJywKLSAgICAgICAgJ3NjcmlwdHMnOiAne3VzZXJiYXNlfS9iaW4nLAotICAgICAgICAnZGF0YScgICA6ICd7dXNlcmJhc2V9JywKLSAgICAgICAgfSwKLSAgICB9CisjIGxldCdzIHJlYWQgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZQorIyBYWFggX0NPTkZJR19ESVIgd2lsbCBiZSBzZXQgYnkgdGhlIE1ha2VmaWxlIGxhdGVyCitfQ09ORklHX0RJUiA9IG9zLnBhdGgubm9ybXBhdGgob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSkKK19DT05GSUdfRklMRSA9IG9zLnBhdGguam9pbihfQ09ORklHX0RJUiwgJ3N5c2NvbmZpZy5jZmcnKQorX1NDSEVNRVMgPSBSYXdDb25maWdQYXJzZXIoZGljdF90eXBlPWRpY3QpICAgIyBGYXN0ZXIgdGhhbiBPcmRlcmVkRGljdAorX1NDSEVNRVMucmVhZChfQ09ORklHX0ZJTEUpCitfVkFSX1JFUEwgPSByZS5jb21waWxlKHInXHsoW157XSo/KVx9JykKIAotX1NDSEVNRV9LRVlTID0gKCdzdGRsaWInLCAncGxhdHN0ZGxpYicsICdwdXJlbGliJywgJ3BsYXRsaWInLCAnaW5jbHVkZScsCi0gICAgICAgICAgICAgICAgJ3NjcmlwdHMnLCAnZGF0YScpCisKK2RlZiBfZXhwYW5kX2dsb2JhbHMoY29uZmlnKToKKyAgICBpZiBjb25maWcuaGFzX3NlY3Rpb24oJ2dsb2JhbHMnKToKKyAgICAgICAgZ2xvYmFscyA9IGNvbmZpZy5pdGVtcygnZ2xvYmFscycpCisgICAgZWxzZToKKyAgICAgICAgZ2xvYmFscyA9IHR1cGxlKCkKKworICAgIHNlY3Rpb25zID0gY29uZmlnLnNlY3Rpb25zKCkKKyAgICBmb3Igc2VjdGlvbiBpbiBzZWN0aW9uczoKKyAgICAgICAgaWYgc2VjdGlvbiA9PSAnZ2xvYmFscyc6CisgICAgICAgICAgICBjb250aW51ZQorICAgICAgICBmb3Igb3B0aW9uLCB2YWx1ZSBpbiBnbG9iYWxzOgorICAgICAgICAgICAgaWYgY29uZmlnLmhhc19vcHRpb24oc2VjdGlvbiwgb3B0aW9uKToKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgY29uZmlnLnNldChzZWN0aW9uLCBvcHRpb24sIHZhbHVlKQorICAgIGNvbmZpZy5yZW1vdmVfc2VjdGlvbignZ2xvYmFscycpCisKKyAgICAjIG5vdyBleHBhbmRpbmcgbG9jYWwgdmFyaWFibGVzIGRlZmluZWQgaW4gdGhlIGNmZyBmaWxlCisgICAgIworICAgIGZvciBzZWN0aW9uIGluIGNvbmZpZy5zZWN0aW9ucygpOgorICAgICAgICB2YXJpYWJsZXMgPSBkaWN0KGNvbmZpZy5pdGVtcyhzZWN0aW9uKSkKKworICAgICAgICBkZWYgX3JlcGxhY2VyKG1hdGNob2JqKToKKyAgICAgICAgICAgIG5hbWUgPSBtYXRjaG9iai5ncm91cCgxKQorICAgICAgICAgICAgaWYgbmFtZSBpbiB2YXJpYWJsZXM6CisgICAgICAgICAgICAgICAgcmV0dXJuIHZhcmlhYmxlc1tuYW1lXQorICAgICAgICAgICAgcmV0dXJuIG1hdGNob2JqLmdyb3VwKDApCisKKyAgICAgICAgZm9yIG9wdGlvbiwgdmFsdWUgaW4gY29uZmlnLml0ZW1zKHNlY3Rpb24pOgorICAgICAgICAgICAgY29uZmlnLnNldChzZWN0aW9uLCBvcHRpb24sIF9WQVJfUkVQTC5zdWIoX3JlcGxhY2VyLCB2YWx1ZSkpCisKK19leHBhbmRfZ2xvYmFscyhfU0NIRU1FUykKKworICMgRklYTUUgZG9uJ3QgcmVseSBvbiBzeXMudmVyc2lvbiBoZXJlLCBpdHMgZm9ybWF0IGlzIGFuIGltcGxlbWVudGF0aW4gZGV0YWlsCisgIyBvZiBDUHl0aG9uLCB1c2Ugc3lzLnZlcnNpb25faW5mbyBvciBzeXMuaGV4dmVyc2lvbgogX1BZX1ZFUlNJT04gPSBzeXMudmVyc2lvbi5zcGxpdCgpWzBdCiBfUFlfVkVSU0lPTl9TSE9SVCA9IHN5cy52ZXJzaW9uWzozXQogX1BZX1ZFUlNJT05fU0hPUlRfTk9fRE9UID0gX1BZX1ZFUlNJT05bMF0gKyBfUFlfVkVSU0lPTlsyXQpAQCAtMTEwLDYgKzcxLDcgQEAKIF9DT05GSUdfVkFSUyA9IE5vbmUKIF9VU0VSX0JBU0UgPSBOb25lCiAKKwogZGVmIF9zYWZlX3JlYWxwYXRoKHBhdGgpOgogICAgIHRyeToKICAgICAgICAgcmV0dXJuIHJlYWxwYXRoKHBhdGgpCkBAIC0xMzIsNiArOTQsNyBAQAogaWYgb3MubmFtZSA9PSAibnQiIGFuZCAiXFxwY2J1aWxkXFxhbWQ2NCIgaW4gX1BST0pFQ1RfQkFTRVstMTQ6XS5sb3dlcigpOgogICAgIF9QUk9KRUNUX0JBU0UgPSBfc2FmZV9yZWFscGF0aChvcy5wYXRoLmpvaW4oX1BST0pFQ1RfQkFTRSwgcGFyZGlyLCBwYXJkaXIpKQogCisKIGRlZiBpc19weXRob25fYnVpbGQoKToKICAgICBmb3IgZm4gaW4gKCJTZXR1cC5kaXN0IiwgIlNldHVwLmxvY2FsIik6CiAgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKG9zLnBhdGguam9pbihfUFJPSkVDVF9CQVNFLCAiTW9kdWxlcyIsIGZuKSk6CkBAIC0xNDIsMTcgKzEwNSwyNSBAQAogCiBpZiBfUFlUSE9OX0JVSUxEOgogICAgIGZvciBzY2hlbWUgaW4gKCdwb3NpeF9wcmVmaXgnLCAncG9zaXhfaG9tZScpOgotICAgICAgICBfSU5TVEFMTF9TQ0hFTUVTW3NjaGVtZV1bJ2luY2x1ZGUnXSA9ICd7c3JjZGlyfS9JbmNsdWRlJwotICAgICAgICBfSU5TVEFMTF9TQ0hFTUVTW3NjaGVtZV1bJ3BsYXRpbmNsdWRlJ10gPSAne3Byb2plY3RiYXNlfS8uJworICAgICAgICBfU0NIRU1FUy5zZXQoc2NoZW1lLCAnaW5jbHVkZScsICd7c3JjZGlyfS9JbmNsdWRlJykKKyAgICAgICAgX1NDSEVNRVMuc2V0KHNjaGVtZSwgJ3BsYXRpbmNsdWRlJywgJ3twcm9qZWN0YmFzZX0vLicpCiAKLWRlZiBfc3Vic3RfdmFycyhzLCBsb2NhbF92YXJzKToKLSAgICB0cnk6Ci0gICAgICAgIHJldHVybiBzLmZvcm1hdCgqKmxvY2FsX3ZhcnMpCi0gICAgZXhjZXB0IEtleUVycm9yOgotICAgICAgICB0cnk6Ci0gICAgICAgICAgICByZXR1cm4gcy5mb3JtYXQoKipvcy5lbnZpcm9uKQotICAgICAgICBleGNlcHQgS2V5RXJyb3IgYXMgdmFyOgotICAgICAgICAgICAgcmFpc2UgQXR0cmlidXRlRXJyb3IoJ3slc30nICUgdmFyKQorCitkZWYgX3N1YnN0X3ZhcnMocGF0aCwgbG9jYWxfdmFycyk6CisgICAgIiIiSW4gdGhlIHN0cmluZyBgcGF0aGAsIHJlcGxhY2UgdG9rZW5zIGxpa2Uge3NvbWUudGhpbmd9IHdpdGggdGhlCisgICAgY29ycmVzcG9uZGluZyB2YWx1ZSBmcm9tIHRoZSBtYXAgYGxvY2FsX3ZhcnNgLgorCisgICAgSWYgdGhlcmUgaXMgbm8gY29ycmVzcG9uZGluZyB2YWx1ZSwgbGVhdmUgdGhlIHRva2VuIHVuY2hhbmdlZC4KKyAgICAiIiIKKyAgICBkZWYgX3JlcGxhY2VyKG1hdGNob2JqKToKKyAgICAgICAgbmFtZSA9IG1hdGNob2JqLmdyb3VwKDEpCisgICAgICAgIGlmIG5hbWUgaW4gbG9jYWxfdmFyczoKKyAgICAgICAgICAgIHJldHVybiBsb2NhbF92YXJzW25hbWVdCisgICAgICAgIGVsaWYgbmFtZSBpbiBvcy5lbnZpcm9uOgorICAgICAgICAgICAgcmV0dXJuIG9zLmVudmlyb25bbmFtZV0KKyAgICAgICAgcmV0dXJuIG1hdGNob2JqLmdyb3VwKDApCisgICAgcmV0dXJuIF9WQVJfUkVQTC5zdWIoX3JlcGxhY2VyLCBwYXRoKQorCiAKIGRlZiBfZXh0ZW5kX2RpY3QodGFyZ2V0X2RpY3QsIG90aGVyX2RpY3QpOgogICAgIHRhcmdldF9rZXlzID0gdGFyZ2V0X2RpY3Qua2V5cygpCkBAIC0xNjEsNDEgKzEzMiw2MyBAQAogICAgICAgICAgICAgY29udGludWUKICAgICAgICAgdGFyZ2V0X2RpY3Rba2V5XSA9IHZhbHVlCiAKKwogZGVmIF9leHBhbmRfdmFycyhzY2hlbWUsIHZhcnMpOgogICAgIHJlcyA9IHt9CiAgICAgaWYgdmFycyBpcyBOb25lOgogICAgICAgICB2YXJzID0ge30KICAgICBfZXh0ZW5kX2RpY3QodmFycywgZ2V0X2NvbmZpZ192YXJzKCkpCiAKLSAgICBmb3Iga2V5LCB2YWx1ZSBpbiBfSU5TVEFMTF9TQ0hFTUVTW3NjaGVtZV0uaXRlbXMoKToKKyAgICBmb3Iga2V5LCB2YWx1ZSBpbiBfU0NIRU1FUy5pdGVtcyhzY2hlbWUpOgogICAgICAgICBpZiBvcy5uYW1lIGluICgncG9zaXgnLCAnbnQnKToKICAgICAgICAgICAgIHZhbHVlID0gb3MucGF0aC5leHBhbmR1c2VyKHZhbHVlKQogICAgICAgICByZXNba2V5XSA9IG9zLnBhdGgubm9ybXBhdGgoX3N1YnN0X3ZhcnModmFsdWUsIHZhcnMpKQogICAgIHJldHVybiByZXMKIAorCitkZWYgZm9ybWF0X3ZhbHVlKHZhbHVlLCB2YXJzKToKKyAgICBkZWYgX3JlcGxhY2VyKG1hdGNob2JqKToKKyAgICAgICAgbmFtZSA9IG1hdGNob2JqLmdyb3VwKDEpCisgICAgICAgIGlmIG5hbWUgaW4gdmFyczoKKyAgICAgICAgICAgIHJldHVybiB2YXJzW25hbWVdCisgICAgICAgIHJldHVybiBtYXRjaG9iai5ncm91cCgwKQorICAgIHJldHVybiBfVkFSX1JFUEwuc3ViKF9yZXBsYWNlciwgdmFsdWUpCisKKwogZGVmIF9nZXRfZGVmYXVsdF9zY2hlbWUoKToKICAgICBpZiBvcy5uYW1lID09ICdwb3NpeCc6CiAgICAgICAgICMgdGhlIGRlZmF1bHQgc2NoZW1lIGZvciBwb3NpeCBpcyBwb3NpeF9wcmVmaXgKICAgICAgICAgcmV0dXJuICdwb3NpeF9wcmVmaXgnCiAgICAgcmV0dXJuIG9zLm5hbWUKIAorCiBkZWYgX2dldHVzZXJiYXNlKCk6CiAgICAgZW52X2Jhc2UgPSBvcy5lbnZpcm9uLmdldCgiUFlUSE9OVVNFUkJBU0UiLCBOb25lKQorCiAgICAgZGVmIGpvaW51c2VyKCphcmdzKToKICAgICAgICAgcmV0dXJuIG9zLnBhdGguZXhwYW5kdXNlcihvcy5wYXRoLmpvaW4oKmFyZ3MpKQogCiAgICAgIyB3aGF0IGFib3V0ICdvczJlbXgnLCAncmlzY29zJyA/CiAgICAgaWYgb3MubmFtZSA9PSAibnQiOgogICAgICAgICBiYXNlID0gb3MuZW52aXJvbi5nZXQoIkFQUERBVEEiKSBvciAifiIKLSAgICAgICAgcmV0dXJuIGVudl9iYXNlIGlmIGVudl9iYXNlIGVsc2Ugam9pbnVzZXIoYmFzZSwgIlB5dGhvbiIpCisgICAgICAgIGlmIGVudl9iYXNlOgorICAgICAgICAgICAgcmV0dXJuIGVudl9iYXNlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gam9pbnVzZXIoYmFzZSwgIlB5dGhvbiIpCiAKICAgICBpZiBzeXMucGxhdGZvcm0gPT0gImRhcndpbiI6CiAgICAgICAgIGZyYW1ld29yayA9IGdldF9jb25maWdfdmFyKCJQWVRIT05GUkFNRVdPUksiKQogICAgICAgICBpZiBmcmFtZXdvcms6Ci0gICAgICAgICAgICByZXR1cm4gZW52X2Jhc2UgaWYgZW52X2Jhc2UgZWxzZSBqb2ludXNlcigifiIsICJMaWJyYXJ5IiwgZnJhbWV3b3JrLCAiJWQuJWQiJSgKLSAgICAgICAgICAgICAgICBzeXMudmVyc2lvbl9pbmZvWzoyXSkpCisgICAgICAgICAgICBpZiBlbnZfYmFzZToKKyAgICAgICAgICAgICAgICByZXR1cm4gZW52X2Jhc2UKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuIGpvaW51c2VyKCJ+IiwgIkxpYnJhcnkiLCBmcmFtZXdvcmssICIlZC4lZCIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXMudmVyc2lvbl9pbmZvWzoyXSkKIAotICAgIHJldHVybiBlbnZfYmFzZSBpZiBlbnZfYmFzZSBlbHNlIGpvaW51c2VyKCJ+IiwgIi5sb2NhbCIpCisgICAgaWYgZW52X2Jhc2U6CisgICAgICAgIHJldHVybiBlbnZfYmFzZQorICAgIGVsc2U6CisgICAgICAgIHJldHVybiBqb2ludXNlcigifiIsICIubG9jYWwiKQogCiAKIGRlZiBfcGFyc2VfbWFrZWZpbGUoZmlsZW5hbWUsIHZhcnM9Tm9uZSk6CkBAIC0yMDUsNyArMTk4LDYgQEAKICAgICBvcHRpb25hbCBkaWN0aW9uYXJ5IGlzIHBhc3NlZCBpbiBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50LCBpdCBpcwogICAgIHVzZWQgaW5zdGVhZCBvZiBhIG5ldyBkaWN0aW9uYXJ5LgogICAgICIiIgotICAgIGltcG9ydCByZQogICAgICMgUmVnZXhlcyBuZWVkZWQgZm9yIHBhcnNpbmcgTWFrZWZpbGUgKGFuZCBzaW1pbGFyIHN5bnRheGVzLAogICAgICMgbGlrZSBvbGQtc3R5bGUgU2V0dXAgZmlsZXMpLgogICAgIF92YXJpYWJsZV9yeCA9IHJlLmNvbXBpbGUoIihbYS16QS1aXVthLXpBLVowLTlfXSspXHMqPVxzKiguKikiKQpAQCAtMjY3LDcgKzI1OSw4IEBACiAgICAgICAgICAgICAgICAgICAgIGl0ZW0gPSBvcy5lbnZpcm9uW25dCiAKICAgICAgICAgICAgICAgICBlbGlmIG4gaW4gcmVuYW1lZF92YXJpYWJsZXM6Ci0gICAgICAgICAgICAgICAgICAgIGlmIG5hbWUuc3RhcnRzd2l0aCgnUFlfJykgYW5kIG5hbWVbMzpdIGluIHJlbmFtZWRfdmFyaWFibGVzOgorICAgICAgICAgICAgICAgICAgICBpZiAobmFtZS5zdGFydHN3aXRoKCdQWV8nKSBhbmQKKyAgICAgICAgICAgICAgICAgICAgICAgIG5hbWVbMzpdIGluIHJlbmFtZWRfdmFyaWFibGVzKToKICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0gPSAiIgogCiAgICAgICAgICAgICAgICAgICAgIGVsaWYgJ1BZXycgKyBuIGluIG5vdGRvbmU6CkBAIC0zMDAsNyArMjkzLDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBuYW1lIG5vdCBpbiBkb25lOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb25lW25hbWVdID0gdmFsdWUKIAotCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICMgYm9ndXMgdmFyaWFibGUgcmVmZXJlbmNlIChlLmcuICJwcmVmaXg9JC9vcHQvcHl0aG9uIik7CiAgICAgICAgICAgICAgICAgIyBqdXN0IGRyb3AgaXQgc2luY2Ugd2UgY2FuJ3QgZGVhbApAQCAtMzIxLDEzICszMTMsMTYgQEAKICAgICAiIiJSZXR1cm4gdGhlIHBhdGggb2YgdGhlIE1ha2VmaWxlLiIiIgogICAgIGlmIF9QWVRIT05fQlVJTEQ6CiAgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oX1BST0pFQ1RfQkFTRSwgIk1ha2VmaWxlIikKLSAgICByZXR1cm4gb3MucGF0aC5qb2luKGdldF9wYXRoKCdzdGRsaWInKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICdjb25maWcte317fScuZm9ybWF0KF9QWV9WRVJTSU9OX1NIT1JULCBzeXMuYWJpZmxhZ3MpLAotICAgICAgICAgICAgICAgICAgICAgICAgJ01ha2VmaWxlJykKKyAgICBpZiBoYXNhdHRyKHN5cywgJ2FiaWZsYWdzJyk6CisgICAgICAgIGNvbmZpZ19kaXJfbmFtZSA9ICdjb25maWctJXMlcycgJSAoX1BZX1ZFUlNJT05fU0hPUlQsIHN5cy5hYmlmbGFncykKKyAgICBlbHNlOgorICAgICAgICBjb25maWdfZGlyX25hbWUgPSAnY29uZmlnJworICAgIHJldHVybiBvcy5wYXRoLmpvaW4oZ2V0X3BhdGgoJ3N0ZGxpYicpLCBjb25maWdfZGlyX25hbWUsICdNYWtlZmlsZScpCiAKLQotZGVmIF9pbml0X3Bvc2l4KHZhcnMpOgotICAgICIiIkluaXRpYWxpemUgdGhlIG1vZHVsZSBhcyBhcHByb3ByaWF0ZSBmb3IgUE9TSVggc3lzdGVtcy4iIiIKK2RlZiBfZ2VuZXJhdGVfcG9zaXhfdmFycygpOgorICAgICIiIkdlbmVyYXRlIHRoZSBQeXRob24gbW9kdWxlIGNvbnRhaW5pbmcgYnVpbGQtdGltZSB2YXJpYWJsZXMuIiIiCisgICAgaW1wb3J0IHBwcmludAorICAgIHZhcnMgPSB7fQogICAgICMgbG9hZCB0aGUgaW5zdGFsbGVkIE1ha2VmaWxlOgogICAgIG1ha2VmaWxlID0gZ2V0X21ha2VmaWxlX2ZpbGVuYW1lKCkKICAgICB0cnk6CkBAIC0zNTMsNiArMzQ4LDE5IEBACiAgICAgaWYgX1BZVEhPTl9CVUlMRDoKICAgICAgICAgdmFyc1snTERTSEFSRUQnXSA9IHZhcnNbJ0JMRFNIQVJFRCddCiAKKyAgICBkZXN0ZmlsZSA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnX3N5c2NvbmZpZ2RhdGEucHknKQorICAgIHdpdGggb3BlbihkZXN0ZmlsZSwgJ3cnLCBlbmNvZGluZz0ndXRmOCcpIGFzIGY6CisgICAgICAgIGYud3JpdGUoJyMgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZ2VuZXJhdGVkIGFuZCB1c2VkIGJ5JworICAgICAgICAgICAgICAgICcgdGhlIHN5c2NvbmZpZyBtb2R1bGVcbicpCisgICAgICAgIGYud3JpdGUoJ2J1aWxkX3RpbWVfdmFycyA9ICcpCisgICAgICAgIHBwcmludC5wcHJpbnQodmFycywgc3RyZWFtPWYpCisKK2RlZiBfaW5pdF9wb3NpeCh2YXJzKToKKyAgICAiIiJJbml0aWFsaXplIHRoZSBtb2R1bGUgYXMgYXBwcm9wcmlhdGUgZm9yIFBPU0lYIHN5c3RlbXMuIiIiCisgICAgIyBfc3lzY29uZmlnZGF0YSBpcyBnZW5lcmF0ZWQgYXQgYnVpbGQgdGltZSwgc2VlIF9nZW5lcmF0ZV9wb3NpeF92YXJzKCkKKyAgICBmcm9tIF9zeXNjb25maWdkYXRhIGltcG9ydCBidWlsZF90aW1lX3ZhcnMKKyAgICB2YXJzLnVwZGF0ZShidWlsZF90aW1lX3ZhcnMpCisKIGRlZiBfaW5pdF9ub25fcG9zaXgodmFycyk6CiAgICAgIiIiSW5pdGlhbGl6ZSB0aGUgbW9kdWxlIGFzIGFwcHJvcHJpYXRlIGZvciBOVCIiIgogICAgICMgc2V0IGJhc2ljIGluc3RhbGwgZGlyZWN0b3JpZXMKQEAgLTM3Niw3ICszODQsNiBAQAogICAgIG9wdGlvbmFsIGRpY3Rpb25hcnkgaXMgcGFzc2VkIGluIGFzIHRoZSBzZWNvbmQgYXJndW1lbnQsIGl0IGlzCiAgICAgdXNlZCBpbnN0ZWFkIG9mIGEgbmV3IGRpY3Rpb25hcnkuCiAgICAgIiIiCi0gICAgaW1wb3J0IHJlCiAgICAgaWYgdmFycyBpcyBOb25lOgogICAgICAgICB2YXJzID0ge30KICAgICBkZWZpbmVfcnggPSByZS5jb21waWxlKCIjZGVmaW5lIChbQS1aXVtBLVphLXowLTlfXSspICguKilcbiIpCkBAIC0zODksOCArMzk2LDEwIEBACiAgICAgICAgIG0gPSBkZWZpbmVfcngubWF0Y2gobGluZSkKICAgICAgICAgaWYgbToKICAgICAgICAgICAgIG4sIHYgPSBtLmdyb3VwKDEsIDIpCi0gICAgICAgICAgICB0cnk6IHYgPSBpbnQodikKLSAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOiBwYXNzCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdiA9IGludCh2KQorICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICAgICAgdmFyc1tuXSA9IHYKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG0gPSB1bmRlZl9yeC5tYXRjaChsaW5lKQpAQCAtMzk4LDYgKzQwNyw3IEBACiAgICAgICAgICAgICAgICAgdmFyc1ttLmdyb3VwKDEpXSA9IDAKICAgICByZXR1cm4gdmFycwogCisKIGRlZiBnZXRfY29uZmlnX2hfZmlsZW5hbWUoKToKICAgICAiIiJSZXR1cm4gdGhlIHBhdGggb2YgcHljb25maWcuaC4iIiIKICAgICBpZiBfUFlUSE9OX0JVSUxEOgpAQCAtNDA5LDE1ICs0MTksMTcgQEAKICAgICAgICAgaW5jX2RpciA9IGdldF9wYXRoKCdwbGF0aW5jbHVkZScpCiAgICAgcmV0dXJuIG9zLnBhdGguam9pbihpbmNfZGlyLCAncHljb25maWcuaCcpCiAKKwogZGVmIGdldF9zY2hlbWVfbmFtZXMoKToKICAgICAiIiJSZXR1cm4gYSB0dXBsZSBjb250YWluaW5nIHRoZSBzY2hlbWVzIG5hbWVzLiIiIgotICAgIHNjaGVtZXMgPSBsaXN0KF9JTlNUQUxMX1NDSEVNRVMua2V5cygpKQotICAgIHNjaGVtZXMuc29ydCgpCi0gICAgcmV0dXJuIHR1cGxlKHNjaGVtZXMpCisgICAgcmV0dXJuIHR1cGxlKHNvcnRlZChfU0NIRU1FUy5zZWN0aW9ucygpKSkKKwogCiBkZWYgZ2V0X3BhdGhfbmFtZXMoKToKICAgICAiIiJSZXR1cm4gYSB0dXBsZSBjb250YWluaW5nIHRoZSBwYXRocyBuYW1lcy4iIiIKLSAgICByZXR1cm4gX1NDSEVNRV9LRVlTCisgICAgIyB4eHggc2VlIGlmIHdlIHdhbnQgYSBzdGF0aWMgbGlzdAorICAgIHJldHVybiBfU0NIRU1FUy5vcHRpb25zKCdwb3NpeF9wcmVmaXgnKQorCiAKIGRlZiBnZXRfcGF0aHMoc2NoZW1lPV9nZXRfZGVmYXVsdF9zY2hlbWUoKSwgdmFycz1Ob25lLCBleHBhbmQ9VHJ1ZSk6CiAgICAgIiIiUmV0dXJuIGEgbWFwcGluZyBjb250YWluaW5nIGFuIGluc3RhbGwgc2NoZW1lLgpAQCAtNDI4LDcgKzQ0MCw4IEBACiAgICAgaWYgZXhwYW5kOgogICAgICAgICByZXR1cm4gX2V4cGFuZF92YXJzKHNjaGVtZSwgdmFycykKICAgICBlbHNlOgotICAgICAgICByZXR1cm4gX0lOU1RBTExfU0NIRU1FU1tzY2hlbWVdCisgICAgICAgIHJldHVybiBkaWN0KF9TQ0hFTUVTLml0ZW1zKHNjaGVtZSkpCisKIAogZGVmIGdldF9wYXRoKG5hbWUsIHNjaGVtZT1fZ2V0X2RlZmF1bHRfc2NoZW1lKCksIHZhcnM9Tm9uZSwgZXhwYW5kPVRydWUpOgogICAgICIiIlJldHVybiBhIHBhdGggY29ycmVzcG9uZGluZyB0byB0aGUgc2NoZW1lLgpAQCAtNDM3LDYgKzQ1MCw3IEBACiAgICAgIiIiCiAgICAgcmV0dXJuIGdldF9wYXRocyhzY2hlbWUsIHZhcnMsIGV4cGFuZClbbmFtZV0KIAorCiBkZWYgZ2V0X2NvbmZpZ192YXJzKCphcmdzKToKICAgICAiIiJXaXRoIG5vIGFyZ3VtZW50cywgcmV0dXJuIGEgZGljdGlvbmFyeSBvZiBhbGwgY29uZmlndXJhdGlvbgogICAgIHZhcmlhYmxlcyByZWxldmFudCBmb3IgdGhlIGN1cnJlbnQgcGxhdGZvcm0uCkBAIC00NDcsMTMgKzQ2MSwxMiBAQAogICAgIFdpdGggYXJndW1lbnRzLCByZXR1cm4gYSBsaXN0IG9mIHZhbHVlcyB0aGF0IHJlc3VsdCBmcm9tIGxvb2tpbmcgdXAKICAgICBlYWNoIGFyZ3VtZW50IGluIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlIGRpY3Rpb25hcnkuCiAgICAgIiIiCi0gICAgaW1wb3J0IHJlCiAgICAgZ2xvYmFsIF9DT05GSUdfVkFSUwogICAgIGlmIF9DT05GSUdfVkFSUyBpcyBOb25lOgogICAgICAgICBfQ09ORklHX1ZBUlMgPSB7fQogICAgICAgICAjIE5vcm1hbGl6ZWQgdmVyc2lvbnMgb2YgcHJlZml4IGFuZCBleGVjX3ByZWZpeCBhcmUgaGFuZHkgdG8gaGF2ZTsKICAgICAgICAgIyBpbiBmYWN0LCB0aGVzZSBhcmUgdGhlIHN0YW5kYXJkIHZlcnNpb25zIHVzZWQgbW9zdCBwbGFjZXMgaW4gdGhlCi0gICAgICAgICMgRGlzdHV0aWxzLgorICAgICAgICAjIHBhY2thZ2luZyBtb2R1bGUuCiAgICAgICAgIF9DT05GSUdfVkFSU1sncHJlZml4J10gPSBfUFJFRklYCiAgICAgICAgIF9DT05GSUdfVkFSU1snZXhlY19wcmVmaXgnXSA9IF9FWEVDX1BSRUZJWAogICAgICAgICBfQ09ORklHX1ZBUlNbJ3B5X3ZlcnNpb24nXSA9IF9QWV9WRVJTSU9OCkBAIC00ODIsNyArNDk1LDYgQEAKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIF9DT05GSUdfVkFSU1snc3JjZGlyJ10gPSBfc2FmZV9yZWFscGF0aChfQ09ORklHX1ZBUlNbJ3NyY2RpciddKQogCi0KICAgICAgICAgIyBDb252ZXJ0IHNyY2RpciBpbnRvIGFuIGFic29sdXRlIHBhdGggaWYgaXQgYXBwZWFycyBuZWNlc3NhcnkuCiAgICAgICAgICMgTm9ybWFsbHkgaXQgaXMgcmVsYXRpdmUgdG8gdGhlIGJ1aWxkIGRpcmVjdG9yeS4gIEhvd2V2ZXIsIGR1cmluZwogICAgICAgICAjIHRlc3RpbmcsIGZvciBleGFtcGxlLCB3ZSBtaWdodCBiZSBydW5uaW5nIGEgbm9uLWluc3RhbGxlZCBweXRob24KQEAgLTUwMiw3ICs1MTQsNyBAQAogICAgICAgICAgICAgICAgIF9DT05GSUdfVkFSU1snc3JjZGlyJ10gPSBvcy5wYXRoLm5vcm1wYXRoKHNyY2RpcikKIAogICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6Ci0gICAgICAgICAgICBrZXJuZWxfdmVyc2lvbiA9IG9zLnVuYW1lKClbMl0gIyBLZXJuZWwgdmVyc2lvbiAoOC40LjMpCisgICAgICAgICAgICBrZXJuZWxfdmVyc2lvbiA9IG9zLnVuYW1lKClbMl0gICMgS2VybmVsIHZlcnNpb24gKDguNC4zKQogICAgICAgICAgICAgbWFqb3JfdmVyc2lvbiA9IGludChrZXJuZWxfdmVyc2lvbi5zcGxpdCgnLicpWzBdKQogCiAgICAgICAgICAgICBpZiBtYWpvcl92ZXJzaW9uIDwgODoKQEAgLTU2OCw2ICs1ODAsNyBAQAogICAgIGVsc2U6CiAgICAgICAgIHJldHVybiBfQ09ORklHX1ZBUlMKIAorCiBkZWYgZ2V0X2NvbmZpZ192YXIobmFtZSk6CiAgICAgIiIiUmV0dXJuIHRoZSB2YWx1ZSBvZiBhIHNpbmdsZSB2YXJpYWJsZSB1c2luZyB0aGUgZGljdGlvbmFyeSByZXR1cm5lZCBieQogICAgICdnZXRfY29uZmlnX3ZhcnMoKScuCkBAIC01NzYsNiArNTg5LDcgQEAKICAgICAiIiIKICAgICByZXR1cm4gZ2V0X2NvbmZpZ192YXJzKCkuZ2V0KG5hbWUpCiAKKwogZGVmIGdldF9wbGF0Zm9ybSgpOgogICAgICIiIlJldHVybiBhIHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIGN1cnJlbnQgcGxhdGZvcm0uCiAKQEAgLTYwMSw3ICs2MTUsNiBAQAogCiAgICAgRm9yIG90aGVyIG5vbi1QT1NJWCBwbGF0Zm9ybXMsIGN1cnJlbnRseSBqdXN0IHJldHVybnMgJ3N5cy5wbGF0Zm9ybScuCiAgICAgIiIiCi0gICAgaW1wb3J0IHJlCiAgICAgaWYgb3MubmFtZSA9PSAnbnQnOgogICAgICAgICAjIHNuaWZmIHN5cy52ZXJzaW9uIGZvciBhcmNoaXRlY3R1cmUuCiAgICAgICAgIHByZWZpeCA9ICIgYml0ICgiCkBAIC02NTEsNyArNjY0LDcgQEAKICAgICAgICAgcmV0dXJuICIlcy0lcy4lcyIgJSAob3NuYW1lLCB2ZXJzaW9uLCByZWxlYXNlKQogICAgIGVsaWYgb3NuYW1lWzo2XSA9PSAiY3lnd2luIjoKICAgICAgICAgb3NuYW1lID0gImN5Z3dpbiIKLSAgICAgICAgcmVsX3JlID0gcmUuY29tcGlsZSAocidbXGQuXSsnKQorICAgICAgICByZWxfcmUgPSByZS5jb21waWxlKHInW1xkLl0rJykKICAgICAgICAgbSA9IHJlbF9yZS5tYXRjaChyZWxlYXNlKQogICAgICAgICBpZiBtOgogICAgICAgICAgICAgcmVsZWFzZSA9IG0uZ3JvdXAoKQpAQCAtNjYyLDExICs2NzUsMTAgQEAKICAgICAgICAgIyB0by4gVGhpcyBtYWtlcyB0aGUgY29tcGF0aWJpbGl0eSBzdG9yeSBhIGJpdCBtb3JlIHNhbmUgYmVjYXVzZSB0aGUKICAgICAgICAgIyBtYWNoaW5lIGlzIGdvaW5nIHRvIGNvbXBpbGUgYW5kIGxpbmsgYXMgaWYgaXQgd2VyZQogICAgICAgICAjIE1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVC4KLSAgICAgICAgIwogICAgICAgICBjZmd2YXJzID0gZ2V0X2NvbmZpZ192YXJzKCkKICAgICAgICAgbWFjdmVyID0gY2ZndmFycy5nZXQoJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCcpCiAKLSAgICAgICAgaWYgMToKKyAgICAgICAgaWYgVHJ1ZToKICAgICAgICAgICAgICMgQWx3YXlzIGNhbGN1bGF0ZSB0aGUgcmVsZWFzZSBvZiB0aGUgcnVubmluZyBtYWNoaW5lLAogICAgICAgICAgICAgIyBuZWVkZWQgdG8gZGV0ZXJtaW5lIGlmIHdlIGNhbiBidWlsZCBmYXQgYmluYXJpZXMgb3Igbm90LgogCkBAIC02ODIsMTQgKzY5NCwxMyBAQAogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICAgICBtID0gcmUuc2VhcmNoKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHInPGtleT5Qcm9kdWN0VXNlclZpc2libGVWZXJzaW9uPC9rZXk+XHMqJyArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcic8c3RyaW5nPiguKj8pPC9zdHJpbmc+JywgZi5yZWFkKCkpCi0gICAgICAgICAgICAgICAgICAgIGlmIG0gaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICAgICAgICAgICAgICBtYWNyZWxlYXNlID0gJy4nLmpvaW4obS5ncm91cCgxKS5zcGxpdCgnLicpWzoyXSkKLSAgICAgICAgICAgICAgICAgICAgIyBlbHNlOiBmYWxsIGJhY2sgdG8gdGhlIGRlZmF1bHQgYmVoYXZpb3VyCisgICAgICAgICAgICAgICAgICAgIG0gPSByZS5zZWFyY2gocic8a2V5PlByb2R1Y3RVc2VyVmlzaWJsZVZlcnNpb248L2tleT5ccyonCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcic8c3RyaW5nPiguKj8pPC9zdHJpbmc+JywgZi5yZWFkKCkpCiAgICAgICAgICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgICAgICAgICAgaWYgbSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgbWFjcmVsZWFzZSA9ICcuJy5qb2luKG0uZ3JvdXAoMSkuc3BsaXQoJy4nKVs6Ml0pCisgICAgICAgICAgICAgICAgIyBlbHNlOiBmYWxsIGJhY2sgdG8gdGhlIGRlZmF1bHQgYmVoYXZpb3VyCiAKICAgICAgICAgaWYgbm90IG1hY3ZlcjoKICAgICAgICAgICAgIG1hY3ZlciA9IG1hY3JlbGVhc2UKQEAgLTY5OCw4ICs3MDksOCBAQAogICAgICAgICAgICAgcmVsZWFzZSA9IG1hY3ZlcgogICAgICAgICAgICAgb3NuYW1lID0gIm1hY29zeCIKIAotICAgICAgICAgICAgaWYgKG1hY3JlbGVhc2UgKyAnLicpID49ICcxMC40LicgYW5kIFwKLSAgICAgICAgICAgICAgICAgICAgJy1hcmNoJyBpbiBnZXRfY29uZmlnX3ZhcnMoKS5nZXQoJ0NGTEFHUycsICcnKS5zdHJpcCgpOgorICAgICAgICAgICAgaWYgKChtYWNyZWxlYXNlICsgJy4nKSA+PSAnMTAuNC4nIGFuZAorICAgICAgICAgICAgICAgICctYXJjaCcgaW4gZ2V0X2NvbmZpZ192YXJzKCkuZ2V0KCdDRkxBR1MnLCAnJykuc3RyaXAoKSk6CiAgICAgICAgICAgICAgICAgIyBUaGUgdW5pdmVyc2FsIGJ1aWxkIHdpbGwgYnVpbGQgZmF0IGJpbmFyaWVzLCBidXQgbm90IG9uCiAgICAgICAgICAgICAgICAgIyBzeXN0ZW1zIGJlZm9yZSAxMC40CiAgICAgICAgICAgICAgICAgIwpAQCAtNzI2LDcgKzczNyw3IEBACiAgICAgICAgICAgICAgICAgICAgIG1hY2hpbmUgPSAndW5pdmVyc2FsJwogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoCi0gICAgICAgICAgICAgICAgICAgICAgICJEb24ndCBrbm93IG1hY2hpbmUgdmFsdWUgZm9yIGFyY2hzPSVyIiUoYXJjaHMsKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIkRvbid0IGtub3cgbWFjaGluZSB2YWx1ZSBmb3IgYXJjaHM9JXIiICUgKGFyY2hzLCkpCiAKICAgICAgICAgICAgIGVsaWYgbWFjaGluZSA9PSAnaTM4Nic6CiAgICAgICAgICAgICAgICAgIyBPbiBPU1ggdGhlIG1hY2hpbmUgdHlwZSByZXR1cm5lZCBieSB1bmFtZSBpcyBhbHdheXMgdGhlCkBAIC03NDksMjEgKzc2MCwyNyBAQAogZGVmIGdldF9weXRob25fdmVyc2lvbigpOgogICAgIHJldHVybiBfUFlfVkVSU0lPTl9TSE9SVAogCisKIGRlZiBfcHJpbnRfZGljdCh0aXRsZSwgZGF0YSk6CiAgICAgZm9yIGluZGV4LCAoa2V5LCB2YWx1ZSkgaW4gZW51bWVyYXRlKHNvcnRlZChkYXRhLml0ZW1zKCkpKToKICAgICAgICAgaWYgaW5kZXggPT0gMDoKLSAgICAgICAgICAgIHByaW50KCd7MH06ICcuZm9ybWF0KHRpdGxlKSkKLSAgICAgICAgcHJpbnQoJ1x0ezB9ID0gInsxfSInLmZvcm1hdChrZXksIHZhbHVlKSkKKyAgICAgICAgICAgIHByaW50KCclczogJyAlICh0aXRsZSkpCisgICAgICAgIHByaW50KCdcdCVzID0gIiVzIicgJSAoa2V5LCB2YWx1ZSkpCisKIAogZGVmIF9tYWluKCk6CiAgICAgIiIiRGlzcGxheSBhbGwgaW5mb3JtYXRpb24gc3lzY29uZmlnIGRldGFpbnMuIiIiCi0gICAgcHJpbnQoJ1BsYXRmb3JtOiAiezB9IicuZm9ybWF0KGdldF9wbGF0Zm9ybSgpKSkKLSAgICBwcmludCgnUHl0aG9uIHZlcnNpb246ICJ7MH0iJy5mb3JtYXQoZ2V0X3B5dGhvbl92ZXJzaW9uKCkpKQotICAgIHByaW50KCdDdXJyZW50IGluc3RhbGxhdGlvbiBzY2hlbWU6ICJ7MH0iJy5mb3JtYXQoX2dldF9kZWZhdWx0X3NjaGVtZSgpKSkKLSAgICBwcmludCgnJykKKyAgICBpZiAnLS1nZW5lcmF0ZS1wb3NpeC12YXJzJyBpbiBzeXMuYXJndjoKKyAgICAgICAgX2dlbmVyYXRlX3Bvc2l4X3ZhcnMoKQorICAgICAgICByZXR1cm4KKyAgICBwcmludCgnUGxhdGZvcm06ICIlcyInICUgZ2V0X3BsYXRmb3JtKCkpCisgICAgcHJpbnQoJ1B5dGhvbiB2ZXJzaW9uOiAiJXMiJyAlIGdldF9weXRob25fdmVyc2lvbigpKQorICAgIHByaW50KCdDdXJyZW50IGluc3RhbGxhdGlvbiBzY2hlbWU6ICIlcyInICUgX2dldF9kZWZhdWx0X3NjaGVtZSgpKQorICAgIHByaW50KCkKICAgICBfcHJpbnRfZGljdCgnUGF0aHMnLCBnZXRfcGF0aHMoKSkKLSAgICBwcmludCgnJykKKyAgICBwcmludCgpCiAgICAgX3ByaW50X2RpY3QoJ1ZhcmlhYmxlcycsIGdldF9jb25maWdfdmFycygpKQogCisKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CiAgICAgX21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3RhYm5hbm55LnB5IGIvTGliL3RhYm5hbm55LnB5CmluZGV4IDQ2ZjgxNjMuLjRhNTRmODkgMTAwNzU1Ci0tLSBhL0xpYi90YWJuYW5ueS5weQorKysgYi9MaWIvdGFibmFubnkucHkKQEAgLTEyNiw2ICsxMjYsOSBAQAogICAgICAgICAgICAgZWxzZTogcHJpbnQoZmlsZSwgYmFkbGluZSwgcmVwcihsaW5lKSkKICAgICAgICAgcmV0dXJuCiAKKyAgICBmaW5hbGx5OgorICAgICAgICBmLmNsb3NlKCkKKwogICAgIGlmIHZlcmJvc2U6CiAgICAgICAgIHByaW50KCIlcjogQ2xlYW4gYmlsbCBvZiBoZWFsdGguIiAlIChmaWxlLCkpCiAKZGlmZiAtLWdpdCBhL0xpYi90YXJmaWxlLnB5IGIvTGliL3RhcmZpbGUucHkKaW5kZXggYWYzMmIwZi4uZTMzODBhMiAxMDA2NDQKLS0tIGEvTGliL3RhcmZpbGUucHkKKysrIGIvTGliL3RhcmZpbGUucHkKQEAgLTI5LDggKzI5LDYgQEAKICIiIlJlYWQgZnJvbSBhbmQgd3JpdGUgdG8gdGFyIGZvcm1hdCBhcmNoaXZlcy4KICIiIgogCi1fX3ZlcnNpb25fXyA9ICIkUmV2aXNpb24kIgotCiB2ZXJzaW9uICAgICA9ICIwLjkuMCIKIF9fYXV0aG9yX18gID0gIkxhcnMgR3VzdFx1MDBlNGJlbCAobGFyc0BndXN0YWViZWwuZGUpIgogX19kYXRlX18gICAgPSAiJERhdGU6IDIwMTEtMDItMjUgMTc6NDI6MDEgKzAyMDAgKEZyaSwgMjUgRmViIDIwMTEpICQiCkBAIC00Miw5ICs0MCw5IEBACiAjLS0tLS0tLS0tCiBpbXBvcnQgc3lzCiBpbXBvcnQgb3MKK2ltcG9ydCBpbwogaW1wb3J0IHNodXRpbAogaW1wb3J0IHN0YXQKLWltcG9ydCBlcnJubwogaW1wb3J0IHRpbWUKIGltcG9ydCBzdHJ1Y3QKIGltcG9ydCBjb3B5CkBAIC00MjMsMTAgKzQyMSwxMSBAQAogICAgICAgICAgICAgICAgIHNlbGYuY3JjID0gemxpYi5jcmMzMihiIiIpCiAgICAgICAgICAgICAgICAgaWYgbW9kZSA9PSAiciI6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2luaXRfcmVhZF9neigpCisgICAgICAgICAgICAgICAgICAgIHNlbGYuZXhjZXB0aW9uID0gemxpYi5lcnJvcgogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2luaXRfd3JpdGVfZ3ooKQogCi0gICAgICAgICAgICBpZiBjb21wdHlwZSA9PSAiYnoyIjoKKyAgICAgICAgICAgIGVsaWYgY29tcHR5cGUgPT0gImJ6MiI6CiAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICBpbXBvcnQgYnoyCiAgICAgICAgICAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgpAQCAtNDM0LDggKzQzMywyNSBAQAogICAgICAgICAgICAgICAgIGlmIG1vZGUgPT0gInIiOgogICAgICAgICAgICAgICAgICAgICBzZWxmLmRidWYgPSBiIiIKICAgICAgICAgICAgICAgICAgICAgc2VsZi5jbXAgPSBiejIuQloyRGVjb21wcmVzc29yKCkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5leGNlcHRpb24gPSBJT0Vycm9yCiAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgc2VsZi5jbXAgPSBiejIuQloyQ29tcHJlc3NvcigpCisKKyAgICAgICAgICAgIGVsaWYgY29tcHR5cGUgPT0gInh6IjoKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGltcG9ydCBsem1hCisgICAgICAgICAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBDb21wcmVzc2lvbkVycm9yKCJsem1hIG1vZHVsZSBpcyBub3QgYXZhaWxhYmxlIikKKyAgICAgICAgICAgICAgICBpZiBtb2RlID09ICJyIjoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5kYnVmID0gYiIiCisgICAgICAgICAgICAgICAgICAgIHNlbGYuY21wID0gbHptYS5MWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5leGNlcHRpb24gPSBsem1hLkxaTUFFcnJvcgorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuY21wID0gbHptYS5MWk1BQ29tcHJlc3NvcigpCisKKyAgICAgICAgICAgIGVsaWYgY29tcHR5cGUgIT0gInRhciI6CisgICAgICAgICAgICAgICAgcmFpc2UgQ29tcHJlc3Npb25FcnJvcigidW5rbm93biBjb21wcmVzc2lvbiB0eXBlICVyIiAlIGNvbXB0eXBlKQorCiAgICAgICAgIGV4Y2VwdDoKICAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9leHRmaWxlb2JqOgogICAgICAgICAgICAgICAgIHNlbGYuZmlsZW9iai5jbG9zZSgpCkBAIC01ODcsNyArNjAzLDcgQEAKICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIGJ1ZiA9IHNlbGYuY21wLmRlY29tcHJlc3MoYnVmKQotICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICBleGNlcHQgc2VsZi5leGNlcHRpb246CiAgICAgICAgICAgICAgICAgcmFpc2UgUmVhZEVycm9yKCJpbnZhbGlkIGNvbXByZXNzZWQgZGF0YSIpCiAgICAgICAgICAgICBzZWxmLmRidWYgKz0gYnVmCiAgICAgICAgICAgICBjICs9IGxlbihidWYpCkBAIC02MjUsNzYgKzY0MSwxOSBAQAogICAgICAgICByZXR1cm4gc2VsZi5idWYKIAogICAgIGRlZiBnZXRjb21wdHlwZShzZWxmKToKLSAgICAgICAgaWYgc2VsZi5idWYuc3RhcnRzd2l0aChiIlwwMzdcMjEzXDAxMCIpOgorICAgICAgICBpZiBzZWxmLmJ1Zi5zdGFydHN3aXRoKGIiXHgxZlx4OGJceDA4Iik6CiAgICAgICAgICAgICByZXR1cm4gImd6IgotICAgICAgICBpZiBzZWxmLmJ1ZlswOjNdID09IGIiQlpoIiBhbmQgc2VsZi5idWZbNDoxMF0gPT0gYiIxQVkmU1kiOgorICAgICAgICBlbGlmIHNlbGYuYnVmWzA6M10gPT0gYiJCWmgiIGFuZCBzZWxmLmJ1Zls0OjEwXSA9PSBiIjFBWSZTWSI6CiAgICAgICAgICAgICByZXR1cm4gImJ6MiIKLSAgICAgICAgcmV0dXJuICJ0YXIiCisgICAgICAgIGVsaWYgc2VsZi5idWYuc3RhcnRzd2l0aCgoYiJceDVkXHgwMFx4MDBceDgwIiwgYiJceGZkN3pYWiIpKToKKyAgICAgICAgICAgIHJldHVybiAieHoiCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gInRhciIKIAogICAgIGRlZiBjbG9zZShzZWxmKToKICAgICAgICAgc2VsZi5maWxlb2JqLmNsb3NlKCkKICMgY2xhc3MgU3RyZWFtUHJveHkKIAotY2xhc3MgX0JaMlByb3h5KG9iamVjdCk6Ci0gICAgIiIiU21hbGwgcHJveHkgY2xhc3MgdGhhdCBlbmFibGVzIGV4dGVybmFsIGZpbGUgb2JqZWN0Ci0gICAgICAgc3VwcG9ydCBmb3IgInI6YnoyIiBhbmQgInc6YnoyIiBtb2Rlcy4gVGhpcyBpcyBhY3R1YWxseQotICAgICAgIGEgd29ya2Fyb3VuZCBmb3IgYSBsaW1pdGF0aW9uIGluIGJ6MiBtb2R1bGUncyBCWjJGaWxlCi0gICAgICAgY2xhc3Mgd2hpY2ggKHVubGlrZSBnemlwLkd6aXBGaWxlKSBoYXMgbm8gc3VwcG9ydCBmb3IKLSAgICAgICBhIGZpbGUgb2JqZWN0IGFyZ3VtZW50LgotICAgICIiIgotCi0gICAgYmxvY2tzaXplID0gMTYgKiAxMDI0Ci0KLSAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW9iaiwgbW9kZSk6Ci0gICAgICAgIHNlbGYuZmlsZW9iaiA9IGZpbGVvYmoKLSAgICAgICAgc2VsZi5tb2RlID0gbW9kZQotICAgICAgICBzZWxmLm5hbWUgPSBnZXRhdHRyKHNlbGYuZmlsZW9iaiwgIm5hbWUiLCBOb25lKQotICAgICAgICBzZWxmLmluaXQoKQotCi0gICAgZGVmIGluaXQoc2VsZik6Ci0gICAgICAgIGltcG9ydCBiejIKLSAgICAgICAgc2VsZi5wb3MgPSAwCi0gICAgICAgIGlmIHNlbGYubW9kZSA9PSAiciI6Ci0gICAgICAgICAgICBzZWxmLmJ6Mm9iaiA9IGJ6Mi5CWjJEZWNvbXByZXNzb3IoKQotICAgICAgICAgICAgc2VsZi5maWxlb2JqLnNlZWsoMCkKLSAgICAgICAgICAgIHNlbGYuYnVmID0gYiIiCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLmJ6Mm9iaiA9IGJ6Mi5CWjJDb21wcmVzc29yKCkKLQotICAgIGRlZiByZWFkKHNlbGYsIHNpemUpOgotICAgICAgICB4ID0gbGVuKHNlbGYuYnVmKQotICAgICAgICB3aGlsZSB4IDwgc2l6ZToKLSAgICAgICAgICAgIHJhdyA9IHNlbGYuZmlsZW9iai5yZWFkKHNlbGYuYmxvY2tzaXplKQotICAgICAgICAgICAgaWYgbm90IHJhdzoKLSAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgZGF0YSA9IHNlbGYuYnoyb2JqLmRlY29tcHJlc3MocmF3KQotICAgICAgICAgICAgc2VsZi5idWYgKz0gZGF0YQotICAgICAgICAgICAgeCArPSBsZW4oZGF0YSkKLQotICAgICAgICBidWYgPSBzZWxmLmJ1Zls6c2l6ZV0KLSAgICAgICAgc2VsZi5idWYgPSBzZWxmLmJ1ZltzaXplOl0KLSAgICAgICAgc2VsZi5wb3MgKz0gbGVuKGJ1ZikKLSAgICAgICAgcmV0dXJuIGJ1ZgotCi0gICAgZGVmIHNlZWsoc2VsZiwgcG9zKToKLSAgICAgICAgaWYgcG9zIDwgc2VsZi5wb3M6Ci0gICAgICAgICAgICBzZWxmLmluaXQoKQotICAgICAgICBzZWxmLnJlYWQocG9zIC0gc2VsZi5wb3MpCi0KLSAgICBkZWYgdGVsbChzZWxmKToKLSAgICAgICAgcmV0dXJuIHNlbGYucG9zCi0KLSAgICBkZWYgd3JpdGUoc2VsZiwgZGF0YSk6Ci0gICAgICAgIHNlbGYucG9zICs9IGxlbihkYXRhKQotICAgICAgICByYXcgPSBzZWxmLmJ6Mm9iai5jb21wcmVzcyhkYXRhKQotICAgICAgICBzZWxmLmZpbGVvYmoud3JpdGUocmF3KQotCi0gICAgZGVmIGNsb3NlKHNlbGYpOgotICAgICAgICBpZiBzZWxmLm1vZGUgPT0gInciOgotICAgICAgICAgICAgcmF3ID0gc2VsZi5iejJvYmouZmx1c2goKQotICAgICAgICAgICAgc2VsZi5maWxlb2JqLndyaXRlKHJhdykKLSMgY2xhc3MgX0JaMlByb3h5Ci0KICMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICMgRXh0cmFjdGlvbiBmaWxlIG9iamVjdAogIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtODc1LDIwICs4MzQsMjAgQEAKIAogICAgICAgICByZXR1cm4gc2VsZi5wb3NpdGlvbgogCi0gICAgZGVmIHNlZWsoc2VsZiwgcG9zLCB3aGVuY2U9b3MuU0VFS19TRVQpOgorICAgIGRlZiBzZWVrKHNlbGYsIHBvcywgd2hlbmNlPWlvLlNFRUtfU0VUKToKICAgICAgICAgIiIiU2VlayB0byBhIHBvc2l0aW9uIGluIHRoZSBmaWxlLgogICAgICAgICAiIiIKICAgICAgICAgaWYgc2VsZi5jbG9zZWQ6CiAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJL08gb3BlcmF0aW9uIG9uIGNsb3NlZCBmaWxlIikKIAotICAgICAgICBpZiB3aGVuY2UgPT0gb3MuU0VFS19TRVQ6CisgICAgICAgIGlmIHdoZW5jZSA9PSBpby5TRUVLX1NFVDoKICAgICAgICAgICAgIHNlbGYucG9zaXRpb24gPSBtaW4obWF4KHBvcywgMCksIHNlbGYuc2l6ZSkKLSAgICAgICAgZWxpZiB3aGVuY2UgPT0gb3MuU0VFS19DVVI6CisgICAgICAgIGVsaWYgd2hlbmNlID09IGlvLlNFRUtfQ1VSOgogICAgICAgICAgICAgaWYgcG9zIDwgMDoKICAgICAgICAgICAgICAgICBzZWxmLnBvc2l0aW9uID0gbWF4KHNlbGYucG9zaXRpb24gKyBwb3MsIDApCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHNlbGYucG9zaXRpb24gPSBtaW4oc2VsZi5wb3NpdGlvbiArIHBvcywgc2VsZi5zaXplKQotICAgICAgICBlbGlmIHdoZW5jZSA9PSBvcy5TRUVLX0VORDoKKyAgICAgICAgZWxpZiB3aGVuY2UgPT0gaW8uU0VFS19FTkQ6CiAgICAgICAgICAgICBzZWxmLnBvc2l0aW9uID0gbWF4KG1pbihzZWxmLnNpemUgKyBwb3MsIHNlbGYuc2l6ZSksIDApCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJbnZhbGlkIGFyZ3VtZW50IikKQEAgLTEwODcsNyArMTA0Niw3IEBACiAgICAgZGVmIGNyZWF0ZV9wYXhfZ2xvYmFsX2hlYWRlcihjbHMsIHBheF9oZWFkZXJzKToKICAgICAgICAgIiIiUmV0dXJuIHRoZSBvYmplY3QgYXMgYSBwYXggZ2xvYmFsIGhlYWRlciBibG9jayBzZXF1ZW5jZS4KICAgICAgICAgIiIiCi0gICAgICAgIHJldHVybiBjbHMuX2NyZWF0ZV9wYXhfZ2VuZXJpY19oZWFkZXIocGF4X2hlYWRlcnMsIFhHTFRZUEUsICJ1dGY4IikKKyAgICAgICAgcmV0dXJuIGNscy5fY3JlYXRlX3BheF9nZW5lcmljX2hlYWRlcihwYXhfaGVhZGVycywgWEdMVFlQRSwgInV0Zi04IikKIAogICAgIGRlZiBfcG9zaXhfc3BsaXRfbmFtZShzZWxmLCBuYW1lKToKICAgICAgICAgIiIiU3BsaXQgYSBuYW1lIGxvbmdlciB0aGFuIDEwMCBjaGFycyBpbnRvIGEgcHJlZml4CkBAIC0xMTcwLDcgKzExMjksNyBAQAogICAgICAgICBiaW5hcnkgPSBGYWxzZQogICAgICAgICBmb3Iga2V5d29yZCwgdmFsdWUgaW4gcGF4X2hlYWRlcnMuaXRlbXMoKToKICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICB2YWx1ZS5lbmNvZGUoInV0ZjgiLCAic3RyaWN0IikKKyAgICAgICAgICAgICAgICB2YWx1ZS5lbmNvZGUoInV0Zi04IiwgInN0cmljdCIpCiAgICAgICAgICAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOgogICAgICAgICAgICAgICAgIGJpbmFyeSA9IFRydWUKICAgICAgICAgICAgICAgICBicmVhawpAQCAtMTE4MSwxMyArMTE0MCwxMyBAQAogICAgICAgICAgICAgcmVjb3JkcyArPSBiIjIxIGhkcmNoYXJzZXQ9QklOQVJZXG4iCiAKICAgICAgICAgZm9yIGtleXdvcmQsIHZhbHVlIGluIHBheF9oZWFkZXJzLml0ZW1zKCk6Ci0gICAgICAgICAgICBrZXl3b3JkID0ga2V5d29yZC5lbmNvZGUoInV0ZjgiKQorICAgICAgICAgICAga2V5d29yZCA9IGtleXdvcmQuZW5jb2RlKCJ1dGYtOCIpCiAgICAgICAgICAgICBpZiBiaW5hcnk6CiAgICAgICAgICAgICAgICAgIyBUcnkgdG8gcmVzdG9yZSB0aGUgb3JpZ2luYWwgYnl0ZSByZXByZXNlbnRhdGlvbiBvZiBgdmFsdWUnLgogICAgICAgICAgICAgICAgICMgTmVlZGxlc3MgdG8gc2F5LCB0aGF0IHRoZSBlbmNvZGluZyBtdXN0IG1hdGNoIHRoZSBzdHJpbmcuCiAgICAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS5lbmNvZGUoZW5jb2RpbmcsICJzdXJyb2dhdGVlc2NhcGUiKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlLmVuY29kZSgidXRmOCIpCisgICAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS5lbmNvZGUoInV0Zi04IikKIAogICAgICAgICAgICAgbCA9IGxlbihrZXl3b3JkKSArIGxlbih2YWx1ZSkgKyAzICAgIyAnICcgKyAnPScgKyAnXG4nCiAgICAgICAgICAgICBuID0gcCA9IDAKQEAgLTEzOTYsNyArMTM1NSw3IEBACiAgICAgICAgICMgdGhlIHRyYW5zbGF0aW9uIHRvIFVURi04IGZhaWxzLgogICAgICAgICBtYXRjaCA9IHJlLnNlYXJjaChiciJcZCsgaGRyY2hhcnNldD0oW15cbl0rKVxuIiwgYnVmKQogICAgICAgICBpZiBtYXRjaCBpcyBub3QgTm9uZToKLSAgICAgICAgICAgIHBheF9oZWFkZXJzWyJoZHJjaGFyc2V0Il0gPSBtYXRjaC5ncm91cCgxKS5kZWNvZGUoInV0ZjgiKQorICAgICAgICAgICAgcGF4X2hlYWRlcnNbImhkcmNoYXJzZXQiXSA9IG1hdGNoLmdyb3VwKDEpLmRlY29kZSgidXRmLTgiKQogCiAgICAgICAgICMgRm9yIHRoZSB0aW1lIGJlaW5nLCB3ZSBkb24ndCBjYXJlIGFib3V0IGFueXRoaW5nIG90aGVyIHRoYW4gIkJJTkFSWSIuCiAgICAgICAgICMgVGhlIG9ubHkgb3RoZXIgdmFsdWUgdGhhdCBpcyBjdXJyZW50bHkgYWxsb3dlZCBieSB0aGUgc3RhbmRhcmQgaXMKQEAgLTE0MDUsNyArMTM2NCw3IEBACiAgICAgICAgIGlmIGhkcmNoYXJzZXQgPT0gIkJJTkFSWSI6CiAgICAgICAgICAgICBlbmNvZGluZyA9IHRhcmZpbGUuZW5jb2RpbmcKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGVuY29kaW5nID0gInV0ZjgiCisgICAgICAgICAgICBlbmNvZGluZyA9ICJ1dGYtOCIKIAogICAgICAgICAjIFBhcnNlIHBheCBoZWFkZXIgaW5mb3JtYXRpb24uIEEgcmVjb3JkIGxvb2tzIGxpa2UgdGhhdDoKICAgICAgICAgIyAiJWQgJXM9JXNcbiIgJSAobGVuZ3RoLCBrZXl3b3JkLCB2YWx1ZSkuIGxlbmd0aCBpcyB0aGUgc2l6ZQpAQCAtMTQyMiwyMCArMTM4MSwyMCBAQAogICAgICAgICAgICAgbGVuZ3RoID0gaW50KGxlbmd0aCkKICAgICAgICAgICAgIHZhbHVlID0gYnVmW21hdGNoLmVuZCgyKSArIDE6bWF0Y2guc3RhcnQoMSkgKyBsZW5ndGggLSAxXQogCi0gICAgICAgICAgICAjIE5vcm1hbGx5LCB3ZSBjb3VsZCBqdXN0IHVzZSAidXRmOCIgYXMgdGhlIGVuY29kaW5nIGFuZCAic3RyaWN0IgorICAgICAgICAgICAgIyBOb3JtYWxseSwgd2UgY291bGQganVzdCB1c2UgInV0Zi04IiBhcyB0aGUgZW5jb2RpbmcgYW5kICJzdHJpY3QiCiAgICAgICAgICAgICAjIGFzIHRoZSBlcnJvciBoYW5kbGVyLCBidXQgd2UgYmV0dGVyIG5vdCB0YWtlIHRoZSByaXNrLiBGb3IKICAgICAgICAgICAgICMgZXhhbXBsZSwgR05VIHRhciA8PSAxLjIzIGlzIGtub3duIHRvIHN0b3JlIGZpbGVuYW1lcyBpdCBjYW5ub3QKICAgICAgICAgICAgICMgdHJhbnNsYXRlIHRvIFVURi04IGFzIHJhdyBzdHJpbmdzICh1bmZvcnR1bmF0ZWx5IHdpdGhvdXQgYQogICAgICAgICAgICAgIyBoZHJjaGFyc2V0PUJJTkFSWSBoZWFkZXIpLgogICAgICAgICAgICAgIyBXZSBmaXJzdCB0cnkgdGhlIHN0cmljdCBzdGFuZGFyZCBlbmNvZGluZywgYW5kIGlmIHRoYXQgZmFpbHMgd2UKICAgICAgICAgICAgICMgZmFsbCBiYWNrIG9uIHRoZSB1c2VyJ3MgZW5jb2RpbmcgYW5kIGVycm9yIGhhbmRsZXIuCi0gICAgICAgICAgICBrZXl3b3JkID0gc2VsZi5fZGVjb2RlX3BheF9maWVsZChrZXl3b3JkLCAidXRmOCIsICJ1dGY4IiwKKyAgICAgICAgICAgIGtleXdvcmQgPSBzZWxmLl9kZWNvZGVfcGF4X2ZpZWxkKGtleXdvcmQsICJ1dGYtOCIsICJ1dGYtOCIsCiAgICAgICAgICAgICAgICAgICAgIHRhcmZpbGUuZXJyb3JzKQogICAgICAgICAgICAgaWYga2V5d29yZCBpbiBQQVhfTkFNRV9GSUVMRFM6CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBzZWxmLl9kZWNvZGVfcGF4X2ZpZWxkKHZhbHVlLCBlbmNvZGluZywgdGFyZmlsZS5lbmNvZGluZywKICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmZpbGUuZXJyb3JzKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICB2YWx1ZSA9IHNlbGYuX2RlY29kZV9wYXhfZmllbGQodmFsdWUsICJ1dGY4IiwgInV0ZjgiLAorICAgICAgICAgICAgICAgIHZhbHVlID0gc2VsZi5fZGVjb2RlX3BheF9maWVsZCh2YWx1ZSwgInV0Zi04IiwgInV0Zi04IiwKICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmZpbGUuZXJyb3JzKQogCiAgICAgICAgICAgICBwYXhfaGVhZGVyc1trZXl3b3JkXSA9IHZhbHVlCkBAIC0xNzE0LDE4ICsxNjczLDIyIEBACiAgICAgICAgICAgICdyOicgICAgICAgICBvcGVuIGZvciByZWFkaW5nIGV4Y2x1c2l2ZWx5IHVuY29tcHJlc3NlZAogICAgICAgICAgICAncjpneicgICAgICAgb3BlbiBmb3IgcmVhZGluZyB3aXRoIGd6aXAgY29tcHJlc3Npb24KICAgICAgICAgICAgJ3I6YnoyJyAgICAgIG9wZW4gZm9yIHJlYWRpbmcgd2l0aCBiemlwMiBjb21wcmVzc2lvbgorICAgICAgICAgICAncjp4eicgICAgICAgb3BlbiBmb3IgcmVhZGluZyB3aXRoIGx6bWEgY29tcHJlc3Npb24KICAgICAgICAgICAgJ2EnIG9yICdhOicgIG9wZW4gZm9yIGFwcGVuZGluZywgY3JlYXRpbmcgdGhlIGZpbGUgaWYgbmVjZXNzYXJ5CiAgICAgICAgICAgICd3JyBvciAndzonICBvcGVuIGZvciB3cml0aW5nIHdpdGhvdXQgY29tcHJlc3Npb24KICAgICAgICAgICAgJ3c6Z3onICAgICAgIG9wZW4gZm9yIHdyaXRpbmcgd2l0aCBnemlwIGNvbXByZXNzaW9uCiAgICAgICAgICAgICd3OmJ6MicgICAgICBvcGVuIGZvciB3cml0aW5nIHdpdGggYnppcDIgY29tcHJlc3Npb24KKyAgICAgICAgICAgJ3c6eHonICAgICAgIG9wZW4gZm9yIHdyaXRpbmcgd2l0aCBsem1hIGNvbXByZXNzaW9uCiAKICAgICAgICAgICAgJ3J8KicgICAgICAgIG9wZW4gYSBzdHJlYW0gb2YgdGFyIGJsb2NrcyB3aXRoIHRyYW5zcGFyZW50IGNvbXByZXNzaW9uCiAgICAgICAgICAgICdyfCcgICAgICAgICBvcGVuIGFuIHVuY29tcHJlc3NlZCBzdHJlYW0gb2YgdGFyIGJsb2NrcyBmb3IgcmVhZGluZwogICAgICAgICAgICAncnxneicgICAgICAgb3BlbiBhIGd6aXAgY29tcHJlc3NlZCBzdHJlYW0gb2YgdGFyIGJsb2NrcwogICAgICAgICAgICAncnxiejInICAgICAgb3BlbiBhIGJ6aXAyIGNvbXByZXNzZWQgc3RyZWFtIG9mIHRhciBibG9ja3MKKyAgICAgICAgICAgJ3J8eHonICAgICAgIG9wZW4gYW4gbHptYSBjb21wcmVzc2VkIHN0cmVhbSBvZiB0YXIgYmxvY2tzCiAgICAgICAgICAgICd3fCcgICAgICAgICBvcGVuIGFuIHVuY29tcHJlc3NlZCBzdHJlYW0gZm9yIHdyaXRpbmcKICAgICAgICAgICAgJ3d8Z3onICAgICAgIG9wZW4gYSBnemlwIGNvbXByZXNzZWQgc3RyZWFtIGZvciB3cml0aW5nCiAgICAgICAgICAgICd3fGJ6MicgICAgICBvcGVuIGEgYnppcDIgY29tcHJlc3NlZCBzdHJlYW0gZm9yIHdyaXRpbmcKKyAgICAgICAgICAgJ3d8eHonICAgICAgIG9wZW4gYW4gbHptYSBjb21wcmVzc2VkIHN0cmVhbSBmb3Igd3JpdGluZwogICAgICAgICAiIiIKIAogICAgICAgICBpZiBub3QgbmFtZSBhbmQgbm90IGZpbGVvYmo6CkBAIC0xODMyLDEwICsxNzk1LDggQEAKICAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgogICAgICAgICAgICAgcmFpc2UgQ29tcHJlc3Npb25FcnJvcigiYnoyIG1vZHVsZSBpcyBub3QgYXZhaWxhYmxlIikKIAotICAgICAgICBpZiBmaWxlb2JqIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgZmlsZW9iaiA9IF9CWjJQcm94eShmaWxlb2JqLCBtb2RlKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgZmlsZW9iaiA9IGJ6Mi5CWjJGaWxlKG5hbWUsIG1vZGUsIGNvbXByZXNzbGV2ZWw9Y29tcHJlc3NsZXZlbCkKKyAgICAgICAgZmlsZW9iaiA9IGJ6Mi5CWjJGaWxlKGZpbGVuYW1lPW5hbWUgaWYgZmlsZW9iaiBpcyBOb25lIGVsc2UgTm9uZSwKKyAgICAgICAgICAgICAgICBtb2RlPW1vZGUsIGZpbGVvYmo9ZmlsZW9iaiwgY29tcHJlc3NsZXZlbD1jb21wcmVzc2xldmVsKQogCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHQgPSBjbHMudGFyb3BlbihuYW1lLCBtb2RlLCBmaWxlb2JqLCAqKmt3YXJncykKQEAgLTE4NDUsMTEgKzE4MDYsMzYgQEAKICAgICAgICAgdC5fZXh0ZmlsZW9iaiA9IEZhbHNlCiAgICAgICAgIHJldHVybiB0CiAKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgeHpvcGVuKGNscywgbmFtZSwgbW9kZT0iciIsIGZpbGVvYmo9Tm9uZSwgcHJlc2V0PU5vbmUsICoqa3dhcmdzKToKKyAgICAgICAgIiIiT3BlbiBsem1hIGNvbXByZXNzZWQgdGFyIGFyY2hpdmUgbmFtZSBmb3IgcmVhZGluZyBvciB3cml0aW5nLgorICAgICAgICAgICBBcHBlbmRpbmcgaXMgbm90IGFsbG93ZWQuCisgICAgICAgICIiIgorICAgICAgICBpZiBtb2RlIG5vdCBpbiAoInIiLCAidyIpOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigibW9kZSBtdXN0IGJlICdyJyBvciAndyciKQorCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGltcG9ydCBsem1hCisgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICAgICAgICAgIHJhaXNlIENvbXByZXNzaW9uRXJyb3IoImx6bWEgbW9kdWxlIGlzIG5vdCBhdmFpbGFibGUiKQorCisgICAgICAgIGZpbGVvYmogPSBsem1hLkxaTUFGaWxlKGZpbGVuYW1lPW5hbWUgaWYgZmlsZW9iaiBpcyBOb25lIGVsc2UgTm9uZSwKKyAgICAgICAgICAgICAgICBtb2RlPW1vZGUsIGZpbGVvYmo9ZmlsZW9iaiwgcHJlc2V0PXByZXNldCkKKworICAgICAgICB0cnk6CisgICAgICAgICAgICB0ID0gY2xzLnRhcm9wZW4obmFtZSwgbW9kZSwgZmlsZW9iaiwgKiprd2FyZ3MpCisgICAgICAgIGV4Y2VwdCAobHptYS5MWk1BRXJyb3IsIEVPRkVycm9yKToKKyAgICAgICAgICAgIGZpbGVvYmouY2xvc2UoKQorICAgICAgICAgICAgcmFpc2UgUmVhZEVycm9yKCJub3QgYW4gbHptYSBmaWxlIikKKyAgICAgICAgdC5fZXh0ZmlsZW9iaiA9IEZhbHNlCisgICAgICAgIHJldHVybiB0CisKICAgICAjIEFsbCAqb3BlbigpIG1ldGhvZHMgYXJlIHJlZ2lzdGVyZWQgaGVyZS4KICAgICBPUEVOX01FVEggPSB7CiAgICAgICAgICJ0YXIiOiAidGFyb3BlbiIsICAgIyB1bmNvbXByZXNzZWQgdGFyCiAgICAgICAgICJneiI6ICAiZ3pvcGVuIiwgICAgIyBnemlwIGNvbXByZXNzZWQgdGFyCi0gICAgICAgICJiejIiOiAiYnoyb3BlbiIgICAgIyBiemlwMiBjb21wcmVzc2VkIHRhcgorICAgICAgICAiYnoyIjogImJ6Mm9wZW4iLCAgICMgYnppcDIgY29tcHJlc3NlZCB0YXIKKyAgICAgICAgInh6IjogICJ4em9wZW4iICAgICAjIGx6bWEgY29tcHJlc3NlZCB0YXIKICAgICB9CiAKICAgICAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTIyODMsOSArMjI2OSw4IEBACiAgICAgICAgICAgICAjIFVzZSBhIHNhZmUgbW9kZSBmb3IgdGhlIGRpcmVjdG9yeSwgdGhlIHJlYWwgbW9kZSBpcyBzZXQKICAgICAgICAgICAgICMgbGF0ZXIgaW4gX2V4dHJhY3RfbWVtYmVyKCkuCiAgICAgICAgICAgICBvcy5ta2Rpcih0YXJnZXRwYXRoLCAwbzcwMCkKLSAgICAgICAgZXhjZXB0IEVudmlyb25tZW50RXJyb3IgYXMgZToKLSAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gZXJybm8uRUVYSVNUOgotICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgIGV4Y2VwdCBGaWxlRXhpc3RzRXJyb3I6CisgICAgICAgICAgICBwYXNzCiAKICAgICBkZWYgbWFrZWZpbGUoc2VsZiwgdGFyaW5mbywgdGFyZ2V0cGF0aCk6CiAgICAgICAgICIiIk1ha2UgYSBmaWxlIGNhbGxlZCB0YXJnZXRwYXRoLgpkaWZmIC0tZ2l0IGEvTGliL3RlbXBmaWxlLnB5IGIvTGliL3RlbXBmaWxlLnB5CmluZGV4IDM0ZGZmMzAuLjM5ZWJmNWEgMTAwNjQ0Ci0tLSBhL0xpYi90ZW1wZmlsZS5weQorKysgYi9MaWIvdGVtcGZpbGUucHkKQEAgLTEwLDggKzEwLDYgQEAKIAogICBUTVBfTUFYICAtIG1heGltdW0gbnVtYmVyIG9mIG5hbWVzIHRoYXQgd2lsbCBiZSB0cmllZCBiZWZvcmUKICAgICAgICAgICAgICBnaXZpbmcgdXAuCi0gIHRlbXBsYXRlIC0gdGhlIGRlZmF1bHQgcHJlZml4IGZvciBhbGwgdGVtcG9yYXJ5IG5hbWVzLgotICAgICAgICAgICAgIFlvdSBtYXkgY2hhbmdlIHRoaXMgdG8gY29udHJvbCB0aGUgZGVmYXVsdCBwcmVmaXguCiAgIHRlbXBkaXIgIC0gSWYgdGhpcyBpcyBzZXQgdG8gYSBzdHJpbmcgYmVmb3JlIHRoZSBmaXJzdCB1c2Ugb2YKICAgICAgICAgICAgICBhbnkgcm91dGluZSBmcm9tIHRoaXMgbW9kdWxlLCBpdCB3aWxsIGJlIGNvbnNpZGVyZWQgYXMKICAgICAgICAgICAgICBhbm90aGVyIGNhbmRpZGF0ZSBsb2NhdGlvbiB0byBzdG9yZSB0ZW1wb3JhcnkgZmlsZXMuCkBAIC0zMyw3ICszMSw2IEBACiBpbXBvcnQgc3lzIGFzIF9zeXMKIGltcG9ydCBpbyBhcyBfaW8KIGltcG9ydCBvcyBhcyBfb3MKLWltcG9ydCBlcnJubyBhcyBfZXJybm8KIGZyb20gcmFuZG9tIGltcG9ydCBSYW5kb20gYXMgX1JhbmRvbQogCiB0cnk6CkBAIC00NSw3ICs0Miw3IEBACiAgICAgZGVmIF9zZXRfY2xvZXhlYyhmZCk6CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGZsYWdzID0gX2ZjbnRsLmZjbnRsKGZkLCBfZmNudGwuRl9HRVRGRCwgMCkKLSAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgogICAgICAgICAgICAgcGFzcwogICAgICAgICBlbHNlOgogICAgICAgICAgICAgIyBmbGFncyByZWFkIHN1Y2Nlc3NmdWxseSwgbW9kaWZ5CkBAIC03NCw2ICs3MSw4IEBACiBlbHNlOgogICAgIFRNUF9NQVggPSAxMDAwMAogCisjIEFsdGhvdWdoIGl0IGRvZXMgbm90IGhhdmUgYW4gdW5kZXJzY29yZSBmb3IgaGlzdG9yaWNhbCByZWFzb25zLCB0aGlzCisjIHZhcmlhYmxlIGlzIGFuIGludGVybmFsIGltcGxlbWVudGF0aW9uIGRldGFpbCAoc2VlIGlzc3VlIDEwMzU0KS4KIHRlbXBsYXRlID0gInRtcCIKIAogIyBJbnRlcm5hbCByb3V0aW5lcy4KQEAgLTg1LDE5ICs4NCwxNiBAQAogZWxpZiBoYXNhdHRyKF9vcywgInN0YXQiKToKICAgICBfc3RhdCA9IF9vcy5zdGF0CiBlbHNlOgotICAgICMgRmFsbGJhY2suICBBbGwgd2UgbmVlZCBpcyBzb21ldGhpbmcgdGhhdCByYWlzZXMgb3MuZXJyb3IgaWYgdGhlCisgICAgIyBGYWxsYmFjay4gIEFsbCB3ZSBuZWVkIGlzIHNvbWV0aGluZyB0aGF0IHJhaXNlcyBPU0Vycm9yIGlmIHRoZQogICAgICMgZmlsZSBkb2Vzbid0IGV4aXN0LgogICAgIGRlZiBfc3RhdChmbik6Ci0gICAgICAgIHRyeToKLSAgICAgICAgICAgIGYgPSBvcGVuKGZuKQotICAgICAgICBleGNlcHQgSU9FcnJvcjoKLSAgICAgICAgICAgIHJhaXNlIF9vcy5lcnJvcgorICAgICAgICBmID0gb3BlbihmbikKICAgICAgICAgZi5jbG9zZSgpCiAKIGRlZiBfZXhpc3RzKGZuKToKICAgICB0cnk6CiAgICAgICAgIF9zdGF0KGZuKQotICAgIGV4Y2VwdCBfb3MuZXJyb3I6CisgICAgZXhjZXB0IE9TRXJyb3I6CiAgICAgICAgIHJldHVybiBGYWxzZQogICAgIGVsc2U6CiAgICAgICAgIHJldHVybiBUcnVlCkBAIC0xNDksNyArMTQ1LDcgQEAKICAgICAjIEFzIGEgbGFzdCByZXNvcnQsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4KICAgICB0cnk6CiAgICAgICAgIGRpcmxpc3QuYXBwZW5kKF9vcy5nZXRjd2QoKSkKLSAgICBleGNlcHQgKEF0dHJpYnV0ZUVycm9yLCBfb3MuZXJyb3IpOgorICAgIGV4Y2VwdCAoQXR0cmlidXRlRXJyb3IsIE9TRXJyb3IpOgogICAgICAgICBkaXJsaXN0LmFwcGVuZChfb3MuY3VyZGlyKQogCiAgICAgcmV0dXJuIGRpcmxpc3QKQEAgLTE4MSwxMiArMTc3LDExIEBACiAgICAgICAgICAgICAgICAgX29zLnVubGluayhmaWxlbmFtZSkKICAgICAgICAgICAgICAgICBkZWwgZnAsIGZkCiAgICAgICAgICAgICAgICAgcmV0dXJuIGRpcgotICAgICAgICAgICAgZXhjZXB0IChPU0Vycm9yLCBJT0Vycm9yKSBhcyBlOgotICAgICAgICAgICAgICAgIGlmIGUuYXJnc1swXSAhPSBfZXJybm8uRUVYSVNUOgotICAgICAgICAgICAgICAgICAgICBicmVhayAjIG5vIHBvaW50IHRyeWluZyBtb3JlIG5hbWVzIGluIHRoaXMgZGlyZWN0b3J5CisgICAgICAgICAgICBleGNlcHQgRmlsZUV4aXN0c0Vycm9yOgogICAgICAgICAgICAgICAgIHBhc3MKLSAgICByYWlzZSBJT0Vycm9yKF9lcnJuby5FTk9FTlQsCi0gICAgICAgICAgICAgICAgICAiTm8gdXNhYmxlIHRlbXBvcmFyeSBkaXJlY3RvcnkgZm91bmQgaW4gJXMiICUgZGlybGlzdCkKKyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAgICAgICAgIGJyZWFrICAgIyBubyBwb2ludCB0cnlpbmcgbW9yZSBuYW1lcyBpbiB0aGlzIGRpcmVjdG9yeQorICAgIHJhaXNlIEZpbGVOb3RGb3VuZEVycm9yKCJObyB1c2FibGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSBmb3VuZCBpbiAlcyIgJSBkaXJsaXN0KQogCiBfbmFtZV9zZXF1ZW5jZSA9IE5vbmUKIApAQCAtMjE2LDEyICsyMTEsMTAgQEAKICAgICAgICAgICAgIGZkID0gX29zLm9wZW4oZmlsZSwgZmxhZ3MsIDBvNjAwKQogICAgICAgICAgICAgX3NldF9jbG9leGVjKGZkKQogICAgICAgICAgICAgcmV0dXJuIChmZCwgX29zLnBhdGguYWJzcGF0aChmaWxlKSkKLSAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKLSAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gX2Vycm5vLkVFWElTVDoKLSAgICAgICAgICAgICAgICBjb250aW51ZSAjIHRyeSBhZ2FpbgotICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZXhjZXB0IEZpbGVFeGlzdHNFcnJvcjoKKyAgICAgICAgICAgIGNvbnRpbnVlICAgICMgdHJ5IGFnYWluCiAKLSAgICByYWlzZSBJT0Vycm9yKF9lcnJuby5FRVhJU1QsICJObyB1c2FibGUgdGVtcG9yYXJ5IGZpbGUgbmFtZSBmb3VuZCIpCisgICAgcmFpc2UgRmlsZUV4aXN0c0Vycm9yKCJObyB1c2FibGUgdGVtcG9yYXJ5IGZpbGUgbmFtZSBmb3VuZCIpCiAKIAogIyBVc2VyIHZpc2libGUgaW50ZXJmYWNlcy4KQEAgLTMwNSwxMiArMjk4LDEwIEBACiAgICAgICAgIHRyeToKICAgICAgICAgICAgIF9vcy5ta2RpcihmaWxlLCAwbzcwMCkKICAgICAgICAgICAgIHJldHVybiBmaWxlCi0gICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6Ci0gICAgICAgICAgICBpZiBlLmVycm5vID09IF9lcnJuby5FRVhJU1Q6Ci0gICAgICAgICAgICAgICAgY29udGludWUgIyB0cnkgYWdhaW4KLSAgICAgICAgICAgIHJhaXNlCisgICAgICAgIGV4Y2VwdCBGaWxlRXhpc3RzRXJyb3I6CisgICAgICAgICAgICBjb250aW51ZSAgICAjIHRyeSBhZ2FpbgogCi0gICAgcmFpc2UgSU9FcnJvcihfZXJybm8uRUVYSVNULCAiTm8gdXNhYmxlIHRlbXBvcmFyeSBkaXJlY3RvcnkgbmFtZSBmb3VuZCIpCisgICAgcmFpc2UgRmlsZUV4aXN0c0Vycm9yKCJObyB1c2FibGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSBuYW1lIGZvdW5kIikKIAogZGVmIG1rdGVtcChzdWZmaXg9IiIsIHByZWZpeD10ZW1wbGF0ZSwgZGlyPU5vbmUpOgogICAgICIiIlVzZXItY2FsbGFibGUgZnVuY3Rpb24gdG8gcmV0dXJuIGEgdW5pcXVlIHRlbXBvcmFyeSBmaWxlIG5hbWUuICBUaGUKQEAgLTMzOSw3ICszMzAsNyBAQAogICAgICAgICBpZiBub3QgX2V4aXN0cyhmaWxlKToKICAgICAgICAgICAgIHJldHVybiBmaWxlCiAKLSAgICByYWlzZSBJT0Vycm9yKF9lcnJuby5FRVhJU1QsICJObyB1c2FibGUgdGVtcG9yYXJ5IGZpbGVuYW1lIGZvdW5kIikKKyAgICByYWlzZSBGaWxlRXhpc3RzRXJyb3IoIk5vIHVzYWJsZSB0ZW1wb3JhcnkgZmlsZW5hbWUgZm91bmQiKQogCiAKIGNsYXNzIF9UZW1wb3JhcnlGaWxlV3JhcHBlcjoKQEAgLTU5Miw4ICs1ODMsMTMgQEAKICAgICBkZWYgdGVsbChzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuX2ZpbGUudGVsbCgpCiAKLSAgICBkZWYgdHJ1bmNhdGUoc2VsZik6Ci0gICAgICAgIHNlbGYuX2ZpbGUudHJ1bmNhdGUoKQorICAgIGRlZiB0cnVuY2F0ZShzZWxmLCBzaXplPU5vbmUpOgorICAgICAgICBpZiBzaXplIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLl9maWxlLnRydW5jYXRlKCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIHNpemUgPiBzZWxmLl9tYXhfc2l6ZToKKyAgICAgICAgICAgICAgICBzZWxmLnJvbGxvdmVyKCkKKyAgICAgICAgICAgIHNlbGYuX2ZpbGUudHJ1bmNhdGUoc2l6ZSkKIAogICAgIGRlZiB3cml0ZShzZWxmLCBzKToKICAgICAgICAgZmlsZSA9IHNlbGYuX2ZpbGUKQEAgLTY2OSw3ICs2NjUsNyBAQAogICAgIF9pc2xpbmsgPSBzdGF0aWNtZXRob2QoX29zLnBhdGguaXNsaW5rKQogICAgIF9yZW1vdmUgPSBzdGF0aWNtZXRob2QoX29zLnJlbW92ZSkKICAgICBfcm1kaXIgPSBzdGF0aWNtZXRob2QoX29zLnJtZGlyKQotICAgIF9vc19lcnJvciA9IF9vcy5lcnJvcgorICAgIF9vc19lcnJvciA9IE9TRXJyb3IKICAgICBfd2FybiA9IF93YXJuaW5ncy53YXJuCiAKICAgICBkZWYgX3JtdHJlZShzZWxmLCBwYXRoKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2J1ZmZlcl90ZXN0cy5weSBiL0xpYi90ZXN0L2J1ZmZlcl90ZXN0cy5weQppbmRleCA2ZDIwZjdkLi5jZjU0YzI4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC9idWZmZXJfdGVzdHMucHkKKysrIGIvTGliL3Rlc3QvYnVmZmVyX3Rlc3RzLnB5CkBAIC0yMDAsNyArMjAwLDEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5tYXJzaGFsKGInYWJjXG5kZWZcclxuZ2hpXG5ccicpLnNwbGl0bGluZXMoKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbYicnLCBiJ2FiYycsIGInZGVmJywgYidnaGknLCBiJyddLAogICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYubWFyc2hhbChiJ1xuYWJjXG5kZWZcclxuZ2hpXG5ccicpLnNwbGl0bGluZXMoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbYicnLCBiJ2FiYycsIGInZGVmJywgYidnaGknLCBiJyddLAorICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYubWFyc2hhbChiJ1xuYWJjXG5kZWZcclxuZ2hpXG5ccicpLnNwbGl0bGluZXMoRmFsc2UpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFtiJ1xuJywgYidhYmNcbicsIGInZGVmXHJcbicsIGInZ2hpXG4nLCBiJ1xyJ10sCi0gICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5tYXJzaGFsKGInXG5hYmNcbmRlZlxyXG5naGlcblxyJykuc3BsaXRsaW5lcygxKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLm1hcnNoYWwoYidcbmFiY1xuZGVmXHJcbmdoaVxuXHInKS5zcGxpdGxpbmVzKFRydWUpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFtiJycsIGInYWJjJywgYidkZWYnLCBiJ2doaScsIGInJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5tYXJzaGFsKGInXG5hYmNcbmRlZlxyXG5naGlcblxyJykuc3BsaXRsaW5lcyhrZWVwZW5kcz1GYWxzZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW2InXG4nLCBiJ2FiY1xuJywgYidkZWZcclxuJywgYidnaGlcbicsIGInXHInXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLm1hcnNoYWwoYidcbmFiY1xuZGVmXHJcbmdoaVxuXHInKS5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5tYXJzaGFsKGInYWJjJykuc3BsaXRsaW5lcywgNDIsIDQyKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvY3Jhc2hlcnMvUkVBRE1FIGIvTGliL3Rlc3QvY3Jhc2hlcnMvUkVBRE1FCmluZGV4IDJhNzNlMWIuLjAyNTlhMDYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L2NyYXNoZXJzL1JFQURNRQorKysgYi9MaWIvdGVzdC9jcmFzaGVycy9SRUFETUUKQEAgLTE0LDMgKzE0LDcgQEAKIE9uY2UgdGhlIGNyYXNoIGlzIGZpeGVkLCB0aGUgdGVzdCBjYXNlIHNob3VsZCBiZSBtb3ZlZCBpbnRvIGFuIGFwcHJvcHJpYXRlIHRlc3QKIChldmVuIGlmIGl0IHdhcyBvcmlnaW5hbGx5IGZyb20gdGhlIHRlc3Qgc3VpdGUpLiAgVGhpcyBlbnN1cmVzIHRoZSByZWdyZXNzaW9uCiBkb2Vzbid0IGhhcHBlbiBhZ2Fpbi4gIEFuZCBpZiBpdCBkb2VzLCBpdCBzaG91bGQgYmUgZWFzaWVyIHRvIHRyYWNrIGRvd24uCisKK0Fsc28gc2VlIExpYi90ZXN0X2NyYXNoZXJzLnB5IHdoaWNoIGV4ZXJjaXNlcyB0aGUgY3Jhc2hlcnMgaW4gdGhpcyBkaXJlY3RvcnkuCitJbiBwYXJ0aWN1bGFyLCBtYWtlIHN1cmUgdG8gYWRkIGFueSBuZXcgaW5maW5pdGUgbG9vcCBjcmFzaGVycyB0byB0aGUgYmxhY2sKK2xpc3Qgc28gaXQgZG9lc24ndCB0cnkgdG8gcnVuIHRoZW0uCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9jcmFzaGVycy9jb21waWxlcl9yZWN1cnNpb24ucHkgYi9MaWIvdGVzdC9jcmFzaGVycy9jb21waWxlcl9yZWN1cnNpb24ucHkKaW5kZXggNDk1NGJkZC4uMzFmMjhhOSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvY3Jhc2hlcnMvY29tcGlsZXJfcmVjdXJzaW9uLnB5CisrKyBiL0xpYi90ZXN0L2NyYXNoZXJzL2NvbXBpbGVyX3JlY3Vyc2lvbi5weQpAQCAtMSw1ICsxLDEzIEBACiAiIiIKLVRoZSBjb21waWxlciAoPj0gMi41KSByZWN1cnNlcyBoYXBwaWx5LgorVGhlIGNvbXBpbGVyICg+PSAyLjUpIHJlY3Vyc2VzIGhhcHBpbHkgdW50aWwgaXQgYmxvd3MgdGhlIHN0YWNrLgorCitSZWNvcmRlZCBvbiB0aGUgdHJhY2tlciBhcyBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlMTEzODMKICIiIgogCi1jb21waWxlKCcoKScqOSoqNSwgJz8nLCAnZXhlYycpCisjIFRoZSB2YXJpYW50IGJlbG93IGJsb3dzIHVwIGluIGNvbXBpbGVyX2NhbGwsIGJ1dCB0aGVyZSBhcmUgYXNzb3J0ZWQKKyMgb3RoZXIgdmFyaWF0aW9ucyB0aGF0IGJsb3cgdXAgaW4gb3RoZXIgZnVuY3Rpb25zCisjIGUuZy4gJzEqJyoxMCoqNSsnMScgd2lsbCBkaWUgaW4gY29tcGlsZXJfdmlzaXRfZXhwcgorCisjIFRoZSBleGFjdCBsaW1pdCB0byBkZXN0cm95IHRoZSBzdGFjayB3aWxsIHZhcnkgYnkgcGxhdGZvcm0KKyMgYnV0IDEwTSBzaG91bGQgZG8gdGhlIHRyaWNrIGV2ZW4gd2l0aCBodWdlIHN0YWNrIGFsbG9jYXRpb25zCitjb21waWxlKCcoKScqMTAqKjcsICc/JywgJ2V4ZWMnKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvY3Jhc2hlcnMvbG9vc2luZ19tcm9fcmVmLnB5IGIvTGliL3Rlc3QvY3Jhc2hlcnMvbG9zaW5nX21yb19yZWYucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi90ZXN0L2NyYXNoZXJzL2xvb3NpbmdfbXJvX3JlZi5weQpyZW5hbWUgdG8gTGliL3Rlc3QvY3Jhc2hlcnMvbG9zaW5nX21yb19yZWYucHkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2NyYXNoZXJzL25hc3R5X2VxX3ZzX2RpY3QucHkgYi9MaWIvdGVzdC9jcmFzaGVycy9uYXN0eV9lcV92c19kaWN0LnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NWY3Y2FmLi4wMDAwMDAwCi0tLSBhL0xpYi90ZXN0L2NyYXNoZXJzL25hc3R5X2VxX3ZzX2RpY3QucHkKKysrIC9kZXYvbnVsbApAQCAtMSw0NyArMCwwIEBACi0jIGZyb20gaHR0cDovL21haWwucHl0aG9uLm9yZy9waXBlcm1haWwvcHl0aG9uLWRldi8yMDAxLUp1bmUvMDE1MjM5Lmh0bWwKLQotIyBpZiB5b3Uga2VlcCBjaGFuZ2luZyBhIGRpY3Rpb25hcnkgd2hpbGUgbG9va2luZyB1cCBhIGtleSwgeW91IGNhbgotIyBwcm92b2tlIGFuIGluZmluaXRlIHJlY3Vyc2lvbiBpbiBDCi0KLSMgQXQgdGhlIHRpbWUgbmVpdGhlciBUaW0gbm9yIE1pY2hhZWwgY291bGQgYmUgYm90aGVyZWQgdG8gdGhpbmsgb2YgYQotIyB3YXkgdG8gZml4IGl0LgotCi1jbGFzcyBZdWNrOgotICAgIGRlZiBfX2luaXRfXyhzZWxmKToKLSAgICAgICAgc2VsZi5pID0gMAotCi0gICAgZGVmIG1ha2VfZGFuZ2Vyb3VzKHNlbGYpOgotICAgICAgICBzZWxmLmkgPSAxCi0KLSAgICBkZWYgX19oYXNoX18oc2VsZik6Ci0gICAgICAgICMgZGlyZWN0IHRvIHNsb3QgNCBpbiB0YWJsZSBvZiBzaXplIDg7IHNsb3QgMTIgd2hlbiBzaXplIDE2Ci0gICAgICAgIHJldHVybiA0ICsgOAotCi0gICAgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6Ci0gICAgICAgIGlmIHNlbGYuaSA9PSAwOgotICAgICAgICAgICAgIyBsZWF2ZSBkaWN0IGFsb25lCi0gICAgICAgICAgICBwYXNzCi0gICAgICAgIGVsaWYgc2VsZi5pID09IDE6Ci0gICAgICAgICAgICAjIGZpZGRsZSB0byAxNiBzbG90cwotICAgICAgICAgICAgc2VsZi5fX2ZpbGxfZGljdCg2KQotICAgICAgICAgICAgc2VsZi5pID0gMgotICAgICAgICBlbHNlOgotICAgICAgICAgICAgIyBmaWRkbGUgdG8gOCBzbG90cwotICAgICAgICAgICAgc2VsZi5fX2ZpbGxfZGljdCg0KQotICAgICAgICAgICAgc2VsZi5pID0gMQotCi0gICAgICAgIHJldHVybiAxCi0KLSAgICBkZWYgX19maWxsX2RpY3Qoc2VsZiwgbik6Ci0gICAgICAgIHNlbGYuaSA9IDAKLSAgICAgICAgZGljdC5jbGVhcigpCi0gICAgICAgIGZvciBpIGluIHJhbmdlKG4pOgotICAgICAgICAgICAgZGljdFtpXSA9IGkKLSAgICAgICAgZGljdFtzZWxmXSA9ICJPSyEiCi0KLXkgPSBZdWNrKCkKLWRpY3QgPSB7eTogIk9LISJ9Ci0KLXogPSBZdWNrKCkKLXkubWFrZV9kYW5nZXJvdXMoKQotcHJpbnQoZGljdFt6XSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2RhdGV0aW1ldGVzdGVyLnB5IGIvTGliL3Rlc3QvZGF0ZXRpbWV0ZXN0ZXIucHkKaW5kZXggM2ZkNjc5OS4uNWMwMmIzYSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvZGF0ZXRpbWV0ZXN0ZXIucHkKKysrIGIvTGliL3Rlc3QvZGF0ZXRpbWV0ZXN0ZXIucHkKQEAgLTEyODksMTIgKzEyODksMTggQEAKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYudGhlY2xhc3MubWluKQogICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi50aGVjbGFzcy5tYXgpCiAKLSAgICBkZWYgdGVzdF9zdHJmdGltZV9vdXRfb2ZfcmFuZ2Uoc2VsZik6Ci0gICAgICAgICMgRm9yIG5hc3R5IHRlY2huaWNhbCByZWFzb25zLCB3ZSBjYW4ndCBoYW5kbGUgeWVhcnMgYmVmb3JlIDEwMDAuCi0gICAgICAgIGNscyA9IHNlbGYudGhlY2xhc3MKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbHMoMTAwMCwgMSwgMSkuc3RyZnRpbWUoIiVZIiksICIxMDAwIikKLSAgICAgICAgZm9yIHkgaW4gMSwgNDksIDUxLCA5OSwgMTAwLCA5OTk6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjbHMoeSwgMSwgMSkuc3RyZnRpbWUsICIlWSIpCisgICAgZGVmIHRlc3Rfc3RyZnRpbWVfeTJrKHNlbGYpOgorICAgICAgICBmb3IgeSBpbiAoMSwgNDksIDcwLCA5OSwgMTAwLCA5OTksIDEwMDAsIDE5NzApOgorICAgICAgICAgICAgZCA9IHNlbGYudGhlY2xhc3MoeSwgMSwgMSkKKyAgICAgICAgICAgICMgSXNzdWUgMTMzMDU6ICBGb3IgeWVhcnMgPCAxMDAwLCB0aGUgdmFsdWUgaXMgbm90IGFsd2F5cworICAgICAgICAgICAgIyBwYWRkZWQgdG8gNCBkaWdpdHMgYWNyb3NzIHBsYXRmb3Jtcy4gIFRoZSBDIHN0YW5kYXJkCisgICAgICAgICAgICAjIGFzc3VtZXMgeWVhciA+PSAxOTAwLCBzbyBpdCBkb2VzIG5vdCBzcGVjaWZ5IHRoZSBudW1iZXIKKyAgICAgICAgICAgICMgb2YgZGlnaXRzLgorICAgICAgICAgICAgaWYgZC5zdHJmdGltZSgiJVkiKSAhPSAnJTA0ZCcgJSB5OgorICAgICAgICAgICAgICAgICMgWWVhciA0MiByZXR1cm5zICc0MicsIG5vdCBwYWRkZWQKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGQuc3RyZnRpbWUoIiVZIiksICclZCcgJSB5KQorICAgICAgICAgICAgICAgICMgJzAwNDInIGlzIG9idGFpbmVkIGFueXdheQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZC5zdHJmdGltZSgiJTRZIiksICclMDRkJyAlIHkpCiAKICAgICBkZWYgdGVzdF9yZXBsYWNlKHNlbGYpOgogICAgICAgICBjbHMgPSBzZWxmLnRoZWNsYXNzCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9kZWNpbWFsdGVzdGRhdGEvZXh0cmEuZGVjVGVzdCBiL0xpYi90ZXN0L2RlY2ltYWx0ZXN0ZGF0YS9leHRyYS5kZWNUZXN0CmluZGV4IGZlOGI3N2EuLmI2MzBkOGUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L2RlY2ltYWx0ZXN0ZGF0YS9leHRyYS5kZWNUZXN0CisrKyBiL0xpYi90ZXN0L2RlY2ltYWx0ZXN0ZGF0YS9leHRyYS5kZWNUZXN0CkBAIC0yMjIsMTIgKzIyMiwyNSBAQAogZXh0cjE3MDEgcG93ZXIgMTAwLjAgLTU1Ny43MWUtNzQyODg4ODg4IC0+IDEuMDAwMDAwMDAwMDAwMDAwIEluZXhhY3QgUm91bmRlZAogZXh0cjE3MDIgcG93ZXIgMTAgMWUtMTAwIC0+IDEuMDAwMDAwMDAwMDAwMDAwIEluZXhhY3QgUm91bmRlZAogCistLSBBbm90aGVyIG9uZSAoc2VlIGlzc3VlICMxMjA4MCkuICBUaGFua3MgYWdhaW4gdG8gU3RlZmFuIEtyYWguCitleHRyMTcwMyBwb3dlciA0IC0xLjJlLTk5OTk5OTk5OSAtPiAxLjAwMDAwMDAwMDAwMDAwMCBJbmV4YWN0IFJvdW5kZWQKKwogLS0gQSBjb3VwbGUgb2YgaW50ZXJlc3RpbmcgZXhhY3QgY2FzZXMgZm9yIHBvd2VyLiAgTm90ZSB0aGF0IHRoZSBzcGVjaWZpY2F0aW9uCiAtLSByZXF1aXJlcyB0aGVzZSB0byBiZSByZXBvcnRlZCBhcyBJbmV4YWN0LgogZXh0cjE3MTAgcG93ZXIgMWUzNzUgNTZlLTMgLT4gMS4wMDAwMDAwMDAwMDAwMDBFKzIxIEluZXhhY3QgUm91bmRlZAogZXh0cjE3MTEgcG93ZXIgMTAwMDAgMC43NSAtPiAxMDAwLjAwMDAwMDAwMDAwMCBJbmV4YWN0IFJvdW5kZWQKIGV4dHIxNzEyIHBvd2VyIDFlLTI0IDAuODc1IC0+IDEuMDAwMDAwMDAwMDAwMDAwRS0yMSBJbmV4YWN0IFJvdW5kZWQKIAorLS0gU29tZSBtb3JlIGV4YWN0IGNhc2VzLCBleGVyY2lzaW5nIHBvd2VyIHdpdGggbmVnYXRpdmUgc2Vjb25kIGFyZ3VtZW50LgorZXh0cjE3MjAgcG93ZXIgNDAwIC0wLjUgLT4gMC4wNTAwMDAwMDAwMDAwMDAwMCBJbmV4YWN0IFJvdW5kZWQKK2V4dHIxNzIxIHBvd2VyIDQwOTYgLTAuNzUgLT4gMC4wMDE5NTMxMjUwMDAwMDAwMDAgSW5leGFjdCBSb3VuZGVkCitleHRyMTcyMiBwb3dlciA2MjVlNCAtMC4yNSAtPiAwLjAyMDAwMDAwMDAwMDAwMDAwIEluZXhhY3QgUm91bmRlZAorCistLSBOb25leGFjdCBjYXNlcywgdG8gZXhlcmNpc2Ugc29tZSBvZiB0aGUgZWFybHkgZXhpdCBjb25kaXRpb25zIGZyb20KKy0tIF9wb3dlcl9leGFjdC4KK2V4dHIxNzMwIHBvd2VyIDIwNDggLTAuNzUgLT4gMC4wMDMyODQ3NTE2MjIwODQ4MjIgSW5leGFjdCBSb3VuZGVkCisKKwogLS0gVGVzdHMgZm9yIHRoZSBpc18qIGJvb2xlYW4gb3BlcmF0aW9ucwogcHJlY2lzaW9uOiA5CiBtYXhFeHBvbmVudDogOTk5CmRpZmYgLS1naXQgYS9MaWIvdGVzdC9kaDUxMi5wZW0gYi9MaWIvdGVzdC9kaDUxMi5wZW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAwZDE2YwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L2RoNTEyLnBlbQpAQCAtMCwwICsxLDkgQEAKKy0tLS0tQkVHSU4gREggUEFSQU1FVEVSUy0tLS0tCitNRVlDUVFEMUt2ODg0YkVwUUJnUmpYeUVwd3B5MW9iRUF4bklCeWw2eXBVTTJaYWZxOUFLVUpzQ1J0TUlQV2FrCitYVUdmbkh5OWlVc2lHU2E2cTZKZXcxWHBLZ1ZmQWdFQworLS0tLS1FTkQgREggUEFSQU1FVEVSUy0tLS0tCisKK1RoZXNlIGFyZSB0aGUgNTEyIGJpdCBESCBwYXJhbWV0ZXJzIGZyb20gIkFzc2lnbmVkIE51bWJlciBmb3IgU0tJUCBQcm90b2NvbHMiCisoaHR0cDovL3d3dy5za2lwLXZwbi5vcmcvc3BlYy9udW1iZXJzLmh0bWwpLgorU2VlIHRoZXJlIGZvciBob3cgdGhleSB3ZXJlIGdlbmVyYXRlZC4KK05vdGUgdGhhdCBnIGlzIG5vdCBhIGdlbmVyYXRvciwgYnV0IHRoaXMgaXMgbm90IGEgcHJvYmxlbSBzaW5jZSBwIGlzIGEgc2FmZSBwcmltZS4KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2V4Y2VwdGlvbl9oaWVyYXJjaHkudHh0IGIvTGliL3Rlc3QvZXhjZXB0aW9uX2hpZXJhcmNoeS50eHQKaW5kZXggNTAzN2IzMy4uMWMxZjY5ZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvZXhjZXB0aW9uX2hpZXJhcmNoeS50eHQKKysrIGIvTGliL3Rlc3QvZXhjZXB0aW9uX2hpZXJhcmNoeS50eHQKQEAgLTExLDExICsxMSw2IEBACiAgICAgICArLS0gQXNzZXJ0aW9uRXJyb3IKICAgICAgICstLSBBdHRyaWJ1dGVFcnJvcgogICAgICAgKy0tIEJ1ZmZlckVycm9yCi0gICAgICArLS0gRW52aXJvbm1lbnRFcnJvcgotICAgICAgfCAgICArLS0gSU9FcnJvcgotICAgICAgfCAgICArLS0gT1NFcnJvcgotICAgICAgfCAgICAgICAgICstLSBXaW5kb3dzRXJyb3IgKFdpbmRvd3MpCi0gICAgICB8ICAgICAgICAgKy0tIFZNU0Vycm9yIChWTVMpCiAgICAgICArLS0gRU9GRXJyb3IKICAgICAgICstLSBJbXBvcnRFcnJvcgogICAgICAgKy0tIExvb2t1cEVycm9yCkBAIC0yNCw2ICsxOSwyMiBAQAogICAgICAgKy0tIE1lbW9yeUVycm9yCiAgICAgICArLS0gTmFtZUVycm9yCiAgICAgICB8ICAgICstLSBVbmJvdW5kTG9jYWxFcnJvcgorICAgICAgKy0tIE9TRXJyb3IKKyAgICAgIHwgICAgKy0tIEJsb2NraW5nSU9FcnJvcgorICAgICAgfCAgICArLS0gQ2hpbGRQcm9jZXNzRXJyb3IKKyAgICAgIHwgICAgKy0tIENvbm5lY3Rpb25FcnJvcgorICAgICAgfCAgICB8ICAgICstLSBCcm9rZW5QaXBlRXJyb3IKKyAgICAgIHwgICAgfCAgICArLS0gQ29ubmVjdGlvbkFib3J0ZWRFcnJvcgorICAgICAgfCAgICB8ICAgICstLSBDb25uZWN0aW9uUmVmdXNlZEVycm9yCisgICAgICB8ICAgIHwgICAgKy0tIENvbm5lY3Rpb25SZXNldEVycm9yCisgICAgICB8ICAgICstLSBGaWxlRXhpc3RzRXJyb3IKKyAgICAgIHwgICAgKy0tIEZpbGVOb3RGb3VuZEVycm9yCisgICAgICB8ICAgICstLSBJbnRlcnJ1cHRlZEVycm9yCisgICAgICB8ICAgICstLSBJc0FEaXJlY3RvcnlFcnJvcgorICAgICAgfCAgICArLS0gTm90QURpcmVjdG9yeUVycm9yCisgICAgICB8ICAgICstLSBQZXJtaXNzaW9uRXJyb3IKKyAgICAgIHwgICAgKy0tIFByb2Nlc3NMb29rdXBFcnJvcgorICAgICAgfCAgICArLS0gVGltZW91dEVycm9yCiAgICAgICArLS0gUmVmZXJlbmNlRXJyb3IKICAgICAgICstLSBSdW50aW1lRXJyb3IKICAgICAgIHwgICAgKy0tIE5vdEltcGxlbWVudGVkRXJyb3IKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2Zvcmtfd2FpdC5weSBiL0xpYi90ZXN0L2Zvcmtfd2FpdC5weQppbmRleCAxY2FhYjFjLi44ODUyN2RmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC9mb3JrX3dhaXQucHkKKysrIGIvTGliL3Rlc3QvZm9ya193YWl0LnB5CkBAIC00Myw2ICs0Myw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3BpZCwgY3BpZCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGF0dXMsIDAsICJjYXVzZSA9ICVkLCBleGl0ID0gJWQiICUgKHN0YXR1cyYweGZmLCBzdGF0dXM+PjgpKQogCisgICAgQHN1cHBvcnQucmVhcF90aHJlYWRzCiAgICAgZGVmIHRlc3Rfd2FpdChzZWxmKToKICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoTlVNX1RIUkVBRFMpOgogICAgICAgICAgICAgX3RocmVhZC5zdGFydF9uZXcoc2VsZi5mLCAoaSwpKQpAQCAtNjksNyArNzAsOCBAQAogICAgICAgICAgICAgb3MuX2V4aXQobikKICAgICAgICAgZWxzZToKICAgICAgICAgICAgICMgUGFyZW50Ci0gICAgICAgICAgICBzZWxmLndhaXRfaW1wbChjcGlkKQotICAgICAgICAgICAgIyBUZWxsIHRocmVhZHMgdG8gZGllCi0gICAgICAgICAgICBzZWxmLnN0b3AgPSAxCi0gICAgICAgICAgICB0aW1lLnNsZWVwKDIqU0hPUlRTTEVFUCkgIyBXYWl0IGZvciB0aHJlYWRzIHRvIGRpZQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYud2FpdF9pbXBsKGNwaWQpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgICMgVGVsbCB0aHJlYWRzIHRvIGRpZQorICAgICAgICAgICAgICAgIHNlbGYuc3RvcCA9IDEKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZnV0dXJlMS5weSBiL0xpYi90ZXN0L2Z1dHVyZV90ZXN0MS5weQpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL3Rlc3QvdGVzdF9mdXR1cmUxLnB5CnJlbmFtZSB0byBMaWIvdGVzdC9mdXR1cmVfdGVzdDEucHkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZnV0dXJlMi5weSBiL0xpYi90ZXN0L2Z1dHVyZV90ZXN0Mi5weQpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL3Rlc3QvdGVzdF9mdXR1cmUyLnB5CnJlbmFtZSB0byBMaWIvdGVzdC9mdXR1cmVfdGVzdDIucHkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2pzb25fdGVzdHMvdGVzdF9kdW1wLnB5IGIvTGliL3Rlc3QvanNvbl90ZXN0cy90ZXN0X2R1bXAucHkKaW5kZXggMDgzYzExZi4uNGIzMzg2ZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvanNvbl90ZXN0cy90ZXN0X2R1bXAucHkKKysrIGIvTGliL3Rlc3QvanNvbl90ZXN0cy90ZXN0X2R1bXAucHkKQEAgLTEsNiArMSw3IEBACiBmcm9tIGlvIGltcG9ydCBTdHJpbmdJTwogZnJvbSB0ZXN0Lmpzb25fdGVzdHMgaW1wb3J0IFB5VGVzdCwgQ1Rlc3QKIAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGJpZ21lbXRlc3QsIF8xRwogCiBjbGFzcyBUZXN0RHVtcDoKICAgICBkZWYgdGVzdF9kdW1wKHNlbGYpOgpAQCAtMjEsNCArMjIsMjAgQEAKIAogCiBjbGFzcyBUZXN0UHlEdW1wKFRlc3REdW1wLCBQeVRlc3QpOiBwYXNzCi1jbGFzcyBUZXN0Q0R1bXAoVGVzdER1bXAsIENUZXN0KTogcGFzcworCitjbGFzcyBUZXN0Q0R1bXAoVGVzdER1bXAsIENUZXN0KToKKworICAgICMgVGhlIHNpemUgcmVxdWlyZW1lbnQgaGVyZSBpcyBob3BlZnVsbHkgb3Zlci1lc3RpbWF0ZWQgKGFjdHVhbAorICAgICMgbWVtb3J5IGNvbnN1bXB0aW9uIGRlcGVuZGluZyBvbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzLCBhbmQgYWxzbworICAgICMgc3lzdGVtIG1lbW9yeSBtYW5hZ2VtZW50LCBzaW5jZSB0aGlzIG1heSBhbGxvY2F0ZSBhIGxvdCBvZgorICAgICMgc21hbGwgb2JqZWN0cykuCisKKyAgICBAYmlnbWVtdGVzdChzaXplPV8xRywgbWVtdXNlPTEpCisgICAgZGVmIHRlc3RfbGFyZ2VfbGlzdChzZWxmLCBzaXplKToKKyAgICAgICAgTiA9IGludCgzMCAqIDEwMjQgKiAxMDI0ICogKHNpemUgLyBfMUcpKQorICAgICAgICBsID0gWzFdICogTgorICAgICAgICBlbmNvZGVkID0gc2VsZi5kdW1wcyhsKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihlbmNvZGVkKSwgTiAqIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW5jb2RlZFs6MV0sICJbIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGVkWy0yOl0sICIxXSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW5jb2RlZFsxOi0yXSwgIjEsICIgKiAoTiAtIDEpKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvanNvbl90ZXN0cy90ZXN0X3NjYW5zdHJpbmcucHkgYi9MaWIvdGVzdC9qc29uX3Rlc3RzL3Rlc3Rfc2NhbnN0cmluZy5weQppbmRleCBmODJjZGVlLi40MjZjOGRkIDEwMDY0NAotLS0gYS9MaWIvdGVzdC9qc29uX3Rlc3RzL3Rlc3Rfc2NhbnN0cmluZy5weQorKysgYi9MaWIvdGVzdC9qc29uX3Rlc3RzL3Rlc3Rfc2NhbnN0cmluZy5weQpAQCAtOSwxNCArOSw5IEBACiAgICAgICAgICAgICBzY2Fuc3RyaW5nKCcielxcdWQ4MzRcXHVkZDIweCInLCAxLCBUcnVlKSwKICAgICAgICAgICAgICgnelxVMDAwMWQxMjB4JywgMTYpKQogCi0gICAgICAgIGlmIHN5cy5tYXh1bmljb2RlID09IDY1NTM1OgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKLSAgICAgICAgICAgICAgICBzY2Fuc3RyaW5nKCcielxVMDAwMWQxMjB4IicsIDEsIFRydWUpLAotICAgICAgICAgICAgICAgICgnelxVMDAwMWQxMjB4JywgNikpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotICAgICAgICAgICAgICAgIHNjYW5zdHJpbmcoJyJ6XFUwMDAxZDEyMHgiJywgMSwgVHJ1ZSksCi0gICAgICAgICAgICAgICAgKCd6XFUwMDAxZDEyMHgnLCA1KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIHNjYW5zdHJpbmcoJyJ6XFUwMDAxZDEyMHgiJywgMSwgVHJ1ZSksCisgICAgICAgICAgICAoJ3pcVTAwMDFkMTIweCcsIDUpKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICBzY2Fuc3RyaW5nKCciXFx1MDA3YiInLCAxLCBUcnVlKSwKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2tleWNlcnQucGFzc3dkLnBlbSBiL0xpYi90ZXN0L2tleWNlcnQucGFzc3dkLnBlbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOTA1NzQ4Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3Qva2V5Y2VydC5wYXNzd2QucGVtCkBAIC0wLDAgKzEsMzMgQEAKKy0tLS0tQkVHSU4gUlNBIFBSSVZBVEUgS0VZLS0tLS0KK1Byb2MtVHlwZTogNCxFTkNSWVBURUQKK0RFSy1JbmZvOiBERVMtRURFMy1DQkMsMUE4RDlEMkEwMkVDNjk4QQorCitrSlliZlo4TDBzZmU5T3R5M2d3MGFsb05uWTVFOGZlZ1JmUUxabE5veFRsNmpOdDBuSXdJOGtESjM2Q1pnUjljCit1M0ZESm0vS3FyZlVvejh2VytxRW5XaFNHN1FQWDJ3V0dQSGQ0Szk0WXovRmdyUnpaMERvSzdYeFhxOWdPdFZBCitBVkdRaG56MzJwKzZXaGZHc0NyOUFyWEV3UlpyVGsvRnZ6RVBhVTVmSGNvU2tyTlZBR1g4SXBTVmtTRHdFRFFyCitHdjE3K2Nmazk5VVYxT0N6YTZ5S0hvRmtUdHJDK1BaVTcxTG9tQmFiaXZTMk9jNEI5aFl1U1IyaEYwMXdUSFArCitZbFdOYWdaT09WdE56NG9LSzl4OWVOUXBtZlFYUXZQUFRmdXNleEtJYktmWnJNdkpveGNtMWdmY1owSC93SzZQCis2d21YU0czNXFNT096dENaTnRwZXJqczF3ekVCWHpueUs4UW1MY0FKQmprZmFyQUJKWDl2QkV6WlYwT1VLaHkrCitub09SRndIVGxscGhibXlkTGh1NmVoTFVaTUhQaHpBUzVVTjdzcnRwU044MWVlckRNeTBSTVVBd0E3L1BvZlgxCis5NE1lODVROGpQMFBDOUVUZHNKY1BxTHpBUEVURVl1MEVMZXdLUmNyZHlXaSt0bExGcnBFNUtUL3M1ZWNibDlsCis3QjYxVTRLZmQxUElYYy9zaUlOaFUzQTNiWUsrODQ1WXlVQXJVT25LZjFrRW94N3AxUnBEN3lGcVZUMDRsUlRvCitjaWJOS0FUQnVzWFN1QnJwMkc2R051aFdFT1NhZldDS0pRQXpnQ1lJcDZaVFYya2hoTVVHcHBjLzJIM0NGNmNPCit6WDBLdGxQVlpDN2hMa0I2SFQ4U3hZVXdGMXpxV1k3Ky9YUFBkYzM3TWVFWjg3UTNVdVp3cU9STFkrWjBocGd0CitMNUpYQkNva2xaaENBYU4yR3F3RkxYdEdpUlNSRkdZN3hYSWhiRFRsRTY1V3YxV0dHZ0RMTUtHRTFnT3ozeUFvCisyampHMSt5QUhKVWRFNjlYVEZIU3FTa3ZhbG9BMVcwM0xkTVhaOVZ1UUoveVNYQ2llNkFCQVE9PQorLS0tLS1FTkQgUlNBIFBSSVZBVEUgS0VZLS0tLS0KKy0tLS0tQkVHSU4gQ0VSVElGSUNBVEUtLS0tLQorTUlJQ1ZEQ0NBYjJnQXdJQkFnSUpBTmZIT0JrWnI4Sk9NQTBHQ1NxR1NJYjNEUUVCQlFVQU1GOHhDekFKQmdOVgorQkFZVEFsaFpNUmN3RlFZRFZRUUhFdzVEWVhOMGJHVWdRVzUwYUhKaGVERWpNQ0VHQTFVRUNoTWFVSGwwYUc5dQorSUZOdlpuUjNZWEpsSUVadmRXNWtZWFJwYjI0eEVqQVFCZ05WQkFNVENXeHZZMkZzYUc5emREQWVGdzB4TURFdworTURneU16QXhOVFphRncweU1ERXdNRFV5TXpBeE5UWmFNRjh4Q3pBSkJnTlZCQVlUQWxoWk1SY3dGUVlEVlFRSAorRXc1RFlYTjBiR1VnUVc1MGFISmhlREVqTUNFR0ExVUVDaE1hVUhsMGFHOXVJRk52Wm5SM1lYSmxJRVp2ZFc1aworWVhScGIyNHhFakFRQmdOVkJBTVRDV3h2WTJGc2FHOXpkRENCbnpBTkJna3Foa2lHOXcwQkFRRUZBQU9CalFBdworZ1lrQ2dZRUEyMXZUNWlzcTdGNjhhbVl1dU5wU0ZsS0RQck1VQ2E0WVdZcVpSdDJPWisvM05LYVoyeEFpU3dyNworNk1yUUY3MHQ1bkxiU1BwcUU1KzVWclM1OFNZK2cvc1hMaUZkNkFwbEgxd0pad2g3OERvZmJGWVhVZ2drdEZNdAorcFR5aVg4anRQNjZia2NQa0RBREEwODlSSTFUUVI2Q2ErbjdIRmE3YzFmYWJWVjZpM3prQ0F3RUFBYU1ZTUJZdworRkFZRFZSMFJCQTB3QzRJSmJHOWpZV3hvYjNOME1BMEdDU3FHU0liM0RRRUJCUVVBQTRHQkFIUGN0UUJFUTR3ZAorQko2K0pjcElyYW9wTG44QkdoYmpOV2o0MG1tUnFXQi9OQVdGNk01bmU3S3BHQXU3dExlRzRoYjF6TGFsZEs4RworbHh5MkdQU1JGNkxGUzQ4ZHBFajJIYk12Mm52djZ4eGFsRE1KOStEaWNXZ0FLVFE2YmNYMmozR1VrQ1IwZy9UMQorQ1JsTkJBQWx2aEt6TzdDbHBmOWwwWUtCRWZyYUpCeVgKKy0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2xpc3RfdGVzdHMucHkgYi9MaWIvdGVzdC9saXN0X3Rlc3RzLnB5CmluZGV4IGJlMDU0ZWEuLjQyZTExOGIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L2xpc3RfdGVzdHMucHkKKysrIGIvTGliL3Rlc3QvbGlzdF90ZXN0cy5weQpAQCAtNDE4LDYgKzQxOCw0NyBAQAogCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdS5yZXZlcnNlLCA0MikKIAorICAgIGRlZiB0ZXN0X2NsZWFyKHNlbGYpOgorICAgICAgICB1ID0gc2VsZi50eXBlMnRlc3QoWzIsIDMsIDRdKQorICAgICAgICB1LmNsZWFyKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1LCBbXSkKKworICAgICAgICB1ID0gc2VsZi50eXBlMnRlc3QoW10pCisgICAgICAgIHUuY2xlYXIoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHUsIFtdKQorCisgICAgICAgIHUgPSBzZWxmLnR5cGUydGVzdChbXSkKKyAgICAgICAgdS5hcHBlbmQoMSkKKyAgICAgICAgdS5jbGVhcigpCisgICAgICAgIHUuYXBwZW5kKDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodSwgWzJdKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdS5jbGVhciwgTm9uZSkKKworICAgIGRlZiB0ZXN0X2NvcHkoc2VsZik6CisgICAgICAgIHUgPSBzZWxmLnR5cGUydGVzdChbMSwgMiwgM10pCisgICAgICAgIHYgPSB1LmNvcHkoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIFsxLCAyLCAzXSkKKworICAgICAgICB1ID0gc2VsZi50eXBlMnRlc3QoW10pCisgICAgICAgIHYgPSB1LmNvcHkoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIFtdKQorCisgICAgICAgICMgdGVzdCB0aGF0IGl0J3MgaW5kZWVkIGEgY29weSBhbmQgbm90IGEgcmVmZXJlbmNlCisgICAgICAgIHUgPSBzZWxmLnR5cGUydGVzdChbJ2EnLCAnYiddKQorICAgICAgICB2ID0gdS5jb3B5KCkKKyAgICAgICAgdi5hcHBlbmQoJ2knKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHUsIFsnYScsICdiJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgdSArIFsnaSddKQorCisgICAgICAgICMgdGVzdCB0aGF0IGl0J3MgYSBzaGFsbG93LCBub3QgYSBkZWVwIGNvcHkKKyAgICAgICAgdSA9IHNlbGYudHlwZTJ0ZXN0KFsxLCAyLCBbMywgNF0sIDVdKQorICAgICAgICB2ID0gdS5jb3B5KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1LCB2KQorICAgICAgICBzZWxmLmFzc2VydElzKHZbM10sIHVbM10pCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCB1LmNvcHksIE5vbmUpCisKICAgICBkZWYgdGVzdF9zb3J0KHNlbGYpOgogICAgICAgICB1ID0gc2VsZi50eXBlMnRlc3QoWzEsIDBdKQogICAgICAgICB1LnNvcnQoKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvbG9ja190ZXN0cy5weSBiL0xpYi90ZXN0L2xvY2tfdGVzdHMucHkKaW5kZXggMDk0Y2M3YS4uZDg4ZjM2NCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvbG9ja190ZXN0cy5weQorKysgYi9MaWIvdGVzdC9sb2NrX3Rlc3RzLnB5CkBAIC00LDcgKzQsNyBAQAogCiBpbXBvcnQgc3lzCiBpbXBvcnQgdGltZQotZnJvbSBfdGhyZWFkIGltcG9ydCBzdGFydF9uZXdfdGhyZWFkLCBnZXRfaWRlbnQsIFRJTUVPVVRfTUFYCitmcm9tIF90aHJlYWQgaW1wb3J0IHN0YXJ0X25ld190aHJlYWQsIFRJTUVPVVRfTUFYCiBpbXBvcnQgdGhyZWFkaW5nCiBpbXBvcnQgdW5pdHRlc3QKIApAQCAtMzEsNyArMzEsNyBAQAogICAgICAgICBzZWxmLmZpbmlzaGVkID0gW10KICAgICAgICAgc2VsZi5fY2FuX2V4aXQgPSBub3Qgd2FpdF9iZWZvcmVfZXhpdAogICAgICAgICBkZWYgdGFzaygpOgotICAgICAgICAgICAgdGlkID0gZ2V0X2lkZW50KCkKKyAgICAgICAgICAgIHRpZCA9IHRocmVhZGluZy5nZXRfaWRlbnQoKQogICAgICAgICAgICAgc2VsZi5zdGFydGVkLmFwcGVuZCh0aWQpCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgZigpCkBAIC0yNDcsNiArMjQ3LDcgQEAKICAgICAgICAgIyBDYW5ub3QgcmVsZWFzZSBhbiB1bmFjcXVpcmVkIGxvY2sKICAgICAgICAgbG9jayA9IHNlbGYubG9ja3R5cGUoKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIGxvY2sucmVsZWFzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBsb2NrLl9yZWxlYXNlX3NhdmUpCiAgICAgICAgIGxvY2suYWNxdWlyZSgpCiAgICAgICAgIGxvY2suYWNxdWlyZSgpCiAgICAgICAgIGxvY2sucmVsZWFzZSgpCkBAIC0yNTQsNiArMjU1LDcgQEAKICAgICAgICAgbG9jay5yZWxlYXNlKCkKICAgICAgICAgbG9jay5yZWxlYXNlKCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBsb2NrLnJlbGVhc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvciwgbG9jay5fcmVsZWFzZV9zYXZlKQogCiAgICAgZGVmIHRlc3RfZGlmZmVyZW50X3RocmVhZChzZWxmKToKICAgICAgICAgIyBDYW5ub3QgcmVsZWFzZSBmcm9tIGEgZGlmZmVyZW50IHRocmVhZApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvbWFpbGNhcC50eHQgYi9MaWIvdGVzdC9tYWlsY2FwLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNjExMzVkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvbWFpbGNhcC50eHQKQEAgLTAsMCArMSwzOSBAQAorIyBNYWlsY2FwIGZpbGUgZm9yIHRlc3RfbWFpbGNhcDsgYmFzZWQgb24gUkZDIDE1MjQKKyMgUmVmZXJyZWQgdG8gYnkgdGVzdF9tYWlsY2FwLnB5CisKKyMKKyMgVGhpcyBpcyBhIGNvbW1lbnQuCisjCisKK2FwcGxpY2F0aW9uL2ZyYW1lOyBzaG93ZnJhbWUgJXM7IHByaW50PSJjYXQgJXMgfCBscCIKK2FwcGxpY2F0aW9uL3Bvc3RzY3JpcHQ7IHBzLXRvLXRlcm1pbmFsICVzO1wKKyAgICBuZWVkc3Rlcm1pbmFsCithcHBsaWNhdGlvbi9wb3N0c2NyaXB0OyBwcy10by10ZXJtaW5hbCAlczsgXAorICAgIGNvbXBvc2U9aWRyYXcgJXMKK2FwcGxpY2F0aW9uL3gtZHZpOyB4ZHZpICVzCithcHBsaWNhdGlvbi94LW1vdmllOyBtb3ZpZXBsYXllciAlczsgY29tcG9zZT1tb3ZpZW1ha2VyICVzOyBcCisgICAgICAgZGVzY3JpcHRpb249Ik1vdmllIjsgXAorICAgICAgIHgxMS1iaXRtYXA9Ii91c3IvbGliL1ptYWlsL2JpdG1hcHMvbW92aWUueGJtIgorYXBwbGljYXRpb24vKjsgZWNobyAiVGhpcyBpcyBcIiV0XCIgYnV0IFwKKyAgICAgICBpcyA1MCBcJSBHcmVlayB0byBtZSIgXDsgY2F0ICVzOyBjb3Bpb3Vzb3V0cHV0CisKK2F1ZGlvL2Jhc2ljOyBzaG93YXVkaW8gJXM7IGNvbXBvc2U9YXVkaW9jb21wb3NlICVzOyBlZGl0PWF1ZGlvY29tcG9zZSAlcztcCitkZXNjcmlwdGlvbj0iQW4gYXVkaW8gZnJhZ21lbnQiCithdWRpby8qIDsgL3Vzci9sb2NhbC9iaW4vc2hvd2F1ZGlvICV0CisKK2ltYWdlL3JnYjsgZGlzcGxheSAlcworI2ltYWdlL2dpZjsgZGlzcGxheSAlcworaW1hZ2UveC14d2luZG93ZHVtcDsgZGlzcGxheSAlcworCisjIFRoZSBjb250aW51YXRpb24gY2hhciBzaG91bGRuJ3QgXAorIyBtYWtlIGEgZGlmZmVyZW5jZSBpbiBhIGNvbW1lbnQuCisKK21lc3NhZ2UvZXh0ZXJuYWwtYm9keTsgc2hvd2V4dGVybmFsICVzICV7YWNjZXNzLXR5cGV9ICV7bmFtZX0gJXtzaXRlfSBcCisgICAgJXtkaXJlY3Rvcnl9ICV7bW9kZX0gJXtzZXJ2ZXJ9OyBuZWVkc3Rlcm1pbmFsOyBjb21wb3NldHlwZWQgPSBleHRjb21wb3NlICVzOyBcCisgICAgZGVzY3JpcHRpb249IkEgcmVmZXJlbmNlIHRvIGRhdGEgc3RvcmVkIGluIGFuIGV4dGVybmFsIGxvY2F0aW9uIgorCit0ZXh0L3JpY2h0ZXh0OyBzaG93bm9uYXNjaWkgaXNvLTg4NTktOCAtZSByaWNodGV4dCAtcCAlczsgdGVzdD10ZXN0ICJgZWNobyBcCisgICAgJXtjaGFyc2V0fSB8IHRyICdbQS1aXScgJ1thLXpdJ2AiICA9IGlzby04ODU5LTg7IGNvcGlvdXNvdXRwdXQKKwordmlkZW8vbXBlZzsgbXBlZ19wbGF5ICVzCit2aWRlby8qOyBhbmltYXRlICVzCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9tYXRoX3Rlc3RjYXNlcy50eHQgYi9MaWIvdGVzdC9tYXRoX3Rlc3RjYXNlcy50eHQKaW5kZXggNWUyNDMzNS4uOTU4NTE4OCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvbWF0aF90ZXN0Y2FzZXMudHh0CisrKyBiL0xpYi90ZXN0L21hdGhfdGVzdGNhc2VzLnR4dApAQCAtNTE3LDMgKzUxNywxMTcgQEAKIAogLS0gd2Vha2VyIHZlcnNpb24gb2YgZXhwbTEwMzAyCiBleHBtMTAzMDcgZXhwbTEgNzA5LjUgLT4gMS4zNTQ5ODYzMTkzMTQ2MzI4ZSszMDgKKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLS0gbG9nMjogbG9nIHRvIGJhc2UgMiAtLQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCistLSBzcGVjaWFsIHZhbHVlcworbG9nMjAwMDAgbG9nMiAwLjAgLT4gLWluZiAgICAgICAgICAgICAgIGRpdmlkZS1ieS16ZXJvCitsb2cyMDAwMSBsb2cyIC0wLjAgLT4gLWluZiAgICAgICAgICAgICAgZGl2aWRlLWJ5LXplcm8KK2xvZzIwMDAyIGxvZzIgaW5mIC0+IGluZgorbG9nMjAwMDMgbG9nMiAtaW5mIC0+IG5hbiAgICAgICAgICAgICAgIGludmFsaWQKK2xvZzIwMDA0IGxvZzIgbmFuIC0+IG5hbgorCistLSBleGFjdCB2YWx1ZSBhdCAxLjAKK2xvZzIwMDEwIGxvZzIgMS4wIC0+IDAuMAorCistLSBuZWdhdGl2ZXMKK2xvZzIwMDIwIGxvZzIgLTVlLTMyNCAtPiBuYW4gICAgICAgICAgICBpbnZhbGlkCitsb2cyMDAyMSBsb2cyIC0xLjAgLT4gbmFuICAgICAgICAgICAgICAgaW52YWxpZAorbG9nMjAwMjIgbG9nMiAtMS43ZS0zMDggLT4gbmFuICAgICAgICAgIGludmFsaWQKKworLS0gZXhhY3QgdmFsdWVzIGF0IHBvd2VycyBvZiAyCitsb2cyMDEwMCBsb2cyIDIuMCAtPiAxLjAKK2xvZzIwMTAxIGxvZzIgNC4wIC0+IDIuMAorbG9nMjAxMDIgbG9nMiA4LjAgLT4gMy4wCitsb2cyMDEwMyBsb2cyIDE2LjAgLT4gNC4wCitsb2cyMDEwNCBsb2cyIDMyLjAgLT4gNS4wCitsb2cyMDEwNSBsb2cyIDY0LjAgLT4gNi4wCitsb2cyMDEwNiBsb2cyIDEyOC4wIC0+IDcuMAorbG9nMjAxMDcgbG9nMiAyNTYuMCAtPiA4LjAKK2xvZzIwMTA4IGxvZzIgNTEyLjAgLT4gOS4wCitsb2cyMDEwOSBsb2cyIDEwMjQuMCAtPiAxMC4wCitsb2cyMDExMCBsb2cyIDIwNDguMCAtPiAxMS4wCisKK2xvZzIwMjAwIGxvZzIgMC41IC0+IC0xLjAKK2xvZzIwMjAxIGxvZzIgMC4yNSAtPiAtMi4wCitsb2cyMDIwMiBsb2cyIDAuMTI1IC0+IC0zLjAKK2xvZzIwMjAzIGxvZzIgMC4wNjI1IC0+IC00LjAKKworLS0gdmFsdWVzIGNsb3NlIHRvIDEuMAorbG9nMjAzMDAgbG9nMiAxLjAwMDAwMDAwMDAwMDAwMDIgLT4gMy4yMDM0MjY1MDM4MTQ5MTcxZS0xNgorbG9nMjAzMDEgbG9nMiAxLjAwMDAwMDAwMDEgLT4gMS40NDI2OTUxNjAxODU5NTE2ZS0xMAorbG9nMjAzMDIgbG9nMiAxLjAwMDAxIC0+IDEuNDQyNjg3ODI3NDcxMjk5N2UtNQorCitsb2cyMDMxMCBsb2cyIDAuOTk5OTk5OTk5OTk5OTk5OSAtPiAtMS42MDE3MTMyNTE5MDc0NTg4ZS0xNgorbG9nMjAzMTEgbG9nMiAwLjk5OTk5OTk5OTkgLT4gLTEuNDQyNjk1MTYwMzMwMjIxMGUtMTAKK2xvZzIwMzEyIGxvZzIgMC45OTk5OSAtPiAtMS40NDI3MDIyNTQ0MDU2OTIyZS01CisKKy0tIHRpbnkgdmFsdWVzCitsb2cyMDQwMCBsb2cyIDVlLTMyNCAtPiAtMTA3NC4wCitsb2cyMDQwMSBsb2cyIDFlLTMyMyAtPiAtMTA3My4wCitsb2cyMDQwMiBsb2cyIDEuNWUtMzIzIC0+IC0xMDcyLjQxNTAzNzQ5OTI3ODkKK2xvZzIwNDAzIGxvZzIgMmUtMzIzIC0+IC0xMDcyLjAKKworbG9nMjA0MTAgbG9nMiAxZS0zMDggLT4gLTEwMjMuMTUzODUzMjI1MzA3NgorbG9nMjA0MTEgbG9nMiAyLjIyNTA3Mzg1ODUwNzIwMTRlLTMwOCAtPiAtMTAyMi4wCitsb2cyMDQxMiBsb2cyIDQuNDUwMTQ3NzE3MDE0NDAyOGUtMzA4IC0+IC0xMDIxLjAKK2xvZzIwNDEzIGxvZzIgMWUtMzA3IC0+IC0xMDE5LjgzMTkyNTEzMDQyMDIKKworLS0gaHVnZSB2YWx1ZXMKK2xvZzIwNTAwIGxvZzIgMS43OTc2OTMxMzQ4NjIzMTU3ZSszMDggLT4gMTAyNC4wCitsb2cyMDUwMSBsb2cyIDEuN2UrMzA4IC0+IDEwMjMuOTE5Mzg3OTcxNjcwNgorbG9nMjA1MDIgbG9nMiA4Ljk4ODQ2NTY3NDMxMTU3OTVlKzMwNyAtPiAxMDIzLjAKKworLS0gc2VsZWN0aW9uIG9mIHJhbmRvbSB2YWx1ZXMKK2xvZzIwNjAwIGxvZzIgLTcuMjE3NDMyNDg0MTAzOTgzOGUrMjg5IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjAxIGxvZzIgLTIuODYxMzE5NzM0MDg5NjE3ZSsyNjUgLT4gbmFuICAgIGludmFsaWQKK2xvZzIwNjAyIGxvZzIgLTQuMzUwNzY0Njg5NDAwODk2MmUrMjU3IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjAzIGxvZzIgLTYuNjcxNzI2NTMwNzUyMDIyNGUrMjM0IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjA0IGxvZzIgLTMuOTExODAyMzc4NjYxOTI5NGUrMjI5IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjA1IGxvZzIgLTEuNTQ3ODIyMTMwMjUwNTE2MWUrMjA2IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjA2IGxvZzIgLTEuNDM4MDQ4NTEzMTM2NDYwMmUrMjAwIC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjA3IGxvZzIgLTMuNzIzNTE5ODczMDM4MjY0NWUrMTg1IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjA4IGxvZzIgLTEuMDQ3MjI0MjIzNTA5NTcyNGUrMTg0IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjA5IGxvZzIgLTUuMDE0MTc4MTk1NjE2Mzg4NGUrMTYwIC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjEwIGxvZzIgLTIuMTE1Nzk1ODAzMTE2MDMyNGUrMTI0IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjExIGxvZzIgLTcuOTY3NzU1ODYxMjU2NzcxOGUrOTAgLT4gbmFuICAgIGludmFsaWQKK2xvZzIwNjEyIGxvZzIgLTUuNTU1MzkwNjE5NDA2MzczMmUrNDUgLT4gbmFuICAgIGludmFsaWQKK2xvZzIwNjEzIGxvZzIgLTE2NTczOTAwOTUyNjA3Ljk1MyAtPiBuYW4gICAgICAgIGludmFsaWQKK2xvZzIwNjE0IGxvZzIgLTM3MTk4MzcxMDE5Ljg4ODYxOCAtPiBuYW4gICAgICAgIGludmFsaWQKK2xvZzIwNjE1IGxvZzIgLTYuMDcyNzExNTEyMTQyMjY3NGUtMzIgLT4gbmFuICAgIGludmFsaWQKK2xvZzIwNjE2IGxvZzIgLTIuNTQwNjg0MTY1NjUyNjA1N2UtMzggLT4gbmFuICAgIGludmFsaWQKK2xvZzIwNjE3IGxvZzIgLTQuOTA1Njc2NjcwMzI2NzY1N2UtNDMgLT4gbmFuICAgIGludmFsaWQKK2xvZzIwNjE4IGxvZzIgLTIuMTY0Njc4NjA3NTIyODMwNWUtNzEgLT4gbmFuICAgIGludmFsaWQKK2xvZzIwNjE5IGxvZzIgLTIuNDcwODI2NzkwNDg4NTczZS03OCAtPiBuYW4gICAgIGludmFsaWQKK2xvZzIwNjIwIGxvZzIgLTMuODY2MTcwOTMwMzQ4OTA2NGUtMTY1IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjIxIGxvZzIgLTEuMDUxNjQ5Njk3NjY0OTk4NmUtMTgyIC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjIyIGxvZzIgLTEuNTkzNTQ1ODYxNDMxNzk5NmUtMjU1IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjIzIGxvZzIgLTIuODc1MDk3NzI2NzMzNjY1NGUtMjkzIC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjI0IGxvZzIgLTcuNjA3OTQ2Njc5NDczMjU4NWUtMjk2IC0+IG5hbiAgIGludmFsaWQKK2xvZzIwNjI1IGxvZzIgMy4yMDczMjUzNTM5OTg4NTQ1ZS0zMDcgLT4gLTEwMTguMTUwNTU0NDIwOTIxMworbG9nMjA2MjYgbG9nMiAxLjY3NDkzNzg4NTQ3MjI0OWUtMjQ0IC0+IC04MDkuODA2MzQ3NTU3ODMxMjYKK2xvZzIwNjI3IGxvZzIgMS4wOTExMjU5MDQ0OTMxMjgzZS0yMTQgLT4gLTcxMC43NjY3OTQ3MjI3NDIxMworbG9nMjA2MjggbG9nMiAyLjAyNzUzNzI2MjQ4MDk3MDllLTE1NCAtPiAtNTEwLjU1NzE5ODE4MzgzMjcyCitsb2cyMDYyOSBsb2cyIDcuMzkyNjA4NzM2OTYzMTg0MWUtMTE1IC0+IC0zNzkuMTM1NjQ3MzUzMTIyOTIKK2xvZzIwNjMwIGxvZzIgMS4zNDgwMTk4MjA2MzQyNDIzZS04NiAtPiAtMjg1LjI1NDk3NDQ1MDk0NDM2Citsb2cyMDYzMSBsb2cyIDguOTkyNzM4NDY1NTcxOTk0N2UtODMgLT4gLTI3Mi41NTEyNzEzNjQwMTYzNworbG9nMjA2MzIgbG9nMiAzLjE0NTIzOTg3MTM1OTc0ODdlLTYwIC0+IC0xOTcuNjYyNTE1NjQ0OTY4NzUKK2xvZzIwNjMzIGxvZzIgNy4wNzA2NTczMjE1NDU3MzUxZS01NSAtPiAtMTc5Ljg4NDIwMDg3NzgyMjE3Citsb2cyMDYzNCBsb2cyIDMuMTI1ODI4NTM5MDczMTY2OWUtNDkgLT4gLTE2MS4xMzAyMzgwMDUwNTY1MworbG9nMjA2MzUgbG9nMiA4LjIyNTMwNDY2Mjc4Mjk5NDJlLTQxIC0+IC0xMzMuMTU4OTgyNzczNTU4NzkKK2xvZzIwNjM2IGxvZzIgNy44NjkxMzY3Mzk3NTE5ODk3ZSs0OSAtPiAxNjUuNzUwNjgyMDI3MzI0MTkKK2xvZzIwNjM3IGxvZzIgMi45OTIwNTYxOTgzOTI1MDEzZSs2NCAtPiAyMTQuMTg0NTM1MzQ1NzM3NTcKK2xvZzIwNjM4IGxvZzIgNC43ODI3MjU0NTUzOTQ2ODQxZSs3NyAtPiAyNTguMDQ2Mjk2Mjg0NDU2NzMKK2xvZzIwNjM5IGxvZzIgMy4xOTAzNTY2NDk2NDgxODY4ZSsxMDUgLT4gMzUwLjQ3NjE2NzY3NDkxMTY2Citsb2cyMDY0MCBsb2cyIDUuNjE5NTA4MjQ0OTUwMjQxOWUrMTEzIC0+IDM3Ny44NjgzMTg2MTAwODI1MAorbG9nMjA2NDEgbG9nMiA5Ljk2MjU2NTgyNTA2NTEwNDdlKzEyNSAtPiA0MTguNTU3NTI5MjEyMjg3NTMKK2xvZzIwNjQyIGxvZzIgMi43MzU4OTQ1MjIwOTYxNTMyZSsxNDUgLT4gNDgzLjEzMTU4NjM2OTIzNDEzCitsb2cyMDY0MyBsb2cyIDIuNzg1ODQyMzg3OTI2OTMxZSsxNzQgLT4gNTc5LjQ5MzYwMjE0ODYwMjgwCitsb2cyMDY0NCBsb2cyIDIuNDE2OTE3MjUwNzI1Mjc1MWUrMTkzIC0+IDY0Mi40MDUyOTAzOTI4OTY1MgorbG9nMjA2NDUgbG9nMiAzLjE2ODkwOTEyMDYzOTU2MzJlKzIwNSAtPiA2ODIuNjU5MjQ1NzM3OTgzOTUKK2xvZzIwNjQ2IGxvZzIgMi41MzU5OTU1OTIzNjUzOTFlKzIwOCAtPiA2OTIuMzAzNTk1OTc0NjA0NjAKK2xvZzIwNjQ3IGxvZzIgNi4yMDExMjM2NTY2MDg5OTE2ZSsyMzMgLT4gNzc2LjY0MTc3NTc2NzMwOTEzCitsb2cyMDY0OCBsb2cyIDIuMTg0MzI3NDgyMDY3NzYzMmUrMjUzIC0+IDg0MS41NzQ5OTcxNzI4OTY0NworbG9nMjA2NDkgbG9nMiA4Ljc0OTM5MzEwNjM0NzQ3OTFlKzI5NyAtPiA5ODkuNzQxODI3MTMwNzM5ODEKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L21vY2tfc29ja2V0LnB5IGIvTGliL3Rlc3QvbW9ja19zb2NrZXQucHkKaW5kZXggODAzNjkzMi4uZDA5ZTc4YyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvbW9ja19zb2NrZXQucHkKKysrIGIvTGliL3Rlc3QvbW9ja19zb2NrZXQucHkKQEAgLTEwNiw3ICsxMDYsOCBAQAogICAgIHJldHVybiBNb2NrU29ja2V0KCkKIAogCi1kZWYgY3JlYXRlX2Nvbm5lY3Rpb24oYWRkcmVzcywgdGltZW91dD1zb2NrZXRfbW9kdWxlLl9HTE9CQUxfREVGQVVMVF9USU1FT1VUKToKK2RlZiBjcmVhdGVfY29ubmVjdGlvbihhZGRyZXNzLCB0aW1lb3V0PXNvY2tldF9tb2R1bGUuX0dMT0JBTF9ERUZBVUxUX1RJTUVPVVQsCisgICAgICAgICAgICAgICAgICAgICAgc291cmNlX2FkZHJlc3M9Tm9uZSk6CiAgICAgdHJ5OgogICAgICAgICBpbnRfcG9ydCA9IGludChhZGRyZXNzWzFdKQogICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvcGlja2xldGVzdGVyLnB5IGIvTGliL3Rlc3QvcGlja2xldGVzdGVyLnB5CmluZGV4IGNhYjA1MjMuLjFhNTUxYzggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3BpY2tsZXRlc3Rlci5weQorKysgYi9MaWIvdGVzdC9waWNrbGV0ZXN0ZXIucHkKQEAgLTQsMTAgKzQsMTEgQEAKIGltcG9ydCBwaWNrbGV0b29scwogaW1wb3J0IHN5cwogaW1wb3J0IGNvcHlyZWcKK2ltcG9ydCB3ZWFrcmVmCiBmcm9tIGh0dHAuY29va2llcyBpbXBvcnQgU2ltcGxlQ29va2llCiAKIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCAoCi0gICAgVGVzdEZhaWxlZCwgVEVTVEZOLCBydW5fd2l0aF9sb2NhbGUsCisgICAgVGVzdEZhaWxlZCwgVEVTVEZOLCBydW5fd2l0aF9sb2NhbGUsIG5vX3RyYWNpbmcsCiAgICAgXzJHLCBfNEcsIGJpZ21lbXRlc3QsCiAgICAgKQogCkBAIC0xOCw3ICsxOSw3IEBACiAjIGtpbmQgb2Ygb3V0ZXIgbG9vcC4KIHByb3RvY29scyA9IHJhbmdlKHBpY2tsZS5ISUdIRVNUX1BST1RPQ09MICsgMSkKIAotY2hhcmFjdGVyX3NpemUgPSA0IGlmIHN5cy5tYXh1bmljb2RlID4gMHhGRkZGIGVsc2UgMgorYXNjaWlfY2hhcl9zaXplID0gMQogCiAKICMgUmV0dXJuIFRydWUgaWYgb3Bjb2RlIGNvZGUgYXBwZWFycyBpbiB0aGUgcGlja2xlLCBlbHNlIEZhbHNlLgpAQCAtODc1LDYgKzg3NiwyNSBAQAogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoQih4KSwgQih5KSwgZGV0YWlsKQogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeC5fX2RpY3RfXywgeS5fX2RpY3RfXywgZGV0YWlsKQogCisgICAgZGVmIHRlc3RfbmV3b2JqX3Byb3hpZXMoc2VsZik6CisgICAgICAgICMgTkVXT0JKIHNob3VsZCB1c2UgdGhlIF9fY2xhc3NfXyByYXRoZXIgdGhhbiB0aGUgcmF3IHR5cGUKKyAgICAgICAgY2xhc3NlcyA9IG15Y2xhc3Nlc1s6XQorICAgICAgICAjIENhbm5vdCBjcmVhdGUgd2Vha3Byb3hpZXMgdG8gdGhlc2UgY2xhc3NlcworICAgICAgICBmb3IgYyBpbiAoTXlJbnQsIE15VHVwbGUpOgorICAgICAgICAgICAgY2xhc3Nlcy5yZW1vdmUoYykKKyAgICAgICAgZm9yIHByb3RvIGluIHByb3RvY29sczoKKyAgICAgICAgICAgIGZvciBDIGluIGNsYXNzZXM6CisgICAgICAgICAgICAgICAgQiA9IEMuX19iYXNlX18KKyAgICAgICAgICAgICAgICB4ID0gQyhDLnNhbXBsZSkKKyAgICAgICAgICAgICAgICB4LmZvbyA9IDQyCisgICAgICAgICAgICAgICAgcCA9IHdlYWtyZWYucHJveHkoeCkKKyAgICAgICAgICAgICAgICBzID0gc2VsZi5kdW1wcyhwLCBwcm90bykKKyAgICAgICAgICAgICAgICB5ID0gc2VsZi5sb2FkcyhzKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHlwZSh5KSwgdHlwZSh4KSkgICMgcmF0aGVyIHRoYW4gdHlwZShwKQorICAgICAgICAgICAgICAgIGRldGFpbCA9IChwcm90bywgQywgQiwgeCwgeSwgdHlwZSh5KSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEIoeCksIEIoeSksIGRldGFpbCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHguX19kaWN0X18sIHkuX19kaWN0X18sIGRldGFpbCkKKwogICAgICMgUmVnaXN0ZXIgYSB0eXBlIHdpdGggY29weXJlZywgd2l0aCBleHRlbnNpb24gY29kZSBleHRjb2RlLiAgUGlja2xlCiAgICAgIyBhbiBvYmplY3Qgb2YgdGhhdCB0eXBlLiAgQ2hlY2sgdGhhdCB0aGUgcmVzdWx0aW5nIHBpY2tsZSB1c2VzIG9wY29kZQogICAgICMgKEVYVFsxMjRdKSB1bmRlciBwcm90byAyLCBhbmQgbm90IGluIHByb3RvIDEuCkBAIC0xMDM1LDEzICsxMDU1LDEzIEBACiAgICAgICAgICAgICB5ID0gc2VsZi5sb2FkcyhzKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh5Ll9yZWR1Y2VfY2FsbGVkLCAxKQogCisgICAgQG5vX3RyYWNpbmcKICAgICBkZWYgdGVzdF9iYWRfZ2V0YXR0cihzZWxmKToKICAgICAgICAgeCA9IEJhZEdldGF0dHIoKQogICAgICAgICBmb3IgcHJvdG8gaW4gMCwgMToKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvciwgc2VsZi5kdW1wcywgeCwgcHJvdG8pCiAgICAgICAgICMgcHJvdG9jb2wgMiBkb24ndCByYWlzZSBhIFJ1bnRpbWVFcnJvci4KICAgICAgICAgZCA9IHNlbGYuZHVtcHMoeCwgMikKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBzZWxmLmxvYWRzLCBkKQogCiAgICAgZGVmIHRlc3RfcmVkdWNlX2JhZF9pdGVyYXRvcihzZWxmKToKICAgICAgICAgIyBJc3N1ZTQxNzY6IGNyYXNoIHdoZW4gNHRoIGFuZCA1dGggaXRlbXMgb2YgX19yZWR1Y2VfXygpCkBAIC0xMTMxLDYgKzExNTEsMTUgQEAKICAgICAgICAgZW1wdHkgPSBzZWxmLmxvYWRzKGInXHg4MFx4MDNVXHgwMHFceDAwLicsIGVuY29kaW5nPSdrb2k4LXInKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVtcHR5LCAnJykKIAorICAgIGRlZiB0ZXN0X2ludF9waWNrbGluZ19lZmZpY2llbmN5KHNlbGYpOgorICAgICAgICAjIFRlc3QgY29tcGFjaXR5IG9mIGludCByZXByZXNlbnRhdGlvbiAoc2VlIGlzc3VlICMxMjc0NCkKKyAgICAgICAgZm9yIHByb3RvIGluIHByb3RvY29sczoKKyAgICAgICAgICAgIHNpemVzID0gW2xlbihzZWxmLmR1bXBzKDIqKm4sIHByb3RvKSkgZm9yIG4gaW4gcmFuZ2UoNzApXQorICAgICAgICAgICAgIyB0aGUgc2l6ZSBmdW5jdGlvbiBpcyBtb25vdG9uaWMKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ydGVkKHNpemVzKSwgc2l6ZXMpCisgICAgICAgICAgICBpZiBwcm90byA+PSAyOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKHNpemVzWy0xXSwgMTQpCisKICAgICBkZWYgY2hlY2tfbmVnYXRpdmVfMzJiX2JpblhYWChzZWxmLCBkdW1wZWQpOgogICAgICAgICBpZiBzeXMubWF4c2l6ZSA+IDIqKjMyOgogICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgidGVzdCBpcyBvbmx5IG1lYW5pbmdmdWwgb24gMzItYml0IGJ1aWxkcyIpCkBAIC0xMjEyLDcgKzEyNDEsNyBAQAogICAgICMgQWxsIHByb3RvY29scyB1c2UgMS1ieXRlIHBlciBwcmludGFibGUgQVNDSUkgY2hhcmFjdGVyOyB3ZSBhZGQgYW5vdGhlcgogICAgICMgYnl0ZSBiZWNhdXNlIHRoZSBlbmNvZGVkIGZvcm0gaGFzIHRvIGJlIGNvcGllZCBpbnRvIHRoZSBpbnRlcm5hbCBidWZmZXIuCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRywgbWVtdXNlPTIgKyBjaGFyYWN0ZXJfc2l6ZSwgZHJ5X3J1bj1GYWxzZSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRywgbWVtdXNlPTIgKyBhc2NpaV9jaGFyX3NpemUsIGRyeV9ydW49RmFsc2UpCiAgICAgZGVmIHRlc3RfaHVnZV9zdHJfMzJiKHNlbGYsIHNpemUpOgogICAgICAgICBkYXRhID0gImFiY2QiICogKHNpemUgLy8gNCkKICAgICAgICAgdHJ5OgpAQCAtMTIyOSw3ICsxMjU4LDcgQEAKICAgICAjIEJJTlVOSUNPREUgKHByb3RvY29scyAxLCAyIGFuZCAzKSBjYW5ub3QgY2FycnkgbW9yZSB0aGFuCiAgICAgIyAyKiozMiAtIDEgYnl0ZXMgb2YgdXRmLTggZW5jb2RlZCB1bmljb2RlLgogCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fNEcsIG1lbXVzZT0xICsgY2hhcmFjdGVyX3NpemUsIGRyeV9ydW49RmFsc2UpCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fNEcsIG1lbXVzZT0xICsgYXNjaWlfY2hhcl9zaXplLCBkcnlfcnVuPUZhbHNlKQogICAgIGRlZiB0ZXN0X2h1Z2Vfc3RyXzY0YihzZWxmLCBzaXplKToKICAgICAgICAgZGF0YSA9ICJhIiAqIHNpemUKICAgICAgICAgdHJ5OgpAQCAtMTU3Niw2ICsxNjA1LDEwNSBAQAogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5waWNrbGVyLmxvYWQoKSwgZGF0YSkKIAogCisjIFRlc3RzIGZvciBkaXNwYXRjaF90YWJsZSBhdHRyaWJ1dGUKKworUkVEVUNFX0EgPSAncmVkdWNlX0EnCisKK2NsYXNzIEFBQShvYmplY3QpOgorICAgIGRlZiBfX3JlZHVjZV9fKHNlbGYpOgorICAgICAgICByZXR1cm4gc3RyLCAoUkVEVUNFX0EsKQorCitjbGFzcyBCQkIob2JqZWN0KToKKyAgICBwYXNzCisKK2NsYXNzIEFic3RyYWN0RGlzcGF0Y2hUYWJsZVRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2RlZmF1bHRfZGlzcGF0Y2hfdGFibGUoc2VsZik6CisgICAgICAgICMgTm8gZGlzcGF0Y2hfdGFibGUgYXR0cmlidXRlIGJ5IGRlZmF1bHQKKyAgICAgICAgZiA9IGlvLkJ5dGVzSU8oKQorICAgICAgICBwID0gc2VsZi5waWNrbGVyX2NsYXNzKGYsIDApCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXR0cmlidXRlRXJyb3IpOgorICAgICAgICAgICAgcC5kaXNwYXRjaF90YWJsZQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIocCwgJ2Rpc3BhdGNoX3RhYmxlJykpCisKKyAgICBkZWYgdGVzdF9jbGFzc19kaXNwYXRjaF90YWJsZShzZWxmKToKKyAgICAgICAgIyBBIGRpc3BhdGNoX3RhYmxlIGF0dHJpYnV0ZSBjYW4gYmUgc3BlY2lmaWVkIGNsYXNzLXdpZGUKKyAgICAgICAgZHQgPSBzZWxmLmdldF9kaXNwYXRjaF90YWJsZSgpCisKKyAgICAgICAgY2xhc3MgTXlQaWNrbGVyKHNlbGYucGlja2xlcl9jbGFzcyk6CisgICAgICAgICAgICBkaXNwYXRjaF90YWJsZSA9IGR0CisKKyAgICAgICAgZGVmIGR1bXBzKG9iaiwgcHJvdG9jb2w9Tm9uZSk6CisgICAgICAgICAgICBmID0gaW8uQnl0ZXNJTygpCisgICAgICAgICAgICBwID0gTXlQaWNrbGVyKGYsIHByb3RvY29sKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwLmRpc3BhdGNoX3RhYmxlLCBkdCkKKyAgICAgICAgICAgIHAuZHVtcChvYmopCisgICAgICAgICAgICByZXR1cm4gZi5nZXR2YWx1ZSgpCisKKyAgICAgICAgc2VsZi5fdGVzdF9kaXNwYXRjaF90YWJsZShkdW1wcywgZHQpCisKKyAgICBkZWYgdGVzdF9pbnN0YW5jZV9kaXNwYXRjaF90YWJsZShzZWxmKToKKyAgICAgICAgIyBBIGRpc3BhdGNoX3RhYmxlIGF0dHJpYnV0ZSBjYW4gYWxzbyBiZSBzcGVjaWZpZWQgaW5zdGFuY2Utd2lkZQorICAgICAgICBkdCA9IHNlbGYuZ2V0X2Rpc3BhdGNoX3RhYmxlKCkKKworICAgICAgICBkZWYgZHVtcHMob2JqLCBwcm90b2NvbD1Ob25lKToKKyAgICAgICAgICAgIGYgPSBpby5CeXRlc0lPKCkKKyAgICAgICAgICAgIHAgPSBzZWxmLnBpY2tsZXJfY2xhc3MoZiwgcHJvdG9jb2wpCisgICAgICAgICAgICBwLmRpc3BhdGNoX3RhYmxlID0gZHQKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocC5kaXNwYXRjaF90YWJsZSwgZHQpCisgICAgICAgICAgICBwLmR1bXAob2JqKQorICAgICAgICAgICAgcmV0dXJuIGYuZ2V0dmFsdWUoKQorCisgICAgICAgIHNlbGYuX3Rlc3RfZGlzcGF0Y2hfdGFibGUoZHVtcHMsIGR0KQorCisgICAgZGVmIF90ZXN0X2Rpc3BhdGNoX3RhYmxlKHNlbGYsIGR1bXBzLCBkaXNwYXRjaF90YWJsZSk6CisgICAgICAgIGRlZiBjdXN0b21fbG9hZF9kdW1wKG9iaik6CisgICAgICAgICAgICByZXR1cm4gcGlja2xlLmxvYWRzKGR1bXBzKG9iaiwgMCkpCisKKyAgICAgICAgZGVmIGRlZmF1bHRfbG9hZF9kdW1wKG9iaik6CisgICAgICAgICAgICByZXR1cm4gcGlja2xlLmxvYWRzKHBpY2tsZS5kdW1wcyhvYmosIDApKQorCisgICAgICAgICMgcGlja2xpbmcgY29tcGxleCBudW1iZXJzIHVzaW5nIHByb3RvY29sIDAgcmVsaWVzIG9uIGNvcHlyZWcKKyAgICAgICAgIyBzbyBjaGVjayBwaWNrbGluZyBhIGNvbXBsZXggbnVtYmVyIHN0aWxsIHdvcmtzCisgICAgICAgIHogPSAxICsgMmoKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjdXN0b21fbG9hZF9kdW1wKHopLCB6KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRlZmF1bHRfbG9hZF9kdW1wKHopLCB6KQorCisgICAgICAgICMgbW9kaWZ5IHBpY2tsaW5nIG9mIGNvbXBsZXgKKyAgICAgICAgUkVEVUNFXzEgPSAncmVkdWNlXzEnCisgICAgICAgIGRlZiByZWR1Y2VfMShvYmopOgorICAgICAgICAgICAgcmV0dXJuIHN0ciwgKFJFRFVDRV8xLCkKKyAgICAgICAgZGlzcGF0Y2hfdGFibGVbY29tcGxleF0gPSByZWR1Y2VfMQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGN1c3RvbV9sb2FkX2R1bXAoeiksIFJFRFVDRV8xKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRlZmF1bHRfbG9hZF9kdW1wKHopLCB6KQorCisgICAgICAgICMgY2hlY2sgcGlja2xhYmlsaXR5IG9mIEFBQSBhbmQgQkJCCisgICAgICAgIGEgPSBBQUEoKQorICAgICAgICBiID0gQkJCKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjdXN0b21fbG9hZF9kdW1wKGEpLCBSRURVQ0VfQSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGN1c3RvbV9sb2FkX2R1bXAoYiksIEJCQikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZWZhdWx0X2xvYWRfZHVtcChhKSwgUkVEVUNFX0EpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkZWZhdWx0X2xvYWRfZHVtcChiKSwgQkJCKQorCisgICAgICAgICMgbW9kaWZ5IHBpY2tsaW5nIG9mIEJCQgorICAgICAgICBkaXNwYXRjaF90YWJsZVtCQkJdID0gcmVkdWNlXzEKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjdXN0b21fbG9hZF9kdW1wKGEpLCBSRURVQ0VfQSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjdXN0b21fbG9hZF9kdW1wKGIpLCBSRURVQ0VfMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZWZhdWx0X2xvYWRfZHVtcChhKSwgUkVEVUNFX0EpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkZWZhdWx0X2xvYWRfZHVtcChiKSwgQkJCKQorCisgICAgICAgICMgcmV2ZXJ0IHBpY2tsaW5nIG9mIEJCQiBhbmQgbW9kaWZ5IHBpY2tsaW5nIG9mIEFBQQorICAgICAgICBSRURVQ0VfMiA9ICdyZWR1Y2VfMicKKyAgICAgICAgZGVmIHJlZHVjZV8yKG9iaik6CisgICAgICAgICAgICByZXR1cm4gc3RyLCAoUkVEVUNFXzIsKQorICAgICAgICBkaXNwYXRjaF90YWJsZVtBQUFdID0gcmVkdWNlXzIKKyAgICAgICAgZGVsIGRpc3BhdGNoX3RhYmxlW0JCQl0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjdXN0b21fbG9hZF9kdW1wKGEpLCBSRURVQ0VfMikKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGN1c3RvbV9sb2FkX2R1bXAoYiksIEJCQikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZWZhdWx0X2xvYWRfZHVtcChhKSwgUkVEVUNFX0EpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkZWZhdWx0X2xvYWRfZHVtcChiKSwgQkJCKQorCisKIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgIyBQcmludCBzb21lIHN0dWZmIHRoYXQgY2FuIGJlIHVzZWQgdG8gcmV3cml0ZSBEQVRBezAsMSwyfQogICAgIGZyb20gcGlja2xldG9vbHMgaW1wb3J0IGRpcwpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvcmVncnRlc3QucHkgYi9MaWIvdGVzdC9yZWdydGVzdC5weQppbmRleCA3MTRhMTE2Li40NGQzNDI2IDEwMDc1NQotLS0gYS9MaWIvdGVzdC9yZWdydGVzdC5weQorKysgYi9MaWIvdGVzdC9yZWdydGVzdC5weQpAQCAtMjAsNiArMjAsMTEgQEAKIE9wdGlvbnM6CiAKIC1oLy0taGVscCAgICAgICAtLSBwcmludCB0aGlzIHRleHQgYW5kIGV4aXQKKy0tdGltZW91dCBUSU1FT1VUCisgICAgICAgICAgICAgICAgLS0gZHVtcCB0aGUgdHJhY2ViYWNrIGFuZCBleGl0IGlmIGEgdGVzdCB0YWtlcyBtb3JlCisgICAgICAgICAgICAgICAgICAgdGhhbiBUSU1FT1VUIHNlY29uZHM7IGRpc2FibGVkIGlmIFRJTUVPVVQgaXMgbmVnYXRpdmUKKyAgICAgICAgICAgICAgICAgICBvciBlcXVhbHMgdG8gemVybworLS13YWl0ICAgICAgICAgIC0tIHdhaXQgZm9yIHVzZXIgaW5wdXQsIGUuZy4sIGFsbG93IGEgZGVidWdnZXIgdG8gYmUgYXR0YWNoZWQKIAogVmVyYm9zaXR5CiAKQEAgLTQ0LDYgKzQ5LDkgQEAKICAgICAgICAgICAgICAgICAtLSBzcGVjaWZ5IHdoaWNoIHNwZWNpYWwgcmVzb3VyY2UgaW50ZW5zaXZlIHRlc3RzIHRvIHJ1bgogLU0vLS1tZW1saW1pdCBMSU1JVAogICAgICAgICAgICAgICAgIC0tIHJ1biB2ZXJ5IGxhcmdlIG1lbW9yeS1jb25zdW1pbmcgdGVzdHMKKyAgIC0tdGVzdGRpciBESVIKKyAgICAgICAgICAgICAgICAtLSBleGVjdXRlIHRlc3QgZmlsZXMgaW4gdGhlIHNwZWNpZmllZCBkaXJlY3RvcnkgKGluc3RlYWQKKyAgICAgICAgICAgICAgICAgICBvZiB0aGUgUHl0aG9uIHN0ZGxpYiB0ZXN0IHN1aXRlKQogCiBTcGVjaWFsIHJ1bnMKIApAQCAtMTI1LDYgKzEzMyw4IEBACiAKICAgICBhbGwgLSAgICAgICBFbmFibGUgYWxsIHNwZWNpYWwgcmVzb3VyY2VzLgogCisgICAgbm9uZSAtICAgICAgRGlzYWJsZSBhbGwgc3BlY2lhbCByZXNvdXJjZXMgKHRoaXMgaXMgdGhlIGRlZmF1bHQpLgorCiAgICAgYXVkaW8gLSAgICAgVGVzdHMgdGhhdCB1c2UgdGhlIGF1ZGlvIGRldmljZS4gIChUaGVyZSBhcmUga25vd24KICAgICAgICAgICAgICAgICBjYXNlcyBvZiBicm9rZW4gYXVkaW8gZHJpdmVycyB0aGF0IGNhbiBjcmFzaCBQeXRob24gb3IKICAgICAgICAgICAgICAgICBldmVuIHRoZSBMaW51eCBrZXJuZWwuKQpAQCAtMTU2LDE2ICsxNjYsMTkgQEAKICIiIgogCiBpbXBvcnQgYnVpbHRpbnMKLWltcG9ydCBlcnJubworaW1wb3J0IGZhdWx0aGFuZGxlcgogaW1wb3J0IGdldG9wdAogaW1wb3J0IGlvCiBpbXBvcnQganNvbgogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCBvcworaW1wb3J0IHBhY2thZ2luZy5jb21tYW5kCitpbXBvcnQgcGFja2FnaW5nLmRhdGFiYXNlCiBpbXBvcnQgcGxhdGZvcm0KIGltcG9ydCByYW5kb20KIGltcG9ydCByZQogaW1wb3J0IHNodXRpbAoraW1wb3J0IHNpZ25hbAogaW1wb3J0IHN5cwogaW1wb3J0IHN5c2NvbmZpZwogaW1wb3J0IHRlbXBmaWxlCkBAIC0yMjUsNiArMjM4LDcgQEAKIFNLSVBQRUQgPSAtMgogUkVTT1VSQ0VfREVOSUVEID0gLTMKIElOVEVSUlVQVEVEID0gLTQKK0NISUxEX0VSUk9SID0gLTUgICAjIGVycm9yIGluIGEgY2hpbGQgcHJvY2VzcwogCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIApAQCAtMjY4LDYgKzI4MiwxOCBAQAogICAgIG9uIHRoZSBjb21tYW5kIGxpbmUuCiAgICAgIiIiCiAKKyAgICAjIERpc3BsYXkgdGhlIFB5dGhvbiB0cmFjZWJhY2sgb24gZmF0YWwgZXJyb3JzIChlLmcuIHNlZ2ZhdWx0KQorICAgIGZhdWx0aGFuZGxlci5lbmFibGUoYWxsX3RocmVhZHM9VHJ1ZSkKKworICAgICMgRGlzcGxheSB0aGUgUHl0aG9uIHRyYWNlYmFjayBvbiBTSUdBTFJNIG9yIFNJR1VTUjEgc2lnbmFsCisgICAgc2lnbmFscyA9IFtdCisgICAgaWYgaGFzYXR0cihzaWduYWwsICdTSUdBTFJNJyk6CisgICAgICAgIHNpZ25hbHMuYXBwZW5kKHNpZ25hbC5TSUdBTFJNKQorICAgIGlmIGhhc2F0dHIoc2lnbmFsLCAnU0lHVVNSMScpOgorICAgICAgICBzaWduYWxzLmFwcGVuZChzaWduYWwuU0lHVVNSMSkKKyAgICBmb3Igc2lnbnVtIGluIHNpZ25hbHM6CisgICAgICAgIGZhdWx0aGFuZGxlci5yZWdpc3RlcihzaWdudW0sIGNoYWluPVRydWUpCisKICAgICByZXBsYWNlX3N0ZG91dCgpCiAKICAgICBzdXBwb3J0LnJlY29yZF9vcmlnaW5hbF9zdGRvdXQoc3lzLnN0ZG91dCkKQEAgLTI3OCw3ICszMDQsOCBAQAogICAgICAgICAgICAgICd1c2U9JywgJ3RocmVzaG9sZD0nLCAnY292ZXJkaXI9JywgJ25vY292ZXJkaXInLAogICAgICAgICAgICAgICdydW5sZWFrcycsICdodW50cmxlYWtzPScsICdtZW1saW1pdD0nLCAncmFuZHNlZWQ9JywKICAgICAgICAgICAgICAnbXVsdGlwcm9jZXNzPScsICdjb3ZlcmFnZScsICdzbGF2ZWFyZ3M9JywgJ2ZvcmV2ZXInLCAnZGVidWcnLAotICAgICAgICAgICAgICdzdGFydD0nLCAnbm93aW5kb3dzJywgJ2hlYWRlcicsICdmYWlsZmFzdCcsICdtYXRjaCddKQorICAgICAgICAgICAgICdzdGFydD0nLCAnbm93aW5kb3dzJywgJ2hlYWRlcicsICd0ZXN0ZGlyPScsICd0aW1lb3V0PScsICd3YWl0JywKKyAgICAgICAgICAgICAnZmFpbGZhc3QnLCAnbWF0Y2gnXSkKICAgICBleGNlcHQgZ2V0b3B0LmVycm9yIGFzIG1zZzoKICAgICAgICAgdXNhZ2UobXNnKQogCkBAIC0yODksNiArMzE2LDcgQEAKICAgICAgICAgdXNlX3Jlc291cmNlcyA9IFtdCiAgICAgZGVidWcgPSBGYWxzZQogICAgIHN0YXJ0ID0gTm9uZQorICAgIHRpbWVvdXQgPSBOb25lCiAgICAgZm9yIG8sIGEgaW4gb3B0czoKICAgICAgICAgaWYgbyBpbiAoJy1oJywgJy0taGVscCcpOgogICAgICAgICAgICAgcHJpbnQoX19kb2NfXykKQEAgLTMzMiw3ICszNjAsOSBAQAogICAgICAgICBlbGlmIG8gaW4gKCctVCcsICctLWNvdmVyYWdlJyk6CiAgICAgICAgICAgICB0cmFjZSA9IFRydWUKICAgICAgICAgZWxpZiBvIGluICgnLUQnLCAnLS1jb3ZlcmRpcicpOgotICAgICAgICAgICAgY292ZXJkaXIgPSBvcy5wYXRoLmpvaW4ob3MuZ2V0Y3dkKCksIGEpCisgICAgICAgICAgICAjIENXRCBpcyByZXBsYWNlZCB3aXRoIGEgdGVtcG9yYXJ5IGRpciBiZWZvcmUgY2FsbGluZyBtYWluKCksIHNvIHdlCisgICAgICAgICAgICAjIG5lZWQgIGpvaW4gaXQgd2l0aCB0aGUgc2F2ZWQgQ1dEIHNvIGl0IGdvZXMgd2hlcmUgdGhlIHVzZXIgZXhwZWN0cy4KKyAgICAgICAgICAgIGNvdmVyZGlyID0gb3MucGF0aC5qb2luKHN1cHBvcnQuU0FWRURDV0QsIGEpCiAgICAgICAgIGVsaWYgbyBpbiAoJy1OJywgJy0tbm9jb3ZlcmRpcicpOgogICAgICAgICAgICAgY292ZXJkaXIgPSBOb25lCiAgICAgICAgIGVsaWYgbyBpbiAoJy1SJywgJy0taHVudHJsZWFrcycpOgpAQCAtMzYxLDYgKzM5MSw5IEBACiAgICAgICAgICAgICAgICAgaWYgciA9PSAnYWxsJzoKICAgICAgICAgICAgICAgICAgICAgdXNlX3Jlc291cmNlc1s6XSA9IFJFU09VUkNFX05BTUVTCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgaWYgciA9PSAnbm9uZSc6CisgICAgICAgICAgICAgICAgICAgIGRlbCB1c2VfcmVzb3VyY2VzWzpdCisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgcmVtb3ZlID0gRmFsc2UKICAgICAgICAgICAgICAgICBpZiByWzBdID09ICctJzoKICAgICAgICAgICAgICAgICAgICAgcmVtb3ZlID0gVHJ1ZQpAQCAtMzkxLDYgKzQyNCwxNSBAQAogICAgICAgICAgICAgZm9yZXZlciA9IFRydWUKICAgICAgICAgZWxpZiBvIGluICgnLWonLCAnLS1tdWx0aXByb2Nlc3MnKToKICAgICAgICAgICAgIHVzZV9tcCA9IGludChhKQorICAgICAgICAgICAgaWYgdXNlX21wIDw9IDA6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBpbXBvcnQgbXVsdGlwcm9jZXNzaW5nCisgICAgICAgICAgICAgICAgICAgICMgVXNlIGFsbCBjb3JlcyArIGV4dHJhcyBmb3IgdGVzdHMgdGhhdCBsaWtlIHRvIHNsZWVwCisgICAgICAgICAgICAgICAgICAgIHVzZV9tcCA9IDIgKyBtdWx0aXByb2Nlc3NpbmcuY3B1X2NvdW50KCkKKyAgICAgICAgICAgICAgICBleGNlcHQgKEltcG9ydEVycm9yLCBOb3RJbXBsZW1lbnRlZEVycm9yKToKKyAgICAgICAgICAgICAgICAgICAgdXNlX21wID0gMworICAgICAgICAgICAgaWYgdXNlX21wID09IDE6CisgICAgICAgICAgICAgICAgdXNlX21wID0gTm9uZQogICAgICAgICBlbGlmIG8gPT0gJy0taGVhZGVyJzoKICAgICAgICAgICAgIGhlYWRlciA9IFRydWUKICAgICAgICAgZWxpZiBvID09ICctLXNsYXZlYXJncyc6CkBAIC00MDMsNiArNDQ1LDIxIEBACiAgICAgICAgICAgICBwcmludCgpICAgIyBGb3JjZSBhIG5ld2xpbmUgKGp1c3QgaW4gY2FzZSkKICAgICAgICAgICAgIHByaW50KGpzb24uZHVtcHMocmVzdWx0KSkKICAgICAgICAgICAgIHN5cy5leGl0KDApCisgICAgICAgIGVsaWYgbyA9PSAnLS10ZXN0ZGlyJzoKKyAgICAgICAgICAgICMgQ1dEIGlzIHJlcGxhY2VkIHdpdGggYSB0ZW1wb3JhcnkgZGlyIGJlZm9yZSBjYWxsaW5nIG1haW4oKSwgc28gd2UKKyAgICAgICAgICAgICMgam9pbiBpdCB3aXRoIHRoZSBzYXZlZCBDV0Qgc28gaXQgZW5kcyB1cCB3aGVyZSB0aGUgdXNlciBleHBlY3RzLgorICAgICAgICAgICAgdGVzdGRpciA9IG9zLnBhdGguam9pbihzdXBwb3J0LlNBVkVEQ1dELCBhKQorICAgICAgICBlbGlmIG8gPT0gJy0tdGltZW91dCc6CisgICAgICAgICAgICBpZiBoYXNhdHRyKGZhdWx0aGFuZGxlciwgJ2R1bXBfdHJhY2ViYWNrc19sYXRlcicpOgorICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBmbG9hdChhKQorICAgICAgICAgICAgICAgIGlmIHRpbWVvdXQgPD0gMDoKKyAgICAgICAgICAgICAgICAgICAgdGltZW91dCA9IE5vbmUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcHJpbnQoIldhcm5pbmc6IFRoZSB0aW1lb3V0IG9wdGlvbiByZXF1aXJlcyAiCisgICAgICAgICAgICAgICAgICAgICAgImZhdWx0aGFuZGxlci5kdW1wX3RyYWNlYmFja3NfbGF0ZXIiKQorICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBOb25lCisgICAgICAgIGVsaWYgbyA9PSAnLS13YWl0JzoKKyAgICAgICAgICAgIGlucHV0KCJQcmVzcyBhbnkga2V5IHRvIGNvbnRpbnVlLi4uIikKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHByaW50KCgiTm8gaGFuZGxlciBmb3Igb3B0aW9uIHt9LiAgUGxlYXNlIHJlcG9ydCB0aGlzIGFzIGEgYnVnICIKICAgICAgICAgICAgICAgICAgICAiYXQgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy4iKS5mb3JtYXQobyksIGZpbGU9c3lzLnN0ZGVycikKQEAgLTQ4MSw3ICs1MzgsMTMgQEAKICAgICAgICAgcHJpbnQoIj09ICAiLCBvcy5nZXRjd2QoKSkKICAgICAgICAgcHJpbnQoIlRlc3Rpbmcgd2l0aCBmbGFnczoiLCBzeXMuZmxhZ3MpCiAKLSAgICBhbGx0ZXN0cyA9IGZpbmR0ZXN0cyh0ZXN0ZGlyLCBzdGR0ZXN0cywgbm90dGVzdHMpCisgICAgIyBpZiB0ZXN0ZGlyIGlzIHNldCwgdGhlbiB3ZSBhcmUgbm90IHJ1bm5pbmcgdGhlIHB5dGhvbiB0ZXN0cyBzdWl0ZSwgc28KKyAgICAjIGRvbid0IGFkZCBkZWZhdWx0IHRlc3RzIHRvIGJlIGV4ZWN1dGVkIG9yIHNraXBwZWQgKHBhc3MgZW1wdHkgdmFsdWVzKQorICAgIGlmIHRlc3RkaXI6CisgICAgICAgIGFsbHRlc3RzID0gZmluZHRlc3RzKHRlc3RkaXIsIGxpc3QoKSwgc2V0KCkpCisgICAgZWxzZToKKyAgICAgICAgYWxsdGVzdHMgPSBmaW5kdGVzdHModGVzdGRpciwgc3RkdGVzdHMsIG5vdHRlc3RzKQorCiAgICAgc2VsZWN0ZWQgPSB0ZXN0cyBvciBhcmdzIG9yIGFsbHRlc3RzCiAgICAgaWYgc2luZ2xlOgogICAgICAgICBzZWxlY3RlZCA9IHNlbGVjdGVkWzoxXQpAQCAtNTU2LDcgKzYxOSw4IEBACiAgICAgICAgICAgICAgICAgICAgICh0ZXN0LCB2ZXJib3NlLCBxdWlldCksCiAgICAgICAgICAgICAgICAgICAgIGRpY3QoaHVudHJsZWFrcz1odW50cmxlYWtzLCB1c2VfcmVzb3VyY2VzPXVzZV9yZXNvdXJjZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgZGVidWc9ZGVidWcsIG91dHB1dF9vbl9mYWlsdXJlPXZlcmJvc2UzLAotICAgICAgICAgICAgICAgICAgICAgICAgIGZhaWxmYXN0PWZhaWxmYXN0LCBtYXRjaF90ZXN0cz1tYXRjaF90ZXN0cykKKyAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lb3V0PXRpbWVvdXQsIGZhaWxmYXN0PWZhaWxmYXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgIG1hdGNoX3Rlc3RzPW1hdGNoX3Rlc3RzKQogICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICB5aWVsZCAodGVzdCwgYXJnc190dXBsZSkKICAgICAgICAgcGVuZGluZyA9IHRlc3RzX2FuZF9hcmdzKCkKQEAgLTU3NywxMCArNjQxLDE1IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaXZlcnNhbF9uZXdsaW5lcz1UcnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZV9mZHM9KG9zLm5hbWUgIT0gJ250JykpCiAgICAgICAgICAgICAgICAgICAgIHN0ZG91dCwgc3RkZXJyID0gcG9wZW4uY29tbXVuaWNhdGUoKQorICAgICAgICAgICAgICAgICAgICByZXRjb2RlID0gcG9wZW4ud2FpdCgpCiAgICAgICAgICAgICAgICAgICAgICMgU3RyaXAgbGFzdCByZWZjb3VudCBvdXRwdXQgbGluZSBpZiBpdCBleGlzdHMsIHNpbmNlIGl0CiAgICAgICAgICAgICAgICAgICAgICMgY29tZXMgZnJvbSB0aGUgc2h1dGRvd24gb2YgdGhlIGludGVycHJldGVyIGluIHRoZSBzdWJjb21tYW5kLgogICAgICAgICAgICAgICAgICAgICBzdGRlcnIgPSBkZWJ1Z19vdXRwdXRfcGF0LnN1YigiIiwgc3RkZXJyKQogICAgICAgICAgICAgICAgICAgICBzdGRvdXQsIF8sIHJlc3VsdCA9IHN0ZG91dC5zdHJpcCgpLnJwYXJ0aXRpb24oIlxuIikKKyAgICAgICAgICAgICAgICAgICAgaWYgcmV0Y29kZSAhPSAwOgorICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gKENISUxEX0VSUk9SLCAiRXhpdCBjb2RlICVzIiAlIHJldGNvZGUpCisgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQucHV0KCh0ZXN0LCBzdGRvdXQucnN0cmlwKCksIHN0ZGVyci5yc3RyaXAoKSwgcmVzdWx0KSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybgogICAgICAgICAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgogICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0LnB1dCgoTm9uZSwgTm9uZSwgTm9uZSwgTm9uZSkpCiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4KQEAgLTYxMyw2ICs2ODIsOCBAQAogICAgICAgICAgICAgICAgIGlmIHJlc3VsdFswXSA9PSBJTlRFUlJVUFRFRDoKICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IHJlc3VsdFsxXSA9PSAnS2V5Ym9hcmRJbnRlcnJ1cHQnCiAgICAgICAgICAgICAgICAgICAgIHJhaXNlIEtleWJvYXJkSW50ZXJydXB0ICAgIyBXaGF0IGVsc2U/CisgICAgICAgICAgICAgICAgaWYgcmVzdWx0WzBdID09IENISUxEX0VSUk9SOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIkNoaWxkIGVycm9yIG9uIHt9OiB7fSIuZm9ybWF0KHRlc3QsIHJlc3VsdFsxXSkpCiAgICAgICAgICAgICAgICAgdGVzdF9pbmRleCArPSAxCiAgICAgICAgIGV4Y2VwdCBLZXlib2FyZEludGVycnVwdDoKICAgICAgICAgICAgIGludGVycnVwdGVkID0gVHJ1ZQpAQCAtNjI5LDEzICs3MDAsMTQgQEAKICAgICAgICAgICAgIGlmIHRyYWNlOgogICAgICAgICAgICAgICAgICMgSWYgd2UncmUgdHJhY2luZyBjb2RlIGNvdmVyYWdlLCB0aGVuIHdlIGRvbid0IGV4aXQgd2l0aCBzdGF0dXMKICAgICAgICAgICAgICAgICAjIGlmIG9uIGEgZmFsc2UgcmV0dXJuIHZhbHVlIGZyb20gbWFpbi4KLSAgICAgICAgICAgICAgICB0cmFjZXIucnVuY3R4KCdydW50ZXN0KHRlc3QsIHZlcmJvc2UsIHF1aWV0KScsCisgICAgICAgICAgICAgICAgdHJhY2VyLnJ1bmN0eCgncnVudGVzdCh0ZXN0LCB2ZXJib3NlLCBxdWlldCwgdGltZW91dD10aW1lb3V0KScsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbG9iYWxzPWdsb2JhbHMoKSwgbG9jYWxzPXZhcnMoKSkKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBydW50ZXN0KHRlc3QsIHZlcmJvc2UsIHF1aWV0LCBodW50cmxlYWtzLCBkZWJ1ZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXRfb25fZmFpbHVyZT12ZXJib3NlMywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWlsZmFzdD1mYWlsZmFzdCwgbWF0Y2hfdGVzdHM9bWF0Y2hfdGVzdHMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dD10aW1lb3V0LCBmYWlsZmFzdD1mYWlsZmFzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXRjaF90ZXN0cz1tYXRjaF90ZXN0cykKICAgICAgICAgICAgICAgICAgICAgYWNjdW11bGF0ZV9yZXN1bHQodGVzdCwgcmVzdWx0KQogICAgICAgICAgICAgICAgIGV4Y2VwdCBLZXlib2FyZEludGVycnVwdDoKICAgICAgICAgICAgICAgICAgICAgaW50ZXJydXB0ZWQgPSBUcnVlCkBAIC03MDYsNyArNzc4LDcgQEAKICAgICAgICAgICAgIHN5cy5zdGRvdXQuZmx1c2goKQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHZlcmJvc2UgPSBUcnVlCi0gICAgICAgICAgICAgICAgb2sgPSBydW50ZXN0KHRlc3QsIFRydWUsIHF1aWV0LCBodW50cmxlYWtzLCBkZWJ1ZykKKyAgICAgICAgICAgICAgICBvayA9IHJ1bnRlc3QodGVzdCwgVHJ1ZSwgcXVpZXQsIGh1bnRybGVha3MsIGRlYnVnLCB0aW1lb3V0PXRpbWVvdXQpCiAgICAgICAgICAgICBleGNlcHQgS2V5Ym9hcmRJbnRlcnJ1cHQ6CiAgICAgICAgICAgICAgICAgIyBwcmludCBhIG5ld2xpbmUgc2VwYXJhdGUgZnJvbSB0aGUgXkMKICAgICAgICAgICAgICAgICBwcmludCgpCkBAIC03MzEsNiArODAzLDggQEAKICAgICBzeXMuZXhpdChsZW4oYmFkKSA+IDAgb3IgaW50ZXJydXB0ZWQpCiAKIAorIyBzbWFsbCBzZXQgb2YgdGVzdHMgdG8gZGV0ZXJtaW5lIGlmIHdlIGhhdmUgYSBiYXNpY2FsbHkgZnVuY3Rpb25pbmcgaW50ZXJwcmV0ZXIKKyMgKGkuZS4gaWYgYW55IG9mIHRoZXNlIGZhaWwsIHRoZW4gYW55dGhpbmcgZWxzZSBpcyBsaWtlbHkgdG8gZm9sbG93KQogU1REVEVTVFMgPSBbCiAgICAgJ3Rlc3RfZ3JhbW1hcicsCiAgICAgJ3Rlc3Rfb3Bjb2RlcycsCkBAIC03NDEsMTIgKzgxNSwxMSBAQAogICAgICd0ZXN0X3VuaXR0ZXN0JywKICAgICAndGVzdF9kb2N0ZXN0JywKICAgICAndGVzdF9kb2N0ZXN0MicsCisgICAgJ3Rlc3Rfc3VwcG9ydCcKIF0KIAotTk9UVEVTVFMgPSB7Ci0gICAgJ3Rlc3RfZnV0dXJlMScsCi0gICAgJ3Rlc3RfZnV0dXJlMicsCi19CisjIHNldCBvZiB0ZXN0cyB0aGF0IHdlIGRvbid0IHdhbnQgdG8gYmUgZXhlY3V0ZWQgd2hlbiB1c2luZyByZWdydGVzdAorTk9UVEVTVFMgPSBzZXQoKQogCiBkZWYgZmluZHRlc3RzKHRlc3RkaXI9Tm9uZSwgc3RkdGVzdHM9U1REVEVTVFMsIG5vdHRlc3RzPU5PVFRFU1RTKToKICAgICAiIiJSZXR1cm4gYSBsaXN0IG9mIGFsbCBhcHBsaWNhYmxlIHRlc3QgbW9kdWxlcy4iIiIKQEAgLTc1NSwyNSArODI4LDIyIEBACiAgICAgdGVzdHMgPSBbXQogICAgIG90aGVycyA9IHNldChzdGR0ZXN0cykgfCBub3R0ZXN0cwogICAgIGZvciBuYW1lIGluIG5hbWVzOgotICAgICAgICBtb2RuYW1lLCBleHQgPSBvcy5wYXRoLnNwbGl0ZXh0KG5hbWUpCi0gICAgICAgIGlmIG1vZG5hbWVbOjVdID09ICJ0ZXN0XyIgYW5kIGV4dCA9PSAiLnB5IiBhbmQgbW9kbmFtZSBub3QgaW4gb3RoZXJzOgotICAgICAgICAgICAgdGVzdHMuYXBwZW5kKG1vZG5hbWUpCisgICAgICAgIG1vZCwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChuYW1lKQorICAgICAgICBpZiBtb2RbOjVdID09ICJ0ZXN0XyIgYW5kIGV4dCBpbiAoIi5weSIsICIiKSBhbmQgbW9kIG5vdCBpbiBvdGhlcnM6CisgICAgICAgICAgICB0ZXN0cy5hcHBlbmQobW9kKQogICAgIHJldHVybiBzdGR0ZXN0cyArIHNvcnRlZCh0ZXN0cykKIAogZGVmIHJlcGxhY2Vfc3Rkb3V0KCk6CiAgICAgIiIiU2V0IHN0ZG91dCBlbmNvZGVyIGVycm9yIGhhbmRsZXIgdG8gYmFja3NsYXNocmVwbGFjZSAoYXMgc3RkZXJyIGVycm9yCiAgICAgaGFuZGxlcikgdG8gYXZvaWQgVW5pY29kZUVuY29kZUVycm9yIHdoZW4gcHJpbnRpbmcgYSB0cmFjZWJhY2siIiIKLSAgICBpZiBvcy5uYW1lID09ICJudCI6Ci0gICAgICAgICMgUmVwbGFjZSBzeXMuc3Rkb3V0IGJyZWFrcyB0aGUgc3Rkb3V0IG5ld2xpbmVzIG9uIFdpbmRvd3M6IGlzc3VlICM4NTMzCi0gICAgICAgIHJldHVybgotCiAgICAgaW1wb3J0IGF0ZXhpdAogCiAgICAgc3Rkb3V0ID0gc3lzLnN0ZG91dAogICAgIHN5cy5zdGRvdXQgPSBvcGVuKHN0ZG91dC5maWxlbm8oKSwgJ3cnLAogICAgICAgICBlbmNvZGluZz1zdGRvdXQuZW5jb2RpbmcsCiAgICAgICAgIGVycm9ycz0iYmFja3NsYXNocmVwbGFjZSIsCi0gICAgICAgIGNsb3NlZmQ9RmFsc2UpCisgICAgICAgIGNsb3NlZmQ9RmFsc2UsCisgICAgICAgIG5ld2xpbmU9J1xuJykKIAogICAgIGRlZiByZXN0b3JlX3N0ZG91dCgpOgogICAgICAgICBzeXMuc3Rkb3V0LmNsb3NlKCkKQEAgLTc4Miw3ICs4NTIsOCBAQAogCiBkZWYgcnVudGVzdCh0ZXN0LCB2ZXJib3NlLCBxdWlldCwKICAgICAgICAgICAgIGh1bnRybGVha3M9RmFsc2UsIGRlYnVnPUZhbHNlLCB1c2VfcmVzb3VyY2VzPU5vbmUsCi0gICAgICAgICAgICBvdXRwdXRfb25fZmFpbHVyZT1GYWxzZSwgZmFpbGZhc3Q9RmFsc2UsIG1hdGNoX3Rlc3RzPU5vbmUpOgorICAgICAgICAgICAgb3V0cHV0X29uX2ZhaWx1cmU9RmFsc2UsIGZhaWxmYXN0PUZhbHNlLCBtYXRjaF90ZXN0cz1Ob25lLAorICAgICAgICAgICAgdGltZW91dD1Ob25lKToKICAgICAiIiJSdW4gYSBzaW5nbGUgdGVzdC4KIAogICAgIHRlc3QgLS0gdGhlIG5hbWUgb2YgdGhlIHRlc3QKQEAgLTc5Miw2ICs4NjMsOCBAQAogICAgIGh1bnRybGVha3MgLS0gcnVuIG11bHRpcGxlIHRpbWVzIHRvIHRlc3QgZm9yIGxlYWtzOyByZXF1aXJlcyBhIGRlYnVnCiAgICAgICAgICAgICAgICAgICBidWlsZDsgYSB0cmlwbGUgY29ycmVzcG9uZGluZyB0byAtUidzIHRocmVlIGFyZ3VtZW50cwogICAgIG91dHB1dF9vbl9mYWlsdXJlIC0tIGlmIHRydWUsIGRpc3BsYXkgdGVzdCBvdXRwdXQgb24gZmFpbHVyZQorICAgIHRpbWVvdXQgLS0gZHVtcCB0aGUgdHJhY2ViYWNrIGFuZCBleGl0IGlmIGEgdGVzdCB0YWtlcyBtb3JlIHRoYW4KKyAgICAgICAgICAgICAgIHRpbWVvdXQgc2Vjb25kcwogCiAgICAgUmV0dXJucyBvbmUgb2YgdGhlIHRlc3QgcmVzdWx0IGNvbnN0YW50czoKICAgICAgICAgSU5URVJSVVBURUQgICAgICBLZXlib2FyZEludGVycnVwdCB3aGVuIHJ1biB1bmRlciAtagpAQCAtODA0LDYgKzg3Nyw5IEBACiAKICAgICBpZiB1c2VfcmVzb3VyY2VzIGlzIG5vdCBOb25lOgogICAgICAgICBzdXBwb3J0LnVzZV9yZXNvdXJjZXMgPSB1c2VfcmVzb3VyY2VzCisgICAgdXNlX3RpbWVvdXQgPSAodGltZW91dCBpcyBub3QgTm9uZSkKKyAgICBpZiB1c2VfdGltZW91dDoKKyAgICAgICAgZmF1bHRoYW5kbGVyLmR1bXBfdHJhY2ViYWNrc19sYXRlcih0aW1lb3V0LCBleGl0PVRydWUpCiAgICAgdHJ5OgogICAgICAgICBzdXBwb3J0Lm1hdGNoX3Rlc3RzID0gbWF0Y2hfdGVzdHMKICAgICAgICAgaWYgZmFpbGZhc3Q6CkBAIC04NDIsNiArOTE4LDggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheV9mYWlsdXJlPW5vdCB2ZXJib3NlKQogICAgICAgICByZXR1cm4gcmVzdWx0CiAgICAgZmluYWxseToKKyAgICAgICAgaWYgdXNlX3RpbWVvdXQ6CisgICAgICAgICAgICBmYXVsdGhhbmRsZXIuY2FuY2VsX2R1bXBfdHJhY2ViYWNrc19sYXRlcigpCiAgICAgICAgIGNsZWFudXBfdGVzdF9kcm9wcGluZ3ModGVzdCwgdmVyYm9zZSkKIHJ1bnRlc3Quc3RyaW5naW8gPSBOb25lCiAKQEAgLTg4NywxMCArOTY1LDExIEBACiAgICAgcmVzb3VyY2VzID0gKCdzeXMuYXJndicsICdjd2QnLCAnc3lzLnN0ZGluJywgJ3N5cy5zdGRvdXQnLCAnc3lzLnN0ZGVycicsCiAgICAgICAgICAgICAgICAgICdvcy5lbnZpcm9uJywgJ3N5cy5wYXRoJywgJ3N5cy5wYXRoX2hvb2tzJywgJ19faW1wb3J0X18nLAogICAgICAgICAgICAgICAgICAnd2FybmluZ3MuZmlsdGVycycsICdhc3luY29yZS5zb2NrZXRfbWFwJywKLSAgICAgICAgICAgICAgICAgJ2xvZ2dpbmcuX2hhbmRsZXJzJywgJ2xvZ2dpbmcuX2hhbmRsZXJMaXN0JywKLSAgICAgICAgICAgICAgICAgJ3NodXRpbC5hcmNoaXZlX2Zvcm1hdHMnLCAnc2h1dGlsLnVucGFja19mb3JtYXRzJywKKyAgICAgICAgICAgICAgICAgJ2xvZ2dpbmcuX2hhbmRsZXJzJywgJ2xvZ2dpbmcuX2hhbmRsZXJMaXN0JywgJ3N5cy5nZXR0cmFjZScsCiAgICAgICAgICAgICAgICAgICdzeXMud2Fybm9wdGlvbnMnLCAndGhyZWFkaW5nLl9kYW5nbGluZycsCiAgICAgICAgICAgICAgICAgICdtdWx0aXByb2Nlc3NpbmcucHJvY2Vzcy5fZGFuZ2xpbmcnLAorICAgICAgICAgICAgICAgICAnc3lzY29uZmlnLl9DT05GSUdfVkFSUycsICdzeXNjb25maWcuX1NDSEVNRVMnLAorICAgICAgICAgICAgICAgICAncGFja2FnaW5nLmNvbW1hbmQuX0NPTU1BTkRTJywgJ3BhY2thZ2luZy5kYXRhYmFzZV9jYWNoZXMnLAogICAgICAgICAgICAgICAgICAnc3VwcG9ydC5URVNURk4nLAogICAgICAgICAgICAgICAgICkKIApAQCAtOTM5LDYgKzEwMTgsMTEgQEAKICAgICAgICAgc3lzLnBhdGhfaG9va3MgPSBzYXZlZF9ob29rc1sxXQogICAgICAgICBzeXMucGF0aF9ob29rc1s6XSA9IHNhdmVkX2hvb2tzWzJdCiAKKyAgICBkZWYgZ2V0X3N5c19nZXR0cmFjZShzZWxmKToKKyAgICAgICAgcmV0dXJuIHN5cy5nZXR0cmFjZSgpCisgICAgZGVmIHJlc3RvcmVfc3lzX2dldHRyYWNlKHNlbGYsIHRyYWNlX2Z4bik6CisgICAgICAgIHN5cy5zZXR0cmFjZSh0cmFjZV9meG4pCisKICAgICBkZWYgZ2V0X19faW1wb3J0X18oc2VsZik6CiAgICAgICAgIHJldHVybiBidWlsdGlucy5fX2ltcG9ydF9fCiAgICAgZGVmIHJlc3RvcmVfX19pbXBvcnRfXyhzZWxmLCBpbXBvcnRfKToKQEAgLTk5MSw2ICsxMDc1LDQ0IEBACiAgICAgICAgICMgQ2FuJ3QgZWFzaWx5IHJldmVydCB0aGUgbG9nZ2luZyBzdGF0ZQogICAgICAgICBwYXNzCiAKKyAgICBkZWYgZ2V0X3BhY2thZ2luZ19jb21tYW5kX19DT01NQU5EUyhzZWxmKToKKyAgICAgICAgIyByZWdpc3RyeSBtYXBwaW5nIGNvbW1hbmQgbmFtZXMgdG8gZnVsbCBkb3R0ZWQgcGF0aCBvciB0byB0aGUgYWN0dWFsCisgICAgICAgICMgY2xhc3MgKHJlc29sdmVkIG9uIGRlbWFuZCk7IHRoaXMgY2hlY2sgb25seSBsb29rcyBhdCB0aGUgbmFtZXMsIG5vdAorICAgICAgICAjIHRoZSB0eXBlcyBvZiB0aGUgdmFsdWVzIChJT1csIGlmIGEgdmFsdWUgY2hhbmdlcyBmcm9tIGEgc3RyaW5nCisgICAgICAgICMgKGRvdHRlZCBwYXRoKSB0byBhIGNsYXNzIGl0J3Mgb2theSBidXQgaWYgYSBrZXkgKGkuZS4gY29tbWFuZCBjbGFzcykKKyAgICAgICAgIyBpcyBhZGRlZCB3ZSBjb21wbGFpbikKKyAgICAgICAgaWRfID0gaWQocGFja2FnaW5nLmNvbW1hbmQuX0NPTU1BTkRTKQorICAgICAgICBrZXlzID0gc2V0KHBhY2thZ2luZy5jb21tYW5kLl9DT01NQU5EUykKKyAgICAgICAgcmV0dXJuIGlkXywga2V5cworICAgIGRlZiByZXN0b3JlX3BhY2thZ2luZ19jb21tYW5kX19DT01NQU5EUyhzZWxmLCBzYXZlZCk6CisgICAgICAgICMgaWYgY29tbWFuZC5fQ09NTUFORFMgd2FzIGJvdW5kIHRvIGFub3RoZXIgZGljdCBvYmplY3QsIHdlIGNhbid0CisgICAgICAgICMgcmVzdG9yZSB0aGUgcHJldmlvdXMgb2JqZWN0IGFuZCBjb250ZW50cywgYmVjYXVzZSB0aGUgZ2V0XyBtZXRob2QKKyAgICAgICAgIyBhYm92ZSBkb2VzIG5vdCByZXR1cm4gdGhlIGRpY3Qgb2JqZWN0ICh0byBpZ25vcmUgY2hhbmdlcyBpbiB2YWx1ZXMpCisgICAgICAgIGZvciBrZXkgaW4gcGFja2FnaW5nLmNvbW1hbmQuX0NPTU1BTkRTLmtleXMoKSAtIHNhdmVkWzFdOgorICAgICAgICAgICAgZGVsIHBhY2thZ2luZy5jb21tYW5kLl9DT01NQU5EU1trZXldCisKKyAgICBkZWYgZ2V0X3BhY2thZ2luZ19kYXRhYmFzZV9jYWNoZXMoc2VsZik6CisgICAgICAgICMgY2FjaGluZyBzeXN0ZW0gdXNlZCBieSB0aGUgUEVQIDM3NiBpbXBsZW1lbnRhdGlvbgorICAgICAgICAjIHdlIGhhdmUgb25lIGJvb2xlYW4gYW5kIGZvdXIgZGljdGlvbmFyaWVzLCBpbml0aWFsbHkgZW1wdHkKKyAgICAgICAgc3dpdGNoID0gcGFja2FnaW5nLmRhdGFiYXNlLl9jYWNoZV9lbmFibGVkCisgICAgICAgIHNhdmVkID0gW10KKyAgICAgICAgZm9yIG5hbWUgaW4gKCdfY2FjaGVfbmFtZScsICdfY2FjaGVfbmFtZV9lZ2cnLAorICAgICAgICAgICAgICAgICAgICAgJ19jYWNoZV9wYXRoJywgJ19jYWNoZV9wYXRoX2VnZycpOgorICAgICAgICAgICAgY2FjaGUgPSBnZXRhdHRyKHBhY2thZ2luZy5kYXRhYmFzZSwgbmFtZSkKKyAgICAgICAgICAgIHNhdmVkLmFwcGVuZCgoaWQoY2FjaGUpLCBjYWNoZSwgY2FjaGUuY29weSgpKSkKKyAgICAgICAgcmV0dXJuIHN3aXRjaCwgc2F2ZWQKKyAgICBkZWYgcmVzdG9yZV9wYWNrYWdpbmdfZGF0YWJhc2VfY2FjaGVzKHNlbGYsIHNhdmVkKToKKyAgICAgICAgc3dpdGNoLCBzYXZlZF9jYWNoZXMgPSBzYXZlZAorICAgICAgICBwYWNrYWdpbmcuZGF0YWJhc2UuX2NhY2hlX2VuYWJsZWQgPSBzd2l0Y2gKKyAgICAgICAgZm9yIG9mZnNldCwgbmFtZSBpbiBlbnVtZXJhdGUoKCdfY2FjaGVfbmFtZScsICdfY2FjaGVfbmFtZV9lZ2cnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19jYWNoZV9wYXRoJywgJ19jYWNoZV9wYXRoX2VnZycpKToKKyAgICAgICAgICAgIF8sIGNhY2hlLCBpdGVtcyA9IHNhdmVkX2NhY2hlc1tvZmZzZXRdCisgICAgICAgICAgICAjIHB1dCBiYWNrIHRoZSBzYW1lIG9iamVjdCBpbiBwbGFjZQorICAgICAgICAgICAgc2V0YXR0cihwYWNrYWdpbmcuZGF0YWJhc2UsIG5hbWUsIGNhY2hlKQorICAgICAgICAgICAgIyBub3cgcmVzdG9yZSBpdHMgaXRlbXMKKyAgICAgICAgICAgIGNhY2hlLmNsZWFyKCkKKyAgICAgICAgICAgIGNhY2hlLnVwZGF0ZShpdGVtcykKKwogICAgIGRlZiBnZXRfc3lzX3dhcm5vcHRpb25zKHNlbGYpOgogICAgICAgICByZXR1cm4gaWQoc3lzLndhcm5vcHRpb25zKSwgc3lzLndhcm5vcHRpb25zLCBzeXMud2Fybm9wdGlvbnNbOl0KICAgICBkZWYgcmVzdG9yZV9zeXNfd2Fybm9wdGlvbnMoc2VsZiwgc2F2ZWRfb3B0aW9ucyk6CkBAIC0xMDIyLDYgKzExNDQsMjYgQEAKICAgICAgICAgbXVsdGlwcm9jZXNzaW5nLnByb2Nlc3MuX2RhbmdsaW5nLmNsZWFyKCkKICAgICAgICAgbXVsdGlwcm9jZXNzaW5nLnByb2Nlc3MuX2RhbmdsaW5nLnVwZGF0ZShzYXZlZCkKIAorICAgIGRlZiBnZXRfc3lzY29uZmlnX19DT05GSUdfVkFSUyhzZWxmKToKKyAgICAgICAgIyBtYWtlIHN1cmUgdGhlIGRpY3QgaXMgaW5pdGlhbGl6ZWQKKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdwcmVmaXgnKQorICAgICAgICByZXR1cm4gKGlkKHN5c2NvbmZpZy5fQ09ORklHX1ZBUlMpLCBzeXNjb25maWcuX0NPTkZJR19WQVJTLAorICAgICAgICAgICAgICAgIGRpY3Qoc3lzY29uZmlnLl9DT05GSUdfVkFSUykpCisgICAgZGVmIHJlc3RvcmVfc3lzY29uZmlnX19DT05GSUdfVkFSUyhzZWxmLCBzYXZlZCk6CisgICAgICAgIHN5c2NvbmZpZy5fQ09ORklHX1ZBUlMgPSBzYXZlZFsxXQorICAgICAgICBzeXNjb25maWcuX0NPTkZJR19WQVJTLmNsZWFyKCkKKyAgICAgICAgc3lzY29uZmlnLl9DT05GSUdfVkFSUy51cGRhdGUoc2F2ZWRbMl0pCisKKyAgICBkZWYgZ2V0X3N5c2NvbmZpZ19fU0NIRU1FUyhzZWxmKToKKyAgICAgICAgIyBpdCdzIG1pbGRseSBldmlsIHRvIGxvb2sgYXQgdGhlIGludGVybmFsIGF0dHJpYnV0ZSwgYnV0IGl0J3MgZWFzaWVyCisgICAgICAgICMgdGhhbiBjb3B5aW5nIGEgUmF3Q29uZmlnUGFyc2VyIG9iamVjdAorICAgICAgICByZXR1cm4gKGlkKHN5c2NvbmZpZy5fU0NIRU1FUyksIHN5c2NvbmZpZy5fU0NIRU1FUy5fc2VjdGlvbnMsCisgICAgICAgICAgICAgICAgc3lzY29uZmlnLl9TQ0hFTUVTLl9zZWN0aW9ucy5jb3B5KCkpCisgICAgZGVmIHJlc3RvcmVfc3lzY29uZmlnX19TQ0hFTUVTKHNlbGYsIHNhdmVkKToKKyAgICAgICAgc3lzY29uZmlnLl9TQ0hFTUVTLl9zZWN0aW9ucyA9IHNhdmVkWzFdCisgICAgICAgIHN5c2NvbmZpZy5fU0NIRU1FUy5fc2VjdGlvbnMuY2xlYXIoKQorICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuX3NlY3Rpb25zLnVwZGF0ZShzYXZlZFsyXSkKKwogICAgIGRlZiBnZXRfc3VwcG9ydF9URVNURk4oc2VsZik6CiAgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKHN1cHBvcnQuVEVTVEZOKToKICAgICAgICAgICAgIHJlc3VsdCA9ICdmJwpAQCAtMTE3Niw3ICsxMzE4LDggQEAKICAgICAgICAgRmFsc2UgaWYgdGhlIHRlc3QgZGlkbid0IGxlYWsgcmVmZXJlbmNlczsgVHJ1ZSBpZiB3ZSBkZXRlY3RlZCByZWZsZWFrcy4KICAgICAiIiIKICAgICAjIFRoaXMgY29kZSBpcyBoYWNraXNoIGFuZCBpbmVsZWdhbnQsIGJ1dCBpdCBzZWVtcyB0byBkbyB0aGUgam9iLgotICAgIGltcG9ydCBjb3B5cmVnLCBfYWJjb2xsCisgICAgaW1wb3J0IGNvcHlyZWcKKyAgICBpbXBvcnQgY29sbGVjdGlvbnMuYWJjCiAKICAgICBpZiBub3QgaGFzYXR0cihzeXMsICdnZXR0b3RhbHJlZmNvdW50Jyk6CiAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiVHJhY2tpbmcgcmVmZXJlbmNlIGxlYWtzIHJlcXVpcmVzIGEgZGVidWcgYnVpbGQgIgpAQCAtMTE5Myw3ICsxMzM2LDcgQEAKICAgICBlbHNlOgogICAgICAgICB6ZGMgPSB6aXBpbXBvcnQuX3ppcF9kaXJlY3RvcnlfY2FjaGUuY29weSgpCiAgICAgYWJjcyA9IHt9Ci0gICAgZm9yIGFiYyBpbiBbZ2V0YXR0cihfYWJjb2xsLCBhKSBmb3IgYSBpbiBfYWJjb2xsLl9fYWxsX19dOgorICAgIGZvciBhYmMgaW4gW2dldGF0dHIoY29sbGVjdGlvbnMuYWJjLCBhKSBmb3IgYSBpbiBjb2xsZWN0aW9ucy5hYmMuX19hbGxfX106CiAgICAgICAgIGlmIG5vdCBpc2Fic3RyYWN0KGFiYyk6CiAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICBmb3Igb2JqIGluIGFiYy5fX3N1YmNsYXNzZXNfXygpICsgW2FiY106CkBAIC0xMjM5LDcgKzEzODIsNyBAQAogICAgIGltcG9ydCBnYywgY29weXJlZwogICAgIGltcG9ydCBfc3RycHRpbWUsIGxpbmVjYWNoZQogICAgIGltcG9ydCB1cmxsaWIucGFyc2UsIHVybGxpYi5yZXF1ZXN0LCBtaW1ldHlwZXMsIGRvY3Rlc3QKLSAgICBpbXBvcnQgc3RydWN0LCBmaWxlY21wLCBfYWJjb2xsCisgICAgaW1wb3J0IHN0cnVjdCwgZmlsZWNtcCwgY29sbGVjdGlvbnMuYWJjCiAgICAgZnJvbSBkaXN0dXRpbHMuZGlyX3V0aWwgaW1wb3J0IF9wYXRoX2NyZWF0ZWQKICAgICBmcm9tIHdlYWtyZWYgaW1wb3J0IFdlYWtTZXQKIApAQCAtMTI2Niw3ICsxNDA5LDcgQEAKICAgICBzeXMuX2NsZWFyX3R5cGVfY2FjaGUoKQogCiAgICAgIyBDbGVhciBBQkMgcmVnaXN0cmllcywgcmVzdG9yaW5nIHByZXZpb3VzbHkgc2F2ZWQgQUJDIHJlZ2lzdHJpZXMuCi0gICAgZm9yIGFiYyBpbiBbZ2V0YXR0cihfYWJjb2xsLCBhKSBmb3IgYSBpbiBfYWJjb2xsLl9fYWxsX19dOgorICAgIGZvciBhYmMgaW4gW2dldGF0dHIoY29sbGVjdGlvbnMuYWJjLCBhKSBmb3IgYSBpbiBjb2xsZWN0aW9ucy5hYmMuX19hbGxfX106CiAgICAgICAgIGlmIG5vdCBpc2Fic3RyYWN0KGFiYyk6CiAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICBmb3Igb2JqIGluIGFiYy5fX3N1YmNsYXNzZXNfXygpICsgW2FiY106CkBAIC0xMzUyLDEzICsxNDk1LDE0IEBACiAjIFRlc3RzIHRoYXQgYXJlIGV4cGVjdGVkIHRvIGJlIHNraXBwZWQgZXZlcnl3aGVyZSBleGNlcHQgb24gb25lIHBsYXRmb3JtCiAjIGFyZSBhbHNvIGhhbmRsZWQgc2VwYXJhdGVseS4KIAotX2V4cGVjdGF0aW9ucyA9IHsKLSAgICAnd2luMzInOgorX2V4cGVjdGF0aW9ucyA9ICgKKyAgICAoJ3dpbjMyJywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfX2xvY2FsZQogICAgICAgICB0ZXN0X2NyeXB0CiAgICAgICAgIHRlc3RfY3Vyc2VzCiAgICAgICAgIHRlc3RfZGJtCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2ZjbnRsCiAgICAgICAgIHRlc3RfZm9yazEKICAgICAgICAgdGVzdF9lcG9sbApAQCAtMTM4MSwxNSArMTUyNSwxNiBAQAogICAgICAgICB0ZXN0X3RocmVhZHNpZ25hbHMKICAgICAgICAgdGVzdF93YWl0MwogICAgICAgICB0ZXN0X3dhaXQ0Ci0gICAgICAgICIiIiwKLSAgICAnbGludXgyJzoKKyAgICAgICAgIiIiKSwKKyAgICAoJ2xpbnV4JywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfY3Vyc2VzCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2xhcmdlZmlsZQogICAgICAgICB0ZXN0X2txdWV1ZQogICAgICAgICB0ZXN0X29zc2F1ZGlvZGV2Ci0gICAgICAgICIiIiwKLSAgICAndW5peHdhcmU3JzoKKyAgICAgICAgIiIiKSwKKyAgICAoJ3VuaXh3YXJlJywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfZXBvbGwKICAgICAgICAgdGVzdF9sYXJnZWZpbGUKQEAgLTEzOTksOCArMTU0NCw4IEBACiAgICAgICAgIHRlc3RfcHlleHBhdAogICAgICAgICB0ZXN0X3NheAogICAgICAgICB0ZXN0X3N1bmRyeQotICAgICAgICAiIiIsCi0gICAgJ29wZW51bml4OCc6CisgICAgICAgICIiIiksCisgICAgKCdvcGVudW5peCcsCiAgICAgICAgICIiIgogICAgICAgICB0ZXN0X2Vwb2xsCiAgICAgICAgIHRlc3RfbGFyZ2VmaWxlCkBAIC0xNDEwLDggKzE1NTUsOCBAQAogICAgICAgICB0ZXN0X3B5ZXhwYXQKICAgICAgICAgdGVzdF9zYXgKICAgICAgICAgdGVzdF9zdW5kcnkKLSAgICAgICAgIiIiLAotICAgICdzY29fc3YzJzoKKyAgICAgICAgIiIiKSwKKyAgICAoJ3Njb19zdicsCiAgICAgICAgICIiIgogICAgICAgICB0ZXN0X2FzeW5jaGF0CiAgICAgICAgIHRlc3RfZm9yazEKQEAgLTE0MzAsMTEgKzE1NzUsMTIgQEAKICAgICAgICAgdGVzdF90aHJlYWRlZF9pbXBvcnQKICAgICAgICAgdGVzdF90aHJlYWRlZHRlbXBmaWxlCiAgICAgICAgIHRlc3RfdGhyZWFkaW5nCi0gICAgICAgICIiIiwKLSAgICAnZGFyd2luJzoKKyAgICAgICAgIiIiKSwKKyAgICAoJ2RhcndpbicsCiAgICAgICAgICIiIgogICAgICAgICB0ZXN0X19sb2NhbGUKICAgICAgICAgdGVzdF9jdXJzZXMKKyAgICAgICAgdGVzdF9kZXZwb2xsCiAgICAgICAgIHRlc3RfZXBvbGwKICAgICAgICAgdGVzdF9kYm1fZ251CiAgICAgICAgIHRlc3RfZ2RiCkBAIC0xNDQzLDggKzE1ODksOCBAQAogICAgICAgICB0ZXN0X21pbmlkb20KICAgICAgICAgdGVzdF9vc3NhdWRpb2RldgogICAgICAgICB0ZXN0X3BvbGwKLSAgICAgICAgIiIiLAotICAgICdzdW5vczUnOgorICAgICAgICAiIiIpLAorICAgICgnc3Vub3MnLAogICAgICAgICAiIiIKICAgICAgICAgdGVzdF9jdXJzZXMKICAgICAgICAgdGVzdF9kYm0KQEAgLTE0NTUsOCArMTYwMSw4IEBACiAgICAgICAgIHRlc3Rfb3BlbnB0eQogICAgICAgICB0ZXN0X3ppcGZpbGUKICAgICAgICAgdGVzdF96bGliCi0gICAgICAgICIiIiwKLSAgICAnaHAtdXgxMSc6CisgICAgICAgICIiIiksCisgICAgKCdocC11eCcsCiAgICAgICAgICIiIgogICAgICAgICB0ZXN0X2N1cnNlcwogICAgICAgICB0ZXN0X2Vwb2xsCkBAIC0xNDcxLDExICsxNjE3LDEyIEBACiAgICAgICAgIHRlc3Rfc2F4CiAgICAgICAgIHRlc3RfemlwZmlsZQogICAgICAgICB0ZXN0X3psaWIKLSAgICAgICAgIiIiLAotICAgICdjeWd3aW4nOgorICAgICAgICAiIiIpLAorICAgICgnY3lnd2luJywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfY3Vyc2VzCiAgICAgICAgIHRlc3RfZGJtCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2Vwb2xsCiAgICAgICAgIHRlc3RfaW9jdGwKICAgICAgICAgdGVzdF9rcXVldWUKQEAgLTE0ODMsOCArMTYzMCw4IEBACiAgICAgICAgIHRlc3RfbG9jYWxlCiAgICAgICAgIHRlc3Rfb3NzYXVkaW9kZXYKICAgICAgICAgdGVzdF9zb2NrZXRzZXJ2ZXIKLSAgICAgICAgIiIiLAotICAgICdvczJlbXgnOgorICAgICAgICAiIiIpLAorICAgICgnb3MyZW14JywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfYXVkaW9vcAogICAgICAgICB0ZXN0X2N1cnNlcwpAQCAtMTQ5Nyw5ICsxNjQ0LDEwIEBACiAgICAgICAgIHRlc3RfcHR5CiAgICAgICAgIHRlc3RfcmVzb3VyY2UKICAgICAgICAgdGVzdF9zaWduYWwKLSAgICAgICAgIiIiLAotICAgICdmcmVlYnNkNCc6CisgICAgICAgICIiIiksCisgICAgKCdmcmVlYnNkJywKICAgICAgICAgIiIiCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2Vwb2xsCiAgICAgICAgIHRlc3RfZGJtX2dudQogICAgICAgICB0ZXN0X2xvY2FsZQpAQCAtMTUxNCw4ICsxNjYyLDggQEAKICAgICAgICAgdGVzdF90aW1lb3V0CiAgICAgICAgIHRlc3RfdXJsbGlibmV0CiAgICAgICAgIHRlc3RfbXVsdGlwcm9jZXNzaW5nCi0gICAgICAgICIiIiwKLSAgICAnYWl4NSc6CisgICAgICAgICIiIiksCisgICAgKCdhaXgnLAogICAgICAgICAiIiIKICAgICAgICAgdGVzdF9iejIKICAgICAgICAgdGVzdF9lcG9sbApAQCAtMTUyOSwxMCArMTY3NywxMSBAQAogICAgICAgICB0ZXN0X3R0a190ZXh0b25seQogICAgICAgICB0ZXN0X3ppcGltcG9ydAogICAgICAgICB0ZXN0X3psaWIKLSAgICAgICAgIiIiLAotICAgICdvcGVuYnNkMyc6CisgICAgICAgICIiIiksCisgICAgKCdvcGVuYnNkJywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfY3R5cGVzCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2Vwb2xsCiAgICAgICAgIHRlc3RfZGJtX2dudQogICAgICAgICB0ZXN0X2xvY2FsZQpAQCAtMTU0NCwxMSArMTY5MywxMiBAQAogICAgICAgICB0ZXN0X3R0a19ndWlvbmx5CiAgICAgICAgIHRlc3RfdHRrX3RleHRvbmx5CiAgICAgICAgIHRlc3RfbXVsdGlwcm9jZXNzaW5nCi0gICAgICAgICIiIiwKLSAgICAnbmV0YnNkMyc6CisgICAgICAgICIiIiksCisgICAgKCduZXRic2QnLAogICAgICAgICAiIiIKICAgICAgICAgdGVzdF9jdHlwZXMKICAgICAgICAgdGVzdF9jdXJzZXMKKyAgICAgICAgdGVzdF9kZXZwb2xsCiAgICAgICAgIHRlc3RfZXBvbGwKICAgICAgICAgdGVzdF9kYm1fZ251CiAgICAgICAgIHRlc3RfbG9jYWxlCkBAIC0xNTU5LDEyICsxNzA5LDggQEAKICAgICAgICAgdGVzdF90dGtfZ3Vpb25seQogICAgICAgICB0ZXN0X3R0a190ZXh0b25seQogICAgICAgICB0ZXN0X211bHRpcHJvY2Vzc2luZwotICAgICAgICAiIiIsCi19Ci1fZXhwZWN0YXRpb25zWydmcmVlYnNkNSddID0gX2V4cGVjdGF0aW9uc1snZnJlZWJzZDQnXQotX2V4cGVjdGF0aW9uc1snZnJlZWJzZDYnXSA9IF9leHBlY3RhdGlvbnNbJ2ZyZWVic2Q0J10KLV9leHBlY3RhdGlvbnNbJ2ZyZWVic2Q3J10gPSBfZXhwZWN0YXRpb25zWydmcmVlYnNkNCddCi1fZXhwZWN0YXRpb25zWydmcmVlYnNkOCddID0gX2V4cGVjdGF0aW9uc1snZnJlZWJzZDQnXQorICAgICAgICAiIiIpLAorKQogCiBjbGFzcyBfRXhwZWN0ZWRTa2lwczoKICAgICBkZWYgX19pbml0X18oc2VsZik6CkBAIC0xNTcyLDkgKzE3MTgsMTMgQEAKICAgICAgICAgZnJvbSB0ZXN0IGltcG9ydCB0ZXN0X3RpbWVvdXQKIAogICAgICAgICBzZWxmLnZhbGlkID0gRmFsc2UKLSAgICAgICAgaWYgc3lzLnBsYXRmb3JtIGluIF9leHBlY3RhdGlvbnM6Ci0gICAgICAgICAgICBzID0gX2V4cGVjdGF0aW9uc1tzeXMucGxhdGZvcm1dCi0gICAgICAgICAgICBzZWxmLmV4cGVjdGVkID0gc2V0KHMuc3BsaXQoKSkKKyAgICAgICAgZXhwZWN0ZWQgPSBOb25lCisgICAgICAgIGZvciBpdGVtIGluIF9leHBlY3RhdGlvbnM6CisgICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aChpdGVtWzBdKToKKyAgICAgICAgICAgICAgICBleHBlY3RlZCA9IGl0ZW1bMV0KKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICBpZiBleHBlY3RlZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuZXhwZWN0ZWQgPSBzZXQoZXhwZWN0ZWQuc3BsaXQoKSkKIAogICAgICAgICAgICAgIyBUaGVzZSBhcmUgYnJva2VuIHRlc3RzLCBmb3Igbm93IHNraXBwZWQgb24gZXZlcnkgcGxhdGZvcm0uCiAgICAgICAgICAgICAjIFhYWCBGaXggdGhlc2UhCkBAIC0xNjM0LDkgKzE3ODQsOCBAQAogICAgICAgICBURU1QRElSID0gb3MucGF0aC5hYnNwYXRoKFRFTVBESVIpCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIG9zLm1rZGlyKFRFTVBESVIpCi0gICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6Ci0gICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVFWElTVDoKLSAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBleGNlcHQgRmlsZUV4aXN0c0Vycm9yOgorICAgICAgICAgICAgcGFzcwogCiAgICAgIyBEZWZpbmUgYSB3cml0YWJsZSB0ZW1wIGRpciB0aGF0IHdpbGwgYmUgdXNlZCBhcyBjd2Qgd2hpbGUgcnVubmluZwogICAgICMgdGhlIHRlc3RzLiBUaGUgbmFtZSBvZiB0aGUgZGlyIGluY2x1ZGVzIHRoZSBwaWQgdG8gYWxsb3cgcGFyYWxsZWwKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3NjcmlwdF9oZWxwZXIucHkgYi9MaWIvdGVzdC9zY3JpcHRfaGVscGVyLnB5CmluZGV4IGJhNDQ2Y2QuLjEwYWRhNmQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3NjcmlwdF9oZWxwZXIucHkKKysrIGIvTGliL3Rlc3Qvc2NyaXB0X2hlbHBlci5weQpAQCAtNTksMTEgKzU5LDEyIEBACiAgICAgIiIiCiAgICAgcmV0dXJuIF9hc3NlcnRfcHl0aG9uKEZhbHNlLCAqYXJncywgKiplbnZfdmFycykKIAotZGVmIHNwYXduX3B5dGhvbigqYXJncyk6CitkZWYgc3Bhd25fcHl0aG9uKCphcmdzLCAqKmt3KToKICAgICBjbWRfbGluZSA9IFtzeXMuZXhlY3V0YWJsZSwgJy1FJ10KICAgICBjbWRfbGluZS5leHRlbmQoYXJncykKICAgICByZXR1cm4gc3VicHJvY2Vzcy5Qb3BlbihjbWRfbGluZSwgc3RkaW49c3VicHJvY2Vzcy5QSVBFLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGVycj1zdWJwcm9jZXNzLlNURE9VVCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLCBzdGRlcnI9c3VicHJvY2Vzcy5TVERPVVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiprdykKIAogZGVmIGtpbGxfcHl0aG9uKHApOgogICAgIHAuc3RkaW4uY2xvc2UoKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3Qvc3NsX2tleS5wYXNzd2QucGVtIGIvTGliL3Rlc3Qvc3NsX2tleS5wYXNzd2QucGVtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1MjQ2NzIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC9zc2xfa2V5LnBhc3N3ZC5wZW0KQEAgLTAsMCArMSwxOCBAQAorLS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQorUHJvYy1UeXBlOiA0LEVOQ1JZUFRFRAorREVLLUluZm86IERFUy1FREUzLUNCQywxQThEOUQyQTAyRUM2OThBCisKK2tKWWJmWjhMMHNmZTlPdHkzZ3cwYWxvTm5ZNUU4ZmVnUmZRTFpsTm94VGw2ak50MG5Jd0k4a0RKMzZDWmdSOWMKK3UzRkRKbS9LcXJmVW96OHZXK3FFbldoU0c3UVBYMndXR1BIZDRLOTRZei9GZ3JSelowRG9LN1h4WHE5Z090VkEKK0FWR1FobnozMnArNldoZkdzQ3I5QXJYRXdSWnJUay9GdnpFUGFVNWZIY29Ta3JOVkFHWDhJcFNWa1NEd0VEUXIKK0d2MTcrY2ZrOTlVVjFPQ3phNnlLSG9Ga1R0ckMrUFpVNzFMb21CYWJpdlMyT2M0QjloWXVTUjJoRjAxd1RIUCsKK1lsV05hZ1pPT1Z0Tno0b0tLOXg5ZU5RcG1mUVhRdlBQVGZ1c2V4S0liS2Zack12Sm94Y20xZ2ZjWjBIL3dLNlAKKzZ3bVhTRzM1cU1PT3p0Q1pOdHBlcmpzMXd6RUJYem55SzhRbUxjQUpCamtmYXJBQkpYOXZCRXpaVjBPVUtoeSsKK25vT1JGd0hUbGxwaGJteWRMaHU2ZWhMVVpNSFBoekFTNVVON3NydHBTTjgxZWVyRE15MFJNVUF3QTcvUG9mWDEKKzk0TWU4NVE4alAwUEM5RVRkc0pjUHFMekFQRVRFWXUwRUxld0tSY3JkeVdpK3RsTEZycEU1S1QvczVlY2JsOWwKKzdCNjFVNEtmZDFQSVhjL3NpSU5oVTNBM2JZSys4NDVZeVVBclVPbktmMWtFb3g3cDFScEQ3eUZxVlQwNGxSVG8KK2NpYk5LQVRCdXNYU3VCcnAyRzZHTnVoV0VPU2FmV0NLSlFBemdDWUlwNlpUVjJraGhNVUdwcGMvMkgzQ0Y2Y08KK3pYMEt0bFBWWkM3aExrQjZIVDhTeFlVd0YxenFXWTcrL1hQUGRjMzdNZUVaODdRM1V1WndxT1JMWStaMGhwZ3QKK0w1SlhCQ29rbFpoQ0FhTjJHcXdGTFh0R2lSU1JGR1k3eFhJaGJEVGxFNjVXdjFXR0dnRExNS0dFMWdPejN5QW8KKzJqakcxK3lBSEpVZEU2OVhURkhTcVNrdmFsb0ExVzAzTGRNWFo5VnVRSi95U1hDaWU2QUJBUT09CistLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3Qvc3NsX3NlcnZlcnMucHkgYi9MaWIvdGVzdC9zc2xfc2VydmVycy5weQppbmRleCA3N2MwNTQyLi44Njg2MTUzIDEwMDY0NAotLS0gYS9MaWIvdGVzdC9zc2xfc2VydmVycy5weQorKysgYi9MaWIvdGVzdC9zc2xfc2VydmVycy5weQpAQCAtOTQsNyArOTQsMTIgQEAKICAgICAgICAgIiIiU2VydmUgYSBHRVQgcmVxdWVzdC4iIiIKICAgICAgICAgc29jayA9IHNlbGYucmZpbGUucmF3Ll9zb2NrCiAgICAgICAgIGNvbnRleHQgPSBzb2NrLmNvbnRleHQKLSAgICAgICAgYm9keSA9IHBwcmludC5wZm9ybWF0KGNvbnRleHQuc2Vzc2lvbl9zdGF0cygpKQorICAgICAgICBzdGF0cyA9IHsKKyAgICAgICAgICAgICdzZXNzaW9uX2NhY2hlJzogY29udGV4dC5zZXNzaW9uX3N0YXRzKCksCisgICAgICAgICAgICAnY2lwaGVyJzogc29jay5jaXBoZXIoKSwKKyAgICAgICAgICAgICdjb21wcmVzc2lvbic6IHNvY2suY29tcHJlc3Npb24oKSwKKyAgICAgICAgICAgIH0KKyAgICAgICAgYm9keSA9IHBwcmludC5wZm9ybWF0KHN0YXRzKQogICAgICAgICBib2R5ID0gYm9keS5lbmNvZGUoJ3V0Zi04JykKICAgICAgICAgc2VsZi5zZW5kX3Jlc3BvbnNlKDIwMCkKICAgICAgICAgc2VsZi5zZW5kX2hlYWRlcigiQ29udGVudC10eXBlIiwgInRleHQvcGxhaW47IGNoYXJzZXQ9dXRmLTgiKQpAQCAtMTcyLDYgKzE3NywxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uPSdzdG9yZV9mYWxzZScsIGhlbHA9J2JlIGxlc3MgdmVyYm9zZScpCiAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLXMnLCAnLS1zdGF0cycsIGRlc3Q9J3VzZV9zdGF0c19oYW5kbGVyJywgZGVmYXVsdD1GYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbj0nc3RvcmVfdHJ1ZScsIGhlbHA9J2Fsd2F5cyByZXR1cm4gc3RhdHMgcGFnZScpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1jdXJ2ZS1uYW1lJywgZGVzdD0nY3VydmVfbmFtZScsIHR5cGU9c3RyLAorICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uPSdzdG9yZScsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdjdXJ2ZSBuYW1lIGZvciBFQy1iYXNlZCBEaWZmaWUtSGVsbG1hbicpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1kaCcsIGRlc3Q9J2RoX2ZpbGUnLCB0eXBlPXN0ciwgYWN0aW9uPSdzdG9yZScsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdQRU0gZmlsZSBjb250YWluaW5nIERIIHBhcmFtZXRlcnMnKQogICAgIGFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCiAKICAgICBzdXBwb3J0LnZlcmJvc2UgPSBhcmdzLnZlcmJvc2UKQEAgLTE4Miw2ICsxOTIsMTAgQEAKICAgICAgICAgaGFuZGxlcl9jbGFzcy5yb290ID0gb3MuZ2V0Y3dkKCkKICAgICBjb250ZXh0ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQogICAgIGNvbnRleHQubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFKQorICAgIGlmIGFyZ3MuY3VydmVfbmFtZToKKyAgICAgICAgY29udGV4dC5zZXRfZWNkaF9jdXJ2ZShhcmdzLmN1cnZlX25hbWUpCisgICAgaWYgYXJncy5kaF9maWxlOgorICAgICAgICBjb250ZXh0LmxvYWRfZGhfcGFyYW1zKGFyZ3MuZGhfZmlsZSkKIAogICAgIHNlcnZlciA9IEhUVFBTU2VydmVyKCgiIiwgYXJncy5wb3J0KSwgaGFuZGxlcl9jbGFzcywgY29udGV4dCkKICAgICBpZiBhcmdzLnZlcmJvc2U6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC9zdHJpbmdfdGVzdHMucHkgYi9MaWIvdGVzdC9zdHJpbmdfdGVzdHMucHkKaW5kZXggZDc5MjUyOS4uYjcyNDZlYiAxMDA2NDQKLS0tIGEvTGliL3Rlc3Qvc3RyaW5nX3Rlc3RzLnB5CisrKyBiL0xpYi90ZXN0L3N0cmluZ190ZXN0cy5weQpAQCAtMjgsNiArMjgsMTEgQEAKICAgICAjIENoYW5nZSBpbiBzdWJjbGFzc2VzIHRvIGNoYW5nZSB0aGUgYmVoYXZpb3VyIG9mIGZpeHRlc3R0eXBlKCkKICAgICB0eXBlMnRlc3QgPSBOb25lCiAKKyAgICAjIFdoZXRoZXIgdGhlICJjb250YWluZWQgaXRlbXMiIG9mIHRoZSBjb250YWluZXIgYXJlIGludGVnZXJzIGluCisgICAgIyByYW5nZSgwLCAyNTYpIChpLmUuIGJ5dGVzLCBieXRlYXJyYXkpIG9yIHN0cmluZ3Mgb2YgbGVuZ3RoIDEKKyAgICAjIChzdHIpCisgICAgY29udGFpbnNfYnl0ZXMgPSBGYWxzZQorCiAgICAgIyBBbGwgdGVzdHMgcGFzcyB0aGVpciBhcmd1bWVudHMgdG8gdGhlIHRlc3RpbmcgbWV0aG9kcwogICAgICMgYXMgc3RyIG9iamVjdHMuIGZpeHRlc3R0eXBlKCkgY2FuIGJlIHVzZWQgdG8gcHJvcGFnYXRlCiAgICAgIyB0aGVzZSBhcmd1bWVudHMgdG8gdGhlIGFwcHJvcHJpYXRlIHR5cGUKQEAgLTQ3LDExICs1MiwxMiBAQAogICAgICAgICAgICAgcmV0dXJuIG9iagogCiAgICAgIyBjaGVjayB0aGF0IG9iai5tZXRob2QoKmFyZ3MpIHJldHVybnMgcmVzdWx0Ci0gICAgZGVmIGNoZWNrZXF1YWwoc2VsZiwgcmVzdWx0LCBvYmosIG1ldGhvZG5hbWUsICphcmdzKToKKyAgICBkZWYgY2hlY2tlcXVhbChzZWxmLCByZXN1bHQsIG9iaiwgbWV0aG9kbmFtZSwgKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgcmVzdWx0ID0gc2VsZi5maXh0eXBlKHJlc3VsdCkKICAgICAgICAgb2JqID0gc2VsZi5maXh0eXBlKG9iaikKICAgICAgICAgYXJncyA9IHNlbGYuZml4dHlwZShhcmdzKQotICAgICAgICByZWFscmVzdWx0ID0gZ2V0YXR0cihvYmosIG1ldGhvZG5hbWUpKCphcmdzKQorICAgICAgICBrd2FyZ3MgPSB7azogc2VsZi5maXh0eXBlKHYpIGZvciBrLHYgaW4ga3dhcmdzLml0ZW1zKCl9CisgICAgICAgIHJlYWxyZXN1bHQgPSBnZXRhdHRyKG9iaiwgbWV0aG9kbmFtZSkoKmFyZ3MsICoqa3dhcmdzKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAgICAgICAgcmVzdWx0LAogICAgICAgICAgICAgcmVhbHJlc3VsdApAQCAtMTE2LDcgKzEyMiwxMSBAQAogICAgICAgICBzZWxmLmNoZWNrZXF1YWwoMCwgJycsICdjb3VudCcsICd4eCcsIHN5cy5tYXhzaXplLCAwKQogCiAgICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAnY291bnQnKQotICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFR5cGVFcnJvciwgJ2hlbGxvJywgJ2NvdW50JywgNDIpCisKKyAgICAgICAgaWYgc2VsZi5jb250YWluc19ieXRlczoKKyAgICAgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgwLCAnaGVsbG8nLCAnY291bnQnLCA0MikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAnY291bnQnLCA0MikKIAogICAgICAgICAjIEZvciBhIHZhcmlldHkgb2YgY29tYmluYXRpb25zLAogICAgICAgICAjICAgIHZlcmlmeSB0aGF0IHN0ci5jb3VudCgpIG1hdGNoZXMgYW4gZXF1aXZhbGVudCBmdW5jdGlvbgpAQCAtMTYyLDcgKzE3MiwxMSBAQAogICAgICAgICBzZWxmLmNoZWNrZXF1YWwoIDIsICdycmFycnJycnJycnJhJywgJ2ZpbmQnLCAnYScsIE5vbmUsIDYpCiAKICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdmaW5kJykKLSAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdmaW5kJywgNDIpCisKKyAgICAgICAgaWYgc2VsZi5jb250YWluc19ieXRlczoKKyAgICAgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgtMSwgJ2hlbGxvJywgJ2ZpbmQnLCA0MikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAnZmluZCcsIDQyKQogCiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgwLCAnJywgJ2ZpbmQnLCAnJykKICAgICAgICAgc2VsZi5jaGVja2VxdWFsKC0xLCAnJywgJ2ZpbmQnLCAnJywgMSwgMSkKQEAgLTIxNiw3ICsyMzAsMTEgQEAKICAgICAgICAgc2VsZi5jaGVja2VxdWFsKCAyLCAncnJhcnJycnJycnJyYScsICdyZmluZCcsICdhJywgTm9uZSwgNikKIAogICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFR5cGVFcnJvciwgJ2hlbGxvJywgJ3JmaW5kJykKLSAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdyZmluZCcsIDQyKQorCisgICAgICAgIGlmIHNlbGYuY29udGFpbnNfYnl0ZXM6CisgICAgICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdoZWxsbycsICdyZmluZCcsIDQyKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdyZmluZCcsIDQyKQogCiAgICAgICAgICMgRm9yIGEgdmFyaWV0eSBvZiBjb21iaW5hdGlvbnMsCiAgICAgICAgICMgICAgdmVyaWZ5IHRoYXQgc3RyLnJmaW5kKCkgbWF0Y2hlcyBfX2NvbnRhaW5zX18KQEAgLTI2Myw3ICsyODEsMTEgQEAKICAgICAgICAgc2VsZi5jaGVja2VxdWFsKCAyLCAncnJhcnJycnJycnJyYScsICdpbmRleCcsICdhJywgTm9uZSwgNikKIAogICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFR5cGVFcnJvciwgJ2hlbGxvJywgJ2luZGV4JykKLSAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdpbmRleCcsIDQyKQorCisgICAgICAgIGlmIHNlbGYuY29udGFpbnNfYnl0ZXM6CisgICAgICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFZhbHVlRXJyb3IsICdoZWxsbycsICdpbmRleCcsIDQyKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdpbmRleCcsIDQyKQogCiAgICAgZGVmIHRlc3RfcmluZGV4KHNlbGYpOgogICAgICAgICBzZWxmLmNoZWNrZXF1YWwoMTIsICdhYmNkZWZnaGlhYmMnLCAncmluZGV4JywgJycpCkBAIC0yODUsNyArMzA3LDExIEBACiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbCggMiwgJ3JyYXJycnJycnJycmEnLCAncmluZGV4JywgJ2EnLCBOb25lLCA2KQogCiAgICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAncmluZGV4JykKLSAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdyaW5kZXgnLCA0MikKKworICAgICAgICBpZiBzZWxmLmNvbnRhaW5zX2J5dGVzOgorICAgICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhWYWx1ZUVycm9yLCAnaGVsbG8nLCAncmluZGV4JywgNDIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFR5cGVFcnJvciwgJ2hlbGxvJywgJ3JpbmRleCcsIDQyKQogCiAgICAgZGVmIHRlc3RfbG93ZXIoc2VsZik6CiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgnaGVsbG8nLCAnSGVMTG8nLCAnbG93ZXInKQpAQCAtMzYzLDYgKzM4OSwxNyBAQAogICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWydhJ10qMTggKyBbJ2FCTEFIYSddLCAoJ2FCTEFIJyoyMClbOi00XSwKICAgICAgICAgICAgICAgICAgICAgICAgICdzcGxpdCcsICdCTEFIJywgMTgpCiAKKyAgICAgICAgIyB3aXRoIGtleXdvcmQgYXJncworICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWydhJywgJ2InLCAnYycsICdkJ10sICdhfGJ8Y3xkJywgJ3NwbGl0Jywgc2VwPSd8JykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnYScsICdifGN8ZCddLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2F8YnxjfGQnLCAnc3BsaXQnLCAnfCcsIG1heHNwbGl0PTEpCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbChbJ2EnLCAnYnxjfGQnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICdhfGJ8Y3xkJywgJ3NwbGl0Jywgc2VwPSd8JywgbWF4c3BsaXQ9MSkKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnYScsICdifGN8ZCddLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2F8YnxjfGQnLCAnc3BsaXQnLCBtYXhzcGxpdD0xLCBzZXA9J3wnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWydhJywgJ2IgYyBkJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAnYSBiIGMgZCcsICdzcGxpdCcsIG1heHNwbGl0PTEpCisKICAgICAgICAgIyBhcmd1bWVudCB0eXBlCiAgICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAnc3BsaXQnLCA0MiwgNDIsIDQyKQogCkBAIC00MjAsNiArNDU3LDE3IEBACiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbChbJ2FCTEFIYSddICsgWydhJ10qMTgsICgnYUJMQUgnKjIwKVs6LTRdLAogICAgICAgICAgICAgICAgICAgICAgICAgJ3JzcGxpdCcsICdCTEFIJywgMTgpCiAKKyAgICAgICAgIyB3aXRoIGtleXdvcmQgYXJncworICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWydhJywgJ2InLCAnYycsICdkJ10sICdhfGJ8Y3xkJywgJ3JzcGxpdCcsIHNlcD0nfCcpCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbChbJ2F8YnxjJywgJ2QnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICdhfGJ8Y3xkJywgJ3JzcGxpdCcsICd8JywgbWF4c3BsaXQ9MSkKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnYXxifGMnLCAnZCddLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2F8YnxjfGQnLCAncnNwbGl0Jywgc2VwPSd8JywgbWF4c3BsaXQ9MSkKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnYXxifGMnLCAnZCddLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2F8YnxjfGQnLCAncnNwbGl0JywgbWF4c3BsaXQ9MSwgc2VwPSd8JykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnYSBiIGMnLCAnZCddLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2EgYiBjIGQnLCAncnNwbGl0JywgbWF4c3BsaXQ9MSkKKwogICAgICAgICAjIGFyZ3VtZW50IHR5cGUKICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdyc3BsaXQnLCA0MiwgNDIsIDQyKQogCkBAIC02NDMsNyArNjkxLDcgQEAKIAogICAgICAgICAjIGNoZWNrIHRoYXQgdGl0bGVjYXNlZCBjaGFycyBhcmUgbG93ZXJlZCBjb3JyZWN0bHkKICAgICAgICAgIyBcdTFmZmMgaXMgdGhlIHRpdGxlY2FzZWQgY2hhcgotICAgICAgICBzZWxmLmNoZWNrZXF1YWwoJ1x1MWZmY1x1MWZmM1x1MWZmM1x1MWZmMycsCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgnXHUwM2E5XHUwMzk5XHUxZmYzXHUxZmYzXHUxZmYzJywKICAgICAgICAgICAgICAgICAgICAgICAgICdcdTFmZjNcdTFmZjNcdTFmZmNcdTFmZmMnLCAnY2FwaXRhbGl6ZScpCiAgICAgICAgICMgY2hlY2sgd2l0aCBjYXNlZCBub24tbGV0dGVyIGNoYXJzCiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgnXHUyNGM1XHUyNGU4XHUyNGUzXHUyNGQ3XHUyNGRlXHUyNGRkJywKQEAgLTkwOCw3ICs5NTYsMTQgQEAKICAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnYWJjJywgJ2RlZicsICdnaGknXSwgImFiY1xuZGVmXHJcbmdoaVxuIiwgJ3NwbGl0bGluZXMnKQogICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWydhYmMnLCAnZGVmJywgJ2doaScsICcnXSwgImFiY1xuZGVmXHJcbmdoaVxuXHIiLCAnc3BsaXRsaW5lcycpCiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbChbJycsICdhYmMnLCAnZGVmJywgJ2doaScsICcnXSwgIlxuYWJjXG5kZWZcclxuZ2hpXG5cciIsICdzcGxpdGxpbmVzJykKLSAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnXG4nLCAnYWJjXG4nLCAnZGVmXHJcbicsICdnaGlcbicsICdcciddLCAiXG5hYmNcbmRlZlxyXG5naGlcblxyIiwgJ3NwbGl0bGluZXMnLCAxKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWycnLCAnYWJjJywgJ2RlZicsICdnaGknLCAnJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAiXG5hYmNcbmRlZlxyXG5naGlcblxyIiwgJ3NwbGl0bGluZXMnLCBGYWxzZSkKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnXG4nLCAnYWJjXG4nLCAnZGVmXHJcbicsICdnaGlcbicsICdcciddLAorICAgICAgICAgICAgICAgICAgICAgICAgIlxuYWJjXG5kZWZcclxuZ2hpXG5cciIsICdzcGxpdGxpbmVzJywgVHJ1ZSkKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnJywgJ2FiYycsICdkZWYnLCAnZ2hpJywgJyddLCAiXG5hYmNcbmRlZlxyXG5naGlcblxyIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICdzcGxpdGxpbmVzJywga2VlcGVuZHM9RmFsc2UpCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbChbJ1xuJywgJ2FiY1xuJywgJ2RlZlxyXG4nLCAnZ2hpXG4nLCAnXHInXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJcbmFiY1xuZGVmXHJcbmdoaVxuXHIiLCAnc3BsaXRsaW5lcycsIGtlZXBlbmRzPVRydWUpCiAKICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdhYmMnLCAnc3BsaXRsaW5lcycsIDQyLCA0MikKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3Qvc3VwcG9ydC5weSBiL0xpYi90ZXN0L3N1cHBvcnQucHkKaW5kZXggMDFjZDIwMy4uYzM4NDIyMiAxMDA2NDQKLS0tIGEvTGliL3Rlc3Qvc3VwcG9ydC5weQorKysgYi9MaWIvdGVzdC9zdXBwb3J0LnB5CkBAIC0xNSw3ICsxNSw3IEBACiBpbXBvcnQgd2FybmluZ3MKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IGltcG9ydGxpYgotaW1wb3J0IGNvbGxlY3Rpb25zCitpbXBvcnQgY29sbGVjdGlvbnMuYWJjCiBpbXBvcnQgcmUKIGltcG9ydCBzdWJwcm9jZXNzCiBpbXBvcnQgaW1wCkBAIC0yMyw2ICsyMyw3IEBACiBpbXBvcnQgc3lzY29uZmlnCiBpbXBvcnQgZm5tYXRjaAogaW1wb3J0IGxvZ2dpbmcuaGFuZGxlcnMKK2ltcG9ydCBzdHJ1Y3QKIAogdHJ5OgogICAgIGltcG9ydCBfdGhyZWFkLCB0aHJlYWRpbmcKQEAgLTM0LDI2ICszNSwzOSBAQAogZXhjZXB0IEltcG9ydEVycm9yOgogICAgIG11bHRpcHJvY2Vzc2luZyA9IE5vbmUKIAordHJ5OgorICAgIGltcG9ydCBmYXVsdGhhbmRsZXIKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBmYXVsdGhhbmRsZXIgPSBOb25lCisKK3RyeToKKyAgICBpbXBvcnQgemxpYgorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHpsaWIgPSBOb25lCisKK3RyeToKKyAgICBpbXBvcnQgZmNudGwKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBmY250bCA9IE5vbmUKIAogX19hbGxfXyA9IFsKICAgICAiRXJyb3IiLCAiVGVzdEZhaWxlZCIsICJSZXNvdXJjZURlbmllZCIsICJpbXBvcnRfbW9kdWxlIiwKICAgICAidmVyYm9zZSIsICJ1c2VfcmVzb3VyY2VzIiwgIm1heF9tZW11c2UiLCAicmVjb3JkX29yaWdpbmFsX3N0ZG91dCIsCiAgICAgImdldF9vcmlnaW5hbF9zdGRvdXQiLCAidW5sb2FkIiwgInVubGluayIsICJybXRyZWUiLCAiZm9yZ2V0IiwKLSAgICAiaXNfcmVzb3VyY2VfZW5hYmxlZCIsICJyZXF1aXJlcyIsICJyZXF1aXJlc19tYWNfdmVyIiwKLSAgICAiZmluZF91bnVzZWRfcG9ydCIsICJiaW5kX3BvcnQiLAotICAgICJmY21wIiwgImlzX2p5dGhvbiIsICJURVNURk4iLCAiSE9TVCIsICJGVVpaIiwgIlNBVkVEQ1dEIiwgInRlbXBfY3dkIiwKLSAgICAiZmluZGZpbGUiLCAic29ydGRpY3QiLCAiY2hlY2tfc3ludGF4X2Vycm9yIiwgIm9wZW5fdXJscmVzb3VyY2UiLAotICAgICJjaGVja193YXJuaW5ncyIsICJDbGVhbkltcG9ydCIsICJFbnZpcm9ubWVudFZhckd1YXJkIiwKLSAgICAiVHJhbnNpZW50UmVzb3VyY2UiLCAiY2FwdHVyZWRfb3V0cHV0IiwgImNhcHR1cmVkX3N0ZG91dCIsCi0gICAgImNhcHR1cmVkX3N0ZGluIiwgImNhcHR1cmVkX3N0ZGVyciIsCi0gICAgInRpbWVfb3V0IiwgInNvY2tldF9wZWVyX3Jlc2V0IiwgImlvZXJyb3JfcGVlcl9yZXNldCIsCi0gICAgInJ1bl93aXRoX2xvY2FsZSIsICd0ZW1wX3VtYXNrJywgInRyYW5zaWVudF9pbnRlcm5ldCIsCi0gICAgInNldF9tZW1saW1pdCIsICJiaWdtZW10ZXN0IiwgImJpZ2FkZHJzcGFjZXRlc3QiLCAiQmFzaWNUZXN0UnVubmVyIiwKLSAgICAicnVuX3VuaXR0ZXN0IiwgInJ1bl9kb2N0ZXN0IiwgInRocmVhZGluZ19zZXR1cCIsICJ0aHJlYWRpbmdfY2xlYW51cCIsCi0gICAgInJlYXBfY2hpbGRyZW4iLCAiY3B5dGhvbl9vbmx5IiwgImNoZWNrX2ltcGxfZGV0YWlsIiwgImdldF9hdHRyaWJ1dGUiLAotICAgICJzd2FwX2l0ZW0iLCAic3dhcF9hdHRyIiwgInJlcXVpcmVzX0lFRUVfNzU0IiwKKyAgICAiaXNfcmVzb3VyY2VfZW5hYmxlZCIsICJyZXF1aXJlcyIsICJyZXF1aXJlc19mcmVlYnNkX3ZlcnNpb24iLAorICAgICJyZXF1aXJlc19saW51eF92ZXJzaW9uIiwgInJlcXVpcmVzX21hY192ZXIiLCAiZmluZF91bnVzZWRfcG9ydCIsICJiaW5kX3BvcnQiLAorICAgICJJUFY2X0VOQUJMRUQiLCAiaXNfanl0aG9uIiwgIlRFU1RGTiIsICJIT1NUIiwgIlNBVkVEQ1dEIiwgInRlbXBfY3dkIiwKKyAgICAiZmluZGZpbGUiLCAiY3JlYXRlX2VtcHR5X2ZpbGUiLCAic29ydGRpY3QiLCAiY2hlY2tfc3ludGF4X2Vycm9yIiwgIm9wZW5fdXJscmVzb3VyY2UiLAorICAgICJjaGVja193YXJuaW5ncyIsICJDbGVhbkltcG9ydCIsICJFbnZpcm9ubWVudFZhckd1YXJkIiwgIlRyYW5zaWVudFJlc291cmNlIiwKKyAgICAiY2FwdHVyZWRfc3Rkb3V0IiwgImNhcHR1cmVkX3N0ZGluIiwgImNhcHR1cmVkX3N0ZGVyciIsICJ0aW1lX291dCIsCisgICAgInNvY2tldF9wZWVyX3Jlc2V0IiwgImlvZXJyb3JfcGVlcl9yZXNldCIsICJydW5fd2l0aF9sb2NhbGUiLCAndGVtcF91bWFzaycsCisgICAgInRyYW5zaWVudF9pbnRlcm5ldCIsICJzZXRfbWVtbGltaXQiLCAiYmlnbWVtdGVzdCIsICJiaWdhZGRyc3BhY2V0ZXN0IiwKKyAgICAiQmFzaWNUZXN0UnVubmVyIiwgInJ1bl91bml0dGVzdCIsICJydW5fZG9jdGVzdCIsICJ0aHJlYWRpbmdfc2V0dXAiLAorICAgICJ0aHJlYWRpbmdfY2xlYW51cCIsICJyZWFwX2NoaWxkcmVuIiwgImNweXRob25fb25seSIsICJjaGVja19pbXBsX2RldGFpbCIsCisgICAgImdldF9hdHRyaWJ1dGUiLCAic3dhcF9pdGVtIiwgInN3YXBfYXR0ciIsICJyZXF1aXJlc19JRUVFXzc1NCIsCiAgICAgIlRlc3RIYW5kbGVyIiwgIk1hdGNoZXIiLCAiY2FuX3N5bWxpbmsiLCAic2tpcF91bmxlc3Nfc3ltbGluayIsCi0gICAgImltcG9ydF9mcmVzaF9tb2R1bGUiLCAiZmFpbGZhc3QiLAorICAgICJpbXBvcnRfZnJlc2hfbW9kdWxlIiwgInJlcXVpcmVzX3psaWIiLCAiUElQRV9NQVhfU0laRSIsICJmYWlsZmFzdCIsCisgICAgImFudGljaXBhdGVfZmFpbHVyZSIKICAgICBdCiAKIGNsYXNzIEVycm9yKEV4Y2VwdGlvbik6CkBAIC0xMjQsNiArMTM4LDE3IEBACiAgICAgcmV0dXJuIHNhdmVkCiAKIAorZGVmIGFudGljaXBhdGVfZmFpbHVyZShjb25kaXRpb24pOgorICAgICIiIkRlY29yYXRvciB0byBtYXJrIGEgdGVzdCB0aGF0IGlzIGtub3duIHRvIGJlIGJyb2tlbiBpbiBzb21lIGNhc2VzCisKKyAgICAgICBBbnkgdXNlIG9mIHRoaXMgZGVjb3JhdG9yIHNob3VsZCBoYXZlIGEgY29tbWVudCBpZGVudGlmeWluZyB0aGUKKyAgICAgICBhc3NvY2lhdGVkIHRyYWNrZXIgaXNzdWUuCisgICAgIiIiCisgICAgaWYgY29uZGl0aW9uOgorICAgICAgICByZXR1cm4gdW5pdHRlc3QuZXhwZWN0ZWRGYWlsdXJlCisgICAgcmV0dXJuIGxhbWJkYSBmOiBmCisKKwogZGVmIGltcG9ydF9mcmVzaF9tb2R1bGUobmFtZSwgZnJlc2g9KCksIGJsb2NrZWQ9KCksIGRlcHJlY2F0ZWQ9RmFsc2UpOgogICAgICIiIkltcG9ydHMgYW5kIHJldHVybnMgYSBtb2R1bGUsIGRlbGliZXJhdGVseSBieXBhc3NpbmcgdGhlIHN5cy5tb2R1bGVzIGNhY2hlCiAgICAgYW5kIGltcG9ydGluZyBhIGZyZXNoIGNvcHkgb2YgdGhlIG1vZHVsZS4gT25jZSB0aGUgaW1wb3J0IGlzIGNvbXBsZXRlLApAQCAtMTY3LDggKzE5Miw3IEBACiAgICAgdHJ5OgogICAgICAgICBhdHRyaWJ1dGUgPSBnZXRhdHRyKG9iaiwgbmFtZSkKICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6Ci0gICAgICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJtb2R1bGUgJXMgaGFzIG5vIGF0dHJpYnV0ZSAlcyIgJSAoCi0gICAgICAgICAgICBvYmouX19uYW1lX18sIG5hbWUpKQorICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgib2JqZWN0ICVyIGhhcyBubyBhdHRyaWJ1dGUgJXIiICUgKG9iaiwgbmFtZSkpCiAgICAgZWxzZToKICAgICAgICAgcmV0dXJuIGF0dHJpYnV0ZQogCkBAIC0yMDksOCArMjMzLDcgQEAKICAgICB0cnk6CiAgICAgICAgIHNodXRpbC5ybXRyZWUocGF0aCkKICAgICBleGNlcHQgT1NFcnJvciBhcyBlcnJvcjoKLSAgICAgICAgIyBVbml4IHJldHVybnMgRU5PRU5ULCBXaW5kb3dzIHJldHVybnMgRVNSQ0guCi0gICAgICAgIGlmIGVycm9yLmVycm5vIG5vdCBpbiAoZXJybm8uRU5PRU5ULCBlcnJuby5FU1JDSCk6CisgICAgICAgIGlmIGVycm9yLmVycm5vICE9IGVycm5vLkVOT0VOVDoKICAgICAgICAgICAgIHJhaXNlCiAKIGRlZiBtYWtlX2xlZ2FjeV9weWMoc291cmNlKToKQEAgLTI5NSw5ICszMTgsNTIgQEAKICAgICAgICAgcmV0dXJuCiAgICAgaWYgbm90IGlzX3Jlc291cmNlX2VuYWJsZWQocmVzb3VyY2UpOgogICAgICAgICBpZiBtc2cgaXMgTm9uZToKLSAgICAgICAgICAgIG1zZyA9ICJVc2Ugb2YgdGhlIGAlcycgcmVzb3VyY2Ugbm90IGVuYWJsZWQiICUgcmVzb3VyY2UKKyAgICAgICAgICAgIG1zZyA9ICJVc2Ugb2YgdGhlICVyIHJlc291cmNlIG5vdCBlbmFibGVkIiAlIHJlc291cmNlCiAgICAgICAgIHJhaXNlIFJlc291cmNlRGVuaWVkKG1zZykKIAorZGVmIF9yZXF1aXJlc191bml4X3ZlcnNpb24oc3lzbmFtZSwgbWluX3ZlcnNpb24pOgorICAgICIiIkRlY29yYXRvciByYWlzaW5nIFNraXBUZXN0IGlmIHRoZSBPUyBpcyBgc3lzbmFtZWAgYW5kIHRoZSB2ZXJzaW9uIGlzIGxlc3MKKyAgICB0aGFuIGBtaW5fdmVyc2lvbmAuCisKKyAgICBGb3IgZXhhbXBsZSwgQF9yZXF1aXJlc191bml4X3ZlcnNpb24oJ0ZyZWVCU0QnLCAoNywgMikpIHJhaXNlcyBTa2lwVGVzdCBpZgorICAgIHRoZSBGcmVlQlNEIHZlcnNpb24gaXMgbGVzcyB0aGFuIDcuMi4KKyAgICAiIiIKKyAgICBkZWYgZGVjb3JhdG9yKGZ1bmMpOgorICAgICAgICBAZnVuY3Rvb2xzLndyYXBzKGZ1bmMpCisgICAgICAgIGRlZiB3cmFwcGVyKCphcmdzLCAqKmt3KToKKyAgICAgICAgICAgIGlmIHBsYXRmb3JtLnN5c3RlbSgpID09IHN5c25hbWU6CisgICAgICAgICAgICAgICAgdmVyc2lvbl90eHQgPSBwbGF0Zm9ybS5yZWxlYXNlKCkuc3BsaXQoJy0nLCAxKVswXQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IHR1cGxlKG1hcChpbnQsIHZlcnNpb25fdHh0LnNwbGl0KCcuJykpKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgaWYgdmVyc2lvbiA8IG1pbl92ZXJzaW9uOgorICAgICAgICAgICAgICAgICAgICAgICAgbWluX3ZlcnNpb25fdHh0ID0gJy4nLmpvaW4obWFwKHN0ciwgbWluX3ZlcnNpb24pKQorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiVzIHZlcnNpb24gJXMgb3IgaGlnaGVyIHJlcXVpcmVkLCBub3QgJXMiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJSAoc3lzbmFtZSwgbWluX3ZlcnNpb25fdHh0LCB2ZXJzaW9uX3R4dCkpCisgICAgICAgIHJldHVybiB3cmFwcGVyCisgICAgcmV0dXJuIGRlY29yYXRvcgorCitkZWYgcmVxdWlyZXNfZnJlZWJzZF92ZXJzaW9uKCptaW5fdmVyc2lvbik6CisgICAgIiIiRGVjb3JhdG9yIHJhaXNpbmcgU2tpcFRlc3QgaWYgdGhlIE9TIGlzIEZyZWVCU0QgYW5kIHRoZSBGcmVlQlNEIHZlcnNpb24gaXMKKyAgICBsZXNzIHRoYW4gYG1pbl92ZXJzaW9uYC4KKworICAgIEZvciBleGFtcGxlLCBAcmVxdWlyZXNfZnJlZWJzZF92ZXJzaW9uKDcsIDIpIHJhaXNlcyBTa2lwVGVzdCBpZiB0aGUgRnJlZUJTRAorICAgIHZlcnNpb24gaXMgbGVzcyB0aGFuIDcuMi4KKyAgICAiIiIKKyAgICByZXR1cm4gX3JlcXVpcmVzX3VuaXhfdmVyc2lvbignRnJlZUJTRCcsIG1pbl92ZXJzaW9uKQorCitkZWYgcmVxdWlyZXNfbGludXhfdmVyc2lvbigqbWluX3ZlcnNpb24pOgorICAgICIiIkRlY29yYXRvciByYWlzaW5nIFNraXBUZXN0IGlmIHRoZSBPUyBpcyBMaW51eCBhbmQgdGhlIExpbnV4IHZlcnNpb24gaXMKKyAgICBsZXNzIHRoYW4gYG1pbl92ZXJzaW9uYC4KKworICAgIEZvciBleGFtcGxlLCBAcmVxdWlyZXNfbGludXhfdmVyc2lvbigyLCA2LCAzMikgcmFpc2VzIFNraXBUZXN0IGlmIHRoZSBMaW51eAorICAgIHZlcnNpb24gaXMgbGVzcyB0aGFuIDIuNi4zMi4KKyAgICAiIiIKKyAgICByZXR1cm4gX3JlcXVpcmVzX3VuaXhfdmVyc2lvbignTGludXgnLCBtaW5fdmVyc2lvbikKKwogZGVmIHJlcXVpcmVzX21hY192ZXIoKm1pbl92ZXJzaW9uKToKICAgICAiIiJEZWNvcmF0b3IgcmFpc2luZyBTa2lwVGVzdCBpZiB0aGUgT1MgaXMgTWFjIE9TIFggYW5kIHRoZSBPUyBYCiAgICAgdmVyc2lvbiBpZiBsZXNzIHRoYW4gbWluX3ZlcnNpb24uCkBAIC0zMjUsNiArMzkxLDcgQEAKICAgICAgICAgcmV0dXJuIHdyYXBwZXIKICAgICByZXR1cm4gZGVjb3JhdG9yCiAKKwogSE9TVCA9ICdsb2NhbGhvc3QnCiAKIGRlZiBmaW5kX3VudXNlZF9wb3J0KGZhbWlseT1zb2NrZXQuQUZfSU5FVCwgc29ja3R5cGU9c29ja2V0LlNPQ0tfU1RSRUFNKToKQEAgLTQyMCwyOSArNDg3LDM1IEBACiAgICAgcG9ydCA9IHNvY2suZ2V0c29ja25hbWUoKVsxXQogICAgIHJldHVybiBwb3J0CiAKLUZVWlogPSAxZS02Ci0KLWRlZiBmY21wKHgsIHkpOiAjIGZ1enp5IGNvbXBhcmlzb24gZnVuY3Rpb24KLSAgICBpZiBpc2luc3RhbmNlKHgsIGZsb2F0KSBvciBpc2luc3RhbmNlKHksIGZsb2F0KToKK2RlZiBfaXNfaXB2Nl9lbmFibGVkKCk6CisgICAgIiIiQ2hlY2sgd2hldGhlciBJUHY2IGlzIGVuYWJsZWQgb24gdGhpcyBob3N0LiIiIgorICAgIGlmIHNvY2tldC5oYXNfaXB2NjoKICAgICAgICAgdHJ5OgotICAgICAgICAgICAgZnV6eiA9IChhYnMoeCkgKyBhYnMoeSkpICogRlVaWgotICAgICAgICAgICAgaWYgYWJzKHgteSkgPD0gZnV6ejoKLSAgICAgICAgICAgICAgICByZXR1cm4gMAotICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVDYsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgICAgIHNvY2suYmluZCgoJzo6MScsIDApKQorICAgICAgICBleGNlcHQgKHNvY2tldC5lcnJvciwgc29ja2V0LmdhaWVycm9yKToKICAgICAgICAgICAgIHBhc3MKLSAgICBlbGlmIHR5cGUoeCkgPT0gdHlwZSh5KSBhbmQgaXNpbnN0YW5jZSh4LCAodHVwbGUsIGxpc3QpKToKLSAgICAgICAgZm9yIGkgaW4gcmFuZ2UobWluKGxlbih4KSwgbGVuKHkpKSk6Ci0gICAgICAgICAgICBvdXRjb21lID0gZmNtcCh4W2ldLCB5W2ldKQotICAgICAgICAgICAgaWYgb3V0Y29tZSAhPSAwOgotICAgICAgICAgICAgICAgIHJldHVybiBvdXRjb21lCi0gICAgICAgIHJldHVybiAobGVuKHgpID4gbGVuKHkpKSAtIChsZW4oeCkgPCBsZW4oeSkpCi0gICAgcmV0dXJuICh4ID4geSkgLSAoeCA8IHkpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzb2NrLmNsb3NlKCkKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgcmV0dXJuIEZhbHNlCisKK0lQVjZfRU5BQkxFRCA9IF9pc19pcHY2X2VuYWJsZWQoKQorCisKKyMgQSBjb25zdGFudCBsaWtlbHkgbGFyZ2VyIHRoYW4gdGhlIHVuZGVybHlpbmcgT1MgcGlwZSBidWZmZXIgc2l6ZS4KKyMgV2luZG93cyBsaW1pdCBzZWVtcyB0byBiZSBhcm91bmQgNTEyQiwgYW5kIG1vc3QgVW5peCBrZXJuZWxzIGhhdmUgYSA2NEsgcGlwZQorIyBidWZmZXIgc2l6ZTogdGFrZSAxTSB0byBiZSBzdXJlLgorUElQRV9NQVhfU0laRSA9IDEwMjQgKiAxMDI0CisKIAogIyBkZWNvcmF0b3IgZm9yIHNraXBwaW5nIHRlc3RzIG9uIG5vbi1JRUVFIDc1NCBwbGF0Zm9ybXMKIHJlcXVpcmVzX0lFRUVfNzU0ID0gdW5pdHRlc3Quc2tpcFVubGVzcygKICAgICBmbG9hdC5fX2dldGZvcm1hdF9fKCJkb3VibGUiKS5zdGFydHN3aXRoKCJJRUVFIiksCiAgICAgInRlc3QgcmVxdWlyZXMgSUVFRSA3NTQgZG91YmxlcyIpCiAKK3JlcXVpcmVzX3psaWIgPSB1bml0dGVzdC5za2lwVW5sZXNzKHpsaWIsICdyZXF1aXJlcyB6bGliJykKKwogaXNfanl0aG9uID0gc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ2phdmEnKQogCiAjIEZpbGVuYW1lIHVzZWQgZm9yIHRlc3RpbmcKQEAgLTU0MywxNCArNjE2LDE1IEBACiAgICAgICAgICAgICBybXRyZWUobmFtZSkKIAogCi1AY29udGV4dGxpYi5jb250ZXh0bWFuYWdlcgotZGVmIHRlbXBfdW1hc2sodW1hc2spOgotICAgICIiIkNvbnRleHQgbWFuYWdlciB0aGF0IHRlbXBvcmFyaWx5IHNldHMgdGhlIHByb2Nlc3MgdW1hc2suIiIiCi0gICAgb2xkbWFzayA9IG9zLnVtYXNrKHVtYXNrKQotICAgIHRyeToKLSAgICAgICAgeWllbGQKLSAgICBmaW5hbGx5OgotICAgICAgICBvcy51bWFzayhvbGRtYXNrKQoraWYgaGFzYXR0cihvcywgInVtYXNrIik6CisgICAgQGNvbnRleHRsaWIuY29udGV4dG1hbmFnZXIKKyAgICBkZWYgdGVtcF91bWFzayh1bWFzayk6CisgICAgICAgICIiIkNvbnRleHQgbWFuYWdlciB0aGF0IHRlbXBvcmFyaWx5IHNldHMgdGhlIHByb2Nlc3MgdW1hc2suIiIiCisgICAgICAgIG9sZG1hc2sgPSBvcy51bWFzayh1bWFzaykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgeWllbGQKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLnVtYXNrKG9sZG1hc2spCiAKIAogZGVmIGZpbmRmaWxlKGZpbGUsIGhlcmU9X19maWxlX18sIHN1YmRpcj1Ob25lKToKQEAgLTU2OCw2ICs2NDIsMTEgQEAKICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZm4pOiByZXR1cm4gZm4KICAgICByZXR1cm4gZmlsZQogCitkZWYgY3JlYXRlX2VtcHR5X2ZpbGUoZmlsZW5hbWUpOgorICAgICIiIkNyZWF0ZSBhbiBlbXB0eSBmaWxlLiBJZiB0aGUgZmlsZSBhbHJlYWR5IGV4aXN0cywgdHJ1bmNhdGUgaXQuIiIiCisgICAgZmQgPSBvcy5vcGVuKGZpbGVuYW1lLCBvcy5PX1dST05MWSB8IG9zLk9fQ1JFQVQgfCBvcy5PX1RSVU5DKQorICAgIG9zLmNsb3NlKGZkKQorCiBkZWYgc29ydGRpY3QoZGljdCk6CiAgICAgIkxpa2UgcmVwcihkaWN0KSwgYnV0IGluIHNvcnRlZCBvcmRlci4iCiAgICAgaXRlbXMgPSBzb3J0ZWQoZGljdC5pdGVtcygpKQpAQCAtNjMyLDcgKzcxMSw3IEBACiAgICAgZiA9IGNoZWNrX3ZhbGlkX2ZpbGUoZm4pCiAgICAgaWYgZiBpcyBub3QgTm9uZToKICAgICAgICAgcmV0dXJuIGYKLSAgICByYWlzZSBUZXN0RmFpbGVkKCdpbnZhbGlkIHJlc291cmNlICIlcyInICUgZm4pCisgICAgcmFpc2UgVGVzdEZhaWxlZCgnaW52YWxpZCByZXNvdXJjZSAlcicgJSBmbikKIAogCiBjbGFzcyBXYXJuaW5nc1JlY29yZGVyKG9iamVjdCk6CkBAIC03NTMsNyArODMyLDcgQEAKICAgICAgICAgc3lzLm1vZHVsZXMudXBkYXRlKHNlbGYub3JpZ2luYWxfbW9kdWxlcykKIAogCi1jbGFzcyBFbnZpcm9ubWVudFZhckd1YXJkKGNvbGxlY3Rpb25zLk11dGFibGVNYXBwaW5nKToKK2NsYXNzIEVudmlyb25tZW50VmFyR3VhcmQoY29sbGVjdGlvbnMuYWJjLk11dGFibGVNYXBwaW5nKToKIAogICAgICIiIkNsYXNzIHRvIGhlbHAgcHJvdGVjdCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgcHJvcGVybHkuICBDYW4gYmUgdXNlZCBhcwogICAgIGEgY29udGV4dCBtYW5hZ2VyLiIiIgpAQCAtODg0LDcgKzk2Myw3IEBACiAgICAgICAgICgnV1NBTk9fREFUQScsIDExMDA0KSwKICAgICBdCiAKLSAgICBkZW5pZWQgPSBSZXNvdXJjZURlbmllZCgiUmVzb3VyY2UgJyVzJyBpcyBub3QgYXZhaWxhYmxlIiAlIHJlc291cmNlX25hbWUpCisgICAgZGVuaWVkID0gUmVzb3VyY2VEZW5pZWQoIlJlc291cmNlICVyIGlzIG5vdCBhdmFpbGFibGUiICUgcmVzb3VyY2VfbmFtZSkKICAgICBjYXB0dXJlZF9lcnJub3MgPSBlcnJub3MKICAgICBnYWlfZXJybm9zID0gW10KICAgICBpZiBub3QgY2FwdHVyZWRfZXJybm9zOgpAQCAtOTczLDYgKzEwNTIsMTYgQEAKICAgICBnYy5jb2xsZWN0KCkKICAgICBnYy5jb2xsZWN0KCkKIAorQGNvbnRleHRsaWIuY29udGV4dG1hbmFnZXIKK2RlZiBkaXNhYmxlX2djKCk6CisgICAgaGF2ZV9nYyA9IGdjLmlzZW5hYmxlZCgpCisgICAgZ2MuZGlzYWJsZSgpCisgICAgdHJ5OgorICAgICAgICB5aWVsZAorICAgIGZpbmFsbHk6CisgICAgICAgIGlmIGhhdmVfZ2M6CisgICAgICAgICAgICBnYy5lbmFibGUoKQorCiAKIGRlZiBweXRob25faXNfb3B0aW1pemVkKCk6CiAgICAgIiIiRmluZCBpZiBQeXRob24gd2FzIGJ1aWx0IHdpdGggb3B0aW1pemF0aW9ucy4iIiIKQEAgLTk4MSw3ICsxMDcwLDcgQEAKICAgICBmb3Igb3B0IGluIGNmbGFncy5zcGxpdCgpOgogICAgICAgICBpZiBvcHQuc3RhcnRzd2l0aCgnLU8nKToKICAgICAgICAgICAgIGZpbmFsX29wdCA9IG9wdAotICAgIHJldHVybiBmaW5hbF9vcHQgYW5kIGZpbmFsX29wdCAhPSAnLU8wJworICAgIHJldHVybiBmaW5hbF9vcHQgIT0gJycgYW5kIGZpbmFsX29wdCAhPSAnLU8wJwogCiAKICM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpAQCAtMTA1NCw0MSArMTE0Myw3MSBAQAogICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdNZW1vcnkgbGltaXQgJXIgdG9vIGxvdyB0byBiZSB1c2VmdWwnICUgKGxpbWl0LCkpCiAgICAgbWF4X21lbXVzZSA9IG1lbWxpbWl0CiAKLWRlZiBfbWVtb3J5X3dhdGNoZG9nKHN0YXJ0X2V2dCwgZmluaXNoX2V2dCwgcGVyaW9kPTEwLjApOgotICAgICIiIkEgZnVuY3Rpb24gd2hpY2ggcGVyaW9kaWNhbGx5IHdhdGNoZXMgdGhlIHByb2Nlc3MnIG1lbW9yeSBjb25zdW1wdGlvbgorY2xhc3MgX01lbW9yeVdhdGNoZG9nOgorICAgICIiIkFuIG9iamVjdCB3aGljaCBwZXJpb2RpY2FsbHkgd2F0Y2hlcyB0aGUgcHJvY2VzcycgbWVtb3J5IGNvbnN1bXB0aW9uCiAgICAgYW5kIHByaW50cyBpdCBvdXQuCiAgICAgIiIiCi0gICAgIyBYWFg6IGJlY2F1c2Ugb2YgdGhlIEdJTCwgYW5kIGJlY2F1c2UgdGhlIHZlcnkgbG9uZyBvcGVyYXRpb25zIHRlc3RlZAotICAgICMgaW4gbW9zdCBiaWdtZW0gdGVzdHMgYXJlIHVuaW50ZXJydXB0aWJsZSwgdGhlIGxvb3AgYmVsb3cgZ2V0cyB3b2tlbiB1cAotICAgICMgbXVjaCBsZXNzIG9mdGVuIHRoYW4gZXhwZWN0ZWQuCi0gICAgIyBUaGUgcG9sbGluZyBjb2RlIHNob3VsZCBiZSByZXdyaXR0ZW4gaW4gcmF3IEMsIHdpdGhvdXQgaG9sZGluZyB0aGUgR0lMLAotICAgICMgYW5kIHB1c2ggcmVzdWx0cyBvbnRvIGFuIGFub255bW91cyBwaXBlLgotICAgIHRyeToKLSAgICAgICAgcGFnZV9zaXplID0gb3Muc3lzY29uZignU0NfUEFHRVNJWkUnKQotICAgIGV4Y2VwdCAoVmFsdWVFcnJvciwgQXR0cmlidXRlRXJyb3IpOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICBzZWxmLnByb2NmaWxlID0gJy9wcm9jL3twaWR9L3N0YXRtJy5mb3JtYXQocGlkPW9zLmdldHBpZCgpKQorICAgICAgICBzZWxmLnN0YXJ0ZWQgPSBGYWxzZQorICAgICAgICBzZWxmLnRocmVhZCA9IE5vbmUKICAgICAgICAgdHJ5OgotICAgICAgICAgICAgcGFnZV9zaXplID0gb3Muc3lzY29uZignU0NfUEFHRV9TSVpFJykKKyAgICAgICAgICAgIHNlbGYucGFnZV9zaXplID0gb3Muc3lzY29uZignU0NfUEFHRVNJWkUnKQogICAgICAgICBleGNlcHQgKFZhbHVlRXJyb3IsIEF0dHJpYnV0ZUVycm9yKToKLSAgICAgICAgICAgIHBhZ2Vfc2l6ZSA9IDQwOTYKLSAgICBwcm9jZmlsZSA9ICcvcHJvYy97cGlkfS9zdGF0bScuZm9ybWF0KHBpZD1vcy5nZXRwaWQoKSkKLSAgICB0cnk6Ci0gICAgICAgIGYgPSBvcGVuKHByb2NmaWxlLCAncmInKQotICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGU6Ci0gICAgICAgIHdhcm5pbmdzLndhcm4oJy9wcm9jIG5vdCBhdmFpbGFibGUgZm9yIHN0YXRzOiB7fScuZm9ybWF0KGUpLAotICAgICAgICAgICAgICAgICAgICAgIFJ1bnRpbWVXYXJuaW5nKQotICAgICAgICBzeXMuc3RkZXJyLmZsdXNoKCkKLSAgICAgICAgcmV0dXJuCi0gICAgd2l0aCBmOgotICAgICAgICBzdGFydF9ldnQuc2V0KCkKLSAgICAgICAgb2xkX2RhdGEgPSAtMQotICAgICAgICB3aGlsZSBub3QgZmluaXNoX2V2dC53YWl0KHBlcmlvZCk6Ci0gICAgICAgICAgICBmLnNlZWsoMCkKLSAgICAgICAgICAgIHN0YXRtID0gZi5yZWFkKCkuZGVjb2RlKCdhc2NpaScpCi0gICAgICAgICAgICBkYXRhID0gaW50KHN0YXRtLnNwbGl0KClbNV0pCi0gICAgICAgICAgICBpZiBkYXRhICE9IG9sZF9kYXRhOgotICAgICAgICAgICAgICAgIG9sZF9kYXRhID0gZGF0YQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYucGFnZV9zaXplID0gb3Muc3lzY29uZignU0NfUEFHRV9TSVpFJykKKyAgICAgICAgICAgIGV4Y2VwdCAoVmFsdWVFcnJvciwgQXR0cmlidXRlRXJyb3IpOgorICAgICAgICAgICAgICAgIHNlbGYucGFnZV9zaXplID0gNDA5NgorCisgICAgZGVmIGNvbnN1bWVyKHNlbGYsIGZkKToKKyAgICAgICAgSEVBREVSID0gImwiCisgICAgICAgIGhlYWRlcl9zaXplID0gc3RydWN0LmNhbGNzaXplKEhFQURFUikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBoZWFkZXIgPSBvcy5yZWFkKGZkLCBoZWFkZXJfc2l6ZSkKKyAgICAgICAgICAgICAgICBpZiBsZW4oaGVhZGVyKSA8IGhlYWRlcl9zaXplOgorICAgICAgICAgICAgICAgICAgICAjIFBpcGUgY2xvc2VkIG9uIG90aGVyIGVuZAorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGRhdGFfbGVuLCA9IHN0cnVjdC51bnBhY2soSEVBREVSLCBoZWFkZXIpCisgICAgICAgICAgICAgICAgZGF0YSA9IG9zLnJlYWQoZmQsIGRhdGFfbGVuKQorICAgICAgICAgICAgICAgIHN0YXRtID0gZGF0YS5kZWNvZGUoJ2FzY2lpJykKKyAgICAgICAgICAgICAgICBkYXRhID0gaW50KHN0YXRtLnNwbGl0KClbNV0pCiAgICAgICAgICAgICAgICAgcHJpbnQoIiAuLi4gcHJvY2VzcyBkYXRhIHNpemU6IHtkYXRhOi4xZn1HIgotICAgICAgICAgICAgICAgICAgICAgICAuZm9ybWF0KGRhdGE9ZGF0YSAqIHBhZ2Vfc2l6ZSAvICgxMDI0ICoqIDMpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgLmZvcm1hdChkYXRhPWRhdGEgKiBzZWxmLnBhZ2Vfc2l6ZSAvICgxMDI0ICoqIDMpKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCisgICAgZGVmIHN0YXJ0KHNlbGYpOgorICAgICAgICBpZiBub3QgZmF1bHRoYW5kbGVyIG9yIG5vdCBoYXNhdHRyKGZhdWx0aGFuZGxlciwgJ19maWxlX3dhdGNoZG9nJyk6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmZkID0gb3Mub3BlbihzZWxmLnByb2NmaWxlLCBvcy5PX1JET05MWSkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHdhcm5pbmdzLndhcm4oJy9wcm9jIG5vdCBhdmFpbGFibGUgZm9yIHN0YXRzOiB7fScuZm9ybWF0KGUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICBSdW50aW1lV2FybmluZykKKyAgICAgICAgICAgIHN5cy5zdGRlcnIuZmx1c2goKQorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIHBpcGVfZmQsIHdmZCA9IG9zLnBpcGUoKQorICAgICAgICAjIHNldCB0aGUgd3JpdGUgZW5kIG9mIHRoZSBwaXBlIG5vbi1ibG9ja2luZyB0byBhdm9pZCBibG9ja2luZyB0aGUKKyAgICAgICAgIyB3YXRjaGRvZyB0aHJlYWQgd2hlbiB0aGUgY29uc3VtZXIgZG9lc24ndCBkcmFpbiB0aGUgcGlwZSBmYXN0IGVub3VnaAorICAgICAgICBpZiBmY250bDoKKyAgICAgICAgICAgIGZsYWdzID0gZmNudGwuZmNudGwod2ZkLCBmY250bC5GX0dFVEZMKQorICAgICAgICAgICAgZmNudGwuZmNudGwod2ZkLCBmY250bC5GX1NFVEZMLCBmbGFnc3xvcy5PX05PTkJMT0NLKQorICAgICAgICAjIF9maWxlX3dhdGNoZG9nKCkgZG9lc24ndCB0YWtlIHRoZSBHSUwgaW4gaXRzIGNoaWxkIHRocmVhZCwgYW5kCisgICAgICAgICMgdGhlcmVmb3JlIGNvbGxlY3RzIHN0YXRpc3RpY3MgdGltZWx5CisgICAgICAgIGZhdWx0aGFuZGxlci5fZmlsZV93YXRjaGRvZyhyZmQsIHdmZCwgMS4wKQorICAgICAgICBzZWxmLnN0YXJ0ZWQgPSBUcnVlCisgICAgICAgIHNlbGYudGhyZWFkID0gdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9c2VsZi5jb25zdW1lciwgYXJncz0ocGlwZV9mZCwpKQorICAgICAgICBzZWxmLnRocmVhZC5kYWVtb24gPSBUcnVlCisgICAgICAgIHNlbGYudGhyZWFkLnN0YXJ0KCkKKworICAgIGRlZiBzdG9wKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5zdGFydGVkOgorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGZhdWx0aGFuZGxlci5fY2FuY2VsX2ZpbGVfd2F0Y2hkb2coKQorICAgICAgICBzZWxmLnRocmVhZC5qb2luKCkKKwogCiBkZWYgYmlnbWVtdGVzdChzaXplLCBtZW11c2UsIGRyeV9ydW49VHJ1ZSk6CiAgICAgIiIiRGVjb3JhdG9yIGZvciBiaWdtZW0gdGVzdHMuCkBAIC0xMTE1LDI3ICsxMjM0LDIwIEBACiAgICAgICAgICAgICAgICAgICAgICJub3QgZW5vdWdoIG1lbW9yeTogJS4xZkcgbWluaW11bSBuZWVkZWQiCiAgICAgICAgICAgICAgICAgICAgICUgKHNpemUgKiBtZW11c2UgLyAoMTAyNCAqKiAzKSkpCiAKLSAgICAgICAgICAgIGlmIHJlYWxfbWF4X21lbXVzZSBhbmQgdmVyYm9zZSBhbmQgdGhyZWFkaW5nOgorICAgICAgICAgICAgaWYgcmVhbF9tYXhfbWVtdXNlIGFuZCB2ZXJib3NlIGFuZCBmYXVsdGhhbmRsZXIgYW5kIHRocmVhZGluZzoKICAgICAgICAgICAgICAgICBwcmludCgpCiAgICAgICAgICAgICAgICAgcHJpbnQoIiAuLi4gZXhwZWN0ZWQgcGVhayBtZW1vcnkgdXNlOiB7cGVhazouMWZ9RyIKICAgICAgICAgICAgICAgICAgICAgICAuZm9ybWF0KHBlYWs9c2l6ZSAqIG1lbXVzZSAvICgxMDI0ICoqIDMpKSkKLSAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKLSAgICAgICAgICAgICAgICBzdGFydF9ldnQgPSB0aHJlYWRpbmcuRXZlbnQoKQotICAgICAgICAgICAgICAgIGZpbmlzaF9ldnQgPSB0aHJlYWRpbmcuRXZlbnQoKQotICAgICAgICAgICAgICAgIHQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1fbWVtb3J5X3dhdGNoZG9nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3M9KHN0YXJ0X2V2dCwgZmluaXNoX2V2dCwgMC41KSkKLSAgICAgICAgICAgICAgICB0LmRhZW1vbiA9IFRydWUKLSAgICAgICAgICAgICAgICB0LnN0YXJ0KCkKLSAgICAgICAgICAgICAgICBzdGFydF9ldnQuc2V0KCkKKyAgICAgICAgICAgICAgICB3YXRjaGRvZyA9IF9NZW1vcnlXYXRjaGRvZygpCisgICAgICAgICAgICAgICAgd2F0Y2hkb2cuc3RhcnQoKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICB0ID0gTm9uZQorICAgICAgICAgICAgICAgIHdhdGNoZG9nID0gTm9uZQogCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgcmV0dXJuIGYoc2VsZiwgbWF4c2l6ZSkKICAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgaWYgdDoKLSAgICAgICAgICAgICAgICAgICAgZmluaXNoX2V2dC5zZXQoKQotICAgICAgICAgICAgICAgICAgICB0LmpvaW4oKQorICAgICAgICAgICAgICAgIGlmIHdhdGNoZG9nOgorICAgICAgICAgICAgICAgICAgICB3YXRjaGRvZy5zdG9wKCkKIAogICAgICAgICB3cmFwcGVyLnNpemUgPSBzaXplCiAgICAgICAgIHdyYXBwZXIubWVtdXNlID0gbWVtdXNlCkBAIC0xMjE3LDYgKzEzMjksMzMgQEAKICAgICByZXR1cm4gZ3VhcmRzLmdldChwbGF0Zm9ybS5weXRob25faW1wbGVtZW50YXRpb24oKS5sb3dlcigpLCBkZWZhdWx0KQogCiAKK2RlZiBub190cmFjaW5nKGZ1bmMpOgorICAgICIiIkRlY29yYXRvciB0byB0ZW1wb3JhcmlseSB0dXJuIG9mZiB0cmFjaW5nIGZvciB0aGUgZHVyYXRpb24gb2YgYSB0ZXN0LiIiIgorICAgIGlmIG5vdCBoYXNhdHRyKHN5cywgJ2dldHRyYWNlJyk6CisgICAgICAgIHJldHVybiBmdW5jCisgICAgZWxzZToKKyAgICAgICAgQGZ1bmN0b29scy53cmFwcyhmdW5jKQorICAgICAgICBkZWYgd3JhcHBlcigqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAgICAgb3JpZ2luYWxfdHJhY2UgPSBzeXMuZ2V0dHJhY2UoKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHN5cy5zZXR0cmFjZShOb25lKQorICAgICAgICAgICAgICAgIHJldHVybiBmdW5jKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgc3lzLnNldHRyYWNlKG9yaWdpbmFsX3RyYWNlKQorICAgICAgICByZXR1cm4gd3JhcHBlcgorCisKK2RlZiByZWZjb3VudF90ZXN0KHRlc3QpOgorICAgICIiIkRlY29yYXRvciBmb3IgdGVzdHMgd2hpY2ggaW52b2x2ZSByZWZlcmVuY2UgY291bnRpbmcuCisKKyAgICBUbyBzdGFydCwgdGhlIGRlY29yYXRvciBkb2VzIG5vdCBydW4gdGhlIHRlc3QgaWYgaXMgbm90IHJ1biBieSBDUHl0aG9uLgorICAgIEFmdGVyIHRoYXQsIGFueSB0cmFjZSBmdW5jdGlvbiBpcyB1bnNldCBkdXJpbmcgdGhlIHRlc3QgdG8gcHJldmVudAorICAgIHVuZXhwZWN0ZWQgcmVmY291bnRzIGNhdXNlZCBieSB0aGUgdHJhY2UgZnVuY3Rpb24uCisKKyAgICAiIiIKKyAgICByZXR1cm4gbm9fdHJhY2luZyhjcHl0aG9uX29ubHkodGVzdCkpCisKKwogZGVmIF9maWx0ZXJfc3VpdGUoc3VpdGUsIHByZWQpOgogICAgICIiIlJlY3Vyc2l2ZWx5IGZpbHRlciB0ZXN0IGNhc2VzIGluIGEgc3VpdGUgYmFzZWQgb24gYSBwcmVkaWNhdGUuIiIiCiAgICAgbmV3dGVzdHMgPSBbXQpAQCAtMTIyOSw3ICsxMzY4LDYgQEAKICAgICAgICAgICAgICAgICBuZXd0ZXN0cy5hcHBlbmQodGVzdCkKICAgICBzdWl0ZS5fdGVzdHMgPSBuZXd0ZXN0cwogCi0KIGRlZiBfcnVuX3N1aXRlKHN1aXRlKToKICAgICAiIiJSdW4gdGVzdHMgZnJvbSBhIHVuaXR0ZXN0LlRlc3RTdWl0ZS1kZXJpdmVkIGNsYXNzLiIiIgogICAgIGlmIHZlcmJvc2U6CkBAIC0xNDU2LDcgKzE1OTQsNyBAQAogCiBkZWYgYXJnc19mcm9tX2ludGVycHJldGVyX2ZsYWdzKCk6CiAgICAgIiIiUmV0dXJuIGEgbGlzdCBvZiBjb21tYW5kLWxpbmUgYXJndW1lbnRzIHJlcHJvZHVjaW5nIHRoZSBjdXJyZW50Ci0gICAgc2V0dGluZ3MgaW4gc3lzLmZsYWdzLiIiIgorICAgIHNldHRpbmdzIGluIHN5cy5mbGFncyBhbmQgc3lzLndhcm5vcHRpb25zLiIiIgogICAgIGZsYWdfb3B0X21hcCA9IHsKICAgICAgICAgJ2J5dGVzX3dhcm5pbmcnOiAnYicsCiAgICAgICAgICdkb250X3dyaXRlX2J5dGVjb2RlJzogJ0InLApAQCAtMTQ3Miw2ICsxNjEwLDggQEAKICAgICAgICAgdiA9IGdldGF0dHIoc3lzLmZsYWdzLCBmbGFnKQogICAgICAgICBpZiB2ID4gMDoKICAgICAgICAgICAgIGFyZ3MuYXBwZW5kKCctJyArIG9wdCAqIHYpCisgICAgZm9yIG9wdCBpbiBzeXMud2Fybm9wdGlvbnM6CisgICAgICAgIGFyZ3MuYXBwZW5kKCctVycgKyBvcHQpCiAgICAgcmV0dXJuIGFyZ3MKIAogIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9fbG9jYWxlLnB5IGIvTGliL3Rlc3QvdGVzdF9fbG9jYWxlLnB5CmluZGV4IDNmYWRiNTcuLmY3ZjFhYmQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfX2xvY2FsZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X19sb2NhbGUucHkKQEAgLTEsMTMgKzEsMTUgQEAKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QKIGZyb20gX2xvY2FsZSBpbXBvcnQgKHNldGxvY2FsZSwgTENfQUxMLCBMQ19DVFlQRSwgTENfTlVNRVJJQywgbG9jYWxlY29udiwgRXJyb3IpCiB0cnk6CiAgICAgZnJvbSBfbG9jYWxlIGltcG9ydCAoUkFESVhDSEFSLCBUSE9VU0VQLCBubF9sYW5naW5mbykKIGV4Y2VwdCBJbXBvcnRFcnJvcjoKICAgICBubF9sYW5naW5mbyA9IE5vbmUKIAotaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgY29kZWNzCitpbXBvcnQgbG9jYWxlCiBpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKIGZyb20gcGxhdGZvcm0gaW1wb3J0IHVuYW1lCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgcnVuX3VuaXR0ZXN0CiAKIGlmIHVuYW1lKClbMF0gPT0gIkRhcndpbiI6CiAgICAgbWFqLCBtaW4sIG1pYyA9IFtpbnQocGFydCkgZm9yIHBhcnQgaW4gdW5hbWUoKVsyXS5zcGxpdCgiLiIpXQpAQCAtMTcsNyArMTksNyBAQAogY2FuZGlkYXRlX2xvY2FsZXMgPSBbJ2VzX1VZJywgJ2ZyX0ZSJywgJ2ZpX0ZJJywgJ2VzX0NPJywgJ3B0X1BUJywgJ2l0X0lUJywKICAgICAnZXRfRUUnLCAnZXNfUFknLCAnbm9fTk8nLCAnbmxfTkwnLCAnbHZfTFYnLCAnZWxfR1InLCAnYmVfQlknLCAnZnJfQkUnLAogICAgICdyb19STycsICdydV9VQScsICdydV9SVScsICdlc19WRScsICdjYV9FUycsICdzZV9OTycsICdlc19FQycsICdpZF9JRCcsCi0gICAgJ2thX0dFJywgJ2VzX0NMJywgJ2h1X0hVJywgJ3dhX0JFJywgJ2x0X0xUJywgJ3NsX1NJJywgJ2hyX0hSJywgJ2VzX0FSJywKKyAgICAna2FfR0UnLCAnZXNfQ0wnLCAnd2FfQkUnLCAnaHVfSFUnLCAnbHRfTFQnLCAnc2xfU0knLCAnaHJfSFInLCAnZXNfQVInLAogICAgICdlc19FUycsICdvY19GUicsICdnbF9FUycsICdiZ19CRycsICdpc19JUycsICdta19NSycsICdkZV9BVCcsICdwdF9CUicsCiAgICAgJ2RhX0RLJywgJ25uX05PJywgJ2NzX0NaJywgJ2RlX0xVJywgJ2VzX0JPJywgJ3NxX0FMJywgJ3NrX1NLJywgJ2ZyX0NIJywKICAgICAnZGVfREUnLCAnc3JfWVUnLCAnYnJfRlInLCAnbmxfQkUnLCAnc3ZfRkknLCAncGxfUEwnLCAnZnJfQ0EnLCAnZm9fRk8nLApAQCAtMjUsNiArMjcsMzEgQEAKICAgICAnZXVfRVMnLCAndmlfVk4nLCAnYWZfWkEnLCAnbmJfTk8nLCAnZW5fREsnLCAndGdfVEonLCAnZW5fVVMnLAogICAgICdlc19FUy5JU084ODU5LTEnLCAnZnJfRlIuSVNPODg1OS0xNScsICdydV9SVS5LT0k4LVInLCAna29fS1IuZXVjS1InXQogCisjIElzc3VlICMxMzQ0MTogU2tpcCBzb21lIGxvY2FsZXMgKGUuZy4gY3NfQ1ogYW5kIGh1X0hVKSBvbiBTb2xhcmlzIHRvCisjIHdvcmthcm91bmQgYSBtYnN0b3djcygpIGJ1Zy4gRm9yIGV4YW1wbGUsIG9uIFNvbGFyaXMsIHRoZSBodV9IVSBsb2NhbGUgdXNlcworIyB0aGUgbG9jYWxlIGVuY29kaW5nIElTTy04ODU5LTIsIHRoZSB0aG91c2F1ZHMgc2VwYXJhdG9yIGlzIGInXHhBMCcgYW5kIGl0IGlzCisjIGRlY29kZWQgYXMgVSszMDAwMDAyMCAoYW4gaW52YWxpZCBjaGFyYWN0ZXIpIGJ5IG1ic3Rvd2NzKCkuCitpZiBzeXMucGxhdGZvcm0gPT0gJ3N1bm9zNSc6CisgICAgb2xkX2xvY2FsZSA9IGxvY2FsZS5zZXRsb2NhbGUobG9jYWxlLkxDX0FMTCkKKyAgICB0cnk6CisgICAgICAgIGxvY2FsZXMgPSBbXQorICAgICAgICBmb3IgbG9jIGluIGNhbmRpZGF0ZV9sb2NhbGVzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGxvY2FsZS5zZXRsb2NhbGUobG9jYWxlLkxDX0FMTCwgbG9jKQorICAgICAgICAgICAgZXhjZXB0IEVycm9yOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBlbmNvZGluZyA9IGxvY2FsZS5nZXRwcmVmZXJyZWRlbmNvZGluZyhGYWxzZSkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBsb2NhbGVjb252KCkKKyAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZXJyOgorICAgICAgICAgICAgICAgIHByaW50KCJXQVJOSU5HOiBTa2lwIGxvY2FsZSAlcyAoZW5jb2RpbmcgJXMpOiBbJXNdICVzIgorICAgICAgICAgICAgICAgICAgICAgICUgKGxvYywgZW5jb2RpbmcsIHR5cGUoZXJyKSwgZXJyKSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbG9jYWxlcy5hcHBlbmQobG9jKQorICAgICAgICBjYW5kaWRhdGVfbG9jYWxlcyA9IGxvY2FsZXMKKyAgICBmaW5hbGx5OgorICAgICAgICBsb2NhbGUuc2V0bG9jYWxlKGxvY2FsZS5MQ19BTEwsIG9sZF9sb2NhbGUpCisKICMgV29ya2Fyb3VuZCBmb3IgTVNWQzYoZGVidWcpIGNyYXNoIGJ1ZwogaWYgIk1TQyB2LjEyMDAiIGluIHN5cy52ZXJzaW9uOgogICAgIGRlZiBhY2NlcHQobG9jKToKQEAgLTg2LDkgKzExMywxMCBAQAogICAgICAgICAgICAgICAgIHNldGxvY2FsZShMQ19DVFlQRSwgbG9jKQogICAgICAgICAgICAgZXhjZXB0IEVycm9yOgogICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBmb3JtYXR0aW5nID0gbG9jYWxlY29udigpCiAgICAgICAgICAgICBmb3IgbGMgaW4gKCJkZWNpbWFsX3BvaW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICJ0aG91c2FuZHNfc2VwIik6Ci0gICAgICAgICAgICAgICAgc2VsZi5udW1lcmljX3Rlc3RlcignbG9jYWxlY29udicsIGxvY2FsZWNvbnYoKVtsY10sIGxjLCBsb2MpCisgICAgICAgICAgICAgICAgc2VsZi5udW1lcmljX3Rlc3RlcignbG9jYWxlY29udicsIGZvcm1hdHRpbmdbbGNdLCBsYywgbG9jKQogCiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MobmxfbGFuZ2luZm8sICJubF9sYW5naW5mbyBpcyBub3QgYXZhaWxhYmxlIikKICAgICBkZWYgdGVzdF9sY19udW1lcmljX2Jhc2ljKHNlbGYpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9hYmMucHkgYi9MaWIvdGVzdC90ZXN0X2FiYy5weQppbmRleCBkODZmOTdjLi42NTNjOTU3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2FiYy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2FiYy5weQpAQCAtMTAsMTQgKzEwLDcgQEAKIGZyb20gaW5zcGVjdCBpbXBvcnQgaXNhYnN0cmFjdAogCiAKLWNsYXNzIFRlc3RBQkModW5pdHRlc3QuVGVzdENhc2UpOgotCi0gICAgZGVmIHRlc3RfYWJzdHJhY3RtZXRob2RfYmFzaWNzKHNlbGYpOgotICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCi0gICAgICAgIGRlZiBmb28oc2VsZik6IHBhc3MKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvby5fX2lzYWJzdHJhY3RtZXRob2RfXykKLSAgICAgICAgZGVmIGJhcihzZWxmKTogcGFzcwotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iKSkKK2NsYXNzIFRlc3RMZWdhY3lBUEkodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfYWJzdHJhY3Rwcm9wZXJ0eV9iYXNpY3Moc2VsZik6CiAgICAgICAgIEBhYmMuYWJzdHJhY3Rwcm9wZXJ0eQpAQCAtMjksMTAgKzIyLDEyIEBACiAgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKICAgICAgICAgICAgIEBhYmMuYWJzdHJhY3Rwcm9wZXJ0eQogICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIDMKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBDKQogICAgICAgICBjbGFzcyBEKEMpOgogICAgICAgICAgICAgQHByb3BlcnR5CiAgICAgICAgICAgICBkZWYgZm9vKHNlbGYpOiByZXR1cm4gc3VwZXIoKS5mb28KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChEKCkuZm9vLCAzKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGdldGF0dHIoRC5mb28sICJfX2lzYWJzdHJhY3RtZXRob2RfXyIsIEZhbHNlKSkKIAogICAgIGRlZiB0ZXN0X2Fic3RyYWN0Y2xhc3NtZXRob2RfYmFzaWNzKHNlbGYpOgogICAgICAgICBAYWJjLmFic3RyYWN0Y2xhc3NtZXRob2QKQEAgLTQwLDcgKzM1LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvby5fX2lzYWJzdHJhY3RtZXRob2RfXykKICAgICAgICAgQGNsYXNzbWV0aG9kCiAgICAgICAgIGRlZiBiYXIoY2xzKTogcGFzcwotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShnZXRhdHRyKGJhciwgIl9faXNhYnN0cmFjdG1ldGhvZF9fIiwgRmFsc2UpKQogCiAgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKICAgICAgICAgICAgIEBhYmMuYWJzdHJhY3RjbGFzc21ldGhvZApAQCAtNTgsNyArNTMsNyBAQAogICAgICAgICBzZWxmLmFzc2VydFRydWUoZm9vLl9faXNhYnN0cmFjdG1ldGhvZF9fKQogICAgICAgICBAc3RhdGljbWV0aG9kCiAgICAgICAgIGRlZiBiYXIoKTogcGFzcwotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShnZXRhdHRyKGJhciwgIl9faXNhYnN0cmFjdG1ldGhvZF9fIiwgRmFsc2UpKQogCiAgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKICAgICAgICAgICAgIEBhYmMuYWJzdHJhY3RzdGF0aWNtZXRob2QKQEAgLTk4LDYgKzkzLDE2MyBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBGKSAgIyBiZWNhdXNlIGJhciBpcyBhYnN0cmFjdCBub3cKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2Fic3RyYWN0KEYpKQogCisKK2NsYXNzIFRlc3RBQkModW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfYWJzdHJhY3RtZXRob2RfYmFzaWNzKHNlbGYpOgorICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCisgICAgICAgIGRlZiBmb28oc2VsZik6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvby5fX2lzYWJzdHJhY3RtZXRob2RfXykKKyAgICAgICAgZGVmIGJhcihzZWxmKTogcGFzcworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iKSkKKworICAgIGRlZiB0ZXN0X2Fic3RyYWN0cHJvcGVydHlfYmFzaWNzKHNlbGYpOgorICAgICAgICBAcHJvcGVydHkKKyAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICBkZWYgZm9vKHNlbGYpOiBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmb28uX19pc2Fic3RyYWN0bWV0aG9kX18pCisgICAgICAgIGRlZiBiYXIoc2VsZik6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShnZXRhdHRyKGJhciwgIl9faXNhYnN0cmFjdG1ldGhvZF9fIiwgRmFsc2UpKQorCisgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKKyAgICAgICAgICAgIEBwcm9wZXJ0eQorICAgICAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIDMKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBDKQorICAgICAgICBjbGFzcyBEKEMpOgorICAgICAgICAgICAgQEMuZm9vLmdldHRlcgorICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIHN1cGVyKCkuZm9vCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRCgpLmZvbywgMykKKworICAgIGRlZiB0ZXN0X2Fic3RyYWN0Y2xhc3NtZXRob2RfYmFzaWNzKHNlbGYpOgorICAgICAgICBAY2xhc3NtZXRob2QKKyAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICBkZWYgZm9vKGNscyk6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvby5fX2lzYWJzdHJhY3RtZXRob2RfXykKKyAgICAgICAgQGNsYXNzbWV0aG9kCisgICAgICAgIGRlZiBiYXIoY2xzKTogcGFzcworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGdldGF0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iLCBGYWxzZSkpCisKKyAgICAgICAgY2xhc3MgQyhtZXRhY2xhc3M9YWJjLkFCQ01ldGEpOgorICAgICAgICAgICAgQGNsYXNzbWV0aG9kCisgICAgICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCisgICAgICAgICAgICBkZWYgZm9vKGNscyk6IHJldHVybiBjbHMuX19uYW1lX18KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBDKQorICAgICAgICBjbGFzcyBEKEMpOgorICAgICAgICAgICAgQGNsYXNzbWV0aG9kCisgICAgICAgICAgICBkZWYgZm9vKGNscyk6IHJldHVybiBzdXBlcigpLmZvbygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRC5mb28oKSwgJ0QnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEQoKS5mb28oKSwgJ0QnKQorCisgICAgZGVmIHRlc3RfYWJzdHJhY3RzdGF0aWNtZXRob2RfYmFzaWNzKHNlbGYpOgorICAgICAgICBAc3RhdGljbWV0aG9kCisgICAgICAgIEBhYmMuYWJzdHJhY3RtZXRob2QKKyAgICAgICAgZGVmIGZvbygpOiBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmb28uX19pc2Fic3RyYWN0bWV0aG9kX18pCisgICAgICAgIEBzdGF0aWNtZXRob2QKKyAgICAgICAgZGVmIGJhcigpOiBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZ2V0YXR0cihiYXIsICJfX2lzYWJzdHJhY3RtZXRob2RfXyIsIEZhbHNlKSkKKworICAgICAgICBjbGFzcyBDKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CisgICAgICAgICAgICBAc3RhdGljbWV0aG9kCisgICAgICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCisgICAgICAgICAgICBkZWYgZm9vKCk6IHJldHVybiAzCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgQykKKyAgICAgICAgY2xhc3MgRChDKToKKyAgICAgICAgICAgIEBzdGF0aWNtZXRob2QKKyAgICAgICAgICAgIGRlZiBmb28oKTogcmV0dXJuIDQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChELmZvbygpLCA0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEQoKS5mb28oKSwgNCkKKworICAgIGRlZiB0ZXN0X2Fic3RyYWN0bWV0aG9kX2ludGVncmF0aW9uKHNlbGYpOgorICAgICAgICBmb3IgYWJzdHJhY3R0aGluZyBpbiBbYWJjLmFic3RyYWN0bWV0aG9kLCBhYmMuYWJzdHJhY3Rwcm9wZXJ0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFiYy5hYnN0cmFjdGNsYXNzbWV0aG9kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJjLmFic3RyYWN0c3RhdGljbWV0aG9kXToKKyAgICAgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKKyAgICAgICAgICAgICAgICBAYWJzdHJhY3R0aGluZworICAgICAgICAgICAgICAgIGRlZiBmb28oc2VsZik6IHBhc3MgICMgYWJzdHJhY3QKKyAgICAgICAgICAgICAgICBkZWYgYmFyKHNlbGYpOiBwYXNzICAjIGNvbmNyZXRlCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEMuX19hYnN0cmFjdG1ldGhvZHNfXywgeyJmb28ifSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgQykgICMgYmVjYXVzZSBmb28gaXMgYWJzdHJhY3QKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2Fic3RyYWN0KEMpKQorICAgICAgICAgICAgY2xhc3MgRChDKToKKyAgICAgICAgICAgICAgICBkZWYgYmFyKHNlbGYpOiBwYXNzICAjIGNvbmNyZXRlIG92ZXJyaWRlIG9mIGNvbmNyZXRlCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEQuX19hYnN0cmFjdG1ldGhvZHNfXywgeyJmb28ifSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgRCkgICMgYmVjYXVzZSBmb28gaXMgc3RpbGwgYWJzdHJhY3QKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2Fic3RyYWN0KEQpKQorICAgICAgICAgICAgY2xhc3MgRShEKToKKyAgICAgICAgICAgICAgICBkZWYgZm9vKHNlbGYpOiBwYXNzCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEUuX19hYnN0cmFjdG1ldGhvZHNfXywgc2V0KCkpCisgICAgICAgICAgICBFKCkgICMgbm93IGZvbyBpcyBjb25jcmV0ZSwgdG9vCisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzYWJzdHJhY3QoRSkpCisgICAgICAgICAgICBjbGFzcyBGKEUpOgorICAgICAgICAgICAgICAgIEBhYnN0cmFjdHRoaW5nCisgICAgICAgICAgICAgICAgZGVmIGJhcihzZWxmKTogcGFzcyAgIyBhYnN0cmFjdCBvdmVycmlkZSBvZiBjb25jcmV0ZQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChGLl9fYWJzdHJhY3RtZXRob2RzX18sIHsiYmFyIn0pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIEYpICAjIGJlY2F1c2UgYmFyIGlzIGFic3RyYWN0IG5vdworICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzYWJzdHJhY3QoRikpCisKKyAgICBkZWYgdGVzdF9kZXNjcmlwdG9yc193aXRoX2Fic3RyYWN0bWV0aG9kKHNlbGYpOgorICAgICAgICBjbGFzcyBDKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CisgICAgICAgICAgICBAcHJvcGVydHkKKyAgICAgICAgICAgIEBhYmMuYWJzdHJhY3RtZXRob2QKKyAgICAgICAgICAgIGRlZiBmb28oc2VsZik6IHJldHVybiAzCisgICAgICAgICAgICBAZm9vLnNldHRlcgorICAgICAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICAgICAgZGVmIGZvbyhzZWxmLCB2YWwpOiBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgQykKKyAgICAgICAgY2xhc3MgRChDKToKKyAgICAgICAgICAgIEBDLmZvby5nZXR0ZXIKKyAgICAgICAgICAgIGRlZiBmb28oc2VsZik6IHJldHVybiBzdXBlcigpLmZvbworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIEQpCisgICAgICAgIGNsYXNzIEUoRCk6CisgICAgICAgICAgICBARC5mb28uc2V0dGVyCisgICAgICAgICAgICBkZWYgZm9vKHNlbGYsIHZhbCk6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChFKCkuZm9vLCAzKQorICAgICAgICAjIGNoZWNrIHRoYXQgdGhlIHByb3BlcnR5J3MgX19pc2Fic3RyYWN0bWV0aG9kX18gZGVzY3JpcHRvciBkb2VzIHRoZQorICAgICAgICAjIHJpZ2h0IHRoaW5nIHdoZW4gcHJlc2VudGVkIHdpdGggYSB2YWx1ZSB0aGF0IGZhaWxzIHRydXRoIHRlc3Rpbmc6CisgICAgICAgIGNsYXNzIE5vdEJvb2wob2JqZWN0KToKKyAgICAgICAgICAgIGRlZiBfX25vbnplcm9fXyhzZWxmKToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCkKKyAgICAgICAgICAgIF9fbGVuX18gPSBfX25vbnplcm9fXworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgY2xhc3MgRihDKToKKyAgICAgICAgICAgICAgICBkZWYgYmFyKHNlbGYpOgorICAgICAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICAgICAgYmFyLl9faXNhYnN0cmFjdG1ldGhvZF9fID0gTm90Qm9vbCgpCisgICAgICAgICAgICAgICAgZm9vID0gcHJvcGVydHkoYmFyKQorCisKKyAgICBkZWYgdGVzdF9jdXN0b21kZXNjcmlwdG9yc193aXRoX2Fic3RyYWN0bWV0aG9kKHNlbGYpOgorICAgICAgICBjbGFzcyBEZXNjcmlwdG9yOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZnZXQsIGZzZXQ9Tm9uZSk6CisgICAgICAgICAgICAgICAgc2VsZi5fZmdldCA9IGZnZXQKKyAgICAgICAgICAgICAgICBzZWxmLl9mc2V0ID0gZnNldAorICAgICAgICAgICAgZGVmIGdldHRlcihzZWxmLCBjYWxsYWJsZSk6CisgICAgICAgICAgICAgICAgcmV0dXJuIERlc2NyaXB0b3IoY2FsbGFibGUsIHNlbGYuX2ZnZXQpCisgICAgICAgICAgICBkZWYgc2V0dGVyKHNlbGYsIGNhbGxhYmxlKToKKyAgICAgICAgICAgICAgICByZXR1cm4gRGVzY3JpcHRvcihzZWxmLl9mZ2V0LCBjYWxsYWJsZSkKKyAgICAgICAgICAgIEBwcm9wZXJ0eQorICAgICAgICAgICAgZGVmIF9faXNhYnN0cmFjdG1ldGhvZF9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiAoZ2V0YXR0cihzZWxmLl9mZ2V0LCAnX19pc2Fic3RyYWN0bWV0aG9kX18nLCBGYWxzZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIG9yIGdldGF0dHIoc2VsZi5fZnNldCwgJ19faXNhYnN0cmFjdG1ldGhvZF9fJywgRmFsc2UpKQorICAgICAgICBjbGFzcyBDKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CisgICAgICAgICAgICBARGVzY3JpcHRvcgorICAgICAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIDMKKyAgICAgICAgICAgIEBmb28uc2V0dGVyCisgICAgICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCisgICAgICAgICAgICBkZWYgZm9vKHNlbGYsIHZhbCk6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBDKQorICAgICAgICBjbGFzcyBEKEMpOgorICAgICAgICAgICAgQEMuZm9vLmdldHRlcgorICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIHN1cGVyKCkuZm9vCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgRCkKKyAgICAgICAgY2xhc3MgRShEKToKKyAgICAgICAgICAgIEBELmZvby5zZXR0ZXIKKyAgICAgICAgICAgIGRlZiBmb28oc2VsZiwgdmFsKTogcGFzcworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKEUuZm9vLl9faXNhYnN0cmFjdG1ldGhvZF9fKQorCiAgICAgZGVmIHRlc3RfbWV0YWNsYXNzX2FiYyhzZWxmKToKICAgICAgICAgIyBNZXRhY2xhc3NlcyBjYW4gYmUgQUJDcywgdG9vLgogICAgICAgICBjbGFzcyBBKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CkBAIC0xMjEsMTEgKzI3MywxMiBAQAogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzc3ViY2xhc3MoQiwgKEEsKSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SXNJbnN0YW5jZShiLCBBKQogICAgICAgICBzZWxmLmFzc2VydE5vdElzSW5zdGFuY2UoYiwgKEEsKSkKLSAgICAgICAgQS5yZWdpc3RlcihCKQorICAgICAgICBCMSA9IEEucmVnaXN0ZXIoQikKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzc3ViY2xhc3MoQiwgQSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc3N1YmNsYXNzKEIsIChBLCkpKQogICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYiwgQSkKICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGIsIChBLCkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoQjEsIEIpCiAgICAgICAgIGNsYXNzIEMoQik6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIGMgPSBDKCkKQEAgLTEzNCw2ICsyODcsMjcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGMsIEEpCiAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShjLCAoQSwpKQogCisgICAgZGVmIHRlc3RfcmVnaXN0ZXJfYXNfY2xhc3NfZGVjbyhzZWxmKToKKyAgICAgICAgY2xhc3MgQShtZXRhY2xhc3M9YWJjLkFCQ01ldGEpOgorICAgICAgICAgICAgcGFzcworICAgICAgICBAQS5yZWdpc3RlcgorICAgICAgICBjbGFzcyBCKG9iamVjdCk6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGIgPSBCKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzc3ViY2xhc3MoQiwgQSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc3N1YmNsYXNzKEIsIChBLCkpKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYiwgQSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGIsIChBLCkpCisgICAgICAgIEBBLnJlZ2lzdGVyCisgICAgICAgIGNsYXNzIEMoQik6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGMgPSBDKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzc3ViY2xhc3MoQywgQSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc3N1YmNsYXNzKEMsIChBLCkpKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYywgQSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGMsIChBLCkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoQywgQS5yZWdpc3RlcihDKSkKKwogICAgIGRlZiB0ZXN0X2lzaW5zdGFuY2VfaW52YWxpZGF0aW9uKHNlbGYpOgogICAgICAgICBjbGFzcyBBKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CiAgICAgICAgICAgICBwYXNzCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Fic3RyYWN0X251bWJlcnMucHkgYi9MaWIvdGVzdC90ZXN0X2Fic3RyYWN0X251bWJlcnMucHkKaW5kZXggMmEzOTZjZC4uMjUzZTZmMCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9hYnN0cmFjdF9udW1iZXJzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYWJzdHJhY3RfbnVtYmVycy5weQpAQCAtMTQsNiArMTQsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDcsIGludCg3KS5yZWFsKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGludCg3KS5pbWFnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDcsIGludCg3KS5jb25qdWdhdGUoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgtNywgaW50KC03KS5jb25qdWdhdGUoKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg3LCBpbnQoNykubnVtZXJhdG9yKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGludCg3KS5kZW5vbWluYXRvcikKIApAQCAtMjQsNiArMjUsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDcuMywgZmxvYXQoNy4zKS5yZWFsKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGZsb2F0KDcuMykuaW1hZykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg3LjMsIGZsb2F0KDcuMykuY29uanVnYXRlKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoLTcuMywgZmxvYXQoLTcuMykuY29uanVnYXRlKCkpCiAKICAgICBkZWYgdGVzdF9jb21wbGV4KHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzc3ViY2xhc3MoY29tcGxleCwgUmVhbCkpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2FyZ3BhcnNlLnB5IGIvTGliL3Rlc3QvdGVzdF9hcmdwYXJzZS5weQppbmRleCA4NTI5OTFjLi5mNDU2NzA5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2FyZ3BhcnNlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYXJncGFyc2UucHkKQEAgLTQwMjEsNiArNDAyMSwzNyBAQAogICAgICAgICAnJycKIAogCisKK2NsYXNzIFRlc3RIZWxwTWV0YXZhclR5cGVGb3JtYXR0ZXIoSGVscFRlc3RDYXNlKToKKyAgICAiIiIiIiIKKworICAgIGRlZiBjdXN0b21fdHlwZShzdHJpbmcpOgorICAgICAgICByZXR1cm4gc3RyaW5nCisKKyAgICBwYXJzZXJfc2lnbmF0dXJlID0gU2lnKHByb2c9J1BST0cnLCBkZXNjcmlwdGlvbj0nZGVzY3JpcHRpb24nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0dGVyX2NsYXNzPWFyZ3BhcnNlLk1ldGF2YXJUeXBlSGVscEZvcm1hdHRlcikKKyAgICBhcmd1bWVudF9zaWduYXR1cmVzID0gW1NpZygnYScsIHR5cGU9aW50KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpZygnLWInLCB0eXBlPWN1c3RvbV90eXBlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpZygnLWMnLCB0eXBlPWZsb2F0LCBtZXRhdmFyPSdTT01FIEZMT0FUJyldCisgICAgYXJndW1lbnRfZ3JvdXBfc2lnbmF0dXJlcyA9IFtdCisgICAgdXNhZ2UgPSAnJydcCisgICAgICAgIHVzYWdlOiBQUk9HIFstaF0gWy1iIGN1c3RvbV90eXBlXSBbLWMgU09NRSBGTE9BVF0gaW50CisgICAgICAgICcnJworICAgIGhlbHAgPSB1c2FnZSArICcnJ1wKKworICAgICAgICBkZXNjcmlwdGlvbgorCisgICAgICAgIHBvc2l0aW9uYWwgYXJndW1lbnRzOgorICAgICAgICAgIGludAorCisgICAgICAgIG9wdGlvbmFsIGFyZ3VtZW50czoKKyAgICAgICAgICAtaCwgLS1oZWxwICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZSBhbmQgZXhpdAorICAgICAgICAgIC1iIGN1c3RvbV90eXBlCisgICAgICAgICAgLWMgU09NRSBGTE9BVAorICAgICAgICAnJycKKyAgICB2ZXJzaW9uID0gJycKKworCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICMgT3B0aW9uYWwvUG9zaXRpb25hbCBjb25zdHJ1Y3RvciB0ZXN0cwogIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkBAIC00NDExLDcgKzQ0NDIsNyBAQAogICAgIGRlZiBfdGVzdF9tb2R1bGVfZW5jb2Rpbmcoc2VsZiwgcGF0aCk6CiAgICAgICAgIHBhdGgsIF8gPSBvcy5wYXRoLnNwbGl0ZXh0KHBhdGgpCiAgICAgICAgIHBhdGggKz0gIi5weSIKLSAgICAgICAgd2l0aCBjb2RlY3Mub3BlbihwYXRoLCAncicsICd1dGY4JykgYXMgZjoKKyAgICAgICAgd2l0aCBjb2RlY3Mub3BlbihwYXRoLCAncicsICd1dGYtOCcpIGFzIGY6CiAgICAgICAgICAgICBmLnJlYWQoKQogCiAgICAgZGVmIHRlc3RfYXJncGFyc2VfbW9kdWxlX2VuY29kaW5nKHNlbGYpOgpAQCAtNDQ1Myw2ICs0NDg0LDY3IEBACiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBzZWxmLmZhaWwoKQogCisjID09PT09PT09PT09PT09PT09PT09PT09PT0KKyMgTWVzc2FnZUNvbnRlbnRFcnJvciB0ZXN0cworIyA9PT09PT09PT09PT09PT09PT09PT09PT09CisKK2NsYXNzIFRlc3RNZXNzYWdlQ29udGVudEVycm9yKFRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X21pc3NpbmdfYXJndW1lbnRfbmFtZV9pbl9tZXNzYWdlKHNlbGYpOgorICAgICAgICBwYXJzZXIgPSBFcnJvclJhaXNpbmdBcmd1bWVudFBhcnNlcihwcm9nPSdQUk9HJywgdXNhZ2U9JycpCisgICAgICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJ3JlcV9wb3MnLCB0eXBlPXN0cikKKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLXJlcV9vcHQnLCB0eXBlPWludCwgcmVxdWlyZWQ9VHJ1ZSkKKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnbmVlZF9vbmUnLCB0eXBlPXN0ciwgbmFyZ3M9JysnKQorCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXJndW1lbnRQYXJzZXJFcnJvcikgYXMgY206CisgICAgICAgICAgICBwYXJzZXIucGFyc2VfYXJncyhbXSkKKyAgICAgICAgbXNnID0gc3RyKGNtLmV4Y2VwdGlvbikKKyAgICAgICAgc2VsZi5hc3NlcnRSZWdleChtc2csICdyZXFfcG9zJykKKyAgICAgICAgc2VsZi5hc3NlcnRSZWdleChtc2csICdyZXFfb3B0JykKKyAgICAgICAgc2VsZi5hc3NlcnRSZWdleChtc2csICduZWVkX29uZScpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXJndW1lbnRQYXJzZXJFcnJvcikgYXMgY206CisgICAgICAgICAgICBwYXJzZXIucGFyc2VfYXJncyhbJ215WGFyZ3VtZW50J10pCisgICAgICAgIG1zZyA9IHN0cihjbS5leGNlcHRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAncmVxX3BvcycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAncmVxX29wdCcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAnbmVlZF9vbmUnKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEFyZ3VtZW50UGFyc2VyRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgcGFyc2VyLnBhcnNlX2FyZ3MoWydteVhhcmd1bWVudCcsICctcmVxX29wdD0xJ10pCisgICAgICAgIG1zZyA9IHN0cihjbS5leGNlcHRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAncmVxX3BvcycpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAncmVxX29wdCcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAnbmVlZF9vbmUnKQorCisgICAgZGVmIHRlc3Rfb3B0aW9uYWxfb3B0aW9uYWxfbm90X2luX21lc3NhZ2Uoc2VsZik6CisgICAgICAgIHBhcnNlciA9IEVycm9yUmFpc2luZ0FyZ3VtZW50UGFyc2VyKHByb2c9J1BST0cnLCB1c2FnZT0nJykKKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgncmVxX3BvcycsIHR5cGU9c3RyKQorICAgICAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLXJlcV9vcHQnLCB0eXBlPWludCwgcmVxdWlyZWQ9VHJ1ZSkKKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1vcHRfb3B0JywgdHlwZT1ib29sLCBuYXJncz0nPycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdD1UcnVlKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEFyZ3VtZW50UGFyc2VyRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgcGFyc2VyLnBhcnNlX2FyZ3MoW10pCisgICAgICAgIG1zZyA9IHN0cihjbS5leGNlcHRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAncmVxX3BvcycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAncmVxX29wdCcpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAnb3B0X29wdCcpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXJndW1lbnRQYXJzZXJFcnJvcikgYXMgY206CisgICAgICAgICAgICBwYXJzZXIucGFyc2VfYXJncyhbJy0tcmVxX29wdD0xJ10pCisgICAgICAgIG1zZyA9IHN0cihjbS5leGNlcHRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAncmVxX3BvcycpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAncmVxX29wdCcpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAnb3B0X29wdCcpCisKKyAgICBkZWYgdGVzdF9vcHRpb25hbF9wb3NpdGlvbmFsX25vdF9pbl9tZXNzYWdlKHNlbGYpOgorICAgICAgICBwYXJzZXIgPSBFcnJvclJhaXNpbmdBcmd1bWVudFBhcnNlcihwcm9nPSdQUk9HJywgdXNhZ2U9JycpCisgICAgICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJ3JlcV9wb3MnKQorICAgICAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCdvcHRpb25hbF9wb3NpdGlvbmFsJywgbmFyZ3M9Jz8nLCBkZWZhdWx0PSdlZ2dzJykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBcmd1bWVudFBhcnNlckVycm9yKSBhcyBjbToKKyAgICAgICAgICAgIHBhcnNlci5wYXJzZV9hcmdzKFtdKQorICAgICAgICBtc2cgPSBzdHIoY20uZXhjZXB0aW9uKQorICAgICAgICBzZWxmLmFzc2VydFJlZ2V4KG1zZywgJ3JlcV9wb3MnKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKG1zZywgJ29wdGlvbmFsX3Bvc2l0aW9uYWwnKQorCisKICMgPT09PT09PT09PT09PT09PT09PT09PQogIyBwYXJzZV9rbm93bl9hcmdzIHRlc3RzCiAjID09PT09PT09PT09PT09PT09PT09PT0KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfYXJyYXkucHkgYi9MaWIvdGVzdC90ZXN0X2FycmF5LnB5CmluZGV4IDUxOTBjMzUuLjQzNGU0OTUgMTAwNzU1Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfYXJyYXkucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9hcnJheS5weQpAQCAtMTYsNiArMTYsMTMgQEAKIGltcG9ydCBhcnJheQogZnJvbSBhcnJheSBpbXBvcnQgX2FycmF5X3JlY29uc3RydWN0b3IgYXMgYXJyYXlfcmVjb25zdHJ1Y3RvcgogCit0cnk6CisgICAgIyBUcnkgdG8gZGV0ZXJtaW5lIGF2YWlsYWJpbGl0eSBvZiBsb25nIGxvbmcgaW5kZXBlbmRlbnRseQorICAgICMgb2YgdGhlIGFycmF5IG1vZHVsZSB1bmRlciB0ZXN0CisgICAgc3RydWN0LmNhbGNzaXplKCdAcScpCisgICAgaGF2ZV9sb25nX2xvbmcgPSBUcnVlCitleGNlcHQgc3RydWN0LmVycm9yOgorICAgIGhhdmVfbG9uZ19sb25nID0gRmFsc2UKIAogY2xhc3MgQXJyYXlTdWJjbGFzcyhhcnJheS5hcnJheSk6CiAgICAgcGFzcwpAQCAtMjYsNiArMzMsOCBAQAogCiB0ZXN0cyA9IFtdICMgbGlzdCB0byBhY2N1bXVsYXRlIGFsbCB0ZXN0cwogdHlwZWNvZGVzID0gInViQmhIaUlsTGZkIgoraWYgaGF2ZV9sb25nX2xvbmc6CisgICAgdHlwZWNvZGVzICs9ICdxUScKIAogY2xhc3MgQmFkQ29uc3RydWN0b3JUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtMjA5LDEwICsyMTgsMTQgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiaVsxXSwgbGVuKGEpKQogCiAgICAgZGVmIHRlc3RfYnl0ZXN3YXAoc2VsZik6Ci0gICAgICAgIGEgPSBhcnJheS5hcnJheShzZWxmLnR5cGVjb2RlLCBzZWxmLmV4YW1wbGUpCisgICAgICAgIGlmIHNlbGYudHlwZWNvZGUgPT0gJ3UnOgorICAgICAgICAgICAgZXhhbXBsZSA9ICdcVTAwMTAwMTAwJworICAgICAgICBlbHNlOgorICAgICAgICAgICAgZXhhbXBsZSA9IHNlbGYuZXhhbXBsZQorICAgICAgICBhID0gYXJyYXkuYXJyYXkoc2VsZi50eXBlY29kZSwgZXhhbXBsZSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBhLmJ5dGVzd2FwLCA0MikKICAgICAgICAgaWYgYS5pdGVtc2l6ZSBpbiAoMSwgMiwgNCwgOCk6Ci0gICAgICAgICAgICBiID0gYXJyYXkuYXJyYXkoc2VsZi50eXBlY29kZSwgc2VsZi5leGFtcGxlKQorICAgICAgICAgICAgYiA9IGFycmF5LmFycmF5KHNlbGYudHlwZWNvZGUsIGV4YW1wbGUpCiAgICAgICAgICAgICBiLmJ5dGVzd2FwKCkKICAgICAgICAgICAgIGlmIGEuaXRlbXNpemU9PTE6CiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLCBiKQpAQCAtMTAwMiw3ICsxMDE1LDcgQEAKICAgICBzbWFsbGVyZXhhbXBsZSA9ICdceDAxXHUyNjNhXHgwMFx1ZmVmZScKICAgICBiaWdnZXJleGFtcGxlID0gJ1x4MDFcdTI2M2FceDAxXHVmZWZmJwogICAgIG91dHNpZGUgPSBzdHIoJ1x4MzMnKQotICAgIG1pbml0ZW1zaXplID0gMgorICAgIG1pbml0ZW1zaXplID0gNAogCiAgICAgZGVmIHRlc3RfdW5pY29kZShzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBhcnJheS5hcnJheSwgJ2InLCAnZm9vJykKQEAgLTEwMTQsNiArMTAyNyw3IEBACiAgICAgICAgIGEuZnJvbXVuaWNvZGUoJ1x4MTFhYmNceGZmXHUxMjM0JykKICAgICAgICAgcyA9IGEudG91bmljb2RlKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLCAnXHhhMFx4YzJcdTEyMzQgXHgxMWFiY1x4ZmZcdTEyMzQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGEuaXRlbXNpemUsIDQpCiAKICAgICAgICAgcyA9ICdceDAwPSJcJ2FcXGJceDgwXHhmZlx1MDAwMFx1MDAwMVx1MTIzNCcKICAgICAgICAgYSA9IGFycmF5LmFycmF5KCd1JywgcykKQEAgLTEyMDUsNiArMTIxOSwxOCBAQAogICAgIG1pbml0ZW1zaXplID0gNAogdGVzdHMuYXBwZW5kKFVuc2lnbmVkTG9uZ1Rlc3QpCiAKK0B1bml0dGVzdC5za2lwSWYobm90IGhhdmVfbG9uZ19sb25nLCAnbmVlZCBsb25nIGxvbmcgc3VwcG9ydCcpCitjbGFzcyBMb25nTG9uZ1Rlc3QoU2lnbmVkTnVtYmVyVGVzdCk6CisgICAgdHlwZWNvZGUgPSAncScKKyAgICBtaW5pdGVtc2l6ZSA9IDgKK3Rlc3RzLmFwcGVuZChMb25nTG9uZ1Rlc3QpCisKK0B1bml0dGVzdC5za2lwSWYobm90IGhhdmVfbG9uZ19sb25nLCAnbmVlZCBsb25nIGxvbmcgc3VwcG9ydCcpCitjbGFzcyBVbnNpZ25lZExvbmdMb25nVGVzdChVbnNpZ25lZE51bWJlclRlc3QpOgorICAgIHR5cGVjb2RlID0gJ1EnCisgICAgbWluaXRlbXNpemUgPSA4Cit0ZXN0cy5hcHBlbmQoVW5zaWduZWRMb25nTG9uZ1Rlc3QpCisKIGNsYXNzIEZQVGVzdChOdW1iZXJUZXN0KToKICAgICBleGFtcGxlID0gWy00Mi4wLCAwLCA0MiwgMWU1LCAtMWUxMF0KICAgICBzbWFsbGVyZXhhbXBsZSA9IFstNDIuMCwgMCwgNDIsIDFlNSwgLTJlMTBdCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2FzdC5weSBiL0xpYi90ZXN0L3Rlc3RfYXN0LnB5CmluZGV4IGJlOWYwNWUuLmI4MDlkMjQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfYXN0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYXN0LnB5CkBAIC0xLDQgKzEsNiBAQAotaW1wb3J0IHN5cywgdW5pdHRlc3QKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHVuaXR0ZXN0CiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGltcG9ydCBhc3QKIApAQCAtNTIsNiArNTQsOSBAQAogICAgICJ3aGlsZSB2OnBhc3MiLAogICAgICMgSWYKICAgICAiaWYgdjpwYXNzIiwKKyAgICAjIFdpdGgKKyAgICAid2l0aCB4IGFzIHk6IHBhc3MiLAorICAgICJ3aXRoIHggYXMgeSwgeiBhcyBxOiBwYXNzIiwKICAgICAjIFJhaXNlCiAgICAgInJhaXNlIEV4Y2VwdGlvbignc3RyaW5nJykiLAogICAgICMgVHJ5RXhjZXB0CkBAIC00OTgsOCArNTAzLDQxMyBAQAogICAgICAgICBzZWxmLmFzc2VydEluKCJpbnZhbGlkIGludGVnZXIgdmFsdWU6IE5vbmUiLCBzdHIoY20uZXhjZXB0aW9uKSkKIAogCitjbGFzcyBBU1RWYWxpZGF0b3JUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgbW9kKHNlbGYsIG1vZCwgbXNnPU5vbmUsIG1vZGU9ImV4ZWMiLCAqLCBleGM9VmFsdWVFcnJvcik6CisgICAgICAgIG1vZC5saW5lbm8gPSBtb2QuY29sX29mZnNldCA9IDAKKyAgICAgICAgYXN0LmZpeF9taXNzaW5nX2xvY2F0aW9ucyhtb2QpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoZXhjKSBhcyBjbToKKyAgICAgICAgICAgIGNvbXBpbGUobW9kLCAiPHRlc3Q+IiwgbW9kZSkKKyAgICAgICAgaWYgbXNnIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihtc2csIHN0cihjbS5leGNlcHRpb24pKQorCisgICAgZGVmIGV4cHIoc2VsZiwgbm9kZSwgbXNnPU5vbmUsICosIGV4Yz1WYWx1ZUVycm9yKToKKyAgICAgICAgbW9kID0gYXN0Lk1vZHVsZShbYXN0LkV4cHIobm9kZSldKQorICAgICAgICBzZWxmLm1vZChtb2QsIG1zZywgZXhjPWV4YykKKworICAgIGRlZiBzdG10KHNlbGYsIHN0bXQsIG1zZz1Ob25lKToKKyAgICAgICAgbW9kID0gYXN0Lk1vZHVsZShbc3RtdF0pCisgICAgICAgIHNlbGYubW9kKG1vZCwgbXNnKQorCisgICAgZGVmIHRlc3RfbW9kdWxlKHNlbGYpOgorICAgICAgICBtID0gYXN0LkludGVyYWN0aXZlKFthc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldKQorICAgICAgICBzZWxmLm1vZChtLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIsICJzaW5nbGUiKQorICAgICAgICBtID0gYXN0LkV4cHJlc3Npb24oYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpCisgICAgICAgIHNlbGYubW9kKG0sICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IiwgImV2YWwiKQorCisgICAgZGVmIF9jaGVja19hcmd1bWVudHMoc2VsZiwgZmFjLCBjaGVjayk6CisgICAgICAgIGRlZiBhcmd1bWVudHMoYXJncz1Ob25lLCB2YXJhcmc9Tm9uZSwgdmFyYXJnYW5ub3RhdGlvbj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgIGt3b25seWFyZ3M9Tm9uZSwga3dhcmc9Tm9uZSwga3dhcmdhbm5vdGF0aW9uPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdHM9Tm9uZSwga3dfZGVmYXVsdHM9Tm9uZSk6CisgICAgICAgICAgICBpZiBhcmdzIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgYXJncyA9IFtdCisgICAgICAgICAgICBpZiBrd29ubHlhcmdzIGlzIE5vbmU6CisgICAgICAgICAgICAgICAga3dvbmx5YXJncyA9IFtdCisgICAgICAgICAgICBpZiBkZWZhdWx0cyBpcyBOb25lOgorICAgICAgICAgICAgICAgIGRlZmF1bHRzID0gW10KKyAgICAgICAgICAgIGlmIGt3X2RlZmF1bHRzIGlzIE5vbmU6CisgICAgICAgICAgICAgICAga3dfZGVmYXVsdHMgPSBbXQorICAgICAgICAgICAgYXJncyA9IGFzdC5hcmd1bWVudHMoYXJncywgdmFyYXJnLCB2YXJhcmdhbm5vdGF0aW9uLCBrd29ubHlhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dhcmcsIGt3YXJnYW5ub3RhdGlvbiwgZGVmYXVsdHMsIGt3X2RlZmF1bHRzKQorICAgICAgICAgICAgcmV0dXJuIGZhYyhhcmdzKQorICAgICAgICBhcmdzID0gW2FzdC5hcmcoIngiLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldCisgICAgICAgIGNoZWNrKGFyZ3VtZW50cyhhcmdzPWFyZ3MpLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGNoZWNrKGFyZ3VtZW50cyh2YXJhcmdhbm5vdGF0aW9uPWFzdC5OdW0oMykpLAorICAgICAgICAgICAgICAidmFyYXJnYW5ub3RhdGlvbiBidXQgbm8gdmFyYXJnIikKKyAgICAgICAgY2hlY2soYXJndW1lbnRzKHZhcmFyZ2Fubm90YXRpb249YXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksIHZhcmFyZz0ieCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgY2hlY2soYXJndW1lbnRzKGt3b25seWFyZ3M9YXJncyksICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgY2hlY2soYXJndW1lbnRzKGt3YXJnYW5ub3RhdGlvbj1hc3QuTnVtKDQyKSksCisgICAgICAgICAgICAgICAgICAgICAgICJrd2FyZ2Fubm90YXRpb24gYnV0IG5vIGt3YXJnIikKKyAgICAgICAgY2hlY2soYXJndW1lbnRzKGt3YXJnYW5ub3RhdGlvbj1hc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAga3dhcmc9IngiKSwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBjaGVjayhhcmd1bWVudHMoZGVmYXVsdHM9W2FzdC5OdW0oMyldKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIm1vcmUgcG9zaXRpb25hbCBkZWZhdWx0cyB0aGFuIGFyZ3MiKQorICAgICAgICBjaGVjayhhcmd1bWVudHMoa3dfZGVmYXVsdHM9W2FzdC5OdW0oNCldKSwKKyAgICAgICAgICAgICAgICAgICAgICAgImxlbmd0aCBvZiBrd29ubHlhcmdzIGlzIG5vdCB0aGUgc2FtZSBhcyBrd19kZWZhdWx0cyIpCisgICAgICAgIGFyZ3MgPSBbYXN0LmFyZygieCIsIGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSkpXQorICAgICAgICBjaGVjayhhcmd1bWVudHMoYXJncz1hcmdzLCBkZWZhdWx0cz1bYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSldKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBhcmdzID0gW2FzdC5hcmcoImEiLCBhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpKSwKKyAgICAgICAgICAgICAgICBhc3QuYXJnKCJiIiwgYXN0Lk5hbWUoInkiLCBhc3QuTG9hZCgpKSldCisgICAgICAgIGNoZWNrKGFyZ3VtZW50cyhrd29ubHlhcmdzPWFyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGt3X2RlZmF1bHRzPVtOb25lLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKV0pLAorICAgICAgICAgICAgICAgICAgICAgICAgICAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF9mdW5jZGVmKHNlbGYpOgorICAgICAgICBhID0gYXN0LmFyZ3VtZW50cyhbXSwgTm9uZSwgTm9uZSwgW10sIE5vbmUsIE5vbmUsIFtdLCBbXSkKKyAgICAgICAgZiA9IGFzdC5GdW5jdGlvbkRlZigieCIsIGEsIFtdLCBbXSwgTm9uZSkKKyAgICAgICAgc2VsZi5zdG10KGYsICJlbXB0eSBib2R5IG9uIEZ1bmN0aW9uRGVmIikKKyAgICAgICAgZiA9IGFzdC5GdW5jdGlvbkRlZigieCIsIGEsIFthc3QuUGFzcygpXSwgW2FzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb25lKQorICAgICAgICBzZWxmLnN0bXQoZiwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBmID0gYXN0LkZ1bmN0aW9uRGVmKCJ4IiwgYSwgW2FzdC5QYXNzKCldLCBbXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5zdG10KGYsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgZGVmIGZhYyhhcmdzKToKKyAgICAgICAgICAgIHJldHVybiBhc3QuRnVuY3Rpb25EZWYoIngiLCBhcmdzLCBbYXN0LlBhc3MoKV0sIFtdLCBOb25lKQorICAgICAgICBzZWxmLl9jaGVja19hcmd1bWVudHMoZmFjLCBzZWxmLnN0bXQpCisKKyAgICBkZWYgdGVzdF9jbGFzc2RlZihzZWxmKToKKyAgICAgICAgZGVmIGNscyhiYXNlcz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBzdGFyYXJncz1Ob25lLCBrd2FyZ3M9Tm9uZSwKKyAgICAgICAgICAgICAgICBib2R5PU5vbmUsIGRlY29yYXRvcl9saXN0PU5vbmUpOgorICAgICAgICAgICAgaWYgYmFzZXMgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBiYXNlcyA9IFtdCisgICAgICAgICAgICBpZiBrZXl3b3JkcyBpcyBOb25lOgorICAgICAgICAgICAgICAgIGtleXdvcmRzID0gW10KKyAgICAgICAgICAgIGlmIGJvZHkgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBib2R5ID0gW2FzdC5QYXNzKCldCisgICAgICAgICAgICBpZiBkZWNvcmF0b3JfbGlzdCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGRlY29yYXRvcl9saXN0ID0gW10KKyAgICAgICAgICAgIHJldHVybiBhc3QuQ2xhc3NEZWYoIm15Y2xhc3MiLCBiYXNlcywga2V5d29yZHMsIHN0YXJhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2FyZ3MsIGJvZHksIGRlY29yYXRvcl9saXN0KQorICAgICAgICBzZWxmLnN0bXQoY2xzKGJhc2VzPVthc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKV0pLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBzZWxmLnN0bXQoY2xzKGtleXdvcmRzPVthc3Qua2V5d29yZCgieCIsIGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKV0pLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBzZWxmLnN0bXQoY2xzKHN0YXJhcmdzPWFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgc2VsZi5zdG10KGNscyhrd2FyZ3M9YXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBzZWxmLnN0bXQoY2xzKGJvZHk9W10pLCAiZW1wdHkgYm9keSBvbiBDbGFzc0RlZiIpCisgICAgICAgIHNlbGYuc3RtdChjbHMoYm9keT1bTm9uZV0pLCAiTm9uZSBkaXNhbGxvd2VkIikKKyAgICAgICAgc2VsZi5zdG10KGNscyhkZWNvcmF0b3JfbGlzdD1bYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSldKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2RlbGV0ZShzZWxmKToKKyAgICAgICAgc2VsZi5zdG10KGFzdC5EZWxldGUoW10pLCAiZW1wdHkgdGFyZ2V0cyBvbiBEZWxldGUiKQorICAgICAgICBzZWxmLnN0bXQoYXN0LkRlbGV0ZShbTm9uZV0pLCAiTm9uZSBkaXNhbGxvd2VkIikKKyAgICAgICAgc2VsZi5zdG10KGFzdC5EZWxldGUoW2FzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSldKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgRGVsIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3RfYXNzaWduKHNlbGYpOgorICAgICAgICBzZWxmLnN0bXQoYXN0LkFzc2lnbihbXSwgYXN0Lk51bSgzKSksICJlbXB0eSB0YXJnZXRzIG9uIEFzc2lnbiIpCisgICAgICAgIHNlbGYuc3RtdChhc3QuQXNzaWduKFtOb25lXSwgYXN0Lk51bSgzKSksICJOb25lIGRpc2FsbG93ZWQiKQorICAgICAgICBzZWxmLnN0bXQoYXN0LkFzc2lnbihbYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKV0sIGFzdC5OdW0oMykpLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBTdG9yZSBjb250ZXh0IikKKyAgICAgICAgc2VsZi5zdG10KGFzdC5Bc3NpZ24oW2FzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoInkiLCBhc3QuU3RvcmUoKSkpLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3RfYXVnYXNzaWduKHNlbGYpOgorICAgICAgICBhdWcgPSBhc3QuQXVnQXNzaWduKGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSksIGFzdC5BZGQoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3QuTmFtZSgieSIsIGFzdC5Mb2FkKCkpKQorICAgICAgICBzZWxmLnN0bXQoYXVnLCAibXVzdCBoYXZlIFN0b3JlIGNvbnRleHQiKQorICAgICAgICBhdWcgPSBhc3QuQXVnQXNzaWduKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBhc3QuQWRkKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoInkiLCBhc3QuU3RvcmUoKSkpCisgICAgICAgIHNlbGYuc3RtdChhdWcsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2ZvcihzZWxmKToKKyAgICAgICAgeCA9IGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpCisgICAgICAgIHkgPSBhc3QuTmFtZSgieSIsIGFzdC5Mb2FkKCkpCisgICAgICAgIHAgPSBhc3QuUGFzcygpCisgICAgICAgIHNlbGYuc3RtdChhc3QuRm9yKHgsIHksIFtdLCBbXSksICJlbXB0eSBib2R5IG9uIEZvciIpCisgICAgICAgIHNlbGYuc3RtdChhc3QuRm9yKGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSksIHksIFtwXSwgW10pLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBTdG9yZSBjb250ZXh0IikKKyAgICAgICAgc2VsZi5zdG10KGFzdC5Gb3IoeCwgYXN0Lk5hbWUoInkiLCBhc3QuU3RvcmUoKSksIFtwXSwgW10pLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBlID0gYXN0LkV4cHIoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpCisgICAgICAgIHNlbGYuc3RtdChhc3QuRm9yKHgsIHksIFtlXSwgW10pLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIHNlbGYuc3RtdChhc3QuRm9yKHgsIHksIFtwXSwgW2VdKSwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3Rfd2hpbGUoc2VsZik6CisgICAgICAgIHNlbGYuc3RtdChhc3QuV2hpbGUoYXN0Lk51bSgzKSwgW10sIFtdKSwgImVtcHR5IGJvZHkgb24gV2hpbGUiKQorICAgICAgICBzZWxmLnN0bXQoYXN0LldoaWxlKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBbYXN0LlBhc3MoKV0sIFtdKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgc2VsZi5zdG10KGFzdC5XaGlsZShhc3QuTnVtKDMpLCBbYXN0LlBhc3MoKV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3RfaWYoc2VsZik6CisgICAgICAgIHNlbGYuc3RtdChhc3QuSWYoYXN0Lk51bSgzKSwgW10sIFtdKSwgImVtcHR5IGJvZHkgb24gSWYiKQorICAgICAgICBpID0gYXN0LklmKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBbYXN0LlBhc3MoKV0sIFtdKQorICAgICAgICBzZWxmLnN0bXQoaSwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBpID0gYXN0LklmKGFzdC5OdW0oMyksIFthc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldLCBbXSkKKyAgICAgICAgc2VsZi5zdG10KGksICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgaSA9IGFzdC5JZihhc3QuTnVtKDMpLCBbYXN0LlBhc3MoKV0sCisgICAgICAgICAgICAgICAgICAgW2FzdC5FeHByKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKV0pCisgICAgICAgIHNlbGYuc3RtdChpLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF93aXRoKHNlbGYpOgorICAgICAgICBwID0gYXN0LlBhc3MoKQorICAgICAgICBzZWxmLnN0bXQoYXN0LldpdGgoW10sIFtwXSksICJlbXB0eSBpdGVtcyBvbiBXaXRoIikKKyAgICAgICAgaSA9IGFzdC53aXRoaXRlbShhc3QuTnVtKDMpLCBOb25lKQorICAgICAgICBzZWxmLnN0bXQoYXN0LldpdGgoW2ldLCBbXSksICJlbXB0eSBib2R5IG9uIFdpdGgiKQorICAgICAgICBpID0gYXN0LndpdGhpdGVtKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBOb25lKQorICAgICAgICBzZWxmLnN0bXQoYXN0LldpdGgoW2ldLCBbcF0pLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGkgPSBhc3Qud2l0aGl0ZW0oYXN0Lk51bSgzKSwgYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKSkKKyAgICAgICAgc2VsZi5zdG10KGFzdC5XaXRoKFtpXSwgW3BdKSwgIm11c3QgaGF2ZSBTdG9yZSBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X3JhaXNlKHNlbGYpOgorICAgICAgICByID0gYXN0LlJhaXNlKE5vbmUsIGFzdC5OdW0oMykpCisgICAgICAgIHNlbGYuc3RtdChyLCAiUmFpc2Ugd2l0aCBjYXVzZSBidXQgbm8gZXhjZXB0aW9uIikKKyAgICAgICAgciA9IGFzdC5SYWlzZShhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwgTm9uZSkKKyAgICAgICAgc2VsZi5zdG10KHIsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgciA9IGFzdC5SYWlzZShhc3QuTnVtKDQpLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5zdG10KHIsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X3RyeShzZWxmKToKKyAgICAgICAgcCA9IGFzdC5QYXNzKCkKKyAgICAgICAgdCA9IGFzdC5UcnkoW10sIFtdLCBbXSwgW3BdKQorICAgICAgICBzZWxmLnN0bXQodCwgImVtcHR5IGJvZHkgb24gVHJ5IikKKyAgICAgICAgdCA9IGFzdC5UcnkoW2FzdC5FeHByKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKV0sIFtdLCBbXSwgW3BdKQorICAgICAgICBzZWxmLnN0bXQodCwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICB0ID0gYXN0LlRyeShbcF0sIFtdLCBbXSwgW10pCisgICAgICAgIHNlbGYuc3RtdCh0LCAiVHJ5IGhhcyBuZWl0aGVyIGV4Y2VwdCBoYW5kbGVycyBub3IgZmluYWxib2R5IikKKyAgICAgICAgdCA9IGFzdC5UcnkoW3BdLCBbXSwgW3BdLCBbcF0pCisgICAgICAgIHNlbGYuc3RtdCh0LCAiVHJ5IGhhcyBvcmVsc2UgYnV0IG5vIGV4Y2VwdCBoYW5kbGVycyIpCisgICAgICAgIHQgPSBhc3QuVHJ5KFtwXSwgW2FzdC5FeGNlcHRIYW5kbGVyKE5vbmUsICJ4IiwgW10pXSwgW10sIFtdKQorICAgICAgICBzZWxmLnN0bXQodCwgImVtcHR5IGJvZHkgb24gRXhjZXB0SGFuZGxlciIpCisgICAgICAgIGUgPSBbYXN0LkV4Y2VwdEhhbmRsZXIoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksICJ5IiwgW3BdKV0KKyAgICAgICAgc2VsZi5zdG10KGFzdC5UcnkoW3BdLCBlLCBbXSwgW10pLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGUgPSBbYXN0LkV4Y2VwdEhhbmRsZXIoTm9uZSwgIngiLCBbcF0pXQorICAgICAgICB0ID0gYXN0LlRyeShbcF0sIGUsIFthc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldLCBbcF0pCisgICAgICAgIHNlbGYuc3RtdCh0LCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIHQgPSBhc3QuVHJ5KFtwXSwgZSwgW3BdLCBbYXN0LkV4cHIoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpXSkKKyAgICAgICAgc2VsZi5zdG10KHQsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2Fzc2VydChzZWxmKToKKyAgICAgICAgc2VsZi5zdG10KGFzdC5Bc3NlcnQoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksIE5vbmUpLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBhc3NydCA9IGFzdC5Bc3NlcnQoYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzdC5OYW1lKCJ5IiwgYXN0LlN0b3JlKCkpKQorICAgICAgICBzZWxmLnN0bXQoYXNzcnQsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2ltcG9ydChzZWxmKToKKyAgICAgICAgc2VsZi5zdG10KGFzdC5JbXBvcnQoW10pLCAiZW1wdHkgbmFtZXMgb24gSW1wb3J0IikKKworICAgIGRlZiB0ZXN0X2ltcG9ydGZyb20oc2VsZik6CisgICAgICAgIGltcCA9IGFzdC5JbXBvcnRGcm9tKE5vbmUsIFthc3QuYWxpYXMoIngiLCBOb25lKV0sIC00MikKKyAgICAgICAgc2VsZi5zdG10KGltcCwgImxldmVsIGxlc3MgdGhhbiAtMSIpCisgICAgICAgIHNlbGYuc3RtdChhc3QuSW1wb3J0RnJvbShOb25lLCBbXSwgMCksICJlbXB0eSBuYW1lcyBvbiBJbXBvcnRGcm9tIikKKworICAgIGRlZiB0ZXN0X2dsb2JhbChzZWxmKToKKyAgICAgICAgc2VsZi5zdG10KGFzdC5HbG9iYWwoW10pLCAiZW1wdHkgbmFtZXMgb24gR2xvYmFsIikKKworICAgIGRlZiB0ZXN0X25vbmxvY2FsKHNlbGYpOgorICAgICAgICBzZWxmLnN0bXQoYXN0Lk5vbmxvY2FsKFtdKSwgImVtcHR5IG5hbWVzIG9uIE5vbmxvY2FsIikKKworICAgIGRlZiB0ZXN0X2V4cHIoc2VsZik6CisgICAgICAgIGUgPSBhc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5zdG10KGUsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2Jvb2xvcChzZWxmKToKKyAgICAgICAgYiA9IGFzdC5Cb29sT3AoYXN0LkFuZCgpLCBbXSkKKyAgICAgICAgc2VsZi5leHByKGIsICJsZXNzIHRoYW4gMiB2YWx1ZXMiKQorICAgICAgICBiID0gYXN0LkJvb2xPcChhc3QuQW5kKCksIFthc3QuTnVtKDMpXSkKKyAgICAgICAgc2VsZi5leHByKGIsICJsZXNzIHRoYW4gMiB2YWx1ZXMiKQorICAgICAgICBiID0gYXN0LkJvb2xPcChhc3QuQW5kKCksIFthc3QuTnVtKDQpLCBOb25lXSkKKyAgICAgICAgc2VsZi5leHByKGIsICJOb25lIGRpc2FsbG93ZWQiKQorICAgICAgICBiID0gYXN0LkJvb2xPcChhc3QuQW5kKCksIFthc3QuTnVtKDQpLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKV0pCisgICAgICAgIHNlbGYuZXhwcihiLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF91bmFyeW9wKHNlbGYpOgorICAgICAgICB1ID0gYXN0LlVuYXJ5T3AoYXN0Lk5vdCgpLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5leHByKHUsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2xhbWJkYShzZWxmKToKKyAgICAgICAgYSA9IGFzdC5hcmd1bWVudHMoW10sIE5vbmUsIE5vbmUsIFtdLCBOb25lLCBOb25lLCBbXSwgW10pCisgICAgICAgIHNlbGYuZXhwcihhc3QuTGFtYmRhKGEsIGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgZGVmIGZhYyhhcmdzKToKKyAgICAgICAgICAgIHJldHVybiBhc3QuTGFtYmRhKGFyZ3MsIGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSkpCisgICAgICAgIHNlbGYuX2NoZWNrX2FyZ3VtZW50cyhmYWMsIHNlbGYuZXhwcikKKworICAgIGRlZiB0ZXN0X2lmZXhwKHNlbGYpOgorICAgICAgICBsID0gYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKQorICAgICAgICBzID0gYXN0Lk5hbWUoInkiLCBhc3QuU3RvcmUoKSkKKyAgICAgICAgZm9yIGFyZ3MgaW4gKHMsIGwsIGwpLCAobCwgcywgbCksIChsLCBsLCBzKToKKyAgICAgICAgICAgIHNlbGYuZXhwcihhc3QuSWZFeHAoKmFyZ3MpLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF9kaWN0KHNlbGYpOgorICAgICAgICBkID0gYXN0LkRpY3QoW10sIFthc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpXSkKKyAgICAgICAgc2VsZi5leHByKGQsICJzYW1lIG51bWJlciBvZiBrZXlzIGFzIHZhbHVlcyIpCisgICAgICAgIGQgPSBhc3QuRGljdChbTm9uZV0sIFthc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpXSkKKyAgICAgICAgc2VsZi5leHByKGQsICJOb25lIGRpc2FsbG93ZWQiKQorICAgICAgICBkID0gYXN0LkRpY3QoW2FzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSldLCBbTm9uZV0pCisgICAgICAgIHNlbGYuZXhwcihkLCAiTm9uZSBkaXNhbGxvd2VkIikKKworICAgIGRlZiB0ZXN0X3NldChzZWxmKToKKyAgICAgICAgc2VsZi5leHByKGFzdC5TZXQoW05vbmVdKSwgIk5vbmUgZGlzYWxsb3dlZCIpCisgICAgICAgIHMgPSBhc3QuU2V0KFthc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKV0pCisgICAgICAgIHNlbGYuZXhwcihzLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgX2NoZWNrX2NvbXByZWhlbnNpb24oc2VsZiwgZmFjKToKKyAgICAgICAgc2VsZi5leHByKGZhYyhbXSksICJjb21wcmVoZW5zaW9uIHdpdGggbm8gZ2VuZXJhdG9ycyIpCisgICAgICAgIGcgPSBhc3QuY29tcHJlaGVuc2lvbihhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKSwgW10pCisgICAgICAgIHNlbGYuZXhwcihmYWMoW2ddKSwgIm11c3QgaGF2ZSBTdG9yZSBjb250ZXh0IikKKyAgICAgICAgZyA9IGFzdC5jb21wcmVoZW5zaW9uKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksIFtdKQorICAgICAgICBzZWxmLmV4cHIoZmFjKFtnXSksICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgeCA9IGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpCisgICAgICAgIHkgPSBhc3QuTmFtZSgieSIsIGFzdC5Mb2FkKCkpCisgICAgICAgIGcgPSBhc3QuY29tcHJlaGVuc2lvbih4LCB5LCBbTm9uZV0pCisgICAgICAgIHNlbGYuZXhwcihmYWMoW2ddKSwgIk5vbmUgZGlzYWxsb3dlZCIpCisgICAgICAgIGcgPSBhc3QuY29tcHJlaGVuc2lvbih4LCB5LCBbYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSldKQorICAgICAgICBzZWxmLmV4cHIoZmFjKFtnXSksICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiBfc2ltcGxlX2NvbXAoc2VsZiwgZmFjKToKKyAgICAgICAgZyA9IGFzdC5jb21wcmVoZW5zaW9uKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKSwgW10pCisgICAgICAgIHNlbGYuZXhwcihmYWMoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksIFtnXSksCisgICAgICAgICAgICAgICAgICAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGRlZiB3cmFwKGdlbnMpOgorICAgICAgICAgICAgcmV0dXJuIGZhYyhhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwgZ2VucykKKyAgICAgICAgc2VsZi5fY2hlY2tfY29tcHJlaGVuc2lvbih3cmFwKQorCisgICAgZGVmIHRlc3RfbGlzdGNvbXAoc2VsZik6CisgICAgICAgIHNlbGYuX3NpbXBsZV9jb21wKGFzdC5MaXN0Q29tcCkKKworICAgIGRlZiB0ZXN0X3NldGNvbXAoc2VsZik6CisgICAgICAgIHNlbGYuX3NpbXBsZV9jb21wKGFzdC5TZXRDb21wKQorCisgICAgZGVmIHRlc3RfZ2VuZXJhdG9yZXhwKHNlbGYpOgorICAgICAgICBzZWxmLl9zaW1wbGVfY29tcChhc3QuR2VuZXJhdG9yRXhwKQorCisgICAgZGVmIHRlc3RfZGljdGNvbXAoc2VsZik6CisgICAgICAgIGcgPSBhc3QuY29tcHJlaGVuc2lvbihhc3QuTmFtZSgieSIsIGFzdC5TdG9yZSgpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzdC5OYW1lKCJwIiwgYXN0LkxvYWQoKSksIFtdKQorICAgICAgICBjID0gYXN0LkRpY3RDb21wKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGFzdC5OYW1lKCJ5IiwgYXN0LkxvYWQoKSksIFtnXSkKKyAgICAgICAgc2VsZi5leHByKGMsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgYyA9IGFzdC5EaWN0Q29tcChhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGFzdC5OYW1lKCJ5IiwgYXN0LlN0b3JlKCkpLCBbZ10pCisgICAgICAgIHNlbGYuZXhwcihjLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGRlZiBmYWN0b3J5KGNvbXBzKToKKyAgICAgICAgICAgIGsgPSBhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpCisgICAgICAgICAgICB2ID0gYXN0Lk5hbWUoInkiLCBhc3QuTG9hZCgpKQorICAgICAgICAgICAgcmV0dXJuIGFzdC5EaWN0Q29tcChrLCB2LCBjb21wcykKKyAgICAgICAgc2VsZi5fY2hlY2tfY29tcHJlaGVuc2lvbihmYWN0b3J5KQorCisgICAgZGVmIHRlc3RfeWllbGQoc2VsZik6CisgICAgICAgIHNlbGYuZXhwcihhc3QuWWllbGQoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpLCAibXVzdCBoYXZlIExvYWQiKQorICAgICAgICBzZWxmLmV4cHIoYXN0LllpZWxkRnJvbShhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSksICJtdXN0IGhhdmUgTG9hZCIpCisKKyAgICBkZWYgdGVzdF9jb21wYXJlKHNlbGYpOgorICAgICAgICBsZWZ0ID0gYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKQorICAgICAgICBjb21wID0gYXN0LkNvbXBhcmUobGVmdCwgW2FzdC5JbigpXSwgW10pCisgICAgICAgIHNlbGYuZXhwcihjb21wLCAibm8gY29tcGFyYXRvcnMiKQorICAgICAgICBjb21wID0gYXN0LkNvbXBhcmUobGVmdCwgW2FzdC5JbigpXSwgW2FzdC5OdW0oNCksIGFzdC5OdW0oNSldKQorICAgICAgICBzZWxmLmV4cHIoY29tcCwgImRpZmZlcmVudCBudW1iZXIgb2YgY29tcGFyYXRvcnMgYW5kIG9wZXJhbmRzIikKKyAgICAgICAgY29tcCA9IGFzdC5Db21wYXJlKGFzdC5OdW0oImJsYWgiKSwgW2FzdC5JbigpXSwgW2xlZnRdKQorICAgICAgICBzZWxmLmV4cHIoY29tcCwgIm5vbi1udW1lcmljIiwgZXhjPVR5cGVFcnJvcikKKyAgICAgICAgY29tcCA9IGFzdC5Db21wYXJlKGxlZnQsIFthc3QuSW4oKV0sIFthc3QuTnVtKCJibGFoIildKQorICAgICAgICBzZWxmLmV4cHIoY29tcCwgIm5vbi1udW1lcmljIiwgZXhjPVR5cGVFcnJvcikKKworICAgIGRlZiB0ZXN0X2NhbGwoc2VsZik6CisgICAgICAgIGZ1bmMgPSBhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpCisgICAgICAgIGFyZ3MgPSBbYXN0Lk5hbWUoInkiLCBhc3QuTG9hZCgpKV0KKyAgICAgICAga2V5d29yZHMgPSBbYXN0LmtleXdvcmQoInciLCBhc3QuTmFtZSgieiIsIGFzdC5Mb2FkKCkpKV0KKyAgICAgICAgc3RhcmFyZyA9IGFzdC5OYW1lKCJwIiwgYXN0LkxvYWQoKSkKKyAgICAgICAga3dhcmcgPSBhc3QuTmFtZSgicSIsIGFzdC5Mb2FkKCkpCisgICAgICAgIGNhbGwgPSBhc3QuQ2FsbChhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwgYXJncywga2V5d29yZHMsIHN0YXJhcmcsCisgICAgICAgICAgICAgICAgICAgICAgICBrd2FyZykKKyAgICAgICAgc2VsZi5leHByKGNhbGwsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgY2FsbCA9IGFzdC5DYWxsKGZ1bmMsIFtOb25lXSwga2V5d29yZHMsIHN0YXJhcmcsIGt3YXJnKQorICAgICAgICBzZWxmLmV4cHIoY2FsbCwgIk5vbmUgZGlzYWxsb3dlZCIpCisgICAgICAgIGJhZF9rZXl3b3JkcyA9IFthc3Qua2V5d29yZCgidyIsIGFzdC5OYW1lKCJ6IiwgYXN0LlN0b3JlKCkpKV0KKyAgICAgICAgY2FsbCA9IGFzdC5DYWxsKGZ1bmMsIGFyZ3MsIGJhZF9rZXl3b3Jkcywgc3RhcmFyZywga3dhcmcpCisgICAgICAgIHNlbGYuZXhwcihjYWxsLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGNhbGwgPSBhc3QuQ2FsbChmdW5jLCBhcmdzLCBrZXl3b3JkcywgYXN0Lk5hbWUoInoiLCBhc3QuU3RvcmUoKSksIGt3YXJnKQorICAgICAgICBzZWxmLmV4cHIoY2FsbCwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBjYWxsID0gYXN0LkNhbGwoZnVuYywgYXJncywga2V5d29yZHMsIHN0YXJhcmcsCisgICAgICAgICAgICAgICAgICAgICAgICBhc3QuTmFtZSgidyIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5leHByKGNhbGwsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X251bShzZWxmKToKKyAgICAgICAgY2xhc3Mgc3ViaW50KGludCk6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGNsYXNzIHN1YmZsb2F0KGZsb2F0KToKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgY2xhc3Mgc3ViY29tcGxleChjb21wbGV4KToKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgZm9yIG9iaiBpbiAiMCIsICJoZWxsbyIsIHN1YmludCgpLCBzdWJmbG9hdCgpLCBzdWJjb21wbGV4KCk6CisgICAgICAgICAgICBzZWxmLmV4cHIoYXN0Lk51bShvYmopLCAibm9uLW51bWVyaWMiLCBleGM9VHlwZUVycm9yKQorCisgICAgZGVmIHRlc3RfYXR0cmlidXRlKHNlbGYpOgorICAgICAgICBhdHRyID0gYXN0LkF0dHJpYnV0ZShhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwgInkiLCBhc3QuTG9hZCgpKQorICAgICAgICBzZWxmLmV4cHIoYXR0ciwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3Rfc3Vic2NyaXB0KHNlbGYpOgorICAgICAgICBzdWIgPSBhc3QuU3Vic2NyaXB0KGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBhc3QuSW5kZXgoYXN0Lk51bSgzKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0LkxvYWQoKSkKKyAgICAgICAgc2VsZi5leHByKHN1YiwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICB4ID0gYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKQorICAgICAgICBzdWIgPSBhc3QuU3Vic2NyaXB0KHgsIGFzdC5JbmRleChhc3QuTmFtZSgieSIsIGFzdC5TdG9yZSgpKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0LkxvYWQoKSkKKyAgICAgICAgc2VsZi5leHByKHN1YiwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBzID0gYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkKKyAgICAgICAgZm9yIGFyZ3MgaW4gKHMsIE5vbmUsIE5vbmUpLCAoTm9uZSwgcywgTm9uZSksIChOb25lLCBOb25lLCBzKToKKyAgICAgICAgICAgIHNsID0gYXN0LlNsaWNlKCphcmdzKQorICAgICAgICAgICAgc2VsZi5leHByKGFzdC5TdWJzY3JpcHQoeCwgc2wsIGFzdC5Mb2FkKCkpLAorICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgc2wgPSBhc3QuRXh0U2xpY2UoW10pCisgICAgICAgIHNlbGYuZXhwcihhc3QuU3Vic2NyaXB0KHgsIHNsLCBhc3QuTG9hZCgpKSwgImVtcHR5IGRpbXMgb24gRXh0U2xpY2UiKQorICAgICAgICBzbCA9IGFzdC5FeHRTbGljZShbYXN0LkluZGV4KHMpXSkKKyAgICAgICAgc2VsZi5leHByKGFzdC5TdWJzY3JpcHQoeCwgc2wsIGFzdC5Mb2FkKCkpLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF9zdGFycmVkKHNlbGYpOgorICAgICAgICBsZWZ0ID0gYXN0Lkxpc3QoW2FzdC5TdGFycmVkKGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSksIGFzdC5TdG9yZSgpKV0sCisgICAgICAgICAgICAgICAgICAgICAgICBhc3QuU3RvcmUoKSkKKyAgICAgICAgYXNzaWduID0gYXN0LkFzc2lnbihbbGVmdF0sIGFzdC5OdW0oNCkpCisgICAgICAgIHNlbGYuc3RtdChhc3NpZ24sICJtdXN0IGhhdmUgU3RvcmUgY29udGV4dCIpCisKKyAgICBkZWYgX3NlcXVlbmNlKHNlbGYsIGZhYyk6CisgICAgICAgIHNlbGYuZXhwcihmYWMoW05vbmVdLCBhc3QuTG9hZCgpKSwgIk5vbmUgZGlzYWxsb3dlZCIpCisgICAgICAgIHNlbGYuZXhwcihmYWMoW2FzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpXSwgYXN0LkxvYWQoKSksCisgICAgICAgICAgICAgICAgICAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF9saXN0KHNlbGYpOgorICAgICAgICBzZWxmLl9zZXF1ZW5jZShhc3QuTGlzdCkKKworICAgIGRlZiB0ZXN0X3R1cGxlKHNlbGYpOgorICAgICAgICBzZWxmLl9zZXF1ZW5jZShhc3QuVHVwbGUpCisKKyAgICBkZWYgdGVzdF9zdGRsaWJfdmFsaWRhdGVzKHNlbGYpOgorICAgICAgICBzdGRsaWIgPSBvcy5wYXRoLmRpcm5hbWUoYXN0Ll9fZmlsZV9fKQorICAgICAgICB0ZXN0cyA9IFtmbiBmb3IgZm4gaW4gb3MubGlzdGRpcihzdGRsaWIpIGlmIGZuLmVuZHN3aXRoKCIucHkiKV0KKyAgICAgICAgdGVzdHMuZXh0ZW5kKFsidGVzdC90ZXN0X2dyYW1tYXIucHkiLCAidGVzdC90ZXN0X3VucGFja19leC5weSJdKQorICAgICAgICBmb3IgbW9kdWxlIGluIHRlc3RzOgorICAgICAgICAgICAgZm4gPSBvcy5wYXRoLmpvaW4oc3RkbGliLCBtb2R1bGUpCisgICAgICAgICAgICB3aXRoIG9wZW4oZm4sICJyIiwgZW5jb2Rpbmc9InV0Zi04IikgYXMgZnA6CisgICAgICAgICAgICAgICAgc291cmNlID0gZnAucmVhZCgpCisgICAgICAgICAgICBtb2QgPSBhc3QucGFyc2Uoc291cmNlKQorICAgICAgICAgICAgY29tcGlsZShtb2QsIGZuLCAiZXhlYyIpCisKKwogZGVmIHRlc3RfbWFpbigpOgotICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KEFTVF9UZXN0cywgQVNUSGVscGVyc19UZXN0KQorICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KEFTVF9UZXN0cywgQVNUSGVscGVyc19UZXN0LCBBU1RWYWxpZGF0b3JUZXN0cykKIAogZGVmIG1haW4oKToKICAgICBpZiBfX25hbWVfXyAhPSAnX19tYWluX18nOgpAQCAtNTMzLDkgKzk0MywxMSBAQAogKCdNb2R1bGUnLCBbKCdGb3InLCAoMSwgMCksICgnTmFtZScsICgxLCA0KSwgJ3YnLCAoJ1N0b3JlJywpKSwgKCdOYW1lJywgKDEsIDkpLCAndicsICgnTG9hZCcsKSksIFsoJ1Bhc3MnLCAoMSwgMTEpKV0sIFtdKV0pLAogKCdNb2R1bGUnLCBbKCdXaGlsZScsICgxLCAwKSwgKCdOYW1lJywgKDEsIDYpLCAndicsICgnTG9hZCcsKSksIFsoJ1Bhc3MnLCAoMSwgOCkpXSwgW10pXSksCiAoJ01vZHVsZScsIFsoJ0lmJywgKDEsIDApLCAoJ05hbWUnLCAoMSwgMyksICd2JywgKCdMb2FkJywpKSwgWygnUGFzcycsICgxLCA1KSldLCBbXSldKSwKKygnTW9kdWxlJywgWygnV2l0aCcsICgxLCAwKSwgWygnd2l0aGl0ZW0nLCAoJ05hbWUnLCAoMSwgNSksICd4JywgKCdMb2FkJywpKSwgKCdOYW1lJywgKDEsIDEwKSwgJ3knLCAoJ1N0b3JlJywpKSldLCBbKCdQYXNzJywgKDEsIDEzKSldKV0pLAorKCdNb2R1bGUnLCBbKCdXaXRoJywgKDEsIDApLCBbKCd3aXRoaXRlbScsICgnTmFtZScsICgxLCA1KSwgJ3gnLCAoJ0xvYWQnLCkpLCAoJ05hbWUnLCAoMSwgMTApLCAneScsICgnU3RvcmUnLCkpKSwgKCd3aXRoaXRlbScsICgnTmFtZScsICgxLCAxMyksICd6JywgKCdMb2FkJywpKSwgKCdOYW1lJywgKDEsIDE4KSwgJ3EnLCAoJ1N0b3JlJywpKSldLCBbKCdQYXNzJywgKDEsIDIxKSldKV0pLAogKCdNb2R1bGUnLCBbKCdSYWlzZScsICgxLCAwKSwgKCdDYWxsJywgKDEsIDYpLCAoJ05hbWUnLCAoMSwgNiksICdFeGNlcHRpb24nLCAoJ0xvYWQnLCkpLCBbKCdTdHInLCAoMSwgMTYpLCAnc3RyaW5nJyldLCBbXSwgTm9uZSwgTm9uZSksIE5vbmUpXSksCi0oJ01vZHVsZScsIFsoJ1RyeUV4Y2VwdCcsICgxLCAwKSwgWygnUGFzcycsICgyLCAyKSldLCBbKCdFeGNlcHRIYW5kbGVyJywgKDMsIDApLCAoJ05hbWUnLCAoMywgNyksICdFeGNlcHRpb24nLCAoJ0xvYWQnLCkpLCBOb25lLCBbKCdQYXNzJywgKDQsIDIpKV0pXSwgW10pXSksCi0oJ01vZHVsZScsIFsoJ1RyeUZpbmFsbHknLCAoMSwgMCksIFsoJ1Bhc3MnLCAoMiwgMikpXSwgWygnUGFzcycsICg0LCAyKSldKV0pLAorKCdNb2R1bGUnLCBbKCdUcnknLCAoMSwgMCksIFsoJ1Bhc3MnLCAoMiwgMikpXSwgWygnRXhjZXB0SGFuZGxlcicsICgzLCAwKSwgKCdOYW1lJywgKDMsIDcpLCAnRXhjZXB0aW9uJywgKCdMb2FkJywpKSwgTm9uZSwgWygnUGFzcycsICg0LCAyKSldKV0sIFtdLCBbXSldKSwKKygnTW9kdWxlJywgWygnVHJ5JywgKDEsIDApLCBbKCdQYXNzJywgKDIsIDIpKV0sIFtdLCBbXSwgWygnUGFzcycsICg0LCAyKSldKV0pLAogKCdNb2R1bGUnLCBbKCdBc3NlcnQnLCAoMSwgMCksICgnTmFtZScsICgxLCA3KSwgJ3YnLCAoJ0xvYWQnLCkpLCBOb25lKV0pLAogKCdNb2R1bGUnLCBbKCdJbXBvcnQnLCAoMSwgMCksIFsoJ2FsaWFzJywgJ3N5cycsIE5vbmUpXSldKSwKICgnTW9kdWxlJywgWygnSW1wb3J0RnJvbScsICgxLCAwKSwgJ3N5cycsIFsoJ2FsaWFzJywgJ3YnLCBOb25lKV0sIDApXSksCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2FzeW5jb3JlLnB5IGIvTGliL3Rlc3QvdGVzdF9hc3luY29yZS5weQppbmRleCA1M2M0OWE4Li41MmRmZjBmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2FzeW5jb3JlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYXN5bmNvcmUucHkKQEAgLTIwLDYgKzIwLDggQEAKIAogSE9TVCA9IHN1cHBvcnQuSE9TVAogCitIQVNfVU5JWF9TT0NLRVRTID0gaGFzYXR0cihzb2NrZXQsICdBRl9VTklYJykKKwogY2xhc3MgZHVtbXlzb2NrZXQ6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgogICAgICAgICBzZWxmLmNsb3NlZCA9IEZhbHNlCkBAIC04Nyw2ICs4OSwxMyBAQAogICAgICAgICBzZXJ2LmNsb3NlKCkKICAgICAgICAgZXZ0LnNldCgpCiAKK2RlZiBiaW5kX2FmX2F3YXJlKHNvY2ssIGFkZHIpOgorICAgICIiIkhlbHBlciBmdW5jdGlvbiB0byBiaW5kIGEgc29ja2V0IGFjY29yZGluZyB0byBpdHMgZmFtaWx5LiIiIgorICAgIGlmIEhBU19VTklYX1NPQ0tFVFMgYW5kIHNvY2suZmFtaWx5ID09IHNvY2tldC5BRl9VTklYOgorICAgICAgICAjIE1ha2Ugc3VyZSB0aGUgcGF0aCBkb2Vzbid0IGV4aXN0LgorICAgICAgICB1bmxpbmsoYWRkcikKKyAgICBzb2NrLmJpbmQoYWRkcikKKwogCiBjbGFzcyBIZWxwZXJGdW5jdGlvblRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgdGVzdF9yZWFkd3JpdGVleGMoc2VsZik6CkBAIC0zNTIsNyArMzYxLDcgQEAKICAgICBAc3VwcG9ydC5yZWFwX3RocmVhZHMKICAgICBkZWYgdGVzdF9zZW5kKHNlbGYpOgogICAgICAgICBldnQgPSB0aHJlYWRpbmcuRXZlbnQoKQotICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldCgpCiAgICAgICAgIHNvY2suc2V0dGltZW91dCgzKQogICAgICAgICBwb3J0ID0gc3VwcG9ydC5iaW5kX3BvcnQoc29jaykKIApAQCAtMzY3LDcgKzM3Niw3IEBACiAKICAgICAgICAgICAgIGRhdGEgPSBiIlN1cHBvc2UgdGhlcmUgaXNuJ3QgYSAxNi10b24gd2VpZ2h0PyIKICAgICAgICAgICAgIGQgPSBkaXNwYXRjaGVyd2l0aHNlbmRfbm9yZWFkKCkKLSAgICAgICAgICAgIGQuY3JlYXRlX3NvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorICAgICAgICAgICAgZC5jcmVhdGVfc29ja2V0KCkKICAgICAgICAgICAgIGQuY29ubmVjdCgoSE9TVCwgcG9ydCkpCiAKICAgICAgICAgICAgICMgZ2l2ZSB0aW1lIGZvciBzb2NrZXQgdG8gY29ubmVjdApAQCAtNDY3LDIyICs0NzYsMjIgQEAKICAgICAgICAgcmFpc2UKIAogCi1jbGFzcyBUQ1BTZXJ2ZXIoYXN5bmNvcmUuZGlzcGF0Y2hlcik6CitjbGFzcyBCYXNlU2VydmVyKGFzeW5jb3JlLmRpc3BhdGNoZXIpOgogICAgICIiIkEgc2VydmVyIHdoaWNoIGxpc3RlbnMgb24gYW4gYWRkcmVzcyBhbmQgZGlzcGF0Y2hlcyB0aGUKICAgICBjb25uZWN0aW9uIHRvIGEgaGFuZGxlci4KICAgICAiIiIKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBoYW5kbGVyPUJhc2VUZXN0SGFuZGxlciwgaG9zdD1IT1NULCBwb3J0PTApOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmYW1pbHksIGFkZHIsIGhhbmRsZXI9QmFzZVRlc3RIYW5kbGVyKToKICAgICAgICAgYXN5bmNvcmUuZGlzcGF0Y2hlci5fX2luaXRfXyhzZWxmKQotICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KGZhbWlseSkKICAgICAgICAgc2VsZi5zZXRfcmV1c2VfYWRkcigpCi0gICAgICAgIHNlbGYuYmluZCgoaG9zdCwgcG9ydCkpCisgICAgICAgIGJpbmRfYWZfYXdhcmUoc2VsZi5zb2NrZXQsIGFkZHIpCiAgICAgICAgIHNlbGYubGlzdGVuKDUpCiAgICAgICAgIHNlbGYuaGFuZGxlciA9IGhhbmRsZXIKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBhZGRyZXNzKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5zb2NrZXQuZ2V0c29ja25hbWUoKVs6Ml0KKyAgICAgICAgcmV0dXJuIHNlbGYuc29ja2V0LmdldHNvY2tuYW1lKCkKIAogICAgIGRlZiBoYW5kbGVfYWNjZXB0ZWQoc2VsZiwgc29jaywgYWRkcik6CiAgICAgICAgIHNlbGYuaGFuZGxlcihzb2NrKQpAQCAtNDkzLDkgKzUwMiw5IEBACiAKIGNsYXNzIEJhc2VDbGllbnQoQmFzZVRlc3RIYW5kbGVyKToKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhZGRyZXNzKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmFtaWx5LCBhZGRyZXNzKToKICAgICAgICAgQmFzZVRlc3RIYW5kbGVyLl9faW5pdF9fKHNlbGYpCi0gICAgICAgIHNlbGYuY3JlYXRlX3NvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoZmFtaWx5KQogICAgICAgICBzZWxmLmNvbm5lY3QoYWRkcmVzcykKIAogICAgIGRlZiBoYW5kbGVfY29ubmVjdChzZWxmKToKQEAgLTUyNSw4ICs1MzQsOCBAQAogICAgICAgICAgICAgZGVmIGhhbmRsZV9jb25uZWN0KHNlbGYpOgogICAgICAgICAgICAgICAgIHNlbGYuZmxhZyA9IFRydWUKIAotICAgICAgICBzZXJ2ZXIgPSBUQ1BTZXJ2ZXIoKQotICAgICAgICBjbGllbnQgPSBUZXN0Q2xpZW50KHNlcnZlci5hZGRyZXNzKQorICAgICAgICBzZXJ2ZXIgPSBCYXNlU2VydmVyKHNlbGYuZmFtaWx5LCBzZWxmLmFkZHIpCisgICAgICAgIGNsaWVudCA9IFRlc3RDbGllbnQoc2VsZi5mYW1pbHksIHNlcnZlci5hZGRyZXNzKQogICAgICAgICBzZWxmLmxvb3Bfd2FpdGluZ19mb3JfZmxhZyhjbGllbnQpCiAKICAgICBkZWYgdGVzdF9oYW5kbGVfYWNjZXB0KHNlbGYpOgpAQCAtNTM0LDE4ICs1NDMsMTggQEAKIAogICAgICAgICBjbGFzcyBUZXN0TGlzdGVuZXIoQmFzZVRlc3RIYW5kbGVyKToKIAotICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZhbWlseSwgYWRkcik6CiAgICAgICAgICAgICAgICAgQmFzZVRlc3RIYW5kbGVyLl9faW5pdF9fKHNlbGYpCi0gICAgICAgICAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCi0gICAgICAgICAgICAgICAgc2VsZi5iaW5kKChIT1NULCAwKSkKKyAgICAgICAgICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoZmFtaWx5KQorICAgICAgICAgICAgICAgIGJpbmRfYWZfYXdhcmUoc2VsZi5zb2NrZXQsIGFkZHIpCiAgICAgICAgICAgICAgICAgc2VsZi5saXN0ZW4oNSkKLSAgICAgICAgICAgICAgICBzZWxmLmFkZHJlc3MgPSBzZWxmLnNvY2tldC5nZXRzb2NrbmFtZSgpWzoyXQorICAgICAgICAgICAgICAgIHNlbGYuYWRkcmVzcyA9IHNlbGYuc29ja2V0LmdldHNvY2tuYW1lKCkKIAogICAgICAgICAgICAgZGVmIGhhbmRsZV9hY2NlcHQoc2VsZik6CiAgICAgICAgICAgICAgICAgc2VsZi5mbGFnID0gVHJ1ZQogCi0gICAgICAgIHNlcnZlciA9IFRlc3RMaXN0ZW5lcigpCi0gICAgICAgIGNsaWVudCA9IEJhc2VDbGllbnQoc2VydmVyLmFkZHJlc3MpCisgICAgICAgIHNlcnZlciA9IFRlc3RMaXN0ZW5lcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyKQorICAgICAgICBjbGllbnQgPSBCYXNlQ2xpZW50KHNlbGYuZmFtaWx5LCBzZXJ2ZXIuYWRkcmVzcykKICAgICAgICAgc2VsZi5sb29wX3dhaXRpbmdfZm9yX2ZsYWcoc2VydmVyKQogCiAgICAgZGVmIHRlc3RfaGFuZGxlX2FjY2VwdGVkKHNlbGYpOgpAQCAtNTUzLDEyICs1NjIsMTIgQEAKIAogICAgICAgICBjbGFzcyBUZXN0TGlzdGVuZXIoQmFzZVRlc3RIYW5kbGVyKToKIAotICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZhbWlseSwgYWRkcik6CiAgICAgICAgICAgICAgICAgQmFzZVRlc3RIYW5kbGVyLl9faW5pdF9fKHNlbGYpCi0gICAgICAgICAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCi0gICAgICAgICAgICAgICAgc2VsZi5iaW5kKChIT1NULCAwKSkKKyAgICAgICAgICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoZmFtaWx5KQorICAgICAgICAgICAgICAgIGJpbmRfYWZfYXdhcmUoc2VsZi5zb2NrZXQsIGFkZHIpCiAgICAgICAgICAgICAgICAgc2VsZi5saXN0ZW4oNSkKLSAgICAgICAgICAgICAgICBzZWxmLmFkZHJlc3MgPSBzZWxmLnNvY2tldC5nZXRzb2NrbmFtZSgpWzoyXQorICAgICAgICAgICAgICAgIHNlbGYuYWRkcmVzcyA9IHNlbGYuc29ja2V0LmdldHNvY2tuYW1lKCkKIAogICAgICAgICAgICAgZGVmIGhhbmRsZV9hY2NlcHQoc2VsZik6CiAgICAgICAgICAgICAgICAgYXN5bmNvcmUuZGlzcGF0Y2hlci5oYW5kbGVfYWNjZXB0KHNlbGYpCkBAIC01NjcsOCArNTc2LDggQEAKICAgICAgICAgICAgICAgICBzb2NrLmNsb3NlKCkKICAgICAgICAgICAgICAgICBzZWxmLmZsYWcgPSBUcnVlCiAKLSAgICAgICAgc2VydmVyID0gVGVzdExpc3RlbmVyKCkKLSAgICAgICAgY2xpZW50ID0gQmFzZUNsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gVGVzdExpc3RlbmVyKHNlbGYuZmFtaWx5LCBzZWxmLmFkZHIpCisgICAgICAgIGNsaWVudCA9IEJhc2VDbGllbnQoc2VsZi5mYW1pbHksIHNlcnZlci5hZGRyZXNzKQogICAgICAgICBzZWxmLmxvb3Bfd2FpdGluZ19mb3JfZmxhZyhzZXJ2ZXIpCiAKIApAQCAtNTg0LDggKzU5Myw4IEBACiAgICAgICAgICAgICAgICAgQmFzZVRlc3RIYW5kbGVyLl9faW5pdF9fKHNlbGYsIGNvbm4pCiAgICAgICAgICAgICAgICAgc2VsZi5zZW5kKGIneCcgKiAxMDI0KQogCi0gICAgICAgIHNlcnZlciA9IFRDUFNlcnZlcihUZXN0SGFuZGxlcikKLSAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyLCBUZXN0SGFuZGxlcikKKyAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZWxmLmZhbWlseSwgc2VydmVyLmFkZHJlc3MpCiAgICAgICAgIHNlbGYubG9vcF93YWl0aW5nX2Zvcl9mbGFnKGNsaWVudCkKIAogICAgIGRlZiB0ZXN0X2hhbmRsZV93cml0ZShzZWxmKToKQEAgLTU5NSw4ICs2MDQsOCBAQAogICAgICAgICAgICAgZGVmIGhhbmRsZV93cml0ZShzZWxmKToKICAgICAgICAgICAgICAgICBzZWxmLmZsYWcgPSBUcnVlCiAKLSAgICAgICAgc2VydmVyID0gVENQU2VydmVyKCkKLSAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyKQorICAgICAgICBjbGllbnQgPSBUZXN0Q2xpZW50KHNlbGYuZmFtaWx5LCBzZXJ2ZXIuYWRkcmVzcykKICAgICAgICAgc2VsZi5sb29wX3dhaXRpbmdfZm9yX2ZsYWcoY2xpZW50KQogCiAgICAgZGVmIHRlc3RfaGFuZGxlX2Nsb3NlKHNlbGYpOgpAQCAtNjE5LDggKzYyOCw0MCBAQAogICAgICAgICAgICAgICAgIEJhc2VUZXN0SGFuZGxlci5fX2luaXRfXyhzZWxmLCBjb25uKQogICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQogCi0gICAgICAgIHNlcnZlciA9IFRDUFNlcnZlcihUZXN0SGFuZGxlcikKLSAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyLCBUZXN0SGFuZGxlcikKKyAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZWxmLmZhbWlseSwgc2VydmVyLmFkZHJlc3MpCisgICAgICAgIHNlbGYubG9vcF93YWl0aW5nX2Zvcl9mbGFnKGNsaWVudCkKKworICAgIGRlZiB0ZXN0X2hhbmRsZV9jbG9zZV9hZnRlcl9jb25uX2Jyb2tlbihzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IEVDT05OUkVTRVQvRVBJUEUgaXMgY29ycmVjdGx5IGhhbmRsZWQgKGlzc3VlcyAjNTY2MSBhbmQKKyAgICAgICAgIyAjMTEyNjUpLgorCisgICAgICAgIGRhdGEgPSBiJ1wwJyAqIDEyOAorCisgICAgICAgIGNsYXNzIFRlc3RDbGllbnQoQmFzZUNsaWVudCk6CisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVfd3JpdGUoc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5zZW5kKGRhdGEpCisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVfY2xvc2Uoc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5mbGFnID0gVHJ1ZQorICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorCisgICAgICAgICAgICBkZWYgaGFuZGxlX2V4cHQoc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5mbGFnID0gVHJ1ZQorICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorCisgICAgICAgIGNsYXNzIFRlc3RIYW5kbGVyKEJhc2VUZXN0SGFuZGxlcik6CisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVfcmVhZChzZWxmKToKKyAgICAgICAgICAgICAgICBzZWxmLnJlY3YobGVuKGRhdGEpKQorICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorCisgICAgICAgICAgICBkZWYgd3JpdGFibGUoc2VsZik6CisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyLCBUZXN0SGFuZGxlcikKKyAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZWxmLmZhbWlseSwgc2VydmVyLmFkZHJlc3MpCiAgICAgICAgIHNlbGYubG9vcF93YWl0aW5nX2Zvcl9mbGFnKGNsaWVudCkKIAogICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoInN1bm9zIiksCkBAIC02MjksOSArNjcwLDEyIEBACiAgICAgICAgICMgTWFrZSBzdXJlIGhhbmRsZV9leHB0IGlzIGNhbGxlZCBvbiBPT0IgZGF0YSByZWNlaXZlZC4KICAgICAgICAgIyBOb3RlOiB0aGlzIG1pZ2h0IGZhaWwgb24gc29tZSBwbGF0Zm9ybXMgYXMgT09CIGRhdGEgaXMKICAgICAgICAgIyB0ZW51b3VzbHkgc3VwcG9ydGVkIGFuZCByYXJlbHkgdXNlZC4KKyAgICAgICAgaWYgSEFTX1VOSVhfU09DS0VUUyBhbmQgc2VsZi5mYW1pbHkgPT0gc29ja2V0LkFGX1VOSVg6CisgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJOb3QgYXBwbGljYWJsZSB0byBBRl9VTklYIHNvY2tldHMuIikKIAogICAgICAgICBjbGFzcyBUZXN0Q2xpZW50KEJhc2VDbGllbnQpOgogICAgICAgICAgICAgZGVmIGhhbmRsZV9leHB0KHNlbGYpOgorICAgICAgICAgICAgICAgIHNlbGYuc29ja2V0LnJlY3YoMTAyNCwgc29ja2V0Lk1TR19PT0IpCiAgICAgICAgICAgICAgICAgc2VsZi5mbGFnID0gVHJ1ZQogCiAgICAgICAgIGNsYXNzIFRlc3RIYW5kbGVyKEJhc2VUZXN0SGFuZGxlcik6CkBAIC02MzksOCArNjgzLDggQEAKICAgICAgICAgICAgICAgICBCYXNlVGVzdEhhbmRsZXIuX19pbml0X18oc2VsZiwgY29ubikKICAgICAgICAgICAgICAgICBzZWxmLnNvY2tldC5zZW5kKGJ5dGVzKGNocigyNDQpLCAnbGF0aW4tMScpLCBzb2NrZXQuTVNHX09PQikKIAotICAgICAgICBzZXJ2ZXIgPSBUQ1BTZXJ2ZXIoVGVzdEhhbmRsZXIpCi0gICAgICAgIGNsaWVudCA9IFRlc3RDbGllbnQoc2VydmVyLmFkZHJlc3MpCisgICAgICAgIHNlcnZlciA9IEJhc2VTZXJ2ZXIoc2VsZi5mYW1pbHksIHNlbGYuYWRkciwgVGVzdEhhbmRsZXIpCisgICAgICAgIGNsaWVudCA9IFRlc3RDbGllbnQoc2VsZi5mYW1pbHksIHNlcnZlci5hZGRyZXNzKQogICAgICAgICBzZWxmLmxvb3Bfd2FpdGluZ19mb3JfZmxhZyhjbGllbnQpCiAKICAgICBkZWYgdGVzdF9oYW5kbGVfZXJyb3Ioc2VsZik6CkBAIC02NTcsMTMgKzcwMSwxMyBAQAogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiZXhjZXB0aW9uIG5vdCByYWlzZWQiKQogCi0gICAgICAgIHNlcnZlciA9IFRDUFNlcnZlcigpCi0gICAgICAgIGNsaWVudCA9IFRlc3RDbGllbnQoc2VydmVyLmFkZHJlc3MpCisgICAgICAgIHNlcnZlciA9IEJhc2VTZXJ2ZXIoc2VsZi5mYW1pbHksIHNlbGYuYWRkcikKKyAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZWxmLmZhbWlseSwgc2VydmVyLmFkZHJlc3MpCiAgICAgICAgIHNlbGYubG9vcF93YWl0aW5nX2Zvcl9mbGFnKGNsaWVudCkKIAogICAgIGRlZiB0ZXN0X2Nvbm5lY3Rpb25fYXR0cmlidXRlcyhzZWxmKToKLSAgICAgICAgc2VydmVyID0gVENQU2VydmVyKCkKLSAgICAgICAgY2xpZW50ID0gQmFzZUNsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyKQorICAgICAgICBjbGllbnQgPSBCYXNlQ2xpZW50KHNlbGYuZmFtaWx5LCBzZXJ2ZXIuYWRkcmVzcykKIAogICAgICAgICAjIHdlIHN0YXJ0IGRpc2Nvbm5lY3RlZAogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlcnZlci5jb25uZWN0ZWQpCkBAIC02OTMsMjUgKzczNywyOSBAQAogCiAgICAgZGVmIHRlc3RfY3JlYXRlX3NvY2tldChzZWxmKToKICAgICAgICAgcyA9IGFzeW5jb3JlLmRpc3BhdGNoZXIoKQotICAgICAgICBzLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLnNvY2tldC5mYW1pbHksIHNvY2tldC5BRl9JTkVUKQorICAgICAgICBzLmNyZWF0ZV9zb2NrZXQoc2VsZi5mYW1pbHkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5zb2NrZXQuZmFtaWx5LCBzZWxmLmZhbWlseSkKICAgICAgICAgU09DS19OT05CTE9DSyA9IGdldGF0dHIoc29ja2V0LCAnU09DS19OT05CTE9DSycsIDApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5zb2NrZXQudHlwZSwgc29ja2V0LlNPQ0tfU1RSRUFNIHwgU09DS19OT05CTE9DSykKIAogICAgIGRlZiB0ZXN0X2JpbmQoc2VsZik6CisgICAgICAgIGlmIEhBU19VTklYX1NPQ0tFVFMgYW5kIHNlbGYuZmFtaWx5ID09IHNvY2tldC5BRl9VTklYOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiTm90IGFwcGxpY2FibGUgdG8gQUZfVU5JWCBzb2NrZXRzLiIpCiAgICAgICAgIHMxID0gYXN5bmNvcmUuZGlzcGF0Y2hlcigpCi0gICAgICAgIHMxLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKLSAgICAgICAgczEuYmluZCgoSE9TVCwgMCkpCisgICAgICAgIHMxLmNyZWF0ZV9zb2NrZXQoc2VsZi5mYW1pbHkpCisgICAgICAgIHMxLmJpbmQoc2VsZi5hZGRyKQogICAgICAgICBzMS5saXN0ZW4oNSkKICAgICAgICAgcG9ydCA9IHMxLnNvY2tldC5nZXRzb2NrbmFtZSgpWzFdCiAKICAgICAgICAgczIgPSBhc3luY29yZS5kaXNwYXRjaGVyKCkKLSAgICAgICAgczIuY3JlYXRlX3NvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorICAgICAgICBzMi5jcmVhdGVfc29ja2V0KHNlbGYuZmFtaWx5KQogICAgICAgICAjIEVBRERSSU5VU0UgaW5kaWNhdGVzIHRoZSBzb2NrZXQgd2FzIGNvcnJlY3RseSBib3VuZAotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHMyLmJpbmQsIChIT1NULCBwb3J0KSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCBzMi5iaW5kLCAoc2VsZi5hZGRyWzBdLCBwb3J0KSkKIAogICAgIGRlZiB0ZXN0X3NldF9yZXVzZV9hZGRyKHNlbGYpOgotICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldCgpCisgICAgICAgIGlmIEhBU19VTklYX1NPQ0tFVFMgYW5kIHNlbGYuZmFtaWx5ID09IHNvY2tldC5BRl9VTklYOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiTm90IGFwcGxpY2FibGUgdG8gQUZfVU5JWCBzb2NrZXRzLiIpCisgICAgICAgIHNvY2sgPSBzb2NrZXQuc29ja2V0KHNlbGYuZmFtaWx5KQogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzb2NrLnNldHNvY2tvcHQoc29ja2V0LlNPTF9TT0NLRVQsIHNvY2tldC5TT19SRVVTRUFERFIsIDEpCiAgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6CkBAIC03MTksMTEgKzc2NywxMSBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgIyBpZiBTT19SRVVTRUFERFIgc3VjY2VlZGVkIGZvciBzb2NrIHdlIGV4cGVjdCBhc3luY29yZQogICAgICAgICAgICAgIyB0byBkbyB0aGUgc2FtZQotICAgICAgICAgICAgcyA9IGFzeW5jb3JlLmRpc3BhdGNoZXIoc29ja2V0LnNvY2tldCgpKQorICAgICAgICAgICAgcyA9IGFzeW5jb3JlLmRpc3BhdGNoZXIoc29ja2V0LnNvY2tldChzZWxmLmZhbWlseSkpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHMuc29ja2V0LmdldHNvY2tvcHQoc29ja2V0LlNPTF9TT0NLRVQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LlNPX1JFVVNFQUREUikpCiAgICAgICAgICAgICBzLnNvY2tldC5jbG9zZSgpCi0gICAgICAgICAgICBzLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgICAgIHMuY3JlYXRlX3NvY2tldChzZWxmLmZhbWlseSkKICAgICAgICAgICAgIHMuc2V0X3JldXNlX2FkZHIoKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHMuc29ja2V0LmdldHNvY2tvcHQoc29ja2V0LlNPTF9TT0NLRVQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LlNPX1JFVVNFQUREUikpCkBAIC03MzEsMTggKzc3OSw1MiBAQAogICAgICAgICAgICAgc29jay5jbG9zZSgpCiAKIAotY2xhc3MgVGVzdEFQSV9Vc2VTZWxlY3QoQmFzZVRlc3RBUEkpOgorY2xhc3MgVGVzdEFQSV9Vc2VJUHY0U29ja2V0cyhCYXNlVGVzdEFQSSk6CisgICAgZmFtaWx5ID0gc29ja2V0LkFGX0lORVQKKyAgICBhZGRyID0gKEhPU1QsIDApCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKHN1cHBvcnQuSVBWNl9FTkFCTEVELCAnSVB2NiBzdXBwb3J0IHJlcXVpcmVkJykKK2NsYXNzIFRlc3RBUElfVXNlSVB2NlNvY2tldHMoQmFzZVRlc3RBUEkpOgorICAgIGZhbWlseSA9IHNvY2tldC5BRl9JTkVUNgorICAgIGFkZHIgPSAoJzo6MScsIDApCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKEhBU19VTklYX1NPQ0tFVFMsICdVbml4IHNvY2tldHMgcmVxdWlyZWQnKQorY2xhc3MgVGVzdEFQSV9Vc2VVbml4U29ja2V0cyhCYXNlVGVzdEFQSSk6CisgICAgaWYgSEFTX1VOSVhfU09DS0VUUzoKKyAgICAgICAgZmFtaWx5ID0gc29ja2V0LkFGX1VOSVgKKyAgICBhZGRyID0gc3VwcG9ydC5URVNURk4KKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgdW5saW5rKHNlbGYuYWRkcikKKyAgICAgICAgQmFzZVRlc3RBUEkudGVhckRvd24oc2VsZikKKworY2xhc3MgVGVzdEFQSV9Vc2VJUHY0U2VsZWN0KFRlc3RBUElfVXNlSVB2NFNvY2tldHMpOgogICAgIHVzZV9wb2xsID0gRmFsc2UKIAogQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzZWxlY3QsICdwb2xsJyksICdzZWxlY3QucG9sbCByZXF1aXJlZCcpCi1jbGFzcyBUZXN0QVBJX1VzZVBvbGwoQmFzZVRlc3RBUEkpOgorY2xhc3MgVGVzdEFQSV9Vc2VJUHY0UG9sbChUZXN0QVBJX1VzZUlQdjRTb2NrZXRzKToKICAgICB1c2VfcG9sbCA9IFRydWUKIAorY2xhc3MgVGVzdEFQSV9Vc2VJUHY2U2VsZWN0KFRlc3RBUElfVXNlSVB2NlNvY2tldHMpOgorICAgIHVzZV9wb2xsID0gRmFsc2UKKworQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzZWxlY3QsICdwb2xsJyksICdzZWxlY3QucG9sbCByZXF1aXJlZCcpCitjbGFzcyBUZXN0QVBJX1VzZUlQdjZQb2xsKFRlc3RBUElfVXNlSVB2NlNvY2tldHMpOgorICAgIHVzZV9wb2xsID0gVHJ1ZQorCitjbGFzcyBUZXN0QVBJX1VzZVVuaXhTb2NrZXRzU2VsZWN0KFRlc3RBUElfVXNlVW5peFNvY2tldHMpOgorICAgIHVzZV9wb2xsID0gRmFsc2UKKworQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzZWxlY3QsICdwb2xsJyksICdzZWxlY3QucG9sbCByZXF1aXJlZCcpCitjbGFzcyBUZXN0QVBJX1VzZVVuaXhTb2NrZXRzUG9sbChUZXN0QVBJX1VzZVVuaXhTb2NrZXRzKToKKyAgICB1c2VfcG9sbCA9IFRydWUKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHRlc3RzID0gW0hlbHBlckZ1bmN0aW9uVGVzdHMsIERpc3BhdGNoZXJUZXN0cywgRGlzcGF0Y2hlcldpdGhTZW5kVGVzdHMsCi0gICAgICAgICAgICAgRGlzcGF0Y2hlcldpdGhTZW5kVGVzdHNfVXNlUG9sbCwgVGVzdEFQSV9Vc2VTZWxlY3QsCi0gICAgICAgICAgICAgVGVzdEFQSV9Vc2VQb2xsLCBGaWxlV3JhcHBlclRlc3RdCisgICAgICAgICAgICBEaXNwYXRjaGVyV2l0aFNlbmRUZXN0c19Vc2VQb2xsLCBGaWxlV3JhcHBlclRlc3QsCisgICAgICAgICAgICBUZXN0QVBJX1VzZUlQdjRTZWxlY3QsIFRlc3RBUElfVXNlSVB2NFBvbGwsIFRlc3RBUElfVXNlSVB2NlNlbGVjdCwKKyAgICAgICAgICAgIFRlc3RBUElfVXNlSVB2NlBvbGwsIFRlc3RBUElfVXNlVW5peFNvY2tldHNTZWxlY3QsCisgICAgICAgICAgICBUZXN0QVBJX1VzZVVuaXhTb2NrZXRzUG9sbF0KICAgICBydW5fdW5pdHRlc3QoKnRlc3RzKQogCiBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9iYXNlNjQucHkgYi9MaWIvdGVzdC90ZXN0X2Jhc2U2NC5weQppbmRleCBjYTk0NTA0Li4yNTY5NDc2IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Jhc2U2NC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Jhc2U2NC5weQpAQCAtMTAzLDQ0ICsxMDMsNTMgQEAKIAogICAgIGRlZiB0ZXN0X2I2NGRlY29kZShzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCi0gICAgICAgIGVxKGJhc2U2NC5iNjRkZWNvZGUoYiJkM2QzTG5CNWRHaHZiaTV2Y21jPSIpLCBiInd3dy5weXRob24ub3JnIikKLSAgICAgICAgZXEoYmFzZTY0LmI2NGRlY29kZShiJ0FBPT0nKSwgYidceDAwJykKLSAgICAgICAgZXEoYmFzZTY0LmI2NGRlY29kZShiIllRPT0iKSwgYiJhIikKLSAgICAgICAgZXEoYmFzZTY0LmI2NGRlY29kZShiIllXST0iKSwgYiJhYiIpCi0gICAgICAgIGVxKGJhc2U2NC5iNjRkZWNvZGUoYiJZV0pqIiksIGIiYWJjIikKLSAgICAgICAgZXEoYmFzZTY0LmI2NGRlY29kZShiIllXSmpaR1ZtWjJocGFtdHNiVzV2Y0hGeWMzUjFkbmQ0ZVhwQlFrTkUiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgYiJSVVpIU0VsS1MweE5UazlRVVZKVFZGVldWMWhaV2pBeE1qTTBcbk5UIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGIiWTNPRGtoUUNNd1hpWXFLQ2s3T2p3K0xDNGdXMTE3ZlE9PSIpLAotICAgICAgICAgICBiImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IgotICAgICAgICAgICBiIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIgotICAgICAgICAgICBiIjAxMjM0NTY3ODkhQCMwXiYqKCk7Ojw+LC4gW117fSIpCi0gICAgICAgIGVxKGJhc2U2NC5iNjRkZWNvZGUoYicnKSwgYicnKQorCisgICAgICAgIHRlc3RzID0ge2IiZDNkM0xuQjVkR2h2Ymk1dmNtYz0iOiBiInd3dy5weXRob24ub3JnIiwKKyAgICAgICAgICAgICAgICAgYidBQT09JzogYidceDAwJywKKyAgICAgICAgICAgICAgICAgYiJZUT09IjogYiJhIiwKKyAgICAgICAgICAgICAgICAgYiJZV0k9IjogYiJhYiIsCisgICAgICAgICAgICAgICAgIGIiWVdKaiI6IGIiYWJjIiwKKyAgICAgICAgICAgICAgICAgYiJZV0pqWkdWbVoyaHBhbXRzYlc1dmNIRnljM1IxZG5kNGVYcEJRa05FIgorICAgICAgICAgICAgICAgICBiIlJVWkhTRWxLUzB4TlRrOVFVVkpUVkZWV1YxaFpXakF4TWpNMFxuTlQiCisgICAgICAgICAgICAgICAgIGIiWTNPRGtoUUNNd1hpWXFLQ2s3T2p3K0xDNGdXMTE3ZlE9PSI6CisKKyAgICAgICAgICAgICAgICAgYiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eiIKKyAgICAgICAgICAgICAgICAgYiJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiIKKyAgICAgICAgICAgICAgICAgYiIwMTIzNDU2Nzg5IUAjMF4mKigpOzo8PiwuIFtde30iLAorICAgICAgICAgICAgICAgICBiJyc6IGInJywKKyAgICAgICAgICAgICAgICAgfQorICAgICAgICBmb3IgZGF0YSwgcmVzIGluIHRlc3RzLml0ZW1zKCk6CisgICAgICAgICAgICBlcShiYXNlNjQuYjY0ZGVjb2RlKGRhdGEpLCByZXMpCisgICAgICAgICAgICBlcShiYXNlNjQuYjY0ZGVjb2RlKGRhdGEuZGVjb2RlKCdhc2NpaScpKSwgcmVzKQorCiAgICAgICAgICMgVGVzdCB3aXRoIGFyYml0cmFyeSBhbHRlcm5hdGl2ZSBjaGFyYWN0ZXJzCi0gICAgICAgIGVxKGJhc2U2NC5iNjRkZWNvZGUoYicwMWEqYiRjZCcsIGFsdGNoYXJzPWInKiQnKSwgYidceGQzVlx4YmVvXHhmN1x4MWQnKQotICAgICAgICAjIENoZWNrIGlmIHBhc3NpbmcgYSBzdHIgb2JqZWN0IHJhaXNlcyBhbiBlcnJvcgotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJhc2U2NC5iNjRkZWNvZGUsICIiKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJhc2U2NC5iNjRkZWNvZGUsIGIiIiwgYWx0Y2hhcnM9IiIpCisgICAgICAgIHRlc3RzX2FsdGNoYXJzID0geyhiJzAxYSpiJGNkJywgYicqJCcpOiBiJ1x4ZDNWXHhiZW9ceGY3XHgxZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgZm9yIChkYXRhLCBhbHRjaGFycyksIHJlcyBpbiB0ZXN0c19hbHRjaGFycy5pdGVtcygpOgorICAgICAgICAgICAgZGF0YV9zdHIgPSBkYXRhLmRlY29kZSgnYXNjaWknKQorICAgICAgICAgICAgYWx0Y2hhcnNfc3RyID0gYWx0Y2hhcnMuZGVjb2RlKCdhc2NpaScpCisKKyAgICAgICAgICAgIGVxKGJhc2U2NC5iNjRkZWNvZGUoZGF0YSwgYWx0Y2hhcnM9YWx0Y2hhcnMpLCByZXMpCisgICAgICAgICAgICBlcShiYXNlNjQuYjY0ZGVjb2RlKGRhdGFfc3RyLCBhbHRjaGFycz1hbHRjaGFycyksIHJlcykKKyAgICAgICAgICAgIGVxKGJhc2U2NC5iNjRkZWNvZGUoZGF0YSwgYWx0Y2hhcnM9YWx0Y2hhcnNfc3RyKSwgcmVzKQorICAgICAgICAgICAgZXEoYmFzZTY0LmI2NGRlY29kZShkYXRhX3N0ciwgYWx0Y2hhcnM9YWx0Y2hhcnNfc3RyKSwgcmVzKQorCiAgICAgICAgICMgVGVzdCBzdGFuZGFyZCBhbHBoYWJldAotICAgICAgICBlcShiYXNlNjQuc3RhbmRhcmRfYjY0ZGVjb2RlKGIiZDNkM0xuQjVkR2h2Ymk1dmNtYz0iKSwgYiJ3d3cucHl0aG9uLm9yZyIpCi0gICAgICAgIGVxKGJhc2U2NC5zdGFuZGFyZF9iNjRkZWNvZGUoYiJZUT09IiksIGIiYSIpCi0gICAgICAgIGVxKGJhc2U2NC5zdGFuZGFyZF9iNjRkZWNvZGUoYiJZV0k9IiksIGIiYWIiKQotICAgICAgICBlcShiYXNlNjQuc3RhbmRhcmRfYjY0ZGVjb2RlKGIiWVdKaiIpLCBiImFiYyIpCi0gICAgICAgIGVxKGJhc2U2NC5zdGFuZGFyZF9iNjRkZWNvZGUoYiIiKSwgYiIiKQotICAgICAgICBlcShiYXNlNjQuc3RhbmRhcmRfYjY0ZGVjb2RlKGIiWVdKalpHVm1aMmhwYW10c2JXNXZjSEZ5YzNSMWRuZDRlWHBCUWtORSIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiIlJVWkhTRWxLUzB4TlRrOVFVVkpUVkZWV1YxaFpXakF4TWpNME5UIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGIiWTNPRGtoUUNNd1hpWXFLQ2s3T2p3K0xDNGdXMTE3ZlE9PSIpLAotICAgICAgICAgICBiImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IgotICAgICAgICAgICBiIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIgotICAgICAgICAgICBiIjAxMjM0NTY3ODkhQCMwXiYqKCk7Ojw+LC4gW117fSIpCi0gICAgICAgICMgQ2hlY2sgaWYgcGFzc2luZyBhIHN0ciBvYmplY3QgcmFpc2VzIGFuIGVycm9yCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYmFzZTY0LnN0YW5kYXJkX2I2NGRlY29kZSwgIiIpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYmFzZTY0LnN0YW5kYXJkX2I2NGRlY29kZSwgYiIiLCBhbHRjaGFycz0iIikKKyAgICAgICAgZm9yIGRhdGEsIHJlcyBpbiB0ZXN0cy5pdGVtcygpOgorICAgICAgICAgICAgZXEoYmFzZTY0LnN0YW5kYXJkX2I2NGRlY29kZShkYXRhKSwgcmVzKQorICAgICAgICAgICAgZXEoYmFzZTY0LnN0YW5kYXJkX2I2NGRlY29kZShkYXRhLmRlY29kZSgnYXNjaWknKSksIHJlcykKKwogICAgICAgICAjIFRlc3Qgd2l0aCAnVVJMIHNhZmUnIGFsdGVybmF0aXZlIGNoYXJhY3RlcnMKLSAgICAgICAgZXEoYmFzZTY0LnVybHNhZmVfYjY0ZGVjb2RlKGInMDFhLWJfY2QnKSwgYidceGQzVlx4YmVvXHhmN1x4MWQnKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJhc2U2NC51cmxzYWZlX2I2NGRlY29kZSwgIiIpCisgICAgICAgIHRlc3RzX3VybHNhZmUgPSB7YicwMWEtYl9jZCc6IGInXHhkM1ZceGJlb1x4ZjdceDFkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICBiJyc6IGInJywKKyAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgIGZvciBkYXRhLCByZXMgaW4gdGVzdHNfdXJsc2FmZS5pdGVtcygpOgorICAgICAgICAgICAgZXEoYmFzZTY0LnVybHNhZmVfYjY0ZGVjb2RlKGRhdGEpLCByZXMpCisgICAgICAgICAgICBlcShiYXNlNjQudXJsc2FmZV9iNjRkZWNvZGUoZGF0YS5kZWNvZGUoJ2FzY2lpJykpLCByZXMpCiAKICAgICBkZWYgdGVzdF9iNjRkZWNvZGVfcGFkZGluZ19lcnJvcihzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoYmluYXNjaWkuRXJyb3IsIGJhc2U2NC5iNjRkZWNvZGUsIGInYWJjJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoYmluYXNjaWkuRXJyb3IsIGJhc2U2NC5iNjRkZWNvZGUsICdhYmMnKQogCiAgICAgZGVmIHRlc3RfYjY0ZGVjb2RlX2ludmFsaWRfY2hhcnMoc2VsZik6CiAgICAgICAgICMgaXNzdWUgMTQ2NjA2NTogVGVzdCBzb21lIGludmFsaWQgY2hhcmFjdGVycy4KQEAgLTE1NSw4ICsxNjQsMTEgQEAKICAgICAgICAgICAgICAgICAgKGInWVdKalxuWVdJPScsIGInYWJjYWInKSkKICAgICAgICAgZm9yIGJzdHIsIHJlcyBpbiB0ZXN0czoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYmFzZTY0LmI2NGRlY29kZShic3RyKSwgcmVzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiYXNlNjQuYjY0ZGVjb2RlKGJzdHIuZGVjb2RlKCdhc2NpaScpKSwgcmVzKQogICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhiaW5hc2NpaS5FcnJvcik6CiAgICAgICAgICAgICAgICAgYmFzZTY0LmI2NGRlY29kZShic3RyLCB2YWxpZGF0ZT1UcnVlKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhiaW5hc2NpaS5FcnJvcik6CisgICAgICAgICAgICAgICAgYmFzZTY0LmI2NGRlY29kZShic3RyLmRlY29kZSgnYXNjaWknKSwgdmFsaWRhdGU9VHJ1ZSkKIAogICAgIGRlZiB0ZXN0X2IzMmVuY29kZShzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCkBAIC0xNzEsNDAgKzE4Myw2MyBAQAogCiAgICAgZGVmIHRlc3RfYjMyZGVjb2RlKHNlbGYpOgogICAgICAgICBlcSA9IHNlbGYuYXNzZXJ0RXF1YWwKLSAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShiJycpLCBiJycpCi0gICAgICAgIGVxKGJhc2U2NC5iMzJkZWNvZGUoYidBQT09PT09PScpLCBiJ1x4MDAnKQotICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGInTUU9PT09PT0nKSwgYidhJykKLSAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShiJ01GUkE9PT09JyksIGInYWInKQotICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGInTUZSR0c9PT0nKSwgYidhYmMnKQotICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGInTUZSR0daQT0nKSwgYidhYmNkJykKLSAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShiJ01GUkdHWkRGJyksIGInYWJjZGUnKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJhc2U2NC5iMzJkZWNvZGUsICIiKQorICAgICAgICB0ZXN0cyA9IHtiJyc6IGInJywKKyAgICAgICAgICAgICAgICAgYidBQT09PT09PSc6IGInXHgwMCcsCisgICAgICAgICAgICAgICAgIGInTUU9PT09PT0nOiBiJ2EnLAorICAgICAgICAgICAgICAgICBiJ01GUkE9PT09JzogYidhYicsCisgICAgICAgICAgICAgICAgIGInTUZSR0c9PT0nOiBiJ2FiYycsCisgICAgICAgICAgICAgICAgIGInTUZSR0daQT0nOiBiJ2FiY2QnLAorICAgICAgICAgICAgICAgICBiJ01GUkdHWkRGJzogYidhYmNkZScsCisgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgZm9yIGRhdGEsIHJlcyBpbiB0ZXN0cy5pdGVtcygpOgorICAgICAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShkYXRhKSwgcmVzKQorICAgICAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShkYXRhLmRlY29kZSgnYXNjaWknKSksIHJlcykKIAogICAgIGRlZiB0ZXN0X2IzMmRlY29kZV9jYXNlZm9sZChzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCi0gICAgICAgIGVxKGJhc2U2NC5iMzJkZWNvZGUoYicnLCBUcnVlKSwgYicnKQotICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGInTUU9PT09PT0nLCBUcnVlKSwgYidhJykKLSAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShiJ01GUkE9PT09JywgVHJ1ZSksIGInYWInKQotICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGInTUZSR0c9PT0nLCBUcnVlKSwgYidhYmMnKQotICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGInTUZSR0daQT0nLCBUcnVlKSwgYidhYmNkJykKLSAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShiJ01GUkdHWkRGJywgVHJ1ZSksIGInYWJjZGUnKQotICAgICAgICAjIExvd2VyIGNhc2VzCi0gICAgICAgIGVxKGJhc2U2NC5iMzJkZWNvZGUoYidtZT09PT09PScsIFRydWUpLCBiJ2EnKQotICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGInbWZyYT09PT0nLCBUcnVlKSwgYidhYicpCi0gICAgICAgIGVxKGJhc2U2NC5iMzJkZWNvZGUoYidtZnJnZz09PScsIFRydWUpLCBiJ2FiYycpCi0gICAgICAgIGVxKGJhc2U2NC5iMzJkZWNvZGUoYidtZnJnZ3phPScsIFRydWUpLCBiJ2FiY2QnKQotICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGInbWZyZ2d6ZGYnLCBUcnVlKSwgYidhYmNkZScpCi0gICAgICAgICMgRXhwZWN0ZWQgZXhjZXB0aW9ucworICAgICAgICB0ZXN0cyA9IHtiJyc6IGInJywKKyAgICAgICAgICAgICAgICAgYidNRT09PT09PSc6IGInYScsCisgICAgICAgICAgICAgICAgIGInTUZSQT09PT0nOiBiJ2FiJywKKyAgICAgICAgICAgICAgICAgYidNRlJHRz09PSc6IGInYWJjJywKKyAgICAgICAgICAgICAgICAgYidNRlJHR1pBPSc6IGInYWJjZCcsCisgICAgICAgICAgICAgICAgIGInTUZSR0daREYnOiBiJ2FiY2RlJywKKyAgICAgICAgICAgICAgICAgIyBMb3dlciBjYXNlcworICAgICAgICAgICAgICAgICBiJ21lPT09PT09JzogYidhJywKKyAgICAgICAgICAgICAgICAgYidtZnJhPT09PSc6IGInYWInLAorICAgICAgICAgICAgICAgICBiJ21mcmdnPT09JzogYidhYmMnLAorICAgICAgICAgICAgICAgICBiJ21mcmdnemE9JzogYidhYmNkJywKKyAgICAgICAgICAgICAgICAgYidtZnJnZ3pkZic6IGInYWJjZGUnLAorICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgZm9yIGRhdGEsIHJlcyBpbiB0ZXN0cy5pdGVtcygpOgorICAgICAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShkYXRhLCBUcnVlKSwgcmVzKQorICAgICAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShkYXRhLmRlY29kZSgnYXNjaWknKSwgVHJ1ZSksIHJlcykKKwogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJhc2U2NC5iMzJkZWNvZGUsIGInbWU9PT09PT0nKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJhc2U2NC5iMzJkZWNvZGUsICdtZT09PT09PScpCisKICAgICAgICAgIyBNYXBwaW5nIHplcm8gYW5kIG9uZQogICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGInTUxPMjM0NTYnKSwgYidiXHhkZFx4YWRceGYzXHhiZScpCi0gICAgICAgIGVxKGJhc2U2NC5iMzJkZWNvZGUoYidNMTAyMzQ1NicsIG1hcDAxPWInTCcpLCBiJ2JceGRkXHhhZFx4ZjNceGJlJykKLSAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShiJ00xMDIzNDU2JywgbWFwMDE9YidJJyksIGInYlx4MWRceGFkXHhmM1x4YmUnKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJhc2U2NC5iMzJkZWNvZGUsIGIiIiwgbWFwMDE9IiIpCisgICAgICAgIGVxKGJhc2U2NC5iMzJkZWNvZGUoJ01MTzIzNDU2JyksIGInYlx4ZGRceGFkXHhmM1x4YmUnKQorCisgICAgICAgIG1hcF90ZXN0cyA9IHsoYidNMTAyMzQ1NicsIGInTCcpOiBiJ2JceGRkXHhhZFx4ZjNceGJlJywKKyAgICAgICAgICAgICAgICAgICAgIChiJ00xMDIzNDU2JywgYidJJyk6IGInYlx4MWRceGFkXHhmM1x4YmUnLAorICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICBmb3IgKGRhdGEsIG1hcDAxKSwgcmVzIGluIG1hcF90ZXN0cy5pdGVtcygpOgorICAgICAgICAgICAgZGF0YV9zdHIgPSBkYXRhLmRlY29kZSgnYXNjaWknKQorICAgICAgICAgICAgbWFwMDFfc3RyID0gbWFwMDEuZGVjb2RlKCdhc2NpaScpCisKKyAgICAgICAgICAgIGVxKGJhc2U2NC5iMzJkZWNvZGUoZGF0YSwgbWFwMDE9bWFwMDEpLCByZXMpCisgICAgICAgICAgICBlcShiYXNlNjQuYjMyZGVjb2RlKGRhdGFfc3RyLCBtYXAwMT1tYXAwMSksIHJlcykKKyAgICAgICAgICAgIGVxKGJhc2U2NC5iMzJkZWNvZGUoZGF0YSwgbWFwMDE9bWFwMDFfc3RyKSwgcmVzKQorICAgICAgICAgICAgZXEoYmFzZTY0LmIzMmRlY29kZShkYXRhX3N0ciwgbWFwMDE9bWFwMDFfc3RyKSwgcmVzKQogCiAgICAgZGVmIHRlc3RfYjMyZGVjb2RlX2Vycm9yKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhiaW5hc2NpaS5FcnJvciwgYmFzZTY0LmIzMmRlY29kZSwgYidhYmMnKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhiaW5hc2NpaS5FcnJvciwgYmFzZTY0LmIzMmRlY29kZSwgYidBQkNERUY9PScpCisgICAgICAgIGZvciBkYXRhIGluIFtiJ2FiYycsIGInQUJDREVGPT0nXToKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoYmluYXNjaWkuRXJyb3IpOgorICAgICAgICAgICAgICAgIGJhc2U2NC5iMzJkZWNvZGUoZGF0YSkKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoYmluYXNjaWkuRXJyb3IpOgorICAgICAgICAgICAgICAgIGJhc2U2NC5iMzJkZWNvZGUoZGF0YS5kZWNvZGUoJ2FzY2lpJykpCiAKICAgICBkZWYgdGVzdF9iMTZlbmNvZGUoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbApAQCAtMjE1LDEyICsyNTAsMjQgQEAKICAgICBkZWYgdGVzdF9iMTZkZWNvZGUoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAogICAgICAgICBlcShiYXNlNjQuYjE2ZGVjb2RlKGInMDEwMkFCQ0RFRicpLCBiJ1x4MDFceDAyXHhhYlx4Y2RceGVmJykKKyAgICAgICAgZXEoYmFzZTY0LmIxNmRlY29kZSgnMDEwMkFCQ0RFRicpLCBiJ1x4MDFceDAyXHhhYlx4Y2RceGVmJykKICAgICAgICAgZXEoYmFzZTY0LmIxNmRlY29kZShiJzAwJyksIGInXHgwMCcpCisgICAgICAgIGVxKGJhc2U2NC5iMTZkZWNvZGUoJzAwJyksIGInXHgwMCcpCiAgICAgICAgICMgTG93ZXIgY2FzZSBpcyBub3QgYWxsb3dlZCB3aXRob3V0IGEgZmxhZwogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhiaW5hc2NpaS5FcnJvciwgYmFzZTY0LmIxNmRlY29kZSwgYicwMTAyYWJjZGVmJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoYmluYXNjaWkuRXJyb3IsIGJhc2U2NC5iMTZkZWNvZGUsICcwMTAyYWJjZGVmJykKICAgICAgICAgIyBDYXNlIGZvbGQKICAgICAgICAgZXEoYmFzZTY0LmIxNmRlY29kZShiJzAxMDJhYmNkZWYnLCBUcnVlKSwgYidceDAxXHgwMlx4YWJceGNkXHhlZicpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYmFzZTY0LmIxNmRlY29kZSwgIiIpCisgICAgICAgIGVxKGJhc2U2NC5iMTZkZWNvZGUoJzAxMDJhYmNkZWYnLCBUcnVlKSwgYidceDAxXHgwMlx4YWJceGNkXHhlZicpCisKKyAgICBkZWYgdGVzdF9kZWNvZGVfbm9uYXNjaWlfc3RyKHNlbGYpOgorICAgICAgICBkZWNvZGVfZnVuY3MgPSAoYmFzZTY0LmI2NGRlY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGJhc2U2NC5zdGFuZGFyZF9iNjRkZWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICBiYXNlNjQudXJsc2FmZV9iNjRkZWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICBiYXNlNjQuYjMyZGVjb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgYmFzZTY0LmIxNmRlY29kZSkKKyAgICAgICAgZm9yIGYgaW4gZGVjb2RlX2Z1bmNzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZiwgJ3dpdGggbm9uLWFzY2lpIFx4Y2InKQogCiAgICAgZGVmIHRlc3RfRXJyb3JIZXJpdGFnZShzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzc3ViY2xhc3MoYmluYXNjaWkuRXJyb3IsIFZhbHVlRXJyb3IpKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9iaWdtZW0ucHkgYi9MaWIvdGVzdC90ZXN0X2JpZ21lbS5weQppbmRleCBmM2M2ZWJiLi4wZTU0NTk1IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2JpZ21lbS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2JpZ21lbS5weQpAQCAtMSwzICsxLDEzIEBACisiIiJCaWdtZW0gdGVzdHMgLSB0ZXN0cyBmb3IgdGhlIDMyLWJpdCBib3VuZGFyeSBpbiBjb250YWluZXJzLgorCitUaGVzZSB0ZXN0cyB0cnkgdG8gZXhlcmNpc2UgdGhlIDMyLWJpdCBib3VuZGFyeSB0aGF0IGlzIHNvbWV0aW1lcywgaWYKK3JhcmVseSwgZXhjZWVkZWQgaW4gcHJhY3RpY2UsIGJ1dCBhbG1vc3QgbmV2ZXIgdGVzdGVkLiAgVGhleSBhcmUgcmVhbGx5IG9ubHkKK21lYW5pbmdmdWwgb24gNjQtYml0IGJ1aWxkcyBvbiBtYWNoaW5lcyB3aXRoIGEgKmxvdCogb2YgbWVtb3J5LCBidXQgdGhlCit0ZXN0cyBhcmUgYWx3YXlzIHJ1biwgdXN1YWxseSB3aXRoIHZlcnkgbG93IG1lbW9yeSBsaW1pdHMgdG8gbWFrZSBzdXJlIHRoZQordGVzdHMgdGhlbXNlbHZlcyBkb24ndCBzdWZmZXIgZnJvbSBiaXRyb3QuICBUbyBydW4gdGhlbSBmb3IgcmVhbCwgcGFzcyBhCitoaWdoIG1lbW9yeSBsaW1pdCB0byByZWdydGVzdCwgd2l0aCB0aGUgLU0gb3B0aW9uLgorIiIiCisKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGJpZ21lbXRlc3QsIF8xRywgXzJHLCBfNEcKIApAQCAtNiwyMCArMTYsMzUgQEAKIGltcG9ydCBzeXMKIGltcG9ydCBmdW5jdG9vbHMKIAorIyBUaGVzZSB0ZXN0cyBhbGwgdXNlIG9uZSBvZiB0aGUgYmlnbWVtdGVzdCBkZWNvcmF0b3JzIHRvIGluZGljYXRlIGhvdyBtdWNoCisjIG1lbW9yeSB0aGV5IHVzZSBhbmQgaG93IG11Y2ggbWVtb3J5IHRoZXkgbmVlZCB0byBiZSBldmVuIG1lYW5pbmdmdWwuICBUaGUKKyMgZGVjb3JhdG9ycyB0YWtlIHR3byBhcmd1bWVudHM6IGEgJ21lbXVzZScgaW5kaWNhdG9yIGRlY2xhcmluZworIyAoYXBwcm94aW1hdGUpIGJ5dGVzIHBlciBzaXplLXVuaXQgdGhlIHRlc3Qgd2lsbCB1c2UgKGF0IHBlYWsgdXNhZ2UpLCBhbmQgYQorIyAnbWluc2l6ZScgaW5kaWNhdG9yIGRlY2xhcmluZyBhIG1pbmltdW0gKnVzZWZ1bCogc2l6ZS4gIEEgdGVzdCB0aGF0CisjIGFsbG9jYXRlcyBhIGJ5dGVzdHJpbmcgdG8gdGVzdCB2YXJpb3VzIG9wZXJhdGlvbnMgbmVhciB0aGUgZW5kIHdpbGwgaGF2ZSBhCisjIG1pbnNpemUgb2YgYXQgbGVhc3QgMkdiIChvciBpdCB3b3VsZG4ndCByZWFjaCB0aGUgMzItYml0IGxpbWl0LCBzbyB0aGUKKyMgdGVzdCB3b3VsZG4ndCBiZSB2ZXJ5IHVzZWZ1bCkgYW5kIGEgbWVtdXNlIG9mIDEgKG9uZSBieXRlIHBlciBzaXplLXVuaXQsCisjIGlmIGl0IGFsbG9jYXRlcyBvbmx5IG9uZSBiaWcgc3RyaW5nIGF0IGEgdGltZS4pCisjCisjIFdoZW4gcnVuIHdpdGggYSBtZW1vcnkgbGltaXQgc2V0LCBib3RoIGRlY29yYXRvcnMgc2tpcCB0ZXN0cyB0aGF0IG5lZWQKKyMgbW9yZSBtZW1vcnkgdGhhbiBhdmFpbGFibGUgdG8gYmUgbWVhbmluZ2Z1bC4gIFRoZSBwcmVjaXNpb25iaWdtZW10ZXN0IHdpbGwKKyMgYWx3YXlzIHBhc3MgbWluc2l6ZSBhcyBzaXplLCBldmVuIGlmIHRoZXJlIGlzIG11Y2ggbW9yZSBtZW1vcnkgYXZhaWxhYmxlLgorIyBUaGUgYmlnbWVtdGVzdCBkZWNvcmF0b3Igd2lsbCBzY2FsZSBzaXplIHVwd2FyZCB0byBmaWxsIGF2YWlsYWJsZSBtZW1vcnkuCisjCiAjIEJpZ21lbSB0ZXN0aW5nIGhvdXNlcnVsZXM6CiAjCiAjICAtIFRyeSBub3QgdG8gYWxsb2NhdGUgdG9vIG1hbnkgbGFyZ2Ugb2JqZWN0cy4gSXQncyBva2F5IHRvIHJlbHkgb24KLSMgICAgcmVmY291bnRpbmcgc2VtYW50aWNzLCBidXQgZG9uJ3QgZm9yZ2V0IHRoYXQgJ3MgPSBjcmVhdGVfbGFyZ2VzdHJpbmcoKScKKyMgICAgcmVmY291bnRpbmcgc2VtYW50aWNzLCBhbmQgZG9uJ3QgZm9yZ2V0IHRoYXQgJ3MgPSBjcmVhdGVfbGFyZ2VzdHJpbmcoKScKICMgICAgZG9lc24ndCByZWxlYXNlIHRoZSBvbGQgJ3MnIChpZiBpdCBleGlzdHMpIHVudGlsIHdlbGwgYWZ0ZXIgaXRzIG5ldwogIyAgICB2YWx1ZSBoYXMgYmVlbiBjcmVhdGVkLiBVc2UgJ2RlbCBzJyBiZWZvcmUgdGhlIGNyZWF0ZV9sYXJnZXN0cmluZyBjYWxsLgogIwotIyAgLSBEbyAqbm90KiBjb21wYXJlIGxhcmdlIG9iamVjdHMgdXNpbmcgYXNzZXJ0RXF1YWwgb3Igc2ltaWxhci4gSXQncyBhCi0jICAgIGxlbmd0aHkgb3BlcmF0aW9uIGFuZCB0aGUgZXJyb3JtZXNzYWdlIHdpbGwgYmUgdXR0ZXJseSB1c2VsZXNzIGR1ZSB0bwotIyAgICBpdHMgc2l6ZS4gVG8gbWFrZSBzdXJlIHdoZXRoZXIgYSByZXN1bHQgaGFzIHRoZSByaWdodCBjb250ZW50cywgYmV0dGVyCi0jICAgIHRvIHVzZSB0aGUgc3RyaXAgb3IgY291bnQgbWV0aG9kcywgb3IgY29tcGFyZSBtZWFuaW5nZnVsIHNsaWNlcy4KKyMgIC0gRG8gKm5vdCogY29tcGFyZSBsYXJnZSBvYmplY3RzIHVzaW5nIGFzc2VydEVxdWFsLCBhc3NlcnRJbiBvciBzaW1pbGFyLgorIyAgICBJdCdzIGEgbGVuZ3RoeSBvcGVyYXRpb24gYW5kIHRoZSBlcnJvcm1lc3NhZ2Ugd2lsbCBiZSB1dHRlcmx5IHVzZWxlc3MKKyMgICAgZHVlIHRvIGl0cyBzaXplLiAgVG8gbWFrZSBzdXJlIHdoZXRoZXIgYSByZXN1bHQgaGFzIHRoZSByaWdodCBjb250ZW50cywKKyMgICAgYmV0dGVyIHRvIHVzZSB0aGUgc3RyaXAgb3IgY291bnQgbWV0aG9kcywgb3IgY29tcGFyZSBtZWFuaW5nZnVsIHNsaWNlcy4KICMKICMgIC0gRG9uJ3QgZm9yZ2V0IHRvIHRlc3QgZm9yIGxhcmdlIGluZGljZXMsIG9mZnNldHMgYW5kIHJlc3VsdHMgYW5kIHN1Y2gsCi0jICAgIGluIGFkZGl0aW9uIHRvIGxhcmdlIHNpemVzLgorIyAgICBpbiBhZGRpdGlvbiB0byBsYXJnZSBzaXplcy4gQW55dGhpbmcgdGhhdCBwcm9iZXMgdGhlIDMyLWJpdCBib3VuZGFyeS4KICMKICMgIC0gV2hlbiByZXBlYXRpbmcgYW4gb2JqZWN0IChzYXksIGEgc3Vic3RyaW5nLCBvciBhIHNtYWxsIGxpc3QpIHRvIGNyZWF0ZQogIyAgICBhIGxhcmdlIG9iamVjdCwgbWFrZSB0aGUgc3Vib2JqZWN0IG9mIGEgbGVuZ3RoIHRoYXQgaXMgbm90IGEgcG93ZXIgb2YKQEAgLTM3LDEzICs2MiwxNCBAQAogIyBmYWlsIGFzIHdlbGwuIEkgZG8gbm90IGtub3cgd2hldGhlciBpdCBpcyBkdWUgdG8gbWVtb3J5IGZyYWdtZW50YXRpb24KICMgaXNzdWVzLCBvciBvdGhlciBzcGVjaWZpY3Mgb2YgdGhlIHBsYXRmb3JtIG1hbGxvYygpIHJvdXRpbmUuCiAKLWNoYXJhY3Rlcl9zaXplID0gNCBpZiBzeXMubWF4dW5pY29kZSA+IDB4RkZGRiBlbHNlIDIKK2FzY2lpX2NoYXJfc2l6ZSA9IDEKK3VjczJfY2hhcl9zaXplID0gMgordWNzNF9jaGFyX3NpemUgPSA0CiAKIAogY2xhc3MgQmFzZVN0clRlc3Q6CiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRywgbWVtdXNlPTIpCi0gICAgZGVmIHRlc3RfY2FwaXRhbGl6ZShzZWxmLCBzaXplKToKKyAgICBkZWYgX3Rlc3RfY2FwaXRhbGl6ZShzZWxmLCBzaXplKToKICAgICAgICAgXyA9IHNlbGYuZnJvbV9sYXRpbjEKICAgICAgICAgU1VCU1RSID0gc2VsZi5mcm9tX2xhdGluMSgnIGFiYyBkZWYgZ2hpJykKICAgICAgICAgcyA9IF8oJy0nKSAqIHNpemUgKyBTVUJTVFIKQEAgLTkyLDcgKzExOCw3IEBACiAgICAgICAgIF8gPSBzZWxmLmZyb21fbGF0aW4xCiAgICAgICAgIHMgPSBfKCctJykgKiBzaXplCiAgICAgICAgIHRhYnNpemUgPSA4Ci0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5leHBhbmR0YWJzKCksIHMpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzLmV4cGFuZHRhYnMoKSA9PSBzKQogICAgICAgICBkZWwgcwogICAgICAgICBzbGVuLCByZW1haW5kZXIgPSBkaXZtb2Qoc2l6ZSwgdGFic2l6ZSkKICAgICAgICAgcyA9IF8oJyAgICAgICBcdCcpICogc2xlbgpAQCAtMzQ3LDcgKzM3Myw3IEBACiAgICAgIyBzdWZmZXIgZm9yIHRoZSBsaXN0IHNpemUuIChPdGhlcndpc2UsIGl0J2QgY29zdCBhbm90aGVyIDQ4IHRpbWVzCiAgICAgIyBzaXplIGluIGJ5dGVzISkgTmV2ZXJ0aGVsZXNzLCBhIGxpc3Qgb2Ygc2l6ZSB0YWtlcwogICAgICMgOCpzaXplIGJ5dGVzLgotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgNSwgbWVtdXNlPTEwKQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgNSwgbWVtdXNlPTIgKiBhc2NpaV9jaGFyX3NpemUgKyA4KQogICAgIGRlZiB0ZXN0X3NwbGl0X2xhcmdlKHNlbGYsIHNpemUpOgogICAgICAgICBfID0gc2VsZi5mcm9tX2xhdGluMQogICAgICAgICBzID0gXygnIGEnKSAqIHNpemUgKyBfKCcgJykKQEAgLTM2Niw5ICszOTIsOSBAQAogICAgICAgICAjIHRha2UgdXAgYW4gaW5vcmRpbmF0ZSBhbW91bnQgb2YgbWVtb3J5CiAgICAgICAgIGNodW5rc2l6ZSA9IGludChzaXplICoqIDAuNSArIDIpIC8vIDIKICAgICAgICAgU1VCU1RSID0gXygnICcpICogY2h1bmtzaXplICsgXygnXG4nKSArIF8oJyAnKSAqIGNodW5rc2l6ZSArIF8oJ1xyXG4nKQotICAgICAgICBzID0gU1VCU1RSICogY2h1bmtzaXplCisgICAgICAgIHMgPSBTVUJTVFIgKiAoY2h1bmtzaXplICogMikKICAgICAgICAgbCA9IHMuc3BsaXRsaW5lcygpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGwpLCBjaHVua3NpemUgKiAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihsKSwgY2h1bmtzaXplICogNCkKICAgICAgICAgZXhwZWN0ZWQgPSBfKCcgJykgKiBjaHVua3NpemUKICAgICAgICAgZm9yIGl0ZW0gaW4gbDoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaXRlbSwgZXhwZWN0ZWQpCkBAIC0zOTQsOCArNDIwLDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4ocyksIHNpemUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5zdHJpcCgpLCBTVUJTVFIuc3RyaXAoKSkKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHLCBtZW11c2U9MikKLSAgICBkZWYgdGVzdF9zd2FwY2FzZShzZWxmLCBzaXplKToKKyAgICBkZWYgX3Rlc3Rfc3dhcGNhc2Uoc2VsZiwgc2l6ZSk6CiAgICAgICAgIF8gPSBzZWxmLmZyb21fbGF0aW4xCiAgICAgICAgIFNVQlNUUiA9IF8oImFCY0RlRkcxMi4nXHhhOVx4MDAiKQogICAgICAgICBzdWJsZW4gPSBsZW4oU1VCU1RSKQpAQCAtNDA2LDggKzQzMSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc1s6c3VibGVuICogM10sIFNVQlNUUi5zd2FwY2FzZSgpICogMykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzWy1zdWJsZW4gKiAzOl0sIFNVQlNUUi5zd2FwY2FzZSgpICogMykKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHLCBtZW11c2U9MikKLSAgICBkZWYgdGVzdF90aXRsZShzZWxmLCBzaXplKToKKyAgICBkZWYgX3Rlc3RfdGl0bGUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIF8gPSBzZWxmLmZyb21fbGF0aW4xCiAgICAgICAgIFNVQlNUUiA9IF8oJ1NwYWFIQWFhQWFoYW0nKQogICAgICAgICBzID0gU1VCU1RSICogKHNpemUgLy8gbGVuKFNVQlNUUikgKyAyKQpAQCAtNDE5LDE0ICs0NDMsNyBAQAogICAgIGRlZiB0ZXN0X3RyYW5zbGF0ZShzZWxmLCBzaXplKToKICAgICAgICAgXyA9IHNlbGYuZnJvbV9sYXRpbjEKICAgICAgICAgU1VCU1RSID0gXygnYVp6LnouQWF6LicpCi0gICAgICAgIGlmIGlzaW5zdGFuY2UoU1VCU1RSLCBzdHIpOgotICAgICAgICAgICAgdHJhbnMgPSB7Ci0gICAgICAgICAgICAgICAgb3JkKF8oJy4nKSk6IF8oJy0nKSwKLSAgICAgICAgICAgICAgICBvcmQoXygnYScpKTogXygnIScpLAotICAgICAgICAgICAgICAgIG9yZChfKCdaJykpOiBfKCckJyksCi0gICAgICAgICAgICB9Ci0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICB0cmFucyA9IGJ5dGVzLm1ha2V0cmFucyhiJy5hWicsIGInLSEkJykKKyAgICAgICAgdHJhbnMgPSBieXRlcy5tYWtldHJhbnMoYicuYVonLCBiJy0hJCcpCiAgICAgICAgIHN1YmxlbiA9IGxlbihTVUJTVFIpCiAgICAgICAgIHJlcGVhdHMgPSBzaXplIC8vIHN1YmxlbiArIDIKICAgICAgICAgcyA9IFNVQlNUUiAqIHJlcGVhdHMKQEAgLTUxOSwxOSArNTM2LDE5IEBACiAgICAgICAgIGVkZ2UgPSBfKCctJykgKiAoc2l6ZSAvLyAyKQogICAgICAgICBzID0gXygnJykuam9pbihbZWRnZSwgU1VCU1RSLCBlZGdlXSkKICAgICAgICAgZGVsIGVkZ2UKLSAgICAgICAgc2VsZi5hc3NlcnRJbihTVUJTVFIsIHMpCi0gICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oU1VCU1RSICogMiwgcykKLSAgICAgICAgc2VsZi5hc3NlcnRJbihfKCctJyksIHMpCi0gICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oXygnYScpLCBzKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoU1VCU1RSIGluIHMpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoU1VCU1RSICogMiBpbiBzKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoXygnLScpIGluIHMpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoXygnYScpIGluIHMpCiAgICAgICAgIHMgKz0gXygnYScpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oXygnYScpLCBzKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoXygnYScpIGluIHMpCiAKICAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDEwLCBtZW11c2U9MikKICAgICBkZWYgdGVzdF9jb21wYXJlKHNlbGYsIHNpemUpOgogICAgICAgICBfID0gc2VsZi5mcm9tX2xhdGluMQogICAgICAgICBzMSA9IF8oJy0nKSAqIHNpemUKICAgICAgICAgczIgPSBfKCctJykgKiBzaXplCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoczEsIHMyKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoczEgPT0gczIpCiAgICAgICAgIGRlbCBzMgogICAgICAgICBzMiA9IHMxICsgXygnYScpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoczEgPT0gczIpCkBAIC01NTIsNyArNTY5LDcgQEAKICAgICAgICAgaDEgPSBoYXNoKHMpCiAgICAgICAgIGRlbCBzCiAgICAgICAgIHMgPSBfKCdceDAwJykgKiAoc2l6ZSArIDEpCi0gICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaDEgPT0gaGFzaChzKSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChoMSwgaGFzaChzKSkKIAogCiBjbGFzcyBTdHJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlLCBCYXNlU3RyVGVzdCk6CkBAIC01NjMsNyArNTgwLDYgQEAKICAgICBkZWYgYmFzaWNfZW5jb2RlX3Rlc3Qoc2VsZiwgc2l6ZSwgZW5jLCBjPScuJywgZXhwZWN0ZWRzaXplPU5vbmUpOgogICAgICAgICBpZiBleHBlY3RlZHNpemUgaXMgTm9uZToKICAgICAgICAgICAgIGV4cGVjdGVkc2l6ZSA9IHNpemUKLQogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzID0gYyAqIHNpemUKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHMuZW5jb2RlKGVuYykpLCBleHBlY3RlZHNpemUpCkBAIC01ODIsNDggKzU5OCw2NCBAQAogICAgICAgICAgICAgICAgIG1lbXVzZSA9IG1ldGgubWVtdXNlCiAgICAgICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CiAgICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgIG1ldGgubWVtdXNlID0gY2hhcmFjdGVyX3NpemUgKiBtZW11c2UKKyAgICAgICAgICAgIG1ldGgubWVtdXNlID0gYXNjaWlfY2hhcl9zaXplICogbWVtdXNlCiAgICAgICAgICAgICBzZWxmLl9hZGp1c3RlZFtuYW1lXSA9IG1lbXVzZQogCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgogICAgICAgICBmb3IgbmFtZSwgbWVtdXNlIGluIHNlbGYuX2FkanVzdGVkLml0ZW1zKCk6CiAgICAgICAgICAgICBnZXRhdHRyKHR5cGUoc2VsZiksIG5hbWUpLm1lbXVzZSA9IG1lbXVzZQogCi0gICAgIyB0aGUgdXRmOCBlbmNvZGVyIHByZWFsbG9jYXRlcyBiaWcgdGltZSAoNHggdGhlIG51bWJlciBvZiBjaGFyYWN0ZXJzKQotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMiwgbWVtdXNlPWNoYXJhY3Rlcl9zaXplICsgNCkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRywgbWVtdXNlPXVjczRfY2hhcl9zaXplICogMykKKyAgICBkZWYgdGVzdF9jYXBpdGFsaXplKHNlbGYsIHNpemUpOgorICAgICAgICBzZWxmLl90ZXN0X2NhcGl0YWxpemUoc2l6ZSkKKworICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHLCBtZW11c2U9dWNzNF9jaGFyX3NpemUgKiAzKQorICAgIGRlZiB0ZXN0X3RpdGxlKHNlbGYsIHNpemUpOgorICAgICAgICBzZWxmLl90ZXN0X3RpdGxlKHNpemUpCisKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRywgbWVtdXNlPXVjczRfY2hhcl9zaXplICogMykKKyAgICBkZWYgdGVzdF9zd2FwY2FzZShzZWxmLCBzaXplKToKKyAgICAgICAgc2VsZi5fdGVzdF9zd2FwY2FzZShzaXplKQorCisgICAgIyBNYW55IGNvZGVjcyBjb252ZXJ0IHRvIHRoZSBsZWdhY3kgcmVwcmVzZW50YXRpb24gZmlyc3QsIGV4cGxhaW5pbmcKKyAgICAjIHdoeSB3ZSBhZGQgJ3VjczRfY2hhcl9zaXplJyB0byB0aGUgJ21lbXVzZScgYmVsb3cuCisKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKyAxKQogICAgIGRlZiB0ZXN0X2VuY29kZShzZWxmLCBzaXplKToKICAgICAgICAgcmV0dXJuIHNlbGYuYmFzaWNfZW5jb2RlX3Rlc3Qoc2l6ZSwgJ3V0Zi04JykKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHIC8vIDYgKyAyLCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKyAxKQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHIC8vIDYgKyAyLCBtZW11c2U9YXNjaWlfY2hhcl9zaXplICsgdWNzNF9jaGFyX3NpemUgKyAxKQogICAgIGRlZiB0ZXN0X2VuY29kZV9yYXdfdW5pY29kZV9lc2NhcGUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX2VuY29kZV90ZXN0KHNpemUsICdyYXdfdW5pY29kZV9lc2NhcGUnKQogICAgICAgICBleGNlcHQgTWVtb3J5RXJyb3I6CiAgICAgICAgICAgICBwYXNzICMgYWNjZXB0YWJsZSBvbiAzMi1iaXQKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHIC8vIDUgKyA3MCwgbWVtdXNlPWNoYXJhY3Rlcl9zaXplICsgMSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV80RyAvLyA1ICsgNzAsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKyB1Y3M0X2NoYXJfc2l6ZSArIDEpCiAgICAgZGVmIHRlc3RfZW5jb2RlX3V0Zjcoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX2VuY29kZV90ZXN0KHNpemUsICd1dGY3JykKICAgICAgICAgZXhjZXB0IE1lbW9yeUVycm9yOgogICAgICAgICAgICAgcGFzcyAjIGFjY2VwdGFibGUgb24gMzItYml0CiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV80RyAvLyA0ICsgNSwgbWVtdXNlPWNoYXJhY3Rlcl9zaXplICsgNCkKKyAgICBAYmlnbWVtdGVzdChzaXplPV80RyAvLyA0ICsgNSwgbWVtdXNlPWFzY2lpX2NoYXJfc2l6ZSArIHVjczRfY2hhcl9zaXplICsgNCkKICAgICBkZWYgdGVzdF9lbmNvZGVfdXRmMzIoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX2VuY29kZV90ZXN0KHNpemUsICd1dGYzMicsIGV4cGVjdGVkc2l6ZT00KnNpemUrNCkKKyAgICAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX2VuY29kZV90ZXN0KHNpemUsICd1dGYzMicsIGV4cGVjdGVkc2l6ZT00ICogc2l6ZSArIDQpCiAgICAgICAgIGV4Y2VwdCBNZW1vcnlFcnJvcjoKICAgICAgICAgICAgIHBhc3MgIyBhY2NlcHRhYmxlIG9uIDMyLWJpdAogCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgLSAxLCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKyAxKQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHIC0gMSwgbWVtdXNlPWFzY2lpX2NoYXJfc2l6ZSArIDEpCiAgICAgZGVmIHRlc3RfZW5jb2RlX2FzY2lpKHNlbGYsIHNpemUpOgogICAgICAgICByZXR1cm4gc2VsZi5iYXNpY19lbmNvZGVfdGVzdChzaXplLCAnYXNjaWknLCBjPSdBJykKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT1jaGFyYWN0ZXJfc2l6ZSAqIDIpCisgICAgIyBzdHIgJSAoLi4uKSB1c2VzIGEgUHlfVUNTNCBpbnRlcm1lZGlhdGUgcmVwcmVzZW50YXRpb24KKworICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKiAyICsgdWNzNF9jaGFyX3NpemUpCiAgICAgZGVmIHRlc3RfZm9ybWF0KHNlbGYsIHNpemUpOgogICAgICAgICBzID0gJy0nICogc2l6ZQogICAgICAgICBzZiA9ICclcycgJSAocywpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocywgc2YpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzID09IHNmKQogICAgICAgICBkZWwgc2YKICAgICAgICAgc2YgPSAnLi4lcy4uJyAlIChzLCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2YpLCBsZW4ocykgKyA0KQpAQCAtNjQwLDcgKzY3Miw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5jb3VudCgnLicpLCAzKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoJy0nKSwgc2l6ZSAqIDIpCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDEwLCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKiAyKQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKiAyKQogICAgIGRlZiB0ZXN0X3JlcHJfc21hbGwoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHMgPSAnLScgKiBzaXplCiAgICAgICAgIHMgPSByZXByKHMpCkBAIC02NjEsNyArNjkzLDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KCdcXCcpLCBzaXplKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoJzAnKSwgc2l6ZSAqIDIpCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDEwLCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKiA1KQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKiA1KQogICAgIGRlZiB0ZXN0X3JlcHJfbGFyZ2Uoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHMgPSAnXHgwMCcgKiBzaXplCiAgICAgICAgIHMgPSByZXByKHMpCkBAIC02NzEsNyArNzAzLDEzIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5jb3VudCgnXFwnKSwgc2l6ZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KCcwJyksIHNpemUgKiAyKQogCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgLy8gNSArIDEsIG1lbXVzZT1jaGFyYWN0ZXJfc2l6ZSAqIDcpCisgICAgIyBhc2NpaSgpIGNhbGxzIGVuY29kZSgnYXNjaWknLCAnYmFja3NsYXNocmVwbGFjZScpLCB3aGljaCBpdHNlbGYKKyAgICAjIGNyZWF0ZXMgYSB0ZW1wb3JhcnkgUHlfVU5JQ09ERSByZXByZXNlbnRhdGlvbiBpbiBhZGRpdGlvbiB0byB0aGUKKyAgICAjIG9yaWdpbmFsIChQeV9VQ1MyKSBvbmUKKyAgICAjIFRoZXJlJ3MgYWxzbyBzb21lIG92ZXJhbGxvY2F0aW9uIHdoZW4gcmVzaXppbmcgdGhlIGFzY2lpKCkgcmVzdWx0CisgICAgIyB0aGF0IGlzbid0IHRha2VuIGludG8gYWNjb3VudCBoZXJlLgorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHIC8vIDUgKyAxLCBtZW11c2U9dWNzMl9jaGFyX3NpemUgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWNzNF9jaGFyX3NpemUgKyBhc2NpaV9jaGFyX3NpemUgKiA2KQogICAgIGRlZiB0ZXN0X3VuaWNvZGVfcmVwcihzZWxmLCBzaXplKToKICAgICAgICAgIyBVc2UgYW4gYXNzaWduZWQsIGJ1dCBub3QgcHJpbnRhYmxlIGNvZGUgcG9pbnQuCiAgICAgICAgICMgSXQgaXMgaW4gdGhlIHJhbmdlIG9mIHRoZSBsb3cgc3Vycm9nYXRlcyBcdURDMDAtXHVERkZGLgpAQCAtNjg2LDkgKzcyNCw3IEBACiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICByID0gcyA9IE5vbmUKIAotICAgICMgVGhlIGNoYXJhY3RlciB0YWtlcyA0IGJ5dGVzIGV2ZW4gaW4gVUNTLTIgYnVpbGRzIGJlY2F1c2UgaXQgd2lsbAotICAgICMgYmUgZGVjb21wb3NlZCBpbnRvIHN1cnJvZ2F0ZXMuCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgLy8gNSArIDEsIG1lbXVzZT00ICsgY2hhcmFjdGVyX3NpemUgKiA5KQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHIC8vIDUgKyAxLCBtZW11c2U9dWNzNF9jaGFyX3NpemUgKiAyICsgYXNjaWlfY2hhcl9zaXplICogMTApCiAgICAgZGVmIHRlc3RfdW5pY29kZV9yZXByX3dpZGUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIGNoYXIgPSAiXFUwMDAxRENCQSIKICAgICAgICAgcyA9IGNoYXIgKiBzaXplCkBAIC03MDEsMzkgKzczNyw3NiBAQAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgciA9IHMgPSBOb25lCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV80RyAvLyA1LCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKiAoNiArIDEpKQotICAgIGRlZiBfdGVzdF91bmljb2RlX3JlcHJfb3ZlcmZsb3coc2VsZiwgc2l6ZSk6Ci0gICAgICAgICMgWFhYIG5vdCBzdXJlIHdoYXQgdGhpcyB0ZXN0IGlzIGFib3V0Ci0gICAgICAgIGNoYXIgPSAiXHVEQ0JBIgotICAgICAgICBzID0gY2hhciAqIHNpemUKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgciA9IHJlcHIocykKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzID09IGV2YWwocikpCi0gICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICByID0gcyA9IE5vbmUKKyAgICAjIFRoZSBvcmlnaW5hbCB0ZXN0X3RyYW5zbGF0ZSBpcyBvdmVycmlkZW4gaGVyZSwgc28gYXMgdG8gZ2V0IHRoZQorICAgICMgY29ycmVjdCBzaXplIGVzdGltYXRlOiBzdHIudHJhbnNsYXRlKCkgdXNlcyBhbiBpbnRlcm1lZGlhdGUgUHlfVUNTNAorICAgICMgcmVwcmVzZW50YXRpb24uCisKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRywgbWVtdXNlPWFzY2lpX2NoYXJfc2l6ZSAqIDIgKyB1Y3M0X2NoYXJfc2l6ZSkKKyAgICBkZWYgdGVzdF90cmFuc2xhdGUoc2VsZiwgc2l6ZSk6CisgICAgICAgIF8gPSBzZWxmLmZyb21fbGF0aW4xCisgICAgICAgIFNVQlNUUiA9IF8oJ2Faei56LkFhei4nKQorICAgICAgICB0cmFucyA9IHsKKyAgICAgICAgICAgIG9yZChfKCcuJykpOiBfKCctJyksCisgICAgICAgICAgICBvcmQoXygnYScpKTogXygnIScpLAorICAgICAgICAgICAgb3JkKF8oJ1onKSk6IF8oJyQnKSwKKyAgICAgICAgfQorICAgICAgICBzdWJsZW4gPSBsZW4oU1VCU1RSKQorICAgICAgICByZXBlYXRzID0gc2l6ZSAvLyBzdWJsZW4gKyAyCisgICAgICAgIHMgPSBTVUJTVFIgKiByZXBlYXRzCisgICAgICAgIHMgPSBzLnRyYW5zbGF0ZSh0cmFucykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4ocyksIHJlcGVhdHMgKiBzdWJsZW4pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc1s6c3VibGVuXSwgU1VCU1RSLnRyYW5zbGF0ZSh0cmFucykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc1stc3VibGVuOl0sIFNVQlNUUi50cmFuc2xhdGUodHJhbnMpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoXygnLicpKSwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KF8oJyEnKSksIHJlcGVhdHMgKiAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoXygneicpKSwgcmVwZWF0cyAqIDMpCiAKIAogY2xhc3MgQnl0ZXNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlLCBCYXNlU3RyVGVzdCk6CiAKICAgICBkZWYgZnJvbV9sYXRpbjEoc2VsZiwgcyk6Ci0gICAgICAgIHJldHVybiBzLmVuY29kZSgibGF0aW4xIikKKyAgICAgICAgcmV0dXJuIHMuZW5jb2RlKCJsYXRpbi0xIikKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMiwgbWVtdXNlPTEgKyBjaGFyYWN0ZXJfc2l6ZSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT0xICsgYXNjaWlfY2hhcl9zaXplKQogICAgIGRlZiB0ZXN0X2RlY29kZShzZWxmLCBzaXplKToKICAgICAgICAgcyA9IHNlbGYuZnJvbV9sYXRpbjEoJy4nKSAqIHNpemUKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4ocy5kZWNvZGUoJ3V0Zi04JykpLCBzaXplKQogCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcsIG1lbXVzZT0yKQorICAgIGRlZiB0ZXN0X2NhcGl0YWxpemUoc2VsZiwgc2l6ZSk6CisgICAgICAgIHNlbGYuX3Rlc3RfY2FwaXRhbGl6ZShzaXplKQorCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcsIG1lbXVzZT0yKQorICAgIGRlZiB0ZXN0X3RpdGxlKHNlbGYsIHNpemUpOgorICAgICAgICBzZWxmLl90ZXN0X3RpdGxlKHNpemUpCisKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRywgbWVtdXNlPTIpCisgICAgZGVmIHRlc3Rfc3dhcGNhc2Uoc2VsZiwgc2l6ZSk6CisgICAgICAgIHNlbGYuX3Rlc3Rfc3dhcGNhc2Uoc2l6ZSkKKwogCiBjbGFzcyBCeXRlYXJyYXlUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlLCBCYXNlU3RyVGVzdCk6CiAKICAgICBkZWYgZnJvbV9sYXRpbjEoc2VsZiwgcyk6Ci0gICAgICAgIHJldHVybiBieXRlYXJyYXkocy5lbmNvZGUoImxhdGluMSIpKQorICAgICAgICByZXR1cm4gYnl0ZWFycmF5KHMuZW5jb2RlKCJsYXRpbi0xIikpCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT0xICsgY2hhcmFjdGVyX3NpemUpCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyAyLCBtZW11c2U9MSArIGFzY2lpX2NoYXJfc2l6ZSkKICAgICBkZWYgdGVzdF9kZWNvZGUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHMgPSBzZWxmLmZyb21fbGF0aW4xKCcuJykgKiBzaXplCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHMuZGVjb2RlKCd1dGYtOCcpKSwgc2l6ZSkKIAorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHLCBtZW11c2U9MikKKyAgICBkZWYgdGVzdF9jYXBpdGFsaXplKHNlbGYsIHNpemUpOgorICAgICAgICBzZWxmLl90ZXN0X2NhcGl0YWxpemUoc2l6ZSkKKworICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHLCBtZW11c2U9MikKKyAgICBkZWYgdGVzdF90aXRsZShzZWxmLCBzaXplKToKKyAgICAgICAgc2VsZi5fdGVzdF90aXRsZShzaXplKQorCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcsIG1lbXVzZT0yKQorICAgIGRlZiB0ZXN0X3N3YXBjYXNlKHNlbGYsIHNpemUpOgorICAgICAgICBzZWxmLl90ZXN0X3N3YXBjYXNlKHNpemUpCisKICAgICB0ZXN0X2hhc2ggPSBOb25lCiAgICAgdGVzdF9zcGxpdF9sYXJnZSA9IE5vbmUKIApAQCAtNzUyLDcgKzgyNSw3IEBACiAgICAgZGVmIHRlc3RfY29tcGFyZShzZWxmLCBzaXplKToKICAgICAgICAgdDEgPSAoJycsKSAqIHNpemUKICAgICAgICAgdDIgPSAoJycsKSAqIHNpemUKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0MSwgdDIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh0MSA9PSB0MikKICAgICAgICAgZGVsIHQyCiAgICAgICAgIHQyID0gKCcnLCkgKiAoc2l6ZSArIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UodDEgPT0gdDIpCkBAIC03ODMsOSArODU2LDkgQEAKICAgICBkZWYgdGVzdF9jb250YWlucyhzZWxmLCBzaXplKToKICAgICAgICAgdCA9ICgxLCAyLCAzLCA0LCA1KSAqIHNpemUKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4odCksIHNpemUgKiA1KQotICAgICAgICBzZWxmLmFzc2VydEluKDUsIHQpCi0gICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oKDEsIDIsIDMsIDQsIDUpLCB0KQotICAgICAgICBzZWxmLmFzc2VydE5vdEluKDAsIHQpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSg1IGluIHQpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoKDEsIDIsIDMsIDQsIDUpIGluIHQpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoMCBpbiB0KQogCiAgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyAxMCwgbWVtdXNlPTgpCiAgICAgZGVmIHRlc3RfaGFzaChzZWxmLCBzaXplKToKQEAgLTg2OSwxMSArOTQyLDExIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc1stNTpdLCAnMCwgMCknKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoJzAnKSwgc2l6ZSkKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHIC8vIDMgKyAyLCBtZW11c2U9OCArIDMgKiBjaGFyYWN0ZXJfc2l6ZSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyAvLyAzICsgMiwgbWVtdXNlPTggKyAzICogYXNjaWlfY2hhcl9zaXplKQogICAgIGRlZiB0ZXN0X3JlcHJfc21hbGwoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX3Rlc3RfcmVwcihzaXplKQogCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyAyLCBtZW11c2U9OCArIDMgKiBjaGFyYWN0ZXJfc2l6ZSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT04ICsgMyAqIGFzY2lpX2NoYXJfc2l6ZSkKICAgICBkZWYgdGVzdF9yZXByX2xhcmdlKHNlbGYsIHNpemUpOgogICAgICAgICByZXR1cm4gc2VsZi5iYXNpY190ZXN0X3JlcHIoc2l6ZSkKIApAQCAtODg4LDcgKzk2MSw3IEBACiAgICAgZGVmIHRlc3RfY29tcGFyZShzZWxmLCBzaXplKToKICAgICAgICAgbDEgPSBbJyddICogc2l6ZQogICAgICAgICBsMiA9IFsnJ10gKiBzaXplCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobDEsIGwyKQorICAgICAgICBzZWxmLmFzc2VydFRydWUobDEgPT0gbDIpCiAgICAgICAgIGRlbCBsMgogICAgICAgICBsMiA9IFsnJ10gKiAoc2l6ZSArIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UobDEgPT0gbDIpCkBAIC05MzQsOSArMTAwNyw5IEBACiAgICAgZGVmIHRlc3RfY29udGFpbnMoc2VsZiwgc2l6ZSk6CiAgICAgICAgIGwgPSBbMSwgMiwgMywgNCwgNV0gKiBzaXplCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGwpLCBzaXplICogNSkKLSAgICAgICAgc2VsZi5hc3NlcnRJbig1LCBsKQotICAgICAgICBzZWxmLmFzc2VydE5vdEluKFsxLCAyLCAzLCA0LCA1XSwgbCkKLSAgICAgICAgc2VsZi5hc3NlcnROb3RJbigwLCBsKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoNSBpbiBsKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKFsxLCAyLCAzLCA0LCA1XSBpbiBsKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKDAgaW4gbCkKIAogICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT04KQogICAgIGRlZiB0ZXN0X2hhc2goc2VsZiwgc2l6ZSk6CkBAIC0xMDQ0LDExICsxMTE3LDExIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc1stNTpdLCAnMCwgMF0nKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoJzAnKSwgc2l6ZSkKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHIC8vIDMgKyAyLCBtZW11c2U9OCArIDMgKiBjaGFyYWN0ZXJfc2l6ZSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyAvLyAzICsgMiwgbWVtdXNlPTggKyAzICogYXNjaWlfY2hhcl9zaXplKQogICAgIGRlZiB0ZXN0X3JlcHJfc21hbGwoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX3Rlc3RfcmVwcihzaXplKQogCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyAyLCBtZW11c2U9OCArIDMgKiBjaGFyYWN0ZXJfc2l6ZSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT04ICsgMyAqIGFzY2lpX2NoYXJfc2l6ZSkKICAgICBkZWYgdGVzdF9yZXByX2xhcmdlKHNlbGYsIHNpemUpOgogICAgICAgICByZXR1cm4gc2VsZi5iYXNpY190ZXN0X3JlcHIoc2l6ZSkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9iaW5hc2NpaS5weSBiL0xpYi90ZXN0L3Rlc3RfYmluYXNjaWkucHkKaW5kZXggMWU5ZTg4OC4uMDRkOGY5ZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9iaW5hc2NpaS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2JpbmFzY2lpLnB5CkBAIC0yMDgsOSArMjA4LDkgQEAKICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZXJyOgogICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgie30oeyFyfSkgcmFpc2VzIHshcn0iLmZvcm1hdChmdW5jLCBlbXB0eSwgZXJyKSkKIAotICAgIGRlZiB0ZXN0X3VuaWNvZGVfc3RyaW5ncyhzZWxmKToKLSAgICAgICAgIyBVbmljb2RlIHN0cmluZ3MgYXJlIG5vdCBhY2NlcHRlZC4KLSAgICAgICAgZm9yIGZ1bmMgaW4gYWxsX2Z1bmN0aW9uczoKKyAgICBkZWYgdGVzdF91bmljb2RlX2IyYShzZWxmKToKKyAgICAgICAgIyBVbmljb2RlIHN0cmluZ3MgYXJlIG5vdCBhY2NlcHRlZCBieSBiMmFfKiBmdW5jdGlvbnMuCisgICAgICAgIGZvciBmdW5jIGluIHNldChhbGxfZnVuY3Rpb25zKSAtIHNldChhMmJfZnVuY3Rpb25zKSB8IHsncmxlZGVjb2RlX2hxeCd9OgogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZ2V0YXR0cihiaW5hc2NpaSwgZnVuYyksICJ0ZXN0IikKICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZXJyOgpAQCAtMjE4LDYgKzIxOCwzNCBAQAogICAgICAgICAjIGNyY19ocXggbmVlZHMgMiBhcmd1bWVudHMKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiaW5hc2NpaS5jcmNfaHF4LCAidGVzdCIsIDApCiAKKyAgICBkZWYgdGVzdF91bmljb2RlX2EyYihzZWxmKToKKyAgICAgICAgIyBVbmljb2RlIHN0cmluZ3MgYXJlIGFjY2VwdGVkIGJ5IGEyYl8qIGZ1bmN0aW9ucy4KKyAgICAgICAgTUFYX0FMTCA9IDQ1CisgICAgICAgIHJhdyA9IHNlbGYucmF3ZGF0YVs6TUFYX0FMTF0KKyAgICAgICAgZm9yIGZhLCBmYiBpbiB6aXAoYTJiX2Z1bmN0aW9ucywgYjJhX2Z1bmN0aW9ucyk6CisgICAgICAgICAgICBpZiBmYSA9PSAncmxlZGVjb2RlX2hxeCc6CisgICAgICAgICAgICAgICAgIyBUYWtlcyBub24tQVNDSUkgZGF0YQorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBhMmIgPSBnZXRhdHRyKGJpbmFzY2lpLCBmYSkKKyAgICAgICAgICAgIGIyYSA9IGdldGF0dHIoYmluYXNjaWksIGZiKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGEgPSBiMmEoc2VsZi50eXBlMnRlc3QocmF3KSkKKyAgICAgICAgICAgICAgICBiaW5hcnlfcmVzID0gYTJiKGEpCisgICAgICAgICAgICAgICAgYSA9IGEuZGVjb2RlKCdhc2NpaScpCisgICAgICAgICAgICAgICAgcmVzID0gYTJiKGEpCisgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGVycjoKKyAgICAgICAgICAgICAgICBzZWxmLmZhaWwoInt9L3t9IGNvbnZlcnNpb24gcmFpc2VzIHshcn0iLmZvcm1hdChmYiwgZmEsIGVycikpCisgICAgICAgICAgICBpZiBmYiA9PSAnYjJhX2hxeCc6CisgICAgICAgICAgICAgICAgIyBiMmFfaHF4IHJldHVybnMgYSB0dXBsZQorICAgICAgICAgICAgICAgIHJlcywgXyA9IHJlcworICAgICAgICAgICAgICAgIGJpbmFyeV9yZXMsIF8gPSBiaW5hcnlfcmVzCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcywgcmF3LCAie30ve30gY29udmVyc2lvbjogIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieyFyfSAhPSB7IXJ9Ii5mb3JtYXQoZmIsIGZhLCByZXMsIHJhdykpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcywgYmluYXJ5X3JlcykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShyZXMsIGJ5dGVzKQorICAgICAgICAgICAgIyBub24tQVNDSUkgc3RyaW5nCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBhMmIsICJceDgwIikKKwogCiBjbGFzcyBBcnJheUJpbkFTQ0lJVGVzdChCaW5BU0NJSVRlc3QpOgogICAgIGRlZiB0eXBlMnRlc3Qoc2VsZiwgcyk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Jvb2wucHkgYi9MaWIvdGVzdC90ZXN0X2Jvb2wucHkKaW5kZXggYjI5Njg3MC4uNGJhYjI4YiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9ib29sLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYm9vbC5weQpAQCAtMzMwLDYgKzMzMCwxNiBAQAogICAgICAgICAgICAgICAgIGV4Y2VwdCAoRXhjZXB0aW9uKSBhcyBlX2xlbjoKICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoZV9ib29sKSwgc3RyKGVfbGVuKSkKIAorICAgIGRlZiB0ZXN0X3JlYWxfYW5kX2ltYWcoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZS5yZWFsLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUuaW1hZywgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKFRydWUucmVhbCksIGludCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKFRydWUuaW1hZyksIGludCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChGYWxzZS5yZWFsLCAwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLmltYWcsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShGYWxzZS5yZWFsKSwgaW50KQorICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUoRmFsc2UuaW1hZyksIGludCkKKwogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KEJvb2xUZXN0KQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2J1ZmZlci5weSBiL0xpYi90ZXN0L3Rlc3RfYnVmZmVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwMDA2ZjIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X2J1ZmZlci5weQpAQCAtMCwwICsxLDM2MjggQEAKKyMKKyMgVGhlIG5kYXJyYXkgb2JqZWN0IGZyb20gX3Rlc3RidWZmZXIuYyBpcyBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uIG9mCisjIGEgUEVQLTMxMTggYnVmZmVyIHByb3ZpZGVyLiBJdCBpcyBpbmRlcGVuZGVudCBmcm9tIE51bVB5J3MgbmRhcnJheQorIyBhbmQgdGhlIHRlc3RzIGRvbid0IHJlcXVpcmUgTnVtUHkuCisjCisjIElmIE51bVB5IGlzIHByZXNlbnQsIHNvbWUgdGVzdHMgY2hlY2sgYm90aCBuZGFycmF5IGltcGxlbWVudGF0aW9ucworIyBhZ2FpbnN0IGVhY2ggb3RoZXIuCisjCisjIE1vc3QgbmRhcnJheSB0ZXN0cyBhbHNvIGNoZWNrIHRoYXQgbWVtb3J5dmlldyhuZGFycmF5KSBiZWhhdmVzIGluCisjIHRoZSBzYW1lIHdheSBhcyB0aGUgb3JpZ2luYWwuIFRodXMsIGEgc3Vic3RhbnRpYWwgcGFydCBvZiB0aGUKKyMgbWVtb3J5dmlldyB0ZXN0cyBpcyBub3cgaW4gdGhpcyBtb2R1bGUuCisjCisKK2ltcG9ydCB1bml0dGVzdAorZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0Citmcm9tIGl0ZXJ0b29scyBpbXBvcnQgcGVybXV0YXRpb25zLCBwcm9kdWN0Citmcm9tIHJhbmRvbSBpbXBvcnQgcmFuZHJhbmdlLCBzYW1wbGUsIGNob2ljZQorZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9jb25maWdfdmFyCitmcm9tIHBsYXRmb3JtIGltcG9ydCBhcmNoaXRlY3R1cmUKK2ltcG9ydCB3YXJuaW5ncworaW1wb3J0IHN5cywgYXJyYXksIGlvCitmcm9tIGRlY2ltYWwgaW1wb3J0IERlY2ltYWwKK2Zyb20gZnJhY3Rpb25zIGltcG9ydCBGcmFjdGlvbgorCit0cnk6CisgICAgZnJvbSBfdGVzdGJ1ZmZlciBpbXBvcnQgKgorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIG5kYXJyYXkgPSBOb25lCisKK3RyeToKKyAgICBpbXBvcnQgc3RydWN0CitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgc3RydWN0ID0gTm9uZQorCit0cnk6CisgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICBmcm9tIG51bXB5IGltcG9ydCBuZGFycmF5IGFzIG51bXB5X2FycmF5CitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgbnVtcHlfYXJyYXkgPSBOb25lCisKKworU0hPUlRfVEVTVCA9IFRydWUKKworCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyMgICAgICAgICAgICAgICAgICAgIFJhbmRvbSBsaXN0cyBieSBmb3JtYXQgc3BlY2lmaWVyCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworIyBOYXRpdmUgZm9ybWF0IGNoYXJzIGFuZCB0aGVpciByYW5nZXMuCitOQVRJVkUgPSB7CisgICAgJz8nOjAsICdjJzowLCAnYic6MCwgJ0InOjAsCisgICAgJ2gnOjAsICdIJzowLCAnaSc6MCwgJ0knOjAsCisgICAgJ2wnOjAsICdMJzowLCAnbic6MCwgJ04nOjAsCisgICAgJ2YnOjAsICdkJzowLCAnUCc6MAorfQorCitpZiBzdHJ1Y3Q6CisgICAgdHJ5OgorICAgICAgICAjIEFkZCAicVEiIGlmIHByZXNlbnQgaW4gbmF0aXZlIG1vZGUuCisgICAgICAgIHN0cnVjdC5wYWNrKCdRJywgMioqNjQtMSkKKyAgICAgICAgTkFUSVZFWydxJ10gPSAwCisgICAgICAgIE5BVElWRVsnUSddID0gMAorICAgIGV4Y2VwdCBzdHJ1Y3QuZXJyb3I6CisgICAgICAgIHBhc3MKKworIyBTdGFuZGFyZCBmb3JtYXQgY2hhcnMgYW5kIHRoZWlyIHJhbmdlcy4KK1NUQU5EQVJEID0geworICAgICc/JzooMCwgMiksICAgICAgICAgICAgJ2MnOigwLCAxPDw4KSwKKyAgICAnYic6KC0oMTw8NyksIDE8PDcpLCAgICdCJzooMCwgMTw8OCksCisgICAgJ2gnOigtKDE8PDE1KSwgMTw8MTUpLCAnSCc6KDAsIDE8PDE2KSwKKyAgICAnaSc6KC0oMTw8MzEpLCAxPDwzMSksICdJJzooMCwgMTw8MzIpLAorICAgICdsJzooLSgxPDwzMSksIDE8PDMxKSwgJ0wnOigwLCAxPDwzMiksCisgICAgJ3EnOigtKDE8PDYzKSwgMTw8NjMpLCAnUSc6KDAsIDE8PDY0KSwKKyAgICAnZic6KC0oMTw8NjMpLCAxPDw2MyksICdkJzooLSgxPDwxMDIzKSwgMTw8MTAyMykKK30KKworZGVmIG5hdGl2ZV90eXBlX3JhbmdlKGZtdCk6CisgICAgIiIiUmV0dXJuIHJhbmdlIG9mIGEgbmF0aXZlIHR5cGUuIiIiCisgICAgaWYgZm10ID09ICdjJzoKKyAgICAgICAgbGggPSAoMCwgMjU2KQorICAgIGVsaWYgZm10ID09ICc/JzoKKyAgICAgICAgbGggPSAoMCwgMikKKyAgICBlbGlmIGZtdCA9PSAnZic6CisgICAgICAgIGxoID0gKC0oMTw8NjMpLCAxPDw2MykKKyAgICBlbGlmIGZtdCA9PSAnZCc6CisgICAgICAgIGxoID0gKC0oMTw8MTAyMyksIDE8PDEwMjMpCisgICAgZWxzZToKKyAgICAgICAgZm9yIGV4cCBpbiAoMTI4LCAxMjcsIDY0LCA2MywgMzIsIDMxLCAxNiwgMTUsIDgsIDcpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHN0cnVjdC5wYWNrKGZtdCwgKDE8PGV4cCktMSkKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgZXhjZXB0IHN0cnVjdC5lcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgIGxoID0gKC0oMTw8ZXhwKSwgMTw8ZXhwKSBpZiBleHAgJiAxIGVsc2UgKDAsIDE8PGV4cCkKKyAgICByZXR1cm4gbGgKKworZm10ZGljdCA9IHsKKyAgICAnJzpOQVRJVkUsCisgICAgJ0AnOk5BVElWRSwKKyAgICAnPCc6U1RBTkRBUkQsCisgICAgJz4nOlNUQU5EQVJELAorICAgICc9JzpTVEFOREFSRCwKKyAgICAnISc6U1RBTkRBUkQKK30KKworaWYgc3RydWN0OgorICAgIGZvciBmbXQgaW4gZm10ZGljdFsnQCddOgorICAgICAgICBmbXRkaWN0WydAJ11bZm10XSA9IG5hdGl2ZV90eXBlX3JhbmdlKGZtdCkKKworTUVNT1JZVklFVyA9IE5BVElWRS5jb3B5KCkKK0FSUkFZID0gTkFUSVZFLmNvcHkoKQorZm9yIGsgaW4gTkFUSVZFOgorICAgIGlmIG5vdCBrIGluICJiQmhIaUlsTGZkIjoKKyAgICAgICAgZGVsIEFSUkFZW2tdCisKK0JZVEVGTVQgPSBOQVRJVkUuY29weSgpCitmb3IgayBpbiBOQVRJVkU6CisgICAgaWYgbm90IGsgaW4gIkJiYyI6CisgICAgICAgIGRlbCBCWVRFRk1UW2tdCisKK2ZtdGRpY3RbJ20nXSAgPSBNRU1PUllWSUVXCitmbXRkaWN0WydAbSddID0gTUVNT1JZVklFVworZm10ZGljdFsnYSddICA9IEFSUkFZCitmbXRkaWN0WydiJ10gID0gQllURUZNVAorZm10ZGljdFsnQGInXSAgPSBCWVRFRk1UCisKKyMgQ2FwYWJpbGl0aWVzIG9mIHRoZSB0ZXN0IG9iamVjdHM6CitNT0RFID0gMAorTVVMVCA9IDEKK2NhcCA9IHsgICAgICAgICAjIGZvcm1hdCBjaGFycyAgICAgICAgICAgICAgICAgICMgbXVsdGlwbGllcgorICAnbmRhcnJheSc6ICAgIChbJycsICdAJywgJzwnLCAnPicsICc9JywgJyEnXSwgWycnLCAnMScsICcyJywgJzMnXSksCisgICdhcnJheSc6ICAgICAgKFsnYSddLCAgICAgICAgICAgICAgICAgICAgICAgICBbJyddKSwKKyAgJ251bXB5JzogICAgICAoWycnXSwgICAgICAgICAgICAgICAgICAgICAgICAgIFsnJ10pLAorICAnbWVtb3J5dmlldyc6IChbJ0BtJywgJ20nXSwgICAgICAgICAgICAgICAgICAgWycnXSksCisgICdieXRlZm10JzogICAgKFsnQGInLCAnYiddLCAgICAgICAgICAgICAgICAgICBbJyddKSwKK30KKworZGVmIHJhbmRyYW5nZV9mbXQobW9kZSwgY2hhciwgb2JqKToKKyAgICAiIiJSZXR1cm4gcmFuZG9tIGl0ZW0gZm9yIGEgdHlwZSBzcGVjaWZpZWQgYnkgYSBtb2RlIGFuZCBhIHNpbmdsZQorICAgICAgIGZvcm1hdCBjaGFyYWN0ZXIuIiIiCisgICAgeCA9IHJhbmRyYW5nZSgqZm10ZGljdFttb2RlXVtjaGFyXSkKKyAgICBpZiBjaGFyID09ICdjJzoKKyAgICAgICAgeCA9IGJ5dGVzKGNocih4KSwgJ2xhdGluMScpCisgICAgaWYgY2hhciA9PSAnPyc6CisgICAgICAgIHggPSBib29sKHgpCisgICAgaWYgY2hhciA9PSAnZicgb3IgY2hhciA9PSAnZCc6CisgICAgICAgIHggPSBzdHJ1Y3QucGFjayhjaGFyLCB4KQorICAgICAgICB4ID0gc3RydWN0LnVucGFjayhjaGFyLCB4KVswXQorICAgIGlmIG9iaiA9PSAnbnVtcHknIGFuZCB4ID09IGInXHgwMCc6CisgICAgICAgICMgaHR0cDovL3Byb2plY3RzLnNjaXB5Lm9yZy9udW1weS90aWNrZXQvMTkyNQorICAgICAgICB4ID0gYidceDAxJworICAgIHJldHVybiB4CisKK2RlZiBnZW5faXRlbShmbXQsIG9iaik6CisgICAgIiIiUmV0dXJuIHNpbmdsZSByYW5kb20gaXRlbS4iIiIKKyAgICBtb2RlLCBjaGFycyA9IGZtdC5zcGxpdCgnIycpCisgICAgeCA9IFtdCisgICAgZm9yIGMgaW4gY2hhcnM6CisgICAgICAgIHguYXBwZW5kKHJhbmRyYW5nZV9mbXQobW9kZSwgYywgb2JqKSkKKyAgICByZXR1cm4geFswXSBpZiBsZW4oeCkgPT0gMSBlbHNlIHR1cGxlKHgpCisKK2RlZiBnZW5faXRlbXMobiwgZm10LCBvYmopOgorICAgICIiIlJldHVybiBhIGxpc3Qgb2YgcmFuZG9tIGl0ZW1zIChvciBhIHNjYWxhcikuIiIiCisgICAgaWYgbiA9PSAwOgorICAgICAgICByZXR1cm4gZ2VuX2l0ZW0oZm10LCBvYmopCisgICAgbHN0ID0gWzBdICogbgorICAgIGZvciBpIGluIHJhbmdlKG4pOgorICAgICAgICBsc3RbaV0gPSBnZW5faXRlbShmbXQsIG9iaikKKyAgICByZXR1cm4gbHN0CisKK2RlZiBzdHJ1Y3RfaXRlbXMobiwgb2JqKToKKyAgICBtb2RlID0gY2hvaWNlKGNhcFtvYmpdW01PREVdKQorICAgIHhmbXQgPSBtb2RlICsgJyMnCisgICAgZm10ID0gbW9kZS5zdHJpcCgnYW1iJykKKyAgICBubWVtYiA9IHJhbmRyYW5nZSgyLCAxMCkgIyBudW1iZXIgb2Ygc3RydWN0IG1lbWJlcnMKKyAgICBmb3IgXyBpbiByYW5nZShubWVtYik6CisgICAgICAgIGNoYXIgPSBjaG9pY2UodHVwbGUoZm10ZGljdFttb2RlXSkpCisgICAgICAgIG11bHRpcGxpZXIgPSBjaG9pY2UoY2FwW29ial1bTVVMVF0pCisgICAgICAgIHhmbXQgKz0gKGNoYXIgKiBpbnQobXVsdGlwbGllciBpZiBtdWx0aXBsaWVyIGVsc2UgMSkpCisgICAgICAgIGZtdCArPSAobXVsdGlwbGllciArIGNoYXIpCisgICAgaXRlbXMgPSBnZW5faXRlbXMobiwgeGZtdCwgb2JqKQorICAgIGl0ZW0gPSBnZW5faXRlbSh4Zm10LCBvYmopCisgICAgcmV0dXJuIGZtdCwgaXRlbXMsIGl0ZW0KKworZGVmIHJhbmRpdGVtcyhuLCBvYmo9J25kYXJyYXknLCBtb2RlPU5vbmUsIGNoYXI9Tm9uZSk6CisgICAgIiIiUmV0dXJuIHJhbmRvbSBmb3JtYXQsIGl0ZW1zLCBpdGVtLiIiIgorICAgIGlmIG1vZGUgaXMgTm9uZToKKyAgICAgICAgbW9kZSA9IGNob2ljZShjYXBbb2JqXVtNT0RFXSkKKyAgICBpZiBjaGFyIGlzIE5vbmU6CisgICAgICAgIGNoYXIgPSBjaG9pY2UodHVwbGUoZm10ZGljdFttb2RlXSkpCisgICAgbXVsdGlwbGllciA9IGNob2ljZShjYXBbb2JqXVtNVUxUXSkKKyAgICBmbXQgPSBtb2RlICsgJyMnICsgY2hhciAqIGludChtdWx0aXBsaWVyIGlmIG11bHRpcGxpZXIgZWxzZSAxKQorICAgIGl0ZW1zID0gZ2VuX2l0ZW1zKG4sIGZtdCwgb2JqKQorICAgIGl0ZW0gPSBnZW5faXRlbShmbXQsIG9iaikKKyAgICBmbXQgPSBtb2RlLnN0cmlwKCdhbWInKSArIG11bHRpcGxpZXIgKyBjaGFyCisgICAgcmV0dXJuIGZtdCwgaXRlbXMsIGl0ZW0KKworZGVmIGl0ZXJfbW9kZShuLCBvYmo9J25kYXJyYXknKToKKyAgICAiIiJJdGVyYXRlIHRocm91Z2ggc3VwcG9ydGVkIG1vZGUvY2hhciBjb21iaW5hdGlvbnMuIiIiCisgICAgZm9yIG1vZGUgaW4gY2FwW29ial1bTU9ERV06CisgICAgICAgIGZvciBjaGFyIGluIGZtdGRpY3RbbW9kZV06CisgICAgICAgICAgICB5aWVsZCByYW5kaXRlbXMobiwgb2JqLCBtb2RlLCBjaGFyKQorCitkZWYgaXRlcl9mb3JtYXQobml0ZW1zLCB0ZXN0b2JqPSduZGFycmF5Jyk6CisgICAgIiIiWWllbGQgKGZvcm1hdCwgaXRlbXMsIGl0ZW0pIGZvciBhbGwgcG9zc2libGUgbW9kZXMgYW5kIGZvcm1hdAorICAgICAgIGNoYXJhY3RlcnMgcGx1cyBvbmUgcmFuZG9tIGNvbXBvdW5kIGZvcm1hdCBzdHJpbmcuIiIiCisgICAgZm9yIHQgaW4gaXRlcl9tb2RlKG5pdGVtcywgdGVzdG9iaik6CisgICAgICAgIHlpZWxkIHQKKyAgICBpZiB0ZXN0b2JqICE9ICduZGFycmF5JzoKKyAgICAgICAgcmFpc2UgU3RvcEl0ZXJhdGlvbgorICAgIHlpZWxkIHN0cnVjdF9pdGVtcyhuaXRlbXMsIHRlc3RvYmopCisKKworZGVmIGlzX2J5dGVfZm9ybWF0KGZtdCk6CisgICAgcmV0dXJuICdjJyBpbiBmbXQgb3IgJ2InIGluIGZtdCBvciAnQicgaW4gZm10CisKK2RlZiBpc19tZW1vcnl2aWV3X2Zvcm1hdChmbXQpOgorICAgICIiImZvcm1hdCBzdWl0YWJsZSBmb3IgbWVtb3J5dmlldyIiIgorICAgIHggPSBsZW4oZm10KQorICAgIHJldHVybiAoKHggPT0gMSBvciAoeCA9PSAyIGFuZCBmbXRbMF0gPT0gJ0AnKSkgYW5kCisgICAgICAgICAgICBmbXRbeC0xXSBpbiBNRU1PUllWSUVXKQorCitOT05fQllURV9GT1JNQVQgPSBbYyBmb3IgYyBpbiBmbXRkaWN0WydAJ10gaWYgbm90IGlzX2J5dGVfZm9ybWF0KGMpXQorCisKKyMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorIyAgICAgICBNdWx0aS1kaW1lbnNpb25hbCB0b2xpc3QoKSwgc2xpY2luZyBhbmQgc2xpY2UgYXNzaWdubWVudHMKKyMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitkZWYgYXRvbXAobHN0KToKKyAgICAiIiJUdXBsZSBpdGVtcyAocmVwcmVzZW50aW5nIHN0cnVjdHMpIGFyZSByZWdhcmRlZCBhcyBhdG9tcy4iIiIKKyAgICByZXR1cm4gbm90IGlzaW5zdGFuY2UobHN0LCBsaXN0KQorCitkZWYgbGlzdHAobHN0KToKKyAgICByZXR1cm4gaXNpbnN0YW5jZShsc3QsIGxpc3QpCisKK2RlZiBwcm9kKGxzdCk6CisgICAgIiIiUHJvZHVjdCBvZiBsaXN0IGVsZW1lbnRzLiIiIgorICAgIGlmIGxlbihsc3QpID09IDA6CisgICAgICAgIHJldHVybiAwCisgICAgeCA9IGxzdFswXQorICAgIGZvciB2IGluIGxzdFsxOl06CisgICAgICAgIHggKj0gdgorICAgIHJldHVybiB4CisKK2RlZiBzdHJpZGVzX2Zyb21fc2hhcGUobmRpbSwgc2hhcGUsIGl0ZW1zaXplLCBsYXlvdXQpOgorICAgICIiIkNhbGN1bGF0ZSBzdHJpZGVzIG9mIGEgY29udGlndW91cyBhcnJheS4gTGF5b3V0IGlzICdDJyBvcgorICAgICAgICdGJyAoRm9ydHJhbikuIiIiCisgICAgaWYgbmRpbSA9PSAwOgorICAgICAgICByZXR1cm4gKCkKKyAgICBpZiBsYXlvdXQgPT0gJ0MnOgorICAgICAgICBzdHJpZGVzID0gbGlzdChzaGFwZVsxOl0pICsgW2l0ZW1zaXplXQorICAgICAgICBmb3IgaSBpbiByYW5nZShuZGltLTIsIC0xLCAtMSk6CisgICAgICAgICAgICBzdHJpZGVzW2ldICo9IHN0cmlkZXNbaSsxXQorICAgIGVsc2U6CisgICAgICAgIHN0cmlkZXMgPSBbaXRlbXNpemVdICsgbGlzdChzaGFwZVs6LTFdKQorICAgICAgICBmb3IgaSBpbiByYW5nZSgxLCBuZGltKToKKyAgICAgICAgICAgIHN0cmlkZXNbaV0gKj0gc3RyaWRlc1tpLTFdCisgICAgcmV0dXJuIHN0cmlkZXMKKworZGVmIF9jYShpdGVtcywgcyk6CisgICAgIiIiQ29udmVydCBmbGF0IGl0ZW0gbGlzdCB0byB0aGUgbmVzdGVkIGxpc3QgcmVwcmVzZW50YXRpb24gb2YgYQorICAgICAgIG11bHRpZGltZW5zaW9uYWwgQyBhcnJheSB3aXRoIHNoYXBlICdzJy4iIiIKKyAgICBpZiBhdG9tcChpdGVtcyk6CisgICAgICAgIHJldHVybiBpdGVtcworICAgIGlmIGxlbihzKSA9PSAwOgorICAgICAgICByZXR1cm4gaXRlbXNbMF0KKyAgICBsc3QgPSBbMF0gKiBzWzBdCisgICAgc3RyaWRlID0gbGVuKGl0ZW1zKSAvLyBzWzBdIGlmIHNbMF0gZWxzZSAwCisgICAgZm9yIGkgaW4gcmFuZ2Uoc1swXSk6CisgICAgICAgIHN0YXJ0ID0gaSpzdHJpZGUKKyAgICAgICAgbHN0W2ldID0gX2NhKGl0ZW1zW3N0YXJ0OnN0YXJ0K3N0cmlkZV0sIHNbMTpdKQorICAgIHJldHVybiBsc3QKKworZGVmIF9mYShpdGVtcywgcyk6CisgICAgIiIiQ29udmVydCBmbGF0IGl0ZW0gbGlzdCB0byB0aGUgbmVzdGVkIGxpc3QgcmVwcmVzZW50YXRpb24gb2YgYQorICAgICAgIG11bHRpZGltZW5zaW9uYWwgRm9ydHJhbiBhcnJheSB3aXRoIHNoYXBlICdzJy4iIiIKKyAgICBpZiBhdG9tcChpdGVtcyk6CisgICAgICAgIHJldHVybiBpdGVtcworICAgIGlmIGxlbihzKSA9PSAwOgorICAgICAgICByZXR1cm4gaXRlbXNbMF0KKyAgICBsc3QgPSBbMF0gKiBzWzBdCisgICAgc3RyaWRlID0gc1swXQorICAgIGZvciBpIGluIHJhbmdlKHNbMF0pOgorICAgICAgICBsc3RbaV0gPSBfZmEoaXRlbXNbaTo6c3RyaWRlXSwgc1sxOl0pCisgICAgcmV0dXJuIGxzdAorCitkZWYgY2FycmF5KGl0ZW1zLCBzaGFwZSk6CisgICAgaWYgbGlzdHAoaXRlbXMpIGFuZCBub3QgMCBpbiBzaGFwZSBhbmQgcHJvZChzaGFwZSkgIT0gbGVuKGl0ZW1zKToKKyAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigicHJvZChzaGFwZSkgIT0gbGVuKGl0ZW1zKSIpCisgICAgcmV0dXJuIF9jYShpdGVtcywgc2hhcGUpCisKK2RlZiBmYXJyYXkoaXRlbXMsIHNoYXBlKToKKyAgICBpZiBsaXN0cChpdGVtcykgYW5kIG5vdCAwIGluIHNoYXBlIGFuZCBwcm9kKHNoYXBlKSAhPSBsZW4oaXRlbXMpOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJwcm9kKHNoYXBlKSAhPSBsZW4oaXRlbXMpIikKKyAgICByZXR1cm4gX2ZhKGl0ZW1zLCBzaGFwZSkKKworZGVmIGluZGljZXMoc2hhcGUpOgorICAgICIiIkdlbmVyYXRlIGFsbCBwb3NzaWJsZSB0dXBsZXMgb2YgaW5kaWNlcy4iIiIKKyAgICBpdGVyYWJsZXMgPSBbcmFuZ2UodikgZm9yIHYgaW4gc2hhcGVdCisgICAgcmV0dXJuIHByb2R1Y3QoKml0ZXJhYmxlcykKKworZGVmIGdldGluZGV4KG5kaW0sIGluZCwgc3RyaWRlcyk6CisgICAgIiIiQ29udmVydCBtdWx0aS1kaW1lbnNpb25hbCBpbmRleCB0byB0aGUgcG9zaXRpb24gaW4gdGhlIGZsYXQgbGlzdC4iIiIKKyAgICByZXQgPSAwCisgICAgZm9yIGkgaW4gcmFuZ2UobmRpbSk6CisgICAgICAgIHJldCArPSBzdHJpZGVzW2ldICogaW5kW2ldCisgICAgcmV0dXJuIHJldAorCitkZWYgdHJhbnNwb3NlKHNyYywgc2hhcGUpOgorICAgICIiIlRyYW5zcG9zZSBmbGF0IGl0ZW0gbGlzdCB0aGF0IGlzIHJlZ2FyZGVkIGFzIGEgbXVsdGktZGltZW5zaW9uYWwKKyAgICAgICBtYXRyaXggZGVmaW5lZCBieSBzaGFwZTogZGVzdC4uLltrXVtqXVtpXSA9IHNyY1tpXVtqXVtrXS4uLiAgIiIiCisgICAgaWYgbm90IHNoYXBlOgorICAgICAgICByZXR1cm4gc3JjCisgICAgbmRpbSA9IGxlbihzaGFwZSkKKyAgICBzc3RyaWRlcyA9IHN0cmlkZXNfZnJvbV9zaGFwZShuZGltLCBzaGFwZSwgMSwgJ0MnKQorICAgIGRzdHJpZGVzID0gc3RyaWRlc19mcm9tX3NoYXBlKG5kaW0sIHNoYXBlWzo6LTFdLCAxLCAnQycpCisgICAgZGVzdCA9IFswXSAqIGxlbihzcmMpCisgICAgZm9yIGluZCBpbiBpbmRpY2VzKHNoYXBlKToKKyAgICAgICAgZnIgPSBnZXRpbmRleChuZGltLCBpbmQsIHNzdHJpZGVzKQorICAgICAgICB0byA9IGdldGluZGV4KG5kaW0sIGluZFs6Oi0xXSwgZHN0cmlkZXMpCisgICAgICAgIGRlc3RbdG9dID0gc3JjW2ZyXQorICAgIHJldHVybiBkZXN0CisKK2RlZiBfZmxhdHRlbihsc3QpOgorICAgICIiImZsYXR0ZW4gbGlzdCIiIgorICAgIGlmIGxzdCA9PSBbXToKKyAgICAgICAgcmV0dXJuIGxzdAorICAgIGlmIGF0b21wKGxzdCk6CisgICAgICAgIHJldHVybiBbbHN0XQorICAgIHJldHVybiBfZmxhdHRlbihsc3RbMF0pICsgX2ZsYXR0ZW4obHN0WzE6XSkKKworZGVmIGZsYXR0ZW4obHN0KToKKyAgICAiIiJmbGF0dGVuIGxpc3Qgb3IgcmV0dXJuIHNjYWxhciIiIgorICAgIGlmIGF0b21wKGxzdCk6ICMgc2NhbGFyCisgICAgICAgIHJldHVybiBsc3QKKyAgICByZXR1cm4gX2ZsYXR0ZW4obHN0KQorCitkZWYgc2xpY2Vfc2hhcGUobHN0LCBzbGljZXMpOgorICAgICIiIkdldCB0aGUgc2hhcGUgb2YgbHN0IGFmdGVyIHNsaWNpbmc6IHNsaWNlcyBpcyBhIGxpc3Qgb2Ygc2xpY2UKKyAgICAgICBvYmplY3RzLiIiIgorICAgIGlmIGF0b21wKGxzdCk6CisgICAgICAgIHJldHVybiBbXQorICAgIHJldHVybiBbbGVuKGxzdFtzbGljZXNbMF1dKV0gKyBzbGljZV9zaGFwZShsc3RbMF0sIHNsaWNlc1sxOl0pCisKK2RlZiBtdWx0aXNsaWNlKGxzdCwgc2xpY2VzKToKKyAgICAiIiJNdWx0aS1kaW1lbnNpb25hbCBzbGljaW5nOiBzbGljZXMgaXMgYSBsaXN0IG9mIHNsaWNlIG9iamVjdHMuIiIiCisgICAgaWYgYXRvbXAobHN0KToKKyAgICAgICAgcmV0dXJuIGxzdAorICAgIHJldHVybiBbbXVsdGlzbGljZShzdWJsc3QsIHNsaWNlc1sxOl0pIGZvciBzdWJsc3QgaW4gbHN0W3NsaWNlc1swXV1dCisKK2RlZiBtX2Fzc2lnbihsbHN0LCBybHN0LCBsc2xpY2VzLCByc2xpY2VzKToKKyAgICAiIiJNdWx0aS1kaW1lbnNpb25hbCBzbGljZSBhc3NpZ25tZW50OiBsbHN0IGFuZCBybHN0IGFyZSB0aGUgb3BlcmFuZHMsCisgICAgICAgbHNsaWNlcyBhbmQgcnNsaWNlcyBhcmUgbGlzdHMgb2Ygc2xpY2Ugb2JqZWN0cy4gbGxzdCBhbmQgcmxzdCBtdXN0CisgICAgICAgaGF2ZSB0aGUgc2FtZSBzdHJ1Y3R1cmUuCisKKyAgICAgICBGb3IgYSB0d28tZGltZW5zaW9uYWwgZXhhbXBsZSwgdGhpcyBpcyBub3QgaW1wbGVtZW50ZWQgaW4gUHl0aG9uOgorCisgICAgICAgICBsbHN0WzA6MzoyLCAwOjM6Ml0gPSBybHN0WzE6MzoxLCAxOjM6MV0KKworICAgICAgIEluc3RlYWQgd2Ugd3JpdGU6CisKKyAgICAgICAgIGxzbGljZXMgPSBbc2xpY2UoMCwzLDIpLCBzbGljZSgwLDMsMildCisgICAgICAgICByc2xpY2VzID0gW3NsaWNlKDEsMywxKSwgc2xpY2UoMSwzLDEpXQorICAgICAgICAgbXVsdGlzbGljZV9hc3NpZ24obGxzdCwgcmxzdCwgbHNsaWNlcywgcnNsaWNlcykKKyAgICAiIiIKKyAgICBpZiBhdG9tcChybHN0KToKKyAgICAgICAgcmV0dXJuIHJsc3QKKyAgICBybHN0ID0gW21fYXNzaWduKGwsIHIsIGxzbGljZXNbMTpdLCByc2xpY2VzWzE6XSkKKyAgICAgICAgICAgIGZvciBsLCByIGluIHppcChsbHN0W2xzbGljZXNbMF1dLCBybHN0W3JzbGljZXNbMF1dKV0KKyAgICBsbHN0W2xzbGljZXNbMF1dID0gcmxzdAorICAgIHJldHVybiBsbHN0CisKK2RlZiBjbXBfc3RydWN0dXJlKGxsc3QsIHJsc3QsIGxzbGljZXMsIHJzbGljZXMpOgorICAgICIiIkNvbXBhcmUgdGhlIHN0cnVjdHVyZSBvZiBsbHN0W2xzbGljZXNdIGFuZCBybHN0W3JzbGljZXNdLiIiIgorICAgIGxzaGFwZSA9IHNsaWNlX3NoYXBlKGxsc3QsIGxzbGljZXMpCisgICAgcnNoYXBlID0gc2xpY2Vfc2hhcGUocmxzdCwgcnNsaWNlcykKKyAgICBpZiAobGVuKGxzaGFwZSkgIT0gbGVuKHJzaGFwZSkpOgorICAgICAgICByZXR1cm4gLTEKKyAgICBmb3IgaSBpbiByYW5nZShsZW4obHNoYXBlKSk6CisgICAgICAgIGlmIGxzaGFwZVtpXSAhPSByc2hhcGVbaV06CisgICAgICAgICAgICByZXR1cm4gLTEKKyAgICAgICAgaWYgbHNoYXBlW2ldID09IDA6CisgICAgICAgICAgICByZXR1cm4gMAorICAgIHJldHVybiAwCisKK2RlZiBtdWx0aXNsaWNlX2Fzc2lnbihsbHN0LCBybHN0LCBsc2xpY2VzLCByc2xpY2VzKToKKyAgICAiIiJSZXR1cm4gbGxzdCBhZnRlciBhc3NpZ25pbmc6IGxsc3RbbHNsaWNlc10gPSBybHN0W3JzbGljZXNdIiIiCisgICAgaWYgY21wX3N0cnVjdHVyZShsbHN0LCBybHN0LCBsc2xpY2VzLCByc2xpY2VzKSA8IDA6CisgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImx2YWx1ZSBhbmQgcnZhbHVlIGhhdmUgZGlmZmVyZW50IHN0cnVjdHVyZXMiKQorICAgIHJldHVybiBtX2Fzc2lnbihsbHN0LCBybHN0LCBsc2xpY2VzLCByc2xpY2VzKQorCisKKyMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorIyAgICAgICAgICAgICAgICAgICAgICAgICAgUmFuZG9tIHN0cnVjdHVyZXMKKyMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisjCisjIFBFUC0zMTE4IGlzIHZlcnkgcGVybWlzc2l2ZSB3aXRoIHJlc3BlY3QgdG8gdGhlIGNvbnRlbnRzIG9mIGEKKyMgUHlfYnVmZmVyLiBJbiBwYXJ0aWN1bGFyOgorIworIyAgIC0gc2hhcGUgY2FuIGJlIHplcm8KKyMgICAtIHN0cmlkZXMgY2FuIGJlIGFueSBpbnRlZ2VyLCBpbmNsdWRpbmcgemVybworIyAgIC0gb2Zmc2V0IGNhbiBwb2ludCB0byBhbnkgbG9jYXRpb24gaW4gdGhlIHVuZGVybHlpbmcKKyMgICAgIG1lbW9yeSBibG9jaywgcHJvdmlkZWQgdGhhdCBpdCBpcyBhIG11bHRpcGxlIG9mCisjICAgICBpdGVtc2l6ZS4KKyMKKyMgVGhlIGZ1bmN0aW9ucyBpbiB0aGlzIHNlY3Rpb24gdGVzdCBhbmQgdmVyaWZ5IHJhbmRvbSBzdHJ1Y3R1cmVzCisjIGluIGZ1bGwgZ2VuZXJhbGl0eS4gQSBzdHJ1Y3R1cmUgaXMgdmFsaWQgaWZmIGl0IGZpdHMgaW4gdGhlCisjIHVuZGVybHlpbmcgbWVtb3J5IGJsb2NrLgorIworIyBUaGUgc3RydWN0dXJlICd0JyAoc2hvcnQgZm9yICd0dXBsZScpIGlzIGZ1bGx5IGRlZmluZWQgYnk6CisjCisjICAgdCA9IChtZW1sZW4sIGl0ZW1zaXplLCBuZGltLCBzaGFwZSwgc3RyaWRlcywgb2Zmc2V0KQorIworCitkZWYgdmVyaWZ5X3N0cnVjdHVyZShtZW1sZW4sIGl0ZW1zaXplLCBuZGltLCBzaGFwZSwgc3RyaWRlcywgb2Zmc2V0KToKKyAgICAiIiJWZXJpZnkgdGhhdCB0aGUgcGFyYW1ldGVycyByZXByZXNlbnQgYSB2YWxpZCBhcnJheSB3aXRoaW4KKyAgICAgICB0aGUgYm91bmRzIG9mIHRoZSBhbGxvY2F0ZWQgbWVtb3J5OgorICAgICAgICAgICBjaGFyICptZW06IHN0YXJ0IG9mIHRoZSBwaHlzaWNhbCBtZW1vcnkgYmxvY2sKKyAgICAgICAgICAgbWVtbGVuOiBsZW5ndGggb2YgdGhlIHBoeXNpY2FsIG1lbW9yeSBibG9jaworICAgICAgICAgICBvZmZzZXQ6IChjaGFyICopYnVmIC0gbWVtCisgICAgIiIiCisgICAgaWYgb2Zmc2V0ICUgaXRlbXNpemU6CisgICAgICAgIHJldHVybiBGYWxzZQorICAgIGlmIG9mZnNldCA8IDAgb3Igb2Zmc2V0K2l0ZW1zaXplID4gbWVtbGVuOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBpZiBhbnkodiAlIGl0ZW1zaXplIGZvciB2IGluIHN0cmlkZXMpOgorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGlmIG5kaW0gPD0gMDoKKyAgICAgICAgcmV0dXJuIG5kaW0gPT0gMCBhbmQgbm90IHNoYXBlIGFuZCBub3Qgc3RyaWRlcworICAgIGlmIDAgaW4gc2hhcGU6CisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICBpbWluID0gc3VtKHN0cmlkZXNbal0qKHNoYXBlW2pdLTEpIGZvciBqIGluIHJhbmdlKG5kaW0pCisgICAgICAgICAgICAgICBpZiBzdHJpZGVzW2pdIDw9IDApCisgICAgaW1heCA9IHN1bShzdHJpZGVzW2pdKihzaGFwZVtqXS0xKSBmb3IgaiBpbiByYW5nZShuZGltKQorICAgICAgICAgICAgICAgaWYgc3RyaWRlc1tqXSA+IDApCisKKyAgICByZXR1cm4gMCA8PSBvZmZzZXQraW1pbiBhbmQgb2Zmc2V0K2ltYXgraXRlbXNpemUgPD0gbWVtbGVuCisKK2RlZiBnZXRfaXRlbShsc3QsIGluZGljZXMpOgorICAgIGZvciBpIGluIGluZGljZXM6CisgICAgICAgIGxzdCA9IGxzdFtpXQorICAgIHJldHVybiBsc3QKKworZGVmIG1lbW9yeV9pbmRleChpbmRpY2VzLCB0KToKKyAgICAiIiJMb2NhdGlvbiBvZiBhbiBpdGVtIGluIHRoZSB1bmRlcmx5aW5nIG1lbW9yeS4iIiIKKyAgICBtZW1sZW4sIGl0ZW1zaXplLCBuZGltLCBzaGFwZSwgc3RyaWRlcywgb2Zmc2V0ID0gdAorICAgIHAgPSBvZmZzZXQKKyAgICBmb3IgaSBpbiByYW5nZShuZGltKToKKyAgICAgICAgcCArPSBzdHJpZGVzW2ldKmluZGljZXNbaV0KKyAgICByZXR1cm4gcAorCitkZWYgaXNfb3ZlcmxhcHBpbmcodCk6CisgICAgIiIiVGhlIHN0cnVjdHVyZSAndCcgaXMgb3ZlcmxhcHBpbmcgaWYgYXQgbGVhc3Qgb25lIG1lbW9yeSBsb2NhdGlvbgorICAgICAgIGlzIHZpc2l0ZWQgdHdpY2Ugd2hpbGUgaXRlcmF0aW5nIHRocm91Z2ggYWxsIHBvc3NpYmxlIHR1cGxlcyBvZgorICAgICAgIGluZGljZXMuIiIiCisgICAgbWVtbGVuLCBpdGVtc2l6ZSwgbmRpbSwgc2hhcGUsIHN0cmlkZXMsIG9mZnNldCA9IHQKKyAgICB2aXNpdGVkID0gMTw8bWVtbGVuCisgICAgZm9yIGluZCBpbiBpbmRpY2VzKHNoYXBlKToKKyAgICAgICAgaSA9IG1lbW9yeV9pbmRleChpbmQsIHQpCisgICAgICAgIGJpdCA9IDE8PGkKKyAgICAgICAgaWYgdmlzaXRlZCAmIGJpdDoKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgIHZpc2l0ZWQgfD0gYml0CisgICAgcmV0dXJuIEZhbHNlCisKK2RlZiByYW5kX3N0cnVjdHVyZShpdGVtc2l6ZSwgdmFsaWQsIG1heGRpbT01LCBtYXhzaGFwZT0xNiwgc2hhcGU9KCkpOgorICAgICIiIlJldHVybiByYW5kb20gc3RydWN0dXJlOgorICAgICAgICAgICAobWVtbGVuLCBpdGVtc2l6ZSwgbmRpbSwgc2hhcGUsIHN0cmlkZXMsIG9mZnNldCkKKyAgICAgICBJZiAndmFsaWQnIGlzIHRydWUsIHRoZSByZXR1cm5lZCBzdHJ1Y3R1cmUgaXMgdmFsaWQsIG90aGVyd2lzZSBpbnZhbGlkLgorICAgICAgIElmICdzaGFwZScgaXMgZ2l2ZW4sIHVzZSB0aGF0IGluc3RlYWQgb2YgY3JlYXRpbmcgYSByYW5kb20gc2hhcGUuCisgICAgIiIiCisgICAgaWYgbm90IHNoYXBlOgorICAgICAgICBuZGltID0gcmFuZHJhbmdlKG1heGRpbSsxKQorICAgICAgICBpZiAobmRpbSA9PSAwKToKKyAgICAgICAgICAgIGlmIHZhbGlkOgorICAgICAgICAgICAgICAgIHJldHVybiBpdGVtc2l6ZSwgaXRlbXNpemUsIG5kaW0sICgpLCAoKSwgMAorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBuaXRlbXMgPSByYW5kcmFuZ2UoMSwgMTYrMSkKKyAgICAgICAgICAgICAgICBtZW1sZW4gPSBuaXRlbXMgKiBpdGVtc2l6ZQorICAgICAgICAgICAgICAgIG9mZnNldCA9IC1pdGVtc2l6ZSBpZiByYW5kcmFuZ2UoMikgPT0gMCBlbHNlIG1lbWxlbgorICAgICAgICAgICAgICAgIHJldHVybiBtZW1sZW4sIGl0ZW1zaXplLCBuZGltLCAoKSwgKCksIG9mZnNldAorCisgICAgICAgIG1pbnNoYXBlID0gMgorICAgICAgICBuID0gcmFuZHJhbmdlKDEwMCkKKyAgICAgICAgaWYgbiA+PSA5NSBhbmQgdmFsaWQ6CisgICAgICAgICAgICBtaW5zaGFwZSA9IDAKKyAgICAgICAgZWxpZiBuID49IDkwOgorICAgICAgICAgICAgbWluc2hhcGUgPSAxCisgICAgICAgIHNoYXBlID0gWzBdICogbmRpbQorCisgICAgICAgIGZvciBpIGluIHJhbmdlKG5kaW0pOgorICAgICAgICAgICAgc2hhcGVbaV0gPSByYW5kcmFuZ2UobWluc2hhcGUsIG1heHNoYXBlKzEpCisgICAgZWxzZToKKyAgICAgICAgbmRpbSA9IGxlbihzaGFwZSkKKworICAgIG1heHN0cmlkZSA9IDUKKyAgICBuID0gcmFuZHJhbmdlKDEwMCkKKyAgICB6ZXJvX3N0cmlkZSA9IFRydWUgaWYgbiA+PSA5NSBhbmQgbiAmIDEgZWxzZSBGYWxzZQorCisgICAgc3RyaWRlcyA9IFswXSAqIG5kaW0KKyAgICBzdHJpZGVzW25kaW0tMV0gPSBpdGVtc2l6ZSAqIHJhbmRyYW5nZSgtbWF4c3RyaWRlLCBtYXhzdHJpZGUrMSkKKyAgICBpZiBub3QgemVyb19zdHJpZGUgYW5kIHN0cmlkZXNbbmRpbS0xXSA9PSAwOgorICAgICAgICBzdHJpZGVzW25kaW0tMV0gPSBpdGVtc2l6ZQorCisgICAgZm9yIGkgaW4gcmFuZ2UobmRpbS0yLCAtMSwgLTEpOgorICAgICAgICBtYXhzdHJpZGUgKj0gc2hhcGVbaSsxXSBpZiBzaGFwZVtpKzFdIGVsc2UgMQorICAgICAgICBpZiB6ZXJvX3N0cmlkZToKKyAgICAgICAgICAgIHN0cmlkZXNbaV0gPSBpdGVtc2l6ZSAqIHJhbmRyYW5nZSgtbWF4c3RyaWRlLCBtYXhzdHJpZGUrMSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHN0cmlkZXNbaV0gPSAoKDEsLTEpW3JhbmRyYW5nZSgyKV0gKgorICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtc2l6ZSAqIHJhbmRyYW5nZSgxLCBtYXhzdHJpZGUrMSkpCisKKyAgICBpbWluID0gaW1heCA9IDAKKyAgICBpZiBub3QgMCBpbiBzaGFwZToKKyAgICAgICAgaW1pbiA9IHN1bShzdHJpZGVzW2pdKihzaGFwZVtqXS0xKSBmb3IgaiBpbiByYW5nZShuZGltKQorICAgICAgICAgICAgICAgICAgIGlmIHN0cmlkZXNbal0gPD0gMCkKKyAgICAgICAgaW1heCA9IHN1bShzdHJpZGVzW2pdKihzaGFwZVtqXS0xKSBmb3IgaiBpbiByYW5nZShuZGltKQorICAgICAgICAgICAgICAgICAgIGlmIHN0cmlkZXNbal0gPiAwKQorCisgICAgbml0ZW1zID0gaW1heCAtIGltaW4KKyAgICBpZiB2YWxpZDoKKyAgICAgICAgb2Zmc2V0ID0gLWltaW4gKiBpdGVtc2l6ZQorICAgICAgICBtZW1sZW4gPSBvZmZzZXQgKyAoaW1heCsxKSAqIGl0ZW1zaXplCisgICAgZWxzZToKKyAgICAgICAgbWVtbGVuID0gKC1pbWluICsgaW1heCkgKiBpdGVtc2l6ZQorICAgICAgICBvZmZzZXQgPSAtaW1pbi1pdGVtc2l6ZSBpZiByYW5kcmFuZ2UoMikgPT0gMCBlbHNlIG1lbWxlbgorICAgIHJldHVybiBtZW1sZW4sIGl0ZW1zaXplLCBuZGltLCBzaGFwZSwgc3RyaWRlcywgb2Zmc2V0CisKK2RlZiByYW5kc2xpY2VfZnJvbV9zbGljZWxlbihzbGljZWxlbiwgbGlzdGxlbik6CisgICAgIiIiQ3JlYXRlIGEgcmFuZG9tIHNsaWNlIG9mIGxlbiBzbGljZWxlbiB0aGF0IGZpdHMgaW50byBsaXN0bGVuLiIiIgorICAgIG1heHN0YXJ0ID0gbGlzdGxlbiAtIHNsaWNlbGVuCisgICAgc3RhcnQgPSByYW5kcmFuZ2UobWF4c3RhcnQrMSkKKyAgICBtYXhzdGVwID0gKGxpc3RsZW4gLSBzdGFydCkgLy8gc2xpY2VsZW4gaWYgc2xpY2VsZW4gZWxzZSAxCisgICAgc3RlcCA9IHJhbmRyYW5nZSgxLCBtYXhzdGVwKzEpCisgICAgc3RvcCA9IHN0YXJ0ICsgc2xpY2VsZW4gKiBzdGVwCisgICAgcyA9IHNsaWNlKHN0YXJ0LCBzdG9wLCBzdGVwKQorICAgIF8sIF8sIF8sIGNvbnRyb2wgPSBzbGljZV9pbmRpY2VzKHMsIGxpc3RsZW4pCisgICAgaWYgY29udHJvbCAhPSBzbGljZWxlbjoKKyAgICAgICAgcmFpc2UgUnVudGltZUVycm9yCisgICAgcmV0dXJuIHMKKworZGVmIHJhbmRzbGljZV9mcm9tX3NoYXBlKG5kaW0sIHNoYXBlKToKKyAgICAiIiJDcmVhdGUgdHdvIHNldHMgb2Ygc2xpY2VzIGZvciBhbiBhcnJheSB4IHdpdGggc2hhcGUgJ3NoYXBlJworICAgICAgIHN1Y2ggdGhhdCBzaGFwZW9mKHhbbHNsaWNlc10pID09IHNoYXBlb2YoeFtyc2xpY2VzXSkuIiIiCisgICAgbHNsaWNlcyA9IFswXSAqIG5kaW0KKyAgICByc2xpY2VzID0gWzBdICogbmRpbQorICAgIGZvciBuIGluIHJhbmdlKG5kaW0pOgorICAgICAgICBsID0gc2hhcGVbbl0KKyAgICAgICAgc2xpY2VsZW4gPSByYW5kcmFuZ2UoMSwgbCsxKSBpZiBsID4gMCBlbHNlIDAKKyAgICAgICAgbHNsaWNlc1tuXSA9IHJhbmRzbGljZV9mcm9tX3NsaWNlbGVuKHNsaWNlbGVuLCBsKQorICAgICAgICByc2xpY2VzW25dID0gcmFuZHNsaWNlX2Zyb21fc2xpY2VsZW4oc2xpY2VsZW4sIGwpCisgICAgcmV0dXJuIHR1cGxlKGxzbGljZXMpLCB0dXBsZShyc2xpY2VzKQorCitkZWYgcmFuZF9hbGlnbmVkX3NsaWNlcyhtYXhkaW09NSwgbWF4c2hhcGU9MTYpOgorICAgICIiIkNyZWF0ZSAobHNoYXBlLCByc2hhcGUsIHR1cGxlKGxzbGljZXMpLCB0dXBsZShyc2xpY2VzKSkgc3VjaCB0aGF0CisgICAgICAgc2hhcGVvZih4W2xzbGljZXNdKSA9PSBzaGFwZW9mKHlbcnNsaWNlc10pLCB3aGVyZSB4IGlzIGFuIGFycmF5CisgICAgICAgd2l0aCBzaGFwZSAnbHNoYXBlJyBhbmQgeSBpcyBhbiBhcnJheSB3aXRoIHNoYXBlICdyc2hhcGUnLiIiIgorICAgIG5kaW0gPSByYW5kcmFuZ2UoMSwgbWF4ZGltKzEpCisgICAgbWluc2hhcGUgPSAyCisgICAgbiA9IHJhbmRyYW5nZSgxMDApCisgICAgaWYgbiA+PSA5NToKKyAgICAgICAgbWluc2hhcGUgPSAwCisgICAgZWxpZiBuID49IDkwOgorICAgICAgICBtaW5zaGFwZSA9IDEKKyAgICBhbGxfcmFuZG9tID0gVHJ1ZSBpZiByYW5kcmFuZ2UoMTAwKSA+PSA4MCBlbHNlIEZhbHNlCisgICAgbHNoYXBlID0gWzBdKm5kaW07IHJzaGFwZSA9IFswXSpuZGltCisgICAgbHNsaWNlcyA9IFswXSpuZGltOyByc2xpY2VzID0gWzBdKm5kaW0KKworICAgIGZvciBuIGluIHJhbmdlKG5kaW0pOgorICAgICAgICBzbWFsbCA9IHJhbmRyYW5nZShtaW5zaGFwZSwgbWF4c2hhcGUrMSkKKyAgICAgICAgYmlnID0gcmFuZHJhbmdlKG1pbnNoYXBlLCBtYXhzaGFwZSsxKQorICAgICAgICBpZiBiaWcgPCBzbWFsbDoKKyAgICAgICAgICAgIGJpZywgc21hbGwgPSBzbWFsbCwgYmlnCisKKyAgICAgICAgIyBDcmVhdGUgYSBzbGljZSB0aGF0IGZpdHMgdGhlIHNtYWxsZXIgdmFsdWUuCisgICAgICAgIGlmIGFsbF9yYW5kb206CisgICAgICAgICAgICBzdGFydCA9IHJhbmRyYW5nZSgtc21hbGwsIHNtYWxsKzEpCisgICAgICAgICAgICBzdG9wID0gcmFuZHJhbmdlKC1zbWFsbCwgc21hbGwrMSkKKyAgICAgICAgICAgIHN0ZXAgPSAoMSwtMSlbcmFuZHJhbmdlKDIpXSAqIHJhbmRyYW5nZSgxLCBzbWFsbCsyKQorICAgICAgICAgICAgc19zbWFsbCA9IHNsaWNlKHN0YXJ0LCBzdG9wLCBzdGVwKQorICAgICAgICAgICAgXywgXywgXywgc2xpY2VsZW4gPSBzbGljZV9pbmRpY2VzKHNfc21hbGwsIHNtYWxsKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2xpY2VsZW4gPSByYW5kcmFuZ2UoMSwgc21hbGwrMSkgaWYgc21hbGwgPiAwIGVsc2UgMAorICAgICAgICAgICAgc19zbWFsbCA9IHJhbmRzbGljZV9mcm9tX3NsaWNlbGVuKHNsaWNlbGVuLCBzbWFsbCkKKworICAgICAgICAjIENyZWF0ZSBhIHNsaWNlIG9mIHRoZSBzYW1lIGxlbmd0aCBmb3IgdGhlIGJpZ2dlciB2YWx1ZS4KKyAgICAgICAgc19iaWcgPSByYW5kc2xpY2VfZnJvbV9zbGljZWxlbihzbGljZWxlbiwgYmlnKQorICAgICAgICBpZiByYW5kcmFuZ2UoMikgPT0gMDoKKyAgICAgICAgICAgIHJzaGFwZVtuXSwgbHNoYXBlW25dID0gYmlnLCBzbWFsbAorICAgICAgICAgICAgcnNsaWNlc1tuXSwgbHNsaWNlc1tuXSA9IHNfYmlnLCBzX3NtYWxsCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByc2hhcGVbbl0sIGxzaGFwZVtuXSA9IHNtYWxsLCBiaWcKKyAgICAgICAgICAgIHJzbGljZXNbbl0sIGxzbGljZXNbbl0gPSBzX3NtYWxsLCBzX2JpZworCisgICAgcmV0dXJuIGxzaGFwZSwgcnNoYXBlLCB0dXBsZShsc2xpY2VzKSwgdHVwbGUocnNsaWNlcykKKworZGVmIHJhbmRpdGVtc19mcm9tX3N0cnVjdHVyZShmbXQsIHQpOgorICAgICIiIlJldHVybiBhIGxpc3Qgb2YgcmFuZG9tIGl0ZW1zIGZvciBzdHJ1Y3R1cmUgJ3QnIHdpdGggZm9ybWF0CisgICAgICAgJ2ZtdGNoYXInLiIiIgorICAgIG1lbWxlbiwgaXRlbXNpemUsIF8sIF8sIF8sIF8gPSB0CisgICAgcmV0dXJuIGdlbl9pdGVtcyhtZW1sZW4vL2l0ZW1zaXplLCAnIycrZm10LCAnbnVtcHknKQorCitkZWYgbmRhcnJheV9mcm9tX3N0cnVjdHVyZShpdGVtcywgZm10LCB0LCBmbGFncz0wKToKKyAgICAiIiJSZXR1cm4gbmRhcnJheSBmcm9tIHRoZSB0dXBsZSByZXR1cm5lZCBieSByYW5kX3N0cnVjdHVyZSgpIiIiCisgICAgbWVtbGVuLCBpdGVtc2l6ZSwgbmRpbSwgc2hhcGUsIHN0cmlkZXMsIG9mZnNldCA9IHQKKyAgICByZXR1cm4gbmRhcnJheShpdGVtcywgc2hhcGU9c2hhcGUsIHN0cmlkZXM9c3RyaWRlcywgZm9ybWF0PWZtdCwKKyAgICAgICAgICAgICAgICAgICBvZmZzZXQ9b2Zmc2V0LCBmbGFncz1ORF9XUklUQUJMRXxmbGFncykKKworZGVmIG51bXB5X2FycmF5X2Zyb21fc3RydWN0dXJlKGl0ZW1zLCBmbXQsIHQpOgorICAgICIiIlJldHVybiBudW1weV9hcnJheSBmcm9tIHRoZSB0dXBsZSByZXR1cm5lZCBieSByYW5kX3N0cnVjdHVyZSgpIiIiCisgICAgbWVtbGVuLCBpdGVtc2l6ZSwgbmRpbSwgc2hhcGUsIHN0cmlkZXMsIG9mZnNldCA9IHQKKyAgICBidWYgPSBieXRlYXJyYXkobWVtbGVuKQorICAgIGZvciBqLCB2IGluIGVudW1lcmF0ZShpdGVtcyk6CisgICAgICAgIHN0cnVjdC5wYWNrX2ludG8oZm10LCBidWYsIGoqaXRlbXNpemUsIHYpCisgICAgcmV0dXJuIG51bXB5X2FycmF5KGJ1ZmZlcj1idWYsIHNoYXBlPXNoYXBlLCBzdHJpZGVzPXN0cmlkZXMsCisgICAgICAgICAgICAgICAgICAgICAgIGR0eXBlPWZtdCwgb2Zmc2V0PW9mZnNldCkKKworCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyMgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbW9yeXZpZXcgY2FzdHMKKyMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitkZWYgY2FzdF9pdGVtcyhleHBvcnRlciwgZm10LCBpdGVtc2l6ZSwgc2hhcGU9Tm9uZSk6CisgICAgIiIiSW50ZXJwcmV0IHRoZSByYXcgbWVtb3J5IG9mICdleHBvcnRlcicgYXMgYSBsaXN0IG9mIGl0ZW1zIHdpdGgKKyAgICAgICBzaXplICdpdGVtc2l6ZScuIElmIHNoYXBlPU5vbmUsIHRoZSBuZXcgc3RydWN0dXJlIGlzIGFzc3VtZWQgdG8KKyAgICAgICBiZSAxLUQgd2l0aCBuICogaXRlbXNpemUgPSBieXRlbGVuLiBJZiBzaGFwZSBpcyBnaXZlbiwgdGhlIHVzdWFsCisgICAgICAgY29uc3RyYWludCBmb3IgY29udGlndW91cyBhcnJheXMgcHJvZChzaGFwZSkgKiBpdGVtc2l6ZSA9IGJ5dGVsZW4KKyAgICAgICBhcHBsaWVzLiBPbiBzdWNjZXNzLCByZXR1cm4gKGl0ZW1zLCBzaGFwZSkuIElmIHRoZSBjb25zdHJhaW50cworICAgICAgIGNhbm5vdCBiZSBtZXQsIHJldHVybiAoTm9uZSwgTm9uZSkuIElmIGEgY2h1bmsgb2YgYnl0ZXMgaXMgaW50ZXJwcmV0ZWQKKyAgICAgICBhcyBOYU4gYXMgYSByZXN1bHQgb2YgZmxvYXQgY29udmVyc2lvbiwgcmV0dXJuICgnbmFuJywgTm9uZSkuIiIiCisgICAgYnl0ZWxlbiA9IGV4cG9ydGVyLm5ieXRlcworICAgIGlmIHNoYXBlOgorICAgICAgICBpZiBwcm9kKHNoYXBlKSAqIGl0ZW1zaXplICE9IGJ5dGVsZW46CisgICAgICAgICAgICByZXR1cm4gTm9uZSwgc2hhcGUKKyAgICBlbGlmIHNoYXBlID09IFtdOgorICAgICAgICBpZiBleHBvcnRlci5uZGltID09IDAgb3IgaXRlbXNpemUgIT0gYnl0ZWxlbjoKKyAgICAgICAgICAgIHJldHVybiBOb25lLCBzaGFwZQorICAgIGVsc2U6CisgICAgICAgIG4sIHIgPSBkaXZtb2QoYnl0ZWxlbiwgaXRlbXNpemUpCisgICAgICAgIHNoYXBlID0gW25dCisgICAgICAgIGlmIHIgIT0gMDoKKyAgICAgICAgICAgIHJldHVybiBOb25lLCBzaGFwZQorCisgICAgbWVtID0gZXhwb3J0ZXIudG9ieXRlcygpCisgICAgYnl0ZWl0ZW1zID0gW21lbVtpOmkraXRlbXNpemVdIGZvciBpIGluIHJhbmdlKDAsIGxlbihtZW0pLCBpdGVtc2l6ZSldCisKKyAgICBpdGVtcyA9IFtdCisgICAgZm9yIHYgaW4gYnl0ZWl0ZW1zOgorICAgICAgICBpdGVtID0gc3RydWN0LnVucGFjayhmbXQsIHYpWzBdCisgICAgICAgIGlmIGl0ZW0gIT0gaXRlbToKKyAgICAgICAgICAgIHJldHVybiAnbmFuJywgc2hhcGUKKyAgICAgICAgaXRlbXMuYXBwZW5kKGl0ZW0pCisKKyAgICByZXR1cm4gKGl0ZW1zLCBzaGFwZSkgaWYgc2hhcGUgIT0gW10gZWxzZSAoaXRlbXNbMF0sIHNoYXBlKQorCitkZWYgZ2VuY2FzdHNoYXBlcygpOgorICAgICIiIkdlbmVyYXRlIHNoYXBlcyB0byB0ZXN0IGNhc3RpbmcuIiIiCisgICAgZm9yIG4gaW4gcmFuZ2UoMzIpOgorICAgICAgICB5aWVsZCBbbl0KKyAgICBuZGltID0gcmFuZHJhbmdlKDQsIDYpCisgICAgbWluc2hhcGUgPSAxIGlmIHJhbmRyYW5nZSgxMDApID4gODAgZWxzZSAyCisgICAgeWllbGQgW3JhbmRyYW5nZShtaW5zaGFwZSwgNSkgZm9yIF8gaW4gcmFuZ2UobmRpbSldCisgICAgbmRpbSA9IHJhbmRyYW5nZSgyLCA0KQorICAgIG1pbnNoYXBlID0gMSBpZiByYW5kcmFuZ2UoMTAwKSA+IDgwIGVsc2UgMgorICAgIHlpZWxkIFtyYW5kcmFuZ2UobWluc2hhcGUsIDUpIGZvciBfIGluIHJhbmdlKG5kaW0pXQorCisKKyMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFjdHVhbCB0ZXN0cworIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK2RlZiBnZW5zbGljZXMobik6CisgICAgIiIiR2VuZXJhdGUgYWxsIHBvc3NpYmxlIHNsaWNlcyBmb3IgYSBzaW5nbGUgZGltZW5zaW9uLiIiIgorICAgIHJldHVybiBwcm9kdWN0KHJhbmdlKC1uLCBuKzEpLCByYW5nZSgtbiwgbisxKSwgcmFuZ2UoLW4sIG4rMSkpCisKK2RlZiBnZW5zbGljZXNfbmRpbShuZGltLCBzaGFwZSk6CisgICAgIiIiR2VuZXJhdGUgYWxsIHBvc3NpYmxlIHNsaWNlIHR1cGxlcyBmb3IgJ3NoYXBlJy4iIiIKKyAgICBpdGVyYWJsZXMgPSBbZ2Vuc2xpY2VzKHNoYXBlW25dKSBmb3IgbiBpbiByYW5nZShuZGltKV0KKyAgICByZXR1cm4gcHJvZHVjdCgqaXRlcmFibGVzKQorCitkZWYgcnNsaWNlKG4sIGFsbG93X2VtcHR5PUZhbHNlKToKKyAgICAiIiJHZW5lcmF0ZSByYW5kb20gc2xpY2UgZm9yIGEgc2luZ2xlIGRpbWVuc2lvbiBvZiBsZW5ndGggbi4KKyAgICAgICBJZiB6ZXJvPVRydWUsIHRoZSBzbGljZXMgbWF5IGJlIGVtcHR5LCBvdGhlcndpc2UgdGhleSB3aWxsCisgICAgICAgYmUgbm9uLWVtcHR5LiIiIgorICAgIG1pbmxlbiA9IDAgaWYgYWxsb3dfZW1wdHkgb3IgbiA9PSAwIGVsc2UgMQorICAgIHNsaWNlbGVuID0gcmFuZHJhbmdlKG1pbmxlbiwgbisxKQorICAgIHJldHVybiByYW5kc2xpY2VfZnJvbV9zbGljZWxlbihzbGljZWxlbiwgbikKKworZGVmIHJzbGljZXMobiwgYWxsb3dfZW1wdHk9RmFsc2UpOgorICAgICIiIkdlbmVyYXRlIHJhbmRvbSBzbGljZXMgZm9yIGEgc2luZ2xlIGRpbWVuc2lvbi4iIiIKKyAgICBmb3IgXyBpbiByYW5nZSg1KToKKyAgICAgICAgeWllbGQgcnNsaWNlKG4sIGFsbG93X2VtcHR5KQorCitkZWYgcnNsaWNlc19uZGltKG5kaW0sIHNoYXBlLCBpdGVyYXRpb25zPTUpOgorICAgICIiIkdlbmVyYXRlIHJhbmRvbSBzbGljZSB0dXBsZXMgZm9yICdzaGFwZScuIiIiCisgICAgIyBub24tZW1wdHkgc2xpY2VzCisgICAgZm9yIF8gaW4gcmFuZ2UoaXRlcmF0aW9ucyk6CisgICAgICAgIHlpZWxkIHR1cGxlKHJzbGljZShzaGFwZVtuXSkgZm9yIG4gaW4gcmFuZ2UobmRpbSkpCisgICAgIyBwb3NzaWJseSBlbXB0eSBzbGljZXMKKyAgICBmb3IgXyBpbiByYW5nZShpdGVyYXRpb25zKToKKyAgICAgICAgeWllbGQgdHVwbGUocnNsaWNlKHNoYXBlW25dLCBhbGxvd19lbXB0eT1UcnVlKSBmb3IgbiBpbiByYW5nZShuZGltKSkKKyAgICAjIGludmFsaWQgc2xpY2VzCisgICAgeWllbGQgdHVwbGUoc2xpY2UoMCwxLDApIGZvciBfIGluIHJhbmdlKG5kaW0pKQorCitkZWYgcnBlcm11dGF0aW9uKGl0ZXJhYmxlLCByPU5vbmUpOgorICAgIHBvb2wgPSB0dXBsZShpdGVyYWJsZSkKKyAgICByID0gbGVuKHBvb2wpIGlmIHIgaXMgTm9uZSBlbHNlIHIKKyAgICB5aWVsZCB0dXBsZShzYW1wbGUocG9vbCwgcikpCisKK2RlZiBuZGFycmF5X3ByaW50KG5kKToKKyAgICAiIiJQcmludCBuZGFycmF5IGZvciBkZWJ1Z2dpbmcuIiIiCisgICAgdHJ5OgorICAgICAgICB4ID0gbmQudG9saXN0KCkKKyAgICBleGNlcHQgKFR5cGVFcnJvciwgTm90SW1wbGVtZW50ZWRFcnJvcik6CisgICAgICAgIHggPSBuZC50b2J5dGVzKCkKKyAgICBpZiBpc2luc3RhbmNlKG5kLCBuZGFycmF5KToKKyAgICAgICAgb2Zmc2V0ID0gbmQub2Zmc2V0CisgICAgICAgIGZsYWdzID0gbmQuZmxhZ3MKKyAgICBlbHNlOgorICAgICAgICBvZmZzZXQgPSAndW5rbm93bicKKyAgICAgICAgZmxhZ3MgPSAndW5rbm93bicKKyAgICBwcmludCgibmRhcnJheSglcywgc2hhcGU9JXMsIHN0cmlkZXM9JXMsIHN1Ym9mZnNldHM9JXMsIG9mZnNldD0lcywgIgorICAgICAgICAgICJmb3JtYXQ9JyVzJywgaXRlbXNpemU9JXMsIGZsYWdzPSVzKSIgJQorICAgICAgICAgICh4LCBuZC5zaGFwZSwgbmQuc3RyaWRlcywgbmQuc3Vib2Zmc2V0cywgb2Zmc2V0LAorICAgICAgICAgICBuZC5mb3JtYXQsIG5kLml0ZW1zaXplLCBmbGFncykpCisgICAgc3lzLnN0ZG91dC5mbHVzaCgpCisKKworSVRFUkFUSU9OUyA9IDEwMAorTUFYRElNID0gNQorTUFYU0hBUEUgPSAxMAorCitpZiBTSE9SVF9URVNUOgorICAgIElURVJBVElPTlMgPSAxMAorICAgIE1BWERJTSA9IDMKKyAgICBNQVhTSEFQRSA9IDQKKyAgICBnZW5zbGljZXMgPSByc2xpY2VzCisgICAgZ2Vuc2xpY2VzX25kaW0gPSByc2xpY2VzX25kaW0KKyAgICBwZXJtdXRhdGlvbnMgPSBycGVybXV0YXRpb24KKworCitAdW5pdHRlc3Quc2tpcFVubGVzcyhzdHJ1Y3QsICdzdHJ1Y3QgbW9kdWxlIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK0B1bml0dGVzdC5za2lwVW5sZXNzKG5kYXJyYXksICduZGFycmF5IG9iamVjdCByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0JykKK2NsYXNzIFRlc3RCdWZmZXJQcm90b2NvbCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuc2l6ZW9mX3ZvaWRfcCA9IGdldF9jb25maWdfdmFyKCdTSVpFT0ZfVk9JRF9QJykKKyAgICAgICAgaWYgbm90IHNlbGYuc2l6ZW9mX3ZvaWRfcDoKKyAgICAgICAgICAgIHNlbGYuc2l6ZW9mX3ZvaWRfcCA9IDggaWYgYXJjaGl0ZWN0dXJlKClbMF0gPT0gJzY0Yml0JyBlbHNlIDQKKworICAgIGRlZiB2ZXJpZnkoc2VsZiwgcmVzdWx0LCBvYmo9LTEsCisgICAgICAgICAgICAgICAgICAgICBpdGVtc2l6ZT17MX0sIGZtdD0tMSwgcmVhZG9ubHk9ezF9LAorICAgICAgICAgICAgICAgICAgICAgbmRpbT17MX0sIHNoYXBlPS0xLCBzdHJpZGVzPS0xLAorICAgICAgICAgICAgICAgICAgICAgbHN0PS0xLCBzbGljZWQ9RmFsc2UsIGNhc3Q9RmFsc2UpOgorICAgICAgICAjIFZlcmlmeSBidWZmZXIgY29udGVudHMgYWdhaW5zdCBleHBlY3RlZCB2YWx1ZXMuIERlZmF1bHQgdmFsdWVzCisgICAgICAgICMgYXJlIGRlbGliZXJhdGVseSBpbml0aWFsaXplZCB0byBpbnZhbGlkIHR5cGVzLgorICAgICAgICBpZiBzaGFwZToKKyAgICAgICAgICAgIGV4cGVjdGVkX2xlbiA9IHByb2Qoc2hhcGUpKml0ZW1zaXplCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBub3QgZm10OiAjIGFycmF5IGhhcyBiZWVuIGltcGxpY2l0bHkgY2FzdCB0byB1bnNpZ25lZCBieXRlcworICAgICAgICAgICAgICAgIGV4cGVjdGVkX2xlbiA9IGxlbihsc3QpCisgICAgICAgICAgICBlbHNlOiAjIG5kaW0gPSAwCisgICAgICAgICAgICAgICAgZXhwZWN0ZWRfbGVuID0gaXRlbXNpemUKKworICAgICAgICAjIFJlY29uc3RydWN0IHN1Ym9mZnNldHMgZnJvbSBzdHJpZGVzLiBTdXBwb3J0IGZvciBzbGljaW5nCisgICAgICAgICMgY291bGQgYmUgYWRkZWQsIGJ1dCBpcyBjdXJyZW50bHkgb25seSBuZWVkZWQgZm9yIHRlc3RfZ2V0YnVmKCkuCisgICAgICAgIHN1Ym9mZnNldHMgPSAoKQorICAgICAgICBpZiByZXN1bHQuc3Vib2Zmc2V0czoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihuZGltLCAwKQorCisgICAgICAgICAgICBzdWJvZmZzZXQwID0gMAorICAgICAgICAgICAgZm9yIG4gaW4gcmFuZ2UoMSwgbmRpbSk6CisgICAgICAgICAgICAgICAgaWYgc2hhcGVbbl0gPT0gMDoKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICBpZiBzdHJpZGVzW25dIDw9IDA6CisgICAgICAgICAgICAgICAgICAgIHN1Ym9mZnNldDAgKz0gLXN0cmlkZXNbbl0gKiAoc2hhcGVbbl0tMSkKKworICAgICAgICAgICAgc3Vib2Zmc2V0cyA9IFtzdWJvZmZzZXQwXSArIFstMSBmb3IgdiBpbiByYW5nZShuZGltLTEpXQorCisgICAgICAgICAgICAjIE5vdCBjb3JyZWN0IGlmIHNsaWNpbmcgaGFzIG9jY3VycmVkIGluIHRoZSBmaXJzdCBkaW1lbnNpb24uCisgICAgICAgICAgICBzdHJpZGUwID0gc2VsZi5zaXplb2Zfdm9pZF9wCisgICAgICAgICAgICBpZiBzdHJpZGVzWzBdIDwgMDoKKyAgICAgICAgICAgICAgICBzdHJpZGUwID0gLXN0cmlkZTAKKyAgICAgICAgICAgIHN0cmlkZXMgPSBbc3RyaWRlMF0gKyBsaXN0KHN0cmlkZXNbMTpdKQorCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocmVzdWx0Lm9iaiwgb2JqKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdC5uYnl0ZXMsIGV4cGVjdGVkX2xlbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQuaXRlbXNpemUsIGl0ZW1zaXplKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdC5mb3JtYXQsIGZtdCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQucmVhZG9ubHksIHJlYWRvbmx5KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdC5uZGltLCBuZGltKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdC5zaGFwZSwgdHVwbGUoc2hhcGUpKQorICAgICAgICBpZiBub3QgKHNsaWNlZCBhbmQgc3Vib2Zmc2V0cyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdC5zdHJpZGVzLCB0dXBsZShzdHJpZGVzKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQuc3Vib2Zmc2V0cywgdHVwbGUoc3Vib2Zmc2V0cykpCisKKyAgICAgICAgaWYgaXNpbnN0YW5jZShyZXN1bHQsIG5kYXJyYXkpIG9yIGlzX21lbW9yeXZpZXdfZm9ybWF0KGZtdCk6CisgICAgICAgICAgICByZXAgPSByZXN1bHQudG9saXN0KCkgaWYgZm10IGVsc2UgcmVzdWx0LnRvYnl0ZXMoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXAsIGxzdCkKKworICAgICAgICBpZiBub3QgZm10OiAjIGFycmF5IGhhcyBiZWVuIGNhc3QgdG8gdW5zaWduZWQgYnl0ZXMsCisgICAgICAgICAgICByZXR1cm4gICMgdGhlIHJlbWFpbmluZyB0ZXN0cyB3b24ndCB3b3JrLgorCisgICAgICAgICMgUHlCdWZmZXJfR2V0UG9pbnRlcigpIGlzIHRoZSBkZWZpbml0aW9uIGhvdyB0byBhY2Nlc3MgYW4gaXRlbS4KKyAgICAgICAgIyBJZiBQeUJ1ZmZlcl9HZXRQb2ludGVyKGluZGljZXMpIGlzIGNvcnJlY3QgZm9yIGFsbCBwb3NzaWJsZQorICAgICAgICAjIGNvbWJpbmF0aW9ucyBvZiBpbmRpY2VzLCB0aGUgYnVmZmVyIGlzIGNvcnJlY3QuCisgICAgICAgICMKKyAgICAgICAgIyBBbHNvIHRlc3QgdG9ieXRlcygpIGFnYWluc3QgdGhlIGZsYXR0ZW5lZCAnbHN0Jywgd2l0aCBhbGwgaXRlbXMKKyAgICAgICAgIyBwYWNrZWQgdG8gYnl0ZXMuCisgICAgICAgIGlmIG5vdCBjYXN0OiAjIGNhc3RzIGNob3AgdXAgJ2xzdCcgaW4gZGlmZmVyZW50IHdheXMKKyAgICAgICAgICAgIGIgPSBieXRlYXJyYXkoKQorICAgICAgICAgICAgYnVmX2VyciA9IE5vbmUKKyAgICAgICAgICAgIGZvciBpbmQgaW4gaW5kaWNlcyhzaGFwZSk6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBpdGVtMSA9IGdldF9wb2ludGVyKHJlc3VsdCwgaW5kKQorICAgICAgICAgICAgICAgICAgICBpdGVtMiA9IGdldF9pdGVtKGxzdCwgaW5kKQorICAgICAgICAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGl0ZW0yLCB0dXBsZSk6CisgICAgICAgICAgICAgICAgICAgICAgICB4ID0gc3RydWN0LnBhY2soZm10LCAqaXRlbTIpCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICB4ID0gc3RydWN0LnBhY2soZm10LCBpdGVtMikKKyAgICAgICAgICAgICAgICAgICAgYi5leHRlbmQoeCkKKyAgICAgICAgICAgICAgICBleGNlcHQgQnVmZmVyRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIGJ1Zl9lcnIgPSBUcnVlICMgcmUtZXhwb3J0ZXIgZG9lcyBub3QgcHJvdmlkZSBmdWxsIGJ1ZmZlcgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaXRlbTEsIGl0ZW0yKQorCisgICAgICAgICAgICBpZiBub3QgYnVmX2VycjoKKyAgICAgICAgICAgICAgICAjIHRlc3QgdG9ieXRlcygpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQudG9ieXRlcygpLCBiKQorCisgICAgICAgICAgICBpZiBub3QgYnVmX2VyciBhbmQgaXNfbWVtb3J5dmlld19mb3JtYXQoZm10KToKKworICAgICAgICAgICAgICAgICMgbHN0IDo9IGV4cGVjdGVkIG11bHRpLWRpbWVuc2lvbmFsIGxvZ2ljYWwgcmVwcmVzZW50YXRpb24KKyAgICAgICAgICAgICAgICAjIGZsYXR0ZW4obHN0KSA6PSBlbGVtZW50cyBpbiBDLW9yZGVyCisgICAgICAgICAgICAgICAgZmYgPSBmbXQgaWYgZm10IGVsc2UgJ0InCisgICAgICAgICAgICAgICAgZmxhdHRlbmVkID0gZmxhdHRlbihsc3QpCisKKyAgICAgICAgICAgICAgICAjIFJ1bGVzIGZvciAnQSc6IGlmIHRoZSBhcnJheSBpcyBhbHJlYWR5IGNvbnRpZ3VvdXMsIHJldHVybgorICAgICAgICAgICAgICAgICMgdGhlIGFycmF5IHVuYWx0ZXJlZC4gT3RoZXJ3aXNlLCByZXR1cm4gYSBjb250aWd1b3VzICdDJworICAgICAgICAgICAgICAgICMgcmVwcmVzZW50YXRpb24uCisgICAgICAgICAgICAgICAgZm9yIG9yZGVyIGluIFsnQycsICdGJywgJ0EnXToKKyAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWQgPSByZXN1bHQKKyAgICAgICAgICAgICAgICAgICAgaWYgb3JkZXIgPT0gJ0YnOgorICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGlzX2NvbnRpZ3VvdXMocmVzdWx0LCAnQScpIG9yIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzX2NvbnRpZ3VvdXMocmVzdWx0LCAnQycpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgRm9yIGNvbnN0cnVjdGluZyB0aGUgbmRhcnJheSwgY29udmVydCB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGZsYXR0ZW5lZCBsb2dpY2FsIHJlcHJlc2VudGF0aW9uIHRvIEZvcnRyYW4gb3JkZXIuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnMgPSB0cmFuc3Bvc2UoZmxhdHRlbmVkLCBzaGFwZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZCA9IG5kYXJyYXkodHJhbnMsIHNoYXBlPXNoYXBlLCBmb3JtYXQ9ZmYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzPU5EX0ZPUlRSQU4pCisgICAgICAgICAgICAgICAgICAgIGVsc2U6ICMgJ0MnLCAnQScKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBpc19jb250aWd1b3VzKHJlc3VsdCwgJ0EnKSBvciBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpc19jb250aWd1b3VzKHJlc3VsdCwgJ0YnKSBhbmQgb3JkZXIgPT0gJ0MnOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgVGhlIGZsYXR0ZW5lZCBsaXN0IGlzIGFscmVhZHkgaW4gQy1vcmRlci4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZCA9IG5kYXJyYXkoZmxhdHRlbmVkLCBzaGFwZT1zaGFwZSwgZm9ybWF0PWZmKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpZyA9IGdldF9jb250aWd1b3VzKHJlc3VsdCwgUHlCVUZfUkVBRCwgb3JkZXIpCisgICAgICAgICAgICAgICAgICAgIGNvbnRpZyA9IGdldF9jb250aWd1b3VzKHJlc3VsdCwgUHlCVUZfUkVBRCwgb3JkZXIpCisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udGlnLnRvYnl0ZXMoKSwgYikKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNtcF9jb250aWcoY29udGlnLCBleHBlY3RlZCkpCisKKyAgICAgICAgaWYgaXNfbWVtb3J5dmlld19mb3JtYXQoZm10KToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBtID0gbWVtb3J5dmlldyhyZXN1bHQpCisgICAgICAgICAgICBleGNlcHQgQnVmZmVyRXJyb3I6ICMgcmUtZXhwb3J0ZXIgZG9lcyBub3QgcHJvdmlkZSBmdWxsIGluZm9ybWF0aW9uCisgICAgICAgICAgICAgICAgcmV0dXJuCisgICAgICAgICAgICBleCA9IHJlc3VsdC5vYmogaWYgaXNpbnN0YW5jZShyZXN1bHQsIG1lbW9yeXZpZXcpIGVsc2UgcmVzdWx0CisgICAgICAgICAgICBzZWxmLmFzc2VydElzKG0ub2JqLCBleCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5uYnl0ZXMsIGV4cGVjdGVkX2xlbikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5pdGVtc2l6ZSwgaXRlbXNpemUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0uZm9ybWF0LCBmbXQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0ucmVhZG9ubHksIHJlYWRvbmx5KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLm5kaW0sIG5kaW0pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0uc2hhcGUsIHR1cGxlKHNoYXBlKSkKKyAgICAgICAgICAgIGlmIG5vdCAoc2xpY2VkIGFuZCBzdWJvZmZzZXRzKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0uc3RyaWRlcywgdHVwbGUoc3RyaWRlcykpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0uc3Vib2Zmc2V0cywgdHVwbGUoc3Vib2Zmc2V0cykpCisKKyAgICAgICAgICAgIG4gPSAxIGlmIG5kaW0gPT0gMCBlbHNlIGxlbihsc3QpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtKSwgbikKKworICAgICAgICAgICAgcmVwID0gcmVzdWx0LnRvbGlzdCgpIGlmIGZtdCBlbHNlIHJlc3VsdC50b2J5dGVzKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVwLCBsc3QpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0sIHJlc3VsdCkKKworICAgIGRlZiB2ZXJpZnlfZ2V0YnVmKHNlbGYsIG9yaWdfZXgsIGV4LCByZXEsIHNsaWNlZD1GYWxzZSk6CisgICAgICAgIGRlZiBzaW1wbGVfZm10KGV4KToKKyAgICAgICAgICAgIHJldHVybiBleC5mb3JtYXQgPT0gJycgb3IgZXguZm9ybWF0ID09ICdCJworICAgICAgICBkZWYgbWF0Y2gocmVxLCBmbGFnKToKKyAgICAgICAgICAgIHJldHVybiAoKHJlcSZmbGFnKSA9PSBmbGFnKQorCisgICAgICAgIGlmICgjIHdyaXRhYmxlIHJlcXVlc3QgdG8gcmVhZC1vbmx5IGV4cG9ydGVyCisgICAgICAgICAgICAoZXgucmVhZG9ubHkgYW5kIG1hdGNoKHJlcSwgUHlCVUZfV1JJVEFCTEUpKSBvcgorICAgICAgICAgICAgIyBjYW5ub3QgbWF0Y2ggZXhwbGljaXQgY29udGlndWl0eSByZXF1ZXN0CisgICAgICAgICAgICAobWF0Y2gocmVxLCBQeUJVRl9DX0NPTlRJR1VPVVMpIGFuZCBub3QgZXguY19jb250aWd1b3VzKSBvcgorICAgICAgICAgICAgKG1hdGNoKHJlcSwgUHlCVUZfRl9DT05USUdVT1VTKSBhbmQgbm90IGV4LmZfY29udGlndW91cykgb3IKKyAgICAgICAgICAgIChtYXRjaChyZXEsIFB5QlVGX0FOWV9DT05USUdVT1VTKSBhbmQgbm90IGV4LmNvbnRpZ3VvdXMpIG9yCisgICAgICAgICAgICAjIGJ1ZmZlciBuZWVkcyBzdWJvZmZzZXRzCisgICAgICAgICAgICAobm90IG1hdGNoKHJlcSwgUHlCVUZfSU5ESVJFQ1QpIGFuZCBleC5zdWJvZmZzZXRzKSBvcgorICAgICAgICAgICAgIyBidWZmZXIgd2l0aG91dCBzdHJpZGVzIG11c3QgYmUgQy1jb250aWd1b3VzCisgICAgICAgICAgICAobm90IG1hdGNoKHJlcSwgUHlCVUZfU1RSSURFUykgYW5kIG5vdCBleC5jX2NvbnRpZ3VvdXMpIG9yCisgICAgICAgICAgICAjIFB5QlVGX1NJTVBMRXxQeUJVRl9GT1JNQVQgYW5kIFB5QlVGX1dSSVRBQkxFfFB5QlVGX0ZPUk1BVAorICAgICAgICAgICAgKG5vdCBtYXRjaChyZXEsIFB5QlVGX05EKSBhbmQgbWF0Y2gocmVxLCBQeUJVRl9GT1JNQVQpKSk6CisKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBuZGFycmF5LCBleCwgZ2V0YnVmPXJlcSkKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGlmIGlzaW5zdGFuY2UoZXgsIG5kYXJyYXkpIG9yIGlzX21lbW9yeXZpZXdfZm9ybWF0KGV4LmZvcm1hdCk6CisgICAgICAgICAgICBsc3QgPSBleC50b2xpc3QoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbmQgPSBuZGFycmF5KGV4LCBnZXRidWY9UHlCVUZfRlVMTF9STykKKyAgICAgICAgICAgIGxzdCA9IG5kLnRvbGlzdCgpCisKKyAgICAgICAgIyBUaGUgY29uc3VtZXIgbWF5IGhhdmUgcmVxdWVzdGVkIGRlZmF1bHQgdmFsdWVzIG9yIGEgTlVMTCBmb3JtYXQuCisgICAgICAgIHJvID0gMCBpZiBtYXRjaChyZXEsIFB5QlVGX1dSSVRBQkxFKSBlbHNlIGV4LnJlYWRvbmx5CisgICAgICAgIGZtdCA9IGV4LmZvcm1hdAorICAgICAgICBpdGVtc2l6ZSA9IGV4Lml0ZW1zaXplCisgICAgICAgIG5kaW0gPSBleC5uZGltCisgICAgICAgIGlmIG5vdCBtYXRjaChyZXEsIFB5QlVGX0ZPUk1BVCk6CisgICAgICAgICAgICAjIGl0ZW1zaXplIHJlZmVycyB0byB0aGUgb3JpZ2luYWwgaXRlbXNpemUgYmVmb3JlIHRoZSBjYXN0LgorICAgICAgICAgICAgIyBUaGUgZXF1YWxpdHkgcHJvZHVjdChzaGFwZSkgKiBpdGVtc2l6ZSA9IGxlbiBzdGlsbCBob2xkcy4KKyAgICAgICAgICAgICMgVGhlIGVxdWFsaXR5IGNhbGNzaXplKGZvcm1hdCkgPSBpdGVtc2l6ZSBkb2VzIF9ub3RfIGhvbGQuCisgICAgICAgICAgICBmbXQgPSAnJworICAgICAgICAgICAgbHN0ID0gb3JpZ19leC50b2J5dGVzKCkgIyBJc3N1ZSAxMjgzNAorICAgICAgICBpZiBub3QgbWF0Y2gocmVxLCBQeUJVRl9ORCk6CisgICAgICAgICAgICBuZGltID0gMQorICAgICAgICBzaGFwZSA9IG9yaWdfZXguc2hhcGUgaWYgbWF0Y2gocmVxLCBQeUJVRl9ORCkgZWxzZSAoKQorICAgICAgICBzdHJpZGVzID0gb3JpZ19leC5zdHJpZGVzIGlmIG1hdGNoKHJlcSwgUHlCVUZfU1RSSURFUykgZWxzZSAoKQorCisgICAgICAgIG5kID0gbmRhcnJheShleCwgZ2V0YnVmPXJlcSkKKyAgICAgICAgc2VsZi52ZXJpZnkobmQsIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9aXRlbXNpemUsIGZtdD1mbXQsIHJlYWRvbmx5PXJvLAorICAgICAgICAgICAgICAgICAgICBuZGltPW5kaW0sIHNoYXBlPXNoYXBlLCBzdHJpZGVzPXN0cmlkZXMsCisgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QsIHNsaWNlZD1zbGljZWQpCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X2dldGJ1ZihzZWxmKToKKyAgICAgICAgcmVxdWVzdHMgPSAoCisgICAgICAgICAgICAjIGRpc3RpbmN0IGZsYWdzCisgICAgICAgICAgICBQeUJVRl9JTkRJUkVDVCwgUHlCVUZfU1RSSURFUywgUHlCVUZfTkQsIFB5QlVGX1NJTVBMRSwKKyAgICAgICAgICAgIFB5QlVGX0NfQ09OVElHVU9VUywgUHlCVUZfRl9DT05USUdVT1VTLCBQeUJVRl9BTllfQ09OVElHVU9VUywKKyAgICAgICAgICAgICMgY29tcG91bmQgcmVxdWVzdHMKKyAgICAgICAgICAgIFB5QlVGX0ZVTEwsIFB5QlVGX0ZVTExfUk8sCisgICAgICAgICAgICBQeUJVRl9SRUNPUkRTLCBQeUJVRl9SRUNPUkRTX1JPLAorICAgICAgICAgICAgUHlCVUZfU1RSSURFRCwgUHlCVUZfU1RSSURFRF9STywKKyAgICAgICAgICAgIFB5QlVGX0NPTlRJRywgUHlCVUZfQ09OVElHX1JPLAorICAgICAgICApCisgICAgICAgICMgaXRlbXMgYW5kIGZvcm1hdAorICAgICAgICBpdGVtc19mbXQgPSAoCisgICAgICAgICAgICAoW1RydWUgaWYgeCAlIDIgZWxzZSBGYWxzZSBmb3IgeCBpbiByYW5nZSgxMildLCAnPycpLAorICAgICAgICAgICAgKFsxLDIsMyw0LDUsNiw3LDgsOSwxMCwxMSwxMl0sICdiJyksCisgICAgICAgICAgICAoWzEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyXSwgJ0InKSwKKyAgICAgICAgICAgIChbKDIqKjMxLXgpIGlmIHggJSAyIGVsc2UgKC0yKiozMSt4KSBmb3IgeCBpbiByYW5nZSgxMildLCAnbCcpCisgICAgICAgICkKKyAgICAgICAgIyBzaGFwZSwgc3RyaWRlcywgb2Zmc2V0CisgICAgICAgIHN0cnVjdHVyZSA9ICgKKyAgICAgICAgICAgIChbXSwgW10sIDApLAorICAgICAgICAgICAgKFsxMl0sIFtdLCAwKSwKKyAgICAgICAgICAgIChbMTJdLCBbLTFdLCAxMSksCisgICAgICAgICAgICAoWzZdLCBbMl0sIDApLAorICAgICAgICAgICAgKFs2XSwgWy0yXSwgMTEpLAorICAgICAgICAgICAgKFszLCA0XSwgW10sIDApLAorICAgICAgICAgICAgKFszLCA0XSwgWy00LCAtMV0sIDExKSwKKyAgICAgICAgICAgIChbMiwgMl0sIFs0LCAxXSwgNCksCisgICAgICAgICAgICAoWzIsIDJdLCBbLTQsIC0xXSwgOCkKKyAgICAgICAgKQorICAgICAgICAjIG5kYXJyYXkgY3JlYXRpb24gZmxhZ3MKKyAgICAgICAgbmRmbGFncyA9ICgKKyAgICAgICAgICAgIDAsIE5EX1dSSVRBQkxFLCBORF9GT1JUUkFOLCBORF9GT1JUUkFOfE5EX1dSSVRBQkxFLAorICAgICAgICAgICAgTkRfUElMLCBORF9QSUx8TkRfV1JJVEFCTEUKKyAgICAgICAgKQorICAgICAgICAjIGZsYWdzIHRoYXQgY2FuIGFjdHVhbGx5IGJlIHVzZWQgYXMgZmxhZ3MKKyAgICAgICAgcmVhbF9mbGFncyA9ICgwLCBQeUJVRl9XUklUQUJMRSwgUHlCVUZfRk9STUFULAorICAgICAgICAgICAgICAgICAgICAgIFB5QlVGX1dSSVRBQkxFfFB5QlVGX0ZPUk1BVCkKKworICAgICAgICBmb3IgaXRlbXMsIGZtdCBpbiBpdGVtc19mbXQ6CisgICAgICAgICAgICBpdGVtc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShmbXQpCisgICAgICAgICAgICBmb3Igc2hhcGUsIHN0cmlkZXMsIG9mZnNldCBpbiBzdHJ1Y3R1cmU6CisgICAgICAgICAgICAgICAgc3RyaWRlcyA9IFt2ICogaXRlbXNpemUgZm9yIHYgaW4gc3RyaWRlc10KKyAgICAgICAgICAgICAgICBvZmZzZXQgKj0gaXRlbXNpemUKKyAgICAgICAgICAgICAgICBmb3IgZmxhZ3MgaW4gbmRmbGFnczoKKworICAgICAgICAgICAgICAgICAgICBpZiBzdHJpZGVzIGFuZCAoZmxhZ3MmTkRfRk9SVFJBTik6CisgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICAgICBpZiBub3Qgc2hhcGUgYW5kIChmbGFncyZORF9QSUwpOgorICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgICAgICAgICBfaXRlbXMgPSBpdGVtcyBpZiBzaGFwZSBlbHNlIGl0ZW1zWzBdCisgICAgICAgICAgICAgICAgICAgIGV4MSA9IG5kYXJyYXkoX2l0ZW1zLCBmb3JtYXQ9Zm10LCBmbGFncz1mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFwZT1zaGFwZSwgc3RyaWRlcz1zdHJpZGVzLCBvZmZzZXQ9b2Zmc2V0KQorICAgICAgICAgICAgICAgICAgICBleDIgPSBleDFbOjotMl0gaWYgc2hhcGUgZWxzZSBOb25lCisKKyAgICAgICAgICAgICAgICAgICAgbTEgPSBtZW1vcnl2aWV3KGV4MSkKKyAgICAgICAgICAgICAgICAgICAgaWYgZXgyOgorICAgICAgICAgICAgICAgICAgICAgICAgbTIgPSBtZW1vcnl2aWV3KGV4MikKKyAgICAgICAgICAgICAgICAgICAgaWYgZXgxLm5kaW0gPT0gMCBvciAoZXgxLm5kaW0gPT0gMSBhbmQgc2hhcGUgYW5kIHN0cmlkZXMpOgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtMSwgZXgxKQorICAgICAgICAgICAgICAgICAgICBpZiBleDIgYW5kIGV4Mi5uZGltID09IDEgYW5kIHNoYXBlIGFuZCBzdHJpZGVzOgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtMiwgZXgyKQorCisgICAgICAgICAgICAgICAgICAgIGZvciByZXEgaW4gcmVxdWVzdHM6CisgICAgICAgICAgICAgICAgICAgICAgICBmb3IgYml0cyBpbiByZWFsX2ZsYWdzOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYudmVyaWZ5X2dldGJ1ZihleDEsIGV4MSwgcmVxfGJpdHMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi52ZXJpZnlfZ2V0YnVmKGV4MSwgbTEsIHJlcXxiaXRzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGV4MjoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi52ZXJpZnlfZ2V0YnVmKGV4MiwgZXgyLCByZXF8Yml0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNsaWNlZD1UcnVlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnZlcmlmeV9nZXRidWYoZXgyLCBtMiwgcmVxfGJpdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzbGljZWQ9VHJ1ZSkKKworICAgICAgICBpdGVtcyA9IFsxLDIsMyw0LDUsNiw3LDgsOSwxMCwxMSwxMl0KKworICAgICAgICAjIE5EX0dFVEJVRl9GQUlMCisgICAgICAgIGV4ID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzEyXSwgZmxhZ3M9TkRfR0VUQlVGX0ZBSUwpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBuZGFycmF5LCBleCkKKworICAgICAgICAjIFJlcXVlc3QgY29tcGxleCBzdHJ1Y3R1cmUgZnJvbSBhIHNpbXBsZSBleHBvcnRlci4gSW4gdGhpcworICAgICAgICAjIHBhcnRpY3VsYXIgY2FzZSB0aGUgdGVzdCBvYmplY3QgaXMgbm90IFBFUC0zMTE4IGNvbXBsaWFudC4KKyAgICAgICAgYmFzZSA9IG5kYXJyYXkoWzldLCBbMV0pCisgICAgICAgIGV4ID0gbmRhcnJheShiYXNlLCBnZXRidWY9UHlCVUZfU0lNUExFKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgbmRhcnJheSwgZXgsIGdldGJ1Zj1QeUJVRl9XUklUQUJMRSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIG5kYXJyYXksIGV4LCBnZXRidWY9UHlCVUZfTkQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBuZGFycmF5LCBleCwgZ2V0YnVmPVB5QlVGX1NUUklERVMpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBuZGFycmF5LCBleCwgZ2V0YnVmPVB5QlVGX0NfQ09OVElHVU9VUykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIG5kYXJyYXksIGV4LCBnZXRidWY9UHlCVUZfRl9DT05USUdVT1VTKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgbmRhcnJheSwgZXgsIGdldGJ1Zj1QeUJVRl9BTllfQ09OVElHVU9VUykKKyAgICAgICAgbmQgPSBuZGFycmF5KGV4LCBnZXRidWY9UHlCVUZfU0lNUExFKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV9leGNlcHRpb25zKHNlbGYpOgorICAgICAgICBuZCA9IG5kYXJyYXkoWzldLCBbMV0pCisgICAgICAgIG5kbSA9IG5kYXJyYXkoWzldLCBbMV0sIGZsYWdzPU5EX1ZBUkVYUE9SVCkKKworICAgICAgICAjIEluaXRpYWxpemF0aW9uIG9mIGEgbmV3IG5kYXJyYXkgb3IgbXV0YXRpb24gb2YgYW4gZXhpc3RpbmcgYXJyYXkuCisgICAgICAgIGZvciBjIGluIChuZGFycmF5LCBuZC5wdXNoLCBuZG0ucHVzaCk6CisgICAgICAgICAgICAjIEludmFsaWQgdHlwZXMuCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMsIHsxLDIsM30pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMsIFsxLDIsJzMnXSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYywgWzEsMiwoMyw0KV0pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMsIFsxLDIsM10sIHNoYXBlPXszfSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYywgWzEsMiwzXSwgc2hhcGU9WzNdLCBzdHJpZGVzPXsxfSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYywgWzEsMiwzXSwgc2hhcGU9WzNdLCBvZmZzZXQ9W10pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMsIFsxXSwgc2hhcGU9WzFdLCBmb3JtYXQ9e30pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMsIFsxXSwgc2hhcGU9WzFdLCBmbGFncz17fSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYywgWzFdLCBzaGFwZT1bMV0sIGdldGJ1Zj17fSkKKworICAgICAgICAgICAgIyBORF9GT1JUUkFOIGZsYWcgaXMgb25seSB2YWxpZCB3aXRob3V0IHN0cmlkZXMuCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMsIFsxXSwgc2hhcGU9WzFdLCBzdHJpZGVzPVsxXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzPU5EX0ZPUlRSQU4pCisKKyAgICAgICAgICAgICMgTkRfUElMIGZsYWcgaXMgb25seSB2YWxpZCB3aXRoIG5kaW0gPiAwLgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjLCBbMV0sIHNoYXBlPVtdLCBmbGFncz1ORF9QSUwpCisKKyAgICAgICAgICAgICMgSW52YWxpZCBpdGVtcy4KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGMsIFtdLCBzaGFwZT1bMV0pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjLCBbJ1hYWCddLCBzaGFwZT1bMV0sIGZvcm1hdD0iTCIpCisgICAgICAgICAgICAjIEludmFsaWQgY29tYmluYXRpb24gb2YgaXRlbXMgYW5kIGZvcm1hdC4KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHN0cnVjdC5lcnJvciwgYywgWzEwMDBdLCBzaGFwZT1bMV0sIGZvcm1hdD0iQiIpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjLCBbMSwoMiwzKV0sIHNoYXBlPVsyXSwgZm9ybWF0PSJCIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGMsIFsxLDIsM10sIHNoYXBlPVszXSwgZm9ybWF0PSJRTCIpCisKKyAgICAgICAgICAgICMgSW52YWxpZCBuZGltLgorICAgICAgICAgICAgbiA9IE5EX01BWF9ORElNKzEKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGMsIFsxXSpuLCBzaGFwZT1bMV0qbikKKworICAgICAgICAgICAgIyBJbnZhbGlkIHNoYXBlLgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYywgWzFdLCBzaGFwZT1bLTFdKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYywgWzEsMiwzXSwgc2hhcGU9WyczJ10pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBjLCBbMV0sIHNoYXBlPVsyKioxMjhdKQorICAgICAgICAgICAgIyBwcm9kKHNoYXBlKSAqIGl0ZW1zaXplICE9IGxlbihpdGVtcykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGMsIFsxLDIsMyw0LDVdLCBzaGFwZT1bMiwyXSwgb2Zmc2V0PTMpCisKKyAgICAgICAgICAgICMgSW52YWxpZCBzdHJpZGVzLgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYywgWzEsMiwzXSwgc2hhcGU9WzNdLCBzdHJpZGVzPVsnMSddKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgYywgWzFdLCBzaGFwZT1bMV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpZGVzPVsyKioxMjhdKQorCisgICAgICAgICAgICAjIEludmFsaWQgY29tYmluYXRpb24gb2Ygc3RyaWRlcyBhbmQgc2hhcGUuCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjLCBbMSwyXSwgc2hhcGU9WzIsMV0sIHN0cmlkZXM9WzFdKQorICAgICAgICAgICAgIyBJbnZhbGlkIGNvbWJpbmF0aW9uIG9mIHN0cmlkZXMgYW5kIGZvcm1hdC4KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGMsIFsxLDIsMyw0XSwgc2hhcGU9WzJdLCBzdHJpZGVzPVszXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD0iTCIpCisKKyAgICAgICAgICAgICMgSW52YWxpZCBvZmZzZXQuCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjLCBbMSwyLDNdLCBzaGFwZT1bM10sIG9mZnNldD00KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYywgWzEsMiwzXSwgc2hhcGU9WzFdLCBvZmZzZXQ9MywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD0iTCIpCisKKyAgICAgICAgICAgICMgSW52YWxpZCBmb3JtYXQuCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjLCBbMSwyLDNdLCBzaGFwZT1bM10sIGZvcm1hdD0iIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHN0cnVjdC5lcnJvciwgYywgWygxLDIsMyldLCBzaGFwZT1bMV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9IkAjJCIpCisKKyAgICAgICAgICAgICMgU3RyaWRpbmcgb3V0IG9mIHRoZSBtZW1vcnkgYm91bmRzLgorICAgICAgICAgICAgaXRlbXMgPSBbMSwyLDMsNCw1LDYsNyw4LDksMTBdCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjLCBpdGVtcywgc2hhcGU9WzIsM10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpZGVzPVstMywgLTJdLCBvZmZzZXQ9NSkKKworICAgICAgICAgICAgIyBDb25zdHJ1Y3RpbmcgY29uc3VtZXI6IGZvcm1hdCBhcmd1bWVudCBpbnZhbGlkLgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjLCBieXRlYXJyYXkoKSwgZm9ybWF0PSJRIikKKworICAgICAgICAgICAgIyBDb25zdHJ1Y3Rpbmcgb3JpZ2luYWwgYmFzZSBvYmplY3Q6IGdldGJ1ZiBhcmd1bWVudCBpbnZhbGlkLgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjLCBbMV0sIHNoYXBlPVsxXSwgZ2V0YnVmPVB5QlVGX0ZVTEwpCisKKyAgICAgICAgICAgICMgU2hhcGUgYXJndW1lbnQgaXMgbWFuZGF0b3J5IGZvciBvcmlnaW5hbCBiYXNlIG9iamVjdHMuCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMsIFsxXSkKKworCisgICAgICAgICMgUHlCVUZfV1JJVEFCTEUgcmVxdWVzdCB0byByZWFkLW9ubHkgcHJvdmlkZXIuCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBuZGFycmF5LCBiJzEyMycsIGdldGJ1Zj1QeUJVRl9XUklUQUJMRSkKKworICAgICAgICAjIE5EX1ZBUkVYUE9SVCBjYW4gb25seSBiZSBzcGVjaWZpZWQgZHVyaW5nIGNvbnN0cnVjdGlvbi4KKyAgICAgICAgbmQgPSBuZGFycmF5KFs5XSwgWzFdLCBmbGFncz1ORF9WQVJFWFBPUlQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG5kLnB1c2gsIFsxXSwgWzFdLCBmbGFncz1ORF9WQVJFWFBPUlQpCisKKyAgICAgICAgIyBJbnZhbGlkIG9wZXJhdGlvbiBmb3IgY29uc3VtZXJzOiBwdXNoL3BvcAorICAgICAgICBuZCA9IG5kYXJyYXkoYicxMjMnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgbmQucHVzaCwgWzFdLCBbMV0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBuZC5wb3ApCisKKyAgICAgICAgIyBORF9WQVJFWFBPUlQgbm90IHNldDogcHVzaC9wb3AgZmFpbCB3aXRoIGV4cG9ydGVkIGJ1ZmZlcnMKKyAgICAgICAgbmQgPSBuZGFycmF5KFs5XSwgWzFdKQorICAgICAgICBuZC5wdXNoKFsxXSwgWzFdKQorICAgICAgICBtID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIG5kLnB1c2gsIFsxXSwgWzFdKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgbmQucG9wKQorICAgICAgICBtLnJlbGVhc2UoKQorICAgICAgICBuZC5wb3AoKQorCisgICAgICAgICMgU2luZ2xlIHJlbWFpbmluZyBidWZmZXI6IHBvcCBmYWlscworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgbmQucG9wKQorICAgICAgICBkZWwgbmQKKworICAgICAgICAjIGdldF9wb2ludGVyKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBnZXRfcG9pbnRlciwge30sIFsxLDIsM10pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZ2V0X3BvaW50ZXIsIGInMTIzJywge30pCisKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMTAwKSksIHNoYXBlPVsxXSoxMDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGdldF9wb2ludGVyLCBuZCwgWzVdKQorCisgICAgICAgIG5kID0gbmRhcnJheShsaXN0KHJhbmdlKDEyKSksIHNoYXBlPVszLDRdKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBnZXRfcG9pbnRlciwgbmQsIFsyLDMsNF0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGdldF9wb2ludGVyLCBuZCwgWzMsM10pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGdldF9wb2ludGVyLCBuZCwgWy0zLDNdKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBnZXRfcG9pbnRlciwgbmQsIFsxPDw2NCwzXSkKKworICAgICAgICAjIHRvbGlzdCgpIG5lZWRzIGZvcm1hdAorICAgICAgICBleCA9IG5kYXJyYXkoWzEsMiwzXSwgc2hhcGU9WzNdLCBmb3JtYXQ9J0wnKQorICAgICAgICBuZCA9IG5kYXJyYXkoZXgsIGdldGJ1Zj1QeUJVRl9TSU1QTEUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG5kLnRvbGlzdCkKKworICAgICAgICAjIG1lbW9yeXZpZXdfZnJvbV9idWZmZXIoKQorICAgICAgICBleDEgPSBuZGFycmF5KFsxLDIsM10sIHNoYXBlPVszXSwgZm9ybWF0PSdMJykKKyAgICAgICAgZXgyID0gbmRhcnJheShleDEpCisgICAgICAgIG5kID0gbmRhcnJheShleDIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbmQubWVtb3J5dmlld19mcm9tX2J1ZmZlcikKKworICAgICAgICBuZCA9IG5kYXJyYXkoWygxLCkqMjAwXSwgc2hhcGU9WzFdLCBmb3JtYXQ9J0wnKjIwMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBuZC5tZW1vcnl2aWV3X2Zyb21fYnVmZmVyKQorCisgICAgICAgIG4gPSBORF9NQVhfTkRJTQorICAgICAgICBuZCA9IG5kYXJyYXkobGlzdChyYW5nZShuKSksIHNoYXBlPVsxXSpuKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBuZC5tZW1vcnl2aWV3X2Zyb21fYnVmZmVyKQorCisgICAgICAgICMgZ2V0X2NvbnRpZ3VvdXMoKQorICAgICAgICBuZCA9IG5kYXJyYXkoWzFdLCBzaGFwZT1bMV0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZ2V0X2NvbnRpZ3VvdXMsIDEsIDIsIDMsIDQsIDUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZ2V0X2NvbnRpZ3VvdXMsIG5kLCAieHl6IiwgJ0MnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBnZXRfY29udGlndW91cywgbmQsIDIqKjY0LCAnQycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZ2V0X2NvbnRpZ3VvdXMsIG5kLCBQeUJVRl9SRUFELCA5NjEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVFbmNvZGVFcnJvciwgZ2V0X2NvbnRpZ3VvdXMsIG5kLCBQeUJVRl9SRUFELAorICAgICAgICAgICAgICAgICAgICAgICAgICAnXHUyMDA3JykKKworICAgICAgICAjIGNtcF9jb250aWcoKQorICAgICAgICBuZCA9IG5kYXJyYXkoWzFdLCBzaGFwZT1bMV0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgY21wX2NvbnRpZywgMSwgMiwgMywgNCwgNSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjbXBfY29udGlnLCB7fSwgbmQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgY21wX2NvbnRpZywgbmQsIHt9KQorCisgICAgICAgICMgaXNfY29udGlndW91cygpCisgICAgICAgIG5kID0gbmRhcnJheShbMV0sIHNoYXBlPVsxXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBpc19jb250aWd1b3VzLCAxLCAyLCAzLCA0LCA1KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGlzX2NvbnRpZ3VvdXMsIHt9LCAnQScpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgaXNfY29udGlndW91cywgbmQsIDIwMSkKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfbGlua2VkX2xpc3Qoc2VsZik6CisgICAgICAgIGZvciBwZXJtIGluIHBlcm11dGF0aW9ucyhyYW5nZSg1KSk6CisgICAgICAgICAgICBtID0gWzBdKjUKKyAgICAgICAgICAgIG5kID0gbmRhcnJheShbMSwyLDNdLCBzaGFwZT1bM10sIGZsYWdzPU5EX1ZBUkVYUE9SVCkKKyAgICAgICAgICAgIG1bMF0gPSBtZW1vcnl2aWV3KG5kKQorCisgICAgICAgICAgICBmb3IgaSBpbiByYW5nZSgxLCA1KToKKyAgICAgICAgICAgICAgICBuZC5wdXNoKFsxLDIsM10sIHNoYXBlPVszXSkKKyAgICAgICAgICAgICAgICBtW2ldID0gbWVtb3J5dmlldyhuZCkKKworICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoNSk6CisgICAgICAgICAgICAgICAgbVtwZXJtW2ldXS5yZWxlYXNlKCkKKworICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIG5kLnBvcCkKKyAgICAgICAgICAgIGRlbCBuZAorCisgICAgZGVmIHRlc3RfbmRhcnJheV9mb3JtYXRfc2NhbGFyKHNlbGYpOgorICAgICAgICAjIG5kaW0gPSAwOiBzY2FsYXIKKyAgICAgICAgZm9yIGZtdCwgc2NhbGFyLCBfIGluIGl0ZXJfZm9ybWF0KDApOgorICAgICAgICAgICAgaXRlbXNpemUgPSBzdHJ1Y3QuY2FsY3NpemUoZm10KQorICAgICAgICAgICAgbmQgPSBuZGFycmF5KHNjYWxhciwgc2hhcGU9KCksIGZvcm1hdD1mbXQpCisgICAgICAgICAgICBzZWxmLnZlcmlmeShuZCwgb2JqPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICBpdGVtc2l6ZT1pdGVtc2l6ZSwgZm10PWZtdCwgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09MCwgc2hhcGU9KCksIHN0cmlkZXM9KCksCisgICAgICAgICAgICAgICAgICAgICAgICBsc3Q9c2NhbGFyKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV9mb3JtYXRfc2hhcGUoc2VsZik6CisgICAgICAgICMgbmRpbSA9IDEsIHNoYXBlID0gW25dCisgICAgICAgIG5pdGVtcyA9ICByYW5kcmFuZ2UoMSwgMTApCisgICAgICAgIGZvciBmbXQsIGl0ZW1zLCBfIGluIGl0ZXJfZm9ybWF0KG5pdGVtcyk6CisgICAgICAgICAgICBpdGVtc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShmbXQpCisgICAgICAgICAgICBmb3IgZmxhZ3MgaW4gKDAsIE5EX1BJTCk6CisgICAgICAgICAgICAgICAgbmQgPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bbml0ZW1zXSwgZm9ybWF0PWZtdCwgZmxhZ3M9ZmxhZ3MpCisgICAgICAgICAgICAgICAgc2VsZi52ZXJpZnkobmQsIG9iaj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPWl0ZW1zaXplLCBmbXQ9Zm10LCByZWFkb25seT0xLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09MSwgc2hhcGU9KG5pdGVtcywpLCBzdHJpZGVzPShpdGVtc2l6ZSwpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxzdD1pdGVtcykKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfZm9ybWF0X3N0cmlkZXMoc2VsZik6CisgICAgICAgICMgbmRpbSA9IDEsIHN0cmlkZXMKKyAgICAgICAgbml0ZW1zID0gcmFuZHJhbmdlKDEsIDMwKQorICAgICAgICBmb3IgZm10LCBpdGVtcywgXyBpbiBpdGVyX2Zvcm1hdChuaXRlbXMpOgorICAgICAgICAgICAgaXRlbXNpemUgPSBzdHJ1Y3QuY2FsY3NpemUoZm10KQorICAgICAgICAgICAgZm9yIHN0ZXAgaW4gcmFuZ2UoLTUsIDUpOgorICAgICAgICAgICAgICAgIGlmIHN0ZXAgPT0gMDoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgICAgIHNoYXBlID0gW2xlbihpdGVtc1s6OnN0ZXBdKV0KKyAgICAgICAgICAgICAgICBzdHJpZGVzID0gW3N0ZXAqaXRlbXNpemVdCisgICAgICAgICAgICAgICAgb2Zmc2V0ID0gaXRlbXNpemUqKG5pdGVtcy0xKSBpZiBzdGVwIDwgMCBlbHNlIDAKKworICAgICAgICAgICAgICAgIGZvciBmbGFncyBpbiAoMCwgTkRfUElMKToKKyAgICAgICAgICAgICAgICAgICAgbmQgPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1zaGFwZSwgc3RyaWRlcz1zdHJpZGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PWZtdCwgb2Zmc2V0PW9mZnNldCwgZmxhZ3M9ZmxhZ3MpCisgICAgICAgICAgICAgICAgICAgIHNlbGYudmVyaWZ5KG5kLCBvYmo9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9aXRlbXNpemUsIGZtdD1mbXQsIHJlYWRvbmx5PTEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09MSwgc2hhcGU9c2hhcGUsIHN0cmlkZXM9c3RyaWRlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHN0PWl0ZW1zWzo6c3RlcF0pCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X2ZvcnRyYW4oc2VsZik6CisgICAgICAgIGl0ZW1zID0gWzEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyXQorICAgICAgICBleCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPSgzLCA0KSwgc3RyaWRlcz0oMSwgMykpCisgICAgICAgIG5kID0gbmRhcnJheShleCwgZ2V0YnVmPVB5QlVGX0ZfQ09OVElHVU9VU3xQeUJVRl9GT1JNQVQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQudG9saXN0KCksIGZhcnJheShpdGVtcywgKDMsIDQpKSkKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfbXVsdGlkaW0oc2VsZik6CisgICAgICAgIGZvciBuZGltIGluIHJhbmdlKDUpOgorICAgICAgICAgICAgc2hhcGVfdCA9IFtyYW5kcmFuZ2UoMiwgMTApIGZvciBfIGluIHJhbmdlKG5kaW0pXQorICAgICAgICAgICAgbml0ZW1zID0gcHJvZChzaGFwZV90KQorICAgICAgICAgICAgZm9yIHNoYXBlIGluIHBlcm11dGF0aW9ucyhzaGFwZV90KToKKworICAgICAgICAgICAgICAgIGZtdCwgaXRlbXMsIF8gPSByYW5kaXRlbXMobml0ZW1zKQorICAgICAgICAgICAgICAgIGl0ZW1zaXplID0gc3RydWN0LmNhbGNzaXplKGZtdCkKKworICAgICAgICAgICAgICAgIGZvciBmbGFncyBpbiAoMCwgTkRfUElMKToKKyAgICAgICAgICAgICAgICAgICAgaWYgbmRpbSA9PSAwIGFuZCBmbGFncyA9PSBORF9QSUw6CisgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICAgICAgICAgICMgQyBhcnJheQorICAgICAgICAgICAgICAgICAgICBuZCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPXNoYXBlLCBmb3JtYXQ9Zm10LCBmbGFncz1mbGFncykKKworICAgICAgICAgICAgICAgICAgICBzdHJpZGVzID0gc3RyaWRlc19mcm9tX3NoYXBlKG5kaW0sIHNoYXBlLCBpdGVtc2l6ZSwgJ0MnKQorICAgICAgICAgICAgICAgICAgICBsc3QgPSBjYXJyYXkoaXRlbXMsIHNoYXBlKQorICAgICAgICAgICAgICAgICAgICBzZWxmLnZlcmlmeShuZCwgb2JqPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPWl0ZW1zaXplLCBmbXQ9Zm10LCByZWFkb25seT0xLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZGltPW5kaW0sIHNoYXBlPXNoYXBlLCBzdHJpZGVzPXN0cmlkZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QpCisKKyAgICAgICAgICAgICAgICAgICAgaWYgaXNfbWVtb3J5dmlld19mb3JtYXQoZm10KToKKyAgICAgICAgICAgICAgICAgICAgICAgICMgbWVtb3J5dmlldzogcmVjb25zdHJ1Y3Qgc3RyaWRlcworICAgICAgICAgICAgICAgICAgICAgICAgZXggPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1zaGFwZSwgZm9ybWF0PWZtdCkKKyAgICAgICAgICAgICAgICAgICAgICAgIG5kID0gbmRhcnJheShleCwgZ2V0YnVmPVB5QlVGX0NPTlRJR19ST3xQeUJVRl9GT1JNQVQpCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUobmQuc3RyaWRlcyA9PSAoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIG12ID0gbmQubWVtb3J5dmlld19mcm9tX2J1ZmZlcigpCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnZlcmlmeShtdiwgb2JqPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtc2l6ZT1pdGVtc2l6ZSwgZm10PWZtdCwgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09bmRpbSwgc2hhcGU9c2hhcGUsIHN0cmlkZXM9c3RyaWRlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QpCisKKyAgICAgICAgICAgICAgICAgICAgIyBGb3J0cmFuIGFycmF5CisgICAgICAgICAgICAgICAgICAgIG5kID0gbmRhcnJheShpdGVtcywgc2hhcGU9c2hhcGUsIGZvcm1hdD1mbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncz1mbGFnc3xORF9GT1JUUkFOKQorCisgICAgICAgICAgICAgICAgICAgIHN0cmlkZXMgPSBzdHJpZGVzX2Zyb21fc2hhcGUobmRpbSwgc2hhcGUsIGl0ZW1zaXplLCAnRicpCisgICAgICAgICAgICAgICAgICAgIGxzdCA9IGZhcnJheShpdGVtcywgc2hhcGUpCisgICAgICAgICAgICAgICAgICAgIHNlbGYudmVyaWZ5KG5kLCBvYmo9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9aXRlbXNpemUsIGZtdD1mbXQsIHJlYWRvbmx5PTEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09bmRpbSwgc2hhcGU9c2hhcGUsIHN0cmlkZXM9c3RyaWRlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHN0PWxzdCkKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfaW5kZXhfaW52YWxpZChzZWxmKToKKyAgICAgICAgIyBub3Qgd3JpdGFibGUKKyAgICAgICAgbmQgPSBuZGFycmF5KFsxXSwgc2hhcGU9WzFdKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG5kLl9fc2V0aXRlbV9fLCAxLCA4KQorICAgICAgICBtdiA9IG1lbW9yeXZpZXcobmQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXYsIG5kKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG12Ll9fc2V0aXRlbV9fLCAxLCA4KQorCisgICAgICAgICMgY2Fubm90IGJlIGRlbGV0ZWQKKyAgICAgICAgbmQgPSBuZGFycmF5KFsxXSwgc2hhcGU9WzFdLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBuZC5fX2RlbGl0ZW1fXywgMSkKKyAgICAgICAgbXYgPSBtZW1vcnl2aWV3KG5kKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG12LCBuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtdi5fX2RlbGl0ZW1fXywgMSkKKworICAgICAgICAjIG92ZXJmbG93CisgICAgICAgIG5kID0gbmRhcnJheShbMV0sIHNoYXBlPVsxXSwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIG5kLl9fZ2V0aXRlbV9fLCAxPDw2NCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgbmQuX19zZXRpdGVtX18sIDE8PDY0LCA4KQorICAgICAgICBtdiA9IG1lbW9yeXZpZXcobmQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXYsIG5kKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yLCBtdi5fX2dldGl0ZW1fXywgMTw8NjQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIG12Ll9fc2V0aXRlbV9fLCAxPDw2NCwgOCkKKworICAgICAgICAjIGZvcm1hdAorICAgICAgICBpdGVtcyA9IFsxLDIsMyw0LDUsNiw3LDhdCisgICAgICAgIG5kID0gbmRhcnJheShpdGVtcywgc2hhcGU9W2xlbihpdGVtcyldLCBmb3JtYXQ9IkIiLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc3RydWN0LmVycm9yLCBuZC5fX3NldGl0ZW1fXywgMiwgMzAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBuZC5fX3NldGl0ZW1fXywgMSwgKDEwMCwgMjAwKSkKKyAgICAgICAgbXYgPSBtZW1vcnl2aWV3KG5kKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG12LCBuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbXYuX19zZXRpdGVtX18sIDIsIDMwMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtdi5fX3NldGl0ZW1fXywgMSwgKDEwMCwgMjAwKSkKKworICAgICAgICBpdGVtcyA9IFsoMSwyKSwgKDMsNCksICg1LDYpXQorICAgICAgICBuZCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVtsZW4oaXRlbXMpXSwgZm9ybWF0PSJMUSIsIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBuZC5fX3NldGl0ZW1fXywgMiwgMzAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzdHJ1Y3QuZXJyb3IsIG5kLl9fc2V0aXRlbV9fLCAxLCAoYidceDAwMScsIDIwMCkpCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X2luZGV4X3NjYWxhcihzZWxmKToKKyAgICAgICAgIyBzY2FsYXIKKyAgICAgICAgbmQgPSBuZGFycmF5KDEsIHNoYXBlPSgpLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgbXYgPSBtZW1vcnl2aWV3KG5kKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG12LCBuZCkKKworICAgICAgICB4ID0gbmRbKCldOyAgc2VsZi5hc3NlcnRFcXVhbCh4LCAxKQorICAgICAgICB4ID0gbmRbLi4uXTsgc2VsZi5hc3NlcnRFcXVhbCh4LnRvbGlzdCgpLCBuZC50b2xpc3QoKSkKKworICAgICAgICB4ID0gbXZbKCldOyAgc2VsZi5hc3NlcnRFcXVhbCh4LCAxKQorICAgICAgICB4ID0gbXZbLi4uXTsgc2VsZi5hc3NlcnRFcXVhbCh4LnRvbGlzdCgpLCBuZC50b2xpc3QoKSkKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG5kLl9fZ2V0aXRlbV9fLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG12Ll9fZ2V0aXRlbV9fLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG5kLl9fc2V0aXRlbV9fLCAwLCA4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG12Ll9fc2V0aXRlbV9fLCAwLCA4KQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQudG9saXN0KCksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXYudG9saXN0KCksIDEpCisKKyAgICAgICAgbmRbKCldID0gOTsgc2VsZi5hc3NlcnRFcXVhbChuZC50b2xpc3QoKSwgOSkKKyAgICAgICAgbXZbKCldID0gOTsgc2VsZi5hc3NlcnRFcXVhbChtdi50b2xpc3QoKSwgOSkKKworICAgICAgICBuZFsuLi5dID0gNTsgc2VsZi5hc3NlcnRFcXVhbChuZC50b2xpc3QoKSwgNSkKKyAgICAgICAgbXZbLi4uXSA9IDU7IHNlbGYuYXNzZXJ0RXF1YWwobXYudG9saXN0KCksIDUpCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X2luZGV4X251bGxfc3RyaWRlcyhzZWxmKToKKyAgICAgICAgZXggPSBuZGFycmF5KGxpc3QocmFuZ2UoMio0KSksIHNoYXBlPVsyLCA0XSwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIG5kID0gbmRhcnJheShleCwgZ2V0YnVmPVB5QlVGX0NPTlRJRykKKworICAgICAgICAjIFN1Yi12aWV3cyBhcmUgb25seSBwb3NzaWJsZSBmb3IgZnVsbCBleHBvcnRlcnMuCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBuZC5fX2dldGl0ZW1fXywgMSkKKyAgICAgICAgIyBTYW1lIGZvciBzbGljZXMuCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBuZC5fX2dldGl0ZW1fXywgc2xpY2UoMyw1LDEpKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV9pbmRleF9nZXRpdGVtX3NpbmdsZShzZWxmKToKKyAgICAgICAgIyBnZXRpdGVtCisgICAgICAgIGZvciBmbXQsIGl0ZW1zLCBfIGluIGl0ZXJfZm9ybWF0KDUpOgorICAgICAgICAgICAgbmQgPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bNV0sIGZvcm1hdD1mbXQpCisgICAgICAgICAgICBmb3IgaSBpbiByYW5nZSgtNSwgNSk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZFtpXSwgaXRlbXNbaV0pCisKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIG5kLl9fZ2V0aXRlbV9fLCAtNikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIG5kLl9fZ2V0aXRlbV9fLCA1KQorCisgICAgICAgICAgICBpZiBpc19tZW1vcnl2aWV3X2Zvcm1hdChmbXQpOgorICAgICAgICAgICAgICAgIG12ID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG12LCBuZCkKKyAgICAgICAgICAgICAgICBmb3IgaSBpbiByYW5nZSgtNSwgNSk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXZbaV0sIGl0ZW1zW2ldKQorCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW5kZXhFcnJvciwgbXYuX19nZXRpdGVtX18sIC02KQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIG12Ll9fZ2V0aXRlbV9fLCA1KQorCisgICAgICAgICMgZ2V0aXRlbSB3aXRoIG51bGwgc3RyaWRlcworICAgICAgICBmb3IgZm10LCBpdGVtcywgXyBpbiBpdGVyX2Zvcm1hdCg1KToKKyAgICAgICAgICAgIGV4ID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzVdLCBmbGFncz1ORF9XUklUQUJMRSwgZm9ybWF0PWZtdCkKKyAgICAgICAgICAgIG5kID0gbmRhcnJheShleCwgZ2V0YnVmPVB5QlVGX0NPTlRJR3xQeUJVRl9GT1JNQVQpCisKKyAgICAgICAgICAgIGZvciBpIGluIHJhbmdlKC01LCA1KToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kW2ldLCBpdGVtc1tpXSkKKworICAgICAgICAgICAgaWYgaXNfbWVtb3J5dmlld19mb3JtYXQoZm10KToKKyAgICAgICAgICAgICAgICBtdiA9IG5kLm1lbW9yeXZpZXdfZnJvbV9idWZmZXIoKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMobXYuX19lcV9fKG5kKSwgTm90SW1wbGVtZW50ZWQpCisgICAgICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoLTUsIDUpOgorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG12W2ldLCBpdGVtc1tpXSkKKworICAgICAgICAjIGdldGl0ZW0gd2l0aCBudWxsIGZvcm1hdAorICAgICAgICBpdGVtcyA9IFsxLDIsMyw0LDVdCisgICAgICAgIGV4ID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzVdKQorICAgICAgICBuZCA9IG5kYXJyYXkoZXgsIGdldGJ1Zj1QeUJVRl9DT05USUdfUk8pCisgICAgICAgIGZvciBpIGluIHJhbmdlKC01LCA1KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmRbaV0sIGl0ZW1zW2ldKQorCisgICAgICAgICMgZ2V0aXRlbSB3aXRoIG51bGwgc2hhcGUvc3RyaWRlcy9mb3JtYXQKKyAgICAgICAgaXRlbXMgPSBbMSwyLDMsNCw1XQorICAgICAgICBleCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVs1XSkKKyAgICAgICAgbmQgPSBuZGFycmF5KGV4LCBnZXRidWY9UHlCVUZfU0lNUExFKQorCisgICAgICAgIGZvciBpIGluIHJhbmdlKC01LCA1KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmRbaV0sIGl0ZW1zW2ldKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV9pbmRleF9zZXRpdGVtX3NpbmdsZShzZWxmKToKKyAgICAgICAgIyBhc3NpZ24gc2luZ2xlIHZhbHVlCisgICAgICAgIGZvciBmbXQsIGl0ZW1zLCBzaW5nbGVfaXRlbSBpbiBpdGVyX2Zvcm1hdCg1KToKKyAgICAgICAgICAgIG5kID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzVdLCBmb3JtYXQ9Zm10LCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgICAgIGZvciBpIGluIHJhbmdlKDUpOgorICAgICAgICAgICAgICAgIGl0ZW1zW2ldID0gc2luZ2xlX2l0ZW0KKyAgICAgICAgICAgICAgICBuZFtpXSA9IHNpbmdsZV9pdGVtCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kLnRvbGlzdCgpLCBpdGVtcykKKworICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW5kZXhFcnJvciwgbmQuX19zZXRpdGVtX18sIC02LCBzaW5nbGVfaXRlbSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIG5kLl9fc2V0aXRlbV9fLCA1LCBzaW5nbGVfaXRlbSkKKworICAgICAgICAgICAgaWYgbm90IGlzX21lbW9yeXZpZXdfZm9ybWF0KGZtdCk6CisgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgbmQgPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bNV0sIGZvcm1hdD1mbXQsIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICAgICAgbXYgPSBtZW1vcnl2aWV3KG5kKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtdiwgbmQpCisgICAgICAgICAgICBmb3IgaSBpbiByYW5nZSg1KToKKyAgICAgICAgICAgICAgICBpdGVtc1tpXSA9IHNpbmdsZV9pdGVtCisgICAgICAgICAgICAgICAgbXZbaV0gPSBzaW5nbGVfaXRlbQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtdi50b2xpc3QoKSwgaXRlbXMpCisKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIG12Ll9fc2V0aXRlbV9fLCAtNiwgc2luZ2xlX2l0ZW0pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yLCBtdi5fX3NldGl0ZW1fXywgNSwgc2luZ2xlX2l0ZW0pCisKKworICAgICAgICAjIGFzc2lnbiBzaW5nbGUgdmFsdWU6IGxvYmplY3QgPSByb2JqZWN0CisgICAgICAgIGZvciBmbXQsIGl0ZW1zLCBzaW5nbGVfaXRlbSBpbiBpdGVyX2Zvcm1hdCg1KToKKyAgICAgICAgICAgIG5kID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzVdLCBmb3JtYXQ9Zm10LCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgICAgIGZvciBpIGluIHJhbmdlKC01LCA0KToKKyAgICAgICAgICAgICAgICBpdGVtc1tpXSA9IGl0ZW1zW2krMV0KKyAgICAgICAgICAgICAgICBuZFtpXSA9IG5kW2krMV0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQudG9saXN0KCksIGl0ZW1zKQorCisgICAgICAgICAgICBpZiBub3QgaXNfbWVtb3J5dmlld19mb3JtYXQoZm10KToKKyAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICBuZCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVs1XSwgZm9ybWF0PWZtdCwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgICAgICBtdiA9IG1lbW9yeXZpZXcobmQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG12LCBuZCkKKyAgICAgICAgICAgIGZvciBpIGluIHJhbmdlKC01LCA0KToKKyAgICAgICAgICAgICAgICBpdGVtc1tpXSA9IGl0ZW1zW2krMV0KKyAgICAgICAgICAgICAgICBtdltpXSA9IG12W2krMV0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXYudG9saXN0KCksIGl0ZW1zKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV9pbmRleF9nZXRpdGVtX211bHRpZGltKHNlbGYpOgorICAgICAgICBzaGFwZV90ID0gKDIsIDMsIDUpCisgICAgICAgIG5pdGVtcyA9IHByb2Qoc2hhcGVfdCkKKyAgICAgICAgZm9yIHNoYXBlIGluIHBlcm11dGF0aW9ucyhzaGFwZV90KToKKworICAgICAgICAgICAgZm10LCBpdGVtcywgXyA9IHJhbmRpdGVtcyhuaXRlbXMpCisKKyAgICAgICAgICAgIGZvciBmbGFncyBpbiAoMCwgTkRfUElMKToKKyAgICAgICAgICAgICAgICAjIEMgYXJyYXkKKyAgICAgICAgICAgICAgICBuZCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPXNoYXBlLCBmb3JtYXQ9Zm10LCBmbGFncz1mbGFncykKKyAgICAgICAgICAgICAgICBsc3QgPSBjYXJyYXkoaXRlbXMsIHNoYXBlKQorCisgICAgICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoLXNoYXBlWzBdLCBzaGFwZVswXSk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobHN0W2ldLCBuZFtpXS50b2xpc3QoKSkKKyAgICAgICAgICAgICAgICAgICAgZm9yIGogaW4gcmFuZ2UoLXNoYXBlWzFdLCBzaGFwZVsxXSk6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxzdFtpXVtqXSwgbmRbaV1bal0udG9saXN0KCkpCisgICAgICAgICAgICAgICAgICAgICAgICBmb3IgayBpbiByYW5nZSgtc2hhcGVbMl0sIHNoYXBlWzJdKToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxzdFtpXVtqXVtrXSwgbmRbaV1bal1ba10pCisKKyAgICAgICAgICAgICAgICAjIEZvcnRyYW4gYXJyYXkKKyAgICAgICAgICAgICAgICBuZCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPXNoYXBlLCBmb3JtYXQ9Zm10LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncz1mbGFnc3xORF9GT1JUUkFOKQorICAgICAgICAgICAgICAgIGxzdCA9IGZhcnJheShpdGVtcywgc2hhcGUpCisKKyAgICAgICAgICAgICAgICBmb3IgaSBpbiByYW5nZSgtc2hhcGVbMF0sIHNoYXBlWzBdKToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsc3RbaV0sIG5kW2ldLnRvbGlzdCgpKQorICAgICAgICAgICAgICAgICAgICBmb3IgaiBpbiByYW5nZSgtc2hhcGVbMV0sIHNoYXBlWzFdKToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobHN0W2ldW2pdLCBuZFtpXVtqXS50b2xpc3QoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciBrIGluIHJhbmdlKHNoYXBlWzJdLCBzaGFwZVsyXSk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsc3RbaV1bal1ba10sIG5kW2ldW2pdW2tdKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV9zZXF1ZW5jZShzZWxmKToKKyAgICAgICAgbmQgPSBuZGFycmF5KDEsIHNoYXBlPSgpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGV2YWwsICIxIGluIG5kIiwgbG9jYWxzKCkpCisgICAgICAgIG12ID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtdiwgbmQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZXZhbCwgIjEgaW4gbXYiLCBsb2NhbHMoKSkKKworICAgICAgICBmb3IgZm10LCBpdGVtcywgXyBpbiBpdGVyX2Zvcm1hdCg1KToKKyAgICAgICAgICAgIG5kID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzVdLCBmb3JtYXQ9Zm10KQorICAgICAgICAgICAgZm9yIGksIHYgaW4gZW51bWVyYXRlKG5kKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIGl0ZW1zW2ldKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh2IGluIG5kKQorCisgICAgICAgICAgICBpZiBpc19tZW1vcnl2aWV3X2Zvcm1hdChmbXQpOgorICAgICAgICAgICAgICAgIG12ID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgICAgICAgICBmb3IgaSwgdiBpbiBlbnVtZXJhdGUobXYpOgorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIGl0ZW1zW2ldKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUodiBpbiBtdikKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfc2xpY2VfaW52YWxpZChzZWxmKToKKyAgICAgICAgaXRlbXMgPSBbMSwyLDMsNCw1LDYsNyw4XQorCisgICAgICAgICMgcnZhbHVlIGlzIG5vdCBhbiBleHBvcnRlcgorICAgICAgICB4bCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVs4XSwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIG1sID0gbWVtb3J5dmlldyh4bCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCB4bC5fX3NldGl0ZW1fXywgc2xpY2UoMCw4LDEpLCBpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtbC5fX3NldGl0ZW1fXywgc2xpY2UoMCw4LDEpLCBpdGVtcykKKworICAgICAgICAjIHJ2YWx1ZSBpcyBub3QgYSBmdWxsIGV4cG9ydGVyCisgICAgICAgIHhsID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzhdLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgZXggPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bOF0sIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICB4ciA9IG5kYXJyYXkoZXgsIGdldGJ1Zj1QeUJVRl9ORCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIHhsLl9fc2V0aXRlbV9fLCBzbGljZSgwLDgsMSksIHhyKQorCisgICAgICAgICMgemVybyBzdGVwCisgICAgICAgIG5kID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzhdLCBmb3JtYXQ9IkwiLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgbXYgPSBtZW1vcnl2aWV3KG5kKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBuZC5fX2dldGl0ZW1fXywgc2xpY2UoMCwxLDApKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtdi5fX2dldGl0ZW1fXywgc2xpY2UoMCwxLDApKQorCisgICAgICAgIG5kID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzIsNF0sIGZvcm1hdD0iTCIsIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICBtdiA9IG1lbW9yeXZpZXcobmQpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbmQuX19nZXRpdGVtX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgIChzbGljZSgwLDEsMSksIHNsaWNlKDAsMSwwKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG5kLl9fZ2V0aXRlbV9fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAoc2xpY2UoMCwxLDApLCBzbGljZSgwLDEsMSkpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG5kLl9fZ2V0aXRlbV9fLCAiQCUkIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBuZC5fX2dldGl0ZW1fXywgKCJAJSQiLCBzbGljZSgwLDEsMSkpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG5kLl9fZ2V0aXRlbV9fLCAoc2xpY2UoMCwxLDEpLCB7fSkpCisKKyAgICAgICAgIyBtZW1vcnl2aWV3OiBub3QgaW1wbGVtZW50ZWQKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTm90SW1wbGVtZW50ZWRFcnJvciwgbXYuX19nZXRpdGVtX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgIChzbGljZSgwLDEsMSksIHNsaWNlKDAsMSwwKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbXYuX19nZXRpdGVtX18sICJAJSQiKQorCisgICAgICAgICMgZGlmZmVyaW5nIGZvcm1hdAorICAgICAgICB4bCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVs4XSwgZm9ybWF0PSJCIiwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIHhyID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzhdLCBmb3JtYXQ9ImIiKQorICAgICAgICBtbCA9IG1lbW9yeXZpZXcoeGwpCisgICAgICAgIG1yID0gbWVtb3J5dmlldyh4cikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgeGwuX19zZXRpdGVtX18sIHNsaWNlKDAsMSwxKSwgeHJbNzo4XSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4bC50b2xpc3QoKSwgaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG1sLl9fc2V0aXRlbV9fLCBzbGljZSgwLDEsMSksIG1yWzc6OF0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWwudG9saXN0KCksIGl0ZW1zKQorCisgICAgICAgICMgZGlmZmVyaW5nIGl0ZW1zaXplCisgICAgICAgIHhsID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzhdLCBmb3JtYXQ9IkIiLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgeXIgPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bOF0sIGZvcm1hdD0iTCIpCisgICAgICAgIG1sID0gbWVtb3J5dmlldyh4bCkKKyAgICAgICAgbXIgPSBtZW1vcnl2aWV3KHhyKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCB4bC5fX3NldGl0ZW1fXywgc2xpY2UoMCwxLDEpLCB4cls3OjhdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHhsLnRvbGlzdCgpLCBpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbWwuX19zZXRpdGVtX18sIHNsaWNlKDAsMSwxKSwgbXJbNzo4XSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtbC50b2xpc3QoKSwgaXRlbXMpCisKKyAgICAgICAgIyBkaWZmZXJpbmcgbmRpbQorICAgICAgICB4bCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVsyLCA0XSwgZm9ybWF0PSJiIiwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIHhyID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzhdLCBmb3JtYXQ9ImIiKQorICAgICAgICBtbCA9IG1lbW9yeXZpZXcoeGwpCisgICAgICAgIG1yID0gbWVtb3J5dmlldyh4cikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgeGwuX19zZXRpdGVtX18sIHNsaWNlKDAsMSwxKSwgeHJbNzo4XSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4bC50b2xpc3QoKSwgW1sxLDIsMyw0XSwgWzUsNiw3LDhdXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTm90SW1wbGVtZW50ZWRFcnJvciwgbWwuX19zZXRpdGVtX18sIHNsaWNlKDAsMSwxKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbXJbNzo4XSkKKworICAgICAgICAjIGRpZmZlcmluZyBzaGFwZQorICAgICAgICB4bCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVs4XSwgZm9ybWF0PSJiIiwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIHhyID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzhdLCBmb3JtYXQ9ImIiKQorICAgICAgICBtbCA9IG1lbW9yeXZpZXcoeGwpCisgICAgICAgIG1yID0gbWVtb3J5dmlldyh4cikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgeGwuX19zZXRpdGVtX18sIHNsaWNlKDAsMiwxKSwgeHJbNzo4XSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4bC50b2xpc3QoKSwgaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG1sLl9fc2V0aXRlbV9fLCBzbGljZSgwLDIsMSksIG1yWzc6OF0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWwudG9saXN0KCksIGl0ZW1zKQorCisgICAgICAgICMgX3Rlc3RidWZmZXIuYyBtb2R1bGUgZnVuY3Rpb25zCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2xpY2VfaW5kaWNlcywgc2xpY2UoMCwxLDIpLCB7fSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzbGljZV9pbmRpY2VzLCAiIyMjIyMjIyMjIyMiLCAxKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzbGljZV9pbmRpY2VzLCBzbGljZSgwLDEsMCksIDQpCisKKyAgICAgICAgeCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVs4XSwgZm9ybWF0PSJiIiwgZmxhZ3M9TkRfUElMKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHguYWRkX3N1Ym9mZnNldHMpCisKKyAgICAgICAgZXggPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bOF0sIGZvcm1hdD0iQiIpCisgICAgICAgIHggPSBuZGFycmF5KGV4LCBnZXRidWY9UHlCVUZfU0lNUExFKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHguYWRkX3N1Ym9mZnNldHMpCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X3NsaWNlX3plcm9fc2hhcGUoc2VsZik6CisgICAgICAgIGl0ZW1zID0gWzEsMiwzLDQsNSw2LDcsOCw5LDEwLDExLDEyXQorCisgICAgICAgIHggPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bMTJdLCBmb3JtYXQ9IkwiLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgeSA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVsxMl0sIGZvcm1hdD0iTCIpCisgICAgICAgIHhbNDo0XSA9IHlbOTo5XQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHgudG9saXN0KCksIGl0ZW1zKQorCisgICAgICAgIG1sID0gbWVtb3J5dmlldyh4KQorICAgICAgICBtciA9IG1lbW9yeXZpZXcoeSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtbCwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtbCwgeSkKKyAgICAgICAgbWxbNDo0XSA9IG1yWzk6OV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtbC50b2xpc3QoKSwgaXRlbXMpCisKKyAgICAgICAgeCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVszLCA0XSwgZm9ybWF0PSJMIiwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIHkgPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bNCwgM10sIGZvcm1hdD0iTCIpCisgICAgICAgIHhbMToyLCAyOjJdID0geVsxOjIsIDM6M10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LnRvbGlzdCgpLCBjYXJyYXkoaXRlbXMsIFszLCA0XSkpCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X3NsaWNlX211bHRpZGltKHNlbGYpOgorICAgICAgICBzaGFwZV90ID0gKDIsIDMsIDUpCisgICAgICAgIG5kaW0gPSBsZW4oc2hhcGVfdCkKKyAgICAgICAgbml0ZW1zID0gcHJvZChzaGFwZV90KQorICAgICAgICBmb3Igc2hhcGUgaW4gcGVybXV0YXRpb25zKHNoYXBlX3QpOgorCisgICAgICAgICAgICBmbXQsIGl0ZW1zLCBfID0gcmFuZGl0ZW1zKG5pdGVtcykKKyAgICAgICAgICAgIGl0ZW1zaXplID0gc3RydWN0LmNhbGNzaXplKGZtdCkKKworICAgICAgICAgICAgZm9yIGZsYWdzIGluICgwLCBORF9QSUwpOgorICAgICAgICAgICAgICAgIG5kID0gbmRhcnJheShpdGVtcywgc2hhcGU9c2hhcGUsIGZvcm1hdD1mbXQsIGZsYWdzPWZsYWdzKQorICAgICAgICAgICAgICAgIGxzdCA9IGNhcnJheShpdGVtcywgc2hhcGUpCisKKyAgICAgICAgICAgICAgICBmb3Igc2xpY2VzIGluIHJzbGljZXNfbmRpbShuZGltLCBzaGFwZSk6CisKKyAgICAgICAgICAgICAgICAgICAgbGlzdGVyciA9IE5vbmUKKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgc2xpY2VkID0gbXVsdGlzbGljZShsc3QsIHNsaWNlcykKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgICAgICAgICAgICAgbGlzdGVyciA9IGUuX19jbGFzc19fCisKKyAgICAgICAgICAgICAgICAgICAgbmRlcnIgPSBOb25lCisgICAgICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgICAgIG5kc2xpY2VkID0gbmRbc2xpY2VzXQorICAgICAgICAgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CisgICAgICAgICAgICAgICAgICAgICAgICBuZGVyciA9IGUuX19jbGFzc19fCisKKyAgICAgICAgICAgICAgICAgICAgaWYgbmRlcnIgb3IgbGlzdGVycjoKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMobmRlcnIsIGxpc3RlcnIpCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kc2xpY2VkLnRvbGlzdCgpLCBzbGljZWQpCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X3NsaWNlX3JlZHVuZGFudF9zdWJvZmZzZXRzKHNlbGYpOgorICAgICAgICBzaGFwZV90ID0gKDIsIDMsIDUsIDIpCisgICAgICAgIG5kaW0gPSBsZW4oc2hhcGVfdCkKKyAgICAgICAgbml0ZW1zID0gcHJvZChzaGFwZV90KQorICAgICAgICBmb3Igc2hhcGUgaW4gcGVybXV0YXRpb25zKHNoYXBlX3QpOgorCisgICAgICAgICAgICBmbXQsIGl0ZW1zLCBfID0gcmFuZGl0ZW1zKG5pdGVtcykKKyAgICAgICAgICAgIGl0ZW1zaXplID0gc3RydWN0LmNhbGNzaXplKGZtdCkKKworICAgICAgICAgICAgbmQgPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1zaGFwZSwgZm9ybWF0PWZtdCkKKyAgICAgICAgICAgIG5kLmFkZF9zdWJvZmZzZXRzKCkKKyAgICAgICAgICAgIGV4ID0gbmRhcnJheShpdGVtcywgc2hhcGU9c2hhcGUsIGZvcm1hdD1mbXQpCisgICAgICAgICAgICBleC5hZGRfc3Vib2Zmc2V0cygpCisgICAgICAgICAgICBtdiA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgICAgICBsc3QgPSBjYXJyYXkoaXRlbXMsIHNoYXBlKQorCisgICAgICAgICAgICBmb3Igc2xpY2VzIGluIHJzbGljZXNfbmRpbShuZGltLCBzaGFwZSk6CisKKyAgICAgICAgICAgICAgICBsaXN0ZXJyID0gTm9uZQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgc2xpY2VkID0gbXVsdGlzbGljZShsc3QsIHNsaWNlcykKKyAgICAgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CisgICAgICAgICAgICAgICAgICAgIGxpc3RlcnIgPSBlLl9fY2xhc3NfXworCisgICAgICAgICAgICAgICAgbmRlcnIgPSBOb25lCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBuZHNsaWNlZCA9IG5kW3NsaWNlc10KKyAgICAgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CisgICAgICAgICAgICAgICAgICAgIG5kZXJyID0gZS5fX2NsYXNzX18KKworICAgICAgICAgICAgICAgIGlmIG5kZXJyIG9yIGxpc3RlcnI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMobmRlcnIsIGxpc3RlcnIpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZHNsaWNlZC50b2xpc3QoKSwgc2xpY2VkKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV9zbGljZV9hc3NpZ25fc2luZ2xlKHNlbGYpOgorICAgICAgICBmb3IgZm10LCBpdGVtcywgXyBpbiBpdGVyX2Zvcm1hdCg1KToKKyAgICAgICAgICAgIGZvciBsc2xpY2UgaW4gZ2Vuc2xpY2VzKDUpOgorICAgICAgICAgICAgICAgIGZvciByc2xpY2UgaW4gZ2Vuc2xpY2VzKDUpOgorICAgICAgICAgICAgICAgICAgICBmb3IgZmxhZ3MgaW4gKDAsIE5EX1BJTCk6CisKKyAgICAgICAgICAgICAgICAgICAgICAgIGYgPSBmbGFnc3xORF9XUklUQUJMRQorICAgICAgICAgICAgICAgICAgICAgICAgbmQgPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bNV0sIGZvcm1hdD1mbXQsIGZsYWdzPWYpCisgICAgICAgICAgICAgICAgICAgICAgICBleCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVs1XSwgZm9ybWF0PWZtdCwgZmxhZ3M9ZikKKyAgICAgICAgICAgICAgICAgICAgICAgIG12ID0gbWVtb3J5dmlldyhleCkKKworICAgICAgICAgICAgICAgICAgICAgICAgbHN0ZXJyID0gTm9uZQorICAgICAgICAgICAgICAgICAgICAgICAgZGlmZl9zdHJ1Y3R1cmUgPSBOb25lCisgICAgICAgICAgICAgICAgICAgICAgICBsc3QgPSBpdGVtc1s6XQorICAgICAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGx2YWwgPSBsc3RbbHNsaWNlXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWwgPSBsc3RbcnNsaWNlXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxzdFtsc2xpY2VdID0gbHN0W3JzbGljZV0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWZmX3N0cnVjdHVyZSA9IGxlbihsdmFsKSAhPSBsZW4ocnZhbCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsc3RlcnIgPSBlLl9fY2xhc3NfXworCisgICAgICAgICAgICAgICAgICAgICAgICBuZGVyciA9IE5vbmUKKyAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZFtsc2xpY2VdID0gbmRbcnNsaWNlXQorICAgICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5kZXJyID0gZS5fX2NsYXNzX18KKworICAgICAgICAgICAgICAgICAgICAgICAgaWYgZGlmZl9zdHJ1Y3R1cmU6ICMgbmRhcnJheSBjYW5ub3QgY2hhbmdlIHNoYXBlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhuZGVyciwgVmFsdWVFcnJvcikKKyAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZC50b2xpc3QoKSwgbHN0KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMobmRlcnIsIGxzdGVycikKKworICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGlzX21lbW9yeXZpZXdfZm9ybWF0KGZtdCk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgICAgICAgICAgICAgbXZlcnIgPSBOb25lCisgICAgICAgICAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXZbbHNsaWNlXSA9IG12W3JzbGljZV0KKyAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdmVyciA9IGUuX19jbGFzc19fCisKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIGRpZmZfc3RydWN0dXJlOiAjIG1lbW9yeXZpZXcgY2Fubm90IGNoYW5nZSBzaGFwZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMobXZlcnIsIFZhbHVlRXJyb3IpCisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXYudG9saXN0KCksIGxzdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG12LCBuZCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzKG12ZXJyLCBsc3RlcnIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi52ZXJpZnkobXYsIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPW5kLml0ZW1zaXplLCBmbXQ9Zm10LCByZWFkb25seT0wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmRpbT1uZC5uZGltLCBzaGFwZT1uZC5zaGFwZSwgc3RyaWRlcz1uZC5zdHJpZGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHN0PW5kLnRvbGlzdCgpKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV9zbGljZV9hc3NpZ25fbXVsdGlkaW0oc2VsZik6CisgICAgICAgIHNoYXBlX3QgPSAoMiwgMywgNSkKKyAgICAgICAgbmRpbSA9IGxlbihzaGFwZV90KQorICAgICAgICBuaXRlbXMgPSBwcm9kKHNoYXBlX3QpCisgICAgICAgIGZvciBzaGFwZSBpbiBwZXJtdXRhdGlvbnMoc2hhcGVfdCk6CisKKyAgICAgICAgICAgIGZtdCwgaXRlbXMsIF8gPSByYW5kaXRlbXMobml0ZW1zKQorCisgICAgICAgICAgICBmb3IgZmxhZ3MgaW4gKDAsIE5EX1BJTCk6CisgICAgICAgICAgICAgICAgZm9yIF8gaW4gcmFuZ2UoSVRFUkFUSU9OUyk6CisgICAgICAgICAgICAgICAgICAgIGxzbGljZXMsIHJzbGljZXMgPSByYW5kc2xpY2VfZnJvbV9zaGFwZShuZGltLCBzaGFwZSkKKworICAgICAgICAgICAgICAgICAgICBuZCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPXNoYXBlLCBmb3JtYXQ9Zm10LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3M9ZmxhZ3N8TkRfV1JJVEFCTEUpCisgICAgICAgICAgICAgICAgICAgIGxzdCA9IGNhcnJheShpdGVtcywgc2hhcGUpCisKKyAgICAgICAgICAgICAgICAgICAgbGlzdGVyciA9IE5vbmUKKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gbXVsdGlzbGljZV9hc3NpZ24obHN0LCBsc3QsIGxzbGljZXMsIHJzbGljZXMpCisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RlcnIgPSBlLl9fY2xhc3NfXworCisgICAgICAgICAgICAgICAgICAgIG5kZXJyID0gTm9uZQorICAgICAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICAgICBuZFtsc2xpY2VzXSA9IG5kW3JzbGljZXNdCisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgICAgICAgICAgICAgICAgIG5kZXJyID0gZS5fX2NsYXNzX18KKworICAgICAgICAgICAgICAgICAgICBpZiBuZGVyciBvciBsaXN0ZXJyOgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhuZGVyciwgbGlzdGVycikKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQudG9saXN0KCksIHJlc3VsdCkKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfcmFuZG9tKHNlbGYpOgorICAgICAgICAjIGNvbnN0cnVjdGlvbiBvZiB2YWxpZCBhcnJheXMKKyAgICAgICAgZm9yIF8gaW4gcmFuZ2UoSVRFUkFUSU9OUyk6CisgICAgICAgICAgICBmb3IgZm10IGluIGZtdGRpY3RbJ0AnXToKKyAgICAgICAgICAgICAgICBpdGVtc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShmbXQpCisKKyAgICAgICAgICAgICAgICB0ID0gcmFuZF9zdHJ1Y3R1cmUoaXRlbXNpemUsIFRydWUsIG1heGRpbT1NQVhESU0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heHNoYXBlPU1BWFNIQVBFKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh2ZXJpZnlfc3RydWN0dXJlKCp0KSkKKyAgICAgICAgICAgICAgICBpdGVtcyA9IHJhbmRpdGVtc19mcm9tX3N0cnVjdHVyZShmbXQsIHQpCisKKyAgICAgICAgICAgICAgICB4ID0gbmRhcnJheV9mcm9tX3N0cnVjdHVyZShpdGVtcywgZm10LCB0KQorICAgICAgICAgICAgICAgIHhsaXN0ID0geC50b2xpc3QoKQorCisgICAgICAgICAgICAgICAgbXYgPSBtZW1vcnl2aWV3KHgpCisgICAgICAgICAgICAgICAgaWYgaXNfbWVtb3J5dmlld19mb3JtYXQoZm10KToKKyAgICAgICAgICAgICAgICAgICAgbXZsaXN0ID0gbXYudG9saXN0KCkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtdmxpc3QsIHhsaXN0KQorCisgICAgICAgICAgICAgICAgaWYgdFsyXSA+IDA6CisgICAgICAgICAgICAgICAgICAgICMgbmRpbSA+IDA6IHRlc3QgYWdhaW5zdCBzdWJvZmZzZXRzIHJlcHJlc2VudGF0aW9uLgorICAgICAgICAgICAgICAgICAgICB5ID0gbmRhcnJheV9mcm9tX3N0cnVjdHVyZShpdGVtcywgZm10LCB0LCBmbGFncz1ORF9QSUwpCisgICAgICAgICAgICAgICAgICAgIHlsaXN0ID0geS50b2xpc3QoKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHhsaXN0LCB5bGlzdCkKKworICAgICAgICAgICAgICAgICAgICBtdiA9IG1lbW9yeXZpZXcoeSkKKyAgICAgICAgICAgICAgICAgICAgaWYgaXNfbWVtb3J5dmlld19mb3JtYXQoZm10KToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXYsIHkpCisgICAgICAgICAgICAgICAgICAgICAgICBtdmxpc3QgPSBtdi50b2xpc3QoKQorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtdmxpc3QsIHlsaXN0KQorCisgICAgICAgICAgICAgICAgaWYgbnVtcHlfYXJyYXk6CisgICAgICAgICAgICAgICAgICAgIHNoYXBlID0gdFszXQorICAgICAgICAgICAgICAgICAgICBpZiAwIGluIHNoYXBlOgorICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUgIyBodHRwOi8vcHJvamVjdHMuc2NpcHkub3JnL251bXB5L3RpY2tldC8xOTEwCisgICAgICAgICAgICAgICAgICAgIHogPSBudW1weV9hcnJheV9mcm9tX3N0cnVjdHVyZShpdGVtcywgZm10LCB0KQorICAgICAgICAgICAgICAgICAgICBzZWxmLnZlcmlmeSh4LCBvYmo9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9ei5pdGVtc2l6ZSwgZm10PWZtdCwgcmVhZG9ubHk9MCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmRpbT16Lm5kaW0sIHNoYXBlPXouc2hhcGUsIHN0cmlkZXM9ei5zdHJpZGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsc3Q9ei50b2xpc3QoKSkKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfcmFuZG9tX2ludmFsaWQoc2VsZik6CisgICAgICAgICMgZXhjZXB0aW9ucyBkdXJpbmcgY29uc3RydWN0aW9uIG9mIGludmFsaWQgYXJyYXlzCisgICAgICAgIGZvciBfIGluIHJhbmdlKElURVJBVElPTlMpOgorICAgICAgICAgICAgZm9yIGZtdCBpbiBmbXRkaWN0WydAJ106CisgICAgICAgICAgICAgICAgaXRlbXNpemUgPSBzdHJ1Y3QuY2FsY3NpemUoZm10KQorCisgICAgICAgICAgICAgICAgdCA9IHJhbmRfc3RydWN0dXJlKGl0ZW1zaXplLCBGYWxzZSwgbWF4ZGltPU1BWERJTSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4c2hhcGU9TUFYU0hBUEUpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh2ZXJpZnlfc3RydWN0dXJlKCp0KSkKKyAgICAgICAgICAgICAgICBpdGVtcyA9IHJhbmRpdGVtc19mcm9tX3N0cnVjdHVyZShmbXQsIHQpCisKKyAgICAgICAgICAgICAgICBuZGVyciA9IEZhbHNlCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICB4ID0gbmRhcnJheV9mcm9tX3N0cnVjdHVyZShpdGVtcywgZm10LCB0KQorICAgICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgICAgICAgICAgICAgbmRlcnIgPSBlLl9fY2xhc3NfXworICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShuZGVycikKKworICAgICAgICAgICAgICAgIGlmIG51bXB5X2FycmF5OgorICAgICAgICAgICAgICAgICAgICBudW1weV9lcnIgPSBGYWxzZQorICAgICAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICAgICB5ID0gbnVtcHlfYXJyYXlfZnJvbV9zdHJ1Y3R1cmUoaXRlbXMsIGZtdCwgdCkKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgICAgICAgICAgICAgbnVtcHlfZXJyID0gZS5fX2NsYXNzX18KKworICAgICAgICAgICAgICAgICAgICBpZiAwOiAjIGh0dHA6Ly9wcm9qZWN0cy5zY2lweS5vcmcvbnVtcHkvdGlja2V0LzE5MTAKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShudW1weV9lcnIpCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X3JhbmRvbV9zbGljZV9hc3NpZ24oc2VsZik6CisgICAgICAgICMgdmFsaWQgc2xpY2UgYXNzaWdubWVudHMKKyAgICAgICAgZm9yIF8gaW4gcmFuZ2UoSVRFUkFUSU9OUyk6CisgICAgICAgICAgICBmb3IgZm10IGluIGZtdGRpY3RbJ0AnXToKKyAgICAgICAgICAgICAgICBpdGVtc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShmbXQpCisKKyAgICAgICAgICAgICAgICBsc2hhcGUsIHJzaGFwZSwgbHNsaWNlcywgcnNsaWNlcyA9IFwKKyAgICAgICAgICAgICAgICAgICAgcmFuZF9hbGlnbmVkX3NsaWNlcyhtYXhkaW09TUFYRElNLCBtYXhzaGFwZT1NQVhTSEFQRSkKKyAgICAgICAgICAgICAgICB0bCA9IHJhbmRfc3RydWN0dXJlKGl0ZW1zaXplLCBUcnVlLCBzaGFwZT1sc2hhcGUpCisgICAgICAgICAgICAgICAgdHIgPSByYW5kX3N0cnVjdHVyZShpdGVtc2l6ZSwgVHJ1ZSwgc2hhcGU9cnNoYXBlKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh2ZXJpZnlfc3RydWN0dXJlKCp0bCkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHZlcmlmeV9zdHJ1Y3R1cmUoKnRyKSkKKyAgICAgICAgICAgICAgICBsaXRlbXMgPSByYW5kaXRlbXNfZnJvbV9zdHJ1Y3R1cmUoZm10LCB0bCkKKyAgICAgICAgICAgICAgICByaXRlbXMgPSByYW5kaXRlbXNfZnJvbV9zdHJ1Y3R1cmUoZm10LCB0cikKKworICAgICAgICAgICAgICAgIHhsID0gbmRhcnJheV9mcm9tX3N0cnVjdHVyZShsaXRlbXMsIGZtdCwgdGwpCisgICAgICAgICAgICAgICAgeHIgPSBuZGFycmF5X2Zyb21fc3RydWN0dXJlKHJpdGVtcywgZm10LCB0cikKKyAgICAgICAgICAgICAgICB4bFtsc2xpY2VzXSA9IHhyW3JzbGljZXNdCisgICAgICAgICAgICAgICAgeGxsaXN0ID0geGwudG9saXN0KCkKKyAgICAgICAgICAgICAgICB4cmxpc3QgPSB4ci50b2xpc3QoKQorCisgICAgICAgICAgICAgICAgbWwgPSBtZW1vcnl2aWV3KHhsKQorICAgICAgICAgICAgICAgIG1yID0gbWVtb3J5dmlldyh4cikKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1sLnRvbGlzdCgpLCB4bGxpc3QpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtci50b2xpc3QoKSwgeHJsaXN0KQorCisgICAgICAgICAgICAgICAgaWYgdGxbMl0gPiAwIGFuZCB0clsyXSA+IDA6CisgICAgICAgICAgICAgICAgICAgICMgbmRpbSA+IDA6IHRlc3QgYWdhaW5zdCBzdWJvZmZzZXRzIHJlcHJlc2VudGF0aW9uLgorICAgICAgICAgICAgICAgICAgICB5bCA9IG5kYXJyYXlfZnJvbV9zdHJ1Y3R1cmUobGl0ZW1zLCBmbXQsIHRsLCBmbGFncz1ORF9QSUwpCisgICAgICAgICAgICAgICAgICAgIHlyID0gbmRhcnJheV9mcm9tX3N0cnVjdHVyZShyaXRlbXMsIGZtdCwgdHIsIGZsYWdzPU5EX1BJTCkKKyAgICAgICAgICAgICAgICAgICAgeWxbbHNsaWNlc10gPSB5cltyc2xpY2VzXQorICAgICAgICAgICAgICAgICAgICB5bGxpc3QgPSB5bC50b2xpc3QoKQorICAgICAgICAgICAgICAgICAgICB5cmxpc3QgPSB5ci50b2xpc3QoKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHhsbGlzdCwgeWxsaXN0KQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHhybGlzdCwgeXJsaXN0KQorCisgICAgICAgICAgICAgICAgICAgIG1sID0gbWVtb3J5dmlldyh5bCkKKyAgICAgICAgICAgICAgICAgICAgbXIgPSBtZW1vcnl2aWV3KHlyKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1sLnRvbGlzdCgpLCB5bGxpc3QpCisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXIudG9saXN0KCksIHlybGlzdCkKKworICAgICAgICAgICAgICAgIGlmIG51bXB5X2FycmF5OgorICAgICAgICAgICAgICAgICAgICBpZiAwIGluIGxzaGFwZSBvciAwIGluIHJzaGFwZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlICMgaHR0cDovL3Byb2plY3RzLnNjaXB5Lm9yZy9udW1weS90aWNrZXQvMTkxMAorCisgICAgICAgICAgICAgICAgICAgIHpsID0gbnVtcHlfYXJyYXlfZnJvbV9zdHJ1Y3R1cmUobGl0ZW1zLCBmbXQsIHRsKQorICAgICAgICAgICAgICAgICAgICB6ciA9IG51bXB5X2FycmF5X2Zyb21fc3RydWN0dXJlKHJpdGVtcywgZm10LCB0cikKKyAgICAgICAgICAgICAgICAgICAgemxbbHNsaWNlc10gPSB6cltyc2xpY2VzXQorCisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBpc19vdmVybGFwcGluZyh0bCkgYW5kIG5vdCBpc19vdmVybGFwcGluZyh0cik6CisgICAgICAgICAgICAgICAgICAgICAgICAjIFNsaWNlIGFzc2lnbm1lbnQgb2Ygb3ZlcmxhcHBpbmcgc3RydWN0dXJlcworICAgICAgICAgICAgICAgICAgICAgICAgIyBpcyB1bmRlZmluZWQgaW4gTnVtUHkuCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnZlcmlmeSh4bCwgb2JqPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtc2l6ZT16bC5pdGVtc2l6ZSwgZm10PWZtdCwgcmVhZG9ubHk9MCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09emwubmRpbSwgc2hhcGU9emwuc2hhcGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpZGVzPXpsLnN0cmlkZXMsIGxzdD16bC50b2xpc3QoKSkKKworICAgICAgICAgICAgICAgICAgICBzZWxmLnZlcmlmeSh4ciwgb2JqPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPXpyLml0ZW1zaXplLCBmbXQ9Zm10LCByZWFkb25seT0wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZGltPXpyLm5kaW0sIHNoYXBlPXpyLnNoYXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpZGVzPXpyLnN0cmlkZXMsIGxzdD16ci50b2xpc3QoKSkKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfcmVfZXhwb3J0KHNlbGYpOgorICAgICAgICBpdGVtcyA9IFsxLDIsMyw0LDUsNiw3LDgsOSwxMCwxMSwxMl0KKworICAgICAgICBuZCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVszLDRdLCBmbGFncz1ORF9QSUwpCisgICAgICAgIGV4ID0gbmRhcnJheShuZCkKKworICAgICAgICBzZWxmLmFzc2VydFRydWUoZXguZmxhZ3MgJiBORF9QSUwpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZXgub2JqLCBuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleC5zdWJvZmZzZXRzLCAoMCwgLTEpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGV4LmNfY29udGlndW91cykKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShleC5mX2NvbnRpZ3VvdXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZXguY29udGlndW91cykKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfemVyb19zaGFwZShzZWxmKToKKyAgICAgICAgIyB6ZXJvcyBpbiBzaGFwZQorICAgICAgICBmb3IgZmxhZ3MgaW4gKDAsIE5EX1BJTCk6CisgICAgICAgICAgICBuZCA9IG5kYXJyYXkoWzEsMiwzXSwgc2hhcGU9WzBdLCBmbGFncz1mbGFncykKKyAgICAgICAgICAgIG12ID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXYsIG5kKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZC50b2xpc3QoKSwgW10pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG12LnRvbGlzdCgpLCBbXSkKKworICAgICAgICAgICAgbmQgPSBuZGFycmF5KFsxLDIsM10sIHNoYXBlPVswLDMsM10sIGZsYWdzPWZsYWdzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZC50b2xpc3QoKSwgW10pCisKKyAgICAgICAgICAgIG5kID0gbmRhcnJheShbMSwyLDNdLCBzaGFwZT1bMywwLDNdLCBmbGFncz1mbGFncykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQudG9saXN0KCksIFtbXSwgW10sIFtdXSkKKworICAgICAgICAgICAgbmQgPSBuZGFycmF5KFsxLDIsM10sIHNoYXBlPVszLDMsMF0sIGZsYWdzPWZsYWdzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZC50b2xpc3QoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1tbXSwgW10sIFtdXSwgW1tdLCBbXSwgW11dLCBbW10sIFtdLCBbXV1dKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV96ZXJvX3N0cmlkZXMoc2VsZik6CisgICAgICAgICMgemVybyBzdHJpZGVzCisgICAgICAgIGZvciBmbGFncyBpbiAoMCwgTkRfUElMKToKKyAgICAgICAgICAgIG5kID0gbmRhcnJheShbMV0sIHNoYXBlPVs1XSwgc3RyaWRlcz1bMF0sIGZsYWdzPWZsYWdzKQorICAgICAgICAgICAgbXYgPSBtZW1vcnl2aWV3KG5kKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtdiwgbmQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kLnRvbGlzdCgpLCBbMSwgMSwgMSwgMSwgMV0pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG12LnRvbGlzdCgpLCBbMSwgMSwgMSwgMSwgMV0pCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X29mZnNldChzZWxmKToKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMjApKSwgc2hhcGU9WzNdLCBvZmZzZXQ9NykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZC5vZmZzZXQsIDcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQudG9saXN0KCksIFs3LDgsOV0pCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X21lbW9yeXZpZXdfZnJvbV9idWZmZXIoc2VsZik6CisgICAgICAgIGZvciBmbGFncyBpbiAoMCwgTkRfUElMKToKKyAgICAgICAgICAgIG5kID0gbmRhcnJheShsaXN0KHJhbmdlKDMpKSwgc2hhcGU9WzNdLCBmbGFncz1mbGFncykKKyAgICAgICAgICAgIG0gPSBuZC5tZW1vcnl2aWV3X2Zyb21fYnVmZmVyKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobSwgbmQpCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X2dldF9wb2ludGVyKHNlbGYpOgorICAgICAgICBmb3IgZmxhZ3MgaW4gKDAsIE5EX1BJTCk6CisgICAgICAgICAgICBuZCA9IG5kYXJyYXkobGlzdChyYW5nZSgzKSksIHNoYXBlPVszXSwgZmxhZ3M9ZmxhZ3MpCisgICAgICAgICAgICBmb3IgaSBpbiByYW5nZSgzKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kW2ldLCBnZXRfcG9pbnRlcihuZCwgW2ldKSkKKworICAgIGRlZiB0ZXN0X25kYXJyYXlfdG9saXN0X251bGxfc3RyaWRlcyhzZWxmKToKKyAgICAgICAgZXggPSBuZGFycmF5KGxpc3QocmFuZ2UoMjApKSwgc2hhcGU9WzIsMiw1XSkKKworICAgICAgICBuZCA9IG5kYXJyYXkoZXgsIGdldGJ1Zj1QeUJVRl9ORHxQeUJVRl9GT1JNQVQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQudG9saXN0KCksIGV4LnRvbGlzdCgpKQorCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0udG9saXN0KCksIGV4LnRvbGlzdCgpKQorCisgICAgZGVmIHRlc3RfbmRhcnJheV9jbXBfY29udGlnKHNlbGYpOgorCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoY21wX2NvbnRpZyhiIjEyMyIsIGIiNDU2IikpCisKKyAgICAgICAgeCA9IG5kYXJyYXkobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bMyw0XSkKKyAgICAgICAgeSA9IG5kYXJyYXkobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bNCwzXSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShjbXBfY29udGlnKHgsIHkpKQorCisgICAgICAgIHggPSBuZGFycmF5KFsxXSwgc2hhcGU9WzFdLCBmb3JtYXQ9IkIiKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoY21wX2NvbnRpZyh4LCBiJ1x4MDEnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNtcF9jb250aWcoYidceDAxJywgeCkpCisKKyAgICBkZWYgdGVzdF9uZGFycmF5X2hhc2goc2VsZik6CisKKyAgICAgICAgYSA9IGFycmF5LmFycmF5KCdMJywgWzEsMiwzXSkKKyAgICAgICAgbmQgPSBuZGFycmF5KGEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGhhc2gsIG5kKQorCisgICAgICAgICMgb25lLWRpbWVuc2lvbmFsCisgICAgICAgIGIgPSBieXRlcyhsaXN0KHJhbmdlKDEyKSkpCisKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMTIpKSwgc2hhcGU9WzEyXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYXNoKG5kKSwgaGFzaChiKSkKKworICAgICAgICAjIEMtY29udGlndW91cworICAgICAgICBuZCA9IG5kYXJyYXkobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bMyw0XSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYXNoKG5kKSwgaGFzaChiKSkKKworICAgICAgICBuZCA9IG5kYXJyYXkobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bMywyLDJdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobmQpLCBoYXNoKGIpKQorCisgICAgICAgICMgRm9ydHJhbiBjb250aWd1b3VzCisgICAgICAgIGIgPSBieXRlcyh0cmFuc3Bvc2UobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bNCwzXSkpCisgICAgICAgIG5kID0gbmRhcnJheShsaXN0KHJhbmdlKDEyKSksIHNoYXBlPVszLDRdLCBmbGFncz1ORF9GT1JUUkFOKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobmQpLCBoYXNoKGIpKQorCisgICAgICAgIGIgPSBieXRlcyh0cmFuc3Bvc2UobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bMiwzLDJdKSkKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMTIpKSwgc2hhcGU9WzIsMywyXSwgZmxhZ3M9TkRfRk9SVFJBTikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYXNoKG5kKSwgaGFzaChiKSkKKworICAgICAgICAjIHN1Ym9mZnNldHMKKyAgICAgICAgYiA9IGJ5dGVzKGxpc3QocmFuZ2UoMTIpKSkKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMTIpKSwgc2hhcGU9WzIsMiwzXSwgZmxhZ3M9TkRfUElMKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobmQpLCBoYXNoKGIpKQorCisgICAgICAgICMgbm9uLWJ5dGUgZm9ybWF0cworICAgICAgICBuZCA9IG5kYXJyYXkobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bMiwyLDNdLCBmb3JtYXQ9J0wnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobmQpLCBoYXNoKG5kLnRvYnl0ZXMoKSkpCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X2NvbnN0cnVjdGlvbihzZWxmKToKKworICAgICAgICBpdGVtc19zaGFwZSA9IFsoOSwgW10pLCAoWzEsMiwzXSwgWzNdKSwgKGxpc3QocmFuZ2UoMiozKjUpKSwgWzIsMyw1XSldCisKKyAgICAgICAgIyBOdW1QeSBzdHlsZSwgQy1jb250aWd1b3VzOgorICAgICAgICBmb3IgaXRlbXMsIHNoYXBlIGluIGl0ZW1zX3NoYXBlOgorCisgICAgICAgICAgICAjIEZyb20gUEVQLTMxMTggY29tcGxpYW50IGV4cG9ydGVyOgorICAgICAgICAgICAgZXggPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1zaGFwZSkKKyAgICAgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG0uY19jb250aWd1b3VzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG0uY29udGlndW91cykKKworICAgICAgICAgICAgbmRpbSA9IGxlbihzaGFwZSkKKyAgICAgICAgICAgIHN0cmlkZXMgPSBzdHJpZGVzX2Zyb21fc2hhcGUobmRpbSwgc2hhcGUsIDEsICdDJykKKyAgICAgICAgICAgIGxzdCA9IGNhcnJheShpdGVtcywgc2hhcGUpCisKKyAgICAgICAgICAgIHNlbGYudmVyaWZ5KG0sIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPTEsIGZtdD0nQicsIHJlYWRvbmx5PTEsCisgICAgICAgICAgICAgICAgICAgICAgICBuZGltPW5kaW0sIHNoYXBlPXNoYXBlLCBzdHJpZGVzPXN0cmlkZXMsCisgICAgICAgICAgICAgICAgICAgICAgICBsc3Q9bHN0KQorCisgICAgICAgICAgICAjIEZyb20gbWVtb3J5dmlldzoKKyAgICAgICAgICAgIG0yID0gbWVtb3J5dmlldyhtKQorICAgICAgICAgICAgc2VsZi52ZXJpZnkobTIsIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPTEsIGZtdD0nQicsIHJlYWRvbmx5PTEsCisgICAgICAgICAgICAgICAgICAgICAgICBuZGltPW5kaW0sIHNoYXBlPXNoYXBlLCBzdHJpZGVzPXN0cmlkZXMsCisgICAgICAgICAgICAgICAgICAgICAgICBsc3Q9bHN0KQorCisgICAgICAgICAgICAjIFB5TWVtb3J5Vmlld19Gcm9tQnVmZmVyKCk6IG5vIHN0cmlkZXMKKyAgICAgICAgICAgIG5kID0gbmRhcnJheShleCwgZ2V0YnVmPVB5QlVGX0NPTlRJR19ST3xQeUJVRl9GT1JNQVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kLnN0cmlkZXMsICgpKQorICAgICAgICAgICAgbSA9IG5kLm1lbW9yeXZpZXdfZnJvbV9idWZmZXIoKQorICAgICAgICAgICAgc2VsZi52ZXJpZnkobSwgb2JqPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICBpdGVtc2l6ZT0xLCBmbXQ9J0InLCByZWFkb25seT0xLAorICAgICAgICAgICAgICAgICAgICAgICAgbmRpbT1uZGltLCBzaGFwZT1zaGFwZSwgc3RyaWRlcz1zdHJpZGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgbHN0PWxzdCkKKworICAgICAgICAgICAgIyBQeU1lbW9yeVZpZXdfRnJvbUJ1ZmZlcigpOiBubyBmb3JtYXQsIHNoYXBlLCBzdHJpZGVzCisgICAgICAgICAgICBuZCA9IG5kYXJyYXkoZXgsIGdldGJ1Zj1QeUJVRl9TSU1QTEUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kLmZvcm1hdCwgJycpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kLnNoYXBlLCAoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQuc3RyaWRlcywgKCkpCisgICAgICAgICAgICBtID0gbmQubWVtb3J5dmlld19mcm9tX2J1ZmZlcigpCisKKyAgICAgICAgICAgIGxzdCA9IFtpdGVtc10gaWYgbmRpbSA9PSAwIGVsc2UgaXRlbXMKKyAgICAgICAgICAgIHNlbGYudmVyaWZ5KG0sIG9iaj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9MSwgZm10PSdCJywgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09MSwgc2hhcGU9W2V4Lm5ieXRlc10sIHN0cmlkZXM9KDEsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QpCisKKyAgICAgICAgIyBOdW1QeSBzdHlsZSwgRm9ydHJhbiBjb250aWd1b3VzOgorICAgICAgICBmb3IgaXRlbXMsIHNoYXBlIGluIGl0ZW1zX3NoYXBlOgorCisgICAgICAgICAgICAjIEZyb20gUEVQLTMxMTggY29tcGxpYW50IGV4cG9ydGVyOgorICAgICAgICAgICAgZXggPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1zaGFwZSwgZmxhZ3M9TkRfRk9SVFJBTikKKyAgICAgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG0uZl9jb250aWd1b3VzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG0uY29udGlndW91cykKKworICAgICAgICAgICAgbmRpbSA9IGxlbihzaGFwZSkKKyAgICAgICAgICAgIHN0cmlkZXMgPSBzdHJpZGVzX2Zyb21fc2hhcGUobmRpbSwgc2hhcGUsIDEsICdGJykKKyAgICAgICAgICAgIGxzdCA9IGZhcnJheShpdGVtcywgc2hhcGUpCisKKyAgICAgICAgICAgIHNlbGYudmVyaWZ5KG0sIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPTEsIGZtdD0nQicsIHJlYWRvbmx5PTEsCisgICAgICAgICAgICAgICAgICAgICAgICBuZGltPW5kaW0sIHNoYXBlPXNoYXBlLCBzdHJpZGVzPXN0cmlkZXMsCisgICAgICAgICAgICAgICAgICAgICAgICBsc3Q9bHN0KQorCisgICAgICAgICAgICAjIEZyb20gbWVtb3J5dmlldzoKKyAgICAgICAgICAgIG0yID0gbWVtb3J5dmlldyhtKQorICAgICAgICAgICAgc2VsZi52ZXJpZnkobTIsIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPTEsIGZtdD0nQicsIHJlYWRvbmx5PTEsCisgICAgICAgICAgICAgICAgICAgICAgICBuZGltPW5kaW0sIHNoYXBlPXNoYXBlLCBzdHJpZGVzPXN0cmlkZXMsCisgICAgICAgICAgICAgICAgICAgICAgICBsc3Q9bHN0KQorCisgICAgICAgICMgUElMIHN0eWxlOgorICAgICAgICBmb3IgaXRlbXMsIHNoYXBlIGluIGl0ZW1zX3NoYXBlWzE6XToKKworICAgICAgICAgICAgIyBGcm9tIFBFUC0zMTE4IGNvbXBsaWFudCBleHBvcnRlcjoKKyAgICAgICAgICAgIGV4ID0gbmRhcnJheShpdGVtcywgc2hhcGU9c2hhcGUsIGZsYWdzPU5EX1BJTCkKKyAgICAgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorCisgICAgICAgICAgICBuZGltID0gbGVuKHNoYXBlKQorICAgICAgICAgICAgbHN0ID0gY2FycmF5KGl0ZW1zLCBzaGFwZSkKKworICAgICAgICAgICAgc2VsZi52ZXJpZnkobSwgb2JqPWV4LAorICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9MSwgZm10PSdCJywgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09bmRpbSwgc2hhcGU9c2hhcGUsIHN0cmlkZXM9ZXguc3RyaWRlcywKKyAgICAgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QpCisKKyAgICAgICAgICAgICMgRnJvbSBtZW1vcnl2aWV3OgorICAgICAgICAgICAgbTIgPSBtZW1vcnl2aWV3KG0pCisgICAgICAgICAgICBzZWxmLnZlcmlmeShtMiwgb2JqPWV4LAorICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9MSwgZm10PSdCJywgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09bmRpbSwgc2hhcGU9c2hhcGUsIHN0cmlkZXM9ZXguc3RyaWRlcywKKyAgICAgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QpCisKKyAgICAgICAgIyBJbnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHM6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbWVtb3J5dmlldywgYic5JywgJ3gnKQorICAgICAgICAjIE5vdCBhIGJ1ZmZlciBwcm92aWRlcjoKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtZW1vcnl2aWV3LCB7fSkKKyAgICAgICAgIyBOb24tY29tcGxpYW50IGJ1ZmZlciBwcm92aWRlcjoKKyAgICAgICAgZXggPSBuZGFycmF5KFsxLDIsM10sIHNoYXBlPVszXSkKKyAgICAgICAgbmQgPSBuZGFycmF5KGV4LCBnZXRidWY9UHlCVUZfU0lNUExFKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgbWVtb3J5dmlldywgbmQpCisgICAgICAgIG5kID0gbmRhcnJheShleCwgZ2V0YnVmPVB5QlVGX0NPTlRJR19ST3xQeUJVRl9GT1JNQVQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBtZW1vcnl2aWV3LCBuZCkKKworICAgICAgICAjIG5kaW0gPiA2NAorICAgICAgICBuZCA9IG5kYXJyYXkoWzFdKjEyOCwgc2hhcGU9WzFdKjEyOCwgZm9ybWF0PSdMJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbWVtb3J5dmlldywgbmQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG5kLm1lbW9yeXZpZXdfZnJvbV9idWZmZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGdldF9jb250aWd1b3VzLCBuZCwgUHlCVUZfUkVBRCwgJ0MnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBnZXRfY29udGlndW91cywgbmQsIFB5QlVGX1JFQUQsICdGJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZ2V0X2NvbnRpZ3VvdXMsIG5kWzo6LTFdLCBQeUJVRl9SRUFELCAnQycpCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X2Nhc3RfemVyb19zaGFwZShzZWxmKToKKyAgICAgICAgIyBDYXN0cyBhcmUgdW5kZWZpbmVkIGlmIHNoYXBlIGNvbnRhaW5zIHplcm9zLiBUaGVzZSBhcnJheXMgYXJlCisgICAgICAgICMgcmVnYXJkZWQgYXMgQy1jb250aWd1b3VzIGJ5IE51bXB5IGFuZCBQeUJ1ZmZlcl9HZXRDb250aWd1b3VzKCksCisgICAgICAgICMgc28gdGhleSBhcmUgbm90IGNhdWdodCBieSB0aGUgdGVzdCBmb3IgQy1jb250aWd1aXR5IGluIG1lbW9yeV9jYXN0KCkuCisgICAgICAgIGl0ZW1zID0gWzEsMiwzXQorICAgICAgICBmb3Igc2hhcGUgaW4gKFswLDMsM10sIFszLDAsM10sIFswLDMsM10pOgorICAgICAgICAgICAgZXggPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1zaGFwZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShleC5jX2NvbnRpZ3VvdXMpCisgICAgICAgICAgICBtc3JjID0gbWVtb3J5dmlldyhleCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbXNyYy5jYXN0LCAnYycpCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X3N0cnVjdF9tb2R1bGUoc2VsZik6CisKKyAgICAgICAgY2xhc3MgSU5UKG9iamVjdCk6CisgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgdmFsKToKKyAgICAgICAgICAgICAgICBzZWxmLnZhbCA9IHZhbAorICAgICAgICAgICAgZGVmIF9faW50X18oc2VsZik6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYudmFsCisKKyAgICAgICAgY2xhc3MgSURYKG9iamVjdCk6CisgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgdmFsKToKKyAgICAgICAgICAgICAgICBzZWxmLnZhbCA9IHZhbAorICAgICAgICAgICAgZGVmIF9faW5kZXhfXyhzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi52YWwKKworICAgICAgICBkZWYgZigpOiByZXR1cm4gNworCisgICAgICAgIHZhbHVlcyA9IFtJTlQoOSksIElEWCg5KSwKKyAgICAgICAgICAgICAgICAgIDIuMiszaiwgRGVjaW1hbCgiLTIxLjEiKSwgMTIuMiwgRnJhY3Rpb24oNSwgMiksCisgICAgICAgICAgICAgICAgICBbMSwyLDNdLCB7NCw1LDZ9LCB7Nzo4fSwgKCksICg5LCksCisgICAgICAgICAgICAgICAgICBUcnVlLCBGYWxzZSwgTm9uZSwgTm90SW1wbGVtZW50ZWQsCisgICAgICAgICAgICAgICAgICBiJ2EnLCBiJ2FiYycsIGJ5dGVhcnJheShiJ2EnKSwgYnl0ZWFycmF5KGInYWJjJyksCisgICAgICAgICAgICAgICAgICAnYScsICdhYmMnLCByJ2EnLCByJ2FiYycsCisgICAgICAgICAgICAgICAgICBmLCBsYW1iZGEgeDogeF0KKworICAgICAgICBmb3IgZm10LCBpdGVtcywgaXRlbSBpbiBpdGVyX2Zvcm1hdCgxMCwgJ21lbW9yeXZpZXcnKToKKyAgICAgICAgICAgIGV4ID0gbmRhcnJheShpdGVtcywgc2hhcGU9WzEwXSwgZm9ybWF0PWZtdCwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgICAgICBuZCA9IG5kYXJyYXkoaXRlbXMsIHNoYXBlPVsxMF0sIGZvcm1hdD1mbXQsIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisKKyAgICAgICAgICAgIHN0cnVjdC5wYWNrX2ludG8oZm10LCBuZCwgMCwgaXRlbSkKKyAgICAgICAgICAgIG1bMF0gPSBpdGVtCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bMF0sIG5kWzBdKQorCisgICAgICAgICAgICBpdGVtc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShmbXQpCisgICAgICAgICAgICBpZiAnUCcgaW4gZm10OgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgIGZvciB2IGluIHZhbHVlczoKKyAgICAgICAgICAgICAgICBzdHJ1Y3RfZXJyID0gTm9uZQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgc3RydWN0LnBhY2tfaW50byhmbXQsIG5kLCBpdGVtc2l6ZSwgdikKKyAgICAgICAgICAgICAgICBleGNlcHQgc3RydWN0LmVycm9yOgorICAgICAgICAgICAgICAgICAgICBzdHJ1Y3RfZXJyID0gc3RydWN0LmVycm9yCisKKyAgICAgICAgICAgICAgICBtdl9lcnIgPSBOb25lCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBtWzFdID0gdgorICAgICAgICAgICAgICAgIGV4Y2VwdCAoVHlwZUVycm9yLCBWYWx1ZUVycm9yKSBhcyBlOgorICAgICAgICAgICAgICAgICAgICBtdl9lcnIgPSBlLl9fY2xhc3NfXworCisgICAgICAgICAgICAgICAgaWYgc3RydWN0X2VyciBvciBtdl9lcnI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3Qoc3RydWN0X2VyciwgTm9uZSkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vdChtdl9lcnIsIE5vbmUpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtWzFdLCBuZFsxXSkKKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfY2FzdF96ZXJvX3N0cmlkZXMoc2VsZik6CisgICAgICAgICMgQ2FzdHMgYXJlIHVuZGVmaW5lZCBpZiBzdHJpZGVzIGNvbnRhaW5zIHplcm9zLiBUaGVzZSBhcnJheXMgYXJlCisgICAgICAgICMgKHNvbWV0aW1lcyEpIHJlZ2FyZGVkIGFzIEMtY29udGlndW91cyBieSBOdW1weSwgYnV0IG5vdCBieQorICAgICAgICAjIFB5QnVmZmVyX0dldENvbnRpZ3VvdXMoKS4KKyAgICAgICAgZXggPSBuZGFycmF5KFsxLDIsM10sIHNoYXBlPVszXSwgc3RyaWRlcz1bMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZXguY19jb250aWd1b3VzKQorICAgICAgICBtc3JjID0gbWVtb3J5dmlldyhleCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtc3JjLmNhc3QsICdjJykKKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfY2FzdF9pbnZhbGlkKHNlbGYpOgorICAgICAgICAjIGludmFsaWQgZm9ybWF0CisgICAgICAgIGZvciBzZm10IGluIE5PTl9CWVRFX0ZPUk1BVDoKKyAgICAgICAgICAgIHNmb3JtYXQgPSAnQCcgKyBzZm10IGlmIHJhbmRyYW5nZSgyKSBlbHNlIHNmbXQKKyAgICAgICAgICAgIHNzaXplID0gc3RydWN0LmNhbGNzaXplKHNmb3JtYXQpCisgICAgICAgICAgICBmb3IgZGZtdCBpbiBOT05fQllURV9GT1JNQVQ6CisgICAgICAgICAgICAgICAgZGZvcm1hdCA9ICdAJyArIGRmbXQgaWYgcmFuZHJhbmdlKDIpIGVsc2UgZGZtdAorICAgICAgICAgICAgICAgIGRzaXplID0gc3RydWN0LmNhbGNzaXplKGRmb3JtYXQpCisgICAgICAgICAgICAgICAgZXggPSBuZGFycmF5KGxpc3QocmFuZ2UoMzIpKSwgc2hhcGU9WzMyLy9zc2l6ZV0sIGZvcm1hdD1zZm9ybWF0KQorICAgICAgICAgICAgICAgIG1zcmMgPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbXNyYy5jYXN0LCBkZm10LCBbMzIvL2RzaXplXSkKKworICAgICAgICBmb3Igc2ZtdCwgc2l0ZW1zLCBfIGluIGl0ZXJfZm9ybWF0KDEpOgorICAgICAgICAgICAgZXggPSBuZGFycmF5KHNpdGVtcywgc2hhcGU9WzFdLCBmb3JtYXQ9c2ZtdCkKKyAgICAgICAgICAgIG1zcmMgPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICAgICAgZm9yIGRmbXQsIF8sIF8gaW4gaXRlcl9mb3JtYXQoMSk6CisgICAgICAgICAgICAgICAgaWYgKG5vdCBpc19tZW1vcnl2aWV3X2Zvcm1hdChzZm10KSBvcgorICAgICAgICAgICAgICAgICAgICBub3QgaXNfbWVtb3J5dmlld19mb3JtYXQoZGZtdCkpOgorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtc3JjLmNhc3QsIGRmbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFszMi8vZHNpemVdKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBpc19ieXRlX2Zvcm1hdChzZm10KSBhbmQgbm90IGlzX2J5dGVfZm9ybWF0KGRmbXQpOgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtc3JjLmNhc3QsIGRmbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbMzIvL2RzaXplXSkKKworICAgICAgICAjIGludmFsaWQgc2hhcGUKKyAgICAgICAgc2l6ZV9oID0gc3RydWN0LmNhbGNzaXplKCdoJykKKyAgICAgICAgc2l6ZV9kID0gc3RydWN0LmNhbGNzaXplKCdkJykKKyAgICAgICAgZXggPSBuZGFycmF5KGxpc3QocmFuZ2UoMioyKnNpemVfZCkpLCBzaGFwZT1bMiwyLHNpemVfZF0sIGZvcm1hdD0naCcpCisgICAgICAgIG1zcmMgPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG1zcmMuY2FzdCwgc2hhcGU9WzIsMixzaXplX2hdLCBmb3JtYXQ9J2QnKQorCisgICAgICAgIGV4ID0gbmRhcnJheShsaXN0KHJhbmdlKDEyMCkpLCBzaGFwZT1bMSwyLDMsNCw1XSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisKKyAgICAgICAgIyBpbmNvcnJlY3QgbnVtYmVyIG9mIGFyZ3MKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtLmNhc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5jYXN0LCAxLCAyLCAzKQorCisgICAgICAgICMgaW5jb3JyZWN0IGRlc3QgZm9ybWF0IHR5cGUKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtLmNhc3QsIHt9KQorCisgICAgICAgICMgaW5jb3JyZWN0IGRlc3QgZm9ybWF0CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0uY2FzdCwgIlgiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtLmNhc3QsICJAWCIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0uY2FzdCwgIkBYWSIpCisKKyAgICAgICAgIyBkZXN0IGZvcm1hdCBub3QgaW1wbGVtZW50ZWQKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbS5jYXN0LCAiPUIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtLmNhc3QsICIhTCIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0uY2FzdCwgIjxQIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbS5jYXN0LCAiPmwiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtLmNhc3QsICJCSSIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0uY2FzdCwgInhCSSIpCisKKyAgICAgICAgIyBzcmMgZm9ybWF0IG5vdCBpbXBsZW1lbnRlZAorICAgICAgICBleCA9IG5kYXJyYXkoWygxLDIpLCAoMyw0KV0sIHNoYXBlPVsyXSwgZm9ybWF0PSJJSSIpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBtLl9fZ2V0aXRlbV9fLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBtLl9fc2V0aXRlbV9fLCAwLCA4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBtLnRvbGlzdCkKKworICAgICAgICAjIGluY29ycmVjdCBzaGFwZSB0eXBlCisgICAgICAgIGV4ID0gbmRhcnJheShsaXN0KHJhbmdlKDEyMCkpLCBzaGFwZT1bMSwyLDMsNCw1XSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5jYXN0LCAiQiIsIHNoYXBlPXt9KQorCisgICAgICAgICMgaW5jb3JyZWN0IHNoYXBlIGVsZW1lbnRzCisgICAgICAgIGV4ID0gbmRhcnJheShsaXN0KHJhbmdlKDEyMCkpLCBzaGFwZT1bMiozKjQqNV0pCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBtLmNhc3QsICJCIiwgc2hhcGU9WzIqKjY0XSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbS5jYXN0LCAiQiIsIHNoYXBlPVstMV0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0uY2FzdCwgIkIiLCBzaGFwZT1bMiwzLDQsNSw2LDcsLTFdKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtLmNhc3QsICJCIiwgc2hhcGU9WzIsMyw0LDUsNiw3LDBdKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG0uY2FzdCwgIkIiLCBzaGFwZT1bMiwzLDQsNSw2LDcsJ3gnXSkKKworICAgICAgICAjIE4tRCAtPiBOLUQgY2FzdAorICAgICAgICBleCA9IG5kYXJyYXkobGlzdChbOSBmb3IgXyBpbiByYW5nZSgzKjUqNyoxMSldKSwgc2hhcGU9WzMsNSw3LDExXSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5jYXN0LCAiSSIsIHNoYXBlPVsyLDMsNCw1XSkKKworICAgICAgICAjIGNhc3Qgd2l0aCBuZGltID4gNjQKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMTI4KSksIHNoYXBlPVsxMjhdLCBmb3JtYXQ9J0knKQorICAgICAgICBtID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbS5jYXN0LCAnSScsIFsxXSoxMjgpCisKKyAgICAgICAgIyB2aWV3LT5sZW4gbm90IGEgbXVsdGlwbGUgb2YgaXRlbXNpemUKKyAgICAgICAgZXggPSBuZGFycmF5KGxpc3QoWzkgZm9yIF8gaW4gcmFuZ2UoMyo1KjcqMTEpXSksIHNoYXBlPVszKjUqNyoxMV0pCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG0uY2FzdCwgIkkiLCBzaGFwZT1bMiwzLDQsNV0pCisKKyAgICAgICAgIyBwcm9kdWN0KHNoYXBlKSAqIGl0ZW1zaXplICE9IGJ1ZmZlciBzaXplCisgICAgICAgIGV4ID0gbmRhcnJheShsaXN0KFs5IGZvciBfIGluIHJhbmdlKDMqNSo3KjExKV0pLCBzaGFwZT1bMyo1KjcqMTFdKQorICAgICAgICBtID0gbWVtb3J5dmlldyhleCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtLmNhc3QsICJCIiwgc2hhcGU9WzIsMyw0LDVdKQorCisgICAgICAgICMgcHJvZHVjdChzaGFwZSkgKiBpdGVtc2l6ZSBvdmVyZmxvdworICAgICAgICBuZCA9IG5kYXJyYXkobGlzdChyYW5nZSgxMjgpKSwgc2hhcGU9WzEyOF0sIGZvcm1hdD0nSScpCisgICAgICAgIG0xID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMTI4KSksIHNoYXBlPVsxMjhdLCBmb3JtYXQ9J0InKQorICAgICAgICBtMiA9IG1lbW9yeXZpZXcobmQpCisgICAgICAgIGlmIHN5cy5tYXhzaXplID09IDIqKjYzLTE6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG0xLmNhc3QsICdCJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFs3LCA3LCA3MywgMTI3LCAzMzcsIDkyNzM3LCA2NDk2NTddKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbTEuY2FzdCwgJ0InLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWzIqKjIwLCAyKioyMCwgMioqMTAsIDIqKjEwLCAyKiozXSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0yLmNhc3QsICdJJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsyKioyMCwgMioqMjAsIDIqKjEwLCAyKioxMCwgMioqMV0pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG0xLmNhc3QsICdCJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsxLCAyMTQ3NDgzNjQ3XSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0xLmNhc3QsICdCJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsyKioxMCwgMioqMTAsIDIqKjUsIDIqKjUsIDIqKjFdKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbTIuY2FzdCwgJ0knLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWzIqKjEwLCAyKioxMCwgMioqNSwgMioqMywgMioqMV0pCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X2Nhc3Qoc2VsZik6CisgICAgICAgIGJ5dGVzcGVjID0gKAorICAgICAgICAgICgnQicsIGxhbWJkYSBleDogbGlzdChleC50b2J5dGVzKCkpKSwKKyAgICAgICAgICAoJ2InLCBsYW1iZGEgZXg6IFt4LTI1NiBpZiB4ID4gMTI3IGVsc2UgeCBmb3IgeCBpbiBsaXN0KGV4LnRvYnl0ZXMoKSldKSwKKyAgICAgICAgICAoJ2MnLCBsYW1iZGEgZXg6IFtieXRlcyhjaHIoeCksICdsYXRpbi0xJykgZm9yIHggaW4gbGlzdChleC50b2J5dGVzKCkpXSksCisgICAgICAgICkKKworICAgICAgICBkZWYgaXRlcl9yb3VuZHRyaXAoZXgsIG0sIGl0ZW1zLCBmbXQpOgorICAgICAgICAgICAgc3Jjc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShmbXQpCisgICAgICAgICAgICBmb3IgYnl0ZWZtdCwgdG9fYnl0ZWxpc3QgaW4gYnl0ZXNwZWM6CisKKyAgICAgICAgICAgICAgICBtMiA9IG0uY2FzdChieXRlZm10KQorICAgICAgICAgICAgICAgIGxzdCA9IHRvX2J5dGVsaXN0KGV4KQorICAgICAgICAgICAgICAgIHNlbGYudmVyaWZ5KG0yLCBvYmo9ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9MSwgZm10PWJ5dGVmbXQsIHJlYWRvbmx5PTAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmRpbT0xLCBzaGFwZT1bMzEqc3Jjc2l6ZV0sIHN0cmlkZXM9KDEsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsc3Q9bHN0LCBjYXN0PVRydWUpCisKKyAgICAgICAgICAgICAgICBtMyA9IG0yLmNhc3QoZm10KQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTMsIGV4KQorICAgICAgICAgICAgICAgIGxzdCA9IGV4LnRvbGlzdCgpCisgICAgICAgICAgICAgICAgc2VsZi52ZXJpZnkobTMsIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtc2l6ZT1zcmNzaXplLCBmbXQ9Zm10LCByZWFkb25seT0wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5kaW09MSwgc2hhcGU9WzMxXSwgc3RyaWRlcz0oc3Jjc2l6ZSwpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QsIGNhc3Q9VHJ1ZSkKKworICAgICAgICAjIGNhc3QgZnJvbSBuZGltID0gMCB0byBuZGltID0gMQorICAgICAgICBzcmNzaXplID0gc3RydWN0LmNhbGNzaXplKCdJJykKKyAgICAgICAgZXggPSBuZGFycmF5KDksIHNoYXBlPVtdLCBmb3JtYXQ9J0knKQorICAgICAgICBkZXN0aXRlbXMsIGRlc3RzaGFwZSA9IGNhc3RfaXRlbXMoZXgsICdCJywgMSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgIG0yID0gbS5jYXN0KCdCJykKKyAgICAgICAgc2VsZi52ZXJpZnkobTIsIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9MSwgZm10PSdCJywgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgbmRpbT0xLCBzaGFwZT1kZXN0c2hhcGUsIHN0cmlkZXM9KDEsKSwKKyAgICAgICAgICAgICAgICAgICAgbHN0PWRlc3RpdGVtcywgY2FzdD1UcnVlKQorCisgICAgICAgICMgY2FzdCBmcm9tIG5kaW0gPSAxIHRvIG5kaW0gPSAwCisgICAgICAgIGRlc3RzaXplID0gc3RydWN0LmNhbGNzaXplKCdJJykKKyAgICAgICAgZXggPSBuZGFycmF5KFs5XSpkZXN0c2l6ZSwgc2hhcGU9W2Rlc3RzaXplXSwgZm9ybWF0PSdCJykKKyAgICAgICAgZGVzdGl0ZW1zLCBkZXN0c2hhcGUgPSBjYXN0X2l0ZW1zKGV4LCAnSScsIGRlc3RzaXplLCBzaGFwZT1bXSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgIG0yID0gbS5jYXN0KCdJJywgc2hhcGU9W10pCisgICAgICAgIHNlbGYudmVyaWZ5KG0yLCBvYmo9ZXgsCisgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPWRlc3RzaXplLCBmbXQ9J0knLCByZWFkb25seT0xLAorICAgICAgICAgICAgICAgICAgICBuZGltPTAsIHNoYXBlPSgpLCBzdHJpZGVzPSgpLAorICAgICAgICAgICAgICAgICAgICBsc3Q9ZGVzdGl0ZW1zLCBjYXN0PVRydWUpCisKKyAgICAgICAgIyBhcnJheS5hcnJheTogcm91bmR0cmlwIHRvL2Zyb20gYnl0ZXMKKyAgICAgICAgZm9yIGZtdCwgaXRlbXMsIF8gaW4gaXRlcl9mb3JtYXQoMzEsICdhcnJheScpOgorICAgICAgICAgICAgZXggPSBhcnJheS5hcnJheShmbXQsIGl0ZW1zKQorICAgICAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgICAgICBpdGVyX3JvdW5kdHJpcChleCwgbSwgaXRlbXMsIGZtdCkKKworICAgICAgICAjIG5kYXJyYXk6IHJvdW5kdHJpcCB0by9mcm9tIGJ5dGVzCisgICAgICAgIGZvciBmbXQsIGl0ZW1zLCBfIGluIGl0ZXJfZm9ybWF0KDMxLCAnbWVtb3J5dmlldycpOgorICAgICAgICAgICAgZXggPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bMzFdLCBmb3JtYXQ9Zm10LCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICAgICAgaXRlcl9yb3VuZHRyaXAoZXgsIG0sIGl0ZW1zLCBmbXQpCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X2Nhc3RfMURfTkQoc2VsZik6CisgICAgICAgICMgQ2FzdCBiZXR3ZWVuIEMtY29udGlndW91cyBidWZmZXJzLiBBdCBsZWFzdCBvbmUgYnVmZmVyIG11c3QKKyAgICAgICAgIyBiZSAxRCwgYXQgbGVhc3Qgb25lIGZvcm1hdCBtdXN0IGJlICdjJywgJ2InIG9yICdCJy4KKyAgICAgICAgZm9yIF90c2hhcGUgaW4gZ2VuY2FzdHNoYXBlcygpOgorICAgICAgICAgICAgZm9yIGNoYXIgaW4gZm10ZGljdFsnQCddOgorICAgICAgICAgICAgICAgIHRmbXQgPSAoJycsICdAJylbcmFuZHJhbmdlKDIpXSArIGNoYXIKKyAgICAgICAgICAgICAgICB0c2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZSh0Zm10KQorICAgICAgICAgICAgICAgIG4gPSBwcm9kKF90c2hhcGUpICogdHNpemUKKyAgICAgICAgICAgICAgICBvYmogPSAnbWVtb3J5dmlldycgaWYgaXNfYnl0ZV9mb3JtYXQodGZtdCkgZWxzZSAnYnl0ZWZtdCcKKyAgICAgICAgICAgICAgICBmb3IgZm10LCBpdGVtcywgXyBpbiBpdGVyX2Zvcm1hdChuLCBvYmopOgorICAgICAgICAgICAgICAgICAgICBzaXplID0gc3RydWN0LmNhbGNzaXplKGZtdCkKKyAgICAgICAgICAgICAgICAgICAgc2hhcGUgPSBbbl0gaWYgbiA+IDAgZWxzZSBbXQorICAgICAgICAgICAgICAgICAgICB0c2hhcGUgPSBfdHNoYXBlICsgW3NpemVdCisKKyAgICAgICAgICAgICAgICAgICAgZXggPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1zaGFwZSwgZm9ybWF0PWZtdCkKKyAgICAgICAgICAgICAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisKKyAgICAgICAgICAgICAgICAgICAgdGl0ZW1zLCB0c2hhcGUgPSBjYXN0X2l0ZW1zKGV4LCB0Zm10LCB0c2l6ZSwgc2hhcGU9dHNoYXBlKQorCisgICAgICAgICAgICAgICAgICAgIGlmIHRpdGVtcyBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtLmNhc3QsIHRmbXQsIHRzaGFwZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgICAgIGlmIHRpdGVtcyA9PSAnbmFuJzoKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlICMgTmFOcyBpbiBsaXN0cyBhcmUgYSByZWNpcGUgZm9yIHRyb3VibGUuCisKKyAgICAgICAgICAgICAgICAgICAgIyAxRCAtPiBORAorICAgICAgICAgICAgICAgICAgICBuZCA9IG5kYXJyYXkodGl0ZW1zLCBzaGFwZT10c2hhcGUsIGZvcm1hdD10Zm10KQorCisgICAgICAgICAgICAgICAgICAgIG0yID0gbS5jYXN0KHRmbXQsIHNoYXBlPXRzaGFwZSkKKyAgICAgICAgICAgICAgICAgICAgbmRpbSA9IGxlbih0c2hhcGUpCisgICAgICAgICAgICAgICAgICAgIHN0cmlkZXMgPSBuZC5zdHJpZGVzCisgICAgICAgICAgICAgICAgICAgIGxzdCA9IG5kLnRvbGlzdCgpCisgICAgICAgICAgICAgICAgICAgIHNlbGYudmVyaWZ5KG0yLCBvYmo9ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPXRzaXplLCBmbXQ9dGZtdCwgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmRpbT1uZGltLCBzaGFwZT10c2hhcGUsIHN0cmlkZXM9c3RyaWRlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHN0PWxzdCwgY2FzdD1UcnVlKQorCisgICAgICAgICAgICAgICAgICAgICMgTkQgLT4gMUQKKyAgICAgICAgICAgICAgICAgICAgbTMgPSBtMi5jYXN0KGZtdCkKKyAgICAgICAgICAgICAgICAgICAgbTQgPSBtMi5jYXN0KGZtdCwgc2hhcGU9c2hhcGUpCisgICAgICAgICAgICAgICAgICAgIG5kaW0gPSBsZW4oc2hhcGUpCisgICAgICAgICAgICAgICAgICAgIHN0cmlkZXMgPSBleC5zdHJpZGVzCisgICAgICAgICAgICAgICAgICAgIGxzdCA9IGV4LnRvbGlzdCgpCisKKyAgICAgICAgICAgICAgICAgICAgc2VsZi52ZXJpZnkobTMsIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9c2l6ZSwgZm10PWZtdCwgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmRpbT1uZGltLCBzaGFwZT1zaGFwZSwgc3RyaWRlcz1zdHJpZGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsc3Q9bHN0LCBjYXN0PVRydWUpCisKKyAgICAgICAgICAgICAgICAgICAgc2VsZi52ZXJpZnkobTQsIG9iaj1leCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9c2l6ZSwgZm10PWZtdCwgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmRpbT1uZGltLCBzaGFwZT1zaGFwZSwgc3RyaWRlcz1zdHJpZGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsc3Q9bHN0LCBjYXN0PVRydWUpCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X3RvbGlzdChzZWxmKToKKworICAgICAgICAjIE1vc3QgdG9saXN0KCkgdGVzdHMgYXJlIGluIHNlbGYudmVyaWZ5KCkgZXRjLgorCisgICAgICAgIGEgPSBhcnJheS5hcnJheSgnaCcsIGxpc3QocmFuZ2UoLTYsIDYpKSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoYSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCBhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0udG9saXN0KCksIGEudG9saXN0KCkpCisKKyAgICAgICAgYSA9IGFbMjo6M10KKyAgICAgICAgbSA9IG1bMjo6M10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCBhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0udG9saXN0KCksIGEudG9saXN0KCkpCisKKyAgICAgICAgZXggPSBuZGFycmF5KGxpc3QocmFuZ2UoMiozKjUqNyoxMSkpLCBzaGFwZT1bMTEsMiw3LDMsNV0sIGZvcm1hdD0nTCcpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0udG9saXN0KCksIGV4LnRvbGlzdCgpKQorCisgICAgICAgIGV4ID0gbmRhcnJheShbKDIsIDUpLCAoNywgMTEpXSwgc2hhcGU9WzJdLCBmb3JtYXQ9J2xoJykKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE5vdEltcGxlbWVudGVkRXJyb3IsIG0udG9saXN0KQorCisgICAgICAgIGV4ID0gbmRhcnJheShbYicxMjM0NSddLCBzaGFwZT1bMV0sIGZvcm1hdD0icyIpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBtLnRvbGlzdCkKKworICAgICAgICBleCA9IG5kYXJyYXkoW2IiYSIsYiJiIixiImMiLGIiZCIsYiJlIixiImYiXSwgc2hhcGU9WzIsM10sIGZvcm1hdD0ncycpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBtLnRvbGlzdCkKKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfcmVwcihzZWxmKToKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoYnl0ZWFycmF5KDkpKQorICAgICAgICByID0gbS5fX3JlcHJfXygpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyLnN0YXJ0c3dpdGgoIjxtZW1vcnkiKSkKKworICAgICAgICBtLnJlbGVhc2UoKQorICAgICAgICByID0gbS5fX3JlcHJfXygpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyLnN0YXJ0c3dpdGgoIjxyZWxlYXNlZCIpKQorCisgICAgZGVmIHRlc3RfbWVtb3J5dmlld19zZXF1ZW5jZShzZWxmKToKKworICAgICAgICBmb3IgZm10IGluICgnZCcsICdmJyk6CisgICAgICAgICAgICBpbmYgPSBmbG9hdCgzZTQwMCkKKyAgICAgICAgICAgIGV4ID0gYXJyYXkuYXJyYXkoZm10LCBbMS4wLCBpbmYsIDMuMF0pCisgICAgICAgICAgICBtID0gbWVtb3J5dmlldyhleCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oMS4wLCBtKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbig1ZTcwMCwgbSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oMy4wLCBtKQorCisgICAgICAgIGV4ID0gbmRhcnJheSg5LjAsIFtdLCBmb3JtYXQ9J2YnKQorICAgICAgICBtID0gbWVtb3J5dmlldyhleCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBldmFsLCAiOS4wIGluIG0iLCBsb2NhbHMoKSkKKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfaW5kZXgoc2VsZik6CisKKyAgICAgICAgIyBuZGltID0gMAorICAgICAgICBleCA9IG5kYXJyYXkoMTIuNSwgc2hhcGU9W10sIGZvcm1hdD0nZCcpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bKCldLCAxMi41KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bLi4uXSwgbSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtWy4uLl0sIGV4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG0uX19nZXRpdGVtX18sIDApCisKKyAgICAgICAgZXggPSBuZGFycmF5KCgxLDIsMyksIHNoYXBlPVtdLCBmb3JtYXQ9J2lpaScpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBtLl9fZ2V0aXRlbV9fLCAoKSkKKworICAgICAgICAjIHJhbmdlCisgICAgICAgIGV4ID0gbmRhcnJheShsaXN0KHJhbmdlKDcpKSwgc2hhcGU9WzddLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW5kZXhFcnJvciwgbS5fX2dldGl0ZW1fXywgMioqNjQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5fX2dldGl0ZW1fXywgMi4wKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG0uX19nZXRpdGVtX18sIDAuMCkKKworICAgICAgICAjIG91dCBvZiBib3VuZHMKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW5kZXhFcnJvciwgbS5fX2dldGl0ZW1fXywgLTgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIG0uX19nZXRpdGVtX18sIDgpCisKKyAgICAgICAgIyBOb3QgaW1wbGVtZW50ZWQ6IG11bHRpZGltZW5zaW9uYWwgc3ViLXZpZXdzCisgICAgICAgIGV4ID0gbmRhcnJheShsaXN0KHJhbmdlKDEyKSksIHNoYXBlPVszLDRdLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTm90SW1wbGVtZW50ZWRFcnJvciwgbS5fX2dldGl0ZW1fXywgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTm90SW1wbGVtZW50ZWRFcnJvciwgbS5fX3NldGl0ZW1fXywgMCwgOSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTm90SW1wbGVtZW50ZWRFcnJvciwgbS5fX2dldGl0ZW1fXywgMCkKKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfYXNzaWduKHNlbGYpOgorCisgICAgICAgICMgbmRpbSA9IDAKKyAgICAgICAgZXggPSBuZGFycmF5KDEyLjUsIHNoYXBlPVtdLCBmb3JtYXQ9J2YnLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgIG1bKCldID0gMjIuNQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bKCldLCAyMi41KQorICAgICAgICBtWy4uLl0gPSAyMy41CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVsoKV0sIDIzLjUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5fX3NldGl0ZW1fXywgMCwgMjQuNykKKworICAgICAgICAjIHJlYWQtb25seQorICAgICAgICBleCA9IG5kYXJyYXkobGlzdChyYW5nZSg3KSksIHNoYXBlPVs3XSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5fX3NldGl0ZW1fXywgMiwgMTApCisKKyAgICAgICAgIyByYW5nZQorICAgICAgICBleCA9IG5kYXJyYXkobGlzdChyYW5nZSg3KSksIHNoYXBlPVs3XSwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIG0uX19zZXRpdGVtX18sIDIqKjY0LCA5KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG0uX19zZXRpdGVtX18sIDIuMCwgMTApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5fX3NldGl0ZW1fXywgMC4wLCAxMSkKKworICAgICAgICAjIG91dCBvZiBib3VuZHMKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW5kZXhFcnJvciwgbS5fX3NldGl0ZW1fXywgLTgsIDIwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yLCBtLl9fc2V0aXRlbV9fLCA4LCAyNSkKKworICAgICAgICAjIHBhY2tfc2luZ2xlKCkgc3VjY2VzczoKKyAgICAgICAgZm9yIGZtdCBpbiBmbXRkaWN0WydAJ106CisgICAgICAgICAgICBpZiBmbXQgPT0gJ2MnIG9yIGZtdCA9PSAnPyc6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGV4ID0gbmRhcnJheShbMSwyLDNdLCBzaGFwZT1bM10sIGZvcm1hdD1mbXQsIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgICAgICBpID0gcmFuZHJhbmdlKC0zLCAzKQorICAgICAgICAgICAgbVtpXSA9IDgKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVtpXSwgOCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVtpXSwgZXhbaV0pCisKKyAgICAgICAgZXggPSBuZGFycmF5KFtiJzEnLCBiJzInLCBiJzMnXSwgc2hhcGU9WzNdLCBmb3JtYXQ9J2MnLAorICAgICAgICAgICAgICAgICAgICAgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBtWzJdID0gYic5JworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bMl0sIGInOScpCisKKyAgICAgICAgZXggPSBuZGFycmF5KFtUcnVlLCBGYWxzZSwgVHJ1ZV0sIHNoYXBlPVszXSwgZm9ybWF0PSc/JywKKyAgICAgICAgICAgICAgICAgICAgIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICBtID0gbWVtb3J5dmlldyhleCkKKyAgICAgICAgbVsxXSA9IFRydWUKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtWzFdLCBUcnVlKQorCisgICAgICAgICMgcGFja19zaW5nbGUoKSBleGNlcHRpb25zOgorICAgICAgICBuZCA9IG5kYXJyYXkoW2IneCddLCBzaGFwZT1bMV0sIGZvcm1hdD0nYycsIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICBtID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtLl9fc2V0aXRlbV9fLCAwLCAxMDApCisKKyAgICAgICAgZXggPSBuZGFycmF5KGxpc3QocmFuZ2UoMTIwKSksIHNoYXBlPVsxLDIsMyw0LDVdLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgbTEgPSBtZW1vcnl2aWV3KGV4KQorCisgICAgICAgIGZvciBmbXQsIF9yYW5nZSBpbiBmbXRkaWN0WydAJ10uaXRlbXMoKToKKyAgICAgICAgICAgIGlmIChmbXQgPT0gJz8nKTogIyBQeU9iamVjdF9Jc1RydWUoKSBhY2NlcHRzIGFueXRoaW5nCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGlmIGZtdCA9PSAnYyc6ICMgc3BlY2lhbCBjYXNlIHRlc3RlZCBhYm92ZQorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBtMiA9IG0xLmNhc3QoZm10KQorICAgICAgICAgICAgbG8sIGhpID0gX3JhbmdlCisgICAgICAgICAgICBpZiBmbXQgPT0gJ2QnIG9yIGZtdCA9PSAnZic6CisgICAgICAgICAgICAgICAgbG8sIGhpID0gLTIqKjEwMjQsIDIqKjEwMjQKKyAgICAgICAgICAgIGlmIGZtdCAhPSAnUCc6ICMgUHlMb25nX0FzVm9pZFB0cigpIGFjY2VwdHMgbmVnYXRpdmUgbnVtYmVycworICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0yLl9fc2V0aXRlbV9fLCAwLCBsby0xKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbTIuX19zZXRpdGVtX18sIDAsICJ4eXoiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbTIuX19zZXRpdGVtX18sIDAsIGhpKQorCisgICAgICAgICMgaW52YWxpZCBpdGVtCisgICAgICAgIG0yID0gbTEuY2FzdCgnYycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0yLl9fc2V0aXRlbV9fLCAwLCBiJ1x4ZmZceGZmJykKKworICAgICAgICAjIGZvcm1hdCBub3QgaW1wbGVtZW50ZWQKKyAgICAgICAgZXggPSBuZGFycmF5KGxpc3QocmFuZ2UoMSkpLCBzaGFwZT1bMV0sIGZvcm1hdD0ieEwiLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoZXgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE5vdEltcGxlbWVudGVkRXJyb3IsIG0uX19zZXRpdGVtX18sIDAsIDEpCisKKyAgICAgICAgZXggPSBuZGFycmF5KFtiJzEyMzQ1J10sIHNoYXBlPVsxXSwgZm9ybWF0PSJzIiwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBtLl9fc2V0aXRlbV9fLCAwLCAxKQorCisgICAgICAgICMgTm90IGltcGxlbWVudGVkOiBtdWx0aWRpbWVuc2lvbmFsIHN1Yi12aWV3cworICAgICAgICBleCA9IG5kYXJyYXkobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bMyw0XSwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE5vdEltcGxlbWVudGVkRXJyb3IsIG0uX19zZXRpdGVtX18sIDAsIFsyLCAzXSkKKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfc2xpY2Uoc2VsZik6CisKKyAgICAgICAgZXggPSBuZGFycmF5KGxpc3QocmFuZ2UoMTIpKSwgc2hhcGU9WzEyXSwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGV4KQorCisgICAgICAgICMgemVybyBzdGVwCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0uX19nZXRpdGVtX18sIHNsaWNlKDAsMiwwKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbS5fX3NldGl0ZW1fXywgc2xpY2UoMCwyLDApLAorICAgICAgICAgICAgICAgICAgICAgICAgICBieXRlYXJyYXkoWzEsMl0pKQorCisgICAgICAgICMgaW52YWxpZCBzbGljZSBrZXkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtLl9fZ2V0aXRlbV9fLCAoKSkKKworICAgICAgICAjIG11bHRpZGltZW5zaW9uYWwgc2xpY2VzCisgICAgICAgIGV4ID0gbmRhcnJheShsaXN0KHJhbmdlKDEyKSksIHNoYXBlPVsxMl0sIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICBtID0gbWVtb3J5dmlldyhleCkKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBtLl9fZ2V0aXRlbV9fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAoc2xpY2UoMCwyLDEpLCBzbGljZSgwLDIsMSkpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBtLl9fc2V0aXRlbV9fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAoc2xpY2UoMCwyLDEpLCBzbGljZSgwLDIsMSkpLCBieXRlYXJyYXkoWzEsMl0pKQorCisgICAgICAgICMgaW52YWxpZCBzbGljZSB0dXBsZQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG0uX19nZXRpdGVtX18sIChzbGljZSgwLDIsMSksIHt9KSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtLl9fc2V0aXRlbV9fLCAoc2xpY2UoMCwyLDEpLCB7fSksCisgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5dGVhcnJheShbMSwyXSkpCisKKyAgICAgICAgIyBydmFsdWUgaXMgbm90IGFuIGV4cG9ydGVyCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5fX3NldGl0ZW1fXywgc2xpY2UoMCwxLDEpLCBbMV0pCisKKyAgICAgICAgIyBub24tY29udGlndW91cyBzbGljZSBhc3NpZ25tZW50CisgICAgICAgIGZvciBmbGFncyBpbiAoMCwgTkRfUElMKToKKyAgICAgICAgICAgIGV4MSA9IG5kYXJyYXkobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bMTJdLCBzdHJpZGVzPVstMV0sIG9mZnNldD0xMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3M9TkRfV1JJVEFCTEV8ZmxhZ3MpCisgICAgICAgICAgICBleDIgPSBuZGFycmF5KGxpc3QocmFuZ2UoMjQpKSwgc2hhcGU9WzEyXSwgc3RyaWRlcz1bMl0sIGZsYWdzPWZsYWdzKQorICAgICAgICAgICAgbTEgPSBtZW1vcnl2aWV3KGV4MSkKKyAgICAgICAgICAgIG0yID0gbWVtb3J5dmlldyhleDIpCisKKyAgICAgICAgICAgIGV4MVsyOjVdID0gZXgxWzI6NV0KKyAgICAgICAgICAgIG0xWzI6NV0gPSBtMlsyOjVdCisKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTEsIGV4MSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTIsIGV4MikKKworICAgICAgICAgICAgZXgxWzE6M11bOjotMV0gPSBleDJbMDoyXVs6OjFdCisgICAgICAgICAgICBtMVsxOjNdWzo6LTFdID0gbTJbMDoyXVs6OjFdCisKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTEsIGV4MSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTIsIGV4MikKKworICAgICAgICAgICAgZXgxWzQ6MTotMl1bOjotMV0gPSBleDFbMTo0OjJdWzo6MV0KKyAgICAgICAgICAgIG0xWzQ6MTotMl1bOjotMV0gPSBtMVsxOjQ6Ml1bOjoxXQorCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0xLCBleDEpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0yLCBleDIpCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X2FycmF5KHNlbGYpOgorCisgICAgICAgIGRlZiBjbXB0ZXN0KHRlc3RjYXNlLCBhLCBiLCBtLCBzaW5nbGVpdGVtKToKKyAgICAgICAgICAgIGZvciBpLCBfIGluIGVudW1lcmF0ZShhKToKKyAgICAgICAgICAgICAgICBhaSA9IGFbaV0KKyAgICAgICAgICAgICAgICBtaSA9IG1baV0KKyAgICAgICAgICAgICAgICB0ZXN0Y2FzZS5hc3NlcnRFcXVhbChhaSwgbWkpCisgICAgICAgICAgICAgICAgYVtpXSA9IHNpbmdsZWl0ZW0KKyAgICAgICAgICAgICAgICBpZiBzaW5nbGVpdGVtICE9IGFpOgorICAgICAgICAgICAgICAgICAgICB0ZXN0Y2FzZS5hc3NlcnROb3RFcXVhbChhLCBtKQorICAgICAgICAgICAgICAgICAgICB0ZXN0Y2FzZS5hc3NlcnROb3RFcXVhbChhLCBiKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHRlc3RjYXNlLmFzc2VydEVxdWFsKGEsIG0pCisgICAgICAgICAgICAgICAgICAgIHRlc3RjYXNlLmFzc2VydEVxdWFsKGEsIGIpCisgICAgICAgICAgICAgICAgbVtpXSA9IHNpbmdsZWl0ZW0KKyAgICAgICAgICAgICAgICB0ZXN0Y2FzZS5hc3NlcnRFcXVhbChhLCBtKQorICAgICAgICAgICAgICAgIHRlc3RjYXNlLmFzc2VydEVxdWFsKGIsIG0pCisgICAgICAgICAgICAgICAgYVtpXSA9IGFpCisgICAgICAgICAgICAgICAgbVtpXSA9IG1pCisKKyAgICAgICAgZm9yIG4gaW4gcmFuZ2UoMSwgNSk6CisgICAgICAgICAgICBmb3IgZm10LCBpdGVtcywgc2luZ2xlaXRlbSBpbiBpdGVyX2Zvcm1hdChuLCAnYXJyYXknKToKKyAgICAgICAgICAgICAgICBmb3IgbHNsaWNlIGluIGdlbnNsaWNlcyhuKToKKyAgICAgICAgICAgICAgICAgICAgZm9yIHJzbGljZSBpbiBnZW5zbGljZXMobik6CisKKyAgICAgICAgICAgICAgICAgICAgICAgIGEgPSBhcnJheS5hcnJheShmbXQsIGl0ZW1zKQorICAgICAgICAgICAgICAgICAgICAgICAgYiA9IGFycmF5LmFycmF5KGZtdCwgaXRlbXMpCisgICAgICAgICAgICAgICAgICAgICAgICBtID0gbWVtb3J5dmlldyhiKQorCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0sIGEpCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0udG9saXN0KCksIGEudG9saXN0KCkpCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0udG9ieXRlcygpLCBhLnRvYnl0ZXMoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG0pLCBsZW4oYSkpCisKKyAgICAgICAgICAgICAgICAgICAgICAgIGNtcHRlc3Qoc2VsZiwgYSwgYiwgbSwgc2luZ2xlaXRlbSkKKworICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXlfZXJyID0gTm9uZQorICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZV9yZXNpemUgPSBOb25lCisgICAgICAgICAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWwgPSBhW2xzbGljZV0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhciA9IGFbcnNsaWNlXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFbbHNsaWNlXSA9IGFbcnNsaWNlXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVfcmVzaXplID0gbGVuKGFsKSAhPSBsZW4oYXIpCisgICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXlfZXJyID0gZS5fX2NsYXNzX18KKworICAgICAgICAgICAgICAgICAgICAgICAgbV9lcnIgPSBOb25lCisgICAgICAgICAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbVtsc2xpY2VdID0gbVtyc2xpY2VdCisgICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbV9lcnIgPSBlLl9fY2xhc3NfXworCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBoYXZlX3Jlc2l6ZTogIyBtZW1vcnl2aWV3IGNhbm5vdCBjaGFuZ2Ugc2hhcGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzKG1fZXJyLCBWYWx1ZUVycm9yKQorICAgICAgICAgICAgICAgICAgICAgICAgZWxpZiBtX2VyciBvciBhcnJheV9lcnI6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhtX2VyciwgYXJyYXlfZXJyKQorICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0sIGEpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnRvbGlzdCgpLCBhLnRvbGlzdCgpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS50b2J5dGVzKCksIGEudG9ieXRlcygpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNtcHRlc3Qoc2VsZiwgYSwgYiwgbSwgc2luZ2xlaXRlbSkKKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfY29tcGFyZShzZWxmKToKKworICAgICAgICBhID0gYXJyYXkuYXJyYXkoJ0wnLCBbMSwgMiwgM10pCisgICAgICAgIGIgPSBhcnJheS5hcnJheSgnTCcsIFsxLCAyLCA3XSkKKworICAgICAgICAjIE9yZGVyaW5nIGNvbXBhcmlzb25zIHJhaXNlOgorICAgICAgICB2ID0gbWVtb3J5dmlldyhhKQorICAgICAgICB3ID0gbWVtb3J5dmlldyhiKQorICAgICAgICBmb3IgYXR0ciBpbiAoJ19fbHRfXycsICdfX2xlX18nLCAnX19ndF9fJywgJ19fZ2VfXycpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhnZXRhdHRyKHYsIGF0dHIpKHcpLCBOb3RJbXBsZW1lbnRlZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoZ2V0YXR0cihhLCBhdHRyKSh2KSwgTm90SW1wbGVtZW50ZWQpCisKKyAgICAgICAgIyBSZWxlYXNlZCB2aWV3cyBjb21wYXJlIGVxdWFsIHRvIHRoZW1zZWx2ZXM6CisgICAgICAgIHYgPSBtZW1vcnl2aWV3KGEpCisgICAgICAgIHYucmVsZWFzZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgdikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCBhKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGEsIHYpCisKKyAgICAgICAgdiA9IG1lbW9yeXZpZXcoYSkKKyAgICAgICAgdyA9IG1lbW9yeXZpZXcoYSkKKyAgICAgICAgdy5yZWxlYXNlKCkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCB3KQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHcsIHYpCisKKyAgICAgICAgIyBPcGVyYW5kIGRvZXMgbm90IGltcGxlbWVudCB0aGUgYnVmZmVyIHByb3RvY29sOgorICAgICAgICB2ID0gbWVtb3J5dmlldyhhKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIFsxLCAyLCAzXSkKKworICAgICAgICAjIERpZmZlcmVudCBmb3JtYXRzOgorICAgICAgICBjID0gYXJyYXkuYXJyYXkoJ2wnLCBbMSwgMiwgM10pCisgICAgICAgIHYgPSBtZW1vcnl2aWV3KGEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgYykKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChjLCB2KQorCisgICAgICAgICMgTm90IGltcGxlbWVudGVkIGZvcm1hdHMuIFVnbHksIGJ1dCBpbmV2aXRhYmxlLiBUaGlzIGlzIHRoZSBzYW1lIGFzCisgICAgICAgICMgaXNzdWUgIzI1MzE6IGVxdWFsaXR5IGlzIGFsc28gdXNlZCBmb3IgbWVtYmVyc2hpcCB0ZXN0aW5nIGFuZCBtdXN0CisgICAgICAgICMgcmV0dXJuIGEgcmVzdWx0LgorICAgICAgICBhID0gbmRhcnJheShbKDEsIDEuNSksICgyLCAyLjcpXSwgc2hhcGU9WzJdLCBmb3JtYXQ9J2xkJykKKyAgICAgICAgdiA9IG1lbW9yeXZpZXcoYSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCBhKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGEsIHYpCisKKyAgICAgICAgYSA9IG5kYXJyYXkoW2InMTIzNDUnXSwgc2hhcGU9WzFdLCBmb3JtYXQ9InMiKQorICAgICAgICB2ID0gbWVtb3J5dmlldyhhKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIGEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoYSwgdikKKworICAgICAgICBuZCA9IG5kYXJyYXkoWygxLDEsMSksICgyLDIsMiksICgzLDMsMyldLCBzaGFwZT1bM10sIGZvcm1hdD0naWlpJykKKyAgICAgICAgdiA9IG1lbW9yeXZpZXcobmQpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgbmQpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobmQsIHYpCisKKyAgICAgICAgIyAnQCcgcHJlZml4IGNhbiBiZSBkcm9wcGVkOgorICAgICAgICBuZDEgPSBuZGFycmF5KFsxLDIsM10sIHNoYXBlPVszXSwgZm9ybWF0PSdAaScpCisgICAgICAgIG5kMiA9IG5kYXJyYXkoWzEsMiwzXSwgc2hhcGU9WzNdLCBmb3JtYXQ9J2knKQorICAgICAgICB2ID0gbWVtb3J5dmlldyhuZDEpCisgICAgICAgIHcgPSBtZW1vcnl2aWV3KG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCB3KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcsIHYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kMiwgdikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQxLCB3KQorCisgICAgICAgICMgbmRpbSA9IDAKKyAgICAgICAgbmQxID0gbmRhcnJheSgxNzI5LCBzaGFwZT1bXSwgZm9ybWF0PSdATCcpCisgICAgICAgIG5kMiA9IG5kYXJyYXkoMTcyOSwgc2hhcGU9W10sIGZvcm1hdD0nTCcsIGZsYWdzPU5EX1dSSVRBQkxFKQorICAgICAgICB2ID0gbWVtb3J5dmlldyhuZDEpCisgICAgICAgIHcgPSBtZW1vcnl2aWV3KG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCB3KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcsIHYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kMiwgdikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmQxLCB3KQorCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uodi5fX25lX18odykpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uody5fX25lX18odikpCisKKyAgICAgICAgd1soKV0gPSAxNzI4CisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgdykKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh3LCB2KQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChuZDIsIHYpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodywgbmQxKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKG5kMSwgdykKKworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHYuX19lcV9fKHcpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHcuX19lcV9fKHYpKQorCisgICAgICAgIG5kID0gbmRhcnJheShsaXN0KHJhbmdlKDEyKSksIHNoYXBlPVsxMl0sIGZsYWdzPU5EX1dSSVRBQkxFfE5EX1BJTCkKKyAgICAgICAgZXggPSBuZGFycmF5KGxpc3QocmFuZ2UoMTIpKSwgc2hhcGU9WzEyXSwgZmxhZ3M9TkRfV1JJVEFCTEV8TkRfUElMKQorICAgICAgICBtID0gbWVtb3J5dmlldyhleCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0sIG5kKQorICAgICAgICBtWzldID0gMTAwCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobSwgbmQpCisKKyAgICAgICAgIyBuZGltID0gMTogY29udGlndW91cworICAgICAgICBuZDEgPSBuZGFycmF5KFstNTI5LCA1NzYsIC02MjUsIDY3NiwgLTcyOV0sIHNoYXBlPVs1XSwgZm9ybWF0PSdAaCcpCisgICAgICAgIG5kMiA9IG5kYXJyYXkoWy01MjksIDU3NiwgLTYyNSwgNjc2LCA3MjldLCBzaGFwZT1bNV0sIGZvcm1hdD0nQGgnKQorICAgICAgICB2ID0gbWVtb3J5dmlldyhuZDEpCisgICAgICAgIHcgPSBtZW1vcnl2aWV3KG5kMikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgbmQyKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHcsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCB3KQorCisgICAgICAgICMgbmRpbSA9IDE6IG5vbi1jb250aWd1b3VzCisgICAgICAgIG5kMSA9IG5kYXJyYXkoWy01MjksIC02MjUsIC03MjldLCBzaGFwZT1bM10sIGZvcm1hdD0nQGgnKQorICAgICAgICBuZDIgPSBuZGFycmF5KFstNTI5LCA1NzYsIC02MjUsIDY3NiwgLTcyOV0sIHNoYXBlPVs1XSwgZm9ybWF0PSdAaCcpCisgICAgICAgIHYgPSBtZW1vcnl2aWV3KG5kMSkKKyAgICAgICAgdyA9IG1lbW9yeXZpZXcobmQyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQyWzo6Ml0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod1s6OjJdLCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgd1s6OjJdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHZbOjotMV0sIHdbOjotMl0pCisKKyAgICAgICAgIyBuZGltID0gMTogbm9uLWNvbnRpZ3VvdXMsIHN1Ym9mZnNldHMKKyAgICAgICAgbmQxID0gbmRhcnJheShbLTUyOSwgLTYyNSwgLTcyOV0sIHNoYXBlPVszXSwgZm9ybWF0PSdAaCcpCisgICAgICAgIG5kMiA9IG5kYXJyYXkoWy01MjksIDU3NiwgLTYyNSwgNjc2LCAtNzI5XSwgc2hhcGU9WzVdLCBmb3JtYXQ9J0BoJywKKyAgICAgICAgICAgICAgICAgICAgICBmbGFncz1ORF9QSUwpCisgICAgICAgIHYgPSBtZW1vcnl2aWV3KG5kMSkKKyAgICAgICAgdyA9IG1lbW9yeXZpZXcobmQyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQyWzo6Ml0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod1s6OjJdLCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgd1s6OjJdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHZbOjotMV0sIHdbOjotMl0pCisKKyAgICAgICAgIyBuZGltID0gMTogemVyb3MgaW4gc2hhcGUKKyAgICAgICAgbmQxID0gbmRhcnJheShbOTAwLCA5NjFdLCBzaGFwZT1bMF0sIGZvcm1hdD0nQGgnKQorICAgICAgICBuZDIgPSBuZGFycmF5KFstOTAwLCAtOTYxXSwgc2hhcGU9WzBdLCBmb3JtYXQ9J0BoJykKKyAgICAgICAgdiA9IG1lbW9yeXZpZXcobmQxKQorICAgICAgICB3ID0gbWVtb3J5dmlldyhuZDIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodywgbmQyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgdykKKworICAgICAgICAjIG5kaW0gPSAxOiB6ZXJvIHN0cmlkZXMKKyAgICAgICAgbmQxID0gbmRhcnJheShbOTAwLCA5MDAsIDkwMCwgOTAwXSwgc2hhcGU9WzRdLCBmb3JtYXQ9J0BMJykKKyAgICAgICAgbmQyID0gbmRhcnJheShbOTAwXSwgc2hhcGU9WzRdLCBzdHJpZGVzPVswXSwgZm9ybWF0PSdMJykKKyAgICAgICAgdiA9IG1lbW9yeXZpZXcobmQxKQorICAgICAgICB3ID0gbWVtb3J5dmlldyhuZDIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodywgbmQyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgdykKKworICAgICAgICBuID0gMTAKKyAgICAgICAgZm9yIGNoYXIgaW4gZm10ZGljdFsnQG0nXToKKyAgICAgICAgICAgIGZtdCwgaXRlbXMsIHNpbmdsZWl0ZW0gPSByYW5kaXRlbXMobiwgJ21lbW9yeXZpZXcnLCAnQCcsIGNoYXIpCisgICAgICAgICAgICBmb3IgZmxhZ3MgaW4gKDAsIE5EX1BJTCk6CisgICAgICAgICAgICAgICAgbmQgPSBuZGFycmF5KGl0ZW1zLCBzaGFwZT1bbl0sIGZvcm1hdD1mbXQsIGZsYWdzPWZsYWdzKQorICAgICAgICAgICAgICAgIG0gPSBtZW1vcnl2aWV3KG5kKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobSwgbmQpCisKKyAgICAgICAgICAgICAgICBuZCA9IG5kWzo6LTNdCisgICAgICAgICAgICAgICAgbSA9IG1lbW9yeXZpZXcobmQpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCBuZCkKKworICAgICAgICAjIyMjIyBuZGltID4gMTogQy1jb250aWd1b3VzCisgICAgICAgICMgZGlmZmVyZW50IHZhbHVlcworICAgICAgICBuZDEgPSBuZGFycmF5KGxpc3QocmFuZ2UoLTE1LCAxNSkpLCBzaGFwZT1bMywgMiwgNV0sIGZvcm1hdD0nQGgnKQorICAgICAgICBuZDIgPSBuZGFycmF5KGxpc3QocmFuZ2UoMCwgMzApKSwgc2hhcGU9WzMsIDIsIDVdLCBmb3JtYXQ9J0BoJykKKyAgICAgICAgdiA9IG1lbW9yeXZpZXcobmQxKQorICAgICAgICB3ID0gbWVtb3J5dmlldyhuZDIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodywgbmQyKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh3LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgdykKKworICAgICAgICAjIGRpZmZlcmVudCBzaGFwZQorICAgICAgICBuZDEgPSBuZGFycmF5KGxpc3QocmFuZ2UoMzApKSwgc2hhcGU9WzIsIDMsIDVdLCBmb3JtYXQ9J0wnKQorICAgICAgICBuZDIgPSBuZGFycmF5KGxpc3QocmFuZ2UoMzApKSwgc2hhcGU9WzMsIDIsIDVdLCBmb3JtYXQ9J0wnKQorICAgICAgICB2ID0gbWVtb3J5dmlldyhuZDEpCisgICAgICAgIHcgPSBtZW1vcnl2aWV3KG5kMikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgbmQyKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHcsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCB3KQorCisgICAgICAgICMgZGlmZmVyZW50IGZvcm1hdAorICAgICAgICBuZDEgPSBuZGFycmF5KGxpc3QocmFuZ2UoMzApKSwgc2hhcGU9WzIsIDMsIDVdLCBmb3JtYXQ9J0wnKQorICAgICAgICBuZDIgPSBuZGFycmF5KGxpc3QocmFuZ2UoMzApKSwgc2hhcGU9WzIsIDMsIDVdLCBmb3JtYXQ9J2wnKQorICAgICAgICB2ID0gbWVtb3J5dmlldyhuZDEpCisgICAgICAgIHcgPSBtZW1vcnl2aWV3KG5kMikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgbmQyKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHcsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCB3KQorCisgICAgICAgICMjIyMjIG5kaW0gPiAxOiBGb3J0cmFuIGNvbnRpZ3VvdXMKKyAgICAgICAgIyBkaWZmZXJlbnQgdmFsdWVzCisgICAgICAgIG5kMSA9IG5kYXJyYXkobGlzdChyYW5nZSgtMTUsIDE1KSksIHNoYXBlPVs1LCAyLCAzXSwgZm9ybWF0PSdAaCcsCisgICAgICAgICAgICAgICAgICAgICAgZmxhZ3M9TkRfRk9SVFJBTikKKyAgICAgICAgbmQyID0gbmRhcnJheShsaXN0KHJhbmdlKDAsIDMwKSksIHNoYXBlPVs1LCAyLCAzXSwgZm9ybWF0PSdAaCcsCisgICAgICAgICAgICAgICAgICAgICAgZmxhZ3M9TkRfRk9SVFJBTikKKyAgICAgICAgdiA9IG1lbW9yeXZpZXcobmQxKQorICAgICAgICB3ID0gbWVtb3J5dmlldyhuZDIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodywgbmQyKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh3LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgdykKKworICAgICAgICAjIGRpZmZlcmVudCBzaGFwZQorICAgICAgICBuZDEgPSBuZGFycmF5KGxpc3QocmFuZ2UoLTE1LCAxNSkpLCBzaGFwZT1bMiwgMywgNV0sIGZvcm1hdD0nbCcsCisgICAgICAgICAgICAgICAgICAgICAgZmxhZ3M9TkRfRk9SVFJBTikKKyAgICAgICAgbmQyID0gbmRhcnJheShsaXN0KHJhbmdlKC0xNSwgMTUpKSwgc2hhcGU9WzMsIDIsIDVdLCBmb3JtYXQ9J2wnLAorICAgICAgICAgICAgICAgICAgICAgIGZsYWdzPU5EX0ZPUlRSQU4pCisgICAgICAgIHYgPSBtZW1vcnl2aWV3KG5kMSkKKyAgICAgICAgdyA9IG1lbW9yeXZpZXcobmQyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodywgbmQxKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIHcpCisKKyAgICAgICAgIyBkaWZmZXJlbnQgZm9ybWF0CisgICAgICAgIG5kMSA9IG5kYXJyYXkobGlzdChyYW5nZSgzMCkpLCBzaGFwZT1bNSwgMiwgM10sIGZvcm1hdD0nQGgnLAorICAgICAgICAgICAgICAgICAgICAgIGZsYWdzPU5EX0ZPUlRSQU4pCisgICAgICAgIG5kMiA9IG5kYXJyYXkobGlzdChyYW5nZSgzMCkpLCBzaGFwZT1bNSwgMiwgM10sIGZvcm1hdD0nQGInLAorICAgICAgICAgICAgICAgICAgICAgIGZsYWdzPU5EX0ZPUlRSQU4pCisgICAgICAgIHYgPSBtZW1vcnl2aWV3KG5kMSkKKyAgICAgICAgdyA9IG1lbW9yeXZpZXcobmQyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodywgbmQxKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIHcpCisKKyAgICAgICAgIyMjIyMgbmRpbSA+IDE6IG1peGVkIEMvRm9ydHJhbiBjb250aWd1b3VzCisgICAgICAgIGxzdDEgPSBsaXN0KHJhbmdlKC0xNSwgMTUpKQorICAgICAgICBsc3QyID0gdHJhbnNwb3NlKGxzdDEsIFszLCAyLCA1XSkKKyAgICAgICAgbmQxID0gbmRhcnJheShsc3QxLCBzaGFwZT1bMywgMiwgNV0sIGZvcm1hdD0nQGwnKQorICAgICAgICBuZDIgPSBuZGFycmF5KGxzdDIsIHNoYXBlPVszLCAyLCA1XSwgZm9ybWF0PSdsJywgZmxhZ3M9TkRfRk9SVFJBTikKKyAgICAgICAgdiA9IG1lbW9yeXZpZXcobmQxKQorICAgICAgICB3ID0gbWVtb3J5dmlldyhuZDIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodywgbmQyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIHcpCisKKyAgICAgICAgIyMjIyMgbmRpbSA+IDE6IG5vbi1jb250aWd1b3VzCisgICAgICAgICMgZGlmZmVyZW50IHZhbHVlcworICAgICAgICBleDEgPSBuZGFycmF5KGxpc3QocmFuZ2UoNDApKSwgc2hhcGU9WzUsIDhdLCBmb3JtYXQ9J0BJJykKKyAgICAgICAgbmQxID0gZXgxWzM6MTotMSwgOjotMl0KKyAgICAgICAgZXgyID0gbmRhcnJheShsaXN0KHJhbmdlKDQwKSksIHNoYXBlPVs1LCA4XSwgZm9ybWF0PSdJJykKKyAgICAgICAgbmQyID0gZXgyWzE6MzoxLCA6Oi0yXQorICAgICAgICB2ID0gbWVtb3J5dmlldyhuZDEpCisgICAgICAgIHcgPSBtZW1vcnl2aWV3KG5kMikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgbmQyKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHcsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCB3KQorCisgICAgICAgICMgZGlmZmVyZW50IHNoYXBlCisgICAgICAgIGV4MSA9IG5kYXJyYXkobGlzdChyYW5nZSgzMCkpLCBzaGFwZT1bMiwgMywgNV0sIGZvcm1hdD0nYicpCisgICAgICAgIG5kMSA9IGV4MVsxOjM6LCA6Oi0yXQorICAgICAgICBuZDIgPSBuZGFycmF5KGxpc3QocmFuZ2UoMzApKSwgc2hhcGU9WzMsIDIsIDVdLCBmb3JtYXQ9J2InKQorICAgICAgICBuZDIgPSBleDJbMTozOiwgOjotMl0KKyAgICAgICAgdiA9IG1lbW9yeXZpZXcobmQxKQorICAgICAgICB3ID0gbWVtb3J5dmlldyhuZDIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodywgbmQyKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh3LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgdykKKworICAgICAgICAjIGRpZmZlcmVudCBmb3JtYXQKKyAgICAgICAgZXgxID0gbmRhcnJheShsaXN0KHJhbmdlKDMwKSksIHNoYXBlPVs1LCAzLCAyXSwgZm9ybWF0PSdpJykKKyAgICAgICAgbmQxID0gZXgxWzE6MzosIDo6LTJdCisgICAgICAgIG5kMiA9IG5kYXJyYXkobGlzdChyYW5nZSgzMCkpLCBzaGFwZT1bNSwgMywgMl0sIGZvcm1hdD0nQEknKQorICAgICAgICBuZDIgPSBleDJbMTozOiwgOjotMl0KKyAgICAgICAgdiA9IG1lbW9yeXZpZXcobmQxKQorICAgICAgICB3ID0gbWVtb3J5dmlldyhuZDIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodywgbmQyKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh3LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgdykKKworICAgICAgICAjIyMjIyBuZGltID4gMTogemVyb3MgaW4gc2hhcGUKKyAgICAgICAgbmQxID0gbmRhcnJheShsaXN0KHJhbmdlKDMwKSksIHNoYXBlPVswLCAzLCAyXSwgZm9ybWF0PSdpJykKKyAgICAgICAgbmQyID0gbmRhcnJheShsaXN0KHJhbmdlKDMwKSksIHNoYXBlPVs1LCAwLCAyXSwgZm9ybWF0PSdAaScpCisgICAgICAgIHYgPSBtZW1vcnl2aWV3KG5kMSkKKyAgICAgICAgdyA9IG1lbW9yeXZpZXcobmQyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodywgbmQxKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIHcpCisKKyAgICAgICAgIyBuZGltID4gMTogemVybyBzdHJpZGVzCisgICAgICAgIG5kMSA9IG5kYXJyYXkoWzkwMF0qODAsIHNoYXBlPVs0LCA1LCA0XSwgZm9ybWF0PSdATCcpCisgICAgICAgIG5kMiA9IG5kYXJyYXkoWzkwMF0sIHNoYXBlPVs0LCA1LCA0XSwgc3RyaWRlcz1bMCwgMCwgMF0sIGZvcm1hdD0nTCcpCisgICAgICAgIHYgPSBtZW1vcnl2aWV3KG5kMSkKKyAgICAgICAgdyA9IG1lbW9yeXZpZXcobmQyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodywgbmQxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIHcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodi50b2xpc3QoKSwgdy50b2xpc3QoKSkKKworICAgICAgICAjIyMjIyBuZGltID4gMTogc3Vib2Zmc2V0cworICAgICAgICBleDEgPSBuZGFycmF5KGxpc3QocmFuZ2UoNDApKSwgc2hhcGU9WzUsIDhdLCBmb3JtYXQ9J0BJJykKKyAgICAgICAgbmQxID0gZXgxWzM6MTotMSwgOjotMl0KKyAgICAgICAgZXgyID0gbmRhcnJheShsaXN0KHJhbmdlKDQwKSksIHNoYXBlPVs1LCA4XSwgZm9ybWF0PSdJJywgZmxhZ3M9TkRfUElMKQorICAgICAgICBuZDIgPSBleDJbMTozOjEsIDo6LTJdCisgICAgICAgIHYgPSBtZW1vcnl2aWV3KG5kMSkKKyAgICAgICAgdyA9IG1lbW9yeXZpZXcobmQyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodywgbmQxKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIHcpCisKKyAgICAgICAgIyBkaWZmZXJlbnQgc2hhcGUKKyAgICAgICAgZXgxID0gbmRhcnJheShsaXN0KHJhbmdlKDMwKSksIHNoYXBlPVsyLCAzLCA1XSwgZm9ybWF0PSdiJywgZmxhZ3M9TkRfUElMKQorICAgICAgICBuZDEgPSBleDFbMTozOiwgOjotMl0KKyAgICAgICAgbmQyID0gbmRhcnJheShsaXN0KHJhbmdlKDMwKSksIHNoYXBlPVszLCAyLCA1XSwgZm9ybWF0PSdiJykKKyAgICAgICAgbmQyID0gZXgyWzE6MzosIDo6LTJdCisgICAgICAgIHYgPSBtZW1vcnl2aWV3KG5kMSkKKyAgICAgICAgdyA9IG1lbW9yeXZpZXcobmQyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgbmQxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcsIG5kMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodywgbmQxKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIHcpCisKKyAgICAgICAgIyBkaWZmZXJlbnQgZm9ybWF0CisgICAgICAgIGV4MSA9IG5kYXJyYXkobGlzdChyYW5nZSgzMCkpLCBzaGFwZT1bNSwgMywgMl0sIGZvcm1hdD0naScsIGZsYWdzPU5EX1BJTCkKKyAgICAgICAgbmQxID0gZXgxWzE6MzosIDo6LTJdCisgICAgICAgIG5kMiA9IG5kYXJyYXkobGlzdChyYW5nZSgzMCkpLCBzaGFwZT1bNSwgMywgMl0sIGZvcm1hdD0nQEknLCBmbGFncz1ORF9QSUwpCisgICAgICAgIG5kMiA9IGV4MlsxOjM6LCA6Oi0yXQorICAgICAgICB2ID0gbWVtb3J5dmlldyhuZDEpCisgICAgICAgIHcgPSBtZW1vcnl2aWV3KG5kMikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LCBuZDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodiwgbmQyKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHcsIG5kMSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCB3KQorCisgICAgICAgICMgaW5pdGlhbGl6ZSBtaXhlZCBDL0ZvcnRyYW4gKyBzdWJvZmZzZXRzCisgICAgICAgIGxzdDEgPSBsaXN0KHJhbmdlKC0xNSwgMTUpKQorICAgICAgICBsc3QyID0gdHJhbnNwb3NlKGxzdDEsIFszLCAyLCA1XSkKKyAgICAgICAgbmQxID0gbmRhcnJheShsc3QxLCBzaGFwZT1bMywgMiwgNV0sIGZvcm1hdD0nQGwnLCBmbGFncz1ORF9QSUwpCisgICAgICAgIG5kMiA9IG5kYXJyYXkobHN0Miwgc2hhcGU9WzMsIDIsIDVdLCBmb3JtYXQ9J2wnLCBmbGFncz1ORF9GT1JUUkFOfE5EX1BJTCkKKyAgICAgICAgdiA9IG1lbW9yeXZpZXcobmQxKQorICAgICAgICB3ID0gbWVtb3J5dmlldyhuZDIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBuZDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodywgbmQyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIHcpCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X2NoZWNrX3JlbGVhc2VkKHNlbGYpOgorCisgICAgICAgIGEgPSBhcnJheS5hcnJheSgnZCcsIFsxLjEsIDIuMiwgMy4zXSkKKworICAgICAgICBtID0gbWVtb3J5dmlldyhhKQorICAgICAgICBtLnJlbGVhc2UoKQorCisgICAgICAgICMgUHlNZW1vcnlWaWV3X0Zyb21PYmplY3QoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtZW1vcnl2aWV3LCBtKQorICAgICAgICAjIG1lbW9yeXZpZXcuY2FzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0uY2FzdCwgJ2MnKQorICAgICAgICAjIGdldGJ1ZmZlcigpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG5kYXJyYXksIG0pCisgICAgICAgICMgbWVtb3J5dmlldy50b2xpc3QoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtLnRvbGlzdCkKKyAgICAgICAgIyBtZW1vcnl2aWV3LnRvYnl0ZXMoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtLnRvYnl0ZXMpCisgICAgICAgICMgc2VxdWVuY2UKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZXZhbCwgIjEuMCBpbiBtIiwgbG9jYWxzKCkpCisgICAgICAgICMgc3Vic2NyaXB0CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0uX19nZXRpdGVtX18sIDApCisgICAgICAgICMgYXNzaWdubWVudAorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtLl9fc2V0aXRlbV9fLCAwLCAxKQorCisgICAgICAgIGZvciBhdHRyIGluICgnb2JqJywgJ25ieXRlcycsICdyZWFkb25seScsICdpdGVtc2l6ZScsICdmb3JtYXQnLCAnbmRpbScsCisgICAgICAgICAgICAgICAgICAgICAnc2hhcGUnLCAnc3RyaWRlcycsICdzdWJvZmZzZXRzJywgJ2NfY29udGlndW91cycsCisgICAgICAgICAgICAgICAgICAgICAnZl9jb250aWd1b3VzJywgJ2NvbnRpZ3VvdXMnKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG0uX19nZXRhdHRyaWJ1dGVfXywgYXR0cikKKworICAgICAgICAjIHJpY2hjb21wYXJlCisgICAgICAgIGIgPSBhcnJheS5hcnJheSgnZCcsIFsxLjEsIDIuMiwgMy4zXSkKKyAgICAgICAgbTEgPSBtZW1vcnl2aWV3KGEpCisgICAgICAgIG0yID0gbWVtb3J5dmlldyhiKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTEsIG0yKQorICAgICAgICBtMS5yZWxlYXNlKCkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChtMSwgbTIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobTEsIGEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTEsIG0xKQorCisgICAgZGVmIHRlc3RfbWVtb3J5dmlld190b2J5dGVzKHNlbGYpOgorICAgICAgICAjIE1hbnkgaW1wbGljaXQgdGVzdHMgYXJlIGFscmVhZHkgaW4gc2VsZi52ZXJpZnkoKS4KKworICAgICAgICBuZCA9IG5kYXJyYXkoWy01MjksIDU3NiwgLTYyNSwgNjc2LCAtNzI5XSwgc2hhcGU9WzVdLCBmb3JtYXQ9J0BoJykKKworICAgICAgICBtID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnRvYnl0ZXMoKSwgbmQudG9ieXRlcygpKQorCisgICAgZGVmIHRlc3RfbWVtb3J5dmlld19nZXRfY29udGlndW91cyhzZWxmKToKKyAgICAgICAgIyBNYW55IGltcGxpY2l0IHRlc3RzIGFyZSBhbHJlYWR5IGluIHNlbGYudmVyaWZ5KCkuCisKKyAgICAgICAgIyBubyBidWZmZXIgaW50ZXJmYWNlCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZ2V0X2NvbnRpZ3VvdXMsIHt9LCBQeUJVRl9SRUFELCAnRicpCisKKyAgICAgICAgIyB3cml0YWJsZSByZXF1ZXN0IHRvIHJlYWQtb25seSBvYmplY3QKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIGdldF9jb250aWd1b3VzLCBiJ3gnLCBQeUJVRl9XUklURSwgJ0MnKQorCisgICAgICAgICMgd3JpdGFibGUgcmVxdWVzdCB0byBub24tY29udGlndW91cyBvYmplY3QKKyAgICAgICAgbmQgPSBuZGFycmF5KFsxLCAyLCAzXSwgc2hhcGU9WzJdLCBzdHJpZGVzPVsyXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIGdldF9jb250aWd1b3VzLCBuZCwgUHlCVUZfV1JJVEUsICdBJykKKworICAgICAgICAjIHNjYWxhciwgcmVhZC1vbmx5IHJlcXVlc3QgZnJvbSByZWFkLW9ubHkgZXhwb3J0ZXIKKyAgICAgICAgbmQgPSBuZGFycmF5KDksIHNoYXBlPSgpLCBmb3JtYXQ9IkwiKQorICAgICAgICBmb3Igb3JkZXIgaW4gWydDJywgJ0YnLCAnQSddOgorICAgICAgICAgICAgbSA9IGdldF9jb250aWd1b3VzKG5kLCBQeUJVRl9SRUFELCBvcmRlcikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobSwgbmQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bKCldLCA5KQorCisgICAgICAgICMgc2NhbGFyLCByZWFkLW9ubHkgcmVxdWVzdCBmcm9tIHdyaXRhYmxlIGV4cG9ydGVyCisgICAgICAgIG5kID0gbmRhcnJheSg5LCBzaGFwZT0oKSwgZm9ybWF0PSJMIiwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIGZvciBvcmRlciBpbiBbJ0MnLCAnRicsICdBJ106CisgICAgICAgICAgICBtID0gZ2V0X2NvbnRpZ3VvdXMobmQsIFB5QlVGX1JFQUQsIG9yZGVyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCBuZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVsoKV0sIDkpCisKKyAgICAgICAgIyBzY2FsYXIsIHdyaXRhYmxlIHJlcXVlc3QKKyAgICAgICAgZm9yIG9yZGVyIGluIFsnQycsICdGJywgJ0EnXToKKyAgICAgICAgICAgIG5kWygpXSA9IDkKKyAgICAgICAgICAgIG0gPSBnZXRfY29udGlndW91cyhuZCwgUHlCVUZfV1JJVEUsIG9yZGVyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCBuZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVsoKV0sIDkpCisKKyAgICAgICAgICAgIG1bKCldID0gMTAKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVsoKV0sIDEwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZFsoKV0sIDEwKQorCisgICAgICAgICMgemVyb3MgaW4gc2hhcGUKKyAgICAgICAgbmQgPSBuZGFycmF5KFsxXSwgc2hhcGU9WzBdLCBmb3JtYXQ9IkwiLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgZm9yIG9yZGVyIGluIFsnQycsICdGJywgJ0EnXToKKyAgICAgICAgICAgIG0gPSBnZXRfY29udGlndW91cyhuZCwgUHlCVUZfUkVBRCwgb3JkZXIpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yLCBtLl9fZ2V0aXRlbV9fLCAwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCBuZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS50b2xpc3QoKSwgW10pCisKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoOCkpLCBzaGFwZT1bMiwgMCwgN10sIGZvcm1hdD0iTCIsCisgICAgICAgICAgICAgICAgICAgICBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgZm9yIG9yZGVyIGluIFsnQycsICdGJywgJ0EnXToKKyAgICAgICAgICAgIG0gPSBnZXRfY29udGlndW91cyhuZCwgUHlCVUZfUkVBRCwgb3JkZXIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kYXJyYXkobSkudG9saXN0KCksIFtbXSwgW11dKQorCisgICAgICAgICMgb25lLWRpbWVuc2lvbmFsCisgICAgICAgIG5kID0gbmRhcnJheShbMV0sIHNoYXBlPVsxXSwgZm9ybWF0PSJoIiwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIGZvciBvcmRlciBpbiBbJ0MnLCAnRicsICdBJ106CisgICAgICAgICAgICBtID0gZ2V0X2NvbnRpZ3VvdXMobmQsIFB5QlVGX1dSSVRFLCBvcmRlcikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobSwgbmQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0udG9saXN0KCksIG5kLnRvbGlzdCgpKQorCisgICAgICAgIG5kID0gbmRhcnJheShbMSwgMiwgM10sIHNoYXBlPVszXSwgZm9ybWF0PSJiIiwgZmxhZ3M9TkRfV1JJVEFCTEUpCisgICAgICAgIGZvciBvcmRlciBpbiBbJ0MnLCAnRicsICdBJ106CisgICAgICAgICAgICBtID0gZ2V0X2NvbnRpZ3VvdXMobmQsIFB5QlVGX1dSSVRFLCBvcmRlcikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobSwgbmQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0udG9saXN0KCksIG5kLnRvbGlzdCgpKQorCisgICAgICAgICMgb25lLWRpbWVuc2lvbmFsLCBub24tY29udGlndW91cworICAgICAgICBuZCA9IG5kYXJyYXkoWzEsIDIsIDNdLCBzaGFwZT1bMl0sIHN0cmlkZXM9WzJdLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgZm9yIG9yZGVyIGluIFsnQycsICdGJywgJ0EnXToKKyAgICAgICAgICAgIG0gPSBnZXRfY29udGlndW91cyhuZCwgUHlCVUZfUkVBRCwgb3JkZXIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0sIG5kKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnRvbGlzdCgpLCBuZC50b2xpc3QoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5fX3NldGl0ZW1fXywgMSwgMjApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bMV0sIDMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kWzFdLCAzKQorCisgICAgICAgIG5kID0gbmRbOjotMV0KKyAgICAgICAgZm9yIG9yZGVyIGluIFsnQycsICdGJywgJ0EnXToKKyAgICAgICAgICAgIG0gPSBnZXRfY29udGlndW91cyhuZCwgUHlCVUZfUkVBRCwgb3JkZXIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0sIG5kKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnRvbGlzdCgpLCBuZC50b2xpc3QoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5fX3NldGl0ZW1fXywgMSwgMjApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bMV0sIDEpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kWzFdLCAxKQorCisgICAgICAgICMgbXVsdGktZGltZW5zaW9uYWwsIGNvbnRpZ3VvdXMgaW5wdXQKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMTIpKSwgc2hhcGU9WzMsIDRdLCBmbGFncz1ORF9XUklUQUJMRSkKKyAgICAgICAgZm9yIG9yZGVyIGluIFsnQycsICdBJ106CisgICAgICAgICAgICBtID0gZ2V0X2NvbnRpZ3VvdXMobmQsIFB5QlVGX1dSSVRFLCBvcmRlcikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmRhcnJheShtKS50b2xpc3QoKSwgbmQudG9saXN0KCkpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIGdldF9jb250aWd1b3VzLCBuZCwgUHlCVUZfV1JJVEUsICdGJykKKyAgICAgICAgbSA9IGdldF9jb250aWd1b3VzKG5kLCBQeUJVRl9SRUFELCBvcmRlcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZGFycmF5KG0pLnRvbGlzdCgpLCBuZC50b2xpc3QoKSkKKworICAgICAgICBuZCA9IG5kYXJyYXkobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bMywgNF0sCisgICAgICAgICAgICAgICAgICAgICBmbGFncz1ORF9XUklUQUJMRXxORF9GT1JUUkFOKQorICAgICAgICBmb3Igb3JkZXIgaW4gWydGJywgJ0EnXToKKyAgICAgICAgICAgIG0gPSBnZXRfY29udGlndW91cyhuZCwgUHlCVUZfV1JJVEUsIG9yZGVyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZGFycmF5KG0pLnRvbGlzdCgpLCBuZC50b2xpc3QoKSkKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgZ2V0X2NvbnRpZ3VvdXMsIG5kLCBQeUJVRl9XUklURSwgJ0MnKQorICAgICAgICBtID0gZ2V0X2NvbnRpZ3VvdXMobmQsIFB5QlVGX1JFQUQsIG9yZGVyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kYXJyYXkobSkudG9saXN0KCksIG5kLnRvbGlzdCgpKQorCisgICAgICAgICMgbXVsdGktZGltZW5zaW9uYWwsIG5vbi1jb250aWd1b3VzIGlucHV0CisgICAgICAgIG5kID0gbmRhcnJheShsaXN0KHJhbmdlKDEyKSksIHNoYXBlPVszLCA0XSwgZmxhZ3M9TkRfV1JJVEFCTEV8TkRfUElMKQorICAgICAgICBmb3Igb3JkZXIgaW4gWydDJywgJ0YnLCAnQSddOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIGdldF9jb250aWd1b3VzLCBuZCwgUHlCVUZfV1JJVEUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmRlcikKKyAgICAgICAgICAgIG0gPSBnZXRfY29udGlndW91cyhuZCwgUHlCVUZfUkVBRCwgb3JkZXIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5kYXJyYXkobSkudG9saXN0KCksIG5kLnRvbGlzdCgpKQorCisgICAgICAgICMgZmxhZ3MKKyAgICAgICAgbmQgPSBuZGFycmF5KFsxLDIsMyw0LDVdLCBzaGFwZT1bM10sIHN0cmlkZXM9WzJdKQorICAgICAgICBtID0gZ2V0X2NvbnRpZ3VvdXMobmQsIFB5QlVGX1JFQUQsICdDJykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG0uY19jb250aWd1b3VzKQorCisgICAgZGVmIHRlc3RfbWVtb3J5dmlld19zZXJpYWxpemluZyhzZWxmKToKKworICAgICAgICAjIEMtY29udGlndW91cworICAgICAgICBzaXplID0gc3RydWN0LmNhbGNzaXplKCdpJykKKyAgICAgICAgYSA9IGFycmF5LmFycmF5KCdpJywgWzEsMiwzLDQsNV0pCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGEpCisgICAgICAgIGJ1ZiA9IGlvLkJ5dGVzSU8obSkKKyAgICAgICAgYiA9IGJ5dGVhcnJheSg1KnNpemUpCisgICAgICAgIGJ1Zi5yZWFkaW50byhiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0udG9ieXRlcygpLCBiKQorCisgICAgICAgICMgQy1jb250aWd1b3VzLCBtdWx0aS1kaW1lbnNpb25hbAorICAgICAgICBzaXplID0gc3RydWN0LmNhbGNzaXplKCdMJykKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMTIpKSwgc2hhcGU9WzIsMywyXSwgZm9ybWF0PSJMIikKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcobmQpCisgICAgICAgIGJ1ZiA9IGlvLkJ5dGVzSU8obSkKKyAgICAgICAgYiA9IGJ5dGVhcnJheSgyKjMqMipzaXplKQorICAgICAgICBidWYucmVhZGludG8oYikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnRvYnl0ZXMoKSwgYikKKworICAgICAgICAjIEZvcnRyYW4gY29udGlndW91cywgbXVsdGktZGltZW5zaW9uYWwKKyAgICAgICAgI3NpemUgPSBzdHJ1Y3QuY2FsY3NpemUoJ0wnKQorICAgICAgICAjbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMTIpKSwgc2hhcGU9WzIsMywyXSwgZm9ybWF0PSJMIiwKKyAgICAgICAgIyAgICAgICAgICAgICBmbGFncz1ORF9GT1JUUkFOKQorICAgICAgICAjbSA9IG1lbW9yeXZpZXcobmQpCisgICAgICAgICNidWYgPSBpby5CeXRlc0lPKG0pCisgICAgICAgICNiID0gYnl0ZWFycmF5KDIqMyoyKnNpemUpCisgICAgICAgICNidWYucmVhZGludG8oYikKKyAgICAgICAgI3NlbGYuYXNzZXJ0RXF1YWwobS50b2J5dGVzKCksIGIpCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X2hhc2goc2VsZik6CisKKyAgICAgICAgIyBieXRlcyBleHBvcnRlcgorICAgICAgICBiID0gYnl0ZXMobGlzdChyYW5nZSgxMikpKQorICAgICAgICBtID0gbWVtb3J5dmlldyhiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2goYiksIGhhc2gobSkpCisKKyAgICAgICAgIyBDLWNvbnRpZ3VvdXMKKyAgICAgICAgbWMgPSBtLmNhc3QoJ2MnLCBzaGFwZT1bMyw0XSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYXNoKG1jKSwgaGFzaChiKSkKKworICAgICAgICAjIG5vbi1jb250aWd1b3VzCisgICAgICAgIG14ID0gbVs6Oi0yXQorICAgICAgICBiID0gYnl0ZXMobGlzdChyYW5nZSgxMikpWzo6LTJdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobXgpLCBoYXNoKGIpKQorCisgICAgICAgICMgRm9ydHJhbiBjb250aWd1b3VzCisgICAgICAgIG5kID0gbmRhcnJheShsaXN0KHJhbmdlKDMwKSksIHNoYXBlPVszLDIsNV0sIGZsYWdzPU5EX0ZPUlRSQU4pCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KG5kKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobSksIGhhc2gobmQpKQorCisgICAgICAgICMgbXVsdGktZGltZW5zaW9uYWwgc2xpY2UKKyAgICAgICAgbmQgPSBuZGFycmF5KGxpc3QocmFuZ2UoMzApKSwgc2hhcGU9WzMsMiw1XSkKKyAgICAgICAgeCA9IG5kWzo6MiwgOjosIDo6LTFdCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KHgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFzaChtKSwgaGFzaCh4KSkKKworICAgICAgICAjIG11bHRpLWRpbWVuc2lvbmFsIHNsaWNlIHdpdGggc3Vib2Zmc2V0cworICAgICAgICBuZCA9IG5kYXJyYXkobGlzdChyYW5nZSgzMCkpLCBzaGFwZT1bMiw1LDNdLCBmbGFncz1ORF9QSUwpCisgICAgICAgIHggPSBuZFs6OjIsIDo6LCA6Oi0xXQorICAgICAgICBtID0gbWVtb3J5dmlldyh4KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobSksIGhhc2goeCkpCisKKyAgICAgICAgIyBub24tYnl0ZSBmb3JtYXRzCisgICAgICAgIG5kID0gbmRhcnJheShsaXN0KHJhbmdlKDEyKSksIHNoYXBlPVsyLDIsM10sIGZvcm1hdD0nTCcpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KG5kKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobSksIGhhc2gobmQudG9ieXRlcygpKSkKKworICAgICAgICBuZCA9IG5kYXJyYXkobGlzdChyYW5nZSgtNiwgNikpLCBzaGFwZT1bMiwyLDNdLCBmb3JtYXQ9J2gnKQorICAgICAgICBtID0gbWVtb3J5dmlldyhuZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYXNoKG0pLCBoYXNoKG5kLnRvYnl0ZXMoKSkpCisKKyAgICBkZWYgdGVzdF9tZW1vcnl2aWV3X3JlbGVhc2Uoc2VsZik6CisKKyAgICAgICAgIyBDcmVhdGUgcmUtZXhwb3J0ZXIgZnJvbSBnZXRidWZmZXIobWVtb3J5dmlldyksIHRoZW4gcmVsZWFzZSB0aGUgdmlldy4KKyAgICAgICAgYSA9IGJ5dGVhcnJheShbMSwyLDNdKQorICAgICAgICBtID0gbWVtb3J5dmlldyhhKQorICAgICAgICBuZCA9IG5kYXJyYXkobSkgIyByZS1leHBvcnRlcgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgbS5yZWxlYXNlKQorICAgICAgICBkZWwgbmQKKyAgICAgICAgbS5yZWxlYXNlKCkKKworICAgICAgICBhID0gYnl0ZWFycmF5KFsxLDIsM10pCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KGEpCisgICAgICAgIG5kMSA9IG5kYXJyYXkobSwgZ2V0YnVmPVB5QlVGX0ZVTExfUk8sIGZsYWdzPU5EX1JFRElSRUNUKQorICAgICAgICBuZDIgPSBuZGFycmF5KG5kMSwgZ2V0YnVmPVB5QlVGX0ZVTExfUk8sIGZsYWdzPU5EX1JFRElSRUNUKQorICAgICAgICBzZWxmLmFzc2VydElzKG5kMi5vYmosIG0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBtLnJlbGVhc2UpCisgICAgICAgIGRlbCBuZDEsIG5kMgorICAgICAgICBtLnJlbGVhc2UoKQorCisgICAgICAgICMgY2hhaW5lZCB2aWV3cworICAgICAgICBhID0gYnl0ZWFycmF5KFsxLDIsM10pCisgICAgICAgIG0xID0gbWVtb3J5dmlldyhhKQorICAgICAgICBtMiA9IG1lbW9yeXZpZXcobTEpCisgICAgICAgIG5kID0gbmRhcnJheShtMikgIyByZS1leHBvcnRlcgorICAgICAgICBtMS5yZWxlYXNlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IsIG0yLnJlbGVhc2UpCisgICAgICAgIGRlbCBuZAorICAgICAgICBtMi5yZWxlYXNlKCkKKworICAgICAgICBhID0gYnl0ZWFycmF5KFsxLDIsM10pCisgICAgICAgIG0xID0gbWVtb3J5dmlldyhhKQorICAgICAgICBtMiA9IG1lbW9yeXZpZXcobTEpCisgICAgICAgIG5kMSA9IG5kYXJyYXkobTIsIGdldGJ1Zj1QeUJVRl9GVUxMX1JPLCBmbGFncz1ORF9SRURJUkVDVCkKKyAgICAgICAgbmQyID0gbmRhcnJheShuZDEsIGdldGJ1Zj1QeUJVRl9GVUxMX1JPLCBmbGFncz1ORF9SRURJUkVDVCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhuZDIub2JqLCBtMikKKyAgICAgICAgbTEucmVsZWFzZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEJ1ZmZlckVycm9yLCBtMi5yZWxlYXNlKQorICAgICAgICBkZWwgbmQxLCBuZDIKKyAgICAgICAgbTIucmVsZWFzZSgpCisKKyAgICAgICAgIyBBbGxvdyBjaGFuZ2luZyBsYXlvdXQgd2hpbGUgYnVmZmVycyBhcmUgZXhwb3J0ZWQuCisgICAgICAgIG5kID0gbmRhcnJheShbMSwyLDNdLCBzaGFwZT1bM10sIGZsYWdzPU5EX1ZBUkVYUE9SVCkKKyAgICAgICAgbTEgPSBtZW1vcnl2aWV3KG5kKQorCisgICAgICAgIG5kLnB1c2goWzQsNSw2LDcsOF0sIHNoYXBlPVs1XSkgIyBtdXRhdGUgbmQKKyAgICAgICAgbTIgPSBtZW1vcnl2aWV3KG5kKQorCisgICAgICAgIHggPSBtZW1vcnl2aWV3KG0xKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHgudG9saXN0KCksIG0xLnRvbGlzdCgpKQorCisgICAgICAgIHkgPSBtZW1vcnl2aWV3KG0yKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHkudG9saXN0KCksIG0yLnRvbGlzdCgpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHkudG9saXN0KCksIG5kLnRvbGlzdCgpKQorICAgICAgICBtMi5yZWxlYXNlKCkKKyAgICAgICAgeS5yZWxlYXNlKCkKKworICAgICAgICBuZC5wb3AoKSAjIHBvcCB0aGUgY3VycmVudCB2aWV3CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeC50b2xpc3QoKSwgbmQudG9saXN0KCkpCisKKyAgICAgICAgZGVsIG5kCisgICAgICAgIG0xLnJlbGVhc2UoKQorICAgICAgICB4LnJlbGVhc2UoKQorCisgICAgICAgICMgSWYgbXVsdGlwbGUgbWVtb3J5dmlld3Mgc2hhcmUgdGhlIHNhbWUgbWFuYWdlZCBidWZmZXIsIGltcGxpY2l0CisgICAgICAgICMgcmVsZWFzZSgpIGluIHRoZSBjb250ZXh0IG1hbmFnZXIncyBfX2V4aXRfXygpIG1ldGhvZCBzaG91bGQgc3RpbGwKKyAgICAgICAgIyB3b3JrLgorICAgICAgICBkZWYgY2F0Y2gyMihiKToKKyAgICAgICAgICAgIHdpdGggbWVtb3J5dmlldyhiKSBhcyBtMjoKKyAgICAgICAgICAgICAgICBwYXNzCisKKyAgICAgICAgeCA9IGJ5dGVhcnJheShiJzEyMycpCisgICAgICAgIHdpdGggbWVtb3J5dmlldyh4KSBhcyBtMToKKyAgICAgICAgICAgIGNhdGNoMjIobTEpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0xWzBdLCBvcmQoYicxJykpCisKKyAgICAgICAgeCA9IG5kYXJyYXkobGlzdChyYW5nZSgxMikpLCBzaGFwZT1bMiwyLDNdLCBmb3JtYXQ9J2wnKQorICAgICAgICB5ID0gbmRhcnJheSh4LCBnZXRidWY9UHlCVUZfRlVMTF9STywgZmxhZ3M9TkRfUkVESVJFQ1QpCisgICAgICAgIHogPSBuZGFycmF5KHksIGdldGJ1Zj1QeUJVRl9GVUxMX1JPLCBmbGFncz1ORF9SRURJUkVDVCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh6Lm9iaiwgeCkKKyAgICAgICAgd2l0aCBtZW1vcnl2aWV3KHopIGFzIG06CisgICAgICAgICAgICBjYXRjaDIyKG0pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bMDoxXS50b2xpc3QoKSwgW1tbMCwgMSwgMl0sIFszLCA0LCA1XV1dKQorCisgICAgICAgICMgVGVzdCBnYXJiYWdlIGNvbGxlY3Rpb24uCisgICAgICAgIGZvciBmbGFncyBpbiAoMCwgTkRfUkVESVJFQ1QpOgorICAgICAgICAgICAgeCA9IGJ5dGVhcnJheShiJzEyMycpCisgICAgICAgICAgICB3aXRoIG1lbW9yeXZpZXcoeCkgYXMgbTE6CisgICAgICAgICAgICAgICAgZGVsIHgKKyAgICAgICAgICAgICAgICB5ID0gbmRhcnJheShtMSwgZ2V0YnVmPVB5QlVGX0ZVTExfUk8sIGZsYWdzPWZsYWdzKQorICAgICAgICAgICAgICAgIHdpdGggbWVtb3J5dmlldyh5KSBhcyBtMjoKKyAgICAgICAgICAgICAgICAgICAgZGVsIHkKKyAgICAgICAgICAgICAgICAgICAgeiA9IG5kYXJyYXkobTIsIGdldGJ1Zj1QeUJVRl9GVUxMX1JPLCBmbGFncz1mbGFncykKKyAgICAgICAgICAgICAgICAgICAgd2l0aCBtZW1vcnl2aWV3KHopIGFzIG0zOgorICAgICAgICAgICAgICAgICAgICAgICAgZGVsIHoKKyAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoMjIobTMpCisgICAgICAgICAgICAgICAgICAgICAgICBjYXRjaDIyKG0yKQorICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2gyMihtMSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTFbMF0sIG9yZChiJzEnKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTJbMV0sIG9yZChiJzInKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTNbMl0sIG9yZChiJzMnKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlbCBtMworICAgICAgICAgICAgICAgICAgICBkZWwgbTIKKyAgICAgICAgICAgICAgICBkZWwgbTEKKworICAgICAgICAgICAgeCA9IGJ5dGVhcnJheShiJzEyMycpCisgICAgICAgICAgICB3aXRoIG1lbW9yeXZpZXcoeCkgYXMgbTE6CisgICAgICAgICAgICAgICAgZGVsIHgKKyAgICAgICAgICAgICAgICB5ID0gbmRhcnJheShtMSwgZ2V0YnVmPVB5QlVGX0ZVTExfUk8sIGZsYWdzPWZsYWdzKQorICAgICAgICAgICAgICAgIHdpdGggbWVtb3J5dmlldyh5KSBhcyBtMjoKKyAgICAgICAgICAgICAgICAgICAgZGVsIHkKKyAgICAgICAgICAgICAgICAgICAgeiA9IG5kYXJyYXkobTIsIGdldGJ1Zj1QeUJVRl9GVUxMX1JPLCBmbGFncz1mbGFncykKKyAgICAgICAgICAgICAgICAgICAgd2l0aCBtZW1vcnl2aWV3KHopIGFzIG0zOgorICAgICAgICAgICAgICAgICAgICAgICAgZGVsIHoKKyAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoMjIobTEpCisgICAgICAgICAgICAgICAgICAgICAgICBjYXRjaDIyKG0yKQorICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2gyMihtMykKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTFbMF0sIG9yZChiJzEnKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTJbMV0sIG9yZChiJzInKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobTNbMl0sIG9yZChiJzMnKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlbCBtMSwgbTIsIG0zCisKKyAgICAgICAgIyBtZW1vcnl2aWV3LnJlbGVhc2UoKSBmYWlscyBpZiB0aGUgdmlldyBoYXMgZXhwb3J0ZWQgYnVmZmVycy4KKyAgICAgICAgeCA9IGJ5dGVhcnJheShiJzEyMycpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQnVmZmVyRXJyb3IpOgorICAgICAgICAgICAgd2l0aCBtZW1vcnl2aWV3KHgpIGFzIG06CisgICAgICAgICAgICAgICAgZXggPSBuZGFycmF5KG0pCisgICAgICAgICAgICAgICAgbVswXSA9PSBvcmQoYicxJykKKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfcmVkaXJlY3Qoc2VsZik6CisKKyAgICAgICAgbmQgPSBuZGFycmF5KFsxLjAgKiB4IGZvciB4IGluIHJhbmdlKDEyKV0sIHNoYXBlPVsxMl0sIGZvcm1hdD0nZCcpCisgICAgICAgIGEgPSBhcnJheS5hcnJheSgnZCcsIFsxLjAgKiB4IGZvciB4IGluIHJhbmdlKDEyKV0pCisKKyAgICAgICAgZm9yIHggaW4gKG5kLCBhKToKKyAgICAgICAgICAgIHkgPSBuZGFycmF5KHgsIGdldGJ1Zj1QeUJVRl9GVUxMX1JPLCBmbGFncz1ORF9SRURJUkVDVCkKKyAgICAgICAgICAgIHogPSBuZGFycmF5KHksIGdldGJ1Zj1QeUJVRl9GVUxMX1JPLCBmbGFncz1ORF9SRURJUkVDVCkKKyAgICAgICAgICAgIG0gPSBtZW1vcnl2aWV3KHopCisKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoeS5vYmosIHgpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzKHoub2JqLCB4KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhtLm9iaiwgeCkKKworICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCB4KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCB5KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCB6KQorCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bMTozXSwgeFsxOjNdKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtWzE6M10sIHlbMTozXSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVsxOjNdLCB6WzE6M10pCisgICAgICAgICAgICBkZWwgeSwgegorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtWzE6M10sIHhbMTozXSkKKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfZnJvbV9zdGF0aWNfZXhwb3J0ZXIoc2VsZik6CisKKyAgICAgICAgZm10ID0gJ0InCisgICAgICAgIGxzdCA9IFswLDEsMiwzLDQsNSw2LDcsOCw5LDEwLDExXQorCisgICAgICAgICMgZXhjZXB0aW9ucworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHN0YXRpY2FycmF5LCAxLCAyLCAzKQorCisgICAgICAgICMgdmlldy5vYmo9PXgKKyAgICAgICAgeCA9IHN0YXRpY2FycmF5KCkKKyAgICAgICAgeSA9IG1lbW9yeXZpZXcoeCkKKyAgICAgICAgc2VsZi52ZXJpZnkoeSwgb2JqPXgsCisgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPTEsIGZtdD1mbXQsIHJlYWRvbmx5PTEsCisgICAgICAgICAgICAgICAgICAgIG5kaW09MSwgc2hhcGU9WzEyXSwgc3RyaWRlcz1bMV0sCisgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QpCisgICAgICAgIGZvciBpIGluIHJhbmdlKDEyKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeVtpXSwgaSkKKyAgICAgICAgZGVsIHgKKyAgICAgICAgZGVsIHkKKworICAgICAgICB4ID0gc3RhdGljYXJyYXkoKQorICAgICAgICB5ID0gbWVtb3J5dmlldyh4KQorICAgICAgICBkZWwgeQorICAgICAgICBkZWwgeAorCisgICAgICAgIHggPSBzdGF0aWNhcnJheSgpCisgICAgICAgIHkgPSBuZGFycmF5KHgsIGdldGJ1Zj1QeUJVRl9GVUxMX1JPKQorICAgICAgICB6ID0gbmRhcnJheSh5LCBnZXRidWY9UHlCVUZfRlVMTF9STykKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoeikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5Lm9iaiwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhtLm9iaiwgeikKKyAgICAgICAgc2VsZi52ZXJpZnkobSwgb2JqPXosCisgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPTEsIGZtdD1mbXQsIHJlYWRvbmx5PTEsCisgICAgICAgICAgICAgICAgICAgIG5kaW09MSwgc2hhcGU9WzEyXSwgc3RyaWRlcz1bMV0sCisgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QpCisgICAgICAgIGRlbCB4LCB5LCB6LCBtCisKKyAgICAgICAgeCA9IHN0YXRpY2FycmF5KCkKKyAgICAgICAgeSA9IG5kYXJyYXkoeCwgZ2V0YnVmPVB5QlVGX0ZVTExfUk8sIGZsYWdzPU5EX1JFRElSRUNUKQorICAgICAgICB6ID0gbmRhcnJheSh5LCBnZXRidWY9UHlCVUZfRlVMTF9STywgZmxhZ3M9TkRfUkVESVJFQ1QpCisgICAgICAgIG0gPSBtZW1vcnl2aWV3KHopCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeS5vYmosIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoei5vYmosIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMobS5vYmosIHgpCisgICAgICAgIHNlbGYudmVyaWZ5KG0sIG9iaj14LAorICAgICAgICAgICAgICAgICAgICBpdGVtc2l6ZT0xLCBmbXQ9Zm10LCByZWFkb25seT0xLAorICAgICAgICAgICAgICAgICAgICBuZGltPTEsIHNoYXBlPVsxMl0sIHN0cmlkZXM9WzFdLAorICAgICAgICAgICAgICAgICAgICBsc3Q9bHN0KQorICAgICAgICBkZWwgeCwgeSwgeiwgbQorCisgICAgICAgICMgdmlldy5vYmo9PU5VTEwKKyAgICAgICAgeCA9IHN0YXRpY2FycmF5KGxlZ2FjeV9tb2RlPVRydWUpCisgICAgICAgIHkgPSBtZW1vcnl2aWV3KHgpCisgICAgICAgIHNlbGYudmVyaWZ5KHksIG9iaj1Ob25lLAorICAgICAgICAgICAgICAgICAgICBpdGVtc2l6ZT0xLCBmbXQ9Zm10LCByZWFkb25seT0xLAorICAgICAgICAgICAgICAgICAgICBuZGltPTEsIHNoYXBlPVsxMl0sIHN0cmlkZXM9WzFdLAorICAgICAgICAgICAgICAgICAgICBsc3Q9bHN0KQorICAgICAgICBmb3IgaSBpbiByYW5nZSgxMik6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHlbaV0sIGkpCisgICAgICAgIGRlbCB4CisgICAgICAgIGRlbCB5CisKKyAgICAgICAgeCA9IHN0YXRpY2FycmF5KGxlZ2FjeV9tb2RlPVRydWUpCisgICAgICAgIHkgPSBtZW1vcnl2aWV3KHgpCisgICAgICAgIGRlbCB5CisgICAgICAgIGRlbCB4CisKKyAgICAgICAgeCA9IHN0YXRpY2FycmF5KGxlZ2FjeV9tb2RlPVRydWUpCisgICAgICAgIHkgPSBuZGFycmF5KHgsIGdldGJ1Zj1QeUJVRl9GVUxMX1JPKQorICAgICAgICB6ID0gbmRhcnJheSh5LCBnZXRidWY9UHlCVUZfRlVMTF9STykKKyAgICAgICAgbSA9IG1lbW9yeXZpZXcoeikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5Lm9iaiwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhtLm9iaiwgeikKKyAgICAgICAgc2VsZi52ZXJpZnkobSwgb2JqPXosCisgICAgICAgICAgICAgICAgICAgIGl0ZW1zaXplPTEsIGZtdD1mbXQsIHJlYWRvbmx5PTEsCisgICAgICAgICAgICAgICAgICAgIG5kaW09MSwgc2hhcGU9WzEyXSwgc3RyaWRlcz1bMV0sCisgICAgICAgICAgICAgICAgICAgIGxzdD1sc3QpCisgICAgICAgIGRlbCB4LCB5LCB6LCBtCisKKyAgICAgICAgeCA9IHN0YXRpY2FycmF5KGxlZ2FjeV9tb2RlPVRydWUpCisgICAgICAgIHkgPSBuZGFycmF5KHgsIGdldGJ1Zj1QeUJVRl9GVUxMX1JPLCBmbGFncz1ORF9SRURJUkVDVCkKKyAgICAgICAgeiA9IG5kYXJyYXkoeSwgZ2V0YnVmPVB5QlVGX0ZVTExfUk8sIGZsYWdzPU5EX1JFRElSRUNUKQorICAgICAgICBtID0gbWVtb3J5dmlldyh6KQorICAgICAgICAjIENsZWFybHkgc2V0dGluZyB2aWV3Lm9iaj09TlVMTCBpcyBpbmZlcmlvciwgc2luY2UgaXQKKyAgICAgICAgIyBtZXNzZXMgdXAgdGhlIHJlZGlyZWN0aW9uIGNoYWluOgorICAgICAgICBzZWxmLmFzc2VydElzKHkub2JqLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydElzKHoub2JqLCB5KQorICAgICAgICBzZWxmLmFzc2VydElzKG0ub2JqLCB5KQorICAgICAgICBzZWxmLnZlcmlmeShtLCBvYmo9eSwKKyAgICAgICAgICAgICAgICAgICAgaXRlbXNpemU9MSwgZm10PWZtdCwgcmVhZG9ubHk9MSwKKyAgICAgICAgICAgICAgICAgICAgbmRpbT0xLCBzaGFwZT1bMTJdLCBzdHJpZGVzPVsxXSwKKyAgICAgICAgICAgICAgICAgICAgbHN0PWxzdCkKKyAgICAgICAgZGVsIHgsIHksIHosIG0KKworICAgIGRlZiB0ZXN0X21lbW9yeXZpZXdfZ2V0YnVmZmVyX3VuZGVmaW5lZChzZWxmKToKKworICAgICAgICAjIGdldGJ1ZmZlcnByb2MgZG9lcyBub3QgYWRoZXJlIHRvIHRoZSBuZXcgZG9jdW1lbnRhdGlvbgorICAgICAgICBuZCA9IG5kYXJyYXkoWzEsMiwzXSwgWzNdLCBmbGFncz1ORF9HRVRCVUZfRkFJTHxORF9HRVRCVUZfVU5ERUZJTkVEKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgbWVtb3J5dmlldywgbmQpCisKKyAgICBkZWYgdGVzdF9pc3N1ZV83Mzg1KHNlbGYpOgorICAgICAgICB4ID0gbmRhcnJheShbMSwyLDNdLCBzaGFwZT1bM10sIGZsYWdzPU5EX0dFVEJVRl9GQUlMKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCdWZmZXJFcnJvciwgbWVtb3J5dmlldywgeCkKKworCitkZWYgdGVzdF9tYWluKCk6CisgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoVGVzdEJ1ZmZlclByb3RvY29sKQorCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfYnVpbHRpbi5weSBiL0xpYi90ZXN0L3Rlc3RfYnVpbHRpbi5weQppbmRleCA1NWZiNjNhLi5iZmE1ZWU3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2J1aWx0aW4ucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9idWlsdGluLnB5CkBAIC0xMiw3ICsxMiw3IEBACiBpbXBvcnQgYnVpbHRpbnMKIGltcG9ydCByYW5kb20KIGltcG9ydCB0cmFjZWJhY2sKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBmY21wLCBURVNURk4sIHVubGluaywgIHJ1bl91bml0dGVzdCwgY2hlY2tfd2FybmluZ3MKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBURVNURk4sIHVubGluaywgIHJ1bl91bml0dGVzdCwgY2hlY2tfd2FybmluZ3MKIGZyb20gb3BlcmF0b3IgaW1wb3J0IG5lZwogdHJ5OgogICAgIGltcG9ydCBwdHksIHNpZ25hbApAQCAtMjU1LDggKzI1NSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hyKDB4ZmYpLCAnXHhmZicpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGNociwgMTw8MjQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hyKHN5cy5tYXh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBzdHIoKCdcXFUlMDh4JyAlIChzeXMubWF4dW5pY29kZSkpLmVuY29kZSgiYXNjaWkiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3VuaWNvZGUtZXNjYXBlJykpCisgICAgICAgICAgICAgICAgICAgICAgICAgc3RyKCdcXFUwMDEwZmZmZicuZW5jb2RlKCJhc2NpaSIpLCAndW5pY29kZS1lc2NhcGUnKSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjaHIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hyKDB4MDAwMEZGRkYpLCAiXFUwMDAwRkZGRiIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hyKDB4MDAwMTAwMDApLCAiXFUwMDAxMDAwMCIpCkBAIC0zNzgsNyArMzc3LDE1IEBACiAgICAgICAgIGYgPSBGb28oKQogICAgICAgICBzZWxmLmFzc2VydFRydWUoZGlyKGYpID09IFsiZ2EiLCAia2FuIiwgInJvbyJdKQogCi0gICAgICAgICMgZGlyKG9ial9fZGlyX19ub3RfbGlzdCkKKyAgICAgICAgIyBkaXIob2JqX19kaXJfX3R1cGxlKQorICAgICAgICBjbGFzcyBGb28ob2JqZWN0KToKKyAgICAgICAgICAgIGRlZiBfX2Rpcl9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiAoImIiLCAiYyIsICJhIikKKyAgICAgICAgcmVzID0gZGlyKEZvbygpKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UocmVzLCBsaXN0KQorICAgICAgICBzZWxmLmFzc2VydFRydWUocmVzID09IFsiYSIsICJiIiwgImMiXSkKKworICAgICAgICAjIGRpcihvYmpfX2Rpcl9fbm90X3NlcXVlbmNlKQogICAgICAgICBjbGFzcyBGb28ob2JqZWN0KToKICAgICAgICAgICAgIGRlZiBfX2Rpcl9fKHNlbGYpOgogICAgICAgICAgICAgICAgIHJldHVybiA3CkBAIC0zOTEsNiArMzk4LDggQEAKICAgICAgICAgZXhjZXB0OgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oZGlyKHN5cy5leGNfaW5mbygpWzJdKSksIDQpCiAKKyAgICAgICAgIyB0ZXN0IHRoYXQgb2JqZWN0IGhhcyBhIF9fZGlyX18oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvcnRlZChbXS5fX2Rpcl9fKCkpLCBkaXIoW10pKQogCiAgICAgZGVmIHRlc3RfZGl2bW9kKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpdm1vZCgxMiwgNyksICgxLCA1KSkKQEAgLTQwMCwxMCArNDA5LDEzIEBACiAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXZtb2QoLXN5cy5tYXhzaXplLTEsIC0xKSwgKHN5cy5tYXhzaXplKzEsIDApKQogCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3QgZmNtcChkaXZtb2QoMy4yNSwgMS4wKSwgKDMuMCwgMC4yNSkpKQotICAgICAgICBzZWxmLmFzc2VydFRydWUobm90IGZjbXAoZGl2bW9kKC0zLjI1LCAxLjApLCAoLTQuMCwgMC43NSkpKQotICAgICAgICBzZWxmLmFzc2VydFRydWUobm90IGZjbXAoZGl2bW9kKDMuMjUsIC0xLjApLCAoLTQuMCwgLTAuNzUpKSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBmY21wKGRpdm1vZCgtMy4yNSwgLTEuMCksICgzLjAsIC0wLjI1KSkpCisgICAgICAgIGZvciBudW0sIGRlbm9tLCBleHBfcmVzdWx0IGluIFsgKDMuMjUsIDEuMCwgKDMuMCwgMC4yNSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgtMy4yNSwgMS4wLCAoLTQuMCwgMC43NSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgzLjI1LCAtMS4wLCAoLTQuMCwgLTAuNzUpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoLTMuMjUsIC0xLjAsICgzLjAsIC0wLjI1KSldOgorICAgICAgICAgICAgcmVzdWx0ID0gZGl2bW9kKG51bSwgZGVub20pCisgICAgICAgICAgICBzZWxmLmFzc2VydEFsbW9zdEVxdWFsKHJlc3VsdFswXSwgZXhwX3Jlc3VsdFswXSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0QWxtb3N0RXF1YWwocmVzdWx0WzFdLCBleHBfcmVzdWx0WzFdKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZGl2bW9kKQogCkBAIC0xMTk3LDYgKzEyMDksOSBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHN1bSwgNDIpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc3VtLCBbJ2EnLCAnYicsICdjJ10pCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc3VtLCBbJ2EnLCAnYicsICdjJ10sICcnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHN1bSwgW2InYScsIGInYyddLCBiJycpCisgICAgICAgIHZhbHVlcyA9IFtieXRlYXJyYXkoYidhJyksIGJ5dGVhcnJheShiJ2InKV0KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzdW0sIHZhbHVlcywgYnl0ZWFycmF5KGInJykpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc3VtLCBbWzFdLCBbMl0sIFszXV0pCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc3VtLCBbezI6M31dKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHN1bSwgW3syOjN9XSoyLCB7MjozfSkKQEAgLTEzNTgsMTQgKzEzNzMsMTQgQEAKIAogICAgICAgICAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICAgICMgSXNzdWUgIzc5OTQ6IG9iamVjdC5fX2Zvcm1hdF9fIHdpdGggYSBub24tZW1wdHkgZm9ybWF0IHN0cmluZyBpcwotICAgICAgICAjICBwZW5kaW5nIGRlcHJlY2F0ZWQKKyAgICAgICAgIyAgZGVwcmVjYXRlZAogICAgICAgICBkZWYgdGVzdF9kZXByZWNhdGVkX2Zvcm1hdF9zdHJpbmcob2JqLCBmbXRfc3RyLCBzaG91bGRfcmFpc2Vfd2FybmluZyk6CiAgICAgICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKHJlY29yZD1UcnVlKSBhcyB3OgotICAgICAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcigiYWx3YXlzIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImFsd2F5cyIsIERlcHJlY2F0aW9uV2FybmluZykKICAgICAgICAgICAgICAgICBmb3JtYXQob2JqLCBmbXRfc3RyKQogICAgICAgICAgICAgaWYgc2hvdWxkX3JhaXNlX3dhcm5pbmc6CiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4odyksIDEpCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHdbMF0ubWVzc2FnZSwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uod1swXS5tZXNzYWdlLCBEZXByZWNhdGlvbldhcm5pbmcpCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJbignb2JqZWN0Ll9fZm9ybWF0X18gd2l0aCBhIG5vbi1lbXB0eSBmb3JtYXQgJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cmluZycsIHN0cih3WzBdLm1lc3NhZ2UpKQogICAgICAgICAgICAgZWxzZToKQEAgLTE0MDksNiArMTQyNCwxMyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCB4LnRyYW5zbGF0ZSwgYiIxIiwgMSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCB4LnRyYW5zbGF0ZSwgYiIxIioyNTYsIDEpCiAKKyAgICBkZWYgdGVzdF9jb25zdHJ1Y3Rfc2luZ2xldG9ucyhzZWxmKToKKyAgICAgICAgZm9yIGNvbnN0IGluIE5vbmUsIEVsbGlwc2lzLCBOb3RJbXBsZW1lbnRlZDoKKyAgICAgICAgICAgIHRwID0gdHlwZShjb25zdCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXModHAoKSwgY29uc3QpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHRwLCAxLCAyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCB0cCwgYT0xLCBiPTIpCisKIGNsYXNzIFRlc3RTb3J0ZWQodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfYmFzaWMoc2VsZik6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2J5dGVzLnB5IGIvTGliL3Rlc3QvdGVzdF9ieXRlcy5weQppbmRleCA1ZWFiOGY1Li4yMDNmYzVjIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2J5dGVzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYnl0ZXMucHkKQEAgLTE4OCwyNCArMTg4LDI2IEBACiAKICAgICBkZWYgdGVzdF9lbmNvZGluZyhzZWxmKToKICAgICAgICAgc2FtcGxlID0gIkhlbGxvIHdvcmxkXG5cdTEyMzRcdTU2NzhcdTlhYmMiCi0gICAgICAgIGZvciBlbmMgaW4gKCJ1dGY4IiwgInV0ZjE2Iik6CisgICAgICAgIGZvciBlbmMgaW4gKCJ1dGYtOCIsICJ1dGYtMTYiKToKICAgICAgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChzYW1wbGUsIGVuYykKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiwgc2VsZi50eXBlMnRlc3Qoc2FtcGxlLmVuY29kZShlbmMpKSkKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZUVuY29kZUVycm9yLCBzZWxmLnR5cGUydGVzdCwgc2FtcGxlLCAibGF0aW4xIikKLSAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KHNhbXBsZSwgImxhdGluMSIsICJpZ25vcmUiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRW5jb2RlRXJyb3IsIHNlbGYudHlwZTJ0ZXN0LCBzYW1wbGUsICJsYXRpbi0xIikKKyAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KHNhbXBsZSwgImxhdGluLTEiLCAiaWdub3JlIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLCBzZWxmLnR5cGUydGVzdChzYW1wbGVbOi0zXSwgInV0Zi04IikpCiAKICAgICBkZWYgdGVzdF9kZWNvZGUoc2VsZik6CiAgICAgICAgIHNhbXBsZSA9ICJIZWxsbyB3b3JsZFxuXHUxMjM0XHU1Njc4XHU5YWJjXGRlZjBcZGVmMCIKLSAgICAgICAgZm9yIGVuYyBpbiAoInV0ZjgiLCAidXRmMTYiKToKKyAgICAgICAgZm9yIGVuYyBpbiAoInV0Zi04IiwgInV0Zi0xNiIpOgogICAgICAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KHNhbXBsZSwgZW5jKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmRlY29kZShlbmMpLCBzYW1wbGUpCiAgICAgICAgIHNhbXBsZSA9ICJIZWxsbyB3b3JsZFxuXHg4MFx4ODFceGZlXHhmZiIKLSAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KHNhbXBsZSwgImxhdGluMSIpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVEZWNvZGVFcnJvciwgYi5kZWNvZGUsICJ1dGY4IikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmRlY29kZSgidXRmOCIsICJpZ25vcmUiKSwgIkhlbGxvIHdvcmxkXG4iKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZGVjb2RlKGVycm9ycz0iaWdub3JlIiwgZW5jb2Rpbmc9InV0ZjgiKSwKKyAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KHNhbXBsZSwgImxhdGluLTEiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRGVjb2RlRXJyb3IsIGIuZGVjb2RlLCAidXRmLTgiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZGVjb2RlKCJ1dGYtOCIsICJpZ25vcmUiKSwgIkhlbGxvIHdvcmxkXG4iKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZGVjb2RlKGVycm9ycz0iaWdub3JlIiwgZW5jb2Rpbmc9InV0Zi04IiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgIkhlbGxvIHdvcmxkXG4iKQorICAgICAgICAjIERlZmF1bHQgZW5jb2RpbmcgaXMgdXRmLTgKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnR5cGUydGVzdChiJ1x4ZTJceDk4XHg4MycpLmRlY29kZSgpLCAnXHUyNjAzJykKIAogICAgIGRlZiB0ZXN0X2Zyb21faW50KHNlbGYpOgogICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoMCkKQEAgLTI5MSwxMCArMjkzLDI3IEBACiAKICAgICBkZWYgdGVzdF9jb3VudChzZWxmKToKICAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInbWlzc2lzc2lwcGknKQorICAgICAgICBpID0gMTA1CisgICAgICAgIHAgPSAxMTIKKyAgICAgICAgdyA9IDExOQorCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudChiJ2knKSwgNCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KGInc3MnKSwgMikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KGIndycpLCAwKQogCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudChpKSwgNCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KHcpLCAwKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudChiJ2knLCA2KSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KGIncCcsIDYpLCAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY291bnQoYidpJywgMSwgMyksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudChiJ3AnLCA3LCA5KSwgMSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY291bnQoaSwgNiksIDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudChwLCA2KSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KGksIDEsIDMpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY291bnQocCwgNywgOSksIDEpCisKICAgICBkZWYgdGVzdF9zdGFydHN3aXRoKHNlbGYpOgogICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYidoZWxsbycpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uoc2VsZi50eXBlMnRlc3QoKS5zdGFydHN3aXRoKGIiYW55dGhpbmciKSkKQEAgLTMyNSwzNSArMzQ0LDg2IEBACiAKICAgICBkZWYgdGVzdF9maW5kKHNlbGYpOgogICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYidtaXNzaXNzaXBwaScpCisgICAgICAgIGkgPSAxMDUKKyAgICAgICAgdyA9IDExOQorCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGInc3MnKSwgMikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmZpbmQoYidzcycsIDMpLCA1KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZChiJ3NzJywgMSwgNyksIDIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGInc3MnLCAxLCAzKSwgLTEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGIndycpLCAtMSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmZpbmQoYidtaXNzaXNzaXBwaWFuJyksIC0xKQogCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGkpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZCh3KSwgLTEpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmZpbmQoYidzcycsIDMpLCA1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZChiJ3NzJywgMSwgNyksIDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGInc3MnLCAxLCAzKSwgLTEpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmZpbmQoaSwgNiksIDcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGksIDEsIDMpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZCh3LCAxLCAzKSwgLTEpCisKKyAgICAgICAgZm9yIGluZGV4IGluICgtMSwgMjU2LCBzeXMubWF4c2l6ZSArIDEpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleCgKKyAgICAgICAgICAgICAgICBWYWx1ZUVycm9yLCByJ2J5dGUgbXVzdCBiZSBpbiByYW5nZVwoMCwgMjU2XCknLAorICAgICAgICAgICAgICAgIGIuZmluZCwgaW5kZXgpCisKICAgICBkZWYgdGVzdF9yZmluZChzZWxmKToKICAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInbWlzc2lzc2lwcGknKQorICAgICAgICBpID0gMTA1CisgICAgICAgIHcgPSAxMTkKKwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmZpbmQoYidzcycpLCA1KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmZpbmQoYidzcycsIDMpLCA1KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmZpbmQoYidzcycsIDAsIDYpLCAyKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmZpbmQoYid3JyksIC0xKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmZpbmQoYidtaXNzaXNzaXBwaWFuJyksIC0xKQogCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yZmluZChpKSwgMTApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yZmluZCh3KSwgLTEpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJmaW5kKGInc3MnLCAzKSwgNSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJmaW5kKGInc3MnLCAwLCA2KSwgMikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmZpbmQoaSwgMSwgMyksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yZmluZChpLCAzLCA5KSwgNykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJmaW5kKHcsIDEsIDMpLCAtMSkKKwogICAgIGRlZiB0ZXN0X2luZGV4KHNlbGYpOgotICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYid3b3JsZCcpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5pbmRleChiJ3cnKSwgMCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmluZGV4KGInb3JsJyksIDEpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGIuaW5kZXgsIGInd29ybScpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGIuaW5kZXgsIGInbGRvJykKKyAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInbWlzc2lzc2lwcGknKQorICAgICAgICBpID0gMTA1CisgICAgICAgIHcgPSAxMTkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuaW5kZXgoYidzcycpLCAyKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiLmluZGV4LCBiJ3cnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiLmluZGV4LCBiJ21pc3Npc3NpcHBpYW4nKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5pbmRleChpKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYi5pbmRleCwgdykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuaW5kZXgoYidzcycsIDMpLCA1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuaW5kZXgoYidzcycsIDEsIDcpLCAyKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiLmluZGV4LCBiJ3NzJywgMSwgMykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuaW5kZXgoaSwgNiksIDcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5pbmRleChpLCAxLCAzKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYi5pbmRleCwgdywgMSwgMykKIAogICAgIGRlZiB0ZXN0X3JpbmRleChzZWxmKToKLSAgICAgICAgIyBYWFggY291bGQgYmUgbW9yZSByaWdvcm91cwotICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYid3b3JsZCcpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yaW5kZXgoYid3JyksIDApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yaW5kZXgoYidvcmwnKSwgMSkKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYi5yaW5kZXgsIGInd29ybScpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGIucmluZGV4LCBiJ2xkbycpCisgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChiJ21pc3Npc3NpcHBpJykKKyAgICAgICAgaSA9IDEwNQorICAgICAgICB3ID0gMTE5CisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJpbmRleChiJ3NzJyksIDUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGIucmluZGV4LCBiJ3cnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiLnJpbmRleCwgYidtaXNzaXNzaXBwaWFuJykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmluZGV4KGkpLCAxMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYi5yaW5kZXgsIHcpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJpbmRleChiJ3NzJywgMyksIDUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yaW5kZXgoYidzcycsIDAsIDYpLCAyKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yaW5kZXgoaSwgMSwgMyksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yaW5kZXgoaSwgMywgOSksIDcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGIucmluZGV4LCB3LCAxLCAzKQogCiAgICAgZGVmIHRlc3RfcmVwbGFjZShzZWxmKToKICAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInbWlzc2lzc2lwcGknKQpAQCAtMzY1LDYgKzQzNSwxNCBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuc3BsaXQoYidpJyksIFtiJ20nLCBiJ3NzJywgYidzcycsIGIncHAnLCBiJyddKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuc3BsaXQoYidzcycpLCBbYidtaScsIGInaScsIGInaXBwaSddKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuc3BsaXQoYid3JyksIFtiXSkKKyAgICAgICAgIyB3aXRoIGtleXdvcmQgYXJncworICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYidhfGJ8Y3xkJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnNwbGl0KHNlcD1iJ3wnKSwgW2InYScsIGInYicsIGInYycsIGInZCddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuc3BsaXQoYid8JywgbWF4c3BsaXQ9MSksIFtiJ2EnLCBiJ2J8Y3xkJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5zcGxpdChzZXA9Yid8JywgbWF4c3BsaXQ9MSksIFtiJ2EnLCBiJ2J8Y3xkJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5zcGxpdChtYXhzcGxpdD0xLCBzZXA9Yid8JyksIFtiJ2EnLCBiJ2J8Y3xkJ10pCisgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChiJ2EgYiBjIGQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuc3BsaXQobWF4c3BsaXQ9MSksIFtiJ2EnLCBiJ2IgYyBkJ10pCiAKICAgICBkZWYgdGVzdF9zcGxpdF93aGl0ZXNwYWNlKHNlbGYpOgogICAgICAgICBmb3IgYiBpbiAoYicgIGFyZiAgYmFyZiAgJywgYidhcmZcdGJhcmYnLCBiJ2FyZlxuYmFyZicsIGInYXJmXHJiYXJmJywKQEAgLTM5Myw2ICs0NzEsMTQgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJzcGxpdChiJ2knKSwgW2InbScsIGInc3MnLCBiJ3NzJywgYidwcCcsIGInJ10pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yc3BsaXQoYidzcycpLCBbYidtaScsIGInaScsIGInaXBwaSddKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucnNwbGl0KGIndycpLCBbYl0pCisgICAgICAgICMgd2l0aCBrZXl3b3JkIGFyZ3MKKyAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInYXxifGN8ZCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yc3BsaXQoc2VwPWInfCcpLCBbYidhJywgYidiJywgYidjJywgYidkJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yc3BsaXQoYid8JywgbWF4c3BsaXQ9MSksIFtiJ2F8YnxjJywgYidkJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yc3BsaXQoc2VwPWInfCcsIG1heHNwbGl0PTEpLCBbYidhfGJ8YycsIGInZCddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucnNwbGl0KG1heHNwbGl0PTEsIHNlcD1iJ3wnKSwgW2InYXxifGMnLCBiJ2QnXSkKKyAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInYSBiIGMgZCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yc3BsaXQobWF4c3BsaXQ9MSksIFtiJ2EgYiBjJywgYidkJ10pCiAKICAgICBkZWYgdGVzdF9yc3BsaXRfd2hpdGVzcGFjZShzZWxmKToKICAgICAgICAgZm9yIGIgaW4gKGInICBhcmYgIGJhcmYgICcsIGInYXJmXHRiYXJmJywgYidhcmZcbmJhcmYnLCBiJ2FyZlxyYmFyZicsCkBAIC00NzMsNiArNTU5LDI3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi50eXBlMnRlc3QoYidhYmMnKS5sc3RyaXAsICdiJykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnR5cGUydGVzdChiJ2FiYycpLnJzdHJpcCwgJ2InKQogCisgICAgZGVmIHRlc3RfY2VudGVyKHNlbGYpOgorICAgICAgICAjIEZpbGwgY2hhcmFjdGVyIGNhbiBiZSBlaXRoZXIgYnl0ZXMgb3IgYnl0ZWFycmF5IChpc3N1ZSAxMjM4MCkKKyAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInYWJjJykKKyAgICAgICAgZm9yIGZpbGxfdHlwZSBpbiAoYnl0ZXMsIGJ5dGVhcnJheSk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY2VudGVyKDcsIGZpbGxfdHlwZShiJy0nKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYudHlwZTJ0ZXN0KGInLS1hYmMtLScpKQorCisgICAgZGVmIHRlc3RfbGp1c3Qoc2VsZik6CisgICAgICAgICMgRmlsbCBjaGFyYWN0ZXIgY2FuIGJlIGVpdGhlciBieXRlcyBvciBieXRlYXJyYXkgKGlzc3VlIDEyMzgwKQorICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYidhYmMnKQorICAgICAgICBmb3IgZmlsbF90eXBlIGluIChieXRlcywgYnl0ZWFycmF5KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5sanVzdCg3LCBmaWxsX3R5cGUoYictJykpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnR5cGUydGVzdChiJ2FiYy0tLS0nKSkKKworICAgIGRlZiB0ZXN0X3JqdXN0KHNlbGYpOgorICAgICAgICAjIEZpbGwgY2hhcmFjdGVyIGNhbiBiZSBlaXRoZXIgYnl0ZXMgb3IgYnl0ZWFycmF5IChpc3N1ZSAxMjM4MCkKKyAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInYWJjJykKKyAgICAgICAgZm9yIGZpbGxfdHlwZSBpbiAoYnl0ZXMsIGJ5dGVhcnJheSk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmp1c3QoNywgZmlsbF90eXBlKGInLScpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi50eXBlMnRlc3QoYictLS0tYWJjJykpCisKICAgICBkZWYgdGVzdF9vcmQoc2VsZik6CiAgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChiJ1wwQVx4N2ZceDgwXHhmZicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW29yZChiW2k6aSsxXSkgZm9yIGkgaW4gcmFuZ2UobGVuKGIpKV0sCkBAIC01MjksNiArNjM2LDE0IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZSwgYi5zdGFydHN3aXRoKGgsIE5vbmUsIC0yKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChGYWxzZSwgYi5zdGFydHN3aXRoKHgsIE5vbmUsIE5vbmUpKQogCisgICAgZGVmIHRlc3RfaW50ZWdlcl9hcmd1bWVudHNfb3V0X29mX2J5dGVfcmFuZ2Uoc2VsZik6CisgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChiJ2hlbGxvJykKKworICAgICAgICBmb3IgbWV0aG9kIGluIChiLmNvdW50LCBiLmZpbmQsIGIuaW5kZXgsIGIucmZpbmQsIGIucmluZGV4KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG1ldGhvZCwgLTEpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtZXRob2QsIDI1NikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG1ldGhvZCwgOTk5OSkKKwogICAgIGRlZiB0ZXN0X2ZpbmRfZXRjX3JhaXNlX2NvcnJlY3RfZXJyb3JfbWVzc2FnZXMoc2VsZik6CiAgICAgICAgICMgaXNzdWUgMTE4MjgKICAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInaGVsbG8nKQpAQCAtNjM0LDYgKzc0OSwzOSBAQAogICAgICAgICBiLnJldmVyc2UoKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGIpCiAKKyAgICBkZWYgdGVzdF9jbGVhcihzZWxmKToKKyAgICAgICAgYiA9IGJ5dGVhcnJheShiJ3B5dGhvbicpCisgICAgICAgIGIuY2xlYXIoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIsIGInJykKKworICAgICAgICBiID0gYnl0ZWFycmF5KGInJykKKyAgICAgICAgYi5jbGVhcigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiwgYicnKQorCisgICAgICAgIGIgPSBieXRlYXJyYXkoYicnKQorICAgICAgICBiLmFwcGVuZChvcmQoJ3InKSkKKyAgICAgICAgYi5jbGVhcigpCisgICAgICAgIGIuYXBwZW5kKG9yZCgncCcpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIsIGIncCcpCisKKyAgICBkZWYgdGVzdF9jb3B5KHNlbGYpOgorICAgICAgICBiID0gYnl0ZWFycmF5KGInYWJjJykKKyAgICAgICAgYmIgPSBiLmNvcHkoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJiLCBiJ2FiYycpCisKKyAgICAgICAgYiA9IGJ5dGVhcnJheShiJycpCisgICAgICAgIGJiID0gYi5jb3B5KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiYiwgYicnKQorCisgICAgICAgICMgdGVzdCB0aGF0IGl0J3MgaW5kZWVkIGEgY29weSBhbmQgbm90IGEgcmVmZXJlbmNlCisgICAgICAgIGIgPSBieXRlYXJyYXkoYidhYmMnKQorICAgICAgICBiYiA9IGIuY29weSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiwgYmIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoYiwgYmIpCisgICAgICAgIGJiLmFwcGVuZChvcmQoJ2QnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiYiwgYidhYmNkJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLCBiJ2FiYycpCisKICAgICBkZWYgdGVzdF9yZWdleHBzKHNlbGYpOgogICAgICAgICBkZWYgYnkocyk6CiAgICAgICAgICAgICByZXR1cm4gYnl0ZWFycmF5KG1hcChvcmQsIHMpKQpAQCAtMTEwNSw5ICsxMjUzLDExIEBACiAKIGNsYXNzIEJ5dGVBcnJheUFzU3RyaW5nVGVzdChGaXhlZFN0cmluZ1Rlc3QpOgogICAgIHR5cGUydGVzdCA9IGJ5dGVhcnJheQorICAgIGNvbnRhaW5zX2J5dGVzID0gVHJ1ZQogCiBjbGFzcyBCeXRlc0FzU3RyaW5nVGVzdChGaXhlZFN0cmluZ1Rlc3QpOgogICAgIHR5cGUydGVzdCA9IGJ5dGVzCisgICAgY29udGFpbnNfYnl0ZXMgPSBUcnVlCiAKIAogY2xhc3MgU3ViY2xhc3NUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfYnoyLnB5IGIvTGliL3Rlc3QvdGVzdF9iejIucHkKaW5kZXggYmUzNTU4MC4uY2M0MTZlZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9iejIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9iejIucHkKQEAgLTEsMTAgKzEsMTEgQEAKICMhL3Vzci9iaW4vZW52IHB5dGhvbjMKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTgorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTiwgYmlnbWVtdGVzdCwgXzRHCiAKIGltcG9ydCB1bml0dGVzdAogZnJvbSBpbyBpbXBvcnQgQnl0ZXNJTwogaW1wb3J0IG9zCitpbXBvcnQgcmFuZG9tCiBpbXBvcnQgc3VicHJvY2VzcwogaW1wb3J0IHN5cwogCkBAIC0yMSw5ICsyMiwzMSBAQAogCiBjbGFzcyBCYXNlVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgIkJhc2UgZm9yIG90aGVyIHRlc3RjYXNlcy4iCi0gICAgVEVYVCA9IGIncm9vdDp4OjA6MDpyb290Oi9yb290Oi9iaW4vYmFzaFxuYmluOng6MToxOmJpbjovYmluOlxuZGFlbW9uOng6MjoyOmRhZW1vbjovc2JpbjpcbmFkbTp4OjM6NDphZG06L3Zhci9hZG06XG5scDp4OjQ6NzpscDovdmFyL3Nwb29sL2xwZDpcbnN5bmM6eDo1OjA6c3luYzovc2JpbjovYmluL3N5bmNcbnNodXRkb3duOng6NjowOnNodXRkb3duOi9zYmluOi9zYmluL3NodXRkb3duXG5oYWx0Ong6NzowOmhhbHQ6L3NiaW46L3NiaW4vaGFsdFxubWFpbDp4Ojg6MTI6bWFpbDovdmFyL3Nwb29sL21haWw6XG5uZXdzOng6OToxMzpuZXdzOi92YXIvc3Bvb2wvbmV3czpcbnV1Y3A6eDoxMDoxNDp1dWNwOi92YXIvc3Bvb2wvdXVjcDpcbm9wZXJhdG9yOng6MTE6MDpvcGVyYXRvcjovcm9vdDpcbmdhbWVzOng6MTI6MTAwOmdhbWVzOi91c3IvZ2FtZXM6XG5nb3BoZXI6eDoxMzozMDpnb3BoZXI6L3Vzci9saWIvZ29waGVyLWRhdGE6XG5mdHA6eDoxNDo1MDpGVFAgVXNlcjovdmFyL2Z0cDovYmluL2Jhc2hcbm5vYm9keTp4OjY1NTM0OjY1NTM0Ok5vYm9keTovaG9tZTpcbnBvc3RmaXg6eDoxMDA6MTAxOnBvc3RmaXg6L3Zhci9zcG9vbC9wb3N0Zml4OlxubmllbWV5ZXI6eDo1MDA6NTAwOjovaG9tZS9uaWVtZXllcjovYmluL2Jhc2hcbnBvc3RncmVzOng6MTAxOjEwMjpQb3N0Z3JlU1FMIFNlcnZlcjovdmFyL2xpYi9wZ3NxbDovYmluL2Jhc2hcbm15c3FsOng6MTAyOjEwMzpNeVNRTCBzZXJ2ZXI6L3Zhci9saWIvbXlzcWw6L2Jpbi9iYXNoXG53d3c6eDoxMDM6MTA0OjovdmFyL3d3dzovYmluL2ZhbHNlXG4nCisgICAgVEVYVF9MSU5FUyA9IFsKKyAgICAgICAgYidyb290Ong6MDowOnJvb3Q6L3Jvb3Q6L2Jpbi9iYXNoXG4nLAorICAgICAgICBiJ2Jpbjp4OjE6MTpiaW46L2JpbjpcbicsCisgICAgICAgIGInZGFlbW9uOng6MjoyOmRhZW1vbjovc2JpbjpcbicsCisgICAgICAgIGInYWRtOng6Mzo0OmFkbTovdmFyL2FkbTpcbicsCisgICAgICAgIGInbHA6eDo0Ojc6bHA6L3Zhci9zcG9vbC9scGQ6XG4nLAorICAgICAgICBiJ3N5bmM6eDo1OjA6c3luYzovc2JpbjovYmluL3N5bmNcbicsCisgICAgICAgIGInc2h1dGRvd246eDo2OjA6c2h1dGRvd246L3NiaW46L3NiaW4vc2h1dGRvd25cbicsCisgICAgICAgIGInaGFsdDp4Ojc6MDpoYWx0Oi9zYmluOi9zYmluL2hhbHRcbicsCisgICAgICAgIGInbWFpbDp4Ojg6MTI6bWFpbDovdmFyL3Nwb29sL21haWw6XG4nLAorICAgICAgICBiJ25ld3M6eDo5OjEzOm5ld3M6L3Zhci9zcG9vbC9uZXdzOlxuJywKKyAgICAgICAgYid1dWNwOng6MTA6MTQ6dXVjcDovdmFyL3Nwb29sL3V1Y3A6XG4nLAorICAgICAgICBiJ29wZXJhdG9yOng6MTE6MDpvcGVyYXRvcjovcm9vdDpcbicsCisgICAgICAgIGInZ2FtZXM6eDoxMjoxMDA6Z2FtZXM6L3Vzci9nYW1lczpcbicsCisgICAgICAgIGInZ29waGVyOng6MTM6MzA6Z29waGVyOi91c3IvbGliL2dvcGhlci1kYXRhOlxuJywKKyAgICAgICAgYidmdHA6eDoxNDo1MDpGVFAgVXNlcjovdmFyL2Z0cDovYmluL2Jhc2hcbicsCisgICAgICAgIGInbm9ib2R5Ong6NjU1MzQ6NjU1MzQ6Tm9ib2R5Oi9ob21lOlxuJywKKyAgICAgICAgYidwb3N0Zml4Ong6MTAwOjEwMTpwb3N0Zml4Oi92YXIvc3Bvb2wvcG9zdGZpeDpcbicsCisgICAgICAgIGInbmllbWV5ZXI6eDo1MDA6NTAwOjovaG9tZS9uaWVtZXllcjovYmluL2Jhc2hcbicsCisgICAgICAgIGIncG9zdGdyZXM6eDoxMDE6MTAyOlBvc3RncmVTUUwgU2VydmVyOi92YXIvbGliL3Bnc3FsOi9iaW4vYmFzaFxuJywKKyAgICAgICAgYidteXNxbDp4OjEwMjoxMDM6TXlTUUwgc2VydmVyOi92YXIvbGliL215c3FsOi9iaW4vYmFzaFxuJywKKyAgICAgICAgYid3d3c6eDoxMDM6MTA0OjovdmFyL3d3dzovYmluL2ZhbHNlXG4nLAorICAgICAgICBdCisgICAgVEVYVCA9IGInJy5qb2luKFRFWFRfTElORVMpCiAgICAgREFUQSA9IGInQlpoOTFBWSZTWS5ceGM4Tlx4MThceDAwXHgwMT5fXHg4MFx4MDBceDEwQFx4MDJceGZmXHhmMFx4MDFceDA3blx4MDA/XHhlN1x4ZmZceGUwMFx4MDFceDk5XHhhYVx4MDBceGMwXHgwM0ZceDg2XHg4YyMmXHg4M0ZceDlhXHgwM1x4MDZceGE2XHhkMFx4YTZceDkzTVx4MGZRXHhhN1x4YThceDA2XHg4MDRoaFx4MTIkXHgxMVx4YTRpNFx4ZjE0U1x4ZDI8UVx4YjVceDBmSFx4ZDNceGQ0XHhkZFx4ZDVceDg3XHhiYlx4ZjhceDk0XHJceDhmXHhhZklceDEyXHhlMVx4YzlceGY4L0VceDAwcHVceDg5XHgxMl1ceGM5XHhiYkRMXG5RXHgwZVx0MVx4MTJceGRmXHhhMFx4YzBceDk3XHhhYzJPOVx4ODlceDEzXHg5NFx4MGVceDFjN1x4MGVkXHg5NUlceDBjXHhhYUpceGE0XHgxOExceDEwXHgwNSNceDljXHhhZlx4YmFceGJjL1x4OTdceDhhI0NceGM4XHhlMVx4OGNXXHhmOVx4ZTJceGQwXHhkNk1ceGE3XHg4YlhhPGVceDg0dFx4Y2JMXHhiM1x4YTdceGQ5XHhjZFx4ZDFceGNiXHg4NC5ceGFmXHhiM1x4YWJceGFiXHhhZGBufVx4YTBsaFx0RSxceDhlWlx4MTVceDE3Vkg+XHg4OFx4ZTVceGNkOWdkNlx4MGJcblx4ZTlceDliXHhkNVx4OGFceDk5XHhmN1x4MDguS1x4OGV2XHhmYlx4Zjd4d1x4YmJceGRmXHhhMVx4OTJceGYxXHhkZHwvIjtceGEyXHhiYVx4OWZceGQ1XHhiMSNBXHhiNlx4ZjZceGIzb1x4YzlceGM1eVxcXHhlYk9ceGU3XHg4NVx4OWFceGJjXHhiNmY4XHg5NTJceGQ1XHhkNyIlXHg4OT5WLFx4ZjdceGE2elx4ZTJceDlmXHhhM1x4ZGZceDExXHgxMSJceGQ2RSlJXHhhOVx4MTNeXHhjYVx4ZjNyXHhkMFx4MDNVXHg5MjJceGYyNlx4ZWNceGI2XHhlZFx4OGJceGMzVVx4MTNceDlkXHhjNVx4MTcwXHhhNFx4ZmFeXHg5Mlx4YWNERlx4OGFceDk3XHhkNlx4MTlceGZlXHhkZFx4YjhceGJkXHgxYVx4OWFceDE5XHhhM1x4ODBhbmtSXHg4Ylx4ZTVceGQ4M11ceGE5XHhjNlx4MDhceDgyZlx4ZjZceGI5IjZsJFx4YjhqQFx4YzBceDhhXHhiMGwxLi5ceGJha1x4ODNsc1x4MTVceGJjXHhmNFx4YzFceDEzXHhiZVx4ZjhFXHhiOFx4OWRcclx4YThceDlka1x4ODRceGQzblx4ZmFceGFjUVx4MDdceGIxJXlceGFhdlx4YjRceDA4XHhlMHpceDFiXHgxNlx4ZjVceDA0XHhlOVx4Y2NceGI5XHgwOHpceDFlbjcuR1x4ZmNdXHhjOVx4MTRceGUxQkBceGJiIThgJwotICAgIERBVEFfQ1JMRiA9IGInQlpoOTFBWSZTWVx4YWV6XHhiYk5ceDAwXHgwMUhceGRmXHg4MFx4MDBceDEyQFx4MDJceGZmXHhmMFx4MDFceDA3blx4MDA/XHhlN1x4ZmZceGUwQFx4MDFceGJjXHhjNmBceDg2Klx4OGQ9TVx4YTlceDlhXHg4Nlx4ZDBMQFx4MGZJXHhhNiFceGExXHgxM1x4YzhceDg4amRpXHg4ZEBceDAzQFx4MWFceDFhXHgwY1x4MGNceDgzIFx4MDBceGM0aDJceDE5XHgwMVx4ODJEXHg4NGVcdFx4ZThceDk5XHg4OVx4MTlceDFhaFx4MDBcclx4MWFceDExXHhhZlx4OWJceDBmR1x4ZjUoXHgxYlx4MWY/XHRceDEyXHhjZlx4YjVceGZjXHg5NUVceDAwcHNceDg5XHgxMl5ceGE0XHhkZFx4YTImXHgwNShceDg3XHgwNFx4OThceDg5dVx4ZTQwJVx4YjZceDE5XCdceDhjXHhjNFx4ODlceGNhXHgwN1x4MGVceDFiIVx4OTFVSUZVJUNceDk5NCFESVx4ZDJceGZhXHhmMFx4ZjFOOFdceGRlXHgxM0FceGY1XHg5Y3IlP1x4OWYzO0k0NUFceGQxXHg4YlRceGIxPGxceGJhXHhjYl9ceGMwMHhZXHgxN3JceDE3XHg4OFx4MDhceDA4QFx4YTBccnlAXHgxMFx4MDQkKWBceGYyXHhjZVx4ODl6XHhiMHNceGVjXHg5Yi5pV1x4OWRceDgxXHhiNS0rdFx4OWZceDFhXCdceDk3ZEJceGY1eFx4YjVceGJlLlsuXHhkN1x4MGVceDgxXHhlN1x4MDhceDFjTmBceDg4XHgxMFx4Y2FceDg3XHhjMyEiXHg4MFx4OTJSXHhhMS9ceGQxXHhjMFx4ZTZtZlx4YWNceGJkXHg5OVx4Y2NhXHhiM1x4ODc4MD5ceGE0XHhjN1x4OGRceDFhXFwiXHhhZFx4YTFceGFieUJnXHgxNVx4YjlsXHg4OFx4ODhceDkxayJceDk0XHhhNFx4ZDRceDg5XHhhZSpceGE2XHgwYlx4MTBceDBjXHhkNlx4ZDRtXHhlODZceGVjXHhiNWpceDhhXHg4NmpcJztceGNhLlx4MDFJXHhmMlx4YWFKXHhlOFx4ODhceDhjVSt0M1x4ZmJceDBjXG5ceGEzM1x4MTNyMlxyXHgxNlx4ZTBceGIzKFx4YmZceDFkXHg4M3JceGU3TVx4ZjBEXHgxMzY1XHhkOFx4ODhceGQzXHhhNFx4OTJceGNiMlx4MDZceDA0XFxceGMxXHhiMFx4ZWEvL1x4YmVrJlx4ZDhceGU2K3RceGU1XHhhMVx4MTNceGFkYVx4MTZceGRlcjUid11ceGEyaVx4YjdbXHg5N1IgXHhlMklUXHhjZDtaXHgwNGRrNFx4YWRceDhhXHRceGQzXHg4MXpceDEwXHhmMTpeYFx4YWJceDFmXHhjNVx4ZGNceDkxTlx4MTQkK1x4OWVceGFlXHhkM1x4ODAnCiAKICAgICBpZiBoYXNfY21kbGluZV9idW56aXAyOgogICAgICAgICBkZWYgZGVjb21wcmVzcyhzZWxmLCBkYXRhKToKQEAgLTU0LDgzICs3NywxMzUgQEAKICAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUoc2VsZi5maWxlbmFtZSk6CiAgICAgICAgICAgICBvcy51bmxpbmsoc2VsZi5maWxlbmFtZSkKIAotICAgIGRlZiBjcmVhdGVUZW1wRmlsZShzZWxmLCBjcmxmPTApOgorICAgIGRlZiBjcmVhdGVUZW1wRmlsZShzZWxmLCBzdHJlYW1zPTEpOgogICAgICAgICB3aXRoIG9wZW4oc2VsZi5maWxlbmFtZSwgIndiIikgYXMgZjoKLSAgICAgICAgICAgIGlmIGNybGY6Ci0gICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYuREFUQV9DUkxGCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGRhdGEgPSBzZWxmLkRBVEEKLSAgICAgICAgICAgIGYud3JpdGUoZGF0YSkKKyAgICAgICAgICAgIGYud3JpdGUoc2VsZi5EQVRBICogc3RyZWFtcykKIAogICAgIGRlZiB0ZXN0UmVhZChzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLnJlYWQoKSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLnJlYWQsIE5vbmUpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFQpCiAKKyAgICBkZWYgdGVzdFJlYWRNdWx0aVN0cmVhbShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTUpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLnJlYWQsIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFQgKiA1KQorCisgICAgZGVmIHRlc3RSZWFkTW9ua2V5TXVsdGlTdHJlYW0oc2VsZik6CisgICAgICAgICMgVGVzdCBCWjJGaWxlLnJlYWQoKSBvbiBhIG11bHRpLXN0cmVhbSBhcmNoaXZlIHdoZXJlIGEgc3RyZWFtCisgICAgICAgICMgYm91bmRhcnkgY29pbmNpZGVzIHdpdGggdGhlIGVuZCBvZiB0aGUgcmF3IHJlYWQgYnVmZmVyLgorICAgICAgICBidWZmZXJfc2l6ZSA9IGJ6Mi5fQlVGRkVSX1NJWkUKKyAgICAgICAgYnoyLl9CVUZGRVJfU0laRSA9IGxlbihzZWxmLkRBVEEpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoc3RyZWFtcz01KQorICAgICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLnJlYWQsIE5vbmUpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgc2VsZi5URVhUICogNSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGJ6Mi5fQlVGRkVSX1NJWkUgPSBidWZmZXJfc2l6ZQorCiAgICAgZGVmIHRlc3RSZWFkMChzZWxmKToKLSAgICAgICAgIyBUZXN0IEJCWjJGaWxlLnJlYWQoMCkiCiAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi5yZWFkLCBOb25lKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoMCksIGIiIikKIAogICAgIGRlZiB0ZXN0UmVhZENodW5rMTAoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRmlsZS5yZWFkKCkgaW4gY2h1bmtzIG9mIDEwIGJ5dGVzIgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CiAgICAgICAgICAgICB0ZXh0ID0gYicnCi0gICAgICAgICAgICB3aGlsZSAxOgorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgICAgICAgICBzdHIgPSBiejJmLnJlYWQoMTApCiAgICAgICAgICAgICAgICAgaWYgbm90IHN0cjoKICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgICB0ZXh0ICs9IHN0cgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXh0LCBzZWxmLlRFWFQpCiAKKyAgICBkZWYgdGVzdFJlYWRDaHVuazEwTXVsdGlTdHJlYW0oc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoc3RyZWFtcz01KQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIHRleHQgPSBiJycKKyAgICAgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICAgICAgc3RyID0gYnoyZi5yZWFkKDEwKQorICAgICAgICAgICAgICAgIGlmIG5vdCBzdHI6CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgdGV4dCArPSBzdHIKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgc2VsZi5URVhUICogNSkKKwogICAgIGRlZiB0ZXN0UmVhZDEwMChzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLnJlYWQoMTAwKSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoMTAwKSwgc2VsZi5URVhUWzoxMDBdKQogCisgICAgZGVmIHRlc3RQZWVrKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBwZGF0YSA9IGJ6MmYucGVlaygpCisgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGxlbihwZGF0YSksIDApCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5URVhULnN0YXJ0c3dpdGgocGRhdGEpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgc2VsZi5URVhUKQorCisgICAgZGVmIHRlc3RSZWFkSW50byhzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgbiA9IDEyOAorICAgICAgICAgICAgYiA9IGJ5dGVhcnJheShuKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWRpbnRvKGIpLCBuKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLCBzZWxmLlRFWFRbOm5dKQorICAgICAgICAgICAgbiA9IGxlbihzZWxmLlRFWFQpIC0gbgorICAgICAgICAgICAgYiA9IGJ5dGVhcnJheShsZW4oc2VsZi5URVhUKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkaW50byhiKSwgbikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYls6bl0sIHNlbGYuVEVYVFstbjpdKQorCiAgICAgZGVmIHRlc3RSZWFkTGluZShzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLnJlYWRsaW5lKCkiCiAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi5yZWFkbGluZSwgTm9uZSkKLSAgICAgICAgICAgIHNpbyA9IEJ5dGVzSU8oc2VsZi5URVhUKQotICAgICAgICAgICAgZm9yIGxpbmUgaW4gc2lvLnJlYWRsaW5lcygpOgorICAgICAgICAgICAgZm9yIGxpbmUgaW4gc2VsZi5URVhUX0xJTkVTOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkbGluZSgpLCBsaW5lKQorCisgICAgZGVmIHRlc3RSZWFkTGluZU11bHRpU3RyZWFtKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKHN0cmVhbXM9NSkKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYucmVhZGxpbmUsIE5vbmUpCisgICAgICAgICAgICBmb3IgbGluZSBpbiBzZWxmLlRFWFRfTElORVMgKiA1OgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkbGluZSgpLCBsaW5lKQogCiAgICAgZGVmIHRlc3RSZWFkTGluZXMoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRmlsZS5yZWFkbGluZXMoKSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLnJlYWRsaW5lcywgTm9uZSkKLSAgICAgICAgICAgIHNpbyA9IEJ5dGVzSU8oc2VsZi5URVhUKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWRsaW5lcygpLCBzaW8ucmVhZGxpbmVzKCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZGxpbmVzKCksIHNlbGYuVEVYVF9MSU5FUykKKworICAgIGRlZiB0ZXN0UmVhZExpbmVzTXVsdGlTdHJlYW0oc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoc3RyZWFtcz01KQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi5yZWFkbGluZXMsIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZGxpbmVzKCksIHNlbGYuVEVYVF9MSU5FUyAqIDUpCiAKICAgICBkZWYgdGVzdEl0ZXJhdG9yKHNlbGYpOgotICAgICAgICAjICJUZXN0IGl0ZXIoQloyRmlsZSkiCiAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKLSAgICAgICAgICAgIHNpbyA9IEJ5dGVzSU8oc2VsZi5URVhUKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KGl0ZXIoYnoyZikpLCBzaW8ucmVhZGxpbmVzKCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoaXRlcihiejJmKSksIHNlbGYuVEVYVF9MSU5FUykKKworICAgIGRlZiB0ZXN0SXRlcmF0b3JNdWx0aVN0cmVhbShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTUpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KGl0ZXIoYnoyZikpLCBzZWxmLlRFWFRfTElORVMgKiA1KQogCiAgICAgZGVmIHRlc3RDbG9zZWRJdGVyYXRvckRlYWRsb2NrKHNlbGYpOgotICAgICAgICAjICJUZXN0IHRoYXQgaXRlcmF0aW9uIG9uIGEgY2xvc2VkIGJ6MmZpbGUgcmVsZWFzZXMgdGhlIGxvY2suIgotICAgICAgICAjIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWUzMzA5CisgICAgICAgICMgSXNzdWUgIzMzMDk6IEl0ZXJhdGlvbiBvbiBhIGNsb3NlZCBCWjJGaWxlIHNob3VsZCByZWxlYXNlIHRoZSBsb2NrLgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgYnoyZiA9IEJaMkZpbGUoc2VsZi5maWxlbmFtZSkKICAgICAgICAgYnoyZi5jbG9zZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6MmYuX19uZXh0X18pCi0gICAgICAgICMgVGhpcyBjYWxsIHdpbGwgZGVhZGxvY2sgb2YgdGhlIGFib3ZlIC5fX25leHRfXyBjYWxsIGZhaWxlZCB0bworICAgICAgICAjIFRoaXMgY2FsbCB3aWxsIGRlYWRsb2NrIGlmIHRoZSBhYm92ZSAuX19uZXh0X18gY2FsbCBmYWlsZWQgdG8KICAgICAgICAgIyByZWxlYXNlIHRoZSBsb2NrLgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiejJmLnJlYWRsaW5lcykKIAogICAgIGRlZiB0ZXN0V3JpdGUoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRmlsZS53cml0ZSgpIgogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSwgInciKSBhcyBiejJmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLndyaXRlKQogICAgICAgICAgICAgYnoyZi53cml0ZShzZWxmLlRFWFQpCkBAIC0xMzgsMTAgKzIxMyw5IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGVjb21wcmVzcyhmLnJlYWQoKSksIHNlbGYuVEVYVCkKIAogICAgIGRlZiB0ZXN0V3JpdGVDaHVua3MxMChzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLndyaXRlKCkgd2l0aCBjaHVua3Mgb2YgMTAgYnl0ZXMiCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lLCAidyIpIGFzIGJ6MmY6CiAgICAgICAgICAgICBuID0gMAotICAgICAgICAgICAgd2hpbGUgMToKKyAgICAgICAgICAgIHdoaWxlIFRydWU6CiAgICAgICAgICAgICAgICAgc3RyID0gc2VsZi5URVhUW24qMTA6KG4rMSkqMTBdCiAgICAgICAgICAgICAgICAgaWYgbm90IHN0cjoKICAgICAgICAgICAgICAgICAgICAgYnJlYWsKQEAgLTE1MCwxMyArMjI0LDE5IEBACiAgICAgICAgIHdpdGggb3BlbihzZWxmLmZpbGVuYW1lLCAncmInKSBhcyBmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRlY29tcHJlc3MoZi5yZWFkKCkpLCBzZWxmLlRFWFQpCiAKKyAgICBkZWYgdGVzdFdyaXRlTm9uRGVmYXVsdENvbXByZXNzTGV2ZWwoc2VsZik6CisgICAgICAgIGV4cGVjdGVkID0gYnoyLmNvbXByZXNzKHNlbGYuVEVYVCwgY29tcHJlc3NsZXZlbD01KQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSwgInciLCBjb21wcmVzc2xldmVsPTUpIGFzIGJ6MmY6CisgICAgICAgICAgICBiejJmLndyaXRlKHNlbGYuVEVYVCkKKyAgICAgICAgd2l0aCBvcGVuKHNlbGYuZmlsZW5hbWUsICJyYiIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBleHBlY3RlZCkKKwogICAgIGRlZiB0ZXN0V3JpdGVMaW5lcyhzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLndyaXRlbGluZXMoKSIKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUsICJ3IikgYXMgYnoyZjoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi53cml0ZWxpbmVzKQotICAgICAgICAgICAgc2lvID0gQnl0ZXNJTyhzZWxmLlRFWFQpCi0gICAgICAgICAgICBiejJmLndyaXRlbGluZXMoc2lvLnJlYWRsaW5lcygpKQotICAgICAgICAjIHBhdGNoICMxNTM1NTAwCisgICAgICAgICAgICBiejJmLndyaXRlbGluZXMoc2VsZi5URVhUX0xJTkVTKQorICAgICAgICAjIElzc3VlICMxNTM1NTAwOiBDYWxsaW5nIHdyaXRlbGluZXMoKSBvbiBhIGNsb3NlZCBCWjJGaWxlCisgICAgICAgICMgc2hvdWxkIHJhaXNlIGFuIGV4Y2VwdGlvbi4KICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYnoyZi53cml0ZWxpbmVzLCBbImEiXSkKICAgICAgICAgd2l0aCBvcGVuKHNlbGYuZmlsZW5hbWUsICdyYicpIGFzIGY6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGVjb21wcmVzcyhmLnJlYWQoKSksIHNlbGYuVEVYVCkKQEAgLTE2OSwzOSArMjQ5LDczIEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJT0Vycm9yLCBiejJmLndyaXRlLCBiImEiKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSU9FcnJvciwgYnoyZi53cml0ZWxpbmVzLCBbYiJhIl0pCiAKKyAgICBkZWYgdGVzdEFwcGVuZChzZWxmKToKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUsICJ3IikgYXMgYnoyZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi53cml0ZSkKKyAgICAgICAgICAgIGJ6MmYud3JpdGUoc2VsZi5URVhUKQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSwgImEiKSBhcyBiejJmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLndyaXRlKQorICAgICAgICAgICAgYnoyZi53cml0ZShzZWxmLlRFWFQpCisgICAgICAgIHdpdGggb3BlbihzZWxmLmZpbGVuYW1lLCAncmInKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRlY29tcHJlc3MoZi5yZWFkKCkpLCBzZWxmLlRFWFQgKiAyKQorCiAgICAgZGVmIHRlc3RTZWVrRm9yd2FyZChzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLnNlZWsoMTUwLCAwKSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLnNlZWspCiAgICAgICAgICAgICBiejJmLnNlZWsoMTUwKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgc2VsZi5URVhUWzE1MDpdKQogCisgICAgZGVmIHRlc3RTZWVrRm9yd2FyZEFjcm9zc1N0cmVhbXMoc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoc3RyZWFtcz0yKQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi5zZWVrKQorICAgICAgICAgICAgYnoyZi5zZWVrKGxlbihzZWxmLlRFWFQpICsgMTUwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgc2VsZi5URVhUWzE1MDpdKQorCiAgICAgZGVmIHRlc3RTZWVrQmFja3dhcmRzKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkZpbGUuc2VlaygtMTUwLCAxKSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgogICAgICAgICAgICAgYnoyZi5yZWFkKDUwMCkKICAgICAgICAgICAgIGJ6MmYuc2VlaygtMTUwLCAxKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgc2VsZi5URVhUWzUwMC0xNTA6XSkKIAorICAgIGRlZiB0ZXN0U2Vla0JhY2t3YXJkc0Fjcm9zc1N0cmVhbXMoc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoc3RyZWFtcz0yKQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIHJlYWR0byA9IGxlbihzZWxmLlRFWFQpICsgMTAwCisgICAgICAgICAgICB3aGlsZSByZWFkdG8gPiAwOgorICAgICAgICAgICAgICAgIHJlYWR0byAtPSBsZW4oYnoyZi5yZWFkKHJlYWR0bykpCisgICAgICAgICAgICBiejJmLnNlZWsoLTE1MCwgMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVFsxMDAtMTUwOl0gKyBzZWxmLlRFWFQpCisKICAgICBkZWYgdGVzdFNlZWtCYWNrd2FyZHNGcm9tRW5kKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkZpbGUuc2VlaygtMTUwLCAyKSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgogICAgICAgICAgICAgYnoyZi5zZWVrKC0xNTAsIDIpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFRbbGVuKHNlbGYuVEVYVCktMTUwOl0pCiAKKyAgICBkZWYgdGVzdFNlZWtCYWNrd2FyZHNGcm9tRW5kQWNyb3NzU3RyZWFtcyhzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTIpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgYnoyZi5zZWVrKC0xMDAwLCAyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgKHNlbGYuVEVYVCAqIDIpWy0xMDAwOl0pCisKICAgICBkZWYgdGVzdFNlZWtQb3N0RW5kKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkZpbGUuc2VlaygxNTAwMDApIgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CiAgICAgICAgICAgICBiejJmLnNlZWsoMTUwMDAwKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnRlbGwoKSwgbGVuKHNlbGYuVEVYVCkpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBiIiIpCiAKKyAgICBkZWYgdGVzdFNlZWtQb3N0RW5kTXVsdGlTdHJlYW0oc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoc3RyZWFtcz01KQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIGJ6MmYuc2VlaygxNTAwMDApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYudGVsbCgpLCBsZW4oc2VsZi5URVhUKSAqIDUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBiIiIpCisKICAgICBkZWYgdGVzdFNlZWtQb3N0RW5kVHdpY2Uoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRmlsZS5zZWVrKDE1MDAwMCkgdHdpY2UiCiAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKICAgICAgICAgICAgIGJ6MmYuc2VlaygxNTAwMDApCkBAIC0yMDksMjcgKzMyMywxMDkgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi50ZWxsKCksIGxlbihzZWxmLlRFWFQpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgYiIiKQogCisgICAgZGVmIHRlc3RTZWVrUG9zdEVuZFR3aWNlTXVsdGlTdHJlYW0oc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoc3RyZWFtcz01KQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIGJ6MmYuc2VlaygxNTAwMDApCisgICAgICAgICAgICBiejJmLnNlZWsoMTUwMDAwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnRlbGwoKSwgbGVuKHNlbGYuVEVYVCkgKiA1KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgYiIiKQorCiAgICAgZGVmIHRlc3RTZWVrUHJlU3RhcnQoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRmlsZS5zZWVrKC0xNTAsIDApIgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CiAgICAgICAgICAgICBiejJmLnNlZWsoLTE1MCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi50ZWxsKCksIDApCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFQpCiAKKyAgICBkZWYgdGVzdFNlZWtQcmVTdGFydE11bHRpU3RyZWFtKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKHN0cmVhbXM9MikKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBiejJmLnNlZWsoLTE1MCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi50ZWxsKCksIDApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFQgKiAyKQorCisgICAgZGVmIHRlc3RGaWxlbm8oc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQorICAgICAgICB3aXRoIG9wZW4oc2VsZi5maWxlbmFtZSwgJ3JiJykgYXMgcmF3ZjoKKyAgICAgICAgICAgIGJ6MmYgPSBCWjJGaWxlKGZpbGVvYmo9cmF3ZikKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYuZmlsZW5vKCksIHJhd2YuZmlsZW5vKCkpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIGJ6MmYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiejJmLmZpbGVubykKKworICAgIGRlZiB0ZXN0U2Vla2FibGUoc2VsZik6CisgICAgICAgIGJ6MmYgPSBCWjJGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhzZWxmLkRBVEEpKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoYnoyZi5zZWVrYWJsZSgpKQorICAgICAgICAgICAgYnoyZi5yZWFkKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShiejJmLnNlZWthYmxlKCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBiejJmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYnoyZi5zZWVrYWJsZSkKKworICAgICAgICBiejJmID0gQloyRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoYnoyZi5zZWVrYWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgYnoyZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6MmYuc2Vla2FibGUpCisKKyAgICAgICAgc3JjID0gQnl0ZXNJTyhzZWxmLkRBVEEpCisgICAgICAgIHNyYy5zZWVrYWJsZSA9IGxhbWJkYTogRmFsc2UKKyAgICAgICAgYnoyZiA9IEJaMkZpbGUoZmlsZW9iaj1zcmMpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoYnoyZi5zZWVrYWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgYnoyZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6MmYuc2Vla2FibGUpCisKKyAgICBkZWYgdGVzdFJlYWRhYmxlKHNlbGYpOgorICAgICAgICBiejJmID0gQloyRmlsZShmaWxlb2JqPUJ5dGVzSU8oc2VsZi5EQVRBKSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGJ6MmYucmVhZGFibGUoKSkKKyAgICAgICAgICAgIGJ6MmYucmVhZCgpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoYnoyZi5yZWFkYWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgYnoyZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6MmYucmVhZGFibGUpCisKKyAgICAgICAgYnoyZiA9IEJaMkZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGJ6MmYucmVhZGFibGUoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGJ6MmYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiejJmLnJlYWRhYmxlKQorCisgICAgZGVmIHRlc3RXcml0YWJsZShzZWxmKToKKyAgICAgICAgYnoyZiA9IEJaMkZpbGUoZmlsZW9iaj1CeXRlc0lPKHNlbGYuREFUQSkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoYnoyZi53cml0YWJsZSgpKQorICAgICAgICAgICAgYnoyZi5yZWFkKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoYnoyZi53cml0YWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgYnoyZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6MmYud3JpdGFibGUpCisKKyAgICAgICAgYnoyZiA9IEJaMkZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoYnoyZi53cml0YWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgYnoyZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6MmYud3JpdGFibGUpCisKICAgICBkZWYgdGVzdE9wZW5EZWwoc2VsZik6Ci0gICAgICAgICMgIlRlc3Qgb3BlbmluZyBhbmQgZGVsZXRpbmcgYSBmaWxlIG1hbnkgdGltZXMiCiAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQogICAgICAgICBmb3IgaSBpbiByYW5nZSgxMDAwMCk6CiAgICAgICAgICAgICBvID0gQloyRmlsZShzZWxmLmZpbGVuYW1lKQogICAgICAgICAgICAgZGVsIG8KIAogICAgIGRlZiB0ZXN0T3Blbk5vbmV4aXN0ZW50KHNlbGYpOgotICAgICAgICAjICJUZXN0IG9wZW5pbmcgYSBub25leGlzdGVudCBmaWxlIgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJT0Vycm9yLCBCWjJGaWxlLCAiL25vbi9leGlzdGVudCIpCiAKLSAgICBkZWYgdGVzdEJ1ZzExOTEwNDMoc2VsZik6Ci0gICAgICAgICMgcmVhZGxpbmVzKCkgZm9yIGZpbGVzIGNvbnRhaW5pbmcgbm8gbmV3bGluZQorICAgIGRlZiB0ZXN0UmVhZGxpbmVzTm9OZXdsaW5lKHNlbGYpOgorICAgICAgICAjIElzc3VlICMxMTkxMDQzOiByZWFkbGluZXMoKSBmYWlscyBvbiBhIGZpbGUgY29udGFpbmluZyBubyBuZXdsaW5lLgogICAgICAgICBkYXRhID0gYidCWmg5MUFZJlNZXHhkOWJceDg5XVx4MDBceDAwXHgwMFx4MDNceDgwXHgwNFx4MDBceDAyXHgwMFx4MGNceDAwIFx4MDAhXHg5YWgzTVx4MTM8XVx4YzlceDE0XHhlMUJDZVx4OGEldCcKICAgICAgICAgd2l0aCBvcGVuKHNlbGYuZmlsZW5hbWUsICJ3YiIpIGFzIGY6CiAgICAgICAgICAgICBmLndyaXRlKGRhdGEpCkBAIC0yNDEsNyArNDM3LDYgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4bGluZXMsIFtiJ1Rlc3QnXSkKIAogICAgIGRlZiB0ZXN0Q29udGV4dFByb3RvY29sKHNlbGYpOgotICAgICAgICAjIEJaMkZpbGUgc3VwcG9ydHMgdGhlIGNvbnRleHQgbWFuYWdlbWVudCBwcm90b2NvbAogICAgICAgICBmID0gTm9uZQogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSwgIndiIikgYXMgZjoKICAgICAgICAgICAgIGYud3JpdGUoYiJ4eHgiKQpAQCAtMjY0LDcgKzQ1OSw3IEBACiAKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWRpbmcsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQogICAgIGRlZiB0ZXN0VGhyZWFkaW5nKHNlbGYpOgotICAgICAgICAjIFVzaW5nIGEgQloyRmlsZSBmcm9tIHNldmVyYWwgdGhyZWFkcyBkb2Vzbid0IGRlYWRsb2NrIChpc3N1ZSAjNzIwNSkuCisgICAgICAgICMgSXNzdWUgIzcyMDU6IFVzaW5nIGEgQloyRmlsZSBmcm9tIHNldmVyYWwgdGhyZWFkcyBzaG91bGRuJ3QgZGVhZGxvY2suCiAgICAgICAgIGRhdGEgPSBiIjEiICogMioqMjAKICAgICAgICAgbnRocmVhZHMgPSAxMAogICAgICAgICB3aXRoIGJ6Mi5CWjJGaWxlKHNlbGYuZmlsZW5hbWUsICd3YicpIGFzIGY6CkBAIC0yNzcsMjIgKzQ3Miw4MyBAQAogICAgICAgICAgICAgZm9yIHQgaW4gdGhyZWFkczoKICAgICAgICAgICAgICAgICB0LmpvaW4oKQogCi0gICAgZGVmIHRlc3RNaXhlZEl0ZXJhdGlvblJlYWRzKHNlbGYpOgotICAgICAgICAjIElzc3VlICM4Mzk3OiBtaXhlZCBpdGVyYXRpb24gYW5kIHJlYWRzIHNob3VsZCBiZSBmb3JiaWRkZW4uCi0gICAgICAgIHdpdGggYnoyLkJaMkZpbGUoc2VsZi5maWxlbmFtZSwgJ3diJykgYXMgZjoKLSAgICAgICAgICAgICMgVGhlIGludGVybmFsIGJ1ZmZlciBzaXplIGlzIGhhcmQtd2lyZWQgdG8gODE5MiBieXRlcywgd2UgbXVzdAotICAgICAgICAgICAgIyB3cml0ZSBvdXQgbW9yZSB0aGFuIHRoYXQgZm9yIHRoZSB0ZXN0IHRvIHN0b3AgaGFsZiB0aHJvdWdoCi0gICAgICAgICAgICAjIHRoZSBidWZmZXIuCi0gICAgICAgICAgICBmLndyaXRlKHNlbGYuVEVYVCAqIDEwMCkKLSAgICAgICAgd2l0aCBiejIuQloyRmlsZShzZWxmLmZpbGVuYW1lLCAncmInKSBhcyBmOgotICAgICAgICAgICAgbmV4dChmKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5yZWFkKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5yZWFkbGluZSkKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYucmVhZGxpbmVzKQorICAgIGRlZiB0ZXN0V2l0aG91dFRocmVhZGluZyhzZWxmKToKKyAgICAgICAgYnoyID0gc3VwcG9ydC5pbXBvcnRfZnJlc2hfbW9kdWxlKCJiejIiLCBibG9ja2VkPSgidGhyZWFkaW5nIiwpKQorICAgICAgICB3aXRoIGJ6Mi5CWjJGaWxlKHNlbGYuZmlsZW5hbWUsICJ3YiIpIGFzIGY6CisgICAgICAgICAgICBmLndyaXRlKGIiYWJjIikKKyAgICAgICAgd2l0aCBiejIuQloyRmlsZShzZWxmLmZpbGVuYW1lLCAicmIiKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgYiJhYmMiKQorCisgICAgZGVmIHRlc3RNaXhlZEl0ZXJhdGlvbkFuZFJlYWRzKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKKyAgICAgICAgbGluZWxlbiA9IGxlbihzZWxmLlRFWFRfTElORVNbMF0pCisgICAgICAgIGhhbGZsZW4gPSBsaW5lbGVuIC8vIDIKKyAgICAgICAgd2l0aCBiejIuQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgYnoyZi5yZWFkKGhhbGZsZW4pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5leHQoYnoyZiksIHNlbGYuVEVYVF9MSU5FU1swXVtoYWxmbGVuOl0pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFRbbGluZWxlbjpdKQorICAgICAgICB3aXRoIGJ6Mi5CWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBiejJmLnJlYWRsaW5lKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV4dChiejJmKSwgc2VsZi5URVhUX0xJTkVTWzFdKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWRsaW5lKCksIHNlbGYuVEVYVF9MSU5FU1syXSkKKyAgICAgICAgd2l0aCBiejIuQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgYnoyZi5yZWFkbGluZXMoKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhTdG9wSXRlcmF0aW9uKToKKyAgICAgICAgICAgICAgICBuZXh0KGJ6MmYpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZGxpbmVzKCksIFtdKQorCisgICAgZGVmIHRlc3RNdWx0aVN0cmVhbU9yZGVyaW5nKHNlbGYpOgorICAgICAgICAjIFRlc3QgdGhlIG9yZGVyaW5nIG9mIHN0cmVhbXMgd2hlbiByZWFkaW5nIGEgbXVsdGktc3RyZWFtIGFyY2hpdmUuCisgICAgICAgIGRhdGExID0gYiJmb28iICogMTAwMAorICAgICAgICBkYXRhMiA9IGIiYmFyIiAqIDEwMDAKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUsICJ3IikgYXMgYnoyZjoKKyAgICAgICAgICAgIGJ6MmYud3JpdGUoZGF0YTEpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lLCAiYSIpIGFzIGJ6MmY6CisgICAgICAgICAgICBiejJmLndyaXRlKGRhdGEyKQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIGRhdGExICsgZGF0YTIpCisKKyAgICAjIFRlc3RzIGZvciBhIEJaMkZpbGUgd3JhcHBpbmcgYW5vdGhlciBmaWxlIG9iamVjdDoKKworICAgIGRlZiB0ZXN0UmVhZEJ5dGVzSU8oc2VsZik6CisgICAgICAgIHdpdGggQnl0ZXNJTyhzZWxmLkRBVEEpIGFzIGJpbzoKKyAgICAgICAgICAgIHdpdGggQloyRmlsZShmaWxlb2JqPWJpbykgYXMgYnoyZjoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYucmVhZCwgTm9uZSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGJpby5jbG9zZWQpCisKKyAgICBkZWYgdGVzdFBlZWtCeXRlc0lPKHNlbGYpOgorICAgICAgICB3aXRoIEJ5dGVzSU8oc2VsZi5EQVRBKSBhcyBiaW86CisgICAgICAgICAgICB3aXRoIEJaMkZpbGUoZmlsZW9iaj1iaW8pIGFzIGJ6MmY6CisgICAgICAgICAgICAgICAgcGRhdGEgPSBiejJmLnBlZWsoKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobGVuKHBkYXRhKSwgMCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5URVhULnN0YXJ0c3dpdGgocGRhdGEpKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVCkKKworICAgIGRlZiB0ZXN0V3JpdGVCeXRlc0lPKHNlbGYpOgorICAgICAgICB3aXRoIEJ5dGVzSU8oKSBhcyBiaW86CisgICAgICAgICAgICB3aXRoIEJaMkZpbGUoZmlsZW9iaj1iaW8sIG1vZGU9InciKSBhcyBiejJmOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi53cml0ZSkKKyAgICAgICAgICAgICAgICBiejJmLndyaXRlKHNlbGYuVEVYVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kZWNvbXByZXNzKGJpby5nZXR2YWx1ZSgpKSwgc2VsZi5URVhUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShiaW8uY2xvc2VkKQorCisgICAgZGVmIHRlc3RTZWVrRm9yd2FyZEJ5dGVzSU8oc2VsZik6CisgICAgICAgIHdpdGggQnl0ZXNJTyhzZWxmLkRBVEEpIGFzIGJpbzoKKyAgICAgICAgICAgIHdpdGggQloyRmlsZShmaWxlb2JqPWJpbykgYXMgYnoyZjoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYuc2VlaykKKyAgICAgICAgICAgICAgICBiejJmLnNlZWsoMTUwKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVFsxNTA6XSkKKworICAgIGRlZiB0ZXN0U2Vla0JhY2t3YXJkc0J5dGVzSU8oc2VsZik6CisgICAgICAgIHdpdGggQnl0ZXNJTyhzZWxmLkRBVEEpIGFzIGJpbzoKKyAgICAgICAgICAgIHdpdGggQloyRmlsZShmaWxlb2JqPWJpbykgYXMgYnoyZjoKKyAgICAgICAgICAgICAgICBiejJmLnJlYWQoNTAwKQorICAgICAgICAgICAgICAgIGJ6MmYuc2VlaygtMTUwLCAxKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVFs1MDAtMTUwOl0pCiAKIGNsYXNzIEJaMkNvbXByZXNzb3JUZXN0KEJhc2VUZXN0KToKICAgICBkZWYgdGVzdENvbXByZXNzKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkNvbXByZXNzb3IuY29tcHJlc3MoKS9mbHVzaCgpIgogICAgICAgICBiejJjID0gQloyQ29tcHJlc3NvcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyYy5jb21wcmVzcykKICAgICAgICAgZGF0YSA9IGJ6MmMuY29tcHJlc3Moc2VsZi5URVhUKQpAQCAtMzAwLDExICs1NTYsMTAgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRlY29tcHJlc3MoZGF0YSksIHNlbGYuVEVYVCkKIAogICAgIGRlZiB0ZXN0Q29tcHJlc3NDaHVua3MxMChzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJDb21wcmVzc29yLmNvbXByZXNzKCkvZmx1c2goKSB3aXRoIGNodW5rcyBvZiAxMCBieXRlcyIKICAgICAgICAgYnoyYyA9IEJaMkNvbXByZXNzb3IoKQogICAgICAgICBuID0gMAogICAgICAgICBkYXRhID0gYicnCi0gICAgICAgIHdoaWxlIDE6CisgICAgICAgIHdoaWxlIFRydWU6CiAgICAgICAgICAgICBzdHIgPSBzZWxmLlRFWFRbbioxMDoobisxKSoxMF0KICAgICAgICAgICAgIGlmIG5vdCBzdHI6CiAgICAgICAgICAgICAgICAgYnJlYWsKQEAgLTMxMywyMyArNTY4LDM4IEBACiAgICAgICAgIGRhdGEgKz0gYnoyYy5mbHVzaCgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kZWNvbXByZXNzKGRhdGEpLCBzZWxmLlRFWFQpCiAKKyAgICBAYmlnbWVtdGVzdChzaXplPV80RyArIDEwMCwgbWVtdXNlPTIpCisgICAgZGVmIHRlc3RDb21wcmVzczRHKHNlbGYsIHNpemUpOgorICAgICAgICAjICJUZXN0IEJaMkNvbXByZXNzb3IuY29tcHJlc3MoKS9mbHVzaCgpIHdpdGggPjRHaUIgaW5wdXQiCisgICAgICAgIGJ6MmMgPSBCWjJDb21wcmVzc29yKCkKKyAgICAgICAgZGF0YSA9IGIieCIgKiBzaXplCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGNvbXByZXNzZWQgPSBiejJjLmNvbXByZXNzKGRhdGEpCisgICAgICAgICAgICBjb21wcmVzc2VkICs9IGJ6MmMuZmx1c2goKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZGF0YSA9IE5vbmUgICMgUmVsZWFzZSBtZW1vcnkKKyAgICAgICAgZGF0YSA9IGJ6Mi5kZWNvbXByZXNzKGNvbXByZXNzZWQpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGRhdGEpLCBzaXplKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oZGF0YS5zdHJpcChiIngiKSksIDApCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBkYXRhID0gTm9uZQorCiBjbGFzcyBCWjJEZWNvbXByZXNzb3JUZXN0KEJhc2VUZXN0KToKICAgICBkZWYgdGVzdF9Db25zdHJ1Y3RvcihzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBCWjJEZWNvbXByZXNzb3IsIDQyKQogCiAgICAgZGVmIHRlc3REZWNvbXByZXNzKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkRlY29tcHJlc3Nvci5kZWNvbXByZXNzKCkiCiAgICAgICAgIGJ6MmQgPSBCWjJEZWNvbXByZXNzb3IoKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmQuZGVjb21wcmVzcykKICAgICAgICAgdGV4dCA9IGJ6MmQuZGVjb21wcmVzcyhzZWxmLkRBVEEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgc2VsZi5URVhUKQogCiAgICAgZGVmIHRlc3REZWNvbXByZXNzQ2h1bmtzMTAoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRGVjb21wcmVzc29yLmRlY29tcHJlc3MoKSB3aXRoIGNodW5rcyBvZiAxMCBieXRlcyIKICAgICAgICAgYnoyZCA9IEJaMkRlY29tcHJlc3NvcigpCiAgICAgICAgIHRleHQgPSBiJycKICAgICAgICAgbiA9IDAKLSAgICAgICAgd2hpbGUgMToKKyAgICAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgICAgIHN0ciA9IHNlbGYuREFUQVtuKjEwOihuKzEpKjEwXQogICAgICAgICAgICAgaWYgbm90IHN0cjoKICAgICAgICAgICAgICAgICBicmVhawpAQCAtMzM4LDcgKzYwOCw2IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgc2VsZi5URVhUKQogCiAgICAgZGVmIHRlc3REZWNvbXByZXNzVW51c2VkRGF0YShzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJEZWNvbXByZXNzb3IuZGVjb21wcmVzcygpIHdpdGggdW51c2VkIGRhdGEiCiAgICAgICAgIGJ6MmQgPSBCWjJEZWNvbXByZXNzb3IoKQogICAgICAgICB1bnVzZWRfZGF0YSA9IGIidGhpcyBpcyB1bnVzZWQgZGF0YSIKICAgICAgICAgdGV4dCA9IGJ6MmQuZGVjb21wcmVzcyhzZWxmLkRBVEErdW51c2VkX2RhdGEpCkBAIC0zNDYsMzQgKzYxNSw0OSBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmQudW51c2VkX2RhdGEsIHVudXNlZF9kYXRhKQogCiAgICAgZGVmIHRlc3RFT0ZFcnJvcihzZWxmKToKLSAgICAgICAgIyAiQ2FsbGluZyBCWjJEZWNvbXByZXNzb3IuZGVjb21wcmVzcygpIGFmdGVyIEVPUyBtdXN0IHJhaXNlIEVPRkVycm9yIgogICAgICAgICBiejJkID0gQloyRGVjb21wcmVzc29yKCkKICAgICAgICAgdGV4dCA9IGJ6MmQuZGVjb21wcmVzcyhzZWxmLkRBVEEpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEVPRkVycm9yLCBiejJkLmRlY29tcHJlc3MsIGIiYW55dGhpbmciKQogCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fNEcgKyAxMDAsIG1lbXVzZT0zKQorICAgIGRlZiB0ZXN0RGVjb21wcmVzczRHKHNlbGYsIHNpemUpOgorICAgICAgICAjICJUZXN0IEJaMkRlY29tcHJlc3Nvci5kZWNvbXByZXNzKCkgd2l0aCA+NEdpQiBpbnB1dCIKKyAgICAgICAgYmxvY2tzaXplID0gMTAgKiAxMDI0ICogMTAyNAorICAgICAgICBibG9jayA9IHJhbmRvbS5nZXRyYW5kYml0cyhibG9ja3NpemUgKiA4KS50b19ieXRlcyhibG9ja3NpemUsICdsaXR0bGUnKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBkYXRhID0gYmxvY2sgKiAoc2l6ZSAvLyBibG9ja3NpemUgKyAxKQorICAgICAgICAgICAgY29tcHJlc3NlZCA9IGJ6Mi5jb21wcmVzcyhkYXRhKQorICAgICAgICAgICAgYnoyZCA9IEJaMkRlY29tcHJlc3NvcigpCisgICAgICAgICAgICBkZWNvbXByZXNzZWQgPSBiejJkLmRlY29tcHJlc3MoY29tcHJlc3NlZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShkZWNvbXByZXNzZWQgPT0gZGF0YSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGRhdGEgPSBOb25lCisgICAgICAgICAgICBjb21wcmVzc2VkID0gTm9uZQorICAgICAgICAgICAgZGVjb21wcmVzc2VkID0gTm9uZQorCiAKIGNsYXNzIEZ1bmNUZXN0KEJhc2VUZXN0KToKICAgICAiVGVzdCBtb2R1bGUgZnVuY3Rpb25zIgogCiAgICAgZGVmIHRlc3RDb21wcmVzcyhzZWxmKToKLSAgICAgICAgIyAiVGVzdCBjb21wcmVzcygpIGZ1bmN0aW9uIgogICAgICAgICBkYXRhID0gYnoyLmNvbXByZXNzKHNlbGYuVEVYVCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRlY29tcHJlc3MoZGF0YSksIHNlbGYuVEVYVCkKIAogICAgIGRlZiB0ZXN0RGVjb21wcmVzcyhzZWxmKToKLSAgICAgICAgIyAiVGVzdCBkZWNvbXByZXNzKCkgZnVuY3Rpb24iCiAgICAgICAgIHRleHQgPSBiejIuZGVjb21wcmVzcyhzZWxmLkRBVEEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgc2VsZi5URVhUKQogCiAgICAgZGVmIHRlc3REZWNvbXByZXNzRW1wdHkoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgZGVjb21wcmVzcygpIGZ1bmN0aW9uIHdpdGggZW1wdHkgc3RyaW5nIgogICAgICAgICB0ZXh0ID0gYnoyLmRlY29tcHJlc3MoYiIiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRleHQsIGIiIikKIAogICAgIGRlZiB0ZXN0RGVjb21wcmVzc0luY29tcGxldGUoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgZGVjb21wcmVzcygpIGZ1bmN0aW9uIHdpdGggaW5jb21wbGV0ZSBkYXRhIgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiejIuZGVjb21wcmVzcywgc2VsZi5EQVRBWzotMTBdKQogCisgICAgZGVmIHRlc3REZWNvbXByZXNzTXVsdGlTdHJlYW0oc2VsZik6CisgICAgICAgIHRleHQgPSBiejIuZGVjb21wcmVzcyhzZWxmLkRBVEEgKiA1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRleHQsIHNlbGYuVEVYVCAqIDUpCisKIGRlZiB0ZXN0X21haW4oKToKICAgICBzdXBwb3J0LnJ1bl91bml0dGVzdCgKICAgICAgICAgQloyRmlsZVRlc3QsCkBAIC0zODUsNSArNjY5LDMgQEAKIAogaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgICB0ZXN0X21haW4oKQotCi0jIHZpbTp0cz00OnN3PTQKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY2FsZW5kYXIucHkgYi9MaWIvdGVzdC90ZXN0X2NhbGVuZGFyLnB5CmluZGV4IGQzMDkzYWMuLjcxODBhZmUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY2FsZW5kYXIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jYWxlbmRhci5weQpAQCAtMTc3LDcgKzE3Nyw3IEBACiAgICAgICAgICAgICByZXR1cm4gbm90IGMuaXNzcGFjZSgpIGFuZCBub3QgYy5pc2RpZ2l0KCkKIAogICAgICAgICBsaW5lcyA9IFtdCi0gICAgICAgIGZvciBsaW5lIGluIHMuc3BsaXRsaW5lcyhGYWxzZSk6CisgICAgICAgIGZvciBsaW5lIGluIHMuc3BsaXRsaW5lcyhrZWVwZW5kcz1GYWxzZSk6CiAgICAgICAgICAgICAjIERyb3AgdGV4dHMsIGFzIHRoZXkgYXJlIGxvY2FsZSBkZXBlbmRlbnQKICAgICAgICAgICAgIGlmIGxpbmUgYW5kIG5vdCBmaWx0ZXIobmVpdGhlcnNwYWNlbm9yZGlnaXQsIGxpbmUpOgogICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVuZChsaW5lKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jYXBpLnB5IGIvTGliL3Rlc3QvdGVzdF9jYXBpLnB5CmluZGV4IGMyYzYzM2YuLjJmOTRmOTAgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY2FwaS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NhcGkucHkKQEAgLTIxMCwxOCArMjEwLDE3IEBACiAgICAgICAgIGlkZW50cyA9IFtdCiAKICAgICAgICAgZGVmIGNhbGxiYWNrKCk6Ci0gICAgICAgICAgICBpZGVudHMuYXBwZW5kKF90aHJlYWQuZ2V0X2lkZW50KCkpCisgICAgICAgICAgICBpZGVudHMuYXBwZW5kKHRocmVhZGluZy5nZXRfaWRlbnQoKSkKIAogICAgICAgICBfdGVzdGNhcGkuX3Rlc3RfdGhyZWFkX3N0YXRlKGNhbGxiYWNrKQogICAgICAgICBhID0gYiA9IGNhbGxiYWNrCiAgICAgICAgIHRpbWUuc2xlZXAoMSkKICAgICAgICAgIyBDaGVjayBvdXIgbWFpbiB0aHJlYWQgaXMgaW4gdGhlIGxpc3QgZXhhY3RseSAzIHRpbWVzLgotICAgICAgICBpZiBpZGVudHMuY291bnQoX3RocmVhZC5nZXRfaWRlbnQoKSkgIT0gMzoKKyAgICAgICAgaWYgaWRlbnRzLmNvdW50KHRocmVhZGluZy5nZXRfaWRlbnQoKSkgIT0gMzoKICAgICAgICAgICAgIHJhaXNlIHN1cHBvcnQuVGVzdEZhaWxlZCgKICAgICAgICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBmaW5kIG1haW4gdGhyZWFkIGNvcnJlY3RseSBpbiB0aGUgbGlzdCIpCiAKICAgICBpZiB0aHJlYWRpbmc6Ci0gICAgICAgIGltcG9ydCBfdGhyZWFkCiAgICAgICAgIGltcG9ydCB0aW1lCiAgICAgICAgIFRlc3RUaHJlYWRTdGF0ZSgpCiAgICAgICAgIHQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1UZXN0VGhyZWFkU3RhdGUpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2NnaS5weSBiL0xpYi90ZXN0L3Rlc3RfY2dpLnB5CmluZGV4IDk5NTFlOTMuLmNiNTkwMDggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY2dpLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfY2dpLnB5CkBAIC0xNTUsMTMgKzE1NSw3IEBACiAgICAgICAgICAgICBjZ2kubG9nZnAgPSBOb25lCiAgICAgICAgICAgICBjZ2kubG9nZmlsZSA9ICIvZGV2L251bGwiCiAgICAgICAgICAgICBjZ2kuaW5pdGxvZygiJXMiLCAiVGVzdGluZyBsb2cgMyIpCi0gICAgICAgICAgICBkZWYgbG9nX2NsZWFudXAoKToKLSAgICAgICAgICAgICAgICAiIiJSZXN0b3JlIHRoZSBnbG9iYWwgc3RhdGUgb2YgdGhlIGxvZyB2YXJzLiIiIgotICAgICAgICAgICAgICAgIGNnaS5sb2dmaWxlID0gJycKLSAgICAgICAgICAgICAgICBjZ2kubG9nZnAuY2xvc2UoKQotICAgICAgICAgICAgICAgIGNnaS5sb2dmcCA9IE5vbmUKLSAgICAgICAgICAgICAgICBjZ2kubG9nID0gY2dpLmluaXRsb2cKLSAgICAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChsb2dfY2xlYW51cCkKKyAgICAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChjZ2kuY2xvc2Vsb2cpCiAgICAgICAgICAgICBjZ2kubG9nKCJUZXN0aW5nIGxvZyA0IikKIAogICAgIGRlZiB0ZXN0X2ZpZWxkc3RvcmFnZV9yZWFkbGluZShzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY2dpdGIucHkgYi9MaWIvdGVzdC90ZXN0X2NnaXRiLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE2YTRiMWEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X2NnaXRiLnB5CkBAIC0wLDAgKzEsNTUgQEAKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QKK2ltcG9ydCB1bml0dGVzdAoraW1wb3J0IHN5cworaW1wb3J0IHN1YnByb2Nlc3MKK2ltcG9ydCBjZ2l0YgorCitjbGFzcyBUZXN0Q2dpdGIodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfZm9udHMoc2VsZik6CisgICAgICAgIHRleHQgPSAiSGVsbG8gUm9iYmllISIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjZ2l0Yi5zbWFsbCh0ZXh0KSwgIjxzbWFsbD57fTwvc21hbGw+Ii5mb3JtYXQodGV4dCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2dpdGIuc3Ryb25nKHRleHQpLCAiPHN0cm9uZz57fTwvc3Ryb25nPiIuZm9ybWF0KHRleHQpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNnaXRiLmdyZXkodGV4dCksCisgICAgICAgICAgICAgICAgICAgICAgICAgJzxmb250IGNvbG9yPSIjOTA5MDkwIj57fTwvZm9udD4nLmZvcm1hdCh0ZXh0KSkKKworICAgIGRlZiB0ZXN0X2JsYW5rcyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjZ2l0Yi5zbWFsbCgiIiksICIiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNnaXRiLnN0cm9uZygiIiksICIiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNnaXRiLmdyZXkoIiIpLCAiIikKKworICAgIGRlZiB0ZXN0X2h0bWwoc2VsZik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkhlbGxvIFdvcmxkIikKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgIyBJZiB0aGUgaHRtbCB3YXMgdGVtcGxhdGVkIHdlIGNvdWxkIGRvIGEgYml0IG1vcmUgaGVyZS4KKyAgICAgICAgICAgICMgQXQgbGVhc3QgY2hlY2sgdGhhdCB3ZSBnZXQgZGV0YWlscyBvbiB3aGF0IHdlIGp1c3QgcmFpc2VkLgorICAgICAgICAgICAgaHRtbCA9IGNnaXRiLmh0bWwoc3lzLmV4Y19pbmZvKCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEluKCJWYWx1ZUVycm9yIiwgaHRtbCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oc3RyKGVyciksIGh0bWwpCisKKyAgICBkZWYgdGVzdF90ZXh0KHNlbGYpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJIZWxsbyBXb3JsZCIpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yIGFzIGVycjoKKyAgICAgICAgICAgIHRleHQgPSBjZ2l0Yi50ZXh0KHN5cy5leGNfaW5mbygpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigiVmFsdWVFcnJvciIsIHRleHQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEluKCJIZWxsbyBXb3JsZCIsIHRleHQpCisKKyAgICBkZWYgdGVzdF9ob29rKHNlbGYpOgorICAgICAgICBwcm9jID0gc3VicHJvY2Vzcy5Qb3Blbihbc3lzLmV4ZWN1dGFibGUsICctYycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ2ltcG9ydCBjZ2l0YjsnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NnaXRiLmVuYWJsZSgpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncmFpc2UgVmFsdWVFcnJvcigiSGVsbG8gV29ybGQiKScpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSkKKyAgICAgICAgb3V0ID0gcHJvYy5zdGRvdXQucmVhZCgpLmRlY29kZShzeXMuZ2V0ZmlsZXN5c3RlbWVuY29kaW5nKCkpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChwcm9jLnN0ZG91dC5jbG9zZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiVmFsdWVFcnJvciIsIG91dCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiSGVsbG8gV29ybGQiLCBvdXQpCisKKworZGVmIHRlc3RfbWFpbigpOgorICAgIHJ1bl91bml0dGVzdChUZXN0Q2dpdGIpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY21kX2xpbmUucHkgYi9MaWIvdGVzdC90ZXN0X2NtZF9saW5lLnB5CmluZGV4IDFhMjEyODEuLjhjOTYwYjEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY21kX2xpbmUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jbWRfbGluZS5weQpAQCAtMzEsMTIgKzMxLDYgQEAKICAgICAgICAgc2VsZi52ZXJpZnlfdmFsaWRfZmxhZygnLU8nKQogICAgICAgICBzZWxmLnZlcmlmeV92YWxpZF9mbGFnKCctT08nKQogCi0gICAgZGVmIHRlc3RfcShzZWxmKToKLSAgICAgICAgc2VsZi52ZXJpZnlfdmFsaWRfZmxhZygnLVFvbGQnKQotICAgICAgICBzZWxmLnZlcmlmeV92YWxpZF9mbGFnKCctUW5ldycpCi0gICAgICAgIHNlbGYudmVyaWZ5X3ZhbGlkX2ZsYWcoJy1Rd2FybicpCi0gICAgICAgIHNlbGYudmVyaWZ5X3ZhbGlkX2ZsYWcoJy1Rd2FybmFsbCcpCi0KICAgICBkZWYgdGVzdF9zaXRlX2ZsYWcoc2VsZik6CiAgICAgICAgIHNlbGYudmVyaWZ5X3ZhbGlkX2ZsYWcoJy1TJykKIApAQCAtMTUxLDcgKzE0NSw3IEBACiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLCAndGVzdCBzcGVjaWZpYyB0byBNYWMgT1MgWCcpCiAgICAgZGVmIHRlc3Rfb3N4X3V0Zjgoc2VsZik6CiAgICAgICAgIGRlZiBjaGVja19vdXRwdXQodGV4dCk6Ci0gICAgICAgICAgICBkZWNvZGVkID0gdGV4dC5kZWNvZGUoJ3V0ZjgnLCAnc3Vycm9nYXRlZXNjYXBlJykKKyAgICAgICAgICAgIGRlY29kZWQgPSB0ZXh0LmRlY29kZSgndXRmLTgnLCAnc3Vycm9nYXRlZXNjYXBlJykKICAgICAgICAgICAgIGV4cGVjdGVkID0gYXNjaWkoZGVjb2RlZCkuZW5jb2RlKCdhc2NpaScpICsgYidcbicKIAogICAgICAgICAgICAgZW52ID0gb3MuZW52aXJvbi5jb3B5KCkKQEAgLTIyMyw3ICsyMTcsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEluKHBhdGgyLmVuY29kZSgnYXNjaWknKSwgb3V0KQogCiAgICAgZGVmIHRlc3RfZGlzcGxheWhvb2tfdW5lbmNvZGFibGUoc2VsZik6Ci0gICAgICAgIGZvciBlbmNvZGluZyBpbiAoJ2FzY2lpJywgJ2xhdGluMScsICd1dGY4Jyk6CisgICAgICAgIGZvciBlbmNvZGluZyBpbiAoJ2FzY2lpJywgJ2xhdGluLTEnLCAndXRmLTgnKToKICAgICAgICAgICAgIGVudiA9IG9zLmVudmlyb24uY29weSgpCiAgICAgICAgICAgICBlbnZbJ1BZVEhPTklPRU5DT0RJTkcnXSA9IGVuY29kaW5nCiAgICAgICAgICAgICBwID0gc3VicHJvY2Vzcy5Qb3BlbigKQEAgLTI4Miw3ICsyNzYsNyBAQAogICAgICAgICByYywgb3V0LCBlcnIgPSBhc3NlcnRfcHl0aG9uX29rKCctYycsIGNvZGUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYicnLCBvdXQpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgoZXJyLmRlY29kZSgnYXNjaWknLCAnaWdub3JlJyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgJ0V4Y2VwdGlvbiBJT0Vycm9yOiAuKiBpZ25vcmVkJykKKyAgICAgICAgICAgICAgICAgICAgICAgICAnRXhjZXB0aW9uIE9TRXJyb3I6IC4qIGlnbm9yZWQnKQogCiAgICAgZGVmIHRlc3RfY2xvc2VkX3N0ZG91dChzZWxmKToKICAgICAgICAgIyBJc3N1ZSAjMTM0NDQ6IGlmIHN0ZG91dCBoYXMgYmVlbiBleHBsaWNpdGx5IGNsb3NlZCwgd2Ugc2hvdWxkCkBAIC0zMzYsMTQgKzMzMCwxNCBAQAogICAgICAgICBoYXNoZXMgPSBbXQogICAgICAgICBmb3IgaSBpbiByYW5nZSgyKToKICAgICAgICAgICAgIGNvZGUgPSAncHJpbnQoaGFzaCgic3BhbSIpKScKLSAgICAgICAgICAgIHJjLCBvdXQsIGVyciA9IGFzc2VydF9weXRob25fb2soJy1SJywgJy1jJywgY29kZSkKKyAgICAgICAgICAgIHJjLCBvdXQsIGVyciA9IGFzc2VydF9weXRob25fb2soJy1jJywgY29kZSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmMsIDApCiAgICAgICAgICAgICBoYXNoZXMuYXBwZW5kKG91dCkKICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChoYXNoZXNbMF0sIGhhc2hlc1sxXSkKIAogICAgICAgICAjIFZlcmlmeSB0aGF0IHN5cy5mbGFncyBjb250YWlucyBoYXNoX3JhbmRvbWl6YXRpb24KICAgICAgICAgY29kZSA9ICdpbXBvcnQgc3lzOyBwcmludCgicmFuZG9tIGlzIiwgc3lzLmZsYWdzLmhhc2hfcmFuZG9taXphdGlvbiknCi0gICAgICAgIHJjLCBvdXQsIGVyciA9IGFzc2VydF9weXRob25fb2soJy1SJywgJy1jJywgY29kZSkKKyAgICAgICAgcmMsIG91dCwgZXJyID0gYXNzZXJ0X3B5dGhvbl9vaygnLWMnLCBjb2RlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJjLCAwKQogICAgICAgICBzZWxmLmFzc2VydEluKGIncmFuZG9tIGlzIDEnLCBvdXQpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29kZS5weSBiL0xpYi90ZXN0L3Rlc3RfY29kZS5weQppbmRleCBlMWM3YTc4Li4zMzc3YTdiIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2NvZGUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2RlLnB5CkBAIC0xNiw3ICsxNiw3IEBACiBmcmVldmFyczogKCkKIG5sb2NhbHM6IDIKIGZsYWdzOiAzCi1jb25zdHM6ICgnTm9uZScsICc8Y29kZSBvYmplY3QgZz4nKQorY29uc3RzOiAoJ05vbmUnLCAnPGNvZGUgb2JqZWN0IGc+JywgIidmLjxsb2NhbHM+LmcnIikKIAogPj4+IGR1bXAoZig0KS5fX2NvZGVfXykKIG5hbWU6IGcKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29kZWNjYWxsYmFja3MucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjY2FsbGJhY2tzLnB5CmluZGV4IGM1YjFlMjUuLjgxYmY4MGQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29kZWNjYWxsYmFja3MucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2RlY2NhbGxiYWNrcy5weQpAQCAtMSw1ICsxLDE4IEBACi1pbXBvcnQgdGVzdC5zdXBwb3J0LCB1bml0dGVzdAotaW1wb3J0IHN5cywgY29kZWNzLCBodG1sLmVudGl0aWVzLCB1bmljb2RlZGF0YQoraW1wb3J0IGNvZGVjcworaW1wb3J0IGh0bWwuZW50aXRpZXMKK2ltcG9ydCBzeXMKK2ltcG9ydCB0ZXN0LnN1cHBvcnQKK2ltcG9ydCB1bmljb2RlZGF0YQoraW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgd2FybmluZ3MKKwordHJ5OgorICAgIGltcG9ydCBjdHlwZXMKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBjdHlwZXMgPSBOb25lCisgICAgU0laRU9GX1dDSEFSX1QgPSAtMQorZWxzZToKKyAgICBTSVpFT0ZfV0NIQVJfVCA9IGN0eXBlcy5zaXplb2YoY3R5cGVzLmNfd2NoYXIpCiAKIGNsYXNzIFBvc1JldHVybjoKICAgICAjIHRoaXMgY2FuIGJlIHVzZWQgZm9yIGNvbmZpZ3VyYWJsZSBjYWxsYmFja3MKQEAgLTEzNSwyMiArMTQ4LDE0IEBACiAgICAgZGVmIHRlc3RfYmFja3NsYXNoZXNjYXBlKHNlbGYpOgogICAgICAgICAjIERvZXMgdGhlIHNhbWUgYXMgdGhlICJ1bmljb2RlLWVzY2FwZSIgZW5jb2RpbmcsIGJ1dCB3aXRoIGRpZmZlcmVudAogICAgICAgICAjIGJhc2UgZW5jb2RpbmdzLgotICAgICAgICBzaW4gPSAiYVx4YWNcdTEyMzRcdTIwYWNcdTgwMDAiCi0gICAgICAgIGlmIHN5cy5tYXh1bmljb2RlID4gMHhmZmZmOgotICAgICAgICAgICAgc2luICs9IGNocihzeXMubWF4dW5pY29kZSkKLSAgICAgICAgc291dCA9IGIiYVxceGFjXFx1MTIzNFxcdTIwYWNcXHU4MDAwIgotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKLSAgICAgICAgICAgIHNvdXQgKz0gYnl0ZXMoIlxcVSUwOHgiICUgc3lzLm1heHVuaWNvZGUsICJhc2NpaSIpCisgICAgICAgIHNpbiA9ICJhXHhhY1x1MTIzNFx1MjBhY1x1ODAwMFxVMDAxMGZmZmYiCisgICAgICAgIHNvdXQgPSBiImFcXHhhY1xcdTEyMzRcXHUyMGFjXFx1ODAwMFxcVTAwMTBmZmZmIgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpbi5lbmNvZGUoImFzY2lpIiwgImJhY2tzbGFzaHJlcGxhY2UiKSwgc291dCkKIAotICAgICAgICBzb3V0ID0gYiJhXHhhY1xcdTEyMzRcXHUyMGFjXFx1ODAwMCIKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPiAweGZmZmY6Ci0gICAgICAgICAgICBzb3V0ICs9IGJ5dGVzKCJcXFUlMDh4IiAlIHN5cy5tYXh1bmljb2RlLCAiYXNjaWkiKQorICAgICAgICBzb3V0ID0gYiJhXHhhY1xcdTEyMzRcXHUyMGFjXFx1ODAwMFxcVTAwMTBmZmZmIgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpbi5lbmNvZGUoImxhdGluLTEiLCAiYmFja3NsYXNocmVwbGFjZSIpLCBzb3V0KQogCi0gICAgICAgIHNvdXQgPSBiImFceGFjXFx1MTIzNFx4YTRcXHU4MDAwIgotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKLSAgICAgICAgICAgIHNvdXQgKz0gYnl0ZXMoIlxcVSUwOHgiICUgc3lzLm1heHVuaWNvZGUsICJhc2NpaSIpCisgICAgICAgIHNvdXQgPSBiImFceGFjXFx1MTIzNFx4YTRcXHU4MDAwXFxVMDAxMGZmZmYiCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2luLmVuY29kZSgiaXNvLTg4NTktMTUiLCAiYmFja3NsYXNocmVwbGFjZSIpLCBzb3V0KQogCiAgICAgZGVmIHRlc3RfZGVjb2RpbmdfY2FsbGJhY2tzKHNlbGYpOgpAQCAtMjAwLDMzICsyMDUsMzcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjb2RlY3MuY2hhcm1hcF9lbmNvZGUsIHNpbiwgInJlcGxhY2UiLCBjaGFybWFwKQogCiAgICAgZGVmIHRlc3RfZGVjb2RldW5pY29kZWludGVybmFsKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcygKLSAgICAgICAgICAgIFVuaWNvZGVEZWNvZGVFcnJvciwKLSAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSwKLSAgICAgICAgICAgICJ1bmljb2RlLWludGVybmFsIiwKLSAgICAgICAgKQotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKKyAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXByZWNhdGVkJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcygKKyAgICAgICAgICAgICAgICBVbmljb2RlRGVjb2RlRXJyb3IsCisgICAgICAgICAgICAgICAgYiJceDAwXHgwMFx4MDBceDAwXHgwMCIuZGVjb2RlLAorICAgICAgICAgICAgICAgICJ1bmljb2RlLWludGVybmFsIiwKKyAgICAgICAgICAgICkKKyAgICAgICAgaWYgU0laRU9GX1dDSEFSX1QgPT0gNDoKICAgICAgICAgICAgIGRlZiBoYW5kbGVyX3VuaWNvZGVpbnRlcm5hbChleGMpOgogICAgICAgICAgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKGV4YywgVW5pY29kZURlY29kZUVycm9yKToKICAgICAgICAgICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJkb24ndCBrbm93IGhvdyB0byBoYW5kbGUgJXIiICUgZXhjKQogICAgICAgICAgICAgICAgIHJldHVybiAoIlx4MDEiLCAxKQogCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSgidW5pY29kZS1pbnRlcm5hbCIsICJpZ25vcmUiKSwKLSAgICAgICAgICAgICAgICAiXHUwMDAwIgotICAgICAgICAgICAgKQorICAgICAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVwcmVjYXRlZCcsIERlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSgidW5pY29kZS1pbnRlcm5hbCIsICJpZ25vcmUiKSwKKyAgICAgICAgICAgICAgICAgICAgIlx1MDAwMCIKKyAgICAgICAgICAgICAgICApCiAKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICAgICAgYiJceDAwXHgwMFx4MDBceDAwXHgwMCIuZGVjb2RlKCJ1bmljb2RlLWludGVybmFsIiwgInJlcGxhY2UiKSwKLSAgICAgICAgICAgICAgICAiXHUwMDAwXHVmZmZkIgotICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSgidW5pY29kZS1pbnRlcm5hbCIsICJyZXBsYWNlIiksCisgICAgICAgICAgICAgICAgICAgICJcdTAwMDBcdWZmZmQiCisgICAgICAgICAgICAgICAgKQogCi0gICAgICAgICAgICBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoInRlc3QuaHVpIiwgaGFuZGxlcl91bmljb2RlaW50ZXJuYWwpCisgICAgICAgICAgICAgICAgY29kZWNzLnJlZ2lzdGVyX2Vycm9yKCJ0ZXN0Lmh1aSIsIGhhbmRsZXJfdW5pY29kZWludGVybmFsKQogCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSgidW5pY29kZS1pbnRlcm5hbCIsICJ0ZXN0Lmh1aSIpLAotICAgICAgICAgICAgICAgICJcdTAwMDBcdTAwMDFcdTAwMDAiCi0gICAgICAgICAgICApCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgICAgICAgICAgYiJceDAwXHgwMFx4MDBceDAwXHgwMCIuZGVjb2RlKCJ1bmljb2RlLWludGVybmFsIiwgInRlc3QuaHVpIiksCisgICAgICAgICAgICAgICAgICAgICJcdTAwMDBcdTAwMDFcdTAwMDAiCisgICAgICAgICAgICAgICAgKQogCiAgICAgZGVmIHRlc3RfY2FsbGJhY2tzKHNlbGYpOgogICAgICAgICBkZWYgaGFuZGxlcjEoZXhjKToKQEAgLTM1NSw3ICszNjQsNyBAQAogICAgICAgICAgICAgWyJhc2NpaSIsICJcdWZmZmZ4IiwgMCwgMSwgIm91Y2giXSwKICAgICAgICAgICAgICInYXNjaWknIGNvZGVjIGNhbid0IGVuY29kZSBjaGFyYWN0ZXIgJ1xcdWZmZmYnIGluIHBvc2l0aW9uIDA6IG91Y2giCiAgICAgICAgICkKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPiAweGZmZmY6CisgICAgICAgIGlmIFNJWkVPRl9XQ0hBUl9UID09IDQ6CiAgICAgICAgICAgICBzZWxmLmNoZWNrX2V4Y2VwdGlvbm9iamVjdGFyZ3MoCiAgICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yLAogICAgICAgICAgICAgICAgIFsiYXNjaWkiLCAiXFUwMDAxMDAwMHgiLCAwLCAxLCAib3VjaCJdLApAQCAtMzkwLDcgKzM5OSw3IEBACiAgICAgICAgICAgICBbImdcdWZmZmZyayIsIDEsIDIsICJvdWNoIl0sCiAgICAgICAgICAgICAiY2FuJ3QgdHJhbnNsYXRlIGNoYXJhY3RlciAnXFx1ZmZmZicgaW4gcG9zaXRpb24gMTogb3VjaCIKICAgICAgICAgKQotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKKyAgICAgICAgaWYgU0laRU9GX1dDSEFSX1QgPT0gNDoKICAgICAgICAgICAgIHNlbGYuY2hlY2tfZXhjZXB0aW9ub2JqZWN0YXJncygKICAgICAgICAgICAgICAgICBVbmljb2RlVHJhbnNsYXRlRXJyb3IsCiAgICAgICAgICAgICAgICAgWyJnXFUwMDAxMDAwMHJrIiwgMSwgMiwgIm91Y2giXSwKQEAgLTU3NywzMSArNTg2LDMwIEBACiAgICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcdWZmZmYiLCAwLCAxLCAib3VjaCIpKSwKICAgICAgICAgICAgICgiXFx1ZmZmZiIsIDEpCiAgICAgICAgICkKLSAgICAgICAgIyAxIG9uIFVDUy00IGJ1aWxkcywgMiBvbiBVQ1MtMgotICAgICAgICBsZW5fd2lkZSA9IGxlbigiXFUwMDAxMDAwMCIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCi0gICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcVTAwMDEwMDAwIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgbGVuX3dpZGUsICJvdWNoIikpLAotICAgICAgICAgICAgKCJcXFUwMDAxMDAwMCIsIGxlbl93aWRlKQotICAgICAgICApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCi0gICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcVTAwMTBmZmZmIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgbGVuX3dpZGUsICJvdWNoIikpLAotICAgICAgICAgICAgKCJcXFUwMDEwZmZmZiIsIGxlbl93aWRlKQotICAgICAgICApCi0gICAgICAgICMgTG9uZSBzdXJyb2dhdGVzIChyZWdhcmRsZXNzIG9mIHVuaWNvZGUgd2lkdGgpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCi0gICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcdWQ4MDAiLCAwLCAxLCAib3VjaCIpKSwKLSAgICAgICAgICAgICgiXFx1ZDgwMCIsIDEpCi0gICAgICAgICkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKLSAgICAgICAgICAgIGNvZGVjcy5iYWNrc2xhc2hyZXBsYWNlX2Vycm9ycygKLSAgICAgICAgICAgICAgICBVbmljb2RlRW5jb2RlRXJyb3IoImFzY2lpIiwgIlx1ZGZmZiIsIDAsIDEsICJvdWNoIikpLAotICAgICAgICAgICAgKCJcXHVkZmZmIiwgMSkKLSAgICAgICAgKQorICAgICAgICBpZiBTSVpFT0ZfV0NIQVJfVCA+IDA6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgICAgIGNvZGVjcy5iYWNrc2xhc2hyZXBsYWNlX2Vycm9ycygKKyAgICAgICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcVTAwMDEwMDAwIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDEsICJvdWNoIikpLAorICAgICAgICAgICAgICAgICgiXFxVMDAwMTAwMDAiLCAxKQorICAgICAgICAgICAgKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCisgICAgICAgICAgICAgICAgICAgIFVuaWNvZGVFbmNvZGVFcnJvcigiYXNjaWkiLCAiXFUwMDEwZmZmZiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAxLCAib3VjaCIpKSwKKyAgICAgICAgICAgICAgICAoIlxcVTAwMTBmZmZmIiwgMSkKKyAgICAgICAgICAgICkKKyAgICAgICAgICAgICMgTG9uZSBzdXJyb2dhdGVzIChyZWdhcmRsZXNzIG9mIHVuaWNvZGUgd2lkdGgpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgICAgIGNvZGVjcy5iYWNrc2xhc2hyZXBsYWNlX2Vycm9ycygKKyAgICAgICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcdWQ4MDAiLCAwLCAxLCAib3VjaCIpKSwKKyAgICAgICAgICAgICAgICAoIlxcdWQ4MDAiLCAxKQorICAgICAgICAgICAgKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCisgICAgICAgICAgICAgICAgICAgIFVuaWNvZGVFbmNvZGVFcnJvcigiYXNjaWkiLCAiXHVkZmZmIiwgMCwgMSwgIm91Y2giKSksCisgICAgICAgICAgICAgICAgKCJcXHVkZmZmIiwgMSkKKyAgICAgICAgICAgICkKIAogICAgIGRlZiB0ZXN0X2JhZGhhbmRsZXJyZXN1bHRzKHNlbGYpOgogICAgICAgICByZXN1bHRzID0gKCA0MiwgImZvbyIsICgxLDIsMyksICgiZm9vIiwgMSwgMyksICgiZm9vIiwgTm9uZSksICgiZm9vIiwpLCAoImZvbyIsIDEsIDMpLCAoImZvbyIsIE5vbmUpLCAoImZvbyIsKSApCkBAIC02MjIsMTIgKzYzMCwxNCBAQAogICAgICAgICAgICAgICAgICgidXRmLTciLCBiIit4LSIpLAogICAgICAgICAgICAgICAgICgidW5pY29kZS1pbnRlcm5hbCIsIGIiXHgwMCIpLAogICAgICAgICAgICAgKToKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcygKLSAgICAgICAgICAgICAgICAgICAgVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICBieXRlcy5kZWNvZGUsCi0gICAgICAgICAgICAgICAgICAgIGVuYywKLSAgICAgICAgICAgICAgICAgICAgInRlc3QuYmFkaGFuZGxlciIKLSAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKKyAgICAgICAgICAgICAgICAgICAgIyB1bmljb2RlLWludGVybmFsIGhhcyBiZWVuIGRlcHJlY2F0ZWQKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoCisgICAgICAgICAgICAgICAgICAgICAgICBUeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICBieXRlcy5kZWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICBlbmMsCisgICAgICAgICAgICAgICAgICAgICAgICAidGVzdC5iYWRoYW5kbGVyIgorICAgICAgICAgICAgICAgICAgICApCiAKICAgICBkZWYgdGVzdF9sb29rdXAoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29kZWNzLnN0cmljdF9lcnJvcnMsIGNvZGVjcy5sb29rdXBfZXJyb3IoInN0cmljdCIpKQpAQCAtNjc5LDcgKzY4OSw3IEBACiAgICAgICAgICMgUHl0aG9uL2NvZGVjcy5jOjpQeUNvZGVjX1hNTENoYXJSZWZSZXBsYWNlRXJyb3JzKCkKICAgICAgICAgIyBhbmQgaW5saW5lIGltcGxlbWVudGF0aW9ucwogICAgICAgICB2ID0gKDEsIDUsIDEwLCA1MCwgMTAwLCA1MDAsIDEwMDAsIDUwMDAsIDEwMDAwLCA1MDAwMCkKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGU+PTEwMDAwMDoKKyAgICAgICAgaWYgU0laRU9GX1dDSEFSX1QgPT0gNDoKICAgICAgICAgICAgIHYgKz0gKDEwMDAwMCwgNTAwMDAwLCAxMDAwMDAwKQogICAgICAgICBzID0gIiIuam9pbihbY2hyKHgpIGZvciB4IGluIHZdKQogICAgICAgICBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoInRlc3QueG1sY2hhcnJlZnJlcGxhY2UiLCBjb2RlY3MueG1sY2hhcnJlZnJlcGxhY2VfZXJyb3JzKQpAQCAtODQzLDggKzg1MywxMiBAQAogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoImRvbid0IGtub3cgaG93IHRvIGhhbmRsZSAlciIgJSBleGMpCiAgICAgICAgIGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigidGVzdC5yZXBsYWNpbmciLCByZXBsYWNpbmcpCi0gICAgICAgIGZvciAoZW5jb2RpbmcsIGRhdGEpIGluIGJhZGRhdGE6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGRhdGEuZGVjb2RlLCBlbmNvZGluZywgInRlc3QucmVwbGFjaW5nIikKKworICAgICAgICB3aXRoIHRlc3Quc3VwcG9ydC5jaGVja193YXJuaW5ncygpOgorICAgICAgICAgICAgIyB1bmljb2RlLWludGVybmFsIGhhcyBiZWVuIGRlcHJlY2F0ZWQKKyAgICAgICAgICAgIGZvciAoZW5jb2RpbmcsIGRhdGEpIGluIGJhZGRhdGE6CisgICAgICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgICAgICAgICBkYXRhLmRlY29kZShlbmNvZGluZywgInRlc3QucmVwbGFjaW5nIikKIAogICAgICAgICBkZWYgbXV0YXRpbmcoZXhjKToKICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoZXhjLCBVbmljb2RlRGVjb2RlRXJyb3IpOgpAQCAtODU1LDggKzg2OSwxMSBAQAogICAgICAgICBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoInRlc3QubXV0YXRpbmciLCBtdXRhdGluZykKICAgICAgICAgIyBJZiB0aGUgZGVjb2RlciBkb2Vzbid0IHBpY2sgdXAgdGhlIG1vZGlmaWVkIGlucHV0IHRoZSBmb2xsb3dpbmcKICAgICAgICAgIyB3aWxsIGxlYWQgdG8gYW4gZW5kbGVzcyBsb29wCi0gICAgICAgIGZvciAoZW5jb2RpbmcsIGRhdGEpIGluIGJhZGRhdGE6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGRhdGEuZGVjb2RlLCBlbmNvZGluZywgInRlc3QucmVwbGFjaW5nIikKKyAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKKyAgICAgICAgICAgICMgdW5pY29kZS1pbnRlcm5hbCBoYXMgYmVlbiBkZXByZWNhdGVkCisgICAgICAgICAgICBmb3IgKGVuY29kaW5nLCBkYXRhKSBpbiBiYWRkYXRhOgorICAgICAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgICAgICAgICAgZGF0YS5kZWNvZGUoZW5jb2RpbmcsICJ0ZXN0LnJlcGxhY2luZyIpCiAKIGRlZiB0ZXN0X21haW4oKToKICAgICB0ZXN0LnN1cHBvcnQucnVuX3VuaXR0ZXN0KENvZGVjQ2FsbGJhY2tUZXN0KQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19jbi5weSBiL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfY24ucHkKaW5kZXggZGNhOWYxMC4uZWUzZDE2NSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19jbi5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX2NuLnB5CkBAIC0xNSw4ICsxNSw4IEBACiAgICAgICAgICMgaW52YWxpZCBieXRlcwogICAgICAgICAoYiJhYmNceDgxXHg4MVx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKICAgICAgICAgKGIiYWJjXHhjOCIsICJzdHJpY3QiLCAgTm9uZSksCi0gICAgICAgIChiImFiY1x4ODFceDgxXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdTgwNGEiKSwKLSAgICAgICAgKGIiYWJjXHg4MVx4ODFceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdTgwNGFcdWZmZmQiKSwKKyAgICAgICAgKGIiYWJjXHg4MVx4ODFceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1ODA0YSIpLAorICAgICAgICAoYiJhYmNceDgxXHg4MVx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1ODA0YVx1ZmZmZCIpLAogICAgICAgICAoYiJhYmNceDgxXHg4MVx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHU4MDRhIiksCiAgICAgICAgIChiIlx4YzFceDY0IiwgInN0cmljdCIsIE5vbmUpLAogICAgICkKQEAgLTI4LDggKzI4LDggQEAKICAgICAgICAgIyBpbnZhbGlkIGJ5dGVzCiAgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAic3RyaWN0IiwgIE5vbmUpLAogICAgICAgICAoYiJhYmNceGM4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ODA0YSIpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ODA0YVx1ZmZmZCIpLAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU4MDRhIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU4MDRhXHVmZmZkIiksCiAgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAiaWdub3JlIiwgICJhYmNcdTgwNGEiKSwKICAgICAgICAgKGIiXHg4M1x4MzRceDgzXHgzMSIsICJzdHJpY3QiLCBOb25lKSwKICAgICAgICAgKCJcdTMwZmIiLCAic3RyaWN0IiwgTm9uZSksCkBAIC00MiwxMSArNDIsMTQgQEAKICAgICAgICAgIyBpbnZhbGlkIGJ5dGVzCiAgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAic3RyaWN0IiwgIE5vbmUpLAogICAgICAgICAoYiJhYmNceGM4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ODA0YSIpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ODA0YVx1ZmZmZCIpLAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU4MDRhIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU4MDRhXHVmZmZkIiksCiAgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAiaWdub3JlIiwgICJhYmNcdTgwNGEiKSwKLSAgICAgICAgKGIiYWJjXHg4NFx4MzlceDg0XHgzOVx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4MDRhIiksCisgICAgICAgIChiImFiY1x4ODRceDM5XHg4NFx4MzlceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZDlcdWZmZmQ5XHU4MDRhIiksCiAgICAgICAgICgiXHUzMGZiIiwgInN0cmljdCIsIGIiXHg4MTlceGE3OSIpLAorICAgICAgICAoYiJhYmNceDg0XHgzMlx4ODBceDgwZGVmIiwgInJlcGxhY2UiLCAnYWJjXHVmZmZkMlx1ZmZmZFx1ZmZmZGRlZicpLAorICAgICAgICAoYiJhYmNceDgxXHgzMFx4ODFceDMwZGVmIiwgInN0cmljdCIsICdhYmNceDgwZGVmJyksCisgICAgICAgIChiImFiY1x4ODZceDMwXHg4MVx4MzBkZWYiLCAicmVwbGFjZSIsICdhYmNcdWZmZmQwXHVmZmZkMGRlZicpLAogICAgICkKICAgICBoYXNfaXNvMTA2NDYgPSBUcnVlCiAKQEAgLTc0LDkgKzc3LDExIEBACiAgICAgICAgICAnXHU1ZGYxXHU2MjQwXHU0ZTBkXHU2YjMyXHVmZjBjXHU1MmZmXHU2NWJkXHU2NWJjXHU0ZWJhXHUzMDAyJwogICAgICAgICAgJ0J5ZS5cbicpLAogICAgICAgICAjIGludmFsaWQgYnl0ZXMKLSAgICAgICAgKGInYWJ+Y2QnLCAncmVwbGFjZScsICdhYlx1RkZGRGQnKSwKKyAgICAgICAgKGInYWJ+Y2QnLCAncmVwbGFjZScsICdhYlx1RkZGRGNkJyksCiAgICAgICAgIChiJ2FiXHhmZmNkJywgJ3JlcGxhY2UnLCAnYWJcdUZGRkRjZCcpLAogICAgICAgICAoYidhYn57XHg4MVx4ODFceDQxXHg0NH59Y2QnLCAncmVwbGFjZScsICdhYlx1RkZGRFx1RkZGRFx1ODA0QWNkJyksCisgICAgICAgIChiJ2FifntceDQxXHg0NH59Y2QnLCAncmVwbGFjZScsICdhYlx1ODA0QWNkJyksCisgICAgICAgIChiImFifntceDc5XHg3OVx4NDFceDQ0fn1jZCIsICJyZXBsYWNlIiwgImFiXHVmZmZkXHVmZmZkXHU4MDRhY2QiKSwKICAgICApCiAKIGRlZiB0ZXN0X21haW4oKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfaGsucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX2hrLnB5CmluZGV4IGNjZGMwYjQuLjUyMGRmNDMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfaGsucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19oay5weQpAQCAtMTUsOCArMTUsOCBAQAogICAgICAgICAjIGludmFsaWQgYnl0ZXMKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJzdHJpY3QiLCAgTm9uZSksCiAgICAgICAgIChiImFiY1x4YzgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4YjEwIiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4YjEwXHVmZmZkIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdThiMTAiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdThiMTBcdWZmZmQiKSwKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJpZ25vcmUiLCAgImFiY1x1OGIxMCIpLAogICAgICkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19qcC5weSBiL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfanAucHkKaW5kZXggZjU2YTM3My4uODdlNDgxMiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19qcC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX2pwLnB5CkBAIC0xNSw1MCArMTUsNTcgQEAKICAgICAgICAgIyBpbnZhbGlkIGJ5dGVzCiAgICAgICAgIChiImFiY1x4ODFceDAwXHg4MVx4MDBceDgyXHg4NCIsICJzdHJpY3QiLCAgTm9uZSksCiAgICAgICAgIChiImFiY1x4ZjgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgxXHgwMFx4ODJceDg0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZjQ0IiksCi0gICAgICAgIChiImFiY1x4ODFceDAwXHg4Mlx4ODRceDg4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZjQ0XHVmZmZkIiksCi0gICAgICAgIChiImFiY1x4ODFceDAwXHg4Mlx4ODQiLCAiaWdub3JlIiwgICJhYmNcdWZmNDQiKSwKKyAgICAgICAgKGIiYWJjXHg4MVx4MDBceDgyXHg4NCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx4MDBcdWZmNDQiKSwKKyAgICAgICAgKGIiYWJjXHg4MVx4MDBceDgyXHg4NFx4ODgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRceDAwXHVmZjQ0XHVmZmZkIiksCisgICAgICAgIChiImFiY1x4ODFceDAwXHg4Mlx4ODQiLCAiaWdub3JlIiwgICJhYmNceDAwXHVmZjQ0IiksCisgICAgICAgIChiImFiXHhFQnh5IiwgInJlcGxhY2UiLCAiYWJcdUZGRkR4eSIpLAorICAgICAgICAoYiJhYlx4RjBceDM5eHkiLCAicmVwbGFjZSIsICJhYlx1RkZGRDl4eSIpLAorICAgICAgICAoYiJhYlx4RUFceEYweHkiLCAicmVwbGFjZSIsICdhYlx1ZmZmZFx1ZTAzOHknKSwKICAgICAgICAgIyBzamlzIHZzIGNwOTMyCiAgICAgICAgIChiIlxcXHg3ZSIsICJyZXBsYWNlIiwgIlxcXHg3ZSIpLAogICAgICAgICAoYiJceDgxXHg1Zlx4ODFceDYxXHg4MVx4N2MiLCAicmVwbGFjZSIsICJcdWZmM2NcdTIyMjVcdWZmMGQiKSwKICAgICApCiAKK2V1Y19jb21tb250ZXN0cyA9ICgKKyAgICAjIGludmFsaWQgYnl0ZXMKKyAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKKyAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU3OTU2IiksCisgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdTc5NTZcdWZmZmQiKSwKKyAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHU3OTU2IiksCisgICAgKGIiYWJjXHhjOCIsICJzdHJpY3QiLCAgTm9uZSksCisgICAgKGIiYWJjXHg4Zlx4ODNceDgzIiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHVmZmZkIiksCisgICAgKGIiXHg4Mlx4RkN4eSIsICJyZXBsYWNlIiwgIlx1ZmZmZFx1ZmZmZHh5IiksCisgICAgKGIiXHhjMVx4NjQiLCAic3RyaWN0IiwgTm9uZSksCisgICAgKGIiXHhhMVx4YzAiLCAic3RyaWN0IiwgIlx1ZmYzYyIpLAorICAgIChiIlx4YTFceGMwXFwiLCAic3RyaWN0IiwgIlx1ZmYzY1xcIiksCisgICAgKGIiXHg4ZVhZIiwgInJlcGxhY2UiLCAiXHVmZmZkWFkiKSwKKykKKworY2xhc3MgVGVzdF9FVUNfSklTXzIwMDQodGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LlRlc3RCYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGVuY29kaW5nID0gJ2V1Y19qaXNfMjAwNCcKKyAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnZXVjX2ppc3gwMjEzJykKKyAgICBjb2RlY3Rlc3RzID0gZXVjX2NvbW1vbnRlc3RzCisgICAgeG1sY2hhcm5hbWV0ZXN0ID0gKAorICAgICAgICAiXHhhYlx1MjExY1x4YmIgPSBcdTIzMjlcdTEyMzRcdTIzMmEiLAorICAgICAgICBiIlx4YTlceGE4JnJlYWw7XHhhOVx4YjIgPSAmbGFuZzsmIzQ2NjA7JnJhbmc7IgorICAgICkKKwogY2xhc3MgVGVzdF9FVUNfSklTWDAyMTModGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LlRlc3RCYXNlLAogICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGVuY29kaW5nID0gJ2V1Y19qaXN4MDIxMycKICAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnZXVjX2ppc3gwMjEzJykKLSAgICBjb2RlY3Rlc3RzID0gKAotICAgICAgICAjIGludmFsaWQgYnl0ZXMKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJzdHJpY3QiLCAgTm9uZSksCi0gICAgICAgIChiImFiY1x4YzgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU3OTU2IiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU3OTU2XHVmZmZkIiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAiaWdub3JlIiwgICJhYmNcdTc5NTYiKSwKLSAgICAgICAgKGIiYWJjXHg4Zlx4ODNceDgzIiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkIiksCi0gICAgICAgIChiIlx4YzFceDY0IiwgInN0cmljdCIsIE5vbmUpLAotICAgICAgICAoYiJceGExXHhjMCIsICJzdHJpY3QiLCAiXHVmZjNjIiksCi0gICAgKQorICAgIGNvZGVjdGVzdHMgPSBldWNfY29tbW9udGVzdHMKICAgICB4bWxjaGFybmFtZXRlc3QgPSAoCiAgICAgICAgICJceGFiXHUyMTFjXHhiYiA9IFx1MjMyOVx1MTIzNFx1MjMyYSIsCiAgICAgICAgIGIiXHhhOVx4YTgmcmVhbDtceGE5XHhiMiA9ICZsYW5nOyYjNDY2MDsmcmFuZzsiCiAgICAgKQogCi1ldWNqcF9jb21tb250ZXN0cyA9ICgKLSAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAoYiJhYmNceGM4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU3OTU2IiksCi0gICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdTc5NTZcdWZmZmQiKSwKLSAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHU3OTU2IiksCi0gICAgKGIiYWJjXHg4Zlx4ODNceDgzIiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkIiksCi0gICAgKGIiXHhjMVx4NjQiLCAic3RyaWN0IiwgTm9uZSksCi0pCi0KIGNsYXNzIFRlc3RfRVVDX0pQX0NPTVBBVCh0ZXN0X211bHRpYnl0ZWNvZGVjX3N1cHBvcnQuVGVzdEJhc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGVuY29kaW5nID0gJ2V1Y19qcCcKICAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnZXVjX2pwJykKLSAgICBjb2RlY3Rlc3RzID0gZXVjanBfY29tbW9udGVzdHMgKyAoCi0gICAgICAgIChiIlx4YTFceGMwXFwiLCAic3RyaWN0IiwgIlx1ZmYzY1xcIiksCisgICAgY29kZWN0ZXN0cyA9IGV1Y19jb21tb250ZXN0cyArICgKICAgICAgICAgKCJceGE1IiwgInN0cmljdCIsIGIiXHg1YyIpLAogICAgICAgICAoIlx1MjAzZSIsICJzdHJpY3QiLCBiIlx4N2UiKSwKICAgICApCkBAIC02Niw4ICs3Myw2IEBACiBzaGlmdGppc19jb21tb25lbmN0ZXN0cyA9ICgKICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0IiwgInN0cmljdCIsICBOb25lKSwKICAgICAoYiJhYmNceGY4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZjQ0IiksCi0gICAgKGIiYWJjXHg4MFx4ODBceDgyXHg4NFx4ODgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmNDRcdWZmZmQiKSwKICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0ZGVmIiwgImlnbm9yZSIsICAiYWJjXHVmZjQ0ZGVmIiksCiApCiAKQEAgLTc1LDIwICs4MCw0MSBAQAogICAgIGVuY29kaW5nID0gJ3NoaWZ0X2ppcycKICAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnc2hpZnRfamlzJykKICAgICBjb2RlY3Rlc3RzID0gc2hpZnRqaXNfY29tbW9uZW5jdGVzdHMgKyAoCisgICAgICAgIChiImFiY1x4ODBceDgwXHg4Mlx4ODQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdWZmNDQiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceDgyXHg4NFx4ODgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdWZmNDRcdWZmZmQiKSwKKwogICAgICAgICAoYiJcXFx4N2UiLCAic3RyaWN0IiwgIlxcXHg3ZSIpLAogICAgICAgICAoYiJceDgxXHg1Zlx4ODFceDYxXHg4MVx4N2MiLCAic3RyaWN0IiwgIlx1ZmYzY1x1MjAxNlx1MjIxMiIpLAorICAgICAgICAoYiJhYmNceDgxXHgzOSIsICJyZXBsYWNlIiwgICJhYmNcdWZmZmQ5IiksCisgICAgICAgIChiImFiY1x4RUFceEZDIiwgInJlcGxhY2UiLCAgImFiY1x1ZmZmZFx1ZmZmZCIpLAorICAgICAgICAoYiJhYmNceEZGXHg1OCIsICJyZXBsYWNlIiwgICJhYmNcdWZmZmRYIiksCisgICAgKQorCitjbGFzcyBUZXN0X1NKSVNfMjAwNCh0ZXN0X211bHRpYnl0ZWNvZGVjX3N1cHBvcnQuVGVzdEJhc2UsIHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBlbmNvZGluZyA9ICdzaGlmdF9qaXNfMjAwNCcKKyAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnc2hpZnRfamlzJykKKyAgICBjb2RlY3Rlc3RzID0gc2hpZnRqaXNfY29tbW9uZW5jdGVzdHMgKyAoCisgICAgICAgIChiIlxcXHg3ZSIsICJzdHJpY3QiLCAiXHhhNVx1MjAzZSIpLAorICAgICAgICAoYiJceDgxXHg1Zlx4ODFceDYxXHg4MVx4N2MiLCAic3RyaWN0IiwgIlxcXHUyMDE2XHUyMjEyIiksCisgICAgICAgIChiImFiY1x4RUFceEZDIiwgInN0cmljdCIsICAiYWJjXHU2NGJmIiksCisgICAgICAgIChiIlx4ODFceDM5eHkiLCAicmVwbGFjZSIsICAiXHVmZmZkOXh5IiksCisgICAgICAgIChiIlx4RkZceDU4eHkiLCAicmVwbGFjZSIsICAiXHVmZmZkWHh5IiksCisgICAgICAgIChiIlx4ODBceDgwXHg4Mlx4ODR4eSIsICJyZXBsYWNlIiwgIlx1ZmZmZFx1ZmZmZFx1ZmY0NHh5IiksCisgICAgICAgIChiIlx4ODBceDgwXHg4Mlx4ODRceDg4eHkiLCAicmVwbGFjZSIsICJcdWZmZmRcdWZmZmRcdWZmNDRcdTU4NjR5IiksCisgICAgICAgIChiIlx4RkNceEZCeHkiLCAicmVwbGFjZSIsICdcdWZmZmRcdTk1YjR5JyksCisgICAgKQorICAgIHhtbGNoYXJuYW1ldGVzdCA9ICgKKyAgICAgICAgIlx4YWJcdTIxMWNceGJiID0gXHUyMzI5XHUxMjM0XHUyMzJhIiwKKyAgICAgICAgYiJceDg1RyZyZWFsO1x4ODVRID0gJmxhbmc7JiM0NjYwOyZyYW5nOyIKICAgICApCiAKIGNsYXNzIFRlc3RfU0pJU1gwMjEzKHRlc3RfbXVsdGlieXRlY29kZWNfc3VwcG9ydC5UZXN0QmFzZSwgdW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGVuY29kaW5nID0gJ3NoaWZ0X2ppc3gwMjEzJwogICAgIHRzdHJpbmcgPSB0ZXN0X211bHRpYnl0ZWNvZGVjX3N1cHBvcnQubG9hZF90ZXN0c3RyaW5nKCdzaGlmdF9qaXN4MDIxMycpCi0gICAgY29kZWN0ZXN0cyA9ICgKLSAgICAgICAgIyBpbnZhbGlkIGJ5dGVzCi0gICAgICAgIChiImFiY1x4ODBceDgwXHg4Mlx4ODQiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceGY4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceDgyXHg4NCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmY0NCIpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0XHg4OCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmY0NFx1ZmZmZCIpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0ZGVmIiwgImlnbm9yZSIsICAiYWJjXHVmZjQ0ZGVmIiksCisgICAgY29kZWN0ZXN0cyA9IHNoaWZ0amlzX2NvbW1vbmVuY3Rlc3RzICsgKAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHVmZjQ0IiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHg4Mlx4ODRceDg4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHVmZjQ0XHVmZmZkIiksCisKICAgICAgICAgIyBzamlzIHZzIGNwOTMyCiAgICAgICAgIChiIlxcXHg3ZSIsICJyZXBsYWNlIiwgIlx4YTVcdTIwM2UiKSwKICAgICAgICAgKGIiXHg4MVx4NWZceDgxXHg2MVx4ODFceDdjIiwgInJlcGxhY2UiLCAiXHg1Y1x1MjAxNlx1MjIxMiIpLApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19rci5weSBiL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3Nfa3IucHkKaW5kZXggZGU0ZGE3Zi4uNDk5N2U4MyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19rci5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX2tyLnB5CkBAIC0xNSw4ICsxNSw4IEBACiAgICAgICAgICMgaW52YWxpZCBieXRlcwogICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKICAgICAgICAgKGIiYWJjXHhjOCIsICJzdHJpY3QiLCAgTm9uZSksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWM4OTQiKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWM4OTRcdWZmZmQiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1Yzg5NCIpLAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1Yzg5NFx1ZmZmZCIpLAogICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHVjODk0IiksCiAgICAgKQogCkBAIC0yNyw4ICsyNyw4IEBACiAgICAgICAgICMgaW52YWxpZCBieXRlcwogICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKICAgICAgICAgKGIiYWJjXHhjOCIsICJzdHJpY3QiLCAgTm9uZSksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWM4OTQiKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWM4OTRcdWZmZmQiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJyZXBsYWNlIiwgJ2FiY1x1ZmZmZFx1ZmZmZFx1Yzg5NCcpLAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1Yzg5NFx1ZmZmZCIpLAogICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHVjODk0IiksCiAKICAgICAgICAgIyBjb21wb3NlZCBtYWtlLXVwIHNlcXVlbmNlIGVycm9ycwpAQCAtNDAsMTMgKzQwLDE0IEBACiAgICAgICAgIChiIlx4YTRceGQ0XHhhNFx4YjZceGE0XHhkMFx4YTQiLCAic3RyaWN0IiwgTm9uZSksCiAgICAgICAgIChiIlx4YTRceGQ0XHhhNFx4YjZceGE0XHhkMFx4YTRceGQ0IiwgInN0cmljdCIsICJcdWM0ZDQiKSwKICAgICAgICAgKGIiXHhhNFx4ZDRceGE0XHhiNlx4YTRceGQwXHhhNFx4ZDR4IiwgInN0cmljdCIsICJcdWM0ZDR4IiksCi0gICAgICAgIChiImFceGE0XHhkNFx4YTRceGI2XHhhNCIsICJyZXBsYWNlIiwgImFcdWZmZmQiKSwKKyAgICAgICAgKGIiYVx4YTRceGQ0XHhhNFx4YjZceGE0IiwgInJlcGxhY2UiLCAnYVx1ZmZmZCcpLAogICAgICAgICAoYiJceGE0XHhkNFx4YTNceGI2XHhhNFx4ZDBceGE0XHhkNCIsICJzdHJpY3QiLCBOb25lKSwKICAgICAgICAgKGIiXHhhNFx4ZDRceGE0XHhiNlx4YTNceGQwXHhhNFx4ZDQiLCAic3RyaWN0IiwgTm9uZSksCiAgICAgICAgIChiIlx4YTRceGQ0XHhhNFx4YjZceGE0XHhkMFx4YTNceGQ0IiwgInN0cmljdCIsIE5vbmUpLAotICAgICAgICAoYiJceGE0XHhkNFx4YTRceGZmXHhhNFx4ZDBceGE0XHhkNCIsICJyZXBsYWNlIiwgIlx1ZmZmZCIpLAotICAgICAgICAoYiJceGE0XHhkNFx4YTRceGI2XHhhNFx4ZmZceGE0XHhkNCIsICJyZXBsYWNlIiwgIlx1ZmZmZCIpLAotICAgICAgICAoYiJceGE0XHhkNFx4YTRceGI2XHhhNFx4ZDBceGE0XHhmZiIsICJyZXBsYWNlIiwgIlx1ZmZmZCIpLAorICAgICAgICAoYiJceGE0XHhkNFx4YTRceGZmXHhhNFx4ZDBceGE0XHhkNCIsICJyZXBsYWNlIiwgJ1x1ZmZmZFx1NmUyMVx1ZmZmZFx1MzE2MFx1ZmZmZCcpLAorICAgICAgICAoYiJceGE0XHhkNFx4YTRceGI2XHhhNFx4ZmZceGE0XHhkNCIsICJyZXBsYWNlIiwgJ1x1ZmZmZFx1NmUyMVx1YjU0NFx1ZmZmZFx1ZmZmZCcpLAorICAgICAgICAoYiJceGE0XHhkNFx4YTRceGI2XHhhNFx4ZDBceGE0XHhmZiIsICJyZXBsYWNlIiwgJ1x1ZmZmZFx1NmUyMVx1YjU0NFx1NTcyZFx1ZmZmZCcpLAorICAgICAgICAoYiJceGE0XHhkNFx4ZmZceGE0XHhkNFx4YTRceGI2XHhhNFx4ZDBceGE0XHhkNCIsICJyZXBsYWNlIiwgJ1x1ZmZmZFx1ZmZmZFx1ZmZmZFx1YzRkNCcpLAogICAgICAgICAoYiJceGMxXHhjNCIsICJzdHJpY3QiLCAiXHVjODk0IiksCiAgICAgKQogCkBAIC01Nyw5ICs1OCwxMyBAQAogICAgICAgICAjIGludmFsaWQgYnl0ZXMKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJzdHJpY3QiLCAgTm9uZSksCiAgICAgICAgIChiImFiY1x4YzgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVjZDI3IiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVjZDI3XHVmZmZkIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdWNkMjciKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdWNkMjdcdWZmZmQiKSwKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJpZ25vcmUiLCAgImFiY1x1Y2QyNyIpLAorICAgICAgICAoYiJceEQ4YWJjIiwgInJlcGxhY2UiLCAgIlx1RkZGRGFiYyIpLAorICAgICAgICAoYiJceEQ4XHhGRmFiYyIsICJyZXBsYWNlIiwgICJcdUZGRkRcdUZGRkRhYmMiKSwKKyAgICAgICAgKGIiXHg4NGJ4eSIsICJyZXBsYWNlIiwgICJcdUZGRkRieHkiKSwKKyAgICAgICAgKGIiXHg4Q0J4eSIsICJyZXBsYWNlIiwgICJcdUZGRkRCeHkiKSwKICAgICApCiAKIGRlZiB0ZXN0X21haW4oKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfdHcucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX3R3LnB5CmluZGV4IDEyZDNjOWYuLmYyZjNjMTggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfdHcucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc190dy5weQpAQCAtMTUsOCArMTUsOCBAQAogICAgICAgICAjIGludmFsaWQgYnl0ZXMKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJzdHJpY3QiLCAgTm9uZSksCiAgICAgICAgIChiImFiY1x4YzgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4YjEwIiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4YjEwXHVmZmZkIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdThiMTAiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdThiMTBcdWZmZmQiKSwKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJpZ25vcmUiLCAgImFiY1x1OGIxMCIpLAogICAgICkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY21hcHNfdHcucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjbWFwc190dy5weQppbmRleCA2ZGI1MDkxLi40MTJiOWRlIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2NvZGVjbWFwc190dy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjbWFwc190dy5weQpAQCAtMjMsNiArMjMsOSBAQAogICAgICAgICAoYidceGEyXHhjYycsICdcdTUzNDEnKSwKICAgICAgICAgKGInXHhhMlx4Y2UnLCAnXHU1MzQ1JyksCiAgICAgXQorICAgIGNvZGVjdGVzdHMgPSAoCisgICAgICAgIChiIlx4RkZ4eSIsICJyZXBsYWNlIiwgICJcdWZmZmR4eSIpLAorICAgICkKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KF9fbmFtZV9fKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY3MucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjcy5weQppbmRleCA0ODk5YTU5Li41ZGFhYTE5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2NvZGVjcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjcy5weQpAQCAtMSw4ICsxLDI1IEBACi1mcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKLWltcG9ydCB1bml0dGVzdAoraW1wb3J0IF90ZXN0Y2FwaQogaW1wb3J0IGNvZGVjcworaW1wb3J0IGlvCiBpbXBvcnQgbG9jYWxlCi1pbXBvcnQgc3lzLCBfdGVzdGNhcGksIGlvCitpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCB3YXJuaW5ncworCitmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKKworaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgVklTVEFfT1JfTEFURVIgPSAoc3lzLmdldHdpbmRvd3N2ZXJzaW9uKCkubWFqb3IgPj0gNikKK2Vsc2U6CisgICAgVklTVEFfT1JfTEFURVIgPSBGYWxzZQorCit0cnk6CisgICAgaW1wb3J0IGN0eXBlcworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIGN0eXBlcyA9IE5vbmUKKyAgICBTSVpFT0ZfV0NIQVJfVCA9IC0xCitlbHNlOgorICAgIFNJWkVPRl9XQ0hBUl9UID0gY3R5cGVzLnNpemVvZihjdHlwZXMuY193Y2hhcikKIAogY2xhc3MgUXVldWUob2JqZWN0KToKICAgICAiIiIKQEAgLTYyMiw4ICs2MzksMTEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgYiJhYmNceGVkXHhhMFx4ODBkZWYiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIiYWJjXHhlZFx4YTBceDgwZGVmIi5kZWNvZGUoInV0Zi04IiwgInN1cnJvZ2F0ZXBhc3MiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAiYWJjXHVkODAwZGVmIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiXFUwMDAxMGZmZlx1RDgwMCIuZW5jb2RlKCJ1dGYtOCIsICJzdXJyb2dhdGVwYXNzIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgYiJceGYwXHg5MFx4YmZceGJmXHhlZFx4YTBceDgwIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiIlx4ZjBceDkwXHhiZlx4YmZceGVkXHhhMFx4ODAiLmRlY29kZSgidXRmLTgiLCAic3Vycm9nYXRlcGFzcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJcVTAwMDEwZmZmXHVEODAwIikKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNvZGVjcy5sb29rdXBfZXJyb3IoInN1cnJvZ2F0ZXBhc3MiKSkKIAorQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICd3aW4zMicsCisgICAgICAgICAgICAgICAgICAgICAnY3A2NTAwMSBpcyBhIFdpbmRvd3Mtb25seSBjb2RlYycpCitjbGFzcyBDUDY1MDAxVGVzdChSZWFkVGVzdCk6CisgICAgZW5jb2RpbmcgPSAiY3A2NTAwMSIKKworICAgIGRlZiB0ZXN0X2VuY29kZShzZWxmKToKKyAgICAgICAgdGVzdHMgPSBbCisgICAgICAgICAgICAoJ2FiYycsICdzdHJpY3QnLCBiJ2FiYycpLAorICAgICAgICAgICAgKCdceGU5XHUyMGFjJywgJ3N0cmljdCcsICBiJ1x4YzNceGE5XHhlMlx4ODJceGFjJyksCisgICAgICAgICAgICAoJ1xVMDAxMGZmZmYnLCAnc3RyaWN0JywgYidceGY0XHg4Zlx4YmZceGJmJyksCisgICAgICAgIF0KKyAgICAgICAgaWYgVklTVEFfT1JfTEFURVI6CisgICAgICAgICAgICB0ZXN0cy5leHRlbmQoKAorICAgICAgICAgICAgICAgICgnXHVkYzgwJywgJ3N0cmljdCcsIE5vbmUpLAorICAgICAgICAgICAgICAgICgnXHVkYzgwJywgJ2lnbm9yZScsIGInJyksCisgICAgICAgICAgICAgICAgKCdcdWRjODAnLCAncmVwbGFjZScsIGInPycpLAorICAgICAgICAgICAgICAgICgnXHVkYzgwJywgJ2JhY2tzbGFzaHJlcGxhY2UnLCBiJ1xcdWRjODAnKSwKKyAgICAgICAgICAgICAgICAoJ1x1ZGM4MCcsICdzdXJyb2dhdGVwYXNzJywgYidceGVkXHhiMlx4ODAnKSwKKyAgICAgICAgICAgICkpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB0ZXN0cy5hcHBlbmQoKCdcdWRjODAnLCAnc3RyaWN0JywgYidceGVkXHhiMlx4ODAnKSkKKyAgICAgICAgZm9yIHRleHQsIGVycm9ycywgZXhwZWN0ZWQgaW4gdGVzdHM6CisgICAgICAgICAgICBpZiBleHBlY3RlZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGVuY29kZWQgPSB0ZXh0LmVuY29kZSgnY3A2NTAwMScsIGVycm9ycykKKyAgICAgICAgICAgICAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yIGFzIGVycjoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdVbmFibGUgdG8gZW5jb2RlICVhIHRvIGNwNjUwMDEgd2l0aCAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZXJyb3JzPSVyOiAlcycgJSAodGV4dCwgZXJyb3JzLCBlcnIpKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW5jb2RlZCwgZXhwZWN0ZWQsCisgICAgICAgICAgICAgICAgICAgICclYS5lbmNvZGUoImNwNjUwMDEiLCAlcik9JWEgIT0gJWEnCisgICAgICAgICAgICAgICAgICAgICUgKHRleHQsIGVycm9ycywgZW5jb2RlZCwgZXhwZWN0ZWQpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRW5jb2RlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgIHRleHQuZW5jb2RlLCAiY3A2NTAwMSIsIGVycm9ycykKKworICAgIGRlZiB0ZXN0X2RlY29kZShzZWxmKToKKyAgICAgICAgdGVzdHMgPSBbCisgICAgICAgICAgICAoYidhYmMnLCAnc3RyaWN0JywgJ2FiYycpLAorICAgICAgICAgICAgKGInXHhjM1x4YTlceGUyXHg4Mlx4YWMnLCAnc3RyaWN0JywgJ1x4ZTlcdTIwYWMnKSwKKyAgICAgICAgICAgIChiJ1x4ZjRceDhmXHhiZlx4YmYnLCAnc3RyaWN0JywgJ1xVMDAxMGZmZmYnKSwKKyAgICAgICAgICAgIChiJ1x4ZWZceGJmXHhiZCcsICdzdHJpY3QnLCAnXHVmZmZkJyksCisgICAgICAgICAgICAoYidbXHhjM1x4YTldJywgJ3N0cmljdCcsICdbXHhlOV0nKSwKKyAgICAgICAgICAgICMgaW52YWxpZCBieXRlcworICAgICAgICAgICAgKGInW1x4ZmZdJywgJ3N0cmljdCcsIE5vbmUpLAorICAgICAgICAgICAgKGInW1x4ZmZdJywgJ2lnbm9yZScsICdbXScpLAorICAgICAgICAgICAgKGInW1x4ZmZdJywgJ3JlcGxhY2UnLCAnW1x1ZmZmZF0nKSwKKyAgICAgICAgICAgIChiJ1tceGZmXScsICdzdXJyb2dhdGVlc2NhcGUnLCAnW1x1ZGNmZl0nKSwKKyAgICAgICAgXQorICAgICAgICBpZiBWSVNUQV9PUl9MQVRFUjoKKyAgICAgICAgICAgIHRlc3RzLmV4dGVuZCgoCisgICAgICAgICAgICAgICAgKGInW1x4ZWRceGIyXHg4MF0nLCAnc3RyaWN0JywgTm9uZSksCisgICAgICAgICAgICAgICAgKGInW1x4ZWRceGIyXHg4MF0nLCAnaWdub3JlJywgJ1tdJyksCisgICAgICAgICAgICAgICAgKGInW1x4ZWRceGIyXHg4MF0nLCAncmVwbGFjZScsICdbXHVmZmZkXHVmZmZkXHVmZmZkXScpLAorICAgICAgICAgICAgKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHRlc3RzLmV4dGVuZCgoCisgICAgICAgICAgICAgICAgKGInW1x4ZWRceGIyXHg4MF0nLCAnc3RyaWN0JywgJ1tcdWRjODBdJyksCisgICAgICAgICAgICApKQorICAgICAgICBmb3IgcmF3LCBlcnJvcnMsIGV4cGVjdGVkIGluIHRlc3RzOgorICAgICAgICAgICAgaWYgZXhwZWN0ZWQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBkZWNvZGVkID0gcmF3LmRlY29kZSgnY3A2NTAwMScsIGVycm9ycykKKyAgICAgICAgICAgICAgICBleGNlcHQgVW5pY29kZURlY29kZUVycm9yIGFzIGVycjoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdVbmFibGUgdG8gZGVjb2RlICVhIGZyb20gY3A2NTAwMSB3aXRoICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdlcnJvcnM9JXI6ICVzJyAlIChyYXcsIGVycm9ycywgZXJyKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRlY29kZWQsIGV4cGVjdGVkLAorICAgICAgICAgICAgICAgICAgICAnJWEuZGVjb2RlKCJjcDY1MDAxIiwgJXIpPSVhICE9ICVhJworICAgICAgICAgICAgICAgICAgICAlIChyYXcsIGVycm9ycywgZGVjb2RlZCwgZXhwZWN0ZWQpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRGVjb2RlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgIHJhdy5kZWNvZGUsICdjcDY1MDAxJywgZXJyb3JzKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoVklTVEFfT1JfTEFURVIsICdyZXF1aXJlIFdpbmRvd3MgVmlzdGEgb3IgbGF0ZXInKQorICAgIGRlZiB0ZXN0X2xvbmVfc3Vycm9nYXRlcyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZUVuY29kZUVycm9yLCAiXHVkODAwIi5lbmNvZGUsICJjcDY1MDAxIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZURlY29kZUVycm9yLCBiIlx4ZWRceGEwXHg4MCIuZGVjb2RlLCAiY3A2NTAwMSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIltcdURDODBdIi5lbmNvZGUoImNwNjUwMDEiLCAiYmFja3NsYXNocmVwbGFjZSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInW1xcdWRjODBdJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiW1x1REM4MF0iLmVuY29kZSgiY3A2NTAwMSIsICJ4bWxjaGFycmVmcmVwbGFjZSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInWyYjNTY0NDg7XScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIltcdURDODBdIi5lbmNvZGUoImNwNjUwMDEiLCAic3Vycm9nYXRlZXNjYXBlIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgYidbXHg4MF0nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJbXHVEQzgwXSIuZW5jb2RlKCJjcDY1MDAxIiwgImlnbm9yZSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInW10nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJbXHVEQzgwXSIuZW5jb2RlKCJjcDY1MDAxIiwgInJlcGxhY2UiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBiJ1s/XScpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhWSVNUQV9PUl9MQVRFUiwgJ3JlcXVpcmUgV2luZG93cyBWaXN0YSBvciBsYXRlcicpCisgICAgZGVmIHRlc3Rfc3Vycm9nYXRlcGFzc19oYW5kbGVyKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJhYmNcdWQ4MDBkZWYiLmVuY29kZSgiY3A2NTAwMSIsICJzdXJyb2dhdGVwYXNzIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgYiJhYmNceGVkXHhhMFx4ODBkZWYiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIiYWJjXHhlZFx4YTBceDgwZGVmIi5kZWNvZGUoImNwNjUwMDEiLCAic3Vycm9nYXRlcGFzcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJhYmNcdWQ4MDBkZWYiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJcVTAwMDEwZmZmXHVEODAwIi5lbmNvZGUoImNwNjUwMDEiLCAic3Vycm9nYXRlcGFzcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGIiXHhmMFx4OTBceGJmXHhiZlx4ZWRceGEwXHg4MCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiJceGYwXHg5MFx4YmZceGJmXHhlZFx4YTBceDgwIi5kZWNvZGUoImNwNjUwMDEiLCAic3Vycm9nYXRlcGFzcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJcVTAwMDEwZmZmXHVEODAwIikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNvZGVjcy5sb29rdXBfZXJyb3IoInN1cnJvZ2F0ZXBhc3MiKSkKKworCisKIGNsYXNzIFVURjdUZXN0KFJlYWRUZXN0KToKICAgICBlbmNvZGluZyA9ICJ1dGYtNyIKIApAQCAtODg0LDYxICsxMDA2LDgwIEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaSwgcHVueS5kZWNvZGUoInB1bnljb2RlIikpCiAKIGNsYXNzIFVuaWNvZGVJbnRlcm5hbFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKFNJWkVPRl9XQ0hBUl9UID09IDQsICdzcGVjaWZpYyB0byAzMi1iaXQgd2NoYXJfdCcpCiAgICAgZGVmIHRlc3RfYnVnMTI1MTMwMChzZWxmKToKICAgICAgICAgIyBEZWNvZGluZyB3aXRoIHVuaWNvZGVfaW50ZXJuYWwgdXNlZCB0byBub3QgY29ycmVjdGx5IGhhbmRsZSAiY29kZQogICAgICAgICAjIHBvaW50cyIgYWJvdmUgMHgxMGZmZmYgb24gVUNTLTQgYnVpbGRzLgotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKLSAgICAgICAgICAgIG9rID0gWwotICAgICAgICAgICAgICAgIChiIlx4MDBceDEwXHhmZlx4ZmYiLCAiXFUwMDEwZmZmZiIpLAotICAgICAgICAgICAgICAgIChiIlx4MDBceDAwXHgwMVx4MDEiLCAiXFUwMDAwMDEwMSIpLAotICAgICAgICAgICAgICAgIChiIiIsICIiKSwKLSAgICAgICAgICAgIF0KLSAgICAgICAgICAgIG5vdF9vayA9IFsKLSAgICAgICAgICAgICAgICBiIlx4N2ZceGZmXHhmZlx4ZmYiLAotICAgICAgICAgICAgICAgIGIiXHg4MFx4MDBceDAwXHgwMCIsCi0gICAgICAgICAgICAgICAgYiJceDgxXHgwMFx4MDBceDAwIiwKLSAgICAgICAgICAgICAgICBiIlx4MDAiLAotICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLAotICAgICAgICAgICAgXQotICAgICAgICAgICAgZm9yIGludGVybmFsLCB1bmkgaW4gb2s6Ci0gICAgICAgICAgICAgICAgaWYgc3lzLmJ5dGVvcmRlciA9PSAibGl0dGxlIjoKLSAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWwgPSBieXRlcyhyZXZlcnNlZChpbnRlcm5hbCkpCisgICAgICAgIG9rID0gWworICAgICAgICAgICAgKGIiXHgwMFx4MTBceGZmXHhmZiIsICJcVTAwMTBmZmZmIiksCisgICAgICAgICAgICAoYiJceDAwXHgwMFx4MDFceDAxIiwgIlxVMDAwMDAxMDEiKSwKKyAgICAgICAgICAgIChiIiIsICIiKSwKKyAgICAgICAgXQorICAgICAgICBub3Rfb2sgPSBbCisgICAgICAgICAgICBiIlx4N2ZceGZmXHhmZlx4ZmYiLAorICAgICAgICAgICAgYiJceDgwXHgwMFx4MDBceDAwIiwKKyAgICAgICAgICAgIGIiXHg4MVx4MDBceDAwXHgwMCIsCisgICAgICAgICAgICBiIlx4MDAiLAorICAgICAgICAgICAgYiJceDAwXHgwMFx4MDBceDAwXHgwMCIsCisgICAgICAgIF0KKyAgICAgICAgZm9yIGludGVybmFsLCB1bmkgaW4gb2s6CisgICAgICAgICAgICBpZiBzeXMuYnl0ZW9yZGVyID09ICJsaXR0bGUiOgorICAgICAgICAgICAgICAgIGludGVybmFsID0gYnl0ZXMocmV2ZXJzZWQoaW50ZXJuYWwpKQorICAgICAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCk6CiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmksIGludGVybmFsLmRlY29kZSgidW5pY29kZV9pbnRlcm5hbCIpKQotICAgICAgICAgICAgZm9yIGludGVybmFsIGluIG5vdF9vazoKLSAgICAgICAgICAgICAgICBpZiBzeXMuYnl0ZW9yZGVyID09ICJsaXR0bGUiOgotICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbCA9IGJ5dGVzKHJldmVyc2VkKGludGVybmFsKSkKKyAgICAgICAgZm9yIGludGVybmFsIGluIG5vdF9vazoKKyAgICAgICAgICAgIGlmIHN5cy5ieXRlb3JkZXIgPT0gImxpdHRsZSI6CisgICAgICAgICAgICAgICAgaW50ZXJuYWwgPSBieXRlcyhyZXZlcnNlZChpbnRlcm5hbCkpCisgICAgICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2RlcHJlY2F0ZWQnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRGVjb2RlRXJyb3IsIGludGVybmFsLmRlY29kZSwKLSAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVfaW50ZXJuYWwiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1bmljb2RlX2ludGVybmFsIikKKyAgICAgICAgaWYgc3lzLmJ5dGVvcmRlciA9PSAibGl0dGxlIjoKKyAgICAgICAgICAgIGludmFsaWQgPSBiIlx4MDBceDAwXHgxMVx4MDAiCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpbnZhbGlkID0gYiJceDAwXHgxMVx4MDBceDAwIgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVEZWNvZGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludmFsaWQuZGVjb2RlLCAidW5pY29kZV9pbnRlcm5hbCIpCisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbnZhbGlkLmRlY29kZSgidW5pY29kZV9pbnRlcm5hbCIsICJyZXBsYWNlIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdWZmZmQnKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoU0laRU9GX1dDSEFSX1QgPT0gNCwgJ3NwZWNpZmljIHRvIDMyLWJpdCB3Y2hhcl90JykKICAgICBkZWYgdGVzdF9kZWNvZGVfZXJyb3JfYXR0cmlidXRlcyhzZWxmKToKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPiAweGZmZmY6Ci0gICAgICAgICAgICB0cnk6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJ3VuaWNvZGVfaW50ZXJuYWwgY29kZWMgaGFzIGJlZW4gJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVwcmVjYXRlZCcsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDBceDExXHgxMVx4MDAiLmRlY29kZSgidW5pY29kZV9pbnRlcm5hbCIpCi0gICAgICAgICAgICBleGNlcHQgVW5pY29kZURlY29kZUVycm9yIGFzIGV4OgotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInVuaWNvZGVfaW50ZXJuYWwiLCBleC5lbmNvZGluZykKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIiXHgwMFx4MDBceDAwXHgwMFx4MDBceDExXHgxMVx4MDAiLCBleC5vYmplY3QpCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg0LCBleC5zdGFydCkKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDgsIGV4LmVuZCkKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgc2VsZi5mYWlsKCkKKyAgICAgICAgZXhjZXB0IFVuaWNvZGVEZWNvZGVFcnJvciBhcyBleDoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInVuaWNvZGVfaW50ZXJuYWwiLCBleC5lbmNvZGluZykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiJceDAwXHgwMFx4MDBceDAwXHgwMFx4MTFceDExXHgwMCIsIGV4Lm9iamVjdCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoNCwgZXguc3RhcnQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDgsIGV4LmVuZCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZmFpbCgpCiAKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhTSVpFT0ZfV0NIQVJfVCA9PSA0LCAnc3BlY2lmaWMgdG8gMzItYml0IHdjaGFyX3QnKQogICAgIGRlZiB0ZXN0X2RlY29kZV9jYWxsYmFjayhzZWxmKToKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPiAweGZmZmY6Ci0gICAgICAgICAgICBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoIlVuaWNvZGVJbnRlcm5hbFRlc3QiLCBjb2RlY3MuaWdub3JlX2Vycm9ycykKLSAgICAgICAgICAgIGRlY29kZXIgPSBjb2RlY3MuZ2V0ZGVjb2RlcigidW5pY29kZV9pbnRlcm5hbCIpCisgICAgICAgIGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigiVW5pY29kZUludGVybmFsVGVzdCIsIGNvZGVjcy5pZ25vcmVfZXJyb3JzKQorICAgICAgICBkZWNvZGVyID0gY29kZWNzLmdldGRlY29kZXIoInVuaWNvZGVfaW50ZXJuYWwiKQorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVwcmVjYXRlZCcsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgYWIgPSAiYWIiLmVuY29kZSgidW5pY29kZV9pbnRlcm5hbCIpLmRlY29kZSgpCiAgICAgICAgICAgICBpZ25vcmVkID0gZGVjb2RlcihieXRlcygiJXNceDIyXHgyMlx4MjJceDIyJXMiICUgKGFiWzo0XSwgYWJbNDpdKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhc2NpaSIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlVuaWNvZGVJbnRlcm5hbFRlc3QiKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgoImFiIiwgMTIpLCBpZ25vcmVkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgiYWIiLCAxMiksIGlnbm9yZWQpCiAKICAgICBkZWYgdGVzdF9lbmNvZGVfbGVuZ3RoKHNlbGYpOgotICAgICAgICAjIElzc3VlIDM3MzkKLSAgICAgICAgZW5jb2RlciA9IGNvZGVjcy5nZXRlbmNvZGVyKCJ1bmljb2RlX2ludGVybmFsIikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGVyKCJhIilbMV0sIDEpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW5jb2RlcigiXHhlOVx1MDE0MiIpWzFdLCAyKQorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVwcmVjYXRlZCcsIERlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICAgICAgIyBJc3N1ZSAzNzM5CisgICAgICAgICAgICBlbmNvZGVyID0gY29kZWNzLmdldGVuY29kZXIoInVuaWNvZGVfaW50ZXJuYWwiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGVyKCJhIilbMV0sIDEpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVuY29kZXIoIlx4ZTlcdTAxNDIiKVsxXSwgMikKIAotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvZGVjcy5lc2NhcGVfZW5jb2RlKGJyJ1x4MDAnKVsxXSwgNCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29kZWNzLmVzY2FwZV9lbmNvZGUoYnInXHgwMCcpWzFdLCA0KQogCiAjIEZyb20gaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2xpYmlkbi9kcmFmdC1qb3NlZnNzb24taWRuLXRlc3QtdmVjdG9ycy5odG1sCiBuYW1lcHJlcF90ZXN0cyA9IFsKQEAgLTEyNjIsNyArMTQwMyw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZWYucmVhZCgpLCBiJ1xcXHhkNVxuXHgwMFx4MDBceGFlJykKIAogICAgICAgICBmID0gaW8uQnl0ZXNJTygpCi0gICAgICAgIGVmID0gY29kZWNzLkVuY29kZWRGaWxlKGYsICd1dGYtOCcsICdsYXRpbjEnKQorICAgICAgICBlZiA9IGNvZGVjcy5FbmNvZGVkRmlsZShmLCAndXRmLTgnLCAnbGF0aW4tMScpCiAgICAgICAgIGVmLndyaXRlKGInXHhjM1x4YmMnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuZ2V0dmFsdWUoKSwgYidceGZjJykKIApAQCAtMTM5NCwxMCArMTUzNSwxMyBAQAogICAgICAgICAgICAgZWxpZiBlbmNvZGluZyA9PSAibGF0aW5fMSI6CiAgICAgICAgICAgICAgICAgbmFtZSA9ICJsYXRpbl8xIgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGluZy5yZXBsYWNlKCJfIiwgIi0iKSwgbmFtZS5yZXBsYWNlKCJfIiwgIi0iKSkKLSAgICAgICAgICAgIChiLCBzaXplKSA9IGNvZGVjcy5nZXRlbmNvZGVyKGVuY29kaW5nKShzKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaXplLCBsZW4ocyksICIlciAhPSAlciAoZW5jb2Rpbmc9JXIpIiAlIChzaXplLCBsZW4ocyksIGVuY29kaW5nKSkKLSAgICAgICAgICAgIChjaGFycywgc2l6ZSkgPSBjb2RlY3MuZ2V0ZGVjb2RlcihlbmNvZGluZykoYikKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hhcnMsIHMsICIlciAhPSAlciAoZW5jb2Rpbmc9JXIpIiAlIChjaGFycywgcywgZW5jb2RpbmcpKQorCisgICAgICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKKyAgICAgICAgICAgICAgICAjIHVuaWNvZGUtaW50ZXJuYWwgaGFzIGJlZW4gZGVwcmVjYXRlZAorICAgICAgICAgICAgICAgIChiLCBzaXplKSA9IGNvZGVjcy5nZXRlbmNvZGVyKGVuY29kaW5nKShzKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2l6ZSwgbGVuKHMpLCAiJXIgIT0gJXIgKGVuY29kaW5nPSVyKSIgJSAoc2l6ZSwgbGVuKHMpLCBlbmNvZGluZykpCisgICAgICAgICAgICAgICAgKGNoYXJzLCBzaXplKSA9IGNvZGVjcy5nZXRkZWNvZGVyKGVuY29kaW5nKShiKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hhcnMsIHMsICIlciAhPSAlciAoZW5jb2Rpbmc9JXIpIiAlIChjaGFycywgcywgZW5jb2RpbmcpKQogCiAgICAgICAgICAgICBpZiBlbmNvZGluZyBub3QgaW4gYnJva2VuX3VuaWNvZGVfd2l0aF9zdHJlYW1zOgogICAgICAgICAgICAgICAgICMgY2hlY2sgc3RyZWFtIHJlYWRlci93cml0ZXIKQEAgLTE1MDEsNyArMTY0NSw5IEBACiAgICAgZGVmIHRlc3RfYmFkX2VuY29kZV9hcmdzKHNlbGYpOgogICAgICAgICBmb3IgZW5jb2RpbmcgaW4gYWxsX3VuaWNvZGVfZW5jb2RpbmdzOgogICAgICAgICAgICAgZW5jb2RlciA9IGNvZGVjcy5nZXRlbmNvZGVyKGVuY29kaW5nKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBlbmNvZGVyKQorICAgICAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCk6CisgICAgICAgICAgICAgICAgIyB1bmljb2RlLWludGVybmFsIGhhcyBiZWVuIGRlcHJlY2F0ZWQKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGVuY29kZXIpCiAKICAgICBkZWYgdGVzdF9lbmNvZGluZ19tYXBfdHlwZV9pbml0aWFsaXplZChzZWxmKToKICAgICAgICAgZnJvbSBlbmNvZGluZ3MgaW1wb3J0IGNwMTE0MApAQCAtMTU5Myw2ICsxNzM5LDEyIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29kZWNzLnJhd191bmljb2RlX2VzY2FwZV9kZWNvZGUociJcdTEyMzQiKSwgKCJcdTEyMzQiLCA2KSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb2RlY3MucmF3X3VuaWNvZGVfZXNjYXBlX2RlY29kZShiciJcdTEyMzQiKSwgKCJcdTEyMzQiLCA2KSkKIAorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRGVjb2RlRXJyb3IsIGNvZGVjcy51bmljb2RlX2VzY2FwZV9kZWNvZGUsIGJyIlxVMDAxMTAwMDAiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvZGVjcy51bmljb2RlX2VzY2FwZV9kZWNvZGUociJcVTAwMTEwMDAwIiwgInJlcGxhY2UiKSwgKCJcdWZmZmQiLCAxMCkpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZURlY29kZUVycm9yLCBjb2RlY3MucmF3X3VuaWNvZGVfZXNjYXBlX2RlY29kZSwgYnIiXFUwMDExMDAwMCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29kZWNzLnJhd191bmljb2RlX2VzY2FwZV9kZWNvZGUociJcVTAwMTEwMDAwIiwgInJlcGxhY2UiKSwgKCJcdWZmZmQiLCAxMCkpCisKIGNsYXNzIFN1cnJvZ2F0ZUVzY2FwZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfdXRmOChzZWxmKToKQEAgLTE2MjMsNyArMTc3NSw3IEBACiAKICAgICBkZWYgdGVzdF9sYXRpbjEoc2VsZik6CiAgICAgICAgICMgSXNzdWU2MzczCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIlx1ZGNlNFx1ZGNlYlx1ZGNlZlx1ZGNmNlx1ZGNmYyIuZW5jb2RlKCJsYXRpbjEiLCAic3Vycm9nYXRlZXNjYXBlIiksCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIlx1ZGNlNFx1ZGNlYlx1ZGNlZlx1ZGNmNlx1ZGNmYyIuZW5jb2RlKCJsYXRpbi0xIiwgInN1cnJvZ2F0ZWVzY2FwZSIpLAogICAgICAgICAgICAgICAgICAgICAgICAgIGIiXHhlNFx4ZWJceGVmXHhmNlx4ZmMiKQogCiAKQEAgLTE3MzIsNiArMTg4NCwxNTUgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc291dCwgYiJceDgwIikKIAogCitAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJywKKyAgICAgICAgICAgICAgICAgICAgICdjb2RlIHBhZ2VzIGFyZSBzcGVjaWZpYyB0byBXaW5kb3dzJykKK2NsYXNzIENvZGVQYWdlVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIyBDUF9VVEY4IGlzIGFscmVhZHkgdGVzdGVkIGJ5IENQNjUwMDFUZXN0CisgICAgQ1BfVVRGOCA9IDY1MDAxCisKKyAgICBkZWYgdGVzdF9pbnZhbGlkX2NvZGVfcGFnZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgY29kZWNzLmNvZGVfcGFnZV9lbmNvZGUsIC0xLCAnYScpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGNvZGVjcy5jb2RlX3BhZ2VfZGVjb2RlLCAtMSwgYidhJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoV2luZG93c0Vycm9yLCBjb2RlY3MuY29kZV9wYWdlX2VuY29kZSwgMTIzLCAnYScpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFdpbmRvd3NFcnJvciwgY29kZWNzLmNvZGVfcGFnZV9kZWNvZGUsIDEyMywgYidhJykKKworICAgIGRlZiB0ZXN0X2NvZGVfcGFnZV9uYW1lKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KFVuaWNvZGVFbmNvZGVFcnJvciwgJ2NwOTMyJywKKyAgICAgICAgICAgIGNvZGVjcy5jb2RlX3BhZ2VfZW5jb2RlLCA5MzIsICdceGZmJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleChVbmljb2RlRGVjb2RlRXJyb3IsICdjcDkzMicsCisgICAgICAgICAgICBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSwgOTMyLCBiJ1x4ODFceDAwJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleChVbmljb2RlRGVjb2RlRXJyb3IsICdDUF9VVEY4JywKKyAgICAgICAgICAgIGNvZGVjcy5jb2RlX3BhZ2VfZGVjb2RlLCBzZWxmLkNQX1VURjgsIGInXHhmZicpCisKKyAgICBkZWYgY2hlY2tfZGVjb2RlKHNlbGYsIGNwLCB0ZXN0cyk6CisgICAgICAgIGZvciByYXcsIGVycm9ycywgZXhwZWN0ZWQgaW4gdGVzdHM6CisgICAgICAgICAgICBpZiBleHBlY3RlZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGRlY29kZWQgPSBjb2RlY3MuY29kZV9wYWdlX2RlY29kZShjcCwgcmF3LCBlcnJvcnMpCisgICAgICAgICAgICAgICAgZXhjZXB0IFVuaWNvZGVEZWNvZGVFcnJvciBhcyBlcnI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgnVW5hYmxlIHRvIGRlY29kZSAlYSBmcm9tICJjcCVzIiB3aXRoICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdlcnJvcnM9JXI6ICVzJyAlIChyYXcsIGNwLCBlcnJvcnMsIGVycikpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZWNvZGVkWzBdLCBleHBlY3RlZCwKKyAgICAgICAgICAgICAgICAgICAgJyVhLmRlY29kZSgiY3AlcyIsICVyKT0lYSAhPSAlYScKKyAgICAgICAgICAgICAgICAgICAgJSAocmF3LCBjcCwgZXJyb3JzLCBkZWNvZGVkWzBdLCBleHBlY3RlZCkpCisgICAgICAgICAgICAgICAgIyBhc3NlcnQgMCA8PSBkZWNvZGVkWzFdIDw9IGxlbihyYXcpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwoZGVjb2RlZFsxXSwgMCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChkZWNvZGVkWzFdLCBsZW4ocmF3KSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZURlY29kZUVycm9yLAorICAgICAgICAgICAgICAgICAgICBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSwgY3AsIHJhdywgZXJyb3JzKQorCisgICAgZGVmIGNoZWNrX2VuY29kZShzZWxmLCBjcCwgdGVzdHMpOgorICAgICAgICBmb3IgdGV4dCwgZXJyb3JzLCBleHBlY3RlZCBpbiB0ZXN0czoKKyAgICAgICAgICAgIGlmIGV4cGVjdGVkIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgZW5jb2RlZCA9IGNvZGVjcy5jb2RlX3BhZ2VfZW5jb2RlKGNwLCB0ZXh0LCBlcnJvcnMpCisgICAgICAgICAgICAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvciBhcyBlcnI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgnVW5hYmxlIHRvIGVuY29kZSAlYSB0byAiY3AlcyIgd2l0aCAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZXJyb3JzPSVyOiAlcycgJSAodGV4dCwgY3AsIGVycm9ycywgZXJyKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVuY29kZWRbMF0sIGV4cGVjdGVkLAorICAgICAgICAgICAgICAgICAgICAnJWEuZW5jb2RlKCJjcCVzIiwgJXIpPSVhICE9ICVhJworICAgICAgICAgICAgICAgICAgICAlICh0ZXh0LCBjcCwgZXJyb3JzLCBlbmNvZGVkWzBdLCBleHBlY3RlZCkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGVkWzFdLCBsZW4odGV4dCkpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVFbmNvZGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgY29kZWNzLmNvZGVfcGFnZV9lbmNvZGUsIGNwLCB0ZXh0LCBlcnJvcnMpCisKKyAgICBkZWYgdGVzdF9jcDkzMihzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19lbmNvZGUoOTMyLCAoCisgICAgICAgICAgICAoJ2FiYycsICdzdHJpY3QnLCBiJ2FiYycpLAorICAgICAgICAgICAgKCdcdWZmNDRcdTlhM2UnLCAnc3RyaWN0JywgYidceDgyXHg4NFx4ZTlceDgwJyksCisgICAgICAgICAgICAjIHRlc3QgZXJyb3IgaGFuZGxlcnMKKyAgICAgICAgICAgICgnXHhmZicsICdzdHJpY3QnLCBOb25lKSwKKyAgICAgICAgICAgICgnW1x4ZmZdJywgJ2lnbm9yZScsIGInW10nKSwKKyAgICAgICAgICAgICgnW1x4ZmZdJywgJ3JlcGxhY2UnLCBiJ1t5XScpLAorICAgICAgICAgICAgKCdbXHUyMGFjXScsICdyZXBsYWNlJywgYidbP10nKSwKKyAgICAgICAgICAgICgnW1x4ZmZdJywgJ2JhY2tzbGFzaHJlcGxhY2UnLCBiJ1tcXHhmZl0nKSwKKyAgICAgICAgICAgICgnW1x4ZmZdJywgJ3htbGNoYXJyZWZyZXBsYWNlJywgYidbJiMyNTU7XScpLAorICAgICAgICApKQorICAgICAgICBzZWxmLmNoZWNrX2RlY29kZSg5MzIsICgKKyAgICAgICAgICAgIChiJ2FiYycsICdzdHJpY3QnLCAnYWJjJyksCisgICAgICAgICAgICAoYidceDgyXHg4NFx4ZTlceDgwJywgJ3N0cmljdCcsICdcdWZmNDRcdTlhM2UnKSwKKyAgICAgICAgICAgICMgaW52YWxpZCBieXRlcworICAgICAgICAgICAgKGInW1x4ZmZdJywgJ3N0cmljdCcsIE5vbmUpLAorICAgICAgICAgICAgKGInW1x4ZmZdJywgJ2lnbm9yZScsICdbXScpLAorICAgICAgICAgICAgKGInW1x4ZmZdJywgJ3JlcGxhY2UnLCAnW1x1ZmZmZF0nKSwKKyAgICAgICAgICAgIChiJ1tceGZmXScsICdzdXJyb2dhdGVlc2NhcGUnLCAnW1x1ZGNmZl0nKSwKKyAgICAgICAgICAgIChiJ1x4ODFceDAwYWJjJywgJ3N0cmljdCcsIE5vbmUpLAorICAgICAgICAgICAgKGInXHg4MVx4MDBhYmMnLCAnaWdub3JlJywgJ1x4MDBhYmMnKSwKKyAgICAgICAgICAgIChiJ1x4ODFceDAwYWJjJywgJ3JlcGxhY2UnLCAnXHVmZmZkXHgwMGFiYycpLAorICAgICAgICApKQorCisgICAgZGVmIHRlc3RfY3AxMjUyKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2VuY29kZSgxMjUyLCAoCisgICAgICAgICAgICAoJ2FiYycsICdzdHJpY3QnLCBiJ2FiYycpLAorICAgICAgICAgICAgKCdceGU5XHUyMGFjJywgJ3N0cmljdCcsICBiJ1x4ZTlceDgwJyksCisgICAgICAgICAgICAoJ1x4ZmYnLCAnc3RyaWN0JywgYidceGZmJyksCisgICAgICAgICAgICAoJ1x1MDE0MScsICdzdHJpY3QnLCBOb25lKSwKKyAgICAgICAgICAgICgnXHUwMTQxJywgJ2lnbm9yZScsIGInJyksCisgICAgICAgICAgICAoJ1x1MDE0MScsICdyZXBsYWNlJywgYidMJyksCisgICAgICAgICkpCisgICAgICAgIHNlbGYuY2hlY2tfZGVjb2RlKDEyNTIsICgKKyAgICAgICAgICAgIChiJ2FiYycsICdzdHJpY3QnLCAnYWJjJyksCisgICAgICAgICAgICAoYidceGU5XHg4MCcsICdzdHJpY3QnLCAnXHhlOVx1MjBhYycpLAorICAgICAgICAgICAgKGInXHhmZicsICdzdHJpY3QnLCAnXHhmZicpLAorICAgICAgICApKQorCisgICAgZGVmIHRlc3RfY3BfdXRmNyhzZWxmKToKKyAgICAgICAgY3AgPSA2NTAwMAorICAgICAgICBzZWxmLmNoZWNrX2VuY29kZShjcCwgKAorICAgICAgICAgICAgKCdhYmMnLCAnc3RyaWN0JywgYidhYmMnKSwKKyAgICAgICAgICAgICgnXHhlOVx1MjBhYycsICdzdHJpY3QnLCAgYicrQU9rZ3JBLScpLAorICAgICAgICAgICAgKCdcVTAwMTBmZmZmJywgJ3N0cmljdCcsICBiJysyLy9mL3ctJyksCisgICAgICAgICAgICAoJ1x1ZGM4MCcsICdzdHJpY3QnLCBiJyszSUEtJyksCisgICAgICAgICAgICAoJ1x1ZmZmZCcsICdzdHJpY3QnLCBiJysvLzAtJyksCisgICAgICAgICkpCisgICAgICAgIHNlbGYuY2hlY2tfZGVjb2RlKGNwLCAoCisgICAgICAgICAgICAoYidhYmMnLCAnc3RyaWN0JywgJ2FiYycpLAorICAgICAgICAgICAgKGInK0FPa2dyQS0nLCAnc3RyaWN0JywgJ1x4ZTlcdTIwYWMnKSwKKyAgICAgICAgICAgIChiJysyLy9mL3ctJywgJ3N0cmljdCcsICdcVTAwMTBmZmZmJyksCisgICAgICAgICAgICAoYicrM0lBLScsICdzdHJpY3QnLCAnXHVkYzgwJyksCisgICAgICAgICAgICAoYicrLy8wLScsICdzdHJpY3QnLCAnXHVmZmZkJyksCisgICAgICAgICAgICAjIGludmFsaWQgYnl0ZXMKKyAgICAgICAgICAgIChiJ1srL10nLCAnc3RyaWN0JywgJ1tdJyksCisgICAgICAgICAgICAoYidbXHhmZl0nLCAnc3RyaWN0JywgJ1tceGZmXScpLAorICAgICAgICApKQorCisgICAgZGVmIHRlc3RfbXVsdGlieXRlX2VuY29kaW5nKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2RlY29kZSg5MzIsICgKKyAgICAgICAgICAgIChiJ1x4ODRceGU5XHg4MCcsICdpZ25vcmUnLCAnXHU5YTNlJyksCisgICAgICAgICAgICAoYidceDg0XHhlOVx4ODAnLCAncmVwbGFjZScsICdcdWZmZmRcdTlhM2UnKSwKKyAgICAgICAgKSkKKyAgICAgICAgc2VsZi5jaGVja19kZWNvZGUoc2VsZi5DUF9VVEY4LCAoCisgICAgICAgICAgICAoYidceGZmXHhmNFx4OGZceGJmXHhiZicsICdpZ25vcmUnLCAnXFUwMDEwZmZmZicpLAorICAgICAgICAgICAgKGInXHhmZlx4ZjRceDhmXHhiZlx4YmYnLCAncmVwbGFjZScsICdcdWZmZmRcVTAwMTBmZmZmJyksCisgICAgICAgICkpCisgICAgICAgIGlmIFZJU1RBX09SX0xBVEVSOgorICAgICAgICAgICAgc2VsZi5jaGVja19lbmNvZGUoc2VsZi5DUF9VVEY4LCAoCisgICAgICAgICAgICAgICAgKCdbXFUwMDEwZmZmZlx1REM4MF0nLCAnaWdub3JlJywgYidbXHhmNFx4OGZceGJmXHhiZl0nKSwKKyAgICAgICAgICAgICAgICAoJ1tcVTAwMTBmZmZmXHVEQzgwXScsICdyZXBsYWNlJywgYidbXHhmNFx4OGZceGJmXHhiZj9dJyksCisgICAgICAgICAgICApKQorCisgICAgZGVmIHRlc3RfaW5jcmVtZW50YWwoc2VsZik6CisgICAgICAgIGRlY29kZWQgPSBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSg5MzIsIGInXHg4MicsICdzdHJpY3QnLCBGYWxzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZWNvZGVkLCAoJycsIDApKQorCisgICAgICAgIGRlY29kZWQgPSBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSg5MzIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiJ1x4ZTlceDgwXHhlOScsICdzdHJpY3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGVjb2RlZCwgKCdcdTlhM2UnLCAyKSkKKworICAgICAgICBkZWNvZGVkID0gY29kZWNzLmNvZGVfcGFnZV9kZWNvZGUoOTMyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYidceGU5XHg4MFx4ZTlceDgwJywgJ3N0cmljdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGYWxzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZWNvZGVkLCAoJ1x1OWEzZVx1OWEzZScsIDQpKQorCisgICAgICAgIGRlY29kZWQgPSBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSg5MzIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiJ2FiYycsICdzdHJpY3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGVjb2RlZCwgKCdhYmMnLCAzKSkKKworCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoCiAgICAgICAgIFVURjMyVGVzdCwKQEAgLTE3NDIsNiArMjA0Myw3IEBACiAgICAgICAgIFVURjE2QkVUZXN0LAogICAgICAgICBVVEY4VGVzdCwKICAgICAgICAgVVRGOFNpZ1Rlc3QsCisgICAgICAgIENQNjUwMDFUZXN0LAogICAgICAgICBVVEY3VGVzdCwKICAgICAgICAgVVRGMTZFeFRlc3QsCiAgICAgICAgIFJlYWRCdWZmZXJUZXN0LApAQCAtMTc2MCw2ICsyMDYyLDcgQEAKICAgICAgICAgU3Vycm9nYXRlRXNjYXBlVGVzdCwKICAgICAgICAgQm9tVGVzdCwKICAgICAgICAgVHJhbnNmb3JtQ29kZWNUZXN0LAorICAgICAgICBDb2RlUGFnZVRlc3QsCiAgICAgKQogCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29sbGVjdGlvbnMucHkgYi9MaWIvdGVzdC90ZXN0X2NvbGxlY3Rpb25zLnB5CmluZGV4IDhkYzU1NTkuLjg4YzMxMjkgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29sbGVjdGlvbnMucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2xsZWN0aW9ucy5weQpAQCAtMSw2ICsxLDcgQEAKICIiIlVuaXQgdGVzdHMgZm9yIGNvbGxlY3Rpb25zLnB5LiIiIgogCiBpbXBvcnQgdW5pdHRlc3QsIGRvY3Rlc3QsIG9wZXJhdG9yCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVEVTVEZOLCBmb3JnZXQsIHVubGluawogaW1wb3J0IGluc3BlY3QKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgbmFtZWR0dXBsZSwgQ291bnRlciwgT3JkZXJlZERpY3QsIF9jb3VudF9lbGVtZW50cwpAQCAtMTAsMjEgKzExLDIwIEBACiBpbXBvcnQga2V5d29yZAogaW1wb3J0IHJlCiBpbXBvcnQgc3lzCi1mcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBfQ2hhaW5NYXAKLWZyb20gY29sbGVjdGlvbnMgaW1wb3J0IEhhc2hhYmxlLCBJdGVyYWJsZSwgSXRlcmF0b3IKLWZyb20gY29sbGVjdGlvbnMgaW1wb3J0IFNpemVkLCBDb250YWluZXIsIENhbGxhYmxlCi1mcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBTZXQsIE11dGFibGVTZXQKLWZyb20gY29sbGVjdGlvbnMgaW1wb3J0IE1hcHBpbmcsIE11dGFibGVNYXBwaW5nLCBLZXlzVmlldywgSXRlbXNWaWV3LCBVc2VyRGljdAotZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgU2VxdWVuY2UsIE11dGFibGVTZXF1ZW5jZQotZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgQnl0ZVN0cmluZworZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgVXNlckRpY3QKK2Zyb20gY29sbGVjdGlvbnMgaW1wb3J0IENoYWluTWFwCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgSGFzaGFibGUsIEl0ZXJhYmxlLCBJdGVyYXRvcgorZnJvbSBjb2xsZWN0aW9ucy5hYmMgaW1wb3J0IFNpemVkLCBDb250YWluZXIsIENhbGxhYmxlCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgU2V0LCBNdXRhYmxlU2V0Citmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgTWFwcGluZywgTXV0YWJsZU1hcHBpbmcsIEtleXNWaWV3LCBJdGVtc1ZpZXcKK2Zyb20gY29sbGVjdGlvbnMuYWJjIGltcG9ydCBTZXF1ZW5jZSwgTXV0YWJsZVNlcXVlbmNlCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgQnl0ZVN0cmluZwogCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMgX0NoYWluTWFwIChoZWxwZXIgY2xhc3MgZm9yIGNvbmZpZ3BhcnNlcikKKyMjIyBDaGFpbk1hcCAoaGVscGVyIGNsYXNzIGZvciBjb25maWdwYXJzZXIgYW5kIHRoZSBzdHJpbmcgbW9kdWxlKQogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAotQ2hhaW5NYXAgPSBfQ2hhaW5NYXAgICMgcmVuYW1lIHRvIGtlZXAgdGVzdCBjb2RlIGluIHN5bmMgd2l0aCAzLjMgdmVyc2lvbgotCiBjbGFzcyBUZXN0Q2hhaW5NYXAodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfYmFzaWNzKHNlbGYpOgpAQCAtMTI4LDYgKzEyOCw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUG9pbnQuX19tb2R1bGVfXywgX19uYW1lX18pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUG9pbnQuX19nZXRpdGVtX18sIHR1cGxlLl9fZ2V0aXRlbV9fKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFBvaW50Ll9maWVsZHMsICgneCcsICd5JykpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2NsYXNzIFBvaW50KHR1cGxlKScsIFBvaW50Ll9zb3VyY2UpCiAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbmFtZWR0dXBsZSwgJ2FiYyUnLCAnZWZnIGdoaScpICAgICAgICMgdHlwZSBoYXMgbm9uLWFscGhhIGNoYXIKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbmFtZWR0dXBsZSwgJ2NsYXNzJywgJ2VmZyBnaGknKSAgICAgICMgdHlwZSBoYXMga2V5d29yZApAQCAtMzI3LDYgKzMyOCwxNyBAQAogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIoQigxKSksICdCKHg9MSknKQogCisgICAgZGVmIHRlc3Rfc291cmNlKHNlbGYpOgorICAgICAgICAjIHZlcmlmeSB0aGF0IF9zb3VyY2UgY2FuIGJlIHJ1biB0aHJvdWdoIGV4ZWMoKQorICAgICAgICB0bXAgPSBuYW1lZHR1cGxlKCdOVENvbG9yJywgJ3JlZCBncmVlbiBibHVlJykKKyAgICAgICAgZ2xvYmFscygpLnBvcCgnTlRDb2xvcicsIE5vbmUpICAgICAgICAgICMgcmVtb3ZlIGFydGlmYWN0cyBmcm9tIG90aGVyIHRlc3RzCisgICAgICAgIGV4ZWModG1wLl9zb3VyY2UsIGdsb2JhbHMoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignTlRDb2xvcicsIGdsb2JhbHMoKSkKKyAgICAgICAgYyA9IE5UQ29sb3IoMTAsIDIwLCAzMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgoYy5yZWQsIGMuZ3JlZW4sIGMuYmx1ZSksICgxMCwgMjAsIDMwKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChOVENvbG9yLl9maWVsZHMsICgncmVkJywgJ2dyZWVuJywgJ2JsdWUnKSkKKyAgICAgICAgZ2xvYmFscygpLnBvcCgnTlRDb2xvcicsIE5vbmUpICAgICAgICAgICMgY2xlYW4tdXAgYWZ0ZXIgdGhpcyB0ZXN0CisKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMjIyBBYnN0cmFjdCBCYXNlIENsYXNzZXMKQEAgLTcyOSw2ICs3NDEsNDQgQEAKICAgICAgICAgc2VsZi52YWxpZGF0ZV9hYnN0cmFjdF9tZXRob2RzKE11dGFibGVTZXF1ZW5jZSwgJ19fY29udGFpbnNfXycsICdfX2l0ZXJfXycsCiAgICAgICAgICAgICAnX19sZW5fXycsICdfX2dldGl0ZW1fXycsICdfX3NldGl0ZW1fXycsICdfX2RlbGl0ZW1fXycsICdpbnNlcnQnKQogCisgICAgZGVmIHRlc3RfTXV0YWJsZVNlcXVlbmNlX21peGlucyhzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoZSBtaXhpbnMgb2YgTXV0YWJsZVNlcXVlbmNlIGJ5IGNyZWF0aW5nIGEgbWltaW5hbCBjb25jcmV0ZQorICAgICAgICAjIGNsYXNzIGluaGVyaXRlZCBmcm9tIGl0LgorICAgICAgICBjbGFzcyBNdXRhYmxlU2VxdWVuY2VTdWJjbGFzcyhNdXRhYmxlU2VxdWVuY2UpOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHNlbGYubHN0ID0gW10KKworICAgICAgICAgICAgZGVmIF9fc2V0aXRlbV9fKHNlbGYsIGluZGV4LCB2YWx1ZSk6CisgICAgICAgICAgICAgICAgc2VsZi5sc3RbaW5kZXhdID0gdmFsdWUKKworICAgICAgICAgICAgZGVmIF9fZ2V0aXRlbV9fKHNlbGYsIGluZGV4KToKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5sc3RbaW5kZXhdCisKKyAgICAgICAgICAgIGRlZiBfX2xlbl9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiBsZW4oc2VsZi5sc3QpCisKKyAgICAgICAgICAgIGRlZiBfX2RlbGl0ZW1fXyhzZWxmLCBpbmRleCk6CisgICAgICAgICAgICAgICAgZGVsIHNlbGYubHN0W2luZGV4XQorCisgICAgICAgICAgICBkZWYgaW5zZXJ0KHNlbGYsIGluZGV4LCB2YWx1ZSk6CisgICAgICAgICAgICAgICAgc2VsZi5sc3QuaW5zZXJ0KGluZGV4LCB2YWx1ZSkKKworICAgICAgICBtc3MgPSBNdXRhYmxlU2VxdWVuY2VTdWJjbGFzcygpCisgICAgICAgIG1zcy5hcHBlbmQoMCkKKyAgICAgICAgbXNzLmV4dGVuZCgoMSwgMiwgMywgNCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG1zcyksIDUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNzWzNdLCAzKQorICAgICAgICBtc3MucmV2ZXJzZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNzWzNdLCAxKQorICAgICAgICBtc3MucG9wKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obXNzKSwgNCkKKyAgICAgICAgbXNzLnJlbW92ZSgzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtc3MpLCAzKQorICAgICAgICBtc3MgKz0gKDEwLCAyMCwgMzApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG1zcyksIDYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNzWy0xXSwgMzApCisgICAgICAgIG1zcy5jbGVhcigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG1zcyksIDApCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIyMgQ291bnRlcgpAQCAtODgyLDYgKzkzMiwyNyBAQAogICAgICAgICAgICAgICAgIHNldF9yZXN1bHQgPSBzZXRvcChzZXQocC5lbGVtZW50cygpKSwgc2V0KHEuZWxlbWVudHMoKSkpCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb3VudGVyX3Jlc3VsdCwgZGljdC5mcm9ta2V5cyhzZXRfcmVzdWx0LCAxKSkKIAorICAgIGRlZiB0ZXN0X2lucGxhY2Vfb3BlcmF0aW9ucyhzZWxmKToKKyAgICAgICAgZWxlbWVudHMgPSAnYWJjZCcKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMTAwMCk6CisgICAgICAgICAgICAjIHRlc3QgcmFuZG9tIHBhaXJzIG9mIG11bHRpc2V0cworICAgICAgICAgICAgcCA9IENvdW50ZXIoZGljdCgoZWxlbSwgcmFuZHJhbmdlKC0yLDQpKSBmb3IgZWxlbSBpbiBlbGVtZW50cykpCisgICAgICAgICAgICBwLnVwZGF0ZShlPTEsIGY9LTEsIGc9MCkKKyAgICAgICAgICAgIHEgPSBDb3VudGVyKGRpY3QoKGVsZW0sIHJhbmRyYW5nZSgtMiw0KSkgZm9yIGVsZW0gaW4gZWxlbWVudHMpKQorICAgICAgICAgICAgcS51cGRhdGUoaD0xLCBpPS0xLCBqPTApCisgICAgICAgICAgICBmb3IgaW5wbGFjZV9vcCwgcmVndWxhcl9vcCBpbiBbCisgICAgICAgICAgICAgICAgKENvdW50ZXIuX19pYWRkX18sIENvdW50ZXIuX19hZGRfXyksCisgICAgICAgICAgICAgICAgKENvdW50ZXIuX19pc3ViX18sIENvdW50ZXIuX19zdWJfXyksCisgICAgICAgICAgICAgICAgKENvdW50ZXIuX19pb3JfXywgQ291bnRlci5fX29yX18pLAorICAgICAgICAgICAgICAgIChDb3VudGVyLl9faWFuZF9fLCBDb3VudGVyLl9fYW5kX18pLAorICAgICAgICAgICAgXToKKyAgICAgICAgICAgICAgICBjID0gcC5jb3B5KCkKKyAgICAgICAgICAgICAgICBjX2lkID0gaWQoYykKKyAgICAgICAgICAgICAgICByZWd1bGFyX3Jlc3VsdCA9IHJlZ3VsYXJfb3AoYywgcSkKKyAgICAgICAgICAgICAgICBpbnBsYWNlX3Jlc3VsdCA9IGlucGxhY2Vfb3AoYywgcSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGlucGxhY2VfcmVzdWx0LCByZWd1bGFyX3Jlc3VsdCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGlkKGlucGxhY2VfcmVzdWx0KSwgY19pZCkKKwogICAgIGRlZiB0ZXN0X3N1YnRyYWN0KHNlbGYpOgogICAgICAgICBjID0gQ291bnRlcihhPS01LCBiPTAsIGM9NSwgZD0xMCwgZT0xNSxnPTQwKQogICAgICAgICBjLnN1YnRyYWN0KGE9MSwgYj0yLCBjPS0zLCBkPTEwLCBlPTIwLCBmPTMwLCBoPS01MCkKQEAgLTg5Myw2ICs5NjQsMTEgQEAKICAgICAgICAgYy5zdWJ0cmFjdCgnYWFhYWJiY2NlJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLCBDb3VudGVyKGE9LTEsIGI9MCwgYz0tMSwgZD0xLCBlPS0xKSkKIAorICAgIGRlZiB0ZXN0X3VuYXJ5KHNlbGYpOgorICAgICAgICBjID0gQ291bnRlcihhPS01LCBiPTAsIGM9NSwgZD0xMCwgZT0xNSxnPTQwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpY3QoK2MpLCBkaWN0KGM9NSwgZD0xMCwgZT0xNSwgZz00MCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGljdCgtYyksIGRpY3QoYT01KSkKKwogICAgIGRlZiB0ZXN0X3JlcHJfbm9uc29ydGFibGUoc2VsZik6CiAgICAgICAgIGMgPSBDb3VudGVyKGE9MiwgYj1Ob25lKQogICAgICAgICByID0gcmVwcihjKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb21waWxlLnB5IGIvTGliL3Rlc3QvdGVzdF9jb21waWxlLnB5CmluZGV4IDU4ZWYyOTcuLjcyMzQyZjggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29tcGlsZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvbXBpbGUucHkKQEAgLTEsMTAgKzEsMTcgQEAKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IHN5cwogaW1wb3J0IF9hc3QKK2ltcG9ydCB0eXBlcwogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiAKIGNsYXNzIFRlc3RTcGVjaWZpY3ModW5pdHRlc3QuVGVzdENhc2UpOgogCisgICAgZGVmIGNvbXBpbGVfc2luZ2xlKHNlbGYsIHNvdXJjZSk6CisgICAgICAgIGNvbXBpbGUoc291cmNlLCAiPHNpbmdsZT4iLCAic2luZ2xlIikKKworICAgIGRlZiBhc3NlcnRJbnZhbGlkU2luZ2xlKHNlbGYsIHNvdXJjZSk6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFN5bnRheEVycm9yLCBzZWxmLmNvbXBpbGVfc2luZ2xlLCBzb3VyY2UpCisKICAgICBkZWYgdGVzdF9ub19lbmRpbmdfbmV3bGluZShzZWxmKToKICAgICAgICAgY29tcGlsZSgiaGkiLCAiPHRlc3Q+IiwgImV4ZWMiKQogICAgICAgICBjb21waWxlKCJoaVxyIiwgIjx0ZXN0PiIsICJleGVjIikKQEAgLTQzMyw2ICs0NDAsMzkgQEAKICAgICAgICAgYXN0LmJvZHkgPSBbX2FzdC5Cb29sT3AoKV0KICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjb21waWxlLCBhc3QsICc8YXN0PicsICdleGVjJykKIAorICAgIEBzdXBwb3J0LmNweXRob25fb25seQorICAgIGRlZiB0ZXN0X3NhbWVfZmlsZW5hbWVfdXNlZChzZWxmKToKKyAgICAgICAgcyA9ICIiImRlZiBmKCk6IHBhc3NcbmRlZiBnKCk6IHBhc3MiIiIKKyAgICAgICAgYyA9IGNvbXBpbGUocywgIm15ZmlsZSIsICJleGVjIikKKyAgICAgICAgZm9yIG9iaiBpbiBjLmNvX2NvbnN0czoKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2Uob2JqLCB0eXBlcy5Db2RlVHlwZSk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhvYmouY29fZmlsZW5hbWUsIGMuY29fZmlsZW5hbWUpCisKKyAgICBkZWYgdGVzdF9zaW5nbGVfc3RhdGVtZW50KHNlbGYpOgorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCIxICsgMiIpCisgICAgICAgIHNlbGYuY29tcGlsZV9zaW5nbGUoIlxuMSArIDIiKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCIxICsgMlxuIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiMSArIDJcblxuIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiMSArIDJcdFx0XG4iKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCIxICsgMlx0XHRcbiAgICAgICAgIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiMSArIDIgIyBvbmUgcGx1cyB0d28iKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCIxOyAyIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiaW1wb3J0IHN5czsgc3lzIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiZGVmIGYoKTpcbiAgIHBhc3MiKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCJ3aGlsZSBGYWxzZTpcbiAgIHBhc3MiKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCJpZiB4OlxuICAgZih4KSIpCisgICAgICAgIHNlbGYuY29tcGlsZV9zaW5nbGUoImlmIHg6XG4gICBmKHgpXG5lbHNlOlxuICAgZyh4KSIpCisgICAgICAgIHNlbGYuY29tcGlsZV9zaW5nbGUoImNsYXNzIFQ6XG4gICBwYXNzIikKKworICAgIGRlZiB0ZXN0X2JhZF9zaW5nbGVfc3RhdGVtZW50KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEludmFsaWRTaW5nbGUoJzFcbjInKQorICAgICAgICBzZWxmLmFzc2VydEludmFsaWRTaW5nbGUoJ2RlZiBmKCk6IHBhc3MnKQorICAgICAgICBzZWxmLmFzc2VydEludmFsaWRTaW5nbGUoJ2EgPSAxM1xuYiA9IDE4NycpCisgICAgICAgIHNlbGYuYXNzZXJ0SW52YWxpZFNpbmdsZSgnZGVsIHhcbmRlbCB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRJbnZhbGlkU2luZ2xlKCdmKClcbmcoKScpCisgICAgICAgIHNlbGYuYXNzZXJ0SW52YWxpZFNpbmdsZSgnZigpXG4jIGJsYWhcbmJsYWgoKScpCisgICAgICAgIHNlbGYuYXNzZXJ0SW52YWxpZFNpbmdsZSgnZigpXG54eSAjIGJsYWhcbmJsYWgoKScpCisgICAgICAgIHNlbGYuYXNzZXJ0SW52YWxpZFNpbmdsZSgneCA9IDUgIyBjb21tZW50XG54ID0gNlxuJykKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KFRlc3RTcGVjaWZpY3MpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2NvbmN1cnJlbnRfZnV0dXJlcy5weSBiL0xpYi90ZXN0L3Rlc3RfY29uY3VycmVudF9mdXR1cmVzLnB5CmluZGV4IDM3MmRhMjcuLjA0ZWUyNDYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29uY3VycmVudF9mdXR1cmVzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfY29uY3VycmVudF9mdXR1cmVzLnB5CkBAIC0xOSw3ICsxOSw3IEBACiBmcm9tIGNvbmN1cnJlbnQgaW1wb3J0IGZ1dHVyZXMKIGZyb20gY29uY3VycmVudC5mdXR1cmVzLl9iYXNlIGltcG9ydCAoCiAgICAgUEVORElORywgUlVOTklORywgQ0FOQ0VMTEVELCBDQU5DRUxMRURfQU5EX05PVElGSUVELCBGSU5JU0hFRCwgRnV0dXJlKQotaW1wb3J0IGNvbmN1cnJlbnQuZnV0dXJlcy5wcm9jZXNzCitmcm9tIGNvbmN1cnJlbnQuZnV0dXJlcy5wcm9jZXNzIGltcG9ydCBCcm9rZW5Qcm9jZXNzUG9vbAogCiAKIGRlZiBjcmVhdGVfZnV0dXJlKHN0YXRlPVBFTkRJTkcsIGV4Y2VwdGlvbj1Ob25lLCByZXN1bHQ9Tm9uZSk6CkBAIC0zNCw3ICszNCw3IEBACiBSVU5OSU5HX0ZVVFVSRSA9IGNyZWF0ZV9mdXR1cmUoc3RhdGU9UlVOTklORykKIENBTkNFTExFRF9GVVRVUkUgPSBjcmVhdGVfZnV0dXJlKHN0YXRlPUNBTkNFTExFRCkKIENBTkNFTExFRF9BTkRfTk9USUZJRURfRlVUVVJFID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1DQU5DRUxMRURfQU5EX05PVElGSUVEKQotRVhDRVBUSU9OX0ZVVFVSRSA9IGNyZWF0ZV9mdXR1cmUoc3RhdGU9RklOSVNIRUQsIGV4Y2VwdGlvbj1JT0Vycm9yKCkpCitFWENFUFRJT05fRlVUVVJFID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1GSU5JU0hFRCwgZXhjZXB0aW9uPU9TRXJyb3IoKSkKIFNVQ0NFU1NGVUxfRlVUVVJFID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1GSU5JU0hFRCwgcmVzdWx0PTQyKQogCiAKQEAgLTE2MCw3ICsxNjAsNyBAQAogICAgICAgICBwcm9jZXNzZXMgPSBzZWxmLmV4ZWN1dG9yLl9wcm9jZXNzZXMKICAgICAgICAgc2VsZi5leGVjdXRvci5zaHV0ZG93bigpCiAKLSAgICAgICAgZm9yIHAgaW4gcHJvY2Vzc2VzOgorICAgICAgICBmb3IgcCBpbiBwcm9jZXNzZXMudmFsdWVzKCk6CiAgICAgICAgICAgICBwLmpvaW4oKQogCiAgICAgZGVmIHRlc3RfY29udGV4dF9tYW5hZ2VyX3NodXRkb3duKHNlbGYpOgpAQCAtMTY5LDcgKzE2OSw3IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoZS5tYXAoYWJzLCByYW5nZSgtNSwgNSkpKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWzUsIDQsIDMsIDIsIDEsIDAsIDEsIDIsIDMsIDRdKQogCi0gICAgICAgIGZvciBwIGluIHByb2Nlc3NlczoKKyAgICAgICAgZm9yIHAgaW4gcHJvY2Vzc2VzLnZhbHVlcygpOgogICAgICAgICAgICAgcC5qb2luKCkKIAogICAgIGRlZiB0ZXN0X2RlbF9zaHV0ZG93bihzZWxmKToKQEAgLTE4MCw3ICsxODAsNyBAQAogICAgICAgICBkZWwgZXhlY3V0b3IKIAogICAgICAgICBxdWV1ZV9tYW5hZ2VtZW50X3RocmVhZC5qb2luKCkKLSAgICAgICAgZm9yIHAgaW4gcHJvY2Vzc2VzOgorICAgICAgICBmb3IgcCBpbiBwcm9jZXNzZXMudmFsdWVzKCk6CiAgICAgICAgICAgICBwLmpvaW4oKQogCiBjbGFzcyBXYWl0VGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtMjY2LDE0ICsyNjYsMTQgQEAKIAogICAgIGRlZiB0ZXN0X3RpbWVvdXQoc2VsZik6CiAgICAgICAgIGZ1dHVyZTEgPSBzZWxmLmV4ZWN1dG9yLnN1Ym1pdChtdWwsIDYsIDcpCi0gICAgICAgIGZ1dHVyZTIgPSBzZWxmLmV4ZWN1dG9yLnN1Ym1pdCh0aW1lLnNsZWVwLCAzKQorICAgICAgICBmdXR1cmUyID0gc2VsZi5leGVjdXRvci5zdWJtaXQodGltZS5zbGVlcCwgNikKIAogICAgICAgICBmaW5pc2hlZCwgcGVuZGluZyA9IGZ1dHVyZXMud2FpdCgKICAgICAgICAgICAgICAgICBbQ0FOQ0VMTEVEX0FORF9OT1RJRklFRF9GVVRVUkUsCiAgICAgICAgICAgICAgICAgIEVYQ0VQVElPTl9GVVRVUkUsCiAgICAgICAgICAgICAgICAgIFNVQ0NFU1NGVUxfRlVUVVJFLAogICAgICAgICAgICAgICAgICBmdXR1cmUxLCBmdXR1cmUyXSwKLSAgICAgICAgICAgICAgICB0aW1lb3V0PTEuNSwKKyAgICAgICAgICAgICAgICB0aW1lb3V0PTUsCiAgICAgICAgICAgICAgICAgcmV0dXJuX3doZW49ZnV0dXJlcy5BTExfQ09NUExFVEVEKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2V0KFtDQU5DRUxMRURfQU5EX05PVElGSUVEX0ZVVFVSRSwKQEAgLTM2Myw4ICszNjMsOCBAQAogICAgICAgICByZXN1bHRzID0gW10KICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZm9yIGkgaW4gc2VsZi5leGVjdXRvci5tYXAodGltZS5zbGVlcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFswLCAwLCAzXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9MS41KToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFswLCAwLCA2XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9NSk6CiAgICAgICAgICAgICAgICAgcmVzdWx0cy5hcHBlbmQoaSkKICAgICAgICAgZXhjZXB0IGZ1dHVyZXMuVGltZW91dEVycm9yOgogICAgICAgICAgICAgcGFzcwpAQCAtMzczLDEzICszNzMsMzggQEAKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFtOb25lLCBOb25lXSwgcmVzdWx0cykKIAorICAgIGRlZiB0ZXN0X3NodXRkb3duX3JhY2VfaXNzdWUxMjQ1NihzZWxmKToKKyAgICAgICAgIyBJc3N1ZSAjMTI0NTY6IHJhY2UgY29uZGl0aW9uIGF0IHNodXRkb3duIHdoZXJlIHRyeWluZyB0byBwb3N0IGEKKyAgICAgICAgIyBzZW50aW5lbCBpbiB0aGUgY2FsbCBxdWV1ZSBibG9ja3MgKHRoZSBxdWV1ZSBpcyBmdWxsIHdoaWxlIHByb2Nlc3NlcworICAgICAgICAjIGhhdmUgZXhpdGVkKS4KKyAgICAgICAgc2VsZi5leGVjdXRvci5tYXAoc3RyLCBbMl0gKiAoc2VsZi53b3JrZXJfY291bnQgKyAxKSkKKyAgICAgICAgc2VsZi5leGVjdXRvci5zaHV0ZG93bigpCisKIAogY2xhc3MgVGhyZWFkUG9vbEV4ZWN1dG9yVGVzdChUaHJlYWRQb29sTWl4aW4sIEV4ZWN1dG9yVGVzdCk6Ci0gICAgcGFzcworICAgIGRlZiB0ZXN0X21hcF9zdWJtaXRzX3dpdGhvdXRfaXRlcmF0aW9uKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyB2ZXJpZnlpbmcgaXNzdWUgMTE3NzcuIiIiCisgICAgICAgIGZpbmlzaGVkID0gW10KKyAgICAgICAgZGVmIHJlY29yZF9maW5pc2hlZChuKToKKyAgICAgICAgICAgIGZpbmlzaGVkLmFwcGVuZChuKQorCisgICAgICAgIHNlbGYuZXhlY3V0b3IubWFwKHJlY29yZF9maW5pc2hlZCwgcmFuZ2UoMTApKQorICAgICAgICBzZWxmLmV4ZWN1dG9yLnNodXRkb3duKHdhaXQ9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRDb3VudEVxdWFsKGZpbmlzaGVkLCByYW5nZSgxMCkpCiAKIAogY2xhc3MgUHJvY2Vzc1Bvb2xFeGVjdXRvclRlc3QoUHJvY2Vzc1Bvb2xNaXhpbiwgRXhlY3V0b3JUZXN0KToKLSAgICBwYXNzCisgICAgZGVmIHRlc3Rfa2lsbGVkX2NoaWxkKHNlbGYpOgorICAgICAgICAjIFdoZW4gYSBjaGlsZCBwcm9jZXNzIGlzIGFicnVwdGx5IHRlcm1pbmF0ZWQsIHRoZSB3aG9sZSBwb29sIGdldHMKKyAgICAgICAgIyAiYnJva2VuIi4KKyAgICAgICAgZnV0dXJlcyA9IFtzZWxmLmV4ZWN1dG9yLnN1Ym1pdCh0aW1lLnNsZWVwLCAzKV0KKyAgICAgICAgIyBHZXQgb25lIG9mIHRoZSBwcm9jZXNzZXMsIGFuZCB0ZXJtaW5hdGUgKGtpbGwpIGl0CisgICAgICAgIHAgPSBuZXh0KGl0ZXIoc2VsZi5leGVjdXRvci5fcHJvY2Vzc2VzLnZhbHVlcygpKSkKKyAgICAgICAgcC50ZXJtaW5hdGUoKQorICAgICAgICBmb3IgZnV0IGluIGZ1dHVyZXM6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCcm9rZW5Qcm9jZXNzUG9vbCwgZnV0LnJlc3VsdCkKKyAgICAgICAgIyBTdWJtaXR0aW5nIG90aGVyIGpvYnMgZmFpbHMgYXMgd2VsbC4KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnJva2VuUHJvY2Vzc1Bvb2wsIHNlbGYuZXhlY3V0b3Iuc3VibWl0LCBwb3csIDIsIDgpCiAKIAogY2xhc3MgRnV0dXJlVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtNDgyLDcgKzUwNyw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxGdXR1cmUgYXQgMHhbMC05YS1mXSsgc3RhdGU9Y2FuY2VsbGVkPicpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgoCiAgICAgICAgICAgICAgICAgcmVwcihFWENFUFRJT05fRlVUVVJFKSwKLSAgICAgICAgICAgICAgICAnPEZ1dHVyZSBhdCAweFswLTlhLWZdKyBzdGF0ZT1maW5pc2hlZCByYWlzZWQgSU9FcnJvcj4nKQorICAgICAgICAgICAgICAgICc8RnV0dXJlIGF0IDB4WzAtOWEtZl0rIHN0YXRlPWZpbmlzaGVkIHJhaXNlZCBPU0Vycm9yPicpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgoCiAgICAgICAgICAgICAgICAgcmVwcihTVUNDRVNTRlVMX0ZVVFVSRSksCiAgICAgICAgICAgICAgICAgJzxGdXR1cmUgYXQgMHhbMC05YS1mXSsgc3RhdGU9ZmluaXNoZWQgcmV0dXJuZWQgaW50PicpCkBAIC00OTMsNyArNTE4LDcgQEAKICAgICAgICAgZjIgPSBjcmVhdGVfZnV0dXJlKHN0YXRlPVJVTk5JTkcpCiAgICAgICAgIGYzID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1DQU5DRUxMRUQpCiAgICAgICAgIGY0ID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1DQU5DRUxMRURfQU5EX05PVElGSUVEKQotICAgICAgICBmNSA9IGNyZWF0ZV9mdXR1cmUoc3RhdGU9RklOSVNIRUQsIGV4Y2VwdGlvbj1JT0Vycm9yKCkpCisgICAgICAgIGY1ID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1GSU5JU0hFRCwgZXhjZXB0aW9uPU9TRXJyb3IoKSkKICAgICAgICAgZjYgPSBjcmVhdGVfZnV0dXJlKHN0YXRlPUZJTklTSEVELCByZXN1bHQ9NSkKIAogICAgICAgICBzZWxmLmFzc2VydFRydWUoZjEuY2FuY2VsKCkpCkBAIC01NDcsNyArNTcyLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgQ0FOQ0VMTEVEX0ZVVFVSRS5yZXN1bHQsIHRpbWVvdXQ9MCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoZnV0dXJlcy5DYW5jZWxsZWRFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgQ0FOQ0VMTEVEX0FORF9OT1RJRklFRF9GVVRVUkUucmVzdWx0LCB0aW1lb3V0PTApCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKElPRXJyb3IsIEVYQ0VQVElPTl9GVVRVUkUucmVzdWx0LCB0aW1lb3V0PTApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIEVYQ0VQVElPTl9GVVRVUkUucmVzdWx0LCB0aW1lb3V0PTApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoU1VDQ0VTU0ZVTF9GVVRVUkUucmVzdWx0KHRpbWVvdXQ9MCksIDQyKQogCiAgICAgZGVmIHRlc3RfcmVzdWx0X3dpdGhfc3VjY2VzcyhzZWxmKToKQEAgLTU4Niw3ICs2MTEsNyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhmdXR1cmVzLkNhbmNlbGxlZEVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICBDQU5DRUxMRURfQU5EX05PVElGSUVEX0ZVVFVSRS5leGNlcHRpb24sIHRpbWVvdXQ9MCkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2UoRVhDRVBUSU9OX0ZVVFVSRS5leGNlcHRpb24odGltZW91dD0wKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU9FcnJvcikpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9TRXJyb3IpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFNVQ0NFU1NGVUxfRlVUVVJFLmV4Y2VwdGlvbih0aW1lb3V0PTApLCBOb25lKQogCiAgICAgZGVmIHRlc3RfZXhjZXB0aW9uX3dpdGhfc3VjY2VzcyhzZWxmKToKQEAgLTU5NSwxNCArNjIwLDE0IEBACiAgICAgICAgICAgICB0aW1lLnNsZWVwKDEpCiAgICAgICAgICAgICB3aXRoIGYxLl9jb25kaXRpb246CiAgICAgICAgICAgICAgICAgZjEuX3N0YXRlID0gRklOSVNIRUQKLSAgICAgICAgICAgICAgICBmMS5fZXhjZXB0aW9uID0gSU9FcnJvcigpCisgICAgICAgICAgICAgICAgZjEuX2V4Y2VwdGlvbiA9IE9TRXJyb3IoKQogICAgICAgICAgICAgICAgIGYxLl9jb25kaXRpb24ubm90aWZ5X2FsbCgpCiAKICAgICAgICAgZjEgPSBjcmVhdGVfZnV0dXJlKHN0YXRlPVBFTkRJTkcpCiAgICAgICAgIHQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1ub3RpZmljYXRpb24pCiAgICAgICAgIHQuc3RhcnQoKQogCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2luc3RhbmNlKGYxLmV4Y2VwdGlvbih0aW1lb3V0PTUpLCBJT0Vycm9yKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2UoZjEuZXhjZXB0aW9uKHRpbWVvdXQ9NSksIE9TRXJyb3IpKQogCiBAdGVzdC5zdXBwb3J0LnJlYXBfdGhyZWFkcwogZGVmIHRlc3RfbWFpbigpOgpAQCAtNjE1LDcgKzY0MCw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkUG9vbEFzQ29tcGxldGVkVGVzdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRnV0dXJlVGVzdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvY2Vzc1Bvb2xTaHV0ZG93blRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkUG9vbFNodXRkb3duVGVzdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaHJlYWRQb29sU2h1dGRvd25UZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICBmaW5hbGx5OgogICAgICAgICB0ZXN0LnN1cHBvcnQucmVhcF9jaGlsZHJlbigpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY2ZncGFyc2VyLnB5IGIvTGliL3Rlc3QvdGVzdF9jb25maWdwYXJzZXIucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi90ZXN0L3Rlc3RfY2ZncGFyc2VyLnB5CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2NvbmZpZ3BhcnNlci5weQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb3B5LnB5IGIvTGliL3Rlc3QvdGVzdF9jb3B5LnB5CmluZGV4IGE4NGMxMDkuLmM0YmFhZTQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29weS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvcHkucHkKQEAgLTE3LDcgKzE3LDcgQEAKICAgICAjIEF0dGVtcHQgZnVsbCBsaW5lIGNvdmVyYWdlIG9mIGNvcHkucHkgZnJvbSB0b3AgdG8gYm90dG9tCiAKICAgICBkZWYgdGVzdF9leGNlcHRpb25zKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFRydWUoY29weS5FcnJvciBpcyBjb3B5LmVycm9yKQorICAgICAgICBzZWxmLmFzc2VydElzKGNvcHkuRXJyb3IsIGNvcHkuZXJyb3IpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc3N1YmNsYXNzKGNvcHkuRXJyb3IsIEV4Y2VwdGlvbikpCiAKICAgICAjIFRoZSBjb3B5KCkgbWV0aG9kCkBAIC01NCwyMCArNTQsMjYgQEAKICAgICBkZWYgdGVzdF9jb3B5X3JlZHVjZV9leChzZWxmKToKICAgICAgICAgY2xhc3MgQyhvYmplY3QpOgogICAgICAgICAgICAgZGVmIF9fcmVkdWNlX2V4X18oc2VsZiwgcHJvdG8pOgorICAgICAgICAgICAgICAgIGMuYXBwZW5kKDEpCiAgICAgICAgICAgICAgICAgcmV0dXJuICIiCiAgICAgICAgICAgICBkZWYgX19yZWR1Y2VfXyhzZWxmKToKLSAgICAgICAgICAgICAgICByYWlzZSBzdXBwb3J0LlRlc3RGYWlsZWQoInNob3VsZG4ndCBjYWxsIHRoaXMiKQorICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgic2hvdWxkbid0IGNhbGwgdGhpcyIpCisgICAgICAgIGMgPSBbXQogICAgICAgICB4ID0gQygpCiAgICAgICAgIHkgPSBjb3B5LmNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5LCB4KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGMsIFsxXSkKIAogICAgIGRlZiB0ZXN0X2NvcHlfcmVkdWNlKHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CiAgICAgICAgICAgICBkZWYgX19yZWR1Y2VfXyhzZWxmKToKKyAgICAgICAgICAgICAgICBjLmFwcGVuZCgxKQogICAgICAgICAgICAgICAgIHJldHVybiAiIgorICAgICAgICBjID0gW10KICAgICAgICAgeCA9IEMoKQogICAgICAgICB5ID0gY29weS5jb3B5KHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLCBbMV0pCiAKICAgICBkZWYgdGVzdF9jb3B5X2NhbnQoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKQEAgLTkxLDcgKzk3LDcgQEAKICAgICAgICAgICAgICAgICAgImhlbGxvIiwgImhlbGxvXHUxMjM0IiwgZi5fX2NvZGVfXywKICAgICAgICAgICAgICAgICAgTmV3U3R5bGUsIHJhbmdlKDEwKSwgQ2xhc3NpYywgbWF4XQogICAgICAgICBmb3IgeCBpbiB0ZXN0czoKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjb3B5LmNvcHkoeCkgaXMgeCwgcmVwcih4KSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoY29weS5jb3B5KHgpLCB4KQogCiAgICAgZGVmIHRlc3RfY29weV9saXN0KHNlbGYpOgogICAgICAgICB4ID0gWzEsIDIsIDNdCkBAIC0xODUsOSArMTkxLDkgQEAKICAgICAgICAgeCA9IFt4LCB4XQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeVswXSBpcyBub3QgeFswXSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHlbMF0gaXMgeVsxXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh5LCB4KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHlbMF0sIHhbMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeVswXSwgeVsxXSkKIAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X2lzc3ViY2xhc3Moc2VsZik6CiAgICAgICAgICMgWFhYIE5vdGU6IHRoZXJlJ3Mgbm8gd2F5IHRvIHRlc3QgdGhlIFR5cGVFcnJvciBjb21pbmcgb3V0IG9mCkBAIC0yMjcsMjAgKzIzMywyNiBAQAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X3JlZHVjZV9leChzZWxmKToKICAgICAgICAgY2xhc3MgQyhvYmplY3QpOgogICAgICAgICAgICAgZGVmIF9fcmVkdWNlX2V4X18oc2VsZiwgcHJvdG8pOgorICAgICAgICAgICAgICAgIGMuYXBwZW5kKDEpCiAgICAgICAgICAgICAgICAgcmV0dXJuICIiCiAgICAgICAgICAgICBkZWYgX19yZWR1Y2VfXyhzZWxmKToKLSAgICAgICAgICAgICAgICByYWlzZSBzdXBwb3J0LlRlc3RGYWlsZWQoInNob3VsZG4ndCBjYWxsIHRoaXMiKQorICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgic2hvdWxkbid0IGNhbGwgdGhpcyIpCisgICAgICAgIGMgPSBbXQogICAgICAgICB4ID0gQygpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLCBbMV0pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9yZWR1Y2Uoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKICAgICAgICAgICAgIGRlZiBfX3JlZHVjZV9fKHNlbGYpOgorICAgICAgICAgICAgICAgIGMuYXBwZW5kKDEpCiAgICAgICAgICAgICAgICAgcmV0dXJuICIiCisgICAgICAgIGMgPSBbXQogICAgICAgICB4ID0gQygpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLCBbMV0pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9jYW50KHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CkBAIC0yNjQsMTQgKzI3NiwxNCBAQAogICAgICAgICAgICAgICAgICAiaGVsbG8iLCAiaGVsbG9cdTEyMzQiLCBmLl9fY29kZV9fLAogICAgICAgICAgICAgICAgICBOZXdTdHlsZSwgcmFuZ2UoMTApLCBDbGFzc2ljLCBtYXhdCiAgICAgICAgIGZvciB4IGluIHRlc3RzOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNvcHkuZGVlcGNvcHkoeCkgaXMgeCwgcmVwcih4KSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoY29weS5kZWVwY29weSh4KSwgeCkKIAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X2xpc3Qoc2VsZik6CiAgICAgICAgIHggPSBbWzEsIDJdLCAzXQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4IGlzIG5vdCB5KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeFswXSBpcyBub3QgeVswXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHhbMF0sIHlbMF0pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9yZWZsZXhpdmVfbGlzdChzZWxmKToKICAgICAgICAgeCA9IFtdCkBAIC0yNzksMTYgKzI5MSwyNiBAQAogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBmb3Igb3AgaW4gY29tcGFyaXNvbnM6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIG9wLCB5LCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyBub3QgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHlbMF0gaXMgeSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh5LCB4KQorICAgICAgICBzZWxmLmFzc2VydElzKHlbMF0sIHkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHkpLCAxKQogCisgICAgZGVmIHRlc3RfZGVlcGNvcHlfZW1wdHlfdHVwbGUoc2VsZik6CisgICAgICAgIHggPSAoKQorICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQorICAgICAgICBzZWxmLmFzc2VydElzKHgsIHkpCisKICAgICBkZWYgdGVzdF9kZWVwY29weV90dXBsZShzZWxmKToKICAgICAgICAgeCA9IChbMSwgMl0sIDMpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeSwgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHggaXMgbm90IHkpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4WzBdIGlzIG5vdCB5WzBdKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHgsIHkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeFswXSwgeVswXSkKKworICAgIGRlZiB0ZXN0X2RlZXBjb3B5X3R1cGxlX29mX2ltbXV0YWJsZXMoc2VsZik6CisgICAgICAgIHggPSAoKDEsIDIpLCAzKQorICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQorICAgICAgICBzZWxmLmFzc2VydElzKHgsIHkpCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9yZWZsZXhpdmVfdHVwbGUoc2VsZik6CiAgICAgICAgIHggPSAoW10sKQpAQCAtMjk2LDE2ICszMTgsMTYgQEAKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKICAgICAgICAgZm9yIG9wIGluIGNvbXBhcmlzb25zOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBvcCwgeSwgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgbm90IHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5WzBdIGlzIG5vdCB4WzBdKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeVswXVswXSBpcyB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeVswXSwgeFswXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5WzBdWzBdLCB5KQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfZGljdChzZWxmKToKICAgICAgICAgeCA9IHsiZm9vIjogWzEsIDJdLCAiYmFyIjogM30KICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh5LCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHhbImZvbyJdIGlzIG5vdCB5WyJmb28iXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHhbImZvbyJdLCB5WyJmb28iXSkKIAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X3JlZmxleGl2ZV9kaWN0KHNlbGYpOgogICAgICAgICB4ID0ge30KQEAgLTMxNSwxNSArMzM3LDMwIEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG9wLCB5LCB4KQogICAgICAgICBmb3Igb3AgaW4gZXF1YWxpdHlfY29tcGFyaXNvbnM6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIG9wLCB5LCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyBub3QgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHlbJ2ZvbyddIGlzIHkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5Wydmb28nXSwgeSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oeSksIDEpCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9rZWVwYWxpdmUoc2VsZik6CiAgICAgICAgIG1lbW8gPSB7fQotICAgICAgICB4ID0gNDIKKyAgICAgICAgeCA9IFtdCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgsIG1lbW8pCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtZW1vW2lkKHgpXSBpcyB4KQorICAgICAgICBzZWxmLmFzc2VydElzKG1lbW9baWQobWVtbyldWzBdLCB4KQorCisgICAgZGVmIHRlc3RfZGVlcGNvcHlfZG9udF9tZW1vX2ltbXV0YWJsZShzZWxmKToKKyAgICAgICAgbWVtbyA9IHt9CisgICAgICAgIHggPSBbMSwgMiwgMywgNF0KKyAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCwgbWVtbykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh5LCB4KQorICAgICAgICAjIFRoZXJlJ3MgdGhlIGVudHJ5IGZvciB0aGUgbmV3IGxpc3QsIGFuZCB0aGUga2VlcCBhbGl2ZS4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obWVtbyksIDIpCisKKyAgICAgICAgbWVtbyA9IHt9CisgICAgICAgIHggPSBbKDEsIDIpXQorICAgICAgICB5ID0gY29weS5kZWVwY29weSh4LCBtZW1vKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCisgICAgICAgICMgVHVwbGVzIHdpdGggaW1tdXRhYmxlIGNvbnRlbnRzIGFyZSBpbW11dGFibGUgZm9yIGRlZXBjb3B5LgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtZW1vKSwgMikKIAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X2luc3RfdmFuaWxsYShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTMzNCw3ICszNzEsNyBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5LmZvbyBpcyBub3QgeC5mb28pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9kZWVwY29weShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTM0Nyw4ICszODQsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9nZXRpbml0YXJncyhzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTM2MSw4ICszOTgsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9nZXRzdGF0ZShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTM3NSw4ICs0MTIsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9zZXRzdGF0ZShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTM4OSw4ICs0MjYsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9nZXRzdGF0ZV9zZXRzdGF0ZShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTQwNSw4ICs0NDIsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfcmVmbGV4aXZlX2luc3Qoc2VsZik6CiAgICAgICAgIGNsYXNzIEM6CkBAIC00MTQsOCArNDUxLDggQEAKICAgICAgICAgeCA9IEMoKQogICAgICAgICB4LmZvbyA9IHgKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgbm90IHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5LmZvbyBpcyB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeS5mb28sIHkpCiAKICAgICAjIF9yZWNvbnN0cnVjdCgpCiAKQEAgLTQyNSw5ICs0NjIsOSBAQAogICAgICAgICAgICAgICAgIHJldHVybiAiIgogICAgICAgICB4ID0gQygpCiAgICAgICAgIHkgPSBjb3B5LmNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5LCB4KQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyB4KQorICAgICAgICBzZWxmLmFzc2VydElzKHksIHgpCiAKICAgICBkZWYgdGVzdF9yZWNvbnN0cnVjdF9ub3N0YXRlKHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CkBAIC00MzYsOSArNDczLDkgQEAKICAgICAgICAgeCA9IEMoKQogICAgICAgICB4LmZvbyA9IDQyCiAgICAgICAgIHkgPSBjb3B5LmNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkuX19jbGFzc19fIGlzIHguX19jbGFzc19fKQorICAgICAgICBzZWxmLmFzc2VydElzKHkuX19jbGFzc19fLCB4Ll9fY2xhc3NfXykKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkuX19jbGFzc19fIGlzIHguX19jbGFzc19fKQorICAgICAgICBzZWxmLmFzc2VydElzKHkuX19jbGFzc19fLCB4Ll9fY2xhc3NfXykKIAogICAgIGRlZiB0ZXN0X3JlY29uc3RydWN0X3N0YXRlKHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CkBAIC00NTIsNyArNDg5LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh5LCB4KQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5LmZvbyBpcyBub3QgeC5mb28pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfcmVjb25zdHJ1Y3Rfc3RhdGVfc2V0c3RhdGUoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKQEAgLTQ2OCw3ICs1MDUsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeSwgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkuZm9vIGlzIG5vdCB4LmZvbykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh5LmZvbywgeC5mb28pCiAKICAgICBkZWYgdGVzdF9yZWNvbnN0cnVjdF9yZWZsZXhpdmUoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKQEAgLTQ3Niw4ICs1MTMsOCBAQAogICAgICAgICB4ID0gQygpCiAgICAgICAgIHguZm9vID0geAogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyBub3QgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkuZm9vIGlzIHkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5LmZvbywgeSkKIAogICAgICMgQWRkaXRpb25zIGZvciBQeXRob24gMi4zIGFuZCBwaWNrbGUgcHJvdG9jb2wgMgogCkBAIC00OTEsMTIgKzUyOCwxMiBAQAogICAgICAgICB4ID0gQyhbWzEsIDJdLCAzXSkKICAgICAgICAgeSA9IGNvcHkuY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHgsIHkpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4IGlzIG5vdCB5KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeFswXSBpcyB5WzBdKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHgsIHkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeFswXSwgeVswXSkKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LCB5KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHhbMF0gaXMgbm90IHlbMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeCwgeSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4WzBdLCB5WzBdKQogCiAgICAgZGVmIHRlc3RfcmVkdWNlXzV0dXBsZShzZWxmKToKICAgICAgICAgY2xhc3MgQyhkaWN0KToKQEAgLTUwOCwxMiArNTQ1LDEyIEBACiAgICAgICAgIHggPSBDKFsoImZvbyIsIFsxLCAyXSksICgiYmFyIiwgMyldKQogICAgICAgICB5ID0gY29weS5jb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHggaXMgbm90IHkpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4WyJmb28iXSBpcyB5WyJmb28iXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQorICAgICAgICBzZWxmLmFzc2VydElzKHhbImZvbyJdLCB5WyJmb28iXSkKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LCB5KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHhbImZvbyJdIGlzIG5vdCB5WyJmb28iXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHhbImZvbyJdLCB5WyJmb28iXSkKIAogICAgIGRlZiB0ZXN0X2NvcHlfc2xvdHMoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKQEAgLTUyMSw3ICs1NTgsNyBAQAogICAgICAgICB4ID0gQygpCiAgICAgICAgIHguZm9vID0gWzQyXQogICAgICAgICB5ID0gY29weS5jb3B5KHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4LmZvbyBpcyB5LmZvbykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh4LmZvbywgeS5mb28pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9zbG90cyhzZWxmKToKICAgICAgICAgY2xhc3MgQyhvYmplY3QpOgpAQCAtNTMwLDcgKzU2Nyw3IEBACiAgICAgICAgIHguZm9vID0gWzQyXQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHguZm9vLCB5LmZvbykKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHguZm9vIGlzIG5vdCB5LmZvbykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LmZvbywgeS5mb28pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9kaWN0X3N1YmNsYXNzKHNlbGYpOgogICAgICAgICBjbGFzcyBDKGRpY3QpOgpAQCAtNTQ3LDcgKzU4NCw3IEBACiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgeSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4Ll9rZXlzLCB5Ll9rZXlzKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQogICAgICAgICB4WydiYXInXSA9IDEKICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh4LCB5KQogICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHguX2tleXMsIHkuX2tleXMpCkBAIC01NjAsOCArNTk3LDggQEAKICAgICAgICAgeSA9IGNvcHkuY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoeCksIGxpc3QoeSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeC5mb28sIHkuZm9vKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeFswXSBpcyB5WzBdKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeC5mb28gaXMgeS5mb28pCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeFswXSwgeVswXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh4LmZvbywgeS5mb28pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9saXN0X3N1YmNsYXNzKHNlbGYpOgogICAgICAgICBjbGFzcyBDKGxpc3QpOgpAQCAtNTcxLDggKzYwOCw4IEBACiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGlzdCh4KSwgbGlzdCh5KSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LmZvbywgeS5mb28pCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4WzBdIGlzIG5vdCB5WzBdKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeC5mb28gaXMgbm90IHkuZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHhbMF0sIHlbMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeC5mb28sIHkuZm9vKQogCiAgICAgZGVmIHRlc3RfY29weV90dXBsZV9zdWJjbGFzcyhzZWxmKToKICAgICAgICAgY2xhc3MgQyh0dXBsZSk6CkBAIC01ODksOCArNjI2LDggQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0dXBsZSh4KSwgKFsxLCAyXSwgMykpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHVwbGUoeSksIChbMSwgMl0sIDMpKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHhbMF0gaXMgbm90IHlbMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeCwgeSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4WzBdLCB5WzBdKQogCiAgICAgZGVmIHRlc3RfZ2V0c3RhdGVfZXhjKHNlbGYpOgogICAgICAgICBjbGFzcyBFdmlsU3RhdGUob2JqZWN0KToKQEAgLTYxOCwxMCArNjU1LDEwIEBACiAgICAgICAgIG9iaiA9IEMoKQogICAgICAgICB4ID0gd2Vha3JlZi5yZWYob2JqKQogICAgICAgICB5ID0gX2NvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5LCB4KQogICAgICAgICBkZWwgb2JqCiAgICAgICAgIHkgPSBfY29weSh4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyB4KQorICAgICAgICBzZWxmLmFzc2VydElzKHksIHgpCiAKICAgICBkZWYgdGVzdF9jb3B5X3dlYWtyZWYoc2VsZik6CiAgICAgICAgIHNlbGYuX2NoZWNrX3dlYWtyZWYoY29weS5jb3B5KQpAQCAtNjM3LDcgKzY3NCw3IEBACiAgICAgICAgIHVbYV0gPSBiCiAgICAgICAgIHVbY10gPSBkCiAgICAgICAgIHYgPSBjb3B5LmNvcHkodSkKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh2IGlzIHUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QodiwgdSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCB1KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHZbYV0sIGIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodltjXSwgZCkKQEAgLTY2Nyw4ICs3MDQsOCBAQAogICAgICAgICB2ID0gY29weS5kZWVwY29weSh1KQogICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIHUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHYpLCAyKQotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHZbYV0gaXMgYikKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh2W2NdIGlzIGQpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QodlthXSwgYikKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh2W2NdLCBkKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHZbYV0uaSwgYi5pKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHZbY10uaSwgZC5pKQogICAgICAgICBkZWwgYwpAQCAtNjg3LDEyICs3MjQsMTIgQEAKICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCB1KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbih2KSwgMikKICAgICAgICAgKHgsIHkpLCAoeiwgdCkgPSBzb3J0ZWQodi5pdGVtcygpLCBrZXk9bGFtYmRhIHBhaXI6IHBhaXJbMF0uaSkKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh4IGlzIGEpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeCwgYSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LmksIGEuaSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgYikKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh6IGlzIGMpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeSwgYikKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh6LCBjKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHouaSwgYy5pKQotICAgICAgICBzZWxmLmFzc2VydFRydWUodCBpcyBkKQorICAgICAgICBzZWxmLmFzc2VydElzKHQsIGQpCiAgICAgICAgIGRlbCB4LCB5LCB6LCB0CiAgICAgICAgIGRlbCBkCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHYpLCAxKQpAQCAtNzA1LDcgKzc0Miw3IEBACiAgICAgICAgIGYuYiA9IGYubQogICAgICAgICBnID0gY29weS5kZWVwY29weShmKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGcubSwgZy5iKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoZy5iLl9fc2VsZl9fIGlzIGcpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZy5iLl9fc2VsZl9fLCBnKQogICAgICAgICBnLmIoKQogCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY3Byb2ZpbGUucHkgYi9MaWIvdGVzdC90ZXN0X2Nwcm9maWxlLnB5CmluZGV4IGFlMTdjMmIuLjU2NzY2NjggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY3Byb2ZpbGUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jcHJvZmlsZS5weQpAQCAtMTgsMTYgKzE4LDE5IEBACiAgICAgZGVmIHRlc3RfYmFkX2NvdW50ZXJfZHVyaW5nX2RlYWxsb2Moc2VsZik6CiAgICAgICAgIGltcG9ydCBfbHNwcm9mCiAgICAgICAgICMgTXVzdCB1c2UgYSBmaWxlIGFzIFN0cmluZ0lPIGRvZXNuJ3QgdHJpZ2dlciB0aGUgYnVnLgotICAgICAgICB3aXRoIG9wZW4oVEVTVEZOLCAndycpIGFzIGZpbGU6Ci0gICAgICAgICAgICBzeXMuc3RkZXJyID0gZmlsZQotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIG9iaiA9IF9sc3Byb2YuUHJvZmlsZXIobGFtYmRhOiBpbnQpCi0gICAgICAgICAgICAgICAgb2JqLmVuYWJsZSgpCi0gICAgICAgICAgICAgICAgb2JqID0gX2xzcHJvZi5Qcm9maWxlcigxKQotICAgICAgICAgICAgICAgIG9iai5kaXNhYmxlKCkKLSAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgc3lzLnN0ZGVyciA9IHN5cy5fX3N0ZGVycl9fCi0gICAgICAgIHVubGluayhURVNURk4pCisgICAgICAgIG9yaWdfc3RkZXJyID0gc3lzLnN0ZGVycgorICAgICAgICB0cnk6CisgICAgICAgICAgICB3aXRoIG9wZW4oVEVTVEZOLCAndycpIGFzIGZpbGU6CisgICAgICAgICAgICAgICAgc3lzLnN0ZGVyciA9IGZpbGUKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIG9iaiA9IF9sc3Byb2YuUHJvZmlsZXIobGFtYmRhOiBpbnQpCisgICAgICAgICAgICAgICAgICAgIG9iai5lbmFibGUoKQorICAgICAgICAgICAgICAgICAgICBvYmogPSBfbHNwcm9mLlByb2ZpbGVyKDEpCisgICAgICAgICAgICAgICAgICAgIG9iai5kaXNhYmxlKCkKKyAgICAgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgICAgICBzeXMuc3RkZXJyID0gb3JpZ19zdGRlcnIKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHVubGluayhURVNURk4pCiAKIAogZGVmIHRlc3RfbWFpbigpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jcmFzaGVycy5weSBiL0xpYi90ZXN0L3Rlc3RfY3Jhc2hlcnMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzM2Y2NiZQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L3Rlc3RfY3Jhc2hlcnMucHkKQEAgLTAsMCArMSwzOCBAQAorIyBUZXN0cyB0aGF0IHRoZSBjcmFzaGVycyBpbiB0aGUgTGliL3Rlc3QvY3Jhc2hlcnMgZGlyZWN0b3J5IGFjdHVhbGx5CisjIGRvIGNyYXNoIHRoZSBpbnRlcnByZXRlciBhcyBleHBlY3RlZAorIworIyBJZiBhIGNyYXNoZXIgaXMgZml4ZWQsIGl0IHNob3VsZCBiZSBtb3ZlZCBlbHNld2hlcmUgaW4gdGhlIHRlc3Qgc3VpdGUgdG8KKyMgZW5zdXJlIGl0IGNvbnRpbnVlcyB0byB3b3JrIGNvcnJlY3RseS4KKworaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgZ2xvYgoraW1wb3J0IG9zLnBhdGgKK2ltcG9ydCB0ZXN0LnN1cHBvcnQKK2Zyb20gdGVzdC5zY3JpcHRfaGVscGVyIGltcG9ydCBhc3NlcnRfcHl0aG9uX2ZhaWx1cmUKKworQ1JBU0hFUl9ESVIgPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgImNyYXNoZXJzIikKK0NSQVNIRVJfRklMRVMgPSBvcy5wYXRoLmpvaW4oQ1JBU0hFUl9ESVIsICIqLnB5IikKKworaW5maW5pdGVfbG9vcHMgPSBbImluZmluaXRlX2xvb3BfcmUucHkiLCAibmFzdHlfZXFfdnNfZGljdC5weSJdCisKK2NsYXNzIENyYXNoZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIEB1bml0dGVzdC5za2lwKCJ0aGVzZSB0ZXN0cyBhcmUgdG9vIGZyYWdpbGUiKQorICAgIEB0ZXN0LnN1cHBvcnQuY3B5dGhvbl9vbmx5CisgICAgZGVmIHRlc3RfY3Jhc2hlcnNfY3Jhc2goc2VsZik6CisgICAgICAgIGZvciBmbmFtZSBpbiBnbG9iLmdsb2IoQ1JBU0hFUl9GSUxFUyk6CisgICAgICAgICAgICBpZiBvcy5wYXRoLmJhc2VuYW1lKGZuYW1lKSBpbiBpbmZpbml0ZV9sb29wczoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgIyBTb21lICJjcmFzaGVycyIgb25seSB0cmlnZ2VyIGFuIGV4Y2VwdGlvbiByYXRoZXIgdGhhbiBhCisgICAgICAgICAgICAjIHNlZ2ZhdWx0LiBDb25zaWRlciB0aGF0IGFuIGFjY2VwdGFibGUgb3V0Y29tZS4KKyAgICAgICAgICAgIGlmIHRlc3Quc3VwcG9ydC52ZXJib3NlOgorICAgICAgICAgICAgICAgIHByaW50KCJDaGVja2luZyBjcmFzaGVyOiIsIGZuYW1lKQorICAgICAgICAgICAgYXNzZXJ0X3B5dGhvbl9mYWlsdXJlKGZuYW1lKQorCisKK2RlZiB0ZXN0X21haW4oKToKKyAgICB0ZXN0LnN1cHBvcnQucnVuX3VuaXR0ZXN0KENyYXNoZXJUZXN0KQorICAgIHRlc3Quc3VwcG9ydC5yZWFwX2NoaWxkcmVuKCkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jcnlwdC5weSBiL0xpYi90ZXN0L3Rlc3RfY3J5cHQucHkKaW5kZXggMmFkYjI4ZC4uZGMxMDdkOCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jcnlwdC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NyeXB0LnB5CkBAIC0xMCw2ICsxMCwyNSBAQAogICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6CiAgICAgICAgICAgICBwcmludCgnVGVzdCBlbmNyeXB0aW9uOiAnLCBjKQogCisgICAgZGVmIHRlc3Rfc2FsdChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY3J5cHQuX3NhbHRjaGFycyksIDY0KQorICAgICAgICBmb3IgbWV0aG9kIGluIGNyeXB0Lm1ldGhvZHM6CisgICAgICAgICAgICBzYWx0ID0gY3J5cHQubWtzYWx0KG1ldGhvZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNhbHQpLAorICAgICAgICAgICAgICAgICAgICBtZXRob2Quc2FsdF9jaGFycyArICgzIGlmIG1ldGhvZC5pZGVudCBlbHNlIDApKQorCisgICAgZGVmIHRlc3Rfc2FsdGVkY3J5cHQoc2VsZik6CisgICAgICAgIGZvciBtZXRob2QgaW4gY3J5cHQubWV0aG9kczoKKyAgICAgICAgICAgIHB3ID0gY3J5cHQuY3J5cHQoJ2Fzc3dvcmQnLCBtZXRob2QpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihwdyksIG1ldGhvZC50b3RhbF9zaXplKQorICAgICAgICAgICAgcHcgPSBjcnlwdC5jcnlwdCgnYXNzd29yZCcsIGNyeXB0Lm1rc2FsdChtZXRob2QpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4ocHcpLCBtZXRob2QudG90YWxfc2l6ZSkKKworICAgIGRlZiB0ZXN0X21ldGhvZHMoc2VsZik6CisgICAgICAgICMgR3VyYW50ZWUgdGhhdCBNRVRIT0RfQ1JZUFQgaXMgdGhlIGxhc3QgbWV0aG9kIGluIGNyeXB0Lm1ldGhvZHMuCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShsZW4oY3J5cHQubWV0aG9kcykgPj0gMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjcnlwdC5NRVRIT0RfQ1JZUFQsIGNyeXB0Lm1ldGhvZHNbLTFdKQorCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoQ3J5cHRUZXN0Q2FzZSkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jdXJzZXMucHkgYi9MaWIvdGVzdC90ZXN0X2N1cnNlcy5weQppbmRleCA1ODEyMTQ3Li4yMWFjNjA4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2N1cnNlcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2N1cnNlcy5weQpAQCAtMjY0LDExICsyNjQsNTUgQEAKICAgICBjdXJzZXMudW5nZXRjaCgxMDI1KQogICAgIHN0ZHNjci5nZXRrZXkoKQogCitkZWYgdGVzdF91bmdldF93Y2goc3Rkc2NyKToKKyAgICBpZiBub3QgaGFzYXR0cihjdXJzZXMsICd1bmdldF93Y2gnKToKKyAgICAgICAgcmV0dXJuCisgICAgaW1wb3J0IGxvY2FsZQorICAgIGVuY29kaW5nID0gbG9jYWxlLmdldHByZWZlcnJlZGVuY29kaW5nKCkKKyAgICBmb3IgY2ggaW4gKCdhJywgJ1x4ZTknLCAnXHUyMGFjJywgJ1xVMDAxMEZGRkYnKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY2guZW5jb2RlKGVuY29kaW5nKQorICAgICAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOgorICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY3Vyc2VzLnVuZ2V0X3djaChjaCkKKyAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlcnI6CisgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oInVuZ2V0X3djaCglYSkgZmFpbGVkIHdpdGggbG9jYWxlIGVuY29kaW5nICVzOiAlcyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIChjaCwgZW5jb2RpbmcsIGVycikpCisgICAgICAgIHJlYWQgPSBzdGRzY3IuZ2V0X3djaCgpCisgICAgICAgIHJlYWQgPSBjaHIocmVhZCkKKyAgICAgICAgaWYgcmVhZCAhPSBjaDoKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCIlciAhPSAlciIgJSAocmVhZCwgY2gpKQorCisgICAgICAgIGNvZGUgPSBvcmQoY2gpCisgICAgICAgIGN1cnNlcy51bmdldF93Y2goY29kZSkKKyAgICAgICAgcmVhZCA9IHN0ZHNjci5nZXRfd2NoKCkKKyAgICAgICAgaWYgcmVhZCAhPSBjb2RlOgorICAgICAgICAgICAgcmFpc2UgQXNzZXJ0aW9uRXJyb3IoIiVyICE9ICVyIiAlIChyZWFkLCBjb2RlKSkKKwogZGVmIHRlc3RfaXNzdWUxMDU3MCgpOgogICAgIGIgPSBjdXJzZXMudHBhcm0oY3Vyc2VzLnRpZ2V0c3RyKCJjdXAiKSwgNSwgMykKICAgICBhc3NlcnQgdHlwZShiKSBpcyBieXRlcwogICAgIGN1cnNlcy5wdXRwKGIpCiAKK2RlZiB0ZXN0X2VuY29kaW5nKHN0ZHNjcik6CisgICAgaW1wb3J0IGNvZGVjcworICAgIGVuY29kaW5nID0gc3Rkc2NyLmVuY29kaW5nCisgICAgY29kZWNzLmxvb2t1cChlbmNvZGluZykKKyAgICB0cnk6CisgICAgICAgIHN0ZHNjci5lbmNvZGluZyA9IDEwCisgICAgZXhjZXB0IFR5cGVFcnJvcjoKKyAgICAgICAgcGFzcworICAgIGVsc2U6CisgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCJUeXBlRXJyb3Igbm90IHJhaXNlZCIpCisgICAgc3Rkc2NyLmVuY29kaW5nID0gZW5jb2RpbmcKKyAgICB0cnk6CisgICAgICAgIGRlbCBzdGRzY3IuZW5jb2RpbmcKKyAgICBleGNlcHQgVHlwZUVycm9yOgorICAgICAgICBwYXNzCisgICAgZWxzZToKKyAgICAgICAgcmFpc2UgQXNzZXJ0aW9uRXJyb3IoIlR5cGVFcnJvciBub3QgcmFpc2VkIikKKwogZGVmIG1haW4oc3Rkc2NyKToKICAgICBjdXJzZXMuc2F2ZXR0eSgpCiAgICAgdHJ5OgpAQCAtMjc3LDE2ICszMjEsMTggQEAKICAgICAgICAgdGVzdF91c2VycHRyX3dpdGhvdXRfc2V0KHN0ZHNjcikKICAgICAgICAgdGVzdF9yZXNpemVfdGVybShzdGRzY3IpCiAgICAgICAgIHRlc3RfaXNzdWU2MjQzKHN0ZHNjcikKKyAgICAgICAgdGVzdF91bmdldF93Y2goc3Rkc2NyKQogICAgICAgICB0ZXN0X2lzc3VlMTA1NzAoKQorICAgICAgICB0ZXN0X2VuY29kaW5nKHN0ZHNjcikKICAgICBmaW5hbGx5OgogICAgICAgICBjdXJzZXMucmVzZXR0eSgpCiAKIGRlZiB0ZXN0X21haW4oKToKLSAgICBpZiBub3Qgc3lzLnN0ZG91dC5pc2F0dHkoKToKLSAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoInN5cy5zdGRvdXQgaXMgbm90IGEgdHR5IikKKyAgICBpZiBub3Qgc3lzLl9fc3Rkb3V0X18uaXNhdHR5KCk6CisgICAgICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJzeXMuX19zdGRvdXRfXyBpcyBub3QgYSB0dHkiKQogICAgICMgdGVzdGluZyBzZXR1cHRlcm0oKSBpbnNpZGUgaW5pdHNjci9lbmR3aW4KICAgICAjIGNhdXNlcyB0ZXJtaW5hbCBicmVha2FnZQotICAgIGN1cnNlcy5zZXR1cHRlcm0oZmQ9c3lzLnN0ZG91dC5maWxlbm8oKSkKKyAgICBjdXJzZXMuc2V0dXB0ZXJtKGZkPXN5cy5fX3N0ZG91dF9fLmZpbGVubygpKQogICAgIHRyeToKICAgICAgICAgc3Rkc2NyID0gY3Vyc2VzLmluaXRzY3IoKQogICAgICAgICBtYWluKHN0ZHNjcikKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZGJtLnB5IGIvTGliL3Rlc3QvdGVzdF9kYm0ucHkKaW5kZXggMjZkNGMxNC4uMDJkZjdlMyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9kYm0ucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9kYm0ucHkKQEAgLTcxLDggKzcxLDggQEAKICAgICAgICAgZi5jbG9zZSgpCiAKICAgICBkZWYgdGVzdF9hbnlkYm1fY3JlYXRpb25fbl9maWxlX2V4aXN0c193aXRoX2ludmFsaWRfY29udGVudHMoc2VsZik6Ci0gICAgICAgIHdpdGggb3BlbihfZm5hbWUsICJ3IikgYXMgdzoKLSAgICAgICAgICAgIHBhc3MgIyBjcmVhdGUgYW4gZW1wdHkgZmlsZQorICAgICAgICAjIGNyZWF0ZSBhbiBlbXB0eSBmaWxlCisgICAgICAgIHRlc3Quc3VwcG9ydC5jcmVhdGVfZW1wdHlfZmlsZShfZm5hbWUpCiAKICAgICAgICAgZiA9IGRibS5vcGVuKF9mbmFtZSwgJ24nKQogICAgICAgICBzZWxmLmFkZENsZWFudXAoZi5jbG9zZSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZGVjaW1hbC5weSBiL0xpYi90ZXN0L3Rlc3RfZGVjaW1hbC5weQppbmRleCBlNDZjZDkxLi4wMTRlOWM3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2RlY2ltYWwucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9kZWNpbWFsLnB5CkBAIC0xODM0LDE4ICsxODM0LDkgQEAKICAgICAgICAgIyBvbmx5LCB0aGUgYXR0cmlidXRlIHNob3VsZCBiZSBnZXR0YWJsZS9zZXR0YWJsZSB2aWEgYm90aAogICAgICAgICAjIGBjbGFtcGAgYW5kIGBfY2xhbXBgOyBpbiBQeXRob24gMy4zLCBgX2NsYW1wYCBzaG91bGQgYmUKICAgICAgICAgIyByZW1vdmVkLgotICAgICAgICBjID0gQ29udGV4dChjbGFtcCA9IDApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYy5jbGFtcCwgMCkKLQotICAgICAgICB3aXRoIGNoZWNrX3dhcm5pbmdzKCgiIiwgRGVwcmVjYXRpb25XYXJuaW5nKSk6Ci0gICAgICAgICAgICBjLl9jbGFtcCA9IDEKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLmNsYW1wLCAxKQotICAgICAgICB3aXRoIGNoZWNrX3dhcm5pbmdzKCgiIiwgRGVwcmVjYXRpb25XYXJuaW5nKSk6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGMuX2NsYW1wLCAxKQotICAgICAgICBjLmNsYW1wID0gMAotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGMuY2xhbXAsIDApCi0gICAgICAgIHdpdGggY2hlY2tfd2FybmluZ3MoKCIiLCBEZXByZWNhdGlvbldhcm5pbmcpKToKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYy5fY2xhbXAsIDApCisgICAgICAgIGMgPSBDb250ZXh0KCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICBjbGFtcF92YWx1ZSA9IGMuX2NsYW1wCiAKICAgICBkZWYgdGVzdF9hYnMoc2VsZik6CiAgICAgICAgIGMgPSBDb250ZXh0KCkKQEAgLTE5NzAsNiArMTk2MSwxNyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMuZm1hLCAyLCAnMycsIDQpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYy5mbWEsIDIsIDMsICc0JykKIAorICAgICAgICAjIElzc3VlIDEyMDc5IGZvciBDb250ZXh0LmZtYSAuLi4KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjLmZtYSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgRGVjaW1hbCgnSW5maW5pdHknKSwgRGVjaW1hbCgwKSwgIm5vdCBhIGRlY2ltYWwiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMuZm1hLAorICAgICAgICAgICAgICAgICAgICAgICAgICBEZWNpbWFsKDEpLCBEZWNpbWFsKCdzbmFuJyksIDEuMjIyKQorICAgICAgICAjIC4uLiBhbmQgZm9yIERlY2ltYWwuZm1hLgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIERlY2ltYWwoJ0luZmluaXR5JykuZm1hLAorICAgICAgICAgICAgICAgICAgICAgICAgICBEZWNpbWFsKDApLCAibm90IGEgZGVjaW1hbCIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgRGVjaW1hbCgxKS5mbWEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIERlY2ltYWwoJ3NuYW4nKSwgMS4yMjIpCisKICAgICBkZWYgdGVzdF9pc19maW5pdGUoc2VsZik6CiAgICAgICAgIGMgPSBDb250ZXh0KCkKICAgICAgICAgZCA9IGMuaXNfZmluaXRlKERlY2ltYWwoMTApKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9kZXNjci5weSBiL0xpYi90ZXN0L3Rlc3RfZGVzY3IucHkKaW5kZXggOTIzMDRiNC4uZDY0YWY2OSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9kZXNjci5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Rlc2NyLnB5CkBAIC02NTIsMTkgKzY1MiwxOSBAQAogICAgICAgICBjbGFzcyBBKG1ldGFjbGFzcz1BTWV0YSk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydBTWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAKICAgICAgICAgY2xhc3MgQihtZXRhY2xhc3M9Qk1ldGEpOgogICAgICAgICAgICAgcGFzcwogICAgICAgICAjIEJNZXRhLl9fbmV3X18gY2FsbHMgQU1ldGEuX19uZXdfXyB3aXRoIHN1cGVyOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk1ldGEnLCAnQU1ldGEnXSwgbmV3X2NhbGxzKQotICAgICAgICBuZXdfY2FsbHNbOl0gPSBbXQorICAgICAgICBuZXdfY2FsbHMuY2xlYXIoKQogCiAgICAgICAgIGNsYXNzIEMoQSwgQik6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgICMgVGhlIG1vc3QgZGVyaXZlZCBtZXRhY2xhc3MgaXMgQk1ldGE6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTWV0YScsICdBTWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgICMgQk1ldGEuX19wcmVwYXJlX18gc2hvdWxkJ3ZlIGJlZW4gY2FsbGVkOgogICAgICAgICBzZWxmLmFzc2VydEluKCdCTWV0YV93YXNfaGVyZScsIEMuX19kaWN0X18pCiAKQEAgLTY3MiwyMCArNjcyLDIwIEBACiAgICAgICAgIGNsYXNzIEMyKEIsIEEpOgogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk1ldGEnLCAnQU1ldGEnXSwgbmV3X2NhbGxzKQotICAgICAgICBuZXdfY2FsbHNbOl0gPSBbXQorICAgICAgICBuZXdfY2FsbHMuY2xlYXIoKQogICAgICAgICBzZWxmLmFzc2VydEluKCdCTWV0YV93YXNfaGVyZScsIEMyLl9fZGljdF9fKQogCiAgICAgICAgICMgQ2hlY2sgY29ycmVjdCBtZXRhY2xhc3MgY2FsY3VsYXRpb24gd2hlbiBhIG1ldGFjbGFzcyBpcyBkZWNsYXJlZDoKICAgICAgICAgY2xhc3MgRChDLCBtZXRhY2xhc3M9dHlwZSk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTWV0YScsICdBTWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ0JNZXRhX3dhc19oZXJlJywgRC5fX2RpY3RfXykKIAogICAgICAgICBjbGFzcyBFKEMsIG1ldGFjbGFzcz1BTWV0YSk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTWV0YScsICdBTWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ0JNZXRhX3dhc19oZXJlJywgRS5fX2RpY3RfXykKIAogICAgICAgICAjIFNwZWNpYWwgY2FzZTogdGhlIGdpdmVuIG1ldGFjbGFzcyBpc24ndCBhIGNsYXNzLApAQCAtNzI3LDMzICs3MjcsMzMgQEAKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRJcyhBTm90TWV0YSwgdHlwZShBKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0FOb3RNZXRhJ10sIHByZXBhcmVfY2FsbHMpCi0gICAgICAgIHByZXBhcmVfY2FsbHNbOl0gPSBbXQorICAgICAgICBwcmVwYXJlX2NhbGxzLmNsZWFyKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0FOb3RNZXRhJ10sIG5ld19jYWxscykKLSAgICAgICAgbmV3X2NhbGxzWzpdID0gW10KKyAgICAgICAgbmV3X2NhbGxzLmNsZWFyKCkKIAogICAgICAgICBjbGFzcyBCKG1ldGFjbGFzcz1CTm90TWV0YSk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuYXNzZXJ0SXMoQk5vdE1ldGEsIHR5cGUoQikpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBwcmVwYXJlX2NhbGxzKQotICAgICAgICBwcmVwYXJlX2NhbGxzWzpdID0gW10KKyAgICAgICAgcHJlcGFyZV9jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAKICAgICAgICAgY2xhc3MgQyhBLCBCKToKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRJcyhCTm90TWV0YSwgdHlwZShDKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0JOb3RNZXRhJywgJ0FOb3RNZXRhJ10sIG5ld19jYWxscykKLSAgICAgICAgbmV3X2NhbGxzWzpdID0gW10KKyAgICAgICAgbmV3X2NhbGxzLmNsZWFyKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0JOb3RNZXRhJywgJ0FOb3RNZXRhJ10sIHByZXBhcmVfY2FsbHMpCi0gICAgICAgIHByZXBhcmVfY2FsbHNbOl0gPSBbXQorICAgICAgICBwcmVwYXJlX2NhbGxzLmNsZWFyKCkKIAogICAgICAgICBjbGFzcyBDMihCLCBBKToKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRJcyhCTm90TWV0YSwgdHlwZShDMikpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBwcmVwYXJlX2NhbGxzKQotICAgICAgICBwcmVwYXJlX2NhbGxzWzpdID0gW10KKyAgICAgICAgcHJlcGFyZV9jYWxscy5jbGVhcigpCiAKICAgICAgICAgIyBUaGlzIGlzIGEgVHlwZUVycm9yLCBiZWNhdXNlIG9mIGEgbWV0YWNsYXNzIGNvbmZsaWN0OgogICAgICAgICAjIEJOb3RNZXRhIGlzIG5laXRoZXIgYSBzdWJjbGFzcywgbm9yIGEgc3VwZXJjbGFzcyBvZiB0eXBlCkBAIC03NjUsMjUgKzc2NSwyNSBAQAogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLmFzc2VydElzKEJOb3RNZXRhLCB0eXBlKEUpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk5vdE1ldGEnLCAnQU5vdE1ldGEnXSwgbmV3X2NhbGxzKQotICAgICAgICBuZXdfY2FsbHNbOl0gPSBbXQorICAgICAgICBuZXdfY2FsbHMuY2xlYXIoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk5vdE1ldGEnLCAnQU5vdE1ldGEnXSwgcHJlcGFyZV9jYWxscykKLSAgICAgICAgcHJlcGFyZV9jYWxsc1s6XSA9IFtdCisgICAgICAgIHByZXBhcmVfY2FsbHMuY2xlYXIoKQogCiAgICAgICAgIGNsYXNzIEYob2JqZWN0KCksIEMpOgogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLmFzc2VydElzKEJOb3RNZXRhLCB0eXBlKEYpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk5vdE1ldGEnLCAnQU5vdE1ldGEnXSwgbmV3X2NhbGxzKQotICAgICAgICBuZXdfY2FsbHNbOl0gPSBbXQorICAgICAgICBuZXdfY2FsbHMuY2xlYXIoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk5vdE1ldGEnLCAnQU5vdE1ldGEnXSwgcHJlcGFyZV9jYWxscykKLSAgICAgICAgcHJlcGFyZV9jYWxsc1s6XSA9IFtdCisgICAgICAgIHByZXBhcmVfY2FsbHMuY2xlYXIoKQogCiAgICAgICAgIGNsYXNzIEYyKEMsIG9iamVjdCgpKToKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRJcyhCTm90TWV0YSwgdHlwZShGMikpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBwcmVwYXJlX2NhbGxzKQotICAgICAgICBwcmVwYXJlX2NhbGxzWzpdID0gW10KKyAgICAgICAgcHJlcGFyZV9jYWxscy5jbGVhcigpCiAKICAgICAgICAgIyBUeXBlRXJyb3I6IEJOb3RNZXRhIGlzIG5laXRoZXIgYQogICAgICAgICAjIHN1YmNsYXNzLCBub3IgYSBzdXBlcmNsYXNzIG9mIGludApAQCAtMTQ0Myw2ICsxNDQzLDE0IEBACiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBzZWxmLmZhaWwoImNsYXNzbWV0aG9kIHNob3VsZG4ndCBhY2NlcHQga2V5d29yZCBhcmdzIikKIAorICAgICAgICBjbSA9IGNsYXNzbWV0aG9kKGYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uX19kaWN0X18sIHt9KQorICAgICAgICBjbS54ID0gNDIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbS54LCA0MikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbS5fX2RpY3RfXywgeyJ4IiA6IDQyfSkKKyAgICAgICAgZGVsIGNtLngKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShoYXNhdHRyKGNtLCAieCIpKQorCiAgICAgQHN1cHBvcnQuaW1wbF9kZXRhaWwoInRoZSBtb2R1bGUgJ3h4c3VidHlwZScgaXMgaW50ZXJuYWwiKQogICAgIGRlZiB0ZXN0X2NsYXNzbWV0aG9kc19pbl9jKHNlbGYpOgogICAgICAgICAjIFRlc3RpbmcgQy1iYXNlZCBjbGFzcyBtZXRob2RzLi4uCkBAIC0xNDc0LDYgKzE0ODIsMTMgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkLmdvbygxKSwgKDEsKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkLmZvbygxKSwgKGQsIDEpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEQuZm9vKGQsIDEpLCAoZCwgMSkpCisgICAgICAgIHNtID0gc3RhdGljbWV0aG9kKE5vbmUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc20uX19kaWN0X18sIHt9KQorICAgICAgICBzbS54ID0gNDIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzbS54LCA0MikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzbS5fX2RpY3RfXywgeyJ4IiA6IDQyfSkKKyAgICAgICAgZGVsIHNtLngKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShoYXNhdHRyKHNtLCAieCIpKQogCiAgICAgQHN1cHBvcnQuaW1wbF9kZXRhaWwoInRoZSBtb2R1bGUgJ3h4c3VidHlwZScgaXMgaW50ZXJuYWwiKQogICAgIGRlZiB0ZXN0X3N0YXRpY21ldGhvZHNfaW5fYyhzZWxmKToKQEAgLTE3OTksMTIgKzE4MTQsNyBAQAogICAgICAgICAgICAgZm9yIGF0dHIsIG9iaiBpbiBlbnYuaXRlbXMoKToKICAgICAgICAgICAgICAgICBzZXRhdHRyKFgsIGF0dHIsIG9iaikKICAgICAgICAgICAgIHNldGF0dHIoWCwgbmFtZSwgRXJyRGVzY3IoKSkKLSAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICBydW5uZXIoWCgpKQotICAgICAgICAgICAgZXhjZXB0IE15RXhjZXB0aW9uOgotICAgICAgICAgICAgICAgIHBhc3MKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJ7MCFyfSBkaWRuJ3QgcmFpc2UiLmZvcm1hdChuYW1lKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE15RXhjZXB0aW9uLCBydW5uZXIsIFgoKSkKIAogICAgIGRlZiB0ZXN0X3NwZWNpYWxzKHNlbGYpOgogICAgICAgICAjIFRlc3Rpbmcgc3BlY2lhbCBvcGVyYXRvcnMuLi4KQEAgLTIyNDEsOSArMjI1MSw2IEBACiAgICAgICAgICMgVHdvIGVzc2VudGlhbGx5IGZlYXR1cmVsZXNzIG9iamVjdHMsIGp1c3QgaW5oZXJpdGluZyBzdHVmZiBmcm9tCiAgICAgICAgICMgb2JqZWN0LgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpcihOb3RJbXBsZW1lbnRlZCksIGRpcihFbGxpcHNpcykpCi0gICAgICAgIGlmIHN1cHBvcnQuY2hlY2tfaW1wbF9kZXRhaWwoKToKLSAgICAgICAgICAgICMgTm9uZSBkaWZmZXJzIGluIFB5UHk6IGl0IGhhcyBhIF9fbm9uemVyb19fCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpcihOb25lKSwgZGlyKEVsbGlwc2lzKSkKIAogICAgICAgICAjIE5hc3R5IHRlc3QgY2FzZSBmb3IgcHJveGllZCBvYmplY3RzCiAgICAgICAgIGNsYXNzIFdyYXBwZXIob2JqZWN0KToKQEAgLTQ0MjksNiArNDQzNiw1NSBAQAogICAgICAgICBmb28gPSBGb28oKQogICAgICAgICBzdHIoZm9vKQogCisgICAgZGVmIHRlc3Rfc2xvdF9zaGFkb3dzX2NsYXNzX3ZhcmlhYmxlKHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgY2xhc3MgWDoKKyAgICAgICAgICAgICAgICBfX3Nsb3RzX18gPSBbImZvbyJdCisgICAgICAgICAgICAgICAgZm9vID0gTm9uZQorICAgICAgICBtID0gc3RyKGNtLmV4Y2VwdGlvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiJ2ZvbycgaW4gX19zbG90c19fIGNvbmZsaWN0cyB3aXRoIGNsYXNzIHZhcmlhYmxlIiwgbSkKKworICAgIGRlZiB0ZXN0X3NldF9kb2Moc2VsZik6CisgICAgICAgIGNsYXNzIFg6CisgICAgICAgICAgICAiZWxlcGhhbnQiCisgICAgICAgIFguX19kb2NfXyA9ICJiYW5hbmEiCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWC5fX2RvY19fLCAiYmFuYW5hIikKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgdHlwZShsaXN0KS5fX2RpY3RfX1siX19kb2NfXyJdLl9fc2V0X18obGlzdCwgImJsYWgiKQorICAgICAgICBzZWxmLmFzc2VydEluKCJjYW4ndCBzZXQgbGlzdC5fX2RvY19fIiwgc3RyKGNtLmV4Y2VwdGlvbikpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKSBhcyBjbToKKyAgICAgICAgICAgIHR5cGUoWCkuX19kaWN0X19bIl9fZG9jX18iXS5fX2RlbGV0ZV9fKFgpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oImNhbid0IGRlbGV0ZSBYLl9fZG9jX18iLCBzdHIoY20uZXhjZXB0aW9uKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChYLl9fZG9jX18sICJiYW5hbmEiKQorCisgICAgZGVmIHRlc3RfcXVhbG5hbWUoc2VsZik6CisgICAgICAgIGRlc2NyaXB0b3JzID0gW3N0ci5sb3dlciwgY29tcGxleC5yZWFsLCBmbG9hdC5yZWFsLCBpbnQuX19hZGRfX10KKyAgICAgICAgdHlwZXMgPSBbJ21ldGhvZCcsICdtZW1iZXInLCAnZ2V0c2V0JywgJ3dyYXBwZXInXQorCisgICAgICAgICMgbWFrZSBzdXJlIHdlIGhhdmUgYW4gZXhhbXBsZSBvZiBlYWNoIHR5cGUgb2YgZGVzY3JpcHRvcgorICAgICAgICBmb3IgZCwgbiBpbiB6aXAoZGVzY3JpcHRvcnMsIHR5cGVzKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHlwZShkKS5fX25hbWVfXywgbiArICdfZGVzY3JpcHRvcicpCisKKyAgICAgICAgZm9yIGQgaW4gZGVzY3JpcHRvcnM6CisgICAgICAgICAgICBxdWFsbmFtZSA9IGQuX19vYmpjbGFzc19fLl9fcXVhbG5hbWVfXyArICcuJyArIGQuX19uYW1lX18KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZC5fX3F1YWxuYW1lX18sIHF1YWxuYW1lKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyLmxvd2VyLl9fcXVhbG5hbWVfXywgJ3N0ci5sb3dlcicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29tcGxleC5yZWFsLl9fcXVhbG5hbWVfXywgJ2NvbXBsZXgucmVhbCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmxvYXQucmVhbC5fX3F1YWxuYW1lX18sICdmbG9hdC5yZWFsJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbnQuX19hZGRfXy5fX3F1YWxuYW1lX18sICdpbnQuX19hZGRfXycpCisKKyAgICBkZWYgdGVzdF9xdWFsbmFtZV9kaWN0KHNlbGYpOgorICAgICAgICBucyA9IHsnX19xdWFsbmFtZV9fJzogJ3NvbWUubmFtZSd9CisgICAgICAgIHRwID0gdHlwZSgnRm9vJywgKCksIG5zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRwLl9fcXVhbG5hbWVfXywgJ3NvbWUubmFtZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHAuX19kaWN0X19bJ19fcXVhbG5hbWVfXyddLCAnc29tZS5uYW1lJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChucywgeydfX3F1YWxuYW1lX18nOiAnc29tZS5uYW1lJ30pCisKKyAgICAgICAgbnMgPSB7J19fcXVhbG5hbWVfXyc6IDF9CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdHlwZSwgJ0ZvbycsICgpLCBucykKKworCiBjbGFzcyBEaWN0UHJveHlUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CkBAIC00NDM2LDYgKzQ0OTIsOCBAQAogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5DID0gQwogCisgICAgQHVuaXR0ZXN0LnNraXBJZihoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgJ3RyYWNlIGZ1bmN0aW9uIGludHJvZHVjZXMgX19sb2NhbF9fJykKICAgICBkZWYgdGVzdF9pdGVyX2tleXMoc2VsZik6CiAgICAgICAgICMgVGVzdGluZyBkaWN0LXByb3h5IGtleXMuLi4KICAgICAgICAgaXQgPSBzZWxmLkMuX19kaWN0X18ua2V5cygpCkBAIC00NDQzLDE1ICs0NTAxLDE5IEBACiAgICAgICAgIGtleXMgPSBsaXN0KGl0KQogICAgICAgICBrZXlzLnNvcnQoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleXMsIFsnX19kaWN0X18nLCAnX19kb2NfXycsICdfX21vZHVsZV9fJywKLSAgICAgICAgICAgICdfX3dlYWtyZWZfXycsICdtZXRoJ10pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdfX3F1YWxuYW1lX18nLCAnX193ZWFrcmVmX18nLCAnbWV0aCddKQogCisgICAgQHVuaXR0ZXN0LnNraXBJZihoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgJ3RyYWNlIGZ1bmN0aW9uIGludHJvZHVjZXMgX19sb2NhbF9fJykKICAgICBkZWYgdGVzdF9pdGVyX3ZhbHVlcyhzZWxmKToKICAgICAgICAgIyBUZXN0aW5nIGRpY3QtcHJveHkgdmFsdWVzLi4uCiAgICAgICAgIGl0ID0gc2VsZi5DLl9fZGljdF9fLnZhbHVlcygpCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SXNJbnN0YW5jZShpdCwgbGlzdCkKICAgICAgICAgdmFsdWVzID0gbGlzdChpdCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4odmFsdWVzKSwgNSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4odmFsdWVzKSwgNikKIAorICAgIEB1bml0dGVzdC5za2lwSWYoaGFzYXR0cihzeXMsICdnZXR0cmFjZScpIGFuZCBzeXMuZ2V0dHJhY2UoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICd0cmFjZSBmdW5jdGlvbiBpbnRyb2R1Y2VzIF9fbG9jYWxfXycpCiAgICAgZGVmIHRlc3RfaXRlcl9pdGVtcyhzZWxmKToKICAgICAgICAgIyBUZXN0aW5nIGRpY3QtcHJveHkgaXRlcml0ZW1zLi4uCiAgICAgICAgIGl0ID0gc2VsZi5DLl9fZGljdF9fLml0ZW1zKCkKQEAgLTQ0NTksNyArNDUyMSw3IEBACiAgICAgICAgIGtleXMgPSBbaXRlbVswXSBmb3IgaXRlbSBpbiBpdF0KICAgICAgICAga2V5cy5zb3J0KCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChrZXlzLCBbJ19fZGljdF9fJywgJ19fZG9jX18nLCAnX19tb2R1bGVfXycsCi0gICAgICAgICAgICAnX193ZWFrcmVmX18nLCAnbWV0aCddKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX19xdWFsbmFtZV9fJywgJ19fd2Vha3JlZl9fJywgJ21ldGgnXSkKIAogICAgIGRlZiB0ZXN0X2RpY3RfdHlwZV93aXRoX21ldGFjbGFzcyhzZWxmKToKICAgICAgICAgIyBUZXN0aW5nIHR5cGUgb2YgX19kaWN0X18gd2hlbiBtZXRhY2xhc3Mgc2V0Li4uCkBAIC00NDczLDE5ICs0NTM1LDE0IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHlwZShDLl9fZGljdF9fKSwgdHlwZShCLl9fZGljdF9fKSkKIAogICAgIGRlZiB0ZXN0X3JlcHIoc2VsZik6Ci0gICAgICAgICMgVGVzdGluZyBkaWN0X3Byb3h5Ll9fcmVwcl9fCi0gICAgICAgIGRlZiBzb3J0ZWRfZGljdF9yZXByKHJlcHJfKToKLSAgICAgICAgICAgICMgR2l2ZW4gdGhlIHJlcHIgb2YgYSBkaWN0LCBzb3J0IHRoZSBrZXlzCi0gICAgICAgICAgICBhc3NlcnQgcmVwcl8uc3RhcnRzd2l0aCgneycpCi0gICAgICAgICAgICBhc3NlcnQgcmVwcl8uZW5kc3dpdGgoJ30nKQotICAgICAgICAgICAga3ZzID0gcmVwcl9bMTotMV0uc3BsaXQoJywgJykKLSAgICAgICAgICAgIHJldHVybiAneycgKyAnLCAnLmpvaW4oc29ydGVkKGt2cykpICsgJ30nCi0gICAgICAgIGRpY3RfID0ge2s6IHYgZm9yIGssIHYgaW4gc2VsZi5DLl9fZGljdF9fLml0ZW1zKCl9Ci0gICAgICAgIHJlcHJfID0gcmVwcihzZWxmLkMuX19kaWN0X18pCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZXByXy5zdGFydHN3aXRoKCdkaWN0X3Byb3h5KCcpKQotICAgICAgICBzZWxmLmFzc2VydFRydWUocmVwcl8uZW5kc3dpdGgoJyknKSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWRfZGljdF9yZXByKHJlcHJfW2xlbignZGljdF9wcm94eSgnKTotbGVuKCcpJyldKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBzb3J0ZWRfZGljdF9yZXByKCd7IXJ9Jy5mb3JtYXQoZGljdF8pKSkKKyAgICAgICAgIyBUZXN0aW5nIGRpY3RfcHJveHkuX19yZXByX18uCisgICAgICAgICMgV2UgY2FuJ3QgYmxpbmRseSBjb21wYXJlIHdpdGggdGhlIHJlcHIgb2YgYW5vdGhlciBkaWN0IGFzIG9yZGVyaW5nCisgICAgICAgICMgb2Yga2V5cyBhbmQgdmFsdWVzIGlzIGFyYml0cmFyeSBhbmQgbWF5IGRpZmZlci4KKyAgICAgICAgciA9IHJlcHIoc2VsZi5DLl9fZGljdF9fKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoci5zdGFydHN3aXRoKCdkaWN0X3Byb3h5KCcpLCByKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoci5lbmRzd2l0aCgnKScpLCByKQorICAgICAgICBmb3IgaywgdiBpbiBzZWxmLkMuX19kaWN0X18uaXRlbXMoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3shcn06IHshcn0nLmZvcm1hdChrLCB2KSwgcikKIAogCiBjbGFzcyBQVHlwZXNMb25nSW5pdFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9kZXNjcnR1dC5weSBiL0xpYi90ZXN0L3Rlc3RfZGVzY3J0dXQucHkKaW5kZXggMmRiM2QzMy4uZjQ5NWUxOCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9kZXNjcnR1dC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Rlc2NydHV0LnB5CkBAIC0xNzAsNiArMTcwLDcgQEAKICAgICAgJ19fY29udGFpbnNfXycsCiAgICAgICdfX2RlbGF0dHJfXycsCiAgICAgICdfX2RlbGl0ZW1fXycsCisgICAgICdfX2Rpcl9fJywKICAgICAgJ19fZG9jX18nLAogICAgICAnX19lcV9fJywKICAgICAgJ19fZm9ybWF0X18nLApAQCAtMTk5LDYgKzIwMCw4IEBACiAgICAgICdfX3N0cl9fJywKICAgICAgJ19fc3ViY2xhc3Nob29rX18nLAogICAgICAnYXBwZW5kJywKKyAgICAgJ2NsZWFyJywKKyAgICAgJ2NvcHknLAogICAgICAnY291bnQnLAogICAgICAnZXh0ZW5kJywKICAgICAgJ2luZGV4JywKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZGV2cG9sbC5weSBiL0xpYi90ZXN0L3Rlc3RfZGV2cG9sbC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZWY0ZTE4Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9kZXZwb2xsLnB5CkBAIC0wLDAgKzEsOTQgQEAKKyMgVGVzdCBjYXNlIGZvciB0aGUgc2VsZWN0LmRldnBvbGwoKSBmdW5jdGlvbgorCisjIEluaXRpYWwgdGVzdHMgYXJlIGNvcGllZCBhcyBpcyBmcm9tICJ0ZXN0X3BvbGwucHkiCisKK2ltcG9ydCBvcywgc2VsZWN0LCByYW5kb20sIHVuaXR0ZXN0LCBzeXMKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBURVNURk4sIHJ1bl91bml0dGVzdAorCit0cnk6CisgICAgc2VsZWN0LmRldnBvbGwKK2V4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKKyAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgic2VsZWN0LmRldnBvbGwgbm90IGRlZmluZWQgLS0gc2tpcHBpbmcgdGVzdF9kZXZwb2xsIikKKworCitkZWYgZmluZF9yZWFkeV9tYXRjaGluZyhyZWFkeSwgZmxhZyk6CisgICAgbWF0Y2ggPSBbXQorICAgIGZvciBmZCwgbW9kZSBpbiByZWFkeToKKyAgICAgICAgaWYgbW9kZSAmIGZsYWc6CisgICAgICAgICAgICBtYXRjaC5hcHBlbmQoZmQpCisgICAgcmV0dXJuIG1hdGNoCisKK2NsYXNzIERldlBvbGxUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9kZXZwb2xsMShzZWxmKToKKyAgICAgICAgIyBCYXNpYyBmdW5jdGlvbmFsIHRlc3Qgb2YgcG9sbCBvYmplY3QKKyAgICAgICAgIyBDcmVhdGUgYSBidW5jaCBvZiBwaXBlIGFuZCB0ZXN0IHRoYXQgcG9sbCB3b3JrcyB3aXRoIHRoZW0uCisKKyAgICAgICAgcCA9IHNlbGVjdC5kZXZwb2xsKCkKKworICAgICAgICBOVU1fUElQRVMgPSAxMgorICAgICAgICBNU0cgPSBiIiBUaGlzIGlzIGEgdGVzdC4iCisgICAgICAgIE1TR19MRU4gPSBsZW4oTVNHKQorICAgICAgICByZWFkZXJzID0gW10KKyAgICAgICAgd3JpdGVycyA9IFtdCisgICAgICAgIHIydyA9IHt9CisgICAgICAgIHcyciA9IHt9CisKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoTlVNX1BJUEVTKToKKyAgICAgICAgICAgIHJkLCB3ciA9IG9zLnBpcGUoKQorICAgICAgICAgICAgcC5yZWdpc3RlcihyZCkKKyAgICAgICAgICAgIHAubW9kaWZ5KHJkLCBzZWxlY3QuUE9MTElOKQorICAgICAgICAgICAgcC5yZWdpc3Rlcih3ciwgc2VsZWN0LlBPTExPVVQpCisgICAgICAgICAgICByZWFkZXJzLmFwcGVuZChyZCkKKyAgICAgICAgICAgIHdyaXRlcnMuYXBwZW5kKHdyKQorICAgICAgICAgICAgcjJ3W3JkXSA9IHdyCisgICAgICAgICAgICB3MnJbd3JdID0gcmQKKworICAgICAgICBidWZzID0gW10KKworICAgICAgICB3aGlsZSB3cml0ZXJzOgorICAgICAgICAgICAgcmVhZHkgPSBwLnBvbGwoKQorICAgICAgICAgICAgcmVhZHlfd3JpdGVycyA9IGZpbmRfcmVhZHlfbWF0Y2hpbmcocmVhZHksIHNlbGVjdC5QT0xMT1VUKQorICAgICAgICAgICAgaWYgbm90IHJlYWR5X3dyaXRlcnM6CisgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJubyBwaXBlcyByZWFkeSBmb3Igd3JpdGluZyIpCisgICAgICAgICAgICB3ciA9IHJhbmRvbS5jaG9pY2UocmVhZHlfd3JpdGVycykKKyAgICAgICAgICAgIG9zLndyaXRlKHdyLCBNU0cpCisKKyAgICAgICAgICAgIHJlYWR5ID0gcC5wb2xsKCkKKyAgICAgICAgICAgIHJlYWR5X3JlYWRlcnMgPSBmaW5kX3JlYWR5X21hdGNoaW5nKHJlYWR5LCBzZWxlY3QuUE9MTElOKQorICAgICAgICAgICAgaWYgbm90IHJlYWR5X3JlYWRlcnM6CisgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJubyBwaXBlcyByZWFkeSBmb3IgcmVhZGluZyIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFt3MnJbd3JdXSwgcmVhZHlfcmVhZGVycykKKyAgICAgICAgICAgIHJkID0gcmVhZHlfcmVhZGVyc1swXQorICAgICAgICAgICAgYnVmID0gb3MucmVhZChyZCwgTVNHX0xFTikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGJ1ZiksIE1TR19MRU4pCisgICAgICAgICAgICBidWZzLmFwcGVuZChidWYpCisgICAgICAgICAgICBvcy5jbG9zZShyMndbcmRdKSA7IG9zLmNsb3NlKHJkKQorICAgICAgICAgICAgcC51bnJlZ2lzdGVyKHIyd1tyZF0pCisgICAgICAgICAgICBwLnVucmVnaXN0ZXIocmQpCisgICAgICAgICAgICB3cml0ZXJzLnJlbW92ZShyMndbcmRdKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnVmcywgW01TR10gKiBOVU1fUElQRVMpCisKKyAgICBkZWYgdGVzdF90aW1lb3V0X292ZXJmbG93KHNlbGYpOgorICAgICAgICBwb2xsc3RlciA9IHNlbGVjdC5kZXZwb2xsKCkKKyAgICAgICAgdywgciA9IG9zLnBpcGUoKQorICAgICAgICBwb2xsc3Rlci5yZWdpc3Rlcih3KQorCisgICAgICAgIHBvbGxzdGVyLnBvbGwoLTEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHBvbGxzdGVyLnBvbGwsIC0yKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBwb2xsc3Rlci5wb2xsLCAtMSA8PCAzMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgcG9sbHN0ZXIucG9sbCwgLTEgPDwgNjQpCisKKyAgICAgICAgcG9sbHN0ZXIucG9sbCgwKQorICAgICAgICBwb2xsc3Rlci5wb2xsKDEpCisgICAgICAgIHBvbGxzdGVyLnBvbGwoMSA8PCAzMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgcG9sbHN0ZXIucG9sbCwgMSA8PCAzMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgcG9sbHN0ZXIucG9sbCwgMSA8PCA2MykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgcG9sbHN0ZXIucG9sbCwgMSA8PCA2NCkKKworZGVmIHRlc3RfbWFpbigpOgorICAgIHJ1bl91bml0dGVzdChEZXZQb2xsVGVzdHMpCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZGljdC5weSBiL0xpYi90ZXN0L3Rlc3RfZGljdC5weQppbmRleCBkMjc0MGEzLi4xNWRiNTFkIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2RpY3QucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9kaWN0LnB5CkBAIC0zNzksNyArMzc5LDcgQEAKICAgICAgICAgeC5mYWlsID0gVHJ1ZQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhFeGMsIGQucG9wLCB4KQogCi0gICAgZGVmIHRlc3RfbXV0YXRpbmdpdGVyYXRpb24oc2VsZik6CisgICAgZGVmIHRlc3RfbXV0YXRpbmdfaXRlcmF0aW9uKHNlbGYpOgogICAgICAgICAjIGNoYW5naW5nIGRpY3Qgc2l6ZSBkdXJpbmcgaXRlcmF0aW9uCiAgICAgICAgIGQgPSB7fQogICAgICAgICBkWzFdID0gMQpAQCAtMzg3LDYgKzM4NywyNiBAQAogICAgICAgICAgICAgZm9yIGkgaW4gZDoKICAgICAgICAgICAgICAgICBkW2krMV0gPSAxCiAKKyAgICBkZWYgdGVzdF9tdXRhdGluZ19sb29rdXAoc2VsZik6CisgICAgICAgICMgY2hhbmdpbmcgZGljdCBkdXJpbmcgYSBsb29rdXAKKyAgICAgICAgY2xhc3MgTmFzdHlLZXk6CisgICAgICAgICAgICBtdXRhdGVfZGljdCA9IE5vbmUKKworICAgICAgICAgICAgZGVmIF9faGFzaF9fKHNlbGYpOgorICAgICAgICAgICAgICAgICMgaGFzaCBjb2xsaXNpb24hCisgICAgICAgICAgICAgICAgcmV0dXJuIDEKKworICAgICAgICAgICAgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6CisgICAgICAgICAgICAgICAgaWYgc2VsZi5tdXRhdGVfZGljdDoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5tdXRhdGVfZGljdFtzZWxmXSA9IDEKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZiA9PSBvdGhlcgorCisgICAgICAgIGQgPSB7fQorICAgICAgICBkW05hc3R5S2V5KCldID0gMAorICAgICAgICBOYXN0eUtleS5tdXRhdGVfZGljdCA9IGQKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IpOgorICAgICAgICAgICAgZFtOYXN0eUtleSgpXSA9IE5vbmUKKwogICAgIGRlZiB0ZXN0X3JlcHIoc2VsZik6CiAgICAgICAgIGQgPSB7fQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIoZCksICd7fScpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Rpcy5weSBiL0xpYi90ZXN0L3Rlc3RfZGlzLnB5CmluZGV4IDVjNTllYWEuLjE1MDZmZTkgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZGlzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZGlzLnB5CkBAIC0xLDExICsxLDM1IEBACiAjIE1pbmltYWwgdGVzdHMgZm9yIGRpcyBtb2R1bGUKIAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdCwgY2FwdHVyZWRfc3Rkb3V0CitpbXBvcnQgZGlmZmxpYgogaW1wb3J0IHVuaXR0ZXN0CiBpbXBvcnQgc3lzCiBpbXBvcnQgZGlzCiBpbXBvcnQgaW8KIAorY2xhc3MgX0M6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHgpOgorICAgICAgICBzZWxmLnggPSB4ID09IDEKKworZGlzX2NfaW5zdGFuY2VfbWV0aG9kID0gIiIiXAorICUtNGQgICAgICAgICAwIExPQURfRkFTVCAgICAgICAgICAgICAgICAxICh4KQorICAgICAgICAgICAgICAzIExPQURfQ09OU1QgICAgICAgICAgICAgICAxICgxKQorICAgICAgICAgICAgICA2IENPTVBBUkVfT1AgICAgICAgICAgICAgICAyICg9PSkKKyAgICAgICAgICAgICAgOSBMT0FEX0ZBU1QgICAgICAgICAgICAgICAgMCAoc2VsZikKKyAgICAgICAgICAgICAxMiBTVE9SRV9BVFRSICAgICAgICAgICAgICAgMCAoeCkKKyAgICAgICAgICAgICAxNSBMT0FEX0NPTlNUICAgICAgICAgICAgICAgMCAoTm9uZSkKKyAgICAgICAgICAgICAxOCBSRVRVUk5fVkFMVUUKKyIiIiAlIChfQy5fX2luaXRfXy5fX2NvZGVfXy5jb19maXJzdGxpbmVubyArIDEsKQorCitkaXNfY19pbnN0YW5jZV9tZXRob2RfYnl0ZXMgPSAiIiJcCisgICAgICAgICAgMCBMT0FEX0ZBU1QgICAgICAgICAgIDEgKDEpCisgICAgICAgICAgMyBMT0FEX0NPTlNUICAgICAgICAgIDEgKDEpCisgICAgICAgICAgNiBDT01QQVJFX09QICAgICAgICAgIDIgKD09KQorICAgICAgICAgIDkgTE9BRF9GQVNUICAgICAgICAgICAwICgwKQorICAgICAgICAgMTIgU1RPUkVfQVRUUiAgICAgICAgICAwICgwKQorICAgICAgICAgMTUgTE9BRF9DT05TVCAgICAgICAgICAwICgwKQorICAgICAgICAgMTggUkVUVVJOX1ZBTFVFCisiIiIKIAogZGVmIF9mKGEpOgogICAgIHByaW50KGEpCkBAIC0yMyw2ICs0NywxNiBAQAogICAgICAgIF9mLl9fY29kZV9fLmNvX2ZpcnN0bGluZW5vICsgMikKIAogCitkaXNfZl9jb19jb2RlID0gIiIiXAorICAgICAgICAgIDAgTE9BRF9HTE9CQUwgICAgICAgICAwICgwKQorICAgICAgICAgIDMgTE9BRF9GQVNUICAgICAgICAgICAwICgwKQorICAgICAgICAgIDYgQ0FMTF9GVU5DVElPTiAgICAgICAxCisgICAgICAgICAgOSBQT1BfVE9QCisgICAgICAgICAxMCBMT0FEX0NPTlNUICAgICAgICAgIDEgKDEpCisgICAgICAgICAxMyBSRVRVUk5fVkFMVUUKKyIiIgorCisKIGRlZiBidWc3MDg5MDEoKToKICAgICBmb3IgcmVzIGluIHJhbmdlKDEsCiAgICAgICAgICAgICAgICAgICAgICAxMCk6CkBAIC0xMzgsMTggKzE3MiwyNyBAQAogIiIiCiAKIGNsYXNzIERpc1Rlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKLSAgICBkZWYgZG9fZGlzYXNzZW1ibHlfdGVzdChzZWxmLCBmdW5jLCBleHBlY3RlZCk6CisKKyAgICBkZWYgZ2V0X2Rpc2Fzc2VtYmx5KHNlbGYsIGZ1bmMsIGxhc3RpPS0xLCB3cmFwcGVyPVRydWUpOgogICAgICAgICBzID0gaW8uU3RyaW5nSU8oKQogICAgICAgICBzYXZlX3N0ZG91dCA9IHN5cy5zdGRvdXQKICAgICAgICAgc3lzLnN0ZG91dCA9IHMKLSAgICAgICAgZGlzLmRpcyhmdW5jKQotICAgICAgICBzeXMuc3Rkb3V0ID0gc2F2ZV9zdGRvdXQKLSAgICAgICAgZ290ID0gcy5nZXR2YWx1ZSgpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGlmIHdyYXBwZXI6CisgICAgICAgICAgICAgICAgZGlzLmRpcyhmdW5jKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBkaXMuZGlzYXNzZW1ibGUoZnVuYywgbGFzdGkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzeXMuc3Rkb3V0ID0gc2F2ZV9zdGRvdXQKICAgICAgICAgIyBUcmltIHRyYWlsaW5nIGJsYW5rcyAoaWYgYW55KS4KLSAgICAgICAgbGluZXMgPSBnb3Quc3BsaXQoJ1xuJykKLSAgICAgICAgbGluZXMgPSBbbGluZS5yc3RyaXAoKSBmb3IgbGluZSBpbiBsaW5lc10KLSAgICAgICAgZXhwZWN0ZWQgPSBleHBlY3RlZC5zcGxpdCgiXG4iKQotICAgICAgICBpbXBvcnQgZGlmZmxpYgorICAgICAgICByZXR1cm4gW2xpbmUucnN0cmlwKCkgZm9yIGxpbmUgaW4gcy5nZXR2YWx1ZSgpLnNwbGl0bGluZXMoKV0KKworICAgIGRlZiBnZXRfZGlzYXNzZW1ibGVfYXNfc3RyaW5nKHNlbGYsIGZ1bmMsIGxhc3RpPS0xKToKKyAgICAgICAgcmV0dXJuICdcbicuam9pbihzZWxmLmdldF9kaXNhc3NlbWJseShmdW5jLCBsYXN0aSwgRmFsc2UpKQorCisgICAgZGVmIGRvX2Rpc2Fzc2VtYmx5X3Rlc3Qoc2VsZiwgZnVuYywgZXhwZWN0ZWQpOgorICAgICAgICBsaW5lcyA9IHNlbGYuZ2V0X2Rpc2Fzc2VtYmx5KGZ1bmMpCisgICAgICAgIGV4cGVjdGVkID0gZXhwZWN0ZWQuc3BsaXRsaW5lcygpCiAgICAgICAgIGlmIGV4cGVjdGVkICE9IGxpbmVzOgogICAgICAgICAgICAgc2VsZi5mYWlsKAogICAgICAgICAgICAgICAgICJldmVudHMgZGlkIG5vdCBtYXRjaCBleHBlY3RhdGlvbjpcbiIgKwpAQCAtMTU3LDcgKzIwMCw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZXMpKSkKIAogICAgIGRlZiB0ZXN0X29wbWFwKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpcy5vcG1hcFsiU1RPUF9DT0RFIl0sIDApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzLm9wbWFwWyJOT1AiXSwgOSkKICAgICAgICAgc2VsZi5hc3NlcnRJbihkaXMub3BtYXBbIkxPQURfQ09OU1QiXSwgZGlzLmhhc2NvbnN0KQogICAgICAgICBzZWxmLmFzc2VydEluKGRpcy5vcG1hcFsiU1RPUkVfTkFNRSJdLCBkaXMuaGFzbmFtZSkKIApAQCAtMjExLDYgKzI1NCw0NCBAQAogICAgICAgICBzZWxmLmRvX2Rpc2Fzc2VtYmx5X3Rlc3Qoc2ltcGxlX3N0bXRfc3RyLCBkaXNfc2ltcGxlX3N0bXRfc3RyKQogICAgICAgICBzZWxmLmRvX2Rpc2Fzc2VtYmx5X3Rlc3QoY29tcG91bmRfc3RtdF9zdHIsIGRpc19jb21wb3VuZF9zdG10X3N0cikKIAorICAgIGRlZiB0ZXN0X2Rpc2Fzc2VtYmxlX2J5dGVzKHNlbGYpOgorICAgICAgICBzZWxmLmRvX2Rpc2Fzc2VtYmx5X3Rlc3QoX2YuX19jb2RlX18uY29fY29kZSwgZGlzX2ZfY29fY29kZSkKKworICAgIGRlZiB0ZXN0X2Rpc2Fzc2VtYmxlX21ldGhvZChzZWxmKToKKyAgICAgICAgc2VsZi5kb19kaXNhc3NlbWJseV90ZXN0KF9DKDEpLl9faW5pdF9fLCBkaXNfY19pbnN0YW5jZV9tZXRob2QpCisKKyAgICBkZWYgdGVzdF9kaXNhc3NlbWJsZV9tZXRob2RfYnl0ZXMoc2VsZik6CisgICAgICAgIG1ldGhvZF9ieXRlY29kZSA9IF9DKDEpLl9faW5pdF9fLl9fY29kZV9fLmNvX2NvZGUKKyAgICAgICAgc2VsZi5kb19kaXNhc3NlbWJseV90ZXN0KG1ldGhvZF9ieXRlY29kZSwgZGlzX2NfaW5zdGFuY2VfbWV0aG9kX2J5dGVzKQorCisgICAgZGVmIHRlc3RfZGlzX25vbmUoc2VsZik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGRlbCBzeXMubGFzdF90cmFjZWJhY2sKKyAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIGRpcy5kaXMsIE5vbmUpCisKKyAgICBkZWYgdGVzdF9kaXNfb2JqZWN0KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGRpcy5kaXMsIG9iamVjdCgpKQorCisgICAgZGVmIHRlc3RfZGlzX3RyYWNlYmFjayhzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZGVsIHN5cy5sYXN0X3RyYWNlYmFjaworICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CisgICAgICAgICAgICBwYXNzCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgMS8wCisgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgICAgIHRiID0gZS5fX3RyYWNlYmFja19fCisgICAgICAgICAgICBzeXMubGFzdF90cmFjZWJhY2sgPSB0YgorCisgICAgICAgIHRiX2RpcyA9IHNlbGYuZ2V0X2Rpc2Fzc2VtYmxlX2FzX3N0cmluZyh0Yi50Yl9mcmFtZS5mX2NvZGUsIHRiLnRiX2xhc3RpKQorICAgICAgICBzZWxmLmRvX2Rpc2Fzc2VtYmx5X3Rlc3QoTm9uZSwgdGJfZGlzKQorCisgICAgZGVmIHRlc3RfZGlzX29iamVjdChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBkaXMuZGlzLCBvYmplY3QoKSkKKwogY29kZV9pbmZvX2NvZGVfaW5mbyA9ICIiIlwKIE5hbWU6ICAgICAgICAgICAgICBjb2RlX2luZm8KIEZpbGVuYW1lOiAgICAgICAgICAoLiopCkBAIC0yNTgsNiArMzM5LDcgQEAKIENvbnN0YW50czoKICAgIDA6IE5vbmUKICAgIDE6IDxjb2RlIG9iamVjdCBmIGF0ICguKiksIGZpbGUgIiguKikiLCBsaW5lICguKik+CisgICAyOiAndHJpY2t5Ljxsb2NhbHM+LmYnCiBWYXJpYWJsZSBuYW1lczoKICAgIDA6IHgKICAgIDE6IHkKQEAgLTM2NCw2ICs0NDYsMTMgQEAKICAgICAgICAgICAgICAgICBkaXMuc2hvd19jb2RlKHgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFJlZ2V4KG91dHB1dC5nZXR2YWx1ZSgpLCBleHBlY3RlZCsiXG4iKQogCisgICAgZGVmIHRlc3RfY29kZV9pbmZvX29iamVjdChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBkaXMuY29kZV9pbmZvLCBvYmplY3QoKSkKKworICAgIGRlZiB0ZXN0X3ByZXR0eV9mbGFnc19ub19mbGFncyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXMucHJldHR5X2ZsYWdzKDApLCAnMHgwJykKKworCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgcnVuX3VuaXR0ZXN0KERpc1Rlc3RzLCBDb2RlSW5mb1Rlc3RzKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2RvY3Rlc3QucHkgYi9MaWIvdGVzdC90ZXN0X2RvY3Rlc3QucHkKaW5kZXggNTk2OWNlMi4uY2RjZDM4OSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9kb2N0ZXN0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZG9jdGVzdC5weQpAQCAtNSw2ICs1LDcgQEAKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogaW1wb3J0IGRvY3Rlc3QKIGltcG9ydCBvcworaW1wb3J0IHN5cwogCiAKICMgTk9URTogVGhlcmUgYXJlIHNvbWUgYWRkaXRpb25hbCB0ZXN0cyByZWxhdGluZyB0byBpbnRlcmFjdGlvbiB3aXRoCkBAIC00MzIsNyArNDMzLDcgQEAKICAgICA+Pj4gdGVzdHMgPSBmaW5kZXIuZmluZChzYW1wbGVfZnVuYykKIAogICAgID4+PiBwcmludCh0ZXN0cykgICMgZG9jdGVzdDogK0VMTElQU0lTCi0gICAgWzxEb2NUZXN0IHNhbXBsZV9mdW5jIGZyb20gLi4uOjE3ICgxIGV4YW1wbGUpPl0KKyAgICBbPERvY1Rlc3Qgc2FtcGxlX2Z1bmMgZnJvbSAuLi46MTggKDEgZXhhbXBsZSk+XQogCiBUaGUgZXhhY3QgbmFtZSBkZXBlbmRzIG9uIGhvdyB0ZXN0X2RvY3Rlc3Qgd2FzIGludm9rZWQsIHNvIGFsbG93IGZvcgogbGVhZGluZyBwYXRoIGNvbXBvbmVudHMuCkBAIC0xNzQ1LDIyNiArMTc0NiwyMjcgQEAKIAogIiIiCiAKLWRlZiB0ZXN0X3BkYl9zZXRfdHJhY2UoKToKLSAgICAiIiJVc2luZyBwZGIuc2V0X3RyYWNlIGZyb20gYSBkb2N0ZXN0LgoraWYgbm90IGhhc2F0dHIoc3lzLCAnZ2V0dHJhY2UnKSBvciBub3Qgc3lzLmdldHRyYWNlKCk6CisgICAgZGVmIHRlc3RfcGRiX3NldF90cmFjZSgpOgorICAgICAgICAiIiJVc2luZyBwZGIuc2V0X3RyYWNlIGZyb20gYSBkb2N0ZXN0LgogCi0gICAgWW91IGNhbiB1c2UgcGRiLnNldF90cmFjZSBmcm9tIGEgZG9jdGVzdC4gIFRvIGRvIHNvLCB5b3UgbXVzdAotICAgIHJldHJpZXZlIHRoZSBzZXRfdHJhY2UgZnVuY3Rpb24gZnJvbSB0aGUgcGRiIG1vZHVsZSBhdCB0aGUgdGltZQotICAgIHlvdSB1c2UgaXQuICBUaGUgZG9jdGVzdCBtb2R1bGUgY2hhbmdlcyBzeXMuc3Rkb3V0IHNvIHRoYXQgaXQgY2FuCi0gICAgY2FwdHVyZSBwcm9ncmFtIG91dHB1dC4gIEl0IGFsc28gdGVtcG9yYXJpbHkgcmVwbGFjZXMgcGRiLnNldF90cmFjZQotICAgIHdpdGggYSB2ZXJzaW9uIHRoYXQgcmVzdG9yZXMgc3Rkb3V0LiAgVGhpcyBpcyBuZWNlc3NhcnkgZm9yIHlvdSB0bwotICAgIHNlZSBkZWJ1Z2dlciBvdXRwdXQuCisgICAgICAgIFlvdSBjYW4gdXNlIHBkYi5zZXRfdHJhY2UgZnJvbSBhIGRvY3Rlc3QuICBUbyBkbyBzbywgeW91IG11c3QKKyAgICAgICAgcmV0cmlldmUgdGhlIHNldF90cmFjZSBmdW5jdGlvbiBmcm9tIHRoZSBwZGIgbW9kdWxlIGF0IHRoZSB0aW1lCisgICAgICAgIHlvdSB1c2UgaXQuICBUaGUgZG9jdGVzdCBtb2R1bGUgY2hhbmdlcyBzeXMuc3Rkb3V0IHNvIHRoYXQgaXQgY2FuCisgICAgICAgIGNhcHR1cmUgcHJvZ3JhbSBvdXRwdXQuICBJdCBhbHNvIHRlbXBvcmFyaWx5IHJlcGxhY2VzIHBkYi5zZXRfdHJhY2UKKyAgICAgICAgd2l0aCBhIHZlcnNpb24gdGhhdCByZXN0b3JlcyBzdGRvdXQuICBUaGlzIGlzIG5lY2Vzc2FyeSBmb3IgeW91IHRvCisgICAgICAgIHNlZSBkZWJ1Z2dlciBvdXRwdXQuCiAKLSAgICAgID4+PiBkb2MgPSAnJycKLSAgICAgIC4uLiA+Pj4geCA9IDQyCi0gICAgICAuLi4gPj4+IHJhaXNlIEV4Y2VwdGlvbignY2zDqScpCi0gICAgICAuLi4gVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgotICAgICAgLi4uIEV4Y2VwdGlvbjogY2zDqQotICAgICAgLi4uID4+PiBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKLSAgICAgIC4uLiAnJycKLSAgICAgID4+PiBwYXJzZXIgPSBkb2N0ZXN0LkRvY1Rlc3RQYXJzZXIoKQotICAgICAgPj4+IHRlc3QgPSBwYXJzZXIuZ2V0X2RvY3Rlc3QoZG9jLCB7fSwgImZvby1iYXJAYmF6IiwgImZvby1iYXJAYmF6LnB5IiwgMCkKLSAgICAgID4+PiBydW5uZXIgPSBkb2N0ZXN0LkRvY1Rlc3RSdW5uZXIodmVyYm9zZT1GYWxzZSkKKyAgICAgICAgICA+Pj4gZG9jID0gJycnCisgICAgICAgICAgLi4uID4+PiB4ID0gNDIKKyAgICAgICAgICAuLi4gPj4+IHJhaXNlIEV4Y2VwdGlvbignY2zDqScpCisgICAgICAgICAgLi4uIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKKyAgICAgICAgICAuLi4gRXhjZXB0aW9uOiBjbMOpCisgICAgICAgICAgLi4uID4+PiBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKKyAgICAgICAgICAuLi4gJycnCisgICAgICAgICAgPj4+IHBhcnNlciA9IGRvY3Rlc3QuRG9jVGVzdFBhcnNlcigpCisgICAgICAgICAgPj4+IHRlc3QgPSBwYXJzZXIuZ2V0X2RvY3Rlc3QoZG9jLCB7fSwgImZvby1iYXJAYmF6IiwgImZvby1iYXJAYmF6LnB5IiwgMCkKKyAgICAgICAgICA+Pj4gcnVubmVyID0gZG9jdGVzdC5Eb2NUZXN0UnVubmVyKHZlcmJvc2U9RmFsc2UpCiAKLSAgICBUbyBkZW1vbnN0cmF0ZSB0aGlzLCB3ZSdsbCBjcmVhdGUgYSBmYWtlIHN0YW5kYXJkIGlucHV0IHRoYXQKLSAgICBjYXB0dXJlcyBvdXIgZGVidWdnZXIgaW5wdXQ6CisgICAgICAgIFRvIGRlbW9uc3RyYXRlIHRoaXMsIHdlJ2xsIGNyZWF0ZSBhIGZha2Ugc3RhbmRhcmQgaW5wdXQgdGhhdAorICAgICAgICBjYXB0dXJlcyBvdXIgZGVidWdnZXIgaW5wdXQ6CiAKLSAgICAgID4+PiBpbXBvcnQgdGVtcGZpbGUKLSAgICAgID4+PiByZWFsX3N0ZGluID0gc3lzLnN0ZGluCi0gICAgICA+Pj4gc3lzLnN0ZGluID0gX0Zha2VJbnB1dChbCi0gICAgICAuLi4gICAgJ3ByaW50KHgpJywgICMgcHJpbnQgZGF0YSBkZWZpbmVkIGJ5IHRoZSBleGFtcGxlCi0gICAgICAuLi4gICAgJ2NvbnRpbnVlJywgIyBzdG9wIGRlYnVnZ2luZwotICAgICAgLi4uICAgICcnXSkKKyAgICAgICAgICA+Pj4gaW1wb3J0IHRlbXBmaWxlCisgICAgICAgICAgPj4+IHJlYWxfc3RkaW4gPSBzeXMuc3RkaW4KKyAgICAgICAgICA+Pj4gc3lzLnN0ZGluID0gX0Zha2VJbnB1dChbCisgICAgICAgICAgLi4uICAgICdwcmludCh4KScsICAjIHByaW50IGRhdGEgZGVmaW5lZCBieSB0aGUgZXhhbXBsZQorICAgICAgICAgIC4uLiAgICAnY29udGludWUnLCAjIHN0b3AgZGVidWdnaW5nCisgICAgICAgICAgLi4uICAgICcnXSkKIAotICAgICAgPj4+IHRyeTogcnVubmVyLnJ1bih0ZXN0KQotICAgICAgLi4uIGZpbmFsbHk6IHN5cy5zdGRpbiA9IHJlYWxfc3RkaW4KLSAgICAgIC0tUmV0dXJuLS0KLSAgICAgID4gPGRvY3Rlc3QgZm9vLWJhckBiYXpbMl0+KDEpPG1vZHVsZT4oKS0+Tm9uZQotICAgICAgLT4gaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCi0gICAgICAoUGRiKSBwcmludCh4KQotICAgICAgNDIKLSAgICAgIChQZGIpIGNvbnRpbnVlCi0gICAgICBUZXN0UmVzdWx0cyhmYWlsZWQ9MCwgYXR0ZW1wdGVkPTMpCisgICAgICAgICAgPj4+IHRyeTogcnVubmVyLnJ1bih0ZXN0KQorICAgICAgICAgIC4uLiBmaW5hbGx5OiBzeXMuc3RkaW4gPSByZWFsX3N0ZGluCisgICAgICAgICAgLS1SZXR1cm4tLQorICAgICAgICAgID4gPGRvY3Rlc3QgZm9vLWJhckBiYXpbMl0+KDEpPG1vZHVsZT4oKS0+Tm9uZQorICAgICAgICAgIC0+IGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQorICAgICAgICAgIChQZGIpIHByaW50KHgpCisgICAgICAgICAgNDIKKyAgICAgICAgICAoUGRiKSBjb250aW51ZQorICAgICAgICAgIFRlc3RSZXN1bHRzKGZhaWxlZD0wLCBhdHRlbXB0ZWQ9MykKIAotICAgICAgWW91IGNhbiBhbHNvIHB1dCBwZGIuc2V0X3RyYWNlIGluIGEgZnVuY3Rpb24gY2FsbGVkIGZyb20gYSB0ZXN0OgorICAgICAgICAgIFlvdSBjYW4gYWxzbyBwdXQgcGRiLnNldF90cmFjZSBpbiBhIGZ1bmN0aW9uIGNhbGxlZCBmcm9tIGEgdGVzdDoKIAotICAgICAgPj4+IGRlZiBjYWxsc19zZXRfdHJhY2UoKToKLSAgICAgIC4uLiAgICB5PTIKLSAgICAgIC4uLiAgICBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKKyAgICAgICAgICA+Pj4gZGVmIGNhbGxzX3NldF90cmFjZSgpOgorICAgICAgICAgIC4uLiAgICB5PTIKKyAgICAgICAgICAuLi4gICAgaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCiAKLSAgICAgID4+PiBkb2MgPSAnJycKLSAgICAgIC4uLiA+Pj4geD0xCi0gICAgICAuLi4gPj4+IGNhbGxzX3NldF90cmFjZSgpCi0gICAgICAuLi4gJycnCi0gICAgICA+Pj4gdGVzdCA9IHBhcnNlci5nZXRfZG9jdGVzdChkb2MsIGdsb2JhbHMoKSwgImZvby1iYXJAYmF6IiwgImZvby1iYXJAYmF6LnB5IiwgMCkKLSAgICAgID4+PiByZWFsX3N0ZGluID0gc3lzLnN0ZGluCi0gICAgICA+Pj4gc3lzLnN0ZGluID0gX0Zha2VJbnB1dChbCi0gICAgICAuLi4gICAgJ3ByaW50KHkpJywgICMgcHJpbnQgZGF0YSBkZWZpbmVkIGluIHRoZSBmdW5jdGlvbgotICAgICAgLi4uICAgICd1cCcsICAgICAgICMgb3V0IG9mIGZ1bmN0aW9uCi0gICAgICAuLi4gICAgJ3ByaW50KHgpJywgICMgcHJpbnQgZGF0YSBkZWZpbmVkIGJ5IHRoZSBleGFtcGxlCi0gICAgICAuLi4gICAgJ2NvbnRpbnVlJywgIyBzdG9wIGRlYnVnZ2luZwotICAgICAgLi4uICAgICcnXSkKKyAgICAgICAgICA+Pj4gZG9jID0gJycnCisgICAgICAgICAgLi4uID4+PiB4PTEKKyAgICAgICAgICAuLi4gPj4+IGNhbGxzX3NldF90cmFjZSgpCisgICAgICAgICAgLi4uICcnJworICAgICAgICAgID4+PiB0ZXN0ID0gcGFyc2VyLmdldF9kb2N0ZXN0KGRvYywgZ2xvYmFscygpLCAiZm9vLWJhckBiYXoiLCAiZm9vLWJhckBiYXoucHkiLCAwKQorICAgICAgICAgID4+PiByZWFsX3N0ZGluID0gc3lzLnN0ZGluCisgICAgICAgICAgPj4+IHN5cy5zdGRpbiA9IF9GYWtlSW5wdXQoWworICAgICAgICAgIC4uLiAgICAncHJpbnQoeSknLCAgIyBwcmludCBkYXRhIGRlZmluZWQgaW4gdGhlIGZ1bmN0aW9uCisgICAgICAgICAgLi4uICAgICd1cCcsICAgICAgICMgb3V0IG9mIGZ1bmN0aW9uCisgICAgICAgICAgLi4uICAgICdwcmludCh4KScsICAjIHByaW50IGRhdGEgZGVmaW5lZCBieSB0aGUgZXhhbXBsZQorICAgICAgICAgIC4uLiAgICAnY29udGludWUnLCAjIHN0b3AgZGVidWdnaW5nCisgICAgICAgICAgLi4uICAgICcnXSkKIAotICAgICAgPj4+IHRyeToKLSAgICAgIC4uLiAgICAgcnVubmVyLnJ1bih0ZXN0KQotICAgICAgLi4uIGZpbmFsbHk6Ci0gICAgICAuLi4gICAgIHN5cy5zdGRpbiA9IHJlYWxfc3RkaW4KLSAgICAgIC0tUmV0dXJuLS0KLSAgICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlWzhdPigzKWNhbGxzX3NldF90cmFjZSgpLT5Ob25lCi0gICAgICAtPiBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKLSAgICAgIChQZGIpIHByaW50KHkpCi0gICAgICAyCi0gICAgICAoUGRiKSB1cAotICAgICAgPiA8ZG9jdGVzdCBmb28tYmFyQGJhelsxXT4oMSk8bW9kdWxlPigpCi0gICAgICAtPiBjYWxsc19zZXRfdHJhY2UoKQotICAgICAgKFBkYikgcHJpbnQoeCkKLSAgICAgIDEKLSAgICAgIChQZGIpIGNvbnRpbnVlCi0gICAgICBUZXN0UmVzdWx0cyhmYWlsZWQ9MCwgYXR0ZW1wdGVkPTIpCisgICAgICAgICAgPj4+IHRyeToKKyAgICAgICAgICAuLi4gICAgIHJ1bm5lci5ydW4odGVzdCkKKyAgICAgICAgICAuLi4gZmluYWxseToKKyAgICAgICAgICAuLi4gICAgIHN5cy5zdGRpbiA9IHJlYWxfc3RkaW4KKyAgICAgICAgICAtLVJldHVybi0tCisgICAgICAgICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VbOF0+KDMpY2FsbHNfc2V0X3RyYWNlKCktPk5vbmUKKyAgICAgICAgICAtPiBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKKyAgICAgICAgICAoUGRiKSBwcmludCh5KQorICAgICAgICAgIDIKKyAgICAgICAgICAoUGRiKSB1cAorICAgICAgICAgID4gPGRvY3Rlc3QgZm9vLWJhckBiYXpbMV0+KDEpPG1vZHVsZT4oKQorICAgICAgICAgIC0+IGNhbGxzX3NldF90cmFjZSgpCisgICAgICAgICAgKFBkYikgcHJpbnQoeCkKKyAgICAgICAgICAxCisgICAgICAgICAgKFBkYikgY29udGludWUKKyAgICAgICAgICBUZXN0UmVzdWx0cyhmYWlsZWQ9MCwgYXR0ZW1wdGVkPTIpCiAKLSAgICBEdXJpbmcgaW50ZXJhY3RpdmUgZGVidWdnaW5nLCBzb3VyY2UgY29kZSBpcyBzaG93biwgZXZlbiBmb3IKLSAgICBkb2N0ZXN0IGV4YW1wbGVzOgorICAgICAgICBEdXJpbmcgaW50ZXJhY3RpdmUgZGVidWdnaW5nLCBzb3VyY2UgY29kZSBpcyBzaG93biwgZXZlbiBmb3IKKyAgICAgICAgZG9jdGVzdCBleGFtcGxlczoKIAotICAgICAgPj4+IGRvYyA9ICcnJwotICAgICAgLi4uID4+PiBkZWYgZih4KToKLSAgICAgIC4uLiAuLi4gICAgIGcoeCoyKQotICAgICAgLi4uID4+PiBkZWYgZyh4KToKLSAgICAgIC4uLiAuLi4gICAgIHByaW50KHgrMykKLSAgICAgIC4uLiAuLi4gICAgIGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQotICAgICAgLi4uID4+PiBmKDMpCi0gICAgICAuLi4gJycnCi0gICAgICA+Pj4gdGVzdCA9IHBhcnNlci5nZXRfZG9jdGVzdChkb2MsIGdsb2JhbHMoKSwgImZvby1iYXJAYmF6IiwgImZvby1iYXJAYmF6LnB5IiwgMCkKLSAgICAgID4+PiByZWFsX3N0ZGluID0gc3lzLnN0ZGluCi0gICAgICA+Pj4gc3lzLnN0ZGluID0gX0Zha2VJbnB1dChbCi0gICAgICAuLi4gICAgJ2xpc3QnLCAgICAgIyBsaXN0IHNvdXJjZSBmcm9tIGV4YW1wbGUgMgotICAgICAgLi4uICAgICduZXh0JywgICAgICMgcmV0dXJuIGZyb20gZygpCi0gICAgICAuLi4gICAgJ2xpc3QnLCAgICAgIyBsaXN0IHNvdXJjZSBmcm9tIGV4YW1wbGUgMQotICAgICAgLi4uICAgICduZXh0JywgICAgICMgcmV0dXJuIGZyb20gZigpCi0gICAgICAuLi4gICAgJ2xpc3QnLCAgICAgIyBsaXN0IHNvdXJjZSBmcm9tIGV4YW1wbGUgMwotICAgICAgLi4uICAgICdjb250aW51ZScsICMgc3RvcCBkZWJ1Z2dpbmcKLSAgICAgIC4uLiAgICAnJ10pCi0gICAgICA+Pj4gdHJ5OiBydW5uZXIucnVuKHRlc3QpCi0gICAgICAuLi4gZmluYWxseTogc3lzLnN0ZGluID0gcmVhbF9zdGRpbgotICAgICAgLi4uICMgZG9jdGVzdDogK05PUk1BTElaRV9XSElURVNQQUNFCi0gICAgICAtLVJldHVybi0tCi0gICAgICA+IDxkb2N0ZXN0IGZvby1iYXJAYmF6WzFdPigzKWcoKS0+Tm9uZQotICAgICAgLT4gaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCi0gICAgICAoUGRiKSBsaXN0Ci0gICAgICAgIDEgICAgIGRlZiBnKHgpOgotICAgICAgICAyICAgICAgICAgcHJpbnQoeCszKQotICAgICAgICAzICAtPiAgICAgaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCi0gICAgICBbRU9GXQotICAgICAgKFBkYikgbmV4dAotICAgICAgLS1SZXR1cm4tLQotICAgICAgPiA8ZG9jdGVzdCBmb28tYmFyQGJhelswXT4oMilmKCktPk5vbmUKLSAgICAgIC0+IGcoeCoyKQotICAgICAgKFBkYikgbGlzdAotICAgICAgICAxICAgICBkZWYgZih4KToKLSAgICAgICAgMiAgLT4gICAgIGcoeCoyKQotICAgICAgW0VPRl0KLSAgICAgIChQZGIpIG5leHQKLSAgICAgIC0tUmV0dXJuLS0KLSAgICAgID4gPGRvY3Rlc3QgZm9vLWJhckBiYXpbMl0+KDEpPG1vZHVsZT4oKS0+Tm9uZQotICAgICAgLT4gZigzKQotICAgICAgKFBkYikgbGlzdAotICAgICAgICAxICAtPiBmKDMpCi0gICAgICBbRU9GXQotICAgICAgKFBkYikgY29udGludWUKLSAgICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgICAgIEZpbGUgImZvby1iYXJAYmF6LnB5IiwgbGluZSA3LCBpbiBmb28tYmFyQGJhegotICAgICAgRmFpbGVkIGV4YW1wbGU6Ci0gICAgICAgICAgZigzKQotICAgICAgRXhwZWN0ZWQgbm90aGluZwotICAgICAgR290OgotICAgICAgICAgIDkKLSAgICAgIFRlc3RSZXN1bHRzKGZhaWxlZD0xLCBhdHRlbXB0ZWQ9MykKLSAgICAgICIiIgorICAgICAgICAgID4+PiBkb2MgPSAnJycKKyAgICAgICAgICAuLi4gPj4+IGRlZiBmKHgpOgorICAgICAgICAgIC4uLiAuLi4gICAgIGcoeCoyKQorICAgICAgICAgIC4uLiA+Pj4gZGVmIGcoeCk6CisgICAgICAgICAgLi4uIC4uLiAgICAgcHJpbnQoeCszKQorICAgICAgICAgIC4uLiAuLi4gICAgIGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQorICAgICAgICAgIC4uLiA+Pj4gZigzKQorICAgICAgICAgIC4uLiAnJycKKyAgICAgICAgICA+Pj4gdGVzdCA9IHBhcnNlci5nZXRfZG9jdGVzdChkb2MsIGdsb2JhbHMoKSwgImZvby1iYXJAYmF6IiwgImZvby1iYXJAYmF6LnB5IiwgMCkKKyAgICAgICAgICA+Pj4gcmVhbF9zdGRpbiA9IHN5cy5zdGRpbgorICAgICAgICAgID4+PiBzeXMuc3RkaW4gPSBfRmFrZUlucHV0KFsKKyAgICAgICAgICAuLi4gICAgJ2xpc3QnLCAgICAgIyBsaXN0IHNvdXJjZSBmcm9tIGV4YW1wbGUgMgorICAgICAgICAgIC4uLiAgICAnbmV4dCcsICAgICAjIHJldHVybiBmcm9tIGcoKQorICAgICAgICAgIC4uLiAgICAnbGlzdCcsICAgICAjIGxpc3Qgc291cmNlIGZyb20gZXhhbXBsZSAxCisgICAgICAgICAgLi4uICAgICduZXh0JywgICAgICMgcmV0dXJuIGZyb20gZigpCisgICAgICAgICAgLi4uICAgICdsaXN0JywgICAgICMgbGlzdCBzb3VyY2UgZnJvbSBleGFtcGxlIDMKKyAgICAgICAgICAuLi4gICAgJ2NvbnRpbnVlJywgIyBzdG9wIGRlYnVnZ2luZworICAgICAgICAgIC4uLiAgICAnJ10pCisgICAgICAgICAgPj4+IHRyeTogcnVubmVyLnJ1bih0ZXN0KQorICAgICAgICAgIC4uLiBmaW5hbGx5OiBzeXMuc3RkaW4gPSByZWFsX3N0ZGluCisgICAgICAgICAgLi4uICMgZG9jdGVzdDogK05PUk1BTElaRV9XSElURVNQQUNFCisgICAgICAgICAgLS1SZXR1cm4tLQorICAgICAgICAgID4gPGRvY3Rlc3QgZm9vLWJhckBiYXpbMV0+KDMpZygpLT5Ob25lCisgICAgICAgICAgLT4gaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCisgICAgICAgICAgKFBkYikgbGlzdAorICAgICAgICAgICAgMSAgICAgZGVmIGcoeCk6CisgICAgICAgICAgICAyICAgICAgICAgcHJpbnQoeCszKQorICAgICAgICAgICAgMyAgLT4gICAgIGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQorICAgICAgICAgIFtFT0ZdCisgICAgICAgICAgKFBkYikgbmV4dAorICAgICAgICAgIC0tUmV0dXJuLS0KKyAgICAgICAgICA+IDxkb2N0ZXN0IGZvby1iYXJAYmF6WzBdPigyKWYoKS0+Tm9uZQorICAgICAgICAgIC0+IGcoeCoyKQorICAgICAgICAgIChQZGIpIGxpc3QKKyAgICAgICAgICAgIDEgICAgIGRlZiBmKHgpOgorICAgICAgICAgICAgMiAgLT4gICAgIGcoeCoyKQorICAgICAgICAgIFtFT0ZdCisgICAgICAgICAgKFBkYikgbmV4dAorICAgICAgICAgIC0tUmV0dXJuLS0KKyAgICAgICAgICA+IDxkb2N0ZXN0IGZvby1iYXJAYmF6WzJdPigxKTxtb2R1bGU+KCktPk5vbmUKKyAgICAgICAgICAtPiBmKDMpCisgICAgICAgICAgKFBkYikgbGlzdAorICAgICAgICAgICAgMSAgLT4gZigzKQorICAgICAgICAgIFtFT0ZdCisgICAgICAgICAgKFBkYikgY29udGludWUKKyAgICAgICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgICAgICAgICAgRmlsZSAiZm9vLWJhckBiYXoucHkiLCBsaW5lIDcsIGluIGZvby1iYXJAYmF6CisgICAgICAgICAgRmFpbGVkIGV4YW1wbGU6CisgICAgICAgICAgICAgIGYoMykKKyAgICAgICAgICBFeHBlY3RlZCBub3RoaW5nCisgICAgICAgICAgR290OgorICAgICAgICAgICAgICA5CisgICAgICAgICAgVGVzdFJlc3VsdHMoZmFpbGVkPTEsIGF0dGVtcHRlZD0zKQorICAgICAgICAgICIiIgogCi1kZWYgdGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZCgpOgotICAgICIiIlRoaXMgaWxsdXN0cmF0ZXMgbW9yZS1kZW1hbmRpbmcgdXNlIG9mIHNldF90cmFjZSB3aXRoIG5lc3RlZCBmdW5jdGlvbnMuCisgICAgZGVmIHRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWQoKToKKyAgICAgICAgIiIiVGhpcyBpbGx1c3RyYXRlcyBtb3JlLWRlbWFuZGluZyB1c2Ugb2Ygc2V0X3RyYWNlIHdpdGggbmVzdGVkIGZ1bmN0aW9ucy4KIAotICAgID4+PiBjbGFzcyBDKG9iamVjdCk6Ci0gICAgLi4uICAgICBkZWYgY2FsbHNfc2V0X3RyYWNlKHNlbGYpOgotICAgIC4uLiAgICAgICAgIHkgPSAxCi0gICAgLi4uICAgICAgICAgaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCi0gICAgLi4uICAgICAgICAgc2VsZi5mMSgpCi0gICAgLi4uICAgICAgICAgeSA9IDIKLSAgICAuLi4gICAgIGRlZiBmMShzZWxmKToKLSAgICAuLi4gICAgICAgICB4ID0gMQotICAgIC4uLiAgICAgICAgIHNlbGYuZjIoKQotICAgIC4uLiAgICAgICAgIHggPSAyCi0gICAgLi4uICAgICBkZWYgZjIoc2VsZik6Ci0gICAgLi4uICAgICAgICAgeiA9IDEKLSAgICAuLi4gICAgICAgICB6ID0gMgorICAgICAgICA+Pj4gY2xhc3MgQyhvYmplY3QpOgorICAgICAgICAuLi4gICAgIGRlZiBjYWxsc19zZXRfdHJhY2Uoc2VsZik6CisgICAgICAgIC4uLiAgICAgICAgIHkgPSAxCisgICAgICAgIC4uLiAgICAgICAgIGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQorICAgICAgICAuLi4gICAgICAgICBzZWxmLmYxKCkKKyAgICAgICAgLi4uICAgICAgICAgeSA9IDIKKyAgICAgICAgLi4uICAgICBkZWYgZjEoc2VsZik6CisgICAgICAgIC4uLiAgICAgICAgIHggPSAxCisgICAgICAgIC4uLiAgICAgICAgIHNlbGYuZjIoKQorICAgICAgICAuLi4gICAgICAgICB4ID0gMgorICAgICAgICAuLi4gICAgIGRlZiBmMihzZWxmKToKKyAgICAgICAgLi4uICAgICAgICAgeiA9IDEKKyAgICAgICAgLi4uICAgICAgICAgeiA9IDIKIAotICAgID4+PiBjYWxsc19zZXRfdHJhY2UgPSBDKCkuY2FsbHNfc2V0X3RyYWNlCisgICAgICAgID4+PiBjYWxsc19zZXRfdHJhY2UgPSBDKCkuY2FsbHNfc2V0X3RyYWNlCiAKLSAgICA+Pj4gZG9jID0gJycnCi0gICAgLi4uID4+PiBhID0gMQotICAgIC4uLiA+Pj4gY2FsbHNfc2V0X3RyYWNlKCkKLSAgICAuLi4gJycnCi0gICAgPj4+IHBhcnNlciA9IGRvY3Rlc3QuRG9jVGVzdFBhcnNlcigpCi0gICAgPj4+IHJ1bm5lciA9IGRvY3Rlc3QuRG9jVGVzdFJ1bm5lcih2ZXJib3NlPUZhbHNlKQotICAgID4+PiB0ZXN0ID0gcGFyc2VyLmdldF9kb2N0ZXN0KGRvYywgZ2xvYmFscygpLCAiZm9vLWJhckBiYXoiLCAiZm9vLWJhckBiYXoucHkiLCAwKQotICAgID4+PiByZWFsX3N0ZGluID0gc3lzLnN0ZGluCi0gICAgPj4+IHN5cy5zdGRpbiA9IF9GYWtlSW5wdXQoWwotICAgIC4uLiAgICAncHJpbnQoeSknLCAgIyBwcmludCBkYXRhIGRlZmluZWQgaW4gdGhlIGZ1bmN0aW9uCi0gICAgLi4uICAgICdzdGVwJywgJ3N0ZXAnLCAnc3RlcCcsICdzdGVwJywgJ3N0ZXAnLCAnc3RlcCcsICdwcmludCh6KScsCi0gICAgLi4uICAgICd1cCcsICdwcmludCh4KScsCi0gICAgLi4uICAgICd1cCcsICdwcmludCh5KScsCi0gICAgLi4uICAgICd1cCcsICdwcmludChmb28pJywKLSAgICAuLi4gICAgJ2NvbnRpbnVlJywgIyBzdG9wIGRlYnVnZ2luZwotICAgIC4uLiAgICAnJ10pCisgICAgICAgID4+PiBkb2MgPSAnJycKKyAgICAgICAgLi4uID4+PiBhID0gMQorICAgICAgICAuLi4gPj4+IGNhbGxzX3NldF90cmFjZSgpCisgICAgICAgIC4uLiAnJycKKyAgICAgICAgPj4+IHBhcnNlciA9IGRvY3Rlc3QuRG9jVGVzdFBhcnNlcigpCisgICAgICAgID4+PiBydW5uZXIgPSBkb2N0ZXN0LkRvY1Rlc3RSdW5uZXIodmVyYm9zZT1GYWxzZSkKKyAgICAgICAgPj4+IHRlc3QgPSBwYXJzZXIuZ2V0X2RvY3Rlc3QoZG9jLCBnbG9iYWxzKCksICJmb28tYmFyQGJheiIsICJmb28tYmFyQGJhei5weSIsIDApCisgICAgICAgID4+PiByZWFsX3N0ZGluID0gc3lzLnN0ZGluCisgICAgICAgID4+PiBzeXMuc3RkaW4gPSBfRmFrZUlucHV0KFsKKyAgICAgICAgLi4uICAgICdwcmludCh5KScsICAjIHByaW50IGRhdGEgZGVmaW5lZCBpbiB0aGUgZnVuY3Rpb24KKyAgICAgICAgLi4uICAgICdzdGVwJywgJ3N0ZXAnLCAnc3RlcCcsICdzdGVwJywgJ3N0ZXAnLCAnc3RlcCcsICdwcmludCh6KScsCisgICAgICAgIC4uLiAgICAndXAnLCAncHJpbnQoeCknLAorICAgICAgICAuLi4gICAgJ3VwJywgJ3ByaW50KHkpJywKKyAgICAgICAgLi4uICAgICd1cCcsICdwcmludChmb28pJywKKyAgICAgICAgLi4uICAgICdjb250aW51ZScsICMgc3RvcCBkZWJ1Z2dpbmcKKyAgICAgICAgLi4uICAgICcnXSkKIAotICAgID4+PiB0cnk6Ci0gICAgLi4uICAgICBydW5uZXIucnVuKHRlc3QpCi0gICAgLi4uIGZpbmFsbHk6Ci0gICAgLi4uICAgICBzeXMuc3RkaW4gPSByZWFsX3N0ZGluCi0gICAgLi4uICMgZG9jdGVzdDogK1JFUE9SVF9ORElGRgotICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oNSljYWxsc19zZXRfdHJhY2UoKQotICAgIC0+IHNlbGYuZjEoKQotICAgIChQZGIpIHByaW50KHkpCi0gICAgMQotICAgIChQZGIpIHN0ZXAKLSAgICAtLUNhbGwtLQotICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oNylmMSgpCi0gICAgLT4gZGVmIGYxKHNlbGYpOgotICAgIChQZGIpIHN0ZXAKLSAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDgpZjEoKQotICAgIC0+IHggPSAxCi0gICAgKFBkYikgc3RlcAotICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oOSlmMSgpCi0gICAgLT4gc2VsZi5mMigpCi0gICAgKFBkYikgc3RlcAotICAgIC0tQ2FsbC0tCi0gICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPigxMSlmMigpCi0gICAgLT4gZGVmIGYyKHNlbGYpOgotICAgIChQZGIpIHN0ZXAKLSAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDEyKWYyKCkKLSAgICAtPiB6ID0gMQotICAgIChQZGIpIHN0ZXAKLSAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDEzKWYyKCkKLSAgICAtPiB6ID0gMgotICAgIChQZGIpIHByaW50KHopCi0gICAgMQotICAgIChQZGIpIHVwCi0gICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPig5KWYxKCkKLSAgICAtPiBzZWxmLmYyKCkKLSAgICAoUGRiKSBwcmludCh4KQotICAgIDEKLSAgICAoUGRiKSB1cAotICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oNSljYWxsc19zZXRfdHJhY2UoKQotICAgIC0+IHNlbGYuZjEoKQotICAgIChQZGIpIHByaW50KHkpCi0gICAgMQotICAgIChQZGIpIHVwCi0gICAgPiA8ZG9jdGVzdCBmb28tYmFyQGJhelsxXT4oMSk8bW9kdWxlPigpCi0gICAgLT4gY2FsbHNfc2V0X3RyYWNlKCkKLSAgICAoUGRiKSBwcmludChmb28pCi0gICAgKioqIE5hbWVFcnJvcjogbmFtZSAnZm9vJyBpcyBub3QgZGVmaW5lZAotICAgIChQZGIpIGNvbnRpbnVlCi0gICAgVGVzdFJlc3VsdHMoZmFpbGVkPTAsIGF0dGVtcHRlZD0yKQotIiIiCisgICAgICAgID4+PiB0cnk6CisgICAgICAgIC4uLiAgICAgcnVubmVyLnJ1bih0ZXN0KQorICAgICAgICAuLi4gZmluYWxseToKKyAgICAgICAgLi4uICAgICBzeXMuc3RkaW4gPSByZWFsX3N0ZGluCisgICAgICAgIC4uLiAjIGRvY3Rlc3Q6ICtSRVBPUlRfTkRJRkYKKyAgICAgICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPig1KWNhbGxzX3NldF90cmFjZSgpCisgICAgICAgIC0+IHNlbGYuZjEoKQorICAgICAgICAoUGRiKSBwcmludCh5KQorICAgICAgICAxCisgICAgICAgIChQZGIpIHN0ZXAKKyAgICAgICAgLS1DYWxsLS0KKyAgICAgICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPig3KWYxKCkKKyAgICAgICAgLT4gZGVmIGYxKHNlbGYpOgorICAgICAgICAoUGRiKSBzdGVwCisgICAgICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oOClmMSgpCisgICAgICAgIC0+IHggPSAxCisgICAgICAgIChQZGIpIHN0ZXAKKyAgICAgICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPig5KWYxKCkKKyAgICAgICAgLT4gc2VsZi5mMigpCisgICAgICAgIChQZGIpIHN0ZXAKKyAgICAgICAgLS1DYWxsLS0KKyAgICAgICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPigxMSlmMigpCisgICAgICAgIC0+IGRlZiBmMihzZWxmKToKKyAgICAgICAgKFBkYikgc3RlcAorICAgICAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDEyKWYyKCkKKyAgICAgICAgLT4geiA9IDEKKyAgICAgICAgKFBkYikgc3RlcAorICAgICAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDEzKWYyKCkKKyAgICAgICAgLT4geiA9IDIKKyAgICAgICAgKFBkYikgcHJpbnQoeikKKyAgICAgICAgMQorICAgICAgICAoUGRiKSB1cAorICAgICAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDkpZjEoKQorICAgICAgICAtPiBzZWxmLmYyKCkKKyAgICAgICAgKFBkYikgcHJpbnQoeCkKKyAgICAgICAgMQorICAgICAgICAoUGRiKSB1cAorICAgICAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDUpY2FsbHNfc2V0X3RyYWNlKCkKKyAgICAgICAgLT4gc2VsZi5mMSgpCisgICAgICAgIChQZGIpIHByaW50KHkpCisgICAgICAgIDEKKyAgICAgICAgKFBkYikgdXAKKyAgICAgICAgPiA8ZG9jdGVzdCBmb28tYmFyQGJhelsxXT4oMSk8bW9kdWxlPigpCisgICAgICAgIC0+IGNhbGxzX3NldF90cmFjZSgpCisgICAgICAgIChQZGIpIHByaW50KGZvbykKKyAgICAgICAgKioqIE5hbWVFcnJvcjogbmFtZSAnZm9vJyBpcyBub3QgZGVmaW5lZAorICAgICAgICAoUGRiKSBjb250aW51ZQorICAgICAgICBUZXN0UmVzdWx0cyhmYWlsZWQ9MCwgYXR0ZW1wdGVkPTIpCisgICAgIiIiCiAKIGRlZiB0ZXN0X0RvY1Rlc3RTdWl0ZSgpOgogICAgICIiIkRvY1Rlc3RTdWl0ZSBjcmVhdGVzIGEgdW5pdHRlc3QgdGVzdCBzdWl0ZSBmcm9tIGEgZG9jdGVzdC4KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZHVtbXlfdGhyZWFkLnB5IGIvTGliL3Rlc3QvdGVzdF9kdW1teV90aHJlYWQucHkKaW5kZXggYzYxMDc4ZC4uMmZhZmUxZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9kdW1teV90aHJlYWQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9kdW1teV90aHJlYWQucHkKQEAgLTM1LDggKzM1LDggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICJMb2NrIG9iamVjdCBkaWQgbm90IHJlbGVhc2UgcHJvcGVybHkuIikKIAogICAgIGRlZiB0ZXN0X2ltcHJvcGVyX3JlbGVhc2Uoc2VsZik6Ci0gICAgICAgICNNYWtlIHN1cmUgcmVsZWFzZSBvZiBhbiB1bmxvY2tlZCB0aHJlYWQgcmFpc2VzIF90aHJlYWQuZXJyb3IKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoX3RocmVhZC5lcnJvciwgc2VsZi5sb2NrLnJlbGVhc2UpCisgICAgICAgICNNYWtlIHN1cmUgcmVsZWFzZSBvZiBhbiB1bmxvY2tlZCB0aHJlYWQgcmFpc2VzIFJ1bnRpbWVFcnJvcgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIHNlbGYubG9jay5yZWxlYXNlKQogCiAgICAgZGVmIHRlc3RfY29uZF9hY3F1aXJlX3N1Y2Nlc3Moc2VsZik6CiAgICAgICAgICNNYWtlIHN1cmUgdGhlIGNvbmRpdGlvbmFsIGFjcXVpcmluZyBvZiB0aGUgbG9jayB3b3Jrcy4KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZW1haWwucHkgYi9MaWIvdGVzdC90ZXN0X2VtYWlsLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZWViYmE1Li4wMDAwMDAwCi0tLSBhL0xpYi90ZXN0L3Rlc3RfZW1haWwucHkKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi0jIENvcHlyaWdodCAoQykgMjAwMS0yMDA3IFB5dGhvbiBTb2Z0d2FyZSBGb3VuZGF0aW9uCi0jIGVtYWlsIHBhY2thZ2UgdW5pdCB0ZXN0cwotCi0jIFRoZSBzcGVjaWZpYyB0ZXN0cyBub3cgbGl2ZSBpbiBMaWIvZW1haWwvdGVzdAotZnJvbSBlbWFpbC50ZXN0LnRlc3RfZW1haWwgaW1wb3J0IHN1aXRlCi1mcm9tIGVtYWlsLnRlc3QudGVzdF9lbWFpbF9jb2RlY3MgaW1wb3J0IHN1aXRlIGFzIGNvZGVjc19zdWl0ZQotZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0Ci0KLWRlZiB0ZXN0X21haW4oKToKLSAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChzdWl0ZSgpKQotICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KGNvZGVjc19zdWl0ZSgpKQotCi1pZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgotICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2VtYWlsL19faW5pdF9fLnB5IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9fX2luaXRfXy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yODBhZmJkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9fX2luaXRfXy5weQpAQCAtMCwwICsxLDQ1IEBACitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB1bml0dGVzdAoraW1wb3J0IHRlc3Quc3VwcG9ydAoraW1wb3J0IGVtYWlsCitmcm9tIHRlc3QudGVzdF9lbWFpbCBpbXBvcnQgX19maWxlX18gYXMgbGFuZG1hcmsKKworIyB1c2VkIGJ5IHJlZ3J0ZXN0IGFuZCBfX21haW5fXy4KK2RlZiB0ZXN0X21haW4oKToKKyAgICBoZXJlID0gb3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKQorICAgICMgVW5pdHRlc3QgbXVja3Mgd2l0aCB0aGUgcGF0aCwgc28gd2UgaGF2ZSB0byBzYXZlIGFuZCByZXN0b3JlCisgICAgIyBpdCB0byBrZWVwIHJlZ3J0ZXN0IGhhcHB5LgorICAgIHNhdmVwYXRoID0gc3lzLnBhdGhbOl0KKyAgICB0ZXN0LnN1cHBvcnQuX3J1bl9zdWl0ZSh1bml0dGVzdC5kZWZhdWx0VGVzdExvYWRlci5kaXNjb3ZlcihoZXJlKSkKKyAgICBzeXMucGF0aFs6XSA9IHNhdmVwYXRoCisKKworIyBoZWxwZXIgY29kZSB1c2VkIGJ5IGEgbnVtYmVyIG9mIHRlc3QgbW9kdWxlcy4KKworZGVmIG9wZW5maWxlKGZpbGVuYW1lLCAqYXJncywgKiprd3MpOgorICAgIHBhdGggPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKGxhbmRtYXJrKSwgJ2RhdGEnLCBmaWxlbmFtZSkKKyAgICByZXR1cm4gb3BlbihwYXRoLCAqYXJncywgKiprd3MpCisKKworIyBCYXNlIHRlc3QgY2xhc3MKK2NsYXNzIFRlc3RFbWFpbEJhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgbWF4RGlmZiA9IE5vbmUKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqYXJncywgKiprdyk6CisgICAgICAgIHN1cGVyKCkuX19pbml0X18oKmFyZ3MsICoqa3cpCisgICAgICAgIHNlbGYuYWRkVHlwZUVxdWFsaXR5RnVuYyhieXRlcywgc2VsZi5hc3NlcnRCeXRlc0VxdWFsKQorCisgICAgbmRpZmZBc3NlcnRFcXVhbCA9IHVuaXR0ZXN0LlRlc3RDYXNlLmFzc2VydEVxdWFsCisKKyAgICBkZWYgX21zZ29iaihzZWxmLCBmaWxlbmFtZSk6CisgICAgICAgIHdpdGggb3BlbmZpbGUoZmlsZW5hbWUpIGFzIGZwOgorICAgICAgICAgICAgcmV0dXJuIGVtYWlsLm1lc3NhZ2VfZnJvbV9maWxlKGZwKQorCisgICAgZGVmIF9ieXRlc19yZXByKHNlbGYsIGIpOgorICAgICAgICByZXR1cm4gW3JlcHIoeCkgZm9yIHggaW4gYi5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpXQorCisgICAgZGVmIGFzc2VydEJ5dGVzRXF1YWwoc2VsZiwgZmlyc3QsIHNlY29uZCwgbXNnKToKKyAgICAgICAgIiIiT3VyIGJ5dGUgc3RyaW5ncyBhcmUgcmVhbGx5IGVuY29kZWQgc3RyaW5nczsgaW1wcm92ZSBkaWZmIG91dHB1dCIiIgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuX2J5dGVzX3JlcHIoZmlyc3QpLCBzZWxmLl9ieXRlc19yZXByKHNlY29uZCkpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2VtYWlsL19fbWFpbl9fLnB5IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9fX21haW5fXy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OGFmOWVjCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9fX21haW5fXy5weQpAQCAtMCwwICsxLDMgQEAKK2Zyb20gdGVzdC50ZXN0X2VtYWlsIGltcG9ydCB0ZXN0X21haW4KKwordGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvUHlCYW5uZXIwNDguZ2lmIGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL1B5QmFubmVyMDQ4LmdpZgpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9QeUJhbm5lcjA0OC5naWYKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9QeUJhbm5lcjA0OC5naWYKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9hdWRpb3Rlc3QuYXUgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvYXVkaW90ZXN0LmF1CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL2F1ZGlvdGVzdC5hdQpyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL2F1ZGlvdGVzdC5hdQpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wMS50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzAxLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDEudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzAxLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDIudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wMi50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzAyLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wMi50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzAzLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDMudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wMy50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDMudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wNC50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzA0LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDQudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzA0LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDUudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wNS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzA1LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wNS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzA2LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDYudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wNi50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDYudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wNy50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzA3LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDcudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzA3LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDgudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wOC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzA4LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wOC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzA5LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDkudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wOS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDkudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xMC50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzEwLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTAudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzEwLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTEudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xMS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzExLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xMS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzEyLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTIudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xMi50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTIudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xMmEudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xMmEudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xMmEudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzEyYS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzEzLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTMudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xMy50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTMudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xNC50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzE0LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTQudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzE0LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTUudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xNS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzE1LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xNS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzE2LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTYudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xNi50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTYudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xNy50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzE3LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTcudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzE3LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTgudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xOC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzE4LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xOC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzE5LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTkudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xOS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTkudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yMC50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzIwLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjAudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzIwLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjEudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yMS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzIxLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yMS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzIyLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjIudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yMi50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjIudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yMy50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzIzLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjMudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzIzLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjQudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yNC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzI0LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yNC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzI1LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjUudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yNS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjUudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yNi50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI2LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjYudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI2LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjcudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yNy50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzI3LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yNy50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzI4LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjgudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yOC50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjgudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yOS50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI5LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjkudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI5LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzAudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zMC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzMwLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zMC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzMxLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzEudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zMS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzEudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zMi50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzMyLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzIudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzMyLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzMudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zMy50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzMzLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zMy50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzM0LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zNC50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzQudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zNS50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzM1LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzUudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzM1LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzYudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zNi50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzM2LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zNi50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzM3LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzcudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zNy50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzcudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zOC50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzM4LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzgudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzM4LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzkudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zOS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzM5LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zOS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzQwLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDAudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ180MC50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDAudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ180MS50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQxLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfNDEudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQxLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfNDIudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ180Mi50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzQyLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ180Mi50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzQzLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDMudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ180My50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDMudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ180NC50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQ0LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfNDQudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQ0LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfNDUudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ180NS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzQ1LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ180NS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzQ2LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDYudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ180Ni50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDYudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC90ZXN0X2VtYWlsX2NvZGVjcy5weSBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvdGVzdF9hc2lhbl9jb2RlY3MucHkKc2ltaWxhcml0eSBpbmRleCA5MSUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvdGVzdF9lbWFpbF9jb2RlY3MucHkKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvdGVzdF9hc2lhbl9jb2RlY3MucHkKaW5kZXggY2E4NWY1Ny4uYTRkZDlhOSAxMDA2NDQKLS0tIGEvTGliL2VtYWlsL3Rlc3QvdGVzdF9lbWFpbF9jb2RlY3MucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9lbWFpbC90ZXN0X2FzaWFuX2NvZGVjcy5weQpAQCAtNSw3ICs1LDcgQEAKIGltcG9ydCB1bml0dGVzdAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdAogCi1mcm9tIGVtYWlsLnRlc3QudGVzdF9lbWFpbCBpbXBvcnQgVGVzdEVtYWlsQmFzZQorZnJvbSB0ZXN0LnRlc3RfZW1haWwudGVzdF9lbWFpbCBpbXBvcnQgVGVzdEVtYWlsQmFzZQogZnJvbSBlbWFpbC5jaGFyc2V0IGltcG9ydCBDaGFyc2V0CiBmcm9tIGVtYWlsLmhlYWRlciBpbXBvcnQgSGVhZGVyLCBkZWNvZGVfaGVhZGVyCiBmcm9tIGVtYWlsLm1lc3NhZ2UgaW1wb3J0IE1lc3NhZ2UKQEAgLTc4LDE2ICs3OCw1IEBACiAKIAogDAotZGVmIHN1aXRlKCk6Ci0gICAgc3VpdGUgPSB1bml0dGVzdC5UZXN0U3VpdGUoKQotICAgIHN1aXRlLmFkZFRlc3QodW5pdHRlc3QubWFrZVN1aXRlKFRlc3RFbWFpbEFzaWFuQ29kZWNzKSkKLSAgICByZXR1cm4gc3VpdGUKLQotCi1kZWYgdGVzdF9tYWluKCk6Ci0gICAgcnVuX3VuaXR0ZXN0KFRlc3RFbWFpbEFzaWFuQ29kZWNzKQotCi0KLQwKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6Ci0gICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0nc3VpdGUnKQorICAgIHVuaXR0ZXN0Lm1haW4oKQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvdGVzdF9lbWFpbC5weSBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvdGVzdF9lbWFpbC5weQpzaW1pbGFyaXR5IGluZGV4IDk0JQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC90ZXN0X2VtYWlsLnB5CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfZW1haWwucHkKaW5kZXggMTAyZTE1Yi4uMTIxYzkzOSAxMDA2NDQKLS0tIGEvTGliL2VtYWlsL3Rlc3QvdGVzdF9lbWFpbC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfZW1haWwucHkKQEAgLTM2LDQwICszNiwxNCBAQAogZnJvbSBlbWFpbCBpbXBvcnQgYmFzZTY0bWltZQogZnJvbSBlbWFpbCBpbXBvcnQgcXVvcHJpbWltZQogCi1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgZmluZGZpbGUsIHJ1bl91bml0dGVzdCwgdW5saW5rCi1mcm9tIGVtYWlsLnRlc3QgaW1wb3J0IF9fZmlsZV9fIGFzIGxhbmRtYXJrCi0KK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QsIHVubGluaworZnJvbSB0ZXN0LnRlc3RfZW1haWwgaW1wb3J0IG9wZW5maWxlLCBUZXN0RW1haWxCYXNlCiAKIE5MID0gJ1xuJwogRU1QVFlTVFJJTkcgPSAnJwogU1BBQ0UgPSAnICcKIAogCi0KLWRlZiBvcGVuZmlsZShmaWxlbmFtZSwgKmFyZ3MsICoqa3dzKToKLSAgICBwYXRoID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShsYW5kbWFyayksICdkYXRhJywgZmlsZW5hbWUpCi0gICAgcmV0dXJuIG9wZW4ocGF0aCwgKmFyZ3MsICoqa3dzKQotCi0KLQotIyBCYXNlIHRlc3QgY2xhc3MKLWNsYXNzIFRlc3RFbWFpbEJhc2UodW5pdHRlc3QuVGVzdENhc2UpOgotICAgIGRlZiBuZGlmZkFzc2VydEVxdWFsKHNlbGYsIGZpcnN0LCBzZWNvbmQpOgotICAgICAgICAiIiJMaWtlIGFzc2VydEVxdWFsIGV4Y2VwdCB1c2UgbmRpZmYgZm9yIHJlYWRhYmxlIG91dHB1dC4iIiIKLSAgICAgICAgaWYgZmlyc3QgIT0gc2Vjb25kOgotICAgICAgICAgICAgc2ZpcnN0ID0gc3RyKGZpcnN0KQotICAgICAgICAgICAgc3NlY29uZCA9IHN0cihzZWNvbmQpCi0gICAgICAgICAgICByZmlyc3QgPSBbcmVwcihsaW5lKSBmb3IgbGluZSBpbiBzZmlyc3Quc3BsaXRsaW5lcygpXQotICAgICAgICAgICAgcnNlY29uZCA9IFtyZXByKGxpbmUpIGZvciBsaW5lIGluIHNzZWNvbmQuc3BsaXRsaW5lcygpXQotICAgICAgICAgICAgZGlmZiA9IGRpZmZsaWIubmRpZmYocmZpcnN0LCByc2Vjb25kKQotICAgICAgICAgICAgcmFpc2Ugc2VsZi5mYWlsdXJlRXhjZXB0aW9uKE5MICsgTkwuam9pbihkaWZmKSkKLQotICAgIGRlZiBfbXNnb2JqKHNlbGYsIGZpbGVuYW1lKToKLSAgICAgICAgd2l0aCBvcGVuZmlsZShmaW5kZmlsZShmaWxlbmFtZSkpIGFzIGZwOgotICAgICAgICAgICAgcmV0dXJuIGVtYWlsLm1lc3NhZ2VfZnJvbV9maWxlKGZwKQotCi0KLQogIyBUZXN0IHZhcmlvdXMgYXNwZWN0cyBvZiB0aGUgTWVzc2FnZSBjbGFzcydzIEFQSQogY2xhc3MgVGVzdE1lc3NhZ2VBUEkoVGVzdEVtYWlsQmFzZSk6CiAgICAgZGVmIHRlc3RfZ2V0X2FsbChzZWxmKToKQEAgLTE5NCw3ICsxNjgsNyBAQAogICAgIGRlZiB0ZXN0X21lc3NhZ2VfcmZjODIyX29ubHkoc2VsZik6CiAgICAgICAgICMgSXNzdWUgNzk3MDogbWVzc2FnZS9yZmM4MjIgbm90IGluIG11bHRpcGFydCBwYXJzZWQgYnkKICAgICAgICAgIyBIZWFkZXJQYXJzZXIgY2F1c2VkIGFuIGV4Y2VwdGlvbiB3aGVuIGZsYXR0ZW5lZC4KLSAgICAgICAgd2l0aCBvcGVuZmlsZShmaW5kZmlsZSgnbXNnXzQ2LnR4dCcpKSBhcyBmcDoKKyAgICAgICAgd2l0aCBvcGVuZmlsZSgnbXNnXzQ2LnR4dCcpIGFzIGZwOgogICAgICAgICAgICAgbXNnZGF0YSA9IGZwLnJlYWQoKQogICAgICAgICBwYXJzZXIgPSBIZWFkZXJQYXJzZXIoKQogICAgICAgICBtc2cgPSBwYXJzZXIucGFyc2VzdHIobXNnZGF0YSkKQEAgLTIwMyw2ICsxNzcsMTcgQEAKICAgICAgICAgZ2VuLmZsYXR0ZW4obXNnLCBGYWxzZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXQuZ2V0dmFsdWUoKSwgbXNnZGF0YSkKIAorICAgIGRlZiB0ZXN0X2J5dGVfbWVzc2FnZV9yZmM4MjJfb25seShzZWxmKToKKyAgICAgICAgIyBNYWtlIHN1cmUgbmV3IGJ5dGVzIGhlYWRlciBwYXJzZXIgYWxzbyBwYXNzZXMgdGhpcy4KKyAgICAgICAgd2l0aCBvcGVuZmlsZSgnbXNnXzQ2LnR4dCcsICdyYicpIGFzIGZwOgorICAgICAgICAgICAgbXNnZGF0YSA9IGZwLnJlYWQoKQorICAgICAgICBwYXJzZXIgPSBlbWFpbC5wYXJzZXIuQnl0ZXNIZWFkZXJQYXJzZXIoKQorICAgICAgICBtc2cgPSBwYXJzZXIucGFyc2VieXRlcyhtc2dkYXRhKQorICAgICAgICBvdXQgPSBCeXRlc0lPKCkKKyAgICAgICAgZ2VuID0gZW1haWwuZ2VuZXJhdG9yLkJ5dGVzR2VuZXJhdG9yKG91dCkKKyAgICAgICAgZ2VuLmZsYXR0ZW4obXNnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG91dC5nZXR2YWx1ZSgpLCBtc2dkYXRhKQorCiAgICAgZGVmIHRlc3RfZ2V0X2RlY29kZWRfcGF5bG9hZChzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCiAgICAgICAgIG1zZyA9IHNlbGYuX21zZ29iaignbXNnXzEwLnR4dCcpCkBAIC0xMjY0LDEzICsxMjQ5LDcgQEAKICMgVGVzdCB0aGUgYmFzaWMgTUlNRUF1ZGlvIGNsYXNzCiBjbGFzcyBUZXN0TUlNRUF1ZGlvKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgc2V0VXAoc2VsZik6Ci0gICAgICAgICMgTWFrZSBzdXJlIHdlIHBpY2sgdXAgdGhlIGF1ZGlvdGVzdC5hdSB0aGF0IGxpdmVzIGluIGVtYWlsL3Rlc3QvZGF0YS4KLSAgICAgICAgIyBJbiBQeXRob24sIHRoZXJlJ3MgYW4gYXVkaW90ZXN0LmF1IGxpdmluZyBpbiBMaWIvdGVzdCBidXQgdGhhdCBpc24ndAotICAgICAgICAjIGluY2x1ZGVkIGluIHNvbWUgYmluYXJ5IGRpc3Ryb3MgdGhhdCBkb24ndCBpbmNsdWRlIHRoZSB0ZXN0Ci0gICAgICAgICMgcGFja2FnZS4gIFRoZSB0cmFpbGluZyBlbXB0eSBzdHJpbmcgb24gdGhlIC5qb2luKCkgaXMgc2lnbmlmaWNhbnQKLSAgICAgICAgIyBzaW5jZSBmaW5kZmlsZSgpIHdpbGwgZG8gYSBkaXJuYW1lKCkuCi0gICAgICAgIGRhdGFkaXIgPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKGxhbmRtYXJrKSwgJ2RhdGEnLCAnJykKLSAgICAgICAgd2l0aCBvcGVuKGZpbmRmaWxlKCdhdWRpb3Rlc3QuYXUnLCBkYXRhZGlyKSwgJ3JiJykgYXMgZnA6CisgICAgICAgIHdpdGggb3BlbmZpbGUoJ2F1ZGlvdGVzdC5hdScsICdyYicpIGFzIGZwOgogICAgICAgICAgICAgc2VsZi5fYXVkaW9kYXRhID0gZnAucmVhZCgpCiAgICAgICAgIHNlbGYuX2F1ID0gTUlNRUF1ZGlvKHNlbGYuX2F1ZGlvZGF0YSkKIApAQCAtMTc5Nyw3ICsxNzc2LDEyIEBACiAKIAogIyBUZXN0IHNvbWUgYmFkbHkgZm9ybWF0dGVkIG1lc3NhZ2VzCi1jbGFzcyBUZXN0Tm9uQ29uZm9ybWFudChUZXN0RW1haWxCYXNlKToKK2NsYXNzIFRlc3ROb25Db25mb3JtYW50QmFzZToKKworICAgIGRlZiBfbXNnb2JqKHNlbGYsIGZpbGVuYW1lKToKKyAgICAgICAgd2l0aCBvcGVuZmlsZShmaWxlbmFtZSkgYXMgZnA6CisgICAgICAgICAgICByZXR1cm4gZW1haWwubWVzc2FnZV9mcm9tX2ZpbGUoZnAsIHBvbGljeT1zZWxmLnBvbGljeSkKKwogICAgIGRlZiB0ZXN0X3BhcnNlX21pc3NpbmdfbWlub3JfdHlwZShzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCiAgICAgICAgIG1zZyA9IHNlbGYuX21zZ29iaignbXNnXzE0LnR4dCcpCkBAIC0xODExLDE5ICsxNzk1LDY1IEBACiAgICAgICAgICMgWFhYIFdlIGNhbiBwcm9iYWJseSBldmVudHVhbGx5IGRvIGJldHRlcgogICAgICAgICBpbm5lciA9IG1zZy5nZXRfcGF5bG9hZCgwKQogICAgICAgICB1bmxlc3MoaGFzYXR0cihpbm5lciwgJ2RlZmVjdHMnKSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oaW5uZXIuZGVmZWN0cyksIDEpCi0gICAgICAgIHVubGVzcyhpc2luc3RhbmNlKGlubmVyLmRlZmVjdHNbMF0sCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuZ2V0X2RlZmVjdHMoaW5uZXIpKSwgMSkKKyAgICAgICAgdW5sZXNzKGlzaW5zdGFuY2Uoc2VsZi5nZXRfZGVmZWN0cyhpbm5lcilbMF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycy5TdGFydEJvdW5kYXJ5Tm90Rm91bmREZWZlY3QpKQogCiAgICAgZGVmIHRlc3RfbXVsdGlwYXJ0X25vX2JvdW5kYXJ5KHNlbGYpOgogICAgICAgICB1bmxlc3MgPSBzZWxmLmFzc2VydFRydWUKICAgICAgICAgbXNnID0gc2VsZi5fbXNnb2JqKCdtc2dfMjUudHh0JykKICAgICAgICAgdW5sZXNzKGlzaW5zdGFuY2UobXNnLmdldF9wYXlsb2FkKCksIHN0cikpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG1zZy5kZWZlY3RzKSwgMikKLSAgICAgICAgdW5sZXNzKGlzaW5zdGFuY2UobXNnLmRlZmVjdHNbMF0sIGVycm9ycy5Ob0JvdW5kYXJ5SW5NdWx0aXBhcnREZWZlY3QpKQotICAgICAgICB1bmxlc3MoaXNpbnN0YW5jZShtc2cuZGVmZWN0c1sxXSwKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5nZXRfZGVmZWN0cyhtc2cpKSwgMikKKyAgICAgICAgdW5sZXNzKGlzaW5zdGFuY2Uoc2VsZi5nZXRfZGVmZWN0cyhtc2cpWzBdLAorICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMuTm9Cb3VuZGFyeUluTXVsdGlwYXJ0RGVmZWN0KSkKKyAgICAgICAgdW5sZXNzKGlzaW5zdGFuY2Uoc2VsZi5nZXRfZGVmZWN0cyhtc2cpWzFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMuTXVsdGlwYXJ0SW52YXJpYW50VmlvbGF0aW9uRGVmZWN0KSkKIAorICAgIG11bHRpcGFydF9tc2cgPSB0ZXh0d3JhcC5kZWRlbnQoIiIiXAorICAgICAgICBEYXRlOiBXZWQsIDE0IE5vdiAyMDA3IDEyOjU2OjIzIEdNVAorICAgICAgICBGcm9tOiBmb29AYmFyLmludmFsaWQKKyAgICAgICAgVG86IGZvb0BiYXIuaW52YWxpZAorICAgICAgICBTdWJqZWN0OiBDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiYXNlNjQgYW5kIG11bHRpcGFydAorICAgICAgICBNSU1FLVZlcnNpb246IDEuMAorICAgICAgICBDb250ZW50LVR5cGU6IG11bHRpcGFydC9taXhlZDsKKyAgICAgICAgICAgIGJvdW5kYXJ5PSI9PT09PT09PT09PT09PT0zMzQ0NDM4Nzg0NDU4MTE5ODYxPT0ie30KKworICAgICAgICAtLT09PT09PT09PT09PT09PTMzNDQ0Mzg3ODQ0NTgxMTk4NjE9PQorICAgICAgICBDb250ZW50LVR5cGU6IHRleHQvcGxhaW4KKworICAgICAgICBUZXN0IG1lc3NhZ2UKKworICAgICAgICAtLT09PT09PT09PT09PT09PTMzNDQ0Mzg3ODQ0NTgxMTk4NjE9PQorICAgICAgICBDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQorICAgICAgICBDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiYXNlNjQKKworICAgICAgICBZV0pqCisKKyAgICAgICAgLS09PT09PT09PT09PT09PT0zMzQ0NDM4Nzg0NDU4MTE5ODYxPT0tLQorICAgICAgICAiIiIpCisKKyAgICBkZWYgdGVzdF9tdWx0aXBhcnRfaW52YWxpZF9jdGUoc2VsZik6CisgICAgICAgIG1zZyA9IGVtYWlsLm1lc3NhZ2VfZnJvbV9zdHJpbmcoCisgICAgICAgICAgICBzZWxmLm11bHRpcGFydF9tc2cuZm9ybWF0KCJcbkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJhc2U2NCIpLAorICAgICAgICAgICAgcG9saWN5ID0gc2VsZi5wb2xpY3kpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuZ2V0X2RlZmVjdHMobXNnKSksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShzZWxmLmdldF9kZWZlY3RzKG1zZylbMF0sCisgICAgICAgICAgICBlcnJvcnMuSW52YWxpZE11bHRpcGFydENvbnRlbnRUcmFuc2ZlckVuY29kaW5nRGVmZWN0KQorCisgICAgZGVmIHRlc3RfbXVsdGlwYXJ0X25vX2N0ZV9ub19kZWZlY3Qoc2VsZik6CisgICAgICAgIG1zZyA9IGVtYWlsLm1lc3NhZ2VfZnJvbV9zdHJpbmcoCisgICAgICAgICAgICBzZWxmLm11bHRpcGFydF9tc2cuZm9ybWF0KCcnKSwKKyAgICAgICAgICAgIHBvbGljeSA9IHNlbGYucG9saWN5KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLmdldF9kZWZlY3RzKG1zZykpLCAwKQorCisgICAgZGVmIHRlc3RfbXVsdGlwYXJ0X3ZhbGlkX2N0ZV9ub19kZWZlY3Qoc2VsZik6CisgICAgICAgIGZvciBjdGUgaW4gKCc3Yml0JywgJzhiaXQnLCAnQklOYXJ5Jyk6CisgICAgICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fc3RyaW5nKAorICAgICAgICAgICAgICAgIHNlbGYubXVsdGlwYXJ0X21zZy5mb3JtYXQoCisgICAgICAgICAgICAgICAgICAgICJcbkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IHt9Ii5mb3JtYXQoY3RlKSksCisgICAgICAgICAgICAgICAgcG9saWN5ID0gc2VsZi5wb2xpY3kpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLmdldF9kZWZlY3RzKG1zZykpLCAwKQorCiAgICAgZGVmIHRlc3RfaW52YWxpZF9jb250ZW50X3R5cGUoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAogICAgICAgICBuZXEgPSBzZWxmLm5kaWZmQXNzZXJ0RXF1YWwKQEAgLTE4NzcsOSArMTkwNywxMCBAQAogICAgICAgICB1bmxlc3MgPSBzZWxmLmFzc2VydFRydWUKICAgICAgICAgbXNnID0gc2VsZi5fbXNnb2JqKCdtc2dfNDEudHh0JykKICAgICAgICAgdW5sZXNzKGhhc2F0dHIobXNnLCAnZGVmZWN0cycpKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtc2cuZGVmZWN0cyksIDIpCi0gICAgICAgIHVubGVzcyhpc2luc3RhbmNlKG1zZy5kZWZlY3RzWzBdLCBlcnJvcnMuTm9Cb3VuZGFyeUluTXVsdGlwYXJ0RGVmZWN0KSkKLSAgICAgICAgdW5sZXNzKGlzaW5zdGFuY2UobXNnLmRlZmVjdHNbMV0sCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuZ2V0X2RlZmVjdHMobXNnKSksIDIpCisgICAgICAgIHVubGVzcyhpc2luc3RhbmNlKHNlbGYuZ2V0X2RlZmVjdHMobXNnKVswXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLk5vQm91bmRhcnlJbk11bHRpcGFydERlZmVjdCkpCisgICAgICAgIHVubGVzcyhpc2luc3RhbmNlKHNlbGYuZ2V0X2RlZmVjdHMobXNnKVsxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLk11bHRpcGFydEludmFyaWFudFZpb2xhdGlvbkRlZmVjdCkpCiAKICAgICBkZWYgdGVzdF9taXNzaW5nX3N0YXJ0X2JvdW5kYXJ5KHNlbGYpOgpAQCAtMTg5MywyMiArMTkyNCw3MiBAQAogICAgICAgICAjCiAgICAgICAgICMgWypdIFRoaXMgbWVzc2FnZSBpcyBtaXNzaW5nIGl0cyBzdGFydCBib3VuZGFyeQogICAgICAgICBiYWQgPSBvdXRlci5nZXRfcGF5bG9hZCgxKS5nZXRfcGF5bG9hZCgwKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihiYWQuZGVmZWN0cyksIDEpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2luc3RhbmNlKGJhZC5kZWZlY3RzWzBdLAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLmdldF9kZWZlY3RzKGJhZCkpLCAxKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNpbnN0YW5jZShzZWxmLmdldF9kZWZlY3RzKGJhZClbMF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycy5TdGFydEJvdW5kYXJ5Tm90Rm91bmREZWZlY3QpKQogCiAgICAgZGVmIHRlc3RfZmlyc3RfbGluZV9pc19jb250aW51YXRpb25faGVhZGVyKHNlbGYpOgogICAgICAgICBlcSA9IHNlbGYuYXNzZXJ0RXF1YWwKICAgICAgICAgbSA9ICcgTGluZSAxXG5MaW5lIDJcbkxpbmUgMycKLSAgICAgICAgbXNnID0gZW1haWwubWVzc2FnZV9mcm9tX3N0cmluZyhtKQorICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fc3RyaW5nKG0sIHBvbGljeT1zZWxmLnBvbGljeSkKICAgICAgICAgZXEobXNnLmtleXMoKSwgW10pCiAgICAgICAgIGVxKG1zZy5nZXRfcGF5bG9hZCgpLCAnTGluZSAyXG5MaW5lIDMnKQotICAgICAgICBlcShsZW4obXNnLmRlZmVjdHMpLCAxKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNpbnN0YW5jZShtc2cuZGVmZWN0c1swXSwKKyAgICAgICAgZXEobGVuKHNlbGYuZ2V0X2RlZmVjdHMobXNnKSksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2luc3RhbmNlKHNlbGYuZ2V0X2RlZmVjdHMobXNnKVswXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLkZpcnN0SGVhZGVyTGluZUlzQ29udGludWF0aW9uRGVmZWN0KSkKLSAgICAgICAgZXEobXNnLmRlZmVjdHNbMF0ubGluZSwgJyBMaW5lIDFcbicpCisgICAgICAgIGVxKHNlbGYuZ2V0X2RlZmVjdHMobXNnKVswXS5saW5lLCAnIExpbmUgMVxuJykKIAogCitjbGFzcyBUZXN0Tm9uQ29uZm9ybWFudChUZXN0Tm9uQ29uZm9ybWFudEJhc2UsIFRlc3RFbWFpbEJhc2UpOgorCisgICAgcG9saWN5PWVtYWlsLnBvbGljeS5kZWZhdWx0CisKKyAgICBkZWYgZ2V0X2RlZmVjdHMoc2VsZiwgb2JqKToKKyAgICAgICAgcmV0dXJuIG9iai5kZWZlY3RzCisKKworY2xhc3MgVGVzdE5vbkNvbmZvcm1hbnRDYXB0dXJlKFRlc3ROb25Db25mb3JtYW50QmFzZSwgVGVzdEVtYWlsQmFzZSk6CisKKyAgICBjbGFzcyBDYXB0dXJlUG9saWN5KGVtYWlsLnBvbGljeS5Qb2xpY3kpOgorICAgICAgICBjYXB0dXJlZCA9IE5vbmUKKyAgICAgICAgZGVmIHJlZ2lzdGVyX2RlZmVjdChzZWxmLCBvYmosIGRlZmVjdCk6CisgICAgICAgICAgICBzZWxmLmNhcHR1cmVkLmFwcGVuZChkZWZlY3QpCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYucG9saWN5ID0gc2VsZi5DYXB0dXJlUG9saWN5KGNhcHR1cmVkPWxpc3QoKSkKKworICAgIGRlZiBnZXRfZGVmZWN0cyhzZWxmLCBvYmopOgorICAgICAgICByZXR1cm4gc2VsZi5wb2xpY3kuY2FwdHVyZWQKKworCitjbGFzcyBUZXN0UmFpc2luZ0RlZmVjdHMoVGVzdEVtYWlsQmFzZSk6CisKKyAgICBkZWYgX21zZ29iaihzZWxmLCBmaWxlbmFtZSk6CisgICAgICAgIHdpdGggb3BlbmZpbGUoZmlsZW5hbWUpIGFzIGZwOgorICAgICAgICAgICAgcmV0dXJuIGVtYWlsLm1lc3NhZ2VfZnJvbV9maWxlKGZwLCBwb2xpY3k9ZW1haWwucG9saWN5LnN0cmljdCkKKworICAgIGRlZiB0ZXN0X3NhbWVfYm91bmRhcnlfaW5uZXJfb3V0ZXIoc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoZXJyb3JzLlN0YXJ0Qm91bmRhcnlOb3RGb3VuZERlZmVjdCk6CisgICAgICAgICAgICBzZWxmLl9tc2dvYmooJ21zZ18xNS50eHQnKQorCisgICAgZGVmIHRlc3RfbXVsdGlwYXJ0X25vX2JvdW5kYXJ5KHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKGVycm9ycy5Ob0JvdW5kYXJ5SW5NdWx0aXBhcnREZWZlY3QpOgorICAgICAgICAgICAgc2VsZi5fbXNnb2JqKCdtc2dfMjUudHh0JykKKworICAgIGRlZiB0ZXN0X2x5aW5nX211bHRpcGFydChzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhlcnJvcnMuTm9Cb3VuZGFyeUluTXVsdGlwYXJ0RGVmZWN0KToKKyAgICAgICAgICAgIHNlbGYuX21zZ29iaignbXNnXzQxLnR4dCcpCisKKworICAgIGRlZiB0ZXN0X21pc3Npbmdfc3RhcnRfYm91bmRhcnkoc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoZXJyb3JzLlN0YXJ0Qm91bmRhcnlOb3RGb3VuZERlZmVjdCk6CisgICAgICAgICAgICBzZWxmLl9tc2dvYmooJ21zZ180Mi50eHQnKQorCisgICAgZGVmIHRlc3RfZmlyc3RfbGluZV9pc19jb250aW51YXRpb25faGVhZGVyKHNlbGYpOgorICAgICAgICBtID0gJyBMaW5lIDFcbkxpbmUgMlxuTGluZSAzJworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKGVycm9ycy5GaXJzdEhlYWRlckxpbmVJc0NvbnRpbnVhdGlvbkRlZmVjdCk6CisgICAgICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fc3RyaW5nKG0sIHBvbGljeT1lbWFpbC5wb2xpY3kuc3RyaWN0KQorCiAKICMgVGVzdCBSRkMgMjA0NyBoZWFkZXIgZW5jb2RpbmcgYW5kIGRlY29kaW5nCiBjbGFzcyBUZXN0UkZDMjA0NyhUZXN0RW1haWxCYXNlKToKQEAgLTI1NjEsNiArMjY0MiwxMyBAQAogICAgICAgICAgICAoMjAwMiwgNCwgMywgMTQsIDU4LCAyNiwgMCwgMSwgLTEsIC0yODgwMCkpCiAKIAorICAgIGRlZiB0ZXN0X3BhcnNlZGF0ZV9hY2NlcHRzX3RpbWVfd2l0aF9kb3RzKHNlbGYpOgorICAgICAgICBlcSA9IHNlbGYuYXNzZXJ0RXF1YWwKKyAgICAgICAgZXEodXRpbHMucGFyc2VkYXRlX3R6KCc1IEZlYiAyMDAzIDEzLjQ3LjI2IC0wODAwJyksCisgICAgICAgICAgICgyMDAzLCAyLCA1LCAxMywgNDcsIDI2LCAwLCAxLCAtMSwgLTI4ODAwKSkKKyAgICAgICAgZXEodXRpbHMucGFyc2VkYXRlX3R6KCc1IEZlYiAyMDAzIDEzLjQ3IC0wODAwJyksCisgICAgICAgICAgICgyMDAzLCAyLCA1LCAxMywgNDcsIDAsIDAsIDEsIC0xLCAtMjg4MDApKQorCiAgICAgZGVmIHRlc3RfcGFyc2VkYXRlX2FjY2VwdGFibGVfdG9fdGltZV9mdW5jdGlvbnMoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAogICAgICAgICB0aW1ldHVwID0gdXRpbHMucGFyc2VkYXRlKCc1IEZlYiAyMDAzIDEzOjQ3OjI2IC0wODAwJykKQEAgLTI2MTAsNiArMjY5OCw0NiBAQAogICAgICAgICBiID0gJ3BlcnNvbkBkb20uYWluJwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHV0aWxzLnBhcnNlYWRkcih1dGlscy5mb3JtYXRhZGRyKChhLCBiKSkpLCAoYSwgYikpCiAKKyAgICBkZWYgdGVzdF9xdW90ZXNfdW5pY29kZV9uYW1lcyhzZWxmKToKKyAgICAgICAgIyBpc3N1ZSAxNjkwNjA4LiAgZW1haWwudXRpbHMuZm9ybWF0YWRkcigpIHNob3VsZCBiZSByZmMyMDQ3IGF3YXJlLgorICAgICAgICBuYW1lID0gIkhcdTAwZTRucyBXXHUwMGZjcnN0IgorICAgICAgICBhZGRyID0gJ3BlcnNvbkBkb20uYWluJworICAgICAgICB1dGY4X2Jhc2U2NCA9ICI9P3V0Zi04P2I/U01Pa2JuTWdWOE84Y25OMD89IDxwZXJzb25AZG9tLmFpbj4iCisgICAgICAgIGxhdGluMV9xdW9wcmkgPSAiPT9pc28tODg1OS0xP3E/SD1FNG5zX1c9RkNyc3Q/PSA8cGVyc29uQGRvbS5haW4+IgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHV0aWxzLmZvcm1hdGFkZHIoKG5hbWUsIGFkZHIpKSwgdXRmOF9iYXNlNjQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodXRpbHMuZm9ybWF0YWRkcigobmFtZSwgYWRkciksICdpc28tODg1OS0xJyksCisgICAgICAgICAgICBsYXRpbjFfcXVvcHJpKQorCisgICAgZGVmIHRlc3RfYWNjZXB0c19hbnlfY2hhcnNldF9saWtlX29iamVjdChzZWxmKToKKyAgICAgICAgIyBpc3N1ZSAxNjkwNjA4LiAgZW1haWwudXRpbHMuZm9ybWF0YWRkcigpIHNob3VsZCBiZSByZmMyMDQ3IGF3YXJlLgorICAgICAgICBuYW1lID0gIkhcdTAwZTRucyBXXHUwMGZjcnN0IgorICAgICAgICBhZGRyID0gJ3BlcnNvbkBkb20uYWluJworICAgICAgICB1dGY4X2Jhc2U2NCA9ICI9P3V0Zi04P2I/U01Pa2JuTWdWOE84Y25OMD89IDxwZXJzb25AZG9tLmFpbj4iCisgICAgICAgIGZvb2JhciA9ICJGT09CQVIiCisgICAgICAgIGNsYXNzIENoYXJzZXRNb2NrOgorICAgICAgICAgICAgZGVmIGhlYWRlcl9lbmNvZGUoc2VsZiwgc3RyaW5nKToKKyAgICAgICAgICAgICAgICByZXR1cm4gZm9vYmFyCisgICAgICAgIG1vY2sgPSBDaGFyc2V0TW9jaygpCisgICAgICAgIG1vY2tfZXhwZWN0ZWQgPSAiJXMgPCVzPiIgJSAoZm9vYmFyLCBhZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHV0aWxzLmZvcm1hdGFkZHIoKG5hbWUsIGFkZHIpLCBtb2NrKSwgbW9ja19leHBlY3RlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1dGlscy5mb3JtYXRhZGRyKChuYW1lLCBhZGRyKSwgQ2hhcnNldCgndXRmLTgnKSksCisgICAgICAgICAgICB1dGY4X2Jhc2U2NCkKKworICAgIGRlZiB0ZXN0X2ludmFsaWRfY2hhcnNldF9saWtlX29iamVjdF9yYWlzZXNfZXJyb3Ioc2VsZik6CisgICAgICAgICMgaXNzdWUgMTY5MDYwOC4gIGVtYWlsLnV0aWxzLmZvcm1hdGFkZHIoKSBzaG91bGQgYmUgcmZjMjA0NyBhd2FyZS4KKyAgICAgICAgbmFtZSA9ICJIXHUwMGU0bnMgV1x1MDBmY3JzdCIKKyAgICAgICAgYWRkciA9ICdwZXJzb25AZG9tLmFpbicKKyAgICAgICAgIyBBIG9iamVjdCB3aXRob3V0IGEgaGVhZGVyX2VuY29kZSBtZXRob2Q6CisgICAgICAgIGJhZF9jaGFyc2V0ID0gb2JqZWN0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQXR0cmlidXRlRXJyb3IsIHV0aWxzLmZvcm1hdGFkZHIsIChuYW1lLCBhZGRyKSwKKyAgICAgICAgICAgIGJhZF9jaGFyc2V0KQorCisgICAgZGVmIHRlc3RfdW5pY29kZV9hZGRyZXNzX3JhaXNlc19lcnJvcihzZWxmKToKKyAgICAgICAgIyBpc3N1ZSAxNjkwNjA4LiAgZW1haWwudXRpbHMuZm9ybWF0YWRkcigpIHNob3VsZCBiZSByZmMyMDQ3IGF3YXJlLgorICAgICAgICBhZGRyID0gJ3BlcnNcdTAwZjZuQGRvbS5pbicKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZUVycm9yLCB1dGlscy5mb3JtYXRhZGRyLCAoTm9uZSwgYWRkcikpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVFcnJvciwgdXRpbHMuZm9ybWF0YWRkciwgKCJOYW1lIiwgYWRkcikpCisKICAgICBkZWYgdGVzdF9uYW1lX3dpdGhfZG90KHNlbGYpOgogICAgICAgICB4ID0gJ0pvaG4gWC4gRG9lIDxqeGRAZXhhbXBsZS5jb20+JwogICAgICAgICB5ID0gJyJKb2huIFguIERvZSIgPGp4ZEBleGFtcGxlLmNvbT4nCkBAIC0yODkwLDYgKzMwMTgsNyBAQAogCiAKIGNsYXNzIFRlc3RQYXJzZXJzKFRlc3RFbWFpbEJhc2UpOgorCiAgICAgZGVmIHRlc3RfaGVhZGVyX3BhcnNlcihzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCiAgICAgICAgICMgUGFyc2Ugb25seSB0aGUgaGVhZGVycyBvZiBhIGNvbXBsZXggbXVsdGlwYXJ0IE1JTUUgZG9jdW1lbnQKQEAgLTI5MDEsNiArMzAzMCwxOCBAQAogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG1zZy5pc19tdWx0aXBhcnQoKSkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2UobXNnLmdldF9wYXlsb2FkKCksIHN0cikpCiAKKyAgICBkZWYgdGVzdF9ieXRlc19oZWFkZXJfcGFyc2VyKHNlbGYpOgorICAgICAgICBlcSA9IHNlbGYuYXNzZXJ0RXF1YWwKKyAgICAgICAgIyBQYXJzZSBvbmx5IHRoZSBoZWFkZXJzIG9mIGEgY29tcGxleCBtdWx0aXBhcnQgTUlNRSBkb2N1bWVudAorICAgICAgICB3aXRoIG9wZW5maWxlKCdtc2dfMDIudHh0JywgJ3JiJykgYXMgZnA6CisgICAgICAgICAgICBtc2cgPSBlbWFpbC5wYXJzZXIuQnl0ZXNIZWFkZXJQYXJzZXIoKS5wYXJzZShmcCkKKyAgICAgICAgZXEobXNnWydmcm9tJ10sICdwcHAtcmVxdWVzdEB6enoub3JnJykKKyAgICAgICAgZXEobXNnWyd0byddLCAncHBwQHp6ei5vcmcnKQorICAgICAgICBlcShtc2cuZ2V0X2NvbnRlbnRfdHlwZSgpLCAnbXVsdGlwYXJ0L21peGVkJykKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShtc2cuaXNfbXVsdGlwYXJ0KCkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2luc3RhbmNlKG1zZy5nZXRfcGF5bG9hZCgpLCBzdHIpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNpbnN0YW5jZShtc2cuZ2V0X3BheWxvYWQoZGVjb2RlPVRydWUpLCBieXRlcykpCisKICAgICBkZWYgdGVzdF93aGl0ZXNwYWNlX2NvbnRpbnVhdGlvbihzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCiAgICAgICAgICMgVGhpcyBtZXNzYWdlIGNvbnRhaW5zIGEgbGluZSBhZnRlciB0aGUgU3ViamVjdDogaGVhZGVyIHRoYXQgaGFzIG9ubHkKQEAgLTI5NTgsNiArMzA5OSwyNSBAQAogICAgICAgICBnLmZsYXR0ZW4obXNnLCBsaW5lc2VwPSdcclxuJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksIHRleHQpCiAKKyAgICBkZWYgdGVzdF9jcmxmX2NvbnRyb2xfdmlhX3BvbGljeShzZWxmKToKKyAgICAgICAgd2l0aCBvcGVuZmlsZSgnbXNnXzI2LnR4dCcsIG5ld2xpbmU9J1xuJykgYXMgZnA6CisgICAgICAgICAgICB0ZXh0ID0gZnAucmVhZCgpCisgICAgICAgIG1zZyA9IGVtYWlsLm1lc3NhZ2VfZnJvbV9zdHJpbmcodGV4dCkKKyAgICAgICAgcyA9IFN0cmluZ0lPKCkKKyAgICAgICAgZyA9IGVtYWlsLmdlbmVyYXRvci5HZW5lcmF0b3IocywgcG9saWN5PWVtYWlsLnBvbGljeS5TTVRQKQorICAgICAgICBnLmZsYXR0ZW4obXNnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuZ2V0dmFsdWUoKSwgdGV4dCkKKworICAgIGRlZiB0ZXN0X2ZsYXR0ZW5fbGluZXNlcF9vdmVycmlkZXNfcG9saWN5KHNlbGYpOgorICAgICAgICAjIG1zZ18yNyBpcyBsZiBzZXBhcmF0ZWQKKyAgICAgICAgd2l0aCBvcGVuZmlsZSgnbXNnXzI3LnR4dCcsIG5ld2xpbmU9J1xuJykgYXMgZnA6CisgICAgICAgICAgICB0ZXh0ID0gZnAucmVhZCgpCisgICAgICAgIG1zZyA9IGVtYWlsLm1lc3NhZ2VfZnJvbV9zdHJpbmcodGV4dCkKKyAgICAgICAgcyA9IFN0cmluZ0lPKCkKKyAgICAgICAgZyA9IGVtYWlsLmdlbmVyYXRvci5HZW5lcmF0b3IocywgcG9saWN5PWVtYWlsLnBvbGljeS5TTVRQKQorICAgICAgICBnLmZsYXR0ZW4obXNnLCBsaW5lc2VwPSdcbicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR2YWx1ZSgpLCB0ZXh0KQorCiAgICAgbWF4RGlmZiA9IE5vbmUKIAogICAgIGRlZiB0ZXN0X211bHRpcGFydF9kaWdlc3Rfd2l0aF9leHRyYV9taW1lX2hlYWRlcnMoc2VsZik6CkBAIC0zNDI0LDYgKzM1ODQsNDQgQEAKICAgICAgICAgZy5mbGF0dGVuKG1zZykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksIHNvdXJjZSkKIAorICAgIGRlZiB0ZXN0X2NybGZfY29udHJvbF92aWFfcG9saWN5KHNlbGYpOgorICAgICAgICAjIG1zZ18yNiBpcyBjcmxmIHRlcm1pbmF0ZWQKKyAgICAgICAgd2l0aCBvcGVuZmlsZSgnbXNnXzI2LnR4dCcsICdyYicpIGFzIGZwOgorICAgICAgICAgICAgdGV4dCA9IGZwLnJlYWQoKQorICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fYnl0ZXModGV4dCkKKyAgICAgICAgcyA9IEJ5dGVzSU8oKQorICAgICAgICBnID0gZW1haWwuZ2VuZXJhdG9yLkJ5dGVzR2VuZXJhdG9yKHMsIHBvbGljeT1lbWFpbC5wb2xpY3kuU01UUCkKKyAgICAgICAgZy5mbGF0dGVuKG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksIHRleHQpCisKKyAgICBkZWYgdGVzdF9mbGF0dGVuX2xpbmVzZXBfb3ZlcnJpZGVzX3BvbGljeShzZWxmKToKKyAgICAgICAgIyBtc2dfMjcgaXMgbGYgc2VwYXJhdGVkCisgICAgICAgIHdpdGggb3BlbmZpbGUoJ21zZ18yNy50eHQnLCAncmInKSBhcyBmcDoKKyAgICAgICAgICAgIHRleHQgPSBmcC5yZWFkKCkKKyAgICAgICAgbXNnID0gZW1haWwubWVzc2FnZV9mcm9tX2J5dGVzKHRleHQpCisgICAgICAgIHMgPSBCeXRlc0lPKCkKKyAgICAgICAgZyA9IGVtYWlsLmdlbmVyYXRvci5CeXRlc0dlbmVyYXRvcihzLCBwb2xpY3k9ZW1haWwucG9saWN5LlNNVFApCisgICAgICAgIGcuZmxhdHRlbihtc2csIGxpbmVzZXA9J1xuJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksIHRleHQpCisKKyAgICBkZWYgdGVzdF9tdXN0X2JlXzdiaXRfaGFuZGxlc191bmtub3duXzhiaXQoc2VsZik6CisgICAgICAgIG1zZyA9IGVtYWlsLm1lc3NhZ2VfZnJvbV9ieXRlcyhzZWxmLm5vbl9sYXRpbl9iaW5fbXNnKQorICAgICAgICBvdXQgPSBCeXRlc0lPKCkKKyAgICAgICAgZyA9IGVtYWlsLmdlbmVyYXRvci5CeXRlc0dlbmVyYXRvcihvdXQsCisgICAgICAgICAgICAgICAgICAgICAgICBwb2xpY3k9ZW1haWwucG9saWN5LmRlZmF1bHQuY2xvbmUobXVzdF9iZV83Yml0PVRydWUpKQorICAgICAgICBnLmZsYXR0ZW4obXNnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG91dC5nZXR2YWx1ZSgpLAorICAgICAgICAgICAgc2VsZi5ub25fbGF0aW5fYmluX21zZ19hczdiaXRfd3JhcHBlZC5lbmNvZGUoJ2FzY2lpJykpCisKKyAgICBkZWYgdGVzdF9tdXN0X2JlXzdiaXRfdHJhbnNmb3Jtc184Yml0X2N0ZShzZWxmKToKKyAgICAgICAgbXNnID0gZW1haWwubWVzc2FnZV9mcm9tX2J5dGVzKHNlbGYubGF0aW5fYmluX21zZykKKyAgICAgICAgb3V0ID0gQnl0ZXNJTygpCisgICAgICAgIGcgPSBlbWFpbC5nZW5lcmF0b3IuQnl0ZXNHZW5lcmF0b3Iob3V0LAorICAgICAgICAgICAgICAgICAgICAgICAgcG9saWN5PWVtYWlsLnBvbGljeS5kZWZhdWx0LmNsb25lKG11c3RfYmVfN2JpdD1UcnVlKSkKKyAgICAgICAgZy5mbGF0dGVuKG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXQuZ2V0dmFsdWUoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYubGF0aW5fYmluX21zZ19hczdiaXQuZW5jb2RlKCdhc2NpaScpKQorCiAgICAgbWF4RGlmZiA9IE5vbmUKIAogCkBAIC0zNDQyLDEyICszNjQwLDcgQEAKICAgICAgICAgYiA9IEJ5dGVzSU8oKQogICAgICAgICBnID0gZW1haWwuZ2VuZXJhdG9yLkJ5dGVzR2VuZXJhdG9yKGIsIG1heGhlYWRlcmxlbj0wKQogICAgICAgICBnLmZsYXR0ZW4obXNnLCB1bml4ZnJvbT11bml4ZnJvbSwgbGluZXNlcD1zZWxmLmxpbmVzZXApCi0gICAgICAgIHNlbGYuYXNzZXJ0Qnl0ZVN0cmluZ3NFcXVhbChkYXRhLCBiLmdldHZhbHVlKCkpCi0KLSAgICBkZWYgYXNzZXJ0Qnl0ZVN0cmluZ3NFcXVhbChzZWxmLCBzdHIxLCBzdHIyKToKLSAgICAgICAgIyBOb3QgdXNpbmcgc2VsZi5ibGluZXNlcCBoZXJlIGlzIGludGVudGlvbmFsLiAgVGhpcyB3YXkgdGhlIG91dHB1dAotICAgICAgICAjIGlzIG1vcmUgdXNlZnVsIHdoZW4gdGhlIGZhaWx1cmUgcmVzdWx0cyBpbiBtaXhlZCBsaW5lIGVuZGluZ3MuCi0gICAgICAgIHNlbGYuYXNzZXJ0TGlzdEVxdWFsKHN0cjEuc3BsaXQoYidcbicpLCBzdHIyLnNwbGl0KGInXG4nKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkYXRhLCBiLmdldHZhbHVlKCkpCiAKIAogY2xhc3MgVGVzdEJ5dGVzR2VuZXJhdG9ySWRlbXBvdGVudE5MKEJhc2VUZXN0Qnl0ZXNHZW5lcmF0b3JJZGVtcG90ZW50LApAQCAtNDU5OSw3ICs0NzkyLDcgQEAKIGNsYXNzIFRlc3RTaWduZWQoVGVzdEVtYWlsQmFzZSk6CiAKICAgICBkZWYgX21zZ19hbmRfb2JqKHNlbGYsIGZpbGVuYW1lKToKLSAgICAgICAgd2l0aCBvcGVuZmlsZShmaW5kZmlsZShmaWxlbmFtZSkpIGFzIGZwOgorICAgICAgICB3aXRoIG9wZW5maWxlKGZpbGVuYW1lKSBhcyBmcDoKICAgICAgICAgICAgIG9yaWdpbmFsID0gZnAucmVhZCgpCiAgICAgICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fc3RyaW5nKG9yaWdpbmFsKQogICAgICAgICByZXR1cm4gb3JpZ2luYWwsIG1zZwpAQCAtNDYzMSwyMyArNDgyNCw1IEBACiAKIAogCi1kZWYgX3Rlc3RjbGFzc2VzKCk6Ci0gICAgbW9kID0gc3lzLm1vZHVsZXNbX19uYW1lX19dCi0gICAgcmV0dXJuIFtnZXRhdHRyKG1vZCwgbmFtZSkgZm9yIG5hbWUgaW4gZGlyKG1vZCkgaWYgbmFtZS5zdGFydHN3aXRoKCdUZXN0JyldCi0KLQotZGVmIHN1aXRlKCk6Ci0gICAgc3VpdGUgPSB1bml0dGVzdC5UZXN0U3VpdGUoKQotICAgIGZvciB0ZXN0Y2xhc3MgaW4gX3Rlc3RjbGFzc2VzKCk6Ci0gICAgICAgIHN1aXRlLmFkZFRlc3QodW5pdHRlc3QubWFrZVN1aXRlKHRlc3RjbGFzcykpCi0gICAgcmV0dXJuIHN1aXRlCi0KLQotZGVmIHRlc3RfbWFpbigpOgotICAgIGZvciB0ZXN0Y2xhc3MgaW4gX3Rlc3RjbGFzc2VzKCk6Ci0gICAgICAgIHJ1bl91bml0dGVzdCh0ZXN0Y2xhc3MpCi0KLQotCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgotICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3N1aXRlJykKKyAgICB1bml0dGVzdC5tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZW1haWwvdGVzdF9nZW5lcmF0b3IucHkgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfZ2VuZXJhdG9yLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM1Y2E2YzUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfZ2VuZXJhdG9yLnB5CkBAIC0wLDAgKzEsMTM2IEBACitpbXBvcnQgaW8KK2ltcG9ydCB0ZXh0d3JhcAoraW1wb3J0IHVuaXR0ZXN0Citmcm9tIGVtYWlsIGltcG9ydCBtZXNzYWdlX2Zyb21fc3RyaW5nLCBtZXNzYWdlX2Zyb21fYnl0ZXMKK2Zyb20gZW1haWwuZ2VuZXJhdG9yIGltcG9ydCBHZW5lcmF0b3IsIEJ5dGVzR2VuZXJhdG9yCitmcm9tIGVtYWlsIGltcG9ydCBwb2xpY3kKK2Zyb20gdGVzdC50ZXN0X2VtYWlsIGltcG9ydCBUZXN0RW1haWxCYXNlCisKKyMgWFhYOiBtb3ZlIGdlbmVyYXRvciB0ZXN0cyBmcm9tIHRlc3RfZW1haWwgaW50byBoZXJlIGF0IHNvbWUgcG9pbnQuCisKKworY2xhc3MgVGVzdEdlbmVyYXRvckJhc2UoKToKKworICAgIGxvbmdfc3ViamVjdCA9IHsKKyAgICAgICAgMDogdGV4dHdyYXAuZGVkZW50KCIiIlwKKyAgICAgICAgICAgIFRvOiB3aG9tX2l0X21heV9jb25jZXJuQGV4YW1wbGUuY29tCisgICAgICAgICAgICBGcm9tOiBub2JvZHlfeW91X3dhbnRfdG9fa25vd0BleGFtcGxlLmNvbQorICAgICAgICAgICAgU3ViamVjdDogV2UgdGhlIHdpbGxpbmcgbGVkIGJ5IHRoZSB1bmtub3dpbmcgYXJlIGRvaW5nIHRoZQorICAgICAgICAgICAgIGltcG9zc2libGUgZm9yIHRoZSB1bmdyYXRlZnVsLiBXZSBoYXZlIGRvbmUgc28gbXVjaCBmb3Igc28gbG9uZyB3aXRoIHNvIGxpdHRsZQorICAgICAgICAgICAgIHdlIGFyZSBub3cgcXVhbGlmaWVkIHRvIGRvIGFueXRoaW5nIHdpdGggbm90aGluZy4KKworICAgICAgICAgICAgTm9uZQorICAgICAgICAgICAgIiIiKSwKKyAgICAgICAgNDA6IHRleHR3cmFwLmRlZGVudCgiIiJcCisgICAgICAgICAgICBUbzogd2hvbV9pdF9tYXlfY29uY2VybkBleGFtcGxlLmNvbQorICAgICAgICAgICAgRnJvbTpceDIwCisgICAgICAgICAgICAgbm9ib2R5X3lvdV93YW50X3RvX2tub3dAZXhhbXBsZS5jb20KKyAgICAgICAgICAgIFN1YmplY3Q6IFdlIHRoZSB3aWxsaW5nIGxlZCBieSB0aGUKKyAgICAgICAgICAgICB1bmtub3dpbmcgYXJlIGRvaW5nIHRoZQorICAgICAgICAgICAgIGltcG9zc2libGUgZm9yIHRoZSB1bmdyYXRlZnVsLiBXZSBoYXZlCisgICAgICAgICAgICAgZG9uZSBzbyBtdWNoIGZvciBzbyBsb25nIHdpdGggc28gbGl0dGxlCisgICAgICAgICAgICAgd2UgYXJlIG5vdyBxdWFsaWZpZWQgdG8gZG8gYW55dGhpbmcKKyAgICAgICAgICAgICB3aXRoIG5vdGhpbmcuCisKKyAgICAgICAgICAgIE5vbmUKKyAgICAgICAgICAgICIiIiksCisgICAgICAgIDIwOiB0ZXh0d3JhcC5kZWRlbnQoIiIiXAorICAgICAgICAgICAgVG86XHgyMAorICAgICAgICAgICAgIHdob21faXRfbWF5X2NvbmNlcm5AZXhhbXBsZS5jb20KKyAgICAgICAgICAgIEZyb206XHgyMAorICAgICAgICAgICAgIG5vYm9keV95b3Vfd2FudF90b19rbm93QGV4YW1wbGUuY29tCisgICAgICAgICAgICBTdWJqZWN0OiBXZSB0aGUKKyAgICAgICAgICAgICB3aWxsaW5nIGxlZCBieSB0aGUKKyAgICAgICAgICAgICB1bmtub3dpbmcgYXJlIGRvaW5nCisgICAgICAgICAgICAgdGhlCisgICAgICAgICAgICAgaW1wb3NzaWJsZSBmb3IgdGhlCisgICAgICAgICAgICAgdW5ncmF0ZWZ1bC4gV2UgaGF2ZQorICAgICAgICAgICAgIGRvbmUgc28gbXVjaCBmb3Igc28KKyAgICAgICAgICAgICBsb25nIHdpdGggc28gbGl0dGxlCisgICAgICAgICAgICAgd2UgYXJlIG5vdworICAgICAgICAgICAgIHF1YWxpZmllZCB0byBkbworICAgICAgICAgICAgIGFueXRoaW5nIHdpdGgKKyAgICAgICAgICAgICBub3RoaW5nLgorCisgICAgICAgICAgICBOb25lCisgICAgICAgICAgICAiIiIpLAorICAgICAgICB9CisgICAgbG9uZ19zdWJqZWN0WzEwMF0gPSBsb25nX3N1YmplY3RbMF0KKworICAgIGRlZiBtYXhoZWFkZXJsZW5fcGFyYW1ldGVyX3Rlc3Qoc2VsZiwgbik6CisgICAgICAgIG1zZyA9IHNlbGYubXNnbWFrZXIoc2VsZi5sb25nX3N1YmplY3RbMF0pCisgICAgICAgIHMgPSBzZWxmLmlvY2xhc3MoKQorICAgICAgICBnID0gc2VsZi5nZW5jbGFzcyhzLCBtYXhoZWFkZXJsZW49bikKKyAgICAgICAgZy5mbGF0dGVuKG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksIHNlbGYubG9uZ19zdWJqZWN0W25dKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3BhcmFtZXRlcl8wKHNlbGYpOgorICAgICAgICBzZWxmLm1heGhlYWRlcmxlbl9wYXJhbWV0ZXJfdGVzdCgwKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3BhcmFtZXRlcl8xMDAoc2VsZik6CisgICAgICAgIHNlbGYubWF4aGVhZGVybGVuX3BhcmFtZXRlcl90ZXN0KDEwMCkKKworICAgIGRlZiB0ZXN0X21heGhlYWRlcmxlbl9wYXJhbWV0ZXJfNDAoc2VsZik6CisgICAgICAgIHNlbGYubWF4aGVhZGVybGVuX3BhcmFtZXRlcl90ZXN0KDQwKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3BhcmFtZXRlcl8yMChzZWxmKToKKyAgICAgICAgc2VsZi5tYXhoZWFkZXJsZW5fcGFyYW1ldGVyX3Rlc3QoMjApCisKKyAgICBkZWYgbWF4aGVhZGVybGVuX3BvbGljeV90ZXN0KHNlbGYsIG4pOgorICAgICAgICBtc2cgPSBzZWxmLm1zZ21ha2VyKHNlbGYubG9uZ19zdWJqZWN0WzBdKQorICAgICAgICBzID0gc2VsZi5pb2NsYXNzKCkKKyAgICAgICAgZyA9IHNlbGYuZ2VuY2xhc3MocywgcG9saWN5PXBvbGljeS5kZWZhdWx0LmNsb25lKG1heF9saW5lX2xlbmd0aD1uKSkKKyAgICAgICAgZy5mbGF0dGVuKG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksIHNlbGYubG9uZ19zdWJqZWN0W25dKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3BvbGljeV8wKHNlbGYpOgorICAgICAgICBzZWxmLm1heGhlYWRlcmxlbl9wb2xpY3lfdGVzdCgwKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3BvbGljeV8xMDAoc2VsZik6CisgICAgICAgIHNlbGYubWF4aGVhZGVybGVuX3BvbGljeV90ZXN0KDEwMCkKKworICAgIGRlZiB0ZXN0X21heGhlYWRlcmxlbl9wb2xpY3lfNDAoc2VsZik6CisgICAgICAgIHNlbGYubWF4aGVhZGVybGVuX3BvbGljeV90ZXN0KDQwKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3BvbGljeV8yMChzZWxmKToKKyAgICAgICAgc2VsZi5tYXhoZWFkZXJsZW5fcG9saWN5X3Rlc3QoMjApCisKKyAgICBkZWYgbWF4aGVhZGVybGVuX3Bhcm1fb3ZlcnJpZGVzX3BvbGljeV90ZXN0KHNlbGYsIG4pOgorICAgICAgICBtc2cgPSBzZWxmLm1zZ21ha2VyKHNlbGYubG9uZ19zdWJqZWN0WzBdKQorICAgICAgICBzID0gc2VsZi5pb2NsYXNzKCkKKyAgICAgICAgZyA9IHNlbGYuZ2VuY2xhc3MocywgbWF4aGVhZGVybGVuPW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGljeT1wb2xpY3kuZGVmYXVsdC5jbG9uZShtYXhfbGluZV9sZW5ndGg9MTApKQorICAgICAgICBnLmZsYXR0ZW4obXNnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuZ2V0dmFsdWUoKSwgc2VsZi5sb25nX3N1YmplY3Rbbl0pCisKKyAgICBkZWYgdGVzdF9tYXhoZWFkZXJsZW5fcGFybV9vdmVycmlkZXNfcG9saWN5XzAoc2VsZik6CisgICAgICAgIHNlbGYubWF4aGVhZGVybGVuX3Bhcm1fb3ZlcnJpZGVzX3BvbGljeV90ZXN0KDApCisKKyAgICBkZWYgdGVzdF9tYXhoZWFkZXJsZW5fcGFybV9vdmVycmlkZXNfcG9saWN5XzEwMChzZWxmKToKKyAgICAgICAgc2VsZi5tYXhoZWFkZXJsZW5fcGFybV9vdmVycmlkZXNfcG9saWN5X3Rlc3QoMTAwKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3Bhcm1fb3ZlcnJpZGVzX3BvbGljeV80MChzZWxmKToKKyAgICAgICAgc2VsZi5tYXhoZWFkZXJsZW5fcGFybV9vdmVycmlkZXNfcG9saWN5X3Rlc3QoNDApCisKKyAgICBkZWYgdGVzdF9tYXhoZWFkZXJsZW5fcGFybV9vdmVycmlkZXNfcG9saWN5XzIwKHNlbGYpOgorICAgICAgICBzZWxmLm1heGhlYWRlcmxlbl9wYXJtX292ZXJyaWRlc19wb2xpY3lfdGVzdCgyMCkKKworCitjbGFzcyBUZXN0R2VuZXJhdG9yKFRlc3RHZW5lcmF0b3JCYXNlLCBUZXN0RW1haWxCYXNlKToKKworICAgIG1zZ21ha2VyID0gc3RhdGljbWV0aG9kKG1lc3NhZ2VfZnJvbV9zdHJpbmcpCisgICAgZ2VuY2xhc3MgPSBHZW5lcmF0b3IKKyAgICBpb2NsYXNzID0gaW8uU3RyaW5nSU8KKworCitjbGFzcyBUZXN0Qnl0ZXNHZW5lcmF0b3IoVGVzdEdlbmVyYXRvckJhc2UsIFRlc3RFbWFpbEJhc2UpOgorCisgICAgbXNnbWFrZXIgPSBzdGF0aWNtZXRob2QobWVzc2FnZV9mcm9tX2J5dGVzKQorICAgIGdlbmNsYXNzID0gQnl0ZXNHZW5lcmF0b3IKKyAgICBpb2NsYXNzID0gaW8uQnl0ZXNJTworICAgIGxvbmdfc3ViamVjdCA9IHtrZXk6IHguZW5jb2RlKCdhc2NpaScpCisgICAgICAgIGZvciBrZXksIHggaW4gVGVzdEdlbmVyYXRvckJhc2UubG9uZ19zdWJqZWN0Lml0ZW1zKCl9CisKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZW1haWwvdGVzdF9wb2xpY3kucHkgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfcG9saWN5LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA4NmNlNDAKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfcG9saWN5LnB5CkBAIC0wLDAgKzEsMTQ4IEBACitpbXBvcnQgdHlwZXMKK2ltcG9ydCB1bml0dGVzdAoraW1wb3J0IGVtYWlsLnBvbGljeQorCitjbGFzcyBQb2xpY3lBUElUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBsb25nTWVzc2FnZSA9IFRydWUKKworICAgICMgVGhlc2UgZGVmYXVsdCB2YWx1ZXMgYXJlIHRoZSBvbmVzIHNldCBvbiBlbWFpbC5wb2xpY3kuZGVmYXVsdC4KKyAgICAjIElmIGFueSBvZiB0aGVzZSBkZWZhdWx0cyBjaGFuZ2UsIHRoZSBkb2NzIG11c3QgYmUgdXBkYXRlZC4KKyAgICBwb2xpY3lfZGVmYXVsdHMgPSB7CisgICAgICAgICdtYXhfbGluZV9sZW5ndGgnOiAgICAgICAgICA3OCwKKyAgICAgICAgJ2xpbmVzZXAnOiAgICAgICAgICAgICAgICAgICdcbicsCisgICAgICAgICdtdXN0X2JlXzdiaXQnOiAgICAgICAgICAgICBGYWxzZSwKKyAgICAgICAgJ3JhaXNlX29uX2RlZmVjdCc6ICAgICAgICAgIEZhbHNlLAorICAgICAgICB9CisKKyAgICAjIEZvciBlYWNoIHBvbGljeSB1bmRlciB0ZXN0LCB3ZSBnaXZlIGhlcmUgdGhlIHZhbHVlcyBvZiB0aGUgYXR0cmlidXRlcworICAgICMgdGhhdCBhcmUgZGlmZmVyZW50IGZyb20gdGhlIGRlZmF1bHRzIGZvciB0aGF0IHBvbGljeS4KKyAgICBwb2xpY2llcyA9IHsKKyAgICAgICAgZW1haWwucG9saWN5LlBvbGljeSgpOiB7fSwKKyAgICAgICAgZW1haWwucG9saWN5LmRlZmF1bHQ6IHt9LAorICAgICAgICBlbWFpbC5wb2xpY3kuU01UUDogeydsaW5lc2VwJzogJ1xyXG4nfSwKKyAgICAgICAgZW1haWwucG9saWN5LkhUVFA6IHsnbGluZXNlcCc6ICdcclxuJywgJ21heF9saW5lX2xlbmd0aCc6IE5vbmV9LAorICAgICAgICBlbWFpbC5wb2xpY3kuc3RyaWN0OiB7J3JhaXNlX29uX2RlZmVjdCc6IFRydWV9LAorICAgICAgICB9CisKKyAgICBkZWYgdGVzdF9kZWZhdWx0cyhzZWxmKToKKyAgICAgICAgZm9yIHBvbGljeSwgY2hhbmdlZF9kZWZhdWx0cyBpbiBzZWxmLnBvbGljaWVzLml0ZW1zKCk6CisgICAgICAgICAgICBleHBlY3RlZCA9IHNlbGYucG9saWN5X2RlZmF1bHRzLmNvcHkoKQorICAgICAgICAgICAgZXhwZWN0ZWQudXBkYXRlKGNoYW5nZWRfZGVmYXVsdHMpCisgICAgICAgICAgICBmb3IgYXR0ciwgdmFsdWUgaW4gZXhwZWN0ZWQuaXRlbXMoKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldGF0dHIocG9saWN5LCBhdHRyKSwgdmFsdWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgiY2hhbmdlIHt9IGRvY3MvZG9jc3RyaW5ncyBpZiBkZWZhdWx0cyBoYXZlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNoYW5nZWQiKS5mb3JtYXQocG9saWN5KSkKKworICAgIGRlZiB0ZXN0X2FsbF9hdHRyaWJ1dGVzX2NvdmVyZWQoc2VsZik6CisgICAgICAgIGZvciBhdHRyIGluIGRpcihlbWFpbC5wb2xpY3kuZGVmYXVsdCk6CisgICAgICAgICAgICBpZiAoYXR0ci5zdGFydHN3aXRoKCdfJykgb3IKKyAgICAgICAgICAgICAgIGlzaW5zdGFuY2UoZ2V0YXR0cihlbWFpbC5wb2xpY3kuUG9saWN5LCBhdHRyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZXMuRnVuY3Rpb25UeXBlKSk6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihhdHRyLCBzZWxmLnBvbGljeV9kZWZhdWx0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ7fSBpcyBub3QgZnVsbHkgdGVzdGVkIi5mb3JtYXQoYXR0cikpCisKKyAgICBkZWYgdGVzdF9wb2xpY3lfaXNfaW1tdXRhYmxlKHNlbGYpOgorICAgICAgICBmb3IgcG9saWN5IGluIHNlbGYucG9saWNpZXM6CisgICAgICAgICAgICBmb3IgYXR0ciBpbiBzZWxmLnBvbGljeV9kZWZhdWx0czoKKyAgICAgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoQXR0cmlidXRlRXJyb3IsIGF0dHIrIi4qcmVhZC1vbmx5Iik6CisgICAgICAgICAgICAgICAgICAgIHNldGF0dHIocG9saWN5LCBhdHRyLCBOb25lKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KEF0dHJpYnV0ZUVycm9yLCAnbm8gYXR0cmlidXRlLipmb28nKToKKyAgICAgICAgICAgICAgICBwb2xpY3kuZm9vID0gTm9uZQorCisgICAgZGVmIHRlc3Rfc2V0X3BvbGljeV9hdHRyc193aGVuX2NhbGxlZGwoc2VsZik6CisgICAgICAgIHRlc3RhdHRyZGljdCA9IHsgYXR0cjogTm9uZSBmb3IgYXR0ciBpbiBzZWxmLnBvbGljeV9kZWZhdWx0cyB9CisgICAgICAgIGZvciBwb2xpY3ljbGFzcyBpbiBzZWxmLnBvbGljaWVzOgorICAgICAgICAgICAgcG9saWN5ID0gcG9saWN5Y2xhc3MuY2xvbmUoKip0ZXN0YXR0cmRpY3QpCisgICAgICAgICAgICBmb3IgYXR0ciBpbiBzZWxmLnBvbGljeV9kZWZhdWx0czoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzTm9uZShnZXRhdHRyKHBvbGljeSwgYXR0cikpCisKKyAgICBkZWYgdGVzdF9yZWplY3Rfbm9uX3BvbGljeV9rZXl3b3JkX3doZW5fY2FsbGVkKHNlbGYpOgorICAgICAgICBmb3IgcG9saWN5Y2xhc3MgaW4gc2VsZi5wb2xpY2llczoKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgICAgICBwb2xpY3ljbGFzcyh0aGlzX2tleXdvcmRfc2hvdWxkX25vdF9iZV92YWxpZD1Ob25lKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgICAgIHBvbGljeWNsYXNzKG5ld3RsaW5lPU5vbmUpCisKKyAgICBkZWYgdGVzdF9wb2xpY3lfYWRkaXRpb24oc2VsZik6CisgICAgICAgIGV4cGVjdGVkID0gc2VsZi5wb2xpY3lfZGVmYXVsdHMuY29weSgpCisgICAgICAgIHAxID0gZW1haWwucG9saWN5LmRlZmF1bHQuY2xvbmUobWF4X2xpbmVfbGVuZ3RoPTEwMCkKKyAgICAgICAgcDIgPSBlbWFpbC5wb2xpY3kuZGVmYXVsdC5jbG9uZShtYXhfbGluZV9sZW5ndGg9NTApCisgICAgICAgIGFkZGVkID0gcDEgKyBwMgorICAgICAgICBleHBlY3RlZC51cGRhdGUobWF4X2xpbmVfbGVuZ3RoPTUwKQorICAgICAgICBmb3IgYXR0ciwgdmFsdWUgaW4gZXhwZWN0ZWQuaXRlbXMoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0YXR0cihhZGRlZCwgYXR0ciksIHZhbHVlKQorICAgICAgICBhZGRlZCA9IHAyICsgcDEKKyAgICAgICAgZXhwZWN0ZWQudXBkYXRlKG1heF9saW5lX2xlbmd0aD0xMDApCisgICAgICAgIGZvciBhdHRyLCB2YWx1ZSBpbiBleHBlY3RlZC5pdGVtcygpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRhdHRyKGFkZGVkLCBhdHRyKSwgdmFsdWUpCisgICAgICAgIGFkZGVkID0gYWRkZWQgKyBlbWFpbC5wb2xpY3kuZGVmYXVsdAorICAgICAgICBmb3IgYXR0ciwgdmFsdWUgaW4gZXhwZWN0ZWQuaXRlbXMoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0YXR0cihhZGRlZCwgYXR0ciksIHZhbHVlKQorCisgICAgZGVmIHRlc3RfcmVnaXN0ZXJfZGVmZWN0KHNlbGYpOgorICAgICAgICBjbGFzcyBEdW1teToKKyAgICAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgICAgICAgICBzZWxmLmRlZmVjdHMgPSBbXQorICAgICAgICBvYmogPSBEdW1teSgpCisgICAgICAgIGRlZmVjdCA9IG9iamVjdCgpCisgICAgICAgIHBvbGljeSA9IGVtYWlsLnBvbGljeS5Qb2xpY3koKQorICAgICAgICBwb2xpY3kucmVnaXN0ZXJfZGVmZWN0KG9iaiwgZGVmZWN0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9iai5kZWZlY3RzLCBbZGVmZWN0XSkKKyAgICAgICAgZGVmZWN0MiA9IG9iamVjdCgpCisgICAgICAgIHBvbGljeS5yZWdpc3Rlcl9kZWZlY3Qob2JqLCBkZWZlY3QyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9iai5kZWZlY3RzLCBbZGVmZWN0LCBkZWZlY3QyXSkKKworICAgIGNsYXNzIE15T2JqOgorICAgICAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgICAgICBzZWxmLmRlZmVjdHMgPSBbXQorCisgICAgY2xhc3MgTXlEZWZlY3QoRXhjZXB0aW9uKToKKyAgICAgICAgcGFzcworCisgICAgZGVmIHRlc3RfaGFuZGxlX2RlZmVjdF9yYWlzZXNfb25fc3RyaWN0KHNlbGYpOgorICAgICAgICBmb28gPSBzZWxmLk15T2JqKCkKKyAgICAgICAgZGVmZWN0ID0gc2VsZi5NeURlZmVjdCgidGhlIHRlbGx5IGlzIGJyb2tlbiIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXNSZWdleChzZWxmLk15RGVmZWN0LCAidGhlIHRlbGx5IGlzIGJyb2tlbiIpOgorICAgICAgICAgICAgZW1haWwucG9saWN5LnN0cmljdC5oYW5kbGVfZGVmZWN0KGZvbywgZGVmZWN0KQorCisgICAgZGVmIHRlc3RfaGFuZGxlX2RlZmVjdF9yZWdpc3RlcnNfZGVmZWN0KHNlbGYpOgorICAgICAgICBmb28gPSBzZWxmLk15T2JqKCkKKyAgICAgICAgZGVmZWN0MSA9IHNlbGYuTXlEZWZlY3QoIm9uZSIpCisgICAgICAgIGVtYWlsLnBvbGljeS5kZWZhdWx0LmhhbmRsZV9kZWZlY3QoZm9vLCBkZWZlY3QxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvby5kZWZlY3RzLCBbZGVmZWN0MV0pCisgICAgICAgIGRlZmVjdDIgPSBzZWxmLk15RGVmZWN0KCJ0d28iKQorICAgICAgICBlbWFpbC5wb2xpY3kuZGVmYXVsdC5oYW5kbGVfZGVmZWN0KGZvbywgZGVmZWN0MikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb28uZGVmZWN0cywgW2RlZmVjdDEsIGRlZmVjdDJdKQorCisgICAgY2xhc3MgTXlQb2xpY3koZW1haWwucG9saWN5LlBvbGljeSk6CisgICAgICAgIGRlZmVjdHMgPSBbXQorICAgICAgICBkZWYgcmVnaXN0ZXJfZGVmZWN0KHNlbGYsIG9iaiwgZGVmZWN0KToKKyAgICAgICAgICAgIHNlbGYuZGVmZWN0cy5hcHBlbmQoZGVmZWN0KQorCisgICAgZGVmIHRlc3Rfb3ZlcnJpZGRlbl9yZWdpc3Rlcl9kZWZlY3Rfc3RpbGxfcmFpc2VzKHNlbGYpOgorICAgICAgICBmb28gPSBzZWxmLk15T2JqKCkKKyAgICAgICAgZGVmZWN0ID0gc2VsZi5NeURlZmVjdCgidGhlIHRlbGx5IGlzIGJyb2tlbiIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXNSZWdleChzZWxmLk15RGVmZWN0LCAidGhlIHRlbGx5IGlzIGJyb2tlbiIpOgorICAgICAgICAgICAgc2VsZi5NeVBvbGljeShyYWlzZV9vbl9kZWZlY3Q9VHJ1ZSkuaGFuZGxlX2RlZmVjdChmb28sIGRlZmVjdCkKKworICAgIGRlZiB0ZXN0X292ZXJyaWRlbl9yZWdpc3Rlcl9kZWZlY3Rfd29ya3Moc2VsZik6CisgICAgICAgIGZvbyA9IHNlbGYuTXlPYmooKQorICAgICAgICBkZWZlY3QxID0gc2VsZi5NeURlZmVjdCgib25lIikKKyAgICAgICAgbXlfcG9saWN5ID0gc2VsZi5NeVBvbGljeSgpCisgICAgICAgIG15X3BvbGljeS5oYW5kbGVfZGVmZWN0KGZvbywgZGVmZWN0MSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChteV9wb2xpY3kuZGVmZWN0cywgW2RlZmVjdDFdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvby5kZWZlY3RzLCBbXSkKKyAgICAgICAgZGVmZWN0MiA9IHNlbGYuTXlEZWZlY3QoInR3byIpCisgICAgICAgIG15X3BvbGljeS5oYW5kbGVfZGVmZWN0KGZvbywgZGVmZWN0MikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChteV9wb2xpY3kuZGVmZWN0cywgW2RlZmVjdDEsIGRlZmVjdDJdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvby5kZWZlY3RzLCBbXSkKKworICAgICMgWFhYOiBOZWVkIHN1YmNsYXNzaW5nIHRlc3RzLgorICAgICMgRm9yIGFkZGluZyBzdWJjbGFzc2VkIG9iamVjdHMsIG1ha2Ugc3VyZSB0aGUgdXN1YWwgcnVsZXMgYXBwbHkgKHN1YmNsYXNzCisgICAgIyB3aW5zKSwgYnV0IHRoYXQgdGhlIG9yZGVyIHN0aWxsIHdvcmtzIChyaWdodCBvdmVycmlkZXMgbGVmdCkuCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfdXRpbHMucHkgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfdXRpbHMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTAwM2E2NAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvdGVzdF91dGlscy5weQpAQCAtMCwwICsxLDQ1IEBACitpbXBvcnQgZGF0ZXRpbWUKK2Zyb20gZW1haWwgaW1wb3J0IHV0aWxzCitpbXBvcnQgdW5pdHRlc3QKKworY2xhc3MgRGF0ZVRpbWVUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkYXRlc3RyaW5nID0gJ1N1biwgMjMgU2VwIDIwMDEgMjA6MTA6NTUnCisgICAgZGF0ZWFyZ3MgPSAoMjAwMSwgOSwgMjMsIDIwLCAxMCwgNTUpCisgICAgb2Zmc2V0c3RyaW5nID0gJyAtMDcwMCcKKyAgICB1dGNvZmZzZXQgPSBkYXRldGltZS50aW1lZGVsdGEoaG91cnM9LTcpCisgICAgdHogPSBkYXRldGltZS50aW1lem9uZSh1dGNvZmZzZXQpCisgICAgbmFpdmVfZHQgPSBkYXRldGltZS5kYXRldGltZSgqZGF0ZWFyZ3MpCisgICAgYXdhcmVfZHQgPSBkYXRldGltZS5kYXRldGltZSgqZGF0ZWFyZ3MsIHR6aW5mbz10eikKKworICAgIGRlZiB0ZXN0X25haXZlX2RhdGV0aW1lKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHV0aWxzLmZvcm1hdF9kYXRldGltZShzZWxmLm5haXZlX2R0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmRhdGVzdHJpbmcgKyAnIC0wMDAwJykKKworICAgIGRlZiB0ZXN0X2F3YXJlX2RhdGV0aW1lKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHV0aWxzLmZvcm1hdF9kYXRldGltZShzZWxmLmF3YXJlX2R0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmRhdGVzdHJpbmcgKyBzZWxmLm9mZnNldHN0cmluZykKKworICAgIGRlZiB0ZXN0X3VzZWdtdChzZWxmKToKKyAgICAgICAgdXRjX2R0ID0gZGF0ZXRpbWUuZGF0ZXRpbWUoKnNlbGYuZGF0ZWFyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR6aW5mbz1kYXRldGltZS50aW1lem9uZS51dGMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodXRpbHMuZm9ybWF0X2RhdGV0aW1lKHV0Y19kdCwgdXNlZ210PVRydWUpLAorICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZGF0ZXN0cmluZyArICcgR01UJykKKworICAgIGRlZiB0ZXN0X3VzZWdtdF93aXRoX25haXZlX2RhdGV0aW1lX3JhaXNlcyhzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIHV0aWxzLmZvcm1hdF9kYXRldGltZShzZWxmLm5haXZlX2R0LCB1c2VnbXQ9VHJ1ZSkKKworICAgIGRlZiB0ZXN0X3VzZWdtdF93aXRoX25vbl91dGNfZGF0ZXRpbWVfcmFpc2VzKHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgdXRpbHMuZm9ybWF0X2RhdGV0aW1lKHNlbGYuYXdhcmVfZHQsIHVzZWdtdD1UcnVlKQorCisgICAgZGVmIHRlc3RfcGFyc2VkYXRlX3RvX2RhdGV0aW1lKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgdXRpbHMucGFyc2VkYXRlX3RvX2RhdGV0aW1lKHNlbGYuZGF0ZXN0cmluZyArIHNlbGYub2Zmc2V0c3RyaW5nKSwKKyAgICAgICAgICAgIHNlbGYuYXdhcmVfZHQpCisKKyAgICBkZWYgdGVzdF9wYXJzZWRhdGVfdG9fZGF0ZXRpbWVfbmFpdmUoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICB1dGlscy5wYXJzZWRhdGVfdG9fZGF0ZXRpbWUoc2VsZi5kYXRlc3RyaW5nICsgJyAtMDAwMCcpLAorICAgICAgICAgICAgc2VsZi5uYWl2ZV9kdCkKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L3Rlc3RfZW1haWxfdG9ydHVyZS5weSBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvdG9ydHVyZV90ZXN0LnB5CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC90ZXN0X2VtYWlsX3RvcnR1cmUucHkKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvdG9ydHVyZV90ZXN0LnB5CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Vwb2xsLnB5IGIvTGliL3Rlc3QvdGVzdF9lcG9sbC5weQppbmRleCAwODNmZDdmLi43Zjk1NDdmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Vwb2xsLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZXBvbGwucHkKQEAgLTc1LDYgKzc1LDkgQEAKICAgICAgICAgZXAuY2xvc2UoKQogICAgICAgICBzZWxmLmFzc2VydFRydWUoZXAuY2xvc2VkKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBlcC5maWxlbm8pCisgICAgICAgIGlmIGhhc2F0dHIoc2VsZWN0LCAiRVBPTExfQ0xPRVhFQyIpOgorICAgICAgICAgICAgc2VsZWN0LmVwb2xsKHNlbGVjdC5FUE9MTF9DTE9FWEVDKS5jbG9zZSgpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBzZWxlY3QuZXBvbGwsIGZsYWdzPTEyMzU2KQogCiAgICAgZGVmIHRlc3RfYmFkY3JlYXRlKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGVjdC5lcG9sbCwgMSwgMiwgMykKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZXhjZXB0aW9ucy5weSBiL0xpYi90ZXN0L3Rlc3RfZXhjZXB0aW9ucy5weQppbmRleCA3YTJkZDBjLi40MjUzNmQzIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2V4Y2VwdGlvbnMucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9leGNlcHRpb25zLnB5CkBAIC04LDcgKzgsNyBAQAogaW1wb3J0IGVycm5vCiAKIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCAoVEVTVEZOLCB1bmxpbmssIHJ1bl91bml0dGVzdCwgY2FwdHVyZWRfb3V0cHV0LAotICAgICAgICAgICAgICAgICAgICAgICAgICBnY19jb2xsZWN0LCBjcHl0aG9uX29ubHkpCisgICAgICAgICAgICAgICAgICAgICAgICAgIGdjX2NvbGxlY3QsIGNweXRob25fb25seSwgbm9fdHJhY2luZykKIAogIyBYWFggVGhpcyBpcyBub3QgcmVhbGx5IGVub3VnaCwgZWFjaCAqb3BlcmF0aW9uKiBzaG91bGQgYmUgdGVzdGVkIQogCkBAIC00Niw4ICs0Niw4IEBACiAgICAgICAgICAgICBmcC5jbG9zZSgpCiAgICAgICAgICAgICB1bmxpbmsoVEVTVEZOKQogCi0gICAgICAgIHNlbGYucmFpc2VfY2F0Y2goSU9FcnJvciwgIklPRXJyb3IiKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJT0Vycm9yLCBvcGVuLCAndGhpcyBmaWxlIGRvZXMgbm90IGV4aXN0JywgJ3InKQorICAgICAgICBzZWxmLnJhaXNlX2NhdGNoKE9TRXJyb3IsICJPU0Vycm9yIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgb3BlbiwgJ3RoaXMgZmlsZSBkb2VzIG5vdCBleGlzdCcsICdyJykKIAogICAgICAgICBzZWxmLnJhaXNlX2NhdGNoKEltcG9ydEVycm9yLCAiSW1wb3J0RXJyb3IiKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbXBvcnRFcnJvciwgX19pbXBvcnRfXywgInVuZGVmaW5lZF9tb2R1bGUiKQpAQCAtMTkyLDExICsxOTIsMzUgQEAKICAgICAgICAgZXhjZXB0IE5hbWVFcnJvcjoKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKFdpbmRvd3NFcnJvcigxMDAxKSksICIxMDAxIikKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKFdpbmRvd3NFcnJvcigxMDAxLCAibWVzc2FnZSIpKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIltFcnJvciAxMDAxXSBtZXNzYWdlIikKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoV2luZG93c0Vycm9yKDEwMDEsICJtZXNzYWdlIikuZXJybm8sIDIyKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChXaW5kb3dzRXJyb3IoMTAwMSwgIm1lc3NhZ2UiKS53aW5lcnJvciwgMTAwMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoV2luZG93c0Vycm9yLCBPU0Vycm9yKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoT1NFcnJvcigxMDAxKSksICIxMDAxIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKE9TRXJyb3IoMTAwMSwgIm1lc3NhZ2UiKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJbRXJybm8gMTAwMV0gbWVzc2FnZSIpCisgICAgICAgICAgICAjIFBPU0lYIGVycm5vICg5IGFrYSBFQkFERikgaXMgdW50cmFuc2xhdGVkCisgICAgICAgICAgICB3ID0gT1NFcnJvcig5LCAnZm9vJywgJ2JhcicpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcuZXJybm8sIDkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcud2luZXJyb3IsIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih3KSwgIltFcnJubyA5XSBmb286ICdiYXInIikKKyAgICAgICAgICAgICMgRVJST1JfUEFUSF9OT1RfRk9VTkQgKHdpbiBlcnJvciAzKSBiZWNvbWVzIEVOT0VOVCAoMikKKyAgICAgICAgICAgIHcgPSBPU0Vycm9yKDAsICdmb28nLCAnYmFyJywgMykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwody5lcnJubywgMikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwody53aW5lcnJvciwgMykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwody5zdHJlcnJvciwgJ2ZvbycpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcuZmlsZW5hbWUsICdiYXInKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIodyksICJbRXJyb3IgM10gZm9vOiAnYmFyJyIpCisgICAgICAgICAgICAjIFVua25vd24gd2luIGVycm9yIGJlY29tZXMgRUlOVkFMICgyMikKKyAgICAgICAgICAgIHcgPSBPU0Vycm9yKDAsICdmb28nLCBOb25lLCAxMDAxKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LmVycm5vLCAyMikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwody53aW5lcnJvciwgMTAwMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwody5zdHJlcnJvciwgJ2ZvbycpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcuZmlsZW5hbWUsIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih3KSwgIltFcnJvciAxMDAxXSBmb28iKQorICAgICAgICAgICAgIyBOb24tbnVtZXJpYyAiZXJybm8iCisgICAgICAgICAgICB3ID0gT1NFcnJvcignYmFyJywgJ2ZvbycpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcuZXJybm8sICdiYXInKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LndpbmVycm9yLCBOb25lKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LnN0cmVycm9yLCAnZm9vJykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwody5maWxlbmFtZSwgTm9uZSkKIAogICAgIGRlZiB0ZXN0QXR0cmlidXRlcyhzZWxmKToKICAgICAgICAgIyB0ZXN0IHRoYXQgZXhjZXB0aW9uIGF0dHJpYnV0ZXMgYXJlIGhhcHB5CkBAIC0yNzQsMTEgKzI5OCwxMiBAQAogICAgICAgICAgICAgICAgICAnc3RhcnQnIDogMCwgJ2VuZCcgOiAxfSksCiAgICAgICAgIF0KICAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBNb3JlIHRlc3RzIGFyZSBpbiB0ZXN0X1dpbmRvd3NFcnJvcgogICAgICAgICAgICAgZXhjZXB0aW9uTGlzdC5hcHBlbmQoCiAgICAgICAgICAgICAgICAgKFdpbmRvd3NFcnJvciwgKDEsICdzdHJFcnJvclN0cicsICdmaWxlbmFtZVN0cicpLAogICAgICAgICAgICAgICAgICAgICB7J2FyZ3MnIDogKDEsICdzdHJFcnJvclN0cicpLAotICAgICAgICAgICAgICAgICAgICAgJ3N0cmVycm9yJyA6ICdzdHJFcnJvclN0cicsICd3aW5lcnJvcicgOiAxLAotICAgICAgICAgICAgICAgICAgICAgJ2Vycm5vJyA6IDIyLCAnZmlsZW5hbWUnIDogJ2ZpbGVuYW1lU3RyJ30pCisgICAgICAgICAgICAgICAgICAgICAnc3RyZXJyb3InIDogJ3N0ckVycm9yU3RyJywgJ3dpbmVycm9yJyA6IE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAnZXJybm8nIDogMSwgJ2ZpbGVuYW1lJyA6ICdmaWxlbmFtZVN0cid9KQogICAgICAgICAgICAgKQogICAgICAgICBleGNlcHQgTmFtZUVycm9yOgogICAgICAgICAgICAgcGFzcwpAQCAtMzYyLDE5ICszODcsMzYgQEAKIAogICAgIGRlZiB0ZXN0Q2hhaW5pbmdBdHRycyhzZWxmKToKICAgICAgICAgZSA9IEV4Y2VwdGlvbigpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5fX2NvbnRleHRfXywgTm9uZSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLl9fY2F1c2VfXywgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZS5fX2NvbnRleHRfXykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhlLl9fY2F1c2VfXywgRWxsaXBzaXMpCiAKICAgICAgICAgZSA9IFR5cGVFcnJvcigpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5fX2NvbnRleHRfXywgTm9uZSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLl9fY2F1c2VfXywgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZS5fX2NvbnRleHRfXykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhlLl9fY2F1c2VfXywgRWxsaXBzaXMpCiAKICAgICAgICAgY2xhc3MgTXlFeGNlcHRpb24oRW52aXJvbm1lbnRFcnJvcik6CiAgICAgICAgICAgICBwYXNzCiAKICAgICAgICAgZSA9IE15RXhjZXB0aW9uKCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLl9fY29udGV4dF9fLCBOb25lKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuX19jYXVzZV9fLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShlLl9fY29udGV4dF9fKQorICAgICAgICBzZWxmLmFzc2VydElzKGUuX19jYXVzZV9fLCBFbGxpcHNpcykKKworICAgIGRlZiB0ZXN0Q2hhaW5pbmdEZXNjcmlwdG9ycyhzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCkKKyAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBleGM6CisgICAgICAgICAgICBlID0gZXhjCisKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZS5fX2NvbnRleHRfXykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhlLl9fY2F1c2VfXywgRWxsaXBzaXMpCisKKyAgICAgICAgZS5fX2NvbnRleHRfXyA9IE5hbWVFcnJvcigpCisgICAgICAgIGUuX19jYXVzZV9fID0gTm9uZQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZS5fX2NvbnRleHRfXywgTmFtZUVycm9yKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShlLl9fY2F1c2VfXykKKworICAgICAgICBlLl9fY2F1c2VfXyA9IEVsbGlwc2lzCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZS5fX2NhdXNlX18sIEVsbGlwc2lzKQogCiAgICAgZGVmIHRlc3RLZXl3b3JkQXJncyhzZWxmKToKICAgICAgICAgIyB0ZXN0IHRoYXQgYnVpbHRpbiBleGNlcHRpb24gZG9uJ3QgdGFrZSBrZXl3b3JkIGFyZ3MsCkBAIC0zODksNiArNDMxLDcgQEAKICAgICAgICAgeCA9IERlcml2ZWRFeGNlcHRpb24oZmFuY3lfYXJnPTQyKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHguZmFuY3lfYXJnLCA0MikKIAorICAgIEBub190cmFjaW5nCiAgICAgZGVmIHRlc3RJbmZpbml0ZVJlY3Vyc2lvbihzZWxmKToKICAgICAgICAgZGVmIGYoKToKICAgICAgICAgICAgIHJldHVybiBmKCkKQEAgLTcyMSw2ICs3NjQsNyBAQAogICAgICAgICB1LnN0YXJ0ID0gMTAwMAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih1KSwgImNhbid0IHRyYW5zbGF0ZSBjaGFyYWN0ZXJzIGluIHBvc2l0aW9uIDEwMDAtNDogOTY1MjMwOTUxNDQzNjg1NzI0OTk3IikKIAorICAgIEBub190cmFjaW5nCiAgICAgZGVmIHRlc3RfYmFkaXNpbnN0YW5jZShzZWxmKToKICAgICAgICAgIyBCdWcgIzI1NDI6IGlmIGlzc3ViY2xhc3MoZSwgTXlFeGNlcHRpb24pIHJhaXNlcyBhbiBleGNlcHRpb24sCiAgICAgICAgICMgaXQgc2hvdWxkIGJlIGlnbm9yZWQKQEAgLTgzMSw2ICs4NzUsNyBAQAogICAgICAgICAgICAgc2VsZi5mYWlsKCJNZW1vcnlFcnJvciBub3QgcmFpc2VkIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cigpLCBOb25lKQogCisgICAgQG5vX3RyYWNpbmcKICAgICBkZWYgdGVzdF9yZWN1cnNpb25fZXJyb3JfY2xlYW51cChzZWxmKToKICAgICAgICAgIyBTYW1lIHRlc3QgYXMgYWJvdmUsIGJ1dCB3aXRoICJyZWN1cnNpb24gZXhjZWVkZWQiIGVycm9ycwogICAgICAgICBjbGFzcyBDOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9leHRjYWxsLnB5IGIvTGliL3Rlc3QvdGVzdF9leHRjYWxsLnB5CmluZGV4IDFmN2Y2MzAuLjZiNmMxMmQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZXh0Y2FsbC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2V4dGNhbGwucHkKQEAgLTY2LDE3ICs2NiwxNyBAQAogICAgID4+PiBnKCkKICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgICAuLi4KLSAgICBUeXBlRXJyb3I6IGcoKSB0YWtlcyBhdCBsZWFzdCAxIGFyZ3VtZW50ICgwIGdpdmVuKQorICAgIFR5cGVFcnJvcjogZygpIG1pc3NpbmcgMSByZXF1aXJlZCBwb3NpdGlvbmFsIGFyZ3VtZW50OiAneCcKIAogICAgID4+PiBnKCooKSkKICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgICAuLi4KLSAgICBUeXBlRXJyb3I6IGcoKSB0YWtlcyBhdCBsZWFzdCAxIGFyZ3VtZW50ICgwIGdpdmVuKQorICAgIFR5cGVFcnJvcjogZygpIG1pc3NpbmcgMSByZXF1aXJlZCBwb3NpdGlvbmFsIGFyZ3VtZW50OiAneCcKIAogICAgID4+PiBnKCooKSwgKip7fSkKICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgICAuLi4KLSAgICBUeXBlRXJyb3I6IGcoKSB0YWtlcyBhdCBsZWFzdCAxIGFyZ3VtZW50ICgwIGdpdmVuKQorICAgIFR5cGVFcnJvcjogZygpIG1pc3NpbmcgMSByZXF1aXJlZCBwb3NpdGlvbmFsIGFyZ3VtZW50OiAneCcKIAogICAgID4+PiBnKDEpCiAgICAgMSAoKSB7fQpAQCAtMTUxLDcgKzE1MSw3IEBACiAgICAgPj4+IGcoMSwgMiwgMywgKip7J3gnOiA0LCAneSc6IDV9KQogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgIC4uLgotICAgIFR5cGVFcnJvcjogZygpIGdvdCBtdWx0aXBsZSB2YWx1ZXMgZm9yIGtleXdvcmQgYXJndW1lbnQgJ3gnCisgICAgVHlwZUVycm9yOiBnKCkgZ290IG11bHRpcGxlIHZhbHVlcyBmb3IgYXJndW1lbnQgJ3gnCiAKICAgICA+Pj4gZigqKnsxOjJ9KQogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKQEAgLTI2MywyOSArMjYzLDgwIEBACiAgICAgPj4+IGYoKip4KQogICAgIDEgMgogCi1BIG9ic2N1cmUgbWVzc2FnZToKK1RvbyBtYW55IGFyZ3VtZW50czoKIAotICAgID4+PiBkZWYgZihhLCBiKToKLSAgICAuLi4gICAgcGFzcwotICAgID4+PiBmKGI9MSkKKyAgICA+Pj4gZGVmIGYoKTogcGFzcworICAgID4+PiBmKDEpCiAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgogICAgICAgLi4uCi0gICAgVHlwZUVycm9yOiBmKCkgdGFrZXMgZXhhY3RseSAyIGFyZ3VtZW50cyAoMSBnaXZlbikKLQotVGhlIG51bWJlciBvZiBhcmd1bWVudHMgcGFzc2VkIGluIGluY2x1ZGVzIGtleXdvcmRzOgotCi0gICAgPj4+IGRlZiBmKGEpOgotICAgIC4uLiAgICBwYXNzCi0gICAgPj4+IGYoNiwgYT00LCAqKDEsIDIsIDMpKQorICAgIFR5cGVFcnJvcjogZigpIHRha2VzIDAgcG9zaXRpb25hbCBhcmd1bWVudHMgYnV0IDEgd2FzIGdpdmVuCisgICAgPj4+IGRlZiBmKGEpOiBwYXNzCisgICAgPj4+IGYoMSwgMikKICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgICAuLi4KLSAgICBUeXBlRXJyb3I6IGYoKSB0YWtlcyBleGFjdGx5IDEgcG9zaXRpb25hbCBhcmd1bWVudCAoNSBnaXZlbikKLSAgICA+Pj4gZGVmIGYoYSwgKiwga3cpOgotICAgIC4uLiAgICBwYXNzCi0gICAgPj4+IGYoNiwgNCwga3c9NCkKKyAgICBUeXBlRXJyb3I6IGYoKSB0YWtlcyAxIHBvc2l0aW9uYWwgYXJndW1lbnQgYnV0IDIgd2VyZSBnaXZlbgorICAgID4+PiBkZWYgZihhLCBiPTEpOiBwYXNzCisgICAgPj4+IGYoMSwgMiwgMykKICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgICAuLi4KLSAgICBUeXBlRXJyb3I6IGYoKSB0YWtlcyBleGFjdGx5IDEgcG9zaXRpb25hbCBhcmd1bWVudCAoMyBnaXZlbikKKyAgICBUeXBlRXJyb3I6IGYoKSB0YWtlcyBmcm9tIDEgdG8gMiBwb3NpdGlvbmFsIGFyZ3VtZW50cyBidXQgMyB3ZXJlIGdpdmVuCisgICAgPj4+IGRlZiBmKCosIGt3KTogcGFzcworICAgID4+PiBmKDEsIGt3PTMpCisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgLi4uCisgICAgVHlwZUVycm9yOiBmKCkgdGFrZXMgMCBwb3NpdGlvbmFsIGFyZ3VtZW50cyBidXQgMSBwb3NpdGlvbmFsIGFyZ3VtZW50IChhbmQgMSBrZXl3b3JkLW9ubHkgYXJndW1lbnQpIHdlcmUgZ2l2ZW4KKyAgICA+Pj4gZGVmIGYoKiwga3csIGIpOiBwYXNzCisgICAgPj4+IGYoMSwgMiwgMywgYj0zLCBrdz0zKQorICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKKyAgICAgIC4uLgorICAgIFR5cGVFcnJvcjogZigpIHRha2VzIDAgcG9zaXRpb25hbCBhcmd1bWVudHMgYnV0IDMgcG9zaXRpb25hbCBhcmd1bWVudHMgKGFuZCAyIGtleXdvcmQtb25seSBhcmd1bWVudHMpIHdlcmUgZ2l2ZW4KKyAgICA+Pj4gZGVmIGYoYSwgYj0yLCAqLCBrdyk6IHBhc3MKKyAgICA+Pj4gZigyLCAzLCA0LCBrdz00KQorICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKKyAgICAgIC4uLgorICAgIFR5cGVFcnJvcjogZigpIHRha2VzIGZyb20gMSB0byAyIHBvc2l0aW9uYWwgYXJndW1lbnRzIGJ1dCAzIHBvc2l0aW9uYWwgYXJndW1lbnRzIChhbmQgMSBrZXl3b3JkLW9ubHkgYXJndW1lbnQpIHdlcmUgZ2l2ZW4KKworVG9vIGZldyBhbmQgbWlzc2luZyBhcmd1bWVudHM6CisKKyAgICA+Pj4gZGVmIGYoYSk6IHBhc3MKKyAgICA+Pj4gZigpCisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgLi4uCisgICAgVHlwZUVycm9yOiBmKCkgbWlzc2luZyAxIHJlcXVpcmVkIHBvc2l0aW9uYWwgYXJndW1lbnQ6ICdhJworICAgID4+PiBkZWYgZihhLCBiKTogcGFzcworICAgID4+PiBmKCkKKyAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAuLi4KKyAgICBUeXBlRXJyb3I6IGYoKSBtaXNzaW5nIDIgcmVxdWlyZWQgcG9zaXRpb25hbCBhcmd1bWVudHM6ICdhJyBhbmQgJ2InCisgICAgPj4+IGRlZiBmKGEsIGIsIGMpOiBwYXNzCisgICAgPj4+IGYoKQorICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKKyAgICAgIC4uLgorICAgIFR5cGVFcnJvcjogZigpIG1pc3NpbmcgMyByZXF1aXJlZCBwb3NpdGlvbmFsIGFyZ3VtZW50czogJ2EnLCAnYicsIGFuZCAnYycKKyAgICA+Pj4gZGVmIGYoYSwgYiwgYywgZCwgZSk6IHBhc3MKKyAgICA+Pj4gZigpCisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgLi4uCisgICAgVHlwZUVycm9yOiBmKCkgbWlzc2luZyA1IHJlcXVpcmVkIHBvc2l0aW9uYWwgYXJndW1lbnRzOiAnYScsICdiJywgJ2MnLCAnZCcsIGFuZCAnZScKKyAgICA+Pj4gZGVmIGYoYSwgYj00LCBjPTUsIGQ9NSk6IHBhc3MKKyAgICA+Pj4gZihjPTEyLCBiPTkpCisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgLi4uCisgICAgVHlwZUVycm9yOiBmKCkgbWlzc2luZyAxIHJlcXVpcmVkIHBvc2l0aW9uYWwgYXJndW1lbnQ6ICdhJworCitTYW1lIHdpdGgga2V5d29yZCBvbmx5IGFyZ3M6CisKKyAgICA+Pj4gZGVmIGYoKiwgdyk6IHBhc3MKKyAgICA+Pj4gZigpCisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgLi4uCisgICAgVHlwZUVycm9yOiBmKCkgbWlzc2luZyAxIHJlcXVpcmVkIGtleXdvcmQtb25seSBhcmd1bWVudDogJ3cnCisgICAgPj4+IGRlZiBmKCosIGEsIGIsIGMsIGQsIGUpOiBwYXNzCisgICAgPj4+IGYoKQorICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKKyAgICAgIC4uLgorICAgIFR5cGVFcnJvcjogZigpIG1pc3NpbmcgNSByZXF1aXJlZCBrZXl3b3JkLW9ubHkgYXJndW1lbnRzOiAnYScsICdiJywgJ2MnLCAnZCcsIGFuZCAnZScKKwogIiIiCiAKIGltcG9ydCBzeXMKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZmF1bHRoYW5kbGVyLnB5IGIvTGliL3Rlc3QvdGVzdF9mYXVsdGhhbmRsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTc3Y2IzOQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L3Rlc3RfZmF1bHRoYW5kbGVyLnB5CkBAIC0wLDAgKzEsNTU0IEBACitmcm9tIGNvbnRleHRsaWIgaW1wb3J0IGNvbnRleHRtYW5hZ2VyCitpbXBvcnQgZGF0ZXRpbWUKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ltcG9ydCBvcworaW1wb3J0IHJlCitpbXBvcnQgc2lnbmFsCitpbXBvcnQgc3VicHJvY2VzcworaW1wb3J0IHN5cworZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0LCBzY3JpcHRfaGVscGVyCitpbXBvcnQgdGVtcGZpbGUKK2ltcG9ydCB1bml0dGVzdAorCit0cnk6CisgICAgaW1wb3J0IHRocmVhZGluZworICAgIEhBVkVfVEhSRUFEUyA9IFRydWUKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBIQVZFX1RIUkVBRFMgPSBGYWxzZQorCitUSU1FT1VUID0gMC41CisKK3RyeToKKyAgICBmcm9tIHJlc291cmNlIGltcG9ydCBzZXRybGltaXQsIFJMSU1JVF9DT1JFLCBlcnJvciBhcyByZXNvdXJjZV9lcnJvcgorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHByZXBhcmVfc3VicHJvY2VzcyA9IE5vbmUKK2Vsc2U6CisgICAgZGVmIHByZXBhcmVfc3VicHJvY2VzcygpOgorICAgICAgICAjIGRvbid0IGNyZWF0ZSBjb3JlIGZpbGUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2V0cmxpbWl0KFJMSU1JVF9DT1JFLCAoMCwgMCkpCisgICAgICAgIGV4Y2VwdCAoVmFsdWVFcnJvciwgcmVzb3VyY2VfZXJyb3IpOgorICAgICAgICAgICAgcGFzcworCitkZWYgZXhwZWN0ZWRfdHJhY2ViYWNrKGxpbmVubzEsIGxpbmVubzIsIGhlYWRlciwgbWluX2NvdW50PTEpOgorICAgIHJlZ2V4ID0gaGVhZGVyCisgICAgcmVnZXggKz0gJyAgRmlsZSAiPHN0cmluZz4iLCBsaW5lICVzIGluIGZ1bmNcbicgJSBsaW5lbm8xCisgICAgcmVnZXggKz0gJyAgRmlsZSAiPHN0cmluZz4iLCBsaW5lICVzIGluIDxtb2R1bGU+JyAlIGxpbmVubzIKKyAgICBpZiAxIDwgbWluX2NvdW50OgorICAgICAgICByZXR1cm4gJ14nICsgKHJlZ2V4ICsgJ1xuJykgKiAobWluX2NvdW50IC0gMSkgKyByZWdleAorICAgIGVsc2U6CisgICAgICAgIHJldHVybiAnXicgKyByZWdleCArICckJworCitAY29udGV4dG1hbmFnZXIKK2RlZiB0ZW1wb3JhcnlfZmlsZW5hbWUoKToKKyAgICBmaWxlbmFtZSA9IHRlbXBmaWxlLm1rdGVtcCgpCisgICAgdHJ5OgorICAgICAgICB5aWVsZCBmaWxlbmFtZQorICAgIGZpbmFsbHk6CisgICAgICAgIHN1cHBvcnQudW5saW5rKGZpbGVuYW1lKQorCitjbGFzcyBGYXVsdEhhbmRsZXJUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIGdldF9vdXRwdXQoc2VsZiwgY29kZSwgZmlsZW5hbWU9Tm9uZSk6CisgICAgICAgICIiIgorICAgICAgICBSdW4gdGhlIHNwZWNpZmllZCBjb2RlIGluIFB5dGhvbiAoaW4gYSBuZXcgY2hpbGQgcHJvY2VzcykgYW5kIHJlYWQgdGhlCisgICAgICAgIG91dHB1dCBmcm9tIHRoZSBzdGFuZGFyZCBlcnJvciBvciBmcm9tIGEgZmlsZSAoaWYgZmlsZW5hbWUgaXMgc2V0KS4KKyAgICAgICAgUmV0dXJuIHRoZSBvdXRwdXQgbGluZXMgYXMgYSBsaXN0LgorCisgICAgICAgIFN0cmlwIHRoZSByZWZlcmVuY2UgY291bnQgZnJvbSB0aGUgc3RhbmRhcmQgZXJyb3IgZm9yIFB5dGhvbiBkZWJ1ZworICAgICAgICBidWlsZCwgYW5kIHJlcGxhY2UgIkN1cnJlbnQgdGhyZWFkIDB4MDAwMDdmOGQ4ZmJkOTcwMCIgYnkgIkN1cnJlbnQKKyAgICAgICAgdGhyZWFkIFhYWCIuCisgICAgICAgICIiIgorICAgICAgICBvcHRpb25zID0ge30KKyAgICAgICAgaWYgcHJlcGFyZV9zdWJwcm9jZXNzOgorICAgICAgICAgICAgb3B0aW9uc1sncHJlZXhlY19mbiddID0gcHJlcGFyZV9zdWJwcm9jZXNzCisgICAgICAgIHByb2Nlc3MgPSBzY3JpcHRfaGVscGVyLnNwYXduX3B5dGhvbignLWMnLCBjb2RlLCAqKm9wdGlvbnMpCisgICAgICAgIHN0ZG91dCwgc3RkZXJyID0gcHJvY2Vzcy5jb21tdW5pY2F0ZSgpCisgICAgICAgIGV4aXRjb2RlID0gcHJvY2Vzcy53YWl0KCkKKyAgICAgICAgb3V0cHV0ID0gc3VwcG9ydC5zdHJpcF9weXRob25fc3RkZXJyKHN0ZG91dCkKKyAgICAgICAgb3V0cHV0ID0gb3V0cHV0LmRlY29kZSgnYXNjaWknLCAnYmFja3NsYXNocmVwbGFjZScpCisgICAgICAgIGlmIGZpbGVuYW1lOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQsICcnKQorICAgICAgICAgICAgd2l0aCBvcGVuKGZpbGVuYW1lLCAicmIiKSBhcyBmcDoKKyAgICAgICAgICAgICAgICBvdXRwdXQgPSBmcC5yZWFkKCkKKyAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5kZWNvZGUoJ2FzY2lpJywgJ2JhY2tzbGFzaHJlcGxhY2UnKQorICAgICAgICBvdXRwdXQgPSByZS5zdWIoJ0N1cnJlbnQgdGhyZWFkIDB4WzAtOWEtZl0rJywKKyAgICAgICAgICAgICAgICAgICAgICAgICdDdXJyZW50IHRocmVhZCBYWFgnLAorICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0KQorICAgICAgICByZXR1cm4gb3V0cHV0LnNwbGl0bGluZXMoKSwgZXhpdGNvZGUKKworICAgIGRlZiBjaGVja19mYXRhbF9lcnJvcihzZWxmLCBjb2RlLCBsaW5lX251bWJlciwgbmFtZV9yZWdleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWU9Tm9uZSwgYWxsX3RocmVhZHM9VHJ1ZSwgb3RoZXJfcmVnZXg9Tm9uZSk6CisgICAgICAgICIiIgorICAgICAgICBDaGVjayB0aGF0IHRoZSBmYXVsdCBoYW5kbGVyIGZvciBmYXRhbCBlcnJvcnMgaXMgZW5hYmxlZCBhbmQgY2hlY2sgdGhlCisgICAgICAgIHRyYWNlYmFjayBmcm9tIHRoZSBjaGlsZCBwcm9jZXNzIG91dHB1dC4KKworICAgICAgICBSYWlzZSBhbiBlcnJvciBpZiB0aGUgb3V0cHV0IGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIGFsbF90aHJlYWRzOgorICAgICAgICAgICAgaGVhZGVyID0gJ0N1cnJlbnQgdGhyZWFkIFhYWCcKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGhlYWRlciA9ICdUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgZmlyc3QpJworICAgICAgICByZWdleCA9ICIiIgorXkZhdGFsIFB5dGhvbiBlcnJvcjoge25hbWV9CisKK3toZWFkZXJ9OgorICBGaWxlICI8c3RyaW5nPiIsIGxpbmUge2xpbmVub30gaW4gPG1vZHVsZT4kCisiIiIuc3RyaXAoKQorICAgICAgICByZWdleCA9IHJlZ2V4LmZvcm1hdCgKKyAgICAgICAgICAgIGxpbmVubz1saW5lX251bWJlciwKKyAgICAgICAgICAgIG5hbWU9bmFtZV9yZWdleCwKKyAgICAgICAgICAgIGhlYWRlcj1yZS5lc2NhcGUoaGVhZGVyKSkKKyAgICAgICAgaWYgb3RoZXJfcmVnZXg6CisgICAgICAgICAgICByZWdleCArPSAnfCcgKyBvdGhlcl9yZWdleAorICAgICAgICBvdXRwdXQsIGV4aXRjb2RlID0gc2VsZi5nZXRfb3V0cHV0KGNvZGUsIGZpbGVuYW1lKQorICAgICAgICBvdXRwdXQgPSAnXG4nLmpvaW4ob3V0cHV0KQorICAgICAgICBzZWxmLmFzc2VydFJlZ2V4KG91dHB1dCwgcmVnZXgpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZXhpdGNvZGUsIDApCisKKyAgICBkZWYgdGVzdF9yZWFkX251bGwoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmYXVsdGhhbmRsZXIuZW5hYmxlKCkKK2ZhdWx0aGFuZGxlci5fcmVhZF9udWxsKCkKKyIiIi5zdHJpcCgpLAorICAgICAgICAgICAgMywKKyAgICAgICAgICAgICMgSXNzdWUgIzEyNzAwOiBSZWFkIE5VTEwgcmFpc2VzIFNJR0lMTCBvbiBNYWMgT1MgWCBMaW9uCisgICAgICAgICAgICAnKD86U2VnbWVudGF0aW9uIGZhdWx0fEJ1cyBlcnJvcnxJbGxlZ2FsIGluc3RydWN0aW9uKScpCisKKyAgICBkZWYgdGVzdF9zaWdzZWd2KHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2ZhdGFsX2Vycm9yKCIiIgoraW1wb3J0IGZhdWx0aGFuZGxlcgorZmF1bHRoYW5kbGVyLmVuYWJsZSgpCitmYXVsdGhhbmRsZXIuX3NpZ3NlZ3YoKQorIiIiLnN0cmlwKCksCisgICAgICAgICAgICAzLAorICAgICAgICAgICAgJ1NlZ21lbnRhdGlvbiBmYXVsdCcpCisKKyAgICBkZWYgdGVzdF9zaWdhYnJ0KHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2ZhdGFsX2Vycm9yKCIiIgoraW1wb3J0IGZhdWx0aGFuZGxlcgorZmF1bHRoYW5kbGVyLmVuYWJsZSgpCitmYXVsdGhhbmRsZXIuX3NpZ2FicnQoKQorIiIiLnN0cmlwKCksCisgICAgICAgICAgICAzLAorICAgICAgICAgICAgJ0Fib3J0ZWQnKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJywKKyAgICAgICAgICAgICAgICAgICAgICJTSUdGUEUgY2Fubm90IGJlIGNhdWdodCBvbiBXaW5kb3dzIikKKyAgICBkZWYgdGVzdF9zaWdmcGUoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmYXVsdGhhbmRsZXIuZW5hYmxlKCkKK2ZhdWx0aGFuZGxlci5fc2lnZnBlKCkKKyIiIi5zdHJpcCgpLAorICAgICAgICAgICAgMywKKyAgICAgICAgICAgICdGbG9hdGluZyBwb2ludCBleGNlcHRpb24nKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihub3QgaGFzYXR0cihmYXVsdGhhbmRsZXIsICdfc2lnYnVzJyksCisgICAgICAgICAgICAgICAgICAgICAibmVlZCBmYXVsdGhhbmRsZXIuX3NpZ2J1cygpIikKKyAgICBkZWYgdGVzdF9zaWdidXMoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmYXVsdGhhbmRsZXIuZW5hYmxlKCkKK2ZhdWx0aGFuZGxlci5fc2lnYnVzKCkKKyIiIi5zdHJpcCgpLAorICAgICAgICAgICAgMywKKyAgICAgICAgICAgICdCdXMgZXJyb3InKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihub3QgaGFzYXR0cihmYXVsdGhhbmRsZXIsICdfc2lnaWxsJyksCisgICAgICAgICAgICAgICAgICAgICAibmVlZCBmYXVsdGhhbmRsZXIuX3NpZ2lsbCgpIikKKyAgICBkZWYgdGVzdF9zaWdpbGwoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmYXVsdGhhbmRsZXIuZW5hYmxlKCkKK2ZhdWx0aGFuZGxlci5fc2lnaWxsKCkKKyIiIi5zdHJpcCgpLAorICAgICAgICAgICAgMywKKyAgICAgICAgICAgICdJbGxlZ2FsIGluc3RydWN0aW9uJykKKworICAgIGRlZiB0ZXN0X2ZhdGFsX2Vycm9yKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2ZhdGFsX2Vycm9yKCIiIgoraW1wb3J0IGZhdWx0aGFuZGxlcgorZmF1bHRoYW5kbGVyLl9mYXRhbF9lcnJvcihiJ3h5eicpCisiIiIuc3RyaXAoKSwKKyAgICAgICAgICAgIDIsCisgICAgICAgICAgICAneHl6JykKKworICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ29wZW5ic2QnKSBhbmQgSEFWRV9USFJFQURTLAorICAgICAgICAgICAgICAgICAgICAgIklzc3VlICMxMjg2ODogc2lnYWx0c3RhY2soKSBkb2Vzbid0IHdvcmsgb24gIgorICAgICAgICAgICAgICAgICAgICAgIk9wZW5CU0QgaWYgUHl0aG9uIGlzIGNvbXBpbGVkIHdpdGggcHRocmVhZCIpCisgICAgQHVuaXR0ZXN0LnNraXBJZihub3QgaGFzYXR0cihmYXVsdGhhbmRsZXIsICdfc3RhY2tfb3ZlcmZsb3cnKSwKKyAgICAgICAgICAgICAgICAgICAgICduZWVkIGZhdWx0aGFuZGxlci5fc3RhY2tfb3ZlcmZsb3coKScpCisgICAgZGVmIHRlc3Rfc3RhY2tfb3ZlcmZsb3coc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmYXVsdGhhbmRsZXIuZW5hYmxlKCkKK2ZhdWx0aGFuZGxlci5fc3RhY2tfb3ZlcmZsb3coKQorIiIiLnN0cmlwKCksCisgICAgICAgICAgICAzLAorICAgICAgICAgICAgJyg/OlNlZ21lbnRhdGlvbiBmYXVsdHxCdXMgZXJyb3IpJywKKyAgICAgICAgICAgIG90aGVyX3JlZ2V4PSd1bmFibGUgdG8gcmFpc2UgYSBzdGFjayBvdmVyZmxvdycpCisKKyAgICBkZWYgdGVzdF9naWxfcmVsZWFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmYXVsdGhhbmRsZXIuZW5hYmxlKCkKK2ZhdWx0aGFuZGxlci5fcmVhZF9udWxsKFRydWUpCisiIiIuc3RyaXAoKSwKKyAgICAgICAgICAgIDMsCisgICAgICAgICAgICAnKD86U2VnbWVudGF0aW9uIGZhdWx0fEJ1cyBlcnJvcnxJbGxlZ2FsIGluc3RydWN0aW9uKScpCisKKyAgICBkZWYgdGVzdF9lbmFibGVfZmlsZShzZWxmKToKKyAgICAgICAgd2l0aCB0ZW1wb3JhcnlfZmlsZW5hbWUoKSBhcyBmaWxlbmFtZToKKyAgICAgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitvdXRwdXQgPSBvcGVuKHtmaWxlbmFtZX0sICd3YicpCitmYXVsdGhhbmRsZXIuZW5hYmxlKG91dHB1dCkKK2ZhdWx0aGFuZGxlci5fcmVhZF9udWxsKCkKKyIiIi5zdHJpcCgpLmZvcm1hdChmaWxlbmFtZT1yZXByKGZpbGVuYW1lKSksCisgICAgICAgICAgICAgICAgNCwKKyAgICAgICAgICAgICAgICAnKD86U2VnbWVudGF0aW9uIGZhdWx0fEJ1cyBlcnJvcnxJbGxlZ2FsIGluc3RydWN0aW9uKScsCisgICAgICAgICAgICAgICAgZmlsZW5hbWU9ZmlsZW5hbWUpCisKKyAgICBkZWYgdGVzdF9lbmFibGVfc2luZ2xlX3RocmVhZChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19mYXRhbF9lcnJvcigiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ZhdWx0aGFuZGxlci5lbmFibGUoYWxsX3RocmVhZHM9RmFsc2UpCitmYXVsdGhhbmRsZXIuX3JlYWRfbnVsbCgpCisiIiIuc3RyaXAoKSwKKyAgICAgICAgICAgIDMsCisgICAgICAgICAgICAnKD86U2VnbWVudGF0aW9uIGZhdWx0fEJ1cyBlcnJvcnxJbGxlZ2FsIGluc3RydWN0aW9uKScsCisgICAgICAgICAgICBhbGxfdGhyZWFkcz1GYWxzZSkKKworICAgIGRlZiB0ZXN0X2Rpc2FibGUoc2VsZik6CisgICAgICAgIGNvZGUgPSAiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ZhdWx0aGFuZGxlci5lbmFibGUoKQorZmF1bHRoYW5kbGVyLmRpc2FibGUoKQorZmF1bHRoYW5kbGVyLl9yZWFkX251bGwoKQorIiIiLnN0cmlwKCkKKyAgICAgICAgbm90X2V4cGVjdGVkID0gJ0ZhdGFsIFB5dGhvbiBlcnJvcicKKyAgICAgICAgc3RkZXJyLCBleGl0Y29kZSA9IHNlbGYuZ2V0X291dHB1dChjb2RlKQorICAgICAgICBzdGRlciA9ICdcbicuam9pbihzdGRlcnIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3RfZXhwZWN0ZWQgbm90IGluIHN0ZGVyciwKKyAgICAgICAgICAgICAgICAgICAgICIlciBpcyBwcmVzZW50IGluICVyIiAlIChub3RfZXhwZWN0ZWQsIHN0ZGVycikpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZXhpdGNvZGUsIDApCisKKyAgICBkZWYgdGVzdF9pc19lbmFibGVkKHNlbGYpOgorICAgICAgICBvcmlnX3N0ZGVyciA9IHN5cy5zdGRlcnIKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyByZWdydGVzdCBtYXkgcmVwbGFjZSBzeXMuc3RkZXJyIGJ5IGlvLlN0cmluZ0lPIG9iamVjdCwgYnV0CisgICAgICAgICAgICAjIGZhdWx0aGFuZGxlci5lbmFibGUoKSByZXF1aXJlcyB0aGF0IHN5cy5zdGRlcnIgaGFzIGEgZmlsZW5vKCkKKyAgICAgICAgICAgICMgbWV0aG9kCisgICAgICAgICAgICBzeXMuc3RkZXJyID0gc3lzLl9fc3RkZXJyX18KKworICAgICAgICAgICAgd2FzX2VuYWJsZWQgPSBmYXVsdGhhbmRsZXIuaXNfZW5hYmxlZCgpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgZmF1bHRoYW5kbGVyLmVuYWJsZSgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZhdWx0aGFuZGxlci5pc19lbmFibGVkKCkpCisgICAgICAgICAgICAgICAgZmF1bHRoYW5kbGVyLmRpc2FibGUoKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZmF1bHRoYW5kbGVyLmlzX2VuYWJsZWQoKSkKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgaWYgd2FzX2VuYWJsZWQ6CisgICAgICAgICAgICAgICAgICAgIGZhdWx0aGFuZGxlci5lbmFibGUoKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGZhdWx0aGFuZGxlci5kaXNhYmxlKCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHN5cy5zdGRlcnIgPSBvcmlnX3N0ZGVycgorCisgICAgZGVmIGNoZWNrX2R1bXBfdHJhY2ViYWNrKHNlbGYsIGZpbGVuYW1lKToKKyAgICAgICAgIiIiCisgICAgICAgIEV4cGxpY2l0bHkgY2FsbCBkdW1wX3RyYWNlYmFjaygpIGZ1bmN0aW9uIGFuZCBjaGVjayBpdHMgb3V0cHV0LgorICAgICAgICBSYWlzZSBhbiBlcnJvciBpZiB0aGUgb3V0cHV0IGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGZvcm1hdC4KKyAgICAgICAgIiIiCisgICAgICAgIGNvZGUgPSAiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKKworZGVmIGZ1bmNCKCk6CisgICAgaWYge2hhc19maWxlbmFtZX06CisgICAgICAgIHdpdGggb3Blbih7ZmlsZW5hbWV9LCAid2IiKSBhcyBmcDoKKyAgICAgICAgICAgIGZhdWx0aGFuZGxlci5kdW1wX3RyYWNlYmFjayhmcCwgYWxsX3RocmVhZHM9RmFsc2UpCisgICAgZWxzZToKKyAgICAgICAgZmF1bHRoYW5kbGVyLmR1bXBfdHJhY2ViYWNrKGFsbF90aHJlYWRzPUZhbHNlKQorCitkZWYgZnVuY0EoKToKKyAgICBmdW5jQigpCisKK2Z1bmNBKCkKKyIiIi5zdHJpcCgpCisgICAgICAgIGNvZGUgPSBjb2RlLmZvcm1hdCgKKyAgICAgICAgICAgIGZpbGVuYW1lPXJlcHIoZmlsZW5hbWUpLAorICAgICAgICAgICAgaGFzX2ZpbGVuYW1lPWJvb2woZmlsZW5hbWUpLAorICAgICAgICApCisgICAgICAgIGlmIGZpbGVuYW1lOgorICAgICAgICAgICAgbGluZW5vID0gNgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbGluZW5vID0gOAorICAgICAgICBleHBlY3RlZCA9IFsKKyAgICAgICAgICAgICdUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgZmlyc3QpOicsCisgICAgICAgICAgICAnICBGaWxlICI8c3RyaW5nPiIsIGxpbmUgJXMgaW4gZnVuY0InICUgbGluZW5vLAorICAgICAgICAgICAgJyAgRmlsZSAiPHN0cmluZz4iLCBsaW5lIDExIGluIGZ1bmNBJywKKyAgICAgICAgICAgICcgIEZpbGUgIjxzdHJpbmc+IiwgbGluZSAxMyBpbiA8bW9kdWxlPicKKyAgICAgICAgXQorICAgICAgICB0cmFjZSwgZXhpdGNvZGUgPSBzZWxmLmdldF9vdXRwdXQoY29kZSwgZmlsZW5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsIGV4cGVjdGVkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4aXRjb2RlLCAwKQorCisgICAgZGVmIHRlc3RfZHVtcF90cmFjZWJhY2soc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZHVtcF90cmFjZWJhY2soTm9uZSkKKworICAgIGRlZiB0ZXN0X2R1bXBfdHJhY2ViYWNrX2ZpbGUoc2VsZik6CisgICAgICAgIHdpdGggdGVtcG9yYXJ5X2ZpbGVuYW1lKCkgYXMgZmlsZW5hbWU6CisgICAgICAgICAgICBzZWxmLmNoZWNrX2R1bXBfdHJhY2ViYWNrKGZpbGVuYW1lKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihub3QgSEFWRV9USFJFQURTLCAnbmVlZCB0aHJlYWRzJykKKyAgICBkZWYgY2hlY2tfZHVtcF90cmFjZWJhY2tfdGhyZWFkcyhzZWxmLCBmaWxlbmFtZSk6CisgICAgICAgICIiIgorICAgICAgICBDYWxsIGV4cGxpY2l0bHkgZHVtcF90cmFjZWJhY2soYWxsX3RocmVhZHM9VHJ1ZSkgYW5kIGNoZWNrIHRoZSBvdXRwdXQuCisgICAgICAgIFJhaXNlIGFuIGVycm9yIGlmIHRoZSBvdXRwdXQgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LgorICAgICAgICAiIiIKKyAgICAgICAgY29kZSA9ICIiIgoraW1wb3J0IGZhdWx0aGFuZGxlcgorZnJvbSB0aHJlYWRpbmcgaW1wb3J0IFRocmVhZCwgRXZlbnQKK2ltcG9ydCB0aW1lCisKK2RlZiBkdW1wKCk6CisgICAgaWYge2ZpbGVuYW1lfToKKyAgICAgICAgd2l0aCBvcGVuKHtmaWxlbmFtZX0sICJ3YiIpIGFzIGZwOgorICAgICAgICAgICAgZmF1bHRoYW5kbGVyLmR1bXBfdHJhY2ViYWNrKGZwLCBhbGxfdGhyZWFkcz1UcnVlKQorICAgIGVsc2U6CisgICAgICAgIGZhdWx0aGFuZGxlci5kdW1wX3RyYWNlYmFjayhhbGxfdGhyZWFkcz1UcnVlKQorCitjbGFzcyBXYWl0ZXIoVGhyZWFkKToKKyAgICAjIGF2b2lkIGJsb2NraW5nIGlmIHRoZSBtYWluIHRocmVhZCByYWlzZXMgYW4gZXhjZXB0aW9uLgorICAgIGRhZW1vbiA9IFRydWUKKworICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgVGhyZWFkLl9faW5pdF9fKHNlbGYpCisgICAgICAgIHNlbGYucnVubmluZyA9IEV2ZW50KCkKKyAgICAgICAgc2VsZi5zdG9wID0gRXZlbnQoKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgc2VsZi5ydW5uaW5nLnNldCgpCisgICAgICAgIHNlbGYuc3RvcC53YWl0KCkKKword2FpdGVyID0gV2FpdGVyKCkKK3dhaXRlci5zdGFydCgpCit3YWl0ZXIucnVubmluZy53YWl0KCkKK2R1bXAoKQord2FpdGVyLnN0b3Auc2V0KCkKK3dhaXRlci5qb2luKCkKKyIiIi5zdHJpcCgpCisgICAgICAgIGNvZGUgPSBjb2RlLmZvcm1hdChmaWxlbmFtZT1yZXByKGZpbGVuYW1lKSkKKyAgICAgICAgb3V0cHV0LCBleGl0Y29kZSA9IHNlbGYuZ2V0X291dHB1dChjb2RlLCBmaWxlbmFtZSkKKyAgICAgICAgb3V0cHV0ID0gJ1xuJy5qb2luKG91dHB1dCkKKyAgICAgICAgaWYgZmlsZW5hbWU6CisgICAgICAgICAgICBsaW5lbm8gPSA4CisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsaW5lbm8gPSAxMAorICAgICAgICByZWdleCA9ICIiIgorXlRocmVhZCAweFswLTlhLWZdKzoKKyg/OiAgRmlsZSAiLip0aHJlYWRpbmcucHkiLCBsaW5lIFswLTldKyBpbiBbX2Etel0rCispe3sxLDN9fSAgRmlsZSAiPHN0cmluZz4iLCBsaW5lIDIzIGluIHJ1bgorICBGaWxlICIuKnRocmVhZGluZy5weSIsIGxpbmUgWzAtOV0rIGluIF9ib290c3RyYXBfaW5uZXIKKyAgRmlsZSAiLip0aHJlYWRpbmcucHkiLCBsaW5lIFswLTldKyBpbiBfYm9vdHN0cmFwCisKK0N1cnJlbnQgdGhyZWFkIFhYWDoKKyAgRmlsZSAiPHN0cmluZz4iLCBsaW5lIHtsaW5lbm99IGluIGR1bXAKKyAgRmlsZSAiPHN0cmluZz4iLCBsaW5lIDI4IGluIDxtb2R1bGU+JAorIiIiLnN0cmlwKCkKKyAgICAgICAgcmVnZXggPSByZWdleC5mb3JtYXQobGluZW5vPWxpbmVubykKKyAgICAgICAgc2VsZi5hc3NlcnRSZWdleChvdXRwdXQsIHJlZ2V4KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4aXRjb2RlLCAwKQorCisgICAgZGVmIHRlc3RfZHVtcF90cmFjZWJhY2tfdGhyZWFkcyhzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19kdW1wX3RyYWNlYmFja190aHJlYWRzKE5vbmUpCisKKyAgICBkZWYgdGVzdF9kdW1wX3RyYWNlYmFja190aHJlYWRzX2ZpbGUoc2VsZik6CisgICAgICAgIHdpdGggdGVtcG9yYXJ5X2ZpbGVuYW1lKCkgYXMgZmlsZW5hbWU6CisgICAgICAgICAgICBzZWxmLmNoZWNrX2R1bXBfdHJhY2ViYWNrX3RocmVhZHMoZmlsZW5hbWUpCisKKyAgICBkZWYgX2NoZWNrX2R1bXBfdHJhY2ViYWNrc19sYXRlcihzZWxmLCByZXBlYXQsIGNhbmNlbCwgZmlsZW5hbWUsIGxvb3BzKToKKyAgICAgICAgIiIiCisgICAgICAgIENoZWNrIGhvdyBtYW55IHRpbWVzIHRoZSB0cmFjZWJhY2sgaXMgd3JpdHRlbiBpbiB0aW1lb3V0IHggMi41IHNlY29uZHMsCisgICAgICAgIG9yIHRpbWVvdXQgeCAzLjUgc2Vjb25kcyBpZiBjYW5jZWwgaXMgVHJ1ZTogMSwgMiBvciAzIHRpbWVzIGRlcGVuZGluZworICAgICAgICBvbiByZXBlYXQgYW5kIGNhbmNlbCBvcHRpb25zLgorCisgICAgICAgIFJhaXNlIGFuIGVycm9yIGlmIHRoZSBvdXRwdXQgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0IGZvcm1hdC4KKyAgICAgICAgIiIiCisgICAgICAgIHRpbWVvdXRfc3RyID0gc3RyKGRhdGV0aW1lLnRpbWVkZWx0YShzZWNvbmRzPVRJTUVPVVQpKQorICAgICAgICBjb2RlID0gIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitpbXBvcnQgdGltZQorCitkZWYgZnVuYyh0aW1lb3V0LCByZXBlYXQsIGNhbmNlbCwgZmlsZSwgbG9vcHMpOgorICAgIGZvciBsb29wIGluIHJhbmdlKGxvb3BzKToKKyAgICAgICAgZmF1bHRoYW5kbGVyLmR1bXBfdHJhY2ViYWNrc19sYXRlcih0aW1lb3V0LCByZXBlYXQ9cmVwZWF0LCBmaWxlPWZpbGUpCisgICAgICAgIGlmIGNhbmNlbDoKKyAgICAgICAgICAgIGZhdWx0aGFuZGxlci5jYW5jZWxfZHVtcF90cmFjZWJhY2tzX2xhdGVyKCkKKyAgICAgICAgdGltZS5zbGVlcCh0aW1lb3V0ICogNSkKKyAgICAgICAgZmF1bHRoYW5kbGVyLmNhbmNlbF9kdW1wX3RyYWNlYmFja3NfbGF0ZXIoKQorCit0aW1lb3V0ID0ge3RpbWVvdXR9CityZXBlYXQgPSB7cmVwZWF0fQorY2FuY2VsID0ge2NhbmNlbH0KK2xvb3BzID0ge2xvb3BzfQoraWYge2hhc19maWxlbmFtZX06CisgICAgZmlsZSA9IG9wZW4oe2ZpbGVuYW1lfSwgIndiIikKK2Vsc2U6CisgICAgZmlsZSA9IE5vbmUKK2Z1bmModGltZW91dCwgcmVwZWF0LCBjYW5jZWwsIGZpbGUsIGxvb3BzKQoraWYgZmlsZSBpcyBub3QgTm9uZToKKyAgICBmaWxlLmNsb3NlKCkKKyIiIi5zdHJpcCgpCisgICAgICAgIGNvZGUgPSBjb2RlLmZvcm1hdCgKKyAgICAgICAgICAgIHRpbWVvdXQ9VElNRU9VVCwKKyAgICAgICAgICAgIHJlcGVhdD1yZXBlYXQsCisgICAgICAgICAgICBjYW5jZWw9Y2FuY2VsLAorICAgICAgICAgICAgbG9vcHM9bG9vcHMsCisgICAgICAgICAgICBoYXNfZmlsZW5hbWU9Ym9vbChmaWxlbmFtZSksCisgICAgICAgICAgICBmaWxlbmFtZT1yZXByKGZpbGVuYW1lKSwKKyAgICAgICAgKQorICAgICAgICB0cmFjZSwgZXhpdGNvZGUgPSBzZWxmLmdldF9vdXRwdXQoY29kZSwgZmlsZW5hbWUpCisgICAgICAgIHRyYWNlID0gJ1xuJy5qb2luKHRyYWNlKQorCisgICAgICAgIGlmIG5vdCBjYW5jZWw6CisgICAgICAgICAgICBjb3VudCA9IGxvb3BzCisgICAgICAgICAgICBpZiByZXBlYXQ6CisgICAgICAgICAgICAgICAgY291bnQgKj0gMgorICAgICAgICAgICAgaGVhZGVyID0gcidUaW1lb3V0IFwoJXNcKSFcblRocmVhZCAweFswLTlhLWZdKzpcbicgJSB0aW1lb3V0X3N0cgorICAgICAgICAgICAgcmVnZXggPSBleHBlY3RlZF90cmFjZWJhY2soOSwgMjAsIGhlYWRlciwgbWluX2NvdW50PWNvdW50KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSZWdleCh0cmFjZSwgcmVnZXgpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLCAnJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleGl0Y29kZSwgMCkKKworICAgIEB1bml0dGVzdC5za2lwSWYobm90IGhhc2F0dHIoZmF1bHRoYW5kbGVyLCAnZHVtcF90cmFjZWJhY2tzX2xhdGVyJyksCisgICAgICAgICAgICAgICAgICAgICAnbmVlZCBmYXVsdGhhbmRsZXIuZHVtcF90cmFjZWJhY2tzX2xhdGVyKCknKQorICAgIGRlZiBjaGVja19kdW1wX3RyYWNlYmFja3NfbGF0ZXIoc2VsZiwgcmVwZWF0PUZhbHNlLCBjYW5jZWw9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlPUZhbHNlLCB0d2ljZT1GYWxzZSk6CisgICAgICAgIGlmIHR3aWNlOgorICAgICAgICAgICAgbG9vcHMgPSAyCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb29wcyA9IDEKKyAgICAgICAgaWYgZmlsZToKKyAgICAgICAgICAgIHdpdGggdGVtcG9yYXJ5X2ZpbGVuYW1lKCkgYXMgZmlsZW5hbWU6CisgICAgICAgICAgICAgICAgc2VsZi5fY2hlY2tfZHVtcF90cmFjZWJhY2tzX2xhdGVyKHJlcGVhdCwgY2FuY2VsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZSwgbG9vcHMpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLl9jaGVja19kdW1wX3RyYWNlYmFja3NfbGF0ZXIocmVwZWF0LCBjYW5jZWwsIE5vbmUsIGxvb3BzKQorCisgICAgZGVmIHRlc3RfZHVtcF90cmFjZWJhY2tzX2xhdGVyKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2R1bXBfdHJhY2ViYWNrc19sYXRlcigpCisKKyAgICBkZWYgdGVzdF9kdW1wX3RyYWNlYmFja3NfbGF0ZXJfcmVwZWF0KHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2R1bXBfdHJhY2ViYWNrc19sYXRlcihyZXBlYXQ9VHJ1ZSkKKworICAgIGRlZiB0ZXN0X2R1bXBfdHJhY2ViYWNrc19sYXRlcl9jYW5jZWwoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZHVtcF90cmFjZWJhY2tzX2xhdGVyKGNhbmNlbD1UcnVlKQorCisgICAgZGVmIHRlc3RfZHVtcF90cmFjZWJhY2tzX2xhdGVyX2ZpbGUoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZHVtcF90cmFjZWJhY2tzX2xhdGVyKGZpbGU9VHJ1ZSkKKworICAgIGRlZiB0ZXN0X2R1bXBfdHJhY2ViYWNrc19sYXRlcl90d2ljZShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19kdW1wX3RyYWNlYmFja3NfbGF0ZXIodHdpY2U9VHJ1ZSkKKworICAgIEB1bml0dGVzdC5za2lwSWYobm90IGhhc2F0dHIoZmF1bHRoYW5kbGVyLCAicmVnaXN0ZXIiKSwKKyAgICAgICAgICAgICAgICAgICAgICJuZWVkIGZhdWx0aGFuZGxlci5yZWdpc3RlciIpCisgICAgZGVmIGNoZWNrX3JlZ2lzdGVyKHNlbGYsIGZpbGVuYW1lPUZhbHNlLCBhbGxfdGhyZWFkcz1GYWxzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3Rlcj1GYWxzZSwgY2hhaW49RmFsc2UpOgorICAgICAgICAiIiIKKyAgICAgICAgUmVnaXN0ZXIgYSBoYW5kbGVyIGRpc3BsYXlpbmcgdGhlIHRyYWNlYmFjayBvbiBhIHVzZXIgc2lnbmFsLiBSYWlzZSB0aGUKKyAgICAgICAgc2lnbmFsIGFuZCBjaGVjayB0aGUgd3JpdHRlbiB0cmFjZWJhY2suCisKKyAgICAgICAgSWYgY2hhaW4gaXMgVHJ1ZSwgY2hlY2sgdGhhdCB0aGUgcHJldmlvdXMgc2lnbmFsIGhhbmRsZXIgaXMgY2FsbGVkLgorCisgICAgICAgIFJhaXNlIGFuIGVycm9yIGlmIHRoZSBvdXRwdXQgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LgorICAgICAgICAiIiIKKyAgICAgICAgc2lnbnVtID0gc2lnbmFsLlNJR1VTUjEKKyAgICAgICAgY29kZSA9ICIiIgoraW1wb3J0IGZhdWx0aGFuZGxlcgoraW1wb3J0IG9zCitpbXBvcnQgc2lnbmFsCitpbXBvcnQgc3lzCisKK2RlZiBmdW5jKHNpZ251bSk6CisgICAgb3Mua2lsbChvcy5nZXRwaWQoKSwgc2lnbnVtKQorCitkZWYgaGFuZGxlcihzaWdudW0sIGZyYW1lKToKKyAgICBoYW5kbGVyLmNhbGxlZCA9IFRydWUKK2hhbmRsZXIuY2FsbGVkID0gRmFsc2UKKworZXhpdGNvZGUgPSAwCitzaWdudW0gPSB7c2lnbnVtfQordW5yZWdpc3RlciA9IHt1bnJlZ2lzdGVyfQorY2hhaW4gPSB7Y2hhaW59CisKK2lmIHtoYXNfZmlsZW5hbWV9OgorICAgIGZpbGUgPSBvcGVuKHtmaWxlbmFtZX0sICJ3YiIpCitlbHNlOgorICAgIGZpbGUgPSBOb25lCitpZiBjaGFpbjoKKyAgICBzaWduYWwuc2lnbmFsKHNpZ251bSwgaGFuZGxlcikKK2ZhdWx0aGFuZGxlci5yZWdpc3RlcihzaWdudW0sIGZpbGU9ZmlsZSwKKyAgICAgICAgICAgICAgICAgICAgICBhbGxfdGhyZWFkcz17YWxsX3RocmVhZHN9LCBjaGFpbj17Y2hhaW59KQoraWYgdW5yZWdpc3RlcjoKKyAgICBmYXVsdGhhbmRsZXIudW5yZWdpc3RlcihzaWdudW0pCitmdW5jKHNpZ251bSkKK2lmIGNoYWluIGFuZCBub3QgaGFuZGxlci5jYWxsZWQ6CisgICAgaWYgZmlsZSBpcyBub3QgTm9uZToKKyAgICAgICAgb3V0cHV0ID0gZmlsZQorICAgIGVsc2U6CisgICAgICAgIG91dHB1dCA9IHN5cy5zdGRlcnIKKyAgICBwcmludCgiRXJyb3I6IHNpZ25hbCBoYW5kbGVyIG5vdCBjYWxsZWQhIiwgZmlsZT1vdXRwdXQpCisgICAgZXhpdGNvZGUgPSAxCitpZiBmaWxlIGlzIG5vdCBOb25lOgorICAgIGZpbGUuY2xvc2UoKQorc3lzLmV4aXQoZXhpdGNvZGUpCisiIiIuc3RyaXAoKQorICAgICAgICBjb2RlID0gY29kZS5mb3JtYXQoCisgICAgICAgICAgICBmaWxlbmFtZT1yZXByKGZpbGVuYW1lKSwKKyAgICAgICAgICAgIGhhc19maWxlbmFtZT1ib29sKGZpbGVuYW1lKSwKKyAgICAgICAgICAgIGFsbF90aHJlYWRzPWFsbF90aHJlYWRzLAorICAgICAgICAgICAgc2lnbnVtPXNpZ251bSwKKyAgICAgICAgICAgIHVucmVnaXN0ZXI9dW5yZWdpc3RlciwKKyAgICAgICAgICAgIGNoYWluPWNoYWluLAorICAgICAgICApCisgICAgICAgIHRyYWNlLCBleGl0Y29kZSA9IHNlbGYuZ2V0X291dHB1dChjb2RlLCBmaWxlbmFtZSkKKyAgICAgICAgdHJhY2UgPSAnXG4nLmpvaW4odHJhY2UpCisgICAgICAgIGlmIG5vdCB1bnJlZ2lzdGVyOgorICAgICAgICAgICAgaWYgYWxsX3RocmVhZHM6CisgICAgICAgICAgICAgICAgcmVnZXggPSAnQ3VycmVudCB0aHJlYWQgWFhYOlxuJworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByZWdleCA9ICdUcmFjZWJhY2sgXChtb3N0IHJlY2VudCBjYWxsIGZpcnN0XCk6XG4nCisgICAgICAgICAgICByZWdleCA9IGV4cGVjdGVkX3RyYWNlYmFjayg3LCAyOCwgcmVnZXgpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJlZ2V4KHRyYWNlLCByZWdleCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsICcnKQorICAgICAgICBpZiB1bnJlZ2lzdGVyOgorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChleGl0Y29kZSwgMCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhpdGNvZGUsIDApCisKKyAgICBkZWYgdGVzdF9yZWdpc3RlcihzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19yZWdpc3RlcigpCisKKyAgICBkZWYgdGVzdF91bnJlZ2lzdGVyKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX3JlZ2lzdGVyKHVucmVnaXN0ZXI9VHJ1ZSkKKworICAgIGRlZiB0ZXN0X3JlZ2lzdGVyX2ZpbGUoc2VsZik6CisgICAgICAgIHdpdGggdGVtcG9yYXJ5X2ZpbGVuYW1lKCkgYXMgZmlsZW5hbWU6CisgICAgICAgICAgICBzZWxmLmNoZWNrX3JlZ2lzdGVyKGZpbGVuYW1lPWZpbGVuYW1lKQorCisgICAgZGVmIHRlc3RfcmVnaXN0ZXJfdGhyZWFkcyhzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19yZWdpc3RlcihhbGxfdGhyZWFkcz1UcnVlKQorCisgICAgZGVmIHRlc3RfcmVnaXN0ZXJfY2hhaW4oc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfcmVnaXN0ZXIoY2hhaW49VHJ1ZSkKKworCitkZWYgdGVzdF9tYWluKCk6CisgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoRmF1bHRIYW5kbGVyVGVzdHMpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZmlsZWlucHV0LnB5IGIvTGliL3Rlc3QvdGVzdF9maWxlaW5wdXQucHkKaW5kZXggZjMxMjg4Mi4uMWU3MDY0MSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9maWxlaW5wdXQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9maWxlaW5wdXQucHkKQEAgLTIsMTggKzIsMzMgQEAKIFRlc3RzIGZvciBmaWxlaW5wdXQgbW9kdWxlLgogTmljayBNYXRoZXdzb24KICcnJwotCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCByZQoraW1wb3J0IGZpbGVpbnB1dAoraW1wb3J0IGNvbGxlY3Rpb25zCitpbXBvcnQgYnVpbHRpbnMKIGltcG9ydCB1bml0dGVzdAotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHZlcmJvc2UsIFRFU1RGTiwgcnVuX3VuaXR0ZXN0Ci1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdW5saW5rIGFzIHNhZmVfdW5saW5rCi1pbXBvcnQgc3lzLCByZQorCit0cnk6CisgICAgaW1wb3J0IGJ6MgorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIGJ6MiA9IE5vbmUKK3RyeToKKyAgICBpbXBvcnQgZ3ppcAorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIGd6aXAgPSBOb25lCisKIGZyb20gaW8gaW1wb3J0IFN0cmluZ0lPCiBmcm9tIGZpbGVpbnB1dCBpbXBvcnQgRmlsZUlucHV0LCBob29rX2VuY29kZWQKIAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHZlcmJvc2UsIFRFU1RGTiwgcnVuX3VuaXR0ZXN0Citmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdW5saW5rIGFzIHNhZmVfdW5saW5rCisKKwogIyBUaGUgZmlsZWlucHV0IG1vZHVsZSBoYXMgMiBpbnRlcmZhY2VzOiB0aGUgRmlsZUlucHV0IGNsYXNzIHdoaWNoIGRvZXMKICMgYWxsIHRoZSB3b3JrLCBhbmQgYSBmZXcgZnVuY3Rpb25zIChpbnB1dCwgZXRjLikgdGhhdCB1c2UgYSBnbG9iYWwgX3N0YXRlCi0jIHZhcmlhYmxlLiAgV2Ugb25seSB0ZXN0IHRoZSBGaWxlSW5wdXQgY2xhc3MsIHNpbmNlIHRoZSBvdGhlciBmdW5jdGlvbnMKLSMgb25seSBwcm92aWRlIGEgdGhpbiBmYWNhZGUgb3ZlciBGaWxlSW5wdXQuCisjIHZhcmlhYmxlLgogCiAjIFdyaXRlIGxpbmVzIChhIGxpc3Qgb2YgbGluZXMpIHRvIHRlbXAgZmlsZSBudW1iZXIgaSwgYW5kIHJldHVybiB0aGUKICMgdGVtcCBmaWxlJ3MgbmFtZS4KQEAgLTEyMSw3ICsxMzYsMTYgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaW50KG0uZ3JvdXAoMSkpLCBmaS5maWxlbGluZW5vKCkpCiAgICAgICAgIGZpLmNsb3NlKCkKIAorY2xhc3MgVW5jb25kaXRpb25hbGx5UmFpc2U6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGV4Y2VwdGlvbl90eXBlKToKKyAgICAgICAgc2VsZi5leGNlcHRpb25fdHlwZSA9IGV4Y2VwdGlvbl90eXBlCisgICAgICAgIHNlbGYuaW52b2tlZCA9IEZhbHNlCisgICAgZGVmIF9fY2FsbF9fKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHNlbGYuaW52b2tlZCA9IFRydWUKKyAgICAgICAgcmFpc2Ugc2VsZi5leGNlcHRpb25fdHlwZSgpCisKIGNsYXNzIEZpbGVJbnB1dFRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKKwogICAgIGRlZiB0ZXN0X3plcm9fYnl0ZV9maWxlcyhzZWxmKToKICAgICAgICAgdDEgPSB0MiA9IHQzID0gdDQgPSBOb25lCiAgICAgICAgIHRyeToKQEAgLTIxOSwxNyArMjQzLDIwIEBACiAgICAgICAgICAgICBzZWxmLmZhaWwoIkZpbGVJbnB1dCBzaG91bGQgY2hlY2sgb3Blbmhvb2sgZm9yIGJlaW5nIGNhbGxhYmxlIikKICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CiAgICAgICAgICAgICBwYXNzCi0gICAgICAgICMgWFhYIFRoZSByb3QxMyBjb2RlYyB3YXMgcmVtb3ZlZC4KLSAgICAgICAgIyAgICAgU28gdGhpcyB0ZXN0IG5lZWRzIHRvIGJlIGNoYW5nZWQgdG8gdXNlIHNvbWV0aGluZyBlbHNlLgotICAgICAgICAjICAgICAoT3IgcGVyaGFwcyB0aGUgQVBJIG5lZWRzIHRvIGNoYW5nZSBzbyB3ZSBjYW4ganVzdCBwYXNzCi0gICAgICAgICMgICAgIGFuIGVuY29kaW5nIHJhdGhlciB0aGFuIHVzaW5nIGEgaG9vaz8pCi0jIyAgICAgICAgIHRyeToKLSMjICAgICAgICAgICAgIHQxID0gd3JpdGVUbXAoMSwgWyJBXG5CIl0sIG1vZGU9IndiIikKLSMjICAgICAgICAgICAgIGZpID0gRmlsZUlucHV0KGZpbGVzPXQxLCBvcGVuaG9vaz1ob29rX2VuY29kZWQoInJvdDEzIikpCi0jIyAgICAgICAgICAgICBsaW5lcyA9IGxpc3QoZmkpCi0jIyAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpbmVzLCBbIk5cbiIsICJPIl0pCi0jIyAgICAgICAgIGZpbmFsbHk6Ci0jIyAgICAgICAgICAgICByZW1vdmVfdGVtcGZpbGVzKHQxKQorCisgICAgICAgIGNsYXNzIEN1c3RvbU9wZW5Ib29rOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHNlbGYuaW52b2tlZCA9IEZhbHNlCisgICAgICAgICAgICBkZWYgX19jYWxsX18oc2VsZiwgKmFyZ3MpOgorICAgICAgICAgICAgICAgIHNlbGYuaW52b2tlZCA9IFRydWUKKyAgICAgICAgICAgICAgICByZXR1cm4gb3BlbigqYXJncykKKworICAgICAgICB0ID0gd3JpdGVUbXAoMSwgWyJcbiJdKQorICAgICAgICBzZWxmLmFkZENsZWFudXAocmVtb3ZlX3RlbXBmaWxlcywgdCkKKyAgICAgICAgY3VzdG9tX29wZW5faG9vayA9IEN1c3RvbU9wZW5Ib29rKCkKKyAgICAgICAgd2l0aCBGaWxlSW5wdXQoW3RdLCBvcGVuaG9vaz1jdXN0b21fb3Blbl9ob29rKSBhcyBmaToKKyAgICAgICAgICAgIGZpLnJlYWRsaW5lKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGN1c3RvbV9vcGVuX2hvb2suaW52b2tlZCwgIm9wZW5ob29rIG5vdCBpbnZva2VkIikKIAogICAgIGRlZiB0ZXN0X2NvbnRleHRfbWFuYWdlcihzZWxmKToKICAgICAgICAgdHJ5OgpAQCAtMjU0LDkgKzI4MSw1NzYgQEAKICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIHJlbW92ZV90ZW1wZmlsZXModDEpCiAKKyAgICBkZWYgdGVzdF9lbXB0eV9maWxlc19saXN0X3NwZWNpZmllZF90b19jb25zdHJ1Y3RvcihzZWxmKToKKyAgICAgICAgd2l0aCBGaWxlSW5wdXQoZmlsZXM9W10pIGFzIGZpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmaS5fZmlsZXMsICgnLScsKSkKKworICAgIGRlZiB0ZXN0X19nZXRpdGVtX18oc2VsZik6CisgICAgICAgICIiIlRlc3RzIGludm9raW5nIEZpbGVJbnB1dC5fX2dldGl0ZW1fXygpIHdpdGggdGhlIGN1cnJlbnQKKyAgICAgICAgICAgbGluZSBudW1iZXIiIiIKKyAgICAgICAgdCA9IHdyaXRlVG1wKDEsIFsibGluZTFcbiIsICJsaW5lMlxuIl0pCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChyZW1vdmVfdGVtcGZpbGVzLCB0KQorICAgICAgICB3aXRoIEZpbGVJbnB1dChmaWxlcz1bdF0pIGFzIGZpOgorICAgICAgICAgICAgcmV0dmFsMSA9IGZpWzBdCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJldHZhbDEsICJsaW5lMVxuIikKKyAgICAgICAgICAgIHJldHZhbDIgPSBmaVsxXQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXR2YWwyLCAibGluZTJcbiIpCisKKyAgICBkZWYgdGVzdF9fZ2V0aXRlbV9faW52YWxpZF9rZXkoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGludm9raW5nIEZpbGVJbnB1dC5fX2dldGl0ZW1fXygpIHdpdGggYW4gaW5kZXggdW5lcXVhbCB0bworICAgICAgICAgICB0aGUgbGluZSBudW1iZXIiIiIKKyAgICAgICAgdCA9IHdyaXRlVG1wKDEsIFsibGluZTFcbiIsICJsaW5lMlxuIl0pCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChyZW1vdmVfdGVtcGZpbGVzLCB0KQorICAgICAgICB3aXRoIEZpbGVJbnB1dChmaWxlcz1bdF0pIGFzIGZpOgorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgICAgIGZpWzFdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmFyZ3MsICgiYWNjZXNzaW5nIGxpbmVzIG91dCBvZiBvcmRlciIsKSkKKworICAgIGRlZiB0ZXN0X19nZXRpdGVtX19lb2Yoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGludm9raW5nIEZpbGVJbnB1dC5fX2dldGl0ZW1fXygpIHdpdGggdGhlIGxpbmUgbnVtYmVyIGJ1dCBhdAorICAgICAgICAgICBlbmQtb2YtaW5wdXQiIiIKKyAgICAgICAgdCA9IHdyaXRlVG1wKDEsIFtdKQorICAgICAgICBzZWxmLmFkZENsZWFudXAocmVtb3ZlX3RlbXBmaWxlcywgdCkKKyAgICAgICAgd2l0aCBGaWxlSW5wdXQoZmlsZXM9W3RdKSBhcyBmaToKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoSW5kZXhFcnJvcikgYXMgY206CisgICAgICAgICAgICAgICAgZmlbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbS5leGNlcHRpb24uYXJncywgKCJlbmQgb2YgaW5wdXQgcmVhY2hlZCIsKSkKKworICAgIGRlZiB0ZXN0X25leHRmaWxlX29zZXJyb3JfZGVsZXRpbmdfYmFja3VwKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBpbnZva2luZyBGaWxlSW5wdXQubmV4dGZpbGUoKSB3aGVuIHRoZSBhdHRlbXB0IHRvIGRlbGV0ZQorICAgICAgICAgICB0aGUgYmFja3VwIGZpbGUgd291bGQgcmFpc2UgT1NFcnJvci4gIFRoaXMgZXJyb3IgaXMgZXhwZWN0ZWQgdG8gYmUKKyAgICAgICAgICAgc2lsZW50bHkgaWdub3JlZCIiIgorCisgICAgICAgIG9zX3VubGlua19vcmlnID0gb3MudW5saW5rCisgICAgICAgIG9zX3VubGlua19yZXBsYWNlbWVudCA9IFVuY29uZGl0aW9uYWxseVJhaXNlKE9TRXJyb3IpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHQgPSB3cml0ZVRtcCgxLCBbIlxuIl0pCisgICAgICAgICAgICBzZWxmLmFkZENsZWFudXAocmVtb3ZlX3RlbXBmaWxlcywgdCkKKyAgICAgICAgICAgIHdpdGggRmlsZUlucHV0KGZpbGVzPVt0XSwgaW5wbGFjZT1UcnVlKSBhcyBmaToKKyAgICAgICAgICAgICAgICBuZXh0KGZpKSAjIG1ha2Ugc3VyZSB0aGUgZmlsZSBpcyBvcGVuZWQKKyAgICAgICAgICAgICAgICBvcy51bmxpbmsgPSBvc191bmxpbmtfcmVwbGFjZW1lbnQKKyAgICAgICAgICAgICAgICBmaS5uZXh0ZmlsZSgpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy51bmxpbmsgPSBvc191bmxpbmtfb3JpZworCisgICAgICAgICMgc2FuaXR5IGNoZWNrIHRvIG1ha2Ugc3VyZSB0aGF0IG91ciB0ZXN0IHNjZW5hcmlvIHdhcyBhY3R1YWxseSBoaXQKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zX3VubGlua19yZXBsYWNlbWVudC5pbnZva2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgIm9zLnVubGluaygpIHdhcyBub3QgaW52b2tlZCIpCisKKyAgICBkZWYgdGVzdF9yZWFkbGluZV9vc19mc3RhdF9yYWlzZXNfT1NFcnJvcihzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgaW52b2tpbmcgRmlsZUlucHV0LnJlYWRsaW5lKCkgd2hlbiBvcy5mc3RhdCgpIHJhaXNlcyBPU0Vycm9yLgorICAgICAgICAgICBUaGlzIGV4Y2VwdGlvbiBzaG91bGQgYmUgc2lsZW50bHkgZGlzY2FyZGVkLiIiIgorCisgICAgICAgIG9zX2ZzdGF0X29yaWcgPSBvcy5mc3RhdAorICAgICAgICBvc19mc3RhdF9yZXBsYWNlbWVudCA9IFVuY29uZGl0aW9uYWxseVJhaXNlKE9TRXJyb3IpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHQgPSB3cml0ZVRtcCgxLCBbIlxuIl0pCisgICAgICAgICAgICBzZWxmLmFkZENsZWFudXAocmVtb3ZlX3RlbXBmaWxlcywgdCkKKyAgICAgICAgICAgIHdpdGggRmlsZUlucHV0KGZpbGVzPVt0XSwgaW5wbGFjZT1UcnVlKSBhcyBmaToKKyAgICAgICAgICAgICAgICBvcy5mc3RhdCA9IG9zX2ZzdGF0X3JlcGxhY2VtZW50CisgICAgICAgICAgICAgICAgZmkucmVhZGxpbmUoKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgb3MuZnN0YXQgPSBvc19mc3RhdF9vcmlnCisKKyAgICAgICAgIyBzYW5pdHkgY2hlY2sgdG8gbWFrZSBzdXJlIHRoYXQgb3VyIHRlc3Qgc2NlbmFyaW8gd2FzIGFjdHVhbGx5IGhpdAorICAgICAgICBzZWxmLmFzc2VydFRydWUob3NfZnN0YXRfcmVwbGFjZW1lbnQuaW52b2tlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJvcy5mc3RhdCgpIHdhcyBub3QgaW52b2tlZCIpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKG5vdCBoYXNhdHRyKG9zLCAiY2htb2QiKSwgIm9zLmNobW9kIGRvZXMgbm90IGV4aXN0IikKKyAgICBkZWYgdGVzdF9yZWFkbGluZV9vc19jaG1vZF9yYWlzZXNfT1NFcnJvcihzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgaW52b2tpbmcgRmlsZUlucHV0LnJlYWRsaW5lKCkgd2hlbiBvcy5jaG1vZCgpIHJhaXNlcyBPU0Vycm9yLgorICAgICAgICAgICBUaGlzIGV4Y2VwdGlvbiBzaG91bGQgYmUgc2lsZW50bHkgZGlzY2FyZGVkLiIiIgorCisgICAgICAgIG9zX2NobW9kX29yaWcgPSBvcy5jaG1vZAorICAgICAgICBvc19jaG1vZF9yZXBsYWNlbWVudCA9IFVuY29uZGl0aW9uYWxseVJhaXNlKE9TRXJyb3IpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHQgPSB3cml0ZVRtcCgxLCBbIlxuIl0pCisgICAgICAgICAgICBzZWxmLmFkZENsZWFudXAocmVtb3ZlX3RlbXBmaWxlcywgdCkKKyAgICAgICAgICAgIHdpdGggRmlsZUlucHV0KGZpbGVzPVt0XSwgaW5wbGFjZT1UcnVlKSBhcyBmaToKKyAgICAgICAgICAgICAgICBvcy5jaG1vZCA9IG9zX2NobW9kX3JlcGxhY2VtZW50CisgICAgICAgICAgICAgICAgZmkucmVhZGxpbmUoKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgb3MuY2htb2QgPSBvc19jaG1vZF9vcmlnCisKKyAgICAgICAgIyBzYW5pdHkgY2hlY2sgdG8gbWFrZSBzdXJlIHRoYXQgb3VyIHRlc3Qgc2NlbmFyaW8gd2FzIGFjdHVhbGx5IGhpdAorICAgICAgICBzZWxmLmFzc2VydFRydWUob3NfY2htb2RfcmVwbGFjZW1lbnQuaW52b2tlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJvcy5mc3RhdCgpIHdhcyBub3QgaW52b2tlZCIpCisKKyAgICBkZWYgdGVzdF9maWxlbm9fd2hlbl9WYWx1ZUVycm9yX3JhaXNlZChzZWxmKToKKyAgICAgICAgY2xhc3MgRmlsZW5vUmFpc2VzVmFsdWVFcnJvcihVbmNvbmRpdGlvbmFsbHlSYWlzZSk6CisgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgICAgICAgICAgVW5jb25kaXRpb25hbGx5UmFpc2UuX19pbml0X18oc2VsZiwgVmFsdWVFcnJvcikKKyAgICAgICAgICAgIGRlZiBmaWxlbm8oc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5fX2NhbGxfXygpCisKKyAgICAgICAgdW5jb25kaXRpb25hbGx5X3JhaXNlX1ZhbHVlRXJyb3IgPSBGaWxlbm9SYWlzZXNWYWx1ZUVycm9yKCkKKyAgICAgICAgdCA9IHdyaXRlVG1wKDEsIFsiXG4iXSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHJlbW92ZV90ZW1wZmlsZXMsIHQpCisgICAgICAgIHdpdGggRmlsZUlucHV0KGZpbGVzPVt0XSkgYXMgZmk6CisgICAgICAgICAgICBmaWxlX2JhY2t1cCA9IGZpLl9maWxlCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgZmkuX2ZpbGUgPSB1bmNvbmRpdGlvbmFsbHlfcmFpc2VfVmFsdWVFcnJvcgorICAgICAgICAgICAgICAgIHJlc3VsdCA9IGZpLmZpbGVubygpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIGZpLl9maWxlID0gZmlsZV9iYWNrdXAgIyBtYWtlIHN1cmUgdGhlIGZpbGUgZ2V0cyBjbGVhbmVkIHVwCisKKyAgICAgICAgIyBzYW5pdHkgY2hlY2sgdG8gbWFrZSBzdXJlIHRoYXQgb3VyIHRlc3Qgc2NlbmFyaW8gd2FzIGFjdHVhbGx5IGhpdAorICAgICAgICBzZWxmLmFzc2VydFRydWUodW5jb25kaXRpb25hbGx5X3JhaXNlX1ZhbHVlRXJyb3IuaW52b2tlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJfZmlsZS5maWxlbm8oKSB3YXMgbm90IGludm9rZWQiKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0LCAtMSwgImZpbGVubygpIHNob3VsZCByZXR1cm4gLTEiKQorCitjbGFzcyBNb2NrRmlsZUlucHV0OgorICAgICIiIkEgY2xhc3MgdGhhdCBtb2NrcyBvdXQgZmlsZWlucHV0LkZpbGVJbnB1dCBmb3IgdXNlIGR1cmluZyB1bml0IHRlc3RzIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZXM9Tm9uZSwgaW5wbGFjZT1GYWxzZSwgYmFja3VwPSIiLCBidWZzaXplPTAsCisgICAgICAgICAgICAgICAgIG1vZGU9InIiLCBvcGVuaG9vaz1Ob25lKToKKyAgICAgICAgc2VsZi5maWxlcyA9IGZpbGVzCisgICAgICAgIHNlbGYuaW5wbGFjZSA9IGlucGxhY2UKKyAgICAgICAgc2VsZi5iYWNrdXAgPSBiYWNrdXAKKyAgICAgICAgc2VsZi5idWZzaXplID0gYnVmc2l6ZQorICAgICAgICBzZWxmLm1vZGUgPSBtb2RlCisgICAgICAgIHNlbGYub3Blbmhvb2sgPSBvcGVuaG9vaworICAgICAgICBzZWxmLl9maWxlID0gTm9uZQorICAgICAgICBzZWxmLmludm9jYXRpb25fY291bnRzID0gY29sbGVjdGlvbnMuZGVmYXVsdGRpY3QobGFtYmRhOiAwKQorICAgICAgICBzZWxmLnJldHVybl92YWx1ZXMgPSB7fQorCisgICAgZGVmIGNsb3NlKHNlbGYpOgorICAgICAgICBzZWxmLmludm9jYXRpb25fY291bnRzWyJjbG9zZSJdICs9IDEKKworICAgIGRlZiBuZXh0ZmlsZShzZWxmKToKKyAgICAgICAgc2VsZi5pbnZvY2F0aW9uX2NvdW50c1sibmV4dGZpbGUiXSArPSAxCisgICAgICAgIHJldHVybiBzZWxmLnJldHVybl92YWx1ZXNbIm5leHRmaWxlIl0KKworICAgIGRlZiBmaWxlbmFtZShzZWxmKToKKyAgICAgICAgc2VsZi5pbnZvY2F0aW9uX2NvdW50c1siZmlsZW5hbWUiXSArPSAxCisgICAgICAgIHJldHVybiBzZWxmLnJldHVybl92YWx1ZXNbImZpbGVuYW1lIl0KKworICAgIGRlZiBsaW5lbm8oc2VsZik6CisgICAgICAgIHNlbGYuaW52b2NhdGlvbl9jb3VudHNbImxpbmVubyJdICs9IDEKKyAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuX3ZhbHVlc1sibGluZW5vIl0KKworICAgIGRlZiBmaWxlbGluZW5vKHNlbGYpOgorICAgICAgICBzZWxmLmludm9jYXRpb25fY291bnRzWyJmaWxlbGluZW5vIl0gKz0gMQorICAgICAgICByZXR1cm4gc2VsZi5yZXR1cm5fdmFsdWVzWyJmaWxlbGluZW5vIl0KKworICAgIGRlZiBmaWxlbm8oc2VsZik6CisgICAgICAgIHNlbGYuaW52b2NhdGlvbl9jb3VudHNbImZpbGVubyJdICs9IDEKKyAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuX3ZhbHVlc1siZmlsZW5vIl0KKworICAgIGRlZiBpc2ZpcnN0bGluZShzZWxmKToKKyAgICAgICAgc2VsZi5pbnZvY2F0aW9uX2NvdW50c1siaXNmaXJzdGxpbmUiXSArPSAxCisgICAgICAgIHJldHVybiBzZWxmLnJldHVybl92YWx1ZXNbImlzZmlyc3RsaW5lIl0KKworICAgIGRlZiBpc3N0ZGluKHNlbGYpOgorICAgICAgICBzZWxmLmludm9jYXRpb25fY291bnRzWyJpc3N0ZGluIl0gKz0gMQorICAgICAgICByZXR1cm4gc2VsZi5yZXR1cm5fdmFsdWVzWyJpc3N0ZGluIl0KKworY2xhc3MgQmFzZUZpbGVJbnB1dEdsb2JhbE1ldGhvZHNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAiIiJCYXNlIGNsYXNzIGZvciB1bml0IHRlc3RzIGZvciB0aGUgZ2xvYmFsIGZ1bmN0aW9uIG9mCisgICAgICAgdGhlIGZpbGVpbnB1dCBtb2R1bGUuIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuX29yaWdfc3RhdGUgPSBmaWxlaW5wdXQuX3N0YXRlCisgICAgICAgIHNlbGYuX29yaWdfRmlsZUlucHV0ID0gZmlsZWlucHV0LkZpbGVJbnB1dAorICAgICAgICBmaWxlaW5wdXQuRmlsZUlucHV0ID0gTW9ja0ZpbGVJbnB1dAorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBmaWxlaW5wdXQuRmlsZUlucHV0ID0gc2VsZi5fb3JpZ19GaWxlSW5wdXQKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IHNlbGYuX29yaWdfc3RhdGUKKworICAgIGRlZiBhc3NlcnRFeGFjdGx5T25lSW52b2NhdGlvbihzZWxmLCBtb2NrX2ZpbGVfaW5wdXQsIG1ldGhvZF9uYW1lKToKKyAgICAgICAgIyBhc3NlcnQgdGhhdCB0aGUgbWV0aG9kIHdpdGggdGhlIGdpdmVuIG5hbWUgd2FzIGludm9rZWQgb25jZQorICAgICAgICBhY3R1YWxfY291bnQgPSBtb2NrX2ZpbGVfaW5wdXQuaW52b2NhdGlvbl9jb3VudHNbbWV0aG9kX25hbWVdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWN0dWFsX2NvdW50LCAxLCBtZXRob2RfbmFtZSkKKyAgICAgICAgIyBhc3NlcnQgdGhhdCBubyBvdGhlciB1bmV4cGVjdGVkIG1ldGhvZHMgd2VyZSBpbnZva2VkCisgICAgICAgIGFjdHVhbF90b3RhbF9jb3VudCA9IGxlbihtb2NrX2ZpbGVfaW5wdXQuaW52b2NhdGlvbl9jb3VudHMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWN0dWFsX3RvdGFsX2NvdW50LCAxKQorCitjbGFzcyBUZXN0X2ZpbGVpbnB1dF9pbnB1dChCYXNlRmlsZUlucHV0R2xvYmFsTWV0aG9kc1Rlc3QpOgorICAgICIiIlVuaXQgdGVzdHMgZm9yIGZpbGVpbnB1dC5pbnB1dCgpIiIiCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19ub3RfTm9uZV9hbmRfc3RhdGVfZmlsZV9pc19ub3RfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgaW52b2tpbmcgZmlsZWlucHV0LmlucHV0KCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIG5vdCBOb25lCisgICAgICAgICAgIGFuZCBpdHMgX2ZpbGUgYXR0cmlidXRlIGlzIGFsc28gbm90IE5vbmUuICBFeHBlY3QgUnVudGltZUVycm9yIHRvCisgICAgICAgICAgIGJlIHJhaXNlZCB3aXRoIGEgbWVhbmluZ2Z1bCBlcnJvciBtZXNzYWdlIGFuZCBmb3IgZmlsZWlucHV0Ll9zdGF0ZQorICAgICAgICAgICB0byAqbm90KiBiZSBtb2RpZmllZC4iIiIKKyAgICAgICAgaW5zdGFuY2UgPSBNb2NrRmlsZUlucHV0KCkKKyAgICAgICAgaW5zdGFuY2UuX2ZpbGUgPSBvYmplY3QoKQorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gaW5zdGFuY2UKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgZmlsZWlucHV0LmlucHV0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgoImlucHV0KCkgYWxyZWFkeSBhY3RpdmUiLCksIGNtLmV4Y2VwdGlvbi5hcmdzKQorICAgICAgICBzZWxmLmFzc2VydElzKGluc3RhbmNlLCBmaWxlaW5wdXQuX3N0YXRlLCAiZmlsZWlucHV0Ll9zdGF0ZSIpCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19ub3RfTm9uZV9hbmRfc3RhdGVfZmlsZV9pc19Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBpbnZva2luZyBmaWxlaW5wdXQuaW5wdXQoKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgbm90IE5vbmUKKyAgICAgICAgICAgYnV0IGl0cyBfZmlsZSBhdHRyaWJ1dGUgKmlzKiBOb25lLiAgRXhwZWN0IGl0IHRvIGNyZWF0ZSBhbmQgcmV0dXJuCisgICAgICAgICAgIGEgbmV3IGZpbGVpbnB1dC5GaWxlSW5wdXQgb2JqZWN0IHdpdGggYWxsIG1ldGhvZCBwYXJhbWV0ZXJzIHBhc3NlZAorICAgICAgICAgICBleHBsaWNpdGx5IHRvIHRoZSBfX2luaXRfXygpIG1ldGhvZDsgYWxzbyBlbnN1cmUgdGhhdAorICAgICAgICAgICBmaWxlaW5wdXQuX3N0YXRlIGlzIHNldCB0byB0aGUgcmV0dXJuZWQgaW5zdGFuY2UuIiIiCisgICAgICAgIGluc3RhbmNlID0gTW9ja0ZpbGVJbnB1dCgpCisgICAgICAgIGluc3RhbmNlLl9maWxlID0gTm9uZQorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gaW5zdGFuY2UKKyAgICAgICAgc2VsZi5kb190ZXN0X2NhbGxfaW5wdXQoKQorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgaW52b2tpbmcgZmlsZWlucHV0LmlucHV0KCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIE5vbmUKKyAgICAgICAgICAgRXhwZWN0IGl0IHRvIGNyZWF0ZSBhbmQgcmV0dXJuIGEgbmV3IGZpbGVpbnB1dC5GaWxlSW5wdXQgb2JqZWN0CisgICAgICAgICAgIHdpdGggYWxsIG1ldGhvZCBwYXJhbWV0ZXJzIHBhc3NlZCBleHBsaWNpdGx5IHRvIHRoZSBfX2luaXRfXygpCisgICAgICAgICAgIG1ldGhvZDsgYWxzbyBlbnN1cmUgdGhhdCBmaWxlaW5wdXQuX3N0YXRlIGlzIHNldCB0byB0aGUgcmV0dXJuZWQKKyAgICAgICAgICAgaW5zdGFuY2UuIiIiCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBOb25lCisgICAgICAgIHNlbGYuZG9fdGVzdF9jYWxsX2lucHV0KCkKKworICAgIGRlZiBkb190ZXN0X2NhbGxfaW5wdXQoc2VsZik6CisgICAgICAgICIiIlRlc3RzIHRoYXQgZmlsZWlucHV0LmlucHV0KCkgY3JlYXRlcyBhIG5ldyBmaWxlaW5wdXQuRmlsZUlucHV0CisgICAgICAgICAgIG9iamVjdCwgcGFzc2luZyB0aGUgZ2l2ZW4gcGFyYW1ldGVycyB1bm1vZGlmaWVkIHRvCisgICAgICAgICAgIGZpbGVpbnB1dC5GaWxlSW5wdXQuX19pbml0X18oKS4gIE5vdGUgdGhhdCB0aGlzIHRlc3QgZGVwZW5kcyBvbiB0aGUKKyAgICAgICAgICAgbW9ua2V5IHBhdGNoaW5nIG9mIGZpbGVpbnB1dC5GaWxlSW5wdXQgZG9uZSBieSBzZXRVcCgpLiIiIgorICAgICAgICBmaWxlcyA9IG9iamVjdCgpCisgICAgICAgIGlucGxhY2UgPSBvYmplY3QoKQorICAgICAgICBiYWNrdXAgPSBvYmplY3QoKQorICAgICAgICBidWZzaXplID0gb2JqZWN0KCkKKyAgICAgICAgbW9kZSA9IG9iamVjdCgpCisgICAgICAgIG9wZW5ob29rID0gb2JqZWN0KCkKKworICAgICAgICAjIGNhbGwgZmlsZWlucHV0LmlucHV0KCkgd2l0aCBkaWZmZXJlbnQgdmFsdWVzIGZvciBlYWNoIGFyZ3VtZW50CisgICAgICAgIHJlc3VsdCA9IGZpbGVpbnB1dC5pbnB1dChmaWxlcz1maWxlcywgaW5wbGFjZT1pbnBsYWNlLCBiYWNrdXA9YmFja3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmc2l6ZT1idWZzaXplLAorICAgICAgICAgICAgbW9kZT1tb2RlLCBvcGVuaG9vaz1vcGVuaG9vaykKKworICAgICAgICAjIGVuc3VyZSBmaWxlaW5wdXQuX3N0YXRlIHdhcyBzZXQgdG8gdGhlIHJldHVybmVkIG9iamVjdAorICAgICAgICBzZWxmLmFzc2VydElzKHJlc3VsdCwgZmlsZWlucHV0Ll9zdGF0ZSwgImZpbGVpbnB1dC5fc3RhdGUiKQorCisgICAgICAgICMgZW5zdXJlIHRoZSBwYXJhbWV0ZXJzIHRvIGZpbGVpbnB1dC5pbnB1dCgpIHdlcmUgcGFzc2VkIGRpcmVjdGx5CisgICAgICAgICMgdG8gRmlsZUlucHV0Ll9faW5pdF9fKCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhmaWxlcywgcmVzdWx0LmZpbGVzLCAiZmlsZXMiKQorICAgICAgICBzZWxmLmFzc2VydElzKGlucGxhY2UsIHJlc3VsdC5pbnBsYWNlLCAiaW5wbGFjZSIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoYmFja3VwLCByZXN1bHQuYmFja3VwLCAiYmFja3VwIikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhidWZzaXplLCByZXN1bHQuYnVmc2l6ZSwgImJ1ZnNpemUiKQorICAgICAgICBzZWxmLmFzc2VydElzKG1vZGUsIHJlc3VsdC5tb2RlLCAibW9kZSIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMob3Blbmhvb2ssIHJlc3VsdC5vcGVuaG9vaywgIm9wZW5ob29rIikKKworY2xhc3MgVGVzdF9maWxlaW5wdXRfY2xvc2UoQmFzZUZpbGVJbnB1dEdsb2JhbE1ldGhvZHNUZXN0KToKKyAgICAiIiJVbml0IHRlc3RzIGZvciBmaWxlaW5wdXQuY2xvc2UoKSIiIgorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgdGhhdCBmaWxlaW5wdXQuY2xvc2UoKSBkb2VzIG5vdGhpbmcgaWYgZmlsZWlucHV0Ll9zdGF0ZQorICAgICAgICAgICBpcyBOb25lIiIiCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBOb25lCisgICAgICAgIGZpbGVpbnB1dC5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGZpbGVpbnB1dC5fc3RhdGUpCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19ub3RfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgdGhhdCBmaWxlaW5wdXQuY2xvc2UoKSBpbnZva2VzIGNsb3NlKCkgb24gZmlsZWlucHV0Ll9zdGF0ZQorICAgICAgICAgICBhbmQgc2V0cyBfc3RhdGU9Tm9uZSIiIgorICAgICAgICBpbnN0YW5jZSA9IE1vY2tGaWxlSW5wdXQoKQorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gaW5zdGFuY2UKKyAgICAgICAgZmlsZWlucHV0LmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdGx5T25lSW52b2NhdGlvbihpbnN0YW5jZSwgImNsb3NlIikKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmlsZWlucHV0Ll9zdGF0ZSkKKworY2xhc3MgVGVzdF9maWxlaW5wdXRfbmV4dGZpbGUoQmFzZUZpbGVJbnB1dEdsb2JhbE1ldGhvZHNUZXN0KToKKyAgICAiIiJVbml0IHRlc3RzIGZvciBmaWxlaW5wdXQubmV4dGZpbGUoKSIiIgorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0Lm5leHRmaWxlKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IHJhaXNlcyBSdW50aW1lRXJyb3Igd2l0aCBhIG1lYW5pbmdmdWwgZXJyb3IgbWVzc2FnZQorICAgICAgICAgICBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUiIiIKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IE5vbmUKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgZmlsZWlucHV0Lm5leHRmaWxlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgoIm5vIGFjdGl2ZSBpbnB1dCgpIiwpLCBjbS5leGNlcHRpb24uYXJncykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmlsZWlucHV0Ll9zdGF0ZSkKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX25vdF9Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBmaWxlaW5wdXQubmV4dGZpbGUoKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgbm90IE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IGludm9rZXMgZmlsZWlucHV0Ll9zdGF0ZS5uZXh0ZmlsZSgpIGV4YWN0bHkgb25jZSwKKyAgICAgICAgICAgcmV0dXJucyB3aGF0ZXZlciBpdCByZXR1cm5zLCBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUKKyAgICAgICAgICAgdG8gcG9pbnQgdG8gYSBkaWZmZXJlbnQgb2JqZWN0LiIiIgorICAgICAgICBuZXh0ZmlsZV9yZXR2YWwgPSBvYmplY3QoKQorICAgICAgICBpbnN0YW5jZSA9IE1vY2tGaWxlSW5wdXQoKQorICAgICAgICBpbnN0YW5jZS5yZXR1cm5fdmFsdWVzWyJuZXh0ZmlsZSJdID0gbmV4dGZpbGVfcmV0dmFsCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBpbnN0YW5jZQorICAgICAgICByZXR2YWwgPSBmaWxlaW5wdXQubmV4dGZpbGUoKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0bHlPbmVJbnZvY2F0aW9uKGluc3RhbmNlLCAibmV4dGZpbGUiKQorICAgICAgICBzZWxmLmFzc2VydElzKHJldHZhbCwgbmV4dGZpbGVfcmV0dmFsKQorICAgICAgICBzZWxmLmFzc2VydElzKGZpbGVpbnB1dC5fc3RhdGUsIGluc3RhbmNlKQorCitjbGFzcyBUZXN0X2ZpbGVpbnB1dF9maWxlbmFtZShCYXNlRmlsZUlucHV0R2xvYmFsTWV0aG9kc1Rlc3QpOgorICAgICIiIlVuaXQgdGVzdHMgZm9yIGZpbGVpbnB1dC5maWxlbmFtZSgpIiIiCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBmaWxlaW5wdXQuZmlsZW5hbWUoKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgTm9uZS4KKyAgICAgICAgICAgRW5zdXJlIHRoYXQgaXQgcmFpc2VzIFJ1bnRpbWVFcnJvciB3aXRoIGEgbWVhbmluZ2Z1bCBlcnJvciBtZXNzYWdlCisgICAgICAgICAgIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZSIiIgorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gTm9uZQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvcikgYXMgY206CisgICAgICAgICAgICBmaWxlaW5wdXQuZmlsZW5hbWUoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgibm8gYWN0aXZlIGlucHV0KCkiLCksIGNtLmV4Y2VwdGlvbi5hcmdzKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShmaWxlaW5wdXQuX3N0YXRlKQorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfbm90X05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5maWxlbmFtZSgpIHdoZW4gZmlsZWlucHV0Ll9zdGF0ZSBpcyBub3QgTm9uZS4KKyAgICAgICAgICAgRW5zdXJlIHRoYXQgaXQgaW52b2tlcyBmaWxlaW5wdXQuX3N0YXRlLmZpbGVuYW1lKCkgZXhhY3RseSBvbmNlLAorICAgICAgICAgICByZXR1cm5zIHdoYXRldmVyIGl0IHJldHVybnMsIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZQorICAgICAgICAgICB0byBwb2ludCB0byBhIGRpZmZlcmVudCBvYmplY3QuIiIiCisgICAgICAgIGZpbGVuYW1lX3JldHZhbCA9IG9iamVjdCgpCisgICAgICAgIGluc3RhbmNlID0gTW9ja0ZpbGVJbnB1dCgpCisgICAgICAgIGluc3RhbmNlLnJldHVybl92YWx1ZXNbImZpbGVuYW1lIl0gPSBmaWxlbmFtZV9yZXR2YWwKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IGluc3RhbmNlCisgICAgICAgIHJldHZhbCA9IGZpbGVpbnB1dC5maWxlbmFtZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RseU9uZUludm9jYXRpb24oaW5zdGFuY2UsICJmaWxlbmFtZSIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocmV0dmFsLCBmaWxlbmFtZV9yZXR2YWwpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZmlsZWlucHV0Ll9zdGF0ZSwgaW5zdGFuY2UpCisKK2NsYXNzIFRlc3RfZmlsZWlucHV0X2xpbmVubyhCYXNlRmlsZUlucHV0R2xvYmFsTWV0aG9kc1Rlc3QpOgorICAgICIiIlVuaXQgdGVzdHMgZm9yIGZpbGVpbnB1dC5saW5lbm8oKSIiIgorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0LmxpbmVubygpIHdoZW4gZmlsZWlucHV0Ll9zdGF0ZSBpcyBOb25lLgorICAgICAgICAgICBFbnN1cmUgdGhhdCBpdCByYWlzZXMgUnVudGltZUVycm9yIHdpdGggYSBtZWFuaW5nZnVsIGVycm9yIG1lc3NhZ2UKKyAgICAgICAgICAgYW5kIGRvZXMgbm90IG1vZGlmeSBmaWxlaW5wdXQuX3N0YXRlIiIiCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBOb25lCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yKSBhcyBjbToKKyAgICAgICAgICAgIGZpbGVpbnB1dC5saW5lbm8oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgibm8gYWN0aXZlIGlucHV0KCkiLCksIGNtLmV4Y2VwdGlvbi5hcmdzKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShmaWxlaW5wdXQuX3N0YXRlKQorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfbm90X05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5saW5lbm8oKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgbm90IE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IGludm9rZXMgZmlsZWlucHV0Ll9zdGF0ZS5saW5lbm8oKSBleGFjdGx5IG9uY2UsCisgICAgICAgICAgIHJldHVybnMgd2hhdGV2ZXIgaXQgcmV0dXJucywgYW5kIGRvZXMgbm90IG1vZGlmeSBmaWxlaW5wdXQuX3N0YXRlCisgICAgICAgICAgIHRvIHBvaW50IHRvIGEgZGlmZmVyZW50IG9iamVjdC4iIiIKKyAgICAgICAgbGluZW5vX3JldHZhbCA9IG9iamVjdCgpCisgICAgICAgIGluc3RhbmNlID0gTW9ja0ZpbGVJbnB1dCgpCisgICAgICAgIGluc3RhbmNlLnJldHVybl92YWx1ZXNbImxpbmVubyJdID0gbGluZW5vX3JldHZhbAorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gaW5zdGFuY2UKKyAgICAgICAgcmV0dmFsID0gZmlsZWlucHV0LmxpbmVubygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RseU9uZUludm9jYXRpb24oaW5zdGFuY2UsICJsaW5lbm8iKQorICAgICAgICBzZWxmLmFzc2VydElzKHJldHZhbCwgbGluZW5vX3JldHZhbCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhmaWxlaW5wdXQuX3N0YXRlLCBpbnN0YW5jZSkKKworY2xhc3MgVGVzdF9maWxlaW5wdXRfZmlsZWxpbmVubyhCYXNlRmlsZUlucHV0R2xvYmFsTWV0aG9kc1Rlc3QpOgorICAgICIiIlVuaXQgdGVzdHMgZm9yIGZpbGVpbnB1dC5maWxlbGluZW5vKCkiIiIKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5maWxlbGluZW5vKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IHJhaXNlcyBSdW50aW1lRXJyb3Igd2l0aCBhIG1lYW5pbmdmdWwgZXJyb3IgbWVzc2FnZQorICAgICAgICAgICBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUiIiIKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IE5vbmUKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgZmlsZWlucHV0LmZpbGVsaW5lbm8oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgibm8gYWN0aXZlIGlucHV0KCkiLCksIGNtLmV4Y2VwdGlvbi5hcmdzKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShmaWxlaW5wdXQuX3N0YXRlKQorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfbm90X05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5maWxlbGluZW5vKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIG5vdCBOb25lLgorICAgICAgICAgICBFbnN1cmUgdGhhdCBpdCBpbnZva2VzIGZpbGVpbnB1dC5fc3RhdGUuZmlsZWxpbmVubygpIGV4YWN0bHkgb25jZSwKKyAgICAgICAgICAgcmV0dXJucyB3aGF0ZXZlciBpdCByZXR1cm5zLCBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUKKyAgICAgICAgICAgdG8gcG9pbnQgdG8gYSBkaWZmZXJlbnQgb2JqZWN0LiIiIgorICAgICAgICBmaWxlbGluZW5vX3JldHZhbCA9IG9iamVjdCgpCisgICAgICAgIGluc3RhbmNlID0gTW9ja0ZpbGVJbnB1dCgpCisgICAgICAgIGluc3RhbmNlLnJldHVybl92YWx1ZXNbImZpbGVsaW5lbm8iXSA9IGZpbGVsaW5lbm9fcmV0dmFsCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBpbnN0YW5jZQorICAgICAgICByZXR2YWwgPSBmaWxlaW5wdXQuZmlsZWxpbmVubygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RseU9uZUludm9jYXRpb24oaW5zdGFuY2UsICJmaWxlbGluZW5vIikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyZXR2YWwsIGZpbGVsaW5lbm9fcmV0dmFsKQorICAgICAgICBzZWxmLmFzc2VydElzKGZpbGVpbnB1dC5fc3RhdGUsIGluc3RhbmNlKQorCitjbGFzcyBUZXN0X2ZpbGVpbnB1dF9maWxlbm8oQmFzZUZpbGVJbnB1dEdsb2JhbE1ldGhvZHNUZXN0KToKKyAgICAiIiJVbml0IHRlc3RzIGZvciBmaWxlaW5wdXQuZmlsZW5vKCkiIiIKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5maWxlbm8oKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgTm9uZS4KKyAgICAgICAgICAgRW5zdXJlIHRoYXQgaXQgcmFpc2VzIFJ1bnRpbWVFcnJvciB3aXRoIGEgbWVhbmluZ2Z1bCBlcnJvciBtZXNzYWdlCisgICAgICAgICAgIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZSIiIgorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gTm9uZQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvcikgYXMgY206CisgICAgICAgICAgICBmaWxlaW5wdXQuZmlsZW5vKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgoIm5vIGFjdGl2ZSBpbnB1dCgpIiwpLCBjbS5leGNlcHRpb24uYXJncykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmlsZWlucHV0Ll9zdGF0ZSkKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX25vdF9Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBmaWxlaW5wdXQuZmlsZW5vKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIG5vdCBOb25lLgorICAgICAgICAgICBFbnN1cmUgdGhhdCBpdCBpbnZva2VzIGZpbGVpbnB1dC5fc3RhdGUuZmlsZW5vKCkgZXhhY3RseSBvbmNlLAorICAgICAgICAgICByZXR1cm5zIHdoYXRldmVyIGl0IHJldHVybnMsIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZQorICAgICAgICAgICB0byBwb2ludCB0byBhIGRpZmZlcmVudCBvYmplY3QuIiIiCisgICAgICAgIGZpbGVub19yZXR2YWwgPSBvYmplY3QoKQorICAgICAgICBpbnN0YW5jZSA9IE1vY2tGaWxlSW5wdXQoKQorICAgICAgICBpbnN0YW5jZS5yZXR1cm5fdmFsdWVzWyJmaWxlbm8iXSA9IGZpbGVub19yZXR2YWwKKyAgICAgICAgaW5zdGFuY2UuZmlsZW5vX3JldHZhbCA9IGZpbGVub19yZXR2YWwKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IGluc3RhbmNlCisgICAgICAgIHJldHZhbCA9IGZpbGVpbnB1dC5maWxlbm8oKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0bHlPbmVJbnZvY2F0aW9uKGluc3RhbmNlLCAiZmlsZW5vIikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyZXR2YWwsIGZpbGVub19yZXR2YWwpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZmlsZWlucHV0Ll9zdGF0ZSwgaW5zdGFuY2UpCisKK2NsYXNzIFRlc3RfZmlsZWlucHV0X2lzZmlyc3RsaW5lKEJhc2VGaWxlSW5wdXRHbG9iYWxNZXRob2RzVGVzdCk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgZmlsZWlucHV0LmlzZmlyc3RsaW5lKCkiIiIKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5pc2ZpcnN0bGluZSgpIHdoZW4gZmlsZWlucHV0Ll9zdGF0ZSBpcyBOb25lLgorICAgICAgICAgICBFbnN1cmUgdGhhdCBpdCByYWlzZXMgUnVudGltZUVycm9yIHdpdGggYSBtZWFuaW5nZnVsIGVycm9yIG1lc3NhZ2UKKyAgICAgICAgICAgYW5kIGRvZXMgbm90IG1vZGlmeSBmaWxlaW5wdXQuX3N0YXRlIiIiCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBOb25lCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yKSBhcyBjbToKKyAgICAgICAgICAgIGZpbGVpbnB1dC5pc2ZpcnN0bGluZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCJubyBhY3RpdmUgaW5wdXQoKSIsKSwgY20uZXhjZXB0aW9uLmFyZ3MpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGZpbGVpbnB1dC5fc3RhdGUpCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19ub3RfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0LmlzZmlyc3RsaW5lKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIG5vdCBOb25lLgorICAgICAgICAgICBFbnN1cmUgdGhhdCBpdCBpbnZva2VzIGZpbGVpbnB1dC5fc3RhdGUuaXNmaXJzdGxpbmUoKSBleGFjdGx5IG9uY2UsCisgICAgICAgICAgIHJldHVybnMgd2hhdGV2ZXIgaXQgcmV0dXJucywgYW5kIGRvZXMgbm90IG1vZGlmeSBmaWxlaW5wdXQuX3N0YXRlCisgICAgICAgICAgIHRvIHBvaW50IHRvIGEgZGlmZmVyZW50IG9iamVjdC4iIiIKKyAgICAgICAgaXNmaXJzdGxpbmVfcmV0dmFsID0gb2JqZWN0KCkKKyAgICAgICAgaW5zdGFuY2UgPSBNb2NrRmlsZUlucHV0KCkKKyAgICAgICAgaW5zdGFuY2UucmV0dXJuX3ZhbHVlc1siaXNmaXJzdGxpbmUiXSA9IGlzZmlyc3RsaW5lX3JldHZhbAorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gaW5zdGFuY2UKKyAgICAgICAgcmV0dmFsID0gZmlsZWlucHV0LmlzZmlyc3RsaW5lKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdGx5T25lSW52b2NhdGlvbihpbnN0YW5jZSwgImlzZmlyc3RsaW5lIikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyZXR2YWwsIGlzZmlyc3RsaW5lX3JldHZhbCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhmaWxlaW5wdXQuX3N0YXRlLCBpbnN0YW5jZSkKKworY2xhc3MgVGVzdF9maWxlaW5wdXRfaXNzdGRpbihCYXNlRmlsZUlucHV0R2xvYmFsTWV0aG9kc1Rlc3QpOgorICAgICIiIlVuaXQgdGVzdHMgZm9yIGZpbGVpbnB1dC5pc3N0ZGluKCkiIiIKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5pc3N0ZGluKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IHJhaXNlcyBSdW50aW1lRXJyb3Igd2l0aCBhIG1lYW5pbmdmdWwgZXJyb3IgbWVzc2FnZQorICAgICAgICAgICBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUiIiIKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IE5vbmUKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgZmlsZWlucHV0Lmlzc3RkaW4oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgibm8gYWN0aXZlIGlucHV0KCkiLCksIGNtLmV4Y2VwdGlvbi5hcmdzKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShmaWxlaW5wdXQuX3N0YXRlKQorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfbm90X05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5pc3N0ZGluKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIG5vdCBOb25lLgorICAgICAgICAgICBFbnN1cmUgdGhhdCBpdCBpbnZva2VzIGZpbGVpbnB1dC5fc3RhdGUuaXNzdGRpbigpIGV4YWN0bHkgb25jZSwKKyAgICAgICAgICAgcmV0dXJucyB3aGF0ZXZlciBpdCByZXR1cm5zLCBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUKKyAgICAgICAgICAgdG8gcG9pbnQgdG8gYSBkaWZmZXJlbnQgb2JqZWN0LiIiIgorICAgICAgICBpc3N0ZGluX3JldHZhbCA9IG9iamVjdCgpCisgICAgICAgIGluc3RhbmNlID0gTW9ja0ZpbGVJbnB1dCgpCisgICAgICAgIGluc3RhbmNlLnJldHVybl92YWx1ZXNbImlzc3RkaW4iXSA9IGlzc3RkaW5fcmV0dmFsCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBpbnN0YW5jZQorICAgICAgICByZXR2YWwgPSBmaWxlaW5wdXQuaXNzdGRpbigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RseU9uZUludm9jYXRpb24oaW5zdGFuY2UsICJpc3N0ZGluIikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyZXR2YWwsIGlzc3RkaW5fcmV0dmFsKQorICAgICAgICBzZWxmLmFzc2VydElzKGZpbGVpbnB1dC5fc3RhdGUsIGluc3RhbmNlKQorCitjbGFzcyBJbnZvY2F0aW9uUmVjb3JkZXI6CisgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICBzZWxmLmludm9jYXRpb25fY291bnQgPSAwCisgICAgZGVmIF9fY2FsbF9fKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHNlbGYuaW52b2NhdGlvbl9jb3VudCArPSAxCisgICAgICAgIHNlbGYubGFzdF9pbnZvY2F0aW9uID0gKGFyZ3MsIGt3YXJncykKKworY2xhc3MgVGVzdF9ob29rX2NvbXByZXNzZWQodW5pdHRlc3QuVGVzdENhc2UpOgorICAgICIiIlVuaXQgdGVzdHMgZm9yIGZpbGVpbnB1dC5ob29rX2NvbXByZXNzZWQoKSIiIgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLmZha2Vfb3BlbiA9IEludm9jYXRpb25SZWNvcmRlcigpCisKKyAgICBkZWYgdGVzdF9lbXB0eV9zdHJpbmcoc2VsZik6CisgICAgICAgIHNlbGYuZG9fdGVzdF91c2VfYnVpbHRpbl9vcGVuKCIiLCAxKQorCisgICAgZGVmIHRlc3Rfbm9fZXh0KHNlbGYpOgorICAgICAgICBzZWxmLmRvX3Rlc3RfdXNlX2J1aWx0aW5fb3BlbigiYWJjZCIsIDIpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhnemlwLCAiUmVxdWlyZXMgZ3ppcCBhbmQgemxpYiIpCisgICAgZGVmIHRlc3RfZ3pfZXh0X2Zha2Uoc2VsZik6CisgICAgICAgIG9yaWdpbmFsX29wZW4gPSBnemlwLm9wZW4KKyAgICAgICAgZ3ppcC5vcGVuID0gc2VsZi5mYWtlX29wZW4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmVzdWx0ID0gZmlsZWlucHV0Lmhvb2tfY29tcHJlc3NlZCgidGVzdC5neiIsIDMpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBnemlwLm9wZW4gPSBvcmlnaW5hbF9vcGVuCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmZha2Vfb3Blbi5pbnZvY2F0aW9uX2NvdW50LCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZmFrZV9vcGVuLmxhc3RfaW52b2NhdGlvbiwgKCgidGVzdC5neiIsIDMpLCB7fSkpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhiejIsICJSZXF1aXJlcyBiejIiKQorICAgIGRlZiB0ZXN0X2J6Ml9leHRfZmFrZShzZWxmKToKKyAgICAgICAgb3JpZ2luYWxfb3BlbiA9IGJ6Mi5CWjJGaWxlCisgICAgICAgIGJ6Mi5CWjJGaWxlID0gc2VsZi5mYWtlX29wZW4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmVzdWx0ID0gZmlsZWlucHV0Lmhvb2tfY29tcHJlc3NlZCgidGVzdC5iejIiLCA0KQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgYnoyLkJaMkZpbGUgPSBvcmlnaW5hbF9vcGVuCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmZha2Vfb3Blbi5pbnZvY2F0aW9uX2NvdW50LCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZmFrZV9vcGVuLmxhc3RfaW52b2NhdGlvbiwgKCgidGVzdC5iejIiLCA0KSwge30pKQorCisgICAgZGVmIHRlc3RfYmxhaF9leHQoc2VsZik6CisgICAgICAgIHNlbGYuZG9fdGVzdF91c2VfYnVpbHRpbl9vcGVuKCJhYmNkLmJsYWgiLCA1KQorCisgICAgZGVmIHRlc3RfZ3pfZXh0X2J1aWx0aW4oc2VsZik6CisgICAgICAgIHNlbGYuZG9fdGVzdF91c2VfYnVpbHRpbl9vcGVuKCJhYmNkLkd6IiwgNikKKworICAgIGRlZiB0ZXN0X2J6Ml9leHRfYnVpbHRpbihzZWxmKToKKyAgICAgICAgc2VsZi5kb190ZXN0X3VzZV9idWlsdGluX29wZW4oImFiY2QuQnoyIiwgNykKKworICAgIGRlZiBkb190ZXN0X3VzZV9idWlsdGluX29wZW4oc2VsZiwgZmlsZW5hbWUsIG1vZGUpOgorICAgICAgICBvcmlnaW5hbF9vcGVuID0gc2VsZi5yZXBsYWNlX2J1aWx0aW5fb3BlbihzZWxmLmZha2Vfb3BlbikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmVzdWx0ID0gZmlsZWlucHV0Lmhvb2tfY29tcHJlc3NlZChmaWxlbmFtZSwgbW9kZSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHNlbGYucmVwbGFjZV9idWlsdGluX29wZW4ob3JpZ2luYWxfb3BlbikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZmFrZV9vcGVuLmludm9jYXRpb25fY291bnQsIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5mYWtlX29wZW4ubGFzdF9pbnZvY2F0aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICgoZmlsZW5hbWUsIG1vZGUpLCB7fSkpCisKKyAgICBAc3RhdGljbWV0aG9kCisgICAgZGVmIHJlcGxhY2VfYnVpbHRpbl9vcGVuKG5ld19vcGVuX2Z1bmMpOgorICAgICAgICBvcmlnaW5hbF9vcGVuID0gYnVpbHRpbnMub3BlbgorICAgICAgICBidWlsdGlucy5vcGVuID0gbmV3X29wZW5fZnVuYworICAgICAgICByZXR1cm4gb3JpZ2luYWxfb3BlbgorCitjbGFzcyBUZXN0X2hvb2tfZW5jb2RlZCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgZmlsZWlucHV0Lmhvb2tfZW5jb2RlZCgpIiIiCisKKyAgICBkZWYgdGVzdChzZWxmKToKKyAgICAgICAgZW5jb2RpbmcgPSBvYmplY3QoKQorICAgICAgICByZXN1bHQgPSBmaWxlaW5wdXQuaG9va19lbmNvZGVkKGVuY29kaW5nKQorCisgICAgICAgIGZha2Vfb3BlbiA9IEludm9jYXRpb25SZWNvcmRlcigpCisgICAgICAgIG9yaWdpbmFsX29wZW4gPSBidWlsdGlucy5vcGVuCisgICAgICAgIGJ1aWx0aW5zLm9wZW4gPSBmYWtlX29wZW4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZmlsZW5hbWUgPSBvYmplY3QoKQorICAgICAgICAgICAgbW9kZSA9IG9iamVjdCgpCisgICAgICAgICAgICBvcGVuX3Jlc3VsdCA9IHJlc3VsdChmaWxlbmFtZSwgbW9kZSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGJ1aWx0aW5zLm9wZW4gPSBvcmlnaW5hbF9vcGVuCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmYWtlX29wZW4uaW52b2NhdGlvbl9jb3VudCwgMSkKKworICAgICAgICBhcmdzLCBrd2FyZ3MgPSBmYWtlX29wZW4ubGFzdF9pbnZvY2F0aW9uCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoYXJnc1swXSwgZmlsZW5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoYXJnc1sxXSwgbW9kZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhrd2FyZ3MucG9wKCdlbmNvZGluZycpLCBlbmNvZGluZykKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShrd2FyZ3MpCiAKIGRlZiB0ZXN0X21haW4oKToKLSAgICBydW5fdW5pdHRlc3QoQnVmZmVyU2l6ZXNUZXN0cywgRmlsZUlucHV0VGVzdHMpCisgICAgcnVuX3VuaXR0ZXN0KAorICAgICAgICBCdWZmZXJTaXplc1Rlc3RzLAorICAgICAgICBGaWxlSW5wdXRUZXN0cywKKyAgICAgICAgVGVzdF9maWxlaW5wdXRfaW5wdXQsCisgICAgICAgIFRlc3RfZmlsZWlucHV0X2Nsb3NlLAorICAgICAgICBUZXN0X2ZpbGVpbnB1dF9uZXh0ZmlsZSwKKyAgICAgICAgVGVzdF9maWxlaW5wdXRfZmlsZW5hbWUsCisgICAgICAgIFRlc3RfZmlsZWlucHV0X2xpbmVubywKKyAgICAgICAgVGVzdF9maWxlaW5wdXRfZmlsZWxpbmVubywKKyAgICAgICAgVGVzdF9maWxlaW5wdXRfZmlsZW5vLAorICAgICAgICBUZXN0X2ZpbGVpbnB1dF9pc2ZpcnN0bGluZSwKKyAgICAgICAgVGVzdF9maWxlaW5wdXRfaXNzdGRpbiwKKyAgICAgICAgVGVzdF9ob29rX2NvbXByZXNzZWQsCisgICAgICAgIFRlc3RfaG9va19lbmNvZGVkLAorICAgICkKIAogaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9maWxlaW8ucHkgYi9MaWIvdGVzdC90ZXN0X2ZpbGVpby5weQppbmRleCAzNTg4ZmI0Li45ODU0ZDBjIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2ZpbGVpby5weQorKysgYi9MaWIvdGVzdC90ZXN0X2ZpbGVpby5weQpAQCAtMiw2ICsyLDcgQEAKIAogaW1wb3J0IHN5cwogaW1wb3J0IG9zCitpbXBvcnQgaW8KIGltcG9ydCBlcnJubwogaW1wb3J0IHVuaXR0ZXN0CiBmcm9tIGFycmF5IGltcG9ydCBhcnJheQpAQCAtMzM5LDEwICszNDAsMTAgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnRlbGwoKSwgMTApCiAgICAgICAgIGYudHJ1bmNhdGUoNSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnRlbGwoKSwgMTApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5zZWVrKDAsIG9zLlNFRUtfRU5EKSwgNSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnNlZWsoMCwgaW8uU0VFS19FTkQpLCA1KQogICAgICAgICBmLnRydW5jYXRlKDE1KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCA1KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuc2VlaygwLCBvcy5TRUVLX0VORCksIDE1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuc2VlaygwLCBpby5TRUVLX0VORCksIDE1KQogICAgICAgICBmLmNsb3NlKCkKIAogICAgIGRlZiB0ZXN0VHJ1bmNhdGVPbldpbmRvd3Moc2VsZik6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Zsb2F0LnB5IGIvTGliL3Rlc3QvdGVzdF9mbG9hdC5weQppbmRleCA0ZDdiYmJhLi5kYzBjMjkxIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Zsb2F0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZmxvYXQucHkKQEAgLTg4LDcgKzg4LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZmxvYXQsICIgIC0weDMucC0xICAiKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmbG9hdCwgIiAgKzB4My5wLTEgICIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmxvYXQoIiAgMjUuZS0xICAiKSwgMi41KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1cHBvcnQuZmNtcChmbG9hdCgiICAuMjVlLTEgICIpLCAuMDI1KSwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRBbG1vc3RFcXVhbChmbG9hdCgiICAuMjVlLTEgICIpLCAuMDI1KQogCiAgICAgZGVmIHRlc3RfZmxvYXRjb252ZXJzaW9uKHNlbGYpOgogICAgICAgICAjIE1ha2Ugc3VyZSB0aGF0IGNhbGxzIHRvIF9fZmxvYXRfXygpIHdvcmsgcHJvcGVybHkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZm9ybWF0LnB5IGIvTGliL3Rlc3QvdGVzdF9mb3JtYXQucHkKaW5kZXggN2ZhOTUwZC4uZDQzY2VhMyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9mb3JtYXQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9mb3JtYXQucHkKQEAgLTEsNCArMSw1IEBACiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdmVyYm9zZSwgVGVzdEZhaWxlZAoraW1wb3J0IGxvY2FsZQogaW1wb3J0IHN5cwogaW1wb3J0IHRlc3Quc3VwcG9ydCBhcyBzdXBwb3J0CiBpbXBvcnQgdW5pdHRlc3QKQEAgLTI2Myw2ICsyNjQsNDkgQEAKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgcmFpc2UgVGVzdEZhaWxlZCgnIiUqZCIlKG1heHNpemUsIC0xMjcpIHNob3VsZCBmYWlsJykKIAorICAgIGRlZiB0ZXN0X25vbl9hc2NpaShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoImFiYyIsICJcdTIwMDc8NSIpLCAiYWJjXHUyMDA3XHUyMDA3IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoMTIzLCAiXHUyMDA3PDUiKSwgIjEyM1x1MjAwN1x1MjAwNyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KDEyLjMsICJcdTIwMDc8NiIpLCAiMTIuM1x1MjAwN1x1MjAwNyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KDBqLCAiXHUyMDA3PDQiKSwgIjBqXHUyMDA3XHUyMDA3IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoMSsyaiwgIlx1MjAwNzw4IiksICIoMSsyailcdTIwMDdcdTIwMDciKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KCJhYmMiLCAiXHUyMDA3PjUiKSwgIlx1MjAwN1x1MjAwN2FiYyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KDEyMywgIlx1MjAwNz41IiksICJcdTIwMDdcdTIwMDcxMjMiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgxMi4zLCAiXHUyMDA3PjYiKSwgIlx1MjAwN1x1MjAwNzEyLjMiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgxKzJqLCAiXHUyMDA3PjgiKSwgIlx1MjAwN1x1MjAwNygxKzJqKSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KDBqLCAiXHUyMDA3PjQiKSwgIlx1MjAwN1x1MjAwNzBqIikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgiYWJjIiwgIlx1MjAwN141IiksICJcdTIwMDdhYmNcdTIwMDciKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgxMjMsICJcdTIwMDdeNSIpLCAiXHUyMDA3MTIzXHUyMDA3IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoMTIuMywgIlx1MjAwN142IiksICJcdTIwMDcxMi4zXHUyMDA3IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoMSsyaiwgIlx1MjAwN144IiksICJcdTIwMDcoMSsyailcdTIwMDciKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgwaiwgIlx1MjAwN140IiksICJcdTIwMDcwalx1MjAwNyIpCisKKyAgICBkZWYgdGVzdF9sb2NhbGUoc2VsZik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG9sZGxvYyA9IGxvY2FsZS5zZXRsb2NhbGUobG9jYWxlLkxDX0FMTCkKKyAgICAgICAgICAgIGxvY2FsZS5zZXRsb2NhbGUobG9jYWxlLkxDX0FMTCwgJycpCisgICAgICAgIGV4Y2VwdCBsb2NhbGUuRXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiQ2Fubm90IHNldCBsb2NhbGU6IHt9Ii5mb3JtYXQoZXJyKSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgbG9jYWxlY29udiA9IGxvY2FsZS5sb2NhbGVjb252KCkKKyAgICAgICAgICAgIHNlcCA9IGxvY2FsZWNvbnZbJ3Rob3VzYW5kc19zZXAnXQorICAgICAgICAgICAgcG9pbnQgPSBsb2NhbGVjb252WydkZWNpbWFsX3BvaW50J10KKworICAgICAgICAgICAgdGV4dCA9IGZvcm1hdCgxMjM0NTY3ODksICJuIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VwLCB0ZXh0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXh0LnJlcGxhY2Uoc2VwLCAnJyksICcxMjM0NTY3ODknKQorCisgICAgICAgICAgICB0ZXh0ID0gZm9ybWF0KDEyMzQuNSwgIm4iKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihzZXAsIHRleHQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEluKHBvaW50LCB0ZXh0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXh0LnJlcGxhY2Uoc2VwLCAnJyksICcxMjM0JyArIHBvaW50ICsgJzUnKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgbG9jYWxlLnNldGxvY2FsZShsb2NhbGUuTENfQUxMLCBvbGRsb2MpCisKKworCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoRm9ybWF0VGVzdCkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9mdHBsaWIucHkgYi9MaWIvdGVzdC90ZXN0X2Z0cGxpYi5weQppbmRleCA3MWJjMjNlLi43MDI4ZjQ2IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Z0cGxpYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Z0cGxpYi5weQpAQCAtMjIsMTAgKzIyLDI1IEBACiB0aHJlYWRpbmcgPSBzdXBwb3J0LmltcG9ydF9tb2R1bGUoJ3RocmVhZGluZycpCiAKICMgdGhlIGR1bW15IGRhdGEgcmV0dXJuZWQgYnkgc2VydmVyIG92ZXIgdGhlIGRhdGEgY2hhbm5lbCB3aGVuCi0jIFJFVFIsIExJU1QgYW5kIE5MU1QgY29tbWFuZHMgYXJlIGlzc3VlZAorIyBSRVRSLCBMSVNULCBOTFNULCBNTFNEIGNvbW1hbmRzIGFyZSBpc3N1ZWQKIFJFVFJfREFUQSA9ICdhYmNkZTEyMzQ1XHJcbicgKiAxMDAwCiBMSVNUX0RBVEEgPSAnZm9vXHJcbmJhclxyXG4nCiBOTFNUX0RBVEEgPSAnZm9vXHJcbmJhclxyXG4nCitNTFNEX0RBVEEgPSAoInR5cGU9Y2RpcjtwZXJtPWVsO3VuaXF1ZT09a2VWTzErWkY0OyB0ZXN0XHJcbiIKKyAgICAgICAgICAgICAidHlwZT1wZGlyO3Blcm09ZTt1bmlxdWU9PWtlVk8xK2Q/MzsgLi5cclxuIgorICAgICAgICAgICAgICJ0eXBlPU9TLnVuaXg9c2xpbms6L2Zvb2JhcjtwZXJtPTt1bmlxdWU9PWtlVk8xKzRHNDsgZm9vYmFyXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1PUy51bml4PWNoci0xMy8yOTtwZXJtPTt1bmlxdWU9PWtlVk8xKzVHNDsgZGV2aWNlXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1PUy51bml4PWJsay0xMS8xMDg7cGVybT07dW5pcXVlPT1rZVZPMSs2RzQ7IGJsb2NrXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1maWxlO3Blcm09YXdyO3VuaXF1ZT09a2VWTzErOEc0OyB3cml0YWJsZVxyXG4iCisgICAgICAgICAgICAgInR5cGU9ZGlyO3Blcm09Y3BtZWw7dW5pcXVlPT1rZVZPMSs3RzQ7IHByb21pc2N1b3VzXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1kaXI7cGVybT07dW5pcXVlPT1rZVZPMSsxdDI7IG5vLWV4ZWNcclxuIgorICAgICAgICAgICAgICJ0eXBlPWZpbGU7cGVybT1yO3VuaXF1ZT09a2VWTzErRUc0OyB0d28gd29yZHNcclxuIgorICAgICAgICAgICAgICJ0eXBlPWZpbGU7cGVybT1yO3VuaXF1ZT09a2VWTzErSUg0OyAgbGVhZGluZyBzcGFjZVxyXG4iCisgICAgICAgICAgICAgInR5cGU9ZmlsZTtwZXJtPXI7dW5pcXVlPT1rZVZPMSsxRzQ7IGZpbGUxXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1kaXI7cGVybT1jcG1lbDt1bmlxdWU9PWtlVk8xKzdHNDsgaW5jb21pbmdcclxuIgorICAgICAgICAgICAgICJ0eXBlPWZpbGU7cGVybT1yO3VuaXF1ZT09a2VWTzErMUc0OyBmaWxlMlxyXG4iCisgICAgICAgICAgICAgInR5cGU9ZmlsZTtwZXJtPXI7dW5pcXVlPT1rZVZPMSsxRzQ7IGZpbGUzXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1maWxlO3Blcm09cjt1bmlxdWU9PWtlVk8xKzFHNDsgZmlsZTRcclxuIikKIAogCiBjbGFzcyBEdW1teURUUEhhbmRsZXIoYXN5bmNoYXQuYXN5bmNfY2hhdCk6CkBAIC00OSw2ICs2NCwxMSBAQAogICAgICAgICAgICAgc2VsZi5kdHBfY29ubl9jbG9zZWQgPSBUcnVlCiAKICAgICBkZWYgcHVzaChzZWxmLCB3aGF0KToKKyAgICAgICAgaWYgc2VsZi5iYXNlY2xhc3MubmV4dF9kYXRhIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgd2hhdCA9IHNlbGYuYmFzZWNsYXNzLm5leHRfZGF0YQorICAgICAgICAgICAgc2VsZi5iYXNlY2xhc3MubmV4dF9kYXRhID0gTm9uZQorICAgICAgICBpZiBub3Qgd2hhdDoKKyAgICAgICAgICAgIHJldHVybiBzZWxmLmNsb3NlX3doZW5fZG9uZSgpCiAgICAgICAgIHN1cGVyKER1bW15RFRQSGFuZGxlciwgc2VsZikucHVzaCh3aGF0LmVuY29kZSgnYXNjaWknKSkKIAogICAgIGRlZiBoYW5kbGVfZXJyb3Ioc2VsZik6CkBAIC02OSw2ICs4OSw3IEBACiAgICAgICAgIHNlbGYubGFzdF9yZWNlaXZlZF9jbWQgPSBOb25lCiAgICAgICAgIHNlbGYubGFzdF9yZWNlaXZlZF9kYXRhID0gJycKICAgICAgICAgc2VsZi5uZXh0X3Jlc3BvbnNlID0gJycKKyAgICAgICAgc2VsZi5uZXh0X2RhdGEgPSBOb25lCiAgICAgICAgIHNlbGYucmVzdCA9IE5vbmUKICAgICAgICAgc2VsZi5wdXNoKCcyMjAgd2VsY29tZScpCiAKQEAgLTEwNCw3ICsxMjUsNyBAQAogICAgICAgICBhZGRyID0gbGlzdChtYXAoaW50LCBhcmcuc3BsaXQoJywnKSkpCiAgICAgICAgIGlwID0gJyVkLiVkLiVkLiVkJyAldHVwbGUoYWRkcls6NF0pCiAgICAgICAgIHBvcnQgPSAoYWRkcls0XSAqIDI1NikgKyBhZGRyWzVdCi0gICAgICAgIHMgPSBzb2NrZXQuY3JlYXRlX2Nvbm5lY3Rpb24oKGlwLCBwb3J0KSwgdGltZW91dD0xMCkKKyAgICAgICAgcyA9IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoaXAsIHBvcnQpLCB0aW1lb3V0PTIpCiAgICAgICAgIHNlbGYuZHRwID0gc2VsZi5kdHBfaGFuZGxlcihzLCBiYXNlY2xhc3M9c2VsZikKICAgICAgICAgc2VsZi5wdXNoKCcyMDAgYWN0aXZlIGRhdGEgY29ubmVjdGlvbiBlc3RhYmxpc2hlZCcpCiAKQEAgLTEyMiw3ICsxNDMsNyBAQAogICAgIGRlZiBjbWRfZXBydChzZWxmLCBhcmcpOgogICAgICAgICBhZiwgaXAsIHBvcnQgPSBhcmcuc3BsaXQoYXJnWzBdKVsxOi0xXQogICAgICAgICBwb3J0ID0gaW50KHBvcnQpCi0gICAgICAgIHMgPSBzb2NrZXQuY3JlYXRlX2Nvbm5lY3Rpb24oKGlwLCBwb3J0KSwgdGltZW91dD0xMCkKKyAgICAgICAgcyA9IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoaXAsIHBvcnQpLCB0aW1lb3V0PTIpCiAgICAgICAgIHNlbGYuZHRwID0gc2VsZi5kdHBfaGFuZGxlcihzLCBiYXNlY2xhc3M9c2VsZikKICAgICAgICAgc2VsZi5wdXNoKCcyMDAgYWN0aXZlIGRhdGEgY29ubmVjdGlvbiBlc3RhYmxpc2hlZCcpCiAKQEAgLTIxMyw2ICsyMzQsMTQgQEAKICAgICAgICAgc2VsZi5kdHAucHVzaChOTFNUX0RBVEEpCiAgICAgICAgIHNlbGYuZHRwLmNsb3NlX3doZW5fZG9uZSgpCiAKKyAgICBkZWYgY21kX29wdHMoc2VsZiwgYXJnKToKKyAgICAgICAgc2VsZi5wdXNoKCcyMDAgb3B0cyBvaycpCisKKyAgICBkZWYgY21kX21sc2Qoc2VsZiwgYXJnKToKKyAgICAgICAgc2VsZi5wdXNoKCcxMjUgbWxzZCBvaycpCisgICAgICAgIHNlbGYuZHRwLnB1c2goTUxTRF9EQVRBKQorICAgICAgICBzZWxmLmR0cC5jbG9zZV93aGVuX2RvbmUoKQorCiAKIGNsYXNzIER1bW15RlRQU2VydmVyKGFzeW5jb3JlLmRpc3BhdGNoZXIsIHRocmVhZGluZy5UaHJlYWQpOgogCkBAIC0yNzQsMTEgKzMwMywxMSBAQAogICAgICAgICBfc3NsX2Nsb3NpbmcgPSBGYWxzZQogCiAgICAgICAgIGRlZiBzZWN1cmVfY29ubmVjdGlvbihzZWxmKToKLSAgICAgICAgICAgIHNlbGYuZGVsX2NoYW5uZWwoKQogICAgICAgICAgICAgc29ja2V0ID0gc3NsLndyYXBfc29ja2V0KHNlbGYuc29ja2V0LCBzdXBwcmVzc19yYWdnZWRfZW9mcz1GYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0ZmlsZT1DRVJURklMRSwgc2VydmVyX3NpZGU9VHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb19oYW5kc2hha2Vfb25fY29ubmVjdD1GYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzc2xfdmVyc2lvbj1zc2wuUFJPVE9DT0xfU1NMdjIzKQorICAgICAgICAgICAgc2VsZi5kZWxfY2hhbm5lbCgpCiAgICAgICAgICAgICBzZWxmLnNldF9zb2NrZXQoc29ja2V0KQogICAgICAgICAgICAgc2VsZi5fc3NsX2FjY2VwdGluZyA9IFRydWUKIApAQCAtMzEzLDcgKzM0MiwxMCBAQAogICAgICAgICAgICAgICAgICMgaHR0cDovL3d3dy5tYWlsLWFyY2hpdmUuY29tL29wZW5zc2wtdXNlcnNAb3BlbnNzbC5vcmcvbXNnNjA3MTAuaHRtbAogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgIHNlbGYuX3NzbF9jbG9zaW5nID0gRmFsc2UKLSAgICAgICAgICAgIHN1cGVyKFNTTENvbm5lY3Rpb24sIHNlbGYpLmNsb3NlKCkKKyAgICAgICAgICAgIGlmIGdldGF0dHIoc2VsZiwgJ19jY2MnLCBGYWxzZSkgPT0gRmFsc2U6CisgICAgICAgICAgICAgICAgc3VwZXIoU1NMQ29ubmVjdGlvbiwgc2VsZikuY2xvc2UoKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBwYXNzCiAKICAgICAgICAgZGVmIGhhbmRsZV9yZWFkX2V2ZW50KHNlbGYpOgogICAgICAgICAgICAgaWYgc2VsZi5fc3NsX2FjY2VwdGluZzoKQEAgLTM4MSwxMiArNDEzLDE4IEBACiAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBjb25uKToKICAgICAgICAgICAgIER1bW15RlRQSGFuZGxlci5fX2luaXRfXyhzZWxmLCBjb25uKQogICAgICAgICAgICAgc2VsZi5zZWN1cmVfZGF0YV9jaGFubmVsID0gRmFsc2UKKyAgICAgICAgICAgIHNlbGYuX2NjYyA9IEZhbHNlCiAKICAgICAgICAgZGVmIGNtZF9hdXRoKHNlbGYsIGxpbmUpOgogICAgICAgICAgICAgIiIiU2V0IHVwIHNlY3VyZSBjb250cm9sIGNoYW5uZWwuIiIiCiAgICAgICAgICAgICBzZWxmLnB1c2goJzIzNCBBVVRIIFRMUyBzdWNjZXNzZnVsJykKICAgICAgICAgICAgIHNlbGYuc2VjdXJlX2Nvbm5lY3Rpb24oKQogCisgICAgICAgIGRlZiBjbWRfY2NjKHNlbGYsIGxpbmUpOgorICAgICAgICAgICAgc2VsZi5wdXNoKCcyMjAgUmV2ZXJ0aW5nIGJhY2sgdG8gY2xlYXItdGV4dCcpCisgICAgICAgICAgICBzZWxmLl9jY2MgPSBUcnVlCisgICAgICAgICAgICBzZWxmLl9kb19zc2xfc2h1dGRvd24oKQorCiAgICAgICAgIGRlZiBjbWRfcGJzeihzZWxmLCBsaW5lKToKICAgICAgICAgICAgICIiIk5lZ290aWF0ZSBzaXplIG9mIGJ1ZmZlciBmb3Igc2VjdXJlIGRhdGEgdHJhbnNmZXIuCiAgICAgICAgICAgICBGb3IgVExTL1NTTCB0aGUgb25seSB2YWxpZCB2YWx1ZSBmb3IgdGhlIHBhcmFtZXRlciBpcyAnMCcuCkBAIC00MTYsMTMgKzQ1NCwxNyBAQAogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgc2VsZi5zZXJ2ZXIgPSBEdW1teUZUUFNlcnZlcigoSE9TVCwgMCkpCiAgICAgICAgIHNlbGYuc2VydmVyLnN0YXJ0KCkKLSAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQKHRpbWVvdXQ9MTApCisgICAgICAgIHNlbGYuY2xpZW50ID0gZnRwbGliLkZUUCh0aW1lb3V0PTIpCiAgICAgICAgIHNlbGYuY2xpZW50LmNvbm5lY3Qoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCkKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKICAgICAgICAgc2VsZi5jbGllbnQuY2xvc2UoKQogICAgICAgICBzZWxmLnNlcnZlci5zdG9wKCkKIAorICAgIGRlZiBjaGVja19kYXRhKHNlbGYsIHJlY2VpdmVkLCBleHBlY3RlZCk6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHJlY2VpdmVkKSwgbGVuKGV4cGVjdGVkKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNlaXZlZCwgZXhwZWN0ZWQpCisKICAgICBkZWYgdGVzdF9nZXR3ZWxjb21lKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2xpZW50LmdldHdlbGNvbWUoKSwgJzIyMCB3ZWxjb21lJykKIApAQCAtNTA0LDcgKzU0Niw3IEBACiAgICAgICAgICAgICByZWNlaXZlZC5hcHBlbmQoZGF0YS5kZWNvZGUoJ2FzY2lpJykpCiAgICAgICAgIHJlY2VpdmVkID0gW10KICAgICAgICAgc2VsZi5jbGllbnQucmV0cmJpbmFyeSgncmV0cicsIGNhbGxiYWNrKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcnLmpvaW4ocmVjZWl2ZWQpLCBSRVRSX0RBVEEpCisgICAgICAgIHNlbGYuY2hlY2tfZGF0YSgnJy5qb2luKHJlY2VpdmVkKSwgUkVUUl9EQVRBKQogCiAgICAgZGVmIHRlc3RfcmV0cmJpbmFyeV9yZXN0KHNlbGYpOgogICAgICAgICBkZWYgY2FsbGJhY2soZGF0YSk6CkBAIC01MTIsMjAgKzU1NCwxNyBAQAogICAgICAgICBmb3IgcmVzdCBpbiAoMCwgMTAsIDIwKToKICAgICAgICAgICAgIHJlY2VpdmVkID0gW10KICAgICAgICAgICAgIHNlbGYuY2xpZW50LnJldHJiaW5hcnkoJ3JldHInLCBjYWxsYmFjaywgcmVzdD1yZXN0KQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnJy5qb2luKHJlY2VpdmVkKSwgUkVUUl9EQVRBW3Jlc3Q6XSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSdyZXN0IHRlc3QgY2FzZSAlZCAlZCAlZCcgJSAocmVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKCcnLmpvaW4ocmVjZWl2ZWQpKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKFJFVFJfREFUQVtyZXN0Ol0pKSkKKyAgICAgICAgICAgIHNlbGYuY2hlY2tfZGF0YSgnJy5qb2luKHJlY2VpdmVkKSwgUkVUUl9EQVRBW3Jlc3Q6XSkKIAogICAgIGRlZiB0ZXN0X3JldHJsaW5lcyhzZWxmKToKICAgICAgICAgcmVjZWl2ZWQgPSBbXQogICAgICAgICBzZWxmLmNsaWVudC5yZXRybGluZXMoJ3JldHInLCByZWNlaXZlZC5hcHBlbmQpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJycuam9pbihyZWNlaXZlZCksIFJFVFJfREFUQS5yZXBsYWNlKCdcclxuJywgJycpKQorICAgICAgICBzZWxmLmNoZWNrX2RhdGEoJycuam9pbihyZWNlaXZlZCksIFJFVFJfREFUQS5yZXBsYWNlKCdcclxuJywgJycpKQogCiAgICAgZGVmIHRlc3Rfc3RvcmJpbmFyeShzZWxmKToKICAgICAgICAgZiA9IGlvLkJ5dGVzSU8oUkVUUl9EQVRBLmVuY29kZSgnYXNjaWknKSkKICAgICAgICAgc2VsZi5jbGllbnQuc3RvcmJpbmFyeSgnc3RvcicsIGYpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5sYXN0X3JlY2VpdmVkX2RhdGEsIFJFVFJfREFUQSkKKyAgICAgICAgc2VsZi5jaGVja19kYXRhKHNlbGYuc2VydmVyLmhhbmRsZXJfaW5zdGFuY2UubGFzdF9yZWNlaXZlZF9kYXRhLCBSRVRSX0RBVEEpCiAgICAgICAgICMgdGVzdCBuZXcgY2FsbGJhY2sgYXJnCiAgICAgICAgIGZsYWcgPSBbXQogICAgICAgICBmLnNlZWsoMCkKQEAgLTU0Miw3ICs1ODEsNyBAQAogICAgIGRlZiB0ZXN0X3N0b3JsaW5lcyhzZWxmKToKICAgICAgICAgZiA9IGlvLkJ5dGVzSU8oUkVUUl9EQVRBLnJlcGxhY2UoJ1xyXG4nLCAnXG4nKS5lbmNvZGUoJ2FzY2lpJykpCiAgICAgICAgIHNlbGYuY2xpZW50LnN0b3JsaW5lcygnc3RvcicsIGYpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5sYXN0X3JlY2VpdmVkX2RhdGEsIFJFVFJfREFUQSkKKyAgICAgICAgc2VsZi5jaGVja19kYXRhKHNlbGYuc2VydmVyLmhhbmRsZXJfaW5zdGFuY2UubGFzdF9yZWNlaXZlZF9kYXRhLCBSRVRSX0RBVEEpCiAgICAgICAgICMgdGVzdCBuZXcgY2FsbGJhY2sgYXJnCiAgICAgICAgIGZsYWcgPSBbXQogICAgICAgICBmLnNlZWsoMCkKQEAgLTU1OCw2ICs1OTcsNjQgQEAKICAgICAgICAgc2VsZi5jbGllbnQuZGlyKGxhbWJkYSB4OiBsLmFwcGVuZCh4KSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnJy5qb2luKGwpLCBMSVNUX0RBVEEucmVwbGFjZSgnXHJcbicsICcnKSkKIAorICAgIGRlZiB0ZXN0X21sc2Qoc2VsZik6CisgICAgICAgIGxpc3Qoc2VsZi5jbGllbnQubWxzZCgpKQorICAgICAgICBsaXN0KHNlbGYuY2xpZW50Lm1sc2QocGF0aD0nLycpKQorICAgICAgICBsaXN0KHNlbGYuY2xpZW50Lm1sc2QocGF0aD0nLycsIGZhY3RzPVsnc2l6ZScsICd0eXBlJ10pKQorCisgICAgICAgIGxzID0gbGlzdChzZWxmLmNsaWVudC5tbHNkKCkpCisgICAgICAgIGZvciBuYW1lLCBmYWN0cyBpbiBsczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShuYW1lLCBzdHIpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZmFjdHMsIGRpY3QpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUobmFtZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3R5cGUnLCBmYWN0cykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3Blcm0nLCBmYWN0cykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3VuaXF1ZScsIGZhY3RzKQorCisgICAgICAgIGRlZiBzZXRfZGF0YShkYXRhKToKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLmhhbmRsZXJfaW5zdGFuY2UubmV4dF9kYXRhID0gZGF0YQorCisgICAgICAgIGRlZiB0ZXN0X2VudHJ5KGxpbmUsIHR5cGU9Tm9uZSwgcGVybT1Ob25lLCB1bmlxdWU9Tm9uZSwgbmFtZT1Ob25lKToKKyAgICAgICAgICAgIHR5cGUgPSAndHlwZScgaWYgdHlwZSBpcyBOb25lIGVsc2UgdHlwZQorICAgICAgICAgICAgcGVybSA9ICdwZXJtJyBpZiBwZXJtIGlzIE5vbmUgZWxzZSBwZXJtCisgICAgICAgICAgICB1bmlxdWUgPSAndW5pcXVlJyBpZiB1bmlxdWUgaXMgTm9uZSBlbHNlIHVuaXF1ZQorICAgICAgICAgICAgbmFtZSA9ICduYW1lJyBpZiBuYW1lIGlzIE5vbmUgZWxzZSBuYW1lCisgICAgICAgICAgICBzZXRfZGF0YShsaW5lKQorICAgICAgICAgICAgX25hbWUsIGZhY3RzID0gbmV4dChzZWxmLmNsaWVudC5tbHNkKCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKF9uYW1lLCBuYW1lKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmYWN0c1sndHlwZSddLCB0eXBlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmYWN0c1sncGVybSddLCBwZXJtKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmYWN0c1sndW5pcXVlJ10sIHVuaXF1ZSkKKworICAgICAgICAjIHBsYWluCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgbmFtZVxyXG4nKQorICAgICAgICAjICI9IiBpbiBmYWN0IHZhbHVlCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHk9cGU7cGVybT1wZXJtO3VuaXF1ZT11bmlxdWU7IG5hbWVcclxuJywgdHlwZT0idHk9cGUiKQorICAgICAgICB0ZXN0X2VudHJ5KCd0eXBlPT10eXBlO3Blcm09cGVybTt1bmlxdWU9dW5pcXVlOyBuYW1lXHJcbicsIHR5cGU9Ij10eXBlIikKKyAgICAgICAgdGVzdF9lbnRyeSgndHlwZT10PXk9cGU7cGVybT1wZXJtO3VuaXF1ZT11bmlxdWU7IG5hbWVcclxuJywgdHlwZT0idD15PXBlIikKKyAgICAgICAgdGVzdF9lbnRyeSgndHlwZT09PT09O3Blcm09cGVybTt1bmlxdWU9dW5pcXVlOyBuYW1lXHJcbicsIHR5cGU9Ij09PT0iKQorICAgICAgICAjIHNwYWNlcyBpbiBuYW1lCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgbmEgbWVcclxuJywgbmFtZT0ibmEgbWUiKQorICAgICAgICB0ZXN0X2VudHJ5KCd0eXBlPXR5cGU7cGVybT1wZXJtO3VuaXF1ZT11bmlxdWU7IG5hbWUgXHJcbicsIG5hbWU9Im5hbWUgIikKKyAgICAgICAgdGVzdF9lbnRyeSgndHlwZT10eXBlO3Blcm09cGVybTt1bmlxdWU9dW5pcXVlOyAgbmFtZVxyXG4nLCBuYW1lPSIgbmFtZSIpCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgbiBhbSAgZVxyXG4nLCBuYW1lPSJuIGFtICBlIikKKyAgICAgICAgIyAiOyIgaW4gbmFtZQorICAgICAgICB0ZXN0X2VudHJ5KCd0eXBlPXR5cGU7cGVybT1wZXJtO3VuaXF1ZT11bmlxdWU7IG5hO21lXHJcbicsIG5hbWU9Im5hO21lIikKKyAgICAgICAgdGVzdF9lbnRyeSgndHlwZT10eXBlO3Blcm09cGVybTt1bmlxdWU9dW5pcXVlOyA7bmFtZVxyXG4nLCBuYW1lPSI7bmFtZSIpCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgO25hbWU7XHJcbicsIG5hbWU9IjtuYW1lOyIpCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgOzs7O1xyXG4nLCBuYW1lPSI7Ozs7IikKKyAgICAgICAgIyBjYXNlIHNlbnNpdGl2ZW5lc3MKKyAgICAgICAgc2V0X2RhdGEoJ1R5cGU9dHlwZTtUeVBlPXBlcm07VU5JUVVFPXVuaXF1ZTsgbmFtZVxyXG4nKQorICAgICAgICBfbmFtZSwgZmFjdHMgPSBuZXh0KHNlbGYuY2xpZW50Lm1sc2QoKSkKKyAgICAgICAgZm9yIHggaW4gZmFjdHM6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoeC5pc2xvd2VyKCkpCisgICAgICAgICMgbm8gZGF0YSAoZGlyZWN0b3J5IGVtcHR5KQorICAgICAgICBzZXRfZGF0YSgnJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3RvcEl0ZXJhdGlvbiwgbmV4dCwgc2VsZi5jbGllbnQubWxzZCgpKQorICAgICAgICBzZXRfZGF0YSgnJykKKyAgICAgICAgZm9yIHggaW4gc2VsZi5jbGllbnQubWxzZCgpOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJ1bmV4cGVjdGVkIGRhdGEgJXMiICUgZGF0YSkKKwogICAgIGRlZiB0ZXN0X21ha2Vwb3J0KHNlbGYpOgogICAgICAgICB3aXRoIHNlbGYuY2xpZW50Lm1ha2Vwb3J0KCk6CiAgICAgICAgICAgICAjIElQdjQgaXMgaW4gdXNlLCBqdXN0IG1ha2Ugc3VyZSBzZW5kX2VwcnQgaGFzIG5vdCBiZWVuIHVzZWQKQEAgLTU4NCw3ICs2ODEsNyBAQAogICAgICAgICAgICAgcmV0dXJuIFRydWUKIAogICAgICAgICAjIGJhc2UgdGVzdAotICAgICAgICB3aXRoIGZ0cGxpYi5GVFAodGltZW91dD0xMCkgYXMgc2VsZi5jbGllbnQ6CisgICAgICAgIHdpdGggZnRwbGliLkZUUCh0aW1lb3V0PTIpIGFzIHNlbGYuY2xpZW50OgogICAgICAgICAgICAgc2VsZi5jbGllbnQuY29ubmVjdChzZWxmLnNlcnZlci5ob3N0LCBzZWxmLnNlcnZlci5wb3J0KQogICAgICAgICAgICAgc2VsZi5jbGllbnQuc2VuZGNtZCgnbm9vcCcpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNfY2xpZW50X2Nvbm5lY3RlZCgpKQpAQCAtNTkyLDcgKzY4OSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaXNfY2xpZW50X2Nvbm5lY3RlZCgpKQogCiAgICAgICAgICMgUVVJVCBzZW50IGluc2lkZSB0aGUgd2l0aCBibG9jawotICAgICAgICB3aXRoIGZ0cGxpYi5GVFAodGltZW91dD0xMCkgYXMgc2VsZi5jbGllbnQ6CisgICAgICAgIHdpdGggZnRwbGliLkZUUCh0aW1lb3V0PTIpIGFzIHNlbGYuY2xpZW50OgogICAgICAgICAgICAgc2VsZi5jbGllbnQuY29ubmVjdChzZWxmLnNlcnZlci5ob3N0LCBzZWxmLnNlcnZlci5wb3J0KQogICAgICAgICAgICAgc2VsZi5jbGllbnQuc2VuZGNtZCgnbm9vcCcpCiAgICAgICAgICAgICBzZWxmLmNsaWVudC5xdWl0KCkKQEAgLTYwMiw3ICs2OTksNyBAQAogICAgICAgICAjIGZvcmNlIGEgd3JvbmcgcmVzcG9uc2UgY29kZSB0byBiZSBzZW50IG9uIFFVSVQ6IGVycm9yX3Blcm0KICAgICAgICAgIyBpcyBleHBlY3RlZCBhbmQgdGhlIGNvbm5lY3Rpb24gaXMgc3VwcG9zZWQgdG8gYmUgY2xvc2VkCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHdpdGggZnRwbGliLkZUUCh0aW1lb3V0PTEwKSBhcyBzZWxmLmNsaWVudDoKKyAgICAgICAgICAgIHdpdGggZnRwbGliLkZUUCh0aW1lb3V0PTIpIGFzIHNlbGYuY2xpZW50OgogICAgICAgICAgICAgICAgIHNlbGYuY2xpZW50LmNvbm5lY3Qoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCkKICAgICAgICAgICAgICAgICBzZWxmLmNsaWVudC5zZW5kY21kKCdub29wJykKICAgICAgICAgICAgICAgICBzZWxmLnNlcnZlci5oYW5kbGVyX2luc3RhbmNlLm5leHRfcmVzcG9uc2UgPSAnNTUwIGVycm9yIG9uIHF1aXQnCkBAIC02MTYsNiArNzEzLDMwIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5sYXN0X3JlY2VpdmVkX2NtZCwgJ3F1aXQnKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX2NsaWVudF9jb25uZWN0ZWQoKSkKIAorICAgIGRlZiB0ZXN0X3NvdXJjZV9hZGRyZXNzKHNlbGYpOgorICAgICAgICBzZWxmLmNsaWVudC5xdWl0KCkKKyAgICAgICAgcG9ydCA9IHN1cHBvcnQuZmluZF91bnVzZWRfcG9ydCgpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuY2xpZW50LmNvbm5lY3Qoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlX2FkZHJlc3M9KEhPU1QsIHBvcnQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNsaWVudC5zb2NrLmdldHNvY2tuYW1lKClbMV0sIHBvcnQpCisgICAgICAgICAgICBzZWxmLmNsaWVudC5xdWl0KCkKKyAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRUFERFJJTlVTRToKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJjb3VsZG4ndCBiaW5kIHRvIHBvcnQgJWQiICUgcG9ydCkKKyAgICAgICAgICAgIHJhaXNlCisKKyAgICBkZWYgdGVzdF9zb3VyY2VfYWRkcmVzc19wYXNzaXZlX2Nvbm5lY3Rpb24oc2VsZik6CisgICAgICAgIHBvcnQgPSBzdXBwb3J0LmZpbmRfdW51c2VkX3BvcnQoKQorICAgICAgICBzZWxmLmNsaWVudC5zb3VyY2VfYWRkcmVzcyA9IChIT1NULCBwb3J0KQorICAgICAgICB0cnk6CisgICAgICAgICAgICB3aXRoIHNlbGYuY2xpZW50LnRyYW5zZmVyY21kKCdsaXN0JykgYXMgc29jazoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvY2suZ2V0c29ja25hbWUoKVsxXSwgcG9ydCkKKyAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRUFERFJJTlVTRToKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJjb3VsZG4ndCBiaW5kIHRvIHBvcnQgJWQiICUgcG9ydCkKKyAgICAgICAgICAgIHJhaXNlCisKICAgICBkZWYgdGVzdF9wYXJzZTI1NyhzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdHBsaWIucGFyc2UyNTcoJzI1NyAiL2Zvby9iYXIiJyksICcvZm9vL2JhcicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnRwbGliLnBhcnNlMjU3KCcyNTcgIi9mb28vYmFyIiBjcmVhdGVkJyksICcvZm9vL2JhcicpCkBAIC02MzIsNyArNzUzLDcgQEAKIGNsYXNzIFRlc3RJUHY2RW52aXJvbm1lbnQoVGVzdENhc2UpOgogCiAgICAgZGVmIHNldFVwKHNlbGYpOgotICAgICAgICBzZWxmLnNlcnZlciA9IER1bW15RlRQU2VydmVyKChIT1NULCAwKSwgYWY9c29ja2V0LkFGX0lORVQ2KQorICAgICAgICBzZWxmLnNlcnZlciA9IER1bW15RlRQU2VydmVyKCgnOjoxJywgMCksIGFmPXNvY2tldC5BRl9JTkVUNikKICAgICAgICAgc2VsZi5zZXJ2ZXIuc3RhcnQoKQogICAgICAgICBzZWxmLmNsaWVudCA9IGZ0cGxpYi5GVFAoKQogICAgICAgICBzZWxmLmNsaWVudC5jb25uZWN0KHNlbGYuc2VydmVyLmhvc3QsIHNlbGYuc2VydmVyLnBvcnQpCkBAIC02NjEsNiArNzgyLDcgQEAKICAgICAgICAgICAgICAgICByZWNlaXZlZC5hcHBlbmQoZGF0YS5kZWNvZGUoJ2FzY2lpJykpCiAgICAgICAgICAgICByZWNlaXZlZCA9IFtdCiAgICAgICAgICAgICBzZWxmLmNsaWVudC5yZXRyYmluYXJ5KCdyZXRyJywgY2FsbGJhY2spCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbignJy5qb2luKHJlY2VpdmVkKSksIGxlbihSRVRSX0RBVEEpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnJy5qb2luKHJlY2VpdmVkKSwgUkVUUl9EQVRBKQogICAgICAgICBzZWxmLmNsaWVudC5zZXRfcGFzdihUcnVlKQogICAgICAgICByZXRyKCkKQEAgLTY3Niw3ICs3OTgsNyBAQAogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgc2VsZi5zZXJ2ZXIgPSBEdW1teVRMU19GVFBTZXJ2ZXIoKEhPU1QsIDApKQogICAgICAgICBzZWxmLnNlcnZlci5zdGFydCgpCi0gICAgICAgIHNlbGYuY2xpZW50ID0gZnRwbGliLkZUUF9UTFModGltZW91dD0xMCkKKyAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQX1RMUyh0aW1lb3V0PTIpCiAgICAgICAgIHNlbGYuY2xpZW50LmNvbm5lY3Qoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCkKICAgICAgICAgIyBlbmFibGUgVExTCiAgICAgICAgIHNlbGYuY2xpZW50LmF1dGgoKQpAQCAtNjg5LDcgKzgxMSw3IEBACiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICBzZWxmLnNlcnZlciA9IER1bW15VExTX0ZUUFNlcnZlcigoSE9TVCwgMCkpCiAgICAgICAgIHNlbGYuc2VydmVyLnN0YXJ0KCkKLSAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQX1RMUyh0aW1lb3V0PTEwKQorICAgICAgICBzZWxmLmNsaWVudCA9IGZ0cGxpYi5GVFBfVExTKHRpbWVvdXQ9MikKICAgICAgICAgc2VsZi5jbGllbnQuY29ubmVjdChzZWxmLnNlcnZlci5ob3N0LCBzZWxmLnNlcnZlci5wb3J0KQogCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgpAQCAtNzQ5LDcgKzg3MSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ0cGxpYi5GVFBfVExTLCBjZXJ0ZmlsZT1DRVJURklMRSwKICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5ZmlsZT1DRVJURklMRSwgY29udGV4dD1jdHgpCiAKLSAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQX1RMUyhjb250ZXh0PWN0eCwgdGltZW91dD0xMCkKKyAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQX1RMUyhjb250ZXh0PWN0eCwgdGltZW91dD0yKQogICAgICAgICBzZWxmLmNsaWVudC5jb25uZWN0KHNlbGYuc2VydmVyLmhvc3QsIHNlbGYuc2VydmVyLnBvcnQpCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SXNJbnN0YW5jZShzZWxmLmNsaWVudC5zb2NrLCBzc2wuU1NMU29ja2V0KQogICAgICAgICBzZWxmLmNsaWVudC5hdXRoKCkKQEAgLTc2MSw2ICs4ODMsMTMgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoc29jay5jb250ZXh0LCBjdHgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc29jaywgc3NsLlNTTFNvY2tldCkKIAorICAgIGRlZiB0ZXN0X2NjYyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2VsZi5jbGllbnQuY2NjKQorICAgICAgICBzZWxmLmNsaWVudC5sb2dpbihzZWN1cmU9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHNlbGYuY2xpZW50LnNvY2ssIHNzbC5TU0xTb2NrZXQpCisgICAgICAgIHNlbGYuY2xpZW50LmNjYygpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGYuY2xpZW50LnNvY2sudW53cmFwKQorCiAKIGNsYXNzIFRlc3RUaW1lb3V0cyhUZXN0Q2FzZSk6CiAKQEAgLTg1NywxMyArOTg2LDggQEAKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHRlc3RzID0gW1Rlc3RGVFBDbGFzcywgVGVzdFRpbWVvdXRzXQotICAgIGlmIHNvY2tldC5oYXNfaXB2NjoKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgRHVtbXlGVFBTZXJ2ZXIoKEhPU1QsIDApLCBhZj1zb2NrZXQuQUZfSU5FVDYpCi0gICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6Ci0gICAgICAgICAgICBwYXNzCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICB0ZXN0cy5hcHBlbmQoVGVzdElQdjZFbnZpcm9ubWVudCkKKyAgICBpZiBzdXBwb3J0LklQVjZfRU5BQkxFRDoKKyAgICAgICAgdGVzdHMuYXBwZW5kKFRlc3RJUHY2RW52aXJvbm1lbnQpCiAKICAgICBpZiBzc2wgaXMgbm90IE5vbmU6CiAgICAgICAgIHRlc3RzLmV4dGVuZChbVGVzdFRMU19GVFBDbGFzc01peGluLCBUZXN0VExTX0ZUUENsYXNzXSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZnVuY2F0dHJzLnB5IGIvTGliL3Rlc3QvdGVzdF9mdW5jYXR0cnMucHkKaW5kZXggNGQxOTM2OC4uYzhlZDgzMCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9mdW5jYXR0cnMucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9mdW5jYXR0cnMucHkKQEAgLTIsNiArMiwxNSBAQAogaW1wb3J0IHR5cGVzCiBpbXBvcnQgdW5pdHRlc3QKIAorCitkZWYgZ2xvYmFsX2Z1bmN0aW9uKCk6CisgICAgZGVmIGlubmVyX2Z1bmN0aW9uKCk6CisgICAgICAgIGNsYXNzIExvY2FsQ2xhc3M6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIHJldHVybiBMb2NhbENsYXNzCisgICAgcmV0dXJuIGxhbWJkYTogaW5uZXJfZnVuY3Rpb24KKworCiBjbGFzcyBGdW5jQXR0cnNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgc2V0VXAoc2VsZik6CiAgICAgICAgIGNsYXNzIEY6CkBAIC05Niw2ICsxMDUsMjQgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmZpLmEuX19uYW1lX18sICdhJykKICAgICAgICAgc2VsZi5jYW5ub3Rfc2V0X2F0dHIoc2VsZi5maS5hLCAiX19uYW1lX18iLCAnYScsIEF0dHJpYnV0ZUVycm9yKQogCisgICAgZGVmIHRlc3RfX19xdWFsbmFtZV9fKHNlbGYpOgorICAgICAgICAjIFBFUCAzMTU1CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5iLl9fcXVhbG5hbWVfXywgJ0Z1bmNBdHRyc1Rlc3Quc2V0VXAuPGxvY2Fscz4uYicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRnVuY0F0dHJzVGVzdC5zZXRVcC5fX3F1YWxuYW1lX18sICdGdW5jQXR0cnNUZXN0LnNldFVwJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnbG9iYWxfZnVuY3Rpb24uX19xdWFsbmFtZV9fLCAnZ2xvYmFsX2Z1bmN0aW9uJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnbG9iYWxfZnVuY3Rpb24oKS5fX3F1YWxuYW1lX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgJ2dsb2JhbF9mdW5jdGlvbi48bG9jYWxzPi48bGFtYmRhPicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2xvYmFsX2Z1bmN0aW9uKCkoKS5fX3F1YWxuYW1lX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgJ2dsb2JhbF9mdW5jdGlvbi48bG9jYWxzPi5pbm5lcl9mdW5jdGlvbicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2xvYmFsX2Z1bmN0aW9uKCkoKSgpLl9fcXVhbG5hbWVfXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAnZ2xvYmFsX2Z1bmN0aW9uLjxsb2NhbHM+LmlubmVyX2Z1bmN0aW9uLjxsb2NhbHM+LkxvY2FsQ2xhc3MnKQorICAgICAgICBzZWxmLmIuX19xdWFsbmFtZV9fID0gJ2MnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5iLl9fcXVhbG5hbWVfXywgJ2MnKQorICAgICAgICBzZWxmLmIuX19xdWFsbmFtZV9fID0gJ2QnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5iLl9fcXVhbG5hbWVfXywgJ2QnKQorICAgICAgICAjIF9fcXVhbG5hbWVfXyBtdXN0IGJlIGEgc3RyaW5nCisgICAgICAgIHNlbGYuY2Fubm90X3NldF9hdHRyKHNlbGYuYiwgJ19fcXVhbG5hbWVfXycsIDcsIFR5cGVFcnJvcikKKwogICAgIGRlZiB0ZXN0X19fY29kZV9fKHNlbGYpOgogICAgICAgICBudW1fb25lLCBudW1fdHdvID0gNywgOAogICAgICAgICBkZWYgYSgpOiBwYXNzCkBAIC0zMTUsMTEgKzM0MiwzNyBAQAogICAgICAgICBzZWxmLmFzc2VydFRydWUocy5fX2Z1bmNfXyBpcyBmKQogCiAKK2NsYXNzIEJ1aWx0aW5GdW5jdGlvblByb3BlcnRpZXNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAjIFhYWCBOb3Qgc3VyZSB3aGVyZSB0aGlzIHNob3VsZCByZWFsbHkgZ28gc2luY2UgSSBjYW4ndCBmaW5kIGEKKyAgICAjIHRlc3QgbW9kdWxlIHNwZWNpZmljYWxseSBmb3IgYnVpbHRpbl9mdW5jdGlvbl9vcl9tZXRob2QuCisKKyAgICBkZWYgdGVzdF9idWlsdGluX19xdWFsbmFtZV9fKHNlbGYpOgorICAgICAgICBpbXBvcnQgdGltZQorCisgICAgICAgICMgYnVpbHRpbiBmdW5jdGlvbjoKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4uX19xdWFsbmFtZV9fLCAnbGVuJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0aW1lLnRpbWUuX19xdWFsbmFtZV9fLCAndGltZScpCisKKyAgICAgICAgIyBidWlsdGluIGNsYXNzbWV0aG9kOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpY3QuZnJvbWtleXMuX19xdWFsbmFtZV9fLCAnZGljdC5mcm9ta2V5cycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmxvYXQuX19nZXRmb3JtYXRfXy5fX3F1YWxuYW1lX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgJ2Zsb2F0Ll9fZ2V0Zm9ybWF0X18nKQorCisgICAgICAgICMgYnVpbHRpbiBzdGF0aWNtZXRob2Q6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyLm1ha2V0cmFucy5fX3F1YWxuYW1lX18sICdzdHIubWFrZXRyYW5zJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChieXRlcy5tYWtldHJhbnMuX19xdWFsbmFtZV9fLCAnYnl0ZXMubWFrZXRyYW5zJykKKworICAgICAgICAjIGJ1aWx0aW4gYm91bmQgaW5zdGFuY2UgbWV0aG9kOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsxLCAyLCAzXS5hcHBlbmQuX19xdWFsbmFtZV9fLCAnbGlzdC5hcHBlbmQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHsnZm9vJzogJ2Jhcid9LnBvcC5fX3F1YWxuYW1lX18sICdkaWN0LnBvcCcpCisKKwogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KEZ1bmN0aW9uUHJvcGVydGllc1Rlc3QsIEluc3RhbmNlbWV0aG9kQXR0clRlc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcmJpdHJhcnlGdW5jdGlvbkF0dHJUZXN0LCBGdW5jdGlvbkRpY3RzVGVzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZ1bmN0aW9uRG9jc3RyaW5nVGVzdCwgQ2VsbFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGF0aWNNZXRob2RBdHRyc1Rlc3QpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGF0aWNNZXRob2RBdHRyc1Rlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdWlsdGluRnVuY3Rpb25Qcm9wZXJ0aWVzVGVzdCkKIAogaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9mdW5jdG9vbHMucHkgYi9MaWIvdGVzdC90ZXN0X2Z1bmN0b29scy5weQppbmRleCAyNzBjYWIwLi5jNDkxMGE3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Z1bmN0b29scy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Z1bmN0b29scy5weQpAQCAtMjI2LDYgKzIyNiw3IEBACiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmKQogICAgICAgICBzZWxmLmFzc2VydElzKHdyYXBwZXIuX193cmFwcGVkX18sIGYpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX25hbWVfXywgJ2YnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuX19xdWFsbmFtZV9fLCBmLl9fcXVhbG5hbWVfXykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLmF0dHIsICdUaGlzIGlzIGFsc28gYSB0ZXN0JykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLl9fYW5ub3RhdGlvbnNfX1snYSddLCAnVGhpcyBpcyBhIG5ldyBhbm5vdGF0aW9uJykKICAgICAgICAgc2VsZi5hc3NlcnROb3RJbignYicsIHdyYXBwZXIuX19hbm5vdGF0aW9uc19fKQpAQCAtMjQ2LDYgKzI0Nyw3IEBACiAgICAgICAgIGZ1bmN0b29scy51cGRhdGVfd3JhcHBlcih3cmFwcGVyLCBmLCAoKSwgKCkpCiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmLCAoKSwgKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX25hbWVfXywgJ3dyYXBwZXInKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHdyYXBwZXIuX19xdWFsbmFtZV9fLCBmLl9fcXVhbG5hbWVfXykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLl9fZG9jX18sIE5vbmUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX2Fubm90YXRpb25zX18sIHt9KQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIod3JhcHBlciwgJ2F0dHInKSkKQEAgLTI2Myw2ICsyNjUsNyBAQAogICAgICAgICBmdW5jdG9vbHMudXBkYXRlX3dyYXBwZXIod3JhcHBlciwgZiwgYXNzaWduLCB1cGRhdGUpCiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmLCBhc3NpZ24sIHVwZGF0ZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLl9fbmFtZV9fLCAnd3JhcHBlcicpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwod3JhcHBlci5fX3F1YWxuYW1lX18sIGYuX19xdWFsbmFtZV9fKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuX19kb2NfXywgTm9uZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLmF0dHIsICdUaGlzIGlzIGEgZGlmZmVyZW50IHRlc3QnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuZGljdF9hdHRyLCBmLmRpY3RfYXR0cikKQEAgLTMwOSwxNyArMzEyLDE4IEBACiAgICAgICAgIGRlZiB3cmFwcGVyKCk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmKQotICAgICAgICByZXR1cm4gd3JhcHBlcgorICAgICAgICByZXR1cm4gd3JhcHBlciwgZgogCiAgICAgZGVmIHRlc3RfZGVmYXVsdF91cGRhdGUoc2VsZik6Ci0gICAgICAgIHdyYXBwZXIgPSBzZWxmLl9kZWZhdWx0X3VwZGF0ZSgpCisgICAgICAgIHdyYXBwZXIsIGYgPSBzZWxmLl9kZWZhdWx0X3VwZGF0ZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX25hbWVfXywgJ2YnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuX19xdWFsbmFtZV9fLCBmLl9fcXVhbG5hbWVfXykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLmF0dHIsICdUaGlzIGlzIGFsc28gYSB0ZXN0JykKIAogICAgIEB1bml0dGVzdC5za2lwSWYobm90IHN5cy5mbGFncy5vcHRpbWl6ZSA8PSAxLAogICAgICAgICAgICAgICAgICAgICAgIkRvY3N0cmluZ3MgYXJlIG9taXR0ZWQgd2l0aCAtTzIgYW5kIGFib3ZlIikKICAgICBkZWYgdGVzdF9kZWZhdWx0X3VwZGF0ZV9kb2Moc2VsZik6Ci0gICAgICAgIHdyYXBwZXIgPSBzZWxmLl9kZWZhdWx0X3VwZGF0ZSgpCisgICAgICAgIHdyYXBwZXIsIF8gPSBzZWxmLl9kZWZhdWx0X3VwZGF0ZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX2RvY19fLCAnVGhpcyBpcyBhIHRlc3QnKQogCiAgICAgZGVmIHRlc3Rfbm9fdXBkYXRlKHNlbGYpOgpAQCAtMzMyLDYgKzMzNiw3IEBACiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmLCAoKSwgKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX25hbWVfXywgJ3dyYXBwZXInKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHdyYXBwZXIuX19xdWFsbmFtZV9fLCBmLl9fcXVhbG5hbWVfXykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLl9fZG9jX18sIE5vbmUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaGFzYXR0cih3cmFwcGVyLCAnYXR0cicpKQogCkBAIC0zNTEsNiArMzU2LDcgQEAKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5jaGVja193cmFwcGVyKHdyYXBwZXIsIGYsIGFzc2lnbiwgdXBkYXRlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuX19uYW1lX18sICd3cmFwcGVyJykKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh3cmFwcGVyLl9fcXVhbG5hbWVfXywgZi5fX3F1YWxuYW1lX18pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX2RvY19fLCBOb25lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuYXR0ciwgJ1RoaXMgaXMgYSBkaWZmZXJlbnQgdGVzdCcpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5kaWN0X2F0dHIsIGYuZGljdF9hdHRyKQpAQCAtNDM2LDE5ICs0NDIsODIgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmZ1bmMoYWRkLCBkKSwgIiIuam9pbihkLmtleXMoKSkpCiAKIGNsYXNzIFRlc3RDbXBUb0tleSh1bml0dGVzdC5UZXN0Q2FzZSk6CisKICAgICBkZWYgdGVzdF9jbXBfdG9fa2V5KHNlbGYpOgorICAgICAgICBkZWYgY21wMSh4LCB5KToKKyAgICAgICAgICAgIHJldHVybiAoeCA+IHkpIC0gKHggPCB5KQorICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleShjbXAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleSgzKSwga2V5KDMpKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIoa2V5KDMpLCBrZXkoMSkpCisgICAgICAgIGRlZiBjbXAyKHgsIHkpOgorICAgICAgICAgICAgcmV0dXJuIGludCh4KSAtIGludCh5KQorICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleShjbXAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleSg0LjApLCBrZXkoJzQnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzKGtleSgyKSwga2V5KCczNScpKQorCisgICAgZGVmIHRlc3RfY21wX3RvX2tleV9hcmd1bWVudHMoc2VsZik6CisgICAgICAgIGRlZiBjbXAxKHgsIHkpOgorICAgICAgICAgICAgcmV0dXJuICh4ID4geSkgLSAoeCA8IHkpCisgICAgICAgIGtleSA9IGZ1bmN0b29scy5jbXBfdG9fa2V5KG15Y21wPWNtcDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoa2V5KG9iaj0zKSwga2V5KG9iaj0zKSkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGtleShvYmo9MyksIGtleShvYmo9MSkpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoKFR5cGVFcnJvciwgQXR0cmlidXRlRXJyb3IpKToKKyAgICAgICAgICAgIGtleSgzKSA+IDEgICAgIyByaHMgaXMgbm90IGEgSyBvYmplY3QKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcygoVHlwZUVycm9yLCBBdHRyaWJ1dGVFcnJvcikpOgorICAgICAgICAgICAgMSA8IGtleSgzKSAgICAjIGxocyBpcyBub3QgYSBLIG9iamVjdAorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleSgpICAgICAgICAgICAgICMgdG9vIGZldyBhcmdzCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIGtleSA9IGZ1bmN0b29scy5jbXBfdG9fa2V5KGNtcDEsIE5vbmUpICAgIyB0b28gbWFueSBhcmdzCisgICAgICAgIGtleSA9IGZ1bmN0b29scy5jbXBfdG9fa2V5KGNtcDEpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIGtleSgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyB0b28gZmV3IGFyZ3MKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAga2V5KE5vbmUsIE5vbmUpICAgICAgICAgICAgICAgICAgICAgICAgICAjIHRvbyBtYW55IGFyZ3MKKworICAgIGRlZiB0ZXN0X2JhZF9jbXAoc2VsZik6CisgICAgICAgIGRlZiBjbXAxKHgsIHkpOgorICAgICAgICAgICAgcmFpc2UgWmVyb0RpdmlzaW9uRXJyb3IKKyAgICAgICAga2V5ID0gZnVuY3Rvb2xzLmNtcF90b19rZXkoY21wMSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhaZXJvRGl2aXNpb25FcnJvcik6CisgICAgICAgICAgICBrZXkoMykgPiBrZXkoMSkKKworICAgICAgICBjbGFzcyBCYWRDbXA6CisgICAgICAgICAgICBkZWYgX19sdF9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgICAgICAgICByYWlzZSBaZXJvRGl2aXNpb25FcnJvcgorICAgICAgICBkZWYgY21wMSh4LCB5KToKKyAgICAgICAgICAgIHJldHVybiBCYWRDbXAoKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFplcm9EaXZpc2lvbkVycm9yKToKKyAgICAgICAgICAgIGtleSgzKSA+IGtleSgxKQorCisgICAgZGVmIHRlc3Rfb2JqX2ZpZWxkKHNlbGYpOgorICAgICAgICBkZWYgY21wMSh4LCB5KToKKyAgICAgICAgICAgIHJldHVybiAoeCA+IHkpIC0gKHggPCB5KQorICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleShteWNtcD1jbXAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleSg1MCkub2JqLCA1MCkKKworICAgIGRlZiB0ZXN0X3NvcnRfaW50KHNlbGYpOgogICAgICAgICBkZWYgbXljbXAoeCwgeSk6CiAgICAgICAgICAgICByZXR1cm4geSAtIHgKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQocmFuZ2UoNSksIGtleT1mdW5jdG9vbHMuY21wX3RvX2tleShteWNtcCkpLAogICAgICAgICAgICAgICAgICAgICAgICAgIFs0LCAzLCAyLCAxLCAwXSkKIAorICAgIGRlZiB0ZXN0X3NvcnRfaW50X3N0cihzZWxmKToKKyAgICAgICAgZGVmIG15Y21wKHgsIHkpOgorICAgICAgICAgICAgeCwgeSA9IGludCh4KSwgaW50KHkpCisgICAgICAgICAgICByZXR1cm4gKHggPiB5KSAtICh4IDwgeSkKKyAgICAgICAgdmFsdWVzID0gWzUsICczJywgNywgMiwgJzAnLCAnMScsIDQsICcxMCcsIDFdCisgICAgICAgIHZhbHVlcyA9IHNvcnRlZCh2YWx1ZXMsIGtleT1mdW5jdG9vbHMuY21wX3RvX2tleShteWNtcCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW2ludCh2YWx1ZSkgZm9yIHZhbHVlIGluIHZhbHVlc10sCisgICAgICAgICAgICAgICAgICAgICAgICAgWzAsIDEsIDEsIDIsIDMsIDQsIDUsIDcsIDEwXSkKKwogICAgIGRlZiB0ZXN0X2hhc2goc2VsZik6CiAgICAgICAgIGRlZiBteWNtcCh4LCB5KToKICAgICAgICAgICAgIHJldHVybiB5IC0geAogICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleShteWNtcCkKICAgICAgICAgayA9IGtleSgxMCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBoYXNoLCBrKQotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzaW5zdGFuY2UoaywgY29sbGVjdGlvbnMuSGFzaGFibGUpKQorICAgICAgICBzZWxmLmFzc2VydE5vdElzSW5zdGFuY2UoaywgY29sbGVjdGlvbnMuSGFzaGFibGUpCiAKIGNsYXNzIFRlc3RUb3RhbE9yZGVyaW5nKHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtNjcxLDYgKzc0MCwyMiBAQAogICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yKToKICAgICAgICAgICAgICAgICBmdW5jKDE1KQogCisgICAgZGVmIHRlc3RfbHJ1X3dpdGhfdHlwZXMoc2VsZik6CisgICAgICAgIGZvciBtYXhzaXplIGluIChOb25lLCAxMDApOgorICAgICAgICAgICAgQGZ1bmN0b29scy5scnVfY2FjaGUobWF4c2l6ZT1tYXhzaXplLCB0eXBlZD1UcnVlKQorICAgICAgICAgICAgZGVmIHNxdWFyZSh4KToKKyAgICAgICAgICAgICAgICByZXR1cm4geCAqIHgKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3F1YXJlKDMpLCA5KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0eXBlKHNxdWFyZSgzKSksIHR5cGUoOSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNxdWFyZSgzLjApLCA5LjApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHR5cGUoc3F1YXJlKDMuMCkpLCB0eXBlKDkuMCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNxdWFyZSh4PTMpLCA5KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0eXBlKHNxdWFyZSh4PTMpKSwgdHlwZSg5KSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3F1YXJlKHg9My4wKSwgOS4wKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0eXBlKHNxdWFyZSh4PTMuMCkpLCB0eXBlKDkuMCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNxdWFyZS5jYWNoZV9pbmZvKCkuaGl0cywgNCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3F1YXJlLmNhY2hlX2luZm8oKS5taXNzZXMsIDQpCisKIGRlZiB0ZXN0X21haW4odmVyYm9zZT1Ob25lKToKICAgICB0ZXN0X2NsYXNzZXMgPSAoCiAgICAgICAgIFRlc3RQYXJ0aWFsLApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9mdXR1cmUucHkgYi9MaWIvdGVzdC90ZXN0X2Z1dHVyZS5weQppbmRleCBjNjY4OWExLi4zYTI1ZWIxIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Z1dHVyZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Z1dHVyZS5weQpAQCAtMTMsMTQgKzEzLDE0IEBACiBjbGFzcyBGdXR1cmVUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiB0ZXN0X2Z1dHVyZTEoc2VsZik6Ci0gICAgICAgIHN1cHBvcnQudW5sb2FkKCd0ZXN0X2Z1dHVyZTEnKQotICAgICAgICBmcm9tIHRlc3QgaW1wb3J0IHRlc3RfZnV0dXJlMQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRlc3RfZnV0dXJlMS5yZXN1bHQsIDYpCisgICAgICAgIHN1cHBvcnQudW5sb2FkKCdmdXR1cmVfdGVzdDEnKQorICAgICAgICBmcm9tIHRlc3QgaW1wb3J0IGZ1dHVyZV90ZXN0MQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZ1dHVyZV90ZXN0MS5yZXN1bHQsIDYpCiAKICAgICBkZWYgdGVzdF9mdXR1cmUyKHNlbGYpOgotICAgICAgICBzdXBwb3J0LnVubG9hZCgndGVzdF9mdXR1cmUyJykKLSAgICAgICAgZnJvbSB0ZXN0IGltcG9ydCB0ZXN0X2Z1dHVyZTIKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXN0X2Z1dHVyZTIucmVzdWx0LCA2KQorICAgICAgICBzdXBwb3J0LnVubG9hZCgnZnV0dXJlX3Rlc3QyJykKKyAgICAgICAgZnJvbSB0ZXN0IGltcG9ydCBmdXR1cmVfdGVzdDIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdXR1cmVfdGVzdDIucmVzdWx0LCA2KQogCiAgICAgZGVmIHRlc3RfZnV0dXJlMyhzZWxmKToKICAgICAgICAgc3VwcG9ydC51bmxvYWQoJ3Rlc3RfZnV0dXJlMycpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2djLnB5IGIvTGliL3Rlc3QvdGVzdF9nYy5weQppbmRleCAxMDBjNzY3Li4xOTMxM2RiIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2djLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ2MucHkKQEAgLTEsNSArMSw2IEBACiBpbXBvcnQgdW5pdHRlc3QKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCB2ZXJib3NlLCBydW5fdW5pdHRlc3QsIHN0cmlwX3B5dGhvbl9zdGRlcnIKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCAodmVyYm9zZSwgcmVmY291bnRfdGVzdCwgcnVuX3VuaXR0ZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwX3B5dGhvbl9zdGRlcnIpCiBpbXBvcnQgc3lzCiBpbXBvcnQgZ2MKIGltcG9ydCB3ZWFrcmVmCkBAIC0xNzUsNiArMTc2LDcgQEAKICAgICAgICAgZGVsIGQKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnYy5jb2xsZWN0KCksIDIpCiAKKyAgICBAcmVmY291bnRfdGVzdAogICAgIGRlZiB0ZXN0X2ZyYW1lKHNlbGYpOgogICAgICAgICBkZWYgZigpOgogICAgICAgICAgICAgZnJhbWUgPSBzeXMuX2dldGZyYW1lKCkKQEAgLTI0Miw2ICsyNDQsNyBAQAogICAgICMgRm9yIGV4YW1wbGUsIGRpc3Bvc2VkIHR1cGxlcyBhcmUgbm90IGZyZWVkLCBidXQgcmV1c2VkLgogICAgICMgVG8gbWluaW1pemUgdmFyaWF0aW9ucywgdGhvdWdoLCB3ZSBmaXJzdCBzdG9yZSB0aGUgZ2V0X2NvdW50KCkgcmVzdWx0cwogICAgICMgYW5kIGNoZWNrIHRoZW0gYXQgdGhlIGVuZC4KKyAgICBAcmVmY291bnRfdGVzdAogICAgIGRlZiB0ZXN0X2dldF9jb3VudChzZWxmKToKICAgICAgICAgZ2MuY29sbGVjdCgpCiAgICAgICAgIGEsIGIsIGMgPSBnYy5nZXRfY291bnQoKQpAQCAtMjU1LDYgKzI1OCw3IEBACiAgICAgICAgICMgY3JlYXRlZCAodGhlIGxpc3QpLgogICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIoZCwgYSkKIAorICAgIEByZWZjb3VudF90ZXN0CiAgICAgZGVmIHRlc3RfY29sbGVjdF9nZW5lcmF0aW9ucyhzZWxmKToKICAgICAgICAgZ2MuY29sbGVjdCgpCiAgICAgICAgICMgVGhpcyBvYmplY3Qgd2lsbCAidHJpY2tsZSIgaW50byBnZW5lcmF0aW9uIE4gKyAxIGFmdGVyCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2dkYi5weSBiL0xpYi90ZXN0L3Rlc3RfZ2RiLnB5CmluZGV4IGFlYTdjMGMuLmM0YzQ4MDMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZ2RiLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ2RiLnB5CkBAIC0zMjEsNyArMzIxLDcgQEAKIGZvbyA9IEZvbygpCiBmb28uYW5faW50ID0gNDIKIGlkKGZvbyknJycpCi0gICAgICAgIG0gPSByZS5tYXRjaChyJzxGb29cKGFuX2ludD00MlwpIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLCBnZGJfcmVwcikKKyAgICAgICAgbSA9IHJlLm1hdGNoKHInPEZvb1woYW5faW50PTQyXCkgYXQgcmVtb3RlIDB4LT9bMC05YS1mXSs+JywgZ2RiX3JlcHIpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtLAogICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSdVbmV4cGVjdGVkIG5ldy1zdHlsZSBjbGFzcyByZW5kZXJpbmcgJXInICUgZ2RiX3JlcHIpCiAKQEAgLTMzNCw3ICszMzQsNyBAQAogZm9vICs9IFsxLCAyLCAzXQogZm9vLmFuX2ludCA9IDQyCiBpZChmb28pJycnKQotICAgICAgICBtID0gcmUubWF0Y2gocic8Rm9vXChhbl9pbnQ9NDJcKSBhdCByZW1vdGUgMHhbMC05YS1mXSs+JywgZ2RiX3JlcHIpCisgICAgICAgIG0gPSByZS5tYXRjaChyJzxGb29cKGFuX2ludD00MlwpIGF0IHJlbW90ZSAweC0/WzAtOWEtZl0rPicsIGdkYl9yZXByKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtLAogICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSdVbmV4cGVjdGVkIG5ldy1zdHlsZSBjbGFzcyByZW5kZXJpbmcgJXInICUgZ2RiX3JlcHIpCkBAIC0zNDksNyArMzQ5LDcgQEAKIGZvbyA9IEZvbygoMSwgMiwgMykpCiBmb28uYW5faW50ID0gNDIKIGlkKGZvbyknJycpCi0gICAgICAgIG0gPSByZS5tYXRjaChyJzxGb29cKGFuX2ludD00MlwpIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLCBnZGJfcmVwcikKKyAgICAgICAgbSA9IHJlLm1hdGNoKHInPEZvb1woYW5faW50PTQyXCkgYXQgcmVtb3RlIDB4LT9bMC05YS1mXSs+JywgZ2RiX3JlcHIpCiAKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG0sCiAgICAgICAgICAgICAgICAgICAgICAgICBtc2c9J1VuZXhwZWN0ZWQgbmV3LXN0eWxlIGNsYXNzIHJlbmRlcmluZyAlcicgJSBnZGJfcmVwcikKQEAgLTM3Niw3ICszNzYsNyBAQAogCiAgICAgICAgICMgTWF0Y2ggYW55dGhpbmcgZm9yIHRoZSB0eXBlIG5hbWU7IDB4REVBREJFRUYgY291bGQgcG9pbnQgdG8KICAgICAgICAgIyBzb21ldGhpbmcgYXJiaXRyYXJ5IChzZWUgIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWU4MzMwKQotICAgICAgICBwYXR0ZXJuID0gJzwuKiBhdCByZW1vdGUgMHhbMC05YS1mXSs+JworICAgICAgICBwYXR0ZXJuID0gJzwuKiBhdCByZW1vdGUgMHgtP1swLTlhLWZdKz4nCiAKICAgICAgICAgbSA9IHJlLm1hdGNoKHBhdHRlcm4sIGdkYl9yZXByKQogICAgICAgICBpZiBub3QgbToKQEAgLTQyMiw3ICs0MjIsNyBAQAogICAgICAgICAjICBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlODAzMiNtc2cxMDA1MzcgKQogICAgICAgICBnZGJfcmVwciwgZ2RiX291dHB1dCA9IHNlbGYuZ2V0X2dkYl9yZXByKCdpZChfX2J1aWx0aW5zX18uaGVscCknLCBpbXBvcnRfc2l0ZT1UcnVlKQogCi0gICAgICAgIG0gPSByZS5tYXRjaChyJzxfSGVscGVyIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLCBnZGJfcmVwcikKKyAgICAgICAgbSA9IHJlLm1hdGNoKHInPF9IZWxwZXIgYXQgcmVtb3RlIDB4LT9bMC05YS1mXSs+JywgZ2RiX3JlcHIpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtLAogICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSdVbmV4cGVjdGVkIHJlbmRlcmluZyAlcicgJSBnZGJfcmVwcikKIApAQCAtNDUzLDcgKzQ1Myw3IEBACiBmb28gPSBGb28oKQogZm9vLmFuX2F0dHIgPSBmb28KIGlkKGZvbyknJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnPEZvb1woYW5fYXR0cj08XC5cLlwuPlwpIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLAorICAgICAgICBzZWxmLmFzc2VydFRydWUocmUubWF0Y2goJzxGb29cKGFuX2F0dHI9PFwuXC5cLj5cKSBhdCByZW1vdGUgMHgtP1swLTlhLWZdKz4nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2RiX3JlcHIpLAogICAgICAgICAgICAgICAgICAgICAgICAgJ1VuZXhwZWN0ZWQgZ2RiIHJlcHJlc2VudGF0aW9uOiAlclxuJXMnICUgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIChnZGJfcmVwciwgZ2RiX291dHB1dCkpCkBAIC00NjYsNyArNDY2LDcgQEAKIGZvbyA9IEZvbygpCiBmb28uYW5fYXR0ciA9IGZvbwogaWQoZm9vKScnJykKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlLm1hdGNoKCc8Rm9vXChhbl9hdHRyPTxcLlwuXC4+XCkgYXQgcmVtb3RlIDB4WzAtOWEtZl0rPicsCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnPEZvb1woYW5fYXR0cj08XC5cLlwuPlwpIGF0IHJlbW90ZSAweC0/WzAtOWEtZl0rPicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZGJfcmVwciksCiAgICAgICAgICAgICAgICAgICAgICAgICAnVW5leHBlY3RlZCBnZGIgcmVwcmVzZW50YXRpb246ICVyXG4lcycgJSBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGdkYl9yZXByLCBnZGJfb3V0cHV0KSkKQEAgLTQ4MCw3ICs0ODAsNyBAQAogYS5hbl9hdHRyID0gYgogYi5hbl9hdHRyID0gYQogaWQoYSknJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnPEZvb1woYW5fYXR0cj08Rm9vXChhbl9hdHRyPTxcLlwuXC4+XCkgYXQgcmVtb3RlIDB4WzAtOWEtZl0rPlwpIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLAorICAgICAgICBzZWxmLmFzc2VydFRydWUocmUubWF0Y2goJzxGb29cKGFuX2F0dHI9PEZvb1woYW5fYXR0cj08XC5cLlwuPlwpIGF0IHJlbW90ZSAweC0/WzAtOWEtZl0rPlwpIGF0IHJlbW90ZSAweC0/WzAtOWEtZl0rPicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZGJfcmVwciksCiAgICAgICAgICAgICAgICAgICAgICAgICAnVW5leHBlY3RlZCBnZGIgcmVwcmVzZW50YXRpb246ICVyXG4lcycgJSBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGdkYl9yZXByLCBnZGJfb3V0cHV0KSkKQEAgLTUxNSw3ICs1MTUsNyBAQAogCiAgICAgZGVmIHRlc3RfYnVpbHRpbl9tZXRob2Qoc2VsZik6CiAgICAgICAgIGdkYl9yZXByLCBnZGJfb3V0cHV0ID0gc2VsZi5nZXRfZ2RiX3JlcHIoJ2ltcG9ydCBzeXM7IGlkKHN5cy5zdGRvdXQucmVhZGxpbmVzKScpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnPGJ1aWx0LWluIG1ldGhvZCByZWFkbGluZXMgb2YgX2lvLlRleHRJT1dyYXBwZXIgb2JqZWN0IGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLAorICAgICAgICBzZWxmLmFzc2VydFRydWUocmUubWF0Y2goJzxidWlsdC1pbiBtZXRob2QgcmVhZGxpbmVzIG9mIF9pby5UZXh0SU9XcmFwcGVyIG9iamVjdCBhdCByZW1vdGUgMHgtP1swLTlhLWZdKz4nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2RiX3JlcHIpLAogICAgICAgICAgICAgICAgICAgICAgICAgJ1VuZXhwZWN0ZWQgZ2RiIHJlcHJlc2VudGF0aW9uOiAlclxuJXMnICUgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIChnZGJfcmVwciwgZ2RiX291dHB1dCkpCkBAIC01MzAsNyArNTMwLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrcG9pbnQ9J2J1aWx0aW5faWQnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY21kc19hZnRlcl9icmVha3BvaW50PVsncHJpbnQgKFB5RnJhbWVPYmplY3QqKSgoKFB5Q29kZU9iamVjdCopdiktPmNvX3pvbWJpZWZyYW1lKSddCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnLipccytcJDEgPVxzK0ZyYW1lIDB4WzAtOWEtZl0rLCBmb3IgZmlsZSA8c3RyaW5nPiwgbGluZSAzLCBpbiBmb28gXChcKVxzKy4qJywKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlLm1hdGNoKCcuKlxzK1wkMSA9XHMrRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgPHN0cmluZz4sIGxpbmUgMywgaW4gZm9vIFwoXClccysuKicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZGJfb3V0cHV0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmUuRE9UQUxMKSwKICAgICAgICAgICAgICAgICAgICAgICAgICdVbmV4cGVjdGVkIGdkYiByZXByZXNlbnRhdGlvbjogJXJcbiVzJyAlIChnZGJfb3V0cHV0LCBnZGJfb3V0cHV0KSkKQEAgLTU4Nyw3ICs1ODcsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNtZHNfYWZ0ZXJfYnJlYWtwb2ludD1bJ3B5LXVwJ10pCiAgICAgICAgIHNlbGYuYXNzZXJ0TXVsdGlsaW5lTWF0Y2hlcyhidCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHInJydeLioKLSNbMC05XSsgRnJhbWUgMHhbMC05YS1mXSssIGZvciBmaWxlIC4qZ2RiX3NhbXBsZS5weSwgbGluZSA3LCBpbiBiYXIgXChhPTEsIGI9MiwgYz0zXCkKKyNbMC05XSsgRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDcsIGluIGJhciBcKGE9MSwgYj0yLCBjPTNcKQogICAgIGJhelwoYSwgYiwgY1wpCiAkJycnKQogCkBAIC02MTYsOSArNjE2LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbWRzX2FmdGVyX2JyZWFrcG9pbnQ9WydweS11cCcsICdweS1kb3duJ10pCiAgICAgICAgIHNlbGYuYXNzZXJ0TXVsdGlsaW5lTWF0Y2hlcyhidCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHInJydeLioKLSNbMC05XSsgRnJhbWUgMHhbMC05YS1mXSssIGZvciBmaWxlIC4qZ2RiX3NhbXBsZS5weSwgbGluZSA3LCBpbiBiYXIgXChhPTEsIGI9MiwgYz0zXCkKKyNbMC05XSsgRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDcsIGluIGJhciBcKGE9MSwgYj0yLCBjPTNcKQogICAgIGJhelwoYSwgYiwgY1wpCi0jWzAtOV0rIEZyYW1lIDB4WzAtOWEtZl0rLCBmb3IgZmlsZSAuKmdkYl9zYW1wbGUucHksIGxpbmUgMTAsIGluIGJheiBcKGFyZ3M9XCgxLCAyLCAzXClcKQorI1swLTldKyBGcmFtZSAweC0/WzAtOWEtZl0rLCBmb3IgZmlsZSAuKmdkYl9zYW1wbGUucHksIGxpbmUgMTAsIGluIGJheiBcKGFyZ3M9XCgxLCAyLCAzXClcKQogICAgIGlkXCg0MlwpCiAkJycnKQogCkBAIC02NTAsMTEgKzY1MCwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNtZHNfYWZ0ZXJfYnJlYWtwb2ludD1bJ3B5LWJ0LWZ1bGwnXSkKICAgICAgICAgc2VsZi5hc3NlcnRNdWx0aWxpbmVNYXRjaGVzKGJ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcicnJ14uKgotI1swLTldKyBGcmFtZSAweFswLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDcsIGluIGJhciBcKGE9MSwgYj0yLCBjPTNcKQorI1swLTldKyBGcmFtZSAweC0/WzAtOWEtZl0rLCBmb3IgZmlsZSAuKmdkYl9zYW1wbGUucHksIGxpbmUgNywgaW4gYmFyIFwoYT0xLCBiPTIsIGM9M1wpCiAgICAgYmF6XChhLCBiLCBjXCkKLSNbMC05XSsgRnJhbWUgMHhbMC05YS1mXSssIGZvciBmaWxlIC4qZ2RiX3NhbXBsZS5weSwgbGluZSA0LCBpbiBmb28gXChhPTEsIGI9MiwgYz0zXCkKKyNbMC05XSsgRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDQsIGluIGZvbyBcKGE9MSwgYj0yLCBjPTNcKQogICAgIGJhclwoYSwgYiwgY1wpCi0jWzAtOV0rIEZyYW1lIDB4WzAtOWEtZl0rLCBmb3IgZmlsZSAuKmdkYl9zYW1wbGUucHksIGxpbmUgMTIsIGluIDxtb2R1bGU+IFwoXCkKKyNbMC05XSsgRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDEyLCBpbiA8bW9kdWxlPiBcKFwpCiAgICAgZm9vXCgxLCAyLCAzXCkKICcnJykKIApAQCAtNjkxLDcgKzY5MSw3IEBACiAgICAgICAgIGJ0ID0gc2VsZi5nZXRfc3RhY2tfdHJhY2Uoc2NyaXB0PXNlbGYuZ2V0X3NhbXBsZV9zY3JpcHQoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbWRzX2FmdGVyX2JyZWFrcG9pbnQ9WydweS1wcmludCBsZW4nXSkKICAgICAgICAgc2VsZi5hc3NlcnRNdWx0aWxpbmVNYXRjaGVzKGJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciIuKlxuYnVpbHRpbiAnbGVuJyA9IDxidWlsdC1pbiBtZXRob2QgbGVuIG9mIG1vZHVsZSBvYmplY3QgYXQgcmVtb3RlIDB4WzAtOWEtZl0rPlxuLioiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciIuKlxuYnVpbHRpbiAnbGVuJyA9IDxidWlsdC1pbiBtZXRob2QgbGVuIG9mIG1vZHVsZSBvYmplY3QgYXQgcmVtb3RlIDB4LT9bMC05YS1mXSs+XG4uKiIpCiAKIGNsYXNzIFB5TG9jYWxzVGVzdHMoRGVidWdnZXJUZXN0cyk6CiAgICAgQHVuaXR0ZXN0LnNraXBJZihweXRob25faXNfb3B0aW1pemVkKCksCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2dlbmVyYXRvcnMucHkgYi9MaWIvdGVzdC90ZXN0X2dlbmVyYXRvcnMucHkKaW5kZXggNWY0N2IzZS4uMDZmNjdjMiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9nZW5lcmF0b3JzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ2VuZXJhdG9ycy5weQpAQCAtNzI4LDI5ICs3MjgsNiBAQAogCiBzeW50YXhfdGVzdHMgPSAiIiIKIAotPj4+IGRlZiBmKCk6Ci0uLi4gICAgIHJldHVybiAyMgotLi4uICAgICB5aWVsZCAxCi1UcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6Ci0gIC4uCi1TeW50YXhFcnJvcjogJ3JldHVybicgd2l0aCBhcmd1bWVudCBpbnNpZGUgZ2VuZXJhdG9yCi0KLT4+PiBkZWYgZigpOgotLi4uICAgICB5aWVsZCAxCi0uLi4gICAgIHJldHVybiAyMgotVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgotICAuLgotU3ludGF4RXJyb3I6ICdyZXR1cm4nIHdpdGggYXJndW1lbnQgaW5zaWRlIGdlbmVyYXRvcgotCi0icmV0dXJuIE5vbmUiIGlzIG5vdCB0aGUgc2FtZSBhcyAicmV0dXJuIiBpbiBhIGdlbmVyYXRvcjoKLQotPj4+IGRlZiBmKCk6Ci0uLi4gICAgIHlpZWxkIDEKLS4uLiAgICAgcmV0dXJuIE5vbmUKLVRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgLi4KLVN5bnRheEVycm9yOiAncmV0dXJuJyB3aXRoIGFyZ3VtZW50IGluc2lkZSBnZW5lcmF0b3IKLQogVGhlc2UgYXJlIGZpbmU6CiAKID4+PiBkZWYgZigpOgpAQCAtODY2LDIwICs4NDMsNiBAQAogPj4+IHR5cGUoZigpKQogPGNsYXNzICdnZW5lcmF0b3InPgogCi0KLT4+PiBkZWYgZigpOgotLi4uICAgICBpZiAwOgotLi4uICAgICAgICAgbGFtYmRhIHg6ICB4ICAgICAgICAjIHNob3VsZG4ndCB0cmlnZ2VyIGhlcmUKLS4uLiAgICAgICAgIHJldHVybiAgICAgICAgICAgICAgIyBvciBoZXJlCi0uLi4gICAgICAgICBkZWYgZihpKToKLS4uLiAgICAgICAgICAgICByZXR1cm4gMippICAgICAgIyBvciBoZXJlCi0uLi4gICAgICAgICBpZiAwOgotLi4uICAgICAgICAgICAgIHJldHVybiAzICAgICAgICAjIGJ1dCAqdGhpcyogc3Vja3MgKGxpbmUgOCkKLS4uLiAgICAgaWYgMDoKLS4uLiAgICAgICAgIHlpZWxkIDIgICAgICAgICAgICAgIyBiZWNhdXNlIGl0J3MgYSBnZW5lcmF0b3IgKGxpbmUgMTApCi1UcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6Ci1TeW50YXhFcnJvcjogJ3JldHVybicgd2l0aCBhcmd1bWVudCBpbnNpZGUgZ2VuZXJhdG9yCi0KIFRoaXMgb25lIGNhdXNlZCBhIGNyYXNoIChzZWUgU0YgYnVnIDU2NzUzOCk6CiAKID4+PiBkZWYgZigpOgpAQCAtMTU2NiwxMSArMTUyOSw2IEBACiAgIC4uLgogU3ludGF4RXJyb3I6ICd5aWVsZCcgb3V0c2lkZSBmdW5jdGlvbgogCi0+Pj4gZGVmIGYoKTogcmV0dXJuIGxhbWJkYSB4PSh5aWVsZCk6IDEKLVRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgLi4uCi1TeW50YXhFcnJvcjogJ3JldHVybicgd2l0aCBhcmd1bWVudCBpbnNpZGUgZ2VuZXJhdG9yCi0KID4+PiBkZWYgZigpOiB4ID0geWllbGQgPSB5CiBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgIC4uLgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9nZW5lcmljcGF0aC5weSBiL0xpYi90ZXN0L3Rlc3RfZ2VuZXJpY3BhdGgucHkKaW5kZXggNTA2MzhhMS4uZWJiODM5NiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9nZW5lcmljcGF0aC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2dlbmVyaWNwYXRoLnB5CkBAIC0yLDExICsyLDEyIEBACiBUZXN0cyBjb21tb24gdG8gZ2VuZXJpY3BhdGgsIG1hY3BhdGgsIG50cGF0aCBhbmQgcG9zaXhwYXRoCiAiIiIKIAotaW1wb3J0IHVuaXR0ZXN0Ci1mcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKLWltcG9ydCBvcwogaW1wb3J0IGdlbmVyaWNwYXRoCitpbXBvcnQgb3MKIGltcG9ydCBzeXMKK2ltcG9ydCB1bml0dGVzdAoraW1wb3J0IHdhcm5pbmdzCitmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIAogCiBkZWYgc2FmZV9ybWRpcihkaXJuYW1lKToKQEAgLTI1OCwxNSArMjU5LDIxIEBACiAKICAgICBkZWYgdGVzdF9hYnNwYXRoKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEluKCJmb28iLCBzZWxmLnBhdGhtb2R1bGUuYWJzcGF0aCgiZm9vIikpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oYiJmb28iLCBzZWxmLnBhdGhtb2R1bGUuYWJzcGF0aChiImZvbyIpKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oYiJmb28iLCBzZWxmLnBhdGhtb2R1bGUuYWJzcGF0aChiImZvbyIpKQogCiAgICAgICAgICMgQWJzcGF0aCByZXR1cm5zIGJ5dGVzIHdoZW4gdGhlIGFyZyBpcyBieXRlcwotICAgICAgICBmb3IgcGF0aCBpbiAoYicnLCBiJ2ZvbycsIGInZlx4ZjJceGYyJywgYicvZm9vJywgYidDOlxcJyk6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc2VsZi5wYXRobW9kdWxlLmFic3BhdGgocGF0aCksIGJ5dGVzKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIGZvciBwYXRoIGluIChiJycsIGInZm9vJywgYidmXHhmMlx4ZjInLCBiJy9mb28nLCBiJ0M6XFwnKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc2VsZi5wYXRobW9kdWxlLmFic3BhdGgocGF0aCksIGJ5dGVzKQogCiAgICAgZGVmIHRlc3RfcmVhbHBhdGgoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oImZvbyIsIHNlbGYucGF0aG1vZHVsZS5yZWFscGF0aCgiZm9vIikpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oYiJmb28iLCBzZWxmLnBhdGhtb2R1bGUucmVhbHBhdGgoYiJmb28iKSkKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICBzZWxmLmFzc2VydEluKGIiZm9vIiwgc2VsZi5wYXRobW9kdWxlLnJlYWxwYXRoKGIiZm9vIikpCiAKICAgICBkZWYgdGVzdF9ub3JtcGF0aF9pc3N1ZTU4Mjcoc2VsZik6CiAgICAgICAgICMgTWFrZSBzdXJlIG5vcm1wYXRoIHByZXNlcnZlcyB1bmljb2RlCkBAIC0yOTYsOCArMzAzLDEwIEBACiAgICAgICAgICJNYWMgT1MgWCBkZW5pZXMgdGhlIGNyZWF0aW9uIG9mIGEgZGlyZWN0b3J5IHdpdGggYW4gaW52YWxpZCB1dGY4IG5hbWUiKQogICAgIGRlZiB0ZXN0X25vbmFzY2lpX2Fic3BhdGgoc2VsZik6CiAgICAgICAgICMgVGVzdCBub24tQVNDSUksIG5vbi1VVEY4IGJ5dGVzIGluIHRoZSBwYXRoLgotICAgICAgICB3aXRoIHN1cHBvcnQudGVtcF9jd2QoYidceGU3d1x4ZjAnKToKLSAgICAgICAgICAgIHNlbGYudGVzdF9hYnNwYXRoKCkKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICB3aXRoIHN1cHBvcnQudGVtcF9jd2QoYidceGU3d1x4ZjAnKToKKyAgICAgICAgICAgICAgICBzZWxmLnRlc3RfYWJzcGF0aCgpCiAKIAogZGVmIHRlc3RfbWFpbigpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9nZW5leHBzLnB5IGIvTGliL3Rlc3QvdGVzdF9nZW5leHBzLnB5CmluZGV4IDFmNDZhZjEuLjQxMzA0M2MgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZ2VuZXhwcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2dlbmV4cHMucHkKQEAgLTI1NywxMSArMjU3LDE1IEBACiAKICIiIgogCitpbXBvcnQgc3lzCiAKLV9fdGVzdF9fID0geydkb2N0ZXN0cycgOiBkb2N0ZXN0c30KKyMgVHJhY2UgZnVuY3Rpb24gY2FuIHRocm93IG9mZiB0aGUgdHVwbGUgcmV1c2UgdGVzdC4KK2lmIGhhc2F0dHIoc3lzLCAnZ2V0dHJhY2UnKSBhbmQgc3lzLmdldHRyYWNlKCk6CisgICAgX190ZXN0X18gPSB7fQorZWxzZToKKyAgICBfX3Rlc3RfXyA9IHsnZG9jdGVzdHMnIDogZG9jdGVzdHN9CiAKIGRlZiB0ZXN0X21haW4odmVyYm9zZT1Ob25lKToKLSAgICBpbXBvcnQgc3lzCiAgICAgZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiAgICAgZnJvbSB0ZXN0IGltcG9ydCB0ZXN0X2dlbmV4cHMKICAgICBzdXBwb3J0LnJ1bl9kb2N0ZXN0KHRlc3RfZ2VuZXhwcywgdmVyYm9zZSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZ2V0YXJnczIucHkgYi9MaWIvdGVzdC90ZXN0X2dldGFyZ3MyLnB5CmluZGV4IDNkOWMwNmEuLjc2OGVhOGQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZ2V0YXJnczIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9nZXRhcmdzMi5weQpAQCAtMjk0LDYgKzI5NCwxNSBAQAogICAgICAgICAgICAgc2VsZi5mYWlsKCdUeXBlRXJyb3Igc2hvdWxkIGhhdmUgYmVlbiByYWlzZWQnKQogCiBjbGFzcyBCeXRlc19UZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHRlc3RfYyhzZWxmKToKKyAgICAgICAgZnJvbSBfdGVzdGNhcGkgaW1wb3J0IGdldGFyZ3NfYworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGdldGFyZ3NfYywgYidhYmMnKSAgIyBsZW4gPiAxCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0YXJnc19jKGInYScpLCBiJ2EnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldGFyZ3NfYyhieXRlYXJyYXkoYidhJykpLCBiJ2EnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGdldGFyZ3NfYywgbWVtb3J5dmlldyhiJ2EnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBnZXRhcmdzX2MsICdzJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBnZXRhcmdzX2MsIE5vbmUpCisKICAgICBkZWYgdGVzdF9zKHNlbGYpOgogICAgICAgICBmcm9tIF90ZXN0Y2FwaSBpbXBvcnQgZ2V0YXJnc19zCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0YXJnc19zKCdhYmNceGU5JyksIGInYWJjXHhjM1x4YTknKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9nbG9iLnB5IGIvTGliL3Rlc3QvdGVzdF9nbG9iLnB5CmluZGV4IDE1NjBhNmIuLjZlZTA4ZGIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZ2xvYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X2dsb2IucHkKQEAgLTEsNSArMSw2IEBACiBpbXBvcnQgdW5pdHRlc3QKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QsIFRFU1RGTiwgc2tpcF91bmxlc3Nfc3ltbGluaywgY2FuX3N5bWxpbmsKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCAocnVuX3VuaXR0ZXN0LCBURVNURk4sIHNraXBfdW5sZXNzX3N5bWxpbmssCisgICAgY2FuX3N5bWxpbmssIGNyZWF0ZV9lbXB0eV9maWxlKQogaW1wb3J0IGdsb2IKIGltcG9ydCBvcwogaW1wb3J0IHNodXRpbApAQCAtMTQsOCArMTUsNyBAQAogICAgICAgICBiYXNlLCBmaWxlID0gb3MucGF0aC5zcGxpdChmaWxlbmFtZSkKICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGJhc2UpOgogICAgICAgICAgICAgb3MubWFrZWRpcnMoYmFzZSkKLSAgICAgICAgZiA9IG9wZW4oZmlsZW5hbWUsICd3JykKLSAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKGZpbGVuYW1lKQogCiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICBzZWxmLnRlbXBkaXIgPSBURVNURk4rIl9kaXIiCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2dyYW1tYXIucHkgYi9MaWIvdGVzdC90ZXN0X2dyYW1tYXIucHkKaW5kZXggMjY4YTYzMy4uNmIzMjZiZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9ncmFtbWFyLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ3JhbW1hci5weQpAQCAtMTAsNyArMTAsNyBAQAogCiBjbGFzcyBUb2tlblRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKIAotICAgIGRlZiB0ZXN0QmFja3NsYXNoKHNlbGYpOgorICAgIGRlZiB0ZXN0X2JhY2tzbGFzaChzZWxmKToKICAgICAgICAgIyBCYWNrc2xhc2ggbWVhbnMgbGluZSBjb250aW51YXRpb246CiAgICAgICAgIHggPSAxIFwKICAgICAgICAgKyAxCkBAIC0yMCw3ICsyMCw3IEBACiAgICAgICAgIHggPSAwCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgMCwgJ2JhY2tzbGFzaCBlbmRpbmcgY29tbWVudCcpCiAKLSAgICBkZWYgdGVzdFBsYWluSW50ZWdlcnMoc2VsZik6CisgICAgZGVmIHRlc3RfcGxhaW5faW50ZWdlcnMoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHlwZSgwMDApLCB0eXBlKDApKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDB4ZmYsIDI1NSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgwbzM3NywgMjU1KQpAQCAtNTYsNyArNTYsNyBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgc2VsZi5mYWlsKCdXZWlyZCBtYXhzaXplIHZhbHVlICVyJyAlIG1heHNpemUpCiAKLSAgICBkZWYgdGVzdExvbmdJbnRlZ2VycyhzZWxmKToKKyAgICBkZWYgdGVzdF9sb25nX2ludGVnZXJzKHNlbGYpOgogICAgICAgICB4ID0gMAogICAgICAgICB4ID0gMHhmZmZmZmZmZmZmZmZmZmZmCiAgICAgICAgIHggPSAwWGZmZmZmZmZmZmZmZmZmZmYKQEAgLTY2LDcgKzY2LDcgQEAKICAgICAgICAgeCA9IDBiMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCiAgICAgICAgIHggPSAwQjExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMQogCi0gICAgZGVmIHRlc3RGbG9hdHMoc2VsZik6CisgICAgZGVmIHRlc3RfZmxvYXRzKHNlbGYpOgogICAgICAgICB4ID0gMy4xNAogICAgICAgICB4ID0gMzE0LgogICAgICAgICB4ID0gMC4zMTQKQEAgLTgwLDcgKzgwLDcgQEAKICAgICAgICAgeCA9IC4zZTE0CiAgICAgICAgIHggPSAzLjFlNAogCi0gICAgZGVmIHRlc3RTdHJpbmdMaXRlcmFscyhzZWxmKToKKyAgICBkZWYgdGVzdF9zdHJpbmdfbGl0ZXJhbHMoc2VsZik6CiAgICAgICAgIHggPSAnJzsgeSA9ICIiOyBzZWxmLmFzc2VydFRydWUobGVuKHgpID09IDAgYW5kIHggPT0geSkKICAgICAgICAgeCA9ICdcJyc7IHkgPSAiJyI7IHNlbGYuYXNzZXJ0VHJ1ZShsZW4oeCkgPT0gMSBhbmQgeCA9PSB5IGFuZCBvcmQoeCkgPT0gMzkpCiAgICAgICAgIHggPSAnIic7IHkgPSAiXCIiOyBzZWxmLmFzc2VydFRydWUobGVuKHgpID09IDEgYW5kIHggPT0geSBhbmQgb3JkKHgpID09IDM0KQpAQCAtMTIwLDExICsxMjAsMTggQEAKICcKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LCB5KQogCi0gICAgZGVmIHRlc3RFbGxpcHNpcyhzZWxmKToKKyAgICBkZWYgdGVzdF9lbGxpcHNpcyhzZWxmKToKICAgICAgICAgeCA9IC4uLgogICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBFbGxpcHNpcykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIuLiAuIikKIAorICAgIGRlZiB0ZXN0X2VvZl9lcnJvcihzZWxmKToKKyAgICAgICAgc2FtcGxlcyA9ICgiZGVmIGZvbygiLCAiXG5kZWYgZm9vKCIsICJkZWYgZm9vKFxuIikKKyAgICAgICAgZm9yIHMgaW4gc2FtcGxlczoKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgICAgIGNvbXBpbGUocywgIjx0ZXN0PiIsICJleGVjIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oInVuZXhwZWN0ZWQgRU9GIiwgc3RyKGNtLmV4Y2VwdGlvbikpCisKIGNsYXNzIEdyYW1tYXJUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKICAgICAjIHNpbmdsZV9pbnB1dDogTkVXTElORSB8IHNpbXBsZV9zdG10IHwgY29tcG91bmRfc3RtdCBORVdMSU5FCkBAIC0xMzYsMTEgKzE0MywxMSBAQAogICAgICMgZXhwcl9pbnB1dDogdGVzdGxpc3QgTkVXTElORQogICAgICMgWFhYIEhhcmQgdG8gdGVzdCAtLSB1c2VkIG9ubHkgaW4gY2FsbHMgdG8gaW5wdXQoKQogCi0gICAgZGVmIHRlc3RFdmFsSW5wdXQoc2VsZik6CisgICAgZGVmIHRlc3RfZXZhbF9pbnB1dChzZWxmKToKICAgICAgICAgIyB0ZXN0bGlzdCBFTkRNQVJLRVIKICAgICAgICAgeCA9IGV2YWwoJzEsIDAgb3IgMScpCiAKLSAgICBkZWYgdGVzdEZ1bmNkZWYoc2VsZik6CisgICAgZGVmIHRlc3RfZnVuY2RlZihzZWxmKToKICAgICAgICAgIyMjIFtkZWNvcmF0b3JzXSAnZGVmJyBOQU1FIHBhcmFtZXRlcnMgWyctPicgdGVzdF0gJzonIHN1aXRlCiAgICAgICAgICMjIyBkZWNvcmF0b3I6ICdAJyBkb3R0ZWRfbmFtZSBbICcoJyBbYXJnbGlzdF0gJyknIF0gTkVXTElORQogICAgICAgICAjIyMgZGVjb3JhdG9yczogZGVjb3JhdG9yKwpAQCAtMzI0LDcgKzMzMSw3IEBACiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZigqZygxPTIpKSIpCiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZigqKmcoMT0yKSkiKQogCi0gICAgZGVmIHRlc3RMYW1iZGVmKHNlbGYpOgorICAgIGRlZiB0ZXN0X2xhbWJkZWYoc2VsZik6CiAgICAgICAgICMjIyBsYW1iZGVmOiAnbGFtYmRhJyBbdmFyYXJnc2xpc3RdICc6JyB0ZXN0CiAgICAgICAgIGwxID0gbGFtYmRhIDogMAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGwxKCksIDApCkBAIC0zNDYsNyArMzUzLDcgQEAKICAgICAjIyMgc3RtdDogc2ltcGxlX3N0bXQgfCBjb21wb3VuZF9zdG10CiAgICAgIyBUZXN0ZWQgYmVsb3cKIAotICAgIGRlZiB0ZXN0U2ltcGxlU3RtdChzZWxmKToKKyAgICBkZWYgdGVzdF9zaW1wbGVfc3RtdChzZWxmKToKICAgICAgICAgIyMjIHNpbXBsZV9zdG10OiBzbWFsbF9zdG10ICgnOycgc21hbGxfc3RtdCkqIFsnOyddCiAgICAgICAgIHggPSAxOyBwYXNzOyBkZWwgeAogICAgICAgICBkZWYgZm9vKCk6CkBAIC0zNTcsNyArMzY0LDcgQEAKICAgICAjIyMgc21hbGxfc3RtdDogZXhwcl9zdG10IHwgcGFzc19zdG10IHwgZGVsX3N0bXQgfCBmbG93X3N0bXQgfCBpbXBvcnRfc3RtdCB8IGdsb2JhbF9zdG10IHwgYWNjZXNzX3N0bXQKICAgICAjIFRlc3RlZCBiZWxvdwogCi0gICAgZGVmIHRlc3RFeHByU3RtdChzZWxmKToKKyAgICBkZWYgdGVzdF9leHByX3N0bXQoc2VsZik6CiAgICAgICAgICMgKGV4cHJsaXN0ICc9JykqIGV4cHJsaXN0CiAgICAgICAgIDEKICAgICAgICAgMSwgMiwgMwpAQCAtMzcwLDcgKzM3Nyw3IEBACiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAieCArIDEgPSAxIikKICAgICAgICAgY2hlY2tfc3ludGF4X2Vycm9yKHNlbGYsICJhICsgMSA9IGIgKyAyIikKIAotICAgIGRlZiB0ZXN0RGVsU3RtdChzZWxmKToKKyAgICBkZWYgdGVzdF9kZWxfc3RtdChzZWxmKToKICAgICAgICAgIyAnZGVsJyBleHBybGlzdAogICAgICAgICBhYmMgPSBbMSwyLDNdCiAgICAgICAgIHgsIHksIHogPSBhYmMKQEAgLTM3OSwxOCArMzg2LDE4IEBACiAgICAgICAgIGRlbCBhYmMKICAgICAgICAgZGVsIHgsIHksICh6LCB4eXopCiAKLSAgICBkZWYgdGVzdFBhc3NTdG10KHNlbGYpOgorICAgIGRlZiB0ZXN0X3Bhc3Nfc3RtdChzZWxmKToKICAgICAgICAgIyAncGFzcycKICAgICAgICAgcGFzcwogCiAgICAgIyBmbG93X3N0bXQ6IGJyZWFrX3N0bXQgfCBjb250aW51ZV9zdG10IHwgcmV0dXJuX3N0bXQgfCByYWlzZV9zdG10CiAgICAgIyBUZXN0ZWQgYmVsb3cKIAotICAgIGRlZiB0ZXN0QnJlYWtTdG10KHNlbGYpOgorICAgIGRlZiB0ZXN0X2JyZWFrX3N0bXQoc2VsZik6CiAgICAgICAgICMgJ2JyZWFrJwogICAgICAgICB3aGlsZSAxOiBicmVhawogCi0gICAgZGVmIHRlc3RDb250aW51ZVN0bXQoc2VsZik6CisgICAgZGVmIHRlc3RfY29udGludWVfc3RtdChzZWxmKToKICAgICAgICAgIyAnY29udGludWUnCiAgICAgICAgIGkgPSAxCiAgICAgICAgIHdoaWxlIGk6IGkgPSAwOyBjb250aW51ZQpAQCAtNDQyLDcgKzQ0OSw3IEBACiAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJjb250aW51ZSB0aGVuIGJyZWFrIGluIHRyeS9leGNlcHQgaW4gbG9vcCBicm9rZW4hIikKICAgICAgICAgdGVzdF9pbm5lcigpCiAKLSAgICBkZWYgdGVzdFJldHVybihzZWxmKToKKyAgICBkZWYgdGVzdF9yZXR1cm4oc2VsZik6CiAgICAgICAgICMgJ3JldHVybicgW3Rlc3RsaXN0XQogICAgICAgICBkZWYgZzEoKTogcmV0dXJuCiAgICAgICAgIGRlZiBnMigpOiByZXR1cm4gMQpAQCAtNDUwLDE3ICs0NTcsNDkgQEAKICAgICAgICAgeCA9IGcyKCkKICAgICAgICAgY2hlY2tfc3ludGF4X2Vycm9yKHNlbGYsICJjbGFzcyBmb286cmV0dXJuIDEiKQogCi0gICAgZGVmIHRlc3RZaWVsZChzZWxmKToKKyAgICBkZWYgdGVzdF95aWVsZChzZWxmKToKKyAgICAgICAgIyBBbGxvd2VkIGFzIHN0YW5kYWxvbmUgc3RhdGVtZW50CisgICAgICAgIGRlZiBnKCk6IHlpZWxkIDEKKyAgICAgICAgZGVmIGcoKTogeWllbGQgZnJvbSAoKQorICAgICAgICAjIEFsbG93ZWQgYXMgUkhTIG9mIGFzc2lnbm1lbnQKKyAgICAgICAgZGVmIGcoKTogeCA9IHlpZWxkIDEKKyAgICAgICAgZGVmIGcoKTogeCA9IHlpZWxkIGZyb20gKCkKKyAgICAgICAgIyBPcmRpbmFyeSB5aWVsZCBhY2NlcHRzIGltcGxpY2l0IHR1cGxlcworICAgICAgICBkZWYgZygpOiB5aWVsZCAxLCAxCisgICAgICAgIGRlZiBnKCk6IHggPSB5aWVsZCAxLCAxCisgICAgICAgICMgJ3lpZWxkIGZyb20nIGRvZXMgbm90CisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogeWllbGQgZnJvbSAoKSwgMSIpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogeCA9IHlpZWxkIGZyb20gKCksIDEiKQorICAgICAgICAjIFJlcXVpcmVzIHBhcmVudGhlc2VzIGFzIHN1YmV4cHJlc3Npb24KKyAgICAgICAgZGVmIGcoKTogMSwgKHlpZWxkIDEpCisgICAgICAgIGRlZiBnKCk6IDEsICh5aWVsZCBmcm9tICgpKQorICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgImRlZiBnKCk6IDEsIHlpZWxkIDEiKQorICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgImRlZiBnKCk6IDEsIHlpZWxkIGZyb20gKCkiKQorICAgICAgICAjIFJlcXVpcmVzIHBhcmVudGhlc2VzIGFzIGNhbGwgYXJndW1lbnQKKyAgICAgICAgZGVmIGcoKTogZigoeWllbGQgMSkpCisgICAgICAgIGRlZiBnKCk6IGYoKHlpZWxkIDEpLCAxKQorICAgICAgICBkZWYgZygpOiBmKCh5aWVsZCBmcm9tICgpKSkKKyAgICAgICAgZGVmIGcoKTogZigoeWllbGQgZnJvbSAoKSksIDEpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogZih5aWVsZCAxKSIpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogZih5aWVsZCAxLCAxKSIpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogZih5aWVsZCBmcm9tICgpKSIpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogZih5aWVsZCBmcm9tICgpLCAxKSIpCisgICAgICAgICMgTm90IGFsbG93ZWQgYXQgdG9wIGxldmVsCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAieWllbGQiKQorICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgInlpZWxkIGZyb20iKQorICAgICAgICAjIE5vdCBhbGxvd2VkIGF0IGNsYXNzIHNjb3BlCiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiY2xhc3MgZm9vOnlpZWxkIDEiKQorICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgImNsYXNzIGZvbzp5aWVsZCBmcm9tICgpIikKIAotICAgIGRlZiB0ZXN0UmFpc2Uoc2VsZik6CisKKyAgICBkZWYgdGVzdF9yYWlzZShzZWxmKToKICAgICAgICAgIyAncmFpc2UnIHRlc3QgWycsJyB0ZXN0XQogICAgICAgICB0cnk6IHJhaXNlIFJ1bnRpbWVFcnJvcignanVzdCB0ZXN0aW5nJykKICAgICAgICAgZXhjZXB0IFJ1bnRpbWVFcnJvcjogcGFzcwogICAgICAgICB0cnk6IHJhaXNlIEtleWJvYXJkSW50ZXJydXB0CiAgICAgICAgIGV4Y2VwdCBLZXlib2FyZEludGVycnVwdDogcGFzcwogCi0gICAgZGVmIHRlc3RJbXBvcnQoc2VsZik6CisgICAgZGVmIHRlc3RfaW1wb3J0KHNlbGYpOgogICAgICAgICAjICdpbXBvcnQnIGRvdHRlZF9hc19uYW1lcwogICAgICAgICBpbXBvcnQgc3lzCiAgICAgICAgIGltcG9ydCB0aW1lLCBzeXMKQEAgLTQ3MywxMyArNTEyLDEzIEBACiAgICAgICAgIGZyb20gc3lzIGltcG9ydCAocGF0aCwgYXJndikKICAgICAgICAgZnJvbSBzeXMgaW1wb3J0IChwYXRoLCBhcmd2LCkKIAotICAgIGRlZiB0ZXN0R2xvYmFsKHNlbGYpOgorICAgIGRlZiB0ZXN0X2dsb2JhbChzZWxmKToKICAgICAgICAgIyAnZ2xvYmFsJyBOQU1FICgnLCcgTkFNRSkqCiAgICAgICAgIGdsb2JhbCBhCiAgICAgICAgIGdsb2JhbCBhLCBiCiAgICAgICAgIGdsb2JhbCBvbmUsIHR3bywgdGhyZWUsIGZvdXIsIGZpdmUsIHNpeCwgc2V2ZW4sIGVpZ2h0LCBuaW5lLCB0ZW4KIAotICAgIGRlZiB0ZXN0Tm9ubG9jYWwoc2VsZik6CisgICAgZGVmIHRlc3Rfbm9ubG9jYWwoc2VsZik6CiAgICAgICAgICMgJ25vbmxvY2FsJyBOQU1FICgnLCcgTkFNRSkqCiAgICAgICAgIHggPSAwCiAgICAgICAgIHkgPSAwCkBAIC00ODcsNyArNTI2LDcgQEAKICAgICAgICAgICAgIG5vbmxvY2FsIHgKICAgICAgICAgICAgIG5vbmxvY2FsIHgsIHkKIAotICAgIGRlZiB0ZXN0QXNzZXJ0KHNlbGYpOgorICAgIGRlZiB0ZXN0X2Fzc2VydChzZWxmKToKICAgICAgICAgIyBhc3NlcnRUcnVlc3RtdDogJ2Fzc2VydCcgdGVzdCBbJywnIHRlc3RdCiAgICAgICAgIGFzc2VydCAxCiAgICAgICAgIGFzc2VydCAxLCAxCkBAIC01MjYsNyArNTY1LDcgQEAKICAgICAjIyMgY29tcG91bmRfc3RtdDogaWZfc3RtdCB8IHdoaWxlX3N0bXQgfCBmb3Jfc3RtdCB8IHRyeV9zdG10IHwgZnVuY2RlZiB8IGNsYXNzZGVmCiAgICAgIyBUZXN0ZWQgYmVsb3cKIAotICAgIGRlZiB0ZXN0SWYoc2VsZik6CisgICAgZGVmIHRlc3RfaWYoc2VsZik6CiAgICAgICAgICMgJ2lmJyB0ZXN0ICc6JyBzdWl0ZSAoJ2VsaWYnIHRlc3QgJzonIHN1aXRlKSogWydlbHNlJyAnOicgc3VpdGVdCiAgICAgICAgIGlmIDE6IHBhc3MKICAgICAgICAgaWYgMTogcGFzcwpAQCAtNTM5LDcgKzU3OCw3IEBACiAgICAgICAgIGVsaWYgMDogcGFzcwogICAgICAgICBlbHNlOiBwYXNzCiAKLSAgICBkZWYgdGVzdFdoaWxlKHNlbGYpOgorICAgIGRlZiB0ZXN0X3doaWxlKHNlbGYpOgogICAgICAgICAjICd3aGlsZScgdGVzdCAnOicgc3VpdGUgWydlbHNlJyAnOicgc3VpdGVdCiAgICAgICAgIHdoaWxlIDA6IHBhc3MKICAgICAgICAgd2hpbGUgMDogcGFzcwpAQCAtNTU0LDcgKzU5Myw3IEBACiAgICAgICAgICAgICB4ID0gMgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHgsIDIpCiAKLSAgICBkZWYgdGVzdEZvcihzZWxmKToKKyAgICBkZWYgdGVzdF9mb3Ioc2VsZik6CiAgICAgICAgICMgJ2ZvcicgZXhwcmxpc3QgJ2luJyBleHBybGlzdCAnOicgc3VpdGUgWydlbHNlJyAnOicgc3VpdGVdCiAgICAgICAgIGZvciBpIGluIDEsIDIsIDM6IHBhc3MKICAgICAgICAgZm9yIGksIGosIGsgaW4gKCk6IHBhc3MKQEAgLTU4MSw3ICs2MjAsNyBAQAogICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdCwgWzEsIDIsIDNdKQogCi0gICAgZGVmIHRlc3RUcnkoc2VsZik6CisgICAgZGVmIHRlc3RfdHJ5KHNlbGYpOgogICAgICAgICAjIyMgdHJ5X3N0bXQ6ICd0cnknICc6JyBzdWl0ZSAoZXhjZXB0X2NsYXVzZSAnOicgc3VpdGUpKyBbJ2Vsc2UnICc6JyBzdWl0ZV0KICAgICAgICAgIyMjICAgICAgICAgfCAndHJ5JyAnOicgc3VpdGUgJ2ZpbmFsbHknICc6JyBzdWl0ZQogICAgICAgICAjIyMgZXhjZXB0X2NsYXVzZTogJ2V4Y2VwdCcgW2V4cHIgWydhcycgZXhwcl1dCkBAIC02MDQsNyArNjQzLDcgQEAKICAgICAgICAgdHJ5OiBwYXNzCiAgICAgICAgIGZpbmFsbHk6IHBhc3MKIAotICAgIGRlZiB0ZXN0U3VpdGUoc2VsZik6CisgICAgZGVmIHRlc3Rfc3VpdGUoc2VsZik6CiAgICAgICAgICMgc2ltcGxlX3N0bXQgfCBORVdMSU5FIElOREVOVCBORVdMSU5FKiAoc3RtdCBORVdMSU5FKikrIERFREVOVAogICAgICAgICBpZiAxOiBwYXNzCiAgICAgICAgIGlmIDE6CkBAIC02MTksNyArNjU4LDcgQEAKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgICMKIAotICAgIGRlZiB0ZXN0VGVzdChzZWxmKToKKyAgICBkZWYgdGVzdF90ZXN0KHNlbGYpOgogICAgICAgICAjIyMgYW5kX3Rlc3QgKCdvcicgYW5kX3Rlc3QpKgogICAgICAgICAjIyMgYW5kX3Rlc3Q6IG5vdF90ZXN0ICgnYW5kJyBub3RfdGVzdCkqCiAgICAgICAgICMjIyBub3RfdGVzdDogJ25vdCcgbm90X3Rlc3QgfCBjb21wYXJpc29uCkBAIC02MzAsNyArNjY5LDcgQEAKICAgICAgICAgaWYgbm90IDEgYW5kIDEgYW5kIDE6IHBhc3MKICAgICAgICAgaWYgMSBhbmQgMSBvciAxIGFuZCAxIGFuZCAxIG9yIG5vdCAxIGFuZCAxOiBwYXNzCiAKLSAgICBkZWYgdGVzdENvbXBhcmlzb24oc2VsZik6CisgICAgZGVmIHRlc3RfY29tcGFyaXNvbihzZWxmKToKICAgICAgICAgIyMjIGNvbXBhcmlzb246IGV4cHIgKGNvbXBfb3AgZXhwcikqCiAgICAgICAgICMjIyBjb21wX29wOiAnPCd8Jz4nfCc9PSd8Jz49J3wnPD0nfCchPSd8J2luJ3wnbm90JyAnaW4nfCdpcyd8J2lzJyAnbm90JwogICAgICAgICBpZiAxOiBwYXNzCkBAIC02NDcsMzYgKzY4NiwzNiBAQAogICAgICAgICBpZiAxIG5vdCBpbiAoKTogcGFzcwogICAgICAgICBpZiAxIDwgMSA+IDEgPT0gMSA+PSAxIDw9IDEgIT0gMSBpbiAxIG5vdCBpbiAxIGlzIDEgaXMgbm90IDE6IHBhc3MKIAotICAgIGRlZiB0ZXN0QmluYXJ5TWFza09wcyhzZWxmKToKKyAgICBkZWYgdGVzdF9iaW5hcnlfbWFza19vcHMoc2VsZik6CiAgICAgICAgIHggPSAxICYgMQogICAgICAgICB4ID0gMSBeIDEKICAgICAgICAgeCA9IDEgfCAxCiAKLSAgICBkZWYgdGVzdFNoaWZ0T3BzKHNlbGYpOgorICAgIGRlZiB0ZXN0X3NoaWZ0X29wcyhzZWxmKToKICAgICAgICAgeCA9IDEgPDwgMQogICAgICAgICB4ID0gMSA+PiAxCiAgICAgICAgIHggPSAxIDw8IDEgPj4gMQogCi0gICAgZGVmIHRlc3RBZGRpdGl2ZU9wcyhzZWxmKToKKyAgICBkZWYgdGVzdF9hZGRpdGl2ZV9vcHMoc2VsZik6CiAgICAgICAgIHggPSAxCiAgICAgICAgIHggPSAxICsgMQogICAgICAgICB4ID0gMSAtIDEgLSAxCiAgICAgICAgIHggPSAxIC0gMSArIDEgLSAxICsgMQogCi0gICAgZGVmIHRlc3RNdWx0aXBsaWNhdGl2ZU9wcyhzZWxmKToKKyAgICBkZWYgdGVzdF9tdWx0aXBsaWNhdGl2ZV9vcHMoc2VsZik6CiAgICAgICAgIHggPSAxICogMQogICAgICAgICB4ID0gMSAvIDEKICAgICAgICAgeCA9IDEgJSAxCiAgICAgICAgIHggPSAxIC8gMSAqIDEgJSAxCiAKLSAgICBkZWYgdGVzdFVuYXJ5T3BzKHNlbGYpOgorICAgIGRlZiB0ZXN0X3VuYXJ5X29wcyhzZWxmKToKICAgICAgICAgeCA9ICsxCiAgICAgICAgIHggPSAtMQogICAgICAgICB4ID0gfjEKICAgICAgICAgeCA9IH4xIF4gMSAmIDEgfCAxICYgMSBeIC0xCiAgICAgICAgIHggPSAtMSoxLzEgKyAxKjEgLSAtLS0xKjEKIAotICAgIGRlZiB0ZXN0U2VsZWN0b3JzKHNlbGYpOgorICAgIGRlZiB0ZXN0X3NlbGVjdG9ycyhzZWxmKToKICAgICAgICAgIyMjIHRyYWlsZXI6ICcoJyBbdGVzdGxpc3RdICcpJyB8ICdbJyBzdWJzY3JpcHQgJ10nIHwgJy4nIE5BTUUKICAgICAgICAgIyMjIHN1YnNjcmlwdDogZXhwciB8IFtleHByXSAnOicgW2V4cHJdCiAKQEAgLTcwNiw3ICs3NDUsNyBAQAogICAgICAgICBMLnNvcnQoa2V5PWxhbWJkYSB4OiB4IGlmIGlzaW5zdGFuY2UoeCwgdHVwbGUpIGVsc2UgKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKEwpLCAnWzEsICgxLCksICgxLCAyKSwgKDEsIDIsIDMpXScpCiAKLSAgICBkZWYgdGVzdEF0b21zKHNlbGYpOgorICAgIGRlZiB0ZXN0X2F0b21zKHNlbGYpOgogICAgICAgICAjIyMgYXRvbTogJygnIFt0ZXN0bGlzdF0gJyknIHwgJ1snIFt0ZXN0bGlzdF0gJ10nIHwgJ3snIFtkaWN0c2V0bWFrZXJdICd9JyB8IE5BTUUgfCBOVU1CRVIgfCBTVFJJTkcKICAgICAgICAgIyMjIGRpY3RzZXRtYWtlcjogKHRlc3QgJzonIHRlc3QgKCcsJyB0ZXN0ICc6JyB0ZXN0KSogWycsJ10pIHwgKHRlc3QgKCcsJyB0ZXN0KSogWycsJ10pCiAKQEAgLTc0MSw3ICs3ODAsNyBAQAogICAgICMjIyB0ZXN0bGlzdDogdGVzdCAoJywnIHRlc3QpKiBbJywnXQogICAgICMgVGhlc2UgaGF2ZSBiZWVuIGV4ZXJjaXNlZCBlbm91Z2ggYWJvdmUKIAotICAgIGRlZiB0ZXN0Q2xhc3NkZWYoc2VsZik6CisgICAgZGVmIHRlc3RfY2xhc3NkZWYoc2VsZik6CiAgICAgICAgICMgJ2NsYXNzJyBOQU1FIFsnKCcgW3Rlc3RsaXN0XSAnKSddICc6JyBzdWl0ZQogICAgICAgICBjbGFzcyBCOiBwYXNzCiAgICAgICAgIGNsYXNzIEIyKCk6IHBhc3MKQEAgLTc2MCwxNCArNzk5LDE0IEBACiAgICAgICAgIEBjbGFzc19kZWNvcmF0b3IKICAgICAgICAgY2xhc3MgRzogcGFzcwogCi0gICAgZGVmIHRlc3REaWN0Y29tcHMoc2VsZik6CisgICAgZGVmIHRlc3RfZGljdGNvbXBzKHNlbGYpOgogICAgICAgICAjIGRpY3RvcnNldG1ha2VyOiAoICh0ZXN0ICc6JyB0ZXN0IChjb21wX2ZvciB8CiAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnLCcgdGVzdCAnOicgdGVzdCkqIFsnLCddKSkgfAogICAgICAgICAjICAgICAgICAgICAgICAgICAgICh0ZXN0IChjb21wX2ZvciB8ICgnLCcgdGVzdCkqIFsnLCddKSkgKQogICAgICAgICBudW1zID0gWzEsIDIsIDNdCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoe2k6aSsxIGZvciBpIGluIG51bXN9LCB7MTogMiwgMjogMywgMzogNH0pCiAKLSAgICBkZWYgdGVzdExpc3Rjb21wcyhzZWxmKToKKyAgICBkZWYgdGVzdF9saXN0Y29tcHMoc2VsZik6CiAgICAgICAgICMgbGlzdCBjb21wcmVoZW5zaW9uIHRlc3RzCiAgICAgICAgIG51bXMgPSBbMSwgMiwgMywgNCwgNV0KICAgICAgICAgc3RycyA9IFsiQXBwbGUiLCAiQmFuYW5hIiwgIkNvY29udXQiXQpAQCAtODMwLDcgKzg2OSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgWygnQm9laW5nJywgJ0FpcmxpbmVyJyksICgnQm9laW5nJywgJ0VuZ2luZScpLCAoJ0ZvcmQnLCAnRW5naW5lJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnTWFjZG9uYWxkcycsICdDaGVlc2VidXJnZXInKV0pCiAKLSAgICBkZWYgdGVzdEdlbmV4cHMoc2VsZik6CisgICAgZGVmIHRlc3RfZ2VuZXhwcyhzZWxmKToKICAgICAgICAgIyBnZW5lcmF0b3IgZXhwcmVzc2lvbiB0ZXN0cwogICAgICAgICBnID0gKFt4IGZvciB4IGluIHJhbmdlKDEwKV0gZm9yIHggaW4gcmFuZ2UoMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV4dChnKSwgW3ggZm9yIHggaW4gcmFuZ2UoMTApXSkKQEAgLTg2NSw3ICs5MDQsNyBAQAogICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgImZvbyh4IGZvciB4IGluIHJhbmdlKDEwKSwgMTAwKSIpCiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZm9vKDEwMCwgeCBmb3IgeCBpbiByYW5nZSgxMCkpIikKIAotICAgIGRlZiB0ZXN0Q29tcHJlaGVuc2lvblNwZWNpYWxzKHNlbGYpOgorICAgIGRlZiB0ZXN0X2NvbXByZWhlbnNpb25fc3BlY2lhbHMoc2VsZik6CiAgICAgICAgICMgdGVzdCBmb3Igb3V0bW9zdCBpdGVyYWJsZSBwcmVjb21wdXRhdGlvbgogICAgICAgICB4ID0gMTA7IGcgPSAoaSBmb3IgaSBpbiByYW5nZSh4KSk7IHggPSA1CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGxpc3QoZykpLCAxMCkKQEAgLTkwNCw3ICs5NDMsNyBAQAogICAgICAgICB3aXRoIG1hbmFnZXIoKSBhcyB4LCBtYW5hZ2VyKCk6CiAgICAgICAgICAgICBwYXNzCiAKLSAgICBkZWYgdGVzdElmRWxzZUV4cHIoc2VsZik6CisgICAgZGVmIHRlc3RfaWZfZWxzZV9leHByKHNlbGYpOgogICAgICAgICAjIFRlc3QgaWZlbHNlIGV4cHJlc3Npb25zIGluIHZhcmlvdXMgY2FzZXMKICAgICAgICAgZGVmIF9jaGVja2V2YWwobXNnLCByZXQpOgogICAgICAgICAgICAgImhlbHBlciB0byBjaGVjayB0aGF0IGV2YWx1YXRpb24gb2YgZXhwcmVzc2lvbnMgaXMgZG9uZSBjb3JyZWN0bHkiCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2d6aXAucHkgYi9MaWIvdGVzdC90ZXN0X2d6aXAucHkKaW5kZXggNWFlNzQ2Ny4uZDJiNDg3MSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9nemlwLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ3ppcC5weQpAQCAtNjQsNiArNjQsMjEgQEAKICAgICAgICAgICAgIGQgPSBmLnJlYWQoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGQsIGRhdGExKjUwKQogCisgICAgZGVmIHRlc3RfcmVhZDEoc2VsZik6CisgICAgICAgIHNlbGYudGVzdF93cml0ZSgpCisgICAgICAgIGJsb2NrcyA9IFtdCisgICAgICAgIG5yZWFkID0gMAorICAgICAgICB3aXRoIGd6aXAuR3ppcEZpbGUoc2VsZi5maWxlbmFtZSwgJ3InKSBhcyBmOgorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBkID0gZi5yZWFkMSgpCisgICAgICAgICAgICAgICAgaWYgbm90IGQ6CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChkKQorICAgICAgICAgICAgICAgIG5yZWFkICs9IGxlbihkKQorICAgICAgICAgICAgICAgICMgQ2hlY2sgdGhhdCBwb3NpdGlvbiB3YXMgdXBkYXRlZCBjb3JyZWN0bHkgKHNlZSBpc3N1ZTEwNzkxKS4KKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCBucmVhZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiJycuam9pbihibG9ja3MpLCBkYXRhMSAqIDUwKQorCiAgICAgZGVmIHRlc3RfaW9fb25fY2xvc2VkX29iamVjdChzZWxmKToKICAgICAgICAgIyBUZXN0IHRoYXQgSS9PIG9wZXJhdGlvbnMgb24gY2xvc2VkIEd6aXBGaWxlIG9iamVjdHMgcmFpc2UgYQogICAgICAgICAjIFZhbHVlRXJyb3IsIGp1c3QgbGlrZSB0aGUgY29ycmVzcG9uZGluZyBmdW5jdGlvbnMgb24gZmlsZSBvYmplY3RzLgpAQCAtMTI0LDcgKzEzOSw3IEBACiAgICAgICAgICAgICB3aXRoIGlvLkJ1ZmZlcmVkUmVhZGVyKGYpIGFzIHI6CiAgICAgICAgICAgICAgICAgbGluZXMgPSBbbGluZSBmb3IgbGluZSBpbiByXQogCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGluZXMsIDUwICogZGF0YTEuc3BsaXRsaW5lcyhUcnVlKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaW5lcywgNTAgKiBkYXRhMS5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpKQogCiAgICAgZGVmIHRlc3RfcmVhZGxpbmUoc2VsZik6CiAgICAgICAgIHNlbGYudGVzdF93cml0ZSgpCkBAIC0zMjMsNiArMzM4LDE0IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgxMDApLCBiJycpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5yZWFkLCBsZW4odW5jb21wcmVzc2VkKSkKIAorICAgIGRlZiB0ZXN0X3RleHRpb19yZWFkbGluZXMoc2VsZik6CisgICAgICAgICMgSXNzdWUgIzEwNzkxOiBUZXh0SU9XcmFwcGVyLnJlYWRsaW5lcygpIGZhaWxzIHdoZW4gd3JhcHBpbmcgR3ppcEZpbGUuCisgICAgICAgIGxpbmVzID0gKGRhdGExICogNTApLmRlY29kZSgiYXNjaWkiKS5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCisgICAgICAgIHNlbGYudGVzdF93cml0ZSgpCisgICAgICAgIHdpdGggZ3ppcC5HemlwRmlsZShzZWxmLmZpbGVuYW1lLCAncicpIGFzIGY6CisgICAgICAgICAgICB3aXRoIGlvLlRleHRJT1dyYXBwZXIoZiwgZW5jb2Rpbmc9ImFzY2lpIikgYXMgdDoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHQucmVhZGxpbmVzKCksIGxpbmVzKQorCiAgICAgZGVmIHRlc3RfZmlsZW9ial9mcm9tX2Zkb3BlbihzZWxmKToKICAgICAgICAgIyBJc3N1ZSAjMTM3ODE6IE9wZW5pbmcgYSBHemlwRmlsZSBmb3Igd3JpdGluZyBmYWlscyB3aGVuIHVzaW5nIGEKICAgICAgICAgIyBmaWxlb2JqIGNyZWF0ZWQgd2l0aCBvcy5mZG9wZW4oKS4KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfaGFzaC5weSBiL0xpYi90ZXN0L3Rlc3RfaGFzaC5weQppbmRleCBjMGRkMzRkLi4wNzc2Nzc5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2hhc2gucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9oYXNoLnB5CkBAIC0xMTMsOCArMTEzLDcgQEAKICAgICAgICAgcmV0dXJuIHNlbGYuc2VxW2luZGV4XQogCiBjbGFzcyBIYXNoQnVpbHRpbnNUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAgaGFzaGVzX3RvX2NoZWNrID0gW3JhbmdlKDEwKSwKLSAgICAgICAgICAgICAgICAgICAgICAgZW51bWVyYXRlKHJhbmdlKDEwKSksCisgICAgaGFzaGVzX3RvX2NoZWNrID0gW2VudW1lcmF0ZShyYW5nZSgxMCkpLAogICAgICAgICAgICAgICAgICAgICAgICBpdGVyKERlZmF1bHRJdGVyU2VxKCkpLAogICAgICAgICAgICAgICAgICAgICAgICBpdGVyKGxhbWJkYTogMCwgMCksCiAgICAgICAgICAgICAgICAgICAgICAgXQpAQCAtMTYwLDggKzE1OSw4IEBACiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBrbm93bl9oYXNoX29mX29iaiA9IC0xNjAwOTI1NTMzCiAKLSAgICAgICAgIyBSYW5kb21pemF0aW9uIGlzIGRpc2FibGVkIGJ5IGRlZmF1bHQ6Ci0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfaGFzaChzZWxmLnJlcHJfKSwga25vd25faGFzaF9vZl9vYmopCisgICAgICAgICMgUmFuZG9taXphdGlvbiBpcyBlbmFibGVkIGJ5IGRlZmF1bHQ6CisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoc2VsZi5nZXRfaGFzaChzZWxmLnJlcHJfKSwga25vd25faGFzaF9vZl9vYmopCiAKICAgICAgICAgIyBJdCBjYW4gYWxzbyBiZSBkaXNhYmxlZCBieSBzZXR0aW5nIHRoZSBzZWVkIHRvIDA6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfaGFzaChzZWxmLnJlcHJfLCBzZWVkPTApLCBrbm93bl9oYXNoX29mX29iaikKQEAgLTE5Myw2ICsxOTIsMTIgQEAKICAgICBkZWYgdGVzdF9lbXB0eV9zdHJpbmcoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFzaChiIiIpLCAwKQogCitjbGFzcyBNZW1vcnl2aWV3SGFzaFJhbmRvbWl6YXRpb25UZXN0cyhTdHJpbmdsaWtlSGFzaFJhbmRvbWl6YXRpb25UZXN0cyk6CisgICAgcmVwcl8gPSAibWVtb3J5dmlldyhiJ2FiYycpIgorCisgICAgZGVmIHRlc3RfZW1wdHlfc3RyaW5nKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobWVtb3J5dmlldyhiIiIpKSwgMCkKKwogY2xhc3MgRGF0ZXRpbWVUZXN0cyhIYXNoUmFuZG9taXphdGlvblRlc3RzKToKICAgICBkZWYgZ2V0X2hhc2hfY29tbWFuZChzZWxmLCByZXByXyk6CiAgICAgICAgIHJldHVybiAnaW1wb3J0IGRhdGV0aW1lOyBwcmludChoYXNoKCVzKSknICUgcmVwcl8KQEAgLTIxMyw2ICsyMTgsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgIEhhc2hCdWlsdGluc1Rlc3RDYXNlLAogICAgICAgICAgICAgICAgICAgICAgICAgIFN0ckhhc2hSYW5kb21pemF0aW9uVGVzdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgQnl0ZXNIYXNoUmFuZG9taXphdGlvblRlc3RzLAorICAgICAgICAgICAgICAgICAgICAgICAgIE1lbW9yeXZpZXdIYXNoUmFuZG9taXphdGlvblRlc3RzLAogICAgICAgICAgICAgICAgICAgICAgICAgIERhdGV0aW1lRGF0ZVRlc3RzLAogICAgICAgICAgICAgICAgICAgICAgICAgIERhdGV0aW1lRGF0ZXRpbWVUZXN0cywKICAgICAgICAgICAgICAgICAgICAgICAgICBEYXRldGltZVRpbWVUZXN0cykKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfaHR0cF9jb29raWVqYXIucHkgYi9MaWIvdGVzdC90ZXN0X2h0dHBfY29va2llamFyLnB5CmluZGV4IDQxZTBkZmQuLmEzNWVjOTUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfaHR0cF9jb29raWVqYXIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9odHRwX2Nvb2tpZWphci5weQpAQCAtMjQ4LDE4ICsyNDgsMTkgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLl9jb29raWVzWyJ3d3cuYWNtZS5jb20iXVsiLyJdWyJib28iXS52YWx1ZSwgTm9uZSkKIAogICAgIGRlZiB0ZXN0X2JhZF9tYWdpYyhzZWxmKToKLSAgICAgICAgIyBJT0Vycm9ycyAoZWcuIGZpbGUgZG9lc24ndCBleGlzdCkgYXJlIGFsbG93ZWQgdG8gcHJvcGFnYXRlCisgICAgICAgICMgT1NFcnJvcnMgKGVnLiBmaWxlIGRvZXNuJ3QgZXhpc3QpIGFyZSBhbGxvd2VkIHRvIHByb3BhZ2F0ZQogICAgICAgICBmaWxlbmFtZSA9IHRlc3Quc3VwcG9ydC5URVNURk4KICAgICAgICAgZm9yIGNvb2tpZWphcl9jbGFzcyBpbiBMV1BDb29raWVKYXIsIE1vemlsbGFDb29raWVKYXI6CiAgICAgICAgICAgICBjID0gY29va2llamFyX2NsYXNzKCkKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBjLmxvYWQoZmlsZW5hbWU9ImZvciB0aGlzIHRlc3QgdG8gd29yaywgYSBmaWxlIHdpdGggdGhpcyAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmaWxlbmFtZSBzaG91bGQgbm90IGV4aXN0IikKLSAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGV4YzoKLSAgICAgICAgICAgICAgICAjIGV4YWN0bHkgSU9FcnJvciwgbm90IExvYWRFcnJvcgotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoZXhjLl9fY2xhc3NfXywgSU9FcnJvcikKKyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGV4YzoKKyAgICAgICAgICAgICAgICAjIGFuIE9TRXJyb3Igc3ViY2xhc3MgKGxpa2VseSBGaWxlTm90Rm91bmRFcnJvciksIGJ1dCBub3QKKyAgICAgICAgICAgICAgICAjIExvYWRFcnJvcgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoZXhjLl9fY2xhc3NfXywgTG9hZEVycm9yKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBzZWxmLmZhaWwoImV4cGVjdGVkIElPRXJyb3IgZm9yIGludmFsaWQgZmlsZW5hbWUiKQorICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgiZXhwZWN0ZWQgT1NFcnJvciBmb3IgaW52YWxpZCBmaWxlbmFtZSIpCiAgICAgICAgICMgSW52YWxpZCBjb250ZW50cyBvZiBjb29raWVzIGZpbGUgKGVnLiBiYWQgbWFnaWMgc3RyaW5nKQogICAgICAgICAjIGNhdXNlcyBhIExvYWRFcnJvci4KICAgICAgICAgdHJ5OgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9odHRwbGliLnB5IGIvTGliL3Rlc3QvdGVzdF9odHRwbGliLnB5CmluZGV4IGZmMDMzMjEuLjJhMGIzZTMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfaHR0cGxpYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X2h0dHBsaWIucHkKQEAgLTE1OCw2ICsxNTgsMjMgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLnJlYWQoMiksIGIneHQnKQogICAgICAgICBzZWxmLmFzc2VydFRydWUocmVzcC5pc2Nsb3NlZCgpKQogCisgICAgZGVmIHRlc3RfcGFydGlhbF9yZWFkaW50b3Moc2VsZik6CisgICAgICAgICMgaWYgd2UgaGF2ZSBhIGxlbmdodCwgdGhlIHN5c3RlbSBrbm93cyB3aGVuIHRvIGNsb3NlIGl0c2VsZgorICAgICAgICAjIHNhbWUgYmVoYXZpb3VyIHRoYW4gd2hlbiB3ZSByZWFkIHRoZSB3aG9sZSB0aGluZyB3aXRoIHJlYWQoKQorICAgICAgICBib2R5ID0gIkhUVFAvMS4xIDIwMCBPa1xyXG5Db250ZW50LUxlbmd0aDogNFxyXG5cclxuVGV4dCIKKyAgICAgICAgc29jayA9IEZha2VTb2NrZXQoYm9keSkKKyAgICAgICAgcmVzcCA9IGNsaWVudC5IVFRQUmVzcG9uc2Uoc29jaykKKyAgICAgICAgcmVzcC5iZWdpbigpCisgICAgICAgIGIgPSBieXRlYXJyYXkoMikKKyAgICAgICAgbiA9IHJlc3AucmVhZGludG8oYikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuLCAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ5dGVzKGIpLCBiJ1RlJykKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShyZXNwLmlzY2xvc2VkKCkpCisgICAgICAgIG4gPSByZXNwLnJlYWRpbnRvKGIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobiwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChieXRlcyhiKSwgYid4dCcpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZXNwLmlzY2xvc2VkKCkpCisKICAgICBkZWYgdGVzdF9ob3N0X3BvcnQoc2VsZik6CiAgICAgICAgICMgQ2hlY2sgaW52YWxpZCBob3N0X3BvcnQKIApAQCAtMjA2LDYgKzIyMywyMSBAQAogICAgICAgICBpZiByZXNwLnJlYWQoKToKICAgICAgICAgICAgIHNlbGYuZmFpbCgiRGlkIG5vdCBleHBlY3QgcmVzcG9uc2UgZnJvbSBIRUFEIHJlcXVlc3QiKQogCisgICAgZGVmIHRlc3RfcmVhZGludG9faGVhZChzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoYXQgdGhlIGxpYnJhcnkgZG9lc24ndCBhdHRlbXB0IHRvIHJlYWQgYW55IGRhdGEKKyAgICAgICAgIyBmcm9tIGEgSEVBRCByZXF1ZXN0LiAgKFRpY2tsZXMgU0YgYnVnICM2MjIwNDIuKQorICAgICAgICBzb2NrID0gRmFrZVNvY2tldCgKKyAgICAgICAgICAgICdIVFRQLzEuMSAyMDAgT0tcclxuJworICAgICAgICAgICAgJ0NvbnRlbnQtTGVuZ3RoOiAxNDQzMlxyXG4nCisgICAgICAgICAgICAnXHJcbicsCisgICAgICAgICAgICBOb0VPRlN0cmluZ0lPKQorICAgICAgICByZXNwID0gY2xpZW50LkhUVFBSZXNwb25zZShzb2NrLCBtZXRob2Q9IkhFQUQiKQorICAgICAgICByZXNwLmJlZ2luKCkKKyAgICAgICAgYiA9IGJ5dGVhcnJheSg1KQorICAgICAgICBpZiByZXNwLnJlYWRpbnRvKGIpICE9IDA6CisgICAgICAgICAgICBzZWxmLmZhaWwoIkRpZCBub3QgZXhwZWN0IHJlc3BvbnNlIGZyb20gSEVBRCByZXF1ZXN0IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChieXRlcyhiKSwgYidceDAwJyo1KQorCiAgICAgZGVmIHRlc3Rfc2VuZF9maWxlKHNlbGYpOgogICAgICAgICBleHBlY3RlZCA9IChiJ0dFVCAvZm9vIEhUVFAvMS4xXHJcbkhvc3Q6IGV4YW1wbGUuY29tXHJcbicKICAgICAgICAgICAgICAgICAgICAgYidBY2NlcHQtRW5jb2Rpbmc6IGlkZW50aXR5XHJcbkNvbnRlbnQtTGVuZ3RoOicpCkBAIC0yNjEsMTUgKzI5MywyOCBAQAogICAgICAgICAgICAgJ1RyYW5zZmVyLUVuY29kaW5nOiBjaHVua2VkXHJcblxyXG4nCiAgICAgICAgICAgICAnYVxyXG4nCiAgICAgICAgICAgICAnaGVsbG8gd29ybFxyXG4nCi0gICAgICAgICAgICAnMVxyXG4nCi0gICAgICAgICAgICAnZFxyXG4nCisgICAgICAgICAgICAnM1xyXG4nCisgICAgICAgICAgICAnZCEgXHJcbicKKyAgICAgICAgICAgICc4XHJcbicKKyAgICAgICAgICAgICdhbmQgbm93IFxyXG4nCisgICAgICAgICAgICAnMjJcclxuJworICAgICAgICAgICAgJ2ZvciBzb21ldGhpbmcgY29tcGxldGVseSBkaWZmZXJlbnRcclxuJwogICAgICAgICApCisgICAgICAgIGV4cGVjdGVkID0gYidoZWxsbyB3b3JsZCEgYW5kIG5vdyBmb3Igc29tZXRoaW5nIGNvbXBsZXRlbHkgZGlmZmVyZW50JwogICAgICAgICBzb2NrID0gRmFrZVNvY2tldChjaHVua2VkX3N0YXJ0ICsgJzBcclxuJykKICAgICAgICAgcmVzcCA9IGNsaWVudC5IVFRQUmVzcG9uc2Uoc29jaywgbWV0aG9kPSJHRVQiKQogICAgICAgICByZXNwLmJlZ2luKCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLnJlYWQoKSwgYidoZWxsbyB3b3JsZCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzcC5yZWFkKCksIGV4cGVjdGVkKQogICAgICAgICByZXNwLmNsb3NlKCkKIAorICAgICAgICAjIFZhcmlvdXMgcmVhZCBzaXplcworICAgICAgICBmb3IgbiBpbiByYW5nZSgxLCAxMik6CisgICAgICAgICAgICBzb2NrID0gRmFrZVNvY2tldChjaHVua2VkX3N0YXJ0ICsgJzBcclxuJykKKyAgICAgICAgICAgIHJlc3AgPSBjbGllbnQuSFRUUFJlc3BvbnNlKHNvY2ssIG1ldGhvZD0iR0VUIikKKyAgICAgICAgICAgIHJlc3AuYmVnaW4oKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLnJlYWQobikgKyByZXNwLnJlYWQobikgKyByZXNwLnJlYWQoKSwgZXhwZWN0ZWQpCisgICAgICAgICAgICByZXNwLmNsb3NlKCkKKwogICAgICAgICBmb3IgeCBpbiAoJycsICdmb29cclxuJyk6CiAgICAgICAgICAgICBzb2NrID0gRmFrZVNvY2tldChjaHVua2VkX3N0YXJ0ICsgeCkKICAgICAgICAgICAgIHJlc3AgPSBjbGllbnQuSFRUUFJlc3BvbnNlKHNvY2ssIG1ldGhvZD0iR0VUIikKQEAgLTI3Nyw5ICszMjIsNjQgQEAKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICByZXNwLnJlYWQoKQogICAgICAgICAgICAgZXhjZXB0IGNsaWVudC5JbmNvbXBsZXRlUmVhZCBhcyBpOgotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaS5wYXJ0aWFsLCBiJ2hlbGxvIHdvcmxkJykKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIoaSksJ0luY29tcGxldGVSZWFkKDExIGJ5dGVzIHJlYWQpJykKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihpKSwnSW5jb21wbGV0ZVJlYWQoMTEgYnl0ZXMgcmVhZCknKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaS5wYXJ0aWFsLCBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICBleHBlY3RlZF9tZXNzYWdlID0gJ0luY29tcGxldGVSZWFkKCVkIGJ5dGVzIHJlYWQpJyAlIGxlbihleHBlY3RlZCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIoaSksIGV4cGVjdGVkX21lc3NhZ2UpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoaSksIGV4cGVjdGVkX21lc3NhZ2UpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgnSW5jb21wbGV0ZVJlYWQgZXhwZWN0ZWQnKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICByZXNwLmNsb3NlKCkKKworICAgIGRlZiB0ZXN0X3JlYWRpbnRvX2NodW5rZWQoc2VsZik6CisgICAgICAgIGNodW5rZWRfc3RhcnQgPSAoCisgICAgICAgICAgICAnSFRUUC8xLjEgMjAwIE9LXHJcbicKKyAgICAgICAgICAgICdUcmFuc2Zlci1FbmNvZGluZzogY2h1bmtlZFxyXG5cclxuJworICAgICAgICAgICAgJ2FcclxuJworICAgICAgICAgICAgJ2hlbGxvIHdvcmxcclxuJworICAgICAgICAgICAgJzNcclxuJworICAgICAgICAgICAgJ2QhIFxyXG4nCisgICAgICAgICAgICAnOFxyXG4nCisgICAgICAgICAgICAnYW5kIG5vdyBcclxuJworICAgICAgICAgICAgJzIyXHJcbicKKyAgICAgICAgICAgICdmb3Igc29tZXRoaW5nIGNvbXBsZXRlbHkgZGlmZmVyZW50XHJcbicKKyAgICAgICAgKQorICAgICAgICBleHBlY3RlZCA9IGInaGVsbG8gd29ybGQhIGFuZCBub3cgZm9yIHNvbWV0aGluZyBjb21wbGV0ZWx5IGRpZmZlcmVudCcKKyAgICAgICAgbmV4cGVjdGVkID0gbGVuKGV4cGVjdGVkKQorICAgICAgICBiID0gYnl0ZWFycmF5KDEyOCkKKworICAgICAgICBzb2NrID0gRmFrZVNvY2tldChjaHVua2VkX3N0YXJ0ICsgJzBcclxuJykKKyAgICAgICAgcmVzcCA9IGNsaWVudC5IVFRQUmVzcG9uc2Uoc29jaywgbWV0aG9kPSJHRVQiKQorICAgICAgICByZXNwLmJlZ2luKCkKKyAgICAgICAgbiA9IHJlc3AucmVhZGludG8oYikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiWzpuZXhwZWN0ZWRdLCBleHBlY3RlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuLCBuZXhwZWN0ZWQpCisgICAgICAgIHJlc3AuY2xvc2UoKQorCisgICAgICAgICMgVmFyaW91cyByZWFkIHNpemVzCisgICAgICAgIGZvciBuIGluIHJhbmdlKDEsIDEyKToKKyAgICAgICAgICAgIHNvY2sgPSBGYWtlU29ja2V0KGNodW5rZWRfc3RhcnQgKyAnMFxyXG4nKQorICAgICAgICAgICAgcmVzcCA9IGNsaWVudC5IVFRQUmVzcG9uc2Uoc29jaywgbWV0aG9kPSJHRVQiKQorICAgICAgICAgICAgcmVzcC5iZWdpbigpCisgICAgICAgICAgICBtID0gbWVtb3J5dmlldyhiKQorICAgICAgICAgICAgaSA9IHJlc3AucmVhZGludG8obVswOm5dKQorICAgICAgICAgICAgaSArPSByZXNwLnJlYWRpbnRvKG1baTpuICsgaV0pCisgICAgICAgICAgICBpICs9IHJlc3AucmVhZGludG8obVtpOl0pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJbOm5leHBlY3RlZF0sIGV4cGVjdGVkKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpLCBuZXhwZWN0ZWQpCisgICAgICAgICAgICByZXNwLmNsb3NlKCkKKworICAgICAgICBmb3IgeCBpbiAoJycsICdmb29cclxuJyk6CisgICAgICAgICAgICBzb2NrID0gRmFrZVNvY2tldChjaHVua2VkX3N0YXJ0ICsgeCkKKyAgICAgICAgICAgIHJlc3AgPSBjbGllbnQuSFRUUFJlc3BvbnNlKHNvY2ssIG1ldGhvZD0iR0VUIikKKyAgICAgICAgICAgIHJlc3AuYmVnaW4oKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIG4gPSByZXNwLnJlYWRpbnRvKGIpCisgICAgICAgICAgICBleGNlcHQgY2xpZW50LkluY29tcGxldGVSZWFkIGFzIGk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpLnBhcnRpYWwsIGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIGV4cGVjdGVkX21lc3NhZ2UgPSAnSW5jb21wbGV0ZVJlYWQoJWQgYnl0ZXMgcmVhZCknICUgbGVuKGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVwcihpKSwgZXhwZWN0ZWRfbWVzc2FnZSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihpKSwgZXhwZWN0ZWRfbWVzc2FnZSkKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdJbmNvbXBsZXRlUmVhZCBleHBlY3RlZCcpCiAgICAgICAgICAgICBmaW5hbGx5OgpAQCAtMzAyLDYgKzQwMiwyNiBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3AucmVhc29uLCAnT0snKQogICAgICAgICBzZWxmLmFzc2VydFRydWUocmVzcC5pc2Nsb3NlZCgpKQogCisgICAgZGVmIHRlc3RfcmVhZGludG9fY2h1bmtlZF9oZWFkKHNlbGYpOgorICAgICAgICBjaHVua2VkX3N0YXJ0ID0gKAorICAgICAgICAgICAgJ0hUVFAvMS4xIDIwMCBPS1xyXG4nCisgICAgICAgICAgICAnVHJhbnNmZXItRW5jb2Rpbmc6IGNodW5rZWRcclxuXHJcbicKKyAgICAgICAgICAgICdhXHJcbicKKyAgICAgICAgICAgICdoZWxsbyB3b3JsZFxyXG4nCisgICAgICAgICAgICAnMVxyXG4nCisgICAgICAgICAgICAnZFxyXG4nCisgICAgICAgICkKKyAgICAgICAgc29jayA9IEZha2VTb2NrZXQoY2h1bmtlZF9zdGFydCArICcwXHJcbicpCisgICAgICAgIHJlc3AgPSBjbGllbnQuSFRUUFJlc3BvbnNlKHNvY2ssIG1ldGhvZD0iSEVBRCIpCisgICAgICAgIHJlc3AuYmVnaW4oKQorICAgICAgICBiID0gYnl0ZWFycmF5KDUpCisgICAgICAgIG4gPSByZXNwLnJlYWRpbnRvKGIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobiwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChieXRlcyhiKSwgYidceDAwJyo1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3Auc3RhdHVzLCAyMDApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzcC5yZWFzb24sICdPSycpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZXNwLmlzY2xvc2VkKCkpCisKICAgICBkZWYgdGVzdF9uZWdhdGl2ZV9jb250ZW50X2xlbmd0aChzZWxmKToKICAgICAgICAgc29jayA9IEZha2VTb2NrZXQoCiAgICAgICAgICAgICAnSFRUUC8xLjEgMjAwIE9LXHJcbkNvbnRlbnQtTGVuZ3RoOiAtMVxyXG5cclxuSGVsbG9cclxuJykKQEAgLTUwOCw4ICs2MjgsNyBAQAogICAgIGRlZiB0ZXN0X2xvY2FsX2dvb2RfaG9zdG5hbWUoc2VsZik6CiAgICAgICAgICMgVGhlICh2YWxpZCkgY2VydCB2YWxpZGF0ZXMgdGhlIEhUVFAgaG9zdG5hbWUKICAgICAgICAgaW1wb3J0IHNzbAotICAgICAgICBmcm9tIHRlc3Quc3NsX3NlcnZlcnMgaW1wb3J0IG1ha2VfaHR0cHNfc2VydmVyCi0gICAgICAgIHNlcnZlciA9IG1ha2VfaHR0cHNfc2VydmVyKHNlbGYsIENFUlRfbG9jYWxob3N0KQorICAgICAgICBzZXJ2ZXIgPSBzZWxmLm1ha2Vfc2VydmVyKENFUlRfbG9jYWxob3N0KQogICAgICAgICBjb250ZXh0ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQogICAgICAgICBjb250ZXh0LnZlcmlmeV9tb2RlID0gc3NsLkNFUlRfUkVRVUlSRUQKICAgICAgICAgY29udGV4dC5sb2FkX3ZlcmlmeV9sb2NhdGlvbnMoQ0VSVF9sb2NhbGhvc3QpCkBAIC01MTcsMTIgKzYzNiwxMiBAQAogICAgICAgICBoLnJlcXVlc3QoJ0dFVCcsICcvbm9uZXhpc3RlbnQnKQogICAgICAgICByZXNwID0gaC5nZXRyZXNwb25zZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzcC5zdGF0dXMsIDQwNCkKKyAgICAgICAgZGVsIHNlcnZlcgogCiAgICAgZGVmIHRlc3RfbG9jYWxfYmFkX2hvc3RuYW1lKHNlbGYpOgogICAgICAgICAjIFRoZSAodmFsaWQpIGNlcnQgZG9lc24ndCB2YWxpZGF0ZSB0aGUgSFRUUCBob3N0bmFtZQogICAgICAgICBpbXBvcnQgc3NsCi0gICAgICAgIGZyb20gdGVzdC5zc2xfc2VydmVycyBpbXBvcnQgbWFrZV9odHRwc19zZXJ2ZXIKLSAgICAgICAgc2VydmVyID0gbWFrZV9odHRwc19zZXJ2ZXIoc2VsZiwgQ0VSVF9mYWtlaG9zdG5hbWUpCisgICAgICAgIHNlcnZlciA9IHNlbGYubWFrZV9zZXJ2ZXIoQ0VSVF9mYWtlaG9zdG5hbWUpCiAgICAgICAgIGNvbnRleHQgPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfVExTdjEpCiAgICAgICAgIGNvbnRleHQudmVyaWZ5X21vZGUgPSBzc2wuQ0VSVF9SRVFVSVJFRAogICAgICAgICBjb250ZXh0LmxvYWRfdmVyaWZ5X2xvY2F0aW9ucyhDRVJUX2Zha2Vob3N0bmFtZSkKQEAgLTU0MCw2ICs2NTksNyBAQAogICAgICAgICBoLnJlcXVlc3QoJ0dFVCcsICcvbm9uZXhpc3RlbnQnKQogICAgICAgICByZXNwID0gaC5nZXRyZXNwb25zZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzcC5zdGF0dXMsIDQwNCkKKyAgICAgICAgZGVsIHNlcnZlcgogCiAgICAgQHVuaXR0ZXN0LnNraXBJZihub3QgaGFzYXR0cihjbGllbnQsICdIVFRQU0Nvbm5lY3Rpb24nKSwKICAgICAgICAgICAgICAgICAgICAgICdodHRwLmNsaWVudC5IVFRQU0Nvbm5lY3Rpb24gbm90IGF2YWlsYWJsZScpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2h0dHBzZXJ2ZXJzLnB5IGIvTGliL3Rlc3QvdGVzdF9odHRwc2VydmVycy5weQppbmRleCBlODNjMDQ4Li5jYzE1ZGQ2IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2h0dHBzZXJ2ZXJzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfaHR0cHNlcnZlcnMucHkKQEAgLTQ2NSw2ICs0NjUsMjMgQEAKICAgICAgICAgc2VsZi5zZW5kX2Vycm9yKDQxNykKICAgICAgICAgcmV0dXJuIEZhbHNlCiAKKworY2xhc3MgQXVkaXRhYmxlQnl0ZXNJTzoKKworICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgc2VsZi5kYXRhcyA9IFtdCisKKyAgICBkZWYgd3JpdGUoc2VsZiwgZGF0YSk6CisgICAgICAgIHNlbGYuZGF0YXMuYXBwZW5kKGRhdGEpCisKKyAgICBkZWYgZ2V0RGF0YShzZWxmKToKKyAgICAgICAgcmV0dXJuIGInJy5qb2luKHNlbGYuZGF0YXMpCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgbnVtV3JpdGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gbGVuKHNlbGYuZGF0YXMpCisKKwogY2xhc3MgQmFzZUhUVFBSZXF1ZXN0SGFuZGxlclRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAiIiJUZXN0IHRoZSBmdW5jdGlvbmFsaXR5IG9mIHRoZSBCYXNlSFRUUFNlcnZlci4KIApAQCAtNTMxLDI3ICs1NDgsNDkgQEAKICAgICAgICAgc2VsZi52ZXJpZnlfZ2V0X2NhbGxlZCgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0Wy0xXSwgYic8aHRtbD48Ym9keT5EYXRhPC9ib2R5PjwvaHRtbD5cclxuJykKIAotICAgIGRlZiB0ZXN0X2hlYWRlcl9idWZmZXJpbmcoc2VsZik6Ci0KLSAgICAgICAgZGVmIF9yZWFkQW5kUmVzZWVrKGYpOgotICAgICAgICAgICAgcG9zID0gZi50ZWxsKCkKLSAgICAgICAgICAgIGYuc2VlaygwKQotICAgICAgICAgICAgZGF0YSA9IGYucmVhZCgpCi0gICAgICAgICAgICBmLnNlZWsocG9zKQotICAgICAgICAgICAgcmV0dXJuIGRhdGEKKyAgICBkZWYgdGVzdF9oZWFkZXJfYnVmZmVyaW5nX29mX3NlbmRfZXJyb3Ioc2VsZik6CiAKICAgICAgICAgaW5wdXQgPSBCeXRlc0lPKGInR0VUIC8gSFRUUC8xLjFcclxuXHJcbicpCi0gICAgICAgIG91dHB1dCA9IEJ5dGVzSU8oKQotICAgICAgICBzZWxmLmhhbmRsZXIucmZpbGUgPSBpbnB1dAotICAgICAgICBzZWxmLmhhbmRsZXIud2ZpbGUgPSBvdXRwdXQKLSAgICAgICAgc2VsZi5oYW5kbGVyLnJlcXVlc3RfdmVyc2lvbiA9ICdIVFRQLzEuMScKKyAgICAgICAgb3V0cHV0ID0gQXVkaXRhYmxlQnl0ZXNJTygpCisgICAgICAgIGhhbmRsZXIgPSBTb2NrZXRsZXNzUmVxdWVzdEhhbmRsZXIoKQorICAgICAgICBoYW5kbGVyLnJmaWxlID0gaW5wdXQKKyAgICAgICAgaGFuZGxlci53ZmlsZSA9IG91dHB1dAorICAgICAgICBoYW5kbGVyLnJlcXVlc3RfdmVyc2lvbiA9ICdIVFRQLzEuMScKKyAgICAgICAgaGFuZGxlci5yZXF1ZXN0bGluZSA9ICcnCisgICAgICAgIGhhbmRsZXIuY29tbWFuZCA9IE5vbmUKIAotICAgICAgICBzZWxmLmhhbmRsZXIuc2VuZF9oZWFkZXIoJ0ZvbycsICdmb28nKQotICAgICAgICBzZWxmLmhhbmRsZXIuc2VuZF9oZWFkZXIoJ2JhcicsICdiYXInKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKF9yZWFkQW5kUmVzZWVrKG91dHB1dCksIGInJykKLSAgICAgICAgc2VsZi5oYW5kbGVyLmVuZF9oZWFkZXJzKCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChfcmVhZEFuZFJlc2VlayhvdXRwdXQpLAotICAgICAgICAgICAgICAgICAgICAgICAgIGInRm9vOiBmb29cclxuYmFyOiBiYXJcclxuXHJcbicpCisgICAgICAgIGhhbmRsZXIuc2VuZF9lcnJvcig0MTgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0cHV0Lm51bVdyaXRlcywgMikKKworICAgIGRlZiB0ZXN0X2hlYWRlcl9idWZmZXJpbmdfb2Zfc2VuZF9yZXNwb25zZV9vbmx5KHNlbGYpOgorCisgICAgICAgIGlucHV0ID0gQnl0ZXNJTyhiJ0dFVCAvIEhUVFAvMS4xXHJcblxyXG4nKQorICAgICAgICBvdXRwdXQgPSBBdWRpdGFibGVCeXRlc0lPKCkKKyAgICAgICAgaGFuZGxlciA9IFNvY2tldGxlc3NSZXF1ZXN0SGFuZGxlcigpCisgICAgICAgIGhhbmRsZXIucmZpbGUgPSBpbnB1dAorICAgICAgICBoYW5kbGVyLndmaWxlID0gb3V0cHV0CisgICAgICAgIGhhbmRsZXIucmVxdWVzdF92ZXJzaW9uID0gJ0hUVFAvMS4xJworCisgICAgICAgIGhhbmRsZXIuc2VuZF9yZXNwb25zZV9vbmx5KDQxOCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQubnVtV3JpdGVzLCAwKQorICAgICAgICBoYW5kbGVyLmVuZF9oZWFkZXJzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQubnVtV3JpdGVzLCAxKQorCisgICAgZGVmIHRlc3RfaGVhZGVyX2J1ZmZlcmluZ19vZl9zZW5kX2hlYWRlcihzZWxmKToKKworICAgICAgICBpbnB1dCA9IEJ5dGVzSU8oYidHRVQgLyBIVFRQLzEuMVxyXG5cclxuJykKKyAgICAgICAgb3V0cHV0ID0gQXVkaXRhYmxlQnl0ZXNJTygpCisgICAgICAgIGhhbmRsZXIgPSBTb2NrZXRsZXNzUmVxdWVzdEhhbmRsZXIoKQorICAgICAgICBoYW5kbGVyLnJmaWxlID0gaW5wdXQKKyAgICAgICAgaGFuZGxlci53ZmlsZSA9IG91dHB1dAorICAgICAgICBoYW5kbGVyLnJlcXVlc3RfdmVyc2lvbiA9ICdIVFRQLzEuMScKKworICAgICAgICBoYW5kbGVyLnNlbmRfaGVhZGVyKCdGb28nLCAnZm9vJykKKyAgICAgICAgaGFuZGxlci5zZW5kX2hlYWRlcignYmFyJywgJ2JhcicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0cHV0Lm51bVdyaXRlcywgMCkKKyAgICAgICAgaGFuZGxlci5lbmRfaGVhZGVycygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0cHV0LmdldERhdGEoKSwgYidGb286IGZvb1xyXG5iYXI6IGJhclxyXG5cclxuJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQubnVtV3JpdGVzLCAxKQogCiAgICAgZGVmIHRlc3RfaGVhZGVyX3VuYnVmZmVyZWRfd2hlbl9jb250aW51ZShzZWxmKToKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9pbWFwbGliLnB5IGIvTGliL3Rlc3QvdGVzdF9pbWFwbGliLnB5CmluZGV4IDgwMzQwMDAuLmM0YzdlY2MgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfaW1hcGxpYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X2ltYXBsaWIucHkKQEAgLTI1OCwxMSArMjU4LDU4IEBACiAgICAgcG9ydCA9IDk5MwogICAgIGltYXBfY2xhc3MgPSBJTUFQNF9TU0wKIAorICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgcGFzcworCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgY3JlYXRlX3NzbF9jb250ZXh0KHNlbGYpOgorICAgICAgICBzc2xfY29udGV4dCA9IHNzbC5TU0xDb250ZXh0KHNzbC5QUk9UT0NPTF9TU0x2MjMpCisgICAgICAgIHNzbF9jb250ZXh0LmxvYWRfY2VydF9jaGFpbihDRVJURklMRSkKKyAgICAgICAgcmV0dXJuIHNzbF9jb250ZXh0CisKKyAgICBkZWYgY2hlY2tfbG9naW5jYXBhKHNlbGYsIHNlcnZlcik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGZvciBjYXAgaW4gc2VydmVyLmNhcGFiaWxpdGllczoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoY2FwLCBzdHIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKCdMT0dJTkRJU0FCTEVEJyBpbiBzZXJ2ZXIuY2FwYWJpbGl0aWVzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKCdBVVRIPVBMQUlOJyBpbiBzZXJ2ZXIuY2FwYWJpbGl0aWVzKQorICAgICAgICAgICAgcnMgPSBzZXJ2ZXIubG9naW4oc2VsZi51c2VybmFtZSwgc2VsZi5wYXNzd29yZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocnNbMF0sICdPSycpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzZXJ2ZXIubG9nb3V0KCkKKwogICAgIGRlZiB0ZXN0X2xvZ2luY2FwYShzZWxmKToKLSAgICAgICAgZm9yIGNhcCBpbiBzZWxmLnNlcnZlci5jYXBhYmlsaXRpZXM6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoY2FwLCBzdHIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoJ0xPR0lORElTQUJMRUQnIGluIHNlbGYuc2VydmVyLmNhcGFiaWxpdGllcykKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKCdBVVRIPVBMQUlOJyBpbiBzZWxmLnNlcnZlci5jYXBhYmlsaXRpZXMpCisgICAgICAgIHdpdGggdHJhbnNpZW50X2ludGVybmV0KHNlbGYuaG9zdCk6CisgICAgICAgICAgICBfc2VydmVyID0gc2VsZi5pbWFwX2NsYXNzKHNlbGYuaG9zdCwgc2VsZi5wb3J0KQorICAgICAgICAgICAgc2VsZi5jaGVja19sb2dpbmNhcGEoX3NlcnZlcikKKworICAgIGRlZiB0ZXN0X2xvZ2luY2FwYV93aXRoX2NsaWVudF9jZXJ0ZmlsZShzZWxmKToKKyAgICAgICAgd2l0aCB0cmFuc2llbnRfaW50ZXJuZXQoc2VsZi5ob3N0KToKKyAgICAgICAgICAgIF9zZXJ2ZXIgPSBzZWxmLmltYXBfY2xhc3Moc2VsZi5ob3N0LCBzZWxmLnBvcnQsIGNlcnRmaWxlPUNFUlRGSUxFKQorICAgICAgICAgICAgc2VsZi5jaGVja19sb2dpbmNhcGEoX3NlcnZlcikKKworICAgIGRlZiB0ZXN0X2xvZ2luY2FwYV93aXRoX2NsaWVudF9zc2xfY29udGV4dChzZWxmKToKKyAgICAgICAgd2l0aCB0cmFuc2llbnRfaW50ZXJuZXQoc2VsZi5ob3N0KToKKyAgICAgICAgICAgIF9zZXJ2ZXIgPSBzZWxmLmltYXBfY2xhc3Moc2VsZi5ob3N0LCBzZWxmLnBvcnQsIHNzbF9jb250ZXh0PXNlbGYuY3JlYXRlX3NzbF9jb250ZXh0KCkpCisgICAgICAgICAgICBzZWxmLmNoZWNrX2xvZ2luY2FwYShfc2VydmVyKQorCisgICAgZGVmIHRlc3RfbG9nb3V0KHNlbGYpOgorICAgICAgICB3aXRoIHRyYW5zaWVudF9pbnRlcm5ldChzZWxmLmhvc3QpOgorICAgICAgICAgICAgX3NlcnZlciA9IHNlbGYuaW1hcF9jbGFzcyhzZWxmLmhvc3QsIHNlbGYucG9ydCkKKyAgICAgICAgICAgIHJzID0gX3NlcnZlci5sb2dvdXQoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyc1swXSwgJ0JZRScpCisKKyAgICBkZWYgdGVzdF9zc2xfY29udGV4dF9jZXJ0ZmlsZV9leGNsdXNpdmUoc2VsZik6CisgICAgICAgIHdpdGggdHJhbnNpZW50X2ludGVybmV0KHNlbGYuaG9zdCk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzZWxmLmltYXBfY2xhc3MsIHNlbGYuaG9zdCwgc2VsZi5wb3J0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VydGZpbGU9Q0VSVEZJTEUsIHNzbF9jb250ZXh0PXNlbGYuY3JlYXRlX3NzbF9jb250ZXh0KCkpCisKKyAgICBkZWYgdGVzdF9zc2xfY29udGV4dF9rZXlmaWxlX2V4Y2x1c2l2ZShzZWxmKToKKyAgICAgICAgd2l0aCB0cmFuc2llbnRfaW50ZXJuZXQoc2VsZi5ob3N0KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGYuaW1hcF9jbGFzcywgc2VsZi5ob3N0LCBzZWxmLnBvcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXlmaWxlPUNFUlRGSUxFLCBzc2xfY29udGV4dD1zZWxmLmNyZWF0ZV9zc2xfY29udGV4dCgpKQogCiAKIGRlZiB0ZXN0X21haW4oKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfaW1wLnB5IGIvTGliL3Rlc3QvdGVzdF9pbXAucHkKaW5kZXggNTUxYWQxYi4uY2QzNGE0NiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9pbXAucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9pbXAucHkKQEAgLTU4LDYgKzU4LDEyIEBACiAgICAgICAgICAgICB3aXRoIGltcC5maW5kX21vZHVsZSgnbW9kdWxlXycgKyBtb2QsIHNlbGYudGVzdF9wYXRoKVswXSBhcyBmZDoKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZkLmVuY29kaW5nLCBlbmNvZGluZykKIAorICAgICAgICBwYXRoID0gW29zLnBhdGguZGlybmFtZShfX2ZpbGVfXyldCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoU3ludGF4RXJyb3IsCisgICAgICAgICAgICByIk5vbi1VVEYtOCBjb2RlIHN0YXJ0aW5nIHdpdGggJ1xceGY2JyIKKyAgICAgICAgICAgIHIiIGluIGZpbGUgLipiYWRzeW50YXhfcGVwMzEyMC5weSIsCisgICAgICAgICAgICBpbXAuZmluZF9tb2R1bGUsICdiYWRzeW50YXhfcGVwMzEyMCcsIHBhdGgpCisKICAgICBkZWYgdGVzdF9pc3N1ZTEyNjcoc2VsZik6CiAgICAgICAgIGZvciBtb2QsIGVuY29kaW5nLCBfIGluIHNlbGYudGVzdF9zdHJpbmdzOgogICAgICAgICAgICAgZnAsIGZpbGVuYW1lLCBpbmZvICA9IGltcC5maW5kX21vZHVsZSgnbW9kdWxlXycgKyBtb2QsCkBAIC0yMTUsNiArMjIxLDEwIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICBpbXAuY2FjaGVfZnJvbV9zb3VyY2UoJy9mb28vYmFyL2Jhei9xdXgucHknLCBUcnVlKSwKICAgICAgICAgICAgICcvZm9vL2Jhci9iYXovX19weWNhY2hlX18vcXV4Lnt9LnB5YycuZm9ybWF0KHNlbGYudGFnKSkKKyAgICAgICAgIyBEaXJlY3Rvcnkgd2l0aCBhIGRvdCwgZmlsZW5hbWUgd2l0aG91dCBkb3QKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIGltcC5jYWNoZV9mcm9tX3NvdXJjZSgnL2Zvby5iYXIvZmlsZScsIFRydWUpLAorICAgICAgICAgICAgJy9mb28uYmFyL19fcHljYWNoZV9fL2ZpbGV7fS5weWMnLmZvcm1hdChzZWxmLnRhZykpCiAKICAgICBkZWYgdGVzdF9jYWNoZV9mcm9tX3NvdXJjZV9vcHRpbWl6ZWQoc2VsZik6CiAgICAgICAgICMgR2l2ZW4gdGhlIHBhdGggdG8gYSAucHkgZmlsZSwgcmV0dXJuIHRoZSBwYXRoIHRvIGl0cyBQRVAgMzE0NwpAQCAtMzE0LDE0ICszMjQsMTYgQEAKICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoJ3BlcDMxNDcnKQogICAgICAgICBzZWxmLmFkZENsZWFudXAoY2xlYW51cCkKICAgICAgICAgIyBUb3VjaCB0aGUgX19pbml0X18ucHkgZmlsZS4KLSAgICAgICAgd2l0aCBvcGVuKCdwZXAzMTQ3L19faW5pdF9fLnB5JywgJ3cnKToKLSAgICAgICAgICAgIHBhc3MKKyAgICAgICAgc3VwcG9ydC5jcmVhdGVfZW1wdHlfZmlsZSgncGVwMzE0Ny9fX2luaXRfXy5weScpCisgICAgICAgIGltcG9ydGxpYi5pbnZhbGlkYXRlX2NhY2hlcygpCisgICAgICAgIGV4cGVjdGVkX19fZmlsZV9fID0gb3Muc2VwLmpvaW4oKCcuJywgJ3BlcDMxNDcnLCAnX19pbml0X18ucHknKSkKICAgICAgICAgbSA9IF9faW1wb3J0X18oJ3BlcDMxNDcnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0uX19maWxlX18sIGV4cGVjdGVkX19fZmlsZV9fLCAobS5fX2ZpbGVfXywgbS5fX3BhdGhfXywgc3lzLnBhdGgsIHN5cy5wYXRoX2ltcG9ydGVyX2NhY2hlKSkKICAgICAgICAgIyBFbnN1cmUgd2UgbG9hZCB0aGUgcHljIGZpbGUuCi0gICAgICAgIHN1cHBvcnQuZm9yZ2V0KCdwZXAzMTQ3JykKKyAgICAgICAgc3VwcG9ydC51bmxvYWQoJ3BlcDMxNDcnKQogICAgICAgICBtID0gX19pbXBvcnRfXygncGVwMzE0NycpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5fX2ZpbGVfXywKLSAgICAgICAgICAgICAgICAgICAgICAgICBvcy5zZXAuam9pbigoJy4nLCAncGVwMzE0NycsICdfX2luaXRfXy5weScpKSkKKyAgICAgICAgc3VwcG9ydC51bmxvYWQoJ3BlcDMxNDcnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0uX19maWxlX18sIGV4cGVjdGVkX19fZmlsZV9fLCAobS5fX2ZpbGVfXywgbS5fX3BhdGhfXywgc3lzLnBhdGgsIHN5cy5wYXRoX2ltcG9ydGVyX2NhY2hlKSkKIAogCiBjbGFzcyBOdWxsSW1wb3J0ZXJUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2ltcG9ydC5weSBiL0xpYi90ZXN0L3Rlc3RfaW1wb3J0LnB5CmluZGV4IDQ4NDQzZWEuLmJkMmRhNzIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfaW1wb3J0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfaW1wb3J0LnB5CkBAIC0yLDYgKzIsNyBAQAogaW1wb3J0IGltcAogZnJvbSBpbXBvcnRsaWIudGVzdC5pbXBvcnRfIGltcG9ydCB0ZXN0X3JlbGF0aXZlX2ltcG9ydHMKIGZyb20gaW1wb3J0bGliLnRlc3QuaW1wb3J0XyBpbXBvcnQgdXRpbCBhcyBpbXBvcnRsaWJfdXRpbAoraW1wb3J0IGltcG9ydGxpYgogaW1wb3J0IG1hcnNoYWwKIGltcG9ydCBvcwogaW1wb3J0IHBsYXRmb3JtCkBAIC0xNiw3ICsxNyw3IEBACiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgKAogICAgIEVudmlyb25tZW50VmFyR3VhcmQsIFRFU1RGTiwgY2hlY2tfd2FybmluZ3MsIGZvcmdldCwgaXNfanl0aG9uLAogICAgIG1ha2VfbGVnYWN5X3B5Yywgcm10cmVlLCBydW5fdW5pdHRlc3QsIHN3YXBfYXR0ciwgc3dhcF9pdGVtLCB0ZW1wX3VtYXNrLAotICAgIHVubGluaywgdW5sb2FkKQorICAgIHVubGluaywgdW5sb2FkLCBjcmVhdGVfZW1wdHlfZmlsZSkKIGZyb20gdGVzdCBpbXBvcnQgc2NyaXB0X2hlbHBlcgogCiAKQEAgLTM0LDYgKzM1LDcgQEAKIAogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgcmVtb3ZlX2ZpbGVzKFRFU1RGTikKKyAgICAgICAgaW1wb3J0bGliLmludmFsaWRhdGVfY2FjaGVzKCkKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKICAgICAgICAgdW5sb2FkKFRFU1RGTikKQEAgLTk4LDI1ICsxMDAsMjQgQEAKIAogICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKG9zLm5hbWUgPT0gJ3Bvc2l4JywKICAgICAgICAgICAgICAgICAgICAgICAgICAidGVzdCBtZWFuaW5nZnVsIG9ubHkgb24gcG9zaXggc3lzdGVtcyIpCi0gICAgZGVmIHRlc3RfZXhlY3V0ZV9iaXRfbm90X2NvcGllZChzZWxmKToKLSAgICAgICAgIyBJc3N1ZSA2MDcwOiB1bmRlciBwb3NpeCAucHljIGZpbGVzIGdvdCB0aGVpciBleGVjdXRlIGJpdCBzZXQgaWYKLSAgICAgICAgIyB0aGUgLnB5IGZpbGUgaGFkIHRoZSBleGVjdXRlIGJpdCBzZXQsIGJ1dCB0aGV5IGFyZW4ndCBleGVjdXRhYmxlLgotICAgICAgICB3aXRoIHRlbXBfdW1hc2soMG8wMjIpOgorICAgIGRlZiB0ZXN0X2NyZWF0aW9uX21vZGUoc2VsZik6CisgICAgICAgIG1hc2sgPSAwbzAyMgorICAgICAgICB3aXRoIHRlbXBfdW1hc2sobWFzayk6CiAgICAgICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgb3MuY3VyZGlyKQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIGZuYW1lID0gVEVTVEZOICsgb3MuZXh0c2VwICsgInB5IgotICAgICAgICAgICAgICAgIG9wZW4oZm5hbWUsICd3JykuY2xvc2UoKQotICAgICAgICAgICAgICAgIG9zLmNobW9kKGZuYW1lLCAoc3RhdC5TX0lSVVNSIHwgc3RhdC5TX0lSR1JQIHwgc3RhdC5TX0lST1RIIHwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXQuU19JWFVTUiB8IHN0YXQuU19JWEdSUCB8IHN0YXQuU19JWE9USCkpCisgICAgICAgICAgICAgICAgY3JlYXRlX2VtcHR5X2ZpbGUoZm5hbWUpCiAgICAgICAgICAgICAgICAgZm4gPSBpbXAuY2FjaGVfZnJvbV9zb3VyY2UoZm5hbWUpCiAgICAgICAgICAgICAgICAgdW5saW5rKGZuKQorICAgICAgICAgICAgICAgIGltcG9ydGxpYi5pbnZhbGlkYXRlX2NhY2hlcygpCiAgICAgICAgICAgICAgICAgX19pbXBvcnRfXyhURVNURk4pCiAgICAgICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGZuKToKICAgICAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJfX2ltcG9ydF9fIGRpZCBub3QgcmVzdWx0IGluIGNyZWF0aW9uIG9mICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJlaXRoZXIgYSAucHljIG9yIC5weW8gZmlsZSIpCiAgICAgICAgICAgICAgICAgcyA9IG9zLnN0YXQoZm4pCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGF0LlNfSU1PREUocy5zdF9tb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXQuU19JUlVTUiB8IHN0YXQuU19JUkdSUCB8IHN0YXQuU19JUk9USCkKKyAgICAgICAgICAgICAgICAjIENoZWNrIHRoYXQgdGhlIHVtYXNrIGlzIHJlc3BlY3RlZCwgYW5kIHRoZSBleGVjdXRhYmxlIGJpdHMKKyAgICAgICAgICAgICAgICAjIGFyZW4ndCBzZXQuCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGF0LlNfSU1PREUocy5zdF9tb2RlKSwgMG82NjYgJiB+bWFzaykKICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgZGVsIHN5cy5wYXRoWzBdCiAgICAgICAgICAgICAgICAgcmVtb3ZlX2ZpbGVzKFRFU1RGTikKQEAgLTI2Miw2ICsyNjMsNyBAQAogICAgICAgICAgICAgb3MucmVtb3ZlKHNvdXJjZSkKICAgICAgICAgICAgIGRlbCBzeXMubW9kdWxlc1tURVNURk5dCiAgICAgICAgICAgICBtYWtlX2xlZ2FjeV9weWMoc291cmNlKQorICAgICAgICAgICAgaW1wb3J0bGliLmludmFsaWRhdGVfY2FjaGVzKCkKICAgICAgICAgICAgIG1vZCA9IF9faW1wb3J0X18oVEVTVEZOKQogICAgICAgICAgICAgYmFzZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChtb2QuX19maWxlX18pCiAgICAgICAgICAgICBzZWxmLmFzc2VydEluKGV4dCwgKCcucHljJywgJy5weW8nKSkKQEAgLTI5Nyw4ICsyOTksNiBAQAogICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgncGF0aCBpcyBub3QgZW5jb2RhYmxlIHRvIHt9Jy5mb3JtYXQoZW5jb2RpbmcpKQogICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEltcG9ydEVycm9yKSBhcyBjOgogICAgICAgICAgICAgX19pbXBvcnRfXyhwYXRoKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJJbXBvcnQgYnkgZmlsZW5hbWUgaXMgbm90IHN1cHBvcnRlZC4iLAotICAgICAgICAgICAgICAgICAgICAgICAgIGMuZXhjZXB0aW9uLmFyZ3NbMF0pCiAKICAgICBkZWYgdGVzdF9pbXBvcnRfaW5fZGVsX2RvZXNfbm90X2NyYXNoKHNlbGYpOgogICAgICAgICAjIElzc3VlIDQyMzYKQEAgLTM2Miw2ICszNjIsNyBAQAogICAgICAgICB3aXRoIG9wZW4oc2VsZi5maWxlX25hbWUsICJ3IikgYXMgZjoKICAgICAgICAgICAgIGYud3JpdGUoc2VsZi5tb2R1bGVfc291cmNlKQogICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgc2VsZi5kaXJfbmFtZSkKKyAgICAgICAgaW1wb3J0bGliLmludmFsaWRhdGVfY2FjaGVzKCkKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKICAgICAgICAgc3lzLnBhdGhbOl0gPSBzZWxmLnN5c19wYXRoCkBAIC00MDksNyArNDEwLDcgQEAKICAgICBkZWYgdGVzdF9mb3JlaWduX2NvZGUoc2VsZik6CiAgICAgICAgIHB5X2NvbXBpbGUuY29tcGlsZShzZWxmLmZpbGVfbmFtZSkKICAgICAgICAgd2l0aCBvcGVuKHNlbGYuY29tcGlsZWRfbmFtZSwgInJiIikgYXMgZjoKLSAgICAgICAgICAgIGhlYWRlciA9IGYucmVhZCg4KQorICAgICAgICAgICAgaGVhZGVyID0gZi5yZWFkKDEyKQogICAgICAgICAgICAgY29kZSA9IG1hcnNoYWwubG9hZChmKQogICAgICAgICBjb25zdGFudHMgPSBsaXN0KGNvZGUuY29fY29uc3RzKQogICAgICAgICBmb3JlaWduX2NvZGUgPSB0ZXN0X21haW4uX19jb2RlX18KQEAgLTU1Niw2ICs1NTcsNyBAQAogICAgICAgICB3aXRoIG9wZW4oc2VsZi5zb3VyY2UsICd3JykgYXMgZnA6CiAgICAgICAgICAgICBwcmludCgnIyBUaGlzIGlzIGEgdGVzdCBmaWxlIHdyaXR0ZW4gYnkgdGVzdF9pbXBvcnQucHknLCBmaWxlPWZwKQogICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgb3MuY3VyZGlyKQorICAgICAgICBpbXBvcnRsaWIuaW52YWxpZGF0ZV9jYWNoZXMoKQogCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgogICAgICAgICBhc3NlcnQgc3lzLnBhdGhbMF0gPT0gb3MuY3VyZGlyLCAnVW5leHBlY3RlZCBzeXMucGF0aFswXScKQEAgLTYwMyw2ICs2MDUsNyBAQAogICAgICAgICBweWNfZmlsZSA9IG1ha2VfbGVnYWN5X3B5YyhzZWxmLnNvdXJjZSkKICAgICAgICAgb3MucmVtb3ZlKHNlbGYuc291cmNlKQogICAgICAgICB1bmxvYWQoVEVTVEZOKQorICAgICAgICBpbXBvcnRsaWIuaW52YWxpZGF0ZV9jYWNoZXMoKQogICAgICAgICBtID0gX19pbXBvcnRfXyhURVNURk4pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5fX2ZpbGVfXywKICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4ob3MuY3VyZGlyLCBvcy5wYXRoLnJlbHBhdGgocHljX2ZpbGUpKSkKQEAgLTYyMyw2ICs2MjYsNyBAQAogICAgICAgICBweWNfZmlsZSA9IG1ha2VfbGVnYWN5X3B5YyhzZWxmLnNvdXJjZSkKICAgICAgICAgb3MucmVtb3ZlKHNlbGYuc291cmNlKQogICAgICAgICB1bmxvYWQoVEVTVEZOKQorICAgICAgICBpbXBvcnRsaWIuaW52YWxpZGF0ZV9jYWNoZXMoKQogICAgICAgICBtID0gX19pbXBvcnRfXyhURVNURk4pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5fX2NhY2hlZF9fLAogICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihvcy5jdXJkaXIsIG9zLnBhdGgucmVscGF0aChweWNfZmlsZSkpKQpAQCAtNjczLDYgKzY3NywxNiBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN5cy5tb2R1bGVzWydwZXAzMTQ3LmZvbyddLl9fY2FjaGVkX18sCiAgICAgICAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5qb2luKG9zLmN1cmRpciwgZm9vX3B5YykpCiAKKyAgICBkZWYgdGVzdF9yZWNvbXB1dGVfcHljX3NhbWVfc2Vjb25kKHNlbGYpOgorICAgICAgICAjIEV2ZW4gd2hlbiB0aGUgc291cmNlIGZpbGUgZG9lc24ndCBjaGFuZ2UgdGltZXN0YW1wLCBhIGNoYW5nZSBpbgorICAgICAgICAjIHNvdXJjZSBzaXplIGlzIGVub3VnaCB0byB0cmlnZ2VyIHJlY29tcHV0YXRpb24gb2YgdGhlIHB5YyBmaWxlLgorICAgICAgICBfX2ltcG9ydF9fKFRFU1RGTikKKyAgICAgICAgdW5sb2FkKFRFU1RGTikKKyAgICAgICAgd2l0aCBvcGVuKHNlbGYuc291cmNlLCAnYScpIGFzIGZwOgorICAgICAgICAgICAgcHJpbnQoInggPSA1IiwgZmlsZT1mcCkKKyAgICAgICAgbSA9IF9faW1wb3J0X18oVEVTVEZOKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0ueCwgNSkKKwogCiBjbGFzcyBSZWxhdGl2ZUltcG9ydEZyb21JbXBvcnRsaWJUZXN0cyh0ZXN0X3JlbGF0aXZlX2ltcG9ydHMuUmVsYXRpdmVJbXBvcnRzKToKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9pbXBvcnRob29rcy5weSBiL0xpYi90ZXN0L3Rlc3RfaW1wb3J0aG9va3MucHkKaW5kZXggZWM2NzMwZS4uN2EyNTY1NyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9pbXBvcnRob29rcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2ltcG9ydGhvb2tzLnB5CkBAIC01MSw3ICs1MSw3IEBACiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgcGF0aD10ZXN0X3BhdGgpOgogICAgICAgICBpZiBwYXRoICE9IHRlc3RfcGF0aDoKLSAgICAgICAgICAgICMgaWYgb3V0IGNsYXNzIGlzIG9uIHN5cy5wYXRoX2hvb2tzLCB3ZSBtdXN0IHJhaXNlCisgICAgICAgICAgICAjIGlmIG91ciBjbGFzcyBpcyBvbiBzeXMucGF0aF9ob29rcywgd2UgbXVzdCByYWlzZQogICAgICAgICAgICAgIyBJbXBvcnRFcnJvciBmb3IgYW55IHBhdGggaXRlbSB0aGF0IHdlIGNhbid0IGhhbmRsZS4KICAgICAgICAgICAgIHJhaXNlIEltcG9ydEVycm9yCiAgICAgICAgIHNlbGYucGF0aCA9IHBhdGgKQEAgLTIyOSw3ICsyMjksOSBAQAogICAgICAgICBpID0gSW1wV3JhcHBlcigpCiAgICAgICAgIHN5cy5tZXRhX3BhdGguYXBwZW5kKGkpCiAgICAgICAgIHN5cy5wYXRoX2hvb2tzLmFwcGVuZChJbXBXcmFwcGVyKQotICAgICAgICBtbmFtZXMgPSAoImNvbG9yc3lzIiwgInVybGxpYi5wYXJzZSIsICJkaXN0dXRpbHMuY29yZSIpCisgICAgICAgIG1uYW1lcyA9ICgKKyAgICAgICAgICAgICJjb2xvcnN5cyIsICJ1cmxsaWIucGFyc2UiLCAiZGlzdHV0aWxzLmNvcmUiLCAic3lzIiwKKyAgICAgICAgKQogICAgICAgICBmb3IgbW5hbWUgaW4gbW5hbWVzOgogICAgICAgICAgICAgcGFyZW50ID0gbW5hbWUuc3BsaXQoIi4iKVswXQogICAgICAgICAgICAgZm9yIG4gaW4gbGlzdChzeXMubW9kdWxlcyk6CkBAIC0yMzcsNyArMjM5LDggQEAKICAgICAgICAgICAgICAgICAgICAgZGVsIHN5cy5tb2R1bGVzW25dCiAgICAgICAgIGZvciBtbmFtZSBpbiBtbmFtZXM6CiAgICAgICAgICAgICBtID0gX19pbXBvcnRfXyhtbmFtZSwgZ2xvYmFscygpLCBsb2NhbHMoKSwgWyJfX2R1bW15X18iXSkKLSAgICAgICAgICAgIG0uX19sb2FkZXJfXyAgIyB0byBtYWtlIHN1cmUgd2UgYWN0dWFsbHkgaGFuZGxlZCB0aGUgaW1wb3J0CisgICAgICAgICAgICAjIHRvIG1ha2Ugc3VyZSB3ZSBhY3R1YWxseSBoYW5kbGVkIHRoZSBpbXBvcnQKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShoYXNhdHRyKG0sICJfX2xvYWRlcl9fIikpCiAKIAogZGVmIHRlc3RfbWFpbigpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9pbnNwZWN0LnB5IGIvTGliL3Rlc3QvdGVzdF9pbnNwZWN0LnB5CmluZGV4IDRiN2VlNGUuLmQ4NDBiYmUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfaW5zcGVjdC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2luc3BlY3QucHkKQEAgLTMwNCw3ICszMDQsNyBAQAogICAgICAgICBnZXRsaW5lcyA9IGxpbmVjYWNoZS5nZXRsaW5lcwogICAgICAgICBkZWYgbW9ua2V5KGZpbGVuYW1lLCBtb2R1bGVfZ2xvYmFscz1Ob25lKToKICAgICAgICAgICAgIGlmIGZpbGVuYW1lID09IGZuOgotICAgICAgICAgICAgICAgIHJldHVybiBzb3VyY2Uuc3BsaXRsaW5lcyhUcnVlKQorICAgICAgICAgICAgICAgIHJldHVybiBzb3VyY2Uuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByZXR1cm4gZ2V0bGluZXMoZmlsZW5hbWUsIG1vZHVsZV9nbG9iYWxzKQogICAgICAgICBsaW5lY2FjaGUuZ2V0bGluZXMgPSBtb25rZXkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfaW8ucHkgYi9MaWIvdGVzdC90ZXN0X2lvLnB5CmluZGV4IGVhODJjZWEuLjk2MjU4YjQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfaW8ucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9pby5weQpAQCAtNDksNyArNDksNyBAQAogCiBkZWYgX2RlZmF1bHRfY2h1bmtfc2l6ZSgpOgogICAgICIiIkdldCB0aGUgZGVmYXVsdCBUZXh0SU9XcmFwcGVyIGNodW5rIHNpemUiIiIKLSAgICB3aXRoIG9wZW4oX19maWxlX18sICJyIiwgZW5jb2Rpbmc9ImxhdGluMSIpIGFzIGY6CisgICAgd2l0aCBvcGVuKF9fZmlsZV9fLCAiciIsIGVuY29kaW5nPSJsYXRpbi0xIikgYXMgZjoKICAgICAgICAgcmV0dXJuIGYuX0NIVU5LX1NJWkUKIAogCkBAIC02MzQsNiArNjM0LDE1IEBACiAgICAgICAgIGZvciBvYmogaW4gdGVzdDoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShoYXNhdHRyKG9iaiwgIl9fZGljdF9fIikpCiAKKyAgICBkZWYgdGVzdF9vcGVuZXIoc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5vcGVuKHN1cHBvcnQuVEVTVEZOLCAidyIpIGFzIGY6CisgICAgICAgICAgICBmLndyaXRlKCJlZ2dcbiIpCisgICAgICAgIGZkID0gb3Mub3BlbihzdXBwb3J0LlRFU1RGTiwgb3MuT19SRE9OTFkpCisgICAgICAgIGRlZiBvcGVuZXIocGF0aCwgZmxhZ3MpOgorICAgICAgICAgICAgcmV0dXJuIGZkCisgICAgICAgIHdpdGggc2VsZi5vcGVuKCJub24tZXhpc3RlbnQiLCAiciIsIG9wZW5lcj1vcGVuZXIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCAiZWdnXG4iKQorCiBjbGFzcyBDSU9UZXN0KElPVGVzdCk6CiAKICAgICBkZWYgdGVzdF9JT0Jhc2VfZmluYWxpemUoc2VsZik6CkBAIC04MzUsNiArODQ0LDEyIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiwgYiJnZiIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnVmaW8ucmVhZGludG8oYiksIDApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiwgYiJnZiIpCisgICAgICAgIHJhd2lvID0gc2VsZi5Nb2NrUmF3SU8oKGIiYWJjIiwgTm9uZSkpCisgICAgICAgIGJ1ZmlvID0gc2VsZi50cChyYXdpbykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChidWZpby5yZWFkaW50byhiKSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLCBiImFiIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChidWZpby5yZWFkaW50byhiKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLCBiImNiIikKIAogICAgIGRlZiB0ZXN0X3JlYWRsaW5lcyhzZWxmKToKICAgICAgICAgZGVmIGJ1ZmlvKCk6CkBAIC0xODAyLDExICsxODE3LDExIEBACiAgICAgICAgIHIgPSBzZWxmLkJ5dGVzSU8oYiJceGMzXHhhOVxuXG4iKQogICAgICAgICBiID0gc2VsZi5CdWZmZXJlZFJlYWRlcihyLCAxMDAwKQogICAgICAgICB0ID0gc2VsZi5UZXh0SU9XcmFwcGVyKGIpCi0gICAgICAgIHQuX19pbml0X18oYiwgZW5jb2Rpbmc9ImxhdGluMSIsIG5ld2xpbmU9IlxyXG4iKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHQuZW5jb2RpbmcsICJsYXRpbjEiKQorICAgICAgICB0Ll9faW5pdF9fKGIsIGVuY29kaW5nPSJsYXRpbi0xIiwgbmV3bGluZT0iXHJcbiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodC5lbmNvZGluZywgImxhdGluLTEiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHQubGluZV9idWZmZXJpbmcsIEZhbHNlKQotICAgICAgICB0Ll9faW5pdF9fKGIsIGVuY29kaW5nPSJ1dGY4IiwgbGluZV9idWZmZXJpbmc9VHJ1ZSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0LmVuY29kaW5nLCAidXRmOCIpCisgICAgICAgIHQuX19pbml0X18oYiwgZW5jb2Rpbmc9InV0Zi04IiwgbGluZV9idWZmZXJpbmc9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0LmVuY29kaW5nLCAidXRmLTgiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHQubGluZV9idWZmZXJpbmcsIFRydWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIlx4ZTlcbiIsIHQucmVhZGxpbmUoKSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCB0Ll9faW5pdF9fLCBiLCBuZXdsaW5lPTQyKQpAQCAtMTg1Niw4ICsxODcxLDggQEAKICAgICBkZWYgdGVzdF9lbmNvZGluZyhzZWxmKToKICAgICAgICAgIyBDaGVjayB0aGUgZW5jb2RpbmcgYXR0cmlidXRlIGlzIGFsd2F5cyBzZXQsIGFuZCB2YWxpZAogICAgICAgICBiID0gc2VsZi5CeXRlc0lPKCkKLSAgICAgICAgdCA9IHNlbGYuVGV4dElPV3JhcHBlcihiLCBlbmNvZGluZz0idXRmOCIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodC5lbmNvZGluZywgInV0ZjgiKQorICAgICAgICB0ID0gc2VsZi5UZXh0SU9XcmFwcGVyKGIsIGVuY29kaW5nPSJ1dGYtOCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodC5lbmNvZGluZywgInV0Zi04IikKICAgICAgICAgdCA9IHNlbGYuVGV4dElPV3JhcHBlcihiKQogICAgICAgICBzZWxmLmFzc2VydFRydWUodC5lbmNvZGluZyBpcyBub3QgTm9uZSkKICAgICAgICAgY29kZWNzLmxvb2t1cCh0LmVuY29kaW5nKQpAQCAtMTk1MCw4ICsxOTY1LDggQEAKICAgICAgICAgdGVzdGRhdGEgPSBiIkFBQVxuQkJceDAwQlxuQ0NDXHJERERcckVFRVxyXG5GRkZcclxuR0dHIgogICAgICAgICBub3JtYWxpemVkID0gdGVzdGRhdGEucmVwbGFjZShiIlxyXG4iLCBiIlxuIikucmVwbGFjZShiIlxyIiwgYiJcbiIpCiAgICAgICAgIGZvciBuZXdsaW5lLCBleHBlY3RlZCBpbiBbCi0gICAgICAgICAgICAoTm9uZSwgbm9ybWFsaXplZC5kZWNvZGUoImFzY2lpIikuc3BsaXRsaW5lcyhUcnVlKSksCi0gICAgICAgICAgICAoIiIsIHRlc3RkYXRhLmRlY29kZSgiYXNjaWkiKS5zcGxpdGxpbmVzKFRydWUpKSwKKyAgICAgICAgICAgIChOb25lLCBub3JtYWxpemVkLmRlY29kZSgiYXNjaWkiKS5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpKSwKKyAgICAgICAgICAgICgiIiwgdGVzdGRhdGEuZGVjb2RlKCJhc2NpaSIpLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkpLAogICAgICAgICAgICAgKCJcbiIsIFsiQUFBXG4iLCAiQkJceDAwQlxuIiwgIkNDQ1xyREREXHJFRUVcclxuIiwgIkZGRlxyXG4iLCAiR0dHIl0pLAogICAgICAgICAgICAgKCJcclxuIiwgWyJBQUFcbkJCXHgwMEJcbkNDQ1xyREREXHJFRUVcclxuIiwgIkZGRlxyXG4iLCAiR0dHIl0pLAogICAgICAgICAgICAgKCJcciIsICBbIkFBQVxuQkJceDAwQlxuQ0NDXHIiLCAiREREXHIiLCAiRUVFXHIiLCAiXG5GRkZcciIsICJcbkdHRyJdKSwKQEAgLTIwMzYsNyArMjA1MSw3IEBACiAKICAgICBkZWYgdGVzdF9iYXNpY19pbyhzZWxmKToKICAgICAgICAgZm9yIGNodW5rc2l6ZSBpbiAoMSwgMiwgMywgNCwgNSwgMTUsIDE2LCAxNywgMzEsIDMyLCAzMywgNjMsIDY0LCA2NSk6Ci0gICAgICAgICAgICBmb3IgZW5jIGluICJhc2NpaSIsICJsYXRpbjEiLCAidXRmOCIgOiMgLCAidXRmLTE2LWJlIiwgInV0Zi0xNi1sZSI6CisgICAgICAgICAgICBmb3IgZW5jIGluICJhc2NpaSIsICJsYXRpbi0xIiwgInV0Zi04IiA6IyAsICJ1dGYtMTYtYmUiLCAidXRmLTE2LWxlIjoKICAgICAgICAgICAgICAgICBmID0gc2VsZi5vcGVuKHN1cHBvcnQuVEVTVEZOLCAidysiLCBlbmNvZGluZz1lbmMpCiAgICAgICAgICAgICAgICAgZi5fQ0hVTktfU0laRSA9IGNodW5rc2l6ZQogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi53cml0ZSgiYWJjIiksIDMpCkBAIC0yMDg2LDcgKzIxMDEsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJsaW5lcywgd2xpbmVzKQogCiAgICAgZGVmIHRlc3RfdGVsbGluZyhzZWxmKToKLSAgICAgICAgZiA9IHNlbGYub3BlbihzdXBwb3J0LlRFU1RGTiwgIncrIiwgZW5jb2Rpbmc9InV0ZjgiKQorICAgICAgICBmID0gc2VsZi5vcGVuKHN1cHBvcnQuVEVTVEZOLCAidysiLCBlbmNvZGluZz0idXRmLTgiKQogICAgICAgICBwMCA9IGYudGVsbCgpCiAgICAgICAgIGYud3JpdGUoIlx4ZmZcbiIpCiAgICAgICAgIHAxID0gZi50ZWxsKCkKQEAgLTIzMzIsNiArMjM0Nyw3IEBACiAgICAgICAgIHdpdGggc2VsZi5vcGVuKHN1cHBvcnQuVEVTVEZOLCAidyIsIGVycm9ycz0icmVwbGFjZSIpIGFzIGY6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuZXJyb3JzLCAicmVwbGFjZSIpCiAKKyAgICBAc3VwcG9ydC5ub190cmFjaW5nCiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkaW5nLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKICAgICBkZWYgdGVzdF90aHJlYWRzX3dyaXRlKHNlbGYpOgogICAgICAgICAjIElzc3VlNjc1MDogY29uY3VycmVudCB3cml0ZXMgY291bGQgZHVwbGljYXRlIGRhdGEKQEAgLTI2NDksMTIgKzI2NjUsNiBAQAogCiAgICAgZGVmIHRlc3RfYmxvY2tpbmdpb2Vycm9yKHNlbGYpOgogICAgICAgICAjIFZhcmlvdXMgQmxvY2tpbmdJT0Vycm9yIGlzc3VlcwotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuQmxvY2tpbmdJT0Vycm9yKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuQmxvY2tpbmdJT0Vycm9yLCAxKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuQmxvY2tpbmdJT0Vycm9yLCAxLCAyLCAzLCA0KQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuQmxvY2tpbmdJT0Vycm9yLCAxLCAiIiwgTm9uZSkKLSAgICAgICAgYiA9IHNlbGYuQmxvY2tpbmdJT0Vycm9yKDEsICIiKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY2hhcmFjdGVyc193cml0dGVuLCAwKQogICAgICAgICBjbGFzcyBDKHN0cik6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIGMgPSBDKCIiKQpAQCAtMjc5Niw2ICsyODA2LDcgQEAKIAogICAgICAgICAgICAgICAgIGV4Y2VwdCBzZWxmLkJsb2NraW5nSU9FcnJvciBhcyBlOgogICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1swXSwgZXJybm8uRUFHQUlOKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1syXSwgZS5jaGFyYWN0ZXJzX3dyaXR0ZW4pCiAgICAgICAgICAgICAgICAgICAgIHNlbnRbLTFdID0gc2VudFstMV1bOmUuY2hhcmFjdGVyc193cml0dGVuXQogICAgICAgICAgICAgICAgICAgICByZWNlaXZlZC5hcHBlbmQocmYucmVhZCgpKQogICAgICAgICAgICAgICAgICAgICBtc2cgPSBiJ0JMT0NLRUQnCkBAIC0yODA4LDYgKzI4MTksNyBAQAogICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgIGV4Y2VwdCBzZWxmLkJsb2NraW5nSU9FcnJvciBhcyBlOgogICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1swXSwgZXJybm8uRUFHQUlOKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1syXSwgZS5jaGFyYWN0ZXJzX3dyaXR0ZW4pCiAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5jaGFyYWN0ZXJzX3dyaXR0ZW4sIDApCiAgICAgICAgICAgICAgICAgICAgIHJlY2VpdmVkLmFwcGVuZChyZi5yZWFkKCkpCiAKQEAgLTI4MTgsNiArMjgzMCwxOSBAQAogICAgICAgICBzZWxmLmFzc2VydFRydWUod2YuY2xvc2VkKQogICAgICAgICBzZWxmLmFzc2VydFRydWUocmYuY2xvc2VkKQogCisgICAgZGVmIHRlc3RfY3JlYXRlX2ZhaWwoc2VsZik6CisgICAgICAgICMgJ3gnIG1vZGUgZmFpbHMgaWYgZmlsZSBpcyBleGlzdGluZworICAgICAgICB3aXRoIHNlbGYub3BlbihzdXBwb3J0LlRFU1RGTiwgJ3cnKToKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRmlsZUV4aXN0c0Vycm9yLCBzZWxmLm9wZW4sIHN1cHBvcnQuVEVTVEZOLCAneCcpCisKKyAgICBkZWYgdGVzdF9jcmVhdGVfd3JpdGVzKHNlbGYpOgorICAgICAgICAjICd4JyBtb2RlIG9wZW5zIGZvciB3cml0aW5nCisgICAgICAgIHdpdGggc2VsZi5vcGVuKHN1cHBvcnQuVEVTVEZOLCAneGInKSBhcyBmOgorICAgICAgICAgICAgZi53cml0ZShiInNwYW0iKQorICAgICAgICB3aXRoIHNlbGYub3BlbihzdXBwb3J0LlRFU1RGTiwgJ3JiJykgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiJzcGFtIiwgZi5yZWFkKCkpCisKIGNsYXNzIENNaXNjSU9UZXN0KE1pc2NJT1Rlc3QpOgogICAgIGlvID0gaW8KIApAQCAtMjgzOCwxNCArMjg2MywxNCBAQAogICAgICAgICAxLzAKIAogICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZGluZywgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCi0gICAgQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0gaW4gKCdmcmVlYnNkNScsICdmcmVlYnNkNicsICdmcmVlYnNkNycpLAotICAgICAgICAgICAgICAgICAgICAgJ2lzc3VlICMxMjQyOTogc2tpcCB0ZXN0IG9uIEZyZWVCU0QgPD0gNycpCiAgICAgZGVmIGNoZWNrX2ludGVycnVwdGVkX3dyaXRlKHNlbGYsIGl0ZW0sIGJ5dGVzLCAqKmZkb3Blbl9rd2FyZ3MpOgogICAgICAgICAiIiJDaGVjayB0aGF0IGEgcGFydGlhbCB3cml0ZSwgd2hlbiBpdCBnZXRzIGludGVycnVwdGVkLCBwcm9wZXJseQogICAgICAgICBpbnZva2VzIHRoZSBzaWduYWwgaGFuZGxlciwgYW5kIGJ1YmJsZXMgdXAgdGhlIGV4Y2VwdGlvbiByYWlzZWQKICAgICAgICAgaW4gdGhlIGxhdHRlci4iIiIKICAgICAgICAgcmVhZF9yZXN1bHRzID0gW10KICAgICAgICAgZGVmIF9yZWFkKCk6CisgICAgICAgICAgICBpZiBoYXNhdHRyKHNpZ25hbCwgJ3B0aHJlYWRfc2lnbWFzaycpOgorICAgICAgICAgICAgICAgIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soc2lnbmFsLlNJR19CTE9DSywgW3NpZ25hbC5TSUdBTFJNXSkKICAgICAgICAgICAgIHMgPSBvcy5yZWFkKHIsIDEpCiAgICAgICAgICAgICByZWFkX3Jlc3VsdHMuYXBwZW5kKHMpCiAgICAgICAgIHQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1fcmVhZCkKQEAgLTI4NjMsNyArMjg4OCw3IEBACiAgICAgICAgICAgICAjIFRoZSBidWZmZXJlZCBJTyBsYXllciBtdXN0IGNoZWNrIGZvciBwZW5kaW5nIHNpZ25hbAogICAgICAgICAgICAgIyBoYW5kbGVycywgd2hpY2ggaW4gdGhpcyBjYXNlIHdpbGwgaW52b2tlIGFsYXJtX2ludGVycnVwdCgpLgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoWmVyb0RpdmlzaW9uRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW8ud3JpdGUsIGl0ZW0gKiAoMTAyNCAqIDEwMjQpKQorICAgICAgICAgICAgICAgICAgICAgICAgd2lvLndyaXRlLCBpdGVtICogKHN1cHBvcnQuUElQRV9NQVhfU0laRSAvLyBsZW4oaXRlbSkpKQogICAgICAgICAgICAgdC5qb2luKCkKICAgICAgICAgICAgICMgV2UgZ290IG9uZSBieXRlLCBnZXQgYW5vdGhlciBvbmUgYW5kIGNoZWNrIHRoYXQgaXQgaXNuJ3QgYQogICAgICAgICAgICAgIyByZXBlYXQgb2YgdGhlIGZpcnN0IG9uZS4KQEAgLTI4OTAsNiArMjkxNSw3IEBACiAgICAgZGVmIHRlc3RfaW50ZXJydXB0ZWRfd3JpdGVfdGV4dChzZWxmKToKICAgICAgICAgc2VsZi5jaGVja19pbnRlcnJ1cHRlZF93cml0ZSgieHkiLCBiInh5IiwgbW9kZT0idyIsIGVuY29kaW5nPSJhc2NpaSIpCiAKKyAgICBAc3VwcG9ydC5ub190cmFjaW5nCiAgICAgZGVmIGNoZWNrX3JlZW50cmFudF93cml0ZShzZWxmLCBkYXRhLCAqKmZkb3Blbl9rd2FyZ3MpOgogICAgICAgICBkZWYgb25fYWxhcm0oKmFyZ3MpOgogICAgICAgICAgICAgIyBXaWxsIGJlIGNhbGxlZCByZWVudHJhbnRseSBmcm9tIHRoZSBzYW1lIHRocmVhZApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9pdGVydG9vbHMucHkgYi9MaWIvdGVzdC90ZXN0X2l0ZXJ0b29scy5weQppbmRleCA4Y2RjNTk3Li45NTc5OTFjIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2l0ZXJ0b29scy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2l0ZXJ0b29scy5weQpAQCAtNjksMTEgKzY5LDIxIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGlzdChhY2N1bXVsYXRlKCdhYmMnKSksIFsnYScsICdhYicsICdhYmMnXSkgICAjIHdvcmtzIHdpdGggbm9uLW51bWVyaWMKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KGFjY3VtdWxhdGUoW10pKSwgW10pICAgICAgICAgICAgICAgICAgIyBlbXB0eSBpdGVyYWJsZQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoYWNjdW11bGF0ZShbN10pKSwgWzddKSAgICAgICAgICAgICAgICAjIGl0ZXJhYmxlIG9mIGxlbmd0aCBvbmUKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBhY2N1bXVsYXRlLCByYW5nZSgxMCksIDUpICAgICAgIyB0b28gbWFueSBhcmdzCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYWNjdW11bGF0ZSwgcmFuZ2UoMTApLCA1LCA2KSAgICMgdG9vIG1hbnkgYXJncwogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGFjY3VtdWxhdGUpICAgICAgICAgICAgICAgICAgICAjIHRvbyBmZXcgYXJncwogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGFjY3VtdWxhdGUsIHg9cmFuZ2UoMTApKSAgICAgICAjIHVuZXhwZWN0ZWQga3dkIGFyZwogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGxpc3QsIGFjY3VtdWxhdGUoWzEsIFtdXSkpICAgICAjIGFyZ3MgdGhhdCBkb24ndCBhZGQKIAorICAgICAgICBzID0gWzIsIDgsIDksIDUsIDcsIDAsIDMsIDQsIDEsIDZdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGlzdChhY2N1bXVsYXRlKHMsIG1pbikpLAorICAgICAgICAgICAgICAgICAgICAgICAgIFsyLCAyLCAyLCAyLCAyLCAwLCAwLCAwLCAwLCAwXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KGFjY3VtdWxhdGUocywgbWF4KSksCisgICAgICAgICAgICAgICAgICAgICAgICAgWzIsIDgsIDksIDksIDksIDksIDksIDksIDksIDldKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoYWNjdW11bGF0ZShzLCBvcGVyYXRvci5tdWwpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBbMiwgMTYsIDE0NCwgNzIwLCA1MDQwLCAwLCAwLCAwLCAwLCAwXSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgbGlzdChhY2N1bXVsYXRlKHMsIGNocikpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHVuYXJ5LW9wZXJhdGlvbgorCiAgICAgZGVmIHRlc3RfY2hhaW4oc2VsZik6CiAKICAgICAgICAgZGVmIGNoYWluMigqaXRlcmFibGVzKToKQEAgLTE1OCw3ICsxNjgsOCBAQAogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0LCBsaXN0KGNvbWJpbmF0aW9uczIodmFsdWVzLCByKSkpICMgbWF0Y2hlcyBzZWNvbmQgcHVyZSBweXRob24gdmVyc2lvbgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0LCBsaXN0KGNvbWJpbmF0aW9uczModmFsdWVzLCByKSkpICMgbWF0Y2hlcyBzZWNvbmQgcHVyZSBweXRob24gdmVyc2lvbgogCi0gICAgICAgICMgVGVzdCBpbXBsZW1lbnRhdGlvbiBkZXRhaWw6ICB0dXBsZSByZS11c2UKKyAgICBAc3VwcG9ydC5pbXBsX2RldGFpbCgidHVwbGUgcmV1c2UgaXMgc3BlY2lmaWMgdG8gQ1B5dGhvbiIpCisgICAgZGVmIHRlc3RfY29tYmluYXRpb25zX3R1cGxlX3JldXNlKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZXQobWFwKGlkLCBjb21iaW5hdGlvbnMoJ2FiY2RlJywgMykpKSksIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobGVuKHNldChtYXAoaWQsIGxpc3QoY29tYmluYXRpb25zKCdhYmNkZScsIDMpKSkpKSwgMSkKIApAQCAtMjI4LDcgKzIzOSw5IEBACiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQsIGxpc3QoY3dyMSh2YWx1ZXMsIHIpKSkgICAgICAgICAjIG1hdGNoZXMgZmlyc3QgcHVyZSBweXRob24gdmVyc2lvbgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0LCBsaXN0KGN3cjIodmFsdWVzLCByKSkpICAgICAgICAgIyBtYXRjaGVzIHNlY29uZCBwdXJlIHB5dGhvbiB2ZXJzaW9uCiAKLSAgICAgICAgIyBUZXN0IGltcGxlbWVudGF0aW9uIGRldGFpbDogIHR1cGxlIHJlLXVzZQorICAgIEBzdXBwb3J0LmltcGxfZGV0YWlsKCJ0dXBsZSByZXVzZSBpcyBzcGVjaWZpYyB0byBDUHl0aG9uIikKKyAgICBkZWYgdGVzdF9jb21iaW5hdGlvbnNfd2l0aF9yZXBsYWNlbWVudF90dXBsZV9yZXVzZShzZWxmKToKKyAgICAgICAgY3dyID0gY29tYmluYXRpb25zX3dpdGhfcmVwbGFjZW1lbnQKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2V0KG1hcChpZCwgY3dyKCdhYmNkZScsIDMpKSkpLCAxKQogICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGxlbihzZXQobWFwKGlkLCBsaXN0KGN3cignYWJjZGUnLCAzKSkpKSksIDEpCiAKQEAgLTI5Miw3ICszMDUsOCBAQAogICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdCwgbGlzdChwZXJtdXRhdGlvbnModmFsdWVzLCBOb25lKSkpICMgdGVzdCByIGFzIE5vbmUKICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQsIGxpc3QocGVybXV0YXRpb25zKHZhbHVlcykpKSAgICAgICAjIHRlc3QgZGVmYXVsdCByCiAKLSAgICAgICAgIyBUZXN0IGltcGxlbWVudGF0aW9uIGRldGFpbDogIHR1cGxlIHJlLXVzZQorICAgIEBzdXBwb3J0LmltcGxfZGV0YWlsKCJ0dXBsZSByZXN1c2UgaXMgQ1B5dGhvbiBzcGVjaWZpYyIpCisgICAgZGVmIHRlc3RfcGVybXV0YXRpb25zX3R1cGxlX3JldXNlKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZXQobWFwKGlkLCBwZXJtdXRhdGlvbnMoJ2FiY2RlJywgMykpKSksIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobGVuKHNldChtYXAoaWQsIGxpc3QocGVybXV0YXRpb25zKCdhYmNkZScsIDMpKSkpKSwgMSkKIApAQCAtNTU2LDExICs1NzAsMTMgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KHppcCgpKSwgbHppcCgpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHppcCwgMykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCB6aXAsIHJhbmdlKDMpLCAzKQotICAgICAgICAjIENoZWNrIHR1cGxlIHJlLXVzZSAoaW1wbGVtZW50YXRpb24gZGV0YWlsKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFt0dXBsZShsaXN0KHBhaXIpKSBmb3IgcGFpciBpbiB6aXAoJ2FiYycsICdkZWYnKV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgbHppcCgnYWJjJywgJ2RlZicpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFtwYWlyIGZvciBwYWlyIGluIHppcCgnYWJjJywgJ2RlZicpXSwKICAgICAgICAgICAgICAgICAgICAgICAgICBsemlwKCdhYmMnLCAnZGVmJykpCisKKyAgICBAc3VwcG9ydC5pbXBsX2RldGFpbCgidHVwbGUgcmV1c2UgaXMgc3BlY2lmaWMgdG8gQ1B5dGhvbiIpCisgICAgZGVmIHRlc3RfemlwX3R1cGxlX3JldXNlKHNlbGYpOgogICAgICAgICBpZHMgPSBsaXN0KG1hcChpZCwgemlwKCdhYmMnLCAnZGVmJykpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1pbihpZHMpLCBtYXgoaWRzKSkKICAgICAgICAgaWRzID0gbGlzdChtYXAoaWQsIGxpc3QoemlwKCdhYmMnLCAnZGVmJykpKSkKQEAgLTYwMywxMSArNjE5LDEzIEBACiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgnRGlkIG5vdCByYWlzZSBUeXBlIGluOiAgJyArIHN0bXQpCiAKLSAgICAgICAgIyBDaGVjayB0dXBsZSByZS11c2UgKGltcGxlbWVudGF0aW9uIGRldGFpbCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbdHVwbGUobGlzdChwYWlyKSkgZm9yIHBhaXIgaW4gemlwX2xvbmdlc3QoJ2FiYycsICdkZWYnKV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdCh6aXAoJ2FiYycsICdkZWYnKSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW3BhaXIgZm9yIHBhaXIgaW4gemlwX2xvbmdlc3QoJ2FiYycsICdkZWYnKV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdCh6aXAoJ2FiYycsICdkZWYnKSkpCisKKyAgICBAc3VwcG9ydC5pbXBsX2RldGFpbCgidHVwbGUgcmV1c2UgaXMgc3BlY2lmaWMgdG8gQ1B5dGhvbiIpCisgICAgZGVmIHRlc3RfemlwX2xvbmdlc3RfdHVwbGVfcmV1c2Uoc2VsZik6CiAgICAgICAgIGlkcyA9IGxpc3QobWFwKGlkLCB6aXBfbG9uZ2VzdCgnYWJjJywgJ2RlZicpKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtaW4oaWRzKSwgbWF4KGlkcykpCiAgICAgICAgIGlkcyA9IGxpc3QobWFwKGlkLCBsaXN0KHppcF9sb25nZXN0KCdhYmMnLCAnZGVmJykpKSkKQEAgLTcxMSw3ICs3MjksOCBAQAogICAgICAgICAgICAgYXJncyA9IG1hcChpdGVyLCBhcmdzKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obGlzdChwcm9kdWN0KCphcmdzKSkpLCBleHBlY3RlZF9sZW4pCiAKLSAgICAgICAgIyBUZXN0IGltcGxlbWVudGF0aW9uIGRldGFpbDogIHR1cGxlIHJlLXVzZQorICAgIEBzdXBwb3J0LmltcGxfZGV0YWlsKCJ0dXBsZSByZXVzZSBpcyBzcGVjaWZpYyB0byBDUHl0aG9uIikKKyAgICBkZWYgdGVzdF9wcm9kdWN0X3R1cGxlX3JldXNlKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZXQobWFwKGlkLCBwcm9kdWN0KCdhYmMnLCAnZGVmJykpKSksIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobGVuKHNldChtYXAoaWQsIGxpc3QocHJvZHVjdCgnYWJjJywgJ2RlZicpKSkpKSwgMSkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9rZXl3b3Jkb25seWFyZy5weSBiL0xpYi90ZXN0L3Rlc3Rfa2V5d29yZG9ubHlhcmcucHkKaW5kZXggM2FlYmQ2OC4uNjFkNDBmOSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9rZXl3b3Jkb25seWFyZy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2tleXdvcmRvbmx5YXJnLnB5CkBAIC03OCw3ICs3OCw3IEBACiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKSBhcyBleGM6CiAgICAgICAgICAgICBmKDEsIDIsIDMpCi0gICAgICAgIGV4cGVjdGVkID0gImYoKSB0YWtlcyBhdCBtb3N0IDIgcG9zaXRpb25hbCBhcmd1bWVudHMgKDMgZ2l2ZW4pIgorICAgICAgICBleHBlY3RlZCA9ICJmKCkgdGFrZXMgZnJvbSAxIHRvIDIgcG9zaXRpb25hbCBhcmd1bWVudHMgYnV0IDMgd2VyZSBnaXZlbiIKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoZXhjLmV4Y2VwdGlvbiksIGV4cGVjdGVkKQogCiAgICAgZGVmIHRlc3RTeW50YXhFcnJvckZvckZ1bmN0aW9uQ2FsbChzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbGliMnRvMy5weSBiL0xpYi90ZXN0L3Rlc3RfbGliMnRvMy5weQppbmRleCAxYWZhZjcwLi5kZjRjMzdiIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2xpYjJ0bzMucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9saWIydG8zLnB5CkBAIC05LDggKzksOCBAQAogZGVmIHN1aXRlKCk6CiAgICAgdGVzdHMgPSB1bml0dGVzdC5UZXN0U3VpdGUoKQogICAgIGxvYWRlciA9IHVuaXR0ZXN0LlRlc3RMb2FkZXIoKQotICAgIGZvciBtIGluICh0ZXN0X2ZpeGVycywgdGVzdF9weXRyZWUsdGVzdF91dGlsLCB0ZXN0X3JlZmFjdG9yLAotICAgICAgICAgICAgICB0ZXN0X3BhcnNlciwgdGVzdF9tYWluXyk6CisgICAgZm9yIG0gaW4gKHRlc3RfZml4ZXJzLCB0ZXN0X3B5dHJlZSwgdGVzdF91dGlsLCB0ZXN0X3JlZmFjdG9yLCB0ZXN0X3BhcnNlciwKKyAgICAgICAgICAgICAgdGVzdF9tYWluXyk6CiAgICAgICAgIHRlc3RzLmFkZFRlc3RzKGxvYWRlci5sb2FkVGVzdHNGcm9tTW9kdWxlKG0pKQogICAgIHJldHVybiB0ZXN0cwogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2xvY2FsZS5weSBiL0xpYi90ZXN0L3Rlc3RfbG9jYWxlLnB5CmluZGV4IDhmNzU3NGIuLjdmZGI2ZGEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbG9jYWxlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbG9jYWxlLnB5CkBAIC00MDEsNiArNDAxLDggQEAKICAgICAgICAgICAgICMgVW5zdXBwb3J0ZWQgbG9jYWxlIG9uIHRoaXMgc3lzdGVtCiAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCd0ZXN0IG5lZWRzIFR1cmtpc2ggbG9jYWxlJykKICAgICAgICAgbG9jID0gbG9jYWxlLmdldGxvY2FsZShsb2NhbGUuTENfQ1RZUEUpCisgICAgICAgIGlmIHZlcmJvc2U6CisgICAgICAgICAgICBwcmludCgnZ290IGxvY2FsZSAlYScgJSAobG9jLCkpCiAgICAgICAgIGxvY2FsZS5zZXRsb2NhbGUobG9jYWxlLkxDX0NUWVBFLCBsb2MpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobG9jLCBsb2NhbGUuZ2V0bG9jYWxlKGxvY2FsZS5MQ19DVFlQRSkpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbG9nZ2luZy5weSBiL0xpYi90ZXN0L3Rlc3RfbG9nZ2luZy5weQppbmRleCBhYjY2NTk2Li45OGEyODE5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2xvZ2dpbmcucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9sb2dnaW5nLnB5CkBAIC0zNiwyMCArMzYsNDAgQEAKIGltcG9ydCByZQogaW1wb3J0IHNlbGVjdAogaW1wb3J0IHNvY2tldAotZnJvbSBzb2NrZXRzZXJ2ZXIgaW1wb3J0IFRocmVhZGluZ1RDUFNlcnZlciwgU3RyZWFtUmVxdWVzdEhhbmRsZXIKIGltcG9ydCBzdHJ1Y3QKIGltcG9ydCBzeXMKIGltcG9ydCB0ZW1wZmlsZQotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGNhcHR1cmVkX3N0ZG91dCwgcnVuX3dpdGhfbG9jYWxlLCBydW5fdW5pdHRlc3QKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBjYXB0dXJlZF9zdGRvdXQsIHJ1bl93aXRoX2xvY2FsZSwgcnVuX3VuaXR0ZXN0LCBwYXRjaAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRlc3RIYW5kbGVyLCBNYXRjaGVyCiBpbXBvcnQgdGV4dHdyYXAKK2ltcG9ydCB0aW1lCiBpbXBvcnQgdW5pdHRlc3QKIGltcG9ydCB3YXJuaW5ncwogaW1wb3J0IHdlYWtyZWYKK2ltcG9ydCB6bGliCiB0cnk6CiAgICAgaW1wb3J0IHRocmVhZGluZworICAgICMgVGhlIGZvbGxvd2luZyBpbXBvcnRzIGFyZSBuZWVkZWQgb25seSBmb3IgdGVzdHMgd2hpY2gKKyAgICAjIHJlcXVpcmUgdGhyZWFkaW5nCisgICAgaW1wb3J0IGFzeW5jaGF0CisgICAgaW1wb3J0IGFzeW5jb3JlCisgICAgaW1wb3J0IGVycm5vCisgICAgZnJvbSBodHRwLnNlcnZlciBpbXBvcnQgSFRUUFNlcnZlciwgQmFzZUhUVFBSZXF1ZXN0SGFuZGxlcgorICAgIGltcG9ydCBzbXRwZAorICAgIGZyb20gdXJsbGliLnBhcnNlIGltcG9ydCB1cmxwYXJzZSwgcGFyc2VfcXMKKyAgICBmcm9tIHNvY2tldHNlcnZlciBpbXBvcnQgKFRocmVhZGluZ1VEUFNlcnZlciwgRGF0YWdyYW1SZXF1ZXN0SGFuZGxlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRocmVhZGluZ1RDUFNlcnZlciwgU3RyZWFtUmVxdWVzdEhhbmRsZXIpCiBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgdGhyZWFkaW5nID0gTm9uZQordHJ5OgorICAgIGltcG9ydCB3aW4zMmV2dGxvZworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHdpbjMyZXZ0bG9nID0gTm9uZQordHJ5OgorICAgIGltcG9ydCB3aW4zMmV2dGxvZ3V0aWwKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICB3aW4zMmV2dGxvZ3V0aWwgPSBOb25lCisgICAgd2luMzJldnRsb2cgPSBOb25lCiAKIAogY2xhc3MgQmFzZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtNzcsOSArOTcsNyBAQAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgbG9nZ2luZy5fcmVsZWFzZUxvY2soKQogCi0gICAgICAgICMgU2V0IHR3byB1bnVzZWQgbG9nZ2Vyczogb25lIG5vbi1BU0NJSSBhbmQgb25lIFVuaWNvZGUuCi0gICAgICAgICMgVGhpcyBpcyB0byB0ZXN0IGNvcnJlY3Qgb3BlcmF0aW9uIHdoZW4gc29ydGluZyBleGlzdGluZwotICAgICAgICAjIGxvZ2dlcnMgaW4gdGhlIGNvbmZpZ3VyYXRpb24gY29kZS4gU2VlIGlzc3VlIDgyMDEuCisgICAgICAgICMgU2V0IHR3byB1bnVzZWQgbG9nZ2VycwogICAgICAgICBzZWxmLmxvZ2dlcjEgPSBsb2dnaW5nLmdldExvZ2dlcigiXHhhYlx4ZDdceGJiIikKICAgICAgICAgc2VsZi5sb2dnZXIyID0gbG9nZ2luZy5nZXRMb2dnZXIoIlx1MDEzZlx1MDBkNlx1MDA0NyIpCiAKQEAgLTE0MCw4ICsxNTgsNyBAQAogICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CiAgICAgICAgICAgICAjIFN0cmluZ0lPLlN0cmluZ0lPIGxhY2tzIGEgcmVzZXQoKSBtZXRob2QuCiAgICAgICAgICAgICBhY3R1YWxfbGluZXMgPSBzdHJlYW0uZ2V0dmFsdWUoKS5zcGxpdGxpbmVzKCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oYWN0dWFsX2xpbmVzKSwgbGVuKGV4cGVjdGVkX3ZhbHVlcyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICclcyB2cy4gJXMnICUgKGFjdHVhbF9saW5lcywgZXhwZWN0ZWRfdmFsdWVzKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oYWN0dWFsX2xpbmVzKSwgbGVuKGV4cGVjdGVkX3ZhbHVlcykpCiAgICAgICAgIGZvciBhY3R1YWwsIGV4cGVjdGVkIGluIHppcChhY3R1YWxfbGluZXMsIGV4cGVjdGVkX3ZhbHVlcyk6CiAgICAgICAgICAgICBtYXRjaCA9IHBhdC5zZWFyY2goYWN0dWFsKQogICAgICAgICAgICAgaWYgbm90IG1hdGNoOgpAQCAtMTc5LDE3ICsxOTYsMTcgQEAKIAogICAgICAgICBJTkYubG9nKGxvZ2dpbmcuQ1JJVElDQUwsIG0oKSkKICAgICAgICAgSU5GLmVycm9yKG0oKSkKLSAgICAgICAgSU5GLndhcm4obSgpKQorICAgICAgICBJTkYud2FybmluZyhtKCkpCiAgICAgICAgIElORi5pbmZvKG0oKSkKIAogICAgICAgICBERUIubG9nKGxvZ2dpbmcuQ1JJVElDQUwsIG0oKSkKICAgICAgICAgREVCLmVycm9yKG0oKSkKLSAgICAgICAgREVCLndhcm4gKG0oKSkKLSAgICAgICAgREVCLmluZm8gKG0oKSkKKyAgICAgICAgREVCLndhcm5pbmcobSgpKQorICAgICAgICBERUIuaW5mbyhtKCkpCiAgICAgICAgIERFQi5kZWJ1ZyhtKCkpCiAKICAgICAgICAgIyBUaGVzZSBzaG91bGQgbm90IGxvZy4KLSAgICAgICAgRVJSLndhcm4obSgpKQorICAgICAgICBFUlIud2FybmluZyhtKCkpCiAgICAgICAgIEVSUi5pbmZvKG0oKSkKICAgICAgICAgRVJSLmRlYnVnKG0oKSkKIApAQCAtMjIzLDcgKzI0MCw3IEBACiAgICAgICAgIElORl9FUlIuZXJyb3IobSgpKQogCiAgICAgICAgICMgVGhlc2Ugc2hvdWxkIG5vdCBsb2cuCi0gICAgICAgIElORl9FUlIud2FybihtKCkpCisgICAgICAgIElORl9FUlIud2FybmluZyhtKCkpCiAgICAgICAgIElORl9FUlIuaW5mbyhtKCkpCiAgICAgICAgIElORl9FUlIuZGVidWcobSgpKQogCkBAIC0yNDcsMTQgKzI2NCwxNCBAQAogICAgICAgICAjIFRoZXNlIHNob3VsZCBsb2cuCiAgICAgICAgIElORl9VTkRFRi5sb2cobG9nZ2luZy5DUklUSUNBTCwgbSgpKQogICAgICAgICBJTkZfVU5ERUYuZXJyb3IobSgpKQotICAgICAgICBJTkZfVU5ERUYud2FybihtKCkpCisgICAgICAgIElORl9VTkRFRi53YXJuaW5nKG0oKSkKICAgICAgICAgSU5GX1VOREVGLmluZm8obSgpKQogICAgICAgICBJTkZfRVJSX1VOREVGLmxvZyhsb2dnaW5nLkNSSVRJQ0FMLCBtKCkpCiAgICAgICAgIElORl9FUlJfVU5ERUYuZXJyb3IobSgpKQogCiAgICAgICAgICMgVGhlc2Ugc2hvdWxkIG5vdCBsb2cuCiAgICAgICAgIElORl9VTkRFRi5kZWJ1ZyhtKCkpCi0gICAgICAgIElORl9FUlJfVU5ERUYud2FybihtKCkpCisgICAgICAgIElORl9FUlJfVU5ERUYud2FybmluZyhtKCkpCiAgICAgICAgIElORl9FUlJfVU5ERUYuaW5mbyhtKCkpCiAgICAgICAgIElORl9FUlJfVU5ERUYuZGVidWcobSgpKQogCkBAIC0yOTMsOCArMzEwLDYgQEAKICAgICAgICAgICAgICgnSU5GLkJBRFBBUkVOVCcsICdJTkZPJywgJzQnKSwKICAgICAgICAgXSkKIAotICAgIGRlZiB0ZXN0X2ludmFsaWRfbmFtZShzZWxmKToKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsb2dnaW5nLmdldExvZ2dlciwgYW55KQogCiBjbGFzcyBCYXNpY0ZpbHRlclRlc3QoQmFzZVRlc3QpOgogCkBAIC0zNTMsNiArMzY4LDEwIEBACiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICBoYW5kbGVyLnJlbW92ZUZpbHRlcihmaWx0ZXJmdW5jKQogCisgICAgZGVmIHRlc3RfZW1wdHlfZmlsdGVyKHNlbGYpOgorICAgICAgICBmID0gbG9nZ2luZy5GaWx0ZXIoKQorICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHsnbmFtZSc6ICdzcGFtLmVnZ3MnfSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGYuZmlsdGVyKHIpKQogCiAjCiAjICAgRmlyc3QsIHdlIGRlZmluZSBvdXIgbGV2ZWxzLiBUaGVyZSBjYW4gYmUgYXMgbWFueSBhcyB5b3Ugd2FudCAtIHRoZSBvbmx5CkBAIC00OTYsNiArNTE1LDQzOCBAQAogICAgICAgICAgICAgaGFuZGxlci5yZW1vdmVGaWx0ZXIoZ2FycikKIAogCitjbGFzcyBIYW5kbGVyVGVzdChCYXNlVGVzdCk6CisgICAgZGVmIHRlc3RfbmFtZShzZWxmKToKKyAgICAgICAgaCA9IGxvZ2dpbmcuSGFuZGxlcigpCisgICAgICAgIGgubmFtZSA9ICdnZW5lcmljJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGgubmFtZSwgJ2dlbmVyaWMnKQorICAgICAgICBoLm5hbWUgPSAnYW5vdGhlcmdlbmVyaWMnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaC5uYW1lLCAnYW5vdGhlcmdlbmVyaWMnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBoLmVtaXQsIE5vbmUpCisKKyAgICBkZWYgdGVzdF9idWlsdGluX2hhbmRsZXJzKHNlbGYpOgorICAgICAgICAjIFdlIGNhbid0IGFjdHVhbGx5ICp1c2UqIHRvbyBtYW55IGhhbmRsZXJzIGluIHRoZSB0ZXN0cywKKyAgICAgICAgIyBidXQgd2UgY2FuIHRyeSBpbnN0YW50aWF0aW5nIHRoZW0gd2l0aCB2YXJpb3VzIG9wdGlvbnMKKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtIGluICgnbGludXgnLCAnZGFyd2luJyk6CisgICAgICAgICAgICBmb3IgZXhpc3RpbmcgaW4gKFRydWUsIEZhbHNlKToKKyAgICAgICAgICAgICAgICBmZCwgZm4gPSB0ZW1wZmlsZS5ta3N0ZW1wKCkKKyAgICAgICAgICAgICAgICBvcy5jbG9zZShmZCkKKyAgICAgICAgICAgICAgICBpZiBub3QgZXhpc3Rpbmc6CisgICAgICAgICAgICAgICAgICAgIG9zLnVubGluayhmbikKKyAgICAgICAgICAgICAgICBoID0gbG9nZ2luZy5oYW5kbGVycy5XYXRjaGVkRmlsZUhhbmRsZXIoZm4sIGRlbGF5PVRydWUpCisgICAgICAgICAgICAgICAgaWYgZXhpc3Rpbmc6CisgICAgICAgICAgICAgICAgICAgIGRldiwgaW5vID0gaC5kZXYsIGguaW5vCisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGV2LCAtMSkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChpbm8sIC0xKQorICAgICAgICAgICAgICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHsnbXNnJzogJ1Rlc3QnfSkKKyAgICAgICAgICAgICAgICAgICAgaC5oYW5kbGUocikKKyAgICAgICAgICAgICAgICAgICAgIyBOb3cgcmVtb3ZlIHRoZSBmaWxlLgorICAgICAgICAgICAgICAgICAgICBvcy51bmxpbmsoZm4pCisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoZm4pKQorICAgICAgICAgICAgICAgICAgICAjIFRoZSBuZXh0IGNhbGwgc2hvdWxkIHJlY3JlYXRlIHRoZSBmaWxlLgorICAgICAgICAgICAgICAgICAgICBoLmhhbmRsZShyKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMoZm4pKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaC5kZXYsIC0xKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGguaW5vLCAtMSkKKyAgICAgICAgICAgICAgICBoLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBpZiBleGlzdGluZzoKKyAgICAgICAgICAgICAgICAgICAgb3MudW5saW5rKGZuKQorICAgICAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nOgorICAgICAgICAgICAgICAgIHNvY2tuYW1lID0gJy92YXIvcnVuL3N5c2xvZycKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc29ja25hbWUgPSAnL2Rldi9sb2cnCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaCA9IGxvZ2dpbmcuaGFuZGxlcnMuU3lzTG9nSGFuZGxlcihzb2NrbmFtZSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGguZmFjaWxpdHksIGguTE9HX1VTRVIpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGgudW5peHNvY2tldCkKKyAgICAgICAgICAgICAgICBoLmNsb3NlKCkKKyAgICAgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6ICMgc3lzbG9nZCBtaWdodCBub3QgYmUgYXZhaWxhYmxlCisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICBmb3IgbWV0aG9kIGluICgnR0VUJywgJ1BPU1QnLCAnUFVUJyk6CisgICAgICAgICAgICBpZiBtZXRob2QgPT0gJ1BVVCc6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbG9nZ2luZy5oYW5kbGVycy5IVFRQSGFuZGxlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbG9jYWxob3N0JywgJy9sb2cnLCBtZXRob2QpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGggPSBsb2dnaW5nLmhhbmRsZXJzLkhUVFBIYW5kbGVyKCdsb2NhbGhvc3QnLCAnL2xvZycsIG1ldGhvZCkKKyAgICAgICAgICAgICAgICBoLmNsb3NlKCkKKyAgICAgICAgaCA9IGxvZ2dpbmcuaGFuZGxlcnMuQnVmZmVyaW5nSGFuZGxlcigwKQorICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHt9KQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaC5zaG91bGRGbHVzaChyKSkKKyAgICAgICAgaC5jbG9zZSgpCisgICAgICAgIGggPSBsb2dnaW5nLmhhbmRsZXJzLkJ1ZmZlcmluZ0hhbmRsZXIoMSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShoLnNob3VsZEZsdXNoKHIpKQorICAgICAgICBoLmNsb3NlKCkKKworY2xhc3MgQmFkU3RyZWFtKG9iamVjdCk6CisgICAgZGVmIHdyaXRlKHNlbGYsIGRhdGEpOgorICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoJ2RlbGliZXJhdGUgbWlzdGFrZScpCisKK2NsYXNzIFRlc3RTdHJlYW1IYW5kbGVyKGxvZ2dpbmcuU3RyZWFtSGFuZGxlcik6CisgICAgZGVmIGhhbmRsZUVycm9yKHNlbGYsIHJlY29yZCk6CisgICAgICAgIHNlbGYuZXJyb3JfcmVjb3JkID0gcmVjb3JkCisKK2NsYXNzIFN0cmVhbUhhbmRsZXJUZXN0KEJhc2VUZXN0KToKKyAgICBkZWYgdGVzdF9lcnJvcl9oYW5kbGluZyhzZWxmKToKKyAgICAgICAgaCA9IFRlc3RTdHJlYW1IYW5kbGVyKEJhZFN0cmVhbSgpKQorICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHt9KQorICAgICAgICBvbGRfcmFpc2UgPSBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucworICAgICAgICBvbGRfc3RkZXJyID0gc3lzLnN0ZGVycgorICAgICAgICB0cnk6CisgICAgICAgICAgICBoLmhhbmRsZShyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhoLmVycm9yX3JlY29yZCwgcikKKyAgICAgICAgICAgIGggPSBsb2dnaW5nLlN0cmVhbUhhbmRsZXIoQmFkU3RyZWFtKCkpCisgICAgICAgICAgICBzeXMuc3RkZXJyID0gc2lvID0gaW8uU3RyaW5nSU8oKQorICAgICAgICAgICAgaC5oYW5kbGUocikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ1xuUnVudGltZUVycm9yOiBkZWxpYmVyYXRlIG1pc3Rha2VcbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHNpby5nZXR2YWx1ZSgpKQorICAgICAgICAgICAgbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMgPSBGYWxzZQorICAgICAgICAgICAgc3lzLnN0ZGVyciA9IHNpbyA9IGlvLlN0cmluZ0lPKCkKKyAgICAgICAgICAgIGguaGFuZGxlKHIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcnLCBzaW8uZ2V0dmFsdWUoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGxvZ2dpbmcucmFpc2VFeGNlcHRpb25zID0gb2xkX3JhaXNlCisgICAgICAgICAgICBzeXMuc3RkZXJyID0gb2xkX3N0ZGVycgorCisjIC0tIFRoZSBmb2xsb3dpbmcgc2VjdGlvbiBjb3VsZCBiZSBtb3ZlZCBpbnRvIGEgc2VydmVyX2hlbHBlci5weSBtb2R1bGUKKyMgLS0gaWYgaXQgcHJvdmVzIHRvIGJlIG9mIHdpZGVyIHV0aWxpdHkgdGhhbiBqdXN0IHRlc3RfbG9nZ2luZworCitpZiB0aHJlYWRpbmc6CisgICAgY2xhc3MgVGVzdFNNVFBDaGFubmVsKHNtdHBkLlNNVFBDaGFubmVsKToKKyAgICAgICAgIiIiCisgICAgICAgIFRoaXMgZGVyaXZlZCBjbGFzcyBoYXMgaGFkIHRvIGJlIGNyZWF0ZWQgYmVjYXVzZSBzbXRwZCBkb2VzIG5vdAorICAgICAgICBzdXBwb3J0IHVzZSBvZiBjdXN0b20gY2hhbm5lbCBtYXBzLCBhbHRob3VnaCB0aGV5IGFyZSBhbGxvd2VkIGJ5CisgICAgICAgIGFzeW5jb3JlJ3MgZGVzaWduLiBJc3N1ZSAjMTE5NTkgaGFzIGJlZW4gcmFpc2VkIHRvIGFkZHJlc3MgdGhpcywKKyAgICAgICAgYW5kIGlmIHJlc29sdmVkIHNhdGlzZmFjdG9yaWx5LCBzb21lIG9mIHRoaXMgY29kZSBjYW4gYmUgcmVtb3ZlZC4KKyAgICAgICAgIiIiCisgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBzZXJ2ZXIsIGNvbm4sIGFkZHIsIHNvY2ttYXApOgorICAgICAgICAgICAgYXN5bmNoYXQuYXN5bmNfY2hhdC5fX2luaXRfXyhzZWxmLCBjb25uLCBzb2NrbWFwKQorICAgICAgICAgICAgc2VsZi5zbXRwX3NlcnZlciA9IHNlcnZlcgorICAgICAgICAgICAgc2VsZi5jb25uID0gY29ubgorICAgICAgICAgICAgc2VsZi5hZGRyID0gYWRkcgorICAgICAgICAgICAgc2VsZi5yZWNlaXZlZF9saW5lcyA9IFtdCisgICAgICAgICAgICBzZWxmLnNtdHBfc3RhdGUgPSBzZWxmLkNPTU1BTkQKKyAgICAgICAgICAgIHNlbGYuc2Vlbl9ncmVldGluZyA9ICcnCisgICAgICAgICAgICBzZWxmLm1haWxmcm9tID0gTm9uZQorICAgICAgICAgICAgc2VsZi5yY3B0dG9zID0gW10KKyAgICAgICAgICAgIHNlbGYucmVjZWl2ZWRfZGF0YSA9ICcnCisgICAgICAgICAgICBzZWxmLmZxZG4gPSBzb2NrZXQuZ2V0ZnFkbigpCisgICAgICAgICAgICBzZWxmLm51bV9ieXRlcyA9IDAKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLnBlZXIgPSBjb25uLmdldHBlZXJuYW1lKCkKKyAgICAgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgICAgICMgYSByYWNlIGNvbmRpdGlvbiAgbWF5IG9jY3VyIGlmIHRoZSBvdGhlciBlbmQgaXMgY2xvc2luZworICAgICAgICAgICAgICAgICMgYmVmb3JlIHdlIGNhbiBnZXQgdGhlIHBlZXJuYW1lCisgICAgICAgICAgICAgICAgc2VsZi5jbG9zZSgpCisgICAgICAgICAgICAgICAgaWYgZXJyLmFyZ3NbMF0gIT0gZXJybm8uRU5PVENPTk46CisgICAgICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICAgICAgcmV0dXJuCisgICAgICAgICAgICBzZWxmLnB1c2goJzIyMCAlcyAlcycgJSAoc2VsZi5mcWRuLCBzbXRwZC5fX3ZlcnNpb25fXykpCisgICAgICAgICAgICBzZWxmLnNldF90ZXJtaW5hdG9yKGInXHJcbicpCisKKworICAgIGNsYXNzIFRlc3RTTVRQU2VydmVyKHNtdHBkLlNNVFBTZXJ2ZXIpOgorICAgICAgICAiIiIKKyAgICAgICAgVGhpcyBjbGFzcyBpbXBsZW1lbnRzIGEgdGVzdCBTTVRQIHNlcnZlci4KKworICAgICAgICA6cGFyYW0gYWRkcjogQSAoaG9zdCwgcG9ydCkgdHVwbGUgd2hpY2ggdGhlIHNlcnZlciBsaXN0ZW5zIG9uLgorICAgICAgICAgICAgICAgICAgICAgWW91IGNhbiBzcGVjaWZ5IGEgcG9ydCB2YWx1ZSBvZiB6ZXJvOiB0aGUgc2VydmVyJ3MKKyAgICAgICAgICAgICAgICAgICAgICpwb3J0KiBhdHRyaWJ1dGUgd2lsbCBob2xkIHRoZSBhY3R1YWwgcG9ydCBudW1iZXIKKyAgICAgICAgICAgICAgICAgICAgIHVzZWQsIHdoaWNoIGNhbiBiZSB1c2VkIGluIGNsaWVudCBjb25uZWN0aW9ucy4KKyAgICAgICAgOnBhcmFtIGhhbmRsZXI6IEEgY2FsbGFibGUgd2hpY2ggd2lsbCBiZSBjYWxsZWQgdG8gcHJvY2VzcworICAgICAgICAgICAgICAgICAgICAgICAgaW5jb21pbmcgbWVzc2FnZXMuIFRoZSBoYW5kbGVyIHdpbGwgYmUgcGFzc2VkCisgICAgICAgICAgICAgICAgICAgICAgICB0aGUgY2xpZW50IGFkZHJlc3MgdHVwbGUsIHdobyB0aGUgbWVzc2FnZSBpcyBmcm9tLAorICAgICAgICAgICAgICAgICAgICAgICAgYSBsaXN0IG9mIHJlY2lwaWVudHMgYW5kIHRoZSBtZXNzYWdlIGRhdGEuCisgICAgICAgIDpwYXJhbSBwb2xsX2ludGVydmFsOiBUaGUgaW50ZXJ2YWwsIGluIHNlY29uZHMsIHVzZWQgaW4gdGhlIHVuZGVybHlpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpmdW5jOmBzZWxlY3RgIG9yIDpmdW5jOmBwb2xsYCBjYWxsIGJ5CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ZnVuYzpgYXN5bmNvcmUubG9vcGAuCisgICAgICAgIDpwYXJhbSBzb2NrbWFwOiBBIGRpY3Rpb25hcnkgd2hpY2ggd2lsbCBiZSB1c2VkIHRvIGhvbGQKKyAgICAgICAgICAgICAgICAgICAgICAgIDpjbGFzczpgYXN5bmNvcmUuZGlzcGF0Y2hlcmAgaW5zdGFuY2VzIHVzZWQgYnkKKyAgICAgICAgICAgICAgICAgICAgICAgIDpmdW5jOmBhc3luY29yZS5sb29wYC4gVGhpcyBhdm9pZHMgY2hhbmdpbmcgdGhlCisgICAgICAgICAgICAgICAgICAgICAgICA6bW9kOmBhc3luY29yZWAgbW9kdWxlJ3MgZ2xvYmFsIHN0YXRlLgorICAgICAgICAiIiIKKyAgICAgICAgY2hhbm5lbF9jbGFzcyA9IFRlc3RTTVRQQ2hhbm5lbAorCisgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhZGRyLCBoYW5kbGVyLCBwb2xsX2ludGVydmFsLCBzb2NrbWFwKToKKyAgICAgICAgICAgIHNlbGYuX2xvY2FsYWRkciA9IGFkZHIKKyAgICAgICAgICAgIHNlbGYuX3JlbW90ZWFkZHIgPSBOb25lCisgICAgICAgICAgICBzZWxmLnNvY2ttYXAgPSBzb2NrbWFwCisgICAgICAgICAgICBhc3luY29yZS5kaXNwYXRjaGVyLl9faW5pdF9fKHNlbGYsIG1hcD1zb2NrbWFwKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNvY2sgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCisgICAgICAgICAgICAgICAgc29jay5zZXRibG9ja2luZygwKQorICAgICAgICAgICAgICAgIHNlbGYuc2V0X3NvY2tldChzb2NrLCBtYXA9c29ja21hcCkKKyAgICAgICAgICAgICAgICAjIHRyeSB0byByZS11c2UgYSBzZXJ2ZXIgcG9ydCBpZiBwb3NzaWJsZQorICAgICAgICAgICAgICAgIHNlbGYuc2V0X3JldXNlX2FkZHIoKQorICAgICAgICAgICAgICAgIHNlbGYuYmluZChhZGRyKQorICAgICAgICAgICAgICAgIHNlbGYucG9ydCA9IHNvY2suZ2V0c29ja25hbWUoKVsxXQorICAgICAgICAgICAgICAgIHNlbGYubGlzdGVuKDUpCisgICAgICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICAgICAgc2VsZi5jbG9zZSgpCisgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgIHNlbGYuX2hhbmRsZXIgPSBoYW5kbGVyCisgICAgICAgICAgICBzZWxmLl90aHJlYWQgPSBOb25lCisgICAgICAgICAgICBzZWxmLnBvbGxfaW50ZXJ2YWwgPSBwb2xsX2ludGVydmFsCisKKyAgICAgICAgZGVmIGhhbmRsZV9hY2NlcHRlZChzZWxmLCBjb25uLCBhZGRyKToKKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgUmVkZWZpbmVkIG9ubHkgYmVjYXVzZSB0aGUgYmFzZSBjbGFzcyBkb2VzIG5vdCBwYXNzIGluIGEKKyAgICAgICAgICAgIG1hcCwgZm9yY2luZyB1c2Ugb2YgYSBnbG9iYWwgaW4gOm1vZDpgYXN5bmNvcmVgLgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBjaGFubmVsID0gc2VsZi5jaGFubmVsX2NsYXNzKHNlbGYsIGNvbm4sIGFkZHIsIHNlbGYuc29ja21hcCkKKworICAgICAgICBkZWYgcHJvY2Vzc19tZXNzYWdlKHNlbGYsIHBlZXIsIG1haWxmcm9tLCByY3B0dG9zLCBkYXRhKToKKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgRGVsZWdhdGVzIHRvIHRoZSBoYW5kbGVyIHBhc3NlZCBpbiB0byB0aGUgc2VydmVyJ3MgY29uc3RydWN0b3IuCisKKyAgICAgICAgICAgIFR5cGljYWxseSwgdGhpcyB3aWxsIGJlIGEgdGVzdCBjYXNlIG1ldGhvZC4KKyAgICAgICAgICAgIDpwYXJhbSBwZWVyOiBUaGUgY2xpZW50IChob3N0LCBwb3J0KSB0dXBsZS4KKyAgICAgICAgICAgIDpwYXJhbSBtYWlsZnJvbTogVGhlIGFkZHJlc3Mgb2YgdGhlIHNlbmRlci4KKyAgICAgICAgICAgIDpwYXJhbSByY3B0dG9zOiBUaGUgYWRkcmVzc2VzIG9mIHRoZSByZWNpcGllbnRzLgorICAgICAgICAgICAgOnBhcmFtIGRhdGE6IFRoZSBtZXNzYWdlLgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBzZWxmLl9oYW5kbGVyKHBlZXIsIG1haWxmcm9tLCByY3B0dG9zLCBkYXRhKQorCisgICAgICAgIGRlZiBzdGFydChzZWxmKToKKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgU3RhcnQgdGhlIHNlcnZlciBydW5uaW5nIG9uIGEgc2VwYXJhdGUgZGFlbW9uIHRocmVhZC4KKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgc2VsZi5fdGhyZWFkID0gdCA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXNlbGYuc2VydmVfZm9yZXZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3M9KHNlbGYucG9sbF9pbnRlcnZhbCwpKQorICAgICAgICAgICAgdC5zZXREYWVtb24oVHJ1ZSkKKyAgICAgICAgICAgIHQuc3RhcnQoKQorCisgICAgICAgIGRlZiBzZXJ2ZV9mb3JldmVyKHNlbGYsIHBvbGxfaW50ZXJ2YWwpOgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBSdW4gdGhlIDptb2Q6YGFzeW5jb3JlYCBsb29wIHVudGlsIG5vcm1hbCB0ZXJtaW5hdGlvbgorICAgICAgICAgICAgY29uZGl0aW9ucyBhcmlzZS4KKyAgICAgICAgICAgIDpwYXJhbSBwb2xsX2ludGVydmFsOiBUaGUgaW50ZXJ2YWwsIGluIHNlY29uZHMsIHVzZWQgaW4gdGhlIHVuZGVybHlpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ZnVuYzpgc2VsZWN0YCBvciA6ZnVuYzpgcG9sbGAgY2FsbCBieQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpmdW5jOmBhc3luY29yZS5sb29wYC4KKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGFzeW5jb3JlLmxvb3AocG9sbF9pbnRlcnZhbCwgbWFwPXNlbGYuc29ja21hcCkKKyAgICAgICAgICAgIGV4Y2VwdCBzZWxlY3QuZXJyb3I6CisgICAgICAgICAgICAgICAgIyBPbiBGcmVlQlNEIDgsIGNsb3NpbmcgdGhlIHNlcnZlciByZXBlYXRhYmx5CisgICAgICAgICAgICAgICAgIyByYWlzZXMgdGhpcyBlcnJvci4gV2Ugc3dhbGxvdyBpdCBpZiB0aGUKKyAgICAgICAgICAgICAgICAjIHNlcnZlciBoYXMgYmVlbiBjbG9zZWQuCisgICAgICAgICAgICAgICAgaWYgc2VsZi5jb25uZWN0ZWQgb3Igc2VsZi5hY2NlcHRpbmc6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlCisKKyAgICAgICAgZGVmIHN0b3Aoc2VsZiwgdGltZW91dD1Ob25lKToKKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgU3RvcCB0aGUgdGhyZWFkIGJ5IGNsb3NpbmcgdGhlIHNlcnZlciBpbnN0YW5jZS4KKyAgICAgICAgICAgIFdhaXQgZm9yIHRoZSBzZXJ2ZXIgdGhyZWFkIHRvIHRlcm1pbmF0ZS4KKworICAgICAgICAgICAgOnBhcmFtIHRpbWVvdXQ6IEhvdyBsb25nIHRvIHdhaXQgZm9yIHRoZSBzZXJ2ZXIgdGhyZWFkCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG8gdGVybWluYXRlLgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBzZWxmLmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuX3RocmVhZC5qb2luKHRpbWVvdXQpCisgICAgICAgICAgICBzZWxmLl90aHJlYWQgPSBOb25lCisKKyAgICBjbGFzcyBDb250cm9sTWl4aW4ob2JqZWN0KToKKyAgICAgICAgIiIiCisgICAgICAgIFRoaXMgbWl4aW4gaXMgdXNlZCB0byBzdGFydCBhIHNlcnZlciBvbiBhIHNlcGFyYXRlIHRocmVhZCwgYW5kCisgICAgICAgIHNodXQgaXQgZG93biBwcm9ncmFtbWF0aWNhbGx5LiBSZXF1ZXN0IGhhbmRsaW5nIGlzIHNpbXBsaWZpZWQgLSBpbnN0ZWFkCisgICAgICAgIG9mIG5lZWRpbmcgdG8gZGVyaXZlIGEgc3VpdGFibGUgUmVxdWVzdEhhbmRsZXIgc3ViY2xhc3MsIHlvdSBqdXN0CisgICAgICAgIHByb3ZpZGUgYSBjYWxsYWJsZSB3aGljaCB3aWxsIGJlIHBhc3NlZCBlYWNoIHJlY2VpdmVkIHJlcXVlc3QgdG8gYmUKKyAgICAgICAgcHJvY2Vzc2VkLgorCisgICAgICAgIDpwYXJhbSBoYW5kbGVyOiBBIGhhbmRsZXIgY2FsbGFibGUgd2hpY2ggd2lsbCBiZSBjYWxsZWQgd2l0aCBhCisgICAgICAgICAgICAgICAgICAgICAgICBzaW5nbGUgcGFyYW1ldGVyIC0gdGhlIHJlcXVlc3QgLSBpbiBvcmRlciB0bworICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2VzcyB0aGUgcmVxdWVzdC4gVGhpcyBoYW5kbGVyIGlzIGNhbGxlZCBvbiB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlcnZlciB0aHJlYWQsIGVmZmVjdGl2ZWx5IG1lYW5pbmcgdGhhdCByZXF1ZXN0cyBhcmUKKyAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZCBzZXJpYWxseS4gV2hpbGUgbm90IHF1aXRlIFdlYiBzY2FsZSA7LSksCisgICAgICAgICAgICAgICAgICAgICAgICB0aGlzIHNob3VsZCBiZSBmaW5lIGZvciB0ZXN0aW5nIGFwcGxpY2F0aW9ucy4KKyAgICAgICAgOnBhcmFtIHBvbGxfaW50ZXJ2YWw6IFRoZSBwb2xsaW5nIGludGVydmFsIGluIHNlY29uZHMuCisgICAgICAgICIiIgorICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgaGFuZGxlciwgcG9sbF9pbnRlcnZhbCk6CisgICAgICAgICAgICBzZWxmLl90aHJlYWQgPSBOb25lCisgICAgICAgICAgICBzZWxmLnBvbGxfaW50ZXJ2YWwgPSBwb2xsX2ludGVydmFsCisgICAgICAgICAgICBzZWxmLl9oYW5kbGVyID0gaGFuZGxlcgorICAgICAgICAgICAgc2VsZi5yZWFkeSA9IHRocmVhZGluZy5FdmVudCgpCisKKyAgICAgICAgZGVmIHN0YXJ0KHNlbGYpOgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBDcmVhdGUgYSBkYWVtb24gdGhyZWFkIHRvIHJ1biB0aGUgc2VydmVyLCBhbmQgc3RhcnQgaXQuCisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIHNlbGYuX3RocmVhZCA9IHQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1zZWxmLnNlcnZlX2ZvcmV2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzPShzZWxmLnBvbGxfaW50ZXJ2YWwsKSkKKyAgICAgICAgICAgIHQuc2V0RGFlbW9uKFRydWUpCisgICAgICAgICAgICB0LnN0YXJ0KCkKKworICAgICAgICBkZWYgc2VydmVfZm9yZXZlcihzZWxmLCBwb2xsX2ludGVydmFsKToKKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgUnVuIHRoZSBzZXJ2ZXIuIFNldCB0aGUgcmVhZHkgZmxhZyBiZWZvcmUgZW50ZXJpbmcgdGhlCisgICAgICAgICAgICBzZXJ2aWNlIGxvb3AuCisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIHNlbGYucmVhZHkuc2V0KCkKKyAgICAgICAgICAgIHN1cGVyKENvbnRyb2xNaXhpbiwgc2VsZikuc2VydmVfZm9yZXZlcihwb2xsX2ludGVydmFsKQorCisgICAgICAgIGRlZiBzdG9wKHNlbGYsIHRpbWVvdXQ9Tm9uZSk6CisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIFRlbGwgdGhlIHNlcnZlciB0aHJlYWQgdG8gc3RvcCwgYW5kIHdhaXQgZm9yIGl0IHRvIGRvIHNvLgorCisgICAgICAgICAgICA6cGFyYW0gdGltZW91dDogSG93IGxvbmcgdG8gd2FpdCBmb3IgdGhlIHNlcnZlciB0aHJlYWQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0byB0ZXJtaW5hdGUuCisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIHNlbGYuc2h1dGRvd24oKQorICAgICAgICAgICAgaWYgc2VsZi5fdGhyZWFkIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHNlbGYuX3RocmVhZC5qb2luKHRpbWVvdXQpCisgICAgICAgICAgICAgICAgc2VsZi5fdGhyZWFkID0gTm9uZQorICAgICAgICAgICAgc2VsZi5zZXJ2ZXJfY2xvc2UoKQorICAgICAgICAgICAgc2VsZi5yZWFkeS5jbGVhcigpCisKKyAgICBjbGFzcyBUZXN0SFRUUFNlcnZlcihDb250cm9sTWl4aW4sIEhUVFBTZXJ2ZXIpOgorICAgICAgICAiIiIKKyAgICAgICAgQW4gSFRUUCBzZXJ2ZXIgd2hpY2ggaXMgY29udHJvbGxhYmxlIHVzaW5nIDpjbGFzczpgQ29udHJvbE1peGluYC4KKworICAgICAgICA6cGFyYW0gYWRkcjogQSB0dXBsZSB3aXRoIHRoZSBJUCBhZGRyZXNzIGFuZCBwb3J0IHRvIGxpc3RlbiBvbi4KKyAgICAgICAgOnBhcmFtIGhhbmRsZXI6IEEgaGFuZGxlciBjYWxsYWJsZSB3aGljaCB3aWxsIGJlIGNhbGxlZCB3aXRoIGEKKyAgICAgICAgICAgICAgICAgICAgICAgIHNpbmdsZSBwYXJhbWV0ZXIgLSB0aGUgcmVxdWVzdCAtIGluIG9yZGVyIHRvCisgICAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzIHRoZSByZXF1ZXN0LgorICAgICAgICA6cGFyYW0gcG9sbF9pbnRlcnZhbDogVGhlIHBvbGxpbmcgaW50ZXJ2YWwgaW4gc2Vjb25kcy4KKyAgICAgICAgOnBhcmFtIGxvZzogUGFzcyBgYFRydWVgYCB0byBlbmFibGUgbG9nIG1lc3NhZ2VzLgorICAgICAgICAiIiIKKyAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGFkZHIsIGhhbmRsZXIsIHBvbGxfaW50ZXJ2YWw9MC41LAorICAgICAgICAgICAgICAgICAgICAgbG9nPUZhbHNlLCBzc2xjdHg9Tm9uZSk6CisgICAgICAgICAgICBjbGFzcyBEZWxlZ2F0aW5nSFRUUFJlcXVlc3RIYW5kbGVyKEJhc2VIVFRQUmVxdWVzdEhhbmRsZXIpOgorICAgICAgICAgICAgICAgIGRlZiBfX2dldGF0dHJfXyhzZWxmLCBuYW1lLCBkZWZhdWx0PU5vbmUpOgorICAgICAgICAgICAgICAgICAgICBpZiBuYW1lLnN0YXJ0c3dpdGgoJ2RvXycpOgorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYucHJvY2Vzc19yZXF1ZXN0CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIEF0dHJpYnV0ZUVycm9yKG5hbWUpCisKKyAgICAgICAgICAgICAgICBkZWYgcHJvY2Vzc19yZXF1ZXN0KHNlbGYpOgorICAgICAgICAgICAgICAgICAgICBzZWxmLnNlcnZlci5faGFuZGxlcihzZWxmKQorCisgICAgICAgICAgICAgICAgZGVmIGxvZ19tZXNzYWdlKHNlbGYsIGZvcm1hdCwgKmFyZ3MpOgorICAgICAgICAgICAgICAgICAgICBpZiBsb2c6CisgICAgICAgICAgICAgICAgICAgICAgICBzdXBlcihEZWxlZ2F0aW5nSFRUUFJlcXVlc3RIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZikubG9nX21lc3NhZ2UoZm9ybWF0LCAqYXJncykKKyAgICAgICAgICAgIEhUVFBTZXJ2ZXIuX19pbml0X18oc2VsZiwgYWRkciwgRGVsZWdhdGluZ0hUVFBSZXF1ZXN0SGFuZGxlcikKKyAgICAgICAgICAgIENvbnRyb2xNaXhpbi5fX2luaXRfXyhzZWxmLCBoYW5kbGVyLCBwb2xsX2ludGVydmFsKQorICAgICAgICAgICAgc2VsZi5zc2xjdHggPSBzc2xjdHgKKworICAgICAgICBkZWYgZ2V0X3JlcXVlc3Qoc2VsZik6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc29jaywgYWRkciA9IHNlbGYuc29ja2V0LmFjY2VwdCgpCisgICAgICAgICAgICAgICAgaWYgc2VsZi5zc2xjdHg6CisgICAgICAgICAgICAgICAgICAgIHNvY2sgPSBzZWxmLnNzbGN0eC53cmFwX3NvY2tldChzb2NrLCBzZXJ2ZXJfc2lkZT1UcnVlKQorICAgICAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlOgorICAgICAgICAgICAgICAgICMgc29ja2V0IGVycm9ycyBhcmUgc2lsZW5jZWQgYnkgdGhlIGNhbGxlciwgcHJpbnQgdGhlbSBoZXJlCisgICAgICAgICAgICAgICAgc3lzLnN0ZGVyci53cml0ZSgiR290IGFuIGVycm9yOlxuJXNcbiIgJSBlKQorICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICByZXR1cm4gc29jaywgYWRkcgorCisgICAgY2xhc3MgVGVzdFRDUFNlcnZlcihDb250cm9sTWl4aW4sIFRocmVhZGluZ1RDUFNlcnZlcik6CisgICAgICAgICIiIgorICAgICAgICBBIFRDUCBzZXJ2ZXIgd2hpY2ggaXMgY29udHJvbGxhYmxlIHVzaW5nIDpjbGFzczpgQ29udHJvbE1peGluYC4KKworICAgICAgICA6cGFyYW0gYWRkcjogQSB0dXBsZSB3aXRoIHRoZSBJUCBhZGRyZXNzIGFuZCBwb3J0IHRvIGxpc3RlbiBvbi4KKyAgICAgICAgOnBhcmFtIGhhbmRsZXI6IEEgaGFuZGxlciBjYWxsYWJsZSB3aGljaCB3aWxsIGJlIGNhbGxlZCB3aXRoIGEgc2luZ2xlCisgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXIgLSB0aGUgcmVxdWVzdCAtIGluIG9yZGVyIHRvIHByb2Nlc3MgdGhlIHJlcXVlc3QuCisgICAgICAgIDpwYXJhbSBwb2xsX2ludGVydmFsOiBUaGUgcG9sbGluZyBpbnRlcnZhbCBpbiBzZWNvbmRzLgorICAgICAgICA6YmluZF9hbmRfYWN0aXZhdGU6IElmIFRydWUgKHRoZSBkZWZhdWx0KSwgYmluZHMgdGhlIHNlcnZlciBhbmQgc3RhcnRzIGl0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdGVuaW5nLiBJZiBGYWxzZSwgeW91IG5lZWQgdG8gY2FsbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDptZXRoOmBzZXJ2ZXJfYmluZGAgYW5kIDptZXRoOmBzZXJ2ZXJfYWN0aXZhdGVgIGF0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29tZSBsYXRlciB0aW1lIGJlZm9yZSBjYWxsaW5nIDptZXRoOmBzdGFydGAsIHNvIHRoYXQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgc2VydmVyIHdpbGwgc2V0IHVwIHRoZSBzb2NrZXQgYW5kIGxpc3RlbiBvbiBpdC4KKyAgICAgICAgIiIiCisKKyAgICAgICAgYWxsb3dfcmV1c2VfYWRkcmVzcyA9IFRydWUKKworICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgYWRkciwgaGFuZGxlciwgcG9sbF9pbnRlcnZhbD0wLjUsCisgICAgICAgICAgICAgICAgICAgICBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlKToKKyAgICAgICAgICAgIGNsYXNzIERlbGVnYXRpbmdUQ1BSZXF1ZXN0SGFuZGxlcihTdHJlYW1SZXF1ZXN0SGFuZGxlcik6CisKKyAgICAgICAgICAgICAgICBkZWYgaGFuZGxlKHNlbGYpOgorICAgICAgICAgICAgICAgICAgICBzZWxmLnNlcnZlci5faGFuZGxlcihzZWxmKQorICAgICAgICAgICAgVGhyZWFkaW5nVENQU2VydmVyLl9faW5pdF9fKHNlbGYsIGFkZHIsIERlbGVnYXRpbmdUQ1BSZXF1ZXN0SGFuZGxlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiaW5kX2FuZF9hY3RpdmF0ZSkKKyAgICAgICAgICAgIENvbnRyb2xNaXhpbi5fX2luaXRfXyhzZWxmLCBoYW5kbGVyLCBwb2xsX2ludGVydmFsKQorCisgICAgICAgIGRlZiBzZXJ2ZXJfYmluZChzZWxmKToKKyAgICAgICAgICAgIHN1cGVyKFRlc3RUQ1BTZXJ2ZXIsIHNlbGYpLnNlcnZlcl9iaW5kKCkKKyAgICAgICAgICAgIHNlbGYucG9ydCA9IHNlbGYuc29ja2V0LmdldHNvY2tuYW1lKClbMV0KKworICAgIGNsYXNzIFRlc3RVRFBTZXJ2ZXIoQ29udHJvbE1peGluLCBUaHJlYWRpbmdVRFBTZXJ2ZXIpOgorICAgICAgICAiIiIKKyAgICAgICAgQSBVRFAgc2VydmVyIHdoaWNoIGlzIGNvbnRyb2xsYWJsZSB1c2luZyA6Y2xhc3M6YENvbnRyb2xNaXhpbmAuCisKKyAgICAgICAgOnBhcmFtIGFkZHI6IEEgdHVwbGUgd2l0aCB0aGUgSVAgYWRkcmVzcyBhbmQgcG9ydCB0byBsaXN0ZW4gb24uCisgICAgICAgIDpwYXJhbSBoYW5kbGVyOiBBIGhhbmRsZXIgY2FsbGFibGUgd2hpY2ggd2lsbCBiZSBjYWxsZWQgd2l0aCBhCisgICAgICAgICAgICAgICAgICAgICAgICBzaW5nbGUgcGFyYW1ldGVyIC0gdGhlIHJlcXVlc3QgLSBpbiBvcmRlciB0bworICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2VzcyB0aGUgcmVxdWVzdC4KKyAgICAgICAgOnBhcmFtIHBvbGxfaW50ZXJ2YWw6IFRoZSBwb2xsaW5nIGludGVydmFsIGZvciBzaHV0ZG93biByZXF1ZXN0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIHNlY29uZHMuCisgICAgICAgIDpiaW5kX2FuZF9hY3RpdmF0ZTogSWYgVHJ1ZSAodGhlIGRlZmF1bHQpLCBiaW5kcyB0aGUgc2VydmVyIGFuZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0cyBpdCBsaXN0ZW5pbmcuIElmIEZhbHNlLCB5b3UgbmVlZCB0bworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGwgOm1ldGg6YHNlcnZlcl9iaW5kYCBhbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA6bWV0aDpgc2VydmVyX2FjdGl2YXRlYCBhdCBzb21lIGxhdGVyIHRpbWUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZWZvcmUgY2FsbGluZyA6bWV0aDpgc3RhcnRgLCBzbyB0aGF0IHRoZSBzZXJ2ZXIgd2lsbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldCB1cCB0aGUgc29ja2V0IGFuZCBsaXN0ZW4gb24gaXQuCisgICAgICAgICIiIgorICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgYWRkciwgaGFuZGxlciwgcG9sbF9pbnRlcnZhbD0wLjUsCisgICAgICAgICAgICAgICAgICAgICBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlKToKKyAgICAgICAgICAgIGNsYXNzIERlbGVnYXRpbmdVRFBSZXF1ZXN0SGFuZGxlcihEYXRhZ3JhbVJlcXVlc3RIYW5kbGVyKToKKworICAgICAgICAgICAgICAgIGRlZiBoYW5kbGUoc2VsZik6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuc2VydmVyLl9oYW5kbGVyKHNlbGYpCisKKyAgICAgICAgICAgICAgICBkZWYgZmluaXNoKHNlbGYpOgorICAgICAgICAgICAgICAgICAgICBkYXRhID0gc2VsZi53ZmlsZS5nZXR2YWx1ZSgpCisgICAgICAgICAgICAgICAgICAgIGlmIGRhdGE6CisgICAgICAgICAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwZXIoRGVsZWdhdGluZ1VEUFJlcXVlc3RIYW5kbGVyLCBzZWxmKS5maW5pc2goKQorICAgICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5zZXJ2ZXIuX2Nsb3NlZDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKKworICAgICAgICAgICAgVGhyZWFkaW5nVURQU2VydmVyLl9faW5pdF9fKHNlbGYsIGFkZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVsZWdhdGluZ1VEUFJlcXVlc3RIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRfYW5kX2FjdGl2YXRlKQorICAgICAgICAgICAgQ29udHJvbE1peGluLl9faW5pdF9fKHNlbGYsIGhhbmRsZXIsIHBvbGxfaW50ZXJ2YWwpCisgICAgICAgICAgICBzZWxmLl9jbG9zZWQgPSBGYWxzZQorCisgICAgICAgIGRlZiBzZXJ2ZXJfYmluZChzZWxmKToKKyAgICAgICAgICAgIHN1cGVyKFRlc3RVRFBTZXJ2ZXIsIHNlbGYpLnNlcnZlcl9iaW5kKCkKKyAgICAgICAgICAgIHNlbGYucG9ydCA9IHNlbGYuc29ja2V0LmdldHNvY2tuYW1lKClbMV0KKworICAgICAgICBkZWYgc2VydmVyX2Nsb3NlKHNlbGYpOgorICAgICAgICAgICAgc3VwZXIoVGVzdFVEUFNlcnZlciwgc2VsZikuc2VydmVyX2Nsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuX2Nsb3NlZCA9IFRydWUKKworIyAtIGVuZCBvZiBzZXJ2ZXJfaGVscGVyIHNlY3Rpb24KKworQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkaW5nLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFNNVFBIYW5kbGVyVGVzdChCYXNlVGVzdCk6CisgICAgZGVmIHRlc3RfYmFzaWMoc2VsZik6CisgICAgICAgIHNvY2ttYXAgPSB7fQorICAgICAgICBzZXJ2ZXIgPSBUZXN0U01UUFNlcnZlcigoJ2xvY2FsaG9zdCcsIDApLCBzZWxmLnByb2Nlc3NfbWVzc2FnZSwgMC4wMDEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2ttYXApCisgICAgICAgIHNlcnZlci5zdGFydCgpCisgICAgICAgIGFkZHIgPSAoJ2xvY2FsaG9zdCcsIHNlcnZlci5wb3J0KQorICAgICAgICBoID0gbG9nZ2luZy5oYW5kbGVycy5TTVRQSGFuZGxlcihhZGRyLCAnbWUnLCAneW91JywgJ0xvZycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaC50b2FkZHJzLCBbJ3lvdSddKQorICAgICAgICBzZWxmLm1lc3NhZ2VzID0gW10KKyAgICAgICAgciA9IGxvZ2dpbmcubWFrZUxvZ1JlY29yZCh7J21zZyc6ICdIZWxsbyd9KQorICAgICAgICBzZWxmLmhhbmRsZWQgPSB0aHJlYWRpbmcuRXZlbnQoKQorICAgICAgICBoLmhhbmRsZShyKQorICAgICAgICBzZWxmLmhhbmRsZWQud2FpdCgpCisgICAgICAgIHNlcnZlci5zdG9wKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5tZXNzYWdlcyksIDEpCisgICAgICAgIHBlZXIsIG1haWxmcm9tLCByY3B0dG9zLCBkYXRhID0gc2VsZi5tZXNzYWdlc1swXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1haWxmcm9tLCAnbWUnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJjcHR0b3MsIFsneW91J10pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ1xuU3ViamVjdDogTG9nXG4nLCBkYXRhKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZGF0YS5lbmRzd2l0aCgnXG5cbkhlbGxvJykpCisgICAgICAgIGguY2xvc2UoKQorCisgICAgZGVmIHByb2Nlc3NfbWVzc2FnZShzZWxmLCAqYXJncyk6CisgICAgICAgIHNlbGYubWVzc2FnZXMuYXBwZW5kKGFyZ3MpCisgICAgICAgIHNlbGYuaGFuZGxlZC5zZXQoKQorCiBjbGFzcyBNZW1vcnlIYW5kbGVyVGVzdChCYXNlVGVzdCk6CiAKICAgICAiIiJUZXN0cyBmb3IgdGhlIE1lbW9yeUhhbmRsZXIuIiIiCkBAIC01MjMsNyArOTc0LDcgQEAKICAgICAgICAgc2VsZi5tZW1fbG9nZ2VyLmluZm8oc2VsZi5uZXh0X21lc3NhZ2UoKSkKICAgICAgICAgc2VsZi5hc3NlcnRfbG9nX2xpbmVzKFtdKQogICAgICAgICAjIFRoaXMgd2lsbCBmbHVzaCBiZWNhdXNlIHRoZSBsZXZlbCBpcyA+PSBsb2dnaW5nLldBUk5JTkcKLSAgICAgICAgc2VsZi5tZW1fbG9nZ2VyLndhcm4oc2VsZi5uZXh0X21lc3NhZ2UoKSkKKyAgICAgICAgc2VsZi5tZW1fbG9nZ2VyLndhcm5pbmcoc2VsZi5uZXh0X21lc3NhZ2UoKSkKICAgICAgICAgbGluZXMgPSBbCiAgICAgICAgICAgICAoJ0RFQlVHJywgJzEnKSwKICAgICAgICAgICAgICgnSU5GTycsICcyJyksCkBAIC04NjgsNjggKzEzMTksNiBAQAogICAgICAgICAgICAgIyBPcmlnaW5hbCBsb2dnZXIgb3V0cHV0IGlzIGVtcHR5LgogICAgICAgICAgICAgc2VsZi5hc3NlcnRfbG9nX2xpbmVzKFtdKQogCi1jbGFzcyBMb2dSZWNvcmRTdHJlYW1IYW5kbGVyKFN0cmVhbVJlcXVlc3RIYW5kbGVyKToKLQotICAgICIiIkhhbmRsZXIgZm9yIGEgc3RyZWFtaW5nIGxvZ2dpbmcgcmVxdWVzdC4gSXQgc2F2ZXMgdGhlIGxvZyBtZXNzYWdlIGluIHRoZQotICAgIFRDUCBzZXJ2ZXIncyAnbG9nX291dHB1dCcgYXR0cmlidXRlLiIiIgotCi0gICAgVENQX0xPR19FTkQgPSAiISEhRU5EISEhIgotCi0gICAgZGVmIGhhbmRsZShzZWxmKToKLSAgICAgICAgIiIiSGFuZGxlIG11bHRpcGxlIHJlcXVlc3RzIC0gZWFjaCBleHBlY3RlZCB0byBiZSBvZiA0LWJ5dGUgbGVuZ3RoLAotICAgICAgICBmb2xsb3dlZCBieSB0aGUgTG9nUmVjb3JkIGluIHBpY2tsZSBmb3JtYXQuIExvZ3MgdGhlIHJlY29yZAotICAgICAgICBhY2NvcmRpbmcgdG8gd2hhdGV2ZXIgcG9saWN5IGlzIGNvbmZpZ3VyZWQgbG9jYWxseS4iIiIKLSAgICAgICAgd2hpbGUgVHJ1ZToKLSAgICAgICAgICAgIGNodW5rID0gc2VsZi5jb25uZWN0aW9uLnJlY3YoNCkKLSAgICAgICAgICAgIGlmIGxlbihjaHVuaykgPCA0OgotICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICBzbGVuID0gc3RydWN0LnVucGFjaygiPkwiLCBjaHVuaylbMF0KLSAgICAgICAgICAgIGNodW5rID0gc2VsZi5jb25uZWN0aW9uLnJlY3Yoc2xlbikKLSAgICAgICAgICAgIHdoaWxlIGxlbihjaHVuaykgPCBzbGVuOgotICAgICAgICAgICAgICAgIGNodW5rID0gY2h1bmsgKyBzZWxmLmNvbm5lY3Rpb24ucmVjdihzbGVuIC0gbGVuKGNodW5rKSkKLSAgICAgICAgICAgIG9iaiA9IHNlbGYudW5waWNrbGUoY2h1bmspCi0gICAgICAgICAgICByZWNvcmQgPSBsb2dnaW5nLm1ha2VMb2dSZWNvcmQob2JqKQotICAgICAgICAgICAgc2VsZi5oYW5kbGVfbG9nX3JlY29yZChyZWNvcmQpCi0KLSAgICBkZWYgdW5waWNrbGUoc2VsZiwgZGF0YSk6Ci0gICAgICAgIHJldHVybiBwaWNrbGUubG9hZHMoZGF0YSkKLQotICAgIGRlZiBoYW5kbGVfbG9nX3JlY29yZChzZWxmLCByZWNvcmQpOgotICAgICAgICAjIElmIHRoZSBlbmQtb2YtbWVzc2FnZXMgc2VudGluZWwgaXMgc2VlbiwgdGVsbCB0aGUgc2VydmVyIHRvCi0gICAgICAgICMgIHRlcm1pbmF0ZS4KLSAgICAgICAgaWYgc2VsZi5UQ1BfTE9HX0VORCBpbiByZWNvcmQubXNnOgotICAgICAgICAgICAgc2VsZi5zZXJ2ZXIuYWJvcnQgPSAxCi0gICAgICAgICAgICByZXR1cm4KLSAgICAgICAgc2VsZi5zZXJ2ZXIubG9nX291dHB1dCArPSByZWNvcmQubXNnICsgIlxuIgotCi0KLWNsYXNzIExvZ1JlY29yZFNvY2tldFJlY2VpdmVyKFRocmVhZGluZ1RDUFNlcnZlcik6Ci0KLSAgICAiIiJBIHNpbXBsZS1taW5kZWQgVENQIHNvY2tldC1iYXNlZCBsb2dnaW5nIHJlY2VpdmVyIHN1aXRhYmxlIGZvciB0ZXN0Ci0gICAgcHVycG9zZXMuIiIiCi0KLSAgICBhbGxvd19yZXVzZV9hZGRyZXNzID0gMQotICAgIGxvZ19vdXRwdXQgPSAiIgotCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIGhvc3Q9J2xvY2FsaG9zdCcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvcnQ9bG9nZ2luZy5oYW5kbGVycy5ERUZBVUxUX1RDUF9MT0dHSU5HX1BPUlQsCi0gICAgICAgICAgICAgICAgICAgICBoYW5kbGVyPUxvZ1JlY29yZFN0cmVhbUhhbmRsZXIpOgotICAgICAgICBUaHJlYWRpbmdUQ1BTZXJ2ZXIuX19pbml0X18oc2VsZiwgKGhvc3QsIHBvcnQpLCBoYW5kbGVyKQotICAgICAgICBzZWxmLmFib3J0ID0gRmFsc2UKLSAgICAgICAgc2VsZi50aW1lb3V0ID0gMC4xCi0gICAgICAgIHNlbGYuZmluaXNoZWQgPSB0aHJlYWRpbmcuRXZlbnQoKQotCi0gICAgZGVmIHNlcnZlX3VudGlsX3N0b3BwZWQoc2VsZik6Ci0gICAgICAgIHdoaWxlIG5vdCBzZWxmLmFib3J0OgotICAgICAgICAgICAgcmQsIHdyLCBleCA9IHNlbGVjdC5zZWxlY3QoW3NlbGYuc29ja2V0LmZpbGVubygpXSwgW10sIFtdLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi50aW1lb3V0KQotICAgICAgICAgICAgaWYgcmQ6Ci0gICAgICAgICAgICAgICAgc2VsZi5oYW5kbGVfcmVxdWVzdCgpCi0gICAgICAgICMgTm90aWZ5IHRoZSBtYWluIHRocmVhZCB0aGF0IHdlJ3JlIGFib3V0IHRvIGV4aXQKLSAgICAgICAgc2VsZi5maW5pc2hlZC5zZXQoKQotICAgICAgICAjIGNsb3NlIHRoZSBsaXN0ZW4gc29ja2V0Ci0gICAgICAgIHNlbGYuc2VydmVyX2Nsb3NlKCkKLQogCiBAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWRpbmcsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQogY2xhc3MgU29ja2V0SGFuZGxlclRlc3QoQmFzZVRlc3QpOgpAQCAtOTQwLDQ0ICsxMzI5LDI3MCBAQAogICAgICAgICAiIiJTZXQgdXAgYSBUQ1Agc2VydmVyIHRvIHJlY2VpdmUgbG9nIG1lc3NhZ2VzLCBhbmQgYSBTb2NrZXRIYW5kbGVyCiAgICAgICAgIHBvaW50aW5nIHRvIHRoYXQgc2VydmVyJ3MgYWRkcmVzcyBhbmQgcG9ydC4iIiIKICAgICAgICAgQmFzZVRlc3Quc2V0VXAoc2VsZikKLSAgICAgICAgc2VsZi50Y3BzZXJ2ZXIgPSBMb2dSZWNvcmRTb2NrZXRSZWNlaXZlcihwb3J0PTApCi0gICAgICAgIHNlbGYucG9ydCA9IHNlbGYudGNwc2VydmVyLnNvY2tldC5nZXRzb2NrbmFtZSgpWzFdCi0gICAgICAgIHNlbGYudGhyZWFkcyA9IFsKLSAgICAgICAgICAgICAgICB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1zZWxmLnRjcHNlcnZlci5zZXJ2ZV91bnRpbF9zdG9wcGVkKV0KLSAgICAgICAgZm9yIHRocmVhZCBpbiBzZWxmLnRocmVhZHM6Ci0gICAgICAgICAgICB0aHJlYWQuc3RhcnQoKQotCi0gICAgICAgIHNlbGYuc29ja19oZGxyID0gbG9nZ2luZy5oYW5kbGVycy5Tb2NrZXRIYW5kbGVyKCdsb2NhbGhvc3QnLCBzZWxmLnBvcnQpCi0gICAgICAgIHNlbGYuc29ja19oZGxyLnNldEZvcm1hdHRlcihzZWxmLnJvb3RfZm9ybWF0dGVyKQorICAgICAgICBhZGRyID0gKCdsb2NhbGhvc3QnLCAwKQorICAgICAgICBzZWxmLnNlcnZlciA9IHNlcnZlciA9IFRlc3RUQ1BTZXJ2ZXIoYWRkciwgc2VsZi5oYW5kbGVfc29ja2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wMSkKKyAgICAgICAgc2VydmVyLnN0YXJ0KCkKKyAgICAgICAgc2VydmVyLnJlYWR5LndhaXQoKQorICAgICAgICBzZWxmLnNvY2tfaGRsciA9IGxvZ2dpbmcuaGFuZGxlcnMuU29ja2V0SGFuZGxlcignbG9jYWxob3N0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VydmVyLnBvcnQpCisgICAgICAgIHNlbGYubG9nX291dHB1dCA9ICcnCiAgICAgICAgIHNlbGYucm9vdF9sb2dnZXIucmVtb3ZlSGFuZGxlcihzZWxmLnJvb3RfbG9nZ2VyLmhhbmRsZXJzWzBdKQogICAgICAgICBzZWxmLnJvb3RfbG9nZ2VyLmFkZEhhbmRsZXIoc2VsZi5zb2NrX2hkbHIpCisgICAgICAgIHNlbGYuaGFuZGxlZCA9IHRocmVhZGluZy5TZW1hcGhvcmUoMCkKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKICAgICAgICAgIiIiU2h1dGRvd24gdGhlIFRDUCBzZXJ2ZXIuIiIiCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHNlbGYudGNwc2VydmVyLmFib3J0ID0gVHJ1ZQotICAgICAgICAgICAgZGVsIHNlbGYudGNwc2VydmVyCisgICAgICAgICAgICBzZWxmLnNlcnZlci5zdG9wKDIuMCkKICAgICAgICAgICAgIHNlbGYucm9vdF9sb2dnZXIucmVtb3ZlSGFuZGxlcihzZWxmLnNvY2tfaGRscikKICAgICAgICAgICAgIHNlbGYuc29ja19oZGxyLmNsb3NlKCkKLSAgICAgICAgICAgIGZvciB0aHJlYWQgaW4gc2VsZi50aHJlYWRzOgotICAgICAgICAgICAgICAgIHRocmVhZC5qb2luKDIuMCkKICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIEJhc2VUZXN0LnRlYXJEb3duKHNlbGYpCiAKLSAgICBkZWYgZ2V0X291dHB1dChzZWxmKToKLSAgICAgICAgIiIiR2V0IHRoZSBsb2cgb3V0cHV0IGFzIHJlY2VpdmVkIGJ5IHRoZSBUQ1Agc2VydmVyLiIiIgotICAgICAgICAjIFNpZ25hbCB0aGUgVENQIHJlY2VpdmVyIGFuZCB3YWl0IGZvciBpdCB0byB0ZXJtaW5hdGUuCi0gICAgICAgIHNlbGYucm9vdF9sb2dnZXIuY3JpdGljYWwoTG9nUmVjb3JkU3RyZWFtSGFuZGxlci5UQ1BfTE9HX0VORCkKLSAgICAgICAgc2VsZi50Y3BzZXJ2ZXIuZmluaXNoZWQud2FpdCgyLjApCi0gICAgICAgIHJldHVybiBzZWxmLnRjcHNlcnZlci5sb2dfb3V0cHV0CisgICAgZGVmIGhhbmRsZV9zb2NrZXQoc2VsZiwgcmVxdWVzdCk6CisgICAgICAgIGNvbm4gPSByZXF1ZXN0LmNvbm5lY3Rpb24KKyAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgIGNodW5rID0gY29ubi5yZWN2KDQpCisgICAgICAgICAgICBpZiBsZW4oY2h1bmspIDwgNDoKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgc2xlbiA9IHN0cnVjdC51bnBhY2soIj5MIiwgY2h1bmspWzBdCisgICAgICAgICAgICBjaHVuayA9IGNvbm4ucmVjdihzbGVuKQorICAgICAgICAgICAgd2hpbGUgbGVuKGNodW5rKSA8IHNsZW46CisgICAgICAgICAgICAgICAgY2h1bmsgPSBjaHVuayArIGNvbm4ucmVjdihzbGVuIC0gbGVuKGNodW5rKSkKKyAgICAgICAgICAgIG9iaiA9IHBpY2tsZS5sb2FkcyhjaHVuaykKKyAgICAgICAgICAgIHJlY29yZCA9IGxvZ2dpbmcubWFrZUxvZ1JlY29yZChvYmopCisgICAgICAgICAgICBzZWxmLmxvZ19vdXRwdXQgKz0gcmVjb3JkLm1zZyArICdcbicKKyAgICAgICAgICAgIHNlbGYuaGFuZGxlZC5yZWxlYXNlKCkKIAogICAgIGRlZiB0ZXN0X291dHB1dChzZWxmKToKICAgICAgICAgIyBUaGUgbG9nIG1lc3NhZ2Ugc2VudCB0byB0aGUgU29ja2V0SGFuZGxlciBpcyBwcm9wZXJseSByZWNlaXZlZC4KICAgICAgICAgbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoInRjcCIpCiAgICAgICAgIGxvZ2dlci5lcnJvcigic3BhbSIpCisgICAgICAgIHNlbGYuaGFuZGxlZC5hY3F1aXJlKCkKICAgICAgICAgbG9nZ2VyLmRlYnVnKCJlZ2dzIikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9vdXRwdXQoKSwgInNwYW1cbmVnZ3NcbiIpCisgICAgICAgIHNlbGYuaGFuZGxlZC5hY3F1aXJlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmxvZ19vdXRwdXQsICJzcGFtXG5lZ2dzXG4iKQogCisgICAgZGVmIHRlc3Rfbm9zZXJ2ZXIoc2VsZik6CisgICAgICAgICMgS2lsbCB0aGUgc2VydmVyCisgICAgICAgIHNlbGYuc2VydmVyLnN0b3AoMi4wKQorICAgICAgICAjVGhlIGxvZ2dpbmcgY2FsbCBzaG91bGQgdHJ5IHRvIGNvbm5lY3QsIHdoaWNoIHNob3VsZCBmYWlsCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcignRGVsaWJlcmF0ZSBtaXN0YWtlJykKKyAgICAgICAgZXhjZXB0IFJ1bnRpbWVFcnJvcjoKKyAgICAgICAgICAgIHNlbGYucm9vdF9sb2dnZXIuZXhjZXB0aW9uKCdOZXZlciBzZW50JykKKyAgICAgICAgc2VsZi5yb290X2xvZ2dlci5lcnJvcignTmV2ZXIgc2VudCwgZWl0aGVyJykKKyAgICAgICAgbm93ID0gdGltZS50aW1lKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYuc29ja19oZGxyLnJldHJ5VGltZSA+IG5vdykKKyAgICAgICAgdGltZS5zbGVlcChzZWxmLnNvY2tfaGRsci5yZXRyeVRpbWUgLSBub3cgKyAwLjAwMSkKKyAgICAgICAgc2VsZi5yb290X2xvZ2dlci5lcnJvcignTm9yIHRoaXMnKQorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZGluZywgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBEYXRhZ3JhbUhhbmRsZXJUZXN0KEJhc2VUZXN0KToKKworICAgICIiIlRlc3QgZm9yIERhdGFncmFtSGFuZGxlci4iIiIKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgIiIiU2V0IHVwIGEgVURQIHNlcnZlciB0byByZWNlaXZlIGxvZyBtZXNzYWdlcywgYW5kIGEgRGF0YWdyYW1IYW5kbGVyCisgICAgICAgIHBvaW50aW5nIHRvIHRoYXQgc2VydmVyJ3MgYWRkcmVzcyBhbmQgcG9ydC4iIiIKKyAgICAgICAgQmFzZVRlc3Quc2V0VXAoc2VsZikKKyAgICAgICAgYWRkciA9ICgnbG9jYWxob3N0JywgMCkKKyAgICAgICAgc2VsZi5zZXJ2ZXIgPSBzZXJ2ZXIgPSBUZXN0VURQU2VydmVyKGFkZHIsIHNlbGYuaGFuZGxlX2RhdGFncmFtLCAwLjAxKQorICAgICAgICBzZXJ2ZXIuc3RhcnQoKQorICAgICAgICBzZXJ2ZXIucmVhZHkud2FpdCgpCisgICAgICAgIHNlbGYuc29ja19oZGxyID0gbG9nZ2luZy5oYW5kbGVycy5EYXRhZ3JhbUhhbmRsZXIoJ2xvY2FsaG9zdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VydmVyLnBvcnQpCisgICAgICAgIHNlbGYubG9nX291dHB1dCA9ICcnCisgICAgICAgIHNlbGYucm9vdF9sb2dnZXIucmVtb3ZlSGFuZGxlcihzZWxmLnJvb3RfbG9nZ2VyLmhhbmRsZXJzWzBdKQorICAgICAgICBzZWxmLnJvb3RfbG9nZ2VyLmFkZEhhbmRsZXIoc2VsZi5zb2NrX2hkbHIpCisgICAgICAgIHNlbGYuaGFuZGxlZCA9IHRocmVhZGluZy5FdmVudCgpCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgICIiIlNodXRkb3duIHRoZSBVRFAgc2VydmVyLiIiIgorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLnNlcnZlci5zdG9wKDIuMCkKKyAgICAgICAgICAgIHNlbGYucm9vdF9sb2dnZXIucmVtb3ZlSGFuZGxlcihzZWxmLnNvY2tfaGRscikKKyAgICAgICAgICAgIHNlbGYuc29ja19oZGxyLmNsb3NlKCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIEJhc2VUZXN0LnRlYXJEb3duKHNlbGYpCisKKyAgICBkZWYgaGFuZGxlX2RhdGFncmFtKHNlbGYsIHJlcXVlc3QpOgorICAgICAgICBzbGVuID0gc3RydWN0LnBhY2soJz5MJywgMCkgIyBsZW5ndGggb2YgcHJlZml4CisgICAgICAgIHBhY2tldCA9IHJlcXVlc3QucGFja2V0W2xlbihzbGVuKTpdCisgICAgICAgIG9iaiA9IHBpY2tsZS5sb2FkcyhwYWNrZXQpCisgICAgICAgIHJlY29yZCA9IGxvZ2dpbmcubWFrZUxvZ1JlY29yZChvYmopCisgICAgICAgIHNlbGYubG9nX291dHB1dCArPSByZWNvcmQubXNnICsgJ1xuJworICAgICAgICBzZWxmLmhhbmRsZWQuc2V0KCkKKworICAgIGRlZiB0ZXN0X291dHB1dChzZWxmKToKKyAgICAgICAgIyBUaGUgbG9nIG1lc3NhZ2Ugc2VudCB0byB0aGUgRGF0YWdyYW1IYW5kbGVyIGlzIHByb3Blcmx5IHJlY2VpdmVkLgorICAgICAgICBsb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcigidWRwIikKKyAgICAgICAgbG9nZ2VyLmVycm9yKCJzcGFtIikKKyAgICAgICAgc2VsZi5oYW5kbGVkLndhaXQoKQorICAgICAgICBzZWxmLmhhbmRsZWQuY2xlYXIoKQorICAgICAgICBsb2dnZXIuZXJyb3IoImVnZ3MiKQorICAgICAgICBzZWxmLmhhbmRsZWQud2FpdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5sb2dfb3V0cHV0LCAic3BhbVxuZWdnc1xuIikKKworCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWRpbmcsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgU3lzTG9nSGFuZGxlclRlc3QoQmFzZVRlc3QpOgorCisgICAgIiIiVGVzdCBmb3IgU3lzTG9nSGFuZGxlciB1c2luZyBVRFAuIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgICIiIlNldCB1cCBhIFVEUCBzZXJ2ZXIgdG8gcmVjZWl2ZSBsb2cgbWVzc2FnZXMsIGFuZCBhIFN5c0xvZ0hhbmRsZXIKKyAgICAgICAgcG9pbnRpbmcgdG8gdGhhdCBzZXJ2ZXIncyBhZGRyZXNzIGFuZCBwb3J0LiIiIgorICAgICAgICBCYXNlVGVzdC5zZXRVcChzZWxmKQorICAgICAgICBhZGRyID0gKCdsb2NhbGhvc3QnLCAwKQorICAgICAgICBzZWxmLnNlcnZlciA9IHNlcnZlciA9IFRlc3RVRFBTZXJ2ZXIoYWRkciwgc2VsZi5oYW5kbGVfZGF0YWdyYW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjAxKQorICAgICAgICBzZXJ2ZXIuc3RhcnQoKQorICAgICAgICBzZXJ2ZXIucmVhZHkud2FpdCgpCisgICAgICAgIHNlbGYuc2xfaGRsciA9IGxvZ2dpbmcuaGFuZGxlcnMuU3lzTG9nSGFuZGxlcigoJ2xvY2FsaG9zdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VydmVyLnBvcnQpKQorICAgICAgICBzZWxmLmxvZ19vdXRwdXQgPSAnJworICAgICAgICBzZWxmLnJvb3RfbG9nZ2VyLnJlbW92ZUhhbmRsZXIoc2VsZi5yb290X2xvZ2dlci5oYW5kbGVyc1swXSkKKyAgICAgICAgc2VsZi5yb290X2xvZ2dlci5hZGRIYW5kbGVyKHNlbGYuc2xfaGRscikKKyAgICAgICAgc2VsZi5oYW5kbGVkID0gdGhyZWFkaW5nLkV2ZW50KCkKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgIiIiU2h1dGRvd24gdGhlIFVEUCBzZXJ2ZXIuIiIiCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLnN0b3AoMi4wKQorICAgICAgICAgICAgc2VsZi5yb290X2xvZ2dlci5yZW1vdmVIYW5kbGVyKHNlbGYuc2xfaGRscikKKyAgICAgICAgICAgIHNlbGYuc2xfaGRsci5jbG9zZSgpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBCYXNlVGVzdC50ZWFyRG93bihzZWxmKQorCisgICAgZGVmIGhhbmRsZV9kYXRhZ3JhbShzZWxmLCByZXF1ZXN0KToKKyAgICAgICAgc2VsZi5sb2dfb3V0cHV0ID0gcmVxdWVzdC5wYWNrZXQKKyAgICAgICAgc2VsZi5oYW5kbGVkLnNldCgpCisKKyAgICBkZWYgdGVzdF9vdXRwdXQoc2VsZik6CisgICAgICAgICMgVGhlIGxvZyBtZXNzYWdlIHNlbnQgdG8gdGhlIFN5c0xvZ0hhbmRsZXIgaXMgcHJvcGVybHkgcmVjZWl2ZWQuCisgICAgICAgIGxvZ2dlciA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCJzbGgiKQorICAgICAgICBsb2dnZXIuZXJyb3IoInNwXHhlNG0iKQorICAgICAgICBzZWxmLmhhbmRsZWQud2FpdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5sb2dfb3V0cHV0LCBiJzwxMT5ceGVmXHhiYlx4YmZzcFx4YzNceGE0bVx4MDAnKQorICAgICAgICBzZWxmLmhhbmRsZWQuY2xlYXIoKQorICAgICAgICBzZWxmLnNsX2hkbHIuYXBwZW5kX251bCA9IEZhbHNlCisgICAgICAgIGxvZ2dlci5lcnJvcigic3BceGU0bSIpCisgICAgICAgIHNlbGYuaGFuZGxlZC53YWl0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmxvZ19vdXRwdXQsIGInPDExPlx4ZWZceGJiXHhiZnNwXHhjM1x4YTRtJykKKyAgICAgICAgc2VsZi5oYW5kbGVkLmNsZWFyKCkKKyAgICAgICAgc2VsZi5zbF9oZGxyLmlkZW50ID0gImhceGU0bS0iCisgICAgICAgIGxvZ2dlci5lcnJvcigic3BceGU0bSIpCisgICAgICAgIHNlbGYuaGFuZGxlZC53YWl0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmxvZ19vdXRwdXQsIGInPDExPlx4ZWZceGJiXHhiZmhceGMzXHhhNG0tc3BceGMzXHhhNG0nKQorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZGluZywgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBIVFRQSGFuZGxlclRlc3QoQmFzZVRlc3QpOgorICAgICIiIlRlc3QgZm9yIEhUVFBIYW5kbGVyLiIiIgorCisgICAgUEVNRklMRSA9ICIiIi0tLS0tQkVHSU4gUlNBIFBSSVZBVEUgS0VZLS0tLS0KK01JSUNYUUlCQUFLQmdRREdUNHhTNXI5MXJiTEpRSzJuVURlbkJoQkc2cUZrK2JWT2p1QUdDL0xTSGxBb0JudkcKK3pRRzNhZ09HK2U3YzV6MlhUOG0ya3RPUkxxRzNFNG1ZbWJ4Z3loRHJ6UDZlaTJBbmMrcHN6bW54UG9LM1B1aDUKK2FYVitYS3QwYlUwQzFtMitBQ21HR0owdDNQNDA4YXJ0ODJuT3hCdzhaSGdJZzlEdHA2eElVQ3lPcXdJREFRQUIKK0FvR0JBSkZUbkZib2FLaDVlVXJJemptTnJLc0c0NGpFeXkrdld2SE4vRmdTQzRsMTAzSHhobVdpdUw1THYzZjcKKzB0TXAxdFg3RDZ4dkh3SUc5Vld2eUtiL0NxOXJKc0RpYm1EVklPc2xuT1dlUWhHK1h3SnlpdFIwcHEvS2xKSUIKKzVMak9SY0J3Nzk1b0tXT0FpNlJjT2IxT041OXR5c0VGWWhBR1FPOWs2Vkw2MjFnUkFrRUEvR2IrWVhVTExwYnMKK3BpWE4zcTR6Y0h6ZWFWQU5vNjl0VVo2VGphUXFNZVR4RTR0T1lNMEcwWm9TZUhFZGFQNTlBT1pHS1hYTkdTUXkKKzJ6L01kZGNZR1FKQkFNa2pMU1lJcE9MSlkxMWphOE93d3N3RkcyaEV6SGUwY1M5YnpvKytSL2pjMWJIQTVSMFkKK2k2dkE1aVBpK3dvcFBGdnB5dGRCb2w3VXVFQmU1eFpyeFdNQ1FRQ1d4RUxSSGlQMnlXcEVlTEozZ0dEem9YTU4KK1B5ZFdqaFJqdTdCeDNBemtUdGYrRDZsYXd6MStlR1R1RXNzNWkwSktCa01Fd3Z3bk4yczFjZStFdUY0SkFrQmIKK0U5NmgxbEF6a1ZXNU9BZllPUFk4UkNQQTkwWk8vaG95ZzdQcFN4UjBFQ3VEcmdFUlI4Z1hJZVlVWWZlakJrRWEKK3JhYjRDZlJvVkpLS00yOFlxL3haQWtCdnVxNjcwSlJDd09nZlVUZHd3N1dwZE9RQllQa3pRY2NzS05Dc2xRVzgKKy9EeVc2eTA2b1F1c1NFTlV2eW5UNmRyM0xKeHQvTmdaUGhaWDIrazFlWURWCistLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQorLS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCitNSUlDR3pDQ0FZU2dBd0lCQWdJSkFJcTg0YTJRL092bE1BMEdDU3FHU0liM0RRRUJCUVVBTUJReEVqQVFCZ05WCitCQU1UQ1d4dlkyRnNhRzl6ZERBZUZ3MHhNVEExTWpFeE1ESXpNek5hRncwM05UQXpNakV3TXpVMU1UZGFNQlF4CitFakFRQmdOVkJBTVRDV3h2WTJGc2FHOXpkRENCbnpBTkJna3Foa2lHOXcwQkFRRUZBQU9CalFBd2dZa0NnWUVBCit4aytNVXVhL2RhMnl5VUN0cDFBM3B3WVFSdXFoWlBtMVRvN2dCZ3Z5MGg1UUtBWjd4czBCdDJvRGh2bnUzT2M5CitsMC9KdHBMVGtTNmh0eE9KbUptOFlNb1E2OHorbm90Z0ozUHFiTTVwOFQ2Q3R6N29lV2wxZmx5cmRHMU5BdFp0Cit2Z0FwaGhpZExkeitOUEdxN2ZOcHpzUWNQR1I0Q0lQUTdhZXNTRkFzanFzQ0F3RUFBYU4xTUhNd0hRWURWUjBPCitCQllFRkxXYVVQTzZON2VmR2l1b1M5aTNEVlljVXduME1FUUdBMVVkSXdROU1EdUFGTFdhVVBPNk43ZWZHaXVvCitTOWkzRFZZY1V3bjBvUmlrRmpBVU1SSXdFQVlEVlFRREV3bHNiMk5oYkdodmMzU0NDUUNLdk9HdGtQenI1VEFNCitCZ05WSFJNRUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkJRVUFBNEdCQU1LNXdoUGpMTlFLMUl2dms4OG9xSnFxCis0Zjg4OU93aWtHUDBlVWhPQmhiRmxzWnMranE1WVpDMlV6SHorZXZ6S0JsZ0FQMXU0bFAvY0I4NUNuanZXcU0rCisxYy9seXdGSFE2SE9kRGVRMUw3MnRTWU1yTk9HNFhObUxuMGg3cng2R29UVTdkY0ZSZnNlYWhCQ3E4bXYwSUR0CitJUmJUcHZsSFdQanNTdkh6MFpPSAorLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLSIiIgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICAiIiJTZXQgdXAgYW4gSFRUUCBzZXJ2ZXIgdG8gcmVjZWl2ZSBsb2cgbWVzc2FnZXMsIGFuZCBhIEhUVFBIYW5kbGVyCisgICAgICAgIHBvaW50aW5nIHRvIHRoYXQgc2VydmVyJ3MgYWRkcmVzcyBhbmQgcG9ydC4iIiIKKyAgICAgICAgQmFzZVRlc3Quc2V0VXAoc2VsZikKKyAgICAgICAgc2VsZi5oYW5kbGVkID0gdGhyZWFkaW5nLkV2ZW50KCkKKworICAgIGRlZiBoYW5kbGVfcmVxdWVzdChzZWxmLCByZXF1ZXN0KToKKyAgICAgICAgc2VsZi5jb21tYW5kID0gcmVxdWVzdC5jb21tYW5kCisgICAgICAgIHNlbGYubG9nX2RhdGEgPSB1cmxwYXJzZShyZXF1ZXN0LnBhdGgpCisgICAgICAgIGlmIHNlbGYuY29tbWFuZCA9PSAnUE9TVCc6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgcmxlbiA9IGludChyZXF1ZXN0LmhlYWRlcnNbJ0NvbnRlbnQtTGVuZ3RoJ10pCisgICAgICAgICAgICAgICAgc2VsZi5wb3N0X2RhdGEgPSByZXF1ZXN0LnJmaWxlLnJlYWQocmxlbikKKyAgICAgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgICAgICBzZWxmLnBvc3RfZGF0YSA9IE5vbmUKKyAgICAgICAgcmVxdWVzdC5zZW5kX3Jlc3BvbnNlKDIwMCkKKyAgICAgICAgcmVxdWVzdC5lbmRfaGVhZGVycygpCisgICAgICAgIHNlbGYuaGFuZGxlZC5zZXQoKQorCisgICAgZGVmIHRlc3Rfb3V0cHV0KHNlbGYpOgorICAgICAgICAjIFRoZSBsb2cgbWVzc2FnZSBzZW50IHRvIHRoZSBIVFRQSGFuZGxlciBpcyBwcm9wZXJseSByZWNlaXZlZC4KKyAgICAgICAgbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoImh0dHAiKQorICAgICAgICByb290X2xvZ2dlciA9IHNlbGYucm9vdF9sb2dnZXIKKyAgICAgICAgcm9vdF9sb2dnZXIucmVtb3ZlSGFuZGxlcihzZWxmLnJvb3RfbG9nZ2VyLmhhbmRsZXJzWzBdKQorICAgICAgICBmb3Igc2VjdXJlIGluIChGYWxzZSwgVHJ1ZSk6CisgICAgICAgICAgICBhZGRyID0gKCdsb2NhbGhvc3QnLCAwKQorICAgICAgICAgICAgaWYgc2VjdXJlOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgaW1wb3J0IHNzbAorICAgICAgICAgICAgICAgICAgICBmZCwgZm4gPSB0ZW1wZmlsZS5ta3N0ZW1wKCkKKyAgICAgICAgICAgICAgICAgICAgb3MuY2xvc2UoZmQpCisgICAgICAgICAgICAgICAgICAgIHdpdGggb3BlbihmbiwgJ3cnKSBhcyBmOgorICAgICAgICAgICAgICAgICAgICAgICAgZi53cml0ZShzZWxmLlBFTUZJTEUpCisgICAgICAgICAgICAgICAgICAgIHNzbGN0eCA9IHNzbC5TU0xDb250ZXh0KHNzbC5QUk9UT0NPTF9TU0x2MjMpCisgICAgICAgICAgICAgICAgICAgIHNzbGN0eC5sb2FkX2NlcnRfY2hhaW4oZm4pCisgICAgICAgICAgICAgICAgICAgIG9zLnVubGluayhmbikKKyAgICAgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHNzbGN0eCA9IE5vbmUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc3NsY3R4ID0gTm9uZQorICAgICAgICAgICAgc2VsZi5zZXJ2ZXIgPSBzZXJ2ZXIgPSBUZXN0SFRUUFNlcnZlcihhZGRyLCBzZWxmLmhhbmRsZV9yZXF1ZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDEsIHNzbGN0eD1zc2xjdHgpCisgICAgICAgICAgICBzZXJ2ZXIuc3RhcnQoKQorICAgICAgICAgICAgc2VydmVyLnJlYWR5LndhaXQoKQorICAgICAgICAgICAgaG9zdCA9ICdsb2NhbGhvc3Q6JWQnICUgc2VydmVyLnNlcnZlcl9wb3J0CisgICAgICAgICAgICBzZWN1cmVfY2xpZW50ID0gc2VjdXJlIGFuZCBzc2xjdHgKKyAgICAgICAgICAgIHNlbGYuaF9oZGxyID0gbG9nZ2luZy5oYW5kbGVycy5IVFRQSGFuZGxlcihob3N0LCAnL2Zyb2InLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlY3VyZT1zZWN1cmVfY2xpZW50KQorICAgICAgICAgICAgc2VsZi5sb2dfZGF0YSA9IE5vbmUKKyAgICAgICAgICAgIHJvb3RfbG9nZ2VyLmFkZEhhbmRsZXIoc2VsZi5oX2hkbHIpCisKKyAgICAgICAgICAgIGZvciBtZXRob2QgaW4gKCdHRVQnLCAnUE9TVCcpOgorICAgICAgICAgICAgICAgIHNlbGYuaF9oZGxyLm1ldGhvZCA9IG1ldGhvZAorICAgICAgICAgICAgICAgIHNlbGYuaGFuZGxlZC5jbGVhcigpCisgICAgICAgICAgICAgICAgbXNnID0gInNwXHhlNG0iCisgICAgICAgICAgICAgICAgbG9nZ2VyLmVycm9yKG1zZykKKyAgICAgICAgICAgICAgICBzZWxmLmhhbmRsZWQud2FpdCgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmxvZ19kYXRhLnBhdGgsICcvZnJvYicpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNvbW1hbmQsIG1ldGhvZCkKKyAgICAgICAgICAgICAgICBpZiBtZXRob2QgPT0gJ0dFVCc6CisgICAgICAgICAgICAgICAgICAgIGQgPSBwYXJzZV9xcyhzZWxmLmxvZ19kYXRhLnF1ZXJ5KQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGQgPSBwYXJzZV9xcyhzZWxmLnBvc3RfZGF0YS5kZWNvZGUoJ3V0Zi04JykpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkWyduYW1lJ10sIFsnaHR0cCddKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZFsnZnVuY05hbWUnXSwgWyd0ZXN0X291dHB1dCddKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZFsnbXNnJ10sIFttc2ddKQorCisgICAgICAgICAgICBzZWxmLnNlcnZlci5zdG9wKDIuMCkKKyAgICAgICAgICAgIHNlbGYucm9vdF9sb2dnZXIucmVtb3ZlSGFuZGxlcihzZWxmLmhfaGRscikKKyAgICAgICAgICAgIHNlbGYuaF9oZGxyLmNsb3NlKCkKIAogY2xhc3MgTWVtb3J5VGVzdChCYXNlVGVzdCk6CiAKQEAgLTEwODUsMjggKzE3MDAsMzkgQEAKICAgICBkZWYgdGVzdF93YXJuaW5ncyhzZWxmKToKICAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgogICAgICAgICAgICAgbG9nZ2luZy5jYXB0dXJlV2FybmluZ3MoVHJ1ZSkKLSAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICB3YXJuaW5ncy5maWx0ZXJ3YXJuaW5ncygiYWx3YXlzIiwgY2F0ZWdvcnk9VXNlcldhcm5pbmcpCi0gICAgICAgICAgICAgICAgZmlsZSA9IGlvLlN0cmluZ0lPKCkKLSAgICAgICAgICAgICAgICBoID0gbG9nZ2luZy5TdHJlYW1IYW5kbGVyKGZpbGUpCi0gICAgICAgICAgICAgICAgbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoInB5Lndhcm5pbmdzIikKLSAgICAgICAgICAgICAgICBsb2dnZXIuYWRkSGFuZGxlcihoKQotICAgICAgICAgICAgICAgIHdhcm5pbmdzLndhcm4oIkknbSB3YXJuaW5nIHlvdS4uLiIpCi0gICAgICAgICAgICAgICAgbG9nZ2VyLnJlbW92ZUhhbmRsZXIoaCkKLSAgICAgICAgICAgICAgICBzID0gZmlsZS5nZXR2YWx1ZSgpCi0gICAgICAgICAgICAgICAgaC5jbG9zZSgpCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHMuZmluZCgiVXNlcldhcm5pbmc6IEknbSB3YXJuaW5nIHlvdS4uLlxuIikgPiAwKQorICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKGxvZ2dpbmcuY2FwdHVyZVdhcm5pbmdzLCBGYWxzZSkKKyAgICAgICAgICAgIHdhcm5pbmdzLmZpbHRlcndhcm5pbmdzKCJhbHdheXMiLCBjYXRlZ29yeT1Vc2VyV2FybmluZykKKyAgICAgICAgICAgIHN0cmVhbSA9IGlvLlN0cmluZ0lPKCkKKyAgICAgICAgICAgIGggPSBsb2dnaW5nLlN0cmVhbUhhbmRsZXIoc3RyZWFtKQorICAgICAgICAgICAgbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoInB5Lndhcm5pbmdzIikKKyAgICAgICAgICAgIGxvZ2dlci5hZGRIYW5kbGVyKGgpCisgICAgICAgICAgICB3YXJuaW5ncy53YXJuKCJJJ20gd2FybmluZyB5b3UuLi4iKQorICAgICAgICAgICAgbG9nZ2VyLnJlbW92ZUhhbmRsZXIoaCkKKyAgICAgICAgICAgIHMgPSBzdHJlYW0uZ2V0dmFsdWUoKQorICAgICAgICAgICAgaC5jbG9zZSgpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUocy5maW5kKCJVc2VyV2FybmluZzogSSdtIHdhcm5pbmcgeW91Li4uXG4iKSA+IDApCiAKLSAgICAgICAgICAgICAgICAjU2VlIGlmIGFuIGV4cGxpY2l0IGZpbGUgdXNlcyB0aGUgb3JpZ2luYWwgaW1wbGVtZW50YXRpb24KLSAgICAgICAgICAgICAgICBmaWxlID0gaW8uU3RyaW5nSU8oKQotICAgICAgICAgICAgICAgIHdhcm5pbmdzLnNob3d3YXJuaW5nKCJFeHBsaWNpdCIsIFVzZXJXYXJuaW5nLCAiZHVtbXkucHkiLCA0MiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlLCAiRHVtbXkgbGluZSIpCi0gICAgICAgICAgICAgICAgcyA9IGZpbGUuZ2V0dmFsdWUoKQotICAgICAgICAgICAgICAgIGZpbGUuY2xvc2UoKQotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocywKLSAgICAgICAgICAgICAgICAgICAgICAgICJkdW1teS5weTo0MjogVXNlcldhcm5pbmc6IEV4cGxpY2l0XG4gIER1bW15IGxpbmVcbiIpCi0gICAgICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgICAgIGxvZ2dpbmcuY2FwdHVyZVdhcm5pbmdzKEZhbHNlKQorICAgICAgICAgICAgI1NlZSBpZiBhbiBleHBsaWNpdCBmaWxlIHVzZXMgdGhlIG9yaWdpbmFsIGltcGxlbWVudGF0aW9uCisgICAgICAgICAgICBhX2ZpbGUgPSBpby5TdHJpbmdJTygpCisgICAgICAgICAgICB3YXJuaW5ncy5zaG93d2FybmluZygiRXhwbGljaXQiLCBVc2VyV2FybmluZywgImR1bW15LnB5IiwgNDIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhX2ZpbGUsICJEdW1teSBsaW5lIikKKyAgICAgICAgICAgIHMgPSBhX2ZpbGUuZ2V0dmFsdWUoKQorICAgICAgICAgICAgYV9maWxlLmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocywKKyAgICAgICAgICAgICAgICAiZHVtbXkucHk6NDI6IFVzZXJXYXJuaW5nOiBFeHBsaWNpdFxuICBEdW1teSBsaW5lXG4iKQorCisgICAgZGVmIHRlc3Rfd2FybmluZ3Nfbm9faGFuZGxlcnMoc2VsZik6CisgICAgICAgIHdpdGggd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKToKKyAgICAgICAgICAgIGxvZ2dpbmcuY2FwdHVyZVdhcm5pbmdzKFRydWUpCisgICAgICAgICAgICBzZWxmLmFkZENsZWFudXAobG9nZ2luZy5jYXB0dXJlV2FybmluZ3MsIEZhbHNlKQorCisgICAgICAgICAgICAjIGNvbmZpcm0gb3VyIGFzc3VtcHRpb246IG5vIGxvZ2dlcnMgYXJlIHNldAorICAgICAgICAgICAgbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoInB5Lndhcm5pbmdzIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobG9nZ2VyLmhhbmRsZXJzLCBbXSkKKworICAgICAgICAgICAgd2FybmluZ3Muc2hvd3dhcm5pbmcoIkV4cGxpY2l0IiwgVXNlcldhcm5pbmcsICJkdW1teS5weSIsIDQyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obG9nZ2VyLmhhbmRsZXJzKSwgMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShsb2dnZXIuaGFuZGxlcnNbMF0sIGxvZ2dpbmcuTnVsbEhhbmRsZXIpCiAKIAogZGVmIGZvcm1hdEZ1bmMoZm9ybWF0LCBkYXRlZm10PU5vbmUpOgpAQCAtMTk1OSw2ICsyNTg1LDcgQEAKICAgICAgICAgICAgIGxvZ2dpbmcuY29uZmlnLnN0b3BMaXN0ZW5pbmcoKQogICAgICAgICAgICAgdC5qb2luKDIuMCkKIAorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZGluZywgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCiAgICAgZGVmIHRlc3RfbGlzdGVuX2NvbmZpZ18xMF9vayhzZWxmKToKICAgICAgICAgd2l0aCBjYXB0dXJlZF9zdGRvdXQoKSBhcyBvdXRwdXQ6CiAgICAgICAgICAgICBzZWxmLnNldHVwX3ZpYV9saXN0ZW5lcihqc29uLmR1bXBzKHNlbGYuY29uZmlnMTApKQpAQCAtMTk3OCw2ICsyNjA1LDcgQEAKICAgICAgICAgICAgICAgICAoJ0VSUk9SJywgJzQnKSwKICAgICAgICAgICAgIF0sIHN0cmVhbT1vdXRwdXQpCiAKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWRpbmcsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQogICAgIGRlZiB0ZXN0X2xpc3Rlbl9jb25maWdfMV9vayhzZWxmKToKICAgICAgICAgd2l0aCBjYXB0dXJlZF9zdGRvdXQoKSBhcyBvdXRwdXQ6CiAgICAgICAgICAgICBzZWxmLnNldHVwX3ZpYV9saXN0ZW5lcih0ZXh0d3JhcC5kZWRlbnQoQ29uZmlnRmlsZVRlc3QuY29uZmlnMSkpCkBAIC0xOTkyLDYgKzI2MjAsMjcgQEAKICAgICAgICAgICAgICMgT3JpZ2luYWwgbG9nZ2VyIG91dHB1dCBpcyBlbXB0eS4KICAgICAgICAgICAgIHNlbGYuYXNzZXJ0X2xvZ19saW5lcyhbXSkKIAorICAgIGRlZiB0ZXN0X2Jhc2Vjb25maWcoc2VsZik6CisgICAgICAgIGQgPSB7CisgICAgICAgICAgICAnYXR1cGxlJzogKDEsIDIsIDMpLAorICAgICAgICAgICAgJ2FsaXN0JzogWydhJywgJ2InLCAnYyddLAorICAgICAgICAgICAgJ2FkaWN0JzogeydkJzogJ2UnLCAnZic6IDMgfSwKKyAgICAgICAgICAgICduZXN0MSc6ICgnZycsICgnaCcsICdpJyksICdqJyksCisgICAgICAgICAgICAnbmVzdDInOiBbJ2snLCBbJ2wnLCAnbSddLCAnbiddLAorICAgICAgICAgICAgJ25lc3QzJzogWydvJywgJ2NmZzovL2FsaXN0JywgJ3AnXSwKKyAgICAgICAgfQorICAgICAgICBiYyA9IGxvZ2dpbmcuY29uZmlnLkJhc2VDb25maWd1cmF0b3IoZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiYy5jb252ZXJ0KCdjZmc6Ly9hdHVwbGVbMV0nKSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiYy5jb252ZXJ0KCdjZmc6Ly9hbGlzdFsxXScpLCAnYicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYmMuY29udmVydCgnY2ZnOi8vbmVzdDFbMV1bMF0nKSwgJ2gnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJjLmNvbnZlcnQoJ2NmZzovL25lc3QyWzFdWzFdJyksICdtJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiYy5jb252ZXJ0KCdjZmc6Ly9hZGljdC5kJyksICdlJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiYy5jb252ZXJ0KCdjZmc6Ly9hZGljdFtmXScpLCAzKQorICAgICAgICB2ID0gYmMuY29udmVydCgnY2ZnOi8vbmVzdDMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYucG9wKDEpLCBbJ2EnLCAnYicsICdjJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEtleUVycm9yLCBiYy5jb252ZXJ0LCAnY2ZnOi8vbm9zdWNoJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYmMuY29udmVydCwgJ2NmZzovLyEnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhLZXlFcnJvciwgYmMuY29udmVydCwgJ2NmZzovL2FkaWN0WzJdJykKIAogY2xhc3MgTWFuYWdlclRlc3QoQmFzZVRlc3QpOgogICAgIGRlZiB0ZXN0X21hbmFnZXJfbG9nZ2VyY2xhc3Moc2VsZik6CkBAIC0yMDEwLDYgKzI2NTksMTEgQEAKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxvZ2dlZCwgWydzaG91bGQgYXBwZWFyIGluIGxvZ2dlZCddKQogCisgICAgZGVmIHRlc3Rfc2V0X2xvZ19yZWNvcmRfZmFjdG9yeShzZWxmKToKKyAgICAgICAgbWFuID0gbG9nZ2luZy5NYW5hZ2VyKE5vbmUpCisgICAgICAgIGV4cGVjdGVkID0gb2JqZWN0KCkKKyAgICAgICAgbWFuLnNldExvZ1JlY29yZEZhY3RvcnkoZXhwZWN0ZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuLmxvZ1JlY29yZEZhY3RvcnksIGV4cGVjdGVkKQogCiBjbGFzcyBDaGlsZExvZ2dlclRlc3QoQmFzZVRlc3QpOgogICAgIGRlZiB0ZXN0X2NoaWxkX2xvZ2dlcnMoc2VsZik6CkBAIC0yMTExLDYgKzI3NjUsMTggQEAKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhbmRsZXIubWF0Y2hlcyhsZXZlbG5vPWxvZ2dpbmcuRVJST1IsIG1lc3NhZ2U9JzInKSkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhbmRsZXIubWF0Y2hlcyhsZXZlbG5vPWxvZ2dpbmcuQ1JJVElDQUwsIG1lc3NhZ2U9JzMnKSkKIAorWkVSTyA9IGRhdGV0aW1lLnRpbWVkZWx0YSgwKQorCitjbGFzcyBVVEMoZGF0ZXRpbWUudHppbmZvKToKKyAgICBkZWYgdXRjb2Zmc2V0KHNlbGYsIGR0KToKKyAgICAgICAgcmV0dXJuIFpFUk8KKworICAgIGRzdCA9IHV0Y29mZnNldAorCisgICAgZGVmIHR6bmFtZShzZWxmLCBkdCk6CisgICAgICAgIHJldHVybiAnVVRDJworCit1dGMgPSBVVEMoKQogCiBjbGFzcyBGb3JtYXR0ZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgc2V0VXAoc2VsZik6CkBAIC0yMTg0LDYgKzI4NTAsNjkgQEAKICAgICAgICAgZiA9IGxvZ2dpbmcuRm9ybWF0dGVyKCdhc2N0aW1lJywgc3R5bGU9JyQnKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGYudXNlc1RpbWUoKSkKIAorICAgIGRlZiB0ZXN0X2ludmFsaWRfc3R5bGUoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGxvZ2dpbmcuRm9ybWF0dGVyLCBOb25lLCBOb25lLCAneCcpCisKKyAgICBkZWYgdGVzdF90aW1lKHNlbGYpOgorICAgICAgICByID0gc2VsZi5nZXRfcmVjb3JkKCkKKyAgICAgICAgZHQgPSBkYXRldGltZS5kYXRldGltZSgxOTkzLDQsMjEsOCwzLDAsMCx1dGMpCisgICAgICAgIHIuY3JlYXRlZCA9IHRpbWUubWt0aW1lKGR0LnRpbWV0dXBsZSgpKSAtIHRpbWUudGltZXpvbmUKKyAgICAgICAgci5tc2VjcyA9IDEyMworICAgICAgICBmID0gbG9nZ2luZy5Gb3JtYXR0ZXIoJyUoYXNjdGltZSlzICUobWVzc2FnZSlzJykKKyAgICAgICAgZi5jb252ZXJ0ZXIgPSB0aW1lLmdtdGltZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuZm9ybWF0VGltZShyKSwgJzE5OTMtMDQtMjEgMDg6MDM6MDAsMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLmZvcm1hdFRpbWUociwgJyVZOiVkJyksICcxOTkzOjIxJykKKyAgICAgICAgZi5mb3JtYXQocikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyLmFzY3RpbWUsICcxOTkzLTA0LTIxIDA4OjAzOjAwLDEyMycpCisKK2NsYXNzIFRlc3RCdWZmZXJpbmdGb3JtYXR0ZXIobG9nZ2luZy5CdWZmZXJpbmdGb3JtYXR0ZXIpOgorICAgIGRlZiBmb3JtYXRIZWFkZXIoc2VsZiwgcmVjb3Jkcyk6CisgICAgICAgIHJldHVybiAnWyglZCknICUgbGVuKHJlY29yZHMpCisKKyAgICBkZWYgZm9ybWF0Rm9vdGVyKHNlbGYsIHJlY29yZHMpOgorICAgICAgICByZXR1cm4gJyglZCldJyAlIGxlbihyZWNvcmRzKQorCitjbGFzcyBCdWZmZXJpbmdGb3JtYXR0ZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYucmVjb3JkcyA9IFsKKyAgICAgICAgICAgIGxvZ2dpbmcubWFrZUxvZ1JlY29yZCh7J21zZyc6ICdvbmUnfSksCisgICAgICAgICAgICBsb2dnaW5nLm1ha2VMb2dSZWNvcmQoeydtc2cnOiAndHdvJ30pLAorICAgICAgICBdCisKKyAgICBkZWYgdGVzdF9kZWZhdWx0KHNlbGYpOgorICAgICAgICBmID0gbG9nZ2luZy5CdWZmZXJpbmdGb3JtYXR0ZXIoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcnLCBmLmZvcm1hdChbXSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ29uZXR3bycsIGYuZm9ybWF0KHNlbGYucmVjb3JkcykpCisKKyAgICBkZWYgdGVzdF9jdXN0b20oc2VsZik6CisgICAgICAgIGYgPSBUZXN0QnVmZmVyaW5nRm9ybWF0dGVyKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnWygyKW9uZXR3bygyKV0nLCBmLmZvcm1hdChzZWxmLnJlY29yZHMpKQorICAgICAgICBsZiA9IGxvZ2dpbmcuRm9ybWF0dGVyKCc8JShtZXNzYWdlKXM+JykKKyAgICAgICAgZiA9IFRlc3RCdWZmZXJpbmdGb3JtYXR0ZXIobGYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1soMik8b25lPjx0d28+KDIpXScsIGYuZm9ybWF0KHNlbGYucmVjb3JkcykpCisKK2NsYXNzIEV4Y2VwdGlvblRlc3QoQmFzZVRlc3QpOgorICAgIGRlZiB0ZXN0X2Zvcm1hdHRpbmcoc2VsZik6CisgICAgICAgIHIgPSBzZWxmLnJvb3RfbG9nZ2VyCisgICAgICAgIGggPSBSZWNvcmRpbmdIYW5kbGVyKCkKKyAgICAgICAgci5hZGRIYW5kbGVyKGgpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcignZGVsaWJlcmF0ZSBtaXN0YWtlJykKKyAgICAgICAgZXhjZXB0OgorICAgICAgICAgICAgbG9nZ2luZy5leGNlcHRpb24oJ2ZhaWxlZCcsIHN0YWNrX2luZm89VHJ1ZSkKKyAgICAgICAgci5yZW1vdmVIYW5kbGVyKGgpCisgICAgICAgIGguY2xvc2UoKQorICAgICAgICByID0gaC5yZWNvcmRzWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyLmV4Y190ZXh0LnN0YXJ0c3dpdGgoJ1RyYWNlYmFjayAobW9zdCByZWNlbnQgJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjYWxsIGxhc3QpOlxuJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyLmV4Y190ZXh0LmVuZHN3aXRoKCdcblJ1bnRpbWVFcnJvcjogJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVsaWJlcmF0ZSBtaXN0YWtlJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyLnN0YWNrX2luZm8uc3RhcnRzd2l0aCgnU3RhY2sgKG1vc3QgcmVjZW50ICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY2FsbCBsYXN0KTpcbicpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoci5zdGFja19pbmZvLmVuZHN3aXRoKCdsb2dnaW5nLmV4Y2VwdGlvbihcJ2ZhaWxlZFwnLCAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzdGFja19pbmZvPVRydWUpJykpCisKKwogY2xhc3MgTGFzdFJlc29ydFRlc3QoQmFzZVRlc3QpOgogICAgIGRlZiB0ZXN0X2xhc3RfcmVzb3J0KHNlbGYpOgogICAgICAgICAjIFRlc3QgdGhlIGxhc3QgcmVzb3J0IGhhbmRsZXIKQEAgLTIxOTQsNiArMjkyMyw4IEBACiAgICAgICAgIG9sZF9yYWlzZV9leGNlcHRpb25zID0gbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgc3lzLnN0ZGVyciA9IHNpbyA9IGlvLlN0cmluZ0lPKCkKKyAgICAgICAgICAgIHJvb3QuZGVidWcoJ1RoaXMgc2hvdWxkIG5vdCBhcHBlYXInKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaW8uZ2V0dmFsdWUoKSwgJycpCiAgICAgICAgICAgICByb290Lndhcm5pbmcoJ1RoaXMgaXMgeW91ciBmaW5hbCBjaGFuY2UhJykKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2lvLmdldHZhbHVlKCksICdUaGlzIGlzIHlvdXIgZmluYWwgY2hhbmNlIVxuJykKICAgICAgICAgICAgICNObyBoYW5kbGVycyBhbmQgbm8gbGFzdCByZXNvcnQsIHNvICdObyBoYW5kbGVycycgbWVzc2FnZQpAQCAtMjIxOCw2ICsyOTQ5LDU4NiBAQAogICAgICAgICAgICAgbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMgPSBvbGRfcmFpc2VfZXhjZXB0aW9ucwogCiAKK2NsYXNzIEZha2VIYW5kbGVyOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGlkZW50aWZpZXIsIGNhbGxlZCk6CisgICAgICAgIGZvciBtZXRob2QgaW4gKCdhY3F1aXJlJywgJ2ZsdXNoJywgJ2Nsb3NlJywgJ3JlbGVhc2UnKToKKyAgICAgICAgICAgIHNldGF0dHIoc2VsZiwgbWV0aG9kLCBzZWxmLnJlY29yZF9jYWxsKGlkZW50aWZpZXIsIG1ldGhvZCwgY2FsbGVkKSkKKworICAgIGRlZiByZWNvcmRfY2FsbChzZWxmLCBpZGVudGlmaWVyLCBtZXRob2RfbmFtZSwgY2FsbGVkKToKKyAgICAgICAgZGVmIGlubmVyKCk6CisgICAgICAgICAgICBjYWxsZWQuYXBwZW5kKCd7fSAtIHt9Jy5mb3JtYXQoaWRlbnRpZmllciwgbWV0aG9kX25hbWUpKQorICAgICAgICByZXR1cm4gaW5uZXIKKworCitjbGFzcyBSZWNvcmRpbmdIYW5kbGVyKGxvZ2dpbmcuTnVsbEhhbmRsZXIpOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHN1cGVyKFJlY29yZGluZ0hhbmRsZXIsIHNlbGYpLl9faW5pdF9fKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgc2VsZi5yZWNvcmRzID0gW10KKworICAgIGRlZiBoYW5kbGUoc2VsZiwgcmVjb3JkKToKKyAgICAgICAgIiIiS2VlcCB0cmFjayBvZiBhbGwgdGhlIGVtaXR0ZWQgcmVjb3Jkcy4iIiIKKyAgICAgICAgc2VsZi5yZWNvcmRzLmFwcGVuZChyZWNvcmQpCisKKworY2xhc3MgU2h1dGRvd25UZXN0KEJhc2VUZXN0KToKKworICAgICIiIlRlc3Qgc3VpdGUgZm9yIHRoZSBzaHV0ZG93biBtZXRob2QuIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFNodXRkb3duVGVzdCwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLmNhbGxlZCA9IFtdCisKKyAgICAgICAgcmFpc2VfZXhjZXB0aW9ucyA9IGxvZ2dpbmcucmFpc2VFeGNlcHRpb25zCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZXRhdHRyLCBsb2dnaW5nLCAncmFpc2VFeGNlcHRpb25zJywgcmFpc2VfZXhjZXB0aW9ucykKKworICAgIGRlZiByYWlzZV9lcnJvcihzZWxmLCBlcnJvcik6CisgICAgICAgIGRlZiBpbm5lcigpOgorICAgICAgICAgICAgcmFpc2UgZXJyb3IoKQorICAgICAgICByZXR1cm4gaW5uZXIKKworICAgIGRlZiB0ZXN0X25vX2ZhaWx1cmUoc2VsZik6CisgICAgICAgICMgY3JlYXRlIHNvbWUgZmFrZSBoYW5kbGVycworICAgICAgICBoYW5kbGVyMCA9IEZha2VIYW5kbGVyKDAsIHNlbGYuY2FsbGVkKQorICAgICAgICBoYW5kbGVyMSA9IEZha2VIYW5kbGVyKDEsIHNlbGYuY2FsbGVkKQorICAgICAgICBoYW5kbGVyMiA9IEZha2VIYW5kbGVyKDIsIHNlbGYuY2FsbGVkKQorCisgICAgICAgICMgY3JlYXRlIGxpdmUgd2Vha3JlZiB0byB0aG9zZSBoYW5kbGVycworICAgICAgICBoYW5kbGVycyA9IG1hcChsb2dnaW5nLndlYWtyZWYucmVmLCBbaGFuZGxlcjAsIGhhbmRsZXIxLCBoYW5kbGVyMl0pCisKKyAgICAgICAgbG9nZ2luZy5zaHV0ZG93bihoYW5kbGVyTGlzdD1saXN0KGhhbmRsZXJzKSkKKworICAgICAgICBleHBlY3RlZCA9IFsnMiAtIGFjcXVpcmUnLCAnMiAtIGZsdXNoJywgJzIgLSBjbG9zZScsICcyIC0gcmVsZWFzZScsCisgICAgICAgICAgICAgICAgICAgICcxIC0gYWNxdWlyZScsICcxIC0gZmx1c2gnLCAnMSAtIGNsb3NlJywgJzEgLSByZWxlYXNlJywKKyAgICAgICAgICAgICAgICAgICAgJzAgLSBhY3F1aXJlJywgJzAgLSBmbHVzaCcsICcwIC0gY2xvc2UnLCAnMCAtIHJlbGVhc2UnXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBzZWxmLmNhbGxlZCkKKworICAgIGRlZiBfdGVzdF93aXRoX2ZhaWx1cmVfaW5fbWV0aG9kKHNlbGYsIG1ldGhvZCwgZXJyb3IpOgorICAgICAgICBoYW5kbGVyID0gRmFrZUhhbmRsZXIoMCwgc2VsZi5jYWxsZWQpCisgICAgICAgIHNldGF0dHIoaGFuZGxlciwgbWV0aG9kLCBzZWxmLnJhaXNlX2Vycm9yKGVycm9yKSkKKyAgICAgICAgaGFuZGxlcnMgPSBbbG9nZ2luZy53ZWFrcmVmLnJlZihoYW5kbGVyKV0KKworICAgICAgICBsb2dnaW5nLnNodXRkb3duKGhhbmRsZXJMaXN0PWxpc3QoaGFuZGxlcnMpKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzAgLSByZWxlYXNlJywgc2VsZi5jYWxsZWRbLTFdKQorCisgICAgZGVmIHRlc3Rfd2l0aF9pb2Vycm9yX2luX2FjcXVpcmUoc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCgnYWNxdWlyZScsIElPRXJyb3IpCisKKyAgICBkZWYgdGVzdF93aXRoX2lvZXJyb3JfaW5fZmx1c2goc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCgnZmx1c2gnLCBJT0Vycm9yKQorCisgICAgZGVmIHRlc3Rfd2l0aF9pb2Vycm9yX2luX2Nsb3NlKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X3dpdGhfZmFpbHVyZV9pbl9tZXRob2QoJ2Nsb3NlJywgSU9FcnJvcikKKworICAgIGRlZiB0ZXN0X3dpdGhfdmFsdWVlcnJvcl9pbl9hY3F1aXJlKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X3dpdGhfZmFpbHVyZV9pbl9tZXRob2QoJ2FjcXVpcmUnLCBWYWx1ZUVycm9yKQorCisgICAgZGVmIHRlc3Rfd2l0aF92YWx1ZWVycm9yX2luX2ZsdXNoKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X3dpdGhfZmFpbHVyZV9pbl9tZXRob2QoJ2ZsdXNoJywgVmFsdWVFcnJvcikKKworICAgIGRlZiB0ZXN0X3dpdGhfdmFsdWVlcnJvcl9pbl9jbG9zZShzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF93aXRoX2ZhaWx1cmVfaW5fbWV0aG9kKCdjbG9zZScsIFZhbHVlRXJyb3IpCisKKyAgICBkZWYgdGVzdF93aXRoX290aGVyX2Vycm9yX2luX2FjcXVpcmVfd2l0aG91dF9yYWlzZShzZWxmKToKKyAgICAgICAgbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMgPSBGYWxzZQorICAgICAgICBzZWxmLl90ZXN0X3dpdGhfZmFpbHVyZV9pbl9tZXRob2QoJ2FjcXVpcmUnLCBJbmRleEVycm9yKQorCisgICAgZGVmIHRlc3Rfd2l0aF9vdGhlcl9lcnJvcl9pbl9mbHVzaF93aXRob3V0X3JhaXNlKHNlbGYpOgorICAgICAgICBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucyA9IEZhbHNlCisgICAgICAgIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCgnZmx1c2gnLCBJbmRleEVycm9yKQorCisgICAgZGVmIHRlc3Rfd2l0aF9vdGhlcl9lcnJvcl9pbl9jbG9zZV93aXRob3V0X3JhaXNlKHNlbGYpOgorICAgICAgICBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucyA9IEZhbHNlCisgICAgICAgIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCgnY2xvc2UnLCBJbmRleEVycm9yKQorCisgICAgZGVmIHRlc3Rfd2l0aF9vdGhlcl9lcnJvcl9pbl9hY3F1aXJlX3dpdGhfcmFpc2Uoc2VsZik6CisgICAgICAgIGxvZ2dpbmcucmFpc2VFeGNlcHRpb25zID0gVHJ1ZQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yLCBzZWxmLl90ZXN0X3dpdGhfZmFpbHVyZV9pbl9tZXRob2QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICdhY3F1aXJlJywgSW5kZXhFcnJvcikKKworICAgIGRlZiB0ZXN0X3dpdGhfb3RoZXJfZXJyb3JfaW5fZmx1c2hfd2l0aF9yYWlzZShzZWxmKToKKyAgICAgICAgbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMgPSBUcnVlCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZsdXNoJywgSW5kZXhFcnJvcikKKworICAgIGRlZiB0ZXN0X3dpdGhfb3RoZXJfZXJyb3JfaW5fY2xvc2Vfd2l0aF9yYWlzZShzZWxmKToKKyAgICAgICAgbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMgPSBUcnVlCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Nsb3NlJywgSW5kZXhFcnJvcikKKworCitjbGFzcyBNb2R1bGVMZXZlbE1pc2NUZXN0KEJhc2VUZXN0KToKKworICAgICIiIlRlc3Qgc3VpdGUgZm9yIHNvbWUgbW9kdWxlIGxldmVsIG1ldGhvZHMuIiIiCisKKyAgICBkZWYgdGVzdF9kaXNhYmxlKHNlbGYpOgorICAgICAgICBvbGRfZGlzYWJsZSA9IGxvZ2dpbmcucm9vdC5tYW5hZ2VyLmRpc2FibGUKKyAgICAgICAgIyBjb25maXJtIG91ciBhc3N1bXB0aW9ucyBhcmUgY29ycmVjdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9sZF9kaXNhYmxlLCAwKQorICAgICAgICBzZWxmLmFkZENsZWFudXAobG9nZ2luZy5kaXNhYmxlLCBvbGRfZGlzYWJsZSkKKworICAgICAgICBsb2dnaW5nLmRpc2FibGUoODMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobG9nZ2luZy5yb290Lm1hbmFnZXIuZGlzYWJsZSwgODMpCisKKyAgICBkZWYgX3Rlc3RfbG9nKHNlbGYsIG1ldGhvZCwgbGV2ZWw9Tm9uZSk6CisgICAgICAgIGNhbGxlZCA9IFtdCisgICAgICAgIHBhdGNoKHNlbGYsIGxvZ2dpbmcsICdiYXNpY0NvbmZpZycsCisgICAgICAgICAgICAgIGxhbWJkYSAqYSwgKiprdzogY2FsbGVkLmFwcGVuZCgoYSwga3cpKSkKKworICAgICAgICByZWNvcmRpbmcgPSBSZWNvcmRpbmdIYW5kbGVyKCkKKyAgICAgICAgbG9nZ2luZy5yb290LmFkZEhhbmRsZXIocmVjb3JkaW5nKQorCisgICAgICAgIGxvZ19tZXRob2QgPSBnZXRhdHRyKGxvZ2dpbmcsIG1ldGhvZCkKKyAgICAgICAgaWYgbGV2ZWwgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBsb2dfbWV0aG9kKGxldmVsLCAidGVzdCBtZTogJXIiLCByZWNvcmRpbmcpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dfbWV0aG9kKCJ0ZXN0IG1lOiAlciIsIHJlY29yZGluZykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihyZWNvcmRpbmcucmVjb3JkcyksIDEpCisgICAgICAgIHJlY29yZCA9IHJlY29yZGluZy5yZWNvcmRzWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVjb3JkLmdldE1lc3NhZ2UoKSwgInRlc3QgbWU6ICVyIiAlIHJlY29yZGluZykKKworICAgICAgICBleHBlY3RlZF9sZXZlbCA9IGxldmVsIGlmIGxldmVsIGlzIG5vdCBOb25lIGVsc2UgZ2V0YXR0cihsb2dnaW5nLCBtZXRob2QudXBwZXIoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQubGV2ZWxubywgZXhwZWN0ZWRfbGV2ZWwpCisKKyAgICAgICAgIyBiYXNpY0NvbmZpZyB3YXMgbm90IGNhbGxlZCEKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjYWxsZWQsIFtdKQorCisgICAgZGVmIHRlc3RfbG9nKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnbG9nJywgbG9nZ2luZy5FUlJPUikKKworICAgIGRlZiB0ZXN0X2RlYnVnKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnZGVidWcnKQorCisgICAgZGVmIHRlc3RfaW5mbyhzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF9sb2coJ2luZm8nKQorCisgICAgZGVmIHRlc3Rfd2FybmluZyhzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF9sb2coJ3dhcm5pbmcnKQorCisgICAgZGVmIHRlc3RfZXJyb3Ioc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3RfbG9nKCdlcnJvcicpCisKKyAgICBkZWYgdGVzdF9jcml0aWNhbChzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF9sb2coJ2NyaXRpY2FsJykKKworICAgIGRlZiB0ZXN0X3NldF9sb2dnZXJfY2xhc3Moc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbG9nZ2luZy5zZXRMb2dnZXJDbGFzcywgb2JqZWN0KQorCisgICAgICAgIGNsYXNzIE15TG9nZ2VyKGxvZ2dpbmcuTG9nZ2VyKToKKyAgICAgICAgICAgIHBhc3MKKworICAgICAgICBsb2dnaW5nLnNldExvZ2dlckNsYXNzKE15TG9nZ2VyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxvZ2dpbmcuZ2V0TG9nZ2VyQ2xhc3MoKSwgTXlMb2dnZXIpCisKKyAgICAgICAgbG9nZ2luZy5zZXRMb2dnZXJDbGFzcyhsb2dnaW5nLkxvZ2dlcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsb2dnaW5nLmdldExvZ2dlckNsYXNzKCksIGxvZ2dpbmcuTG9nZ2VyKQorCitjbGFzcyBMb2dSZWNvcmRUZXN0KEJhc2VUZXN0KToKKyAgICBkZWYgdGVzdF9zdHJfcmVwKHNlbGYpOgorICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHt9KQorICAgICAgICBzID0gc3RyKHIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzLnN0YXJ0c3dpdGgoJzxMb2dSZWNvcmQ6ICcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUocy5lbmRzd2l0aCgnPicpKQorCisgICAgZGVmIHRlc3RfZGljdF9hcmcoc2VsZik6CisgICAgICAgIGggPSBSZWNvcmRpbmdIYW5kbGVyKCkKKyAgICAgICAgciA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCkKKyAgICAgICAgci5hZGRIYW5kbGVyKGgpCisgICAgICAgIGQgPSB7J2xlc3MnIDogJ21vcmUnIH0KKyAgICAgICAgbG9nZ2luZy53YXJuaW5nKCdsZXNzIGlzICUobGVzcylzJywgZCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhoLnJlY29yZHNbMF0uYXJncywgZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoLnJlY29yZHNbMF0ubWVzc2FnZSwgJ2xlc3MgaXMgbW9yZScpCisgICAgICAgIHIucmVtb3ZlSGFuZGxlcihoKQorICAgICAgICBoLmNsb3NlKCkKKworICAgIGRlZiB0ZXN0X211bHRpcHJvY2Vzc2luZyhzZWxmKToKKyAgICAgICAgciA9IGxvZ2dpbmcubWFrZUxvZ1JlY29yZCh7fSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyLnByb2Nlc3NOYW1lLCAnTWFpblByb2Nlc3MnKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBpbXBvcnQgbXVsdGlwcm9jZXNzaW5nIGFzIG1wCisgICAgICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHt9KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyLnByb2Nlc3NOYW1lLCBtcC5jdXJyZW50X3Byb2Nlc3MoKS5uYW1lKQorICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgICAgICAgICBwYXNzCisKKyAgICBkZWYgdGVzdF9vcHRpb25hbChzZWxmKToKKyAgICAgICAgciA9IGxvZ2dpbmcubWFrZUxvZ1JlY29yZCh7fSkKKyAgICAgICAgTk9UX05PTkUgPSBzZWxmLmFzc2VydElzTm90Tm9uZQorICAgICAgICBpZiB0aHJlYWRpbmc6CisgICAgICAgICAgICBOT1RfTk9ORShyLnRocmVhZCkKKyAgICAgICAgICAgIE5PVF9OT05FKHIudGhyZWFkTmFtZSkKKyAgICAgICAgTk9UX05PTkUoci5wcm9jZXNzKQorICAgICAgICBOT1RfTk9ORShyLnByb2Nlc3NOYW1lKQorICAgICAgICBsb2dfdGhyZWFkcyA9IGxvZ2dpbmcubG9nVGhyZWFkcworICAgICAgICBsb2dfcHJvY2Vzc2VzID0gbG9nZ2luZy5sb2dQcm9jZXNzZXMKKyAgICAgICAgbG9nX211bHRpcHJvY2Vzc2luZyA9IGxvZ2dpbmcubG9nTXVsdGlwcm9jZXNzaW5nCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGxvZ2dpbmcubG9nVGhyZWFkcyA9IEZhbHNlCisgICAgICAgICAgICBsb2dnaW5nLmxvZ1Byb2Nlc3NlcyA9IEZhbHNlCisgICAgICAgICAgICBsb2dnaW5nLmxvZ011bHRpcHJvY2Vzc2luZyA9IEZhbHNlCisgICAgICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHt9KQorICAgICAgICAgICAgTk9ORSA9IHNlbGYuYXNzZXJ0SXNOb25lCisgICAgICAgICAgICBOT05FKHIudGhyZWFkKQorICAgICAgICAgICAgTk9ORShyLnRocmVhZE5hbWUpCisgICAgICAgICAgICBOT05FKHIucHJvY2VzcykKKyAgICAgICAgICAgIE5PTkUoci5wcm9jZXNzTmFtZSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGxvZ2dpbmcubG9nVGhyZWFkcyA9IGxvZ190aHJlYWRzCisgICAgICAgICAgICBsb2dnaW5nLmxvZ1Byb2Nlc3NlcyA9IGxvZ19wcm9jZXNzZXMKKyAgICAgICAgICAgIGxvZ2dpbmcubG9nTXVsdGlwcm9jZXNzaW5nID0gbG9nX211bHRpcHJvY2Vzc2luZworCitjbGFzcyBCYXNpY0NvbmZpZ1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgIiIiVGVzdCBzdWl0ZSBmb3IgbG9nZ2luZy5iYXNpY0NvbmZpZy4iIiIKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoQmFzaWNDb25maWdUZXN0LCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYuaGFuZGxlcnMgPSBsb2dnaW5nLnJvb3QuaGFuZGxlcnMKKyAgICAgICAgc2VsZi5zYXZlZF9oYW5kbGVycyA9IGxvZ2dpbmcuX2hhbmRsZXJzLmNvcHkoKQorICAgICAgICBzZWxmLnNhdmVkX2hhbmRsZXJfbGlzdCA9IGxvZ2dpbmcuX2hhbmRsZXJMaXN0WzpdCisgICAgICAgIHNlbGYub3JpZ2luYWxfbG9nZ2luZ19sZXZlbCA9IGxvZ2dpbmcucm9vdC5sZXZlbAorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi5jbGVhbnVwKQorICAgICAgICBsb2dnaW5nLnJvb3QuaGFuZGxlcnMgPSBbXQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBmb3IgaCBpbiBsb2dnaW5nLnJvb3QuaGFuZGxlcnNbOl06CisgICAgICAgICAgICBsb2dnaW5nLnJvb3QucmVtb3ZlSGFuZGxlcihoKQorICAgICAgICAgICAgaC5jbG9zZSgpCisgICAgICAgIHN1cGVyKEJhc2ljQ29uZmlnVGVzdCwgc2VsZikudGVhckRvd24oKQorCisgICAgZGVmIGNsZWFudXAoc2VsZik6CisgICAgICAgIHNldGF0dHIobG9nZ2luZy5yb290LCAnaGFuZGxlcnMnLCBzZWxmLmhhbmRsZXJzKQorICAgICAgICBsb2dnaW5nLl9oYW5kbGVycy5jbGVhcigpCisgICAgICAgIGxvZ2dpbmcuX2hhbmRsZXJzLnVwZGF0ZShzZWxmLnNhdmVkX2hhbmRsZXJzKQorICAgICAgICBsb2dnaW5nLl9oYW5kbGVyTGlzdFs6XSA9IHNlbGYuc2F2ZWRfaGFuZGxlcl9saXN0CisgICAgICAgIGxvZ2dpbmcucm9vdC5sZXZlbCA9IHNlbGYub3JpZ2luYWxfbG9nZ2luZ19sZXZlbAorCisgICAgZGVmIHRlc3Rfbm9fa3dhcmdzKHNlbGYpOgorICAgICAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKCkKKworICAgICAgICAjIGhhbmRsZXIgZGVmYXVsdHMgdG8gYSBTdHJlYW1IYW5kbGVyIHRvIHN5cy5zdGRlcnIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obG9nZ2luZy5yb290LmhhbmRsZXJzKSwgMSkKKyAgICAgICAgaGFuZGxlciA9IGxvZ2dpbmcucm9vdC5oYW5kbGVyc1swXQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoaGFuZGxlciwgbG9nZ2luZy5TdHJlYW1IYW5kbGVyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhbmRsZXIuc3RyZWFtLCBzeXMuc3RkZXJyKQorCisgICAgICAgIGZvcm1hdHRlciA9IGhhbmRsZXIuZm9ybWF0dGVyCisgICAgICAgICMgZm9ybWF0IGRlZmF1bHRzIHRvIGxvZ2dpbmcuQkFTSUNfRk9STUFUCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0dGVyLl9zdHlsZS5fZm10LCBsb2dnaW5nLkJBU0lDX0ZPUk1BVCkKKyAgICAgICAgIyBkYXRlZm10IGRlZmF1bHRzIHRvIE5vbmUKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZm9ybWF0dGVyLmRhdGVmbXQpCisgICAgICAgICMgc3R5bGUgZGVmYXVsdHMgdG8gJQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZm9ybWF0dGVyLl9zdHlsZSwgbG9nZ2luZy5QZXJjZW50U3R5bGUpCisKKyAgICAgICAgIyBsZXZlbCBpcyBub3QgZXhwbGljaXRseSBzZXQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsb2dnaW5nLnJvb3QubGV2ZWwsIHNlbGYub3JpZ2luYWxfbG9nZ2luZ19sZXZlbCkKKworICAgIGRlZiB0ZXN0X2ZpbGVuYW1lKHNlbGYpOgorICAgICAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKGZpbGVuYW1lPSd0ZXN0LmxvZycpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obG9nZ2luZy5yb290LmhhbmRsZXJzKSwgMSkKKyAgICAgICAgaGFuZGxlciA9IGxvZ2dpbmcucm9vdC5oYW5kbGVyc1swXQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoaGFuZGxlciwgbG9nZ2luZy5GaWxlSGFuZGxlcikKKworICAgICAgICBleHBlY3RlZCA9IGxvZ2dpbmcuRmlsZUhhbmRsZXIoJ3Rlc3QubG9nJywgJ2EnKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoZXhwZWN0ZWQuY2xvc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFuZGxlci5zdHJlYW0ubW9kZSwgZXhwZWN0ZWQuc3RyZWFtLm1vZGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFuZGxlci5zdHJlYW0ubmFtZSwgZXhwZWN0ZWQuc3RyZWFtLm5hbWUpCisKKyAgICBkZWYgdGVzdF9maWxlbW9kZShzZWxmKToKKyAgICAgICAgbG9nZ2luZy5iYXNpY0NvbmZpZyhmaWxlbmFtZT0ndGVzdC5sb2cnLCBmaWxlbW9kZT0nd2InKQorCisgICAgICAgIGhhbmRsZXIgPSBsb2dnaW5nLnJvb3QuaGFuZGxlcnNbMF0KKyAgICAgICAgZXhwZWN0ZWQgPSBsb2dnaW5nLkZpbGVIYW5kbGVyKCd0ZXN0LmxvZycsICd3YicpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChleHBlY3RlZC5jbG9zZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYW5kbGVyLnN0cmVhbS5tb2RlLCBleHBlY3RlZC5zdHJlYW0ubW9kZSkKKworICAgIGRlZiB0ZXN0X3N0cmVhbShzZWxmKToKKyAgICAgICAgc3RyZWFtID0gaW8uU3RyaW5nSU8oKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3RyZWFtLmNsb3NlKQorICAgICAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKHN0cmVhbT1zdHJlYW0pCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obG9nZ2luZy5yb290LmhhbmRsZXJzKSwgMSkKKyAgICAgICAgaGFuZGxlciA9IGxvZ2dpbmcucm9vdC5oYW5kbGVyc1swXQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoaGFuZGxlciwgbG9nZ2luZy5TdHJlYW1IYW5kbGVyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhbmRsZXIuc3RyZWFtLCBzdHJlYW0pCisKKyAgICBkZWYgdGVzdF9mb3JtYXQoc2VsZik6CisgICAgICAgIGxvZ2dpbmcuYmFzaWNDb25maWcoZm9ybWF0PSdmb28nKQorCisgICAgICAgIGZvcm1hdHRlciA9IGxvZ2dpbmcucm9vdC5oYW5kbGVyc1swXS5mb3JtYXR0ZXIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXR0ZXIuX3N0eWxlLl9mbXQsICdmb28nKQorCisgICAgZGVmIHRlc3RfZGF0ZWZtdChzZWxmKToKKyAgICAgICAgbG9nZ2luZy5iYXNpY0NvbmZpZyhkYXRlZm10PSdiYXInKQorCisgICAgICAgIGZvcm1hdHRlciA9IGxvZ2dpbmcucm9vdC5oYW5kbGVyc1swXS5mb3JtYXR0ZXIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXR0ZXIuZGF0ZWZtdCwgJ2JhcicpCisKKyAgICBkZWYgdGVzdF9zdHlsZShzZWxmKToKKyAgICAgICAgbG9nZ2luZy5iYXNpY0NvbmZpZyhzdHlsZT0nJCcpCisKKyAgICAgICAgZm9ybWF0dGVyID0gbG9nZ2luZy5yb290LmhhbmRsZXJzWzBdLmZvcm1hdHRlcgorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZm9ybWF0dGVyLl9zdHlsZSwgbG9nZ2luZy5TdHJpbmdUZW1wbGF0ZVN0eWxlKQorCisgICAgZGVmIHRlc3RfbGV2ZWwoc2VsZik6CisgICAgICAgIG9sZF9sZXZlbCA9IGxvZ2dpbmcucm9vdC5sZXZlbAorICAgICAgICBzZWxmLmFkZENsZWFudXAobG9nZ2luZy5yb290LnNldExldmVsLCBvbGRfbGV2ZWwpCisKKyAgICAgICAgbG9nZ2luZy5iYXNpY0NvbmZpZyhsZXZlbD01NykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsb2dnaW5nLnJvb3QubGV2ZWwsIDU3KQorICAgICAgICAjIFRlc3QgdGhhdCBzZWNvbmQgY2FsbCBoYXMgbm8gZWZmZWN0CisgICAgICAgIGxvZ2dpbmcuYmFzaWNDb25maWcobGV2ZWw9NTgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobG9nZ2luZy5yb290LmxldmVsLCA1NykKKworICAgIGRlZiB0ZXN0X2luY29tcGF0aWJsZShzZWxmKToKKyAgICAgICAgYXNzZXJ0UmFpc2VzID0gc2VsZi5hc3NlcnRSYWlzZXMKKyAgICAgICAgaGFuZGxlcnMgPSBbbG9nZ2luZy5TdHJlYW1IYW5kbGVyKCldCisgICAgICAgIHN0cmVhbSA9IHN5cy5zdGRlcnIKKyAgICAgICAgYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGxvZ2dpbmcuYmFzaWNDb25maWcsIGZpbGVuYW1lPSd0ZXN0LmxvZycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmVhbT1zdHJlYW0pCisgICAgICAgIGFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBsb2dnaW5nLmJhc2ljQ29uZmlnLCBmaWxlbmFtZT0ndGVzdC5sb2cnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVycz1oYW5kbGVycykKKyAgICAgICAgYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGxvZ2dpbmcuYmFzaWNDb25maWcsIHN0cmVhbT1zdHJlYW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXJzPWhhbmRsZXJzKQorCisgICAgZGVmIHRlc3RfaGFuZGxlcnMoc2VsZik6CisgICAgICAgIGhhbmRsZXJzID0gWworICAgICAgICAgICAgbG9nZ2luZy5TdHJlYW1IYW5kbGVyKCksCisgICAgICAgICAgICBsb2dnaW5nLlN0cmVhbUhhbmRsZXIoc3lzLnN0ZG91dCksCisgICAgICAgICAgICBsb2dnaW5nLlN0cmVhbUhhbmRsZXIoKSwKKyAgICAgICAgXQorICAgICAgICBmID0gbG9nZ2luZy5Gb3JtYXR0ZXIoKQorICAgICAgICBoYW5kbGVyc1syXS5zZXRGb3JtYXR0ZXIoZikKKyAgICAgICAgbG9nZ2luZy5iYXNpY0NvbmZpZyhoYW5kbGVycz1oYW5kbGVycykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhoYW5kbGVyc1swXSwgbG9nZ2luZy5yb290LmhhbmRsZXJzWzBdKQorICAgICAgICBzZWxmLmFzc2VydElzKGhhbmRsZXJzWzFdLCBsb2dnaW5nLnJvb3QuaGFuZGxlcnNbMV0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoaGFuZGxlcnNbMl0sIGxvZ2dpbmcucm9vdC5oYW5kbGVyc1syXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdE5vbmUoaGFuZGxlcnNbMF0uZm9ybWF0dGVyKQorICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShoYW5kbGVyc1sxXS5mb3JtYXR0ZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoaGFuZGxlcnNbMl0uZm9ybWF0dGVyLCBmKQorICAgICAgICBzZWxmLmFzc2VydElzKGhhbmRsZXJzWzBdLmZvcm1hdHRlciwgaGFuZGxlcnNbMV0uZm9ybWF0dGVyKQorCisgICAgZGVmIF90ZXN0X2xvZyhzZWxmLCBtZXRob2QsIGxldmVsPU5vbmUpOgorICAgICAgICAjIGxvZ2dpbmcucm9vdCBoYXMgbm8gaGFuZGxlcnMgc28gYmFzaWNDb25maWcgc2hvdWxkIGJlIGNhbGxlZAorICAgICAgICBjYWxsZWQgPSBbXQorCisgICAgICAgIG9sZF9iYXNpY19jb25maWcgPSBsb2dnaW5nLmJhc2ljQ29uZmlnCisgICAgICAgIGRlZiBteV9iYXNpY19jb25maWcoKmEsICoqa3cpOgorICAgICAgICAgICAgb2xkX2Jhc2ljX2NvbmZpZygpCisgICAgICAgICAgICBvbGRfbGV2ZWwgPSBsb2dnaW5nLnJvb3QubGV2ZWwKKyAgICAgICAgICAgIGxvZ2dpbmcucm9vdC5zZXRMZXZlbCgxMDApICAjIGF2b2lkIGhhdmluZyBtZXNzYWdlcyBpbiBzdGRlcnIKKyAgICAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChsb2dnaW5nLnJvb3Quc2V0TGV2ZWwsIG9sZF9sZXZlbCkKKyAgICAgICAgICAgIGNhbGxlZC5hcHBlbmQoKGEsIGt3KSkKKworICAgICAgICBwYXRjaChzZWxmLCBsb2dnaW5nLCAnYmFzaWNDb25maWcnLCBteV9iYXNpY19jb25maWcpCisKKyAgICAgICAgbG9nX21ldGhvZCA9IGdldGF0dHIobG9nZ2luZywgbWV0aG9kKQorICAgICAgICBpZiBsZXZlbCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIGxvZ19tZXRob2QobGV2ZWwsICJ0ZXN0IG1lIikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ19tZXRob2QoInRlc3QgbWUiKQorCisgICAgICAgICMgYmFzaWNDb25maWcgd2FzIGNhbGxlZCB3aXRoIG5vIGFyZ3VtZW50cworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNhbGxlZCwgWygoKSwge30pXSkKKworICAgIGRlZiB0ZXN0X2xvZyhzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF9sb2coJ2xvZycsIGxvZ2dpbmcuV0FSTklORykKKworICAgIGRlZiB0ZXN0X2RlYnVnKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnZGVidWcnKQorCisgICAgZGVmIHRlc3RfaW5mbyhzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF9sb2coJ2luZm8nKQorCisgICAgZGVmIHRlc3Rfd2FybmluZyhzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF9sb2coJ3dhcm5pbmcnKQorCisgICAgZGVmIHRlc3RfZXJyb3Ioc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3RfbG9nKCdlcnJvcicpCisKKyAgICBkZWYgdGVzdF9jcml0aWNhbChzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF9sb2coJ2NyaXRpY2FsJykKKworCitjbGFzcyBMb2dnZXJBZGFwdGVyVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKExvZ2dlckFkYXB0ZXJUZXN0LCBzZWxmKS5zZXRVcCgpCisgICAgICAgIG9sZF9oYW5kbGVyX2xpc3QgPSBsb2dnaW5nLl9oYW5kbGVyTGlzdFs6XQorCisgICAgICAgIHNlbGYucmVjb3JkaW5nID0gUmVjb3JkaW5nSGFuZGxlcigpCisgICAgICAgIHNlbGYubG9nZ2VyID0gbG9nZ2luZy5yb290CisgICAgICAgIHNlbGYubG9nZ2VyLmFkZEhhbmRsZXIoc2VsZi5yZWNvcmRpbmcpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLmxvZ2dlci5yZW1vdmVIYW5kbGVyLCBzZWxmLnJlY29yZGluZykKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNlbGYucmVjb3JkaW5nLmNsb3NlKQorCisgICAgICAgIGRlZiBjbGVhbnVwKCk6CisgICAgICAgICAgICBsb2dnaW5nLl9oYW5kbGVyTGlzdFs6XSA9IG9sZF9oYW5kbGVyX2xpc3QKKworICAgICAgICBzZWxmLmFkZENsZWFudXAoY2xlYW51cCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKGxvZ2dpbmcuc2h1dGRvd24pCisgICAgICAgIHNlbGYuYWRhcHRlciA9IGxvZ2dpbmcuTG9nZ2VyQWRhcHRlcihsb2dnZXI9c2VsZi5sb2dnZXIsIGV4dHJhPU5vbmUpCisKKyAgICBkZWYgdGVzdF9leGNlcHRpb24oc2VsZik6CisgICAgICAgIG1zZyA9ICd0ZXN0aW5nIGV4Y2VwdGlvbjogJXInCisgICAgICAgIGV4YyA9IE5vbmUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgMSAvIDAKKyAgICAgICAgZXhjZXB0IFplcm9EaXZpc2lvbkVycm9yIGFzIGU6CisgICAgICAgICAgICBleGMgPSBlCisgICAgICAgICAgICBzZWxmLmFkYXB0ZXIuZXhjZXB0aW9uKG1zZywgc2VsZi5yZWNvcmRpbmcpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5yZWNvcmRpbmcucmVjb3JkcyksIDEpCisgICAgICAgIHJlY29yZCA9IHNlbGYucmVjb3JkaW5nLnJlY29yZHNbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQubGV2ZWxubywgbG9nZ2luZy5FUlJPUikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQubXNnLCBtc2cpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVjb3JkLmFyZ3MsIChzZWxmLnJlY29yZGluZywpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZC5leGNfaW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAoZXhjLl9fY2xhc3NfXywgZXhjLCBleGMuX190cmFjZWJhY2tfXykpCisKKyAgICBkZWYgdGVzdF9jcml0aWNhbChzZWxmKToKKyAgICAgICAgbXNnID0gJ2NyaXRpY2FsIHRlc3QhICVyJworICAgICAgICBzZWxmLmFkYXB0ZXIuY3JpdGljYWwobXNnLCBzZWxmLnJlY29yZGluZykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLnJlY29yZGluZy5yZWNvcmRzKSwgMSkKKyAgICAgICAgcmVjb3JkID0gc2VsZi5yZWNvcmRpbmcucmVjb3Jkc1swXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZC5sZXZlbG5vLCBsb2dnaW5nLkNSSVRJQ0FMKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZC5tc2csIG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQuYXJncywgKHNlbGYucmVjb3JkaW5nLCkpCisKKyAgICBkZWYgdGVzdF9pc19lbmFibGVkX2ZvcihzZWxmKToKKyAgICAgICAgb2xkX2Rpc2FibGUgPSBzZWxmLmFkYXB0ZXIubG9nZ2VyLm1hbmFnZXIuZGlzYWJsZQorICAgICAgICBzZWxmLmFkYXB0ZXIubG9nZ2VyLm1hbmFnZXIuZGlzYWJsZSA9IDMzCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZXRhdHRyLCBzZWxmLmFkYXB0ZXIubG9nZ2VyLm1hbmFnZXIsICdkaXNhYmxlJywKKyAgICAgICAgICAgICAgICAgICAgICAgIG9sZF9kaXNhYmxlKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlbGYuYWRhcHRlci5pc0VuYWJsZWRGb3IoMzIpKQorCisgICAgZGVmIHRlc3RfaGFzX2hhbmRsZXJzKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5hZGFwdGVyLmhhc0hhbmRsZXJzKCkpCisKKyAgICAgICAgZm9yIGhhbmRsZXIgaW4gc2VsZi5sb2dnZXIuaGFuZGxlcnM6CisgICAgICAgICAgICBzZWxmLmxvZ2dlci5yZW1vdmVIYW5kbGVyKGhhbmRsZXIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzZWxmLmxvZ2dlci5oYXNIYW5kbGVycygpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlbGYuYWRhcHRlci5oYXNIYW5kbGVycygpKQorCisKK2NsYXNzIExvZ2dlclRlc3QoQmFzZVRlc3QpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihMb2dnZXJUZXN0LCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYucmVjb3JkaW5nID0gUmVjb3JkaW5nSGFuZGxlcigpCisgICAgICAgIHNlbGYubG9nZ2VyID0gbG9nZ2luZy5Mb2dnZXIobmFtZT0nYmxhaCcpCisgICAgICAgIHNlbGYubG9nZ2VyLmFkZEhhbmRsZXIoc2VsZi5yZWNvcmRpbmcpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLmxvZ2dlci5yZW1vdmVIYW5kbGVyLCBzZWxmLnJlY29yZGluZykKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNlbGYucmVjb3JkaW5nLmNsb3NlKQorICAgICAgICBzZWxmLmFkZENsZWFudXAobG9nZ2luZy5zaHV0ZG93bikKKworICAgIGRlZiB0ZXN0X3NldF9pbnZhbGlkX2xldmVsKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYubG9nZ2VyLnNldExldmVsLCBvYmplY3QoKSkKKworICAgIGRlZiB0ZXN0X2V4Y2VwdGlvbihzZWxmKToKKyAgICAgICAgbXNnID0gJ3Rlc3RpbmcgZXhjZXB0aW9uOiAlcicKKyAgICAgICAgZXhjID0gTm9uZQorICAgICAgICB0cnk6CisgICAgICAgICAgICAxIC8gMAorICAgICAgICBleGNlcHQgWmVyb0RpdmlzaW9uRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGV4YyA9IGUKKyAgICAgICAgICAgIHNlbGYubG9nZ2VyLmV4Y2VwdGlvbihtc2csIHNlbGYucmVjb3JkaW5nKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYucmVjb3JkaW5nLnJlY29yZHMpLCAxKQorICAgICAgICByZWNvcmQgPSBzZWxmLnJlY29yZGluZy5yZWNvcmRzWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVjb3JkLmxldmVsbm8sIGxvZ2dpbmcuRVJST1IpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVjb3JkLm1zZywgbXNnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZC5hcmdzLCAoc2VsZi5yZWNvcmRpbmcsKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQuZXhjX2luZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgKGV4Yy5fX2NsYXNzX18sIGV4YywgZXhjLl9fdHJhY2ViYWNrX18pKQorCisgICAgZGVmIHRlc3RfbG9nX2ludmFsaWRfbGV2ZWxfd2l0aF9yYWlzZShzZWxmKToKKyAgICAgICAgb2xkX3JhaXNlID0gbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldGF0dHIsIGxvZ2dpbmcsICdyYWlzZUV4ZWNwdGlvbnMnLCBvbGRfcmFpc2UpCisKKyAgICAgICAgbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMgPSBUcnVlCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5sb2dnZXIubG9nLCAnMTAnLCAndGVzdCBtZXNzYWdlJykKKworICAgIGRlZiB0ZXN0X2xvZ19pbnZhbGlkX2xldmVsX25vX3JhaXNlKHNlbGYpOgorICAgICAgICBvbGRfcmFpc2UgPSBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucworICAgICAgICBzZWxmLmFkZENsZWFudXAoc2V0YXR0ciwgbG9nZ2luZywgJ3JhaXNlRXhlY3B0aW9ucycsIG9sZF9yYWlzZSkKKworICAgICAgICBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucyA9IEZhbHNlCisgICAgICAgIHNlbGYubG9nZ2VyLmxvZygnMTAnLCAndGVzdCBtZXNzYWdlJykgICMgbm8gZXhjZXB0aW9uIGhhcHBlbnMKKworICAgIGRlZiB0ZXN0X2ZpbmRfY2FsbGVyX3dpdGhfc3RhY2tfaW5mbyhzZWxmKToKKyAgICAgICAgY2FsbGVkID0gW10KKyAgICAgICAgcGF0Y2goc2VsZiwgbG9nZ2luZy50cmFjZWJhY2ssICdwcmludF9zdGFjaycsCisgICAgICAgICAgICAgIGxhbWJkYSBmLCBmaWxlOiBjYWxsZWQuYXBwZW5kKGZpbGUuZ2V0dmFsdWUoKSkpCisKKyAgICAgICAgc2VsZi5sb2dnZXIuZmluZENhbGxlcihzdGFja19pbmZvPVRydWUpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY2FsbGVkKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnU3RhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6XG4nLCBjYWxsZWRbMF0pCisKKyAgICBkZWYgdGVzdF9tYWtlX3JlY29yZF93aXRoX2V4dHJhX292ZXJ3cml0ZShzZWxmKToKKyAgICAgICAgbmFtZSA9ICdteSByZWNvcmQnCisgICAgICAgIGxldmVsID0gMTMKKyAgICAgICAgZm4gPSBsbm8gPSBtc2cgPSBhcmdzID0gZXhjX2luZm8gPSBmdW5jID0gc2luZm8gPSBOb25lCisgICAgICAgIHJ2ID0gbG9nZ2luZy5fbG9nUmVjb3JkRmFjdG9yeShuYW1lLCBsZXZlbCwgZm4sIGxubywgbXNnLCBhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhjX2luZm8sIGZ1bmMsIHNpbmZvKQorCisgICAgICAgIGZvciBrZXkgaW4gKCdtZXNzYWdlJywgJ2FzY3RpbWUnKSArIHR1cGxlKHJ2Ll9fZGljdF9fLmtleXMoKSk6CisgICAgICAgICAgICBleHRyYSA9IHtrZXk6ICdzb21lIHZhbHVlJ30KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEtleUVycm9yLCBzZWxmLmxvZ2dlci5tYWtlUmVjb3JkLCBuYW1lLCBsZXZlbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZuLCBsbm8sIG1zZywgYXJncywgZXhjX2luZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYT1leHRyYSwgc2luZm89c2luZm8pCisKKyAgICBkZWYgdGVzdF9tYWtlX3JlY29yZF93aXRoX2V4dHJhX25vX292ZXJ3cml0ZShzZWxmKToKKyAgICAgICAgbmFtZSA9ICdteSByZWNvcmQnCisgICAgICAgIGxldmVsID0gMTMKKyAgICAgICAgZm4gPSBsbm8gPSBtc2cgPSBhcmdzID0gZXhjX2luZm8gPSBmdW5jID0gc2luZm8gPSBOb25lCisgICAgICAgIGV4dHJhID0geyd2YWxpZF9rZXknOiAnc29tZSB2YWx1ZSd9CisgICAgICAgIHJlc3VsdCA9IHNlbGYubG9nZ2VyLm1ha2VSZWNvcmQobmFtZSwgbGV2ZWwsIGZuLCBsbm8sIG1zZywgYXJncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGNfaW5mbywgZXh0cmE9ZXh0cmEsIHNpbmZvPXNpbmZvKQorICAgICAgICBzZWxmLmFzc2VydEluKCd2YWxpZF9rZXknLCByZXN1bHQuX19kaWN0X18pCisKKyAgICBkZWYgdGVzdF9oYXNfaGFuZGxlcnMoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLmxvZ2dlci5oYXNIYW5kbGVycygpKQorCisgICAgICAgIGZvciBoYW5kbGVyIGluIHNlbGYubG9nZ2VyLmhhbmRsZXJzOgorICAgICAgICAgICAgc2VsZi5sb2dnZXIucmVtb3ZlSGFuZGxlcihoYW5kbGVyKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlbGYubG9nZ2VyLmhhc0hhbmRsZXJzKCkpCisKKyAgICBkZWYgdGVzdF9oYXNfaGFuZGxlcnNfbm9fcHJvcGFnYXRlKHNlbGYpOgorICAgICAgICBjaGlsZF9sb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcignYmxhaC5jaGlsZCcpCisgICAgICAgIGNoaWxkX2xvZ2dlci5wcm9wYWdhdGUgPSBGYWxzZQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGNoaWxkX2xvZ2dlci5oYXNIYW5kbGVycygpKQorCisgICAgZGVmIHRlc3RfaXNfZW5hYmxlZF9mb3Ioc2VsZik6CisgICAgICAgIG9sZF9kaXNhYmxlID0gc2VsZi5sb2dnZXIubWFuYWdlci5kaXNhYmxlCisgICAgICAgIHNlbGYubG9nZ2VyLm1hbmFnZXIuZGlzYWJsZSA9IDIzCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZXRhdHRyLCBzZWxmLmxvZ2dlci5tYW5hZ2VyLCAnZGlzYWJsZScsIG9sZF9kaXNhYmxlKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlbGYubG9nZ2VyLmlzRW5hYmxlZEZvcigyMikpCisKKyAgICBkZWYgdGVzdF9yb290X2xvZ2dlcl9hbGlhc2VzKHNlbGYpOgorICAgICAgICByb290ID0gbG9nZ2luZy5nZXRMb2dnZXIoKQorICAgICAgICBzZWxmLmFzc2VydElzKHJvb3QsIGxvZ2dpbmcucm9vdCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyb290LCBsb2dnaW5nLmdldExvZ2dlcihOb25lKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyb290LCBsb2dnaW5nLmdldExvZ2dlcignJykpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocm9vdCwgbG9nZ2luZy5nZXRMb2dnZXIoJ2ZvbycpLnJvb3QpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocm9vdCwgbG9nZ2luZy5nZXRMb2dnZXIoJ2Zvby5iYXInKS5yb290KQorICAgICAgICBzZWxmLmFzc2VydElzKHJvb3QsIGxvZ2dpbmcuZ2V0TG9nZ2VyKCdmb28nKS5wYXJlbnQpCisKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdChyb290LCBsb2dnaW5nLmdldExvZ2dlcignXDAnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdChyb290LCBsb2dnaW5nLmdldExvZ2dlcignZm9vLmJhcicpLnBhcmVudCkKKworICAgIGRlZiB0ZXN0X2ludmFsaWRfbmFtZXMoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbG9nZ2luZy5nZXRMb2dnZXIsIGFueSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsb2dnaW5nLmdldExvZ2dlciwgYidmb28nKQorCisKIGNsYXNzIEJhc2VGaWxlVGVzdChCYXNlVGVzdCk6CiAgICAgIkJhc2UgY2xhc3MgZm9yIGhhbmRsZXIgdGVzdHMgdGhhdCB3cml0ZSBsb2cgZmlsZXMiCiAKQEAgLTIyMzcsMTAgKzM1NDgsMjEgQEAKICAgICBkZWYgYXNzZXJ0TG9nRmlsZShzZWxmLCBmaWxlbmFtZSk6CiAgICAgICAgICJBc3NlcnQgYSBsb2cgZmlsZSBpcyB0aGVyZSBhbmQgcmVnaXN0ZXIgaXQgZm9yIGRlbGV0aW9uIgogICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMoZmlsZW5hbWUpLAotICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSJMb2cgZmlsZSAlciBkb2VzIG5vdCBleGlzdCIpCisgICAgICAgICAgICAgICAgICAgICAgICBtc2c9IkxvZyBmaWxlICVyIGRvZXMgbm90IGV4aXN0IiAlIGZpbGVuYW1lKQogICAgICAgICBzZWxmLnJtZmlsZXMuYXBwZW5kKGZpbGVuYW1lKQogCiAKK2NsYXNzIEZpbGVIYW5kbGVyVGVzdChCYXNlRmlsZVRlc3QpOgorICAgIGRlZiB0ZXN0X2RlbGF5KHNlbGYpOgorICAgICAgICBvcy51bmxpbmsoc2VsZi5mbikKKyAgICAgICAgZmggPSBsb2dnaW5nLkZpbGVIYW5kbGVyKHNlbGYuZm4sIGRlbGF5PVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGZoLnN0cmVhbSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhzZWxmLmZuKSkKKyAgICAgICAgZmguaGFuZGxlKGxvZ2dpbmcubWFrZUxvZ1JlY29yZCh7fSkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3ROb25lKGZoLnN0cmVhbSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKHNlbGYuZm4pKQorICAgICAgICBmaC5jbG9zZSgpCisKIGNsYXNzIFJvdGF0aW5nRmlsZUhhbmRsZXJUZXN0KEJhc2VGaWxlVGVzdCk6CiAgICAgZGVmIG5leHRfcmVjKHNlbGYpOgogICAgICAgICByZXR1cm4gbG9nZ2luZy5Mb2dSZWNvcmQoJ24nLCBsb2dnaW5nLkRFQlVHLCAncCcsIDEsCkBAIC0yMjY2LDIwICszNTg4LDExNiBAQAogICAgICAgICByaC5jbG9zZSgpCiAKICAgICBkZWYgdGVzdF9yb2xsb3Zlcl9maWxlbmFtZXMoc2VsZik6CisgICAgICAgIGRlZiBuYW1lcihuYW1lKToKKyAgICAgICAgICAgIHJldHVybiBuYW1lICsgIi50ZXN0IgogICAgICAgICByaCA9IGxvZ2dpbmcuaGFuZGxlcnMuUm90YXRpbmdGaWxlSGFuZGxlcigKICAgICAgICAgICAgIHNlbGYuZm4sIGJhY2t1cENvdW50PTIsIG1heEJ5dGVzPTEpCisgICAgICAgIHJoLm5hbWVyID0gbmFtZXIKICAgICAgICAgcmguZW1pdChzZWxmLm5leHRfcmVjKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0TG9nRmlsZShzZWxmLmZuKQogICAgICAgICByaC5lbWl0KHNlbGYubmV4dF9yZWMoKSkKLSAgICAgICAgc2VsZi5hc3NlcnRMb2dGaWxlKHNlbGYuZm4gKyAiLjEiKQorICAgICAgICBzZWxmLmFzc2VydExvZ0ZpbGUobmFtZXIoc2VsZi5mbiArICIuMSIpKQogICAgICAgICByaC5lbWl0KHNlbGYubmV4dF9yZWMoKSkKLSAgICAgICAgc2VsZi5hc3NlcnRMb2dGaWxlKHNlbGYuZm4gKyAiLjIiKQotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKHNlbGYuZm4gKyAiLjMiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRMb2dGaWxlKG5hbWVyKHNlbGYuZm4gKyAiLjIiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhuYW1lcihzZWxmLmZuICsgIi4zIikpKQorICAgICAgICByaC5jbG9zZSgpCisKKyAgICBkZWYgdGVzdF9yb3RhdG9yKHNlbGYpOgorICAgICAgICBkZWYgbmFtZXIobmFtZSk6CisgICAgICAgICAgICByZXR1cm4gbmFtZSArICIuZ3oiCisKKyAgICAgICAgZGVmIHJvdGF0b3Ioc291cmNlLCBkZXN0KToKKyAgICAgICAgICAgIHdpdGggb3Blbihzb3VyY2UsICJyYiIpIGFzIHNmOgorICAgICAgICAgICAgICAgIGRhdGEgPSBzZi5yZWFkKCkKKyAgICAgICAgICAgICAgICBjb21wcmVzc2VkID0gemxpYi5jb21wcmVzcyhkYXRhLCA5KQorICAgICAgICAgICAgICAgIHdpdGggb3BlbihkZXN0LCAid2IiKSBhcyBkZjoKKyAgICAgICAgICAgICAgICAgICAgZGYud3JpdGUoY29tcHJlc3NlZCkKKyAgICAgICAgICAgIG9zLnJlbW92ZShzb3VyY2UpCisKKyAgICAgICAgcmggPSBsb2dnaW5nLmhhbmRsZXJzLlJvdGF0aW5nRmlsZUhhbmRsZXIoCisgICAgICAgICAgICBzZWxmLmZuLCBiYWNrdXBDb3VudD0yLCBtYXhCeXRlcz0xKQorICAgICAgICByaC5yb3RhdG9yID0gcm90YXRvcgorICAgICAgICByaC5uYW1lciA9IG5hbWVyCisgICAgICAgIG0xID0gc2VsZi5uZXh0X3JlYygpCisgICAgICAgIHJoLmVtaXQobTEpCisgICAgICAgIHNlbGYuYXNzZXJ0TG9nRmlsZShzZWxmLmZuKQorICAgICAgICBtMiA9IHNlbGYubmV4dF9yZWMoKQorICAgICAgICByaC5lbWl0KG0yKQorICAgICAgICBmbiA9IG5hbWVyKHNlbGYuZm4gKyAiLjEiKQorICAgICAgICBzZWxmLmFzc2VydExvZ0ZpbGUoZm4pCisgICAgICAgIG5ld2xpbmUgPSBvcy5saW5lc2VwCisgICAgICAgIHdpdGggb3BlbihmbiwgInJiIikgYXMgZjoKKyAgICAgICAgICAgIGNvbXByZXNzZWQgPSBmLnJlYWQoKQorICAgICAgICAgICAgZGF0YSA9IHpsaWIuZGVjb21wcmVzcyhjb21wcmVzc2VkKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkYXRhLmRlY29kZSgiYXNjaWkiKSwgbTEubXNnICsgbmV3bGluZSkKKyAgICAgICAgcmguZW1pdChzZWxmLm5leHRfcmVjKCkpCisgICAgICAgIGZuID0gbmFtZXIoc2VsZi5mbiArICIuMiIpCisgICAgICAgIHNlbGYuYXNzZXJ0TG9nRmlsZShmbikKKyAgICAgICAgd2l0aCBvcGVuKGZuLCAicmIiKSBhcyBmOgorICAgICAgICAgICAgY29tcHJlc3NlZCA9IGYucmVhZCgpCisgICAgICAgICAgICBkYXRhID0gemxpYi5kZWNvbXByZXNzKGNvbXByZXNzZWQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRhdGEuZGVjb2RlKCJhc2NpaSIpLCBtMS5tc2cgKyBuZXdsaW5lKQorICAgICAgICByaC5lbWl0KHNlbGYubmV4dF9yZWMoKSkKKyAgICAgICAgZm4gPSBuYW1lcihzZWxmLmZuICsgIi4yIikKKyAgICAgICAgd2l0aCBvcGVuKGZuLCAicmIiKSBhcyBmOgorICAgICAgICAgICAgY29tcHJlc3NlZCA9IGYucmVhZCgpCisgICAgICAgICAgICBkYXRhID0gemxpYi5kZWNvbXByZXNzKGNvbXByZXNzZWQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRhdGEuZGVjb2RlKCJhc2NpaSIpLCBtMi5tc2cgKyBuZXdsaW5lKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKG5hbWVyKHNlbGYuZm4gKyAiLjMiKSkpCiAgICAgICAgIHJoLmNsb3NlKCkKIAogY2xhc3MgVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyVGVzdChCYXNlRmlsZVRlc3QpOgotICAgICMgdGVzdCBtZXRob2RzIGFkZGVkIGJlbG93Ci0gICAgcGFzcworICAgICMgb3RoZXIgdGVzdCBtZXRob2RzIGFkZGVkIGJlbG93CisgICAgZGVmIHRlc3Rfcm9sbG92ZXIoc2VsZik6CisgICAgICAgIGZoID0gbG9nZ2luZy5oYW5kbGVycy5UaW1lZFJvdGF0aW5nRmlsZUhhbmRsZXIoc2VsZi5mbiwgJ1MnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2t1cENvdW50PTEpCisgICAgICAgIGZtdCA9IGxvZ2dpbmcuRm9ybWF0dGVyKCclKGFzY3RpbWUpcyAlKG1lc3NhZ2UpcycpCisgICAgICAgIGZoLnNldEZvcm1hdHRlcihmbXQpCisgICAgICAgIHIxID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHsnbXNnJzogJ3Rlc3RpbmcgLSBpbml0aWFsJ30pCisgICAgICAgIGZoLmVtaXQocjEpCisgICAgICAgIHNlbGYuYXNzZXJ0TG9nRmlsZShzZWxmLmZuKQorICAgICAgICB0aW1lLnNsZWVwKDEuMSkgICAgIyBhIGxpdHRsZSBvdmVyIGEgc2Vjb25kIC4uLgorICAgICAgICByMiA9IGxvZ2dpbmcubWFrZUxvZ1JlY29yZCh7J21zZyc6ICd0ZXN0aW5nIC0gYWZ0ZXIgZGVsYXknfSkKKyAgICAgICAgZmguZW1pdChyMikKKyAgICAgICAgZmguY2xvc2UoKQorICAgICAgICAjIEF0IHRoaXMgcG9pbnQsIHdlIHNob3VsZCBoYXZlIGEgcmVjZW50IHJvdGF0ZWQgZmlsZSB3aGljaCB3ZQorICAgICAgICAjIGNhbiB0ZXN0IGZvciB0aGUgZXhpc3RlbmNlIG9mLiBIb3dldmVyLCBpbiBwcmFjdGljZSwgb24gc29tZQorICAgICAgICAjIG1hY2hpbmVzIHdoaWNoIHJ1biByZWFsbHkgc2xvd2x5LCB3ZSBkb24ndCBrbm93IGhvdyBmYXIgYmFjaworICAgICAgICAjIGluIHRpbWUgdG8gZ28gdG8gbG9vayBmb3IgdGhlIGxvZyBmaWxlLiBTbywgd2UgZ28gYmFjayBhIGZhaXIKKyAgICAgICAgIyBiaXQsIGFuZCBzdG9wIGFzIHNvb24gYXMgd2Ugc2VlIGEgcm90YXRlZCBmaWxlLiBJbiB0aGVvcnkgdGhpcworICAgICAgICAjIGNvdWxkIG9mIGNvdXJzZSBzdGlsbCBmYWlsLCBidXQgdGhlIGNoYW5jZXMgYXJlIGxvd2VyLgorICAgICAgICBmb3VuZCA9IEZhbHNlCisgICAgICAgIG5vdyA9IGRhdGV0aW1lLmRhdGV0aW1lLm5vdygpCisgICAgICAgIEdPX0JBQ0sgPSA1ICogNjAgIyBzZWNvbmRzCisgICAgICAgIGZvciBzZWNzIGluIHJhbmdlKEdPX0JBQ0spOgorICAgICAgICAgICAgcHJldiA9IG5vdyAtIGRhdGV0aW1lLnRpbWVkZWx0YShzZWNvbmRzPXNlY3MpCisgICAgICAgICAgICBmbiA9IHNlbGYuZm4gKyBwcmV2LnN0cmZ0aW1lKCIuJVktJW0tJWRfJUgtJU0tJVMiKQorICAgICAgICAgICAgZm91bmQgPSBvcy5wYXRoLmV4aXN0cyhmbikKKyAgICAgICAgICAgIGlmIGZvdW5kOgorICAgICAgICAgICAgICAgIHNlbGYucm1maWxlcy5hcHBlbmQoZm4pCisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgbXNnID0gJ05vIHJvdGF0ZWQgZmlsZXMgZm91bmQsIHdlbnQgYmFjayAlZCBzZWNvbmRzJyAlIEdPX0JBQ0sKKyAgICAgICAgaWYgbm90IGZvdW5kOgorICAgICAgICAgICAgI3ByaW50IGFkZGl0aW9uYWwgZGlhZ25vc3RpY3MKKyAgICAgICAgICAgIGRuLCBmbiA9IG9zLnBhdGguc3BsaXQoc2VsZi5mbikKKyAgICAgICAgICAgIGZpbGVzID0gW2YgZm9yIGYgaW4gb3MubGlzdGRpcihkbikgaWYgZi5zdGFydHN3aXRoKGZuKV0KKyAgICAgICAgICAgIHByaW50KCdUZXN0IHRpbWU6ICVzJyAlIG5vdy5zdHJmdGltZSgiJVktJW0tJWQgJUgtJU0tJVMiKSwgZmlsZT1zeXMuc3RkZXJyKQorICAgICAgICAgICAgcHJpbnQoJ1RoZSBvbmx5IG1hdGNoaW5nIGZpbGVzIGFyZTogJXMnICUgZmlsZXMsIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgICAgIGZvciBmIGluIGZpbGVzOgorICAgICAgICAgICAgICAgIHByaW50KCdDb250ZW50cyBvZiAlczonICUgZikKKyAgICAgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKGRuLCBmKQorICAgICAgICAgICAgICAgIHdpdGggb3BlbihwYXRoLCAncicpIGFzIHRmOgorICAgICAgICAgICAgICAgICAgICBwcmludCh0Zi5yZWFkKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmb3VuZCwgbXNnPW1zZykKKworICAgIGRlZiB0ZXN0X2ludmFsaWQoc2VsZik6CisgICAgICAgIGFzc2VydFJhaXNlcyA9IHNlbGYuYXNzZXJ0UmFpc2VzCisgICAgICAgIGFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBsb2dnaW5nLmhhbmRsZXJzLlRpbWVkUm90YXRpbmdGaWxlSGFuZGxlciwKKyAgICAgICAgICAgICAgICAgICAgIHNlbGYuZm4sICdYJywgZGVsYXk9VHJ1ZSkKKyAgICAgICAgYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGxvZ2dpbmcuaGFuZGxlcnMuVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICAgc2VsZi5mbiwgJ1cnLCBkZWxheT1UcnVlKQorICAgICAgICBhc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbG9nZ2luZy5oYW5kbGVycy5UaW1lZFJvdGF0aW5nRmlsZUhhbmRsZXIsCisgICAgICAgICAgICAgICAgICAgICBzZWxmLmZuLCAnVzcnLCBkZWxheT1UcnVlKQogCiBkZWYgc2VjcygqKmt3KToKICAgICByZXR1cm4gZGF0ZXRpbWUudGltZWRlbHRhKCoqa3cpIC8vIGRhdGV0aW1lLnRpbWVkZWx0YShzZWNvbmRzPTEpCkBAIC0yMzI4LDE5ICszNzQ2LDUxIEBACiAgICAgICAgIHJoLmNsb3NlKCkKICAgICBzZXRhdHRyKFRpbWVkUm90YXRpbmdGaWxlSGFuZGxlclRlc3QsICJ0ZXN0X2NvbXB1dGVfcm9sbG92ZXJfJXMiICUgd2hlbiwgdGVzdF9jb21wdXRlX3JvbGxvdmVyKQogCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKHdpbjMyZXZ0bG9nLCAnd2luMzJldnRsb2cvd2luMzJldnRsb2d1dGlsIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIE5URXZlbnRMb2dIYW5kbGVyVGVzdChCYXNlVGVzdCk6CisgICAgZGVmIHRlc3RfYmFzaWMoc2VsZik6CisgICAgICAgIGxvZ3R5cGUgPSAnQXBwbGljYXRpb24nCisgICAgICAgIGVsaCA9IHdpbjMyZXZ0bG9nLk9wZW5FdmVudExvZyhOb25lLCBsb2d0eXBlKQorICAgICAgICBudW1fcmVjcyA9IHdpbjMyZXZ0bG9nLkdldE51bWJlck9mRXZlbnRMb2dSZWNvcmRzKGVsaCkKKyAgICAgICAgaCA9IGxvZ2dpbmcuaGFuZGxlcnMuTlRFdmVudExvZ0hhbmRsZXIoJ3Rlc3RfbG9nZ2luZycpCisgICAgICAgIHIgPSBsb2dnaW5nLm1ha2VMb2dSZWNvcmQoeydtc2cnOiAnVGVzdCBMb2cgTWVzc2FnZSd9KQorICAgICAgICBoLmhhbmRsZShyKQorICAgICAgICBoLmNsb3NlKCkKKyAgICAgICAgIyBOb3cgc2VlIGlmIHRoZSBldmVudCBpcyByZWNvcmRlZAorICAgICAgICBzZWxmLmFzc2VydFRydWUobnVtX3JlY3MgPCB3aW4zMmV2dGxvZy5HZXROdW1iZXJPZkV2ZW50TG9nUmVjb3JkcyhlbGgpKQorICAgICAgICBmbGFncyA9IHdpbjMyZXZ0bG9nLkVWRU5UTE9HX0JBQ0tXQVJEU19SRUFEIHwgXAorICAgICAgICAgICAgICAgIHdpbjMyZXZ0bG9nLkVWRU5UTE9HX1NFUVVFTlRJQUxfUkVBRAorICAgICAgICBmb3VuZCA9IEZhbHNlCisgICAgICAgIEdPX0JBQ0sgPSAxMDAKKyAgICAgICAgZXZlbnRzID0gd2luMzJldnRsb2cuUmVhZEV2ZW50TG9nKGVsaCwgZmxhZ3MsIEdPX0JBQ0spCisgICAgICAgIGZvciBlIGluIGV2ZW50czoKKyAgICAgICAgICAgIGlmIGUuU291cmNlTmFtZSAhPSAndGVzdF9sb2dnaW5nJzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgbXNnID0gd2luMzJldnRsb2d1dGlsLlNhZmVGb3JtYXRNZXNzYWdlKGUsIGxvZ3R5cGUpCisgICAgICAgICAgICBpZiBtc2cgIT0gJ1Rlc3QgTG9nIE1lc3NhZ2VcclxuJzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZm91bmQgPSBUcnVlCisgICAgICAgICAgICBicmVhaworICAgICAgICBtc2cgPSAnUmVjb3JkIG5vdCBmb3VuZCBpbiBldmVudCBsb2csIHdlbnQgYmFjayAlZCByZWNvcmRzJyAlIEdPX0JBQ0sKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvdW5kLCBtc2c9bXNnKQorCiAjIFNldCB0aGUgbG9jYWxlIHRvIHRoZSBwbGF0Zm9ybS1kZXBlbmRlbnQgZGVmYXVsdC4gIEkgaGF2ZSBubyBpZGVhCiAjIHdoeSB0aGUgdGVzdCBkb2VzIHRoaXMsIGJ1dCBpbiBhbnkgY2FzZSB3ZSBzYXZlIHRoZSBjdXJyZW50IGxvY2FsZQogIyBmaXJzdCBhbmQgcmVzdG9yZSBpdCBhdCB0aGUgZW5kLgogQHJ1bl93aXRoX2xvY2FsZSgnTENfQUxMJywgJycpCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgcnVuX3VuaXR0ZXN0KEJ1aWx0aW5MZXZlbHNUZXN0LCBCYXNpY0ZpbHRlclRlc3QsCi0gICAgICAgICAgICAgICAgIEN1c3RvbUxldmVsc0FuZEZpbHRlcnNUZXN0LCBNZW1vcnlIYW5kbGVyVGVzdCwKLSAgICAgICAgICAgICAgICAgQ29uZmlnRmlsZVRlc3QsIFNvY2tldEhhbmRsZXJUZXN0LCBNZW1vcnlUZXN0LAotICAgICAgICAgICAgICAgICBFbmNvZGluZ1Rlc3QsIFdhcm5pbmdzVGVzdCwgQ29uZmlnRGljdFRlc3QsIE1hbmFnZXJUZXN0LAotICAgICAgICAgICAgICAgICBGb3JtYXR0ZXJUZXN0LAotICAgICAgICAgICAgICAgICBMb2dSZWNvcmRGYWN0b3J5VGVzdCwgQ2hpbGRMb2dnZXJUZXN0LCBRdWV1ZUhhbmRsZXJUZXN0LAotICAgICAgICAgICAgICAgICBSb3RhdGluZ0ZpbGVIYW5kbGVyVGVzdCwKLSAgICAgICAgICAgICAgICAgTGFzdFJlc29ydFRlc3QsCisgICAgICAgICAgICAgICAgIEN1c3RvbUxldmVsc0FuZEZpbHRlcnNUZXN0LCBIYW5kbGVyVGVzdCwgTWVtb3J5SGFuZGxlclRlc3QsCisgICAgICAgICAgICAgICAgIENvbmZpZ0ZpbGVUZXN0LCBTb2NrZXRIYW5kbGVyVGVzdCwgRGF0YWdyYW1IYW5kbGVyVGVzdCwKKyAgICAgICAgICAgICAgICAgTWVtb3J5VGVzdCwgRW5jb2RpbmdUZXN0LCBXYXJuaW5nc1Rlc3QsIENvbmZpZ0RpY3RUZXN0LAorICAgICAgICAgICAgICAgICBNYW5hZ2VyVGVzdCwgRm9ybWF0dGVyVGVzdCwgQnVmZmVyaW5nRm9ybWF0dGVyVGVzdCwKKyAgICAgICAgICAgICAgICAgU3RyZWFtSGFuZGxlclRlc3QsIExvZ1JlY29yZEZhY3RvcnlUZXN0LCBDaGlsZExvZ2dlclRlc3QsCisgICAgICAgICAgICAgICAgIFF1ZXVlSGFuZGxlclRlc3QsIFNodXRkb3duVGVzdCwgTW9kdWxlTGV2ZWxNaXNjVGVzdCwKKyAgICAgICAgICAgICAgICAgQmFzaWNDb25maWdUZXN0LCBMb2dnZXJBZGFwdGVyVGVzdCwgTG9nZ2VyVGVzdCwKKyAgICAgICAgICAgICAgICAgU01UUEhhbmRsZXJUZXN0LCBGaWxlSGFuZGxlclRlc3QsIFJvdGF0aW5nRmlsZUhhbmRsZXJUZXN0LAorICAgICAgICAgICAgICAgICBMYXN0UmVzb3J0VGVzdCwgTG9nUmVjb3JkVGVzdCwgRXhjZXB0aW9uVGVzdCwKKyAgICAgICAgICAgICAgICAgU3lzTG9nSGFuZGxlclRlc3QsIEhUVFBIYW5kbGVyVGVzdCwgTlRFdmVudExvZ0hhbmRsZXJUZXN0LAogICAgICAgICAgICAgICAgICBUaW1lZFJvdGF0aW5nRmlsZUhhbmRsZXJUZXN0CiAgICAgICAgICAgICAgICAgKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2xvbmcucHkgYi9MaWIvdGVzdC90ZXN0X2xvbmcucHkKaW5kZXggMDQwNjZlYy4uMDViM2UzZSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9sb25nLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbG9uZy5weQpAQCAtNDMsNiArNDMsNTMgQEAKIERCTF9NQU5UX0RJRyA9IHN5cy5mbG9hdF9pbmZvLm1hbnRfZGlnCiBEQkxfTUlOX09WRVJGTE9XID0gMioqREJMX01BWF9FWFAgLSAyKiooREJMX01BWF9FWFAgLSBEQkxfTUFOVF9ESUcgLSAxKQogCisKKyMgUHVyZSBQeXRob24gdmVyc2lvbiBvZiBjb3JyZWN0bHktcm91bmRlZCBpbnRlZ2VyLXRvLWZsb2F0IGNvbnZlcnNpb24uCitkZWYgaW50X3RvX2Zsb2F0KG4pOgorICAgICIiIgorICAgIENvcnJlY3RseS1yb3VuZGVkIGludGVnZXItdG8tZmxvYXQgY29udmVyc2lvbi4KKworICAgICIiIgorICAgICMgQ29uc3RhbnRzLCBkZXBlbmRpbmcgb25seSBvbiB0aGUgZmxvYXRpbmctcG9pbnQgZm9ybWF0IGluIHVzZS4KKyAgICAjIFdlIHVzZSBhbiBleHRyYSAyIGJpdHMgb2YgcHJlY2lzaW9uIGZvciByb3VuZGluZyBwdXJwb3Nlcy4KKyAgICBQUkVDSVNJT04gPSBzeXMuZmxvYXRfaW5mby5tYW50X2RpZyArIDIKKyAgICBTSElGVF9NQVggPSBzeXMuZmxvYXRfaW5mby5tYXhfZXhwIC0gUFJFQ0lTSU9OCisgICAgUV9NQVggPSAxIDw8IFBSRUNJU0lPTgorICAgIFJPVU5EX0hBTEZfVE9fRVZFTl9DT1JSRUNUSU9OID0gWzAsIC0xLCAtMiwgMSwgMCwgLTEsIDIsIDFdCisKKyAgICAjIFJlZHVjZSB0byB0aGUgY2FzZSB3aGVyZSBuIGlzIHBvc2l0aXZlLgorICAgIGlmIG4gPT0gMDoKKyAgICAgICAgcmV0dXJuIDAuMAorICAgIGVsaWYgbiA8IDA6CisgICAgICAgIHJldHVybiAtaW50X3RvX2Zsb2F0KC1uKQorCisgICAgIyBDb252ZXJ0IG4gdG8gYSAnZmxvYXRpbmctcG9pbnQnIG51bWJlciBxICogMioqc2hpZnQsIHdoZXJlIHEgaXMgYW4KKyAgICAjIGludGVnZXIgd2l0aCAnUFJFQ0lTSU9OJyBzaWduaWZpY2FudCBiaXRzLiAgV2hlbiBzaGlmdGluZyBuIHRvIGNyZWF0ZSBxLAorICAgICMgdGhlIGxlYXN0IHNpZ25pZmljYW50IGJpdCBvZiBxIGlzIHRyZWF0ZWQgYXMgJ3N0aWNreScuICBUaGF0IGlzLCB0aGUKKyAgICAjIGxlYXN0IHNpZ25pZmljYW50IGJpdCBvZiBxIGlzIHNldCBpZiBlaXRoZXIgdGhlIGNvcnJlc3BvbmRpbmcgYml0IG9mIG4KKyAgICAjIHdhcyBhbHJlYWR5IHNldCwgb3IgYW55IG9uZSBvZiB0aGUgYml0cyBvZiBuIGxvc3QgaW4gdGhlIHNoaWZ0IHdhcyBzZXQuCisgICAgc2hpZnQgPSBuLmJpdF9sZW5ndGgoKSAtIFBSRUNJU0lPTgorICAgIHEgPSBuIDw8IC1zaGlmdCBpZiBzaGlmdCA8IDAgZWxzZSAobiA+PiBzaGlmdCkgfCBib29sKG4gJiB+KC0xIDw8IHNoaWZ0KSkKKworICAgICMgUm91bmQgaGFsZiB0byBldmVuIChhY3R1YWxseSByb3VuZHMgdG8gdGhlIG5lYXJlc3QgbXVsdGlwbGUgb2YgNCwKKyAgICAjIHJvdW5kaW5nIHRpZXMgdG8gYSBtdWx0aXBsZSBvZiA4KS4KKyAgICBxICs9IFJPVU5EX0hBTEZfVE9fRVZFTl9DT1JSRUNUSU9OW3EgJiA3XQorCisgICAgIyBEZXRlY3Qgb3ZlcmZsb3cuCisgICAgaWYgc2hpZnQgKyAocSA9PSBRX01BWCkgPiBTSElGVF9NQVg6CisgICAgICAgIHJhaXNlIE92ZXJmbG93RXJyb3IoImludGVnZXIgdG9vIGxhcmdlIHRvIGNvbnZlcnQgdG8gZmxvYXQiKQorCisgICAgIyBDaGVja3M6IHEgaXMgZXhhY3RseSByZXByZXNlbnRhYmxlLCBhbmQgcSoqMioqc2hpZnQgZG9lc24ndCBvdmVyZmxvdy4KKyAgICBhc3NlcnQgcSAlIDQgPT0gMCBhbmQgcSAvLyA0IDw9IDIqKihzeXMuZmxvYXRfaW5mby5tYW50X2RpZykKKyAgICBhc3NlcnQgcSAqIDIqKnNoaWZ0IDw9IHN5cy5mbG9hdF9pbmZvLm1heAorCisgICAgIyBTb21lIGNpcmN1bGFyaXR5IGhlcmUsIHNpbmNlIGZsb2F0KHEpIGlzIGRvaW5nIGFuIGludC10by1mbG9hdAorICAgICMgY29udmVyc2lvbi4gIEJ1dCBoZXJlIHEgaXMgb2YgYm91bmRlZCBzaXplLCBhbmQgaXMgZXhhY3RseSByZXByZXNlbnRhYmxlCisgICAgIyBhcyBhIGZsb2F0LiAgSW4gYSBsb3ctbGV2ZWwgQy1saWtlIGxhbmd1YWdlLCB0aGlzIG9wZXJhdGlvbiB3b3VsZCBiZSBhCisgICAgIyBzaW1wbGUgY2FzdCAoZS5nLiwgZnJvbSB1bnNpZ25lZCBsb25nIGxvbmcgdG8gZG91YmxlKS4KKyAgICByZXR1cm4gbWF0aC5sZGV4cChmbG9hdChxKSwgc2hpZnQpCisKKwogIyBwdXJlIFB5dGhvbiB2ZXJzaW9uIG9mIGNvcnJlY3RseS1yb3VuZGVkIHRydWUgZGl2aXNpb24KIGRlZiB0cnVlZGl2KGEsIGIpOgogICAgICIiIkNvcnJlY3RseS1yb3VuZGVkIHRydWUgZGl2aXNpb24gZm9yIGludGVnZXJzLiIiIgpAQCAtMzY3LDYgKzQxNCwyMyBAQAogICAgICAgICAgICAgICAgIHJldHVybiAxNzI5CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaW50KExvbmdUcnVuYygpKSwgMTcyOSkKIAorICAgIGRlZiBjaGVja19mbG9hdF9jb252ZXJzaW9uKHNlbGYsIG4pOgorICAgICAgICAjIENoZWNrIHRoYXQgaW50IC0+IGZsb2F0IGNvbnZlcnNpb24gYmVoYXZpb3VyIG1hdGNoZXMKKyAgICAgICAgIyB0aGF0IG9mIHRoZSBwdXJlIFB5dGhvbiB2ZXJzaW9uIGFib3ZlLgorICAgICAgICB0cnk6CisgICAgICAgICAgICBhY3R1YWwgPSBmbG9hdChuKQorICAgICAgICBleGNlcHQgT3ZlcmZsb3dFcnJvcjoKKyAgICAgICAgICAgIGFjdHVhbCA9ICdvdmVyZmxvdycKKworICAgICAgICB0cnk6CisgICAgICAgICAgICBleHBlY3RlZCA9IGludF90b19mbG9hdChuKQorICAgICAgICBleGNlcHQgT3ZlcmZsb3dFcnJvcjoKKyAgICAgICAgICAgIGV4cGVjdGVkID0gJ292ZXJmbG93JworCisgICAgICAgIG1zZyA9ICgiRXJyb3IgaW4gY29udmVyc2lvbiBvZiBpbnRlZ2VyIHt9IHRvIGZsb2F0LiAgIgorICAgICAgICAgICAgICAgIkdvdCB7fSwgZXhwZWN0ZWQge30uIi5mb3JtYXQobiwgYWN0dWFsLCBleHBlY3RlZCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWN0dWFsLCBleHBlY3RlZCwgbXNnKQorCiAgICAgQHN1cHBvcnQucmVxdWlyZXNfSUVFRV83NTQKICAgICBkZWYgdGVzdF9mbG9hdF9jb252ZXJzaW9uKHNlbGYpOgogCkBAIC00MjEsNiArNDg1LDIyIEBACiAgICAgICAgICAgICB5ID0gMioqcCAqIDIqKjUzCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGludChmbG9hdCh4KSksIHkpCiAKKyAgICAgICAgIyBDb21wYXJlIGJ1aWx0aW4gZmxvYXQgY29udmVyc2lvbiB3aXRoIHB1cmUgUHl0aG9uIGludF90b19mbG9hdAorICAgICAgICAjIGZ1bmN0aW9uIGFib3ZlLgorICAgICAgICB0ZXN0X3ZhbHVlcyA9IFsKKyAgICAgICAgICAgIGludF9kYmxfbWF4LTEsIGludF9kYmxfbWF4LCBpbnRfZGJsX21heCsxLAorICAgICAgICAgICAgaGFsZndheS0xLCBoYWxmd2F5LCBoYWxmd2F5ICsgMSwKKyAgICAgICAgICAgIHRvcF9wb3dlci0xLCB0b3BfcG93ZXIsIHRvcF9wb3dlcisxLAorICAgICAgICAgICAgMip0b3BfcG93ZXItMSwgMip0b3BfcG93ZXIsIHRvcF9wb3dlcip0b3BfcG93ZXIsCisgICAgICAgIF0KKyAgICAgICAgdGVzdF92YWx1ZXMuZXh0ZW5kKGV4YWN0X3ZhbHVlcykKKyAgICAgICAgZm9yIHAgaW4gcmFuZ2UoLTQsIDgpOgorICAgICAgICAgICAgZm9yIHggaW4gcmFuZ2UoLTEyOCwgMTI4KToKKyAgICAgICAgICAgICAgICB0ZXN0X3ZhbHVlcy5hcHBlbmQoMioqKHArNTMpICsgeCkKKyAgICAgICAgZm9yIHZhbHVlIGluIHRlc3RfdmFsdWVzOgorICAgICAgICAgICAgc2VsZi5jaGVja19mbG9hdF9jb252ZXJzaW9uKHZhbHVlKQorICAgICAgICAgICAgc2VsZi5jaGVja19mbG9hdF9jb252ZXJzaW9uKC12YWx1ZSkKKwogICAgIGRlZiB0ZXN0X2Zsb2F0X292ZXJmbG93KHNlbGYpOgogICAgICAgICBmb3IgeCBpbiAtMi4wLCAtMS4wLCAwLjAsIDEuMCwgMi4wOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbG9hdChpbnQoeCkpLCB4KQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9sem1hLnB5IGIvTGliL3Rlc3QvdGVzdF9sem1hLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmZGU1NTcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X2x6bWEucHkKQEAgLTAsMCArMSwxMzQ0IEBACitmcm9tIGlvIGltcG9ydCBCeXRlc0lPLCBVbnN1cHBvcnRlZE9wZXJhdGlvbgoraW1wb3J0IG9zCitpbXBvcnQgcmFuZG9tCitpbXBvcnQgdW5pdHRlc3QKKworZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0ICgKKyAgICBfNEcsIFRFU1RGTiwgaW1wb3J0X21vZHVsZSwgYmlnbWVtdGVzdCwgcnVuX3VuaXR0ZXN0LCB1bmxpbmsKKykKKworbHptYSA9IGltcG9ydF9tb2R1bGUoImx6bWEiKQorZnJvbSBsem1hIGltcG9ydCBMWk1BQ29tcHJlc3NvciwgTFpNQURlY29tcHJlc3NvciwgTFpNQUVycm9yLCBMWk1BRmlsZQorCisKK2NsYXNzIENvbXByZXNzb3JEZWNvbXByZXNzb3JUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICAjIFRlc3QgZXJyb3IgY2FzZXMuCisKKyAgICBkZWYgdGVzdF9zaW1wbGVfYmFkX2FyZ3Moc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTFpNQUNvbXByZXNzb3IsIFtdKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIExaTUFDb21wcmVzc29yLCBmb3JtYXQ9My40NSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBMWk1BQ29tcHJlc3NvciwgY2hlY2s9IiIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTFpNQUNvbXByZXNzb3IsIHByZXNldD0iYXNkZiIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTFpNQUNvbXByZXNzb3IsIGZpbHRlcnM9MykKKyAgICAgICAgIyBDYW4ndCBzcGVjaWZ5IEZPUk1BVF9BVVRPIHdoZW4gY29tcHJlc3NpbmcuCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIExaTUFDb21wcmVzc29yLCBmb3JtYXQ9bHptYS5GT1JNQVRfQVVUTykKKyAgICAgICAgIyBDYW4ndCBzcGVjaWZ5IGEgcHJlc2V0IGFuZCBhIGN1c3RvbSBmaWx0ZXIgY2hhaW4gYXQgdGhlIHNhbWUgdGltZS4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFDb21wcmVzc29yKHByZXNldD03LCBmaWx0ZXJzPVt7ImlkIjogbHptYS5GSUxURVJfTFpNQTJ9XSkKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIExaTUFEZWNvbXByZXNzb3IsICgpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIExaTUFEZWNvbXByZXNzb3IsIG1lbWxpbWl0PWIicXciKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBMWk1BRGVjb21wcmVzc29yKGx6bWEuRk9STUFUX1JBVywgZmlsdGVycz0ienp6IikKKyAgICAgICAgIyBDYW5ub3Qgc3BlY2lmeSBhIG1lbW9yeSBsaW1pdCB3aXRoIEZJTFRFUl9SQVcuCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRGVjb21wcmVzc29yKGx6bWEuRk9STUFUX1JBVywgbWVtbGltaXQ9MHgxMDAwMDAwKQorICAgICAgICAjIENhbiBvbmx5IHNwZWNpZnkgYSBjdXN0b20gZmlsdGVyIGNoYWluIHdpdGggRklMVEVSX1JBVy4KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgTFpNQURlY29tcHJlc3NvciwgZmlsdGVycz1GSUxURVJTX1JBV18xKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQURlY29tcHJlc3Nvcihmb3JtYXQ9bHptYS5GT1JNQVRfWFosIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFEZWNvbXByZXNzb3IoZm9ybWF0PWx6bWEuRk9STUFUX0FMT05FLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpCisKKyAgICAgICAgbHpjID0gTFpNQUNvbXByZXNzb3IoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGx6Yy5jb21wcmVzcykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsemMuY29tcHJlc3MsIGIiZm9vIiwgYiJiYXIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGx6Yy5mbHVzaCwgYiJibGFoIikKKyAgICAgICAgZW1wdHkgPSBsemMuZmx1c2goKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBsemMuY29tcHJlc3MsIGIicXV1eCIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGx6Yy5mbHVzaCkKKworICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsemQuZGVjb21wcmVzcykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsemQuZGVjb21wcmVzcywgYiJmb28iLCBiImJhciIpCisgICAgICAgIGx6ZC5kZWNvbXByZXNzKGVtcHR5KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhFT0ZFcnJvciwgbHpkLmRlY29tcHJlc3MsIGIicXV1eCIpCisKKyAgICBkZWYgdGVzdF9iYWRfZmlsdGVyX3NwZWMoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTFpNQUNvbXByZXNzb3IsIGZpbHRlcnM9W2Iid29ic2l0ZSJdKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBMWk1BQ29tcHJlc3NvciwgZmlsdGVycz1beyJ4eXp6eSI6IDN9XSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgTFpNQUNvbXByZXNzb3IsIGZpbHRlcnM9W3siaWQiOiA5ODc2NX1dKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUNvbXByZXNzb3IoZmlsdGVycz1beyJpZCI6IGx6bWEuRklMVEVSX0xaTUEyLCAiZm9vIjogMH1dKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUNvbXByZXNzb3IoZmlsdGVycz1beyJpZCI6IGx6bWEuRklMVEVSX0RFTFRBLCAiZm9vIjogMH1dKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUNvbXByZXNzb3IoZmlsdGVycz1beyJpZCI6IGx6bWEuRklMVEVSX1g4NiwgImZvbyI6IDB9XSkKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3Nvcl9hZnRlcl9lb2Yoc2VsZik6CisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IoKQorICAgICAgICBsemQuZGVjb21wcmVzcyhDT01QUkVTU0VEX1haKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhFT0ZFcnJvciwgbHpkLmRlY29tcHJlc3MsIGIibnlhbiIpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfbWVtbGltaXQoc2VsZik6CisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobWVtbGltaXQ9MTAyNCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsemQuZGVjb21wcmVzcywgQ09NUFJFU1NFRF9YWikKKworICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKGx6bWEuRk9STUFUX1haLCBtZW1saW1pdD0xMDI0KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IsIGx6ZC5kZWNvbXByZXNzLCBDT01QUkVTU0VEX1haKQorCisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfQUxPTkUsIG1lbWxpbWl0PTEwMjQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHpkLmRlY29tcHJlc3MsIENPTVBSRVNTRURfQUxPTkUpCisKKyAgICAjIFRlc3QgTFpNQURlY29tcHJlc3NvciBvbiBrbm93bi1nb29kIGlucHV0IGRhdGEuCisKKyAgICBkZWYgX3Rlc3RfZGVjb21wcmVzc29yKHNlbGYsIGx6ZCwgZGF0YSwgY2hlY2ssIHVudXNlZF9kYXRhPWIiIik6CisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UobHpkLmVvZikKKyAgICAgICAgb3V0ID0gbHpkLmRlY29tcHJlc3MoZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXQsIElOUFVUKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGx6ZC5jaGVjaywgY2hlY2spCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShsemQuZW9mKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGx6ZC51bnVzZWRfZGF0YSwgdW51c2VkX2RhdGEpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfYXV0byhzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3NvcigpCisgICAgICAgIHNlbGYuX3Rlc3RfZGVjb21wcmVzc29yKGx6ZCwgQ09NUFJFU1NFRF9YWiwgbHptYS5DSEVDS19DUkM2NCkKKworICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBDT01QUkVTU0VEX0FMT05FLCBsem1hLkNIRUNLX05PTkUpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfeHooc2VsZik6CisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfWFopCisgICAgICAgIHNlbGYuX3Rlc3RfZGVjb21wcmVzc29yKGx6ZCwgQ09NUFJFU1NFRF9YWiwgbHptYS5DSEVDS19DUkM2NCkKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3Nvcl9hbG9uZShzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3Nvcihsem1hLkZPUk1BVF9BTE9ORSkKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBDT01QUkVTU0VEX0FMT05FLCBsem1hLkNIRUNLX05PTkUpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfcmF3XzEoc2VsZik6CisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpCisgICAgICAgIHNlbGYuX3Rlc3RfZGVjb21wcmVzc29yKGx6ZCwgQ09NUFJFU1NFRF9SQVdfMSwgbHptYS5DSEVDS19OT05FKQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc29yX3Jhd18yKHNlbGYpOgorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKGx6bWEuRk9STUFUX1JBVywgZmlsdGVycz1GSUxURVJTX1JBV18yKQorICAgICAgICBzZWxmLl90ZXN0X2RlY29tcHJlc3NvcihsemQsIENPTVBSRVNTRURfUkFXXzIsIGx6bWEuQ0hFQ0tfTk9ORSkKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3Nvcl9yYXdfMyhzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3Nvcihsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMykKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBDT01QUkVTU0VEX1JBV18zLCBsem1hLkNIRUNLX05PTkUpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfcmF3XzQoc2VsZik6CisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzQpCisgICAgICAgIHNlbGYuX3Rlc3RfZGVjb21wcmVzc29yKGx6ZCwgQ09NUFJFU1NFRF9SQVdfNCwgbHptYS5DSEVDS19OT05FKQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc29yX2NodW5rcyhzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3NvcigpCisgICAgICAgIG91dCA9IFtdCisgICAgICAgIGZvciBpIGluIHJhbmdlKDAsIGxlbihDT01QUkVTU0VEX1haKSwgMTApOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShsemQuZW9mKQorICAgICAgICAgICAgb3V0LmFwcGVuZChsemQuZGVjb21wcmVzcyhDT01QUkVTU0VEX1haW2k6aSsxMF0pKQorICAgICAgICBvdXQgPSBiIiIuam9pbihvdXQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0LCBJTlBVVCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsemQuY2hlY2ssIGx6bWEuQ0hFQ0tfQ1JDNjQpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShsemQuZW9mKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGx6ZC51bnVzZWRfZGF0YSwgYiIiKQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc29yX3VudXNlZF9kYXRhKHNlbGYpOgorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgZXh0cmEgPSBiImZvb2JsaWJhciIKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBDT01QUkVTU0VEX1haICsgZXh0cmEsIGx6bWEuQ0hFQ0tfQ1JDNjQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVudXNlZF9kYXRhPWV4dHJhKQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc29yX2JhZF9pbnB1dChzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3NvcigpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHpkLmRlY29tcHJlc3MsIENPTVBSRVNTRURfUkFXXzEpCisKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3Nvcihsem1hLkZPUk1BVF9YWikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsemQuZGVjb21wcmVzcywgQ09NUFJFU1NFRF9BTE9ORSkKKworICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKGx6bWEuRk9STUFUX0FMT05FKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IsIGx6ZC5kZWNvbXByZXNzLCBDT01QUkVTU0VEX1haKQorCisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHpkLmRlY29tcHJlc3MsIENPTVBSRVNTRURfWFopCisKKyAgICAjIFRlc3QgdGhhdCBMWk1BQ29tcHJlc3Nvci0+TFpNQURlY29tcHJlc3NvciBwcmVzZXJ2ZXMgdGhlIGlucHV0IGRhdGEuCisKKyAgICBkZWYgdGVzdF9yb3VuZHRyaXBfeHooc2VsZik6CisgICAgICAgIGx6YyA9IExaTUFDb21wcmVzc29yKCkKKyAgICAgICAgY2RhdGEgPSBsemMuY29tcHJlc3MoSU5QVVQpICsgbHpjLmZsdXNoKCkKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3NvcigpCisgICAgICAgIHNlbGYuX3Rlc3RfZGVjb21wcmVzc29yKGx6ZCwgY2RhdGEsIGx6bWEuQ0hFQ0tfQ1JDNjQpCisKKyAgICBkZWYgdGVzdF9yb3VuZHRyaXBfYWxvbmUoc2VsZik6CisgICAgICAgIGx6YyA9IExaTUFDb21wcmVzc29yKGx6bWEuRk9STUFUX0FMT05FKQorICAgICAgICBjZGF0YSA9IGx6Yy5jb21wcmVzcyhJTlBVVCkgKyBsemMuZmx1c2goKQorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBjZGF0YSwgbHptYS5DSEVDS19OT05FKQorCisgICAgZGVmIHRlc3Rfcm91bmR0cmlwX3JhdyhzZWxmKToKKyAgICAgICAgbHpjID0gTFpNQUNvbXByZXNzb3IobHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzQpCisgICAgICAgIGNkYXRhID0gbHpjLmNvbXByZXNzKElOUFVUKSArIGx6Yy5mbHVzaCgpCisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzQpCisgICAgICAgIHNlbGYuX3Rlc3RfZGVjb21wcmVzc29yKGx6ZCwgY2RhdGEsIGx6bWEuQ0hFQ0tfTk9ORSkKKworICAgIGRlZiB0ZXN0X3JvdW5kdHJpcF9jaHVua3Moc2VsZik6CisgICAgICAgIGx6YyA9IExaTUFDb21wcmVzc29yKCkKKyAgICAgICAgY2RhdGEgPSBbXQorICAgICAgICBmb3IgaSBpbiByYW5nZSgwLCBsZW4oSU5QVVQpLCAxMCk6CisgICAgICAgICAgICBjZGF0YS5hcHBlbmQobHpjLmNvbXByZXNzKElOUFVUW2k6aSsxMF0pKQorICAgICAgICBjZGF0YS5hcHBlbmQobHpjLmZsdXNoKCkpCisgICAgICAgIGNkYXRhID0gYiIiLmpvaW4oY2RhdGEpCisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IoKQorICAgICAgICBzZWxmLl90ZXN0X2RlY29tcHJlc3NvcihsemQsIGNkYXRhLCBsem1hLkNIRUNLX0NSQzY0KQorCisgICAgIyBMWk1BRGVjb21wcmVzc29yIGludGVudGlvbmFsbHkgZG9lcyBub3QgaGFuZGxlIGNvbmNhdGVuYXRlZCBzdHJlYW1zLgorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc29yX211bHRpc3RyZWFtKHNlbGYpOgorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBDT01QUkVTU0VEX1haICsgQ09NUFJFU1NFRF9BTE9ORSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHptYS5DSEVDS19DUkM2NCwgdW51c2VkX2RhdGE9Q09NUFJFU1NFRF9BTE9ORSkKKworICAgICMgVGVzdCB3aXRoIGlucHV0cyBsYXJnZXIgdGhhbiA0R2lCLgorCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fNEcgKyAxMDAsIG1lbXVzZT0yKQorICAgIGRlZiB0ZXN0X2NvbXByZXNzb3JfYmlnbWVtKHNlbGYsIHNpemUpOgorICAgICAgICBsemMgPSBMWk1BQ29tcHJlc3NvcigpCisgICAgICAgIGNkYXRhID0gbHpjLmNvbXByZXNzKGIieCIgKiBzaXplKSArIGx6Yy5mbHVzaCgpCisgICAgICAgIGRkYXRhID0gbHptYS5kZWNvbXByZXNzKGNkYXRhKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihkZGF0YSksIHNpemUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihkZGF0YS5zdHJpcChiIngiKSksIDApCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBkZGF0YSA9IE5vbmUKKworICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHICsgMTAwLCBtZW11c2U9MykKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfYmlnbWVtKHNlbGYsIHNpemUpOgorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgYmxvY2tzaXplID0gMTAgKiAxMDI0ICogMTAyNAorICAgICAgICBibG9jayA9IHJhbmRvbS5nZXRyYW5kYml0cyhibG9ja3NpemUgKiA4KS50b19ieXRlcyhibG9ja3NpemUsICJsaXR0bGUiKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBpbnB1dCA9IGJsb2NrICogKHNpemUgLy8gYmxvY2tzaXplICsgMSkKKyAgICAgICAgICAgIGNkYXRhID0gbHptYS5jb21wcmVzcyhpbnB1dCkKKyAgICAgICAgICAgIGRkYXRhID0gbHpkLmRlY29tcHJlc3MoY2RhdGEpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRkYXRhLCBpbnB1dCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGlucHV0ID0gY2RhdGEgPSBkZGF0YSA9IE5vbmUKKworCitjbGFzcyBDb21wcmVzc0RlY29tcHJlc3NGdW5jdGlvblRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgICMgVGVzdCBlcnJvciBjYXNlczoKKworICAgIGRlZiB0ZXN0X2JhZF9hcmdzKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGx6bWEuY29tcHJlc3MpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHptYS5jb21wcmVzcywgW10pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHptYS5jb21wcmVzcywgYiIiLCBmb3JtYXQ9Inh6IikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsem1hLmNvbXByZXNzLCBiIiIsIGNoZWNrPSJub25lIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsem1hLmNvbXByZXNzLCBiIiIsIHByZXNldD0iYmxhaCIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHptYS5jb21wcmVzcywgYiIiLCBmaWx0ZXJzPTEwMjQpCisgICAgICAgICMgQ2FuJ3Qgc3BlY2lmeSBhIHByZXNldCBhbmQgYSBjdXN0b20gZmlsdGVyIGNoYWluIGF0IHRoZSBzYW1lIHRpbWUuCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBsem1hLmNvbXByZXNzKGIiIiwgcHJlc2V0PTMsIGZpbHRlcnM9W3siaWQiOiBsem1hLkZJTFRFUl9MWk1BMn1dKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHptYS5kZWNvbXByZXNzKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGx6bWEuZGVjb21wcmVzcywgW10pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHptYS5kZWNvbXByZXNzLCBiIiIsIGZvcm1hdD0ibHptYSIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHptYS5kZWNvbXByZXNzLCBiIiIsIG1lbWxpbWl0PTcuM2U5KQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBsem1hLmRlY29tcHJlc3MoYiIiLCBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPXt9KQorICAgICAgICAjIENhbm5vdCBzcGVjaWZ5IGEgbWVtb3J5IGxpbWl0IHdpdGggRklMVEVSX1JBVy4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcyhiIiIsIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIG1lbWxpbWl0PTB4MTAwMDAwMCkKKyAgICAgICAgIyBDYW4gb25seSBzcGVjaWZ5IGEgY3VzdG9tIGZpbHRlciBjaGFpbiB3aXRoIEZJTFRFUl9SQVcuCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBsem1hLmRlY29tcHJlc3MoYiIiLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBsem1hLmRlY29tcHJlc3MoYiIiLCBmb3JtYXQ9bHptYS5GT1JNQVRfWFosIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcygKKyAgICAgICAgICAgICAgICAgICAgYiIiLCBmb3JtYXQ9bHptYS5GT1JNQVRfQUxPTkUsIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3NfbWVtbGltaXQoc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcyhDT01QUkVTU0VEX1haLCBtZW1saW1pdD0xMDI0KQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvcik6CisgICAgICAgICAgICBsem1hLmRlY29tcHJlc3MoCisgICAgICAgICAgICAgICAgICAgIENPTVBSRVNTRURfWFosIGZvcm1hdD1sem1hLkZPUk1BVF9YWiwgbWVtbGltaXQ9MTAyNCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IpOgorICAgICAgICAgICAgbHptYS5kZWNvbXByZXNzKAorICAgICAgICAgICAgICAgICAgICBDT01QUkVTU0VEX0FMT05FLCBmb3JtYXQ9bHptYS5GT1JNQVRfQUxPTkUsIG1lbWxpbWl0PTEwMjQpCisKKyAgICAjIFRlc3QgTFpNQURlY29tcHJlc3NvciBvbiBrbm93bi1nb29kIGlucHV0IGRhdGEuCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzX2dvb2RfaW5wdXQoc2VsZik6CisgICAgICAgIGRkYXRhID0gbHptYS5kZWNvbXByZXNzKENPTVBSRVNTRURfWFopCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUKQorCisgICAgICAgIGRkYXRhID0gbHptYS5kZWNvbXByZXNzKENPTVBSRVNTRURfQUxPTkUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUKQorCisgICAgICAgIGRkYXRhID0gbHptYS5kZWNvbXByZXNzKENPTVBSRVNTRURfWFosIGx6bWEuRk9STUFUX1haKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRkYXRhLCBJTlBVVCkKKworICAgICAgICBkZGF0YSA9IGx6bWEuZGVjb21wcmVzcyhDT01QUkVTU0VEX0FMT05FLCBsem1hLkZPUk1BVF9BTE9ORSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZGF0YSwgSU5QVVQpCisKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoCisgICAgICAgICAgICAgICAgQ09NUFJFU1NFRF9SQVdfMSwgbHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUKQorCisgICAgICAgIGRkYXRhID0gbHptYS5kZWNvbXByZXNzKAorICAgICAgICAgICAgICAgIENPTVBSRVNTRURfUkFXXzIsIGx6bWEuRk9STUFUX1JBVywgZmlsdGVycz1GSUxURVJTX1JBV18yKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRkYXRhLCBJTlBVVCkKKworICAgICAgICBkZGF0YSA9IGx6bWEuZGVjb21wcmVzcygKKyAgICAgICAgICAgICAgICBDT01QUkVTU0VEX1JBV18zLCBsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZGF0YSwgSU5QVVQpCisKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoCisgICAgICAgICAgICAgICAgQ09NUFJFU1NFRF9SQVdfNCwgbHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUKQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc19pbmNvbXBsZXRlX2lucHV0KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IsIGx6bWEuZGVjb21wcmVzcywgQ09NUFJFU1NFRF9YWls6MTI4XSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsem1hLmRlY29tcHJlc3MsIENPTVBSRVNTRURfQUxPTkVbOjEyOF0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHptYS5kZWNvbXByZXNzLCBDT01QUkVTU0VEX1JBV18xWzoxMjhdLAorICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHptYS5kZWNvbXByZXNzLCBDT01QUkVTU0VEX1JBV18yWzoxMjhdLAorICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHptYS5kZWNvbXByZXNzLCBDT01QUkVTU0VEX1JBV18zWzoxMjhdLAorICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzMpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHptYS5kZWNvbXByZXNzLCBDT01QUkVTU0VEX1JBV180WzoxMjhdLAorICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzQpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzX2JhZF9pbnB1dChzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IpOgorICAgICAgICAgICAgbHptYS5kZWNvbXByZXNzKENPTVBSRVNTRURfUkFXXzEpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcyhDT01QUkVTU0VEX0FMT05FLCBmb3JtYXQ9bHptYS5GT1JNQVRfWFopCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcyhDT01QUkVTU0VEX1haLCBmb3JtYXQ9bHptYS5GT1JNQVRfQUxPTkUpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcyhDT01QUkVTU0VEX1haLCBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKworICAgICMgVGVzdCB0aGF0IGNvbXByZXNzKCktPmRlY29tcHJlc3MoKSBwcmVzZXJ2ZXMgdGhlIGlucHV0IGRhdGEuCisKKyAgICBkZWYgdGVzdF9yb3VuZHRyaXAoc2VsZik6CisgICAgICAgIGNkYXRhID0gbHptYS5jb21wcmVzcyhJTlBVVCkKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoY2RhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUKQorCisgICAgICAgIGNkYXRhID0gbHptYS5jb21wcmVzcyhJTlBVVCwgbHptYS5GT1JNQVRfWFopCisgICAgICAgIGRkYXRhID0gbHptYS5kZWNvbXByZXNzKGNkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRkYXRhLCBJTlBVVCkKKworICAgICAgICBjZGF0YSA9IGx6bWEuY29tcHJlc3MoSU5QVVQsIGx6bWEuRk9STUFUX0FMT05FKQorICAgICAgICBkZGF0YSA9IGx6bWEuZGVjb21wcmVzcyhjZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZGF0YSwgSU5QVVQpCisKKyAgICAgICAgY2RhdGEgPSBsem1hLmNvbXByZXNzKElOUFVULCBsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfNCkKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoY2RhdGEsIGx6bWEuRk9STUFUX1JBVywgZmlsdGVycz1GSUxURVJTX1JBV180KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRkYXRhLCBJTlBVVCkKKworICAgICMgVW5saWtlIExaTUFEZWNvbXByZXNzb3IsIGRlY29tcHJlc3MoKSAqZG9lcyogaGFuZGxlIGNvbmNhdGVuYXRlZCBzdHJlYW1zLgorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc19tdWx0aXN0cmVhbShzZWxmKToKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoQ09NUFJFU1NFRF9YWiArIENPTVBSRVNTRURfQUxPTkUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUICogMikKKworCitjbGFzcyBUZW1wRmlsZToKKyAgICAiIiJDb250ZXh0IG1hbmFnZXIgLSBjcmVhdGVzIGEgZmlsZSwgYW5kIGRlbGV0ZXMgaXQgb24gX19leGl0X18uIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIGRhdGE9YiIiKToKKyAgICAgICAgc2VsZi5maWxlbmFtZSA9IGZpbGVuYW1lCisgICAgICAgIHNlbGYuZGF0YSA9IGRhdGEKKworICAgIGRlZiBfX2VudGVyX18oc2VsZik6CisgICAgICAgIHdpdGggb3BlbihzZWxmLmZpbGVuYW1lLCAid2IiKSBhcyBmOgorICAgICAgICAgICAgZi53cml0ZShzZWxmLmRhdGEpCisKKyAgICBkZWYgX19leGl0X18oc2VsZiwgKmFyZ3MpOgorICAgICAgICB1bmxpbmsoc2VsZi5maWxlbmFtZSkKKworCitjbGFzcyBGaWxlVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfaW5pdChzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciKSBhcyBmOgorICAgICAgICAgICAgcGFzcworICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJhIikgYXMgZjoKKyAgICAgICAgICAgIHBhc3MKKworICAgIGRlZiB0ZXN0X2luaXRfd2l0aF9maWxlbmFtZShzZWxmKToKKyAgICAgICAgd2l0aCBUZW1wRmlsZShURVNURk4sIENPTVBSRVNTRURfWFopOgorICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShURVNURk4pIGFzIGY6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShURVNURk4sICJ3IikgYXMgZjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKFRFU1RGTiwgImEiKSBhcyBmOgorICAgICAgICAgICAgICAgIHBhc3MKKworICAgIGRlZiB0ZXN0X2luaXRfYmFkX21vZGUoc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksIG1vZGU9KDMsICJ4IikpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksIG1vZGU9IiIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksIG1vZGU9IngiKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLCBtb2RlPSJyYiIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksIG1vZGU9InIrIikKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgbW9kZT0id2IiKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLCBtb2RlPSJ3KyIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksIG1vZGU9InJ3IikKKworICAgIGRlZiB0ZXN0X2luaXRfYmFkX2NoZWNrKHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsIGNoZWNrPWIiYXNkIikKKyAgICAgICAgIyBDSEVDS19VTktOT1dOIGFuZCBhbnl0aGluZyBhYm92ZSBDSEVDS19JRF9NQVggc2hvdWxkIGJlIGludmFsaWQuCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwgY2hlY2s9bHptYS5DSEVDS19VTktOT1dOKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsIGNoZWNrPWx6bWEuQ0hFQ0tfSURfTUFYICsgMykKKyAgICAgICAgIyBDYW5ub3Qgc3BlY2lmeSBhIGNoZWNrIHdpdGggbW9kZT0iciIuCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksIGNoZWNrPWx6bWEuQ0hFQ0tfTk9ORSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgY2hlY2s9bHptYS5DSEVDS19DUkMzMikKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgY2hlY2s9bHptYS5DSEVDS19DUkM2NCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgY2hlY2s9bHptYS5DSEVDS19TSEEyNTYpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksIGNoZWNrPWx6bWEuQ0hFQ0tfVU5LTk9XTikKKworICAgIGRlZiB0ZXN0X2luaXRfYmFkX3ByZXNldChzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBwcmVzZXQ9NC4zOSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBwcmVzZXQ9MTApCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwgcHJlc2V0PTIzKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBwcmVzZXQ9LTEpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsIHByZXNldD0tNykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBwcmVzZXQ9ImZvbyIpCisgICAgICAgICMgQ2Fubm90IHNwZWNpZnkgYSBwcmVzZXQgd2l0aCBtb2RlPSJyIi4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgcHJlc2V0PTMpCisKKyAgICBkZWYgdGVzdF9pbml0X2JhZF9maWx0ZXJfc3BlYyhzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBmaWx0ZXJzPVtiIndvYnNpdGUiXSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwgZmlsdGVycz1beyJ4eXp6eSI6IDN9XSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwgZmlsdGVycz1beyJpZCI6IDk4NzY1fV0pCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsCisgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzPVt7ImlkIjogbHptYS5GSUxURVJfTFpNQTIsICJmb28iOiAwfV0pCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsCisgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzPVt7ImlkIjogbHptYS5GSUxURVJfREVMVEEsICJmb28iOiAwfV0pCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsCisgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJzPVt7ImlkIjogbHptYS5GSUxURVJfWDg2LCAiZm9vIjogMH1dKQorCisgICAgZGVmIHRlc3RfaW5pdF93aXRoX3ByZXNldF9hbmRfZmlsdGVycyhzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwgZm9ybWF0PWx6bWEuRk9STUFUX1JBVywKKyAgICAgICAgICAgICAgICAgICAgIHByZXNldD02LCAgZmlsdGVycz1GSUxURVJTX1JBV18xKQorCisgICAgZGVmIHRlc3RfaW5pdF93aXRoX2ZpbGVuYW1lX2FuZF9maWxlb2JqKHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoIi9kZXYvbnVsbCIsIGZpbGVvYmo9Qnl0ZXNJTygpKQorCisgICAgZGVmIHRlc3RfY2xvc2Uoc2VsZik6CisgICAgICAgIHdpdGggQnl0ZXNJTyhDT01QUkVTU0VEX1haKSBhcyBzcmM6CisgICAgICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1zcmMpCisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgICAgICMgTFpNQUZpbGUuY2xvc2UoKSBzaG91bGQgbm90IGNsb3NlIHRoZSB1bmRlcmx5aW5nIGZpbGUgb2JqZWN0LgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzcmMuY2xvc2VkKQorICAgICAgICAgICAgIyBUcnkgY2xvc2luZyBhbiBhbHJlYWR5LWNsb3NlZCBMWk1BRmlsZS4KKyAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzcmMuY2xvc2VkKQorCisgICAgICAgICMgVGVzdCB3aXRoIGEgcmVhbCBmaWxlIG9uIGRpc2ssIG9wZW5lZCBkaXJlY3RseSBieSBMWk1BRmlsZS4KKyAgICAgICAgd2l0aCBUZW1wRmlsZShURVNURk4sIENPTVBSRVNTRURfWFopOgorICAgICAgICAgICAgZiA9IExaTUFGaWxlKFRFU1RGTikKKyAgICAgICAgICAgIGZwID0gZi5fZnAKKyAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICAgICAgIyBIZXJlLCBMWk1BRmlsZS5jbG9zZSgpICpzaG91bGQqIGNsb3NlIHRoZSB1bmRlcmx5aW5nIGZpbGUgb2JqZWN0LgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZwLmNsb3NlZCkKKyAgICAgICAgICAgICMgVHJ5IGNsb3NpbmcgYW4gYWxyZWFkeS1jbG9zZWQgTFpNQUZpbGUuCisgICAgICAgICAgICBmLmNsb3NlKCkKKworICAgIGRlZiB0ZXN0X2Nsb3NlZChzZWxmKToKKyAgICAgICAgZiA9IExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShmLmNsb3NlZCkKKyAgICAgICAgICAgIGYucmVhZCgpCisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGYuY2xvc2VkKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmLmNsb3NlZCkKKworICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGYuY2xvc2VkKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmLmNsb3NlZCkKKworICAgIGRlZiB0ZXN0X2ZpbGVubyhzZWxmKToKKyAgICAgICAgZiA9IExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5zdXBwb3J0ZWRPcGVyYXRpb24sIGYuZmlsZW5vKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYuZmlsZW5vKQorICAgICAgICB3aXRoIFRlbXBGaWxlKFRFU1RGTiwgQ09NUFJFU1NFRF9YWik6CisgICAgICAgICAgICBmID0gTFpNQUZpbGUoVEVTVEZOKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5maWxlbm8oKSwgZi5fZnAuZmlsZW5vKCkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGYuZmlsZW5vKCksIGludCkKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYuZmlsZW5vKQorCisgICAgZGVmIHRlc3Rfc2Vla2FibGUoc2VsZik6CisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmLnNlZWthYmxlKCkpCisgICAgICAgICAgICBmLnJlYWQoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGYuc2Vla2FibGUoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnNlZWthYmxlKQorCisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi5zZWVrYWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYuc2Vla2FibGUpCisKKyAgICAgICAgc3JjID0gQnl0ZXNJTyhDT01QUkVTU0VEX1haKQorICAgICAgICBzcmMuc2Vla2FibGUgPSBsYW1iZGE6IEZhbHNlCisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPXNyYykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShmLnNlZWthYmxlKCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5zZWVrYWJsZSkKKworICAgIGRlZiB0ZXN0X3JlYWRhYmxlKHNlbGYpOgorICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoZi5yZWFkYWJsZSgpKQorICAgICAgICAgICAgZi5yZWFkKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmLnJlYWRhYmxlKCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5yZWFkYWJsZSkKKworICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGYucmVhZGFibGUoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnJlYWRhYmxlKQorCisgICAgZGVmIHRlc3Rfd3JpdGFibGUoc2VsZik6CisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi53cml0YWJsZSgpKQorICAgICAgICAgICAgZi5yZWFkKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi53cml0YWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYud3JpdGFibGUpCisKKyAgICAgICAgZiA9IExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGYud3JpdGFibGUoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLndyaXRhYmxlKQorCisgICAgZGVmIHRlc3RfcmVhZChzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIGIiIikKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9BTE9ORSkpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksCisgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PWx6bWEuRk9STUFUX1haKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBiIiIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfQUxPTkUpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgYiIiKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1JBV18xKSwKKyAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIGIiIikKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9SQVdfMiksCisgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PWx6bWEuRk9STUFUX1JBVywgZmlsdGVycz1GSUxURVJTX1JBV18yKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBiIiIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfUkFXXzMpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMykgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgYiIiKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1JBV180KSwKKyAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzQpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIGIiIikKKworICAgIGRlZiB0ZXN0X3JlYWRfMChzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgwKSwgYiIiKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX0FMT05FKSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKDApLCBiIiIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9YWikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKDApLCBiIiIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfQUxPTkUpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKDApLCBiIiIpCisKKyAgICBkZWYgdGVzdF9yZWFkXzEwKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGNodW5rcyA9IFtdCisgICAgICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgICAgIHJlc3VsdCA9IGYucmVhZCgxMCkKKyAgICAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGxlbihyZXN1bHQpLCAxMCkKKyAgICAgICAgICAgICAgICBjaHVua3MuYXBwZW5kKHJlc3VsdCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiIiLmpvaW4oY2h1bmtzKSwgSU5QVVQpCisKKyAgICBkZWYgdGVzdF9yZWFkX211bHRpc3RyZWFtKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haICogNSkpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCAqIDUpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFogKyBDT01QUkVTU0VEX0FMT05FKSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUICogMikKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9SQVdfMyAqIDQpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMykgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUICogNCkKKworICAgIGRlZiB0ZXN0X3JlYWRfbXVsdGlzdHJlYW1fYnVmZmVyX3NpemVfYWxpZ25lZChzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoZSBjYXNlIHdoZXJlIGEgc3RyZWFtIGJvdW5kYXJ5IGNvaW5jaWRlcyB3aXRoIHRoZSBlbmQKKyAgICAgICAgIyBvZiB0aGUgcmF3IHJlYWQgYnVmZmVyLgorICAgICAgICBzYXZlZF9idWZmZXJfc2l6ZSA9IGx6bWEuX0JVRkZFUl9TSVpFCisgICAgICAgIGx6bWEuX0JVRkZFUl9TSVpFID0gbGVuKENPTVBSRVNTRURfWFopCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFogKiAgNSkpIGFzIGY6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQgKiA1KQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgbHptYS5fQlVGRkVSX1NJWkUgPSBzYXZlZF9idWZmZXJfc2l6ZQorCisgICAgZGVmIHRlc3RfcmVhZF9mcm9tX2ZpbGUoc2VsZik6CisgICAgICAgIHdpdGggVGVtcEZpbGUoVEVTVEZOLCBDT01QUkVTU0VEX1haKToKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoVEVTVEZOKSBhcyBmOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIGIiIikKKworICAgIGRlZiB0ZXN0X3JlYWRfaW5jb21wbGV0ZShzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWls6MTI4XSkpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhFT0ZFcnJvciwgZi5yZWFkKQorCisgICAgZGVmIHRlc3RfcmVhZF9iYWRfYXJncyhzZWxmKToKKyAgICAgICAgZiA9IExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkKKyAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYucmVhZCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnJlYWQpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBmLnJlYWQsIE5vbmUpCisKKyAgICBkZWYgdGVzdF9yZWFkMShzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBibG9ja3MgPSBbXQorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBmLnJlYWQxKCkKKyAgICAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQocmVzdWx0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiIiIuam9pbihibG9ja3MpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkMSgpLCBiIiIpCisKKyAgICBkZWYgdGVzdF9yZWFkMV8wKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkMSgwKSwgYiIiKQorCisgICAgZGVmIHRlc3RfcmVhZDFfMTAoc2VsZik6CisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgYmxvY2tzID0gW10KKyAgICAgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gZi5yZWFkMSgxMCkKKyAgICAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQocmVzdWx0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiIiIuam9pbihibG9ja3MpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkMSgpLCBiIiIpCisKKyAgICBkZWYgdGVzdF9yZWFkMV9tdWx0aXN0cmVhbShzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiAqIDUpKSBhcyBmOgorICAgICAgICAgICAgYmxvY2tzID0gW10KKyAgICAgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gZi5yZWFkMSgpCisgICAgICAgICAgICAgICAgaWYgbm90IHJlc3VsdDoKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICBibG9ja3MuYXBwZW5kKHJlc3VsdCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiIiLmpvaW4oYmxvY2tzKSwgSU5QVVQgKiA1KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQxKCksIGIiIikKKworICAgIGRlZiB0ZXN0X3JlYWQxX2JhZF9hcmdzKHNlbGYpOgorICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKQorICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5yZWFkMSkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnJlYWQxKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZi5yZWFkMSwgTm9uZSkKKworICAgIGRlZiB0ZXN0X3BlZWsoc2VsZik6CisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgcmVzdWx0ID0gZi5wZWVrKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsZW4ocmVzdWx0KSwgMCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShJTlBVVC5zdGFydHN3aXRoKHJlc3VsdCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICByZXN1bHQgPSBmLnBlZWsoMTApCisgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKHJlc3VsdCksIDApCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoSU5QVVQuc3RhcnRzd2l0aChyZXN1bHQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQpCisKKyAgICBkZWYgdGVzdF9wZWVrX2JhZF9hcmdzKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYucGVlaykKKworICAgIGRlZiB0ZXN0X2l0ZXJhdG9yKHNlbGYpOgorICAgICAgICB3aXRoIEJ5dGVzSU8oSU5QVVQpIGFzIGY6CisgICAgICAgICAgICBsaW5lcyA9IGYucmVhZGxpbmVzKCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChsaXN0KGl0ZXIoZikpLCBsaW5lcykKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9BTE9ORSkpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChsaXN0KGl0ZXIoZikpLCBsaW5lcykKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksCisgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PWx6bWEuRk9STUFUX1haKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRMaXN0RXF1YWwobGlzdChpdGVyKGYpKSwgbGluZXMpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfQUxPTkUpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGlzdEVxdWFsKGxpc3QoaXRlcihmKSksIGxpbmVzKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1JBV18yKSwKKyAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChsaXN0KGl0ZXIoZikpLCBsaW5lcykKKworICAgIGRlZiB0ZXN0X3JlYWRsaW5lKHNlbGYpOgorICAgICAgICB3aXRoIEJ5dGVzSU8oSU5QVVQpIGFzIGY6CisgICAgICAgICAgICBsaW5lcyA9IGYucmVhZGxpbmVzKCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBmb3IgbGluZSBpbiBsaW5lczoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZGxpbmUoKSwgbGluZSkKKworICAgIGRlZiB0ZXN0X3JlYWRsaW5lcyhzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKElOUFVUKSBhcyBmOgorICAgICAgICAgICAgbGluZXMgPSBmLnJlYWRsaW5lcygpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRMaXN0RXF1YWwoZi5yZWFkbGluZXMoKSwgbGluZXMpCisKKyAgICBkZWYgdGVzdF93cml0ZShzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKCkgYXMgZHN0OgorICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPWRzdCwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShJTlBVVCkKKyAgICAgICAgICAgIGV4cGVjdGVkID0gbHptYS5jb21wcmVzcyhJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorICAgICAgICB3aXRoIEJ5dGVzSU8oKSBhcyBkc3Q6CisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9ZHN0LCBtb2RlPSJ3IiwgZm9ybWF0PWx6bWEuRk9STUFUX1haKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUoSU5QVVQpCisgICAgICAgICAgICBleHBlY3RlZCA9IGx6bWEuY29tcHJlc3MoSU5QVVQsIGZvcm1hdD1sem1hLkZPUk1BVF9YWikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorICAgICAgICB3aXRoIEJ5dGVzSU8oKSBhcyBkc3Q6CisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9ZHN0LCBtb2RlPSJ3IiwgZm9ybWF0PWx6bWEuRk9STUFUX0FMT05FKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUoSU5QVVQpCisgICAgICAgICAgICBleHBlY3RlZCA9IGx6bWEuY29tcHJlc3MoSU5QVVQsIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorICAgICAgICB3aXRoIEJ5dGVzSU8oKSBhcyBkc3Q6CisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9ZHN0LCBtb2RlPSJ3IiwgZm9ybWF0PWx6bWEuRk9STUFUX1JBVywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVycz1GSUxURVJTX1JBV18yKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUoSU5QVVQpCisgICAgICAgICAgICBleHBlY3RlZCA9IGx6bWEuY29tcHJlc3MoSU5QVVQsIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVycz1GSUxURVJTX1JBV18yKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkc3QuZ2V0dmFsdWUoKSwgZXhwZWN0ZWQpCisKKyAgICBkZWYgdGVzdF93cml0ZV8xMChzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKCkgYXMgZHN0OgorICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPWRzdCwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICAgICAgZm9yIHN0YXJ0IGluIHJhbmdlKDAsIGxlbihJTlBVVCksIDEwKToKKyAgICAgICAgICAgICAgICAgICAgZi53cml0ZShJTlBVVFtzdGFydDpzdGFydCsxMF0pCisgICAgICAgICAgICBleHBlY3RlZCA9IGx6bWEuY29tcHJlc3MoSU5QVVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRzdC5nZXR2YWx1ZSgpLCBleHBlY3RlZCkKKworICAgIGRlZiB0ZXN0X3dyaXRlX2FwcGVuZChzZWxmKToKKyAgICAgICAgcGFydDEgPSBJTlBVVFs6MTAyNF0KKyAgICAgICAgcGFydDIgPSBJTlBVVFsxMDI0OjE1MzZdCisgICAgICAgIHBhcnQzID0gSU5QVVRbMTUzNjpdCisgICAgICAgIGV4cGVjdGVkID0gYiIiLmpvaW4obHptYS5jb21wcmVzcyh4KSBmb3IgeCBpbiAocGFydDEsIHBhcnQyLCBwYXJ0MykpCisgICAgICAgIHdpdGggQnl0ZXNJTygpIGFzIGRzdDoKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1kc3QsIG1vZGU9InciKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUocGFydDEpCisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9ZHN0LCBtb2RlPSJhIikgYXMgZjoKKyAgICAgICAgICAgICAgICBmLndyaXRlKHBhcnQyKQorICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPWRzdCwgbW9kZT0iYSIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShwYXJ0MykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3Rfd3JpdGVfdG9fZmlsZShzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShURVNURk4sICJ3IikgYXMgZjoKKyAgICAgICAgICAgICAgICBmLndyaXRlKElOUFVUKQorICAgICAgICAgICAgZXhwZWN0ZWQgPSBsem1hLmNvbXByZXNzKElOUFVUKQorICAgICAgICAgICAgd2l0aCBvcGVuKFRFU1RGTiwgInJiIikgYXMgZjoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBleHBlY3RlZCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHVubGluayhURVNURk4pCisKKyAgICBkZWYgdGVzdF93cml0ZV9hcHBlbmRfdG9fZmlsZShzZWxmKToKKyAgICAgICAgcGFydDEgPSBJTlBVVFs6MTAyNF0KKyAgICAgICAgcGFydDIgPSBJTlBVVFsxMDI0OjE1MzZdCisgICAgICAgIHBhcnQzID0gSU5QVVRbMTUzNjpdCisgICAgICAgIGV4cGVjdGVkID0gYiIiLmpvaW4obHptYS5jb21wcmVzcyh4KSBmb3IgeCBpbiAocGFydDEsIHBhcnQyLCBwYXJ0MykpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoVEVTVEZOLCAidyIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShwYXJ0MSkKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoVEVTVEZOLCAiYSIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShwYXJ0MikKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoVEVTVEZOLCAiYSIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShwYXJ0MykKKyAgICAgICAgICAgIHdpdGggb3BlbihURVNURk4sICJyYiIpIGFzIGY6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgZXhwZWN0ZWQpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICB1bmxpbmsoVEVTVEZOKQorCisgICAgZGVmIHRlc3Rfd3JpdGVfYmFkX2FyZ3Moc2VsZik6CisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpCisgICAgICAgIGYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLndyaXRlLCBiImZvbyIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLCBtb2RlPSJyIikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYud3JpdGUsIGIiYmFyIikKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGYud3JpdGUsIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGYud3JpdGUsICJ0ZXh0IikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZi53cml0ZSwgNzg5KQorCisgICAgZGVmIHRlc3Rfd3JpdGVsaW5lcyhzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKElOUFVUKSBhcyBmOgorICAgICAgICAgICAgbGluZXMgPSBmLnJlYWRsaW5lcygpCisgICAgICAgIHdpdGggQnl0ZXNJTygpIGFzIGRzdDoKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1kc3QsIG1vZGU9InciKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGVsaW5lcyhsaW5lcykKKyAgICAgICAgICAgIGV4cGVjdGVkID0gbHptYS5jb21wcmVzcyhJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3Rfc2Vla19mb3J3YXJkKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYuc2Vlayg1NTUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVFs1NTU6XSkKKworICAgIGRlZiB0ZXN0X3NlZWtfZm9yd2FyZF9hY3Jvc3Nfc3RyZWFtcyhzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiAqIDIpKSBhcyBmOgorICAgICAgICAgICAgZi5zZWVrKGxlbihJTlBVVCkgKyAxMjMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVFsxMjM6XSkKKworICAgIGRlZiB0ZXN0X3NlZWtfZm9yd2FyZF9yZWxhdGl2ZV90b19jdXJyZW50KHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYucmVhZCgxMDApCisgICAgICAgICAgICBmLnNlZWsoMTIzNiwgMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUWzEzMzY6XSkKKworICAgIGRlZiB0ZXN0X3NlZWtfZm9yd2FyZF9yZWxhdGl2ZV90b19lbmQoc2VsZik6CisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgZi5zZWVrKC01NTUsIDIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVFstNTU1Ol0pCisKKyAgICBkZWYgdGVzdF9zZWVrX2JhY2t3YXJkKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYucmVhZCgxMDAxKQorICAgICAgICAgICAgZi5zZWVrKDIxMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUWzIxMTpdKQorCisgICAgZGVmIHRlc3Rfc2Vla19iYWNrd2FyZF9hY3Jvc3Nfc3RyZWFtcyhzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiAqIDIpKSBhcyBmOgorICAgICAgICAgICAgZi5yZWFkKGxlbihJTlBVVCkgKyAzMzMpCisgICAgICAgICAgICBmLnNlZWsoNzM3KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVRbNzM3Ol0gKyBJTlBVVCkKKworICAgIGRlZiB0ZXN0X3NlZWtfYmFja3dhcmRfcmVsYXRpdmVfdG9fZW5kKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYuc2VlaygtMTUwLCAyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVRbLTE1MDpdKQorCisgICAgZGVmIHRlc3Rfc2Vla19wYXN0X2VuZChzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBmLnNlZWsobGVuKElOUFVUKSArIDkwMDEpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCBsZW4oSU5QVVQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgYiIiKQorCisgICAgZGVmIHRlc3Rfc2Vla19wYXN0X3N0YXJ0KHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYuc2VlaygtODgpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCAwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQpCisKKyAgICBkZWYgdGVzdF9zZWVrX2JhZF9hcmdzKHNlbGYpOgorICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKQorICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5zZWVrLCAwKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYuc2VlaywgMCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnNlZWssIDAsIDMpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnNlZWssIDksICgpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBmLnNlZWssIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGYuc2VlaywgYiJkZXJwIikKKworICAgIGRlZiB0ZXN0X3RlbGwoc2VsZik6CisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgcG9zID0gMAorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCBwb3MpCisgICAgICAgICAgICAgICAgcmVzdWx0ID0gZi5yZWFkKDE4MykKKyAgICAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIHBvcyArPSBsZW4ocmVzdWx0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnRlbGwoKSwgbGVuKElOUFVUKSkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICBmb3IgcG9zIGluIHJhbmdlKDAsIGxlbihJTlBVVCksIDE0NCk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnRlbGwoKSwgcG9zKQorICAgICAgICAgICAgICAgIGYud3JpdGUoSU5QVVRbcG9zOnBvcysxNDRdKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnRlbGwoKSwgbGVuKElOUFVUKSkKKworICAgIGRlZiB0ZXN0X3RlbGxfYmFkX2FyZ3Moc2VsZik6CisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpCisgICAgICAgIGYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnRlbGwpCisKKworY2xhc3MgTWlzY2VsbGFuZW91c1Rlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2lzX2NoZWNrX3N1cHBvcnRlZChzZWxmKToKKyAgICAgICAgIyBDSEVDS19OT05FIGFuZCBDSEVDS19DUkMzMiBzaG91bGQgYWx3YXlzIGJlIHN1cHBvcnRlZCwKKyAgICAgICAgIyByZWdhcmRsZXNzIG9mIHRoZSBvcHRpb25zIGxpYmx6bWEgd2FzIGNvbXBpbGVkIHdpdGguCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShsem1hLmNoZWNrX2lzX3N1cHBvcnRlZChsem1hLkNIRUNLX05PTkUpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUobHptYS5jaGVja19pc19zdXBwb3J0ZWQobHptYS5DSEVDS19DUkMzMikpCisKKyAgICAgICAgIyBUaGUgLnh6IGZvcm1hdCBzcGVjIGNhbm5vdCBzdG9yZSBjaGVjayBJRHMgYWJvdmUgdGhpcyB2YWx1ZS4KKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShsem1hLmNoZWNrX2lzX3N1cHBvcnRlZChsem1hLkNIRUNLX0lEX01BWCArIDEpKQorCisgICAgICAgICMgVGhpcyB2YWx1ZSBzaG91bGQgbm90IGJlIGEgdmFsaWQgY2hlY2sgSUQuCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UobHptYS5jaGVja19pc19zdXBwb3J0ZWQobHptYS5DSEVDS19VTktOT1dOKSkKKworCisjIFRlc3QgZGF0YToKKworSU5QVVQgPSBiIiIiCitMQUVSVEVTCisKKyAgICAgICBPLCBmZWFyIG1lIG5vdC4KKyAgICAgICBJIHN0YXkgdG9vIGxvbmc6IGJ1dCBoZXJlIG15IGZhdGhlciBjb21lcy4KKworICAgICAgIEVudGVyIFBPTE9OSVVTCisKKyAgICAgICBBIGRvdWJsZSBibGVzc2luZyBpcyBhIGRvdWJsZSBncmFjZSwKKyAgICAgICBPY2Nhc2lvbiBzbWlsZXMgdXBvbiBhIHNlY29uZCBsZWF2ZS4KKworTE9SRCBQT0xPTklVUworCisgICAgICAgWWV0IGhlcmUsIExhZXJ0ZXMhIGFib2FyZCwgYWJvYXJkLCBmb3Igc2hhbWUhCisgICAgICAgVGhlIHdpbmQgc2l0cyBpbiB0aGUgc2hvdWxkZXIgb2YgeW91ciBzYWlsLAorICAgICAgIEFuZCB5b3UgYXJlIHN0YXknZCBmb3IuIFRoZXJlOyBteSBibGVzc2luZyB3aXRoIHRoZWUhCisgICAgICAgQW5kIHRoZXNlIGZldyBwcmVjZXB0cyBpbiB0aHkgbWVtb3J5CisgICAgICAgU2VlIHRob3UgY2hhcmFjdGVyLiBHaXZlIHRoeSB0aG91Z2h0cyBubyB0b25ndWUsCisgICAgICAgTm9yIGFueSB1bnByb3BvcnRpb25lZCB0aG91Z2h0IGhpcyBhY3QuCisgICAgICAgQmUgdGhvdSBmYW1pbGlhciwgYnV0IGJ5IG5vIG1lYW5zIHZ1bGdhci4KKyAgICAgICBUaG9zZSBmcmllbmRzIHRob3UgaGFzdCwgYW5kIHRoZWlyIGFkb3B0aW9uIHRyaWVkLAorICAgICAgIEdyYXBwbGUgdGhlbSB0byB0aHkgc291bCB3aXRoIGhvb3BzIG9mIHN0ZWVsOworICAgICAgIEJ1dCBkbyBub3QgZHVsbCB0aHkgcGFsbSB3aXRoIGVudGVydGFpbm1lbnQKKyAgICAgICBPZiBlYWNoIG5ldy1oYXRjaCdkLCB1bmZsZWRnZWQgY29tcmFkZS4gQmV3YXJlCisgICAgICAgT2YgZW50cmFuY2UgdG8gYSBxdWFycmVsLCBidXQgYmVpbmcgaW4sCisgICAgICAgQmVhcid0IHRoYXQgdGhlIG9wcG9zZWQgbWF5IGJld2FyZSBvZiB0aGVlLgorICAgICAgIEdpdmUgZXZlcnkgbWFuIHRoeSBlYXIsIGJ1dCBmZXcgdGh5IHZvaWNlOworICAgICAgIFRha2UgZWFjaCBtYW4ncyBjZW5zdXJlLCBidXQgcmVzZXJ2ZSB0aHkganVkZ21lbnQuCisgICAgICAgQ29zdGx5IHRoeSBoYWJpdCBhcyB0aHkgcHVyc2UgY2FuIGJ1eSwKKyAgICAgICBCdXQgbm90IGV4cHJlc3MnZCBpbiBmYW5jeTsgcmljaCwgbm90IGdhdWR5OworICAgICAgIEZvciB0aGUgYXBwYXJlbCBvZnQgcHJvY2xhaW1zIHRoZSBtYW4sCisgICAgICAgQW5kIHRoZXkgaW4gRnJhbmNlIG9mIHRoZSBiZXN0IHJhbmsgYW5kIHN0YXRpb24KKyAgICAgICBBcmUgb2YgYSBtb3N0IHNlbGVjdCBhbmQgZ2VuZXJvdXMgY2hpZWYgaW4gdGhhdC4KKyAgICAgICBOZWl0aGVyIGEgYm9ycm93ZXIgbm9yIGEgbGVuZGVyIGJlOworICAgICAgIEZvciBsb2FuIG9mdCBsb3NlcyBib3RoIGl0c2VsZiBhbmQgZnJpZW5kLAorICAgICAgIEFuZCBib3Jyb3dpbmcgZHVsbHMgdGhlIGVkZ2Ugb2YgaHVzYmFuZHJ5LgorICAgICAgIFRoaXMgYWJvdmUgYWxsOiB0byB0aGluZSBvd25zZWxmIGJlIHRydWUsCisgICAgICAgQW5kIGl0IG11c3QgZm9sbG93LCBhcyB0aGUgbmlnaHQgdGhlIGRheSwKKyAgICAgICBUaG91IGNhbnN0IG5vdCB0aGVuIGJlIGZhbHNlIHRvIGFueSBtYW4uCisgICAgICAgRmFyZXdlbGw6IG15IGJsZXNzaW5nIHNlYXNvbiB0aGlzIGluIHRoZWUhCisKK0xBRVJURVMKKworICAgICAgIE1vc3QgaHVtYmx5IGRvIEkgdGFrZSBteSBsZWF2ZSwgbXkgbG9yZC4KKworTE9SRCBQT0xPTklVUworCisgICAgICAgVGhlIHRpbWUgaW52aXRlcyB5b3U7IGdvOyB5b3VyIHNlcnZhbnRzIHRlbmQuCisKK0xBRVJURVMKKworICAgICAgIEZhcmV3ZWxsLCBPcGhlbGlhOyBhbmQgcmVtZW1iZXIgd2VsbAorICAgICAgIFdoYXQgSSBoYXZlIHNhaWQgdG8geW91LgorCitPUEhFTElBCisKKyAgICAgICAnVGlzIGluIG15IG1lbW9yeSBsb2NrJ2QsCisgICAgICAgQW5kIHlvdSB5b3Vyc2VsZiBzaGFsbCBrZWVwIHRoZSBrZXkgb2YgaXQuCisKK0xBRVJURVMKKworICAgICAgIEZhcmV3ZWxsLgorIiIiCisKK0NPTVBSRVNTRURfWFogPSAoCisgICAgYiJceGZkN3pYWlx4MDBceDAwXHgwNFx4ZTZceGQ2XHhiNEZceDAyXHgwMCFceDAxXHgxNlx4MDBceDAwXHgwMHQvXHhlNVx4YTMiCisgICAgYiJceGUwXHgwN1x4ODBceDAzXHhkZl1ceDAwXHgwNVx4MTRceDA3YlhceDE5XHhjZFx4ZGRuXHg5OFx4MTVceGU0XHhiNFx4OWQiCisgICAgYiJvXHgxZFx4YzRceGU1XG5ceDAzXHhjYzJoXHhjN1xcXHg4Nlx4ZmZceGY4XHhlMlx4ZmNceGU3XHhkOVx4ZmU2XHhiOCgiCisgICAgYiJceGE4d2RceGMyXCJ1Lm5ceDFlXHhjM1x4ZjJceDhlXHg4ZFx4OGZceDAyXHgxNy9ceGE2PVx4ZjBceGEyXHhkZi9NXHg4OSIKKyAgICBiIlx4YmVceGRlXHhhN1x4MWN6XHgxOC1dXHhkNVx4ZWZceDEzXHg4ZnJaXHgxNVx4ODBceDhjXHhmOFx4OGRvXHhmYVx4MTIiCisgICAgYiJceDliI3ovXHhlZlx4ZjBceGZhRlx4MDFceDgyXHhhM01ceDhlXHhhMXRceGNhNiBCRiRceGU1UVx4YTRceDk4XHhlZVx4ZGUiCisgICAgYiJsXHhlOFx4N2ZceGYwXHg5ZCxiblx4MGJceDEzXHhkNFx4YThceDgxXHhlNE5ceGM4XHg4Nlx4MTUzXHhmNXgyXHhhMk8iCisgICAgYiJceDEzQFFceGExXHgwMC9ceGE1XHhkME9ceDk3XHhkY29ceGFlXHhmN3pceGM0XHhjZFNceGI2dDxceDE2XHhmMlx4OWNJIyIKKyAgICBiIlx4ODl1ZFx4YzY2WVx4ZDlceGVlXHhlNlx4Y2VceDEyXVx4ZTVceGYwXHhhYVx4OTYtUGVceGFkZTpceDA0XHRceDFiXHhmNyIKKyAgICBiIlx4ZGI3XG5ceDg2XHgxZnBceGM4Slx4YmFceGY0XHhmMFZceGE5XHhkY1x4ZjBceDAyJUdceGY5XHhkZj0/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+XHhhZlx4YjVdRWdceGZiXHg5ZVx4MDFcIjhceGIyXHg5MFx4MDY9flx4ZTlceDkxV1x4Y2QiCisgICAgYiJceGVjRFx4MTJceGM3XHhmYVx4ZTFceDkxXHgwNlx4YzdceDk5XHhiOVx4ZTNceDkwMVx4ODdceDE5dVx4MGZceDg2OVx4ZmYiCisgICAgYiJceGMxXHhiMGh3fFx4YjBceGRjbFx4Y2NrXHhiMTZvN1x4ODVceGVle1lfYlx4YmZceGJjJFx4ZjM9XHg4ZFx4OGJ3XHhlNVoiCisgICAgYiJceDA4QFx4YzRrbUVceGFkXHhmYlx4ZjYqXHhkOFx4YWRceGExXHhmYlx4YzV7XHhkZWosKVx4MWVtQlx4MWY8XHhhZWNhIgorICAgIGIiXHg4MChceGVlXHgwNyBceGRmXHhlOVx4ZjhceGViXHgwZS1ceDk3XHg4Nlx4OTBjXHhmOVx4ZWEnQlx4ZjdgXHhkN1x4YjAiCisgICAgYiJceDkyXHhiZFx4YTBceDgyXVx4YmRceDBlXHgwZUJceDE5XHhkY1x4OTZceGM2XHgxOVx4ZDg2RFx4ZjBceGQ1XHg4MzEiCisgICAgYiJceDAzXHhiN1x4MWNceGY3JjVceDFhXHg4ZiBQWiZqXHhmOFx4OThceDFib1x4Y2NceDg2XHg5YlNceGQzXHhhNVx4Y2R1IgorICAgIGIiXHhmOSRceGNjXHg5N29ceGU1Vn5ceGZiXHg5N1x4YjVceDBiXHgxN1x4OWNceGZkeFdceDEwXHhmZXA0XHg4MFx4ZGFIRFkiCisgICAgYiJceGZhKVx4ZmV0XHhiNVwiXHhkNFx4ZDNGXHg4MVx4ZjRceDEzXHgxZlx4ZWNceGRmXHhhNVx4MTNceGZjXCJceDkxeFx4YjciCisgICAgYiJceDk5XHhjZVx4YzhceDkyXG5ceGViW1x4MTBsKllceGQ4XHhiMUBceDA2XHhjOG9ceDhkN3JceGVidVx4ZmQ1XHgwZVx4N2YiCisgICAgYiJceGYxJFV7XHR9XHgxZlFceGNmeE5ceDlkXHg5ZlhYXHhlOWBceDgzXHhjMVx4MDZceGY0XHg4N3YtZlx4MTFceGRiL1xcIgorICAgIGIiXHgwNlx4ZmZceGQ3KUJceGYzZ1x4MDZceDg4IzJceDFlQjI0NFx4N2Y0cVx0XHhjODkzP21QWFx4OTVceGE2YVx4ZmIpZCIKKyAgICBiIlx4OWJceGZjXHg5OFx4OWFqXHgwNFx4YWVceDliXHg5ZFx4MTl3XHhiYVx4ZjkyXHhmYUFceDExXFxceDE3XHg5N0MzXHhhNCIKKyAgICBiIlx4YmMhXHg4OFx4Y2RvW1x4ZWM6XHgwMzBceDkxLlx4ODVceGUwQFxcNFx4MTZceDEyXHg5ZFx4Y2FKdlx4OTdceGIwNCIKKyAgICBiIlx4YWNrXHhjYmtmXHhhM3NzXHhmY1x4MTZeXHg4Y2VceDg1YVx4YTU9Jlx4ZWNyXHhiM3BceGQxRVx4ZDVceDgweVx4YzciCisgICAgYiJceGRhXHhmNlx4ZmVrXHhiY1RceGJmSFx4ZWVceDE1b1x4YzVceDhjXHg4MzBceGVjXHgxZFx4MDFceGFlXHgwYy1lXFwiCisgICAgYiJceDkxXHg5MFx4OTRceGIyXHhmOFx4ODhceDkxXHhlOFx4MGJceGFlXHhhNz5ceDk4XHhmNlx4OWNrXHhkMlx4YzZceDA4IgorICAgIGIiXHhlNlx4YWJcdFx4OThceGYyIVx4YTBceDhjXlx4YWNxQVx4OTk8XHgxY0VHXHg5N1x4YzhceGYxXHhiNlx4YjlceDgyIgorICAgIGIiXHg4ZFx4ZjdceDA4c1x4OThhXHhmZlx4ZTNceGNjXHg5Mlx4MGVceGQyXHhiNlVceGQ3XHhkOVx4ODZceDdmYVx4ZTVceDFjIgorICAgIGIiXHg4ZFRHQFx0XHgxZVx4MGU3Klx4ZmNceGRlXHhiY102Tlx4ZjdceGYxXHg4NFx4OWVceDlmXHhjZlx4ZTlceDFlXHhiNSciCisgICAgYiJceGY0PFx4ZGZceDk5c3FceGQwXHg5ZFx4YmRceDk5XHgwYlx4YjQlcDRceGJme1x4YmJceDhhXHhkMlx4MGJceGJjPU0iCisgICAgYiJceDk0SDpceGY1XHhhOFx4ZDZceGE0XHhjOTBceGMyRFx4YjlceGQzXHhhOFx4YjBTXHg4NyBgXHhhMlx4ZWJceGYzV1x4Y2UiCisgICAgYiIgN1x4ZjlOI1xyXHhlNlx4YmVcdFx4OWRceGU3XHg4MTFceGY5XHgxMFx4YzFceGMyXHgxNFx4ZjZceGZjXHhjYmFceGI3IgorICAgIGIiXHhiMVx4N2ZceDk1bFx4ZTRcdGpBXHhlYzpceDEwXHhlNVx4ZmVceGMyXFw9RFx4ZTJceDBjXHgwYjNdXHhmN1x4YzFceGY3IgorICAgIGIiXHhiY2VaXHhiMUFceGVhXHgxNlx4ZTVceGZkZGdGUVx4ZWRceGFmXHgwNFx4YTNceGQzXHhmOFx4YTJxXHgxOUJceGQ0ciIKKyAgICBiIlx4YzVceDBjXHg5YVx4MTRceDk0XHhlYVx4OTFceGM0b1x4ZTRceGJiXHhiNFx4OTlceGY0QFx4ZDFceGU2XHgwY1x4ZTMiCisgICAgYiJceGM2ZFx4YTBRXG5ceGYyL1x4ZDhceGI4UzVceDhhXHgxODpceGI1Z1x4YWNceDk1RFx4Y2VceDE3XHgwN1x4ZDR6XHhkYSIKKyAgICBiIlx4OTBceGU2NVx4MDdceDE5SCFcdFx4ZmR1XHgxNlx4OGVceDBlUlx4MTlceGY0XHg4Y2xceDBjXHhmOVFceGYxXHg4MCIKKyAgICBiIlx4ZTNceGJmXHhkN09ceGY4XHg4Y1x4MThceDBiXHg5Y1x4ZjFceDFmYlx4ZTFcdFJceGIyXHhmMVx4ZTFBXHhlYSBceGNmLSIKKyAgICBiIklHRVx4ZjFceDE0XHg5OCRceDgzXHgxNVx4YzlceGQ4alx4YmZceDE5XHgwZlx4ZDVceGQxXHhhYVx4YjNceGYzXHhhNUkycyIKKyAgICBiIlx4OGRceDE0NVx4Y2FceGQ1XHhkOTNceDljXHhiOEQwXHhlNlx4YWElXHhkMFx4YzBQfUpPXmhceDhlXHgwOFx4YWRsVi4iCisgICAgYiJceDE4XHg4OFx4MTNceDA1b1x4YjBceDA3XHhlYXdceGUwXHhiNlx4YTRceGQ1Klx4ZTRyXHhlZlx4MDdHK1x4YzFceGJlaVsiCisgICAgYiJ3XHhlOFx4YWJAX1x4ZWZceDE1eVx4ZTVceDEyXHhjOVdceDFiLlx4YWRceDg1LVx4YzJceGY3XHhlM21VNmdceDhlU0EiCisgICAgYiJceDAxKFx4ZDNceGRiXHgxNlx4MTM9XHhkZVx4OTJceGY5LERceGI4XHg4YVx4YjJceGI0XHhjOVx4YzNceGVmbkVceGU4XFwiCisgICAgYiJceGE2XHhlMllceGQyXHhjZlx4Y2JceDhjXHhiNlx4ZDVceGU5XHgxZFx4MWVceDlhXHg4Yn5ceGUyXHhhNlxyRVx4ODR1ViIKKyAgICBiIlx4ZWRceGM2XHg5OVx4ZGRtPFx4MTBbXHgwZnVceDFmXHhjMVx4MWQxXG5ceGNmd1x4YjIlIVx4ZjBbXHhjZVx4ODdceDgzQiIKKyAgICBiIlx4MDhceGFhLFx4MDglZFx4Y2VmXHg5NFwiXHhkOWcuXHhjODNceGNiWFkrNFx4ZWNceDg1cUFcblx4MWQ9OVx4ZjAqXHhiMSIKKyAgICBiIlx4MWYvXHhmM3NceGQ2MWJceDdmQFx4ZmJceDlkXHhlM0ZRXFxceGJkXHg4Mlx4MWVceDAwXHhmM1x4Y2VceGQzXHhlMSIKKyAgICBiIlx4Y2EsRVx4ZmQ3W1x4YWJceGI2XHhiN1x4YWMhbUF9XHhiZFx4OWQzUjVceDljRlx4YWJIXHhlYlx4OTIpY2NceDEzXHhkMCIKKyAgICBiIlx4YmRceGVlXHhlOW57XHgxZElKQlx4YTVceGViXHgxMVx4ZThgdyZgXHg4Yn1AT3hlXHRceDhhXHgwN1x4MDJceDk1XHhmMiIKKyAgICBiIlx4ZWRceGRhfFx4YjFlXHhiZVx4YWFceGJiZ1x4MTlAXHhlMVlceDg3OFx4ODRceDBmXHg4Y1x4ZTNceGM5OFx4ZjJceDllIgorICAgIGIiXHhkNU5ceGI1Slx4ZWZceGFiIVx4ZTJceDhkcVx4ZTFceGU1cVx4YzVceGVlXHgxMVdceGI3XHhlNGsqXHgwMjdceGEwIgorICAgIGIiXHhhM0pceGY0XHhkOG1ceGQwcVx4OTRceGNiXHgwN1xuOlx4YjZgLlx4ZTRceDljXHgxNStceGMwKVx4ZGVceDgwWFx4ZDQiCisgICAgYiJceGNmUW1ceDAxXHhjMmNQXHgxY0FceDg1J1x4YzlceGFjXHg4Ylx4ZTZceGIyKVx4ZTZceDg0dFx4MWNceDkyXHhlNFoiCisgICAgYiJceDFjUlx4YjBceDllXHg5Nlx4ZDFceGZiXHgxY1x4YTZceDhiXHhjYmBceDEwXHgxMl1ceGYyZ1JceDliRlRceGUwXHhjOEgiCisgICAgYiJTXHhmYlx4YWM8XHgwNFx4YzdceGMxXHhlOFx4ZWRQXHhmNFx4MTZceGRiXHhjMFx4ZDdlXHhjMlx4MTdKXlx4MWZceGFiIgorICAgIGIiXHhmZltceDA4XHgxOVx4YjRceGY1XHhmYlx4MTlceGI0XHgwNFx4ZTVjfiddXHhjYlx4YzJBXHhlY1x4OTBceGQwXHhlZCIKKyAgICBiIlx4MDYsXHhjNUt7XHg4Nlx4MDNceGIxXHhjZE14XHhkZVFceDhjM1x4ZjlceDhhXHhlYT1ceDg5XHhhYmFceGQyXHhjODlhIgorICAgIGIiXHhkNzJceGYwXHhjM1x4MTlceDhhXHhkZnNceGQ0XHhmZFx4YmJceDgxYlx4ZWFFXCJceGQ4XHhmNGRceDBjRFx4ZjdJSiEiCisgICAgYiJceGU1ZFx4YmJHXHhlOVx4Y2FtXHhhYVx4MGZfclx4OTVceDkxTkJxXHhjYVBceGNlXHhhN1x4YTlceGI1XHgxMFx4OTRlUCEiCisgICAgYiJ8XHg4NTZceGNkXHhiZklpclx4YjhlXHg5YmpQXHg5N3FceGFid1M3XHgxYVx4MGVoTVx4ZTdceGNhXHg4Nj9ceGRlUH15fiIKKyAgICBiIlx4MGZceDk1SVx4ZmNceDEzXHhlMTxRXHgxYlx4ODY4XHgxZFx4MTFceGRmXHg5NFx4ZjRceDgyPnJceGE5a1x4ODhceGNiIgorICAgIGIiXHhmZFx4YzN2XHhlMlx4YjlceDhhXHgwMlx4OGVxXHg5MklceGY4XHhmNlx4ZjFceDAzc1x4OWJceGI4XHhlM1wiXHhlMyIKKyAgICBiIlx4YTlceGE1PkRceGI4XHg5NjtceGU3XHg5Mlx4ZDEzM1x4ZThceGRkJ2VceGM5Llx4ZGM7XHgxN1x4MWZceGY1SFx4MTNxIgorICAgIGIiXHhhNFdceDBjXHhkYn5ceDk4XHgwMVx4ZWJceGRmXHhlMzJceDEzXHgwZlx4ZGR4XG42XHhhMFx0XHgxMFx4YjZceGJiIgorICAgIGIiXHhiMFx4YzNceDE4XHhiNjtceDlmaltceGQ5XHhkNVx4YzlceDA2XHg4YVx4ODdceGNkXHhlNVx4ZWVceGZjXHg5Yy0lQCIKKyAgICBiIlx4ZWVceGUwXHhlYlx4ZDJceGUzXHhlOFx4ZmJceGMwXHgxMjJcXFx4YzdceGFmXHhjMlx4YTFPdGhceGIzXHg4Zlx4ODIiCisgICAgYiJceGIzXHgxOFx4YThceDA3XHhkNVx4ZWVfXHhiZVx4ZTBceDFjQVx4MWVfXHJceDlhXHhiMFx4MTdXJlx4YTJEXHg5MVx4OTQiCisgICAgYiJceDFhXHhiMlx4ZWZceGYyXHhkY1x4ODU7WFx4YjAsXHhlYj4tN1NceGU1XHhjYVx4MDcpXHgxZnBceDdmXHhjYVFCTFx4Y2EiCisgICAgYiJceGYzXHhiOWRceGZjXHhiNXN1XHhiMFx4YzhceDk1XHg5MFx4ZWIqKVx4YTB2XHhlNFx4OWF7RldceGY0bFx4ZGVceGNkaiIKKyAgICBiIlx4MDAiCispCisKKworZGVmIHRlc3RfbWFpbigpOgorICAgIHJ1bl91bml0dGVzdCgKKyAgICAgICAgQ29tcHJlc3NvckRlY29tcHJlc3NvclRlc3RDYXNlLAorICAgICAgICBDb21wcmVzc0RlY29tcHJlc3NGdW5jdGlvblRlc3RDYXNlLAorICAgICAgICBGaWxlVGVzdENhc2UsCisgICAgICAgIE1pc2NlbGxhbmVvdXNUZXN0Q2FzZSwKKyAgICApCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbWFpbGJveC5weSBiL0xpYi90ZXN0L3Rlc3RfbWFpbGJveC5weQppbmRleCBlMDlhZWE0Li4yMTJjZWI5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X21haWxib3gucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9tYWlsYm94LnB5CkBAIC05MSwxNCArOTEsMTQgQEAKICAgICAgICAgICAgICIiIikKIAogICAgIGRlZiB0ZXN0X2FkZF9pbnZhbGlkXzhiaXRfYnl0ZXNfaGVhZGVyKHNlbGYpOgotICAgICAgICBrZXkgPSBzZWxmLl9ib3guYWRkKHNlbGYuX25vbmFzY2lpX21zZy5lbmNvZGUoJ2xhdGluMScpKQorICAgICAgICBrZXkgPSBzZWxmLl9ib3guYWRkKHNlbGYuX25vbmFzY2lpX21zZy5lbmNvZGUoJ2xhdGluLTEnKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5fYm94KSwgMSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLl9ib3guZ2V0X2J5dGVzKGtleSksCi0gICAgICAgICAgICBzZWxmLl9ub25hc2NpaV9tc2cuZW5jb2RlKCdsYXRpbjEnKSkKKyAgICAgICAgICAgIHNlbGYuX25vbmFzY2lpX21zZy5lbmNvZGUoJ2xhdGluLTEnKSkKIAogICAgIGRlZiB0ZXN0X2ludmFsaWRfbm9uYXNjaWlfaGVhZGVyX2FzX3N0cmluZyhzZWxmKToKICAgICAgICAgc3ViaiA9IHNlbGYuX25vbmFzY2lpX21zZy5zcGxpdGxpbmVzKClbMV0KLSAgICAgICAga2V5ID0gc2VsZi5fYm94LmFkZChzdWJqLmVuY29kZSgnbGF0aW4xJykpCisgICAgICAgIGtleSA9IHNlbGYuX2JveC5hZGQoc3Viai5lbmNvZGUoJ2xhdGluLTEnKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLl9ib3guZ2V0X3N0cmluZyhrZXkpLAogICAgICAgICAgICAgJ1N1YmplY3Q6ID0/dW5rbm93bi04Yml0P2I/Um1Gc2FXNWhjSFRoY2lCbzRYcG9iM3B6ZXVGc2JPMTA0WE56JwogICAgICAgICAgICAgJ1lXd3VJRTNoY2lCeVpXNWtaV3gwNld3Lz89XG5cbicpCkBAIC05MjUsOCArOTI1LDcgQEAKICAgICAgICAgIyB0aGUgbXRpbWUgYW5kIHNob3VsZCBjYXVzZSBhIHJlLXJlYWQuIE5vdGUgdGhhdCAic2xlZXAKICAgICAgICAgIyBlbXVsYXRpb24iIGlzIHN0aWxsIGluIGVmZmVjdCwgYXMgc2tld2ZhY3RvciBpcyAtMy4KICAgICAgICAgZmlsZW5hbWUgPSBvcy5wYXRoLmpvaW4oc2VsZi5fcGF0aCwgJ2N1cicsICdzdHJheS1maWxlJykKLSAgICAgICAgZiA9IG9wZW4oZmlsZW5hbWUsICd3JykKLSAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHN1cHBvcnQuY3JlYXRlX2VtcHR5X2ZpbGUoZmlsZW5hbWUpCiAgICAgICAgIG9zLnVubGluayhmaWxlbmFtZSkKICAgICAgICAgc2VsZi5fYm94Ll9yZWZyZXNoKCkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlZnJlc2hlZCgpKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tYWlsY2FwLnB5IGIvTGliL3Rlc3QvdGVzdF9tYWlsY2FwLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0Y2QwOWMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X21haWxjYXAucHkKQEAgLTAsMCArMSwyMjEgQEAKK2ltcG9ydCBtYWlsY2FwCitpbXBvcnQgb3MKK2ltcG9ydCBzaHV0aWwKK2ltcG9ydCB0ZXN0LnN1cHBvcnQKK2ltcG9ydCB1bml0dGVzdAorCisjIExvY2F0aW9uIG9mIG1haWxjYXAgZmlsZQorTUFJTENBUEZJTEUgPSB0ZXN0LnN1cHBvcnQuZmluZGZpbGUoIm1haWxjYXAudHh0IikKKworIyBEaWN0IHRvIGFjdCBhcyBtb2NrIG1haWxjYXAgZW50cnkgZm9yIHRoaXMgdGVzdAorIyBUaGUga2V5cyBhbmQgdmFsdWVzIHNob3VsZCBtYXRjaCB0aGUgY29udGVudHMgb2YgTUFJTENBUEZJTEUKK01BSUxDQVBESUNUID0geworICAgICdhcHBsaWNhdGlvbi94LW1vdmllJzoKKyAgICAgICAgW3snY29tcG9zZSc6ICdtb3ZpZW1ha2VyICVzJywKKyAgICAgICAgICAneDExLWJpdG1hcCc6ICciL3Vzci9saWIvWm1haWwvYml0bWFwcy9tb3ZpZS54Ym0iJywKKyAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnIk1vdmllIicsCisgICAgICAgICAgJ3ZpZXcnOiAnbW92aWVwbGF5ZXIgJXMnfV0sCisgICAgJ2FwcGxpY2F0aW9uLyonOgorICAgICAgICBbeydjb3Bpb3Vzb3V0cHV0JzogJycsCisgICAgICAgICAgJ3ZpZXcnOiAnZWNobyAiVGhpcyBpcyBcXCIldFxcIiBidXQgICAgICAgIGlzIDUwIFxcJSBHcmVlayB0byBtZSIgXFw7IGNhdCAlcyd9XSwKKyAgICAnYXVkaW8vYmFzaWMnOgorICAgICAgICBbeydlZGl0JzogJ2F1ZGlvY29tcG9zZSAlcycsCisgICAgICAgICAgJ2NvbXBvc2UnOiAnYXVkaW9jb21wb3NlICVzJywKKyAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnIkFuIGF1ZGlvIGZyYWdtZW50IicsCisgICAgICAgICAgJ3ZpZXcnOiAnc2hvd2F1ZGlvICVzJ31dLAorICAgICd2aWRlby9tcGVnJzoKKyAgICAgICAgW3sndmlldyc6ICdtcGVnX3BsYXkgJXMnfV0sCisgICAgJ2FwcGxpY2F0aW9uL3Bvc3RzY3JpcHQnOgorICAgICAgICBbeyduZWVkc3Rlcm1pbmFsJzogJycsICd2aWV3JzogJ3BzLXRvLXRlcm1pbmFsICVzJ30sCisgICAgICAgICB7J2NvbXBvc2UnOiAnaWRyYXcgJXMnLCAndmlldyc6ICdwcy10by10ZXJtaW5hbCAlcyd9XSwKKyAgICAnYXBwbGljYXRpb24veC1kdmknOgorICAgICAgICBbeyd2aWV3JzogJ3hkdmkgJXMnfV0sCisgICAgJ21lc3NhZ2UvZXh0ZXJuYWwtYm9keSc6CisgICAgICAgIFt7J2NvbXBvc2V0eXBlZCc6ICdleHRjb21wb3NlICVzJywKKyAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnIkEgcmVmZXJlbmNlIHRvIGRhdGEgc3RvcmVkIGluIGFuIGV4dGVybmFsIGxvY2F0aW9uIicsCisgICAgICAgICAgJ25lZWRzdGVybWluYWwnOiAnJywKKyAgICAgICAgICAndmlldyc6ICdzaG93ZXh0ZXJuYWwgJXMgJXthY2Nlc3MtdHlwZX0gJXtuYW1lfSAle3NpdGV9ICAgICAle2RpcmVjdG9yeX0gJXttb2RlfSAle3NlcnZlcn0nfV0sCisgICAgJ3RleHQvcmljaHRleHQnOgorICAgICAgICBbeyd0ZXN0JzogJ3Rlc3QgImBlY2hvICAgICAle2NoYXJzZXR9IHwgdHIgXCdbQS1aXVwnIFwnW2Etel1cJ2AiICA9IGlzby04ODU5LTgnLAorICAgICAgICAgICdjb3Bpb3Vzb3V0cHV0JzogJycsCisgICAgICAgICAgJ3ZpZXcnOiAnc2hvd25vbmFzY2lpIGlzby04ODU5LTggLWUgcmljaHRleHQgLXAgJXMnfV0sCisgICAgJ2ltYWdlL3gteHdpbmRvd2R1bXAnOgorICAgICAgICBbeyd2aWV3JzogJ2Rpc3BsYXkgJXMnfV0sCisgICAgJ2F1ZGlvLyonOgorICAgICAgICBbeyd2aWV3JzogJy91c3IvbG9jYWwvYmluL3Nob3dhdWRpbyAldCd9XSwKKyAgICAndmlkZW8vKic6CisgICAgICAgIFt7J3ZpZXcnOiAnYW5pbWF0ZSAlcyd9XSwKKyAgICAnYXBwbGljYXRpb24vZnJhbWUnOgorICAgICAgICBbeydwcmludCc6ICciY2F0ICVzIHwgbHAiJywgJ3ZpZXcnOiAnc2hvd2ZyYW1lICVzJ31dLAorICAgICdpbWFnZS9yZ2InOgorICAgICAgICBbeyd2aWV3JzogJ2Rpc3BsYXkgJXMnfV0KK30KKworCitjbGFzcyBIZWxwZXJGdW5jdGlvblRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfbGlzdG1haWxjYXBmaWxlcyhzZWxmKToKKyAgICAgICAgIyBUaGUgcmV0dXJuIHZhbHVlIGZvciBsaXN0bWFpbGNhcGZpbGVzKCkgd2lsbCB2YXJ5IGJ5IHN5c3RlbS4KKyAgICAgICAgIyBTbyB2ZXJpZnkgdGhhdCBsaXN0bWFpbGNhcGZpbGVzKCkgcmV0dXJucyBhIGxpc3Qgb2Ygc3RyaW5ncyB0aGF0IGlzIG9mCisgICAgICAgICMgbm9uLXplcm8gbGVuZ3RoLgorICAgICAgICBtY2ZpbGVzID0gbWFpbGNhcC5saXN0bWFpbGNhcGZpbGVzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKG1jZmlsZXMsIGxpc3QpCisgICAgICAgIGZvciBtIGluIG1jZmlsZXM6CisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UobSwgc3RyKQorICAgICAgICB3aXRoIHRlc3Quc3VwcG9ydC5FbnZpcm9ubWVudFZhckd1YXJkKCkgYXMgZW52OgorICAgICAgICAgICAgIyBBY2NvcmRpbmcgdG8gUkZDIDE1MjQsIGlmIE1BSUxDQVBTIGVudiB2YXJpYWJsZSBleGlzdHMsIHVzZSB0aGF0CisgICAgICAgICAgICAjIGFuZCBvbmx5IHRoYXQuCisgICAgICAgICAgICBpZiAiTUFJTENBUFMiIGluIGVudjoKKyAgICAgICAgICAgICAgICBlbnZfbWFpbGNhcHMgPSBlbnZbIk1BSUxDQVBTIl0uc3BsaXQob3MucGF0aHNlcCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZW52X21haWxjYXBzID0gWyIvdGVzdGRpcjEvLm1haWxjYXAiLCAiL3Rlc3RkaXIyL21haWxjYXAiXQorICAgICAgICAgICAgICAgIGVudlsiTUFJTENBUFMiXSA9IG9zLnBhdGhzZXAuam9pbihlbnZfbWFpbGNhcHMpCisgICAgICAgICAgICAgICAgbWNmaWxlcyA9IG1haWxjYXAubGlzdG1haWxjYXBmaWxlcygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW52X21haWxjYXBzLCBtY2ZpbGVzKQorCisgICAgZGVmIHRlc3RfcmVhZG1haWxjYXBmaWxlKHNlbGYpOgorICAgICAgICAjIFRlc3QgcmVhZG1haWxjYXBmaWxlKCkgdXNpbmcgdGVzdCBmaWxlLiBJdCBzaG91bGQgbWF0Y2ggTUFJTENBUERJQ1QuCisgICAgICAgIHdpdGggb3BlbihNQUlMQ0FQRklMRSwgJ3InKSBhcyBtY2Y6CisgICAgICAgICAgICBkID0gbWFpbGNhcC5yZWFkbWFpbGNhcGZpbGUobWNmKQorICAgICAgICBzZWxmLmFzc2VydERpY3RFcXVhbChkLCBNQUlMQ0FQRElDVCkKKworICAgIGRlZiB0ZXN0X2xvb2t1cChzZWxmKToKKyAgICAgICAgIyBUZXN0IHdpdGhvdXQga2V5CisgICAgICAgIGV4cGVjdGVkID0gW3sndmlldyc6ICdtcGVnX3BsYXkgJXMnfSwgeyd2aWV3JzogJ2FuaW1hdGUgJXMnfV0KKyAgICAgICAgYWN0dWFsID0gbWFpbGNhcC5sb29rdXAoTUFJTENBUERJQ1QsICd2aWRlby9tcGVnJykKKyAgICAgICAgc2VsZi5hc3NlcnRMaXN0RXF1YWwoZXhwZWN0ZWQsIGFjdHVhbCkKKworICAgICAgICAjIFRlc3Qgd2l0aCBrZXkKKyAgICAgICAga2V5ID0gJ2NvbXBvc2UnCisgICAgICAgIGV4cGVjdGVkID0gW3snZWRpdCc6ICdhdWRpb2NvbXBvc2UgJXMnLAorICAgICAgICAgICAgICAgICAgICAgJ2NvbXBvc2UnOiAnYXVkaW9jb21wb3NlICVzJywKKyAgICAgICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbic6ICciQW4gYXVkaW8gZnJhZ21lbnQiJywKKyAgICAgICAgICAgICAgICAgICAgICd2aWV3JzogJ3Nob3dhdWRpbyAlcyd9XQorICAgICAgICBhY3R1YWwgPSBtYWlsY2FwLmxvb2t1cChNQUlMQ0FQRElDVCwgJ2F1ZGlvL2Jhc2ljJywga2V5KQorICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChleHBlY3RlZCwgYWN0dWFsKQorCisgICAgZGVmIHRlc3Rfc3Vic3Qoc2VsZik6CisgICAgICAgIHBsaXN0ID0gWydpZD0xJywgJ251bWJlcj0yJywgJ3RvdGFsPTMnXQorICAgICAgICAjIHRlc3QgY2FzZTogKFtmaWVsZCwgTUlNRXR5cGUsIGZpbGVuYW1lLCBwbGlzdD1bXV0sIDxleHBlY3RlZCBzdHJpbmc+KQorICAgICAgICB0ZXN0X2Nhc2VzID0gWworICAgICAgICAgICAgKFsiIiwgImF1ZGlvLyoiLCAiZm9vLnR4dCJdLCAiIiksCisgICAgICAgICAgICAoWyJlY2hvIGZvbyIsICJhdWRpby8qIiwgImZvby50eHQiXSwgImVjaG8gZm9vIiksCisgICAgICAgICAgICAoWyJlY2hvICVzIiwgImF1ZGlvLyoiLCAiZm9vLnR4dCJdLCAiZWNobyBmb28udHh0IiksCisgICAgICAgICAgICAoWyJlY2hvICV0IiwgImF1ZGlvLyoiLCAiZm9vLnR4dCJdLCAiZWNobyBhdWRpby8qIiksCisgICAgICAgICAgICAoWyJlY2hvIFwldCIsICJhdWRpby8qIiwgImZvby50eHQiXSwgImVjaG8gJXQiKSwKKyAgICAgICAgICAgIChbImVjaG8gZm9vIiwgImF1ZGlvLyoiLCAiZm9vLnR4dCIsIHBsaXN0XSwgImVjaG8gZm9vIiksCisgICAgICAgICAgICAoWyJlY2hvICV7dG90YWx9IiwgImF1ZGlvLyoiLCAiZm9vLnR4dCIsIHBsaXN0XSwgImVjaG8gMyIpCisgICAgICAgIF0KKyAgICAgICAgZm9yIHRjIGluIHRlc3RfY2FzZXM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1haWxjYXAuc3Vic3QoKnRjWzBdKSwgdGNbMV0pCisKKworY2xhc3MgR2V0Y2Fwc1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfbW9ja19nZXRjYXBzKHNlbGYpOgorICAgICAgICAjIFRlc3QgbWFpbGNhcC5nZXRjYXBzKCkgdXNpbmcgbW9jayBtYWlsY2FwIGZpbGUgaW4gdGhpcyBkaXIuCisgICAgICAgICMgVGVtcG9yYXJpbHkgb3ZlcnJpZGUgYW55IGV4aXN0aW5nIHN5c3RlbSBtYWlsY2FwIGZpbGUgYnkgcG9pbnRpbmcgdGhlCisgICAgICAgICMgTUFJTENBUFMgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gb3VyIG1vY2sgZmlsZS4KKyAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuRW52aXJvbm1lbnRWYXJHdWFyZCgpIGFzIGVudjoKKyAgICAgICAgICAgIGVudlsiTUFJTENBUFMiXSA9IE1BSUxDQVBGSUxFCisgICAgICAgICAgICBjYXBzID0gbWFpbGNhcC5nZXRjYXBzKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RGljdEVxdWFsKGNhcHMsIE1BSUxDQVBESUNUKQorCisgICAgZGVmIHRlc3Rfc3lzdGVtX21haWxjYXAoc2VsZik6CisgICAgICAgICMgVGVzdCBtYWlsY2FwLmdldGNhcHMoKSB3aXRoIG1haWxjYXAgZmlsZShzKSBvbiBzeXN0ZW0sIGlmIGFueS4KKyAgICAgICAgY2FwcyA9IG1haWxjYXAuZ2V0Y2FwcygpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShjYXBzLCBkaWN0KQorICAgICAgICBtYWlsY2FwZmlsZXMgPSBtYWlsY2FwLmxpc3RtYWlsY2FwZmlsZXMoKQorICAgICAgICBleGlzdGluZ21jZmlsZXMgPSBbbWNmIGZvciBtY2YgaW4gbWFpbGNhcGZpbGVzIGlmIG9zLnBhdGguZXhpc3RzKG1jZildCisgICAgICAgIGlmIGV4aXN0aW5nbWNmaWxlczoKKyAgICAgICAgICAgICMgQXQgbGVhc3QgMSBtYWlsY2FwIGZpbGUgZXhpc3RzLCBzbyB0ZXN0IHRoYXQuCisgICAgICAgICAgICBmb3IgKGssIHYpIGluIGNhcHMuaXRlbXMoKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoaywgc3RyKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZSh2LCBsaXN0KQorICAgICAgICAgICAgICAgIGZvciBlIGluIHY6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShlLCBkaWN0KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBObyBtYWlsY2FwIGZpbGVzIG9uIHN5c3RlbS4gZ2V0Y2FwcygpIHNob3VsZCByZXR1cm4gZW1wdHkgZGljdC4KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoe30sIGNhcHMpCisKKworY2xhc3MgRmluZG1hdGNoVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9maW5kbWF0Y2goc2VsZik6CisKKyAgICAgICAgIyBkZWZhdWx0IGZpbmRtYXRjaCBhcmd1bWVudHMKKyAgICAgICAgYyA9IE1BSUxDQVBESUNUCisgICAgICAgIGZuYW1lID0gImZvby50eHQiCisgICAgICAgIHBsaXN0ID0gWyJhY2Nlc3MtdHlwZT1kZWZhdWx0IiwgIm5hbWU9am9obiIsICJzaXRlPXB5dGhvbi5vcmciLAorICAgICAgICAgICAgICAgICAiZGlyZWN0b3J5PS90bXAiLCAibW9kZT1mb28iLCAic2VydmVyPWJhciJdCisgICAgICAgIGF1ZGlvX2Jhc2ljX2VudHJ5ID0geworICAgICAgICAgICAgJ2VkaXQnOiAnYXVkaW9jb21wb3NlICVzJywKKyAgICAgICAgICAgICdjb21wb3NlJzogJ2F1ZGlvY29tcG9zZSAlcycsCisgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnIkFuIGF1ZGlvIGZyYWdtZW50IicsCisgICAgICAgICAgICAndmlldyc6ICdzaG93YXVkaW8gJXMnCisgICAgICAgIH0KKyAgICAgICAgYXVkaW9fZW50cnkgPSB7InZpZXciOiAiL3Vzci9sb2NhbC9iaW4vc2hvd2F1ZGlvICV0In0KKyAgICAgICAgdmlkZW9fZW50cnkgPSB7J3ZpZXcnOiAnYW5pbWF0ZSAlcyd9CisgICAgICAgIG1lc3NhZ2VfZW50cnkgPSB7CisgICAgICAgICAgICAnY29tcG9zZXR5cGVkJzogJ2V4dGNvbXBvc2UgJXMnLAorICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJzogJyJBIHJlZmVyZW5jZSB0byBkYXRhIHN0b3JlZCBpbiBhbiBleHRlcm5hbCBsb2NhdGlvbiInLCAnbmVlZHN0ZXJtaW5hbCc6ICcnLAorICAgICAgICAgICAgJ3ZpZXcnOiAnc2hvd2V4dGVybmFsICVzICV7YWNjZXNzLXR5cGV9ICV7bmFtZX0gJXtzaXRlfSAgICAgJXtkaXJlY3Rvcnl9ICV7bW9kZX0gJXtzZXJ2ZXJ9JworICAgICAgICB9CisKKyAgICAgICAgIyB0ZXN0IGNhc2U6IChmaW5kbWF0Y2ggYXJncywgZmluZG1hdGNoIGtleXdvcmQgYXJncywgZXhwZWN0ZWQgb3V0cHV0KQorICAgICAgICAjICAgcG9zaXRpb25hbCBhcmdzOiBjYXBzLCBNSU1FdHlwZQorICAgICAgICAjICAga2V5d29yZCBhcmdzOiBrZXk9InZpZXciLCBmaWxlbmFtZT0iL2Rldi9udWxsIiwgcGxpc3Q9W10KKyAgICAgICAgIyAgIG91dHB1dDogKGNvbW1hbmQgbGluZSwgbWFpbGNhcCBlbnRyeSkKKyAgICAgICAgY2FzZXMgPSBbCisgICAgICAgICAgICAoW3t9LCAidmlkZW8vbXBlZyJdLCB7fSwgKE5vbmUsIE5vbmUpKSwKKyAgICAgICAgICAgIChbYywgImZvby9iYXIiXSwge30sIChOb25lLCBOb25lKSksCisgICAgICAgICAgICAoW2MsICJ2aWRlby9tcGVnIl0sIHt9LCAoJ21wZWdfcGxheSAvZGV2L251bGwnLCB7J3ZpZXcnOiAnbXBlZ19wbGF5ICVzJ30pKSwKKyAgICAgICAgICAgIChbYywgImF1ZGlvL2Jhc2ljIiwgImVkaXQiXSwge30sICgiYXVkaW9jb21wb3NlIC9kZXYvbnVsbCIsIGF1ZGlvX2Jhc2ljX2VudHJ5KSksCisgICAgICAgICAgICAoW2MsICJhdWRpby9iYXNpYyIsICJjb21wb3NlIl0sIHt9LCAoImF1ZGlvY29tcG9zZSAvZGV2L251bGwiLCBhdWRpb19iYXNpY19lbnRyeSkpLAorICAgICAgICAgICAgKFtjLCAiYXVkaW8vYmFzaWMiLCAiZGVzY3JpcHRpb24iXSwge30sICgnIkFuIGF1ZGlvIGZyYWdtZW50IicsIGF1ZGlvX2Jhc2ljX2VudHJ5KSksCisgICAgICAgICAgICAoW2MsICJhdWRpby9iYXNpYyIsICJmb29iYXIiXSwge30sIChOb25lLCBOb25lKSksCisgICAgICAgICAgICAoW2MsICJ2aWRlby8qIl0sIHsiZmlsZW5hbWUiOiBmbmFtZX0sICgiYW5pbWF0ZSAlcyIgJSBmbmFtZSwgdmlkZW9fZW50cnkpKSwKKyAgICAgICAgICAgIChbYywgImF1ZGlvL2Jhc2ljIiwgImNvbXBvc2UiXSwKKyAgICAgICAgICAgICB7ImZpbGVuYW1lIjogZm5hbWV9LAorICAgICAgICAgICAgICgiYXVkaW9jb21wb3NlICVzIiAlIGZuYW1lLCBhdWRpb19iYXNpY19lbnRyeSkpLAorICAgICAgICAgICAgKFtjLCAiYXVkaW8vYmFzaWMiXSwKKyAgICAgICAgICAgICB7ImtleSI6ICJkZXNjcmlwdGlvbiIsICJmaWxlbmFtZSI6IGZuYW1lfSwKKyAgICAgICAgICAgICAoJyJBbiBhdWRpbyBmcmFnbWVudCInLCBhdWRpb19iYXNpY19lbnRyeSkpLAorICAgICAgICAgICAgKFtjLCAiYXVkaW8vKiJdLAorICAgICAgICAgICAgIHsiZmlsZW5hbWUiOiBmbmFtZX0sCisgICAgICAgICAgICAgKCIvdXNyL2xvY2FsL2Jpbi9zaG93YXVkaW8gYXVkaW8vKiIsIGF1ZGlvX2VudHJ5KSksCisgICAgICAgICAgICAoW2MsICJtZXNzYWdlL2V4dGVybmFsLWJvZHkiXSwKKyAgICAgICAgICAgICB7InBsaXN0IjogcGxpc3R9LAorICAgICAgICAgICAgICgic2hvd2V4dGVybmFsIC9kZXYvbnVsbCBkZWZhdWx0IGpvaG4gcHl0aG9uLm9yZyAgICAgL3RtcCBmb28gYmFyIiwgbWVzc2FnZV9lbnRyeSkpCisgICAgICAgIF0KKyAgICAgICAgc2VsZi5fcnVuX2Nhc2VzKGNhc2VzKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Mob3MubmFtZSA9PSAicG9zaXgiLCAiUmVxdWlyZXMgJ3Rlc3QnIGNvbW1hbmQgb24gc3lzdGVtIikKKyAgICBkZWYgdGVzdF90ZXN0KHNlbGYpOgorICAgICAgICAjIGZpbmRtYXRjaCgpIHdpbGwgYXV0b21hdGljYWxseSBjaGVjayBhbnkgInRlc3QiIGNvbmRpdGlvbnMgYW5kIHNraXAKKyAgICAgICAgIyB0aGUgZW50cnkgaWYgdGhlIGNoZWNrIGZhaWxzLgorICAgICAgICBjYXBzID0geyJ0ZXN0L3Bhc3MiOiBbeyJ0ZXN0IjogInRlc3QgMSAtZXEgMSJ9XSwKKyAgICAgICAgICAgICAgICAidGVzdC9mYWlsIjogW3sidGVzdCI6ICJ0ZXN0IDEgLWVxIDAifV19CisgICAgICAgICMgdGVzdCBjYXNlOiAoZmluZG1hdGNoIGFyZ3MsIGZpbmRtYXRjaCBrZXl3b3JkIGFyZ3MsIGV4cGVjdGVkIG91dHB1dCkKKyAgICAgICAgIyAgIHBvc2l0aW9uYWwgYXJnczogY2FwcywgTUlNRXR5cGUsIGtleSAoInRlc3QiKQorICAgICAgICAjICAga2V5d29yZCBhcmdzOiBOL0EKKyAgICAgICAgIyAgIG91dHB1dDogKGNvbW1hbmQgbGluZSwgbWFpbGNhcCBlbnRyeSkKKyAgICAgICAgY2FzZXMgPSBbCisgICAgICAgICAgICAjIGZpbmRtYXRjaCB3aWxsIHJldHVybiB0aGUgbWFpbGNhcCBlbnRyeSBmb3IgdGVzdC9wYXNzIGJlY2F1c2UgaXQgZXZhbHVhdGVzIHRvIHRydWUKKyAgICAgICAgICAgIChbY2FwcywgInRlc3QvcGFzcyIsICJ0ZXN0Il0sIHt9LCAoInRlc3QgMSAtZXEgMSIsIHsidGVzdCI6ICJ0ZXN0IDEgLWVxIDEifSkpLAorICAgICAgICAgICAgIyBmaW5kbWF0Y2ggd2lsbCByZXR1cm4gTm9uZSBiZWNhdXNlIHRlc3QvZmFpbCBldmFsdWF0ZXMgdG8gZmFsc2UKKyAgICAgICAgICAgIChbY2FwcywgInRlc3QvZmFpbCIsICJ0ZXN0Il0sIHt9LCAoTm9uZSwgTm9uZSkpCisgICAgICAgIF0KKyAgICAgICAgc2VsZi5fcnVuX2Nhc2VzKGNhc2VzKQorCisgICAgZGVmIF9ydW5fY2FzZXMoc2VsZiwgY2FzZXMpOgorICAgICAgICBmb3IgYyBpbiBjYXNlczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFpbGNhcC5maW5kbWF0Y2goKmNbMF0sICoqY1sxXSksIGNbMl0pCisKKworZGVmIHRlc3RfbWFpbigpOgorICAgIHRlc3Quc3VwcG9ydC5ydW5fdW5pdHRlc3QoSGVscGVyRnVuY3Rpb25UZXN0LCBHZXRjYXBzVGVzdCwgRmluZG1hdGNoVGVzdCkKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X21hcnNoYWwucHkgYi9MaWIvdGVzdC90ZXN0X21hcnNoYWwucHkKaW5kZXggOTZhNzBlYy4uODNjMzQ4YyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9tYXJzaGFsLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbWFyc2hhbC5weQpAQCAtNiw2ICs2LDcgQEAKIGltcG9ydCBzeXMKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IG9zCitpbXBvcnQgdHlwZXMKIAogY2xhc3MgSGVscGVyTWl4aW46CiAgICAgZGVmIGhlbHBlcihzZWxmLCBzYW1wbGUsICpleHRyYSk6CkBAIC0xMTQsNiArMTE1LDIyIEBACiAgICAgICAgIGNvZGVzID0gKEV4Y2VwdGlvblRlc3RDYXNlLnRlc3RfZXhjZXB0aW9ucy5fX2NvZGVfXywpICogY291bnQKICAgICAgICAgbWFyc2hhbC5sb2FkcyhtYXJzaGFsLmR1bXBzKGNvZGVzKSkKIAorICAgIGRlZiB0ZXN0X2RpZmZlcmVudF9maWxlbmFtZXMoc2VsZik6CisgICAgICAgIGNvMSA9IGNvbXBpbGUoIngiLCAiZjEiLCAiZXhlYyIpCisgICAgICAgIGNvMiA9IGNvbXBpbGUoInkiLCAiZjIiLCAiZXhlYyIpCisgICAgICAgIGNvMSwgY28yID0gbWFyc2hhbC5sb2FkcyhtYXJzaGFsLmR1bXBzKChjbzEsIGNvMikpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvMS5jb19maWxlbmFtZSwgImYxIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbzIuY29fZmlsZW5hbWUsICJmMiIpCisKKyAgICBAc3VwcG9ydC5jcHl0aG9uX29ubHkKKyAgICBkZWYgdGVzdF9zYW1lX2ZpbGVuYW1lX3VzZWQoc2VsZik6CisgICAgICAgIHMgPSAiIiJkZWYgZigpOiBwYXNzXG5kZWYgZygpOiBwYXNzIiIiCisgICAgICAgIGNvID0gY29tcGlsZShzLCAibXlmaWxlIiwgImV4ZWMiKQorICAgICAgICBjbyA9IG1hcnNoYWwubG9hZHMobWFyc2hhbC5kdW1wcyhjbykpCisgICAgICAgIGZvciBvYmogaW4gY28uY29fY29uc3RzOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShvYmosIHR5cGVzLkNvZGVUeXBlKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzKGNvLmNvX2ZpbGVuYW1lLCBvYmouY29fZmlsZW5hbWUpCisKIGNsYXNzIENvbnRhaW5lclRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlLCBIZWxwZXJNaXhpbik6CiAgICAgZCA9IHsnYXN0cmluZyc6ICdmb29AYmFyLmJhei5zcGFtJywKICAgICAgICAgICdhZmxvYXQnOiA3MjgzLjQzLApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tYXRoLnB5IGIvTGliL3Rlc3QvdGVzdF9tYXRoLnB5CmluZGV4IGRkZGM4ODkuLjcxNTAwM2EgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbWF0aC5weQorKysgYi9MaWIvdGVzdC90ZXN0X21hdGgucHkKQEAgLTIsMTEgKzIsMTIgQEAKICMgWFhYWCBTaG91bGQgbm90IGRvIHRlc3RzIGFyb3VuZCB6ZXJvIG9ubHkKIAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdCwgdmVyYm9zZSwgcmVxdWlyZXNfSUVFRV83NTQKK2Zyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogaW1wb3J0IHVuaXR0ZXN0CiBpbXBvcnQgbWF0aAogaW1wb3J0IG9zCitpbXBvcnQgcGxhdGZvcm0KIGltcG9ydCBzeXMKLWltcG9ydCByYW5kb20KIGltcG9ydCBzdHJ1Y3QKIGltcG9ydCBzeXNjb25maWcKIApAQCAtNDU3LDEyICs0NTgsMTIgQEAKIAogICAgIGRlZiB0ZXN0Rm1vZChzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtYXRoLmZtb2QpCi0gICAgICAgIHNlbGYuZnRlc3QoJ2Ztb2QoMTAsMSknLCBtYXRoLmZtb2QoMTAsMSksIDApCi0gICAgICAgIHNlbGYuZnRlc3QoJ2Ztb2QoMTAsMC41KScsIG1hdGguZm1vZCgxMCwwLjUpLCAwKQotICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKDEwLDEuNSknLCBtYXRoLmZtb2QoMTAsMS41KSwgMSkKLSAgICAgICAgc2VsZi5mdGVzdCgnZm1vZCgtMTAsMSknLCBtYXRoLmZtb2QoLTEwLDEpLCAwKQotICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKC0xMCwwLjUpJywgbWF0aC5mbW9kKC0xMCwwLjUpLCAwKQotICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKC0xMCwxLjUpJywgbWF0aC5mbW9kKC0xMCwxLjUpLCAtMSkKKyAgICAgICAgc2VsZi5mdGVzdCgnZm1vZCgxMCwgMSknLCBtYXRoLmZtb2QoMTAsIDEpLCAwLjApCisgICAgICAgIHNlbGYuZnRlc3QoJ2Ztb2QoMTAsIDAuNSknLCBtYXRoLmZtb2QoMTAsIDAuNSksIDAuMCkKKyAgICAgICAgc2VsZi5mdGVzdCgnZm1vZCgxMCwgMS41KScsIG1hdGguZm1vZCgxMCwgMS41KSwgMS4wKQorICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKC0xMCwgMSknLCBtYXRoLmZtb2QoLTEwLCAxKSwgLTAuMCkKKyAgICAgICAgc2VsZi5mdGVzdCgnZm1vZCgtMTAsIDAuNSknLCBtYXRoLmZtb2QoLTEwLCAwLjUpLCAtMC4wKQorICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKC0xMCwgMS41KScsIG1hdGguZm1vZCgtMTAsIDEuNSksIC0xLjApCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYXRoLmlzbmFuKG1hdGguZm1vZChOQU4sIDEuKSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYXRoLmlzbmFuKG1hdGguZm1vZCgxLiwgTkFOKSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYXRoLmlzbmFuKG1hdGguZm1vZChOQU4sIE5BTikpKQpAQCAtNjUwLDYgKzY1MSwzMyBAQAogICAgICAgICBuPSAyKio5MAogICAgICAgICBzZWxmLmFzc2VydEFsbW9zdEVxdWFsKG1hdGgubG9nMXAobiksIG1hdGgubG9nMXAoZmxvYXQobikpKQogCisgICAgQHJlcXVpcmVzX0lFRUVfNzU0CisgICAgZGVmIHRlc3RMb2cyKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG1hdGgubG9nMikKKworICAgICAgICAjIENoZWNrIHNvbWUgaW50ZWdlciB2YWx1ZXMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYXRoLmxvZzIoMSksIDAuMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYXRoLmxvZzIoMiksIDEuMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYXRoLmxvZzIoNCksIDIuMCkKKworICAgICAgICAjIExhcmdlIGludGVnZXIgdmFsdWVzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0aC5sb2cyKDIqKjEwMjMpLCAxMDIzLjApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0aC5sb2cyKDIqKjEwMjQpLCAxMDI0LjApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0aC5sb2cyKDIqKjIwMDApLCAyMDAwLjApCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbWF0aC5sb2cyLCAtMS41KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtYXRoLmxvZzIsIE5JTkYpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYXRoLmlzbmFuKG1hdGgubG9nMihOQU4pKSkKKworICAgIEByZXF1aXJlc19JRUVFXzc1NAorICAgICMgbG9nMigpIGlzIG5vdCBhY2N1cmF0ZSBlbm91Z2ggb24gTWFjIE9TIFggVGlnZXIgKDEwLjQpCisgICAgQHN1cHBvcnQucmVxdWlyZXNfbWFjX3ZlcigxMCwgNSkKKyAgICBkZWYgdGVzdExvZzJFeGFjdChzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHdlIGdldCBleGFjdCBlcXVhbGl0eSBmb3IgbG9nMiBvZiBwb3dlcnMgb2YgMi4KKyAgICAgICAgYWN0dWFsID0gW21hdGgubG9nMihtYXRoLmxkZXhwKDEuMCwgbikpIGZvciBuIGluIHJhbmdlKC0xMDc0LCAxMDI0KV0KKyAgICAgICAgZXhwZWN0ZWQgPSBbZmxvYXQobikgZm9yIG4gaW4gcmFuZ2UoLTEwNzQsIDEwMjQpXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFjdHVhbCwgZXhwZWN0ZWQpCisKICAgICBkZWYgdGVzdExvZzEwKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG1hdGgubG9nMTApCiAgICAgICAgIHNlbGYuZnRlc3QoJ2xvZzEwKDAuMSknLCBtYXRoLmxvZzEwKDAuMSksIC0xKQpAQCAtMTAxMCw3ICsxMDM4LDYgQEAKIAogICAgIEByZXF1aXJlc19JRUVFXzc1NAogICAgIGRlZiB0ZXN0X210ZXN0ZmlsZShzZWxmKToKLSAgICAgICAgQUxMT1dFRF9FUlJPUiA9IDIwICAjIHBlcm1pdHRlZCBlcnJvciwgaW4gdWxwcwogICAgICAgICBmYWlsX2ZtdCA9ICJ7fTp7fSh7IXJ9KTogZXhwZWN0ZWQgeyFyfSwgZ290IHshcn0iCiAKICAgICAgICAgZmFpbHVyZXMgPSBbXQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tZW1vcnl2aWV3LnB5IGIvTGliL3Rlc3QvdGVzdF9tZW1vcnl2aWV3LnB5CmluZGV4IDBiZmRkZDkuLjg4MDk5MzAgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbWVtb3J5dmlldy5weQorKysgYi9MaWIvdGVzdC90ZXN0X21lbW9yeXZpZXcucHkKQEAgLTI0LDE1ICsyNCwxNCBAQAogICAgICAgICByZXR1cm4gZmlsdGVyKE5vbmUsIFtzZWxmLnJvX3R5cGUsIHNlbGYucndfdHlwZV0pCiAKICAgICBkZWYgY2hlY2tfZ2V0aXRlbV93aXRoX3R5cGUoc2VsZiwgdHApOgotICAgICAgICBpdGVtID0gc2VsZi5nZXRpdGVtX3R5cGUKICAgICAgICAgYiA9IHRwKHNlbGYuX3NvdXJjZSkKICAgICAgICAgb2xkcmVmY291bnQgPSBzeXMuZ2V0cmVmY291bnQoYikKICAgICAgICAgbSA9IHNlbGYuX3ZpZXcoYikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtWzBdLCBpdGVtKGIiYSIpKQotICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UobVswXSwgYnl0ZXMpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVs1XSwgaXRlbShiImYiKSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtWy0xXSwgaXRlbShiImYiKSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtWy02XSwgaXRlbShiImEiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtWzBdLCBvcmQoYiJhIikpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShtWzBdLCBpbnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVs1XSwgb3JkKGIiZiIpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1bLTFdLCBvcmQoYiJmIikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVstNl0sIG9yZChiImEiKSkKICAgICAgICAgIyBCb3VuZHMgY2hlY2tpbmcKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW5kZXhFcnJvciwgbGFtYmRhOiBtWzZdKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yLCBsYW1iZGE6IG1bLTddKQpAQCAtNzYsNyArNzUsOSBAQAogICAgICAgICBiID0gc2VsZi5yd190eXBlKHNlbGYuX3NvdXJjZSkKICAgICAgICAgb2xkcmVmY291bnQgPSBzeXMuZ2V0cmVmY291bnQoYikKICAgICAgICAgbSA9IHNlbGYuX3ZpZXcoYikKLSAgICAgICAgbVswXSA9IHRwKGIiMCIpCisgICAgICAgIG1bMF0gPSBvcmQoYicxJykKKyAgICAgICAgc2VsZi5fY2hlY2tfY29udGVudHModHAsIGIsIGIiMWJjZGVmIikKKyAgICAgICAgbVswOjFdID0gdHAoYiIwIikKICAgICAgICAgc2VsZi5fY2hlY2tfY29udGVudHModHAsIGIsIGIiMGJjZGVmIikKICAgICAgICAgbVsxOjNdID0gdHAoYiIxMiIpCiAgICAgICAgIHNlbGYuX2NoZWNrX2NvbnRlbnRzKHRwLCBiLCBiIjAxMmRlZiIpCkBAIC0xMDIsMTAgKzEwMywxNyBAQAogICAgICAgICAjIFdyb25nIGluZGV4L3NsaWNlIHR5cGVzCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2V0aXRlbSwgMC4wLCBiImEiKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNldGl0ZW0sICgwLCksIGIiYSIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2V0aXRlbSwgKHNsaWNlKDAsMSwxKSwgMCksIGIiYSIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2V0aXRlbSwgKDAsIHNsaWNlKDAsMSwxKSksIGIiYSIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2V0aXRlbSwgKDAsKSwgYiJhIikKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZXRpdGVtLCAiYSIsIGIiYSIpCisgICAgICAgICMgTm90IGltcGxlbWVudGVkOiBtdWx0aWRpbWVuc2lvbmFsIHNsaWNlcworICAgICAgICBzbGljZXMgPSAoc2xpY2UoMCwxLDEpLCBzbGljZSgwLDEsMikpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE5vdEltcGxlbWVudGVkRXJyb3IsIHNldGl0ZW0sIHNsaWNlcywgYiJhIikKICAgICAgICAgIyBUcnlpbmcgdG8gcmVzaXplIHRoZSBtZW1vcnkgb2JqZWN0Ci0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNldGl0ZW0sIDAsIGIiIikKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2V0aXRlbSwgMCwgYiJhYiIpCisgICAgICAgIGV4YyA9IFZhbHVlRXJyb3IgaWYgbS5mb3JtYXQgPT0gJ2MnIGVsc2UgVHlwZUVycm9yCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKGV4Yywgc2V0aXRlbSwgMCwgYiIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhleGMsIHNldGl0ZW0sIDAsIGIiYWIiKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzZXRpdGVtLCBzbGljZSgxLDEpLCBiImEiKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzZXRpdGVtLCBzbGljZSgwLDIpLCBiImEiKQogCkBAIC0xNzUsNyArMTgzLDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnNoYXBlLCAoNiwpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtKSwgNikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnN0cmlkZXMsIChzZWxmLml0ZW1zaXplLCkpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5zdWJvZmZzZXRzLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0uc3Vib2Zmc2V0cywgKCkpCiAgICAgICAgIHJldHVybiBtCiAKICAgICBkZWYgdGVzdF9hdHRyaWJ1dGVzX3JlYWRvbmx5KHNlbGYpOgpAQCAtMjA5LDEyICsyMTcsMTYgQEAKICAgICAgICAgICAgICAgICAjIElmIHRwIGlzIGEgZmFjdG9yeSByYXRoZXIgdGhhbiBhIHBsYWluIHR5cGUsIHNraXAKICAgICAgICAgICAgICAgICBjb250aW51ZQogCisgICAgICAgICAgICBjbGFzcyBNeVZpZXcoKToKKyAgICAgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgYmFzZSk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYubSA9IG1lbW9yeXZpZXcoYmFzZSkKICAgICAgICAgICAgIGNsYXNzIE15U291cmNlKHRwKToKICAgICAgICAgICAgICAgICBwYXNzCiAgICAgICAgICAgICBjbGFzcyBNeU9iamVjdDoKICAgICAgICAgICAgICAgICBwYXNzCiAKLSAgICAgICAgICAgICMgQ3JlYXRlIGEgcmVmZXJlbmNlIGN5Y2xlIHRocm91Z2ggYSBtZW1vcnl2aWV3IG9iamVjdAorICAgICAgICAgICAgIyBDcmVhdGUgYSByZWZlcmVuY2UgY3ljbGUgdGhyb3VnaCBhIG1lbW9yeXZpZXcgb2JqZWN0LgorICAgICAgICAgICAgIyBUaGlzIGV4ZXJjaXNlcyBtYnVmX2NsZWFyKCkuCiAgICAgICAgICAgICBiID0gTXlTb3VyY2UodHAoYidhYmMnKSkKICAgICAgICAgICAgIG0gPSBzZWxmLl92aWV3KGIpCiAgICAgICAgICAgICBvID0gTXlPYmplY3QoKQpAQCAtMjI2LDYgKzIzOCwxNyBAQAogICAgICAgICAgICAgZ2MuY29sbGVjdCgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUod3IoKSBpcyBOb25lLCB3cigpKQogCisgICAgICAgICAgICAjIFRoaXMgZXhlcmNpc2VzIG1lbW9yeV9jbGVhcigpLgorICAgICAgICAgICAgbSA9IE15Vmlldyh0cChiJ2FiYycpKQorICAgICAgICAgICAgbyA9IE15T2JqZWN0KCkKKyAgICAgICAgICAgIG0ueCA9IG0KKyAgICAgICAgICAgIG0ubyA9IG8KKyAgICAgICAgICAgIHdyID0gd2Vha3JlZi5yZWYobykKKyAgICAgICAgICAgIG0gPSBvID0gTm9uZQorICAgICAgICAgICAgIyBUaGUgY3ljbGUgbXVzdCBiZSBicm9rZW4KKyAgICAgICAgICAgIGdjLmNvbGxlY3QoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHdyKCkgaXMgTm9uZSwgd3IoKSkKKwogICAgIGRlZiBfY2hlY2tfcmVsZWFzZWQoc2VsZiwgbSwgdHApOgogICAgICAgICBjaGVjayA9IHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoVmFsdWVFcnJvciwgInJlbGVhc2VkIikKICAgICAgICAgd2l0aCBjaGVjazogYnl0ZXMobSkKQEAgLTI4Myw2ICszMDYsMzYgQEAKICAgICAgICAgaSA9IGlvLkJ5dGVzSU8oYidaWlpaJykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBpLnJlYWRpbnRvLCBtKQogCisgICAgZGVmIHRlc3RfZ2V0YnVmX2ZhaWwoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5fdmlldywge30pCisKKyAgICBkZWYgdGVzdF9oYXNoKHNlbGYpOgorICAgICAgICAjIE1lbW9yeXZpZXdzIG9mIHJlYWRvbmx5IChoYXNoYWJsZSkgdHlwZXMgYXJlIGhhc2hhYmxlLCBhbmQgdGhleQorICAgICAgICAjIGhhc2ggYXMgaGFzaChvYmoudG9ieXRlcygpKS4KKyAgICAgICAgdHAgPSBzZWxmLnJvX3R5cGUKKyAgICAgICAgaWYgdHAgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm5vIHJlYWQtb25seSB0eXBlIHRvIHRlc3QiKQorICAgICAgICBiID0gdHAoc2VsZi5fc291cmNlKQorICAgICAgICBtID0gc2VsZi5fdmlldyhiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobSksIGhhc2goYiJhYmNkZWYiKSkKKyAgICAgICAgIyBSZWxlYXNpbmcgdGhlIG1lbW9yeXZpZXcga2VlcHMgdGhlIHN0b3JlZCBoYXNoIHZhbHVlIChhcyB3aXRoIHdlYWtyZWZzKQorICAgICAgICBtLnJlbGVhc2UoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobSksIGhhc2goYiJhYmNkZWYiKSkKKyAgICAgICAgIyBIYXNoaW5nIGEgbWVtb3J5dmlldyBmb3IgdGhlIGZpcnN0IHRpbWUgYWZ0ZXIgaXQgaXMgcmVsZWFzZWQKKyAgICAgICAgIyByZXN1bHRzIGluIGFuIGVycm9yIChhcyB3aXRoIHdlYWtyZWZzKS4KKyAgICAgICAgbSA9IHNlbGYuX3ZpZXcoYikKKyAgICAgICAgbS5yZWxlYXNlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgaGFzaCwgbSkKKworICAgIGRlZiB0ZXN0X2hhc2hfd3JpdGFibGUoc2VsZik6CisgICAgICAgICMgTWVtb3J5dmlld3Mgb2Ygd3JpdGFibGUgdHlwZXMgYXJlIHVuaGFzaGFibGUKKyAgICAgICAgdHAgPSBzZWxmLnJ3X3R5cGUKKyAgICAgICAgaWYgdHAgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm5vIHdyaXRhYmxlIHR5cGUgdG8gdGVzdCIpCisgICAgICAgIGIgPSB0cChzZWxmLl9zb3VyY2UpCisgICAgICAgIG0gPSBzZWxmLl92aWV3KGIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGhhc2gsIG0pCisKICMgVmFyaWF0aW9ucyBvbiBzb3VyY2Ugb2JqZWN0cyBmb3IgdGhlIGJ1ZmZlcjogYnl0ZXMtbGlrZSBvYmplY3RzLCB0aGVuIGFycmF5cwogIyB3aXRoIGl0ZW1zaXplID4gMS4KICMgTk9URTogc3VwcG9ydCBmb3IgbXVsdGktZGltZW5zaW9uYWwgb2JqZWN0cyBpcyB1bmltcGxlbWVudGVkLgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tZXRhY2xhc3MucHkgYi9MaWIvdGVzdC90ZXN0X21ldGFjbGFzcy5weQppbmRleCAyMTlhYjk5Li5lNmZlMjBhIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X21ldGFjbGFzcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X21ldGFjbGFzcy5weQpAQCAtMTU5LDYgKzE1OSw3IEBACiAgICAgLi4uICAgICBiYXIgPSAxMjMKICAgICAuLi4KICAgICBkWydfX21vZHVsZV9fJ10gPSAndGVzdC50ZXN0X21ldGFjbGFzcycKKyAgICBkWydfX3F1YWxuYW1lX18nXSA9ICdDJwogICAgIGRbJ2ZvbyddID0gNAogICAgIGRbJ2ZvbyddID0gNDIKICAgICBkWydiYXInXSA9IDEyMwpAQCAtMTc3LDEyICsxNzgsMTIgQEAKICAgICAuLi4gICAgIGIgPSAyNAogICAgIC4uLgogICAgIG1ldGE6IEMgKCkKLSAgICBuczogWygnX19tb2R1bGVfXycsICd0ZXN0LnRlc3RfbWV0YWNsYXNzJyksICgnYScsIDQyKSwgKCdiJywgMjQpXQorICAgIG5zOiBbKCdfX21vZHVsZV9fJywgJ3Rlc3QudGVzdF9tZXRhY2xhc3MnKSwgKCdfX3F1YWxuYW1lX18nLCAnQycpLCAoJ2EnLCA0MiksICgnYicsIDI0KV0KICAgICBrdzogW10KICAgICA+Pj4gdHlwZShDKSBpcyBkaWN0CiAgICAgVHJ1ZQogICAgID4+PiBwcmludChzb3J0ZWQoQy5pdGVtcygpKSkKLSAgICBbKCdfX21vZHVsZV9fJywgJ3Rlc3QudGVzdF9tZXRhY2xhc3MnKSwgKCdhJywgNDIpLCAoJ2InLCAyNCldCisgICAgWygnX19tb2R1bGVfXycsICd0ZXN0LnRlc3RfbWV0YWNsYXNzJyksICgnX19xdWFsbmFtZV9fJywgJ0MnKSwgKCdhJywgNDIpLCAoJ2InLCAyNCldCiAgICAgPj4+CiAKIEFuZCBhZ2Fpbiwgd2l0aCBhIF9fcHJlcGFyZV9fIGF0dHJpYnV0ZS4KQEAgLTE5OSwxMSArMjAwLDEyIEBACiAgICAgLi4uCiAgICAgcHJlcGFyZTogQyAoKSBbKCdvdGhlcicsICdib29oJyldCiAgICAgZFsnX19tb2R1bGVfXyddID0gJ3Rlc3QudGVzdF9tZXRhY2xhc3MnCisgICAgZFsnX19xdWFsbmFtZV9fJ10gPSAnQycKICAgICBkWydhJ10gPSAxCiAgICAgZFsnYSddID0gMgogICAgIGRbJ2InXSA9IDMKICAgICBtZXRhOiBDICgpCi0gICAgbnM6IFsoJ19fbW9kdWxlX18nLCAndGVzdC50ZXN0X21ldGFjbGFzcycpLCAoJ2EnLCAyKSwgKCdiJywgMyldCisgICAgbnM6IFsoJ19fbW9kdWxlX18nLCAndGVzdC50ZXN0X21ldGFjbGFzcycpLCAoJ19fcXVhbG5hbWVfXycsICdDJyksICgnYScsIDIpLCAoJ2InLCAzKV0KICAgICBrdzogWygnb3RoZXInLCAnYm9vaCcpXQogICAgID4+PgogCkBAIC0yNDYsNyArMjQ4LDEzIEBACiAKICIiIgogCi1fX3Rlc3RfXyA9IHsnZG9jdGVzdHMnIDogZG9jdGVzdHN9CitpbXBvcnQgc3lzCisKKyMgVHJhY2UgZnVuY3Rpb24gaW50cm9kdWNlcyBfX2xvY2Fsc19fIHdoaWNoIGNhdXNlcyB2YXJpb3VzIHRlc3RzIHRvIGZhaWwuCitpZiBoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpOgorICAgIF9fdGVzdF9fID0ge30KK2Vsc2U6CisgICAgX190ZXN0X18gPSB7J2RvY3Rlc3RzJyA6IGRvY3Rlc3RzfQogCiBkZWYgdGVzdF9tYWluKHZlcmJvc2U9RmFsc2UpOgogICAgIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9taW5pZG9tLnB5IGIvTGliL3Rlc3QvdGVzdF9taW5pZG9tLnB5CmluZGV4IDRhNjliMDAuLmNjNGM5NWIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbWluaWRvbS5weQorKysgYi9MaWIvdGVzdC90ZXN0X21pbmlkb20ucHkKQEAgLTQsOSArNCw3IEBACiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdmVyYm9zZSwgcnVuX3VuaXR0ZXN0LCBmaW5kZmlsZQogaW1wb3J0IHVuaXR0ZXN0CiAKLWltcG9ydCB4bWwuZG9tCiBpbXBvcnQgeG1sLmRvbS5taW5pZG9tCi1pbXBvcnQgeG1sLnBhcnNlcnMuZXhwYXQKIAogZnJvbSB4bWwuZG9tLm1pbmlkb20gaW1wb3J0IHBhcnNlLCBOb2RlLCBEb2N1bWVudCwgcGFyc2VTdHJpbmcKIGZyb20geG1sLmRvbS5taW5pZG9tIGltcG9ydCBnZXRET01JbXBsZW1lbnRhdGlvbgpAQCAtMTQsNyArMTIsNiBAQAogCiB0c3RmaWxlID0gZmluZGZpbGUoInRlc3QueG1sIiwgc3ViZGlyPSJ4bWx0ZXN0ZGF0YSIpCiAKLQogIyBUaGUgdGVzdHMgb2YgRG9jdW1lbnRUeXBlIGltcG9ydGluZyB1c2UgdGhlc2UgaGVscGVycyB0byBjb25zdHJ1Y3QKICMgdGhlIGRvY3VtZW50cyB0byB3b3JrIHdpdGgsIHNpbmNlIG5vdCBhbGwgRE9NIGJ1aWxkZXJzIGFjdHVhbGx5CiAjIGNyZWF0ZSB0aGUgRG9jdW1lbnRUeXBlIG5vZGVzLgpAQCAtNTAsNyArNDcsNyBAQAogCiAgICAgZGVmIGNoZWNrV2hvbGVUZXh0KHNlbGYsIG5vZGUsIHMpOgogICAgICAgICB0ID0gbm9kZS53aG9sZVRleHQKLSAgICAgICAgc2VsZi5jb25maXJtKHQgPT0gcywgImxvb2tpbmcgZm9yICVzLCBmb3VuZCAlcyIgJSAocmVwcihzKSwgcmVwcih0KSkpCisgICAgICAgIHNlbGYuY29uZmlybSh0ID09IHMsICJsb29raW5nIGZvciAlciwgZm91bmQgJXIiICUgKHMsIHQpKQogCiAgICAgZGVmIHRlc3RQYXJzZUZyb21GaWxlKHNlbGYpOgogICAgICAgICB3aXRoIG9wZW4odHN0ZmlsZSkgYXMgZmlsZToKQEAgLTI4Miw2ICsyNzksNyBAQAogCiAgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZSgiZGVmIiwgImdoaSIpCiAgICAgICAgIHNlbGYuY29uZmlybShsZW4oY2hpbGQuYXR0cmlidXRlcykgPT0gMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoeG1sLmRvbS5Ob3RGb3VuZEVyciwgY2hpbGQucmVtb3ZlQXR0cmlidXRlLCAiZm9vIikKICAgICAgICAgY2hpbGQucmVtb3ZlQXR0cmlidXRlKCJkZWYiKQogICAgICAgICBzZWxmLmNvbmZpcm0obGVuKGNoaWxkLmF0dHJpYnV0ZXMpID09IDApCiAgICAgICAgIGRvbS51bmxpbmsoKQpAQCAtMjkzLDYgKzI5MSw4IEBACiAgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnczLm9yZyIsICJ4bWxuczpweXRob24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImh0dHA6Ly93d3cucHl0aG9uLm9yZyIpCiAgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnB5dGhvbi5vcmciLCAicHl0aG9uOmFiY2F0dHIiLCAiZm9vIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoeG1sLmRvbS5Ob3RGb3VuZEVyciwgY2hpbGQucmVtb3ZlQXR0cmlidXRlTlMsCisgICAgICAgICAgICAiZm9vIiwgImh0dHA6Ly93d3cucHl0aG9uLm9yZyIpCiAgICAgICAgIHNlbGYuY29uZmlybShsZW4oY2hpbGQuYXR0cmlidXRlcykgPT0gMikKICAgICAgICAgY2hpbGQucmVtb3ZlQXR0cmlidXRlTlMoImh0dHA6Ly93d3cucHl0aG9uLm9yZyIsICJhYmNhdHRyIikKICAgICAgICAgc2VsZi5jb25maXJtKGxlbihjaGlsZC5hdHRyaWJ1dGVzKSA9PSAxKQpAQCAtMzA0LDExICszMDQsMjMgQEAKICAgICAgICAgY2hpbGQuc2V0QXR0cmlidXRlKCJzcGFtIiwgImphbSIpCiAgICAgICAgIHNlbGYuY29uZmlybShsZW4oY2hpbGQuYXR0cmlidXRlcykgPT0gMSkKICAgICAgICAgbm9kZSA9IGNoaWxkLmdldEF0dHJpYnV0ZU5vZGUoInNwYW0iKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh4bWwuZG9tLk5vdEZvdW5kRXJyLCBjaGlsZC5yZW1vdmVBdHRyaWJ1dGVOb2RlLAorICAgICAgICAgICAgTm9uZSkKICAgICAgICAgY2hpbGQucmVtb3ZlQXR0cmlidXRlTm9kZShub2RlKQogICAgICAgICBzZWxmLmNvbmZpcm0obGVuKGNoaWxkLmF0dHJpYnV0ZXMpID09IDAKICAgICAgICAgICAgICAgICBhbmQgY2hpbGQuZ2V0QXR0cmlidXRlTm9kZSgic3BhbSIpIGlzIE5vbmUpCisgICAgICAgIGRvbTIgPSBEb2N1bWVudCgpCisgICAgICAgIGNoaWxkMiA9IGRvbTIuYXBwZW5kQ2hpbGQoZG9tLmNyZWF0ZUVsZW1lbnQoImZvbyIpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh4bWwuZG9tLk5vdEZvdW5kRXJyLCBjaGlsZC5yZW1vdmVBdHRyaWJ1dGVOb2RlLAorICAgICAgICAgICAgbm9kZSkKICAgICAgICAgZG9tLnVubGluaygpCiAKKyAgICBkZWYgdGVzdEhhc0F0dHJpYnV0ZShzZWxmKToKKyAgICAgICAgZG9tID0gRG9jdW1lbnQoKQorICAgICAgICBjaGlsZCA9IGRvbS5hcHBlbmRDaGlsZChkb20uY3JlYXRlRWxlbWVudCgiZm9vIikpCisgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZSgic3BhbSIsICJqYW0iKQorICAgICAgICBzZWxmLmNvbmZpcm0oY2hpbGQuaGFzQXR0cmlidXRlKCJzcGFtIikpCisKICAgICBkZWYgdGVzdENoYW5nZUF0dHIoc2VsZik6CiAgICAgICAgIGRvbSA9IHBhcnNlU3RyaW5nKCI8YWJjLz4iKQogICAgICAgICBlbCA9IGRvbS5kb2N1bWVudEVsZW1lbnQKQEAgLTU5Miw3ICs2MDQsMTMgQEAKIAogICAgIGRlZiB0ZXN0Rmlyc3RDaGlsZChzZWxmKTogcGFzcwogCi0gICAgZGVmIHRlc3RIYXNDaGlsZE5vZGVzKHNlbGYpOiBwYXNzCisgICAgZGVmIHRlc3RIYXNDaGlsZE5vZGVzKHNlbGYpOgorICAgICAgICBkb20gPSBwYXJzZVN0cmluZygiPGRvYz48Zm9vLz48L2RvYz4iKQorICAgICAgICBkb2MgPSBkb20uZG9jdW1lbnRFbGVtZW50CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShkb20uaGFzQ2hpbGROb2RlcygpKQorICAgICAgICBkb20yID0gcGFyc2VTdHJpbmcoIjxkb2MvPiIpCisgICAgICAgIGRvYzIgPSBkb20yLmRvY3VtZW50RWxlbWVudAorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGRvYzIuaGFzQ2hpbGROb2RlcygpKQogCiAgICAgZGVmIF90ZXN0Q2xvbmVFbGVtZW50Q29waWVzQXR0cmlidXRlcyhzZWxmLCBlMSwgZTIsIHRlc3QpOgogICAgICAgICBhdHRyczEgPSBlMS5hdHRyaWJ1dGVzCkBAIC0xMDQxLDQxICsxMDU5LDYgQEAKICAgICAgICAgICAgICAgICAidGVzdCBOb2RlTGlzdC5pdGVtKCkiKQogICAgICAgICBkb2MudW5saW5rKCkKIAotICAgIGRlZiB0ZXN0U0FYMkRPTShzZWxmKToKLSAgICAgICAgZnJvbSB4bWwuZG9tIGltcG9ydCBwdWxsZG9tCi0KLSAgICAgICAgc2F4MmRvbSA9IHB1bGxkb20uU0FYMkRPTSgpCi0gICAgICAgIHNheDJkb20uc3RhcnREb2N1bWVudCgpCi0gICAgICAgIHNheDJkb20uc3RhcnRFbGVtZW50KCJkb2MiLCB7fSkKLSAgICAgICAgc2F4MmRvbS5jaGFyYWN0ZXJzKCJ0ZXh0IikKLSAgICAgICAgc2F4MmRvbS5zdGFydEVsZW1lbnQoInN1YmVsbSIsIHt9KQotICAgICAgICBzYXgyZG9tLmNoYXJhY3RlcnMoInRleHQiKQotICAgICAgICBzYXgyZG9tLmVuZEVsZW1lbnQoInN1YmVsbSIpCi0gICAgICAgIHNheDJkb20uY2hhcmFjdGVycygidGV4dCIpCi0gICAgICAgIHNheDJkb20uZW5kRWxlbWVudCgiZG9jIikKLSAgICAgICAgc2F4MmRvbS5lbmREb2N1bWVudCgpCi0KLSAgICAgICAgZG9jID0gc2F4MmRvbS5kb2N1bWVudAotICAgICAgICByb290ID0gZG9jLmRvY3VtZW50RWxlbWVudAotICAgICAgICAodGV4dDEsIGVsbTEsIHRleHQyKSA9IHJvb3QuY2hpbGROb2RlcwotICAgICAgICB0ZXh0MyA9IGVsbTEuY2hpbGROb2Rlc1swXQotCi0gICAgICAgIHNlbGYuY29uZmlybSh0ZXh0MS5wcmV2aW91c1NpYmxpbmcgaXMgTm9uZSBhbmQKLSAgICAgICAgICAgICAgICB0ZXh0MS5uZXh0U2libGluZyBpcyBlbG0xIGFuZAotICAgICAgICAgICAgICAgIGVsbTEucHJldmlvdXNTaWJsaW5nIGlzIHRleHQxIGFuZAotICAgICAgICAgICAgICAgIGVsbTEubmV4dFNpYmxpbmcgaXMgdGV4dDIgYW5kCi0gICAgICAgICAgICAgICAgdGV4dDIucHJldmlvdXNTaWJsaW5nIGlzIGVsbTEgYW5kCi0gICAgICAgICAgICAgICAgdGV4dDIubmV4dFNpYmxpbmcgaXMgTm9uZSBhbmQKLSAgICAgICAgICAgICAgICB0ZXh0My5wcmV2aW91c1NpYmxpbmcgaXMgTm9uZSBhbmQKLSAgICAgICAgICAgICAgICB0ZXh0My5uZXh0U2libGluZyBpcyBOb25lLCAidGVzdFNBWDJET00gLSBzaWJsaW5ncyIpCi0KLSAgICAgICAgc2VsZi5jb25maXJtKHJvb3QucGFyZW50Tm9kZSBpcyBkb2MgYW5kCi0gICAgICAgICAgICAgICAgdGV4dDEucGFyZW50Tm9kZSBpcyByb290IGFuZAotICAgICAgICAgICAgICAgIGVsbTEucGFyZW50Tm9kZSBpcyByb290IGFuZAotICAgICAgICAgICAgICAgIHRleHQyLnBhcmVudE5vZGUgaXMgcm9vdCBhbmQKLSAgICAgICAgICAgICAgICB0ZXh0My5wYXJlbnROb2RlIGlzIGVsbTEsICJ0ZXN0U0FYMkRPTSAtIHBhcmVudHMiKQotICAgICAgICBkb2MudW5saW5rKCkKLQogICAgIGRlZiB0ZXN0RW5jb2RpbmdzKHNlbGYpOgogICAgICAgICBkb2MgPSBwYXJzZVN0cmluZygnPGZvbz4mI3gyMGFjOzwvZm9vPicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZG9jLnRveG1sKCksCkBAIC0xNTIyLDEyICsxNTA1LDIxIEBACiAgICAgICAgIGRvYy5hcHBlbmRDaGlsZChkb2MuY3JlYXRlQ29tbWVudCgiZm9vLS1iYXIiKSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZG9jLnRveG1sKQogCisKICAgICBkZWYgdGVzdEVtcHR5WE1MTlNWYWx1ZShzZWxmKToKICAgICAgICAgZG9jID0gcGFyc2VTdHJpbmcoIjxlbGVtZW50IHhtbG5zPScnPlxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICAiPGZvby8+XG48L2VsZW1lbnQ+IikKICAgICAgICAgZG9jMiA9IHBhcnNlU3RyaW5nKGRvYy50b3htbCgpKQogICAgICAgICBzZWxmLmNvbmZpcm0oZG9jMi5uYW1lc3BhY2VVUkkgPT0geG1sLmRvbS5FTVBUWV9OQU1FU1BBQ0UpCiAKKyAgICBkZWYgdGVzdERvY1JlbW92ZUNoaWxkKHNlbGYpOgorICAgICAgICBkb2MgPSBwYXJzZSh0c3RmaWxlKQorICAgICAgICB0aXRsZV90YWcgPSBkb2MuZG9jdW1lbnRFbGVtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJUSVRMRSIpWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKCB4bWwuZG9tLk5vdEZvdW5kRXJyLCBkb2MucmVtb3ZlQ2hpbGQsIHRpdGxlX3RhZykKKyAgICAgICAgbnVtX2NoaWxkcmVuX2JlZm9yZSA9IGxlbihkb2MuY2hpbGROb2RlcykKKyAgICAgICAgZG9jLnJlbW92ZUNoaWxkKGRvYy5jaGlsZE5vZGVzWzBdKQorICAgICAgICBudW1fY2hpbGRyZW5fYWZ0ZXIgPSBsZW4oZG9jLmNoaWxkTm9kZXMpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShudW1fY2hpbGRyZW5fYWZ0ZXIgPT0gbnVtX2NoaWxkcmVuX2JlZm9yZSAtIDEpCiAKIGRlZiB0ZXN0X21haW4oKToKICAgICBydW5fdW5pdHRlc3QoTWluaWRvbVRlc3QpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X21tYXAucHkgYi9MaWIvdGVzdC90ZXN0X21tYXAucHkKaW5kZXggMGUxOGFhYi4uMjIzMDAyOCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9tbWFwLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbW1hcC5weQpAQCAtNDE3LDYgKzQxNywzNSBAQAogICAgICAgICAgICAgbVt4XSA9IGIKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobVt4XSwgYikKIAorICAgIGRlZiB0ZXN0X3JlYWRfYWxsKHNlbGYpOgorICAgICAgICBtID0gbW1hcC5tbWFwKC0xLCAxNikKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG0uY2xvc2UpCisKKyAgICAgICAgIyBXaXRoIG5vIHBhcmFtZXRlcnMsIG9yIE5vbmUgb3IgYSBuZWdhdGl2ZSBhcmd1bWVudCwgcmVhZHMgYWxsCisgICAgICAgIG0ud3JpdGUoYnl0ZXMocmFuZ2UoMTYpKSkKKyAgICAgICAgbS5zZWVrKDApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5yZWFkKCksIGJ5dGVzKHJhbmdlKDE2KSkpCisgICAgICAgIG0uc2Vlayg4KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0ucmVhZCgpLCBieXRlcyhyYW5nZSg4LCAxNikpKQorICAgICAgICBtLnNlZWsoMTYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5yZWFkKCksIGInJykKKyAgICAgICAgbS5zZWVrKDMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5yZWFkKE5vbmUpLCBieXRlcyhyYW5nZSgzLCAxNikpKQorICAgICAgICBtLnNlZWsoNCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnJlYWQoLTEpLCBieXRlcyhyYW5nZSg0LCAxNikpKQorICAgICAgICBtLnNlZWsoNSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnJlYWQoLTIpLCBieXRlcyhyYW5nZSg1LCAxNikpKQorICAgICAgICBtLnNlZWsoOSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnJlYWQoLTQyKSwgYnl0ZXMocmFuZ2UoOSwgMTYpKSkKKworICAgIGRlZiB0ZXN0X3JlYWRfaW52YWxpZF9hcmcoc2VsZik6CisgICAgICAgIG0gPSBtbWFwLm1tYXAoLTEsIDE2KQorICAgICAgICBzZWxmLmFkZENsZWFudXAobS5jbG9zZSkKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG0ucmVhZCwgJ2ZvbycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5yZWFkLCA1LjUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5yZWFkLCBbMSwgMiwgM10pCisKICAgICBkZWYgdGVzdF9leHRlbmRlZF9nZXRzbGljZShzZWxmKToKICAgICAgICAgIyBUZXN0IGV4dGVuZGVkIHNsaWNpbmcgYnkgY29tcGFyaW5nIHdpdGggbGlzdCBzbGljaW5nLgogICAgICAgICBzID0gYnl0ZXMocmV2ZXJzZWQocmFuZ2UoMjU2KSkpCkBAIC01MzQsOCArNTYzLDcgQEAKICAgICAgICAgZi5jbG9zZSgpCiAKICAgICBkZWYgdGVzdF9lcnJvcihzZWxmKToKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzc3ViY2xhc3MobW1hcC5lcnJvciwgRW52aXJvbm1lbnRFcnJvcikpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oIm1tYXAuZXJyb3IiLCBzdHIobW1hcC5lcnJvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMobW1hcC5lcnJvciwgT1NFcnJvcikKIAogICAgIGRlZiB0ZXN0X2lvX21ldGhvZHMoc2VsZik6CiAgICAgICAgIGRhdGEgPSBiIjAxMjM0NTY3ODkiCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X21vZHVsZS5weSBiL0xpYi90ZXN0L3Rlc3RfbW9kdWxlLnB5CmluZGV4IDE1ODM2Y2EuLjU2MTc3ODkgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbW9kdWxlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbW9kdWxlLnB5CkBAIC03MCw5ICs3MCwxMSBAQAogICAgICAgICBtID0gTW9kdWxlVHlwZSgiZm9vIikKICAgICAgICAgbS5kZXN0cm95ZWQgPSBkZXN0cm95ZWQKICAgICAgICAgcyA9ICIiImNsYXNzIEE6Ci0gICAgZGVmIF9fZGVsX18oc2VsZiwgZGVzdHJveWVkPWRlc3Ryb3llZCk6Ci0gICAgICAgIGRlc3Ryb3llZC5hcHBlbmQoMSkKLWEgPSBBKCkiIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbCk6CisgICAgICAgIHNlbGYubCA9IGwKKyAgICBkZWYgX19kZWxfXyhzZWxmKToKKyAgICAgICAgc2VsZi5sLmFwcGVuZCgxKQorYSA9IEEoZGVzdHJveWVkKSIiIgogICAgICAgICBleGVjKHMsIG0uX19kaWN0X18pCiAgICAgICAgIGRlbCBtCiAgICAgICAgIGdjX2NvbGxlY3QoKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tb2R1bGVmaW5kZXIucHkgYi9MaWIvdGVzdC90ZXN0X21vZHVsZWZpbmRlci5weQppbmRleCBhMTg0MjE3Li5jNWZjMzIwIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X21vZHVsZWZpbmRlci5weQorKysgYi9MaWIvdGVzdC90ZXN0X21vZHVsZWZpbmRlci5weQpAQCAtMSw3ICsxLDcgQEAKLWltcG9ydCBfX2Z1dHVyZV9fCiBpbXBvcnQgb3MKK2ltcG9ydCBlcnJubworaW1wb3J0IHNodXRpbAogaW1wb3J0IHVuaXR0ZXN0Ci1pbXBvcnQgZGlzdHV0aWxzLmRpcl91dGlsCiBpbXBvcnQgdGVtcGZpbGUKIAogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CkBAIC05LDcgKzksNyBAQAogaW1wb3J0IG1vZHVsZWZpbmRlcgogCiBURVNUX0RJUiA9IHRlbXBmaWxlLm1rZHRlbXAoKQotVEVTVF9QQVRIID0gW1RFU1RfRElSLCBvcy5wYXRoLmRpcm5hbWUoX19mdXR1cmVfXy5fX2ZpbGVfXyldCitURVNUX1BBVEggPSBbVEVTVF9ESVIsIG9zLnBhdGguZGlybmFtZSh0ZW1wZmlsZS5fX2ZpbGVfXyldCiAKICMgRWFjaCB0ZXN0IGRlc2NyaXB0aW9uIGlzIGEgbGlzdCBvZiA1IGl0ZW1zOgogIwpAQCAtMTk2LDEyICsxOTYsMTcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbSAuIGltcG9ydCBiYXIKICIiIl0KIAorCiBkZWYgb3Blbl9maWxlKHBhdGgpOgotICAgICMjcHJpbnQgIiMiLCBvcy5wYXRoLmFic3BhdGgocGF0aCkKICAgICBkaXJuYW1lID0gb3MucGF0aC5kaXJuYW1lKHBhdGgpCi0gICAgZGlzdHV0aWxzLmRpcl91dGlsLm1rcGF0aChkaXJuYW1lKQorICAgIHRyeToKKyAgICAgICAgb3MubWFrZWRpcnMoZGlybmFtZSkKKyAgICBleGNlcHQgT1NFcnJvciBhcyBlOgorICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVFWElTVDoKKyAgICAgICAgICAgIHJhaXNlCiAgICAgcmV0dXJuIG9wZW4ocGF0aCwgInciKQogCisKIGRlZiBjcmVhdGVfcGFja2FnZShzb3VyY2UpOgogICAgIG9maSA9IE5vbmUKICAgICB0cnk6CkBAIC0yMTYsNiArMjIxLDcgQEAKICAgICAgICAgaWYgb2ZpOgogICAgICAgICAgICAgb2ZpLmNsb3NlKCkKIAorCiBjbGFzcyBNb2R1bGVGaW5kZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgX2RvX3Rlc3Qoc2VsZiwgaW5mbywgcmVwb3J0PUZhbHNlKToKICAgICAgICAgaW1wb3J0X3RoaXMsIG1vZHVsZXMsIG1pc3NpbmcsIG1heWJlX21pc3NpbmcsIHNvdXJjZSA9IGluZm8KQEAgLTIzNCwxOSArMjQwLDE3IEBACiAjIyAgICAgICAgICAgICAgICAgICAgaW1wb3J0IHRyYWNlYmFjazsgdHJhY2ViYWNrLnByaW50X2V4YygpCiAjIyAgICAgICAgICAgICAgICBzeXMucGF0aCA9IG9wYXRoCiAjIyAgICAgICAgICAgICAgICByZXR1cm4KLSAgICAgICAgICAgIG1vZHVsZXMgPSBzZXQobW9kdWxlcykKLSAgICAgICAgICAgIGZvdW5kID0gc2V0KG1mLm1vZHVsZXMua2V5cygpKQotICAgICAgICAgICAgbW9yZSA9IGxpc3QoZm91bmQgLSBtb2R1bGVzKQotICAgICAgICAgICAgbGVzcyA9IGxpc3QobW9kdWxlcyAtIGZvdW5kKQorICAgICAgICAgICAgbW9kdWxlcyA9IHNvcnRlZChzZXQobW9kdWxlcykpCisgICAgICAgICAgICBmb3VuZCA9IHNvcnRlZChtZi5tb2R1bGVzKQogICAgICAgICAgICAgIyBjaGVjayBpZiB3ZSBmb3VuZCB3aGF0IHdlIGV4cGVjdGVkLCBub3QgbW9yZSwgbm90IGxlc3MKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKG1vcmUsIGxlc3MpLCAoW10sIFtdKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm91bmQsIG1vZHVsZXMpCiAKICAgICAgICAgICAgICMgY2hlY2sgZm9yIG1pc3NpbmcgYW5kIG1heWJlIG1pc3NpbmcgbW9kdWxlcwogICAgICAgICAgICAgYmFkLCBtYXliZSA9IG1mLmFueV9taXNzaW5nX21heWJlKCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYmFkLCBtaXNzaW5nKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYXliZSwgbWF5YmVfbWlzc2luZykKICAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIGRpc3R1dGlscy5kaXJfdXRpbC5yZW1vdmVfdHJlZShURVNUX0RJUikKKyAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoVEVTVF9ESVIpCiAKICAgICBkZWYgdGVzdF9wYWNrYWdlKHNlbGYpOgogICAgICAgICBzZWxmLl9kb190ZXN0KHBhY2thZ2VfdGVzdCkKQEAgLTI1NCwyNSArMjU4LDIzIEBACiAgICAgZGVmIHRlc3RfbWF5YmUoc2VsZik6CiAgICAgICAgIHNlbGYuX2RvX3Rlc3QobWF5YmVfdGVzdCkKIAotICAgIGlmIGdldGF0dHIoX19mdXR1cmVfXywgImFic29sdXRlX2ltcG9ydCIsIE5vbmUpOgorICAgIGRlZiB0ZXN0X21heWJlX25ldyhzZWxmKToKKyAgICAgICAgc2VsZi5fZG9fdGVzdChtYXliZV90ZXN0X25ldykKIAotICAgICAgICBkZWYgdGVzdF9tYXliZV9uZXcoc2VsZik6Ci0gICAgICAgICAgICBzZWxmLl9kb190ZXN0KG1heWJlX3Rlc3RfbmV3KQorICAgIGRlZiB0ZXN0X2Fic29sdXRlX2ltcG9ydHMoc2VsZik6CisgICAgICAgIHNlbGYuX2RvX3Rlc3QoYWJzb2x1dGVfaW1wb3J0X3Rlc3QpCiAKLSAgICAgICAgZGVmIHRlc3RfYWJzb2x1dGVfaW1wb3J0cyhzZWxmKToKLSAgICAgICAgICAgIHNlbGYuX2RvX3Rlc3QoYWJzb2x1dGVfaW1wb3J0X3Rlc3QpCisgICAgZGVmIHRlc3RfcmVsYXRpdmVfaW1wb3J0cyhzZWxmKToKKyAgICAgICAgc2VsZi5fZG9fdGVzdChyZWxhdGl2ZV9pbXBvcnRfdGVzdCkKIAotICAgICAgICBkZWYgdGVzdF9yZWxhdGl2ZV9pbXBvcnRzKHNlbGYpOgotICAgICAgICAgICAgc2VsZi5fZG9fdGVzdChyZWxhdGl2ZV9pbXBvcnRfdGVzdCkKKyAgICBkZWYgdGVzdF9yZWxhdGl2ZV9pbXBvcnRzXzIoc2VsZik6CisgICAgICAgIHNlbGYuX2RvX3Rlc3QocmVsYXRpdmVfaW1wb3J0X3Rlc3RfMikKIAotICAgICAgICBkZWYgdGVzdF9yZWxhdGl2ZV9pbXBvcnRzXzIoc2VsZik6Ci0gICAgICAgICAgICBzZWxmLl9kb190ZXN0KHJlbGF0aXZlX2ltcG9ydF90ZXN0XzIpCisgICAgZGVmIHRlc3RfcmVsYXRpdmVfaW1wb3J0c18zKHNlbGYpOgorICAgICAgICBzZWxmLl9kb190ZXN0KHJlbGF0aXZlX2ltcG9ydF90ZXN0XzMpCiAKLSAgICAgICAgZGVmIHRlc3RfcmVsYXRpdmVfaW1wb3J0c18zKHNlbGYpOgotICAgICAgICAgICAgc2VsZi5fZG9fdGVzdChyZWxhdGl2ZV9pbXBvcnRfdGVzdF8zKQogCiBkZWYgdGVzdF9tYWluKCk6Ci0gICAgZGlzdHV0aWxzLmxvZy5zZXRfdGhyZXNob2xkKGRpc3R1dGlscy5sb2cuV0FSTikKICAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChNb2R1bGVGaW5kZXJUZXN0KQogCiBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tdWx0aWJ5dGVjb2RlYy5weSBiL0xpYi90ZXN0L3Rlc3RfbXVsdGlieXRlY29kZWMucHkKaW5kZXggODZjNjhkYy4uZmViN2JkNSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9tdWx0aWJ5dGVjb2RlYy5weQorKysgYi9MaWIvdGVzdC90ZXN0X211bHRpYnl0ZWNvZGVjLnB5CkBAIC0yNDcsMjAgKzI0NywxNiBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShhbnkoeCA+IDB4ODAgZm9yIHggaW4gZSkpCiAKICAgICBkZWYgdGVzdF9idWcxNTcyODMyKHNlbGYpOgotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+PSAweDEwMDAwOgotICAgICAgICAgICAgbXl1bmljaHIgPSBjaHIKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIG15dW5pY2hyID0gbGFtYmRhIHg6IGNocigweEQ3QzArKHg+PjEwKSkgKyBjaHIoMHhEQzAwKyh4JjB4M0ZGKSkKLQogICAgICAgICBmb3IgeCBpbiByYW5nZSgweDEwMDAwLCAweDExMDAwMCk6CiAgICAgICAgICAgICAjIEFueSBJU08gMjAyMiBjb2RlYyB3aWxsIGNhdXNlIHRoZSBzZWdmYXVsdAotICAgICAgICAgICAgbXl1bmljaHIoeCkuZW5jb2RlKCdpc29fMjAyMl9qcCcsICdpZ25vcmUnKQorICAgICAgICAgICAgY2hyKHgpLmVuY29kZSgnaXNvXzIwMjJfanAnLCAnaWdub3JlJykKIAogY2xhc3MgVGVzdFN0YXRlZnVsKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICB0ZXh0ID0gJ1x1NEUxNlx1NEUxNicKICAgICBlbmNvZGluZyA9ICdpc28tMjAyMi1qcCcKICAgICBleHBlY3RlZCA9IGInXHgxYiRCQCRAJCcKLSAgICBleHBlY3RlZF9yZXNldCA9IGInXHgxYiRCQCRAJFx4MWIoQicKKyAgICByZXNldCA9IGInXHgxYihCJworICAgIGV4cGVjdGVkX3Jlc2V0ID0gZXhwZWN0ZWQgKyByZXNldAogCiAgICAgZGVmIHRlc3RfZW5jb2RlKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYudGV4dC5lbmNvZGUoc2VsZi5lbmNvZGluZyksIHNlbGYuZXhwZWN0ZWRfcmVzZXQpCkBAIC0yNzEsNiArMjY3LDggQEAKICAgICAgICAgICAgIGVuY29kZXIuZW5jb2RlKGNoYXIpCiAgICAgICAgICAgICBmb3IgY2hhciBpbiBzZWxmLnRleHQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0cHV0LCBzZWxmLmV4cGVjdGVkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVuY29kZXIuZW5jb2RlKCcnLCBmaW5hbD1UcnVlKSwgc2VsZi5yZXNldCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGVyLmVuY29kZSgnJywgZmluYWw9VHJ1ZSksIGInJykKIAogICAgIGRlZiB0ZXN0X2luY3JlbWVudGFsZW5jb2Rlcl9maW5hbChzZWxmKToKICAgICAgICAgZW5jb2RlciA9IGNvZGVjcy5nZXRpbmNyZW1lbnRhbGVuY29kZXIoc2VsZi5lbmNvZGluZykoKQpAQCAtMjc5LDEyICsyNzcsMTQgQEAKICAgICAgICAgICAgIGVuY29kZXIuZW5jb2RlKGNoYXIsIGluZGV4ID09IGxhc3RfaW5kZXgpCiAgICAgICAgICAgICBmb3IgaW5kZXgsIGNoYXIgaW4gZW51bWVyYXRlKHNlbGYudGV4dCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0cHV0LCBzZWxmLmV4cGVjdGVkX3Jlc2V0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVuY29kZXIuZW5jb2RlKCcnLCBmaW5hbD1UcnVlKSwgYicnKQogCiBjbGFzcyBUZXN0SFpTdGF0ZWZ1bChUZXN0U3RhdGVmdWwpOgogICAgIHRleHQgPSAnXHU4MDRhXHU4MDRhJwogICAgIGVuY29kaW5nID0gJ2h6JwogICAgIGV4cGVjdGVkID0gYid+e0FEQUQnCi0gICAgZXhwZWN0ZWRfcmVzZXQgPSBiJ357QURBRH59JworICAgIHJlc2V0ID0gYid+fScKKyAgICBleHBlY3RlZF9yZXNldCA9IGV4cGVjdGVkICsgcmVzZXQKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KF9fbmFtZV9fKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LnB5IGIvTGliL3Rlc3QvdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LnB5CmluZGV4IGVmNjNiNjkuLmFjM2I5MmIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbXVsdGlieXRlY29kZWNfc3VwcG9ydC5weQorKysgYi9MaWIvdGVzdC90ZXN0X211bHRpYnl0ZWNvZGVjX3N1cHBvcnQucHkKQEAgLTI2NCwyMSArMjY0LDYgQEAKIAogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3N0cmVhbS5nZXR2YWx1ZSgpLCBzZWxmLnRzdHJpbmdbMF0pCiAKLWlmIGxlbignXFUwMDAxMjM0NScpID09IDI6ICMgdWNzMiBidWlsZAotICAgIF91bmljaHIgPSBjaHIKLSAgICBkZWYgY2hyKHYpOgotICAgICAgICBpZiB2ID49IDB4MTAwMDA6Ci0gICAgICAgICAgICByZXR1cm4gX3VuaWNocigweGQ4MDAgKyAoKHYgLSAweDEwMDAwKSA+PiAxMCkpICsgXAotICAgICAgICAgICAgICAgICAgIF91bmljaHIoMHhkYzAwICsgKCh2IC0gMHgxMDAwMCkgJiAweDNmZikpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICByZXR1cm4gX3VuaWNocih2KQotICAgIF9vcmQgPSBvcmQKLSAgICBkZWYgb3JkKGMpOgotICAgICAgICBpZiBsZW4oYykgPT0gMjoKLSAgICAgICAgICAgIHJldHVybiAweDEwMDAwICsgKChfb3JkKGNbMF0pIC0gMHhkODAwKSA8PCAxMCkgKyBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgIChvcmQoY1sxXSkgLSAweGRjMDApCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICByZXR1cm4gX29yZChjKQogCiBjbGFzcyBUZXN0QmFzZV9NYXBwaW5nKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBwYXNzX2VuY3Rlc3QgPSBbXQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tdWx0aXByb2Nlc3NpbmcucHkgYi9MaWIvdGVzdC90ZXN0X211bHRpcHJvY2Vzc2luZy5weQppbmRleCA4ZWRiNDIwLi4wZGI2MzUyIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X211bHRpcHJvY2Vzc2luZy5weQorKysgYi9MaWIvdGVzdC90ZXN0X211bHRpcHJvY2Vzc2luZy5weQpAQCAtOCw2ICs4LDcgQEAKIGltcG9ydCBxdWV1ZSBhcyBweXF1ZXVlCiBpbXBvcnQgdGltZQogaW1wb3J0IGlvCitpbXBvcnQgaXRlcnRvb2xzCiBpbXBvcnQgc3lzCiBpbXBvcnQgb3MKIGltcG9ydCBnYwpAQCAtODIsNiArODMsMjMgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnSEFWRV9CUk9LRU5fU0VNX0dFVFZBTFVFJywgRmFsc2UpCiAKIFdJTjMyID0gKHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiKQoraWYgV0lOMzI6CisgICAgZnJvbSBfc3VicHJvY2VzcyBpbXBvcnQgV2FpdEZvclNpbmdsZU9iamVjdCwgSU5GSU5JVEUsIFdBSVRfT0JKRUNUXzAKKworICAgIGRlZiB3YWl0X2Zvcl9oYW5kbGUoaGFuZGxlLCB0aW1lb3V0KToKKyAgICAgICAgaWYgdGltZW91dCBpcyBOb25lIG9yIHRpbWVvdXQgPCAwLjA6CisgICAgICAgICAgICB0aW1lb3V0ID0gSU5GSU5JVEUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHRpbWVvdXQgPSBpbnQoMTAwMCAqIHRpbWVvdXQpCisgICAgICAgIHJldHVybiBXYWl0Rm9yU2luZ2xlT2JqZWN0KGhhbmRsZSwgdGltZW91dCkgPT0gV0FJVF9PQkpFQ1RfMAorZWxzZToKKyAgICBmcm9tIHNlbGVjdCBpbXBvcnQgc2VsZWN0CisgICAgX3NlbGVjdCA9IHV0aWwuX2VpbnRyX3JldHJ5KHNlbGVjdCkKKworICAgIGRlZiB3YWl0X2Zvcl9oYW5kbGUoaGFuZGxlLCB0aW1lb3V0KToKKyAgICAgICAgaWYgdGltZW91dCBpcyBub3QgTm9uZSBhbmQgdGltZW91dCA8IDAuMDoKKyAgICAgICAgICAgIHRpbWVvdXQgPSBOb25lCisgICAgICAgIHJldHVybiBoYW5kbGUgaW4gX3NlbGVjdChbaGFuZGxlXSwgW10sIFtdLCB0aW1lb3V0KVswXQogCiB0cnk6CiAgICAgTUFYRkQgPSBvcy5zeXNjb25mKCJTQ19PUEVOX01BWCIpCkBAIC0xOTYsNiArMjE0LDE4IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY3VycmVudC5pZGVudCwgb3MuZ2V0cGlkKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY3VycmVudC5leGl0Y29kZSwgTm9uZSkKIAorICAgIGRlZiB0ZXN0X2RhZW1vbl9hcmd1bWVudChzZWxmKToKKyAgICAgICAgaWYgc2VsZi5UWVBFID09ICJ0aHJlYWRzIjoKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgICMgQnkgZGVmYXVsdCB1c2VzIHRoZSBjdXJyZW50IHByb2Nlc3MncyBkYWVtb24gZmxhZy4KKyAgICAgICAgcHJvYzAgPSBzZWxmLlByb2Nlc3ModGFyZ2V0PXNlbGYuX3Rlc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHJvYzAuZGFlbW9uLCBzZWxmLmN1cnJlbnRfcHJvY2VzcygpLmRhZW1vbikKKyAgICAgICAgcHJvYzEgPSBzZWxmLlByb2Nlc3ModGFyZ2V0PXNlbGYuX3Rlc3QsIGRhZW1vbj1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydFRydWUocHJvYzEuZGFlbW9uKQorICAgICAgICBwcm9jMiA9IHNlbGYuUHJvY2Vzcyh0YXJnZXQ9c2VsZi5fdGVzdCwgZGFlbW9uPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHByb2MyLmRhZW1vbikKKwogICAgIEBjbGFzc21ldGhvZAogICAgIGRlZiBfdGVzdChjbHMsIHEsICphcmdzLCAqKmt3ZHMpOgogICAgICAgICBjdXJyZW50ID0gY2xzLmN1cnJlbnRfcHJvY2VzcygpCkBAIC0zMjgsNiArMzU4LDI2IEBACiAgICAgICAgICAgICBdCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0LCBleHBlY3RlZCkKIAorICAgIEBjbGFzc21ldGhvZAorICAgIGRlZiBfdGVzdF9zZW50aW5lbChjbHMsIGV2ZW50KToKKyAgICAgICAgZXZlbnQud2FpdCgxMC4wKQorCisgICAgZGVmIHRlc3Rfc2VudGluZWwoc2VsZik6CisgICAgICAgIGlmIHNlbGYuVFlQRSA9PSAidGhyZWFkcyI6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgZXZlbnQgPSBzZWxmLkV2ZW50KCkKKyAgICAgICAgcCA9IHNlbGYuUHJvY2Vzcyh0YXJnZXQ9c2VsZi5fdGVzdF9zZW50aW5lbCwgYXJncz0oZXZlbnQsKSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIHAuc2VudGluZWwKKyAgICAgICAgcC5zdGFydCgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChwLmpvaW4pCisgICAgICAgIHNlbnRpbmVsID0gcC5zZW50aW5lbAorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc2VudGluZWwsIGludCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh3YWl0X2Zvcl9oYW5kbGUoc2VudGluZWwsIHRpbWVvdXQ9MC4wKSkKKyAgICAgICAgZXZlbnQuc2V0KCkKKyAgICAgICAgcC5qb2luKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHdhaXRfZm9yX2hhbmRsZShzZW50aW5lbCwgdGltZW91dD1ERUxUQSkpCisKICMKICMKICMKQEAgLTEwOTksNiArMTE0OSw5IEBACiAgICAgdGltZS5zbGVlcCh3YWl0KQogICAgIHJldHVybiB4KngKIAorZGVmIG11bCh4LCB5KToKKyAgICByZXR1cm4geCp5CisKIGNsYXNzIF9UZXN0UG9vbChCYXNlVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfYXBwbHkoc2VsZik6CkBAIC0xMTEyLDYgKzExNjUsMjAgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwbWFwKHNxciwgbGlzdChyYW5nZSgxMDApKSwgY2h1bmtzaXplPTIwKSwKICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0KG1hcChzcXIsIGxpc3QocmFuZ2UoMTAwKSkpKSkKIAorICAgIGRlZiB0ZXN0X3N0YXJtYXAoc2VsZik6CisgICAgICAgIHBzbWFwID0gc2VsZi5wb29sLnN0YXJtYXAKKyAgICAgICAgdHVwbGVzID0gbGlzdCh6aXAocmFuZ2UoMTApLCByYW5nZSg5LC0xLCAtMSkpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBzbWFwKG11bCwgdHVwbGVzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0KGl0ZXJ0b29scy5zdGFybWFwKG11bCwgdHVwbGVzKSkpCisgICAgICAgIHR1cGxlcyA9IGxpc3QoemlwKHJhbmdlKDEwMCksIHJhbmdlKDk5LC0xLCAtMSkpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBzbWFwKG11bCwgdHVwbGVzLCBjaHVua3NpemU9MjApLAorICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3QoaXRlcnRvb2xzLnN0YXJtYXAobXVsLCB0dXBsZXMpKSkKKworICAgIGRlZiB0ZXN0X3N0YXJtYXBfYXN5bmMoc2VsZik6CisgICAgICAgIHR1cGxlcyA9IGxpc3QoemlwKHJhbmdlKDEwMCksIHJhbmdlKDk5LC0xLCAtMSkpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYucG9vbC5zdGFybWFwX2FzeW5jKG11bCwgdHVwbGVzKS5nZXQoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0KGl0ZXJ0b29scy5zdGFybWFwKG11bCwgdHVwbGVzKSkpCisKICAgICBkZWYgdGVzdF9tYXBfY2h1bmtzaXplKHNlbGYpOgogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzZWxmLnBvb2wubWFwX2FzeW5jKHNxciwgW10sIGNodW5rc2l6ZT0xKS5nZXQodGltZW91dD1USU1FT1VUMSkKQEAgLTE3MTIsNiArMTc3OSwxNyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIHJlZHVjdGlvbi5yZWN2X2hhbmRsZSwgY29ubikKICAgICAgICAgcC5qb2luKCkKIAorY2xhc3MgX1Rlc3RMaXN0ZW5lcihCYXNlVGVzdENhc2UpOgorCisgICAgQUxMT1dFRF9UWVBFUyA9ICgncHJvY2Vzc2VzJykKKworICAgIGRlZiB0ZXN0X211bHRpcGxlX2JpbmQoc2VsZik6CisgICAgICAgIGZvciBmYW1pbHkgaW4gc2VsZi5jb25uZWN0aW9uLmZhbWlsaWVzOgorICAgICAgICAgICAgbCA9IHNlbGYuY29ubmVjdGlvbi5MaXN0ZW5lcihmYW1pbHk9ZmFtaWx5KQorICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKGwuY2xvc2UpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBzZWxmLmNvbm5lY3Rpb24uTGlzdGVuZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsLmFkZHJlc3MsIGZhbWlseSkKKwogY2xhc3MgX1Rlc3RMaXN0ZW5lckNsaWVudChCYXNlVGVzdENhc2UpOgogCiAgICAgQUxMT1dFRF9UWVBFUyA9ICgncHJvY2Vzc2VzJywgJ3RocmVhZHMnKQpAQCAtMTczMiw2ICsxODEwLDg1IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbm4ucmVjdigpLCAnaGVsbG8nKQogICAgICAgICAgICAgcC5qb2luKCkKICAgICAgICAgICAgIGwuY2xvc2UoKQorCitjbGFzcyBfVGVzdFBvbGwodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgQUxMT1dFRF9UWVBFUyA9ICgncHJvY2Vzc2VzJywgJ3RocmVhZHMnKQorCisgICAgZGVmIHRlc3RfZW1wdHlfc3RyaW5nKHNlbGYpOgorICAgICAgICBhLCBiID0gc2VsZi5QaXBlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnBvbGwoKSwgRmFsc2UpCisgICAgICAgIGIuc2VuZF9ieXRlcyhiJycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYS5wb2xsKCksIFRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYS5wb2xsKCksIFRydWUpCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgX2NoaWxkX3N0cmluZ3MoY2xzLCBjb25uLCBzdHJpbmdzKToKKyAgICAgICAgZm9yIHMgaW4gc3RyaW5nczoKKyAgICAgICAgICAgIHRpbWUuc2xlZXAoMC4xKQorICAgICAgICAgICAgY29ubi5zZW5kX2J5dGVzKHMpCisgICAgICAgIGNvbm4uY2xvc2UoKQorCisgICAgZGVmIHRlc3Rfc3RyaW5ncyhzZWxmKToKKyAgICAgICAgc3RyaW5ncyA9IChiJ2hlbGxvJywgYicnLCBiJ2EnLCBiJ2InLCBiJycsIGInYnllJywgYicnLCBiJ2xvcCcpCisgICAgICAgIGEsIGIgPSBzZWxmLlBpcGUoKQorICAgICAgICBwID0gc2VsZi5Qcm9jZXNzKHRhcmdldD1zZWxmLl9jaGlsZF9zdHJpbmdzLCBhcmdzPShiLCBzdHJpbmdzKSkKKyAgICAgICAgcC5zdGFydCgpCisKKyAgICAgICAgZm9yIHMgaW4gc3RyaW5nczoKKyAgICAgICAgICAgIGZvciBpIGluIHJhbmdlKDIwMCk6CisgICAgICAgICAgICAgICAgaWYgYS5wb2xsKDAuMDEpOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgeCA9IGEucmVjdl9ieXRlcygpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMsIHgpCisKKyAgICAgICAgcC5qb2luKCkKKworICAgIEBjbGFzc21ldGhvZAorICAgIGRlZiBfY2hpbGRfYm91bmRhcmllcyhjbHMsIHIpOgorICAgICAgICAjIFBvbGxpbmcgbWF5ICJwdWxsIiBhIG1lc3NhZ2UgaW4gdG8gdGhlIGNoaWxkIHByb2Nlc3MsIGJ1dCB3ZQorICAgICAgICAjIGRvbid0IHdhbnQgaXQgdG8gcHVsbCBvbmx5IHBhcnQgb2YgYSBtZXNzYWdlLCBhcyB0aGF0IHdvdWxkCisgICAgICAgICMgY29ycnVwdCB0aGUgcGlwZSBmb3IgYW55IG90aGVyIHByb2Nlc3NlcyB3aGljaCBtaWdodCBsYXRlcgorICAgICAgICAjIHJlYWQgZnJvbSBpdC4KKyAgICAgICAgci5wb2xsKDUpCisKKyAgICBkZWYgdGVzdF9ib3VuZGFyaWVzKHNlbGYpOgorICAgICAgICByLCB3ID0gc2VsZi5QaXBlKEZhbHNlKQorICAgICAgICBwID0gc2VsZi5Qcm9jZXNzKHRhcmdldD1zZWxmLl9jaGlsZF9ib3VuZGFyaWVzLCBhcmdzPShyLCkpCisgICAgICAgIHAuc3RhcnQoKQorICAgICAgICB0aW1lLnNsZWVwKDIpCisgICAgICAgIEwgPSBbYiJmaXJzdCIsIGIic2Vjb25kIl0KKyAgICAgICAgZm9yIG9iaiBpbiBMOgorICAgICAgICAgICAgdy5zZW5kX2J5dGVzKG9iaikKKyAgICAgICAgdy5jbG9zZSgpCisgICAgICAgIHAuam9pbigpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oci5yZWN2X2J5dGVzKCksIEwpCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgX2NoaWxkX2RvbnRfbWVyZ2UoY2xzLCBiKToKKyAgICAgICAgYi5zZW5kX2J5dGVzKGInYScpCisgICAgICAgIGIuc2VuZF9ieXRlcyhiJ2InKQorICAgICAgICBiLnNlbmRfYnl0ZXMoYidjZCcpCisKKyAgICBkZWYgdGVzdF9kb250X21lcmdlKHNlbGYpOgorICAgICAgICBhLCBiID0gc2VsZi5QaXBlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnBvbGwoMC4wKSwgRmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYS5wb2xsKDAuMSksIEZhbHNlKQorCisgICAgICAgIHAgPSBzZWxmLlByb2Nlc3ModGFyZ2V0PXNlbGYuX2NoaWxkX2RvbnRfbWVyZ2UsIGFyZ3M9KGIsKSkKKyAgICAgICAgcC5zdGFydCgpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnJlY3ZfYnl0ZXMoKSwgYidhJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnBvbGwoMS4wKSwgVHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnBvbGwoMS4wKSwgVHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnJlY3ZfYnl0ZXMoKSwgYidiJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnBvbGwoMS4wKSwgVHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnBvbGwoMS4wKSwgVHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnBvbGwoMC4wKSwgVHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLnJlY3ZfYnl0ZXMoKSwgYidjZCcpCisKKyAgICAgICAgcC5qb2luKCkKKwogIwogIyBUZXN0IG9mIHNlbmRpbmcgY29ubmVjdGlvbiBhbmQgc29ja2V0IG9iamVjdHMgYmV0d2VlbiBwcm9jZXNzZXMKICMKQEAgLTIxMTQsOSArMjI3MSwxNSBAQAogCiAgICAgQHVuaXR0ZXN0LnNraXBJZihXSU4zMiwgInNraXBwZWQgb24gV2luZG93cyIpCiAgICAgZGVmIHRlc3RfaW52YWxpZF9oYW5kbGVzKHNlbGYpOgotICAgICAgICBjb25uID0gX211bHRpcHJvY2Vzc2luZy5Db25uZWN0aW9uKDQ0OTc3NjA4KQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJT0Vycm9yLCBjb25uLnBvbGwpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKElPRXJyb3IsIF9tdWx0aXByb2Nlc3NpbmcuQ29ubmVjdGlvbiwgLTEpCisgICAgICAgIGNvbm4gPSBtdWx0aXByb2Nlc3NpbmcuY29ubmVjdGlvbi5Db25uZWN0aW9uKDQ0OTc3NjA4KQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcygoVmFsdWVFcnJvciwgSU9FcnJvciksIGNvbm4ucG9sbCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICMgSGFjayBwcml2YXRlIGF0dHJpYnV0ZSBfaGFuZGxlIHRvIGF2b2lkIHByaW50aW5nIGFuIGVycm9yCisgICAgICAgICAgICAjIGluIGNvbm4uX19kZWxfXworICAgICAgICAgICAgY29ubi5faGFuZGxlID0gTm9uZQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcygoVmFsdWVFcnJvciwgSU9FcnJvciksCisgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpcHJvY2Vzc2luZy5jb25uZWN0aW9uLkNvbm5lY3Rpb24sIC0xKQogCiAjCiAjIEZ1bmN0aW9ucyB1c2VkIHRvIGNyZWF0ZSB0ZXN0IGNhc2VzIGZyb20gdGhlIGJhc2Ugb25lcyBpbiB0aGlzIG1vZHVsZQpAQCAtMjMxOSw4ICsyNDgyLDE2NCBAQAogICAgICAgICBmbGlrZS5mbHVzaCgpCiAgICAgICAgIGFzc2VydCBzaW8uZ2V0dmFsdWUoKSA9PSAnZm9vJwogCisKK2NsYXNzIFRlc3RXYWl0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIEBjbGFzc21ldGhvZAorICAgIGRlZiBfY2hpbGRfdGVzdF93YWl0KGNscywgdywgc2xvdyk6CisgICAgICAgIGZvciBpIGluIHJhbmdlKDEwKToKKyAgICAgICAgICAgIGlmIHNsb3c6CisgICAgICAgICAgICAgICAgdGltZS5zbGVlcChyYW5kb20ucmFuZG9tKCkqMC4xKQorICAgICAgICAgICAgdy5zZW5kKChpLCBvcy5nZXRwaWQoKSkpCisgICAgICAgIHcuY2xvc2UoKQorCisgICAgZGVmIHRlc3Rfd2FpdChzZWxmLCBzbG93PUZhbHNlKToKKyAgICAgICAgZnJvbSBtdWx0aXByb2Nlc3NpbmcuY29ubmVjdGlvbiBpbXBvcnQgd2FpdAorICAgICAgICByZWFkZXJzID0gW10KKyAgICAgICAgcHJvY3MgPSBbXQorICAgICAgICBtZXNzYWdlcyA9IFtdCisKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoNCk6CisgICAgICAgICAgICByLCB3ID0gbXVsdGlwcm9jZXNzaW5nLlBpcGUoZHVwbGV4PUZhbHNlKQorICAgICAgICAgICAgcCA9IG11bHRpcHJvY2Vzc2luZy5Qcm9jZXNzKHRhcmdldD1zZWxmLl9jaGlsZF90ZXN0X3dhaXQsIGFyZ3M9KHcsIHNsb3cpKQorICAgICAgICAgICAgcC5kYWVtb24gPSBUcnVlCisgICAgICAgICAgICBwLnN0YXJ0KCkKKyAgICAgICAgICAgIHcuY2xvc2UoKQorICAgICAgICAgICAgcmVhZGVycy5hcHBlbmQocikKKyAgICAgICAgICAgIHByb2NzLmFwcGVuZChwKQorICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHAuam9pbikKKworICAgICAgICB3aGlsZSByZWFkZXJzOgorICAgICAgICAgICAgZm9yIHIgaW4gd2FpdChyZWFkZXJzKToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIG1zZyA9IHIucmVjdigpCisgICAgICAgICAgICAgICAgZXhjZXB0IEVPRkVycm9yOgorICAgICAgICAgICAgICAgICAgICByZWFkZXJzLnJlbW92ZShyKQorICAgICAgICAgICAgICAgICAgICByLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBtZXNzYWdlcy5hcHBlbmQobXNnKQorCisgICAgICAgIG1lc3NhZ2VzLnNvcnQoKQorICAgICAgICBleHBlY3RlZCA9IHNvcnRlZCgoaSwgcC5waWQpIGZvciBpIGluIHJhbmdlKDEwKSBmb3IgcCBpbiBwcm9jcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXNzYWdlcywgZXhwZWN0ZWQpCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgX2NoaWxkX3Rlc3Rfd2FpdF9zb2NrZXQoY2xzLCBhZGRyZXNzLCBzbG93KToKKyAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoKQorICAgICAgICBzLmNvbm5lY3QoYWRkcmVzcykKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMTApOgorICAgICAgICAgICAgaWYgc2xvdzoKKyAgICAgICAgICAgICAgICB0aW1lLnNsZWVwKHJhbmRvbS5yYW5kb20oKSowLjEpCisgICAgICAgICAgICBzLnNlbmRhbGwoKCclc1xuJyAlIGkpLmVuY29kZSgnYXNjaWknKSkKKyAgICAgICAgcy5jbG9zZSgpCisKKyAgICBkZWYgdGVzdF93YWl0X3NvY2tldChzZWxmLCBzbG93PUZhbHNlKToKKyAgICAgICAgZnJvbSBtdWx0aXByb2Nlc3NpbmcuY29ubmVjdGlvbiBpbXBvcnQgd2FpdAorICAgICAgICBsID0gc29ja2V0LnNvY2tldCgpCisgICAgICAgIGwuYmluZCgoJycsIDApKQorICAgICAgICBsLmxpc3Rlbig0KQorICAgICAgICBhZGRyID0gKCdsb2NhbGhvc3QnLCBsLmdldHNvY2tuYW1lKClbMV0pCisgICAgICAgIHJlYWRlcnMgPSBbXQorICAgICAgICBwcm9jcyA9IFtdCisgICAgICAgIGRpYyA9IHt9CisKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoNCk6CisgICAgICAgICAgICBwID0gbXVsdGlwcm9jZXNzaW5nLlByb2Nlc3ModGFyZ2V0PXNlbGYuX2NoaWxkX3Rlc3Rfd2FpdF9zb2NrZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncz0oYWRkciwgc2xvdykpCisgICAgICAgICAgICBwLmRhZW1vbiA9IFRydWUKKyAgICAgICAgICAgIHAuc3RhcnQoKQorICAgICAgICAgICAgcHJvY3MuYXBwZW5kKHApCisgICAgICAgICAgICBzZWxmLmFkZENsZWFudXAocC5qb2luKQorCisgICAgICAgIGZvciBpIGluIHJhbmdlKDQpOgorICAgICAgICAgICAgciwgXyA9IGwuYWNjZXB0KCkKKyAgICAgICAgICAgIHJlYWRlcnMuYXBwZW5kKHIpCisgICAgICAgICAgICBkaWNbcl0gPSBbXQorICAgICAgICBsLmNsb3NlKCkKKworICAgICAgICB3aGlsZSByZWFkZXJzOgorICAgICAgICAgICAgZm9yIHIgaW4gd2FpdChyZWFkZXJzKToKKyAgICAgICAgICAgICAgICBtc2cgPSByLnJlY3YoMzIpCisgICAgICAgICAgICAgICAgaWYgbm90IG1zZzoKKyAgICAgICAgICAgICAgICAgICAgcmVhZGVycy5yZW1vdmUocikKKyAgICAgICAgICAgICAgICAgICAgci5jbG9zZSgpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgZGljW3JdLmFwcGVuZChtc2cpCisKKyAgICAgICAgZXhwZWN0ZWQgPSAnJy5qb2luKCclc1xuJyAlIGkgZm9yIGkgaW4gcmFuZ2UoMTApKS5lbmNvZGUoJ2FzY2lpJykKKyAgICAgICAgZm9yIHYgaW4gZGljLnZhbHVlcygpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiJycuam9pbih2KSwgZXhwZWN0ZWQpCisKKyAgICBkZWYgdGVzdF93YWl0X3Nsb3coc2VsZik6CisgICAgICAgIHNlbGYudGVzdF93YWl0KFRydWUpCisKKyAgICBkZWYgdGVzdF93YWl0X3NvY2tldF9zbG93KHNlbGYpOgorICAgICAgICBzZWxmLnRlc3Rfd2FpdChUcnVlKQorCisgICAgZGVmIHRlc3Rfd2FpdF90aW1lb3V0KHNlbGYpOgorICAgICAgICBmcm9tIG11bHRpcHJvY2Vzc2luZy5jb25uZWN0aW9uIGltcG9ydCB3YWl0CisKKyAgICAgICAgZXhwZWN0ZWQgPSAxCisgICAgICAgIGEsIGIgPSBtdWx0aXByb2Nlc3NpbmcuUGlwZSgpCisKKyAgICAgICAgc3RhcnQgPSB0aW1lLnRpbWUoKQorICAgICAgICByZXMgPSB3YWl0KFthLCBiXSwgMSkKKyAgICAgICAgZGVsdGEgPSB0aW1lLnRpbWUoKSAtIHN0YXJ0CisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXMsIFtdKQorICAgICAgICBzZWxmLmFzc2VydExlc3MoZGVsdGEsIGV4cGVjdGVkICsgMC4yKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIoZGVsdGEsIGV4cGVjdGVkIC0gMC4yKQorCisgICAgICAgIGIuc2VuZChOb25lKQorCisgICAgICAgIHN0YXJ0ID0gdGltZS50aW1lKCkKKyAgICAgICAgcmVzID0gd2FpdChbYSwgYl0sIDEpCisgICAgICAgIGRlbHRhID0gdGltZS50aW1lKCkgLSBzdGFydAorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzLCBbYV0pCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzcyhkZWx0YSwgMC4yKQorCisgICAgZGVmIHRlc3Rfd2FpdF9pbnRlZ2VyKHNlbGYpOgorICAgICAgICBmcm9tIG11bHRpcHJvY2Vzc2luZy5jb25uZWN0aW9uIGltcG9ydCB3YWl0CisKKyAgICAgICAgZXhwZWN0ZWQgPSA1CisgICAgICAgIGEsIGIgPSBtdWx0aXByb2Nlc3NpbmcuUGlwZSgpCisgICAgICAgIHAgPSBtdWx0aXByb2Nlc3NpbmcuUHJvY2Vzcyh0YXJnZXQ9dGltZS5zbGVlcCwgYXJncz0oZXhwZWN0ZWQsKSkKKworICAgICAgICBwLnN0YXJ0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHAuc2VudGluZWwsIGludCkKKworICAgICAgICBzdGFydCA9IHRpbWUudGltZSgpCisgICAgICAgIHJlcyA9IHdhaXQoW2EsIHAuc2VudGluZWwsIGJdLCBleHBlY3RlZCArIDIwKQorICAgICAgICBkZWx0YSA9IHRpbWUudGltZSgpIC0gc3RhcnQKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcywgW3Auc2VudGluZWxdKQorICAgICAgICBzZWxmLmFzc2VydExlc3MoZGVsdGEsIGV4cGVjdGVkICsgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGRlbHRhLCBleHBlY3RlZCAtIDEpCisKKyAgICAgICAgYS5zZW5kKE5vbmUpCisKKyAgICAgICAgc3RhcnQgPSB0aW1lLnRpbWUoKQorICAgICAgICByZXMgPSB3YWl0KFthLCBwLnNlbnRpbmVsLCBiXSwgMjApCisgICAgICAgIGRlbHRhID0gdGltZS50aW1lKCkgLSBzdGFydAorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzLCBbcC5zZW50aW5lbCwgYl0pCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzcyhkZWx0YSwgMC4yKQorCisgICAgICAgIGIuc2VuZChOb25lKQorCisgICAgICAgIHN0YXJ0ID0gdGltZS50aW1lKCkKKyAgICAgICAgcmVzID0gd2FpdChbYSwgcC5zZW50aW5lbCwgYl0sIDIwKQorICAgICAgICBkZWx0YSA9IHRpbWUudGltZSgpIC0gc3RhcnQKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcywgW2EsIHAuc2VudGluZWwsIGJdKQorICAgICAgICBzZWxmLmFzc2VydExlc3MoZGVsdGEsIDAuMikKKworICAgICAgICBwLmpvaW4oKQorCisKIHRlc3RjYXNlc19vdGhlciA9IFtPdGhlclRlc3QsIFRlc3RJbnZhbGlkSGFuZGxlLCBUZXN0SW5pdGlhbGl6ZXJzLAotICAgICAgICAgICAgICAgICAgIFRlc3RTdGRpbkJhZGZpbGVkZXNjcmlwdG9yXQorICAgICAgICAgICAgICAgICAgIFRlc3RTdGRpbkJhZGZpbGVkZXNjcmlwdG9yLCBUZXN0V2FpdF0KIAogIwogIwpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tdXRhbnRzLnB5IGIvTGliL3Rlc3QvdGVzdF9tdXRhbnRzLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiNDNmYTQ3Li4wMDAwMDAwCi0tLSBhL0xpYi90ZXN0L3Rlc3RfbXV0YW50cy5weQorKysgL2Rldi9udWxsCkBAIC0xLDI5MSArMCwwIEBACi1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdmVyYm9zZSwgVEVTVEZOCi1pbXBvcnQgcmFuZG9tCi1pbXBvcnQgb3MKLQotIyBGcm9tIFNGIGJ1ZyAjNDIyMTIxOiAgSW5zZWN1cml0aWVzIGluIGRpY3QgY29tcGFyaXNvbi4KLQotIyBTYWZldHkgb2YgY29kZSBkb2luZyBjb21wYXJpc29ucyBoYXMgYmVlbiBhbiBoaXN0b3JpY2FsIFB5dGhvbiB3ZWFrIHNwb3QuCi0jIFRoZSBwcm9ibGVtIGlzIHRoYXQgY29tcGFyaXNvbiBvZiBzdHJ1Y3R1cmVzIHdyaXR0ZW4gaW4gQyAqbmF0dXJhbGx5KgotIyB3YW50cyB0byBob2xkIG9uIHRvIHRoaW5ncyBsaWtlIHRoZSBzaXplIG9mIHRoZSBjb250YWluZXIsIG9yICJ0aGUKLSMgYmlnZ2VzdCIgY29udGFpbmVlIHNvIGZhciwgYWNyb3NzIGEgdHJhdmVyc2FsIG9mIHRoZSBjb250YWluZXI7IGJ1dAotIyBjb2RlIHRvIGRvIGNvbnRhaW5lZSBjb21wYXJpc29ucyBjYW4gY2FsbCBiYWNrIGludG8gUHl0aG9uIGFuZCBtdXRhdGUKLSMgdGhlIGNvbnRhaW5lciBpbiBhcmJpdHJhcnkgd2F5cyB3aGlsZSB0aGUgQyBsb29wIGlzIGluIG1pZHN0cmVhbS4gIElmIHRoZQotIyBDIGNvZGUgaXNuJ3QgZXh0cmVtZWx5IHBhcmFub2lkIGFib3V0IGRpZ2dpbmcgdGhpbmdzIG91dCBvZiBtZW1vcnkgb24KLSMgZWFjaCB0cmlwLCBhbmQgYXJ0aWZpY2lhbGx5IGJvb3N0aW5nIHJlZmNvdW50cyBmb3IgdGhlIGR1cmF0aW9uLCBhbnl0aGluZwotIyBmcm9tIGluZmluaXRlIGxvb3BzIHRvIE9TIGNyYXNoZXMgY2FuIHJlc3VsdCAoeWVzLCBJIHVzZSBXaW5kb3dzIDx3aW5rPikuCi0jCi0jIFRoZSBvdGhlciBwcm9ibGVtIGlzIHRoYXQgY29kZSBkZXNpZ25lZCB0byBwcm92b2tlIGEgd2Vha25lc3MgaXMgdXN1YWxseQotIyB3aGl0ZS1ib3ggY29kZSwgYW5kIHNvIGNhdGNoZXMgb25seSB0aGUgcGFydGljdWxhciB2dWxuZXJhYmlsaXRpZXMgdGhlCi0jIGF1dGhvciBrbmV3IHRvIHByb3RlY3QgYWdhaW5zdC4gIEZvciBleGFtcGxlLCBQeXRob24ncyBsaXN0LnNvcnQoKSBjb2RlCi0jIHdlbnQgdGhydSBtYW55IGl0ZXJhdGlvbnMgYXMgb25lICJuZXciIHZ1bG5lcmFiaWxpdHkgYWZ0ZXIgYW5vdGhlciB3YXMKLSMgZGlzY292ZXJlZC4KLSMKLSMgU28gdGhlIGRpY3QgY29tcGFyaXNvbiB0ZXN0IGhlcmUgdXNlcyBhIGJsYWNrLWJveCBhcHByb2FjaCBpbnN0ZWFkLAotIyBnZW5lcmF0aW5nIGRpY3RzIG9mIHZhcmlvdXMgc2l6ZXMgYXQgcmFuZG9tLCBhbmQgcGVyZm9ybWluZyByYW5kb20KLSMgbXV0YXRpb25zIG9uIHRoZW0gYXQgcmFuZG9tIHRpbWVzLiAgVGhpcyBwcm92ZWQgdmVyeSBlZmZlY3RpdmUsCi0jIHRyaWdnZXJpbmcgYXQgbGVhc3Qgc2l4IGRpc3RpbmN0IGZhaWx1cmUgbW9kZXMgdGhlIGZpcnN0IDIwIHRpbWVzIEkKLSMgcmFuIGl0LiAgSW5kZWVkLCBhdCB0aGUgc3RhcnQsIHRoZSBkcml2ZXIgbmV2ZXIgZ290IGJleW9uZCA2IGl0ZXJhdGlvbnMKLSMgYmVmb3JlIHRoZSB0ZXN0IGRpZWQuCi0KLSMgVGhlIGRpY3RzIGFyZSBnbG9iYWwgdG8gbWFrZSBpdCBlYXN5IHRvIG11dGF0ZSB0aGFtIGZyb20gd2l0aGluIGZ1bmN0aW9ucy4KLWRpY3QxID0ge30KLWRpY3QyID0ge30KLQotIyBUaGUgY3VycmVudCBzZXQgb2Yga2V5cyBpbiBkaWN0MSBhbmQgZGljdDIuICBUaGVzZSBhcmUgbWF0ZXJpYWxpemVkIGFzCi0jIGxpc3RzIHRvIG1ha2UgaXQgZWFzeSB0byBwaWNrIGEgZGljdCBrZXkgYXQgcmFuZG9tLgotZGljdDFrZXlzID0gW10KLWRpY3Qya2V5cyA9IFtdCi0KLSMgR2xvYmFsIGZsYWcgdGVsbGluZyBtYXliZV9tdXRhdGUoKSB3aGV0aGVyIHRvICpjb25zaWRlciogbXV0YXRpbmcuCi1tdXRhdGUgPSAwCi0KLSMgSWYgZ2xvYmFsIG11dGF0ZSBpcyB0cnVlLCBjb25zaWRlciBtdXRhdGluZyBhIGRpY3QuICBNYXkgb3IgbWF5IG5vdAotIyBtdXRhdGUgYSBkaWN0IGV2ZW4gaWYgbXV0YXRlIGlzIHRydWUuICBJZiBpdCBkb2VzIGRlY2lkZSB0byBtdXRhdGUgYQotIyBkaWN0LCBpdCBwaWNrcyBvbmUgb2Yge2RpY3QxLCBkaWN0Mn0gYXQgcmFuZG9tLCBhbmQgZGVsZXRlcyBhIHJhbmRvbQotIyBlbnRyeSBmcm9tIGl0OyBvciwgbW9yZSByYXJlbHksIGFkZHMgYSByYW5kb20gZWxlbWVudC4KLQotZGVmIG1heWJlX211dGF0ZSgpOgotICAgIGdsb2JhbCBtdXRhdGUKLSAgICBpZiBub3QgbXV0YXRlOgotICAgICAgICByZXR1cm4KLSAgICBpZiByYW5kb20ucmFuZG9tKCkgPCAwLjU6Ci0gICAgICAgIHJldHVybgotCi0gICAgaWYgcmFuZG9tLnJhbmRvbSgpIDwgMC41OgotICAgICAgICB0YXJnZXQsIGtleXMgPSBkaWN0MSwgZGljdDFrZXlzCi0gICAgZWxzZToKLSAgICAgICAgdGFyZ2V0LCBrZXlzID0gZGljdDIsIGRpY3Qya2V5cwotCi0gICAgaWYgcmFuZG9tLnJhbmRvbSgpIDwgMC4yOgotICAgICAgICAjIEluc2VydCBhIG5ldyBrZXkuCi0gICAgICAgIG11dGF0ZSA9IDAgICAjIGRpc2FibGUgbXV0YXRpb24gdW50aWwga2V5IGluc2VydGVkCi0gICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICBuZXdrZXkgPSBIb3JyaWQocmFuZG9tLnJhbmRyYW5nZSgxMDApKQotICAgICAgICAgICAgaWYgbmV3a2V5IG5vdCBpbiB0YXJnZXQ6Ci0gICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgdGFyZ2V0W25ld2tleV0gPSBIb3JyaWQocmFuZG9tLnJhbmRyYW5nZSgxMDApKQotICAgICAgICBrZXlzLmFwcGVuZChuZXdrZXkpCi0gICAgICAgIG11dGF0ZSA9IDEKLQotICAgIGVsaWYga2V5czoKLSAgICAgICAgIyBEZWxldGUgYSBrZXkgYXQgcmFuZG9tLgotICAgICAgICBtdXRhdGUgPSAwICAgIyBkaXNhYmxlIG11dGF0aW9uIHVudGlsIGtleSBkZWxldGVkCi0gICAgICAgIGkgPSByYW5kb20ucmFuZHJhbmdlKGxlbihrZXlzKSkKLSAgICAgICAga2V5ID0ga2V5c1tpXQotICAgICAgICBkZWwgdGFyZ2V0W2tleV0KLSAgICAgICAgZGVsIGtleXNbaV0KLSAgICAgICAgbXV0YXRlID0gMQotCi0jIEEgaG9ycmlkIGNsYXNzIHRoYXQgdHJpZ2dlcnMgcmFuZG9tIG11dGF0aW9ucyBvZiBkaWN0MSBhbmQgZGljdDIgd2hlbgotIyBpbnN0YW5jZXMgYXJlIGNvbXBhcmVkLgotCi1jbGFzcyBIb3JyaWQ6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYsIGkpOgotICAgICAgICAjIENvbXBhcmlzb24gb3V0Y29tZXMgYXJlIGRldGVybWluZWQgYnkgdGhlIHZhbHVlIG9mIGkuCi0gICAgICAgIHNlbGYuaSA9IGkKLQotICAgICAgICAjIEFuIGFydGlmaWNpYWwgaGFzaGNvZGUgaXMgc2VsZWN0ZWQgYXQgcmFuZG9tIHNvIHRoYXQgd2UgZG9uJ3QKLSAgICAgICAgIyBoYXZlIGFueSBzeXN0ZW1hdGljIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGNvbXBhcmlzb24gb3V0Y29tZXMKLSAgICAgICAgIyAoYmFzZWQgb24gc2VsZi5pIGFuZCBvdGhlci5pKSBhbmQgcmVsYXRpdmUgcG9zaXRpb24gd2l0aGluIHRoZQotICAgICAgICAjIGhhc2ggdmVjdG9yIChiYXNlZCBvbiBoYXNoY29kZSkuCi0gICAgICAgICMgWFhYIFRoaXMgaXMgbm8gbG9uZ2VyIGVmZmVjdGl2ZS4KLSAgICAgICAgIyNzZWxmLmhhc2hjb2RlID0gcmFuZG9tLnJhbmRyYW5nZSgxMDAwMDAwMDAwKQotCi0gICAgZGVmIF9faGFzaF9fKHNlbGYpOgotICAgICAgICByZXR1cm4gNDIKLSAgICAgICAgcmV0dXJuIHNlbGYuaGFzaGNvZGUKLQotICAgIGRlZiBfX2VxX18oc2VsZiwgb3RoZXIpOgotICAgICAgICBtYXliZV9tdXRhdGUoKSAgICMgVGhlIHBvaW50IG9mIHRoZSB0ZXN0LgotICAgICAgICByZXR1cm4gc2VsZi5pID09IG90aGVyLmkKLQotICAgIGRlZiBfX25lX18oc2VsZiwgb3RoZXIpOgotICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoIkkgZGlkbid0IGV4cGVjdCBzb21lIGtpbmQgb2YgU3BhbmlzaCBpbnF1aXNpdGlvbiEiKQotCi0gICAgX19sdF9fID0gX19sZV9fID0gX19ndF9fID0gX19nZV9fID0gX19uZV9fCi0KLSAgICBkZWYgX19yZXByX18oc2VsZik6Ci0gICAgICAgIHJldHVybiAiSG9ycmlkKCVkKSIgJSBzZWxmLmkKLQotIyBGaWxsIGRpY3QgZCB3aXRoIG51bWVudHJpZXMgKEhvcnJpZChpKSwgSG9ycmlkKGopKSBrZXktdmFsdWUgcGFpcnMsCi0jIHdoZXJlIGkgYW5kIGogYXJlIHNlbGVjdGVkIGF0IHJhbmRvbSBmcm9tIHRoZSBjYW5kaWRhdGVzIGxpc3QuCi0jIFJldHVybiBkLmtleXMoKSBhZnRlciBmaWxsaW5nLgotCi1kZWYgZmlsbF9kaWN0KGQsIGNhbmRpZGF0ZXMsIG51bWVudHJpZXMpOgotICAgIGQuY2xlYXIoKQotICAgIGZvciBpIGluIHJhbmdlKG51bWVudHJpZXMpOgotICAgICAgICBkW0hvcnJpZChyYW5kb20uY2hvaWNlKGNhbmRpZGF0ZXMpKV0gPSBcCi0gICAgICAgICAgICBIb3JyaWQocmFuZG9tLmNob2ljZShjYW5kaWRhdGVzKSkKLSAgICByZXR1cm4gbGlzdChkLmtleXMoKSkKLQotIyBUZXN0IG9uZSBwYWlyIG9mIHJhbmRvbWx5IGdlbmVyYXRlZCBkaWN0cywgZWFjaCB3aXRoIG4gZW50cmllcy4KLSMgTm90ZSB0aGF0IGRpY3QgY29tcGFyaXNvbiBpcyB0cml2aWFsIGlmIHRoZXkgZG9uJ3QgaGF2ZSB0aGUgc2FtZSBudW1iZXIKLSMgb2YgZW50aXJlcyAodGhlbiB0aGUgInNob3J0ZXIiIGRpY3QgaXMgaW5zdGFudGx5IGNvbnNpZGVyZWQgdG8gYmUgdGhlCi0jIHNtYWxsZXIgb25lLCB3aXRob3V0IGV2ZW4gbG9va2luZyBhdCB0aGUgZW50cmllcykuCi0KLWRlZiB0ZXN0X29uZShuKToKLSAgICBnbG9iYWwgbXV0YXRlLCBkaWN0MSwgZGljdDIsIGRpY3Qxa2V5cywgZGljdDJrZXlzCi0KLSAgICAjIEZpbGwgdGhlIGRpY3RzIHdpdGhvdXQgbXV0YXRpbmcgdGhlbS4KLSAgICBtdXRhdGUgPSAwCi0gICAgZGljdDFrZXlzID0gZmlsbF9kaWN0KGRpY3QxLCByYW5nZShuKSwgbikKLSAgICBkaWN0MmtleXMgPSBmaWxsX2RpY3QoZGljdDIsIHJhbmdlKG4pLCBuKQotCi0gICAgIyBFbmFibGUgbXV0YXRpb24sIHRoZW4gY29tcGFyZSB0aGUgZGljdHMgc28gbG9uZyBhcyB0aGV5IGhhdmUgdGhlCi0gICAgIyBzYW1lIHNpemUuCi0gICAgbXV0YXRlID0gMQotICAgIGlmIHZlcmJvc2U6Ci0gICAgICAgIHByaW50KCJ0cnlpbmcgdy8gbGVuZ3RocyIsIGxlbihkaWN0MSksIGxlbihkaWN0MiksIGVuZD0nICcpCi0gICAgd2hpbGUgZGljdDEgYW5kIGxlbihkaWN0MSkgPT0gbGVuKGRpY3QyKToKLSAgICAgICAgaWYgdmVyYm9zZToKLSAgICAgICAgICAgIHByaW50KCIuIiwgZW5kPScgJykKLSAgICAgICAgYyA9IGRpY3QxID09IGRpY3QyCi0gICAgaWYgdmVyYm9zZToKLSAgICAgICAgcHJpbnQoKQotCi0jIFJ1biB0ZXN0X29uZSBuIHRpbWVzLiAgQXQgdGhlIHN0YXJ0IChiZWZvcmUgdGhlIGJ1Z3Mgd2VyZSBmaXhlZCksIDIwCi0jIGNvbnNlY3V0aXZlIHJ1bnMgb2YgdGhpcyB0ZXN0IGVhY2ggYmxldyB1cCBvbiBvciBiZWZvcmUgdGhlIHNpeHRoIHRpbWUKLSMgdGVzdF9vbmUgd2FzIHJ1bi4gIFNvIG4gZG9lc24ndCBoYXZlIHRvIGJlIGxhcmdlIHRvIGdldCBhbiBpbnRlcmVzdGluZwotIyB0ZXN0LgotIyBPVE9ILCBjYWxsaW5nIHdpdGggbGFyZ2UgbiBpcyBhbHNvIGludGVyZXN0aW5nLCB0byBlbnN1cmUgdGhhdCB0aGUgZml4ZWQKLSMgY29kZSBkb2Vzbid0IGhvbGQgb24gdG8gcmVmY291bnRzICp0b28qIGxvbmcgKGluIHdoaWNoIGNhc2UgbWVtb3J5IHdvdWxkCi0jIGxlYWspLgotCi1kZWYgdGVzdChuKToKLSAgICBmb3IgaSBpbiByYW5nZShuKToKLSAgICAgICAgdGVzdF9vbmUocmFuZG9tLnJhbmRyYW5nZSgxLCAxMDApKQotCi0jIFNlZSBsYXN0IGNvbW1lbnQgYmxvY2sgZm9yIGNsdWVzIGFib3V0IGdvb2QgdmFsdWVzIGZvciBuLgotdGVzdCgxMDApCi0KLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIEFub3RoZXIgc2VnZmF1bHQgYnVnLCBkaXN0aWxsZWQgYnkgTWljaGFlbCBIdWRzb24gZnJvbSBhIGMubC5weSBwb3N0LgotCi1jbGFzcyBDaGlsZDoKLSAgICBkZWYgX19pbml0X18oc2VsZiwgcGFyZW50KToKLSAgICAgICAgc2VsZi5fX2RpY3RfX1sncGFyZW50J10gPSBwYXJlbnQKLSAgICBkZWYgX19nZXRhdHRyX18oc2VsZiwgYXR0cik6Ci0gICAgICAgIHNlbGYucGFyZW50LmEgPSAxCi0gICAgICAgIHNlbGYucGFyZW50LmIgPSAxCi0gICAgICAgIHNlbGYucGFyZW50LmMgPSAxCi0gICAgICAgIHNlbGYucGFyZW50LmQgPSAxCi0gICAgICAgIHNlbGYucGFyZW50LmUgPSAxCi0gICAgICAgIHNlbGYucGFyZW50LmYgPSAxCi0gICAgICAgIHNlbGYucGFyZW50LmcgPSAxCi0gICAgICAgIHNlbGYucGFyZW50LmggPSAxCi0gICAgICAgIHNlbGYucGFyZW50LmkgPSAxCi0gICAgICAgIHJldHVybiBnZXRhdHRyKHNlbGYucGFyZW50LCBhdHRyKQotCi1jbGFzcyBQYXJlbnQ6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYpOgotICAgICAgICBzZWxmLmEgPSBDaGlsZChzZWxmKQotCi0jIEhhcmQgdG8gc2F5IHdoYXQgdGhpcyB3aWxsIHByaW50ISAgTWF5IHZhcnkgZnJvbSB0aW1lIHRvIHRpbWUuICBCdXQKLSMgd2UncmUgc3BlY2lmaWNhbGx5IHRyeWluZyB0byB0ZXN0IHRoZSB0cF9wcmludCBzbG90IGhlcmUsIGFuZCB0aGlzIGlzCi0jIHRoZSBjbGVhcmVzdCB3YXkgdG8gZG8gaXQuICBXZSBwcmludCB0aGUgcmVzdWx0IHRvIGEgdGVtcCBmaWxlIHNvIHRoYXQKLSMgdGhlIGV4cGVjdGVkLW91dHB1dCBmaWxlIGRvZXNuJ3QgbmVlZCB0byBjaGFuZ2UuCi0KLWYgPSBvcGVuKFRFU1RGTiwgInciKQotcHJpbnQoUGFyZW50KCkuX19kaWN0X18sIGZpbGU9ZikKLWYuY2xvc2UoKQotb3MudW5saW5rKFRFU1RGTikKLQotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMgQW5kIGFub3RoZXIgY29yZS1kdW1wZXIgZnJvbSBNaWNoYWVsIEh1ZHNvbi4KLQotZGljdCA9IHt9Ci0KLSMgRm9yY2UgZGljdCB0byBtYWxsb2MgaXRzIHRhYmxlLgotZm9yIGkgaW4gcmFuZ2UoMSwgMTApOgotICAgIGRpY3RbaV0gPSBpCi0KLWYgPSBvcGVuKFRFU1RGTiwgInciKQotCi1jbGFzcyBNYWNoaWF2ZWxsaToKLSAgICBkZWYgX19yZXByX18oc2VsZik6Ci0gICAgICAgIGRpY3QuY2xlYXIoKQotCi0gICAgICAgICMgTWljaGFlbCBzZXo6ICAiZG9lc24ndCBjcmFzaCB3aXRob3V0IHRoaXMuICBkb24ndCBrbm93IHdoeS4iCi0gICAgICAgICMgVGltIHNlejogICJsdWNrIG9mIHRoZSBkcmF3OyBjcmFzaGVzIHdpdGggb3Igd2l0aG91dCBmb3IgbWUuIgotICAgICAgICBwcmludChmaWxlPWYpCi0KLSAgICAgICAgcmV0dXJuIHJlcHIoIm1hY2hpYXZlbGxpIikKLQotICAgIGRlZiBfX2hhc2hfXyhzZWxmKToKLSAgICAgICAgcmV0dXJuIDAKLQotZGljdFtNYWNoaWF2ZWxsaSgpXSA9IE1hY2hpYXZlbGxpKCkKLQotcHJpbnQoc3RyKGRpY3QpLCBmaWxlPWYpCi1mLmNsb3NlKCkKLW9zLnVubGluayhURVNURk4pCi1kZWwgZiwgZGljdAotCi0KLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIEFuZCBhbm90aGVyIGNvcmUtZHVtcGVyIGZyb20gTWljaGFlbCBIdWRzb24uCi0KLWRpY3QgPSB7fQotCi0jIGxldCdzIGZvcmNlIGRpY3QgdG8gbWFsbG9jIGl0cyB0YWJsZQotZm9yIGkgaW4gcmFuZ2UoMSwgMTApOgotICAgIGRpY3RbaV0gPSBpCi0KLWNsYXNzIE1hY2hpYXZlbGxpMjoKLSAgICBkZWYgX19lcV9fKHNlbGYsIG90aGVyKToKLSAgICAgICAgZGljdC5jbGVhcigpCi0gICAgICAgIHJldHVybiAxCi0KLSAgICBkZWYgX19oYXNoX18oc2VsZik6Ci0gICAgICAgIHJldHVybiAwCi0KLWRpY3RbTWFjaGlhdmVsbGkyKCldID0gTWFjaGlhdmVsbGkyKCkKLQotdHJ5OgotICAgIGRpY3RbTWFjaGlhdmVsbGkyKCldCi1leGNlcHQgS2V5RXJyb3I6Ci0gICAgcGFzcwotCi1kZWwgZGljdAotCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyBBbmQgYW5vdGhlciBjb3JlLWR1bXBlciBmcm9tIE1pY2hhZWwgSHVkc29uLgotCi1kaWN0ID0ge30KLQotIyBsZXQncyBmb3JjZSBkaWN0IHRvIG1hbGxvYyBpdHMgdGFibGUKLWZvciBpIGluIHJhbmdlKDEsIDEwKToKLSAgICBkaWN0W2ldID0gaQotCi1jbGFzcyBNYWNoaWF2ZWxsaTM6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYsIGlkKToKLSAgICAgICAgc2VsZi5pZCA9IGlkCi0KLSAgICBkZWYgX19lcV9fKHNlbGYsIG90aGVyKToKLSAgICAgICAgaWYgc2VsZi5pZCA9PSBvdGhlci5pZDoKLSAgICAgICAgICAgIGRpY3QuY2xlYXIoKQotICAgICAgICAgICAgcmV0dXJuIDEKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJldHVybiAwCi0KLSAgICBkZWYgX19yZXByX18oc2VsZik6Ci0gICAgICAgIHJldHVybiAiJXMoJXMpIiUoc2VsZi5fX2NsYXNzX18uX19uYW1lX18sIHNlbGYuaWQpCi0KLSAgICBkZWYgX19oYXNoX18oc2VsZik6Ci0gICAgICAgIHJldHVybiAwCi0KLWRpY3RbTWFjaGlhdmVsbGkzKDEpXSA9IE1hY2hpYXZlbGxpMygwKQotZGljdFtNYWNoaWF2ZWxsaTMoMildID0gTWFjaGlhdmVsbGkzKDApCi0KLWYgPSBvcGVuKFRFU1RGTiwgInciKQotdHJ5OgotICAgIHRyeToKLSAgICAgICAgcHJpbnQoZGljdFtNYWNoaWF2ZWxsaTMoMildLCBmaWxlPWYpCi0gICAgZXhjZXB0IEtleUVycm9yOgotICAgICAgICBwYXNzCi1maW5hbGx5OgotICAgIGYuY2xvc2UoKQotICAgIG9zLnVubGluayhURVNURk4pCi0KLWRlbCBkaWN0Ci1kZWwgZGljdDEsIGRpY3QyLCBkaWN0MWtleXMsIGRpY3Qya2V5cwpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9ubnRwbGliLnB5IGIvTGliL3Rlc3QvdGVzdF9ubnRwbGliLnB5CmluZGV4IGNjNDkwZjEuLmM1MTQ2YzEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfbm50cGxpYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X25udHBsaWIucHkKQEAgLTEsNCArMSw1IEBACiBpbXBvcnQgaW8KK2ltcG9ydCBzb2NrZXQKIGltcG9ydCBkYXRldGltZQogaW1wb3J0IHRleHR3cmFwCiBpbXBvcnQgdW5pdHRlc3QKQEAgLTI1MSw2ICsyNTIsMjYgQEAKICAgICAgICAgICAgICMgdmFsdWUKICAgICAgICAgICAgIHNldGF0dHIoY2xzLCBuYW1lLCB3cmFwX21ldGgobWV0aCkpCiAKKyAgICBkZWYgdGVzdF93aXRoX3N0YXRlbWVudChzZWxmKToKKyAgICAgICAgZGVmIGlzX2Nvbm5lY3RlZCgpOgorICAgICAgICAgICAgaWYgbm90IGhhc2F0dHIoc2VydmVyLCAnZmlsZScpOgorICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlcnZlci5oZWxwKCkKKyAgICAgICAgICAgIGV4Y2VwdCAoc29ja2V0LmVycm9yLCBFT0ZFcnJvcik6CisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgICAgIHdpdGggc2VsZi5OTlRQX0NMQVNTKHNlbGYuTk5UUF9IT1NULCB0aW1lb3V0PVRJTUVPVVQsIHVzZW5ldHJjPUZhbHNlKSBhcyBzZXJ2ZXI6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNfY29ubmVjdGVkKCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VydmVyLmhlbHAoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpc19jb25uZWN0ZWQoKSkKKworICAgICAgICB3aXRoIHNlbGYuTk5UUF9DTEFTUyhzZWxmLk5OVFBfSE9TVCwgdGltZW91dD1USU1FT1VULCB1c2VuZXRyYz1GYWxzZSkgYXMgc2VydmVyOgorICAgICAgICAgICAgc2VydmVyLnF1aXQoKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX2Nvbm5lY3RlZCgpKQorCisKIE5ldHdvcmtlZE5OVFBUZXN0c01peGluLndyYXBfbWV0aG9kcygpCiAKIApAQCAtODg4LDcgKzkwOSw3IEBACiAKICAgICBkZWYgX2NoZWNrX2FydGljbGVfYm9keShzZWxmLCBsaW5lcyk6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGxpbmVzKSwgNCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaW5lc1stMV0uZGVjb2RlKCd1dGY4JyksICItLSBTaWduZWQgYnkgQW5kcsOpLiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGluZXNbLTFdLmRlY29kZSgndXRmLTgnKSwgIi0tIFNpZ25lZCBieSBBbmRyw6kuIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaW5lc1stMl0sIGIiIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaW5lc1stM10sIGIiLkhlcmUgaXMgYSBkb3Qtc3RhcnRpbmcgbGluZS4iKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpbmVzWy00XSwgYiJUaGlzIGlzIGp1c3QgYSB0ZXN0IGFydGljbGUuIikKQEAgLTExMjcsMTIgKzExNDgsMTIgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLCBzdWNjZXNzX3Jlc3ApCiAgICAgICAgICMgV2l0aCBhbiBpdGVyYWJsZSBvZiB0ZXJtaW5hdGVkIGxpbmVzCiAgICAgICAgIGRlZiBpdGVybGluZXMoYik6Ci0gICAgICAgICAgICByZXR1cm4gaXRlcihiLnNwbGl0bGluZXMoVHJ1ZSkpCisgICAgICAgICAgICByZXR1cm4gaXRlcihiLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkpCiAgICAgICAgIHJlc3AgPSBzZWxmLl9jaGVja19wb3N0X2loYXZlX3N1YihmdW5jLCAqYXJncywgZmlsZV9mYWN0b3J5PWl0ZXJsaW5lcykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLCBzdWNjZXNzX3Jlc3ApCiAgICAgICAgICMgV2l0aCBhbiBpdGVyYWJsZSBvZiBub24tdGVybWluYXRlZCBsaW5lcwogICAgICAgICBkZWYgaXRlcmxpbmVzKGIpOgotICAgICAgICAgICAgcmV0dXJuIGl0ZXIoYi5zcGxpdGxpbmVzKEZhbHNlKSkKKyAgICAgICAgICAgIHJldHVybiBpdGVyKGIuc3BsaXRsaW5lcyhrZWVwZW5kcz1GYWxzZSkpCiAgICAgICAgIHJlc3AgPSBzZWxmLl9jaGVja19wb3N0X2loYXZlX3N1YihmdW5jLCAqYXJncywgZmlsZV9mYWN0b3J5PWl0ZXJsaW5lcykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLCBzdWNjZXNzX3Jlc3ApCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbnRwYXRoLnB5IGIvTGliL3Rlc3QvdGVzdF9udHBhdGgucHkKaW5kZXggNjQ2NDk1MC4uMmM5ZGFiOSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9udHBhdGgucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9udHBhdGgucHkKQEAgLTEsMTAgKzEsMTEgQEAKIGltcG9ydCBudHBhdGgKIGltcG9ydCBvcwogaW1wb3J0IHN5cworaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgd2FybmluZ3MKIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBUZXN0RmFpbGVkCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQsIHRlc3RfZ2VuZXJpY3BhdGgKIGZyb20gdGVtcGZpbGUgaW1wb3J0IFRlbXBvcmFyeUZpbGUKLWltcG9ydCB1bml0dGVzdAogCiAKIGRlZiB0ZXN0ZXIoZm4sIHdhbnRSZXN1bHQpOgpAQCAtMjEsNyArMjIsOSBAQAogICAgIGZuID0gZm4ucmVwbGFjZSgnWyInLCAnW2IiJykKICAgICBmbiA9IGZuLnJlcGxhY2UoIiwgJyIsICIsIGInIikKICAgICBmbiA9IGZuLnJlcGxhY2UoJywgIicsICcsIGIiJykKLSAgICBnb3RSZXN1bHQgPSBldmFsKGZuKQorICAgIHdpdGggd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKToKKyAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgIGdvdFJlc3VsdCA9IGV2YWwoZm4pCiAgICAgaWYgaXNpbnN0YW5jZSh3YW50UmVzdWx0LCBzdHIpOgogICAgICAgICB3YW50UmVzdWx0ID0gd2FudFJlc3VsdC5lbmNvZGUoJ2FzY2lpJykKICAgICBlbGlmIGlzaW5zdGFuY2Uod2FudFJlc3VsdCwgdHVwbGUpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9vcHRwYXJzZS5weSBiL0xpYi90ZXN0L3Rlc3Rfb3B0cGFyc2UucHkKaW5kZXggN2I5NTYxMi4uZDFhZTc1NyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9vcHRwYXJzZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X29wdHBhcnNlLnB5CkBAIC02MzEsNyArNjMxLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uX2xpc3Q9b3B0aW9ucykKIAogICAgIGRlZiB0ZXN0X3JlcXVpcmVkX3ZhbHVlKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFBhcnNlRmFpbChbIi1hIl0sICItYSBvcHRpb24gcmVxdWlyZXMgYW4gYXJndW1lbnQiKQorICAgICAgICBzZWxmLmFzc2VydFBhcnNlRmFpbChbIi1hIl0sICItYSBvcHRpb24gcmVxdWlyZXMgMSBhcmd1bWVudCIpCiAKICAgICBkZWYgdGVzdF9pbnZhbGlkX2ludGVnZXIoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0UGFyc2VGYWlsKFsiLWIiLCAiNXgiXSwKQEAgLTEwMjMsNyArMTAyMyw3IEBACiAgICAgICAgIFRZUEVfQ0hFQ0tFUlsiZmlsZSJdID0gY2hlY2tfZmlsZQogCiAgICAgZGVmIHRlc3RfZmlsZXR5cGVfb2soc2VsZik6Ci0gICAgICAgIG9wZW4oc3VwcG9ydC5URVNURk4sICJ3IikuY2xvc2UoKQorICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKHN1cHBvcnQuVEVTVEZOKQogICAgICAgICBzZWxmLmFzc2VydFBhcnNlT0soWyItLWZpbGUiLCBzdXBwb3J0LlRFU1RGTiwgIi1hZm9vIl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7J2ZpbGUnOiBzdXBwb3J0LlRFU1RGTiwgJ2EnOiAnZm9vJ30sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfb3MucHkgYi9MaWIvdGVzdC90ZXN0X29zLnB5CmluZGV4IDhiYzhiYTkuLmQyNTk1MTUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfb3MucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9vcy5weQpAQCAtMTQsMTkgKzE0LDM4IEBACiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGltcG9ydCBjb250ZXh0bGliCiBpbXBvcnQgbW1hcAoraW1wb3J0IHBsYXRmb3JtCitpbXBvcnQgcmUKIGltcG9ydCB1dWlkCitpbXBvcnQgYXN5bmNvcmUKK2ltcG9ydCBhc3luY2hhdAoraW1wb3J0IHNvY2tldAoraW1wb3J0IGl0ZXJ0b29scworaW1wb3J0IHN0YXQKK2ltcG9ydCBsb2NhbGUKK2ltcG9ydCBjb2RlY3MKK3RyeToKKyAgICBpbXBvcnQgdGhyZWFkaW5nCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgdGhyZWFkaW5nID0gTm9uZQogZnJvbSB0ZXN0LnNjcmlwdF9oZWxwZXIgaW1wb3J0IGFzc2VydF9weXRob25fb2sKIAorb3Muc3RhdF9mbG9hdF90aW1lcyhUcnVlKQorc3QgPSBvcy5zdGF0KF9fZmlsZV9fKQorc3RhdF9zdXBwb3J0c19zdWJzZWNvbmQgPSAoCisgICAgIyBjaGVjayBpZiBmbG9hdCBhbmQgaW50IHRpbWVzdGFtcHMgYXJlIGRpZmZlcmVudAorICAgIChzdC5zdF9hdGltZSAhPSBzdFs3XSkKKyAgICBvciAoc3Quc3RfbXRpbWUgIT0gc3RbOF0pCisgICAgb3IgKHN0LnN0X2N0aW1lICE9IHN0WzldKSkKKwogIyBEZXRlY3Qgd2hldGhlciB3ZSdyZSBvbiBhIExpbnV4IHN5c3RlbSB0aGF0IHVzZXMgdGhlIChub3cgb3V0ZGF0ZWQKICMgYW5kIHVubWFpbnRhaW5lZCkgbGludXh0aHJlYWRzIHRocmVhZGluZyBsaWJyYXJ5LiAgVGhlcmUncyBhbiBpc3N1ZQogIyB3aGVuIGNvbWJpbmluZyBsaW51eHRocmVhZHMgd2l0aCBhIGZhaWxlZCBleGVjdiBjYWxsOiBzZWUKICMgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTQ5NzAuCi1pZiAoaGFzYXR0cihvcywgImNvbmZzdHJfbmFtZXMiKSBhbmQKLSAgICAiQ1NfR05VX0xJQlBUSFJFQURfVkVSU0lPTiIgaW4gb3MuY29uZnN0cl9uYW1lcyk6Ci0gICAgbGlicHRocmVhZCA9IG9zLmNvbmZzdHIoIkNTX0dOVV9MSUJQVEhSRUFEX1ZFUlNJT04iKQotICAgIFVTSU5HX0xJTlVYVEhSRUFEUz0gbGlicHRocmVhZC5zdGFydHN3aXRoKCJsaW51eHRocmVhZHMiKQoraWYgaGFzYXR0cihzeXMsICd0aHJlYWRfaW5mbycpIGFuZCBzeXMudGhyZWFkX2luZm8udmVyc2lvbjoKKyAgICBVU0lOR19MSU5VWFRIUkVBRFMgPSBzeXMudGhyZWFkX2luZm8udmVyc2lvbi5zdGFydHN3aXRoKCJsaW51eHRocmVhZHMiKQogZWxzZToKLSAgICBVU0lOR19MSU5VWFRIUkVBRFM9IEZhbHNlCisgICAgVVNJTkdfTElOVVhUSFJFQURTID0gRmFsc2UKIAogIyBUZXN0cyBjcmVhdGluZyBURVNURk4KIGNsYXNzIEZpbGVUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CkBAIC0xMjMsNiArMTQyLDE4IEBACiAgICAgICAgIHNlbGYuZmRvcGVuX2hlbHBlcigncicpCiAgICAgICAgIHNlbGYuZmRvcGVuX2hlbHBlcigncicsIDEwMCkKIAorICAgIGRlZiB0ZXN0X3JlcGxhY2Uoc2VsZik6CisgICAgICAgIFRFU1RGTjIgPSBzdXBwb3J0LlRFU1RGTiArICIuMiIKKyAgICAgICAgd2l0aCBvcGVuKHN1cHBvcnQuVEVTVEZOLCAndycpIGFzIGY6CisgICAgICAgICAgICBmLndyaXRlKCIxIikKKyAgICAgICAgd2l0aCBvcGVuKFRFU1RGTjIsICd3JykgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoIjIiKQorICAgICAgICBzZWxmLmFkZENsZWFudXAob3MudW5saW5rLCBURVNURk4yKQorICAgICAgICBvcy5yZXBsYWNlKHN1cHBvcnQuVEVTVEZOLCBURVNURk4yKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhGaWxlTm90Rm91bmRFcnJvciwgb3Muc3RhdCwgc3VwcG9ydC5URVNURk4pCisgICAgICAgIHdpdGggb3BlbihURVNURk4yLCAncicpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCAiMSIpCisKIAogIyBUZXN0IGF0dHJpYnV0ZXMgb24gcmV0dXJuIHZhbHVlcyBmcm9tIG9zLipzdGF0KiBmYW1pbHkuCiBjbGFzcyBTdGF0QXR0cmlidXRlVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtMTQxLDcgKzE3Miw2IEBACiAgICAgICAgIGlmIG5vdCBoYXNhdHRyKG9zLCAic3RhdCIpOgogICAgICAgICAgICAgcmV0dXJuCiAKLSAgICAgICAgaW1wb3J0IHN0YXQKICAgICAgICAgcmVzdWx0ID0gb3Muc3RhdChmbmFtZSkKIAogICAgICAgICAjIE1ha2Ugc3VyZSBkaXJlY3QgYWNjZXNzIHdvcmtzCkBAIC0yMDcsNyArMjM3LDkgQEAKICAgICAgICAgICAgIGZuYW1lID0gc2VsZi5mbmFtZS5lbmNvZGUoc3lzLmdldGZpbGVzeXN0ZW1lbmNvZGluZygpKQogICAgICAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOgogICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiY2Fubm90IGVuY29kZSAlYSBmb3IgdGhlIGZpbGVzeXN0ZW0iICUgc2VsZi5mbmFtZSkKLSAgICAgICAgc2VsZi5jaGVja19zdGF0X2F0dHJpYnV0ZXMoZm5hbWUpCisgICAgICAgIHdpdGggd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKToKKyAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcigiaWdub3JlIiwgRGVwcmVjYXRpb25XYXJuaW5nKQorICAgICAgICAgICAgc2VsZi5jaGVja19zdGF0X2F0dHJpYnV0ZXMoZm5hbWUpCiAKICAgICBkZWYgdGVzdF9zdGF0dmZzX2F0dHJpYnV0ZXMoc2VsZik6CiAgICAgICAgIGlmIG5vdCBoYXNhdHRyKG9zLCAic3RhdHZmcyIpOgpAQCAtMjY0LDYgKzI5NiwxMDUgQEAKICAgICAgICAgc3QyID0gb3Muc3RhdChzdXBwb3J0LlRFU1RGTikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdDIuc3RfbXRpbWUsIGludChzdC5zdF9tdGltZS1kZWx0YSkpCiAKKyAgICBkZWYgdGVzdF91dGltZV9ub2FyZ3Moc2VsZik6CisgICAgICAgICMgSXNzdWUgIzEzMzI3IHJlbW92ZWQgdGhlIHJlcXVpcmVtZW50IHRvIHBhc3MgTm9uZSBhcyB0aGUKKyAgICAgICAgIyBzZWNvbmQgYXJndW1lbnQuIENoZWNrIHRoYXQgdGhlIHByZXZpb3VzIG1ldGhvZHMgb2YgcGFzc2luZworICAgICAgICAjIGEgdGltZSB0dXBsZSBvciBOb25lIHdvcmsgaW4gYWRkaXRpb24gdG8gbm8gYXJndW1lbnQuCisgICAgICAgIHN0ID0gb3Muc3RhdChzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgIyBEb2Vzbid0IHNldCBhbnl0aGluZyBuZXcsIGJ1dCBzZXRzIHRoZSB0aW1lIHR1cGxlIHdheQorICAgICAgICBvcy51dGltZShzdXBwb3J0LlRFU1RGTiwgKHN0LnN0X2F0aW1lLCBzdC5zdF9tdGltZSkpCisgICAgICAgICMgU2V0IHRvIHRoZSBjdXJyZW50IHRpbWUgaW4gdGhlIG9sZCBleHBsaWNpdCB3YXkuCisgICAgICAgIG9zLnV0aW1lKHN1cHBvcnQuVEVTVEZOLCBOb25lKQorICAgICAgICBzdDEgPSBvcy5zdGF0KHN1cHBvcnQuVEVTVEZOKQorICAgICAgICAjIFNldCB0byB0aGUgY3VycmVudCB0aW1lIGluIHRoZSBuZXcgd2F5CisgICAgICAgIG9zLnV0aW1lKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBzdDIgPSBvcy5zdGF0KHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBzZWxmLmFzc2VydEFsbW9zdEVxdWFsKHN0MS5zdF9tdGltZSwgc3QyLnN0X210aW1lLCBkZWx0YT0xMCkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHN0YXRfc3VwcG9ydHNfc3Vic2Vjb25kLAorICAgICAgICAgICAgICAgICAgICAgICAgICJvcy5zdGF0KCkgZG9lc24ndCBoYXMgYSBzdWJzZWNvbmQgcmVzb2x1dGlvbiIpCisgICAgZGVmIF90ZXN0X3V0aW1lX3N1YnNlY29uZChzZWxmLCBzZXRfdGltZV9mdW5jKToKKyAgICAgICAgYXNlYywgYW1zZWMgPSAxLCA5MDEKKyAgICAgICAgYXRpbWUgPSBhc2VjICsgYW1zZWMgKiAxZS0zCisgICAgICAgIG1zZWMsIG1tc2VjID0gMiwgOTAxCisgICAgICAgIG10aW1lID0gbXNlYyArIG1tc2VjICogMWUtMworICAgICAgICBmaWxlbmFtZSA9IHNlbGYuZm5hbWUKKyAgICAgICAgb3MudXRpbWUoZmlsZW5hbWUsICgwLCAwKSkKKyAgICAgICAgc2V0X3RpbWVfZnVuYyhmaWxlbmFtZSwgYXRpbWUsIG10aW1lKQorICAgICAgICBvcy5zdGF0X2Zsb2F0X3RpbWVzKFRydWUpCisgICAgICAgIHN0ID0gb3Muc3RhdChmaWxlbmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRBbG1vc3RFcXVhbChzdC5zdF9hdGltZSwgYXRpbWUsIHBsYWNlcz0zKQorICAgICAgICBzZWxmLmFzc2VydEFsbW9zdEVxdWFsKHN0LnN0X210aW1lLCBtdGltZSwgcGxhY2VzPTMpCisKKyAgICBkZWYgdGVzdF91dGltZV9zdWJzZWNvbmQoc2VsZik6CisgICAgICAgIGRlZiBzZXRfdGltZShmaWxlbmFtZSwgYXRpbWUsIG10aW1lKToKKyAgICAgICAgICAgIG9zLnV0aW1lKGZpbGVuYW1lLCAoYXRpbWUsIG10aW1lKSkKKyAgICAgICAgc2VsZi5fdGVzdF91dGltZV9zdWJzZWNvbmQoc2V0X3RpbWUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnZnV0aW1lcycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJvcy5mdXRpbWVzIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuIikKKyAgICBkZWYgdGVzdF9mdXRpbWVzX3N1YnNlY29uZChzZWxmKToKKyAgICAgICAgZGVmIHNldF90aW1lKGZpbGVuYW1lLCBhdGltZSwgbXRpbWUpOgorICAgICAgICAgICAgd2l0aCBvcGVuKGZpbGVuYW1lLCAid2IiKSBhcyBmOgorICAgICAgICAgICAgICAgIG9zLmZ1dGltZXMoZi5maWxlbm8oKSwgKGF0aW1lLCBtdGltZSkpCisgICAgICAgIHNlbGYuX3Rlc3RfdXRpbWVfc3Vic2Vjb25kKHNldF90aW1lKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ2Z1dGltZW5zJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgIm9zLmZ1dGltZW5zIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuIikKKyAgICBkZWYgdGVzdF9mdXRpbWVuc19zdWJzZWNvbmQoc2VsZik6CisgICAgICAgIGRlZiBzZXRfdGltZShmaWxlbmFtZSwgYXRpbWUsIG10aW1lKToKKyAgICAgICAgICAgIHdpdGggb3BlbihmaWxlbmFtZSwgIndiIikgYXMgZjoKKyAgICAgICAgICAgICAgICBhc2VjLCBhbnNlYyA9IGRpdm1vZChhdGltZSwgMS4wKQorICAgICAgICAgICAgICAgIGFzZWMgPSBpbnQoYXNlYykKKyAgICAgICAgICAgICAgICBhbnNlYyA9IGludChhbnNlYyAqIDFlOSkKKyAgICAgICAgICAgICAgICBtc2VjLCBtbnNlYyA9IGRpdm1vZChtdGltZSwgMS4wKQorICAgICAgICAgICAgICAgIG1zZWMgPSBpbnQobXNlYykKKyAgICAgICAgICAgICAgICBtbnNlYyA9IGludChtbnNlYyAqIDFlOSkKKyAgICAgICAgICAgICAgICBvcy5mdXRpbWVucyhmLmZpbGVubygpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgKGFzZWMsIGFuc2VjKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChtc2VjLCBtbnNlYykpCisgICAgICAgIHNlbGYuX3Rlc3RfdXRpbWVfc3Vic2Vjb25kKHNldF90aW1lKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ2Z1dGltZXNhdCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJvcy5mdXRpbWVzYXQgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4iKQorICAgIGRlZiB0ZXN0X2Z1dGltZXNhdF9zdWJzZWNvbmQoc2VsZik6CisgICAgICAgIGRlZiBzZXRfdGltZShmaWxlbmFtZSwgYXRpbWUsIG10aW1lKToKKyAgICAgICAgICAgIGRpcm5hbWUgPSBvcy5wYXRoLmRpcm5hbWUoZmlsZW5hbWUpCisgICAgICAgICAgICBkaXJmZCA9IG9zLm9wZW4oZGlybmFtZSwgb3MuT19SRE9OTFkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgb3MuZnV0aW1lc2F0KGRpcmZkLCBvcy5wYXRoLmJhc2VuYW1lKGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGF0aW1lLCBtdGltZSkpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIG9zLmNsb3NlKGRpcmZkKQorICAgICAgICBzZWxmLl90ZXN0X3V0aW1lX3N1YnNlY29uZChzZXRfdGltZSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIob3MsICdsdXRpbWVzJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgIm9zLmx1dGltZXMgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4iKQorICAgIGRlZiB0ZXN0X2x1dGltZXNfc3Vic2Vjb25kKHNlbGYpOgorICAgICAgICBkZWYgc2V0X3RpbWUoZmlsZW5hbWUsIGF0aW1lLCBtdGltZSk6CisgICAgICAgICAgICBvcy5sdXRpbWVzKGZpbGVuYW1lLCAoYXRpbWUsIG10aW1lKSkKKyAgICAgICAgc2VsZi5fdGVzdF91dGltZV9zdWJzZWNvbmQoc2V0X3RpbWUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAndXRpbWVuc2F0JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgIm9zLnV0aW1lbnNhdCByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LiIpCisgICAgZGVmIHRlc3RfdXRpbWVuc2F0X3N1YnNlY29uZChzZWxmKToKKyAgICAgICAgZGVmIHNldF90aW1lKGZpbGVuYW1lLCBhdGltZSwgbXRpbWUpOgorICAgICAgICAgICAgZGlybmFtZSA9IG9zLnBhdGguZGlybmFtZShmaWxlbmFtZSkKKyAgICAgICAgICAgIGRpcmZkID0gb3Mub3BlbihkaXJuYW1lLCBvcy5PX1JET05MWSkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBhc2VjLCBhbnNlYyA9IGRpdm1vZChhdGltZSwgMS4wKQorICAgICAgICAgICAgICAgIGFzZWMgPSBpbnQoYXNlYykKKyAgICAgICAgICAgICAgICBhbnNlYyA9IGludChhbnNlYyAqIDFlOSkKKyAgICAgICAgICAgICAgICBtc2VjLCBtbnNlYyA9IGRpdm1vZChtdGltZSwgMS4wKQorICAgICAgICAgICAgICAgIG1zZWMgPSBpbnQobXNlYykKKyAgICAgICAgICAgICAgICBtbnNlYyA9IGludChtbnNlYyAqIDFlOSkKKyAgICAgICAgICAgICAgICBvcy51dGltZW5zYXQoZGlyZmQsIG9zLnBhdGguYmFzZW5hbWUoZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYXNlYywgYW5zZWMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobXNlYywgbW5zZWMpKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICBvcy5jbG9zZShkaXJmZCkKKyAgICAgICAgc2VsZi5fdGVzdF91dGltZV9zdWJzZWNvbmQoc2V0X3RpbWUpCisKICAgICAjIFJlc3RyaWN0IHRlc3QgdG8gV2luMzIsIHNpbmNlIHRoZXJlIGlzIG5vIGd1YXJhbnRlZSBvdGhlcgogICAgICMgc3lzdGVtcyBzdXBwb3J0IGNlbnRpc2Vjb25kcwogICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInOgpAQCAtNDI2LDggKzU1Nyw4IEBACiAKICAgICAjIE9uIEZyZWVCU0QgPCA3IGFuZCBPUyBYIDwgMTAuNiwgdW5zZXRlbnYoKSBkb2Vzbid0IHJldHVybiBhIHZhbHVlIChpc3N1ZQogICAgICMgIzEzNDE1KS4KLSAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCgnZnJlZWJzZCcsICdkYXJ3aW4nKSksCi0gICAgICAgICAgICAgICAgICAgICAiZHVlIHRvIGtub3duIE9TIGJ1Zzogc2VlIGlzc3VlICMxMzQxNSIpCisgICAgQHN1cHBvcnQucmVxdWlyZXNfZnJlZWJzZF92ZXJzaW9uKDcpCisgICAgQHN1cHBvcnQucmVxdWlyZXNfbWFjX3ZlcigxMCwgNikKICAgICBkZWYgdGVzdF91bnNldF9lcnJvcihzZWxmKToKICAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICJ3aW4zMiI6CiAgICAgICAgICAgICAjIGFuIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIGxpbWl0ZWQgdG8gMzIsNzY3IGNoYXJhY3RlcnMKQEAgLTQ0MSw3ICs1NzIsNyBAQAogY2xhc3MgV2Fsa1Rlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAiIiJUZXN0cyBmb3Igb3Mud2FsaygpLiIiIgogCi0gICAgZGVmIHRlc3RfdHJhdmVyc2FsKHNlbGYpOgorICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgaW1wb3J0IG9zCiAgICAgICAgIGZyb20gb3MucGF0aCBpbXBvcnQgam9pbgogCkBAIC01NTEsNiArNjgyLDYwIEBACiAgICAgICAgICAgICAgICAgICAgIG9zLnJlbW92ZShkaXJuYW1lKQogICAgICAgICBvcy5ybWRpcihzdXBwb3J0LlRFU1RGTikKIAorCitAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnZndhbGsnKSwgIlRlc3QgbmVlZHMgb3MuZndhbGsoKSIpCitjbGFzcyBGd2Fsa1Rlc3RzKFdhbGtUZXN0cyk6CisgICAgIiIiVGVzdHMgZm9yIG9zLmZ3YWxrKCkuIiIiCisKKyAgICBkZWYgdGVzdF9jb21wYXJlX3RvX3dhbGsoc2VsZik6CisgICAgICAgICMgY29tcGFyZSB3aXRoIHdhbGsoKSByZXN1bHRzCisgICAgICAgIGZvciB0b3Bkb3duLCBmb2xsb3dsaW5rcyBpbiBpdGVydG9vbHMucHJvZHVjdCgoVHJ1ZSwgRmFsc2UpLCByZXBlYXQ9Mik6CisgICAgICAgICAgICBhcmdzID0gc3VwcG9ydC5URVNURk4sIHRvcGRvd24sIE5vbmUsIGZvbGxvd2xpbmtzCisgICAgICAgICAgICBleHBlY3RlZCA9IHt9CisgICAgICAgICAgICBmb3Igcm9vdCwgZGlycywgZmlsZXMgaW4gb3Mud2FsaygqYXJncyk6CisgICAgICAgICAgICAgICAgZXhwZWN0ZWRbcm9vdF0gPSAoc2V0KGRpcnMpLCBzZXQoZmlsZXMpKQorCisgICAgICAgICAgICBmb3Igcm9vdCwgZGlycywgZmlsZXMsIHJvb3RmZCBpbiBvcy5md2FsaygqYXJncyk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihyb290LCBleHBlY3RlZCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkW3Jvb3RdLCAoc2V0KGRpcnMpLCBzZXQoZmlsZXMpKSkKKworICAgIGRlZiB0ZXN0X2Rpcl9mZChzZWxmKToKKyAgICAgICAgIyBjaGVjayByZXR1cm5lZCBmaWxlIGRlc2NyaXB0b3JzCisgICAgICAgIGZvciB0b3Bkb3duLCBmb2xsb3dsaW5rcyBpbiBpdGVydG9vbHMucHJvZHVjdCgoVHJ1ZSwgRmFsc2UpLCByZXBlYXQ9Mik6CisgICAgICAgICAgICBhcmdzID0gc3VwcG9ydC5URVNURk4sIHRvcGRvd24sIE5vbmUsIGZvbGxvd2xpbmtzCisgICAgICAgICAgICBmb3Igcm9vdCwgZGlycywgZmlsZXMsIHJvb3RmZCBpbiBvcy5md2FsaygqYXJncyk6CisgICAgICAgICAgICAgICAgIyBjaGVjayB0aGF0IHRoZSBGRCBpcyB2YWxpZAorICAgICAgICAgICAgICAgIG9zLmZzdGF0KHJvb3RmZCkKKyAgICAgICAgICAgICAgICAjIGNoZWNrIHRoYXQgZmxpc3RkaXIoKSByZXR1cm5zIGNvbnNpc3RlbnQgaW5mb3JtYXRpb24KKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNldChvcy5mbGlzdGRpcihyb290ZmQpKSwgc2V0KGRpcnMpIHwgc2V0KGZpbGVzKSkKKworICAgIGRlZiB0ZXN0X2ZkX2xlYWsoc2VsZik6CisgICAgICAgICMgU2luY2Ugd2UncmUgb3BlbmluZyBhIGxvdCBvZiBGRHMsIHdlIG11c3QgYmUgY2FyZWZ1bCB0byBhdm9pZCBsZWFrczoKKyAgICAgICAgIyB3ZSBib3RoIGNoZWNrIHRoYXQgY2FsbGluZyBmd2FsaygpIGEgbGFyZ2UgbnVtYmVyIG9mIHRpbWVzIGRvZXNuJ3QKKyAgICAgICAgIyB5aWVsZCBFTUZJTEUsIGFuZCB0aGF0IHRoZSBtaW5pbXVtIGFsbG9jYXRlZCBGRCBoYXNuJ3QgY2hhbmdlZC4KKyAgICAgICAgbWluZmQgPSBvcy5kdXAoMSkKKyAgICAgICAgb3MuY2xvc2UobWluZmQpCisgICAgICAgIGZvciBpIGluIHJhbmdlKDI1Nik6CisgICAgICAgICAgICBmb3IgeCBpbiBvcy5md2FsayhzdXBwb3J0LlRFU1RGTik6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICBuZXdmZCA9IG9zLmR1cCgxKQorICAgICAgICBzZWxmLmFkZENsZWFudXAob3MuY2xvc2UsIG5ld2ZkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2ZkLCBtaW5mZCkKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgIyBjbGVhbnVwCisgICAgICAgIGZvciByb290LCBkaXJzLCBmaWxlcywgcm9vdGZkIGluIG9zLmZ3YWxrKHN1cHBvcnQuVEVTVEZOLCB0b3Bkb3duPUZhbHNlKToKKyAgICAgICAgICAgIGZvciBuYW1lIGluIGZpbGVzOgorICAgICAgICAgICAgICAgIG9zLnVubGlua2F0KHJvb3RmZCwgbmFtZSkKKyAgICAgICAgICAgIGZvciBuYW1lIGluIGRpcnM6CisgICAgICAgICAgICAgICAgc3QgPSBvcy5mc3RhdGF0KHJvb3RmZCwgbmFtZSwgb3MuQVRfU1lNTElOS19OT0ZPTExPVykKKyAgICAgICAgICAgICAgICBpZiBzdGF0LlNfSVNESVIoc3Quc3RfbW9kZSk6CisgICAgICAgICAgICAgICAgICAgIG9zLnVubGlua2F0KHJvb3RmZCwgbmFtZSwgb3MuQVRfUkVNT1ZFRElSKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIG9zLnVubGlua2F0KHJvb3RmZCwgbmFtZSkKKyAgICAgICAgb3Mucm1kaXIoc3VwcG9ydC5URVNURk4pCisKKwogY2xhc3MgTWFrZWRpclRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgc2V0VXAoc2VsZik6CiAgICAgICAgIG9zLm1rZGlyKHN1cHBvcnQuVEVTVEZOKQpAQCAtODU1LDcgKzEwNDAsOSBAQAogICAgICAgICB3aXRoIG9wZW4oZmlsZTEsICJ3IikgYXMgZjE6CiAgICAgICAgICAgICBmMS53cml0ZSgidGVzdCIpCiAKLSAgICAgICAgb3MubGluayhmaWxlMSwgZmlsZTIpCisgICAgICAgIHdpdGggd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKToKKyAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcigiaWdub3JlIiwgRGVwcmVjYXRpb25XYXJuaW5nKQorICAgICAgICAgICAgb3MubGluayhmaWxlMSwgZmlsZTIpCiAgICAgICAgIHdpdGggb3BlbihmaWxlMSwgInIiKSBhcyBmMSwgb3BlbihmaWxlMiwgInIiKSBhcyBmMjoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLnNhbWVvcGVuZmlsZShmMS5maWxlbm8oKSwgZjIuZmlsZW5vKCkpKQogCkBAIC05NTgsOCArMTE0NSw3IEBACiAgICAgICAgICAgICBvcy5ta2RpcihzZWxmLmRpcikKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBmb3IgZm4gaW4gYnl0ZXNmbjoKLSAgICAgICAgICAgICAgICAgICAgZiA9IG9wZW4ob3MucGF0aC5qb2luKHNlbGYuYmRpciwgZm4pLCAidyIpCi0gICAgICAgICAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKG9zLnBhdGguam9pbihzZWxmLmJkaXIsIGZuKSkKICAgICAgICAgICAgICAgICAgICAgZm4gPSBvcy5mc2RlY29kZShmbikKICAgICAgICAgICAgICAgICAgICAgaWYgZm4gaW4gc2VsZi51bmljb2RlZm46CiAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJkdXBsaWNhdGUgZmlsZW5hbWUiKQpAQCAtMTE3OCw4ICsxMzY0LDEwIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwob3MubHN0YXQobGluayksIG9zLnN0YXQobGluaykpCiAKICAgICAgICAgYnl0ZXNfbGluayA9IG9zLmZzZW5jb2RlKGxpbmspCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3Muc3RhdChieXRlc19saW5rKSwgb3Muc3RhdCh0YXJnZXQpKQotICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKG9zLmxzdGF0KGJ5dGVzX2xpbmspLCBvcy5zdGF0KGJ5dGVzX2xpbmspKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3Muc3RhdChieXRlc19saW5rKSwgb3Muc3RhdCh0YXJnZXQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChvcy5sc3RhdChieXRlc19saW5rKSwgb3Muc3RhdChieXRlc19saW5rKSkKIAogICAgIGRlZiB0ZXN0XzEyMDg0KHNlbGYpOgogICAgICAgICBsZXZlbDEgPSBvcy5wYXRoLmFic3BhdGgoc3VwcG9ydC5URVNURk4pCkBAIC0xMjM4LDYgKzE0MjYsMjIgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3MuZnNkZWNvZGUoYnl0ZXNmbiksIGZuKQogCiAKKworY2xhc3MgRGV2aWNlRW5jb2RpbmdUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9iYWRfZmQoc2VsZik6CisgICAgICAgICMgUmV0dXJuIE5vbmUgd2hlbiBhbiBmZCBkb2Vzbid0IGFjdHVhbGx5IGV4aXN0LgorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShvcy5kZXZpY2VfZW5jb2RpbmcoMTIzNDU2KSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKG9zLmlzYXR0eSgwKSBhbmQgKHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCd3aW4nKSBvcgorICAgICAgICAgICAgKGhhc2F0dHIobG9jYWxlLCAnbmxfbGFuZ2luZm8nKSBhbmQgaGFzYXR0cihsb2NhbGUsICdDT0RFU0VUJykpKSwKKyAgICAgICAgICAgICd0ZXN0IHJlcXVpcmVzIGEgdHR5IGFuZCBlaXRoZXIgV2luZG93cyBvciBubF9sYW5naW5mbyhDT0RFU0VUKScpCisgICAgZGVmIHRlc3RfZGV2aWNlX2VuY29kaW5nKHNlbGYpOgorICAgICAgICBlbmNvZGluZyA9IG9zLmRldmljZV9lbmNvZGluZygwKQorICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShlbmNvZGluZykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNvZGVjcy5sb29rdXAoZW5jb2RpbmcpKQorCisKIGNsYXNzIFBpZFRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnZ2V0cHBpZCcpLCAidGVzdCBuZWVkcyBvcy5nZXRwcGlkIikKICAgICBkZWYgdGVzdF9nZXRwcGlkKHNlbGYpOgpAQCAtMTI1OSwxMiArMTQ2Myw0NzMgQEAKICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChsZW4odXNlcl9uYW1lKSwgMCkKIAogCitAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnZ2V0cHJpb3JpdHknKSBhbmQgaGFzYXR0cihvcywgJ3NldHByaW9yaXR5JyksCisgICAgICAgICAgICAgICAgICAgICAibmVlZHMgb3MuZ2V0cHJpb3JpdHkgYW5kIG9zLnNldHByaW9yaXR5IikKK2NsYXNzIFByb2dyYW1Qcmlvcml0eVRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAiIiJUZXN0cyBmb3Igb3MuZ2V0cHJpb3JpdHkoKSBhbmQgb3Muc2V0cHJpb3JpdHkoKS4iIiIKKworICAgIGRlZiB0ZXN0X3NldF9nZXRfcHJpb3JpdHkoc2VsZik6CisKKyAgICAgICAgYmFzZSA9IG9zLmdldHByaW9yaXR5KG9zLlBSSU9fUFJPQ0VTUywgb3MuZ2V0cGlkKCkpCisgICAgICAgIG9zLnNldHByaW9yaXR5KG9zLlBSSU9fUFJPQ0VTUywgb3MuZ2V0cGlkKCksIGJhc2UgKyAxKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBuZXdfcHJpbyA9IG9zLmdldHByaW9yaXR5KG9zLlBSSU9fUFJPQ0VTUywgb3MuZ2V0cGlkKCkpCisgICAgICAgICAgICBpZiBiYXNlID49IDE5IGFuZCBuZXdfcHJpbyA8PSAxOToKKyAgICAgICAgICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgKKyAgICAgICJ1bmFibGUgdG8gcmVsaWFibHkgdGVzdCBzZXRwcmlvcml0eSBhdCBjdXJyZW50IG5pY2UgbGV2ZWwgb2YgJXMiICUgYmFzZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZXdfcHJpbywgYmFzZSArIDEpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgb3Muc2V0cHJpb3JpdHkob3MuUFJJT19QUk9DRVNTLCBvcy5nZXRwaWQoKSwgYmFzZSkKKyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGVycjoKKyAgICAgICAgICAgICAgICBpZiBlcnIuZXJybm8gIT0gZXJybm8uRUFDQ0VTOgorICAgICAgICAgICAgICAgICAgICByYWlzZQorCisKK2lmIHRocmVhZGluZyBpcyBub3QgTm9uZToKKyAgICBjbGFzcyBTZW5kZmlsZVRlc3RTZXJ2ZXIoYXN5bmNvcmUuZGlzcGF0Y2hlciwgdGhyZWFkaW5nLlRocmVhZCk6CisKKyAgICAgICAgY2xhc3MgSGFuZGxlcihhc3luY2hhdC5hc3luY19jaGF0KToKKworICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGNvbm4pOgorICAgICAgICAgICAgICAgIGFzeW5jaGF0LmFzeW5jX2NoYXQuX19pbml0X18oc2VsZiwgY29ubikKKyAgICAgICAgICAgICAgICBzZWxmLmluX2J1ZmZlciA9IFtdCisgICAgICAgICAgICAgICAgc2VsZi5jbG9zZWQgPSBGYWxzZQorICAgICAgICAgICAgICAgIHNlbGYucHVzaChiIjIyMCByZWFkeVxyXG4iKQorCisgICAgICAgICAgICBkZWYgaGFuZGxlX3JlYWQoc2VsZik6CisgICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYucmVjdig0MDk2KQorICAgICAgICAgICAgICAgIHNlbGYuaW5fYnVmZmVyLmFwcGVuZChkYXRhKQorCisgICAgICAgICAgICBkZWYgZ2V0X2RhdGEoc2VsZik6CisgICAgICAgICAgICAgICAgcmV0dXJuIGInJy5qb2luKHNlbGYuaW5fYnVmZmVyKQorCisgICAgICAgICAgICBkZWYgaGFuZGxlX2Nsb3NlKHNlbGYpOgorICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorICAgICAgICAgICAgICAgIHNlbGYuY2xvc2VkID0gVHJ1ZQorCisgICAgICAgICAgICBkZWYgaGFuZGxlX2Vycm9yKHNlbGYpOgorICAgICAgICAgICAgICAgIHJhaXNlCisKKyAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGFkZHJlc3MpOgorICAgICAgICAgICAgdGhyZWFkaW5nLlRocmVhZC5fX2luaXRfXyhzZWxmKQorICAgICAgICAgICAgYXN5bmNvcmUuZGlzcGF0Y2hlci5fX2luaXRfXyhzZWxmKQorICAgICAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCisgICAgICAgICAgICBzZWxmLmJpbmQoYWRkcmVzcykKKyAgICAgICAgICAgIHNlbGYubGlzdGVuKDUpCisgICAgICAgICAgICBzZWxmLmhvc3QsIHNlbGYucG9ydCA9IHNlbGYuc29ja2V0LmdldHNvY2tuYW1lKClbOjJdCisgICAgICAgICAgICBzZWxmLmhhbmRsZXJfaW5zdGFuY2UgPSBOb25lCisgICAgICAgICAgICBzZWxmLl9hY3RpdmUgPSBGYWxzZQorICAgICAgICAgICAgc2VsZi5fYWN0aXZlX2xvY2sgPSB0aHJlYWRpbmcuTG9jaygpCisKKyAgICAgICAgIyAtLS0gcHVibGljIEFQSQorCisgICAgICAgIEBwcm9wZXJ0eQorICAgICAgICBkZWYgcnVubmluZyhzZWxmKToKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9hY3RpdmUKKworICAgICAgICBkZWYgc3RhcnQoc2VsZik6CisgICAgICAgICAgICBhc3NlcnQgbm90IHNlbGYucnVubmluZworICAgICAgICAgICAgc2VsZi5fX2ZsYWcgPSB0aHJlYWRpbmcuRXZlbnQoKQorICAgICAgICAgICAgdGhyZWFkaW5nLlRocmVhZC5zdGFydChzZWxmKQorICAgICAgICAgICAgc2VsZi5fX2ZsYWcud2FpdCgpCisKKyAgICAgICAgZGVmIHN0b3Aoc2VsZik6CisgICAgICAgICAgICBhc3NlcnQgc2VsZi5ydW5uaW5nCisgICAgICAgICAgICBzZWxmLl9hY3RpdmUgPSBGYWxzZQorICAgICAgICAgICAgc2VsZi5qb2luKCkKKworICAgICAgICBkZWYgd2FpdChzZWxmKToKKyAgICAgICAgICAgICMgd2FpdCBmb3IgaGFuZGxlciBjb25uZWN0aW9uIHRvIGJlIGNsb3NlZCwgdGhlbiBzdG9wIHRoZSBzZXJ2ZXIKKyAgICAgICAgICAgIHdoaWxlIG5vdCBnZXRhdHRyKHNlbGYuaGFuZGxlcl9pbnN0YW5jZSwgImNsb3NlZCIsIEZhbHNlKToKKyAgICAgICAgICAgICAgICB0aW1lLnNsZWVwKDAuMDAxKQorICAgICAgICAgICAgc2VsZi5zdG9wKCkKKworICAgICAgICAjIC0tLSBpbnRlcm5hbHMKKworICAgICAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICAgICAgc2VsZi5fYWN0aXZlID0gVHJ1ZQorICAgICAgICAgICAgc2VsZi5fX2ZsYWcuc2V0KCkKKyAgICAgICAgICAgIHdoaWxlIHNlbGYuX2FjdGl2ZSBhbmQgYXN5bmNvcmUuc29ja2V0X21hcDoKKyAgICAgICAgICAgICAgICBzZWxmLl9hY3RpdmVfbG9jay5hY3F1aXJlKCkKKyAgICAgICAgICAgICAgICBhc3luY29yZS5sb29wKHRpbWVvdXQ9MC4wMDEsIGNvdW50PTEpCisgICAgICAgICAgICAgICAgc2VsZi5fYWN0aXZlX2xvY2sucmVsZWFzZSgpCisgICAgICAgICAgICBhc3luY29yZS5jbG9zZV9hbGwoKQorCisgICAgICAgIGRlZiBoYW5kbGVfYWNjZXB0KHNlbGYpOgorICAgICAgICAgICAgY29ubiwgYWRkciA9IHNlbGYuYWNjZXB0KCkKKyAgICAgICAgICAgIHNlbGYuaGFuZGxlcl9pbnN0YW5jZSA9IHNlbGYuSGFuZGxlcihjb25uKQorCisgICAgICAgIGRlZiBoYW5kbGVfY29ubmVjdChzZWxmKToKKyAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorICAgICAgICBoYW5kbGVfcmVhZCA9IGhhbmRsZV9jb25uZWN0CisKKyAgICAgICAgZGVmIHdyaXRhYmxlKHNlbGYpOgorICAgICAgICAgICAgcmV0dXJuIDAKKworICAgICAgICBkZWYgaGFuZGxlX2Vycm9yKHNlbGYpOgorICAgICAgICAgICAgcmFpc2UKKworCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWRpbmcgaXMgbm90IE5vbmUsICJ0ZXN0IG5lZWRzIHRocmVhZGluZyBtb2R1bGUiKQorQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ3NlbmRmaWxlJyksICJ0ZXN0IG5lZWRzIG9zLnNlbmRmaWxlKCkiKQorY2xhc3MgVGVzdFNlbmRmaWxlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIERBVEEgPSBiIjEyMzQ1YWJjZGUiICogMTYgKiAxMDI0ICAjIDE2MCBLQgorICAgIFNVUFBPUlRfSEVBREVSU19UUkFJTEVSUyA9IG5vdCBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgibGludXgiKSBhbmQgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdCBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgic29sYXJpcyIpIGFuZCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm90IHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCJzdW5vcyIpCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgc2V0VXBDbGFzcyhjbHMpOgorICAgICAgICB3aXRoIG9wZW4oc3VwcG9ydC5URVNURk4sICJ3YiIpIGFzIGY6CisgICAgICAgICAgICBmLndyaXRlKGNscy5EQVRBKQorCisgICAgQGNsYXNzbWV0aG9kCisgICAgZGVmIHRlYXJEb3duQ2xhc3MoY2xzKToKKyAgICAgICAgc3VwcG9ydC51bmxpbmsoc3VwcG9ydC5URVNURk4pCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuc2VydmVyID0gU2VuZGZpbGVUZXN0U2VydmVyKChzdXBwb3J0LkhPU1QsIDApKQorICAgICAgICBzZWxmLnNlcnZlci5zdGFydCgpCisgICAgICAgIHNlbGYuY2xpZW50ID0gc29ja2V0LnNvY2tldCgpCisgICAgICAgIHNlbGYuY2xpZW50LmNvbm5lY3QoKHNlbGYuc2VydmVyLmhvc3QsIHNlbGYuc2VydmVyLnBvcnQpKQorICAgICAgICBzZWxmLmNsaWVudC5zZXR0aW1lb3V0KDEpCisgICAgICAgICMgc3luY2hyb25pemUgYnkgd2FpdGluZyBmb3IgIjIyMCByZWFkeSIgcmVzcG9uc2UKKyAgICAgICAgc2VsZi5jbGllbnQucmVjdigxMDI0KQorICAgICAgICBzZWxmLnNvY2tubyA9IHNlbGYuY2xpZW50LmZpbGVubygpCisgICAgICAgIHNlbGYuZmlsZSA9IG9wZW4oc3VwcG9ydC5URVNURk4sICdyYicpCisgICAgICAgIHNlbGYuZmlsZW5vID0gc2VsZi5maWxlLmZpbGVubygpCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHNlbGYuZmlsZS5jbG9zZSgpCisgICAgICAgIHNlbGYuY2xpZW50LmNsb3NlKCkKKyAgICAgICAgaWYgc2VsZi5zZXJ2ZXIucnVubmluZzoKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLnN0b3AoKQorCisgICAgZGVmIHNlbmRmaWxlX3dyYXBwZXIoc2VsZiwgc29jaywgZmlsZSwgb2Zmc2V0LCBuYnl0ZXMsIGhlYWRlcnM9W10sIHRyYWlsZXJzPVtdKToKKyAgICAgICAgIiIiQSBoaWdoZXIgbGV2ZWwgd3JhcHBlciByZXByZXNlbnRpbmcgaG93IGFuIGFwcGxpY2F0aW9uIGlzCisgICAgICAgIHN1cHBvc2VkIHRvIHVzZSBzZW5kZmlsZSgpLgorICAgICAgICAiIiIKKyAgICAgICAgd2hpbGUgMToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBpZiBzZWxmLlNVUFBPUlRfSEVBREVSU19UUkFJTEVSUzoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9zLnNlbmRmaWxlKHNvY2ssIGZpbGUsIG9mZnNldCwgbmJ5dGVzLCBoZWFkZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhaWxlcnMpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9zLnNlbmRmaWxlKHNvY2ssIGZpbGUsIG9mZnNldCwgbmJ5dGVzKQorICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgICAgIGlmIGVyci5lcnJubyA9PSBlcnJuby5FQ09OTlJFU0VUOgorICAgICAgICAgICAgICAgICAgICAjIGRpc2Nvbm5lY3RlZAorICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgICAgIGVsaWYgZXJyLmVycm5vIGluIChlcnJuby5FQUdBSU4sIGVycm5vLkVCVVNZKToKKyAgICAgICAgICAgICAgICAgICAgIyB3ZSBoYXZlIHRvIHJldHJ5IHNlbmQgZGF0YQorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlCisKKyAgICBkZWYgdGVzdF9zZW5kX3dob2xlX2ZpbGUoc2VsZik6CisgICAgICAgICMgbm9ybWFsIHNlbmQKKyAgICAgICAgdG90YWxfc2VudCA9IDAKKyAgICAgICAgb2Zmc2V0ID0gMAorICAgICAgICBuYnl0ZXMgPSA0MDk2CisgICAgICAgIHdoaWxlIHRvdGFsX3NlbnQgPCBsZW4oc2VsZi5EQVRBKToKKyAgICAgICAgICAgIHNlbnQgPSBzZWxmLnNlbmRmaWxlX3dyYXBwZXIoc2VsZi5zb2Nrbm8sIHNlbGYuZmlsZW5vLCBvZmZzZXQsIG5ieXRlcykKKyAgICAgICAgICAgIGlmIHNlbnQgPT0gMDoKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgb2Zmc2V0ICs9IHNlbnQKKyAgICAgICAgICAgIHRvdGFsX3NlbnQgKz0gc2VudAorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbnQgPD0gbmJ5dGVzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvZmZzZXQsIHRvdGFsX3NlbnQpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0b3RhbF9zZW50LCBsZW4oc2VsZi5EQVRBKSkKKyAgICAgICAgc2VsZi5jbGllbnQuc2h1dGRvd24oc29ja2V0LlNIVVRfUkRXUikKKyAgICAgICAgc2VsZi5jbGllbnQuY2xvc2UoKQorICAgICAgICBzZWxmLnNlcnZlci53YWl0KCkKKyAgICAgICAgZGF0YSA9IHNlbGYuc2VydmVyLmhhbmRsZXJfaW5zdGFuY2UuZ2V0X2RhdGEoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihkYXRhKSwgbGVuKHNlbGYuREFUQSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YSwgc2VsZi5EQVRBKQorCisgICAgZGVmIHRlc3Rfc2VuZF9hdF9jZXJ0YWluX29mZnNldChzZWxmKToKKyAgICAgICAgIyBzdGFydCBzZW5kaW5nIGEgZmlsZSBhdCBhIGNlcnRhaW4gb2Zmc2V0CisgICAgICAgIHRvdGFsX3NlbnQgPSAwCisgICAgICAgIG9mZnNldCA9IGxlbihzZWxmLkRBVEEpIC8vIDIKKyAgICAgICAgbXVzdF9zZW5kID0gbGVuKHNlbGYuREFUQSkgLSBvZmZzZXQKKyAgICAgICAgbmJ5dGVzID0gNDA5NgorICAgICAgICB3aGlsZSB0b3RhbF9zZW50IDwgbXVzdF9zZW5kOgorICAgICAgICAgICAgc2VudCA9IHNlbGYuc2VuZGZpbGVfd3JhcHBlcihzZWxmLnNvY2tubywgc2VsZi5maWxlbm8sIG9mZnNldCwgbmJ5dGVzKQorICAgICAgICAgICAgaWYgc2VudCA9PSAwOgorICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICBvZmZzZXQgKz0gc2VudAorICAgICAgICAgICAgdG90YWxfc2VudCArPSBzZW50CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VudCA8PSBuYnl0ZXMpCisKKyAgICAgICAgc2VsZi5jbGllbnQuc2h1dGRvd24oc29ja2V0LlNIVVRfUkRXUikKKyAgICAgICAgc2VsZi5jbGllbnQuY2xvc2UoKQorICAgICAgICBzZWxmLnNlcnZlci53YWl0KCkKKyAgICAgICAgZGF0YSA9IHNlbGYuc2VydmVyLmhhbmRsZXJfaW5zdGFuY2UuZ2V0X2RhdGEoKQorICAgICAgICBleHBlY3RlZCA9IHNlbGYuREFUQVtsZW4oc2VsZi5EQVRBKSAvLyAyOl0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0b3RhbF9zZW50LCBsZW4oZXhwZWN0ZWQpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihkYXRhKSwgbGVuKGV4cGVjdGVkKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkYXRhLCBleHBlY3RlZCkKKworICAgIGRlZiB0ZXN0X29mZnNldF9vdmVyZmxvdyhzZWxmKToKKyAgICAgICAgIyBzcGVjaWZ5IGFuIG9mZnNldCA+IGZpbGUgc2l6ZQorICAgICAgICBvZmZzZXQgPSBsZW4oc2VsZi5EQVRBKSArIDQwOTYKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VudCA9IG9zLnNlbmRmaWxlKHNlbGYuc29ja25vLCBzZWxmLmZpbGVubywgb2Zmc2V0LCA0MDk2KQorICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgorICAgICAgICAgICAgIyBTb2xhcmlzIGNhbiByYWlzZSBFSU5WQUwgaWYgb2Zmc2V0ID49IGZpbGUgbGVuZ3RoLCBpZ25vcmUuCisgICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVJTlZBTDoKKyAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZW50LCAwKQorICAgICAgICBzZWxmLmNsaWVudC5zaHV0ZG93bihzb2NrZXQuU0hVVF9SRFdSKQorICAgICAgICBzZWxmLmNsaWVudC5jbG9zZSgpCisgICAgICAgIHNlbGYuc2VydmVyLndhaXQoKQorICAgICAgICBkYXRhID0gc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5nZXRfZGF0YSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YSwgYicnKQorCisgICAgZGVmIHRlc3RfaW52YWxpZF9vZmZzZXQoc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvcikgYXMgY206CisgICAgICAgICAgICBvcy5zZW5kZmlsZShzZWxmLnNvY2tubywgc2VsZi5maWxlbm8sIC0xLCA0MDk2KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtLmV4Y2VwdGlvbi5lcnJubywgZXJybm8uRUlOVkFMKQorCisgICAgIyAtLS0gaGVhZGVycyAvIHRyYWlsZXJzIHRlc3RzCisKKyAgICBpZiBTVVBQT1JUX0hFQURFUlNfVFJBSUxFUlM6CisKKyAgICAgICAgZGVmIHRlc3RfaGVhZGVycyhzZWxmKToKKyAgICAgICAgICAgIHRvdGFsX3NlbnQgPSAwCisgICAgICAgICAgICBzZW50ID0gb3Muc2VuZGZpbGUoc2VsZi5zb2Nrbm8sIHNlbGYuZmlsZW5vLCAwLCA0MDk2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM9W2IieCIgKiA1MTJdKQorICAgICAgICAgICAgdG90YWxfc2VudCArPSBzZW50CisgICAgICAgICAgICBvZmZzZXQgPSA0MDk2CisgICAgICAgICAgICBuYnl0ZXMgPSA0MDk2CisgICAgICAgICAgICB3aGlsZSAxOgorICAgICAgICAgICAgICAgIHNlbnQgPSBzZWxmLnNlbmRmaWxlX3dyYXBwZXIoc2VsZi5zb2Nrbm8sIHNlbGYuZmlsZW5vLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQsIG5ieXRlcykKKyAgICAgICAgICAgICAgICBpZiBzZW50ID09IDA6CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgdG90YWxfc2VudCArPSBzZW50CisgICAgICAgICAgICAgICAgb2Zmc2V0ICs9IHNlbnQKKworICAgICAgICAgICAgZXhwZWN0ZWRfZGF0YSA9IGIieCIgKiA1MTIgKyBzZWxmLkRBVEEKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG90YWxfc2VudCwgbGVuKGV4cGVjdGVkX2RhdGEpKQorICAgICAgICAgICAgc2VsZi5jbGllbnQuY2xvc2UoKQorICAgICAgICAgICAgc2VsZi5zZXJ2ZXIud2FpdCgpCisgICAgICAgICAgICBkYXRhID0gc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5nZXRfZGF0YSgpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2goZGF0YSksIGhhc2goZXhwZWN0ZWRfZGF0YSkpCisKKyAgICAgICAgZGVmIHRlc3RfdHJhaWxlcnMoc2VsZik6CisgICAgICAgICAgICBURVNURk4yID0gc3VwcG9ydC5URVNURk4gKyAiMiIKKyAgICAgICAgICAgIHdpdGggb3BlbihURVNURk4yLCAnd2InKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUoYiJhYmNkZSIpCisgICAgICAgICAgICB3aXRoIG9wZW4oVEVTVEZOMiwgJ3JiJylhcyBmOgorICAgICAgICAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChvcy5yZW1vdmUsIFRFU1RGTjIpCisgICAgICAgICAgICAgICAgb3Muc2VuZGZpbGUoc2VsZi5zb2Nrbm8sIGYuZmlsZW5vKCksIDAsIDQwOTYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhaWxlcnM9W2IiMTIzNDUiXSkKKyAgICAgICAgICAgICAgICBzZWxmLmNsaWVudC5jbG9zZSgpCisgICAgICAgICAgICAgICAgc2VsZi5zZXJ2ZXIud2FpdCgpCisgICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYuc2VydmVyLmhhbmRsZXJfaW5zdGFuY2UuZ2V0X2RhdGEoKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YSwgYiJhYmNkZTEyMzQ1IikKKworICAgICAgICBpZiBoYXNhdHRyKG9zLCAiU0ZfTk9ESVNLSU8iKToKKyAgICAgICAgICAgIGRlZiB0ZXN0X2ZsYWdzKHNlbGYpOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgb3Muc2VuZGZpbGUoc2VsZi5zb2Nrbm8sIHNlbGYuZmlsZW5vLCAwLCA0MDk2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncz1vcy5TRl9OT0RJU0tJTykKKyAgICAgICAgICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlcnI6CisgICAgICAgICAgICAgICAgICAgIGlmIGVyci5lcnJubyBub3QgaW4gKGVycm5vLkVCVVNZLCBlcnJuby5FQUdBSU4pOgorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKKworCitkZWYgc3VwcG9ydHNfZXh0ZW5kZWRfYXR0cmlidXRlcygpOgorICAgIGlmIG5vdCBoYXNhdHRyKG9zLCAic2V0eGF0dHIiKToKKyAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgdHJ5OgorICAgICAgICB3aXRoIG9wZW4oc3VwcG9ydC5URVNURk4sICJ3YiIpIGFzIGZwOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIG9zLmZzZXR4YXR0cihmcC5maWxlbm8oKSwgYiJ1c2VyLnRlc3QiLCBiIiIpCisgICAgICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgorICAgICAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gZXJybm8uRU5PVFNVUDoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBmaW5hbGx5OgorICAgICAgICBzdXBwb3J0LnVubGluayhzdXBwb3J0LlRFU1RGTikKKyAgICAjIEtlcm5lbHMgPCAyLjYuMzkgZG9uJ3QgcmVzcGVjdCBzZXR4YXR0ciBmbGFncy4KKyAgICBrZXJuZWxfdmVyc2lvbiA9IHBsYXRmb3JtLnJlbGVhc2UoKQorICAgIG0gPSByZS5tYXRjaCgiMi42LihcZHsxLDJ9KSIsIGtlcm5lbF92ZXJzaW9uKQorICAgIHJldHVybiBtIGlzIE5vbmUgb3IgaW50KG0uZ3JvdXAoMSkpID49IDM5CisKKworQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3VwcG9ydHNfZXh0ZW5kZWRfYXR0cmlidXRlcygpLAorICAgICAgICAgICAgICAgICAgICAgIm5vIG5vbi1icm9rZW4gZXh0ZW5kZWQgYXR0cmlidXRlIHN1cHBvcnQiKQorY2xhc3MgRXh0ZW5kZWRBdHRyaWJ1dGVUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOKQorCisgICAgZGVmIF9jaGVja194YXR0cnNfc3RyKHNlbGYsIHMsIGdldHhhdHRyLCBzZXR4YXR0ciwgcmVtb3ZleGF0dHIsIGxpc3R4YXR0cik6CisgICAgICAgIGZuID0gc3VwcG9ydC5URVNURk4KKyAgICAgICAgb3BlbihmbiwgIndiIikuY2xvc2UoKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgZ2V0eGF0dHIoZm4sIHMoInVzZXIudGVzdCIpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtLmV4Y2VwdGlvbi5lcnJubywgZXJybm8uRU5PREFUQSkKKyAgICAgICAgaW5pdF94YXR0ciA9IGxpc3R4YXR0cihmbikKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGluaXRfeGF0dHIsIGxpc3QpCisgICAgICAgIHNldHhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QiKSwgYiIiKQorICAgICAgICB4YXR0ciA9IHNldChpbml0X3hhdHRyKQorICAgICAgICB4YXR0ci5hZGQoInVzZXIudGVzdCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2V0KGxpc3R4YXR0cihmbikpLCB4YXR0cikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXR4YXR0cihmbiwgYiJ1c2VyLnRlc3QiKSwgYiIiKQorICAgICAgICBzZXR4YXR0cihmbiwgcygidXNlci50ZXN0IiksIGIiaGVsbG8iLCBvcy5YQVRUUl9SRVBMQUNFKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldHhhdHRyKGZuLCBiInVzZXIudGVzdCIpLCBiImhlbGxvIikKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yKSBhcyBjbToKKyAgICAgICAgICAgIHNldHhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QiKSwgYiJieWUiLCBvcy5YQVRUUl9DUkVBVEUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FRVhJU1QpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvcikgYXMgY206CisgICAgICAgICAgICBzZXR4YXR0cihmbiwgcygidXNlci50ZXN0MiIpLCBiImJ5ZSIsIG9zLlhBVFRSX1JFUExBQ0UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FTk9EQVRBKQorICAgICAgICBzZXR4YXR0cihmbiwgcygidXNlci50ZXN0MiIpLCBiImZvbyIsIG9zLlhBVFRSX0NSRUFURSkKKyAgICAgICAgeGF0dHIuYWRkKCJ1c2VyLnRlc3QyIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZXQobGlzdHhhdHRyKGZuKSksIHhhdHRyKQorICAgICAgICByZW1vdmV4YXR0cihmbiwgcygidXNlci50ZXN0IikpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvcikgYXMgY206CisgICAgICAgICAgICBnZXR4YXR0cihmbiwgcygidXNlci50ZXN0IikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FTk9EQVRBKQorICAgICAgICB4YXR0ci5yZW1vdmUoInVzZXIudGVzdCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2V0KGxpc3R4YXR0cihmbikpLCB4YXR0cikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXR4YXR0cihmbiwgcygidXNlci50ZXN0MiIpKSwgYiJmb28iKQorICAgICAgICBzZXR4YXR0cihmbiwgcygidXNlci50ZXN0IiksIGIiYSIqMTAyNCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXR4YXR0cihmbiwgcygidXNlci50ZXN0IikpLCBiImEiKjEwMjQpCisgICAgICAgIHJlbW92ZXhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QiKSkKKyAgICAgICAgbWFueSA9IHNvcnRlZCgidXNlci50ZXN0e30iLmZvcm1hdChpKSBmb3IgaSBpbiByYW5nZSgxMDApKQorICAgICAgICBmb3IgdGhpbmcgaW4gbWFueToKKyAgICAgICAgICAgIHNldHhhdHRyKGZuLCB0aGluZywgYiJ4IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZXQobGlzdHhhdHRyKGZuKSksIHNldChpbml0X3hhdHRyKSB8IHNldChtYW55KSkKKworICAgIGRlZiBfY2hlY2tfeGF0dHJzKHNlbGYsICphcmdzKToKKyAgICAgICAgZGVmIG1ha2VfYnl0ZXMocyk6CisgICAgICAgICAgICByZXR1cm4gYnl0ZXMocywgImFzY2lpIikKKyAgICAgICAgc2VsZi5fY2hlY2tfeGF0dHJzX3N0cihzdHIsICphcmdzKQorICAgICAgICBzdXBwb3J0LnVubGluayhzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgc2VsZi5fY2hlY2tfeGF0dHJzX3N0cihtYWtlX2J5dGVzLCAqYXJncykKKworICAgIGRlZiB0ZXN0X3NpbXBsZShzZWxmKToKKyAgICAgICAgc2VsZi5fY2hlY2tfeGF0dHJzKG9zLmdldHhhdHRyLCBvcy5zZXR4YXR0ciwgb3MucmVtb3ZleGF0dHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5saXN0eGF0dHIpCisKKyAgICBkZWYgdGVzdF9scGF0aChzZWxmKToKKyAgICAgICAgc2VsZi5fY2hlY2tfeGF0dHJzKG9zLmxnZXR4YXR0ciwgb3MubHNldHhhdHRyLCBvcy5scmVtb3ZleGF0dHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5sbGlzdHhhdHRyKQorCisgICAgZGVmIHRlc3RfZmRzKHNlbGYpOgorICAgICAgICBkZWYgZ2V0eGF0dHIocGF0aCwgKmFyZ3MpOgorICAgICAgICAgICAgd2l0aCBvcGVuKHBhdGgsICJyYiIpIGFzIGZwOgorICAgICAgICAgICAgICAgIHJldHVybiBvcy5mZ2V0eGF0dHIoZnAuZmlsZW5vKCksICphcmdzKQorICAgICAgICBkZWYgc2V0eGF0dHIocGF0aCwgKmFyZ3MpOgorICAgICAgICAgICAgd2l0aCBvcGVuKHBhdGgsICJ3YiIpIGFzIGZwOgorICAgICAgICAgICAgICAgIG9zLmZzZXR4YXR0cihmcC5maWxlbm8oKSwgKmFyZ3MpCisgICAgICAgIGRlZiByZW1vdmV4YXR0cihwYXRoLCAqYXJncyk6CisgICAgICAgICAgICB3aXRoIG9wZW4ocGF0aCwgIndiIikgYXMgZnA6CisgICAgICAgICAgICAgICAgb3MuZnJlbW92ZXhhdHRyKGZwLmZpbGVubygpLCAqYXJncykKKyAgICAgICAgZGVmIGxpc3R4YXR0cihwYXRoLCAqYXJncyk6CisgICAgICAgICAgICB3aXRoIG9wZW4ocGF0aCwgInJiIikgYXMgZnA6CisgICAgICAgICAgICAgICAgcmV0dXJuIG9zLmZsaXN0eGF0dHIoZnAuZmlsZW5vKCksICphcmdzKQorICAgICAgICBzZWxmLl9jaGVja194YXR0cnMoZ2V0eGF0dHIsIHNldHhhdHRyLCByZW1vdmV4YXR0ciwgbGlzdHhhdHRyKQorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiLCAiV2luMzIgc3BlY2lmaWMgdGVzdHMiKQorY2xhc3MgV2luMzJEZXByZWNhdGVkQnl0ZXNBUEkodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGRlZiB0ZXN0X2RlcHJlY2F0ZWQoc2VsZik6CisgICAgICAgIGltcG9ydCBudAorICAgICAgICBmaWxlbmFtZSA9IG9zLmZzZW5jb2RlKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImVycm9yIiwgRGVwcmVjYXRpb25XYXJuaW5nKQorICAgICAgICAgICAgZm9yIGZ1bmMsICphcmdzIGluICgKKyAgICAgICAgICAgICAgICAobnQuX2dldGZ1bGxwYXRobmFtZSwgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChudC5faXNkaXIsIGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAob3MuYWNjZXNzLCBmaWxlbmFtZSwgb3MuUl9PSyksCisgICAgICAgICAgICAgICAgKG9zLmNoZGlyLCBmaWxlbmFtZSksCisgICAgICAgICAgICAgICAgKG9zLmNobW9kLCBmaWxlbmFtZSwgMG83NzcpLAorICAgICAgICAgICAgICAgIChvcy5nZXRjd2RiLCksCisgICAgICAgICAgICAgICAgKG9zLmxpbmssIGZpbGVuYW1lLCBmaWxlbmFtZSksCisgICAgICAgICAgICAgICAgKG9zLmxpc3RkaXIsIGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAob3MubHN0YXQsIGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAob3MubWtkaXIsIGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAob3Mub3BlbiwgZmlsZW5hbWUsIG9zLk9fUkRPTkxZKSwKKyAgICAgICAgICAgICAgICAob3MucmVuYW1lLCBmaWxlbmFtZSwgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChvcy5ybWRpciwgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChvcy5zdGFydGZpbGUsIGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAob3Muc3RhdCwgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChvcy51bmxpbmssIGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAob3MudXRpbWUsIGZpbGVuYW1lKSwKKyAgICAgICAgICAgICk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRGVwcmVjYXRpb25XYXJuaW5nLCBmdW5jLCAqYXJncykKKworICAgIEBzdXBwb3J0LnNraXBfdW5sZXNzX3N5bWxpbmsKKyAgICBkZWYgdGVzdF9zeW1saW5rKHNlbGYpOgorICAgICAgICBmaWxlbmFtZSA9IG9zLmZzZW5jb2RlKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImVycm9yIiwgRGVwcmVjYXRpb25XYXJuaW5nKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRGVwcmVjYXRpb25XYXJuaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3Muc3ltbGluaywgZmlsZW5hbWUsIGZpbGVuYW1lKQorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIob3MsICdnZXRfdGVybWluYWxfc2l6ZScpLCAicmVxdWlyZXMgb3MuZ2V0X3Rlcm1pbmFsX3NpemUiKQorY2xhc3MgVGVybXNpemVUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHRlc3RfZG9lc19ub3RfY3Jhc2goc2VsZik6CisgICAgICAgICIiIkNoZWNrIGlmIGdldF90ZXJtaW5hbF9zaXplKCkgcmV0dXJucyBhIG1lYW5pbmdmdWwgdmFsdWUuCisKKyAgICAgICAgVGhlcmUncyBubyBlYXN5IHBvcnRhYmxlIHdheSB0byBhY3R1YWxseSBjaGVjayB0aGUgc2l6ZSBvZiB0aGUKKyAgICAgICAgdGVybWluYWwsIHNvIGxldCdzIGNoZWNrIGlmIGl0IHJldHVybnMgc29tZXRoaW5nIHNlbnNpYmxlIGluc3RlYWQuCisgICAgICAgICIiIgorICAgICAgICB0cnk6CisgICAgICAgICAgICBzaXplID0gb3MuZ2V0X3Rlcm1pbmFsX3NpemUoKQorICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgorICAgICAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICJ3aW4zMiIgb3IgZS5lcnJubyBpbiAoZXJybm8uRUlOVkFMLCBlcnJuby5FTk9UVFkpOgorICAgICAgICAgICAgICAgICMgVW5kZXIgd2luMzIgYSBnZW5lcmljIE9TRXJyb3IgY2FuIGJlIHRocm93biBpZiB0aGUKKyAgICAgICAgICAgICAgICAjIGhhbmRsZSBjYW5ub3QgYmUgcmV0cmlldmVkCisgICAgICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiZmFpbGVkIHRvIHF1ZXJ5IHRlcm1pbmFsIHNpemUiKQorICAgICAgICAgICAgcmFpc2UKKworICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChzaXplLmNvbHVtbnMsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKHNpemUubGluZXMsIDApCisKKyAgICBkZWYgdGVzdF9zdHR5X21hdGNoKHNlbGYpOgorICAgICAgICAiIiJDaGVjayBpZiBzdHR5IHJldHVybnMgdGhlIHNhbWUgcmVzdWx0cworCisgICAgICAgIHN0dHkgYWN0dWFsbHkgdGVzdHMgc3RkaW4sIHNvIGdldF90ZXJtaW5hbF9zaXplIGlzIGludm9rZWQgb24KKyAgICAgICAgc3RkaW4gZXhwbGljaXRseS4gSWYgc3R0eSBzdWNjZWVkZWQsIHRoZW4gZ2V0X3Rlcm1pbmFsX3NpemUoKQorICAgICAgICBzaG91bGQgd29yayB0b28uCisgICAgICAgICIiIgorICAgICAgICB0cnk6CisgICAgICAgICAgICBzaXplID0gc3VicHJvY2Vzcy5jaGVja19vdXRwdXQoWydzdHR5JywgJ3NpemUnXSkuZGVjb2RlKCkuc3BsaXQoKQorICAgICAgICBleGNlcHQgKEZpbGVOb3RGb3VuZEVycm9yLCBzdWJwcm9jZXNzLkNhbGxlZFByb2Nlc3NFcnJvcik6CisgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJzdHR5IGludm9jYXRpb24gZmFpbGVkIikKKyAgICAgICAgZXhwZWN0ZWQgPSAoaW50KHNpemVbMV0pLCBpbnQoc2l6ZVswXSkpICMgcmV2ZXJzZWQgb3JkZXIKKworICAgICAgICB0cnk6CisgICAgICAgICAgICBhY3R1YWwgPSBvcy5nZXRfdGVybWluYWxfc2l6ZShzeXMuX19zdGRpbl9fLmZpbGVubygpKQorICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgorICAgICAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICJ3aW4zMiIgb3IgZS5lcnJubyBpbiAoZXJybm8uRUlOVkFMLCBlcnJuby5FTk9UVFkpOgorICAgICAgICAgICAgICAgICMgVW5kZXIgd2luMzIgYSBnZW5lcmljIE9TRXJyb3IgY2FuIGJlIHRocm93biBpZiB0aGUKKyAgICAgICAgICAgICAgICAjIGhhbmRsZSBjYW5ub3QgYmUgcmV0cmlldmVkCisgICAgICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiZmFpbGVkIHRvIHF1ZXJ5IHRlcm1pbmFsIHNpemUiKQorICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHBlY3RlZCwgYWN0dWFsKQorCisKK0BzdXBwb3J0LnJlYXBfdGhyZWFkcwogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KAogICAgICAgICBGaWxlVGVzdHMsCiAgICAgICAgIFN0YXRBdHRyaWJ1dGVUZXN0cywKICAgICAgICAgRW52aXJvblRlc3RzLAogICAgICAgICBXYWxrVGVzdHMsCisgICAgICAgIEZ3YWxrVGVzdHMsCiAgICAgICAgIE1ha2VkaXJUZXN0cywKICAgICAgICAgRGV2TnVsbFRlc3RzLAogICAgICAgICBVUmFuZG9tVGVzdHMsCkBAIC0xMjc2LDkgKzE5NDEsMTUgQEAKICAgICAgICAgV2luMzJLaWxsVGVzdHMsCiAgICAgICAgIFdpbjMyU3ltbGlua1Rlc3RzLAogICAgICAgICBGU0VuY29kaW5nVGVzdHMsCisgICAgICAgIERldmljZUVuY29kaW5nVGVzdHMsCiAgICAgICAgIFBpZFRlc3RzLAogICAgICAgICBMb2dpblRlc3RzLAogICAgICAgICBMaW5rVGVzdHMsCisgICAgICAgIFRlc3RTZW5kZmlsZSwKKyAgICAgICAgUHJvZ3JhbVByaW9yaXR5VGVzdHMsCisgICAgICAgIEV4dGVuZGVkQXR0cmlidXRlVGVzdHMsCisgICAgICAgIFdpbjMyRGVwcmVjYXRlZEJ5dGVzQVBJLAorICAgICAgICBUZXJtc2l6ZVRlc3RzLAogICAgICkKIAogaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfb3NzYXVkaW9kZXYucHkgYi9MaWIvdGVzdC90ZXN0X29zc2F1ZGlvZGV2LnB5CmluZGV4IDljYjg5ZDYuLjM5MDhhMDUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfb3NzYXVkaW9kZXYucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9vc3NhdWRpb2Rldi5weQpAQCAtMTcwLDYgKzE3MCwyMiBAQAogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLmFzc2VydFRydWUoZHNwLmNsb3NlZCkKIAorICAgIGRlZiB0ZXN0X29uX2Nsb3NlZChzZWxmKToKKyAgICAgICAgZHNwID0gb3NzYXVkaW9kZXYub3BlbigndycpCisgICAgICAgIGRzcC5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGRzcC5maWxlbm8pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGRzcC5yZWFkLCAxKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBkc3Aud3JpdGUsIGIneCcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGRzcC53cml0ZWFsbCwgYid4JykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZHNwLmJ1ZnNpemUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGRzcC5vYnVmY291bnQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGRzcC5vYnVmY291bnQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGRzcC5vYnVmZnJlZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZHNwLmdldHB0cikKKworICAgICAgICBtaXhlciA9IG9zc2F1ZGlvZGV2Lm9wZW5taXhlcigpCisgICAgICAgIG1peGVyLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbWl4ZXIuZmlsZW5vKQogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgdHJ5OgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9vc3hfZW52LnB5IGIvTGliL3Rlc3QvdGVzdF9vc3hfZW52LnB5CmluZGV4IDhiM2RmMzcuLjI0ZWMyYjQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfb3N4X2Vudi5weQorKysgYi9MaWIvdGVzdC90ZXN0X29zeF9lbnYucHkKQEAgLTUsNiArNSw3IEBACiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgRW52aXJvbm1lbnRWYXJHdWFyZCwgcnVuX3VuaXR0ZXN0CiBpbXBvcnQgc3VicHJvY2VzcwogaW1wb3J0IHN5cworaW1wb3J0IHN5c2NvbmZpZwogaW1wb3J0IHVuaXR0ZXN0CiAKIGNsYXNzIE9TWEVudmlyb25tZW50VmFyaWFibGVUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CkBAIC0yNyw4ICsyOCw2IEBACiAgICAgICAgIHNlbGYuX2NoZWNrX3N5cygnUFlUSE9ORVhFQ1VUQUJMRScsICc9PScsICdzeXMuZXhlY3V0YWJsZScpCiAKIGRlZiB0ZXN0X21haW4oKToKLSAgICBmcm9tIGRpc3R1dGlscyBpbXBvcnQgc3lzY29uZmlnCi0KICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2RhcndpbicgYW5kIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignV0lUSF9ORVhUX0ZSQU1FV09SSycpOgogICAgICAgICBydW5fdW5pdHRlc3QoT1NYRW52aXJvbm1lbnRWYXJpYWJsZVRlc3RDYXNlKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3BhY2thZ2luZy5weSBiL0xpYi90ZXN0L3Rlc3RfcGFja2FnaW5nLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1MGQ2NjEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X3BhY2thZ2luZy5weQpAQCAtMCwwICsxLDUgQEAKK2ltcG9ydCBzeXMKK2Zyb20gcGFja2FnaW5nLnRlc3RzLl9fbWFpbl9fIGltcG9ydCB0ZXN0X21haW4KKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wYXJzZXIucHkgYi9MaWIvdGVzdC90ZXN0X3BhcnNlci5weQppbmRleCAwMjBhY2Q1Li5iNmY4MWZiIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BhcnNlci5weQorKysgYi9MaWIvdGVzdC90ZXN0X3BhcnNlci5weQpAQCAtNTAsNiArNTAsMTAgQEAKICAgICAgICAgc2VsZi5jaGVja19zdWl0ZSgiZGVmIGYoKTogKHlpZWxkIDEpKjIiKQogICAgICAgICBzZWxmLmNoZWNrX3N1aXRlKCJkZWYgZigpOiByZXR1cm47IHlpZWxkIDEiKQogICAgICAgICBzZWxmLmNoZWNrX3N1aXRlKCJkZWYgZigpOiB5aWVsZCAxOyByZXR1cm4iKQorICAgICAgICBzZWxmLmNoZWNrX3N1aXRlKCJkZWYgZigpOiB5aWVsZCBmcm9tIDEiKQorICAgICAgICBzZWxmLmNoZWNrX3N1aXRlKCJkZWYgZigpOiB4ID0geWllbGQgZnJvbSAxIikKKyAgICAgICAgc2VsZi5jaGVja19zdWl0ZSgiZGVmIGYoKTogZigoeWllbGQgZnJvbSAxKSkiKQorICAgICAgICBzZWxmLmNoZWNrX3N1aXRlKCJkZWYgZigpOiB5aWVsZCAxOyByZXR1cm4gMSIpCiAgICAgICAgIHNlbGYuY2hlY2tfc3VpdGUoImRlZiBmKCk6XG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiAgICBmb3IgeCBpbiByYW5nZSgzMCk6XG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgIiAgICAgICAgeWllbGQgeFxuIikKQEAgLTYxNCw2ICs2MTgsMTIgQEAKIAogICAgICMgWFhYIHRlc3RzIGZvciBwaWNrbGluZyBhbmQgdW5waWNrbGluZyBvZiBTVCBvYmplY3RzIHNob3VsZCBnbyBoZXJlCiAKK2NsYXNzIE90aGVyUGFyc2VyQ2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF90d29fYXJnc190b19leHByKHNlbGYpOgorICAgICAgICAjIFNlZSBidWcgIzEyMjY0CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIHBhcnNlci5leHByKCJhIiwgImIiKQogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoCkBAIC02MjIsNiArNjMyLDcgQEAKICAgICAgICAgQ29tcGlsZVRlc3RDYXNlLAogICAgICAgICBQYXJzZXJTdGFja0xpbWl0VGVzdENhc2UsCiAgICAgICAgIFNUT2JqZWN0VGVzdENhc2UsCisgICAgICAgIE90aGVyUGFyc2VyQ2FzZSwKICAgICApCiAKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wZGIucHkgYi9MaWIvdGVzdC90ZXN0X3BkYi5weQppbmRleCBkODYxZGY1Li5jMTk3YWZmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BkYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X3BkYi5weQpAQCAtMjAsOSArMjAsMTIgQEAKICAgICBkZWYgX19lbnRlcl9fKHNlbGYpOgogICAgICAgICBzZWxmLnJlYWxfc3RkaW4gPSBzeXMuc3RkaW4KICAgICAgICAgc3lzLnN0ZGluID0gX0Zha2VJbnB1dChzZWxmLmlucHV0KQorICAgICAgICBzZWxmLm9yaWdfdHJhY2UgPSBzeXMuZ2V0dHJhY2UoKSBpZiBoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgZWxzZSBOb25lCiAKICAgICBkZWYgX19leGl0X18oc2VsZiwgKmV4Yyk6CiAgICAgICAgIHN5cy5zdGRpbiA9IHNlbGYucmVhbF9zdGRpbgorICAgICAgICBpZiBzZWxmLm9yaWdfdHJhY2U6CisgICAgICAgICAgICBzeXMuc2V0dHJhY2Uoc2VsZi5vcmlnX3RyYWNlKQogCiAKIGRlZiB0ZXN0X3BkYl9kaXNwbGF5aG9vaygpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wZWVwaG9sZXIucHkgYi9MaWIvdGVzdC90ZXN0X3BlZXBob2xlci5weQppbmRleCA1MzcxOWQzLi4xZTc4MmNmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BlZXBob2xlci5weQorKysgYi9MaWIvdGVzdC90ZXN0X3BlZXBob2xlci5weQpAQCAtMywxMyArMywxNiBAQAogaW1wb3J0IHN5cwogZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KIGltcG9ydCB1bml0dGVzdAorZnJvbSBtYXRoIGltcG9ydCBjb3B5c2lnbgogCiBkZWYgZGlzYXNzZW1ibGUoZnVuYyk6CiAgICAgZiA9IFN0cmluZ0lPKCkKICAgICB0bXAgPSBzeXMuc3Rkb3V0CiAgICAgc3lzLnN0ZG91dCA9IGYKLSAgICBkaXMuZGlzKGZ1bmMpCi0gICAgc3lzLnN0ZG91dCA9IHRtcAorICAgIHRyeToKKyAgICAgICAgZGlzLmRpcyhmdW5jKQorICAgIGZpbmFsbHk6CisgICAgICAgIHN5cy5zdGRvdXQgPSB0bXAKICAgICByZXN1bHQgPSBmLmdldHZhbHVlKCkKICAgICBmLmNsb3NlKCkKICAgICByZXR1cm4gcmVzdWx0CkBAIC0xNyw2ICsyMCw3IEBACiBkZWYgZGlzX3NpbmdsZShsaW5lKToKICAgICByZXR1cm4gZGlzYXNzZW1ibGUoY29tcGlsZShsaW5lLCAnJywgJ3NpbmdsZScpKQogCisKIGNsYXNzIFRlc3RUcmFuZm9ybXModW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfdW5vdChzZWxmKToKQEAgLTk5LDYgKzEwMywxMiBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihlbGVtLCBhc20pCiAgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEluKCdCVUlMRF9UVVBMRScsIGFzbSkKIAorICAgICAgICAjIExvbmcgdHVwbGVzIHNob3VsZCBiZSBmb2xkZWQgdG9vLgorICAgICAgICBhc20gPSBkaXNfc2luZ2xlKHJlcHIodHVwbGUocmFuZ2UoMTAwMDApKSkpCisgICAgICAgICMgT25lIExPQURfQ09OU1QgZm9yIHRoZSB0dXBsZSwgb25lIGZvciB0aGUgTm9uZSByZXR1cm4gdmFsdWUKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhc20uY291bnQoJ0xPQURfQ09OU1QnKSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignQlVJTERfVFVQTEUnLCBhc20pCisKICAgICAgICAgIyBCdWcgMTA1MzgxOTogIFR1cGxlIG9mIGNvbnN0YW50cyBtaXNpZGVudGlmaWVkIHdoZW4gcHJlc2VudGVkIHdpdGg6CiAgICAgICAgICMgLiAuIC4gb3Bjb2RlX3dpdGhfYXJnIDEwMCAgIHVuYXJ5X29wY29kZSAgIEJVSUxEX1RVUExFIDEgIC4gLiAuCiAgICAgICAgICMgVGhlIGZvbGxvd2luZyB3b3VsZCBzZWdmYXVsdCB1cG9uIGNvbXBpbGF0aW9uCkBAIC0yMDgsMTQgKzIxOCwxMyBAQAogICAgICAgICAjIG91dCBvZiByYW5nZQogICAgICAgICBhc20gPSBkaXNfc2luZ2xlKCciZnV1IlsxMF0nKQogICAgICAgICBzZWxmLmFzc2VydEluKCdCSU5BUllfU1VCU0NSJywgYXNtKQotICAgICAgICAjIG5vbi1CTVAgY2hhciAoc2VlICM1MDU3KQotICAgICAgICBhc20gPSBkaXNfc2luZ2xlKCciXFUwMDAxMjM0NSJbMF0nKQotICAgICAgICBzZWxmLmFzc2VydEluKCdCSU5BUllfU1VCU0NSJywgYXNtKQotCiAKICAgICBkZWYgdGVzdF9mb2xkaW5nX29mX3VuYXJ5b3BzX29uX2NvbnN0YW50cyhzZWxmKToKICAgICAgICAgZm9yIGxpbmUsIGVsZW0gaW4gKAogICAgICAgICAgICAgKCctMC41JywgJygtMC41KScpLCAgICAgICAgICAgICAgICAgICAgICMgdW5hcnkgbmVnYXRpdmUKKyAgICAgICAgICAgICgnLTAuMCcsICcoLTAuMCknKSwgICAgICAgICAgICAgICAgICAgICAjIC0wLjAKKyAgICAgICAgICAgICgnLSgxLjAtMS4wKScsJygtMC4wKScpLCAgICAgICAgICAgICAgICAjIC0wLjAgYWZ0ZXIgZm9sZGluZworICAgICAgICAgICAgKCctMCcsICcoMCknKSwgICAgICAgICAgICAgICAgICAgICAgICAgICMgLTAKICAgICAgICAgICAgICgnfi0yJywgJygxKScpLCAgICAgICAgICAgICAgICAgICAgICAgICAjIHVuYXJ5IGludmVydAogICAgICAgICAgICAgKCcrMScsICcoMSknKSwgICAgICAgICAgICAgICAgICAgICAgICAgICMgdW5hcnkgcG9zaXRpdmUKICAgICAgICAgKToKQEAgLTIyMyw2ICsyMzIsMTMgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oZWxlbSwgYXNtLCBhc20pCiAgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEluKCdVTkFSWV8nLCBhc20pCiAKKyAgICAgICAgIyBDaGVjayB0aGF0IC0wLjAgd29ya3MgYWZ0ZXIgbWFyc2hhbGluZworICAgICAgICBkZWYgbmVnemVybygpOgorICAgICAgICAgICAgcmV0dXJuIC0oMS4wLTEuMCkKKworICAgICAgICBzZWxmLmFzc2VydE5vdEluKCdVTkFSWV8nLCBkaXNhc3NlbWJsZShuZWd6ZXJvKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNvcHlzaWduKDEuMCwgbmVnemVybygpKSA8IDApCisKICAgICAgICAgIyBWZXJpZnkgdGhhdCB1bmZvbGRhYmxlcyBhcmUgc2tpcHBlZAogICAgICAgICBmb3IgbGluZSwgZWxlbSBpbiAoCiAgICAgICAgICAgICAoJy0iYWJjIicsICIoJ2FiYycpIiksICAgICAgICAgICAgICAgICAgIyB1bmFyeSBuZWdhdGl2ZQpAQCAtMjg1LDYgKzMwMSwyNSBAQAogICAgICAgICBhc20gPSBkaXNhc3NlbWJsZShmKQogICAgICAgICBzZWxmLmFzc2VydE5vdEluKCdCSU5BUllfQUREJywgYXNtKQogCisgICAgZGVmIHRlc3RfY29uc3RhbnRfZm9sZGluZyhzZWxmKToKKyAgICAgICAgIyBJc3N1ZSAjMTEyNDQ6IGFnZ3Jlc3NpdmUgY29uc3RhbnQgZm9sZGluZy4KKyAgICAgICAgZXhwcnMgPSBbCisgICAgICAgICAgICAiMyAqIC01IiwKKyAgICAgICAgICAgICItMyAqIDUiLAorICAgICAgICAgICAgIjIgKiAoMyAqIDQpIiwKKyAgICAgICAgICAgICIoMiAqIDMpICogNCIsCisgICAgICAgICAgICAiKC0xLCAyLCAzKSIsCisgICAgICAgICAgICAiKDEsIC0yLCAzKSIsCisgICAgICAgICAgICAiKDEsIDIsIC0zKSIsCisgICAgICAgICAgICAiKDEsIDIsIC0zKSAqIDYiLAorICAgICAgICAgICAgImxhbWJkYSB4OiB4IGluIHsoMyAqIC01KSArICgtMSAtIDYpLCAoMSwgLTIsIDMpICogMiwgTm9uZX0iLAorICAgICAgICBdCisgICAgICAgIGZvciBlIGluIGV4cHJzOgorICAgICAgICAgICAgYXNtID0gZGlzX3NpbmdsZShlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RJbignVU5BUllfJywgYXNtLCBlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RJbignQklOQVJZXycsIGFzbSwgZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ0JVSUxEXycsIGFzbSwgZSkKKwogY2xhc3MgVGVzdEJ1Z2xldHModW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfYnVnXzExNTEwKHNlbGYpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wZXAyNzcucHkgYi9MaWIvdGVzdC90ZXN0X3BlcDI3Ny5weQppbmRleCA2ZDg5MWU1Li40YjE2Y2JiIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BlcDI3Ny5weQorKysgYi9MaWIvdGVzdC90ZXN0X3BlcDI3Ny5weQpAQCAtMSw2ICsxLDkgQEAKICMgVGVzdCB0aGUgVW5pY29kZSB2ZXJzaW9ucyBvZiBub3JtYWwgZmlsZSBmdW5jdGlvbnMKICMgb3Blbiwgb3Mub3Blbiwgb3Muc3RhdC4gb3MubGlzdGRpciwgb3MucmVuYW1lLCBvcy5yZW1vdmUsIG9zLm1rZGlyLCBvcy5jaGRpciwgb3Mucm1kaXIKLWltcG9ydCBzeXMsIG9zLCB1bml0dGVzdAoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCB3YXJuaW5ncwogZnJvbSB1bmljb2RlZGF0YSBpbXBvcnQgbm9ybWFsaXplCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIApAQCAtMzgsOCArNDEsOCBAQAogICAgICAgICAnMTdfXHUyMDAxXHUyMDAxXHUyMDAxQScsCiAgICAgICAgICcxOF9cdTIwMDNcdTIwMDNcdTIwMDNBJywgICMgPT0gTkZDKCdcdTIwMDFcdTIwMDFcdTIwMDFBJykKICAgICAgICAgJzE5X1x1MDAyMFx1MDAyMFx1MDAyMEEnLCAgIyAnXHUwMDIwJyA9PSAnICcgPT0gTkZLQygnXHUyMDAwJykgPT0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgTkZLQygnXHUyMDAxJykgPT0gTkZLQygnXHUyMDAzJykKLV0pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgIE5GS0MoJ1x1MjAwMScpID09IE5GS0MoJ1x1MjAwMycpCisgICAgXSkKIAogCiAjIElzIGl0IFVuaWNvZGUtZnJpZW5kbHk/CkBAIC03MSw3ICs3NCw3IEBACiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICB0cnk6CiAgICAgICAgICAgICBvcy5ta2RpcihzdXBwb3J0LlRFU1RGTikKLSAgICAgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgIGV4Y2VwdCBGaWxlRXhpc3RzRXJyb3I6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIGZpbGVzID0gc2V0KCkKICAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5maWxlczoKQEAgLTkwLDE1ICs5MywxNyBAQAogICAgICAgICAgICAgcmV0dXJuIG5vcm1hbGl6ZShzZWxmLm5vcm1hbF9mb3JtLCBzKQogICAgICAgICByZXR1cm4gcwogCi0gICAgZGVmIF9hcHBseV9mYWlsdXJlKHNlbGYsIGZuLCBmaWxlbmFtZSwgZXhwZWN0ZWRfZXhjZXB0aW9uLAotICAgICAgICAgICAgICAgICAgICAgICBjaGVja19mbl9pbl9leGNlcHRpb24gPSBUcnVlKToKKyAgICBkZWYgX2FwcGx5X2ZhaWx1cmUoc2VsZiwgZm4sIGZpbGVuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZF9leGNlcHRpb249RmlsZU5vdEZvdW5kRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrX2ZpbGVuYW1lPVRydWUpOgogICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKGV4cGVjdGVkX2V4Y2VwdGlvbikgYXMgYzoKICAgICAgICAgICAgIGZuKGZpbGVuYW1lKQogICAgICAgICBleGNfZmlsZW5hbWUgPSBjLmV4Y2VwdGlvbi5maWxlbmFtZQotICAgICAgICAjIHRoZSAiZmlsZW5hbWUiIGV4Y2VwdGlvbiBhdHRyaWJ1dGUgbWF5IGJlIGVuY29kZWQKLSAgICAgICAgaWYgaXNpbnN0YW5jZShleGNfZmlsZW5hbWUsIGJ5dGVzKToKLSAgICAgICAgICAgIGZpbGVuYW1lID0gZmlsZW5hbWUuZW5jb2RlKHN5cy5nZXRmaWxlc3lzdGVtZW5jb2RpbmcoKSkKLSAgICAgICAgaWYgY2hlY2tfZm5faW5fZXhjZXB0aW9uOgorICAgICAgICAjIGxpc3RkaXIgbWF5IGFwcGVuZCBhIHdpbGRjYXJkIHRvIHRoZSBmaWxlbmFtZQorICAgICAgICBpZiBmbiBpcyBvcy5saXN0ZGlyIGFuZCBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKKyAgICAgICAgICAgIGV4Y19maWxlbmFtZSwgXywgd2lsZGNhcmQgPSBleGNfZmlsZW5hbWUucnBhcnRpdGlvbihvcy5zZXApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdpbGRjYXJkLCAnKi4qJykKKyAgICAgICAgaWYgY2hlY2tfZmlsZW5hbWU6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4Y19maWxlbmFtZSwgZmlsZW5hbWUsICJGdW5jdGlvbiAnJXMoJWEpIGZhaWxlZCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3aXRoIGJhZCBmaWxlbmFtZSBpbiB0aGUgZXhjZXB0aW9uOiAlYSIgJQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZm4uX19uYW1lX18sIGZpbGVuYW1lLCBleGNfZmlsZW5hbWUpKQpAQCAtMTA3LDEzICsxMTIsMTggQEAKICAgICAgICAgIyBQYXNzIG5vbi1leGlzdGluZyBVbmljb2RlIGZpbGVuYW1lcyBhbGwgb3ZlciB0aGUgcGxhY2UuCiAgICAgICAgIGZvciBuYW1lIGluIHNlbGYuZmlsZXM6CiAgICAgICAgICAgICBuYW1lID0gIm5vdF8iICsgbmFtZQotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcGVuLCBuYW1lLCBJT0Vycm9yKQotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5zdGF0LCBuYW1lLCBPU0Vycm9yKQotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5jaGRpciwgbmFtZSwgT1NFcnJvcikKLSAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3Mucm1kaXIsIG5hbWUsIE9TRXJyb3IpCi0gICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLnJlbW92ZSwgbmFtZSwgT1NFcnJvcikKLSAgICAgICAgICAgICMgbGlzdGRpciBtYXkgYXBwZW5kIGEgd2lsZGNhcmQgdG8gdGhlIGZpbGVuYW1lLCBzbyBkb250IGNoZWNrCi0gICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLmxpc3RkaXIsIG5hbWUsIE9TRXJyb3IsIEZhbHNlKQorICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcGVuLCBuYW1lKQorICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5zdGF0LCBuYW1lKQorICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5jaGRpciwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3Mucm1kaXIsIG5hbWUpCisgICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLnJlbW92ZSwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3MubGlzdGRpciwgbmFtZSkKKworICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInOgorICAgICAgICAjIFdpbmRvd3MgaXMgbHVuYXRpYy4gSXNzdWUgIzEzMzY2LgorICAgICAgICBfbGlzdGRpcl9mYWlsdXJlID0gTm90QURpcmVjdG9yeUVycm9yLCBGaWxlTm90Rm91bmRFcnJvcgorICAgIGVsc2U6CisgICAgICAgIF9saXN0ZGlyX2ZhaWx1cmUgPSBOb3RBRGlyZWN0b3J5RXJyb3IKIAogICAgIGRlZiB0ZXN0X29wZW4oc2VsZik6CiAgICAgICAgIGZvciBuYW1lIGluIHNlbGYuZmlsZXM6CkBAIC0xMjEsMTIgKzEzMSwxMyBAQAogICAgICAgICAgICAgZi53cml0ZSgobmFtZSsnXG4nKS5lbmNvZGUoInV0Zi04IikpCiAgICAgICAgICAgICBmLmNsb3NlKCkKICAgICAgICAgICAgIG9zLnN0YXQobmFtZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3MubGlzdGRpciwgbmFtZSwgc2VsZi5fbGlzdGRpcl9mYWlsdXJlKQogCiAgICAgIyBTa2lwIHRoZSB0ZXN0IG9uIGRhcndpbiwgYmVjYXVzZSBkYXJ3aW4gZG9lcyBub3JtYWxpemUgdGhlIGZpbGVuYW1lIHRvCiAgICAgIyBORkQgKGEgdmFyaWFudCBvZiBVbmljb2RlIE5GRCBmb3JtKS4gTm9ybWFsaXplIHRoZSBmaWxlbmFtZSB0byBORkMsIE5GS0MsCiAgICAgIyBORktEIGluIFB5dGhvbiBpcyB1c2VsZXNzLCBiZWNhdXNlIGRhcndpbiB3aWxsIG5vcm1hbGl6ZSBpdCBsYXRlciBhbmQgc28KICAgICAjIG9wZW4oKSwgb3Muc3RhdCgpLCBldGMuIGRvbid0IHJhaXNlIGFueSBleGNlcHRpb24uCi0gICAgQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0gPT0gJ2RhcndpbicsICdpcnJldmVsYW50IHRlc3Qgb24gTWFjIE9TIFgnKQorICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLCAnaXJyZWxldmFudCB0ZXN0IG9uIE1hYyBPUyBYJykKICAgICBkZWYgdGVzdF9ub3JtYWxpemUoc2VsZik6CiAgICAgICAgIGZpbGVzID0gc2V0KHNlbGYuZmlsZXMpCiAgICAgICAgIG90aGVycyA9IHNldCgpCkBAIC0xMzQsMjEgKzE0NSwyMiBAQAogICAgICAgICAgICAgb3RoZXJzIHw9IHNldChub3JtYWxpemUobmYsIGZpbGUpIGZvciBmaWxlIGluIGZpbGVzKQogICAgICAgICBvdGhlcnMgLT0gZmlsZXMKICAgICAgICAgZm9yIG5hbWUgaW4gb3RoZXJzOgotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcGVuLCBuYW1lLCBJT0Vycm9yKQotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5zdGF0LCBuYW1lLCBPU0Vycm9yKQotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5jaGRpciwgbmFtZSwgT1NFcnJvcikKLSAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3Mucm1kaXIsIG5hbWUsIE9TRXJyb3IpCi0gICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLnJlbW92ZSwgbmFtZSwgT1NFcnJvcikKLSAgICAgICAgICAgICMgbGlzdGRpciBtYXkgYXBwZW5kIGEgd2lsZGNhcmQgdG8gdGhlIGZpbGVuYW1lLCBzbyBkb250IGNoZWNrCi0gICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLmxpc3RkaXIsIG5hbWUsIE9TRXJyb3IsIEZhbHNlKQorICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcGVuLCBuYW1lKQorICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5zdGF0LCBuYW1lKQorICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5jaGRpciwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3Mucm1kaXIsIG5hbWUpCisgICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLnJlbW92ZSwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3MubGlzdGRpciwgbmFtZSkKIAogICAgICMgU2tpcCB0aGUgdGVzdCBvbiBkYXJ3aW4sIGJlY2F1c2UgZGFyd2luIHVzZXMgYSBub3JtYWxpemF0aW9uIGRpZmZlcmVudAogICAgICMgdGhhbiBQeXRob24gTkZEIG5vcm1hbGl6YXRpb246IGZpbGVuYW1lcyBhcmUgZGlmZmVyZW50IGV2ZW4gaWYgd2UgdXNlCiAgICAgIyBQeXRob24gTkZEIG5vcm1hbGl6YXRpb24uCi0gICAgQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0gPT0gJ2RhcndpbicsICdpcnJldmVsYW50IHRlc3Qgb24gTWFjIE9TIFgnKQorICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLCAnaXJyZWxldmFudCB0ZXN0IG9uIE1hYyBPUyBYJykKICAgICBkZWYgdGVzdF9saXN0ZGlyKHNlbGYpOgogICAgICAgICBzZjAgPSBzZXQoc2VsZi5maWxlcykKLSAgICAgICAgZjEgPSBvcy5saXN0ZGlyKHN1cHBvcnQuVEVTVEZOLmVuY29kZShzeXMuZ2V0ZmlsZXN5c3RlbWVuY29kaW5nKCkpKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIGYxID0gb3MubGlzdGRpcihzdXBwb3J0LlRFU1RGTi5lbmNvZGUoc3lzLmdldGZpbGVzeXN0ZW1lbmNvZGluZygpKSkKICAgICAgICAgZjIgPSBvcy5saXN0ZGlyKHN1cHBvcnQuVEVTVEZOKQogICAgICAgICBzZjIgPSBzZXQob3MucGF0aC5qb2luKHN1cHBvcnQuVEVTVEZOLCBmKSBmb3IgZiBpbiBmMikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZjAsIHNmMiwgIiVhICE9ICVhIiAlIChzZjAsIHNmMikpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3BlcDI5Mi5weSBiL0xpYi90ZXN0L3Rlc3RfcGVwMjkyLnB5CmluZGV4IDExOWM3ZWEuLjZkYThkMmUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcGVwMjkyLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcGVwMjkyLnB5CkBAIC00MiwxOSArNDIsNiBAQAogICAgICAgICBzID0gVGVtcGxhdGUoJyR3aG8gbGlrZXMgJCQnKQogICAgICAgICBlcShzLnN1YnN0aXR1dGUoZGljdCh3aG89J3RpbScsIHdoYXQ9J2hhbScpKSwgJ3RpbSBsaWtlcyAkJykKIAotICAgIGRlZiB0ZXN0X2ludmFsaWQoc2VsZik6Ci0gICAgICAgIGNsYXNzIE15UGF0dGVybihUZW1wbGF0ZSk6Ci0gICAgICAgICAgICBwYXR0ZXJuID0gciIiIgotICAgICAgICAgICAgKD86Ci0gICAgICAgICAgICAoP1A8aW52YWxpZD4pICAgICAgICAgICAgfAotICAgICAgICAgICAgKD9QPGVzY2FwZWQ+JShkZWxpbSlzKSAgIHwKLSAgICAgICAgICAgIEAoP1A8bmFtZWQ+JShpZClzKSAgICAgICB8Ci0gICAgICAgICAgICBAeyg/UDxicmFjZWQ+JShpZClzKX0gICAgCi0gICAgICAgICAgICApCi0gICAgICAgICAgICAiIiIKLSAgICAgICAgcyA9IE15UGF0dGVybignJCcpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHMuc3Vic3RpdHV0ZSwgZGljdCgpKSAKLQogICAgIGRlZiB0ZXN0X3BlcmNlbnRzKHNlbGYpOgogICAgICAgICBlcSA9IHNlbGYuYXNzZXJ0RXF1YWwKICAgICAgICAgcyA9IFRlbXBsYXRlKCclKGZvbylzICRmb28gJHtmb299JykKQEAgLTE3Miw2ICsxNTksMjYgQEAKICAgICAgICAgdmFsID0gdC5zYWZlX3N1YnN0aXR1dGUoeydsb2NhdGlvbic6ICdDbGV2ZWxhbmQnfSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2YWwsICdQeUNvbiBpbiBDbGV2ZWxhbmQnKQogCisgICAgZGVmIHRlc3RfaW52YWxpZF93aXRoX25vX2xpbmVzKHNlbGYpOgorICAgICAgICAjIFRoZSBlcnJvciBmb3JtYXR0aW5nIGZvciBpbnZhbGlkIHRlbXBsYXRlcworICAgICAgICAjIGhhcyBhIHNwZWNpYWwgY2FzZSBmb3Igbm8gZGF0YSB0aGF0IHRoZSBkZWZhdWx0CisgICAgICAgICMgcGF0dGVybiBjYW4ndCB0cmlnZ2VyIChhbHdheXMgaGFzIGF0IGxlYXN0ICckJykKKyAgICAgICAgIyBTbyB3ZSBjcmFmdCBhIHBhdHRlcm4gdGhhdCBpcyBhbHdheXMgaW52YWxpZAorICAgICAgICAjIHdpdGggbm8gbGVhZGluZyBkYXRhLgorICAgICAgICBjbGFzcyBNeVRlbXBsYXRlKFRlbXBsYXRlKToKKyAgICAgICAgICAgIHBhdHRlcm4gPSByIiIiCisgICAgICAgICAgICAgICg/UDxpbnZhbGlkPikgfAorICAgICAgICAgICAgICB1bnJlYWNoYWJsZSgKKyAgICAgICAgICAgICAgICAoP1A8bmFtZWQ+KSAgIHwKKyAgICAgICAgICAgICAgICAoP1A8YnJhY2VkPikgIHwKKyAgICAgICAgICAgICAgICAoP1A8ZXNjYXBlZD4pCisgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICIiIgorICAgICAgICBzID0gTXlUZW1wbGF0ZSgnJykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKSBhcyBlcnI6CisgICAgICAgICAgICBzLnN1YnN0aXR1dGUoe30pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2xpbmUgMSwgY29sIDEnLCBzdHIoZXJyLmV4Y2VwdGlvbikpCisKICAgICBkZWYgdGVzdF91bmljb2RlX3ZhbHVlcyhzZWxmKToKICAgICAgICAgcyA9IFRlbXBsYXRlKCckd2hvIGxpa2VzICR3aGF0JykKICAgICAgICAgZCA9IGRpY3Qod2hvPSd0XHhmZm0nLCB3aGF0PSdmXHhmZVxmZWQnKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wZXAzMTMxLnB5IGIvTGliL3Rlc3QvdGVzdF9wZXAzMTMxLnB5CmluZGV4IGRmMGY2NGQuLjJlNmI5MGEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcGVwMzEzMS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3BlcDMxMzEucHkKQEAgLTE3LDEyICsxNyw3IEBACiAKICAgICBkZWYgdGVzdF9ub25fYm1wX25vcm1hbGl6ZWQoc2VsZik6CiAgICAgICAgIPCdlJjwnZSr8J2UpvCdlKDwnZSs8J2UofCdlKIgPSAxCi0gICAgICAgICMgT24gd2lkZSBidWlsZHMsIHRoaXMgaXMgbm9ybWFsaXplZCwgYnV0IG9uIG5hcnJvdyBvbmVzIGl0IGlzIG5vdC4gU2VlCi0gICAgICAgICMgIzEyNzQ2LgotICAgICAgICB0cnk6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEluKCLwnZSY8J2Uq/CdlKbwnZSg8J2UrPCdlKHwnZSiIiwgZGlyKCkpCi0gICAgICAgIGV4Y2VwdCBBc3NlcnRpb25FcnJvcjoKLSAgICAgICAgICAgIHJhaXNlIHVuaXR0ZXN0LmNhc2UuX0V4cGVjdGVkRmFpbHVyZShzeXMuZXhjX2luZm8oKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiVW5pY29kZSIsIGRpcigpKQogCiAgICAgZGVmIHRlc3RfaW52YWxpZChzZWxmKToKICAgICAgICAgdHJ5OgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wZXAzMTUxLnB5IGIvTGliL3Rlc3QvdGVzdF9wZXAzMTUxLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhhZjllMGMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X3BlcDMxNTEucHkKQEAgLTAsMCArMSwyMDEgQEAKK2ltcG9ydCBidWlsdGlucworaW1wb3J0IG9zCitpbXBvcnQgc2VsZWN0CitpbXBvcnQgc29ja2V0CitpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCBlcnJubworZnJvbSBlcnJubyBpbXBvcnQgRUVYSVNUCisKK2Zyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAorCitjbGFzcyBTdWJPU0Vycm9yKE9TRXJyb3IpOgorICAgIHBhc3MKKworY2xhc3MgU3ViT1NFcnJvcldpdGhJbml0KE9TRXJyb3IpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBtZXNzYWdlLCBiYXIpOgorICAgICAgICBzZWxmLmJhciA9IGJhcgorICAgICAgICBzdXBlcigpLl9faW5pdF9fKG1lc3NhZ2UpCisKK2NsYXNzIFN1Yk9TRXJyb3JXaXRoTmV3KE9TRXJyb3IpOgorICAgIGRlZiBfX25ld19fKGNscywgbWVzc2FnZSwgYmF6KToKKyAgICAgICAgc2VsZiA9IHN1cGVyKCkuX19uZXdfXyhjbHMsIG1lc3NhZ2UpCisgICAgICAgIHNlbGYuYmF6ID0gYmF6CisgICAgICAgIHJldHVybiBzZWxmCisKK2NsYXNzIFN1Yk9TRXJyb3JDb21iaW5lZEluaXRGaXJzdChTdWJPU0Vycm9yV2l0aEluaXQsIFN1Yk9TRXJyb3JXaXRoTmV3KToKKyAgICBwYXNzCisKK2NsYXNzIFN1Yk9TRXJyb3JDb21iaW5lZE5ld0ZpcnN0KFN1Yk9TRXJyb3JXaXRoTmV3LCBTdWJPU0Vycm9yV2l0aEluaXQpOgorICAgIHBhc3MKKworCitjbGFzcyBIaWVyYXJjaHlUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2J1aWx0aW5fZXJyb3JzKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKE9TRXJyb3IuX19uYW1lX18sICdPU0Vycm9yJykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhJT0Vycm9yLCBPU0Vycm9yKQorICAgICAgICBzZWxmLmFzc2VydElzKEVudmlyb25tZW50RXJyb3IsIE9TRXJyb3IpCisKKyAgICBkZWYgdGVzdF9zb2NrZXRfZXJyb3JzKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydElzKHNvY2tldC5lcnJvciwgSU9FcnJvcikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhzb2NrZXQuZ2FpZXJyb3IuX19iYXNlX18sIE9TRXJyb3IpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoc29ja2V0LmhlcnJvci5fX2Jhc2VfXywgT1NFcnJvcikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhzb2NrZXQudGltZW91dC5fX2Jhc2VfXywgT1NFcnJvcikKKworICAgIGRlZiB0ZXN0X3NlbGVjdF9lcnJvcihzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhzZWxlY3QuZXJyb3IsIE9TRXJyb3IpCisKKyAgICAjIG1tYXAuZXJyb3IgaXMgdGVzdGVkIGluIHRlc3RfbW1hcAorCisgICAgX3BlcF9tYXAgPSAiIiIKKyAgICAgICAgKy0tIEJsb2NraW5nSU9FcnJvciAgICAgICAgRUFHQUlOLCBFQUxSRUFEWSwgRVdPVUxEQkxPQ0ssIEVJTlBST0dSRVNTCisgICAgICAgICstLSBDaGlsZFByb2Nlc3NFcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVDSElMRAorICAgICAgICArLS0gQ29ubmVjdGlvbkVycm9yCisgICAgICAgICAgICArLS0gQnJva2VuUGlwZUVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVBJUEUsIEVTSFVURE9XTgorICAgICAgICAgICAgKy0tIENvbm5lY3Rpb25BYm9ydGVkRXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICBFQ09OTkFCT1JURUQKKyAgICAgICAgICAgICstLSBDb25uZWN0aW9uUmVmdXNlZEVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgRUNPTk5SRUZVU0VECisgICAgICAgICAgICArLS0gQ29ubmVjdGlvblJlc2V0RXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUNPTk5SRVNFVAorICAgICAgICArLS0gRmlsZUV4aXN0c0Vycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFRVhJU1QKKyAgICAgICAgKy0tIEZpbGVOb3RGb3VuZEVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRU5PRU5UCisgICAgICAgICstLSBJbnRlcnJ1cHRlZEVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFSU5UUgorICAgICAgICArLS0gSXNBRGlyZWN0b3J5RXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFSVNESVIKKyAgICAgICAgKy0tIE5vdEFEaXJlY3RvcnlFcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFTk9URElSCisgICAgICAgICstLSBQZXJtaXNzaW9uRXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUFDQ0VTLCBFUEVSTQorICAgICAgICArLS0gUHJvY2Vzc0xvb2t1cEVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVNSQ0gKKyAgICAgICAgKy0tIFRpbWVvdXRFcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVRJTUVET1VUCisgICAgIiIiCisgICAgZGVmIF9tYWtlX21hcChzKToKKyAgICAgICAgX21hcCA9IHt9CisgICAgICAgIGZvciBsaW5lIGluIHMuc3BsaXRsaW5lcygpOgorICAgICAgICAgICAgbGluZSA9IGxpbmUuc3RyaXAoJystICcpCisgICAgICAgICAgICBpZiBub3QgbGluZToKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZXhjbmFtZSwgXywgZXJybmFtZXMgPSBsaW5lLnBhcnRpdGlvbignICcpCisgICAgICAgICAgICBmb3IgZXJybmFtZSBpbiBmaWx0ZXIoTm9uZSwgZXJybmFtZXMuc3RyaXAoKS5zcGxpdCgnLCAnKSk6CisgICAgICAgICAgICAgICAgX21hcFtnZXRhdHRyKGVycm5vLCBlcnJuYW1lKV0gPSBnZXRhdHRyKGJ1aWx0aW5zLCBleGNuYW1lKQorICAgICAgICByZXR1cm4gX21hcAorICAgIF9tYXAgPSBfbWFrZV9tYXAoX3BlcF9tYXApCisKKyAgICBkZWYgdGVzdF9lcnJub19tYXBwaW5nKHNlbGYpOgorICAgICAgICAjIFRoZSBPU0Vycm9yIGNvbnN0cnVjdG9yIG1hcHMgZXJybm9zIHRvIHN1YmNsYXNzZXMKKyAgICAgICAgIyBBIHNhbXBsZSB0ZXN0IGZvciB0aGUgYmFzaWMgZnVuY3Rpb25hbGl0eQorICAgICAgICBlID0gT1NFcnJvcihFRVhJU1QsICJCYWQgZmlsZSBkZXNjcmlwdG9yIikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKGUpLCBGaWxlRXhpc3RzRXJyb3IpCisgICAgICAgICMgRXhoYXVzdGl2ZSB0ZXN0aW5nCisgICAgICAgIGZvciBlcnJjb2RlLCBleGMgaW4gc2VsZi5fbWFwLml0ZW1zKCk6CisgICAgICAgICAgICBlID0gT1NFcnJvcihlcnJjb2RlLCAiU29tZSBtZXNzYWdlIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShlKSwgZXhjKQorICAgICAgICBvdGhlcmNvZGVzID0gc2V0KGVycm5vLmVycm9yY29kZSkgLSBzZXQoc2VsZi5fbWFwKQorICAgICAgICBmb3IgZXJyY29kZSBpbiBvdGhlcmNvZGVzOgorICAgICAgICAgICAgZSA9IE9TRXJyb3IoZXJyY29kZSwgIlNvbWUgbWVzc2FnZSIpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUoZSksIE9TRXJyb3IpCisKKyAgICBkZWYgdGVzdF90cnlfZXhjZXB0KHNlbGYpOgorICAgICAgICBmaWxlbmFtZSA9ICJzb21lX2hvcGVmdWxseV9ub25fZXhpc3RpbmdfZmlsZSIKKworICAgICAgICAjIFRoaXMgY2hlY2tzIHRoYXQgdHJ5IC4uIGV4Y2VwdCBjaGVja3MgdGhlIGNvbmNyZXRlIGV4Y2VwdGlvbgorICAgICAgICAjIChGaWxlTm90Rm91bmRFcnJvcikgYW5kIG5vdCB0aGUgYmFzZSB0eXBlIHNwZWNpZmllZCB3aGVuCisgICAgICAgICMgUHlFcnJfU2V0RnJvbUVycm5vV2l0aEZpbGVuYW1lT2JqZWN0IHdhcyBjYWxsZWQuCisgICAgICAgICMgKGl0IGlzIHRoZXJlZm9yZSBkZWxpYmVyYXRlIHRoYXQgaXQgZG9lc24ndCB1c2UgYXNzZXJ0UmFpc2VzKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBvcGVuKGZpbGVuYW1lKQorICAgICAgICBleGNlcHQgRmlsZU5vdEZvdW5kRXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoInNob3VsZCBoYXZlIHJhaXNlZCBhIEZpbGVOb3RGb3VuZEVycm9yIikKKworICAgICAgICAjIEFub3RoZXIgdGVzdCBmb3IgUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnJXaXRoRmlsZW5hbWVPYmplY3QoKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKGZpbGVuYW1lKSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3MudW5saW5rKGZpbGVuYW1lKQorICAgICAgICBleGNlcHQgRmlsZU5vdEZvdW5kRXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoInNob3VsZCBoYXZlIHJhaXNlZCBhIEZpbGVOb3RGb3VuZEVycm9yIikKKworCitjbGFzcyBBdHRyaWJ1dGVzVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF93aW5kb3dzX2Vycm9yKHNlbGYpOgorICAgICAgICBpZiBvcy5uYW1lID09ICJudCI6CisgICAgICAgICAgICBzZWxmLmFzc2VydEluKCd3aW5lcnJvcicsIGRpcihPU0Vycm9yKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ3dpbmVycm9yJywgZGlyKE9TRXJyb3IpKQorCisgICAgZGVmIHRlc3RfcG9zaXhfZXJyb3Ioc2VsZik6CisgICAgICAgIGUgPSBPU0Vycm9yKEVFWElTVCwgIkZpbGUgYWxyZWFkeSBleGlzdHMiLCAiZm9vLnR4dCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5lcnJubywgRUVYSVNUKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1swXSwgRUVYSVNUKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuc3RyZXJyb3IsICJGaWxlIGFscmVhZHkgZXhpc3RzIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmZpbGVuYW1lLCAiZm9vLnR4dCIpCisgICAgICAgIGlmIG9zLm5hbWUgPT0gIm50IjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS53aW5lcnJvciwgTm9uZSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKG9zLm5hbWUgPT0gIm50IiwgIldpbmRvd3Mtc3BlY2lmaWMgdGVzdCIpCisgICAgZGVmIHRlc3RfZXJybm9fdHJhbnNsYXRpb24oc2VsZik6CisgICAgICAgICMgRVJST1JfQUxSRUFEWV9FWElTVFMgKDE4MykgLT4gRUVYSVNUCisgICAgICAgIGUgPSBPU0Vycm9yKDAsICJGaWxlIGFscmVhZHkgZXhpc3RzIiwgImZvby50eHQiLCAxODMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS53aW5lcnJvciwgMTgzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuZXJybm8sIEVFWElTVCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmFyZ3NbMF0sIEVFWElTVCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLnN0cmVycm9yLCAiRmlsZSBhbHJlYWR5IGV4aXN0cyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5maWxlbmFtZSwgImZvby50eHQiKQorCisgICAgZGVmIHRlc3RfYmxvY2tpbmdpb2Vycm9yKHNlbGYpOgorICAgICAgICBhcmdzID0gKCJhIiwgImIiLCAiYyIsICJkIiwgImUiKQorICAgICAgICBmb3IgbiBpbiByYW5nZSg2KToKKyAgICAgICAgICAgIGUgPSBCbG9ja2luZ0lPRXJyb3IoKmFyZ3NbOm5dKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICAgICAgZS5jaGFyYWN0ZXJzX3dyaXR0ZW4KKyAgICAgICAgZSA9IEJsb2NraW5nSU9FcnJvcigiYSIsICJiIiwgMykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmNoYXJhY3RlcnNfd3JpdHRlbiwgMykKKyAgICAgICAgZS5jaGFyYWN0ZXJzX3dyaXR0ZW4gPSA1CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5jaGFyYWN0ZXJzX3dyaXR0ZW4sIDUpCisKKyAgICAjIFhYWCBWTVNFcnJvciBub3QgdGVzdGVkCisKKworY2xhc3MgRXhwbGljaXRTdWJjbGFzc2luZ1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfZXJybm9fbWFwcGluZyhzZWxmKToKKyAgICAgICAgIyBXaGVuIGNvbnN0cnVjdGluZyBhbiBPU0Vycm9yIHN1YmNsYXNzLCBlcnJubyBtYXBwaW5nIGlzbid0IGRvbmUKKyAgICAgICAgZSA9IFN1Yk9TRXJyb3IoRUVYSVNULCAiQmFkIGZpbGUgZGVzY3JpcHRvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShlKSwgU3ViT1NFcnJvcikKKworICAgIGRlZiB0ZXN0X2luaXRfb3ZlcnJpZGVuKHNlbGYpOgorICAgICAgICBlID0gU3ViT1NFcnJvcldpdGhJbml0KCJzb21lIG1lc3NhZ2UiLCAiYmF6IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmJhciwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzLCAoInNvbWUgbWVzc2FnZSIsKSkKKworICAgIGRlZiB0ZXN0X2luaXRfa3dkYXJncyhzZWxmKToKKyAgICAgICAgZSA9IFN1Yk9TRXJyb3JXaXRoSW5pdCgic29tZSBtZXNzYWdlIiwgYmFyPSJiYXoiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYmFyLCAiYmF6IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmFyZ3MsICgic29tZSBtZXNzYWdlIiwpKQorCisgICAgZGVmIHRlc3RfbmV3X292ZXJyaWRlbihzZWxmKToKKyAgICAgICAgZSA9IFN1Yk9TRXJyb3JXaXRoTmV3KCJzb21lIG1lc3NhZ2UiLCAiYmF6IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmJheiwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzLCAoInNvbWUgbWVzc2FnZSIsKSkKKworICAgIGRlZiB0ZXN0X25ld19rd2RhcmdzKHNlbGYpOgorICAgICAgICBlID0gU3ViT1NFcnJvcldpdGhOZXcoInNvbWUgbWVzc2FnZSIsIGJhej0iYmF6IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmJheiwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzLCAoInNvbWUgbWVzc2FnZSIsKSkKKworICAgIGRlZiB0ZXN0X2luaXRfbmV3X292ZXJyaWRlbihzZWxmKToKKyAgICAgICAgZSA9IFN1Yk9TRXJyb3JDb21iaW5lZEluaXRGaXJzdCgic29tZSBtZXNzYWdlIiwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5iYXIsICJiYXoiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYmF6LCAiYmF6IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmFyZ3MsICgic29tZSBtZXNzYWdlIiwpKQorICAgICAgICBlID0gU3ViT1NFcnJvckNvbWJpbmVkTmV3Rmlyc3QoInNvbWUgbWVzc2FnZSIsICJiYXoiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYmFyLCAiYmF6IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmJheiwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzLCAoInNvbWUgbWVzc2FnZSIsKSkKKworCitkZWYgdGVzdF9tYWluKCk6CisgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoX19uYW1lX18pCisKK2lmIF9fbmFtZV9fPT0iX19tYWluX18iOgorICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3BlcDM4MC5weSBiL0xpYi90ZXN0L3Rlc3RfcGVwMzgwLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNhMWRiMjkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X3BlcDM4MC5weQpAQCAtMCwwICsxLDg1OCBAQAorIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KKworIiIiCitUZXN0IHN1aXRlIGZvciBQRVAgMzgwIGltcGxlbWVudGF0aW9uCisKK2FkYXB0ZWQgZnJvbSBvcmlnaW5hbCB0ZXN0cyB3cml0dGVuIGJ5IEdyZWcgRXdpbmcKK3NlZSA8aHR0cDovL3d3dy5jb3NjLmNhbnRlcmJ1cnkuYWMubnovZ3JlZy5ld2luZy9weXRob24veWllbGQtZnJvbS9ZaWVsZEZyb20tUHl0aG9uMy4xLjItcmV2NS56aXA+CisiIiIKKworaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgaW8KK2ltcG9ydCBzeXMKK2ltcG9ydCB0cmFjZWJhY2sKK2ltcG9ydCBwYXJzZXIKKworZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGNhcHR1cmVkX3N0ZGVycgorCitjbGFzcyBUZXN0UEVQMzgwT3BlcmF0aW9uKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAiIiIKKyAgICBUZXN0IHNlbWFudGljcy4KKyAgICAiIiIKKworICAgIGRlZiB0ZXN0X2RlbGVnYXRpb25fb2ZfaW5pdGlhbF9uZXh0X3RvX3N1YmdlbmVyYXRvcihzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgZGVsZWdhdGlvbiBvZiBpbml0aWFsIG5leHQoKSBjYWxsIHRvIHN1YmdlbmVyYXRvcgorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZzEoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzEiKQorICAgICAgICAgICAgeWllbGQgZnJvbSBnMigpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMSIpCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMiIpCisgICAgICAgICAgICB5aWVsZCA0MgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzIiKQorICAgICAgICBmb3IgeCBpbiBnMSgpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh4LCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGcxIiwKKyAgICAgICAgICAgICJTdGFydGluZyBnMiIsCisgICAgICAgICAgICAiWWllbGRlZCA0MiIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcyIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzEiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfcmFpc2luZ19leGNlcHRpb25faW5faW5pdGlhbF9uZXh0X2NhbGwoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IHJhaXNpbmcgZXhjZXB0aW9uIGluIGluaXRpYWwgbmV4dCgpIGNhbGwKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMSIpCisgICAgICAgICAgICAgICAgeWllbGQgZnJvbSBnMigpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcxIikKKyAgICAgICAgZGVmIGcyKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMiIpCisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigic3BhbmlzaCBpbnF1aXNpdGlvbiBvY2N1cnJlZCIpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcyIikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZm9yIHggaW4gZzEoKToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIllpZWxkZWQgJXMiICUgKHgsKSkKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCAic3BhbmlzaCBpbnF1aXNpdGlvbiBvY2N1cnJlZCIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoInN1YmdlbmVyYXRvciBmYWlsZWQgdG8gcmFpc2UgVmFsdWVFcnJvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGcxIiwKKyAgICAgICAgICAgICJTdGFydGluZyBnMiIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcyIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzEiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfZGVsZWdhdGlvbl9vZl9uZXh0X2NhbGxfdG9fc3ViZ2VuZXJhdG9yKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBkZWxlZ2F0aW9uIG9mIG5leHQoKSBjYWxsIHRvIHN1YmdlbmVyYXRvcgorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZzEoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzEiKQorICAgICAgICAgICAgeWllbGQgImcxIGhhbSIKKyAgICAgICAgICAgIHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgeWllbGQgImcxIGVnZ3MiCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMSIpCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMiIpCisgICAgICAgICAgICB5aWVsZCAiZzIgc3BhbSIKKyAgICAgICAgICAgIHlpZWxkICJnMiBtb3JlIHNwYW0iCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMiIpCisgICAgICAgIGZvciB4IGluIGcxKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIllpZWxkZWQgJXMiICUgKHgsKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiU3RhcnRpbmcgZzEiLAorICAgICAgICAgICAgIllpZWxkZWQgZzEgaGFtIiwKKyAgICAgICAgICAgICJTdGFydGluZyBnMiIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBzcGFtIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcyIG1vcmUgc3BhbSIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcxIGVnZ3MiLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMSIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9yYWlzaW5nX2V4Y2VwdGlvbl9pbl9kZWxlZ2F0ZWRfbmV4dF9jYWxsKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCByYWlzaW5nIGV4Y2VwdGlvbiBpbiBkZWxlZ2F0ZWQgbmV4dCgpIGNhbGwKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMSIpCisgICAgICAgICAgICAgICAgeWllbGQgImcxIGhhbSIKKyAgICAgICAgICAgICAgICB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzEgZWdncyIKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzEiKQorICAgICAgICBkZWYgZzIoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcyIikKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzIgc3BhbSIKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJob3ZlcmNyYWZ0IGlzIGZ1bGwgb2YgZWVscyIpCisgICAgICAgICAgICAgICAgeWllbGQgImcyIG1vcmUgc3BhbSIKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzIiKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBmb3IgeCBpbiBnMSgpOgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeCwpKQorICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmFyZ3NbMF0sICJob3ZlcmNyYWZ0IGlzIGZ1bGwgb2YgZWVscyIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoInN1YmdlbmVyYXRvciBmYWlsZWQgdG8gcmFpc2UgVmFsdWVFcnJvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGcxIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcxIGhhbSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgc3BhbSIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcyIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzEiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfZGVsZWdhdGlvbl9vZl9zZW5kKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBkZWxlZ2F0aW9uIG9mIHNlbmQoKQorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZzEoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzEiKQorICAgICAgICAgICAgeCA9IHlpZWxkICJnMSBoYW0iCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcxIHJlY2VpdmVkICVzIiAlICh4LCkpCisgICAgICAgICAgICB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgICAgIHggPSB5aWVsZCAiZzEgZWdncyIKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzEgcmVjZWl2ZWQgJXMiICUgKHgsKSkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcxIikKKyAgICAgICAgZGVmIGcyKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcyIikKKyAgICAgICAgICAgIHggPSB5aWVsZCAiZzIgc3BhbSIKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzIgcmVjZWl2ZWQgJXMiICUgKHgsKSkKKyAgICAgICAgICAgIHggPSB5aWVsZCAiZzIgbW9yZSBzcGFtIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMiByZWNlaXZlZCAlcyIgJSAoeCwpKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzIiKQorICAgICAgICBnID0gZzEoKQorICAgICAgICB5ID0gbmV4dChnKQorICAgICAgICB4ID0gMQorICAgICAgICB0cnk6CisgICAgICAgICAgICB3aGlsZSAxOgorICAgICAgICAgICAgICAgIHkgPSBnLnNlbmQoeCkKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIllpZWxkZWQgJXMiICUgKHksKSkKKyAgICAgICAgICAgICAgICB4ICs9IDEKKyAgICAgICAgZXhjZXB0IFN0b3BJdGVyYXRpb246CisgICAgICAgICAgICBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGcxIiwKKyAgICAgICAgICAgICJnMSByZWNlaXZlZCAxIiwKKyAgICAgICAgICAgICJTdGFydGluZyBnMiIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBzcGFtIiwKKyAgICAgICAgICAgICJnMiByZWNlaXZlZCAyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcyIG1vcmUgc3BhbSIsCisgICAgICAgICAgICAiZzIgcmVjZWl2ZWQgMyIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcxIGVnZ3MiLAorICAgICAgICAgICAgImcxIHJlY2VpdmVkIDQiLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMSIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9oYW5kbGluZ19leGNlcHRpb25fd2hpbGVfZGVsZWdhdGluZ19zZW5kKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBoYW5kbGluZyBleGNlcHRpb24gd2hpbGUgZGVsZWdhdGluZyAnc2VuZCcKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcxIikKKyAgICAgICAgICAgIHggPSB5aWVsZCAiZzEgaGFtIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMSByZWNlaXZlZCAlcyIgJSAoeCwpKQorICAgICAgICAgICAgeWllbGQgZnJvbSBnMigpCisgICAgICAgICAgICB4ID0geWllbGQgImcxIGVnZ3MiCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcxIHJlY2VpdmVkICVzIiAlICh4LCkpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMSIpCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMiIpCisgICAgICAgICAgICB4ID0geWllbGQgImcyIHNwYW0iCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcyIHJlY2VpdmVkICVzIiAlICh4LCkpCisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJob3ZlcmNyYWZ0IGlzIGZ1bGwgb2YgZWVscyIpCisgICAgICAgICAgICB4ID0geWllbGQgImcyIG1vcmUgc3BhbSIKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzIgcmVjZWl2ZWQgJXMiICUgKHgsKSkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcyIikKKyAgICAgICAgZGVmIHJ1bigpOgorICAgICAgICAgICAgZyA9IGcxKCkKKyAgICAgICAgICAgIHkgPSBuZXh0KGcpCisgICAgICAgICAgICB4ID0gMQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHdoaWxlIDE6CisgICAgICAgICAgICAgICAgICAgIHkgPSBnLnNlbmQoeCkKKyAgICAgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh5LCkpCisgICAgICAgICAgICAgICAgICAgIHggKz0gMQorICAgICAgICAgICAgZXhjZXB0IFN0b3BJdGVyYXRpb246CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdG9wSXRlcmF0aW9uIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcixydW4pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGcxIiwKKyAgICAgICAgICAgICJnMSByZWNlaXZlZCAxIiwKKyAgICAgICAgICAgICJTdGFydGluZyBnMiIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBzcGFtIiwKKyAgICAgICAgICAgICJnMiByZWNlaXZlZCAyIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X2RlbGVnYXRpbmdfY2xvc2Uoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGRlbGVnYXRpbmcgJ2Nsb3NlJworICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZzEoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcxIikKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzEgaGFtIgorICAgICAgICAgICAgICAgIHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMSBlZ2dzIgorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMSIpCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzIiKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMiBzcGFtIgorICAgICAgICAgICAgICAgIHlpZWxkICJnMiBtb3JlIHNwYW0iCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcyIikKKyAgICAgICAgZyA9IGcxKCkKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMik6CisgICAgICAgICAgICB4ID0gbmV4dChnKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh4LCkpCisgICAgICAgIGcuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnMSIsCisgICAgICAgICAgICAiWWllbGRlZCBnMSBoYW0iLAorICAgICAgICAgICAgIlN0YXJ0aW5nIGcyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcyIHNwYW0iLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMiIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcxIgorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfaGFuZGluZ19leGNlcHRpb25fd2hpbGVfZGVsZWdhdGluZ19jbG9zZShzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgaGFuZGxpbmcgZXhjZXB0aW9uIHdoaWxlIGRlbGVnYXRpbmcgJ2Nsb3NlJworICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZzEoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcxIikKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzEgaGFtIgorICAgICAgICAgICAgICAgIHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMSBlZ2dzIgorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMSIpCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzIiKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMiBzcGFtIgorICAgICAgICAgICAgICAgIHlpZWxkICJnMiBtb3JlIHNwYW0iCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcyIikKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJueWJibGVzIGhhdmUgZXhwbG9kZWQgd2l0aCBkZWxpZ2h0IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZyA9IGcxKCkKKyAgICAgICAgICAgIGZvciBpIGluIHJhbmdlKDIpOgorICAgICAgICAgICAgICAgIHggPSBuZXh0KGcpCisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh4LCkpCisgICAgICAgICAgICBnLmNsb3NlKCkKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCAibnliYmxlcyBoYXZlIGV4cGxvZGVkIHdpdGggZGVsaWdodCIpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZS5fX2NvbnRleHRfXywgR2VuZXJhdG9yRXhpdCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZmFpbCgic3ViZ2VuZXJhdG9yIGZhaWxlZCB0byByYWlzZSBWYWx1ZUVycm9yIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiU3RhcnRpbmcgZzEiLAorICAgICAgICAgICAgIllpZWxkZWQgZzEgaGFtIiwKKyAgICAgICAgICAgICJTdGFydGluZyBnMiIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBzcGFtIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzIiLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMSIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9kZWxlZ2F0aW5nX3Rocm93KHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBkZWxlZ2F0aW5nICd0aHJvdycKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMSIpCisgICAgICAgICAgICAgICAgeWllbGQgImcxIGhhbSIKKyAgICAgICAgICAgICAgICB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzEgZWdncyIKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzEiKQorICAgICAgICBkZWYgZzIoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcyIikKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzIgc3BhbSIKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzIgbW9yZSBzcGFtIgorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMiIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGcgPSBnMSgpCisgICAgICAgICAgICBmb3IgaSBpbiByYW5nZSgyKToKKyAgICAgICAgICAgICAgICB4ID0gbmV4dChnKQorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeCwpKQorICAgICAgICAgICAgZSA9IFZhbHVlRXJyb3IoInRvbWF0byBlamVjdGVkIikKKyAgICAgICAgICAgIGcudGhyb3coZSkKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCAidG9tYXRvIGVqZWN0ZWQiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJzdWJnZW5lcmF0b3IgZmFpbGVkIHRvIHJhaXNlIFZhbHVlRXJyb3IiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnMSIsCisgICAgICAgICAgICAiWWllbGRlZCBnMSBoYW0iLAorICAgICAgICAgICAgIlN0YXJ0aW5nIGcyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcyIHNwYW0iLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMiIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcxIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X3ZhbHVlX2F0dHJpYnV0ZV9vZl9TdG9wSXRlcmF0aW9uX2V4Y2VwdGlvbihzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgJ3ZhbHVlJyBhdHRyaWJ1dGUgb2YgU3RvcEl0ZXJhdGlvbiBleGNlcHRpb24KKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIHBleChlKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiJXM6ICVzIiAlIChlLl9fY2xhc3NfXy5fX25hbWVfXywgZSkpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoInZhbHVlID0gJXMiICUgKGUudmFsdWUsKSkKKyAgICAgICAgZSA9IFN0b3BJdGVyYXRpb24oKQorICAgICAgICBwZXgoZSkKKyAgICAgICAgZSA9IFN0b3BJdGVyYXRpb24oInNwYW0iKQorICAgICAgICBwZXgoZSkKKyAgICAgICAgZS52YWx1ZSA9ICJlZ2dzIgorICAgICAgICBwZXgoZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiU3RvcEl0ZXJhdGlvbjogIiwKKyAgICAgICAgICAgICJ2YWx1ZSA9IE5vbmUiLAorICAgICAgICAgICAgIlN0b3BJdGVyYXRpb246IHNwYW0iLAorICAgICAgICAgICAgInZhbHVlID0gc3BhbSIsCisgICAgICAgICAgICAiU3RvcEl0ZXJhdGlvbjogc3BhbSIsCisgICAgICAgICAgICAidmFsdWUgPSBlZ2dzIiwKKyAgICAgICAgXSkKKworCisgICAgZGVmIHRlc3RfZXhjZXB0aW9uX3ZhbHVlX2NyYXNoKHNlbGYpOgorICAgICAgICAjIFRoZXJlIHVzZWQgdG8gYmUgYSByZWZjb3VudCBlcnJvciB3aGVuIHRoZSByZXR1cm4gdmFsdWUKKyAgICAgICAgIyBzdG9yZWQgaW4gdGhlIFN0b3BJdGVyYXRpb24gaGFzIGEgcmVmY291bnQgb2YgMS4KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgZGVmIGcyKCk6CisgICAgICAgICAgICB5aWVsZCAiZzIiCisgICAgICAgICAgICByZXR1cm4gWzQyXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoZzEoKSksIFsiZzIiXSkKKworCisgICAgZGVmIHRlc3RfZ2VuZXJhdG9yX3JldHVybl92YWx1ZShzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgZ2VuZXJhdG9yIHJldHVybiB2YWx1ZQorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZzEoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzEiKQorICAgICAgICAgICAgeWllbGQgImcxIGhhbSIKKyAgICAgICAgICAgIHJldCA9IHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMiByZXR1cm5lZCAlcyIgJSAocmV0LCkpCisgICAgICAgICAgICByZXQgPSB5aWVsZCBmcm9tIGcyKDQyKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMiByZXR1cm5lZCAlcyIgJSAocmV0LCkpCisgICAgICAgICAgICB5aWVsZCAiZzEgZWdncyIKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcxIikKKyAgICAgICAgZGVmIGcyKHYgPSBOb25lKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzIiKQorICAgICAgICAgICAgeWllbGQgImcyIHNwYW0iCisgICAgICAgICAgICB5aWVsZCAiZzIgbW9yZSBzcGFtIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzIiKQorICAgICAgICAgICAgaWYgdjoKKyAgICAgICAgICAgICAgICByZXR1cm4gdgorICAgICAgICBmb3IgeCBpbiBnMSgpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh4LCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGcxIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcxIGhhbSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgc3BhbSIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBtb3JlIHNwYW0iLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMiIsCisgICAgICAgICAgICAiZzIgcmV0dXJuZWQgTm9uZSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgc3BhbSIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBtb3JlIHNwYW0iLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMiIsCisgICAgICAgICAgICAiZzIgcmV0dXJuZWQgNDIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzEgZWdncyIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcxIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X2RlbGVnYXRpb25fb2ZfbmV4dF90b19ub25fZ2VuZXJhdG9yKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBkZWxlZ2F0aW9uIG9mIG5leHQoKSB0byBub24tZ2VuZXJhdG9yCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnKCk6CisgICAgICAgICAgICB5aWVsZCBmcm9tIHJhbmdlKDMpCisgICAgICAgIGZvciB4IGluIGcoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeCwpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJZaWVsZGVkIDAiLAorICAgICAgICAgICAgIllpZWxkZWQgMSIsCisgICAgICAgICAgICAiWWllbGRlZCAyIiwKKyAgICAgICAgXSkKKworCisgICAgZGVmIHRlc3RfY29udmVyc2lvbl9vZl9zZW5kTm9uZV90b19uZXh0KHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBjb252ZXJzaW9uIG9mIHNlbmQoTm9uZSkgdG8gbmV4dCgpCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnKCk6CisgICAgICAgICAgICB5aWVsZCBmcm9tIHJhbmdlKDMpCisgICAgICAgIGdpID0gZygpCisgICAgICAgIGZvciB4IGluIHJhbmdlKDMpOgorICAgICAgICAgICAgeSA9IGdpLnNlbmQoTm9uZSkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZDogJXMiICUgKHksKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiWWllbGRlZDogMCIsCisgICAgICAgICAgICAiWWllbGRlZDogMSIsCisgICAgICAgICAgICAiWWllbGRlZDogMiIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9kZWxlZ2F0aW9uX29mX2Nsb3NlX3RvX25vbl9nZW5lcmF0b3Ioc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGRlbGVnYXRpb24gb2YgY2xvc2UoKSB0byBub24tZ2VuZXJhdG9yCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJzdGFydGluZyBnIikKKyAgICAgICAgICAgICAgICB5aWVsZCBmcm9tIHJhbmdlKDMpCisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnIHNob3VsZCBub3QgYmUgaGVyZSIpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZmluaXNoaW5nIGciKQorICAgICAgICBnaSA9IGcoKQorICAgICAgICBuZXh0KGdpKQorICAgICAgICB3aXRoIGNhcHR1cmVkX3N0ZGVycigpIGFzIG91dHB1dDoKKyAgICAgICAgICAgIGdpLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQuZ2V0dmFsdWUoKSwgJycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgInN0YXJ0aW5nIGciLAorICAgICAgICAgICAgImZpbmlzaGluZyBnIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X2RlbGVnYXRpbmdfdGhyb3dfdG9fbm9uX2dlbmVyYXRvcihzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgZGVsZWdhdGluZyAndGhyb3cnIHRvIG5vbi1nZW5lcmF0b3IKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGciKQorICAgICAgICAgICAgICAgIHlpZWxkIGZyb20gcmFuZ2UoMTApCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGciKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBnaSA9IGcoKQorICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoNSk6CisgICAgICAgICAgICAgICAgeCA9IG5leHQoZ2kpCisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh4LCkpCisgICAgICAgICAgICBlID0gVmFsdWVFcnJvcigidG9tYXRvIGVqZWN0ZWQiKQorICAgICAgICAgICAgZ2kudGhyb3coZSkKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCJ0b21hdG8gZWplY3RlZCIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoInN1YmdlbmVyYXRvciBmYWlsZWQgdG8gcmFpc2UgVmFsdWVFcnJvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGciLAorICAgICAgICAgICAgIllpZWxkZWQgMCIsCisgICAgICAgICAgICAiWWllbGRlZCAxIiwKKyAgICAgICAgICAgICJZaWVsZGVkIDIiLAorICAgICAgICAgICAgIllpZWxkZWQgMyIsCisgICAgICAgICAgICAiWWllbGRlZCA0IiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZyIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9hdHRlbXB0aW5nX3RvX3NlbmRfdG9fbm9uX2dlbmVyYXRvcihzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgYXR0ZW1wdGluZyB0byBzZW5kIHRvIG5vbi1nZW5lcmF0b3IKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoInN0YXJ0aW5nIGciKQorICAgICAgICAgICAgICAgIHlpZWxkIGZyb20gcmFuZ2UoMykKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcgc2hvdWxkIG5vdCBiZSBoZXJlIikKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJmaW5pc2hpbmcgZyIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGdpID0gZygpCisgICAgICAgICAgICBuZXh0KGdpKQorICAgICAgICAgICAgZm9yIHggaW4gcmFuZ2UoMyk6CisgICAgICAgICAgICAgICAgeSA9IGdpLnNlbmQoNDIpCisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTaG91bGQgbm90IGhhdmUgeWllbGRlZDoiLCB5KQorICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oInNlbmQiLCBlLmFyZ3NbMF0pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoIndhcyBhYmxlIHRvIHNlbmQgaW50byBub24tZ2VuZXJhdG9yIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAic3RhcnRpbmcgZyIsCisgICAgICAgICAgICAiZmluaXNoaW5nIGciLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfYnJva2VuX2dldGF0dHJfaGFuZGxpbmcoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IHN1Yml0ZXJhdG9yIHdpdGggYSBicm9rZW4gZ2V0YXR0ciBpbXBsZW1lbnRhdGlvbgorICAgICAgICAiIiIKKyAgICAgICAgY2xhc3MgQnJva2VuOgorICAgICAgICAgICAgZGVmIF9faXRlcl9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmCisgICAgICAgICAgICBkZWYgX19uZXh0X18oc2VsZik6CisgICAgICAgICAgICAgICAgcmV0dXJuIDEKKyAgICAgICAgICAgIGRlZiBfX2dldGF0dHJfXyhzZWxmLCBhdHRyKToKKyAgICAgICAgICAgICAgICAxLzAKKworICAgICAgICBkZWYgZygpOgorICAgICAgICAgICAgeWllbGQgZnJvbSBCcm9rZW4oKQorCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoWmVyb0RpdmlzaW9uRXJyb3IpOgorICAgICAgICAgICAgZ2kgPSBnKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV4dChnaSksIDEpCisgICAgICAgICAgICBnaS5zZW5kKDEpCisKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhaZXJvRGl2aXNpb25FcnJvcik6CisgICAgICAgICAgICBnaSA9IGcoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZXh0KGdpKSwgMSkKKyAgICAgICAgICAgIGdpLnRocm93KEF0dHJpYnV0ZUVycm9yKQorCisgICAgICAgIHdpdGggY2FwdHVyZWRfc3RkZXJyKCkgYXMgb3V0cHV0OgorICAgICAgICAgICAgZ2kgPSBnKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV4dChnaSksIDEpCisgICAgICAgICAgICBnaS5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ1plcm9EaXZpc2lvbkVycm9yJywgb3V0cHV0LmdldHZhbHVlKCkpCisKKyAgICBkZWYgdGVzdF9leGNlcHRpb25faW5faW5pdGlhbF9uZXh0X2NhbGwoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGV4Y2VwdGlvbiBpbiBpbml0aWFsIG5leHQoKSBjYWxsCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnMSgpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMSBhYm91dCB0byB5aWVsZCBmcm9tIGcyIikKKyAgICAgICAgICAgIHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMSBzaG91bGQgbm90IGJlIGhlcmUiKQorICAgICAgICBkZWYgZzIoKToKKyAgICAgICAgICAgIHlpZWxkIDEvMAorICAgICAgICBkZWYgcnVuKCk6CisgICAgICAgICAgICBnaSA9IGcxKCkKKyAgICAgICAgICAgIG5leHQoZ2kpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFplcm9EaXZpc2lvbkVycm9yLHJ1bikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiZzEgYWJvdXQgdG8geWllbGQgZnJvbSBnMiIKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X2F0dGVtcHRlZF95aWVsZF9mcm9tX2xvb3Aoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGF0dGVtcHRlZCB5aWVsZC1mcm9tIGxvb3AKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcxOiBzdGFydGluZyIpCisgICAgICAgICAgICB5aWVsZCAieTEiCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcxOiBhYm91dCB0byB5aWVsZCBmcm9tIGcyIikKKyAgICAgICAgICAgIHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMSBzaG91bGQgbm90IGJlIGhlcmUiKQorCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMjogc3RhcnRpbmciKQorICAgICAgICAgICAgeWllbGQgInkyIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMjogYWJvdXQgdG8geWllbGQgZnJvbSBnMSIpCisgICAgICAgICAgICB5aWVsZCBmcm9tIGdpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcyIHNob3VsZCBub3QgYmUgaGVyZSIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGdpID0gZzEoKQorICAgICAgICAgICAgZm9yIHkgaW4gZ2k6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkOiAlcyIgJSAoeSwpKQorICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmFyZ3NbMF0sImdlbmVyYXRvciBhbHJlYWR5IGV4ZWN1dGluZyIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoInN1YmdlbmVyYXRvciBkaWRuJ3QgcmFpc2UgVmFsdWVFcnJvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgImcxOiBzdGFydGluZyIsCisgICAgICAgICAgICAiWWllbGRlZDogeTEiLAorICAgICAgICAgICAgImcxOiBhYm91dCB0byB5aWVsZCBmcm9tIGcyIiwKKyAgICAgICAgICAgICJnMjogc3RhcnRpbmciLAorICAgICAgICAgICAgIllpZWxkZWQ6IHkyIiwKKyAgICAgICAgICAgICJnMjogYWJvdXQgdG8geWllbGQgZnJvbSBnMSIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9yZXR1cm5pbmdfdmFsdWVfZnJvbV9kZWxlZ2F0ZWRfdGhyb3coc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IHJldHVybmluZyB2YWx1ZSBmcm9tIGRlbGVnYXRlZCAndGhyb3cnCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnMSgpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzEiKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMSBoYW0iCisgICAgICAgICAgICAgICAgeWllbGQgZnJvbSBnMigpCisgICAgICAgICAgICAgICAgeWllbGQgImcxIGVnZ3MiCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcxIikKKyAgICAgICAgZGVmIGcyKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMiIpCisgICAgICAgICAgICAgICAgeWllbGQgImcyIHNwYW0iCisgICAgICAgICAgICAgICAgeWllbGQgImcyIG1vcmUgc3BhbSIKKyAgICAgICAgICAgIGV4Y2VwdCBMdW5jaEVycm9yOgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiQ2F1Z2h0IEx1bmNoRXJyb3IgaW4gZzIiKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMiBsdW5jaCBzYXZlZCIKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzIgeWV0IG1vcmUgc3BhbSIKKyAgICAgICAgY2xhc3MgTHVuY2hFcnJvcihFeGNlcHRpb24pOgorICAgICAgICAgICAgcGFzcworICAgICAgICBnID0gZzEoKQorICAgICAgICBmb3IgaSBpbiByYW5nZSgyKToKKyAgICAgICAgICAgIHggPSBuZXh0KGcpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIllpZWxkZWQgJXMiICUgKHgsKSkKKyAgICAgICAgZSA9IEx1bmNoRXJyb3IoInRvbWF0byBlamVjdGVkIikKKyAgICAgICAgZy50aHJvdyhlKQorICAgICAgICBmb3IgeCBpbiBnOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh4LCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGcxIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcxIGhhbSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgc3BhbSIsCisgICAgICAgICAgICAiQ2F1Z2h0IEx1bmNoRXJyb3IgaW4gZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgeWV0IG1vcmUgc3BhbSIsCisgICAgICAgICAgICAiWWllbGRlZCBnMSBlZ2dzIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzEiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfbmV4dF9hbmRfcmV0dXJuX3dpdGhfdmFsdWUoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IG5leHQgYW5kIHJldHVybiB3aXRoIHZhbHVlCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBmKHIpOgorICAgICAgICAgICAgZ2kgPSBnKHIpCisgICAgICAgICAgICBuZXh0KGdpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZiByZXN1bWluZyBnIikKKyAgICAgICAgICAgICAgICBuZXh0KGdpKQorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZiBTSE9VTEQgTk9UIEJFIEhFUkUiKQorICAgICAgICAgICAgZXhjZXB0IFN0b3BJdGVyYXRpb24gYXMgZToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImYgY2F1Z2h0ICVzIiAlIChyZXByKGUpLCkpCisgICAgICAgIGRlZiBnKHIpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnIHN0YXJ0aW5nIikKKyAgICAgICAgICAgIHlpZWxkCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcgcmV0dXJuaW5nICVzIiAlIChyLCkpCisgICAgICAgICAgICByZXR1cm4gcgorICAgICAgICBmKE5vbmUpCisgICAgICAgIGYoNDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgImcgc3RhcnRpbmciLAorICAgICAgICAgICAgImYgcmVzdW1pbmcgZyIsCisgICAgICAgICAgICAiZyByZXR1cm5pbmcgTm9uZSIsCisgICAgICAgICAgICAiZiBjYXVnaHQgU3RvcEl0ZXJhdGlvbigpIiwKKyAgICAgICAgICAgICJnIHN0YXJ0aW5nIiwKKyAgICAgICAgICAgICJmIHJlc3VtaW5nIGciLAorICAgICAgICAgICAgImcgcmV0dXJuaW5nIDQyIiwKKyAgICAgICAgICAgICJmIGNhdWdodCBTdG9wSXRlcmF0aW9uKDQyLCkiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3Rfc2VuZF9hbmRfcmV0dXJuX3dpdGhfdmFsdWUoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IHNlbmQgYW5kIHJldHVybiB3aXRoIHZhbHVlCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBmKHIpOgorICAgICAgICAgICAgZ2kgPSBnKHIpCisgICAgICAgICAgICBuZXh0KGdpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZiBzZW5kaW5nIHNwYW0gdG8gZyIpCisgICAgICAgICAgICAgICAgZ2kuc2VuZCgic3BhbSIpCisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJmIFNIT1VMRCBOT1QgQkUgSEVSRSIpCisgICAgICAgICAgICBleGNlcHQgU3RvcEl0ZXJhdGlvbiBhcyBlOgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZiBjYXVnaHQgJXIiICUgKGUsKSkKKyAgICAgICAgZGVmIGcocik6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcgc3RhcnRpbmciKQorICAgICAgICAgICAgeCA9IHlpZWxkCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcgcmVjZWl2ZWQgJXMiICUgKHgsKSkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZyByZXR1cm5pbmcgJXMiICUgKHIsKSkKKyAgICAgICAgICAgIHJldHVybiByCisgICAgICAgIGYoTm9uZSkKKyAgICAgICAgZig0MikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiZyBzdGFydGluZyIsCisgICAgICAgICAgICAiZiBzZW5kaW5nIHNwYW0gdG8gZyIsCisgICAgICAgICAgICAiZyByZWNlaXZlZCBzcGFtIiwKKyAgICAgICAgICAgICJnIHJldHVybmluZyBOb25lIiwKKyAgICAgICAgICAgICJmIGNhdWdodCBTdG9wSXRlcmF0aW9uKCkiLAorICAgICAgICAgICAgImcgc3RhcnRpbmciLAorICAgICAgICAgICAgImYgc2VuZGluZyBzcGFtIHRvIGciLAorICAgICAgICAgICAgImcgcmVjZWl2ZWQgc3BhbSIsCisgICAgICAgICAgICAiZyByZXR1cm5pbmcgNDIiLAorICAgICAgICAgICAgImYgY2F1Z2h0IFN0b3BJdGVyYXRpb24oNDIsKSIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9jYXRjaGluZ19leGNlcHRpb25fZnJvbV9zdWJnZW5fYW5kX3JldHVybmluZyhzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgY2F0Y2hpbmcgYW4gZXhjZXB0aW9uIHRocm93biBpbnRvIGEKKyAgICAgICAgc3ViZ2VuZXJhdG9yIGFuZCByZXR1cm5pbmcgYSB2YWx1ZQorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgaW5uZXIoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB5aWVsZCAxCisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImlubmVyIGNhdWdodCBWYWx1ZUVycm9yIikKKyAgICAgICAgICAgIHJldHVybiAyCisKKyAgICAgICAgZGVmIG91dGVyKCk6CisgICAgICAgICAgICB2ID0geWllbGQgZnJvbSBpbm5lcigpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImlubmVyIHJldHVybmVkICVyIHRvIG91dGVyIiAlIHYpCisgICAgICAgICAgICB5aWVsZCB2CisgICAgICAgIGcgPSBvdXRlcigpCisgICAgICAgIHRyYWNlLmFwcGVuZChuZXh0KGcpKQorICAgICAgICB0cmFjZS5hcHBlbmQoZy50aHJvdyhWYWx1ZUVycm9yKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAxLAorICAgICAgICAgICAgImlubmVyIGNhdWdodCBWYWx1ZUVycm9yIiwKKyAgICAgICAgICAgICJpbm5lciByZXR1cm5lZCAyIHRvIG91dGVyIiwKKyAgICAgICAgICAgIDIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF90aHJvd2luZ19HZW5lcmF0b3JFeGl0X2ludG9fc3ViZ2VuX3RoYXRfcmV0dXJucyhzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgdGhyb3dpbmcgR2VuZXJhdG9yRXhpdCBpbnRvIGEgc3ViZ2VuZXJhdG9yIHRoYXQKKyAgICAgICAgY2F0Y2hlcyBpdCBhbmQgcmV0dXJucyBub3JtYWxseS4KKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGYoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkVudGVyIGYiKQorICAgICAgICAgICAgICAgIHlpZWxkCisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJFeGl0IGYiKQorICAgICAgICAgICAgZXhjZXB0IEdlbmVyYXRvckV4aXQ6CisgICAgICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGRlZiBnKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkVudGVyIGciKQorICAgICAgICAgICAgeWllbGQgZnJvbSBmKCkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRXhpdCBnIikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZ2kgPSBnKCkKKyAgICAgICAgICAgIG5leHQoZ2kpCisgICAgICAgICAgICBnaS50aHJvdyhHZW5lcmF0b3JFeGl0KQorICAgICAgICBleGNlcHQgR2VuZXJhdG9yRXhpdDoKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZmFpbCgic3ViZ2VuZXJhdG9yIGZhaWxlZCB0byByYWlzZSBHZW5lcmF0b3JFeGl0IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiRW50ZXIgZyIsCisgICAgICAgICAgICAiRW50ZXIgZiIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF90aHJvd2luZ19HZW5lcmF0b3JFeGl0X2ludG9fc3ViZ2VuZXJhdG9yX3RoYXRfeWllbGRzKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCB0aHJvd2luZyBHZW5lcmF0b3JFeGl0IGludG8gYSBzdWJnZW5lcmF0b3IgdGhhdAorICAgICAgICBjYXRjaGVzIGl0IGFuZCB5aWVsZHMuCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBmKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJFbnRlciBmIikKKyAgICAgICAgICAgICAgICB5aWVsZAorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRXhpdCBmIikKKyAgICAgICAgICAgIGV4Y2VwdCBHZW5lcmF0b3JFeGl0OgorICAgICAgICAgICAgICAgIHlpZWxkCisgICAgICAgIGRlZiBnKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkVudGVyIGciKQorICAgICAgICAgICAgeWllbGQgZnJvbSBmKCkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRXhpdCBnIikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZ2kgPSBnKCkKKyAgICAgICAgICAgIG5leHQoZ2kpCisgICAgICAgICAgICBnaS50aHJvdyhHZW5lcmF0b3JFeGl0KQorICAgICAgICBleGNlcHQgUnVudGltZUVycm9yIGFzIGU6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1swXSwgImdlbmVyYXRvciBpZ25vcmVkIEdlbmVyYXRvckV4aXQiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJzdWJnZW5lcmF0b3IgZmFpbGVkIHRvIHJhaXNlIEdlbmVyYXRvckV4aXQiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJFbnRlciBnIiwKKyAgICAgICAgICAgICJFbnRlciBmIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X3Rocm93aW5nX0dlbmVyYXRvckV4aXRfaW50b19zdWJnZW5fdGhhdF9yYWlzZXMoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IHRocm93aW5nIEdlbmVyYXRvckV4aXQgaW50byBhIHN1YmdlbmVyYXRvciB0aGF0CisgICAgICAgIGNhdGNoZXMgaXQgYW5kIHJhaXNlcyBhIGRpZmZlcmVudCBleGNlcHRpb24uCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBmKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJFbnRlciBmIikKKyAgICAgICAgICAgICAgICB5aWVsZAorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRXhpdCBmIikKKyAgICAgICAgICAgIGV4Y2VwdCBHZW5lcmF0b3JFeGl0OgorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIlZvcnBhbCBidW5ueSBlbmNvdW50ZXJlZCIpCisgICAgICAgIGRlZiBnKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkVudGVyIGciKQorICAgICAgICAgICAgeWllbGQgZnJvbSBmKCkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRXhpdCBnIikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZ2kgPSBnKCkKKyAgICAgICAgICAgIG5leHQoZ2kpCisgICAgICAgICAgICBnaS50aHJvdyhHZW5lcmF0b3JFeGl0KQorICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmFyZ3NbMF0sICJWb3JwYWwgYnVubnkgZW5jb3VudGVyZWQiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGUuX19jb250ZXh0X18sIEdlbmVyYXRvckV4aXQpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoInN1YmdlbmVyYXRvciBmYWlsZWQgdG8gcmFpc2UgVmFsdWVFcnJvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIkVudGVyIGciLAorICAgICAgICAgICAgIkVudGVyIGYiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfeWllbGRfZnJvbV9lbXB0eShzZWxmKToKKyAgICAgICAgZGVmIGcoKToKKyAgICAgICAgICAgIHlpZWxkIGZyb20gKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3RvcEl0ZXJhdGlvbiwgbmV4dCwgZygpKQorCisKK2RlZiB0ZXN0X21haW4oKToKKyAgICBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKKyAgICB0ZXN0X2NsYXNzZXMgPSBbVGVzdFBFUDM4ME9wZXJhdGlvbl0KKyAgICBzdXBwb3J0LnJ1bl91bml0dGVzdCgqdGVzdF9jbGFzc2VzKQorCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcGlja2xlLnB5IGIvTGliL3Rlc3QvdGVzdF9waWNrbGUucHkKaW5kZXggOWRhMmNhZS4uZjUyZDRiZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9waWNrbGUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9waWNrbGUucHkKQEAgLTEsNSArMSw2IEBACiBpbXBvcnQgcGlja2xlCiBpbXBvcnQgaW8KK2ltcG9ydCBjb2xsZWN0aW9ucwogCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIApAQCAtNyw2ICs4LDcgQEAKIGZyb20gdGVzdC5waWNrbGV0ZXN0ZXIgaW1wb3J0IEFic3RyYWN0UGlja2xlTW9kdWxlVGVzdHMKIGZyb20gdGVzdC5waWNrbGV0ZXN0ZXIgaW1wb3J0IEFic3RyYWN0UGVyc2lzdGVudFBpY2tsZXJUZXN0cwogZnJvbSB0ZXN0LnBpY2tsZXRlc3RlciBpbXBvcnQgQWJzdHJhY3RQaWNrbGVyVW5waWNrbGVyT2JqZWN0VGVzdHMKK2Zyb20gdGVzdC5waWNrbGV0ZXN0ZXIgaW1wb3J0IEFic3RyYWN0RGlzcGF0Y2hUYWJsZVRlc3RzCiBmcm9tIHRlc3QucGlja2xldGVzdGVyIGltcG9ydCBCaWdtZW1QaWNrbGVUZXN0cwogCiB0cnk6CkBAIC04MCw2ICs4MiwxOCBAQAogICAgIHVucGlja2xlcl9jbGFzcyA9IHBpY2tsZS5fVW5waWNrbGVyCiAKIAorY2xhc3MgUHlEaXNwYXRjaFRhYmxlVGVzdHMoQWJzdHJhY3REaXNwYXRjaFRhYmxlVGVzdHMpOgorICAgIHBpY2tsZXJfY2xhc3MgPSBwaWNrbGUuX1BpY2tsZXIKKyAgICBkZWYgZ2V0X2Rpc3BhdGNoX3RhYmxlKHNlbGYpOgorICAgICAgICByZXR1cm4gcGlja2xlLmRpc3BhdGNoX3RhYmxlLmNvcHkoKQorCisKK2NsYXNzIFB5Q2hhaW5EaXNwYXRjaFRhYmxlVGVzdHMoQWJzdHJhY3REaXNwYXRjaFRhYmxlVGVzdHMpOgorICAgIHBpY2tsZXJfY2xhc3MgPSBwaWNrbGUuX1BpY2tsZXIKKyAgICBkZWYgZ2V0X2Rpc3BhdGNoX3RhYmxlKHNlbGYpOgorICAgICAgICByZXR1cm4gY29sbGVjdGlvbnMuQ2hhaW5NYXAoe30sIHBpY2tsZS5kaXNwYXRjaF90YWJsZSkKKworCiBpZiBoYXNfY19pbXBsZW1lbnRhdGlvbjoKICAgICBjbGFzcyBDUGlja2xlclRlc3RzKFB5UGlja2xlclRlc3RzKToKICAgICAgICAgcGlja2xlciA9IF9waWNrbGUuUGlja2xlcgpAQCAtMTAxLDE0ICsxMTUsMjYgQEAKICAgICAgICAgcGlja2xlcl9jbGFzcyA9IF9waWNrbGUuUGlja2xlcgogICAgICAgICB1bnBpY2tsZXJfY2xhc3MgPSBfcGlja2xlLlVucGlja2xlcgogCisgICAgY2xhc3MgQ0Rpc3BhdGNoVGFibGVUZXN0cyhBYnN0cmFjdERpc3BhdGNoVGFibGVUZXN0cyk6CisgICAgICAgIHBpY2tsZXJfY2xhc3MgPSBwaWNrbGUuUGlja2xlcgorICAgICAgICBkZWYgZ2V0X2Rpc3BhdGNoX3RhYmxlKHNlbGYpOgorICAgICAgICAgICAgcmV0dXJuIHBpY2tsZS5kaXNwYXRjaF90YWJsZS5jb3B5KCkKKworICAgIGNsYXNzIENDaGFpbkRpc3BhdGNoVGFibGVUZXN0cyhBYnN0cmFjdERpc3BhdGNoVGFibGVUZXN0cyk6CisgICAgICAgIHBpY2tsZXJfY2xhc3MgPSBwaWNrbGUuUGlja2xlcgorICAgICAgICBkZWYgZ2V0X2Rpc3BhdGNoX3RhYmxlKHNlbGYpOgorICAgICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb25zLkNoYWluTWFwKHt9LCBwaWNrbGUuZGlzcGF0Y2hfdGFibGUpCisKIAogZGVmIHRlc3RfbWFpbigpOgotICAgIHRlc3RzID0gW1BpY2tsZVRlc3RzLCBQeVBpY2tsZXJUZXN0cywgUHlQZXJzUGlja2xlclRlc3RzXQorICAgIHRlc3RzID0gW1BpY2tsZVRlc3RzLCBQeVBpY2tsZXJUZXN0cywgUHlQZXJzUGlja2xlclRlc3RzLAorICAgICAgICAgICAgIFB5RGlzcGF0Y2hUYWJsZVRlc3RzLCBQeUNoYWluRGlzcGF0Y2hUYWJsZVRlc3RzXQogICAgIGlmIGhhc19jX2ltcGxlbWVudGF0aW9uOgogICAgICAgICB0ZXN0cy5leHRlbmQoW0NQaWNrbGVyVGVzdHMsIENQZXJzUGlja2xlclRlc3RzLAogICAgICAgICAgICAgICAgICAgICAgIENEdW1wUGlja2xlX0xvYWRQaWNrbGUsIER1bXBQaWNrbGVfQ0xvYWRQaWNrbGUsCiAgICAgICAgICAgICAgICAgICAgICAgUHlQaWNrbGVyVW5waWNrbGVyT2JqZWN0VGVzdHMsCiAgICAgICAgICAgICAgICAgICAgICAgQ1BpY2tsZXJVbnBpY2tsZXJPYmplY3RUZXN0cywKKyAgICAgICAgICAgICAgICAgICAgICBDRGlzcGF0Y2hUYWJsZVRlc3RzLCBDQ2hhaW5EaXNwYXRjaFRhYmxlVGVzdHMsCiAgICAgICAgICAgICAgICAgICAgICAgSW5NZW1vcnlQaWNrbGVUZXN0c10pCiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoKnRlc3RzKQogICAgIHN1cHBvcnQucnVuX2RvY3Rlc3QocGlja2xlKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9waXBlcy5weSBiL0xpYi90ZXN0L3Rlc3RfcGlwZXMucHkKaW5kZXggZDViODg2Zi4uNmE3YjQ1ZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9waXBlcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X3BpcGVzLnB5CkBAIC03OSwyMSArNzksNiBAQAogICAgICAgICB3aXRoIG9wZW4oVEVTVEZOKSBhcyBmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgZCkKIAotICAgIGRlZiB0ZXN0UXVvdGluZyhzZWxmKToKLSAgICAgICAgc2FmZXVucXVvdGVkID0gc3RyaW5nLmFzY2lpX2xldHRlcnMgKyBzdHJpbmcuZGlnaXRzICsgJ0AlXy0rPTosLi8nCi0gICAgICAgIHVuaWNvZGVfc2FtcGxlID0gJ1x4ZTlceGUwXHhkZicgICMgZSArIGFjdXRlIGFjY2VudCwgYSArIGdyYXZlLCBzaGFycCBzCi0gICAgICAgIHVuc2FmZSA9ICciYCRcXCEnICsgdW5pY29kZV9zYW1wbGUKLQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBpcGVzLnF1b3RlKCcnKSwgIicnIikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwaXBlcy5xdW90ZShzYWZldW5xdW90ZWQpLCBzYWZldW5xdW90ZWQpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocGlwZXMucXVvdGUoJ3Rlc3QgZmlsZSBuYW1lJyksICIndGVzdCBmaWxlIG5hbWUnIikKLSAgICAgICAgZm9yIHUgaW4gdW5zYWZlOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwaXBlcy5xdW90ZSgndGVzdCVzbmFtZScgJSB1KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIndGVzdCVzbmFtZSciICUgdSkKLSAgICAgICAgZm9yIHUgaW4gdW5zYWZlOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwaXBlcy5xdW90ZSgidGVzdCVzJ25hbWUnIiAlIHUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJ3Rlc3QlcydcIidcIiduYW1lJ1wiJ1wiJyciICUgdSkKLQogICAgIGRlZiB0ZXN0UmVwcihzZWxmKToKICAgICAgICAgdCA9IHBpcGVzLlRlbXBsYXRlKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXByKHQpLCAiPFRlbXBsYXRlIGluc3RhbmNlLCBzdGVwcz1bXT4iKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wa2dpbXBvcnQucHkgYi9MaWIvdGVzdC90ZXN0X3BrZ2ltcG9ydC5weQppbmRleCBjMzdlOTM2Li5hODQyNmI1IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BrZ2ltcG9ydC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3BrZ2ltcG9ydC5weQpAQCAtNyw3ICs3LDcgQEAKIGltcG9ydCB1bml0dGVzdAogCiBmcm9tIGltcCBpbXBvcnQgY2FjaGVfZnJvbV9zb3VyY2UKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QsIGNyZWF0ZV9lbXB0eV9maWxlCiAKIGNsYXNzIFRlc3RJbXBvcnQodW5pdHRlc3QuVGVzdENhc2UpOgogCkBAIC0yOSw3ICsyOSw3IEBACiAgICAgICAgIHNlbGYucGFja2FnZV9kaXIgPSBvcy5wYXRoLmpvaW4oc2VsZi50ZXN0X2RpciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnBhY2thZ2VfbmFtZSkKICAgICAgICAgb3MubWtkaXIoc2VsZi5wYWNrYWdlX2RpcikKLSAgICAgICAgb3Blbihvcy5wYXRoLmpvaW4oc2VsZi5wYWNrYWdlX2RpciwgJ19faW5pdF9fLnB5JyksICd3JykuY2xvc2UoKQorICAgICAgICBjcmVhdGVfZW1wdHlfZmlsZShvcy5wYXRoLmpvaW4oc2VsZi5wYWNrYWdlX2RpciwgJ19faW5pdF9fLnB5JykpCiAgICAgICAgIHNlbGYubW9kdWxlX3BhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi5wYWNrYWdlX2RpciwgJ2Zvby5weScpCiAKICAgICBkZWYgdGVhckRvd24oc2VsZik6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3BsYXRmb3JtLnB5IGIvTGliL3Rlc3QvdGVzdF9wbGF0Zm9ybS5weQppbmRleCA4NzUxYWE4Li5jZmU2MjNhIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BsYXRmb3JtLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcGxhdGZvcm0ucHkKQEAgLTEsOCArMSw5IEBACi1pbXBvcnQgc3lzCiBpbXBvcnQgb3MKLWltcG9ydCB1bml0dGVzdAogaW1wb3J0IHBsYXRmb3JtCiBpbXBvcnQgc3VicHJvY2VzcworaW1wb3J0IHN5cworaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgd2FybmluZ3MKIAogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiAKQEAgLTU2LDEzICs1NywxMSBAQAogCiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICBzZWxmLnNhdmVfdmVyc2lvbiA9IHN5cy52ZXJzaW9uCi0gICAgICAgIHNlbGYuc2F2ZV9zdWJ2ZXJzaW9uID0gc3lzLnN1YnZlcnNpb24KICAgICAgICAgc2VsZi5zYXZlX21lcmN1cmlhbCA9IHN5cy5fbWVyY3VyaWFsCiAgICAgICAgIHNlbGYuc2F2ZV9wbGF0Zm9ybSA9IHN5cy5wbGF0Zm9ybQogCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgogICAgICAgICBzeXMudmVyc2lvbiA9IHNlbGYuc2F2ZV92ZXJzaW9uCi0gICAgICAgIHN5cy5zdWJ2ZXJzaW9uID0gc2VsZi5zYXZlX3N1YnZlcnNpb24KICAgICAgICAgc3lzLl9tZXJjdXJpYWwgPSBzZWxmLnNhdmVfbWVyY3VyaWFsCiAgICAgICAgIHN5cy5wbGF0Zm9ybSA9IHNlbGYuc2F2ZV9wbGF0Zm9ybQogCkBAIC03Nyw3ICs3Niw3IEBACiAgICAgICAgICAgICAgKCdJcm9uUHl0aG9uJywgJzEuMC4wJywgJycsICcnLCAnJywgJycsICcuTkVUIDIuMC41MDcyNy40MicpKSwKICAgICAgICAgICAgICk6CiAgICAgICAgICAgICAjIGJyYW5jaCBhbmQgcmV2aXNpb24gYXJlIG5vdCAicGFyc2VkIiwgYnV0IGZldGNoZWQKLSAgICAgICAgICAgICMgZnJvbSBzeXMuc3VidmVyc2lvbi4gIElnbm9yZSB0aGVtCisgICAgICAgICAgICAjIGZyb20gc3lzLl9tZXJjdXJpYWwuICBJZ25vcmUgdGhlbQogICAgICAgICAgICAgKG5hbWUsIHZlcnNpb24sIGJyYW5jaCwgcmV2aXNpb24sIGJ1aWxkbm8sIGJ1aWxkZGF0ZSwgY29tcGlsZXIpIFwKICAgICAgICAgICAgICAgICAgICA9IHBsYXRmb3JtLl9zeXNfdmVyc2lvbihpbnB1dCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCkBAIC0xMTMsOCArMTEyLDYgQEAKICAgICAgICAgICAgIGlmIHN1YnZlcnNpb24gaXMgTm9uZToKICAgICAgICAgICAgICAgICBpZiBoYXNhdHRyKHN5cywgIl9tZXJjdXJpYWwiKToKICAgICAgICAgICAgICAgICAgICAgZGVsIHN5cy5fbWVyY3VyaWFsCi0gICAgICAgICAgICAgICAgaWYgaGFzYXR0cihzeXMsICJzdWJ2ZXJzaW9uIik6Ci0gICAgICAgICAgICAgICAgICAgIGRlbCBzeXMuc3VidmVyc2lvbgogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBzeXMuX21lcmN1cmlhbCA9IHN1YnZlcnNpb24KICAgICAgICAgICAgIGlmIHN5c19wbGF0Zm9ybSBpcyBub3QgTm9uZToKQEAgLTI0Nyw2ICsyNDQsMzggQEAKICAgICAgICAgICAgICk6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBsYXRmb3JtLl9wYXJzZV9yZWxlYXNlX2ZpbGUoaW5wdXQpLCBvdXRwdXQpCiAKKyAgICBkZWYgdGVzdF9wb3BlbihzZWxmKToKKyAgICAgICAgbXN3aW5kb3dzID0gKHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiKQorCisgICAgICAgIGlmIG1zd2luZG93czoKKyAgICAgICAgICAgIGNvbW1hbmQgPSAnInt9IiAtYyAicHJpbnQoXCdIZWxsb1wnKSInLmZvcm1hdChzeXMuZXhlY3V0YWJsZSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGNvbW1hbmQgPSAiJ3t9JyAtYyAncHJpbnQoXCJIZWxsb1wiKSciLmZvcm1hdChzeXMuZXhlY3V0YWJsZSkKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICB3aXRoIHBsYXRmb3JtLnBvcGVuKGNvbW1hbmQpIGFzIHN0ZG91dDoKKyAgICAgICAgICAgICAgICBoZWxsbyA9IHN0ZG91dC5yZWFkKCkuc3RyaXAoKQorICAgICAgICAgICAgICAgIHN0ZG91dC5jbG9zZSgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoZWxsbywgIkhlbGxvIikKKworICAgICAgICBkYXRhID0gJ3Bsb3AnCisgICAgICAgIGlmIG1zd2luZG93czoKKyAgICAgICAgICAgIGNvbW1hbmQgPSAnInt9IiAtYyAiaW1wb3J0IHN5czsgZGF0YT1zeXMuc3RkaW4ucmVhZCgpOyBleGl0KGxlbihkYXRhKSkiJworICAgICAgICBlbHNlOgorICAgICAgICAgICAgY29tbWFuZCA9ICIne30nIC1jICdpbXBvcnQgc3lzOyBkYXRhPXN5cy5zdGRpbi5yZWFkKCk7IGV4aXQobGVuKGRhdGEpKSciCisgICAgICAgIGNvbW1hbmQgPSBjb21tYW5kLmZvcm1hdChzeXMuZXhlY3V0YWJsZSkKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICB3aXRoIHBsYXRmb3JtLnBvcGVuKGNvbW1hbmQsICd3JykgYXMgc3RkaW46CisgICAgICAgICAgICAgICAgc3Rkb3V0ID0gc3RkaW4ud3JpdGUoZGF0YSkKKyAgICAgICAgICAgICAgICByZXQgPSBzdGRpbi5jbG9zZSgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vdE5vbmUocmV0KQorICAgICAgICAgICAgICAgIGlmIG9zLm5hbWUgPT0gJ250JzoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuY29kZSA9IHJldAorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHJldHVybmNvZGUgPSByZXQgPj4gOAorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmV0dXJuY29kZSwgbGVuKGRhdGEpKQorCiAKIGRlZiB0ZXN0X21haW4oKToKICAgICBzdXBwb3J0LnJ1bl91bml0dGVzdCgKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcG9wbGliLnB5IGIvTGliL3Rlc3QvdGVzdF9wb3BsaWIucHkKaW5kZXggZTM5MDFiOC4uYzA5MjlhMCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9wb3BsaWIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wb3BsaWIucHkKQEAgLTEwOCw2ICsxMDgsMTAgQEAKICAgICBkZWYgY21kX2Fwb3Aoc2VsZiwgYXJnKToKICAgICAgICAgc2VsZi5wdXNoKCcrT0sgZG9uZSBub3RoaW5nLicpCiAKKyAgICBkZWYgY21kX3F1aXQoc2VsZiwgYXJnKToKKyAgICAgICAgc2VsZi5wdXNoKCcrT0sgY2xvc2luZy4nKQorICAgICAgICBzZWxmLmNsb3NlX3doZW5fZG9uZSgpCisKIAogY2xhc3MgRHVtbXlQT1AzU2VydmVyKGFzeW5jb3JlLmRpc3BhdGNoZXIsIHRocmVhZGluZy5UaHJlYWQpOgogCkBAIC0xNjUsMTAgKzE2OSwxMCBAQAogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgc2VsZi5zZXJ2ZXIgPSBEdW1teVBPUDNTZXJ2ZXIoKEhPU1QsIFBPUlQpKQogICAgICAgICBzZWxmLnNlcnZlci5zdGFydCgpCi0gICAgICAgIHNlbGYuY2xpZW50ID0gcG9wbGliLlBPUDMoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCkKKyAgICAgICAgc2VsZi5jbGllbnQgPSBwb3BsaWIuUE9QMyhzZWxmLnNlcnZlci5ob3N0LCBzZWxmLnNlcnZlci5wb3J0LCB0aW1lb3V0PTMpCiAKICAgICBkZWYgdGVhckRvd24oc2VsZik6Ci0gICAgICAgIHNlbGYuY2xpZW50LnF1aXQoKQorICAgICAgICBzZWxmLmNsaWVudC5jbG9zZSgpCiAgICAgICAgIHNlbGYuc2VydmVyLnN0b3AoKQogCiAgICAgZGVmIHRlc3RfZ2V0d2VsY29tZShzZWxmKToKQEAgLTIyOCw2ICsyMzIsMTIgQEAKICAgICAgICAgc2VsZi5jbGllbnQudWlkbCgpCiAgICAgICAgIHNlbGYuY2xpZW50LnVpZGwoJ2ZvbycpCiAKKyAgICBkZWYgdGVzdF9xdWl0KHNlbGYpOgorICAgICAgICByZXNwID0gc2VsZi5jbGllbnQucXVpdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZXNwKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShzZWxmLmNsaWVudC5zb2NrKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShzZWxmLmNsaWVudC5maWxlKQorCiAKIFNVUFBPUlRTX1NTTCA9IEZhbHNlCiBpZiBoYXNhdHRyKHBvcGxpYiwgJ1BPUDNfU1NMJyk6CkBAIC0yNzQsNiArMjg0LDcgQEAKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgRHVtbXlQT1AzSGFuZGxlci5oYW5kbGVfcmVhZChzZWxmKQogCisKICAgICBjbGFzcyBUZXN0UE9QM19TU0xDbGFzcyhUZXN0UE9QM0NsYXNzKToKICAgICAgICAgIyByZXBlYXQgcHJldmlvdXMgdGVzdHMgYnkgdXNpbmcgcG9wbGliLlBPUDNfU1NMCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcG9zaXgucHkgYi9MaWIvdGVzdC90ZXN0X3Bvc2l4LnB5CmluZGV4IDA5ZjA0ZWMuLmMzZGZmZmIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcG9zaXgucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wb3NpeC5weQpAQCAtOSw2ICs5LDcgQEAKIGltcG9ydCBzeXMKIGltcG9ydCB0aW1lCiBpbXBvcnQgb3MKK2ltcG9ydCBmY250bAogaW1wb3J0IHB3ZAogaW1wb3J0IHNodXRpbAogaW1wb3J0IHN0YXQKQEAgLTQyLDcgKzQzLDcgQEAKICAgICAgICAgTk9fQVJHX0ZVTkNUSU9OUyA9IFsgImN0ZXJtaWQiLCAiZ2V0Y3dkIiwgImdldGN3ZGIiLCAidW5hbWUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGltZXMiLCAiZ2V0bG9hZGF2ZyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnZXRlZ2lkIiwgImdldGV1aWQiLCAiZ2V0Z2lkIiwgImdldGdyb3VwcyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnZXRwaWQiLCAiZ2V0cGdycCIsICJnZXRwcGlkIiwgImdldHVpZCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnZXRwaWQiLCAiZ2V0cGdycCIsICJnZXRwcGlkIiwgImdldHVpZCIsICJzeW5jIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0KIAogICAgICAgICBmb3IgbmFtZSBpbiBOT19BUkdfRlVOQ1RJT05TOgpAQCAtMTM3LDYgKzEzOCwxNTkgQEAKICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgZnAuY2xvc2UoKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3RydW5jYXRlJyksICJ0ZXN0IG5lZWRzIHBvc2l4LnRydW5jYXRlKCkiKQorICAgIGRlZiB0ZXN0X3RydW5jYXRlKHNlbGYpOgorICAgICAgICB3aXRoIG9wZW4oc3VwcG9ydC5URVNURk4sICd3JykgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZSgndGVzdCcpCisgICAgICAgICAgICBmcC5mbHVzaCgpCisgICAgICAgIHBvc2l4LnRydW5jYXRlKHN1cHBvcnQuVEVTVEZOLCAwKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2ZleGVjdmUnKSwgInRlc3QgbmVlZHMgcG9zaXguZmV4ZWN2ZSgpIikKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnZm9yaycpLCAidGVzdCBuZWVkcyBvcy5mb3JrKCkiKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIob3MsICd3YWl0cGlkJyksICJ0ZXN0IG5lZWRzIG9zLndhaXRwaWQoKSIpCisgICAgZGVmIHRlc3RfZmV4ZWN2ZShzZWxmKToKKyAgICAgICAgZnAgPSBvcy5vcGVuKHN5cy5leGVjdXRhYmxlLCBvcy5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcGlkID0gb3MuZm9yaygpCisgICAgICAgICAgICBpZiBwaWQgPT0gMDoKKyAgICAgICAgICAgICAgICBvcy5jaGRpcihvcy5wYXRoLnNwbGl0KHN5cy5leGVjdXRhYmxlKVswXSkKKyAgICAgICAgICAgICAgICBwb3NpeC5mZXhlY3ZlKGZwLCBbc3lzLmV4ZWN1dGFibGUsICctYycsICdwYXNzJ10sIG9zLmVudmlyb24pCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3Mud2FpdHBpZChwaWQsIDApLCAocGlkLCAwKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZwKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3dhaXRpZCcpLCAidGVzdCBuZWVkcyBwb3NpeC53YWl0aWQoKSIpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ2ZvcmsnKSwgInRlc3QgbmVlZHMgb3MuZm9yaygpIikKKyAgICBkZWYgdGVzdF93YWl0aWQoc2VsZik6CisgICAgICAgIHBpZCA9IG9zLmZvcmsoKQorICAgICAgICBpZiBwaWQgPT0gMDoKKyAgICAgICAgICAgIG9zLmNoZGlyKG9zLnBhdGguc3BsaXQoc3lzLmV4ZWN1dGFibGUpWzBdKQorICAgICAgICAgICAgcG9zaXguZXhlY3ZlKHN5cy5leGVjdXRhYmxlLCBbc3lzLmV4ZWN1dGFibGUsICctYycsICdwYXNzJ10sIG9zLmVudmlyb24pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXMgPSBwb3NpeC53YWl0aWQocG9zaXguUF9QSUQsIHBpZCwgcG9zaXguV0VYSVRFRCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocGlkLCByZXMuc2lfcGlkKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2xvY2tmJyksICJ0ZXN0IG5lZWRzIHBvc2l4LmxvY2tmKCkiKQorICAgIGRlZiB0ZXN0X2xvY2tmKHNlbGYpOgorICAgICAgICBmZCA9IG9zLm9wZW4oc3VwcG9ydC5URVNURk4sIG9zLk9fV1JPTkxZIHwgb3MuT19DUkVBVCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3Mud3JpdGUoZmQsIGIndGVzdCcpCisgICAgICAgICAgICBvcy5sc2VlayhmZCwgMCwgb3MuU0VFS19TRVQpCisgICAgICAgICAgICBwb3NpeC5sb2NrZihmZCwgcG9zaXguRl9MT0NLLCA0KQorICAgICAgICAgICAgIyBzZWN0aW9uIGlzIGxvY2tlZAorICAgICAgICAgICAgcG9zaXgubG9ja2YoZmQsIHBvc2l4LkZfVUxPQ0ssIDQpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jbG9zZShmZCkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdwcmVhZCcpLCAidGVzdCBuZWVkcyBwb3NpeC5wcmVhZCgpIikKKyAgICBkZWYgdGVzdF9wcmVhZChzZWxmKToKKyAgICAgICAgZmQgPSBvcy5vcGVuKHN1cHBvcnQuVEVTVEZOLCBvcy5PX1JEV1IgfCBvcy5PX0NSRUFUKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBvcy53cml0ZShmZCwgYid0ZXN0JykKKyAgICAgICAgICAgIG9zLmxzZWVrKGZkLCAwLCBvcy5TRUVLX1NFVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYidlcycsIHBvc2l4LnByZWFkKGZkLCAyLCAxKSkKKyAgICAgICAgICAgICMgdGhlIGZpcnN0IHByZWFkKCkgc2hvdWxkbid0IGRpc3R1cmIgdGhlIGZpbGUgb2Zmc2V0CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIndGUnLCBwb3NpeC5yZWFkKGZkLCAyKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3B3cml0ZScpLCAidGVzdCBuZWVkcyBwb3NpeC5wd3JpdGUoKSIpCisgICAgZGVmIHRlc3RfcHdyaXRlKHNlbGYpOgorICAgICAgICBmZCA9IG9zLm9wZW4oc3VwcG9ydC5URVNURk4sIG9zLk9fUkRXUiB8IG9zLk9fQ1JFQVQpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG9zLndyaXRlKGZkLCBiJ3Rlc3QnKQorICAgICAgICAgICAgb3MubHNlZWsoZmQsIDAsIG9zLlNFRUtfU0VUKQorICAgICAgICAgICAgcG9zaXgucHdyaXRlKGZkLCBiJ3h4JywgMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYid0eHh0JywgcG9zaXgucmVhZChmZCwgNCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jbG9zZShmZCkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdwb3NpeF9mYWxsb2NhdGUnKSwKKyAgICAgICAgInRlc3QgbmVlZHMgcG9zaXgucG9zaXhfZmFsbG9jYXRlKCkiKQorICAgIGRlZiB0ZXN0X3Bvc2l4X2ZhbGxvY2F0ZShzZWxmKToKKyAgICAgICAgZmQgPSBvcy5vcGVuKHN1cHBvcnQuVEVTVEZOLCBvcy5PX1dST05MWSB8IG9zLk9fQ1JFQVQpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHBvc2l4LnBvc2l4X2ZhbGxvY2F0ZShmZCwgMCwgMTApCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGluc3Q6CisgICAgICAgICAgICAjIGlzc3VlMTA4MTIsIFpGUyBkb2Vzbid0IGFwcGVhciB0byBzdXBwb3J0IHBvc2l4X2ZhbGxvY2F0ZSwKKyAgICAgICAgICAgICMgc28gc2tpcCBTb2xhcmlzLWJhc2VkIHNpbmNlIHRoZXkgYXJlIGxpa2VseSB0byBoYXZlIFpGUy4KKyAgICAgICAgICAgIGlmIGluc3QuZXJybm8gIT0gZXJybm8uRUlOVkFMIG9yIG5vdCBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgic3Vub3MiKToKKyAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgb3MuY2xvc2UoZmQpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAncG9zaXhfZmFkdmlzZScpLAorICAgICAgICAidGVzdCBuZWVkcyBwb3NpeC5wb3NpeF9mYWR2aXNlKCkiKQorICAgIGRlZiB0ZXN0X3Bvc2l4X2ZhZHZpc2Uoc2VsZik6CisgICAgICAgIGZkID0gb3Mub3BlbihzdXBwb3J0LlRFU1RGTiwgb3MuT19SRE9OTFkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHBvc2l4LnBvc2l4X2ZhZHZpc2UoZmQsIDAsIDAsIHBvc2l4LlBPU0lYX0ZBRFZfV0lMTE5FRUQpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jbG9zZShmZCkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdmdXRpbWVzJyksICJ0ZXN0IG5lZWRzIHBvc2l4LmZ1dGltZXMoKSIpCisgICAgZGVmIHRlc3RfZnV0aW1lcyhzZWxmKToKKyAgICAgICAgbm93ID0gdGltZS50aW1lKCkKKyAgICAgICAgZmQgPSBvcy5vcGVuKHN1cHBvcnQuVEVTVEZOLCBvcy5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcG9zaXguZnV0aW1lcyhmZCwgTm9uZSkKKyAgICAgICAgICAgIHBvc2l4LmZ1dGltZXMoZmQpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LmZ1dGltZXMsIGZkLCAoTm9uZSwgTm9uZSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LmZ1dGltZXMsIGZkLCAobm93LCBOb25lKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXguZnV0aW1lcywgZmQsIChOb25lLCBub3cpKQorICAgICAgICAgICAgcG9zaXguZnV0aW1lcyhmZCwgKGludChub3cpLCBpbnQobm93KSkpCisgICAgICAgICAgICBwb3NpeC5mdXRpbWVzKGZkLCAobm93LCBub3cpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgb3MuY2xvc2UoZmQpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnbHV0aW1lcycpLCAidGVzdCBuZWVkcyBwb3NpeC5sdXRpbWVzKCkiKQorICAgIGRlZiB0ZXN0X2x1dGltZXMoc2VsZik6CisgICAgICAgIG5vdyA9IHRpbWUudGltZSgpCisgICAgICAgIHBvc2l4Lmx1dGltZXMoc3VwcG9ydC5URVNURk4sIE5vbmUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXgubHV0aW1lcywgc3VwcG9ydC5URVNURk4sIChOb25lLCBOb25lKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5sdXRpbWVzLCBzdXBwb3J0LlRFU1RGTiwgKG5vdywgTm9uZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXgubHV0aW1lcywgc3VwcG9ydC5URVNURk4sIChOb25lLCBub3cpKQorICAgICAgICBwb3NpeC5sdXRpbWVzKHN1cHBvcnQuVEVTVEZOLCAoaW50KG5vdyksIGludChub3cpKSkKKyAgICAgICAgcG9zaXgubHV0aW1lcyhzdXBwb3J0LlRFU1RGTiwgKG5vdywgbm93KSkKKyAgICAgICAgcG9zaXgubHV0aW1lcyhzdXBwb3J0LlRFU1RGTikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdmdXRpbWVucycpLCAidGVzdCBuZWVkcyBwb3NpeC5mdXRpbWVucygpIikKKyAgICBkZWYgdGVzdF9mdXRpbWVucyhzZWxmKToKKyAgICAgICAgbm93ID0gdGltZS50aW1lKCkKKyAgICAgICAgZmQgPSBvcy5vcGVuKHN1cHBvcnQuVEVTVEZOLCBvcy5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5mdXRpbWVucywgZmQsIChOb25lLCBOb25lKSwgKE5vbmUsIE5vbmUpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5mdXRpbWVucywgZmQsIChub3csIDApLCBOb25lKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5mdXRpbWVucywgZmQsIE5vbmUsIChub3csIDApKQorICAgICAgICAgICAgcG9zaXguZnV0aW1lbnMoZmQsIChpbnQobm93KSwgaW50KChub3cgLSBpbnQobm93KSkgKiAxZTkpKSwKKyAgICAgICAgICAgICAgICAgICAgKGludChub3cpLCBpbnQoKG5vdyAtIGludChub3cpKSAqIDFlOSkpKQorICAgICAgICAgICAgcG9zaXguZnV0aW1lbnMoZmQpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jbG9zZShmZCkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICd3cml0ZXYnKSwgInRlc3QgbmVlZHMgcG9zaXgud3JpdGV2KCkiKQorICAgIGRlZiB0ZXN0X3dyaXRldihzZWxmKToKKyAgICAgICAgZmQgPSBvcy5vcGVuKHN1cHBvcnQuVEVTVEZOLCBvcy5PX1JEV1IgfCBvcy5PX0NSRUFUKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBvcy53cml0ZXYoZmQsIChiJ3Rlc3QxJywgYid0dDInLCBiJ3QzJykpCisgICAgICAgICAgICBvcy5sc2VlayhmZCwgMCwgb3MuU0VFS19TRVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIndGVzdDF0dDJ0MycsIHBvc2l4LnJlYWQoZmQsIDEwKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3JlYWR2JyksICJ0ZXN0IG5lZWRzIHBvc2l4LnJlYWR2KCkiKQorICAgIGRlZiB0ZXN0X3JlYWR2KHNlbGYpOgorICAgICAgICBmZCA9IG9zLm9wZW4oc3VwcG9ydC5URVNURk4sIG9zLk9fUkRXUiB8IG9zLk9fQ1JFQVQpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG9zLndyaXRlKGZkLCBiJ3Rlc3QxdHQydDMnKQorICAgICAgICAgICAgb3MubHNlZWsoZmQsIDAsIG9zLlNFRUtfU0VUKQorICAgICAgICAgICAgYnVmID0gW2J5dGVhcnJheShpKSBmb3IgaSBpbiBbNSwgMywgMl1dCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBvc2l4LnJlYWR2KGZkLCBidWYpLCAxMCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW2IndGVzdDEnLCBiJ3R0MicsIGIndDMnXSwgW2J5dGVzKGkpIGZvciBpIGluIGJ1Zl0pCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jbG9zZShmZCkKKwogICAgIGRlZiB0ZXN0X2R1cChzZWxmKToKICAgICAgICAgaWYgaGFzYXR0cihwb3NpeCwgJ2R1cCcpOgogICAgICAgICAgICAgZnAgPSBvcGVuKHN1cHBvcnQuVEVTVEZOKQpAQCAtMTYyLDYgKzMxNiwxMyBAQAogICAgICAgICAgICAgICAgIGZwMS5jbG9zZSgpCiAgICAgICAgICAgICAgICAgZnAyLmNsb3NlKCkKIAorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIob3MsICdPX0NMT0VYRUMnKSwgIm5lZWRzIG9zLk9fQ0xPRVhFQyIpCisgICAgQHN1cHBvcnQucmVxdWlyZXNfbGludXhfdmVyc2lvbigyLCA2LCAyMykKKyAgICBkZWYgdGVzdF9vc2Nsb2V4ZWMoc2VsZik6CisgICAgICAgIGZkID0gb3Mub3BlbihzdXBwb3J0LlRFU1RGTiwgb3MuT19SRE9OTFl8b3MuT19DTE9FWEVDKQorICAgICAgICBzZWxmLmFkZENsZWFudXAob3MuY2xvc2UsIGZkKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZmNudGwuZmNudGwoZmQsIGZjbnRsLkZfR0VURkQpICYgZmNudGwuRkRfQ0xPRVhFQykKKwogICAgIGRlZiB0ZXN0X29zZXhsb2NrKHNlbGYpOgogICAgICAgICBpZiBoYXNhdHRyKHBvc2l4LCAiT19FWExPQ0siKToKICAgICAgICAgICAgIGZkID0gb3Mub3BlbihzdXBwb3J0LlRFU1RGTiwKQEAgLTI1NCw3ICs0MTUsNyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBwb3NpeC5jaG93biwgc3VwcG9ydC5URVNURk4sIC0xLCAtMSkKIAogICAgICAgICAjIHJlLWNyZWF0ZSB0aGUgZmlsZQotICAgICAgICBvcGVuKHN1cHBvcnQuVEVTVEZOLCAndycpLmNsb3NlKCkKKyAgICAgICAgc3VwcG9ydC5jcmVhdGVfZW1wdHlfZmlsZShzdXBwb3J0LlRFU1RGTikKICAgICAgICAgc2VsZi5fdGVzdF9hbGxfY2hvd25fY29tbW9uKHBvc2l4LmNob3duLCBzdXBwb3J0LlRFU1RGTikKIAogICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdmY2hvd24nKSwgInRlc3QgbmVlZHMgb3MuZmNob3duKCkiKQpAQCAtMjkwLDYgKzQ1MSwyMCBAQAogICAgICAgICBpZiBoYXNhdHRyKHBvc2l4LCAnbGlzdGRpcicpOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHN1cHBvcnQuVEVTVEZOIGluIHBvc2l4Lmxpc3RkaXIoKSkKIAorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdmbGlzdGRpcicpLCAidGVzdCBuZWVkcyBwb3NpeC5mbGlzdGRpcigpIikKKyAgICBkZWYgdGVzdF9mbGlzdGRpcihzZWxmKToKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICBzZWxmLmFkZENsZWFudXAocG9zaXguY2xvc2UsIGYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzb3J0ZWQocG9zaXgubGlzdGRpcignLicpKSwKKyAgICAgICAgICAgIHNvcnRlZChwb3NpeC5mbGlzdGRpcihmKSkKKyAgICAgICAgICAgICkKKyAgICAgICAgIyBDaGVjayB0aGF0IHRoZSBmZCBvZmZzZXQgd2FzIHJlc2V0IChpc3N1ZSAjMTM3MzkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzb3J0ZWQocG9zaXgubGlzdGRpcignLicpKSwKKyAgICAgICAgICAgIHNvcnRlZChwb3NpeC5mbGlzdGRpcihmKSkKKyAgICAgICAgICAgICkKKwogICAgIGRlZiB0ZXN0X2FjY2VzcyhzZWxmKToKICAgICAgICAgaWYgaGFzYXR0cihwb3NpeCwgJ2FjY2VzcycpOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHBvc2l4LmFjY2VzcyhzdXBwb3J0LlRFU1RGTiwgb3MuUl9PSykpCkBAIC0zMTAsNiArNDg1LDMyIEBACiAgICAgICAgICAgICBvcy5jbG9zZShyZWFkZXIpCiAgICAgICAgICAgICBvcy5jbG9zZSh3cml0ZXIpCiAKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAncGlwZTInKSwgInRlc3QgbmVlZHMgb3MucGlwZTIoKSIpCisgICAgQHN1cHBvcnQucmVxdWlyZXNfbGludXhfdmVyc2lvbigyLCA2LCAyNykKKyAgICBkZWYgdGVzdF9waXBlMihzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBvcy5waXBlMiwgJ0RFQURCRUVGJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBvcy5waXBlMiwgMCwgMCkKKworICAgICAgICAjIHRyeSBjYWxsaW5nIHdpdGggZmxhZ3MgPSAwLCBsaWtlIG9zLnBpcGUoKQorICAgICAgICByLCB3ID0gb3MucGlwZTIoMCkKKyAgICAgICAgb3MuY2xvc2UocikKKyAgICAgICAgb3MuY2xvc2UodykKKworICAgICAgICAjIHRlc3QgZmxhZ3MKKyAgICAgICAgciwgdyA9IG9zLnBpcGUyKG9zLk9fQ0xPRVhFQ3xvcy5PX05PTkJMT0NLKQorICAgICAgICBzZWxmLmFkZENsZWFudXAob3MuY2xvc2UsIHIpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChvcy5jbG9zZSwgdykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZjbnRsLmZjbnRsKHIsIGZjbnRsLkZfR0VURkQpICYgZmNudGwuRkRfQ0xPRVhFQykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZjbnRsLmZjbnRsKHcsIGZjbnRsLkZfR0VURkQpICYgZmNudGwuRkRfQ0xPRVhFQykKKyAgICAgICAgIyB0cnkgcmVhZGluZyBmcm9tIGFuIGVtcHR5IHBpcGU6IHRoaXMgc2hvdWxkIGZhaWwsIG5vdCBibG9jaworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBvcy5yZWFkLCByLCAxKQorICAgICAgICAjIHRyeSBhIHdyaXRlIGJpZyBlbm91Z2ggdG8gZmlsbC11cCB0aGUgcGlwZTogdGhpcyBzaG91bGQgZWl0aGVyCisgICAgICAgICMgZmFpbCBvciBwZXJmb3JtIGEgcGFydGlhbCB3cml0ZSwgbm90IGJsb2NrCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG9zLndyaXRlKHcsIGIneCcgKiBzdXBwb3J0LlBJUEVfTUFYX1NJWkUpCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAgICAgcGFzcworCiAgICAgZGVmIHRlc3RfdXRpbWUoc2VsZik6CiAgICAgICAgIGlmIGhhc2F0dHIocG9zaXgsICd1dGltZScpOgogICAgICAgICAgICAgbm93ID0gdGltZS50aW1lKCkKQEAgLTQxMCw2ICs2MTEsMjEgQEAKICAgICAgICAgICAgICAgICBvcy5jaGRpcihjdXJkaXIpCiAgICAgICAgICAgICAgICAgc3VwcG9ydC5ybXRyZWUoYmFzZV9wYXRoKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2dldGdyb3VwbGlzdCcpLCAidGVzdCBuZWVkcyBwb3NpeC5nZXRncm91cGxpc3QoKSIpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwd2QsICdnZXRwd3VpZCcpLCAidGVzdCBuZWVkcyBwd2QuZ2V0cHd1aWQoKSIpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ2dldHVpZCcpLCAidGVzdCBuZWVkcyBvcy5nZXR1aWQoKSIpCisgICAgZGVmIHRlc3RfZ2V0Z3JvdXBsaXN0KHNlbGYpOgorICAgICAgICB3aXRoIG9zLnBvcGVuKCdpZCAtRycpIGFzIGlkZzoKKyAgICAgICAgICAgIGdyb3VwcyA9IGlkZy5yZWFkKCkuc3RyaXAoKQorCisgICAgICAgIGlmIG5vdCBncm91cHM6CisgICAgICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgibmVlZCB3b3JraW5nICdpZCAtRyciKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzZXQoW2ludCh4KSBmb3IgeCBpbiBncm91cHMuc3BsaXQoKV0pLAorICAgICAgICAgICAgc2V0KHBvc2l4LmdldGdyb3VwbGlzdChwd2QuZ2V0cHd1aWQob3MuZ2V0dWlkKCkpWzBdLAorICAgICAgICAgICAgICAgIHB3ZC5nZXRwd3VpZChvcy5nZXR1aWQoKSlbM10pKSkKKwogICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIob3MsICdnZXRlZ2lkJyksICJ0ZXN0IG5lZWRzIG9zLmdldGVnaWQoKSIpCiAgICAgZGVmIHRlc3RfZ2V0Z3JvdXBzKHNlbGYpOgogICAgICAgICB3aXRoIG9zLnBvcGVuKCdpZCAtRycpIGFzIGlkZzoKQEAgLTQyNiw2ICs2NDIsMzY2IEBACiAgICAgICAgICAgICAgICAgc2V0KFtpbnQoeCkgZm9yIHggaW4gZ3JvdXBzLnNwbGl0KCldKSwKICAgICAgICAgICAgICAgICBzZXQocG9zaXguZ2V0Z3JvdXBzKCkgKyBbcG9zaXguZ2V0ZWdpZCgpXSkpCiAKKyAgICAjIHRlc3RzIGZvciB0aGUgcG9zaXggKmF0IGZ1bmN0aW9ucyBmb2xsb3cKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdmYWNjZXNzYXQnKSwgInRlc3QgbmVlZHMgcG9zaXguZmFjY2Vzc2F0KCkiKQorICAgIGRlZiB0ZXN0X2ZhY2Nlc3NhdChzZWxmKToKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUocG9zaXguZmFjY2Vzc2F0KGYsIHN1cHBvcnQuVEVTVEZOLCBvcy5SX09LKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnZmNobW9kYXQnKSwgInRlc3QgbmVlZHMgcG9zaXguZmNobW9kYXQoKSIpCisgICAgZGVmIHRlc3RfZmNobW9kYXQoc2VsZik6CisgICAgICAgIG9zLmNobW9kKHN1cHBvcnQuVEVTVEZOLCBzdGF0LlNfSVJVU1IpCisKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC5mY2htb2RhdChmLCBzdXBwb3J0LlRFU1RGTiwgc3RhdC5TX0lSVVNSIHwgc3RhdC5TX0lXVVNSKQorCisgICAgICAgICAgICBzID0gcG9zaXguc3RhdChzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc1swXSAmIHN0YXQuU19JUldYVSwgc3RhdC5TX0lSVVNSIHwgc3RhdC5TX0lXVVNSKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgcG9zaXguY2xvc2UoZikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdmY2hvd25hdCcpLCAidGVzdCBuZWVkcyBwb3NpeC5mY2hvd25hdCgpIikKKyAgICBkZWYgdGVzdF9mY2hvd25hdChzZWxmKToKKyAgICAgICAgc3VwcG9ydC51bmxpbmsoc3VwcG9ydC5URVNURk4pCisgICAgICAgIHN1cHBvcnQuY3JlYXRlX2VtcHR5X2ZpbGUoc3VwcG9ydC5URVNURk4pCisKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC5mY2hvd25hdChmLCBzdXBwb3J0LlRFU1RGTiwgb3MuZ2V0dWlkKCksIG9zLmdldGdpZCgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgcG9zaXguY2xvc2UoZikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdmc3RhdGF0JyksICJ0ZXN0IG5lZWRzIHBvc2l4LmZzdGF0YXQoKSIpCisgICAgZGVmIHRlc3RfZnN0YXRhdChzZWxmKToKKyAgICAgICAgc3VwcG9ydC51bmxpbmsoc3VwcG9ydC5URVNURk4pCisgICAgICAgIHdpdGggb3BlbihzdXBwb3J0LlRFU1RGTiwgJ3cnKSBhcyBvdXRmaWxlOgorICAgICAgICAgICAgb3V0ZmlsZS53cml0ZSgidGVzdGxpbmVcbiIpCisKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzMSA9IHBvc2l4LnN0YXQoc3VwcG9ydC5URVNURk4pCisgICAgICAgICAgICBzMiA9IHBvc2l4LmZzdGF0YXQoZiwgc3VwcG9ydC5URVNURk4pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMxLCBzMikKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnZnV0aW1lc2F0JyksICJ0ZXN0IG5lZWRzIHBvc2l4LmZ1dGltZXNhdCgpIikKKyAgICBkZWYgdGVzdF9mdXRpbWVzYXQoc2VsZik6CisgICAgICAgIGYgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgbm93ID0gdGltZS50aW1lKCkKKyAgICAgICAgICAgIHBvc2l4LmZ1dGltZXNhdChmLCBzdXBwb3J0LlRFU1RGTiwgTm9uZSkKKyAgICAgICAgICAgIHBvc2l4LmZ1dGltZXNhdChmLCBzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXguZnV0aW1lc2F0LCBmLCBzdXBwb3J0LlRFU1RGTiwgKE5vbmUsIE5vbmUpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5mdXRpbWVzYXQsIGYsIHN1cHBvcnQuVEVTVEZOLCAobm93LCBOb25lKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXguZnV0aW1lc2F0LCBmLCBzdXBwb3J0LlRFU1RGTiwgKE5vbmUsIG5vdykpCisgICAgICAgICAgICBwb3NpeC5mdXRpbWVzYXQoZiwgc3VwcG9ydC5URVNURk4sIChpbnQobm93KSwgaW50KG5vdykpKQorICAgICAgICAgICAgcG9zaXguZnV0aW1lc2F0KGYsIHN1cHBvcnQuVEVTVEZOLCAobm93LCBub3cpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgcG9zaXguY2xvc2UoZikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdsaW5rYXQnKSwgInRlc3QgbmVlZHMgcG9zaXgubGlua2F0KCkiKQorICAgIGRlZiB0ZXN0X2xpbmthdChzZWxmKToKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC5saW5rYXQoZiwgc3VwcG9ydC5URVNURk4sIGYsIHN1cHBvcnQuVEVTVEZOICsgJ2xpbmsnKQorICAgICAgICAgICAgIyBzaG91bGQgaGF2ZSBzYW1lIGlub2RlcworICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3NpeC5zdGF0KHN1cHBvcnQuVEVTVEZOKVsxXSwKKyAgICAgICAgICAgICAgICBwb3NpeC5zdGF0KHN1cHBvcnQuVEVTVEZOICsgJ2xpbmsnKVsxXSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisgICAgICAgICAgICBzdXBwb3J0LnVubGluayhzdXBwb3J0LlRFU1RGTiArICdsaW5rJykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdta2RpcmF0JyksICJ0ZXN0IG5lZWRzIHBvc2l4Lm1rZGlyYXQoKSIpCisgICAgZGVmIHRlc3RfbWtkaXJhdChzZWxmKToKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC5ta2RpcmF0KGYsIHN1cHBvcnQuVEVTVEZOICsgJ2RpcicpCisgICAgICAgICAgICBwb3NpeC5zdGF0KHN1cHBvcnQuVEVTVEZOICsgJ2RpcicpICMgc2hvdWxkIG5vdCByYWlzZSBleGNlcHRpb24KKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisgICAgICAgICAgICBzdXBwb3J0LnJtdHJlZShzdXBwb3J0LlRFU1RGTiArICdkaXInKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ21rbm9kYXQnKSBhbmQgaGFzYXR0cihzdGF0LCAnU19JRklGTycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJkb24ndCBoYXZlIG1rbm9kYXQoKS9TX0lGSUZPIikKKyAgICBkZWYgdGVzdF9ta25vZGF0KHNlbGYpOgorICAgICAgICAjIFRlc3QgdXNpbmcgbWtub2RhdCgpIHRvIGNyZWF0ZSBhIEZJRk8gKHRoZSBvbmx5IHVzZSBzcGVjaWZpZWQKKyAgICAgICAgIyBieSBQT1NJWCkuCisgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBtb2RlID0gc3RhdC5TX0lGSUZPIHwgc3RhdC5TX0lSVVNSIHwgc3RhdC5TX0lXVVNSCisgICAgICAgIGYgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcG9zaXgubWtub2RhdChmLCBzdXBwb3J0LlRFU1RGTiwgbW9kZSwgMCkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKKyAgICAgICAgICAgICMgU29tZSBvbGQgc3lzdGVtcyBkb24ndCBhbGxvdyB1bnByaXZpbGVnZWQgdXNlcnMgdG8gdXNlCisgICAgICAgICAgICAjIG1rbm9kKCksIG9yIG9ubHkgc3VwcG9ydCBjcmVhdGluZyBkZXZpY2Ugbm9kZXMuCisgICAgICAgICAgICBzZWxmLmFzc2VydEluKGUuZXJybm8sIChlcnJuby5FUEVSTSwgZXJybm8uRUlOVkFMKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzdGF0LlNfSVNGSUZPKHBvc2l4LnN0YXQoc3VwcG9ydC5URVNURk4pLnN0X21vZGUpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgcG9zaXguY2xvc2UoZikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdvcGVuYXQnKSwgInRlc3QgbmVlZHMgcG9zaXgub3BlbmF0KCkiKQorICAgIGRlZiB0ZXN0X29wZW5hdChzZWxmKToKKyAgICAgICAgc3VwcG9ydC51bmxpbmsoc3VwcG9ydC5URVNURk4pCisgICAgICAgIHdpdGggb3BlbihzdXBwb3J0LlRFU1RGTiwgJ3cnKSBhcyBvdXRmaWxlOgorICAgICAgICAgICAgb3V0ZmlsZS53cml0ZSgidGVzdGxpbmVcbiIpCisgICAgICAgIGEgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgYiA9IHBvc2l4Lm9wZW5hdChhLCBzdXBwb3J0LlRFU1RGTiwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJlcyA9IHBvc2l4LnJlYWQoYiwgOSkuZGVjb2RlKGVuY29kaW5nPSJ1dGYtOCIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJ0ZXN0bGluZVxuIiwgcmVzKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgcG9zaXguY2xvc2UoYSkKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGIpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAncmVhZGxpbmthdCcpLCAidGVzdCBuZWVkcyBwb3NpeC5yZWFkbGlua2F0KCkiKQorICAgIGRlZiB0ZXN0X3JlYWRsaW5rYXQoc2VsZik6CisgICAgICAgIG9zLnN5bWxpbmsoc3VwcG9ydC5URVNURk4sIHN1cHBvcnQuVEVTVEZOICsgJ2xpbmsnKQorICAgICAgICBmID0gcG9zaXgub3Blbihwb3NpeC5nZXRjd2QoKSwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9zaXgucmVhZGxpbmsoc3VwcG9ydC5URVNURk4gKyAnbGluaycpLAorICAgICAgICAgICAgICAgIHBvc2l4LnJlYWRsaW5rYXQoZiwgc3VwcG9ydC5URVNURk4gKyAnbGluaycpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc3VwcG9ydC51bmxpbmsoc3VwcG9ydC5URVNURk4gKyAnbGluaycpCisgICAgICAgICAgICBwb3NpeC5jbG9zZShmKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3JlbmFtZWF0JyksICJ0ZXN0IG5lZWRzIHBvc2l4LnJlbmFtZWF0KCkiKQorICAgIGRlZiB0ZXN0X3JlbmFtZWF0KHNlbGYpOgorICAgICAgICBzdXBwb3J0LnVubGluayhzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgc3VwcG9ydC5jcmVhdGVfZW1wdHlfZmlsZShzdXBwb3J0LlRFU1RGTiArICdyZW4nKQorICAgICAgICBmID0gcG9zaXgub3Blbihwb3NpeC5nZXRjd2QoKSwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHBvc2l4LnJlbmFtZWF0KGYsIHN1cHBvcnQuVEVTVEZOICsgJ3JlbicsIGYsIHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBwb3NpeC5yZW5hbWUoc3VwcG9ydC5URVNURk4gKyAncmVuJywgc3VwcG9ydC5URVNURk4pCisgICAgICAgICAgICByYWlzZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcG9zaXguc3RhdChzdXBwb3J0LlRFU1RGTikgIyBzaG91bGQgbm90IHRocm93IGV4Y2VwdGlvbgorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgcG9zaXguY2xvc2UoZikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdzeW1saW5rYXQnKSwgInRlc3QgbmVlZHMgcG9zaXguc3ltbGlua2F0KCkiKQorICAgIGRlZiB0ZXN0X3N5bWxpbmthdChzZWxmKToKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC5zeW1saW5rYXQoc3VwcG9ydC5URVNURk4sIGYsIHN1cHBvcnQuVEVTVEZOICsgJ2xpbmsnKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwb3NpeC5yZWFkbGluayhzdXBwb3J0LlRFU1RGTiArICdsaW5rJyksIHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgcG9zaXguY2xvc2UoZikKKyAgICAgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOICsgJ2xpbmsnKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3VubGlua2F0JyksICJ0ZXN0IG5lZWRzIHBvc2l4LnVubGlua2F0KCkiKQorICAgIGRlZiB0ZXN0X3VubGlua2F0KHNlbGYpOgorICAgICAgICBmID0gcG9zaXgub3Blbihwb3NpeC5nZXRjd2QoKSwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIHN1cHBvcnQuY3JlYXRlX2VtcHR5X2ZpbGUoc3VwcG9ydC5URVNURk4gKyAnZGVsJykKKyAgICAgICAgcG9zaXguc3RhdChzdXBwb3J0LlRFU1RGTiArICdkZWwnKSAjIHNob3VsZCBub3QgdGhyb3cgZXhjZXB0aW9uCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHBvc2l4LnVubGlua2F0KGYsIHN1cHBvcnQuVEVTVEZOICsgJ2RlbCcpCisgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOICsgJ2RlbCcpCisgICAgICAgICAgICByYWlzZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgcG9zaXguc3RhdCwgc3VwcG9ydC5URVNURk4gKyAnbGluaycpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBwb3NpeC5jbG9zZShmKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3V0aW1lbnNhdCcpLCAidGVzdCBuZWVkcyBwb3NpeC51dGltZW5zYXQoKSIpCisgICAgZGVmIHRlc3RfdXRpbWVuc2F0KHNlbGYpOgorICAgICAgICBmID0gcG9zaXgub3Blbihwb3NpeC5nZXRjd2QoKSwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG5vdyA9IHRpbWUudGltZSgpCisgICAgICAgICAgICBwb3NpeC51dGltZW5zYXQoZiwgc3VwcG9ydC5URVNURk4sIE5vbmUsIE5vbmUpCisgICAgICAgICAgICBwb3NpeC51dGltZW5zYXQoZiwgc3VwcG9ydC5URVNURk4pCisgICAgICAgICAgICBwb3NpeC51dGltZW5zYXQoZiwgc3VwcG9ydC5URVNURk4sIGZsYWdzPW9zLkFUX1NZTUxJTktfTk9GT0xMT1cpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LnV0aW1lbnNhdCwgZiwgc3VwcG9ydC5URVNURk4sIChOb25lLCBOb25lKSwgKE5vbmUsIE5vbmUpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC51dGltZW5zYXQsIGYsIHN1cHBvcnQuVEVTVEZOLCAobm93LCAwKSwgTm9uZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXgudXRpbWVuc2F0LCBmLCBzdXBwb3J0LlRFU1RGTiwgTm9uZSwgKG5vdywgMCkpCisgICAgICAgICAgICBwb3NpeC51dGltZW5zYXQoZiwgc3VwcG9ydC5URVNURk4sIChpbnQobm93KSwgaW50KChub3cgLSBpbnQobm93KSkgKiAxZTkpKSwKKyAgICAgICAgICAgICAgICAgICAgKGludChub3cpLCBpbnQoKG5vdyAtIGludChub3cpKSAqIDFlOSkpKQorICAgICAgICAgICAgcG9zaXgudXRpbWVuc2F0KGRpcmZkPWYsIHBhdGg9c3VwcG9ydC5URVNURk4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXRpbWU9KGludChub3cpLCBpbnQoKG5vdyAtIGludChub3cpKSAqIDFlOSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG10aW1lPShpbnQobm93KSwgaW50KChub3cgLSBpbnQobm93KSkgKiAxZTkpKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnbWtmaWZvYXQnKSwgImRvbid0IGhhdmUgbWtmaWZvYXQoKSIpCisgICAgZGVmIHRlc3RfbWtmaWZvYXQoc2VsZik6CisgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBmID0gcG9zaXgub3Blbihwb3NpeC5nZXRjd2QoKSwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHBvc2l4Lm1rZmlmb2F0KGYsIHN1cHBvcnQuVEVTVEZOLCBzdGF0LlNfSVJVU1IgfCBzdGF0LlNfSVdVU1IpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc3RhdC5TX0lTRklGTyhwb3NpeC5zdGF0KHN1cHBvcnQuVEVTVEZOKS5zdF9tb2RlKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisKKyAgICByZXF1aXJlc19zY2hlZF9oID0gdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnc2NoZWRfeWllbGQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZG9uJ3QgaGF2ZSBzY2hlZHVsaW5nIHN1cHBvcnQiKQorICAgIHJlcXVpcmVzX3NjaGVkX2FmZmluaXR5ID0gdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnY3B1X3NldCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZG9uJ3QgaGF2ZSBzY2hlZCBhZmZpbml0eSBzdXBwb3J0IikKKworICAgIEByZXF1aXJlc19zY2hlZF9oCisgICAgZGVmIHRlc3Rfc2NoZWRfeWllbGQoc2VsZik6CisgICAgICAgICMgVGhpcyBoYXMgbm8gZXJyb3IgY29uZGl0aW9ucyAoYXQgbGVhc3Qgb24gTGludXgpLgorICAgICAgICBwb3NpeC5zY2hlZF95aWVsZCgpCisKKyAgICBAcmVxdWlyZXNfc2NoZWRfaAorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdzY2hlZF9nZXRfcHJpb3JpdHlfbWF4JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgInJlcXVpcmVzIHNjaGVkX2dldF9wcmlvcml0eV9tYXgoKSIpCisgICAgZGVmIHRlc3Rfc2NoZWRfcHJpb3JpdHkoc2VsZik6CisgICAgICAgICMgUm91bmQtcm9iaW4gdXN1YWxseSBoYXMgaW50ZXJlc3RpbmcgcHJpb3JpdGllcy4KKyAgICAgICAgcG9sID0gcG9zaXguU0NIRURfUlIKKyAgICAgICAgbG8gPSBwb3NpeC5zY2hlZF9nZXRfcHJpb3JpdHlfbWluKHBvbCkKKyAgICAgICAgaGkgPSBwb3NpeC5zY2hlZF9nZXRfcHJpb3JpdHlfbWF4KHBvbCkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGxvLCBpbnQpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShoaSwgaW50KQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChoaSwgbG8pCisgICAgICAgICMgT1NYIGV2aWRlbnRseSBqdXN0IHJldHVybnMgMTUgd2l0aG91dCBjaGVja2luZyB0aGUgYXJndW1lbnQuCisgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSAhPSAiZGFyd2luIjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHBvc2l4LnNjaGVkX2dldF9wcmlvcml0eV9taW4sIC0yMykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHBvc2l4LnNjaGVkX2dldF9wcmlvcml0eV9tYXgsIC0yMykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdzY2hlZF9zZXRzY2hlZHVsZXInKSwgImNhbid0IGNoYW5nZSBzY2hlZHVsZXIiKQorICAgIGRlZiB0ZXN0X2dldF9hbmRfc2V0X3NjaGVkdWxlcl9hbmRfcGFyYW0oc2VsZik6CisgICAgICAgIHBvc3NpYmxlX3NjaGVkdWxlcnMgPSBbc2NoZWQgZm9yIG5hbWUsIHNjaGVkIGluIHBvc2l4Ll9fZGljdF9fLml0ZW1zKCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBuYW1lLnN0YXJ0c3dpdGgoIlNDSEVEXyIpXQorICAgICAgICBtaW5lID0gcG9zaXguc2NoZWRfZ2V0c2NoZWR1bGVyKDApCisgICAgICAgIHNlbGYuYXNzZXJ0SW4obWluZSwgcG9zc2libGVfc2NoZWR1bGVycykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcGFyZW50ID0gcG9zaXguc2NoZWRfZ2V0c2NoZWR1bGVyKG9zLmdldHBwaWQoKSkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gZXJybm8uRVBFUk06CisgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4ocGFyZW50LCBwb3NzaWJsZV9zY2hlZHVsZXJzKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBwb3NpeC5zY2hlZF9nZXRzY2hlZHVsZXIsIC0xKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBwb3NpeC5zY2hlZF9nZXRwYXJhbSwgLTEpCisgICAgICAgIHBhcmFtID0gcG9zaXguc2NoZWRfZ2V0cGFyYW0oMCkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHBhcmFtLnNjaGVkX3ByaW9yaXR5LCBpbnQpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHBvc2l4LnNjaGVkX3NldHNjaGVkdWxlcigwLCBtaW5lLCBwYXJhbSkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gZXJybm8uRVBFUk06CisgICAgICAgICAgICAgICAgcmFpc2UKKworICAgICAgICAjIFBPU0lYIHN0YXRlcyB0aGF0IGNhbGxpbmcgc2NoZWRfc2V0cGFyYW0oKSBvbiBhIHByb2Nlc3Mgd2l0aCBhCisgICAgICAgICMgc2NoZWR1bGluZyBwb2xpY3kgb3RoZXIgdGhhbiBTQ0hFRF9GSUZPIG9yIFNDSEVEX1JSIGlzCisgICAgICAgICMgaW1wbGVtZW50YXRpb24tZGVmaW5lZDogRnJlZUJTRCByZXR1cm5zIEVJTlZBTC4KKyAgICAgICAgaWYgbm90IHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdmcmVlYnNkJyk6CisgICAgICAgICAgICBwb3NpeC5zY2hlZF9zZXRwYXJhbSgwLCBwYXJhbSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHBvc2l4LnNjaGVkX3NldHBhcmFtLCAtMSwgcGFyYW0pCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgcG9zaXguc2NoZWRfc2V0c2NoZWR1bGVyLCAtMSwgbWluZSwgcGFyYW0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXguc2NoZWRfc2V0c2NoZWR1bGVyLCAwLCBtaW5lLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LnNjaGVkX3NldHBhcmFtLCAwLCA0MykKKyAgICAgICAgcGFyYW0gPSBwb3NpeC5zY2hlZF9wYXJhbShOb25lKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LnNjaGVkX3NldHBhcmFtLCAwLCBwYXJhbSkKKyAgICAgICAgbGFyZ2UgPSAyMTQ3NDgzNjQ3MDAKKyAgICAgICAgcGFyYW0gPSBwb3NpeC5zY2hlZF9wYXJhbShsYXJnZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgcG9zaXguc2NoZWRfc2V0cGFyYW0sIDAsIHBhcmFtKQorICAgICAgICBwYXJhbSA9IHBvc2l4LnNjaGVkX3BhcmFtKHNjaGVkX3ByaW9yaXR5PS1sYXJnZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgcG9zaXguc2NoZWRfc2V0cGFyYW0sIDAsIHBhcmFtKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgInNjaGVkX3JyX2dldF9pbnRlcnZhbCIpLCAibm8gZnVuY3Rpb24iKQorICAgIGRlZiB0ZXN0X3NjaGVkX3JyX2dldF9pbnRlcnZhbChzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgaW50ZXJ2YWwgPSBwb3NpeC5zY2hlZF9ycl9nZXRfaW50ZXJ2YWwoMCkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKKyAgICAgICAgICAgICMgVGhpcyBsaWtlbHkgbWVhbnMgdGhhdCBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwgaXMgb25seSB2YWxpZCBmb3IKKyAgICAgICAgICAgICMgcHJvY2Vzc2VzIHdpdGggdGhlIFNDSEVEX1JSIHNjaGVkdWxlciBpbiBlZmZlY3QuCisgICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVJTlZBTDoKKyAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgib25seSB3b3JrcyBvbiBTQ0hFRF9SUiBwcm9jZXNzZXMiKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoaW50ZXJ2YWwsIGZsb2F0KQorICAgICAgICAjIFJlYXNvbmFibGUgY29uc3RyYWludHMsIEkgdGhpbmsuCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKGludGVydmFsLCAwLikKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzKGludGVydmFsLCAxLikKKworICAgIEByZXF1aXJlc19zY2hlZF9hZmZpbml0eQorICAgIGRlZiB0ZXN0X3NjaGVkX2FmZmluaXR5KHNlbGYpOgorICAgICAgICBtYXNrID0gcG9zaXguc2NoZWRfZ2V0YWZmaW5pdHkoMCwgMTAyNCkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwobWFzay5jb3VudCgpLCAxKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UobWFzaywgcG9zaXguY3B1X3NldCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgcG9zaXguc2NoZWRfZ2V0YWZmaW5pdHksIC0xLCAxMDI0KQorICAgICAgICBlbXB0eSA9IHBvc2l4LmNwdV9zZXQoMTApCisgICAgICAgIHBvc2l4LnNjaGVkX3NldGFmZmluaXR5KDAsIG1hc2spCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHBvc2l4LnNjaGVkX3NldGFmZmluaXR5LCAwLCBlbXB0eSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgcG9zaXguc2NoZWRfc2V0YWZmaW5pdHksIC0xLCBtYXNrKQorCisgICAgQHJlcXVpcmVzX3NjaGVkX2FmZmluaXR5CisgICAgZGVmIHRlc3RfY3B1X3NldF9iYXNpYyhzZWxmKToKKyAgICAgICAgcyA9IHBvc2l4LmNwdV9zZXQoMTApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHMpLCAxMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KCksIDApCisgICAgICAgIHMuc2V0KDApCisgICAgICAgIHMuc2V0KDkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzLmlzc2V0KDApKQorICAgICAgICBzZWxmLmFzc2VydFRydWUocy5pc3NldCg5KSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzLmlzc2V0KDUpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoKSwgMikKKyAgICAgICAgcy5jbGVhcigwKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHMuaXNzZXQoMCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5jb3VudCgpLCAxKQorICAgICAgICBzLnplcm8oKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHMuaXNzZXQoMCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uocy5pc3NldCg5KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KCksIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHMuc2V0LCAtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgcy5zZXQsIDEwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzLmNsZWFyLCAtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgcy5jbGVhciwgMTApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHMuaXNzZXQsIC0xKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzLmlzc2V0LCAxMCkKKworICAgIEByZXF1aXJlc19zY2hlZF9hZmZpbml0eQorICAgIGRlZiB0ZXN0X2NwdV9zZXRfY21wKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHBvc2l4LmNwdV9zZXQoMTEpLCBwb3NpeC5jcHVfc2V0KDEyKSkKKyAgICAgICAgbCA9IHBvc2l4LmNwdV9zZXQoMTApCisgICAgICAgIHIgPSBwb3NpeC5jcHVfc2V0KDEwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGwsIHIpCisgICAgICAgIGwuc2V0KDEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobCwgcikKKyAgICAgICAgci5zZXQoMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsLCByKQorCisgICAgQHJlcXVpcmVzX3NjaGVkX2FmZmluaXR5CisgICAgZGVmIHRlc3RfY3B1X3NldF9iaXR3aXNlKHNlbGYpOgorICAgICAgICBsID0gcG9zaXguY3B1X3NldCg1KQorICAgICAgICBsLnNldCgwKQorICAgICAgICBsLnNldCgxKQorICAgICAgICByID0gcG9zaXguY3B1X3NldCg1KQorICAgICAgICByLnNldCgxKQorICAgICAgICByLnNldCgyKQorICAgICAgICBiID0gbCAmIHIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KCksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShiLmlzc2V0KDEpKQorICAgICAgICBiID0gbCB8IHIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KCksIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShiLmlzc2V0KDApKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoYi5pc3NldCgxKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGIuaXNzZXQoMikpCisgICAgICAgIGIgPSBsIF4gcgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY291bnQoKSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGIuaXNzZXQoMCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoYi5pc3NldCgxKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGIuaXNzZXQoMikpCisgICAgICAgIGIgPSBsCisgICAgICAgIGIgfD0gcgorICAgICAgICBzZWxmLmFzc2VydElzKGIsIGwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobC5jb3VudCgpLCAzKQorCisgICAgZGVmIHRlc3RfcnRsZF9jb25zdGFudHMoc2VsZik6CisgICAgICAgICMgY2hlY2sgcHJlc2VuY2Ugb2YgbWFqb3IgUlRMRF8qIGNvbnN0YW50cworICAgICAgICBwb3NpeC5SVExEX0xBWlkKKyAgICAgICAgcG9zaXguUlRMRF9OT1cKKyAgICAgICAgcG9zaXguUlRMRF9HTE9CQUwKKyAgICAgICAgcG9zaXguUlRMRF9MT0NBTAorCiBjbGFzcyBQb3NpeEdyb3Vwc1Rlc3Rlcih1bml0dGVzdC5UZXN0Q2FzZSk6CiAKICAgICBkZWYgc2V0VXAoc2VsZik6CkBAIC00NjEsOSArMTAzNywxMSBAQAogICAgICAgICAgICAgcG9zaXguc2V0Z3JvdXBzKGdyb3VwcykKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGlzdEVxdWFsKGdyb3VwcywgcG9zaXguZ2V0Z3JvdXBzKCkpCiAKLQogZGVmIHRlc3RfbWFpbigpOgotICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KFBvc2l4VGVzdGVyLCBQb3NpeEdyb3Vwc1Rlc3RlcikKKyAgICB0cnk6CisgICAgICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KFBvc2l4VGVzdGVyLCBQb3NpeEdyb3Vwc1Rlc3RlcikKKyAgICBmaW5hbGx5OgorICAgICAgICBzdXBwb3J0LnJlYXBfY2hpbGRyZW4oKQogCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3Bvc2l4cGF0aC5weSBiL0xpYi90ZXN0L3Rlc3RfcG9zaXhwYXRoLnB5CmluZGV4IGJiNDU1OWMuLjcwOWVmMDQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcG9zaXhwYXRoLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcG9zaXhwYXRoLnB5CkBAIC0xLDEwICsxLDEwIEBACi1pbXBvcnQgdW5pdHRlc3QKLWZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydCwgdGVzdF9nZW5lcmljcGF0aAotCi1pbXBvcnQgcG9zaXhwYXRoCiBpbXBvcnQgb3MKK2ltcG9ydCBwb3NpeHBhdGgKIGltcG9ydCBzeXMKK2ltcG9ydCB1bml0dGVzdAoraW1wb3J0IHdhcm5pbmdzCiBmcm9tIHBvc2l4cGF0aCBpbXBvcnQgcmVhbHBhdGgsIGFic3BhdGgsIGRpcm5hbWUsIGJhc2VuYW1lCitmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQsIHRlc3RfZ2VuZXJpY3BhdGgKIAogdHJ5OgogICAgIGltcG9ydCBwb3NpeApAQCAtMjMxLDcgKzIzMSw5IEBACiAKICAgICBkZWYgdGVzdF9pc21vdW50KHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydElzKHBvc2l4cGF0aC5pc21vdW50KCIvIiksIFRydWUpCi0gICAgICAgIHNlbGYuYXNzZXJ0SXMocG9zaXhwYXRoLmlzbW91bnQoYiIvIiksIFRydWUpCisgICAgICAgIHdpdGggd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKToKKyAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcigiaWdub3JlIiwgRGVwcmVjYXRpb25XYXJuaW5nKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhwb3NpeHBhdGguaXNtb3VudChiIi8iKSwgVHJ1ZSkKIAogICAgIGRlZiB0ZXN0X2lzbW91bnRfbm9uX2V4aXN0ZW50KHNlbGYpOgogICAgICAgICAjIE5vbi1leGlzdGVudCBtb3VudHBvaW50LgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wcmludC5weSBiL0xpYi90ZXN0L3Rlc3RfcHJpbnQucHkKaW5kZXggOGQzN2JiYy4uOWQ2ZGJlYSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9wcmludC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3ByaW50LnB5CkBAIC0xMTEsNiArMTExLDMyIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcHJpbnQsICcnLCBlbmQ9MykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQXR0cmlidXRlRXJyb3IsIHByaW50LCAnJywgZmlsZT0nJykKIAorICAgIGRlZiB0ZXN0X3ByaW50X2ZsdXNoKHNlbGYpOgorICAgICAgICAjIG9wZXJhdGlvbiBvZiB0aGUgZmx1c2ggZmxhZworICAgICAgICBjbGFzcyBmaWxlbGlrZSgpOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHNlbGYud3JpdHRlbiA9ICcnCisgICAgICAgICAgICAgICAgc2VsZi5mbHVzaGVkID0gMAorICAgICAgICAgICAgZGVmIHdyaXRlKHNlbGYsIHN0cik6CisgICAgICAgICAgICAgICAgc2VsZi53cml0dGVuICs9IHN0cgorICAgICAgICAgICAgZGVmIGZsdXNoKHNlbGYpOgorICAgICAgICAgICAgICAgIHNlbGYuZmx1c2hlZCArPSAxCisKKyAgICAgICAgZiA9IGZpbGVsaWtlKCkKKyAgICAgICAgcHJpbnQoMSwgZmlsZT1mLCBlbmQ9JycsIGZsdXNoPVRydWUpCisgICAgICAgIHByaW50KDIsIGZpbGU9ZiwgZW5kPScnLCBmbHVzaD1UcnVlKQorICAgICAgICBwcmludCgzLCBmaWxlPWYsIGZsdXNoPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYud3JpdHRlbiwgJzEyM1xuJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLmZsdXNoZWQsIDIpCisKKyAgICAgICAgIyBlbnN1cmUgZXhjZXB0aW9ucyBmcm9tIGZsdXNoIGFyZSBwYXNzZWQgdGhyb3VnaAorICAgICAgICBjbGFzcyBub2ZsdXNoKCk6CisgICAgICAgICAgICBkZWYgd3JpdGUoc2VsZiwgc3RyKToKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBkZWYgZmx1c2goc2VsZik6CisgICAgICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvciwgcHJpbnQsIDEsIGZpbGU9bm9mbHVzaCgpLCBmbHVzaD1UcnVlKQorCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoVGVzdFByaW50KQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3Byb3BlcnR5LnB5IGIvTGliL3Rlc3QvdGVzdF9wcm9wZXJ0eS5weQppbmRleCBjYzZhODcyLi43MjZkNmZlIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3Byb3BlcnR5LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcHJvcGVydHkucHkKQEAgLTEyOCw2ICsxMjgsMjkgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZXdnZXR0ZXIuc3BhbSwgOCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZXdnZXR0ZXIuX19jbGFzc19fLnNwYW0uX19kb2NfXywgIm5ldyBkb2NzdHJpbmciKQogCisgICAgZGVmIHRlc3RfcHJvcGVydHlfX19pc2Fic3RyYWN0bWV0aG9kX19kZXNjcmlwdG9yKHNlbGYpOgorICAgICAgICBmb3IgdmFsIGluIChUcnVlLCBGYWxzZSwgW10sIFsxXSwgJycsICcxJyk6CisgICAgICAgICAgICBjbGFzcyBDKG9iamVjdCk6CisgICAgICAgICAgICAgICAgZGVmIGZvbyhzZWxmKToKKyAgICAgICAgICAgICAgICAgICAgcGFzcworICAgICAgICAgICAgICAgIGZvby5fX2lzYWJzdHJhY3RtZXRob2RfXyA9IHZhbAorICAgICAgICAgICAgICAgIGZvbyA9IHByb3BlcnR5KGZvbykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoQy5mb28uX19pc2Fic3RyYWN0bWV0aG9kX18sIGJvb2wodmFsKSkKKworICAgICAgICAjIGNoZWNrIHRoYXQgdGhlIHByb3BlcnR5J3MgX19pc2Fic3RyYWN0bWV0aG9kX18gZGVzY3JpcHRvciBkb2VzIHRoZQorICAgICAgICAjIHJpZ2h0IHRoaW5nIHdoZW4gcHJlc2VudGVkIHdpdGggYSB2YWx1ZSB0aGF0IGZhaWxzIHRydXRoIHRlc3Rpbmc6CisgICAgICAgIGNsYXNzIE5vdEJvb2wob2JqZWN0KToKKyAgICAgICAgICAgIGRlZiBfX25vbnplcm9fXyhzZWxmKToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCkKKyAgICAgICAgICAgIF9fbGVuX18gPSBfX25vbnplcm9fXworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgY2xhc3MgQyhvYmplY3QpOgorICAgICAgICAgICAgICAgIGRlZiBmb28oc2VsZik6CisgICAgICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgICAgICBmb28uX19pc2Fic3RyYWN0bWV0aG9kX18gPSBOb3RCb29sKCkKKyAgICAgICAgICAgICAgICBmb28gPSBwcm9wZXJ0eShmb28pCisgICAgICAgICAgICBDLmZvby5fX2lzYWJzdHJhY3RtZXRob2RfXworCiAKICMgSXNzdWUgNTg5MDogc3ViY2xhc3NlcyBvZiBwcm9wZXJ0eSBkbyBub3QgcHJlc2VydmUgbWV0aG9kIF9fZG9jX18gc3RyaW5ncwogY2xhc3MgUHJvcGVydHlTdWIocHJvcGVydHkpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wdHkucHkgYi9MaWIvdGVzdC90ZXN0X3B0eS5weQppbmRleCA0ZjEyNTFjLi5lZjk1MjY4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3B0eS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3B0eS5weQpAQCAtMjA1LDYgKzIwNSw3IEBACiAgICAgICAgIHNlbGYub3JpZ19zdGRvdXRfZmlsZW5vID0gcHR5LlNURE9VVF9GSUxFTk8KICAgICAgICAgc2VsZi5vcmlnX3B0eV9zZWxlY3QgPSBwdHkuc2VsZWN0CiAgICAgICAgIHNlbGYuZmRzID0gW10gICMgQSBsaXN0IG9mIGZpbGUgZGVzY3JpcHRvcnMgdG8gY2xvc2UuCisgICAgICAgIHNlbGYuZmlsZXMgPSBbXQogICAgICAgICBzZWxmLnNlbGVjdF9yZmRzX2xlbmd0aHMgPSBbXQogICAgICAgICBzZWxmLnNlbGVjdF9yZmRzX3Jlc3VsdHMgPSBbXQogCkBAIC0yMTIsMTAgKzIxMywxNSBAQAogICAgICAgICBwdHkuU1RESU5fRklMRU5PID0gc2VsZi5vcmlnX3N0ZGluX2ZpbGVubwogICAgICAgICBwdHkuU1RET1VUX0ZJTEVOTyA9IHNlbGYub3JpZ19zdGRvdXRfZmlsZW5vCiAgICAgICAgIHB0eS5zZWxlY3QgPSBzZWxmLm9yaWdfcHR5X3NlbGVjdAorICAgICAgICBmb3IgZmlsZSBpbiBzZWxmLmZpbGVzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGZpbGUuY2xvc2UoKQorICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICBmb3IgZmQgaW4gc2VsZi5mZHM6CiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgb3MuY2xvc2UoZmQpCi0gICAgICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBleGNlcHQgT1NFcnJvcjoKICAgICAgICAgICAgICAgICBwYXNzCiAKICAgICBkZWYgX3BpcGUoc2VsZik6CkBAIC0yMjMsNiArMjI5LDExIEBACiAgICAgICAgIHNlbGYuZmRzLmV4dGVuZChwaXBlX2ZkcykKICAgICAgICAgcmV0dXJuIHBpcGVfZmRzCiAKKyAgICBkZWYgX3NvY2tldHBhaXIoc2VsZik6CisgICAgICAgIHNvY2tldHBhaXIgPSBzb2NrZXQuc29ja2V0cGFpcigpCisgICAgICAgIHNlbGYuZmlsZXMuZXh0ZW5kKHNvY2tldHBhaXIpCisgICAgICAgIHJldHVybiBzb2NrZXRwYWlyCisKICAgICBkZWYgX21vY2tfc2VsZWN0KHNlbGYsIHJmZHMsIHdmZHMsIHhmZHMpOgogICAgICAgICAjIFRoaXMgd2lsbCByYWlzZSBJbmRleEVycm9yIHdoZW4gbm8gbW9yZSBleHBlY3RlZCBjYWxscyBleGlzdC4KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlbGVjdF9yZmRzX2xlbmd0aHMucG9wKDApLCBsZW4ocmZkcykpCkBAIC0yMzQsOSArMjQ1LDggQEAKICAgICAgICAgcHR5LlNURE9VVF9GSUxFTk8gPSBtb2NrX3N0ZG91dF9mZAogICAgICAgICBtb2NrX3N0ZGluX2ZkLCB3cml0ZV90b19zdGRpbl9mZCA9IHNlbGYuX3BpcGUoKQogICAgICAgICBwdHkuU1RESU5fRklMRU5PID0gbW9ja19zdGRpbl9mZAotICAgICAgICBzb2NrZXRwYWlyID0gc29ja2V0LnNvY2tldHBhaXIoKQorICAgICAgICBzb2NrZXRwYWlyID0gc2VsZi5fc29ja2V0cGFpcigpCiAgICAgICAgIG1hc3RlcnMgPSBbcy5maWxlbm8oKSBmb3IgcyBpbiBzb2NrZXRwYWlyXQotICAgICAgICBzZWxmLmZkcy5leHRlbmQobWFzdGVycykKIAogICAgICAgICAjIEZlZWQgZGF0YS4gIFNtYWxsZXIgdGhhbiBQSVBFQlVGLiAgVGhlc2Ugd3JpdGVzIHdpbGwgbm90IGJsb2NrLgogICAgICAgICBvcy53cml0ZShtYXN0ZXJzWzFdLCBiJ2Zyb20gbWFzdGVyJykKQEAgLTI2Myw5ICsyNzMsOCBAQAogICAgICAgICBwdHkuU1RET1VUX0ZJTEVOTyA9IG1vY2tfc3Rkb3V0X2ZkCiAgICAgICAgIG1vY2tfc3RkaW5fZmQsIHdyaXRlX3RvX3N0ZGluX2ZkID0gc2VsZi5fcGlwZSgpCiAgICAgICAgIHB0eS5TVERJTl9GSUxFTk8gPSBtb2NrX3N0ZGluX2ZkCi0gICAgICAgIHNvY2tldHBhaXIgPSBzb2NrZXQuc29ja2V0cGFpcigpCisgICAgICAgIHNvY2tldHBhaXIgPSBzZWxmLl9zb2NrZXRwYWlyKCkKICAgICAgICAgbWFzdGVycyA9IFtzLmZpbGVubygpIGZvciBzIGluIHNvY2tldHBhaXJdCi0gICAgICAgIHNlbGYuZmRzLmV4dGVuZChtYXN0ZXJzKQogCiAgICAgICAgIG9zLmNsb3NlKG1hc3RlcnNbMV0pCiAgICAgICAgIHNvY2tldHBhaXJbMV0uY2xvc2UoKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wdWxsZG9tLnB5IGIvTGliL3Rlc3QvdGVzdF9wdWxsZG9tLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI4MWE1OTUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X3B1bGxkb20ucHkKQEAgLTAsMCArMSwzNDcgQEAKK2ltcG9ydCBpbworaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgc3lzCitpbXBvcnQgeG1sLnNheAorCitmcm9tIHhtbC5zYXgueG1scmVhZGVyIGltcG9ydCBBdHRyaWJ1dGVzSW1wbAorZnJvbSB4bWwuZG9tIGltcG9ydCBwdWxsZG9tCisKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QsIGZpbmRmaWxlCisKKwordHN0ZmlsZSA9IGZpbmRmaWxlKCJ0ZXN0LnhtbCIsIHN1YmRpcj0ieG1sdGVzdGRhdGEiKQorCisjIEEgaGFuZHkgWE1MIHNuaXBwZXQsIGNvbnRhaW5pbmcgYXR0cmlidXRlcywgYSBuYW1lc3BhY2UgcHJlZml4LCBhbmQgYQorIyBzZWxmLWNsb3NpbmcgdGFnOgorU01BTExfU0FNUExFID0gIiIiPD94bWwgdmVyc2lvbj0iMS4wIj8+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgeG1sbnM6eGRjPSJodHRwOi8vd3d3LnhtbC5jb20vYm9va3MiPgorPCEtLSBBIGNvbW1lbnQgLS0+Cis8dGl0bGU+SW50cm9kdWN0aW9uIHRvIFhTTDwvdGl0bGU+Cis8aHIvPgorPHA+PHhkYzphdXRob3IgeGRjOmF0dHJpYj0icHJlZml4ZWQgYXR0cmlidXRlIiBhdHRyaWI9Im90aGVyIGF0dHJpYiI+QS4gTmFtZXNwYWNlPC94ZGM6YXV0aG9yPjwvcD4KKzwvaHRtbD4iIiIKKworCitjbGFzcyBQdWxsRE9NVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfcGFyc2Uoc2VsZik6CisgICAgICAgICIiIk1pbmltYWwgdGVzdCBvZiBET01FdmVudFN0cmVhbS5wYXJzZSgpIiIiCisKKyAgICAgICAgIyBUaGlzIGp1c3QgdGVzdHMgdGhhdCBwYXJzaW5nIGZyb20gYSBzdHJlYW0gd29ya3MuIEFjdHVhbCBwYXJzZXIKKyAgICAgICAgIyBzZW1hbnRpY3MgYXJlIHRlc3RlZCB1c2luZyBwYXJzZVN0cmluZyB3aXRoIGEgbW9yZSBmb2N1c2VkIFhNTAorICAgICAgICAjIGZyYWdtZW50LgorCisgICAgICAgICMgVGVzdCB3aXRoIGEgZmlsZW5hbWU6CisgICAgICAgIGhhbmRsZXIgPSBwdWxsZG9tLnBhcnNlKHRzdGZpbGUpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChoYW5kbGVyLnN0cmVhbS5jbG9zZSkKKyAgICAgICAgbGlzdChoYW5kbGVyKQorCisgICAgICAgICMgVGVzdCB3aXRoIGEgZmlsZSBvYmplY3Q6CisgICAgICAgIHdpdGggb3Blbih0c3RmaWxlLCAicmIiKSBhcyBmaW46CisgICAgICAgICAgICBsaXN0KHB1bGxkb20ucGFyc2UoZmluKSkKKworICAgIGRlZiB0ZXN0X3BhcnNlX3NlbWFudGljcyhzZWxmKToKKyAgICAgICAgIiIiVGVzdCBET01FdmVudFN0cmVhbSBwYXJzaW5nIHNlbWFudGljcy4iIiIKKworICAgICAgICBpdGVtcyA9IHB1bGxkb20ucGFyc2VTdHJpbmcoU01BTExfU0FNUExFKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICAjIEp1c3QgY2hlY2sgdGhlIG5vZGUgaXMgYSBEb2N1bWVudDoKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIobm9kZSwgImNyZWF0ZUVsZW1lbnQiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLlNUQVJUX0RPQ1VNRU5ULCBldnQpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5TVEFSVF9FTEVNRU5ULCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoImh0bWwiLCBub2RlLnRhZ05hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMiwgbGVuKG5vZGUuYXR0cmlidXRlcykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobm9kZS5hdHRyaWJ1dGVzLmdldE5hbWVkSXRlbSgieG1sbnM6eGRjIikudmFsdWUsCisgICAgICAgICAgICAgICJodHRwOi8vd3d3LnhtbC5jb20vYm9va3MiKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uQ0hBUkFDVEVSUywgZXZ0KSAjIExpbmUgYnJlYWsKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgIyBYWFggLSBBIGNvbW1lbnQgc2hvdWxkIGJlIHJlcG9ydGVkIGhlcmUhCisgICAgICAgICMgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNPTU1FTlQsIGV2dCkKKyAgICAgICAgIyBMaW5lIGJyZWFrIGFmdGVyIHN3YWxsb3dlZCBjb21tZW50OgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uQ0hBUkFDVEVSUywgZXZ0KQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJ0aXRsZSIsIG5vZGUudGFnTmFtZSkKKyAgICAgICAgdGl0bGVfbm9kZSA9IG5vZGUKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNIQVJBQ1RFUlMsIGV2dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiSW50cm9kdWN0aW9uIHRvIFhTTCIsIG5vZGUuZGF0YSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkVORF9FTEVNRU5ULCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInRpdGxlIiwgbm9kZS50YWdOYW1lKQorICAgICAgICBzZWxmLmFzc2VydFRydWUodGl0bGVfbm9kZSBpcyBub2RlKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uQ0hBUkFDVEVSUywgZXZ0KQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uU1RBUlRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJociIsIG5vZGUudGFnTmFtZSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkVORF9FTEVNRU5ULCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoImhyIiwgbm9kZS50YWdOYW1lKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uQ0hBUkFDVEVSUywgZXZ0KQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uU1RBUlRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJwIiwgbm9kZS50YWdOYW1lKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uU1RBUlRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJ4ZGM6YXV0aG9yIiwgbm9kZS50YWdOYW1lKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uQ0hBUkFDVEVSUywgZXZ0KQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uRU5EX0VMRU1FTlQsIGV2dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgieGRjOmF1dGhvciIsIG5vZGUudGFnTmFtZSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkVORF9FTEVNRU5ULCBldnQpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5DSEFSQUNURVJTLCBldnQpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5FTkRfRUxFTUVOVCwgZXZ0KQorICAgICAgICAjIFhYWCBObyBFTkRfRE9DVU1FTlQgaXRlbSBpcyBldmVyIG9idGFpbmVkOgorICAgICAgICAjZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgI3NlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5FTkRfRE9DVU1FTlQsIGV2dCkKKworICAgIGRlZiB0ZXN0X2V4cGFuZEl0ZW0oc2VsZik6CisgICAgICAgICIiIkVuc3VyZSBleHBhbmRJdGVtIHdvcmtzIGFzIGV4cGVjdGVkLiIiIgorICAgICAgICBpdGVtcyA9IHB1bGxkb20ucGFyc2VTdHJpbmcoU01BTExfU0FNUExFKQorICAgICAgICAjIExvb3AgdGhyb3VnaCB0aGUgbm9kZXMgdW50aWwgd2UgZ2V0IHRvIGEgInRpdGxlIiBzdGFydCB0YWc6CisgICAgICAgIGZvciBldnQsIGl0ZW0gaW4gaXRlbXM6CisgICAgICAgICAgICBpZiBldnQgPT0gcHVsbGRvbS5TVEFSVF9FTEVNRU5UIGFuZCBpdGVtLnRhZ05hbWUgPT0gInRpdGxlIjoKKyAgICAgICAgICAgICAgICBpdGVtcy5leHBhbmROb2RlKGl0ZW0pCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgxLCBsZW4oaXRlbS5jaGlsZE5vZGVzKSkKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJObyBcInRpdGxlXCIgZWxlbWVudCBkZXRlY3RlZCBpbiBTTUFMTF9TQU1QTEUhIikKKyAgICAgICAgIyBMb29wIHVudGlsIHdlIGdldCB0byB0aGUgbmV4dCBzdGFydC1lbGVtZW50OgorICAgICAgICBmb3IgZXZ0LCBub2RlIGluIGl0ZW1zOgorICAgICAgICAgICAgaWYgZXZ0ID09IHB1bGxkb20uU1RBUlRfRUxFTUVOVDoKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJociIsIG5vZGUudGFnTmFtZSwKKyAgICAgICAgICAgICJleHBhbmROb2RlIGRpZCBub3QgbGVhdmUgRE9NRXZlbnRTdHJlYW0gaW4gdGhlIGNvcnJlY3Qgc3RhdGUuIikKKyAgICAgICAgIyBBdHRlbXB0IHRvIGV4cGFuZCBhIHN0YW5kYWxvbmUgZWxlbWVudDoKKyAgICAgICAgaXRlbXMuZXhwYW5kTm9kZShub2RlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5leHQoaXRlbXMpWzBdLCBwdWxsZG9tLkNIQVJBQ1RFUlMpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobm9kZS50YWdOYW1lLCAicCIpCisgICAgICAgIGl0ZW1zLmV4cGFuZE5vZGUobm9kZSkKKyAgICAgICAgbmV4dChpdGVtcykgIyBTa2lwIGNoYXJhY3RlciBkYXRhCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobm9kZS50YWdOYW1lLCAiaHRtbCIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoU3RvcEl0ZXJhdGlvbik6CisgICAgICAgICAgICBuZXh0KGl0ZW1zKQorICAgICAgICBpdGVtcy5jbGVhcigpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGl0ZW1zLnBhcnNlcikKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoaXRlbXMuc3RyZWFtKQorCisgICAgQHVuaXR0ZXN0LmV4cGVjdGVkRmFpbHVyZQorICAgIGRlZiB0ZXN0X2NvbW1lbnQoc2VsZik6CisgICAgICAgICIiIlB1bGxET00gZG9lcyBub3QgcmVjZWl2ZSAiY29tbWVudCIgZXZlbnRzLiIiIgorICAgICAgICBpdGVtcyA9IHB1bGxkb20ucGFyc2VTdHJpbmcoU01BTExfU0FNUExFKQorICAgICAgICBmb3IgZXZ0LCBfIGluIGl0ZW1zOgorICAgICAgICAgICAgaWYgZXZ0ID09IHB1bGxkb20uQ09NTUVOVDoKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJObyBjb21tZW50IHdhcyBlbmNvdW50ZXJlZCIpCisKKyAgICBAdW5pdHRlc3QuZXhwZWN0ZWRGYWlsdXJlCisgICAgZGVmIHRlc3RfZW5kX2RvY3VtZW50KHNlbGYpOgorICAgICAgICAiIiJQdWxsRE9NIGRvZXMgbm90IHJlY2VpdmUgImVuZC1kb2N1bWVudCIgZXZlbnRzLiIiIgorICAgICAgICBpdGVtcyA9IHB1bGxkb20ucGFyc2VTdHJpbmcoU01BTExfU0FNUExFKQorICAgICAgICAjIFJlYWQgYWxsIG9mIHRoZSBub2RlcyB1cCB0byBhbmQgaW5jbHVkaW5nIDwvaHRtbD46CisgICAgICAgIGZvciBldnQsIG5vZGUgaW4gaXRlbXM6CisgICAgICAgICAgICBpZiBldnQgPT0gcHVsbGRvbS5FTkRfRUxFTUVOVCBhbmQgbm9kZS50YWdOYW1lID09ICJodG1sIjoKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICB0cnk6CisgICAgICAgICAgICAjIEFzc2VydCB0aGF0IHRoZSBuZXh0IG5vZGUgaXMgRU5EX0RPQ1VNRU5UOgorICAgICAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5FTkRfRE9DVU1FTlQsIGV2dCkKKyAgICAgICAgZXhjZXB0IFN0b3BJdGVyYXRpb246CisgICAgICAgICAgICBzZWxmLmZhaWwoCisgICAgICAgICAgICAgICAgIlJhbiBvdXQgb2YgZXZlbnRzLCBidXQgc2hvdWxkIGhhdmUgcmVjZWl2ZWQgRU5EX0RPQ1VNRU5UIikKKworCitjbGFzcyBUaG9yb3VnaFRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAiIiJUZXN0IHRoZSBoYXJkLXRvLXJlYWNoIHBhcnRzIG9mIHB1bGxkb20uIiIiCisKKyAgICBkZWYgdGVzdF90aG9yb3VnaF9wYXJzZShzZWxmKToKKyAgICAgICAgIiIiVGVzdCBzb21lIG9mIHRoZSBoYXJkLXRvLXJlYWNoIHBhcnRzIG9mIFB1bGxET00uIiIiCisgICAgICAgIHNlbGYuX3Rlc3RfdGhvcm91Z2gocHVsbGRvbS5wYXJzZShOb25lLCBwYXJzZXI9U0FYRXhlcmNpc2VyKCkpKQorCisgICAgQHVuaXR0ZXN0LmV4cGVjdGVkRmFpbHVyZQorICAgIGRlZiB0ZXN0X3NheDJkb21fZmFpbChzZWxmKToKKyAgICAgICAgIiIiU0FYMkRPTSBjYW4idCBoYW5kbGUgYSBQSSBiZWZvcmUgdGhlIHJvb3QgZWxlbWVudC4iIiIKKyAgICAgICAgcGQgPSBTQVgyRE9NVGVzdEhlbHBlcihOb25lLCBTQVhFeGVyY2lzZXIoKSwgMTIpCisgICAgICAgIHNlbGYuX3Rlc3RfdGhvcm91Z2gocGQpCisKKyAgICBkZWYgdGVzdF90aG9yb3VnaF9zYXgyZG9tKHNlbGYpOgorICAgICAgICAiIiJUZXN0IHNvbWUgb2YgdGhlIGhhcmQtdG8tcmVhY2ggcGFydHMgb2YgU0FYMkRPTS4iIiIKKyAgICAgICAgcGQgPSBTQVgyRE9NVGVzdEhlbHBlcihOb25lLCBTQVgyRE9NRXhlcmNpc2VyKCksIDEyKQorICAgICAgICBzZWxmLl90ZXN0X3Rob3JvdWdoKHBkLCBGYWxzZSkKKworICAgIGRlZiBfdGVzdF90aG9yb3VnaChzZWxmLCBwZCwgYmVmb3JlX3Jvb3Q9VHJ1ZSk6CisgICAgICAgICIiIlRlc3Qgc29tZSBvZiB0aGUgaGFyZC10by1yZWFjaCBwYXJ0cyBvZiB0aGUgcGFyc2VyLCB1c2luZyBhIG1vY2sKKyAgICAgICAgcGFyc2VyLiIiIgorCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQocGQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5TVEFSVF9ET0NVTUVOVCwgZXZ0KQorICAgICAgICAjIEp1c3QgY2hlY2sgdGhlIG5vZGUgaXMgYSBEb2N1bWVudDoKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIobm9kZSwgImNyZWF0ZUVsZW1lbnQiKSkKKworICAgICAgICBpZiBiZWZvcmVfcm9vdDoKKyAgICAgICAgICAgIGV2dCwgbm9kZSA9IG5leHQocGQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uQ09NTUVOVCwgZXZ0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiYSBjb21tZW50Iiwgbm9kZS5kYXRhKQorICAgICAgICAgICAgZXZ0LCBub2RlID0gbmV4dChwZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5QUk9DRVNTSU5HX0lOU1RSVUNUSU9OLCBldnQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJ0YXJnZXQiLCBub2RlLnRhcmdldCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoImRhdGEiLCBub2RlLmRhdGEpCisKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChwZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLlNUQVJUX0VMRU1FTlQsIGV2dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiaHRtbCIsIG5vZGUudGFnTmFtZSkKKworICAgICAgICBldnQsIG5vZGUgPSBuZXh0KHBkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uQ09NTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJhIGNvbW1lbnQiLCBub2RlLmRhdGEpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQocGQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5QUk9DRVNTSU5HX0lOU1RSVUNUSU9OLCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInRhcmdldCIsIG5vZGUudGFyZ2V0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJkYXRhIiwgbm9kZS5kYXRhKQorCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQocGQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5TVEFSVF9FTEVNRU5ULCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInAiLCBub2RlLnRhZ05hbWUpCisKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChwZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNIQVJBQ1RFUlMsIGV2dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgidGV4dCIsIG5vZGUuZGF0YSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChwZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkVORF9FTEVNRU5ULCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInAiLCBub2RlLnRhZ05hbWUpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQocGQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5FTkRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJodG1sIiwgbm9kZS50YWdOYW1lKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KHBkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uRU5EX0RPQ1VNRU5ULCBldnQpCisKKworY2xhc3MgU0FYRXhlcmNpc2VyKG9iamVjdCk6CisgICAgIiIiQSBmYWtlIHNheCBwYXJzZXIgdGhhdCBjYWxscyBzb21lIG9mIHRoZSBoYXJkZXItdG8tcmVhY2ggc2F4IG1ldGhvZHMgdG8KKyAgICBlbnN1cmUgaXQgZW1pdHMgdGhlIGNvcnJlY3QgZXZlbnRzIiIiCisKKyAgICBkZWYgc2V0Q29udGVudEhhbmRsZXIoc2VsZiwgaGFuZGxlcik6CisgICAgICAgIHNlbGYuX2hhbmRsZXIgPSBoYW5kbGVyCisKKyAgICBkZWYgcGFyc2Uoc2VsZiwgXyk6CisgICAgICAgIGggPSBzZWxmLl9oYW5kbGVyCisgICAgICAgIGguc3RhcnREb2N1bWVudCgpCisKKyAgICAgICAgIyBUaGUgbmV4dCB0d28gaXRlbXMgZW5zdXJlIHRoYXQgaXRlbXMgcHJlY2VkaW5nIHRoZSBmaXJzdAorICAgICAgICAjIHN0YXJ0X2VsZW1lbnQgYXJlIHByb3Blcmx5IHN0b3JlZCBhbmQgZW1pdHRlZDoKKyAgICAgICAgaC5jb21tZW50KCJhIGNvbW1lbnQiKQorICAgICAgICBoLnByb2Nlc3NpbmdJbnN0cnVjdGlvbigidGFyZ2V0IiwgImRhdGEiKQorCisgICAgICAgIGguc3RhcnRFbGVtZW50KCJodG1sIiwgQXR0cmlidXRlc0ltcGwoe30pKQorCisgICAgICAgIGguY29tbWVudCgiYSBjb21tZW50IikKKyAgICAgICAgaC5wcm9jZXNzaW5nSW5zdHJ1Y3Rpb24oInRhcmdldCIsICJkYXRhIikKKworICAgICAgICBoLnN0YXJ0RWxlbWVudCgicCIsIEF0dHJpYnV0ZXNJbXBsKHsiY2xhc3MiOiAicGFyYWNsYXNzIn0pKQorICAgICAgICBoLmNoYXJhY3RlcnMoInRleHQiKQorICAgICAgICBoLmVuZEVsZW1lbnQoInAiKQorICAgICAgICBoLmVuZEVsZW1lbnQoImh0bWwiKQorICAgICAgICBoLmVuZERvY3VtZW50KCkKKworICAgIGRlZiBzdHViKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICIiIlN0dWIgbWV0aG9kLiBEb2VzIG5vdGhpbmcuIiIiCisgICAgICAgIHBhc3MKKyAgICBzZXRQcm9wZXJ0eSA9IHN0dWIKKyAgICBzZXRGZWF0dXJlID0gc3R1YgorCisKK2NsYXNzIFNBWDJET01FeGVyY2lzZXIoU0FYRXhlcmNpc2VyKToKKyAgICAiIiJUaGUgc2FtZSBhcyBTQVhFeGVyY2lzZXIsIGJ1dCB3aXRob3V0IHRoZSBwcm9jZXNzaW5nIGluc3RydWN0aW9uIGFuZAorICAgIGNvbW1lbnQgYmVmb3JlIHRoZSByb290IGVsZW1lbnQsIGJlY2F1c2UgUzJEIGNhbiJ0IGhhbmRsZSBpdCIiIgorCisgICAgZGVmIHBhcnNlKHNlbGYsIF8pOgorICAgICAgICBoID0gc2VsZi5faGFuZGxlcgorICAgICAgICBoLnN0YXJ0RG9jdW1lbnQoKQorICAgICAgICBoLnN0YXJ0RWxlbWVudCgiaHRtbCIsIEF0dHJpYnV0ZXNJbXBsKHt9KSkKKyAgICAgICAgaC5jb21tZW50KCJhIGNvbW1lbnQiKQorICAgICAgICBoLnByb2Nlc3NpbmdJbnN0cnVjdGlvbigidGFyZ2V0IiwgImRhdGEiKQorICAgICAgICBoLnN0YXJ0RWxlbWVudCgicCIsIEF0dHJpYnV0ZXNJbXBsKHsiY2xhc3MiOiAicGFyYWNsYXNzIn0pKQorICAgICAgICBoLmNoYXJhY3RlcnMoInRleHQiKQorICAgICAgICBoLmVuZEVsZW1lbnQoInAiKQorICAgICAgICBoLmVuZEVsZW1lbnQoImh0bWwiKQorICAgICAgICBoLmVuZERvY3VtZW50KCkKKworCitjbGFzcyBTQVgyRE9NVGVzdEhlbHBlcihwdWxsZG9tLkRPTUV2ZW50U3RyZWFtKToKKyAgICAiIiJBbGxvd3MgdXMgdG8gZHJpdmUgU0FYMkRPTSBmcm9tIGEgRE9NRXZlbnRTdHJlYW0uIiIiCisKKyAgICBkZWYgcmVzZXQoc2VsZik6CisgICAgICAgIHNlbGYucHVsbGRvbSA9IHB1bGxkb20uU0FYMkRPTSgpCisgICAgICAgICMgVGhpcyBjb250ZW50IGhhbmRsZXIgcmVsaWVzIG9uIG5hbWVzcGFjZSBzdXBwb3J0CisgICAgICAgIHNlbGYucGFyc2VyLnNldEZlYXR1cmUoeG1sLnNheC5oYW5kbGVyLmZlYXR1cmVfbmFtZXNwYWNlcywgMSkKKyAgICAgICAgc2VsZi5wYXJzZXIuc2V0Q29udGVudEhhbmRsZXIoc2VsZi5wdWxsZG9tKQorCisKK2NsYXNzIFNBWDJET01UZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgY29uZmlybShzZWxmLCB0ZXN0LCB0ZXN0bmFtZT0iVGVzdCIpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUodGVzdCwgdGVzdG5hbWUpCisKKyAgICBkZWYgdGVzdF9iYXNpYyhzZWxmKToKKyAgICAgICAgIiIiRW5zdXJlIFNBWDJET00gY2FuIHBhcnNlIGZyb20gYSBzdHJlYW0uIiIiCisgICAgICAgIHdpdGggaW8uU3RyaW5nSU8oU01BTExfU0FNUExFKSBhcyBmaW46CisgICAgICAgICAgICBzZCA9IFNBWDJET01UZXN0SGVscGVyKGZpbiwgeG1sLnNheC5tYWtlX3BhcnNlcigpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oU01BTExfU0FNUExFKSkKKyAgICAgICAgICAgIGZvciBldnQsIG5vZGUgaW4gc2Q6CisgICAgICAgICAgICAgICAgaWYgZXZ0ID09IHB1bGxkb20uU1RBUlRfRUxFTUVOVCBhbmQgbm9kZS50YWdOYW1lID09ICJodG1sIjoKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICMgQmVjYXVzZSB0aGUgYnVmZmVyIGlzIHRoZSBzYW1lIGxlbmd0aCBhcyB0aGUgWE1MLCBhbGwgdGhlCisgICAgICAgICAgICAjIG5vZGVzIHNob3VsZCBoYXZlIGJlZW4gcGFyc2VkIGFuZCBhZGRlZDoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsZW4obm9kZS5jaGlsZE5vZGVzKSwgMCkKKworICAgIGRlZiB0ZXN0U0FYMkRPTShzZWxmKToKKyAgICAgICAgIiIiRW5zdXJlIFNBWDJET00gZXhwYW5kcyBub2RlcyBhcyBleHBlY3RlZC4iIiIKKyAgICAgICAgc2F4MmRvbSA9IHB1bGxkb20uU0FYMkRPTSgpCisgICAgICAgIHNheDJkb20uc3RhcnREb2N1bWVudCgpCisgICAgICAgIHNheDJkb20uc3RhcnRFbGVtZW50KCJkb2MiLCB7fSkKKyAgICAgICAgc2F4MmRvbS5jaGFyYWN0ZXJzKCJ0ZXh0IikKKyAgICAgICAgc2F4MmRvbS5zdGFydEVsZW1lbnQoInN1YmVsbSIsIHt9KQorICAgICAgICBzYXgyZG9tLmNoYXJhY3RlcnMoInRleHQiKQorICAgICAgICBzYXgyZG9tLmVuZEVsZW1lbnQoInN1YmVsbSIpCisgICAgICAgIHNheDJkb20uY2hhcmFjdGVycygidGV4dCIpCisgICAgICAgIHNheDJkb20uZW5kRWxlbWVudCgiZG9jIikKKyAgICAgICAgc2F4MmRvbS5lbmREb2N1bWVudCgpCisKKyAgICAgICAgZG9jID0gc2F4MmRvbS5kb2N1bWVudAorICAgICAgICByb290ID0gZG9jLmRvY3VtZW50RWxlbWVudAorICAgICAgICAodGV4dDEsIGVsbTEsIHRleHQyKSA9IHJvb3QuY2hpbGROb2RlcworICAgICAgICB0ZXh0MyA9IGVsbTEuY2hpbGROb2Rlc1swXQorCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKHRleHQxLnByZXZpb3VzU2libGluZykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0ZXh0MS5uZXh0U2libGluZywgZWxtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhlbG0xLnByZXZpb3VzU2libGluZywgdGV4dDEpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZWxtMS5uZXh0U2libGluZywgdGV4dDIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXModGV4dDIucHJldmlvdXNTaWJsaW5nLCBlbG0xKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZSh0ZXh0Mi5uZXh0U2libGluZykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUodGV4dDMucHJldmlvdXNTaWJsaW5nKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZSh0ZXh0My5uZXh0U2libGluZykKKworICAgICAgICBzZWxmLmFzc2VydElzKHJvb3QucGFyZW50Tm9kZSwgZG9jKQorICAgICAgICBzZWxmLmFzc2VydElzKHRleHQxLnBhcmVudE5vZGUsIHJvb3QpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZWxtMS5wYXJlbnROb2RlLCByb290KQorICAgICAgICBzZWxmLmFzc2VydElzKHRleHQyLnBhcmVudE5vZGUsIHJvb3QpCisgICAgICAgIHNlbGYuYXNzZXJ0SXModGV4dDMucGFyZW50Tm9kZSwgZWxtMSkKKyAgICAgICAgZG9jLnVubGluaygpCisKKworZGVmIHRlc3RfbWFpbigpOgorICAgIHJ1bl91bml0dGVzdChQdWxsRE9NVGVzdENhc2UsIFRob3JvdWdoVGVzdENhc2UsIFNBWDJET01UZXN0Q2FzZSkKKworCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3B5ZG9jLnB5IGIvTGliL3Rlc3QvdGVzdF9weWRvYy5weQppbmRleCA2NWIwYWI1Li5lODA1ZWQ4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3B5ZG9jLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcHlkb2MucHkKQEAgLTE5OCw3ICsxOTgsNyBAQAogbWlzc2luZ19wYXR0ZXJuID0gIm5vIFB5dGhvbiBkb2N1bWVudGF0aW9uIGZvdW5kIGZvciAnJXMnIgogCiAjIG91dHB1dCBwYXR0ZXJuIGZvciBtb2R1bGUgd2l0aCBiYWQgaW1wb3J0cwotYmFkaW1wb3J0X3BhdHRlcm4gPSAicHJvYmxlbSBpbiAlcyAtIEltcG9ydEVycm9yOiBObyBtb2R1bGUgbmFtZWQgJXMiCitiYWRpbXBvcnRfcGF0dGVybiA9ICJwcm9ibGVtIGluICVzIC0gSW1wb3J0RXJyb3I6IE5vIG1vZHVsZSBuYW1lZCAlciIKIAogZGVmIHJ1bl9weWRvYyhtb2R1bGVfbmFtZSwgKmFyZ3MsICoqZW52KToKICAgICAiIiIKQEAgLTIzNiw4ICsyMzYsOCBAQAogZGVmIHByaW50X2RpZmZzKHRleHQxLCB0ZXh0Mik6CiAgICAgIlByaW50cyB1bmlmaWVkIGRpZmZzIGZvciB0d28gdGV4dHMiCiAgICAgIyBYWFggbm93IG9ic29sZXRlLCB1c2UgdW5pdHRlc3QgYnVpbHQtaW4gc3VwcG9ydAotICAgIGxpbmVzMSA9IHRleHQxLnNwbGl0bGluZXMoVHJ1ZSkKLSAgICBsaW5lczIgPSB0ZXh0Mi5zcGxpdGxpbmVzKFRydWUpCisgICAgbGluZXMxID0gdGV4dDEuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQorICAgIGxpbmVzMiA9IHRleHQyLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKICAgICBkaWZmcyA9IGRpZmZsaWIudW5pZmllZF9kaWZmKGxpbmVzMSwgbGluZXMyLCBuPTAsIGZyb21maWxlPSdleHBlY3RlZCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2ZpbGU9J2dvdCcpCiAgICAgcHJpbnQoJ1xuJyArICcnLmpvaW4oZGlmZnMpKQpAQCAtMjU0LDYgKzI1NCw4IEBACiAKICAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5mbGFncy5vcHRpbWl6ZSA+PSAyLAogICAgICAgICAgICAgICAgICAgICAgIkRvY3N0cmluZ3MgYXJlIG9taXR0ZWQgd2l0aCAtTzIgYW5kIGFib3ZlIikKKyAgICBAdW5pdHRlc3Quc2tpcElmKGhhc2F0dHIoc3lzLCAnZ2V0dHJhY2UnKSBhbmQgc3lzLmdldHRyYWNlKCksCisgICAgICAgICAgICAgICAgICAgICAndHJhY2UgZnVuY3Rpb24gaW50cm9kdWNlcyBfX2xvY2Fsc19fIHVuZXhwZWN0ZWRseScpCiAgICAgZGVmIHRlc3RfaHRtbF9kb2Moc2VsZik6CiAgICAgICAgIHJlc3VsdCwgZG9jX2xvYyA9IGdldF9weWRvY19odG1sKHB5ZG9jX21vZCkKICAgICAgICAgbW9kX2ZpbGUgPSBpbnNwZWN0LmdldGFic2ZpbGUocHlkb2NfbW9kKQpAQCAtMjY5LDYgKzI3MSw4IEBACiAKICAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5mbGFncy5vcHRpbWl6ZSA+PSAyLAogICAgICAgICAgICAgICAgICAgICAgIkRvY3N0cmluZ3MgYXJlIG9taXR0ZWQgd2l0aCAtTzIgYW5kIGFib3ZlIikKKyAgICBAdW5pdHRlc3Quc2tpcElmKGhhc2F0dHIoc3lzLCAnZ2V0dHJhY2UnKSBhbmQgc3lzLmdldHRyYWNlKCksCisgICAgICAgICAgICAgICAgICAgICAndHJhY2UgZnVuY3Rpb24gaW50cm9kdWNlcyBfX2xvY2Fsc19fIHVuZXhwZWN0ZWRseScpCiAgICAgZGVmIHRlc3RfdGV4dF9kb2Moc2VsZik6CiAgICAgICAgIHJlc3VsdCwgZG9jX2xvYyA9IGdldF9weWRvY190ZXh0KHB5ZG9jX21vZCkKICAgICAgICAgZXhwZWN0ZWRfdGV4dCA9IGV4cGVjdGVkX3RleHRfcGF0dGVybiAlIFwKQEAgLTMxMCw2ICszMTQsOCBAQAogCiAgICAgQHVuaXR0ZXN0LnNraXBJZihzeXMuZmxhZ3Mub3B0aW1pemUgPj0gMiwKICAgICAgICAgICAgICAgICAgICAgICdEb2NzdHJpbmdzIGFyZSBvbWl0dGVkIHdpdGggLU8yIGFuZCBhYm92ZScpCisgICAgQHVuaXR0ZXN0LnNraXBJZihoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpLAorICAgICAgICAgICAgICAgICAgICAgJ3RyYWNlIGZ1bmN0aW9uIGludHJvZHVjZXMgX19sb2NhbHNfXyB1bmV4cGVjdGVkbHknKQogICAgIGRlZiB0ZXN0X2hlbHBfb3V0cHV0X3JlZGlyZWN0KHNlbGYpOgogICAgICAgICAjIGlzc3VlIDk0MDI4NiwgaWYgb3V0cHV0IGlzIHNldCBpbiBIZWxwZXIsIHRoZW4gYWxsIG91dHB1dCBmcm9tCiAgICAgICAgICMgSGVscGVyLmhlbHAgc2hvdWxkIGJlIHJlZGlyZWN0ZWQKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcmFpc2UucHkgYi9MaWIvdGVzdC90ZXN0X3JhaXNlLnB5CmluZGV4IGUwMmMxYWYuLjhhZTkyMTAgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcmFpc2UucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9yYWlzZS5weQpAQCAtMywxMiArMywyNyBAQAogCiAiIiJUZXN0cyBmb3IgdGhlIHJhaXNlIHN0YXRlbWVudC4iIiIKIAotZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0Citmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQsIHNjcmlwdF9oZWxwZXIKK2ltcG9ydCByZQogaW1wb3J0IHN5cwogaW1wb3J0IHR5cGVzCiBpbXBvcnQgdW5pdHRlc3QKIAogCit0cnk6CisgICAgZnJvbSByZXNvdXJjZSBpbXBvcnQgc2V0cmxpbWl0LCBSTElNSVRfQ09SRSwgZXJyb3IgYXMgcmVzb3VyY2VfZXJyb3IKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBwcmVwYXJlX3N1YnByb2Nlc3MgPSBOb25lCitlbHNlOgorICAgIGRlZiBwcmVwYXJlX3N1YnByb2Nlc3MoKToKKyAgICAgICAgIyBkb24ndCBjcmVhdGUgY29yZSBmaWxlCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNldHJsaW1pdChSTElNSVRfQ09SRSwgKDAsIDApKQorICAgICAgICBleGNlcHQgKFZhbHVlRXJyb3IsIHJlc291cmNlX2Vycm9yKToKKyAgICAgICAgICAgIHBhc3MKKworCisKIGRlZiBnZXRfdGIoKToKICAgICB0cnk6CiAgICAgICAgIHJhaXNlIE9TRXJyb3IoKQpAQCAtNzcsNiArOTIsMTYgQEAKICAgICAgICAgICAgICAgICBuZXN0ZWRfcmVyYWlzZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcmVyYWlzZSkKIAorICAgIGRlZiB0ZXN0X3JhaXNlX2Zyb21fTm9uZShzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiZm9vIikKKyAgICAgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCkgZnJvbSBOb25lCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yIGFzIGU6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNpbnN0YW5jZShlLl9fY29udGV4dF9fLCBUeXBlRXJyb3IpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZS5fX2NhdXNlX18pCisKICAgICBkZWYgdGVzdF93aXRoX3JlcmFpc2UxKHNlbGYpOgogICAgICAgICBkZWYgcmVyYWlzZSgpOgogICAgICAgICAgICAgdHJ5OgpAQCAtMTMwLDggKzE1NSwzMiBAQAogICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CiAgICAgICAgICAgICByYWlzZSBNeUV4Y2VwdGlvbgogCisgICAgZGVmIHRlc3RfYXNzZXJ0X3dpdGhfdHVwbGVfYXJnKHNlbGYpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBhc3NlcnQgRmFsc2UsICgzLCkKKyAgICAgICAgZXhjZXB0IEFzc2VydGlvbkVycm9yIGFzIGU6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihlKSwgIigzLCkiKQorCisKIAogY2xhc3MgVGVzdENhdXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0Q2F1c2VTeW50YXgoc2VsZik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcgorICAgICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb246CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IgZnJvbSBOb25lCisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBleGM6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZXhjLl9fY2F1c2VfXykKKyAgICAgICAgICAgICAgICByYWlzZSBleGMgZnJvbSBFbGxpcHNpcworICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBleGM6CisgICAgICAgICAgICBlID0gZXhjCisKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhlLl9fY2F1c2VfXywgRWxsaXBzaXMpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShlLl9fY29udGV4dF9fLCBUeXBlRXJyb3IpCisKICAgICBkZWYgdGVzdF9pbnZhbGlkX2NhdXNlKHNlbGYpOgogICAgICAgICB0cnk6CiAgICAgICAgICAgICByYWlzZSBJbmRleEVycm9yIGZyb20gNQpAQCAtMTcxLDYgKzIyMCw0NCBAQAogCiAKIGNsYXNzIFRlc3RUcmFjZWJhY2sodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIGdldF9vdXRwdXQoc2VsZiwgY29kZSwgZmlsZW5hbWU9Tm9uZSk6CisgICAgICAgICIiIgorICAgICAgICBSdW4gdGhlIHNwZWNpZmllZCBjb2RlIGluIFB5dGhvbiAoaW4gYSBuZXcgY2hpbGQgcHJvY2VzcykgYW5kIHJlYWQgdGhlCisgICAgICAgIG91dHB1dCBmcm9tIHRoZSBzdGFuZGFyZCBlcnJvciBvciBmcm9tIGEgZmlsZSAoaWYgZmlsZW5hbWUgaXMgc2V0KS4KKyAgICAgICAgUmV0dXJuIHRoZSBvdXRwdXQgbGluZXMgYXMgYSBsaXN0LgorICAgICAgICAiIiIKKyAgICAgICAgb3B0aW9ucyA9IHt9CisgICAgICAgIGlmIHByZXBhcmVfc3VicHJvY2VzczoKKyAgICAgICAgICAgIG9wdGlvbnNbJ3ByZWV4ZWNfZm4nXSA9IHByZXBhcmVfc3VicHJvY2VzcworICAgICAgICBwcm9jZXNzID0gc2NyaXB0X2hlbHBlci5zcGF3bl9weXRob24oJy1jJywgY29kZSwgKipvcHRpb25zKQorICAgICAgICBzdGRvdXQsIHN0ZGVyciA9IHByb2Nlc3MuY29tbXVuaWNhdGUoKQorICAgICAgICBleGl0Y29kZSA9IHByb2Nlc3Mud2FpdCgpCisgICAgICAgIG91dHB1dCA9IHN1cHBvcnQuc3RyaXBfcHl0aG9uX3N0ZGVycihzdGRvdXQpCisgICAgICAgIG91dHB1dCA9IG91dHB1dC5kZWNvZGUoJ2FzY2lpJywgJ2JhY2tzbGFzaHJlcGxhY2UnKQorICAgICAgICBpZiBmaWxlbmFtZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0cHV0LCAnJykKKyAgICAgICAgICAgIHdpdGggb3BlbihmaWxlbmFtZSwgInJiIikgYXMgZnA6CisgICAgICAgICAgICAgICAgb3V0cHV0ID0gZnAucmVhZCgpCisgICAgICAgICAgICBvdXRwdXQgPSBvdXRwdXQuZGVjb2RlKCdhc2NpaScsICdiYWNrc2xhc2hyZXBsYWNlJykKKyAgICAgICAgb3V0cHV0ID0gcmUuc3ViKCdDdXJyZW50IHRocmVhZCAweFswLTlhLWZdKycsCisgICAgICAgICAgICAgICAgICAgICAgICAnQ3VycmVudCB0aHJlYWQgWFhYJywKKyAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCkKKyAgICAgICAgcmV0dXJuIG91dHB1dC5zcGxpdGxpbmVzKCksIGV4aXRjb2RlCisKKyAgICBkZWYgdGVzdF90cmFjZWJhY2tfdmVyYmlhZ2Uoc2VsZik6CisgICAgICAgIGNvZGUgPSAiIiIKK3RyeToKKyAgICByYWlzZSBWYWx1ZUVycm9yCitleGNlcHQ6CisgICAgcmFpc2UgTmFtZUVycm9yIGZyb20gTm9uZQorIiIiCisgICAgICAgIHRleHQsIGV4aXRjb2RlID0gc2VsZi5nZXRfb3V0cHV0KGNvZGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHRleHQpLCAzKQorICAgICAgICBzZWxmLmFzc2VydFRydWUodGV4dFswXS5zdGFydHN3aXRoKCdUcmFjZWJhY2snKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHRleHRbMV0uc3RhcnRzd2l0aCgnICBGaWxlICcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUodGV4dFsyXS5zdGFydHN3aXRoKCdOYW1lRXJyb3InKSkKKwogICAgIGRlZiB0ZXN0X3NldHNfdHJhY2ViYWNrKHNlbGYpOgogICAgICAgICB0cnk6CiAgICAgICAgICAgICByYWlzZSBJbmRleEVycm9yKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcmFuZ2UucHkgYi9MaWIvdGVzdC90ZXN0X3JhbmdlLnB5CmluZGV4IGVkZTA3OTEuLjJlMzM1Y2MgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcmFuZ2UucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9yYW5nZS5weQpAQCAtNTA3LDYgKzUwNyw4NyBAQAogICAgICAgICAgICAgICAgIGZvciBrIGluIHZhbHVlcyAtIHswfToKICAgICAgICAgICAgICAgICAgICAgcltpOmo6a10KIAorICAgIGRlZiB0ZXN0X2NvbXBhcmlzb24oc2VsZik6CisgICAgICAgIHRlc3RfcmFuZ2VzID0gW3JhbmdlKDApLCByYW5nZSgwLCAtMSksIHJhbmdlKDEsIDEsIDMpLAorICAgICAgICAgICAgICAgICAgICAgICByYW5nZSgxKSwgcmFuZ2UoNSwgNiksIHJhbmdlKDUsIDYsIDIpLAorICAgICAgICAgICAgICAgICAgICAgICByYW5nZSg1LCA3LCAyKSwgcmFuZ2UoMiksIHJhbmdlKDAsIDQsIDIpLAorICAgICAgICAgICAgICAgICAgICAgICByYW5nZSgwLCA1LCAyKSwgcmFuZ2UoMCwgNiwgMildCisgICAgICAgIHRlc3RfdHVwbGVzID0gbGlzdChtYXAodHVwbGUsIHRlc3RfcmFuZ2VzKSkKKworICAgICAgICAjIENoZWNrIHRoYXQgZXF1YWxpdHkgb2YgcmFuZ2VzIG1hdGNoZXMgZXF1YWxpdHkgb2YgdGhlIGNvcnJlc3BvbmRpbmcKKyAgICAgICAgIyB0dXBsZXMgZm9yIGVhY2ggcGFpciBmcm9tIHRoZSB0ZXN0IGxpc3RzIGFib3ZlLgorICAgICAgICByYW5nZXNfZXEgPSBbYSA9PSBiIGZvciBhIGluIHRlc3RfcmFuZ2VzIGZvciBiIGluIHRlc3RfcmFuZ2VzXQorICAgICAgICB0dXBsZXNfZXEgPSBbYSA9PSBiIGZvciBhIGluIHRlc3RfdHVwbGVzIGZvciBiIGluIHRlc3RfdHVwbGVzXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJhbmdlc19lcSwgdHVwbGVzX2VxKQorCisgICAgICAgICMgQ2hlY2sgdGhhdCAhPSBjb3JyZWN0bHkgZ2l2ZXMgdGhlIGxvZ2ljYWwgbmVnYXRpb24gb2YgPT0KKyAgICAgICAgcmFuZ2VzX25lID0gW2EgIT0gYiBmb3IgYSBpbiB0ZXN0X3JhbmdlcyBmb3IgYiBpbiB0ZXN0X3Jhbmdlc10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyYW5nZXNfbmUsIFtub3QgeCBmb3IgeCBpbiByYW5nZXNfZXFdKQorCisgICAgICAgICMgRXF1YWwgcmFuZ2VzIHNob3VsZCBoYXZlIGVxdWFsIGhhc2hlcy4KKyAgICAgICAgZm9yIGEgaW4gdGVzdF9yYW5nZXM6CisgICAgICAgICAgICBmb3IgYiBpbiB0ZXN0X3JhbmdlczoKKyAgICAgICAgICAgICAgICBpZiBhID09IGI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFzaChhKSwgaGFzaChiKSkKKworICAgICAgICAjIFJhbmdlcyBhcmUgdW5lcXVhbCB0byBvdGhlciB0eXBlcyAoZXZlbiBzZXF1ZW5jZSB0eXBlcykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyYW5nZSgwKSA9PSAoKSwgRmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoKCkgPT0gcmFuZ2UoMCksIEZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydElzKHJhbmdlKDIpID09IFswLCAxXSwgRmFsc2UpCisKKyAgICAgICAgIyBIdWdlIGludGVnZXJzIGFyZW4ndCBhIHByb2JsZW0uCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmFuZ2UoMCwgMioqMTAwIC0gMSwgMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgcmFuZ2UoMCwgMioqMTAwLCAyKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYXNoKHJhbmdlKDAsIDIqKjEwMCAtIDEsIDIpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBoYXNoKHJhbmdlKDAsIDIqKjEwMCwgMikpKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHJhbmdlKDAsIDIqKjEwMCwgMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFuZ2UoMCwgMioqMTAwICsgMSwgMikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmFuZ2UoMioqMjAwLCAyKioyMDEgLSAyKio5OSwgMioqMTAwKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICByYW5nZSgyKioyMDAsIDIqKjIwMSwgMioqMTAwKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYXNoKHJhbmdlKDIqKjIwMCwgMioqMjAxIC0gMioqOTksIDIqKjEwMCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGhhc2gocmFuZ2UoMioqMjAwLCAyKioyMDEsIDIqKjEwMCkpKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHJhbmdlKDIqKjIwMCwgMioqMjAxLCAyKioxMDApLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhbmdlKDIqKjIwMCwgMioqMjAxICsgMSwgMioqMTAwKSkKKworICAgICAgICAjIE9yZGVyIGNvbXBhcmlzb25zIGFyZSBub3QgaW1wbGVtZW50ZWQgZm9yIHJhbmdlcy4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgcmFuZ2UoMCkgPCByYW5nZSgwKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICByYW5nZSgwKSA+IHJhbmdlKDApCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIHJhbmdlKDApIDw9IHJhbmdlKDApCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIHJhbmdlKDApID49IHJhbmdlKDApCisKKworICAgIGRlZiB0ZXN0X2F0dHJpYnV0ZXMoc2VsZik6CisgICAgICAgICMgdGVzdCB0aGUgc3RhcnQsIHN0b3AgYW5kIHN0ZXAgYXR0cmlidXRlcyBvZiByYW5nZSBvYmplY3RzCisgICAgICAgIHNlbGYuYXNzZXJ0X2F0dHJzKHJhbmdlKDApLCAwLCAwLCAxKQorICAgICAgICBzZWxmLmFzc2VydF9hdHRycyhyYW5nZSgxMCksIDAsIDEwLCAxKQorICAgICAgICBzZWxmLmFzc2VydF9hdHRycyhyYW5nZSgtMTApLCAwLCAtMTAsIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0X2F0dHJzKHJhbmdlKDAsIDEwLCAxKSwgMCwgMTAsIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0X2F0dHJzKHJhbmdlKDAsIDEwLCAzKSwgMCwgMTAsIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0X2F0dHJzKHJhbmdlKDEwLCAwLCAtMSksIDEwLCAwLCAtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRfYXR0cnMocmFuZ2UoMTAsIDAsIC0zKSwgMTAsIDAsIC0zKQorCisgICAgZGVmIGFzc2VydF9hdHRycyhzZWxmLCByYW5nZW9iaiwgc3RhcnQsIHN0b3AsIHN0ZXApOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJhbmdlb2JqLnN0YXJ0LCBzdGFydCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyYW5nZW9iai5zdG9wLCBzdG9wKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJhbmdlb2JqLnN0ZXAsIHN0ZXApCisKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICByYW5nZW9iai5zdGFydCA9IDAKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICByYW5nZW9iai5zdG9wID0gMTAKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICByYW5nZW9iai5zdGVwID0gMQorCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXR0cmlidXRlRXJyb3IpOgorICAgICAgICAgICAgZGVsIHJhbmdlb2JqLnN0YXJ0CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXR0cmlidXRlRXJyb3IpOgorICAgICAgICAgICAgZGVsIHJhbmdlb2JqLnN0b3AKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICBkZWwgcmFuZ2VvYmouc3RlcAogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgdGVzdC5zdXBwb3J0LnJ1bl91bml0dGVzdChSYW5nZVRlc3QpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3JlLnB5IGIvTGliL3Rlc3QvdGVzdF9yZS5weQppbmRleCA0ZTE4NTMxLi4zNGM0YTVmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3JlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcmUucHkKQEAgLTQ2Niw3ICs0NjYsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0uc3BhbigpLCBzcGFuKQogCiAgICAgZGVmIHRlc3RfcmVfZXNjYXBlKHNlbGYpOgotICAgICAgICBhbG51bV9jaGFycyA9IHN0cmluZy5hc2NpaV9sZXR0ZXJzICsgc3RyaW5nLmRpZ2l0cworICAgICAgICBhbG51bV9jaGFycyA9IHN0cmluZy5hc2NpaV9sZXR0ZXJzICsgc3RyaW5nLmRpZ2l0cyArICdfJwogICAgICAgICBwID0gJycuam9pbihjaHIoaSkgZm9yIGkgaW4gcmFuZ2UoMjU2KSkKICAgICAgICAgZm9yIGMgaW4gcDoKICAgICAgICAgICAgIGlmIGMgaW4gYWxudW1fY2hhcnM6CkBAIC00NzksNyArNDc5LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRNYXRjaChyZS5lc2NhcGUocCksIHApCiAKICAgICBkZWYgdGVzdF9yZV9lc2NhcGVfYnl0ZShzZWxmKToKLSAgICAgICAgYWxudW1fY2hhcnMgPSAoc3RyaW5nLmFzY2lpX2xldHRlcnMgKyBzdHJpbmcuZGlnaXRzKS5lbmNvZGUoJ2FzY2lpJykKKyAgICAgICAgYWxudW1fY2hhcnMgPSAoc3RyaW5nLmFzY2lpX2xldHRlcnMgKyBzdHJpbmcuZGlnaXRzICsgJ18nKS5lbmNvZGUoJ2FzY2lpJykKICAgICAgICAgcCA9IGJ5dGVzKHJhbmdlKDI1NikpCiAgICAgICAgIGZvciBpIGluIHA6CiAgICAgICAgICAgICBiID0gYnl0ZXMoW2ldKQpAQCAtODE4LDYgKzgxOCwxMyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBfc3JlLmNvbXBpbGUsICJhYmMiLCAwLCBbbG9uZ19vdmVyZmxvd10pCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgX3NyZS5jb21waWxlLCB7fSwgMCwgW10pCiAKKyAgICBkZWYgdGVzdF9zZWFyY2hfZG90X3VuaWNvZGUoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3ROb25lKHJlLnNlYXJjaCgiMTIzLiotIiwgJzEyM2FiYy0nKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdE5vbmUocmUuc2VhcmNoKCIxMjMuKi0iLCAnMTIzXHhlOS0nKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdE5vbmUocmUuc2VhcmNoKCIxMjMuKi0iLCAnMTIzXHUyMGFjLScpKQorICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShyZS5zZWFyY2goIjEyMy4qLSIsICcxMjNcVTAwMTBmZmZmLScpKQorICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShyZS5zZWFyY2goIjEyMy4qLSIsICcxMjNceGU5XHUyMGFjXFUwMDEwZmZmZi0nKSkKKwogZGVmIHJ1bl9yZV90ZXN0cygpOgogICAgIGZyb20gdGVzdC5yZV90ZXN0cyBpbXBvcnQgdGVzdHMsIFNVQ0NFRUQsIEZBSUwsIFNZTlRBWF9FUlJPUgogICAgIGlmIHZlcmJvc2U6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3JlcHJsaWIucHkgYi9MaWIvdGVzdC90ZXN0X3JlcHJsaWIucHkKaW5kZXggYjBkYzRkNy4uZTc1YmExYyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9yZXBybGliLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcmVwcmxpYi5weQpAQCAtNiw5ICs2LDEwIEBACiBpbXBvcnQgc3lzCiBpbXBvcnQgb3MKIGltcG9ydCBzaHV0aWwKK2ltcG9ydCBpbXBvcnRsaWIKIGltcG9ydCB1bml0dGVzdAogCi1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgcnVuX3VuaXR0ZXN0Citmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgcnVuX3VuaXR0ZXN0LCBjcmVhdGVfZW1wdHlfZmlsZQogZnJvbSByZXBybGliIGltcG9ydCByZXByIGFzIHIgIyBEb24ndCBzaGFkb3cgYnVpbHRpbiByZXByCiBmcm9tIHJlcHJsaWIgaW1wb3J0IFJlcHIKIGZyb20gcmVwcmxpYiBpbXBvcnQgcmVjdXJzaXZlX3JlcHIKQEAgLTEyOSw4ICsxMzAsOCBAQAogICAgICAgICBzZWxmLmFzc2VydEluKHMuZmluZCgiLi4uIiksIFsxMiwgMTNdKQogCiAgICAgZGVmIHRlc3RfbGFtYmRhKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFRydWUocmVwcihsYW1iZGEgeDogeCkuc3RhcnRzd2l0aCgKLSAgICAgICAgICAgICI8ZnVuY3Rpb24gPGxhbWJkYSIpKQorICAgICAgICByID0gcmVwcihsYW1iZGEgeDogeCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHIuc3RhcnRzd2l0aCgiPGZ1bmN0aW9uIFJlcHJUZXN0cy50ZXN0X2xhbWJkYS48bG9jYWxzPi48bGFtYmRhIiksIHIpCiAgICAgICAgICMgWFhYIGFub255bW91cyBmdW5jdGlvbnM/ICBzZWUgZnVuY19yZXByCiAKICAgICBkZWYgdGVzdF9idWlsdGluX2Z1bmN0aW9uKHNlbGYpOgpAQCAtMTkzLDEwICsxOTQsOSBAQAogICAgICAgICByKHkpCiAgICAgICAgIHIoeikKIAotZGVmIHRvdWNoKHBhdGgsIHRleHQ9JycpOgotICAgIGZwID0gb3BlbihwYXRoLCAndycpCi0gICAgZnAud3JpdGUodGV4dCkKLSAgICBmcC5jbG9zZSgpCitkZWYgd3JpdGVfZmlsZShwYXRoLCB0ZXh0KToKKyAgICB3aXRoIG9wZW4ocGF0aCwgJ3cnLCBlbmNvZGluZz0nQVNDSUknKSBhcyBmcDoKKyAgICAgICAgZnAud3JpdGUodGV4dCkKIAogY2xhc3MgTG9uZ1JlcHJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgc2V0VXAoc2VsZik6CkBAIC0yMDYsMTMgKzIwNiwxNCBAQAogICAgICAgICAjIE1ha2UgdGhlIHBhY2thZ2UgYW5kIHN1YnBhY2thZ2UKICAgICAgICAgc2h1dGlsLnJtdHJlZShzZWxmLnBrZ25hbWUsIGlnbm9yZV9lcnJvcnM9VHJ1ZSkKICAgICAgICAgb3MubWtkaXIoc2VsZi5wa2duYW1lKQotICAgICAgICB0b3VjaChvcy5wYXRoLmpvaW4oc2VsZi5wa2duYW1lLCAnX19pbml0X18ucHknKSkKKyAgICAgICAgY3JlYXRlX2VtcHR5X2ZpbGUob3MucGF0aC5qb2luKHNlbGYucGtnbmFtZSwgJ19faW5pdF9fLnB5JykpCiAgICAgICAgIHNodXRpbC5ybXRyZWUoc2VsZi5zdWJwa2duYW1lLCBpZ25vcmVfZXJyb3JzPVRydWUpCiAgICAgICAgIG9zLm1rZGlyKHNlbGYuc3VicGtnbmFtZSkKLSAgICAgICAgdG91Y2gob3MucGF0aC5qb2luKHNlbGYuc3VicGtnbmFtZSwgJ19faW5pdF9fLnB5JykpCisgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKG9zLnBhdGguam9pbihzZWxmLnN1YnBrZ25hbWUsICdfX2luaXRfXy5weScpKQogICAgICAgICAjIFJlbWVtYmVyIHdoZXJlIHdlIGFyZQogICAgICAgICBzZWxmLmhlcmUgPSBvcy5nZXRjd2QoKQogICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgc2VsZi5oZXJlKQorICAgICAgICBpbXBvcnRsaWIuaW52YWxpZGF0ZV9jYWNoZXMoKQogCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgogICAgICAgICBhY3Rpb25zID0gW10KQEAgLTIzMSwxNSArMjMyLDE1IEBACiAKICAgICBkZWYgdGVzdF9tb2R1bGUoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAotICAgICAgICB0b3VjaChvcy5wYXRoLmpvaW4oc2VsZi5zdWJwa2duYW1lLCBzZWxmLnBrZ25hbWUgKyAnLnB5JykpCisgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKG9zLnBhdGguam9pbihzZWxmLnN1YnBrZ25hbWUsIHNlbGYucGtnbmFtZSArICcucHknKSkKICAgICAgICAgZnJvbSBhcmVhbGx5bG9uZ3BhY2thZ2VhbmRtb2R1bGVuYW1ldG90ZXN0cmVwcnRydW5jYXRpb24uYXJlYWxseWxvbmdwYWNrYWdlYW5kbW9kdWxlbmFtZXRvdGVzdHJlcHJ0cnVuY2F0aW9uIGltcG9ydCBhcmVhbGx5bG9uZ3BhY2thZ2VhbmRtb2R1bGVuYW1ldG90ZXN0cmVwcnRydW5jYXRpb24KICAgICAgICAgZXEocmVwcihhcmVhbGx5bG9uZ3BhY2thZ2VhbmRtb2R1bGVuYW1ldG90ZXN0cmVwcnRydW5jYXRpb24pLAotICAgICAgICAgICAiPG1vZHVsZSAnJXMnIGZyb20gJyVzJz4iICUgKGFyZWFsbHlsb25ncGFja2FnZWFuZG1vZHVsZW5hbWV0b3Rlc3RyZXBydHJ1bmNhdGlvbi5fX25hbWVfXywgYXJlYWxseWxvbmdwYWNrYWdlYW5kbW9kdWxlbmFtZXRvdGVzdHJlcHJ0cnVuY2F0aW9uLl9fZmlsZV9fKSkKKyAgICAgICAgICAgIjxtb2R1bGUgJXIgZnJvbSAlcj4iICUgKGFyZWFsbHlsb25ncGFja2FnZWFuZG1vZHVsZW5hbWV0b3Rlc3RyZXBydHJ1bmNhdGlvbi5fX25hbWVfXywgYXJlYWxseWxvbmdwYWNrYWdlYW5kbW9kdWxlbmFtZXRvdGVzdHJlcHJ0cnVuY2F0aW9uLl9fZmlsZV9fKSkKICAgICAgICAgZXEocmVwcihzeXMpLCAiPG1vZHVsZSAnc3lzJyAoYnVpbHQtaW4pPiIpCiAKICAgICBkZWYgdGVzdF90eXBlKHNlbGYpOgogICAgICAgICBlcSA9IHNlbGYuYXNzZXJ0RXF1YWwKLSAgICAgICAgdG91Y2gob3MucGF0aC5qb2luKHNlbGYuc3VicGtnbmFtZSwgJ2Zvby5weScpLCAnJydcCisgICAgICAgIHdyaXRlX2ZpbGUob3MucGF0aC5qb2luKHNlbGYuc3VicGtnbmFtZSwgJ2Zvby5weScpLCAnJydcCiBjbGFzcyBmb28ob2JqZWN0KToKICAgICBwYXNzCiAnJycpCkBAIC0yNTMsNyArMjU0LDcgQEAKICAgICAgICAgcGFzcwogCiAgICAgZGVmIHRlc3RfY2xhc3Moc2VsZik6Ci0gICAgICAgIHRvdWNoKG9zLnBhdGguam9pbihzZWxmLnN1YnBrZ25hbWUsICdiYXIucHknKSwgJycnXAorICAgICAgICB3cml0ZV9maWxlKG9zLnBhdGguam9pbihzZWxmLnN1YnBrZ25hbWUsICdiYXIucHknKSwgJycnXAogY2xhc3MgYmFyOgogICAgIHBhc3MKICcnJykKQEAgLTI2Miw3ICsyNjMsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIoYmFyLmJhciksICI8Y2xhc3MgJyVzLmJhcic+IiAlIGJhci5fX25hbWVfXykKIAogICAgIGRlZiB0ZXN0X2luc3RhbmNlKHNlbGYpOgotICAgICAgICB0b3VjaChvcy5wYXRoLmpvaW4oc2VsZi5zdWJwa2duYW1lLCAnYmF6LnB5JyksICcnJ1wKKyAgICAgICAgd3JpdGVfZmlsZShvcy5wYXRoLmpvaW4oc2VsZi5zdWJwa2duYW1lLCAnYmF6LnB5JyksICcnJ1wKIGNsYXNzIGJhejoKICAgICBwYXNzCiAnJycpCkBAIC0yNzMsMTkgKzI3NCwyMCBAQAogCiAgICAgZGVmIHRlc3RfbWV0aG9kKHNlbGYpOgogICAgICAgICBlcSA9IHNlbGYuYXNzZXJ0RXF1YWwKLSAgICAgICAgdG91Y2gob3MucGF0aC5qb2luKHNlbGYuc3VicGtnbmFtZSwgJ3F1eC5weScpLCAnJydcCisgICAgICAgIHdyaXRlX2ZpbGUob3MucGF0aC5qb2luKHNlbGYuc3VicGtnbmFtZSwgJ3F1eC5weScpLCAnJydcCiBjbGFzcyBhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYToKICAgICBkZWYgYW1ldGhvZChzZWxmKTogcGFzcwogJycnKQogICAgICAgICBmcm9tIGFyZWFsbHlsb25ncGFja2FnZWFuZG1vZHVsZW5hbWV0b3Rlc3RyZXBydHJ1bmNhdGlvbi5hcmVhbGx5bG9uZ3BhY2thZ2VhbmRtb2R1bGVuYW1ldG90ZXN0cmVwcnRydW5jYXRpb24gaW1wb3J0IHF1eAogICAgICAgICAjIFVuYm91bmQgbWV0aG9kcyBmaXJzdAotICAgICAgICBzZWxmLmFzc2VydFRydWUocmVwcihxdXguYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEuYW1ldGhvZCkuc3RhcnRzd2l0aCgKLSAgICAgICAgJzxmdW5jdGlvbiBhbWV0aG9kJykpCisgICAgICAgIHIgPSByZXByKHF1eC5hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYS5hbWV0aG9kKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoci5zdGFydHN3aXRoKCc8ZnVuY3Rpb24gYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEuYW1ldGhvZCcpLCByKQogICAgICAgICAjIEJvdW5kIG1ldGhvZCBuZXh0CiAgICAgICAgIGlxdXggPSBxdXguYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEoKQotICAgICAgICBzZWxmLmFzc2VydFRydWUocmVwcihpcXV4LmFtZXRob2QpLnN0YXJ0c3dpdGgoCisgICAgICAgIHIgPSByZXByKGlxdXguYW1ldGhvZCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHIuc3RhcnRzd2l0aCgKICAgICAgICAgICAgICc8Ym91bmQgbWV0aG9kIGFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhLmFtZXRob2Qgb2YgPCVzLmFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhIG9iamVjdCBhdCAweCcgXAotICAgICAgICAgICAgJSAocXV4Ll9fbmFtZV9fLCkgKSkKKyAgICAgICAgICAgICUgKHF1eC5fX25hbWVfXywpICksIHIpCiAKICAgICBkZWYgdGVzdF9idWlsdGluX2Z1bmN0aW9uKHNlbGYpOgogICAgICAgICAjIFhYWCB0ZXN0IGJ1aWx0LWluIGZ1bmN0aW9ucyBhbmQgbWV0aG9kcyB3aXRoIHJlYWxseSBsb25nIG5hbWVzCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3JpY2hjbXAucHkgYi9MaWIvdGVzdC90ZXN0X3JpY2hjbXAucHkKaW5kZXggZjhmMzcxNy4uMGI2MjlkYyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9yaWNoY21wLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcmljaGNtcC5weQpAQCAtMjIwLDYgKzIyMCw3IEBACiAgICAgICAgIGZvciBmdW5jIGluIChkbywgb3BlcmF0b3Iubm90Xyk6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhFeGMsIGZ1bmMsIEJhZCgpKQogCisgICAgQHN1cHBvcnQubm9fdHJhY2luZwogICAgIGRlZiB0ZXN0X3JlY3Vyc2lvbihzZWxmKToKICAgICAgICAgIyBDaGVjayB0aGF0IGNvbXBhcmlzb24gZm9yIHJlY3Vyc2l2ZSBvYmplY3RzIGZhaWxzIGdyYWNlZnVsbHkKICAgICAgICAgZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgVXNlckxpc3QKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcnVucHkucHkgYi9MaWIvdGVzdC90ZXN0X3J1bnB5LnB5CmluZGV4IDdmZmI2YWYuLjJjZWRlMTkgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcnVucHkucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9ydW5weS5weQpAQCAtNiw3ICs2LDkgQEAKIGltcG9ydCByZQogaW1wb3J0IHRlbXBmaWxlCiBpbXBvcnQgcHlfY29tcGlsZQotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGZvcmdldCwgbWFrZV9sZWdhY3lfcHljLCBydW5fdW5pdHRlc3QsIHVubG9hZCwgdmVyYm9zZQorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0ICgKKyAgICBmb3JnZXQsIG1ha2VfbGVnYWN5X3B5YywgcnVuX3VuaXR0ZXN0LCB1bmxvYWQsIHZlcmJvc2UsIG5vX3RyYWNpbmcsCisgICAgY3JlYXRlX2VtcHR5X2ZpbGUpCiBmcm9tIHRlc3Quc2NyaXB0X2hlbHBlciBpbXBvcnQgKAogICAgIG1ha2VfcGtnLCBtYWtlX3NjcmlwdCwgbWFrZV96aXBfcGtnLCBtYWtlX3ppcF9zY3JpcHQsIHRlbXBfZGlyKQogCkBAIC0xMTIsOCArMTE0LDcgQEAKICAgICBkZWYgX2FkZF9wa2dfZGlyKHNlbGYsIHBrZ19kaXIpOgogICAgICAgICBvcy5ta2Rpcihwa2dfZGlyKQogICAgICAgICBwa2dfZm5hbWUgPSBvcy5wYXRoLmpvaW4ocGtnX2RpciwgIl9faW5pdF9fLnB5IikKLSAgICAgICAgcGtnX2ZpbGUgPSBvcGVuKHBrZ19mbmFtZSwgInciKQotICAgICAgICBwa2dfZmlsZS5jbG9zZSgpCisgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKHBrZ19mbmFtZSkKICAgICAgICAgcmV0dXJuIHBrZ19mbmFtZQogCiAgICAgZGVmIF9tYWtlX3BrZyhzZWxmLCBzb3VyY2UsIGRlcHRoLCBtb2RfYmFzZT0icnVucHlfdGVzdCIpOgpAQCAtMjE4LDggKzIxOSw3IEBACiAgICAgICAgICAgICBtb2R1bGVfZGlyID0gb3MucGF0aC5qb2luKG1vZHVsZV9kaXIsIHBrZ19uYW1lKQogICAgICAgICAjIEFkZCBzaWJsaW5nIG1vZHVsZQogICAgICAgICBzaWJsaW5nX2ZuYW1lID0gb3MucGF0aC5qb2luKG1vZHVsZV9kaXIsICJzaWJsaW5nLnB5IikKLSAgICAgICAgc2libGluZ19maWxlID0gb3BlbihzaWJsaW5nX2ZuYW1lLCAidyIpCi0gICAgICAgIHNpYmxpbmdfZmlsZS5jbG9zZSgpCisgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKHNpYmxpbmdfZm5hbWUpCiAgICAgICAgIGlmIHZlcmJvc2U6IHByaW50KCIgIEFkZGVkIHNpYmxpbmcgbW9kdWxlOiIsIHNpYmxpbmdfZm5hbWUpCiAgICAgICAgICMgQWRkIG5lcGhldyBtb2R1bGUKICAgICAgICAgdW5jbGVfZGlyID0gb3MucGF0aC5qb2luKHBhcmVudF9kaXIsICJ1bmNsZSIpCkBAIC0yMjksOCArMjI5LDcgQEAKICAgICAgICAgc2VsZi5fYWRkX3BrZ19kaXIoY291c2luX2RpcikKICAgICAgICAgaWYgdmVyYm9zZTogcHJpbnQoIiAgQWRkZWQgY291c2luIHBhY2thZ2U6IiwgY291c2luX2RpcikKICAgICAgICAgbmVwaGV3X2ZuYW1lID0gb3MucGF0aC5qb2luKGNvdXNpbl9kaXIsICJuZXBoZXcucHkiKQotICAgICAgICBuZXBoZXdfZmlsZSA9IG9wZW4obmVwaGV3X2ZuYW1lLCAidyIpCi0gICAgICAgIG5lcGhld19maWxlLmNsb3NlKCkKKyAgICAgICAgY3JlYXRlX2VtcHR5X2ZpbGUobmVwaGV3X2ZuYW1lKQogICAgICAgICBpZiB2ZXJib3NlOiBwcmludCgiICBBZGRlZCBuZXBoZXcgbW9kdWxlOiIsIG5lcGhld19mbmFtZSkKIAogICAgIGRlZiBfY2hlY2tfcmVsYXRpdmVfaW1wb3J0cyhzZWxmLCBkZXB0aCwgcnVuX25hbWU9Tm9uZSk6CkBAIC0zOTUsNiArMzk0LDcgQEAKICAgICAgICAgICAgIG1zZyA9ICJjYW4ndCBmaW5kICdfX21haW5fXycgbW9kdWxlIGluICVyIiAlIHppcF9uYW1lCiAgICAgICAgICAgICBzZWxmLl9jaGVja19pbXBvcnRfZXJyb3IoemlwX25hbWUsIG1zZykKIAorICAgIEBub190cmFjaW5nCiAgICAgZGVmIHRlc3RfbWFpbl9yZWN1cnNpb25fZXJyb3Ioc2VsZik6CiAgICAgICAgIHdpdGggdGVtcF9kaXIoKSBhcyBzY3JpcHRfZGlyLCB0ZW1wX2RpcigpIGFzIGR1bW15X2RpcjoKICAgICAgICAgICAgIG1vZF9uYW1lID0gJ19fbWFpbl9fJwpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zYXgucHkgYi9MaWIvdGVzdC90ZXN0X3NheC5weQppbmRleCAxMjI1ZDZlLi44ZTAwODg5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3NheC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NheC5weQpAQCAtMjAsOCArMjAsOCBAQAogVEVTVF9YTUxGSUxFID0gZmluZGZpbGUoInRlc3QueG1sIiwgc3ViZGlyPSJ4bWx0ZXN0ZGF0YSIpCiBURVNUX1hNTEZJTEVfT1VUID0gZmluZGZpbGUoInRlc3QueG1sLm91dCIsIHN1YmRpcj0ieG1sdGVzdGRhdGEiKQogdHJ5OgotICAgIFRFU1RfWE1MRklMRS5lbmNvZGUoInV0ZjgiKQotICAgIFRFU1RfWE1MRklMRV9PVVQuZW5jb2RlKCJ1dGY4IikKKyAgICBURVNUX1hNTEZJTEUuZW5jb2RlKCJ1dGYtOCIpCisgICAgVEVTVF9YTUxGSUxFX09VVC5lbmNvZGUoInV0Zi04IikKIGV4Y2VwdCBVbmljb2RlRW5jb2RlRXJyb3I6CiAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoImZpbGVuYW1lIGlzIG5vdCBlbmNvZGFibGUgdG8gdXRmOCIpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfc2NoZWQucHkgYi9MaWIvdGVzdC90ZXN0X3NjaGVkLnB5CmluZGV4IDkxYjhmMGMuLjUwYWRhNTIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc2NoZWQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9zY2hlZC5weQpAQCAtNjMsMTUgKzYzLDM5IEBACiAKICAgICBkZWYgdGVzdF9xdWV1ZShzZWxmKToKICAgICAgICAgbCA9IFtdCi0gICAgICAgIGV2ZW50cyA9IFtdCiAgICAgICAgIGZ1biA9IGxhbWJkYSB4OiBsLmFwcGVuZCh4KQogICAgICAgICBzY2hlZHVsZXIgPSBzY2hlZC5zY2hlZHVsZXIodGltZS50aW1lLCB0aW1lLnNsZWVwKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNjaGVkdWxlci5fcXVldWUsIFtdKQotICAgICAgICBmb3IgeCBpbiBbMC4wNSwgMC4wNCwgMC4wMywgMC4wMiwgMC4wMV06Ci0gICAgICAgICAgICBldmVudHMuYXBwZW5kKHNjaGVkdWxlci5lbnRlcmFicyh4LCAxLCBmdW4sICh4LCkpKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNjaGVkdWxlci5fcXVldWUuc29ydCgpLCBldmVudHMuc29ydCgpKQorICAgICAgICBub3cgPSB0aW1lLnRpbWUoKQorICAgICAgICBlNSA9IHNjaGVkdWxlci5lbnRlcmFicyhub3cgKyAwLjA1LCAxLCBmdW4pCisgICAgICAgIGUxID0gc2NoZWR1bGVyLmVudGVyYWJzKG5vdyArIDAuMDEsIDEsIGZ1bikKKyAgICAgICAgZTIgPSBzY2hlZHVsZXIuZW50ZXJhYnMobm93ICsgMC4wMiwgMSwgZnVuKQorICAgICAgICBlNCA9IHNjaGVkdWxlci5lbnRlcmFicyhub3cgKyAwLjA0LCAxLCBmdW4pCisgICAgICAgIGUzID0gc2NoZWR1bGVyLmVudGVyYWJzKG5vdyArIDAuMDMsIDEsIGZ1bikKKyAgICAgICAgIyBxdWV1ZSBwcm9wZXJ0eSBpcyBzdXBwb3NlZCB0byByZXR1cm4gYW4gb3JkZXIgbGlzdCBvZgorICAgICAgICAjIHVwY29taW5nIGV2ZW50cworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3Qoc2NoZWR1bGVyLnF1ZXVlKSwgW2UxLCBlMiwgZTMsIGU0LCBlNV0pCisKKyAgICBkZWYgdGVzdF9hcmdzX2t3YXJncyhzZWxmKToKKyAgICAgICAgZmxhZyA9IFtdCisKKyAgICAgICAgZGVmIGZ1bigqYSwgKipiKToKKyAgICAgICAgICAgIGZsYWcuYXBwZW5kKE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGEsICgxLDIsMykpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIsIHsiZm9vIjoxfSkKKworICAgICAgICBzY2hlZHVsZXIgPSBzY2hlZC5zY2hlZHVsZXIodGltZS50aW1lLCB0aW1lLnNsZWVwKQorICAgICAgICB6ID0gc2NoZWR1bGVyLmVudGVyYWJzKDAuMDEsIDEsIGZ1biwgYXJndW1lbnQ9KDEsMiwzKSwga3dhcmdzPXsiZm9vIjoxfSkKICAgICAgICAgc2NoZWR1bGVyLnJ1bigpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2NoZWR1bGVyLl9xdWV1ZSwgW10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmxhZywgW05vbmVdKQorCisgICAgZGVmIHRlc3RfcnVuX25vbl9ibG9ja2luZyhzZWxmKToKKyAgICAgICAgbCA9IFtdCisgICAgICAgIGZ1biA9IGxhbWJkYSB4OiBsLmFwcGVuZCh4KQorICAgICAgICBzY2hlZHVsZXIgPSBzY2hlZC5zY2hlZHVsZXIodGltZS50aW1lLCB0aW1lLnNsZWVwKQorICAgICAgICBmb3IgeCBpbiBbMTAsIDksIDgsIDcsIDZdOgorICAgICAgICAgICAgc2NoZWR1bGVyLmVudGVyKHgsIDEsIGZ1biwgKHgsKSkKKyAgICAgICAgc2NoZWR1bGVyLnJ1bihibG9ja2luZz1GYWxzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsLCBbXSkKIAogCiBkZWYgdGVzdF9tYWluKCk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3Njb3BlLnB5IGIvTGliL3Rlc3QvdGVzdF9zY29wZS5weQppbmRleCBmYmM4N2FhLi4xMjlhMThhIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3Njb3BlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc2NvcGUucHkKQEAgLTEsNSArMSw1IEBACiBpbXBvcnQgdW5pdHRlc3QKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBjaGVja19zeW50YXhfZXJyb3IsIHJ1bl91bml0dGVzdAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGNoZWNrX3N5bnRheF9lcnJvciwgY3B5dGhvbl9vbmx5LCBydW5fdW5pdHRlc3QKIAogCiBjbGFzcyBTY29wZVRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKQEAgLTQ5NiwyMyArNDk2LDIyIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oIngiLCB2YXJuYW1lcykKICAgICAgICAgc2VsZi5hc3NlcnRJbigieSIsIHZhcm5hbWVzKQogCisgICAgQGNweXRob25fb25seQogICAgIGRlZiB0ZXN0TG9jYWxzQ2xhc3NfV2l0aFRyYWNlKHNlbGYpOgogICAgICAgICAjIElzc3VlMjM3Mjg6IGFmdGVyIHRoZSB0cmFjZSBmdW5jdGlvbiByZXR1cm5zLCB0aGUgbG9jYWxzKCkKICAgICAgICAgIyBkaWN0aW9uYXJ5IGlzIHVzZWQgdG8gdXBkYXRlIGFsbCB2YXJpYWJsZXMsIHRoaXMgdXNlZCB0bwogICAgICAgICAjIGluY2x1ZGUgZnJlZSB2YXJpYWJsZXMuIEJ1dCBpbiBjbGFzcyBzdGF0ZW1lbnRzLCBmcmVlCiAgICAgICAgICMgdmFyaWFibGVzIGFyZSBub3QgaW5zZXJ0ZWQuLi4KICAgICAgICAgaW1wb3J0IHN5cworICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnNldHRyYWNlLCBzeXMuZ2V0dHJhY2UoKSkKICAgICAgICAgc3lzLnNldHRyYWNlKGxhbWJkYSBhLGIsYzpOb25lKQotICAgICAgICB0cnk6Ci0gICAgICAgICAgICB4ID0gMTIKKyAgICAgICAgeCA9IDEyCiAKLSAgICAgICAgICAgIGNsYXNzIEM6Ci0gICAgICAgICAgICAgICAgZGVmIGYoc2VsZik6Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiB4CisgICAgICAgIGNsYXNzIEM6CisgICAgICAgICAgICBkZWYgZihzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4geAogCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHgsIDEyKSAjIFVzZWQgdG8gcmFpc2UgVW5ib3VuZExvY2FsRXJyb3IKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHN5cy5zZXR0cmFjZShOb25lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHgsIDEyKSAjIFVzZWQgdG8gcmFpc2UgVW5ib3VuZExvY2FsRXJyb3IKIAogICAgIGRlZiB0ZXN0Qm91bmRBbmRGcmVlKHNlbGYpOgogICAgICAgICAjIHZhciBpcyBib3VuZCBhbmQgZnJlZSBpbiBjbGFzcwpAQCAtNTI3LDYgKzUyNiw3IEBACiAgICAgICAgIGluc3QgPSBmKDMpKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbnN0LmEsIGluc3QubSgpKQogCisgICAgQGNweXRob25fb25seQogICAgIGRlZiB0ZXN0SW50ZXJhY3Rpb25XaXRoVHJhY2VGdW5jKHNlbGYpOgogCiAgICAgICAgIGltcG9ydCBzeXMKQEAgLTU0Myw2ICs1NDMsNyBAQAogICAgICAgICBjbGFzcyBUZXN0Q2xhc3M6CiAgICAgICAgICAgICBwYXNzCiAKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5zZXR0cmFjZSwgc3lzLmdldHRyYWNlKCkpCiAgICAgICAgIHN5cy5zZXR0cmFjZSh0cmFjZXIpCiAgICAgICAgIGFkYXB0Z2V0dGVyKCJmb28iLCBUZXN0Q2xhc3MsICgxLCAiIikpCiAgICAgICAgIHN5cy5zZXR0cmFjZShOb25lKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zZWxlY3QucHkgYi9MaWIvdGVzdC90ZXN0X3NlbGVjdC5weQppbmRleCBmZTkyZjQ1Li4zMTQ0YzU0IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3NlbGVjdC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NlbGVjdC5weQpAQCAtMSw4ICsxLDkgQEAKLWZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAotaW1wb3J0IHVuaXR0ZXN0Ci1pbXBvcnQgc2VsZWN0CitpbXBvcnQgZXJybm8KIGltcG9ydCBvcworaW1wb3J0IHNlbGVjdAogaW1wb3J0IHN5cworaW1wb3J0IHVuaXR0ZXN0Citmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIAogQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm1bOjNdIGluICgnd2luJywgJ29zMicsICdyaXNjb3MnKSwKICAgICAgICAgICAgICAgICAgImNhbid0IGVhc2lseSB0ZXN0IG9uIHRoaXMgc3lzdGVtIikKQEAgLTIwLDYgKzIxLDIxIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZWN0LnNlbGVjdCwgW3NlbGYuTm9wZSgpXSwgW10sIFtdKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGVjdC5zZWxlY3QsIFtzZWxmLkFsbW9zdCgpXSwgW10sIFtdKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGVjdC5zZWxlY3QsIFtdLCBbXSwgW10sICJub3QgYSBudW1iZXIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzZWxlY3Quc2VsZWN0LCBbXSwgW10sIFtdLCAtMSkKKworICAgICMgSXNzdWUgIzEyMzY3OiBodHRwOi8vd3d3LmZyZWVic2Qub3JnL2NnaS9xdWVyeS1wci5jZ2k/cHI9a2Vybi8xNTU2MDYKKyAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdmcmVlYnNkJyksCisgICAgICAgICAgICAgICAgICAgICAnc2tpcCBiZWNhdXNlIG9mIGEgRnJlZUJTRCBidWc6IGtlcm4vMTU1NjA2JykKKyAgICBkZWYgdGVzdF9lcnJubyhzZWxmKToKKyAgICAgICAgd2l0aCBvcGVuKF9fZmlsZV9fLCAncmInKSBhcyBmcDoKKyAgICAgICAgICAgIGZkID0gZnAuZmlsZW5vKCkKKyAgICAgICAgICAgIGZwLmNsb3NlKCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtmZF0sIFtdLCBbXSwgMCkKKyAgICAgICAgICAgIGV4Y2VwdCBzZWxlY3QuZXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXJyLmVycm5vLCBlcnJuby5FQkFERikKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJleGNlcHRpb24gbm90IHJhaXNlZCIpCiAKICAgICBkZWYgdGVzdF9yZXR1cm5lZF9saXN0X2lkZW50aXR5KHNlbGYpOgogICAgICAgICAjIFNlZSBpc3N1ZSAjODMyOQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zaGVsdmUucHkgYi9MaWIvdGVzdC90ZXN0X3NoZWx2ZS5weQppbmRleCAzZTczZjUyLi4xM2MxMjY1IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3NoZWx2ZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NoZWx2ZS5weQpAQCAtMiw3ICsyLDcgQEAKIGltcG9ydCBzaGVsdmUKIGltcG9ydCBnbG9iCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKLWZyb20gY29sbGVjdGlvbnMgaW1wb3J0IE11dGFibGVNYXBwaW5nCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgTXV0YWJsZU1hcHBpbmcKIGZyb20gdGVzdC50ZXN0X2RibSBpbXBvcnQgZGJtX2l0ZXJhdG9yCiAKIGRlZiBMMShzKToKQEAgLTEyOSw4ICsxMjksOCBAQAogICAgICAgICBzaGVsdmUuU2hlbGYoZClba2V5XSA9IFsxXQogICAgICAgICBzZWxmLmFzc2VydEluKGtleS5lbmNvZGUoJ3V0Zi04JyksIGQpCiAgICAgICAgICMgYnV0IGEgZGlmZmVyZW50IG9uZSBjYW4gYmUgZ2l2ZW4KLSAgICAgICAgc2hlbHZlLlNoZWxmKGQsIGtleWVuY29kaW5nPSdsYXRpbjEnKVtrZXldID0gWzFdCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oa2V5LmVuY29kZSgnbGF0aW4xJyksIGQpCisgICAgICAgIHNoZWx2ZS5TaGVsZihkLCBrZXllbmNvZGluZz0nbGF0aW4tMScpW2tleV0gPSBbMV0KKyAgICAgICAgc2VsZi5hc3NlcnRJbihrZXkuZW5jb2RlKCdsYXRpbi0xJyksIGQpCiAgICAgICAgICMgd2l0aCBhbGwgY29uc2VxdWVuY2VzCiAgICAgICAgIHMgPSBzaGVsdmUuU2hlbGYoZCwga2V5ZW5jb2Rpbmc9J2FzY2lpJykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZUVuY29kZUVycm9yLCBzLl9fc2V0aXRlbV9fLCBrZXksIFsxXSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfc2hsZXgucHkgYi9MaWIvdGVzdC90ZXN0X3NobGV4LnB5CmluZGV4IDI1ZTRiNmQuLmQ0NDYzZjMwIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3NobGV4LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc2hsZXgucHkKQEAgLTEsNiArMSw3IEBACi1pbXBvcnQgdW5pdHRlc3QKLWltcG9ydCBvcywgc3lzLCBpbworaW1wb3J0IGlvCiBpbXBvcnQgc2hsZXgKK2ltcG9ydCBzdHJpbmcKK2ltcG9ydCB1bml0dGVzdAogCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIApAQCAtMTczLDYgKzE3NCwyMiBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJXM6ICVzICE9ICVzIiAlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZWxmLmRhdGFbaV1bMF0sIGwsIHNlbGYuZGF0YVtpXVsxOl0pKQogCisgICAgZGVmIHRlc3RRdW90ZShzZWxmKToKKyAgICAgICAgc2FmZXVucXVvdGVkID0gc3RyaW5nLmFzY2lpX2xldHRlcnMgKyBzdHJpbmcuZGlnaXRzICsgJ0AlXy0rPTosLi8nCisgICAgICAgIHVuaWNvZGVfc2FtcGxlID0gJ1x4ZTlceGUwXHhkZicgICMgZSArIGFjdXRlIGFjY2VudCwgYSArIGdyYXZlLCBzaGFycCBzCisgICAgICAgIHVuc2FmZSA9ICciYCRcXCEnICsgdW5pY29kZV9zYW1wbGUKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNobGV4LnF1b3RlKCcnKSwgIicnIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaGxleC5xdW90ZShzYWZldW5xdW90ZWQpLCBzYWZldW5xdW90ZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2hsZXgucXVvdGUoJ3Rlc3QgZmlsZSBuYW1lJyksICIndGVzdCBmaWxlIG5hbWUnIikKKyAgICAgICAgZm9yIHUgaW4gdW5zYWZlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaGxleC5xdW90ZSgndGVzdCVzbmFtZScgJSB1KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIid0ZXN0JXNuYW1lJyIgJSB1KQorICAgICAgICBmb3IgdSBpbiB1bnNhZmU6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNobGV4LnF1b3RlKCJ0ZXN0JXMnbmFtZSciICUgdSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIndGVzdCVzJ1wiJ1wiJ25hbWUnXCInXCInJyIgJSB1KQorCisKICMgQWxsb3cgdGhpcyB0ZXN0IHRvIGJlIHVzZWQgd2l0aCBvbGQgc2hsZXgucHkKIGlmIG5vdCBnZXRhdHRyKHNobGV4LCAic3BsaXQiLCBOb25lKToKICAgICBmb3IgbWV0aG5hbWUgaW4gZGlyKFNobGV4VGVzdCk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3NodXRpbC5weSBiL0xpYi90ZXN0L3Rlc3Rfc2h1dGlsLnB5CmluZGV4IGUyMzEwZTIuLjZjOTUxNWUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc2h1dGlsLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc2h1dGlsLnB5CkBAIC03LDcgKzcsOSBAQAogaW1wb3J0IHN0YXQKIGltcG9ydCBvcwogaW1wb3J0IG9zLnBhdGgKK2ltcG9ydCBlcnJubwogaW1wb3J0IGZ1bmN0b29scworaW1wb3J0IHN1YnByb2Nlc3MKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTgogZnJvbSBvcy5wYXRoIGltcG9ydCBzcGxpdGRyaXZlCkBAIC0yMSw3ICsyMyw3IEBACiBpbXBvcnQgd2FybmluZ3MKIAogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0Ci1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVEVTVEZOLCBjaGVja193YXJuaW5ncywgY2FwdHVyZWRfc3Rkb3V0Citmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVEVTVEZOLCBjaGVja193YXJuaW5ncywgY2FwdHVyZWRfc3Rkb3V0LCByZXF1aXJlc196bGliCiAKIHRyeToKICAgICBpbXBvcnQgYnoyCkBAIC0zOSwxMSArNDEsNiBAQAogICAgIFVJRF9HSURfU1VQUE9SVCA9IEZhbHNlCiAKIHRyeToKLSAgICBpbXBvcnQgemxpYgotZXhjZXB0IEltcG9ydEVycm9yOgotICAgIHpsaWIgPSBOb25lCi0KLXRyeToKICAgICBpbXBvcnQgemlwZmlsZQogICAgIFpJUF9TVVBQT1JUID0gVHJ1ZQogZXhjZXB0IEltcG9ydEVycm9yOgpAQCAtNTEsNyArNDgsNyBAQAogCiBkZWYgX2Zha2VfcmVuYW1lKCphcmdzLCAqKmt3YXJncyk6CiAgICAgIyBQcmV0ZW5kIHRoZSBkZXN0aW5hdGlvbiBwYXRoIGlzIG9uIGEgZGlmZmVyZW50IGZpbGVzeXN0ZW0uCi0gICAgcmFpc2UgT1NFcnJvcigpCisgICAgcmFpc2UgT1NFcnJvcihnZXRhdHRyKGVycm5vLCAnRVhERVYnLCAxOCksICJJbnZhbGlkIGNyb3NzLWRldmljZSBsaW5rIikKIAogZGVmIG1vY2tfcmVuYW1lKGZ1bmMpOgogICAgIEBmdW5jdG9vbHMud3JhcHMoZnVuYykKQEAgLTY0LDYgKzYxLDMxIEBACiAgICAgICAgICAgICBvcy5yZW5hbWUgPSBidWlsdGluX3JlbmFtZQogICAgIHJldHVybiB3cmFwCiAKK2RlZiB3cml0ZV9maWxlKHBhdGgsIGNvbnRlbnQsIGJpbmFyeT1GYWxzZSk6CisgICAgIiIiV3JpdGUgKmNvbnRlbnQqIHRvIGEgZmlsZSBsb2NhdGVkIGF0ICpwYXRoKi4KKworICAgIElmICpwYXRoKiBpcyBhIHR1cGxlIGluc3RlYWQgb2YgYSBzdHJpbmcsIG9zLnBhdGguam9pbiB3aWxsIGJlIHVzZWQgdG8KKyAgICBtYWtlIGEgcGF0aC4gIElmICpiaW5hcnkqIGlzIHRydWUsIHRoZSBmaWxlIHdpbGwgYmUgb3BlbmVkIGluIGJpbmFyeQorICAgIG1vZGUuCisgICAgIiIiCisgICAgaWYgaXNpbnN0YW5jZShwYXRoLCB0dXBsZSk6CisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oKnBhdGgpCisgICAgd2l0aCBvcGVuKHBhdGgsICd3YicgaWYgYmluYXJ5IGVsc2UgJ3cnKSBhcyBmcDoKKyAgICAgICAgZnAud3JpdGUoY29udGVudCkKKworZGVmIHJlYWRfZmlsZShwYXRoLCBiaW5hcnk9RmFsc2UpOgorICAgICIiIlJldHVybiBjb250ZW50cyBmcm9tIGEgZmlsZSBsb2NhdGVkIGF0ICpwYXRoKi4KKworICAgIElmICpwYXRoKiBpcyBhIHR1cGxlIGluc3RlYWQgb2YgYSBzdHJpbmcsIG9zLnBhdGguam9pbiB3aWxsIGJlIHVzZWQgdG8KKyAgICBtYWtlIGEgcGF0aC4gIElmICpiaW5hcnkqIGlzIHRydWUsIHRoZSBmaWxlIHdpbGwgYmUgb3BlbmVkIGluIGJpbmFyeQorICAgIG1vZGUuCisgICAgIiIiCisgICAgaWYgaXNpbnN0YW5jZShwYXRoLCB0dXBsZSk6CisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oKnBhdGgpCisgICAgd2l0aCBvcGVuKHBhdGgsICdyYicgaWYgYmluYXJ5IGVsc2UgJ3InKSBhcyBmcDoKKyAgICAgICAgcmV0dXJuIGZwLnJlYWQoKQorCisKIGNsYXNzIFRlc3RTaHV0aWwodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHNldFVwKHNlbGYpOgpAQCAtNzYsMTkgKzk4LDYgQEAKICAgICAgICAgICAgIGQgPSBzZWxmLnRlbXBkaXJzLnBvcCgpCiAgICAgICAgICAgICBzaHV0aWwucm10cmVlKGQsIG9zLm5hbWUgaW4gKCdudCcsICdjeWd3aW4nKSkKIAotICAgIGRlZiB3cml0ZV9maWxlKHNlbGYsIHBhdGgsIGNvbnRlbnQ9J3h4eCcpOgotICAgICAgICAiIiJXcml0ZXMgYSBmaWxlIGluIHRoZSBnaXZlbiBwYXRoLgotCi0KLSAgICAgICAgcGF0aCBjYW4gYmUgYSBzdHJpbmcgb3IgYSBzZXF1ZW5jZS4KLSAgICAgICAgIiIiCi0gICAgICAgIGlmIGlzaW5zdGFuY2UocGF0aCwgKGxpc3QsIHR1cGxlKSk6Ci0gICAgICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKCpwYXRoKQotICAgICAgICBmID0gb3BlbihwYXRoLCAndycpCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIGYud3JpdGUoY29udGVudCkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIGYuY2xvc2UoKQogCiAgICAgZGVmIG1rZHRlbXAoc2VsZik6CiAgICAgICAgICIiIkNyZWF0ZSBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgdGhhdCB3aWxsIGJlIGNsZWFuZWQgdXAuCkBAIC0xMTIsOCArMTIxLDcgQEAKICAgICAgICAgICAgIHNlbGYuZXJyb3JTdGF0ZSA9IDAKICAgICAgICAgICAgIG9zLm1rZGlyKFRFU1RGTikKICAgICAgICAgICAgIHNlbGYuY2hpbGRwYXRoID0gb3MucGF0aC5qb2luKFRFU1RGTiwgJ2EnKQotICAgICAgICAgICAgZiA9IG9wZW4oc2VsZi5jaGlsZHBhdGgsICd3JykKLSAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICAgICAgc3VwcG9ydC5jcmVhdGVfZW1wdHlfZmlsZShzZWxmLmNoaWxkcGF0aCkKICAgICAgICAgICAgIG9sZF9kaXJfbW9kZSA9IG9zLnN0YXQoVEVTVEZOKS5zdF9tb2RlCiAgICAgICAgICAgICBvbGRfY2hpbGRfbW9kZSA9IG9zLnN0YXQoc2VsZi5jaGlsZHBhdGgpLnN0X21vZGUKICAgICAgICAgICAgICMgTWFrZSB1bndyaXRhYmxlLgpAQCAtMTU4LDg0ICsxNjYsMjY4IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNzdWJjbGFzcyhleGNbMF0sIE9TRXJyb3IpKQogICAgICAgICAgICAgc2VsZi5lcnJvclN0YXRlID0gMgogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ2NobW9kJyksICdyZXF1aXJlcyBvcy5jaG1vZCcpCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIGRlZiB0ZXN0X2NvcHltb2RlX2ZvbGxvd19zeW1saW5rcyhzZWxmKToKKyAgICAgICAgdG1wX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNyYyA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnZm9vJykKKyAgICAgICAgZHN0ID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdiYXInKQorICAgICAgICBzcmNfbGluayA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnYmF6JykKKyAgICAgICAgZHN0X2xpbmsgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ3F1dXgnKQorICAgICAgICB3cml0ZV9maWxlKHNyYywgJ2ZvbycpCisgICAgICAgIHdyaXRlX2ZpbGUoZHN0LCAnZm9vJykKKyAgICAgICAgb3Muc3ltbGluayhzcmMsIHNyY19saW5rKQorICAgICAgICBvcy5zeW1saW5rKGRzdCwgZHN0X2xpbmspCisgICAgICAgIG9zLmNobW9kKHNyYywgc3RhdC5TX0lSV1hVfHN0YXQuU19JUldYRykKKyAgICAgICAgIyBmaWxlIHRvIGZpbGUKKyAgICAgICAgb3MuY2htb2QoZHN0LCBzdGF0LlNfSVJXWE8pCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwob3Muc3RhdChzcmMpLnN0X21vZGUsIG9zLnN0YXQoZHN0KS5zdF9tb2RlKQorICAgICAgICBzaHV0aWwuY29weW1vZGUoc3JjLCBkc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3Muc3RhdChzcmMpLnN0X21vZGUsIG9zLnN0YXQoZHN0KS5zdF9tb2RlKQorICAgICAgICAjIGZvbGxvdyBzcmMgbGluaworICAgICAgICBvcy5jaG1vZChkc3QsIHN0YXQuU19JUldYTykKKyAgICAgICAgc2h1dGlsLmNvcHltb2RlKHNyY19saW5rLCBkc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3Muc3RhdChzcmMpLnN0X21vZGUsIG9zLnN0YXQoZHN0KS5zdF9tb2RlKQorICAgICAgICAjIGZvbGxvdyBkc3QgbGluaworICAgICAgICBvcy5jaG1vZChkc3QsIHN0YXQuU19JUldYTykKKyAgICAgICAgc2h1dGlsLmNvcHltb2RlKHNyYywgZHN0X2xpbmspCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3Muc3RhdChzcmMpLnN0X21vZGUsIG9zLnN0YXQoZHN0KS5zdF9tb2RlKQorICAgICAgICAjIGZvbGxvdyBib3RoIGxpbmtzCisgICAgICAgIG9zLmNobW9kKGRzdCwgc3RhdC5TX0lSV1hPKQorICAgICAgICBzaHV0aWwuY29weW1vZGUoc3JjX2xpbmssIGRzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5zdGF0KHNyYykuc3RfbW9kZSwgb3Muc3RhdChkc3QpLnN0X21vZGUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnbGNobW9kJyksICdyZXF1aXJlcyBvcy5sY2htb2QnKQorICAgIEBzdXBwb3J0LnNraXBfdW5sZXNzX3N5bWxpbmsKKyAgICBkZWYgdGVzdF9jb3B5bW9kZV9zeW1saW5rX3RvX3N5bWxpbmsoc2VsZik6CisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzcmMgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2ZvbycpCisgICAgICAgIGRzdCA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnYmFyJykKKyAgICAgICAgc3JjX2xpbmsgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2JheicpCisgICAgICAgIGRzdF9saW5rID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdxdXV4JykKKyAgICAgICAgd3JpdGVfZmlsZShzcmMsICdmb28nKQorICAgICAgICB3cml0ZV9maWxlKGRzdCwgJ2ZvbycpCisgICAgICAgIG9zLnN5bWxpbmsoc3JjLCBzcmNfbGluaykKKyAgICAgICAgb3Muc3ltbGluayhkc3QsIGRzdF9saW5rKQorICAgICAgICBvcy5jaG1vZChzcmMsIHN0YXQuU19JUldYVXxzdGF0LlNfSVJXWEcpCisgICAgICAgIG9zLmNobW9kKGRzdCwgc3RhdC5TX0lSV1hVKQorICAgICAgICBvcy5sY2htb2Qoc3JjX2xpbmssIHN0YXQuU19JUldYT3xzdGF0LlNfSVJXWEcpCisgICAgICAgICMgbGluayB0byBsaW5rCisgICAgICAgIG9zLmxjaG1vZChkc3RfbGluaywgc3RhdC5TX0lSV1hPKQorICAgICAgICBzaHV0aWwuY29weW1vZGUoc3JjX2xpbmssIGRzdF9saW5rLCBzeW1saW5rcz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLmxzdGF0KHNyY19saW5rKS5zdF9tb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmxzdGF0KGRzdF9saW5rKS5zdF9tb2RlKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKG9zLnN0YXQoc3JjKS5zdF9tb2RlLCBvcy5zdGF0KGRzdCkuc3RfbW9kZSkKKyAgICAgICAgIyBzcmMgbGluayAtIHVzZSBjaG1vZAorICAgICAgICBvcy5sY2htb2QoZHN0X2xpbmssIHN0YXQuU19JUldYTykKKyAgICAgICAgc2h1dGlsLmNvcHltb2RlKHNyY19saW5rLCBkc3QsIHN5bWxpbmtzPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3Muc3RhdChzcmMpLnN0X21vZGUsIG9zLnN0YXQoZHN0KS5zdF9tb2RlKQorICAgICAgICAjIGRzdCBsaW5rIC0gdXNlIGNobW9kCisgICAgICAgIG9zLmxjaG1vZChkc3RfbGluaywgc3RhdC5TX0lSV1hPKQorICAgICAgICBzaHV0aWwuY29weW1vZGUoc3JjLCBkc3RfbGluaywgc3ltbGlua3M9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5zdGF0KHNyYykuc3RfbW9kZSwgb3Muc3RhdChkc3QpLnN0X21vZGUpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKGhhc2F0dHIob3MsICdsY2htb2QnKSwgJ3JlcXVpcmVzIG9zLmxjaG1vZCB0byBiZSBtaXNzaW5nJykKKyAgICBAc3VwcG9ydC5za2lwX3VubGVzc19zeW1saW5rCisgICAgZGVmIHRlc3RfY29weW1vZGVfc3ltbGlua190b19zeW1saW5rX3dvX2xjaG1vZChzZWxmKToKKyAgICAgICAgdG1wX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNyYyA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnZm9vJykKKyAgICAgICAgZHN0ID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdiYXInKQorICAgICAgICBzcmNfbGluayA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnYmF6JykKKyAgICAgICAgZHN0X2xpbmsgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ3F1dXgnKQorICAgICAgICB3cml0ZV9maWxlKHNyYywgJ2ZvbycpCisgICAgICAgIHdyaXRlX2ZpbGUoZHN0LCAnZm9vJykKKyAgICAgICAgb3Muc3ltbGluayhzcmMsIHNyY19saW5rKQorICAgICAgICBvcy5zeW1saW5rKGRzdCwgZHN0X2xpbmspCisgICAgICAgIHNodXRpbC5jb3B5bW9kZShzcmNfbGluaywgZHN0X2xpbmssIHN5bWxpbmtzPVRydWUpICAjIHNpbGVudCBmYWlsCisKKyAgICBAc3VwcG9ydC5za2lwX3VubGVzc19zeW1saW5rCisgICAgZGVmIHRlc3RfY29weXN0YXRfc3ltbGlua3Moc2VsZik6CisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzcmMgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2ZvbycpCisgICAgICAgIGRzdCA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnYmFyJykKKyAgICAgICAgc3JjX2xpbmsgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2JheicpCisgICAgICAgIGRzdF9saW5rID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdxdXgnKQorICAgICAgICB3cml0ZV9maWxlKHNyYywgJ2ZvbycpCisgICAgICAgIHNyY19zdGF0ID0gb3Muc3RhdChzcmMpCisgICAgICAgIG9zLnV0aW1lKHNyYywgKHNyY19zdGF0LnN0X2F0aW1lLAorICAgICAgICAgICAgICAgICAgICAgICBzcmNfc3RhdC5zdF9tdGltZSAtIDQyLjApKSAgIyBlbnN1cmUgZGlmZmVyZW50IG10aW1lcworICAgICAgICB3cml0ZV9maWxlKGRzdCwgJ2JhcicpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwob3Muc3RhdChzcmMpLnN0X210aW1lLCBvcy5zdGF0KGRzdCkuc3RfbXRpbWUpCisgICAgICAgIG9zLnN5bWxpbmsoc3JjLCBzcmNfbGluaykKKyAgICAgICAgb3Muc3ltbGluayhkc3QsIGRzdF9saW5rKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJyk6CisgICAgICAgICAgICBvcy5sY2htb2Qoc3JjX2xpbmssIHN0YXQuU19JUldYTykKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaGZsYWdzJykgYW5kIGhhc2F0dHIoc3RhdCwgJ1VGX05PRFVNUCcpOgorICAgICAgICAgICAgb3MubGNoZmxhZ3Moc3JjX2xpbmssIHN0YXQuVUZfTk9EVU1QKQorICAgICAgICBzcmNfbGlua19zdGF0ID0gb3MubHN0YXQoc3JjX2xpbmspCisgICAgICAgICMgZm9sbG93CisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsY2htb2QnKToKKyAgICAgICAgICAgIHNodXRpbC5jb3B5c3RhdChzcmNfbGluaywgZHN0X2xpbmssIHN5bWxpbmtzPUZhbHNlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChzcmNfbGlua19zdGF0LnN0X21vZGUsIG9zLnN0YXQoZHN0KS5zdF9tb2RlKQorICAgICAgICAjIGRvbid0IGZvbGxvdworICAgICAgICBzaHV0aWwuY29weXN0YXQoc3JjX2xpbmssIGRzdF9saW5rLCBzeW1saW5rcz1UcnVlKQorICAgICAgICBkc3RfbGlua19zdGF0ID0gb3MubHN0YXQoZHN0X2xpbmspCisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsdXRpbWVzJyk6CisgICAgICAgICAgICBmb3IgYXR0ciBpbiAnc3RfYXRpbWUnLCAnc3RfbXRpbWUnOgorICAgICAgICAgICAgICAgICMgVGhlIG1vZGlmaWNhdGlvbiB0aW1lcyBtYXkgYmUgdHJ1bmNhdGVkIGluIHRoZSBuZXcgZmlsZS4KKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChnZXRhdHRyKHNyY19saW5rX3N0YXQsIGF0dHIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldGF0dHIoZHN0X2xpbmtfc3RhdCwgYXR0cikgKyAxKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNyY19saW5rX3N0YXQuc3RfbW9kZSwgZHN0X2xpbmtfc3RhdC5zdF9tb2RlKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNoZmxhZ3MnKSBhbmQgaGFzYXR0cihzcmNfbGlua19zdGF0LCAnc3RfZmxhZ3MnKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3JjX2xpbmtfc3RhdC5zdF9mbGFncywgZHN0X2xpbmtfc3RhdC5zdF9mbGFncykKKyAgICAgICAgIyB0ZWxsIHRvIGZvbGxvdyBidXQgZHN0IGlzIG5vdCBhIGxpbmsKKyAgICAgICAgc2h1dGlsLmNvcHlzdGF0KHNyY19saW5rLCBkc3QsIHN5bWxpbmtzPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShhYnMob3Muc3RhdChzcmMpLnN0X210aW1lIC0gb3Muc3RhdChkc3QpLnN0X210aW1lKSA8CisgICAgICAgICAgICAgICAgICAgICAgICAwMDAwMC4xKQorCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIGRlZiB0ZXN0X2NvcHlfc3ltbGlua3Moc2VsZik6CisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzcmMgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2ZvbycpCisgICAgICAgIGRzdCA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnYmFyJykKKyAgICAgICAgc3JjX2xpbmsgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2JheicpCisgICAgICAgIHdyaXRlX2ZpbGUoc3JjLCAnZm9vJykKKyAgICAgICAgb3Muc3ltbGluayhzcmMsIHNyY19saW5rKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJyk6CisgICAgICAgICAgICBvcy5sY2htb2Qoc3JjX2xpbmssIHN0YXQuU19JUldYVSB8IHN0YXQuU19JUldYTykKKyAgICAgICAgIyBkb24ndCBmb2xsb3cKKyAgICAgICAgc2h1dGlsLmNvcHkoc3JjX2xpbmssIGRzdCwgc3ltbGlua3M9RmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5pc2xpbmsoZHN0KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWFkX2ZpbGUoc3JjKSwgcmVhZF9maWxlKGRzdCkpCisgICAgICAgIG9zLnJlbW92ZShkc3QpCisgICAgICAgICMgZm9sbG93CisgICAgICAgIHNodXRpbC5jb3B5KHNyY19saW5rLCBkc3QsIHN5bWxpbmtzPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzbGluayhkc3QpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnJlYWRsaW5rKGRzdCksIG9zLnJlYWRsaW5rKHNyY19saW5rKSkKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaG1vZCcpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5sc3RhdChzcmNfbGluaykuc3RfbW9kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MubHN0YXQoZHN0KS5zdF9tb2RlKQorCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIGRlZiB0ZXN0X2NvcHkyX3N5bWxpbmtzKHNlbGYpOgorICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc3JjID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdmb28nKQorICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2JhcicpCisgICAgICAgIHNyY19saW5rID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdiYXonKQorICAgICAgICB3cml0ZV9maWxlKHNyYywgJ2ZvbycpCisgICAgICAgIG9zLnN5bWxpbmsoc3JjLCBzcmNfbGluaykKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaG1vZCcpOgorICAgICAgICAgICAgb3MubGNobW9kKHNyY19saW5rLCBzdGF0LlNfSVJXWFUgfCBzdGF0LlNfSVJXWE8pCisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsY2hmbGFncycpIGFuZCBoYXNhdHRyKHN0YXQsICdVRl9OT0RVTVAnKToKKyAgICAgICAgICAgIG9zLmxjaGZsYWdzKHNyY19saW5rLCBzdGF0LlVGX05PRFVNUCkKKyAgICAgICAgc3JjX3N0YXQgPSBvcy5zdGF0KHNyYykKKyAgICAgICAgc3JjX2xpbmtfc3RhdCA9IG9zLmxzdGF0KHNyY19saW5rKQorICAgICAgICAjIGZvbGxvdworICAgICAgICBzaHV0aWwuY29weTIoc3JjX2xpbmssIGRzdCwgc3ltbGlua3M9RmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5pc2xpbmsoZHN0KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWFkX2ZpbGUoc3JjKSwgcmVhZF9maWxlKGRzdCkpCisgICAgICAgIG9zLnJlbW92ZShkc3QpCisgICAgICAgICMgZG9uJ3QgZm9sbG93CisgICAgICAgIHNodXRpbC5jb3B5MihzcmNfbGluaywgZHN0LCBzeW1saW5rcz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2xpbmsoZHN0KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5yZWFkbGluayhkc3QpLCBvcy5yZWFkbGluayhzcmNfbGluaykpCisgICAgICAgIGRzdF9zdGF0ID0gb3MubHN0YXQoZHN0KQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbHV0aW1lcycpOgorICAgICAgICAgICAgZm9yIGF0dHIgaW4gJ3N0X2F0aW1lJywgJ3N0X210aW1lJzoKKyAgICAgICAgICAgICAgICAjIFRoZSBtb2RpZmljYXRpb24gdGltZXMgbWF5IGJlIHRydW5jYXRlZCBpbiB0aGUgbmV3IGZpbGUuCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwoZ2V0YXR0cihzcmNfbGlua19zdGF0LCBhdHRyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRhdHRyKGRzdF9zdGF0LCBhdHRyKSArIDEpCisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsY2htb2QnKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3JjX2xpbmtfc3RhdC5zdF9tb2RlLCBkc3Rfc3RhdC5zdF9tb2RlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChzcmNfc3RhdC5zdF9tb2RlLCBkc3Rfc3RhdC5zdF9tb2RlKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNoZmxhZ3MnKSBhbmQgaGFzYXR0cihzcmNfbGlua19zdGF0LCAnc3RfZmxhZ3MnKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3JjX2xpbmtfc3RhdC5zdF9mbGFncywgZHN0X3N0YXQuc3RfZmxhZ3MpCisKKyAgICBAc3VwcG9ydC5za2lwX3VubGVzc19zeW1saW5rCisgICAgZGVmIHRlc3RfY29weWZpbGVfc3ltbGlua3Moc2VsZik6CisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzcmMgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ3NyYycpCisgICAgICAgIGRzdCA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnZHN0JykKKyAgICAgICAgZHN0X2xpbmsgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2RzdF9saW5rJykKKyAgICAgICAgbGluayA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnbGluaycpCisgICAgICAgIHdyaXRlX2ZpbGUoc3JjLCAnZm9vJykKKyAgICAgICAgb3Muc3ltbGluayhzcmMsIGxpbmspCisgICAgICAgICMgZG9uJ3QgZm9sbG93CisgICAgICAgIHNodXRpbC5jb3B5ZmlsZShsaW5rLCBkc3RfbGluaywgc3ltbGlua3M9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNsaW5rKGRzdF9saW5rKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5yZWFkbGluayhsaW5rKSwgb3MucmVhZGxpbmsoZHN0X2xpbmspKQorICAgICAgICAjIGZvbGxvdworICAgICAgICBzaHV0aWwuY29weWZpbGUobGluaywgZHN0KQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguaXNsaW5rKGRzdCkpCisKICAgICBkZWYgdGVzdF9ybXRyZWVfZG9udF9kZWxldGVfZmlsZShzZWxmKToKICAgICAgICAgIyBXaGVuIGNhbGxlZCBvbiBhIGZpbGUgaW5zdGVhZCBvZiBhIGRpcmVjdG9yeSwgZG9uJ3QgZGVsZXRlIGl0LgogICAgICAgICBoYW5kbGUsIHBhdGggPSB0ZW1wZmlsZS5ta3N0ZW1wKCkKLSAgICAgICAgb3MuZmRvcGVuKGhhbmRsZSkuY2xvc2UoKQorICAgICAgICBvcy5jbG9zZShoYW5kbGUpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHNodXRpbC5ybXRyZWUsIHBhdGgpCiAgICAgICAgIG9zLnJlbW92ZShwYXRoKQogCi0gICAgZGVmIF93cml0ZV9kYXRhKHNlbGYsIHBhdGgsIGRhdGEpOgotICAgICAgICBmID0gb3BlbihwYXRoLCAidyIpCi0gICAgICAgIGYud3JpdGUoZGF0YSkKLSAgICAgICAgZi5jbG9zZSgpCi0KICAgICBkZWYgdGVzdF9jb3B5dHJlZV9zaW1wbGUoc2VsZik6Ci0KLSAgICAgICAgZGVmIHJlYWRfZGF0YShwYXRoKToKLSAgICAgICAgICAgIGYgPSBvcGVuKHBhdGgpCi0gICAgICAgICAgICBkYXRhID0gZi5yZWFkKCkKLSAgICAgICAgICAgIGYuY2xvc2UoKQotICAgICAgICAgICAgcmV0dXJuIGRhdGEKLQogICAgICAgICBzcmNfZGlyID0gdGVtcGZpbGUubWtkdGVtcCgpCiAgICAgICAgIGRzdF9kaXIgPSBvcy5wYXRoLmpvaW4odGVtcGZpbGUubWtkdGVtcCgpLCAnZGVzdGluYXRpb24nKQotICAgICAgICBzZWxmLl93cml0ZV9kYXRhKG9zLnBhdGguam9pbihzcmNfZGlyLCAndGVzdC50eHQnKSwgJzEyMycpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzaHV0aWwucm10cmVlLCBzcmNfZGlyKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2h1dGlsLnJtdHJlZSwgb3MucGF0aC5kaXJuYW1lKGRzdF9kaXIpKQorICAgICAgICB3cml0ZV9maWxlKChzcmNfZGlyLCAndGVzdC50eHQnKSwgJzEyMycpCiAgICAgICAgIG9zLm1rZGlyKG9zLnBhdGguam9pbihzcmNfZGlyLCAndGVzdF9kaXInKSkKLSAgICAgICAgc2VsZi5fd3JpdGVfZGF0YShvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyJywgJ3Rlc3QudHh0JyksICc0NTYnKQorICAgICAgICB3cml0ZV9maWxlKChzcmNfZGlyLCAndGVzdF9kaXInLCAndGVzdC50eHQnKSwgJzQ1NicpCiAKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgc2h1dGlsLmNvcHl0cmVlKHNyY19kaXIsIGRzdF9kaXIpCi0gICAgICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2ZpbGUob3MucGF0aC5qb2luKGRzdF9kaXIsICd0ZXN0LnR4dCcpKSkKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZGlyKG9zLnBhdGguam9pbihkc3RfZGlyLCAndGVzdF9kaXInKSkpCi0gICAgICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2ZpbGUob3MucGF0aC5qb2luKGRzdF9kaXIsICd0ZXN0X2RpcicsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXN0LnR4dCcpKSkKLSAgICAgICAgICAgIGFjdHVhbCA9IHJlYWRfZGF0YShvcy5wYXRoLmpvaW4oZHN0X2RpciwgJ3Rlc3QudHh0JykpCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFjdHVhbCwgJzEyMycpCi0gICAgICAgICAgICBhY3R1YWwgPSByZWFkX2RhdGEob3MucGF0aC5qb2luKGRzdF9kaXIsICd0ZXN0X2RpcicsICd0ZXN0LnR4dCcpKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhY3R1YWwsICc0NTYnKQotICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgZm9yIHBhdGggaW4gKAotICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ3Rlc3QudHh0JyksCi0gICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihkc3RfZGlyLCAndGVzdC50eHQnKSwKLSAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5qb2luKHNyY19kaXIsICd0ZXN0X2RpcicsICd0ZXN0LnR4dCcpLAotICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyJywgJ3Rlc3QudHh0JyksCi0gICAgICAgICAgICAgICAgKToKLSAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhwYXRoKToKLSAgICAgICAgICAgICAgICAgICAgb3MucmVtb3ZlKHBhdGgpCi0gICAgICAgICAgICBmb3IgcGF0aCBpbiAoc3JjX2RpciwKLSAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5kaXJuYW1lKGRzdF9kaXIpCi0gICAgICAgICAgICAgICAgKToKLSAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhwYXRoKToKLSAgICAgICAgICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShwYXRoKQorICAgICAgICBzaHV0aWwuY29weXRyZWUoc3JjX2RpciwgZHN0X2RpcikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKG9zLnBhdGguam9pbihkc3RfZGlyLCAndGVzdC50eHQnKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZGlyKG9zLnBhdGguam9pbihkc3RfZGlyLCAndGVzdF9kaXInKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShvcy5wYXRoLmpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGVzdC50eHQnKSkpCisgICAgICAgIGFjdHVhbCA9IHJlYWRfZmlsZSgoZHN0X2RpciwgJ3Rlc3QudHh0JykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWN0dWFsLCAnMTIzJykKKyAgICAgICAgYWN0dWFsID0gcmVhZF9maWxlKChkc3RfZGlyLCAndGVzdF9kaXInLCAndGVzdC50eHQnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhY3R1YWwsICc0NTYnKQorCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIGRlZiB0ZXN0X2NvcHl0cmVlX3N5bWxpbmtzKHNlbGYpOgorICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc3JjX2RpciA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnc3JjJykKKyAgICAgICAgZHN0X2RpciA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnZHN0JykKKyAgICAgICAgc3ViX2RpciA9IG9zLnBhdGguam9pbihzcmNfZGlyLCAnc3ViJykKKyAgICAgICAgb3MubWtkaXIoc3JjX2RpcikKKyAgICAgICAgb3MubWtkaXIoc3ViX2RpcikKKyAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ2ZpbGUudHh0JyksICdmb28nKQorICAgICAgICBzcmNfbGluayA9IG9zLnBhdGguam9pbihzdWJfZGlyLCAnbGluaycpCisgICAgICAgIGRzdF9saW5rID0gb3MucGF0aC5qb2luKGRzdF9kaXIsICdzdWIvbGluaycpCisgICAgICAgIG9zLnN5bWxpbmsob3MucGF0aC5qb2luKHNyY19kaXIsICdmaWxlLnR4dCcpLAorICAgICAgICAgICAgICAgICAgIHNyY19saW5rKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJyk6CisgICAgICAgICAgICBvcy5sY2htb2Qoc3JjX2xpbmssIHN0YXQuU19JUldYVSB8IHN0YXQuU19JUldYTykKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaGZsYWdzJykgYW5kIGhhc2F0dHIoc3RhdCwgJ1VGX05PRFVNUCcpOgorICAgICAgICAgICAgb3MubGNoZmxhZ3Moc3JjX2xpbmssIHN0YXQuVUZfTk9EVU1QKQorICAgICAgICBzcmNfc3RhdCA9IG9zLmxzdGF0KHNyY19saW5rKQorICAgICAgICBzaHV0aWwuY29weXRyZWUoc3JjX2RpciwgZHN0X2Rpciwgc3ltbGlua3M9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNsaW5rKG9zLnBhdGguam9pbihkc3RfZGlyLCAnc3ViJywgJ2xpbmsnKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3MucmVhZGxpbmsob3MucGF0aC5qb2luKGRzdF9kaXIsICdzdWInLCAnbGluaycpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ2ZpbGUudHh0JykpCisgICAgICAgIGRzdF9zdGF0ID0gb3MubHN0YXQoZHN0X2xpbmspCisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsY2htb2QnKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0X3N0YXQuc3RfbW9kZSwgc3JjX3N0YXQuc3RfbW9kZSkKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaGZsYWdzJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRzdF9zdGF0LnN0X2ZsYWdzLCBzcmNfc3RhdC5zdF9mbGFncykKIAogICAgIGRlZiB0ZXN0X2NvcHl0cmVlX3dpdGhfZXhjbHVkZShzZWxmKToKLQotICAgICAgICBkZWYgcmVhZF9kYXRhKHBhdGgpOgotICAgICAgICAgICAgZiA9IG9wZW4ocGF0aCkKLSAgICAgICAgICAgIGRhdGEgPSBmLnJlYWQoKQotICAgICAgICAgICAgZi5jbG9zZSgpCi0gICAgICAgICAgICByZXR1cm4gZGF0YQotCiAgICAgICAgICMgY3JlYXRpbmcgZGF0YQogICAgICAgICBqb2luID0gb3MucGF0aC5qb2luCiAgICAgICAgIGV4aXN0cyA9IG9zLnBhdGguZXhpc3RzCiAgICAgICAgIHNyY19kaXIgPSB0ZW1wZmlsZS5ta2R0ZW1wKCkKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZHN0X2RpciA9IGpvaW4odGVtcGZpbGUubWtkdGVtcCgpLCAnZGVzdGluYXRpb24nKQotICAgICAgICAgICAgc2VsZi5fd3JpdGVfZGF0YShqb2luKHNyY19kaXIsICd0ZXN0LnR4dCcpLCAnMTIzJykKLSAgICAgICAgICAgIHNlbGYuX3dyaXRlX2RhdGEoam9pbihzcmNfZGlyLCAndGVzdC50bXAnKSwgJzEyMycpCisgICAgICAgICAgICB3cml0ZV9maWxlKChzcmNfZGlyLCAndGVzdC50eHQnKSwgJzEyMycpCisgICAgICAgICAgICB3cml0ZV9maWxlKChzcmNfZGlyLCAndGVzdC50bXAnKSwgJzEyMycpCiAgICAgICAgICAgICBvcy5ta2Rpcihqb2luKHNyY19kaXIsICd0ZXN0X2RpcicpKQotICAgICAgICAgICAgc2VsZi5fd3JpdGVfZGF0YShqb2luKHNyY19kaXIsICd0ZXN0X2RpcicsICd0ZXN0LnR4dCcpLCAnNDU2JykKKyAgICAgICAgICAgIHdyaXRlX2ZpbGUoKHNyY19kaXIsICd0ZXN0X2RpcicsICd0ZXN0LnR4dCcpLCAnNDU2JykKICAgICAgICAgICAgIG9zLm1rZGlyKGpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyMicpKQotICAgICAgICAgICAgc2VsZi5fd3JpdGVfZGF0YShqb2luKHNyY19kaXIsICd0ZXN0X2RpcjInLCAndGVzdC50eHQnKSwgJzQ1NicpCisgICAgICAgICAgICB3cml0ZV9maWxlKChzcmNfZGlyLCAndGVzdF9kaXIyJywgJ3Rlc3QudHh0JyksICc0NTYnKQogICAgICAgICAgICAgb3MubWtkaXIoam9pbihzcmNfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcicpKQogICAgICAgICAgICAgb3MubWtkaXIoam9pbihzcmNfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcjInKSkKLSAgICAgICAgICAgIHNlbGYuX3dyaXRlX2RhdGEoam9pbihzcmNfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcicsICd0ZXN0LnR4dCcpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnNDU2JykKLSAgICAgICAgICAgIHNlbGYuX3dyaXRlX2RhdGEoam9pbihzcmNfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcjInLCAndGVzdC5weScpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnNDU2JykKLQorICAgICAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXInLCAndGVzdC50eHQnKSwgJzQ1NicpCisgICAgICAgICAgICB3cml0ZV9maWxlKChzcmNfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcjInLCAndGVzdC5weScpLCAnNDU2JykKIAogICAgICAgICAgICAgIyB0ZXN0aW5nIGdsb2ItbGlrZSBwYXR0ZXJucwogICAgICAgICAgICAgdHJ5OgpAQCAtMjQzLDIxICs0MzUsMTkgQEAKICAgICAgICAgICAgICAgICBzaHV0aWwuY29weXRyZWUoc3JjX2RpciwgZHN0X2RpciwgaWdub3JlPXBhdHRlcm5zKQogICAgICAgICAgICAgICAgICMgY2hlY2tpbmcgdGhlIHJlc3VsdDogc29tZSBlbGVtZW50cyBzaG91bGQgbm90IGJlIGNvcGllZAogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdC50eHQnKSkpCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdC50bXAnKSkpCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdF9kaXIyJykpKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3QudG1wJykpKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyMicpKSkKICAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZHN0X2Rpcik6Ci0gICAgICAgICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoZHN0X2RpcikKKyAgICAgICAgICAgICAgICBzaHV0aWwucm10cmVlKGRzdF9kaXIpCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgcGF0dGVybnMgPSBzaHV0aWwuaWdub3JlX3BhdHRlcm5zKCcqLnRtcCcsICdzdWJkaXIqJykKICAgICAgICAgICAgICAgICBzaHV0aWwuY29weXRyZWUoc3JjX2RpciwgZHN0X2RpciwgaWdub3JlPXBhdHRlcm5zKQogICAgICAgICAgICAgICAgICMgY2hlY2tpbmcgdGhlIHJlc3VsdDogc29tZSBlbGVtZW50cyBzaG91bGQgbm90IGJlIGNvcGllZAotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3QgZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3QudG1wJykpKQotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3QgZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXIyJykpKQotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3QgZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXInKSkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdC50bXAnKSkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcjInKSkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcicpKSkKICAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZHN0X2Rpcik6Ci0gICAgICAgICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoZHN0X2RpcikKKyAgICAgICAgICAgICAgICBzaHV0aWwucm10cmVlKGRzdF9kaXIpCiAKICAgICAgICAgICAgICMgdGVzdGluZyBjYWxsYWJsZS1zdHlsZQogICAgICAgICAgICAgdHJ5OgpAQCAtMjc2LDEzICs0NjYsMTIgQEAKICAgICAgICAgICAgICAgICBzaHV0aWwuY29weXRyZWUoc3JjX2RpciwgZHN0X2RpciwgaWdub3JlPV9maWx0ZXIpCiAKICAgICAgICAgICAgICAgICAjIGNoZWNraW5nIHRoZSByZXN1bHQ6IHNvbWUgZWxlbWVudHMgc2hvdWxkIG5vdCBiZSBjb3BpZWQKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUobm90IGV4aXN0cyhqb2luKGRzdF9kaXIsICd0ZXN0X2RpcjInLCAnc3ViZGlyMicsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Rlc3QucHknKSkpCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcicpKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGV4aXN0cyhqb2luKGRzdF9kaXIsICd0ZXN0X2RpcjInLCAnc3ViZGlyMicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGVzdC5weScpKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGV4aXN0cyhqb2luKGRzdF9kaXIsICd0ZXN0X2RpcjInLCAnc3ViZGlyJykpKQogCiAgICAgICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGRzdF9kaXIpOgotICAgICAgICAgICAgICAgICAgICBzaHV0aWwucm10cmVlKGRzdF9kaXIpCisgICAgICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShkc3RfZGlyKQogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShzcmNfZGlyKQogICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShvcy5wYXRoLmRpcm5hbWUoZHN0X2RpcikpCkBAIC0zNzcsOSArNTY2LDkgQEAKIAogICAgICAgICBzcmNfZGlyID0gc2VsZi5ta2R0ZW1wKCkKICAgICAgICAgZHN0X2RpciA9IG9zLnBhdGguam9pbihzZWxmLm1rZHRlbXAoKSwgJ2Rlc3RpbmF0aW9uJykKLSAgICAgICAgc2VsZi5fd3JpdGVfZGF0YShvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ3Rlc3QudHh0JyksICcxMjMnKQorICAgICAgICB3cml0ZV9maWxlKChzcmNfZGlyLCAndGVzdC50eHQnKSwgJzEyMycpCiAgICAgICAgIG9zLm1rZGlyKG9zLnBhdGguam9pbihzcmNfZGlyLCAndGVzdF9kaXInKSkKLSAgICAgICAgc2VsZi5fd3JpdGVfZGF0YShvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyJywgJ3Rlc3QudHh0JyksICc0NTYnKQorICAgICAgICB3cml0ZV9maWxlKChzcmNfZGlyLCAndGVzdF9kaXInLCAndGVzdC50eHQnKSwgJzQ1NicpCiAKICAgICAgICAgY29waWVkID0gW10KICAgICAgICAgZGVmIF9jb3B5KHNyYywgZHN0KToKQEAgLTM5Niw3ICs1ODUsNyBAQAogICAgICAgICBkc3RfZGlyID0gb3MucGF0aC5qb2luKHNlbGYubWtkdGVtcCgpLCAnZGVzdGluYXRpb24nKQogICAgICAgICBvcy5zeW1saW5rKCdJRE9OVEVYSVNUJywgb3MucGF0aC5qb2luKHNyY19kaXIsICd0ZXN0LnR4dCcpKQogICAgICAgICBvcy5ta2Rpcihvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyJykpCi0gICAgICAgIHNlbGYuX3dyaXRlX2RhdGEob3MucGF0aC5qb2luKHNyY19kaXIsICd0ZXN0X2RpcicsICd0ZXN0LnR4dCcpLCAnNDU2JykKKyAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3RfZGlyJywgJ3Rlc3QudHh0JyksICc0NTYnKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhFcnJvciwgc2h1dGlsLmNvcHl0cmVlLCBzcmNfZGlyLCBkc3RfZGlyKQogCiAgICAgICAgICMgYSBkYW5nbGluZyBzeW1saW5rIGlzIGlnbm9yZWQgd2l0aCB0aGUgcHJvcGVyIGZsYWcKQEAgLTQxMiw3ICs2MDEsNyBAQAogICAgIGRlZiBfY29weV9maWxlKHNlbGYsIG1ldGhvZCk6CiAgICAgICAgIGZuYW1lID0gJ3Rlc3QudHh0JwogICAgICAgICB0bXBkaXIgPSBzZWxmLm1rZHRlbXAoKQotICAgICAgICBzZWxmLndyaXRlX2ZpbGUoW3RtcGRpciwgZm5hbWVdKQorICAgICAgICB3cml0ZV9maWxlKCh0bXBkaXIsIGZuYW1lKSwgJ3h4eCcpCiAgICAgICAgIGZpbGUxID0gb3MucGF0aC5qb2luKHRtcGRpciwgZm5hbWUpCiAgICAgICAgIHRtcGRpcjIgPSBzZWxmLm1rZHRlbXAoKQogICAgICAgICBtZXRob2QoZmlsZTEsIHRtcGRpcjIpCkBAIC00NDQsMTQgKzYzMywxNCBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRhdHRyKGZpbGUxX3N0YXQsICdzdF9mbGFncycpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRhdHRyKGZpbGUyX3N0YXQsICdzdF9mbGFncycpKQogCi0gICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfbWFrZV90YXJiYWxsKHNlbGYpOgogICAgICAgICAjIGNyZWF0aW5nIHNvbWV0aGluZyB0byB0YXIKICAgICAgICAgdG1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKLSAgICAgICAgc2VsZi53cml0ZV9maWxlKFt0bXBkaXIsICdmaWxlMSddLCAneHh4JykKLSAgICAgICAgc2VsZi53cml0ZV9maWxlKFt0bXBkaXIsICdmaWxlMiddLCAneHh4JykKKyAgICAgICAgd3JpdGVfZmlsZSgodG1wZGlyLCAnZmlsZTEnKSwgJ3h4eCcpCisgICAgICAgIHdyaXRlX2ZpbGUoKHRtcGRpciwgJ2ZpbGUyJyksICd4eHgnKQogICAgICAgICBvcy5ta2Rpcihvcy5wYXRoLmpvaW4odG1wZGlyLCAnc3ViJykpCi0gICAgICAgIHNlbGYud3JpdGVfZmlsZShbdG1wZGlyLCAnc3ViJywgJ2ZpbGUzJ10sICd4eHgnKQorICAgICAgICB3cml0ZV9maWxlKCh0bXBkaXIsICdzdWInLCAnZmlsZTMnKSwgJ3h4eCcpCiAKICAgICAgICAgdG1wZGlyMiA9IHNlbGYubWtkdGVtcCgpCiAgICAgICAgICMgZm9yY2Ugc2h1dGlsIHRvIGNyZWF0ZSB0aGUgZGlyZWN0b3J5CkBAIC00OTgsMTYgKzY4NywxNiBAQAogICAgICAgICB0bXBkaXIgPSBzZWxmLm1rZHRlbXAoKQogICAgICAgICBkaXN0ID0gb3MucGF0aC5qb2luKHRtcGRpciwgJ2Rpc3QnKQogICAgICAgICBvcy5ta2RpcihkaXN0KQotICAgICAgICBzZWxmLndyaXRlX2ZpbGUoW2Rpc3QsICdmaWxlMSddLCAneHh4JykKLSAgICAgICAgc2VsZi53cml0ZV9maWxlKFtkaXN0LCAnZmlsZTInXSwgJ3h4eCcpCisgICAgICAgIHdyaXRlX2ZpbGUoKGRpc3QsICdmaWxlMScpLCAneHh4JykKKyAgICAgICAgd3JpdGVfZmlsZSgoZGlzdCwgJ2ZpbGUyJyksICd4eHgnKQogICAgICAgICBvcy5ta2Rpcihvcy5wYXRoLmpvaW4oZGlzdCwgJ3N1YicpKQotICAgICAgICBzZWxmLndyaXRlX2ZpbGUoW2Rpc3QsICdzdWInLCAnZmlsZTMnXSwgJ3h4eCcpCisgICAgICAgIHdyaXRlX2ZpbGUoKGRpc3QsICdzdWInLCAnZmlsZTMnKSwgJ3h4eCcpCiAgICAgICAgIG9zLm1rZGlyKG9zLnBhdGguam9pbihkaXN0LCAnc3ViMicpKQogICAgICAgICB0bXBkaXIyID0gc2VsZi5ta2R0ZW1wKCkKICAgICAgICAgYmFzZV9uYW1lID0gb3MucGF0aC5qb2luKHRtcGRpcjIsICdhcmNoaXZlJykKICAgICAgICAgcmV0dXJuIHRtcGRpciwgdG1wZGlyMiwgYmFzZV9uYW1lCiAKLSAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyh6bGliLCAiUmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhmaW5kX2V4ZWN1dGFibGUoJ3RhcicpIGFuZCBmaW5kX2V4ZWN1dGFibGUoJ2d6aXAnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAnTmVlZCB0aGUgdGFyIGNvbW1hbmQgdG8gcnVuJykKICAgICBkZWYgdGVzdF90YXJmaWxlX3ZzX3RhcihzZWxmKToKQEAgLTU2MiwxMyArNzUxLDEzIEBACiAgICAgICAgIHRhcmJhbGwgPSBiYXNlX25hbWUgKyAnLnRhcicKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKHRhcmJhbGwpKQogCi0gICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoemxpYiwgIlJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoWklQX1NVUFBPUlQsICdOZWVkIHppcCBzdXBwb3J0IHRvIHJ1bicpCiAgICAgZGVmIHRlc3RfbWFrZV96aXBmaWxlKHNlbGYpOgogICAgICAgICAjIGNyZWF0aW5nIHNvbWV0aGluZyB0byB0YXIKICAgICAgICAgdG1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKLSAgICAgICAgc2VsZi53cml0ZV9maWxlKFt0bXBkaXIsICdmaWxlMSddLCAneHh4JykKLSAgICAgICAgc2VsZi53cml0ZV9maWxlKFt0bXBkaXIsICdmaWxlMiddLCAneHh4JykKKyAgICAgICAgd3JpdGVfZmlsZSgodG1wZGlyLCAnZmlsZTEnKSwgJ3h4eCcpCisgICAgICAgIHdyaXRlX2ZpbGUoKHRtcGRpciwgJ2ZpbGUyJyksICd4eHgnKQogCiAgICAgICAgIHRtcGRpcjIgPSBzZWxmLm1rZHRlbXAoKQogICAgICAgICAjIGZvcmNlIHNodXRpbCB0byBjcmVhdGUgdGhlIGRpcmVjdG9yeQpAQCAtNTg2LDcgKzc3NSw3IEBACiAgICAgICAgIGJhc2VfbmFtZSA9IG9zLnBhdGguam9pbih0bXBkaXIsICdhcmNoaXZlJykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbWFrZV9hcmNoaXZlLCBiYXNlX25hbWUsICd4eHgnKQogCi0gICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoemxpYiwgIlJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfbWFrZV9hcmNoaXZlX293bmVyX2dyb3VwKHNlbGYpOgogICAgICAgICAjIHRlc3RpbmcgbWFrZV9hcmNoaXZlIHdpdGggb3duZXIgYW5kIGdyb3VwLCB3aXRoIHZhcmlvdXMgY29tYmluYXRpb25zCiAgICAgICAgICMgdGhpcyB3b3JrcyBldmVuIGlmIHRoZXJlJ3Mgbm90IGdpZC91aWQgc3VwcG9ydApAQCAtNjE0LDcgKzgwMyw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhyZXMpKQogCiAKLSAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyh6bGliLCAiUmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhVSURfR0lEX1NVUFBPUlQsICJSZXF1aXJlcyBncnAgYW5kIHB3ZCBzdXBwb3J0IikKICAgICBkZWYgdGVzdF90YXJmaWxlX3Jvb3Rfb3duZXIoc2VsZik6CiAgICAgICAgIHRtcGRpciwgdG1wZGlyMiwgYmFzZV9uYW1lID0gIHNlbGYuX2NyZWF0ZV9maWxlcygpCkBAIC02ODMsNyArODcyLDcgQEAKICAgICAgICAgICAgICAgICAgICAgZGlmZi5hcHBlbmQoZmlsZV8pCiAgICAgICAgIHJldHVybiBkaWZmCiAKLSAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyh6bGliLCAiUmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF91bnBhY2tfYXJjaGl2ZShzZWxmKToKICAgICAgICAgZm9ybWF0cyA9IFsndGFyJywgJ2d6dGFyJywgJ3ppcCddCiAgICAgICAgIGlmIEJaMl9TVVBQT1JURUQ6CkBAIC03MzQsNiArOTIzLDc1IEBACiAgICAgICAgIHVucmVnaXN0ZXJfdW5wYWNrX2Zvcm1hdCgnQm9vMicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0X3VucGFja19mb3JtYXRzKCksIGZvcm1hdHMpCiAKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNodXRpbCwgJ2Rpc2tfdXNhZ2UnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiZGlza191c2FnZSBub3QgYXZhaWxhYmxlIG9uIHRoaXMgcGxhdGZvcm0iKQorICAgIGRlZiB0ZXN0X2Rpc2tfdXNhZ2Uoc2VsZik6CisgICAgICAgIHVzYWdlID0gc2h1dGlsLmRpc2tfdXNhZ2Uob3MuZ2V0Y3dkKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcih1c2FnZS50b3RhbCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKHVzYWdlLnVzZWQsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKHVzYWdlLmZyZWUsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKHVzYWdlLnRvdGFsLCB1c2FnZS51c2VkKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIodXNhZ2UudG90YWwsIHVzYWdlLmZyZWUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhVSURfR0lEX1NVUFBPUlQsICJSZXF1aXJlcyBncnAgYW5kIHB3ZCBzdXBwb3J0IikKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnY2hvd24nKSwgJ3JlcXVpcmVzIG9zLmNob3duJykKKyAgICBkZWYgdGVzdF9jaG93bihzZWxmKToKKworICAgICAgICAjIGNsZWFuZWQtdXAgYXV0b21hdGljYWxseSBieSBUZXN0U2h1dGlsLnRlYXJEb3duIG1ldGhvZAorICAgICAgICBkaXJuYW1lID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgZmlsZW5hbWUgPSB0ZW1wZmlsZS5ta3RlbXAoZGlyPWRpcm5hbWUpCisgICAgICAgIHdyaXRlX2ZpbGUoZmlsZW5hbWUsICd0ZXN0aW5nIGNob3duIGZ1bmN0aW9uJykKKworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgc2h1dGlsLmNob3duKGZpbGVuYW1lKQorCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTG9va3VwRXJyb3IpOgorICAgICAgICAgICAgc2h1dGlsLmNob3duKGZpbGVuYW1lLCB1c2VyPSdub24tZXhpc2luZyB1c2VybmFtZScpCisKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMb29rdXBFcnJvcik6CisgICAgICAgICAgICBzaHV0aWwuY2hvd24oZmlsZW5hbWUsIGdyb3VwPSdub24tZXhpc2luZyBncm91cG5hbWUnKQorCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIHNodXRpbC5jaG93bihmaWxlbmFtZSwgYidzcGFtJykKKworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBzaHV0aWwuY2hvd24oZmlsZW5hbWUsIDMuMTQpCisKKyAgICAgICAgdWlkID0gb3MuZ2V0dWlkKCkKKyAgICAgICAgZ2lkID0gb3MuZ2V0Z2lkKCkKKworICAgICAgICBkZWYgY2hlY2tfY2hvd24ocGF0aCwgdWlkPU5vbmUsIGdpZD1Ob25lKToKKyAgICAgICAgICAgIHMgPSBvcy5zdGF0KGZpbGVuYW1lKQorICAgICAgICAgICAgaWYgdWlkIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodWlkLCBzLnN0X3VpZCkKKyAgICAgICAgICAgIGlmIGdpZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdpZCwgcy5zdF9naWQpCisKKyAgICAgICAgc2h1dGlsLmNob3duKGZpbGVuYW1lLCB1aWQsIGdpZCkKKyAgICAgICAgY2hlY2tfY2hvd24oZmlsZW5hbWUsIHVpZCwgZ2lkKQorICAgICAgICBzaHV0aWwuY2hvd24oZmlsZW5hbWUsIHVpZCkKKyAgICAgICAgY2hlY2tfY2hvd24oZmlsZW5hbWUsIHVpZCkKKyAgICAgICAgc2h1dGlsLmNob3duKGZpbGVuYW1lLCB1c2VyPXVpZCkKKyAgICAgICAgY2hlY2tfY2hvd24oZmlsZW5hbWUsIHVpZCkKKyAgICAgICAgc2h1dGlsLmNob3duKGZpbGVuYW1lLCBncm91cD1naWQpCisgICAgICAgIGNoZWNrX2Nob3duKGZpbGVuYW1lLCBnaWQ9Z2lkKQorCisgICAgICAgIHNodXRpbC5jaG93bihkaXJuYW1lLCB1aWQsIGdpZCkKKyAgICAgICAgY2hlY2tfY2hvd24oZGlybmFtZSwgdWlkLCBnaWQpCisgICAgICAgIHNodXRpbC5jaG93bihkaXJuYW1lLCB1aWQpCisgICAgICAgIGNoZWNrX2Nob3duKGRpcm5hbWUsIHVpZCkKKyAgICAgICAgc2h1dGlsLmNob3duKGRpcm5hbWUsIHVzZXI9dWlkKQorICAgICAgICBjaGVja19jaG93bihkaXJuYW1lLCB1aWQpCisgICAgICAgIHNodXRpbC5jaG93bihkaXJuYW1lLCBncm91cD1naWQpCisgICAgICAgIGNoZWNrX2Nob3duKGRpcm5hbWUsIGdpZD1naWQpCisKKyAgICAgICAgdXNlciA9IHB3ZC5nZXRwd3VpZCh1aWQpWzBdCisgICAgICAgIGdyb3VwID0gZ3JwLmdldGdyZ2lkKGdpZClbMF0KKyAgICAgICAgc2h1dGlsLmNob3duKGZpbGVuYW1lLCB1c2VyLCBncm91cCkKKyAgICAgICAgY2hlY2tfY2hvd24oZmlsZW5hbWUsIHVpZCwgZ2lkKQorICAgICAgICBzaHV0aWwuY2hvd24oZGlybmFtZSwgdXNlciwgZ3JvdXApCisgICAgICAgIGNoZWNrX2Nob3duKGRpcm5hbWUsIHVpZCwgZ2lkKQorCiAKIGNsYXNzIFRlc3RNb3ZlKHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtODQ3LDYgKzExMDUsNDkgQEAKICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoVEVTVEZOLCBpZ25vcmVfZXJyb3JzPVRydWUpCiAKKyAgICBAc3VwcG9ydC5za2lwX3VubGVzc19zeW1saW5rCisgICAgQG1vY2tfcmVuYW1lCisgICAgZGVmIHRlc3RfbW92ZV9maWxlX3N5bWxpbmsoc2VsZik6CisgICAgICAgIGRzdCA9IG9zLnBhdGguam9pbihzZWxmLnNyY19kaXIsICdiYXInKQorICAgICAgICBvcy5zeW1saW5rKHNlbGYuc3JjX2ZpbGUsIGRzdCkKKyAgICAgICAgc2h1dGlsLm1vdmUoZHN0LCBzZWxmLmRzdF9maWxlKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2xpbmsoc2VsZi5kc3RfZmlsZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLnNhbWVmaWxlKHNlbGYuc3JjX2ZpbGUsIHNlbGYuZHN0X2ZpbGUpKQorCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIEBtb2NrX3JlbmFtZQorICAgIGRlZiB0ZXN0X21vdmVfZmlsZV9zeW1saW5rX3RvX2RpcihzZWxmKToKKyAgICAgICAgZmlsZW5hbWUgPSAiYmFyIgorICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4oc2VsZi5zcmNfZGlyLCBmaWxlbmFtZSkKKyAgICAgICAgb3Muc3ltbGluayhzZWxmLnNyY19maWxlLCBkc3QpCisgICAgICAgIHNodXRpbC5tb3ZlKGRzdCwgc2VsZi5kc3RfZGlyKQorICAgICAgICBmaW5hbF9saW5rID0gb3MucGF0aC5qb2luKHNlbGYuZHN0X2RpciwgZmlsZW5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzbGluayhmaW5hbF9saW5rKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguc2FtZWZpbGUoc2VsZi5zcmNfZmlsZSwgZmluYWxfbGluaykpCisKKyAgICBAc3VwcG9ydC5za2lwX3VubGVzc19zeW1saW5rCisgICAgQG1vY2tfcmVuYW1lCisgICAgZGVmIHRlc3RfbW92ZV9kYW5nbGluZ19zeW1saW5rKHNlbGYpOgorICAgICAgICBzcmMgPSBvcy5wYXRoLmpvaW4oc2VsZi5zcmNfZGlyLCAnYmF6JykKKyAgICAgICAgZHN0ID0gb3MucGF0aC5qb2luKHNlbGYuc3JjX2RpciwgJ2JhcicpCisgICAgICAgIG9zLnN5bWxpbmsoc3JjLCBkc3QpCisgICAgICAgIGRzdF9saW5rID0gb3MucGF0aC5qb2luKHNlbGYuZHN0X2RpciwgJ3F1dXgnKQorICAgICAgICBzaHV0aWwubW92ZShkc3QsIGRzdF9saW5rKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2xpbmsoZHN0X2xpbmspKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnBhdGgucmVhbHBhdGgoc3JjKSwgb3MucGF0aC5yZWFscGF0aChkc3RfbGluaykpCisKKyAgICBAc3VwcG9ydC5za2lwX3VubGVzc19zeW1saW5rCisgICAgQG1vY2tfcmVuYW1lCisgICAgZGVmIHRlc3RfbW92ZV9kaXJfc3ltbGluayhzZWxmKToKKyAgICAgICAgc3JjID0gb3MucGF0aC5qb2luKHNlbGYuc3JjX2RpciwgJ2JheicpCisgICAgICAgIGRzdCA9IG9zLnBhdGguam9pbihzZWxmLnNyY19kaXIsICdiYXInKQorICAgICAgICBvcy5ta2RpcihzcmMpCisgICAgICAgIG9zLnN5bWxpbmsoc3JjLCBkc3QpCisgICAgICAgIGRzdF9saW5rID0gb3MucGF0aC5qb2luKHNlbGYuZHN0X2RpciwgJ3F1dXgnKQorICAgICAgICBzaHV0aWwubW92ZShkc3QsIGRzdF9saW5rKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2xpbmsoZHN0X2xpbmspKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5zYW1lZmlsZShzcmMsIGRzdF9saW5rKSkKKwogCiBjbGFzcyBUZXN0Q29weUZpbGUodW5pdHRlc3QuVGVzdENhc2UpOgogCkBAIC05NjUsMTMgKzEyNjYsNTcgQEAKICAgICAgICAgICAgIHNodXRpbC5tb3ZlKHNlbGYuc3JjX2RpciwgZHN0X2RpcikKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZGlyKGRzdF9kaXIpKQogICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZHN0X2Rpcik6Ci0gICAgICAgICAgICAgICAgb3Mucm1kaXIoZHN0X2RpcikKKyAgICAgICAgICAgIG9zLnJtZGlyKGRzdF9kaXIpCiAKK2NsYXNzIFRlcm1zaXplVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGRlZiB0ZXN0X2RvZXNfbm90X2NyYXNoKHNlbGYpOgorICAgICAgICAiIiJDaGVjayBpZiBnZXRfdGVybWluYWxfc2l6ZSgpIHJldHVybnMgYSBtZWFuaW5nZnVsIHZhbHVlLgorCisgICAgICAgIFRoZXJlJ3Mgbm8gZWFzeSBwb3J0YWJsZSB3YXkgdG8gYWN0dWFsbHkgY2hlY2sgdGhlIHNpemUgb2YgdGhlCisgICAgICAgIHRlcm1pbmFsLCBzbyBsZXQncyBjaGVjayBpZiBpdCByZXR1cm5zIHNvbWV0aGluZyBzZW5zaWJsZSBpbnN0ZWFkLgorICAgICAgICAiIiIKKyAgICAgICAgc2l6ZSA9IHNodXRpbC5nZXRfdGVybWluYWxfc2l6ZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKHNpemUuY29sdW1ucywgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwoc2l6ZS5saW5lcywgMCkKKworICAgIGRlZiB0ZXN0X29zX2Vudmlyb25fZmlyc3Qoc2VsZik6CisgICAgICAgICJDaGVjayBpZiBlbnZpcm9ubWVudCB2YXJpYWJsZXMgaGF2ZSBwcmVjZWRlbmNlIgorCisgICAgICAgIHdpdGggc3VwcG9ydC5FbnZpcm9ubWVudFZhckd1YXJkKCkgYXMgZW52OgorICAgICAgICAgICAgZW52WydDT0xVTU5TJ10gPSAnNzc3JworICAgICAgICAgICAgc2l6ZSA9IHNodXRpbC5nZXRfdGVybWluYWxfc2l6ZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2l6ZS5jb2x1bW5zLCA3NzcpCisKKyAgICAgICAgd2l0aCBzdXBwb3J0LkVudmlyb25tZW50VmFyR3VhcmQoKSBhcyBlbnY6CisgICAgICAgICAgICBlbnZbJ0xJTkVTJ10gPSAnODg4JworICAgICAgICAgICAgc2l6ZSA9IHNodXRpbC5nZXRfdGVybWluYWxfc2l6ZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2l6ZS5saW5lcywgODg4KQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Mob3MuaXNhdHR5KHN5cy5fX3N0ZG91dF9fLmZpbGVubygpKSwgIm5vdCBvbiB0dHkiKQorICAgIGRlZiB0ZXN0X3N0dHlfbWF0Y2goc2VsZik6CisgICAgICAgICIiIkNoZWNrIGlmIHN0dHkgcmV0dXJucyB0aGUgc2FtZSByZXN1bHRzIGlnbm9yaW5nIGVudgorCisgICAgICAgIFRoaXMgdGVzdCB3aWxsIGZhaWwgaWYgc3RkaW4gYW5kIHN0ZG91dCBhcmUgY29ubmVjdGVkIHRvCisgICAgICAgIGRpZmZlcmVudCB0ZXJtaW5hbHMgd2l0aCBkaWZmZXJlbnQgc2l6ZXMuIE5ldmVydGhlbGVzcywgc3VjaAorICAgICAgICBzaXR1YXRpb25zIHNob3VsZCBiZSBwcmV0dHkgcmFyZS4KKyAgICAgICAgIiIiCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNpemUgPSBzdWJwcm9jZXNzLmNoZWNrX291dHB1dChbJ3N0dHknLCAnc2l6ZSddKS5kZWNvZGUoKS5zcGxpdCgpCisgICAgICAgIGV4Y2VwdCAoRmlsZU5vdEZvdW5kRXJyb3IsIHN1YnByb2Nlc3MuQ2FsbGVkUHJvY2Vzc0Vycm9yKToKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoInN0dHkgaW52b2NhdGlvbiBmYWlsZWQiKQorICAgICAgICBleHBlY3RlZCA9IChpbnQoc2l6ZVsxXSksIGludChzaXplWzBdKSkgIyByZXZlcnNlZCBvcmRlcgorCisgICAgICAgIHdpdGggc3VwcG9ydC5FbnZpcm9ubWVudFZhckd1YXJkKCkgYXMgZW52OgorICAgICAgICAgICAgZGVsIGVudlsnTElORVMnXQorICAgICAgICAgICAgZGVsIGVudlsnQ09MVU1OUyddCisgICAgICAgICAgICBhY3R1YWwgPSBzaHV0aWwuZ2V0X3Rlcm1pbmFsX3NpemUoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhwZWN0ZWQsIGFjdHVhbCkKIAogCiBkZWYgdGVzdF9tYWluKCk6Ci0gICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoVGVzdFNodXRpbCwgVGVzdE1vdmUsIFRlc3RDb3B5RmlsZSkKKyAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChUZXN0U2h1dGlsLCBUZXN0TW92ZSwgVGVzdENvcHlGaWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgIFRlcm1zaXplVGVzdHMpCiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CiAgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfc2lnbmFsLnB5IGIvTGliL3Rlc3QvdGVzdF9zaWduYWwucHkKaW5kZXggOGRmMWJmMC4uNmJlMjU5YiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zaWduYWwucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9zaWduYWwucHkKQEAgLTEsMTcgKzEsMTkgQEAKLWltcG9ydCBlcnJubwotaW1wb3J0IGdjCi1pbXBvcnQgb3MKLWltcG9ydCBwaWNrbGUKLWltcG9ydCBzZWxlY3QKLWltcG9ydCBzaWduYWwKLWltcG9ydCBzdWJwcm9jZXNzCi1pbXBvcnQgc3lzCi1pbXBvcnQgdGltZQotaW1wb3J0IHRyYWNlYmFjawogaW1wb3J0IHVuaXR0ZXN0CiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGZyb20gY29udGV4dGxpYiBpbXBvcnQgY2xvc2luZworaW1wb3J0IGdjCitpbXBvcnQgcGlja2xlCitpbXBvcnQgc2VsZWN0CitpbXBvcnQgc2lnbmFsCitpbXBvcnQgc3RydWN0CitpbXBvcnQgc3VicHJvY2VzcworaW1wb3J0IHRyYWNlYmFjaworaW1wb3J0IHN5cywgb3MsIHRpbWUsIGVycm5vCiBmcm9tIHRlc3Quc2NyaXB0X2hlbHBlciBpbXBvcnQgYXNzZXJ0X3B5dGhvbl9vaywgc3Bhd25fcHl0aG9uCit0cnk6CisgICAgaW1wb3J0IHRocmVhZGluZworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHRocmVhZGluZyA9IE5vbmUKIAogaWYgc3lzLnBsYXRmb3JtIGluICgnb3MyJywgJ3Jpc2NvcycpOgogICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJDYW4ndCB0ZXN0IHNpZ25hbCBvbiAlcyIgJSBzeXMucGxhdGZvcm0pCkBAIC01NywxNSArNTksOSBAQAogCiAgICAgZGVmIGhhbmRsZXJBKHNlbGYsIHNpZ251bSwgZnJhbWUpOgogICAgICAgICBzZWxmLmFfY2FsbGVkID0gVHJ1ZQotICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6Ci0gICAgICAgICAgICBwcmludCgiaGFuZGxlckEgaW52b2tlZCBmcm9tIHNpZ25hbCAlcyBhdDpcbiVzIiAlICgKLSAgICAgICAgICAgICAgICBzaWdudW0sIHNlbGYuZm9ybWF0X2ZyYW1lKGZyYW1lLCBsaW1pdD0xKSkpCiAKICAgICBkZWYgaGFuZGxlckIoc2VsZiwgc2lnbnVtLCBmcmFtZSk6CiAgICAgICAgIHNlbGYuYl9jYWxsZWQgPSBUcnVlCi0gICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgIHByaW50ICgiaGFuZGxlckIgaW52b2tlZCBmcm9tIHNpZ25hbCAlcyBhdDpcbiVzIiAlICgKLSAgICAgICAgICAgICAgICBzaWdudW0sIHNlbGYuZm9ybWF0X2ZyYW1lKGZyYW1lLCBsaW1pdD0xKSkpCiAgICAgICAgIHJhaXNlIEhhbmRsZXJCQ2FsbGVkKHNpZ251bSwgc2VsZi5mb3JtYXRfZnJhbWUoZnJhbWUpKQogCiAgICAgZGVmIHdhaXQoc2VsZiwgY2hpbGQpOgpAQCAtOTIsOCArODgsNiBAQAogCiAgICAgICAgICMgTGV0IHRoZSBzdWItcHJvY2Vzc2VzIGtub3cgd2hvIHRvIHNlbmQgc2lnbmFscyB0by4KICAgICAgICAgcGlkID0gb3MuZ2V0cGlkKCkKLSAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgcHJpbnQoInRlc3QgcnVubmVyJ3MgcGlkIGlzIiwgcGlkKQogCiAgICAgICAgIGNoaWxkID0gaWdub3JpbmdfZWludHIoc3VicHJvY2Vzcy5Qb3BlbiwgWydraWxsJywgJy1IVVAnLCBzdHIocGlkKV0pCiAgICAgICAgIGlmIGNoaWxkOgpAQCAtMTE3LDggKzExMSw2IEBACiAgICAgICAgIGV4Y2VwdCBIYW5kbGVyQkNhbGxlZDoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLmJfY2FsbGVkKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzZWxmLmFfY2FsbGVkKQotICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgICAgIHByaW50KCJIYW5kbGVyQkNhbGxlZCBleGNlcHRpb24gY2F1Z2h0IikKIAogICAgICAgICBjaGlsZCA9IGlnbm9yaW5nX2VpbnRyKHN1YnByb2Nlc3MuUG9wZW4sIFsna2lsbCcsICctVVNSMicsIHN0cihwaWQpXSkKICAgICAgICAgaWYgY2hpbGQ6CkBAIC0xMzQsOCArMTI2LDcgQEAKICAgICAgICAgICAgICMgbWF5IHJldHVybiBlYXJseS4KICAgICAgICAgICAgIHRpbWUuc2xlZXAoMSkKICAgICAgICAgZXhjZXB0IEtleWJvYXJkSW50ZXJydXB0OgotICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgICAgIHByaW50KCJLZXlib2FyZEludGVycnVwdCAodGhlIGFsYXJtKCkgd2VudCBvZmYpIikKKyAgICAgICAgICAgIHBhc3MKICAgICAgICAgZXhjZXB0OgogICAgICAgICAgICAgc2VsZi5mYWlsKCJTb21lIG90aGVyIGV4Y2VwdGlvbiB3b2tlIHVzIGZyb20gcGF1c2U6ICVzIiAlCiAgICAgICAgICAgICAgICAgICAgICAgdHJhY2ViYWNrLmZvcm1hdF9leGMoKSkKQEAgLTE5MSw3ICsxODIsNyBAQAogCiAKIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtID09ICJ3aW4zMiIsICJOb3QgdmFsaWQgb24gV2luZG93cyIpCi1jbGFzcyBCYXNpY1NpZ25hbFRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKK2NsYXNzIFBvc2l4VGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiB0cml2aWFsX3NpZ25hbF9oYW5kbGVyKHNlbGYsICphcmdzKToKICAgICAgICAgcGFzcwogCkBAIC0yMzMsMzEgKzIyNCw0NCBAQAogCiBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiLCAiTm90IHZhbGlkIG9uIFdpbmRvd3MiKQogY2xhc3MgV2FrZXVwU2lnbmFsVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgotICAgIGRlZiBjaGVja193YWtldXAoc2VsZiwgdGVzdF9ib2R5KToKLSAgICAgICAgIyB1c2UgYSBzdWJwcm9jZXNzIHRvIGhhdmUgb25seSBvbmUgdGhyZWFkIGFuZCB0byBub3QgY2hhbmdlIHNpZ25hbAotICAgICAgICAjIGhhbmRsaW5nIG9mIHRoZSBwYXJlbnQgcHJvY2VzcworICAgIGRlZiBjaGVja193YWtldXAoc2VsZiwgdGVzdF9ib2R5LCAqc2lnbmFscywgb3JkZXJlZD1UcnVlKToKKyAgICAgICAgIyB1c2UgYSBzdWJwcm9jZXNzIHRvIGhhdmUgb25seSBvbmUgdGhyZWFkCiAgICAgICAgIGNvZGUgPSAiIiJpZiAxOgogICAgICAgICBpbXBvcnQgZmNudGwKICAgICAgICAgaW1wb3J0IG9zCiAgICAgICAgIGltcG9ydCBzaWduYWwKKyAgICAgICAgaW1wb3J0IHN0cnVjdAorCisgICAgICAgIHNpZ25hbHMgPSB7IXJ9CiAKICAgICAgICAgZGVmIGhhbmRsZXIoc2lnbnVtLCBmcmFtZSk6CiAgICAgICAgICAgICBwYXNzCiAKKyAgICAgICAgZGVmIGNoZWNrX3NpZ251bShzaWduYWxzKToKKyAgICAgICAgICAgIGRhdGEgPSBvcy5yZWFkKHJlYWQsIGxlbihzaWduYWxzKSsxKQorICAgICAgICAgICAgcmFpc2VkID0gc3RydWN0LnVucGFjaygnJXVCJyAlIGxlbihkYXRhKSwgZGF0YSkKKyAgICAgICAgICAgIGlmIG5vdCB7IXJ9OgorICAgICAgICAgICAgICAgIHJhaXNlZCA9IHNldChyYWlzZWQpCisgICAgICAgICAgICAgICAgc2lnbmFscyA9IHNldChzaWduYWxzKQorICAgICAgICAgICAgaWYgcmFpc2VkICE9IHNpZ25hbHM6CisgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCIlciAhPSAlciIgJSAocmFpc2VkLCBzaWduYWxzKSkKKwogICAgICAgICB7fQogCiAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbmFsLlNJR0FMUk0sIGhhbmRsZXIpCiAgICAgICAgIHJlYWQsIHdyaXRlID0gb3MucGlwZSgpCi0gICAgICAgIGZsYWdzID0gZmNudGwuZmNudGwod3JpdGUsIGZjbnRsLkZfR0VURkwsIDApCi0gICAgICAgIGZsYWdzID0gZmxhZ3MgfCBvcy5PX05PTkJMT0NLCi0gICAgICAgIGZjbnRsLmZjbnRsKHdyaXRlLCBmY250bC5GX1NFVEZMLCBmbGFncykKKyAgICAgICAgZm9yIGZkIGluIChyZWFkLCB3cml0ZSk6CisgICAgICAgICAgICBmbGFncyA9IGZjbnRsLmZjbnRsKGZkLCBmY250bC5GX0dFVEZMLCAwKQorICAgICAgICAgICAgZmxhZ3MgPSBmbGFncyB8IG9zLk9fTk9OQkxPQ0sKKyAgICAgICAgICAgIGZjbnRsLmZjbnRsKGZkLCBmY250bC5GX1NFVEZMLCBmbGFncykKICAgICAgICAgc2lnbmFsLnNldF93YWtldXBfZmQod3JpdGUpCiAKICAgICAgICAgdGVzdCgpCisgICAgICAgIGNoZWNrX3NpZ251bShzaWduYWxzKQogCiAgICAgICAgIG9zLmNsb3NlKHJlYWQpCiAgICAgICAgIG9zLmNsb3NlKHdyaXRlKQotICAgICAgICAiIiIuZm9ybWF0KHRlc3RfYm9keSkKKyAgICAgICAgIiIiLmZvcm1hdChzaWduYWxzLCBvcmRlcmVkLCB0ZXN0X2JvZHkpCiAKICAgICAgICAgYXNzZXJ0X3B5dGhvbl9vaygnLWMnLCBjb2RlKQogCkBAIC0yODMsNyArMjg3LDcgQEAKICAgICAgICAgICAgIGR0ID0gYWZ0ZXJfdGltZSAtIG1pZF90aW1lCiAgICAgICAgICAgICBpZiBkdCA+PSBUSU1FT1VUX0hBTEY6CiAgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCIlcyA+PSAlcyIgJSAoZHQsIFRJTUVPVVRfSEFMRikpCi0gICAgICAgICIiIikKKyAgICAgICAgIiIiLCBzaWduYWwuU0lHQUxSTSkKIAogICAgIGRlZiB0ZXN0X3dha2V1cF9mZF9kdXJpbmcoc2VsZik6CiAgICAgICAgIHNlbGYuY2hlY2tfd2FrZXVwKCIiImRlZiB0ZXN0KCk6CkBAIC0zMDYsNyArMzEwLDMyIEBACiAgICAgICAgICAgICBkdCA9IGFmdGVyX3RpbWUgLSBiZWZvcmVfdGltZQogICAgICAgICAgICAgaWYgZHQgPj0gVElNRU9VVF9IQUxGOgogICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiJXMgPj0gJXMiICUgKGR0LCBUSU1FT1VUX0hBTEYpKQotICAgICAgICAiIiIpCisgICAgICAgICIiIiwgc2lnbmFsLlNJR0FMUk0pCisKKyAgICBkZWYgdGVzdF9zaWdudW0oc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfd2FrZXVwKCIiImRlZiB0ZXN0KCk6CisgICAgICAgICAgICBzaWduYWwuc2lnbmFsKHNpZ25hbC5TSUdVU1IxLCBoYW5kbGVyKQorICAgICAgICAgICAgb3Mua2lsbChvcy5nZXRwaWQoKSwgc2lnbmFsLlNJR1VTUjEpCisgICAgICAgICAgICBvcy5raWxsKG9zLmdldHBpZCgpLCBzaWduYWwuU0lHQUxSTSkKKyAgICAgICAgIiIiLCBzaWduYWwuU0lHVVNSMSwgc2lnbmFsLlNJR0FMUk0pCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3B0aHJlYWRfc2lnbWFzaycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soKScpCisgICAgZGVmIHRlc3RfcGVuZGluZyhzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja193YWtldXAoIiIiZGVmIHRlc3QoKToKKyAgICAgICAgICAgIHNpZ251bTEgPSBzaWduYWwuU0lHVVNSMQorICAgICAgICAgICAgc2lnbnVtMiA9IHNpZ25hbC5TSUdVU1IyCisKKyAgICAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbnVtMSwgaGFuZGxlcikKKyAgICAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbnVtMiwgaGFuZGxlcikKKworICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX0JMT0NLLCAoc2lnbnVtMSwgc2lnbnVtMikpCisgICAgICAgICAgICBvcy5raWxsKG9zLmdldHBpZCgpLCBzaWdudW0xKQorICAgICAgICAgICAgb3Mua2lsbChvcy5nZXRwaWQoKSwgc2lnbnVtMikKKyAgICAgICAgICAgICMgVW5ibG9ja2luZyB0aGUgMiBzaWduYWxzIGNhbGxzIHRoZSBDIHNpZ25hbCBoYW5kbGVyIHR3aWNlCisgICAgICAgICAgICBzaWduYWwucHRocmVhZF9zaWdtYXNrKHNpZ25hbC5TSUdfVU5CTE9DSywgKHNpZ251bTEsIHNpZ251bTIpKQorICAgICAgICAiIiIsICBzaWduYWwuU0lHVVNSMSwgc2lnbmFsLlNJR1VTUjIsIG9yZGVyZWQ9RmFsc2UpCisKIAogQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0gPT0gIndpbjMyIiwgIk5vdCB2YWxpZCBvbiBXaW5kb3dzIikKIGNsYXNzIFNpZ2ludGVycnVwdFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtMzE2LDkgKzM0NSw2IEBACiAgICAgICAgIHJlYWQgaXMgaW50ZXJydXB0ZWQgYnkgdGhlIHNpZ25hbCBhbmQgcmFpc2VzIGFuIGV4Y2VwdGlvbi4gIFJldHVybiBGYWxzZQogICAgICAgICBpZiBpdCByZXR1cm5zIG5vcm1hbGx5LgogICAgICAgICAiIiIKLSAgICAgICAgY2xhc3MgVGltZW91dChFeGNlcHRpb24pOgotICAgICAgICAgICAgcGFzcwotCiAgICAgICAgICMgdXNlIGEgc3VicHJvY2VzcyB0byBoYXZlIG9ubHkgb25lIHRocmVhZCwgdG8gaGF2ZSBhIHRpbWVvdXQgb24gdGhlCiAgICAgICAgICMgYmxvY2tpbmcgcmVhZCBhbmQgdG8gbm90IHRvdWNoIHNpZ25hbCBoYW5kbGluZyBpbiB0aGlzIHByb2Nlc3MKICAgICAgICAgY29kZSA9ICIiImlmIDE6CkBAIC0zNTksMTggKzM4NSw4IEBACiAgICAgICAgICAgICAgICAgIyB3YWl0IHVudGlsIHRoZSBjaGlsZCBwcm9jZXNzIGlzIGxvYWRlZCBhbmQgaGFzIHN0YXJ0ZWQKICAgICAgICAgICAgICAgICBmaXJzdF9saW5lID0gcHJvY2Vzcy5zdGRvdXQucmVhZGxpbmUoKQogCi0gICAgICAgICAgICAgICAgIyBXYWl0IHRoZSBwcm9jZXNzIHdpdGggYSB0aW1lb3V0IG9mIDUgc2Vjb25kcwotICAgICAgICAgICAgICAgIHRpbWVvdXQgPSB0aW1lLnRpbWUoKSArIDUuMAotICAgICAgICAgICAgICAgIHdoaWxlIFRydWU6Ci0gICAgICAgICAgICAgICAgICAgIGlmIHRpbWVvdXQgPCB0aW1lLnRpbWUoKToKLSAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFRpbWVvdXQoKQotICAgICAgICAgICAgICAgICAgICBzdGF0dXMgPSBwcm9jZXNzLnBvbGwoKQotICAgICAgICAgICAgICAgICAgICBpZiBzdGF0dXMgaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICB0aW1lLnNsZWVwKDAuMSkKLQotICAgICAgICAgICAgICAgIHN0ZG91dCwgc3RkZXJyID0gcHJvY2Vzcy5jb21tdW5pY2F0ZSgpCi0gICAgICAgICAgICBleGNlcHQgVGltZW91dDoKKyAgICAgICAgICAgICAgICBzdGRvdXQsIHN0ZGVyciA9IHByb2Nlc3MuY29tbXVuaWNhdGUodGltZW91dD01LjApCisgICAgICAgICAgICBleGNlcHQgc3VicHJvY2Vzcy5UaW1lb3V0RXhwaXJlZDoKICAgICAgICAgICAgICAgICBwcm9jZXNzLmtpbGwoKQogICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICAgICAgZWxzZToKQEAgLTQxOSw4ICs0MzUsNiBAQAogCiAgICAgZGVmIHNpZ19hbHJtKHNlbGYsICphcmdzKToKICAgICAgICAgc2VsZi5obmRsX2NhbGxlZCA9IFRydWUKLSAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgcHJpbnQoIlNJR0FMUk0gaGFuZGxlciBpbnZva2VkIiwgYXJncykKIAogICAgIGRlZiBzaWdfdnRhbHJtKHNlbGYsICphcmdzKToKICAgICAgICAgc2VsZi5obmRsX2NhbGxlZCA9IFRydWUKQEAgLTQzMiwyMSArNDQ2LDEzIEBACiAgICAgICAgIGVsaWYgc2VsZi5obmRsX2NvdW50ID09IDM6CiAgICAgICAgICAgICAjIGRpc2FibGUgSVRJTUVSX1ZJUlRVQUwsIHRoaXMgZnVuY3Rpb24gc2hvdWxkbid0IGJlIGNhbGxlZCBhbnltb3JlCiAgICAgICAgICAgICBzaWduYWwuc2V0aXRpbWVyKHNpZ25hbC5JVElNRVJfVklSVFVBTCwgMCkKLSAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgICAgICBwcmludCgibGFzdCBTSUdWVEFMUk0gaGFuZGxlciBjYWxsIikKIAogICAgICAgICBzZWxmLmhuZGxfY291bnQgKz0gMQogCi0gICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgIHByaW50KCJTSUdWVEFMUk0gaGFuZGxlciBpbnZva2VkIiwgYXJncykKLQogICAgIGRlZiBzaWdfcHJvZihzZWxmLCAqYXJncyk6CiAgICAgICAgIHNlbGYuaG5kbF9jYWxsZWQgPSBUcnVlCiAgICAgICAgIHNpZ25hbC5zZXRpdGltZXIoc2lnbmFsLklUSU1FUl9QUk9GLCAwKQogCi0gICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgIHByaW50KCJTSUdQUk9GIGhhbmRsZXIgaW52b2tlZCIsIGFyZ3MpCi0KICAgICBkZWYgdGVzdF9pdGltZXJfZXhjKHNlbGYpOgogICAgICAgICAjIFhYWCBJJ20gYXNzdW1pbmcgLTEgaXMgYW4gaW52YWxpZCBpdGltZXIsIGJ1dCBtYXliZSBzb21lIHBsYXRmb3JtCiAgICAgICAgICMgZGVmaW5lcyBpdCA/CkBAIC00NTksMTAgKzQ2NSw3IEBACiAgICAgZGVmIHRlc3RfaXRpbWVyX3JlYWwoc2VsZik6CiAgICAgICAgIHNlbGYuaXRpbWVyID0gc2lnbmFsLklUSU1FUl9SRUFMCiAgICAgICAgIHNpZ25hbC5zZXRpdGltZXIoc2VsZi5pdGltZXIsIDEuMCkKLSAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgcHJpbnQoIlxuY2FsbCBwYXVzZSgpLi4uIikKICAgICAgICAgc2lnbmFsLnBhdXNlKCkKLQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuaG5kbF9jYWxsZWQsIFRydWUpCiAKICAgICAjIElzc3VlIDM4NjQsIHVua25vd24gaWYgdGhpcyBhZmZlY3RzIGVhcmxpZXIgdmVyc2lvbnMgb2YgZnJlZWJzZCBhbHNvCkBAIC01MTEsMTEgKzUxNCwzNTkgQEAKICAgICAgICAgIyBhbmQgdGhlIGhhbmRsZXIgc2hvdWxkIGhhdmUgYmVlbiBjYWxsZWQKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmhuZGxfY2FsbGVkLCBUcnVlKQogCisKK2NsYXNzIFBlbmRpbmdTaWduYWxzVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorICAgICIiIgorICAgIFRlc3QgcHRocmVhZF9zaWdtYXNrKCksIHB0aHJlYWRfa2lsbCgpLCBzaWdwZW5kaW5nKCkgYW5kIHNpZ3dhaXQoKQorICAgIGZ1bmN0aW9ucy4KKyAgICAiIiIKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3NpZ3BlbmRpbmcnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwuc2lncGVuZGluZygpJykKKyAgICBkZWYgdGVzdF9zaWdwZW5kaW5nX2VtcHR5KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpZ25hbC5zaWdwZW5kaW5nKCksIHNldCgpKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICdwdGhyZWFkX3NpZ21hc2snKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwucHRocmVhZF9zaWdtYXNrKCknKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAnc2lncGVuZGluZycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5zaWdwZW5kaW5nKCknKQorICAgIGRlZiB0ZXN0X3NpZ3BlbmRpbmcoc2VsZik6CisgICAgICAgIGNvZGUgPSAiIiJpZiAxOgorICAgICAgICAgICAgaW1wb3J0IG9zCisgICAgICAgICAgICBpbXBvcnQgc2lnbmFsCisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVyKHNpZ251bSwgZnJhbWUpOgorICAgICAgICAgICAgICAgIDEvMAorCisgICAgICAgICAgICBzaWdudW0gPSBzaWduYWwuU0lHVVNSMQorICAgICAgICAgICAgc2lnbmFsLnNpZ25hbChzaWdudW0sIGhhbmRsZXIpCisKKyAgICAgICAgICAgIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soc2lnbmFsLlNJR19CTE9DSywgW3NpZ251bV0pCisgICAgICAgICAgICBvcy5raWxsKG9zLmdldHBpZCgpLCBzaWdudW0pCisgICAgICAgICAgICBwZW5kaW5nID0gc2lnbmFsLnNpZ3BlbmRpbmcoKQorICAgICAgICAgICAgaWYgcGVuZGluZyAhPSB7c2lnbnVtfToKKyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oJyVzICE9IHslc30nICUgKHBlbmRpbmcsIHNpZ251bSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX1VOQkxPQ0ssIFtzaWdudW1dKQorICAgICAgICAgICAgZXhjZXB0IFplcm9EaXZpc2lvbkVycm9yOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJaZXJvRGl2aXNpb25FcnJvciBub3QgcmFpc2VkIikKKyAgICAgICAgIiIiCisgICAgICAgIGFzc2VydF9weXRob25fb2soJy1jJywgY29kZSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAncHRocmVhZF9raWxsJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgc2lnbmFsLnB0aHJlYWRfa2lsbCgpJykKKyAgICBkZWYgdGVzdF9wdGhyZWFkX2tpbGwoc2VsZik6CisgICAgICAgIGNvZGUgPSAiIiJpZiAxOgorICAgICAgICAgICAgaW1wb3J0IHNpZ25hbAorICAgICAgICAgICAgaW1wb3J0IHRocmVhZGluZworICAgICAgICAgICAgaW1wb3J0IHN5cworCisgICAgICAgICAgICBzaWdudW0gPSBzaWduYWwuU0lHVVNSMQorCisgICAgICAgICAgICBkZWYgaGFuZGxlcihzaWdudW0sIGZyYW1lKToKKyAgICAgICAgICAgICAgICAxLzAKKworICAgICAgICAgICAgc2lnbmFsLnNpZ25hbChzaWdudW0sIGhhbmRsZXIpCisKKyAgICAgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnZnJlZWJzZDYnOgorICAgICAgICAgICAgICAgICMgSXNzdWUgIzEyMzkyIGFuZCAjMTI0Njk6IHNlbmQgYSBzaWduYWwgdG8gdGhlIG1haW4gdGhyZWFkCisgICAgICAgICAgICAgICAgIyBkb2Vzbid0IHdvcmsgYmVmb3JlIHRoZSBjcmVhdGlvbiBvZiB0aGUgZmlyc3QgdGhyZWFkIG9uCisgICAgICAgICAgICAgICAgIyBGcmVlQlNEIDYKKyAgICAgICAgICAgICAgICBkZWYgbm9vcCgpOgorICAgICAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICAgICAgdGhyZWFkID0gdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9bm9vcCkKKyAgICAgICAgICAgICAgICB0aHJlYWQuc3RhcnQoKQorICAgICAgICAgICAgICAgIHRocmVhZC5qb2luKCkKKworICAgICAgICAgICAgdGlkID0gdGhyZWFkaW5nLmdldF9pZGVudCgpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfa2lsbCh0aWQsIHNpZ251bSkKKyAgICAgICAgICAgIGV4Y2VwdCBaZXJvRGl2aXNpb25FcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiWmVyb0RpdmlzaW9uRXJyb3Igbm90IHJhaXNlZCIpCisgICAgICAgICIiIgorICAgICAgICBhc3NlcnRfcHl0aG9uX29rKCctYycsIGNvZGUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3B0aHJlYWRfc2lnbWFzaycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soKScpCisgICAgZGVmIHdhaXRfaGVscGVyKHNlbGYsIGJsb2NrZWQsIHRlc3QpOgorICAgICAgICAiIiIKKyAgICAgICAgdGVzdDogYm9keSBvZiB0aGUgImRlZiB0ZXN0KHNpZ251bSk6IiBmdW5jdGlvbi4KKyAgICAgICAgYmxvY2tlZDogbnVtYmVyIG9mIHRoZSBibG9ja2VkIHNpZ25hbAorICAgICAgICAiIiIKKyAgICAgICAgY29kZSA9ICcnJ2lmIDE6CisgICAgICAgIGltcG9ydCBzaWduYWwKKyAgICAgICAgaW1wb3J0IHN5cworCisgICAgICAgIGRlZiBoYW5kbGVyKHNpZ251bSwgZnJhbWUpOgorICAgICAgICAgICAgMS8wCisKKyAgICAgICAgJXMKKworICAgICAgICBibG9ja2VkID0gJXMKKyAgICAgICAgc2lnbnVtID0gc2lnbmFsLlNJR0FMUk0KKworICAgICAgICAjIGNoaWxkOiBibG9jayBhbmQgd2FpdCB0aGUgc2lnbmFsCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbnVtLCBoYW5kbGVyKQorICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX0JMT0NLLCBbYmxvY2tlZF0pCisKKyAgICAgICAgICAgICMgRG8gdGhlIHRlc3RzCisgICAgICAgICAgICB0ZXN0KHNpZ251bSkKKworICAgICAgICAgICAgIyBUaGUgaGFuZGxlciBtdXN0IG5vdCBiZSBjYWxsZWQgb24gdW5ibG9jaworICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soc2lnbmFsLlNJR19VTkJMT0NLLCBbYmxvY2tlZF0pCisgICAgICAgICAgICBleGNlcHQgWmVyb0RpdmlzaW9uRXJyb3I6CisgICAgICAgICAgICAgICAgcHJpbnQoInRoZSBzaWduYWwgaGFuZGxlciBoYXMgYmVlbiBjYWxsZWQiLAorICAgICAgICAgICAgICAgICAgICAgIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgICAgICAgICBzeXMuZXhpdCgxKQorICAgICAgICBleGNlcHQgQmFzZUV4Y2VwdGlvbiBhcyBlcnI6CisgICAgICAgICAgICBwcmludCgiZXJyb3I6IHt9Ii5mb3JtYXQoZXJyKSwgZmlsZT1zeXMuc3RkZXJyKQorICAgICAgICAgICAgc3lzLnN0ZGVyci5mbHVzaCgpCisgICAgICAgICAgICBzeXMuZXhpdCgxKQorICAgICAgICAnJycgJSAodGVzdC5zdHJpcCgpLCBibG9ja2VkKQorCisgICAgICAgICMgc2lnKndhaXQqIG11c3QgYmUgY2FsbGVkIHdpdGggdGhlIHNpZ25hbCBibG9ja2VkOiBzaW5jZSB0aGUgY3VycmVudAorICAgICAgICAjIHByb2Nlc3MgbWlnaHQgaGF2ZSBzZXZlcmFsIHRocmVhZHMgcnVubmluZywgdXNlIGEgc3VicHJvY2VzcyB0byBoYXZlCisgICAgICAgICMgYSBzaW5nbGUgdGhyZWFkLgorICAgICAgICBhc3NlcnRfcHl0aG9uX29rKCctYycsIGNvZGUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3NpZ3dhaXQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwuc2lnd2FpdCgpJykKKyAgICBkZWYgdGVzdF9zaWd3YWl0KHNlbGYpOgorICAgICAgICBzZWxmLndhaXRfaGVscGVyKHNpZ25hbC5TSUdBTFJNLCAnJycKKyAgICAgICAgZGVmIHRlc3Qoc2lnbnVtKToKKyAgICAgICAgICAgIHNpZ25hbC5hbGFybSgxKQorICAgICAgICAgICAgcmVjZWl2ZWQgPSBzaWduYWwuc2lnd2FpdChbc2lnbnVtXSkKKyAgICAgICAgICAgIGlmIHJlY2VpdmVkICE9IHNpZ251bToKKyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oJ3JlY2VpdmVkICVzLCBub3QgJXMnICUgKHJlY2VpdmVkLCBzaWdudW0pKQorICAgICAgICAnJycpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3NpZ3dhaXRpbmZvJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgc2lnbmFsLnNpZ3dhaXRpbmZvKCknKQorICAgIGRlZiB0ZXN0X3NpZ3dhaXRpbmZvKHNlbGYpOgorICAgICAgICBzZWxmLndhaXRfaGVscGVyKHNpZ25hbC5TSUdBTFJNLCAnJycKKyAgICAgICAgZGVmIHRlc3Qoc2lnbnVtKToKKyAgICAgICAgICAgIHNpZ25hbC5hbGFybSgxKQorICAgICAgICAgICAgaW5mbyA9IHNpZ25hbC5zaWd3YWl0aW5mbyhbc2lnbnVtXSkKKyAgICAgICAgICAgIGlmIGluZm8uc2lfc2lnbm8gIT0gc2lnbnVtOgorICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiaW5mby5zaV9zaWdubyAhPSAlcyIgJSBzaWdudW0pCisgICAgICAgICcnJykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAnc2lndGltZWR3YWl0JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgc2lnbmFsLnNpZ3RpbWVkd2FpdCgpJykKKyAgICBkZWYgdGVzdF9zaWd0aW1lZHdhaXQoc2VsZik6CisgICAgICAgIHNlbGYud2FpdF9oZWxwZXIoc2lnbmFsLlNJR0FMUk0sICcnJworICAgICAgICBkZWYgdGVzdChzaWdudW0pOgorICAgICAgICAgICAgc2lnbmFsLmFsYXJtKDEpCisgICAgICAgICAgICBpbmZvID0gc2lnbmFsLnNpZ3RpbWVkd2FpdChbc2lnbnVtXSwgMTAuMTAwMCkKKyAgICAgICAgICAgIGlmIGluZm8uc2lfc2lnbm8gIT0gc2lnbnVtOgorICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbignaW5mby5zaV9zaWdubyAhPSAlcycgJSBzaWdudW0pCisgICAgICAgICcnJykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAnc2lndGltZWR3YWl0JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgc2lnbmFsLnNpZ3RpbWVkd2FpdCgpJykKKyAgICBkZWYgdGVzdF9zaWd0aW1lZHdhaXRfcG9sbChzZWxmKToKKyAgICAgICAgIyBjaGVjayB0aGF0IHBvbGxpbmcgd2l0aCBzaWd0aW1lZHdhaXQgd29ya3MKKyAgICAgICAgc2VsZi53YWl0X2hlbHBlcihzaWduYWwuU0lHQUxSTSwgJycnCisgICAgICAgIGRlZiB0ZXN0KHNpZ251bSk6CisgICAgICAgICAgICBpbXBvcnQgb3MKKyAgICAgICAgICAgIG9zLmtpbGwob3MuZ2V0cGlkKCksIHNpZ251bSkKKyAgICAgICAgICAgIGluZm8gPSBzaWduYWwuc2lndGltZWR3YWl0KFtzaWdudW1dLCAwKQorICAgICAgICAgICAgaWYgaW5mby5zaV9zaWdubyAhPSBzaWdudW06CisgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCdpbmZvLnNpX3NpZ25vICE9ICVzJyAlIHNpZ251bSkKKyAgICAgICAgJycnKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICdzaWd0aW1lZHdhaXQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwuc2lndGltZWR3YWl0KCknKQorICAgIGRlZiB0ZXN0X3NpZ3RpbWVkd2FpdF90aW1lb3V0KHNlbGYpOgorICAgICAgICBzZWxmLndhaXRfaGVscGVyKHNpZ25hbC5TSUdBTFJNLCAnJycKKyAgICAgICAgZGVmIHRlc3Qoc2lnbnVtKToKKyAgICAgICAgICAgIHJlY2VpdmVkID0gc2lnbmFsLnNpZ3RpbWVkd2FpdChbc2lnbnVtXSwgMS4wKQorICAgICAgICAgICAgaWYgcmVjZWl2ZWQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJyZWNlaXZlZD0lciIgJSAocmVjZWl2ZWQsKSkKKyAgICAgICAgJycnKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICdzaWd0aW1lZHdhaXQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwuc2lndGltZWR3YWl0KCknKQorICAgIGRlZiB0ZXN0X3NpZ3RpbWVkd2FpdF9uZWdhdGl2ZV90aW1lb3V0KHNlbGYpOgorICAgICAgICBzaWdudW0gPSBzaWduYWwuU0lHQUxSTQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzaWduYWwuc2lndGltZWR3YWl0LCBbc2lnbnVtXSwgLTEuMCkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAnc2lnd2FpdGluZm8nKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwuc2lnd2FpdGluZm8oKScpCisgICAgZGVmIHRlc3Rfc2lnd2FpdGluZm9faW50ZXJydXB0ZWQoc2VsZik6CisgICAgICAgIHNlbGYud2FpdF9oZWxwZXIoc2lnbmFsLlNJR1VTUjEsICcnJworICAgICAgICBkZWYgdGVzdChzaWdudW0pOgorICAgICAgICAgICAgaW1wb3J0IGVycm5vCisKKyAgICAgICAgICAgIGhuZGxfY2FsbGVkID0gVHJ1ZQorICAgICAgICAgICAgZGVmIGFsYXJtX2hhbmRsZXIoc2lnbnVtLCBmcmFtZSk6CisgICAgICAgICAgICAgICAgaG5kbF9jYWxsZWQgPSBGYWxzZQorCisgICAgICAgICAgICBzaWduYWwuc2lnbmFsKHNpZ25hbC5TSUdBTFJNLCBhbGFybV9oYW5kbGVyKQorICAgICAgICAgICAgc2lnbmFsLmFsYXJtKDEpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2lnbmFsLnNpZ3dhaXRpbmZvKFtzaWduYWwuU0lHVVNSMV0pCisgICAgICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgorICAgICAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRUlOVFI6CisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBobmRsX2NhbGxlZDoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiU0lHQUxSTSBoYW5kbGVyIG5vdCBjYWxsZWQiKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiRXhwZWN0ZWQgRUlOVFIgdG8gYmUgcmFpc2VkIGJ5IHNpZ3dhaXRpbmZvIikKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJFeHBlY3RlZCBFSU5UUiB0byBiZSByYWlzZWQgYnkgc2lnd2FpdGluZm8iKQorICAgICAgICAnJycpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3NpZ3dhaXQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwuc2lnd2FpdCgpJykKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3B0aHJlYWRfc2lnbWFzaycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soKScpCisgICAgQHVuaXR0ZXN0LnNraXBJZih0aHJlYWRpbmcgaXMgTm9uZSwgInRlc3QgbmVlZHMgdGhyZWFkaW5nIG1vZHVsZSIpCisgICAgZGVmIHRlc3Rfc2lnd2FpdF90aHJlYWQoc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCBjYWxsaW5nIHNpZ3dhaXQoKSBmcm9tIGEgdGhyZWFkIGRvZXNuJ3Qgc3VzcGVuZCB0aGUgd2hvbGUKKyAgICAgICAgIyBwcm9jZXNzLiBBIG5ldyBpbnRlcnByZXRlciBpcyBzcGF3bmVkIHRvIGF2b2lkIHByb2JsZW1zIHdoZW4gbWl4aW5nCisgICAgICAgICMgdGhyZWFkcyBhbmQgZm9yaygpOiBvbmx5IGFzeW5jLXNhZmUgZnVuY3Rpb25zIGFyZSBhbGxvd2VkIGJldHdlZW4KKyAgICAgICAgIyBmb3JrKCkgYW5kIGV4ZWMoKS4KKyAgICAgICAgYXNzZXJ0X3B5dGhvbl9vaygiLWMiLCAiIiJpZiBUcnVlOgorICAgICAgICAgICAgaW1wb3J0IG9zLCB0aHJlYWRpbmcsIHN5cywgdGltZSwgc2lnbmFsCisKKyAgICAgICAgICAgICMgdGhlIGRlZmF1bHQgaGFuZGxlciB0ZXJtaW5hdGVzIHRoZSBwcm9jZXNzCisgICAgICAgICAgICBzaWdudW0gPSBzaWduYWwuU0lHVVNSMQorCisgICAgICAgICAgICBkZWYga2lsbF9sYXRlcigpOgorICAgICAgICAgICAgICAgICMgd2FpdCB1bnRpbCB0aGUgbWFpbiB0aHJlYWQgaXMgd2FpdGluZyBpbiBzaWd3YWl0KCkKKyAgICAgICAgICAgICAgICB0aW1lLnNsZWVwKDEpCisgICAgICAgICAgICAgICAgb3Mua2lsbChvcy5nZXRwaWQoKSwgc2lnbnVtKQorCisgICAgICAgICAgICAjIHRoZSBzaWduYWwgbXVzdCBiZSBibG9ja2VkIGJ5IGFsbCB0aGUgdGhyZWFkcworICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX0JMT0NLLCBbc2lnbnVtXSkKKyAgICAgICAgICAgIGtpbGxlciA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PWtpbGxfbGF0ZXIpCisgICAgICAgICAgICBraWxsZXIuc3RhcnQoKQorICAgICAgICAgICAgcmVjZWl2ZWQgPSBzaWduYWwuc2lnd2FpdChbc2lnbnVtXSkKKyAgICAgICAgICAgIGlmIHJlY2VpdmVkICE9IHNpZ251bToKKyAgICAgICAgICAgICAgICBwcmludCgic2lnd2FpdCgpIHJlY2VpdmVkICVzLCBub3QgJXMiICUgKHJlY2VpdmVkLCBzaWdudW0pLAorICAgICAgICAgICAgICAgICAgICAgIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgICAgICAgICBzeXMuZXhpdCgxKQorICAgICAgICAgICAga2lsbGVyLmpvaW4oKQorICAgICAgICAgICAgIyB1bmJsb2NrIHRoZSBzaWduYWwsIHdoaWNoIHNob3VsZCBoYXZlIGJlZW4gY2xlYXJlZCBieSBzaWd3YWl0KCkKKyAgICAgICAgICAgIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soc2lnbmFsLlNJR19VTkJMT0NLLCBbc2lnbnVtXSkKKyAgICAgICAgIiIiKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICdwdGhyZWFkX3NpZ21hc2snKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwucHRocmVhZF9zaWdtYXNrKCknKQorICAgIGRlZiB0ZXN0X3B0aHJlYWRfc2lnbWFza19hcmd1bWVudHMoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2lnbmFsLnB0aHJlYWRfc2lnbWFzaykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzaWduYWwucHRocmVhZF9zaWdtYXNrLCAxKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2ssIDEsIDIsIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2ssIDE3MDAsIFtdKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICdwdGhyZWFkX3NpZ21hc2snKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwucHRocmVhZF9zaWdtYXNrKCknKQorICAgIGRlZiB0ZXN0X3B0aHJlYWRfc2lnbWFzayhzZWxmKToKKyAgICAgICAgY29kZSA9ICIiImlmIDE6CisgICAgICAgIGltcG9ydCBzaWduYWwKKyAgICAgICAgaW1wb3J0IG9zOyBpbXBvcnQgdGhyZWFkaW5nCisKKyAgICAgICAgZGVmIGhhbmRsZXIoc2lnbnVtLCBmcmFtZSk6CisgICAgICAgICAgICAxLzAKKworICAgICAgICBkZWYga2lsbChzaWdudW0pOgorICAgICAgICAgICAgb3Mua2lsbChvcy5nZXRwaWQoKSwgc2lnbnVtKQorCisgICAgICAgIGRlZiByZWFkX3NpZ21hc2soKToKKyAgICAgICAgICAgIHJldHVybiBzaWduYWwucHRocmVhZF9zaWdtYXNrKHNpZ25hbC5TSUdfQkxPQ0ssIFtdKQorCisgICAgICAgIHNpZ251bSA9IHNpZ25hbC5TSUdVU1IxCisKKyAgICAgICAgIyBJbnN0YWxsIG91ciBzaWduYWwgaGFuZGxlcgorICAgICAgICBvbGRfaGFuZGxlciA9IHNpZ25hbC5zaWduYWwoc2lnbnVtLCBoYW5kbGVyKQorCisgICAgICAgICMgVW5ibG9jayBTSUdVU1IxIChhbmQgY29weSB0aGUgb2xkIG1hc2spIHRvIHRlc3Qgb3VyIHNpZ25hbCBoYW5kbGVyCisgICAgICAgIG9sZF9tYXNrID0gc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX1VOQkxPQ0ssIFtzaWdudW1dKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBraWxsKHNpZ251bSkKKyAgICAgICAgZXhjZXB0IFplcm9EaXZpc2lvbkVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJaZXJvRGl2aXNpb25FcnJvciBub3QgcmFpc2VkIikKKworICAgICAgICAjIEJsb2NrIGFuZCB0aGVuIHJhaXNlIFNJR1VTUjEuIFRoZSBzaWduYWwgaXMgYmxvY2tlZDogdGhlIHNpZ25hbAorICAgICAgICAjIGhhbmRsZXIgaXMgbm90IGNhbGxlZCwgYW5kIHRoZSBzaWduYWwgaXMgbm93IHBlbmRpbmcKKyAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX0JMT0NLLCBbc2lnbnVtXSkKKyAgICAgICAga2lsbChzaWdudW0pCisKKyAgICAgICAgIyBDaGVjayB0aGUgbmV3IG1hc2sKKyAgICAgICAgYmxvY2tlZCA9IHJlYWRfc2lnbWFzaygpCisgICAgICAgIGlmIHNpZ251bSBub3QgaW4gYmxvY2tlZDoKKyAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiJXMgbm90IGluICVzIiAlIChzaWdudW0sIGJsb2NrZWQpKQorICAgICAgICBpZiBvbGRfbWFzayBeIGJsb2NrZWQgIT0ge3NpZ251bX06CisgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIiVzIF4gJXMgIT0geyVzfSIgJSAob2xkX21hc2ssIGJsb2NrZWQsIHNpZ251bSkpCisKKyAgICAgICAgIyBVbmJsb2NrIFNJR1VTUjEKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyB1bmJsb2NrIHRoZSBwZW5kaW5nIHNpZ25hbCBjYWxscyBpbW1lZGlhdGx5IHRoZSBzaWduYWwgaGFuZGxlcgorICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX1VOQkxPQ0ssIFtzaWdudW1dKQorICAgICAgICBleGNlcHQgWmVyb0RpdmlzaW9uRXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIlplcm9EaXZpc2lvbkVycm9yIG5vdCByYWlzZWQiKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBraWxsKHNpZ251bSkKKyAgICAgICAgZXhjZXB0IFplcm9EaXZpc2lvbkVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJaZXJvRGl2aXNpb25FcnJvciBub3QgcmFpc2VkIikKKworICAgICAgICAjIENoZWNrIHRoZSBuZXcgbWFzaworICAgICAgICB1bmJsb2NrZWQgPSByZWFkX3NpZ21hc2soKQorICAgICAgICBpZiBzaWdudW0gaW4gdW5ibG9ja2VkOgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCIlcyBpbiAlcyIgJSAoc2lnbnVtLCB1bmJsb2NrZWQpKQorICAgICAgICBpZiBibG9ja2VkIF4gdW5ibG9ja2VkICE9IHtzaWdudW19OgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCIlcyBeICVzICE9IHslc30iICUgKGJsb2NrZWQsIHVuYmxvY2tlZCwgc2lnbnVtKSkKKyAgICAgICAgaWYgb2xkX21hc2sgIT0gdW5ibG9ja2VkOgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCIlcyAhPSAlcyIgJSAob2xkX21hc2ssIHVuYmxvY2tlZCkpCisgICAgICAgICIiIgorICAgICAgICBhc3NlcnRfcHl0aG9uX29rKCctYycsIGNvZGUpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAnZnJlZWJzZDYnLAorICAgICAgICAiaXNzdWUgIzEyMzkyOiBzZW5kIGEgc2lnbmFsIHRvIHRoZSBtYWluIHRocmVhZCBkb2Vzbid0IHdvcmsgIgorICAgICAgICAiYmVmb3JlIHRoZSBjcmVhdGlvbiBvZiB0aGUgZmlyc3QgdGhyZWFkIG9uIEZyZWVCU0QgNiIpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICdwdGhyZWFkX2tpbGwnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwucHRocmVhZF9raWxsKCknKQorICAgIGRlZiB0ZXN0X3B0aHJlYWRfa2lsbF9tYWluX3RocmVhZChzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoYXQgYSBzaWduYWwgY2FuIGJlIHNlbnQgdG8gdGhlIG1haW4gdGhyZWFkIHdpdGggcHRocmVhZF9raWxsKCkKKyAgICAgICAgIyBiZWZvcmUgYW55IG90aGVyIHRocmVhZCBoYXMgYmVlbiBjcmVhdGVkIChzZWUgaXNzdWUgIzEyMzkyKS4KKyAgICAgICAgY29kZSA9ICIiImlmIFRydWU6CisgICAgICAgICAgICBpbXBvcnQgdGhyZWFkaW5nCisgICAgICAgICAgICBpbXBvcnQgc2lnbmFsCisgICAgICAgICAgICBpbXBvcnQgc3lzCisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVyKHNpZ251bSwgZnJhbWUpOgorICAgICAgICAgICAgICAgIHN5cy5leGl0KDMpCisKKyAgICAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbmFsLlNJR1VTUjEsIGhhbmRsZXIpCisgICAgICAgICAgICBzaWduYWwucHRocmVhZF9raWxsKHRocmVhZGluZy5nZXRfaWRlbnQoKSwgc2lnbmFsLlNJR1VTUjEpCisgICAgICAgICAgICBzeXMuZXhpdCgyKQorICAgICAgICAiIiIKKworICAgICAgICB3aXRoIHNwYXduX3B5dGhvbignLWMnLCBjb2RlKSBhcyBwcm9jZXNzOgorICAgICAgICAgICAgc3Rkb3V0LCBzdGRlcnIgPSBwcm9jZXNzLmNvbW11bmljYXRlKCkKKyAgICAgICAgICAgIGV4aXRjb2RlID0gcHJvY2Vzcy53YWl0KCkKKyAgICAgICAgICAgIGlmIGV4aXRjb2RlICE9IDM6CisgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJDaGlsZCBlcnJvciAoZXhpdCBjb2RlICVzKTogJXMiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGV4aXRjb2RlLCBzdGRvdXQpKQorCisKIGRlZiB0ZXN0X21haW4oKToKICAgICB0cnk6Ci0gICAgICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KEJhc2ljU2lnbmFsVGVzdHMsIEludGVyUHJvY2Vzc1NpZ25hbFRlc3RzLAorICAgICAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChQb3NpeFRlc3RzLCBJbnRlclByb2Nlc3NTaWduYWxUZXN0cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2FrZXVwU2lnbmFsVGVzdHMsIFNpZ2ludGVycnVwdFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIEl0aW1lclRlc3QsIFdpbmRvd3NTaWduYWxUZXN0cykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSXRpbWVyVGVzdCwgV2luZG93c1NpZ25hbFRlc3RzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQZW5kaW5nU2lnbmFsc1Rlc3RzKQogICAgIGZpbmFsbHk6CiAgICAgICAgIHN1cHBvcnQucmVhcF9jaGlsZHJlbigpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfc210cGQucHkgYi9MaWIvdGVzdC90ZXN0X3NtdHBkLnB5CmluZGV4IDY4Y2NjMjkuLmRkMjM1NjUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc210cGQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9zbXRwZC5weQpAQCAtMjM5LDQ5ICsyMzksNDkgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNoYW5uZWwuc29ja2V0Lmxhc3QsIGInNTAxIFN5bnRheDogUlNFVFxyXG4nKQogCiAgICAgZGVmIHRlc3RfYXR0cmlidXRlX2RlcHJlY2F0aW9ucyhzZWxmKToKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNwYW0gPSBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19zZXJ2ZXIKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX3NlcnZlciA9ICdzcGFtJwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc3BhbSA9IHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX2xpbmUKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX2xpbmUgPSAnc3BhbScKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNwYW0gPSBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19zdGF0ZQotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fc3RhdGUgPSAnc3BhbScKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNwYW0gPSBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19ncmVldGluZwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fZ3JlZXRpbmcgPSAnc3BhbScKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNwYW0gPSBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19tYWlsZnJvbQotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fbWFpbGZyb20gPSAnc3BhbScKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNwYW0gPSBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19yY3B0dG9zCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19yY3B0dG9zID0gJ3NwYW0nCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzcGFtID0gc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fZGF0YQotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fZGF0YSA9ICdzcGFtJwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc3BhbSA9IHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX2ZxZG4KLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX2ZxZG4gPSAnc3BhbScKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNwYW0gPSBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19wZWVyCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19wZWVyID0gJ3NwYW0nCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzcGFtID0gc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fY29ubgotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fY29ubiA9ICdzcGFtJwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc3BhbSA9IHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX2FkZHIKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX2FkZHIgPSAnc3BhbScKIAogZGVmIHRlc3RfbWFpbigpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zbXRwbGliLnB5IGIvTGliL3Rlc3QvdGVzdF9zbXRwbGliLnB5CmluZGV4IDJjYjBkMWEuLjA1ZDk3ZWYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc210cGxpYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NtdHBsaWIucHkKQEAgLTcyLDYgKzcyLDE0IEBACiAgICAgICAgIHNtdHAgPSBzbXRwbGliLlNNVFAoSE9TVCwgc2VsZi5wb3J0KQogICAgICAgICBzbXRwLmNsb3NlKCkKIAorICAgIGRlZiB0ZXN0U291cmNlQWRkcmVzcyhzZWxmKToKKyAgICAgICAgbW9ja19zb2NrZXQucmVwbHlfd2l0aChiIjIyMCBIb2xhIG11bmRvIikKKyAgICAgICAgIyBjb25uZWN0cworICAgICAgICBzbXRwID0gc210cGxpYi5TTVRQKEhPU1QsIHNlbGYucG9ydCwKKyAgICAgICAgICAgICAgICBzb3VyY2VfYWRkcmVzcz0oJzEyNy4wLjAuMScsMTk4NzYpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNtdHAuc291cmNlX2FkZHJlc3MsICgnMTI3LjAuMC4xJywgMTk4NzYpKQorICAgICAgICBzbXRwLmNsb3NlKCkKKwogICAgIGRlZiB0ZXN0QmFzaWMyKHNlbGYpOgogICAgICAgICBtb2NrX3NvY2tldC5yZXBseV93aXRoKGIiMjIwIEhvbGEgbXVuZG8iKQogICAgICAgICAjIGNvbm5lY3RzLCBpbmNsdWRlIHBvcnQgaW4gaG9zdCBuYW1lCkBAIC0yMDQsNiArMjEyLDIwIEBACiAgICAgICAgIHNtdHAgPSBzbXRwbGliLlNNVFAoSE9TVCwgc2VsZi5wb3J0LCBsb2NhbF9ob3N0bmFtZT0nbG9jYWxob3N0JywgdGltZW91dD0zKQogICAgICAgICBzbXRwLnF1aXQoKQogCisgICAgZGVmIHRlc3RTb3VyY2VBZGRyZXNzKHNlbGYpOgorICAgICAgICAjIGNvbm5lY3QKKyAgICAgICAgcG9ydCA9IHN1cHBvcnQuZmluZF91bnVzZWRfcG9ydCgpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNtdHAgPSBzbXRwbGliLlNNVFAoSE9TVCwgc2VsZi5wb3J0LCBsb2NhbF9ob3N0bmFtZT0nbG9jYWxob3N0JywKKyAgICAgICAgICAgICAgICAgICAgdGltZW91dD0zLCBzb3VyY2VfYWRkcmVzcz0oJzEyNy4wLjAuMScsIHBvcnQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzbXRwLnNvdXJjZV9hZGRyZXNzLCAoJzEyNy4wLjAuMScsIHBvcnQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzbXRwLmxvY2FsX2hvc3RuYW1lLCAnbG9jYWxob3N0JykKKyAgICAgICAgICAgIHNtdHAucXVpdCgpCisgICAgICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGU6CisgICAgICAgICAgICBpZiBlLmVycm5vID09IGVycm5vLkVBRERSSU5VU0U6CisgICAgICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiY291bGRuJ3QgYmluZCB0byBwb3J0ICVkIiAlIHBvcnQpCisgICAgICAgICAgICByYWlzZQorCiAgICAgZGVmIHRlc3ROT09QKHNlbGYpOgogICAgICAgICBzbXRwID0gc210cGxpYi5TTVRQKEhPU1QsIHNlbGYucG9ydCwgbG9jYWxfaG9zdG5hbWU9J2xvY2FsaG9zdCcsIHRpbWVvdXQ9MykKICAgICAgICAgZXhwZWN0ZWQgPSAoMjUwLCBiJ09rJykKQEAgLTU2MCw2ICs1ODIsOSBAQAogIyBTaW11bGF0ZWQgU01UUCBjaGFubmVsICYgc2VydmVyCiBjbGFzcyBTaW1TTVRQQ2hhbm5lbChzbXRwZC5TTVRQQ2hhbm5lbCk6CiAKKyAgICAjIEZvciB0ZXN0aW5nIGZhaWx1cmVzIGluIFFVSVQgd2hlbiB1c2luZyB0aGUgY29udGV4dCBtYW5hZ2VyIEFQSS4KKyAgICBxdWl0X3Jlc3BvbnNlID0gTm9uZQorCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGV4dHJhX2ZlYXR1cmVzLCAqYXJncywgKiprdyk6CiAgICAgICAgIHNlbGYuX2V4dHJhZmVhdHVyZXMgPSAnJy5qb2luKAogICAgICAgICAgICAgWyAiMjUwLXswfVxyXG4iLmZvcm1hdCh4KSBmb3IgeCBpbiBleHRyYV9mZWF0dXJlcyBdKQpAQCAtNjEwLDE5ICs2MzUsMzEgQEAKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHNlbGYucHVzaCgnNTUwIE5vIGFjY2VzcyBmb3IgeW91IScpCiAKKyAgICBkZWYgc210cF9RVUlUKHNlbGYsIGFyZyk6CisgICAgICAgICMgYXJncyBpcyBpZ25vcmVkCisgICAgICAgIGlmIHNlbGYucXVpdF9yZXNwb25zZSBpcyBOb25lOgorICAgICAgICAgICAgc3VwZXIoU2ltU01UUENoYW5uZWwsIHNlbGYpLnNtdHBfUVVJVChhcmcpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLnB1c2goc2VsZi5xdWl0X3Jlc3BvbnNlKQorICAgICAgICAgICAgc2VsZi5jbG9zZV93aGVuX2RvbmUoKQorCiAgICAgZGVmIGhhbmRsZV9lcnJvcihzZWxmKToKICAgICAgICAgcmFpc2UKIAogCiBjbGFzcyBTaW1TTVRQU2VydmVyKHNtdHBkLlNNVFBTZXJ2ZXIpOgogCisgICAgIyBGb3IgdGVzdGluZyBmYWlsdXJlcyBpbiBRVUlUIHdoZW4gdXNpbmcgdGhlIGNvbnRleHQgbWFuYWdlciBBUEkuCisgICAgcXVpdF9yZXNwb25zZSA9IE5vbmUKKwogICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqYXJncywgKiprdyk6CiAgICAgICAgIHNlbGYuX2V4dHJhX2ZlYXR1cmVzID0gW10KICAgICAgICAgc210cGQuU01UUFNlcnZlci5fX2luaXRfXyhzZWxmLCAqYXJncywgKiprdykKIAogICAgIGRlZiBoYW5kbGVfYWNjZXB0ZWQoc2VsZiwgY29ubiwgYWRkcik6Ci0gICAgICAgIHNlbGYuX1NNVFBjaGFubmVsID0gU2ltU01UUENoYW5uZWwoc2VsZi5fZXh0cmFfZmVhdHVyZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZiwgY29ubiwgYWRkcikKKyAgICAgICAgc2VsZi5fU01UUGNoYW5uZWwgPSBTaW1TTVRQQ2hhbm5lbCgKKyAgICAgICAgICAgIHNlbGYuX2V4dHJhX2ZlYXR1cmVzLCBzZWxmLCBjb25uLCBhZGRyKQorICAgICAgICBzZWxmLl9TTVRQY2hhbm5lbC5xdWl0X3Jlc3BvbnNlID0gc2VsZi5xdWl0X3Jlc3BvbnNlCiAKICAgICBkZWYgcHJvY2Vzc19tZXNzYWdlKHNlbGYsIHBlZXIsIG1haWxmcm9tLCByY3B0dG9zLCBkYXRhKToKICAgICAgICAgcGFzcwpAQCAtNzUyLDYgKzc4OSwyNSBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihzaW1fYXV0aF9jcmVkZW50aWFsc1snY3JhbS1tZDUnXSwgc3RyKGVycikpCiAgICAgICAgIHNtdHAuY2xvc2UoKQogCisgICAgZGVmIHRlc3Rfd2l0aF9zdGF0ZW1lbnQoc2VsZik6CisgICAgICAgIHdpdGggc210cGxpYi5TTVRQKEhPU1QsIHNlbGYucG9ydCkgYXMgc210cDoKKyAgICAgICAgICAgIGNvZGUsIG1lc3NhZ2UgPSBzbXRwLm5vb3AoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb2RlLCAyNTApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHNtdHBsaWIuU01UUFNlcnZlckRpc2Nvbm5lY3RlZCwgc210cC5zZW5kLCBiJ2ZvbycpCisgICAgICAgIHdpdGggc210cGxpYi5TTVRQKEhPU1QsIHNlbGYucG9ydCkgYXMgc210cDoKKyAgICAgICAgICAgIHNtdHAuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzbXRwbGliLlNNVFBTZXJ2ZXJEaXNjb25uZWN0ZWQsIHNtdHAuc2VuZCwgYidmb28nKQorCisgICAgZGVmIHRlc3Rfd2l0aF9zdGF0ZW1lbnRfUVVJVF9mYWlsdXJlKHNlbGYpOgorICAgICAgICBzZWxmLnNlcnYucXVpdF9yZXNwb25zZSA9ICc0MjEgUVVJVCBGQUlMRUQnCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc210cGxpYi5TTVRQUmVzcG9uc2VFeGNlcHRpb24pIGFzIGVycm9yOgorICAgICAgICAgICAgd2l0aCBzbXRwbGliLlNNVFAoSE9TVCwgc2VsZi5wb3J0KSBhcyBzbXRwOgorICAgICAgICAgICAgICAgIHNtdHAubm9vcCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXJyb3IuZXhjZXB0aW9uLnNtdHBfY29kZSwgNDIxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVycm9yLmV4Y2VwdGlvbi5zbXRwX2Vycm9yLCBiJ1FVSVQgRkFJTEVEJykKKyAgICAgICAgIyBXZSBkb24ndCBuZWVkIHRvIGNsZWFuIHVwIHNlbGYuc2Vydi5xdWl0X3Jlc3BvbnNlIGJlY2F1c2UgYSBuZXcKKyAgICAgICAgIyBzZXJ2ZXIgaXMgYWx3YXlzIGluc3RhbnRpYXRlZCBpbiB0aGUgc2V0VXAoKS4KKwogICAgICNUT0RPOiBhZGQgdGVzdHMgZm9yIGNvcnJlY3QgQVVUSCBtZXRob2QgZmFsbGJhY2sgbm93IHRoYXQgdGhlCiAgICAgI3Rlc3QgaW5mcmFzdHJ1Y3R1cmUgY2FuIHN1cHBvcnQgaXQuCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfc210cG5ldC5weSBiL0xpYi90ZXN0L3Rlc3Rfc210cG5ldC5weQppbmRleCAwMTk4YWI2Li44NjIyNGVmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3NtdHBuZXQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9zbXRwbmV0LnB5CkBAIC00LDI4ICs0LDYwIEBACiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGltcG9ydCBzbXRwbGliCiAKK3NzbCA9IHN1cHBvcnQuaW1wb3J0X21vZHVsZSgic3NsIikKKwogc3VwcG9ydC5yZXF1aXJlcygibmV0d29yayIpCiAKKworY2xhc3MgU210cFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIHRlc3RTZXJ2ZXIgPSAnc210cC5nbWFpbC5jb20nCisgICAgcmVtb3RlUG9ydCA9IDI1CisgICAgY29udGV4dCA9IHNzbC5TU0xDb250ZXh0KHNzbC5QUk9UT0NPTF9TU0x2MjMpCisKKyAgICBkZWYgdGVzdF9jb25uZWN0X3N0YXJ0dGxzKHNlbGYpOgorICAgICAgICBzdXBwb3J0LmdldF9hdHRyaWJ1dGUoc210cGxpYiwgJ1NNVFBfU1NMJykKKyAgICAgICAgd2l0aCBzdXBwb3J0LnRyYW5zaWVudF9pbnRlcm5ldChzZWxmLnRlc3RTZXJ2ZXIpOgorICAgICAgICAgICAgc2VydmVyID0gc210cGxpYi5TTVRQKHNlbGYudGVzdFNlcnZlciwgc2VsZi5yZW1vdGVQb3J0KQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlcnZlci5zdGFydHRscyhjb250ZXh0PXNlbGYuY29udGV4dCkKKyAgICAgICAgICAgIGV4Y2VwdCBzbXRwbGliLlNNVFBFeGNlcHRpb24gYXMgZToKKyAgICAgICAgICAgICAgICBpZiBlLmFyZ3NbMF0gPT0gJ1NUQVJUVExTIGV4dGVuc2lvbiBub3Qgc3VwcG9ydGVkIGJ5IHNlcnZlci4nOgorICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5za2lwKGUuYXJnc1swXSkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgc2VydmVyLmVobG8oKQorICAgICAgICAgICAgc2VydmVyLnF1aXQoKQorCisKIGNsYXNzIFNtdHBTU0xUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICB0ZXN0U2VydmVyID0gJ3NtdHAuZ21haWwuY29tJwogICAgIHJlbW90ZVBvcnQgPSA0NjUKKyAgICBjb250ZXh0ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1NTTHYyMykKIAogICAgIGRlZiB0ZXN0X2Nvbm5lY3Qoc2VsZik6CiAgICAgICAgIHN1cHBvcnQuZ2V0X2F0dHJpYnV0ZShzbXRwbGliLCAnU01UUF9TU0wnKQogICAgICAgICB3aXRoIHN1cHBvcnQudHJhbnNpZW50X2ludGVybmV0KHNlbGYudGVzdFNlcnZlcik6CiAgICAgICAgICAgICBzZXJ2ZXIgPSBzbXRwbGliLlNNVFBfU1NMKHNlbGYudGVzdFNlcnZlciwgc2VsZi5yZW1vdGVQb3J0KQotICAgICAgICBzZXJ2ZXIuZWhsbygpCi0gICAgICAgIHNlcnZlci5xdWl0KCkKKyAgICAgICAgICAgIHNlcnZlci5laGxvKCkKKyAgICAgICAgICAgIHNlcnZlci5xdWl0KCkKIAogICAgIGRlZiB0ZXN0X2Nvbm5lY3RfZGVmYXVsdF9wb3J0KHNlbGYpOgogICAgICAgICBzdXBwb3J0LmdldF9hdHRyaWJ1dGUoc210cGxpYiwgJ1NNVFBfU1NMJykKICAgICAgICAgd2l0aCBzdXBwb3J0LnRyYW5zaWVudF9pbnRlcm5ldChzZWxmLnRlc3RTZXJ2ZXIpOgogICAgICAgICAgICAgc2VydmVyID0gc210cGxpYi5TTVRQX1NTTChzZWxmLnRlc3RTZXJ2ZXIpCi0gICAgICAgIHNlcnZlci5laGxvKCkKLSAgICAgICAgc2VydmVyLnF1aXQoKQorICAgICAgICAgICAgc2VydmVyLmVobG8oKQorICAgICAgICAgICAgc2VydmVyLnF1aXQoKQorCisgICAgZGVmIHRlc3RfY29ubmVjdF91c2luZ19zc2xjb250ZXh0KHNlbGYpOgorICAgICAgICBzdXBwb3J0LmdldF9hdHRyaWJ1dGUoc210cGxpYiwgJ1NNVFBfU1NMJykKKyAgICAgICAgd2l0aCBzdXBwb3J0LnRyYW5zaWVudF9pbnRlcm5ldChzZWxmLnRlc3RTZXJ2ZXIpOgorICAgICAgICAgICAgc2VydmVyID0gc210cGxpYi5TTVRQX1NTTChzZWxmLnRlc3RTZXJ2ZXIsIHNlbGYucmVtb3RlUG9ydCwgY29udGV4dD1zZWxmLmNvbnRleHQpCisgICAgICAgICAgICBzZXJ2ZXIuZWhsbygpCisgICAgICAgICAgICBzZXJ2ZXIucXVpdCgpCisKIAogZGVmIHRlc3RfbWFpbigpOgotICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KFNtdHBTU0xUZXN0KQorICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KFNtdHBUZXN0LCBTbXRwU1NMVGVzdCkKIAogaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zb2NrZXQucHkgYi9MaWIvdGVzdC90ZXN0X3NvY2tldC5weQppbmRleCBkNzdiN2RjLi5lZGUxMDM4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3NvY2tldC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NvY2tldC5weQpAQCAtNyw2ICs3LDggQEAKIGltcG9ydCBpbwogaW1wb3J0IHNvY2tldAogaW1wb3J0IHNlbGVjdAoraW1wb3J0IHRlbXBmaWxlCitpbXBvcnQgX3Rlc3RjYXBpCiBpbXBvcnQgdGltZQogaW1wb3J0IHRyYWNlYmFjawogaW1wb3J0IHF1ZXVlCkBAIC0xOCwzNCArMjAsMTUgQEAKIGZyb20gd2Vha3JlZiBpbXBvcnQgcHJveHkKIGltcG9ydCBzaWduYWwKIGltcG9ydCBtYXRoCitpbXBvcnQgcGlja2xlCitpbXBvcnQgc3RydWN0CiB0cnk6CiAgICAgaW1wb3J0IGZjbnRsCiBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgZmNudGwgPSBGYWxzZQogCi1kZWYgdHJ5X2FkZHJlc3MoaG9zdCwgcG9ydD0wLCBmYW1pbHk9c29ja2V0LkFGX0lORVQpOgotICAgICIiIlRyeSB0byBiaW5kIGEgc29ja2V0IG9uIHRoZSBnaXZlbiBob3N0OnBvcnQgYW5kIHJldHVybiBUcnVlCi0gICAgaWYgdGhhdCBoYXMgYmVlbiBwb3NzaWJsZS4iIiIKLSAgICB0cnk6Ci0gICAgICAgIHNvY2sgPSBzb2NrZXQuc29ja2V0KGZhbWlseSwgc29ja2V0LlNPQ0tfU1RSRUFNKQotICAgICAgICBzb2NrLmJpbmQoKGhvc3QsIHBvcnQpKQotICAgIGV4Y2VwdCAoc29ja2V0LmVycm9yLCBzb2NrZXQuZ2FpZXJyb3IpOgotICAgICAgICByZXR1cm4gRmFsc2UKLSAgICBlbHNlOgotICAgICAgICBzb2NrLmNsb3NlKCkKLSAgICAgICAgcmV0dXJuIFRydWUKLQotZGVmIGxpbnV4X3ZlcnNpb24oKToKLSAgICB0cnk6Ci0gICAgICAgICMgcGxhdGZvcm0ucmVsZWFzZSgpIGlzIHNvbWV0aGluZyBsaWtlICcyLjYuMzMuNy1kZXNrdG9wLTJtbmInCi0gICAgICAgIHZlcnNpb25fc3RyaW5nID0gcGxhdGZvcm0ucmVsZWFzZSgpLnNwbGl0KCctJylbMF0KLSAgICAgICAgcmV0dXJuIHR1cGxlKG1hcChpbnQsIHZlcnNpb25fc3RyaW5nLnNwbGl0KCcuJykpKQotICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgotICAgICAgICByZXR1cm4gMCwgMCwgMAotCiBIT1NUID0gc3VwcG9ydC5IT1NUCi1NU0cgPSAnTWljaGFlbCBHaWxmaXggd2FzIGhlcmVcdTEyMzRcclxuJy5lbmNvZGUoJ3V0ZjgnKSAjIyB0ZXN0IHVuaWNvZGUgc3RyaW5nIGFuZCBjYXJyaWFnZSByZXR1cm4KLVNVUFBPUlRTX0lQVjYgPSBzb2NrZXQuaGFzX2lwdjYgYW5kIHRyeV9hZGRyZXNzKCc6OjEnLCBmYW1pbHk9c29ja2V0LkFGX0lORVQ2KQorTVNHID0gJ01pY2hhZWwgR2lsZml4IHdhcyBoZXJlXHUxMjM0XHJcbicuZW5jb2RlKCd1dGYtOCcpICMjIHRlc3QgdW5pY29kZSBzdHJpbmcgYW5kIGNhcnJpYWdlIHJldHVybgogCiB0cnk6CiAgICAgaW1wb3J0IF90aHJlYWQgYXMgdGhyZWFkCkBAIC01NCw2ICszNywzMyBAQAogICAgIHRocmVhZCA9IE5vbmUKICAgICB0aHJlYWRpbmcgPSBOb25lCiAKK2RlZiBfaGF2ZV9zb2NrZXRfY2FuKCk6CisgICAgIiIiQ2hlY2sgd2hldGhlciBDQU4gc29ja2V0cyBhcmUgc3VwcG9ydGVkIG9uIHRoaXMgaG9zdC4iIiIKKyAgICB0cnk6CisgICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5QRl9DQU4sIHNvY2tldC5TT0NLX1JBVywgc29ja2V0LkNBTl9SQVcpCisgICAgZXhjZXB0IChBdHRyaWJ1dGVFcnJvciwgc29ja2V0LmVycm9yLCBPU0Vycm9yKToKKyAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgZWxzZToKKyAgICAgICAgcy5jbG9zZSgpCisgICAgcmV0dXJuIFRydWUKKworZGVmIF9oYXZlX3NvY2tldF9yZHMoKToKKyAgICAiIiJDaGVjayB3aGV0aGVyIFJEUyBzb2NrZXRzIGFyZSBzdXBwb3J0ZWQgb24gdGhpcyBob3N0LiIiIgorICAgIHRyeToKKyAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX1JEUywgc29ja2V0LlNPQ0tfU0VRUEFDS0VULCAwKQorICAgIGV4Y2VwdCAoQXR0cmlidXRlRXJyb3IsIE9TRXJyb3IpOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBlbHNlOgorICAgICAgICBzLmNsb3NlKCkKKyAgICByZXR1cm4gVHJ1ZQorCitIQVZFX1NPQ0tFVF9DQU4gPSBfaGF2ZV9zb2NrZXRfY2FuKCkKKworSEFWRV9TT0NLRVRfUkRTID0gX2hhdmVfc29ja2V0X3JkcygpCisKKyMgU2l6ZSBpbiBieXRlcyBvZiB0aGUgaW50IHR5cGUKK1NJWkVPRl9JTlQgPSBhcnJheS5hcnJheSgiaSIpLml0ZW1zaXplCisKIGNsYXNzIFNvY2tldFRDUFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHNldFVwKHNlbGYpOgpAQCAtNzUsNiArODUsNjMgQEAKICAgICAgICAgc2VsZi5zZXJ2LmNsb3NlKCkKICAgICAgICAgc2VsZi5zZXJ2ID0gTm9uZQogCitjbGFzcyBUaHJlYWRTYWZlQ2xlYW51cFRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAiIiJTdWJjbGFzcyBvZiB1bml0dGVzdC5UZXN0Q2FzZSB3aXRoIHRocmVhZC1zYWZlIGNsZWFudXAgbWV0aG9kcy4KKworICAgIFRoaXMgc3ViY2xhc3MgcHJvdGVjdHMgdGhlIGFkZENsZWFudXAoKSBhbmQgZG9DbGVhbnVwcygpIG1ldGhvZHMKKyAgICB3aXRoIGEgcmVjdXJzaXZlIGxvY2suCisgICAgIiIiCisKKyAgICBpZiB0aHJlYWRpbmc6CisgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAgICAgc3VwZXIoKS5fX2luaXRfXygqYXJncywgKiprd2FyZ3MpCisgICAgICAgICAgICBzZWxmLl9jbGVhbnVwX2xvY2sgPSB0aHJlYWRpbmcuUkxvY2soKQorCisgICAgICAgIGRlZiBhZGRDbGVhbnVwKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICAgICB3aXRoIHNlbGYuX2NsZWFudXBfbG9jazoKKyAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIoKS5hZGRDbGVhbnVwKCphcmdzLCAqKmt3YXJncykKKworICAgICAgICBkZWYgZG9DbGVhbnVwcyhzZWxmLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAgICAgd2l0aCBzZWxmLl9jbGVhbnVwX2xvY2s6CisgICAgICAgICAgICAgICAgcmV0dXJuIHN1cGVyKCkuZG9DbGVhbnVwcygqYXJncywgKiprd2FyZ3MpCisKK2NsYXNzIFNvY2tldENBTlRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgIiIiVG8gYmUgYWJsZSB0byBydW4gdGhpcyB0ZXN0LCBhIGB2Y2FuMGAgQ0FOIGludGVyZmFjZSBjYW4gYmUgY3JlYXRlZCB3aXRoCisgICAgdGhlIGZvbGxvd2luZyBjb21tYW5kczoKKyAgICAjIG1vZHByb2JlIHZjYW4KKyAgICAjIGlwIGxpbmsgYWRkIGRldiB2Y2FuMCB0eXBlIHZjYW4KKyAgICAjIGlmY29uZmlnIHZjYW4wIHVwCisgICAgIiIiCisgICAgaW50ZXJmYWNlID0gJ3ZjYW4wJworICAgIGJ1ZnNpemUgPSAxMjgKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5zID0gc29ja2V0LnNvY2tldChzb2NrZXQuUEZfQ0FOLCBzb2NrZXQuU09DS19SQVcsIHNvY2tldC5DQU5fUkFXKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi5zLmNsb3NlKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLnMuYmluZCgoc2VsZi5pbnRlcmZhY2UsKSkKKyAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvcjoKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoJ25ldHdvcmsgaW50ZXJmYWNlIGAlc2AgZG9lcyBub3QgZXhpc3QnICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuaW50ZXJmYWNlKQorCisKK2NsYXNzIFNvY2tldFJEU1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgIiIiVG8gYmUgYWJsZSB0byBydW4gdGhpcyB0ZXN0LCB0aGUgYHJkc2Aga2VybmVsIG1vZHVsZSBtdXN0IGJlIGxvYWRlZDoKKyAgICAjIG1vZHByb2JlIHJkcworICAgICIiIgorICAgIGJ1ZnNpemUgPSA4MTkyCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuc2VydiA9IHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX1JEUywgc29ja2V0LlNPQ0tfU0VRUEFDS0VULCAwKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi5zZXJ2LmNsb3NlKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLnBvcnQgPSBzdXBwb3J0LmJpbmRfcG9ydChzZWxmLnNlcnYpCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgndW5hYmxlIHRvIGJpbmQgUkRTIHNvY2tldCcpCisKKwogY2xhc3MgVGhyZWFkYWJsZVRlc3Q6CiAgICAgIiIiVGhyZWFkYWJsZSBUZXN0IGNsYXNzCiAKQEAgLTEzMiw2ICsxOTksNyBAQAogICAgICAgICBzZWxmLmNsaWVudF9yZWFkeSA9IHRocmVhZGluZy5FdmVudCgpCiAgICAgICAgIHNlbGYuZG9uZSA9IHRocmVhZGluZy5FdmVudCgpCiAgICAgICAgIHNlbGYucXVldWUgPSBxdWV1ZS5RdWV1ZSgxKQorICAgICAgICBzZWxmLnNlcnZlcl9jcmFzaGVkID0gRmFsc2UKIAogICAgICAgICAjIERvIHNvbWUgbXVuZ2luZyB0byBzdGFydCB0aGUgY2xpZW50IHRlc3QuCiAgICAgICAgIG1ldGhvZG5hbWUgPSBzZWxmLmlkKCkKQEAgLTE0MSw4ICsyMDksMTIgQEAKICAgICAgICAgc2VsZi5jbGllbnRfdGhyZWFkID0gdGhyZWFkLnN0YXJ0X25ld190aHJlYWQoCiAgICAgICAgICAgICBzZWxmLmNsaWVudFJ1biwgKHRlc3RfbWV0aG9kLCkpCiAKLSAgICAgICAgc2VsZi5fX3NldFVwKCkKLSAgICAgICAgaWYgbm90IHNlbGYuc2VydmVyX3JlYWR5LmlzX3NldCgpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLl9fc2V0VXAoKQorICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBzZWxmLnNlcnZlcl9jcmFzaGVkID0gVHJ1ZQorICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIHNlbGYuc2VydmVyX3JlYWR5LnNldCgpCiAgICAgICAgIHNlbGYuY2xpZW50X3JlYWR5LndhaXQoKQogCkBAIC0xNTgsMTAgKzIzMCwxNiBAQAogICAgICAgICBzZWxmLnNlcnZlcl9yZWFkeS53YWl0KCkKICAgICAgICAgc2VsZi5jbGllbnRTZXRVcCgpCiAgICAgICAgIHNlbGYuY2xpZW50X3JlYWR5LnNldCgpCisgICAgICAgIGlmIHNlbGYuc2VydmVyX2NyYXNoZWQ6CisgICAgICAgICAgICBzZWxmLmNsaWVudFRlYXJEb3duKCkKKyAgICAgICAgICAgIHJldHVybgogICAgICAgICBpZiBub3QgaGFzYXR0cih0ZXN0X2Z1bmMsICdfX2NhbGxfXycpOgogICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJ0ZXN0X2Z1bmMgbXVzdCBiZSBhIGNhbGxhYmxlIGZ1bmN0aW9uIikKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgdGVzdF9mdW5jKCkKKyAgICAgICAgZXhjZXB0IHVuaXR0ZXN0Ll9FeHBlY3RlZEZhaWx1cmU6CisgICAgICAgICAgICAjIFdlIGRlbGliZXJhdGVseSBpZ25vcmUgZXhwZWN0ZWQgZmFpbHVyZXMKKyAgICAgICAgICAgIHBhc3MKICAgICAgICAgZXhjZXB0IEJhc2VFeGNlcHRpb24gYXMgZToKICAgICAgICAgICAgIHNlbGYucXVldWUucHV0KGUpCiAgICAgICAgIGZpbmFsbHk6CkBAIC0yMDIsNiArMjgwLDQ4IEBACiAgICAgICAgIHNlbGYuY2xpID0gTm9uZQogICAgICAgICBUaHJlYWRhYmxlVGVzdC5jbGllbnRUZWFyRG93bihzZWxmKQogCitjbGFzcyBUaHJlYWRlZENBTlNvY2tldFRlc3QoU29ja2V0Q0FOVGVzdCwgVGhyZWFkYWJsZVRlc3QpOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG1ldGhvZE5hbWU9J3J1blRlc3QnKToKKyAgICAgICAgU29ja2V0Q0FOVGVzdC5fX2luaXRfXyhzZWxmLCBtZXRob2ROYW1lPW1ldGhvZE5hbWUpCisgICAgICAgIFRocmVhZGFibGVUZXN0Ll9faW5pdF9fKHNlbGYpCisKKyAgICBkZWYgY2xpZW50U2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuY2xpID0gc29ja2V0LnNvY2tldChzb2NrZXQuUEZfQ0FOLCBzb2NrZXQuU09DS19SQVcsIHNvY2tldC5DQU5fUkFXKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmNsaS5iaW5kKChzZWxmLmludGVyZmFjZSwpKQorICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yOgorICAgICAgICAgICAgIyBza2lwVGVzdCBzaG91bGQgbm90IGJlIGNhbGxlZCBoZXJlLCBhbmQgd2lsbCBiZSBjYWxsZWQgaW4gdGhlCisgICAgICAgICAgICAjIHNlcnZlciBpbnN0ZWFkCisgICAgICAgICAgICBwYXNzCisKKyAgICBkZWYgY2xpZW50VGVhckRvd24oc2VsZik6CisgICAgICAgIHNlbGYuY2xpLmNsb3NlKCkKKyAgICAgICAgc2VsZi5jbGkgPSBOb25lCisgICAgICAgIFRocmVhZGFibGVUZXN0LmNsaWVudFRlYXJEb3duKHNlbGYpCisKK2NsYXNzIFRocmVhZGVkUkRTU29ja2V0VGVzdChTb2NrZXRSRFNUZXN0LCBUaHJlYWRhYmxlVGVzdCk6CisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbWV0aG9kTmFtZT0ncnVuVGVzdCcpOgorICAgICAgICBTb2NrZXRSRFNUZXN0Ll9faW5pdF9fKHNlbGYsIG1ldGhvZE5hbWU9bWV0aG9kTmFtZSkKKyAgICAgICAgVGhyZWFkYWJsZVRlc3QuX19pbml0X18oc2VsZikKKworICAgIGRlZiBjbGllbnRTZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5jbGkgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5QRl9SRFMsIHNvY2tldC5TT0NLX1NFUVBBQ0tFVCwgMCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBSRFMgc29ja2V0cyBtdXN0IGJlIGJvdW5kIGV4cGxpY2l0bHkgdG8gc2VuZCBvciByZWNlaXZlIGRhdGEKKyAgICAgICAgICAgIHNlbGYuY2xpLmJpbmQoKEhPU1QsIDApKQorICAgICAgICAgICAgc2VsZi5jbGlfYWRkciA9IHNlbGYuY2xpLmdldHNvY2tuYW1lKCkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgICAgICAjIHNraXBUZXN0IHNob3VsZCBub3QgYmUgY2FsbGVkIGhlcmUsIGFuZCB3aWxsIGJlIGNhbGxlZCBpbiB0aGUKKyAgICAgICAgICAgICMgc2VydmVyIGluc3RlYWQKKyAgICAgICAgICAgIHBhc3MKKworICAgIGRlZiBjbGllbnRUZWFyRG93bihzZWxmKToKKyAgICAgICAgc2VsZi5jbGkuY2xvc2UoKQorICAgICAgICBzZWxmLmNsaSA9IE5vbmUKKyAgICAgICAgVGhyZWFkYWJsZVRlc3QuY2xpZW50VGVhckRvd24oc2VsZikKKwogY2xhc3MgU29ja2V0Q29ubmVjdGVkVGVzdChUaHJlYWRlZFRDUFNvY2tldFRlc3QpOgogICAgICIiIlNvY2tldCB0ZXN0cyBmb3IgY2xpZW50LXNlcnZlciBjb25uZWN0aW9uLgogCkBAIC0yNTcsNiArMzc3LDI0MyBAQAogICAgICAgICBUaHJlYWRhYmxlVGVzdC5jbGllbnRUZWFyRG93bihzZWxmKQogCiAKKyMgVGhlIGZvbGxvd2luZyBjbGFzc2VzIGFyZSB1c2VkIGJ5IHRoZSBzZW5kbXNnKCkvcmVjdm1zZygpIHRlc3RzLgorIyBDb21iaW5pbmcsIGZvciBpbnN0YW5jZSwgQ29ubmVjdGVkU3RyZWFtVGVzdE1peGluIGFuZCBUQ1BUZXN0QmFzZQorIyBnaXZlcyBhIGRyb3AtaW4gcmVwbGFjZW1lbnQgZm9yIFNvY2tldENvbm5lY3RlZFRlc3QsIGJ1dCBkaWZmZXJlbnQKKyMgYWRkcmVzcyBmYW1pbGllcyBjYW4gYmUgdXNlZCwgYW5kIHRoZSBhdHRyaWJ1dGVzIHNlcnZfYWRkciBhbmQKKyMgY2xpX2FkZHIgd2lsbCBiZSBzZXQgdG8gdGhlIGFkZHJlc3NlcyBvZiB0aGUgZW5kcG9pbnRzLgorCitjbGFzcyBTb2NrZXRUZXN0QmFzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIiIiQSBiYXNlIGNsYXNzIGZvciBzb2NrZXQgdGVzdHMuCisKKyAgICBTdWJjbGFzc2VzIG11c3QgcHJvdmlkZSBtZXRob2RzIG5ld1NvY2tldCgpIHRvIHJldHVybiBhIG5ldyBzb2NrZXQKKyAgICBhbmQgYmluZFNvY2soc29jaykgdG8gYmluZCBpdCB0byBhbiB1bnVzZWQgYWRkcmVzcy4KKworICAgIENyZWF0ZXMgYSBzb2NrZXQgc2VsZi5zZXJ2IGFuZCBzZXRzIHNlbGYuc2Vydl9hZGRyIHRvIGl0cyBhZGRyZXNzLgorICAgICIiIgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLnNlcnYgPSBzZWxmLm5ld1NvY2tldCgpCisgICAgICAgIHNlbGYuYmluZFNlcnZlcigpCisKKyAgICBkZWYgYmluZFNlcnZlcihzZWxmKToKKyAgICAgICAgIiIiQmluZCBzZXJ2ZXIgc29ja2V0IGFuZCBzZXQgc2VsZi5zZXJ2X2FkZHIgdG8gaXRzIGFkZHJlc3MuIiIiCisgICAgICAgIHNlbGYuYmluZFNvY2soc2VsZi5zZXJ2KQorICAgICAgICBzZWxmLnNlcnZfYWRkciA9IHNlbGYuc2Vydi5nZXRzb2NrbmFtZSgpCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHNlbGYuc2Vydi5jbG9zZSgpCisgICAgICAgIHNlbGYuc2VydiA9IE5vbmUKKworCitjbGFzcyBTb2NrZXRMaXN0ZW5pbmdUZXN0TWl4aW4oU29ja2V0VGVzdEJhc2UpOgorICAgICIiIk1peGluIHRvIGxpc3RlbiBvbiB0aGUgc2VydmVyIHNvY2tldC4iIiIKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoKS5zZXRVcCgpCisgICAgICAgIHNlbGYuc2Vydi5saXN0ZW4oMSkKKworCitjbGFzcyBUaHJlYWRlZFNvY2tldFRlc3RNaXhpbihUaHJlYWRTYWZlQ2xlYW51cFRlc3RDYXNlLCBTb2NrZXRUZXN0QmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRocmVhZGFibGVUZXN0KToKKyAgICAiIiJNaXhpbiB0byBhZGQgY2xpZW50IHNvY2tldCBhbmQgYWxsb3cgY2xpZW50L3NlcnZlciB0ZXN0cy4KKworICAgIENsaWVudCBzb2NrZXQgaXMgc2VsZi5jbGkgYW5kIGl0cyBhZGRyZXNzIGlzIHNlbGYuY2xpX2FkZHIuICBTZWUKKyAgICBUaHJlYWRhYmxlVGVzdCBmb3IgdXNhZ2UgaW5mb3JtYXRpb24uCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgc3VwZXIoKS5fX2luaXRfXygqYXJncywgKiprd2FyZ3MpCisgICAgICAgIFRocmVhZGFibGVUZXN0Ll9faW5pdF9fKHNlbGYpCisKKyAgICBkZWYgY2xpZW50U2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuY2xpID0gc2VsZi5uZXdDbGllbnRTb2NrZXQoKQorICAgICAgICBzZWxmLmJpbmRDbGllbnQoKQorCisgICAgZGVmIG5ld0NsaWVudFNvY2tldChzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIGEgbmV3IHNvY2tldCBmb3IgdXNlIGFzIGNsaWVudC4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYubmV3U29ja2V0KCkKKworICAgIGRlZiBiaW5kQ2xpZW50KHNlbGYpOgorICAgICAgICAiIiJCaW5kIGNsaWVudCBzb2NrZXQgYW5kIHNldCBzZWxmLmNsaV9hZGRyIHRvIGl0cyBhZGRyZXNzLiIiIgorICAgICAgICBzZWxmLmJpbmRTb2NrKHNlbGYuY2xpKQorICAgICAgICBzZWxmLmNsaV9hZGRyID0gc2VsZi5jbGkuZ2V0c29ja25hbWUoKQorCisgICAgZGVmIGNsaWVudFRlYXJEb3duKHNlbGYpOgorICAgICAgICBzZWxmLmNsaS5jbG9zZSgpCisgICAgICAgIHNlbGYuY2xpID0gTm9uZQorICAgICAgICBUaHJlYWRhYmxlVGVzdC5jbGllbnRUZWFyRG93bihzZWxmKQorCisKK2NsYXNzIENvbm5lY3RlZFN0cmVhbVRlc3RNaXhpbihTb2NrZXRMaXN0ZW5pbmdUZXN0TWl4aW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkZWRTb2NrZXRUZXN0TWl4aW4pOgorICAgICIiIk1peGluIHRvIGFsbG93IGNsaWVudC9zZXJ2ZXIgc3RyZWFtIHRlc3RzIHdpdGggY29ubmVjdGVkIGNsaWVudC4KKworICAgIFNlcnZlcidzIHNvY2tldCByZXByZXNlbnRpbmcgY29ubmVjdGlvbiB0byBjbGllbnQgaXMgc2VsZi5jbGlfY29ubgorICAgIGFuZCBjbGllbnQncyBjb25uZWN0aW9uIHRvIHNlcnZlciBpcyBzZWxmLnNlcnZfY29ubi4gIChCYXNlZCBvbgorICAgIFNvY2tldENvbm5lY3RlZFRlc3QuKQorICAgICIiIgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcigpLnNldFVwKCkKKyAgICAgICAgIyBJbmRpY2F0ZSBleHBsaWNpdGx5IHdlJ3JlIHJlYWR5IGZvciB0aGUgY2xpZW50IHRocmVhZCB0bworICAgICAgICAjIHByb2NlZWQgYW5kIHRoZW4gcGVyZm9ybSB0aGUgYmxvY2tpbmcgY2FsbCB0byBhY2NlcHQKKyAgICAgICAgc2VsZi5zZXJ2ZXJFeHBsaWNpdFJlYWR5KCkKKyAgICAgICAgY29ubiwgYWRkciA9IHNlbGYuc2Vydi5hY2NlcHQoKQorICAgICAgICBzZWxmLmNsaV9jb25uID0gY29ubgorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBzZWxmLmNsaV9jb25uLmNsb3NlKCkKKyAgICAgICAgc2VsZi5jbGlfY29ubiA9IE5vbmUKKyAgICAgICAgc3VwZXIoKS50ZWFyRG93bigpCisKKyAgICBkZWYgY2xpZW50U2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKCkuY2xpZW50U2V0VXAoKQorICAgICAgICBzZWxmLmNsaS5jb25uZWN0KHNlbGYuc2Vydl9hZGRyKQorICAgICAgICBzZWxmLnNlcnZfY29ubiA9IHNlbGYuY2xpCisKKyAgICBkZWYgY2xpZW50VGVhckRvd24oc2VsZik6CisgICAgICAgIHNlbGYuc2Vydl9jb25uLmNsb3NlKCkKKyAgICAgICAgc2VsZi5zZXJ2X2Nvbm4gPSBOb25lCisgICAgICAgIHN1cGVyKCkuY2xpZW50VGVhckRvd24oKQorCisKK2NsYXNzIFVuaXhTb2NrZXRUZXN0QmFzZShTb2NrZXRUZXN0QmFzZSk6CisgICAgIiIiQmFzZSBjbGFzcyBmb3IgVW5peC1kb21haW4gc29ja2V0IHRlc3RzLiIiIgorCisgICAgIyBUaGlzIGNsYXNzIGlzIHVzZWQgZm9yIGZpbGUgZGVzY3JpcHRvciBwYXNzaW5nIHRlc3RzLCBzbyB3ZQorICAgICMgY3JlYXRlIHRoZSBzb2NrZXRzIGluIGEgcHJpdmF0ZSBkaXJlY3Rvcnkgc28gdGhhdCBvdGhlciB1c2VycworICAgICMgY2FuJ3Qgc2VuZCBhbnl0aGluZyB0aGF0IG1pZ2h0IGJlIHByb2JsZW1hdGljIGZvciBhIHByaXZpbGVnZWQKKyAgICAjIHVzZXIgcnVubmluZyB0aGUgdGVzdHMuCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuZGlyX3BhdGggPSB0ZW1wZmlsZS5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLnJtZGlyLCBzZWxmLmRpcl9wYXRoKQorICAgICAgICBzdXBlcigpLnNldFVwKCkKKworICAgIGRlZiBiaW5kU29jayhzZWxmLCBzb2NrKToKKyAgICAgICAgcGF0aCA9IHRlbXBmaWxlLm1rdGVtcChkaXI9c2VsZi5kaXJfcGF0aCkKKyAgICAgICAgc29jay5iaW5kKHBhdGgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzdXBwb3J0LnVubGluaywgcGF0aCkKKworY2xhc3MgVW5peFN0cmVhbUJhc2UoVW5peFNvY2tldFRlc3RCYXNlKToKKyAgICAiIiJCYXNlIGNsYXNzIGZvciBVbml4LWRvbWFpbiBTT0NLX1NUUkVBTSB0ZXN0cy4iIiIKKworICAgIGRlZiBuZXdTb2NrZXQoc2VsZik6CisgICAgICAgIHJldHVybiBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9VTklYLCBzb2NrZXQuU09DS19TVFJFQU0pCisKKworY2xhc3MgSW5ldFRlc3RCYXNlKFNvY2tldFRlc3RCYXNlKToKKyAgICAiIiJCYXNlIGNsYXNzIGZvciBJUHY0IHNvY2tldCB0ZXN0cy4iIiIKKworICAgIGhvc3QgPSBIT1NUCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKCkuc2V0VXAoKQorICAgICAgICBzZWxmLnBvcnQgPSBzZWxmLnNlcnZfYWRkclsxXQorCisgICAgZGVmIGJpbmRTb2NrKHNlbGYsIHNvY2spOgorICAgICAgICBzdXBwb3J0LmJpbmRfcG9ydChzb2NrLCBob3N0PXNlbGYuaG9zdCkKKworY2xhc3MgVENQVGVzdEJhc2UoSW5ldFRlc3RCYXNlKToKKyAgICAiIiJCYXNlIGNsYXNzIGZvciBUQ1Atb3Zlci1JUHY0IHRlc3RzLiIiIgorCisgICAgZGVmIG5ld1NvY2tldChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKKworY2xhc3MgVURQVGVzdEJhc2UoSW5ldFRlc3RCYXNlKToKKyAgICAiIiJCYXNlIGNsYXNzIGZvciBVRFAtb3Zlci1JUHY0IHRlc3RzLiIiIgorCisgICAgZGVmIG5ld1NvY2tldChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX0RHUkFNKQorCitjbGFzcyBTQ1RQU3RyZWFtQmFzZShJbmV0VGVzdEJhc2UpOgorICAgICIiIkJhc2UgY2xhc3MgZm9yIFNDVFAgdGVzdHMgaW4gb25lLXRvLW9uZSAoU09DS19TVFJFQU0pIG1vZGUuIiIiCisKKyAgICBkZWYgbmV3U29ja2V0KHNlbGYpOgorICAgICAgICByZXR1cm4gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuSVBQUk9UT19TQ1RQKQorCisKK2NsYXNzIEluZXQ2VGVzdEJhc2UoSW5ldFRlc3RCYXNlKToKKyAgICAiIiJCYXNlIGNsYXNzIGZvciBJUHY2IHNvY2tldCB0ZXN0cy4iIiIKKworICAgICMgRG9uJ3QgdXNlICJsb2NhbGhvc3QiIGhlcmUgLSBpdCBtYXkgbm90IGhhdmUgYW4gSVB2NiBhZGRyZXNzCisgICAgIyBhc3NpZ25lZCB0byBpdCBieSBkZWZhdWx0IChlLmcuIGluIC9ldGMvaG9zdHMpLCBhbmQgaWYgc29tZW9uZQorICAgICMgaGFzIGFzc2lnbmVkIGl0IGFuIElQdjQtbWFwcGVkIGFkZHJlc3MsIHRoZW4gaXQncyB1bmxpa2VseSB0bworICAgICMgd29yayB3aXRoIHRoZSBmdWxsIElQdjYgQVBJLgorICAgIGhvc3QgPSAiOjoxIgorCitjbGFzcyBVRFA2VGVzdEJhc2UoSW5ldDZUZXN0QmFzZSk6CisgICAgIiIiQmFzZSBjbGFzcyBmb3IgVURQLW92ZXItSVB2NiB0ZXN0cy4iIiIKKworICAgIGRlZiBuZXdTb2NrZXQoc2VsZik6CisgICAgICAgIHJldHVybiBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVUNiwgc29ja2V0LlNPQ0tfREdSQU0pCisKKworIyBUZXN0LXNraXBwaW5nIGRlY29yYXRvcnMgZm9yIHVzZSB3aXRoIFRocmVhZGFibGVUZXN0LgorCitkZWYgc2tpcFdpdGhDbGllbnRJZihjb25kaXRpb24sIHJlYXNvbik6CisgICAgIiIiU2tpcCBkZWNvcmF0ZWQgdGVzdCBpZiBjb25kaXRpb24gaXMgdHJ1ZSwgYWRkIGNsaWVudF9za2lwIGRlY29yYXRvci4KKworICAgIElmIHRoZSBkZWNvcmF0ZWQgb2JqZWN0IGlzIG5vdCBhIGNsYXNzLCBzZXRzIGl0cyBhdHRyaWJ1dGUKKyAgICAiY2xpZW50X3NraXAiIHRvIGEgZGVjb3JhdG9yIHdoaWNoIHdpbGwgcmV0dXJuIGFuIGVtcHR5IGZ1bmN0aW9uCisgICAgaWYgdGhlIHRlc3QgaXMgdG8gYmUgc2tpcHBlZCwgb3IgdGhlIG9yaWdpbmFsIGZ1bmN0aW9uIGlmIGl0IGlzCisgICAgbm90LiAgVGhpcyBjYW4gYmUgdXNlZCB0byBhdm9pZCBydW5uaW5nIHRoZSBjbGllbnQgcGFydCBvZiBhCisgICAgc2tpcHBlZCB0ZXN0IHdoZW4gdXNpbmcgVGhyZWFkYWJsZVRlc3QuCisgICAgIiIiCisgICAgZGVmIGNsaWVudF9wYXNzKCphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHBhc3MKKyAgICBkZWYgc2tpcGRlYyhvYmopOgorICAgICAgICByZXR2YWwgPSB1bml0dGVzdC5za2lwKHJlYXNvbikob2JqKQorICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShvYmosIHR5cGUpOgorICAgICAgICAgICAgcmV0dmFsLmNsaWVudF9za2lwID0gbGFtYmRhIGY6IGNsaWVudF9wYXNzCisgICAgICAgIHJldHVybiByZXR2YWwKKyAgICBkZWYgbm9za2lwZGVjKG9iaik6CisgICAgICAgIGlmIG5vdCAoaXNpbnN0YW5jZShvYmosIHR5cGUpIG9yIGhhc2F0dHIob2JqLCAiY2xpZW50X3NraXAiKSk6CisgICAgICAgICAgICBvYmouY2xpZW50X3NraXAgPSBsYW1iZGEgZjogZgorICAgICAgICByZXR1cm4gb2JqCisgICAgcmV0dXJuIHNraXBkZWMgaWYgY29uZGl0aW9uIGVsc2Ugbm9za2lwZGVjCisKKworZGVmIHJlcXVpcmVBdHRycyhvYmosICphdHRyaWJ1dGVzKToKKyAgICAiIiJTa2lwIGRlY29yYXRlZCB0ZXN0IGlmIG9iaiBpcyBtaXNzaW5nIGFueSBvZiB0aGUgZ2l2ZW4gYXR0cmlidXRlcy4KKworICAgIFNldHMgY2xpZW50X3NraXAgYXR0cmlidXRlIGFzIHNraXBXaXRoQ2xpZW50SWYoKSBkb2VzLgorICAgICIiIgorICAgIG1pc3NpbmcgPSBbbmFtZSBmb3IgbmFtZSBpbiBhdHRyaWJ1dGVzIGlmIG5vdCBoYXNhdHRyKG9iaiwgbmFtZSldCisgICAgcmV0dXJuIHNraXBXaXRoQ2xpZW50SWYoCisgICAgICAgIG1pc3NpbmcsICJkb24ndCBoYXZlICIgKyAiLCAiLmpvaW4obmFtZSBmb3IgbmFtZSBpbiBtaXNzaW5nKSkKKworCitkZWYgcmVxdWlyZVNvY2tldCgqYXJncyk6CisgICAgIiIiU2tpcCBkZWNvcmF0ZWQgdGVzdCBpZiBhIHNvY2tldCBjYW5ub3QgYmUgY3JlYXRlZCB3aXRoIGdpdmVuIGFyZ3VtZW50cy4KKworICAgIFdoZW4gYW4gYXJndW1lbnQgaXMgZ2l2ZW4gYXMgYSBzdHJpbmcsIHdpbGwgdXNlIHRoZSB2YWx1ZSBvZiB0aGF0CisgICAgYXR0cmlidXRlIG9mIHRoZSBzb2NrZXQgbW9kdWxlLCBvciBza2lwIHRoZSB0ZXN0IGlmIGl0IGRvZXNuJ3QKKyAgICBleGlzdC4gIFNldHMgY2xpZW50X3NraXAgYXR0cmlidXRlIGFzIHNraXBXaXRoQ2xpZW50SWYoKSBkb2VzLgorICAgICIiIgorICAgIGVyciA9IE5vbmUKKyAgICBtaXNzaW5nID0gW29iaiBmb3Igb2JqIGluIGFyZ3MgaWYKKyAgICAgICAgICAgICAgIGlzaW5zdGFuY2Uob2JqLCBzdHIpIGFuZCBub3QgaGFzYXR0cihzb2NrZXQsIG9iaildCisgICAgaWYgbWlzc2luZzoKKyAgICAgICAgZXJyID0gImRvbid0IGhhdmUgIiArICIsICIuam9pbihuYW1lIGZvciBuYW1lIGluIG1pc3NpbmcpCisgICAgZWxzZToKKyAgICAgICAgY2FsbGFyZ3MgPSBbZ2V0YXR0cihzb2NrZXQsIG9iaikgaWYgaXNpbnN0YW5jZShvYmosIHN0cikgZWxzZSBvYmoKKyAgICAgICAgICAgICAgICAgICAgZm9yIG9iaiBpbiBhcmdzXQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzID0gc29ja2V0LnNvY2tldCgqY2FsbGFyZ3MpCisgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3IgYXMgZToKKyAgICAgICAgICAgICMgWFhYOiBjaGVjayBlcnJubz8KKyAgICAgICAgICAgIGVyciA9IHN0cihlKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcy5jbG9zZSgpCisgICAgcmV0dXJuIHNraXBXaXRoQ2xpZW50SWYoCisgICAgICAgIGVyciBpcyBub3QgTm9uZSwKKyAgICAgICAgImNhbid0IGNyZWF0ZSBzb2NrZXQoezB9KTogezF9Ii5mb3JtYXQoCisgICAgICAgICAgICAiLCAiLmpvaW4oc3RyKG8pIGZvciBvIGluIGFyZ3MpLCBlcnIpKQorCisKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIyBCZWdpbiBUZXN0cwogCkBAIC0yODIsMTggKzYzOSwxMyBAQAogCiAgICAgZGVmIHRlc3RTb2NrZXRFcnJvcihzZWxmKToKICAgICAgICAgIyBUZXN0aW5nIHNvY2tldCBtb2R1bGUgZXhjZXB0aW9ucwotICAgICAgICBkZWYgcmFpc2VfZXJyb3IoKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgbXNnID0gIkVycm9yIHJhaXNpbmcgc29ja2V0IGV4Y2VwdGlvbiAoJXMpLiIKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIG1zZz1tc2cgJSAnc29ja2V0LmVycm9yJyk6CiAgICAgICAgICAgICByYWlzZSBzb2NrZXQuZXJyb3IKLSAgICAgICAgZGVmIHJhaXNlX2hlcnJvcigqYXJncywgKiprd2FyZ3MpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvciwgbXNnPW1zZyAlICdzb2NrZXQuaGVycm9yJyk6CiAgICAgICAgICAgICByYWlzZSBzb2NrZXQuaGVycm9yCi0gICAgICAgIGRlZiByYWlzZV9nYWllcnJvcigqYXJncywgKiprd2FyZ3MpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvciwgbXNnPW1zZyAlICdzb2NrZXQuZ2FpZXJyb3InKToKICAgICAgICAgICAgIHJhaXNlIHNvY2tldC5nYWllcnJvcgotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHJhaXNlX2Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkVycm9yIHJhaXNpbmcgc29ja2V0IGV4Y2VwdGlvbi4iKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHJhaXNlX2hlcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJFcnJvciByYWlzaW5nIHNvY2tldCBleGNlcHRpb24uIikKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCByYWlzZV9nYWllcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJFcnJvciByYWlzaW5nIHNvY2tldCBleGNlcHRpb24uIikKIAogICAgIGRlZiB0ZXN0U2VuZHRvRXJyb3JzKHNlbGYpOgogICAgICAgICAjIFRlc3RpbmcgdGhhdCBzZW5kdG8gZG9lbnMndCBtYXNrcyBmYWlsdXJlcy4gU2VlICMxMDE2OS4KQEAgLTM2OSw2ICs3MjEsNTIgQEAKICAgICAgICAgaWYgbm90IGZxaG4gaW4gYWxsX2hvc3RfbmFtZXM6CiAgICAgICAgICAgICBzZWxmLmZhaWwoIkVycm9yIHRlc3RpbmcgaG9zdCByZXNvbHV0aW9uIG1lY2hhbmlzbXMuIChmcWRuOiAlcywgYWxsOiAlcykiICUgKGZxaG4sIHJlcHIoYWxsX2hvc3RfbmFtZXMpKSkKIAorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc29ja2V0LCAnc2V0aG9zdG5hbWUnKSwgInRlc3QgbmVlZHMgc29ja2V0LnNldGhvc3RuYW1lKCkiKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc29ja2V0LCAnZ2V0aG9zdG5hbWUnKSwgInRlc3QgbmVlZHMgc29ja2V0LmdldGhvc3RuYW1lKCkiKQorICAgIGRlZiB0ZXN0X3NldGhvc3RuYW1lKHNlbGYpOgorICAgICAgICBvbGRobiA9IHNvY2tldC5nZXRob3N0bmFtZSgpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNvY2tldC5zZXRob3N0bmFtZSgnbmV3JykKKyAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlOgorICAgICAgICAgICAgaWYgZS5lcnJubyA9PSBlcnJuby5FUEVSTToKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJ0ZXN0IHNob3VsZCBiZSBydW4gYXMgcm9vdCIpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgIHRyeToKKyAgICAgICAgICAgICMgcnVubmluZyB0ZXN0IGFzIHJvb3QhCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvY2tldC5nZXRob3N0bmFtZSgpLCAnbmV3JykKKyAgICAgICAgICAgICMgU2hvdWxkIHdvcmsgd2l0aCBieXRlcyBvYmplY3RzIHRvbworICAgICAgICAgICAgc29ja2V0LnNldGhvc3RuYW1lKGInYmFyJykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ja2V0LmdldGhvc3RuYW1lKCksICdiYXInKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc29ja2V0LnNldGhvc3RuYW1lKG9sZGhuKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzb2NrZXQsICdpZl9uYW1laW5kZXgnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnc29ja2V0LmlmX25hbWVpbmRleCgpIG5vdCBhdmFpbGFibGUuJykKKyAgICBkZWYgdGVzdEludGVyZmFjZU5hbWVJbmRleChzZWxmKToKKyAgICAgICAgaW50ZXJmYWNlcyA9IHNvY2tldC5pZl9uYW1laW5kZXgoKQorICAgICAgICBmb3IgaW5kZXgsIG5hbWUgaW4gaW50ZXJmYWNlczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShpbmRleCwgaW50KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKG5hbWUsIHN0cikKKyAgICAgICAgICAgICMgaW50ZXJmYWNlIGluZGljZXMgYXJlIG5vbi16ZXJvIGludGVnZXJzCisgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIoaW5kZXgsIDApCisgICAgICAgICAgICBfaW5kZXggPSBzb2NrZXQuaWZfbmFtZXRvaW5kZXgobmFtZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShfaW5kZXgsIGludCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaW5kZXgsIF9pbmRleCkKKyAgICAgICAgICAgIF9uYW1lID0gc29ja2V0LmlmX2luZGV4dG9uYW1lKGluZGV4KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKF9uYW1lLCBzdHIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5hbWUsIF9uYW1lKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzb2NrZXQsICdpZl9uYW1laW5kZXgnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnc29ja2V0LmlmX25hbWVpbmRleCgpIG5vdCBhdmFpbGFibGUuJykKKyAgICBkZWYgdGVzdEludmFsaWRJbnRlcmZhY2VOYW1lSW5kZXgoc2VsZik6CisgICAgICAgICMgdGVzdCBub25leGlzdGVudCBpbnRlcmZhY2UgaW5kZXgvbmFtZQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHNvY2tldC5pZl9pbmRleHRvbmFtZSwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCBzb2NrZXQuaWZfbmFtZXRvaW5kZXgsICdfREVBREJFRUYnKQorICAgICAgICAjIHRlc3Qgd2l0aCBpbnZhbGlkIHZhbHVlcworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNvY2tldC5pZl9uYW1ldG9pbmRleCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzb2NrZXQuaWZfaW5kZXh0b25hbWUsICdfREVBREJFRUYnKQorCiAgICAgZGVmIHRlc3RSZWZDb3VudEdldE5hbWVJbmZvKHNlbGYpOgogICAgICAgICAjIFRlc3RpbmcgcmVmZXJlbmNlIGNvdW50IGZvciBnZXRuYW1laW5mbwogICAgICAgICBpZiBoYXNhdHRyKHN5cywgImdldHJlZmNvdW50Iik6CkBAIC00MjEsMTAgKzgxOSw4IEBACiAgICAgICAgICMgRmluZCBvbmUgc2VydmljZSB0aGF0IGV4aXN0cywgdGhlbiBjaGVjayBhbGwgdGhlIHJlbGF0ZWQgaW50ZXJmYWNlcy4KICAgICAgICAgIyBJJ3ZlIG9yZGVyZWQgdGhpcyBieSBwcm90b2NvbHMgdGhhdCBoYXZlIGJvdGggYSB0Y3AgYW5kIHVkcAogICAgICAgICAjIHByb3RvY29sLCBhdCBsZWFzdCBmb3IgbW9kZXJuIExpbnV4ZXMuCi0gICAgICAgIGlmIChzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbGludXgnKSBvcgotICAgICAgICAgICAgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ2ZyZWVic2QnKSBvcgotICAgICAgICAgICAgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ25ldGJzZCcpIG9yCi0gICAgICAgICAgICBzeXMucGxhdGZvcm0gPT0gJ2RhcndpbicpOgorICAgICAgICBpZiAoc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoKCdmcmVlYnNkJywgJ25ldGJzZCcpKQorICAgICAgICAgICAgb3Igc3lzLnBsYXRmb3JtIGluICgnbGludXgnLCAnZGFyd2luJykpOgogICAgICAgICAgICAgIyBhdm9pZCB0aGUgJ2VjaG8nIHNlcnZpY2Ugb24gdGhpcyBwbGF0Zm9ybSwgYXMgdGhlcmUgaXMgYW4KICAgICAgICAgICAgICMgYXNzdW1wdGlvbiBicmVha2luZyBub24tc3RhbmRhcmQgcG9ydC9wcm90b2NvbCBlbnRyeQogICAgICAgICAgICAgc2VydmljZXMgPSAoJ2RheXRpbWUnLCAncW90ZCcsICdkb21haW4nKQpAQCAtNzE5LDcgKzExMTUsNyBAQAogICAgICAgICBzb2NrZXQuZ2V0YWRkcmluZm8oJ2xvY2FsaG9zdCcsIDgwKQogICAgICAgICBzb2NrZXQuZ2V0YWRkcmluZm8oJzEyNy4wLjAuMScsIDgwKQogICAgICAgICBzb2NrZXQuZ2V0YWRkcmluZm8oTm9uZSwgODApCi0gICAgICAgIGlmIFNVUFBPUlRTX0lQVjY6CisgICAgICAgIGlmIHN1cHBvcnQuSVBWNl9FTkFCTEVEOgogICAgICAgICAgICAgc29ja2V0LmdldGFkZHJpbmZvKCc6OjEnLCA4MCkKICAgICAgICAgIyBwb3J0IGNhbiBiZSBhIHN0cmluZyBzZXJ2aWNlIG5hbWUgc3VjaCBhcyAiaHR0cCIsIGEgbnVtZXJpYwogICAgICAgICAjIHBvcnQgbnVtYmVyIG9yIE5vbmUKQEAgLTc3Miw3ICsxMTY4LDEyIEBACiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3VwcG9ydC5pc19yZXNvdXJjZV9lbmFibGVkKCduZXR3b3JrJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ25ldHdvcmsgaXMgbm90IGVuYWJsZWQnKQogICAgIGRlZiB0ZXN0X2lkbmEoc2VsZik6Ci0gICAgICAgIHN1cHBvcnQucmVxdWlyZXMoJ25ldHdvcmsnKQorICAgICAgICAjIENoZWNrIGZvciBpbnRlcm5ldCBhY2Nlc3MgYmVmb3JlIHJ1bm5pbmcgdGVzdCAoaXNzdWUgIzEyODA0KS4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc29ja2V0LmdldGhvc3RieW5hbWUoJ3B5dGhvbi5vcmcnKQorICAgICAgICBleGNlcHQgc29ja2V0LmdhaWVycm9yIGFzIGU6CisgICAgICAgICAgICBpZiBlLmVycm5vID09IHNvY2tldC5FQUlfTk9EQVRBOgorICAgICAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoJ2ludGVybmV0IGFjY2VzcyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0JykKICAgICAgICAgIyB0aGVzZSBzaG91bGQgYWxsIGJlIHN1Y2Nlc3NmdWwKICAgICAgICAgc29ja2V0LmdldGhvc3RieW5hbWUoJ9C40YHQv9GL0YLQsNC90LjQtS5weXRob24ub3JnJykKICAgICAgICAgc29ja2V0LmdldGhvc3RieW5hbWVfZXgoJ9C40YHQv9GL0YLQsNC90LjQtS5weXRob24ub3JnJykKQEAgLTgzOSwxNCArMTI0MCwyMCBAQAogICAgICAgICAgICAgZnAuY2xvc2UoKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXByKGZwKSwgIjxfaW8uQnVmZmVyZWRSZWFkZXIgbmFtZT0tMT4iKQogCi0gICAgZGVmIHRlc3RMaXN0ZW5CYWNrbG9nMChzZWxmKToKKyAgICBkZWYgdGVzdF9waWNrbGUoc2VsZik6CisgICAgICAgIHNvY2sgPSBzb2NrZXQuc29ja2V0KCkKKyAgICAgICAgd2l0aCBzb2NrOgorICAgICAgICAgICAgZm9yIHByb3RvY29sIGluIHJhbmdlKHBpY2tsZS5ISUdIRVNUX1BST1RPQ09MICsgMSk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwaWNrbGUuZHVtcHMsIHNvY2ssIHByb3RvY29sKQorCisgICAgZGVmIHRlc3RfbGlzdGVuX2JhY2tsb2cwKHNlbGYpOgogICAgICAgICBzcnYgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCiAgICAgICAgIHNydi5iaW5kKChIT1NULCAwKSkKICAgICAgICAgIyBiYWNrbG9nID0gMAogICAgICAgICBzcnYubGlzdGVuKDApCiAgICAgICAgIHNydi5jbG9zZSgpCiAKLSAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhTVVBQT1JUU19JUFY2LCAnSVB2NiByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3VwcG9ydC5JUFY2X0VOQUJMRUQsICdJUHY2IHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKICAgICBkZWYgdGVzdF9mbG93aW5mbyhzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgc29ja2V0LmdldG5hbWVpbmZvLAogICAgICAgICAgICAgICAgICAgICAgICAgICAoJzo6MScsMCwgMHhmZmZmZmZmZiksIDApCkBAIC04NTQsNiArMTI2MSwyMjIgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHMuYmluZCwgKCc6OjEnLCAwLCAtMTApKQogCiAKK0B1bml0dGVzdC5za2lwVW5sZXNzKEhBVkVfU09DS0VUX0NBTiwgJ1NvY2tldENhbiByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBCYXNpY0NBTlRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RDcnVjaWFsQ29uc3RhbnRzKHNlbGYpOgorICAgICAgICBzb2NrZXQuQUZfQ0FOCisgICAgICAgIHNvY2tldC5QRl9DQU4KKyAgICAgICAgc29ja2V0LkNBTl9SQVcKKworICAgIGRlZiB0ZXN0Q3JlYXRlU29ja2V0KHNlbGYpOgorICAgICAgICB3aXRoIHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX0NBTiwgc29ja2V0LlNPQ0tfUkFXLCBzb2NrZXQuQ0FOX1JBVykgYXMgczoKKyAgICAgICAgICAgIHBhc3MKKworICAgIGRlZiB0ZXN0QmluZEFueShzZWxmKToKKyAgICAgICAgd2l0aCBzb2NrZXQuc29ja2V0KHNvY2tldC5QRl9DQU4sIHNvY2tldC5TT0NLX1JBVywgc29ja2V0LkNBTl9SQVcpIGFzIHM6CisgICAgICAgICAgICBzLmJpbmQoKCcnLCApKQorCisgICAgZGVmIHRlc3RUb29Mb25nSW50ZXJmYWNlTmFtZShzZWxmKToKKyAgICAgICAgIyBtb3N0IHN5c3RlbXMgbGltaXQgSUZOQU1TSVogdG8gMTYsIHRha2UgMTAyNCB0byBiZSBzdXJlCisgICAgICAgIHdpdGggc29ja2V0LnNvY2tldChzb2NrZXQuUEZfQ0FOLCBzb2NrZXQuU09DS19SQVcsIHNvY2tldC5DQU5fUkFXKSBhcyBzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleChzb2NrZXQuZXJyb3IsICdpbnRlcmZhY2UgbmFtZSB0b28gbG9uZycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMuYmluZCwgKCd4JyAqIDEwMjQsKSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc29ja2V0LCAiQ0FOX1JBV19MT09QQkFDSyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICdzb2NrZXQuQ0FOX1JBV19MT09QQkFDSyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCisgICAgZGVmIHRlc3RMb29wYmFjayhzZWxmKToKKyAgICAgICAgd2l0aCBzb2NrZXQuc29ja2V0KHNvY2tldC5QRl9DQU4sIHNvY2tldC5TT0NLX1JBVywgc29ja2V0LkNBTl9SQVcpIGFzIHM6CisgICAgICAgICAgICBmb3IgbG9vcGJhY2sgaW4gKDAsIDEpOgorICAgICAgICAgICAgICAgIHMuc2V0c29ja29wdChzb2NrZXQuU09MX0NBTl9SQVcsIHNvY2tldC5DQU5fUkFXX0xPT1BCQUNLLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb29wYmFjaykKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxvb3BiYWNrLAorICAgICAgICAgICAgICAgICAgICBzLmdldHNvY2tvcHQoc29ja2V0LlNPTF9DQU5fUkFXLCBzb2NrZXQuQ0FOX1JBV19MT09QQkFDSykpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNvY2tldCwgIkNBTl9SQVdfRklMVEVSIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ3NvY2tldC5DQU5fUkFXX0ZJTFRFUiByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCisgICAgZGVmIHRlc3RGaWx0ZXIoc2VsZik6CisgICAgICAgIGNhbl9pZCwgY2FuX21hc2sgPSAweDIwMCwgMHg3MDAKKyAgICAgICAgY2FuX2ZpbHRlciA9IHN0cnVjdC5wYWNrKCI9SUkiLCBjYW5faWQsIGNhbl9tYXNrKQorICAgICAgICB3aXRoIHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX0NBTiwgc29ja2V0LlNPQ0tfUkFXLCBzb2NrZXQuQ0FOX1JBVykgYXMgczoKKyAgICAgICAgICAgIHMuc2V0c29ja29wdChzb2NrZXQuU09MX0NBTl9SQVcsIHNvY2tldC5DQU5fUkFXX0ZJTFRFUiwgY2FuX2ZpbHRlcikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2FuX2ZpbHRlciwKKyAgICAgICAgICAgICAgICAgICAgcy5nZXRzb2Nrb3B0KHNvY2tldC5TT0xfQ0FOX1JBVywgc29ja2V0LkNBTl9SQVdfRklMVEVSLCA4KSkKKworCitAdW5pdHRlc3Quc2tpcFVubGVzcyhIQVZFX1NPQ0tFVF9DQU4sICdTb2NrZXRDYW4gcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIENBTlRlc3QoVGhyZWFkZWRDQU5Tb2NrZXRUZXN0KToKKworICAgICIiIlRoZSBDQU4gZnJhbWUgc3RydWN0dXJlIGlzIGRlZmluZWQgaW4gPGxpbnV4L2Nhbi5oPjoKKworICAgIHN0cnVjdCBjYW5fZnJhbWUgeworICAgICAgICBjYW5pZF90IGNhbl9pZDsgIC8qIDMyIGJpdCBDQU5fSUQgKyBFRkYvUlRSL0VSUiBmbGFncyAqLworICAgICAgICBfX3U4ICAgIGNhbl9kbGM7IC8qIGRhdGEgbGVuZ3RoIGNvZGU6IDAgLi4gOCAqLworICAgICAgICBfX3U4ICAgIGRhdGFbOF0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICAgIH07CisgICAgIiIiCisgICAgY2FuX2ZyYW1lX2ZtdCA9ICI9SUIzeDhzIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG1ldGhvZE5hbWU9J3J1blRlc3QnKToKKyAgICAgICAgVGhyZWFkZWRDQU5Tb2NrZXRUZXN0Ll9faW5pdF9fKHNlbGYsIG1ldGhvZE5hbWU9bWV0aG9kTmFtZSkKKworICAgIEBjbGFzc21ldGhvZAorICAgIGRlZiBidWlsZF9jYW5fZnJhbWUoY2xzLCBjYW5faWQsIGRhdGEpOgorICAgICAgICAiIiJCdWlsZCBhIENBTiBmcmFtZS4iIiIKKyAgICAgICAgY2FuX2RsYyA9IGxlbihkYXRhKQorICAgICAgICBkYXRhID0gZGF0YS5sanVzdCg4LCBiJ1x4MDAnKQorICAgICAgICByZXR1cm4gc3RydWN0LnBhY2soY2xzLmNhbl9mcmFtZV9mbXQsIGNhbl9pZCwgY2FuX2RsYywgZGF0YSkKKworICAgIEBjbGFzc21ldGhvZAorICAgIGRlZiBkaXNzZWN0X2Nhbl9mcmFtZShjbHMsIGZyYW1lKToKKyAgICAgICAgIiIiRGlzc2VjdCBhIENBTiBmcmFtZS4iIiIKKyAgICAgICAgY2FuX2lkLCBjYW5fZGxjLCBkYXRhID0gc3RydWN0LnVucGFjayhjbHMuY2FuX2ZyYW1lX2ZtdCwgZnJhbWUpCisgICAgICAgIHJldHVybiAoY2FuX2lkLCBjYW5fZGxjLCBkYXRhWzpjYW5fZGxjXSkKKworICAgIGRlZiB0ZXN0U2VuZEZyYW1lKHNlbGYpOgorICAgICAgICBjZiwgYWRkciA9IHNlbGYucy5yZWN2ZnJvbShzZWxmLmJ1ZnNpemUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jZiwgY2YpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWRkclswXSwgc2VsZi5pbnRlcmZhY2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWRkclsxXSwgc29ja2V0LkFGX0NBTikKKworICAgIGRlZiBfdGVzdFNlbmRGcmFtZShzZWxmKToKKyAgICAgICAgc2VsZi5jZiA9IHNlbGYuYnVpbGRfY2FuX2ZyYW1lKDB4MDAsIGInXHgwMVx4MDJceDAzXHgwNFx4MDUnKQorICAgICAgICBzZWxmLmNsaS5zZW5kKHNlbGYuY2YpCisKKyAgICBkZWYgdGVzdFNlbmRNYXhGcmFtZShzZWxmKToKKyAgICAgICAgY2YsIGFkZHIgPSBzZWxmLnMucmVjdmZyb20oc2VsZi5idWZzaXplKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2YsIGNmKQorCisgICAgZGVmIF90ZXN0U2VuZE1heEZyYW1lKHNlbGYpOgorICAgICAgICBzZWxmLmNmID0gc2VsZi5idWlsZF9jYW5fZnJhbWUoMHgwMCwgYidceDA3JyAqIDgpCisgICAgICAgIHNlbGYuY2xpLnNlbmQoc2VsZi5jZikKKworICAgIGRlZiB0ZXN0U2VuZE11bHRpRnJhbWVzKHNlbGYpOgorICAgICAgICBjZiwgYWRkciA9IHNlbGYucy5yZWN2ZnJvbShzZWxmLmJ1ZnNpemUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jZjEsIGNmKQorCisgICAgICAgIGNmLCBhZGRyID0gc2VsZi5zLnJlY3Zmcm9tKHNlbGYuYnVmc2l6ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNmMiwgY2YpCisKKyAgICBkZWYgX3Rlc3RTZW5kTXVsdGlGcmFtZXMoc2VsZik6CisgICAgICAgIHNlbGYuY2YxID0gc2VsZi5idWlsZF9jYW5fZnJhbWUoMHgwNywgYidceDQ0XHgzM1x4MjJceDExJykKKyAgICAgICAgc2VsZi5jbGkuc2VuZChzZWxmLmNmMSkKKworICAgICAgICBzZWxmLmNmMiA9IHNlbGYuYnVpbGRfY2FuX2ZyYW1lKDB4MTIsIGInXHg5OVx4MjJceDMzJykKKyAgICAgICAgc2VsZi5jbGkuc2VuZChzZWxmLmNmMikKKworCitAdW5pdHRlc3Quc2tpcFVubGVzcyhIQVZFX1NPQ0tFVF9SRFMsICdSRFMgc29ja2V0cyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBCYXNpY1JEU1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RDcnVjaWFsQ29uc3RhbnRzKHNlbGYpOgorICAgICAgICBzb2NrZXQuQUZfUkRTCisgICAgICAgIHNvY2tldC5QRl9SRFMKKworICAgIGRlZiB0ZXN0Q3JlYXRlU29ja2V0KHNlbGYpOgorICAgICAgICB3aXRoIHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX1JEUywgc29ja2V0LlNPQ0tfU0VRUEFDS0VULCAwKSBhcyBzOgorICAgICAgICAgICAgcGFzcworCisgICAgZGVmIHRlc3RTb2NrZXRCdWZmZXJTaXplKHNlbGYpOgorICAgICAgICBidWZzaXplID0gMTYzODQKKyAgICAgICAgd2l0aCBzb2NrZXQuc29ja2V0KHNvY2tldC5QRl9SRFMsIHNvY2tldC5TT0NLX1NFUVBBQ0tFVCwgMCkgYXMgczoKKyAgICAgICAgICAgIHMuc2V0c29ja29wdChzb2NrZXQuU09MX1NPQ0tFVCwgc29ja2V0LlNPX1JDVkJVRiwgYnVmc2l6ZSkKKyAgICAgICAgICAgIHMuc2V0c29ja29wdChzb2NrZXQuU09MX1NPQ0tFVCwgc29ja2V0LlNPX1NOREJVRiwgYnVmc2l6ZSkKKworCitAdW5pdHRlc3Quc2tpcFVubGVzcyhIQVZFX1NPQ0tFVF9SRFMsICdSRFMgc29ja2V0cyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUkRTVGVzdChUaHJlYWRlZFJEU1NvY2tldFRlc3QpOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG1ldGhvZE5hbWU9J3J1blRlc3QnKToKKyAgICAgICAgVGhyZWFkZWRSRFNTb2NrZXRUZXN0Ll9faW5pdF9fKHNlbGYsIG1ldGhvZE5hbWU9bWV0aG9kTmFtZSkKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoKS5zZXRVcCgpCisgICAgICAgIHNlbGYuZXZ0ID0gdGhyZWFkaW5nLkV2ZW50KCkKKworICAgIGRlZiB0ZXN0U2VuZEFuZFJlY3Yoc2VsZik6CisgICAgICAgIGRhdGEsIGFkZHIgPSBzZWxmLnNlcnYucmVjdmZyb20oc2VsZi5idWZzaXplKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGF0YSwgZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNsaV9hZGRyLCBhZGRyKQorCisgICAgZGVmIF90ZXN0U2VuZEFuZFJlY3Yoc2VsZik6CisgICAgICAgIHNlbGYuZGF0YSA9IGInc3BhbScKKyAgICAgICAgc2VsZi5jbGkuc2VuZHRvKHNlbGYuZGF0YSwgMCwgKEhPU1QsIHNlbGYucG9ydCkpCisKKyAgICBkZWYgdGVzdFBlZWsoc2VsZik6CisgICAgICAgIGRhdGEsIGFkZHIgPSBzZWxmLnNlcnYucmVjdmZyb20oc2VsZi5idWZzaXplLCBzb2NrZXQuTVNHX1BFRUspCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYXRhLCBkYXRhKQorICAgICAgICBkYXRhLCBhZGRyID0gc2VsZi5zZXJ2LnJlY3Zmcm9tKHNlbGYuYnVmc2l6ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRhdGEsIGRhdGEpCisKKyAgICBkZWYgX3Rlc3RQZWVrKHNlbGYpOgorICAgICAgICBzZWxmLmRhdGEgPSBiJ3NwYW0nCisgICAgICAgIHNlbGYuY2xpLnNlbmR0byhzZWxmLmRhdGEsIDAsIChIT1NULCBzZWxmLnBvcnQpKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAncmVjdm1zZycpCisgICAgZGVmIHRlc3RTZW5kQW5kUmVjdk1zZyhzZWxmKToKKyAgICAgICAgZGF0YSwgYW5jZGF0YSwgbXNnX2ZsYWdzLCBhZGRyID0gc2VsZi5zZXJ2LnJlY3Ztc2coc2VsZi5idWZzaXplKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGF0YSwgZGF0YSkKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgJ3NlbmRtc2cnKQorICAgIGRlZiBfdGVzdFNlbmRBbmRSZWN2TXNnKHNlbGYpOgorICAgICAgICBzZWxmLmRhdGEgPSBiJ2hlbGxvICcgKiAxMAorICAgICAgICBzZWxmLmNsaS5zZW5kbXNnKFtzZWxmLmRhdGFdLCAoKSwgMCwgKEhPU1QsIHNlbGYucG9ydCkpCisKKyAgICBkZWYgdGVzdFNlbmRBbmRSZWN2TXVsdGkoc2VsZik6CisgICAgICAgIGRhdGEsIGFkZHIgPSBzZWxmLnNlcnYucmVjdmZyb20oc2VsZi5idWZzaXplKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGF0YTEsIGRhdGEpCisKKyAgICAgICAgZGF0YSwgYWRkciA9IHNlbGYuc2Vydi5yZWN2ZnJvbShzZWxmLmJ1ZnNpemUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYXRhMiwgZGF0YSkKKworICAgIGRlZiBfdGVzdFNlbmRBbmRSZWN2TXVsdGkoc2VsZik6CisgICAgICAgIHNlbGYuZGF0YTEgPSBiJ2JhY29uJworICAgICAgICBzZWxmLmNsaS5zZW5kdG8oc2VsZi5kYXRhMSwgMCwgKEhPU1QsIHNlbGYucG9ydCkpCisKKyAgICAgICAgc2VsZi5kYXRhMiA9IGInZWdnJworICAgICAgICBzZWxmLmNsaS5zZW5kdG8oc2VsZi5kYXRhMiwgMCwgKEhPU1QsIHNlbGYucG9ydCkpCisKKyAgICBkZWYgdGVzdFNlbGVjdChzZWxmKToKKyAgICAgICAgciwgdywgeCA9IHNlbGVjdC5zZWxlY3QoW3NlbGYuc2Vydl0sIFtdLCBbXSwgMy4wKQorICAgICAgICBzZWxmLmFzc2VydEluKHNlbGYuc2VydiwgcikKKyAgICAgICAgZGF0YSwgYWRkciA9IHNlbGYuc2Vydi5yZWN2ZnJvbShzZWxmLmJ1ZnNpemUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYXRhLCBkYXRhKQorCisgICAgZGVmIF90ZXN0U2VsZWN0KHNlbGYpOgorICAgICAgICBzZWxmLmRhdGEgPSBiJ3NlbGVjdCcKKyAgICAgICAgc2VsZi5jbGkuc2VuZHRvKHNlbGYuZGF0YSwgMCwgKEhPU1QsIHNlbGYucG9ydCkpCisKKyAgICBkZWYgdGVzdENvbmdlc3Rpb24oc2VsZik6CisgICAgICAgICMgd2FpdCB1bnRpbCB0aGUgc2VuZGVyIGlzIGRvbmUKKyAgICAgICAgc2VsZi5ldnQud2FpdCgpCisKKyAgICBkZWYgX3Rlc3RDb25nZXN0aW9uKHNlbGYpOgorICAgICAgICAjIHRlc3QgdGhlIGJlaGF2aW9yIGluIGNhc2Ugb2YgY29uZ2VzdGlvbgorICAgICAgICBzZWxmLmRhdGEgPSBiJ2ZpbGwnCisgICAgICAgIHNlbGYuY2xpLnNldGJsb2NraW5nKEZhbHNlKQorICAgICAgICB0cnk6CisgICAgICAgICAgICAjIHRyeSB0byBsb3dlciB0aGUgcmVjZWl2ZXIncyBzb2NrZXQgYnVmZmVyIHNpemUKKyAgICAgICAgICAgIHNlbGYuY2xpLnNldHNvY2tvcHQoc29ja2V0LlNPTF9TT0NLRVQsIHNvY2tldC5TT19SQ1ZCVUYsIDE2Mzg0KQorICAgICAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yKSBhcyBjbToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAjIGZpbGwgdGhlIHJlY2VpdmVyJ3Mgc29ja2V0IGJ1ZmZlcgorICAgICAgICAgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuY2xpLnNlbmR0byhzZWxmLmRhdGEsIDAsIChIT1NULCBzZWxmLnBvcnQpKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICAjIHNpZ25hbCB0aGUgcmVjZWl2ZXIgd2UncmUgZG9uZQorICAgICAgICAgICAgICAgIHNlbGYuZXZ0LnNldCgpCisgICAgICAgICMgc2VuZHRvKCkgc2hvdWxkIGhhdmUgZmFpbGVkIHdpdGggRU5PQlVGUworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtLmV4Y2VwdGlvbi5lcnJubywgZXJybm8uRU5PQlVGUykKKyAgICAgICAgIyBhbmQgd2Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb25nZXN0aW9uIG5vdGlmaWNhdGlvbiB0aHJvdWdoIHBvbGwKKyAgICAgICAgciwgdywgeCA9IHNlbGVjdC5zZWxlY3QoW3NlbGYuc2Vydl0sIFtdLCBbXSwgMy4wKQorICAgICAgICBzZWxmLmFzc2VydEluKHNlbGYuc2VydiwgcikKKworCiBAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQogY2xhc3MgQmFzaWNUQ1BUZXN0KFNvY2tldENvbm5lY3RlZFRlc3QpOgogCkBAIC05OTIsNiArMTYxNSwxODUyIEBACiAgICAgZGVmIF90ZXN0UmVjdkZyb21OZWdhdGl2ZShzZWxmKToKICAgICAgICAgc2VsZi5jbGkuc2VuZHRvKE1TRywgMCwgKEhPU1QsIHNlbGYucG9ydCkpCiAKKyMgVGVzdHMgZm9yIHRoZSBzZW5kbXNnKCkvcmVjdm1zZygpIGludGVyZmFjZS4gIFdoZXJlIHBvc3NpYmxlLCB0aGUKKyMgc2FtZSB0ZXN0IGNvZGUgaXMgdXNlZCB3aXRoIGRpZmZlcmVudCBmYW1pbGllcyBhbmQgdHlwZXMgb2Ygc29ja2V0CisjIChlLmcuIHN0cmVhbSwgZGF0YWdyYW0pLCBhbmQgdGVzdHMgdXNpbmcgcmVjdm1zZygpIGFyZSByZXBlYXRlZAorIyB1c2luZyByZWN2bXNnX2ludG8oKS4KKyMKKyMgVGhlIGdlbmVyaWMgdGVzdCBjbGFzc2VzIHN1Y2ggYXMgU2VuZG1zZ1Rlc3RzIGFuZAorIyBSZWN2bXNnR2VuZXJpY1Rlc3RzIGluaGVyaXQgZnJvbSBTZW5kcmVjdm1zZ0Jhc2UgYW5kIGV4cGVjdCB0byBiZQorIyBzdXBwbGllZCB3aXRoIHNvY2tldHMgY2xpX3NvY2sgYW5kIHNlcnZfc29jayByZXByZXNlbnRpbmcgdGhlCisjIGNsaWVudCdzIGFuZCB0aGUgc2VydmVyJ3MgZW5kIG9mIHRoZSBjb25uZWN0aW9uIHJlc3BlY3RpdmVseSwgYW5kCisjIGF0dHJpYnV0ZXMgY2xpX2FkZHIgYW5kIHNlcnZfYWRkciBob2xkaW5nIHRoZWlyIChudW1lcmljIHdoZXJlCisjIGFwcHJvcHJpYXRlKSBhZGRyZXNzZXMuCisjCisjIFRoZSBmaW5hbCBjb25jcmV0ZSB0ZXN0IGNsYXNzZXMgY29tYmluZSB0aGVzZSB3aXRoIHN1YmNsYXNzZXMgb2YKKyMgU29ja2V0VGVzdEJhc2Ugd2hpY2ggc2V0IHVwIGNsaWVudCBhbmQgc2VydmVyIHNvY2tldHMgb2YgYSBzcGVjaWZpYworIyB0eXBlLCBhbmQgd2l0aCBzdWJjbGFzc2VzIG9mIFNlbmRyZWN2bXNnQmFzZSBzdWNoIGFzCisjIFNlbmRyZWN2bXNnRGdyYW1CYXNlIGFuZCBTZW5kcmVjdm1zZ0Nvbm5lY3RlZEJhc2Ugd2hpY2ggbWFwIHRoZXNlCisjIHNvY2tldHMgdG8gY2xpX3NvY2sgYW5kIHNlcnZfc29jayBhbmQgb3ZlcnJpZGUgdGhlIG1ldGhvZHMgYW5kCisjIGF0dHJpYnV0ZXMgb2YgU2VuZHJlY3Ztc2dCYXNlIHRvIGZpbGwgaW4gZGVzdGluYXRpb24gYWRkcmVzc2VzIGlmCisjIG5lZWRlZCB3aGVuIHNlbmRpbmcsIGNoZWNrIGZvciBzcGVjaWZpYyBmbGFncyBpbiBtc2dfZmxhZ3MsIGV0Yy4KKyMKKyMgUmVjdm1zZ0ludG9NaXhpbiBwcm92aWRlcyBhIHZlcnNpb24gb2YgZG9SZWN2bXNnKCkgaW1wbGVtZW50ZWQgdXNpbmcKKyMgcmVjdm1zZ19pbnRvKCkuCisKKyMgWFhYOiBsaWtlIHRoZSBvdGhlciBkYXRhZ3JhbSAoVURQKSB0ZXN0cyBpbiB0aGlzIG1vZHVsZSwgdGhlIGNvZGUKKyMgaGVyZSBhc3N1bWVzIHRoYXQgZGF0YWdyYW0gZGVsaXZlcnkgb24gdGhlIGxvY2FsIG1hY2hpbmUgd2lsbCBiZQorIyByZWxpYWJsZS4KKworY2xhc3MgU2VuZHJlY3Ztc2dCYXNlKFRocmVhZFNhZmVDbGVhbnVwVGVzdENhc2UpOgorICAgICMgQmFzZSBjbGFzcyBmb3Igc2VuZG1zZygpL3JlY3Ztc2coKSB0ZXN0cy4KKworICAgICMgVGltZSBpbiBzZWNvbmRzIHRvIHdhaXQgYmVmb3JlIGNvbnNpZGVyaW5nIGEgdGVzdCBmYWlsZWQsIG9yCisgICAgIyBOb25lIGZvciBubyB0aW1lb3V0LiAgTm90IGFsbCB0ZXN0cyBhY3R1YWxseSBzZXQgYSB0aW1lb3V0LgorICAgIGZhaWxfdGltZW91dCA9IDMuMAorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLm1pc2NfZXZlbnQgPSB0aHJlYWRpbmcuRXZlbnQoKQorICAgICAgICBzdXBlcigpLnNldFVwKCkKKworICAgIGRlZiBzZW5kVG9TZXJ2ZXIoc2VsZiwgbXNnKToKKyAgICAgICAgIyBTZW5kIG1zZyB0byB0aGUgc2VydmVyLgorICAgICAgICByZXR1cm4gc2VsZi5jbGlfc29jay5zZW5kKG1zZykKKworICAgICMgVHVwbGUgb2YgYWx0ZXJuYXRpdmUgZGVmYXVsdCBhcmd1bWVudHMgZm9yIHNlbmRtc2coKSB3aGVuIGNhbGxlZAorICAgICMgdmlhIHNlbmRtc2dUb1NlcnZlcigpIChlLmcuIHRvIGluY2x1ZGUgYSBkZXN0aW5hdGlvbiBhZGRyZXNzKS4KKyAgICBzZW5kbXNnX3RvX3NlcnZlcl9kZWZhdWx0cyA9ICgpCisKKyAgICBkZWYgc2VuZG1zZ1RvU2VydmVyKHNlbGYsICphcmdzKToKKyAgICAgICAgIyBDYWxsIHNlbmRtc2coKSBvbiBzZWxmLmNsaV9zb2NrIHdpdGggdGhlIGdpdmVuIGFyZ3VtZW50cywKKyAgICAgICAgIyBmaWxsaW5nIGluIGFueSBhcmd1bWVudHMgd2hpY2ggYXJlIG5vdCBzdXBwbGllZCB3aXRoIHRoZQorICAgICAgICAjIGNvcnJlc3BvbmRpbmcgaXRlbXMgb2Ygc2VsZi5zZW5kbXNnX3RvX3NlcnZlcl9kZWZhdWx0cywgaWYKKyAgICAgICAgIyBhbnkuCisgICAgICAgIHJldHVybiBzZWxmLmNsaV9zb2NrLnNlbmRtc2coCisgICAgICAgICAgICAqKGFyZ3MgKyBzZWxmLnNlbmRtc2dfdG9fc2VydmVyX2RlZmF1bHRzW2xlbihhcmdzKTpdKSkKKworICAgIGRlZiBkb1JlY3Ztc2coc2VsZiwgc29jaywgYnVmc2l6ZSwgKmFyZ3MpOgorICAgICAgICAjIENhbGwgcmVjdm1zZygpIG9uIHNvY2sgd2l0aCBnaXZlbiBhcmd1bWVudHMgYW5kIHJldHVybiBpdHMKKyAgICAgICAgIyByZXN1bHQuICBTaG91bGQgYmUgdXNlZCBmb3IgdGVzdHMgd2hpY2ggY2FuIHVzZSBlaXRoZXIKKyAgICAgICAgIyByZWN2bXNnKCkgb3IgcmVjdm1zZ19pbnRvKCkgLSBSZWN2bXNnSW50b01peGluIG92ZXJyaWRlcworICAgICAgICAjIHRoaXMgbWV0aG9kIHdpdGggb25lIHdoaWNoIGVtdWxhdGVzIGl0IHVzaW5nIHJlY3Ztc2dfaW50bygpLAorICAgICAgICAjIHRodXMgYWxsb3dpbmcgdGhlIHNhbWUgdGVzdCB0byBiZSB1c2VkIGZvciBib3RoIG1ldGhvZHMuCisgICAgICAgIHJlc3VsdCA9IHNvY2sucmVjdm1zZyhidWZzaXplLCAqYXJncykKKyAgICAgICAgc2VsZi5yZWdpc3RlclJlY3Ztc2dSZXN1bHQocmVzdWx0KQorICAgICAgICByZXR1cm4gcmVzdWx0CisKKyAgICBkZWYgcmVnaXN0ZXJSZWN2bXNnUmVzdWx0KHNlbGYsIHJlc3VsdCk6CisgICAgICAgICMgQ2FsbGVkIGJ5IGRvUmVjdm1zZygpIHdpdGggdGhlIHJldHVybiB2YWx1ZSBvZiByZWN2bXNnKCkgb3IKKyAgICAgICAgIyByZWN2bXNnX2ludG8oKS4gIENhbiBiZSBvdmVycmlkZGVuIHRvIGFycmFuZ2UgY2xlYW51cCBiYXNlZAorICAgICAgICAjIG9uIHRoZSByZXR1cm5lZCBhbmNpbGxhcnkgZGF0YSwgZm9yIGluc3RhbmNlLgorICAgICAgICBwYXNzCisKKyAgICBkZWYgY2hlY2tSZWN2bXNnQWRkcmVzcyhzZWxmLCBhZGRyMSwgYWRkcjIpOgorICAgICAgICAjIENhbGxlZCB0byBjb21wYXJlIHRoZSByZWNlaXZlZCBhZGRyZXNzIHdpdGggdGhlIGFkZHJlc3Mgb2YKKyAgICAgICAgIyB0aGUgcGVlci4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhZGRyMSwgYWRkcjIpCisKKyAgICAjIEZsYWdzIHRoYXQgYXJlIG5vcm1hbGx5IHVuc2V0IGluIG1zZ19mbGFncworICAgIG1zZ19mbGFnc19jb21tb25fdW5zZXQgPSAwCisgICAgZm9yIG5hbWUgaW4gKCJNU0dfQ1RSVU5DIiwgIk1TR19PT0IiKToKKyAgICAgICAgbXNnX2ZsYWdzX2NvbW1vbl91bnNldCB8PSBnZXRhdHRyKHNvY2tldCwgbmFtZSwgMCkKKworICAgICMgRmxhZ3MgdGhhdCBhcmUgbm9ybWFsbHkgc2V0CisgICAgbXNnX2ZsYWdzX2NvbW1vbl9zZXQgPSAwCisKKyAgICAjIEZsYWdzIHNldCB3aGVuIGEgY29tcGxldGUgcmVjb3JkIGhhcyBiZWVuIHJlY2VpdmVkIChlLmcuIE1TR19FT1IKKyAgICAjIGZvciBTQ1RQKQorICAgIG1zZ19mbGFnc19lb3JfaW5kaWNhdG9yID0gMAorCisgICAgIyBGbGFncyBzZXQgd2hlbiBhIGNvbXBsZXRlIHJlY29yZCBoYXMgbm90IGJlZW4gcmVjZWl2ZWQKKyAgICAjIChlLmcuIE1TR19UUlVOQyBmb3IgZGF0YWdyYW0gc29ja2V0cykKKyAgICBtc2dfZmxhZ3Nfbm9uX2Vvcl9pbmRpY2F0b3IgPSAwCisKKyAgICBkZWYgY2hlY2tGbGFncyhzZWxmLCBmbGFncywgZW9yPU5vbmUsIGNoZWNrc2V0PTAsIGNoZWNrdW5zZXQ9MCwgaWdub3JlPTApOgorICAgICAgICAjIE1ldGhvZCB0byBjaGVjayB0aGUgdmFsdWUgb2YgbXNnX2ZsYWdzIHJldHVybmVkIGJ5IHJlY3Ztc2dbX2ludG9dKCkuCisgICAgICAgICMKKyAgICAgICAgIyBDaGVja3MgdGhhdCBhbGwgYml0cyBpbiBtc2dfZmxhZ3NfY29tbW9uX3NldCBhdHRyaWJ1dGUgYXJlCisgICAgICAgICMgc2V0IGluICJmbGFncyIgYW5kIGFsbCBiaXRzIGluIG1zZ19mbGFnc19jb21tb25fdW5zZXQgYXJlCisgICAgICAgICMgdW5zZXQuCisgICAgICAgICMKKyAgICAgICAgIyBUaGUgImVvciIgYXJndW1lbnQgc3BlY2lmaWVzIHdoZXRoZXIgdGhlIGZsYWdzIHNob3VsZAorICAgICAgICAjIGluZGljYXRlIHRoYXQgYSBmdWxsIHJlY29yZCAob3IgZGF0YWdyYW0pIGhhcyBiZWVuIHJlY2VpdmVkLgorICAgICAgICAjIElmICJlb3IiIGlzIE5vbmUsIG5vIGNoZWNrcyBhcmUgZG9uZTsgb3RoZXJ3aXNlLCBjaGVja3MKKyAgICAgICAgIyB0aGF0OgorICAgICAgICAjCisgICAgICAgICMgICogaWYgImVvciIgaXMgdHJ1ZSwgYWxsIGJpdHMgaW4gbXNnX2ZsYWdzX2Vvcl9pbmRpY2F0b3IgYXJlCisgICAgICAgICMgICAgc2V0IGFuZCBhbGwgYml0cyBpbiBtc2dfZmxhZ3Nfbm9uX2Vvcl9pbmRpY2F0b3IgYXJlIHVuc2V0CisgICAgICAgICMKKyAgICAgICAgIyAgKiBpZiAiZW9yIiBpcyBmYWxzZSwgYWxsIGJpdHMgaW4gbXNnX2ZsYWdzX25vbl9lb3JfaW5kaWNhdG9yCisgICAgICAgICMgICAgYXJlIHNldCBhbmQgYWxsIGJpdHMgaW4gbXNnX2ZsYWdzX2Vvcl9pbmRpY2F0b3IgYXJlIHVuc2V0CisgICAgICAgICMKKyAgICAgICAgIyBJZiAiY2hlY2tzZXQiIGFuZC9vciAiY2hlY2t1bnNldCIgYXJlIHN1cHBsaWVkLCB0aGV5IHJlcXVpcmUKKyAgICAgICAgIyB0aGUgZ2l2ZW4gYml0cyB0byBiZSBzZXQgb3IgdW5zZXQgcmVzcGVjdGl2ZWx5LCBvdmVycmlkaW5nCisgICAgICAgICMgd2hhdCB0aGUgYXR0cmlidXRlcyByZXF1aXJlIGZvciB0aG9zZSBiaXRzLgorICAgICAgICAjCisgICAgICAgICMgSWYgYW55IGJpdHMgYXJlIHNldCBpbiAiaWdub3JlIiwgdGhleSB3aWxsIG5vdCBiZSBjaGVja2VkLAorICAgICAgICAjIHJlZ2FyZGxlc3Mgb2YgdGhlIG90aGVyIGlucHV0cy4KKyAgICAgICAgIworICAgICAgICAjIFdpbGwgcmFpc2UgRXhjZXB0aW9uIGlmIHRoZSBpbnB1dHMgcmVxdWlyZSBhIGJpdCB0byBiZSBib3RoCisgICAgICAgICMgc2V0IGFuZCB1bnNldCwgYW5kIGl0IGlzIG5vdCBpZ25vcmVkLgorCisgICAgICAgIGRlZmF1bHRzZXQgPSBzZWxmLm1zZ19mbGFnc19jb21tb25fc2V0CisgICAgICAgIGRlZmF1bHR1bnNldCA9IHNlbGYubXNnX2ZsYWdzX2NvbW1vbl91bnNldAorCisgICAgICAgIGlmIGVvcjoKKyAgICAgICAgICAgIGRlZmF1bHRzZXQgfD0gc2VsZi5tc2dfZmxhZ3NfZW9yX2luZGljYXRvcgorICAgICAgICAgICAgZGVmYXVsdHVuc2V0IHw9IHNlbGYubXNnX2ZsYWdzX25vbl9lb3JfaW5kaWNhdG9yCisgICAgICAgIGVsaWYgZW9yIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgZGVmYXVsdHNldCB8PSBzZWxmLm1zZ19mbGFnc19ub25fZW9yX2luZGljYXRvcgorICAgICAgICAgICAgZGVmYXVsdHVuc2V0IHw9IHNlbGYubXNnX2ZsYWdzX2Vvcl9pbmRpY2F0b3IKKworICAgICAgICAjIEZ1bmN0aW9uIGFyZ3VtZW50cyBvdmVycmlkZSBkZWZhdWx0cworICAgICAgICBkZWZhdWx0c2V0ICY9IH5jaGVja3Vuc2V0CisgICAgICAgIGRlZmF1bHR1bnNldCAmPSB+Y2hlY2tzZXQKKworICAgICAgICAjIE1lcmdlIGFyZ3VtZW50cyB3aXRoIHJlbWFpbmluZyBkZWZhdWx0cywgYW5kIGNoZWNrIGZvciBjb25mbGljdHMKKyAgICAgICAgY2hlY2tzZXQgfD0gZGVmYXVsdHNldAorICAgICAgICBjaGVja3Vuc2V0IHw9IGRlZmF1bHR1bnNldAorICAgICAgICBpbmJvdGggPSBjaGVja3NldCAmIGNoZWNrdW5zZXQgJiB+aWdub3JlCisgICAgICAgIGlmIGluYm90aDoKKyAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiY29udHJhZGljdG9yeSBzZXQsIHVuc2V0IHJlcXVpcmVtZW50cyBmb3IgZmxhZ3MgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ7MDojeH0iLmZvcm1hdChpbmJvdGgpKQorCisgICAgICAgICMgQ29tcGFyZSB3aXRoIGdpdmVuIG1zZ19mbGFncyB2YWx1ZQorICAgICAgICBtYXNrID0gKGNoZWNrc2V0IHwgY2hlY2t1bnNldCkgJiB+aWdub3JlCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmxhZ3MgJiBtYXNrLCBjaGVja3NldCAmIG1hc2spCisKKworY2xhc3MgUmVjdm1zZ0ludG9NaXhpbihTZW5kcmVjdm1zZ0Jhc2UpOgorICAgICMgTWl4aW4gdG8gaW1wbGVtZW50IGRvUmVjdm1zZygpIHVzaW5nIHJlY3Ztc2dfaW50bygpLgorCisgICAgZGVmIGRvUmVjdm1zZyhzZWxmLCBzb2NrLCBidWZzaXplLCAqYXJncyk6CisgICAgICAgIGJ1ZiA9IGJ5dGVhcnJheShidWZzaXplKQorICAgICAgICByZXN1bHQgPSBzb2NrLnJlY3Ztc2dfaW50byhbYnVmXSwgKmFyZ3MpCisgICAgICAgIHNlbGYucmVnaXN0ZXJSZWN2bXNnUmVzdWx0KHJlc3VsdCkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwocmVzdWx0WzBdLCAwKQorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChyZXN1bHRbMF0sIGJ1ZnNpemUpCisgICAgICAgIHJldHVybiAoYnl0ZXMoYnVmWzpyZXN1bHRbMF1dKSwpICsgcmVzdWx0WzE6XQorCisKK2NsYXNzIFNlbmRyZWN2bXNnRGdyYW1GbGFnc0Jhc2UoU2VuZHJlY3Ztc2dCYXNlKToKKyAgICAjIERlZmluZXMgZmxhZ3MgdG8gYmUgY2hlY2tlZCBpbiBtc2dfZmxhZ3MgZm9yIGRhdGFncmFtIHNvY2tldHMuCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgbXNnX2ZsYWdzX25vbl9lb3JfaW5kaWNhdG9yKHNlbGYpOgorICAgICAgICByZXR1cm4gc3VwZXIoKS5tc2dfZmxhZ3Nfbm9uX2Vvcl9pbmRpY2F0b3IgfCBzb2NrZXQuTVNHX1RSVU5DCisKKworY2xhc3MgU2VuZHJlY3Ztc2dTQ1RQRmxhZ3NCYXNlKFNlbmRyZWN2bXNnQmFzZSk6CisgICAgIyBEZWZpbmVzIGZsYWdzIHRvIGJlIGNoZWNrZWQgaW4gbXNnX2ZsYWdzIGZvciBTQ1RQIHNvY2tldHMuCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgbXNnX2ZsYWdzX2Vvcl9pbmRpY2F0b3Ioc2VsZik6CisgICAgICAgIHJldHVybiBzdXBlcigpLm1zZ19mbGFnc19lb3JfaW5kaWNhdG9yIHwgc29ja2V0Lk1TR19FT1IKKworCitjbGFzcyBTZW5kcmVjdm1zZ0Nvbm5lY3Rpb25sZXNzQmFzZShTZW5kcmVjdm1zZ0Jhc2UpOgorICAgICMgQmFzZSBjbGFzcyBmb3IgdGVzdHMgb24gY29ubmVjdGlvbmxlc3MtbW9kZSBzb2NrZXRzLiAgVXNlcnMgbXVzdAorICAgICMgc3VwcGx5IHNvY2tldHMgb24gYXR0cmlidXRlcyBjbGkgYW5kIHNlcnYgdG8gYmUgbWFwcGVkIHRvCisgICAgIyBjbGlfc29jayBhbmQgc2Vydl9zb2NrIHJlc3BlY3RpdmVseS4KKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBzZXJ2X3NvY2soc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLnNlcnYKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBjbGlfc29jayhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuY2xpCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgc2VuZG1zZ190b19zZXJ2ZXJfZGVmYXVsdHMoc2VsZik6CisgICAgICAgIHJldHVybiAoW10sIFtdLCAwLCBzZWxmLnNlcnZfYWRkcikKKworICAgIGRlZiBzZW5kVG9TZXJ2ZXIoc2VsZiwgbXNnKToKKyAgICAgICAgcmV0dXJuIHNlbGYuY2xpX3NvY2suc2VuZHRvKG1zZywgc2VsZi5zZXJ2X2FkZHIpCisKKworY2xhc3MgU2VuZHJlY3Ztc2dDb25uZWN0ZWRCYXNlKFNlbmRyZWN2bXNnQmFzZSk6CisgICAgIyBCYXNlIGNsYXNzIGZvciB0ZXN0cyBvbiBjb25uZWN0ZWQgc29ja2V0cy4gIFVzZXJzIG11c3Qgc3VwcGx5CisgICAgIyBzb2NrZXRzIG9uIGF0dHJpYnV0ZXMgc2Vydl9jb25uIGFuZCBjbGlfY29ubiAocmVwcmVzZW50aW5nIHRoZQorICAgICMgY29ubmVjdGlvbnMgKnRvKiB0aGUgc2VydmVyIGFuZCB0aGUgY2xpZW50KSwgdG8gYmUgbWFwcGVkIHRvCisgICAgIyBjbGlfc29jayBhbmQgc2Vydl9zb2NrIHJlc3BlY3RpdmVseS4KKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBzZXJ2X3NvY2soc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLmNsaV9jb25uCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgY2xpX3NvY2soc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLnNlcnZfY29ubgorCisgICAgZGVmIGNoZWNrUmVjdm1zZ0FkZHJlc3Moc2VsZiwgYWRkcjEsIGFkZHIyKToKKyAgICAgICAgIyBBZGRyZXNzIGlzIGN1cnJlbnRseSAidW5zcGVjaWZpZWQiIGZvciBhIGNvbm5lY3RlZCBzb2NrZXQsCisgICAgICAgICMgc28gd2UgZG9uJ3QgZXhhbWluZSBpdAorICAgICAgICBwYXNzCisKKworY2xhc3MgU2VuZHJlY3Ztc2dTZXJ2ZXJUaW1lb3V0QmFzZShTZW5kcmVjdm1zZ0Jhc2UpOgorICAgICMgQmFzZSBjbGFzcyB0byBzZXQgYSB0aW1lb3V0IG9uIHNlcnZlcidzIHNvY2tldC4KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoKS5zZXRVcCgpCisgICAgICAgIHNlbGYuc2Vydl9zb2NrLnNldHRpbWVvdXQoc2VsZi5mYWlsX3RpbWVvdXQpCisKKworY2xhc3MgU2VuZG1zZ1Rlc3RzKFNlbmRyZWN2bXNnU2VydmVyVGltZW91dEJhc2UpOgorICAgICMgVGVzdHMgZm9yIHNlbmRtc2coKSB3aGljaCBjYW4gdXNlIGFueSBzb2NrZXQgdHlwZSBhbmQgZG8gbm90CisgICAgIyBpbnZvbHZlIHJlY3Ztc2coKSBvciByZWN2bXNnX2ludG8oKS4KKworICAgIGRlZiB0ZXN0U2VuZG1zZyhzZWxmKToKKyAgICAgICAgIyBTZW5kIGEgc2ltcGxlIG1lc3NhZ2Ugd2l0aCBzZW5kbXNnKCkuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdihsZW4oTVNHKSksIE1TRykKKworICAgIGRlZiBfdGVzdFNlbmRtc2coc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW01TR10pLCBsZW4oTVNHKSkKKworICAgIGRlZiB0ZXN0U2VuZG1zZ0RhdGFHZW5lcmF0b3Ioc2VsZik6CisgICAgICAgICMgU2VuZCBmcm9tIGJ1ZmZlciBvYnRhaW5lZCBmcm9tIGEgZ2VuZXJhdG9yIChub3QgYSBzZXF1ZW5jZSkuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdihsZW4oTVNHKSksIE1TRykKKworICAgIGRlZiBfdGVzdFNlbmRtc2dEYXRhR2VuZXJhdG9yKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2VuZG1zZ1RvU2VydmVyKChvIGZvciBvIGluIFtNU0ddKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRykpCisKKyAgICBkZWYgdGVzdFNlbmRtc2dBbmNpbGxhcnlHZW5lcmF0b3Ioc2VsZik6CisgICAgICAgICMgR2F0aGVyIChlbXB0eSkgYW5jaWxsYXJ5IGRhdGEgZnJvbSBhIGdlbmVyYXRvci4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlcnZfc29jay5yZWN2KGxlbihNU0cpKSwgTVNHKQorCisgICAgZGVmIF90ZXN0U2VuZG1zZ0FuY2lsbGFyeUdlbmVyYXRvcihzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlbmRtc2dUb1NlcnZlcihbTVNHXSwgKG8gZm9yIG8gaW4gW10pKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSkKKworICAgIGRlZiB0ZXN0U2VuZG1zZ0FycmF5KHNlbGYpOgorICAgICAgICAjIFNlbmQgZGF0YSBmcm9tIGFuIGFycmF5IGluc3RlYWQgb2YgdGhlIHVzdWFsIGJ5dGVzIG9iamVjdC4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlcnZfc29jay5yZWN2KGxlbihNU0cpKSwgTVNHKQorCisgICAgZGVmIF90ZXN0U2VuZG1zZ0FycmF5KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2VuZG1zZ1RvU2VydmVyKFthcnJheS5hcnJheSgiQiIsIE1TRyldKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSkKKworICAgIGRlZiB0ZXN0U2VuZG1zZ0dhdGhlcihzZWxmKToKKyAgICAgICAgIyBTZW5kIG1lc3NhZ2UgZGF0YSBmcm9tIG1vcmUgdGhhbiBvbmUgYnVmZmVyIChnYXRoZXIgd3JpdGUpLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2Vydl9zb2NrLnJlY3YobGVuKE1TRykpLCBNU0cpCisKKyAgICBkZWYgX3Rlc3RTZW5kbXNnR2F0aGVyKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2VuZG1zZ1RvU2VydmVyKFtNU0dbOjNdLCBNU0dbMzpdXSksIGxlbihNU0cpKQorCisgICAgZGVmIHRlc3RTZW5kbXNnQmFkQXJncyhzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHNlbmRtc2coKSByZWplY3RzIGludmFsaWQgYXJndW1lbnRzLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2Vydl9zb2NrLnJlY3YoMTAwMCksIGIiZG9uZSIpCisKKyAgICBkZWYgX3Rlc3RTZW5kbXNnQmFkQXJncyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLmNsaV9zb2NrLnNlbmRtc2cpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGIibm90IGluIGFuIGl0ZXJhYmxlIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0KCkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtvYmplY3QoKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0csIG9iamVjdCgpXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10sIG9iamVjdCgpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2VuZG1zZ1RvU2VydmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbTVNHXSwgW10sIG9iamVjdCgpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2VuZG1zZ1RvU2VydmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbTVNHXSwgW10sIDAsIG9iamVjdCgpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihiImRvbmUiKQorCisgICAgZGVmIHRlc3RTZW5kbXNnQmFkQ21zZyhzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IGludmFsaWQgYW5jaWxsYXJ5IGRhdGEgaXRlbXMgYXJlIHJlamVjdGVkLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2Vydl9zb2NrLnJlY3YoMTAwMCksIGIiZG9uZSIpCisKKyAgICBkZWYgX3Rlc3RTZW5kbXNnQmFkQ21zZyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10sIFtvYmplY3QoKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0ddLCBbKG9iamVjdCgpLCAwLCBiImRhdGEiKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0ddLCBbKDAsIG9iamVjdCgpLCBiImRhdGEiKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0ddLCBbKDAsIDAsIG9iamVjdCgpKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0ddLCBbKDAsIDApXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10sIFsoMCwgMCwgYiJkYXRhIiwgNDIpXSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoYiJkb25lIikKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19TUEFDRSIpCisgICAgZGVmIHRlc3RTZW5kbXNnQmFkTXVsdGlDbXNnKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgaW52YWxpZCBhbmNpbGxhcnkgZGF0YSBpdGVtcyBhcmUgcmVqZWN0ZWQgd2hlbgorICAgICAgICAjIG1vcmUgdGhhbiBvbmUgaXRlbSBpcyBwcmVzZW50LgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2Vydl9zb2NrLnJlY3YoMTAwMCksIGIiZG9uZSIpCisKKyAgICBAdGVzdFNlbmRtc2dCYWRNdWx0aUNtc2cuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTZW5kbXNnQmFkTXVsdGlDbXNnKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2VuZG1zZ1RvU2VydmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbTVNHXSwgWzAsIDAsIGIiIl0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0ddLCBbKDAsIDAsIGIiIiksIG9iamVjdCgpXSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoYiJkb25lIikKKworICAgIGRlZiB0ZXN0U2VuZG1zZ0V4Y2Vzc0Ntc2dSZWplY3Qoc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCBzZW5kbXNnKCkgcmVqZWN0cyBleGNlc3MgYW5jaWxsYXJ5IGRhdGEgaXRlbXMKKyAgICAgICAgIyB3aGVuIHRoZSBudW1iZXIgdGhhdCBjYW4gYmUgc2VudCBpcyBsaW1pdGVkLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2Vydl9zb2NrLnJlY3YoMTAwMCksIGIiZG9uZSIpCisKKyAgICBkZWYgX3Rlc3RTZW5kbXNnRXhjZXNzQ21zZ1JlamVjdChzZWxmKToKKyAgICAgICAgaWYgbm90IGhhc2F0dHIoc29ja2V0LCAiQ01TR19TUEFDRSIpOgorICAgICAgICAgICAgIyBDYW4gb25seSBzZW5kIG9uZSBpdGVtCisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvcikgYXMgY206CisgICAgICAgICAgICAgICAgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW01TR10sIFsoMCwgMCwgYiIiKSwgKDAsIDAsIGIiIildKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoY20uZXhjZXB0aW9uLmVycm5vKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihiImRvbmUiKQorCisgICAgZGVmIHRlc3RTZW5kbXNnQWZ0ZXJDbG9zZShzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHNlbmRtc2coKSBmYWlscyBvbiBhIGNsb3NlZCBzb2NrZXQuCisgICAgICAgIHBhc3MKKworICAgIGRlZiBfdGVzdFNlbmRtc2dBZnRlckNsb3NlKHNlbGYpOgorICAgICAgICBzZWxmLmNsaV9zb2NrLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwgW01TR10pCisKKworY2xhc3MgU2VuZG1zZ1N0cmVhbVRlc3RzKFNlbmRtc2dUZXN0cyk6CisgICAgIyBUZXN0cyBmb3Igc2VuZG1zZygpIHdoaWNoIHJlcXVpcmUgYSBzdHJlYW0gc29ja2V0IGFuZCBkbyBub3QKKyAgICAjIGludm9sdmUgcmVjdm1zZygpIG9yIHJlY3Ztc2dfaW50bygpLgorCisgICAgZGVmIHRlc3RTZW5kbXNnRXhwbGljaXROb25lQWRkcihzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHBlZXIgYWRkcmVzcyBjYW4gYmUgc3BlY2lmaWVkIGFzIE5vbmUuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdihsZW4oTVNHKSksIE1TRykKKworICAgIGRlZiBfdGVzdFNlbmRtc2dFeHBsaWNpdE5vbmVBZGRyKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2VuZG1zZ1RvU2VydmVyKFtNU0ddLCBbXSwgMCwgTm9uZSksIGxlbihNU0cpKQorCisgICAgZGVmIHRlc3RTZW5kbXNnVGltZW91dChzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHRpbWVvdXQgd29ya3Mgd2l0aCBzZW5kbXNnKCkuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdig1MTIpLCBiImEiKjUxMikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorCisgICAgZGVmIF90ZXN0U2VuZG1zZ1RpbWVvdXQoc2VsZik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuY2xpX3NvY2suc2V0dGltZW91dCgwLjAzKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQudGltZW91dCk6CisgICAgICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW2IiYSIqNTEyXSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHNlbGYubWlzY19ldmVudC5zZXQoKQorCisgICAgIyBYWFg6IHdvdWxkIGJlIG5pY2UgdG8gaGF2ZSBtb3JlIHRlc3RzIGZvciBzZW5kbXNnIGZsYWdzIGFyZ3VtZW50LgorCisgICAgIyBMaW51eCBzdXBwb3J0cyBNU0dfRE9OVFdBSVQgd2hlbiBzZW5kaW5nLCBidXQgaW4gZ2VuZXJhbCwgaXQKKyAgICAjIG9ubHkgd29ya3Mgd2hlbiByZWNlaXZpbmcuICBDb3VsZCBhZGQgb3RoZXIgcGxhdGZvcm1zIGlmIHRoZXkKKyAgICAjIHN1cHBvcnQgaXQgdG9vLgorICAgIEBza2lwV2l0aENsaWVudElmKHN5cy5wbGF0Zm9ybSBub3QgaW4geyJsaW51eDIifSwKKyAgICAgICAgICAgICAgICAgICAgICAiTVNHX0RPTlRXQUlUIG5vdCBrbm93biB0byB3b3JrIG9uIHRoaXMgcGxhdGZvcm0gd2hlbiAiCisgICAgICAgICAgICAgICAgICAgICAgInNlbmRpbmciKQorICAgIGRlZiB0ZXN0U2VuZG1zZ0RvbnRXYWl0KHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgTVNHX0RPTlRXQUlUIGluIGZsYWdzIGNhdXNlcyBub24tYmxvY2tpbmcgYmVoYXZpb3VyLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2Vydl9zb2NrLnJlY3YoNTEyKSwgYiJhIio1MTIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKworICAgIEB0ZXN0U2VuZG1zZ0RvbnRXYWl0LmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0U2VuZG1zZ0RvbnRXYWl0KHNlbGYpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvcikgYXMgY206CisgICAgICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW2IiYSIqNTEyXSwgW10sIHNvY2tldC5NU0dfRE9OVFdBSVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEluKGNtLmV4Y2VwdGlvbi5lcnJubywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGVycm5vLkVBR0FJTiwgZXJybm8uRVdPVUxEQkxPQ0spKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VsZi5taXNjX2V2ZW50LnNldCgpCisKKworY2xhc3MgU2VuZG1zZ0Nvbm5lY3Rpb25sZXNzVGVzdHMoU2VuZG1zZ1Rlc3RzKToKKyAgICAjIFRlc3RzIGZvciBzZW5kbXNnKCkgd2hpY2ggcmVxdWlyZSBhIGNvbm5lY3Rpb25sZXNzLW1vZGUKKyAgICAjIChlLmcuIGRhdGFncmFtKSBzb2NrZXQsIGFuZCBkbyBub3QgaW52b2x2ZSByZWN2bXNnKCkgb3IKKyAgICAjIHJlY3Ztc2dfaW50bygpLgorCisgICAgZGVmIHRlc3RTZW5kbXNnTm9EZXN0QWRkcihzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHNlbmRtc2coKSBmYWlscyB3aGVuIG5vIGRlc3RpbmF0aW9uIGFkZHJlc3MgaXMKKyAgICAgICAgIyBnaXZlbiBmb3IgdW5jb25uZWN0ZWQgc29ja2V0LgorICAgICAgICBwYXNzCisKKyAgICBkZWYgX3Rlc3RTZW5kbXNnTm9EZXN0QWRkcihzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCBzZWxmLmNsaV9zb2NrLnNlbmRtc2csCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0ddKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHNlbGYuY2xpX3NvY2suc2VuZG1zZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10sIFtdLCAwLCBOb25lKQorCisKK2NsYXNzIFJlY3Ztc2dHZW5lcmljVGVzdHMoU2VuZHJlY3Ztc2dCYXNlKToKKyAgICAjIFRlc3RzIGZvciByZWN2bXNnKCkgd2hpY2ggY2FuIGFsc28gYmUgZW11bGF0ZWQgdXNpbmcKKyAgICAjIHJlY3Ztc2dfaW50bygpLCBhbmQgY2FuIHVzZSBhbnkgc29ja2V0IHR5cGUuCisKKyAgICBkZWYgdGVzdFJlY3Ztc2coc2VsZik6CisgICAgICAgICMgUmVjZWl2ZSBhIHNpbXBsZSBtZXNzYWdlIHdpdGggcmVjdm1zZ1tfaW50b10oKS4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICBkZWYgX3Rlc3RSZWN2bXNnKHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBkZWYgdGVzdFJlY3Ztc2dFeHBsaWNpdERlZmF1bHRzKHNlbGYpOgorICAgICAgICAjIFRlc3QgcmVjdm1zZ1tfaW50b10oKSB3aXRoIGRlZmF1bHQgYXJndW1lbnRzIHByb3ZpZGVkIGV4cGxpY2l0bHkuCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAwLCAwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dFeHBsaWNpdERlZmF1bHRzKHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBkZWYgdGVzdFJlY3Ztc2dTaG9ydGVyKHNlbGYpOgorICAgICAgICAjIFJlY2VpdmUgYSBtZXNzYWdlIHNtYWxsZXIgdGhhbiBidWZmZXIuCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpICsgNDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlKQorCisgICAgZGVmIF90ZXN0UmVjdm1zZ1Nob3J0ZXIoc2VsZik6CisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgICMgRnJlZUJTRCA8IDggZG9lc24ndCBhbHdheXMgc2V0IHRoZSBNU0dfVFJVTkMgZmxhZyB3aGVuIGEgdHJ1bmNhdGVkCisgICAgIyBkYXRhZ3JhbSBpcyByZWNlaXZlZCAoaXNzdWUgIzEzMDAxKS4KKyAgICBAc3VwcG9ydC5yZXF1aXJlc19mcmVlYnNkX3ZlcnNpb24oOCkKKyAgICBkZWYgdGVzdFJlY3Ztc2dUcnVuYyhzZWxmKToKKyAgICAgICAgIyBSZWNlaXZlIHBhcnQgb2YgbWVzc2FnZSwgY2hlY2sgZm9yIHRydW5jYXRpb24gaW5kaWNhdG9ycy4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRykgLSAzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHWzotM10pCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1GYWxzZSkKKworICAgIEBzdXBwb3J0LnJlcXVpcmVzX2ZyZWVic2RfdmVyc2lvbig4KQorICAgIGRlZiBfdGVzdFJlY3Ztc2dUcnVuYyhzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgZGVmIHRlc3RSZWN2bXNnU2hvcnRBbmNpbGxhcnlCdWYoc2VsZik6CisgICAgICAgICMgVGVzdCBhbmNpbGxhcnkgZGF0YSBidWZmZXIgdG9vIHNtYWxsIHRvIGhvbGQgYW55IGFuY2lsbGFyeSBkYXRhLgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICBkZWYgX3Rlc3RSZWN2bXNnU2hvcnRBbmNpbGxhcnlCdWYoc2VsZik6CisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIGRlZiB0ZXN0UmVjdm1zZ0xvbmdBbmNpbGxhcnlCdWYoc2VsZik6CisgICAgICAgICMgVGVzdCBsYXJnZSBhbmNpbGxhcnkgZGF0YSBidWZmZXIuCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAxMDI0MCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICBkZWYgX3Rlc3RSZWN2bXNnTG9uZ0FuY2lsbGFyeUJ1ZihzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgZGVmIHRlc3RSZWN2bXNnQWZ0ZXJDbG9zZShzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHJlY3Ztc2dbX2ludG9dKCkgZmFpbHMgb24gYSBjbG9zZWQgc29ja2V0LgorICAgICAgICBzZWxmLnNlcnZfc29jay5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvciwgc2VsZi5kb1JlY3Ztc2csIHNlbGYuc2Vydl9zb2NrLCAxMDI0KQorCisgICAgZGVmIF90ZXN0UmVjdm1zZ0FmdGVyQ2xvc2Uoc2VsZik6CisgICAgICAgIHBhc3MKKworICAgIGRlZiB0ZXN0UmVjdm1zZ1RpbWVvdXQoc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCB0aW1lb3V0IHdvcmtzLgorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLnNlcnZfc29jay5zZXR0aW1lb3V0KDAuMDMpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQudGltZW91dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZG9SZWN2bXNnLCBzZWxmLnNlcnZfc29jaywgbGVuKE1TRykpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzZWxmLm1pc2NfZXZlbnQuc2V0KCkKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dUaW1lb3V0KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIk1TR19QRUVLIikKKyAgICBkZWYgdGVzdFJlY3Ztc2dQZWVrKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgTVNHX1BFRUsgaW4gZmxhZ3MgZW5hYmxlcyBleGFtaW5hdGlvbiBvZiBwZW5kaW5nCisgICAgICAgICMgZGF0YSB3aXRob3V0IGNvbnN1bWluZyBpdC4KKworICAgICAgICAjIFJlY2VpdmUgcGFydCBvZiBkYXRhIHdpdGggTVNHX1BFRUsuCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpIC0gMywgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5NU0dfUEVFSykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TR1s6LTNdKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgIyBJZ25vcmluZyBNU0dfVFJVTkMgaGVyZSAoc28gdGhpcyB0ZXN0IGlzIHRoZSBzYW1lIGZvciBzdHJlYW0KKyAgICAgICAgIyBhbmQgZGF0YWdyYW0gc29ja2V0cykuICBTb21lIHdvcmRpbmcgaW4gUE9TSVggc2VlbXMgdG8KKyAgICAgICAgIyBzdWdnZXN0IHRoYXQgaXQgbmVlZG4ndCBiZSBzZXQgd2hlbiBwZWVraW5nLCBidXQgdGhhdCBtYXkKKyAgICAgICAgIyBqdXN0IGJlIGEgc2xpcC4KKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmU9Z2V0YXR0cihzb2NrZXQsICJNU0dfVFJVTkMiLCAwKSkKKworICAgICAgICAjIFJlY2VpdmUgYWxsIGRhdGEgd2l0aCBNU0dfUEVFSy4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuTVNHX1BFRUspCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlKQorCisgICAgICAgICMgQ2hlY2sgdGhhdCB0aGUgc2FtZSBkYXRhIGNhbiBzdGlsbCBiZSByZWNlaXZlZCBub3JtYWxseS4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICBAdGVzdFJlY3Ztc2dQZWVrLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0UmVjdm1zZ1BlZWsoc2VsZik6CisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInNlbmRtc2ciKQorICAgIGRlZiB0ZXN0UmVjdm1zZ0Zyb21TZW5kbXNnKHNlbGYpOgorICAgICAgICAjIFRlc3QgcmVjZWl2aW5nIHdpdGggcmVjdm1zZ1tfaW50b10oKSB3aGVuIG1lc3NhZ2UgaXMgc2VudAorICAgICAgICAjIHVzaW5nIHNlbmRtc2coKS4KKyAgICAgICAgc2VsZi5zZXJ2X3NvY2suc2V0dGltZW91dChzZWxmLmZhaWxfdGltZW91dCkKKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICBAdGVzdFJlY3Ztc2dGcm9tU2VuZG1zZy5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFJlY3Ztc2dGcm9tU2VuZG1zZyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlbmRtc2dUb1NlcnZlcihbTVNHWzozXSwgTVNHWzM6XV0pLCBsZW4oTVNHKSkKKworCitjbGFzcyBSZWN2bXNnR2VuZXJpY1N0cmVhbVRlc3RzKFJlY3Ztc2dHZW5lcmljVGVzdHMpOgorICAgICMgVGVzdHMgd2hpY2ggcmVxdWlyZSBhIHN0cmVhbSBzb2NrZXQgYW5kIGNhbiB1c2UgZWl0aGVyIHJlY3Ztc2coKQorICAgICMgb3IgcmVjdm1zZ19pbnRvKCkuCisKKyAgICBkZWYgdGVzdFJlY3Ztc2dFT0Yoc2VsZik6CisgICAgICAgICMgUmVjZWl2ZSBlbmQtb2Ytc3RyZWFtIGluZGljYXRvciAoYiIiLCBwZWVyIHNvY2tldCBjbG9zZWQpLgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssIDEwMjQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBiIiIpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1Ob25lKSAjIE1pZ2h0IG5vdCBoYXZlIGVuZC1vZi1yZWNvcmQgbWFya2VyCisKKyAgICBkZWYgX3Rlc3RSZWN2bXNnRU9GKHNlbGYpOgorICAgICAgICBzZWxmLmNsaV9zb2NrLmNsb3NlKCkKKworICAgIGRlZiB0ZXN0UmVjdm1zZ092ZXJmbG93KHNlbGYpOgorICAgICAgICAjIFJlY2VpdmUgYSBtZXNzYWdlIGluIG1vcmUgdGhhbiBvbmUgY2h1bmsuCisgICAgICAgIHNlZzEsIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRykgLSAzKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9RmFsc2UpCisKKyAgICAgICAgc2VnMiwgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgMTAyNCkKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICAgICAgbXNnID0gc2VnMSArIHNlZzIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dPdmVyZmxvdyhzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisKK2NsYXNzIFJlY3Ztc2dUZXN0cyhSZWN2bXNnR2VuZXJpY1Rlc3RzKToKKyAgICAjIFRlc3RzIGZvciByZWN2bXNnKCkgd2hpY2ggY2FuIHVzZSBhbnkgc29ja2V0IHR5cGUuCisKKyAgICBkZWYgdGVzdFJlY3Ztc2dCYWRBcmdzKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgcmVjdm1zZygpIHJlamVjdHMgaW52YWxpZCBhcmd1bWVudHMuCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgLTEsIDAsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2csCisgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAtMSwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbYnl0ZWFycmF5KDEwKV0sIDAsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0KCksIDAsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIG9iamVjdCgpLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2csCisgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAwLCBvYmplY3QoKSkKKworICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5zZXJ2X3NvY2sucmVjdm1zZyhsZW4oTVNHKSwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICBkZWYgX3Rlc3RSZWN2bXNnQmFkQXJncyhzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisKK2NsYXNzIFJlY3Ztc2dJbnRvVGVzdHMoUmVjdm1zZ0ludG9NaXhpbiwgUmVjdm1zZ0dlbmVyaWNUZXN0cyk6CisgICAgIyBUZXN0cyBmb3IgcmVjdm1zZ19pbnRvKCkgd2hpY2ggY2FuIHVzZSBhbnkgc29ja2V0IHR5cGUuCisKKyAgICBkZWYgdGVzdFJlY3Ztc2dJbnRvQmFkQXJncyhzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHJlY3Ztc2dfaW50bygpIHJlamVjdHMgaW52YWxpZCBhcmd1bWVudHMuCisgICAgICAgIGJ1ZiA9IGJ5dGVhcnJheShsZW4oTVNHKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZ19pbnRvLAorICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZiwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8sCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtvYmplY3QoKV0sIDAsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZ19pbnRvLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbYiJJJ20gbm90IHdyaXRhYmxlIl0sIDAsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZ19pbnRvLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbYnVmLCBvYmplY3QoKV0sIDAsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2dfaW50bywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW2J1Zl0sIC0xLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2dfaW50bywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW2J1Zl0sIG9iamVjdCgpLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2dfaW50bywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW2J1Zl0sIDAsIG9iamVjdCgpKQorCisgICAgICAgIG5ieXRlcywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8oW2J1Zl0sIDAsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmJ5dGVzLCBsZW4oTVNHKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChidWYsIGJ5dGVhcnJheShNU0cpKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dJbnRvQmFkQXJncyhzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgZGVmIHRlc3RSZWN2bXNnSW50b0dlbmVyYXRvcihzZWxmKToKKyAgICAgICAgIyBSZWNlaXZlIGludG8gYnVmZmVyIG9idGFpbmVkIGZyb20gYSBnZW5lcmF0b3IgKG5vdCBhIHNlcXVlbmNlKS4KKyAgICAgICAgYnVmID0gYnl0ZWFycmF5KGxlbihNU0cpKQorICAgICAgICBuYnl0ZXMsIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5zZXJ2X3NvY2sucmVjdm1zZ19pbnRvKAorICAgICAgICAgICAgKG8gZm9yIG8gaW4gW2J1Zl0pKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ieXRlcywgbGVuKE1TRykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnVmLCBieXRlYXJyYXkoTVNHKSkKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICBkZWYgX3Rlc3RSZWN2bXNnSW50b0dlbmVyYXRvcihzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgZGVmIHRlc3RSZWN2bXNnSW50b0FycmF5KHNlbGYpOgorICAgICAgICAjIFJlY2VpdmUgaW50byBhbiBhcnJheSByYXRoZXIgdGhhbiB0aGUgdXN1YWwgYnl0ZWFycmF5LgorICAgICAgICBidWYgPSBhcnJheS5hcnJheSgiQiIsIFswXSAqIGxlbihNU0cpKQorICAgICAgICBuYnl0ZXMsIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5zZXJ2X3NvY2sucmVjdm1zZ19pbnRvKFtidWZdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ieXRlcywgbGVuKE1TRykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnVmLnRvYnl0ZXMoKSwgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dJbnRvQXJyYXkoc2VsZik6CisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIGRlZiB0ZXN0UmVjdm1zZ0ludG9TY2F0dGVyKHNlbGYpOgorICAgICAgICAjIFJlY2VpdmUgaW50byBtdWx0aXBsZSBidWZmZXJzIChzY2F0dGVyIHdyaXRlKS4KKyAgICAgICAgYjEgPSBieXRlYXJyYXkoYiItLS0tIikKKyAgICAgICAgYjIgPSBieXRlYXJyYXkoYiIwMTIzNDU2Nzg5IikKKyAgICAgICAgYjMgPSBieXRlYXJyYXkoYiItLS0tLS0tLS0tLS0tLSIpCisgICAgICAgIG5ieXRlcywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8oCisgICAgICAgICAgICBbYjEsIG1lbW9yeXZpZXcoYjIpWzI6OV0sIGIzXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuYnl0ZXMsIGxlbihiIk1hcnkgaGFkIGEgbGl0dGxlIGxhbWIiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiMSwgYnl0ZWFycmF5KGIiTWFyeSIpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIyLCBieXRlYXJyYXkoYiIwMSBoYWQgYSA5IikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYjMsIGJ5dGVhcnJheShiImxpdHRsZSBsYW1iLS0tIikpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlKQorCisgICAgZGVmIF90ZXN0UmVjdm1zZ0ludG9TY2F0dGVyKHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihiIk1hcnkgaGFkIGEgbGl0dGxlIGxhbWIiKQorCisKK2NsYXNzIENtc2dNYWNyb1Rlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAjIFRlc3QgdGhlIGZ1bmN0aW9ucyBDTVNHX0xFTigpIGFuZCBDTVNHX1NQQUNFKCkuICBUZXN0cworICAgICMgYXNzdW1wdGlvbnMgdXNlZCBieSBzZW5kbXNnKCkgYW5kIHJlY3Ztc2dbX2ludG9dKCksIHdoaWNoIHNoYXJlCisgICAgIyBjb2RlIHdpdGggdGhlc2UgZnVuY3Rpb25zLgorCisgICAgIyBNYXRjaCB0aGUgZGVmaW5pdGlvbiBpbiBzb2NrZXRtb2R1bGUuYworICAgIHNvY2tsZW5fdF9saW1pdCA9IG1pbigweDdmZmZmZmZmLCBfdGVzdGNhcGkuSU5UX01BWCkKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19MRU4iKQorICAgIGRlZiB0ZXN0Q01TR19MRU4oc2VsZik6CisgICAgICAgICMgVGVzdCBDTVNHX0xFTigpIHdpdGggdmFyaW91cyB2YWxpZCBhbmQgaW52YWxpZCB2YWx1ZXMsCisgICAgICAgICMgY2hlY2tpbmcgdGhlIGFzc3VtcHRpb25zIHVzZWQgYnkgcmVjdm1zZygpIGFuZCBzZW5kbXNnKCkuCisgICAgICAgIHRvb2JpZyA9IHNlbGYuc29ja2xlbl90X2xpbWl0IC0gc29ja2V0LkNNU0dfTEVOKDApICsgMQorICAgICAgICB2YWx1ZXMgPSBsaXN0KHJhbmdlKDI1NykpICsgbGlzdChyYW5nZSh0b29iaWcgLSAyNTcsIHRvb2JpZykpCisKKyAgICAgICAgIyBzdHJ1Y3QgY21zZ2hkciBoYXMgYXQgbGVhc3QgdGhyZWUgbWVtYmVycywgdHdvIG9mIHdoaWNoIGFyZSBpbnRzCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihzb2NrZXQuQ01TR19MRU4oMCksIGFycmF5LmFycmF5KCJpIikuaXRlbXNpemUgKiAyKQorICAgICAgICBmb3IgbiBpbiB2YWx1ZXM6CisgICAgICAgICAgICByZXQgPSBzb2NrZXQuQ01TR19MRU4obikKKyAgICAgICAgICAgICMgVGhpcyBpcyBob3cgcmVjdm1zZygpIGNhbGN1bGF0ZXMgdGhlIGRhdGEgc2l6ZQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXQgLSBzb2NrZXQuQ01TR19MRU4oMCksIG4pCisgICAgICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChyZXQsIHNlbGYuc29ja2xlbl90X2xpbWl0KQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHNvY2tldC5DTVNHX0xFTiwgLTEpCisgICAgICAgICMgc2VuZG1zZygpIHNoYXJlcyBjb2RlIHdpdGggdGhlc2UgZnVuY3Rpb25zLCBhbmQgcmVxdWlyZXMKKyAgICAgICAgIyB0aGF0IGl0IHJlamVjdCB2YWx1ZXMgb3ZlciB0aGUgbGltaXQuCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHNvY2tldC5DTVNHX0xFTiwgdG9vYmlnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBzb2NrZXQuQ01TR19MRU4sIHN5cy5tYXhzaXplKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIikKKyAgICBkZWYgdGVzdENNU0dfU1BBQ0Uoc2VsZik6CisgICAgICAgICMgVGVzdCBDTVNHX1NQQUNFKCkgd2l0aCB2YXJpb3VzIHZhbGlkIGFuZCBpbnZhbGlkIHZhbHVlcywKKyAgICAgICAgIyBjaGVja2luZyB0aGUgYXNzdW1wdGlvbnMgdXNlZCBieSBzZW5kbXNnKCkuCisgICAgICAgIHRvb2JpZyA9IHNlbGYuc29ja2xlbl90X2xpbWl0IC0gc29ja2V0LkNNU0dfU1BBQ0UoMSkgKyAxCisgICAgICAgIHZhbHVlcyA9IGxpc3QocmFuZ2UoMjU3KSkgKyBsaXN0KHJhbmdlKHRvb2JpZyAtIDI1NywgdG9vYmlnKSkKKworICAgICAgICBsYXN0ID0gc29ja2V0LkNNU0dfU1BBQ0UoMCkKKyAgICAgICAgIyBzdHJ1Y3QgY21zZ2hkciBoYXMgYXQgbGVhc3QgdGhyZWUgbWVtYmVycywgdHdvIG9mIHdoaWNoIGFyZSBpbnRzCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsYXN0LCBhcnJheS5hcnJheSgiaSIpLml0ZW1zaXplICogMikKKyAgICAgICAgZm9yIG4gaW4gdmFsdWVzOgorICAgICAgICAgICAgcmV0ID0gc29ja2V0LkNNU0dfU1BBQ0UobikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKHJldCwgbGFzdCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKHJldCwgc29ja2V0LkNNU0dfTEVOKG4pKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwocmV0LCBuICsgc29ja2V0LkNNU0dfTEVOKDApKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwocmV0LCBzZWxmLnNvY2tsZW5fdF9saW1pdCkKKyAgICAgICAgICAgIGxhc3QgPSByZXQKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBzb2NrZXQuQ01TR19TUEFDRSwgLTEpCisgICAgICAgICMgc2VuZG1zZygpIHNoYXJlcyBjb2RlIHdpdGggdGhlc2UgZnVuY3Rpb25zLCBhbmQgcmVxdWlyZXMKKyAgICAgICAgIyB0aGF0IGl0IHJlamVjdCB2YWx1ZXMgb3ZlciB0aGUgbGltaXQuCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHNvY2tldC5DTVNHX1NQQUNFLCB0b29iaWcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHNvY2tldC5DTVNHX1NQQUNFLCBzeXMubWF4c2l6ZSkKKworCitjbGFzcyBTQ01SaWdodHNUZXN0KFNlbmRyZWN2bXNnU2VydmVyVGltZW91dEJhc2UpOgorICAgICMgVGVzdHMgZm9yIGZpbGUgZGVzY3JpcHRvciBwYXNzaW5nIG9uIFVuaXgtZG9tYWluIHNvY2tldHMuCisKKyAgICAjIEludmFsaWQgZmlsZSBkZXNjcmlwdG9yIHZhbHVlIHRoYXQncyB1bmxpa2VseSB0byBldmFsdWF0ZSB0byBhCisgICAgIyByZWFsIEZEIGV2ZW4gaWYgb25lIG9mIGl0cyBieXRlcyBpcyByZXBsYWNlZCB3aXRoIGEgZGlmZmVyZW50CisgICAgIyB2YWx1ZSAod2hpY2ggc2hvdWxkbid0IGFjdHVhbGx5IGhhcHBlbikuCisgICAgYmFkZmQgPSAtMHg1NTU1CisKKyAgICBkZWYgbmV3RkRzKHNlbGYsIG4pOgorICAgICAgICAjIFJldHVybiBhIGxpc3Qgb2YgbiBmaWxlIGRlc2NyaXB0b3JzIGZvciBuZXdseS1jcmVhdGVkIGZpbGVzCisgICAgICAgICMgY29udGFpbmluZyB0aGVpciBsaXN0IGluZGljZXMgYXMgQVNDSUkgbnVtYmVycy4KKyAgICAgICAgZmRzID0gW10KKyAgICAgICAgZm9yIGkgaW4gcmFuZ2Uobik6CisgICAgICAgICAgICBmZCwgcGF0aCA9IHRlbXBmaWxlLm1rc3RlbXAoKQorICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLnVubGluaywgcGF0aCkKKyAgICAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChvcy5jbG9zZSwgZmQpCisgICAgICAgICAgICBvcy53cml0ZShmZCwgc3RyKGkpLmVuY29kZSgpKQorICAgICAgICAgICAgZmRzLmFwcGVuZChmZCkKKyAgICAgICAgcmV0dXJuIGZkcworCisgICAgZGVmIGNoZWNrRkRzKHNlbGYsIGZkcyk6CisgICAgICAgICMgQ2hlY2sgdGhhdCB0aGUgZmlsZSBkZXNjcmlwdG9ycyBpbiB0aGUgZ2l2ZW4gbGlzdCBjb250YWluCisgICAgICAgICMgdGhlaXIgY29ycmVjdCBsaXN0IGluZGljZXMgYXMgQVNDSUkgbnVtYmVycy4KKyAgICAgICAgZm9yIG4sIGZkIGluIGVudW1lcmF0ZShmZHMpOgorICAgICAgICAgICAgb3MubHNlZWsoZmQsIDAsIG9zLlNFRUtfU0VUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5yZWFkKGZkLCAxMDI0KSwgc3RyKG4pLmVuY29kZSgpKQorCisgICAgZGVmIHJlZ2lzdGVyUmVjdm1zZ1Jlc3VsdChzZWxmLCByZXN1bHQpOgorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi5jbG9zZVJlY3Ztc2dGRHMsIHJlc3VsdCkKKworICAgIGRlZiBjbG9zZVJlY3Ztc2dGRHMoc2VsZiwgcmVjdm1zZ19yZXN1bHQpOgorICAgICAgICAjIENsb3NlIGFsbCBmaWxlIGRlc2NyaXB0b3JzIHNwZWNpZmllZCBpbiB0aGUgYW5jaWxsYXJ5IGRhdGEKKyAgICAgICAgIyBvZiB0aGUgZ2l2ZW4gcmV0dXJuIHZhbHVlIGZyb20gcmVjdm1zZygpIG9yIHJlY3Ztc2dfaW50bygpLgorICAgICAgICBmb3IgY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEgaW4gcmVjdm1zZ19yZXN1bHRbMV06CisgICAgICAgICAgICBpZiAoY21zZ19sZXZlbCA9PSBzb2NrZXQuU09MX1NPQ0tFVCBhbmQKKyAgICAgICAgICAgICAgICAgICAgY21zZ190eXBlID09IHNvY2tldC5TQ01fUklHSFRTKToKKyAgICAgICAgICAgICAgICBmZHMgPSBhcnJheS5hcnJheSgiaSIpCisgICAgICAgICAgICAgICAgZmRzLmZyb21ieXRlcyhjbXNnX2RhdGFbOgorICAgICAgICAgICAgICAgICAgICAgICAgbGVuKGNtc2dfZGF0YSkgLSAobGVuKGNtc2dfZGF0YSkgJSBmZHMuaXRlbXNpemUpXSkKKyAgICAgICAgICAgICAgICBmb3IgZmQgaW4gZmRzOgorICAgICAgICAgICAgICAgICAgICBvcy5jbG9zZShmZCkKKworICAgIGRlZiBjcmVhdGVBbmRTZW5kRkRzKHNlbGYsIG4pOgorICAgICAgICAjIFNlbmQgbiBuZXcgZmlsZSBkZXNjcmlwdG9ycyBjcmVhdGVkIGJ5IG5ld0ZEcygpIHRvIHRoZQorICAgICAgICAjIHNlcnZlciwgd2l0aCB0aGUgY29uc3RhbnQgTVNHIGFzIHRoZSBub24tYW5jaWxsYXJ5IGRhdGEuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzZWxmLnNlbmRtc2dUb1NlcnZlcihbTVNHXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsoc29ja2V0LlNPTF9TT0NLRVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5TQ01fUklHSFRTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIHNlbGYubmV3RkRzKG4pKSldKSwKKyAgICAgICAgICAgIGxlbihNU0cpKQorCisgICAgZGVmIGNoZWNrUmVjdm1zZ0ZEcyhzZWxmLCBudW1mZHMsIHJlc3VsdCwgbWF4Y21zZ3M9MSwgaWdub3JlZmxhZ3M9MCk6CisgICAgICAgICMgQ2hlY2sgdGhhdCBjb25zdGFudCBNU0cgd2FzIHJlY2VpdmVkIHdpdGggbnVtZmRzIGZpbGUKKyAgICAgICAgIyBkZXNjcmlwdG9ycyBpbiBhIG1heGltdW0gb2YgbWF4Y21zZ3MgY29udHJvbCBtZXNzYWdlcyAod2hpY2gKKyAgICAgICAgIyBtdXN0IGNvbnRhaW4gb25seSBjb21wbGV0ZSBpbnRlZ2VycykuICBCeSBkZWZhdWx0LCBjaGVjaworICAgICAgICAjIHRoYXQgTVNHX0NUUlVOQyBpcyB1bnNldCwgYnV0IGlnbm9yZSBhbnkgZmxhZ3MgaW4KKyAgICAgICAgIyBpZ25vcmVmbGFncy4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSwgY2hlY2t1bnNldD1zb2NrZXQuTVNHX0NUUlVOQywKKyAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yZT1pZ25vcmVmbGFncykKKworICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYW5jZGF0YSwgbGlzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwobGVuKGFuY2RhdGEpLCBtYXhjbXNncykKKyAgICAgICAgZmRzID0gYXJyYXkuYXJyYXkoImkiKQorICAgICAgICBmb3IgaXRlbSBpbiBhbmNkYXRhOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGl0ZW0sIHR1cGxlKQorICAgICAgICAgICAgY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEgPSBpdGVtCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtc2dfbGV2ZWwsIHNvY2tldC5TT0xfU09DS0VUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX3R5cGUsIHNvY2tldC5TQ01fUklHSFRTKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGNtc2dfZGF0YSwgYnl0ZXMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbXNnX2RhdGEpICUgU0laRU9GX0lOVCwgMCkKKyAgICAgICAgICAgIGZkcy5mcm9tYnl0ZXMoY21zZ19kYXRhKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGZkcyksIG51bWZkcykKKyAgICAgICAgc2VsZi5jaGVja0ZEcyhmZHMpCisKKyAgICBkZWYgdGVzdEZEUGFzc1NpbXBsZShzZWxmKToKKyAgICAgICAgIyBQYXNzIGEgc2luZ2xlIEZEIChhcnJheSByZWFkIGZyb20gYnl0ZXMgb2JqZWN0KS4KKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dGRHMoMSwgc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAxMDI0MCkpCisKKyAgICBkZWYgX3Rlc3RGRFBhc3NTaW1wbGUoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzZWxmLnNlbmRtc2dUb1NlcnZlcigKKyAgICAgICAgICAgICAgICBbTVNHXSwKKyAgICAgICAgICAgICAgICBbKHNvY2tldC5TT0xfU09DS0VULAorICAgICAgICAgICAgICAgICAgc29ja2V0LlNDTV9SSUdIVFMsCisgICAgICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIHNlbGYubmV3RkRzKDEpKS50b2J5dGVzKCkpXSksCisgICAgICAgICAgICBsZW4oTVNHKSkKKworICAgIGRlZiB0ZXN0TXVsdGlwbGVGRFBhc3Moc2VsZik6CisgICAgICAgICMgUGFzcyBtdWx0aXBsZSBGRHMgaW4gYSBzaW5nbGUgYXJyYXkuCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnRkRzKDQsIHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgMTAyNDApKQorCisgICAgZGVmIF90ZXN0TXVsdGlwbGVGRFBhc3Moc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlQW5kU2VuZEZEcyg0KQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIikKKyAgICBkZWYgdGVzdEZEUGFzc0NNU0dfU1BBQ0Uoc2VsZik6CisgICAgICAgICMgVGVzdCB1c2luZyBDTVNHX1NQQUNFKCkgdG8gY2FsY3VsYXRlIGFuY2lsbGFyeSBidWZmZXIgc2l6ZS4KKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dGRHMoCisgICAgICAgICAgICA0LCBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgbGVuKE1TRyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuQ01TR19TUEFDRSg0ICogU0laRU9GX0lOVCkpKQorCisgICAgQHRlc3RGRFBhc3NDTVNHX1NQQUNFLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0RkRQYXNzQ01TR19TUEFDRShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDQpCisKKyAgICBkZWYgdGVzdEZEUGFzc0NNU0dfTEVOKHNlbGYpOgorICAgICAgICAjIFRlc3QgdXNpbmcgQ01TR19MRU4oKSB0byBjYWxjdWxhdGUgYW5jaWxsYXJ5IGJ1ZmZlciBzaXplLgorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0ZEcygxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgbGVuKE1TRyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5DTVNHX0xFTig0ICogU0laRU9GX0lOVCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIFJGQyAzNTQyIHNheXMgaW1wbGVtZW50YXRpb25zIG1heSBzZXQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBNU0dfQ1RSVU5DIGlmIHRoZXJlIGlzbid0IGVub3VnaCBzcGFjZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGZvciB0cmFpbGluZyBwYWRkaW5nLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmVmbGFncz1zb2NrZXQuTVNHX0NUUlVOQykKKworICAgIGRlZiBfdGVzdEZEUGFzc0NNU0dfTEVOKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZUFuZFNlbmRGRHMoMSkKKworICAgICMgSXNzdWUgIzEyOTU4OiBUaGUgZm9sbG93aW5nIHRlc3QgaGFzIHByb2JsZW1zIG9uIE1hYyBPUyBYCisgICAgQHN1cHBvcnQuYW50aWNpcGF0ZV9mYWlsdXJlKHN5cy5wbGF0Zm9ybSA9PSAiZGFyd2luIikKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiKQorICAgIGRlZiB0ZXN0RkRQYXNzU2VwYXJhdGUoc2VsZik6CisgICAgICAgICMgUGFzcyB0d28gRkRzIGluIHR3byBzZXBhcmF0ZSBhcnJheXMuICBBcnJheXMgbWF5IGJlIGNvbWJpbmVkCisgICAgICAgICMgaW50byBhIHNpbmdsZSBjb250cm9sIG1lc3NhZ2UgYnkgdGhlIE9TLgorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0ZEcygyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgbGVuKE1TRyksIDEwMjQwKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4Y21zZ3M9MikKKworICAgIEB0ZXN0RkRQYXNzU2VwYXJhdGUuY2xpZW50X3NraXAKKyAgICBAc3VwcG9ydC5hbnRpY2lwYXRlX2ZhaWx1cmUoc3lzLnBsYXRmb3JtID09ICJkYXJ3aW4iKQorICAgIGRlZiBfdGVzdEZEUGFzc1NlcGFyYXRlKHNlbGYpOgorICAgICAgICBmZDAsIGZkMSA9IHNlbGYubmV3RkRzKDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzZWxmLnNlbmRtc2dUb1NlcnZlcihbTVNHXSwgWyhzb2NrZXQuU09MX1NPQ0tFVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5TQ01fUklHSFRTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbZmQwXSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc29ja2V0LlNPTF9TT0NLRVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuU0NNX1JJR0hUUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5LmFycmF5KCJpIiwgW2ZkMV0pKV0pLAorICAgICAgICAgICAgbGVuKE1TRykpCisKKyAgICAjIElzc3VlICMxMjk1ODogVGhlIGZvbGxvd2luZyB0ZXN0IGhhcyBwcm9ibGVtcyBvbiBNYWMgT1MgWAorICAgIEBzdXBwb3J0LmFudGljaXBhdGVfZmFpbHVyZShzeXMucGxhdGZvcm0gPT0gImRhcndpbiIpCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIikKKyAgICBkZWYgdGVzdEZEUGFzc1NlcGFyYXRlTWluU3BhY2Uoc2VsZik6CisgICAgICAgICMgUGFzcyB0d28gRkRzIGluIHR3byBzZXBhcmF0ZSBhcnJheXMsIHJlY2VpdmluZyB0aGVtIGludG8gdGhlCisgICAgICAgICMgbWluaW11bSBzcGFjZSBmb3IgdHdvIGFycmF5cy4KKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dGRHMoMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssIGxlbihNU0cpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuQ01TR19TUEFDRShTSVpFT0ZfSU5UKSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5DTVNHX0xFTihTSVpFT0ZfSU5UKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGNtc2dzPTIsIGlnbm9yZWZsYWdzPXNvY2tldC5NU0dfQ1RSVU5DKQorCisgICAgQHRlc3RGRFBhc3NTZXBhcmF0ZU1pblNwYWNlLmNsaWVudF9za2lwCisgICAgQHN1cHBvcnQuYW50aWNpcGF0ZV9mYWlsdXJlKHN5cy5wbGF0Zm9ybSA9PSAiZGFyd2luIikKKyAgICBkZWYgX3Rlc3RGRFBhc3NTZXBhcmF0ZU1pblNwYWNlKHNlbGYpOgorICAgICAgICBmZDAsIGZkMSA9IHNlbGYubmV3RkRzKDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzZWxmLnNlbmRtc2dUb1NlcnZlcihbTVNHXSwgWyhzb2NrZXQuU09MX1NPQ0tFVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5TQ01fUklHSFRTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbZmQwXSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc29ja2V0LlNPTF9TT0NLRVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuU0NNX1JJR0hUUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5LmFycmF5KCJpIiwgW2ZkMV0pKV0pLAorICAgICAgICAgICAgbGVuKE1TRykpCisKKyAgICBkZWYgc2VuZEFuY2lsbGFyeUlmUG9zc2libGUoc2VsZiwgbXNnLCBhbmNkYXRhKToKKyAgICAgICAgIyBUcnkgdG8gc2VuZCBtc2cgYW5kIGFuY2RhdGEgdG8gc2VydmVyLCBidXQgaWYgdGhlIHN5c3RlbQorICAgICAgICAjIGNhbGwgZmFpbHMsIGp1c3Qgc2VuZCBtc2cgd2l0aCBubyBhbmNpbGxhcnkgZGF0YS4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgbmJ5dGVzID0gc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW21zZ10sIGFuY2RhdGEpCisgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3IgYXMgZToKKyAgICAgICAgICAgICMgQ2hlY2sgdGhhdCBpdCB3YXMgdGhlIHN5c3RlbSBjYWxsIHRoYXQgZmFpbGVkCisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZS5lcnJubywgaW50KQorICAgICAgICAgICAgbmJ5dGVzID0gc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW21zZ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmJ5dGVzLCBsZW4obXNnKSkKKworICAgIGRlZiB0ZXN0RkRQYXNzRW1wdHkoc2VsZik6CisgICAgICAgICMgVHJ5IHRvIHBhc3MgYW4gZW1wdHkgRkQgYXJyYXkuICBDYW4gcmVjZWl2ZSBlaXRoZXIgbm8gYXJyYXkKKyAgICAgICAgIyBvciBhbiBlbXB0eSBhcnJheS4KKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dGRHMoMCwgc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAxMDI0MCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yZWZsYWdzPXNvY2tldC5NU0dfQ1RSVU5DKQorCisgICAgZGVmIF90ZXN0RkRQYXNzRW1wdHkoc2VsZik6CisgICAgICAgIHNlbGYuc2VuZEFuY2lsbGFyeUlmUG9zc2libGUoTVNHLCBbKHNvY2tldC5TT0xfU09DS0VULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuU0NNX1JJR0hUUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYiIiKV0pCisKKyAgICBkZWYgdGVzdEZEUGFzc1BhcnRpYWxJbnQoc2VsZik6CisgICAgICAgICMgVHJ5IHRvIHBhc3MgYSB0cnVuY2F0ZWQgRkQgYXJyYXkuCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAxMDI0MCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUsIGlnbm9yZT1zb2NrZXQuTVNHX0NUUlVOQykKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwobGVuKGFuY2RhdGEpLCAxKQorICAgICAgICBmb3IgY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEgaW4gYW5jZGF0YToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21zZ19sZXZlbCwgc29ja2V0LlNPTF9TT0NLRVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtc2dfdHlwZSwgc29ja2V0LlNDTV9SSUdIVFMpCisgICAgICAgICAgICBzZWxmLmFzc2VydExlc3MobGVuKGNtc2dfZGF0YSksIFNJWkVPRl9JTlQpCisKKyAgICBkZWYgX3Rlc3RGRFBhc3NQYXJ0aWFsSW50KHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRBbmNpbGxhcnlJZlBvc3NpYmxlKAorICAgICAgICAgICAgTVNHLAorICAgICAgICAgICAgWyhzb2NrZXQuU09MX1NPQ0tFVCwKKyAgICAgICAgICAgICAgc29ja2V0LlNDTV9SSUdIVFMsCisgICAgICAgICAgICAgIGFycmF5LmFycmF5KCJpIiwgW3NlbGYuYmFkZmRdKS50b2J5dGVzKClbOi0xXSldKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIikKKyAgICBkZWYgdGVzdEZEUGFzc1BhcnRpYWxJbnRJbk1pZGRsZShzZWxmKToKKyAgICAgICAgIyBUcnkgdG8gcGFzcyB0d28gRkQgYXJyYXlzLCB0aGUgZmlyc3Qgb2Ygd2hpY2ggaXMgdHJ1bmNhdGVkLgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgMTAyNDApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlLCBpZ25vcmU9c29ja2V0Lk1TR19DVFJVTkMpCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGxlbihhbmNkYXRhKSwgMikKKyAgICAgICAgZmRzID0gYXJyYXkuYXJyYXkoImkiKQorICAgICAgICAjIEFycmF5cyBtYXkgaGF2ZSBiZWVuIGNvbWJpbmVkIGluIGEgc2luZ2xlIGNvbnRyb2wgbWVzc2FnZQorICAgICAgICBmb3IgY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEgaW4gYW5jZGF0YToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21zZ19sZXZlbCwgc29ja2V0LlNPTF9TT0NLRVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtc2dfdHlwZSwgc29ja2V0LlNDTV9SSUdIVFMpCisgICAgICAgICAgICBmZHMuZnJvbWJ5dGVzKGNtc2dfZGF0YVs6CisgICAgICAgICAgICAgICAgICAgIGxlbihjbXNnX2RhdGEpIC0gKGxlbihjbXNnX2RhdGEpICUgZmRzLml0ZW1zaXplKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGxlbihmZHMpLCAyKQorICAgICAgICBzZWxmLmNoZWNrRkRzKGZkcykKKworICAgIEB0ZXN0RkRQYXNzUGFydGlhbEludEluTWlkZGxlLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0RkRQYXNzUGFydGlhbEludEluTWlkZGxlKHNlbGYpOgorICAgICAgICBmZDAsIGZkMSA9IHNlbGYubmV3RkRzKDIpCisgICAgICAgIHNlbGYuc2VuZEFuY2lsbGFyeUlmUG9zc2libGUoCisgICAgICAgICAgICBNU0csCisgICAgICAgICAgICBbKHNvY2tldC5TT0xfU09DS0VULAorICAgICAgICAgICAgICBzb2NrZXQuU0NNX1JJR0hUUywKKyAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbZmQwLCBzZWxmLmJhZGZkXSkudG9ieXRlcygpWzotMV0pLAorICAgICAgICAgICAgIChzb2NrZXQuU09MX1NPQ0tFVCwKKyAgICAgICAgICAgICAgc29ja2V0LlNDTV9SSUdIVFMsCisgICAgICAgICAgICAgIGFycmF5LmFycmF5KCJpIiwgW2ZkMV0pKV0pCisKKyAgICBkZWYgY2hlY2tUcnVuY2F0ZWRIZWFkZXIoc2VsZiwgcmVzdWx0LCBpZ25vcmVmbGFncz0wKToKKyAgICAgICAgIyBDaGVjayB0aGF0IG5vIGFuY2lsbGFyeSBkYXRhIGl0ZW1zIGFyZSByZXR1cm5lZCB3aGVuIGRhdGEgaXMKKyAgICAgICAgIyB0cnVuY2F0ZWQgaW5zaWRlIHRoZSBjbXNnaGRyIHN0cnVjdHVyZS4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSwgY2hlY2tzZXQ9c29ja2V0Lk1TR19DVFJVTkMsCisgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmU9aWdub3JlZmxhZ3MpCisKKyAgICBkZWYgdGVzdENtc2dUcnVuY05vQnVmU2l6ZShzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IG5vIGFuY2lsbGFyeSBkYXRhIGlzIHJlY2VpdmVkIHdoZW4gbm8gYnVmZmVyIHNpemUKKyAgICAgICAgIyBpcyBzcGVjaWZpZWQuCisgICAgICAgIHNlbGYuY2hlY2tUcnVuY2F0ZWRIZWFkZXIoc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssIGxlbihNU0cpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIEJTRCBzZWVtcyB0byBzZXQgTVNHX0NUUlVOQyBvbmx5CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBpZiBhbiBpdGVtIGhhcyBiZWVuIHBhcnRpYWxseQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgcmVjZWl2ZWQuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlZmxhZ3M9c29ja2V0Lk1TR19DVFJVTkMpCisKKyAgICBkZWYgX3Rlc3RDbXNnVHJ1bmNOb0J1ZlNpemUoc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlQW5kU2VuZEZEcygxKQorCisgICAgZGVmIHRlc3RDbXNnVHJ1bmMwKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgbm8gYW5jaWxsYXJ5IGRhdGEgaXMgcmVjZWl2ZWQgd2hlbiBidWZmZXIgc2l6ZSBpcyAwLgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkSGVhZGVyKHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSwgMCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlZmxhZ3M9c29ja2V0Lk1TR19DVFJVTkMpCisKKyAgICBkZWYgX3Rlc3RDbXNnVHJ1bmMwKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZUFuZFNlbmRGRHMoMSkKKworICAgICMgQ2hlY2sgdGhhdCBubyBhbmNpbGxhcnkgZGF0YSBpcyByZXR1cm5lZCBmb3IgdmFyaW91cyBub24temVybworICAgICMgKGJ1dCBzdGlsbCB0b28gc21hbGwpIGJ1ZmZlciBzaXplcy4KKworICAgIGRlZiB0ZXN0Q21zZ1RydW5jMShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja1RydW5jYXRlZEhlYWRlcihzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgbGVuKE1TRyksIDEpKQorCisgICAgZGVmIF90ZXN0Q21zZ1RydW5jMShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDEpCisKKyAgICBkZWYgdGVzdENtc2dUcnVuYzJJbnQoc2VsZik6CisgICAgICAgICMgVGhlIGNtc2doZHIgc3RydWN0dXJlIGhhcyBhdCBsZWFzdCB0aHJlZSBtZW1iZXJzLCB0d28gb2YKKyAgICAgICAgIyB3aGljaCBhcmUgaW50cywgc28gd2Ugc3RpbGwgc2hvdWxkbid0IHNlZSBhbnkgYW5jaWxsYXJ5CisgICAgICAgICMgZGF0YS4KKyAgICAgICAgc2VsZi5jaGVja1RydW5jYXRlZEhlYWRlcihzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgbGVuKE1TRyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU0laRU9GX0lOVCAqIDIpKQorCisgICAgZGVmIF90ZXN0Q21zZ1RydW5jMkludChzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDEpCisKKyAgICBkZWYgdGVzdENtc2dUcnVuY0xlbjBNaW51czEoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tUcnVuY2F0ZWRIZWFkZXIoc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssIGxlbihNU0cpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5DTVNHX0xFTigwKSAtIDEpKQorCisgICAgZGVmIF90ZXN0Q21zZ1RydW5jTGVuME1pbnVzMShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDEpCisKKyAgICAjIFRoZSBmb2xsb3dpbmcgdGVzdHMgdHJ5IHRvIHRydW5jYXRlIHRoZSBjb250cm9sIG1lc3NhZ2UgaW4gdGhlCisgICAgIyBtaWRkbGUgb2YgdGhlIEZEIGFycmF5LgorCisgICAgZGVmIGNoZWNrVHJ1bmNhdGVkQXJyYXkoc2VsZiwgYW5jYnVmLCBtYXhkYXRhLCBtaW5kYXRhPTApOgorICAgICAgICAjIENoZWNrIHRoYXQgZmlsZSBkZXNjcmlwdG9yIGRhdGEgaXMgdHJ1bmNhdGVkIHRvIGJldHdlZW4KKyAgICAgICAgIyBtaW5kYXRhIGFuZCBtYXhkYXRhIGJ5dGVzIHdoZW4gcmVjZWl2ZWQgd2l0aCBidWZmZXIgc2l6ZQorICAgICAgICAjIGFuY2J1ZiwgYW5kIHRoYXQgYW55IGNvbXBsZXRlIGZpbGUgZGVzY3JpcHRvciBudW1iZXJzIGFyZQorICAgICAgICAjIHZhbGlkLgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgYW5jYnVmKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSwgY2hlY2tzZXQ9c29ja2V0Lk1TR19DVFJVTkMpCisKKyAgICAgICAgaWYgbWluZGF0YSA9PSAwIGFuZCBhbmNkYXRhID09IFtdOgorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGFuY2RhdGEpLCAxKQorICAgICAgICBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSA9IGFuY2RhdGFbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX2xldmVsLCBzb2NrZXQuU09MX1NPQ0tFVCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX3R5cGUsIHNvY2tldC5TQ01fUklHSFRTKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChsZW4oY21zZ19kYXRhKSwgbWluZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwobGVuKGNtc2dfZGF0YSksIG1heGRhdGEpCisgICAgICAgIGZkcyA9IGFycmF5LmFycmF5KCJpIikKKyAgICAgICAgZmRzLmZyb21ieXRlcyhjbXNnX2RhdGFbOgorICAgICAgICAgICAgICAgIGxlbihjbXNnX2RhdGEpIC0gKGxlbihjbXNnX2RhdGEpICUgZmRzLml0ZW1zaXplKV0pCisgICAgICAgIHNlbGYuY2hlY2tGRHMoZmRzKQorCisgICAgZGVmIHRlc3RDbXNnVHJ1bmNMZW4wKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkQXJyYXkoYW5jYnVmPXNvY2tldC5DTVNHX0xFTigwKSwgbWF4ZGF0YT0wKQorCisgICAgZGVmIF90ZXN0Q21zZ1RydW5jTGVuMChzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDEpCisKKyAgICBkZWYgdGVzdENtc2dUcnVuY0xlbjBQbHVzMShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja1RydW5jYXRlZEFycmF5KGFuY2J1Zj1zb2NrZXQuQ01TR19MRU4oMCkgKyAxLCBtYXhkYXRhPTEpCisKKyAgICBkZWYgX3Rlc3RDbXNnVHJ1bmNMZW4wUGx1czEoc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlQW5kU2VuZEZEcygyKQorCisgICAgZGVmIHRlc3RDbXNnVHJ1bmNMZW4xKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkQXJyYXkoYW5jYnVmPXNvY2tldC5DTVNHX0xFTihTSVpFT0ZfSU5UKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGRhdGE9U0laRU9GX0lOVCkKKworICAgIGRlZiBfdGVzdENtc2dUcnVuY0xlbjEoc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlQW5kU2VuZEZEcygyKQorCisgICAgZGVmIHRlc3RDbXNnVHJ1bmNMZW4yTWludXMxKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkQXJyYXkoYW5jYnVmPXNvY2tldC5DTVNHX0xFTigyICogU0laRU9GX0lOVCkgLSAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4ZGF0YT0oMiAqIFNJWkVPRl9JTlQpIC0gMSkKKworICAgIGRlZiBfdGVzdENtc2dUcnVuY0xlbjJNaW51czEoc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlQW5kU2VuZEZEcygyKQorCisKK2NsYXNzIFJGQzM1NDJBbmNpbGxhcnlUZXN0KFNlbmRyZWN2bXNnU2VydmVyVGltZW91dEJhc2UpOgorICAgICMgVGVzdCBzZW5kbXNnKCkgYW5kIHJlY3Ztc2dbX2ludG9dKCkgdXNpbmcgdGhlIGFuY2lsbGFyeSBkYXRhCisgICAgIyBmZWF0dXJlcyBvZiB0aGUgUkZDIDM1NDIgQWR2YW5jZWQgU29ja2V0cyBBUEkgZm9yIElQdjYuCisgICAgIyBDdXJyZW50bHkgd2UgY2FuIG9ubHkgaGFuZGxlIGNlcnRhaW4gZGF0YSBpdGVtcyAoZS5nLiB0cmFmZmljCisgICAgIyBjbGFzcywgaG9wIGxpbWl0LCBNVFUgZGlzY292ZXJ5IGFuZCBmcmFnbWVudGF0aW9uIHNldHRpbmdzKQorICAgICMgd2l0aG91dCByZXNvcnRpbmcgdG8gdW5wb3J0YWJsZSBtZWFucyBzdWNoIGFzIHRoZSBzdHJ1Y3QgbW9kdWxlLAorICAgICMgYnV0IHRoZSB0ZXN0cyBoZXJlIGFyZSBhaW1lZCBhdCB0ZXN0aW5nIHRoZSBhbmNpbGxhcnkgZGF0YQorICAgICMgaGFuZGxpbmcgaW4gc2VuZG1zZygpIGFuZCByZWN2bXNnKCkgcmF0aGVyIHRoYW4gdGhlIElQdjYgQVBJCisgICAgIyBpdHNlbGYuCisKKyAgICAjIFRlc3QgdmFsdWUgdG8gdXNlIHdoZW4gc2V0dGluZyBob3AgbGltaXQgb2YgcGFja2V0CisgICAgaG9wX2xpbWl0ID0gMgorCisgICAgIyBUZXN0IHZhbHVlIHRvIHVzZSB3aGVuIHNldHRpbmcgdHJhZmZpYyBjbGFzcyBvZiBwYWNrZXQuCisgICAgIyAtMSBtZWFucyAidXNlIGtlcm5lbCBkZWZhdWx0Ii4KKyAgICB0cmFmZmljX2NsYXNzID0gLTEKKworICAgIGRlZiBhbmNpbGxhcnlNYXBwaW5nKHNlbGYsIGFuY2RhdGEpOgorICAgICAgICAjIEdpdmVuIGFuY2lsbGFyeSBkYXRhIGxpc3QgYW5jZGF0YSwgcmV0dXJuIGEgbWFwcGluZyBmcm9tCisgICAgICAgICMgcGFpcnMgKGNtc2dfbGV2ZWwsIGNtc2dfdHlwZSkgdG8gY29ycmVzcG9uZGluZyBjbXNnX2RhdGEuCisgICAgICAgICMgQ2hlY2sgdGhhdCBubyAobGV2ZWwsIHR5cGUpIHBhaXIgYXBwZWFycyBtb3JlIHRoYW4gb25jZS4KKyAgICAgICAgZCA9IHt9CisgICAgICAgIGZvciBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSBpbiBhbmNkYXRhOgorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RJbigoY21zZ19sZXZlbCwgY21zZ190eXBlKSwgZCkKKyAgICAgICAgICAgIGRbKGNtc2dfbGV2ZWwsIGNtc2dfdHlwZSldID0gY21zZ19kYXRhCisgICAgICAgIHJldHVybiBkCisKKyAgICBkZWYgY2hlY2tIb3BMaW1pdChzZWxmLCBhbmNidWZzaXplLCBtYXhob3A9MjU1LCBpZ25vcmVmbGFncz0wKToKKyAgICAgICAgIyBSZWNlaXZlIGhvcCBsaW1pdCBpbnRvIGFuY2J1ZnNpemUgYnl0ZXMgb2YgYW5jaWxsYXJ5IGRhdGEKKyAgICAgICAgIyBzcGFjZS4gIENoZWNrIHRoYXQgZGF0YSBpcyBNU0csIGFuY2lsbGFyeSBkYXRhIGlzIG5vdAorICAgICAgICAjIHRydW5jYXRlZCAoYnV0IGlnbm9yZSBhbnkgZmxhZ3MgaW4gaWdub3JlZmxhZ3MpLCBhbmQgaG9wCisgICAgICAgICMgbGltaXQgaXMgYmV0d2VlbiAwIGFuZCBtYXhob3AgaW5jbHVzaXZlLgorICAgICAgICBzZWxmLnNlcnZfc29jay5zZXRzb2Nrb3B0KHNvY2tldC5JUFBST1RPX0lQVjYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LklQVjZfUkVDVkhPUExJTUlULCAxKQorICAgICAgICBzZWxmLm1pc2NfZXZlbnQuc2V0KCkKKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIGFuY2J1ZnNpemUpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUsIGNoZWNrdW5zZXQ9c29ja2V0Lk1TR19DVFJVTkMsCisgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmU9aWdub3JlZmxhZ3MpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oYW5jZGF0YSksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShhbmNkYXRhWzBdLCB0dXBsZSkKKyAgICAgICAgY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEgPSBhbmNkYXRhWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21zZ19sZXZlbCwgc29ja2V0LklQUFJPVE9fSVBWNikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX3R5cGUsIHNvY2tldC5JUFY2X0hPUExJTUlUKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoY21zZ19kYXRhLCBieXRlcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY21zZ19kYXRhKSwgU0laRU9GX0lOVCkKKyAgICAgICAgYSA9IGFycmF5LmFycmF5KCJpIikKKyAgICAgICAgYS5mcm9tYnl0ZXMoY21zZ19kYXRhKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChhWzBdLCAwKQorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChhWzBdLCBtYXhob3ApCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiKQorICAgIGRlZiB0ZXN0UmVjdkhvcExpbWl0KHNlbGYpOgorICAgICAgICAjIFRlc3QgcmVjZWl2aW5nIHRoZSBwYWNrZXQgaG9wIGxpbWl0IGFzIGFuY2lsbGFyeSBkYXRhLgorICAgICAgICBzZWxmLmNoZWNrSG9wTGltaXQoYW5jYnVmc2l6ZT0xMDI0MCkKKworICAgIEB0ZXN0UmVjdkhvcExpbWl0LmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0UmVjdkhvcExpbWl0KHNlbGYpOgorICAgICAgICAjIE5lZWQgdG8gd2FpdCB1bnRpbCBzZXJ2ZXIgaGFzIGFza2VkIHRvIHJlY2VpdmUgYW5jaWxsYXJ5CisgICAgICAgICMgZGF0YSwgYXMgaW1wbGVtZW50YXRpb25zIGFyZSBub3QgcmVxdWlyZWQgdG8gYnVmZmVyIGl0CisgICAgICAgICMgb3RoZXJ3aXNlLgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19TUEFDRSIsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIikKKyAgICBkZWYgdGVzdFJlY3ZIb3BMaW1pdENNU0dfU1BBQ0Uoc2VsZik6CisgICAgICAgICMgVGVzdCByZWNlaXZpbmcgaG9wIGxpbWl0LCB1c2luZyBDTVNHX1NQQUNFIHRvIGNhbGN1bGF0ZSBidWZmZXIgc2l6ZS4KKyAgICAgICAgc2VsZi5jaGVja0hvcExpbWl0KGFuY2J1ZnNpemU9c29ja2V0LkNNU0dfU1BBQ0UoU0laRU9GX0lOVCkpCisKKyAgICBAdGVzdFJlY3ZIb3BMaW1pdENNU0dfU1BBQ0UuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RSZWN2SG9wTGltaXRDTVNHX1NQQUNFKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgICMgQ291bGQgdGVzdCByZWNlaXZpbmcgaW50byBidWZmZXIgc2l6ZWQgdXNpbmcgQ01TR19MRU4sIGJ1dCBSRkMKKyAgICAjIDM1NDIgc2F5cyBwb3J0YWJsZSBhcHBsaWNhdGlvbnMgbXVzdCBwcm92aWRlIHNwYWNlIGZvciB0cmFpbGluZworICAgICMgcGFkZGluZy4gIEltcGxlbWVudGF0aW9ucyBtYXkgc2V0IE1TR19DVFJVTkMgaWYgdGhlcmUgaXNuJ3QKKyAgICAjIGVub3VnaCBzcGFjZSBmb3IgdGhlIHBhZGRpbmcuCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJzZW5kbXNnIikKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiKQorICAgIGRlZiB0ZXN0U2V0SG9wTGltaXQoc2VsZik6CisgICAgICAgICMgVGVzdCBzZXR0aW5nIGhvcCBsaW1pdCBvbiBvdXRnb2luZyBwYWNrZXQgYW5kIHJlY2VpdmluZyBpdAorICAgICAgICAjIGF0IHRoZSBvdGhlciBlbmQuCisgICAgICAgIHNlbGYuY2hlY2tIb3BMaW1pdChhbmNidWZzaXplPTEwMjQwLCBtYXhob3A9c2VsZi5ob3BfbGltaXQpCisKKyAgICBAdGVzdFNldEhvcExpbWl0LmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0U2V0SG9wTGltaXQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIHNlbGYuc2VuZG1zZ1RvU2VydmVyKFtNU0ddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhzb2NrZXQuSVBQUk9UT19JUFY2LCBzb2NrZXQuSVBWNl9IT1BMSU1JVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbc2VsZi5ob3BfbGltaXRdKSldKSwKKyAgICAgICAgICAgIGxlbihNU0cpKQorCisgICAgZGVmIGNoZWNrVHJhZmZpY0NsYXNzQW5kSG9wTGltaXQoc2VsZiwgYW5jYnVmc2l6ZSwgbWF4aG9wPTI1NSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmVmbGFncz0wKToKKyAgICAgICAgIyBSZWNlaXZlIHRyYWZmaWMgY2xhc3MgYW5kIGhvcCBsaW1pdCBpbnRvIGFuY2J1ZnNpemUgYnl0ZXMgb2YKKyAgICAgICAgIyBhbmNpbGxhcnkgZGF0YSBzcGFjZS4gIENoZWNrIHRoYXQgZGF0YSBpcyBNU0csIGFuY2lsbGFyeQorICAgICAgICAjIGRhdGEgaXMgbm90IHRydW5jYXRlZCAoYnV0IGlnbm9yZSBhbnkgZmxhZ3MgaW4gaWdub3JlZmxhZ3MpLAorICAgICAgICAjIGFuZCB0cmFmZmljIGNsYXNzIGFuZCBob3AgbGltaXQgYXJlIGluIHJhbmdlIChob3AgbGltaXQgbm8KKyAgICAgICAgIyBtb3JlIHRoYW4gbWF4aG9wKS4KKyAgICAgICAgc2VsZi5zZXJ2X3NvY2suc2V0c29ja29wdChzb2NrZXQuSVBQUk9UT19JUFY2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5JUFY2X1JFQ1ZIT1BMSU1JVCwgMSkKKyAgICAgICAgc2VsZi5zZXJ2X3NvY2suc2V0c29ja29wdChzb2NrZXQuSVBQUk9UT19JUFY2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5JUFY2X1JFQ1ZUQ0xBU1MsIDEpCisgICAgICAgIHNlbGYubWlzY19ldmVudC5zZXQoKQorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgYW5jYnVmc2l6ZSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSwgY2hlY2t1bnNldD1zb2NrZXQuTVNHX0NUUlVOQywKKyAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yZT1pZ25vcmVmbGFncykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oYW5jZGF0YSksIDIpCisgICAgICAgIGFuY21hcCA9IHNlbGYuYW5jaWxsYXJ5TWFwcGluZyhhbmNkYXRhKQorCisgICAgICAgIHRjZGF0YSA9IGFuY21hcFsoc29ja2V0LklQUFJPVE9fSVBWNiwgc29ja2V0LklQVjZfVENMQVNTKV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4odGNkYXRhKSwgU0laRU9GX0lOVCkKKyAgICAgICAgYSA9IGFycmF5LmFycmF5KCJpIikKKyAgICAgICAgYS5mcm9tYnl0ZXModGNkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChhWzBdLCAwKQorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChhWzBdLCAyNTUpCisKKyAgICAgICAgaGxkYXRhID0gYW5jbWFwWyhzb2NrZXQuSVBQUk9UT19JUFY2LCBzb2NrZXQuSVBWNl9IT1BMSU1JVCldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGhsZGF0YSksIFNJWkVPRl9JTlQpCisgICAgICAgIGEgPSBhcnJheS5hcnJheSgiaSIpCisgICAgICAgIGEuZnJvbWJ5dGVzKGhsZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwoYVswXSwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwoYVswXSwgbWF4aG9wKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIiwKKyAgICAgICAgICAgICAgICAgICJJUFY2X1JFQ1ZUQ0xBU1MiLCAiSVBWNl9UQ0xBU1MiKQorICAgIGRlZiB0ZXN0UmVjdlRyYWZmaWNDbGFzc0FuZEhvcExpbWl0KHNlbGYpOgorICAgICAgICAjIFRlc3QgcmVjZWl2aW5nIHRyYWZmaWMgY2xhc3MgYW5kIGhvcCBsaW1pdCBhcyBhbmNpbGxhcnkgZGF0YS4KKyAgICAgICAgc2VsZi5jaGVja1RyYWZmaWNDbGFzc0FuZEhvcExpbWl0KGFuY2J1ZnNpemU9MTAyNDApCisKKyAgICBAdGVzdFJlY3ZUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdC5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFJlY3ZUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiLCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIsCisgICAgICAgICAgICAgICAgICAiSVBWNl9SRUNWVENMQVNTIiwgIklQVjZfVENMQVNTIikKKyAgICBkZWYgdGVzdFJlY3ZUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdENNU0dfU1BBQ0Uoc2VsZik6CisgICAgICAgICMgVGVzdCByZWNlaXZpbmcgdHJhZmZpYyBjbGFzcyBhbmQgaG9wIGxpbWl0LCB1c2luZworICAgICAgICAjIENNU0dfU1BBQ0UoKSB0byBjYWxjdWxhdGUgYnVmZmVyIHNpemUuCisgICAgICAgIHNlbGYuY2hlY2tUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdCgKKyAgICAgICAgICAgIGFuY2J1ZnNpemU9c29ja2V0LkNNU0dfU1BBQ0UoU0laRU9GX0lOVCkgKiAyKQorCisgICAgQHRlc3RSZWN2VHJhZmZpY0NsYXNzQW5kSG9wTGltaXRDTVNHX1NQQUNFLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0UmVjdlRyYWZmaWNDbGFzc0FuZEhvcExpbWl0Q01TR19TUEFDRShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJzZW5kbXNnIikKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiLCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIsCisgICAgICAgICAgICAgICAgICAiSVBWNl9SRUNWVENMQVNTIiwgIklQVjZfVENMQVNTIikKKyAgICBkZWYgdGVzdFNldFRyYWZmaWNDbGFzc0FuZEhvcExpbWl0KHNlbGYpOgorICAgICAgICAjIFRlc3Qgc2V0dGluZyB0cmFmZmljIGNsYXNzIGFuZCBob3AgbGltaXQgb24gb3V0Z29pbmcgcGFja2V0LAorICAgICAgICAjIGFuZCByZWNlaXZpbmcgdGhlbSBhdCB0aGUgb3RoZXIgZW5kLgorICAgICAgICBzZWxmLmNoZWNrVHJhZmZpY0NsYXNzQW5kSG9wTGltaXQoYW5jYnVmc2l6ZT0xMDI0MCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGhvcD1zZWxmLmhvcF9saW1pdCkKKworICAgIEB0ZXN0U2V0VHJhZmZpY0NsYXNzQW5kSG9wTGltaXQuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTZXRUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW01TR10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKHNvY2tldC5JUFBST1RPX0lQVjYsIHNvY2tldC5JUFY2X1RDTEFTUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbc2VsZi50cmFmZmljX2NsYXNzXSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzb2NrZXQuSVBQUk9UT19JUFY2LCBzb2NrZXQuSVBWNl9IT1BMSU1JVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbc2VsZi5ob3BfbGltaXRdKSldKSwKKyAgICAgICAgICAgIGxlbihNU0cpKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAic2VuZG1zZyIpCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIiwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiLAorICAgICAgICAgICAgICAgICAgIklQVjZfUkVDVlRDTEFTUyIsICJJUFY2X1RDTEFTUyIpCisgICAgZGVmIHRlc3RPZGRDbXNnU2l6ZShzZWxmKToKKyAgICAgICAgIyBUcnkgdG8gc2VuZCBhbmNpbGxhcnkgZGF0YSB3aXRoIGZpcnN0IGl0ZW0gb25lIGJ5dGUgdG9vCisgICAgICAgICMgbG9uZy4gIEZhbGwgYmFjayB0byBzZW5kaW5nIHdpdGggY29ycmVjdCBzaXplIGlmIHRoaXMgZmFpbHMsCisgICAgICAgICMgYW5kIGNoZWNrIHRoYXQgc2Vjb25kIGl0ZW0gd2FzIGhhbmRsZWQgY29ycmVjdGx5LgorICAgICAgICBzZWxmLmNoZWNrVHJhZmZpY0NsYXNzQW5kSG9wTGltaXQoYW5jYnVmc2l6ZT0xMDI0MCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGhvcD1zZWxmLmhvcF9saW1pdCkKKworICAgIEB0ZXN0T2RkQ21zZ1NpemUuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RPZGRDbXNnU2l6ZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBuYnl0ZXMgPSBzZWxmLnNlbmRtc2dUb1NlcnZlcigKKyAgICAgICAgICAgICAgICBbTVNHXSwKKyAgICAgICAgICAgICAgICBbKHNvY2tldC5JUFBST1RPX0lQVjYsIHNvY2tldC5JUFY2X1RDTEFTUywKKyAgICAgICAgICAgICAgICAgIGFycmF5LmFycmF5KCJpIiwgW3NlbGYudHJhZmZpY19jbGFzc10pLnRvYnl0ZXMoKSArIGIiXHgwMCIpLAorICAgICAgICAgICAgICAgICAoc29ja2V0LklQUFJPVE9fSVBWNiwgc29ja2V0LklQVjZfSE9QTElNSVQsCisgICAgICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIFtzZWxmLmhvcF9saW1pdF0pKV0pCisgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3IgYXMgZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShlLmVycm5vLCBpbnQpCisgICAgICAgICAgICBuYnl0ZXMgPSBzZWxmLnNlbmRtc2dUb1NlcnZlcigKKyAgICAgICAgICAgICAgICBbTVNHXSwKKyAgICAgICAgICAgICAgICBbKHNvY2tldC5JUFBST1RPX0lQVjYsIHNvY2tldC5JUFY2X1RDTEFTUywKKyAgICAgICAgICAgICAgICAgIGFycmF5LmFycmF5KCJpIiwgW3NlbGYudHJhZmZpY19jbGFzc10pKSwKKyAgICAgICAgICAgICAgICAgKHNvY2tldC5JUFBST1RPX0lQVjYsIHNvY2tldC5JUFY2X0hPUExJTUlULAorICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbc2VsZi5ob3BfbGltaXRdKSldKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuYnl0ZXMsIGxlbihNU0cpKQorCisgICAgIyBUZXN0cyBmb3IgcHJvcGVyIGhhbmRsaW5nIG9mIHRydW5jYXRlZCBhbmNpbGxhcnkgZGF0YQorCisgICAgZGVmIGNoZWNrSG9wTGltaXRUcnVuY2F0ZWRIZWFkZXIoc2VsZiwgYW5jYnVmc2l6ZSwgaWdub3JlZmxhZ3M9MCk6CisgICAgICAgICMgUmVjZWl2ZSBob3AgbGltaXQgaW50byBhbmNidWZzaXplIGJ5dGVzIG9mIGFuY2lsbGFyeSBkYXRhCisgICAgICAgICMgc3BhY2UsIHdoaWNoIHNob3VsZCBiZSB0b28gc21hbGwgdG8gY29udGFpbiB0aGUgYW5jaWxsYXJ5CisgICAgICAgICMgZGF0YSBoZWFkZXIgKGlmIGFuY2J1ZnNpemUgaXMgTm9uZSwgcGFzcyBubyBzZWNvbmQgYXJndW1lbnQKKyAgICAgICAgIyB0byByZWN2bXNnKCkpLiAgQ2hlY2sgdGhhdCBkYXRhIGlzIE1TRywgTVNHX0NUUlVOQyBpcyBzZXQKKyAgICAgICAgIyAodW5sZXNzIGluY2x1ZGVkIGluIGlnbm9yZWZsYWdzKSwgYW5kIG5vIGFuY2lsbGFyeSBkYXRhIGlzCisgICAgICAgICMgcmV0dXJuZWQuCisgICAgICAgIHNlbGYuc2Vydl9zb2NrLnNldHNvY2tvcHQoc29ja2V0LklQUFJPVE9fSVBWNiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuSVBWNl9SRUNWSE9QTElNSVQsIDEpCisgICAgICAgIHNlbGYubWlzY19ldmVudC5zZXQoKQorICAgICAgICBhcmdzID0gKCkgaWYgYW5jYnVmc2l6ZSBpcyBOb25lIGVsc2UgKGFuY2J1ZnNpemUsKQorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgKmFyZ3MpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUsIGNoZWNrc2V0PXNvY2tldC5NU0dfQ1RSVU5DLAorICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlPWlnbm9yZWZsYWdzKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIikKKyAgICBkZWYgdGVzdENtc2dUcnVuY05vQnVmU2l6ZShzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IG5vIGFuY2lsbGFyeSBkYXRhIGlzIHJlY2VpdmVkIHdoZW4gbm8gYW5jaWxsYXJ5CisgICAgICAgICMgYnVmZmVyIHNpemUgaXMgcHJvdmlkZWQuCisgICAgICAgIHNlbGYuY2hlY2tIb3BMaW1pdFRydW5jYXRlZEhlYWRlcihhbmNidWZzaXplPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIEJTRCBzZWVtcyB0byBzZXQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgTVNHX0NUUlVOQyBvbmx5IGlmIGFuIGl0ZW0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgaGFzIGJlZW4gcGFydGlhbGx5CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHJlY2VpdmVkLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlZmxhZ3M9c29ja2V0Lk1TR19DVFJVTkMpCisKKyAgICBAdGVzdENtc2dUcnVuY05vQnVmU2l6ZS5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdENtc2dUcnVuY05vQnVmU2l6ZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiKQorICAgIGRlZiB0ZXN0U2luZ2xlQ21zZ1RydW5jMChzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IG5vIGFuY2lsbGFyeSBkYXRhIGlzIHJlY2VpdmVkIHdoZW4gYW5jaWxsYXJ5CisgICAgICAgICMgYnVmZmVyIHNpemUgaXMgemVyby4KKyAgICAgICAgc2VsZi5jaGVja0hvcExpbWl0VHJ1bmNhdGVkSGVhZGVyKGFuY2J1ZnNpemU9MCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yZWZsYWdzPXNvY2tldC5NU0dfQ1RSVU5DKQorCisgICAgQHRlc3RTaW5nbGVDbXNnVHJ1bmMwLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0U2luZ2xlQ21zZ1RydW5jMChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICAjIENoZWNrIHRoYXQgbm8gYW5jaWxsYXJ5IGRhdGEgaXMgcmV0dXJuZWQgZm9yIHZhcmlvdXMgbm9uLXplcm8KKyAgICAjIChidXQgc3RpbGwgdG9vIHNtYWxsKSBidWZmZXIgc2l6ZXMuCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiKQorICAgIGRlZiB0ZXN0U2luZ2xlQ21zZ1RydW5jMShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0hvcExpbWl0VHJ1bmNhdGVkSGVhZGVyKGFuY2J1ZnNpemU9MSkKKworICAgIEB0ZXN0U2luZ2xlQ21zZ1RydW5jMS5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFNpbmdsZUNtc2dUcnVuYzEoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIikKKyAgICBkZWYgdGVzdFNpbmdsZUNtc2dUcnVuYzJJbnQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tIb3BMaW1pdFRydW5jYXRlZEhlYWRlcihhbmNidWZzaXplPTIgKiBTSVpFT0ZfSU5UKQorCisgICAgQHRlc3RTaW5nbGVDbXNnVHJ1bmMySW50LmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0U2luZ2xlQ21zZ1RydW5jMkludChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiKQorICAgIGRlZiB0ZXN0U2luZ2xlQ21zZ1RydW5jTGVuME1pbnVzMShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0hvcExpbWl0VHJ1bmNhdGVkSGVhZGVyKGFuY2J1ZnNpemU9c29ja2V0LkNNU0dfTEVOKDApIC0gMSkKKworICAgIEB0ZXN0U2luZ2xlQ21zZ1RydW5jTGVuME1pbnVzMS5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFNpbmdsZUNtc2dUcnVuY0xlbjBNaW51czEoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIikKKyAgICBkZWYgdGVzdFNpbmdsZUNtc2dUcnVuY0luRGF0YShzZWxmKToKKyAgICAgICAgIyBUZXN0IHRydW5jYXRpb24gb2YgYSBjb250cm9sIG1lc3NhZ2UgaW5zaWRlIGl0cyBhc3NvY2lhdGVkCisgICAgICAgICMgZGF0YS4gIFRoZSBtZXNzYWdlIG1heSBiZSByZXR1cm5lZCB3aXRoIGl0cyBkYXRhIHRydW5jYXRlZCwKKyAgICAgICAgIyBvciBub3QgcmV0dXJuZWQgYXQgYWxsLgorICAgICAgICBzZWxmLnNlcnZfc29jay5zZXRzb2Nrb3B0KHNvY2tldC5JUFBST1RPX0lQVjYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LklQVjZfUkVDVkhPUExJTUlULCAxKQorICAgICAgICBzZWxmLm1pc2NfZXZlbnQuc2V0KCkKKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKAorICAgICAgICAgICAgc2VsZi5zZXJ2X3NvY2ssIGxlbihNU0cpLCBzb2NrZXQuQ01TR19MRU4oU0laRU9GX0lOVCkgLSAxKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlLCBjaGVja3NldD1zb2NrZXQuTVNHX0NUUlVOQykKKworICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChsZW4oYW5jZGF0YSksIDEpCisgICAgICAgIGlmIGFuY2RhdGE6CisgICAgICAgICAgICBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSA9IGFuY2RhdGFbMF0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21zZ19sZXZlbCwgc29ja2V0LklQUFJPVE9fSVBWNikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21zZ190eXBlLCBzb2NrZXQuSVBWNl9IT1BMSU1JVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGVzcyhsZW4oY21zZ19kYXRhKSwgU0laRU9GX0lOVCkKKworICAgIEB0ZXN0U2luZ2xlQ21zZ1RydW5jSW5EYXRhLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0U2luZ2xlQ21zZ1RydW5jSW5EYXRhKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIGRlZiBjaGVja1RydW5jYXRlZFNlY29uZEhlYWRlcihzZWxmLCBhbmNidWZzaXplLCBpZ25vcmVmbGFncz0wKToKKyAgICAgICAgIyBSZWNlaXZlIHRyYWZmaWMgY2xhc3MgYW5kIGhvcCBsaW1pdCBpbnRvIGFuY2J1ZnNpemUgYnl0ZXMgb2YKKyAgICAgICAgIyBhbmNpbGxhcnkgZGF0YSBzcGFjZSwgd2hpY2ggc2hvdWxkIGJlIGxhcmdlIGVub3VnaCB0bworICAgICAgICAjIGNvbnRhaW4gdGhlIGZpcnN0IGl0ZW0sIGJ1dCB0b28gc21hbGwgdG8gY29udGFpbiB0aGUgaGVhZGVyCisgICAgICAgICMgb2YgdGhlIHNlY29uZC4gIENoZWNrIHRoYXQgZGF0YSBpcyBNU0csIE1TR19DVFJVTkMgaXMgc2V0CisgICAgICAgICMgKHVubGVzcyBpbmNsdWRlZCBpbiBpZ25vcmVmbGFncyksIGFuZCBvbmx5IG9uZSBhbmNpbGxhcnkKKyAgICAgICAgIyBkYXRhIGl0ZW0gaXMgcmV0dXJuZWQuCisgICAgICAgIHNlbGYuc2Vydl9zb2NrLnNldHNvY2tvcHQoc29ja2V0LklQUFJPVE9fSVBWNiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuSVBWNl9SRUNWSE9QTElNSVQsIDEpCisgICAgICAgIHNlbGYuc2Vydl9zb2NrLnNldHNvY2tvcHQoc29ja2V0LklQUFJPVE9fSVBWNiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuSVBWNl9SRUNWVENMQVNTLCAxKQorICAgICAgICBzZWxmLm1pc2NfZXZlbnQuc2V0KCkKKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIGFuY2J1ZnNpemUpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUsIGNoZWNrc2V0PXNvY2tldC5NU0dfQ1RSVU5DLAorICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlPWlnbm9yZWZsYWdzKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGFuY2RhdGEpLCAxKQorICAgICAgICBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSA9IGFuY2RhdGFbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX2xldmVsLCBzb2NrZXQuSVBQUk9UT19JUFY2KQorICAgICAgICBzZWxmLmFzc2VydEluKGNtc2dfdHlwZSwge3NvY2tldC5JUFY2X1RDTEFTUywgc29ja2V0LklQVjZfSE9QTElNSVR9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbXNnX2RhdGEpLCBTSVpFT0ZfSU5UKQorICAgICAgICBhID0gYXJyYXkuYXJyYXkoImkiKQorICAgICAgICBhLmZyb21ieXRlcyhjbXNnX2RhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKGFbMF0sIDApCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGFbMF0sIDI1NSkKKworICAgICMgVHJ5IHRoZSBhYm92ZSB0ZXN0IHdpdGggdmFyaW91cyBidWZmZXIgc2l6ZXMuCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiLCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIsCisgICAgICAgICAgICAgICAgICAiSVBWNl9SRUNWVENMQVNTIiwgIklQVjZfVENMQVNTIikKKyAgICBkZWYgdGVzdFNlY29uZENtc2dUcnVuYzAoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tUcnVuY2F0ZWRTZWNvbmRIZWFkZXIoc29ja2V0LkNNU0dfU1BBQ0UoU0laRU9GX0lOVCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlZmxhZ3M9c29ja2V0Lk1TR19DVFJVTkMpCisKKyAgICBAdGVzdFNlY29uZENtc2dUcnVuYzAuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTZWNvbmRDbXNnVHJ1bmMwKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19TUEFDRSIsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIiwKKyAgICAgICAgICAgICAgICAgICJJUFY2X1JFQ1ZUQ0xBU1MiLCAiSVBWNl9UQ0xBU1MiKQorICAgIGRlZiB0ZXN0U2Vjb25kQ21zZ1RydW5jMShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja1RydW5jYXRlZFNlY29uZEhlYWRlcihzb2NrZXQuQ01TR19TUEFDRShTSVpFT0ZfSU5UKSArIDEpCisKKyAgICBAdGVzdFNlY29uZENtc2dUcnVuYzEuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTZWNvbmRDbXNnVHJ1bmMxKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19TUEFDRSIsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIiwKKyAgICAgICAgICAgICAgICAgICJJUFY2X1JFQ1ZUQ0xBU1MiLCAiSVBWNl9UQ0xBU1MiKQorICAgIGRlZiB0ZXN0U2Vjb25kQ21zZ1RydW5jMkludChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja1RydW5jYXRlZFNlY29uZEhlYWRlcihzb2NrZXQuQ01TR19TUEFDRShTSVpFT0ZfSU5UKSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiAqIFNJWkVPRl9JTlQpCisKKyAgICBAdGVzdFNlY29uZENtc2dUcnVuYzJJbnQuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTZWNvbmRDbXNnVHJ1bmMySW50KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19TUEFDRSIsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIiwKKyAgICAgICAgICAgICAgICAgICJJUFY2X1JFQ1ZUQ0xBU1MiLCAiSVBWNl9UQ0xBU1MiKQorICAgIGRlZiB0ZXN0U2Vjb25kQ21zZ1RydW5jTGVuME1pbnVzMShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja1RydW5jYXRlZFNlY29uZEhlYWRlcihzb2NrZXQuQ01TR19TUEFDRShTSVpFT0ZfSU5UKSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LkNNU0dfTEVOKDApIC0gMSkKKworICAgIEB0ZXN0U2Vjb25kQ21zZ1RydW5jTGVuME1pbnVzMS5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFNlY29uZENtc2dUcnVuY0xlbjBNaW51czEoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIiwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiLAorICAgICAgICAgICAgICAgICAgIklQVjZfUkVDVlRDTEFTUyIsICJJUFY2X1RDTEFTUyIpCisgICAgZGVmIHRlc3RTZWNvbWRDbXNnVHJ1bmNJbkRhdGEoc2VsZik6CisgICAgICAgICMgVGVzdCB0cnVuY2F0aW9uIG9mIHRoZSBzZWNvbmQgb2YgdHdvIGNvbnRyb2wgbWVzc2FnZXMgaW5zaWRlCisgICAgICAgICMgaXRzIGFzc29jaWF0ZWQgZGF0YS4KKyAgICAgICAgc2VsZi5zZXJ2X3NvY2suc2V0c29ja29wdChzb2NrZXQuSVBQUk9UT19JUFY2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5JUFY2X1JFQ1ZIT1BMSU1JVCwgMSkKKyAgICAgICAgc2VsZi5zZXJ2X3NvY2suc2V0c29ja29wdChzb2NrZXQuSVBQUk9UT19JUFY2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5JUFY2X1JFQ1ZUQ0xBU1MsIDEpCisgICAgICAgIHNlbGYubWlzY19ldmVudC5zZXQoKQorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coCisgICAgICAgICAgICBzZWxmLnNlcnZfc29jaywgbGVuKE1TRyksCisgICAgICAgICAgICBzb2NrZXQuQ01TR19TUEFDRShTSVpFT0ZfSU5UKSArIHNvY2tldC5DTVNHX0xFTihTSVpFT0ZfSU5UKSAtIDEpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUsIGNoZWNrc2V0PXNvY2tldC5NU0dfQ1RSVU5DKQorCisgICAgICAgIGNtc2dfdHlwZXMgPSB7c29ja2V0LklQVjZfVENMQVNTLCBzb2NrZXQuSVBWNl9IT1BMSU1JVH0KKworICAgICAgICBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSA9IGFuY2RhdGEucG9wKDApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21zZ19sZXZlbCwgc29ja2V0LklQUFJPVE9fSVBWNikKKyAgICAgICAgY21zZ190eXBlcy5yZW1vdmUoY21zZ190eXBlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbXNnX2RhdGEpLCBTSVpFT0ZfSU5UKQorICAgICAgICBhID0gYXJyYXkuYXJyYXkoImkiKQorICAgICAgICBhLmZyb21ieXRlcyhjbXNnX2RhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKGFbMF0sIDApCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGFbMF0sIDI1NSkKKworICAgICAgICBpZiBhbmNkYXRhOgorICAgICAgICAgICAgY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEgPSBhbmNkYXRhLnBvcCgwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX2xldmVsLCBzb2NrZXQuSVBQUk9UT19JUFY2KQorICAgICAgICAgICAgY21zZ190eXBlcy5yZW1vdmUoY21zZ190eXBlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRMZXNzKGxlbihjbXNnX2RhdGEpLCBTSVpFT0ZfSU5UKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisKKyAgICBAdGVzdFNlY29tZENtc2dUcnVuY0luRGF0YS5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFNlY29tZENtc2dUcnVuY0luRGF0YShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKworIyBEZXJpdmUgY29uY3JldGUgdGVzdCBjbGFzc2VzIGZvciBkaWZmZXJlbnQgc29ja2V0IHR5cGVzLgorCitjbGFzcyBTZW5kcmVjdm1zZ1VEUFRlc3RCYXNlKFNlbmRyZWN2bXNnRGdyYW1GbGFnc0Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlbmRyZWN2bXNnQ29ubmVjdGlvbmxlc3NCYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaHJlYWRlZFNvY2tldFRlc3RNaXhpbiwgVURQVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAic2VuZG1zZyIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgU2VuZG1zZ1VEUFRlc3QoU2VuZG1zZ0Nvbm5lY3Rpb25sZXNzVGVzdHMsIFNlbmRyZWN2bXNnVURQVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZyIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ1VEUFRlc3QoUmVjdm1zZ1Rlc3RzLCBTZW5kcmVjdm1zZ1VEUFRlc3RCYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInJlY3Ztc2dfaW50byIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ0ludG9VRFBUZXN0KFJlY3Ztc2dJbnRvVGVzdHMsIFNlbmRyZWN2bXNnVURQVGVzdEJhc2UpOgorICAgIHBhc3MKKworCitjbGFzcyBTZW5kcmVjdm1zZ1VEUDZUZXN0QmFzZShTZW5kcmVjdm1zZ0RncmFtRmxhZ3NCYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dDb25uZWN0aW9ubGVzc0Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaHJlYWRlZFNvY2tldFRlc3RNaXhpbiwgVURQNlRlc3RCYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInNlbmRtc2ciKQorQHVuaXR0ZXN0LnNraXBVbmxlc3Moc29ja2V0Lmhhc19pcHY2LCAiUHl0aG9uIG5vdCBidWlsdCB3aXRoIElQdjYgc3VwcG9ydCIpCitAcmVxdWlyZVNvY2tldCgiQUZfSU5FVDYiLCAiU09DS19ER1JBTSIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgU2VuZG1zZ1VEUDZUZXN0KFNlbmRtc2dDb25uZWN0aW9ubGVzc1Rlc3RzLCBTZW5kcmVjdm1zZ1VEUDZUZXN0QmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJyZWN2bXNnIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHNvY2tldC5oYXNfaXB2NiwgIlB5dGhvbiBub3QgYnVpbHQgd2l0aCBJUHY2IHN1cHBvcnQiKQorQHJlcXVpcmVTb2NrZXQoIkFGX0lORVQ2IiwgIlNPQ0tfREdSQU0iKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dVRFA2VGVzdChSZWN2bXNnVGVzdHMsIFNlbmRyZWN2bXNnVURQNlRlc3RCYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInJlY3Ztc2dfaW50byIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyhzb2NrZXQuaGFzX2lwdjYsICJQeXRob24gbm90IGJ1aWx0IHdpdGggSVB2NiBzdXBwb3J0IikKK0ByZXF1aXJlU29ja2V0KCJBRl9JTkVUNiIsICJTT0NLX0RHUkFNIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBSZWN2bXNnSW50b1VEUDZUZXN0KFJlY3Ztc2dJbnRvVGVzdHMsIFNlbmRyZWN2bXNnVURQNlRlc3RCYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInJlY3Ztc2ciKQorQHVuaXR0ZXN0LnNraXBVbmxlc3Moc29ja2V0Lmhhc19pcHY2LCAiUHl0aG9uIG5vdCBidWlsdCB3aXRoIElQdjYgc3VwcG9ydCIpCitAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQUFJPVE9fSVBWNiIpCitAcmVxdWlyZVNvY2tldCgiQUZfSU5FVDYiLCAiU09DS19ER1JBTSIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ1JGQzM1NDJBbmNpbGxhcnlVRFA2VGVzdChSRkMzNTQyQW5jaWxsYXJ5VGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dVRFA2VGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZ19pbnRvIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHNvY2tldC5oYXNfaXB2NiwgIlB5dGhvbiBub3QgYnVpbHQgd2l0aCBJUHY2IHN1cHBvcnQiKQorQHJlcXVpcmVBdHRycyhzb2NrZXQsICJJUFBST1RPX0lQVjYiKQorQHJlcXVpcmVTb2NrZXQoIkFGX0lORVQ2IiwgIlNPQ0tfREdSQU0iKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dJbnRvUkZDMzU0MkFuY2lsbGFyeVVEUDZUZXN0KFJlY3Ztc2dJbnRvTWl4aW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSRkMzNTQyQW5jaWxsYXJ5VGVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlbmRyZWN2bXNnVURQNlRlc3RCYXNlKToKKyAgICBwYXNzCisKKworY2xhc3MgU2VuZHJlY3Ztc2dUQ1BUZXN0QmFzZShTZW5kcmVjdm1zZ0Nvbm5lY3RlZEJhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbm5lY3RlZFN0cmVhbVRlc3RNaXhpbiwgVENQVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAic2VuZG1zZyIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgU2VuZG1zZ1RDUFRlc3QoU2VuZG1zZ1N0cmVhbVRlc3RzLCBTZW5kcmVjdm1zZ1RDUFRlc3RCYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInJlY3Ztc2ciKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dUQ1BUZXN0KFJlY3Ztc2dUZXN0cywgUmVjdm1zZ0dlbmVyaWNTdHJlYW1UZXN0cywKKyAgICAgICAgICAgICAgICAgICAgIFNlbmRyZWN2bXNnVENQVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZ19pbnRvIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBSZWN2bXNnSW50b1RDUFRlc3QoUmVjdm1zZ0ludG9UZXN0cywgUmVjdm1zZ0dlbmVyaWNTdHJlYW1UZXN0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICBTZW5kcmVjdm1zZ1RDUFRlc3RCYXNlKToKKyAgICBwYXNzCisKKworY2xhc3MgU2VuZHJlY3Ztc2dTQ1RQU3RyZWFtVGVzdEJhc2UoU2VuZHJlY3Ztc2dTQ1RQRmxhZ3NCYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dDb25uZWN0ZWRCYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29ubmVjdGVkU3RyZWFtVGVzdE1peGluLCBTQ1RQU3RyZWFtQmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJzZW5kbXNnIikKK0ByZXF1aXJlU29ja2V0KCJBRl9JTkVUIiwgIlNPQ0tfU1RSRUFNIiwgIklQUFJPVE9fU0NUUCIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgU2VuZG1zZ1NDVFBTdHJlYW1UZXN0KFNlbmRtc2dTdHJlYW1UZXN0cywgU2VuZHJlY3Ztc2dTQ1RQU3RyZWFtVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZyIpCitAcmVxdWlyZVNvY2tldCgiQUZfSU5FVCIsICJTT0NLX1NUUkVBTSIsICJJUFBST1RPX1NDVFAiKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dTQ1RQU3RyZWFtVGVzdChSZWN2bXNnVGVzdHMsIFJlY3Ztc2dHZW5lcmljU3RyZWFtVGVzdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dTQ1RQU3RyZWFtVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZ19pbnRvIikKK0ByZXF1aXJlU29ja2V0KCJBRl9JTkVUIiwgIlNPQ0tfU1RSRUFNIiwgIklQUFJPVE9fU0NUUCIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ0ludG9TQ1RQU3RyZWFtVGVzdChSZWN2bXNnSW50b1Rlc3RzLCBSZWN2bXNnR2VuZXJpY1N0cmVhbVRlc3RzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZW5kcmVjdm1zZ1NDVFBTdHJlYW1UZXN0QmFzZSk6CisgICAgcGFzcworCisKK2NsYXNzIFNlbmRyZWN2bXNnVW5peFN0cmVhbVRlc3RCYXNlKFNlbmRyZWN2bXNnQ29ubmVjdGVkQmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbm5lY3RlZFN0cmVhbVRlc3RNaXhpbiwgVW5peFN0cmVhbUJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAic2VuZG1zZyIpCitAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkFGX1VOSVgiKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFNlbmRtc2dVbml4U3RyZWFtVGVzdChTZW5kbXNnU3RyZWFtVGVzdHMsIFNlbmRyZWN2bXNnVW5peFN0cmVhbVRlc3RCYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInJlY3Ztc2ciKQorQHJlcXVpcmVBdHRycyhzb2NrZXQsICJBRl9VTklYIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBSZWN2bXNnVW5peFN0cmVhbVRlc3QoUmVjdm1zZ1Rlc3RzLCBSZWN2bXNnR2VuZXJpY1N0cmVhbVRlc3RzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlbmRyZWN2bXNnVW5peFN0cmVhbVRlc3RCYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInJlY3Ztc2dfaW50byIpCitAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkFGX1VOSVgiKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dJbnRvVW5peFN0cmVhbVRlc3QoUmVjdm1zZ0ludG9UZXN0cywgUmVjdm1zZ0dlbmVyaWNTdHJlYW1UZXN0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dVbml4U3RyZWFtVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAic2VuZG1zZyIsICJyZWN2bXNnIikKK0ByZXF1aXJlQXR0cnMoc29ja2V0LCAiQUZfVU5JWCIsICJTT0xfU09DS0VUIiwgIlNDTV9SSUdIVFMiKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dTQ01SaWdodHNTdHJlYW1UZXN0KFNDTVJpZ2h0c1Rlc3QsIFNlbmRyZWN2bXNnVW5peFN0cmVhbVRlc3RCYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInNlbmRtc2ciLCAicmVjdm1zZ19pbnRvIikKK0ByZXF1aXJlQXR0cnMoc29ja2V0LCAiQUZfVU5JWCIsICJTT0xfU09DS0VUIiwgIlNDTV9SSUdIVFMiKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dJbnRvU0NNUmlnaHRzU3RyZWFtVGVzdChSZWN2bXNnSW50b01peGluLCBTQ01SaWdodHNUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlbmRyZWN2bXNnVW5peFN0cmVhbVRlc3RCYXNlKToKKyAgICBwYXNzCisKKworIyBUZXN0IGludGVycnVwdGluZyB0aGUgaW50ZXJydXB0aWJsZSBzZW5kL3JlY2VpdmUgbWV0aG9kcyB3aXRoIGEKKyMgc2lnbmFsIHdoZW4gYSB0aW1lb3V0IGlzIHNldC4gIFRoZXNlIHRlc3RzIGF2b2lkIGhhdmluZyBtdWx0aXBsZQorIyB0aHJlYWRzIGFsaXZlIGR1cmluZyB0aGUgdGVzdCBzbyB0aGF0IHRoZSBPUyBjYW5ub3QgZGVsaXZlciB0aGUKKyMgc2lnbmFsIHRvIHRoZSB3cm9uZyBvbmUuCisKK2NsYXNzIEludGVycnVwdGVkVGltZW91dEJhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorICAgICMgQmFzZSBjbGFzcyBmb3IgaW50ZXJydXB0ZWQgc2VuZC9yZWNlaXZlIHRlc3RzLiAgSW5zdGFsbHMgYW4KKyAgICAjIGVtcHR5IGhhbmRsZXIgZm9yIFNJR0FMUk0gYW5kIHJlbW92ZXMgaXQgb24gdGVhcmRvd24sIGFsb25nIHdpdGgKKyAgICAjIGFueSBzY2hlZHVsZWQgYWxhcm1zLgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcigpLnNldFVwKCkKKyAgICAgICAgb3JpZ19hbHJtX2hhbmRsZXIgPSBzaWduYWwuc2lnbmFsKHNpZ25hbC5TSUdBTFJNLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIHNpZ251bSwgZnJhbWU6IE5vbmUpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzaWduYWwuc2lnbmFsLCBzaWduYWwuU0lHQUxSTSwgb3JpZ19hbHJtX2hhbmRsZXIpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLnNldEFsYXJtLCAwKQorCisgICAgIyBUaW1lb3V0IGZvciBzb2NrZXQgb3BlcmF0aW9ucworICAgIHRpbWVvdXQgPSA0LjAKKworICAgICMgUHJvdmlkZSBzZXRBbGFybSgpIG1ldGhvZCB0byBzY2hlZHVsZSBkZWxpdmVyeSBvZiBTSUdBTFJNIGFmdGVyCisgICAgIyBnaXZlbiBudW1iZXIgb2Ygc2Vjb25kcywgb3IgY2FuY2VsIGl0IGlmIHplcm8sIGFuZCBhbgorICAgICMgYXBwcm9wcmlhdGUgdGltZSB2YWx1ZSB0byB1c2UuICBVc2Ugc2V0aXRpbWVyKCkgaWYgYXZhaWxhYmxlLgorICAgIGlmIGhhc2F0dHIoc2lnbmFsLCAic2V0aXRpbWVyIik6CisgICAgICAgIGFsYXJtX3RpbWUgPSAwLjA1CisKKyAgICAgICAgZGVmIHNldEFsYXJtKHNlbGYsIHNlY29uZHMpOgorICAgICAgICAgICAgc2lnbmFsLnNldGl0aW1lcihzaWduYWwuSVRJTUVSX1JFQUwsIHNlY29uZHMpCisgICAgZWxzZToKKyAgICAgICAgIyBPbGQgc3lzdGVtcyBtYXkgZGVsaXZlciB0aGUgYWxhcm0gdXAgdG8gb25lIHNlY29uZCBlYXJseQorICAgICAgICBhbGFybV90aW1lID0gMgorCisgICAgICAgIGRlZiBzZXRBbGFybShzZWxmLCBzZWNvbmRzKToKKyAgICAgICAgICAgIHNpZ25hbC5hbGFybShzZWNvbmRzKQorCisKKyMgUmVxdWlyZSBzaWdpbnRlcnJ1cHQoKSBpbiBvcmRlciB0byBlbnN1cmUgdGhhdCBzeXN0ZW0gY2FsbHMgYXJlCisjIGludGVycnVwdGVkIGJ5IGRlZmF1bHQuCitAcmVxdWlyZUF0dHJzKHNpZ25hbCwgInNpZ2ludGVycnVwdCIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgImFsYXJtIikgb3IgaGFzYXR0cihzaWduYWwsICJzZXRpdGltZXIiKSwKKyAgICAgICAgICAgICAgICAgICAgICJEb24ndCBoYXZlIHNpZ25hbC5hbGFybSBvciBzaWduYWwuc2V0aXRpbWVyIikKK2NsYXNzIEludGVycnVwdGVkUmVjdlRpbWVvdXRUZXN0KEludGVycnVwdGVkVGltZW91dEJhc2UsIFVEUFRlc3RCYXNlKToKKyAgICAjIFRlc3QgaW50ZXJydXB0aW5nIHRoZSByZWN2KigpIG1ldGhvZHMgd2l0aCBzaWduYWxzIHdoZW4gYQorICAgICMgdGltZW91dCBpcyBzZXQuCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKCkuc2V0VXAoKQorICAgICAgICBzZWxmLnNlcnYuc2V0dGltZW91dChzZWxmLnRpbWVvdXQpCisKKyAgICBkZWYgY2hlY2tJbnRlcnJ1cHRlZFJlY3Yoc2VsZiwgZnVuYywgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgIyBDaGVjayB0aGF0IGZ1bmMoKmFyZ3MsICoqa3dhcmdzKSByYWlzZXMgc29ja2V0LmVycm9yIHdpdGggYW4KKyAgICAgICAgIyBlcnJubyBvZiBFSU5UUiB3aGVuIGludGVycnVwdGVkIGJ5IGEgc2lnbmFsLgorICAgICAgICBzZWxmLnNldEFsYXJtKHNlbGYuYWxhcm1fdGltZSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgZnVuYygqYXJncywgKiprd2FyZ3MpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SXNJbnN0YW5jZShjbS5leGNlcHRpb24sIHNvY2tldC50aW1lb3V0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtLmV4Y2VwdGlvbi5lcnJubywgZXJybm8uRUlOVFIpCisKKyAgICBkZWYgdGVzdEludGVycnVwdGVkUmVjdlRpbWVvdXQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tJbnRlcnJ1cHRlZFJlY3Yoc2VsZi5zZXJ2LnJlY3YsIDEwMjQpCisKKyAgICBkZWYgdGVzdEludGVycnVwdGVkUmVjdkludG9UaW1lb3V0KHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrSW50ZXJydXB0ZWRSZWN2KHNlbGYuc2Vydi5yZWN2X2ludG8sIGJ5dGVhcnJheSgxMDI0KSkKKworICAgIGRlZiB0ZXN0SW50ZXJydXB0ZWRSZWN2ZnJvbVRpbWVvdXQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tJbnRlcnJ1cHRlZFJlY3Yoc2VsZi5zZXJ2LnJlY3Zmcm9tLCAxMDI0KQorCisgICAgZGVmIHRlc3RJbnRlcnJ1cHRlZFJlY3Zmcm9tSW50b1RpbWVvdXQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tJbnRlcnJ1cHRlZFJlY3Yoc2VsZi5zZXJ2LnJlY3Zmcm9tX2ludG8sIGJ5dGVhcnJheSgxMDI0KSkKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInJlY3Ztc2ciKQorICAgIGRlZiB0ZXN0SW50ZXJydXB0ZWRSZWN2bXNnVGltZW91dChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0ludGVycnVwdGVkUmVjdihzZWxmLnNlcnYucmVjdm1zZywgMTAyNCkKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInJlY3Ztc2dfaW50byIpCisgICAgZGVmIHRlc3RJbnRlcnJ1cHRlZFJlY3Ztc2dJbnRvVGltZW91dChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0ludGVycnVwdGVkUmVjdihzZWxmLnNlcnYucmVjdm1zZ19pbnRvLCBbYnl0ZWFycmF5KDEwMjQpXSkKKworCisjIFJlcXVpcmUgc2lnaW50ZXJydXB0KCkgaW4gb3JkZXIgdG8gZW5zdXJlIHRoYXQgc3lzdGVtIGNhbGxzIGFyZQorIyBpbnRlcnJ1cHRlZCBieSBkZWZhdWx0LgorQHJlcXVpcmVBdHRycyhzaWduYWwsICJzaWdpbnRlcnJ1cHQiKQorQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICJhbGFybSIpIG9yIGhhc2F0dHIoc2lnbmFsLCAic2V0aXRpbWVyIiksCisgICAgICAgICAgICAgICAgICAgICAiRG9uJ3QgaGF2ZSBzaWduYWwuYWxhcm0gb3Igc2lnbmFsLnNldGl0aW1lciIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgSW50ZXJydXB0ZWRTZW5kVGltZW91dFRlc3QoSW50ZXJydXB0ZWRUaW1lb3V0QmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRocmVhZFNhZmVDbGVhbnVwVGVzdENhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb2NrZXRMaXN0ZW5pbmdUZXN0TWl4aW4sIFRDUFRlc3RCYXNlKToKKyAgICAjIFRlc3QgaW50ZXJydXB0aW5nIHRoZSBpbnRlcnJ1cHRpYmxlIHNlbmQqKCkgbWV0aG9kcyB3aXRoIHNpZ25hbHMKKyAgICAjIHdoZW4gYSB0aW1lb3V0IGlzIHNldC4KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoKS5zZXRVcCgpCisgICAgICAgIHNlbGYuc2Vydl9jb25uID0gc2VsZi5uZXdTb2NrZXQoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi5zZXJ2X2Nvbm4uY2xvc2UpCisgICAgICAgICMgVXNlIGEgdGhyZWFkIHRvIGNvbXBsZXRlIHRoZSBjb25uZWN0aW9uLCBidXQgd2FpdCBmb3IgaXQgdG8KKyAgICAgICAgIyB0ZXJtaW5hdGUgYmVmb3JlIHJ1bm5pbmcgdGhlIHRlc3QsIHNvIHRoYXQgdGhlcmUgaXMgb25seSBvbmUKKyAgICAgICAgIyB0aHJlYWQgdG8gYWNjZXB0IHRoZSBzaWduYWwuCisgICAgICAgIGNsaV90aHJlYWQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1zZWxmLmRvQ29ubmVjdCkKKyAgICAgICAgY2xpX3RocmVhZC5zdGFydCgpCisgICAgICAgIHNlbGYuY2xpX2Nvbm4sIGFkZHIgPSBzZWxmLnNlcnYuYWNjZXB0KCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNlbGYuY2xpX2Nvbm4uY2xvc2UpCisgICAgICAgIGNsaV90aHJlYWQuam9pbigpCisgICAgICAgIHNlbGYuc2Vydl9jb25uLnNldHRpbWVvdXQoc2VsZi50aW1lb3V0KQorCisgICAgZGVmIGRvQ29ubmVjdChzZWxmKToKKyAgICAgICAgc2VsZi5zZXJ2X2Nvbm4uY29ubmVjdChzZWxmLnNlcnZfYWRkcikKKworICAgIGRlZiBjaGVja0ludGVycnVwdGVkU2VuZChzZWxmLCBmdW5jLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAjIENoZWNrIHRoYXQgZnVuYygqYXJncywgKiprd2FyZ3MpLCBydW4gaW4gYSBsb29wLCByYWlzZXMKKyAgICAgICAgIyBzb2NrZXQuZXJyb3Igd2l0aCBhbiBlcnJubyBvZiBFSU5UUiB3aGVuIGludGVycnVwdGVkIGJ5IGEKKyAgICAgICAgIyBzaWduYWwuCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yKSBhcyBjbToKKyAgICAgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICAgICAgc2VsZi5zZXRBbGFybShzZWxmLmFsYXJtX3RpbWUpCisgICAgICAgICAgICAgICAgZnVuYygqYXJncywgKiprd2FyZ3MpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SXNJbnN0YW5jZShjbS5leGNlcHRpb24sIHNvY2tldC50aW1lb3V0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtLmV4Y2VwdGlvbi5lcnJubywgZXJybm8uRUlOVFIpCisKKyAgICAjIElzc3VlICMxMjk1ODogVGhlIGZvbGxvd2luZyB0ZXN0cyBoYXZlIHByb2JsZW1zIG9uIE1hYyBPUyBYCisgICAgQHN1cHBvcnQuYW50aWNpcGF0ZV9mYWlsdXJlKHN5cy5wbGF0Zm9ybSA9PSAiZGFyd2luIikKKyAgICBkZWYgdGVzdEludGVycnVwdGVkU2VuZFRpbWVvdXQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tJbnRlcnJ1cHRlZFNlbmQoc2VsZi5zZXJ2X2Nvbm4uc2VuZCwgYiJhIio1MTIpCisKKyAgICBAc3VwcG9ydC5hbnRpY2lwYXRlX2ZhaWx1cmUoc3lzLnBsYXRmb3JtID09ICJkYXJ3aW4iKQorICAgIGRlZiB0ZXN0SW50ZXJydXB0ZWRTZW5kdG9UaW1lb3V0KHNlbGYpOgorICAgICAgICAjIFBhc3NpbmcgYW4gYWN0dWFsIGFkZHJlc3MgaGVyZSBhcyBQeXRob24ncyB3cmFwcGVyIGZvcgorICAgICAgICAjIHNlbmR0bygpIGRvZXNuJ3QgYWxsb3cgcGFzc2luZyBhIHplcm8tbGVuZ3RoIG9uZTsgUE9TSVgKKyAgICAgICAgIyByZXF1aXJlcyB0aGF0IHRoZSBhZGRyZXNzIGlzIGlnbm9yZWQgc2luY2UgdGhlIHNvY2tldCBpcworICAgICAgICAjIGNvbm5lY3Rpb24tbW9kZSwgaG93ZXZlci4KKyAgICAgICAgc2VsZi5jaGVja0ludGVycnVwdGVkU2VuZChzZWxmLnNlcnZfY29ubi5zZW5kdG8sIGIiYSIqNTEyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2Vydl9hZGRyKQorCisgICAgQHN1cHBvcnQuYW50aWNpcGF0ZV9mYWlsdXJlKHN5cy5wbGF0Zm9ybSA9PSAiZGFyd2luIikKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJzZW5kbXNnIikKKyAgICBkZWYgdGVzdEludGVycnVwdGVkU2VuZG1zZ1RpbWVvdXQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tJbnRlcnJ1cHRlZFNlbmQoc2VsZi5zZXJ2X2Nvbm4uc2VuZG1zZywgW2IiYSIqNTEyXSkKKworCiBAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQogY2xhc3MgVENQQ2xvc2VyVGVzdChUaHJlYWRlZFRDUFNvY2tldFRlc3QpOgogCkBAIC0xMDY4LDExICszNTM3LDggQEAKICAgICAgICAgcGFzcwogCiAgICAgaWYgaGFzYXR0cihzb2NrZXQsICJTT0NLX05PTkJMT0NLIik6CisgICAgICAgIEBzdXBwb3J0LnJlcXVpcmVzX2xpbnV4X3ZlcnNpb24oMiwgNiwgMjgpCiAgICAgICAgIGRlZiB0ZXN0SW5pdE5vbkJsb2NraW5nKHNlbGYpOgotICAgICAgICAgICAgdiA9IGxpbnV4X3ZlcnNpb24oKQotICAgICAgICAgICAgaWYgdiA8ICgyLCA2LCAyOCk6Ci0gICAgICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiTGludXgga2VybmVsIDIuNi4yOCBvciBoaWdoZXIgcmVxdWlyZWQsIG5vdCAlcyIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgIi4iLmpvaW4obWFwKHN0ciwgdikpKQogICAgICAgICAgICAgIyByZWluaXQgc2VydmVyIHNvY2tldAogICAgICAgICAgICAgc2VsZi5zZXJ2LmNsb3NlKCkKICAgICAgICAgICAgIHNlbGYuc2VydiA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSB8CkBAIC0xMTc0LDcgKzM2NDAsNyBAQAogICAgICIiIgogCiAgICAgYnVmc2l6ZSA9IC0xICMgVXNlIGRlZmF1bHQgYnVmZmVyIHNpemUKLSAgICBlbmNvZGluZyA9ICd1dGY4JworICAgIGVuY29kaW5nID0gJ3V0Zi04JwogICAgIGVycm9ycyA9ICdzdHJpY3QnCiAgICAgbmV3bGluZSA9IE5vbmUKIApAQCAtMTM1NSw3ICszODIxLDcgQEAKIAogICAgIEBzdGF0aWNtZXRob2QKICAgICBkZWYgX3JhaXNlX2VpbnRyKCk6Ci0gICAgICAgIHJhaXNlIHNvY2tldC5lcnJvcihlcnJuby5FSU5UUikKKyAgICAgICAgcmFpc2Ugc29ja2V0LmVycm9yKGVycm5vLkVJTlRSLCAiaW50ZXJydXB0ZWQiKQogCiAgICAgZGVmIF90ZXh0aW93cmFwX21vY2tfc29ja2V0KHNlbGYsIG1vY2ssIGJ1ZmZlcmluZz0tMSk6CiAgICAgICAgIHJhdyA9IHNvY2tldC5Tb2NrZXRJTyhtb2NrLCAiciIpCkBAIC0xMzk1LDcgKzM4NjEsNyBAQAogICAgICAgICAgICAgZGF0YSA9IGInJwogICAgICAgICBlbHNlOgogICAgICAgICAgICAgZGF0YSA9ICcnCi0gICAgICAgICAgICBleHBlY3RpbmcgPSBleHBlY3RpbmcuZGVjb2RlKCd1dGY4JykKKyAgICAgICAgICAgIGV4cGVjdGluZyA9IGV4cGVjdGluZy5kZWNvZGUoJ3V0Zi04JykKICAgICAgICAgd2hpbGUgbGVuKGRhdGEpICE9IGxlbihleHBlY3RpbmcpOgogICAgICAgICAgICAgcGFydCA9IGZvLnJlYWQoc2l6ZSkKICAgICAgICAgICAgIGlmIG5vdCBwYXJ0OgpAQCAtMTU1Nyw3ICs0MDIzLDcgQEAKICAgICAiIiJUZXN0cyBmb3Igc29ja2V0Lm1ha2VmaWxlKCkgaW4gdGV4dCBtb2RlIChyYXRoZXIgdGhhbiBiaW5hcnkpIiIiCiAKICAgICByZWFkX21vZGUgPSAncicKLSAgICByZWFkX21zZyA9IE1TRy5kZWNvZGUoJ3V0ZjgnKQorICAgIHJlYWRfbXNnID0gTVNHLmRlY29kZSgndXRmLTgnKQogICAgIHdyaXRlX21vZGUgPSAnd2InCiAgICAgd3JpdGVfbXNnID0gTVNHCiAgICAgbmV3bGluZSA9ICcnCkBAIC0xNTY5LDcgKzQwMzUsNyBAQAogICAgIHJlYWRfbW9kZSA9ICdyYicKICAgICByZWFkX21zZyA9IE1TRwogICAgIHdyaXRlX21vZGUgPSAndycKLSAgICB3cml0ZV9tc2cgPSBNU0cuZGVjb2RlKCd1dGY4JykKKyAgICB3cml0ZV9tc2cgPSBNU0cuZGVjb2RlKCd1dGYtOCcpCiAgICAgbmV3bGluZSA9ICcnCiAKIApAQCAtMTU3Nyw5ICs0MDQzLDkgQEAKICAgICAiIiJUZXN0cyBmb3Igc29ja2V0Lm1ha2VmaWxlKCkgaW4gdGV4dCBtb2RlIChyYXRoZXIgdGhhbiBiaW5hcnkpIiIiCiAKICAgICByZWFkX21vZGUgPSAncicKLSAgICByZWFkX21zZyA9IE1TRy5kZWNvZGUoJ3V0ZjgnKQorICAgIHJlYWRfbXNnID0gTVNHLmRlY29kZSgndXRmLTgnKQogICAgIHdyaXRlX21vZGUgPSAndycKLSAgICB3cml0ZV9tc2cgPSBNU0cuZGVjb2RlKCd1dGY4JykKKyAgICB3cml0ZV9tc2cgPSBNU0cuZGVjb2RlKCd1dGYtOCcpCiAgICAgbmV3bGluZSA9ICcnCiAKIApAQCAtMTg1MSw2ICs0MzE3LDc4IEBACiAgICAgICAgIHdpdGggc29ja2V0LnNvY2tldChzb2NrZXQuQUZfVU5JWCwgc29ja2V0LlNPQ0tfU1RSRUFNKSBhcyBzOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCBzLmJpbmQsIGFkZHJlc3MpCiAKKyAgICBkZWYgdGVzdFN0ck5hbWUoc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCBhbiBhYnN0cmFjdCBuYW1lIGNhbiBiZSBwYXNzZWQgYXMgYSBzdHJpbmcuCisgICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9VTklYLCBzb2NrZXQuU09DS19TVFJFQU0pCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHMuYmluZCgiXHgwMHB5dGhvblx4MDB0ZXN0XHgwMCIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuZ2V0c29ja25hbWUoKSwgYiJceDAwcHl0aG9uXHgwMHRlc3RceDAwIikKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHMuY2xvc2UoKQorCitjbGFzcyBUZXN0VW5peERvbWFpbih1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuc29jayA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX1VOSVgsIHNvY2tldC5TT0NLX1NUUkVBTSkKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc2VsZi5zb2NrLmNsb3NlKCkKKworICAgIGRlZiBlbmNvZGVkKHNlbGYsIHBhdGgpOgorICAgICAgICAjIFJldHVybiB0aGUgZ2l2ZW4gcGF0aCBlbmNvZGVkIGluIHRoZSBmaWxlIHN5c3RlbSBlbmNvZGluZywKKyAgICAgICAgIyBvciBza2lwIHRoZSB0ZXN0IGlmIHRoaXMgaXMgbm90IHBvc3NpYmxlLgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXR1cm4gb3MuZnNlbmNvZGUocGF0aCkKKyAgICAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoCisgICAgICAgICAgICAgICAgIlBhdGhuYW1lIHswIWF9IGNhbm5vdCBiZSByZXByZXNlbnRlZCBpbiBmaWxlICIKKyAgICAgICAgICAgICAgICAic3lzdGVtIGVuY29kaW5nIHsxIXJ9Ii5mb3JtYXQoCisgICAgICAgICAgICAgICAgICAgIHBhdGgsIHN5cy5nZXRmaWxlc3lzdGVtZW5jb2RpbmcoKSkpCisKKyAgICBkZWYgYmluZChzZWxmLCBzb2NrLCBwYXRoKToKKyAgICAgICAgIyBCaW5kIHRoZSBzb2NrZXQKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc29jay5iaW5kKHBhdGgpCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICBpZiBzdHIoZSkgPT0gIkFGX1VOSVggcGF0aCB0b28gbG9uZyI6CisgICAgICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgKKyAgICAgICAgICAgICAgICAgICAgIlBhdGhuYW1lIHswIWF9IGlzIHRvbyBsb25nIHRvIHNlcnZlIGFzIGEgQUZfVU5JWCBwYXRoIgorICAgICAgICAgICAgICAgICAgICAuZm9ybWF0KHBhdGgpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZQorCisgICAgZGVmIHRlc3RTdHJBZGRyKHNlbGYpOgorICAgICAgICAjIFRlc3QgYmluZGluZyB0byBhbmQgcmV0cmlldmluZyBhIG5vcm1hbCBzdHJpbmcgcGF0aG5hbWUuCisgICAgICAgIHBhdGggPSBvcy5wYXRoLmFic3BhdGgoc3VwcG9ydC5URVNURk4pCisgICAgICAgIHNlbGYuYmluZChzZWxmLnNvY2ssIHBhdGgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzdXBwb3J0LnVubGluaywgcGF0aCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNvY2suZ2V0c29ja25hbWUoKSwgcGF0aCkKKworICAgIGRlZiB0ZXN0Qnl0ZXNBZGRyKHNlbGYpOgorICAgICAgICAjIFRlc3QgYmluZGluZyB0byBhIGJ5dGVzIHBhdGhuYW1lLgorICAgICAgICBwYXRoID0gb3MucGF0aC5hYnNwYXRoKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBzZWxmLmJpbmQoc2VsZi5zb2NrLCBzZWxmLmVuY29kZWQocGF0aCkpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzdXBwb3J0LnVubGluaywgcGF0aCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNvY2suZ2V0c29ja25hbWUoKSwgcGF0aCkKKworICAgIGRlZiB0ZXN0U3Vycm9nYXRlZXNjYXBlQmluZChzZWxmKToKKyAgICAgICAgIyBUZXN0IGJpbmRpbmcgdG8gYSB2YWxpZCBub24tQVNDSUkgcGF0aG5hbWUsIHdpdGggdGhlCisgICAgICAgICMgbm9uLUFTQ0lJIGJ5dGVzIHN1cHBsaWVkIHVzaW5nIHN1cnJvZ2F0ZWVzY2FwZSBlbmNvZGluZy4KKyAgICAgICAgcGF0aCA9IG9zLnBhdGguYWJzcGF0aChzdXBwb3J0LlRFU1RGTl9VTklDT0RFKQorICAgICAgICBiID0gc2VsZi5lbmNvZGVkKHBhdGgpCisgICAgICAgIHNlbGYuYmluZChzZWxmLnNvY2ssIGIuZGVjb2RlKCJhc2NpaSIsICJzdXJyb2dhdGVlc2NhcGUiKSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN1cHBvcnQudW5saW5rLCBwYXRoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc29jay5nZXRzb2NrbmFtZSgpLCBwYXRoKQorCisgICAgZGVmIHRlc3RVbmVuY29kYWJsZUFkZHIoc2VsZik6CisgICAgICAgICMgVGVzdCBiaW5kaW5nIHRvIGEgcGF0aG5hbWUgdGhhdCBjYW5ub3QgYmUgZW5jb2RlZCBpbiB0aGUKKyAgICAgICAgIyBmaWxlIHN5c3RlbSBlbmNvZGluZy4KKyAgICAgICAgaWYgc3VwcG9ydC5URVNURk5fVU5FTkNPREFCTEUgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIk5vIHVuZW5jb2RhYmxlIGZpbGVuYW1lIGF2YWlsYWJsZSIpCisgICAgICAgIHBhdGggPSBvcy5wYXRoLmFic3BhdGgoc3VwcG9ydC5URVNURk5fVU5FTkNPREFCTEUpCisgICAgICAgIHNlbGYuYmluZChzZWxmLnNvY2ssIHBhdGgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzdXBwb3J0LnVubGluaywgcGF0aCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNvY2suZ2V0c29ja25hbWUoKSwgcGF0aCkKIAogQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKIGNsYXNzIEJ1ZmZlcklPVGVzdChTb2NrZXRDb25uZWN0ZWRUZXN0KToKQEAgLTIwNTEsMTEgKzQ1ODksOCBAQAogICAgICAgICAgICAgICAgICAgICAgIlNPQ0tfQ0xPRVhFQyBub3QgZGVmaW5lZCIpCiBAdW5pdHRlc3Quc2tpcFVubGVzcyhmY250bCwgIm1vZHVsZSBmY250bCBub3QgYXZhaWxhYmxlIikKIGNsYXNzIENsb2V4ZWNDb25zdGFudFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIEBzdXBwb3J0LnJlcXVpcmVzX2xpbnV4X3ZlcnNpb24oMiwgNiwgMjgpCiAgICAgZGVmIHRlc3RfU09DS19DTE9FWEVDKHNlbGYpOgotICAgICAgICB2ID0gbGludXhfdmVyc2lvbigpCi0gICAgICAgIGlmIHYgPCAoMiwgNiwgMjgpOgotICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiTGludXgga2VybmVsIDIuNi4yOCBvciBoaWdoZXIgcmVxdWlyZWQsIG5vdCAlcyIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJSAiLiIuam9pbihtYXAoc3RyLCB2KSkpCiAgICAgICAgIHdpdGggc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5TT0NLX1NUUkVBTSB8IHNvY2tldC5TT0NLX0NMT0VYRUMpIGFzIHM6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUocy50eXBlICYgc29ja2V0LlNPQ0tfQ0xPRVhFQykKQEAgLTIwNzMsMTEgKzQ2MDgsOCBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzLnR5cGUgJiBzb2NrZXQuU09DS19OT05CTE9DSykKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR0aW1lb3V0KCksIE5vbmUpCiAKKyAgICBAc3VwcG9ydC5yZXF1aXJlc19saW51eF92ZXJzaW9uKDIsIDYsIDI4KQogICAgIGRlZiB0ZXN0X1NPQ0tfTk9OQkxPQ0soc2VsZik6Ci0gICAgICAgIHYgPSBsaW51eF92ZXJzaW9uKCkKLSAgICAgICAgaWYgdiA8ICgyLCA2LCAyOCk6Ci0gICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJMaW51eCBrZXJuZWwgMi42LjI4IG9yIGhpZ2hlciByZXF1aXJlZCwgbm90ICVzIgotICAgICAgICAgICAgICAgICAgICAgICAgICAlICIuIi5qb2luKG1hcChzdHIsIHYpKSkKICAgICAgICAgIyBhIGxvdCBvZiBpdCBzZWVtcyBzaWxseSBhbmQgcmVkdW5kYW50LCBidXQgSSB3YW50ZWQgdG8gdGVzdCB0aGF0CiAgICAgICAgICMgY2hhbmdpbmcgYmFjayBhbmQgZm9ydGggd29ya2VkIG9rCiAgICAgICAgIHdpdGggc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCwKQEAgLTIxMzMsMTEgKzQ2NjUsNDAgQEAKICAgICBdKQogICAgIGlmIGhhc2F0dHIoc29ja2V0LCAic29ja2V0cGFpciIpOgogICAgICAgICB0ZXN0cy5hcHBlbmQoQmFzaWNTb2NrZXRQYWlyVGVzdCkKLSAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2xpbnV4Mic6CisgICAgaWYgaGFzYXR0cihzb2NrZXQsICJBRl9VTklYIik6CisgICAgICAgIHRlc3RzLmFwcGVuZChUZXN0VW5peERvbWFpbikKKyAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2xpbnV4JzoKICAgICAgICAgdGVzdHMuYXBwZW5kKFRlc3RMaW51eEFic3RyYWN0TmFtZXNwYWNlKQogICAgIGlmIGlzVGlwY0F2YWlsYWJsZSgpOgogICAgICAgICB0ZXN0cy5hcHBlbmQoVElQQ1Rlc3QpCiAgICAgICAgIHRlc3RzLmFwcGVuZChUSVBDVGhyZWFkYWJsZVRlc3QpCisgICAgdGVzdHMuZXh0ZW5kKFtCYXNpY0NBTlRlc3QsIENBTlRlc3RdKQorICAgIHRlc3RzLmV4dGVuZChbQmFzaWNSRFNUZXN0LCBSRFNUZXN0XSkKKyAgICB0ZXN0cy5leHRlbmQoWworICAgICAgICBDbXNnTWFjcm9UZXN0cywKKyAgICAgICAgU2VuZG1zZ1VEUFRlc3QsCisgICAgICAgIFJlY3Ztc2dVRFBUZXN0LAorICAgICAgICBSZWN2bXNnSW50b1VEUFRlc3QsCisgICAgICAgIFNlbmRtc2dVRFA2VGVzdCwKKyAgICAgICAgUmVjdm1zZ1VEUDZUZXN0LAorICAgICAgICBSZWN2bXNnUkZDMzU0MkFuY2lsbGFyeVVEUDZUZXN0LAorICAgICAgICBSZWN2bXNnSW50b1JGQzM1NDJBbmNpbGxhcnlVRFA2VGVzdCwKKyAgICAgICAgUmVjdm1zZ0ludG9VRFA2VGVzdCwKKyAgICAgICAgU2VuZG1zZ1RDUFRlc3QsCisgICAgICAgIFJlY3Ztc2dUQ1BUZXN0LAorICAgICAgICBSZWN2bXNnSW50b1RDUFRlc3QsCisgICAgICAgIFNlbmRtc2dTQ1RQU3RyZWFtVGVzdCwKKyAgICAgICAgUmVjdm1zZ1NDVFBTdHJlYW1UZXN0LAorICAgICAgICBSZWN2bXNnSW50b1NDVFBTdHJlYW1UZXN0LAorICAgICAgICBTZW5kbXNnVW5peFN0cmVhbVRlc3QsCisgICAgICAgIFJlY3Ztc2dVbml4U3RyZWFtVGVzdCwKKyAgICAgICAgUmVjdm1zZ0ludG9Vbml4U3RyZWFtVGVzdCwKKyAgICAgICAgUmVjdm1zZ1NDTVJpZ2h0c1N0cmVhbVRlc3QsCisgICAgICAgIFJlY3Ztc2dJbnRvU0NNUmlnaHRzU3RyZWFtVGVzdCwKKyAgICAgICAgIyBUaGVzZSBhcmUgc2xvdyB3aGVuIHNldGl0aW1lcigpIGlzIG5vdCBhdmFpbGFibGUKKyAgICAgICAgSW50ZXJydXB0ZWRSZWN2VGltZW91dFRlc3QsCisgICAgICAgIEludGVycnVwdGVkU2VuZFRpbWVvdXRUZXN0LAorICAgIF0pCiAKICAgICB0aHJlYWRfaW5mbyA9IHN1cHBvcnQudGhyZWFkaW5nX3NldHVwKCkKICAgICBzdXBwb3J0LnJ1bl91bml0dGVzdCgqdGVzdHMpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3NzbC5weSBiL0xpYi90ZXN0L3Rlc3Rfc3NsLnB5CmluZGV4IDFiMDhmMmUuLmM2Y2UwNzUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3NsLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3NsLnB5CkBAIC00Miw2ICs0Miw5IEBACiBPTkxZS0VZID0gZGF0YV9maWxlKCJzc2xfa2V5LnBlbSIpCiBCWVRFU19PTkxZQ0VSVCA9IG9zLmZzZW5jb2RlKE9OTFlDRVJUKQogQllURVNfT05MWUtFWSA9IG9zLmZzZW5jb2RlKE9OTFlLRVkpCitDRVJURklMRV9QUk9URUNURUQgPSBkYXRhX2ZpbGUoImtleWNlcnQucGFzc3dkLnBlbSIpCitPTkxZS0VZX1BST1RFQ1RFRCA9IGRhdGFfZmlsZSgic3NsX2tleS5wYXNzd2QucGVtIikKK0tFWV9QQVNTV09SRCA9ICJzb21lcGFzcyIKIENBUEFUSCA9IGRhdGFfZmlsZSgiY2FwYXRoIikKIEJZVEVTX0NBUEFUSCA9IG9zLmZzZW5jb2RlKENBUEFUSCkKIApAQCAtNTMsNiArNTYsOCBAQAogQkFES0VZID0gZGF0YV9maWxlKCJiYWRrZXkucGVtIikKIE5PS0lBQ0VSVCA9IGRhdGFfZmlsZSgibm9raWEucGVtIikKIAorREhGSUxFID0gZGF0YV9maWxlKCJkaDUxMi5wZW0iKQorQllURVNfREhGSUxFID0gb3MuZnNlbmNvZGUoREhGSUxFKQogCiBkZWYgaGFuZGxlX2Vycm9yKHByZWZpeCk6CiAgICAgZXhjX2Zvcm1hdCA9ICcgJy5qb2luKHRyYWNlYmFjay5mb3JtYXRfZXhjZXB0aW9uKCpzeXMuZXhjX2luZm8oKSkpCkBAIC05NSw3ICsxMDAsMTQgQEAKICAgICAgICAgc3NsLkNFUlRfTk9ORQogICAgICAgICBzc2wuQ0VSVF9PUFRJT05BTAogICAgICAgICBzc2wuQ0VSVF9SRVFVSVJFRAorICAgICAgICBzc2wuT1BfQ0lQSEVSX1NFUlZFUl9QUkVGRVJFTkNFCisgICAgICAgIHNzbC5PUF9TSU5HTEVfREhfVVNFCisgICAgICAgIGlmIHNzbC5IQVNfRUNESDoKKyAgICAgICAgICAgIHNzbC5PUF9TSU5HTEVfRUNESF9VU0UKKyAgICAgICAgaWYgc3NsLk9QRU5TU0xfVkVSU0lPTl9JTkZPID49ICgxLCAwKToKKyAgICAgICAgICAgIHNzbC5PUF9OT19DT01QUkVTU0lPTgogICAgICAgICBzZWxmLmFzc2VydEluKHNzbC5IQVNfU05JLCB7VHJ1ZSwgRmFsc2V9KQorICAgICAgICBzZWxmLmFzc2VydEluKHNzbC5IQVNfRUNESCwge1RydWUsIEZhbHNlfSkKIAogICAgIGRlZiB0ZXN0X3JhbmRvbShzZWxmKToKICAgICAgICAgdiA9IHNzbC5SQU5EX3N0YXR1cygpCkBAIC0xMDMsNiArMTE1LDE2IEBACiAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCJcbiBSQU5EX3N0YXR1cyBpcyAlZCAoJXMpXG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgKHYsICh2IGFuZCAic3VmZmljaWVudCByYW5kb21uZXNzIikgb3IKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImluc3VmZmljaWVudCByYW5kb21uZXNzIikpCisKKyAgICAgICAgZGF0YSwgaXNfY3J5cHRvZ3JhcGhpYyA9IHNzbC5SQU5EX3BzZXVkb19ieXRlcygxNikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oZGF0YSksIDE2KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGlzX2NyeXB0b2dyYXBoaWMsIHYgPT0gMSkKKyAgICAgICAgaWYgdjoKKyAgICAgICAgICAgIGRhdGEgPSBzc2wuUkFORF9ieXRlcygxNikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGRhdGEpLCAxNikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHNzbC5TU0xFcnJvciwgc3NsLlJBTkRfYnl0ZXMsIDE2KQorCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHNzbC5SQU5EX2VnZCgxKQogICAgICAgICBleGNlcHQgVHlwZUVycm9yOgpAQCAtMzM3LDYgKzM1OSwyNSBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgY3R4LndyYXBfc29ja2V0LCBzb2NrLCBUcnVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VydmVyX2hvc3RuYW1lPSJzb21lLmhvc3RuYW1lIikKIAorICAgIGRlZiB0ZXN0X3Vua25vd25fY2hhbm5lbF9iaW5kaW5nKHNlbGYpOgorICAgICAgICAjIHNob3VsZCByYWlzZSBWYWx1ZUVycm9yIGZvciB1bmtub3duIHR5cGUKKyAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQpCisgICAgICAgIHNzID0gc3NsLndyYXBfc29ja2V0KHMpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBzcy5nZXRfY2hhbm5lbF9iaW5kaW5nKCJ1bmtub3duLXR5cGUiKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoInRscy11bmlxdWUiIGluIHNzbC5DSEFOTkVMX0JJTkRJTkdfVFlQRVMsCisgICAgICAgICAgICAgICAgICAgICAgICAgIid0bHMtdW5pcXVlJyBjaGFubmVsIGJpbmRpbmcgbm90IGF2YWlsYWJsZSIpCisgICAgZGVmIHRlc3RfdGxzX3VuaXF1ZV9jaGFubmVsX2JpbmRpbmcoc2VsZik6CisgICAgICAgICMgdW5jb25uZWN0ZWQgc2hvdWxkIHJldHVybiBOb25lIGZvciBrbm93biB0eXBlCisgICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVUKQorICAgICAgICBzcyA9IHNzbC53cmFwX3NvY2tldChzKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShzcy5nZXRfY2hhbm5lbF9iaW5kaW5nKCJ0bHMtdW5pcXVlIikpCisgICAgICAgICMgdGhlIHNhbWUgZm9yIHNlcnZlci1zaWRlCisgICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVUKQorICAgICAgICBzcyA9IHNzbC53cmFwX3NvY2tldChzLCBzZXJ2ZXJfc2lkZT1UcnVlLCBjZXJ0ZmlsZT1DRVJURklMRSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoc3MuZ2V0X2NoYW5uZWxfYmluZGluZygidGxzLXVuaXF1ZSIpKQorCiBjbGFzcyBDb250ZXh0VGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgQHNraXBfaWZfYnJva2VuX3VidW50dV9zc2wKQEAgLTQyNyw2ICs0NjgsNjAgQEAKICAgICAgICAgY3R4ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQogICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoc3NsLlNTTEVycm9yLCAia2V5IHZhbHVlcyBtaXNtYXRjaCIpOgogICAgICAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihTVk5fUFlUSE9OX09SR19ST09UX0NFUlQsIE9OTFlLRVkpCisgICAgICAgICMgUGFzc3dvcmQgcHJvdGVjdGVkIGtleSBhbmQgY2VydAorICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwgcGFzc3dvcmQ9S0VZX1BBU1NXT1JEKQorICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwgcGFzc3dvcmQ9S0VZX1BBU1NXT1JELmVuY29kZSgpKQorICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXNzd29yZD1ieXRlYXJyYXkoS0VZX1BBU1NXT1JELmVuY29kZSgpKSkKKyAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihPTkxZQ0VSVCwgT05MWUtFWV9QUk9URUNURUQsIEtFWV9QQVNTV09SRCkKKyAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihPTkxZQ0VSVCwgT05MWUtFWV9QUk9URUNURUQsIEtFWV9QQVNTV09SRC5lbmNvZGUoKSkKKyAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihPTkxZQ0VSVCwgT05MWUtFWV9QUk9URUNURUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZWFycmF5KEtFWV9QQVNTV09SRC5lbmNvZGUoKSkpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXNSZWdleChUeXBlRXJyb3IsICJzaG91bGQgYmUgYSBzdHJpbmciKToKKyAgICAgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1UcnVlKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNzbC5TU0xFcnJvcik6CisgICAgICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwgcGFzc3dvcmQ9ImJhZHBhc3MiKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoVmFsdWVFcnJvciwgImNhbm5vdCBiZSBsb25nZXIiKToKKyAgICAgICAgICAgICMgb3BlbnNzbCBoYXMgYSBmaXhlZCBsaW1pdCBvbiB0aGUgcGFzc3dvcmQgYnVmZmVyLgorICAgICAgICAgICAgIyBQRU1fQlVGU0laRSBpcyBnZW5lcmFsbHkgc2V0IHRvIDFrYi4KKyAgICAgICAgICAgICMgUmV0dXJuIGEgc3RyaW5nIGxhcmdlciB0aGFuIHRoaXMuCisgICAgICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwgcGFzc3dvcmQ9YidhJyAqIDEwMjQwMCkKKyAgICAgICAgIyBQYXNzd29yZCBjYWxsYmFjaworICAgICAgICBkZWYgZ2V0cGFzc191bmljb2RlKCk6CisgICAgICAgICAgICByZXR1cm4gS0VZX1BBU1NXT1JECisgICAgICAgIGRlZiBnZXRwYXNzX2J5dGVzKCk6CisgICAgICAgICAgICByZXR1cm4gS0VZX1BBU1NXT1JELmVuY29kZSgpCisgICAgICAgIGRlZiBnZXRwYXNzX2J5dGVhcnJheSgpOgorICAgICAgICAgICAgcmV0dXJuIGJ5dGVhcnJheShLRVlfUEFTU1dPUkQuZW5jb2RlKCkpCisgICAgICAgIGRlZiBnZXRwYXNzX2JhZHBhc3MoKToKKyAgICAgICAgICAgIHJldHVybiAiYmFkcGFzcyIKKyAgICAgICAgZGVmIGdldHBhc3NfaHVnZSgpOgorICAgICAgICAgICAgcmV0dXJuIGInYScgKiAoMTAyNCAqIDEwMjQpCisgICAgICAgIGRlZiBnZXRwYXNzX2JhZF90eXBlKCk6CisgICAgICAgICAgICByZXR1cm4gOQorICAgICAgICBkZWYgZ2V0cGFzc19leGNlcHRpb24oKToKKyAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbignZ2V0cGFzcyBlcnJvcicpCisgICAgICAgIGNsYXNzIEdldFBhc3NDYWxsYWJsZToKKyAgICAgICAgICAgIGRlZiBfX2NhbGxfXyhzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gS0VZX1BBU1NXT1JECisgICAgICAgICAgICBkZWYgZ2V0cGFzcyhzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gS0VZX1BBU1NXT1JECisgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1nZXRwYXNzX3VuaWNvZGUpCisgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1nZXRwYXNzX2J5dGVzKQorICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwgcGFzc3dvcmQ9Z2V0cGFzc19ieXRlYXJyYXkpCisgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1HZXRQYXNzQ2FsbGFibGUoKSkKKyAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihDRVJURklMRV9QUk9URUNURUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFzc3dvcmQ9R2V0UGFzc0NhbGxhYmxlKCkuZ2V0cGFzcykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhzc2wuU1NMRXJyb3IpOgorICAgICAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihDRVJURklMRV9QUk9URUNURUQsIHBhc3N3b3JkPWdldHBhc3NfYmFkcGFzcykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KFZhbHVlRXJyb3IsICJjYW5ub3QgYmUgbG9uZ2VyIik6CisgICAgICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwgcGFzc3dvcmQ9Z2V0cGFzc19odWdlKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoVHlwZUVycm9yLCAibXVzdCByZXR1cm4gYSBzdHJpbmciKToKKyAgICAgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1nZXRwYXNzX2JhZF90eXBlKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoRXhjZXB0aW9uLCAiZ2V0cGFzcyBlcnJvciIpOgorICAgICAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihDRVJURklMRV9QUk9URUNURUQsIHBhc3N3b3JkPWdldHBhc3NfZXhjZXB0aW9uKQorICAgICAgICAjIE1ha2Ugc3VyZSB0aGUgcGFzc3dvcmQgZnVuY3Rpb24gaXNuJ3QgY2FsbGVkIGlmIGl0IGlzbid0IG5lZWRlZAorICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFLCBwYXNzd29yZD1nZXRwYXNzX2V4Y2VwdGlvbikKIAogICAgIGRlZiB0ZXN0X2xvYWRfdmVyaWZ5X2xvY2F0aW9ucyhzZWxmKToKICAgICAgICAgY3R4ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQpAQCAtNDQ3LDYgKzU0MiwxOSBAQAogICAgICAgICAjIElzc3VlICMxMDk4OTogY3Jhc2ggaWYgdGhlIHNlY29uZCBhcmd1bWVudCB0eXBlIGlzIGludmFsaWQKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjdHgubG9hZF92ZXJpZnlfbG9jYXRpb25zLCBOb25lLCBUcnVlKQogCisgICAgZGVmIHRlc3RfbG9hZF9kaF9wYXJhbXMoc2VsZik6CisgICAgICAgIGN0eCA9IHNzbC5TU0xDb250ZXh0KHNzbC5QUk9UT0NPTF9UTFN2MSkKKyAgICAgICAgY3R4LmxvYWRfZGhfcGFyYW1zKERIRklMRSkKKyAgICAgICAgaWYgb3MubmFtZSAhPSAnbnQnOgorICAgICAgICAgICAgY3R4LmxvYWRfZGhfcGFyYW1zKEJZVEVTX0RIRklMRSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjdHgubG9hZF9kaF9wYXJhbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgY3R4LmxvYWRfZGhfcGFyYW1zLCBOb25lKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEZpbGVOb3RGb3VuZEVycm9yKSBhcyBjbToKKyAgICAgICAgICAgIGN0eC5sb2FkX2RoX3BhcmFtcyhXUk9OR0NFUlQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FTk9FTlQpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXNSZWdleChzc2wuU1NMRXJyb3IsICJQRU0gcm91dGluZXMiKToKKyAgICAgICAgICAgIGN0eC5sb2FkX2RoX3BhcmFtcyhDRVJURklMRSkKKwogICAgIEBza2lwX2lmX2Jyb2tlbl91YnVudHVfc3NsCiAgICAgZGVmIHRlc3Rfc2Vzc2lvbl9zdGF0cyhzZWxmKToKICAgICAgICAgZm9yIHByb3RvIGluIFBST1RPQ09MUzoKQEAgLTQ3MSw2ICs1NzksMTYgQEAKICAgICAgICAgY3R4ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQogICAgICAgICBjdHguc2V0X2RlZmF1bHRfdmVyaWZ5X3BhdGhzKCkKIAorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHNzbC5IQVNfRUNESCwgIkVDREggZGlzYWJsZWQgb24gdGhpcyBPcGVuU1NMIGJ1aWxkIikKKyAgICBkZWYgdGVzdF9zZXRfZWNkaF9jdXJ2ZShzZWxmKToKKyAgICAgICAgY3R4ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQorICAgICAgICBjdHguc2V0X2VjZGhfY3VydmUoInByaW1lMjU2djEiKQorICAgICAgICBjdHguc2V0X2VjZGhfY3VydmUoYiJwcmltZTI1NnYxIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjdHguc2V0X2VjZGhfY3VydmUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgY3R4LnNldF9lY2RoX2N1cnZlLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjdHguc2V0X2VjZGhfY3VydmUsICJmb28iKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjdHguc2V0X2VjZGhfY3VydmUsIGIiZm9vIikKKwogCiBjbGFzcyBOZXR3b3JrZWRUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKQEAgLTUzMywxMyArNjUxLDEwIEBACiAgICAgICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgICAgIHMuZG9faGFuZHNoYWtlKCkKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBzc2wuU1NMRXJyb3IgYXMgZXJyOgotICAgICAgICAgICAgICAgICAgICAgICAgaWYgZXJyLmFyZ3NbMF0gPT0gc3NsLlNTTF9FUlJPUl9XQU5UX1JFQUQ6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnNlbGVjdChbc10sIFtdLCBbXSwgNS4wKQotICAgICAgICAgICAgICAgICAgICAgICAgZWxpZiBlcnIuYXJnc1swXSA9PSBzc2wuU1NMX0VSUk9SX1dBTlRfV1JJVEU6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnNlbGVjdChbXSwgW3NdLCBbXSwgNS4wKQotICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgICAgICAgICBleGNlcHQgc3NsLlNTTFdhbnRSZWFkRXJyb3I6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtzXSwgW10sIFtdLCA1LjApCisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBzc2wuU1NMV2FudFdyaXRlRXJyb3I6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtdLCBbc10sIFtdLCA1LjApCiAgICAgICAgICAgICAgICAgIyBTU0wgZXN0YWJsaXNoZWQKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUocy5nZXRwZWVyY2VydCgpKQogICAgICAgICAgICAgZmluYWxseToKQEAgLTY1OSwzNyArNzc0LDM5IEBACiAgICAgICAgICAgICAgICAgICAgIGNvdW50ICs9IDEKICAgICAgICAgICAgICAgICAgICAgcy5kb19oYW5kc2hha2UoKQogICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgIGV4Y2VwdCBzc2wuU1NMRXJyb3IgYXMgZXJyOgotICAgICAgICAgICAgICAgICAgICBpZiBlcnIuYXJnc1swXSA9PSBzc2wuU1NMX0VSUk9SX1dBTlRfUkVBRDoKLSAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC5zZWxlY3QoW3NdLCBbXSwgW10pCi0gICAgICAgICAgICAgICAgICAgIGVsaWYgZXJyLmFyZ3NbMF0gPT0gc3NsLlNTTF9FUlJPUl9XQU5UX1dSSVRFOgotICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnNlbGVjdChbXSwgW3NdLCBbXSkKLSAgICAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICAgICAgZXhjZXB0IHNzbC5TU0xXYW50UmVhZEVycm9yOgorICAgICAgICAgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtzXSwgW10sIFtdKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBzc2wuU1NMV2FudFdyaXRlRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHNlbGVjdC5zZWxlY3QoW10sIFtzXSwgW10pCiAgICAgICAgICAgICBzLmNsb3NlKCkKICAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCJcbk5lZWRlZCAlZCBjYWxscyB0byBkb19oYW5kc2hha2UoKSB0byBlc3RhYmxpc2ggc2Vzc2lvbi5cbiIgJSBjb3VudCkKIAogICAgIGRlZiB0ZXN0X2dldF9zZXJ2ZXJfY2VydGlmaWNhdGUoc2VsZik6Ci0gICAgICAgIHdpdGggc3VwcG9ydC50cmFuc2llbnRfaW50ZXJuZXQoInN2bi5weXRob24ub3JnIik6Ci0gICAgICAgICAgICBwZW0gPSBzc2wuZ2V0X3NlcnZlcl9jZXJ0aWZpY2F0ZSgoInN2bi5weXRob24ub3JnIiwgNDQzKSkKLSAgICAgICAgICAgIGlmIG5vdCBwZW06Ci0gICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJObyBzZXJ2ZXIgY2VydGlmaWNhdGUgb24gc3ZuLnB5dGhvbi5vcmc6NDQzISIpCisgICAgICAgIGRlZiBfdGVzdF9nZXRfc2VydmVyX2NlcnRpZmljYXRlKGhvc3QsIHBvcnQsIGNlcnQ9Tm9uZSk6CisgICAgICAgICAgICB3aXRoIHN1cHBvcnQudHJhbnNpZW50X2ludGVybmV0KGhvc3QpOgorICAgICAgICAgICAgICAgIHBlbSA9IHNzbC5nZXRfc2VydmVyX2NlcnRpZmljYXRlKChob3N0LCBwb3J0KSkKKyAgICAgICAgICAgICAgICBpZiBub3QgcGVtOgorICAgICAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIk5vIHNlcnZlciBjZXJ0aWZpY2F0ZSBvbiAlczolcyEiICUgKGhvc3QsIHBvcnQpKQogCi0gICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgcGVtID0gc3NsLmdldF9zZXJ2ZXJfY2VydGlmaWNhdGUoKCJzdm4ucHl0aG9uLm9yZyIsIDQ0MyksIGNhX2NlcnRzPUNFUlRGSUxFKQotICAgICAgICAgICAgZXhjZXB0IHNzbC5TU0xFcnJvciBhcyB4OgotICAgICAgICAgICAgICAgICNzaG91bGQgZmFpbAorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgcGVtID0gc3NsLmdldF9zZXJ2ZXJfY2VydGlmaWNhdGUoKGhvc3QsIHBvcnQpLCBjYV9jZXJ0cz1DRVJURklMRSkKKyAgICAgICAgICAgICAgICBleGNlcHQgc3NsLlNTTEVycm9yIGFzIHg6CisgICAgICAgICAgICAgICAgICAgICNzaG91bGQgZmFpbAorICAgICAgICAgICAgICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6CisgICAgICAgICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCIlc1xuIiAlIHgpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJHb3Qgc2VydmVyIGNlcnRpZmljYXRlICVzIGZvciAlczolcyEiICUgKHBlbSwgaG9zdCwgcG9ydCkpCisKKyAgICAgICAgICAgICAgICBwZW0gPSBzc2wuZ2V0X3NlcnZlcl9jZXJ0aWZpY2F0ZSgoaG9zdCwgcG9ydCksIGNhX2NlcnRzPWNlcnQpCisgICAgICAgICAgICAgICAgaWYgbm90IHBlbToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJObyBzZXJ2ZXIgY2VydGlmaWNhdGUgb24gJXM6JXMhIiAlIChob3N0LCBwb3J0KSkKICAgICAgICAgICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6Ci0gICAgICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIiVzXG4iICUgeCkKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJHb3Qgc2VydmVyIGNlcnRpZmljYXRlICVzIGZvciBzdm4ucHl0aG9uLm9yZyEiICUgcGVtKQorICAgICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCJcblZlcmlmaWVkIGNlcnRpZmljYXRlIGZvciAlczolcyBpc1xuJXNcbiIgJSAoaG9zdCwgcG9ydCAscGVtKSkKIAotICAgICAgICAgICAgcGVtID0gc3NsLmdldF9zZXJ2ZXJfY2VydGlmaWNhdGUoKCJzdm4ucHl0aG9uLm9yZyIsIDQ0MyksIGNhX2NlcnRzPVNWTl9QWVRIT05fT1JHX1JPT1RfQ0VSVCkKLSAgICAgICAgICAgIGlmIG5vdCBwZW06Ci0gICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJObyBzZXJ2ZXIgY2VydGlmaWNhdGUgb24gc3ZuLnB5dGhvbi5vcmc6NDQzISIpCi0gICAgICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6Ci0gICAgICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgiXG5WZXJpZmllZCBjZXJ0aWZpY2F0ZSBmb3Igc3ZuLnB5dGhvbi5vcmc6NDQzIGlzXG4lc1xuIiAlIHBlbSkKKyAgICAgICAgX3Rlc3RfZ2V0X3NlcnZlcl9jZXJ0aWZpY2F0ZSgnc3ZuLnB5dGhvbi5vcmcnLCA0NDMsIFNWTl9QWVRIT05fT1JHX1JPT1RfQ0VSVCkKKyAgICAgICAgaWYgc3VwcG9ydC5JUFY2X0VOQUJMRUQ6CisgICAgICAgICAgICBfdGVzdF9nZXRfc2VydmVyX2NlcnRpZmljYXRlKCdpcHY2Lmdvb2dsZS5jb20nLCA0NDMpCiAKICAgICBkZWYgdGVzdF9jaXBoZXJzKHNlbGYpOgogICAgICAgICByZW1vdGUgPSAoInN2bi5weXRob24ub3JnIiwgNDQzKQpAQCAtODM4LDYgKzk1NSwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc3NsY29ubiA9IE5vbmUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2UgYW5kIHNlbGYuc2VydmVyLmNvbm5lY3Rpb25jaGF0dHk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIiBzZXJ2ZXI6IGNvbm5lY3Rpb24gaXMgbm93IHVuZW5jcnlwdGVkLi4uXG4iKQorICAgICAgICAgICAgICAgICAgICAgICAgZWxpZiBzdHJpcHBlZCA9PSBiJ0NCIHRscy11bmlxdWUnOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZSBhbmQgc2VsZi5zZXJ2ZXIuY29ubmVjdGlvbmNoYXR0eToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgiIHNlcnZlcjogcmVhZCBDQiB0bHMtdW5pcXVlIGZyb20gY2xpZW50LCBzZW5kaW5nIG91ciBDQiBkYXRhLi4uXG4iKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBzZWxmLnNzbGNvbm4uZ2V0X2NoYW5uZWxfYmluZGluZygidGxzLXVuaXF1ZSIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi53cml0ZShyZXByKGRhdGEpLmVuY29kZSgidXMtYXNjaWkiKSArIGIiXG4iKQogICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3VwcG9ydC52ZXJib3NlIGFuZAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnNlcnZlci5jb25uZWN0aW9uY2hhdHR5KToKQEAgLTk0NiwxMiArMTA2OCwxMSBAQAogICAgICAgICAgICAgICAgIGRlZiBfZG9fc3NsX2hhbmRzaGFrZShzZWxmKToKICAgICAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zb2NrZXQuZG9faGFuZHNoYWtlKCkKLSAgICAgICAgICAgICAgICAgICAgZXhjZXB0IHNzbC5TU0xFcnJvciBhcyBlcnI6Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiBlcnIuYXJnc1swXSBpbiAoc3NsLlNTTF9FUlJPUl9XQU5UX1JFQUQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NsLlNTTF9FUlJPUl9XQU5UX1dSSVRFKToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4KLSAgICAgICAgICAgICAgICAgICAgICAgIGVsaWYgZXJyLmFyZ3NbMF0gPT0gc3NsLlNTTF9FUlJPUl9FT0Y6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuaGFuZGxlX2Nsb3NlKCkKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IChzc2wuU1NMV2FudFJlYWRFcnJvciwgc3NsLlNTTFdhbnRXcml0ZUVycm9yKToKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgICAgICAgICBleGNlcHQgc3NsLlNTTEVPRkVycm9yOgorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuaGFuZGxlX2Nsb3NlKCkKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IHNzbC5TU0xFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3IgYXMgZXJyOgogICAgICAgICAgICAgICAgICAgICAgICAgaWYgZXJyLmFyZ3NbMF0gPT0gZXJybm8uRUNPTk5BQk9SVEVEOgpAQCAtMTA5OSw3ICsxMjIwLDEyIEBACiAgICAgICAgICAgICAgICAgaWYgY29ubmVjdGlvbmNoYXR0eToKICAgICAgICAgICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgogICAgICAgICAgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgiIGNsaWVudDogIGNsb3NpbmcgY29ubmVjdGlvbi5cbiIpCisgICAgICAgICAgICAgICAgc3RhdHMgPSB7CisgICAgICAgICAgICAgICAgICAgICdjb21wcmVzc2lvbic6IHMuY29tcHJlc3Npb24oKSwKKyAgICAgICAgICAgICAgICAgICAgJ2NpcGhlcic6IHMuY2lwaGVyKCksCisgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIHMuY2xvc2UoKQorICAgICAgICAgICAgICAgIHJldHVybiBzdGF0cwogCiAgICAgZGVmIHRyeV9wcm90b2NvbF9jb21ibyhzZXJ2ZXJfcHJvdG9jb2wsIGNsaWVudF9wcm90b2NvbCwgZXhwZWN0X3N1Y2Nlc3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0c3JlcXM9Tm9uZSwgc2VydmVyX29wdGlvbnM9MCwgY2xpZW50X29wdGlvbnM9MCk6CkBAIC0xMjUxLDcgKzEzNzcsOCBAQAogICAgICAgICAgICAgICAgIHQuam9pbigpCiAKICAgICAgICAgQHNraXBfaWZfYnJva2VuX3VidW50dV9zc2wKLSAgICAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzc2wsICdQUk9UT0NPTF9TU0x2MicpLCAibmVlZCBTU0x2MiIpCisgICAgICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc3NsLCAnUFJPVE9DT0xfU1NMdjInKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk9wZW5TU0wgaXMgY29tcGlsZWQgd2l0aG91dCBTU0x2MiBzdXBwb3J0IikKICAgICAgICAgZGVmIHRlc3RfcHJvdG9jb2xfc3NsdjIoc2VsZik6CiAgICAgICAgICAgICAiIiJDb25uZWN0aW5nIHRvIGFuIFNTTHYyIHNlcnZlciB3aXRoIHZhcmlvdXMgY2xpZW50IG9wdGlvbnMiIiIKICAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKQEAgLTE1NTcsNiArMTY4NCwxNSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICMgY29uc3VtZSBkYXRhCiAgICAgICAgICAgICAgICAgICAgICAgICBzLnJlYWQoKQorCisgICAgICAgICAgICAgICAgIyBNYWtlIHN1cmUgc2VuZG1zZyBldCBhbCBhcmUgZGlzYWxsb3dlZCB0byBhdm9pZAorICAgICAgICAgICAgICAgICMgaW5hZHZlcnRlbnQgZGlzY2xvc3VyZSBvZiBkYXRhIGFuZC9vciBjb3JydXB0aW9uCisgICAgICAgICAgICAgICAgIyBvZiB0aGUgZW5jcnlwdGVkIGRhdGEgc3RyZWFtCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTm90SW1wbGVtZW50ZWRFcnJvciwgcy5zZW5kbXNnLCBbYiJkYXRhIl0pCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTm90SW1wbGVtZW50ZWRFcnJvciwgcy5yZWN2bXNnLCAxMDApCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTm90SW1wbGVtZW50ZWRFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLnJlY3Ztc2dfaW50bywgYnl0ZWFycmF5KDEwMCkpCisKICAgICAgICAgICAgICAgICBzLndyaXRlKGIib3ZlclxuIikKICAgICAgICAgICAgICAgICBzLmNsb3NlKCkKIApAQCAtMTYyNSw2ICsxNzYxLDk4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBzLmNvbm5lY3QoKEhPU1QsIHNlcnZlci5wb3J0KSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oIm5vIHNoYXJlZCBjaXBoZXIiLCBzdHIoc2VydmVyLmNvbm5fZXJyb3JzWzBdKSkKIAorICAgICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcygidGxzLXVuaXF1ZSIgaW4gc3NsLkNIQU5ORUxfQklORElOR19UWVBFUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIid0bHMtdW5pcXVlJyBjaGFubmVsIGJpbmRpbmcgbm90IGF2YWlsYWJsZSIpCisgICAgICAgIGRlZiB0ZXN0X3Rsc191bmlxdWVfY2hhbm5lbF9iaW5kaW5nKHNlbGYpOgorICAgICAgICAgICAgIiIiVGVzdCB0bHMtdW5pcXVlIGNoYW5uZWwgYmluZGluZy4iIiIKKyAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKKyAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCJcbiIpCisKKyAgICAgICAgICAgIHNlcnZlciA9IFRocmVhZGVkRWNob1NlcnZlcihDRVJURklMRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0cmVxcz1zc2wuQ0VSVF9OT05FLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNzbF92ZXJzaW9uPXNzbC5QUk9UT0NPTF9UTFN2MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWNlcnRzPUNFUlRGSUxFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXR0eT1UcnVlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbm5lY3Rpb25jaGF0dHk9RmFsc2UpCisgICAgICAgICAgICB3aXRoIHNlcnZlcjoKKyAgICAgICAgICAgICAgICBzID0gc3NsLndyYXBfc29ja2V0KHNvY2tldC5zb2NrZXQoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlcnZlcl9zaWRlPUZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VydGZpbGU9Q0VSVEZJTEUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYV9jZXJ0cz1DRVJURklMRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlcnRfcmVxcz1zc2wuQ0VSVF9OT05FLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NsX3ZlcnNpb249c3NsLlBST1RPQ09MX1RMU3YxKQorICAgICAgICAgICAgICAgIHMuY29ubmVjdCgoSE9TVCwgc2VydmVyLnBvcnQpKQorICAgICAgICAgICAgICAgICMgZ2V0IHRoZSBkYXRhCisgICAgICAgICAgICAgICAgY2JfZGF0YSA9IHMuZ2V0X2NoYW5uZWxfYmluZGluZygidGxzLXVuaXF1ZSIpCisgICAgICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgorICAgICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCIgZ290IGNoYW5uZWwgYmluZGluZyBkYXRhOiB7MCFyfVxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtYXQoY2JfZGF0YSkpCisKKyAgICAgICAgICAgICAgICAjIGNoZWNrIGlmIGl0IGlzIHNhbmUKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShjYl9kYXRhKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGNiX2RhdGEpLCAxMikgIyBUcnVlIGZvciBUTFN2MQorCisgICAgICAgICAgICAgICAgIyBhbmQgY29tcGFyZSB3aXRoIHRoZSBwZWVycyB2ZXJzaW9uCisgICAgICAgICAgICAgICAgcy53cml0ZShiIkNCIHRscy11bmlxdWVcbiIpCisgICAgICAgICAgICAgICAgcGVlcl9kYXRhX3JlcHIgPSBzLnJlYWQoKS5zdHJpcCgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwZWVyX2RhdGFfcmVwciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHIoY2JfZGF0YSkuZW5jb2RlKCJ1cy1hc2NpaSIpKQorICAgICAgICAgICAgICAgIHMuY2xvc2UoKQorCisgICAgICAgICAgICAgICAgIyBub3csIGFnYWluCisgICAgICAgICAgICAgICAgcyA9IHNzbC53cmFwX3NvY2tldChzb2NrZXQuc29ja2V0KCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXJ2ZXJfc2lkZT1GYWxzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlcnRmaWxlPUNFUlRGSUxFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FfY2VydHM9Q0VSVEZJTEUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0X3JlcXM9c3NsLkNFUlRfTk9ORSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNzbF92ZXJzaW9uPXNzbC5QUk9UT0NPTF9UTFN2MSkKKyAgICAgICAgICAgICAgICBzLmNvbm5lY3QoKEhPU1QsIHNlcnZlci5wb3J0KSkKKyAgICAgICAgICAgICAgICBuZXdfY2JfZGF0YSA9IHMuZ2V0X2NoYW5uZWxfYmluZGluZygidGxzLXVuaXF1ZSIpCisgICAgICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgorICAgICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCIgZ290IGFub3RoZXIgY2hhbm5lbCBiaW5kaW5nIGRhdGE6IHswIXJ9XG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm1hdChuZXdfY2JfZGF0YSkpCisgICAgICAgICAgICAgICAgIyBpcyBpdCByZWFsbHkgdW5pcXVlCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChjYl9kYXRhLCBuZXdfY2JfZGF0YSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShjYl9kYXRhKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGNiX2RhdGEpLCAxMikgIyBUcnVlIGZvciBUTFN2MQorICAgICAgICAgICAgICAgIHMud3JpdGUoYiJDQiB0bHMtdW5pcXVlXG4iKQorICAgICAgICAgICAgICAgIHBlZXJfZGF0YV9yZXByID0gcy5yZWFkKCkuc3RyaXAoKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocGVlcl9kYXRhX3JlcHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXByKG5ld19jYl9kYXRhKS5lbmNvZGUoInVzLWFzY2lpIikpCisgICAgICAgICAgICAgICAgcy5jbG9zZSgpCisKKyAgICAgICAgZGVmIHRlc3RfY29tcHJlc3Npb24oc2VsZik6CisgICAgICAgICAgICBjb250ZXh0ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQorICAgICAgICAgICAgY29udGV4dC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEUpCisgICAgICAgICAgICBzdGF0cyA9IHNlcnZlcl9wYXJhbXNfdGVzdChjb250ZXh0LCBjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhdHR5PVRydWUsIGNvbm5lY3Rpb25jaGF0dHk9VHJ1ZSkKKyAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKKyAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCIgZ290IGNvbXByZXNzaW9uOiB7IXJ9XG4iLmZvcm1hdChzdGF0c1snY29tcHJlc3Npb24nXSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEluKHN0YXRzWydjb21wcmVzc2lvbiddLCB7IE5vbmUsICdaTElCJywgJ1JMRScgfSkKKworICAgICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNzbCwgJ09QX05PX0NPTVBSRVNTSU9OJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzc2wuT1BfTk9fQ09NUFJFU1NJT04gbmVlZGVkIGZvciB0aGlzIHRlc3QiKQorICAgICAgICBkZWYgdGVzdF9jb21wcmVzc2lvbl9kaXNhYmxlZChzZWxmKToKKyAgICAgICAgICAgIGNvbnRleHQgPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfVExTdjEpCisgICAgICAgICAgICBjb250ZXh0LmxvYWRfY2VydF9jaGFpbihDRVJURklMRSkKKyAgICAgICAgICAgIGNvbnRleHQub3B0aW9ucyB8PSBzc2wuT1BfTk9fQ09NUFJFU1NJT04KKyAgICAgICAgICAgIHN0YXRzID0gc2VydmVyX3BhcmFtc190ZXN0KGNvbnRleHQsIGNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGF0dHk9VHJ1ZSwgY29ubmVjdGlvbmNoYXR0eT1UcnVlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhzdGF0c1snY29tcHJlc3Npb24nXSwgTm9uZSkKKworICAgICAgICBkZWYgdGVzdF9kaF9wYXJhbXMoc2VsZik6CisgICAgICAgICAgICAjIENoZWNrIHdlIGNhbiBnZXQgYSBjb25uZWN0aW9uIHdpdGggZXBoZW1lcmFsIERpZmZpZS1IZWxsbWFuCisgICAgICAgICAgICBjb250ZXh0ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQorICAgICAgICAgICAgY29udGV4dC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEUpCisgICAgICAgICAgICBjb250ZXh0LmxvYWRfZGhfcGFyYW1zKERIRklMRSkKKyAgICAgICAgICAgIGNvbnRleHQuc2V0X2NpcGhlcnMoImtFREgiKQorICAgICAgICAgICAgc3RhdHMgPSBzZXJ2ZXJfcGFyYW1zX3Rlc3QoY29udGV4dCwgY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXR0eT1UcnVlLCBjb25uZWN0aW9uY2hhdHR5PVRydWUpCisgICAgICAgICAgICBjaXBoZXIgPSBzdGF0c1siY2lwaGVyIl1bMF0KKyAgICAgICAgICAgIHBhcnRzID0gY2lwaGVyLnNwbGl0KCItIikKKyAgICAgICAgICAgIGlmICJBREgiIG5vdCBpbiBwYXJ0cyBhbmQgIkVESCIgbm90IGluIHBhcnRzIGFuZCAiREhFIiBub3QgaW4gcGFydHM6CisgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJOb24tREggY2lwaGVyOiAiICsgY2lwaGVyWzBdKQorCiAKIGRlZiB0ZXN0X21haW4odmVyYm9zZT1GYWxzZSk6CiAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zdHJpbmcucHkgYi9MaWIvdGVzdC90ZXN0X3N0cmluZy5weQppbmRleCBhMzUyZWUzLi4xNjE1NzMyIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3N0cmluZy5weQorKysgYi9MaWIvdGVzdC90ZXN0X3N0cmluZy5weQpAQCAtMjYsMTUgKzI2LDM4IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyaW5nLmNhcHdvcmRzKCdcdGFCY1x0RGVGXHQnKSwgJ0FiYyBEZWYnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cmluZy5jYXB3b3JkcygnXHRhQmNcdERlRlx0JywgJ1x0JyksICdcdEFiY1x0RGVmXHQnKQogCi0gICAgZGVmIHRlc3RfZm9ybWF0dGVyKHNlbGYpOgorICAgIGRlZiB0ZXN0X2Jhc2ljX2Zvcm1hdHRlcihzZWxmKToKICAgICAgICAgZm10ID0gc3RyaW5nLkZvcm1hdHRlcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm10LmZvcm1hdCgiZm9vIiksICJmb28iKQotCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm10LmZvcm1hdCgiZm9vezB9IiwgImJhciIpLCAiZm9vYmFyIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCJmb297MX17MH0tezF9IiwgImJhciIsIDYpLCAiZm9vNmJhci02IikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCIte2FyZyFyfS0iLCBhcmc9J3Rlc3QnKSwgIi0ndGVzdCctIikKIAotICAgICAgICAjIG92ZXJyaWRlIGdldF92YWx1ZSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworICAgIGRlZiB0ZXN0X2NvbnZlcnNpb25fc3BlY2lmaWVycyhzZWxmKToKKyAgICAgICAgZm10ID0gc3RyaW5nLkZvcm1hdHRlcigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm10LmZvcm1hdCgiLXthcmchcn0tIiwgYXJnPSd0ZXN0JyksICItJ3Rlc3QnLSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm10LmZvcm1hdCgiezAhc30iLCAndGVzdCcpLCAndGVzdCcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZtdC5mb3JtYXQsICJ7MCFofSIsICd0ZXN0JykKKworICAgIGRlZiB0ZXN0X25hbWVfbG9va3VwKHNlbGYpOgorICAgICAgICBmbXQgPSBzdHJpbmcuRm9ybWF0dGVyKCkKKyAgICAgICAgY2xhc3MgQW55QXR0cjoKKyAgICAgICAgICAgIGRlZiBfX2dldGF0dHJfXyhzZWxmLCBhdHRyKToKKyAgICAgICAgICAgICAgICByZXR1cm4gYXR0cgorICAgICAgICB4ID0gQW55QXR0cigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm10LmZvcm1hdCgiezAubHVtYmVyfXswLmphY2t9IiwgeCksICdsdW1iZXJqYWNrJykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICBmbXQuZm9ybWF0KCJ7MC5sdW1iZXJ9ezAuamFja30iLCAnJykKKworICAgIGRlZiB0ZXN0X2luZGV4X2xvb2t1cChzZWxmKToKKyAgICAgICAgZm10ID0gc3RyaW5nLkZvcm1hdHRlcigpCisgICAgICAgIGxvb2t1cCA9IFsiZWdncyIsICJhbmQiLCAic3BhbSJdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm10LmZvcm1hdCgiezBbMl19ezBbMF19IiwgbG9va3VwKSwgJ3NwYW1lZ2dzJykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yKToKKyAgICAgICAgICAgIGZtdC5mb3JtYXQoInswWzJdfXswWzBdfSIsIFtdKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEtleUVycm9yKToKKyAgICAgICAgICAgIGZtdC5mb3JtYXQoInswWzJdfXswWzBdfSIsIHt9KQorCisgICAgZGVmIHRlc3Rfb3ZlcnJpZGVfZ2V0X3ZhbHVlKHNlbGYpOgogICAgICAgICBjbGFzcyBOYW1lc3BhY2VGb3JtYXR0ZXIoc3RyaW5nLkZvcm1hdHRlcik6CiAgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgbmFtZXNwYWNlPXt9KToKICAgICAgICAgICAgICAgICBzdHJpbmcuRm9ybWF0dGVyLl9faW5pdF9fKHNlbGYpCkBAIC01NCw3ICs3Nyw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm10LmZvcm1hdCgie2dyZWV0aW5nfSwgd29ybGQhIiksICdoZWxsbywgd29ybGQhJykKIAogCi0gICAgICAgICMgb3ZlcnJpZGUgZm9ybWF0X2ZpZWxkICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgICAgZGVmIHRlc3Rfb3ZlcnJpZGVfZm9ybWF0X2ZpZWxkKHNlbGYpOgogICAgICAgICBjbGFzcyBDYWxsRm9ybWF0dGVyKHN0cmluZy5Gb3JtYXR0ZXIpOgogICAgICAgICAgICAgZGVmIGZvcm1hdF9maWVsZChzZWxmLCB2YWx1ZSwgZm9ybWF0X3NwZWMpOgogICAgICAgICAgICAgICAgIHJldHVybiBmb3JtYXQodmFsdWUoKSwgZm9ybWF0X3NwZWMpCkBAIC02MywxOCArODYsMTggQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCcqezB9KicsIGxhbWJkYSA6ICdyZXN1bHQnKSwgJypyZXN1bHQqJykKIAogCi0gICAgICAgICMgb3ZlcnJpZGUgY29udmVydF9maWVsZCAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgICAgZGVmIHRlc3Rfb3ZlcnJpZGVfY29udmVydF9maWVsZChzZWxmKToKICAgICAgICAgY2xhc3MgWEZvcm1hdHRlcihzdHJpbmcuRm9ybWF0dGVyKToKICAgICAgICAgICAgIGRlZiBjb252ZXJ0X2ZpZWxkKHNlbGYsIHZhbHVlLCBjb252ZXJzaW9uKToKICAgICAgICAgICAgICAgICBpZiBjb252ZXJzaW9uID09ICd4JzoKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKLSAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIoWEZvcm1hdHRlciwgc2VsZikuY29udmVydF9maWVsZCh2YWx1ZSwgY29udmVyc2lvbikKKyAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIoKS5jb252ZXJ0X2ZpZWxkKHZhbHVlLCBjb252ZXJzaW9uKQogCiAgICAgICAgIGZtdCA9IFhGb3JtYXR0ZXIoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZtdC5mb3JtYXQoInswIXJ9OnswIXh9IiwgJ2ZvbycsICdmb28nKSwgIidmb28nOk5vbmUiKQogCiAKLSAgICAgICAgIyBvdmVycmlkZSBwYXJzZSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICBkZWYgdGVzdF9vdmVycmlkZV9wYXJzZShzZWxmKToKICAgICAgICAgY2xhc3MgQmFyRm9ybWF0dGVyKHN0cmluZy5Gb3JtYXR0ZXIpOgogICAgICAgICAgICAgIyByZXR1cm5zIGFuIGl0ZXJhYmxlIHRoYXQgY29udGFpbnMgdHVwbGVzIG9mIHRoZSBmb3JtOgogICAgICAgICAgICAgIyAobGl0ZXJhbF90ZXh0LCBmaWVsZF9uYW1lLCBmb3JtYXRfc3BlYywgY29udmVyc2lvbikKQEAgLTkwLDcgKzExMyw3IEBACiAgICAgICAgIGZtdCA9IEJhckZvcm1hdHRlcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm10LmZvcm1hdCgnKnwrMDpeMTBzfConLCAnZm9vJyksICcqICAgZm9vICAgIConKQogCi0gICAgICAgICMgdGVzdCBhbGwgcGFyYW1ldGVycyB1c2VkCisgICAgZGVmIHRlc3RfY2hlY2tfdW51c2VkX2FyZ3Moc2VsZik6CiAgICAgICAgIGNsYXNzIENoZWNrQWxsVXNlZEZvcm1hdHRlcihzdHJpbmcuRm9ybWF0dGVyKToKICAgICAgICAgICAgIGRlZiBjaGVja191bnVzZWRfYXJncyhzZWxmLCB1c2VkX2FyZ3MsIGFyZ3MsIGt3YXJncyk6CiAgICAgICAgICAgICAgICAgIyBUcmFjayB3aGljaCBhcmd1bWVudHMgYWN0dWFsbHkgZ290IHVzZWQKQEAgLTExMiwyOCArMTM1LDEzIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZtdC5mb3JtYXQsICJ7MH0iLCAxMCwgMjAsIGk9MTAwKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmbXQuZm9ybWF0LCAie2l9IiwgMTAsIDIwLCBpPTEwMCkKIAotICAgIGRlZiB0ZXN0X3Zmb3JtYXRfYXNzZXJ0KHNlbGYpOgotICAgICAgICBjbHMgPSBzdHJpbmcuRm9ybWF0dGVyKCkKLSAgICAgICAga3dhcmdzID0gewotICAgICAgICAgICAgImkiOiAxMDAKLSAgICAgICAgfQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjbHMuX3Zmb3JtYXQsCi0gICAgICAgICAgICAgICAgY2xzLmZvcm1hdCwgInswfSIsIGt3YXJncywgc2V0KCksIC0yKQotCi0gICAgZGVmIHRlc3RfY29udmVydF9maWVsZChzZWxmKToKLSAgICAgICAgY2xzID0gc3RyaW5nLkZvcm1hdHRlcigpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2xzLmZvcm1hdCgiezAhc30iLCAnZm9vJyksICdmb28nKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjbHMuZm9ybWF0LCAiezAhaH0iLCAnZm9vJykKLQotICAgIGRlZiB0ZXN0X2dldF9maWVsZChzZWxmKToKLSAgICAgICAgY2xzID0gc3RyaW5nLkZvcm1hdHRlcigpCi0gICAgICAgIGNsYXNzIE15Q2xhc3M6Ci0gICAgICAgICAgICBuYW1lID0gJ2x1bWJlcmphY2snCi0gICAgICAgIHggPSBNeUNsYXNzKCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbHMuZm9ybWF0KCJ7MC5uYW1lfSIsIHgpLCAnbHVtYmVyamFjaycpCi0KLSAgICAgICAgbG9va3VwID0gWyJlZ2dzIiwgImFuZCIsICJzcGFtIl0KLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbHMuZm9ybWF0KCJ7MFsyXX0iLCBsb29rdXApLCAnc3BhbScpCisgICAgZGVmIHRlc3RfdmZvcm1hdF9yZWN1cnNpb25fbGltaXQoc2VsZik6CisgICAgICAgIGZtdCA9IHN0cmluZy5Gb3JtYXR0ZXIoKQorICAgICAgICBhcmdzID0gKCkKKyAgICAgICAga3dhcmdzID0gZGljdChpPTEwMCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKSBhcyBlcnI6CisgICAgICAgICAgICBmbXQuX3Zmb3JtYXQoIntpfSIsIGFyZ3MsIGt3YXJncywgc2V0KCksIC0xKQorICAgICAgICBzZWxmLmFzc2VydEluKCJyZWN1cnNpb24iLCBzdHIoZXJyLmV4Y2VwdGlvbikpCiAKIAogZGVmIHRlc3RfbWFpbigpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zdHJsaXQucHkgYi9MaWIvdGVzdC90ZXN0X3N0cmxpdC5weQppbmRleCA2YmRjNmU0Li4xZjA0MWM4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3N0cmxpdC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3N0cmxpdC5weQpAQCAtMiwxMCArMiwxMCBAQAogCiBUaGVyZSBhcmUgZm91ciB0eXBlcyBvZiBzdHJpbmcgbGl0ZXJhbHM6CiAKLSAgICAnYWJjJyAgIC0tIG5vcm1hbCBzdHIKLSAgICByJ2FiYycgIC0tIHJhdyBzdHIKLSAgICBiJ3h5eicgIC0tIG5vcm1hbCBieXRlcwotICAgIGJyJ3h5eicgLS0gcmF3IGJ5dGVzCisgICAgJ2FiYycgICAgICAgICAgICAgLS0gbm9ybWFsIHN0cgorICAgIHInYWJjJyAgICAgICAgICAgIC0tIHJhdyBzdHIKKyAgICBiJ3h5eicgICAgICAgICAgICAtLSBub3JtYWwgYnl0ZXMKKyAgICBicid4eXonIHwgcmIneHl6JyAtLSByYXcgYnl0ZXMKIAogVGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBub3JtYWwgYW5kIHJhdyBzdHJpbmdzIGlzIG9mIGNvdXJzZSB0aGF0IGluIGEKIHJhdyBzdHJpbmcsIFwgZXNjYXBlcyAod2hpbGUgc3RpbGwgdXNlZCB0byBkZXRlcm1pbmUgdGhlIGVuZCBvZiB0aGUKQEAgLTEwMywxMiArMTAzLDI1IEBACiAKICAgICBkZWYgdGVzdF9ldmFsX2J5dGVzX3JhdyhzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChldmFsKCIiIiBicid4JyAiIiIpLCBiJ3gnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV2YWwoIiIiIHJiJ3gnICIiIiksIGIneCcpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXZhbChyIiIiIGJyJ1x4MDEnICIiIiksIGInXFwnICsgYid4MDEnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV2YWwociIiIiByYidceDAxJyAiIiIpLCBiJ1xcJyArIGIneDAxJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChldmFsKCIiIiBicidceDAxJyAiIiIpLCBieXRlKDEpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV2YWwoIiIiIHJiJ1x4MDEnICIiIiksIGJ5dGUoMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXZhbChyIiIiIGJyJ1x4ODEnICIiIiksIGIiXFwiICsgYiJ4ODEiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV2YWwociIiIiByYidceDgxJyAiIiIpLCBiIlxcIiArIGIieDgxIikKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIiIiBicidceDgxJyAiIiIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFN5bnRheEVycm9yLCBldmFsLCAiIiIgcmInXHg4MScgIiIiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV2YWwociIiIiBicidcdTE4ODEnICIiIiksIGIiXFwiICsgYiJ1MTg4MSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXZhbChyIiIiIHJiJ1x1MTg4MScgIiIiKSwgYiJcXCIgKyBiInUxODgxIikKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIiIiBicidcdTE4ODEnICIiIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIiIiByYidcdTE4ODEnICIiIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIiIiBiYicnICIiIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIiIiBycicnICIiIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIiIiBicnInJyAiIiIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFN5bnRheEVycm9yLCBldmFsLCAiIiIgYmJyJycgIiIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvciwgZXZhbCwgIiIiIHJyYicnICIiIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIiIiByYmInJyAiIiIpCiAKICAgICBkZWYgY2hlY2tfZW5jb2Rpbmcoc2VsZiwgZW5jb2RpbmcsIGV4dHJhPSIiKToKICAgICAgICAgbW9kbmFtZSA9ICJ4eF8iICsgZW5jb2RpbmcucmVwbGFjZSgiLSIsICJfIikKQEAgLTEzMSw3ICsxNDQsNyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvciwgc2VsZi5jaGVja19lbmNvZGluZywgInV0Zi04IiwgZXh0cmEpCiAKICAgICBkZWYgdGVzdF9maWxlX3V0Zjgoc2VsZik6Ci0gICAgICAgIHNlbGYuY2hlY2tfZW5jb2RpbmcoInV0ZjgiKQorICAgICAgICBzZWxmLmNoZWNrX2VuY29kaW5nKCJ1dGYtOCIpCiAKICAgICBkZWYgdGVzdF9maWxlX2lzb184ODU5XzEoc2VsZik6CiAgICAgICAgIHNlbGYuY2hlY2tfZW5jb2RpbmcoImlzby04ODU5LTEiKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zdHJ1Y3QucHkgYi9MaWIvdGVzdC90ZXN0X3N0cnVjdC5weQppbmRleCAyY2NhYWQyLi5kYzc1ODU4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3N0cnVjdC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3N0cnVjdC5weQpAQCAtOCw5ICs4LDE5IEBACiBJU0JJR0VORElBTiA9IHN5cy5ieXRlb3JkZXIgPT0gImJpZyIKIElTMzJCSVQgPSBzeXMubWF4c2l6ZSA9PSAweDdmZmZmZmZmCiAKLWludGVnZXJfY29kZXMgPSAnYicsICdCJywgJ2gnLCAnSCcsICdpJywgJ0knLCAnbCcsICdMJywgJ3EnLCAnUScKK2ludGVnZXJfY29kZXMgPSAnYicsICdCJywgJ2gnLCAnSCcsICdpJywgJ0knLCAnbCcsICdMJywgJ3EnLCAnUScsICduJywgJ04nCiBieXRlb3JkZXJzID0gJycsICdAJywgJz0nLCAnPCcsICc+JywgJyEnCiAKK2RlZiBpdGVyX2ludGVnZXJfZm9ybWF0cyhieXRlb3JkZXJzPWJ5dGVvcmRlcnMpOgorICAgIGZvciBjb2RlIGluIGludGVnZXJfY29kZXM6CisgICAgICAgIGZvciBieXRlb3JkZXIgaW4gYnl0ZW9yZGVyczoKKyAgICAgICAgICAgIGlmIChieXRlb3JkZXIgaW4gKCcnLCAnQCcpIGFuZCBjb2RlIGluICgncScsICdRJykgYW5kCisgICAgICAgICAgICAgICAgbm90IEhBVkVfTE9OR19MT05HKToKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgaWYgKGJ5dGVvcmRlciBub3QgaW4gKCcnLCAnQCcpIGFuZCBjb2RlIGluICgnbicsICdOJykpOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICB5aWVsZCBjb2RlLCBieXRlb3JkZXIKKwogIyBOYXRpdmUgJ3EnIHBhY2tpbmcgaXNuJ3QgYXZhaWxhYmxlIG9uIHN5c3RlbXMgdGhhdCBkb24ndCBoYXZlIHRoZSBDCiAjIGxvbmcgbG9uZyB0eXBlLgogdHJ5OgpAQCAtMTQxLDE0ICsxNTEsMTMgQEAKICAgICAgICAgICAgIH0KIAogICAgICAgICAjIHN0YW5kYXJkIGludGVnZXIgc2l6ZXMKLSAgICAgICAgZm9yIGNvZGUgaW4gaW50ZWdlcl9jb2RlczoKLSAgICAgICAgICAgIGZvciBieXRlb3JkZXIgaW4gJz0nLCAnPCcsICc+JywgJyEnOgotICAgICAgICAgICAgICAgIGZvcm1hdCA9IGJ5dGVvcmRlcitjb2RlCi0gICAgICAgICAgICAgICAgc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShmb3JtYXQpCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaXplLCBleHBlY3RlZF9zaXplW2NvZGVdKQorICAgICAgICBmb3IgY29kZSwgYnl0ZW9yZGVyIGluIGl0ZXJfaW50ZWdlcl9mb3JtYXRzKCgnPScsICc8JywgJz4nLCAnIScpKToKKyAgICAgICAgICAgIGZvcm1hdCA9IGJ5dGVvcmRlcitjb2RlCisgICAgICAgICAgICBzaXplID0gc3RydWN0LmNhbGNzaXplKGZvcm1hdCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2l6ZSwgZXhwZWN0ZWRfc2l6ZVtjb2RlXSkKIAogICAgICAgICAjIG5hdGl2ZSBpbnRlZ2VyIHNpemVzCi0gICAgICAgIG5hdGl2ZV9wYWlycyA9ICdiQicsICdoSCcsICdpSScsICdsTCcKKyAgICAgICAgbmF0aXZlX3BhaXJzID0gJ2JCJywgJ2hIJywgJ2lJJywgJ2xMJywgJ25OJwogICAgICAgICBpZiBIQVZFX0xPTkdfTE9ORzoKICAgICAgICAgICAgIG5hdGl2ZV9wYWlycyArPSAncVEnLAogICAgICAgICBmb3IgZm9ybWF0X3BhaXIgaW4gbmF0aXZlX3BhaXJzOgpAQCAtMTY2LDkgKzE3NSwxMSBAQAogICAgICAgICBpZiBIQVZFX0xPTkdfTE9ORzoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKDgsIHN0cnVjdC5jYWxjc2l6ZSgncScpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwoc3RydWN0LmNhbGNzaXplKCdsJyksIHN0cnVjdC5jYWxjc2l6ZSgncScpKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChzdHJ1Y3QuY2FsY3NpemUoJ24nKSwgc3RydWN0LmNhbGNzaXplKCdpJykpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKHN0cnVjdC5jYWxjc2l6ZSgnbicpLCBzdHJ1Y3QuY2FsY3NpemUoJ1AnKSkKIAogICAgIGRlZiB0ZXN0X2ludGVnZXJzKHNlbGYpOgotICAgICAgICAjIEludGVnZXIgdGVzdHMgKGJCaEhpSWxMcVEpLgorICAgICAgICAjIEludGVnZXIgdGVzdHMgKGJCaEhpSWxMcVFuTikuCiAgICAgICAgIGltcG9ydCBiaW5hc2NpaQogCiAgICAgICAgIGNsYXNzIEludFRlc3Rlcih1bml0dGVzdC5UZXN0Q2FzZSk6CkBAIC0xODIsMTEgKzE5MywxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYnl0ZW9yZGVyKQogICAgICAgICAgICAgICAgIHNlbGYuYnl0ZXNpemUgPSBzdHJ1Y3QuY2FsY3NpemUoZm9ybWF0KQogICAgICAgICAgICAgICAgIHNlbGYuYml0c2l6ZSA9IHNlbGYuYnl0ZXNpemUgKiA4Ci0gICAgICAgICAgICAgICAgaWYgc2VsZi5jb2RlIGluIHR1cGxlKCdiaGlscScpOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuY29kZSBpbiB0dXBsZSgnYmhpbHFuJyk6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2lnbmVkID0gVHJ1ZQogICAgICAgICAgICAgICAgICAgICBzZWxmLm1pbl92YWx1ZSA9IC0oMioqKHNlbGYuYml0c2l6ZS0xKSkKICAgICAgICAgICAgICAgICAgICAgc2VsZi5tYXhfdmFsdWUgPSAyKiooc2VsZi5iaXRzaXplLTEpIC0gMQotICAgICAgICAgICAgICAgIGVsaWYgc2VsZi5jb2RlIGluIHR1cGxlKCdCSElMUScpOgorICAgICAgICAgICAgICAgIGVsaWYgc2VsZi5jb2RlIGluIHR1cGxlKCdCSElMUU4nKToKICAgICAgICAgICAgICAgICAgICAgc2VsZi5zaWduZWQgPSBGYWxzZQogICAgICAgICAgICAgICAgICAgICBzZWxmLm1pbl92YWx1ZSA9IDAKICAgICAgICAgICAgICAgICAgICAgc2VsZi5tYXhfdmFsdWUgPSAyKipzZWxmLmJpdHNpemUgLSAxCkBAIC0zMTYsMTQgKzMyNywyMyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QucGFjaywgc2VsZi5mb3JtYXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iaikKIAotICAgICAgICBmb3IgY29kZSBpbiBpbnRlZ2VyX2NvZGVzOgotICAgICAgICAgICAgZm9yIGJ5dGVvcmRlciBpbiBieXRlb3JkZXJzOgotICAgICAgICAgICAgICAgIGlmIChieXRlb3JkZXIgaW4gKCcnLCAnQCcpIGFuZCBjb2RlIGluICgncScsICdRJykgYW5kCi0gICAgICAgICAgICAgICAgICAgIG5vdCBIQVZFX0xPTkdfTE9ORyk6Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgIGZvciBjb2RlLCBieXRlb3JkZXIgaW4gaXRlcl9pbnRlZ2VyX2Zvcm1hdHMoKToKKyAgICAgICAgICAgIGZvcm1hdCA9IGJ5dGVvcmRlcitjb2RlCisgICAgICAgICAgICB0ID0gSW50VGVzdGVyKGZvcm1hdCkKKyAgICAgICAgICAgIHQucnVuKCkKKworICAgIGRlZiB0ZXN0X25OX2NvZGUoc2VsZik6CisgICAgICAgICMgbiBhbmQgTiBkb24ndCBleGlzdCBpbiBzdGFuZGFyZCBzaXplcworICAgICAgICBkZWYgYXNzZXJ0U3RydWN0RXJyb3IoZnVuYywgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc3RydWN0LmVycm9yKSBhcyBjbToKKyAgICAgICAgICAgICAgICBmdW5jKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oImJhZCBjaGFyIGluIHN0cnVjdCBmb3JtYXQiLCBzdHIoY20uZXhjZXB0aW9uKSkKKyAgICAgICAgZm9yIGNvZGUgaW4gJ25OJzoKKyAgICAgICAgICAgIGZvciBieXRlb3JkZXIgaW4gKCc9JywgJzwnLCAnPicsICchJyk6CiAgICAgICAgICAgICAgICAgZm9ybWF0ID0gYnl0ZW9yZGVyK2NvZGUKLSAgICAgICAgICAgICAgICB0ID0gSW50VGVzdGVyKGZvcm1hdCkKLSAgICAgICAgICAgICAgICB0LnJ1bigpCisgICAgICAgICAgICAgICAgYXNzZXJ0U3RydWN0RXJyb3Ioc3RydWN0LmNhbGNzaXplLCBmb3JtYXQpCisgICAgICAgICAgICAgICAgYXNzZXJ0U3RydWN0RXJyb3Ioc3RydWN0LnBhY2ssIGZvcm1hdCwgMCkKKyAgICAgICAgICAgICAgICBhc3NlcnRTdHJ1Y3RFcnJvcihzdHJ1Y3QudW5wYWNrLCBmb3JtYXQsIGIiIikKIAogICAgIGRlZiB0ZXN0X3BfY29kZShzZWxmKToKICAgICAgICAgIyBUZXN0IHAgKCJQYXNjYWwgc3RyaW5nIikgY29kZS4KQEAgLTM3NywxNCArMzk3LDEwIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHN0cnVjdC5wYWNrLCAiPmYiLCBiaWcpCiAKICAgICBkZWYgdGVzdF8xNTMwNTU5KHNlbGYpOgotICAgICAgICBmb3IgYnl0ZW9yZGVyIGluICcnLCAnQCcsICc9JywgJzwnLCAnPicsICchJzoKLSAgICAgICAgICAgIGZvciBjb2RlIGluIGludGVnZXJfY29kZXM6Ci0gICAgICAgICAgICAgICAgaWYgKGJ5dGVvcmRlciBpbiAoJycsICdAJykgYW5kIGNvZGUgaW4gKCdxJywgJ1EnKSBhbmQKLSAgICAgICAgICAgICAgICAgICAgbm90IEhBVkVfTE9OR19MT05HKToKLSAgICAgICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgICAgICBmb3JtYXQgPSBieXRlb3JkZXIgKyBjb2RlCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc3RydWN0LmVycm9yLCBzdHJ1Y3QucGFjaywgZm9ybWF0LCAxLjApCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc3RydWN0LmVycm9yLCBzdHJ1Y3QucGFjaywgZm9ybWF0LCAxLjUpCisgICAgICAgIGZvciBjb2RlLCBieXRlb3JkZXIgaW4gaXRlcl9pbnRlZ2VyX2Zvcm1hdHMoKToKKyAgICAgICAgICAgIGZvcm1hdCA9IGJ5dGVvcmRlciArIGNvZGUKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHN0cnVjdC5lcnJvciwgc3RydWN0LnBhY2ssIGZvcm1hdCwgMS4wKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc3RydWN0LmVycm9yLCBzdHJ1Y3QucGFjaywgZm9ybWF0LCAxLjUpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHN0cnVjdC5lcnJvciwgc3RydWN0LnBhY2ssICdQJywgMS4wKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzdHJ1Y3QuZXJyb3IsIHN0cnVjdC5wYWNrLCAnUCcsIDEuNSkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zdWJwcm9jZXNzLnB5IGIvTGliL3Rlc3QvdGVzdF9zdWJwcm9jZXNzLnB5CmluZGV4IGZiMGI4MzQuLmUzNDYyZDkgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3VicHJvY2Vzcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X3N1YnByb2Nlc3MucHkKQEAgLTYwLDYgKzYwLDggQEAKICAgICAgICAgIyBzaHV0ZG93biB0aW1lLiAgVGhhdCBmcnVzdHJhdGVzIHRlc3RzIHRyeWluZyB0byBjaGVjayBzdGRlcnIgcHJvZHVjZWQKICAgICAgICAgIyBmcm9tIGEgc3Bhd25lZCBQeXRob24gcHJvY2Vzcy4KICAgICAgICAgYWN0dWFsID0gc3VwcG9ydC5zdHJpcF9weXRob25fc3RkZXJyKHN0ZGVycikKKyAgICAgICAgIyBzdHJpcF9weXRob25fc3RkZXJyIGFsc28gc3RyaXBzIHdoaXRlc3BhY2UsIHNvIHdlIGRvIHRvby4KKyAgICAgICAgZXhwZWN0ZWQgPSBleHBlY3RlZC5zdHJpcCgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWN0dWFsLCBleHBlY3RlZCwgbXNnKQogCiAKQEAgLTcxLDYgKzczLDE1IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW1wb3J0IHN5czsgc3lzLmV4aXQoNDcpIl0pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmMsIDQ3KQogCisgICAgZGVmIHRlc3RfY2FsbF90aW1lb3V0KHNlbGYpOgorICAgICAgICAjIGNhbGwoKSBmdW5jdGlvbiB3aXRoIHRpbWVvdXQgYXJndW1lbnQ7IHdlIHdhbnQgdG8gdGVzdCB0aGF0IHRoZSBjaGlsZAorICAgICAgICAjIHByb2Nlc3MgZ2V0cyBraWxsZWQgd2hlbiB0aGUgdGltZW91dCBleHBpcmVzLiAgSWYgdGhlIGNoaWxkIGlzbid0CisgICAgICAgICMga2lsbGVkLCB0aGlzIGNhbGwgd2lsbCBkZWFkbG9jayBzaW5jZSBzdWJwcm9jZXNzLmNhbGwgd2FpdHMgZm9yIHRoZQorICAgICAgICAjIGNoaWxkLgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzdWJwcm9jZXNzLlRpbWVvdXRFeHBpcmVkLCBzdWJwcm9jZXNzLmNhbGwsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwgIndoaWxlIFRydWU6IHBhc3MiXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dD0wLjEpCisKICAgICBkZWYgdGVzdF9jaGVja19jYWxsX3plcm8oc2VsZik6CiAgICAgICAgICMgY2hlY2tfY2FsbCgpIGZ1bmN0aW9uIHdpdGggemVybyByZXR1cm4gY29kZQogICAgICAgICByYyA9IHN1YnByb2Nlc3MuY2hlY2tfY2FsbChbc3lzLmV4ZWN1dGFibGUsICItYyIsCkBAIC0xMTMsNiArMTI0LDIxIEBACiAgICAgICAgICAgICBzZWxmLmZhaWwoIkV4cGVjdGVkIFZhbHVlRXJyb3Igd2hlbiBzdGRvdXQgYXJnIHN1cHBsaWVkLiIpCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3N0ZG91dCcsIGMuZXhjZXB0aW9uLmFyZ3NbMF0pCiAKKyAgICBkZWYgdGVzdF9jaGVja19vdXRwdXRfdGltZW91dChzZWxmKToKKyAgICAgICAgIyBjaGVja19vdXRwdXQoKSBmdW5jdGlvbiB3aXRoIHRpbWVvdXQgYXJnCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc3VicHJvY2Vzcy5UaW1lb3V0RXhwaXJlZCkgYXMgYzoKKyAgICAgICAgICAgIG91dHB1dCA9IHN1YnByb2Nlc3MuY2hlY2tfb3V0cHV0KAorICAgICAgICAgICAgICAgICAgICBbc3lzLmV4ZWN1dGFibGUsICItYyIsCisgICAgICAgICAgICAgICAgICAgICAiaW1wb3J0IHN5cywgdGltZVxuIgorICAgICAgICAgICAgICAgICAgICAgInN5cy5zdGRvdXQud3JpdGUoJ0JERkwnKVxuIgorICAgICAgICAgICAgICAgICAgICAgInN5cy5zdGRvdXQuZmx1c2goKVxuIgorICAgICAgICAgICAgICAgICAgICAgInRpbWUuc2xlZXAoMzYwMCkiXSwKKyAgICAgICAgICAgICAgICAgICAgIyBTb21lIGhlYXZpbHkgbG9hZGVkIGJ1aWxkYm90cyAoc3BhcmMgRGViaWFuIDMueCkgcmVxdWlyZQorICAgICAgICAgICAgICAgICAgICAjIHRoaXMgbXVjaCB0aW1lIHRvIHN0YXJ0IGFuZCBwcmludC4KKyAgICAgICAgICAgICAgICAgICAgdGltZW91dD0zKQorICAgICAgICAgICAgc2VsZi5mYWlsKCJFeHBlY3RlZCBUaW1lb3V0RXhwaXJlZC4iKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGMuZXhjZXB0aW9uLm91dHB1dCwgYidCREZMJykKKwogICAgIGRlZiB0ZXN0X2NhbGxfa3dhcmdzKHNlbGYpOgogICAgICAgICAjIGNhbGwoKSBmdW5jdGlvbiB3aXRoIGtleXdvcmQgYXJncwogICAgICAgICBuZXdlbnYgPSBvcy5lbnZpcm9uLmNvcHkoKQpAQCAtMzEyLDYgKzMzOCwzMSBAQAogICAgICAgICByYyA9IHN1YnByb2Nlc3MuY2FsbChbc3lzLmV4ZWN1dGFibGUsICItYyIsIGNtZF0sIHN0ZG91dD0xKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJjLCAyKQogCisgICAgZGVmIHRlc3Rfc3Rkb3V0X2Rldm51bGwoc2VsZik6CisgICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb3IgaSBpbiByYW5nZSgxMDI0MCk6JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3ByaW50KCJ4IiAqIDEwMjQpJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5ERVZOVUxMKQorICAgICAgICBwLndhaXQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHAuc3Rkb3V0LCBOb25lKQorCisgICAgZGVmIHRlc3Rfc3RkZXJyX2Rldm51bGwoc2VsZik6CisgICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbXBvcnQgc3lzXG4nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9yIGkgaW4gcmFuZ2UoMTAyNDApOicKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzeXMuc3RkZXJyLndyaXRlKCJ4IiAqIDEwMjQpJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRlcnI9c3VicHJvY2Vzcy5ERVZOVUxMKQorICAgICAgICBwLndhaXQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHAuc3RkZXJyLCBOb25lKQorCisgICAgZGVmIHRlc3Rfc3RkaW5fZGV2bnVsbChzZWxmKToKKyAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oW3N5cy5leGVjdXRhYmxlLCAiLWMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCBzeXM7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRpbi5yZWFkKDEpJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRpbj1zdWJwcm9jZXNzLkRFVk5VTEwpCisgICAgICAgIHAud2FpdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocC5zdGRpbiwgTm9uZSkKKwogICAgIGRlZiB0ZXN0X2N3ZChzZWxmKToKICAgICAgICAgdG1wZGlyID0gdGVtcGZpbGUuZ2V0dGVtcGRpcigpCiAgICAgICAgICMgV2UgY2Fubm90IHVzZSBvcy5wYXRoLnJlYWxwYXRoIHRvIGNhbm9uaWNhbGl6ZSB0aGUgcGF0aCwKQEAgLTQwMCw2ICs0NTEsNDEgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGRvdXQsIGIiYmFuYW5hIikKICAgICAgICAgc2VsZi5hc3NlcnRTdGRlcnJFcXVhbChzdGRlcnIsIGIicGluZWFwcGxlIikKIAorICAgIGRlZiB0ZXN0X2NvbW11bmljYXRlX3RpbWVvdXQoc2VsZik6CisgICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbXBvcnQgc3lzLG9zLHRpbWU7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRlcnIud3JpdGUoInBpbmVhcHBsZVxcbiIpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW1lLnNsZWVwKDEpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzeXMuc3RkZXJyLndyaXRlKCJwZWFyXFxuIik7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoc3lzLnN0ZGluLnJlYWQoKSknXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdmVyc2FsX25ld2xpbmVzPVRydWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZGluPXN1YnByb2Nlc3MuUElQRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkZXJyPXN1YnByb2Nlc3MuUElQRSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc3VicHJvY2Vzcy5UaW1lb3V0RXhwaXJlZCwgcC5jb21tdW5pY2F0ZSwgImJhbmFuYSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9MC4zKQorICAgICAgICAjIE1ha2Ugc3VyZSB3ZSBjYW4ga2VlcCB3YWl0aW5nIGZvciBpdCwgYW5kIHRoYXQgd2UgZ2V0IHRoZSB3aG9sZSBvdXRwdXQKKyAgICAgICAgIyBhZnRlciBpdCBjb21wbGV0ZXMuCisgICAgICAgIChzdGRvdXQsIHN0ZGVycikgPSBwLmNvbW11bmljYXRlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGRvdXQsICJiYW5hbmEiKQorICAgICAgICBzZWxmLmFzc2VydFN0ZGVyckVxdWFsKHN0ZGVyci5lbmNvZGUoKSwgYiJwaW5lYXBwbGVcbnBlYXJcbiIpCisKKyAgICBkZWYgdGVzdF9jb21tdW5pY2F0ZV90aW1lb3V0X2xhcmdlX291cHV0KHNlbGYpOgorICAgICAgICAjIFRlc3QgYW4gZXhwaXJpbmcgdGltZW91dCB3aGlsZSB0aGUgY2hpbGQgaXMgb3V0cHV0dGluZyBsb3RzIG9mIGRhdGEuCisgICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbXBvcnQgc3lzLG9zLHRpbWU7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoImEiICogKDY0ICogMTAyNCkpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW1lLnNsZWVwKDAuMik7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoImEiICogKDY0ICogMTAyNCkpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW1lLnNsZWVwKDAuMik7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoImEiICogKDY0ICogMTAyNCkpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW1lLnNsZWVwKDAuMik7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoImEiICogKDY0ICogMTAyNCkpOyddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzdWJwcm9jZXNzLlRpbWVvdXRFeHBpcmVkLCBwLmNvbW11bmljYXRlLCB0aW1lb3V0PTAuNCkKKyAgICAgICAgKHN0ZG91dCwgXykgPSBwLmNvbW11bmljYXRlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc3Rkb3V0KSwgNCAqIDY0ICogMTAyNCkKKwogICAgICMgVGVzdCBmb3IgdGhlIGZkIGxlYWsgcmVwb3J0ZWQgaW4gaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTI3OTEuCiAgICAgZGVmIHRlc3RfY29tbXVuaWNhdGVfcGlwZV9mZF9sZWFrKHNlbGYpOgogICAgICAgICBmb3Igc3RkaW5fcGlwZSBpbiAoRmFsc2UsIFRydWUpOgpAQCAtNDM2LDI0ICs1MjIsMjEgQEAKICAgICAgICAgIyBUaGlzIHRlc3Qgd2lsbCBwcm9iYWJseSBkZWFkbG9jayByYXRoZXIgdGhhbiBmYWlsLCBpZgogICAgICAgICAjIGNvbW11bmljYXRlKCkgZG9lcyBub3Qgd29yayBwcm9wZXJseS4KICAgICAgICAgeCwgeSA9IG9zLnBpcGUoKQotICAgICAgICBpZiBtc3dpbmRvd3M6Ci0gICAgICAgICAgICBwaXBlX2J1ZiA9IDUxMgotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcGlwZV9idWYgPSBvcy5mcGF0aGNvbmYoeCwgIlBDX1BJUEVfQlVGIikKICAgICAgICAgb3MuY2xvc2UoeCkKICAgICAgICAgb3MuY2xvc2UoeSkKICAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oW3N5cy5leGVjdXRhYmxlLCAiLWMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCBzeXMsb3M7JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoc3lzLnN0ZGluLnJlYWQoNDcpKTsnCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3lzLnN0ZGVyci53cml0ZSgieHl6IiolZCk7JwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoc3lzLnN0ZGluLnJlYWQoKSknICUgcGlwZV9idWZdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRlcnIud3JpdGUoIngiICogJWQpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzeXMuc3Rkb3V0LndyaXRlKHN5cy5zdGRpbi5yZWFkKCkpJyAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LlBJUEVfTUFYX1NJWkVdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRpbj1zdWJwcm9jZXNzLlBJUEUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZGVycj1zdWJwcm9jZXNzLlBJUEUpCiAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChwLnN0ZG91dC5jbG9zZSkKICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHAuc3RkZXJyLmNsb3NlKQogICAgICAgICBzZWxmLmFkZENsZWFudXAocC5zdGRpbi5jbG9zZSkKLSAgICAgICAgc3RyaW5nX3RvX3dyaXRlID0gYiJhYmMiKnBpcGVfYnVmCisgICAgICAgIHN0cmluZ190b193cml0ZSA9IGIiYSIgKiBzdXBwb3J0LlBJUEVfTUFYX1NJWkUKICAgICAgICAgKHN0ZG91dCwgc3RkZXJyKSA9IHAuY29tbXVuaWNhdGUoc3RyaW5nX3RvX3dyaXRlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0ZG91dCwgc3RyaW5nX3RvX3dyaXRlKQogCkBAIC02MDMsMzAgKzY4NiwzMiBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1YnByb2Nlc3MubGlzdDJjbWRsaW5lKFsnYWInLCAnJ10pLAogICAgICAgICAgICAgICAgICAgICAgICAgICdhYiAiIicpCiAKLQogICAgIGRlZiB0ZXN0X3BvbGwoc2VsZik6Ci0gICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIi1jIiwgImltcG9ydCB0aW1lOyB0aW1lLnNsZWVwKDEpIl0pCi0gICAgICAgIGNvdW50ID0gMAotICAgICAgICB3aGlsZSBwLnBvbGwoKSBpcyBOb25lOgotICAgICAgICAgICAgdGltZS5zbGVlcCgwLjEpCi0gICAgICAgICAgICBjb3VudCArPSAxCi0gICAgICAgICMgV2UgZXhwZWN0IHRoYXQgdGhlIHBvbGwgbG9vcCBwcm9iYWJseSB3ZW50IGFyb3VuZCBhYm91dCAxMCB0aW1lcywKLSAgICAgICAgIyBidXQsIGJhc2VkIG9uIHN5c3RlbSBzY2hlZHVsaW5nIHdlIGNhbid0IGNvbnRyb2wsIGl0J3MgcG9zc2libGUKLSAgICAgICAgIyBwb2xsKCkgbmV2ZXIgcmV0dXJuZWQgTm9uZS4gIEl0ICJzaG91bGQgYmUiIHZlcnkgcmFyZSB0aGF0IGl0Ci0gICAgICAgICMgZGlkbid0IGdvIGFyb3VuZCBhdCBsZWFzdCB0d2ljZS4KLSAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwoY291bnQsIDIpCisgICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbXBvcnQgb3M7IG9zLnJlYWQoMCwgMSkiXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkaW49c3VicHJvY2Vzcy5QSVBFKQorICAgICAgICBzZWxmLmFkZENsZWFudXAocC5zdGRpbi5jbG9zZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUocC5wb2xsKCkpCisgICAgICAgIG9zLndyaXRlKHAuc3RkaW4uZmlsZW5vKCksIGInQScpCisgICAgICAgIHAud2FpdCgpCiAgICAgICAgICMgU3Vic2VxdWVudCBpbnZvY2F0aW9ucyBzaG91bGQganVzdCByZXR1cm4gdGhlIHJldHVybmNvZGUKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwLnBvbGwoKSwgMCkKIAotCiAgICAgZGVmIHRlc3Rfd2FpdChzZWxmKToKLSAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oW3N5cy5leGVjdXRhYmxlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAiLWMiLCAiaW1wb3J0IHRpbWU7IHRpbWUuc2xlZXAoMikiXSkKKyAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oW3N5cy5leGVjdXRhYmxlLCAiLWMiLCAicGFzcyJdKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHAud2FpdCgpLCAwKQogICAgICAgICAjIFN1YnNlcXVlbnQgaW52b2NhdGlvbnMgc2hvdWxkIGp1c3QgcmV0dXJuIHRoZSByZXR1cm5jb2RlCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocC53YWl0KCksIDApCiAKKyAgICBkZWYgdGVzdF93YWl0X3RpbWVvdXQoc2VsZik6CisgICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICItYyIsICJpbXBvcnQgdGltZTsgdGltZS5zbGVlcCgwLjEpIl0pCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc3VicHJvY2Vzcy5UaW1lb3V0RXhwaXJlZCkgYXMgYzoKKyAgICAgICAgICAgIHAud2FpdCh0aW1lb3V0PTAuMDEpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oIjAuMDEiLCBzdHIoYy5leGNlcHRpb24pKSAgIyBGb3IgY292ZXJhZ2Ugb2YgX19zdHJfXy4KKyAgICAgICAgIyBTb21lIGhlYXZpbHkgbG9hZGVkIGJ1aWxkYm90cyAoc3BhcmMgRGViaWFuIDMueCkgcmVxdWlyZSB0aGlzIG11Y2gKKyAgICAgICAgIyB0aW1lIHRvIHN0YXJ0LgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHAud2FpdCh0aW1lb3V0PTMpLCAwKQogCiAgICAgZGVmIHRlc3RfaW52YWxpZF9idWZzaXplKHNlbGYpOgogICAgICAgICAjIGFuIGludmFsaWQgdHlwZSBvZiB0aGUgYnVmc2l6ZSBhcmd1bWVudCBzaG91bGQgcmFpc2UKQEAgLTcwNSwyNSArNzkwLDI5IEBACiAgICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwgJ3Bhc3MnXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkaW49c3VicHJvY2Vzcy5QSVBFKQogICAgICAgICBzZWxmLmFkZENsZWFudXAocC5zdGRpbi5jbG9zZSkKLSAgICAgICAgdGltZS5zbGVlcCgyKQorICAgICAgICBwLndhaXQoKQogICAgICAgICBwLmNvbW11bmljYXRlKGIieCIgKiAyKioyMCkKIAotICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAnU0lHQUxSTScpLAotICAgICAgICAgICAgICAgICAgICAgICAgICJSZXF1aXJlcyBzaWduYWwuU0lHQUxSTSIpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICdTSUdVU1IxJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgIlJlcXVpcmVzIHNpZ25hbC5TSUdVU1IxIikKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAna2lsbCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJSZXF1aXJlcyBvcy5raWxsIikKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnZ2V0cHBpZCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJSZXF1aXJlcyBvcy5nZXRwcGlkIikKICAgICBkZWYgdGVzdF9jb21tdW5pY2F0ZV9laW50cihzZWxmKToKICAgICAgICAgIyBJc3N1ZSAjMTI0OTM6IGNvbW11bmljYXRlKCkgc2hvdWxkIGhhbmRsZSBFSU5UUgogICAgICAgICBkZWYgaGFuZGxlcihzaWdudW0sIGZyYW1lKToKICAgICAgICAgICAgIHBhc3MKLSAgICAgICAgb2xkX2hhbmRsZXIgPSBzaWduYWwuc2lnbmFsKHNpZ25hbC5TSUdBTFJNLCBoYW5kbGVyKQotICAgICAgICBzZWxmLmFkZENsZWFudXAoc2lnbmFsLnNpZ25hbCwgc2lnbmFsLlNJR0FMUk0sIG9sZF9oYW5kbGVyKQorICAgICAgICBvbGRfaGFuZGxlciA9IHNpZ25hbC5zaWduYWwoc2lnbmFsLlNJR1VTUjEsIGhhbmRsZXIpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzaWduYWwuc2lnbmFsLCBzaWduYWwuU0lHVVNSMSwgb2xkX2hhbmRsZXIpCiAKLSAgICAgICAgIyB0aGUgcHJvY2VzcyBpcyBydW5uaW5nIGZvciAyIHNlY29uZHMKLSAgICAgICAgYXJncyA9IFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwgJ2ltcG9ydCB0aW1lOyB0aW1lLnNsZWVwKDIpJ10KKyAgICAgICAgYXJncyA9IFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwKKyAgICAgICAgICAgICAgICAnaW1wb3J0IG9zLCBzaWduYWw7JworICAgICAgICAgICAgICAgICdvcy5raWxsKG9zLmdldHBwaWQoKSwgc2lnbmFsLlNJR1VTUjEpJ10KICAgICAgICAgZm9yIHN0cmVhbSBpbiAoJ3N0ZG91dCcsICdzdGRlcnInKToKICAgICAgICAgICAgIGt3ID0ge3N0cmVhbTogc3VicHJvY2Vzcy5QSVBFfQogICAgICAgICAgICAgd2l0aCBzdWJwcm9jZXNzLlBvcGVuKGFyZ3MsICoqa3cpIGFzIHByb2Nlc3M6Ci0gICAgICAgICAgICAgICAgc2lnbmFsLmFsYXJtKDEpCi0gICAgICAgICAgICAgICAgIyBjb21tdW5pY2F0ZSgpIHdpbGwgYmUgaW50ZXJydXB0ZWQgYnkgU0lHQUxSTQorICAgICAgICAgICAgICAgICMgY29tbXVuaWNhdGUoKSB3aWxsIGJlIGludGVycnVwdGVkIGJ5IFNJR1VTUjEKICAgICAgICAgICAgICAgICBwcm9jZXNzLmNvbW11bmljYXRlKCkKIAogCkBAIC0xMjIxLDYgKzEzMTAsMTEgQEAKICAgICAgICAgZXhpdGNvZGUgPSBzdWJwcm9jZXNzLmNhbGwoW2Fic19wcm9ncmFtLCAiLWMiLCAicGFzcyJdKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4aXRjb2RlLCAwKQogCisgICAgICAgICMgYWJzb2x1dGUgYnl0ZXMgcGF0aCBhcyBhIHN0cmluZworICAgICAgICBjbWQgPSBiIiciICsgYWJzX3Byb2dyYW0gKyBiIicgLWMgcGFzcyIKKyAgICAgICAgZXhpdGNvZGUgPSBzdWJwcm9jZXNzLmNhbGwoY21kLCBzaGVsbD1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4aXRjb2RlLCAwKQorCiAgICAgICAgICMgYnl0ZXMgcHJvZ3JhbSwgdW5pY29kZSBQQVRICiAgICAgICAgIGVudiA9IG9zLmVudmlyb24uY29weSgpCiAgICAgICAgIGVudlsiUEFUSCJdID0gcGF0aApAQCAtMTQwNCw3ICsxNDk4LDcgQEAKICAgICAgICAgc3Rkb3V0LCBzdGRlcnIgPSBwLmNvbW11bmljYXRlKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgwLCBwLnJldHVybmNvZGUsICJzaWdjaGlsZF9pZ25vcmUucHkgZXhpdGVkIgogICAgICAgICAgICAgICAgICAgICAgICAgICIgbm9uLXplcm8gd2l0aCB0aGlzIGVycm9yOlxuJXMiICUKLSAgICAgICAgICAgICAgICAgICAgICAgICBzdGRlcnIuZGVjb2RlKCd1dGY4JykpCisgICAgICAgICAgICAgICAgICAgICAgICAgc3RkZXJyLmRlY29kZSgndXRmLTgnKSkKIAogICAgIGRlZiB0ZXN0X3NlbGVjdF91bmJ1ZmZlcmVkKHNlbGYpOgogICAgICAgICAjIElzc3VlICMxMTQ1OTogYnVmc2l6ZT0wIHNob3VsZCByZWFsbHkgc2V0IHRoZSBwaXBlcyBhcwpAQCAtMTYxNywyOCArMTcxMSw2IEBACiAgICAgICAgIFByb2Nlc3NUZXN0Q2FzZS50ZWFyRG93bihzZWxmKQogCiAKLUB1bml0dGVzdC5za2lwVW5sZXNzKGdldGF0dHIoc3VicHJvY2VzcywgJ19wb3NpeHN1YnByb2Nlc3MnLCBGYWxzZSksCi0gICAgICAgICAgICAgICAgICAgICAiX3Bvc2l4c3VicHJvY2VzcyBleHRlbnNpb24gbW9kdWxlIG5vdCBmb3VuZC4iKQotY2xhc3MgUHJvY2Vzc1Rlc3RDYXNlUE9TSVhQdXJlUHl0aG9uKFByb2Nlc3NUZXN0Q2FzZSwgUE9TSVhQcm9jZXNzVGVzdENhc2UpOgotICAgIEBjbGFzc21ldGhvZAotICAgIGRlZiBzZXRVcENsYXNzKGNscyk6Ci0gICAgICAgIGdsb2JhbCBzdWJwcm9jZXNzCi0gICAgICAgIGFzc2VydCBzdWJwcm9jZXNzLl9wb3NpeHN1YnByb2Nlc3MKLSAgICAgICAgIyBSZWltcG9ydCBzdWJwcm9jZXNzIHdoaWxlIGZvcmNpbmcgX3Bvc2l4c3VicHJvY2VzcyB0byBub3QgZXhpc3QuCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJy4qX3Bvc2l4c3VicHJvY2VzcyAuKiBub3QgYmVpbmcgdXNlZC4qJywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSdW50aW1lV2FybmluZykpOgotICAgICAgICAgICAgc3VicHJvY2VzcyA9IHN1cHBvcnQuaW1wb3J0X2ZyZXNoX21vZHVsZSgKLSAgICAgICAgICAgICAgICAgICAgJ3N1YnByb2Nlc3MnLCBibG9ja2VkPVsnX3Bvc2l4c3VicHJvY2VzcyddKQotICAgICAgICBhc3NlcnQgbm90IHN1YnByb2Nlc3MuX3Bvc2l4c3VicHJvY2VzcwotCi0gICAgQGNsYXNzbWV0aG9kCi0gICAgZGVmIHRlYXJEb3duQ2xhc3MoY2xzKToKLSAgICAgICAgZ2xvYmFsIHN1YnByb2Nlc3MKLSAgICAgICAgIyBSZWltcG9ydCBzdWJwcm9jZXNzIGFzIGl0IHNob3VsZCBiZSwgcmVzdG9yaW5nIG9yZGVyIHRvIHRoZSB1bml2ZXJzZS4KLSAgICAgICAgc3VicHJvY2VzcyA9IHN1cHBvcnQuaW1wb3J0X2ZyZXNoX21vZHVsZSgnc3VicHJvY2VzcycpCi0gICAgICAgIGFzc2VydCBzdWJwcm9jZXNzLl9wb3NpeHN1YnByb2Nlc3MKLQotCiBjbGFzcyBIZWxwZXJGdW5jdGlvblRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBAdW5pdHRlc3Quc2tpcElmKG1zd2luZG93cywgImVycm5vIGFuZCBFSU5UUiBtYWtlIG5vIHNlbnNlIG9uIHdpbmRvd3MiKQogICAgIGRlZiB0ZXN0X2VpbnRyX3JldHJ5X2NhbGwoc2VsZik6CkBAIC0xNzQ3LDcgKzE4MTksNiBAQAogICAgIHVuaXRfdGVzdHMgPSAoUHJvY2Vzc1Rlc3RDYXNlLAogICAgICAgICAgICAgICAgICAgUE9TSVhQcm9jZXNzVGVzdENhc2UsCiAgICAgICAgICAgICAgICAgICBXaW4zMlByb2Nlc3NUZXN0Q2FzZSwKLSAgICAgICAgICAgICAgICAgIFByb2Nlc3NUZXN0Q2FzZVBPU0lYUHVyZVB5dGhvbiwKICAgICAgICAgICAgICAgICAgIENvbW1hbmRUZXN0cywKICAgICAgICAgICAgICAgICAgIFByb2Nlc3NUZXN0Q2FzZU5vUG9sbCwKICAgICAgICAgICAgICAgICAgIEhlbHBlckZ1bmN0aW9uVGVzdHMsCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N1cGVyLnB5IGIvTGliL3Rlc3QvdGVzdF9zdXBlci5weQppbmRleCA5MTQyMTZkLi4yOThjYWUwIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3N1cGVyLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3VwZXIucHkKQEAgLTgxLDYgKzgxLDE2IEBACiAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChFKCkuZigpLCAnQUUnKQogCisgICAgZGVmIHRlc3RfX19jbGFzc19fX3NldChzZWxmKToKKyAgICAgICAgIyBTZWUgaXNzdWUgIzEyMzcwCisgICAgICAgIGNsYXNzIFgoQSk6CisgICAgICAgICAgICBkZWYgZihzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIoKS5mKCkKKyAgICAgICAgICAgIF9fY2xhc3NfXyA9IDQxMworICAgICAgICB4ID0gWCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeC5mKCksICdBJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4Ll9fY2xhc3NfXywgNDEzKQorCiAKIGRlZiB0ZXN0X21haW4oKToKICAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChUZXN0U3VwZXIpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N1cHBvcnQucHkgYi9MaWIvdGVzdC90ZXN0X3N1cHBvcnQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzk0ZTIxMAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3VwcG9ydC5weQpAQCAtMCwwICsxLDE4OCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uCisKK2ltcG9ydCBzeXMKK2ltcG9ydCBvcworaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgc29ja2V0CitpbXBvcnQgdGVtcGZpbGUKK2ltcG9ydCBlcnJubworZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CisKK1RFU1RGTiA9IHN1cHBvcnQuVEVTVEZOCitURVNURElSTiA9IG9zLnBhdGguYmFzZW5hbWUodGVtcGZpbGUubWtkdGVtcChkaXI9Jy4nKSkKKworCitjbGFzcyBUZXN0U3VwcG9ydCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBwb3J0LnVubGluayhURVNURk4pCisgICAgICAgIHN1cHBvcnQucm10cmVlKFRFU1RESVJOKQorICAgIHRlYXJEb3duID0gc2V0VXAKKworICAgIGRlZiB0ZXN0X2ltcG9ydF9tb2R1bGUoc2VsZik6CisgICAgICAgIHN1cHBvcnQuaW1wb3J0X21vZHVsZSgiZnRwbGliIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXModW5pdHRlc3QuU2tpcFRlc3QsIHN1cHBvcnQuaW1wb3J0X21vZHVsZSwgImZvbyIpCisKKyAgICBkZWYgdGVzdF9pbXBvcnRfZnJlc2hfbW9kdWxlKHNlbGYpOgorICAgICAgICBzdXBwb3J0LmltcG9ydF9mcmVzaF9tb2R1bGUoImZ0cGxpYiIpCisKKyAgICBkZWYgdGVzdF9nZXRfYXR0cmlidXRlKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1cHBvcnQuZ2V0X2F0dHJpYnV0ZShzZWxmLCAidGVzdF9nZXRfYXR0cmlidXRlIiksCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnRlc3RfZ2V0X2F0dHJpYnV0ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXModW5pdHRlc3QuU2tpcFRlc3QsIHN1cHBvcnQuZ2V0X2F0dHJpYnV0ZSwgc2VsZiwgImZvbyIpCisKKyAgICBAdW5pdHRlc3Quc2tpcCgiZmFpbGluZyBidWlsZGJvdHMiKQorICAgIGRlZiB0ZXN0X2dldF9vcmlnaW5hbF9zdGRvdXQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VwcG9ydC5nZXRfb3JpZ2luYWxfc3Rkb3V0KCksIHN5cy5zdGRvdXQpCisKKyAgICBkZWYgdGVzdF91bmxvYWQoc2VsZik6CisgICAgICAgIGltcG9ydCBzY2hlZAorICAgICAgICBzZWxmLmFzc2VydEluKCJzY2hlZCIsIHN5cy5tb2R1bGVzKQorICAgICAgICBzdXBwb3J0LnVubG9hZCgic2NoZWQiKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKCJzY2hlZCIsIHN5cy5tb2R1bGVzKQorCisgICAgZGVmIHRlc3RfdW5saW5rKHNlbGYpOgorICAgICAgICB3aXRoIG9wZW4oVEVTVEZOLCAidyIpIGFzIGY6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIHN1cHBvcnQudW5saW5rKFRFU1RGTikKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhURVNURk4pKQorICAgICAgICBzdXBwb3J0LnVubGluayhURVNURk4pCisKKyAgICBkZWYgdGVzdF9ybXRyZWUoc2VsZik6CisgICAgICAgIG9zLm1rZGlyKFRFU1RESVJOKQorICAgICAgICBvcy5ta2Rpcihvcy5wYXRoLmpvaW4oVEVTVERJUk4sIFRFU1RESVJOKSkKKyAgICAgICAgc3VwcG9ydC5ybXRyZWUoVEVTVERJUk4pCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoVEVTVERJUk4pKQorICAgICAgICBzdXBwb3J0LnJtdHJlZShURVNURElSTikKKworICAgIGRlZiB0ZXN0X2ZvcmdldChzZWxmKToKKyAgICAgICAgbW9kX2ZpbGVuYW1lID0gVEVTVEZOICsgJy5weScKKyAgICAgICAgd2l0aCBvcGVuKG1vZF9maWxlbmFtZSwgJ3cnKSBhcyBmOgorICAgICAgICAgICAgcHJpbnQoJ2ZvbyA9IDEnLCBmaWxlPWYpCisgICAgICAgIHN5cy5wYXRoLmluc2VydCgwLCBvcy5jdXJkaXIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG1vZCA9IF9faW1wb3J0X18oVEVTVEZOKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihURVNURk4sIHN5cy5tb2R1bGVzKQorCisgICAgICAgICAgICBzdXBwb3J0LmZvcmdldChURVNURk4pCisgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEluKFRFU1RGTiwgc3lzLm1vZHVsZXMpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBkZWwgc3lzLnBhdGhbMF0KKyAgICAgICAgICAgIHN1cHBvcnQudW5saW5rKG1vZF9maWxlbmFtZSkKKworICAgIGRlZiB0ZXN0X0hPU1Qoc2VsZik6CisgICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KCkKKyAgICAgICAgcy5iaW5kKChzdXBwb3J0LkhPU1QsIDApKQorICAgICAgICBzLmNsb3NlKCkKKworICAgIGRlZiB0ZXN0X2ZpbmRfdW51c2VkX3BvcnQoc2VsZik6CisgICAgICAgIHBvcnQgPSBzdXBwb3J0LmZpbmRfdW51c2VkX3BvcnQoKQorICAgICAgICBzID0gc29ja2V0LnNvY2tldCgpCisgICAgICAgIHMuYmluZCgoc3VwcG9ydC5IT1NULCBwb3J0KSkKKyAgICAgICAgcy5jbG9zZSgpCisKKyAgICBkZWYgdGVzdF9iaW5kX3BvcnQoc2VsZik6CisgICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KCkKKyAgICAgICAgc3VwcG9ydC5iaW5kX3BvcnQocykKKyAgICAgICAgcy5saXN0ZW4oMSkKKyAgICAgICAgcy5jbG9zZSgpCisKKyAgICBkZWYgdGVzdF90ZW1wX2N3ZChzZWxmKToKKyAgICAgICAgaGVyZSA9IG9zLmdldGN3ZCgpCisgICAgICAgIHdpdGggc3VwcG9ydC50ZW1wX2N3ZChuYW1lPVRFU1RGTik6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnBhdGguYmFzZW5hbWUob3MuZ2V0Y3dkKCkpLCBURVNURk4pCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoVEVTVEZOKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguYmFzZW5hbWUob3MuZ2V0Y3dkKCkpLCBoZXJlKQorCisgICAgZGVmIHRlc3Rfc29ydGRpY3Qoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VwcG9ydC5zb3J0ZGljdCh7MzozLCAyOjIsIDE6MX0pLCAiezE6IDEsIDI6IDIsIDM6IDN9IikKKworICAgIGRlZiB0ZXN0X21ha2VfYmFkX2ZkKHNlbGYpOgorICAgICAgICBmZCA9IHN1cHBvcnQubWFrZV9iYWRfZmQoKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgb3Mud3JpdGUoZmQsIGIiZm9vIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbS5leGNlcHRpb24uZXJybm8sIGVycm5vLkVCQURGKQorCisgICAgZGVmIHRlc3RfY2hlY2tfc3ludGF4X2Vycm9yKHNlbGYpOgorICAgICAgICBzdXBwb3J0LmNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGNsYXNzIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQXNzZXJ0aW9uRXJyb3IsIHN1cHBvcnQuY2hlY2tfc3ludGF4X2Vycm9yLCBzZWxmLCAiMSIpCisKKyAgICBkZWYgdGVzdF9DbGVhbkltcG9ydChzZWxmKToKKyAgICAgICAgaW1wb3J0IGltcG9ydGxpYgorICAgICAgICB3aXRoIHN1cHBvcnQuQ2xlYW5JbXBvcnQoImFzeW5jb3JlIik6CisgICAgICAgICAgICBpbXBvcnRsaWIuaW1wb3J0X21vZHVsZSgiYXN5bmNvcmUiKQorCisgICAgZGVmIHRlc3RfRGlyc09uU3lzUGF0aChzZWxmKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LkRpcnNPblN5c1BhdGgoJ2ZvbycsICdiYXInKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oImZvbyIsIHN5cy5wYXRoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigiYmFyIiwgc3lzLnBhdGgpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oImZvbyIsIHN5cy5wYXRoKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKCJiYXIiLCBzeXMucGF0aCkKKworICAgIGRlZiB0ZXN0X2NhcHR1cmVkX3N0ZG91dChzZWxmKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNhcHR1cmVkX3N0ZG91dCgpIGFzIHM6CisgICAgICAgICAgICBwcmludCgiaGVsbG8iKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuZ2V0dmFsdWUoKSwgImhlbGxvXG4iKQorCisgICAgZGVmIHRlc3RfY2FwdHVyZWRfc3RkZXJyKHNlbGYpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2FwdHVyZWRfc3RkZXJyKCkgYXMgczoKKyAgICAgICAgICAgIHByaW50KCJoZWxsbyIsIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksICJoZWxsb1xuIikKKworICAgIGRlZiB0ZXN0X2NhcHR1cmVkX3N0ZGluKHNlbGYpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2FwdHVyZWRfc3RkaW4oKSBhcyBzOgorICAgICAgICAgICAgcHJpbnQoImhlbGxvIiwgZmlsZT1zeXMuc3RkaW4pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR2YWx1ZSgpLCAiaGVsbG9cbiIpCisKKyAgICBkZWYgdGVzdF9nY19jb2xsZWN0KHNlbGYpOgorICAgICAgICBzdXBwb3J0LmdjX2NvbGxlY3QoKQorCisgICAgZGVmIHRlc3RfcHl0aG9uX2lzX29wdGltaXplZChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHN1cHBvcnQucHl0aG9uX2lzX29wdGltaXplZCgpLCBib29sKQorCisgICAgZGVmIHRlc3Rfc3dhcF9hdHRyKHNlbGYpOgorICAgICAgICBjbGFzcyBPYmo6CisgICAgICAgICAgICB4ID0gMQorICAgICAgICBvYmogPSBPYmooKQorICAgICAgICB3aXRoIHN1cHBvcnQuc3dhcF9hdHRyKG9iaiwgIngiLCA1KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob2JqLngsIDUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob2JqLngsIDEpCisKKyAgICBkZWYgdGVzdF9zd2FwX2l0ZW0oc2VsZik6CisgICAgICAgIEQgPSB7Iml0ZW0iOjF9CisgICAgICAgIHdpdGggc3VwcG9ydC5zd2FwX2l0ZW0oRCwgIml0ZW0iLCA1KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRFsiaXRlbSJdLCA1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKERbIml0ZW0iXSwgMSkKKworICAgICMgWFhYIC1mb2xsb3dzIGEgbGlzdCBvZiB1bnRlc3RlZCBBUEkKKyAgICAjIG1ha2VfbGVnYWN5X3B5YworICAgICMgaXNfcmVzb3VyY2VfZW5hYmxlZAorICAgICMgcmVxdWlyZXMKKyAgICAjIGZjbXAKKyAgICAjIHVtYWtzCisgICAgIyBmaW5kZmlsZQorICAgICMgY2hlY2tfd2FybmluZ3MKKyAgICAjIEVudmlyb25tZW50VmFyR3VhcmQKKyAgICAjIFRyYW5zaWVudFJlc291cmNlCisgICAgIyB0cmFuc2llbnRfaW50ZXJuZXQKKyAgICAjIHJ1bl93aXRoX2xvY2FsZQorICAgICMgc2V0X21lbWxpbWl0CisgICAgIyBiaWdtZW10ZXN0CisgICAgIyBwcmVjaXNpb25iaWdtZW10ZXN0CisgICAgIyBiaWdhZGRyc3BhY2V0ZXN0CisgICAgIyByZXF1aXJlc19yZXNvdXJjZQorICAgICMgcnVuX2RvY3Rlc3QKKyAgICAjIHRocmVhZGluZ19jbGVhbnVwCisgICAgIyByZWFwX3RocmVhZHMKKyAgICAjIHJlYXBfY2hpbGRyZW4KKyAgICAjIHN0cmlwX3B5dGhvbl9zdGRlcnIKKyAgICAjIGFyZ3NfZnJvbV9pbnRlcnByZXRlcl9mbGFncworICAgICMgY2FuX3N5bWxpbmsKKyAgICAjIHNraXBfdW5sZXNzX3N5bWxpbmsKKworCitkZWYgdGVzdF9tYWluKCk6CisgICAgdGVzdHMgPSBbVGVzdFN1cHBvcnRdCisgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoKnRlc3RzKQorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N5cy5weSBiL0xpYi90ZXN0L3Rlc3Rfc3lzLnB5CmluZGV4IDMyNjhiMWEuLjU1MWMzYTUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3lzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3lzLnB5CkBAIC0zMDMsNiArMzAzLDcgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3lzLmdldGRsb3BlbmZsYWdzKCksIG9sZGZsYWdzKzEpCiAgICAgICAgICAgICBzeXMuc2V0ZGxvcGVuZmxhZ3Mob2xkZmxhZ3MpCiAKKyAgICBAdGVzdC5zdXBwb3J0LnJlZmNvdW50X3Rlc3QKICAgICBkZWYgdGVzdF9yZWZjb3VudChzZWxmKToKICAgICAgICAgIyBuIGhlcmUgbXVzdCBiZSBhIGdsb2JhbCBpbiBvcmRlciBmb3IgdGhpcyB0ZXN0IHRvIHBhc3Mgd2hpbGUKICAgICAgICAgIyB0cmFjaW5nIHdpdGggYSBweXRob24gZnVuY3Rpb24uICBUcmFjaW5nIGNhbGxzIFB5RnJhbWVfRmFzdFRvTG9jYWxzCkBAIC0zNDIsNyArMzQzLDcgQEAKICAgICAjIFRlc3Qgc3lzLl9jdXJyZW50X2ZyYW1lcygpIGluIGEgV0lUSF9USFJFQURTIGJ1aWxkLgogICAgIEB0ZXN0LnN1cHBvcnQucmVhcF90aHJlYWRzCiAgICAgZGVmIGN1cnJlbnRfZnJhbWVzX3dpdGhfdGhyZWFkcyhzZWxmKToKLSAgICAgICAgaW1wb3J0IHRocmVhZGluZywgX3RocmVhZAorICAgICAgICBpbXBvcnQgdGhyZWFkaW5nCiAgICAgICAgIGltcG9ydCB0cmFjZWJhY2sKIAogICAgICAgICAjIFNwYXduIGEgdGhyZWFkIHRoYXQgYmxvY2tzIGF0IGEga25vd24gcGxhY2UuICBUaGVuIHRoZSBtYWluCkBAIC0zNTYsNyArMzU3LDcgQEAKICAgICAgICAgICAgIGc0NTYoKQogCiAgICAgICAgIGRlZiBnNDU2KCk6Ci0gICAgICAgICAgICB0aHJlYWRfaW5mby5hcHBlbmQoX3RocmVhZC5nZXRfaWRlbnQoKSkKKyAgICAgICAgICAgIHRocmVhZF9pbmZvLmFwcGVuZCh0aHJlYWRpbmcuZ2V0X2lkZW50KCkpCiAgICAgICAgICAgICBlbnRlcmVkX2cuc2V0KCkKICAgICAgICAgICAgIGxlYXZlX2cud2FpdCgpCiAKQEAgLTM3Miw3ICszNzMsNyBAQAogCiAgICAgICAgIGQgPSBzeXMuX2N1cnJlbnRfZnJhbWVzKCkKIAotICAgICAgICBtYWluX2lkID0gX3RocmVhZC5nZXRfaWRlbnQoKQorICAgICAgICBtYWluX2lkID0gdGhyZWFkaW5nLmdldF9pZGVudCgpCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4obWFpbl9pZCwgZCkKICAgICAgICAgc2VsZi5hc3NlcnRJbih0aHJlYWRfaWQsIGQpCiAKQEAgLTQ0Niw2ICs0NDcsNyBAQAogCiAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShzeXMubWF4c2l6ZSwgaW50KQogICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc3lzLm1heHVuaWNvZGUsIGludCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzeXMubWF4dW5pY29kZSwgMHgxMEZGRkYpCiAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShzeXMucGxhdGZvcm0sIHN0cikKICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHN5cy5wcmVmaXgsIHN0cikKICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHN5cy52ZXJzaW9uLCBzdHIpCkBAIC00NzMsNiArNDc1LDE0IEBACiAgICAgICAgIGlmIG5vdCBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnd2luJyk6CiAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc3lzLmFiaWZsYWdzLCBzdHIpCiAKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHN5cywgJ3RocmVhZF9pbmZvJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCisgICAgZGVmIHRlc3RfdGhyZWFkX2luZm8oc2VsZik6CisgICAgICAgIGluZm8gPSBzeXMudGhyZWFkX2luZm8KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oaW5mbyksIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oaW5mby5uYW1lLCAoJ250JywgJ29zMicsICdwdGhyZWFkJywgJ3NvbGFyaXMnLCBOb25lKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihpbmZvLmxvY2ssICgnc2VtYXBob3JlJywgJ211dGV4K2NvbmQnLCBOb25lKSkKKwogICAgIGRlZiB0ZXN0XzQzNTgxKHNlbGYpOgogICAgICAgICAjIENhbid0IHVzZSBzeXMuc3Rkb3V0LCBhcyB0aGlzIGlzIGEgU3RyaW5nSU8gb2JqZWN0IHdoZW4KICAgICAgICAgIyB0aGUgdGVzdCBydW5zIHVuZGVyIHJlZ3J0ZXN0LgpAQCAtNTAwLDcgKzUxMCw3IEBACiAKICAgICBkZWYgdGVzdF9zeXNfZmxhZ3Moc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzeXMuZmxhZ3MpCi0gICAgICAgIGF0dHJzID0gKCJkZWJ1ZyIsICJkaXZpc2lvbl93YXJuaW5nIiwKKyAgICAgICAgYXR0cnMgPSAoImRlYnVnIiwKICAgICAgICAgICAgICAgICAgImluc3BlY3QiLCAiaW50ZXJhY3RpdmUiLCAib3B0aW1pemUiLCAiZG9udF93cml0ZV9ieXRlY29kZSIsCiAgICAgICAgICAgICAgICAgICJub191c2VyX3NpdGUiLCAibm9fc2l0ZSIsICJpZ25vcmVfZW52aXJvbm1lbnQiLCAidmVyYm9zZSIsCiAgICAgICAgICAgICAgICAgICJieXRlc193YXJuaW5nIiwgInF1aWV0IiwgImhhc2hfcmFuZG9taXphdGlvbiIpCkBAIC02NTksMjEgKzY2OSwyMSBAQAogICAgICAgICAgICAgcmV0dXJuIGlubmVyCiAgICAgICAgIGNoZWNrKGdldF9jZWxsKCkuX19jbG9zdXJlX19bMF0sIHNpemUoaCArICdQJykpCiAgICAgICAgICMgY29kZQotICAgICAgICBjaGVjayhnZXRfY2VsbCgpLl9fY29kZV9fLCBzaXplKGggKyAnNWk4UGkzUCcpKQorICAgICAgICBjaGVjayhnZXRfY2VsbCgpLl9fY29kZV9fLCBzaXplKGggKyAnNWk5UGkzUCcpKQogICAgICAgICAjIGNvbXBsZXgKICAgICAgICAgY2hlY2soY29tcGxleCgwLDEpLCBzaXplKGggKyAnMmQnKSkKICAgICAgICAgIyBtZXRob2RfZGVzY3JpcHRvciAoZGVzY3JpcHRvciBvYmplY3QpCi0gICAgICAgIGNoZWNrKHN0ci5sb3dlciwgc2l6ZShoICsgJzJQUCcpKQorICAgICAgICBjaGVjayhzdHIubG93ZXIsIHNpemUoaCArICczUFAnKSkKICAgICAgICAgIyBjbGFzc21ldGhvZF9kZXNjcmlwdG9yIChkZXNjcmlwdG9yIG9iamVjdCkKICAgICAgICAgIyBYWFgKICAgICAgICAgIyBtZW1iZXJfZGVzY3JpcHRvciAoZGVzY3JpcHRvciBvYmplY3QpCiAgICAgICAgIGltcG9ydCBkYXRldGltZQotICAgICAgICBjaGVjayhkYXRldGltZS50aW1lZGVsdGEuZGF5cywgc2l6ZShoICsgJzJQUCcpKQorICAgICAgICBjaGVjayhkYXRldGltZS50aW1lZGVsdGEuZGF5cywgc2l6ZShoICsgJzNQUCcpKQogICAgICAgICAjIGdldHNldF9kZXNjcmlwdG9yIChkZXNjcmlwdG9yIG9iamVjdCkKICAgICAgICAgaW1wb3J0IGNvbGxlY3Rpb25zCi0gICAgICAgIGNoZWNrKGNvbGxlY3Rpb25zLmRlZmF1bHRkaWN0LmRlZmF1bHRfZmFjdG9yeSwgc2l6ZShoICsgJzJQUCcpKQorICAgICAgICBjaGVjayhjb2xsZWN0aW9ucy5kZWZhdWx0ZGljdC5kZWZhdWx0X2ZhY3RvcnksIHNpemUoaCArICczUFAnKSkKICAgICAgICAgIyB3cmFwcGVyX2Rlc2NyaXB0b3IgKGRlc2NyaXB0b3Igb2JqZWN0KQotICAgICAgICBjaGVjayhpbnQuX19hZGRfXywgc2l6ZShoICsgJzJQMlAnKSkKKyAgICAgICAgY2hlY2soaW50Ll9fYWRkX18sIHNpemUoaCArICczUDJQJykpCiAgICAgICAgICMgbWV0aG9kLXdyYXBwZXIgKGRlc2NyaXB0b3Igb2JqZWN0KQogICAgICAgICBjaGVjayh7fS5fX2l0ZXJfXywgc2l6ZShoICsgJzJQJykpCiAgICAgICAgICMgZGljdApAQCAtNzIwLDEwICs3MzAsMTAgQEAKICAgICAgICAgbmZyZWVzID0gbGVuKHguZl9jb2RlLmNvX2ZyZWV2YXJzKQogICAgICAgICBleHRyYXMgPSB4LmZfY29kZS5jb19zdGFja3NpemUgKyB4LmZfY29kZS5jb19ubG9jYWxzICtcCiAgICAgICAgICAgICAgICAgICBuY2VsbHMgKyBuZnJlZXMgLSAxCi0gICAgICAgIGNoZWNrKHgsIHNpemUodmggKyAnMTJQM2knICsgQ09fTUFYQkxPQ0tTKiczaScgKyAnUCcgKyBleHRyYXMqJ1AnKSkKKyAgICAgICAgY2hlY2soeCwgc2l6ZSh2aCArICcxM1AzaScgKyBDT19NQVhCTE9DS1MqJzNpJyArICdQJyArIGV4dHJhcyonUCcpKQogICAgICAgICAjIGZ1bmN0aW9uCiAgICAgICAgIGRlZiBmdW5jKCk6IHBhc3MKLSAgICAgICAgY2hlY2soZnVuYywgc2l6ZShoICsgJzExUCcpKQorICAgICAgICBjaGVjayhmdW5jLCBzaXplKGggKyAnMTJQJykpCiAgICAgICAgIGNsYXNzIGMoKToKICAgICAgICAgICAgIEBzdGF0aWNtZXRob2QKICAgICAgICAgICAgIGRlZiBmb28oKToKQEAgLTczMiw5ICs3NDIsOSBAQAogICAgICAgICAgICAgZGVmIGJhcihjbHMpOgogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgICMgc3RhdGljbWV0aG9kCi0gICAgICAgICAgICBjaGVjayhmb28sIHNpemUoaCArICdQJykpCisgICAgICAgICAgICBjaGVjayhmb28sIHNpemUoaCArICdQUCcpKQogICAgICAgICAgICAgIyBjbGFzc21ldGhvZAotICAgICAgICAgICAgY2hlY2soYmFyLCBzaXplKGggKyAnUCcpKQorICAgICAgICAgICAgY2hlY2soYmFyLCBzaXplKGggKyAnUFAnKSkKICAgICAgICAgIyBnZW5lcmF0b3IKICAgICAgICAgZGVmIGdldF9nZW4oKTogeWllbGQgMQogICAgICAgICBjaGVjayhnZXRfZ2VuKCksIHNpemUoaCArICdQaTJQJykpCkBAIC03NjMsOCArNzczLDggQEAKICAgICAgICAgY2hlY2soaW50KFB5TG9uZ19CQVNFKSwgc2l6ZSh2aCkgKyAyKnNlbGYubG9uZ2RpZ2l0KQogICAgICAgICBjaGVjayhpbnQoUHlMb25nX0JBU0UqKjItMSksIHNpemUodmgpICsgMipzZWxmLmxvbmdkaWdpdCkKICAgICAgICAgY2hlY2soaW50KFB5TG9uZ19CQVNFKioyKSwgc2l6ZSh2aCkgKyAzKnNlbGYubG9uZ2RpZ2l0KQotICAgICAgICAjIG1lbW9yeQotICAgICAgICBjaGVjayhtZW1vcnl2aWV3KGInJyksIHNpemUoaCArICdQUDJQMmk3UCcpKQorICAgICAgICAjIG1lbW9yeXZpZXcKKyAgICAgICAgY2hlY2sobWVtb3J5dmlldyhiJycpLCBzaXplKGggKyAnUFBpUDRQMmk1UDNjUCcpKQogICAgICAgICAjIG1vZHVsZQogICAgICAgICBjaGVjayh1bml0dGVzdCwgc2l6ZShoICsgJzNQJykpCiAgICAgICAgICMgTm9uZQpAQCAtODIxLDE5ICs4MzEsNDEgQEAKICAgICAgICAgIyB0eXBlCiAgICAgICAgICMgKFB5VHlwZU9iamVjdCArIFB5TnVtYmVyTWV0aG9kcyArIFB5TWFwcGluZ01ldGhvZHMgKwogICAgICAgICAjICBQeVNlcXVlbmNlTWV0aG9kcyArIFB5QnVmZmVyUHJvY3MpCi0gICAgICAgIHMgPSBzaXplKHZoICsgJ1AyUDE1UGw0UFA5UFAxMVBJJykgKyBzaXplKCcxNlBpMTdQIDNQIDEwUCAyUCAyUCcpCisgICAgICAgIHMgPSBzaXplKHZoICsgJ1AyUDE1UGw0UFA5UFAxMVBJJykgKyBzaXplKCcxNlBpMTdQIDNQIDEwUCAyUCAzUCcpCiAgICAgICAgIGNoZWNrKGludCwgcykKICAgICAgICAgIyBjbGFzcwogICAgICAgICBjbGFzcyBuZXdzdHlsZWNsYXNzKG9iamVjdCk6IHBhc3MKICAgICAgICAgY2hlY2sobmV3c3R5bGVjbGFzcywgcykKICAgICAgICAgIyB1bmljb2RlCi0gICAgICAgIHVzaXplID0gbGVuKCdcMCcuZW5jb2RlKCd1bmljb2RlLWludGVybmFsJykpCi0gICAgICAgIHNhbXBsZXMgPSBbJycsICcxJyoxMDBdCi0gICAgICAgICMgd2UgbmVlZCB0byB0ZXN0IGZvciBib3RoIHNpemVzLCBiZWNhdXNlIHdlIGRvbid0IGtub3cgaWYgdGhlIHN0cmluZwotICAgICAgICAjIGhhcyBiZWVuIGNhY2hlZAorICAgICAgICAjIGVhY2ggdHVwbGUgY29udGFpbnMgYSBzdHJpbmcgYW5kIGl0cyBleHBlY3RlZCBjaGFyYWN0ZXIgc2l6ZQorICAgICAgICAjIGRvbid0IHB1dCBhbnkgc3RhdGljIHN0cmluZ3MgaGVyZSwgYXMgdGhleSBtYXkgY29udGFpbgorICAgICAgICAjIHdjaGFyX3Qgb3IgVVRGLTggcmVwcmVzZW50YXRpb25zCisgICAgICAgIHNhbXBsZXMgPSBbJzEnKjEwMCwgJ1x4ZmYnKjUwLAorICAgICAgICAgICAgICAgICAgICdcdTAxMDAnKjQwLCAnXHVmZmZmJyoxMDAsCisgICAgICAgICAgICAgICAgICAgJ1xVMDAwMTAwMDAnKjMwLCAnXFUwMDEwZmZmZicqMTAwXQorICAgICAgICBhc2NpaWZpZWxkcyA9IGggKyAiUFBpUCIKKyAgICAgICAgY29tcGFjdGZpZWxkcyA9IGFzY2lpZmllbGRzICsgIlBQUCIKKyAgICAgICAgdW5pY29kZWZpZWxkcyA9IGNvbXBhY3RmaWVsZHMgKyAiUCIKICAgICAgICAgZm9yIHMgaW4gc2FtcGxlczoKLSAgICAgICAgICAgIGJhc2ljc2l6ZSA9ICBzaXplKGggKyAnUFBQaVAnKSArIHVzaXplICogKGxlbihzKSArIDEpCi0gICAgICAgICAgICBjaGVjayhzLCBiYXNpY3NpemUpCisgICAgICAgICAgICBtYXhjaGFyID0gb3JkKG1heChzKSkKKyAgICAgICAgICAgIGlmIG1heGNoYXIgPCAxMjg6CisgICAgICAgICAgICAgICAgTCA9IHNpemUoYXNjaWlmaWVsZHMpICsgbGVuKHMpICsgMQorICAgICAgICAgICAgZWxpZiBtYXhjaGFyIDwgMjU2OgorICAgICAgICAgICAgICAgIEwgPSBzaXplKGNvbXBhY3RmaWVsZHMpICsgbGVuKHMpICsgMQorICAgICAgICAgICAgZWxpZiBtYXhjaGFyIDwgNjU1MzY6CisgICAgICAgICAgICAgICAgTCA9IHNpemUoY29tcGFjdGZpZWxkcykgKyAyKihsZW4ocykgKyAxKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBMID0gc2l6ZShjb21wYWN0ZmllbGRzKSArIDQqKGxlbihzKSArIDEpCisgICAgICAgICAgICBjaGVjayhzLCBMKQorICAgICAgICAjIHZlcmlmeSB0aGF0IHRoZSBVVEYtOCBzaXplIGlzIGFjY291bnRlZCBmb3IKKyAgICAgICAgcyA9IGNocigweDQwMDApICAgIyA0IGJ5dGVzIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbgorICAgICAgICBjaGVjayhzLCBzaXplKGNvbXBhY3RmaWVsZHMpICsgNCkKKyAgICAgICAgIyBjb21waWxlKCkgd2lsbCB0cmlnZ2VyIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBVVEYtOAorICAgICAgICAjIHJlcHJlc2VudGF0aW9uIGFzIGEgc2lkZSBlZmZlY3QKKyAgICAgICAgY29tcGlsZShzLCAiPHN0ZGluPiIsICJldmFsIikKKyAgICAgICAgY2hlY2socywgc2l6ZShjb21wYWN0ZmllbGRzKSArIDQgKyA0KQorICAgICAgICAjIFRPRE86IGFkZCBjaGVjayB0aGF0IGZvcmNlcyB0aGUgcHJlc2VuY2Ugb2Ygd2NoYXJfdCByZXByZXNlbnRhdGlvbgorICAgICAgICAjIFRPRE86IGFkZCBjaGVjayB0aGF0IGZvcmNlcyBsYXlvdXQgb2YgdW5pY29kZWZpZWxkcwogICAgICAgICAjIHdlYWtyZWYKICAgICAgICAgaW1wb3J0IHdlYWtyZWYKICAgICAgICAgY2hlY2sod2Vha3JlZi5yZWYoaW50KSwgc2l6ZShoICsgJzJQbDJQJykpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N5c19zZXR0cmFjZS5weSBiL0xpYi90ZXN0L3Rlc3Rfc3lzX3NldHRyYWNlLnB5CmluZGV4IGNmMzk3NmMuLjU3OGU5NWQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3lzX3NldHRyYWNlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3lzX3NldHRyYWNlLnB5CkBAIC0yNTEsNiArMjUxLDcgQEAKICAgICBkZWYgc2V0VXAoc2VsZik6CiAgICAgICAgIHNlbGYudXNpbmdfZ2MgPSBnYy5pc2VuYWJsZWQoKQogICAgICAgICBnYy5kaXNhYmxlKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5zZXR0cmFjZSwgc3lzLmdldHRyYWNlKCkpCiAKICAgICBkZWYgdGVhckRvd24oc2VsZik6CiAgICAgICAgIGlmIHNlbGYudXNpbmdfZ2M6CkBAIC0zODksNiArMzkwLDkgQEAKIAogCiBjbGFzcyBSYWlzaW5nVHJhY2VGdW5jVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5zZXR0cmFjZSwgc3lzLmdldHRyYWNlKCkpCisKICAgICBkZWYgdHJhY2Uoc2VsZiwgZnJhbWUsIGV2ZW50LCBhcmcpOgogICAgICAgICAiIiJBIHRyYWNlIGZ1bmN0aW9uIHRoYXQgcmFpc2VzIGFuIGV4Y2VwdGlvbiBpbiByZXNwb25zZSB0byBhCiAgICAgICAgIHNwZWNpZmljIHRyYWNlIGV2ZW50LiIiIgpAQCAtNjg4LDYgKzY5MiwxMCBAQAogCiAKIGNsYXNzIEp1bXBUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnNldHRyYWNlLCBzeXMuZ2V0dHJhY2UoKSkKKyAgICAgICAgc3lzLnNldHRyYWNlKE5vbmUpCisKICAgICBkZWYgY29tcGFyZV9qdW1wX291dHB1dChzZWxmLCBleHBlY3RlZCwgcmVjZWl2ZWQpOgogICAgICAgICBpZiByZWNlaXZlZCAhPSBleHBlY3RlZDoKICAgICAgICAgICAgIHNlbGYuZmFpbCggIk91dHB1dHMgZG9uJ3QgbWF0Y2g6XG4iICsKQEAgLTczOSw2ICs3NDcsOCBAQAogICAgIGRlZiB0ZXN0XzE4X25vX2p1bXBfdG9fbm9uX2ludGVnZXJzKHNlbGYpOgogICAgICAgICBzZWxmLnJ1bl90ZXN0KG5vX2p1bXBfdG9fbm9uX2ludGVnZXJzKQogICAgIGRlZiB0ZXN0XzE5X25vX2p1bXBfd2l0aG91dF90cmFjZV9mdW5jdGlvbihzZWxmKToKKyAgICAgICAgIyBNdXN0IHNldCBzeXMuc2V0dHJhY2UoTm9uZSkgaW4gc2V0VXAoKSwgZWxzZSBjb25kaXRpb24gaXMgbm90CisgICAgICAgICMgdHJpZ2dlcmVkLgogICAgICAgICBub19qdW1wX3dpdGhvdXRfdHJhY2VfZnVuY3Rpb24oKQogCiAgICAgZGVmIHRlc3RfMjBfbGFyZ2VfZnVuY3Rpb24oc2VsZik6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N5c2NvbmZpZy5weSBiL0xpYi90ZXN0L3Rlc3Rfc3lzY29uZmlnLnB5CmluZGV4IGFhYmI2ZmEuLmEyZTZmYmMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3lzY29uZmlnLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3lzY29uZmlnLnB5CkBAIC0xLDI1ICsxLDIzIEBACi0iIiJUZXN0cyBmb3Igc3lzY29uZmlnLiIiIgotCiBpbXBvcnQgdW5pdHRlc3QKIGltcG9ydCBzeXMKIGltcG9ydCBvcwogaW1wb3J0IHN1YnByb2Nlc3MKIGltcG9ydCBzaHV0aWwKLWZyb20gY29weSBpbXBvcnQgY29weSwgZGVlcGNvcHkKK2Zyb20gY29weSBpbXBvcnQgY29weQogCiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgKHJ1bl91bml0dGVzdCwgVEVTVEZOLCB1bmxpbmssCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhcHR1cmVkX3N0ZG91dCwgc2tpcF91bmxlc3Nfc3ltbGluaykKIAogaW1wb3J0IHN5c2NvbmZpZwogZnJvbSBzeXNjb25maWcgaW1wb3J0IChnZXRfcGF0aHMsIGdldF9wbGF0Zm9ybSwgZ2V0X2NvbmZpZ192YXJzLAotICAgICAgICAgICAgICAgICAgICAgICBnZXRfcGF0aCwgZ2V0X3BhdGhfbmFtZXMsIF9JTlNUQUxMX1NDSEVNRVMsCisgICAgICAgICAgICAgICAgICAgICAgIGdldF9wYXRoLCBnZXRfcGF0aF9uYW1lcywgX1NDSEVNRVMsCiAgICAgICAgICAgICAgICAgICAgICAgIF9nZXRfZGVmYXVsdF9zY2hlbWUsIF9leHBhbmRfdmFycywKICAgICAgICAgICAgICAgICAgICAgICAgZ2V0X3NjaGVtZV9uYW1lcywgZ2V0X2NvbmZpZ192YXIsIF9tYWluKQogCisKIGNsYXNzIFRlc3RTeXNDb25maWcodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHNldFVwKHNlbGYpOgotICAgICAgICAiIiJNYWtlIGEgY29weSBvZiBzeXMucGF0aCIiIgogICAgICAgICBzdXBlcihUZXN0U3lzQ29uZmlnLCBzZWxmKS5zZXRVcCgpCiAgICAgICAgIHNlbGYuc3lzX3BhdGggPSBzeXMucGF0aFs6XQogICAgICAgICAjIHBhdGNoaW5nIG9zLnVuYW1lCkBAIC0zOCwxMSArMzYsMTcgQEAKICAgICAgICAgc2VsZi5qb2luID0gb3MucGF0aC5qb2luCiAgICAgICAgIHNlbGYuaXNhYnMgPSBvcy5wYXRoLmlzYWJzCiAgICAgICAgIHNlbGYuc3BsaXRkcml2ZSA9IG9zLnBhdGguc3BsaXRkcml2ZQotICAgICAgICBzZWxmLl9jb25maWdfdmFycyA9IGNvcHkoc3lzY29uZmlnLl9DT05GSUdfVkFSUykKLSAgICAgICAgc2VsZi5vbGRfZW52aXJvbiA9IGRlZXBjb3B5KG9zLmVudmlyb24pCisgICAgICAgIHNlbGYuX2NvbmZpZ192YXJzID0gc3lzY29uZmlnLl9DT05GSUdfVkFSUworICAgICAgICBzeXNjb25maWcuX0NPTkZJR19WQVJTID0gY29weShzeXNjb25maWcuX0NPTkZJR19WQVJTKQorICAgICAgICBzZWxmLl9hZGRlZF9lbnZ2YXJzID0gW10KKyAgICAgICAgc2VsZi5fY2hhbmdlZF9lbnZ2YXJzID0gW10KKyAgICAgICAgZm9yIHZhciBpbiAoJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCcsICdQQVRIJyk6CisgICAgICAgICAgICBpZiB2YXIgaW4gb3MuZW52aXJvbjoKKyAgICAgICAgICAgICAgICBzZWxmLl9jaGFuZ2VkX2VudnZhcnMuYXBwZW5kKCh2YXIsIG9zLmVudmlyb25bdmFyXSkpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuX2FkZGVkX2VudnZhcnMuYXBwZW5kKHZhcikKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKLSAgICAgICAgIiIiUmVzdG9yZSBzeXMucGF0aCIiIgogICAgICAgICBzeXMucGF0aFs6XSA9IHNlbGYuc3lzX3BhdGgKICAgICAgICAgc2VsZi5fY2xlYW51cF90ZXN0Zm4oKQogICAgICAgICBpZiBzZWxmLnVuYW1lIGlzIG5vdCBOb25lOgpAQCAtNTYsMTQgKzYwLDExIEBACiAgICAgICAgIG9zLnBhdGguam9pbiA9IHNlbGYuam9pbgogICAgICAgICBvcy5wYXRoLmlzYWJzID0gc2VsZi5pc2FicwogICAgICAgICBvcy5wYXRoLnNwbGl0ZHJpdmUgPSBzZWxmLnNwbGl0ZHJpdmUKLSAgICAgICAgc3lzY29uZmlnLl9DT05GSUdfVkFSUyA9IGNvcHkoc2VsZi5fY29uZmlnX3ZhcnMpCi0gICAgICAgIGZvciBrZXksIHZhbHVlIGluIHNlbGYub2xkX2Vudmlyb24uaXRlbXMoKToKLSAgICAgICAgICAgIGlmIG9zLmVudmlyb24uZ2V0KGtleSkgIT0gdmFsdWU6Ci0gICAgICAgICAgICAgICAgb3MuZW52aXJvbltrZXldID0gdmFsdWUKLQotICAgICAgICBmb3Iga2V5IGluIGxpc3Qob3MuZW52aXJvbi5rZXlzKCkpOgotICAgICAgICAgICAgaWYga2V5IG5vdCBpbiBzZWxmLm9sZF9lbnZpcm9uOgotICAgICAgICAgICAgICAgIGRlbCBvcy5lbnZpcm9uW2tleV0KKyAgICAgICAgc3lzY29uZmlnLl9DT05GSUdfVkFSUyA9IHNlbGYuX2NvbmZpZ192YXJzCisgICAgICAgIGZvciB2YXIsIHZhbHVlIGluIHNlbGYuX2NoYW5nZWRfZW52dmFyczoKKyAgICAgICAgICAgIG9zLmVudmlyb25bdmFyXSA9IHZhbHVlCisgICAgICAgIGZvciB2YXIgaW4gc2VsZi5fYWRkZWRfZW52dmFyczoKKyAgICAgICAgICAgIG9zLmVudmlyb24ucG9wKHZhciwgTm9uZSkKIAogICAgICAgICBzdXBlcihUZXN0U3lzQ29uZmlnLCBzZWxmKS50ZWFyRG93bigpCiAKQEAgLTgxLDI3ICs4MiwyNSBAQAogICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShwYXRoKQogCiAgICAgZGVmIHRlc3RfZ2V0X3BhdGhfbmFtZXMoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0X3BhdGhfbmFtZXMoKSwgc3lzY29uZmlnLl9TQ0hFTUVfS0VZUykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRfcGF0aF9uYW1lcygpLCBfU0NIRU1FUy5vcHRpb25zKCdwb3NpeF9wcmVmaXgnKSkKIAogICAgIGRlZiB0ZXN0X2dldF9wYXRocyhzZWxmKToKICAgICAgICAgc2NoZW1lID0gZ2V0X3BhdGhzKCkKICAgICAgICAgZGVmYXVsdF9zY2hlbWUgPSBfZ2V0X2RlZmF1bHRfc2NoZW1lKCkKICAgICAgICAgd2FudGVkID0gX2V4cGFuZF92YXJzKGRlZmF1bHRfc2NoZW1lLCBOb25lKQotICAgICAgICB3YW50ZWQgPSBsaXN0KHdhbnRlZC5pdGVtcygpKQotICAgICAgICB3YW50ZWQuc29ydCgpCi0gICAgICAgIHNjaGVtZSA9IGxpc3Qoc2NoZW1lLml0ZW1zKCkpCi0gICAgICAgIHNjaGVtZS5zb3J0KCkKKyAgICAgICAgd2FudGVkID0gc29ydGVkKHdhbnRlZC5pdGVtcygpKQorICAgICAgICBzY2hlbWUgPSBzb3J0ZWQoc2NoZW1lLml0ZW1zKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2NoZW1lLCB3YW50ZWQpCiAKICAgICBkZWYgdGVzdF9nZXRfcGF0aChzZWxmKToKLSAgICAgICAgIyB4eHggbWFrZSByZWFsIHRlc3RzIGhlcmUKLSAgICAgICAgZm9yIHNjaGVtZSBpbiBfSU5TVEFMTF9TQ0hFTUVTOgotICAgICAgICAgICAgZm9yIG5hbWUgaW4gX0lOU1RBTExfU0NIRU1FU1tzY2hlbWVdOgorICAgICAgICAjIFhYWCBtYWtlIHJlYWwgdGVzdHMgaGVyZQorICAgICAgICBmb3Igc2NoZW1lIGluIF9TQ0hFTUVTOgorICAgICAgICAgICAgZm9yIG5hbWUgaW4gX1NDSEVNRVNbc2NoZW1lXToKICAgICAgICAgICAgICAgICByZXMgPSBnZXRfcGF0aChuYW1lLCBzY2hlbWUpCiAKICAgICBkZWYgdGVzdF9nZXRfY29uZmlnX3ZhcnMoc2VsZik6CiAgICAgICAgIGN2YXJzID0gZ2V0X2NvbmZpZ192YXJzKCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2UoY3ZhcnMsIGRpY3QpKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoY3ZhcnMsIGRpY3QpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjdmFycykKIAogICAgIGRlZiB0ZXN0X2dldF9wbGF0Zm9ybShzZWxmKToKQEAgLTEzNSw4ICsxMzQsNiBAQAogICAgICAgICAgICAgICAgICAgICgnRGFyd2luIEtlcm5lbCBWZXJzaW9uIDguMTEuMTogJwogICAgICAgICAgICAgICAgICAgICAnV2VkIE9jdCAxMCAxODoyMzoyOCBQRFQgMjAwNzsgJwogICAgICAgICAgICAgICAgICAgICAncm9vdDp4bnUtNzkyLjI1LjIwfjEvUkVMRUFTRV9JMzg2JyksICdQb3dlclBDJykpCi0KLQogICAgICAgICBnZXRfY29uZmlnX3ZhcnMoKVsnTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUJ10gPSAnMTAuMycKIAogICAgICAgICBnZXRfY29uZmlnX3ZhcnMoKVsnQ0ZMQUdTJ10gPSAoJy1mbm8tc3RyaWN0LWFsaWFzaW5nIC1ETkRFQlVHIC1nICcKQEAgLTE1MSw3ICsxNDgsNiBAQAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgc3lzLm1heHNpemUgPSBtYXhpbnQKIAotCiAgICAgICAgIHNlbGYuX3NldF91bmFtZSgoJ0RhcndpbicsICdtYWN6aWFkZScsICc4LjExLjEnLAogICAgICAgICAgICAgICAgICAgICgnRGFyd2luIEtlcm5lbCBWZXJzaW9uIDguMTEuMTogJwogICAgICAgICAgICAgICAgICAgICAnV2VkIE9jdCAxMCAxODoyMzoyOCBQRFQgMjAwNzsgJwpAQCAtMjA5LDkgKzIwNSw5IEBACiAgICAgICAgICAgICBnZXRfY29uZmlnX3ZhcnMoKVsnQ0ZMQUdTJ10gPSAoJy1hcmNoICVzIC1pc3lzcm9vdCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy9EZXZlbG9wZXIvU0RLcy9NYWNPU1gxMC40dS5zZGsgICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1jb21tb24gJwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICctZHluYW1pYyAtRE5ERUJVRyAtZyAtTzMnJShhcmNoLCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy1keW5hbWljIC1ETkRFQlVHIC1nIC1PMycgJSBhcmNoKQogCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldF9wbGF0Zm9ybSgpLCAnbWFjb3N4LTEwLjQtJXMnJShhcmNoLCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldF9wbGF0Zm9ybSgpLCAnbWFjb3N4LTEwLjQtJXMnICUgYXJjaCkKIAogICAgICAgICAjIGxpbnV4IGRlYmlhbiBzYXJnZQogICAgICAgICBvcy5uYW1lID0gJ3Bvc2l4JwpAQCAtMjM5LDggKzIzNSw4IEBACiAgICAgICAgICMgT24gV2luZG93cywgdGhlIEVYRSBuZWVkcyB0byBrbm93IHdoZXJlIHB5dGhvblhZLmRsbCBpcyBhdCBzbyB3ZSBoYXZlCiAgICAgICAgICMgdG8gYWRkIHRoZSBkaXJlY3RvcnkgdG8gdGhlIHBhdGguCiAgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiOgotICAgICAgICAgICAgb3MuZW52aXJvblsiUGF0aCJdID0gInt9O3t9Ii5mb3JtYXQoCi0gICAgICAgICAgICAgICAgb3MucGF0aC5kaXJuYW1lKHN5cy5leGVjdXRhYmxlKSwgb3MuZW52aXJvblsiUGF0aCJdKQorICAgICAgICAgICAgb3MuZW52aXJvblsiUEFUSCJdID0gInt9O3t9Ii5mb3JtYXQoCisgICAgICAgICAgICAgICAgb3MucGF0aC5kaXJuYW1lKHN5cy5leGVjdXRhYmxlKSwgb3MuZW52aXJvblsiUEFUSCJdKQogCiAgICAgICAgICMgSXNzdWUgNzg4MAogICAgICAgICBkZWYgZ2V0KHB5dGhvbik6CkBAIC0yODYsNyArMjgyLDYgQEAKIAogICAgICAgICBzZWxmLmFzc2VydEluKGxkZmxhZ3MsIGxkc2hhcmVkKQogCi0KICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gImRhcndpbiIsICJ0ZXN0IG9ubHkgcmVsZXZhbnQgb24gTWFjT1NYIikKICAgICBkZWYgdGVzdF9wbGF0Zm9ybV9pbl9zdWJwcm9jZXNzKHNlbGYpOgogICAgICAgICBteV9wbGF0Zm9ybSA9IHN5c2NvbmZpZy5nZXRfcGxhdGZvcm0oKQpAQCAtMzEyLDI4ICszMDcsMjkgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGF0dXMsIDApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXlfcGxhdGZvcm0sIHRlc3RfcGxhdGZvcm0pCiAKLQogICAgICAgICAjIFRlc3Qgd2l0aCBNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQgaW4gdGhlIGVudmlyb25tZW50LCBhbmQKICAgICAgICAgIyB1c2luZyBhIHZhbHVlIHRoYXQgaXMgdW5saWtlbHkgdG8gYmUgdGhlIGRlZmF1bHQgb25lLgogICAgICAgICBlbnYgPSBvcy5lbnZpcm9uLmNvcHkoKQogICAgICAgICBlbnZbJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCddID0gJzEwLjEnCiAKLSAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oWwotICAgICAgICAgICAgICAgIHN5cy5leGVjdXRhYmxlLCAnLWMnLAotICAgICAgICAgICAgICAgICdpbXBvcnQgc3lzY29uZmlnOyBwcmludChzeXNjb25maWcuZ2V0X3BsYXRmb3JtKCkpJywKLSAgICAgICAgICAgIF0sCi0gICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLAotICAgICAgICAgICAgc3RkZXJyPW9wZW4oJy9kZXYvbnVsbCcpLAotICAgICAgICAgICAgZW52PWVudikKLSAgICAgICAgdGVzdF9wbGF0Zm9ybSA9IHAuY29tbXVuaWNhdGUoKVswXS5zdHJpcCgpCi0gICAgICAgIHRlc3RfcGxhdGZvcm0gPSB0ZXN0X3BsYXRmb3JtLmRlY29kZSgndXRmLTgnKQotICAgICAgICBzdGF0dXMgPSBwLndhaXQoKQorICAgICAgICB3aXRoIG9wZW4oJy9kZXYvbnVsbCcpIGFzIGRldl9udWxsOgorICAgICAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oWworICAgICAgICAgICAgICAgICAgICBzeXMuZXhlY3V0YWJsZSwgJy1jJywKKyAgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCBzeXNjb25maWc7IHByaW50KHN5c2NvbmZpZy5nZXRfcGxhdGZvcm0oKSknLAorICAgICAgICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwKKyAgICAgICAgICAgICAgICBzdGRlcnI9ZGV2X251bGwsCisgICAgICAgICAgICAgICAgZW52PWVudikKKyAgICAgICAgICAgIHRlc3RfcGxhdGZvcm0gPSBwLmNvbW11bmljYXRlKClbMF0uc3RyaXAoKQorICAgICAgICAgICAgdGVzdF9wbGF0Zm9ybSA9IHRlc3RfcGxhdGZvcm0uZGVjb2RlKCd1dGYtOCcpCisgICAgICAgICAgICBzdGF0dXMgPSBwLndhaXQoKQogCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RhdHVzLCAwKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG15X3BsYXRmb3JtLCB0ZXN0X3BsYXRmb3JtKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGF0dXMsIDApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG15X3BsYXRmb3JtLCB0ZXN0X3BsYXRmb3JtKQogCiAKIGNsYXNzIE1ha2VmaWxlVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorCiAgICAgQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnd2luJyksCiAgICAgICAgICAgICAgICAgICAgICAnVGVzdCBpcyBub3QgV2luZG93cyBjb21wYXRpYmxlJykKICAgICBkZWYgdGVzdF9nZXRfbWFrZWZpbGVfZmlsZW5hbWUoc2VsZik6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3RhcmZpbGUucHkgYi9MaWIvdGVzdC90ZXN0X3RhcmZpbGUucHkKaW5kZXggMTc1N2U0NC4uY2U1NDNkZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF90YXJmaWxlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdGFyZmlsZS5weQpAQCAtMjEsNiArMjEsMTAgQEAKICAgICBpbXBvcnQgYnoyCiBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgYnoyID0gTm9uZQordHJ5OgorICAgIGltcG9ydCBsem1hCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgbHptYSA9IE5vbmUKIAogZGVmIG1kNXN1bShkYXRhKToKICAgICByZXR1cm4gbWQ1KGRhdGEpLmhleGRpZ2VzdCgpCkBAIC0yOSw2ICszMyw3IEBACiB0YXJuYW1lID0gc3VwcG9ydC5maW5kZmlsZSgidGVzdHRhci50YXIiKQogZ3ppcG5hbWUgPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgInRlc3R0YXIudGFyLmd6IikKIGJ6Mm5hbWUgPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgInRlc3R0YXIudGFyLmJ6MiIpCit4em5hbWUgPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgInRlc3R0YXIudGFyLnh6IikKIHRtcG5hbWUgPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgInRtcC50YXIiKQogCiBtZDVfcmVndHlwZSA9ICI2NWY0NzdjODE4YWQ5ZTE1ZjdmZWFiMGM2ZDM3NzQyZiIKQEAgLTgyLDcgKzg3LDcgQEAKICAgICBkZWYgdGVzdF9maWxlb2JqX2l0ZXIoc2VsZik6CiAgICAgICAgIHNlbGYudGFyLmV4dHJhY3QoInVzdGFyL3JlZ3R5cGUiLCBURU1QRElSKQogICAgICAgICB0YXJpbmZvID0gc2VsZi50YXIuZ2V0bWVtYmVyKCJ1c3Rhci9yZWd0eXBlIikKLSAgICAgICAgd2l0aCBvcGVuKG9zLnBhdGguam9pbihURU1QRElSLCAidXN0YXIvcmVndHlwZSIpLCAiclUiKSBhcyBmb2JqMToKKyAgICAgICAgd2l0aCBvcGVuKG9zLnBhdGguam9pbihURU1QRElSLCAidXN0YXIvcmVndHlwZSIpLCAiciIpIGFzIGZvYmoxOgogICAgICAgICAgICAgbGluZXMxID0gZm9iajEucmVhZGxpbmVzKCkKICAgICAgICAgZm9iajIgPSBzZWxmLnRhci5leHRyYWN0ZmlsZSh0YXJpbmZvKQogICAgICAgICB0cnk6CkBAIC0yMDEsMTMgKzIwNiwxNSBAQAogICAgICAgICAgICAgX29wZW4gPSBnemlwLkd6aXBGaWxlCiAgICAgICAgIGVsaWYgc2VsZi5tb2RlLmVuZHN3aXRoKCI6YnoyIik6CiAgICAgICAgICAgICBfb3BlbiA9IGJ6Mi5CWjJGaWxlCisgICAgICAgIGVsaWYgc2VsZi5tb2RlLmVuZHN3aXRoKCI6eHoiKToKKyAgICAgICAgICAgIF9vcGVuID0gbHptYS5MWk1BRmlsZQogICAgICAgICBlbHNlOgotICAgICAgICAgICAgX29wZW4gPSBvcGVuCisgICAgICAgICAgICBfb3BlbiA9IGlvLkZpbGVJTwogCiAgICAgICAgIGZvciBjaGFyIGluIChiJ1wwJywgYidhJyk6CiAgICAgICAgICAgICAjIFRlc3QgaWYgRU9GSGVhZGVyRXJyb3IgKCdcMCcpIGFuZCBJbnZhbGlkSGVhZGVyRXJyb3IgKCdhJykKICAgICAgICAgICAgICMgYXJlIGlnbm9yZWQgY29ycmVjdGx5LgotICAgICAgICAgICAgd2l0aCBfb3Blbih0bXBuYW1lLCAid2IiKSBhcyBmb2JqOgorICAgICAgICAgICAgd2l0aCBfb3Blbih0bXBuYW1lLCAidyIpIGFzIGZvYmo6CiAgICAgICAgICAgICAgICAgZm9iai53cml0ZShjaGFyICogMTAyNCkKICAgICAgICAgICAgICAgICBmb2JqLndyaXRlKHRhcmZpbGUuVGFySW5mbygiZm9vIikudG9idWYoKSkKIApAQCAtMjIyLDYgKzIyOSwxMCBAQAogY2xhc3MgTWlzY1JlYWRUZXN0KENvbW1vblJlYWRUZXN0KToKIAogICAgIGRlZiB0ZXN0X25vX25hbWVfYXJndW1lbnQoc2VsZik6CisgICAgICAgIGlmIHNlbGYubW9kZS5lbmRzd2l0aCgoImJ6MiIsICJ4eiIpKToKKyAgICAgICAgICAgICMgQloyRmlsZSBhbmQgTFpNQUZpbGUgaGF2ZSBubyBuYW1lIGF0dHJpYnV0ZS4KKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm5vIG5hbWUgYXR0cmlidXRlIikKKwogICAgICAgICB3aXRoIG9wZW4oc2VsZi50YXJuYW1lLCAicmIiKSBhcyBmb2JqOgogICAgICAgICAgICAgdGFyID0gdGFyZmlsZS5vcGVuKGZpbGVvYmo9Zm9iaiwgbW9kZT1zZWxmLm1vZGUpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRhci5uYW1lLCBvcy5wYXRoLmFic3BhdGgoZm9iai5uYW1lKSkKQEAgLTI2MiwxMCArMjczLDEyIEBACiAgICAgICAgICAgICBfb3BlbiA9IGd6aXAuR3ppcEZpbGUKICAgICAgICAgZWxpZiBzZWxmLm1vZGUuZW5kc3dpdGgoIjpiejIiKToKICAgICAgICAgICAgIF9vcGVuID0gYnoyLkJaMkZpbGUKKyAgICAgICAgZWxpZiBzZWxmLm1vZGUuZW5kc3dpdGgoIjp4eiIpOgorICAgICAgICAgICAgX29wZW4gPSBsem1hLkxaTUFGaWxlCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBfb3BlbiA9IG9wZW4KLSAgICAgICAgZm9iaiA9IF9vcGVuKHNlbGYudGFybmFtZSwgInJiIikKLSAgICAgICAgdHJ5OgorICAgICAgICAgICAgX29wZW4gPSBpby5GaWxlSU8KKworICAgICAgICB3aXRoIF9vcGVuKHNlbGYudGFybmFtZSkgYXMgZm9iajoKICAgICAgICAgICAgIGZvYmouc2VlayhvZmZzZXQpCiAKICAgICAgICAgICAgICMgVGVzdCBpZiB0aGUgdGFyZmlsZSBzdGFydHMgd2l0aCB0aGUgc2Vjb25kIG1lbWJlci4KQEAgLTI3OCw4ICsyOTEsNiBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0YXIuZXh0cmFjdGZpbGUodCkucmVhZCgpLCBkYXRhLAogICAgICAgICAgICAgICAgICAgICAic2VlayBiYWNrIGRpZCBub3Qgd29yayIpCiAgICAgICAgICAgICB0YXIuY2xvc2UoKQotICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgZm9iai5jbG9zZSgpCiAKICAgICBkZWYgdGVzdF9mYWlsX2NvbXAoc2VsZik6CiAgICAgICAgICMgRm9yIEd6aXAgYW5kIEJ6MiBUZXN0czogZmFpbCB3aXRoIGEgUmVhZEVycm9yIG9uIGFuIHVuY29tcHJlc3NlZCBmaWxlLgpAQCAtNTIzLDYgKzUzNCwxOCBAQAogICAgICAgICAgICAgdGVzdGZ1bmMoYnoybmFtZSwgInJ8KiIpCiAgICAgICAgICAgICB0ZXN0ZnVuYyhiejJuYW1lLCAicnxiejIiKQogCisgICAgICAgIGlmIGx6bWE6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh0YXJmaWxlLlJlYWRFcnJvciwgdGFyZmlsZS5vcGVuLCB0YXJuYW1lLCBtb2RlPSJyOnh6IikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHRhcmZpbGUuUmVhZEVycm9yLCB0YXJmaWxlLm9wZW4sIHRhcm5hbWUsIG1vZGU9InJ8eHoiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXModGFyZmlsZS5SZWFkRXJyb3IsIHRhcmZpbGUub3BlbiwgeHpuYW1lLCBtb2RlPSJyOiIpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh0YXJmaWxlLlJlYWRFcnJvciwgdGFyZmlsZS5vcGVuLCB4em5hbWUsIG1vZGU9InJ8IikKKworICAgICAgICAgICAgdGVzdGZ1bmMoeHpuYW1lLCAiciIpCisgICAgICAgICAgICB0ZXN0ZnVuYyh4em5hbWUsICJyOioiKQorICAgICAgICAgICAgdGVzdGZ1bmMoeHpuYW1lLCAicjp4eiIpCisgICAgICAgICAgICB0ZXN0ZnVuYyh4em5hbWUsICJyfCoiKQorICAgICAgICAgICAgdGVzdGZ1bmMoeHpuYW1lLCAicnx4eiIpCisKICAgICBkZWYgdGVzdF9kZXRlY3RfZmlsZShzZWxmKToKICAgICAgICAgc2VsZi5fdGVzdF9tb2RlcyhzZWxmLl90ZXN0ZnVuY19maWxlKQogCkBAIC03MjAsNyArNzQzLDcgQEAKICAgICAgICAgIyBSZXR1cm4gVHJ1ZSBpZiB0aGUgcGxhdGZvcm0ga25vd3MgdGhlIHN0X2Jsb2NrcyBzdGF0IGF0dHJpYnV0ZSBhbmQKICAgICAgICAgIyB1c2VzIHN0X2Jsb2NrcyB1bml0cyBvZiA1MTIgYnl0ZXMsIGFuZCBpZiB0aGUgZmlsZXN5c3RlbSBpcyBhYmxlIHRvCiAgICAgICAgICMgc3RvcmUgaG9sZXMgaW4gZmlsZXMuCi0gICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAibGludXgyIjoKKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoImxpbnV4Iik6CiAgICAgICAgICAgICAjIExpbnV4IGV2aWRlbnRpYWxseSBoYXMgNTEyIGJ5dGUgc3RfYmxvY2tzIHVuaXRzLgogICAgICAgICAgICAgbmFtZSA9IG9zLnBhdGguam9pbihURU1QRElSLCAic3BhcnNlLXRlc3QiKQogICAgICAgICAgICAgd2l0aCBvcGVuKG5hbWUsICJ3YiIpIGFzIGZvYmo6CkBAIC05MTAsNyArOTMzLDcgQEAKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZm9yIG5hbWUgaW4gKCJmb28iLCAiYmFyIiwgImJheiIpOgogICAgICAgICAgICAgICAgIG5hbWUgPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgbmFtZSkKLSAgICAgICAgICAgICAgICBvcGVuKG5hbWUsICJ3YiIpLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKG5hbWUpCiAKICAgICAgICAgICAgIGV4Y2x1ZGUgPSBvcy5wYXRoLmlzZmlsZQogCkBAIC05MzcsNyArOTYwLDcgQEAKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZm9yIG5hbWUgaW4gKCJmb28iLCAiYmFyIiwgImJheiIpOgogICAgICAgICAgICAgICAgIG5hbWUgPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgbmFtZSkKLSAgICAgICAgICAgICAgICBvcGVuKG5hbWUsICJ3YiIpLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKG5hbWUpCiAKICAgICAgICAgICAgIGRlZiBmaWx0ZXIodGFyaW5mbyk6CiAgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5iYXNlbmFtZSh0YXJpbmZvLm5hbWUpID09ICJiYXIiOgpAQCAtOTc2LDcgKzk5OSw3IEBACiAgICAgICAgICMgYW5kIGNvbXBhcmUgdGhlIHN0b3JlZCBuYW1lIHdpdGggdGhlIG9yaWdpbmFsLgogICAgICAgICBmb28gPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgImZvbyIpCiAgICAgICAgIGlmIG5vdCBkaXI6Ci0gICAgICAgICAgICBvcGVuKGZvbywgInciKS5jbG9zZSgpCisgICAgICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKGZvbykKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG9zLm1rZGlyKGZvbykKIApAQCAtMTA5Myw2ICsxMTE2LDkgQEAKICAgICAgICAgICAgIGRhdGEgPSBkZWMuZGVjb21wcmVzcyhkYXRhKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGxlbihkZWMudW51c2VkX2RhdGEpID09IDAsCiAgICAgICAgICAgICAgICAgICAgICJmb3VuZCB0cmFpbGluZyBkYXRhIikKKyAgICAgICAgZWxpZiBzZWxmLm1vZGUuZW5kc3dpdGgoInh6Iik6CisgICAgICAgICAgICB3aXRoIGx6bWEuTFpNQUZpbGUodG1wbmFtZSkgYXMgZm9iajoKKyAgICAgICAgICAgICAgICBkYXRhID0gZm9iai5yZWFkKCkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHdpdGggb3Blbih0bXBuYW1lLCAicmIiKSBhcyBmb2JqOgogICAgICAgICAgICAgICAgIGRhdGEgPSBmb2JqLnJlYWQoKQpAQCAtMTMzNiw3ICsxMzYyLDcgQEAKICAgICAgICAgc2VsZi5fdGVzdF91bmljb2RlX2ZpbGVuYW1lKCJ1dGY3IikKIAogICAgIGRlZiB0ZXN0X3V0ZjhfZmlsZW5hbWUoc2VsZik6Ci0gICAgICAgIHNlbGYuX3Rlc3RfdW5pY29kZV9maWxlbmFtZSgidXRmOCIpCisgICAgICAgIHNlbGYuX3Rlc3RfdW5pY29kZV9maWxlbmFtZSgidXRmLTgiKQogCiAgICAgZGVmIF90ZXN0X3VuaWNvZGVfZmlsZW5hbWUoc2VsZiwgZW5jb2RpbmcpOgogICAgICAgICB0YXIgPSB0YXJmaWxlLm9wZW4odG1wbmFtZSwgInciLCBmb3JtYXQ9c2VsZi5mb3JtYXQsIGVuY29kaW5nPWVuY29kaW5nLCBlcnJvcnM9InN0cmljdCIpCkBAIC0xNDE1LDcgKzE0NDEsNyBAQAogICAgIGRlZiB0ZXN0X2JhZF9wYXhfaGVhZGVyKHNlbGYpOgogICAgICAgICAjIFRlc3QgZm9yIGlzc3VlICM4NjMzLiBHTlUgdGFyIDw9IDEuMjMgY3JlYXRlcyByYXcgYmluYXJ5IGZpZWxkcwogICAgICAgICAjIHdpdGhvdXQgYSBoZHJjaGFyc2V0PUJJTkFSWSBoZWFkZXIuCi0gICAgICAgIGZvciBlbmNvZGluZywgbmFtZSBpbiAoKCJ1dGY4IiwgInBheC9iYWQtcGF4LVx1ZGNlNFx1ZGNmNlx1ZGNmYyIpLAorICAgICAgICBmb3IgZW5jb2RpbmcsIG5hbWUgaW4gKCgidXRmLTgiLCAicGF4L2JhZC1wYXgtXHVkY2U0XHVkY2Y2XHVkY2ZjIiksCiAgICAgICAgICAgICAgICAgKCJpc284ODU5LTEiLCAicGF4L2JhZC1wYXgtXHhlNFx4ZjZceGZjIiksKToKICAgICAgICAgICAgIHdpdGggdGFyZmlsZS5vcGVuKHRhcm5hbWUsIGVuY29kaW5nPWVuY29kaW5nLCBlcnJvcnM9InN1cnJvZ2F0ZWVzY2FwZSIpIGFzIHRhcjoKICAgICAgICAgICAgICAgICB0cnk6CkBAIC0xNDMwLDcgKzE0NTYsNyBAQAogCiAgICAgZGVmIHRlc3RfYmluYXJ5X2hlYWRlcihzZWxmKToKICAgICAgICAgIyBUZXN0IGEgUE9TSVguMS0yMDA4IGNvbXBhdGlibGUgaGVhZGVyIHdpdGggYSBoZHJjaGFyc2V0PUJJTkFSWSBmaWVsZC4KLSAgICAgICAgZm9yIGVuY29kaW5nLCBuYW1lIGluICgoInV0ZjgiLCAicGF4L2hkcmNoYXJzZXQtXHVkY2U0XHVkY2Y2XHVkY2ZjIiksCisgICAgICAgIGZvciBlbmNvZGluZywgbmFtZSBpbiAoKCJ1dGYtOCIsICJwYXgvaGRyY2hhcnNldC1cdWRjZTRcdWRjZjZcdWRjZmMiKSwKICAgICAgICAgICAgICAgICAoImlzbzg4NTktMSIsICJwYXgvaGRyY2hhcnNldC1ceGU0XHhmNlx4ZmMiKSwpOgogICAgICAgICAgICAgd2l0aCB0YXJmaWxlLm9wZW4odGFybmFtZSwgZW5jb2Rpbmc9ZW5jb2RpbmcsIGVycm9ycz0ic3Vycm9nYXRlZXNjYXBlIikgYXMgdGFyOgogICAgICAgICAgICAgICAgIHRyeToKQEAgLTE1MDcsNiArMTUzMywxMiBAQAogICAgICAgICBzZWxmLl9jcmVhdGVfdGVzdHRhcigidzpiejIiKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh0YXJmaWxlLlJlYWRFcnJvciwgdGFyZmlsZS5vcGVuLCB0bXBuYW1lLCAiYSIpCiAKKyAgICBkZWYgdGVzdF9hcHBlbmRfbHptYShzZWxmKToKKyAgICAgICAgaWYgbHptYSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgibHptYSBtb2R1bGUgbm90IGF2YWlsYWJsZSIpCisgICAgICAgIHNlbGYuX2NyZWF0ZV90ZXN0dGFyKCJ3Onh6IikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXModGFyZmlsZS5SZWFkRXJyb3IsIHRhcmZpbGUub3BlbiwgdG1wbmFtZSwgImEiKQorCiAgICAgIyBBcHBlbmQgbW9kZSBpcyBzdXBwb3NlZCB0byBmYWlsIGlmIHRoZSB0YXJmaWxlIHRvIGFwcGVuZCB0bwogICAgICMgZG9lcyBub3QgZW5kIHdpdGggYSB6ZXJvIGJsb2NrLgogICAgIGRlZiBfdGVzdF9lcnJvcihzZWxmLCBkYXRhKToKQEAgLTE3ODUsNiArMTgxNywyMSBAQAogICAgICAgICBzZWxmLl90ZXN0X3BhcnRpYWxfaW5wdXQoInI6YnoyIikKIAogCitjbGFzcyBMem1hTWlzY1JlYWRUZXN0KE1pc2NSZWFkVGVzdCk6CisgICAgdGFybmFtZSA9IHh6bmFtZQorICAgIG1vZGUgPSAicjp4eiIKK2NsYXNzIEx6bWFVc3RhclJlYWRUZXN0KFVzdGFyUmVhZFRlc3QpOgorICAgIHRhcm5hbWUgPSB4em5hbWUKKyAgICBtb2RlID0gInI6eHoiCitjbGFzcyBMem1hU3RyZWFtUmVhZFRlc3QoU3RyZWFtUmVhZFRlc3QpOgorICAgIHRhcm5hbWUgPSB4em5hbWUKKyAgICBtb2RlID0gInJ8eHoiCitjbGFzcyBMem1hV3JpdGVUZXN0KFdyaXRlVGVzdCk6CisgICAgbW9kZSA9ICJ3Onh6IgorY2xhc3MgTHptYVN0cmVhbVdyaXRlVGVzdChTdHJlYW1Xcml0ZVRlc3QpOgorICAgIG1vZGUgPSAid3x4eiIKKworCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC51bmxpbmsoVEVNUERJUikKICAgICBvcy5tYWtlZGlycyhURU1QRElSKQpAQCAtMTg0Nyw2ICsxODk0LDIwIEBACiAgICAgICAgICAgICBCejJQYXJ0aWFsUmVhZFRlc3QsCiAgICAgICAgIF0KIAorICAgIGlmIGx6bWE6CisgICAgICAgICMgQ3JlYXRlIHRlc3R0YXIudGFyLnh6IGFuZCBhZGQgbHptYS1zcGVjaWZpYyB0ZXN0cy4KKyAgICAgICAgc3VwcG9ydC51bmxpbmsoeHpuYW1lKQorICAgICAgICB3aXRoIGx6bWEuTFpNQUZpbGUoeHpuYW1lLCAidyIpIGFzIHRhcjoKKyAgICAgICAgICAgIHRhci53cml0ZShkYXRhKQorCisgICAgICAgIHRlc3RzICs9IFsKKyAgICAgICAgICAgIEx6bWFNaXNjUmVhZFRlc3QsCisgICAgICAgICAgICBMem1hVXN0YXJSZWFkVGVzdCwKKyAgICAgICAgICAgIEx6bWFTdHJlYW1SZWFkVGVzdCwKKyAgICAgICAgICAgIEx6bWFXcml0ZVRlc3QsCisgICAgICAgICAgICBMem1hU3RyZWFtV3JpdGVUZXN0LAorICAgICAgICBdCisKICAgICB0cnk6CiAgICAgICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KCp0ZXN0cykKICAgICBmaW5hbGx5OgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF90ZWxuZXRsaWIucHkgYi9MaWIvdGVzdC90ZXN0X3RlbG5ldGxpYi5weQppbmRleCA4NzQxOGY1Li5lNThjMTBmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3RlbG5ldGxpYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X3RlbG5ldGxpYi5weQpAQCAtMzUsNiArMzUsNyBAQAogCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgogICAgICAgICBzZWxmLnRocmVhZC5qb2luKCkKKyAgICAgICAgZGVsIHNlbGYudGhyZWFkICAjIENsZWFyIG91dCBhbnkgZGFuZ2xpbmcgVGhyZWFkIG9iamVjdHMuCiAKICAgICBkZWYgdGVzdEJhc2ljKHNlbGYpOgogICAgICAgICAjIGNvbm5lY3RzCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3RlbXBmaWxlLnB5IGIvTGliL3Rlc3QvdGVzdF90ZW1wZmlsZS5weQppbmRleCA1MGNmM2I0Li44ZmUyOTg2IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3RlbXBmaWxlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdGVtcGZpbGUucHkKQEAgLTIxLDcgKzIxLDcgQEAKIAogIyBURVNUX0ZJTEVTIG1heSBuZWVkIHRvIGJlIHR3ZWFrZWQgZm9yIHN5c3RlbXMgZGVwZW5kaW5nIG9uIHRoZSBtYXhpbXVtCiAjIG51bWJlciBvZiBmaWxlcyB0aGF0IGNhbiBiZSBvcGVuZWQgYXQgb25lIHRpbWUgKHNlZSB1bGltaXQgLW4pCi1pZiBzeXMucGxhdGZvcm0gaW4gKCdvcGVuYnNkMycsICdvcGVuYnNkNCcpOgoraWYgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ29wZW5ic2QnKToKICAgICBURVNUX0ZJTEVTID0gNDgKIGVsc2U6CiAgICAgVEVTVF9GSUxFUyA9IDEwMApAQCAtODc4LDYgKzg3OCwyNyBAQAogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgdXNlX2Nsb3NlZCkKIAorICAgIGRlZiB0ZXN0X3RydW5jYXRlX3dpdGhfc2l6ZV9wYXJhbWV0ZXIoc2VsZik6CisgICAgICAgICMgQSBTcG9vbGVkVGVtcG9yYXJ5RmlsZSBjYW4gYmUgdHJ1bmNhdGVkIHRvIHplcm8gc2l6ZQorICAgICAgICBmID0gdGVtcGZpbGUuU3Bvb2xlZFRlbXBvcmFyeUZpbGUobWF4X3NpemU9MTApCisgICAgICAgIGYud3JpdGUoYidhYmNkZWZnXG4nKQorICAgICAgICBmLnNlZWsoMCkKKyAgICAgICAgZi50cnVuY2F0ZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi5fcm9sbGVkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuX2ZpbGUuZ2V0dmFsdWUoKSwgYicnKQorICAgICAgICAjIEEgU3Bvb2xlZFRlbXBvcmFyeUZpbGUgY2FuIGJlIHRydW5jYXRlZCB0byBhIHNwZWNpZmljIHNpemUKKyAgICAgICAgZiA9IHRlbXBmaWxlLlNwb29sZWRUZW1wb3JhcnlGaWxlKG1heF9zaXplPTEwKQorICAgICAgICBmLndyaXRlKGInYWJjZGVmZ1xuJykKKyAgICAgICAgZi50cnVuY2F0ZSg0KQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGYuX3JvbGxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLl9maWxlLmdldHZhbHVlKCksIGInYWJjZCcpCisgICAgICAgICMgQSBTcG9vbGVkVGVtcG9yYXJ5RmlsZSByb2xscyBvdmVyIGlmIHRydW5jYXRlZCB0byBsYXJnZSBzaXplCisgICAgICAgIGYgPSB0ZW1wZmlsZS5TcG9vbGVkVGVtcG9yYXJ5RmlsZShtYXhfc2l6ZT0xMCkKKyAgICAgICAgZi53cml0ZShiJ2FiY2RlZmdcbicpCisgICAgICAgIGYudHJ1bmNhdGUoMjApCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmLl9yb2xsZWQpCisgICAgICAgIGlmIGhhc19zdGF0OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5mc3RhdChmLmZpbGVubygpKS5zdF9zaXplLCAyMCkKIAogdGVzdF9jbGFzc2VzLmFwcGVuZCh0ZXN0X1Nwb29sZWRUZW1wb3JhcnlGaWxlKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3RocmVhZGVkX2ltcG9ydC5weSBiL0xpYi90ZXN0L3Rlc3RfdGhyZWFkZWRfaW1wb3J0LnB5CmluZGV4IDc3OTE5MzUuLjc4OTkyMGIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdGhyZWFkZWRfaW1wb3J0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdGhyZWFkZWRfaW1wb3J0LnB5CkBAIC0xMSw4ICsxMSw4IEBACiBpbXBvcnQgdGltZQogaW1wb3J0IHNodXRpbAogaW1wb3J0IHVuaXR0ZXN0Ci1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdmVyYm9zZSwgaW1wb3J0X21vZHVsZSwgcnVuX3VuaXR0ZXN0LCBURVNURk4KLXRocmVhZCA9IGltcG9ydF9tb2R1bGUoJ190aHJlYWQnKQorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0ICgKKyAgICB2ZXJib3NlLCBpbXBvcnRfbW9kdWxlLCBydW5fdW5pdHRlc3QsIFRFU1RGTiwgcmVhcF90aHJlYWRzKQogdGhyZWFkaW5nID0gaW1wb3J0X21vZHVsZSgndGhyZWFkaW5nJykKIAogZGVmIHRhc2soTiwgZG9uZSwgZG9uZV90YXNrcywgZXJyb3JzKToKQEAgLTMwLDcgKzMwLDcgQEAKICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgIGVycm9ycy5hcHBlbmQoZS53aXRoX3RyYWNlYmFjayhOb25lKSkKICAgICBmaW5hbGx5OgotICAgICAgICBkb25lX3Rhc2tzLmFwcGVuZCh0aHJlYWQuZ2V0X2lkZW50KCkpCisgICAgICAgIGRvbmVfdGFza3MuYXBwZW5kKHRocmVhZGluZy5nZXRfaWRlbnQoKSkKICAgICAgICAgZmluaXNoZWQgPSBsZW4oZG9uZV90YXNrcykgPT0gTgogICAgICAgICBpZiBmaW5pc2hlZDoKICAgICAgICAgICAgIGRvbmUuc2V0KCkKQEAgLTYyLDcgKzYyLDcgQEAKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgIHNlbGYubnVtY2FsbHMgPSAwCiAgICAgICAgIHNlbGYueCA9IDAKLSAgICAgICAgc2VsZi5sb2NrID0gdGhyZWFkLmFsbG9jYXRlX2xvY2soKQorICAgICAgICBzZWxmLmxvY2sgPSB0aHJlYWRpbmcuTG9jaygpCiAKICAgICBkZWYgZmluZF9tb2R1bGUoc2VsZiwgbmFtZSwgcGF0aD1Ob25lKToKICAgICAgICAgIyBTaW11bGF0ZSBzb21lIHRocmVhZC11bnNhZmUgYmVoYXZpb3VyLiBJZiBjYWxscyB0byBmaW5kX21vZHVsZSgpCkBAIC0xMTMsNyArMTEzLDkgQEAKICAgICAgICAgICAgIGRvbmVfdGFza3MgPSBbXQogICAgICAgICAgICAgZG9uZS5jbGVhcigpCiAgICAgICAgICAgICBmb3IgaSBpbiByYW5nZShOKToKLSAgICAgICAgICAgICAgICB0aHJlYWQuc3RhcnRfbmV3X3RocmVhZCh0YXNrLCAoTiwgZG9uZSwgZG9uZV90YXNrcywgZXJyb3JzLCkpCisgICAgICAgICAgICAgICAgdCA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXRhc2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncz0oTiwgZG9uZSwgZG9uZV90YXNrcywgZXJyb3JzLCkpCisgICAgICAgICAgICAgICAgdC5zdGFydCgpCiAgICAgICAgICAgICBkb25lLndhaXQoNjApCiAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGVycm9ycykKICAgICAgICAgICAgIGlmIHZlcmJvc2U6CkBAIC0yMDMsNiArMjA1LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZXQocmVzdWx0cyksIHsnYScsICdiJ30pCiAKIAorQHJlYXBfdGhyZWFkcwogZGVmIHRlc3RfbWFpbigpOgogICAgIHJ1bl91bml0dGVzdChUaHJlYWRlZEltcG9ydFRlc3RzKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3RocmVhZGluZy5weSBiL0xpYi90ZXN0L3Rlc3RfdGhyZWFkaW5nLnB5CmluZGV4IDMyNjM3YjUuLjE0MWQ5NjEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdGhyZWFkaW5nLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdGhyZWFkaW5nLnB5CkBAIC0xNzMsNyArMTczLDcgQEAKICAgICAgICAgZXhjZXB0aW9uID0gY3R5cGVzLnB5X29iamVjdChBc3luY0V4YykKIAogICAgICAgICAjIEZpcnN0IGNoZWNrIGl0IHdvcmtzIHdoZW4gc2V0dGluZyB0aGUgZXhjZXB0aW9uIGZyb20gdGhlIHNhbWUgdGhyZWFkLgotICAgICAgICB0aWQgPSBfdGhyZWFkLmdldF9pZGVudCgpCisgICAgICAgIHRpZCA9IHRocmVhZGluZy5nZXRfaWRlbnQoKQogCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHJlc3VsdCA9IHNldF9hc3luY19leGMoY3R5cGVzLmNfbG9uZyh0aWQpLCBleGNlcHRpb24pCkBAIC0yMDIsNyArMjAyLDcgQEAKIAogICAgICAgICBjbGFzcyBXb3JrZXIodGhyZWFkaW5nLlRocmVhZCk6CiAgICAgICAgICAgICBkZWYgcnVuKHNlbGYpOgotICAgICAgICAgICAgICAgIHNlbGYuaWQgPSBfdGhyZWFkLmdldF9pZGVudCgpCisgICAgICAgICAgICAgICAgc2VsZi5pZCA9IHRocmVhZGluZy5nZXRfaWRlbnQoKQogICAgICAgICAgICAgICAgIHNlbGYuZmluaXNoZWQgPSBGYWxzZQogCiAgICAgICAgICAgICAgICAgdHJ5OgpAQCAtNDA3LDYgKzQwNywxNCBAQAogICAgICAgICB0LmRhZW1vbiA9IFRydWUKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKCdkYWVtb24nIGluIHJlcHIodCkpCiAKKyAgICBkZWYgdGVzdF9kZWFtb25fcGFyYW0oc2VsZik6CisgICAgICAgIHQgPSB0aHJlYWRpbmcuVGhyZWFkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh0LmRhZW1vbikKKyAgICAgICAgdCA9IHRocmVhZGluZy5UaHJlYWQoZGFlbW9uPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHQuZGFlbW9uKQorICAgICAgICB0ID0gdGhyZWFkaW5nLlRocmVhZChkYWVtb249VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHQuZGFlbW9uKQorCiAKIGNsYXNzIFRocmVhZEpvaW5PblNodXRkb3duKEJhc2VUZXN0Q2FzZSk6CiAKQEAgLTcxMiw2ICs3MjAsMTAgQEAKICAgICAgICAgdGhyZWFkLnN0YXJ0KCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBzZXRhdHRyLCB0aHJlYWQsICJkYWVtb24iLCBUcnVlKQogCisgICAgZGVmIHRlc3RfcmVsZWFzaW5nX3VuYWNxdWlyZWRfbG9jayhzZWxmKToKKyAgICAgICAgbG9jayA9IHRocmVhZGluZy5Mb2NrKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBsb2NrLnJlbGVhc2UpCisKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gJ2RhcndpbicsICd0ZXN0IG1hY29zeCBwcm9ibGVtJykKICAgICBkZWYgdGVzdF9yZWN1cnNpb25fbGltaXQoc2VsZik6CiAgICAgICAgICMgSXNzdWUgOTY3MApAQCAtNzczLDYgKzc4NSw3IEBACiBjbGFzcyBCYXJyaWVyVGVzdHMobG9ja190ZXN0cy5CYXJyaWVyVGVzdHMpOgogICAgIGJhcnJpZXJ0eXBlID0gc3RhdGljbWV0aG9kKHRocmVhZGluZy5CYXJyaWVyKQogCisKIGRlZiB0ZXN0X21haW4oKToKICAgICB0ZXN0LnN1cHBvcnQucnVuX3VuaXR0ZXN0KExvY2tUZXN0cywgUHlSTG9ja1Rlc3RzLCBDUkxvY2tUZXN0cywgRXZlbnRUZXN0cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmRpdGlvbkFzUkxvY2tUZXN0cywgQ29uZGl0aW9uVGVzdHMsCkBAIC03ODAsNyArNzkzLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRocmVhZFRlc3RzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkSm9pbk9uU2h1dGRvd24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaHJlYWRpbmdFeGNlcHRpb25UZXN0cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJhcnJpZXJUZXN0cworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFycmllclRlc3RzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogCiBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF90aHJlYWRzaWduYWxzLnB5IGIvTGliL3Rlc3QvdGVzdF90aHJlYWRzaWduYWxzLnB5CmluZGV4IGUwYWYzMWQuLmY5NzVhNzUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdGhyZWFkc2lnbmFscy5weQorKysgYi9MaWIvdGVzdC90ZXN0X3RocmVhZHNpZ25hbHMucHkKQEAgLTE0LDEwICsxNCw4IEBACiBwcm9jZXNzX3BpZCA9IG9zLmdldHBpZCgpCiBzaWduYWxsZWRfYWxsPXRocmVhZC5hbGxvY2F0ZV9sb2NrKCkKIAotIyBJc3N1ZSAjMTEyMjM6IExvY2tzIGFyZSBpbXBsZW1lbnRlZCB1c2luZyBhIG11dGV4IGFuZCBhIGNvbmRpdGlvbiB2YXJpYWJsZSBvZgotIyB0aGUgcHRocmVhZCBsaWJyYXJ5IG9uIEZyZWVCU0Q2LiBQT1NJWCBjb25kaXRpb24gdmFyaWFibGVzIGNhbm5vdCBiZQotIyBpbnRlcnJ1cHRlZCBieSBzaWduYWxzIChzZWUgcHRocmVhZF9jb25kX3dhaXQgbWFudWFsIHBhZ2UpLgotVVNJTkdfUFRIUkVBRF9DT05EID0gKHN5cy5wbGF0Zm9ybSA9PSAnZnJlZWJzZDYnKQorVVNJTkdfUFRIUkVBRF9DT05EID0gKHN5cy50aHJlYWRfaW5mby5uYW1lID09ICdwdGhyZWFkJworICAgICAgICAgICAgICAgICAgICAgIGFuZCBzeXMudGhyZWFkX2luZm8ubG9jayA9PSAnbXV0ZXgrY29uZCcpCiAKIGRlZiByZWdpc3RlclNpZ25hbHMoZm9yX3VzcjEsIGZvcl91c3IyLCBmb3JfYWxybSk6CiAgICAgdXNyMSA9IHNpZ25hbC5zaWduYWwoc2lnbmFsLlNJR1VTUjEsIGZvcl91c3IxKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF90aW1lLnB5IGIvTGliL3Rlc3QvdGVzdF90aW1lLnB5CmluZGV4IGNlNTdkODcuLjI2NDkyYzEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdGltZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3RpbWUucHkKQEAgLTQsNyArNCwxMyBAQAogaW1wb3J0IGxvY2FsZQogaW1wb3J0IHN5c2NvbmZpZwogaW1wb3J0IHN5cwotaW1wb3J0IHdhcm5pbmdzCitpbXBvcnQgcGxhdGZvcm0KKworIyBNYXggeWVhciBpcyBvbmx5IGxpbWl0ZWQgYnkgdGhlIHNpemUgb2YgQyBpbnQuCitTSVpFT0ZfSU5UID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdTSVpFT0ZfSU5UJykgb3IgNAorVElNRV9NQVhZRUFSID0gKDEgPDwgOCAqIFNJWkVPRl9JTlQgLSAxKSAtIDEKK1RJTUVfTUlOWUVBUiA9IC1USU1FX01BWFlFQVIgLSAxCisKIAogY2xhc3MgVGltZVRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtMjAsNiArMjYsMjcgQEAKICAgICBkZWYgdGVzdF9jbG9jayhzZWxmKToKICAgICAgICAgdGltZS5jbG9jaygpCiAKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHRpbWUsICdjbG9ja19nZXR0aW1lJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgdGltZS5jbG9ja19nZXR0aW1lKCknKQorICAgIGRlZiB0ZXN0X2Nsb2NrX3JlYWx0aW1lKHNlbGYpOgorICAgICAgICB0aW1lLmNsb2NrX2dldHRpbWUodGltZS5DTE9DS19SRUFMVElNRSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIodGltZSwgJ2Nsb2NrX2dldHRpbWUnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCB0aW1lLmNsb2NrX2dldHRpbWUoKScpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cih0aW1lLCAnQ0xPQ0tfTU9OT1RPTklDJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgdGltZS5DTE9DS19NT05PVE9OSUMnKQorICAgIGRlZiB0ZXN0X2Nsb2NrX21vbm90b25pYyhzZWxmKToKKyAgICAgICAgYSA9IHRpbWUuY2xvY2tfZ2V0dGltZSh0aW1lLkNMT0NLX01PTk9UT05JQykKKyAgICAgICAgYiA9IHRpbWUuY2xvY2tfZ2V0dGltZSh0aW1lLkNMT0NLX01PTk9UT05JQykKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwoYSwgYikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIodGltZSwgJ2Nsb2NrX2dldHJlcycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHRpbWUuY2xvY2tfZ2V0cmVzKCknKQorICAgIGRlZiB0ZXN0X2Nsb2NrX2dldHJlcyhzZWxmKToKKyAgICAgICAgcmVzID0gdGltZS5jbG9ja19nZXRyZXModGltZS5DTE9DS19SRUFMVElNRSkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKHJlcywgMC4wKQorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChyZXMsIDEuMCkKKwogICAgIGRlZiB0ZXN0X2NvbnZlcnNpb25zKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRpbWUuY3RpbWUoc2VsZi50KSwKICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lLmFzY3RpbWUodGltZS5sb2NhbHRpbWUoc2VsZi50KSkpCkBAIC0yNyw2ICs1NCw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgaW50KHNlbGYudCkpCiAKICAgICBkZWYgdGVzdF9zbGVlcChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgdGltZS5zbGVlcCwgLTIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHRpbWUuc2xlZXAsIC0xKQogICAgICAgICB0aW1lLnNsZWVwKDEuMikKIAogICAgIGRlZiB0ZXN0X3N0cmZ0aW1lKHNlbGYpOgpAQCAtNDcsMjggKzc2LDM0IEBACiAgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgogICAgICAgICAgICAgICAgIHRpbWUuc3RyZnRpbWUoJyVmJykKIAotICAgIGRlZiBfYm91bmRzX2NoZWNraW5nKHNlbGYsIGZ1bmM9dGltZS5zdHJmdGltZSk6CisgICAgZGVmIF9ib3VuZHNfY2hlY2tpbmcoc2VsZiwgZnVuYyk6CiAgICAgICAgICMgTWFrZSBzdXJlIHRoYXQgc3RyZnRpbWUoKSBjaGVja3MgdGhlIGJvdW5kcyBvZiB0aGUgdmFyaW91cyBwYXJ0cwotICAgICAgICAjb2YgdGhlIHRpbWUgdHVwbGUgKDAgaXMgdmFsaWQgZm9yICphbGwqIHZhbHVlcykuCisgICAgICAgICMgb2YgdGhlIHRpbWUgdHVwbGUgKDAgaXMgdmFsaWQgZm9yICphbGwqIHZhbHVlcykuCiAKICAgICAgICAgIyBUaGUgeWVhciBmaWVsZCBpcyB0ZXN0ZWQgYnkgb3RoZXIgdGVzdCBjYXNlcyBhYm92ZQogCiAgICAgICAgICMgQ2hlY2sgbW9udGggWzEsIDEyXSArIHplcm8gc3VwcG9ydAorICAgICAgICBmdW5jKCgxOTAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAtMSkpCisgICAgICAgIGZ1bmMoKDE5MDAsIDEyLCAxLCAwLCAwLCAwLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIC0xLCAxLCAwLCAwLCAwLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIDEzLCAxLCAwLCAwLCAwLCAwLCAxLCAtMSkpCiAgICAgICAgICMgQ2hlY2sgZGF5IG9mIG1vbnRoIFsxLCAzMV0gKyB6ZXJvIHN1cHBvcnQKKyAgICAgICAgZnVuYygoMTkwMCwgMSwgMCwgMCwgMCwgMCwgMCwgMSwgLTEpKQorICAgICAgICBmdW5jKCgxOTAwLCAxLCAzMSwgMCwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAtMSwgMCwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAzMiwgMCwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICAjIENoZWNrIGhvdXIgWzAsIDIzXQorICAgICAgICBmdW5jKCgxOTAwLCAxLCAxLCAyMywgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAxLCAtMSwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAxLCAyNCwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICAjIENoZWNrIG1pbnV0ZSBbMCwgNTldCisgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDU5LCAwLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIDEsIDEsIDAsIC0xLCAwLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCkBAIC03OCwxNSArMTEzLDIxIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIDEsIDEsIDAsIDAsIC0xLCAwLCAxLCAtMSkpCiAgICAgICAgICMgQzk5IG9ubHkgcmVxdWlyZXMgYWxsb3dpbmcgZm9yIG9uZSBsZWFwIHNlY29uZCwgYnV0IFB5dGhvbidzIGRvY3Mgc2F5CiAgICAgICAgICMgYWxsb3cgdHdvIGxlYXAgc2Vjb25kcyAoMC4uNjEpCisgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDYwLCAwLCAxLCAtMSkpCisgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDYxLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIDEsIDEsIDAsIDAsIDYyLCAwLCAxLCAtMSkpCiAgICAgICAgICMgTm8gY2hlY2sgZm9yIHVwcGVyLWJvdW5kIGRheSBvZiB3ZWVrOwogICAgICAgICAjICB2YWx1ZSBmb3JjZWQgaW50byByYW5nZSBieSBhIGBgJSA3YGAgY2FsY3VsYXRpb24uCiAgICAgICAgICMgU3RhcnQgY2hlY2sgYXQgLTIgc2luY2UgZ2V0dG1hcmcoKSBpbmNyZW1lbnRzIHZhbHVlIGJlZm9yZSB0YWtpbmcKICAgICAgICAgIyAgbW9kdWxvLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDAsIC0xLCAxLCAtMSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDAsICs2LCAxLCAtMSkpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAxLCAwLCAwLCAwLCAtMiwgMSwgLTEpKQogICAgICAgICAjIENoZWNrIGRheSBvZiB0aGUgeWVhciBbMSwgMzY2XSArIHplcm8gc3VwcG9ydAorICAgICAgICBmdW5jKCgxOTAwLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAtMSkpCisgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDAsIDAsIDM2NiwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAxLCAwLCAwLCAwLCAwLCAtMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLApAQCAtOTYsMTIgKzEzNywxMyBAQAogICAgICAgICBzZWxmLl9ib3VuZHNfY2hlY2tpbmcobGFtYmRhIHR1cDogdGltZS5zdHJmdGltZSgnJywgdHVwKSkKIAogICAgIGRlZiB0ZXN0X2RlZmF1bHRfdmFsdWVzX2Zvcl96ZXJvKHNlbGYpOgotICAgICAgICAjIE1ha2Ugc3VyZSB0aGF0IHVzaW5nIGFsbCB6ZXJvcyB1c2VzIHRoZSBwcm9wZXIgZGVmYXVsdCB2YWx1ZXMuCi0gICAgICAgICMgTm8gdGVzdCBmb3IgZGF5bGlnaHQgc2F2aW5ncyBzaW5jZSBzdHJmdGltZSgpIGRvZXMgbm90IGNoYW5nZSBvdXRwdXQKLSAgICAgICAgIyBiYXNlZCBvbiBpdHMgdmFsdWUuCisgICAgICAgICMgTWFrZSBzdXJlIHRoYXQgdXNpbmcgYWxsIHplcm9zIHVzZXMgdGhlIHByb3BlciBkZWZhdWx0CisgICAgICAgICMgdmFsdWVzLiAgTm8gdGVzdCBmb3IgZGF5bGlnaHQgc2F2aW5ncyBzaW5jZSBzdHJmdGltZSgpIGRvZXMKKyAgICAgICAgIyBub3QgY2hhbmdlIG91dHB1dCBiYXNlZCBvbiBpdHMgdmFsdWUgYW5kIG5vIHRlc3QgZm9yIHllYXIKKyAgICAgICAgIyBiZWNhdXNlIHN5c3RlbXMgdmFyeSBpbiB0aGVpciBzdXBwb3J0IGZvciB5ZWFyIDAuCiAgICAgICAgIGV4cGVjdGVkID0gIjIwMDAgMDEgMDEgMDAgMDAgMDAgMSAwMDEiCiAgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygpOgotICAgICAgICAgICAgcmVzdWx0ID0gdGltZS5zdHJmdGltZSgiJVkgJW0gJWQgJUggJU0gJVMgJXcgJWoiLCAoMCwpKjkpCisgICAgICAgICAgICByZXN1bHQgPSB0aW1lLnN0cmZ0aW1lKCIlWSAlbSAlZCAlSCAlTSAlUyAldyAlaiIsICgyMDAwLCkrKDAsKSo4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCByZXN1bHQpCiAKICAgICBkZWYgdGVzdF9zdHJwdGltZShzZWxmKToKQEAgLTEyOCwxMSArMTcwLDEzIEBACiAgICAgICAgIHRpbWUuYXNjdGltZSh0aW1lLmdtdGltZShzZWxmLnQpKQogCiAgICAgICAgICMgTWF4IHllYXIgaXMgb25seSBsaW1pdGVkIGJ5IHRoZSBzaXplIG9mIEMgaW50LgotICAgICAgICBzaXplb2ZfaW50ID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdTSVpFT0ZfSU5UJykgb3IgNAotICAgICAgICBiaWd5ZWFyID0gKDEgPDwgOCAqIHNpemVvZl9pbnQgLSAxKSAtIDEKLSAgICAgICAgYXNjID0gdGltZS5hc2N0aW1lKChiaWd5ZWFyLCA2LCAxKSArICgwLCkqNikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhc2NbLWxlbihzdHIoYmlneWVhcikpOl0sIHN0cihiaWd5ZWFyKSkKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgdGltZS5hc2N0aW1lLCAoYmlneWVhciArIDEsKSArICgwLCkqOCkKKyAgICAgICAgZm9yIGJpZ3llYXIgaW4gVElNRV9NQVhZRUFSLCBUSU1FX01JTllFQVI6CisgICAgICAgICAgICBhc2MgPSB0aW1lLmFzY3RpbWUoKGJpZ3llYXIsIDYsIDEpICsgKDAsKSAqIDYpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFzY1stbGVuKHN0cihiaWd5ZWFyKSk6XSwgc3RyKGJpZ3llYXIpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCB0aW1lLmFzY3RpbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIChUSU1FX01BWFlFQVIgKyAxLCkgKyAoMCwpICogOCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgdGltZS5hc2N0aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAoVElNRV9NSU5ZRUFSIC0gMSwpICsgKDAsKSAqIDgpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdGltZS5hc2N0aW1lLCAwKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHRpbWUuYXNjdGltZSwgKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdGltZS5hc2N0aW1lLCAoMCwpICogMTApCkBAIC0xNTUsOCArMTk5LDggQEAKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0aW1lLmN0aW1lKHRlc3R2YWwpWzIwOl0sIHN0cih5ZWFyKSkKIAotICAgIEB1bml0dGVzdC5za2lwSWYobm90IGhhc2F0dHIodGltZSwgInR6c2V0IiksCi0gICAgICAgICJ0aW1lIG1vZHVsZSBoYXMgbm8gYXR0cmlidXRlIHR6c2V0IikKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHRpbWUsICJ0enNldCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJ0aW1lIG1vZHVsZSBoYXMgbm8gYXR0cmlidXRlIHR6c2V0IikKICAgICBkZWYgdGVzdF90enNldChzZWxmKToKIAogICAgICAgICBmcm9tIG9zIGltcG9ydCBlbnZpcm9uCkBAIC0yMDgsMTEgKzI1MiwxMyBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh0aW1lLmdtdGltZSh4bWFzMjAwMiksIHRpbWUubG9jYWx0aW1lKHhtYXMyMDAyKSkKIAogICAgICAgICAgICAgIyBJc3N1ZSAjMTE4ODY6IEF1c3RyYWxpYW4gRWFzdGVybiBTdGFuZGFyZCBUaW1lIChVVEMrMTApIGlzIGNhbGxlZAotICAgICAgICAgICAgIyAiRVNUIiAoYXMgRWFzdGVybiBTdGFuZGFyZCBUaW1lLCBVVEMtNSkgaW5zdGVhZCBvZiAiQUVTVCIgb24gc29tZQotICAgICAgICAgICAgIyBvcGVyYXRpbmcgc3lzdGVtcyAoZS5nLiBGcmVlQlNEKSwgd2hpY2ggaXMgd3JvbmcuIFNlZSBmb3IgZXhhbXBsZQotICAgICAgICAgICAgIyB0aGlzIGJ1ZzogaHR0cDovL2J1Z3MuZGViaWFuLm9yZy9jZ2ktYmluL2J1Z3JlcG9ydC5jZ2k/YnVnPTkzODEwCisgICAgICAgICAgICAjICJFU1QiIChhcyBFYXN0ZXJuIFN0YW5kYXJkIFRpbWUsIFVUQy01KSBpbnN0ZWFkIG9mICJBRVNUIgorICAgICAgICAgICAgIyAobm9uLURTVCB0aW1lem9uZSksIGFuZCAiRURUIiBpbnN0ZWFkIG9mICJBRURUIiAoRFNUIHRpbWV6b25lKSwKKyAgICAgICAgICAgICMgb24gc29tZSBvcGVyYXRpbmcgc3lzdGVtcyAoZS5nLiBGcmVlQlNEKSwgd2hpY2ggaXMgd3JvbmcuIFNlZSBmb3IKKyAgICAgICAgICAgICMgZXhhbXBsZSB0aGlzIGJ1ZzoKKyAgICAgICAgICAgICMgaHR0cDovL2J1Z3MuZGViaWFuLm9yZy9jZ2ktYmluL2J1Z3JlcG9ydC5jZ2k/YnVnPTkzODEwCiAgICAgICAgICAgICBzZWxmLmFzc2VydEluKHRpbWUudHpuYW1lWzBdLCAoJ0FFU1QnICdFU1QnKSwgdGltZS50em5hbWVbMF0pCi0gICAgICAgICAgICBzZWxmLmFzc2VydFRydWUodGltZS50em5hbWVbMV0gPT0gJ0FFRFQnLCBzdHIodGltZS50em5hbWVbMV0pKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHRpbWUudHpuYW1lWzFdIGluICgnQUVEVCcsICdFRFQnKSwgc3RyKHRpbWUudHpuYW1lWzFdKSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHRpbWUudHpuYW1lKSwgMikKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGltZS5kYXlsaWdodCwgMSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGltZS50aW1lem9uZSwgLTM2MDAwKQpAQCAtMjU4LDYgKzMwNCw4MSBAQAogICAgICAgICB0MSA9IHRpbWUubWt0aW1lKGx0MSkKICAgICAgICAgc2VsZi5hc3NlcnRBbG1vc3RFcXVhbCh0MSwgdDAsIGRlbHRhPTAuMikKIAorICAgIGRlZiB0ZXN0X21rdGltZShzZWxmKToKKyAgICAgICAgIyBJc3N1ZSAjMTcyNjY4NworICAgICAgICBmb3IgdCBpbiAoLTIsIC0xLCAwLCAxKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0dCA9IHRpbWUubG9jYWx0aW1lKHQpCisgICAgICAgICAgICBleGNlcHQgKE92ZXJmbG93RXJyb3IsIE9TRXJyb3IpOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0aW1lLm1rdGltZSh0dCksIHQpCisKKyAgICAjIElzc3VlICMxMzMwOTogcGFzc2luZyBleHRyZW1lIHZhbHVlcyB0byBta3RpbWUoKSBvciBsb2NhbHRpbWUoKQorICAgICMgYm9ya3MgdGhlIGdsaWJjJ3MgaW50ZXJuYWwgdGltZXpvbmUgZGF0YS4KKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhwbGF0Zm9ybS5saWJjX3ZlcigpWzBdICE9ICdnbGliYycsCisgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVkIGJlY2F1c2Ugb2YgYSBidWcgaW4gZ2xpYmMuIElzc3VlICMxMzMwOSIpCisgICAgZGVmIHRlc3RfbWt0aW1lX2Vycm9yKHNlbGYpOgorICAgICAgICAjIEl0IG1heSBub3QgYmUgcG9zc2libGUgdG8gcmVsaWFibHkgbWFrZSBta3RpbWUgcmV0dXJuIGVycm9yCisgICAgICAgICMgb24gYWxsIHBsYXRmb20uICBUaGlzIHdpbGwgbWFrZSBzdXJlIHRoYXQgbm8gb3RoZXIgZXhjZXB0aW9uCisgICAgICAgICMgdGhhbiBPdmVyZmxvd0Vycm9yIGlzIHJhaXNlZCBmb3IgYW4gZXh0cmVtZSB2YWx1ZS4KKyAgICAgICAgdHQgPSB0aW1lLmdtdGltZShzZWxmLnQpCisgICAgICAgIHR6bmFtZSA9IHRpbWUuc3RyZnRpbWUoJyVaJywgdHQpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodHpuYW1lLCAnTE1UJykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdGltZS5ta3RpbWUoKC0xLCAxLCAxLCAwLCAwLCAwLCAtMSwgLTEsIC0xKSkKKyAgICAgICAgZXhjZXB0IE92ZXJmbG93RXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGltZS5zdHJmdGltZSgnJVonLCB0dCksIHR6bmFtZSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIodGltZSwgJ21vbm90b25pYycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHRpbWUubW9ub3RvbmljKCknKQorICAgIGRlZiB0ZXN0X21vbm90b25pYyhzZWxmKToKKyAgICAgICAgdDEgPSB0aW1lLm1vbm90b25pYygpCisgICAgICAgIHQyID0gdGltZS5tb25vdG9uaWMoKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbCh0MiwgdDEpCisKKyAgICAgICAgdDEgPSB0aW1lLm1vbm90b25pYygpCisgICAgICAgIHRpbWUuc2xlZXAoMC4xKQorICAgICAgICB0MiA9IHRpbWUubW9ub3RvbmljKCkKKyAgICAgICAgZHQgPSB0MiAtIHQxCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcih0MiwgdDEpCisgICAgICAgIHNlbGYuYXNzZXJ0QWxtb3N0RXF1YWwoZHQsIDAuMSwgZGVsdGE9MC4yKQorCisgICAgZGVmIHRlc3Rfd2FsbGNsb2NrKHNlbGYpOgorICAgICAgICB0MSA9IHRpbWUud2FsbGNsb2NrKCkKKyAgICAgICAgdDIgPSB0aW1lLndhbGxjbG9jaygpCisgICAgICAgICMgbWF5IGZhaWwgaWYgdGhlIHN5c3RlbSBjbG9jayB3YXMgY2hhbmdlZAorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbCh0MiwgdDEpCisKKyAgICAgICAgdDEgPSB0aW1lLndhbGxjbG9jaygpCisgICAgICAgIHRpbWUuc2xlZXAoMC4xKQorICAgICAgICB0MiA9IHRpbWUud2FsbGNsb2NrKCkKKyAgICAgICAgZHQgPSB0MiAtIHQxCisgICAgICAgICMgbWF5IGZhaWwgaWYgdGhlIHN5c3RlbSBjbG9jayB3YXMgY2hhbmdlZAorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIodDIsIHQxKQorICAgICAgICBzZWxmLmFzc2VydEFsbW9zdEVxdWFsKGR0LCAwLjEsIGRlbHRhPTAuMikKKworICAgIGRlZiB0ZXN0X2xvY2FsdGltZV9mYWlsdXJlKHNlbGYpOgorICAgICAgICAjIElzc3VlICMxMzg0NzogY2hlY2sgZm9yIGxvY2FsdGltZSgpIGZhaWx1cmUKKyAgICAgICAgaW52YWxpZF90aW1lX3QgPSBOb25lCisgICAgICAgIGZvciB0aW1lX3QgaW4gKC0xLCAyKiozMCwgMioqMzMsIDIqKjYwKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0aW1lLmxvY2FsdGltZSh0aW1lX3QpCisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBlcnI6CisgICAgICAgICAgICAgICAgaWYgc3RyKGVycikgPT0gInRpbWVzdGFtcCBvdXQgb2YgcmFuZ2UgZm9yIHBsYXRmb3JtIHRpbWVfdCI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm5lZWQgNjQtYml0IHRpbWVfdCIpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAgICAgICAgIGludmFsaWRfdGltZV90ID0gdGltZV90CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgaWYgaW52YWxpZF90aW1lX3QgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoInVuYWJsZSB0byBmaW5kIGFuIGludmFsaWQgdGltZV90IHZhbHVlIikKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCB0aW1lLmxvY2FsdGltZSwgaW52YWxpZF90aW1lX3QpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHRpbWUuY3RpbWUsIGludmFsaWRfdGltZV90KQorCiBjbGFzcyBUZXN0TG9jYWxlKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgc2V0VXAoc2VsZik6CiAgICAgICAgIHNlbGYub2xkbG9jID0gbG9jYWxlLnNldGxvY2FsZShsb2NhbGUuTENfQUxMKQpAQCAtMjc2LDE5ICszOTcsMTIgQEAKIAogCiBjbGFzcyBfQmFzZVllYXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKLSAgICBhY2NlcHQyZHllYXIgPSBOb25lCi0KLSAgICBkZWYgc2V0VXAoc2VsZik6Ci0gICAgICAgIHNlbGYuc2F2ZWRfYWNjZXB0MmR5ZWFyID0gdGltZS5hY2NlcHQyZHllYXIKLSAgICAgICAgdGltZS5hY2NlcHQyZHllYXIgPSBzZWxmLmFjY2VwdDJkeWVhcgotCi0gICAgZGVmIHRlYXJEb3duKHNlbGYpOgotICAgICAgICB0aW1lLmFjY2VwdDJkeWVhciA9IHNlbGYuc2F2ZWRfYWNjZXB0MmR5ZWFyCi0KICAgICBkZWYgeWVhcnN0cihzZWxmLCB5KToKICAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcigpCiAKIGNsYXNzIF9UZXN0QXNjdGltZVllYXI6CisgICAgX2Zvcm1hdCA9ICclZCcKKwogICAgIGRlZiB5ZWFyc3RyKHNlbGYsIHkpOgogICAgICAgICByZXR1cm4gdGltZS5hc2N0aW1lKCh5LCkgKyAoMCwpICogOCkuc3BsaXQoKVstMV0KIApAQCAtMjk4LDExNCArNDEyLDExNiBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cigxMjM0NTY3ODkpLCAnMTIzNDU2Nzg5JykKIAogY2xhc3MgX1Rlc3RTdHJmdGltZVllYXI6Ci0gICAgZGVmIHllYXJzdHIoc2VsZiwgeSk6Ci0gICAgICAgIHJldHVybiB0aW1lLnN0cmZ0aW1lKCclWScsICh5LCkgKyAoMCwpICogOCkuc3BsaXQoKVstMV0KIAotICAgIGRlZiB0ZXN0X2xhcmdlX3llYXIoc2VsZik6CisgICAgIyBJc3N1ZSAxMzMwNTogIEZvciB5ZWFycyA8IDEwMDAsIHRoZSB2YWx1ZSBpcyBub3QgYWx3YXlzCisgICAgIyBwYWRkZWQgdG8gNCBkaWdpdHMgYWNyb3NzIHBsYXRmb3Jtcy4gIFRoZSBDIHN0YW5kYXJkCisgICAgIyBhc3N1bWVzIHllYXIgPj0gMTkwMCwgc28gaXQgZG9lcyBub3Qgc3BlY2lmeSB0aGUgbnVtYmVyCisgICAgIyBvZiBkaWdpdHMuCisKKyAgICBpZiB0aW1lLnN0cmZ0aW1lKCclWScsICgxLCkgKyAoMCwpICogOCkgPT0gJzAwMDEnOgorICAgICAgICBfZm9ybWF0ID0gJyUwNGQnCisgICAgZWxzZToKKyAgICAgICAgX2Zvcm1hdCA9ICclZCcKKworICAgIGRlZiB5ZWFyc3RyKHNlbGYsIHkpOgorICAgICAgICByZXR1cm4gdGltZS5zdHJmdGltZSgnJVknLCAoeSwpICsgKDAsKSAqIDgpCisKKyAgICBkZWYgdGVzdF80ZHllYXIoc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCB3ZSBjYW4gcmV0dXJuIHRoZSB6ZXJvIHBhZGRlZCB2YWx1ZS4KKyAgICAgICAgaWYgc2VsZi5fZm9ybWF0ID09ICclMDRkJzoKKyAgICAgICAgICAgIHNlbGYudGVzdF95ZWFyKCclMDRkJykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGRlZiB5ZWFyNGQoeSk6CisgICAgICAgICAgICAgICAgcmV0dXJuIHRpbWUuc3RyZnRpbWUoJyU0WScsICh5LCkgKyAoMCwpICogOCkKKyAgICAgICAgICAgIHNlbGYudGVzdF95ZWFyKCclMDRkJywgZnVuYz15ZWFyNGQpCisKKyAgICBkZWYgc2tpcF9pZl9ub3Rfc3VwcG9ydGVkKHkpOgorICAgICAgICBtc2cgPSAic3RyZnRpbWUoKSBpcyBsaW1pdGVkIHRvIFsxOyA5OTk5XSB3aXRoIFZpc3VhbCBTdHVkaW8iCiAgICAgICAgICMgQ2hlY2sgdGhhdCBpdCBkb2Vzbid0IGNyYXNoIGZvciB5ZWFyID4gOTk5OQogICAgICAgICB0cnk6Ci0gICAgICAgICAgICB0ZXh0ID0gc2VsZi55ZWFyc3RyKDEyMzQ1KQorICAgICAgICAgICAgdGltZS5zdHJmdGltZSgnJVknLCAoeSwpICsgKDAsKSAqIDgpCiAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgotICAgICAgICAgICAgIyBzdHJmdGltZSgpIGlzIGxpbWl0ZWQgdG8gWzE7IDk5OTldIHdpdGggVmlzdWFsIFN0dWRpbwotICAgICAgICAgICAgcmV0dXJuCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgJzEyMzQ1JykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoMTIzNDU2Nzg5KSwgJzEyMzQ1Njc4OScpCisgICAgICAgICAgICBjb25kID0gRmFsc2UKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGNvbmQgPSBUcnVlCisgICAgICAgIHJldHVybiB1bml0dGVzdC5za2lwVW5sZXNzKGNvbmQsIG1zZykKIAotY2xhc3MgX1Rlc3QyZFllYXIoX0Jhc2VZZWFyVGVzdCk6Ci0gICAgYWNjZXB0MmR5ZWFyID0gMQorICAgIEBza2lwX2lmX25vdF9zdXBwb3J0ZWQoMTAwMDApCisgICAgZGVmIHRlc3RfbGFyZ2VfeWVhcihzZWxmKToKKyAgICAgICAgcmV0dXJuIHN1cGVyKCkudGVzdF9sYXJnZV95ZWFyKCkKIAotICAgIGRlZiB0ZXN0X3llYXIoc2VsZik6Ci0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygpOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoMCksICcyMDAwJykKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKDY5KSwgJzE5NjknKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoNjgpLCAnMjA2OCcpCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cig5OSksICcxOTk5JykKKyAgICBAc2tpcF9pZl9ub3Rfc3VwcG9ydGVkKDApCisgICAgZGVmIHRlc3RfbmVnYXRpdmUoc2VsZik6CisgICAgICAgIHJldHVybiBzdXBlcigpLnRlc3RfbmVnYXRpdmUoKQogCi0gICAgZGVmIHRlc3RfaW52YWxpZChzZWxmKToKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2VsZi55ZWFyc3RyLCAtMSkKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2VsZi55ZWFyc3RyLCAxMDApCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGYueWVhcnN0ciwgOTk5KQorICAgIGRlbCBza2lwX2lmX25vdF9zdXBwb3J0ZWQKKwogCiBjbGFzcyBfVGVzdDRkWWVhcihfQmFzZVllYXJUZXN0KToKLSAgICBhY2NlcHQyZHllYXIgPSAwCisgICAgX2Zvcm1hdCA9ICclZCcKIAotICAgIGRlZiB0ZXN0X3llYXIoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi55ZWFyc3RyKDEpLCAgICAgKCcxJywgJzAwMDEnKSkKLSAgICAgICAgc2VsZi5hc3NlcnRJbihzZWxmLnllYXJzdHIoNjgpLCAgICgnNjgnLCAnMDA2OCcpKQotICAgICAgICBzZWxmLmFzc2VydEluKHNlbGYueWVhcnN0cig2OSksICAgKCc2OScsICcwMDY5JykpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi55ZWFyc3RyKDk5KSwgICAoJzk5JywgJzAwOTknKSkKLSAgICAgICAgc2VsZi5hc3NlcnRJbihzZWxmLnllYXJzdHIoOTk5KSwgKCc5OTknLCAnMDk5OScpKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cig5OTk5KSwgJzk5OTknKQorICAgIGRlZiB0ZXN0X3llYXIoc2VsZiwgZm10PU5vbmUsIGZ1bmM9Tm9uZSk6CisgICAgICAgIGZtdCA9IGZtdCBvciBzZWxmLl9mb3JtYXQKKyAgICAgICAgZnVuYyA9IGZ1bmMgb3Igc2VsZi55ZWFyc3RyCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnVuYygxKSwgICAgZm10ICUgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdW5jKDY4KSwgICBmbXQgJSA2OCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdW5jKDY5KSwgICBmbXQgJSA2OSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdW5jKDk5KSwgICBmbXQgJSA5OSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdW5jKDk5OSksICBmbXQgJSA5OTkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnVuYyg5OTk5KSwgZm10ICUgOTk5OSkKKworICAgIGRlZiB0ZXN0X2xhcmdlX3llYXIoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKDEyMzQ1KSwgJzEyMzQ1JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoMTIzNDU2Nzg5KSwgJzEyMzQ1Njc4OScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKFRJTUVfTUFYWUVBUiksIHN0cihUSU1FX01BWFlFQVIpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBzZWxmLnllYXJzdHIsIFRJTUVfTUFYWUVBUiArIDEpCiAKICAgICBkZWYgdGVzdF9uZWdhdGl2ZShzZWxmKToKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgdGV4dCA9IHNlbGYueWVhcnN0cigtMSkKLSAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6Ci0gICAgICAgICAgICAjIHN0cmZ0aW1lKCkgaXMgbGltaXRlZCB0byBbMTsgOTk5OV0gd2l0aCBWaXN1YWwgU3R1ZGlvCi0gICAgICAgICAgICByZXR1cm4KLSAgICAgICAgc2VsZi5hc3NlcnRJbih0ZXh0LCAoJy0xJywgJy0wMDEnKSkKLQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cigtMSksIHNlbGYuX2Zvcm1hdCAlIC0xKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cigtMTIzNCksICctMTIzNCcpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKC0xMjM0NTYpLCAnLTEyMzQ1NicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKC0xMjM0NTY3ODkpLCBzdHIoLTEyMzQ1Njc4OSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKC0xMjM0NTY3ODkwKSwgc3RyKC0xMjM0NTY3ODkwKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoVElNRV9NSU5ZRUFSICsgMTkwMCksIHN0cihUSU1FX01JTllFQVIgKyAxOTAwKSkKKyAgICAgICAgIyBJc3N1ZSAjMTMzMTI6IGl0IG1heSByZXR1cm4gd3JvbmcgdmFsdWUgZm9yIHllYXIgPCBUSU1FX01JTllFQVIgKyAxOTAwCisgICAgICAgICMgU2tpcCB0aGUgdmFsdWUgdGVzdCwgYnV0IGNoZWNrIHRoYXQgbm8gZXJyb3IgaXMgcmFpc2VkCisgICAgICAgIHNlbGYueWVhcnN0cihUSU1FX01JTllFQVIpCisgICAgICAgICMgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoVElNRV9NSU5ZRUFSKSwgc3RyKFRJTUVfTUlOWUVBUikpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHNlbGYueWVhcnN0ciwgVElNRV9NSU5ZRUFSIC0gMSkKIAogCi0gICAgZGVmIHRlc3RfbWt0aW1lKHNlbGYpOgotICAgICAgICAjIElzc3VlICMxNzI2Njg3Ci0gICAgICAgIGZvciB0IGluICgtMiwgLTEsIDAsIDEpOgotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHR0ID0gdGltZS5sb2NhbHRpbWUodCkKLSAgICAgICAgICAgIGV4Y2VwdCAoT3ZlcmZsb3dFcnJvciwgVmFsdWVFcnJvcik6Ci0gICAgICAgICAgICAgICAgcGFzcwotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRpbWUubWt0aW1lKHR0KSwgdCkKLSAgICAgICAgIyBJdCBtYXkgbm90IGJlIHBvc3NpYmxlIHRvIHJlbGlhYmx5IG1ha2UgbWt0aW1lIHJldHVybiBlcnJvcgotICAgICAgICAjIG9uIGFsbCBwbGF0Zm9tLiAgVGhpcyB3aWxsIG1ha2Ugc3VyZSB0aGF0IG5vIG90aGVyIGV4Y2VwdGlvbgotICAgICAgICAjIHRoYW4gT3ZlcmZsb3dFcnJvciBpcyByYWlzZWQgZm9yIGFuIGV4dHJlbWUgdmFsdWUuCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHRpbWUubWt0aW1lKCgtMSwgMSwgMSwgMCwgMCwgMCwgLTEsIC0xLCAtMSkpCi0gICAgICAgIGV4Y2VwdCBPdmVyZmxvd0Vycm9yOgotICAgICAgICAgICAgcGFzcwotCi1jbGFzcyBUZXN0QXNjdGltZUFjY2VwdDJkWWVhcihfVGVzdEFzY3RpbWVZZWFyLCBfVGVzdDJkWWVhcik6Ci0gICAgcGFzcwotCi1jbGFzcyBUZXN0U3RyZnRpbWVBY2NlcHQyZFllYXIoX1Rlc3RTdHJmdGltZVllYXIsIF9UZXN0MmRZZWFyKToKLSAgICBwYXNzCi0KIGNsYXNzIFRlc3RBc2N0aW1lNGR5ZWFyKF9UZXN0QXNjdGltZVllYXIsIF9UZXN0NGRZZWFyKToKICAgICBwYXNzCiAKIGNsYXNzIFRlc3RTdHJmdGltZTRkeWVhcihfVGVzdFN0cmZ0aW1lWWVhciwgX1Rlc3Q0ZFllYXIpOgogICAgIHBhc3MKIAotY2xhc3MgVGVzdDJkeWVhckJvb2woX1Rlc3RBc2N0aW1lWWVhciwgX1Rlc3QyZFllYXIpOgotICAgIGFjY2VwdDJkeWVhciA9IFRydWUKIAotY2xhc3MgVGVzdDRkeWVhckJvb2woX1Rlc3RBc2N0aW1lWWVhciwgX1Rlc3Q0ZFllYXIpOgotICAgIGFjY2VwdDJkeWVhciA9IEZhbHNlCitjbGFzcyBUZXN0UHl0aW1lKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBkZWYgdGVzdF90aW1lc3BlYyhzZWxmKToKKyAgICAgICAgZnJvbSBfdGVzdGNhcGkgaW1wb3J0IHB5dGltZV9vYmplY3RfdG9fdGltZXNwZWMKKyAgICAgICAgZm9yIG9iaiwgdGltZXNwZWMgaW4gKAorICAgICAgICAgICAgKDAsICgwLCAwKSksCisgICAgICAgICAgICAoLTEsICgtMSwgMCkpLAorICAgICAgICAgICAgKC0xLjAsICgtMSwgMCkpLAorICAgICAgICAgICAgKC0xZS05LCAoLTEsIDk5OTk5OTk5OSkpLAorICAgICAgICAgICAgKC0xLjIsICgtMiwgODAwMDAwMDAwKSksCisgICAgICAgICAgICAoMS4xMjM0NTY3ODksICgxLCAxMjM0NTY3ODkpKSwKKyAgICAgICAgKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHl0aW1lX29iamVjdF90b190aW1lc3BlYyhvYmopLCB0aW1lc3BlYykKIAotY2xhc3MgVGVzdEFjY2VwdDJZZWFyQmFkKF9UZXN0QXNjdGltZVllYXIsIF9CYXNlWWVhclRlc3QpOgotICAgIGNsYXNzIFg6Ci0gICAgICAgIGRlZiBfX2Jvb2xfXyhzZWxmKToKLSAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcignYm9vJykKLSAgICBhY2NlcHQyZHllYXIgPSBYKCkKLSAgICBkZWYgdGVzdF8yZHllYXIoc2VsZik6Ci0gICAgICAgIHBhc3MKLSAgICBkZWYgdGVzdF9pbnZhbGlkKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIHNlbGYueWVhcnN0ciwgMjAwKQorICAgICAgICBmb3IgaW52YWxpZCBpbiAoLSgyICoqIDEwMCksIC0oMi4wICoqIDEwMC4wKSwgMiAqKiAxMDAsIDIuMCAqKiAxMDAuMCk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBweXRpbWVfb2JqZWN0X3RvX3RpbWVzcGVjLCBpbnZhbGlkKQorCiAKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KAogICAgICAgICBUaW1lVGVzdENhc2UsCiAgICAgICAgIFRlc3RMb2NhbGUsCi0gICAgICAgIFRlc3RBc2N0aW1lQWNjZXB0MmRZZWFyLAotICAgICAgICBUZXN0U3RyZnRpbWVBY2NlcHQyZFllYXIsCiAgICAgICAgIFRlc3RBc2N0aW1lNGR5ZWFyLAogICAgICAgICBUZXN0U3RyZnRpbWU0ZHllYXIsCi0gICAgICAgIFRlc3QyZHllYXJCb29sLAotICAgICAgICBUZXN0NGR5ZWFyQm9vbCwKLSAgICAgICAgVGVzdEFjY2VwdDJZZWFyQmFkKQorICAgICAgICBUZXN0UHl0aW1lKQogCiBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3Rva2VuaXplLnB5IGIvTGliL3Rlc3QvdGVzdF90b2tlbml6ZS5weQppbmRleCA5ZTk2NTZjLi5kYjg3ZTExIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3Rva2VuaXplLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdG9rZW5pemUucHkKQEAgLTU2MywxNSArNTYzLDI4IEBACiAgICAgTkFNRSAgICAgICAnZ3LDvG4nICAgICAgICAoMiwgMCkgKDIsIDQpCiAgICAgT1AgICAgICAgICAnPScgICAgICAgICAgICgyLCA1KSAoMiwgNikKICAgICBTVFJJTkcgICAgICInZ3JlZW4nIiAgICAgKDIsIDcpICgyLCAxNCkKKworTGVnYWN5IHVuaWNvZGUgbGl0ZXJhbHM6CisKKyAgICA+Pj4gZHVtcF90b2tlbnMoIsOWcnRlciA9IHUncGxhY2VzJ1xcbmdyw7xuID0gVVInZ3JlZW4nIikKKyAgICBFTkNPRElORyAgICd1dGYtOCcgICAgICAgKDAsIDApICgwLCAwKQorICAgIE5BTUUgICAgICAgJ8OWcnRlcicgICAgICAgKDEsIDApICgxLCA1KQorICAgIE9QICAgICAgICAgJz0nICAgICAgICAgICAoMSwgNikgKDEsIDcpCisgICAgU1RSSU5HICAgICAidSdwbGFjZXMnIiAgICgxLCA4KSAoMSwgMTcpCisgICAgTkVXTElORSAgICAnXFxuJyAgICAgICAgICAoMSwgMTcpICgxLCAxOCkKKyAgICBOQU1FICAgICAgICdncsO8bicgICAgICAgICgyLCAwKSAoMiwgNCkKKyAgICBPUCAgICAgICAgICc9JyAgICAgICAgICAgKDIsIDUpICgyLCA2KQorICAgIFNUUklORyAgICAgIlVSJ2dyZWVuJyIgICAoMiwgNykgKDIsIDE2KQogIiIiCiAKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogZnJvbSB0b2tlbml6ZSBpbXBvcnQgKHRva2VuaXplLCBfdG9rZW5pemUsIHVudG9rZW5pemUsIE5VTUJFUiwgTkFNRSwgT1AsCi0gICAgICAgICAgICAgICAgICAgICBTVFJJTkcsIEVORE1BUktFUiwgdG9rX25hbWUsIGRldGVjdF9lbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgIFNUUklORywgRU5ETUFSS0VSLCBFTkNPRElORywgdG9rX25hbWUsIGRldGVjdF9lbmNvZGluZywKICAgICAgICAgICAgICAgICAgICAgIG9wZW4gYXMgdG9rZW5pemVfb3BlbikKIGZyb20gaW8gaW1wb3J0IEJ5dGVzSU8KIGZyb20gdW5pdHRlc3QgaW1wb3J0IFRlc3RDYXNlCiBpbXBvcnQgb3MsIHN5cywgZ2xvYgoraW1wb3J0IHRva2VuCiAKIGRlZiBkdW1wX3Rva2VucyhzKToKICAgICAiIiJQcmludCBvdXQgdGhlIHRva2VucyBpbiBzIGluIGEgdGFibGUgZm9ybWF0LgpAQCAtNjAwLDcgKzYxMyw3IEBACiAgICAgICAgIGYuY2xvc2UoKQogICAgIHRva2VuczEgPSBbdG9rWzoyXSBmb3IgdG9rIGluIHRva2VuX2xpc3RdCiAgICAgbmV3X2J5dGVzID0gdW50b2tlbml6ZSh0b2tlbnMxKQotICAgIHJlYWRsaW5lID0gKGxpbmUgZm9yIGxpbmUgaW4gbmV3X2J5dGVzLnNwbGl0bGluZXMoMSkpLl9fbmV4dF9fCisgICAgcmVhZGxpbmUgPSAobGluZSBmb3IgbGluZSBpbiBuZXdfYnl0ZXMuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKSkuX19uZXh0X18KICAgICB0b2tlbnMyID0gW3Rva1s6Ml0gZm9yIHRvayBpbiB0b2tlbml6ZShyZWFkbGluZSldCiAgICAgcmV0dXJuIHRva2VuczEgPT0gdG9rZW5zMgogCkBAIC05MjIsNiArOTM1LDc4IEBACiAKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGVuY29kaW5nX3VzZWQsIGVuY29kaW5nKQogCisgICAgZGVmIGFzc2VydEV4YWN0VHlwZUVxdWFsKHNlbGYsIG9wc3RyLCAqb3B0eXBlcyk6CisgICAgICAgIHRva2VucyA9IGxpc3QodG9rZW5pemUoQnl0ZXNJTyhvcHN0ci5lbmNvZGUoJ3V0Zi04JykpLnJlYWRsaW5lKSkKKyAgICAgICAgbnVtX29wdHlwZXMgPSBsZW4ob3B0eXBlcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4odG9rZW5zKSwgMiArIG51bV9vcHR5cGVzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRva2VuLnRva19uYW1lW3Rva2Vuc1swXS5leGFjdF90eXBlXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICB0b2tlbi50b2tfbmFtZVtFTkNPRElOR10pCisgICAgICAgIGZvciBpIGluIHJhbmdlKG51bV9vcHR5cGVzKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9rZW4udG9rX25hbWVbdG9rZW5zW2kgKyAxXS5leGFjdF90eXBlXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4udG9rX25hbWVbb3B0eXBlc1tpXV0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9rZW4udG9rX25hbWVbdG9rZW5zWzEgKyBudW1fb3B0eXBlc10uZXhhY3RfdHlwZV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4udG9rX25hbWVbdG9rZW4uRU5ETUFSS0VSXSkKKworICAgIGRlZiB0ZXN0X2V4YWN0X3R5cGUoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJygpJywgdG9rZW4uTFBBUiwgdG9rZW4uUlBBUikKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnW10nLCB0b2tlbi5MU1FCLCB0b2tlbi5SU1FCKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCc6JywgdG9rZW4uQ09MT04pCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJywnLCB0b2tlbi5DT01NQSkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnOycsIHRva2VuLlNFTUkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJysnLCB0b2tlbi5QTFVTKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCctJywgdG9rZW4uTUlOVVMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJyonLCB0b2tlbi5TVEFSKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCcvJywgdG9rZW4uU0xBU0gpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJ3wnLCB0b2tlbi5WQkFSKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCcmJywgdG9rZW4uQU1QRVIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJzwnLCB0b2tlbi5MRVNTKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCc+JywgdG9rZW4uR1JFQVRFUikKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnPScsIHRva2VuLkVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCcuJywgdG9rZW4uRE9UKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCclJywgdG9rZW4uUEVSQ0VOVCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgne30nLCB0b2tlbi5MQlJBQ0UsIHRva2VuLlJCUkFDRSkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnPT0nLCB0b2tlbi5FUUVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCchPScsIHRva2VuLk5PVEVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCc8PScsIHRva2VuLkxFU1NFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnPj0nLCB0b2tlbi5HUkVBVEVSRVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJ34nLCB0b2tlbi5USUxERSkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnXicsIHRva2VuLkNJUkNVTUZMRVgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJzw8JywgdG9rZW4uTEVGVFNISUZUKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCc+PicsIHRva2VuLlJJR0hUU0hJRlQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJyoqJywgdG9rZW4uRE9VQkxFU1RBUikKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnKz0nLCB0b2tlbi5QTFVTRVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJy09JywgdG9rZW4uTUlORVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJyo9JywgdG9rZW4uU1RBUkVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCcvPScsIHRva2VuLlNMQVNIRVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJyU9JywgdG9rZW4uUEVSQ0VOVEVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCcmPScsIHRva2VuLkFNUEVSRVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJ3w9JywgdG9rZW4uVkJBUkVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCdePScsIHRva2VuLkNJUkNVTUZMRVhFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnXj0nLCB0b2tlbi5DSVJDVU1GTEVYRVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJzw8PScsIHRva2VuLkxFRlRTSElGVEVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCc+Pj0nLCB0b2tlbi5SSUdIVFNISUZURVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJyoqPScsIHRva2VuLkRPVUJMRVNUQVJFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnLy8nLCB0b2tlbi5ET1VCTEVTTEFTSCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnLy89JywgdG9rZW4uRE9VQkxFU0xBU0hFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnQCcsIHRva2VuLkFUKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJ2EqKjIrYioqMj09YyoqMicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTkFNRSwgdG9rZW4uRE9VQkxFU1RBUiwgTlVNQkVSLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuLlBMVVMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTkFNRSwgdG9rZW4uRE9VQkxFU1RBUiwgTlVNQkVSLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuLkVRRVFVQUwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTkFNRSwgdG9rZW4uRE9VQkxFU1RBUiwgTlVNQkVSKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCd7MSwgMiwgM30nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuLkxCUkFDRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2tlbi5OVU1CRVIsIHRva2VuLkNPTU1BLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuLk5VTUJFUiwgdG9rZW4uQ09NTUEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4uTlVNQkVSLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuLlJCUkFDRSkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnXih4ICYgMHgxKScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4uQ0lSQ1VNRkxFWCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2tlbi5MUEFSLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuLk5BTUUsIHRva2VuLkFNUEVSLCB0b2tlbi5OVU1CRVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4uUlBBUikKIAogX190ZXN0X18gPSB7ImRvY3Rlc3RzIiA6IGRvY3Rlc3RzLCAnZGVjaXN0bXQnOiBkZWNpc3RtdH0KIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF90cmFjZS5weSBiL0xpYi90ZXN0L3Rlc3RfdHJhY2UucHkKaW5kZXggNDYxZDFkOC4uZDliZWYzOCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF90cmFjZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3RyYWNlLnB5CkBAIC0xMDIsNiArMTAyLDcgQEAKIGNsYXNzIFRlc3RMaW5lQ291bnRzKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAiIiJXaGl0ZS1ib3ggdGVzdGluZyBvZiBsaW5lLWNvdW50aW5nLCB2aWEgcnVuZnVuYyIiIgogICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5zZXR0cmFjZSwgc3lzLmdldHRyYWNlKCkpCiAgICAgICAgIHNlbGYudHJhY2VyID0gVHJhY2UoY291bnQ9MSwgdHJhY2U9MCwgY291bnRmdW5jcz0wLCBjb3VudGNhbGxlcnM9MCkKICAgICAgICAgc2VsZi5teV9weV9maWxlbmFtZSA9IGZpeF9leHRfcHkoX19maWxlX18pCiAKQEAgLTE5Miw2ICsxOTMsNyBAQAogICAgICIiIkEgc2ltcGxlIHNhbml0eSB0ZXN0IG9mIGxpbmUtY291bnRpbmcsIHZpYSBydW5jdHggKGV4ZWMpIiIiCiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICBzZWxmLm15X3B5X2ZpbGVuYW1lID0gZml4X2V4dF9weShfX2ZpbGVfXykKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5zZXR0cmFjZSwgc3lzLmdldHRyYWNlKCkpCiAKICAgICBkZWYgdGVzdF9leGVjX2NvdW50cyhzZWxmKToKICAgICAgICAgc2VsZi50cmFjZXIgPSBUcmFjZShjb3VudD0xLCB0cmFjZT0wLCBjb3VudGZ1bmNzPTAsIGNvdW50Y2FsbGVycz0wKQpAQCAtMjE4LDYgKzIyMCw3IEBACiBjbGFzcyBUZXN0RnVuY3ModW5pdHRlc3QuVGVzdENhc2UpOgogICAgICIiIldoaXRlLWJveCB0ZXN0aW5nIG9mIGZ1bmNzIHRyYWNpbmciIiIKICAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMuc2V0dHJhY2UsIHN5cy5nZXR0cmFjZSgpKQogICAgICAgICBzZWxmLnRyYWNlciA9IFRyYWNlKGNvdW50PTAsIHRyYWNlPTAsIGNvdW50ZnVuY3M9MSkKICAgICAgICAgc2VsZi5maWxlbW9kID0gbXlfZmlsZV9hbmRfbW9kbmFtZSgpCiAKQEAgLTI0Miw2ICsyNDUsOCBAQAogICAgICAgICB9CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi50cmFjZXIucmVzdWx0cygpLmNhbGxlZGZ1bmNzLCBleHBlY3RlZCkKIAorICAgIEB1bml0dGVzdC5za2lwSWYoaGFzYXR0cihzeXMsICdnZXR0cmFjZScpIGFuZCBzeXMuZ2V0dHJhY2UoKSwKKyAgICAgICAgICAgICAgICAgICAgICdwcmUtZXhpc3RpbmcgdHJhY2UgZnVuY3Rpb24gdGhyb3dzIG9mZiBtZWFzdXJlbWVudHMnKQogICAgIGRlZiB0ZXN0X2luc3RfbWV0aG9kX2NhbGxpbmcoc2VsZik6CiAgICAgICAgIG9iaiA9IFRyYWNlZENsYXNzKDIwKQogICAgICAgICBzZWxmLnRyYWNlci5ydW5mdW5jKG9iai5pbnN0X21ldGhvZF9jYWxsaW5nLCAxKQpAQCAtMjU3LDkgKzI2MiwxMiBAQAogY2xhc3MgVGVzdENhbGxlcnModW5pdHRlc3QuVGVzdENhc2UpOgogICAgICIiIldoaXRlLWJveCB0ZXN0aW5nIG9mIGNhbGxlcnMgdHJhY2luZyIiIgogICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5zZXR0cmFjZSwgc3lzLmdldHRyYWNlKCkpCiAgICAgICAgIHNlbGYudHJhY2VyID0gVHJhY2UoY291bnQ9MCwgdHJhY2U9MCwgY291bnRjYWxsZXJzPTEpCiAgICAgICAgIHNlbGYuZmlsZW1vZCA9IG15X2ZpbGVfYW5kX21vZG5hbWUoKQogCisgICAgQHVuaXR0ZXN0LnNraXBJZihoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpLAorICAgICAgICAgICAgICAgICAgICAgJ3ByZS1leGlzdGluZyB0cmFjZSBmdW5jdGlvbiB0aHJvd3Mgb2ZmIG1lYXN1cmVtZW50cycpCiAgICAgZGVmIHRlc3RfbG9vcF9jYWxsZXJfaW1wb3J0aW5nKHNlbGYpOgogICAgICAgICBzZWxmLnRyYWNlci5ydW5mdW5jKHRyYWNlZF9mdW5jX2ltcG9ydGluZ19jYWxsZXIsIDEpCiAKQEAgLTI4MCw2ICsyODgsOSBAQAogCiAjIENyZWF0ZWQgc2VwYXJhdGVseSBmb3IgaXNzdWUgIzM4MjEKIGNsYXNzIFRlc3RDb3ZlcmFnZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnNldHRyYWNlLCBzeXMuZ2V0dHJhY2UoKSkKKwogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKICAgICAgICAgcm10cmVlKFRFU1RGTikKICAgICAgICAgdW5saW5rKFRFU1RGTikKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfdHJhY2ViYWNrLnB5IGIvTGliL3Rlc3QvdGVzdF90cmFjZWJhY2sucHkKaW5kZXggNDc1MmQzNy4uNWJjZTJhZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF90cmFjZWJhY2sucHkKKysrIGIvTGliL3Rlc3QvdGVzdF90cmFjZWJhY2sucHkKQEAgLTI0Niw2ICsyNDYsMjEgQEAKICAgICAgICAgc2VsZi5jaGVja196ZXJvX2RpdihibG9ja3NbMF0pCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2lubmVyX3JhaXNlKCkgIyBNYXJrZXInLCBibG9ja3NbMl0pCiAKKyAgICBkZWYgdGVzdF9jb250ZXh0X3N1cHByZXNzaW9uKHNlbGYpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uCisgICAgICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICAgICAgcmFpc2UgWmVyb0RpdmlzaW9uRXJyb3IgZnJvbSBOb25lCisgICAgICAgIGV4Y2VwdCBaZXJvRGl2aXNpb25FcnJvciBhcyBfOgorICAgICAgICAgICAgZSA9IF8KKyAgICAgICAgbGluZXMgPSBzZWxmLmdldF9yZXBvcnQoZSkuc3BsaXRsaW5lcygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGxpbmVzKSwgNCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGxpbmVzWzBdLnN0YXJ0c3dpdGgoJ1RyYWNlYmFjaycpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUobGluZXNbMV0uc3RhcnRzd2l0aCgnICBGaWxlJykpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ1plcm9EaXZpc2lvbkVycm9yIGZyb20gTm9uZScsIGxpbmVzWzJdKQorICAgICAgICBzZWxmLmFzc2VydFRydWUobGluZXNbM10uc3RhcnRzd2l0aCgnWmVyb0RpdmlzaW9uRXJyb3InKSkKKwogICAgIGRlZiB0ZXN0X2NhdXNlX2FuZF9jb250ZXh0KHNlbGYpOgogICAgICAgICAjIFdoZW4gYm90aCBhIGNhdXNlIGFuZCBhIGNvbnRleHQgYXJlIHNldCwgb25seSB0aGUgY2F1c2Ugc2hvdWxkIGJlCiAgICAgICAgICMgZGlzcGxheWVkIGFuZCB0aGUgY29udGV4dCBzaG91bGQgYmUgbXV0ZWQuCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3Vjbi5weSBiL0xpYi90ZXN0L3Rlc3RfdWNuLnB5CmluZGV4IGZkNjIwZjAuLjY4YTMyMTkgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdWNuLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdWNuLnB5CkBAIC04LDggKzgsMTEgQEAKICIiIiMiCiAKIGltcG9ydCB1bml0dGVzdAoraW1wb3J0IHVuaWNvZGVkYXRhCiAKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAorZnJvbSBodHRwLmNsaWVudCBpbXBvcnQgSFRUUEV4Y2VwdGlvbgorZnJvbSB0ZXN0LnRlc3Rfbm9ybWFsaXphdGlvbiBpbXBvcnQgY2hlY2tfdmVyc2lvbgogCiBjbGFzcyBVbmljb2RlTmFtZXNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtNTksOCArNjIsNiBAQAogICAgICAgICApCiAKICAgICBkZWYgdGVzdF9hc2NpaV9sZXR0ZXJzKHNlbGYpOgotICAgICAgICBpbXBvcnQgdW5pY29kZWRhdGEKLQogICAgICAgICBmb3IgY2hhciBpbiAiIi5qb2luKG1hcChjaHIsIHJhbmdlKG9yZCgiYSIpLCBvcmQoInoiKSkpKToKICAgICAgICAgICAgIG5hbWUgPSAiTEFUSU4gU01BTEwgTEVUVEVSICVzIiAlIGNoYXIudXBwZXIoKQogICAgICAgICAgICAgY29kZSA9IHVuaWNvZGVkYXRhLmxvb2t1cChuYW1lKQpAQCAtODEsNyArODIsNiBAQAogICAgICAgICBzZWxmLmNoZWNrbGV0dGVyKCJIQU5HVUwgU1lMTEFCTEUgSFdFT0siLCAiXHVkNmY4IikKICAgICAgICAgc2VsZi5jaGVja2xldHRlcigiSEFOR1VMIFNZTExBQkxFIEhJSCIsICJcdWQ3YTMiKQogCi0gICAgICAgIGltcG9ydCB1bmljb2RlZGF0YQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCB1bmljb2RlZGF0YS5uYW1lLCAiXHVkN2E0IikKIAogICAgIGRlZiB0ZXN0X2Nqa191bmlmaWVkX2lkZW9ncmFwaHMoc2VsZik6CkBAIC05NywxNCArOTcsMTEgQEAKICAgICAgICAgc2VsZi5jaGVja2xldHRlcigiQ0pLIFVOSUZJRUQgSURFT0dSQVBILTJCODFEIiwgIlxVMDAwMkI4MUQiKQogCiAgICAgZGVmIHRlc3RfYm1wX2NoYXJhY3RlcnMoc2VsZik6Ci0gICAgICAgIGltcG9ydCB1bmljb2RlZGF0YQotICAgICAgICBjb3VudCA9IDAKICAgICAgICAgZm9yIGNvZGUgaW4gcmFuZ2UoMHgxMDAwMCk6CiAgICAgICAgICAgICBjaGFyID0gY2hyKGNvZGUpCiAgICAgICAgICAgICBuYW1lID0gdW5pY29kZWRhdGEubmFtZShjaGFyLCBOb25lKQogICAgICAgICAgICAgaWYgbmFtZSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVkYXRhLmxvb2t1cChuYW1lKSwgY2hhcikKLSAgICAgICAgICAgICAgICBjb3VudCArPSAxCiAKICAgICBkZWYgdGVzdF9taXNjX3N5bWJvbHMoc2VsZik6CiAgICAgICAgIHNlbGYuY2hlY2tsZXR0ZXIoIlBJTENST1cgU0lHTiIsICJcdTAwYjYiKQpAQCAtMTEyLDggKzEwOSw4NSBAQAogICAgICAgICBzZWxmLmNoZWNrbGV0dGVyKCJIQUxGV0lEVEggS0FUQUtBTkEgU0VNSS1WT0lDRUQgU09VTkQgTUFSSyIsICJcdUZGOUYiKQogICAgICAgICBzZWxmLmNoZWNrbGV0dGVyKCJGVUxMV0lEVEggTEFUSU4gU01BTEwgTEVUVEVSIEEiLCAiXHVGRjQxIikKIAorICAgIGRlZiB0ZXN0X2FsaWFzZXMoc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCB0aGUgYWxpYXNlcyBkZWZpbmVkIGluIHRoZSBOYW1lQWxpYXNlcy50eHQgZmlsZSB3b3JrLgorICAgICAgICAjIFRoaXMgc2hvdWxkIGJlIHVwZGF0ZWQgd2hlbiBuZXcgYWxpYXNlcyBhcmUgYWRkZWQgb3IgdGhlIGZpbGUKKyAgICAgICAgIyBzaG91bGQgYmUgZG93bmxvYWRlZCBhbmQgcGFyc2VkIGluc3RlYWQuICBTZWUgIzEyNzUzLgorICAgICAgICBhbGlhc2VzID0gWworICAgICAgICAgICAgKCdMQVRJTiBDQVBJVEFMIExFVFRFUiBHSEEnLCAweDAxQTIpLAorICAgICAgICAgICAgKCdMQVRJTiBTTUFMTCBMRVRURVIgR0hBJywgMHgwMUEzKSwKKyAgICAgICAgICAgICgnS0FOTkFEQSBMRVRURVIgTExMQScsIDB4MENERSksCisgICAgICAgICAgICAoJ0xBTyBMRVRURVIgRk8gRk9OJywgMHgwRTlEKSwKKyAgICAgICAgICAgICgnTEFPIExFVFRFUiBGTyBGQVknLCAweDBFOUYpLAorICAgICAgICAgICAgKCdMQU8gTEVUVEVSIFJPJywgMHgwRUEzKSwKKyAgICAgICAgICAgICgnTEFPIExFVFRFUiBMTycsIDB4MEVBNSksCisgICAgICAgICAgICAoJ1RJQkVUQU4gTUFSSyBCS0EtIFNIT0cgR0kgTUdPIFJHWUFOJywgMHgwRkQwKSwKKyAgICAgICAgICAgICgnWUkgU1lMTEFCTEUgSVRFUkFUSU9OIE1BUksnLCAweEEwMTUpLAorICAgICAgICAgICAgKCdQUkVTRU5UQVRJT04gRk9STSBGT1IgVkVSVElDQUwgUklHSFQgV0hJVEUgTEVOVElDVUxBUiBCUkFDS0VUJywgMHhGRTE4KSwKKyAgICAgICAgICAgICgnQllaQU5USU5FIE1VU0lDQUwgU1lNQk9MIEZUSE9SQSBTS0xJUk9OIENIUk9NQSBWQVNJUycsIDB4MUQwQzUpCisgICAgICAgIF0KKyAgICAgICAgZm9yIGFsaWFzLCBjb2RlcG9pbnQgaW4gYWxpYXNlczoKKyAgICAgICAgICAgIHNlbGYuY2hlY2tsZXR0ZXIoYWxpYXMsIGNocihjb2RlcG9pbnQpKQorICAgICAgICAgICAgbmFtZSA9IHVuaWNvZGVkYXRhLm5hbWUoY2hyKGNvZGVwb2ludCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKG5hbWUsIGFsaWFzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlZGF0YS5sb29rdXAoYWxpYXMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmljb2RlZGF0YS5sb29rdXAobmFtZSkpCisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEtleUVycm9yKToKKyAgICAgICAgICAgICAgICB1bmljb2RlZGF0YS51Y2RfM18yXzAubG9va3VwKGFsaWFzKQorCisgICAgZGVmIHRlc3RfYWxpYXNlc19uYW1lc19pbl9wdWFfcmFuZ2Uoc2VsZik6CisgICAgICAgICMgV2UgYXJlIHN0b3JpbmcgYWxpYXNlcyBpbiB0aGUgUFVBIDE1LCBidXQgdGhlaXIgbmFtZXMgc2hvdWxkbid0IGxlYWsKKyAgICAgICAgZm9yIGNwIGluIHJhbmdlKDB4ZjAwMDAsIDB4ZjAxMDApOgorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKSBhcyBjbToKKyAgICAgICAgICAgICAgICB1bmljb2RlZGF0YS5uYW1lKGNocihjcCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihjbS5leGNlcHRpb24pLCAnbm8gc3VjaCBuYW1lJykKKworICAgIGRlZiB0ZXN0X25hbWVkX3NlcXVlbmNlc19uYW1lc19pbl9wdWFfcmFuZ2Uoc2VsZik6CisgICAgICAgICMgV2UgYXJlIHN0b3JpbmcgbmFtZWQgc2VxIGluIHRoZSBQVUEgMTUsIGJ1dCB0aGVpciBuYW1lcyBzaG91bGRuJ3QgbGVhaworICAgICAgICBmb3IgY3AgaW4gcmFuZ2UoMHhmMDEwMCwgMHhmMGZmZik6CisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgICAgIHVuaWNvZGVkYXRhLm5hbWUoY2hyKGNwKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKGNtLmV4Y2VwdGlvbiksICdubyBzdWNoIG5hbWUnKQorCisgICAgZGVmIHRlc3RfbmFtZWRfc2VxdWVuY2VzX3NhbXBsZShzZWxmKToKKyAgICAgICAgIyBDaGVjayBhIGZldyBuYW1lZCBzZXF1ZW5jZXMuICBTZWUgIzEyNzUzLgorICAgICAgICBzZXF1ZW5jZXMgPSBbCisgICAgICAgICAgICAoJ0xBVElOIFNNQUxMIExFVFRFUiBSIFdJVEggVElMREUnLCAnXHUwMDcyXHUwMzAzJyksCisgICAgICAgICAgICAoJ1RBTUlMIFNZTExBQkxFIFNBSScsICdcdTBCQjhcdTBCQzgnKSwKKyAgICAgICAgICAgICgnVEFNSUwgU1lMTEFCTEUgTU9PJywgJ1x1MEJBRVx1MEJDQicpLAorICAgICAgICAgICAgKCdUQU1JTCBTWUxMQUJMRSBOTk9PJywgJ1x1MEJBM1x1MEJDQicpLAorICAgICAgICAgICAgKCdUQU1JTCBDT05TT05BTlQgS1NTJywgJ1x1MEI5NVx1MEJDRFx1MEJCN1x1MEJDRCcpLAorICAgICAgICBdCisgICAgICAgIGZvciBzZXFuYW1lLCBjb2RlcG9pbnRzIGluIHNlcXVlbmNlczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZWRhdGEubG9va3VwKHNlcW5hbWUpLCBjb2RlcG9pbnRzKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvcik6CisgICAgICAgICAgICAgICAgc2VsZi5jaGVja2xldHRlcihzZXFuYW1lLCBOb25lKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhLZXlFcnJvcik6CisgICAgICAgICAgICAgICAgdW5pY29kZWRhdGEudWNkXzNfMl8wLmxvb2t1cChzZXFuYW1lKQorCisgICAgZGVmIHRlc3RfbmFtZWRfc2VxdWVuY2VzX2Z1bGwoc2VsZik6CisgICAgICAgICMgQ2hlY2sgYWxsIHRoZSBuYW1lZCBzZXF1ZW5jZXMKKyAgICAgICAgdXJsID0gKCJodHRwOi8vd3d3LnVuaWNvZGUub3JnL1B1YmxpYy8lcy91Y2QvTmFtZWRTZXF1ZW5jZXMudHh0IiAlCisgICAgICAgICAgICAgICB1bmljb2RlZGF0YS51bmlkYXRhX3ZlcnNpb24pCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHRlc3RkYXRhID0gc3VwcG9ydC5vcGVuX3VybHJlc291cmNlKHVybCwgZW5jb2Rpbmc9InV0Zi04IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrPWNoZWNrX3ZlcnNpb24pCisgICAgICAgIGV4Y2VwdCAoSU9FcnJvciwgSFRUUEV4Y2VwdGlvbik6CisgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJDb3VsZCBub3QgcmV0cmlldmUgIiArIHVybCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHRlc3RkYXRhLmNsb3NlKQorICAgICAgICBmb3IgbGluZSBpbiB0ZXN0ZGF0YToKKyAgICAgICAgICAgIGxpbmUgPSBsaW5lLnN0cmlwKCkKKyAgICAgICAgICAgIGlmIG5vdCBsaW5lIG9yIGxpbmUuc3RhcnRzd2l0aCgnIycpOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBzZXFuYW1lLCBjb2RlcG9pbnRzID0gbGluZS5zcGxpdCgnOycpCisgICAgICAgICAgICBjb2RlcG9pbnRzID0gJycuam9pbihjaHIoaW50KGNwLCAxNikpIGZvciBjcCBpbiBjb2RlcG9pbnRzLnNwbGl0KCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVkYXRhLmxvb2t1cChzZXFuYW1lKSwgY29kZXBvaW50cykKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IpOgorICAgICAgICAgICAgICAgIHNlbGYuY2hlY2tsZXR0ZXIoc2VxbmFtZSwgTm9uZSkKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoS2V5RXJyb3IpOgorICAgICAgICAgICAgICAgIHVuaWNvZGVkYXRhLnVjZF8zXzJfMC5sb29rdXAoc2VxbmFtZSkKKwogICAgIGRlZiB0ZXN0X2Vycm9ycyhzZWxmKToKLSAgICAgICAgaW1wb3J0IHVuaWNvZGVkYXRhCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdW5pY29kZWRhdGEubmFtZSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCB1bmljb2RlZGF0YS5uYW1lLCAneHgnKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHVuaWNvZGVkYXRhLmxvb2t1cCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfdW5pY29kZS5weSBiL0xpYi90ZXN0L3Rlc3RfdW5pY29kZS5weQppbmRleCAyNTlhMTgxLi4zM2Q3YjM1IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3VuaWNvZGUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF91bmljb2RlLnB5CkBAIC01LDE3ICs1LDEzIEBACiAoYykgQ29weXJpZ2h0IENOUkksIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIE5PIFdBUlJBTlRZLgogCiAiIiIjIgoraW1wb3J0IF9zdHJpbmcKIGltcG9ydCBjb2RlY3MKIGltcG9ydCBzdHJ1Y3QKIGltcG9ydCBzeXMKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IHdhcm5pbmdzCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQsIHN0cmluZ190ZXN0cwotaW1wb3J0IF9zdHJpbmcKLQotIyBkZWNvcmF0b3IgdG8gc2tpcCB0ZXN0cyBvbiBuYXJyb3cgYnVpbGRzCi1yZXF1aXJlc193aWRlX2J1aWxkID0gdW5pdHRlc3Quc2tpcElmKHN5cy5tYXh1bmljb2RlID09IDY1NTM1LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncmVxdWlyZXMgd2lkZSBidWlsZCcpCiAKICMgRXJyb3IgaGFuZGxpbmcgKGJhZCBkZWNvZGVyIHJldHVybikKIGRlZiBzZWFyY2hfZnVuY3Rpb24oZW5jb2RpbmcpOgpAQCAtMTc1LDYgKzE3MSwxNSBAQAogCiAgICAgZGVmIHRlc3RfZmluZChzZWxmKToKICAgICAgICAgc3RyaW5nX3Rlc3RzLkNvbW1vblRlc3QudGVzdF9maW5kKHNlbGYpCisgICAgICAgICMgdGVzdCBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzIG9mIHRoZSBtZW1jaHIgZmFzdCBwYXRoCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgxMDAsICdhJyAqIDEwMCArICdcdTAxMDInLCAnZmluZCcsICdcdTAxMDInKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdhJyAqIDEwMCArICdcdTAxMDInLCAnZmluZCcsICdcdTAyMDEnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdhJyAqIDEwMCArICdcdTAxMDInLCAnZmluZCcsICdcdTAxMjAnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdhJyAqIDEwMCArICdcdTAxMDInLCAnZmluZCcsICdcdTAyMjAnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoMTAwLCAnYScgKiAxMDAgKyAnXFUwMDEwMDMwNCcsICdmaW5kJywgJ1xVMDAxMDAzMDQnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdhJyAqIDEwMCArICdcVTAwMTAwMzA0JywgJ2ZpbmQnLCAnXFUwMDEwMDIwNCcpCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgtMSwgJ2EnICogMTAwICsgJ1xVMDAxMDAzMDQnLCAnZmluZCcsICdcVTAwMTAyMDA0JykKKyAgICAgICAgIyBjaGVjayBtaXhlZCBhcmd1bWVudCB0eXBlcwogICAgICAgICBzZWxmLmNoZWNrZXF1YWxub2ZpeCgwLCAgJ2FiY2RlZmdoaWFiYycsICdmaW5kJywgJ2FiYycpCiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbG5vZml4KDksICAnYWJjZGVmZ2hpYWJjJywgJ2ZpbmQnLCAnYWJjJywgMSkKICAgICAgICAgc2VsZi5jaGVja2VxdWFsbm9maXgoLTEsICdhYmNkZWZnaGlhYmMnLCAnZmluZCcsICdkZWYnLCA0KQpAQCAtMTg0LDYgKzE4OSwxNCBAQAogCiAgICAgZGVmIHRlc3RfcmZpbmQoc2VsZik6CiAgICAgICAgIHN0cmluZ190ZXN0cy5Db21tb25UZXN0LnRlc3RfcmZpbmQoc2VsZikKKyAgICAgICAgIyB0ZXN0IGltcGxlbWVudGF0aW9uIGRldGFpbHMgb2YgdGhlIG1lbXJjaHIgZmFzdCBwYXRoCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgwLCAnXHUwMTAyJyArICdhJyAqIDEwMCAsICdyZmluZCcsICdcdTAxMDInKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdcdTAxMDInICsgJ2EnICogMTAwICwgJ3JmaW5kJywgJ1x1MDIwMScpCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgtMSwgJ1x1MDEwMicgKyAnYScgKiAxMDAgLCAncmZpbmQnLCAnXHUwMTIwJykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKC0xLCAnXHUwMTAyJyArICdhJyAqIDEwMCAsICdyZmluZCcsICdcdTAyMjAnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoMCwgJ1xVMDAxMDAzMDQnICsgJ2EnICogMTAwLCAncmZpbmQnLCAnXFUwMDEwMDMwNCcpCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgtMSwgJ1xVMDAxMDAzMDQnICsgJ2EnICogMTAwLCAncmZpbmQnLCAnXFUwMDEwMDIwNCcpCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgtMSwgJ1xVMDAxMDAzMDQnICsgJ2EnICogMTAwLCAncmZpbmQnLCAnXFUwMDEwMjAwNCcpCiAgICAgICAgICMgY2hlY2sgbWl4ZWQgYXJndW1lbnQgdHlwZXMKICAgICAgICAgc2VsZi5jaGVja2VxdWFsbm9maXgoOSwgICAnYWJjZGVmZ2hpYWJjJywgJ3JmaW5kJywgJ2FiYycpCiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbG5vZml4KDEyLCAgJ2FiY2RlZmdoaWFiYycsICdyZmluZCcsICcnKQpAQCAtMjgwLDYgKzI5MywxMiBAQAogICAgICAgICBzZWxmLmNoZWNrZXF1YWxub2ZpeCgnb25lQHR3byF0aHJlZSEnLCAnb25lIXR3byF0aHJlZSEnLCAncmVwbGFjZScsICchJywgJ0AnLCAxKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsICdyZXBsYWNlJy5yZXBsYWNlLCAiciIsIDQyKQogCisgICAgQHN1cHBvcnQuY3B5dGhvbl9vbmx5CisgICAgZGVmIHRlc3RfcmVwbGFjZV9pZChzZWxmKToKKyAgICAgICAgcGF0dGVybiA9ICdhYmMnCisgICAgICAgIHRleHQgPSAnYWJjIGRlZicKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0ZXh0LnJlcGxhY2UocGF0dGVybiwgcGF0dGVybiksIHRleHQpCisKICAgICBkZWYgdGVzdF9ieXRlc19jb21wYXJpc29uKHNlbGYpOgogICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKICAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcignaWdub3JlJywgQnl0ZXNXYXJuaW5nKQpAQCAtMzUwLDYgKzM2OSw4IEBACiAgICAgZGVmIHRlc3RfaXNsb3dlcihzZWxmKToKICAgICAgICAgc3RyaW5nX3Rlc3RzLk1peGluU3RyVW5pY29kZVVzZXJTdHJpbmdUZXN0LnRlc3RfaXNsb3dlcihzZWxmKQogICAgICAgICBzZWxmLmNoZWNrZXF1YWxub2ZpeChGYWxzZSwgJ1x1MUZGYycsICdpc2xvd2VyJykKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSgnXHUyMTY3Jy5pc2xvd2VyKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnXHUyMTc3Jy5pc2xvd2VyKCkpCiAgICAgICAgICMgbm9uLUJNUCwgdXBwZXJjYXNlCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoJ1xVMDAwMTA0MDEnLmlzbG93ZXIoKSkKICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSgnXFUwMDAxMDQyNycuaXNsb3dlcigpKQpAQCAtMzY0LDYgKzM4NSw4IEBACiAgICAgICAgIHN0cmluZ190ZXN0cy5NaXhpblN0clVuaWNvZGVVc2VyU3RyaW5nVGVzdC50ZXN0X2lzdXBwZXIoc2VsZikKICAgICAgICAgaWYgbm90IHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdqYXZhJyk6CiAgICAgICAgICAgICBzZWxmLmNoZWNrZXF1YWxub2ZpeChGYWxzZSwgJ1x1MUZGYycsICdpc3VwcGVyJykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKCdcdTIxNjcnLmlzdXBwZXIoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSgnXHUyMTc3Jy5pc3VwcGVyKCkpCiAgICAgICAgICMgbm9uLUJNUCwgdXBwZXJjYXNlCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnXFUwMDAxMDQwMScuaXN1cHBlcigpKQogICAgICAgICBzZWxmLmFzc2VydFRydWUoJ1xVMDAwMTA0MjcnLmlzdXBwZXIoKSkKQEAgLTUyMCw3ICs1NDMsNiBAQAogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UobWV0aChzKSwgJyVhLiVzKCkgaXMgRmFsc2UnICUgKHMsIG1ldGhfbmFtZSkpCiAKIAotICAgIEByZXF1aXJlc193aWRlX2J1aWxkCiAgICAgZGVmIHRlc3RfbG93ZXIoc2VsZik6CiAgICAgICAgIHN0cmluZ190ZXN0cy5Db21tb25UZXN0LnRlc3RfbG93ZXIoc2VsZikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXFUwMDAxMDQyNycubG93ZXIoKSwgJ1xVMDAwMTA0NEYnKQpAQCAtNTMwLDggKzU1MiwyNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICdcVTAwMDEwNDRGXFUwMDAxMDQ0RicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1hcVTAwMDEwNDI3eFxVMDAwMTA0NEYnLmxvd2VyKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3hcVTAwMDEwNDRGeFxVMDAwMTA0NEYnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCfvrIEnLmxvd2VyKCksICfvrIEnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAxMzAnLmxvd2VyKCksICdcdTAwNjlcdTAzMDcnKQorICAgICAgICAjIFNwZWNpYWwgY2FzZSBmb3IgR1JFRUsgQ0FQSVRBTCBMRVRURVIgU0lHTUEgVSswM0EzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MDNhMycubG93ZXIoKSwgJ1x1MDNjMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MDM0NVx1MDNhMycubG93ZXIoKSwgJ1x1MDM0NVx1MDNjMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzNDVcdTAzYTMnLmxvd2VyKCksICdhXHUwMzQ1XHUwM2MyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnQVx1MDM0NVx1MDNhM2EnLmxvd2VyKCksICdhXHUwMzQ1XHUwM2MzYScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzNDVcdTAzYTMnLmxvd2VyKCksICdhXHUwMzQ1XHUwM2MyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnQVx1MDNhM1x1MDM0NScubG93ZXIoKSwgJ2FcdTAzYzJcdTAzNDUnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAzYTNcdTAzNDUgJy5sb3dlcigpLCAnXHUwM2MzXHUwMzQ1ICcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1xVMDAwOGZmZmUnLmxvd2VyKCksICdcVTAwMDhmZmZlJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUyMTc3Jy5sb3dlcigpLCAnXHUyMTc3JykKIAotICAgIEByZXF1aXJlc193aWRlX2J1aWxkCisgICAgZGVmIHRlc3RfY2FzZWZvbGQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2hlbGxvJy5jYXNlZm9sZCgpLCAnaGVsbG8nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdoRUxsbycuY2FzZWZvbGQoKSwgJ2hlbGxvJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnw58nLmNhc2Vmb2xkKCksICdzcycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ++sgScuY2FzZWZvbGQoKSwgJ2ZpJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUwM2EzJy5jYXNlZm9sZCgpLCAnXHUwM2MzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnQVx1MDM0NVx1MDNhMycuY2FzZWZvbGQoKSwgJ2FcdTAzYjlcdTAzYzMnKQorCiAgICAgZGVmIHRlc3RfdXBwZXIoc2VsZik6CiAgICAgICAgIHN0cmluZ190ZXN0cy5Db21tb25UZXN0LnRlc3RfdXBwZXIoc2VsZikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXFUwMDAxMDQ0RicudXBwZXIoKSwgJ1xVMDAwMTA0MjcnKQpAQCAtNTQxLDggKzU4MiwxNCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICdcVTAwMDEwNDI3XFUwMDAxMDQyNycpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1hcVTAwMDEwNDI3eFxVMDAwMTA0NEYnLnVwcGVyKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1hcVTAwMDEwNDI3WFxVMDAwMTA0MjcnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCfvrIEnLnVwcGVyKCksICdGSScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MDEzMCcudXBwZXIoKSwgJ1x1MDEzMCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MDNhMycudXBwZXIoKSwgJ1x1MDNhMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ8OfJy51cHBlcigpLCAnU1MnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTFmZDInLnVwcGVyKCksICdcdTAzOTlcdTAzMDhcdTAzMDAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcVTAwMDhmZmZlJy51cHBlcigpLCAnXFUwMDA4ZmZmZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MjE3NycudXBwZXIoKSwgJ1x1MjE2NycpCiAKLSAgICBAcmVxdWlyZXNfd2lkZV9idWlsZAogICAgIGRlZiB0ZXN0X2NhcGl0YWxpemUoc2VsZik6CiAgICAgICAgIHN0cmluZ190ZXN0cy5Db21tb25UZXN0LnRlc3RfY2FwaXRhbGl6ZShzZWxmKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcVTAwMDEwNDRGJy5jYXBpdGFsaXplKCksICdcVTAwMDEwNDI3JykKQEAgLTU1NCw4ICs2MDEsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAnXFUwMDAxMDQyN1xVMDAwMTA0NEYnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdYXFUwMDAxMDQyN3hcVTAwMDEwNDRGJy5jYXBpdGFsaXplKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1hcVTAwMDEwNDRGeFxVMDAwMTA0NEYnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdoXHUwMTMwJy5jYXBpdGFsaXplKCksICdIXHUwMDY5XHUwMzA3JykKKyAgICAgICAgZXhwID0gJ1x1MDM5OVx1MDMwOFx1MDMwMFx1MDA2OVx1MDMwNycKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUxZmQyXHUwMTMwJy5jYXBpdGFsaXplKCksIGV4cCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgn76yBbm5pc2gnLmNhcGl0YWxpemUoKSwgJ0ZJbm5pc2gnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdBXHUwMzQ1XHUwM2EzJy5jYXBpdGFsaXplKCksICdBXHUwMzQ1XHUwM2MyJykKIAotICAgIEByZXF1aXJlc193aWRlX2J1aWxkCiAgICAgZGVmIHRlc3RfdGl0bGUoc2VsZik6CiAgICAgICAgIHN0cmluZ190ZXN0cy5NaXhpblN0clVuaWNvZGVVc2VyU3RyaW5nVGVzdC50ZXN0X3RpdGxlKHNlbGYpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1xVMDAwMTA0NEYnLnRpdGxlKCksICdcVTAwMDEwNDI3JykKQEAgLTU2OSw4ICs2MjAsMTAgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAnXFUwMDAxMDQyN1xVMDAwMTA0NEYgXFUwMDAxMDQyN1xVMDAwMTA0NEYnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdYXFUwMDAxMDQyN3hcVTAwMDEwNDRGIFhcVTAwMDEwNDI3eFxVMDAwMTA0NEYnLnRpdGxlKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1hcVTAwMDEwNDRGeFxVMDAwMTA0NEYgWFxVMDAwMTA0NEZ4XFUwMDAxMDQ0RicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ++sgU5OSVNIJy50aXRsZSgpLCAnRmlubmlzaCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzYTMgXHUxZmExeHknLnRpdGxlKCksICdBXHUwM2MyIFx1MWZhOXh5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnQVx1MDNhM0EnLnRpdGxlKCksICdBXHUwM2MzYScpCiAKLSAgICBAcmVxdWlyZXNfd2lkZV9idWlsZAogICAgIGRlZiB0ZXN0X3N3YXBjYXNlKHNlbGYpOgogICAgICAgICBzdHJpbmdfdGVzdHMuQ29tbW9uVGVzdC50ZXN0X3N3YXBjYXNlKHNlbGYpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1xVMDAwMTA0NEYnLnN3YXBjYXNlKCksICdcVTAwMDEwNDI3JykKQEAgLTU4Myw2ICs2MzYsMTkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAnXFUwMDAxMDQyN1xVMDAwMTA0NEYnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdYXFUwMDAxMDQyN3hcVTAwMDEwNDRGJy5zd2FwY2FzZSgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICd4XFUwMDAxMDQ0RlhcVTAwMDEwNDI3JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgn76yBJy5zd2FwY2FzZSgpLCAnRkknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAxMzAnLnN3YXBjYXNlKCksICdcdTAwNjlcdTAzMDcnKQorICAgICAgICAjIFNwZWNpYWwgY2FzZSBmb3IgR1JFRUsgQ0FQSVRBTCBMRVRURVIgU0lHTUEgVSswM0EzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MDNhMycuc3dhcGNhc2UoKSwgJ1x1MDNjMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MDM0NVx1MDNhMycuc3dhcGNhc2UoKSwgJ1x1MDM5OVx1MDNjMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzNDVcdTAzYTMnLnN3YXBjYXNlKCksICdhXHUwMzk5XHUwM2MyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnQVx1MDM0NVx1MDNhM2EnLnN3YXBjYXNlKCksICdhXHUwMzk5XHUwM2MzQScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzNDVcdTAzYTMnLnN3YXBjYXNlKCksICdhXHUwMzk5XHUwM2MyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnQVx1MDNhM1x1MDM0NScuc3dhcGNhc2UoKSwgJ2FcdTAzYzJcdTAzOTknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAzYTNcdTAzNDUgJy5zd2FwY2FzZSgpLCAnXHUwM2MzXHUwMzk5ICcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MDNhMycuc3dhcGNhc2UoKSwgJ1x1MDNjMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ8OfJy5zd2FwY2FzZSgpLCAnU1MnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTFmZDInLnN3YXBjYXNlKCksICdcdTAzOTlcdTAzMDhcdTAzMDAnKQogCiAgICAgZGVmIHRlc3RfY29udGFpbnMoc2VsZik6CiAgICAgICAgICMgVGVzdGluZyBVbmljb2RlIGNvbnRhaW5zIG1ldGhvZApAQCAtNzc2LDcgKzg0Miw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ3swIXN9Jy5mb3JtYXQoRygnZGF0YScpKSwgJ3N0cmluZyBpcyBkYXRhJykKIAogICAgICAgICBtc2cgPSAnb2JqZWN0Ll9fZm9ybWF0X18gd2l0aCBhIG5vbi1lbXB0eSBmb3JtYXQgc3RyaW5nIGlzIGRlcHJlY2F0ZWQnCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygobXNnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygobXNnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ3swOl4xMH0nLmZvcm1hdChFKCdkYXRhJykpLCAnIEUoZGF0YSkgICcpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCd7MDpeMTBzfScuZm9ybWF0KEUoJ2RhdGEnKSksICcgRShkYXRhKSAgJykKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ3swOj4xNXN9Jy5mb3JtYXQoRygnZGF0YScpKSwgJyBzdHJpbmcgaXMgZGF0YScpCkBAIC0xMDExLDEwICsxMDc3LDEzIEBACiAgICAgICAgIGNsYXNzIFVuaWNvZGVTdWJjbGFzcyhzdHIpOgogICAgICAgICAgICAgcGFzcwogCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICBzdHIoVW5pY29kZVN1YmNsYXNzKCd1bmljb2RlIHN1YmNsYXNzIGJlY29tZXMgdW5pY29kZScpKSwKLSAgICAgICAgICAgICd1bmljb2RlIHN1YmNsYXNzIGJlY29tZXMgdW5pY29kZScKLSAgICAgICAgKQorICAgICAgICBmb3IgdGV4dCBpbiAoJ2FzY2lpJywgJ1x4ZTknLCAnXHUyMGFjJywgJ1xVMDAxMEZGRkYnKToKKyAgICAgICAgICAgIHN1YmNsYXNzID0gVW5pY29kZVN1YmNsYXNzKHRleHQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihzdWJjbGFzcyksIHRleHQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzdWJjbGFzcyksIGxlbih0ZXh0KSkKKyAgICAgICAgICAgIGlmIHRleHQgPT0gJ2FzY2lpJzoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1YmNsYXNzLmVuY29kZSgnYXNjaWknKSwgYidhc2NpaScpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWJjbGFzcy5lbmNvZGUoJ3V0Zi04JyksIGInYXNjaWknKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICBzdHIoJ3N0cmluZ3MgYXJlIGNvbnZlcnRlZCB0byB1bmljb2RlJyksCkBAIC0xMTIwLDE1ICsxMTg5LDEyIEBACiAgICAgZGVmIHRlc3RfY29kZWNzX3V0Zjgoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJycuZW5jb2RlKCd1dGYtOCcpLCBiJycpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MjBhYycuZW5jb2RlKCd1dGYtOCcpLCBiJ1x4ZTJceDgyXHhhYycpCi0gICAgICAgIGlmIHN5cy5tYXh1bmljb2RlID09IDY1NTM1OgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHVkODAwXHVkYzAyJy5lbmNvZGUoJ3V0Zi04JyksIGInXHhmMFx4OTBceDgwXHg4MicpCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdWQ4NGRcdWRjNTYnLmVuY29kZSgndXRmLTgnKSwgYidceGYwXHhhM1x4OTFceDk2JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXFUwMDAxMDAwMicuZW5jb2RlKCd1dGYtOCcpLCBiJ1x4ZjBceDkwXHg4MFx4ODInKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcVTAwMDIzNDU2Jy5lbmNvZGUoJ3V0Zi04JyksIGInXHhmMFx4YTNceDkxXHg5NicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1ZDgwMCcuZW5jb2RlKCd1dGYtOCcsICdzdXJyb2dhdGVwYXNzJyksIGInXHhlZFx4YTBceDgwJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHVkYzAwJy5lbmNvZGUoJ3V0Zi04JywgJ3N1cnJvZ2F0ZXBhc3MnKSwgYidceGVkXHhiMFx4ODAnKQotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA9PSA2NTUzNToKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICAgICAgKCdcdWQ4MDBcdWRjMDInKjEwMDApLmVuY29kZSgndXRmLTgnKSwKLSAgICAgICAgICAgICAgICBiJ1x4ZjBceDkwXHg4MFx4ODInKjEwMDApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCdcVTAwMDEwMDAyJyoxMCkuZW5jb2RlKCd1dGYtOCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInXHhmMFx4OTBceDgwXHg4MicqMTApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICAnXHU2YjYzXHU3OGJhXHUzMDZiXHU4YTAwXHUzMDQ2XHUzMDY4XHU3ZmZiXHU4YTMzXHUzMDZmJwogICAgICAgICAgICAgJ1x1MzA1NVx1MzA4Y1x1MzA2Nlx1MzA0NFx1MzA3ZVx1MzA1Ylx1MzA5M1x1MzAwMlx1NGUwMCcKQEAgLTEzNjYsMTggKzE0MzIsMjUgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaGVsbG8nLmVuY29kZSgnYXNjaWknKSwgYidoZWxsbycpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2hlbGxvJy5lbmNvZGUoJ3V0Zi03JyksIGInaGVsbG8nKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdoZWxsbycuZW5jb2RlKCd1dGYtOCcpLCBiJ2hlbGxvJykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaGVsbG8nLmVuY29kZSgndXRmOCcpLCBiJ2hlbGxvJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaGVsbG8nLmVuY29kZSgndXRmLTgnKSwgYidoZWxsbycpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2hlbGxvJy5lbmNvZGUoJ3V0Zi0xNi1sZScpLCBiJ2hcMDAwZVwwMDBsXDAwMGxcMDAwb1wwMDAnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdoZWxsbycuZW5jb2RlKCd1dGYtMTYtYmUnKSwgYidcMDAwaFwwMDBlXDAwMGxcMDAwbFwwMDBvJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaGVsbG8nLmVuY29kZSgnbGF0aW4tMScpLCBiJ2hlbGxvJykKIAorICAgICAgICAjIERlZmF1bHQgZW5jb2RpbmcgaXMgdXRmLTgKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUyNjAzJy5lbmNvZGUoKSwgYidceGUyXHg5OFx4ODMnKQorCiAgICAgICAgICMgUm91bmR0cmlwIHNhZmV0eSBmb3IgQk1QIChqdXN0IHRoZSBmaXJzdCAxMDI0IGNoYXJzKQogICAgICAgICBmb3IgYyBpbiByYW5nZSgxMDI0KToKICAgICAgICAgICAgIHUgPSBjaHIoYykKICAgICAgICAgICAgIGZvciBlbmNvZGluZyBpbiAoJ3V0Zi03JywgJ3V0Zi04JywgJ3V0Zi0xNicsICd1dGYtMTYtbGUnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndXRmLTE2LWJlJywgJ3Jhd191bmljb2RlX2VzY2FwZScsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd1bmljb2RlX2VzY2FwZScsICd1bmljb2RlX2ludGVybmFsJyk6Ci0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIodS5lbmNvZGUoZW5jb2RpbmcpLGVuY29kaW5nKSwgdSkKKyAgICAgICAgICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICAgICAgICAgICMgdW5pY29kZS1pbnRlcm5hbCBoYXMgYmVlbiBkZXByZWNhdGVkCisgICAgICAgICAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcigiaWdub3JlIiwgRGVwcmVjYXRpb25XYXJuaW5nKQorCisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHUuZW5jb2RlKGVuY29kaW5nKSxlbmNvZGluZyksIHUpCiAKICAgICAgICAgIyBSb3VuZHRyaXAgc2FmZXR5IGZvciBCTVAgKGp1c3QgdGhlIGZpcnN0IDI1NiBjaGFycykKICAgICAgICAgZm9yIGMgaW4gcmFuZ2UoMjU2KToKQEAgLTEzOTIsMTggKzE0NjUsMjAgQEAKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih1LmVuY29kZShlbmNvZGluZyksZW5jb2RpbmcpLCB1KQogCiAgICAgICAgICMgUm91bmR0cmlwIHNhZmV0eSBmb3Igbm9uLUJNUCAoanVzdCBhIGZldyBjaGFycykKLSAgICAgICAgdSA9ICdcVTAwMDEwMDAxXFUwMDAyMDAwMlxVMDAwMzAwMDNcVTAwMDQwMDA0XFUwMDA1MDAwNScKLSAgICAgICAgZm9yIGVuY29kaW5nIGluICgndXRmLTgnLCAndXRmLTE2JywgJ3V0Zi0xNi1sZScsICd1dGYtMTYtYmUnLAotICAgICAgICAgICAgICAgICAgICAgICAgICMncmF3X3VuaWNvZGVfZXNjYXBlJywKLSAgICAgICAgICAgICAgICAgICAgICAgICAndW5pY29kZV9lc2NhcGUnLCAndW5pY29kZV9pbnRlcm5hbCcpOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIodS5lbmNvZGUoZW5jb2RpbmcpLGVuY29kaW5nKSwgdSkKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgIyB1bmljb2RlLWludGVybmFsIGhhcyBiZWVuIGRlcHJlY2F0ZWQKKyAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcigiaWdub3JlIiwgRGVwcmVjYXRpb25XYXJuaW5nKQogCi0gICAgICAgICMgVVRGLTggbXVzdCBiZSByb3VuZHRyaXAgc2FmZSBmb3IgYWxsIFVDUy0yIGNvZGUgcG9pbnRzCi0gICAgICAgICMgVGhpcyBleGNsdWRlcyBzdXJyb2dhdGVzOiBpbiB0aGUgZnVsbCByYW5nZSwgdGhlcmUgd291bGQgYmUKLSAgICAgICAgIyBhIHN1cnJvZ2F0ZSBwYWlyIChcdWRiZmZcdWRjMDApLCB3aGljaCBnZXRzIGNvbnZlcnRlZCBiYWNrCi0gICAgICAgICMgdG8gYSBub24tQk1QIGNoYXJhY3RlciAoXFUwMDEwZmMwMCkKLSAgICAgICAgdSA9ICcnLmpvaW4obWFwKGNociwgbGlzdChyYW5nZSgwLDB4ZDgwMCkpICsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdChyYW5nZSgweGUwMDAsMHgxMDAwMCkpKSkKKyAgICAgICAgICAgIHUgPSAnXFUwMDAxMDAwMVxVMDAwMjAwMDJcVTAwMDMwMDAzXFUwMDA0MDAwNFxVMDAwNTAwMDUnCisgICAgICAgICAgICBmb3IgZW5jb2RpbmcgaW4gKCd1dGYtOCcsICd1dGYtMTYnLCAndXRmLTE2LWxlJywgJ3V0Zi0xNi1iZScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdyYXdfdW5pY29kZV9lc2NhcGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndW5pY29kZV9lc2NhcGUnLCAndW5pY29kZV9pbnRlcm5hbCcpOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHUuZW5jb2RlKGVuY29kaW5nKSxlbmNvZGluZyksIHUpCisKKyAgICAgICAgIyBVVEYtOCBtdXN0IGJlIHJvdW5kdHJpcCBzYWZlIGZvciBhbGwgY29kZSBwb2ludHMKKyAgICAgICAgIyAoZXhjZXB0IHN1cnJvZ2F0ZXMsIHdoaWNoIGFyZSBmb3JiaWRkZW4pLgorICAgICAgICB1ID0gJycuam9pbihtYXAoY2hyLCBsaXN0KHJhbmdlKDAsIDB4ZDgwMCkpICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdChyYW5nZSgweGUwMDAsIDB4MTEwMDAwKSkpKQogICAgICAgICBmb3IgZW5jb2RpbmcgaW4gKCd1dGYtOCcsKToKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHUuZW5jb2RlKGVuY29kaW5nKSxlbmNvZGluZyksIHUpCiAKQEAgLTE1ODgsMTcgKzE2NjMsMzkgQEAKICAgICAgICAgICAgIHJldHVybgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCAndFx0dFx0Jy5leHBhbmR0YWJzLCBzeXMubWF4c2l6ZSkKIAorICAgIEBzdXBwb3J0LmNweXRob25fb25seQorICAgIGRlZiB0ZXN0X2V4cGFuZHRhYnNfb3B0aW1pemF0aW9uKHNlbGYpOgorICAgICAgICBzID0gJ2FiYycKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhzLmV4cGFuZHRhYnMoKSwgcykKKwogICAgIGRlZiB0ZXN0X3JhaXNlTWVtRXJyb3Ioc2VsZik6Ci0gICAgICAgICMgRW5zdXJlIHRoYXQgdGhlIGZyZWVsaXN0IGNvbnRhaW5zIGEgY29uc2lzdGVudCBvYmplY3QsIGV2ZW4KLSAgICAgICAgIyB3aGVuIGEgc3RyaW5nIGFsbG9jYXRpb24gZmFpbHMgd2l0aCBhIE1lbW9yeUVycm9yLgotICAgICAgICAjIFRoaXMgdXNlZCB0byBjcmFzaCB0aGUgaW50ZXJwcmV0ZXIsCi0gICAgICAgICMgb3IgbGVhayByZWZlcmVuY2VzIHdoZW4gdGhlIG51bWJlciB3YXMgc21hbGxlci4KLSAgICAgICAgY2hhcndpZHRoID0gNCBpZiBzeXMubWF4dW5pY29kZSA+PSAweDEwMDAwIGVsc2UgMgotICAgICAgICAjIE5vdGU6IHN5cy5tYXhzaXplIGlzIGhhbGYgb2YgdGhlIGFjdHVhbCBtYXggYWxsb2NhdGlvbiBiZWNhdXNlIG9mCi0gICAgICAgICMgdGhlIHNpZ25lZG5lc3Mgb2YgUHlfc3NpemVfdC4KLSAgICAgICAgYWxsb2MgPSBsYW1iZGE6ICJhIiAqIChzeXMubWF4c2l6ZSAvLyBjaGFyd2lkdGggKiAyKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhNZW1vcnlFcnJvciwgYWxsb2MpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1lbW9yeUVycm9yLCBhbGxvYykKKyAgICAgICAgaWYgc3RydWN0LmNhbGNzaXplKCdQJykgPT0gODoKKyAgICAgICAgICAgICMgNjQgYml0cyBwb2ludGVycworICAgICAgICAgICAgYXNjaWlfc3RydWN0X3NpemUgPSA0OAorICAgICAgICAgICAgY29tcGFjdF9zdHJ1Y3Rfc2l6ZSA9IDcyCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIDMyIGJpdHMgcG9pbnRlcnMKKyAgICAgICAgICAgIGFzY2lpX3N0cnVjdF9zaXplID0gMjQKKyAgICAgICAgICAgIGNvbXBhY3Rfc3RydWN0X3NpemUgPSAzNgorCisgICAgICAgIGZvciBjaGFyIGluICgnYScsICdceGU5JywgJ1x1MjBhYycsICdcVTAwMTBmZmZmJyk6CisgICAgICAgICAgICBjb2RlID0gb3JkKGNoYXIpCisgICAgICAgICAgICBpZiBjb2RlIDwgMHgxMDA6CisgICAgICAgICAgICAgICAgY2hhcl9zaXplID0gMSAgIyBzaXplb2YoUHlfVUNTMSkKKyAgICAgICAgICAgICAgICBzdHJ1Y3Rfc2l6ZSA9IGFzY2lpX3N0cnVjdF9zaXplCisgICAgICAgICAgICBlbGlmIGNvZGUgPCAweDEwMDAwOgorICAgICAgICAgICAgICAgIGNoYXJfc2l6ZSA9IDIgICMgc2l6ZW9mKFB5X1VDUzIpCisgICAgICAgICAgICAgICAgc3RydWN0X3NpemUgPSBjb21wYWN0X3N0cnVjdF9zaXplCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGNoYXJfc2l6ZSA9IDQgICMgc2l6ZW9mKFB5X1VDUzQpCisgICAgICAgICAgICAgICAgc3RydWN0X3NpemUgPSBjb21wYWN0X3N0cnVjdF9zaXplCisgICAgICAgICAgICAjIE5vdGU6IHN5cy5tYXhzaXplIGlzIGhhbGYgb2YgdGhlIGFjdHVhbCBtYXggYWxsb2NhdGlvbiBiZWNhdXNlIG9mCisgICAgICAgICAgICAjIHRoZSBzaWduZWRuZXNzIG9mIFB5X3NzaXplX3QuIFN0cmluZ3Mgb2YgbWF4bGVuLTEgc2hvdWxkIGluIHByaW5jaXBsZQorICAgICAgICAgICAgIyBiZSBhbGxvY2F0YWJsZSwgZ2l2ZW4gZW5vdWdoIG1lbW9yeS4KKyAgICAgICAgICAgIG1heGxlbiA9ICgoc3lzLm1heHNpemUgLSBzdHJ1Y3Rfc2l6ZSkgLy8gY2hhcl9zaXplKQorICAgICAgICAgICAgYWxsb2MgPSBsYW1iZGE6IGNoYXIgKiBtYXhsZW4KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1lbW9yeUVycm9yLCBhbGxvYykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1lbW9yeUVycm9yLCBhbGxvYykKIAogICAgIGRlZiB0ZXN0X2Zvcm1hdF9zdWJjbGFzcyhzZWxmKToKICAgICAgICAgY2xhc3MgUyhzdHIpOgpAQCAtMTYxMSwxMSArMTcwOCwxMCBAQAogICAgICMgVGVzdCBQeVVuaWNvZGVfRnJvbUZvcm1hdCgpCiAgICAgZGVmIHRlc3RfZnJvbV9mb3JtYXQoc2VsZik6CiAgICAgICAgIHN1cHBvcnQuaW1wb3J0X21vZHVsZSgnY3R5cGVzJykKLSAgICAgICAgZnJvbSBjdHlwZXMgaW1wb3J0IHB5dGhvbmFwaSwgcHlfb2JqZWN0LCBjX2ludAotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA9PSA2NTUzNToKLSAgICAgICAgICAgIG5hbWUgPSAiUHlVbmljb2RlVUNTMl9Gcm9tRm9ybWF0IgotICAgICAgICBlbHNlOgotICAgICAgICAgICAgbmFtZSA9ICJQeVVuaWNvZGVVQ1M0X0Zyb21Gb3JtYXQiCisgICAgICAgIGZyb20gY3R5cGVzIGltcG9ydCAocHl0aG9uYXBpLCBweV9vYmplY3QsCisgICAgICAgICAgICBjX2ludCwgY19sb25nLCBjX2xvbmdsb25nLCBjX3NzaXplX3QsCisgICAgICAgICAgICBjX3VpbnQsIGNfdWxvbmcsIGNfdWxvbmdsb25nLCBjX3NpemVfdCkKKyAgICAgICAgbmFtZSA9ICJQeVVuaWNvZGVfRnJvbUZvcm1hdCIKICAgICAgICAgX1B5VW5pY29kZV9Gcm9tRm9ybWF0ID0gZ2V0YXR0cihweXRob25hcGksIG5hbWUpCiAgICAgICAgIF9QeVVuaWNvZGVfRnJvbUZvcm1hdC5yZXN0eXBlID0gcHlfb2JqZWN0CiAKQEAgLTE2MzYsMTMgKzE3MzIsNDAgQEAKICAgICAgICAgICAgICdzdHJpbmcsIGdvdCBhIG5vbi1BU0NJSSBieXRlOiAweGU5JCcsCiAgICAgICAgICAgICBQeVVuaWNvZGVfRnJvbUZvcm1hdCwgYid1bmljb2RlXHhlOT0lcycsICdhc2NpaScpCiAKKyAgICAgICAgIyB0ZXN0ICIlYyIKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyVjJywgY19pbnQoMHhhYmNkKSksICdcdWFiY2QnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJWMnLCBjX2ludCgweDEwZmZmZikpLCAnXFUwMDEwZmZmZicpCiAKLSAgICAgICAgIyBvdGhlciB0ZXN0cworICAgICAgICAjIHRlc3QgIiUiCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclJyksICclJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyUlJyksICclJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyUlcycpLCAnJXMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInWyUlXScpLCAnWyVdJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyUlJXMnLCBiJ2FiYycpLCAnJWFiYycpCisKKyAgICAgICAgIyB0ZXN0IGludGVnZXIgZm9ybWF0cyAoJWksICVkLCAldSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyUwM2knLCBjX2ludCgxMCkpLCAnMDEwJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyUwLjRpJywgY19pbnQoMTApKSwgJzAwMTAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJWknLCBjX2ludCgtMTIzKSksICctMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyVsaScsIGNfbG9uZygtMTIzKSksICctMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyVsbGknLCBjX2xvbmdsb25nKC0xMjMpKSwgJy0xMjMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJXppJywgY19zc2l6ZV90KC0xMjMpKSwgJy0xMjMnKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclZCcsIGNfaW50KC0xMjMpKSwgJy0xMjMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJWxkJywgY19sb25nKC0xMjMpKSwgJy0xMjMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJWxsZCcsIGNfbG9uZ2xvbmcoLTEyMykpLCAnLTEyMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclemQnLCBjX3NzaXplX3QoLTEyMykpLCAnLTEyMycpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyV1JywgY191aW50KDEyMykpLCAnMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyVsdScsIGNfdWxvbmcoMTIzKSksICcxMjMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJWxsdScsIGNfdWxvbmdsb25nKDEyMykpLCAnMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyV6dScsIGNfc2l6ZV90KDEyMykpLCAnMTIzJykKKworICAgICAgICAjIHRlc3QgJUEKICAgICAgICAgdGV4dCA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJSVBOiVBJywgJ2FiY1x4ZTlcdWFiY2RcVTAwMTBmZmZmJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXh0LCByIiVBOidhYmNceGU5XHVhYmNkXFUwMDEwZmZmZiciKQogCisgICAgICAgICMgdGVzdCAlVgogICAgICAgICB0ZXh0ID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoYidyZXByPSVWJywgJ2FiYycsIGIneHl6JykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXh0LCAncmVwcj1hYmMnKQogCkBAIC0xNjU2LDYgKzE3NzksMTMgQEAKICAgICAgICAgdGV4dCA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KGIncmVwcj0lVicsIE5vbmUsIGInYWJjXHhmZicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgJ3JlcHI9YWJjXHVmZmZkJykKIAorICAgICAgICAjIG5vdCBzdXBwb3J0ZWQ6IGNvcHkgdGhlIHJhdyBmb3JtYXQgc3RyaW5nLiB0aGVzZSB0ZXN0cyBhcmUganVzdCBoZXJlCisgICAgICAgICMgdG8gY2hlY2sgZm9yIGNyYXNocyBhbmQgc2hvdWxkIG5vdCBiZSBjb25zaWRlcmVkIGFzIHNwZWNpZmljYXRpb25zCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclMSVzJywgYidhYmMnKSwgJyVzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyUxYWJjJyksICclMWFiYycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclK2knLCBjX2ludCgxMCkpLCAnJStpJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyUuJXMnLCBiJ2FiYycpLCAnJS4lcycpCisKICAgICAjIFRlc3QgUHlVbmljb2RlX0FzV2lkZUNoYXIoKQogICAgIGRlZiB0ZXN0X2Fzd2lkZWNoYXIoc2VsZik6CiAgICAgICAgIGZyb20gX3Rlc3RjYXBpIGltcG9ydCB1bmljb2RlX2Fzd2lkZWNoYXIKQEAgLTE3MTYsNiArMTg0Niw1MSBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpemUsIG5jaGFyKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdjaGFyLCBub25ibXAgKyAnXDAnKQogCisgICAgZGVmIHRlc3Rfc3ViY2xhc3NfYWRkKHNlbGYpOgorICAgICAgICBjbGFzcyBTKHN0cik6CisgICAgICAgICAgICBkZWYgX19hZGRfXyhzZWxmLCBvKToKKyAgICAgICAgICAgICAgICByZXR1cm4gIjMiCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUygiNCIpICsgUygiNSIpLCAiMyIpCisgICAgICAgIGNsYXNzIFMoc3RyKToKKyAgICAgICAgICAgIGRlZiBfX2lhZGRfXyhzZWxmLCBvKToKKyAgICAgICAgICAgICAgICByZXR1cm4gIjMiCisgICAgICAgIHMgPSBTKCIxIikKKyAgICAgICAgcyArPSAiNCIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLCAiMyIpCisKKyAgICBkZWYgdGVzdF9lbmNvZGVfZGVjaW1hbChzZWxmKToKKyAgICAgICAgZnJvbSBfdGVzdGNhcGkgaW1wb3J0IHVuaWNvZGVfZW5jb2RlZGVjaW1hbAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVfZW5jb2RlZGVjaW1hbCgnMTIzJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgYicxMjMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVfZW5jb2RlZGVjaW1hbCgnXHUwNjYzLlx1MDY2MVx1MDY2NCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInMy4xNCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZV9lbmNvZGVkZWNpbWFsKCJcTntFTSBTUEFDRX0zLjE0XE57RU4gU1BBQ0V9IiksCisgICAgICAgICAgICAgICAgICAgICAgICAgYicgMy4xNCAnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRW5jb2RlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaWNvZGVfZW5jb2RlZGVjaW1hbCwgIjEyM1x1MjBhYyIsICJzdHJpY3QiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KAorICAgICAgICAgICAgVmFsdWVFcnJvciwKKyAgICAgICAgICAgICJeJ2RlY2ltYWwnIGNvZGVjIGNhbid0IGVuY29kZSBjaGFyYWN0ZXIiLAorICAgICAgICAgICAgdW5pY29kZV9lbmNvZGVkZWNpbWFsLCAiMTIzXHUyMGFjIiwgInJlcGxhY2UiKQorCisgICAgZGVmIHRlc3RfdHJhbnNmb3JtX2RlY2ltYWwoc2VsZik6CisgICAgICAgIGZyb20gX3Rlc3RjYXBpIGltcG9ydCB1bmljb2RlX3RyYW5zZm9ybWRlY2ltYWx0b2FzY2lpIGFzIHRyYW5zZm9ybV9kZWNpbWFsCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhbnNmb3JtX2RlY2ltYWwoJzEyMycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICcxMjMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYW5zZm9ybV9kZWNpbWFsKCdcdTA2NjMuXHUwNjYxXHUwNjY0JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJzMuMTQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYW5zZm9ybV9kZWNpbWFsKCJcTntFTSBTUEFDRX0zLjE0XE57RU4gU1BBQ0V9IiksCisgICAgICAgICAgICAgICAgICAgICAgICAgIlxOe0VNIFNQQUNFfTMuMTRcTntFTiBTUEFDRX0iKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYW5zZm9ybV9kZWNpbWFsKCcxMjNcdTIwYWMnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnMTIzXHUyMGFjJykKKworICAgIGRlZiB0ZXN0X2dldG5ld2FyZ3Moc2VsZik6CisgICAgICAgIHRleHQgPSAnYWJjJworICAgICAgICBhcmdzID0gdGV4dC5fX2dldG5ld2FyZ3NfXygpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoYXJnc1swXSwgdGV4dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWzBdLCB0ZXh0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihhcmdzKSwgMSkKKwogCiBjbGFzcyBTdHJpbmdNb2R1bGVUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgdGVzdF9mb3JtYXR0ZXJfcGFyc2VyKHNlbGYpOgpAQCAtMTc2Nyw0MiArMTk0Miw2IEBACiAgICAgICAgICAgICBdXSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBfc3RyaW5nLmZvcm1hdHRlcl9maWVsZF9uYW1lX3NwbGl0LCAxKQogCi0gICAgZGVmIHRlc3RfZW5jb2RlX2RlY2ltYWwoc2VsZik6Ci0gICAgICAgIGZyb20gX3Rlc3RjYXBpIGltcG9ydCB1bmljb2RlX2VuY29kZWRlY2ltYWwKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoJzEyMycpLAotICAgICAgICAgICAgICAgICAgICAgICAgIGInMTIzJykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoJ1x1MDY2My5cdTA2NjFcdTA2NjQnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBiJzMuMTQnKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVfZW5jb2RlZGVjaW1hbCgiXE57RU0gU1BBQ0V9My4xNFxOe0VOIFNQQUNFfSIpLAotICAgICAgICAgICAgICAgICAgICAgICAgIGInIDMuMTQgJykKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZUVuY29kZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICB1bmljb2RlX2VuY29kZWRlY2ltYWwsICIxMjNcdTIwYWMiLCAic3RyaWN0IikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoIjEyM1x1MjBhYyIsICJyZXBsYWNlIiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgYicxMjM/JykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoIjEyM1x1MjBhYyIsICJpZ25vcmUiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBiJzEyMycpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZV9lbmNvZGVkZWNpbWFsKCIxMjNcdTIwYWMiLCAieG1sY2hhcnJlZnJlcGxhY2UiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBiJzEyMyYjODM2NDsnKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVfZW5jb2RlZGVjaW1hbCgiMTIzXHUyMGFjIiwgImJhY2tzbGFzaHJlcGxhY2UiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBiJzEyM1xcdTIwYWMnKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVfZW5jb2RlZGVjaW1hbCgiMTIzXHUyMGFjXE57RU0gU1BBQ0V9IiwgInJlcGxhY2UiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBiJzEyMz8gJykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoIjEyM1x1MjBhY1x1MjBhYyIsICJyZXBsYWNlIiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgYicxMjM/PycpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZV9lbmNvZGVkZWNpbWFsKCIxMjNcdTIwYWNcdTA2NjAiLCAicmVwbGFjZSIpLAotICAgICAgICAgICAgICAgICAgICAgICAgIGInMTIzPzAnKQotCi0gICAgZGVmIHRlc3RfdHJhbnNmb3JtX2RlY2ltYWwoc2VsZik6Ci0gICAgICAgIGZyb20gX3Rlc3RjYXBpIGltcG9ydCB1bmljb2RlX3RyYW5zZm9ybWRlY2ltYWx0b2FzY2lpIGFzIHRyYW5zZm9ybV9kZWNpbWFsCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhbnNmb3JtX2RlY2ltYWwoJzEyMycpLAotICAgICAgICAgICAgICAgICAgICAgICAgICcxMjMnKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYW5zZm9ybV9kZWNpbWFsKCdcdTA2NjMuXHUwNjYxXHUwNjY0JyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgJzMuMTQnKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYW5zZm9ybV9kZWNpbWFsKCJcTntFTSBTUEFDRX0zLjE0XE57RU4gU1BBQ0V9IiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgIlxOe0VNIFNQQUNFfTMuMTRcTntFTiBTUEFDRX0iKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYW5zZm9ybV9kZWNpbWFsKCcxMjNcdTIwYWMnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAnMTIzXHUyMGFjJykKLQogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoX19uYW1lX18pCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3VuaWNvZGVfZmlsZS5weSBiL0xpYi90ZXN0L3Rlc3RfdW5pY29kZV9maWxlLnB5CmluZGV4IDZjMjAxMWEuLmZhYThkYTMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdW5pY29kZV9maWxlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdW5pY29kZV9maWxlLnB5CkBAIC02LDcgKzYsNyBAQAogCiBpbXBvcnQgdW5pdHRlc3QKIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCAocnVuX3VuaXR0ZXN0LCBybXRyZWUsCi0gICAgVEVTVEZOX0VOQ09ESU5HLCBURVNURk5fVU5JQ09ERSwgVEVTVEZOX1VORU5DT0RBQkxFKQorICAgIFRFU1RGTl9FTkNPRElORywgVEVTVEZOX1VOSUNPREUsIFRFU1RGTl9VTkVOQ09EQUJMRSwgY3JlYXRlX2VtcHR5X2ZpbGUpCiAKIGlmIG5vdCBvcy5wYXRoLnN1cHBvcnRzX3VuaWNvZGVfZmlsZW5hbWVzOgogICAgIHRyeToKQEAgLTU2LDE2ICs1NiwyMCBAQAogICAgICAgICAjIFNob3VsZCBiZSBhYmxlIHRvIHJlbmFtZSB0aGUgZmlsZSB1c2luZyBlaXRoZXIgbmFtZS4KICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKGZpbGVuYW1lMSkpICMgbXVzdCBleGlzdC4KICAgICAgICAgb3MucmVuYW1lKGZpbGVuYW1lMSwgZmlsZW5hbWUyICsgIi5uZXciKQotICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2ZpbGUoZmlsZW5hbWUxKyIubmV3IikpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5pc2ZpbGUoZmlsZW5hbWUyKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKGZpbGVuYW1lMSArICcubmV3JykpCiAgICAgICAgIG9zLnJlbmFtZShmaWxlbmFtZTEgKyAiLm5ldyIsIGZpbGVuYW1lMikKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmlzZmlsZShmaWxlbmFtZTEgKyAnLm5ldycpKQogICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2ZpbGUoZmlsZW5hbWUyKSkKIAogICAgICAgICBzaHV0aWwuY29weShmaWxlbmFtZTEsIGZpbGVuYW1lMiArICIubmV3IikKICAgICAgICAgb3MudW5saW5rKGZpbGVuYW1lMSArICIubmV3IikgIyByZW1vdmUgdXNpbmcgZXF1aXYgbmFtZS4KICAgICAgICAgIyBBbmQgYSBjb3VwbGUgb2YgbW92ZXMsIG9uZSB1c2luZyBlYWNoIG5hbWUuCiAgICAgICAgIHNodXRpbC5tb3ZlKGZpbGVuYW1lMSwgZmlsZW5hbWUyICsgIi5uZXciKQotICAgICAgICBzZWxmLmFzc2VydFRydWUobm90IG9zLnBhdGguZXhpc3RzKGZpbGVuYW1lMikpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoZmlsZW5hbWUyKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKGZpbGVuYW1lMSArICcubmV3JykpCiAgICAgICAgIHNodXRpbC5tb3ZlKGZpbGVuYW1lMSArICIubmV3IiwgZmlsZW5hbWUyKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKGZpbGVuYW1lMiArICcubmV3JykpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhmaWxlbmFtZTEpKQogICAgICAgICAjIE5vdGUgLSBkdWUgdG8gdGhlIGltcGxlbWVudGF0aW9uIG9mIHNodXRpbC5tb3ZlLAogICAgICAgICAjIGl0IHRyaWVzIGEgcmVuYW1lIGZpcnN0LiAgVGhpcyBvbmx5IGZhaWxzIG9uIFdpbmRvd3Mgd2hlbiBvbgpAQCAtNzMsMTAgKzc3LDEyIEBACiAgICAgICAgICMgU28gd2UgdGVzdCB0aGUgc2h1dGlsLmNvcHkyIGZ1bmN0aW9uLCB3aGljaCBpcyB0aGUgdGhpbmcgbW9zdAogICAgICAgICAjIGxpa2VseSB0byBmYWlsLgogICAgICAgICBzaHV0aWwuY29weTIoZmlsZW5hbWUxLCBmaWxlbmFtZTIgKyAiLm5ldyIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShmaWxlbmFtZTEgKyAnLm5ldycpKQogICAgICAgICBvcy51bmxpbmsoZmlsZW5hbWUxICsgIi5uZXciKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKGZpbGVuYW1lMiArICcubmV3JykpCiAKICAgICBkZWYgX2RvX2RpcmVjdG9yeShzZWxmLCBtYWtlX25hbWUsIGNoZGlyX25hbWUpOgotICAgICAgICBjd2QgPSBvcy5nZXRjd2RiKCkKKyAgICAgICAgY3dkID0gb3MuZ2V0Y3dkKCkKICAgICAgICAgaWYgb3MucGF0aC5pc2RpcihtYWtlX25hbWUpOgogICAgICAgICAgICAgcm10cmVlKG1ha2VfbmFtZSkKICAgICAgICAgb3MubWtkaXIobWFrZV9uYW1lKQpAQCAtOTksOCArMTA1LDcgQEAKICAgICAjIHRvcC1sZXZlbCAndGVzdCcgZnVuY3Rpb25zIHdvdWxkIGJlIGlmIHRoZXkgY291bGQgdGFrZSBwYXJhbXMKICAgICBkZWYgX3Rlc3Rfc2luZ2xlKHNlbGYsIGZpbGVuYW1lKToKICAgICAgICAgcmVtb3ZlX2lmX2V4aXN0cyhmaWxlbmFtZSkKLSAgICAgICAgZiA9IG9wZW4oZmlsZW5hbWUsICJ3IikKLSAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKGZpbGVuYW1lKQogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzZWxmLl9kb19zaW5nbGUoZmlsZW5hbWUpCiAgICAgICAgIGZpbmFsbHk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3VuaWNvZGVkYXRhLnB5IGIvTGliL3Rlc3QvdGVzdF91bmljb2RlZGF0YS5weQppbmRleCA5NzQ0MjU2Li45OWFhMDAzIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3VuaWNvZGVkYXRhLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdW5pY29kZWRhdGEucHkKQEAgLTIxLDcgKzIxLDcgQEAKIGNsYXNzIFVuaWNvZGVNZXRob2RzVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKICAgICAjIHVwZGF0ZSB0aGlzLCBpZiB0aGUgZGF0YWJhc2UgY2hhbmdlcwotICAgIGV4cGVjdGVkY2hlY2tzdW0gPSAnMjFiOTBmMWFlZDAwMDgxYjgxY2E3OTQyYjIyMTk2YWYwOTAwMTVhMCcKKyAgICBleHBlY3RlZGNoZWNrc3VtID0gJ2JmN2E3OGYxYTUzMjQyMWI1MDMzNjAwMTAyZTIzYTkyMDQ0ZGJiYTknCiAKICAgICBkZWYgdGVzdF9tZXRob2RfY2hlY2tzdW0oc2VsZik6CiAgICAgICAgIGggPSBoYXNobGliLnNoYTEoKQpAQCAtODAsNyArODAsNyBAQAogY2xhc3MgVW5pY29kZUZ1bmN0aW9uc1Rlc3QoVW5pY29kZURhdGFiYXNlVGVzdCk6CiAKICAgICAjIHVwZGF0ZSB0aGlzLCBpZiB0aGUgZGF0YWJhc2UgY2hhbmdlcwotICAgIGV4cGVjdGVkY2hlY2tzdW0gPSAnYzIzZGZjMGI1ZWFmM2NhMmFhZDMyZDczM2RlOTZiYjE4MmNjZGE1MCcKKyAgICBleHBlY3RlZGNoZWNrc3VtID0gJzE3ZmUyZjEyYjc4OGU0ZmZmNTQ3OWI0NjljNDQwNGJiNmVjZjg0MWYnCiAgICAgZGVmIHRlc3RfZnVuY3Rpb25fY2hlY2tzdW0oc2VsZik6CiAgICAgICAgIGRhdGEgPSBbXQogICAgICAgICBoID0gaGFzaGxpYi5zaGExKCkKQEAgLTEwOCw2ICsxMDgsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuZGlnaXQoJ1x1MjE1YicsIE5vbmUpLCBOb25lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuZGlnaXQoJ1x1MjQ2OCcpLCA5KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuZGlnaXQoJ1xVMDAwMjAwMDAnLCBOb25lKSwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRpZ2l0KCdcVTAwMDFEN0ZEJyksIDcpCiAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLmRiLmRpZ2l0KQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuZGIuZGlnaXQsICd4eCcpCkBAIC0xMjAsNiArMTIxLDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLm51bWVyaWMoJ1x1MjQ2OCcpLCA5LjApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYi5udW1lcmljKCdcdWE2MjcnKSwgNy4wKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIubnVtZXJpYygnXFUwMDAyMDAwMCcsIE5vbmUpLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIubnVtZXJpYygnXFUwMDAxMDEyQScpLCA5MDAwKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5kYi5udW1lcmljKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuZGIubnVtZXJpYywgJ3h4JykKQEAgLTEzMSw2ICsxMzMsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuZGVjaW1hbCgnXHUyMTViJywgTm9uZSksIE5vbmUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYi5kZWNpbWFsKCdcdTI0NjgnLCBOb25lKSwgTm9uZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRlY2ltYWwoJ1xVMDAwMjAwMDAnLCBOb25lKSwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRlY2ltYWwoJ1xVMDAwMUQ3RkQnKSwgNykKIAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuZGIuZGVjaW1hbCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLmRiLmRlY2ltYWwsICd4eCcpCkBAIC0xNDEsNiArMTQ0LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmNhdGVnb3J5KCdhJyksICdMbCcpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYi5jYXRlZ29yeSgnQScpLCAnTHUnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuY2F0ZWdvcnkoJ1xVMDAwMjAwMDAnKSwgJ0xvJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmNhdGVnb3J5KCdcVTAwMDEwMTJBJyksICdObycpCiAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLmRiLmNhdGVnb3J5KQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuZGIuY2F0ZWdvcnksICd4eCcpCkBAIC0zMDgsMTQgKzMxMiw2IEBACiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obGluZXMpLCAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciJcdSUuNHggc2hvdWxkIG5vdCBiZSBhIGxpbmVicmVhayIgJSBpKQogCi0gICAgZGVmIHRlc3RfVUNTNChzZWxmKToKLSAgICAgICAgIyB1bmljb2RlZGF0YSBzaG91bGQgd29yayB3aXRoIGNvZGUgcG9pbnRzIG91dHNpZGUgdGhlIEJNUAotICAgICAgICAjIGV2ZW4gb24gYSBuYXJyb3cgVW5pY29kZSBidWlsZAotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuY2F0ZWdvcnkoIlxVMDAwMTAxMkEiKSwgIk5vIikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLm51bWVyaWMoIlxVMDAwMTAxMkEiKSwgOTAwMCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRlY2ltYWwoIlxVMDAwMUQ3RkQiKSwgNykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRpZ2l0KCJcVTAwMDFEN0ZEIiksIDcpCi0KIGRlZiB0ZXN0X21haW4oKToKICAgICB0ZXN0LnN1cHBvcnQucnVuX3VuaXR0ZXN0KAogICAgICAgICBVbmljb2RlTWlzY1Rlc3QsCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3VybGxpYi5weSBiL0xpYi90ZXN0L3Rlc3RfdXJsbGliLnB5CmluZGV4IGM2ZjZmNjEuLmIyNjgwZWQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdXJsbGliLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdXJsbGliLnB5CkBAIC0zMzEsNyArMzMxLDcgQEAKICAgICBkZWYgY29uc3RydWN0TG9jYWxGaWxlVXJsKHNlbGYsIGZpbGVQYXRoKToKICAgICAgICAgZmlsZVBhdGggPSBvcy5wYXRoLmFic3BhdGgoZmlsZVBhdGgpCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIGZpbGVQYXRoLmVuY29kZSgidXRmOCIpCisgICAgICAgICAgICBmaWxlUGF0aC5lbmNvZGUoInV0Zi04IikKICAgICAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKICAgICAgICAgICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJmaWxlUGF0aCBpcyBub3QgZW5jb2RhYmxlIHRvIHV0ZjgiKQogICAgICAgICByZXR1cm4gImZpbGU6Ly8lcyIgJSB1cmxsaWIucmVxdWVzdC5wYXRobmFtZTJ1cmwoZmlsZVBhdGgpCkBAIC0xMjQ1LDYgKzEyNDUsMjggQEAKICMgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZ0cC5mdHAuc29jay5nZXR0aW1lb3V0KCksIDMwKQogIyAgICAgICAgIGZ0cC5jbG9zZSgpCiAKK2NsYXNzIFJlcXVlc3RUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgdXJsbGliLnJlcXVlc3QuUmVxdWVzdC4iIiIKKworICAgIGRlZiB0ZXN0X2RlZmF1bHRfdmFsdWVzKHNlbGYpOgorICAgICAgICBSZXF1ZXN0ID0gdXJsbGliLnJlcXVlc3QuUmVxdWVzdAorICAgICAgICByZXF1ZXN0ID0gUmVxdWVzdCgiaHR0cDovL3d3dy5weXRob24ub3JnIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXF1ZXN0LmdldF9tZXRob2QoKSwgJ0dFVCcpCisgICAgICAgIHJlcXVlc3QgPSBSZXF1ZXN0KCJodHRwOi8vd3d3LnB5dGhvbi5vcmciLCB7fSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXF1ZXN0LmdldF9tZXRob2QoKSwgJ1BPU1QnKQorCisgICAgZGVmIHRlc3Rfd2l0aF9tZXRob2RfYXJnKHNlbGYpOgorICAgICAgICBSZXF1ZXN0ID0gdXJsbGliLnJlcXVlc3QuUmVxdWVzdAorICAgICAgICByZXF1ZXN0ID0gUmVxdWVzdCgiaHR0cDovL3d3dy5weXRob24ub3JnIiwgbWV0aG9kPSdIRUFEJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXF1ZXN0Lm1ldGhvZCwgJ0hFQUQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcXVlc3QuZ2V0X21ldGhvZCgpLCAnSEVBRCcpCisgICAgICAgIHJlcXVlc3QgPSBSZXF1ZXN0KCJodHRwOi8vd3d3LnB5dGhvbi5vcmciLCB7fSwgbWV0aG9kPSdIRUFEJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXF1ZXN0Lm1ldGhvZCwgJ0hFQUQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcXVlc3QuZ2V0X21ldGhvZCgpLCAnSEVBRCcpCisgICAgICAgIHJlcXVlc3QgPSBSZXF1ZXN0KCJodHRwOi8vd3d3LnB5dGhvbi5vcmciLCBtZXRob2Q9J0dFVCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVxdWVzdC5nZXRfbWV0aG9kKCksICdHRVQnKQorICAgICAgICByZXF1ZXN0Lm1ldGhvZCA9ICdIRUFEJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcXVlc3QuZ2V0X21ldGhvZCgpLCAnSEVBRCcpCiAKIAogZGVmIHRlc3RfbWFpbigpOgpAQCAtMTI2MSw2ICsxMjgzLDcgQEAKICAgICAgICAgVXRpbGl0eV9UZXN0cywKICAgICAgICAgVVJMb3BlbmVyX1Rlc3RzLAogICAgICAgICAjRlRQV3JhcHBlclRlc3RzLAorICAgICAgICBSZXF1ZXN0VGVzdHMsCiAgICAgKQogCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfdXJsbGliMi5weSBiL0xpYi90ZXN0L3Rlc3RfdXJsbGliMi5weQppbmRleCAzZDgwZTAxLi4wZmYzMTgxIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3VybGxpYjIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF91cmxsaWIyLnB5CkBAIC01LDYgKzUsNyBAQAogaW1wb3J0IGlvCiBpbXBvcnQgc29ja2V0CiBpbXBvcnQgYXJyYXkKK2ltcG9ydCBzeXMKIAogaW1wb3J0IHVybGxpYi5yZXF1ZXN0CiAjIFRoZSBwcm94eSBieXBhc3MgbWV0aG9kIGltcG9ydGVkIGJlbG93IGhhcyBsb2dpYyBzcGVjaWZpYyB0byB0aGUgT1NYCkBAIC0xOCw2ICsxOSwyMiBAQAogIyBwYXJzZV9rZXF2X2xpc3QsIHBhcnNlX2h0dHBfbGlzdCwgSFRUUERpZ2VzdEF1dGhIYW5kbGVyCiAKIGNsYXNzIFRyaXZpYWxUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9fX2FsbF9fKHNlbGYpOgorICAgICAgICAjIFZlcmlmeSB3aGljaCBuYW1lcyBhcmUgZXhwb3NlZAorICAgICAgICBmb3IgbW9kdWxlIGluICdyZXF1ZXN0JywgJ3Jlc3BvbnNlJywgJ3BhcnNlJywgJ2Vycm9yJywgJ3JvYm90cGFyc2VyJzoKKyAgICAgICAgICAgIGNvbnRleHQgPSB7fQorICAgICAgICAgICAgZXhlYygnZnJvbSB1cmxsaWIuJXMgaW1wb3J0IConICUgbW9kdWxlLCBjb250ZXh0KQorICAgICAgICAgICAgZGVsIGNvbnRleHRbJ19fYnVpbHRpbnNfXyddCisgICAgICAgICAgICBpZiBtb2R1bGUgPT0gJ3JlcXVlc3QnIGFuZCBvcy5uYW1lID09ICdudCc6CisgICAgICAgICAgICAgICAgdSwgcCA9IGNvbnRleHQucG9wKCd1cmwycGF0aG5hbWUnKSwgY29udGV4dC5wb3AoJ3BhdGhuYW1lMnVybCcpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1Ll9fbW9kdWxlX18sICdudHVybDJwYXRoJykKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHAuX19tb2R1bGVfXywgJ250dXJsMnBhdGgnKQorICAgICAgICAgICAgZm9yIGssIHYgaW4gY29udGV4dC5pdGVtcygpOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodi5fX21vZHVsZV9fLCAndXJsbGliLiVzJyAlIG1vZHVsZSwKKyAgICAgICAgICAgICAgICAgICAgIiVyIGlzIGV4cG9zZWQgaW4gJ3VybGxpYi4lcycgYnV0IGRlZmluZWQgaW4gJXIiICUKKyAgICAgICAgICAgICAgICAgICAgKGssIG1vZHVsZSwgdi5fX21vZHVsZV9fKSkKKwogICAgIGRlZiB0ZXN0X3RyaXZpYWwoc2VsZik6CiAgICAgICAgICMgQSBjb3VwbGUgdHJpdmlhbCB0ZXN0cwogCkBAIC02MDUsNyArNjIyLDcgQEAKIAogZGVmIHNhbmVwYXRobmFtZTJ1cmwocGF0aCk6CiAgICAgdHJ5OgotICAgICAgICBwYXRoLmVuY29kZSgidXRmOCIpCisgICAgICAgIHBhdGguZW5jb2RlKCJ1dGYtOCIpCiAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKICAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoInBhdGggaXMgbm90IGVuY29kYWJsZSB0byB1dGY4IikKICAgICB1cmxwYXRoID0gdXJsbGliLnJlcXVlc3QucGF0aG5hbWUydXJsKHBhdGgpCkBAIC0xMTc5LDYgKzExOTYsOCBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcS5nZXRfaG9zdCgpLCAicHJveHkuZXhhbXBsZS5jb206MzEyOCIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVxLmdldF9oZWFkZXIoIlByb3h5LWF1dGhvcml6YXRpb24iKSwiRm9vQmFyIikKIAorICAgICMgVE9ETzogVGhpcyBzaG91bGQgYmUgb25seSBmb3IgT1NYCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLCAib25seSByZWxldmFudCBmb3IgT1NYIikKICAgICBkZWYgdGVzdF9vc3hfcHJveHlfYnlwYXNzKHNlbGYpOgogICAgICAgICBieXBhc3MgPSB7CiAgICAgICAgICAgICAnZXhjbHVkZV9zaW1wbGUnOiBGYWxzZSwKQEAgLTEyODIsNiArMTMwMSwyNiBAQAogICAgICAgICAjIF90ZXN0X2Jhc2ljX2F1dGggY2FsbGVkIC5vcGVuKCkgdHdpY2UpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3BlbmVyLnJlY29yZGVkLCBbImRpZ2VzdCIsICJiYXNpYyJdKjIpCiAKKyAgICBkZWYgdGVzdF91bnN1cHBvcnRlZF9hdXRoX2RpZ2VzdF9oYW5kbGVyKHNlbGYpOgorICAgICAgICBvcGVuZXIgPSBPcGVuZXJEaXJlY3RvcigpCisgICAgICAgICMgV2hpbGUgdXNpbmcgRGlnZXN0QXV0aEhhbmRsZXIKKyAgICAgICAgZGlnZXN0X2F1dGhfaGFuZGxlciA9IHVybGxpYi5yZXF1ZXN0LkhUVFBEaWdlc3RBdXRoSGFuZGxlcihOb25lKQorICAgICAgICBodHRwX2hhbmRsZXIgPSBNb2NrSFRUUEhhbmRsZXIoCisgICAgICAgICAgICA0MDEsICdXV1ctQXV0aGVudGljYXRlOiBLZXJiZXJvc1xyXG5cclxuJykKKyAgICAgICAgb3BlbmVyLmFkZF9oYW5kbGVyKGRpZ2VzdF9hdXRoX2hhbmRsZXIpCisgICAgICAgIG9wZW5lci5hZGRfaGFuZGxlcihodHRwX2hhbmRsZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3Isb3BlbmVyLm9wZW4sImh0dHA6Ly93d3cuZXhhbXBsZS5jb20iKQorCisgICAgZGVmIHRlc3RfdW5zdXBwb3J0ZWRfYXV0aF9iYXNpY19oYW5kbGVyKHNlbGYpOgorICAgICAgICAjIFdoaWxlIHVzaW5nIEJhc2ljQXV0aEhhbmRsZXIKKyAgICAgICAgb3BlbmVyID0gT3BlbmVyRGlyZWN0b3IoKQorICAgICAgICBiYXNpY19hdXRoX2hhbmRsZXIgPSB1cmxsaWIucmVxdWVzdC5IVFRQQmFzaWNBdXRoSGFuZGxlcihOb25lKQorICAgICAgICBodHRwX2hhbmRsZXIgPSBNb2NrSFRUUEhhbmRsZXIoCisgICAgICAgICAgICA0MDEsICdXV1ctQXV0aGVudGljYXRlOiBOVExNXHJcblxyXG4nKQorICAgICAgICBvcGVuZXIuYWRkX2hhbmRsZXIoYmFzaWNfYXV0aF9oYW5kbGVyKQorICAgICAgICBvcGVuZXIuYWRkX2hhbmRsZXIoaHR0cF9oYW5kbGVyKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLG9wZW5lci5vcGVuLCJodHRwOi8vd3d3LmV4YW1wbGUuY29tIikKKwogICAgIGRlZiBfdGVzdF9iYXNpY19hdXRoKHNlbGYsIG9wZW5lciwgYXV0aF9oYW5kbGVyLCBhdXRoX2hlYWRlciwKICAgICAgICAgICAgICAgICAgICAgICAgICByZWFsbSwgaHR0cF9oYW5kbGVyLCBwYXNzd29yZF9tYW5hZ2VyLAogICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RfdXJsLCBwcm90ZWN0ZWRfdXJsKToKQEAgLTEzMTksNiArMTM1OCw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGh0dHBfaGFuZGxlci5yZXF1ZXN0cyksIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaHR0cF9oYW5kbGVyLnJlcXVlc3RzWzBdLmhhc19oZWFkZXIoYXV0aF9oZWFkZXIpKQogCisKIGNsYXNzIE1pc2NUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKICAgICBkZWYgdGVzdF9idWlsZF9vcGVuZXIoc2VsZik6CkBAIC0xNDI3LDcgKzE0NjcsOSBAQAogICAgIElzc3VlIDEzMjExIHJldmVhbHMgdGhhdCBIVFRQRXJyb3IgZGlkbid0IGltcGxlbWVudCB0aGUgVVJMRXJyb3IKICAgICBpbnRlcmZhY2UgZXZlbiB0aG91Z2ggSFRUUEVycm9yIGlzIGEgc3ViY2xhc3Mgb2YgVVJMRXJyb3IuCiAKLSAgICA+Pj4gZXJyID0gdXJsbGliLmVycm9yLkhUVFBFcnJvcihtc2c9J3NvbWV0aGluZyBiYWQgaGFwcGVuZWQnLCB1cmw9Tm9uZSwgY29kZT1Ob25lLCBoZHJzPU5vbmUsIGZwPU5vbmUpCisgICAgPj4+IG1zZyA9ICdzb21ldGhpbmcgYmFkIGhhcHBlbmVkJworICAgID4+PiB1cmwgPSBjb2RlID0gaGRycyA9IGZwID0gTm9uZQorICAgID4+PiBlcnIgPSB1cmxsaWIuZXJyb3IuSFRUUEVycm9yKHVybCwgY29kZSwgbXNnLCBoZHJzLCBmcCkKICAgICA+Pj4gYXNzZXJ0IGhhc2F0dHIoZXJyLCAncmVhc29uJykKICAgICA+Pj4gZXJyLnJlYXNvbgogICAgICdzb21ldGhpbmcgYmFkIGhhcHBlbmVkJwpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF91cmxsaWIybmV0LnB5IGIvTGliL3Rlc3QvdGVzdF91cmxsaWIybmV0LnB5CmluZGV4IDVmY2I0Y2IuLmZjNTUyN2UgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdXJsbGliMm5ldC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3VybGxpYjJuZXQucHkKQEAgLTgzLDEyICs4MywxMyBAQAogICAgIGRlZiB0ZXN0X2Nsb3NlKHNlbGYpOgogICAgICAgICAjIGNhbGxpbmcgLmNsb3NlKCkgb24gdXJsbGliMidzIHJlc3BvbnNlIG9iamVjdHMgc2hvdWxkIGNsb3NlIHRoZQogICAgICAgICAjIHVuZGVybHlpbmcgc29ja2V0Ci0KLSAgICAgICAgcmVzcG9uc2UgPSBfdXJsb3Blbl93aXRoX3JldHJ5KCJodHRwOi8vd3d3LnB5dGhvbi5vcmcvIikKLSAgICAgICAgc29jayA9IHJlc3BvbnNlLmZwCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3Qgc29jay5jbG9zZWQpCi0gICAgICAgIHJlc3BvbnNlLmNsb3NlKCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNvY2suY2xvc2VkKQorICAgICAgICB1cmwgPSAiaHR0cDovL3d3dy5weXRob24ub3JnLyIKKyAgICAgICAgd2l0aCBzdXBwb3J0LnRyYW5zaWVudF9pbnRlcm5ldCh1cmwpOgorICAgICAgICAgICAgcmVzcG9uc2UgPSBfdXJsb3Blbl93aXRoX3JldHJ5KHVybCkKKyAgICAgICAgICAgIHNvY2sgPSByZXNwb25zZS5mcAorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBzb2NrLmNsb3NlZCkKKyAgICAgICAgICAgIHJlc3BvbnNlLmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzb2NrLmNsb3NlZCkKIAogY2xhc3MgT3RoZXJOZXR3b3JrVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiBzZXRVcChzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfdXNlcmxpc3QucHkgYi9MaWIvdGVzdC90ZXN0X3VzZXJsaXN0LnB5CmluZGV4IDg2OGVkMjQuLjYzODEwNzAgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdXNlcmxpc3QucHkKKysrIGIvTGliL3Rlc3QvdGVzdF91c2VybGlzdC5weQpAQCAtNTIsNiArNTIsMTIgQEAKICAgICAgICAgICAgICAgICByZXR1cm4gc3RyKGtleSkgKyAnISEhJwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5leHQoaXRlcihUKCgxLDIpKSkpLCAiMCEhISIpCiAKKyAgICBkZWYgdGVzdF91c2VybGlzdF9jb3B5KHNlbGYpOgorICAgICAgICB1ID0gc2VsZi50eXBlMnRlc3QoWzYsIDgsIDEsIDksIDFdKQorICAgICAgICB2ID0gdS5jb3B5KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1LCB2KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHR5cGUodSksIHR5cGUodikpCisKIGRlZiB0ZXN0X21haW4oKToKICAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChVc2VyTGlzdFRlc3QpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfdXNlcnN0cmluZy5weSBiL0xpYi90ZXN0L3Rlc3RfdXNlcnN0cmluZy5weQppbmRleCA3YThiOTMyLi5kNWQwYzg5IDEwMDc1NQotLS0gYS9MaWIvdGVzdC90ZXN0X3VzZXJzdHJpbmcucHkKKysrIGIvTGliL3Rlc3QvdGVzdF91c2Vyc3RyaW5nLnB5CkBAIC0xNywxMSArMTcsMTEgQEAKICAgICAjIE92ZXJ3cml0ZSB0aGUgdGhyZWUgdGVzdGluZyBtZXRob2RzLCBiZWNhdXNlIFVzZXJTdHJpbmcKICAgICAjIGNhbid0IGNvcGUgd2l0aCBhcmd1bWVudHMgcHJvcGFnYXRlZCB0byBVc2VyU3RyaW5nCiAgICAgIyAoYW5kIHdlIGRvbid0IHRlc3Qgd2l0aCBzdWJjbGFzc2VzKQotICAgIGRlZiBjaGVja2VxdWFsKHNlbGYsIHJlc3VsdCwgb2JqZWN0LCBtZXRob2RuYW1lLCAqYXJncyk6CisgICAgZGVmIGNoZWNrZXF1YWwoc2VsZiwgcmVzdWx0LCBvYmplY3QsIG1ldGhvZG5hbWUsICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgIHJlc3VsdCA9IHNlbGYuZml4dHlwZShyZXN1bHQpCiAgICAgICAgIG9iamVjdCA9IHNlbGYuZml4dHlwZShvYmplY3QpCiAgICAgICAgICMgd2UgZG9uJ3QgZml4IHRoZSBhcmd1bWVudHMsIGJlY2F1c2UgVXNlclN0cmluZyBjYW4ndCBjb3BlIHdpdGggaXQKLSAgICAgICAgcmVhbHJlc3VsdCA9IGdldGF0dHIob2JqZWN0LCBtZXRob2RuYW1lKSgqYXJncykKKyAgICAgICAgcmVhbHJlc3VsdCA9IGdldGF0dHIob2JqZWN0LCBtZXRob2RuYW1lKSgqYXJncywgKiprd2FyZ3MpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICByZXN1bHQsCiAgICAgICAgICAgICByZWFscmVzdWx0CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3V1aWQucHkgYi9MaWIvdGVzdC90ZXN0X3V1aWQucHkKaW5kZXggNDNmYTY1Ni4uN2JjNTllZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF91dWlkLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdXVpZC5weQpAQCAtNDcxLDE0ICs0NzEsMTQgQEAKICAgICAgICAgaWYgcGlkID09IDA6CiAgICAgICAgICAgICBvcy5jbG9zZShmZHNbMF0pCiAgICAgICAgICAgICB2YWx1ZSA9IHV1aWQudXVpZDQoKQotICAgICAgICAgICAgb3Mud3JpdGUoZmRzWzFdLCB2YWx1ZS5oZXguZW5jb2RlKCdsYXRpbjEnKSkKKyAgICAgICAgICAgIG9zLndyaXRlKGZkc1sxXSwgdmFsdWUuaGV4LmVuY29kZSgnbGF0aW4tMScpKQogICAgICAgICAgICAgb3MuX2V4aXQoMCkKIAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgb3MuY2xvc2UoZmRzWzFdKQogICAgICAgICAgICAgcGFyZW50X3ZhbHVlID0gdXVpZC51dWlkNCgpLmhleAogICAgICAgICAgICAgb3Mud2FpdHBpZChwaWQsIDApCi0gICAgICAgICAgICBjaGlsZF92YWx1ZSA9IG9zLnJlYWQoZmRzWzBdLCAxMDApLmRlY29kZSgnbGF0aW4xJykKKyAgICAgICAgICAgIGNoaWxkX3ZhbHVlID0gb3MucmVhZChmZHNbMF0sIDEwMCkuZGVjb2RlKCdsYXRpbi0xJykKIAogICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChwYXJlbnRfdmFsdWUsIGNoaWxkX3ZhbHVlKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3dhaXQzLnB5IGIvTGliL3Rlc3QvdGVzdF93YWl0My5weQppbmRleCA3ODZlNjBiLi5iZDA2YzhkIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3dhaXQzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfd2FpdDMucHkKQEAgLTE5LDEzICsxOSwxNiBAQAogCiBjbGFzcyBXYWl0M1Rlc3QoRm9ya1dhaXQpOgogICAgIGRlZiB3YWl0X2ltcGwoc2VsZiwgY3BpZCk6Ci0gICAgICAgIGZvciBpIGluIHJhbmdlKDEwKToKKyAgICAgICAgIyBUaGlzIG1hbnkgaXRlcmF0aW9ucyBjYW4gYmUgcmVxdWlyZWQsIHNpbmNlIHNvbWUgcHJldmlvdXNseSBydW4KKyAgICAgICAgIyB0ZXN0cyAoZS5nLiB0ZXN0X2N0eXBlcykgY291bGQgaGF2ZSBzcGF3bmVkIGEgbG90IG9mIGNoaWxkcmVuCisgICAgICAgICMgdmVyeSBxdWlja2x5LgorICAgICAgICBmb3IgaSBpbiByYW5nZSgzMCk6CiAgICAgICAgICAgICAjIHdhaXQzKCkgc2hvdWxkbid0IGhhbmcsIGJ1dCBzb21lIG9mIHRoZSBidWlsZGJvdHMgc2VlbSB0byBoYW5nCiAgICAgICAgICAgICAjIGluIHRoZSBmb3JraW5nIHRlc3RzLiAgVGhpcyBpcyBhbiBhdHRlbXB0IHRvIGZpeCB0aGUgcHJvYmxlbS4KICAgICAgICAgICAgIHNwaWQsIHN0YXR1cywgcnVzYWdlID0gb3Mud2FpdDMob3MuV05PSEFORykKICAgICAgICAgICAgIGlmIHNwaWQgPT0gY3BpZDoKICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgdGltZS5zbGVlcCgxLjApCisgICAgICAgICAgICB0aW1lLnNsZWVwKDAuMSkKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNwaWQsIGNwaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RhdHVzLCAwLCAiY2F1c2UgPSAlZCwgZXhpdCA9ICVkIiAlIChzdGF0dXMmMHhmZiwgc3RhdHVzPj44KSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfd2FybmluZ3MucHkgYi9MaWIvdGVzdC90ZXN0X3dhcm5pbmdzLnB5CmluZGV4IDc5YmU4MzUuLjk1M2IyODIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfd2FybmluZ3MucHkKKysrIGIvTGliL3Rlc3QvdGVzdF93YXJuaW5ncy5weQpAQCAtNTEyLDEyICs1MTIsMTEgQEAKICAgICBkZWYgdGVzdF9zaG93d2FybmluZ19ub3RfY2FsbGFibGUoc2VsZik6CiAgICAgICAgIHdpdGggb3JpZ2luYWxfd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MobW9kdWxlPXNlbGYubW9kdWxlKToKICAgICAgICAgICAgIHNlbGYubW9kdWxlLmZpbHRlcndhcm5pbmdzKCJhbHdheXMiLCBjYXRlZ29yeT1Vc2VyV2FybmluZykKLSAgICAgICAgICAgIG9sZF9zaG93d2FybmluZyA9IHNlbGYubW9kdWxlLnNob3d3YXJuaW5nCisgICAgICAgICAgICBzZWxmLm1vZHVsZS5zaG93d2FybmluZyA9IHByaW50CisgICAgICAgICAgICB3aXRoIHN1cHBvcnQuY2FwdHVyZWRfb3V0cHV0KCdzdGRvdXQnKToKKyAgICAgICAgICAgICAgICBzZWxmLm1vZHVsZS53YXJuKCdXYXJuaW5nIScpCiAgICAgICAgICAgICBzZWxmLm1vZHVsZS5zaG93d2FybmluZyA9IDIzCi0gICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLm1vZHVsZS53YXJuLCAiV2FybmluZyEiKQotICAgICAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgICAgICBzZWxmLm1vZHVsZS5zaG93d2FybmluZyA9IG9sZF9zaG93d2FybmluZworICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLm1vZHVsZS53YXJuLCAiV2FybmluZyEiKQogCiAgICAgZGVmIHRlc3Rfc2hvd193YXJuaW5nX291dHB1dChzZWxmKToKICAgICAgICAgIyBXaXRoIHNob3dhcm5pbmcoKSBtaXNzaW5nLCBtYWtlIHN1cmUgdGhhdCBvdXRwdXQgaXMgb2theS4KQEAgLTU0NywxMCArNTQ2LDEzIEBACiAgICAgICAgIGdsb2JhbHNfZGljdCA9IGdsb2JhbHMoKQogICAgICAgICBvbGRmaWxlID0gZ2xvYmFsc19kaWN0WydfX2ZpbGVfXyddCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHdpdGggb3JpZ2luYWxfd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MobW9kdWxlPXNlbGYubW9kdWxlKSBhcyB3OgorICAgICAgICAgICAgY2F0Y2ggPSBvcmlnaW5hbF93YXJuaW5ncy5jYXRjaF93YXJuaW5ncyhyZWNvcmQ9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlPXNlbGYubW9kdWxlKQorICAgICAgICAgICAgd2l0aCBjYXRjaCBhcyB3OgogICAgICAgICAgICAgICAgIHNlbGYubW9kdWxlLmZpbHRlcndhcm5pbmdzKCJhbHdheXMiLCBjYXRlZ29yeT1Vc2VyV2FybmluZykKICAgICAgICAgICAgICAgICBnbG9iYWxzX2RpY3RbJ19fZmlsZV9fJ10gPSBOb25lCiAgICAgICAgICAgICAgICAgb3JpZ2luYWxfd2FybmluZ3Mud2FybigndGVzdCcsIFVzZXJXYXJuaW5nKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShsZW4odykpCiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICBnbG9iYWxzX2RpY3RbJ19fZmlsZV9fJ10gPSBvbGRmaWxlCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfeG1sX2V0cmVlLnB5IGIvTGliL3Rlc3QvdGVzdF94bWxfZXRyZWUucHkKaW5kZXggYjdhOTk2Yy4uYjkyMzBiNyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF94bWxfZXRyZWUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF94bWxfZXRyZWUucHkKQEAgLTE2LDEzICsxNiwxMyBAQAogaW1wb3J0IHVuaXR0ZXN0CiAKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGZpbmRmaWxlCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgZmluZGZpbGUsIGltcG9ydF9mcmVzaF9tb2R1bGUKIAotZnJvbSB4bWwuZXRyZWUgaW1wb3J0IEVsZW1lbnRUcmVlIGFzIEVUCitweUVUID0gaW1wb3J0X2ZyZXNoX21vZHVsZSgneG1sLmV0cmVlLkVsZW1lbnRUcmVlJywgYmxvY2tlZD1bJ19lbGVtZW50dHJlZSddKQogCiBTSU1QTEVfWE1MRklMRSA9IGZpbmRmaWxlKCJzaW1wbGUueG1sIiwgc3ViZGlyPSJ4bWx0ZXN0ZGF0YSIpCiB0cnk6Ci0gICAgU0lNUExFX1hNTEZJTEUuZW5jb2RlKCJ1dGY4IikKKyAgICBTSU1QTEVfWE1MRklMRS5lbmNvZGUoInV0Zi04IikKIGV4Y2VwdCBVbmljb2RlRW5jb2RlRXJyb3I6CiAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoImZpbGVuYW1lIGlzIG5vdCBlbmNvZGFibGUgdG8gdXRmOCIpCiBTSU1QTEVfTlNfWE1MRklMRSA9IGZpbmRmaWxlKCJzaW1wbGUtbnMueG1sIiwgc3ViZGlyPSJ4bWx0ZXN0ZGF0YSIpCkBAIC0yNzUsNyArMjc1LDcgQEAKICAgICAiIiIKICAgICBUZXN0IGZpbmQgbWV0aG9kcyB1c2luZyB0aGUgZWxlbWVudHBhdGggZmFsbGJhY2suCiAKLSAgICA+Pj4gZnJvbSB4bWwuZXRyZWUgaW1wb3J0IEVsZW1lbnRUcmVlCisgICAgPj4+IEVsZW1lbnRUcmVlID0gcHlFVAogCiAgICAgPj4+IEN1cnJlbnRFbGVtZW50UGF0aCA9IEVsZW1lbnRUcmVlLkVsZW1lbnRQYXRoCiAgICAgPj4+IEVsZW1lbnRUcmVlLkVsZW1lbnRQYXRoID0gRWxlbWVudFRyZWUuX1NpbXBsZUVsZW1lbnRQYXRoKCkKQEAgLTQ2MCwxNyArNDYwLDE5IEBACiAgICAgIiIiCiAgICAgQ2hlY2sgdGhhdCB0aGUgcGF0aCBjYWNoZSBiZWhhdmVzIHNhbmVseS4KIAorICAgID4+PiBmcm9tIHhtbC5ldHJlZSBpbXBvcnQgRWxlbWVudFBhdGgKKwogICAgID4+PiBlbGVtID0gRVQuWE1MKFNBTVBMRV9YTUwpCiAgICAgPj4+IGZvciBpIGluIHJhbmdlKDEwKTogRVQuRWxlbWVudFRyZWUoZWxlbSkuZmluZCgnLi8nK3N0cihpKSkKLSAgICA+Pj4gY2FjaGVfbGVuXzEwID0gbGVuKEVULkVsZW1lbnRQYXRoLl9jYWNoZSkKKyAgICA+Pj4gY2FjaGVfbGVuXzEwID0gbGVuKEVsZW1lbnRQYXRoLl9jYWNoZSkKICAgICA+Pj4gZm9yIGkgaW4gcmFuZ2UoMTApOiBFVC5FbGVtZW50VHJlZShlbGVtKS5maW5kKCcuLycrc3RyKGkpKQotICAgID4+PiBsZW4oRVQuRWxlbWVudFBhdGguX2NhY2hlKSA9PSBjYWNoZV9sZW5fMTAKKyAgICA+Pj4gbGVuKEVsZW1lbnRQYXRoLl9jYWNoZSkgPT0gY2FjaGVfbGVuXzEwCiAgICAgVHJ1ZQogICAgID4+PiBmb3IgaSBpbiByYW5nZSgyMCk6IEVULkVsZW1lbnRUcmVlKGVsZW0pLmZpbmQoJy4vJytzdHIoaSkpCi0gICAgPj4+IGxlbihFVC5FbGVtZW50UGF0aC5fY2FjaGUpID4gY2FjaGVfbGVuXzEwCisgICAgPj4+IGxlbihFbGVtZW50UGF0aC5fY2FjaGUpID4gY2FjaGVfbGVuXzEwCiAgICAgVHJ1ZQogICAgID4+PiBmb3IgaSBpbiByYW5nZSg2MDApOiBFVC5FbGVtZW50VHJlZShlbGVtKS5maW5kKCcuLycrc3RyKGkpKQotICAgID4+PiBsZW4oRVQuRWxlbWVudFBhdGguX2NhY2hlKSA8IDUwMAorICAgID4+PiBsZW4oRWxlbWVudFBhdGguX2NhY2hlKSA8IDUwMAogICAgIFRydWUKICAgICAiIiIKIApAQCAtMTI1Niw4ICsxMjU4LDggQEAKIAogICAgID4+PiBFVC50b3N0cmluZyhFVC5QSSgndGVzdCcsICc8dGVzdGluZyY+JykpCiAgICAgYic8P3Rlc3QgPHRlc3RpbmcmPj8+JwotICAgID4+PiBFVC50b3N0cmluZyhFVC5QSSgndGVzdCcsICc8dGVzdGluZyY+XHhlMycpLCAnbGF0aW4xJykKLSAgICBiIjw/eG1sIHZlcnNpb249JzEuMCcgZW5jb2Rpbmc9J2xhdGluMSc/Plxcbjw/dGVzdCA8dGVzdGluZyY+XFx4ZTM/PiIKKyAgICA+Pj4gRVQudG9zdHJpbmcoRVQuUEkoJ3Rlc3QnLCAnPHRlc3RpbmcmPlx4ZTMnKSwgJ2xhdGluLTEnKQorICAgIGIiPD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nbGF0aW4tMSc/Plxcbjw/dGVzdCA8dGVzdGluZyY+XFx4ZTM/PiIKICAgICAiIiIKIAogIwpAQCAtMTM0MCw3ICsxMzQyLDcgQEAKICAgICB0cnk6CiAgICAgICAgIGRhdGEgPSBYSU5DTFVERVtocmVmXQogICAgIGV4Y2VwdCBLZXlFcnJvcjoKLSAgICAgICAgcmFpc2UgSU9FcnJvcigicmVzb3VyY2Ugbm90IGZvdW5kIikKKyAgICAgICAgcmFpc2UgT1NFcnJvcigicmVzb3VyY2Ugbm90IGZvdW5kIikKICAgICBpZiBwYXJzZSA9PSAieG1sIjoKICAgICAgICAgZnJvbSB4bWwuZXRyZWUuRWxlbWVudFRyZWUgaW1wb3J0IFhNTAogICAgICAgICByZXR1cm4gWE1MKGRhdGEpCkBAIC0xMzUwLDcgKzEzNTIsNiBAQAogICAgIHIiIiIKICAgICBCYXNpYyBpbmNsdXNpb24gZXhhbXBsZSAoWEluY2x1ZGUgQy4xKQogCi0gICAgPj4+IGZyb20geG1sLmV0cmVlIGltcG9ydCBFbGVtZW50VHJlZSBhcyBFVAogICAgID4+PiBmcm9tIHhtbC5ldHJlZSBpbXBvcnQgRWxlbWVudEluY2x1ZGUKIAogICAgID4+PiBkb2N1bWVudCA9IHhpbmNsdWRlX2xvYWRlcigiQzEueG1sIikKQEAgLTE0MDUsNyArMTQwNiw3IEBACiAgICAgPj4+IGRvY3VtZW50ID0geGluY2x1ZGVfbG9hZGVyKCJDNS54bWwiKQogICAgID4+PiBFbGVtZW50SW5jbHVkZS5pbmNsdWRlKGRvY3VtZW50LCB4aW5jbHVkZV9sb2FkZXIpCiAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgotICAgIElPRXJyb3I6IHJlc291cmNlIG5vdCBmb3VuZAorICAgIE9TRXJyb3I6IHJlc291cmNlIG5vdCBmb3VuZAogICAgID4+PiAjIHByaW50KHNlcmlhbGl6ZShkb2N1bWVudCkpICMgQzUKICAgICAiIiIKIApAQCAtMTYxMiw3ICsxNjEzLDcgQEAKIAogY2xhc3MgRXhjZXB0aW9uRmlsZToKICAgICBkZWYgcmVhZChzZWxmLCB4KToKLSAgICAgICAgcmFpc2UgSU9FcnJvcgorICAgICAgICByYWlzZSBPU0Vycm9yCiAKIGRlZiB4bWx0b29sa2l0NjAoKToKICAgICAiIiIKQEAgLTE2MjAsNyArMTYyMSw3IEBACiAgICAgSGFuZGxlIGNyYXNoIGluIHN0cmVhbSBzb3VyY2UuCiAgICAgPj4+IHRyZWUgPSBFVC5wYXJzZShFeGNlcHRpb25GaWxlKCkpCiAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgotICAgIElPRXJyb3IKKyAgICBPU0Vycm9yCiAKICAgICAiIiIKIApAQCAtMTg1NCw2ICsxODU1LDEwMiBAQAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiAKK2NsYXNzIEVsZW1lbnRUcmVlVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9pc3R5cGUoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShFVC5QYXJzZUVycm9yLCB0eXBlKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoRVQuUU5hbWUsIHR5cGUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShFVC5FbGVtZW50VHJlZSwgdHlwZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKEVULkVsZW1lbnQsIHR5cGUpCisgICAgICAgICMgWFhYIGlzc3VlIDE0MTI4IHdpdGggQyBFbGVtZW50VHJlZQorICAgICAgICAjIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShFVC5UcmVlQnVpbGRlciwgdHlwZSkKKyAgICAgICAgIyBzZWxmLmFzc2VydElzSW5zdGFuY2UoRVQuWE1MUGFyc2VyLCB0eXBlKQorCisgICAgZGVmIHRlc3RfRWxlbWVudF9zdWJjbGFzc190cml2aWFsKHNlbGYpOgorICAgICAgICBjbGFzcyBNeUVsZW1lbnQoRVQuRWxlbWVudCk6CisgICAgICAgICAgICBwYXNzCisKKyAgICAgICAgbXllID0gTXlFbGVtZW50KCdmb28nKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UobXllLCBFVC5FbGVtZW50KQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UobXllLCBNeUVsZW1lbnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXllLnRhZywgJ2ZvbycpCisKKyAgICBkZWYgdGVzdF9FbGVtZW50X3N1YmNsYXNzX2NvbnN0cnVjdG9yKHNlbGYpOgorICAgICAgICBjbGFzcyBNeUVsZW1lbnQoRVQuRWxlbWVudCk6CisgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgdGFnLCBhdHRyaWI9e30sICoqZXh0cmEpOgorICAgICAgICAgICAgICAgIHN1cGVyKE15RWxlbWVudCwgc2VsZikuX19pbml0X18odGFnICsgJ19fJywgYXR0cmliLCAqKmV4dHJhKQorCisgICAgICAgIG15ZSA9IE15RWxlbWVudCgnZm9vJywgeydhJzogMSwgJ2InOiAyfSwgYz0zLCBkPTQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXllLnRhZywgJ2Zvb19fJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQobXllLml0ZW1zKCkpLAorICAgICAgICAgICAgWygnYScsIDEpLCAoJ2InLCAyKSwgKCdjJywgMyksICgnZCcsIDQpXSkKKworICAgIGRlZiB0ZXN0X0VsZW1lbnRfc3ViY2xhc3NfbmV3X21ldGhvZChzZWxmKToKKyAgICAgICAgY2xhc3MgTXlFbGVtZW50KEVULkVsZW1lbnQpOgorICAgICAgICAgICAgZGVmIG5ld21ldGhvZChzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi50YWcKKworICAgICAgICBteWUgPSBNeUVsZW1lbnQoJ2pvZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXllLm5ld21ldGhvZCgpLCAnam9lJykKKworCitjbGFzcyBUcmVlQnVpbGRlclRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgc2FtcGxlMSA9ICgnPCFET0NUWVBFIGh0bWwgUFVCTElDJworICAgICAgICAnICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiInCisgICAgICAgICcgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPicKKyAgICAgICAgJzxodG1sPnRleHQ8L2h0bWw+JykKKworICAgIGRlZiB0ZXN0X2R1bW15X2J1aWxkZXIoc2VsZik6CisgICAgICAgIGNsYXNzIEJhc2VEdW1teUJ1aWxkZXI6CisgICAgICAgICAgICBkZWYgY2xvc2Uoc2VsZik6CisgICAgICAgICAgICAgICAgcmV0dXJuIDQyCisKKyAgICAgICAgY2xhc3MgRHVtbXlCdWlsZGVyKEJhc2VEdW1teUJ1aWxkZXIpOgorICAgICAgICAgICAgZGF0YSA9IHN0YXJ0ID0gZW5kID0gbGFtYmRhICphOiBOb25lCisKKyAgICAgICAgcGFyc2VyID0gRVQuWE1MUGFyc2VyKHRhcmdldD1EdW1teUJ1aWxkZXIoKSkKKyAgICAgICAgcGFyc2VyLmZlZWQoc2VsZi5zYW1wbGUxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBhcnNlci5jbG9zZSgpLCA0MikKKworICAgICAgICBwYXJzZXIgPSBFVC5YTUxQYXJzZXIodGFyZ2V0PUJhc2VEdW1teUJ1aWxkZXIoKSkKKyAgICAgICAgcGFyc2VyLmZlZWQoc2VsZi5zYW1wbGUxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBhcnNlci5jbG9zZSgpLCA0MikKKworICAgICAgICBwYXJzZXIgPSBFVC5YTUxQYXJzZXIodGFyZ2V0PW9iamVjdCgpKQorICAgICAgICBwYXJzZXIuZmVlZChzZWxmLnNhbXBsZTEpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKHBhcnNlci5jbG9zZSgpKQorCisKKyAgICBAdW5pdHRlc3QuZXhwZWN0ZWRGYWlsdXJlICAgIyBYWFggaXNzdWUgMTQwMDcgd2l0aCBDIEVsZW1lbnRUcmVlCisgICAgZGVmIHRlc3RfZG9jdHlwZShzZWxmKToKKyAgICAgICAgY2xhc3MgRG9jdHlwZVBhcnNlcjoKKyAgICAgICAgICAgIF9kb2N0eXBlID0gTm9uZQorCisgICAgICAgICAgICBkZWYgZG9jdHlwZShzZWxmLCBuYW1lLCBwdWJpZCwgc3lzdGVtKToKKyAgICAgICAgICAgICAgICBzZWxmLl9kb2N0eXBlID0gKG5hbWUsIHB1YmlkLCBzeXN0ZW0pCisKKyAgICAgICAgICAgIGRlZiBjbG9zZShzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fZG9jdHlwZQorCisgICAgICAgIHBhcnNlciA9IEVULlhNTFBhcnNlcih0YXJnZXQ9RG9jdHlwZVBhcnNlcigpKQorICAgICAgICBwYXJzZXIuZmVlZChzZWxmLnNhbXBsZTEpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwYXJzZXIuY2xvc2UoKSwKKyAgICAgICAgICAgICgnaHRtbCcsICctLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTicsCisgICAgICAgICAgICAgJ2h0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQnKSkKKworCitjbGFzcyBOb0FjY2VsZXJhdG9yVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICAjIFRlc3QgdGhhdCB0aGUgQyBhY2NlbGVyYXRvciB3YXMgbm90IGltcG9ydGVkIGZvciBweUVUCisgICAgZGVmIHRlc3RfY29ycmVjdF9pbXBvcnRfcHlFVChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChweUVULkVsZW1lbnQuX19tb2R1bGVfXywgJ3htbC5ldHJlZS5FbGVtZW50VHJlZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHlFVC5TdWJFbGVtZW50Ll9fbW9kdWxlX18sICd4bWwuZXRyZWUuRWxlbWVudFRyZWUnKQorCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKwogY2xhc3MgQ2xlYW5Db250ZXh0KG9iamVjdCk6CiAgICAgIiIiUHJvdmlkZSBkZWZhdWx0IG5hbWVzcGFjZSBtYXBwaW5nIGFuZCBwYXRoIGNhY2hlLiIiIgogICAgIGNoZWNrd2FybmluZ3MgPSBOb25lCkBAIC0xODcyLDQ0ICsxOTY5LDQ0IEBACiAgICAgICAgICAgICAoIlRoaXMgbWV0aG9kIHdpbGwgYmUgcmVtb3ZlZCBpbiBmdXR1cmUgdmVyc2lvbnMuICAiCiAgICAgICAgICAgICAgIlVzZSAuKyBpbnN0ZWFkLiIsIERlcHJlY2F0aW9uV2FybmluZyksCiAgICAgICAgICAgICAoIlRoaXMgbWV0aG9kIHdpbGwgYmUgcmVtb3ZlZCBpbiBmdXR1cmUgdmVyc2lvbnMuICAiCi0gICAgICAgICAgICAgIlVzZSAuKyBpbnN0ZWFkLiIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpLAotICAgICAgICAgICAgIyBYTUxQYXJzZXIuZG9jdHlwZSgpIGlzIGRlcHJlY2F0ZWQuCi0gICAgICAgICAgICAoIlRoaXMgbWV0aG9kIG9mIFhNTFBhcnNlciBpcyBkZXByZWNhdGVkLiAgRGVmaW5lIGRvY3R5cGUuLiAiCi0gICAgICAgICAgICAgIm1ldGhvZCBvbiB0aGUgVHJlZUJ1aWxkZXIgdGFyZ2V0LiIsIERlcHJlY2F0aW9uV2FybmluZykpCisgICAgICAgICAgICAgIlVzZSAuKyBpbnN0ZWFkLiIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKQogICAgICAgICBzZWxmLmNoZWNrd2FybmluZ3MgPSBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCpkZXByZWNhdGlvbnMsIHF1aWV0PXF1aWV0KQogCiAgICAgZGVmIF9fZW50ZXJfXyhzZWxmKToKLSAgICAgICAgZnJvbSB4bWwuZXRyZWUgaW1wb3J0IEVsZW1lbnRUcmVlCi0gICAgICAgIHNlbGYuX25zbWFwID0gRWxlbWVudFRyZWUuX25hbWVzcGFjZV9tYXAKLSAgICAgICAgc2VsZi5fcGF0aF9jYWNoZSA9IEVsZW1lbnRUcmVlLkVsZW1lbnRQYXRoLl9jYWNoZQorICAgICAgICBmcm9tIHhtbC5ldHJlZSBpbXBvcnQgRWxlbWVudFBhdGgKKyAgICAgICAgc2VsZi5fbnNtYXAgPSBFVC5yZWdpc3Rlcl9uYW1lc3BhY2UuX25hbWVzcGFjZV9tYXAKICAgICAgICAgIyBDb3B5IHRoZSBkZWZhdWx0IG5hbWVzcGFjZSBtYXBwaW5nCi0gICAgICAgIEVsZW1lbnRUcmVlLl9uYW1lc3BhY2VfbWFwID0gc2VsZi5fbnNtYXAuY29weSgpCisgICAgICAgIHNlbGYuX25zbWFwX2NvcHkgPSBzZWxmLl9uc21hcC5jb3B5KCkKICAgICAgICAgIyBDb3B5IHRoZSBwYXRoIGNhY2hlIChzaG91bGQgYmUgZW1wdHkpCi0gICAgICAgIEVsZW1lbnRUcmVlLkVsZW1lbnRQYXRoLl9jYWNoZSA9IHNlbGYuX3BhdGhfY2FjaGUuY29weSgpCisgICAgICAgIHNlbGYuX3BhdGhfY2FjaGUgPSBFbGVtZW50UGF0aC5fY2FjaGUKKyAgICAgICAgRWxlbWVudFBhdGguX2NhY2hlID0gc2VsZi5fcGF0aF9jYWNoZS5jb3B5KCkKICAgICAgICAgc2VsZi5jaGVja3dhcm5pbmdzLl9fZW50ZXJfXygpCiAKICAgICBkZWYgX19leGl0X18oc2VsZiwgKmFyZ3MpOgotICAgICAgICBmcm9tIHhtbC5ldHJlZSBpbXBvcnQgRWxlbWVudFRyZWUKKyAgICAgICAgZnJvbSB4bWwuZXRyZWUgaW1wb3J0IEVsZW1lbnRQYXRoCiAgICAgICAgICMgUmVzdG9yZSBtYXBwaW5nIGFuZCBwYXRoIGNhY2hlCi0gICAgICAgIEVsZW1lbnRUcmVlLl9uYW1lc3BhY2VfbWFwID0gc2VsZi5fbnNtYXAKLSAgICAgICAgRWxlbWVudFRyZWUuRWxlbWVudFBhdGguX2NhY2hlID0gc2VsZi5fcGF0aF9jYWNoZQorICAgICAgICBzZWxmLl9uc21hcC5jbGVhcigpCisgICAgICAgIHNlbGYuX25zbWFwLnVwZGF0ZShzZWxmLl9uc21hcF9jb3B5KQorICAgICAgICBFbGVtZW50UGF0aC5fY2FjaGUgPSBzZWxmLl9wYXRoX2NhY2hlCiAgICAgICAgIHNlbGYuY2hlY2t3YXJuaW5ncy5fX2V4aXRfXygqYXJncykKIAogCi1kZWYgdGVzdF9tYWluKG1vZHVsZV9uYW1lPSd4bWwuZXRyZWUuRWxlbWVudFRyZWUnKToKK2RlZiB0ZXN0X21haW4obW9kdWxlPXB5RVQpOgogICAgIGZyb20gdGVzdCBpbXBvcnQgdGVzdF94bWxfZXRyZWUKIAotICAgIHVzZV9weV9tb2R1bGUgPSAobW9kdWxlX25hbWUgPT0gJ3htbC5ldHJlZS5FbGVtZW50VHJlZScpCi0KICAgICAjIFRoZSBzYW1lIGRvY3Rlc3RzIGFyZSB1c2VkIGZvciBib3RoIHRoZSBQeXRob24gYW5kIHRoZSBDIGltcGxlbWVudGF0aW9ucwotICAgIGFzc2VydCB0ZXN0X3htbF9ldHJlZS5FVC5fX25hbWVfXyA9PSBtb2R1bGVfbmFtZQorICAgIHRlc3RfeG1sX2V0cmVlLkVUID0gbW9kdWxlCisKKyAgICB0ZXN0X2NsYXNzZXMgPSBbRWxlbWVudFRyZWVUZXN0LCBUcmVlQnVpbGRlclRlc3RdCisgICAgaWYgbW9kdWxlIGlzIHB5RVQ6CisgICAgICAgICMgUnVuIHRoZSB0ZXN0cyBzcGVjaWZpYyB0byB0aGUgUHl0aG9uIGltcGxlbWVudGF0aW9uCisgICAgICAgIHRlc3RfY2xhc3NlcyArPSBbTm9BY2NlbGVyYXRvclRlc3RdCisKKyAgICBzdXBwb3J0LnJ1bl91bml0dGVzdCgqdGVzdF9jbGFzc2VzKQogCiAgICAgIyBYWFggdGhlIEMgbW9kdWxlIHNob3VsZCBnaXZlIHRoZSBzYW1lIHdhcm5pbmdzIGFzIHRoZSBQeXRob24gbW9kdWxlCi0gICAgd2l0aCBDbGVhbkNvbnRleHQocXVpZXQ9bm90IHVzZV9weV9tb2R1bGUpOgorICAgIHdpdGggQ2xlYW5Db250ZXh0KHF1aWV0PShtb2R1bGUgaXMgbm90IHB5RVQpKToKICAgICAgICAgc3VwcG9ydC5ydW5fZG9jdGVzdCh0ZXN0X3htbF9ldHJlZSwgdmVyYm9zaXR5PVRydWUpCiAKLSAgICAjIFRoZSBtb2R1bGUgc2hvdWxkIG5vdCBiZSBjaGFuZ2VkIGJ5IHRoZSB0ZXN0cwotICAgIGFzc2VydCB0ZXN0X3htbF9ldHJlZS5FVC5fX25hbWVfXyA9PSBtb2R1bGVfbmFtZQotCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3htbF9ldHJlZV9jLnB5IGIvTGliL3Rlc3QvdGVzdF94bWxfZXRyZWVfYy5weQppbmRleCAyZmYxMThmLi4xMDQxNmQyIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3htbF9ldHJlZV9jLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfeG1sX2V0cmVlX2MucHkKQEAgLTEsMTAgKzEsMTEgQEAKICMgeG1sLmV0cmVlIHRlc3QgZm9yIGNFbGVtZW50VHJlZQogCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBiaWdtZW10ZXN0LCBfMkcKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBpbXBvcnRfZnJlc2hfbW9kdWxlCiBpbXBvcnQgdW5pdHRlc3QKIAotY0VUID0gc3VwcG9ydC5pbXBvcnRfbW9kdWxlKCd4bWwuZXRyZWUuY0VsZW1lbnRUcmVlJykKK2NFVCA9IGltcG9ydF9mcmVzaF9tb2R1bGUoJ3htbC5ldHJlZS5FbGVtZW50VHJlZScsIGZyZXNoPVsnX2VsZW1lbnR0cmVlJ10pCitjRVRfYWxpYXMgPSBpbXBvcnRfZnJlc2hfbW9kdWxlKCd4bWwuZXRyZWUuY0VsZW1lbnRUcmVlJywgZnJlc2g9WydfZWxlbWVudHRyZWUnLCAneG1sLmV0cmVlJ10pCiAKIAogIyBjRWxlbWVudFRyZWUgc3BlY2lmaWMgdGVzdHMKQEAgLTEzLDEwICsxNCw5IEBACiAgICAgciIiIgogICAgIEltcG9ydCBzYW5pdHkuCiAKLSAgICA+Pj4gZnJvbSB4bWwuZXRyZWUgaW1wb3J0IGNFbGVtZW50VHJlZQotCiAgICAgSXNzdWUgIzY2OTcuCiAKKyAgICA+Pj4gY0VsZW1lbnRUcmVlID0gY0VUCiAgICAgPj4+IGUgPSBjRWxlbWVudFRyZWUuRWxlbWVudCgnYScpCiAgICAgPj4+IGdldGF0dHIoZSwgJ1x1RDgwMCcpICAgICAgICAgICAjIGRvY3Rlc3Q6ICtFTExJUFNJUwogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKQEAgLTQ2LDI4ICs0NiwzNyBAQAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgZGF0YSA9IE5vbmUKIAorQHVuaXR0ZXN0LnNraXBVbmxlc3MoY0VULCAncmVxdWlyZXMgX2VsZW1lbnR0cmVlJykKK2NsYXNzIFRlc3RBbGlhc1dvcmtpbmcodW5pdHRlc3QuVGVzdENhc2UpOgorICAgICMgVGVzdCB0aGF0IHRoZSBjRVQgYWxpYXMgbW9kdWxlIGlzIGFsaXZlCisgICAgZGVmIHRlc3RfYWxpYXNfd29ya2luZyhzZWxmKToKKyAgICAgICAgZSA9IGNFVF9hbGlhcy5FbGVtZW50KCdmb28nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUudGFnLCAnZm9vJykKKworQHVuaXR0ZXN0LnNraXBVbmxlc3MoY0VULCAncmVxdWlyZXMgX2VsZW1lbnR0cmVlJykKK2NsYXNzIFRlc3RBY2NlbGVyYXRvckltcG9ydGVkKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAjIFRlc3QgdGhhdCB0aGUgQyBhY2NlbGVyYXRvciB3YXMgaW1wb3J0ZWQsIGFzIGV4cGVjdGVkCisgICAgZGVmIHRlc3RfY29ycmVjdF9pbXBvcnRfY0VUKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNFVC5TdWJFbGVtZW50Ll9fbW9kdWxlX18sICdfZWxlbWVudHRyZWUnKQorCisgICAgZGVmIHRlc3RfY29ycmVjdF9pbXBvcnRfY0VUX2FsaWFzKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNFVF9hbGlhcy5TdWJFbGVtZW50Ll9fbW9kdWxlX18sICdfZWxlbWVudHRyZWUnKQorCiAKIGRlZiB0ZXN0X21haW4oKToKICAgICBmcm9tIHRlc3QgaW1wb3J0IHRlc3RfeG1sX2V0cmVlLCB0ZXN0X3htbF9ldHJlZV9jCiAKICAgICAjIFJ1biB0aGUgdGVzdHMgc3BlY2lmaWMgdG8gdGhlIEMgaW1wbGVtZW50YXRpb24KICAgICBzdXBwb3J0LnJ1bl9kb2N0ZXN0KHRlc3RfeG1sX2V0cmVlX2MsIHZlcmJvc2l0eT1UcnVlKQorICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KAorICAgICAgICBNaXNjVGVzdHMsCisgICAgICAgIFRlc3RBbGlhc1dvcmtpbmcsCisgICAgICAgIFRlc3RBY2NlbGVyYXRvckltcG9ydGVkCisgICAgICAgICkKIAotICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KE1pc2NUZXN0cykKKyAgICAjIFJ1biB0aGUgc2FtZSB0ZXN0IHN1aXRlIGFzIHRoZSBQeXRob24gbW9kdWxlCisgICAgdGVzdF94bWxfZXRyZWUudGVzdF9tYWluKG1vZHVsZT1jRVQpCiAKLSAgICAjIEFzc2lnbiB0aGUgQyBpbXBsZW1lbnRhdGlvbiBiZWZvcmUgcnVubmluZyB0aGUgZG9jdGVzdHMKLSAgICAjIFBhdGNoIHRoZSBfX25hbWVfXywgdG8gcHJldmVudCBjb25mdXNpb24gd2l0aCB0aGUgcHVyZSBQeXRob24gdGVzdAotICAgIHB5RVQgPSB0ZXN0X3htbF9ldHJlZS5FVAotICAgIHB5X19uYW1lX18gPSB0ZXN0X3htbF9ldHJlZS5fX25hbWVfXwotICAgIHRlc3RfeG1sX2V0cmVlLkVUID0gY0VUCi0gICAgaWYgX19uYW1lX18gIT0gJ19fbWFpbl9fJzoKLSAgICAgICAgdGVzdF94bWxfZXRyZWUuX19uYW1lX18gPSBfX25hbWVfXwotICAgIHRyeToKLSAgICAgICAgIyBSdW4gdGhlIHNhbWUgdGVzdCBzdWl0ZSBhcyB4bWwuZXRyZWUuRWxlbWVudFRyZWUKLSAgICAgICAgdGVzdF94bWxfZXRyZWUudGVzdF9tYWluKG1vZHVsZV9uYW1lPSd4bWwuZXRyZWUuY0VsZW1lbnRUcmVlJykKLSAgICBmaW5hbGx5OgotICAgICAgICB0ZXN0X3htbF9ldHJlZS5FVCA9IHB5RVQKLSAgICAgICAgdGVzdF94bWxfZXRyZWUuX19uYW1lX18gPSBweV9fbmFtZV9fCiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CiAgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfeG1scnBjLnB5IGIvTGliL3Rlc3QvdGVzdF94bWxycGMucHkKaW5kZXggMzgxNDE5MS4uYWZkOGM1MSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF94bWxycGMucHkKKysrIGIvTGliL3Rlc3QvdGVzdF94bWxycGMucHkKQEAgLTI0LDYgKzI0LDggQEAKICAgICAgICAgICAnYXNob3J0bG9uZyc6IDIsCiAgICAgICAgICAgJ2Fub3RoZXJsaXN0JzogWycuenl4LjQxJ10sCiAgICAgICAgICAgJ2FiYXNlNjQnOiB4bWxycGNsaWIuQmluYXJ5KGIibXkgZG9nIGhhcyBmbGVhcyIpLAorICAgICAgICAgICdiNjRieXRlcyc6IGIibXkgZG9nIGhhcyBmbGVhcyIsCisgICAgICAgICAgJ2I2NGJ5dGVhcnJheSc6IGJ5dGVhcnJheShiIm15IGRvZyBoYXMgZmxlYXMiKSwKICAgICAgICAgICAnYm9vbGVhbic6IEZhbHNlLAogICAgICAgICAgICd1bmljb2RlJzogJ1x1NDAwMFx1NjAwMFx1ODAwMCcsCiAgICAgICAgICAgJ3VrZXlcdTQwMDAnOiAncmVndWxhciB2YWx1ZScsCkBAIC00NCwyNyArNDYsNTQgQEAKICAgICBkZWYgdGVzdF9kdW1wX2JhcmVfZGF0ZXRpbWUoc2VsZik6CiAgICAgICAgICMgVGhpcyBjaGVja3MgdGhhdCBhbiB1bndyYXBwZWQgZGF0ZXRpbWUuZGF0ZSBvYmplY3QgY2FuIGJlIGhhbmRsZWQKICAgICAgICAgIyBieSB0aGUgbWFyc2hhbGxpbmcgY29kZS4gIFRoaXMgY2FuJ3QgYmUgZG9uZSB2aWEgdGVzdF9kdW1wX2xvYWQoKQotICAgICAgICAjIHNpbmNlIHdpdGggdXNlX2RhdGV0aW1lIHNldCB0byAxIHRoZSB1bm1hcnNoYWxsZXIgd291bGQgY3JlYXRlCisgICAgICAgICMgc2luY2Ugd2l0aCB1c2VfYnVpbHRpbl90eXBlcyBzZXQgdG8gMSB0aGUgdW5tYXJzaGFsbGVyIHdvdWxkIGNyZWF0ZQogICAgICAgICAjIGRhdGV0aW1lIG9iamVjdHMgZm9yIHRoZSAnZGF0ZXRpbWVbMTIzXScga2V5cyBhcyB3ZWxsCiAgICAgICAgIGR0ID0gZGF0ZXRpbWUuZGF0ZXRpbWUoMjAwNSwgMiwgMTAsIDExLCA0MSwgMjMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHQsIHhtbHJwY2xpYi5EYXRlVGltZSgnMjAwNTAyMTBUMTE6NDE6MjMnKSkKICAgICAgICAgcyA9IHhtbHJwY2xpYi5kdW1wcygoZHQsKSkKLSAgICAgICAgKG5ld2R0LCksIG0gPSB4bWxycGNsaWIubG9hZHMocywgdXNlX2RhdGV0aW1lPTEpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3ZHQsIGR0KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0sIE5vbmUpCiAKLSAgICAgICAgKG5ld2R0LCksIG0gPSB4bWxycGNsaWIubG9hZHMocywgdXNlX2RhdGV0aW1lPTApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3ZHQsIHhtbHJwY2xpYi5EYXRlVGltZSgnMjAwNTAyMTBUMTE6NDE6MjMnKSkKKyAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9idWlsdGluX3R5cGVzPVRydWUpCisgICAgICAgIChuZXdkdCwpID0gcmVzdWx0CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3ZHQsIGR0KQorICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUobmV3ZHQpLCBkYXRldGltZS5kYXRldGltZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUobSkKKworICAgICAgICByZXN1bHQsIG0gPSB4bWxycGNsaWIubG9hZHMocywgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpCisgICAgICAgIChuZXdkdCwpID0gcmVzdWx0CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3ZHQsIGR0KQorICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUobmV3ZHQpLCB4bWxycGNsaWIuRGF0ZVRpbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKG0pCisKKyAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9kYXRldGltZT1UcnVlKQorICAgICAgICAobmV3ZHQsKSA9IHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCBkdCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKG5ld2R0KSwgZGF0ZXRpbWUuZGF0ZXRpbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKG0pCisKKyAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9kYXRldGltZT1GYWxzZSkKKyAgICAgICAgKG5ld2R0LCkgPSByZXN1bHQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZXdkdCwgZHQpCisgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShuZXdkdCksIHhtbHJwY2xpYi5EYXRlVGltZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUobSkKKwogCiAgICAgZGVmIHRlc3RfZGF0ZXRpbWVfYmVmb3JlXzE5MDAoc2VsZik6CiAgICAgICAgICMgc2FtZSBhcyBiZWZvcmUgYnV0IHdpdGggYSBkYXRlIGJlZm9yZSAxOTAwCiAgICAgICAgIGR0ID0gZGF0ZXRpbWUuZGF0ZXRpbWUoMSwgIDIsIDEwLCAxMSwgNDEsIDIzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGR0LCB4bWxycGNsaWIuRGF0ZVRpbWUoJzAwMDEwMjEwVDExOjQxOjIzJykpCiAgICAgICAgIHMgPSB4bWxycGNsaWIuZHVtcHMoKGR0LCkpCi0gICAgICAgIChuZXdkdCwpLCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9kYXRldGltZT0xKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCBkdCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCBOb25lKQogCi0gICAgICAgIChuZXdkdCwpLCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9kYXRldGltZT0wKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCB4bWxycGNsaWIuRGF0ZVRpbWUoJzAwMDEwMjEwVDExOjQxOjIzJykpCisgICAgICAgIHJlc3VsdCwgbSA9IHhtbHJwY2xpYi5sb2FkcyhzLCB1c2VfYnVpbHRpbl90eXBlcz1UcnVlKQorICAgICAgICAobmV3ZHQsKSA9IHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCBkdCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKG5ld2R0KSwgZGF0ZXRpbWUuZGF0ZXRpbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKG0pCisKKyAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9idWlsdGluX3R5cGVzPUZhbHNlKQorICAgICAgICAobmV3ZHQsKSA9IHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCBkdCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKG5ld2R0KSwgeG1scnBjbGliLkRhdGVUaW1lKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShtKQogCiAgICAgZGVmIHRlc3RfYnVnXzExNjQ5MTIgKHNlbGYpOgogICAgICAgICBkID0geG1scnBjbGliLkRhdGVUaW1lKCkKQEAgLTEzMyw2ICsxNjIsMjUgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1scnBjbGliLmxvYWRzKHN0cmcpWzBdWzBdKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHhtbHJwY2xpYi5kdW1wcywgKGFyZzEsKSkKIAorICAgIGRlZiB0ZXN0X2R1bXBfYnl0ZXMoc2VsZik6CisgICAgICAgIHNhbXBsZSA9IGIibXkgZG9nIGhhcyBmbGVhcyIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzYW1wbGUsIHhtbHJwY2xpYi5CaW5hcnkoc2FtcGxlKSkKKyAgICAgICAgZm9yIHR5cGVfIGluIGJ5dGVzLCBieXRlYXJyYXksIHhtbHJwY2xpYi5CaW5hcnk6CisgICAgICAgICAgICB2YWx1ZSA9IHR5cGVfKHNhbXBsZSkKKyAgICAgICAgICAgIHMgPSB4bWxycGNsaWIuZHVtcHMoKHZhbHVlLCkpCisKKyAgICAgICAgICAgIHJlc3VsdCwgbSA9IHhtbHJwY2xpYi5sb2FkcyhzLCB1c2VfYnVpbHRpbl90eXBlcz1UcnVlKQorICAgICAgICAgICAgKG5ld3ZhbHVlLCkgPSByZXN1bHQKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3dmFsdWUsIHNhbXBsZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShuZXd2YWx1ZSksIGJ5dGVzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUobSkKKworICAgICAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9idWlsdGluX3R5cGVzPUZhbHNlKQorICAgICAgICAgICAgKG5ld3ZhbHVlLCkgPSByZXN1bHQKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3dmFsdWUsIHNhbXBsZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShuZXd2YWx1ZSksIHhtbHJwY2xpYi5CaW5hcnkpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzTm9uZShtKQorCiAgICAgZGVmIHRlc3RfZ2V0X2hvc3RfaW5mbyhzZWxmKToKICAgICAgICAgIyBzZWUgYnVnICMzNjEzLCB0aGlzIHJhaXNlZCBhIFR5cGVFcnJvcgogICAgICAgICB0cmFuc3AgPSB4bWxycGMuY2xpZW50LlRyYW5zcG9ydCgpCkBAIC0xNDAsOSArMTg4LDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdob3N0LnRsZCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKCdBdXRob3JpemF0aW9uJywgJ0Jhc2ljIGRYTmxjZz09JyldLCB7fSkpCiAKLSAgICBkZWYgdGVzdF9kdW1wX2J5dGVzKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHhtbHJwY2xpYi5kdW1wcywgKGIibXkgZG9nIGhhcyBmbGVhcyIsKSkKLQogICAgIGRlZiB0ZXN0X3NzbF9wcmVzZW5jZShzZWxmKToKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgaW1wb3J0IHNzbApAQCAtOTgwLDEwICsxMDI1LDQ0IEBACiAgICAgICAgICAgICBsZW4oY29udGVudCkpCiAKIAorY2xhc3MgVXNlQnVpbHRpblR5cGVzVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfdXNlX2J1aWx0aW5fdHlwZXMoc2VsZik6CisgICAgICAgICMgU2ltcGxlWE1MUlBDRGlzcGF0Y2hlci5fX2luaXRfXyBhY2NlcHRzIHVzZV9idWlsdGluX3R5cGVzLCB3aGljaAorICAgICAgICAjIG1ha2VzIGFsbCBkaXNwYXRjaCBvZiBiaW5hcnkgZGF0YSBhcyBieXRlcyBpbnN0YW5jZXMsIGFuZCBhbGwKKyAgICAgICAgIyBkaXNwYXRjaCBvZiBkYXRldGltZSBhcmd1bWVudCBhcyBkYXRldGltZS5kYXRldGltZSBpbnN0YW5jZXMuCisgICAgICAgIHNlbGYubG9nID0gW10KKyAgICAgICAgZXhwZWN0ZWRfYnl0ZXMgPSBiIm15IGRvZyBoYXMgZmxlYXMiCisgICAgICAgIGV4cGVjdGVkX2RhdGUgPSBkYXRldGltZS5kYXRldGltZSgyMDA4LCA1LCAyNiwgMTgsIDI1LCAxMikKKyAgICAgICAgbWFyc2hhbGVkID0geG1scnBjbGliLmR1bXBzKChleHBlY3RlZF9ieXRlcywgZXhwZWN0ZWRfZGF0ZSksICdmb29iYXInKQorICAgICAgICBkZWYgZm9vYmFyKCphcmdzKToKKyAgICAgICAgICAgIHNlbGYubG9nLmV4dGVuZChhcmdzKQorICAgICAgICBoYW5kbGVyID0geG1scnBjLnNlcnZlci5TaW1wbGVYTUxSUENEaXNwYXRjaGVyKAorICAgICAgICAgICAgYWxsb3dfbm9uZT1UcnVlLCBlbmNvZGluZz1Ob25lLCB1c2VfYnVpbHRpbl90eXBlcz1UcnVlKQorICAgICAgICBoYW5kbGVyLnJlZ2lzdGVyX2Z1bmN0aW9uKGZvb2JhcikKKyAgICAgICAgaGFuZGxlci5fbWFyc2hhbGVkX2Rpc3BhdGNoKG1hcnNoYWxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5sb2cpLCAyKQorICAgICAgICBteWJ5dGVzLCBteWRhdGUgPSBzZWxmLmxvZworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubG9nLCBbZXhwZWN0ZWRfYnl0ZXMsIGV4cGVjdGVkX2RhdGVdKQorICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUobXlkYXRlKSwgZGF0ZXRpbWUuZGF0ZXRpbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShteWJ5dGVzKSwgYnl0ZXMpCisKKyAgICBkZWYgdGVzdF9jZ2loYW5kbGVyX2hhc191c2VfYnVpbHRpbl90eXBlc19mbGFnKHNlbGYpOgorICAgICAgICBoYW5kbGVyID0geG1scnBjLnNlcnZlci5DR0lYTUxSUENSZXF1ZXN0SGFuZGxlcih1c2VfYnVpbHRpbl90eXBlcz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFuZGxlci51c2VfYnVpbHRpbl90eXBlcykKKworICAgIGRlZiB0ZXN0X3htbHJwY3NlcnZlcl9oYXNfdXNlX2J1aWx0aW5fdHlwZXNfZmxhZyhzZWxmKToKKyAgICAgICAgc2VydmVyID0geG1scnBjLnNlcnZlci5TaW1wbGVYTUxSUENTZXJ2ZXIoKCJsb2NhbGhvc3QiLCAwKSwKKyAgICAgICAgICAgIHVzZV9idWlsdGluX3R5cGVzPVRydWUpCisgICAgICAgIHNlcnZlci5zZXJ2ZXJfY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VydmVyLnVzZV9idWlsdGluX3R5cGVzKQorCisKIEBzdXBwb3J0LnJlYXBfdGhyZWFkcwogZGVmIHRlc3RfbWFpbigpOgogICAgIHhtbHJwY190ZXN0cyA9IFtYTUxSUENUZXN0Q2FzZSwgSGVscGVyVGVzdENhc2UsIERhdGVUaW1lVGVzdENhc2UsCiAgICAgICAgICBCaW5hcnlUZXN0Q2FzZSwgRmF1bHRUZXN0Q2FzZV0KKyAgICB4bWxycGNfdGVzdHMuYXBwZW5kKFVzZUJ1aWx0aW5UeXBlc1Rlc3RDYXNlKQogICAgIHhtbHJwY190ZXN0cy5hcHBlbmQoU2ltcGxlU2VydmVyVGVzdENhc2UpCiAgICAgeG1scnBjX3Rlc3RzLmFwcGVuZChLZWVwYWxpdmVTZXJ2ZXJUZXN0Q2FzZTEpCiAgICAgeG1scnBjX3Rlc3RzLmFwcGVuZChLZWVwYWxpdmVTZXJ2ZXJUZXN0Q2FzZTIpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3htbHJwY19uZXQucHkgYi9MaWIvdGVzdC90ZXN0X3htbHJwY19uZXQucHkKaW5kZXggOWVkOGY4ZC4uOWJhODliMiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF94bWxycGNfbmV0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfeG1scnBjX25ldC5weQpAQCAtMSw2ICsxLDYgQEAKICMhL3Vzci9iaW4vZW52IHB5dGhvbjMKIAotaW1wb3J0IGNvbGxlY3Rpb25zCitpbXBvcnQgY29sbGVjdGlvbnMuYWJjCiBpbXBvcnQgZXJybm8KIGltcG9ydCBzb2NrZXQKIGltcG9ydCBzeXMKQEAgLTQ5LDcgKzQ5LDcgQEAKIAogICAgICAgICAjIFBlcmZvcm0gYSBtaW5pbWFsIHNhbml0eSBjaGVjayBvbiB0aGUgcmVzdWx0LCBqdXN0IHRvIGJlIHN1cmUKICAgICAgICAgIyB0aGUgcmVxdWVzdCBtZWFucyB3aGF0IHdlIHRoaW5rIGl0IG1lYW5zLgotICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYnVpbGRlcnMsIGNvbGxlY3Rpb25zLlNlcXVlbmNlKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYnVpbGRlcnMsIGNvbGxlY3Rpb25zLmFiYy5TZXF1ZW5jZSkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFt4IGZvciB4IGluIGJ1aWxkZXJzIGlmICIzLngiIGluIHhdLCBidWlsZGVycykKIAogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3ppcGZpbGUucHkgYi9MaWIvdGVzdC90ZXN0X3ppcGZpbGUucHkKaW5kZXggYmIwZDc5YS4uMGIzYTY5NCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF96aXBmaWxlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfemlwZmlsZS5weQpAQCAtMSw5ICsxLDMgQEAKLSMgV2UgY2FuIHRlc3QgcGFydCBvZiB0aGUgbW9kdWxlIHdpdGhvdXQgemxpYi4KLXRyeToKLSAgICBpbXBvcnQgemxpYgotZXhjZXB0IEltcG9ydEVycm9yOgotICAgIHpsaWIgPSBOb25lCi0KIGltcG9ydCBpbwogaW1wb3J0IG9zCiBpbXBvcnQgc3lzCkBAIC0xOSw3ICsxMyw3IEBACiBmcm9tIHJhbmRvbSBpbXBvcnQgcmFuZGludCwgcmFuZG9tCiBmcm9tIHVuaXR0ZXN0IGltcG9ydCBza2lwVW5sZXNzCiAKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBURVNURk4sIHJ1bl91bml0dGVzdCwgZmluZGZpbGUsIHVubGluaworZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTiwgcnVuX3VuaXR0ZXN0LCBmaW5kZmlsZSwgdW5saW5rLCByZXF1aXJlc196bGliCiAKIFRFU1RGTjIgPSBURVNURk4gKyAiMiIKIFRFU1RGTkRJUiA9IFRFU1RGTiArICJkIgpAQCAtMjY5LDQ0ICsyNjMsNDQgQEAKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX2l0ZXJsaW5lc190ZXN0KGYsIHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi56aXBfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3Rfb3Blbl9kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX29wZW5fdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JhbmRvbV9vcGVuX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi56aXBfcmFuZG9tX29wZW5fdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRsaW5lX3JlYWRfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgICMgSXNzdWUgIzc2MTA6IGNhbGxzIHRvIHJlYWRsaW5lKCkgaW50ZXJsZWF2ZWQgd2l0aCBjYWxscyB0byByZWFkKCkuCiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnppcF9yZWFkbGluZV9yZWFkX3Rlc3QoZiwgemlwZmlsZS5aSVBfREVGTEFURUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9yZWFkbGluZV9kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX3JlYWRsaW5lX3Rlc3QoZiwgemlwZmlsZS5aSVBfREVGTEFURUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9yZWFkbGluZXNfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnppcF9yZWFkbGluZXNfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X2l0ZXJsaW5lc19kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX2l0ZXJsaW5lc190ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfbG93X2NvbXByZXNzaW9uKHNlbGYpOgogICAgICAgICAiIiJDaGVjayBmb3IgY2FzZXMgd2hlcmUgY29tcHJlc3NlZCBkYXRhIGlzIGxhcmdlciB0aGFuIG9yaWdpbmFsLiIiIgogICAgICAgICAjIENyZWF0ZSB0aGUgWklQIGFyY2hpdmUKQEAgLTM3Nyw3ICszNzEsNyBAQAogICAgICAgICAgICAgd2l0aCBvcGVuKFRFU1RGTiwgInJiIikgYXMgZjoKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHppcGZwLnJlYWQoVEVTVEZOKSwgZi5yZWFkKCkpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9wZXJfZmlsZV9jb21wcmVzc2lvbihzZWxmKToKICAgICAgICAgIiIiQ2hlY2sgdGhhdCBmaWxlcyB3aXRoaW4gYSBaaXAgYXJjaGl2ZSBjYW4gaGF2ZSBkaWZmZXJlbnQKICAgICAgICAgY29tcHJlc3Npb24gb3B0aW9ucy4iIiIKQEAgLTQ0NiwxOSArNDQwLDE4IEBACiAgICAgICAgICMgcmVtb3ZlIHRoZSB0ZXN0IGZpbGUgc3ViZGlyZWN0b3JpZXMKICAgICAgICAgc2h1dGlsLnJtdHJlZShvcy5wYXRoLmpvaW4ob3MuZ2V0Y3dkKCksICd6aXB0ZXN0MmRpcicpKQogCi0gICAgZGVmIHRlc3Rfd3JpdGVzdHJfY29tcHJlc3Npb24oc2VsZik6CisgICAgZGVmIHRlc3Rfd3JpdGVzdHJfY29tcHJlc3Npb25fc3RvcmVkKHNlbGYpOgogICAgICAgICB6aXBmcCA9IHppcGZpbGUuWmlwRmlsZShURVNURk4yLCAidyIpCiAgICAgICAgIHppcGZwLndyaXRlc3RyKCJhLnR4dCIsICJoZWxsbyB3b3JsZCIsIGNvbXByZXNzX3R5cGU9emlwZmlsZS5aSVBfU1RPUkVEKQotICAgICAgICBpZiB6bGliOgotICAgICAgICAgICAgemlwZnAud3JpdGVzdHIoImIudHh0IiwgImhlbGxvIHdvcmxkIiwgY29tcHJlc3NfdHlwZT16aXBmaWxlLlpJUF9ERUZMQVRFRCkKLQogICAgICAgICBpbmZvID0gemlwZnAuZ2V0aW5mbygnYS50eHQnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGluZm8uY29tcHJlc3NfdHlwZSwgemlwZmlsZS5aSVBfU1RPUkVEKQogCi0gICAgICAgIGlmIHpsaWI6Ci0gICAgICAgICAgICBpbmZvID0gemlwZnAuZ2V0aW5mbygnYi50eHQnKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbmZvLmNvbXByZXNzX3R5cGUsIHppcGZpbGUuWklQX0RFRkxBVEVEKQotCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF93cml0ZXN0cl9jb21wcmVzc2lvbl9kZWZsYXRlZChzZWxmKToKKyAgICAgICAgemlwZnAgPSB6aXBmaWxlLlppcEZpbGUoVEVTVEZOMiwgInciKQorICAgICAgICB6aXBmcC53cml0ZXN0cigiYi50eHQiLCAiaGVsbG8gd29ybGQiLCBjb21wcmVzc190eXBlPXppcGZpbGUuWklQX0RFRkxBVEVEKQorICAgICAgICBpbmZvID0gemlwZnAuZ2V0aW5mbygnYi50eHQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGluZm8uY29tcHJlc3NfdHlwZSwgemlwZmlsZS5aSVBfREVGTEFURUQpCiAKICAgICBkZWYgemlwX3Rlc3Rfd3JpdGVzdHJfcGVybWlzc2lvbnMoc2VsZiwgZiwgY29tcHJlc3Npb24pOgogICAgICAgICAjIE1ha2Ugc3VyZSB0aGF0IHdyaXRlc3RyIGNyZWF0ZXMgZmlsZXMgd2l0aCBtb2RlIDA2MDAsCkBAIC01MTQsNyArNTA3LDEyIEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCB6aXBmcC53cml0ZSwgVEVTVEZOKQogCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisKKworCisKKworICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfdW5pY29kZV9maWxlbmFtZXMoc2VsZik6CiAgICAgICAgICMgYnVnICMxMDgwMQogICAgICAgICBmbmFtZSA9IGZpbmRmaWxlKCd6aXBfY3A0MzdfaGVhZGVyLnppcCcpCkBAIC02MjMsNyArNjIxLDcgQEAKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX3Rlc3QoZiwgemlwZmlsZS5aSVBfU1RPUkVEKQogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnppcF90ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQpAQCAtOTgzLDcgKzk4MSw3IEBACiAgICAgZGVmIHRlc3RfdGVzdHppcF93aXRoX2JhZF9jcmNfc3RvcmVkKHNlbGYpOgogICAgICAgICBzZWxmLmNoZWNrX3Rlc3R6aXBfd2l0aF9iYWRfY3JjKHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3Rlc3R6aXBfd2l0aF9iYWRfY3JjX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBzZWxmLmNoZWNrX3Rlc3R6aXBfd2l0aF9iYWRfY3JjKHppcGZpbGUuWklQX0RFRkxBVEVEKQogCkBAIC0xMDExLDcgKzEwMDksNyBAQAogICAgIGRlZiB0ZXN0X3JlYWRfd2l0aF9iYWRfY3JjX3N0b3JlZChzZWxmKToKICAgICAgICAgc2VsZi5jaGVja19yZWFkX3dpdGhfYmFkX2NyYyh6aXBmaWxlLlpJUF9TVE9SRUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9yZWFkX3dpdGhfYmFkX2NyY19kZWZsYXRlZChzZWxmKToKICAgICAgICAgc2VsZi5jaGVja19yZWFkX3dpdGhfYmFkX2NyYyh6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIApAQCAtMTAzMSw3ICsxMDI5LDcgQEAKICAgICBkZWYgdGVzdF9yZWFkX3JldHVybl9zaXplX3N0b3JlZChzZWxmKToKICAgICAgICAgc2VsZi5jaGVja19yZWFkX3JldHVybl9zaXplKHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRfcmV0dXJuX3NpemVfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIHNlbGYuY2hlY2tfcmVhZF9yZXR1cm5fc2l6ZSh6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIApAQCAtMTEyMSw3ICsxMTE5LDcgQEAKICAgICAgICAgc2VsZi56aXAyLnNldHBhc3N3b3JkKGIicGVybCIpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvciwgc2VsZi56aXAyLnJlYWQsICJ6ZXJvIikKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X2dvb2RfcGFzc3dvcmQoc2VsZik6CiAgICAgICAgIHNlbGYuemlwLnNldHBhc3N3b3JkKGIicHl0aG9uIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnppcC5yZWFkKCJ0ZXN0LnR4dCIpLCBzZWxmLnBsYWluKQpAQCAtMTE3MSw3ICsxMTY5LDcgQEAKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX3Rlc3QoZiwgemlwZmlsZS5aSVBfU1RPUkVEKQogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnppcF90ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQpAQCAtMTIxMSw3ICsxMjA5LDcgQEAKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX29wZW5fdGVzdChmLCB6aXBmaWxlLlpJUF9TVE9SRUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9vcGVuX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi56aXBfb3Blbl90ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQpAQCAtMTIzOSwxMyArMTIzNywxMyBAQAogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi56aXBfcmFuZG9tX29wZW5fdGVzdChmLCB6aXBmaWxlLlpJUF9TVE9SRUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9yYW5kb21fb3Blbl9kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX3JhbmRvbV9vcGVuX3Rlc3QoZiwgemlwZmlsZS5aSVBfREVGTEFURUQpCiAKIAotQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorQHJlcXVpcmVzX3psaWIKIGNsYXNzIFRlc3RzV2l0aE11bHRpcGxlT3BlbnModW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgIyBDcmVhdGUgdGhlIFpJUCBhcmNoaXZlCkBAIC0xNDM3LDI4ICsxNDM1LDI4IEBACiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLml0ZXJsaW5lc190ZXN0KGYsIHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnJlYWRfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRsaW5lX3JlYWRfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgICMgSXNzdWUgIzc2MTA6IGNhbGxzIHRvIHJlYWRsaW5lKCkgaW50ZXJsZWF2ZWQgd2l0aCBjYWxscyB0byByZWFkKCkuCiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnJlYWRsaW5lX3JlYWRfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRsaW5lX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi5yZWFkbGluZV90ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfcmVhZGxpbmVzX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi5yZWFkbGluZXNfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X2l0ZXJsaW5lc19kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuaXRlcmxpbmVzX3Rlc3QoZiwgemlwZmlsZS5aSVBfREVGTEFURUQpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3ppcGZpbGU2NC5weSBiL0xpYi90ZXN0L3Rlc3RfemlwZmlsZTY0LnB5CmluZGV4IDBlN2Q3M2YuLmE4ZmI3YWIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfemlwZmlsZTY0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfemlwZmlsZTY0LnB5CkBAIC0xMSwxMiArMTEsNiBAQAogICAgICAgICAndGVzdCByZXF1aXJlcyBsb2FkcyBvZiBkaXNrLXNwYWNlIGJ5dGVzIGFuZCBhIGxvbmcgdGltZSB0byBydW4nCiAgICAgKQogCi0jIFdlIGNhbiB0ZXN0IHBhcnQgb2YgdGhlIG1vZHVsZSB3aXRob3V0IHpsaWIuCi10cnk6Ci0gICAgaW1wb3J0IHpsaWIKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICB6bGliID0gTm9uZQotCiBpbXBvcnQgemlwZmlsZSwgb3MsIHVuaXR0ZXN0CiBpbXBvcnQgdGltZQogaW1wb3J0IHN5cwpAQCAtMjQsNyArMTgsNyBAQAogZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KIGZyb20gdGVtcGZpbGUgaW1wb3J0IFRlbXBvcmFyeUZpbGUKIAotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTiwgcnVuX3VuaXR0ZXN0Citmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVEVTVEZOLCBydW5fdW5pdHRlc3QsIHJlcXVpcmVzX3psaWIKIAogVEVTVEZOMiA9IFRFU1RGTiArICIyIgogCkBAIC04MSwxMiArNzUsMTIgQEAKICAgICAgICAgZm9yIGYgaW4gVGVtcG9yYXJ5RmlsZSgpLCBURVNURk4yOgogICAgICAgICAgICAgc2VsZi56aXBUZXN0KGYsIHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIGlmIHpsaWI6Ci0gICAgICAgIGRlZiB0ZXN0RGVmbGF0ZWQoc2VsZik6Ci0gICAgICAgICAgICAjIFRyeSB0aGUgdGVtcCBmaWxlIGZpcnN0LiAgSWYgd2UgZG8gVEVTVEZOMiBmaXJzdCwgdGhlbiBpdCBob2dzCi0gICAgICAgICAgICAjIGdpZ2FieXRlcyBvZiBkaXNrIHNwYWNlIGZvciB0aGUgZHVyYXRpb24gb2YgdGhlIHRlc3QuCi0gICAgICAgICAgICBmb3IgZiBpbiBUZW1wb3JhcnlGaWxlKCksIFRFU1RGTjI6Ci0gICAgICAgICAgICAgICAgc2VsZi56aXBUZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQorICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3REZWZsYXRlZChzZWxmKToKKyAgICAgICAgIyBUcnkgdGhlIHRlbXAgZmlsZSBmaXJzdC4gIElmIHdlIGRvIFRFU1RGTjIgZmlyc3QsIHRoZW4gaXQgaG9ncworICAgICAgICAjIGdpZ2FieXRlcyBvZiBkaXNrIHNwYWNlIGZvciB0aGUgZHVyYXRpb24gb2YgdGhlIHRlc3QuCisgICAgICAgIGZvciBmIGluIFRlbXBvcmFyeUZpbGUoKSwgVEVTVEZOMjoKKyAgICAgICAgICAgIHNlbGYuemlwVGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKICAgICAgICAgZm9yIGZuYW1lIGluIFRFU1RGTiwgVEVTVEZOMjoKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfemlwaW1wb3J0LnB5IGIvTGliL3Rlc3QvdGVzdF96aXBpbXBvcnQucHkKaW5kZXggZGY1ZmY5ZC4uMzU4OTEwYiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF96aXBpbXBvcnQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF96aXBpbXBvcnQucHkKQEAgLTksMTIgKzksNiBAQAogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiBmcm9tIHRlc3QudGVzdF9pbXBvcnRob29rcyBpbXBvcnQgSW1wb3J0SG9va3NCYXNlVGVzdENhc2UsIHRlc3Rfc3JjLCB0ZXN0X2NvCiAKLSMgc29tZSB0ZXN0cyBjYW4gYmUgcmFuIGV2ZW4gd2l0aG91dCB6bGliCi10cnk6Ci0gICAgaW1wb3J0IHpsaWIKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICB6bGliID0gTm9uZQotCiBmcm9tIHppcGZpbGUgaW1wb3J0IFppcEZpbGUsIFppcEluZm8sIFpJUF9TVE9SRUQsIFpJUF9ERUZMQVRFRAogCiBpbXBvcnQgemlwaW1wb3J0CkBAIC0yNSw3ICsxOSw3IEBACiBmcm9tIHRyYWNlYmFjayBpbXBvcnQgZXh0cmFjdF90YiwgZXh0cmFjdF9zdGFjaywgcHJpbnRfdGIKIHJhaXNlX3NyYyA9ICdkZWYgZG9fcmFpc2UoKTogcmFpc2UgVHlwZUVycm9yXG4nCiAKLWRlZiBtYWtlX3B5YyhjbywgbXRpbWUpOgorZGVmIG1ha2VfcHljKGNvLCBtdGltZSwgc2l6ZSk6CiAgICAgZGF0YSA9IG1hcnNoYWwuZHVtcHMoY28pCiAgICAgaWYgdHlwZShtdGltZSkgaXMgdHlwZSgwLjApOgogICAgICAgICAjIE1hYyBtdGltZXMgbmVlZCBhIGJpdCBvZiBzcGVjaWFsIGNhc2luZwpAQCAtMzMsMTQgKzI3LDE0IEBACiAgICAgICAgICAgICBtdGltZSA9IGludChtdGltZSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG10aW1lID0gaW50KC0weDEwMDAwMDAwMCArIGludChtdGltZSkpCi0gICAgcHljID0gaW1wLmdldF9tYWdpYygpICsgc3RydWN0LnBhY2soIjxpIiwgaW50KG10aW1lKSkgKyBkYXRhCisgICAgcHljID0gaW1wLmdldF9tYWdpYygpICsgc3RydWN0LnBhY2soIjxpaSIsIGludChtdGltZSksIHNpemUgJiAweEZGRkZGRkZGKSArIGRhdGEKICAgICByZXR1cm4gcHljCiAKIGRlZiBtb2R1bGVfcGF0aF90b19kb3R0ZWRfbmFtZShwYXRoKToKICAgICByZXR1cm4gcGF0aC5yZXBsYWNlKG9zLnNlcCwgJy4nKQogCiBOT1cgPSB0aW1lLnRpbWUoKQotdGVzdF9weWMgPSBtYWtlX3B5Yyh0ZXN0X2NvLCBOT1cpCit0ZXN0X3B5YyA9IG1ha2VfcHljKHRlc3RfY28sIE5PVywgbGVuKHRlc3Rfc3JjKSkKIAogCiBURVNUTU9EID0gInppcHRlc3Rtb2R1bGUiCkBAIC0yOTksNyArMjkzLDcgQEAKICAgICAgICAgICAgIHJldHVybiBfX2ZpbGVfXwogICAgICAgICBpZiBfX2xvYWRlcl9fLmdldF9kYXRhKCJzb21lLmRhdGEiKSAhPSBiInNvbWUgZGF0YSI6CiAgICAgICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcigiYmFkIGRhdGEiKVxuIiIiCi0gICAgICAgIHB5YyA9IG1ha2VfcHljKGNvbXBpbGUoc3JjLCAiPD8/Pz4iLCAiZXhlYyIpLCBOT1cpCisgICAgICAgIHB5YyA9IG1ha2VfcHljKGNvbXBpbGUoc3JjLCAiPD8/Pz4iLCAiZXhlYyIpLCBOT1csIGxlbihzcmMpKQogICAgICAgICBmaWxlcyA9IHtURVNUTU9EICsgcHljX2V4dDogKE5PVywgcHljKSwKICAgICAgICAgICAgICAgICAgInNvbWUuZGF0YSI6IChOT1csICJzb21lIGRhdGEiKX0KICAgICAgICAgc2VsZi5kb1Rlc3QocHljX2V4dCwgZmlsZXMsIFRFU1RNT0QpCkBAIC0zMTksNyArMzEzLDcgQEAKICAgICAgICAgc2VsZi5kb1Rlc3QoIi5weSIsIGZpbGVzLCBURVNUTU9ELCBjYWxsPXNlbGYuYXNzZXJ0TW9kdWxlU291cmNlKQogCiAgICAgZGVmIHRlc3RHZXRDb21waWxlZFNvdXJjZShzZWxmKToKLSAgICAgICAgcHljID0gbWFrZV9weWMoY29tcGlsZSh0ZXN0X3NyYywgIjw/Pz8+IiwgImV4ZWMiKSwgTk9XKQorICAgICAgICBweWMgPSBtYWtlX3B5Yyhjb21waWxlKHRlc3Rfc3JjLCAiPD8/Pz4iLCAiZXhlYyIpLCBOT1csIGxlbih0ZXN0X3NyYykpCiAgICAgICAgIGZpbGVzID0ge1RFU1RNT0QgKyAiLnB5IjogKE5PVywgdGVzdF9zcmMpLAogICAgICAgICAgICAgICAgICBURVNUTU9EICsgcHljX2V4dDogKE5PVywgcHljKX0KICAgICAgICAgc2VsZi5kb1Rlc3QocHljX2V4dCwgZmlsZXMsIFRFU1RNT0QsIGNhbGw9c2VsZi5hc3NlcnRNb2R1bGVTb3VyY2UpCkBAIC0zOTIsNyArMzg2LDcgQEAKICAgICAgICAgICAgIG9zLnJlbW92ZShmaWxlbmFtZSkKIAogCi1AdW5pdHRlc3Quc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCitAc3VwcG9ydC5yZXF1aXJlc196bGliCiBjbGFzcyBDb21wcmVzc2VkWmlwSW1wb3J0VGVzdENhc2UoVW5jb21wcmVzc2VkWmlwSW1wb3J0VGVzdENhc2UpOgogICAgIGNvbXByZXNzaW9uID0gWklQX0RFRkxBVEVECiAKQEAgLTQxNyw3ICs0MTEsNyBAQAogCiAgICAgZGVmIHRlc3RFbXB0eUZpbGUoc2VsZik6CiAgICAgICAgIHN1cHBvcnQudW5saW5rKFRFU1RNT0QpCi0gICAgICAgIG9wZW4oVEVTVE1PRCwgJ3crJykuY2xvc2UoKQorICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKFRFU1RNT0QpCiAgICAgICAgIHNlbGYuYXNzZXJ0WmlwRmFpbHVyZShURVNUTU9EKQogCiAgICAgZGVmIHRlc3RGaWxlVW5yZWFkYWJsZShzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfemlwaW1wb3J0X3N1cHBvcnQucHkgYi9MaWIvdGVzdC90ZXN0X3ppcGltcG9ydF9zdXBwb3J0LnB5CmluZGV4IGE1NThkN2QuLjBjOTNhOGMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfemlwaW1wb3J0X3N1cHBvcnQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF96aXBpbXBvcnRfc3VwcG9ydC5weQpAQCAtMTU2LDIwICsxNTYsMTkgQEAKICAgICAgICAgICAgICAgICAgICAgdGVzdF96aXBwZWRfZG9jdGVzdC50ZXN0X0RvY1Rlc3RSdW5uZXIudmVyYm9zZV9mbGFnLAogICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfRXhhbXBsZSwKICAgICAgICAgICAgICAgICAgICAgdGVzdF96aXBwZWRfZG9jdGVzdC50ZXN0X2RlYnVnLAotICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZSwKLSAgICAgICAgICAgICAgICAgICAgdGVzdF96aXBwZWRfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkLAogICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfdGVzdHNvdXJjZSwKICAgICAgICAgICAgICAgICAgICAgdGVzdF96aXBwZWRfZG9jdGVzdC50ZXN0X3RyYWlsaW5nX3NwYWNlX2luX3Rlc3QsCiAgICAgICAgICAgICAgICAgICAgIHRlc3RfemlwcGVkX2RvY3Rlc3QudGVzdF9Eb2NUZXN0U3VpdGUsCiAgICAgICAgICAgICAgICAgICAgIHRlc3RfemlwcGVkX2RvY3Rlc3QudGVzdF9Eb2NUZXN0RmluZGVyLAogICAgICAgICAgICAgICAgIF0KLSAgICAgICAgICAgICAgICAjIFRoZXNlIHJlbWFpbmluZyB0ZXN0cyBhcmUgdGhlIG9uZXMgd2hpY2ggbmVlZCBhY2Nlc3MKKyAgICAgICAgICAgICAgICAjIFRoZXNlIHRlc3RzIGFyZSB0aGUgb25lcyB3aGljaCBuZWVkIGFjY2VzcwogICAgICAgICAgICAgICAgICMgdG8gdGhlIGRhdGEgZmlsZXMsIHNvIHdlIGRvbid0IHJ1biB0aGVtCiAgICAgICAgICAgICAgICAgZmFpbF9kdWVfdG9fbWlzc2luZ19kYXRhX2ZpbGVzID0gWwogICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfRG9jRmlsZVN1aXRlLAogICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfdGVzdGZpbGUsCiAgICAgICAgICAgICAgICAgICAgIHRlc3RfemlwcGVkX2RvY3Rlc3QudGVzdF91bml0dGVzdF9yZXBvcnRmbGFncywKICAgICAgICAgICAgICAgICBdCisKICAgICAgICAgICAgICAgICBmb3Igb2JqIGluIGtub3duX2dvb2RfdGVzdHM6CiAgICAgICAgICAgICAgICAgICAgIF9ydW5fb2JqZWN0X2RvY3Rlc3Qob2JqLCB0ZXN0X3ppcHBlZF9kb2N0ZXN0KQogICAgICAgICAgICAgZmluYWxseToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfemxpYi5weSBiL0xpYi90ZXN0L3Rlc3RfemxpYi5weQppbmRleCA2MDA4MWUyLi4zYzk4MmM2IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3psaWIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF96bGliLnB5CkBAIC03LDEwICs3LDE2IEBACiAKIHpsaWIgPSBzdXBwb3J0LmltcG9ydF9tb2R1bGUoJ3psaWInKQogCi10cnk6Ci0gICAgaW1wb3J0IG1tYXAKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICBtbWFwID0gTm9uZQorCitjbGFzcyBWZXJzaW9uVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfbGlicmFyeV92ZXJzaW9uKHNlbGYpOgorICAgICAgICAjIFRlc3QgdGhhdCB0aGUgbWFqb3IgdmVyc2lvbiBvZiB0aGUgYWN0dWFsIGxpYnJhcnkgaW4gdXNlIG1hdGNoZXMgdGhlCisgICAgICAgICMgbWFqb3IgdmVyc2lvbiB0aGF0IHdlIHdlcmUgY29tcGlsZWQgYWdhaW5zdC4gV2UgY2FuJ3QgZ3VhcmFudGVlIHRoYXQKKyAgICAgICAgIyB0aGUgbWlub3IgdmVyc2lvbnMgd2lsbCBtYXRjaCAoZXZlbiBvbiB0aGUgbWFjaGluZSBvbiB3aGljaCB0aGUgbW9kdWxlCisgICAgICAgICMgd2FzIGNvbXBpbGVkKSwgYW5kIHRoZSBBUEkgaXMgc3RhYmxlIGJldHdlZW4gbWlub3IgdmVyc2lvbnMsIHNvCisgICAgICAgICMgdGVzdGluZyBvbmx5IHRoZSBtYWpvciB2ZXJzaW9ucyBhdm9pZHMgc3B1cmlvdXMgZmFpbHVyZXMuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoemxpYi5aTElCX1JVTlRJTUVfVkVSU0lPTlswXSwgemxpYi5aTElCX1ZFUlNJT05bMF0pCiAKIAogY2xhc3MgQ2hlY2tzdW1UZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CkBAIC0xNzMsMTAgKzE3OSw4IEBACiAgICAgZGVmIHRlc3RfYmlnX2RlY29tcHJlc3NfYnVmZmVyKHNlbGYsIHNpemUpOgogICAgICAgICBzZWxmLmNoZWNrX2JpZ19kZWNvbXByZXNzX2J1ZmZlcihzaXplLCB6bGliLmRlY29tcHJlc3MpCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV80RyArIDEwMCwgbWVtdXNlPTEpCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fNEcgKyAxMDAsIG1lbXVzZT0xLCBkcnlfcnVuPUZhbHNlKQogICAgIGRlZiB0ZXN0X2xlbmd0aF9vdmVyZmxvdyhzZWxmLCBzaXplKToKLSAgICAgICAgaWYgc2l6ZSA8IF80RyArIDEwMDoKLSAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm5vdCBlbm91Z2ggZnJlZSBtZW1vcnksIG5lZWQgYXQgbGVhc3QgNCBHQiIpCiAgICAgICAgIGRhdGEgPSBiJ3gnICogc2l6ZQogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCB6bGliLmNvbXByZXNzLCBkYXRhLCAxKQpAQCAtNDM0LDYgKzQzOCwyNiBAQAogICAgICAgICB5ICs9IGRjby5mbHVzaCgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeSwgYidmb28nKQogCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc19lb2Yoc2VsZik6CisgICAgICAgIHggPSBiJ3hceDljS1x4Y2JceGNmXHgwN1x4MDBceDAyXHg4Mlx4MDFFJyAgIyAnZm9vJworICAgICAgICBkY28gPSB6bGliLmRlY29tcHJlc3NvYmooKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGRjby5lb2YpCisgICAgICAgIGRjby5kZWNvbXByZXNzKHhbOi01XSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShkY28uZW9mKQorICAgICAgICBkY28uZGVjb21wcmVzcyh4Wy01Ol0pCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShkY28uZW9mKQorICAgICAgICBkY28uZmx1c2goKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZGNvLmVvZikKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3NfZW9mX2luY29tcGxldGVfc3RyZWFtKHNlbGYpOgorICAgICAgICB4ID0gYid4XHg5Y0tceGNiXHhjZlx4MDdceDAwXHgwMlx4ODJceDAxRScgICMgJ2ZvbycKKyAgICAgICAgZGNvID0gemxpYi5kZWNvbXByZXNzb2JqKCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShkY28uZW9mKQorICAgICAgICBkY28uZGVjb21wcmVzcyh4WzotNV0pCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZGNvLmVvZikKKyAgICAgICAgZGNvLmZsdXNoKCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShkY28uZW9mKQorCiAgICAgaWYgaGFzYXR0cih6bGliLmNvbXByZXNzb2JqKCksICJjb3B5Iik6CiAgICAgICAgIGRlZiB0ZXN0X2NvbXByZXNzY29weShzZWxmKToKICAgICAgICAgICAgICMgVGVzdCBjb3B5aW5nIGEgY29tcHJlc3Npb24gb2JqZWN0CkBAIC01MTAsMTAgKzUzNCw4IEBACiAgICAgICAgIGRlY29tcHJlc3MgPSBsYW1iZGEgczogZC5kZWNvbXByZXNzKHMpICsgZC5mbHVzaCgpCiAgICAgICAgIHNlbGYuY2hlY2tfYmlnX2RlY29tcHJlc3NfYnVmZmVyKHNpemUsIGRlY29tcHJlc3MpCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV80RyArIDEwMCwgbWVtdXNlPTEpCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fNEcgKyAxMDAsIG1lbXVzZT0xLCBkcnlfcnVuPUZhbHNlKQogICAgIGRlZiB0ZXN0X2xlbmd0aF9vdmVyZmxvdyhzZWxmLCBzaXplKToKLSAgICAgICAgaWYgc2l6ZSA8IF80RyArIDEwMDoKLSAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm5vdCBlbm91Z2ggZnJlZSBtZW1vcnksIG5lZWQgYXQgbGVhc3QgNCBHQiIpCiAgICAgICAgIGRhdGEgPSBiJ3gnICogc2l6ZQogICAgICAgICBjID0gemxpYi5jb21wcmVzc29iaigxKQogICAgICAgICBkID0gemxpYi5kZWNvbXByZXNzb2JqKCkKQEAgLTYxNCw2ICs2MzYsNyBAQAogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoCisgICAgICAgIFZlcnNpb25UZXN0Q2FzZSwKICAgICAgICAgQ2hlY2tzdW1UZXN0Q2FzZSwKICAgICAgICAgQ2hlY2tzdW1CaWdCdWZmZXJUZXN0Q2FzZSwKICAgICAgICAgRXhjZXB0aW9uVGVzdENhc2UsCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90aHJlYWRlZF9pbXBvcnRfaGFuZ2Vycy5weSBiL0xpYi90ZXN0L3RocmVhZGVkX2ltcG9ydF9oYW5nZXJzLnB5CmluZGV4IGFkZjAzZTMuLjU0ODRlNjAgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3RocmVhZGVkX2ltcG9ydF9oYW5nZXJzLnB5CisrKyBiL0xpYi90ZXN0L3RocmVhZGVkX2ltcG9ydF9oYW5nZXJzLnB5CkBAIC0zNSw4ICszNSwxMSBAQAogICAgICAgICAoIm9zLnBhdGguYWJzcGF0aCIsIG9zLnBhdGguYWJzcGF0aCwgKCcuJywpKSwKICAgICAgICAgXToKIAotICAgIHQgPSBXb3JrZXIoZnVuYywgYXJncykKLSAgICB0LnN0YXJ0KCkKLSAgICB0LmpvaW4oVElNRU9VVCkKLSAgICBpZiB0LmlzX2FsaXZlKCk6Ci0gICAgICAgIGVycm9ycy5hcHBlbmQoIiVzIGFwcGVhcmVkIHRvIGhhbmciICUgbmFtZSkKKyAgICB0cnk6CisgICAgICAgIHQgPSBXb3JrZXIoZnVuYywgYXJncykKKyAgICAgICAgdC5zdGFydCgpCisgICAgICAgIHQuam9pbihUSU1FT1VUKQorICAgICAgICBpZiB0LmlzX2FsaXZlKCk6CisgICAgICAgICAgICBlcnJvcnMuYXBwZW5kKCIlcyBhcHBlYXJlZCB0byBoYW5nIiAlIG5hbWUpCisgICAgZmluYWxseToKKyAgICAgICAgZGVsIHQKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rva2VuaXplX3Rlc3RzLnR4dCBiL0xpYi90ZXN0L3Rva2VuaXplX3Rlc3RzLnR4dAppbmRleCAwNmM4M2IwLi4yYzVmYjEwIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90b2tlbml6ZV90ZXN0cy50eHQKKysrIGIvTGliL3Rlc3QvdG9rZW5pemVfdGVzdHMudHh0CkBAIC0xMTQsOCArMTE0LDEyIEBACiB5ID0gYiJhYmMiICsgQiJBQkMiCiB4ID0gYnInYWJjJyArIEJyJ0FCQycgKyBiUidBQkMnICsgQlInQUJDJwogeSA9IGJyImFiYyIgKyBCciJBQkMiICsgYlIiQUJDIiArIEJSIkFCQyIKK3ggPSByYidhYmMnICsgckInQUJDJyArIFJiJ0FCQycgKyBSQidBQkMnCit5ID0gcmIiYWJjIiArIHJCIkFCQyIgKyBSYiJBQkMiICsgUkIiQUJDIgogeCA9IGJyJ1xcJyArIEJSJ1xcJworeCA9IHJiJ1xcJyArIFJCJ1xcJwogeCA9IGJyJ1wnJyArICcnCit4ID0gcmInXCcnICsgJycKIHkgPSBicicnJwogZm9vIGJhciBcXAogYmF6JycnICsgQlInJycKQEAgLTEyNCw2ICsxMjgsMTAgQEAKIGJhciBcXCBiYXoKICIiIiArIGJSJycnc3BhbQogJycnCit5ID0gckIiIiJmb28KK2JhciBcXCBiYXoKKyIiIiArIFJiJycnc3BhbQorJycnCiAKICMgSW5kZW50YXRpb24KIGlmIDE6CmRpZmYgLS1naXQgYS9MaWIvdGV4dHdyYXAucHkgYi9MaWIvdGV4dHdyYXAucHkKaW5kZXggZGZiNDAwNS4uMGFlYmEzZiAxMDA2NDQKLS0tIGEvTGliL3RleHR3cmFwLnB5CisrKyBiL0xpYi90ZXh0d3JhcC5weQpAQCAtNSw3ICs1LDcgQEAKICMgQ29weXJpZ2h0IChDKSAyMDAyLCAyMDAzIFB5dGhvbiBTb2Z0d2FyZSBGb3VuZGF0aW9uLgogIyBXcml0dGVuIGJ5IEdyZWcgV2FyZCA8Z3dhcmRAcHl0aG9uLm5ldD4KIAotaW1wb3J0IHN0cmluZywgcmUKK2ltcG9ydCByZQogCiBfX2FsbF9fID0gWydUZXh0V3JhcHBlcicsICd3cmFwJywgJ2ZpbGwnLCAnZGVkZW50J10KIApkaWZmIC0tZ2l0IGEvTGliL3RocmVhZGluZy5weSBiL0xpYi90aHJlYWRpbmcucHkKaW5kZXggNjliNzc2My4uNDQxYzdiZCAxMDA2NDQKLS0tIGEvTGliL3RocmVhZGluZy5weQorKysgYi9MaWIvdGhyZWFkaW5nLnB5CkBAIC0xOSwxMiArMTksMTIgQEAKIAogX19hbGxfXyA9IFsnYWN0aXZlX2NvdW50JywgJ0NvbmRpdGlvbicsICdjdXJyZW50X3RocmVhZCcsICdlbnVtZXJhdGUnLCAnRXZlbnQnLAogICAgICAgICAgICAnTG9jaycsICdSTG9jaycsICdTZW1hcGhvcmUnLCAnQm91bmRlZFNlbWFwaG9yZScsICdUaHJlYWQnLCAnQmFycmllcicsCi0gICAgICAgICAgICdUaW1lcicsICdzZXRwcm9maWxlJywgJ3NldHRyYWNlJywgJ2xvY2FsJywgJ3N0YWNrX3NpemUnXQorICAgICAgICAgICAnVGltZXInLCAnVGhyZWFkRXJyb3InLCAnc2V0cHJvZmlsZScsICdzZXR0cmFjZScsICdsb2NhbCcsICdzdGFja19zaXplJ10KIAogIyBSZW5hbWUgc29tZSBzdHVmZiBzbyAiZnJvbSB0aHJlYWRpbmcgaW1wb3J0ICoiIGlzIHNhZmUKIF9zdGFydF9uZXdfdGhyZWFkID0gX3RocmVhZC5zdGFydF9uZXdfdGhyZWFkCiBfYWxsb2NhdGVfbG9jayA9IF90aHJlYWQuYWxsb2NhdGVfbG9jawotX2dldF9pZGVudCA9IF90aHJlYWQuZ2V0X2lkZW50CitnZXRfaWRlbnQgPSBfdGhyZWFkLmdldF9pZGVudAogVGhyZWFkRXJyb3IgPSBfdGhyZWFkLmVycm9yCiB0cnk6CiAgICAgX0NSTG9jayA9IF90aHJlYWQuUkxvY2sKQEAgLTM0LDQwICszNCw2IEBACiBkZWwgX3RocmVhZAogCiAKLSMgRGVidWcgc3VwcG9ydCAoYWRhcHRlZCBmcm9tIGlob29rcy5weSkuCi0KLV9WRVJCT1NFID0gRmFsc2UKLQotaWYgX19kZWJ1Z19fOgotCi0gICAgY2xhc3MgX1ZlcmJvc2Uob2JqZWN0KToKLQotICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgdmVyYm9zZT1Ob25lKToKLSAgICAgICAgICAgIGlmIHZlcmJvc2UgaXMgTm9uZToKLSAgICAgICAgICAgICAgICB2ZXJib3NlID0gX1ZFUkJPU0UKLSAgICAgICAgICAgIHNlbGYuX3ZlcmJvc2UgPSB2ZXJib3NlCi0KLSAgICAgICAgZGVmIF9ub3RlKHNlbGYsIGZvcm1hdCwgKmFyZ3MpOgotICAgICAgICAgICAgaWYgc2VsZi5fdmVyYm9zZToKLSAgICAgICAgICAgICAgICBmb3JtYXQgPSBmb3JtYXQgJSBhcmdzCi0gICAgICAgICAgICAgICAgIyBJc3N1ZSAjNDE4ODogY2FsbGluZyBjdXJyZW50X3RocmVhZCgpIGNhbiBpbmN1ciBhbiBpbmZpbml0ZQotICAgICAgICAgICAgICAgICMgcmVjdXJzaW9uIGlmIGl0IGhhcyB0byBjcmVhdGUgYSBEdW1teVRocmVhZCBvbiB0aGUgZmx5LgotICAgICAgICAgICAgICAgIGlkZW50ID0gX2dldF9pZGVudCgpCi0gICAgICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICAgICBuYW1lID0gX2FjdGl2ZVtpZGVudF0ubmFtZQotICAgICAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKLSAgICAgICAgICAgICAgICAgICAgbmFtZSA9ICI8T1MgdGhyZWFkICVkPiIgJSBpZGVudAotICAgICAgICAgICAgICAgIGZvcm1hdCA9ICIlczogJXNcbiIgJSAobmFtZSwgZm9ybWF0KQotICAgICAgICAgICAgICAgIF9zeXMuc3RkZXJyLndyaXRlKGZvcm1hdCkKLQotZWxzZToKLSAgICAjIERpc2FibGUgdGhpcyB3aGVuIHVzaW5nICJweXRob24gLU8iCi0gICAgY2xhc3MgX1ZlcmJvc2Uob2JqZWN0KToKLSAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHZlcmJvc2U9Tm9uZSk6Ci0gICAgICAgICAgICBwYXNzCi0gICAgICAgIGRlZiBfbm90ZShzZWxmLCAqYXJncyk6Ci0gICAgICAgICAgICBwYXNzCi0KICMgU3VwcG9ydCBmb3IgcHJvZmlsZSBhbmQgdHJhY2UgaG9va3MKIAogX3Byb2ZpbGVfaG9vayA9IE5vbmUKQEAgLTg1LDE3ICs1MSwxNCBAQAogCiBMb2NrID0gX2FsbG9jYXRlX2xvY2sKIAotZGVmIFJMb2NrKHZlcmJvc2U9Tm9uZSwgKmFyZ3MsICoqa3dhcmdzKToKLSAgICBpZiB2ZXJib3NlIGlzIE5vbmU6Ci0gICAgICAgIHZlcmJvc2UgPSBfVkVSQk9TRQotICAgIGlmIChfX2RlYnVnX18gYW5kIHZlcmJvc2UpIG9yIF9DUkxvY2sgaXMgTm9uZToKLSAgICAgICAgcmV0dXJuIF9QeVJMb2NrKHZlcmJvc2UsICphcmdzLCAqKmt3YXJncykKK2RlZiBSTG9jaygqYXJncywgKiprd2FyZ3MpOgorICAgIGlmIF9DUkxvY2sgaXMgTm9uZToKKyAgICAgICAgcmV0dXJuIF9QeVJMb2NrKCphcmdzLCAqKmt3YXJncykKICAgICByZXR1cm4gX0NSTG9jaygqYXJncywgKiprd2FyZ3MpCiAKLWNsYXNzIF9STG9jayhfVmVyYm9zZSk6CitjbGFzcyBfUkxvY2s6CiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgdmVyYm9zZT1Ob25lKToKLSAgICAgICAgX1ZlcmJvc2UuX19pbml0X18oc2VsZiwgdmVyYm9zZSkKKyAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgIHNlbGYuX2Jsb2NrID0gX2FsbG9jYXRlX2xvY2soKQogICAgICAgICBzZWxmLl9vd25lciA9IE5vbmUKICAgICAgICAgc2VsZi5fY291bnQgPSAwCkBAIC0xMTAsMzcgKzczLDI1IEBACiAgICAgICAgICAgICAgICAgc2VsZi5fX2NsYXNzX18uX19uYW1lX18sIG93bmVyLCBzZWxmLl9jb3VudCkKIAogICAgIGRlZiBhY3F1aXJlKHNlbGYsIGJsb2NraW5nPVRydWUsIHRpbWVvdXQ9LTEpOgotICAgICAgICBtZSA9IF9nZXRfaWRlbnQoKQorICAgICAgICBtZSA9IGdldF9pZGVudCgpCiAgICAgICAgIGlmIHNlbGYuX293bmVyID09IG1lOgogICAgICAgICAgICAgc2VsZi5fY291bnQgPSBzZWxmLl9jb3VudCArIDEKLSAgICAgICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy5hY3F1aXJlKCVzKTogcmVjdXJzaXZlIHN1Y2Nlc3MiLCBzZWxmLCBibG9ja2luZykKICAgICAgICAgICAgIHJldHVybiAxCiAgICAgICAgIHJjID0gc2VsZi5fYmxvY2suYWNxdWlyZShibG9ja2luZywgdGltZW91dCkKICAgICAgICAgaWYgcmM6CiAgICAgICAgICAgICBzZWxmLl9vd25lciA9IG1lCiAgICAgICAgICAgICBzZWxmLl9jb3VudCA9IDEKLSAgICAgICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy5hY3F1aXJlKCVzKTogaW5pdGlhbCBzdWNjZXNzIiwgc2VsZiwgYmxvY2tpbmcpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBpZiBfX2RlYnVnX186Ci0gICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMuYWNxdWlyZSglcyk6IGZhaWx1cmUiLCBzZWxmLCBibG9ja2luZykKICAgICAgICAgcmV0dXJuIHJjCiAKICAgICBfX2VudGVyX18gPSBhY3F1aXJlCiAKICAgICBkZWYgcmVsZWFzZShzZWxmKToKLSAgICAgICAgaWYgc2VsZi5fb3duZXIgIT0gX2dldF9pZGVudCgpOgorICAgICAgICBpZiBzZWxmLl9vd25lciAhPSBnZXRfaWRlbnQoKToKICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiY2Fubm90IHJlbGVhc2UgdW4tYWNxdWlyZWQgbG9jayIpCiAgICAgICAgIHNlbGYuX2NvdW50ID0gY291bnQgPSBzZWxmLl9jb3VudCAtIDEKICAgICAgICAgaWYgbm90IGNvdW50OgogICAgICAgICAgICAgc2VsZi5fb3duZXIgPSBOb25lCiAgICAgICAgICAgICBzZWxmLl9ibG9jay5yZWxlYXNlKCkKLSAgICAgICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy5yZWxlYXNlKCk6IGZpbmFsIHJlbGVhc2UiLCBzZWxmKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgICAgIHNlbGYuX25vdGUoIiVzLnJlbGVhc2UoKTogbm9uLWZpbmFsIHJlbGVhc2UiLCBzZWxmKQogCiAgICAgZGVmIF9fZXhpdF9fKHNlbGYsIHQsIHYsIHRiKToKICAgICAgICAgc2VsZi5yZWxlYXNlKCkKQEAgLTE1MCwxMiArMTAxLDEwIEBACiAgICAgZGVmIF9hY3F1aXJlX3Jlc3RvcmUoc2VsZiwgc3RhdGUpOgogICAgICAgICBzZWxmLl9ibG9jay5hY3F1aXJlKCkKICAgICAgICAgc2VsZi5fY291bnQsIHNlbGYuX293bmVyID0gc3RhdGUKLSAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMuX2FjcXVpcmVfcmVzdG9yZSgpIiwgc2VsZikKIAogICAgIGRlZiBfcmVsZWFzZV9zYXZlKHNlbGYpOgotICAgICAgICBpZiBfX2RlYnVnX186Ci0gICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy5fcmVsZWFzZV9zYXZlKCkiLCBzZWxmKQorICAgICAgICBpZiBzZWxmLl9jb3VudCA9PSAwOgorICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJjYW5ub3QgcmVsZWFzZSB1bi1hY3F1aXJlZCBsb2NrIikKICAgICAgICAgY291bnQgPSBzZWxmLl9jb3VudAogICAgICAgICBzZWxmLl9jb3VudCA9IDAKICAgICAgICAgb3duZXIgPSBzZWxmLl9vd25lcgpAQCAtMTY0LDE4ICsxMTMsMTQgQEAKICAgICAgICAgcmV0dXJuIChjb3VudCwgb3duZXIpCiAKICAgICBkZWYgX2lzX293bmVkKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5fb3duZXIgPT0gX2dldF9pZGVudCgpCisgICAgICAgIHJldHVybiBzZWxmLl9vd25lciA9PSBnZXRfaWRlbnQoKQogCiBfUHlSTG9jayA9IF9STG9jawogCiAKLWRlZiBDb25kaXRpb24oKmFyZ3MsICoqa3dhcmdzKToKLSAgICByZXR1cm4gX0NvbmRpdGlvbigqYXJncywgKiprd2FyZ3MpCitjbGFzcyBDb25kaXRpb246CiAKLWNsYXNzIF9Db25kaXRpb24oX1ZlcmJvc2UpOgotCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIGxvY2s9Tm9uZSwgdmVyYm9zZT1Ob25lKToKLSAgICAgICAgX1ZlcmJvc2UuX19pbml0X18oc2VsZiwgdmVyYm9zZSkKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbG9jaz1Ob25lKToKICAgICAgICAgaWYgbG9jayBpcyBOb25lOgogICAgICAgICAgICAgbG9jayA9IFJMb2NrKCkKICAgICAgICAgc2VsZi5fbG9jayA9IGxvY2sKQEAgLTIzNCwyMyArMTc5LDE2IEBACiAgICAgICAgICAgICBpZiB0aW1lb3V0IGlzIE5vbmU6CiAgICAgICAgICAgICAgICAgd2FpdGVyLmFjcXVpcmUoKQogICAgICAgICAgICAgICAgIGdvdGl0ID0gVHJ1ZQotICAgICAgICAgICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMud2FpdCgpOiBnb3QgaXQiLCBzZWxmKQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBpZiB0aW1lb3V0ID4gMDoKICAgICAgICAgICAgICAgICAgICAgZ290aXQgPSB3YWl0ZXIuYWNxdWlyZShUcnVlLCB0aW1lb3V0KQogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIGdvdGl0ID0gd2FpdGVyLmFjcXVpcmUoRmFsc2UpCiAgICAgICAgICAgICAgICAgaWYgbm90IGdvdGl0OgotICAgICAgICAgICAgICAgICAgICBpZiBfX2RlYnVnX186Ci0gICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy53YWl0KCVzKTogdGltZWQgb3V0Iiwgc2VsZiwgdGltZW91dCkKICAgICAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fd2FpdGVycy5yZW1vdmUod2FpdGVyKQogICAgICAgICAgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgICAgIHBhc3MKLSAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBpZiBfX2RlYnVnX186Ci0gICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy53YWl0KCVzKTogZ290IGl0Iiwgc2VsZiwgdGltZW91dCkKICAgICAgICAgICAgIHJldHVybiBnb3RpdAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgc2VsZi5fYWNxdWlyZV9yZXN0b3JlKHNhdmVkX3N0YXRlKQpAQCAtMjY2LDE5ICsyMDQsOSBAQAogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIHdhaXR0aW1lID0gZW5kdGltZSAtIF90aW1lKCkKICAgICAgICAgICAgICAgICAgICAgaWYgd2FpdHRpbWUgPD0gMDoKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy53YWl0X2ZvciglciwgJXIpOiBUaW1lZCBvdXQuIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYsIHByZWRpY2F0ZSwgdGltZW91dCkKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICBpZiBfX2RlYnVnX186Ci0gICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMud2FpdF9mb3IoJXIsICVyKTogV2FpdGluZyB3aXRoIHRpbWVvdXQ9JXMuIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYsIHByZWRpY2F0ZSwgdGltZW91dCwgd2FpdHRpbWUpCiAgICAgICAgICAgICBzZWxmLndhaXQod2FpdHRpbWUpCiAgICAgICAgICAgICByZXN1bHQgPSBwcmVkaWNhdGUoKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgICAgIHNlbGYuX25vdGUoIiVzLndhaXRfZm9yKCVyLCAlcik6IFN1Y2Nlc3MuIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYsIHByZWRpY2F0ZSwgdGltZW91dCkKICAgICAgICAgcmV0dXJuIHJlc3VsdAogCiAgICAgZGVmIG5vdGlmeShzZWxmLCBuPTEpOgpAQCAtMjg3LDExICsyMTUsNyBAQAogICAgICAgICBfX3dhaXRlcnMgPSBzZWxmLl93YWl0ZXJzCiAgICAgICAgIHdhaXRlcnMgPSBfX3dhaXRlcnNbOm5dCiAgICAgICAgIGlmIG5vdCB3YWl0ZXJzOgotICAgICAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgICAgIHNlbGYuX25vdGUoIiVzLm5vdGlmeSgpOiBubyB3YWl0ZXJzIiwgc2VsZikKICAgICAgICAgICAgIHJldHVybgotICAgICAgICBzZWxmLl9ub3RlKCIlcy5ub3RpZnkoKTogbm90aWZ5aW5nICVkIHdhaXRlciVzIiwgc2VsZiwgbiwKLSAgICAgICAgICAgICAgICAgICBuIT0xIGFuZCAicyIgb3IgIiIpCiAgICAgICAgIGZvciB3YWl0ZXIgaW4gd2FpdGVyczoKICAgICAgICAgICAgIHdhaXRlci5yZWxlYXNlKCkKICAgICAgICAgICAgIHRyeToKQEAgLTMwNSwxNyArMjI5LDEzIEBACiAgICAgbm90aWZ5QWxsID0gbm90aWZ5X2FsbAogCiAKLWRlZiBTZW1hcGhvcmUoKmFyZ3MsICoqa3dhcmdzKToKLSAgICByZXR1cm4gX1NlbWFwaG9yZSgqYXJncywgKiprd2FyZ3MpCi0KLWNsYXNzIF9TZW1hcGhvcmUoX1ZlcmJvc2UpOgorY2xhc3MgU2VtYXBob3JlOgogCiAgICAgIyBBZnRlciBUaW0gUGV0ZXJzJyBzZW1hcGhvcmUgY2xhc3MsIGJ1dCBub3QgcXVpdGUgdGhlIHNhbWUgKG5vIG1heGltdW0pCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgdmFsdWU9MSwgdmVyYm9zZT1Ob25lKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgdmFsdWU9MSk6CiAgICAgICAgIGlmIHZhbHVlIDwgMDoKICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoInNlbWFwaG9yZSBpbml0aWFsIHZhbHVlIG11c3QgYmUgPj0gMCIpCi0gICAgICAgIF9WZXJib3NlLl9faW5pdF9fKHNlbGYsIHZlcmJvc2UpCiAgICAgICAgIHNlbGYuX2NvbmQgPSBDb25kaXRpb24oTG9jaygpKQogICAgICAgICBzZWxmLl92YWx1ZSA9IHZhbHVlCiAKQEAgLTMyOCw5ICsyNDgsNiBAQAogICAgICAgICB3aGlsZSBzZWxmLl92YWx1ZSA9PSAwOgogICAgICAgICAgICAgaWYgbm90IGJsb2NraW5nOgogICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICBpZiBfX2RlYnVnX186Ci0gICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMuYWNxdWlyZSglcyk6IGJsb2NrZWQgd2FpdGluZywgdmFsdWU9JXMiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZiwgYmxvY2tpbmcsIHNlbGYuX3ZhbHVlKQogICAgICAgICAgICAgaWYgdGltZW91dCBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICBpZiBlbmR0aW1lIGlzIE5vbmU6CiAgICAgICAgICAgICAgICAgICAgIGVuZHRpbWUgPSBfdGltZSgpICsgdGltZW91dApAQCAtMzQxLDkgKzI1OCw2IEBACiAgICAgICAgICAgICBzZWxmLl9jb25kLndhaXQodGltZW91dCkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHNlbGYuX3ZhbHVlID0gc2VsZi5fdmFsdWUgLSAxCi0gICAgICAgICAgICBpZiBfX2RlYnVnX186Ci0gICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMuYWNxdWlyZTogc3VjY2VzcywgdmFsdWU9JXMiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZiwgc2VsZi5fdmFsdWUpCiAgICAgICAgICAgICByYyA9IFRydWUKICAgICAgICAgc2VsZi5fY29uZC5yZWxlYXNlKCkKICAgICAgICAgcmV0dXJuIHJjCkBAIC0zNTMsOSArMjY3LDYgQEAKICAgICBkZWYgcmVsZWFzZShzZWxmKToKICAgICAgICAgc2VsZi5fY29uZC5hY3F1aXJlKCkKICAgICAgICAgc2VsZi5fdmFsdWUgPSBzZWxmLl92YWx1ZSArIDEKLSAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMucmVsZWFzZTogc3VjY2VzcywgdmFsdWU9JXMiLAotICAgICAgICAgICAgICAgICAgICAgICBzZWxmLCBzZWxmLl92YWx1ZSkKICAgICAgICAgc2VsZi5fY29uZC5ub3RpZnkoKQogICAgICAgICBzZWxmLl9jb25kLnJlbGVhc2UoKQogCkBAIC0zNjMsMzAgKzI3NCwyMyBAQAogICAgICAgICBzZWxmLnJlbGVhc2UoKQogCiAKLWRlZiBCb3VuZGVkU2VtYXBob3JlKCphcmdzLCAqKmt3YXJncyk6Ci0gICAgcmV0dXJuIF9Cb3VuZGVkU2VtYXBob3JlKCphcmdzLCAqKmt3YXJncykKLQotY2xhc3MgX0JvdW5kZWRTZW1hcGhvcmUoX1NlbWFwaG9yZSk6CitjbGFzcyBCb3VuZGVkU2VtYXBob3JlKFNlbWFwaG9yZSk6CiAgICAgIiIiU2VtYXBob3JlIHRoYXQgY2hlY2tzIHRoYXQgIyByZWxlYXNlcyBpcyA8PSAjIGFjcXVpcmVzIiIiCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIHZhbHVlPTEsIHZlcmJvc2U9Tm9uZSk6Ci0gICAgICAgIF9TZW1hcGhvcmUuX19pbml0X18oc2VsZiwgdmFsdWUsIHZlcmJvc2UpCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHZhbHVlPTEpOgorICAgICAgICBTZW1hcGhvcmUuX19pbml0X18oc2VsZiwgdmFsdWUpCiAgICAgICAgIHNlbGYuX2luaXRpYWxfdmFsdWUgPSB2YWx1ZQogCiAgICAgZGVmIHJlbGVhc2Uoc2VsZik6CiAgICAgICAgIGlmIHNlbGYuX3ZhbHVlID49IHNlbGYuX2luaXRpYWxfdmFsdWU6CiAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJTZW1hcGhvcmUgcmVsZWFzZWQgdG9vIG1hbnkgdGltZXMiKQotICAgICAgICByZXR1cm4gX1NlbWFwaG9yZS5yZWxlYXNlKHNlbGYpCisgICAgICAgIHJldHVybiBTZW1hcGhvcmUucmVsZWFzZShzZWxmKQogCiAKLWRlZiBFdmVudCgqYXJncywgKiprd2FyZ3MpOgotICAgIHJldHVybiBfRXZlbnQoKmFyZ3MsICoqa3dhcmdzKQotCi1jbGFzcyBfRXZlbnQoX1ZlcmJvc2UpOgorY2xhc3MgRXZlbnQ6CiAKICAgICAjIEFmdGVyIFRpbSBQZXRlcnMnIGV2ZW50IGNsYXNzICh3aXRob3V0IGlzX3Bvc3RlZCgpKQogCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIHZlcmJvc2U9Tm9uZSk6Ci0gICAgICAgIF9WZXJib3NlLl9faW5pdF9fKHNlbGYsIHZlcmJvc2UpCisgICAgZGVmIF9faW5pdF9fKHNlbGYpOgogICAgICAgICBzZWxmLl9jb25kID0gQ29uZGl0aW9uKExvY2soKSkKICAgICAgICAgc2VsZi5fZmxhZyA9IEZhbHNlCiAKQEAgLTQzNiwxMyArMzQwLDEzIEBACiAjIHNpbmNlIHRoZSBwcmV2aW91cyBjeWNsZS4gIEluIGFkZGl0aW9uLCBhICdyZXNldHRpbmcnIHN0YXRlIGV4aXN0cyB3aGljaCBpcwogIyBzaW1pbGFyIHRvICdkcmFpbmluZycgZXhjZXB0IHRoYXQgdGhyZWFkcyBsZWF2ZSB3aXRoIGEgQnJva2VuQmFycmllckVycm9yLAogIyBhbmQgYSAnYnJva2VuJyBzdGF0ZSBpbiB3aGljaCBhbGwgdGhyZWFkcyBnZXQgdGhlIGV4Y2VwdGlvbi4KLWNsYXNzIEJhcnJpZXIoX1ZlcmJvc2UpOgorY2xhc3MgQmFycmllcjoKICAgICAiIiIKICAgICBCYXJyaWVyLiAgVXNlZnVsIGZvciBzeW5jaHJvbml6aW5nIGEgZml4ZWQgbnVtYmVyIG9mIHRocmVhZHMKICAgICBhdCBrbm93biBzeW5jaHJvbml6YXRpb24gcG9pbnRzLiAgVGhyZWFkcyBibG9jayBvbiAnd2FpdCgpJyBhbmQgYXJlCiAgICAgc2ltdWx0YW5lb3VzbHkgb25jZSB0aGV5IGhhdmUgYWxsIG1hZGUgdGhhdCBjYWxsLgogICAgICIiIgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXJ0aWVzLCBhY3Rpb249Tm9uZSwgdGltZW91dD1Ob25lLCB2ZXJib3NlPU5vbmUpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXJ0aWVzLCBhY3Rpb249Tm9uZSwgdGltZW91dD1Ob25lKToKICAgICAgICAgIiIiCiAgICAgICAgIENyZWF0ZSBhIGJhcnJpZXIsIGluaXRpYWxpc2VkIHRvICdwYXJ0aWVzJyB0aHJlYWRzLgogICAgICAgICAnYWN0aW9uJyBpcyBhIGNhbGxhYmxlIHdoaWNoLCB3aGVuIHN1cHBsaWVkLCB3aWxsIGJlIGNhbGxlZApAQCAtNDUxLDcgKzM1NSw2IEBACiAgICAgICAgIElmIGEgJ3RpbWVvdXQnIGlzIHByb3ZpZGVkLCBpdCBpcyB1c2VzIGFzIHRoZSBkZWZhdWx0IGZvcgogICAgICAgICBhbGwgc3Vic2VxdWVudCAnd2FpdCgpJyBjYWxscy4KICAgICAgICAgIiIiCi0gICAgICAgIF9WZXJib3NlLl9faW5pdF9fKHNlbGYsIHZlcmJvc2UpCiAgICAgICAgIHNlbGYuX2NvbmQgPSBDb25kaXRpb24oTG9jaygpKQogICAgICAgICBzZWxmLl9hY3Rpb24gPSBhY3Rpb24KICAgICAgICAgc2VsZi5fdGltZW91dCA9IHRpbWVvdXQKQEAgLTYxMiw3ICs1MTUsNyBAQAogCiAjIE1haW4gY2xhc3MgZm9yIHRocmVhZHMKIAotY2xhc3MgVGhyZWFkKF9WZXJib3NlKToKK2NsYXNzIFRocmVhZDoKIAogICAgIF9faW5pdGlhbGl6ZWQgPSBGYWxzZQogICAgICMgTmVlZCB0byBzdG9yZSBhIHJlZmVyZW5jZSB0byBzeXMuZXhjX2luZm8gZm9yIHByaW50aW5nCkBAIC02MjUsMTYgKzUyOCwxOCBAQAogICAgICNYWFggX19leGNfY2xlYXIgPSBfc3lzLmV4Y19jbGVhcgogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGdyb3VwPU5vbmUsIHRhcmdldD1Ob25lLCBuYW1lPU5vbmUsCi0gICAgICAgICAgICAgICAgIGFyZ3M9KCksIGt3YXJncz1Ob25lLCB2ZXJib3NlPU5vbmUpOgorICAgICAgICAgICAgICAgICBhcmdzPSgpLCBrd2FyZ3M9Tm9uZSwgKiwgZGFlbW9uPU5vbmUpOgogICAgICAgICBhc3NlcnQgZ3JvdXAgaXMgTm9uZSwgImdyb3VwIGFyZ3VtZW50IG11c3QgYmUgTm9uZSBmb3Igbm93IgotICAgICAgICBfVmVyYm9zZS5fX2luaXRfXyhzZWxmLCB2ZXJib3NlKQogICAgICAgICBpZiBrd2FyZ3MgaXMgTm9uZToKICAgICAgICAgICAgIGt3YXJncyA9IHt9CiAgICAgICAgIHNlbGYuX3RhcmdldCA9IHRhcmdldAogICAgICAgICBzZWxmLl9uYW1lID0gc3RyKG5hbWUgb3IgX25ld25hbWUoKSkKICAgICAgICAgc2VsZi5fYXJncyA9IGFyZ3MKICAgICAgICAgc2VsZi5fa3dhcmdzID0ga3dhcmdzCi0gICAgICAgIHNlbGYuX2RhZW1vbmljID0gc2VsZi5fc2V0X2RhZW1vbigpCisgICAgICAgIGlmIGRhZW1vbiBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2RhZW1vbmljID0gZGFlbW9uCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLl9kYWVtb25pYyA9IGN1cnJlbnRfdGhyZWFkKCkuZGFlbW9uCiAgICAgICAgIHNlbGYuX2lkZW50ID0gTm9uZQogICAgICAgICBzZWxmLl9zdGFydGVkID0gRXZlbnQoKQogICAgICAgICBzZWxmLl9zdG9wcGVkID0gRmFsc2UKQEAgLTY1MiwxMCArNTU3LDYgQEAKICAgICAgICAgICAgIHNlbGYuX2Jsb2NrLl9faW5pdF9fKCkKICAgICAgICAgc2VsZi5fc3RhcnRlZC5fcmVzZXRfaW50ZXJuYWxfbG9ja3MoKQogCi0gICAgZGVmIF9zZXRfZGFlbW9uKHNlbGYpOgotICAgICAgICAjIE92ZXJyaWRkZW4gaW4gX01haW5UaHJlYWQgYW5kIF9EdW1teVRocmVhZAotICAgICAgICByZXR1cm4gY3VycmVudF90aHJlYWQoKS5kYWVtb24KLQogICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKICAgICAgICAgYXNzZXJ0IHNlbGYuX2luaXRpYWxpemVkLCAiVGhyZWFkLl9faW5pdF9fKCkgd2FzIG5vdCBjYWxsZWQiCiAgICAgICAgIHN0YXR1cyA9ICJpbml0aWFsIgpAQCAtNjc1LDggKzU3Niw2IEBACiAKICAgICAgICAgaWYgc2VsZi5fc3RhcnRlZC5pc19zZXQoKToKICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigidGhyZWFkcyBjYW4gb25seSBiZSBzdGFydGVkIG9uY2UiKQotICAgICAgICBpZiBfX2RlYnVnX186Ci0gICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy5zdGFydCgpOiBzdGFydGluZyB0aHJlYWQiLCBzZWxmKQogICAgICAgICB3aXRoIF9hY3RpdmVfbGltYm9fbG9jazoKICAgICAgICAgICAgIF9saW1ib1tzZWxmXSA9IHNlbGYKICAgICAgICAgdHJ5OgpAQCAtNzE3LDcgKzYxNiw3IEBACiAgICAgICAgICAgICByYWlzZQogCiAgICAgZGVmIF9zZXRfaWRlbnQoc2VsZik6Ci0gICAgICAgIHNlbGYuX2lkZW50ID0gX2dldF9pZGVudCgpCisgICAgICAgIHNlbGYuX2lkZW50ID0gZ2V0X2lkZW50KCkKIAogICAgIGRlZiBfYm9vdHN0cmFwX2lubmVyKHNlbGYpOgogICAgICAgICB0cnk6CkBAIC03MjYsMjQgKzYyNSwxNyBAQAogICAgICAgICAgICAgd2l0aCBfYWN0aXZlX2xpbWJvX2xvY2s6CiAgICAgICAgICAgICAgICAgX2FjdGl2ZVtzZWxmLl9pZGVudF0gPSBzZWxmCiAgICAgICAgICAgICAgICAgZGVsIF9saW1ib1tzZWxmXQotICAgICAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgICAgIHNlbGYuX25vdGUoIiVzLl9ib290c3RyYXAoKTogdGhyZWFkIHN0YXJ0ZWQiLCBzZWxmKQogCiAgICAgICAgICAgICBpZiBfdHJhY2VfaG9vazoKLSAgICAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy5fYm9vdHN0cmFwKCk6IHJlZ2lzdGVyaW5nIHRyYWNlIGhvb2siLCBzZWxmKQogICAgICAgICAgICAgICAgIF9zeXMuc2V0dHJhY2UoX3RyYWNlX2hvb2spCiAgICAgICAgICAgICBpZiBfcHJvZmlsZV9ob29rOgotICAgICAgICAgICAgICAgIHNlbGYuX25vdGUoIiVzLl9ib290c3RyYXAoKTogcmVnaXN0ZXJpbmcgcHJvZmlsZSBob29rIiwgc2VsZikKICAgICAgICAgICAgICAgICBfc3lzLnNldHByb2ZpbGUoX3Byb2ZpbGVfaG9vaykKIAogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHNlbGYucnVuKCkKICAgICAgICAgICAgIGV4Y2VwdCBTeXN0ZW1FeGl0OgotICAgICAgICAgICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMuX2Jvb3RzdHJhcCgpOiByYWlzZWQgU3lzdGVtRXhpdCIsIHNlbGYpCisgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICAgICAgZXhjZXB0OgotICAgICAgICAgICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMuX2Jvb3RzdHJhcCgpOiB1bmhhbmRsZWQgZXhjZXB0aW9uIiwgc2VsZikKICAgICAgICAgICAgICAgICAjIElmIHN5cy5zdGRlcnIgaXMgbm8gbW9yZSAobW9zdCBsaWtlbHkgZnJvbSBpbnRlcnByZXRlcgogICAgICAgICAgICAgICAgICMgc2h1dGRvd24pIHVzZSBzZWxmLl9zdGRlcnIuICBPdGhlcndpc2Ugc3RpbGwgdXNlIHN5cyAoYXMgaW4KICAgICAgICAgICAgICAgICAjIF9zeXMpIGluIGNhc2Ugc3lzLnN0ZGVyciB3YXMgcmVkZWZpbmVkIHNpbmNlIHRoZSBjcmVhdGlvbiBvZgpAQCAtNzc0LDkgKzY2Niw2IEBACiAgICAgICAgICAgICAgICAgICAgICMgaG9nOyBkZWxldGluZyBldmVyeXRoaW5nIGVsc2UgaXMganVzdCBmb3IgdGhvcm91Z2huZXNzCiAgICAgICAgICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgICAgICAgICBkZWwgZXhjX3R5cGUsIGV4Y192YWx1ZSwgZXhjX3RiCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMuX2Jvb3RzdHJhcCgpOiBub3JtYWwgcmV0dXJuIiwgc2VsZikKICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgIyBQcmV2ZW50IGEgcmFjZSBpbgogICAgICAgICAgICAgICAgICMgdGVzdF90aHJlYWRpbmcudGVzdF9ub19yZWZjeWNsZV90aHJvdWdoX3RhcmdldCB3aGVuCkBAIC03OTAsNyArNjc5LDcgQEAKICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgICMgV2UgZG9uJ3QgY2FsbCBzZWxmLl9kZWxldGUoKSBiZWNhdXNlIGl0IGFsc28KICAgICAgICAgICAgICAgICAgICAgIyBncmFicyBfYWN0aXZlX2xpbWJvX2xvY2suCi0gICAgICAgICAgICAgICAgICAgIGRlbCBfYWN0aXZlW19nZXRfaWRlbnQoKV0KKyAgICAgICAgICAgICAgICAgICAgZGVsIF9hY3RpdmVbZ2V0X2lkZW50KCldCiAgICAgICAgICAgICAgICAgZXhjZXB0OgogICAgICAgICAgICAgICAgICAgICBwYXNzCiAKQEAgLTgyNiw3ICs3MTUsNyBAQAogCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHdpdGggX2FjdGl2ZV9saW1ib19sb2NrOgotICAgICAgICAgICAgICAgIGRlbCBfYWN0aXZlW19nZXRfaWRlbnQoKV0KKyAgICAgICAgICAgICAgICBkZWwgX2FjdGl2ZVtnZXRfaWRlbnQoKV0KICAgICAgICAgICAgICAgICAjIFRoZXJlIG11c3Qgbm90IGJlIGFueSBweXRob24gY29kZSBiZXR3ZWVuIHRoZSBwcmV2aW91cyBsaW5lCiAgICAgICAgICAgICAgICAgIyBhbmQgYWZ0ZXIgdGhlIGxvY2sgaXMgcmVsZWFzZWQuICBPdGhlcndpc2UgYSB0cmFjaW5nIGZ1bmN0aW9uCiAgICAgICAgICAgICAgICAgIyBjb3VsZCB0cnkgdG8gYWNxdWlyZSB0aGUgbG9jayBhZ2FpbiBpbiB0aGUgc2FtZSB0aHJlYWQsIChpbgpAQCAtODQzLDI5ICs3MzIsMTggQEAKICAgICAgICAgaWYgc2VsZiBpcyBjdXJyZW50X3RocmVhZCgpOgogICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJjYW5ub3Qgam9pbiBjdXJyZW50IHRocmVhZCIpCiAKLSAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgaWYgbm90IHNlbGYuX3N0b3BwZWQ6Ci0gICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMuam9pbigpOiB3YWl0aW5nIHVudGlsIHRocmVhZCBzdG9wcyIsIHNlbGYpCi0KICAgICAgICAgc2VsZi5fYmxvY2suYWNxdWlyZSgpCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGlmIHRpbWVvdXQgaXMgTm9uZToKICAgICAgICAgICAgICAgICB3aGlsZSBub3Qgc2VsZi5fc3RvcHBlZDoKICAgICAgICAgICAgICAgICAgICAgc2VsZi5fYmxvY2sud2FpdCgpCi0gICAgICAgICAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy5qb2luKCk6IHRocmVhZCBzdG9wcGVkIiwgc2VsZikKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgZGVhZGxpbmUgPSBfdGltZSgpICsgdGltZW91dAogICAgICAgICAgICAgICAgIHdoaWxlIG5vdCBzZWxmLl9zdG9wcGVkOgogICAgICAgICAgICAgICAgICAgICBkZWxheSA9IGRlYWRsaW5lIC0gX3RpbWUoKQogICAgICAgICAgICAgICAgICAgICBpZiBkZWxheSA8PSAwOgotICAgICAgICAgICAgICAgICAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX25vdGUoIiVzLmpvaW4oKTogdGltZWQgb3V0Iiwgc2VsZikKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2Jsb2NrLndhaXQoZGVsYXkpCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgaWYgX19kZWJ1Z19fOgotICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fbm90ZSgiJXMuam9pbigpOiB0aHJlYWQgc3RvcHBlZCIsIHNlbGYpCiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICBzZWxmLl9ibG9jay5yZWxlYXNlKCkKIApAQCAtOTE3LDEwICs3OTUsNyBAQAogCiAjIFRoZSB0aW1lciBjbGFzcyB3YXMgY29udHJpYnV0ZWQgYnkgSXRhbWFyIFNodHVsbC1UcmF1cmluZwogCi1kZWYgVGltZXIoKmFyZ3MsICoqa3dhcmdzKToKLSAgICByZXR1cm4gX1RpbWVyKCphcmdzLCAqKmt3YXJncykKLQotY2xhc3MgX1RpbWVyKFRocmVhZCk6CitjbGFzcyBUaW1lcihUaHJlYWQpOgogICAgICIiIkNhbGwgYSBmdW5jdGlvbiBhZnRlciBhIHNwZWNpZmllZCBudW1iZXIgb2Ygc2Vjb25kczoKIAogICAgIHQgPSBUaW1lcigzMC4wLCBmLCBhcmdzPVtdLCBrd2FyZ3M9e30pCkBAIC05NTIsMjYgKzgyNywxOCBAQAogY2xhc3MgX01haW5UaHJlYWQoVGhyZWFkKToKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKLSAgICAgICAgVGhyZWFkLl9faW5pdF9fKHNlbGYsIG5hbWU9Ik1haW5UaHJlYWQiKQorICAgICAgICBUaHJlYWQuX19pbml0X18oc2VsZiwgbmFtZT0iTWFpblRocmVhZCIsIGRhZW1vbj1GYWxzZSkKICAgICAgICAgc2VsZi5fc3RhcnRlZC5zZXQoKQogICAgICAgICBzZWxmLl9zZXRfaWRlbnQoKQogICAgICAgICB3aXRoIF9hY3RpdmVfbGltYm9fbG9jazoKICAgICAgICAgICAgIF9hY3RpdmVbc2VsZi5faWRlbnRdID0gc2VsZgogCi0gICAgZGVmIF9zZXRfZGFlbW9uKHNlbGYpOgotICAgICAgICByZXR1cm4gRmFsc2UKLQogICAgIGRlZiBfZXhpdGZ1bmMoc2VsZik6CiAgICAgICAgIHNlbGYuX3N0b3AoKQogICAgICAgICB0ID0gX3BpY2tTb21lTm9uRGFlbW9uVGhyZWFkKCkKLSAgICAgICAgaWYgdDoKLSAgICAgICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlczogd2FpdGluZyBmb3Igb3RoZXIgdGhyZWFkcyIsIHNlbGYpCiAgICAgICAgIHdoaWxlIHQ6CiAgICAgICAgICAgICB0LmpvaW4oKQogICAgICAgICAgICAgdCA9IF9waWNrU29tZU5vbkRhZW1vblRocmVhZCgpCi0gICAgICAgIGlmIF9fZGVidWdfXzoKLSAgICAgICAgICAgIHNlbGYuX25vdGUoIiVzOiBleGl0aW5nIiwgc2VsZikKICAgICAgICAgc2VsZi5fZGVsZXRlKCkKIAogZGVmIF9waWNrU29tZU5vbkRhZW1vblRocmVhZCgpOgpAQCAtOTkyLDcgKzg1OSw3IEBACiBjbGFzcyBfRHVtbXlUaHJlYWQoVGhyZWFkKToKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKLSAgICAgICAgVGhyZWFkLl9faW5pdF9fKHNlbGYsIG5hbWU9X25ld25hbWUoIkR1bW15LSVkIikpCisgICAgICAgIFRocmVhZC5fX2luaXRfXyhzZWxmLCBuYW1lPV9uZXduYW1lKCJEdW1teS0lZCIpLCBkYWVtb249VHJ1ZSkKIAogICAgICAgICAjIFRocmVhZC5fYmxvY2sgY29uc3VtZXMgYW4gT1MtbGV2ZWwgbG9ja2luZyBwcmltaXRpdmUsIHdoaWNoCiAgICAgICAgICMgY2FuIG5ldmVyIGJlIHVzZWQgYnkgYSBfRHVtbXlUaHJlYWQuICBTaW5jZSBhIF9EdW1teVRocmVhZApAQCAtMTAwNCw5ICs4NzEsNiBAQAogICAgICAgICB3aXRoIF9hY3RpdmVfbGltYm9fbG9jazoKICAgICAgICAgICAgIF9hY3RpdmVbc2VsZi5faWRlbnRdID0gc2VsZgogCi0gICAgZGVmIF9zZXRfZGFlbW9uKHNlbGYpOgotICAgICAgICByZXR1cm4gVHJ1ZQotCiAgICAgZGVmIGpvaW4oc2VsZiwgdGltZW91dD1Ob25lKToKICAgICAgICAgYXNzZXJ0IEZhbHNlLCAiY2Fubm90IGpvaW4gYSBkdW1teSB0aHJlYWQiCiAKQEAgLTEwMTUsOSArODc5LDggQEAKIAogZGVmIGN1cnJlbnRfdGhyZWFkKCk6CiAgICAgdHJ5OgotICAgICAgICByZXR1cm4gX2FjdGl2ZVtfZ2V0X2lkZW50KCldCisgICAgICAgIHJldHVybiBfYWN0aXZlW2dldF9pZGVudCgpXQogICAgIGV4Y2VwdCBLZXlFcnJvcjoKLSAgICAgICAgIyNwcmludCAiY3VycmVudF90aHJlYWQoKTogbm8gY3VycmVudCB0aHJlYWQgZm9yIiwgX2dldF9pZGVudCgpCiAgICAgICAgIHJldHVybiBfRHVtbXlUaHJlYWQoKQogCiBjdXJyZW50VGhyZWFkID0gY3VycmVudF90aHJlYWQKQEAgLTEwNzQsNyArOTM3LDcgQEAKICAgICAgICAgICAgIGlmIHRocmVhZCBpcyBjdXJyZW50OgogICAgICAgICAgICAgICAgICMgVGhlcmUgaXMgb25seSBvbmUgYWN0aXZlIHRocmVhZC4gV2UgcmVzZXQgdGhlIGlkZW50IHRvCiAgICAgICAgICAgICAgICAgIyBpdHMgbmV3IHZhbHVlIHNpbmNlIGl0IGNhbiBoYXZlIGNoYW5nZWQuCi0gICAgICAgICAgICAgICAgaWRlbnQgPSBfZ2V0X2lkZW50KCkKKyAgICAgICAgICAgICAgICBpZGVudCA9IGdldF9pZGVudCgpCiAgICAgICAgICAgICAgICAgdGhyZWFkLl9pZGVudCA9IGlkZW50CiAgICAgICAgICAgICAgICAgbmV3X2FjdGl2ZVtpZGVudF0gPSB0aHJlYWQKICAgICAgICAgICAgIGVsc2U6CmRpZmYgLS1naXQgYS9MaWIvdGltZWl0LnB5IGIvTGliL3RpbWVpdC5weQppbmRleCAxYWU1OWUwLi5mZGMwYmJiIDEwMDY0NAotLS0gYS9MaWIvdGltZWl0LnB5CisrKyBiL0xpYi90aW1laXQucHkKQEAgLTc5LDEwICs3OSwxMCBAQAogIyBiZWluZyBpbmRlbnRlZCA4IHNwYWNlcy4KIHRlbXBsYXRlID0gIiIiCiBkZWYgaW5uZXIoX2l0LCBfdGltZXIpOgotICAgICUoc2V0dXApcworICAgIHtzZXR1cH0KICAgICBfdDAgPSBfdGltZXIoKQogICAgIGZvciBfaSBpbiBfaXQ6Ci0gICAgICAgICUoc3RtdClzCisgICAgICAgIHtzdG10fQogICAgIF90MSA9IF90aW1lcigpCiAgICAgcmV0dXJuIF90MSAtIF90MAogIiIiCkBAIC0xMjYsOSArMTI2LDkgQEAKICAgICAgICAgICAgIHN0bXQgPSByZWluZGVudChzdG10LCA4KQogICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShzZXR1cCwgc3RyKToKICAgICAgICAgICAgICAgICBzZXR1cCA9IHJlaW5kZW50KHNldHVwLCA0KQotICAgICAgICAgICAgICAgIHNyYyA9IHRlbXBsYXRlICUgeydzdG10Jzogc3RtdCwgJ3NldHVwJzogc2V0dXB9CisgICAgICAgICAgICAgICAgc3JjID0gdGVtcGxhdGUuZm9ybWF0KHN0bXQ9c3RtdCwgc2V0dXA9c2V0dXApCiAgICAgICAgICAgICBlbGlmIGNhbGxhYmxlKHNldHVwKToKLSAgICAgICAgICAgICAgICBzcmMgPSB0ZW1wbGF0ZSAlIHsnc3RtdCc6IHN0bXQsICdzZXR1cCc6ICdfc2V0dXAoKSd9CisgICAgICAgICAgICAgICAgc3JjID0gdGVtcGxhdGUuZm9ybWF0KHN0bXQ9c3RtdCwgc2V0dXA9J19zZXR1cCgpJykKICAgICAgICAgICAgICAgICBuc1snX3NldHVwJ10gPSBzZXR1cAogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJzZXR1cCBpcyBuZWl0aGVyIGEgc3RyaW5nIG5vciBjYWxsYWJsZSIpCmRpZmYgLS1naXQgYS9MaWIvdGtpbnRlci9fX2luaXRfXy5weSBiL0xpYi90a2ludGVyL19faW5pdF9fLnB5CmluZGV4IDhhZjUwNjUuLmY0Zjk1ODMgMTAwNjQ0Ci0tLSBhL0xpYi90a2ludGVyL19faW5pdF9fLnB5CisrKyBiL0xpYi90a2ludGVyL19faW5pdF9fLnB5CkBAIC0zMCw4ICszMCw2IEBACiB0ay5tYWlubG9vcCgpCiAiIiIKIAotX192ZXJzaW9uX18gPSAiJFJldmlzaW9uJCIKLQogaW1wb3J0IHN5cwogaWYgc3lzLnBsYXRmb3JtID09ICJ3aW4zMiI6CiAgICAgIyBBdHRlbXB0IHRvIGNvbmZpZ3VyZSBUY2wvVGsgd2l0aG91dCByZXF1aXJpbmcgUEFUSApAQCAtMTE2MSw3ICsxMTU5LDYgQEAKICAgICAgICAgcmV0dXJuIChlLCkKICAgICBkZWYgX3JlcG9ydF9leGNlcHRpb24oc2VsZik6CiAgICAgICAgICIiIkludGVybmFsIGZ1bmN0aW9uLiIiIgotICAgICAgICBpbXBvcnQgc3lzCiAgICAgICAgIGV4YywgdmFsLCB0YiA9IHN5cy5leGNfaW5mbygpCiAgICAgICAgIHJvb3QgPSBzZWxmLl9yb290KCkKICAgICAgICAgcm9vdC5yZXBvcnRfY2FsbGJhY2tfZXhjZXB0aW9uKGV4YywgdmFsLCB0YikKQEAgLTE2NjUsNyArMTY2Miw3IEBACiAgICAgICAgICMgZW5zdXJlIHRoYXQgc2VsZi50ayBpcyBhbHdheXMgX3NvbWV0aGluZ18uCiAgICAgICAgIHNlbGYudGsgPSBOb25lCiAgICAgICAgIGlmIGJhc2VOYW1lIGlzIE5vbmU6Ci0gICAgICAgICAgICBpbXBvcnQgc3lzLCBvcworICAgICAgICAgICAgaW1wb3J0IG9zCiAgICAgICAgICAgICBiYXNlTmFtZSA9IG9zLnBhdGguYmFzZW5hbWUoc3lzLmFyZ3ZbMF0pCiAgICAgICAgICAgICBiYXNlTmFtZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChiYXNlTmFtZSkKICAgICAgICAgICAgIGlmIGV4dCBub3QgaW4gKCcucHknLCAnLnB5YycsICcucHlvJyk6CkBAIC0xNzM5LDcgKzE3MzYsNyBAQAogICAgICAgICAgICAgZXhlYyhvcGVuKGJhc2VfcHkpLnJlYWQoKSwgZGlyKQogICAgIGRlZiByZXBvcnRfY2FsbGJhY2tfZXhjZXB0aW9uKHNlbGYsIGV4YywgdmFsLCB0Yik6CiAgICAgICAgICIiIkludGVybmFsIGZ1bmN0aW9uLiBJdCByZXBvcnRzIGV4Y2VwdGlvbiBvbiBzeXMuc3RkZXJyLiIiIgotICAgICAgICBpbXBvcnQgdHJhY2ViYWNrLCBzeXMKKyAgICAgICAgaW1wb3J0IHRyYWNlYmFjawogICAgICAgICBzeXMuc3RkZXJyLndyaXRlKCJFeGNlcHRpb24gaW4gVGtpbnRlciBjYWxsYmFja1xuIikKICAgICAgICAgc3lzLmxhc3RfdHlwZSA9IGV4YwogICAgICAgICBzeXMubGFzdF92YWx1ZSA9IHZhbApkaWZmIC0tZ2l0IGEvTGliL3RraW50ZXIvZmlsZWRpYWxvZy5weSBiL0xpYi90a2ludGVyL2ZpbGVkaWFsb2cucHkKaW5kZXggOThkMmQ1Yy4uM2ZmYjI1MiAxMDA2NDQKLS0tIGEvTGliL3RraW50ZXIvZmlsZWRpYWxvZy5weQorKysgYi9MaWIvdGtpbnRlci9maWxlZGlhbG9nLnB5CkBAIC0zMDYsNyArMzA2LDYgQEAKICAgICBkZWYgX2ZpeHJlc3VsdChzZWxmLCB3aWRnZXQsIHJlc3VsdCk6CiAgICAgICAgIGlmIHJlc3VsdDoKICAgICAgICAgICAgICMga2VlcCBkaXJlY3RvcnkgYW5kIGZpbGVuYW1lIHVudGlsIG5leHQgdGltZQotICAgICAgICAgICAgaW1wb3J0IG9zCiAgICAgICAgICAgICAjIGNvbnZlcnQgVGNsIHBhdGggb2JqZWN0cyB0byBzdHJpbmdzCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LnN0cmluZwpAQCAtMzMzLDcgKzMzMiw2IEBACiAgICAgICAgICAgICAjIG11bHRpcGxlIHJlc3VsdHM6CiAgICAgICAgICAgICByZXN1bHQgPSB0dXBsZShbZ2V0YXR0cihyLCAic3RyaW5nIiwgcikgZm9yIHIgaW4gcmVzdWx0XSkKICAgICAgICAgICAgIGlmIHJlc3VsdDoKLSAgICAgICAgICAgICAgICBpbXBvcnQgb3MKICAgICAgICAgICAgICAgICBwYXRoLCBmaWxlID0gb3MucGF0aC5zcGxpdChyZXN1bHRbMF0pCiAgICAgICAgICAgICAgICAgc2VsZi5vcHRpb25zWyJpbml0aWFsZGlyIl0gPSBwYXRoCiAgICAgICAgICAgICAgICAgIyBkb24ndCBzZXQgaW5pdGlhbGZpbGUgb3IgZmlsZW5hbWUsIGFzIHdlIGhhdmUgbXVsdGlwbGUgb2YgdGhlc2UKZGlmZiAtLWdpdCBhL0xpYi90b2tlbml6ZS5weSBiL0xpYi90b2tlbml6ZS5weQppbmRleCBmNTc1ZTliLi43NDE0MTdhIDEwMDY0NAotLS0gYS9MaWIvdG9rZW5pemUucHkKKysrIGIvTGliL3Rva2VuaXplLnB5CkBAIC00NSw2ICs0NSw1MSBAQAogRU5DT0RJTkcgPSBOX1RPS0VOUyArIDIKIHRva19uYW1lW0VOQ09ESU5HXSA9ICdFTkNPRElORycKIE5fVE9LRU5TICs9IDMKK0VYQUNUX1RPS0VOX1RZUEVTID0geworICAgICcoJzogICBMUEFSLAorICAgICcpJzogICBSUEFSLAorICAgICdbJzogICBMU1FCLAorICAgICddJzogICBSU1FCLAorICAgICc6JzogICBDT0xPTiwKKyAgICAnLCc6ICAgQ09NTUEsCisgICAgJzsnOiAgIFNFTUksCisgICAgJysnOiAgIFBMVVMsCisgICAgJy0nOiAgIE1JTlVTLAorICAgICcqJzogICBTVEFSLAorICAgICcvJzogICBTTEFTSCwKKyAgICAnfCc6ICAgVkJBUiwKKyAgICAnJic6ICAgQU1QRVIsCisgICAgJzwnOiAgIExFU1MsCisgICAgJz4nOiAgIEdSRUFURVIsCisgICAgJz0nOiAgIEVRVUFMLAorICAgICcuJzogICBET1QsCisgICAgJyUnOiAgIFBFUkNFTlQsCisgICAgJ3snOiAgIExCUkFDRSwKKyAgICAnfSc6ICAgUkJSQUNFLAorICAgICc9PSc6ICBFUUVRVUFMLAorICAgICchPSc6ICBOT1RFUVVBTCwKKyAgICAnPD0nOiAgTEVTU0VRVUFMLAorICAgICc+PSc6ICBHUkVBVEVSRVFVQUwsCisgICAgJ34nOiAgIFRJTERFLAorICAgICdeJzogICBDSVJDVU1GTEVYLAorICAgICc8PCc6ICBMRUZUU0hJRlQsCisgICAgJz4+JzogIFJJR0hUU0hJRlQsCisgICAgJyoqJzogIERPVUJMRVNUQVIsCisgICAgJys9JzogIFBMVVNFUVVBTCwKKyAgICAnLT0nOiAgTUlORVFVQUwsCisgICAgJyo9JzogIFNUQVJFUVVBTCwKKyAgICAnLz0nOiAgU0xBU0hFUVVBTCwKKyAgICAnJT0nOiAgUEVSQ0VOVEVRVUFMLAorICAgICcmPSc6ICBBTVBFUkVRVUFMLAorICAgICd8PSc6ICBWQkFSRVFVQUwsCisgICAgJ149JzogQ0lSQ1VNRkxFWEVRVUFMLAorICAgICc8PD0nOiBMRUZUU0hJRlRFUVVBTCwKKyAgICAnPj49JzogUklHSFRTSElGVEVRVUFMLAorICAgICcqKj0nOiBET1VCTEVTVEFSRVFVQUwsCisgICAgJy8vJzogIERPVUJMRVNMQVNILAorICAgICcvLz0nOiBET1VCTEVTTEFTSEVRVUFMLAorICAgICdAJzogICBBVAorfQogCiBjbGFzcyBUb2tlbkluZm8oY29sbGVjdGlvbnMubmFtZWR0dXBsZSgnVG9rZW5JbmZvJywgJ3R5cGUgc3RyaW5nIHN0YXJ0IGVuZCBsaW5lJykpOgogICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKQEAgLTUyLDYgKzk3LDEzIEBACiAgICAgICAgIHJldHVybiAoJ1Rva2VuSW5mbyh0eXBlPSVzLCBzdHJpbmc9JXIsIHN0YXJ0PSVyLCBlbmQ9JXIsIGxpbmU9JXIpJyAlCiAgICAgICAgICAgICAgICAgc2VsZi5fcmVwbGFjZSh0eXBlPWFubm90YXRlZF90eXBlKSkKIAorICAgIEBwcm9wZXJ0eQorICAgIGRlZiBleGFjdF90eXBlKHNlbGYpOgorICAgICAgICBpZiBzZWxmLnR5cGUgPT0gT1AgYW5kIHNlbGYuc3RyaW5nIGluIEVYQUNUX1RPS0VOX1RZUEVTOgorICAgICAgICAgICAgcmV0dXJuIEVYQUNUX1RPS0VOX1RZUEVTW3NlbGYuc3RyaW5nXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYudHlwZQorCiBkZWYgZ3JvdXAoKmNob2ljZXMpOiByZXR1cm4gJygnICsgJ3wnLmpvaW4oY2hvaWNlcykgKyAnKScKIGRlZiBhbnkoKmNob2ljZXMpOiByZXR1cm4gZ3JvdXAoKmNob2ljZXMpICsgJyonCiBkZWYgbWF5YmUoKmNob2ljZXMpOiByZXR1cm4gZ3JvdXAoKmNob2ljZXMpICsgJz8nCkBAIC03NSw2ICsxMjcsOCBAQAogSW1hZ251bWJlciA9IGdyb3VwKHInWzAtOV0rW2pKXScsIEZsb2F0bnVtYmVyICsgcidbakpdJykKIE51bWJlciA9IGdyb3VwKEltYWdudW1iZXIsIEZsb2F0bnVtYmVyLCBJbnRudW1iZXIpCiAKK1N0cmluZ1ByZWZpeCA9IHInKD86W3VVXVtyUl0/fFtiQl1bclJdfFtyUl1bYkJdfFtyUl18W3VVXSk/JworCiAjIFRhaWwgZW5kIG9mICcgc3RyaW5nLgogU2luZ2xlID0gciJbXidcXF0qKD86XFwuW14nXFxdKikqJyIKICMgVGFpbCBlbmQgb2YgIiBzdHJpbmcuCkBAIC04MywxMCArMTM3LDEwIEBACiBTaW5nbGUzID0gciJbXidcXF0qKD86KD86XFwufCcoPyEnJykpW14nXFxdKikqJycnIgogIyBUYWlsIGVuZCBvZiAiIiIgc3RyaW5nLgogRG91YmxlMyA9IHInW14iXFxdKig/Oig/OlxcLnwiKD8hIiIpKVteIlxcXSopKiIiIicKLVRyaXBsZSA9IGdyb3VwKCJbYkJdP1tyUl0/JycnIiwgJ1tiQl0/W3JSXT8iIiInKQorVHJpcGxlID0gZ3JvdXAoU3RyaW5nUHJlZml4ICsgIicnJyIsIFN0cmluZ1ByZWZpeCArICciIiInKQogIyBTaW5nbGUtbGluZSAnIG9yICIgc3RyaW5nLgotU3RyaW5nID0gZ3JvdXAociJbYkJdP1tyUl0/J1teXG4nXFxdKig/OlxcLlteXG4nXFxdKikqJyIsCi0gICAgICAgICAgICAgICByJ1tiQl0/W3JSXT8iW15cbiJcXF0qKD86XFwuW15cbiJcXF0qKSoiJykKK1N0cmluZyA9IGdyb3VwKFN0cmluZ1ByZWZpeCArIHIiJ1teXG4nXFxdKig/OlxcLlteXG4nXFxdKikqJyIsCisgICAgICAgICAgICAgICBTdHJpbmdQcmVmaXggKyByJyJbXlxuIlxcXSooPzpcXC5bXlxuIlxcXSopKiInKQogCiAjIEJlY2F1c2Ugb2YgbGVmdG1vc3QtdGhlbi1sb25nZXN0IG1hdGNoIHNlbWFudGljcywgYmUgc3VyZSB0byBwdXQgdGhlCiAjIGxvbmdlc3Qgb3BlcmF0b3JzIGZpcnN0IChlLmcuLCBpZiA9IGNhbWUgYmVmb3JlID09LCA9PSB3b3VsZCBnZXQKQEAgLTEwNCw5ICsxNTgsOSBAQAogVG9rZW4gPSBJZ25vcmUgKyBQbGFpblRva2VuCiAKICMgRmlyc3QgKG9yIG9ubHkpIGxpbmUgb2YgJyBvciAiIHN0cmluZy4KLUNvbnRTdHIgPSBncm91cChyIltiQl0/W3JSXT8nW15cbidcXF0qKD86XFwuW15cbidcXF0qKSoiICsKK0NvbnRTdHIgPSBncm91cChTdHJpbmdQcmVmaXggKyByIidbXlxuJ1xcXSooPzpcXC5bXlxuJ1xcXSopKiIgKwogICAgICAgICAgICAgICAgIGdyb3VwKCInIiwgcidcXFxyP1xuJyksCi0gICAgICAgICAgICAgICAgcidbYkJdP1tyUl0/IlteXG4iXFxdKig/OlxcLlteXG4iXFxdKikqJyArCisgICAgICAgICAgICAgICAgU3RyaW5nUHJlZml4ICsgciciW15cbiJcXF0qKD86XFwuW15cbiJcXF0qKSonICsKICAgICAgICAgICAgICAgICBncm91cCgnIicsIHInXFxccj9cbicpKQogUHNldWRvRXh0cmFzID0gZ3JvdXAocidcXFxyP1xuJywgQ29tbWVudCwgVHJpcGxlKQogUHNldWRvVG9rZW4gPSBXaGl0ZXNwYWNlICsgZ3JvdXAoUHNldWRvRXh0cmFzLCBOdW1iZXIsIEZ1bm55LCBDb250U3RyLCBOYW1lKQpAQCAtMTE0LDM3ICsxNjgsNTUgQEAKIGRlZiBfY29tcGlsZShleHByKToKICAgICByZXR1cm4gcmUuY29tcGlsZShleHByLCByZS5VTklDT0RFKQogCi10b2tlbnByb2csIHBzZXVkb3Byb2csIHNpbmdsZTNwcm9nLCBkb3VibGUzcHJvZyA9IG1hcCgKLSAgICBfY29tcGlsZSwgKFRva2VuLCBQc2V1ZG9Ub2tlbiwgU2luZ2xlMywgRG91YmxlMykpCi1lbmRwcm9ncyA9IHsiJyI6IF9jb21waWxlKFNpbmdsZSksICciJzogX2NvbXBpbGUoRG91YmxlKSwKLSAgICAgICAgICAgICInJyciOiBzaW5nbGUzcHJvZywgJyIiIic6IGRvdWJsZTNwcm9nLAotICAgICAgICAgICAgInInJyciOiBzaW5nbGUzcHJvZywgJ3IiIiInOiBkb3VibGUzcHJvZywKLSAgICAgICAgICAgICJiJycnIjogc2luZ2xlM3Byb2csICdiIiIiJzogZG91YmxlM3Byb2csCi0gICAgICAgICAgICAiYnInJyciOiBzaW5nbGUzcHJvZywgJ2JyIiIiJzogZG91YmxlM3Byb2csCi0gICAgICAgICAgICAiUicnJyI6IHNpbmdsZTNwcm9nLCAnUiIiIic6IGRvdWJsZTNwcm9nLAotICAgICAgICAgICAgIkInJyciOiBzaW5nbGUzcHJvZywgJ0IiIiInOiBkb3VibGUzcHJvZywKLSAgICAgICAgICAgICJiUicnJyI6IHNpbmdsZTNwcm9nLCAnYlIiIiInOiBkb3VibGUzcHJvZywKLSAgICAgICAgICAgICJCcicnJyI6IHNpbmdsZTNwcm9nLCAnQnIiIiInOiBkb3VibGUzcHJvZywKLSAgICAgICAgICAgICJCUicnJyI6IHNpbmdsZTNwcm9nLCAnQlIiIiInOiBkb3VibGUzcHJvZywKLSAgICAgICAgICAgICdyJzogTm9uZSwgJ1InOiBOb25lLCAnYic6IE5vbmUsICdCJzogTm9uZX0KK2VuZHBhdHMgPSB7IiciOiBTaW5nbGUsICciJzogRG91YmxlLAorICAgICAgICAgICAiJycnIjogU2luZ2xlMywgJyIiIic6IERvdWJsZTMsCisgICAgICAgICAgICJyJycnIjogU2luZ2xlMywgJ3IiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiYicnJyI6IFNpbmdsZTMsICdiIiIiJzogRG91YmxlMywKKyAgICAgICAgICAgIlInJyciOiBTaW5nbGUzLCAnUiIiIic6IERvdWJsZTMsCisgICAgICAgICAgICJCJycnIjogU2luZ2xlMywgJ0IiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiYnInJyciOiBTaW5nbGUzLCAnYnIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiYlInJyciOiBTaW5nbGUzLCAnYlIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiQnInJyciOiBTaW5nbGUzLCAnQnIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiQlInJyciOiBTaW5nbGUzLCAnQlIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAicmInJyciOiBTaW5nbGUzLCAncmIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiUmInJyciOiBTaW5nbGUzLCAnUmIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAickInJyciOiBTaW5nbGUzLCAnckIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiUkInJyciOiBTaW5nbGUzLCAnUkIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAidScnJyI6IFNpbmdsZTMsICd1IiIiJzogRG91YmxlMywKKyAgICAgICAgICAgInVyJycnIjogU2luZ2xlMywgJ3VyIiIiJzogRG91YmxlMywKKyAgICAgICAgICAgIlInJyciOiBTaW5nbGUzLCAnUiIiIic6IERvdWJsZTMsCisgICAgICAgICAgICJVJycnIjogU2luZ2xlMywgJ1UiIiInOiBEb3VibGUzLAorICAgICAgICAgICAidVInJyciOiBTaW5nbGUzLCAndVIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiVXInJyciOiBTaW5nbGUzLCAnVXIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiVVInJyciOiBTaW5nbGUzLCAnVVIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAncic6IE5vbmUsICdSJzogTm9uZSwgJ2InOiBOb25lLCAnQic6IE5vbmUsCisgICAgICAgICAgICd1JzogTm9uZSwgJ1UnOiBOb25lfQogCiB0cmlwbGVfcXVvdGVkID0ge30KIGZvciB0IGluICgiJycnIiwgJyIiIicsCiAgICAgICAgICAgInInJyciLCAnciIiIicsICJSJycnIiwgJ1IiIiInLAogICAgICAgICAgICJiJycnIiwgJ2IiIiInLCAiQicnJyIsICdCIiIiJywKICAgICAgICAgICAiYnInJyciLCAnYnIiIiInLCAiQnInJyciLCAnQnIiIiInLAotICAgICAgICAgICJiUicnJyIsICdiUiIiIicsICJCUicnJyIsICdCUiIiIicpOgorICAgICAgICAgICJiUicnJyIsICdiUiIiIicsICJCUicnJyIsICdCUiIiIicsCisgICAgICAgICAgInJiJycnIiwgJ3JiIiIiJywgInJCJycnIiwgJ3JCIiIiJywKKyAgICAgICAgICAiUmInJyciLCAnUmIiIiInLCAiUkInJyciLCAnUkIiIiInLAorICAgICAgICAgICJ1JycnIiwgJ3UiIiInLCAiVScnJyIsICdVIiIiJywKKyAgICAgICAgICAidXInJyciLCAndXIiIiInLCAiVXInJyciLCAnVXIiIiInLAorICAgICAgICAgICJ1UicnJyIsICd1UiIiIicsICJVUicnJyIsICdVUiIiIicpOgogICAgIHRyaXBsZV9xdW90ZWRbdF0gPSB0CiBzaW5nbGVfcXVvdGVkID0ge30KIGZvciB0IGluICgiJyIsICciJywKICAgICAgICAgICAiciciLCAnciInLCAiUiciLCAnUiInLAogICAgICAgICAgICJiJyIsICdiIicsICJCJyIsICdCIicsCiAgICAgICAgICAgImJyJyIsICdiciInLCAiQnInIiwgJ0JyIicsCi0gICAgICAgICAgImJSJyIsICdiUiInLCAiQlInIiwgJ0JSIicgKToKKyAgICAgICAgICAiYlInIiwgJ2JSIicsICJCUiciLCAnQlIiJyAsCisgICAgICAgICAgInJiJyIsICdyYiInLCAickInIiwgJ3JCIicsCisgICAgICAgICAgIlJiJyIsICdSYiInLCAiUkInIiwgJ1JCIicgLAorICAgICAgICAgICJ1JyIsICd1IicsICJVJyIsICdVIicsCisgICAgICAgICAgInVyJyIsICd1ciInLCAiVXInIiwgJ1VyIicsCisgICAgICAgICAgInVSJyIsICd1UiInLCAiVVInIiwgJ1VSIicgKToKICAgICBzaW5nbGVfcXVvdGVkW3RdID0gdAogCi1kZWwgX2NvbXBpbGUKLQogdGFic2l6ZSA9IDgKIAogY2xhc3MgVG9rZW5FcnJvcihFeGNlcHRpb24pOiBwYXNzCkBAIC00NjYsNyArNTM4LDcgQEAKICAgICAgICAgICAgIGNvbnRpbnVlZCA9IDAKIAogICAgICAgICB3aGlsZSBwb3MgPCBtYXg6Ci0gICAgICAgICAgICBwc2V1ZG9tYXRjaCA9IHBzZXVkb3Byb2cubWF0Y2gobGluZSwgcG9zKQorICAgICAgICAgICAgcHNldWRvbWF0Y2ggPSBfY29tcGlsZShQc2V1ZG9Ub2tlbikubWF0Y2gobGluZSwgcG9zKQogICAgICAgICAgICAgaWYgcHNldWRvbWF0Y2g6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHNjYW4gZm9yIHRva2VucwogICAgICAgICAgICAgICAgIHN0YXJ0LCBlbmQgPSBwc2V1ZG9tYXRjaC5zcGFuKDEpCiAgICAgICAgICAgICAgICAgc3BvcywgZXBvcywgcG9zID0gKGxudW0sIHN0YXJ0KSwgKGxudW0sIGVuZCksIGVuZApAQCAtNDgyLDcgKzU1NCw3IEBACiAgICAgICAgICAgICAgICAgICAgIGFzc2VydCBub3QgdG9rZW4uZW5kc3dpdGgoIlxuIikKICAgICAgICAgICAgICAgICAgICAgeWllbGQgVG9rZW5JbmZvKENPTU1FTlQsIHRva2VuLCBzcG9zLCBlcG9zLCBsaW5lKQogICAgICAgICAgICAgICAgIGVsaWYgdG9rZW4gaW4gdHJpcGxlX3F1b3RlZDoKLSAgICAgICAgICAgICAgICAgICAgZW5kcHJvZyA9IGVuZHByb2dzW3Rva2VuXQorICAgICAgICAgICAgICAgICAgICBlbmRwcm9nID0gX2NvbXBpbGUoZW5kcGF0c1t0b2tlbl0pCiAgICAgICAgICAgICAgICAgICAgIGVuZG1hdGNoID0gZW5kcHJvZy5tYXRjaChsaW5lLCBwb3MpCiAgICAgICAgICAgICAgICAgICAgIGlmIGVuZG1hdGNoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICMgYWxsIG9uIG9uZSBsaW5lCiAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSBlbmRtYXRjaC5lbmQoMCkKQEAgLTQ5OCw4ICs1NzAsOSBAQAogICAgICAgICAgICAgICAgICAgICB0b2tlbls6M10gaW4gc2luZ2xlX3F1b3RlZDoKICAgICAgICAgICAgICAgICAgICAgaWYgdG9rZW5bLTFdID09ICdcbic6ICAgICAgICAgICAgICAgICAgIyBjb250aW51ZWQgc3RyaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICBzdHJzdGFydCA9IChsbnVtLCBzdGFydCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGVuZHByb2cgPSAoZW5kcHJvZ3NbaW5pdGlhbF0gb3IgZW5kcHJvZ3NbdG9rZW5bMV1dIG9yCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZHByb2dzW3Rva2VuWzJdXSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGVuZHByb2cgPSBfY29tcGlsZShlbmRwYXRzW2luaXRpYWxdIG9yCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kcGF0c1t0b2tlblsxXV0gb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmRwYXRzW3Rva2VuWzJdXSkKICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRzdHIsIG5lZWRjb250ID0gbGluZVtzdGFydDpdLCAxCiAgICAgICAgICAgICAgICAgICAgICAgICBjb250bGluZSA9IGxpbmUKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCkBAIC01MzAsMjcgKzYwMyw2NSBAQAogZGVmIGdlbmVyYXRlX3Rva2VucyhyZWFkbGluZSk6CiAgICAgcmV0dXJuIF90b2tlbml6ZShyZWFkbGluZSwgTm9uZSkKIAorZGVmIG1haW4oKToKKyAgICBpbXBvcnQgYXJncGFyc2UKKworICAgICMgSGVscGVyIGVycm9yIGhhbmRsaW5nIHJvdXRpbmVzCisgICAgZGVmIHBlcnJvcihtZXNzYWdlKToKKyAgICAgICAgcHJpbnQobWVzc2FnZSwgZmlsZT1zeXMuc3RkZXJyKQorCisgICAgZGVmIGVycm9yKG1lc3NhZ2UsIGZpbGVuYW1lPU5vbmUsIGxvY2F0aW9uPU5vbmUpOgorICAgICAgICBpZiBsb2NhdGlvbjoKKyAgICAgICAgICAgIGFyZ3MgPSAoZmlsZW5hbWUsKSArIGxvY2F0aW9uICsgKG1lc3NhZ2UsKQorICAgICAgICAgICAgcGVycm9yKCIlczolZDolZDogZXJyb3I6ICVzIiAlIGFyZ3MpCisgICAgICAgIGVsaWYgZmlsZW5hbWU6CisgICAgICAgICAgICBwZXJyb3IoIiVzOiBlcnJvcjogJXMiICUgKGZpbGVuYW1lLCBtZXNzYWdlKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHBlcnJvcigiZXJyb3I6ICVzIiAlIG1lc3NhZ2UpCisgICAgICAgIHN5cy5leGl0KDEpCisKKyAgICAjIFBhcnNlIHRoZSBhcmd1bWVudHMgYW5kIG9wdGlvbnMKKyAgICBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcihwcm9nPSdweXRob24gLW0gdG9rZW5pemUnKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoZGVzdD0nZmlsZW5hbWUnLCBuYXJncz0nPycsCisgICAgICAgICAgICAgICAgICAgICAgICBtZXRhdmFyPSdmaWxlbmFtZS5weScsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSd0aGUgZmlsZSB0byB0b2tlbml6ZTsgZGVmYXVsdHMgdG8gc3RkaW4nKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy1lJywgJy0tZXhhY3QnLCBkZXN0PSdleGFjdCcsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdkaXNwbGF5IHRva2VuIG5hbWVzIHVzaW5nIHRoZSBleGFjdCB0eXBlJykKKyAgICBhcmdzID0gcGFyc2VyLnBhcnNlX2FyZ3MoKQorCisgICAgdHJ5OgorICAgICAgICAjIFRva2VuaXplIHRoZSBpbnB1dAorICAgICAgICBpZiBhcmdzLmZpbGVuYW1lOgorICAgICAgICAgICAgZmlsZW5hbWUgPSBhcmdzLmZpbGVuYW1lCisgICAgICAgICAgICB3aXRoIGJ1aWx0aW5zLm9wZW4oZmlsZW5hbWUsICdyYicpIGFzIGY6CisgICAgICAgICAgICAgICAgdG9rZW5zID0gbGlzdCh0b2tlbml6ZShmLnJlYWRsaW5lKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGZpbGVuYW1lID0gIjxzdGRpbj4iCisgICAgICAgICAgICB0b2tlbnMgPSBfdG9rZW5pemUoc3lzLnN0ZGluLnJlYWRsaW5lLCBOb25lKQorCisgICAgICAgICMgT3V0cHV0IHRoZSB0b2tlbml6YXRpb24KKyAgICAgICAgZm9yIHRva2VuIGluIHRva2VuczoKKyAgICAgICAgICAgIHRva2VuX3R5cGUgPSB0b2tlbi50eXBlCisgICAgICAgICAgICBpZiBhcmdzLmV4YWN0OgorICAgICAgICAgICAgICAgIHRva2VuX3R5cGUgPSB0b2tlbi5leGFjdF90eXBlCisgICAgICAgICAgICB0b2tlbl9yYW5nZSA9ICIlZCwlZC0lZCwlZDoiICUgKHRva2VuLnN0YXJ0ICsgdG9rZW4uZW5kKQorICAgICAgICAgICAgcHJpbnQoIiUtMjBzJS0xNXMlLTE1ciIgJQorICAgICAgICAgICAgICAgICAgKHRva2VuX3JhbmdlLCB0b2tfbmFtZVt0b2tlbl90eXBlXSwgdG9rZW4uc3RyaW5nKSkKKyAgICBleGNlcHQgSW5kZW50YXRpb25FcnJvciBhcyBlcnI6CisgICAgICAgIGxpbmUsIGNvbHVtbiA9IGVyci5hcmdzWzFdWzE6M10KKyAgICAgICAgZXJyb3IoZXJyLmFyZ3NbMF0sIGZpbGVuYW1lLCAobGluZSwgY29sdW1uKSkKKyAgICBleGNlcHQgVG9rZW5FcnJvciBhcyBlcnI6CisgICAgICAgIGxpbmUsIGNvbHVtbiA9IGVyci5hcmdzWzFdCisgICAgICAgIGVycm9yKGVyci5hcmdzWzBdLCBmaWxlbmFtZSwgKGxpbmUsIGNvbHVtbikpCisgICAgZXhjZXB0IFN5bnRheEVycm9yIGFzIGVycjoKKyAgICAgICAgZXJyb3IoZXJyLCBmaWxlbmFtZSkKKyAgICBleGNlcHQgSU9FcnJvciBhcyBlcnI6CisgICAgICAgIGVycm9yKGVycikKKyAgICBleGNlcHQgS2V5Ym9hcmRJbnRlcnJ1cHQ6CisgICAgICAgIHByaW50KCJpbnRlcnJ1cHRlZFxuIikKKyAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGVycjoKKyAgICAgICAgcGVycm9yKCJ1bmV4cGVjdGVkIGVycm9yOiAlcyIgJSBlcnIpCisgICAgICAgIHJhaXNlCisKIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6Ci0gICAgIyBRdWljayBzYW5pdHkgY2hlY2sKLSAgICBzID0gYicnJ2RlZiBwYXJzZWxpbmUoc2VsZiwgbGluZSk6Ci0gICAgICAgICAgICAiIiJQYXJzZSB0aGUgbGluZSBpbnRvIGEgY29tbWFuZCBuYW1lIGFuZCBhIHN0cmluZyBjb250YWluaW5nCi0gICAgICAgICAgICB0aGUgYXJndW1lbnRzLiAgUmV0dXJucyBhIHR1cGxlIGNvbnRhaW5pbmcgKGNvbW1hbmQsIGFyZ3MsIGxpbmUpLgotICAgICAgICAgICAgJ2NvbW1hbmQnIGFuZCAnYXJncycgbWF5IGJlIE5vbmUgaWYgdGhlIGxpbmUgY291bGRuJ3QgYmUgcGFyc2VkLgotICAgICAgICAgICAgIiIiCi0gICAgICAgICAgICBsaW5lID0gbGluZS5zdHJpcCgpCi0gICAgICAgICAgICBpZiBub3QgbGluZToKLSAgICAgICAgICAgICAgICByZXR1cm4gTm9uZSwgTm9uZSwgbGluZQotICAgICAgICAgICAgZWxpZiBsaW5lWzBdID09ICc/JzoKLSAgICAgICAgICAgICAgICBsaW5lID0gJ2hlbHAgJyArIGxpbmVbMTpdCi0gICAgICAgICAgICBlbGlmIGxpbmVbMF0gPT0gJyEnOgotICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIoc2VsZiwgJ2RvX3NoZWxsJyk6Ci0gICAgICAgICAgICAgICAgICAgIGxpbmUgPSAnc2hlbGwgJyArIGxpbmVbMTpdCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUsIE5vbmUsIGxpbmUKLSAgICAgICAgICAgIGksIG4gPSAwLCBsZW4obGluZSkKLSAgICAgICAgICAgIHdoaWxlIGkgPCBuIGFuZCBsaW5lW2ldIGluIHNlbGYuaWRlbnRjaGFyczogaSA9IGkrMQotICAgICAgICAgICAgY21kLCBhcmcgPSBsaW5lWzppXSwgbGluZVtpOl0uc3RyaXAoKQotICAgICAgICAgICAgcmV0dXJuIGNtZCwgYXJnLCBsaW5lCi0gICAgJycnCi0gICAgZm9yIHRvayBpbiB0b2tlbml6ZShpdGVyKHMuc3BsaXRsaW5lcygpKS5fX25leHRfXyk6Ci0gICAgICAgIHByaW50KHRvaykKKyAgICBtYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90cmFjZWJhY2sucHkgYi9MaWIvdHJhY2ViYWNrLnB5CmluZGV4IDhkNGU5NmUuLjM1ODU4YWYgMTAwNjQ0Ci0tLSBhL0xpYi90cmFjZWJhY2sucHkKKysrIGIvTGliL3RyYWNlYmFjay5weQpAQCAtMTIwLDE0ICsxMjAsMTQgQEAKICAgICBzZWVuLmFkZChleGMpCiAgICAgaXRzID0gW10KICAgICBjYXVzZSA9IGV4Yy5fX2NhdXNlX18KLSAgICBpZiBjYXVzZSBpcyBub3QgTm9uZSBhbmQgY2F1c2Ugbm90IGluIHNlZW46Ci0gICAgICAgIGl0cy5hcHBlbmQoX2l0ZXJfY2hhaW4oY2F1c2UsIE5vbmUsIHNlZW4pKQotICAgICAgICBpdHMuYXBwZW5kKFsoX2NhdXNlX21lc3NhZ2UsIE5vbmUpXSkKLSAgICBlbHNlOgorICAgIGlmIGNhdXNlIGlzIEVsbGlwc2lzOgogICAgICAgICBjb250ZXh0ID0gZXhjLl9fY29udGV4dF9fCiAgICAgICAgIGlmIGNvbnRleHQgaXMgbm90IE5vbmUgYW5kIGNvbnRleHQgbm90IGluIHNlZW46CiAgICAgICAgICAgICBpdHMuYXBwZW5kKF9pdGVyX2NoYWluKGNvbnRleHQsIE5vbmUsIHNlZW4pKQogICAgICAgICAgICAgaXRzLmFwcGVuZChbKF9jb250ZXh0X21lc3NhZ2UsIE5vbmUpXSkKKyAgICBlbGlmIGNhdXNlIGlzIG5vdCBOb25lIGFuZCBjYXVzZSBub3QgaW4gc2VlbjoKKyAgICAgICAgaXRzLmFwcGVuZChfaXRlcl9jaGFpbihjYXVzZSwgRmFsc2UsIHNlZW4pKQorICAgICAgICBpdHMuYXBwZW5kKFsoX2NhdXNlX21lc3NhZ2UsIE5vbmUpXSkKICAgICBpdHMuYXBwZW5kKFsoZXhjLCBjdXN0b21fdGIgb3IgZXhjLl9fdHJhY2ViYWNrX18pXSkKICAgICAjIGl0ZXJ0b29scy5jaGFpbiBpcyBpbiBhbiBleHRlbnNpb24gbW9kdWxlIGFuZCBtYXkgYmUgdW5hdmFpbGFibGUKICAgICBmb3IgaXQgaW4gaXRzOgpkaWZmIC0tZ2l0IGEvTGliL3R1cnRsZS5weSBiL0xpYi90dXJ0bGUucHkKaW5kZXggYWMwYzMyYy4uYTQ0NzQzMyAxMDA2NDQKLS0tIGEvTGliL3R1cnRsZS5weQorKysgYi9MaWIvdHVydGxlLnB5CkBAIC0xMDgsNyArMTA4LDYgQEAKIGltcG9ydCB0eXBlcwogaW1wb3J0IG1hdGgKIGltcG9ydCB0aW1lCi1pbXBvcnQgb3MKIGltcG9ydCBpbnNwZWN0CiAKIGZyb20gb3MucGF0aCBpbXBvcnQgaXNmaWxlLCBzcGxpdCwgam9pbgpkaWZmIC0tZ2l0IGEvTGliL3VuaXR0ZXN0L2Nhc2UucHkgYi9MaWIvdW5pdHRlc3QvY2FzZS5weQppbmRleCAzMTMzOTA3Li41YmVkODY4IDEwMDY0NAotLS0gYS9MaWIvdW5pdHRlc3QvY2FzZS5weQorKysgYi9MaWIvdW5pdHRlc3QvY2FzZS5weQpAQCAtOSw4ICs5LDcgQEAKIGltcG9ydCBjb2xsZWN0aW9ucwogCiBmcm9tIC4gaW1wb3J0IHJlc3VsdAotZnJvbSAudXRpbCBpbXBvcnQgKHN0cmNsYXNzLCBzYWZlX3JlcHIsIHNvcnRlZF9saXN0X2RpZmZlcmVuY2UsCi0gICAgICAgICAgICAgICAgICAgdW5vcmRlcmFibGVfbGlzdF9kaWZmZXJlbmNlLCBfY291bnRfZGlmZl9hbGxfcHVycG9zZSwKK2Zyb20gLnV0aWwgaW1wb3J0IChzdHJjbGFzcywgc2FmZV9yZXByLCBfY291bnRfZGlmZl9hbGxfcHVycG9zZSwKICAgICAgICAgICAgICAgICAgICBfY291bnRfZGlmZl9oYXNoYWJsZSkKIAogX191bml0dGVzdCA9IFRydWUKQEAgLTEwNCw5ICsxMDMsOSBAQAogY2xhc3MgX0Fzc2VydFJhaXNlc0Jhc2VDb250ZXh0KG9iamVjdCk6CiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgZXhwZWN0ZWQsIHRlc3RfY2FzZSwgY2FsbGFibGVfb2JqPU5vbmUsCi0gICAgICAgICAgICAgICAgICBleHBlY3RlZF9yZWdleD1Ob25lKToKKyAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfcmVnZXg9Tm9uZSk6CiAgICAgICAgIHNlbGYuZXhwZWN0ZWQgPSBleHBlY3RlZAotICAgICAgICBzZWxmLmZhaWx1cmVFeGNlcHRpb24gPSB0ZXN0X2Nhc2UuZmFpbHVyZUV4Y2VwdGlvbgorICAgICAgICBzZWxmLnRlc3RfY2FzZSA9IHRlc3RfY2FzZQogICAgICAgICBpZiBjYWxsYWJsZV9vYmogaXMgbm90IE5vbmU6CiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgc2VsZi5vYmpfbmFtZSA9IGNhbGxhYmxlX29iai5fX25hbWVfXwpAQCAtMTE3LDYgKzExNiwyNCBAQAogICAgICAgICBpZiBpc2luc3RhbmNlKGV4cGVjdGVkX3JlZ2V4LCAoYnl0ZXMsIHN0cikpOgogICAgICAgICAgICAgZXhwZWN0ZWRfcmVnZXggPSByZS5jb21waWxlKGV4cGVjdGVkX3JlZ2V4KQogICAgICAgICBzZWxmLmV4cGVjdGVkX3JlZ2V4ID0gZXhwZWN0ZWRfcmVnZXgKKyAgICAgICAgc2VsZi5tc2cgPSBOb25lCisKKyAgICBkZWYgX3JhaXNlRmFpbHVyZShzZWxmLCBzdGFuZGFyZE1zZyk6CisgICAgICAgIG1zZyA9IHNlbGYudGVzdF9jYXNlLl9mb3JtYXRNZXNzYWdlKHNlbGYubXNnLCBzdGFuZGFyZE1zZykKKyAgICAgICAgcmFpc2Ugc2VsZi50ZXN0X2Nhc2UuZmFpbHVyZUV4Y2VwdGlvbihtc2cpCisKKyAgICBkZWYgaGFuZGxlKHNlbGYsIG5hbWUsIGNhbGxhYmxlX29iaiwgYXJncywga3dhcmdzKToKKyAgICAgICAgIiIiCisgICAgICAgIElmIGNhbGxhYmxlX29iaiBpcyBOb25lLCBhc3NlcnRSYWlzZXMvV2FybnMgaXMgYmVpbmcgdXNlZCBhcyBhCisgICAgICAgIGNvbnRleHQgbWFuYWdlciwgc28gY2hlY2sgZm9yIGEgJ21zZycga3dhcmcgYW5kIHJldHVybiBzZWxmLgorICAgICAgICBJZiBjYWxsYWJsZV9vYmogaXMgbm90IE5vbmUsIGNhbGwgaXQgcGFzc2luZyBhcmdzIGFuZCBrd2FyZ3MuCisgICAgICAgICIiIgorICAgICAgICBpZiBjYWxsYWJsZV9vYmogaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYubXNnID0ga3dhcmdzLnBvcCgnbXNnJywgTm9uZSkKKyAgICAgICAgICAgIHJldHVybiBzZWxmCisgICAgICAgIHdpdGggc2VsZjoKKyAgICAgICAgICAgIGNhbGxhYmxlX29iaigqYXJncywgKiprd2FyZ3MpCisKIAogCiBjbGFzcyBfQXNzZXJ0UmFpc2VzQ29udGV4dChfQXNzZXJ0UmFpc2VzQmFzZUNvbnRleHQpOgpAQCAtMTMyLDExICsxNDksMTAgQEAKICAgICAgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKICAgICAgICAgICAgICAgICBleGNfbmFtZSA9IHN0cihzZWxmLmV4cGVjdGVkKQogICAgICAgICAgICAgaWYgc2VsZi5vYmpfbmFtZToKLSAgICAgICAgICAgICAgICByYWlzZSBzZWxmLmZhaWx1cmVFeGNlcHRpb24oInswfSBub3QgcmFpc2VkIGJ5IHsxfSIKLSAgICAgICAgICAgICAgICAgICAgLmZvcm1hdChleGNfbmFtZSwgc2VsZi5vYmpfbmFtZSkpCisgICAgICAgICAgICAgICAgc2VsZi5fcmFpc2VGYWlsdXJlKCJ7fSBub3QgcmFpc2VkIGJ5IHt9Ii5mb3JtYXQoZXhjX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5vYmpfbmFtZSkpCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHJhaXNlIHNlbGYuZmFpbHVyZUV4Y2VwdGlvbigiezB9IG5vdCByYWlzZWQiCi0gICAgICAgICAgICAgICAgICAgIC5mb3JtYXQoZXhjX25hbWUpKQorICAgICAgICAgICAgICAgIHNlbGYuX3JhaXNlRmFpbHVyZSgie30gbm90IHJhaXNlZCIuZm9ybWF0KGV4Y19uYW1lKSkKICAgICAgICAgaWYgbm90IGlzc3ViY2xhc3MoZXhjX3R5cGUsIHNlbGYuZXhwZWN0ZWQpOgogICAgICAgICAgICAgIyBsZXQgdW5leHBlY3RlZCBleGNlcHRpb25zIHBhc3MgdGhyb3VnaAogICAgICAgICAgICAgcmV0dXJuIEZhbHNlCkBAIC0xNDcsOCArMTYzLDggQEAKIAogICAgICAgICBleHBlY3RlZF9yZWdleCA9IHNlbGYuZXhwZWN0ZWRfcmVnZXgKICAgICAgICAgaWYgbm90IGV4cGVjdGVkX3JlZ2V4LnNlYXJjaChzdHIoZXhjX3ZhbHVlKSk6Ci0gICAgICAgICAgICByYWlzZSBzZWxmLmZhaWx1cmVFeGNlcHRpb24oJyIlcyIgZG9lcyBub3QgbWF0Y2ggIiVzIicgJQotICAgICAgICAgICAgICAgICAgICAgKGV4cGVjdGVkX3JlZ2V4LnBhdHRlcm4sIHN0cihleGNfdmFsdWUpKSkKKyAgICAgICAgICAgIHNlbGYuX3JhaXNlRmFpbHVyZSgnInt9IiBkb2VzIG5vdCBtYXRjaCAie30iJy5mb3JtYXQoCisgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZF9yZWdleC5wYXR0ZXJuLCBzdHIoZXhjX3ZhbHVlKSkpCiAgICAgICAgIHJldHVybiBUcnVlCiAKIApAQCAtMTkyLDE0ICsyMDgsMTMgQEAKICAgICAgICAgICAgIHJldHVybgogICAgICAgICAjIE5vdyB3ZSBzaW1wbHkgdHJ5IHRvIGNob29zZSBhIGhlbHBmdWwgZmFpbHVyZSBtZXNzYWdlCiAgICAgICAgIGlmIGZpcnN0X21hdGNoaW5nIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgcmFpc2Ugc2VsZi5mYWlsdXJlRXhjZXB0aW9uKCciJXMiIGRvZXMgbm90IG1hdGNoICIlcyInICUKLSAgICAgICAgICAgICAgICAgICAgIChzZWxmLmV4cGVjdGVkX3JlZ2V4LnBhdHRlcm4sIHN0cihmaXJzdF9tYXRjaGluZykpKQorICAgICAgICAgICAgc2VsZi5fcmFpc2VGYWlsdXJlKCcie30iIGRvZXMgbm90IG1hdGNoICJ7fSInLmZvcm1hdCgKKyAgICAgICAgICAgICAgICAgICAgIHNlbGYuZXhwZWN0ZWRfcmVnZXgucGF0dGVybiwgc3RyKGZpcnN0X21hdGNoaW5nKSkpCiAgICAgICAgIGlmIHNlbGYub2JqX25hbWU6Ci0gICAgICAgICAgICByYWlzZSBzZWxmLmZhaWx1cmVFeGNlcHRpb24oInswfSBub3QgdHJpZ2dlcmVkIGJ5IHsxfSIKLSAgICAgICAgICAgICAgICAuZm9ybWF0KGV4Y19uYW1lLCBzZWxmLm9ial9uYW1lKSkKKyAgICAgICAgICAgIHNlbGYuX3JhaXNlRmFpbHVyZSgie30gbm90IHRyaWdnZXJlZCBieSB7fSIuZm9ybWF0KGV4Y19uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5vYmpfbmFtZSkpCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICByYWlzZSBzZWxmLmZhaWx1cmVFeGNlcHRpb24oInswfSBub3QgdHJpZ2dlcmVkIgotICAgICAgICAgICAgICAgIC5mb3JtYXQoZXhjX25hbWUpKQorICAgICAgICAgICAgc2VsZi5fcmFpc2VGYWlsdXJlKCJ7fSBub3QgdHJpZ2dlcmVkIi5mb3JtYXQoZXhjX25hbWUpKQogCiAKIGNsYXNzIFRlc3RDYXNlKG9iamVjdCk6CkBAIC00NTIsNyArNDY3LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIHdhcm5pbmdzLndhcm4oIlRlc3RSZXN1bHQgaGFzIG5vIGFkZEV4cGVjdGVkRmFpbHVyZSBtZXRob2QsIHJlcG9ydGluZyBhcyBwYXNzZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSdW50aW1lV2FybmluZykKICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5hZGRTdWNjZXNzKHNlbGYpCi0KKyAgICAgICAgICAgIHJldHVybiByZXN1bHQKICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIHJlc3VsdC5zdG9wVGVzdChzZWxmKQogICAgICAgICAgICAgaWYgb3JpZ19yZXN1bHQgaXMgTm9uZToKQEAgLTUyNiw3ICs1NDEsNiBAQAogICAgICAgICBleGNlcHQgVW5pY29kZURlY29kZUVycm9yOgogICAgICAgICAgICAgcmV0dXJuICAnJXMgOiAlcycgJSAoc2FmZV9yZXByKHN0YW5kYXJkTXNnKSwgc2FmZV9yZXByKG1zZykpCiAKLQogICAgIGRlZiBhc3NlcnRSYWlzZXMoc2VsZiwgZXhjQ2xhc3MsIGNhbGxhYmxlT2JqPU5vbmUsICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgICIiIkZhaWwgdW5sZXNzIGFuIGV4Y2VwdGlvbiBvZiBjbGFzcyBleGNDbGFzcyBpcyB0aHJvd24KICAgICAgICAgICAgYnkgY2FsbGFibGVPYmogd2hlbiBpbnZva2VkIHdpdGggYXJndW1lbnRzIGFyZ3MgYW5kIGtleXdvcmQKQEAgLTU0MSw2ICs1NTUsOSBAQAogICAgICAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoU29tZUV4Y2VwdGlvbik6CiAgICAgICAgICAgICAgICAgICAgIGRvX3NvbWV0aGluZygpCiAKKyAgICAgICAgICAgQW4gb3B0aW9uYWwga2V5d29yZCBhcmd1bWVudCAnbXNnJyBjYW4gYmUgcHJvdmlkZWQgd2hlbiBhc3NlcnRSYWlzZXMKKyAgICAgICAgICAgaXMgdXNlZCBhcyBhIGNvbnRleHQgb2JqZWN0LgorCiAgICAgICAgICAgIFRoZSBjb250ZXh0IG1hbmFnZXIga2VlcHMgYSByZWZlcmVuY2UgdG8gdGhlIGV4Y2VwdGlvbiBhcwogICAgICAgICAgICB0aGUgJ2V4Y2VwdGlvbicgYXR0cmlidXRlLiBUaGlzIGFsbG93cyB5b3UgdG8gaW5zcGVjdCB0aGUKICAgICAgICAgICAgZXhjZXB0aW9uIGFmdGVyIHRoZSBhc3NlcnRpb246OgpAQCAtNTUxLDI1ICs1NjgsMjUgQEAKICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGhlX2V4Y2VwdGlvbi5lcnJvcl9jb2RlLCAzKQogICAgICAgICAiIiIKICAgICAgICAgY29udGV4dCA9IF9Bc3NlcnRSYWlzZXNDb250ZXh0KGV4Y0NsYXNzLCBzZWxmLCBjYWxsYWJsZU9iaikKLSAgICAgICAgaWYgY2FsbGFibGVPYmogaXMgTm9uZToKLSAgICAgICAgICAgIHJldHVybiBjb250ZXh0Ci0gICAgICAgIHdpdGggY29udGV4dDoKLSAgICAgICAgICAgIGNhbGxhYmxlT2JqKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgcmV0dXJuIGNvbnRleHQuaGFuZGxlKCdhc3NlcnRSYWlzZXMnLCBjYWxsYWJsZU9iaiwgYXJncywga3dhcmdzKQogCiAgICAgZGVmIGFzc2VydFdhcm5zKHNlbGYsIGV4cGVjdGVkX3dhcm5pbmcsIGNhbGxhYmxlX29iaj1Ob25lLCAqYXJncywgKiprd2FyZ3MpOgogICAgICAgICAiIiJGYWlsIHVubGVzcyBhIHdhcm5pbmcgb2YgY2xhc3Mgd2FybkNsYXNzIGlzIHRyaWdnZXJlZAotICAgICAgICAgICBieSBjYWxsYWJsZU9iaiB3aGVuIGludm9rZWQgd2l0aCBhcmd1bWVudHMgYXJncyBhbmQga2V5d29yZAorICAgICAgICAgICBieSBjYWxsYWJsZV9vYmogd2hlbiBpbnZva2VkIHdpdGggYXJndW1lbnRzIGFyZ3MgYW5kIGtleXdvcmQKICAgICAgICAgICAgYXJndW1lbnRzIGt3YXJncy4gIElmIGEgZGlmZmVyZW50IHR5cGUgb2Ygd2FybmluZyBpcwogICAgICAgICAgICB0cmlnZ2VyZWQsIGl0IHdpbGwgbm90IGJlIGhhbmRsZWQ6IGRlcGVuZGluZyBvbiB0aGUgb3RoZXIKICAgICAgICAgICAgd2FybmluZyBmaWx0ZXJpbmcgcnVsZXMgaW4gZWZmZWN0LCBpdCBtaWdodCBiZSBzaWxlbmNlZCwgcHJpbnRlZAogICAgICAgICAgICBvdXQsIG9yIHJhaXNlZCBhcyBhbiBleGNlcHRpb24uCiAKLSAgICAgICAgICAgSWYgY2FsbGVkIHdpdGggY2FsbGFibGVPYmogb21pdHRlZCBvciBOb25lLCB3aWxsIHJldHVybiBhCisgICAgICAgICAgIElmIGNhbGxlZCB3aXRoIGNhbGxhYmxlX29iaiBvbWl0dGVkIG9yIE5vbmUsIHdpbGwgcmV0dXJuIGEKICAgICAgICAgICAgY29udGV4dCBvYmplY3QgdXNlZCBsaWtlIHRoaXM6OgogCiAgICAgICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFdhcm5zKFNvbWVXYXJuaW5nKToKICAgICAgICAgICAgICAgICAgICAgZG9fc29tZXRoaW5nKCkKIAorICAgICAgICAgICBBbiBvcHRpb25hbCBrZXl3b3JkIGFyZ3VtZW50ICdtc2cnIGNhbiBiZSBwcm92aWRlZCB3aGVuIGFzc2VydFdhcm5zCisgICAgICAgICAgIGlzIHVzZWQgYXMgYSBjb250ZXh0IG9iamVjdC4KKwogICAgICAgICAgICBUaGUgY29udGV4dCBtYW5hZ2VyIGtlZXBzIGEgcmVmZXJlbmNlIHRvIHRoZSBmaXJzdCBtYXRjaGluZwogICAgICAgICAgICB3YXJuaW5nIGFzIHRoZSAnd2FybmluZycgYXR0cmlidXRlOyBzaW1pbGFybHksIHRoZSAnZmlsZW5hbWUnCiAgICAgICAgICAgIGFuZCAnbGluZW5vJyBhdHRyaWJ1dGVzIGdpdmUgeW91IGluZm9ybWF0aW9uIGFib3V0IHRoZSBsaW5lCkBAIC01ODIsMTAgKzU5OSw3IEBACiAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRoZV93YXJuaW5nLnNvbWVfYXR0cmlidXRlLCAxNDcpCiAgICAgICAgICIiIgogICAgICAgICBjb250ZXh0ID0gX0Fzc2VydFdhcm5zQ29udGV4dChleHBlY3RlZF93YXJuaW5nLCBzZWxmLCBjYWxsYWJsZV9vYmopCi0gICAgICAgIGlmIGNhbGxhYmxlX29iaiBpcyBOb25lOgotICAgICAgICAgICAgcmV0dXJuIGNvbnRleHQKLSAgICAgICAgd2l0aCBjb250ZXh0OgotICAgICAgICAgICAgY2FsbGFibGVfb2JqKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgcmV0dXJuIGNvbnRleHQuaGFuZGxlKCdhc3NlcnRXYXJucycsIGNhbGxhYmxlX29iaiwgYXJncywga3dhcmdzKQogCiAgICAgZGVmIF9nZXRBc3NlcnRFcXVhbGl0eUZ1bmMoc2VsZiwgZmlyc3QsIHNlY29uZCk6CiAgICAgICAgICIiIkdldCBhIGRldGFpbGVkIGNvbXBhcmlzb24gZnVuY3Rpb24gZm9yIHRoZSB0eXBlcyBvZiB0aGUgdHdvIGFyZ3MuCkBAIC05NTEsNDggKzk2NSw2IEBACiAKICAgICAgICAgc2VsZi5mYWlsKHNlbGYuX2Zvcm1hdE1lc3NhZ2UobXNnLCBzdGFuZGFyZE1zZykpCiAKLSAgICBkZWYgYXNzZXJ0U2FtZUVsZW1lbnRzKHNlbGYsIGV4cGVjdGVkX3NlcSwgYWN0dWFsX3NlcSwgbXNnPU5vbmUpOgotICAgICAgICAiIiJBbiB1bm9yZGVyZWQgc2VxdWVuY2Ugc3BlY2lmaWMgY29tcGFyaXNvbi4KLQotICAgICAgICBSYWlzZXMgd2l0aCBhbiBlcnJvciBtZXNzYWdlIGxpc3Rpbmcgd2hpY2ggZWxlbWVudHMgb2YgZXhwZWN0ZWRfc2VxCi0gICAgICAgIGFyZSBtaXNzaW5nIGZyb20gYWN0dWFsX3NlcSBhbmQgdmljZSB2ZXJzYSBpZiBhbnkuCi0KLSAgICAgICAgRHVwbGljYXRlIGVsZW1lbnRzIGFyZSBpZ25vcmVkIHdoZW4gY29tcGFyaW5nICpleHBlY3RlZF9zZXEqIGFuZAotICAgICAgICAqYWN0dWFsX3NlcSouIEl0IGlzIHRoZSBlcXVpdmFsZW50IG9mIGBgYXNzZXJ0RXF1YWwoc2V0KGV4cGVjdGVkKSwKLSAgICAgICAgc2V0KGFjdHVhbCkpYGAgYnV0IGl0IHdvcmtzIHdpdGggc2VxdWVuY2VzIG9mIHVuaGFzaGFibGUgb2JqZWN0cyBhcwotICAgICAgICB3ZWxsLgotICAgICAgICAiIiIKLSAgICAgICAgd2FybmluZ3Mud2FybignYXNzZXJ0U2FtZUVsZW1lbnRzIGlzIGRlcHJlY2F0ZWQnLAotICAgICAgICAgICAgICAgICAgICAgIERlcHJlY2F0aW9uV2FybmluZykKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgZXhwZWN0ZWQgPSBzZXQoZXhwZWN0ZWRfc2VxKQotICAgICAgICAgICAgYWN0dWFsID0gc2V0KGFjdHVhbF9zZXEpCi0gICAgICAgICAgICBtaXNzaW5nID0gc29ydGVkKGV4cGVjdGVkLmRpZmZlcmVuY2UoYWN0dWFsKSkKLSAgICAgICAgICAgIHVuZXhwZWN0ZWQgPSBzb3J0ZWQoYWN0dWFsLmRpZmZlcmVuY2UoZXhwZWN0ZWQpKQotICAgICAgICBleGNlcHQgVHlwZUVycm9yOgotICAgICAgICAgICAgIyBGYWxsIGJhY2sgdG8gc2xvd2VyIGxpc3QtY29tcGFyZSBpZiBhbnkgb2YgdGhlIG9iamVjdHMgYXJlCi0gICAgICAgICAgICAjIG5vdCBoYXNoYWJsZS4KLSAgICAgICAgICAgIGV4cGVjdGVkID0gbGlzdChleHBlY3RlZF9zZXEpCi0gICAgICAgICAgICBhY3R1YWwgPSBsaXN0KGFjdHVhbF9zZXEpCi0gICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgZXhwZWN0ZWQuc29ydCgpCi0gICAgICAgICAgICAgICAgYWN0dWFsLnNvcnQoKQotICAgICAgICAgICAgZXhjZXB0IFR5cGVFcnJvcjoKLSAgICAgICAgICAgICAgICBtaXNzaW5nLCB1bmV4cGVjdGVkID0gdW5vcmRlcmFibGVfbGlzdF9kaWZmZXJlbmNlKGV4cGVjdGVkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0dWFsKQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBtaXNzaW5nLCB1bmV4cGVjdGVkID0gc29ydGVkX2xpc3RfZGlmZmVyZW5jZShleHBlY3RlZCwgYWN0dWFsKQotICAgICAgICBlcnJvcnMgPSBbXQotICAgICAgICBpZiBtaXNzaW5nOgotICAgICAgICAgICAgZXJyb3JzLmFwcGVuZCgnRXhwZWN0ZWQsIGJ1dCBtaXNzaW5nOlxuICAgICVzJyAlCi0gICAgICAgICAgICAgICAgICAgICAgICAgIHNhZmVfcmVwcihtaXNzaW5nKSkKLSAgICAgICAgaWYgdW5leHBlY3RlZDoKLSAgICAgICAgICAgIGVycm9ycy5hcHBlbmQoJ1VuZXhwZWN0ZWQsIGJ1dCBwcmVzZW50OlxuICAgICVzJyAlCi0gICAgICAgICAgICAgICAgICAgICAgICAgIHNhZmVfcmVwcih1bmV4cGVjdGVkKSkKLSAgICAgICAgaWYgZXJyb3JzOgotICAgICAgICAgICAgc3RhbmRhcmRNc2cgPSAnXG4nLmpvaW4oZXJyb3JzKQotICAgICAgICAgICAgc2VsZi5mYWlsKHNlbGYuX2Zvcm1hdE1lc3NhZ2UobXNnLCBzdGFuZGFyZE1zZykpCi0KIAogICAgIGRlZiBhc3NlcnRDb3VudEVxdWFsKHNlbGYsIGZpcnN0LCBzZWNvbmQsIG1zZz1Ob25lKToKICAgICAgICAgIiIiQW4gdW5vcmRlcmVkIHNlcXVlbmNlIGNvbXBhcmlzb24gYXNzZXJ0aW5nIHRoYXQgdGhlIHNhbWUgZWxlbWVudHMsCkBAIC0xMDM3LDggKzEwMDksOCBAQAogICAgICAgICAgICAgaWYgKGxlbihmaXJzdCkgPiBzZWxmLl9kaWZmVGhyZXNob2xkIG9yCiAgICAgICAgICAgICAgICAgbGVuKHNlY29uZCkgPiBzZWxmLl9kaWZmVGhyZXNob2xkKToKICAgICAgICAgICAgICAgICBzZWxmLl9iYXNlQXNzZXJ0RXF1YWwoZmlyc3QsIHNlY29uZCwgbXNnKQotICAgICAgICAgICAgZmlyc3RsaW5lcyA9IGZpcnN0LnNwbGl0bGluZXMoVHJ1ZSkKLSAgICAgICAgICAgIHNlY29uZGxpbmVzID0gc2Vjb25kLnNwbGl0bGluZXMoVHJ1ZSkKKyAgICAgICAgICAgIGZpcnN0bGluZXMgPSBmaXJzdC5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCisgICAgICAgICAgICBzZWNvbmRsaW5lcyA9IHNlY29uZC5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCiAgICAgICAgICAgICBpZiBsZW4oZmlyc3RsaW5lcykgPT0gMSBhbmQgZmlyc3Quc3RyaXAoJ1xyXG4nKSA9PSBmaXJzdDoKICAgICAgICAgICAgICAgICBmaXJzdGxpbmVzID0gW2ZpcnN0ICsgJ1xuJ10KICAgICAgICAgICAgICAgICBzZWNvbmRsaW5lcyA9IFtzZWNvbmQgKyAnXG4nXQpAQCAtMTEwNiwxNSArMTA3OCwxNSBAQAogICAgICAgICAgICAgZXhwZWN0ZWRfcmVnZXg6IFJlZ2V4IChyZSBwYXR0ZXJuIG9iamVjdCBvciBzdHJpbmcpIGV4cGVjdGVkCiAgICAgICAgICAgICAgICAgICAgIHRvIGJlIGZvdW5kIGluIGVycm9yIG1lc3NhZ2UuCiAgICAgICAgICAgICBjYWxsYWJsZV9vYmo6IEZ1bmN0aW9uIHRvIGJlIGNhbGxlZC4KKyAgICAgICAgICAgIG1zZzogT3B0aW9uYWwgbWVzc2FnZSB1c2VkIGluIGNhc2Ugb2YgZmFpbHVyZS4gQ2FuIG9ubHkgYmUgdXNlZAorICAgICAgICAgICAgICAgICAgICB3aGVuIGFzc2VydFJhaXNlc1JlZ2V4IGlzIHVzZWQgYXMgYSBjb250ZXh0IG1hbmFnZXIuCiAgICAgICAgICAgICBhcmdzOiBFeHRyYSBhcmdzLgogICAgICAgICAgICAga3dhcmdzOiBFeHRyYSBrd2FyZ3MuCiAgICAgICAgICIiIgogICAgICAgICBjb250ZXh0ID0gX0Fzc2VydFJhaXNlc0NvbnRleHQoZXhwZWN0ZWRfZXhjZXB0aW9uLCBzZWxmLCBjYWxsYWJsZV9vYmosCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZF9yZWdleCkKLSAgICAgICAgaWYgY2FsbGFibGVfb2JqIGlzIE5vbmU6Ci0gICAgICAgICAgICByZXR1cm4gY29udGV4dAotICAgICAgICB3aXRoIGNvbnRleHQ6Ci0gICAgICAgICAgICBjYWxsYWJsZV9vYmooKmFyZ3MsICoqa3dhcmdzKQorCisgICAgICAgIHJldHVybiBjb250ZXh0LmhhbmRsZSgnYXNzZXJ0UmFpc2VzUmVnZXgnLCBjYWxsYWJsZV9vYmosIGFyZ3MsIGt3YXJncykKIAogICAgIGRlZiBhc3NlcnRXYXJuc1JlZ2V4KHNlbGYsIGV4cGVjdGVkX3dhcm5pbmcsIGV4cGVjdGVkX3JlZ2V4LAogICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxhYmxlX29iaj1Ob25lLCAqYXJncywgKiprd2FyZ3MpOgpAQCAtMTEyOCwxNSArMTEwMCwxNCBAQAogICAgICAgICAgICAgZXhwZWN0ZWRfcmVnZXg6IFJlZ2V4IChyZSBwYXR0ZXJuIG9iamVjdCBvciBzdHJpbmcpIGV4cGVjdGVkCiAgICAgICAgICAgICAgICAgICAgIHRvIGJlIGZvdW5kIGluIGVycm9yIG1lc3NhZ2UuCiAgICAgICAgICAgICBjYWxsYWJsZV9vYmo6IEZ1bmN0aW9uIHRvIGJlIGNhbGxlZC4KKyAgICAgICAgICAgIG1zZzogT3B0aW9uYWwgbWVzc2FnZSB1c2VkIGluIGNhc2Ugb2YgZmFpbHVyZS4gQ2FuIG9ubHkgYmUgdXNlZAorICAgICAgICAgICAgICAgICAgICB3aGVuIGFzc2VydFdhcm5zUmVnZXggaXMgdXNlZCBhcyBhIGNvbnRleHQgbWFuYWdlci4KICAgICAgICAgICAgIGFyZ3M6IEV4dHJhIGFyZ3MuCiAgICAgICAgICAgICBrd2FyZ3M6IEV4dHJhIGt3YXJncy4KICAgICAgICAgIiIiCiAgICAgICAgIGNvbnRleHQgPSBfQXNzZXJ0V2FybnNDb250ZXh0KGV4cGVjdGVkX3dhcm5pbmcsIHNlbGYsIGNhbGxhYmxlX29iaiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfcmVnZXgpCi0gICAgICAgIGlmIGNhbGxhYmxlX29iaiBpcyBOb25lOgotICAgICAgICAgICAgcmV0dXJuIGNvbnRleHQKLSAgICAgICAgd2l0aCBjb250ZXh0OgotICAgICAgICAgICAgY2FsbGFibGVfb2JqKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgcmV0dXJuIGNvbnRleHQuaGFuZGxlKCdhc3NlcnRXYXJuc1JlZ2V4JywgY2FsbGFibGVfb2JqLCBhcmdzLCBrd2FyZ3MpCiAKICAgICBkZWYgYXNzZXJ0UmVnZXgoc2VsZiwgdGV4dCwgZXhwZWN0ZWRfcmVnZXgsIG1zZz1Ob25lKToKICAgICAgICAgIiIiRmFpbCB0aGUgdGVzdCB1bmxlc3MgdGhlIHRleHQgbWF0Y2hlcyB0aGUgcmVndWxhciBleHByZXNzaW9uLiIiIgpkaWZmIC0tZ2l0IGEvTGliL3VuaXR0ZXN0L21haW4ucHkgYi9MaWIvdW5pdHRlc3QvbWFpbi5weQppbmRleCA1NWQ0ZTRiLi5jNTAwNjZmIDEwMDY0NAotLS0gYS9MaWIvdW5pdHRlc3QvbWFpbi5weQorKysgYi9MaWIvdW5pdHRlc3QvbWFpbi5weQpAQCAtMiw3ICsyLDYgQEAKIAogaW1wb3J0IHN5cwogaW1wb3J0IG9zCi1pbXBvcnQgdHlwZXMKIAogZnJvbSAuIGltcG9ydCBsb2FkZXIsIHJ1bm5lcgogZnJvbSAuc2lnbmFscyBpbXBvcnQgaW5zdGFsbEhhbmRsZXIKZGlmZiAtLWdpdCBhL0xpYi91bml0dGVzdC9yZXN1bHQucHkgYi9MaWIvdW5pdHRlc3QvcmVzdWx0LnB5CmluZGV4IDQ0YmYxODYuLjk3ZTU0MjYgMTAwNjQ0Ci0tLSBhL0xpYi91bml0dGVzdC9yZXN1bHQucHkKKysrIGIvTGliL3VuaXR0ZXN0L3Jlc3VsdC5weQpAQCAtMSw2ICsxLDUgQEAKICIiIlRlc3QgcmVzdWx0IG9iamVjdCIiIgogCi1pbXBvcnQgb3MKIGltcG9ydCBpbwogaW1wb3J0IHN5cwogaW1wb3J0IHRyYWNlYmFjawpkaWZmIC0tZ2l0IGEvTGliL3VuaXR0ZXN0L3Rlc3QvX3Rlc3Rfd2FybmluZ3MucHkgYi9MaWIvdW5pdHRlc3QvdGVzdC9fdGVzdF93YXJuaW5ncy5weQppbmRleCBkMGJlMThkLi41Y2JmYjUzIDEwMDY0NAotLS0gYS9MaWIvdW5pdHRlc3QvdGVzdC9fdGVzdF93YXJuaW5ncy5weQorKysgYi9MaWIvdW5pdHRlc3QvdGVzdC9fdGVzdF93YXJuaW5ncy5weQpAQCAtMTAsNyArMTAsNiBAQAogU2VlICMxMDUzNS4KICIiIgogCi1pbXBvcnQgaW8KIGltcG9ydCBzeXMKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IHdhcm5pbmdzCmRpZmYgLS1naXQgYS9MaWIvdW5pdHRlc3QvdGVzdC90ZXN0X2Fzc2VydGlvbnMucHkgYi9MaWIvdW5pdHRlc3QvdGVzdC90ZXN0X2Fzc2VydGlvbnMucHkKaW5kZXggYTFkMjBlYi4uZDQzZmU1YSAxMDA2NDQKLS0tIGEvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9hc3NlcnRpb25zLnB5CisrKyBiL0xpYi91bml0dGVzdC90ZXN0L3Rlc3RfYXNzZXJ0aW9ucy5weQpAQCAtMSw2ICsxLDcgQEAKIGltcG9ydCBkYXRldGltZQogaW1wb3J0IHdhcm5pbmdzCiBpbXBvcnQgdW5pdHRlc3QKK2Zyb20gaXRlcnRvb2xzIGltcG9ydCBwcm9kdWN0CiAKIAogY2xhc3MgVGVzdF9Bc3NlcnRpb25zKHVuaXR0ZXN0LlRlc3RDYXNlKToKQEAgLTE0NSw2ICsxNDYsMTQgQEAKICAgICAgICAgc2VsZi50ZXN0YWJsZVRydWUuX2Zvcm1hdE1lc3NhZ2Uob25lLCAnXHVGRkZEJykKIAogICAgIGRlZiBhc3NlcnRNZXNzYWdlcyhzZWxmLCBtZXRob2ROYW1lLCBhcmdzLCBlcnJvcnMpOgorICAgICAgICAiIiIKKyAgICAgICAgQ2hlY2sgdGhhdCBtZXRob2ROYW1lKCphcmdzKSByYWlzZXMgdGhlIGNvcnJlY3QgZXJyb3IgbWVzc2FnZXMuCisgICAgICAgIGVycm9ycyBzaG91bGQgYmUgYSBsaXN0IG9mIDQgcmVnZXggdGhhdCBtYXRjaCB0aGUgZXJyb3Igd2hlbjoKKyAgICAgICAgICAxKSBsb25nTWVzc2FnZSA9IEZhbHNlIGFuZCBubyBtc2cgcGFzc2VkOworICAgICAgICAgIDIpIGxvbmdNZXNzYWdlID0gRmFsc2UgYW5kIG1zZyBwYXNzZWQ7CisgICAgICAgICAgMykgbG9uZ01lc3NhZ2UgPSBUcnVlIGFuZCBubyBtc2cgcGFzc2VkOworICAgICAgICAgIDQpIGxvbmdNZXNzYWdlID0gVHJ1ZSBhbmQgbXNnIHBhc3NlZDsKKyAgICAgICAgIiIiCiAgICAgICAgIGRlZiBnZXRNZXRob2QoaSk6CiAgICAgICAgICAgICB1c2VUZXN0YWJsZUZhbHNlICA9IGkgPCAyCiAgICAgICAgICAgICBpZiB1c2VUZXN0YWJsZUZhbHNlOgpAQCAtMjg0LDMgKzI5Myw2NyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsiXnVuZXhwZWN0ZWRseSBpZGVudGljYWw6IE5vbmUkIiwgIl5vb3BzJCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJedW5leHBlY3RlZGx5IGlkZW50aWNhbDogTm9uZSQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiXnVuZXhwZWN0ZWRseSBpZGVudGljYWw6IE5vbmUgOiBvb3BzJCJdKQorCisKKyAgICBkZWYgYXNzZXJ0TWVzc2FnZXNDTShzZWxmLCBtZXRob2ROYW1lLCBhcmdzLCBmdW5jLCBlcnJvcnMpOgorICAgICAgICAiIiIKKyAgICAgICAgQ2hlY2sgdGhhdCB0aGUgY29ycmVjdCBlcnJvciBtZXNzYWdlcyBhcmUgcmFpc2VkIHdoaWxlIGV4ZWN1dGluZzoKKyAgICAgICAgICB3aXRoIG1ldGhvZCgqYXJncyk6CisgICAgICAgICAgICAgIGZ1bmMoKQorICAgICAgICAqZXJyb3JzKiBzaG91bGQgYmUgYSBsaXN0IG9mIDQgcmVnZXggdGhhdCBtYXRjaCB0aGUgZXJyb3Igd2hlbjoKKyAgICAgICAgICAxKSBsb25nTWVzc2FnZSA9IEZhbHNlIGFuZCBubyBtc2cgcGFzc2VkOworICAgICAgICAgIDIpIGxvbmdNZXNzYWdlID0gRmFsc2UgYW5kIG1zZyBwYXNzZWQ7CisgICAgICAgICAgMykgbG9uZ01lc3NhZ2UgPSBUcnVlIGFuZCBubyBtc2cgcGFzc2VkOworICAgICAgICAgIDQpIGxvbmdNZXNzYWdlID0gVHJ1ZSBhbmQgbXNnIHBhc3NlZDsKKyAgICAgICAgIiIiCisgICAgICAgIHAgPSBwcm9kdWN0KChzZWxmLnRlc3RhYmxlRmFsc2UsIHNlbGYudGVzdGFibGVUcnVlKSwKKyAgICAgICAgICAgICAgICAgICAgKHt9LCB7Im1zZyI6ICJvb3BzIn0pKQorICAgICAgICBmb3IgKGNscywga3dhcmdzKSwgZXJyIGluIHppcChwLCBlcnJvcnMpOgorICAgICAgICAgICAgbWV0aG9kID0gZ2V0YXR0cihjbHMsIG1ldGhvZE5hbWUpCisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoY2xzLmZhaWx1cmVFeGNlcHRpb24sIGVycik6CisgICAgICAgICAgICAgICAgd2l0aCBtZXRob2QoKmFyZ3MsICoqa3dhcmdzKSBhcyBjbToKKyAgICAgICAgICAgICAgICAgICAgZnVuYygpCisKKyAgICBkZWYgdGVzdEFzc2VydFJhaXNlcyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRNZXNzYWdlc0NNKCdhc3NlcnRSYWlzZXMnLCAoVHlwZUVycm9yLCksIGxhbWJkYTogTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsnXlR5cGVFcnJvciBub3QgcmFpc2VkJCcsICdeb29wcyQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdeVHlwZUVycm9yIG5vdCByYWlzZWQkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXlR5cGVFcnJvciBub3QgcmFpc2VkIDogb29wcyQnXSkKKworICAgIGRlZiB0ZXN0QXNzZXJ0UmFpc2VzUmVnZXgoc2VsZik6CisgICAgICAgICMgdGVzdCBlcnJvciBub3QgcmFpc2VkCisgICAgICAgIHNlbGYuYXNzZXJ0TWVzc2FnZXNDTSgnYXNzZXJ0UmFpc2VzUmVnZXgnLCAoVHlwZUVycm9yLCAndW51c2VkIHJlZ2V4JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGE6IE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJ15UeXBlRXJyb3Igbm90IHJhaXNlZCQnLCAnXm9vcHMkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXlR5cGVFcnJvciBub3QgcmFpc2VkJCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ15UeXBlRXJyb3Igbm90IHJhaXNlZCA6IG9vcHMkJ10pCisgICAgICAgICMgdGVzdCBlcnJvciByYWlzZWQgYnV0IHdpdGggd3JvbmcgbWVzc2FnZQorICAgICAgICBkZWYgcmFpc2Vfd3JvbmdfbWVzc2FnZSgpOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCdmb28nKQorICAgICAgICBzZWxmLmFzc2VydE1lc3NhZ2VzQ00oJ2Fzc2VydFJhaXNlc1JlZ2V4JywgKFR5cGVFcnJvciwgJ3JlZ2V4JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZV93cm9uZ19tZXNzYWdlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWydeInJlZ2V4IiBkb2VzIG5vdCBtYXRjaCAiZm9vIiQnLCAnXm9vcHMkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXiJyZWdleCIgZG9lcyBub3QgbWF0Y2ggImZvbyIkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXiJyZWdleCIgZG9lcyBub3QgbWF0Y2ggImZvbyIgOiBvb3BzJCddKQorCisgICAgZGVmIHRlc3RBc3NlcnRXYXJucyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRNZXNzYWdlc0NNKCdhc3NlcnRXYXJucycsIChVc2VyV2FybmluZywpLCBsYW1iZGE6IE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJ15Vc2VyV2FybmluZyBub3QgdHJpZ2dlcmVkJCcsICdeb29wcyQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdeVXNlcldhcm5pbmcgbm90IHRyaWdnZXJlZCQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdeVXNlcldhcm5pbmcgbm90IHRyaWdnZXJlZCA6IG9vcHMkJ10pCisKKyAgICBkZWYgdGVzdEFzc2VydFdhcm5zUmVnZXgoc2VsZik6CisgICAgICAgICMgdGVzdCBlcnJvciBub3QgcmFpc2VkCisgICAgICAgIHNlbGYuYXNzZXJ0TWVzc2FnZXNDTSgnYXNzZXJ0V2FybnNSZWdleCcsIChVc2VyV2FybmluZywgJ3VudXNlZCByZWdleCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhOiBOb25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWydeVXNlcldhcm5pbmcgbm90IHRyaWdnZXJlZCQnLCAnXm9vcHMkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXlVzZXJXYXJuaW5nIG5vdCB0cmlnZ2VyZWQkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXlVzZXJXYXJuaW5nIG5vdCB0cmlnZ2VyZWQgOiBvb3BzJCddKQorICAgICAgICAjIHRlc3Qgd2FybmluZyByYWlzZWQgYnV0IHdpdGggd3JvbmcgbWVzc2FnZQorICAgICAgICBkZWYgcmFpc2Vfd3JvbmdfbWVzc2FnZSgpOgorICAgICAgICAgICAgd2FybmluZ3Mud2FybignZm9vJykKKyAgICAgICAgc2VsZi5hc3NlcnRNZXNzYWdlc0NNKCdhc3NlcnRXYXJuc1JlZ2V4JywgKFVzZXJXYXJuaW5nLCAncmVnZXgnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlX3dyb25nX21lc3NhZ2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJ14icmVnZXgiIGRvZXMgbm90IG1hdGNoICJmb28iJCcsICdeb29wcyQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdeInJlZ2V4IiBkb2VzIG5vdCBtYXRjaCAiZm9vIiQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdeInJlZ2V4IiBkb2VzIG5vdCBtYXRjaCAiZm9vIiA6IG9vcHMkJ10pCmRpZmYgLS1naXQgYS9MaWIvdW5pdHRlc3QvdGVzdC90ZXN0X2Nhc2UucHkgYi9MaWIvdW5pdHRlc3QvdGVzdC90ZXN0X2Nhc2UucHkKaW5kZXggYzc0YTUzOS4uZmRiMmU3OCAxMDA2NDQKLS0tIGEvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9jYXNlLnB5CisrKyBiL0xpYi91bml0dGVzdC90ZXN0L3Rlc3RfY2FzZS5weQpAQCAtNCw2ICs0LDcgQEAKIGltcG9ydCByZQogaW1wb3J0IHN5cwogaW1wb3J0IHdhcm5pbmdzCitpbXBvcnQgd2Vha3JlZgogaW1wb3J0IGluc3BlY3QKIAogZnJvbSBjb3B5IGltcG9ydCBkZWVwY29weQpAQCAtMzg2LDI3ICszODcsNjIgQEAKICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKEZvbygpLmlkKCksIHN0cikKIAogCi0gICAgIyAiSWYgcmVzdWx0IGlzIG9taXR0ZWQgb3IgTm9uZSwgYSB0ZW1wb3JhcnkgcmVzdWx0IG9iamVjdCBpcyBjcmVhdGVkCi0gICAgIyBhbmQgdXNlZCwgYnV0IGlzIG5vdCBtYWRlIGF2YWlsYWJsZSB0byB0aGUgY2FsbGVyLiBBcyBUZXN0Q2FzZSBvd25zIHRoZQorICAgICMgIklmIHJlc3VsdCBpcyBvbWl0dGVkIG9yIE5vbmUsIGEgdGVtcG9yYXJ5IHJlc3VsdCBvYmplY3QgaXMgY3JlYXRlZCwKKyAgICAjIHVzZWQsIGFuZCBpcyBtYWRlIGF2YWlsYWJsZSB0byB0aGUgY2FsbGVyLiBBcyBUZXN0Q2FzZSBvd25zIHRoZQogICAgICMgdGVtcG9yYXJ5IHJlc3VsdCBzdGFydFRlc3RSdW4gYW5kIHN0b3BUZXN0UnVuIGFyZSBjYWxsZWQuCiAKICAgICBkZWYgdGVzdF9ydW5fX3VzZXNfZGVmYXVsdFRlc3RSZXN1bHQoc2VsZik6CiAgICAgICAgIGV2ZW50cyA9IFtdCisgICAgICAgIGRlZmF1bHRSZXN1bHQgPSBMb2dnaW5nUmVzdWx0KGV2ZW50cykKIAogICAgICAgICBjbGFzcyBGb28odW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICAgICAgZGVmIHRlc3Qoc2VsZik6CiAgICAgICAgICAgICAgICAgZXZlbnRzLmFwcGVuZCgndGVzdCcpCiAKICAgICAgICAgICAgIGRlZiBkZWZhdWx0VGVzdFJlc3VsdChzZWxmKToKLSAgICAgICAgICAgICAgICByZXR1cm4gTG9nZ2luZ1Jlc3VsdChldmVudHMpCisgICAgICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHRSZXN1bHQKIAogICAgICAgICAjIE1ha2UgcnVuKCkgZmluZCBhIHJlc3VsdCBvYmplY3Qgb24gaXRzIG93bgotICAgICAgICBGb28oJ3Rlc3QnKS5ydW4oKQorICAgICAgICByZXN1bHQgPSBGb28oJ3Rlc3QnKS5ydW4oKQogCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocmVzdWx0LCBkZWZhdWx0UmVzdWx0KQogICAgICAgICBleHBlY3RlZCA9IFsnc3RhcnRUZXN0UnVuJywgJ3N0YXJ0VGVzdCcsICd0ZXN0JywgJ2FkZFN1Y2Nlc3MnLAogICAgICAgICAgICAgJ3N0b3BUZXN0JywgJ3N0b3BUZXN0UnVuJ10KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChldmVudHMsIGV4cGVjdGVkKQogCisKKyAgICAjICJUaGUgcmVzdWx0IG9iamVjdCBpcyByZXR1cm5lZCB0byBydW4ncyBjYWxsZXIiCisgICAgZGVmIHRlc3RfcnVuX19yZXR1cm5zX2dpdmVuX3Jlc3VsdChzZWxmKToKKworICAgICAgICBjbGFzcyBGb28odW5pdHRlc3QuVGVzdENhc2UpOgorICAgICAgICAgICAgZGVmIHRlc3Qoc2VsZik6CisgICAgICAgICAgICAgICAgcGFzcworCisgICAgICAgIHJlc3VsdCA9IHVuaXR0ZXN0LlRlc3RSZXN1bHQoKQorCisgICAgICAgIHJldHZhbCA9IEZvbygndGVzdCcpLnJ1bihyZXN1bHQpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocmV0dmFsLCByZXN1bHQpCisKKworICAgICMgIlRoZSBzYW1lIGVmZmVjdCBbYXMgbWV0aG9kIHJ1bl0gbWF5IGJlIGhhZCBieSBzaW1wbHkgY2FsbGluZyB0aGUKKyAgICAjIFRlc3RDYXNlIGluc3RhbmNlLiIKKyAgICBkZWYgdGVzdF9jYWxsX19pbnZva2luZ19hbl9pbnN0YW5jZV9kZWxlZ2F0ZXNfdG9fcnVuKHNlbGYpOgorICAgICAgICByZXN1bHRJbiA9IHVuaXR0ZXN0LlRlc3RSZXN1bHQoKQorICAgICAgICByZXN1bHRPdXQgPSB1bml0dGVzdC5UZXN0UmVzdWx0KCkKKworICAgICAgICBjbGFzcyBGb28odW5pdHRlc3QuVGVzdENhc2UpOgorICAgICAgICAgICAgZGVmIHRlc3Qoc2VsZik6CisgICAgICAgICAgICAgICAgcGFzcworCisgICAgICAgICAgICBkZWYgcnVuKHNlbGYsIHJlc3VsdCk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhyZXN1bHQsIHJlc3VsdEluKQorICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHRPdXQKKworICAgICAgICByZXR2YWwgPSBGb28oJ3Rlc3QnKShyZXN1bHRJbikKKworICAgICAgICBzZWxmLmFzc2VydElzKHJldHZhbCwgcmVzdWx0T3V0KQorCisKICAgICBkZWYgdGVzdFNob3J0RGVzY3JpcHRpb25XaXRob3V0RG9jc3RyaW5nKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydElzTm9uZShzZWxmLnNob3J0RGVzY3JpcHRpb24oKSkKIApAQCAtMTE0MCw3ICsxMTc2LDYgQEAKICAgICAgICAgICAgIChzZWxmLmFzc2VydF8sIChUcnVlLCkpLAogICAgICAgICAgICAgKHNlbGYuZmFpbFVubGVzc1JhaXNlcywgKFR5cGVFcnJvciwgbGFtYmRhIF86IDMuMTQgKyAnc3BhbScpKSwKICAgICAgICAgICAgIChzZWxmLmZhaWxJZiwgKEZhbHNlLCkpLAotICAgICAgICAgICAgKHNlbGYuYXNzZXJ0U2FtZUVsZW1lbnRzLCAoWzEsIDEsIDIsIDNdLCBbMSwgMiwgM10pKSwKICAgICAgICAgICAgIChzZWxmLmFzc2VydERpY3RDb250YWluc1N1YnNldCwgKGRpY3QoYT0xLCBiPTIpLCBkaWN0KGE9MSwgYj0yLCBjPTMpKSksCiAgICAgICAgICAgICAoc2VsZi5hc3NlcnRSYWlzZXNSZWdleHAsIChLZXlFcnJvciwgJ2ZvbycsIGxhbWJkYToge31bJ2ZvbyddKSksCiAgICAgICAgICAgICAoc2VsZi5hc3NlcnRSZWdleHBNYXRjaGVzLCAoJ2JhcicsICdiYXInKSksCkBAIC0xMTQ5LDE4ICsxMTg0LDIwIEBACiAgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0V2FybnMoRGVwcmVjYXRpb25XYXJuaW5nKToKICAgICAgICAgICAgICAgICBtZXRoKCphcmdzKQogCi0gICAgZGVmIHRlc3REZXByZWNhdGVkRmFpbE1ldGhvZHMoc2VsZik6Ci0gICAgICAgICIiIlRlc3QgdGhhdCB0aGUgZGVwcmVjYXRlZCBmYWlsKiBtZXRob2RzIGdldCByZW1vdmVkIGluIDMuMyIiIgorICAgICMgZGlzYWJsZSB0aGlzIHRlc3QgZm9yIG5vdy4gV2hlbiB0aGUgdmVyc2lvbiB3aGVyZSB0aGUgZmFpbCogbWV0aG9kcyB3aWxsCisgICAgIyBiZSByZW1vdmVkIGlzIGRlY2lkZWQsIHJlLWVuYWJsZSBpdCBhbmQgdXBkYXRlIHRoZSB2ZXJzaW9uCisgICAgZGVmIF90ZXN0RGVwcmVjYXRlZEZhaWxNZXRob2RzKHNlbGYpOgorICAgICAgICAiIiJUZXN0IHRoYXQgdGhlIGRlcHJlY2F0ZWQgZmFpbCogbWV0aG9kcyBnZXQgcmVtb3ZlZCBpbiAzLngiIiIKICAgICAgICAgaWYgc3lzLnZlcnNpb25faW5mb1s6Ml0gPCAoMywgMyk6CiAgICAgICAgICAgICByZXR1cm4KICAgICAgICAgZGVwcmVjYXRlZF9uYW1lcyA9IFsKICAgICAgICAgICAgICdmYWlsSWZFcXVhbCcsICdmYWlsVW5sZXNzRXF1YWwnLCAnZmFpbFVubGVzc0FsbW9zdEVxdWFsJywKICAgICAgICAgICAgICdmYWlsSWZBbG1vc3RFcXVhbCcsICdmYWlsVW5sZXNzJywgJ2ZhaWxVbmxlc3NSYWlzZXMnLCAnZmFpbElmJywKLSAgICAgICAgICAgICdhc3NlcnRTYW1lRWxlbWVudHMnLCAnYXNzZXJ0RGljdENvbnRhaW5zU3Vic2V0JywKKyAgICAgICAgICAgICdhc3NlcnREaWN0Q29udGFpbnNTdWJzZXQnLAogICAgICAgICBdCiAgICAgICAgIGZvciBkZXByZWNhdGVkX25hbWUgaW4gZGVwcmVjYXRlZF9uYW1lczoKICAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXR0cmlidXRlRXJyb3IpOgotICAgICAgICAgICAgICAgIGdldGF0dHIoc2VsZiwgZGVwcmVjYXRlZF9uYW1lKSAgIyByZW1vdmUgdGhlc2UgaW4gMy4zCisgICAgICAgICAgICAgICAgZ2V0YXR0cihzZWxmLCBkZXByZWNhdGVkX25hbWUpICAjIHJlbW92ZSB0aGVzZSBpbiAzLngKIAogICAgIGRlZiB0ZXN0RGVlcGNvcHkoc2VsZik6CiAgICAgICAgICMgSXNzdWU6IDU2NjAKQEAgLTEyNjgsMyArMTMwNSwxMSBAQAogICAgICAgICAgICAga2xhc3MoJ3Rlc3Rfc29tZXRoaW5nJykucnVuKHJlc3VsdCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHJlc3VsdC5lcnJvcnMpLCAxKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQudGVzdHNSdW4sIDEpCisKKyAgICBAc3VwcG9ydC5jcHl0aG9uX29ubHkKKyAgICBkZWYgdGVzdE5vQ3ljbGVzKHNlbGYpOgorICAgICAgICBjYXNlID0gdW5pdHRlc3QuVGVzdENhc2UoKQorICAgICAgICB3ciA9IHdlYWtyZWYucmVmKGNhc2UpCisgICAgICAgIHdpdGggc3VwcG9ydC5kaXNhYmxlX2djKCk6CisgICAgICAgICAgICBkZWwgY2FzZQorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh3cigpKQpkaWZmIC0tZ2l0IGEvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9sb2FkZXIucHkgYi9MaWIvdW5pdHRlc3QvdGVzdC90ZXN0X2xvYWRlci5weQppbmRleCBmN2UzMWE1Li5kMWI5ZWY1IDEwMDY0NAotLS0gYS9MaWIvdW5pdHRlc3QvdGVzdC90ZXN0X2xvYWRlci5weQorKysgYi9MaWIvdW5pdHRlc3QvdGVzdC90ZXN0X2xvYWRlci5weQpAQCAtMjM5LDcgKzIzOSw3IEBACiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGxvYWRlci5sb2FkVGVzdHNGcm9tTmFtZSgnc2Rhc2Zhc2Zhc2RmJykKICAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yIGFzIGU6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihlKSwgIk5vIG1vZHVsZSBuYW1lZCBzZGFzZmFzZmFzZGYiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoZSksICJObyBtb2R1bGUgbmFtZWQgJ3NkYXNmYXNmYXNkZiciKQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgc2VsZi5mYWlsKCJUZXN0TG9hZGVyLmxvYWRUZXN0c0Zyb21OYW1lIGZhaWxlZCB0byByYWlzZSBJbXBvcnRFcnJvciIpCiAKQEAgLTYxOSw3ICs2MTksNyBAQAogICAgICAgICB0cnk6CiAgICAgICAgICAgICBsb2FkZXIubG9hZFRlc3RzRnJvbU5hbWVzKFsnc2Rhc2Zhc2Zhc2RmJ10pCiAgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvciBhcyBlOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoZSksICJObyBtb2R1bGUgbmFtZWQgc2Rhc2Zhc2Zhc2RmIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKGUpLCAiTm8gbW9kdWxlIG5hbWVkICdzZGFzZmFzZmFzZGYnIikKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHNlbGYuZmFpbCgiVGVzdExvYWRlci5sb2FkVGVzdHNGcm9tTmFtZXMgZmFpbGVkIHRvIHJhaXNlIEltcG9ydEVycm9yIikKIApkaWZmIC0tZ2l0IGEvTGliL3VybGxpYi9lcnJvci5weSBiL0xpYi91cmxsaWIvZXJyb3IucHkKaW5kZXggNDBhZGQ0MS4uYzFkZmM0MCAxMDA2NDQKLS0tIGEvTGliL3VybGxpYi9lcnJvci5weQorKysgYi9MaWIvdXJsbGliL2Vycm9yLnB5CkBAIC0xMyw2ICsxMyw5IEBACiAKIGltcG9ydCB1cmxsaWIucmVzcG9uc2UKIAorX19hbGxfXyA9IFsnVVJMRXJyb3InLCAnSFRUUEVycm9yJywgJ0NvbnRlbnRUb29TaG9ydEVycm9yJ10KKworCiAjIGRvIHRoZXNlIGVycm9yIGNsYXNzZXMgbWFrZSBzZW5zZT8KICMgbWFrZSBzdXJlIGFsbCBvZiB0aGUgSU9FcnJvciBzdHVmZiBpcyBvdmVycmlkZGVuLiAgd2UganVzdCB3YW50IHRvIGJlCiAjIHN1YnR5cGVzLgpkaWZmIC0tZ2l0IGEvTGliL3VybGxpYi9yZXF1ZXN0LnB5IGIvTGliL3VybGxpYi9yZXF1ZXN0LnB5CmluZGV4IDk0YjcxM2UuLjkwZGZjZmYgMTAwNjQ0Ci0tLSBhL0xpYi91cmxsaWIvcmVxdWVzdC5weQorKysgYi9MaWIvdXJsbGliL3JlcXVlc3QucHkKQEAgLTg5LDcgKzg5LDYgQEAKIGltcG9ydCBpbwogaW1wb3J0IG9zCiBpbXBvcnQgcG9zaXhwYXRoCi1pbXBvcnQgcmFuZG9tCiBpbXBvcnQgcmUKIGltcG9ydCBzb2NrZXQKIGltcG9ydCBzeXMKQEAgLTExMSw2ICsxMTAsMjIgQEAKIGVsc2U6CiAgICAgX2hhdmVfc3NsID0gVHJ1ZQogCitfX2FsbF9fID0gWworICAgICMgQ2xhc3NlcworICAgICdSZXF1ZXN0JywgJ09wZW5lckRpcmVjdG9yJywgJ0Jhc2VIYW5kbGVyJywgJ0hUVFBEZWZhdWx0RXJyb3JIYW5kbGVyJywKKyAgICAnSFRUUFJlZGlyZWN0SGFuZGxlcicsICdIVFRQQ29va2llUHJvY2Vzc29yJywgJ1Byb3h5SGFuZGxlcicsCisgICAgJ0hUVFBQYXNzd29yZE1ncicsICdIVFRQUGFzc3dvcmRNZ3JXaXRoRGVmYXVsdFJlYWxtJywKKyAgICAnQWJzdHJhY3RCYXNpY0F1dGhIYW5kbGVyJywgJ0hUVFBCYXNpY0F1dGhIYW5kbGVyJywgJ1Byb3h5QmFzaWNBdXRoSGFuZGxlcicsCisgICAgJ0Fic3RyYWN0RGlnZXN0QXV0aEhhbmRsZXInLCAnSFRUUERpZ2VzdEF1dGhIYW5kbGVyJywgJ1Byb3h5RGlnZXN0QXV0aEhhbmRsZXInLAorICAgICdIVFRQSGFuZGxlcicsICdGaWxlSGFuZGxlcicsICdGVFBIYW5kbGVyJywgJ0NhY2hlRlRQSGFuZGxlcicsCisgICAgJ1Vua25vd25IYW5kbGVyJywgJ0hUVFBFcnJvclByb2Nlc3NvcicsCisgICAgIyBGdW5jdGlvbnMKKyAgICAndXJsb3BlbicsICdpbnN0YWxsX29wZW5lcicsICdidWlsZF9vcGVuZXInLAorICAgICdwYXRobmFtZTJ1cmwnLCAndXJsMnBhdGhuYW1lJywgJ2dldHByb3hpZXMnLAorICAgICMgTGVnYWN5IGludGVyZmFjZQorICAgICd1cmxyZXRyaWV2ZScsICd1cmxjbGVhbnVwJywgJ1VSTG9wZW5lcicsICdGYW5jeVVSTG9wZW5lcicsCitdCisKICMgdXNlZCBpbiBVc2VyLUFnZW50IGhlYWRlciBzZW50CiBfX3ZlcnNpb25fXyA9IHN5cy52ZXJzaW9uWzozXQogCkBAIC0xNzcsNyArMTkyLDggQEAKIGNsYXNzIFJlcXVlc3Q6CiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgdXJsLCBkYXRhPU5vbmUsIGhlYWRlcnM9e30sCi0gICAgICAgICAgICAgICAgIG9yaWdpbl9yZXFfaG9zdD1Ob25lLCB1bnZlcmlmaWFibGU9RmFsc2UpOgorICAgICAgICAgICAgICAgICBvcmlnaW5fcmVxX2hvc3Q9Tm9uZSwgdW52ZXJpZmlhYmxlPUZhbHNlLAorICAgICAgICAgICAgICAgICBtZXRob2Q9Tm9uZSk6CiAgICAgICAgICMgdW53cmFwKCc8VVJMOnR5cGU6Ly9ob3N0L3BhdGg+JykgLS0+ICd0eXBlOi8vaG9zdC9wYXRoJwogICAgICAgICBzZWxmLmZ1bGxfdXJsID0gdW53cmFwKHVybCkKICAgICAgICAgc2VsZi5mdWxsX3VybCwgc2VsZi5mcmFnbWVudCA9IHNwbGl0dGFnKHNlbGYuZnVsbF91cmwpCkBAIC0xOTEsNiArMjA3LDcgQEAKICAgICAgICAgICAgIG9yaWdpbl9yZXFfaG9zdCA9IHJlcXVlc3RfaG9zdChzZWxmKQogICAgICAgICBzZWxmLm9yaWdpbl9yZXFfaG9zdCA9IG9yaWdpbl9yZXFfaG9zdAogICAgICAgICBzZWxmLnVudmVyaWZpYWJsZSA9IHVudmVyaWZpYWJsZQorICAgICAgICBzZWxmLm1ldGhvZCA9IG1ldGhvZAogICAgICAgICBzZWxmLl9wYXJzZSgpCiAKICAgICBkZWYgX3BhcnNlKHNlbGYpOgpAQCAtMjAyLDcgKzIxOSwxMCBAQAogICAgICAgICAgICAgc2VsZi5ob3N0ID0gdW5xdW90ZShzZWxmLmhvc3QpCiAKICAgICBkZWYgZ2V0X21ldGhvZChzZWxmKToKLSAgICAgICAgaWYgc2VsZi5kYXRhIGlzIG5vdCBOb25lOgorICAgICAgICAiIiJSZXR1cm4gYSBzdHJpbmcgaW5kaWNhdGluZyB0aGUgSFRUUCByZXF1ZXN0IG1ldGhvZC4iIiIKKyAgICAgICAgaWYgc2VsZi5tZXRob2QgaXMgbm90IE5vbmU6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5tZXRob2QKKyAgICAgICAgZWxpZiBzZWxmLmRhdGEgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICByZXR1cm4gIlBPU1QiCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICByZXR1cm4gIkdFVCIKQEAgLTgyNCwxNCArODQ0LDIwIEBACiAgICAgICAgICAgICBzZWxmLnJldHJpZWQgKz0gMQogCiAgICAgICAgIGlmIGF1dGhyZXE6Ci0gICAgICAgICAgICBtbyA9IEFic3RyYWN0QmFzaWNBdXRoSGFuZGxlci5yeC5zZWFyY2goYXV0aHJlcSkKLSAgICAgICAgICAgIGlmIG1vOgotICAgICAgICAgICAgICAgIHNjaGVtZSwgcXVvdGUsIHJlYWxtID0gbW8uZ3JvdXBzKCkKLSAgICAgICAgICAgICAgICBpZiBzY2hlbWUubG93ZXIoKSA9PSAnYmFzaWMnOgotICAgICAgICAgICAgICAgICAgICByZXNwb25zZSA9IHNlbGYucmV0cnlfaHR0cF9iYXNpY19hdXRoKGhvc3QsIHJlcSwgcmVhbG0pCi0gICAgICAgICAgICAgICAgICAgIGlmIHJlc3BvbnNlIGFuZCByZXNwb25zZS5jb2RlICE9IDQwMToKLSAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYucmV0cmllZCA9IDAKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlCisgICAgICAgICAgICBzY2hlbWUgPSBhdXRocmVxLnNwbGl0KClbMF0KKyAgICAgICAgICAgIGlmIHNjaGVtZS5sb3dlcigpICE9ICdiYXNpYyc6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiQWJzdHJhY3RCYXNpY0F1dGhIYW5kbGVyIGRvZXMgbm90IgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiBzdXBwb3J0IHRoZSBmb2xsb3dpbmcgc2NoZW1lOiAnJXMnIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2hlbWUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG1vID0gQWJzdHJhY3RCYXNpY0F1dGhIYW5kbGVyLnJ4LnNlYXJjaChhdXRocmVxKQorICAgICAgICAgICAgICAgIGlmIG1vOgorICAgICAgICAgICAgICAgICAgICBzY2hlbWUsIHF1b3RlLCByZWFsbSA9IG1vLmdyb3VwcygpCisgICAgICAgICAgICAgICAgICAgIGlmIHNjaGVtZS5sb3dlcigpID09ICdiYXNpYyc6CisgICAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZSA9IHNlbGYucmV0cnlfaHR0cF9iYXNpY19hdXRoKGhvc3QsIHJlcSwgcmVhbG0pCisgICAgICAgICAgICAgICAgICAgICAgICBpZiByZXNwb25zZSBhbmQgcmVzcG9uc2UuY29kZSAhPSA0MDE6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5yZXRyaWVkID0gMAorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlCiAKICAgICBkZWYgcmV0cnlfaHR0cF9iYXNpY19hdXRoKHNlbGYsIGhvc3QsIHJlcSwgcmVhbG0pOgogICAgICAgICB1c2VyLCBwdyA9IHNlbGYucGFzc3dkLmZpbmRfdXNlcl9wYXNzd29yZChyZWFsbSwgaG9zdCkKQEAgLTg3NCw5ICs5MDAsOSBAQAogICAgICAgICByZXR1cm4gcmVzcG9uc2UKIAogCi1kZWYgcmFuZG9tYnl0ZXMobik6Ci0gICAgIiIiUmV0dXJuIG4gcmFuZG9tIGJ5dGVzLiIiIgotICAgIHJldHVybiBvcy51cmFuZG9tKG4pCisjIFJldHVybiBuIHJhbmRvbSBieXRlcy4KK19yYW5kb21ieXRlcyA9IG9zLnVyYW5kb20KKwogCiBjbGFzcyBBYnN0cmFjdERpZ2VzdEF1dGhIYW5kbGVyOgogICAgICMgRGlnZXN0IGF1dGhlbnRpY2F0aW9uIGlzIHNwZWNpZmllZCBpbiBSRkMgMjYxNy4KQEAgLTkxNyw2ICs5NDMsOSBAQAogICAgICAgICAgICAgc2NoZW1lID0gYXV0aHJlcS5zcGxpdCgpWzBdCiAgICAgICAgICAgICBpZiBzY2hlbWUubG93ZXIoKSA9PSAnZGlnZXN0JzoKICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5yZXRyeV9odHRwX2RpZ2VzdF9hdXRoKHJlcSwgYXV0aHJlcSkKKyAgICAgICAgICAgIGVsaWYgc2NoZW1lLmxvd2VyKCkgIT0gJ2Jhc2ljJzoKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJBYnN0cmFjdERpZ2VzdEF1dGhIYW5kbGVyIGRvZXMgbm90IHN1cHBvcnQiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIHRoZSBmb2xsb3dpbmcgc2NoZW1lOiAnJXMnIiAlIHNjaGVtZSkKIAogICAgIGRlZiByZXRyeV9odHRwX2RpZ2VzdF9hdXRoKHNlbGYsIHJlcSwgYXV0aCk6CiAgICAgICAgIHRva2VuLCBjaGFsbGVuZ2UgPSBhdXRoLnNwbGl0KCcgJywgMSkKQEAgLTkzNyw3ICs5NjYsNyBAQAogICAgICAgICAjIGF1dGhlbnRpY2F0aW9uLCBhbmQgdG8gcHJvdmlkZSBzb21lIG1lc3NhZ2UgaW50ZWdyaXR5IHByb3RlY3Rpb24uCiAgICAgICAgICMgVGhpcyBpc24ndCBhIGZhYnVsb3VzIGVmZm9ydCwgYnV0IGl0J3MgcHJvYmFibHkgR29vZCBFbm91Z2guCiAgICAgICAgIHMgPSAiJXM6JXM6JXM6IiAlIChzZWxmLm5vbmNlX2NvdW50LCBub25jZSwgdGltZS5jdGltZSgpKQotICAgICAgICBiID0gcy5lbmNvZGUoImFzY2lpIikgKyByYW5kb21ieXRlcyg4KQorICAgICAgICBiID0gcy5lbmNvZGUoImFzY2lpIikgKyBfcmFuZG9tYnl0ZXMoOCkKICAgICAgICAgZGlnID0gaGFzaGxpYi5zaGExKGIpLmhleGRpZ2VzdCgpCiAgICAgICAgIHJldHVybiBkaWdbOjE2XQogCkBAIC0xMTU3LDcgKzExODYsNiBAQAogICAgIGh0dHBfcmVxdWVzdCA9IEFic3RyYWN0SFRUUEhhbmRsZXIuZG9fcmVxdWVzdF8KIAogaWYgaGFzYXR0cihodHRwLmNsaWVudCwgJ0hUVFBTQ29ubmVjdGlvbicpOgotICAgIGltcG9ydCBzc2wKIAogICAgIGNsYXNzIEhUVFBTSGFuZGxlcihBYnN0cmFjdEhUVFBIYW5kbGVyKToKIApAQCAtMTE3Miw2ICsxMjAwLDggQEAKIAogICAgICAgICBodHRwc19yZXF1ZXN0ID0gQWJzdHJhY3RIVFRQSGFuZGxlci5kb19yZXF1ZXN0XwogCisgICAgX19hbGxfXy5hcHBlbmQoJ0hUVFBTSGFuZGxlcicpCisKIGNsYXNzIEhUVFBDb29raWVQcm9jZXNzb3IoQmFzZUhhbmRsZXIpOgogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBjb29raWVqYXI9Tm9uZSk6CiAgICAgICAgIGltcG9ydCBodHRwLmNvb2tpZWphcgpAQCAtMTUzNyw2ICsxNTY3LDggQEAKICAgICAgICAgICAgICAgICByZXR1cm4gZ2V0YXR0cihzZWxmLCBuYW1lKSh1cmwpCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHJldHVybiBnZXRhdHRyKHNlbGYsIG5hbWUpKHVybCwgZGF0YSkKKyAgICAgICAgZXhjZXB0IEhUVFBFcnJvcjoKKyAgICAgICAgICAgIHJhaXNlCiAgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3IgYXMgbXNnOgogICAgICAgICAgICAgcmFpc2UgSU9FcnJvcignc29ja2V0IGVycm9yJywgbXNnKS53aXRoX3RyYWNlYmFjayhzeXMuZXhjX2luZm8oKVsyXSkKIApAQCAtMTc1Niw4ICsxNzg4LDggQEAKIAogICAgIGRlZiBvcGVuX2xvY2FsX2ZpbGUoc2VsZiwgdXJsKToKICAgICAgICAgIiIiVXNlIGxvY2FsIGZpbGUuIiIiCi0gICAgICAgIGltcG9ydCBtaW1ldHlwZXMsIGVtYWlsLnV0aWxzCi0gICAgICAgIGZyb20gaW8gaW1wb3J0IFN0cmluZ0lPCisgICAgICAgIGltcG9ydCBlbWFpbC51dGlscworICAgICAgICBpbXBvcnQgbWltZXR5cGVzCiAgICAgICAgIGhvc3QsIGZpbGUgPSBzcGxpdGhvc3QodXJsKQogICAgICAgICBsb2NhbG5hbWUgPSB1cmwycGF0aG5hbWUoZmlsZSkKICAgICAgICAgdHJ5OgpAQCAtMTc5MSw3ICsxODIzLDYgQEAKICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UodXJsLCBzdHIpOgogICAgICAgICAgICAgcmFpc2UgVVJMRXJyb3IoJ2Z0cCBlcnJvcicsICdwcm94eSBzdXBwb3J0IGZvciBmdHAgcHJvdG9jb2wgY3VycmVudGx5IG5vdCBpbXBsZW1lbnRlZCcpCiAgICAgICAgIGltcG9ydCBtaW1ldHlwZXMKLSAgICAgICAgZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KICAgICAgICAgaG9zdCwgcGF0aCA9IHNwbGl0aG9zdCh1cmwpCiAgICAgICAgIGlmIG5vdCBob3N0OiByYWlzZSBVUkxFcnJvcignZnRwIGVycm9yJywgJ25vIGhvc3QgZ2l2ZW4nKQogICAgICAgICBob3N0LCBwb3J0ID0gc3BsaXRwb3J0KGhvc3QpCkBAIC0xODc0LDcgKzE5MDUsNyBAQAogICAgICAgICBtc2cuYXBwZW5kKCdDb250ZW50LXR5cGU6ICVzJyAlIHR5cGUpCiAgICAgICAgIGlmIGVuY29kaW5nID09ICdiYXNlNjQnOgogICAgICAgICAgICAgIyBYWFggaXMgdGhpcyBlbmNvZGluZy9kZWNvZGluZyBvaz8KLSAgICAgICAgICAgIGRhdGEgPSBiYXNlNjQuZGVjb2RlYnl0ZXMoZGF0YS5lbmNvZGUoJ2FzY2lpJykpLmRlY29kZSgnbGF0aW4xJykKKyAgICAgICAgICAgIGRhdGEgPSBiYXNlNjQuZGVjb2RlYnl0ZXMoZGF0YS5lbmNvZGUoJ2FzY2lpJykpLmRlY29kZSgnbGF0aW4tMScpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBkYXRhID0gdW5xdW90ZShkYXRhKQogICAgICAgICBtc2cuYXBwZW5kKCdDb250ZW50LUxlbmd0aDogJWQnICUgbGVuKGRhdGEpKQpAQCAtMTk2Nyw3ICsxOTk4LDYgQEAKICAgICAgICAgICAgIFVSTG9wZW5lci5odHRwX2Vycm9yX2RlZmF1bHQoc2VsZiwgdXJsLCBmcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyY29kZSwgZXJybXNnLCBoZWFkZXJzKQogICAgICAgICBzdHVmZiA9IGhlYWRlcnNbJ3d3dy1hdXRoZW50aWNhdGUnXQotICAgICAgICBpbXBvcnQgcmUKICAgICAgICAgbWF0Y2ggPSByZS5tYXRjaCgnWyBcdF0qKFteIFx0XSspWyBcdF0rcmVhbG09IihbXiJdKikiJywgc3R1ZmYpCiAgICAgICAgIGlmIG5vdCBtYXRjaDoKICAgICAgICAgICAgIFVSTG9wZW5lci5odHRwX2Vycm9yX2RlZmF1bHQoc2VsZiwgdXJsLCBmcCwKQEAgLTE5OTMsNyArMjAyMyw2IEBACiAgICAgICAgICAgICBVUkxvcGVuZXIuaHR0cF9lcnJvcl9kZWZhdWx0KHNlbGYsIHVybCwgZnAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycmNvZGUsIGVycm1zZywgaGVhZGVycykKICAgICAgICAgc3R1ZmYgPSBoZWFkZXJzWydwcm94eS1hdXRoZW50aWNhdGUnXQotICAgICAgICBpbXBvcnQgcmUKICAgICAgICAgbWF0Y2ggPSByZS5tYXRjaCgnWyBcdF0qKFteIFx0XSspWyBcdF0rcmVhbG09IihbXiJdKikiJywgc3R1ZmYpCiAgICAgICAgIGlmIG5vdCBtYXRjaDoKICAgICAgICAgICAgIFVSTG9wZW5lci5odHRwX2Vycm9yX2RlZmF1bHQoc2VsZiwgdXJsLCBmcCwKQEAgLTIyODUsOCArMjMxNCw2IEBACiAgICAgICAnZXhjZXB0aW9ucyc6IFsnZm9vLmJhcicsICcqLmJhci5jb20nLCAnMTI3LjAuMC4xJywgJzEwLjEnLCAnMTAuMC8xNiddCiAgICAgfQogICAgICIiIgotICAgIGltcG9ydCByZQotICAgIGltcG9ydCBzb2NrZXQKICAgICBmcm9tIGZubWF0Y2ggaW1wb3J0IGZubWF0Y2gKIAogICAgIGhvc3Rvbmx5LCBwb3J0ID0gc3BsaXRwb3J0KGhvc3QpCkBAIC0yMzg5LDcgKzI0MTYsNiBAQAogICAgICAgICAgICAgICAgICAgICBmb3IgcCBpbiBwcm94eVNlcnZlci5zcGxpdCgnOycpOgogICAgICAgICAgICAgICAgICAgICAgICAgcHJvdG9jb2wsIGFkZHJlc3MgPSBwLnNwbGl0KCc9JywgMSkKICAgICAgICAgICAgICAgICAgICAgICAgICMgU2VlIGlmIGFkZHJlc3MgaGFzIGEgdHlwZTovLyBwcmVmaXgKLSAgICAgICAgICAgICAgICAgICAgICAgIGltcG9ydCByZQogICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90IHJlLm1hdGNoKCdeKFteLzpdKyk6Ly8nLCBhZGRyZXNzKToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzID0gJyVzOi8vJXMnICUgKHByb3RvY29sLCBhZGRyZXNzKQogICAgICAgICAgICAgICAgICAgICAgICAgcHJveGllc1twcm90b2NvbF0gPSBhZGRyZXNzCkBAIC0yNDIxLDcgKzI0NDcsNiBAQAogICAgIGRlZiBwcm94eV9ieXBhc3NfcmVnaXN0cnkoaG9zdCk6CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGltcG9ydCB3aW5yZWcKLSAgICAgICAgICAgIGltcG9ydCByZQogICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgICAgICAgICAjIFN0ZCBtb2R1bGVzLCBzbyBzaG91bGQgYmUgYXJvdW5kIC0gYnV0IHlvdSBuZXZlciBrbm93IQogICAgICAgICAgICAgcmV0dXJuIDAKZGlmZiAtLWdpdCBhL0xpYi91cmxsaWIvcmVzcG9uc2UucHkgYi9MaWIvdXJsbGliL3Jlc3BvbnNlLnB5CmluZGV4IDhjNmRjY2EuLmI0M2U1NzUgMTAwNjQ0Ci0tLSBhL0xpYi91cmxsaWIvcmVzcG9uc2UucHkKKysrIGIvTGliL3VybGxpYi9yZXNwb25zZS5weQpAQCAtMzcsMTIgKzM3LDE1IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZChzZWxmKSwgc2VsZi5mcCkKIAogICAgIGRlZiBjbG9zZShzZWxmKToKKyAgICAgICAgaWYgc2VsZi5mcDoKKyAgICAgICAgICAgIHNlbGYuZnAuY2xvc2UoKQorICAgICAgICBzZWxmLmZwID0gTm9uZQogICAgICAgICBzZWxmLnJlYWQgPSBOb25lCiAgICAgICAgIHNlbGYucmVhZGxpbmUgPSBOb25lCiAgICAgICAgIHNlbGYucmVhZGxpbmVzID0gTm9uZQogICAgICAgICBzZWxmLmZpbGVubyA9IE5vbmUKLSAgICAgICAgaWYgc2VsZi5mcDogc2VsZi5mcC5jbG9zZSgpCi0gICAgICAgIHNlbGYuZnAgPSBOb25lCisgICAgICAgIHNlbGYuX19pdGVyX18gPSBOb25lCisgICAgICAgIHNlbGYuX19uZXh0X18gPSBOb25lCiAKICAgICBkZWYgX19lbnRlcl9fKHNlbGYpOgogICAgICAgICBpZiBzZWxmLmZwIGlzIE5vbmU6CmRpZmYgLS1naXQgYS9MaWIvd2ViYnJvd3Nlci5weSBiL0xpYi93ZWJicm93c2VyLnB5CmluZGV4IDZmOTY3YjYuLmQwMzYzNTUgMTAwNjQ0Ci0tLSBhL0xpYi93ZWJicm93c2VyLnB5CisrKyBiL0xpYi93ZWJicm93c2VyLnB5CkBAIC0yOTksNiArMjk5LDE4IEBACiAgICAgYmFja2dyb3VuZCA9IFRydWUKIAogCitjbGFzcyBDaHJvbWUoVW5peEJyb3dzZXIpOgorICAgICJMYXVuY2hlciBjbGFzcyBmb3IgR29vZ2xlIENocm9tZSBicm93c2VyLiIKKworICAgIHJlbW90ZV9hcmdzID0gWyclYWN0aW9uJywgJyVzJ10KKyAgICByZW1vdGVfYWN0aW9uID0gIiIKKyAgICByZW1vdGVfYWN0aW9uX25ld3dpbiA9ICItLW5ldy13aW5kb3ciCisgICAgcmVtb3RlX2FjdGlvbl9uZXd0YWIgPSAiIgorICAgIGJhY2tncm91bmQgPSBUcnVlCisKK0Nocm9taXVtID0gQ2hyb21lCisKKwogY2xhc3MgT3BlcmEoVW5peEJyb3dzZXIpOgogICAgICJMYXVuY2hlciBjbGFzcyBmb3IgT3BlcmEgYnJvd3Nlci4iCiAKQEAgLTQ2Niw2ICs0NzgsMTEgQEAKICAgICBpZiBfaXNjb21tYW5kKCJza2lwc3RvbmUiKToKICAgICAgICAgcmVnaXN0ZXIoInNraXBzdG9uZSIsIE5vbmUsIEJhY2tncm91bmRCcm93c2VyKCJza2lwc3RvbmUiKSkKIAorICAgICMgR29vZ2xlIENocm9tZS9DaHJvbWl1bSBicm93c2VycworICAgIGZvciBicm93c2VyIGluICgiZ29vZ2xlLWNocm9tZSIsICJjaHJvbWUiLCAiY2hyb21pdW0iLCAiY2hyb21pdW0tYnJvd3NlciIpOgorICAgICAgICBpZiBfaXNjb21tYW5kKGJyb3dzZXIpOgorICAgICAgICAgICAgcmVnaXN0ZXIoYnJvd3NlciwgTm9uZSwgQ2hyb21lKGJyb3dzZXIpKQorCiAgICAgIyBPcGVyYSwgcXVpdGUgcG9wdWxhcgogICAgIGlmIF9pc2NvbW1hbmQoIm9wZXJhIik6CiAgICAgICAgIHJlZ2lzdGVyKCJvcGVyYSIsIE5vbmUsIE9wZXJhKCJvcGVyYSIpKQpkaWZmIC0tZ2l0IGEvTGliL3dzZ2lyZWYuZWdnLWluZm8gYi9MaWIvd3NnaXJlZi5lZ2ctaW5mbwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzBiNzg5My4uMDAwMDAwMAotLS0gYS9MaWIvd3NnaXJlZi5lZ2ctaW5mbworKysgL2Rldi9udWxsCkBAIC0xLDggKzAsMCBAQAotTWV0YWRhdGEtVmVyc2lvbjogMS4wCi1OYW1lOiB3c2dpcmVmCi1WZXJzaW9uOiAwLjEuMgotU3VtbWFyeTogV1NHSSAoUEVQIDMzMykgUmVmZXJlbmNlIExpYnJhcnkKLUF1dGhvcjogUGhpbGxpcCBKLiBFYnkKLUF1dGhvci1lbWFpbDogd2ViLXNpZ0BweXRob24ub3JnCi1MaWNlbnNlOiBQU0Ygb3IgWlBMCi1QbGF0Zm9ybTogVU5LTk9XTgpkaWZmIC0tZ2l0IGEvTGliL3hkcmxpYi5weSBiL0xpYi94ZHJsaWIucHkKaW5kZXggNGU0ODY3Ny4uODZlNjI0ZiAxMDA2NDQKLS0tIGEvTGliL3hkcmxpYi5weQorKysgYi9MaWIveGRybGliLnB5CkBAIC0xNDEsMTEgKzE0MSw3IEBACiAgICAgICAgIGRhdGEgPSBzZWxmLl9fYnVmW2k6al0KICAgICAgICAgaWYgbGVuKGRhdGEpIDwgNDoKICAgICAgICAgICAgIHJhaXNlIEVPRkVycm9yCi0gICAgICAgIHggPSBzdHJ1Y3QudW5wYWNrKCc+TCcsIGRhdGEpWzBdCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHJldHVybiBpbnQoeCkKLSAgICAgICAgZXhjZXB0IE92ZXJmbG93RXJyb3I6Ci0gICAgICAgICAgICByZXR1cm4geAorICAgICAgICByZXR1cm4gc3RydWN0LnVucGFjaygnPkwnLCBkYXRhKVswXQogCiAgICAgZGVmIHVucGFja19pbnQoc2VsZik6CiAgICAgICAgIGkgPSBzZWxmLl9fcG9zCmRpZmYgLS1naXQgYS9MaWIveG1sL2RvbS9fX2luaXRfXy5weSBiL0xpYi94bWwvZG9tL19faW5pdF9fLnB5CmluZGV4IDQ0MDFiZGYuLjk3Y2Y5YTYgMTAwNjQ0Ci0tLSBhL0xpYi94bWwvZG9tL19faW5pdF9fLnB5CisrKyBiL0xpYi94bWwvZG9tL19faW5pdF9fLnB5CkBAIC0xNyw2ICsxNyw3IEBACiAKIGNsYXNzIE5vZGU6CiAgICAgIiIiQ2xhc3MgZ2l2aW5nIHRoZSBOb2RlVHlwZSBjb25zdGFudHMuIiIiCisgICAgX19zbG90c19fID0gKCkKIAogICAgICMgRE9NIGltcGxlbWVudGF0aW9ucyBtYXkgdXNlIHRoaXMgYXMgYSBiYXNlIGNsYXNzIGZvciB0aGVpciBvd24KICAgICAjIE5vZGUgaW1wbGVtZW50YXRpb25zLiAgSWYgdGhleSBkb24ndCwgdGhlIGNvbnN0YW50cyBkZWZpbmVkIGhlcmUKZGlmZiAtLWdpdCBhL0xpYi94bWwvZG9tL2RvbXJlZy5weSBiL0xpYi94bWwvZG9tL2RvbXJlZy5weQppbmRleCBjYjM1YmIwLi44YzNkOTAxIDEwMDY0NAotLS0gYS9MaWIveG1sL2RvbS9kb21yZWcucHkKKysrIGIvTGliL3htbC9kb20vZG9tcmVnLnB5CkBAIC0yLDggKzIsNiBAQAogZGlyZWN0bHkuIEluc3RlYWQsIHRoZSBmdW5jdGlvbnMgZ2V0RE9NSW1wbGVtZW50YXRpb24gYW5kCiByZWdpc3RlckRPTUltcGxlbWVudGF0aW9uIHNob3VsZCBiZSBpbXBvcnRlZCBmcm9tIHhtbC5kb20uIiIiCiAKLWZyb20geG1sLmRvbS5taW5pY29tcGF0IGltcG9ydCAqICAjIGlzaW5zdGFuY2UsIFN0cmluZ1R5cGVzCi0KICMgVGhpcyBpcyBhIGxpc3Qgb2Ygd2VsbC1rbm93biBpbXBsZW1lbnRhdGlvbnMuICBXZWxsLWtub3duIG5hbWVzCiAjIHNob3VsZCBiZSBwdWJsaXNoZWQgYnkgcG9zdGluZyB0byB4bWwtc2lnQHB5dGhvbi5vcmcsIGFuZCBhcmUKICMgc3Vic2VxdWVudGx5IHJlY29yZGVkIGluIHRoaXMgZmlsZS4KZGlmZiAtLWdpdCBhL0xpYi94bWwvZG9tL2V4cGF0YnVpbGRlci5weSBiL0xpYi94bWwvZG9tL2V4cGF0YnVpbGRlci5weQppbmRleCBhOThmZTAzLi5mMDc0YWI5IDEwMDY0NAotLS0gYS9MaWIveG1sL2RvbS9leHBhdGJ1aWxkZXIucHkKKysrIGIvTGliL3htbC9kb20vZXhwYXRidWlsZGVyLnB5CkBAIC0zMyw4ICszMyw2IEBACiBmcm9tIHhtbC5kb20ubWluaWRvbSBpbXBvcnQgX2FwcGVuZF9jaGlsZCwgX3NldF9hdHRyaWJ1dGVfbm9kZQogZnJvbSB4bWwuZG9tLk5vZGVGaWx0ZXIgaW1wb3J0IE5vZGVGaWx0ZXIKIAotZnJvbSB4bWwuZG9tLm1pbmljb21wYXQgaW1wb3J0ICoKLQogVEVYVF9OT0RFID0gTm9kZS5URVhUX05PREUKIENEQVRBX1NFQ1RJT05fTk9ERSA9IE5vZGUuQ0RBVEFfU0VDVElPTl9OT0RFCiBET0NVTUVOVF9OT0RFID0gTm9kZS5ET0NVTUVOVF9OT0RFCkBAIC0yODMsMjcgKzI4MSwyMyBAQAogICAgICAgICBlbGlmIGNoaWxkTm9kZXMgYW5kIGNoaWxkTm9kZXNbLTFdLm5vZGVUeXBlID09IFRFWFRfTk9ERToKICAgICAgICAgICAgIG5vZGUgPSBjaGlsZE5vZGVzWy0xXQogICAgICAgICAgICAgdmFsdWUgPSBub2RlLmRhdGEgKyBkYXRhCi0gICAgICAgICAgICBkID0gbm9kZS5fX2RpY3RfXwotICAgICAgICAgICAgZFsnZGF0YSddID0gZFsnbm9kZVZhbHVlJ10gPSB2YWx1ZQorICAgICAgICAgICAgbm9kZS5kYXRhID0gdmFsdWUKICAgICAgICAgICAgIHJldHVybgogICAgICAgICBlbHNlOgogICAgICAgICAgICAgbm9kZSA9IG1pbmlkb20uVGV4dCgpCi0gICAgICAgICAgICBkID0gbm9kZS5fX2RpY3RfXwotICAgICAgICAgICAgZFsnZGF0YSddID0gZFsnbm9kZVZhbHVlJ10gPSBkYXRhCi0gICAgICAgICAgICBkWydvd25lckRvY3VtZW50J10gPSBzZWxmLmRvY3VtZW50CisgICAgICAgICAgICBub2RlLmRhdGEgPSBkYXRhCisgICAgICAgICAgICBub2RlLm93bmVyRG9jdW1lbnQgPSBzZWxmLmRvY3VtZW50CiAgICAgICAgIF9hcHBlbmRfY2hpbGQoc2VsZi5jdXJOb2RlLCBub2RlKQogCiAgICAgZGVmIGNoYXJhY3Rlcl9kYXRhX2hhbmRsZXIoc2VsZiwgZGF0YSk6CiAgICAgICAgIGNoaWxkTm9kZXMgPSBzZWxmLmN1ck5vZGUuY2hpbGROb2RlcwogICAgICAgICBpZiBjaGlsZE5vZGVzIGFuZCBjaGlsZE5vZGVzWy0xXS5ub2RlVHlwZSA9PSBURVhUX05PREU6CiAgICAgICAgICAgICBub2RlID0gY2hpbGROb2Rlc1stMV0KLSAgICAgICAgICAgIGQgPSBub2RlLl9fZGljdF9fCi0gICAgICAgICAgICBkWydkYXRhJ10gPSBkWydub2RlVmFsdWUnXSA9IG5vZGUuZGF0YSArIGRhdGEKKyAgICAgICAgICAgIG5vZGUuZGF0YSA9IG5vZGUuZGF0YSArIGRhdGEKICAgICAgICAgICAgIHJldHVybgogICAgICAgICBub2RlID0gbWluaWRvbS5UZXh0KCkKLSAgICAgICAgZCA9IG5vZGUuX19kaWN0X18KLSAgICAgICAgZFsnZGF0YSddID0gZFsnbm9kZVZhbHVlJ10gPSBub2RlLmRhdGEgKyBkYXRhCi0gICAgICAgIGRbJ293bmVyRG9jdW1lbnQnXSA9IHNlbGYuZG9jdW1lbnQKKyAgICAgICAgbm9kZS5kYXRhID0gbm9kZS5kYXRhICsgZGF0YQorICAgICAgICBub2RlLm93bmVyRG9jdW1lbnQgPSBzZWxmLmRvY3VtZW50CiAgICAgICAgIF9hcHBlbmRfY2hpbGQoc2VsZi5jdXJOb2RlLCBub2RlKQogCiAgICAgZGVmIGVudGl0eV9kZWNsX2hhbmRsZXIoc2VsZiwgZW50aXR5TmFtZSwgaXNfcGFyYW1ldGVyX2VudGl0eSwgdmFsdWUsCkBAIC0zNjMsMTEgKzM1Nyw4IEBACiAgICAgICAgICAgICAgICAgYSA9IG1pbmlkb20uQXR0cihhdHRyaWJ1dGVzW2ldLCBFTVBUWV9OQU1FU1BBQ0UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb25lLCBFTVBUWV9QUkVGSVgpCiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhdHRyaWJ1dGVzW2krMV0KLSAgICAgICAgICAgICAgICBkID0gYS5jaGlsZE5vZGVzWzBdLl9fZGljdF9fCi0gICAgICAgICAgICAgICAgZFsnZGF0YSddID0gZFsnbm9kZVZhbHVlJ10gPSB2YWx1ZQotICAgICAgICAgICAgICAgIGQgPSBhLl9fZGljdF9fCi0gICAgICAgICAgICAgICAgZFsndmFsdWUnXSA9IGRbJ25vZGVWYWx1ZSddID0gdmFsdWUKLSAgICAgICAgICAgICAgICBkWydvd25lckRvY3VtZW50J10gPSBzZWxmLmRvY3VtZW50CisgICAgICAgICAgICAgICAgYS52YWx1ZSA9IHZhbHVlCisgICAgICAgICAgICAgICAgYS5vd25lckRvY3VtZW50ID0gc2VsZi5kb2N1bWVudAogICAgICAgICAgICAgICAgIF9zZXRfYXR0cmlidXRlX25vZGUobm9kZSwgYSkKIAogICAgICAgICBpZiBub2RlIGlzIG5vdCBzZWxmLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudDoKQEAgLTc2MSwxNSArNzUyLDEzIEBACiAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgYSA9IG1pbmlkb20uQXR0cigieG1sbnMiLCBYTUxOU19OQU1FU1BBQ0UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInhtbG5zIiwgRU1QVFlfUFJFRklYKQotICAgICAgICAgICAgICAgIGQgPSBhLmNoaWxkTm9kZXNbMF0uX19kaWN0X18KLSAgICAgICAgICAgICAgICBkWydkYXRhJ10gPSBkWydub2RlVmFsdWUnXSA9IHVyaQotICAgICAgICAgICAgICAgIGQgPSBhLl9fZGljdF9fCi0gICAgICAgICAgICAgICAgZFsndmFsdWUnXSA9IGRbJ25vZGVWYWx1ZSddID0gdXJpCi0gICAgICAgICAgICAgICAgZFsnb3duZXJEb2N1bWVudCddID0gc2VsZi5kb2N1bWVudAorICAgICAgICAgICAgICAgIGEudmFsdWUgPSB1cmkKKyAgICAgICAgICAgICAgICBhLm93bmVyRG9jdW1lbnQgPSBzZWxmLmRvY3VtZW50CiAgICAgICAgICAgICAgICAgX3NldF9hdHRyaWJ1dGVfbm9kZShub2RlLCBhKQogICAgICAgICAgICAgZGVsIHNlbGYuX25zX29yZGVyZWRfcHJlZml4ZXNbOl0KIAogICAgICAgICBpZiBhdHRyaWJ1dGVzOgorICAgICAgICAgICAgbm9kZS5fZW5zdXJlX2F0dHJpYnV0ZXMoKQogICAgICAgICAgICAgX2F0dHJzID0gbm9kZS5fYXR0cnMKICAgICAgICAgICAgIF9hdHRyc05TID0gbm9kZS5fYXR0cnNOUwogICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMCwgbGVuKGF0dHJpYnV0ZXMpLCAyKToKQEAgLTc4NSwxMiArNzc0LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmFtZSwgRU1QVFlfUFJFRklYKQogICAgICAgICAgICAgICAgICAgICBfYXR0cnNbYW5hbWVdID0gYQogICAgICAgICAgICAgICAgICAgICBfYXR0cnNOU1soRU1QVFlfTkFNRVNQQUNFLCBhbmFtZSldID0gYQotICAgICAgICAgICAgICAgIGQgPSBhLmNoaWxkTm9kZXNbMF0uX19kaWN0X18KLSAgICAgICAgICAgICAgICBkWydkYXRhJ10gPSBkWydub2RlVmFsdWUnXSA9IHZhbHVlCi0gICAgICAgICAgICAgICAgZCA9IGEuX19kaWN0X18KLSAgICAgICAgICAgICAgICBkWydvd25lckRvY3VtZW50J10gPSBzZWxmLmRvY3VtZW50Ci0gICAgICAgICAgICAgICAgZFsndmFsdWUnXSA9IGRbJ25vZGVWYWx1ZSddID0gdmFsdWUKLSAgICAgICAgICAgICAgICBkWydvd25lckVsZW1lbnQnXSA9IG5vZGUKKyAgICAgICAgICAgICAgICBhLm93bmVyRG9jdW1lbnQgPSBzZWxmLmRvY3VtZW50CisgICAgICAgICAgICAgICAgYS52YWx1ZSA9IHZhbHVlCisgICAgICAgICAgICAgICAgYS5vd25lckVsZW1lbnQgPSBub2RlCiAKICAgICBpZiBfX2RlYnVnX186CiAgICAgICAgICMgVGhpcyBvbmx5IGFkZHMgc29tZSBhc3NlcnRzIHRvIHRoZSBvcmlnaW5hbApkaWZmIC0tZ2l0IGEvTGliL3htbC9kb20vbWluaWRvbS5weSBiL0xpYi94bWwvZG9tL21pbmlkb20ucHkKaW5kZXggZjIzYWQwNS4uMjc1ZTIwYyAxMDA2NDQKLS0tIGEvTGliL3htbC9kb20vbWluaWRvbS5weQorKysgYi9MaWIveG1sL2RvbS9taW5pZG9tLnB5CkBAIC02MiwxMCArNjIsNyBAQAogICAgICAgICAgICAgcmV0dXJuIHdyaXRlci5zdHJlYW0uZ2V0dmFsdWUoKQogCiAgICAgZGVmIGhhc0NoaWxkTm9kZXMoc2VsZik6Ci0gICAgICAgIGlmIHNlbGYuY2hpbGROb2RlczoKLSAgICAgICAgICAgIHJldHVybiBUcnVlCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICAgcmV0dXJuIGJvb2woc2VsZi5jaGlsZE5vZGVzKQogCiAgICAgZGVmIF9nZXRfY2hpbGROb2RlcyhzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuY2hpbGROb2RlcwpAQCAtMjg2LDEwICsyODMsMTAgQEAKICAgICBjaGlsZE5vZGVzID0gc2VsZi5jaGlsZE5vZGVzCiAgICAgaWYgY2hpbGROb2RlczoKICAgICAgICAgbGFzdCA9IGNoaWxkTm9kZXNbLTFdCi0gICAgICAgIG5vZGUuX19kaWN0X19bInByZXZpb3VzU2libGluZyJdID0gbGFzdAotICAgICAgICBsYXN0Ll9fZGljdF9fWyJuZXh0U2libGluZyJdID0gbm9kZQorICAgICAgICBub2RlLnByZXZpb3VzU2libGluZyA9IGxhc3QKKyAgICAgICAgbGFzdC5uZXh0U2libGluZyA9IG5vZGUKICAgICBjaGlsZE5vZGVzLmFwcGVuZChub2RlKQotICAgIG5vZGUuX19kaWN0X19bInBhcmVudE5vZGUiXSA9IHNlbGYKKyAgICBub2RlLnBhcmVudE5vZGUgPSBzZWxmCiAKIGRlZiBfaW5fZG9jdW1lbnQobm9kZSk6CiAgICAgIyByZXR1cm4gVHJ1ZSBpZmYgbm9kZSBpcyBwYXJ0IG9mIGEgZG9jdW1lbnQgdHJlZQpAQCAtMzQyLDkgKzMzOSwxMCBAQAogCiAKIGNsYXNzIEF0dHIoTm9kZSk6CisgICAgX19zbG90c19fPSgnX25hbWUnLCAnX3ZhbHVlJywgJ25hbWVzcGFjZVVSSScsCisgICAgICAgICAgICAgICAnX3ByZWZpeCcsICdjaGlsZE5vZGVzJywgJ19sb2NhbE5hbWUnLCAnb3duZXJEb2N1bWVudCcsICdvd25lckVsZW1lbnQnKQogICAgIG5vZGVUeXBlID0gTm9kZS5BVFRSSUJVVEVfTk9ERQogICAgIGF0dHJpYnV0ZXMgPSBOb25lCi0gICAgb3duZXJFbGVtZW50ID0gTm9uZQogICAgIHNwZWNpZmllZCA9IEZhbHNlCiAgICAgX2lzX2lkID0gRmFsc2UKIApAQCAtMzUyLDEyICszNTAsMTEgQEAKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBxTmFtZSwgbmFtZXNwYWNlVVJJPUVNUFRZX05BTUVTUEFDRSwgbG9jYWxOYW1lPU5vbmUsCiAgICAgICAgICAgICAgICAgIHByZWZpeD1Ob25lKToKLSAgICAgICAgIyBza2lwIHNldGF0dHIgZm9yIHBlcmZvcm1hbmNlCi0gICAgICAgIGQgPSBzZWxmLl9fZGljdF9fCi0gICAgICAgIGRbIm5vZGVOYW1lIl0gPSBkWyJuYW1lIl0gPSBxTmFtZQotICAgICAgICBkWyJuYW1lc3BhY2VVUkkiXSA9IG5hbWVzcGFjZVVSSQotICAgICAgICBkWyJwcmVmaXgiXSA9IHByZWZpeAotICAgICAgICBkWydjaGlsZE5vZGVzJ10gPSBOb2RlTGlzdCgpCisgICAgICAgIHNlbGYub3duZXJFbGVtZW50ID0gTm9uZQorICAgICAgICBzZWxmLl9uYW1lID0gcU5hbWUKKyAgICAgICAgc2VsZi5uYW1lc3BhY2VVUkkgPSBuYW1lc3BhY2VVUkkKKyAgICAgICAgc2VsZi5fcHJlZml4ID0gcHJlZml4CisgICAgICAgIHNlbGYuY2hpbGROb2RlcyA9IE5vZGVMaXN0KCkKIAogICAgICAgICAjIEFkZCB0aGUgc2luZ2xlIGNoaWxkIG5vZGUgdGhhdCByZXByZXNlbnRzIHRoZSB2YWx1ZSBvZiB0aGUgYXR0cgogICAgICAgICBzZWxmLmNoaWxkTm9kZXMuYXBwZW5kKFRleHQoKSkKQEAgLTM2NSw5ICszNjIsMTAgQEAKICAgICAgICAgIyBub2RlVmFsdWUgYW5kIHZhbHVlIGFyZSBzZXQgZWxzZXdoZXJlCiAKICAgICBkZWYgX2dldF9sb2NhbE5hbWUoc2VsZik6Ci0gICAgICAgIGlmICdsb2NhbE5hbWUnIGluIHNlbGYuX19kaWN0X186Ci0gICAgICAgICAgICByZXR1cm4gc2VsZi5fX2RpY3RfX1snbG9jYWxOYW1lJ10KLSAgICAgICAgcmV0dXJuIHNlbGYubm9kZU5hbWUuc3BsaXQoIjoiLCAxKVstMV0KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2xvY2FsTmFtZQorICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5ub2RlTmFtZS5zcGxpdCgiOiIsIDEpWy0xXQogCiAgICAgZGVmIF9nZXRfbmFtZShzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYubmFtZQpAQCAtMzc1LDIwICszNzMsMzAgQEAKICAgICBkZWYgX2dldF9zcGVjaWZpZWQoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLnNwZWNpZmllZAogCi0gICAgZGVmIF9fc2V0YXR0cl9fKHNlbGYsIG5hbWUsIHZhbHVlKToKLSAgICAgICAgZCA9IHNlbGYuX19kaWN0X18KLSAgICAgICAgaWYgbmFtZSBpbiAoInZhbHVlIiwgIm5vZGVWYWx1ZSIpOgotICAgICAgICAgICAgZFsidmFsdWUiXSA9IGRbIm5vZGVWYWx1ZSJdID0gdmFsdWUKLSAgICAgICAgICAgIGQyID0gc2VsZi5jaGlsZE5vZGVzWzBdLl9fZGljdF9fCi0gICAgICAgICAgICBkMlsiZGF0YSJdID0gZDJbIm5vZGVWYWx1ZSJdID0gdmFsdWUKLSAgICAgICAgICAgIGlmIHNlbGYub3duZXJFbGVtZW50IGlzIG5vdCBOb25lOgotICAgICAgICAgICAgICAgIF9jbGVhcl9pZF9jYWNoZShzZWxmLm93bmVyRWxlbWVudCkKLSAgICAgICAgZWxpZiBuYW1lIGluICgibmFtZSIsICJub2RlTmFtZSIpOgotICAgICAgICAgICAgZFsibmFtZSJdID0gZFsibm9kZU5hbWUiXSA9IHZhbHVlCi0gICAgICAgICAgICBpZiBzZWxmLm93bmVyRWxlbWVudCBpcyBub3QgTm9uZToKLSAgICAgICAgICAgICAgICBfY2xlYXJfaWRfY2FjaGUoc2VsZi5vd25lckVsZW1lbnQpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBkW25hbWVdID0gdmFsdWUKKyAgICBkZWYgX2dldF9uYW1lKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fbmFtZQorCisgICAgZGVmIF9zZXRfbmFtZShzZWxmLCB2YWx1ZSk6CisgICAgICAgIHNlbGYuX25hbWUgPSB2YWx1ZQorICAgICAgICBpZiBzZWxmLm93bmVyRWxlbWVudCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIF9jbGVhcl9pZF9jYWNoZShzZWxmLm93bmVyRWxlbWVudCkKKworICAgIG5vZGVOYW1lID0gbmFtZSA9IHByb3BlcnR5KF9nZXRfbmFtZSwgX3NldF9uYW1lKQorCisgICAgZGVmIF9nZXRfdmFsdWUoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLl92YWx1ZQorCisgICAgZGVmIF9zZXRfdmFsdWUoc2VsZiwgdmFsdWUpOgorICAgICAgICBzZWxmLl92YWx1ZSA9IHZhbHVlCisgICAgICAgIHNlbGYuY2hpbGROb2Rlc1swXS5kYXRhID0gdmFsdWUKKyAgICAgICAgaWYgc2VsZi5vd25lckVsZW1lbnQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBfY2xlYXJfaWRfY2FjaGUoc2VsZi5vd25lckVsZW1lbnQpCisgICAgICAgIHNlbGYuY2hpbGROb2Rlc1swXS5kYXRhID0gdmFsdWUKKworICAgIG5vZGVWYWx1ZSA9IHZhbHVlID0gcHJvcGVydHkoX2dldF92YWx1ZSwgX3NldF92YWx1ZSkKKworICAgIGRlZiBfZ2V0X3ByZWZpeChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX3ByZWZpeAogCiAgICAgZGVmIF9zZXRfcHJlZml4KHNlbGYsIHByZWZpeCk6CiAgICAgICAgIG5zdXJpID0gc2VsZi5uYW1lc3BhY2VVUkkKQEAgLTM5NiwyMiArNDA0LDE2IEBACiAgICAgICAgICAgICBpZiBuc3VyaSBhbmQgbnN1cmkgIT0gWE1MTlNfTkFNRVNQQUNFOgogICAgICAgICAgICAgICAgIHJhaXNlIHhtbC5kb20uTmFtZXNwYWNlRXJyKAogICAgICAgICAgICAgICAgICAgICAiaWxsZWdhbCB1c2Ugb2YgJ3htbG5zJyBwcmVmaXggZm9yIHRoZSB3cm9uZyBuYW1lc3BhY2UiKQotICAgICAgICBkID0gc2VsZi5fX2RpY3RfXwotICAgICAgICBkWydwcmVmaXgnXSA9IHByZWZpeAorICAgICAgICBzZWxmLl9wcmVmaXggPSBwcmVmaXgKICAgICAgICAgaWYgcHJlZml4IGlzIE5vbmU6CiAgICAgICAgICAgICBuZXdOYW1lID0gc2VsZi5sb2NhbE5hbWUKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG5ld05hbWUgPSAiJXM6JXMiICUgKHByZWZpeCwgc2VsZi5sb2NhbE5hbWUpCiAgICAgICAgIGlmIHNlbGYub3duZXJFbGVtZW50OgogICAgICAgICAgICAgX2NsZWFyX2lkX2NhY2hlKHNlbGYub3duZXJFbGVtZW50KQotICAgICAgICBkWydub2RlTmFtZSddID0gZFsnbmFtZSddID0gbmV3TmFtZQorICAgICAgICBzZWxmLm5hbWUgPSBuZXdOYW1lCiAKLSAgICBkZWYgX3NldF92YWx1ZShzZWxmLCB2YWx1ZSk6Ci0gICAgICAgIGQgPSBzZWxmLl9fZGljdF9fCi0gICAgICAgIGRbJ3ZhbHVlJ10gPSBkWydub2RlVmFsdWUnXSA9IHZhbHVlCi0gICAgICAgIGlmIHNlbGYub3duZXJFbGVtZW50OgotICAgICAgICAgICAgX2NsZWFyX2lkX2NhY2hlKHNlbGYub3duZXJFbGVtZW50KQotICAgICAgICBzZWxmLmNoaWxkTm9kZXNbMF0uZGF0YSA9IHZhbHVlCisgICAgcHJlZml4ID0gcHJvcGVydHkoX2dldF9wcmVmaXgsIF9zZXRfcHJlZml4KQogCiAgICAgZGVmIHVubGluayhzZWxmKToKICAgICAgICAgIyBUaGlzIGltcGxlbWVudGF0aW9uIGRvZXMgbm90IGNhbGwgdGhlIGJhc2UgaW1wbGVtZW50YXRpb24KQEAgLTU4Niw4ICs1ODgsOCBAQAogICAgICAgICAgICAgX2NsZWFyX2lkX2NhY2hlKHNlbGYuX293bmVyRWxlbWVudCkKICAgICAgICAgICAgIGRlbCBzZWxmLl9hdHRyc1tuLm5vZGVOYW1lXQogICAgICAgICAgICAgZGVsIHNlbGYuX2F0dHJzTlNbKG4ubmFtZXNwYWNlVVJJLCBuLmxvY2FsTmFtZSldCi0gICAgICAgICAgICBpZiAnb3duZXJFbGVtZW50JyBpbiBuLl9fZGljdF9fOgotICAgICAgICAgICAgICAgIG4uX19kaWN0X19bJ293bmVyRWxlbWVudCddID0gTm9uZQorICAgICAgICAgICAgaWYgaGFzYXR0cihuLCAnb3duZXJFbGVtZW50Jyk6CisgICAgICAgICAgICAgICAgbi5vd25lckVsZW1lbnQgPSBOb25lCiAgICAgICAgICAgICByZXR1cm4gbgogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmFpc2UgeG1sLmRvbS5Ob3RGb3VuZEVycigpCkBAIC01OTgsOCArNjAwLDggQEAKICAgICAgICAgICAgIF9jbGVhcl9pZF9jYWNoZShzZWxmLl9vd25lckVsZW1lbnQpCiAgICAgICAgICAgICBkZWwgc2VsZi5fYXR0cnNOU1sobi5uYW1lc3BhY2VVUkksIG4ubG9jYWxOYW1lKV0KICAgICAgICAgICAgIGRlbCBzZWxmLl9hdHRyc1tuLm5vZGVOYW1lXQotICAgICAgICAgICAgaWYgJ293bmVyRWxlbWVudCcgaW4gbi5fX2RpY3RfXzoKLSAgICAgICAgICAgICAgICBuLl9fZGljdF9fWydvd25lckVsZW1lbnQnXSA9IE5vbmUKKyAgICAgICAgICAgIGlmIGhhc2F0dHIobiwgJ293bmVyRWxlbWVudCcpOgorICAgICAgICAgICAgICAgIG4ub3duZXJFbGVtZW50ID0gTm9uZQogICAgICAgICAgICAgcmV0dXJuIG4KICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHJhaXNlIHhtbC5kb20uTm90Rm91bmRFcnIoKQpAQCAtNjU5LDYgKzY2MSw5IEBACiBfbm9fdHlwZSA9IFR5cGVJbmZvKE5vbmUsIE5vbmUpCiAKIGNsYXNzIEVsZW1lbnQoTm9kZSk6CisgICAgX19zbG90c19fPSgnb3duZXJEb2N1bWVudCcsICdwYXJlbnROb2RlJywgJ3RhZ05hbWUnLCAnbm9kZU5hbWUnLCAncHJlZml4JywKKyAgICAgICAgICAgICAgICduYW1lc3BhY2VVUkknLCAnX2xvY2FsTmFtZScsICdjaGlsZE5vZGVzJywgJ19hdHRycycsICdfYXR0cnNOUycsCisgICAgICAgICAgICAgICAnbmV4dFNpYmxpbmcnLCAncHJldmlvdXNTaWJsaW5nJykKICAgICBub2RlVHlwZSA9IE5vZGUuRUxFTUVOVF9OT0RFCiAgICAgbm9kZVZhbHVlID0gTm9uZQogICAgIHNjaGVtYVR5cGUgPSBfbm9fdHlwZQpAQCAtNjc0LDQxICs2NzksNTcgQEAKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0YWdOYW1lLCBuYW1lc3BhY2VVUkk9RU1QVFlfTkFNRVNQQUNFLCBwcmVmaXg9Tm9uZSwKICAgICAgICAgICAgICAgICAgbG9jYWxOYW1lPU5vbmUpOgorICAgICAgICBzZWxmLnBhcmVudE5vZGUgPSBOb25lCiAgICAgICAgIHNlbGYudGFnTmFtZSA9IHNlbGYubm9kZU5hbWUgPSB0YWdOYW1lCiAgICAgICAgIHNlbGYucHJlZml4ID0gcHJlZml4CiAgICAgICAgIHNlbGYubmFtZXNwYWNlVVJJID0gbmFtZXNwYWNlVVJJCiAgICAgICAgIHNlbGYuY2hpbGROb2RlcyA9IE5vZGVMaXN0KCkKKyAgICAgICAgc2VsZi5uZXh0U2libGluZyA9IHNlbGYucHJldmlvdXNTaWJsaW5nID0gTm9uZQogCi0gICAgICAgIHNlbGYuX2F0dHJzID0ge30gICAjIGF0dHJpYnV0ZXMgYXJlIGRvdWJsZS1pbmRleGVkOgotICAgICAgICBzZWxmLl9hdHRyc05TID0ge30gIyAgICB0YWdOYW1lIC0+IEF0dHJpYnV0ZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICBVUkksbG9jYWxOYW1lIC0+IEF0dHJpYnV0ZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBpbiB0aGUgZnV0dXJlOiBjb25zaWRlciBsYXp5IGdlbmVyYXRpb24KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgb2YgYXR0cmlidXRlIG9iamVjdHMgdGhpcyBpcyB0b28gdHJpY2t5Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAjIGZvciBub3cgYmVjYXVzZSBvZiBoZWFkYWNoZXMgd2l0aAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBuYW1lc3BhY2VzLgorICAgICAgICAjIEF0dHJpYnV0ZSBkaWN0aW9uYXJpZXMgYXJlIGxhemlseSBjcmVhdGVkCisgICAgICAgICMgYXR0cmlidXRlcyBhcmUgZG91YmxlLWluZGV4ZWQ6CisgICAgICAgICMgICAgdGFnTmFtZSAtPiBBdHRyaWJ1dGUKKyAgICAgICAgIyAgICBVUkksbG9jYWxOYW1lIC0+IEF0dHJpYnV0ZQorICAgICAgICAjIGluIHRoZSBmdXR1cmU6IGNvbnNpZGVyIGxhenkgZ2VuZXJhdGlvbgorICAgICAgICAjIG9mIGF0dHJpYnV0ZSBvYmplY3RzIHRoaXMgaXMgdG9vIHRyaWNreQorICAgICAgICAjIGZvciBub3cgYmVjYXVzZSBvZiBoZWFkYWNoZXMgd2l0aAorICAgICAgICAjIG5hbWVzcGFjZXMuCisgICAgICAgIHNlbGYuX2F0dHJzID0gTm9uZQorICAgICAgICBzZWxmLl9hdHRyc05TID0gTm9uZQorCisgICAgZGVmIF9lbnN1cmVfYXR0cmlidXRlcyhzZWxmKToKKyAgICAgICAgaWYgc2VsZi5fYXR0cnMgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2F0dHJzID0ge30KKyAgICAgICAgICAgIHNlbGYuX2F0dHJzTlMgPSB7fQogCiAgICAgZGVmIF9nZXRfbG9jYWxOYW1lKHNlbGYpOgotICAgICAgICBpZiAnbG9jYWxOYW1lJyBpbiBzZWxmLl9fZGljdF9fOgotICAgICAgICAgICAgcmV0dXJuIHNlbGYuX19kaWN0X19bJ2xvY2FsTmFtZSddCi0gICAgICAgIHJldHVybiBzZWxmLnRhZ05hbWUuc3BsaXQoIjoiLCAxKVstMV0KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2xvY2FsTmFtZQorICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CisgICAgICAgICAgICByZXR1cm4gc2VsZi50YWdOYW1lLnNwbGl0KCI6IiwgMSlbLTFdCiAKICAgICBkZWYgX2dldF90YWdOYW1lKHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi50YWdOYW1lCiAKICAgICBkZWYgdW5saW5rKHNlbGYpOgotICAgICAgICBmb3IgYXR0ciBpbiBsaXN0KHNlbGYuX2F0dHJzLnZhbHVlcygpKToKLSAgICAgICAgICAgIGF0dHIudW5saW5rKCkKKyAgICAgICAgaWYgc2VsZi5fYXR0cnMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBmb3IgYXR0ciBpbiBsaXN0KHNlbGYuX2F0dHJzLnZhbHVlcygpKToKKyAgICAgICAgICAgICAgICBhdHRyLnVubGluaygpCiAgICAgICAgIHNlbGYuX2F0dHJzID0gTm9uZQogICAgICAgICBzZWxmLl9hdHRyc05TID0gTm9uZQogICAgICAgICBOb2RlLnVubGluayhzZWxmKQogCiAgICAgZGVmIGdldEF0dHJpYnV0ZShzZWxmLCBhdHRuYW1lKToKKyAgICAgICAgaWYgc2VsZi5fYXR0cnMgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiAiIgogICAgICAgICB0cnk6CiAgICAgICAgICAgICByZXR1cm4gc2VsZi5fYXR0cnNbYXR0bmFtZV0udmFsdWUKICAgICAgICAgZXhjZXB0IEtleUVycm9yOgogICAgICAgICAgICAgcmV0dXJuICIiCiAKICAgICBkZWYgZ2V0QXR0cmlidXRlTlMoc2VsZiwgbmFtZXNwYWNlVVJJLCBsb2NhbE5hbWUpOgorICAgICAgICBpZiBzZWxmLl9hdHRyc05TIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4gIiIKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2F0dHJzTlNbKG5hbWVzcGFjZVVSSSwgbG9jYWxOYW1lKV0udmFsdWUKICAgICAgICAgZXhjZXB0IEtleUVycm9yOgpAQCAtNzE4LDE0ICs3MzksMTEgQEAKICAgICAgICAgYXR0ciA9IHNlbGYuZ2V0QXR0cmlidXRlTm9kZShhdHRuYW1lKQogICAgICAgICBpZiBhdHRyIGlzIE5vbmU6CiAgICAgICAgICAgICBhdHRyID0gQXR0cihhdHRuYW1lKQotICAgICAgICAgICAgIyBmb3IgcGVyZm9ybWFuY2UKLSAgICAgICAgICAgIGQgPSBhdHRyLl9fZGljdF9fCi0gICAgICAgICAgICBkWyJ2YWx1ZSJdID0gZFsibm9kZVZhbHVlIl0gPSB2YWx1ZQotICAgICAgICAgICAgZFsib3duZXJEb2N1bWVudCJdID0gc2VsZi5vd25lckRvY3VtZW50CisgICAgICAgICAgICBhdHRyLnZhbHVlID0gdmFsdWUgIyBhbHNvIHNldHMgbm9kZVZhbHVlCisgICAgICAgICAgICBhdHRyLm93bmVyRG9jdW1lbnQgPSBzZWxmLm93bmVyRG9jdW1lbnQKICAgICAgICAgICAgIHNlbGYuc2V0QXR0cmlidXRlTm9kZShhdHRyKQogICAgICAgICBlbGlmIHZhbHVlICE9IGF0dHIudmFsdWU6Ci0gICAgICAgICAgICBkID0gYXR0ci5fX2RpY3RfXwotICAgICAgICAgICAgZFsidmFsdWUiXSA9IGRbIm5vZGVWYWx1ZSJdID0gdmFsdWUKKyAgICAgICAgICAgIGF0dHIudmFsdWUgPSB2YWx1ZQogICAgICAgICAgICAgaWYgYXR0ci5pc0lkOgogICAgICAgICAgICAgICAgIF9jbGVhcl9pZF9jYWNoZShzZWxmKQogCkBAIC03MzMsMzMgKzc1MSwzMyBAQAogICAgICAgICBwcmVmaXgsIGxvY2FsbmFtZSA9IF9uc3NwbGl0KHF1YWxpZmllZE5hbWUpCiAgICAgICAgIGF0dHIgPSBzZWxmLmdldEF0dHJpYnV0ZU5vZGVOUyhuYW1lc3BhY2VVUkksIGxvY2FsbmFtZSkKICAgICAgICAgaWYgYXR0ciBpcyBOb25lOgotICAgICAgICAgICAgIyBmb3IgcGVyZm9ybWFuY2UKICAgICAgICAgICAgIGF0dHIgPSBBdHRyKHF1YWxpZmllZE5hbWUsIG5hbWVzcGFjZVVSSSwgbG9jYWxuYW1lLCBwcmVmaXgpCi0gICAgICAgICAgICBkID0gYXR0ci5fX2RpY3RfXwotICAgICAgICAgICAgZFsicHJlZml4Il0gPSBwcmVmaXgKLSAgICAgICAgICAgIGRbIm5vZGVOYW1lIl0gPSBxdWFsaWZpZWROYW1lCi0gICAgICAgICAgICBkWyJ2YWx1ZSJdID0gZFsibm9kZVZhbHVlIl0gPSB2YWx1ZQotICAgICAgICAgICAgZFsib3duZXJEb2N1bWVudCJdID0gc2VsZi5vd25lckRvY3VtZW50CisgICAgICAgICAgICBhdHRyLnZhbHVlID0gdmFsdWUKKyAgICAgICAgICAgIGF0dHIub3duZXJEb2N1bWVudCA9IHNlbGYub3duZXJEb2N1bWVudAogICAgICAgICAgICAgc2VsZi5zZXRBdHRyaWJ1dGVOb2RlKGF0dHIpCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBkID0gYXR0ci5fX2RpY3RfXwogICAgICAgICAgICAgaWYgdmFsdWUgIT0gYXR0ci52YWx1ZToKLSAgICAgICAgICAgICAgICBkWyJ2YWx1ZSJdID0gZFsibm9kZVZhbHVlIl0gPSB2YWx1ZQorICAgICAgICAgICAgICAgIGF0dHIudmFsdWUgPSB2YWx1ZQogICAgICAgICAgICAgICAgIGlmIGF0dHIuaXNJZDoKICAgICAgICAgICAgICAgICAgICAgX2NsZWFyX2lkX2NhY2hlKHNlbGYpCiAgICAgICAgICAgICBpZiBhdHRyLnByZWZpeCAhPSBwcmVmaXg6Ci0gICAgICAgICAgICAgICAgZFsicHJlZml4Il0gPSBwcmVmaXgKLSAgICAgICAgICAgICAgICBkWyJub2RlTmFtZSJdID0gcXVhbGlmaWVkTmFtZQorICAgICAgICAgICAgICAgIGF0dHIucHJlZml4ID0gcHJlZml4CisgICAgICAgICAgICAgICAgYXR0ci5ub2RlTmFtZSA9IHF1YWxpZmllZE5hbWUKIAogICAgIGRlZiBnZXRBdHRyaWJ1dGVOb2RlKHNlbGYsIGF0dHJuYW1lKToKKyAgICAgICAgaWYgc2VsZi5fYXR0cnMgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiBOb25lCiAgICAgICAgIHJldHVybiBzZWxmLl9hdHRycy5nZXQoYXR0cm5hbWUpCiAKICAgICBkZWYgZ2V0QXR0cmlidXRlTm9kZU5TKHNlbGYsIG5hbWVzcGFjZVVSSSwgbG9jYWxOYW1lKToKKyAgICAgICAgaWYgc2VsZi5fYXR0cnNOUyBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKICAgICAgICAgcmV0dXJuIHNlbGYuX2F0dHJzTlMuZ2V0KChuYW1lc3BhY2VVUkksIGxvY2FsTmFtZSkpCiAKICAgICBkZWYgc2V0QXR0cmlidXRlTm9kZShzZWxmLCBhdHRyKToKICAgICAgICAgaWYgYXR0ci5vd25lckVsZW1lbnQgbm90IGluIChOb25lLCBzZWxmKToKICAgICAgICAgICAgIHJhaXNlIHhtbC5kb20uSW51c2VBdHRyaWJ1dGVFcnIoImF0dHJpYnV0ZSBub2RlIGFscmVhZHkgb3duZWQiKQorICAgICAgICBzZWxmLl9lbnN1cmVfYXR0cmlidXRlcygpCiAgICAgICAgIG9sZDEgPSBzZWxmLl9hdHRycy5nZXQoYXR0ci5uYW1lLCBOb25lKQogICAgICAgICBpZiBvbGQxIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgc2VsZi5yZW1vdmVBdHRyaWJ1dGVOb2RlKG9sZDEpCkBAIC03NzgsNiArNzk2LDggQEAKICAgICBzZXRBdHRyaWJ1dGVOb2RlTlMgPSBzZXRBdHRyaWJ1dGVOb2RlCiAKICAgICBkZWYgcmVtb3ZlQXR0cmlidXRlKHNlbGYsIG5hbWUpOgorICAgICAgICBpZiBzZWxmLl9hdHRyc05TIGlzIE5vbmU6CisgICAgICAgICAgICByYWlzZSB4bWwuZG9tLk5vdEZvdW5kRXJyKCkKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgYXR0ciA9IHNlbGYuX2F0dHJzW25hbWVdCiAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKQEAgLTc4NSw2ICs4MDUsOCBAQAogICAgICAgICBzZWxmLnJlbW92ZUF0dHJpYnV0ZU5vZGUoYXR0cikKIAogICAgIGRlZiByZW1vdmVBdHRyaWJ1dGVOUyhzZWxmLCBuYW1lc3BhY2VVUkksIGxvY2FsTmFtZSk6CisgICAgICAgIGlmIHNlbGYuX2F0dHJzTlMgaXMgTm9uZToKKyAgICAgICAgICAgIHJhaXNlIHhtbC5kb20uTm90Rm91bmRFcnIoKQogICAgICAgICB0cnk6CiAgICAgICAgICAgICBhdHRyID0gc2VsZi5fYXR0cnNOU1sobmFtZXNwYWNlVVJJLCBsb2NhbE5hbWUpXQogICAgICAgICBleGNlcHQgS2V5RXJyb3I6CkBAIC04MDcsOSArODI5LDEzIEBACiAgICAgcmVtb3ZlQXR0cmlidXRlTm9kZU5TID0gcmVtb3ZlQXR0cmlidXRlTm9kZQogCiAgICAgZGVmIGhhc0F0dHJpYnV0ZShzZWxmLCBuYW1lKToKKyAgICAgICAgaWYgc2VsZi5fYXR0cnMgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICByZXR1cm4gbmFtZSBpbiBzZWxmLl9hdHRycwogCiAgICAgZGVmIGhhc0F0dHJpYnV0ZU5TKHNlbGYsIG5hbWVzcGFjZVVSSSwgbG9jYWxOYW1lKToKKyAgICAgICAgaWYgc2VsZi5fYXR0cnNOUyBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCiAgICAgICAgIHJldHVybiAobmFtZXNwYWNlVVJJLCBsb2NhbE5hbWUpIGluIHNlbGYuX2F0dHJzTlMKIAogICAgIGRlZiBnZXRFbGVtZW50c0J5VGFnTmFtZShzZWxmLCBuYW1lKToKQEAgLTg1MCw2ICs4NzYsNyBAQAogICAgICAgICAgICAgd3JpdGVyLndyaXRlKCIvPiVzIiUobmV3bCkpCiAKICAgICBkZWYgX2dldF9hdHRyaWJ1dGVzKHNlbGYpOgorICAgICAgICBzZWxmLl9lbnN1cmVfYXR0cmlidXRlcygpCiAgICAgICAgIHJldHVybiBOYW1lZE5vZGVNYXAoc2VsZi5fYXR0cnMsIHNlbGYuX2F0dHJzTlMsIHNlbGYpCiAKICAgICBkZWYgaGFzQXR0cmlidXRlcyhzZWxmKToKQEAgLTg3NCw3ICs5MDEsNyBAQAogICAgICAgICBpZiBfZ2V0X2NvbnRhaW5pbmdfZW50cmVmKHNlbGYpIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgcmFpc2UgeG1sLmRvbS5Ob01vZGlmaWNhdGlvbkFsbG93ZWRFcnIoKQogICAgICAgICBpZiBub3QgaWRBdHRyLl9pc19pZDoKLSAgICAgICAgICAgIGlkQXR0ci5fX2RpY3RfX1snX2lzX2lkJ10gPSBUcnVlCisgICAgICAgICAgICBpZEF0dHIuX2lzX2lkID0gVHJ1ZQogICAgICAgICAgICAgc2VsZi5fbWFnaWNfaWRfbm9kZXMgKz0gMQogICAgICAgICAgICAgc2VsZi5vd25lckRvY3VtZW50Ll9tYWdpY19pZF9jb3VudCArPSAxCiAgICAgICAgICAgICBfY2xlYXJfaWRfY2FjaGUoc2VsZikKQEAgLTg4NywxOSArOTE0LDIwIEBACiAKIGRlZiBfc2V0X2F0dHJpYnV0ZV9ub2RlKGVsZW1lbnQsIGF0dHIpOgogICAgIF9jbGVhcl9pZF9jYWNoZShlbGVtZW50KQorICAgIGVsZW1lbnQuX2Vuc3VyZV9hdHRyaWJ1dGVzKCkKICAgICBlbGVtZW50Ll9hdHRyc1thdHRyLm5hbWVdID0gYXR0cgogICAgIGVsZW1lbnQuX2F0dHJzTlNbKGF0dHIubmFtZXNwYWNlVVJJLCBhdHRyLmxvY2FsTmFtZSldID0gYXR0cgogCiAgICAgIyBUaGlzIGNyZWF0ZXMgYSBjaXJjdWxhciByZWZlcmVuY2UsIGJ1dCBFbGVtZW50LnVubGluaygpCiAgICAgIyBicmVha3MgdGhlIGN5Y2xlIHNpbmNlIHRoZSByZWZlcmVuY2VzIHRvIHRoZSBhdHRyaWJ1dGUKICAgICAjIGRpY3Rpb25hcmllcyBhcmUgdG9zc2VkLgotICAgIGF0dHIuX19kaWN0X19bJ293bmVyRWxlbWVudCddID0gZWxlbWVudAotCisgICAgYXR0ci5vd25lckVsZW1lbnQgPSBlbGVtZW50CiAKIGNsYXNzIENoaWxkbGVzczoKICAgICAiIiJNaXhpbiB0aGF0IG1ha2VzIGNoaWxkbGVzcy1uZXNzIGVhc3kgdG8gaW1wbGVtZW50IGFuZCBhdm9pZHMKICAgICB0aGUgY29tcGxleGl0eSBvZiB0aGUgTm9kZSBtZXRob2RzIHRoYXQgZGVhbCB3aXRoIGNoaWxkcmVuLgogICAgICIiIgorICAgIF9fc2xvdHNfXyA9ICgpCiAKICAgICBhdHRyaWJ1dGVzID0gTm9uZQogICAgIGNoaWxkTm9kZXMgPSBFbXB0eU5vZGVMaXN0KCkKQEAgLTkzOCw1NCArOTY2LDQ5IEBACiAKIGNsYXNzIFByb2Nlc3NpbmdJbnN0cnVjdGlvbihDaGlsZGxlc3MsIE5vZGUpOgogICAgIG5vZGVUeXBlID0gTm9kZS5QUk9DRVNTSU5HX0lOU1RSVUNUSU9OX05PREUKKyAgICBfX3Nsb3RzX18gPSAoJ3RhcmdldCcsICdkYXRhJykKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0YXJnZXQsIGRhdGEpOgotICAgICAgICBzZWxmLnRhcmdldCA9IHNlbGYubm9kZU5hbWUgPSB0YXJnZXQKLSAgICAgICAgc2VsZi5kYXRhID0gc2VsZi5ub2RlVmFsdWUgPSBkYXRhCisgICAgICAgIHNlbGYudGFyZ2V0ID0gdGFyZ2V0CisgICAgICAgIHNlbGYuZGF0YSA9IGRhdGEKIAotICAgIGRlZiBfZ2V0X2RhdGEoc2VsZik6CisgICAgIyBub2RlVmFsdWUgaXMgYW4gYWxpYXMgZm9yIGRhdGEKKyAgICBkZWYgX2dldF9ub2RlVmFsdWUoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLmRhdGEKLSAgICBkZWYgX3NldF9kYXRhKHNlbGYsIHZhbHVlKToKLSAgICAgICAgZCA9IHNlbGYuX19kaWN0X18KLSAgICAgICAgZFsnZGF0YSddID0gZFsnbm9kZVZhbHVlJ10gPSB2YWx1ZQorICAgIGRlZiBfc2V0X25vZGVWYWx1ZShzZWxmLCB2YWx1ZSk6CisgICAgICAgIHNlbGYuZGF0YSA9IGRhdGEKKyAgICBub2RlVmFsdWUgPSBwcm9wZXJ0eShfZ2V0X25vZGVWYWx1ZSwgX3NldF9ub2RlVmFsdWUpCiAKLSAgICBkZWYgX2dldF90YXJnZXQoc2VsZik6CisgICAgIyBub2RlTmFtZSBpcyBhbiBhbGlhcyBmb3IgdGFyZ2V0CisgICAgZGVmIF9nZXRfbm9kZU5hbWUoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLnRhcmdldAotICAgIGRlZiBfc2V0X3RhcmdldChzZWxmLCB2YWx1ZSk6Ci0gICAgICAgIGQgPSBzZWxmLl9fZGljdF9fCi0gICAgICAgIGRbJ3RhcmdldCddID0gZFsnbm9kZU5hbWUnXSA9IHZhbHVlCi0KLSAgICBkZWYgX19zZXRhdHRyX18oc2VsZiwgbmFtZSwgdmFsdWUpOgotICAgICAgICBpZiBuYW1lID09ICJkYXRhIiBvciBuYW1lID09ICJub2RlVmFsdWUiOgotICAgICAgICAgICAgc2VsZi5fX2RpY3RfX1snZGF0YSddID0gc2VsZi5fX2RpY3RfX1snbm9kZVZhbHVlJ10gPSB2YWx1ZQotICAgICAgICBlbGlmIG5hbWUgPT0gInRhcmdldCIgb3IgbmFtZSA9PSAibm9kZU5hbWUiOgotICAgICAgICAgICAgc2VsZi5fX2RpY3RfX1sndGFyZ2V0J10gPSBzZWxmLl9fZGljdF9fWydub2RlTmFtZSddID0gdmFsdWUKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNlbGYuX19kaWN0X19bbmFtZV0gPSB2YWx1ZQorICAgIGRlZiBfc2V0X25vZGVOYW1lKHNlbGYsIHZhbHVlKToKKyAgICAgICAgc2VsZi50YXJnZXQgPSB2YWx1ZQorICAgIG5vZGVOYW1lID0gcHJvcGVydHkoX2dldF9ub2RlTmFtZSwgX3NldF9ub2RlTmFtZSkKIAogICAgIGRlZiB3cml0ZXhtbChzZWxmLCB3cml0ZXIsIGluZGVudD0iIiwgYWRkaW5kZW50PSIiLCBuZXdsPSIiKToKICAgICAgICAgd3JpdGVyLndyaXRlKCIlczw/JXMgJXM/PiVzIiAlIChpbmRlbnQsc2VsZi50YXJnZXQsIHNlbGYuZGF0YSwgbmV3bCkpCiAKIAogY2xhc3MgQ2hhcmFjdGVyRGF0YShDaGlsZGxlc3MsIE5vZGUpOgorICAgIF9fc2xvdHNfXz0oJ19kYXRhJywgJ293bmVyRG9jdW1lbnQnLCdwYXJlbnROb2RlJywgJ3ByZXZpb3VzU2libGluZycsICduZXh0U2libGluZycpCisKKyAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgIHNlbGYub3duZXJEb2N1bWVudCA9IHNlbGYucGFyZW50Tm9kZSA9IE5vbmUKKyAgICAgICAgc2VsZi5wcmV2aW91c1NpYmxpbmcgPSBzZWxmLm5leHRTaWJsaW5nID0gTm9uZQorICAgICAgICBzZWxmLl9kYXRhID0gJycKKyAgICAgICAgTm9kZS5fX2luaXRfXyhzZWxmKQorCiAgICAgZGVmIF9nZXRfbGVuZ3RoKHNlbGYpOgogICAgICAgICByZXR1cm4gbGVuKHNlbGYuZGF0YSkKICAgICBfX2xlbl9fID0gX2dldF9sZW5ndGgKIAogICAgIGRlZiBfZ2V0X2RhdGEoc2VsZik6Ci0gICAgICAgIHJldHVybiBzZWxmLl9fZGljdF9fWydkYXRhJ10KKyAgICAgICAgcmV0dXJuIHNlbGYuX2RhdGEKICAgICBkZWYgX3NldF9kYXRhKHNlbGYsIGRhdGEpOgotICAgICAgICBkID0gc2VsZi5fX2RpY3RfXwotICAgICAgICBkWydkYXRhJ10gPSBkWydub2RlVmFsdWUnXSA9IGRhdGEKKyAgICAgICAgc2VsZi5fZGF0YSA9IGRhdGEKIAotICAgIF9nZXRfbm9kZVZhbHVlID0gX2dldF9kYXRhCi0gICAgX3NldF9ub2RlVmFsdWUgPSBfc2V0X2RhdGEKLQotICAgIGRlZiBfX3NldGF0dHJfXyhzZWxmLCBuYW1lLCB2YWx1ZSk6Ci0gICAgICAgIGlmIG5hbWUgPT0gImRhdGEiIG9yIG5hbWUgPT0gIm5vZGVWYWx1ZSI6Ci0gICAgICAgICAgICBzZWxmLl9fZGljdF9fWydkYXRhJ10gPSBzZWxmLl9fZGljdF9fWydub2RlVmFsdWUnXSA9IHZhbHVlCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLl9fZGljdF9fW25hbWVdID0gdmFsdWUKKyAgICBkYXRhID0gbm9kZVZhbHVlID0gcHJvcGVydHkoX2dldF9kYXRhLCBfc2V0X2RhdGEpCiAKICAgICBkZWYgX19yZXByX18oc2VsZik6CiAgICAgICAgIGRhdGEgPSBzZWxmLmRhdGEKQEAgLTEwNDIsMTAgKzEwNjUsNyBAQAogCiAKIGNsYXNzIFRleHQoQ2hhcmFjdGVyRGF0YSk6Ci0gICAgIyBNYWtlIHN1cmUgd2UgZG9uJ3QgYWRkIGFuIGluc3RhbmNlIF9fZGljdF9fIGlmIHdlIGRvbid0IGFscmVhZHkKLSAgICAjIGhhdmUgb25lLCBhdCBsZWFzdCB3aGVuIHRoYXQncyBwb3NzaWJsZToKLSAgICAjIFhYWCB0aGlzIGRvZXMgbm90IHdvcmssIENoYXJhY3RlckRhdGEgaXMgYW4gb2xkLXN0eWxlIGNsYXNzCi0gICAgIyBfX3Nsb3RzX18gPSAoKQorICAgIF9fc2xvdHNfXyA9ICgpCiAKICAgICBub2RlVHlwZSA9IE5vZGUuVEVYVF9OT0RFCiAgICAgbm9kZU5hbWUgPSAiI3RleHQiCkBAIC0xMTEyLDkgKzExMzIsNyBAQAogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICBpZiBjb250ZW50OgotICAgICAgICAgICAgZCA9IHNlbGYuX19kaWN0X18KLSAgICAgICAgICAgIGRbJ2RhdGEnXSA9IGNvbnRlbnQKLSAgICAgICAgICAgIGRbJ25vZGVWYWx1ZSddID0gY29udGVudAorICAgICAgICAgICAgc2VsZi5kYXRhID0gY29udGVudAogICAgICAgICAgICAgcmV0dXJuIHNlbGYKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHJldHVybiBOb25lCkBAIC0xMTYwLDcgKzExNzgsOCBAQAogICAgIG5vZGVOYW1lID0gIiNjb21tZW50IgogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRhdGEpOgotICAgICAgICBzZWxmLmRhdGEgPSBzZWxmLm5vZGVWYWx1ZSA9IGRhdGEKKyAgICAgICAgQ2hhcmFjdGVyRGF0YS5fX2luaXRfXyhzZWxmKQorICAgICAgICBzZWxmLl9kYXRhID0gZGF0YQogCiAgICAgZGVmIHdyaXRleG1sKHNlbGYsIHdyaXRlciwgaW5kZW50PSIiLCBhZGRpbmRlbnQ9IiIsIG5ld2w9IiIpOgogICAgICAgICBpZiAiLS0iIGluIHNlbGYuZGF0YToKQEAgLTExNjksMTAgKzExODgsNyBAQAogCiAKIGNsYXNzIENEQVRBU2VjdGlvbihUZXh0KToKLSAgICAjIE1ha2Ugc3VyZSB3ZSBkb24ndCBhZGQgYW4gaW5zdGFuY2UgX19kaWN0X18gaWYgd2UgZG9uJ3QgYWxyZWFkeQotICAgICMgaGF2ZSBvbmUsIGF0IGxlYXN0IHdoZW4gdGhhdCdzIHBvc3NpYmxlOgotICAgICMgWFhYIHRoaXMgZG9lcyBub3Qgd29yaywgVGV4dCBpcyBhbiBvbGQtc3R5bGUgY2xhc3MKLSAgICAjIF9fc2xvdHNfXyA9ICgpCisgICAgX19zbG90c19fID0gKCkKIAogICAgIG5vZGVUeXBlID0gTm9kZS5DREFUQV9TRUNUSU9OX05PREUKICAgICBub2RlTmFtZSA9ICIjY2RhdGEtc2VjdGlvbiIKQEAgLTEyNTIsOCArMTI2OCw3IEBACiBjbGFzcyBJZGVudGlmaWVkOgogICAgICIiIk1peC1pbiBjbGFzcyB0aGF0IHN1cHBvcnRzIHRoZSBwdWJsaWNJZCBhbmQgc3lzdGVtSWQgYXR0cmlidXRlcy4iIiIKIAotICAgICMgWFhYIHRoaXMgZG9lcyBub3Qgd29yaywgdGhpcyBpcyBhbiBvbGQtc3R5bGUgY2xhc3MKLSAgICAjIF9fc2xvdHNfXyA9ICdwdWJsaWNJZCcsICdzeXN0ZW1JZCcKKyAgICBfX3Nsb3RzX18gPSAncHVibGljSWQnLCAnc3lzdGVtSWQnCiAKICAgICBkZWYgX2lkZW50aWZpZWRfbWl4aW5faW5pdChzZWxmLCBwdWJsaWNJZCwgc3lzdGVtSWQpOgogICAgICAgICBzZWxmLnB1YmxpY0lkID0gcHVibGljSWQKQEAgLTE1MDQsMTggKzE1MTksMTkgQEAKICAgICAgICAgbm9kZS5vd25lckRvY3VtZW50Ll9pZF9zZWFyY2hfc3RhY2s9IE5vbmUKIAogY2xhc3MgRG9jdW1lbnQoTm9kZSwgRG9jdW1lbnRMUyk6CisgICAgX19zbG90c19fID0gKCdfZWxlbV9pbmZvJywgJ2RvY3R5cGUnLAorICAgICAgICAgICAgICAgICAnX2lkX3NlYXJjaF9zdGFjaycsICdjaGlsZE5vZGVzJywgJ19pZF9jYWNoZScpCiAgICAgX2NoaWxkX25vZGVfdHlwZXMgPSAoTm9kZS5FTEVNRU5UX05PREUsIE5vZGUuUFJPQ0VTU0lOR19JTlNUUlVDVElPTl9OT0RFLAogICAgICAgICAgICAgICAgICAgICAgICAgIE5vZGUuQ09NTUVOVF9OT0RFLCBOb2RlLkRPQ1VNRU5UX1RZUEVfTk9ERSkKIAorICAgIGltcGxlbWVudGF0aW9uID0gRE9NSW1wbGVtZW50YXRpb24oKQogICAgIG5vZGVUeXBlID0gTm9kZS5ET0NVTUVOVF9OT0RFCiAgICAgbm9kZU5hbWUgPSAiI2RvY3VtZW50IgogICAgIG5vZGVWYWx1ZSA9IE5vbmUKICAgICBhdHRyaWJ1dGVzID0gTm9uZQotICAgIGRvY3R5cGUgPSBOb25lCiAgICAgcGFyZW50Tm9kZSA9IE5vbmUKICAgICBwcmV2aW91c1NpYmxpbmcgPSBuZXh0U2libGluZyA9IE5vbmUKIAotICAgIGltcGxlbWVudGF0aW9uID0gRE9NSW1wbGVtZW50YXRpb24oKQogCiAgICAgIyBEb2N1bWVudCBhdHRyaWJ1dGVzIGZyb20gTGV2ZWwgMyAoV0QgOSBBcHJpbCAyMDAyKQogCkBAIC0xNTMwLDYgKzE1NDYsNyBAQAogICAgIF9tYWdpY19pZF9jb3VudCA9IDAKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgc2VsZi5kb2N0eXBlID0gTm9uZQogICAgICAgICBzZWxmLmNoaWxkTm9kZXMgPSBOb2RlTGlzdCgpCiAgICAgICAgICMgbWFwcGluZyBvZiAobmFtZXNwYWNlVVJJLCBsb2NhbE5hbWUpIC0+IEVsZW1lbnRJbmZvCiAgICAgICAgICMgICAgICAgIGFuZCB0YWdOYW1lIC0+IEVsZW1lbnRJbmZvCkBAIC0xODE1LDE3ICsxODMyLDE1IEBACiAgICAgICAgICAgICAgICAgZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGVOb2RlKG4pCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBlbGVtZW50ID0gTm9uZQotICAgICAgICAjIGF2b2lkIF9fc2V0YXR0cl9fCi0gICAgICAgIGQgPSBuLl9fZGljdF9fCi0gICAgICAgIGRbJ3ByZWZpeCddID0gcHJlZml4Ci0gICAgICAgIGRbJ2xvY2FsTmFtZSddID0gbG9jYWxOYW1lCi0gICAgICAgIGRbJ25hbWVzcGFjZVVSSSddID0gbmFtZXNwYWNlVVJJCi0gICAgICAgIGRbJ25vZGVOYW1lJ10gPSBuYW1lCisgICAgICAgIG4ucHJlZml4ID0gcHJlZml4CisgICAgICAgIG4uX2xvY2FsTmFtZSA9IGxvY2FsTmFtZQorICAgICAgICBuLm5hbWVzcGFjZVVSSSA9IG5hbWVzcGFjZVVSSQorICAgICAgICBuLm5vZGVOYW1lID0gbmFtZQogICAgICAgICBpZiBuLm5vZGVUeXBlID09IE5vZGUuRUxFTUVOVF9OT0RFOgotICAgICAgICAgICAgZFsndGFnTmFtZSddID0gbmFtZQorICAgICAgICAgICAgbi50YWdOYW1lID0gbmFtZQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgIyBhdHRyaWJ1dGUgbm9kZQotICAgICAgICAgICAgZFsnbmFtZSddID0gbmFtZQorICAgICAgICAgICAgbi5uYW1lID0gbmFtZQogICAgICAgICAgICAgaWYgZWxlbWVudCBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZU5vZGUobikKICAgICAgICAgICAgICAgICBpZiBpc19pZDoKZGlmZiAtLWdpdCBhL0xpYi94bWwvZG9tL3B1bGxkb20ucHkgYi9MaWIveG1sL2RvbS9wdWxsZG9tLnB5CmluZGV4IGQ1YWM4YjIuLjQzNTA0ZjcgMTAwNjQ0Ci0tLSBhL0xpYi94bWwvZG9tL3B1bGxkb20ucHkKKysrIGIvTGliL3htbC9kb20vcHVsbGRvbS5weQpAQCAtMSw2ICsxLDUgQEAKIGltcG9ydCB4bWwuc2F4CiBpbXBvcnQgeG1sLnNheC5oYW5kbGVyCi1pbXBvcnQgdHlwZXMKIAogU1RBUlRfRUxFTUVOVCA9ICJTVEFSVF9FTEVNRU5UIgogRU5EX0VMRU1FTlQgPSAiRU5EX0VMRU1FTlQiCkBAIC0zMzQsMTAgKzMzMyw3IEBACiAgICAgcmV0dXJuIERPTUV2ZW50U3RyZWFtKHN0cmVhbSwgcGFyc2VyLCBidWZzaXplKQogCiBkZWYgcGFyc2VTdHJpbmcoc3RyaW5nLCBwYXJzZXI9Tm9uZSk6Ci0gICAgdHJ5OgotICAgICAgICBmcm9tIGlvIGltcG9ydCBTdHJpbmdJTwotICAgIGV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICAgICAgZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KKyAgICBmcm9tIGlvIGltcG9ydCBTdHJpbmdJTwogCiAgICAgYnVmc2l6ZSA9IGxlbihzdHJpbmcpCiAgICAgYnVmID0gU3RyaW5nSU8oc3RyaW5nKQpkaWZmIC0tZ2l0IGEvTGliL3htbC9ldHJlZS9FbGVtZW50VHJlZS5weSBiL0xpYi94bWwvZXRyZWUvRWxlbWVudFRyZWUucHkKaW5kZXggZjk0YzQ4Yy4uMTBlZTg5NiAxMDA2NDQKLS0tIGEvTGliL3htbC9ldHJlZS9FbGVtZW50VHJlZS5weQorKysgYi9MaWIveG1sL2V0cmVlL0VsZW1lbnRUcmVlLnB5CkBAIC02OCw4ICs2OCw5IEBACiAgICAgInRvc3RyaW5nIiwgInRvc3RyaW5nbGlzdCIsCiAgICAgIlRyZWVCdWlsZGVyIiwKICAgICAiVkVSU0lPTiIsCi0gICAgIlhNTCIsCisgICAgIlhNTCIsICJYTUxJRCIsCiAgICAgIlhNTFBhcnNlciIsICJYTUxUcmVlQnVpbGRlciIsCisgICAgInJlZ2lzdGVyX25hbWVzcGFjZSIsCiAgICAgXQogCiBWRVJTSU9OID0gIjEuMy4wIgpAQCAtMTAwLDcgKzEwMSw2IEBACiBpbXBvcnQgcmUKIGltcG9ydCB3YXJuaW5ncwogCi0KIGNsYXNzIF9TaW1wbGVFbGVtZW50UGF0aDoKICAgICAjIGVtdWxhdGUgcHJlLTEuMiBmaW5kL2ZpbmR0ZXh0L2ZpbmRhbGwgYmVoYXZpb3VyCiAgICAgZGVmIGZpbmQoc2VsZiwgZWxlbWVudCwgdGFnLCBuYW1lc3BhY2VzPU5vbmUpOgpAQCAtMTQ4LDkgKzE0OCw5IEBACiAjIEBkZWZyZXR1cm4gZmxhZwogCiBkZWYgaXNlbGVtZW50KGVsZW1lbnQpOgotICAgICMgRklYTUU6IG5vdCBzdXJlIGFib3V0IHRoaXM7IG1pZ2h0IGJlIGEgYmV0dGVyIGlkZWEgdG8gbG9vawotICAgICMgZm9yIHRhZy9hdHRyaWIvdGV4dCBhdHRyaWJ1dGVzCi0gICAgcmV0dXJuIGlzaW5zdGFuY2UoZWxlbWVudCwgRWxlbWVudCkgb3IgaGFzYXR0cihlbGVtZW50LCAidGFnIikKKyAgICAjIEZJWE1FOiBub3Qgc3VyZSBhYm91dCB0aGlzOworICAgICMgaXNpbnN0YW5jZShlbGVtZW50LCBFbGVtZW50KSBvciBsb29rIGZvciB0YWcvYXR0cmliL3RleHQgYXR0cmlidXRlcworICAgIHJldHVybiBoYXNhdHRyKGVsZW1lbnQsICd0YWcnKQogCiAjIwogIyBFbGVtZW50IGNsYXNzLiAgVGhpcyBjbGFzcyBkZWZpbmVzIHRoZSBFbGVtZW50IGludGVyZmFjZSwgYW5kCkBAIC0xMDg1LDYgKzEwODUsOCBAQAogICAgICMgZHVibGluIGNvcmUKICAgICAiaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iOiAiZGMiLAogfQorIyBGb3IgdGVzdHMgYW5kIHRyb3VibGVzaG9vdGluZworcmVnaXN0ZXJfbmFtZXNwYWNlLl9uYW1lc3BhY2VfbWFwID0gX25hbWVzcGFjZV9tYXAKIAogZGVmIF9yYWlzZV9zZXJpYWxpemF0aW9uX2Vycm9yKHRleHQpOgogICAgIHJhaXNlIFR5cGVFcnJvcigKQEAgLTE1MDksMjQgKzE1MTEsMzAgQEAKICAgICAgICAgc2VsZi50YXJnZXQgPSBzZWxmLl90YXJnZXQgPSB0YXJnZXQKICAgICAgICAgc2VsZi5fZXJyb3IgPSBleHBhdC5lcnJvcgogICAgICAgICBzZWxmLl9uYW1lcyA9IHt9ICMgbmFtZSBtZW1vIGNhY2hlCi0gICAgICAgICMgY2FsbGJhY2tzCisgICAgICAgICMgbWFpbiBjYWxsYmFja3MKICAgICAgICAgcGFyc2VyLkRlZmF1bHRIYW5kbGVyRXhwYW5kID0gc2VsZi5fZGVmYXVsdAotICAgICAgICBwYXJzZXIuU3RhcnRFbGVtZW50SGFuZGxlciA9IHNlbGYuX3N0YXJ0Ci0gICAgICAgIHBhcnNlci5FbmRFbGVtZW50SGFuZGxlciA9IHNlbGYuX2VuZAotICAgICAgICBwYXJzZXIuQ2hhcmFjdGVyRGF0YUhhbmRsZXIgPSBzZWxmLl9kYXRhCi0gICAgICAgICMgb3B0aW9uYWwgY2FsbGJhY2tzCi0gICAgICAgIHBhcnNlci5Db21tZW50SGFuZGxlciA9IHNlbGYuX2NvbW1lbnQKLSAgICAgICAgcGFyc2VyLlByb2Nlc3NpbmdJbnN0cnVjdGlvbkhhbmRsZXIgPSBzZWxmLl9waQorICAgICAgICBpZiBoYXNhdHRyKHRhcmdldCwgJ3N0YXJ0Jyk6CisgICAgICAgICAgICBwYXJzZXIuU3RhcnRFbGVtZW50SGFuZGxlciA9IHNlbGYuX3N0YXJ0CisgICAgICAgIGlmIGhhc2F0dHIodGFyZ2V0LCAnZW5kJyk6CisgICAgICAgICAgICBwYXJzZXIuRW5kRWxlbWVudEhhbmRsZXIgPSBzZWxmLl9lbmQKKyAgICAgICAgaWYgaGFzYXR0cih0YXJnZXQsICdkYXRhJyk6CisgICAgICAgICAgICBwYXJzZXIuQ2hhcmFjdGVyRGF0YUhhbmRsZXIgPSB0YXJnZXQuZGF0YQorICAgICAgICAjIG1pc2NlbGxhbmVvdXMgY2FsbGJhY2tzCisgICAgICAgIGlmIGhhc2F0dHIodGFyZ2V0LCAnY29tbWVudCcpOgorICAgICAgICAgICAgcGFyc2VyLkNvbW1lbnRIYW5kbGVyID0gdGFyZ2V0LmNvbW1lbnQKKyAgICAgICAgaWYgaGFzYXR0cih0YXJnZXQsICdwaScpOgorICAgICAgICAgICAgcGFyc2VyLlByb2Nlc3NpbmdJbnN0cnVjdGlvbkhhbmRsZXIgPSB0YXJnZXQucGkKICAgICAgICAgIyBsZXQgZXhwYXQgZG8gdGhlIGJ1ZmZlcmluZywgaWYgc3VwcG9ydGVkCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHNlbGYuX3BhcnNlci5idWZmZXJfdGV4dCA9IDEKKyAgICAgICAgICAgIHBhcnNlci5idWZmZXJfdGV4dCA9IDEKICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgogICAgICAgICAgICAgcGFzcwogICAgICAgICAjIHVzZSBuZXctc3R5bGUgYXR0cmlidXRlIGhhbmRsaW5nLCBpZiBzdXBwb3J0ZWQKICAgICAgICAgdHJ5OgotICAgICAgICAgICAgc2VsZi5fcGFyc2VyLm9yZGVyZWRfYXR0cmlidXRlcyA9IDEKLSAgICAgICAgICAgIHNlbGYuX3BhcnNlci5zcGVjaWZpZWRfYXR0cmlidXRlcyA9IDEKLSAgICAgICAgICAgIHBhcnNlci5TdGFydEVsZW1lbnRIYW5kbGVyID0gc2VsZi5fc3RhcnRfbGlzdAorICAgICAgICAgICAgcGFyc2VyLm9yZGVyZWRfYXR0cmlidXRlcyA9IDEKKyAgICAgICAgICAgIHBhcnNlci5zcGVjaWZpZWRfYXR0cmlidXRlcyA9IDEKKyAgICAgICAgICAgIGlmIGhhc2F0dHIodGFyZ2V0LCAnc3RhcnQnKToKKyAgICAgICAgICAgICAgICBwYXJzZXIuU3RhcnRFbGVtZW50SGFuZGxlciA9IHNlbGYuX3N0YXJ0X2xpc3QKICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLl9kb2N0eXBlID0gTm9uZQpAQCAtMTU3MCw0NCArMTU3OCwyOSBAQAogICAgICAgICAgICAgICAgIGF0dHJpYltmaXhuYW1lKGF0dHJpYl9pbltpXSldID0gYXR0cmliX2luW2krMV0KICAgICAgICAgcmV0dXJuIHNlbGYudGFyZ2V0LnN0YXJ0KHRhZywgYXR0cmliKQogCi0gICAgZGVmIF9kYXRhKHNlbGYsIHRleHQpOgotICAgICAgICByZXR1cm4gc2VsZi50YXJnZXQuZGF0YSh0ZXh0KQotCiAgICAgZGVmIF9lbmQoc2VsZiwgdGFnKToKICAgICAgICAgcmV0dXJuIHNlbGYudGFyZ2V0LmVuZChzZWxmLl9maXhuYW1lKHRhZykpCiAKLSAgICBkZWYgX2NvbW1lbnQoc2VsZiwgZGF0YSk6Ci0gICAgICAgIHRyeToKLSAgICAgICAgICAgIGNvbW1lbnQgPSBzZWxmLnRhcmdldC5jb21tZW50Ci0gICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKLSAgICAgICAgICAgIHBhc3MKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJldHVybiBjb21tZW50KGRhdGEpCi0KLSAgICBkZWYgX3BpKHNlbGYsIHRhcmdldCwgZGF0YSk6Ci0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHBpID0gc2VsZi50YXJnZXQucGkKLSAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgotICAgICAgICAgICAgcGFzcwotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcmV0dXJuIHBpKHRhcmdldCwgZGF0YSkKLQogICAgIGRlZiBfZGVmYXVsdChzZWxmLCB0ZXh0KToKICAgICAgICAgcHJlZml4ID0gdGV4dFs6MV0KICAgICAgICAgaWYgcHJlZml4ID09ICImIjoKICAgICAgICAgICAgICMgZGVhbCB3aXRoIHVuZGVmaW5lZCBlbnRpdGllcwogICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHNlbGYudGFyZ2V0LmRhdGEoc2VsZi5lbnRpdHlbdGV4dFsxOi0xXV0pCisgICAgICAgICAgICAgICAgZGF0YV9oYW5kbGVyID0gc2VsZi50YXJnZXQuZGF0YQorICAgICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGRhdGFfaGFuZGxlcihzZWxmLmVudGl0eVt0ZXh0WzE6LTFdXSkKICAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKICAgICAgICAgICAgICAgICBmcm9tIHhtbC5wYXJzZXJzIGltcG9ydCBleHBhdAogICAgICAgICAgICAgICAgIGVyciA9IGV4cGF0LmVycm9yKAogICAgICAgICAgICAgICAgICAgICAidW5kZWZpbmVkIGVudGl0eSAlczogbGluZSAlZCwgY29sdW1uICVkIiAlCi0gICAgICAgICAgICAgICAgICAgICh0ZXh0LCBzZWxmLl9wYXJzZXIuRXJyb3JMaW5lTnVtYmVyLAotICAgICAgICAgICAgICAgICAgICBzZWxmLl9wYXJzZXIuRXJyb3JDb2x1bW5OdW1iZXIpCisgICAgICAgICAgICAgICAgICAgICh0ZXh0LCBzZWxmLnBhcnNlci5FcnJvckxpbmVOdW1iZXIsCisgICAgICAgICAgICAgICAgICAgIHNlbGYucGFyc2VyLkVycm9yQ29sdW1uTnVtYmVyKQogICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgZXJyLmNvZGUgPSAxMSAjIFhNTF9FUlJPUl9VTkRFRklORURfRU5USVRZCi0gICAgICAgICAgICAgICAgZXJyLmxpbmVubyA9IHNlbGYuX3BhcnNlci5FcnJvckxpbmVOdW1iZXIKLSAgICAgICAgICAgICAgICBlcnIub2Zmc2V0ID0gc2VsZi5fcGFyc2VyLkVycm9yQ29sdW1uTnVtYmVyCisgICAgICAgICAgICAgICAgZXJyLmxpbmVubyA9IHNlbGYucGFyc2VyLkVycm9yTGluZU51bWJlcgorICAgICAgICAgICAgICAgIGVyci5vZmZzZXQgPSBzZWxmLnBhcnNlci5FcnJvckNvbHVtbk51bWJlcgogICAgICAgICAgICAgICAgIHJhaXNlIGVycgogICAgICAgICBlbGlmIHByZWZpeCA9PSAiPCIgYW5kIHRleHRbOjldID09ICI8IURPQ1RZUEUiOgogICAgICAgICAgICAgc2VsZi5fZG9jdHlwZSA9IFtdICMgaW5zaWRlIGEgZG9jdHlwZSBkZWNsYXJhdGlvbgpAQCAtMTYzNCw3ICsxNjI3LDcgQEAKICAgICAgICAgICAgICAgICAgICAgcHViaWQgPSBwdWJpZFsxOi0xXQogICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIoc2VsZi50YXJnZXQsICJkb2N0eXBlIik6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYudGFyZ2V0LmRvY3R5cGUobmFtZSwgcHViaWQsIHN5c3RlbVsxOi0xXSkKLSAgICAgICAgICAgICAgICBlbGlmIHNlbGYuZG9jdHlwZSBpcyBub3Qgc2VsZi5fWE1MUGFyc2VyX19kb2N0eXBlOgorICAgICAgICAgICAgICAgIGVsaWYgc2VsZi5kb2N0eXBlICE9IHNlbGYuX1hNTFBhcnNlcl9fZG9jdHlwZToKICAgICAgICAgICAgICAgICAgICAgIyB3YXJuIGFib3V0IGRlcHJlY2F0ZWQgY2FsbAogICAgICAgICAgICAgICAgICAgICBzZWxmLl9YTUxQYXJzZXJfX2RvY3R5cGUobmFtZSwgcHViaWQsIHN5c3RlbVsxOi0xXSkKICAgICAgICAgICAgICAgICAgICAgc2VsZi5kb2N0eXBlKG5hbWUsIHB1YmlkLCBzeXN0ZW1bMTotMV0pCkBAIC0xNjY1LDcgKzE2NTgsNyBAQAogCiAgICAgZGVmIGZlZWQoc2VsZiwgZGF0YSk6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHNlbGYuX3BhcnNlci5QYXJzZShkYXRhLCAwKQorICAgICAgICAgICAgc2VsZi5wYXJzZXIuUGFyc2UoZGF0YSwgMCkKICAgICAgICAgZXhjZXB0IHNlbGYuX2Vycm9yIGFzIHY6CiAgICAgICAgICAgICBzZWxmLl9yYWlzZWVycm9yKHYpCiAKQEAgLTE2NzcsMTIgKzE2NzAsMTAwIEBACiAKICAgICBkZWYgY2xvc2Uoc2VsZik6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHNlbGYuX3BhcnNlci5QYXJzZSgiIiwgMSkgIyBlbmQgb2YgZGF0YQorICAgICAgICAgICAgc2VsZi5wYXJzZXIuUGFyc2UoIiIsIDEpICMgZW5kIG9mIGRhdGEKICAgICAgICAgZXhjZXB0IHNlbGYuX2Vycm9yIGFzIHY6CiAgICAgICAgICAgICBzZWxmLl9yYWlzZWVycm9yKHYpCi0gICAgICAgIHRyZWUgPSBzZWxmLnRhcmdldC5jbG9zZSgpCi0gICAgICAgIGRlbCBzZWxmLnRhcmdldCwgc2VsZi5fcGFyc2VyICMgZ2V0IHJpZCBvZiBjaXJjdWxhciByZWZlcmVuY2VzCi0gICAgICAgIHJldHVybiB0cmVlCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGNsb3NlX2hhbmRsZXIgPSBzZWxmLnRhcmdldC5jbG9zZQorICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gY2xvc2VfaGFuZGxlcigpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAjIGdldCByaWQgb2YgY2lyY3VsYXIgcmVmZXJlbmNlcworICAgICAgICAgICAgZGVsIHNlbGYucGFyc2VyLCBzZWxmLl9wYXJzZXIKKyAgICAgICAgICAgIGRlbCBzZWxmLnRhcmdldCwgc2VsZi5fdGFyZ2V0CisKKworIyBJbXBvcnQgdGhlIEMgYWNjZWxlcmF0b3JzCit0cnk6CisgICAgIyBFbGVtZW50LCBTdWJFbGVtZW50LCBQYXJzZUVycm9yLCBUcmVlQnVpbGRlciwgWE1MUGFyc2VyCisgICAgZnJvbSBfZWxlbWVudHRyZWUgaW1wb3J0ICoKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBwYXNzCitlbHNlOgorICAgICMgT3ZlcndyaXRlICdFbGVtZW50VHJlZS5wYXJzZScgYW5kICdpdGVycGFyc2UnIHRvIHVzZSB0aGUgQyBYTUxQYXJzZXIKKworICAgIGNsYXNzIEVsZW1lbnRUcmVlKEVsZW1lbnRUcmVlKToKKyAgICAgICAgZGVmIHBhcnNlKHNlbGYsIHNvdXJjZSwgcGFyc2VyPU5vbmUpOgorICAgICAgICAgICAgY2xvc2Vfc291cmNlID0gRmFsc2UKKyAgICAgICAgICAgIGlmIG5vdCBoYXNhdHRyKHNvdXJjZSwgJ3JlYWQnKToKKyAgICAgICAgICAgICAgICBzb3VyY2UgPSBvcGVuKHNvdXJjZSwgJ3JiJykKKyAgICAgICAgICAgICAgICBjbG9zZV9zb3VyY2UgPSBUcnVlCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaWYgcGFyc2VyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgICAgICAgICAgICAgZGF0YSA9IHNvdXJjZS5yZWFkKDY1NTM2KQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGRhdGE6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlci5mZWVkKGRhdGEpCisgICAgICAgICAgICAgICAgICAgIHNlbGYuX3Jvb3QgPSBwYXJzZXIuY2xvc2UoKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHBhcnNlciA9IFhNTFBhcnNlcigpCisgICAgICAgICAgICAgICAgICAgIHNlbGYuX3Jvb3QgPSBwYXJzZXIuX3BhcnNlKHNvdXJjZSkKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fcm9vdAorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICBpZiBjbG9zZV9zb3VyY2U6CisgICAgICAgICAgICAgICAgICAgIHNvdXJjZS5jbG9zZSgpCisKKyAgICBjbGFzcyBpdGVycGFyc2U6CisgICAgICAgIHJvb3QgPSBOb25lCisgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmaWxlLCBldmVudHM9Tm9uZSk6CisgICAgICAgICAgICBzZWxmLl9jbG9zZV9maWxlID0gRmFsc2UKKyAgICAgICAgICAgIGlmIG5vdCBoYXNhdHRyKGZpbGUsICdyZWFkJyk6CisgICAgICAgICAgICAgICAgZmlsZSA9IG9wZW4oZmlsZSwgJ3JiJykKKyAgICAgICAgICAgICAgICBzZWxmLl9jbG9zZV9maWxlID0gVHJ1ZQorICAgICAgICAgICAgc2VsZi5fZmlsZSA9IGZpbGUKKyAgICAgICAgICAgIHNlbGYuX2V2ZW50cyA9IFtdCisgICAgICAgICAgICBzZWxmLl9pbmRleCA9IDAKKyAgICAgICAgICAgIHNlbGYuX2Vycm9yID0gTm9uZQorICAgICAgICAgICAgc2VsZi5yb290ID0gc2VsZi5fcm9vdCA9IE5vbmUKKyAgICAgICAgICAgIGIgPSBUcmVlQnVpbGRlcigpCisgICAgICAgICAgICBzZWxmLl9wYXJzZXIgPSBYTUxQYXJzZXIoYikKKyAgICAgICAgICAgIHNlbGYuX3BhcnNlci5fc2V0ZXZlbnRzKHNlbGYuX2V2ZW50cywgZXZlbnRzKQorCisgICAgICAgIGRlZiBfX25leHRfXyhzZWxmKToKKyAgICAgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBpdGVtID0gc2VsZi5fZXZlbnRzW3NlbGYuX2luZGV4XQorICAgICAgICAgICAgICAgICAgICBzZWxmLl9pbmRleCArPSAxCisgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtCisgICAgICAgICAgICAgICAgZXhjZXB0IEluZGV4RXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgICAgICBpZiBzZWxmLl9lcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgZSA9IHNlbGYuX2Vycm9yCisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2Vycm9yID0gTm9uZQorICAgICAgICAgICAgICAgICAgICByYWlzZSBlCisgICAgICAgICAgICAgICAgaWYgc2VsZi5fcGFyc2VyIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgICAgIHNlbGYucm9vdCA9IHNlbGYuX3Jvb3QKKyAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5fY2xvc2VfZmlsZToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2ZpbGUuY2xvc2UoKQorICAgICAgICAgICAgICAgICAgICByYWlzZSBTdG9wSXRlcmF0aW9uCisgICAgICAgICAgICAgICAgIyBsb2FkIGV2ZW50IGJ1ZmZlcgorICAgICAgICAgICAgICAgIGRlbCBzZWxmLl9ldmVudHNbOl0KKyAgICAgICAgICAgICAgICBzZWxmLl9pbmRleCA9IDAKKyAgICAgICAgICAgICAgICBkYXRhID0gc2VsZi5fZmlsZS5yZWFkKDE2Mzg0KQorICAgICAgICAgICAgICAgIGlmIGRhdGE6CisgICAgICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX3BhcnNlci5mZWVkKGRhdGEpCisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBTeW50YXhFcnJvciBhcyBleGM6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9lcnJvciA9IGV4YworICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX3Jvb3QgPSBzZWxmLl9wYXJzZXIuY2xvc2UoKQorICAgICAgICAgICAgICAgICAgICBzZWxmLl9wYXJzZXIgPSBOb25lCisKKyAgICAgICAgZGVmIF9faXRlcl9fKHNlbGYpOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYKIAogIyBjb21wYXRpYmlsaXR5CiBYTUxUcmVlQnVpbGRlciA9IFhNTFBhcnNlcgpkaWZmIC0tZ2l0IGEvTGliL3htbC9ldHJlZS9jRWxlbWVudFRyZWUucHkgYi9MaWIveG1sL2V0cmVlL2NFbGVtZW50VHJlZS5weQppbmRleCBhNmYxMjdhLi4zNjhlNjc5IDEwMDY0NAotLS0gYS9MaWIveG1sL2V0cmVlL2NFbGVtZW50VHJlZS5weQorKysgYi9MaWIveG1sL2V0cmVlL2NFbGVtZW50VHJlZS5weQpAQCAtMSwzICsxLDMgQEAKLSMgV3JhcHBlciBtb2R1bGUgZm9yIF9lbGVtZW50dHJlZQorIyBEZXByZWNhdGVkIGFsaWFzIGZvciB4bWwuZXRyZWUuRWxlbWVudFRyZWUKIAotZnJvbSBfZWxlbWVudHRyZWUgaW1wb3J0ICoKK2Zyb20geG1sLmV0cmVlLkVsZW1lbnRUcmVlIGltcG9ydCAqCmRpZmYgLS1naXQgYS9MaWIveG1sL3BhcnNlcnMvZXhwYXQucHkgYi9MaWIveG1sL3BhcnNlcnMvZXhwYXQucHkKaW5kZXggYTgwNWI4Mi4uYmNiZTlmYiAxMDA2NDQKLS0tIGEvTGliL3htbC9wYXJzZXJzL2V4cGF0LnB5CisrKyBiL0xpYi94bWwvcGFyc2Vycy9leHBhdC5weQpAQCAtMSw2ICsxLDQgQEAKICIiIkludGVyZmFjZSB0byB0aGUgRXhwYXQgbm9uLXZhbGlkYXRpbmcgWE1MIHBhcnNlci4iIiIKLV9fdmVyc2lvbl9fID0gJyRSZXZpc2lvbiQnCi0KIGltcG9ydCBzeXMKIAogZnJvbSBweWV4cGF0IGltcG9ydCAqCmRpZmYgLS1naXQgYS9MaWIveG1scnBjL2NsaWVudC5weSBiL0xpYi94bWxycGMvY2xpZW50LnB5CmluZGV4IDk3ZDVhYWMuLmE3NzllNjYgMTAwNjQ0Ci0tLSBhL0xpYi94bWxycGMvY2xpZW50LnB5CisrKyBiL0xpYi94bWxycGMvY2xpZW50LnB5CkBAIC0xMjgsOCArMTI4LDExIEBACiAiIiIKIAogaW1wb3J0IGJhc2U2NAoraW1wb3J0IHN5cwogaW1wb3J0IHRpbWUKK2Zyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lCiBpbXBvcnQgaHR0cC5jbGllbnQKK2ltcG9ydCB1cmxsaWIucGFyc2UKIGZyb20geG1sLnBhcnNlcnMgaW1wb3J0IGV4cGF0CiBpbXBvcnQgc29ja2V0CiBpbXBvcnQgZXJybm8KQEAgLTE0MiwxNyArMTQ1LDEzIEBACiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAjIEludGVybmFsIHN0dWZmCiAKLXRyeToKLSAgICBpbXBvcnQgZGF0ZXRpbWUKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICBkYXRldGltZSA9IE5vbmUKLQogZGVmIGVzY2FwZShzKToKICAgICBzID0gcy5yZXBsYWNlKCImIiwgIiZhbXA7IikKICAgICBzID0gcy5yZXBsYWNlKCI8IiwgIiZsdDsiKQogICAgIHJldHVybiBzLnJlcGxhY2UoIj4iLCAiJmd0OyIsKQogCi1fX3ZlcnNpb25fXyA9ICIxLjAuMSIKKyMgdXNlZCBpbiBVc2VyLUFnZW50IGhlYWRlciBzZW50CitfX3ZlcnNpb25fXyA9IHN5cy52ZXJzaW9uWzozXQogCiAjIHhtbHJwYyBpbnRlZ2VyIGxpbWl0cwogTUFYSU5UID0gIDIqKjMxLTEKQEAgLTI1MiwyMSArMjUxLDMzIEBACiAjIFdyYXBwZXIgZm9yIFhNTC1SUEMgRGF0ZVRpbWUgdmFsdWVzLiAgVGhpcyBjb252ZXJ0cyBhIHRpbWUgdmFsdWUgdG8KICMgdGhlIGZvcm1hdCB1c2VkIGJ5IFhNTC1SUEMuCiAjIDxwPgotIyBUaGUgdmFsdWUgY2FuIGJlIGdpdmVuIGFzIGEgc3RyaW5nIGluIHRoZSBmb3JtYXQKLSMgInl5eXltbWRkVGhoOm1tOnNzIiwgYXMgYSA5LWl0ZW0gdGltZSB0dXBsZSAoYXMgcmV0dXJuZWQgYnkKKyMgVGhlIHZhbHVlIGNhbiBiZSBnaXZlbiBhcyBhIGRhdGV0aW1lIG9iamVjdCwgYXMgYSBzdHJpbmcgaW4gdGhlCisjIGZvcm1hdCAieXl5eW1tZGRUaGg6bW06c3MiLCBhcyBhIDktaXRlbSB0aW1lIHR1cGxlIChhcyByZXR1cm5lZCBieQogIyB0aW1lLmxvY2FsdGltZSgpKSwgb3IgYW4gaW50ZWdlciB2YWx1ZSAoYXMgcmV0dXJuZWQgYnkgdGltZS50aW1lKCkpLgogIyBUaGUgd3JhcHBlciB1c2VzIHRpbWUubG9jYWx0aW1lKCkgdG8gY29udmVydCBhbiBpbnRlZ2VyIHRvIGEgdGltZQogIyB0dXBsZS4KICMKLSMgQHBhcmFtIHZhbHVlIFRoZSB0aW1lLCBnaXZlbiBhcyBhbiBJU08gODYwMSBzdHJpbmcsIGEgdGltZQotIyAgICAgICAgICAgICAgdHVwbGUsIG9yIGEgaW50ZWdlciB0aW1lIHZhbHVlLgorIyBAcGFyYW0gdmFsdWUgVGhlIHRpbWUsIGdpdmVuIGFzIGEgZGF0ZXRpbWUgb2JqZWN0LCBhbiBJU08gODYwMSBzdHJpbmcsCisjICAgICAgICAgICAgICBhIHRpbWUgdHVwbGUsIG9yIGFuIGludGVnZXIgdGltZSB2YWx1ZS4KKworCisjIElzc3VlICMxMzMwNTogZGlmZmVyZW50IGZvcm1hdCBjb2RlcyBhY3Jvc3MgcGxhdGZvcm1zCitfZGF5MCA9IGRhdGV0aW1lKDEsIDEsIDEpCitpZiBfZGF5MC5zdHJmdGltZSgnJVknKSA9PSAnMDAwMSc6ICAgICAgIyBNYWMgT1MgWAorICAgIGRlZiBfaXNvODYwMV9mb3JtYXQodmFsdWUpOgorICAgICAgICByZXR1cm4gdmFsdWUuc3RyZnRpbWUoIiVZJW0lZFQlSDolTTolUyIpCitlbGlmIF9kYXkwLnN0cmZ0aW1lKCclNFknKSA9PSAnMDAwMSc6ICAgIyBMaW51eAorICAgIGRlZiBfaXNvODYwMV9mb3JtYXQodmFsdWUpOgorICAgICAgICByZXR1cm4gdmFsdWUuc3RyZnRpbWUoIiU0WSVtJWRUJUg6JU06JVMiKQorZWxzZToKKyAgICBkZWYgX2lzbzg2MDFfZm9ybWF0KHZhbHVlKToKKyAgICAgICAgcmV0dXJuIHZhbHVlLnN0cmZ0aW1lKCIlWSVtJWRUJUg6JU06JVMiKS56ZmlsbCgxNykKK2RlbCBfZGF5MAorCiAKIGRlZiBfc3RyZnRpbWUodmFsdWUpOgotICAgIGlmIGRhdGV0aW1lOgotICAgICAgICBpZiBpc2luc3RhbmNlKHZhbHVlLCBkYXRldGltZS5kYXRldGltZSk6Ci0gICAgICAgICAgICByZXR1cm4gIiUwNGQlMDJkJTAyZFQlMDJkOiUwMmQ6JTAyZCIgJSAoCi0gICAgICAgICAgICAgICAgdmFsdWUueWVhciwgdmFsdWUubW9udGgsIHZhbHVlLmRheSwKLSAgICAgICAgICAgICAgICB2YWx1ZS5ob3VyLCB2YWx1ZS5taW51dGUsIHZhbHVlLnNlY29uZCkKKyAgICBpZiBpc2luc3RhbmNlKHZhbHVlLCBkYXRldGltZSk6CisgICAgICAgIHJldHVybiBfaXNvODYwMV9mb3JtYXQodmFsdWUpCiAKICAgICBpZiBub3QgaXNpbnN0YW5jZSh2YWx1ZSwgKHR1cGxlLCB0aW1lLnN0cnVjdF90aW1lKSk6CiAgICAgICAgIGlmIHZhbHVlID09IDA6CkBAIC0yOTEsOSArMzAyLDkgQEAKICAgICAgICAgaWYgaXNpbnN0YW5jZShvdGhlciwgRGF0ZVRpbWUpOgogICAgICAgICAgICAgcyA9IHNlbGYudmFsdWUKICAgICAgICAgICAgIG8gPSBvdGhlci52YWx1ZQotICAgICAgICBlbGlmIGRhdGV0aW1lIGFuZCBpc2luc3RhbmNlKG90aGVyLCBkYXRldGltZS5kYXRldGltZSk6CisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShvdGhlciwgZGF0ZXRpbWUpOgogICAgICAgICAgICAgcyA9IHNlbGYudmFsdWUKLSAgICAgICAgICAgIG8gPSBvdGhlci5zdHJmdGltZSgiJVklbSVkVCVIOiVNOiVTIikKKyAgICAgICAgICAgIG8gPSBfaXNvODYwMV9mb3JtYXQob3RoZXIpCiAgICAgICAgIGVsaWYgaXNpbnN0YW5jZShvdGhlciwgc3RyKToKICAgICAgICAgICAgIHMgPSBzZWxmLnZhbHVlCiAgICAgICAgICAgICBvID0gb3RoZXIKQEAgLTM2MSw4ICszNzIsNyBAQAogICAgIHJldHVybiB2YWx1ZQogCiBkZWYgX2RhdGV0aW1lX3R5cGUoZGF0YSk6Ci0gICAgdCA9IHRpbWUuc3RycHRpbWUoZGF0YSwgIiVZJW0lZFQlSDolTTolUyIpCi0gICAgcmV0dXJuIGRhdGV0aW1lLmRhdGV0aW1lKCp0dXBsZSh0KVs6Nl0pCisgICAgcmV0dXJuIGRhdGV0aW1lLnN0cnB0aW1lKGRhdGEsICIlWSVtJWRUJUg6JU06JVMiKQogCiAjIwogIyBXcmFwcGVyIGZvciBiaW5hcnkgZGF0YS4gIFRoaXMgY2FuIGJlIHVzZWQgdG8gdHJhbnNwb3J0IGFueSBraW5kCkBAIC0zNzcsOCArMzg3LDggQEAKICAgICAgICAgaWYgZGF0YSBpcyBOb25lOgogICAgICAgICAgICAgZGF0YSA9IGIiIgogICAgICAgICBlbHNlOgotICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZGF0YSwgYnl0ZXMpOgotICAgICAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiZXhwZWN0ZWQgYnl0ZXMsIG5vdCAlcyIgJQorICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZGF0YSwgKGJ5dGVzLCBieXRlYXJyYXkpKToKKyAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoImV4cGVjdGVkIGJ5dGVzIG9yIGJ5dGVhcnJheSwgbm90ICVzIiAlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEuX19jbGFzc19fLl9fbmFtZV9fKQogICAgICAgICAgICAgZGF0YSA9IGJ5dGVzKGRhdGEpICAjIE1ha2UgYSBjb3B5IG9mIHRoZSBieXRlcyEKICAgICAgICAgc2VsZi5kYXRhID0gZGF0YQpAQCAtNDA4LDcgKzQxOCw2IEBACiAgICAgICAgIG91dC53cml0ZSgiPHZhbHVlPjxiYXNlNjQ+XG4iKQogICAgICAgICBlbmNvZGVkID0gYmFzZTY0LmVuY29kZWJ5dGVzKHNlbGYuZGF0YSkKICAgICAgICAgb3V0LndyaXRlKGVuY29kZWQuZGVjb2RlKCdhc2NpaScpKQotICAgICAgICBvdXQud3JpdGUoJ1xuJykKICAgICAgICAgb3V0LndyaXRlKCI8L2Jhc2U2ND48L3ZhbHVlPlxuIikKIAogZGVmIF9iaW5hcnkoZGF0YSk6CkBAIC01MjIsMTUgKzUzMSw2IEBACiAgICAgICAgIHdyaXRlKCI8dmFsdWU+PG5pbC8+PC92YWx1ZT4iKQogICAgIGRpc3BhdGNoW3R5cGUoTm9uZSldID0gZHVtcF9uaWwKIAotICAgIGRlZiBkdW1wX2ludChzZWxmLCB2YWx1ZSwgd3JpdGUpOgotICAgICAgICAjIGluIGNhc2UgaW50cyBhcmUgPiAzMiBiaXRzCi0gICAgICAgIGlmIHZhbHVlID4gTUFYSU5UIG9yIHZhbHVlIDwgTUlOSU5UOgotICAgICAgICAgICAgcmFpc2UgT3ZlcmZsb3dFcnJvcigiaW50IGV4Y2VlZHMgWE1MLVJQQyBsaW1pdHMiKQotICAgICAgICB3cml0ZSgiPHZhbHVlPjxpbnQ+IikKLSAgICAgICAgd3JpdGUoc3RyKHZhbHVlKSkKLSAgICAgICAgd3JpdGUoIjwvaW50PjwvdmFsdWU+XG4iKQotICAgICNkaXNwYXRjaFtpbnRdID0gZHVtcF9pbnQKLQogICAgIGRlZiBkdW1wX2Jvb2woc2VsZiwgdmFsdWUsIHdyaXRlKToKICAgICAgICAgd3JpdGUoIjx2YWx1ZT48Ym9vbGVhbj4iKQogICAgICAgICB3cml0ZSh2YWx1ZSBhbmQgIjEiIG9yICIwIikKQEAgLTU0NSw2ICs1NDUsOSBAQAogICAgICAgICB3cml0ZSgiPC9pbnQ+PC92YWx1ZT5cbiIpCiAgICAgZGlzcGF0Y2hbaW50XSA9IGR1bXBfbG9uZwogCisgICAgIyBiYWNrd2FyZCBjb21wYXRpYmxlCisgICAgZHVtcF9pbnQgPSBkdW1wX2xvbmcKKwogICAgIGRlZiBkdW1wX2RvdWJsZShzZWxmLCB2YWx1ZSwgd3JpdGUpOgogICAgICAgICB3cml0ZSgiPHZhbHVlPjxkb3VibGU+IikKICAgICAgICAgd3JpdGUocmVwcih2YWx1ZSkpCkBAIC01NTcsNiArNTYwLDE0IEBACiAgICAgICAgIHdyaXRlKCI8L3N0cmluZz48L3ZhbHVlPlxuIikKICAgICBkaXNwYXRjaFtzdHJdID0gZHVtcF91bmljb2RlCiAKKyAgICBkZWYgZHVtcF9ieXRlcyhzZWxmLCB2YWx1ZSwgd3JpdGUpOgorICAgICAgICB3cml0ZSgiPHZhbHVlPjxiYXNlNjQ+XG4iKQorICAgICAgICBlbmNvZGVkID0gYmFzZTY0LmVuY29kZWJ5dGVzKHZhbHVlKQorICAgICAgICB3cml0ZShlbmNvZGVkLmRlY29kZSgnYXNjaWknKSkKKyAgICAgICAgd3JpdGUoIjwvYmFzZTY0PjwvdmFsdWU+XG4iKQorICAgIGRpc3BhdGNoW2J5dGVzXSA9IGR1bXBfYnl0ZXMKKyAgICBkaXNwYXRjaFtieXRlYXJyYXldID0gZHVtcF9ieXRlcworCiAgICAgZGVmIGR1bXBfYXJyYXkoc2VsZiwgdmFsdWUsIHdyaXRlKToKICAgICAgICAgaSA9IGlkKHZhbHVlKQogICAgICAgICBpZiBpIGluIHNlbGYubWVtbzoKQEAgLTU4OSwxMiArNjAwLDExIEBACiAgICAgICAgIGRlbCBzZWxmLm1lbW9baV0KICAgICBkaXNwYXRjaFtkaWN0XSA9IGR1bXBfc3RydWN0CiAKLSAgICBpZiBkYXRldGltZToKLSAgICAgICAgZGVmIGR1bXBfZGF0ZXRpbWUoc2VsZiwgdmFsdWUsIHdyaXRlKToKLSAgICAgICAgICAgIHdyaXRlKCI8dmFsdWU+PGRhdGVUaW1lLmlzbzg2MDE+IikKLSAgICAgICAgICAgIHdyaXRlKF9zdHJmdGltZSh2YWx1ZSkpCi0gICAgICAgICAgICB3cml0ZSgiPC9kYXRlVGltZS5pc284NjAxPjwvdmFsdWU+XG4iKQotICAgICAgICBkaXNwYXRjaFtkYXRldGltZS5kYXRldGltZV0gPSBkdW1wX2RhdGV0aW1lCisgICAgZGVmIGR1bXBfZGF0ZXRpbWUoc2VsZiwgdmFsdWUsIHdyaXRlKToKKyAgICAgICAgd3JpdGUoIjx2YWx1ZT48ZGF0ZVRpbWUuaXNvODYwMT4iKQorICAgICAgICB3cml0ZShfc3RyZnRpbWUodmFsdWUpKQorICAgICAgICB3cml0ZSgiPC9kYXRlVGltZS5pc284NjAxPjwvdmFsdWU+XG4iKQorICAgIGRpc3BhdGNoW2RhdGV0aW1lXSA9IGR1bXBfZGF0ZXRpbWUKIAogICAgIGRlZiBkdW1wX2luc3RhbmNlKHNlbGYsIHZhbHVlLCB3cml0ZSk6CiAgICAgICAgICMgY2hlY2sgZm9yIHNwZWNpYWwgd3JhcHBlcnMKQEAgLTYyOCw3ICs2MzgsNyBAQAogICAgICMgYW5kIGFnYWluLCBpZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0J3MgZ29pbmcgb24gaW4gaGVyZSwKICAgICAjIHRoYXQncyBwZXJmZWN0bHkgb2suCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgdXNlX2RhdGV0aW1lPUZhbHNlKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgdXNlX2RhdGV0aW1lPUZhbHNlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgICAgIHNlbGYuX3R5cGUgPSBOb25lCiAgICAgICAgIHNlbGYuX3N0YWNrID0gW10KICAgICAgICAgc2VsZi5fbWFya3MgPSBbXQpAQCAtNjM2LDkgKzY0Niw4IEBACiAgICAgICAgIHNlbGYuX21ldGhvZG5hbWUgPSBOb25lCiAgICAgICAgIHNlbGYuX2VuY29kaW5nID0gInV0Zi04IgogICAgICAgICBzZWxmLmFwcGVuZCA9IHNlbGYuX3N0YWNrLmFwcGVuZAotICAgICAgICBzZWxmLl91c2VfZGF0ZXRpbWUgPSB1c2VfZGF0ZXRpbWUKLSAgICAgICAgaWYgdXNlX2RhdGV0aW1lIGFuZCBub3QgZGF0ZXRpbWU6Ci0gICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJ0aGUgZGF0ZXRpbWUgbW9kdWxlIGlzIG5vdCBhdmFpbGFibGUiKQorICAgICAgICBzZWxmLl91c2VfZGF0ZXRpbWUgPSB1c2VfYnVpbHRpbl90eXBlcyBvciB1c2VfZGF0ZXRpbWUKKyAgICAgICAgc2VsZi5fdXNlX2J5dGVzID0gdXNlX2J1aWx0aW5fdHlwZXMKIAogICAgIGRlZiBjbG9zZShzZWxmKToKICAgICAgICAgIyByZXR1cm4gcmVzcG9uc2UgdHVwbGUgYW5kIHRhcmdldCBtZXRob2QKQEAgLTc1MCw2ICs3NTksOCBAQAogICAgIGRlZiBlbmRfYmFzZTY0KHNlbGYsIGRhdGEpOgogICAgICAgICB2YWx1ZSA9IEJpbmFyeSgpCiAgICAgICAgIHZhbHVlLmRlY29kZShkYXRhLmVuY29kZSgiYXNjaWkiKSkKKyAgICAgICAgaWYgc2VsZi5fdXNlX2J5dGVzOgorICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS5kYXRhCiAgICAgICAgIHNlbGYuYXBwZW5kKHZhbHVlKQogICAgICAgICBzZWxmLl92YWx1ZSA9IDAKICAgICBkaXNwYXRjaFsiYmFzZTY0Il0gPSBlbmRfYmFzZTY0CkBAIC04NjEsMjMgKzg3MiwyNiBAQAogIwogIyByZXR1cm4gQSAocGFyc2VyLCB1bm1hcnNoYWxsZXIpIHR1cGxlLgogCi1kZWYgZ2V0cGFyc2VyKHVzZV9kYXRldGltZT1GYWxzZSk6CitkZWYgZ2V0cGFyc2VyKHVzZV9kYXRldGltZT1GYWxzZSwgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpOgogICAgICIiImdldHBhcnNlcigpIC0+IHBhcnNlciwgdW5tYXJzaGFsbGVyCiAKICAgICBDcmVhdGUgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhc3Rlc3QgYXZhaWxhYmxlIHBhcnNlciwgYW5kIGF0dGFjaCBpdAogICAgIHRvIGFuIHVubWFyc2hhbGxpbmcgb2JqZWN0LiAgUmV0dXJuIGJvdGggb2JqZWN0cy4KICAgICAiIiIKLSAgICBpZiB1c2VfZGF0ZXRpbWUgYW5kIG5vdCBkYXRldGltZToKLSAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigidGhlIGRhdGV0aW1lIG1vZHVsZSBpcyBub3QgYXZhaWxhYmxlIikKICAgICBpZiBGYXN0UGFyc2VyIGFuZCBGYXN0VW5tYXJzaGFsbGVyOgotICAgICAgICBpZiB1c2VfZGF0ZXRpbWU6CisgICAgICAgIGlmIHVzZV9idWlsdGluX3R5cGVzOgogICAgICAgICAgICAgbWtkYXRldGltZSA9IF9kYXRldGltZV90eXBlCisgICAgICAgICAgICBta2J5dGVzID0gYmFzZTY0LmRlY29kZWJ5dGVzCisgICAgICAgIGVsaWYgdXNlX2RhdGV0aW1lOgorICAgICAgICAgICAgbWtkYXRldGltZSA9IF9kYXRldGltZV90eXBlCisgICAgICAgICAgICBta2J5dGVzID0gX2JpbmFyeQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgbWtkYXRldGltZSA9IF9kYXRldGltZQotICAgICAgICB0YXJnZXQgPSBGYXN0VW5tYXJzaGFsbGVyKFRydWUsIEZhbHNlLCBfYmluYXJ5LCBta2RhdGV0aW1lLCBGYXVsdCkKKyAgICAgICAgICAgIG1rYnl0ZXMgPSBfYmluYXJ5CisgICAgICAgIHRhcmdldCA9IEZhc3RVbm1hcnNoYWxsZXIoVHJ1ZSwgRmFsc2UsIG1rYnl0ZXMsIG1rZGF0ZXRpbWUsIEZhdWx0KQogICAgICAgICBwYXJzZXIgPSBGYXN0UGFyc2VyKHRhcmdldCkKICAgICBlbHNlOgotICAgICAgICB0YXJnZXQgPSBVbm1hcnNoYWxsZXIodXNlX2RhdGV0aW1lPXVzZV9kYXRldGltZSkKKyAgICAgICAgdGFyZ2V0ID0gVW5tYXJzaGFsbGVyKHVzZV9kYXRldGltZT11c2VfZGF0ZXRpbWUsIHVzZV9idWlsdGluX3R5cGVzPXVzZV9idWlsdGluX3R5cGVzKQogICAgICAgICBpZiBGYXN0UGFyc2VyOgogICAgICAgICAgICAgcGFyc2VyID0gRmFzdFBhcnNlcih0YXJnZXQpCiAgICAgICAgIGVsc2U6CkBAIC05MTUsNyArOTI5LDcgQEAKIAogICAgICAgICBlbmNvZGluZzogdGhlIHBhY2tldCBlbmNvZGluZyAoZGVmYXVsdCBpcyBVVEYtOCkKIAotICAgIEFsbCA4LWJpdCBzdHJpbmdzIGluIHRoZSBkYXRhIHN0cnVjdHVyZSBhcmUgYXNzdW1lZCB0byB1c2UgdGhlCisgICAgQWxsIGJ5dGUgc3RyaW5ncyBpbiB0aGUgZGF0YSBzdHJ1Y3R1cmUgYXJlIGFzc3VtZWQgdG8gdXNlIHRoZQogICAgIHBhY2tldCBlbmNvZGluZy4gIFVuaWNvZGUgc3RyaW5ncyBhcmUgYXV0b21hdGljYWxseSBjb252ZXJ0ZWQsCiAgICAgd2hlcmUgbmVjZXNzYXJ5LgogICAgICIiIgpAQCAtOTc0LDcgKzk4OCw3IEBACiAjICAgICAoTm9uZSBpZiBub3QgcHJlc2VudCkuCiAjIEBzZWUgRmF1bHQKIAotZGVmIGxvYWRzKGRhdGEsIHVzZV9kYXRldGltZT1GYWxzZSk6CitkZWYgbG9hZHMoZGF0YSwgdXNlX2RhdGV0aW1lPUZhbHNlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgIiIiZGF0YSAtPiB1bm1hcnNoYWxsZWQgZGF0YSwgbWV0aG9kIG5hbWUKIAogICAgIENvbnZlcnQgYW4gWE1MLVJQQyBwYWNrZXQgdG8gdW5tYXJzaGFsbGVkIGRhdGEgcGx1cyBhIG1ldGhvZApAQCAtOTgzLDcgKzk5Nyw3IEBACiAgICAgSWYgdGhlIFhNTC1SUEMgcGFja2V0IHJlcHJlc2VudHMgYSBmYXVsdCBjb25kaXRpb24sIHRoaXMgZnVuY3Rpb24KICAgICByYWlzZXMgYSBGYXVsdCBleGNlcHRpb24uCiAgICAgIiIiCi0gICAgcCwgdSA9IGdldHBhcnNlcih1c2VfZGF0ZXRpbWU9dXNlX2RhdGV0aW1lKQorICAgIHAsIHUgPSBnZXRwYXJzZXIodXNlX2RhdGV0aW1lPXVzZV9kYXRldGltZSwgdXNlX2J1aWx0aW5fdHlwZXM9dXNlX2J1aWx0aW5fdHlwZXMpCiAgICAgcC5mZWVkKGRhdGEpCiAgICAgcC5jbG9zZSgpCiAgICAgcmV0dXJuIHUuY2xvc2UoKSwgdS5nZXRtZXRob2RuYW1lKCkKQEAgLTEwODUsNyArMTA5OSw3IEBACiAgICAgIiIiSGFuZGxlcyBhbiBIVFRQIHRyYW5zYWN0aW9uIHRvIGFuIFhNTC1SUEMgc2VydmVyLiIiIgogCiAgICAgIyBjbGllbnQgaWRlbnRpZmllciAobWF5IGJlIG92ZXJyaWRkZW4pCi0gICAgdXNlcl9hZ2VudCA9ICJ4bWxycGNsaWIucHkvJXMgKGJ5IHd3dy5weXRob253YXJlLmNvbSkiICUgX192ZXJzaW9uX18KKyAgICB1c2VyX2FnZW50ID0gIlB5dGhvbi14bWxycGMvJXMiICUgX192ZXJzaW9uX18KIAogICAgICNpZiB0cnVlLCB3ZSdsbCByZXF1ZXN0IGd6aXAgZW5jb2RpbmcKICAgICBhY2NlcHRfZ3ppcF9lbmNvZGluZyA9IFRydWUKQEAgLTEwOTUsOCArMTEwOSw5IEBACiAgICAgIyB0aGF0IHRoZXkgY2FuIGRlY29kZSBzdWNoIGEgcmVxdWVzdAogICAgIGVuY29kZV90aHJlc2hvbGQgPSBOb25lICNOb25lID0gZG9uJ3QgZW5jb2RlCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgdXNlX2RhdGV0aW1lPUZhbHNlKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgdXNlX2RhdGV0aW1lPUZhbHNlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgICAgIHNlbGYuX3VzZV9kYXRldGltZSA9IHVzZV9kYXRldGltZQorICAgICAgICBzZWxmLl91c2VfYnVpbHRpbl90eXBlcyA9IHVzZV9idWlsdGluX3R5cGVzCiAgICAgICAgIHNlbGYuX2Nvbm5lY3Rpb24gPSAoTm9uZSwgTm9uZSkKICAgICAgICAgc2VsZi5fZXh0cmFfaGVhZGVycyA9IFtdCiAKQEAgLTExNTcsNyArMTE3Miw4IEBACiAKICAgICBkZWYgZ2V0cGFyc2VyKHNlbGYpOgogICAgICAgICAjIGdldCBwYXJzZXIgYW5kIHVubWFyc2hhbGxlcgotICAgICAgICByZXR1cm4gZ2V0cGFyc2VyKHVzZV9kYXRldGltZT1zZWxmLl91c2VfZGF0ZXRpbWUpCisgICAgICAgIHJldHVybiBnZXRwYXJzZXIodXNlX2RhdGV0aW1lPXNlbGYuX3VzZV9kYXRldGltZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfYnVpbHRpbl90eXBlcz1zZWxmLl91c2VfYnVpbHRpbl90eXBlcykKIAogICAgICMjCiAgICAgIyBHZXQgYXV0aG9yaXphdGlvbiBpbmZvIGZyb20gaG9zdCBwYXJhbWV0ZXIKQEAgLTExNzUsNyArMTE5MSw2IEBACiAgICAgICAgIGlmIGlzaW5zdGFuY2UoaG9zdCwgdHVwbGUpOgogICAgICAgICAgICAgaG9zdCwgeDUwOSA9IGhvc3QKIAotICAgICAgICBpbXBvcnQgdXJsbGliLnBhcnNlCiAgICAgICAgIGF1dGgsIGhvc3QgPSB1cmxsaWIucGFyc2Uuc3BsaXR1c2VyKGhvc3QpCiAKICAgICAgICAgaWYgYXV0aDoKQEAgLTEzNjQsMTEgKzEzNzksMTAgQEAKICAgICAiIiIKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCB1cmksIHRyYW5zcG9ydD1Ob25lLCBlbmNvZGluZz1Ob25lLCB2ZXJib3NlPUZhbHNlLAotICAgICAgICAgICAgICAgICBhbGxvd19ub25lPUZhbHNlLCB1c2VfZGF0ZXRpbWU9RmFsc2UpOgorICAgICAgICAgICAgICAgICBhbGxvd19ub25lPUZhbHNlLCB1c2VfZGF0ZXRpbWU9RmFsc2UsIHVzZV9idWlsdGluX3R5cGVzPUZhbHNlKToKICAgICAgICAgIyBlc3RhYmxpc2ggYSAibG9naWNhbCIgc2VydmVyIGNvbm5lY3Rpb24KIAogICAgICAgICAjIGdldCB0aGUgdXJsCi0gICAgICAgIGltcG9ydCB1cmxsaWIucGFyc2UKICAgICAgICAgdHlwZSwgdXJpID0gdXJsbGliLnBhcnNlLnNwbGl0dHlwZSh1cmkpCiAgICAgICAgIGlmIHR5cGUgbm90IGluICgiaHR0cCIsICJodHRwcyIpOgogICAgICAgICAgICAgcmFpc2UgSU9FcnJvcigidW5zdXBwb3J0ZWQgWE1MLVJQQyBwcm90b2NvbCIpCkBAIC0xMzc4LDkgKzEzOTIsMTEgQEAKIAogICAgICAgICBpZiB0cmFuc3BvcnQgaXMgTm9uZToKICAgICAgICAgICAgIGlmIHR5cGUgPT0gImh0dHBzIjoKLSAgICAgICAgICAgICAgICB0cmFuc3BvcnQgPSBTYWZlVHJhbnNwb3J0KHVzZV9kYXRldGltZT11c2VfZGF0ZXRpbWUpCisgICAgICAgICAgICAgICAgaGFuZGxlciA9IFNhZmVUcmFuc3BvcnQKICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgdHJhbnNwb3J0ID0gVHJhbnNwb3J0KHVzZV9kYXRldGltZT11c2VfZGF0ZXRpbWUpCisgICAgICAgICAgICAgICAgaGFuZGxlciA9IFRyYW5zcG9ydAorICAgICAgICAgICAgdHJhbnNwb3J0ID0gaGFuZGxlcih1c2VfZGF0ZXRpbWU9dXNlX2RhdGV0aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfYnVpbHRpbl90eXBlcz11c2VfYnVpbHRpbl90eXBlcykKICAgICAgICAgc2VsZi5fX3RyYW5zcG9ydCA9IHRyYW5zcG9ydAogCiAgICAgICAgIHNlbGYuX19lbmNvZGluZyA9IGVuY29kaW5nIG9yICd1dGYtOCcKZGlmZiAtLWdpdCBhL0xpYi94bWxycGMvc2VydmVyLnB5IGIvTGliL3htbHJwYy9zZXJ2ZXIucHkKaW5kZXggZmQxNzAyNi4uNTRlMTcyNiAxMDA2NDQKLS0tIGEvTGliL3htbHJwYy9zZXJ2ZXIucHkKKysrIGIvTGliL3htbHJwYy9zZXJ2ZXIucHkKQEAgLTE2MCwxMSArMTYwLDEzIEBACiAgICAgY2FuIGJlIGluc3RhbmNlZCB3aGVuIHVzZWQgYnkgdGhlIE11bHRpUGF0aFhNTFJQQ1NlcnZlcgogICAgICIiIgogCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lLAorICAgICAgICAgICAgICAgICB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgICAgIHNlbGYuZnVuY3MgPSB7fQogICAgICAgICBzZWxmLmluc3RhbmNlID0gTm9uZQogICAgICAgICBzZWxmLmFsbG93X25vbmUgPSBhbGxvd19ub25lCiAgICAgICAgIHNlbGYuZW5jb2RpbmcgPSBlbmNvZGluZyBvciAndXRmLTgnCisgICAgICAgIHNlbGYudXNlX2J1aWx0aW5fdHlwZXMgPSB1c2VfYnVpbHRpbl90eXBlcwogCiAgICAgZGVmIHJlZ2lzdGVyX2luc3RhbmNlKHNlbGYsIGluc3RhbmNlLCBhbGxvd19kb3R0ZWRfbmFtZXM9RmFsc2UpOgogICAgICAgICAiIiJSZWdpc3RlcnMgYW4gaW5zdGFuY2UgdG8gcmVzcG9uZCB0byBYTUwtUlBDIHJlcXVlc3RzLgpAQCAtMjQ1LDcgKzI0Nyw3IEBACiAgICAgICAgICIiIgogCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHBhcmFtcywgbWV0aG9kID0gbG9hZHMoZGF0YSkKKyAgICAgICAgICAgIHBhcmFtcywgbWV0aG9kID0gbG9hZHMoZGF0YSwgdXNlX2J1aWx0aW5fdHlwZXM9c2VsZi51c2VfYnVpbHRpbl90eXBlcykKIAogICAgICAgICAgICAgIyBnZW5lcmF0ZSByZXNwb25zZQogICAgICAgICAgICAgaWYgZGlzcGF0Y2hfbWV0aG9kIGlzIG5vdCBOb25lOgpAQCAtNTc1LDEwICs1NzcsMTEgQEAKICAgICBfc2VuZF90cmFjZWJhY2tfaGVhZGVyID0gRmFsc2UKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhZGRyLCByZXF1ZXN0SGFuZGxlcj1TaW1wbGVYTUxSUENSZXF1ZXN0SGFuZGxlciwKLSAgICAgICAgICAgICAgICAgbG9nUmVxdWVzdHM9VHJ1ZSwgYWxsb3dfbm9uZT1GYWxzZSwgZW5jb2Rpbmc9Tm9uZSwgYmluZF9hbmRfYWN0aXZhdGU9VHJ1ZSk6CisgICAgICAgICAgICAgICAgIGxvZ1JlcXVlc3RzPVRydWUsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsCisgICAgICAgICAgICAgICAgIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUsIHVzZV9idWlsdGluX3R5cGVzPUZhbHNlKToKICAgICAgICAgc2VsZi5sb2dSZXF1ZXN0cyA9IGxvZ1JlcXVlc3RzCiAKLSAgICAgICAgU2ltcGxlWE1MUlBDRGlzcGF0Y2hlci5fX2luaXRfXyhzZWxmLCBhbGxvd19ub25lLCBlbmNvZGluZykKKyAgICAgICAgU2ltcGxlWE1MUlBDRGlzcGF0Y2hlci5fX2luaXRfXyhzZWxmLCBhbGxvd19ub25lLCBlbmNvZGluZywgdXNlX2J1aWx0aW5fdHlwZXMpCiAgICAgICAgIHNvY2tldHNlcnZlci5UQ1BTZXJ2ZXIuX19pbml0X18oc2VsZiwgYWRkciwgcmVxdWVzdEhhbmRsZXIsIGJpbmRfYW5kX2FjdGl2YXRlKQogCiAgICAgICAgICMgW0J1ZyAjMTIyMjc5MF0gSWYgcG9zc2libGUsIHNldCBjbG9zZS1vbi1leGVjIGZsYWc7IGlmIGEKQEAgLTU5OCwxMCArNjAxLDExIEBACiAgICAgTWFrZSBzdXJlIHRoYXQgdGhlIHJlcXVlc3RIYW5kbGVyIGFjY2VwdHMgdGhlIHBhdGhzIGluIHF1ZXN0aW9uLgogICAgICIiIgogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhZGRyLCByZXF1ZXN0SGFuZGxlcj1TaW1wbGVYTUxSUENSZXF1ZXN0SGFuZGxlciwKLSAgICAgICAgICAgICAgICAgbG9nUmVxdWVzdHM9VHJ1ZSwgYWxsb3dfbm9uZT1GYWxzZSwgZW5jb2Rpbmc9Tm9uZSwgYmluZF9hbmRfYWN0aXZhdGU9VHJ1ZSk6CisgICAgICAgICAgICAgICAgIGxvZ1JlcXVlc3RzPVRydWUsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsCisgICAgICAgICAgICAgICAgIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUsIHVzZV9idWlsdGluX3R5cGVzPUZhbHNlKToKIAogICAgICAgICBTaW1wbGVYTUxSUENTZXJ2ZXIuX19pbml0X18oc2VsZiwgYWRkciwgcmVxdWVzdEhhbmRsZXIsIGxvZ1JlcXVlc3RzLCBhbGxvd19ub25lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIGJpbmRfYW5kX2FjdGl2YXRlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIGJpbmRfYW5kX2FjdGl2YXRlLCB1c2VfYnVpbHRpbl90eXBlcykKICAgICAgICAgc2VsZi5kaXNwYXRjaGVycyA9IHt9CiAgICAgICAgIHNlbGYuYWxsb3dfbm9uZSA9IGFsbG93X25vbmUKICAgICAgICAgc2VsZi5lbmNvZGluZyA9IGVuY29kaW5nIG9yICd1dGYtOCcKQEAgLTYzMSw4ICs2MzUsOCBAQAogY2xhc3MgQ0dJWE1MUlBDUmVxdWVzdEhhbmRsZXIoU2ltcGxlWE1MUlBDRGlzcGF0Y2hlcik6CiAgICAgIiIiU2ltcGxlIGhhbmRsZXIgZm9yIFhNTC1SUEMgZGF0YSBwYXNzZWQgdGhyb3VnaCBDR0kuIiIiCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgYWxsb3dfbm9uZT1GYWxzZSwgZW5jb2Rpbmc9Tm9uZSk6Ci0gICAgICAgIFNpbXBsZVhNTFJQQ0Rpc3BhdGNoZXIuX19pbml0X18oc2VsZiwgYWxsb3dfbm9uZSwgZW5jb2RpbmcpCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsIHVzZV9idWlsdGluX3R5cGVzPUZhbHNlKToKKyAgICAgICAgU2ltcGxlWE1MUlBDRGlzcGF0Y2hlci5fX2luaXRfXyhzZWxmLCBhbGxvd19ub25lLCBlbmNvZGluZywgdXNlX2J1aWx0aW5fdHlwZXMpCiAKICAgICBkZWYgaGFuZGxlX3htbHJwYyhzZWxmLCByZXF1ZXN0X3RleHQpOgogICAgICAgICAiIiJIYW5kbGUgYSBzaW5nbGUgWE1MLVJQQyByZXF1ZXN0IiIiCkBAIC05MjcsOSArOTMxLDEwIEBACiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgYWRkciwgcmVxdWVzdEhhbmRsZXI9RG9jWE1MUlBDUmVxdWVzdEhhbmRsZXIsCiAgICAgICAgICAgICAgICAgIGxvZ1JlcXVlc3RzPVRydWUsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsCi0gICAgICAgICAgICAgICAgIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUpOgorICAgICAgICAgICAgICAgICBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgICAgIFNpbXBsZVhNTFJQQ1NlcnZlci5fX2luaXRfXyhzZWxmLCBhZGRyLCByZXF1ZXN0SGFuZGxlciwgbG9nUmVxdWVzdHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd19ub25lLCBlbmNvZGluZywgYmluZF9hbmRfYWN0aXZhdGUpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd19ub25lLCBlbmNvZGluZywgYmluZF9hbmRfYWN0aXZhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfYnVpbHRpbl90eXBlcykKICAgICAgICAgWE1MUlBDRG9jR2VuZXJhdG9yLl9faW5pdF9fKHNlbGYpCiAKIGNsYXNzIERvY0NHSVhNTFJQQ1JlcXVlc3RIYW5kbGVyKCAgIENHSVhNTFJQQ1JlcXVlc3RIYW5kbGVyLApAQCAtOTU5LDggKzk2NCwxMyBAQAogCiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6Ci0gICAgcHJpbnQoJ1J1bm5pbmcgWE1MLVJQQyBzZXJ2ZXIgb24gcG9ydCA4MDAwJykKICAgICBzZXJ2ZXIgPSBTaW1wbGVYTUxSUENTZXJ2ZXIoKCJsb2NhbGhvc3QiLCA4MDAwKSkKICAgICBzZXJ2ZXIucmVnaXN0ZXJfZnVuY3Rpb24ocG93KQogICAgIHNlcnZlci5yZWdpc3Rlcl9mdW5jdGlvbihsYW1iZGEgeCx5OiB4K3ksICdhZGQnKQotICAgIHNlcnZlci5zZXJ2ZV9mb3JldmVyKCkKKyAgICBwcmludCgnU2VydmluZyBYTUwtUlBDIG9uIGxvY2FsaG9zdCBwb3J0IDgwMDAnKQorICAgIHRyeToKKyAgICAgICAgc2VydmVyLnNlcnZlX2ZvcmV2ZXIoKQorICAgIGV4Y2VwdCBLZXlib2FyZEludGVycnVwdDoKKyAgICAgICAgcHJpbnQoIlxuS2V5Ym9hcmQgaW50ZXJydXB0IHJlY2VpdmVkLCBleGl0aW5nLiIpCisgICAgICAgIHNlcnZlci5zZXJ2ZXJfY2xvc2UoKQorICAgICAgICBzeXMuZXhpdCgwKQpkaWZmIC0tZ2l0IGEvTWFrZWZpbGUucHJlLmluIGIvTWFrZWZpbGUucHJlLmluCmluZGV4IDMwMDhkNmQuLmExM2QxYzMgMTAwNjQ0Ci0tLSBhL01ha2VmaWxlLnByZS5pbgorKysgYi9NYWtlZmlsZS5wcmUuaW4KQEAgLTM0LDcgKzM0LDYgQEAKIExJTktDQz0JCUBMSU5LQ0NACiBBUj0JCUBBUkAKIFJBTkxJQj0JCUBSQU5MSUJACi1TVk5WRVJTSU9OPQlAU1ZOVkVSU0lPTkAKIFNPQUJJPQkJQFNPQUJJQAogTERWRVJTSU9OPQlATERWRVJTSU9OQAogSEdWRVJTSU9OPQlASEdWRVJTSU9OQApAQCAtNzQsNyArNzMsNyBAQAogIyBCb3RoIENQUEZMQUdTIGFuZCBMREZMQUdTIG5lZWQgdG8gY29udGFpbiB0aGUgc2hlbGwncyB2YWx1ZSBmb3Igc2V0dXAucHkgdG8KICMgYmUgYWJsZSB0byBidWlsZCBleHRlbnNpb24gbW9kdWxlcyB1c2luZyB0aGUgZGlyZWN0b3JpZXMgc3BlY2lmaWVkIGluIHRoZQogIyBlbnZpcm9ubWVudCB2YXJpYWJsZXMKLVBZX0NQUEZMQUdTPQktSS4gLUlJbmNsdWRlIC1JJChzcmNkaXIpL0luY2x1ZGUgJChDT05GSUdVUkVfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpCitQWV9DUFBGTEFHUz0JLUkuIC1JJChzcmNkaXIpL0luY2x1ZGUgJChDT05GSUdVUkVfQ1BQRkxBR1MpICQoQ1BQRkxBR1MpCiBQWV9MREZMQUdTPQkkKENPTkZJR1VSRV9MREZMQUdTKSAkKExERkxBR1MpCiBOT19BU19ORUVERUQ9CUBOT19BU19ORUVERURACiBMRExBU1Q9CQlATERMQVNUQApAQCAtMjQwLDE0ICsyMzksMTMgQEAKIAkJUGFyc2VyL2xpc3Rub2RlLm8gXAogCQlQYXJzZXIvbm9kZS5vIFwKIAkJUGFyc2VyL3BhcnNlci5vIFwKLQkJUGFyc2VyL3BhcnNldG9rLm8gXAogCQlQYXJzZXIvYml0c2V0Lm8gXAogCQlQYXJzZXIvbWV0YWdyYW1tYXIubyBcCiAJCVBhcnNlci9maXJzdHNldHMubyBcCiAJCVBhcnNlci9ncmFtbWFyLm8gXAogCQlQYXJzZXIvcGdlbi5vCiAKLVBBUlNFUl9PQkpTPQkkKFBPQkpTKSBQYXJzZXIvbXlyZWFkbGluZS5vIFBhcnNlci90b2tlbml6ZXIubworUEFSU0VSX09CSlM9CSQoUE9CSlMpIFBhcnNlci9teXJlYWRsaW5lLm8gUGFyc2VyL3BhcnNldG9rLm8gUGFyc2VyL3Rva2VuaXplci5vCiAKIFBHT0JKUz0JCVwKIAkJT2JqZWN0cy9vYm1hbGxvYy5vIFwKQEAgLTI1NiwxMSArMjU0LDEzIEBACiAJCVB5dGhvbi9weWN0eXBlLm8gXAogCQlQYXJzZXIvdG9rZW5pemVyX3BnZW4ubyBcCiAJCVBhcnNlci9wcmludGdyYW1tYXIubyBcCisJCVBhcnNlci9wYXJzZXRva19wZ2VuLm8gXAogCQlQYXJzZXIvcGdlbm1haW4ubwogCiBQQVJTRVJfSEVBREVSUz0gXAotCQlQYXJzZXIvcGFyc2VyLmggXAotCQlQYXJzZXIvdG9rZW5pemVyLmgKKwkJJChzcmNkaXIpL1BhcnNlci9wYXJzZXIuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3BhcnNldG9rLmggXAorCQkkKHNyY2RpcikvUGFyc2VyL3Rva2VuaXplci5oCiAKIFBHRU5PQkpTPQkkKFBHRU5NQUlOKSAkKFBPQkpTKSAkKFBHT0JKUykKIApAQCAtMzcxLDcgKzM3MSw3IEBACiAJCU9iamVjdHMvb2JtYWxsb2MubyBcCiAJCU9iamVjdHMvY2Fwc3VsZS5vIFwKIAkJT2JqZWN0cy9yYW5nZW9iamVjdC5vIFwKLSAgICAgICAgICAgICAgICBPYmplY3RzL3NldG9iamVjdC5vIFwKKwkJT2JqZWN0cy9zZXRvYmplY3QubyBcCiAJCU9iamVjdHMvc2xpY2VvYmplY3QubyBcCiAJCU9iamVjdHMvc3RydWN0c2VxLm8gXAogCQlPYmplY3RzL3R1cGxlb2JqZWN0Lm8gXApAQCAtMzgwLDYgKzM4MCw3IEBACiAJCU9iamVjdHMvdW5pY29kZWN0eXBlLm8gXAogCQlPYmplY3RzL3dlYWtyZWZvYmplY3QubwogCitTWVNDT05GSUdEQVRBPSQoc3JjZGlyKS9MaWIvX3N5c2NvbmZpZ2RhdGEucHkKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMgb2JqZWN0cyB0aGF0IGdldCBsaW5rZWQgaW50byB0aGUgUHl0aG9uIGxpYnJhcnkKQEAgLTM5Nyw3ICszOTgsNyBAQAogCiAjIERlZmF1bHQgdGFyZ2V0CiBhbGw6CQlidWlsZF9hbGwKLWJ1aWxkX2FsbDoJJChCVUlMRFBZVEhPTikgb2xkc2hhcmVkbW9kcyBzaGFyZWRtb2RzIGdkYmhvb2tzIE1vZHVsZXMvX3Rlc3RlbWJlZAorYnVpbGRfYWxsOgkkKEJVSUxEUFlUSE9OKSAkKFNZU0NPTkZJR0RBVEEpIG9sZHNoYXJlZG1vZHMgc2hhcmVkbW9kcyBnZGJob29rcyBNb2R1bGVzL190ZXN0ZW1iZWQKIAogIyBDb21waWxlIGEgYmluYXJ5IHdpdGggZ2NjIHByb2ZpbGUgZ3VpZGVkIG9wdGltaXphdGlvbi4KIHByb2ZpbGUtb3B0OgpAQCAtNDMwLDEyICs0MzEsMTUgQEAKICQoQlVJTERQWVRIT04pOglNb2R1bGVzL3B5dGhvbi5vICQoTElCUkFSWSkgJChMRExJQlJBUlkpICQoUFkzTElCUkFSWSkKIAkkKExJTktDQykgJChQWV9MREZMQUdTKSAkKExJTktGT1JTSEFSRUQpIC1vICRAIE1vZHVsZXMvcHl0aG9uLm8gJChCTERMSUJSQVJZKSAkKExJQlMpICQoTU9ETElCUykgJChTWVNMSUJTKSAkKExETEFTVCkKIAotcGxhdGZvcm06ICQoQlVJTERQWVRIT04pCitwbGF0Zm9ybTogJChCVUlMRFBZVEhPTikgJChTWVNDT05GSUdEQVRBKQogCSQoUlVOU0hBUkVEKSAuLyQoQlVJTERQWVRIT04pIC1FIC1jICdpbXBvcnQgc3lzIDsgZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9wbGF0Zm9ybSA7IHByaW50KGdldF9wbGF0Zm9ybSgpKyItIitzeXMudmVyc2lvblswOjNdKScgPnBsYXRmb3JtCiAKKyMgR2VuZXJhdGUgdGhlIHN5c2NvbmZpZyBidWlsZC10aW1lIGRhdGEKKyQoU1lTQ09ORklHREFUQSk6ICQoQlVJTERQWVRIT04pCisJJChSVU5TSEFSRUQpIC4vJChCVUlMRFBZVEhPTikgLVNFIC1tIHN5c2NvbmZpZyAtLWdlbmVyYXRlLXBvc2l4LXZhcnMKIAogIyBCdWlsZCB0aGUgc2hhcmVkIG1vZHVsZXMKLXNoYXJlZG1vZHM6ICQoQlVJTERQWVRIT04pCitzaGFyZWRtb2RzOiAkKEJVSUxEUFlUSE9OKSAkKFNZU0NPTkZJR0RBVEEpCiAJQGNhc2UgJCRNQUtFRkxBR1MgaW4gXAogCSpzKikgJChSVU5TSEFSRUQpIENDPSckKENDKScgTERTSEFSRUQ9JyQoQkxEU0hBUkVEKScgT1BUPSckKE9QVCknIC4vJChCVUlMRFBZVEhPTikgLUUgJChzcmNkaXIpL3NldHVwLnB5IC1xIGJ1aWxkOzsgXAogCSopICQoUlVOU0hBUkVEKSBDQz0nJChDQyknIExEU0hBUkVEPSckKEJMRFNIQVJFRCknIE9QVD0nJChPUFQpJyAuLyQoQlVJTERQWVRIT04pIC1FICQoc3JjZGlyKS9zZXR1cC5weSBidWlsZDs7IFwKQEAgLTQ5NSw3ICs0OTksNyBAQAogCQktaW5zdGFsbF9uYW1lICQoREVTVERJUikkKFBZVEhPTkZSQU1FV09SS0lOU1RBTExESVIpL1ZlcnNpb25zLyQoVkVSU0lPTikvJChQWVRIT05GUkFNRVdPUkspIFwKIAkJLWNvbXBhdGliaWxpdHlfdmVyc2lvbiAkKFZFUlNJT04pIFwKIAkJLWN1cnJlbnRfdmVyc2lvbiAkKFZFUlNJT04pIFwKLQkJLWZyYW1ld29yayBDb3JlRm91bmRhdGlvbiAkKExJQlMpOyAKKwkJLWZyYW1ld29yayBDb3JlRm91bmRhdGlvbiAkKExJQlMpOwogCSQoSU5TVEFMTCkgLWQgLW0gJChESVJNT0RFKSAgXAogCQkkKFBZVEhPTkZSQU1FV09SS0RJUikvVmVyc2lvbnMvJChWRVJTSU9OKS9SZXNvdXJjZXMvRW5nbGlzaC5scHJvagogCSQoSU5TVEFMTF9EQVRBKSAkKFJFU1NSQ0RJUikvSW5mby5wbGlzdCBcCkBAIC01NTYsNyArNTYwLDYgQEAKIAkJJChNT0RPQkpTKSBcCiAJCSQoc3JjZGlyKS9Nb2R1bGVzL2dldGJ1aWxkaW5mby5jCiAJJChDQykgLWMgJChQWV9DT1JFX0NGTEFHUykgXAotCSAgICAgIC1EU1ZOVkVSU0lPTj0iXCJgTENfQUxMPUMgJChTVk5WRVJTSU9OKWBcIiIgXAogCSAgICAgIC1ESEdWRVJTSU9OPSJcImBMQ19BTEw9QyAkKEhHVkVSU0lPTilgXCIiIFwKIAkgICAgICAtREhHVEFHPSJcImBMQ19BTEw9QyAkKEhHVEFHKWBcIiIgXAogCSAgICAgIC1ESEdCUkFOQ0g9IlwiYExDX0FMTD1DICQoSEdCUkFOQ0gpYFwiIiBcCkBAIC01NzMsNiArNTc2LDkgQEAKIE1vZHVsZXMvcHl0aG9uLm86ICQoc3JjZGlyKS9Nb2R1bGVzL3B5dGhvbi5jCiAJJChNQUlOQ0MpIC1jICQoUFlfQ09SRV9DRkxBR1MpIC1vICRAICQoc3JjZGlyKS9Nb2R1bGVzL3B5dGhvbi5jCiAKK01vZHVsZXMvX3Rlc3RlbWJlZC5vOiAkKHNyY2RpcikvTW9kdWxlcy9fdGVzdGVtYmVkLmMKKwkkKE1BSU5DQykgLWMgJChQWV9DT1JFX0NGTEFHUykgLW8gJEAgJChzcmNkaXIpL01vZHVsZXMvX3Rlc3RlbWJlZC5jCisKIFB5dGhvbi9keW5sb2FkX3NobGliLm86ICQoc3JjZGlyKS9QeXRob24vZHlubG9hZF9zaGxpYi5jIE1ha2VmaWxlCiAJJChDQykgLWMgJChQWV9DT1JFX0NGTEFHUykgXAogCQktRFNPQUJJPSciJChTT0FCSSkiJyBcCkBAIC02MDEsMTMgKzYwNywxNSBAQAogUGFyc2VyL21ldGFncmFtbWFyLm86CSQoc3JjZGlyKS9QYXJzZXIvbWV0YWdyYW1tYXIuYwogCiBQYXJzZXIvdG9rZW5pemVyX3BnZW4ubzoJJChzcmNkaXIpL1BhcnNlci90b2tlbml6ZXIuYworUGFyc2VyL3BhcnNldG9rX3BnZW4ubzoJJChzcmNkaXIpL1BhcnNlci9wYXJzZXRvay5jCitQYXJzZXIvcHJpbnRncmFtbWFyLm86ICQoc3JjZGlyKS9QYXJzZXIvcHJpbnRncmFtbWFyLmMKIAogUGFyc2VyL3BnZW5tYWluLm86CSQoc3JjZGlyKS9JbmNsdWRlL3BhcnNldG9rLmgKIAogJChBU1RfSCk6ICQoQVNUX0FTREwpICQoQVNETEdFTl9GSUxFUykKIAkkKEFTRExHRU4pIC1oICQoQVNUX0hfRElSKSAkKEFTVF9BU0RMKQogCi0kKEFTVF9DKTogJChBU1RfQVNETCkgJChBU0RMR0VOX0ZJTEVTKQorJChBU1RfQyk6ICQoQVNUX0gpICQoQVNUX0FTREwpICQoQVNETEdFTl9GSUxFUykKIAkkKEFTRExHRU4pIC1jICQoQVNUX0NfRElSKSAkKEFTVF9BU0RMKQogCiBQeXRob24vY29tcGlsZS5vIFB5dGhvbi9zeW10YWJsZS5vIFB5dGhvbi9hc3QubzogJChHUkFNTUFSX0gpICQoQVNUX0gpCkBAIC02MjgsMjAgKzYzNiwyOSBAQAogCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvZXEuaCBcCiAJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9mYXN0c2VhcmNoLmggXAogCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvZmluZC5oIFwKKwkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL2ZpbmRfbWF4X2NoYXIuaCBcCiAJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9wYXJ0aXRpb24uaCBcCiAJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9zcGxpdC5oIFwKIAkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL3N0cmluZ2RlZnMuaCBcCi0JCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9zdHJpbmdfZm9ybWF0LmggXAogCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvdHJhbnNtb2dyaWZ5LmggXAogCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvdW5pY29kZWRlZnMuaCBcCi0JCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9sb2NhbGV1dGlsLmgKKwkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL2xvY2FsZXV0aWwuaCBcCisJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi91bmRlZi5oCisKK1VOSUNPREVfREVQUyA9ICQoQllURVNUUl9ERVBTKSBcCisJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9hc2NpaWxpYi5oIFwKKwkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL2NvZGVjcy5oIFwKKwkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL3VjczFsaWIuaCBcCisJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi91Y3MybGliLmggXAorCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvdWNzNGxpYi5oIFwKKwkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL3VuaWNvZGVfZm9ybWF0LmggXAorCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvdW5pY29kZWRlZnMuaAogCiBPYmplY3RzL2J5dGVzb2JqZWN0Lm86ICQoc3JjZGlyKS9PYmplY3RzL2J5dGVzb2JqZWN0LmMgJChCWVRFU1RSX0RFUFMpCiAKIE9iamVjdHMvYnl0ZWFycmF5b2JqZWN0Lm86ICQoc3JjZGlyKS9PYmplY3RzL2J5dGVhcnJheW9iamVjdC5jICQoQllURVNUUl9ERVBTKQogCi1PYmplY3RzL3VuaWNvZGVvYmplY3QubzogJChzcmNkaXIpL09iamVjdHMvdW5pY29kZW9iamVjdC5jIFwKLQkJCQkkKEJZVEVTVFJfREVQUykKK09iamVjdHMvdW5pY29kZW9iamVjdC5vOiAkKHNyY2RpcikvT2JqZWN0cy91bmljb2Rlb2JqZWN0LmMgJChVTklDT0RFX0RFUFMpCiAKIE9iamVjdHMvZGljdG9iamVjdC5vOiAkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvZXEuaAogT2JqZWN0cy9zZXRvYmplY3QubzogJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL2VxLmgKQEAgLTY0OSwxMSArNjY2LDEwIEBACiAkKE9QQ09ERVRBUkdFVFNfSCk6ICQoT1BDT0RFVEFSR0VUR0VOX0ZJTEVTKQogCSQoT1BDT0RFVEFSR0VUR0VOKSAkKE9QQ09ERVRBUkdFVFNfSCkKIAotUHl0aG9uL2NldmFsLm86ICQoT1BDT0RFVEFSR0VUU19IKSBQeXRob24vY2V2YWxfZ2lsLmgKK1B5dGhvbi9jZXZhbC5vOiAkKE9QQ09ERVRBUkdFVFNfSCkgJChzcmNkaXIpL1B5dGhvbi9jZXZhbF9naWwuaAogCiBQeXRob24vZm9ybWF0dGVyX3VuaWNvZGUubzogJChzcmNkaXIpL1B5dGhvbi9mb3JtYXR0ZXJfdW5pY29kZS5jIFwKLQkJCQkkKEJZVEVTVFJfREVQUykgXAotCQkJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9mb3JtYXR0ZXIuaAorCQkJCSQoQllURVNUUl9ERVBTKQogCiBPYmplY3RzL3R5cGVvYmplY3QubzogJChzcmNkaXIpL09iamVjdHMvdHlwZXNsb3RzLmluYwogJChzcmNkaXIpL09iamVjdHMvdHlwZXNsb3RzLmluYzogJChzcmNkaXIpL0luY2x1ZGUvdHlwZXNsb3RzLmggJChzcmNkaXIpL09iamVjdHMvdHlwZXNsb3RzLnB5CkBAIC02NjMsODkgKzY3OSw4OCBAQAogIyBIZWFkZXIgZmlsZXMKIAogUFlUSE9OX0hFQURFUlM9IFwKLQkJSW5jbHVkZS9QeXRob24tYXN0LmggXAotCQlJbmNsdWRlL1B5dGhvbi5oIFwKLQkJSW5jbHVkZS9hYnN0cmFjdC5oIFwKLQkJSW5jbHVkZS9hY2N1LmggXAotCQlJbmNsdWRlL2FzZGwuaCBcCi0JCUluY2x1ZGUvYXN0LmggXAotICAgICAgICAgICAgICAgIEluY2x1ZGUvYmx0aW5tb2R1bGUuaCBcCi0JCUluY2x1ZGUvYml0c2V0LmggXAotCQlJbmNsdWRlL2Jvb2xvYmplY3QuaCBcCi0JCUluY2x1ZGUvYnl0ZXNfbWV0aG9kcy5oIFwKLQkJSW5jbHVkZS9ieXRlYXJyYXlvYmplY3QuaCBcCi0JCUluY2x1ZGUvYnl0ZXNvYmplY3QuaCBcCi0JCUluY2x1ZGUvY2VsbG9iamVjdC5oIFwKLQkJSW5jbHVkZS9jZXZhbC5oIFwKLQkJSW5jbHVkZS9jbGFzc29iamVjdC5oIFwKLQkJSW5jbHVkZS9jb2RlLmggXAotCQlJbmNsdWRlL2NvZGVjcy5oIFwKLQkJSW5jbHVkZS9jb21waWxlLmggXAotCQlJbmNsdWRlL2NvbXBsZXhvYmplY3QuaCBcCi0JCUluY2x1ZGUvZGVzY3JvYmplY3QuaCBcCi0JCUluY2x1ZGUvZGljdG9iamVjdC5oIFwKLQkJSW5jbHVkZS9kdG9hLmggXAotCQlJbmNsdWRlL2R5bmFtaWNfYW5ub3RhdGlvbnMuaCBcCi0JCUluY2x1ZGUvZW51bW9iamVjdC5oIFwKLQkJSW5jbHVkZS9lcnJjb2RlLmggXAotCQlJbmNsdWRlL2V2YWwuaCBcCi0JCUluY2x1ZGUvZmlsZW9iamVjdC5oIFwKLQkJSW5jbHVkZS9maWxldXRpbHMuaCBcCi0JCUluY2x1ZGUvZmxvYXRvYmplY3QuaCBcCi0JCUluY2x1ZGUvZnJhbWVvYmplY3QuaCBcCi0JCUluY2x1ZGUvZnVuY29iamVjdC5oIFwKLQkJSW5jbHVkZS9nZW5vYmplY3QuaCBcCi0JCUluY2x1ZGUvaW1wb3J0LmggXAotCQlJbmNsdWRlL2ludHJjaGVjay5oIFwKLQkJSW5jbHVkZS9pdGVyb2JqZWN0LmggXAotCQlJbmNsdWRlL2xpc3RvYmplY3QuaCBcCi0JCUluY2x1ZGUvbG9uZ2ludHJlcHIuaCBcCi0JCUluY2x1ZGUvbG9uZ29iamVjdC5oIFwKLQkJSW5jbHVkZS9tYXJzaGFsLmggXAotCQlJbmNsdWRlL21lbW9yeW9iamVjdC5oIFwKLQkJSW5jbHVkZS9tZXRhZ3JhbW1hci5oIFwKLQkJSW5jbHVkZS9tZXRob2RvYmplY3QuaCBcCi0JCUluY2x1ZGUvbW9kc3VwcG9ydC5oIFwKLQkJSW5jbHVkZS9tb2R1bGVvYmplY3QuaCBcCi0JCUluY2x1ZGUvbm9kZS5oIFwKLQkJSW5jbHVkZS9vYmplY3QuaCBcCi0JCUluY2x1ZGUvb2JqaW1wbC5oIFwKLQkJSW5jbHVkZS9vcGNvZGUuaCBcCi0JCUluY2x1ZGUvb3NkZWZzLmggXAotCQlJbmNsdWRlL3BhcnNldG9rLmggXAotCQlJbmNsdWRlL3BhdGNobGV2ZWwuaCBcCi0JCUluY2x1ZGUvcGdlbi5oIFwKLQkJSW5jbHVkZS9wZ2VuaGVhZGVycy5oIFwKLQkJSW5jbHVkZS9weWFyZW5hLmggXAotCQlJbmNsdWRlL3B5YXRvbWljLmggXAotCQlJbmNsdWRlL3B5Y2Fwc3VsZS5oIFwKLQkJSW5jbHVkZS9weWN0eXBlLmggXAotCQlJbmNsdWRlL3B5ZGVidWcuaCBcCi0JCUluY2x1ZGUvcHllcnJvcnMuaCBcCi0JCUluY2x1ZGUvcHlmcGUuaCBcCi0JCUluY2x1ZGUvcHltYXRoLmggXAotCQlJbmNsdWRlL3B5Z2V0b3B0LmggXAotCQlJbmNsdWRlL3B5bWVtLmggXAotCQlJbmNsdWRlL3B5cG9ydC5oIFwKLQkJSW5jbHVkZS9weXN0YXRlLmggXAotCQlJbmNsdWRlL3B5c3RyY21wLmggXAotCQlJbmNsdWRlL3B5c3RydG9kLmggXAotCQlJbmNsdWRlL3B5dGhvbnJ1bi5oIFwKLQkJSW5jbHVkZS9weXRocmVhZC5oIFwKLQkJSW5jbHVkZS9weXRpbWUuaCBcCi0JCUluY2x1ZGUvcmFuZ2VvYmplY3QuaCBcCi0JCUluY2x1ZGUvc2V0b2JqZWN0LmggXAotCQlJbmNsdWRlL3NsaWNlb2JqZWN0LmggXAotCQlJbmNsdWRlL3N0cnVjdG1lbWJlci5oIFwKLQkJSW5jbHVkZS9zdHJ1Y3RzZXEuaCBcCi0JCUluY2x1ZGUvc3ltdGFibGUuaCBcCi0JCUluY2x1ZGUvc3lzbW9kdWxlLmggXAotCQlJbmNsdWRlL3RyYWNlYmFjay5oIFwKLQkJSW5jbHVkZS90dXBsZW9iamVjdC5oIFwKLQkJSW5jbHVkZS91Y25oYXNoLmggXAotCQlJbmNsdWRlL3VuaWNvZGVvYmplY3QuaCBcCi0JCUluY2x1ZGUvd2FybmluZ3MuaCBcCi0JCUluY2x1ZGUvd2Vha3JlZm9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvUHl0aG9uLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9hYnN0cmFjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvYWNjdS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvYXNkbC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvYXN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9ibHRpbm1vZHVsZS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvYml0c2V0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9ib29sb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9ieXRlc19tZXRob2RzLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9ieXRlYXJyYXlvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2J5dGVzb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9jZWxsb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9jZXZhbC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvY2xhc3NvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2NvZGUuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2NvZGVjcy5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvY29tcGlsZS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvY29tcGxleG9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvZGVzY3JvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2RpY3RvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2R0b2EuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2R5bmFtaWNfYW5ub3RhdGlvbnMuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2VudW1vYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2VycmNvZGUuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2V2YWwuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2ZpbGVvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2ZpbGV1dGlscy5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvZmxvYXRvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2ZyYW1lb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9mdW5jb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9nZW5vYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2ltcG9ydC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvaW50cmNoZWNrLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9pdGVyb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9saXN0b2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9sb25naW50cmVwci5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvbG9uZ29iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvbWFyc2hhbC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvbWVtb3J5b2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9tZXRhZ3JhbW1hci5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvbWV0aG9kb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9tb2RzdXBwb3J0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9tb2R1bGVvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL25vZGUuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL29iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvb2JqaW1wbC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvb3Bjb2RlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9vc2RlZnMuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3BhdGNobGV2ZWwuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3BnZW4uaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3BnZW5oZWFkZXJzLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weWFyZW5hLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weWF0b21pYy5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHljYXBzdWxlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weWN0eXBlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weWRlYnVnLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weWVycm9ycy5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHlmcGUuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5bWF0aC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHlnZXRvcHQuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5bWFjcm8uaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5bWVtLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weXBvcnQuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5c3RhdGUuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5c3RyY21wLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weXN0cnRvZC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHl0aG9ucnVuLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weXRocmVhZC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHl0aW1lLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9yYW5nZW9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvc2V0b2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9zbGljZW9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvc3RydWN0bWVtYmVyLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9zdHJ1Y3RzZXEuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3N5bXRhYmxlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9zeXNtb2R1bGUuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3RyYWNlYmFjay5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvdHVwbGVvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3Vjbmhhc2guaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3VuaWNvZGVvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3dhcm5pbmdzLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS93ZWFrcmVmb2JqZWN0LmggXAogCQlweWNvbmZpZy5oIFwKIAkJJChQQVJTRVJfSEVBREVSUykKIApAQCAtNzU0LDY1ICs3NjksNTYgQEAKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogCi0jIFRlc3QgdGhlIGludGVycHJldGVyICh0d2ljZSwgb25jZSB3aXRob3V0IC5weWMgZmlsZXMsIG9uY2Ugd2l0aCkKK1RFU1RPUFRTPQkkKEVYVFJBVEVTVE9QVFMpCitURVNUUFlUSE9OPQkkKFJVTlNIQVJFRCkgLi8kKEJVSUxEUFlUSE9OKSAkKFRFU1RQWVRIT05PUFRTKQorVEVTVFJVTk5FUj0JJChURVNUUFlUSE9OKSAkKHNyY2RpcikvVG9vbHMvc2NyaXB0cy9ydW5fdGVzdHMucHkKK1RFU1RUSU1FT1VUPQkzNjAwCisKKyMgUnVuIGEgYmFzaWMgc2V0IG9mIHJlZ3Jlc3Npb24gdGVzdHMuCisjIFRoaXMgZXhjbHVkZXMgc29tZSB0ZXN0cyB0aGF0IGFyZSBwYXJ0aWN1bGFybHkgcmVzb3VyY2UtaW50ZW5zaXZlLgordGVzdDoJCWFsbCBwbGF0Zm9ybQorCQkkKFRFU1RSVU5ORVIpICQoVEVTVE9QVFMpCisKKyMgUnVuIHRoZSBmdWxsIHRlc3Qgc3VpdGUgdHdpY2UgLSBvbmNlIHdpdGhvdXQgLnB5YyBmaWxlcywgYW5kIG9uY2Ugd2l0aC4KICMgSW4gdGhlIHBhc3QsIHdlJ3ZlIGhhZCBwcm9ibGVtcyB3aGVyZSBidWdzIGluIHRoZSBtYXJzaGFsbGluZyBvcgogIyBlbHNld2hlcmUgY2F1c2VkIGJ5dGVjb2RlIHJlYWQgZnJvbSAucHljIGZpbGVzIHRvIGJlaGF2ZSBkaWZmZXJlbnRseQogIyB0aGFuIGJ5dGVjb2RlIGdlbmVyYXRlZCBkaXJlY3RseSBmcm9tIGEgLnB5IHNvdXJjZSBmaWxlLiAgU29tZXRpbWVzCi0jIHRoZSBieXRlY29kZSByZWFkIGZyb20gYSAucHljIGZpbGUgaGFkIHRoZSBidWcsIHNvbXRpbWVzIHRoZSBkaXJlY3RseQorIyB0aGUgYnl0ZWNvZGUgcmVhZCBmcm9tIGEgLnB5YyBmaWxlIGhhZCB0aGUgYnVnLCBzb21ldGltZXMgdGhlIGRpcmVjdGx5CiAjIGdlbmVyYXRlZCBieXRlY29kZS4gIFRoaXMgaXMgc29tZXRpbWVzIGEgdmVyeSBzaHkgYnVnIG5lZWRpbmcgYSBsb3Qgb2YKICMgc2FtcGxlIGRhdGEuCi0KLVRFU1RPUFRTPQktbCAkKEVYVFJBVEVTVE9QVFMpCi1URVNUUFJPRz0JJChzcmNkaXIpL0xpYi90ZXN0L3JlZ3J0ZXN0LnB5Ci1URVNUUFlUSE9OPQkkKFJVTlNIQVJFRCkgLi8kKEJVSUxEUFlUSE9OKSAtV2QgLUUgLVIgLWJiICQoVEVTVFBZVEhPTk9QVFMpCi10ZXN0OgkJYWxsIHBsYXRmb3JtCi0JCS1maW5kICQoc3JjZGlyKS9MaWIgLW5hbWUgJyoucHlbY29dJyAtcHJpbnQgfCB4YXJncyBybSAtZgotCQktJChURVNUUFlUSE9OKSAkKFRFU1RQUk9HKSAkKFRFU1RPUFRTKQotCQkkKFRFU1RQWVRIT04pICQoVEVTVFBST0cpICQoVEVTVE9QVFMpCi0KIHRlc3RhbGw6CWFsbCBwbGF0Zm9ybQogCQktZmluZCAkKHNyY2RpcikvTGliIC1uYW1lICcqLnB5W2NvXScgLXByaW50IHwgeGFyZ3Mgcm0gLWYKLQkJJChURVNUUFlUSE9OKSAkKHNyY2RpcikvTGliL2NvbXBpbGVhbGwucHkKKwkJJChURVNUUFlUSE9OKSAtRSAkKHNyY2RpcikvTGliL2NvbXBpbGVhbGwucHkKIAkJLWZpbmQgJChzcmNkaXIpL0xpYiAtbmFtZSAnKi5weVtjb10nIC1wcmludCB8IHhhcmdzIHJtIC1mCi0JCS0kKFRFU1RQWVRIT04pICQoVEVTVFBST0cpIC11YWxsICQoVEVTVE9QVFMpCi0JCSQoVEVTVFBZVEhPTikgJChURVNUUFJPRykgLXVhbGwgJChURVNUT1BUUykKKwkJLSQoVEVTVFJVTk5FUikgLXUgYWxsICQoVEVTVE9QVFMpCisJCSQoVEVTVFJVTk5FUikgLXUgYWxsICQoVEVTVE9QVFMpCiAKLSMgIFJ1biB0aGUgdW5pdGVzdHMgZm9yIGJvdGggYXJjaGl0ZWN0dXJlcyBpbiBhIFVuaXZlcnNhbCBidWlsZCBvbiBPU1gKLSMgIE11c3QgYmUgcnVuIG9uIGFuIEludGVsIGJveC4KKyMgUnVuIHRoZSB0ZXN0IHN1aXRlIGZvciBib3RoIGFyY2hpdGVjdHVyZXMgaW4gYSBVbml2ZXJzYWwgYnVpbGQgb24gT1NYLgorIyBNdXN0IGJlIHJ1biBvbiBhbiBJbnRlbCBib3guCiB0ZXN0dW5pdmVyc2FsOglhbGwgcGxhdGZvcm0KIAkJaWYgWyBgYXJjaGAgIT0gJ2kzODYnIF07dGhlbiBcCiAJCQllY2hvICJUaGlzIGNhbiBvbmx5IGJlIHVzZWQgb24gT1NYL2kzODYiIDtcCiAJCQlleGl0IDEgO1wKIAkJZmkKLQkJLWZpbmQgJChzcmNkaXIpL0xpYiAtbmFtZSAnKi5weVtjb10nIC1wcmludCB8IHhhcmdzIHJtIC1mCi0JCS0kKFRFU1RQWVRIT04pICQoVEVTVFBST0cpIC11YWxsICQoVEVTVE9QVFMpCi0JCSQoVEVTVFBZVEhPTikgJChURVNUUFJPRykgLXVhbGwgJChURVNUT1BUUykKLQkJJChSVU5TSEFSRUQpIC91c3IvbGliZXhlYy9vYWgvdHJhbnNsYXRlIC4vJChCVUlMRFBZVEhPTikgLUUgJChURVNUUFJPRykgLXVhbGwgJChURVNUT1BUUykKKwkJJChURVNUUlVOTkVSKSAtdSBhbGwgJChURVNUT1BUUykKKwkJJChSVU5TSEFSRUQpIC91c3IvbGliZXhlYy9vYWgvdHJhbnNsYXRlIFwKKwkJCS4vJChCVUlMRFBZVEhPTikgLUUgLW0gdGVzdCAtaiAwIC11IGFsbCAkKFRFU1RPUFRTKQogCi0KLSMgTGlrZSB0ZXN0YWxsLCBidXQgd2l0aCBhIHNpbmdsZSBwYXNzIG9ubHkKLSMgcnVuIGFuIG9wdGlvbmFsIHNjcmlwdCB0byBpbmNsdWRlIHNvbWUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGJ1aWxkIGVudmlyb25tZW50CisjIExpa2UgdGVzdGFsbCwgYnV0IHdpdGggb25seSBvbmUgcGFzcyBhbmQgd2l0aG91dCBtdWx0aXBsZSBwcm9jZXNzZXMuCisjIFJ1biBhbiBvcHRpb25hbCBzY3JpcHQgdG8gaW5jbHVkZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYnVpbGQgZW52aXJvbm1lbnQuCiBidWlsZGJvdHRlc3Q6CWFsbCBwbGF0Zm9ybQogCQktQGlmIHdoaWNoIHB5YnVpbGRib3QuaWRlbnRpZnkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIFwKIAkJCXB5YnVpbGRib3QuaWRlbnRpZnkgIkNDPSckKENDKSciICJDWFg9JyQoQ1hYKSciOyBcCiAJCWZpCi0JCSQoVEVTVFBZVEhPTikgJChURVNUUFJPRykgLXVhbGwgLXJ3VyAkKFRFU1RPUFRTKQorCQkkKFRFU1RSVU5ORVIpIC1qIDEgLXUgYWxsIC1XIC0tdGltZW91dD0kKFRFU1RUSU1FT1VUKSAkKFRFU1RPUFRTKQogCiBRVUlDS1RFU1RPUFRTPQkkKFRFU1RPUFRTKSAteCB0ZXN0X3N1YnByb2Nlc3MgdGVzdF9pbyB0ZXN0X2xpYjJ0bzMgXAogCQl0ZXN0X211bHRpYnl0ZWNvZGVjIHRlc3RfdXJsbGliMl9sb2NhbG5ldCB0ZXN0X2l0ZXJ0b29scyBcCiAJCXRlc3RfbXVsdGlwcm9jZXNzaW5nIHRlc3RfbWFpbGJveCB0ZXN0X3NvY2tldCB0ZXN0X3BvbGwgXAotCQl0ZXN0X3NlbGVjdCB0ZXN0X3ppcGZpbGUKKwkJdGVzdF9zZWxlY3QgdGVzdF96aXBmaWxlIHRlc3RfY29uY3VycmVudF9mdXR1cmVzCiBxdWlja3Rlc3Q6CWFsbCBwbGF0Zm9ybQotCQktZmluZCAkKHNyY2RpcikvTGliIC1uYW1lICcqLnB5W2NvXScgLXByaW50IHwgeGFyZ3Mgcm0gLWYKLQkJLSQoVEVTVFBZVEhPTikgJChURVNUUFJPRykgJChRVUlDS1RFU1RPUFRTKQotCQkkKFRFU1RQWVRIT04pICQoVEVTVFBST0cpICQoUVVJQ0tURVNUT1BUUykKKwkJJChURVNUUlVOTkVSKSAkKFFVSUNLVEVTVE9QVFMpCiAKLU1FTVRFU1RPUFRTPSAgICAkKFFVSUNLVEVTVE9QVFMpIC14IHRlc3RfZGwgdGVzdF9fX2FsbF9fIHRlc3RfZm9yazEgXAotCQl0ZXN0X2xvbmdleHAKLW1lbXRlc3Q6CWFsbCBwbGF0Zm9ybQotCQktcm0gLWYgJChzcmNkaXIpL0xpYi90ZXN0LyoucHlbY29dCi0JCS0kKFRFU1RQWVRIT04pICQoVEVTVFBST0cpICQoTUVNVEVTVE9QVFMpCi0JCSQoVEVTVFBZVEhPTikgJChURVNUUFJPRykgJChNRU1URVNUT1BUUykKIAogaW5zdGFsbDogYWx0aW5zdGFsbCBiaW5pbnN0YWxsCiAKQEAgLTg1Myw3ICs4NTksNyBAQAogCWRvbmUKIAkkKElOU1RBTExfUFJPR1JBTSkgJChCVUlMRFBZVEhPTikgJChERVNURElSKSQoQklORElSKS9weXRob24kKExEVkVSU0lPTikkKEVYRSkKIAktaWYgdGVzdCAiJChWRVJTSU9OKSIgIT0gIiQoTERWRVJTSU9OKSI7IHRoZW4gXAotCQlpZiB0ZXN0IC1mICQoREVTVERJUikkKEJJTkRJUikvJChQWVRIT04pJChWRVJTSU9OKSQoRVhFKSAtbyAtaCAkKERFU1RESVIpJChCSU5ESVIpLyQoUFlUSE9OKSQoVkVSU0lPTikkKEVYRSk7IFwKKwkJaWYgdGVzdCAtZiAkKERFU1RESVIpJChCSU5ESVIpL3B5dGhvbiQoVkVSU0lPTikkKEVYRSkgLW8gLWggJChERVNURElSKSQoQklORElSKS9weXRob24kKFZFUlNJT04pJChFWEUpOyBcCiAJCXRoZW4gcm0gLWYgJChERVNURElSKSQoQklORElSKS9weXRob24kKFZFUlNJT04pJChFWEUpOyBcCiAJCWZpOyBcCiAJCShjZCAkKERFU1RESVIpJChCSU5ESVIpOyAkKExOKSBweXRob24kKExEVkVSU0lPTikkKEVYRSkgcHl0aG9uJChWRVJTSU9OKSQoRVhFKSk7IFwKQEAgLTg3NCwxMSArODgwLDExIEBACiAJZmkKIAogYmluaW5zdGFsbDogYWx0YmluaW5zdGFsbAotCS1pZiB0ZXN0IC1mICQoREVTVERJUikkKEJJTkRJUikvJChQWVRIT04pMyQoRVhFKSAtbyAtaCAkKERFU1RESVIpJChCSU5ESVIpLyQoUFlUSE9OKTMkKEVYRSk7IFwKLQl0aGVuIHJtIC1mICQoREVTVERJUikkKEJJTkRJUikvJChQWVRIT04pMyQoRVhFKTsgXAorCS1pZiB0ZXN0IC1mICQoREVTVERJUikkKEJJTkRJUikvcHl0aG9uMyQoRVhFKSAtbyAtaCAkKERFU1RESVIpJChCSU5ESVIpL3B5dGhvbjMkKEVYRSk7IFwKKwl0aGVuIHJtIC1mICQoREVTVERJUikkKEJJTkRJUikvcHl0aG9uMyQoRVhFKTsgXAogCWVsc2UgdHJ1ZTsgXAogCWZpCi0JKGNkICQoREVTVERJUikkKEJJTkRJUik7ICQoTE4pIHB5dGhvbiQoVkVSU0lPTikkKEVYRSkgJChQWVRIT04pMyQoRVhFKSkKKwkoY2QgJChERVNURElSKSQoQklORElSKTsgJChMTikgLXMgcHl0aG9uJChWRVJTSU9OKSQoRVhFKSBweXRob24zJChFWEUpKQogCS1pZiB0ZXN0ICIkKFZFUlNJT04pIiAhPSAiJChMRFZFUlNJT04pIjsgdGhlbiBcCiAJCXJtIC1mICQoREVTVERJUikkKEJJTkRJUikvcHl0aG9uJChWRVJTSU9OKS1jb25maWc7IFwKIAkJKGNkICQoREVTVERJUikkKEJJTkRJUik7ICQoTE4pIC1zIHB5dGhvbiQoTERWRVJTSU9OKS1jb25maWcgcHl0aG9uJChWRVJTSU9OKS1jb25maWcpOyBcCkBAIC04OTUsNiArOTAxLDggQEAKIAkoY2QgJChERVNURElSKSQoQklORElSKTsgJChMTikgLXMgcHlkb2MkKFZFUlNJT04pIHB5ZG9jMykKIAktcm0gLWYgJChERVNURElSKSQoQklORElSKS8ydG8zCiAJKGNkICQoREVTVERJUikkKEJJTkRJUik7ICQoTE4pIC1zIDJ0bzMtJChWRVJTSU9OKSAydG8zKQorCS1ybSAtZiAkKERFU1RESVIpJChCSU5ESVIpL3B5c2V0dXAzCisJKGNkICQoREVTVERJUikkKEJJTkRJUik7ICQoTE4pIC1zIHB5c2V0dXAkKFZFUlNJT04pIHB5c2V0dXAzKQogCiAjIEluc3RhbGwgdGhlIG1hbnVhbCBwYWdlCiBtYW5pbnN0YWxsOgpAQCAtOTE3LDIwICs5MjUsNzIgQEAKIExJQlNVQkRJUlM9CXRraW50ZXIgdGtpbnRlci90ZXN0IHRraW50ZXIvdGVzdC90ZXN0X3RraW50ZXIgXAogCQl0a2ludGVyL3Rlc3QvdGVzdF90dGsgc2l0ZS1wYWNrYWdlcyB0ZXN0IFwKIAkJdGVzdC9jYXBhdGggdGVzdC9kYXRhIFwKLQkJdGVzdC9jamtlbmNvZGluZ3MgdGVzdC9kZWNpbWFsdGVzdGRhdGEgdGVzdC94bWx0ZXN0ZGF0YSB0ZXN0L3N1YnByb2Nlc3NkYXRhIFwKKwkJdGVzdC9jamtlbmNvZGluZ3MgdGVzdC9kZWNpbWFsdGVzdGRhdGEgdGVzdC94bWx0ZXN0ZGF0YSBcCisJCXRlc3Qvc3VicHJvY2Vzc2RhdGEgXAogCQl0ZXN0L3RyYWNlZG1vZHVsZXMgdGVzdC9lbmNvZGVkX21vZHVsZXMgXAotCQljb25jdXJyZW50IGNvbmN1cnJlbnQvZnV0dXJlcyBlbmNvZGluZ3MgXAotCQllbWFpbCBlbWFpbC9taW1lIGVtYWlsL3Rlc3QgZW1haWwvdGVzdC9kYXRhIFwKKwkJY29sbGVjdGlvbnMgY29uY3VycmVudCBjb25jdXJyZW50L2Z1dHVyZXMgZW5jb2RpbmdzIFwKKwkJZW1haWwgZW1haWwvbWltZSB0ZXN0L3Rlc3RfZW1haWwgdGVzdC90ZXN0X2VtYWlsL2RhdGEgXAogCQlodG1sIGpzb24gdGVzdC9qc29uX3Rlc3RzIGh0dHAgZGJtIHhtbHJwYyBcCiAJCXNxbGl0ZTMgc3FsaXRlMy90ZXN0IFwKIAkJbG9nZ2luZyBjc3Ygd3NnaXJlZiB1cmxsaWIgXAogCQlsaWIydG8zIGxpYjJ0bzMvZml4ZXMgbGliMnRvMy9wZ2VuMiBsaWIydG8zL3Rlc3RzIFwKLQkJbGliMnRvMy90ZXN0cy9kYXRhIGxpYjJ0bzMvdGVzdHMvZGF0YS9maXhlcnMgbGliMnRvMy90ZXN0cy9kYXRhL2ZpeGVycy9teWZpeGVzIFwKKwkJbGliMnRvMy90ZXN0cy9kYXRhIGxpYjJ0bzMvdGVzdHMvZGF0YS9maXhlcnMgXAorCQlsaWIydG8zL3Rlc3RzL2RhdGEvZml4ZXJzL215Zml4ZXMgXAogCQljdHlwZXMgY3R5cGVzL3Rlc3QgY3R5cGVzL21hY2hvbGliIGlkbGVsaWIgaWRsZWxpYi9JY29ucyBcCiAJCWRpc3R1dGlscyBkaXN0dXRpbHMvY29tbWFuZCBkaXN0dXRpbHMvdGVzdHMgJChYTUxMSUJTVUJESVJTKSBcCiAJCWltcG9ydGxpYiBpbXBvcnRsaWIvdGVzdCBpbXBvcnRsaWIvdGVzdC9idWlsdGluIFwKIAkJaW1wb3J0bGliL3Rlc3QvZXh0ZW5zaW9uIGltcG9ydGxpYi90ZXN0L2Zyb3plbiBcCiAJCWltcG9ydGxpYi90ZXN0L2ltcG9ydF8gaW1wb3J0bGliL3Rlc3Qvc291cmNlIFwKKwkJcGFja2FnaW5nIHBhY2thZ2luZy9jb21tYW5kIHBhY2thZ2luZy9jb21waWxlciBcCisJCXBhY2thZ2luZy9weXBpIHBhY2thZ2luZy90ZXN0cyBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzIFwKKwkJcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mbyBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhY29uLTAuMS5lZ2ctaW5mbyBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnIFwKKwkJcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFuYW5hLTAuNC5lZ2cvRUdHLUlORk8gXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOSBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45L2Nob3hpZSBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mbyBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2NvY29udXRzLWFzdGVyLTEwLjMuZWdnLWluZm8gXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0IFwKKwkJcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8gXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0L2dyYW1tYXIgXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEgXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvIFwKKwkJcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdG93ZWxfc3R1ZmYtMC4xL3Rvd2VsX3N0dWZmIFwKKwkJcGFja2FnaW5nL3Rlc3RzL2ZpeGVyIHBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1IFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3BhY2thZ2VzIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3BhY2thZ2VzL3NvdXJjZSBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9wYWNrYWdlcy9zb3VyY2UvZiBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9wYWNrYWdlcy9zb3VyY2UvZi9mb29iYXIgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9iYWRtZDUgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2Zvb2JhciBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6IFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlL2JhciBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9iYXogXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvZm9vIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvcHJvamVjdF9saXN0IFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvcHJvamVjdF9saXN0L3NpbXBsZSBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3MgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X2ZvdW5kX2xpbmtzL3NpbXBsZSBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3Mvc2ltcGxlL2Zvb2JhciBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfcHlwaV9zZXJ2ZXIgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X3B5cGlfc2VydmVyL2V4dGVybmFsIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvdGVzdF9weXBpX3NlcnZlci9zaW1wbGUgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX2V4dGVybmFscyBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfZXh0ZXJuYWxzL2V4dGVybmFsIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvc2ltcGxlIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvc2ltcGxlL2Zvb2JhciBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3MgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL2V4dGVybmFsIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9zaW1wbGUgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL3NpbXBsZS9mb29iYXIgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX3JlYWxfZXh0ZXJuYWxzIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9yZWFsX2V4dGVybmFscy9zaW1wbGUgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX3JlYWxfZXh0ZXJuYWxzL3NpbXBsZS9mb29iYXIgXAogCQl0dXJ0bGVkZW1vIFwKIAkJbXVsdGlwcm9jZXNzaW5nIG11bHRpcHJvY2Vzc2luZy9kdW1teSBcCiAJCXVuaXR0ZXN0IHVuaXR0ZXN0L3Rlc3QgXApAQCAtOTU1LDcgKzEwMTUsNyBAQAogCQllbHNlCXRydWU7IFwKIAkJZmk7IFwKIAlkb25lCi0JQGZvciBpIGluICQoc3JjZGlyKS9MaWIvKi5weSAkKHNyY2RpcikvTGliLyouZWdnLWluZm8gOyBcCisJQGZvciBpIGluICQoc3JjZGlyKS9MaWIvKi5weSAkKHNyY2RpcikvTGliLyouY2ZnIDsgXAogCWRvIFwKIAkJaWYgdGVzdCAteCAkJGk7IHRoZW4gXAogCQkJJChJTlNUQUxMX1NDUklQVCkgJCRpICQoREVTVERJUikkKExJQkRFU1QpOyBcCkBAIC05OTUsNiArMTA1NSwxMCBAQAogCQkkKElOU1RBTExfREFUQSkgJChzcmNkaXIpL01vZHVsZXMveHhtb2R1bGUuYyBcCiAJCQkkKERFU1RESVIpJChMSUJERVNUKS9kaXN0dXRpbHMvdGVzdHMgOyBcCiAJZmkKKwlpZiB0ZXN0IC1kICQoREVTVERJUikkKExJQkRFU1QpL3BhY2thZ2luZy90ZXN0czsgdGhlbiBcCisJCSQoSU5TVEFMTF9EQVRBKSAkKHNyY2RpcikvTW9kdWxlcy94eG1vZHVsZS5jIFwKKwkJCSQoREVTVERJUikkKExJQkRFU1QpL3BhY2thZ2luZy90ZXN0cyA7IFwKKwlmaQogCS1QWVRIT05QQVRIPSQoREVTVERJUikkKExJQkRFU1QpICAkKFJVTlNIQVJFRCkgXAogCQkuLyQoQlVJTERQWVRIT04pIC1XaSAkKERFU1RESVIpJChMSUJERVNUKS9jb21waWxlYWxsLnB5IFwKIAkJLWQgJChMSUJERVNUKSAtZiBcCkBAIC0xMTg2LDcgKzEyNTAsNyBAQAogCS0tcm9vdD0kKERFU1RESVIpLwogCiAjIEJ1aWxkIHRoZSB0b3BsZXZlbCBNYWtlZmlsZQotTWFrZWZpbGUucHJlOiBNYWtlZmlsZS5wcmUuaW4gY29uZmlnLnN0YXR1cworTWFrZWZpbGUucHJlOiAkKHNyY2RpcikvTWFrZWZpbGUucHJlLmluIGNvbmZpZy5zdGF0dXMKIAlDT05GSUdfRklMRVM9TWFrZWZpbGUucHJlIENPTkZJR19IRUFERVJTPSAkKFNIRUxMKSBjb25maWcuc3RhdHVzCiAJJChNQUtFKSAtZiBNYWtlZmlsZS5wcmUgTWFrZWZpbGUKIApAQCAtMTI1Myw2ICsxMzE3LDcgQEAKIAlmaW5kIGJ1aWxkIC1uYW1lICdmZmljb25maWcuaCcgLWV4ZWMgcm0gLWYge30gJzsnIHx8IHRydWUKIAlmaW5kIGJ1aWxkIC1uYW1lICdmZmljb25maWcucHknIC1leGVjIHJtIC1mIHt9ICc7JyB8fCB0cnVlCiAJLXJtIC1mIExpYi9saWIydG8zLypHcmFtbWFyKi5waWNrbGUKKwktcm0gLWYgJChTWVNDT05GSUdEQVRBKQogCS1ybSAtZiBNb2R1bGVzL190ZXN0ZW1iZWQKIAogcHJvZmlsZS1yZW1vdmFsOgpAQCAtMTI5MSw4ICsxMzU2LDcgQEAKICMgRmluZCBmaWxlcyB3aXRoIGZ1bm55IG5hbWVzCiBmdW5ueToKIAlmaW5kICQoU1VCRElSUykgJChTVUJESVJTVE9PKSBcCi0JCS1uYW1lIC5zdm4gLXBydW5lIFwKLQkJLW8gLXR5cGUgZCBcCisJCS10eXBlIGQgXAogCQktbyAtbmFtZSAnKi5bY2hzXScgXAogCQktbyAtbmFtZSAnKi5weScgXAogCQktbyAtbmFtZSAnKi5weXcnIFwKQEAgLTEzMzEsNyArMTM5NSw3IEBACiBQeXRob24vdGhyZWFkLm86IEBUSFJFQURIRUFERVJTQAogCiAjIERlY2xhcmUgdGFyZ2V0cyB0aGF0IGFyZW4ndCByZWFsIGZpbGVzCi0uUEhPTlk6IGFsbCBidWlsZF9hbGwgc2hhcmVkbW9kcyBvbGRzaGFyZWRtb2RzIHRlc3QgcXVpY2t0ZXN0IG1lbXRlc3QKKy5QSE9OWTogYWxsIGJ1aWxkX2FsbCBzaGFyZWRtb2RzIG9sZHNoYXJlZG1vZHMgdGVzdCBxdWlja3Rlc3QKIC5QSE9OWTogaW5zdGFsbCBhbHRpbnN0YWxsIG9sZHNoYXJlZGluc3RhbGwgYmluaW5zdGFsbCBhbHRiaW5pbnN0YWxsCiAuUEhPTlk6IG1hbmluc3RhbGwgbGliaW5zdGFsbCBpbmNsaW5zdGFsbCBsaWJhaW5zdGFsbCBzaGFyZWRpbnN0YWxsCiAuUEhPTlk6IGZyYW1ld29ya2luc3RhbGwgZnJhbWV3b3JraW5zdGFsbGZyYW1ld29yayBmcmFtZXdvcmtpbnN0YWxsc3RydWN0dXJlCmRpZmYgLS1naXQgYS9NaXNjL0FDS1MgYi9NaXNjL0FDS1MKaW5kZXggMDAyODg3Ny4uMTdlYTkxOSAxMDA2NDQKLS0tIGEvTWlzYy9BQ0tTCisrKyBiL01pc2MvQUNLUwpAQCAtMTEsOCArMTEsMTAgQEAKIFBTOiBJbiB0aGUgc3RhbmRhcmQgUHl0aG9uIGRpc3RyaWJ1dGlvbiwgdGhpcyBmaWxlIGlzIGVuY29kZWQgaW4gVVRGLTgKIGFuZCB0aGUgbGlzdCBpcyBpbiByb3VnaCBhbHBoYWJldGljYWwgb3JkZXIgYnkgbGFzdCBuYW1lcy4KIAorUmFqaXYgQWJyYWhhbQogRGF2aWQgQWJyYWhhbXMKIFJvbiBBZGFtCitBbGkgQWZzaGFyCiBKaW0gQWhsc3Ryb20KIEZhcmhhbiBBaG1hZAogTWF0dGhldyBBaHJlbnMKQEAgLTM3LDEyICszOSwxMiBAQAogSmFzb24gQXNiYWhyCiBEYXZpZCBBc2NoZXIKIENocmlzIEF0TGVlCitBeW1lcmljIEF1Z3VzdGluCiBKb2huIEF5Y29jawotSmFuLUhlaW4gQsO8aHJtYW4KIERvbm92YW4gQmFhcmRhCiBBdHRpbGEgQmFibwotQWxmb25zbyBCYWNpZXJvCiBNYXJjaW4gQmFjaHJ5CitBbGZvbnNvIEJhY2llcm8KIER3YXluZSBCYWlsZXkKIFN0aWcgQmFra2VuCiBHcmVnIEJhbGwKQEAgLTU0LDIwICs1NiwyMiBAQAogQ2hyaXMgQmFya2VyCiBOaWNrIEJhcm5lcwogUXVlbnRpbiBCYXJuZXMKK0RhdmlkIEJhcm5ldHQKIFJpY2hhcmQgQmFycmFuCiBDZXNhciBFZHVhcmRvIEJhcnJvcwogRGVzIEJhcnJ5CiBVbGYgQmFydGVsdAorUGlvciBCYXN0aWRhCiBOaWNrIEJhc3RpbgogSmVmZiBCYXVlcgotTWlrZSBCYXllcgogTWljaGFlbCBSIEJheAogQW50aG9ueSBCYXh0ZXIKK01pa2UgQmF5ZXIKIFNhbXVlbCBMLiBCYXllcgogRG9uYWxkIEJlYXVkcnkKIERhdmlkIEJlYXpsZXkKLVJvYmluIEJlY2tlcgogTmVhbCBCZWNrZXIKK1JvYmluIEJlY2tlcgogVG9yc3RlbiBCZWNrZXIKIEJpbGwgQmVkZm9yZAogU3RlZmFuIEJlaG5lbApAQCAtOTIsNiArOTYsNyBAQAogUGhpbGlwcGUgQmlvbmRpCiBTdHVhcnQgQmlzaG9wCiBSb3kgQml4bGVyCitSZW5hdWQgQmxhbmNoCiBNaWtlIEJsYW5kCiBNYXJ0aW4gQmxlc3MKIFBhYmxvIEJsZXllcgpAQCAtMTAxLDkgKzEwNiwxMCBAQAogUGF1bCBCb2RkaWUKIE1hdHRoZXcgQm9lZGlja2VyCiBEYXZpZCBCb2xlbgotRm9yZXN0IEJvbmQKIEdhd2FpbiBCb2x0b24KK0ZvcmVzdCBCb25kCiBHcmVnb3J5IEJvbmQKK01hdGlhcyBCb3JkZXNlCiBKdXJqZW4gQm9zCiBQZXRlciBCb3NjaAogRXJpYyBCb3VjawpAQCAtMTE0LDIxICsxMjAsMjUgQEAKIEdlb3JnIEJyYW5kbAogQ2hyaXN0b3BoZXIgQnJhbm5vbgogVGVycmVuY2UgQnJhbm5vbgorRXJpayBCcmF5CiBCcmlhbiBCcmF6aWwKIERhdmUgQnJlbm5hbgogVG9tIEJyaWRnbWFuCitBbnRob255IEJyaWdncwogVG9iaWFzIEJyaW5rCiBSaWNoYXJkIEJyb2RpZQogTWljaGFlbCBCcm9naHRvbgogRGFuaWVsIEJyb3Rza3kKIEplYW4gQnJvdXdlcnMKIEdhcnkgUy4gQnJvd24KK1RpdHVzIEJyb3duCiBPbGVnIEJyb3l0bWFubgogRGF2ZSBCcnVlY2sKIEZyYW5jaXNjbyBNYXJ0w61uIEJydWd1w6kKIEZsb3JpcyBCcnV5bm9vZ2hlCiBTdGFuIEJ1YnJvdXNraQogRXJpayBkZSBCdWVnZXIKK0phbi1IZWluIELDvGhybWFuCiBEaWNrIEJ1bHRlcm1hbgogQmlsbCBCdW1nYXJuZXIKIEppbW15IEJ1cmdldHQKQEAgLTEzOCwxMiArMTQ4LDE0IEBACiBUYXJuIFdlaXNuZXIgQnVydG9uCiBMZWUgQnVzYnkKIFJhbHBoIEJ1dGxlcgorTmljb2xhcyBDYWRvdQogSnAgQ2FsZGVyb25lCiBBcm5hdWQgQ2FsbWV0dGVzCiBEYW5pZWwgQ2FsdmVsbwogVG9ueSBDYW1wYmVsbAogQnJldHQgQ2Fubm9uCiBNaWtlIENhcmx0b24KK1BpZXJyZSBDYXJyaWVyCiBUZXJyeSBDYXJyb2xsCiBMb3JlbnpvIE0uIENhdHVjY2kKIERvbm4gQ2F2ZQpAQCAtMTU0LDkgKzE2NiwxMCBAQAogSm9obiBDaGFuZGxlcgogSHllLVNoaWsgQ2hhbmcKIEplZmZyZXkgQ2hhbmcKLU1pdGNoIENoYXBtYW4KLUdyZWcgQ2hhcG1hbgorR29kZWZyb2lkIENoYXBlbGxlCiBCcmFkIENoYXBtYW4KK0dyZWcgQ2hhcG1hbgorTWl0Y2ggQ2hhcG1hbgogRGF2aWQgQ2hhdW0KIE5pY29sYXMgQ2hhdXZhdAogSmVycnkgQ2hlbgpAQCAtMTY5LDkgKzE4MiwxMSBAQAogVmFkaW0gQ2h1Z3Vub3YKIERhdmlkIENpbmVnZQogQ3JhaWcgQ2l0cm8KK0NocmlzIENsYXJrCiBNaWtlIENsYXJrc29uCiBBbmRyZXcgQ2xlZ2cKIEJyYWQgQ2xlbWVudHMKK1JvYmJpZSBDbGVtb25zCiBTdGV2ZSBDbGlmdAogTmljayBDb2dobGFuCiBKb3NoIENvZ2xpYXRpCkBAIC0xODEsOCArMTk2LDkgQEAKIEplZmZlcnkgQ29sbGlucwogUm9iZXJ0IENvbGxpbnMKIFBhdWwgQ29sb21pZXRzCi1EZW52ZXIgQ29uZXliZWFyZQorQ2hyaXN0b3BoZSBDb21iZWxsZXMKIEdlcmVteSBDb25kcmEKK0RlbnZlciBDb25leWJlYXJlCiBKdWFuIEpvc8OpIENvbnRpCiBNYXR0IENvbndheQogRGF2aWQgTS4gQ29va2UKQEAgLTIwOCw2ICsyMjQsNyBAQAogQW50b25pbyBDdW5pCiBCcmlhbiBDdXJ0aW4KIExpc2FuZHJvIERhbGNpbgorRGFycmVuIERhbGUKIEFuZHJldyBEYWxrZQogTGFycyBEYW1lcm93CiBFdmFuIERhbmRyZWEKQEAgLTIxNSwxMCArMjMyLDEzIEBACiBTY290dCBEYXZpZCBEYW5pZWxzCiBCZW4gRGFybmVsbAogSm9uYXRoYW4gRGFzdGVlbAorUGllcnJlLVl2ZXMgRGF2aWQKK1hhdmllciBkZSBHYXllCiBKb2huIERlR29vZAogTmVkIERlaWx5CiBWaW5jZW50IERlbGZ0CiBBcm5hdWQgRGVsb2JlbGxlCitLb25yYWQgRGVsb25nCiBFcmlrIERlbWFpbmUKIEpvaG4gRGVubmlzCiBSb2dlciBEZXYKQEAgLTIzNCw2ICsyNTQsNyBAQAogSHVtYmVydG8gRGlvZ2VuZXMKIFl2ZXMgRGlvbm5lCiBEYW5pZWwgRGl0dG1hcgorSm9zaXAgRGpvbG9uZ2EKIEphcm9taXIgRG9sZWNlawogSXNtYWlsIERvbm1legogTWFyY29zIERvbm9sbwpAQCAtMjUzLDExICsyNzQsMTEgQEAKIEFuZHkgRHVzdG1hbgogR2FyeSBEdXphbgogRXVnZW5lIER2dXJlY2hlbnNraQotSm9zaXAgRHpvbG9uZ2EKIE1heGltIER6dW1hbmVua28KIFdhbHRlciBEw7Zyd2FsZAogSGFucyBFY2thcmR0CiBSb2RvbHBobyBFY2toYXJkdAorSm9obiBFZG1vbmRzCiBHcmFudCBFZHdhcmRzCiBKb2huIEVocmVzbWFuCiBUYWwgRWluYXQKQEAgLTI3MywyMSArMjk0LDI1IEBACiBNaWNoYWVsIEVybnN0CiBCZW4gRXNjb3RvCiBBbmR5IEVza2lsc3NvbgorQW5kcsOpIEVzcGF6ZQogU3RlZmFuIEVzc2VyCiBOaWNvbGFzIEVzdGliYWxzCi1TdGVwaGVuIEQgRXZhbnMKIENhcmV5IEV2YW5zCitTdGVwaGVuIEQgRXZhbnMKIFRpbSBFdmVyZXR0CiBQYXVsIEV2ZXJpdHQKIERhdmlkIEV2ZXJseQogRGFuaWVsIEV2ZXJzCitXaW5zdG9uIEV3ZXJ0CiBHcmVnIEV3aW5nCiBNYXJ0aWpuIEZhYXNzZW4KIENsb3ZpcyBGYWJyaWNpbwogQW5kcmVhcyBGYWVyYmVyCiBCaWxsIEZhbmNoZXIKK01pY2hhZWwgRmFycmVsbAogVHJveSBKLiBGYXJyZWxsCiBNYXJrIEZhdmFzCitCb3JpcyBGZWxkCiBOaWVscyBGZXJndXNvbgogU2ViYXN0aWFuIEZlcm5hbmRlegogRmxvcmlhbiBGZXN0aQpAQCAtMzA0LDEzICszMjksMTYgQEAKIEFtYXVyeSBGb3JnZW90IGQnQXJjCiBEb3VnIEZvcnQKIEpvaG4gRm91aHkKK0FuZHJldyBGcmFuY2lzCiBNYXJ0aW4gRnJhbmtsaW4KIFJvYmluIEZyaWVkcmljaAogSXZhbiBGcm9obmUKK01hdHRoaWFzIEZ1Y2hzCiBKaW0gRnVsdG9uCiBUYWRheW9zaGkgRnVuYWJhCiBHeXJvIEZ1bmNoCiBQZXRlciBGdW5rCitFdGhhbiBGdXJtYW4KIEdlb2ZmIEZ1cm5pc2gKIFVsaXNzZXMgRnVycXVpbQogSGFnZW4gRsO8cnN0ZW5hdQpAQCAtMzM5LDkgKzM2NywxMiBAQAogSm9uYXRoYW4gR2lkZHkKIEpvaGFubmVzIEdpanNiZXJzCiBNaWNoYWVsIEdpbGZpeAorWWFubmljayBHaW5ncmFzCitNaWNoYWVsIEdvZGVyYmF1ZXIKIENocmlzdG9waCBHb2hsa2UKIFRpbSBHb2xkZW4KIEd1aWxoZXJtZSBHb27Dp2FsdmVzCitUaWFnbyBHb27Dp2FsdmVzCiBDaHJpcyBHb25uZXJtYW4KIERhdmlkIEdvb2RnZXIKIEhhbnMgZGUgR3JhYWZmCkBAIC0zNTQsMTUgKzM4NSwxOCBAQAogTWljaGFlbCBHdXJhdmFnZQogTGFycyBHdXN0w6RiZWwKIFRob21hcyBHw7x0dGxlcgorSm9uYXMgSC4KIEJhcnJ5IEhhZGRvdwogUGhpbGlwcCBIYWdlbWVpc3RlcgogUGF1bCB0ZW4gSGFnZW4KIFJhc211cyBIYWhuCiBQZXRlciBIYWlnaHQKIFbDoWNsYXYgSGFpc21hbgorV2Fsa2VyIEhhbGUgSVYKIEJvYiBIYWxsZXkKIEplc3NlIEhhbGxpbwogSnVuIEhhbWFubworQWxleGFuZHJlIEhhbWVsaW4KIE1hcmsgSGFtbW9uZAogTWFudXMgSGFuZAogTWlsdG9uIEwuIEhhbmtpbnMKQEAgLTM3Miw2ICs0MDYsNyBAQAogRGVyZWsgSGFybGFuZAogSmFzb24gSGFycGVyCiBCcmlhbiBIYXJyaW5nCitKb25hdGhhbiBIYXJ0bGV5CiBMYXJyeSBIYXN0aW5ncwogU2hhbmUgSGF0aGF3YXkKIFJ5Y2hhcmRlIEhhd2tlcwpAQCAtMzgyLDYgKzQxNyw3IEBACiBNYWx0ZSBIZWxtZXJ0CiBMYW5jZSBGaW5uIEhlbHN0ZW4KIEpvbmF0aGFuIEhlbmRyeQorTWljaGFlbCBIZW5yeQogSmFtZXMgSGVuc3RyaWRnZQogS2FzdW4gSGVyYXRoCiBDaHJpcyBIZXJib3J0aApAQCAtMzkzLDEwICs0MjksMTAgQEAKIE1hZ251cyBMLiBIZXRsYW5kCiBSYXltb25kIEhldHRpbmdlcgogS2V2YW4gSGV5ZG9uCitLZWxzZXkgSGlnaHRvd2VyCiBKYXNvbiBIaWxkZWJyYW5kCiBSaWNoaWUgSGluZGxlCiBLb25yYWQgSGluc2VuCi1NaWNoYWVsIEhlbnJ5CiBEYXZpZCBIb2JsZXkKIFRpbSBIb2NoYmVyZwogSm9lcmctQ3lyaWwgSG9laGxlCkBAIC00MDgsNiArNDQ0LDcgQEAKIEdlcnJpdCBIb2xsCiBTaGFuZSBIb2xsb3dheQogUnVuZSBIb2xtCitUaG9tYXMgSG9sbWVzCiBQaGlsaXAgSG9tYnVyZwogTmFvZnVtaSBIb25kYQogSmVmZnJleSBIb25pZwpAQCAtNDIxLDYgKzQ1OCw3IEBACiBCcmFkIEhvd2VzCiBNaWtlIEhveQogQ2hpaC1IYW8gSHVhbmcKK0NocmlzdGlhbiBIdWRvbgogTGF3cmVuY2UgSHVkc29uCiBNaWNoYWVsIEh1ZHNvbgogSmltIEh1Z3VuaW4KQEAgLTQyOSw2ICs0NjcsNyBAQAogSmVyZW15IEh5bHRvbgogR2VyaGFyZCBIw6RyaW5nCiBGcmVkcmlrIEjDpcOlcmQKK0NhdGFsaW4gSWFjb2IKIE1paGFpIEliYW5lc2N1CiBMYXJzIEltbWlzY2gKIEJvYmJ5IEltcG9sbG9uaWEKQEAgLTQ0OCw2ICs0ODcsOCBAQAogSmFjayBKYW5zZW4KIEJpbGwgSmFuc3NlbgogVGhvbWFzIEphcm9zY2gKK1piaWduaWV3IErEmWRyemVqZXdza2ktU3ptZWsKK0p1bGllbiBKZWhhbm5ldAogRHJldyBKZW5raW5zCiBGbGVtbWluZyBLasOmciBKZW5zZW4KIE11blNpYyBKZW9uZwpAQCAtNDYzLDM2ICs1MDQsMzYgQEAKIFJpY2hhcmQgSm9uZXMKIElybWVuIGRlIEpvbmcKIEx1Y2FzIGRlIEpvbmdlCi1Kb2huIEpvcmdlbnNlbgogSmVucyBCLiBKb3JnZW5zZW4KK0pvaG4gSm9yZ2Vuc2VuCiBTaWppbiBKb3NlcGgKIEFuZHJlYXMgSnVuZwogVGF0dG9vIE1hYm9uem8gSy4KIEJvYiBLYWhuCiBLdXJ0IEIuIEthaXNlcgogVGFtaXRvIEthaml5YW1hCitKYW4gS2FsaXN6ZXdza2kKIFBldGVyIHZhbiBLYW1wZW4KIFJhZmUgS2FwbGFuCiBKYWNvYiBLYXBsYW4tTW9zcwotSmFuIEthbGlzemV3c2tpCi1BcmthZHkgS29wbHlhcm92CitQZXIgw5h5dmluZCBLYXJsc2VuCiBMb3UgS2F0ZXMKIEhpcm9ha2kgS2F3YWkKIFNlYmFzdGllbiBLZWltCiBSeWFuIEtlbGx5CiBEYW4gS2VuaWdzYmVyZwotUm9iZXJ0IEtlcm4KIFJhbmRhbGwgS2VybgorUm9iZXJ0IEtlcm4KIE1hZ251cyBLZXNzbGVyCiBMYXdyZW5jZSBLZXN0ZWxvb3QKIFZpdmVrIEtoZXJhCi1Ba2lyYSBLaXRhZGEKIE1hZHMgS2lpbGVyaWNoCiBUYWVrIEpvbyBLaW0KIFcuIFRyZXZvciBLaW5nCiBQYXVsIEtpcHBlcwogU3RldmUgS2lyc2NoCiBTZWJhc3RpYW4gS2lyc2NoZQorQWtpcmEgS2l0YWRhCiBSb24gS2xhdGNoa28KIFJlaWQgS2xlY2tuZXIKIEJhc3RpYW4gS2xlaW5laWRhbQpAQCAtNTA2LDYgKzU0Nyw5IEBACiBHcmVnIEtvY2hhbnNraQogRGFtb24gS29obGVyCiBNYXJrbyBLb2h0YWxhCitKYWNlayBLb25pZWN6bnkKK9Cc0LDRgNC6INCa0L7RgNC10L3QsdC10YDQsworQXJrYWR5IEtvcGx5YXJvdgogVmxhZCBLb3JvbGV2CiBKb3NlcGggS29zaHkKIE1ha3NpbSBLb3p5YXJjaHVrCkBAIC01MTksNiArNTYzLDcgQEAKIEFuZHJlaiBLcnBpYwogSXZhbiBLcnN0acSHCiBBbmRyZXcgS3VjaGxpbmcKK0pvbiBLdWhuCiBWbGFkaW1pciBLdXNobmlyCiBSb3NzIExhZ2Vyd2FsbAogQ2FtZXJvbiBMYWlyZApAQCAtNTI5LDE2ICs1NzQsMTggQEAKIEFuZHJldyBMYW5nbWVhZAogRGV0bGVmIExhbm5lcnQKIFNvcmVuIExhcnNlbgorQW1vcyBMYXR0ZWllcgogUGllcnMgTGF1ZGVyCiBCZW4gTGF1cmllCiBTaW1vbiBMYXcKIENocmlzIExhd3JlbmNlCiBCcmlhbiBMZWFpcgorTWF0aGlldSBMZWR1Yy1IYW1lbAorQ2hyaXN0b3BoZXIgTGVlCitJbnllb2wgTGVlCiBKYW1lcyBMZWUKIEpvaG4gSi4gTGVlCi1Jbnllb2wgTGVlCiBUaG9tYXMgTGVlCi1DaHJpc3RvcGhlciBMZWUKIFRlbm5lc3NlZSBMZWV1d2VuYnVyZwogTHVjIExlZmVidnJlCiBWaW5jZW50IExlZ29sbApAQCAtNTQ3LDkgKzU5NCwxMSBAQAogUm9iZXJ0IExlaG1hbm4KIFBldHJpIExlaHRpbmVuCiBMdWtlIEtlbm5ldGggQ2Fzc29uIExlaWdodG9uCitUc2hlcGFuZyBMZWtob25raG9iZQogTWFyYy1BbmRyZSBMZW1idXJnCiBKb2huIExlbnRvbgogQ2hyaXN0b3BoZXIgVHVyIExlc25pZXdza2ktTGFhcworQWxhaW4gTGV1ZnJveQogTWFyayBMZXZpbnNvbgogV2lsbGlhbSBMZXdpcwogWHVhbmppIExpCkBAIC01NjUsNiArNjE0LDcgQEAKIEdyZWdvciBMaW5nbAogTmljayBMb2Nrd29vZAogU3RlcGhhbmllIExvY2t3b29kCitIdWdvIExvcGVzIFRhdmFyZXMKIEFubmUgTG9yZAogVG9tIExvcmVkbwogSnVzdGluIExvdmUKQEAgLTU3OCw2ICs2MjgsNyBAQAogSmltIEx5bmNoCiBNaWthZWwgTHluZ3ZpZwogTWFydGluIHZvbiBMw7Z3aXMKK0d1aWxsZXJtbyBMw7NwZXotQW5nbGFkYQogQW5kcmV3IEkgTWFjSW50eXJlCiBUaW0gTWFjS2VuemllCiBOaWNrIE1hY2xhcmVuCkBAIC01ODksMTIgKzY0MCwxNCBAQAogVmxhZGltaXIgTWFyYW5nb3pvdgogRGF2aWQgTWFyZWsKIERvdWcgTWFyaWVuCitTdmVuIE1hcm5hY2gKIEFsZXggTWFydGVsbGkKIEFudGhvbnkgTWFydGluCiBPd2VuIE1hcnRpbgogU8OpYmFzdGllbiBNYXJ0aW5pCiBSb2dlciBNYXNzZQogTmljayBNYXRoZXdzb24KK1NpbW9uIE1hdGhpZXUKIEdyYWhhbSBNYXR0aGV3cwogRGlldGVyIE1hdXJlcgogQXJuYXVkIE1hemluCkBAIC02MDUsOCArNjU4LDggQEAKIE1pY2hhZWwgTWNMYXkKIE1hcmsgTWMgTWFob24KIEdvcmRvbiBNY01pbGxhbgotQ2FvbGFuIE1jTmFtYXJhCiBBbmRyZXcgTWNOYW1hcmEKK0Nhb2xhbiBNY05hbWFyYQogQ3JhaWcgTWNQaGVldGVycwogTGFtYmVydCBNZWVydGVucwogQmlsbCB2YW4gTWVsbGUKQEAgLTYxNiw0NiArNjY5LDUzIEBACiBMdWtlIE1ld2J1cm4KIENhcmwgTWV5ZXIKIE1pa2UgTWV5ZXIKK1Bpb3RyIE1leWVyCitBbGV4aXMgTcOpdGFpcmVhdQogU3RldmVuIE1pYWxlCiBUcmVudCBNaWNrCiBTdGFuIE1paGFpCiBBcmlzdG90ZWxpcyBNaWtyb3BvdWxvcwotRGFtaWVuIE1pbGxlcgogQ2hhZCBNaWxsZXIKK0RhbWllbiBNaWxsZXIKIEphc29uIFYuIE1pbGxlcgogSmF5IFQuIE1pbGxlcgogUm9tYW4gTWlsbmVyCitKdWxpZW4gTWlvdHRlCiBBbmRyaWkgVi4gTWlzaGtvdnNreWkKLUR1c3RpbiBKLiBNaXRjaGVsbAogRG9tIE1pdGNoZWxsCitEdXN0aW4gSi4gTWl0Y2hlbGwKK1p1YmluIE1pdGhyYQogRG91ZyBNb2VuCiBUaGUgRHJhZ29uIERlIE1vbnN5bmUKIFNraXAgTW9udGFuYXJvCiBQYXVsIE1vb3JlCiBEZXJlayBNb3JyCiBKYW1lcyBBIE1vcnJpc29uCitEZXJlayBNY1RhdmlzaCBNb3VuY2UKIFBhYmxvIE1vdXpvCiBNaGVyIE1vdnNpc3lhbgogUnVzbGFuIE1zdG9pCi1Tam9lcmQgTXVsbGVuZGVyCitNaWNoYWVsIE11bGljaAogU2FwZSBNdWxsZW5kZXIKK1Nqb2VyZCBNdWxsZW5kZXIKIE1pY2hhZWwgTXVsbGVyCiBOZWlsIE11bGxlcgorTG91aXMgTXVucm8KIFIuIERhdmlkIE11cnJheQotUGlvdHIgTWV5ZXIKIEpvaG4gTmFnbGUKIFRha2FoaXJvIE5ha2F5YW1hCiBUcmF2ZXJzIE5hcmFuCiBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkKIFZpbG1vcyBOZWJlaGFqCiBGcmVkcmlrIE5laHIKLVRyZW50IE5lbHNvbgogVG9ueSBOZWxzb24KK1RyZW50IE5lbHNvbgogQ2hhZCBOZXR6ZXIKIE1heCBOZXVuaMO2ZmZlcgogR2VvcmdlIE5ldmlsbGUtTmVpbAogSm9oYW5uZXMgTmljb2xhaQogU2FtdWVsIE5pY29sYXJ5CitKb25hdGhhbiBOaWVob2YKIEd1c3Rhdm8gTmllbWV5ZXIKIE9zY2FyIE5pZXJzdHJhc3oKIEhydm9qZSBOaWtzaWMKQEAgLTY5NywxMSArNzU3LDE1IEBACiBBbGV4YW5kcmUgUGFyZW50ZWF1CiBEYW4gUGFyaXNpZW4KIEhhcnJpIFBhc2FuZW4KK0dhw6tsIFBhc2dyaW1hdWQKIFJhbmR5IFBhdXNjaAogU2FtdWVsZSBQZWRyb25pCiBNYXJjZWwgdmFuIGRlciBQZWlqbAorQmVya2VyIFBla3NhZwogU3RldmVuIFBlbWJlcnRvbgogU2FudGlhZ28gUGVyZXPDs24KK0dlb3JnZSBQZXJpc3RlcmFraXMKK01hdGhpZXUgUGVycmVhdWx0CiBNYXJrIFBlcnJlZ28KIFRyZXZvciBQZXJyaW4KIEdhYnJpZWwgZGUgUGVydGh1aXMKQEAgLTcxMCw2ICs3NzQsNyBAQAogSm9lIFBldGVyc29uCiBDaHJpcyBQZXRyaWxsaQogQmpvcm4gUGV0dGVyc2VuCitSb25ueSBQZmFubnNjaG1pZHQKIEdlb2ZmIFBoaWxicmljawogR2F2cmllIFBoaWxpcHNvbgogQWRyaWFuIFBoaWxsaXBzCkBAIC03MjUsNiArNzkwLDcgQEAKIEFudG9pbmUgUGl0cm91CiBKZWFuLUZyYW7Dp29pcyBQacOpcm9ubmUKIE9sZWcgUGxha2hvdG55dWsKK1JlbWkgUG9pbnRlbAogR3VpbGhlcm1lIFBvbG8KIE1pY2hhZWwgUG9tcmFuaW5nCiBJdXN0aW4gUG9wCkBAIC03MzMsMTMgKzc5OSwxNSBAQAogQW1yaXQgUHJlbQogUGF1bCBQcmVzY29kCiBEb25vdmFuIFByZXN0b24KK1BhdWwgUHJpY2UKIEp5cmtpIFB1bGxpYWluZW4KIFN0ZXZlIFB1cmNlbGwKLUZlcm5hbmRvIFDDqXJlegogRWR1YXJkbyBQw6lyZXoKK0Zlcm5hbmRvIFDDqXJlegogUGllcnJlIFF1ZW50ZWwKIEJyaWFuIFF1aW5sYW4KIEFuZGVycyBRdmlzdAorSsOpcsO0bWUgUmFkaXgKIEJ1cnRvbiBSYWRvbnMKIEplZmYgUmFtbmFuaQogQnJvZGllIFJhbwpAQCAtNzYxLDEwICs4MjksMTIgQEAKIEJlcm5oYXJkIFJlaXRlcgogU3RldmVuIFJlaXoKIFJvZWxhbmQgUmVuZ2VsaW5rCi1UaW0gUmljZQorQW50b2luZSBSZXZlcnNhdAogRnJhbmNlc2NvIFJpY2NpYXJkaQorVGltIFJpY2UKIEphbiBQaWV0ZXIgUmllZ2VsCiBBcm1pbiBSaWdvCitBcmMgUmlsZXkKIE5pY2hvbGFzIFJpbGV5CiBKZWFuLUNsYXVkZSBSaW1iYXVsdAogVmxhZCBSaXNjdXRpYQpAQCAtNzczLDE2ICs4NDMsMjAgQEAKIEFudGhvbnkgUm9hY2gKIENhcmwgUm9iYmVuCiBNYXJrIFJvYmVydHMKLUppbSBSb2JpbnNvbgogQW5keSBSb2JpbnNvbgorSmltIFJvYmluc29uCiBNYXJrIFJvZGR5CiBLZXZpbiBSb2RnZXJzCiBHaWFtcGFvbG8gUm9kb2xhCitFbHNvbiBSb2RyaWd1ZXoKK0x1aXMgUm9qYXMKIE1pa2UgUm9tYmVyZwogQXJtaW4gUm9uYWNoZXIKIENhc2UgUm9vbGUKIFRpbW90aHkgUm9zY29lCitFcmlrIFJvc2UKIEppbSBSb3NraW5kCitCcmlhbiBSb3NuZXIKIEp1c3QgdmFuIFJvc3N1bQogSHVnbyB2YW4gUm9zc3VtCiBTYXNraWEgdmFuIFJvc3N1bQpAQCAtNzk4LDcgKzg3Miw5IEBACiBKZWZmIFJ1c2gKIFNhbSBSdXNoaW5nCiBNYXJrIFJ1c3NlbGwKK1J1c3R5IFJ1c3NlbGwKIE5pY2sgUnVzc28KK1BhdHJpY2sgU2FiaW4KIFPDqWJhc3RpZW4gU2FibMOpCiBTdW1hbiBTYWhhCiBIYWppbWUgU2FpdG91CkBAIC04MjksMTQgKzkwNSwxNSBAQAogU3RlZmFuIFNjaHdhcnplcgogRGlldG1hciBTY2h3ZXJ0YmVyZ2VyCiBGZWRlcmljbyBTY2h3aW5kdAotU3RldmVuIFNjb3R0CiBCYXJyeSBTY290dAorU3RldmVuIFNjb3R0CiBOaWNrIFNlaWRlbm1hbgogxb1pZ2EgU2VpbG5hY2gKIFl1cnkgU2VsaXZhbm92CiBGcmVkIFNlbGxzCiBKaXdvbiBTZW8KLVJvZ2VyIFNlcnd5CitJw7FpZ28gU2VybmEKK1JvZ2VyIEQuIFNlcnd5CiBKZXJyeSBTZXV0dGVyCiBEZW5pcyBTZXZlcnNvbgogSWFuIFNleWVyCkBAIC04NTMsMTcgKzkzMCwyMSBAQAogUGF1bCBTaWpiZW4KIEtpcmlsbCBTaW1vbm92CiBOYXRoYW4gUGF1bCBTaW1vbnMKK0FkYW0gU2ltcGtpbnMKIEphbm5lIFNpbmtrb25lbgogR2VvcmdlIFNpcGUKIEouIFNpcHByZWxsCiBLcmFnZW4gU2l0YWtlcgotRXJpYyBWLiBTbWl0aAogQ2hyaXN0b3BoZXIgU21pdGgKK0VyaWMgVi4gU21pdGgKIEdyZWdvcnkgUC4gU21pdGgKK01hcmsgU21pdGgKIFJhZmFsIFNtb3RyenlrCitFcmljIFNub3cKIERpcmsgU29lZGUKIFBhdWwgU29rb2xvdnNreQogQ29keSBTb21lcnZpbGxlCitFZG9hcmRvIFNwYWRvbGluaQogQ2xheSBTcGVuY2UKIFN0ZWZhbiBTcGVybGluZwogUGVyIFNwaWxsaW5nCkBAIC04NzMsOSArOTU0LDExIEBACiBSYWpHb3BhbCBTcmluaXZhc2FuCiBRdWVudGluIFN0YWZmb3JkLUZyYXNlcgogRnJhbmsgU3RhamFubworSm9lbCBTdGFubGV5CiBPbGl2ZXIgU3RlZWxlCiBHcmVnIFN0ZWluCiBDaHJpcyBTdGVybgorQWxleCBTdGV3YXJ0CiBWaWN0b3IgU3Rpbm5lcgogUmljaGFyZCBTdG9ha2xleQogUGV0ZXIgU3RvZWhyCkBAIC05MDEsOCArOTg0LDggQEAKIFdpbGxpYW0gVGFua3NsZXkKIENocmlzdGlhbiBUYW56ZXIKIFN0ZXZlbiBUYXNjaHVrCi1Nb250eSBUYXlsb3IKIEFteSBUYXlsb3IKK01vbnR5IFRheWxvcgogQW5hdG9seSBUZWNodG9uaWsKIE1pa2hhaWwgVGVyZWtob3YKIFJpY2hhcmQgTS4gVGV3CkBAIC05MTksMTMgKzEwMDIsMTYgQEAKIEphc29uIFRpc2hsZXIKIENocmlzdGlhbiBUaXNtZXIKIEZyYW5rIEouIFRvYmluCi1SIExpbmRzYXkgVG9kZAogQmVubmV0dCBUb2RkCitSIExpbmRzYXkgVG9kZAorRXVnZW5lIFRvZGVyCiBFcmlrIFRvbGxlcnVkCiBNYXRpYXMgVG9yY2hpbnNreQogU2FuZHJvIFRvc2kKIFJpY2hhcmQgVG93bnNlbmQKK0RhdmlkIFRvd25zaGVuZAogTGF1cmVuY2UgVHJhdHQKK01hdHRoaWFzIFRyb2ZmYWVzCiBKb2huIFRyb21wCiBKYXNvbiBUcm93YnJpZGdlCiBBbnRob255IFR1aW5pbmdhCkBAIC05NTgsNiArMTA0NCw3IEBACiBLYW5uYW4gVmlqYXlhbgogS3VydCBWaWxlCiBOb3JtYW4gVmluZQorUGF1bGkgVmlydGFuZW4KIEZyYW5rIFZpc3NlcgogSm9oYW5uZXMgVm9nZWwKIFNqb2VyZCBkZSBWcmllcwpAQCAtOTkwLDEwICsxMDc3LDEwIEBACiBHZXJyeSBXaWVuZXIKIEZyYW5rIFdpZXJ6Ymlja2kKIEJyeWNlICJab29rbyIgV2lsY294LU8nSGVhcm4KK0dlcmFsZCBTLiBXaWxsaWFtcwogSmFzb24gV2lsbGlhbXMKIEpvaG4gV2lsbGlhbXMKIFN1ZSBXaWxsaWFtcwotR2VyYWxkIFMuIFdpbGxpYW1zCiBGcmFuayBXaWxsaXNvbgogR3JlZyBWLiBXaWxzb24KIEpvZHkgV2luc3RvbgpAQCAtMTAxMCw4ICsxMDk3LDkgQEAKIEtsYXVzLUp1ZXJnZW4gV29sZgogRGFuIFdvbGZlCiBSaWNoYXJkIFdvbGZmCi1EYXJyZW4gV29ycmFsbAorQWRhbSBXb29kYmVjawogR29yZG9uIFdvcmxleQorRGFycmVuIFdvcnJhbGwKIFRob21hcyBXb3V0ZXJzCiBIZWlrbyBXdW5kcmFtCiBEb3VnIFd5YXR0CmRpZmYgLS1naXQgYS9NaXNjL05FV1MgYi9NaXNjL05FV1MKaW5kZXggNDQ2ODNmNS4uN2Q2NDQxMSAxMDA2NDQKLS0tIGEvTWlzYy9ORVdTCisrKyBiL01pc2MvTkVXUwpAQCAtMiwxMCArMiw0MiBAQAogUHl0aG9uIE5ld3MKICsrKysrKysrKysrCiAKLVdoYXQncyBOZXcgaW4gUHl0aG9uIDMuMi4zIHJlbGVhc2UgY2FuZGlkYXRlIDE/Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorV2hhdCdzIE5ldyBpbiBQeXRob24gMy4zLjAgQWxwaGEgMj8KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAKLSpSZWxlYXNlIGRhdGU6IDI0LUZlYi0yMDExKgorKlJlbGVhc2UgZGF0ZTogWFhYWC1YWC1YWCoKKworQ29yZSBhbmQgQnVpbHRpbnMKKy0tLS0tLS0tLS0tLS0tLS0tCisKKy0gSXNzdWUgIzE0MjA1OiBkaWN0IGxvb2t1cCByYWlzZXMgYSBSdW50aW1lRXJyb3IgaWYgdGhlIGRpY3QgaXMgbW9kaWZpZWQKKyAgZHVyaW5nIGEgbG9va3VwLgorCitMaWJyYXJ5CistLS0tLS0tCisKKy0gSXNzdWUgIzE0MTY4OiBDaGVjayBmb3IgcHJlc2VuY2Ugb2YgRWxlbWVudC5fYXR0cnMgaW4gbWluaWRvbSBiZWZvcmUKKyAgYWNjZXNzaW5nIGl0LgorCistIElzc3VlICMxMjMyODogRml4IG11bHRpcHJvY2Vzc2luZydzIHVzZSBvZiBvdmVybGFwcGVkIEkvTyBvbiBXaW5kb3dzLgorICBBbHNvLCBhZGQgYSBtdWx0aXByb2Nlc3NpbmcuY29ubmVjdGlvbi53YWl0KHJsaXN0LCB0aW1lb3V0PU5vbmUpIGZ1bmN0aW9uCisgIGZvciBwb2xsaW5nIG11bHRpcGxlIG9iamVjdHMgYXQgb25jZS4gIFBhdGNoIGJ5IHNidC4KKworLSBJc3N1ZSAjMTQwMDc6IEFjY2VwdCBpbmNvbXBsZXRlIFRyZWVCdWlsZGVyIG9iamVjdHMgKG1pc3Npbmcgc3RhcnQsIGVuZCwKKyAgZGF0YSBvciBjbG9zZSBtZXRob2QpIGZvciB0aGUgUHl0aG9uIGltcGxlbWVudGF0aW9uIGFzIHdlbGwuCisgIERyb3AgdGhlIG5vLW9wIFRyZWVCdWlsZGVyKCkueG1sKCkgbWV0aG9kIGZyb20gdGhlIEMgaW1wbGVtZW50YXRpb24uCisKK0V4dGVuc2lvbiBNb2R1bGVzCistLS0tLS0tLS0tLS0tLS0tLQorCistIElzc3VlICMxNDIxMjogVGhlIHJlIG1vZHVsZSBkaWRuJ3QgcmV0YWluIGEgcmVmZXJlbmNlIHRvIGJ1ZmZlcnMgaXQgd2FzCisgIHNjYW5uaW5nLCByZXN1bHRpbmcgaW4gc2VnZmF1bHRzLgorCisKK1doYXQncyBOZXcgaW4gUHl0aG9uIDMuMy4wIEFscGhhIDE/Cis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisqUmVsZWFzZSBkYXRlOiAwNS1NYXItMjAxMioKIAogQ29yZSBhbmQgQnVpbHRpbnMKIC0tLS0tLS0tLS0tLS0tLS0tCkBAIC0xNiwxNCArNDgsNDIgQEAKIC0gSXNzdWUgIzEzNTIxOiBkaWN0LnNldGRlZmF1bHQoKSBub3cgZG9lcyBvbmx5IG9uZSBsb29rdXAgZm9yIHRoZSBnaXZlbiBrZXksCiAgIG1ha2luZyBpdCAiYXRvbWljIiBmb3IgbWFueSBwdXJwb3Nlcy4gIFBhdGNoIGJ5IEZpbGlwIEdydXN6Y3p5xYRza2kuCiAKLS0gSXNzdWUgIzEzNzAzOiBvQ0VSVC0yMDExLTAwMzogYWRkIC1SIGNvbW1hbmQtbGluZSBvcHRpb24gYW5kIFBZVEhPTkhBU0hTRUVECi0gIGVudmlyb25tZW50IHZhcmlhYmxlLCB0byBwcm92aWRlIGFuIG9wdC1pbiB3YXkgdG8gcHJvdGVjdCBhZ2FpbnN0IGRlbmlhbCBvZgotICBzZXJ2aWNlIGF0dGFja3MgZHVlIHRvIGhhc2ggY29sbGlzaW9ucyB3aXRoaW4gdGhlIGRpY3QgYW5kIHNldCB0eXBlcy4gIFBhdGNoCi0gIGJ5IERhdmlkIE1hbGNvbG0sIGJhc2VkIG9uIHdvcmsgYnkgVmljdG9yIFN0aW5uZXIuCistIFBFUCA0MDksIElzc3VlICM2MjEwOiAicmFpc2UgWCBmcm9tIE5vbmUiIGlzIG5vdyBzdXBwb3J0ZWQgYXMgYSBtZWFucyBvZgorICBzdXBwcmVzc2luZyB0aGUgZGlzcGxheSBvZiB0aGUgY2hhaW5lZCBleGNlcHRpb24gY29udGV4dC4gVGhlIGNoYWluZWQKKyAgY29udGV4dCBzdGlsbCByZW1haW5zIGF2YWlsYWJsZSBhcyB0aGUgX19jb250ZXh0X18gYXR0cmlidXRlLgorCistIElzc3VlICMxMDE4MTogTmV3IG1lbW9yeXZpZXcgaW1wbGVtZW50YXRpb24gZml4ZXMgbXVsdGlwbGUgb3duZXJzaGlwCisgIGFuZCBsaWZldGltZSBpc3N1ZXMgb2YgZHluYW1pY2FsbHkgYWxsb2NhdGVkIFB5X2J1ZmZlciBtZW1iZXJzICgjOTk5MCkKKyAgYXMgd2VsbCBhcyBjcmFzaGVzICgjODMwNSwgIzc0MzMpLiBNYW55IG5ldyBmZWF0dXJlcyBoYXZlIGJlZW4gYWRkZWQKKyAgKFNlZSB3aGF0c25ldy8zLjMpLCBhbmQgdGhlIGRvY3VtZW50YXRpb24gaGFzIGJlZW4gdXBkYXRlZCBleHRlbnNpdmVseS4KKyAgVGhlIG5kYXJyYXkgdGVzdCBvYmplY3QgZnJvbSBfdGVzdGJ1ZmZlci5jIGltcGxlbWVudHMgYWxsIGFzcGVjdHMgb2YKKyAgUEVQLTMxMTgsIHNvIGZ1cnRoZXIgZGV2ZWxvcG1lbnQgdG93YXJkcyB0aGUgY29tcGxldGUgaW1wbGVtZW50YXRpb24KKyAgb2YgdGhlIFBFUCBjYW4gcHJvY2VlZCBpbiBhIHRlc3QtZHJpdmVuIG1hbm5lci4KKworICBUaGFua3MgdG8gTmljayBDb2dobGFuLCBBbnRvaW5lIFBpdHJvdSBhbmQgUGF1bGkgVmlydGFuZW4gZm9yIHJldmlldworICBhbmQgbWFueSBpZGVhcy4KKworLSBJc3N1ZSAjMTI4MzQ6IEZpeCBpbmNvcnJlY3QgcmVzdWx0cyBvZiBtZW1vcnl2aWV3LnRvYnl0ZXMoKSBmb3IKKyAgbm9uLWNvbnRpZ3VvdXMgYXJyYXlzLgorCistIElzc3VlICM1MjMxOiBJbnRyb2R1Y2UgbWVtb3J5dmlldy5jYXN0KCkgbWV0aG9kIHRoYXQgYWxsb3dzIGNoYW5naW5nCisgIGZvcm1hdCBhbmQgc2hhcGUgd2l0aG91dCBtYWtpbmcgYSBjb3B5IG9mIHRoZSB1bmRlcmx5aW5nIG1lbW9yeS4KIAogLSBJc3N1ZSAjMTQwODQ6IEZpeCBhIGZpbGUgZGVzY3JpcHRvciBsZWFrIHdoZW4gaW1wb3J0aW5nIGEgbW9kdWxlIHdpdGggYQogICBiYWQgZW5jb2RpbmcuCiAKKy0gVXBncmFkZSBVbmljb2RlIGRhdGEgdG8gVW5pY29kZSA2LjEuCisKKy0gSXNzdWUgIzE0MDQwOiBSZW1vdmUgcmFyZWx5IHVzZWQgZmlsZSBuYW1lIHN1ZmZpeGVzIGZvciBDIGV4dGVuc2lvbnMKKyAgKHVuZGVyIFBPU0lYIG1haW5seSkuCisKKy0gSXNzdWUgIzE0MDUxOiBBbGxvdyBhcmJpdHJhcnkgYXR0cmlidXRlcyB0byBiZSBzZXQgb2YgY2xhc3NtZXRob2QgYW5kCisgIHN0YXRpY21ldGhvZC4KKworLSBJc3N1ZSAjMTM3MDM6IG9DRVJULTIwMTEtMDAzOiBSYW5kb21pemUgaGFzaGVzIG9mIHN0ciBhbmQgYnl0ZXMgdG8gcHJvdGVjdAorICBhZ2FpbnN0IGRlbmlhbCBvZiBzZXJ2aWNlIGF0dGFja3MgZHVlIHRvIGhhc2ggY29sbGlzaW9ucyB3aXRoaW4gdGhlIGRpY3QgYW5kCisgIHNldCB0eXBlcy4gIFBhdGNoIGJ5IERhdmlkIE1hbGNvbG0sIGJhc2VkIG9uIHdvcmsgYnkgVmljdG9yIFN0aW5uZXIuCisKIC0gSXNzdWUgIzEzMDIwOiBGaXggYSByZWZlcmVuY2UgbGVhayB3aGVuIGFsbG9jYXRpbmcgYSBzdHJ1Y3RzZXF1ZW5jZSBvYmplY3QKICAgZmFpbHMuICBQYXRjaCBieSBTdW1hbiBTYWhhLgogCkBAIC0zMiw2ICs5Miw5IEBACiAtIElzc3VlICMxMTIzNTogRml4IE92ZXJmbG93RXJyb3Igd2hlbiB0cnlpbmcgdG8gaW1wb3J0IGEgc291cmNlIGZpbGUgd2hvc2UKICAgbW9kaWZpY2F0aW9uIHRpbWUgZG9lc24ndCBmaXQgaW4gYSAzMi1iaXQgdGltZXN0YW1wLgogCistIElzc3VlICMxMjcwNTogQSBTeW50YXhFcnJvciBleGNlcHRpb24gaXMgbm93IHJhaXNlZCB3aGVuIGF0dGVtcHRpbmcgdG8KKyAgY29tcGlsZSBtdWx0aXBsZSBzdGF0ZW1lbnRzIGFzIGEgc2luZ2xlIGludGVyYWN0aXZlIHN0YXRlbWVudC4KKwogLSBGaXggdGhlIGJ1aWx0aW4gbW9kdWxlIGluaXRpYWxpemF0aW9uIGNvZGUgdG8gc3RvcmUgdGhlIGluaXQgZnVuY3Rpb24gZm9yCiAgIGZ1dHVyZSByZWluaXRpYWxpemF0aW9uLgogCkBAIC00Myw2ICsxMDYsMzcgQEAKIC0gSXNzdWUgIzEzNjI5OiBSZW51bWJlciB0aGUgdG9rZW5zIGluIHRva2VuLmggc28gdGhhdCB0aGV5IG1hdGNoIHRoZSBpbmRleGVzCiAgIGludG8gX1B5UGFyc2VyX1Rva2VuTmFtZXMuCiAKKy0gSXNzdWUgIzEzNzUyOiBBZGQgYSBjYXNlZm9sZCgpIG1ldGhvZCB0byBzdHIuCisKKy0gSXNzdWUgIzEzNzYxOiBBZGQgYSAiZmx1c2giIGtleXdvcmQgYXJndW1lbnQgdG8gdGhlIHByaW50KCkgZnVuY3Rpb24sCisgIHVzZWQgdG8gZW5zdXJlIGZsdXNoaW5nIHRoZSBvdXRwdXQgc3RyZWFtLgorCistIElzc3VlICMxMzY0NTogcHljIGZpbGVzIG5vdyBjb250YWluIHRoZSBzaXplIG9mIHRoZSBjb3JyZXNwb25kaW5nIHNvdXJjZQorICBjb2RlLCB0byBhdm9pZCB0aW1lc3RhbXAgY29sbGlzaW9ucyAoZXNwZWNpYWxseSBvbiBmaWxlc3lzdGVtcyB3aXRoIGEgbG93CisgIHRpbWVzdGFtcCByZXNvbHV0aW9uKSB3aGVuIGNoZWNraW5nIGZvciBmcmVzaG5lc3Mgb2YgdGhlIGJ5dGVjb2RlLgorCistIFBFUCAzODAsIElzc3VlICMxMTY4MjogQWRkICJ5aWVsZCBmcm9tIDx4PiIgdG8gc3VwcG9ydCBlYXN5IGRlbGVnYXRpb24gdG8KKyAgc3ViZ2VuZXJhdG9ycyAoaW5pdGlhbCBwYXRjaCBieSBHcmVnIEV3aW5nLCBpbnRlZ3JhdGlvbiBpbnRvIDMuMyBieQorICBSZW5hdWQgQmxhbmNoLCBSeWFuIEtlbGx5LCBaYmlnbmlldyBKxJlkcnplamV3c2tpLVN6bWVrIGFuZCBOaWNrIENvZ2hsYW4pCisKKy0gSXNzdWUgIzEzNzQ4OiBSYXcgYnl0ZXMgbGl0ZXJhbHMgY2FuIG5vdyBiZSB3cml0dGVuIHdpdGggdGhlIGBgcmJgYCBwcmVmaXgKKyAgYXMgd2VsbCBhcyBgYGJyYGAuCisKKy0gSXNzdWUgIzEyNzM2OiBVc2UgZnVsbCB1bmljb2RlIGNhc2UgbWFwcGluZ3MgZm9yIHVwcGVyLCBsb3dlciwgYW5kIHRpdGxlIGNhc2UuCisKKy0gSXNzdWUgIzEyNzYwOiBBZGQgYSBjcmVhdGUgbW9kZSB0byBvcGVuKCkuIFBhdGNoIGJ5IERhdmlkIFRvd25zaGVuZC4KKworLSBJc3N1ZSAjMTM3Mzg6IFNpbXBsaWZ5IGltcGxlbWVudGF0aW9uIG9mIGJ5dGVzLmxvd2VyKCkgYW5kIGJ5dGVzLnVwcGVyKCkuCisKKy0gSXNzdWUgIzEzNTc3OiBCdWlsdC1pbiBtZXRob2RzIGFuZCBmdW5jdGlvbnMgbm93IGhhdmUgYSBfX3F1YWxuYW1lX18uCisgIFBhdGNoIGJ5IHNidC4KKworLSBJc3N1ZSAjNjY5NTogRnVsbCBnYXJiYWdlIGNvbGxlY3Rpb24gcnVucyBub3cgY2xlYXIgdGhlIGZyZWVsaXN0IG9mIHNldAorICBvYmplY3RzLiAgSW5pdGlhbCBwYXRjaCBieSBNYXR0aGlhcyBUcm9mZmFlcy4KKworLSBGaXggT1NFcnJvci5fX2luaXRfXyBhbmQgT1NFcnJvci5fX25ld19fIHNvIHRoYXQgZWFjaCBvZiB0aGVtIGNhbiBiZQorICBvdmVycmlkZW4gYW5kIHRha2UgYWRkaXRpb25hbCBhcmd1bWVudHMgKGZvbGxvd3VwIHRvIGlzc3VlICMxMjU1NSkuCisKIC0gRml4IHRoZSBmaXggZm9yIGlzc3VlICMxMjE0OTogaXQgd2FzIGluY29ycmVjdCwgYWx0aG91Z2ggaXQgaGFkIHRoZSBzaWRlCiAgIGVmZmVjdCBvZiBhcHBlYXJpbmcgdG8gcmVzb2x2ZSB0aGUgaXNzdWUuICBUaGFua3MgdG8gTWFyayBTaGFubm9uIGZvcgogICBub3RpY2luZy4KQEAgLTUzLDI3ICsxNDcsNjkgQEAKIC0gSXNzdWUgIzExMTQ3OiBGaXggYW4gdW51c2VkIGFyZ3VtZW50IGluIF9QeV9BTk5PVEFURV9NRU1PUllfT1JERVIuICAoRml4CiAgIGdpdmVuIGJ5IENhbXBiZWxsIEJhcnRvbikuCiAKKy0gSXNzdWUgIzEzNTAzOiBVc2UgYSBtb3JlIGVmZmljaWVudCByZWR1Y3Rpb24gZm9ybWF0IGZvciBieXRlYXJyYXlzIHdpdGgKKyAgcGlja2xlIHByb3RvY29sID49IDMuICBUaGUgb2xkIHJlZHVjdGlvbiBmb3JtYXQgaXMga2VwdCB3aXRoIG9sZGVyIHByb3RvY29scworICBpbiBvcmRlciB0byBhbGxvdyB1bnBpY2tsaW5nIHVuZGVyIFB5dGhvbiAyLiAgUGF0Y2ggYnkgSXJtZW4gZGUgSm9uZy4KKwogLSBJc3N1ZSAjNzExMTogUHl0aG9uIGNhbiBub3cgYmUgcnVuIHdpdGhvdXQgYSBzdGRpbiwgc3Rkb3V0IG9yIHN0ZGVycgogICBzdHJlYW0uICBJdCB3YXMgYWxyZWFkeSB0aGUgY2FzZSB3aXRoIFB5dGhvbiAyLiAgSG93ZXZlciwgdGhlIGNvcnJlc3BvbmRpbmcKICAgc3lzIG1vZHVsZSBlbnRyaWVzIGFyZSBub3cgc2V0IHRvIE5vbmUgKGluc3RlYWQgb2YgYW4gdW51c2FibGUgZmlsZSBvYmplY3QpLgogCistIElzc3VlICMxMTg0OTogRW5zdXJlIHRoYXQgZnJlZSgpZCBtZW1vcnkgYXJlbmFzIGFyZSByZWFsbHkgcmVsZWFzZWQKKyAgb24gUE9TSVggc3lzdGVtcyBzdXBwb3J0aW5nIGFub255bW91cyBtZW1vcnkgbWFwcGluZ3MuICBQYXRjaCBieQorICBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCisKKy0gSXNzdWUgIzEzNDUyOiBQeVVuaWNvZGVfRW5jb2RlRGVjaW1hbCgpIGRvZXNuJ3Qgc3VwcG9ydCBlcnJvciBoYW5kbGVycworICBkaWZmZXJlbnQgdGhhbiAic3RyaWN0IiBhbnltb3JlLiBUaGUgY2FsbGVyIHdhcyB1bmFibGUgdG8gY29tcHV0ZSB0aGUKKyAgc2l6ZSBvZiB0aGUgb3V0cHV0IGJ1ZmZlcjogaXQgZGVwZW5kcyBvbiB0aGUgZXJyb3IgaGFuZGxlci4KKworLSBQRVAgMzE1NSAvIGlzc3VlICMxMzQ0ODogUXVhbGlmaWVkIG5hbWUgZm9yIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucy4KKwogLSBJc3N1ZSAjMTM0MzY6IEZpeCBhIGJvZ3VzIGVycm9yIG1lc3NhZ2Ugd2hlbiBhbiBBU1Qgb2JqZWN0IHdhcyBwYXNzZWQKICAgYW4gaW52YWxpZCBpbnRlZ2VyIHZhbHVlLgogCistIElzc3VlICMxMzQxMTogbWVtb3J5dmlldyBvYmplY3RzIGFyZSBub3cgaGFzaGFibGUgd2hlbiB0aGUgdW5kZXJseWluZworICBvYmplY3QgaXMgaGFzaGFibGUuCisKIC0gSXNzdWUgIzEzMzM4OiBIYW5kbGUgYWxsIGVudW1lcmF0aW9ucyBpbiBfUHlfQU5OT1RBVEVfTUVNT1JZX09SREVSCiAgIHRvIGFsbG93IGNvbXBpbGluZyBleHRlbnNpb24gbW9kdWxlcyB3aXRoIC1Xc3dpdGNoLWVudW0gb24gZ2NjLgogICBJbml0aWFsIHBhdGNoIGJ5IEZsb3JpcyBCcnV5bm9vZ2hlLgogCistIElzc3VlICMxMDIyNzogQWRkIGFuIGFsbG9jYXRpb24gY2FjaGUgZm9yIGEgc2luZ2xlIHNsaWNlIG9iamVjdC4gIFBhdGNoIGJ5CisgIFN0ZWZhbiBCZWhuZWwuCisKKy0gSXNzdWUgIzEzMzkzOiBCdWZmZXJlZFJlYWRlci5yZWFkMSgpIG5vdyBhc2tzIHRoZSBmdWxsIHJlcXVlc3RlZCBzaXplIHRvCisgIHRoZSByYXcgc3RyZWFtIGluc3RlYWQgb2YgbGltaXRpbmcgaXRzZWxmIHRvIHRoZSBidWZmZXIgc2l6ZS4KKworLSBJc3N1ZSAjMTMzOTI6IFdyaXRpbmcgYSBweWMgZmlsZSBzaG91bGQgbm93IGJlIGF0b21pYyB1bmRlciBXaW5kb3dzIGFzIHdlbGwuCisKIC0gSXNzdWUgIzEzMzMzOiBUaGUgVVRGLTcgZGVjb2RlciBub3cgYWNjZXB0cyBsb25lIHN1cnJvZ2F0ZXMgKHRoZSBlbmNvZGVyCiAgIGFscmVhZHkgYWNjZXB0cyB0aGVtKS4KIAorLSBJc3N1ZSAjMTMzODk6IEZ1bGwgZ2FyYmFnZSBjb2xsZWN0aW9uIHBhc3NlcyBub3cgY2xlYXIgdGhlIGZyZWVsaXN0cyBmb3IKKyAgbGlzdCBhbmQgZGljdCBvYmplY3RzLiAgVGhleSBhbHJlYWR5IGNsZWFyZWQgb3RoZXIgZnJlZWxpc3RzIGluIHRoZQorICBpbnRlcnByZXRlci4KKworLSBJc3N1ZSAjMTMzMjc6IFJlbW92ZSB0aGUgbmVlZCBmb3IgYW4gZXhwbGljaXQgTm9uZSBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50CisgIHRvIG9zLnV0aW1lLCBvcy5sdXRpbWVzLCBvcy5mdXRpbWVzLCBvcy5mdXRpbWVucywgb3MuZnV0aW1lc2F0LCBpbgorICBvcmRlciB0byB1cGRhdGUgdG8gdGhlIGN1cnJlbnQgdGltZS4gQWxzbyBhZGRlZCBrZXl3b3JkIGFyZ3VtZW50CisgIGhhbmRsaW5nIHRvIG9zLnV0aW1lbnNhdCBpbiBvcmRlciB0byByZW1vdmUgdGhlIG5lZWQgZm9yIGV4cGxpY2l0IE5vbmUuCisKKy0gSXNzdWUgIzEzMzUwOiBTaW1wbGlmeSBzb21lIEMgY29kZSBieSByZXBsYWNpbmcgbW9zdCB1c2FnZXMgb2YKKyAgUHlVbmljb2RlX0Zvcm1hdCBieSBQeVVuaWNvZGVfRnJvbUZvcm1hdC4KKwogLSBJc3N1ZSAjMTMzNDI6IGlucHV0KCkgdXNlZCB0byBpZ25vcmUgc3lzLnN0ZGluJ3MgYW5kIHN5cy5zdGRvdXQncyB1bmljb2RlCiAgIGVycm9yIGhhbmRsZXIgaW4gaW50ZXJhY3RpdmUgbW9kZSAod2hlbiBjYWxsaW5nIGludG8gUHlPU19SZWFkbGluZSgpKS4KIAorLSBJc3N1ZSAjOTg5NjogQWRkIHN0YXJ0LCBzdG9wLCBhbmQgc3RlcCBhdHRyaWJ1dGVzIHRvIHJhbmdlIG9iamVjdHMuCisKIC0gSXNzdWUgIzEzMzQzOiBGaXggYSBTeXN0ZW1FcnJvciB3aGVuIGEgbGFtYmRhIGV4cHJlc3Npb24gdXNlcyBhIGdsb2JhbAogICB2YXJpYWJsZSBpbiB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBhIGtleXdvcmQtb25seSBhcmd1bWVudDoKICAgKGxhbWJkYSAqLCBhcmc9R0xPQkFMX05BTUU6IE5vbmUpCiAKKy0gSXNzdWUgIzEyNzk3OiBBZGRlZCBjdXN0b20gb3BlbmVyIHBhcmFtZXRlciB0byBidWlsdGluIG9wZW4oKSBhbmQKKyAgRmlsZUlPLm9wZW4oKS4KKwogLSBJc3N1ZSAjMTA1MTk6IEF2b2lkIHVubmVjZXNzYXJ5IHJlY3Vyc2l2ZSBmdW5jdGlvbiBjYWxscyBpbgogICBzZXRvYmplY3QuYy4KIApAQCAtODIsMjEgKzIxOCw0MyBAQAogLSBJc3N1ZSAjMTMwMTg6IEZpeCByZWZlcmVuY2UgbGVha3MgaW4gZXJyb3IgcGF0aHMgaW4gZGljdG9iamVjdC5jLgogICBQYXRjaCBieSBTdW1hbiBTYWhhLgogCistIElzc3VlICMxMzIwMTogRGVmaW5lICc9PScgYW5kICchPScgdG8gY29tcGFyZSByYW5nZSBvYmplY3RzIGJhc2VkIG9uCisgIHRoZSBzZXF1ZW5jZSBvZiB2YWx1ZXMgdGhleSBkZWZpbmUgKGluc3RlYWQgb2YgY29tcGFyaW5nIGJhc2VkIG9uCisgIG9iamVjdCBpZGVudGl0eSkuCisKIC0gSXNzdWUgIzEyOTQyMzI6IEluIGEgZmV3IGNhc2VzIGludm9sdmluZyBtZXRhY2xhc3MgaW5oZXJpdGFuY2UsIHRoZQogICBpbnRlcnByZXRlciB3b3VsZCBzb21ldGltZXMgaW52b2tlIHRoZSB3cm9uZyBtZXRhY2xhc3Mgd2hlbiBidWlsZGluZyBhIG5ldwogICBjbGFzcyBvYmplY3QuIFRoZXNlIGNhc2VzIG5vdyBiZWhhdmUgY29ycmVjdGx5LiBQYXRjaCBieSBEYW5pZWwgVXJiYW4uCiAKKy0gSXNzdWUgIzEyNzUzOiBBZGQgc3VwcG9ydCBmb3IgVW5pY29kZSBuYW1lIGFsaWFzZXMgYW5kIG5hbWVkIHNlcXVlbmNlcy4KKyAgQm90aCA6ZnVuYzpgdW5pY29kZWRhdGEubG9va3VwKClgIGFuZCAnXE57Li4ufScgbm93IHJlc29sdmUgYWxpYXNlcywKKyAgYW5kIDpmdW5jOmB1bmljb2RlZGF0YS5sb29rdXAoKWAgcmVzb2x2ZXMgbmFtZWQgc2VxdWVuY2VzIHRvby4KKworLSBJc3N1ZSAjMTIxNzA6IFRoZSBjb3VudCgpLCBmaW5kKCksIHJmaW5kKCksIGluZGV4KCkgYW5kIHJpbmRleCgpIG1ldGhvZHMKKyAgb2YgYnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzIG5vdyBhY2NlcHQgYW4gaW50ZWdlciBiZXR3ZWVuIDAgYW5kIDI1NQorICBhcyB0aGVpciBmaXJzdCBhcmd1bWVudC4gIFBhdGNoIGJ5IFBldHJpIExlaHRpbmVuLgorCiAtIElzc3VlICMxMjYwNDogVlRSQUNFIG1hY3JvIGV4cGFuZGVkIHRvIG5vLW9wIGluIF9zcmUuYyB0byBhdm9pZCBjb21waWxlcgogICB3YXJuaW5ncy4gUGF0Y2ggYnkgSm9zaCBUcmlwbGV0dCBhbmQgUGV0cmkgTGVodGluZW4uCiAKKy0gSXNzdWUgIzEyMjgxOiBSZXdyaXRlIHRoZSBNQkNTIGNvZGVjIHRvIGhhbmRsZSBjb3JyZWN0bHkgcmVwbGFjZSBhbmQgaWdub3JlCisgIGVycm9yIGhhbmRsZXJzIG9uIGFsbCBXaW5kb3dzIHZlcnNpb25zLiBUaGUgTUJDUyBjb2RlYyBpcyBub3cgc3VwcG9ydGluZyBhbGwKKyAgZXJyb3IgaGFuZGxlcnMsIGluc3RlYWQgb2Ygb25seSByZXBsYWNlIHRvIGVuY29kZSBhbmQgaWdub3JlIHRvIGRlY29kZS4KKwogLSBJc3N1ZSAjMTMxODg6IFdoZW4gY2FsbGVkIHdpdGhvdXQgYW4gZXhwbGljaXQgdHJhY2ViYWNrIGFyZ3VtZW50LAogICBnZW5lcmF0b3IudGhyb3coKSBub3cgZ2V0cyB0aGUgdHJhY2ViYWNrIGZyb20gdGhlIHBhc3NlZCBleGNlcHRpb24ncwogICBgYF9fdHJhY2ViYWNrX19gYCBhdHRyaWJ1dGUuICBQYXRjaCBieSBQZXRyaSBMZWh0aW5lbi4KIAorLSBJc3N1ZSAjMTMxNDY6IFdyaXRpbmcgYSBweWMgZmlsZSBpcyBub3cgYXRvbWljIHVuZGVyIFBPU0lYLgorCiAtIElzc3VlICM3ODMzOiBFeHRlbnNpb24gbW9kdWxlcyBidWlsdCB1c2luZyBkaXN0dXRpbHMgb24gV2luZG93cyB3aWxsIG5vCiAgIGxvbmdlciBpbmNsdWRlIGEgIm1hbmlmZXN0IiB0byBwcmV2ZW50IHRoZW0gZmFpbGluZyBhdCBpbXBvcnQgdGltZSBpbiBzb21lCiAgIGVtYmVkZGVkIHNpdHVhdGlvbnMuCiAKKy0gUEVQIDMxNTEgLyBpc3N1ZSAjMTI1NTU6IHJld29ya2luZyB0aGUgT1MgYW5kIElPIGV4Y2VwdGlvbiBoaWVyYXJjaHkuCisKKy0gQWRkIGludGVybmFsIEFQSSBmb3Igc3RhdGljIHN0cmluZ3MgKF9QeV9pZGVudGlmaWVyIGV0IGFsLikuCisKIC0gSXNzdWUgIzEzMDYzOiB0aGUgV2luZG93cyBlcnJvciBFUlJPUl9OT19EQVRBIChudW1iZXJlZCAyMzIgYW5kIGRlc2NyaWJlZAogICBhcyAiVGhlIHBpcGUgaXMgYmVpbmcgY2xvc2VkIikgaXMgbm93IG1hcHBlZCB0byBQT1NJWCBlcnJubyBFUElQRQogICAocHJldmlvdXNseSBFSU5WQUwpLgpAQCAtMTA0LDYgKzI2MiwxNiBAQAogLSBJc3N1ZSAjMTI5MTE6IEZpeCBtZW1vcnkgY29uc3VtcHRpb24gd2hlbiBjYWxjdWxhdGluZyB0aGUgcmVwcigpIG9mIGh1Z2UKICAgdHVwbGVzIG9yIGxpc3RzLgogCistIFBFUCAzOTM6IGZsZXhpYmxlIHN0cmluZyByZXByZXNlbnRhdGlvbi4gVGhhbmtzIHRvIFRvcnN0ZW4gQmVja2VyIGZvciB0aGUKKyAgaW5pdGlhbCBpbXBsZW1lbnRhdGlvbiwgYW5kIFZpY3RvciBTdGlubmVyIGZvciB2YXJpb3VzIGJ1ZyBmaXhlcy4KKworLSBJc3N1ZSAjMTQwODE6IFRoZSAnc2VwJyBhbmQgJ21heHNwbGl0JyBwYXJhbWV0ZXIgdG8gc3RyLnNwbGl0LCBieXRlcy5zcGxpdCwKKyAgYW5kIGJ5dGVhcnJheS5zcGxpdCBtYXkgbm93IGJlIHBhc3NlZCBhcyBrZXl3b3JkIGFyZ3VtZW50cy4KKworLSBJc3N1ZSAjMTMwMTI6IFRoZSAna2VlcGVuZHMnIHBhcmFtZXRlciB0byBzdHIuc3BsaXRsaW5lcyBtYXkgbm93IGJlIHBhc3NlZAorICBhcyBhIGtleXdvcmQgYXJndW1lbnQ6ICAibXlfc3RyaW5nLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkiLiAgVGhlIHNhbWUKKyAgY2hhbmdlIGFsc28gYXBwbGllcyB0byBieXRlcy5zcGxpdGxpbmVzIGFuZCBieXRlYXJyYXkuc3BsaXRsaW5lcy4KKwogLSBJc3N1ZSAjNzczMjogRG9uJ3Qgb3BlbiBhIGRpcmVjdG9yeSBhcyBhIGZpbGUgYW55bW9yZSB3aGlsZSBpbXBvcnRpbmcgYQogICBtb2R1bGUuIElnbm9yZSB0aGUgZGlyZWNvdHJ5IGlmIGl0cyBuYW1lIG1hdGNocyB0aGUgbW9kdWxlIG5hbWUgKGUuZy4KICAgIl9faW5pdF9fLnB5IikgYW5kIHJhaXNlIGEgSW1wb3J0RXJyb3IgaW5zdGVhZC4KQEAgLTExNSw2ICsyODMsOSBAQAogICBsaXN0X3JlcGVhdCAobGlzdG9iamVjdC5jKSBhbmQgaXNsaWNlX25leHQgKGl0ZXJ0b29sc21vZHVsZS5jKS4gIFRoZXNlIGJ1Z3MKICAgY2F1c2VkIHRlc3QgZmFpbHVyZXMgd2l0aCByZWNlbnQgdmVyc2lvbnMgb2YgQ2xhbmcuCiAKKy0gSXNzdWUgIzEyOTA0OiBvcy51dGltZSwgb3MuZnV0aW1lcywgb3MubHV0aW1lcywgYW5kIG9zLmZ1dGltZXNhdCBub3cgd3JpdGUKKyAgYXRpbWUgYW5kIG10aW1lIHdpdGggbmFub3NlY29uZCBwcmVjaXNpb24gb24gbW9kZXJuIFBPU0lYIHBsYXRmb3Jtcy4KKwogLSBJc3N1ZSAjMTI4MDI6IHRoZSBXaW5kb3dzIGVycm9yIEVSUk9SX0RJUkVDVE9SWSAobnVtYmVyZWQgMjY3KSBpcyBub3cKICAgbWFwcGVkIHRvIFBPU0lYIGVycm5vIEVOT1RESVIgKHByZXZpb3VzbHkgRUlOVkFMKS4KIApAQCAtMTI0LDkgKzI5NSwyNTEgQEAKIC0gSXNzdWUgIzEyNzkxOiBCcmVhayByZWZlcmVuY2UgY3ljbGVzIGVhcmx5IHdoZW4gYSBnZW5lcmF0b3IgZXhpdHMgd2l0aAogICBhbiBleGNlcHRpb24uCiAKKy0gSXNzdWUgIzEyNzczOiBNYWtlIF9fZG9jX18gbXV0YWJsZSBvbiB1c2VyLWRlZmluZWQgY2xhc3Nlcy4KKworLSBJc3N1ZSAjMTI3NjY6IFJhaXNlIGEgVmFsdWVFcnJvciB3aGVuIGNyZWF0aW5nIGEgY2xhc3Mgd2l0aCBhIGNsYXNzIHZhcmlhYmxlCisgIHRoYXQgY29uZmxpY3RzIHdpdGggYSBuYW1lIGluIF9fc2xvdHNfXy4KKwogLSBJc3N1ZSAjMTIyNjY6IEZpeCBzdHIuY2FwaXRhbGl6ZSgpIHRvIGNvcnJlY3RseSB1cHBlcmNhc2UvbG93ZXJjYXNlCiAgIHRpdGxlY2FzZWQgYW5kIGNhc2VkIG5vbi1sZXR0ZXIgY2hhcmFjdGVycy4KIAorLSBJc3N1ZSAjMTI3MzI6IEluIG5hcnJvdyB1bmljb2RlIGJ1aWxkcywgYWxsb3cgVW5pY29kZSBpZGVudGlmaWVycyB3aGljaCBmYWxsCisgIG91dHNpZGUgdGhlIEJNUC4KKworLSBJc3N1ZSAjMTI1NzU6IFZhbGlkYXRlIHVzZXItZ2VuZXJhdGVkIEFTVCBiZWZvcmUgaXQgaXMgY29tcGlsZWQuCisKKy0gTWFrZSB0eXBlKE5vbmUpLCB0eXBlKEVsbGlwc2lzKSwgYW5kIHR5cGUoTm90SW1wbGVtZW50ZWQpIGNhbGxhYmxlLiBUaGV5CisgIHJldHVybiB0aGUgcmVzcGVjdGl2ZSBzaW5nbGV0b24gaW5zdGFuY2VzLgorCistIEZvcmJpZCBzdW1taW5nIGJ5dGVzIHdpdGggc3VtKCkuCisKKy0gVmVyaWZ5IHRoZSB0eXBlcyBvZiBBU1Qgc3RyaW5ncyBhbmQgaWRlbnRpZmllcnMgcHJvdmlkZWQgYnkgdGhlIHVzZXIgYmVmb3JlCisgIGNvbXBpbGluZyB0aGVtLgorCistIElzc3VlICMxMjY0NzogVGhlIE5vbmUgb2JqZWN0IG5vdyBoYXMgYSBfX2Jvb2xfXygpIG1ldGhvZCB0aGF0IHJldHVybnMgRmFsc2UuCisgIEZvcm1lcmx5LCBib29sKE5vbmUpIHJldHVybmVkIEZhbHNlIG9ubHkgYmVjYXVzZSBvZiBzcGVjaWFsIGNhc2UgbG9naWMKKyAgaW4gUHlPYmplY3RfSXNUcnVlKCkuCisKKy0gSXNzdWUgIzEyNTc5OiBzdHIuZm9ybWF0X21hcCgpIG5vdyByYWlzZXMgYSBWYWx1ZUVycm9yIGlmIHVzZWQgb24gYQorICBmb3JtYXQgc3RyaW5nIHRoYXQgY29udGFpbnMgcG9zaXRpb25hbCBmaWVsZHMuIEluaXRpYWwgcGF0Y2ggYnkKKyAgSnVsaWFuIEJlcm1hbi4KKworLSBJc3N1ZSAjMTAyNzE6IEFsbG93IHdhcm5pbmdzLnNob3d3YXJuaW5nKCkgYmUgYW55IGNhbGxhYmxlLgorCistIElzc3VlICMxMTYyNzogRml4IHNlZ2ZhdWx0IHdoZW4gX19uZXdfXyBvbiBhIGV4Y2VwdGlvbiByZXR1cm5zIGEKKyAgbm9uLWV4Y2VwdGlvbiBjbGFzcy4KKworLSBJc3N1ZSAjMTIxNDk6IFVwZGF0ZSB0aGUgbWV0aG9kIGNhY2hlIGFmdGVyIGEgdHlwZSdzIGRpY3Rpb25hcnkgZ2V0cworICBjbGVhcmVkIGJ5IHRoZSBnYXJiYWdlIGNvbGxlY3Rvci4gIFRoaXMgZml4ZXMgYSBzZWdmYXVsdCB3aGVuIGFuIGluc3RhbmNlCisgIGFuZCBpdHMgdHlwZSBnZXQgY2F1Z2h0IGluIGEgcmVmZXJlbmNlIGN5Y2xlLCBhbmQgdGhlIGluc3RhbmNlJ3MKKyAgZGVhbGxvY2F0b3IgY2FsbHMgb25lIG9mIHRoZSBtZXRob2RzIG9uIHRoZSB0eXBlIChlLmcuIHdoZW4gc3ViY2xhc3NpbmcKKyAgSU9CYXNlKS4gIERpYWdub3NpcyBhbmQgcGF0Y2ggYnkgRGF2aWRlIFJpenpvLgorCistIElzc3VlICM5NjExLCAjOTAxNTogRmlsZUlPLnJlYWQoKSBjbGFtcHMgdGhlIGxlbmd0aCB0byBJTlRfTUFYIG9uIFdpbmRvd3MuCisKKy0gSXNzdWUgIzk2NDI6IFVuaWZvcm1pemUgdGhlIHRlc3RzIG9uIHRoZSBhdmFpbGFiaWxpdHkgb2YgdGhlIG1iY3MgY29kZWMsIGFkZAorICBhIG5ldyBIQVZFX01CQ1MgZGVmaW5lLgorCistIElzc3VlICM5NjQyOiBGaXggZmlsZXN5c3RlbSBlbmNvZGluZyBpbml0aWFsaXphdGlvbjogdXNlIHRoZSBBTlNJIGNvZGUgcGFnZQorICBvbiBXaW5kb3dzIGlmIHRoZSBtYmNzIGNvZGVjIGlzIG5vdCBhdmFpbGFibGUsIGFuZCBmYWlsIHdpdGggYSBmYXRhbCBlcnJvciBpZgorICB3ZSBjYW5ub3QgZ2V0IHRoZSBsb2NhbGUgZW5jb2RpbmcgKGlmIG5sX2xhbmdpbmZvKENPREVTRVQpIGlzIG5vdCBhdmFpbGFibGUpCisgIGluc3RlYWQgb2YgdXNpbmcgVVRGLTguCisKKy0gV2hlbiBhIGdlbmVyYXRvciB5aWVsZHMsIGRvIG5vdCByZXRhaW4gdGhlIGNhbGxlcidzIGV4Y2VwdGlvbiBzdGF0ZSBvbiB0aGUKKyAgZ2VuZXJhdG9yLgorCistIElzc3VlICMxMjQ3NTogUHJldmVudCBnZW5lcmF0b3JzIGZyb20gbGVha2luZyB0aGVpciBleGNlcHRpb24gc3RhdGUgaW50byB0aGUKKyAgY2FsbGVyJ3MgZnJhbWUgYXMgdGhleSByZXR1cm4gZm9yIHRoZSBsYXN0IHRpbWUuCisKKy0gSXNzdWUgIzEyMjkxOiBZb3UgY2FuIG5vdyBsb2FkIG11bHRpcGxlIG1hcnNoYWxsZWQgb2JqZWN0cyBmcm9tIGEgc3RyZWFtLAorICB3aXRoIG90aGVyIGRhdGEgaW50ZXJsZWF2ZWQgYmV0d2VlbiBtYXJzaGFsbGVkIG9iamVjdHMuCisKKy0gSXNzdWUgIzEyMzU2OiBXaGVuIHJlcXVpcmVkIHBvc2l0aW9uYWwgb3Iga2V5d29yZC1vbmx5IGFyZ3VtZW50cyBhcmUgbm90CisgIGdpdmVuLCBwcm9kdWNlIGEgaW5mb3JtYXRpdmUgZXJyb3IgbWVzc2FnZSB3aGljaCBpbmNsdWRlcyB0aGUgbmFtZShzKSBvZiB0aGUKKyAgbWlzc2luZyBhcmd1bWVudHMuCisKKy0gSXNzdWUgIzEyMzcwOiBGaXggc3VwZXIgd2l0aCBubyBhcmd1bWVudHMgd2hlbiBfX2NsYXNzX18gaXMgb3ZlcnJpZGVuIGluIHRoZQorICBjbGFzcyBib2R5LgorCistIElzc3VlICMxMjA4NDogb3Muc3RhdCBvbiBXaW5kb3dzIG5vdyB3b3JrcyBwcm9wZXJseSB3aXRoIHJlbGF0aXZlIHN5bWJvbGljCisgIGxpbmtzIHdoZW4gY2FsbGVkIGZyb20gYW55IGRpcmVjdG9yeS4KKworLSBMb29zZW4gdHlwZSByZXN0cmljdGlvbnMgb24gdGhlIF9fZGlyX18gbWV0aG9kLiBfX2Rpcl9fIGNhbiBub3cgcmV0dXJuIGFueQorICBzZXF1ZW5jZSwgd2hpY2ggd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBsaXN0IGFuZCBzb3J0ZWQgYnkgZGlyKCkuCisKKy0gSXNzdWUgIzEyMjY1OiBNYWtlIGVycm9yIG1lc3NhZ2VzIHByb2R1Y2VkIGJ5IHBhc3NpbmcgYW4gaW52YWxpZCBzZXQgb2YKKyAgYXJndW1lbnRzIHRvIGEgZnVuY3Rpb24gbW9yZSBpbmZvcm1hdGl2ZS4KKworLSBJc3N1ZSAjMTIyMjU6IFN0aWxsIGFsbG93IFB5dGhvbiB0byBidWlsZCBpZiBQeXRob24gaXMgbm90IGluIGl0cyBoZyByZXBvIG9yCisgIG1lcmN1cmlhbCBpcyBub3QgaW5zdGFsbGVkLgorCistIElzc3VlICMxMTk1OiBteV9mZ2V0cygpIG5vdyBhbHdheXMgY2xlYXJzIGVycm9ycyBiZWZvcmUgY2FsbGluZyBmZ2V0cygpLiBGaXgKKyAgdGhlIGZvbGxvd2luZyBjYXNlOiBzeXMuc3RkaW4ucmVhZCgpIHN0b3BwZWQgd2l0aCBDVFJMK2QgKGVuZCBvZiBmaWxlKSwKKyAgcmF3X2lucHV0KCkgaW50ZXJydXB0ZWQgYnkgQ1RSTCtjLgorCistIElzc3VlICMxMjIxNjogQWxsb3cgdW5leHBlY3RlZCBFT0YgZXJyb3JzIHRvIGhhcHBlbiBvbiBhbnkgbGluZSBvZiB0aGUgZmlsZS4KKworLSBJc3N1ZSAjMTIxOTk6IFRoZSBUcnlFeGNlcHQgYW5kIFRyeUZpbmFsbHkgYW5kIEFTVCBub2RlcyBoYXZlIGJlZW4gdW5pZmllZAorICBpbnRvIGEgVHJ5IG5vZGUuCisKKy0gSXNzdWUgIzk2NzA6IEluY3JlYXNlIHRoZSBkZWZhdWx0IHN0YWNrIHNpemUgZm9yIHNlY29uZGFyeSB0aHJlYWRzIG9uCisgIE1hYyBPUyBYIGFuZCBGcmVlQlNEIHRvIHJlZHVjZSB0aGUgY2hhbmNlcyBvZiBhIGNyYXNoIGluc3RlYWQgb2YgYQorICAibWF4aW11bSByZWN1cnNpb24gZGVwdGgiIFJ1bnRpbWVFcnJvciBleGNlcHRpb24uCisgIChwYXRjaCBieSBSb25hbGQgT3Vzc29yZW4pCisKKy0gSXNzdWUgIzEyMTA2OiBUaGUgdXNlIG9mIHRoZSBtdWx0aXBsZS13aXRoIHNob3J0aGFuZCBzeW50YXggaXMgbm93IHJlZmxlY3RlZAorICBpbiB0aGUgQVNULgorCistIElzc3VlICMxMjE5MDogVHJ5IHRvIHVzZSB0aGUgc2FtZSBmaWxlbmFtZSBvYmplY3Qgd2hlbiBjb21waWxpbmcgdW5tYXJzaGFsbGluZworICBhIGNvZGUgb2JqZWN0cyBpbiB0aGUgc2FtZSBmaWxlLgorCistIElzc3VlICMxMjE2NjogTW92ZSBpbXBsZW1lbnRhdGlvbnMgb2YgZGlyKCkgc3BlY2lhbGl6ZWQgZm9yIHZhcmlvdXMgdHlwZXMgaW50bworICB0aGUgX19kaXJfXygpIG1ldGhvZHMgb2YgdGhvc2UgdHlwZXMuCisKKy0gSXNzdWUgIzU3MTU6IEluIHNvY2tldHNlcnZlciwgY2xvc2UgdGhlIHNlcnZlciBzb2NrZXQgaW4gdGhlIGNoaWxkIHByb2Nlc3MuCisKKy0gQ29ycmVjdCBsb29rdXAgb2YgX19kaXJfXyBvbiBvYmplY3RzLiBBbW9uZyBvdGhlciB0aGluZ3MsIHRoaXMgY2F1c2VzIGVycm9ycworICBiZXNpZGVzIEF0dHJpYnV0ZUVycm9yIGZvdW5kIG9uIGxvb2t1cCB0byBiZSBwcm9wYWdhdGVkLgorCistIElzc3VlICMxMjA2MDogVXNlIHNpZ19hdG9taWNfdCB0eXBlIGFuZCB2b2xhdGlsZSBrZXl3b3JkIGluIHRoZSBzaWduYWwKKyAgbW9kdWxlLiBQYXRjaCB3cml0dGVuIGJ5IENoYXJsZXMtRnJhbsOnb2lzIE5hdGFsaS4KKworLSBJc3N1ZSAjMTc0NjY1NjogQWRkZWQgdGhlIGlmX25hbWVpbmRleCwgaWZfaW5kZXh0b25hbWUsIGlmX25hbWV0b2luZGV4CisgIG1ldGhvZHMgdG8gdGhlIHNvY2tldCBtb2R1bGUuCisKKy0gSXNzdWUgIzEyMDQ0OiBGaXhlZCBzdWJwcm9jZXNzLlBvcGVuIHdoZW4gdXNlZCBhcyBhIGNvbnRleHQgbWFuYWdlciB0bworICB3YWl0IGZvciB0aGUgcHJvY2VzcyB0byBlbmQgd2hlbiBleGl0aW5nIHRoZSBjb250ZXh0IHRvIGF2b2lkIHVuaW50ZW50aW9uYWxseQorICBsZWF2aW5nIHpvbWJpZSBwcm9jZXNzZXMgYXJvdW5kLgorCistIElzc3VlICMxMTk1OiBGaXggaW5wdXQoKSBpZiBpdCBpcyBpbnRlcnJ1cHRlZCBieSBDVFJMK2QgYW5kIHRoZW4gQ1RSTCtjLAorICBjbGVhciB0aGUgZW5kLW9mLWZpbGUgaW5kaWNhdG9yIGFmdGVyIENUUkwrZC4KKworLSBJc3N1ZSAjMTg1NjogQXZvaWQgY3Jhc2hlcyBhbmQgbG9ja3VwcyB3aGVuIGRhZW1vbiB0aHJlYWRzIHJ1biB3aGlsZSB0aGUKKyAgaW50ZXJwcmV0ZXIgaXMgc2h1dHRpbmcgZG93bjsgaW5zdGVhZCwgdGhlc2UgdGhyZWFkcyBhcmUgbm93IGtpbGxlZCB3aGVuCisgIHRoZXkgdHJ5IHRvIHRha2UgdGhlIEdJTC4KKworLSBJc3N1ZSAjOTc1NjogV2hlbiBjYWxsaW5nIGEgbWV0aG9kIGRlc2NyaXB0b3Igb3IgYSBzbG90IHdyYXBwZXIgZGVzY3JpcHRvciwKKyAgdGhlIGNoZWNrIG9mIHRoZSBvYmplY3QgdHlwZSBkb2Vzbid0IHJlYWQgdGhlIF9fY2xhc3NfXyBhdHRyaWJ1dGUgYW55bW9yZS4KKyAgRml4IGEgY3Jhc2ggaWYgYSBjbGFzcyBvdmVycmlkZSBpdHMgX19jbGFzc19fIGF0dHJpYnV0ZSAoZS5nLiBhIHByb3h5IG9mIHRoZQorICBzdHIgdHlwZSkuIFBhdGNoIHdyaXR0ZW4gYnkgQW5kcmVhcyBTdMO8aHJrLgorCistIElzc3VlICMxMDUxNzogQWZ0ZXIgZm9yaygpLCByZWluaXRpYWxpemUgdGhlIFRMUyB1c2VkIGJ5IHRoZSBQeUdJTFN0YXRlXyoKKyAgQVBJcywgdG8gYXZvaWQgYSBjcmFzaCB3aXRoIHRoZSBwdGhyZWFkIGltcGxlbWVudGF0aW9uIGluIFJIRUwgNS4gIFBhdGNoCisgIGJ5IENoYXJsZXMtRnJhbsOnb2lzIE5hdGFsaS4KKworLSBJc3N1ZSAjMTA5MTQ6IEluaXRpYWxpemUgY29ycmVjdGx5IHRoZSBmaWxlc3lzdGVtIGNvZGVjIHdoZW4gY3JlYXRpbmcgYSBuZXcKKyAgc3ViaW50ZXJwcmV0ZXIgdG8gZml4IGEgYm9vdHN0cmFwIGlzc3VlIHdpdGggY29kZWNzIGltcGxlbWVudGVkIGluIFB5dGhvbiwgYXMKKyAgdGhlIElTTy04ODU5LTE1IGNvZGVjLgorCistIElzc3VlICMxMTkxODogT1MvMiBhbmQgVk1TIGFyZSBubyBtb3JlIHN1cHBvcnRlZCBiZWNhdXNlIG9mIHRoZSBsYWNrIG9mCisgIG1haW50YWluZXIuCisKKy0gSXNzdWUgIzY3ODA6IGZpeCBzdGFydHMvZW5kc3dpdGggZXJyb3IgbWVzc2FnZSB0byBtZW50aW9uIHRoYXQgdHVwbGVzIGFyZQorICBhY2NlcHRlZCB0b28uCisKKy0gSXNzdWUgIzUwNTc6IGZpeCBhIGJ1ZyBpbiB0aGUgcGVlcGhvbGVyIHRoYXQgbGVkIHRvIG5vbi1wb3J0YWJsZSBweWMgZmlsZXMKKyAgYmV0d2VlbiBuYXJyb3cgYW5kIHdpZGUgYnVpbGRzIHdoaWxlIG9wdGltaXppbmcgQklOQVJZX1NVQlNDUiBvbiBub24tQk1QCisgIGNoYXJzIChlLmcuICJcVTAwMDEyMzQ1IlswXSkuCisKKy0gSXNzdWUgIzExODQ1OiBGaXggdHlwbyBpbiByYW5nZW9iamVjdC5jIHRoYXQgY2F1c2VkIGEgY3Jhc2ggaW4KKyAgY29tcHV0ZV9zbGljZV9pbmRpY2VzLiAgUGF0Y2ggYnkgRGFuaWVsIFVyYmFuLgorCistIElzc3VlICM1NjczOiBBZGRlZCBhIGB0aW1lb3V0YCBrZXl3b3JkIGFyZ3VtZW50IHRvIHN1YnByb2Nlc3MuUG9wZW4ud2FpdCwKKyAgc3VicHJvY2Vzcy5Qb3Blbi5jb21tdW5pY2F0ZWQsIHN1YnByb2Nlc3MuY2FsbCwgc3VicHJvY2Vzcy5jaGVja19jYWxsLCBhbmQKKyAgc3VicHJvY2Vzcy5jaGVja19vdXRwdXQuICBJZiB0aGUgYmxvY2tpbmcgb3BlcmF0aW9uIHRha2VzIG1vcmUgdGhhbiBgdGltZW91dGAKKyAgc2Vjb25kcywgdGhlIGBzdWJwcm9jZXNzLlRpbWVvdXRFeHBpcmVkYCBleGNlcHRpb24gaXMgcmFpc2VkLgorCistIElzc3VlICMxMTY1MDogUHlPU19TdGRpb1JlYWRsaW5lKCkgcmV0cmllcyBmZ2V0cygpIGlmIGl0IHdhcyBpbnRlcnJ1cHRlZAorICAoRUlOVFIpLCBmb3IgZXhhbXBsZSBpZiB0aGUgcHJvZ3JhbSBpcyBzdG9wcGVkIHdpdGggQ1RSTCt6IG9uIE1hYyBPUyBYLiBQYXRjaAorICB3cml0dGVuIGJ5IENoYXJsZXMtRnJhbmNvaXMgTmF0YWxpLgorCistIElzc3VlICM5MzE5OiBJbmNsdWRlIHRoZSBmaWxlbmFtZSBpbiAiTm9uLVVURjggY29kZSAuLi4iIHN5bnRheCBlcnJvci4KKworLSBJc3N1ZSAjMTA3ODU6IFN0b3JlIHRoZSBmaWxlbmFtZSBhcyBVbmljb2RlIGluIHRoZSBQeXRob24gcGFyc2VyLgorCistIElzc3VlICMxMTYxOTogX1B5SW1wb3J0X0xvYWREeW5hbWljTW9kdWxlKCkgZG9lc24ndCBlbmNvZGUgdGhlIHBhdGggdG8gYnl0ZXMKKyAgb24gV2luZG93cy4KKworLSBJc3N1ZSAjMTA5OTg6IFJlbW92ZSBtZW50aW9ucyBvZiAtUSwgc3lzLmZsYWdzLmRpdmlzaW9uX3dhcm5pbmcgYW5kCisgIFB5X0RpdmlzaW9uV2FybmluZ0ZsYWcgbGVmdCBvdmVyIGZyb20gUHl0aG9uIDIuCisKKy0gSXNzdWUgIzExMjQ0OiBSZW1vdmUgYW4gdW5uZWNlc3NhcnkgcGVlcGhvbGVyIGNoZWNrIHRoYXQgd2FzIHByZXZlbnRpbmcKKyAgbmVnYXRpdmUgemVyb3MgZnJvbSBiZWluZyBjb25zdGFudC1mb2xkZWQgcHJvcGVybHkuCisKKy0gSXNzdWUgIzExMzk1OiBpby5GaWxlSU8oKS53cml0ZSgpIGNsYW1wcyB0aGUgZGF0YSBsZW5ndGggdG8gMzIsNzY3IGJ5dGVzIG9uCisgIFdpbmRvd3MgaWYgdGhlIGZpbGUgaXMgYSBUVFkgdG8gd29ya2Fyb3VuZCBhIFdpbmRvd3MgYnVnLiBUaGUgV2luZG93cyBjb25zb2xlCisgIHJldHVybnMgYW4gZXJyb3IgKDEyOiBub3QgZW5vdWdoIHNwYWNlIGVycm9yKSBvbiB3cml0aW5nIGludG8gc3Rkb3V0IGlmCisgIHN0ZG91dCBtb2RlIGlzIGJpbmFyeSBhbmQgdGhlIGxlbmd0aCBpcyBncmVhdGVyIHRoYW4gNjYsMDAwIGJ5dGVzIChvciBsZXNzLAorICBkZXBlbmRpbmcgb24gaGVhcCB1c2FnZSkuCisKKy0gSXNzdWUgIzExMzIwOiBmaXggYm9ndXMgbWVtb3J5IG1hbmFnZW1lbnQgaW4gTW9kdWxlcy9nZXRwYXRoLmMsIGxlYWRpbmcgdG8KKyAgYSBwb3NzaWJsZSBjcmFzaCB3aGVuIGNhbGxpbmcgUHlfU2V0UGF0aCgpLgorCistIElzc3VlICMxMTQzMjogQSBidWcgd2FzIGludHJvZHVjZWQgaW4gc3VicHJvY2Vzcy5Qb3BlbiBvbiBwb3NpeCBzeXN0ZW1zIHdpdGgKKyAgMy4yLjAgd2hlcmUgdGhlIHN0ZG91dCBvciBzdGRlcnIgZmlsZSBkZXNjcmlwdG9yIGJlaW5nIHRoZSBzYW1lIGFzIHRoZSBzdGRpbgorICBmaWxlIGRlc2NyaXB0b3Igd291bGQgcmFpc2UgYW4gZXhjZXB0aW9uLiB3ZWJicm93c2VyLm9wZW4gd291bGQgZmFpbC4gZml4ZWQuCisKKy0gSXNzdWUgIzk4NTY6IENoYW5nZSBvYmplY3QuX19mb3JtYXRfXyB3aXRoIGEgbm9uLWVtcHR5IGZvcm1hdCBzdHJpbmcKKyAgdG8gYmUgYSBEZXByZWNhdGlvbldhcm5pbmcuIEluIDMuMiBpdCB3YXMgYSBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLgorICBJbiAzLjQgaXQgd2lsbCBiZSBhIFR5cGVFcnJvci4KKworLSBJc3N1ZSAjMTEyNDQ6IFRoZSBwZWVwaG9sZSBvcHRpbWl6ZXIgaXMgbm93IGFibGUgdG8gY29uc3RhbnQtZm9sZAorICBhcmJpdHJhcmlseSBjb21wbGV4IGV4cHJlc3Npb25zLiAgVGhpcyBhbHNvIGZpeGVzIGEgMy4yIHJlZ3Jlc3Npb24gd2hlcmUKKyAgb3BlcmF0aW9ucyBpbnZvbHZpbmcgbmVnYXRpdmUgbnVtYmVycyB3ZXJlIG5vdCBjb25zdGFudC1mb2xkZWQuCisKKy0gSXNzdWUgIzExNDUwOiBEb24ndCB0cnVuY2F0ZSBoZyB2ZXJzaW9uIGluZm8gaW4gUHlfR2V0QnVpbGRJbmZvKCkgd2hlbgorICB0aGVyZSBhcmUgbWFueSB0YWdzIChlLmcuIHdoZW4gdXNpbmcgbXEpLiAgUGF0Y2ggYnkgTmFkZWVtIFZhd2RhLgorCistIElzc3VlICMxMTMzNTogRml4ZWQgYSBtZW1vcnkgbGVhayBpbiBsaXN0LnNvcnQgd2hlbiB0aGUga2V5IGZ1bmN0aW9uCisgIHRocm93cyBhbiBleGNlcHRpb24uCisKKy0gSXNzdWUgIzg5MjM6IFdoZW4gYSBzdHJpbmcgaXMgZW5jb2RlZCB0byBVVEYtOCBpbiBzdHJpY3QgbW9kZSwgdGhlIHJlc3VsdCBpcworICBjYWNoZWQgaW50byB0aGUgb2JqZWN0LiBFeGFtcGxlczogc3RyLmVuY29kZSgpLCBzdHIuZW5jb2RlKCd1dGYtOCcpLAorICBQeVVuaWNvZGVfQXNVVEY4U3RyaW5nKCkgYW5kIFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcodW5pY29kZSwgInV0Zi04IiwKKyAgTlVMTCkuCisKKy0gSXNzdWUgIzEwODMxOiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgpIHN1cHBvcnRzICVsaSwgJWxsaSBhbmQgJXppIGZvcm1hdHMuCisKKy0gSXNzdWUgIzEwODI5OiBSZWZhY3RvciBQeVVuaWNvZGVfRnJvbUZvcm1hdCgpLCB1c2UgdGhlIHNhbWUgZnVuY3Rpb24gdG8gcGFyc2UKKyAgdGhlIGZvcm1hdCBzdHJpbmcgaW4gdGhlIDMgc3RlcHMsIGZpeCBjcmFzaHMgb24gaW52YWxpZCBmb3JtYXQgc3RyaW5ncy4KKworLSBJc3N1ZSAjMTMwMDc6IHdoaWNoZGIgc2hvdWxkIHJlY29nbml6ZSBnZGJtIDEuOSBtYWdpYyBudW1iZXJzLgorCistIElzc3VlICMxMTI0NjogRml4IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlViIpIHRvIGRlY29kZSB0aGUgYnl0ZSBzdHJpbmcgZnJvbQorICBVVEYtOCAod2l0aCByZXBsYWNlIGVycm9yIGhhbmRsZXIpIGluc3RlYWQgb2YgSVNPLTg4NTktMSAoaW4gc3RyaWN0IG1vZGUpLgorICBQYXRjaCB3cml0dGVuIGJ5IFJheSBBbGxlbi4KKworLSBJc3N1ZSAjMTEyODY6IFJhaXNlIGEgVmFsdWVFcnJvciBmcm9tIGNhbGxpbmcgUHlNZW1vcnlWaWV3X0Zyb21CdWZmZXIgd2l0aAorICBhIGJ1ZmZlciBzdHJ1Y3QgaGF2aW5nIGEgTlVMTCBkYXRhIHBvaW50ZXIuCisKKy0gSXNzdWUgIzExMjcyOiBPbiBXaW5kb3dzLCBpbnB1dCgpIHN0cmlwcyAnXHInIChhbmQgbm90IG9ubHkgJ1xuJyksIGFuZAorICBzeXMuc3RkaW4gdXNlcyB1bml2ZXJzYWwgbmV3bGluZSAocmVwbGFjZSAnXHJcbicgYnkgJ1xuJykuCisKKy0gaXNzdWUgIzExODI4OiBzdGFydHN3aXRoIGFuZCBlbmRzd2l0aCBkb24ndCBhY2NlcHQgTm9uZSBhcyBzbGljZSBpbmRleC4KKyAgUGF0Y2ggYnkgVG9yc3RlbiBCZWNrZXIuCisKKy0gSXNzdWUgIzEwODMwOiBGaXggUHlVbmljb2RlX0Zyb21Gb3JtYXRWKCIlYyIpIGZvciBub24tQk1QIGNoYXJhY3RlcnMgb24KKyAgbmFycm93IGJ1aWxkLgorCistIElzc3VlICMxMTE2ODogUmVtb3ZlIGZpbGVuYW1lIGRlYnVnIHZhcmlhYmxlIGZyb20gUHlFdmFsX0V2YWxGcmFtZUV4KCkuCisgIEl0IGVuY29kZWQgdGhlIFVuaWNvZGUgZmlsZW5hbWUgdG8gVVRGLTgsIGJ1dCB0aGUgZW5jb2RpbmcgZmFpbHMgb24KKyAgdW5kZWNvZGFibGUgZmlsZW5hbWUgKG9uIHN1cnJvZ2F0ZSBjaGFyYWN0ZXJzKSB3aGljaCByYWlzZXMgYW4gdW5leHBlY3RlZAorICBVbmljb2RlRW5jb2RlRXJyb3Igb24gcmVjdXJzaW9uIGxpbWl0LgorCistIElzc3VlICMxMTE4NzogUmVtb3ZlIGJvb3RzdHJhcCBjb2RlICh1c2UgQVNDSUkpIG9mCisgIFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcoKSwgaXQgd2FzIHJlcGxhY2VkIGJ5IGEgYmV0dGVyIGZhbGxiYWNrICh1c2UgdGhlCisgIGxvY2FsZSBlbmNvZGluZykgaW4gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdCgpLgorCistIENoZWNrIGZvciBOVUxMIHJlc3VsdCBpbiBQeVR5cGVfRnJvbVNwZWMuCisKKy0gSXNzdWUgIzEwNTE2OiBOZXcgY29weSgpIGFuZCBjbGVhcigpIG1ldGhvZHMgZm9yIGxpc3RzIGFuZCBieXRlYXJyYXlzLgorCistIElzc3VlICMxMTM4NjogYnl0ZWFycmF5LnBvcCgpIG5vdyB0aHJvd3MgSW5kZXhFcnJvciB3aGVuIHRoZSBieXRlYXJyYXkgaXMKKyAgZW1wdHksIGluc3RlYWQgb2YgT3ZlcmZsb3dFcnJvci4KKworLSBJc3N1ZSAjMTIzODA6IFRoZSByanVzdCwgbGp1c3QgYW5kIGNlbnRlciBtZXRob2RzIG9mIGJ5dGVzIGFuZCBieXRlYXJyYXkKKyAgbm93IGFjY2VwdCBhIGJ5dGVhcnJheSBhcmd1bWVudC4KKwogTGlicmFyeQogLS0tLS0tLQogCkBAIC0xMzQsOSArNTQ3LDE2IEBACiAgIHJldHVybiBUcnVlIGZvciBhIFdlYWtTZXQgaW5zdGFuY2UgJ2EnIGluIGJvdGggJ2EgPCBhJyBhbmQgJ2EgPiBhJyBoYXMgYmVlbgogICBmaXhlZC4KIAorLSBJc3N1ZSAjMTQxNjY6IFBpY2tsZXIgb2JqZWN0cyBub3cgaGF2ZSBhbiBvcHRpb25hbCBgYGRpc3BhdGNoX3RhYmxlYGAKKyAgYXR0cmlidXRlIHdoaWNoIGFsbG93cyB0byBzZXQgY3VzdG9tIHBlci1waWNrbGVyIHJlZHVjdGlvbiBmdW5jdGlvbnMuCisgIFBhdGNoIGJ5IHNidC4KKwogLSBJc3N1ZSAjMTQxNzc6IG1hcnNoYWwubG9hZHMoKSBub3cgcmFpc2VzIFR5cGVFcnJvciB3aGVuIGdpdmVuIGFuIHVuaWNvZGUKICAgc3RyaW5nLiAgUGF0Y2ggYnkgR3VpbGhlcm1lIEdvbsOnYWx2ZXMuCiAKKy0gSXNzdWUgIzEzNTUwOiBSZW1vdmUgdGhlIGRlYnVnIG1hY2hpbmVyeSBmcm9tIHRoZSB0aHJlYWRpbmcgbW9kdWxlOiByZW1vdmUKKyAgdmVyYm9zZSBhcmd1bWVudHMgZnJvbSBhbGwgdGhyZWFkaW5nIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucy4KKwogLSBJc3N1ZSAjMTQxNTk6IEZpeCB0aGUgbGVuKCkgb2Ygd2VhayBjb250YWluZXJzIChXZWFrU2V0LCBXZWFrS2V5RGljdGlvbmFyeSwKICAgV2Vha1ZhbHVlRGljdGlvbmFyeSkgdG8gcmV0dXJuIGEgYmV0dGVyIGFwcHJveGltYXRpb24gd2hlbiBzb21lIG9iamVjdHMKICAgYXJlIGRlYWQgb3IgZHlpbmcuICBNb3Jlb3ZlciwgdGhlIGltcGxlbWVudGF0aW9uIGlzIG5vdyBPKDEpIHJhdGhlciB0aGFuCkBAIC0xNDUsNDAgKzU2NSw1OSBAQAogLSBJc3N1ZSAjMTMxMjU6IFNpbGVuY2Ugc3B1cmlvdXMgdGVzdF9saWIydG8zIG91dHB1dCB3aGVuIGluIG5vbi12ZXJib3NlIG1vZGUuCiAgIFBhdGNoIGJ5IE1pa2hhaWwgTm92aWtvdi4KIAorLSBJc3N1ZSAjMTE4NDE6IEZpeCBjb21wYXJpc29uIGJ1ZyB3aXRoICdyYycgdmVyc2lvbnMgaW4gcGFja2FnaW5nLnZlcnNpb24uCisgIFBhdGNoIGJ5IEZpbGlwIEdydXN6Y3p5xYRza2kuCisKIC0gSXNzdWUgIzEzNDQ3OiBBZGQgYSB0ZXN0IGZpbGUgdG8gaG9zdCByZWdyZXNzaW9uIHRlc3RzIGZvciBidWdzIGluIHRoZQogICBzY3JpcHRzIGZvdW5kIGluIHRoZSBUb29scyBkaXJlY3RvcnkuCiAKIC0gSXNzdWUgIzY4ODQ6IEZpeCBsb25nLXN0YW5kaW5nIGJ1Z3Mgd2l0aCBNQU5JRkVTVC5pbiBwYXJzaW5nIGluIGRpc3R1dGlscwotICBvbiBXaW5kb3dzLgorICBvbiBXaW5kb3dzLiAgQWxzbyBmaXhlZCBpbiBwYWNrYWdpbmcuCiAKIC0gSXNzdWUgIzgwMzM6IHNxbGl0ZTM6IEZpeCA2NC1iaXQgaW50ZWdlciBoYW5kbGluZyBpbiB1c2VyIGZ1bmN0aW9ucwogICBvbiAzMi1iaXQgYXJjaGl0ZWN0dXJlcy4gSW5pdGlhbCBwYXRjaCBieSBQaGlsaXBwZSBEZXZhbGtlbmVlci4KIAogLSBIVE1MUGFyc2VyIGlzIG5vdyBhYmxlIHRvIGhhbmRsZSBzbGFzaGVzIGluIHRoZSBzdGFydCB0YWcuCiAKKy0gSXNzdWUgIzEzNjQxOiBEZWNvZGluZyBmdW5jdGlvbnMgaW4gdGhlIGJhc2U2NCBtb2R1bGUgbm93IGFjY2VwdCBBU0NJSS1vbmx5CisgIHVuaWNvZGUgc3RyaW5ncy4gIFBhdGNoIGJ5IENhdGFsaW4gSWFjb2IuCisKKy0gSXNzdWUgIzE0MDQzOiBTcGVlZCB1cCBpbXBvcnRsaWIncyBfRmlsZUZpbmRlciBieSBhdCBsZWFzdCA4eCwgYW5kIGFkZCBhCisgIG5ldyBpbXBvcnRsaWIuaW52YWxpZGF0ZV9jYWNoZXMoKSBmdW5jdGlvbi4KKwogLSBJc3N1ZSAjMTQwMDE6IENWRS0yMDEyLTA4NDU6IHhtbHJwYzogRml4IGFuIGVuZGxlc3MgbG9vcCBpbgogICBTaW1wbGVYTUxSUENTZXJ2ZXIgdXBvbiBtYWxmb3JtZWQgUE9TVCByZXF1ZXN0LgogCistIElzc3VlICMxMzk2MTogTW92ZSBpbXBvcnRsaWIgb3ZlciB0byB1c2luZyBvcy5yZXBsYWNlKCkgZm9yIGF0b21pYyByZW5hbWluZy4KKworLSBEbyBhd2F5IHdpdGggYW1iaWd1b3VzIGxldmVsIHZhbHVlcyAoYXMgc3VnZ2VzdGVkIGJ5IFBFUCAzMjgpIGluCisgIGltcG9ydGxpYi5fX2ltcG9ydF9fKCkgYnkgcmFpc2luZyBWYWx1ZUVycm9yIHdoZW4gbGV2ZWwgPCAwLgorCiAtIElzc3VlICMyNDg5OiBwdHkuc3Bhd24gY291bGQgY29uc3VtZSAxMDAlIGNwdSB3aGVuIGl0IGVuY291bnRlcmVkIGFuIEVPRi4KIAogLSBJc3N1ZSAjMTMwMTQ6IEZpeCBhIHBvc3NpYmxlIHJlZmVyZW5jZSBsZWFrIGluIFNTTFNvY2tldC5nZXRwZWVyY2VydCgpLgogCistIElzc3VlICMxMzc3NzogQWRkIFBGX1NZU1RFTSBzb2NrZXRzIG9uIE9TIFguCisgIFBhdGNoIGJ5IE1pY2hhZWwgR29kZXJiYXVlci4KKwogLSBJc3N1ZSAjMTMwMTU6IEZpeCBhIHBvc3NpYmxlIHJlZmVyZW5jZSBsZWFrIGluIGRlZmF1bHRkaWN0Ll9fcmVwcl9fLgogICBQYXRjaCBieSBTdW1hbiBTYWhhLgogCi0tIElzc3VlICMxMzI2MTEzOiBkaXN0dXRpbHMnIGJ1aWxkX2V4dCBjb21tYW5kIC0tbGlicmFyaWVzIG9wdGlvbiBub3cKLSAgY29ycmVjdGx5IHBhcnNlcyBtdWx0aXBsZSB2YWx1ZXMgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2Ugb3IgY29tbWFzLgorLSBJc3N1ZSAjMTMyNjExMzogZGlzdHV0aWxzJyBhbmQgcGFja2FnaW5nJ3MgYnVpbGRfZXh0IGNvbW1hbmRzIG9wdGlvbiBub3cKKyAgY29ycmVjdGx5IHBhcnNlcyBtdWx0aXBsZSB2YWx1ZXMgKHNlcGFyYXRlZCBieSB3aGl0ZXNwYWNlIG9yIGNvbW1hcykgZ2l2ZW4KKyAgdG8gdGhlaXIgLS1saWJyYXJpZXMgb3B0aW9uLgogCiAtIElzc3VlICMxMDI4Nzogbm50cGxpYiBub3cgcXVlcmllcyB0aGUgc2VydmVyJ3MgQ0FQQUJJTElUSUVTIGZpcnN0IGJlZm9yZQogICBzZW5kaW5nIE1PREUgUkVBREVSLCBhbmQgb25seSBzZW5kcyBpdCBpZiBub3QgYWxyZWFkeSBpbiBSRUFERVIgbW9kZS4KICAgUGF0Y2ggYnkgSHluZWsgU2NobGF3YWNrLgogCi0tIElzc3VlICMxMzk3OTogQSBidWcgaW4gY3R5cGVzLnV0aWwuZmluZF9saWJyYXJ5IHRoYXQgY2F1c2VkCi0gIHRoZSB3cm9uZyBsaWJyYXJ5IG5hbWUgdG8gYmUgcmV0dXJuZWQgaGFzIGJlZW4gZml4ZWQuCi0KIC0gSXNzdWUgIzEzOTkzOiBIVE1MUGFyc2VyIGlzIG5vdyBhYmxlIHRvIGhhbmRsZSBicm9rZW4gZW5kIHRhZ3Mgd2hlbgogICBzdHJpY3Q9RmFsc2UuCiAKKy0gSXNzdWUgIzEzOTMwOiBsaWIydG8zIG5vdyBzdXBwb3J0cyB3cml0aW5nIGNvbnZlcnRlZCBvdXRwdXQgZmlsZXMgdG8gYW5vdGhlcgorICBkaXJlY3RvcnkgdHJlZSBhcyB3ZWxsIGFzIGNvcHlpbmcgdW5jaGFuZ2VkIGZpbGVzIGFuZCBhbHRlcmluZyB0aGUgZmlsZQorICBzdWZmaXguCisKIC0gSXNzdWUgIzk3NTA6IEZpeCBzcWxpdGUzLkNvbm5lY3Rpb24uaXRlcmR1bXAgb24gdGFibGVzIGFuZCBmaWVsZHMKICAgd2l0aCBhIG5hbWUgdGhhdCBpcyBhIGtleXdvcmQgb3IgY29udGFpbnMgcXVvdGVzLiBQYXRjaCBieSBNYXJrbwogICBLb2h0YWxhLgpAQCAtMjA2LDYgKzY0NSwyOCBAQAogLSBJc3N1ZSAjMTM5NjA6IEhUTUxQYXJzZXIgaXMgbm93IGFibGUgdG8gaGFuZGxlIGJyb2tlbiBjb21tZW50cyB3aGVuCiAgIHN0cmljdD1GYWxzZS4KIAorLSBJc3N1ZSAjMTM5MjE6IFVuZG9jdW1lbnQgYW5kIGNsZWFuIHVwIHNxbGl0ZTMuT3B0aW1pemVkVW5pY29kZSwKKyAgd2hpY2ggaXMgb2Jzb2xldGUgaW4gUHl0aG9uIDMueC4gSXQncyBub3cgYWxpYXNlZCB0byBzdHIgZm9yCisgIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LgorCistIFdoZW4gJycgaXMgYSBwYXRoIChlLmcuIGluIHN5cy5wYXRoKSwgbWFrZSBzdXJlIF9fZmlsZV9fIHVzZXMgdGhlIGN1cnJlbnQKKyAgd29ya2luZyBkaXJlY3RvcnkgaW5zdGVhZCBvZiAnJyBpbiBpbXBvcnRsaWIuCisKKy0gSXNzdWUgIzEzNjA5OiBBZGQgdHdvIGZ1bmN0aW9ucyB0byBxdWVyeSB0aGUgdGVybWluYWwgc2l6ZToKKyAgb3MuZ2V0X3Rlcm1pbmFsX3NpemUgKGxvdyBsZXZlbCkgYW5kIHNodXRpbC5nZXRfdGVybWluYWxfc2l6ZSAoaGlnaCBsZXZlbCkuCisgIFBhdGNoIGJ5IFpiaWduaWV3IErEmWRyemVqZXdza2ktU3ptZWsuCisKKy0gSXNzdWUgIzEzODQ1OiBPbiBXaW5kb3dzLCB0aW1lLnRpbWUoKSBub3cgdXNlcyBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgpCisgIGluc3RlYWQgb2YgZnRpbWUoKSB0byBoYXZlIGEgcmVzb2x1dGlvbiBvZiAxMDAgbnMgaW5zdGVhZCBvZiAxIG1zICh0aGUgY2xvY2sKKyAgYWNjdXJhY3kgaXMgYmV0d2VlbiAwLjUgbXMgYW5kIDE1IG1zKS4KKworLSBJc3N1ZSAjMTM4NDY6IEFkZCB0aW1lLm1vbm90b25pYygpLCBtb25vdG9uaWMgY2xvY2suCisKKy0gSXNzdWUgIzgxODQ6IG11bHRpcHJvY2Vzc2luZzogT24gV2luZG93cywgZG9uJ3Qgc2V0IFNPX1JFVVNFQUREUiBvbgorICBDb25uZWN0aW9uIHNvY2tldHMsIGFuZCBzZXQgRklMRV9GTEFHX0ZJUlNUX1BJUEVfSU5TVEFOQ0Ugb24gbmFtZWQgcGlwZXMsIHRvCisgIG1ha2Ugc3VyZSB0d28gbGlzdGVuZXJzIGNhbid0IGJpbmQgdG8gdGhlIHNhbWUgc29ja2V0L3BpcGUgKG9yIGFueSBleGlzdGluZworICBzb2NrZXQvcGlwZSkuCisKIC0gSXNzdWUgIzkwMjE6IEFkZCBhbiBpbnRyb2R1Y3Rpb24gdG8gdGhlIGNvcHkgbW9kdWxlIGRvY3VtZW50YXRpb24uCiAKIC0gSXNzdWUgIzYwMDU6IEV4YW1wbGVzIGluIHRoZSBzb2NrZXQgbGlicmFyeSBkb2N1bWVudGF0aW9uIHVzZSBzZW5kYWxsLCB3aGVyZQpAQCAtMjE5LDggKzY4MCwxNSBAQAogLSBJc3N1ZSAjOTY0NDM3OiBNYWtlIElETEUgaGVscCB3aW5kb3cgbm9uLW1vZGFsLgogICBQYXRjaCBieSBHdWlsaGVybWUgUG9sbyBhbmQgUm9nZXIgU2Vyd3kuCiAKKy0gSXNzdWUgIzEzNzM0OiBBZGQgb3MuZndhbGsoKSwgYSBkaXJlY3Rvcnkgd2Fsa2luZyBmdW5jdGlvbiB5aWVsZGluZyBmaWxlCisgIGRlc2NyaXB0b3JzLgorCiAtIElzc3VlICMyOTQ1OiBNYWtlIHRoZSBkaXN0dXRpbHMgdXBsb2FkIGNvbW1hbmQgYXdhcmUgb2YgYmRpc3RfcnBtIHByb2R1Y3RzLgogCistIElzc3VlICMxMzcxMjogcHlzZXR1cCBjcmVhdGUgc2hvdWxkIG5vdCBjb252ZXJ0IHBhY2thZ2VfZGF0YSB0byBleHRyYV9maWxlcy4KKworLSBJc3N1ZSAjMTE4MDU6IHBhY2thZ2VfZGF0YSBpbiBzZXR1cC5jZmcgc2hvdWxkIGFsbG93IG1vcmUgdGhhbiBvbmUgdmFsdWUuCisKIC0gSXNzdWUgIzEzOTMzOiBJRExFIGF1dG8tY29tcGxldGUgZGlkIG5vdCB3b3JrIHdpdGggc29tZSBpbXBvcnRlZAogICBtb2R1bGUsIGxpa2UgaGFzaGxpYi4gIChQYXRjaCBieSBSb2dlciBTZXJ3eSkKIApAQCAtMjMxLDYgKzY5OSw5IEBACiAtIElzc3VlICMxMzUwNjogQWRkICcnIHRvIHBhdGggZm9yIElETEUgU2hlbGwgd2hlbiBzdGFydGVkIGFuZCByZXN0YXJ0ZWQgd2l0aCBSZXN0YXJ0IFNoZWxsLgogICBPcmlnaW5hbCBwYXRjaGVzIGJ5IE1hcmNvIFNjYXRhZ2xpbmkgYW5kIFJvZ2VyIFNlcnd5LgogCistIElzc3VlICM4ODI4OiBBZGQgbmV3IGZ1bmN0aW9uIG9zLnJlcGxhY2UoKSwgZm9yIGNyb3NzLXBsYXRmb3JtIHJlbmFtaW5nCisgIHdpdGggb3ZlcndyaXRpbmcuCisKIC0gSXNzdWUgIzEzODQ4OiBvcGVuKCkgYW5kIHRoZSBGaWxlSU8gY29uc3RydWN0b3Igbm93IGNoZWNrIGZvciBOVUwKICAgY2hhcmFjdGVycyBpbiB0aGUgZmlsZSBuYW1lLiAgUGF0Y2ggYnkgSHluZWsgU2NobGF3YWNrLgogCkBAIC0yNDMsNiArNzE0LDE3IEBACiAtIElzc3VlICMxMzg4NTogQ1ZFLTIwMTEtMzM4OTogdGhlIF9zc2wgbW9kdWxlIHdvdWxkIGFsd2F5cyBkaXNhYmxlIHRoZSBDQkMKICAgSVYgYXR0YWNrIGNvdW50ZXJtZWFzdXJlLgogCistIElzc3VlICMxMzg0NzogdGltZS5sb2NhbHRpbWUoKSBhbmQgdGltZS5nbXRpbWUoKSBub3cgcmFpc2UgYW4gT1NFcnJvciBpbnN0ZWFkCisgIG9mIFZhbHVlRXJyb3Igb24gZmFpbHVyZS4gdGltZS5jdGltZSgpIGFuZCB0aW1lLmFzY3RpbWUoKSBub3cgcmFpc2VzIGFuCisgIE9TRXJyb3IgaWYgbG9jYWx0aW1lKCkgZmFpbGVkLiB0aW1lLmNsb2NrKCkgbm93IHJhaXNlcyBhIFJ1bnRpbWVFcnJvciBpZiB0aGUKKyAgcHJvY2Vzc29yIHRpbWUgdXNlZCBpcyBub3QgYXZhaWxhYmxlIG9yIGl0cyB2YWx1ZSBjYW5ub3QgYmUgcmVwcmVzZW50ZWQKKworLSBJc3N1ZSAjMTM4NjI6IEZpeCBzcHVyaW91cyBmYWlsdXJlIGluIHRlc3RfemxpYiBkdWUgdG8gcnVudGltZS9jb21waWxlIHRpbWUKKyAgbWlub3IgdmVyc2lvbnMgbm90IG1hdGNoaW5nLgorCistIElzc3VlICMxMjgwNDogRml4IHRlc3Rfc29ja2V0IGFuZCB0ZXN0X3VybGxpYjJuZXQgZmFpbHVyZXMgd2hlbiBydW5uaW5nIHRlc3RzCisgIG9uIGEgc3lzdGVtIHdpdGhvdXQgaW50ZXJuZXQgYWNjZXNzLgorCiAtIElzc3VlICMxMzc3MjogSW4gb3Muc3ltbGluaygpIHVuZGVyIFdpbmRvd3MsIGRvIG5vdCB0cnkgdG8gZ3Vlc3MgdGhlIGxpbmsKICAgdGFyZ2V0J3MgdHlwZSAoZmlsZSBvciBkaXJlY3RvcnkpLiAgVGhlIGRldGVjdGlvbiB3YXMgYnVnZ3kgYW5kIG1hZGUgdGhlCiAgIGNhbGwgbm9uLWF0b21pYyAodGhlcmVmb3JlIHByb25lIHRvIHJhY2UgY29uZGl0aW9ucykuCkBAIC0yNTgsNiArNzQwLDExIEBACiAtIElzc3VlICMxMzgwMzogVW5kZXIgU29sYXJpcywgZGlzdHV0aWxzIGRvZXNuJ3QgaW5jbHVkZSBiaXRuZXNzCiAgIGluIHRoZSBkaXJlY3RvcnkgbmFtZS4KIAorLSBJc3N1ZSAjMTAyNzg6IEFkZCB0aW1lLndhbGxjbG9jaygpIGZ1bmN0aW9uLCBtb25vdG9uaWMgY2xvY2suCisKKy0gSXNzdWUgIzEzODA5OiBGaXggcmVncmVzc2lvbiB3aGVyZSBiejIgbW9kdWxlIHdvdWxkbid0IHdvcmsgd2hlbiB0aHJlYWRzIGFyZQorICBkaXNhYmxlZC4gT3JpZ2luYWwgcGF0Y2ggYnkgQW1hdXJ5IEZvcmdlb3QgZCdBcmMuCisKIC0gSXNzdWUgIzEzNTg5OiBGaXggc29tZSBzZXJpYWxpemF0aW9uIHByaW1pdGl2ZXMgaW4gdGhlIGFpZmMgbW9kdWxlLgogICBQYXRjaCBieSBPbGVnIFBsYWtob3RueXVrLgogCkBAIC0yNzQsNiArNzYxLDExIEBACiAtIElzc3VlICMxMzUwMjogdGhyZWFkaW5nOiBGaXggYSByYWNlIGNvbmRpdGlvbiBpbiBFdmVudC53YWl0KCkgdGhhdCBtYWRlIGl0CiAgIHJldHVybiBGYWxzZSB3aGVuIHRoZSBldmVudCB3YXMgc2V0IGFuZCBjbGVhcmVkIHJpZ2h0IGFmdGVyLgogCistIElzc3VlICM5OTkzOiBXaGVuIHRoZSBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uIGFyZSBvbiBkaWZmZXJlbnQgZmlsZXN5c3RlbXMsCisgIGFuZCB0aGUgc291cmNlIGlzIGEgc3ltbGluaywgc2h1dGlsLm1vdmUoKSBub3cgcmVjcmVhdGVzIGEgc3ltbGluayBvbiB0aGUKKyAgZGVzdGluYXRpb24gaW5zdGVhZCBvZiBjb3B5aW5nIHRoZSBmaWxlIGNvbnRlbnRzLiAgUGF0Y2ggYnkgSm9uYXRoYW4gTmllaG9mCisgIGFuZCBIeW5layBTY2hsYXdhY2suCisKIC0gSXNzdWUgIzEyOTI2OiBGaXggYSBidWcgaW4gdGFyZmlsZSdzIGxpbmsgZXh0cmFjdGlvbi4KIAogLSBJc3N1ZSAjMTM2OTY6IEZpeCB0aGUgMzAyIFJlbGF0aXZlIFVSTCBSZWRpcmVjdGlvbiBwcm9ibGVtLgpAQCAtMjgxLDE1ICs3NzMsNDQgQEAKIC0gSXNzdWUgIzEzNjM2OiBXZWFrIGNpcGhlcnMgYXJlIG5vdyBkaXNhYmxlZCBieSBkZWZhdWx0IGluIHRoZSBzc2wgbW9kdWxlCiAgIChleGNlcHQgd2hlbiBTU0x2MiBpcyBleHBsaWNpdGx5IGFza2VkIGZvcikuCiAKKy0gSXNzdWUgIzEyNzE1OiBBZGQgYW4gb3B0aW9uYWwgc3ltbGlua3MgYXJndW1lbnQgdG8gc2h1dGlsIGZ1bmN0aW9ucworICAoY29weWZpbGUsIGNvcHltb2RlLCBjb3B5c3RhdCwgY29weSwgY29weTIpLiAgV2hlbiB0aGF0IHBhcmFtZXRlciBpcworICB0cnVlLCBzeW1saW5rcyBhcmVuJ3QgZGVyZWZlcmVuY2VkIGFuZCB0aGUgb3BlcmF0aW9uIGluc3RlYWQgYWN0cyBvbiB0aGUKKyAgc3ltbGluayBpdHNlbGYgKG9yIGNyZWF0ZXMgb25lLCBpZiByZWxldmFudCkuICBQYXRjaCBieSBIeW5layBTY2hsYXdhY2suCisKKy0gQWRkIGEgZmxhZ3MgcGFyYW1ldGVyIHRvIHNlbGVjdC5lcG9sbC4KKwogLSBJc3N1ZSAjMTI3OTg6IFVwZGF0ZWQgdGhlIG1pbWV0eXBlcyBkb2N1bWVudGF0aW9uLgogCistIElzc3VlICMxMzYyNjogQWRkIHN1cHBvcnQgZm9yIFNTTCBEaWZmaWUtSGVsbG1hbiBrZXkgZXhjaGFuZ2UsIHRocm91Z2ggdGhlCisgIFNTTENvbnRleHQubG9hZF9kaF9wYXJhbXMoKSBtZXRob2QgYW5kIHRoZSBzc2wuT1BfU0lOR0xFX0RIX1VTRSBvcHRpb24uCisKIC0gSXNzdWUgIzExMDA2OiBEb24ndCBpc3N1ZSBsb3cgbGV2ZWwgd2FybmluZyBpbiBzdWJwcm9jZXNzIHdoZW4gcGlwZTIoKSBmYWlscy4KIAorLSBJc3N1ZSAjMTM2MjA6IFN1cHBvcnQgZm9yIENocm9tZSBicm93c2VyIGluIHdlYmJyb3dzZXIucHkgUGF0Y2ggY29udHJpYnV0ZWQKKyAgYnkgQXJuYXVkIENhbG1ldHRlcy4KKwogLSBJc3N1ZSAjMTE4Mjk6IEZpeCBjb2RlIGV4ZWN1dGlvbiBob2xlcyBpbiBpbnNwZWN0LmdldGF0dHJfc3RhdGljIGZvcgogICBtZXRhY2xhc3NlcyB3aXRoIG1ldGFjbGFzc2VzLiBQYXRjaCBieSBBbmRyZWFzIFN0w7xocmsuCiAKKy0gSXNzdWUgIzEyNzA4OiBBZGQgc3Rhcm1hcCgpIGFuZCBzdGFybWFwX2FzeW5jKCkgbWV0aG9kcyAoc2ltaWxhciB0bworICBpdGVydG9vbHMuc3Rhcm1hcCgpKSB0byBtdWx0aXByb2Nlc3NpbmcuUG9vbC4gIFBhdGNoIGJ5IEh5bmVrIFNjaGxhd2Fjay4KKwogLSBJc3N1ZSAjMTc4NTogRml4IGluc3BlY3QgYW5kIHB5ZG9jIHdpdGggbWlzYmVoYXZpbmcgZGVzY3JpcHRvcnMuCiAKKy0gSXNzdWUgIzEzNjM3OiAiYTJiIiBmdW5jdGlvbnMgaW4gdGhlIGJpbmFzY2lpIG1vZHVsZSBub3cgYWNjZXB0IEFTQ0lJLW9ubHkKKyAgdW5pY29kZSBzdHJpbmdzLgorCistIElzc3VlICMxMzYzNDogQWRkIHN1cHBvcnQgZm9yIHF1ZXJ5aW5nIGFuZCBkaXNhYmxpbmcgU1NMIGNvbXByZXNzaW9uLgorCistIElzc3VlICMxMzYyNzogQWRkIHN1cHBvcnQgZm9yIFNTTCBFbGxpcHRpYyBDdXJ2ZS1iYXNlZCBEaWZmaWUtSGVsbG1hbgorICBrZXkgZXhjaGFuZ2UsIHRocm91Z2ggdGhlIFNTTENvbnRleHQuc2V0X2VjZGhfY3VydmUoKSBtZXRob2QgYW5kIHRoZQorICBzc2wuT1BfU0lOR0xFX0VDREhfVVNFIG9wdGlvbi4KKworLSBJc3N1ZSAjMTM2MzU6IEFkZCBzc2wuT1BfQ0lQSEVSX1NFUlZFUl9QUkVGRVJFTkNFLCBzbyB0aGF0IFNTTCBzZXJ2ZXJzCisgIGNob29zZSB0aGUgY2lwaGVyIGJhc2VkIG9uIHRoZWlyIG93biBwcmVmZXJlbmNlcywgcmF0aGVyIHRoYW4gb24gdGhlCisgIGNsaWVudCdzLgorCiAtIElzc3VlICMxMTgxMzogRml4IGluc3BlY3QuZ2V0YXR0cl9zdGF0aWMgZm9yIG1vZHVsZXMuIFBhdGNoIGJ5IEFuZHJlYXMKICAgU3TDvGhyay4KIApAQCAtMzAyLDI3ICs4MjMsNjIgQEAKIC0gSXNzdWUgIzgwMzU6IHVybGxpYjogRml4IGEgYnVnIHdoZXJlIHRoZSBjbGllbnQgY291bGQgcmVtYWluIHN0dWNrIGFmdGVyIGEKICAgcmVkaXJlY3Rpb24gb3IgYW4gZXJyb3IuCiAKKy0gSXNzdWUgIzEzNTYwOiBvcy5zdHJlcnJvcigpIG5vdyB1c2VzIHRoZSBjdXJyZW50IGxvY2FsZSBlbmNvZGluZyBpbnN0ZWFkIG9mCisgIFVURi04LgorCistIElzc3VlICMxMzU2MDogQWRkIFB5VW5pY29kZV9EZWNvZGVMb2NhbGUoKSwgUHlVbmljb2RlX0RlY29kZUxvY2FsZUFuZFNpemUoKQorICBhbmQgUHlVbmljb2RlX0VuY29kZUxvY2FsZSgpIGZ1bmN0aW9ucyB0byB0aGUgQyBBUEkgdG8gZGVjb2RlL2VuY29kZSBmcm9tL3RvCisgIHRoZSBjdXJyZW50IGxvY2FsZSBlbmNvZGluZy4KKworLSBJc3N1ZSAjODM3MzogVGhlIGZpbGVzeXN0ZW0gcGF0aCBvZiBBRl9VTklYIHNvY2tldHMgbm93IHVzZXMgdGhlIGZpbGVzeXN0ZW0KKyAgZW5jb2RpbmcgYW5kIHRoZSBzdXJyb2dhdGVlc2NhcGUgZXJyb3IgaGFuZGxlciwgcmF0aGVyIHRoYW4gVVRGLTguICBQYXRjaAorICBieSBEYXZpZCBXYXRzb24uCisKIC0gSXNzdWUgIzEwMzUwOiBSZWFkIGFuZCBzYXZlIGVycm5vIGJlZm9yZSBjYWxsaW5nIGEgZnVuY3Rpb24gd2hpY2ggbWlnaHQKICAgb3ZlcndyaXRlIGl0LiAgT3JpZ2luYWwgcGF0Y2ggYnkgSGFsbHZhcmQgQiBGdXJ1c2V0aC4KIAorLSBJc3N1ZSAjMTE2MTA6IEludHJvZHVjZSBhIG1vcmUgZ2VuZXJhbCB3YXkgdG8gZGVjbGFyZSBhYnN0cmFjdCBwcm9wZXJ0aWVzLgorCiAtIElzc3VlICMxMzU5MTogQSBidWcgaW4gaW1wb3J0bGliIGhhcyBiZWVuIGZpeGVkIHRoYXQgY2F1c2VkIGltcG9ydF9tb2R1bGUKICAgdG8gbG9hZCBhIG1vZHVsZSB0d2ljZS4KIAogLSBJc3N1ZSAjNDYyNTogSWYgSURMRSBjYW5ub3Qgd3JpdGUgdG8gaXRzIHJlY2VudCBmaWxlIG9yIGJyZWFrcG9pbnQKICAgZmlsZXMsIGRpc3BsYXkgYSBtZXNzYWdlIHBvcHVwIGFuZCBjb250aW51ZSByYXRoZXIgdGhhbiBjcmFzaC4KLSAgKG9yaWdpbmFsIHBhdGNoIGJ5IFJvZ2VyIFNlcnd5KQorIChvcmlnaW5hbCBwYXRjaCBieSBSb2dlciBTZXJ3eSkKIAotLSBJc3N1ZSAjNTkwNTogdGltZS5zdHJmdGltZSgpIGlzIG5vdyB1c2luZyB0aGUgbG9jYWxlIGVuY29kaW5nLCBpbnN0ZWFkIG9mCi0gIFVURi04LCBpZiB0aGUgd2NzZnRpbWUoKSBmdW5jdGlvbiBpcyBub3QgYXZhaWxhYmxlLgorLSBJc3N1ZSAjMTM0NDkgc2NoZWQuc2NoZWR1bGVyLnJ1bigpIG1ldGhvZCBoYXMgYSBuZXcgImJsb2NraW5nIiBwYXJhbWV0ZXIgd2hpY2gKKyAgd2hlbiBzZXQgdG8gRmFsc2UgbWFrZXMgcnVuKCkgZXhlY3V0ZSB0aGUgc2NoZWR1bGVkIGV2ZW50cyBkdWUgdG8gZXhwaXJlCisgIHNvb25lc3QgKGlmIGFueSkgYW5kIHRoZW4gcmV0dXJuLiAgUGF0Y2ggYnkgR2lhbXBhb2xvIFJvZG9sw6AuCisKKy0gSXNzdWUgIzg2ODQgc2NoZWQuc2NoZWR1bGVyIGNsYXNzIGNhbiBiZSBzYWZlbHkgdXNlZCBpbiBtdWx0aS10aHJlYWRlZAorICBlbnZpcm9ubWVudHMuICBQYXRjaCBieSBKb3NpYWggQ2FybHNvbiBhbmQgR2lhbXBhb2xvIFJvZG9sw6AuCisKKy0gQWxpYXMgcmVzb3VyY2UuZXJyb3IgdG8gT1NFcnJvciBhbGEgUEVQIDMxNTEuCisKKy0gSXNzdWUgIzU2ODk6IEFkZCBzdXBwb3J0IGZvciBsem1hIGNvbXByZXNzaW9uIHRvIHRoZSB0YXJmaWxlIG1vZHVsZS4KKworLSBJc3N1ZSAjMTMyNDg6IFR1cm4gMy4yJ3MgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZyBpbnRvIDMuMydzCisgIERlcHJlY2F0aW9uV2FybmluZy4gIEl0IGNvdmVycyAnY2dpLmVzY2FwZScsICdpbXBvcnRsaWIuYWJjLlB5TG9hZGVyJywKKyAgJ2ltcG9ydGxpYi5hYmMuUHlQeWNMb2FkZXInLCAnbm50cGxpYi5OTlRQLnhndGl0bGUnLCAnbm50cGxpYi5OTlRQLnhwYXRoJywKKyAgYW5kIHByaXZhdGUgYXR0cmlidXRlcyBvZiAnc210cGQuU01UUENoYW5uZWwnLgorCistIElzc3VlICM1OTA1LCAjMTM1NjA6IHRpbWUuc3RyZnRpbWUoKSBpcyBub3cgdXNpbmcgdGhlIGN1cnJlbnQgbG9jYWxlCisgIGVuY29kaW5nLCBpbnN0ZWFkIG9mIFVURi04LCBpZiB0aGUgd2NzZnRpbWUoKSBmdW5jdGlvbiBpcyBub3QgYXZhaWxhYmxlLgogCiAtIElzc3VlICM4NjQxOiBVcGRhdGUgSURMRSAzIHN5bnRheCBjb2xvcmluZyB0byByZWNvZ25pemUgYiIuLiIgYW5kIG5vdCB1Ii4uIi4KICAgUGF0Y2ggYnkgVGFsIEVpbmF0LgogCistIElzc3VlICMxMzQ2NDogQWRkIGEgcmVhZGludG8oKSBtZXRob2QgdG8gaHR0cC5jbGllbnQuSFRUUFJlc3BvbnNlLiAgUGF0Y2gKKyAgYnkgSm9uIEt1aG4uCisKIC0gdGFyZmlsZS5weTogQ29ycmVjdGx5IGRldGVjdCBiemlwMiBjb21wcmVzc2VkIHN0cmVhbXMgd2l0aCBibG9ja3NpemVzCiAgIG90aGVyIHRoYW4gOTAway4KIAogLSBJc3N1ZSAjMTM0Mzk6IEZpeCBtYW55IGVycm9ycyBpbiB0dXJ0bGUgZG9jc3RyaW5ncy4KIAorLSBJc3N1ZSAjNjcxNTogQWRkIGEgbW9kdWxlICdsem1hJyBmb3IgY29tcHJlc3Npb24gdXNpbmcgdGhlIExaTUEgYWxnb3JpdGhtLgorICBUaGFua3MgdG8gUGVyIMOYeXZpbmQgS2FybHNlbiBmb3IgdGhlIGluaXRpYWwgaW1wbGVtZW50YXRpb24uCisKIC0gSXNzdWUgIzEzNDg3OiBNYWtlIGluc3BlY3QuZ2V0bW9kdWxlIHJvYnVzdCBhZ2FpbnN0IGNoYW5nZXMgZG9uZSB0bwogICBzeXMubW9kdWxlcyB3aGlsZSBpdCBpcyBpdGVyYXRpbmcgb3ZlciBpdC4KIApAQCAtMzMyLDE1ICs4ODgsMzEgQEAKIC0gSXNzdWUgIzEzNDQ0OiBXaGVuIHN0ZG91dCBoYXMgYmVlbiBjbG9zZWQgZXhwbGljaXRseSwgd2Ugc2hvdWxkIG5vdCBhdHRlbXB0CiAgIHRvIGZsdXNoIGl0IGF0IHNodXRkb3duIGFuZCBwcmludCBhbiBlcnJvci4KIAorLSBJc3N1ZSAjMTI1Njc6IFRoZSBjdXJzZXMgbW9kdWxlIHVzZXMgVW5pY29kZSBmdW5jdGlvbnMgZm9yIFVuaWNvZGUgYXJndW1lbnRzCisgIHdoZW4gaXQgaXMgbGlua2VkIHRvIHRoZSBuY3Vyc2VzIGxpYnJhcnkuIEl0IGVuY29kZXMgYWxzbyBVbmljb2RlIHN0cmluZ3MgdG8KKyAgdGhlIGxvY2FsZSBlbmNvZGluZyBpbnN0ZWFkIG9mIFVURi04LgorCiAtIElzc3VlICMxMjg1NjogRW5zdXJlIGNoaWxkIHByb2Nlc3NlcyBkbyBub3QgaW5oZXJpdCB0aGUgcGFyZW50J3MgcmFuZG9tCiAgIHNlZWQgZm9yIGZpbGVuYW1lIGdlbmVyYXRpb24gaW4gdGhlIHRlbXBmaWxlIG1vZHVsZS4gIFBhdGNoIGJ5IEJyaWFuCiAgIEhhcnJpbmcuCiAKKy0gSXNzdWUgIzk5NTc6IFNwb29sZWRUZW1wb3JhcnlGaWxlLnRydW5jYXRlKCkgbm93IGFjY2VwdHMgYW4gb3B0aW9uYWwgc2l6ZQorICBwYXJhbWV0ZXIsIGFzIG90aGVyIGZpbGUtbGlrZSBvYmplY3RzLiAgUGF0Y2ggYnkgUnlhbiBLZWxseS4KKwogLSBJc3N1ZSAjMTM0NTg6IEZpeCBhIG1lbW9yeSBsZWFrIGluIHRoZSBzc2wgbW9kdWxlIHdoZW4gZGVjb2RpbmcgYQogICBjZXJ0aWZpY2F0ZSB3aXRoIGEgc3ViamVjdEFsdE5hbWUuICBQYXRjaCBieSBSb2JlcnQgWGlhby4KIAogLSBJc3N1ZSAjMTM0MTU6IG9zLnVuc2V0ZW52KCkgZG9lc24ndCBpZ25vcmUgZXJyb3JzIGFueW1vcmUuCiAKKy0gSXNzdWUgIzEzMjQ1OiBzY2hlZC5zY2hlZHVsZXIgY2xhc3MgY29uc3RydWN0b3IncyB0aW1lZnVuYyBhbmQKKyAgZGVsYXlmdW5jdCBwYXJhbWV0ZXJzIGFyZSBub3cgb3B0aW9uYWwuCisgIHNjaGVkdWxlci5lbnRlciBhbmQgc2NoZWR1bGVyLmVudGVyYWJzIG1ldGhvZHMgZ2FpbmVkIGEgbmV3IGt3YXJncyBwYXJhbWV0ZXIuCisgIFBhdGNoIGNvbnRyaWJ1dGVkIGJ5IENocmlzIENsYXJrLgorCistIElzc3VlICMxMjMyODogVW5kZXIgV2luZG93cywgcmVmYWN0b3IgaGFuZGxpbmcgb2YgQ3RybC1DIGV2ZW50cyBhbmQKKyAgbWFrZSBfbXVsdGlwcm9jZXNzaW5nLndpbjMyLldhaXRGb3JNdWx0aXBsZU9iamVjdHMgaW50ZXJydXB0aWJsZSB3aGVuCisgIHRoZSB3YWl0X2ZsYWcgcGFyYW1ldGVyIGlzIGZhbHNlLiAgUGF0Y2ggYnkgc2J0LgorCiAtIElzc3VlICMxMzMyMjogRml4IEJ1ZmZlcmVkV3JpdGVyLndyaXRlKCkgdG8gZW5zdXJlIHRoYXQgQmxvY2tpbmdJT0Vycm9yIGlzCiAgIHJhaXNlZCB3aGVuIHRoZSB3cmFwcGVkIHJhdyBmaWxlIGlzIG5vbi1ibG9ja2luZyBhbmQgdGhlIHdyaXRlIHdvdWxkIGJsb2NrLgogICBQcmV2aW91cyBjb2RlIGFzc3VtZWQgdGhhdCB0aGUgcmF3IHdyaXRlKCkgd291bGQgcmFpc2UgQmxvY2tpbmdJT0Vycm9yLCBidXQKQEAgLTM1MywxMyArOTI1LDI1IEBACiAgIG5vZGUgd2hlbiBpdCBpcyB0aGUgb25seSBjaGlsZCBvZiBhbiBlbGVtZW50LiAgSW5pdGlhbCBwYXRjaCBieSBEYW4KICAgS2VuaWdzYmVyZy4KIAorLSBJc3N1ZSAjMTMzNzQ6IFRoZSBXaW5kb3dzIGJ5dGVzIEFQSSBoYXMgYmVlbiBkZXByZWNhdGVkIGluIHRoZSBvcyBtb2R1bGUuIFVzZQorICBVbmljb2RlIGZpbGVuYW1lcyBpbnN0ZWFkIG9mIGJ5dGVzIGZpbGVuYW1lcyB0byBub3QgZGVwZW5kIG9uIHRoZSBBTlNJIGNvZGUKKyAgcGFnZSBhbnltb3JlIGFuZCB0byBzdXBwb3J0IGFueSBmaWxlbmFtZS4KKworLSBJc3N1ZSAjMTMyOTc6IFVzZSBieXRlcyB0eXBlIHRvIHNlbmQgYW5kIHJlY2VpdmUgYmluYXJ5IGRhdGEgdGhyb3VnaCBYTUxSUEMuCisKKy0gSXNzdWUgIzYzOTc6IFN1cHBvcnQgIi9kZXYvcG9sbCIgcG9sbGluZyBvYmplY3RzIGluIHNlbGVjdCBtb2R1bGUsCisgIHVuZGVyIFNvbGFyaXMgJiBkZXJpdmF0aXZlcy4KKwogLSBJc3N1ZXMgIzE3NDU3NjEsICM3NTU2NzAsICMxMzM1NywgIzEyNjI5LCAjMTIwMDMxMzogSFRNTFBhcnNlciBub3cgY29ycmVjdGx5CiAgIGhhbmRsZXMgbm9uLXZhbGlkIGF0dHJpYnV0ZXMsIGluY2x1ZGluZyBhZGphY2VudCBhbmQgdW5xdW90ZWQgYXR0cmlidXRlcy4KIAotLSBJc3N1ZSAjMTMxOTM6IEZpeCBkaXN0dXRpbHMuZmlsZWxpc3QuRmlsZUxpc3QgdW5kZXIgV2luZG93cy4KKy0gSXNzdWUgIzEzMTkzOiBGaXggZGlzdHV0aWxzLmZpbGVsaXN0LkZpbGVMaXN0IGFuZCBwYWNrYWdpbmcubWFuaWZlc3QuTWFuaWZlc3QKKyAgdW5kZXIgV2luZG93cy4KIAogLSBJc3N1ZSAjMTMzODQ6IFJlbW92ZSB1bm5lY2Vzc2FyeSBfX2Z1dHVyZV9fIGltcG9ydCBpbiBMaWIvcmFuZG9tLnB5CiAKKy0gSXNzdWUgIzEzMTQ5OiBTcGVlZCB1cCBhcHBlbmQtb25seSBTdHJpbmdJTyBvYmplY3RzLgorCiAtIElzc3VlICMxMzM3MzogbXVsdGlwcm9jZXNzaW5nLlF1ZXVlLmdldCgpIGNvdWxkIHNvbWV0aW1lcyBibG9jayBpbmRlZmluaXRlbHkKICAgd2hlbiBjYWxsZWQgd2l0aCBhIHRpbWVvdXQuICBQYXRjaCBieSBBcm5hdWQgWXNtYWwuCiAKQEAgLTM3NSwxMSArOTU5LDIwIEBACiAtIElzc3VlICMxMzMzOTogRml4IGNvbXBpbGUgZXJyb3IgaW4gcG9zaXhtb2R1bGUuYyBkdWUgdG8gbWlzc2luZyBzZW1pY29sb24uCiAgIFRoYW5rcyB0byBSb2JlcnQgWGlhby4KIAorLSBCeXRlIGNvbXBpbGF0aW9uIGluIHBhY2thZ2luZyBpcyBub3cgaXNvbGF0ZWQgZnJvbSB0aGUgY2FsbGluZyBQeXRob24gLUIgb3IKKyAgLU8gb3B0aW9ucywgaW5zdGVhZCBvZiBiZWluZyBkaXNhbGxvd2VkIHVuZGVyIC1CIG9yIGJ1Z2d5IHVuZGVyIC1PLgorCiAtIElzc3VlICMxMDU3MDogY3Vyc2VzLnB1dHAoKSBhbmQgY3Vyc2VzLnRwYXJtKCkgYXJlIG5vdyBleHBlY3RpbmcgYSBieXRlCiAgIHN0cmluZywgaW5zdGVhZCBvZiBhIFVuaWNvZGUgc3RyaW5nLgogCistIElzc3VlICMxMzI5NTogaHR0cC5zZXJ2ZXIgbm93IHByb2R1Y2VzIHZhbGlkIEhUTUwgNC4wMSBzdHJpY3QuCisKIC0gSXNzdWUgIzI4OTI6IHByZXNlcnZlIGl0ZXJwYXJzZSBldmVudHMgaW4gY2FzZSBvZiBTeW50YXhFcnJvci4KIAorLSBJc3N1ZSAjMTMyODc6IHVybGxpYi5yZXF1ZXN0IGFuZCB1cmxsaWIuZXJyb3Igbm93IGNvbnRhaW5zIGFuIF9fYWxsX18KKyAgYXR0cmlidXRlIHRvIGV4cG9zZSBvbmx5IHJlbGV2YW50IGNsYXNzZXMgYW5kIGZ1bmN0aW9ucy4gIFBhdGNoIGJ5IEZsb3JlbnQKKyAgWGljbHVuYS4KKwogLSBJc3N1ZSAjNjcwNjY0OiBGaXggSFRNTFBhcnNlciB0byBjb3JyZWN0bHkgaGFuZGxlIHRoZSBjb250ZW50IG9mCiAgIGBgPHNjcmlwdD4uLi48L3NjcmlwdD5gYCBhbmQgYGA8c3R5bGU+Li4uPC9zdHlsZT5gYC4KIApAQCAtMzg5LDYgKzk4Miw5IEBACiAtIElzc3VlICMxMzI5NjogRml4IElETEUgdG8gY2xlYXIgY29tcGlsZSBfX2Z1dHVyZV9fIGZsYWdzIG9uIHNoZWxsIHJlc3RhcnQuCiAgIChQYXRjaCBieSBSb2dlciBTZXJ3eSkKIAorLSBGaXggdGhlIHhtbHJwYy5jbGllbnQgdXNlciBhZ2VudCB0byByZXR1cm4gc29tZXRoaW5nIHNpbWlsYXIgdG8KKyAgdXJsbGliLnJlcXVlc3QgdXNlciBhZ2VudDogIlB5dGhvbi14bWxycGMvMy4zIi4KKwogLSBJc3N1ZSAjMTMyOTM6IEJldHRlciBlcnJvciBtZXNzYWdlIHdoZW4gdHJ5aW5nIHRvIG1hcnNoYWwgYnl0ZXMgdXNpbmcKICAgeG1scnBjLmNsaWVudC4KIApAQCAtMzk5LDUxICs5OTUsODEgQEAKIC0gSXNzdWUgIzEzMjczOiBmaXggYSBidWcgdGhhdCBwcmV2ZW50ZWQgSFRNTFBhcnNlciB0byBwcm9wZXJseSBkZXRlY3Qgc29tZQogICB0YWdzIHdoZW4gc3RyaWN0PUZhbHNlLgogCistIElzc3VlICMxMTE4MzogQWRkIGZpbmVyLWdyYWluZWQgZXhjZXB0aW9ucyB0byB0aGUgc3NsIG1vZHVsZSwgc28gdGhhdAorICB5b3UgZG9uJ3QgaGF2ZSB0byBpbnNwZWN0IHRoZSBleGNlcHRpb24ncyBhdHRyaWJ1dGVzIGluIHRoZSBjb21tb24gY2FzZS4KKworLSBJc3N1ZSAjMTMyMTY6IEFkZCBjcDY1MDAxIGNvZGVjLCB0aGUgV2luZG93cyBVVEYtOCAoQ1BfVVRGOCkuCisKKy0gSXNzdWUgIzEzMjI2OiBBZGQgUlRMRF94eHggY29uc3RhbnRzIHRvIHRoZSBvcyBtb2R1bGUuIFRoZXNlIGNvbnN0YW50cyBjYW4gYmUKKyAgdXNlZCB3aXRoIHN5cy5zZXRkbG9wZW5mbGFncygpLgorCistIElzc3VlICMxMDI3ODogQWRkIGNsb2NrX2dldHJlcygpLCBjbG9ja19nZXR0aW1lKCkgYW5kIENMT0NLX3h4eCBjb25zdGFudHMgdG8KKyAgdGhlIHRpbWUgbW9kdWxlLiB0aW1lLmNsb2NrX2dldHRpbWUodGltZS5DTE9DS19NT05PVE9OSUMpIHByb3ZpZGVzIGEKKyAgbW9ub3RvbmljIGNsb2NrCisKIC0gSXNzdWUgIzEwMzMyOiBtdWx0aXByb2Nlc3Npbmc6IGZpeCBhIHJhY2UgY29uZGl0aW9uIHdoZW4gYSBQb29sIGlzIGNsb3NlZAogICBiZWZvcmUgYWxsIHRhc2tzIGhhdmUgY29tcGxldGVkLgogCiAtIElzc3VlICMxMzI1NTogd3JvbmcgZG9jc3RyaW5ncyBpbiBhcnJheSBtb2R1bGUuCiAKKy0gSXNzdWUgIzg1NDA6IFJlbW92ZSBkZXByZWNhdGVkIENvbnRleHQuX2NsYW1wIGF0dHJpYnV0ZSBpbiBEZWNpbWFsIG1vZHVsZS4KKworLSBJc3N1ZSAjMTMyMzU6IEFkZGVkIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcgdG8gd2FybigpIG1ldGhvZCBhbmQgZnVuY3Rpb24uCisKIC0gSXNzdWUgIzkxNjg6IG5vdyBzbXRwZCBpcyBhYmxlIHRvIGJpbmQgcHJpdmlsZWdlZCBwb3J0LgogCiAtIElzc3VlICMxMjUyOTogZml4IGNnaS5wYXJzZV9oZWFkZXIgaXNzdWUgb24gc3RyaW5ncyB3aXRoIGRvdWJsZS1xdW90ZXMgYW5kCiAgIHNlbWljb2xvbnMgdG9nZXRoZXIuIFBhdGNoIGJ5IEJlbiBEYXJuZWxsIGFuZCBQZXRyaSBMZWh0aW5lbi4KIAotLSBJc3N1ZSAjMTI0NDg6IHNtdHBsaWIgbm93IGZsdXNoZXMgc3Rkb3V0IHdoaWxlIHJ1bm5pbmcgYGBweXRob24gLW0gc210cGxpYmBgCi0gIGluIG9yZGVyIHRvIGRpc3BsYXkgdGhlIHByb21wdCBjb3JyZWN0bHkuCistIElzc3VlICMxMzIyNzogZnVuY3Rvb2xzLmxydV9jYWNoZSgpIG5vdyBoYXMgYSBvcHRpb24gdG8gZGlzdGluZ3Vpc2gKKyAgY2FsbHMgd2l0aCBkaWZmZXJlbnQgYXJndW1lbnQgdHlwZXMuCiAKIC0gSXNzdWUgIzYwOTA6IHppcGZpbGUgcmFpc2VzIGEgVmFsdWVFcnJvciB3aGVuIGEgZG9jdW1lbnQgd2l0aCBhIHRpbWVzdGFtcAogICBlYXJsaWVyIHRoYW4gMTk4MCBpcyBwcm92aWRlZC4gUGF0Y2ggY29udHJpYnV0ZWQgYnkgUGV0cmkgTGVodGluZW4uCiAKKy0gSXNzdWUgIzEzMTUwOiBzeXNjb25maWcgbm8gbG9uZ2VyIHBhcnNlcyB0aGUgTWFrZWZpbGUgYW5kIGNvbmZpZy5oIGZpbGVzCisgIHdoZW4gaW1wb3J0ZWQsIGluc3RlYWQgZG9pbmcgaXQgYXQgYnVpbGQgdGltZS4gIFRoaXMgbWFrZXMgaW1wb3J0aW5nCisgIHN5c2NvbmZpZyBmYXN0ZXIgYW5kIHJlZHVjZXMgUHl0aG9uIHN0YXJ0dXAgdGltZSBieSAyMCUuCisKKy0gSXNzdWUgIzEyNDQ4OiBzbXRwbGliIG5vdyBmbHVzaGVzIHN0ZG91dCB3aGlsZSBydW5uaW5nIGBgcHl0aG9uIC1tIHNtdHBsaWJgYAorICBpbiBvcmRlciB0byBkaXNwbGF5IHRoZSBwcm9tcHQgY29ycmVjdGx5LgorCistIElzc3VlICMxMjQ1NDogVGhlIG1haWxib3ggbW9kdWxlIGlzIG5vdyB1c2luZyBBU0NJSSwgaW5zdGVhZCBvZiB0aGUgbG9jYWxlCisgIGVuY29kaW5nLCB0byByZWFkIGFuZCB3cml0ZSBNSCBtYWlsYm94ZXMgKC5taF9zZXF1ZW5jZXMgZmlsZXMpLgorCiAtIElzc3VlICMxMzE5NDogemxpYi5jb21wcmVzc29iaigpLmNvcHkoKSBhbmQgemxpYi5kZWNvbXByZXNzb2JqKCkuY29weSgpIGFyZQogICBub3cgYXZhaWxhYmxlIG9uIFdpbmRvd3MuCiAKKy0gaXNzdWUgIzE2NzMwMDc6IHVybGxpYjIgIHRvIHN1cHBvcnQgSEVBRCByZXF1ZXN0IHZpYSBuZXcgbWV0aG9kIGFyZ3VtZW50LgorICBQYXRjaCBjb250cmlidXRpb25zIGJ5IERhdmlkIFN0YW5laywgUGF0cmljayBXZXN0ZXJob2ZmIGFuZCBFemlvIE1lbG90dGkuCisKKy0gSXNzdWUgIzEyMzg2OiBwYWNrYWdpbmcgZG9lcyBub3QgZmFpbCBhbnltb3JlIHdoZW4gd3JpdGluZyB0aGUgUkVTT1VSQ0VTCisgIGZpbGUuCisKIC0gSXNzdWUgIzEzMTU4OiBGaXggZGVjb2RpbmcgYW5kIGVuY29kaW5nIG9mIEdOVSB0YXIgc3BlY2lmaWMgYmFzZS0yNTYgbnVtYmVyCiAgIGZpZWxkcyBpbiB0YXJmaWxlLgogCi0tIElzc3VlICMxMzE3NzogIEZ1bmN0b29scyBscnVfY2FjaGUoKSBubyBsb25nZXIgY2FsbHMgdGhlIG9yaWdpbmFsIGZ1bmN0aW9uCi0gIGluc2lkZSBhbiBleGNlcHRpb24gaGFuZGxlci4gIFRoaXMgbWFrZXMgdHJhY2ViYWNrcyBlYXNpZXIgdG8gcmVhZCBiZWNhdXNlCi0gIGNoYWluZWQgZXhjZXB0aW9ucyBhcmUgYXZvaWRlZC4KLQogLSBJc3N1ZSAjMTMwMjU6IG1pbWV0eXBlcyBpcyBub3cgcmVhZGluZyBNSU1FIHR5cGVzIHVzaW5nIHRoZSBVVEYtOCBlbmNvZGluZywKICAgaW5zdGVhZCBvZiB0aGUgbG9jYWxlIGVuY29kaW5nLgogCiAtIElzc3VlICMxMDY1MzogT24gV2luZG93cywgdXNlIHN0cmZ0aW1lKCkgaW5zdGVhZCBvZiB3Y3NmdGltZSgpIGJlY2F1c2UKICAgd2NzZnRpbWUoKSBkb2Vzbid0IGZvcm1hdCB0aW1lIHpvbmUgY29ycmVjdGx5LgogCistIElzc3VlICMxMzE1MDogVGhlIHRva2VuaXplIG1vZHVsZSBkb2Vzbid0IGNvbXBpbGUgbGFyZ2UgcmVndWxhciBleHByZXNzaW9ucworICBhdCBzdGFydHVwIGFueW1vcmUuCisKIC0gSXNzdWUgIzExMTcxOiBGaXggZGlzdHV0aWxzLnN5c2NvbmZpZy5nZXRfbWFrZWZpbGVfZmlsZW5hbWUgd2hlbiBQeXRob24gd2FzCiAgIGNvbmZpZ3VyZWQgd2l0aCBkaWZmZXJlbnQgcHJlZml4IGFuZCBleGVjLXByZWZpeC4KIAotLSBJc3N1ZSAjMTEyNTQ6IFRlYWNoIGRpc3R1dGlscyB0byBjb21waWxlIC5weWMgYW5kIC5weW8gZmlsZXMgaW4KKy0gSXNzdWUgIzExMjU0OiBUZWFjaCBkaXN0dXRpbHMgYW5kIHBhY2thZ2luZyB0byBjb21waWxlIC5weWMgYW5kIC5weW8gZmlsZXMgaW4KICAgUEVQIDMxNDctY29tcGxpYW50IF9fcHljYWNoZV9fIGRpcmVjdG9yaWVzLgogCi0tIElzc3VlICMxMTI1MDogQmFjayBwb3J0IGZpeCBmcm9tIDMuMyBicmFuY2gsIHNvIHRoYXQgMnRvMyBjYW4gaGFuZGxlIGZpbGVzCi0gIHdpdGggbGluZSBmZWVkcy4gIFRoaXMgd2FzIHBvcnRlZCBmcm9tIHRoZSBzYW5kYm94IHRvIHRoZSAzLjMgYnJhbmNoLCBidXQKLSAgZGlkbid0IG1ha2UgaXQgaW50byAzLjIuCi0KIC0gSXNzdWUgIzczNjc6IEZpeCBwa2d1dGlsLndhbGtfcGF0aHMgdG8gc2tpcCBkaXJlY3RvcmllcyB3aG9zZQogICBjb250ZW50cyBjYW5ub3QgYmUgcmVhZC4KIAorLSBJc3N1ZSAjMzE2MzogVGhlIHN0cnVjdCBtb2R1bGUgZ2V0cyBuZXcgZm9ybWF0IGNoYXJhY3RlcnMgJ24nIGFuZCAnTicKKyAgc3VwcG9ydGluZyBDIGludGVnZXIgdHlwZXMgYGBzc2l6ZV90YGAgYW5kIGBgc2l6ZV90YGAsIHJlc3BlY3RpdmVseS4KKwogLSBJc3N1ZSAjMTMwOTk6IEZpeCBzcWxpdGUzLkN1cnNvci5sYXN0cm93aWQgdW5kZXIgYSBUdXJraXNoIGxvY2FsZS4KICAgUmVwb3J0ZWQgYW5kIGRpYWdub3NlZCBieSBUaG9tYXMgS2x1eXZlci4KIApAQCAtNDY0LDEzICsxMDkwLDI5IEBACiAgIHdpdGggaW52YWxpZCBoZXggZXNjYXBlIHNlcXVlbmNlcywgbGlrZSBiJ1x4MCcuCiAgIChPcmlnaW5hbCBwYXRjaCBieSBDbGF1ZGl1IFBvcGEuKQogCi0tIElzc3VlICM4OTMzOiBkaXN0dXRpbHMnIFBLRy1JTkZPIGZpbGVzIHdpbGwgbm93IGNvcnJlY3RseSByZXBvcnQKLSAgTWV0YWRhdGEtVmVyc2lvbjogMS4xIGluc3RlYWQgb2YgMS4wIGlmIGEgQ2xhc3NpZmllciBvciBEb3dubG9hZC1VUkwgZmllbGQgaXMKLSAgcHJlc2VudC4KKy0gSXNzdWUgIzEyMzA2OiBFeHBvc2UgdGhlIHJ1bnRpbWUgdmVyc2lvbiBvZiB0aGUgemxpYiBDIGxpYnJhcnkgYXMgYSBjb25zdGFudCwKKyAgWkxJQl9SVU5USU1FX1ZFUlNJT04sIGluIHRoZSB6bGliIG1vZHVsZS4gUGF0Y2ggYnkgVG9yc3RlbiBMYW5kc2Nob2ZmLgogCi0tIElzc3VlICM5NTYxOiBkaXN0dXRpbHMgbm93IHJlYWRzIGFuZCB3cml0ZXMgZWdnLWluZm8gZmlsZXMgdXNpbmcgVVRGLTgsCistIElzc3VlICMxMjk1OTogQWRkIGNvbGxlY3Rpb25zLkNoYWluTWFwIHRvIGNvbGxlY3Rpb25zLl9fYWxsX18uCisKKy0gSXNzdWUgIzg5MzM6IGRpc3R1dGlscycgUEtHLUlORk8gZmlsZXMgYW5kIHBhY2thZ2luZydzIE1FVEFEQVRBIGZpbGVzIHdpbGwKKyAgbm93IGNvcnJlY3RseSByZXBvcnQgTWV0YWRhdGEtVmVyc2lvbjogMS4xIGluc3RlYWQgb2YgMS4wIGlmIGEgQ2xhc3NpZmllciBvcgorICBEb3dubG9hZC1VUkwgZmllbGQgaXMgcHJlc2VudC4KKworLSBJc3N1ZSAjMTI1Njc6IEFkZCBjdXJzZXMudW5nZXRfd2NoKCkgZnVuY3Rpb24uIFB1c2ggYSBjaGFyYWN0ZXIgc28gdGhlIG5leHQKKyAgZ2V0X3djaCgpIHdpbGwgcmV0dXJuIGl0LgorCistIElzc3VlICM5NTYxOiBkaXN0dXRpbHMgYW5kIHBhY2thZ2luZyBub3cgd3JpdGVzIGVnZy1pbmZvIGZpbGVzIHVzaW5nIFVURi04LAogICBpbnN0ZWFkIG9mIHRoZSBsb2NhbGUgZW5jb2RpbmcuCiAKKy0gSXNzdWUgIzgyODY6IFRoZSBkaXN0dXRpbHMgY29tbWFuZCBzZGlzdCB3aWxsIHByaW50IGEgd2FybmluZyBtZXNzYWdlIGluc3RlYWQKKyAgb2YgY3Jhc2hpbmcgd2hlbiBhbiBpbnZhbGlkIHBhdGggaXMgZ2l2ZW4gaW4gdGhlIG1hbmlmZXN0IHRlbXBsYXRlLgorCistIElzc3VlICMxMjg0MTogdGFyZmlsZSB1bm5lY2Vzc2FyaWx5IGNoZWNrZWQgdGhlIGV4aXN0ZW5jZSBvZiBudW1lcmljYWwgdXNlcgorICBhbmQgZ3JvdXAgaWRzIG9uIGV4dHJhY3Rpb24uIElmIG9uZSBvZiB0aGVtIGRpZCBub3QgZXhpc3QgdGhlIHJlc3BlY3RpdmUgaWQKKyAgb2YgdGhlIGN1cnJlbnQgdXNlciAoaS5lLiByb290KSB3YXMgdXNlZCBmb3IgdGhlIGZpbGUgYW5kIG93bmVyc2hpcAorICBpbmZvcm1hdGlvbiB3YXMgbG9zdC4KKwogLSBJc3N1ZSAjMTI4ODg6IEZpeCBhIGJ1ZyBpbiBIVE1MUGFyc2VyLnVuZXNjYXBlIHRoYXQgcHJldmVudGVkIGl0IHRvIGVzY2FwZQogICBtb3JlIHRoYW4gMTI4IGVudGl0aWVzLiAgUGF0Y2ggYnkgUGV0ZXIgT3R0ZW4uCiAKQEAgLTQ3OCw2ICsxMTIwLDE2IEBACiAKIC0gSXNzdWUgIzEyNjM2OiBJRExFIHJlYWRzIHRoZSBjb2RpbmcgY29va2llIHdoZW4gZXhlY3V0aW5nIGEgUHl0aG9uIHNjcmlwdC4KIAorLSBJc3N1ZSAjMTI0OTQ6IE9uIGVycm9yLCBjYWxsKCksIGNoZWNrX2NhbGwoKSwgY2hlY2tfb3V0cHV0KCkgYW5kCisgIGdldHN0YXR1c291dHB1dCgpIGZ1bmN0aW9ucyBvZiB0aGUgc3VicHJvY2VzcyBtb2R1bGUgbm93IGtpbGwgdGhlIHByb2Nlc3MsCisgIHJlYWQgaXRzIHN0YXR1cyAodG8gYXZvaWQgem9tYmlzKSBhbmQgY2xvc2UgcGlwZXMuCisKKy0gSXNzdWUgIzEyNzIwOiBFeHBvc2UgbG93LWxldmVsIExpbnV4IGV4dGVuZGVkIGZpbGUgYXR0cmlidXRlIGZ1bmN0aW9ucyBpbiBvcy4KKworLSBJc3N1ZSAjMTA5NDY6IFRoZSBkaXN0dXRpbHMgY29tbWFuZHMgYmRpc3RfZHVtYiwgYmRpc3Rfd2luaW5zdCBhbmQgYmRpc3RfbXNpCisgIG5vdyByZXNwZWN0IGEgLS1za2lwLWJ1aWxkIG9wdGlvbiBnaXZlbiB0byBiZGlzdC4gIFRoZSBwYWNrYWdpbmcgY29tbWFuZHMKKyAgd2VyZSBmaXhlZCB0b28uCisKIC0gSXNzdWUgIzEyODQ3OiBGaXggYSBjcmFzaCB3aXRoIG5lZ2F0aXZlIFBVVCBhbmQgTE9OR19CSU5QVVQgYXJndW1lbnRzIGluCiAgIHRoZSBDIHBpY2tsZSBpbXBsZW1lbnRhdGlvbi4KIApAQCAtNDg3LDIwNCArMTEzOSw0NyBAQAogLSBJc3N1ZSAjMTIyODc6IEZpeCBhIHN0YWNrIGNvcnJ1cHRpb24gaW4gb3NzYXVkaW9kZXYgbW9kdWxlIHdoZW4gdGhlIEZEIGlzCiAgIGdyZWF0ZXIgdGhhbiBGRF9TRVRTSVpFLgogCistIElzc3VlICMxMjgzOTogRml4IGNyYXNoIGluIHpsaWIgbW9kdWxlIGR1ZSB0byB2ZXJzaW9uIG1pc21hdGNoLgorICBGaXggYnkgUmljaGFyZCBNLiBUZXcuCisKKy0gSXNzdWUgIzk5MjM6IFRoZSBtYWlsY2FwIG1vZHVsZSBub3cgY29ycmVjdGx5IHVzZXMgdGhlIHBsYXRmb3JtIHBhdGgKKyAgc2VwYXJhdG9yIGZvciB0aGUgTUFJTENBUCBlbnZpcm9ubWVudCB2YXJpYWJsZSBvbiBub24tUE9TSVggcGxhdGZvcm1zLgorCistIElzc3VlICMxMjgzNTogRm9sbG93IHVwIHRvICM2NTYwIHRoYXQgdW5jb25kaXRpb25hbGx5IHByZXZlbnRzIHVzZSBvZiB0aGUKKyAgdW5lbmNyeXB0ZWQgc2VuZG1zZy9yZWN2bXNnIEFQSXMgb24gU1NMIHdyYXBwZWQgc29ja2V0cy4gUGF0Y2ggYnkgRGF2aWQKKyAgV2F0c29uLgorCistIElzc3VlICMxMjgwMzogU1NMQ29udGV4dC5sb2FkX2NlcnRfY2hhaW4oKSBub3cgYWNjZXB0cyBhIHBhc3N3b3JkIGFyZ3VtZW50CisgIHRvIGJlIHVzZWQgaWYgdGhlIHByaXZhdGUga2V5IGlzIGVuY3J5cHRlZC4gIFBhdGNoIGJ5IEFkYW0gU2ltcGtpbnMuCisKIC0gSXNzdWUgIzExNjU3OiBGaXggc2VuZGluZyBmaWxlIGRlc2NyaXB0b3JzIG92ZXIgMjU1IG92ZXIgYSBtdWx0aXByb2Nlc3NpbmcKICAgUGlwZS4KIAotLSBJc3N1ZSAjMTMwMDc6IHdoaWNoZGIgc2hvdWxkIHJlY29nbml6ZSBnZGJtIDEuOSBtYWdpYyBudW1iZXJzLgorLSBJc3N1ZSAjMTI4MTE6IHRhYm5hbm55LmNoZWNrKCkgbm93IHByb21wdGx5IGNsb3NlcyBjaGVja2VkIGZpbGVzLiBQYXRjaCBieQorICBBbnRob255IEJyaWdncy4KKworLSBJc3N1ZSAjNjU2MDogVGhlIHNlbmRtc2cvcmVjdm1zZyBBUEkgaXMgbm93IGV4cG9zZWQgYnkgdGhlIHNvY2tldCBtb2R1bGUKKyAgd2hlbiBwcm92aWRlZCBieSB0aGUgdW5kZXJseWluZyBwbGF0Zm9ybSwgc3VwcG9ydGluZyBwcm9jZXNzaW5nIG9mCisgIGFuY2lsbGFyeSBkYXRhIGluIHB1cmUgUHl0aG9uIGNvZGUuIFBhdGNoIGJ5IERhdmlkIFdhdHNvbiBhbmQgSGVpa28gV3VuZHJhbS4KKworLSBJc3N1ZSAjMTIzMjY6IE9uIExpbnV4LCBzeXMucGxhdGZvcm0gZG9lc24ndCBjb250YWluIHRoZSBtYWpvciB2ZXJzaW9uCisgIGFueW1vcmUuIEl0IGlzIG5vdyBhbHdheXMgJ2xpbnV4JywgaW5zdGVhZCBvZiAnbGludXgyJyBvciAnbGludXgzJyBkZXBlbmRpbmcKKyAgb24gdGhlIExpbnV4IHZlcnNpb24gdXNlZCB0byBidWlsZCBQeXRob24uCiAKIC0gSXNzdWUgIzEyMjEzOiBGaXggYSBidWZmZXJpbmcgYnVnIHdpdGggaW50ZXJsZWF2ZWQgcmVhZHMgYW5kIHdyaXRlcyB0aGF0CiAgIGNvdWxkIGFwcGVhciBvbiBCdWZmZXJlZFJhbmRvbSBzdHJlYW1zLgogCistIElzc3VlICMxMjc3ODogUmVkdWNlIG1lbW9yeSBjb25zdW1wdGlvbiB3aGVuIEpTT04tZW5jb2RpbmcgYSBsYXJnZQorICBjb250YWluZXIgb2YgbWFueSBzbWFsbCBvYmplY3RzLgorCiAtIElzc3VlICMxMjY1MDogRml4IGEgcmFjZSBjb25kaXRpb24gd2hlcmUgYSBzdWJwcm9jZXNzLlBvcGVuIGNvdWxkIGxlYWsKICAgcmVzb3VyY2VzIChGRC96b21iaWUpIHdoZW4ga2lsbGVkIGF0IHRoZSB3cm9uZyB0aW1lLgogCi0tIElzc3VlICMxMDg2MDogaHR0cC5jbGllbnQgbm93IGNvcnJlY3RseSBoYW5kbGVzIGFuIGVtcHR5IHBvcnQgYWZ0ZXIgcG9ydAotICBkZWxpbWl0ZXIgaW4gVVJMcy4KKy0gSXNzdWUgIzEyNzQ0OiBGaXggaW5lZmZpY2llbnQgcmVwcmVzZW50YXRpb24gb2YgaW50ZWdlcnMgYmV0d2VlbiAyKiozMSBhbmQKKyAgMioqNjMgb24gc3lzdGVtcyB3aXRoIGEgNjQtYml0IEMgImxvbmciLgogCi1CdWlsZAotLS0tLS0KLQotLSBJc3N1ZSAjNjgwNzogUnVuIG1zaXN1cHBvcnQubWFrIGVhcmxpZXIuCi0KLS0gSXNzdWUgIzEwNTgwOiBNaW5vciBncmFtbWFyIGNoYW5nZSBpbiBXaW5kb3dzIGluc3RhbGxlci4KLQotLSBJc3N1ZSAjMTMzMjY6IENsZWFuIF9fcHljYWNoZV9fIGRpcmVjdG9yaWVzIGNvcnJlY3RseSBvbiBPcGVuQlNELgotCi1Ub29scy9EZW1vcwotLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjMTQwNTM6IHBhdGNoY2hlY2sucHkgKCJtYWtlIHBhdGNoY2hlY2siKSBub3cgd29ya3Mgd2l0aCBNUSBwYXRjaGVzLgotICBQYXRjaCBieSBGcmFuY2lzY28gTWFydMOtbiBCcnVndcOpLgotCi0tIElzc3VlICMxMzkzMDogMnRvMyBpcyBub3cgYWJsZSB0byB3cml0ZSBpdHMgY29udmVydGVkIG91dHB1dCBmaWxlcyB0byBhbm90aGVyCi0gIGRpcmVjdG9yeSB0cmVlIGFzIHdlbGwgYXMgY29weWluZyB1bmNoYW5nZWQgZmlsZXMgYW5kIGFsdGVyaW5nIHRoZSBmaWxlCi0gIHN1ZmZpeC4gIFNlZSBpdHMgbmV3IC1vLCAtVyBhbmQgLS1hZGQtc3VmZml4IG9wdGlvbnMuICBUaGlzIG1ha2VzIGl0IG1vcmUKLSAgdXNlZnVsIGluIG1hbnkgYXV0b21hdGVkIGNvZGUgdHJhbnNsYXRpb24gd29ya2Zsb3dzLgotCi0tIElzc3VlICMxMzYyODogcHl0aG9uLWdkYi5weSBpcyBub3cgYWJsZSB0byByZXRyaWV2ZSBtb3JlIGZyYW1lcyBpbiB0aGUgUHl0aG9uCi0gIHRyYWNlYmFjayBpZiBQeXRob24gaXMgb3B0aW1pemVkLgotCi1UZXN0cwotLS0tLS0KLQotLSBJc3N1ZSAjMTE2ODk6IEZpeCBhIHZhcmlhYmxlIHNjb3BpbmcgZXJyb3IgaW4gYW4gc3FsaXRlMyB0ZXN0Ci0KLS0gSXNzdWUgIzEzNzg2OiBSZW1vdmUgdW5pbXBsZW1lbnRlZCAndHJhY2UnIGxvbmcgb3B0aW9uIGZyb20gcmVncnRlc3QucHkuCi0KLS0gSXNzdWUgIzEzNzI1OiBGaXggcmVncnRlc3QgdG8gcmVjb2duaXplIHRoZSBkb2N1bWVudGVkIC1kIGZsYWcuCi0gIFBhdGNoIGJ5IEVybm8gVHVraWEuCi0KLS0gSXNzdWUgIzEzMzA0OiBTa2lwIHRlc3QgY2FzZSBpZiB1c2VyIHNpdGUtcGFja2FnZXMgZGlzYWJsZWQgKC1zIG9yCi0gIFBZVEhPTk5PVVNFUlNJVEUpLiAgKFBhdGNoIGJ5IENhcmwgTWV5ZXIpCi0KLS0gSXNzdWUgIzEzMjE4OiBGaXggdGVzdF9zc2wgZmFpbHVyZXMgb24gRGViaWFuL1VidW50dS4KLQotLSBJc3N1ZSAjMTI4MjE6IEZpeCB0ZXN0X2ZjbnRsIGZhaWx1cmVzIG9uIE9wZW5CU0QgNS4KLQotLSBSZS1lbmFibGUgbGliMnRvMydzIHRlc3RfcGFyc2VyLnB5IHRlc3RzLCB0aG91Z2ggd2l0aCBhbiBleHBlY3RlZCBmYWlsdXJlCi0gIChzZWUgaXNzdWUgMTMxMjUpLgotCi1FeHRlbnNpb24gTW9kdWxlcwotLS0tLS0tLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjMTQyMTI6IFRoZSByZSBtb2R1bGUgZGlkbid0IHJldGFpbiBhIHJlZmVyZW5jZSB0byBidWZmZXJzIGl0IHdhcwotICBzY2FubmluZywgcmVzdWx0aW5nIGluIHNlZ2ZhdWx0cy4KLQotLSBJc3N1ZSAjMTM4NDA6IFRoZSBlcnJvciBtZXNzYWdlIHByb2R1Y2VkIGJ5IGN0eXBlcy5jcmVhdGVfc3RyaW5nX2J1ZmZlcgotICB3aGVuIGdpdmVuIGEgVW5pY29kZSBzdHJpbmcgaGFzIGJlZW4gZml4ZWQuCi0KLS0gSXNzdWUgIzk5NzU6IHNvY2tldDogRml4IGluY29ycmVjdCB1c2Ugb2YgZmxvd2luZm8gYW5kIHNjb3BlX2lkLiBQYXRjaCBieQotICBWaWxtb3MgTmViZWhhai4KLQotLSBJc3N1ZSAjMTMxNTk6IEZpbGVJTyBhbmQgQloyRmlsZSBub3cgdXNlIGEgbGluZWFyLXRpbWUgYnVmZmVyIGdyb3d0aAotICBzdHJhdGVneSBpbnN0ZWFkIG9mIGEgcXVhZHJhdGljLXRpbWUgb25lLgotCi0tIElzc3VlICMxMzA3MDogRml4IGEgY3Jhc2ggd2hlbiBhIFRleHRJT1dyYXBwZXIgY2F1Z2h0IGluIGEgcmVmZXJlbmNlIGN5Y2xlCi0gIHdvdWxkIGJlIGZpbmFsaXplZCBhZnRlciB0aGUgcmVmZXJlbmNlIHRvIGl0cyB1bmRlcmx5aW5nIEJ1ZmZlcmVkUldQYWlyJ3MKLSAgd3JpdGVyIGdvdCBjbGVhcmVkIGJ5IHRoZSBHQy4KLQotLSBJc3N1ZSAjMTI4ODE6IGN0eXBlczogRml4IHNlZ2ZhdWx0IHdpdGggbGFyZ2Ugc3RydWN0dXJlIGZpZWxkIG5hbWVzLgotCi0tIElzc3VlICMxMzA1ODogb3NzYXVkaW9kZXY6IGZpeCBhIGZpbGUgZGVzY3JpcHRvciBsZWFrIG9uIGVycm9yLiBQYXRjaCBieQotICBUaG9tYXMgSmFyb3NjaC4KLQotLSBJc3N1ZSAjMTMwMTM6IGN0eXBlczogRml4IGEgcmVmZXJlbmNlIGxlYWsgaW4gUHlDQXJyYXlUeXBlX2Zyb21fY3R5cGUuCi0gIFRoYW5rcyB0byBTdW1hbiBTYWhhIGZvciBmaW5kaW5nIHRoZSBidWcgYW5kIHByb3ZpZGluZyBhIHBhdGNoLgotCi0tIElzc3VlICMxMzAyMjogRml4OiBfbXVsdGlwcm9jZXNzaW5nLnJlY3ZmZCgpIGRvZXNuJ3QgY2hlY2sgdGhhdAotICBmaWxlIGRlc2NyaXB0b3Igd2FzIGFjdHVhbGx5IHJlY2VpdmVkLgotCi0tIElzc3VlICMxMjQ4MzogY3R5cGVzOiBGaXggYSBjcmFzaCB3aGVuIHRoZSBkZXN0cnVjdGlvbiBvZiBhIGNhbGxiYWNrCi0gIG9iamVjdCB0cmlnZ2VycyB0aGUgZ2FyYmFnZSBjb2xsZWN0b3IuCi0KLS0gSXNzdWUgIzEyOTUwOiBGaXggcGFzc2luZyBmaWxlIGRlc2NyaXB0b3JzIGluIG11bHRpcHJvY2Vzc2luZywgdW5kZXIKLSAgT3BlbkluZGlhbmEvSWxsdW1vcy4KLQotRG9jdW1lbnRhdGlvbgotLS0tLS0tLS0tLS0tLQotCi0tIElzc3VlcyAjMTM0OTEgYW5kICMxMzk5NTogRml4IG1hbnkgZXJyb3JzIGluIHNxbGl0ZTMgZG9jdW1lbnRhdGlvbi4KLSAgSW5pdGlhbCBwYXRjaCBmb3IgIzEzNDkxIGJ5IEpvaGFubmVzIFZvZ2VsLgotCi0tIElzc3VlICMxMzQwMjogRG9jdW1lbnQgYWJzb2x1dGVuZXNzIG9mIHN5cy5leGVjdXRhYmxlLgotCi0tIElzc3VlICMxMzg4MzogUFlUSE9OQ0FTRU9LIGFsc28gdXNlZCBvbiBPUyBYIGFuZCBPUy8yLgotCi0tIElzc3VlICMxMjk0OTogRG9jdW1lbnQgdGhlIGt3b25seWFyZ2NvdW50IGFyZ3VtZW50IGZvciB0aGUgUHlDb2RlX05ldwotICBDIEFQSSBmdW5jdGlvbi4KLQotLSBJc3N1ZSAjMjEzNDogVGhlIHRva2VuaXplIGRvY3VtZW50YXRpb24gaGFzIGJlZW4gY2xhcmlmaWVkIHRvIGV4cGxhaW4gd2h5Ci0gIGFsbCBvcGVyYXRvciBhbmQgZGVsaW1pdGVyIHRva2VucyBhcmUgdHJlYXRlZCBhcyB0b2tlbi5PUCB0b2tlbnMuCi0KLS0gSXNzdWUgIzEzNTEzOiBGaXggaW8uSU9CYXNlIGRvY3VtZW50YXRpb24gdG8gY29ycmVjdGx5IGxpbmsgdG8gdGhlCi0gIGlvLklPQmFzZS5yZWFkbGluZSBtZXRob2QgaW5zdGVhZCBvZiB0aGUgcmVhZGxpbmUgbW9kdWxlLgotCi0tIElzc3VlICMxMzIzNzogUmVvcmdhbmlzZSBzdWJwcm9jZXNzIGRvY3VtZW50YXRpb24gdG8gZW1waGFzaXNlIGNvbnZlbmllbmNlCi0gIGZ1bmN0aW9ucyBhbmQgdGhlIG1vc3QgY29tbW9ubHkgbmVlZGVkIGFyZ3VtZW50cyB0byBQb3Blbi4KLQotLSBJc3N1ZSAjMTMxNDE6IERlbW9uc3RyYXRlIHJlY29tbWVuZGVkIHN0eWxlIGZvciBzb2NrZXRzZXJ2ZXIgZXhhbXBsZXMuCi0KLQotV2hhdCdzIE5ldyBpbiBQeXRob24gMy4yLjI/Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotKlJlbGVhc2UgZGF0ZTogMDMtU2VwLTIwMTEqCi0KLUNvcmUgYW5kIEJ1aWx0aW5zCi0tLS0tLS0tLS0tLS0tLS0tLQotCi0tIElzc3VlICMxMjMyNjogc3lzLnBsYXRmb3JtIGlzIG5vdyBhbHdheXMgJ2xpbnV4Micgb24gTGludXgsIGV2ZW4gaWYgUHl0aG9uCi0gIGlzIGNvbXBpbGVkIG9uIExpbnV4IDMuCi0KLS0gQWNjZXB0IGJ5dGVzIGZvciB0aGUgQVNUIHN0cmluZyB0eXBlLiBUaGlzIGlzIHRlbXBvcmFyeSB1bnRpbCBhIHByb3BlciBmaXggaW4KLSAgMy4zLgotCi1MaWJyYXJ5Ci0tLS0tLS0tCi0KLS0gSXNzdWUgIzgyODY6IFRoZSBkaXN0dXRpbHMgY29tbWFuZCBzZGlzdCB3aWxsIHByaW50IGEgd2FybmluZyBtZXNzYWdlIGluc3RlYWQKLSAgb2YgY3Jhc2hpbmcgd2hlbiBhbiBpbnZhbGlkIHBhdGggaXMgZ2l2ZW4gaW4gdGhlIG1hbmlmZXN0IHRlbXBsYXRlLgotCi0tIElzc3VlICMxMjg0MTogdGFyZmlsZSB1bm5lY2Vzc2FyaWx5IGNoZWNrZWQgdGhlIGV4aXN0ZW5jZSBvZiBudW1lcmljYWwgdXNlcgotICBhbmQgZ3JvdXAgaWRzIG9uIGV4dHJhY3Rpb24uIElmIG9uZSBvZiB0aGVtIGRpZCBub3QgZXhpc3QgdGhlIHJlc3BlY3RpdmUgaWQKLSAgb2YgdGhlIGN1cnJlbnQgdXNlciAoaS5lLiByb290KSB3YXMgdXNlZCBmb3IgdGhlIGZpbGUgYW5kIG93bmVyc2hpcAotICBpbmZvcm1hdGlvbiB3YXMgbG9zdC4KLQotLSBJc3N1ZSAjMTA5NDY6IFRoZSBkaXN0dXRpbHMgY29tbWFuZHMgYmRpc3RfZHVtYiwgYmRpc3Rfd2luaW5zdCBhbmQgYmRpc3RfbXNpCi0gIG5vdyByZXNwZWN0IGEgLS1za2lwLWJ1aWxkIG9wdGlvbiBnaXZlbiB0byBiZGlzdC4KLQotLSBJc3N1ZSAjMTI4Mzk6IEZpeCBjcmFzaCBpbiB6bGliIG1vZHVsZSBkdWUgdG8gdmVyc2lvbiBtaXNtYXRjaC4KLSAgRml4IGJ5IFJpY2hhcmQgTS4gVGV3LgotCi1FeHRlbnNpb24gTW9kdWxlcwotLS0tLS0tLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjOTY1MTogRml4IGEgY3Jhc2ggd2hlbiBjdHlwZXMuY3JlYXRlX3N0cmluZ19idWZmZXIoMCkgd2FzIHBhc3NlZCB0bwotICBzb21lIGZ1bmN0aW9ucyBsaWtlIGZpbGUud3JpdGUoKS4KLQotCi0KLVdoYXQncyBOZXcgaW4gUHl0aG9uIDMuMi4yIHJlbGVhc2UgY2FuZGlkYXRlIDE/Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi0qUmVsZWFzZSBkYXRlOiAxNC1BdWctMjAxMSoKLQotQ29yZSBhbmQgQnVpbHRpbnMKLS0tLS0tLS0tLS0tLS0tLS0tCi0KLS0gSXNzdWUgIzEyNzMyOiBJbiBuYXJyb3cgdW5pY29kZSBidWlsZHMsIGFsbG93IFVuaWNvZGUgaWRlbnRpZmllcnMgd2hpY2ggZmFsbAotICBvdXRzaWRlIHRoZSBCTVAuCi0KLS0gSXNzdWUgIzExNjAzOiBGaXggYSBjcmFzaCB3aGVuIF9fc3RyX18gaXMgcmVib3VuZCBhcyBfX3JlcHJfXy4gIFBhdGNoIGJ5Ci0gIEFuZHJlYXMgU3TDvGhyay4KLQotLSBJc3N1ZSAjMTEzMjE6IEZpeCBhIGNyYXNoIHdpdGggbXVsdGlwbGUgaW1wb3J0cyBvZiB0aGUgX3BpY2tsZSBtb2R1bGUgd2hlbgotICBlbWJlZGRpbmcgUHl0aG9uLiAgUGF0Y2ggYnkgQW5kcmVhcyBTdMO8aHJrLgotCi0tIFZlcmlmeSB0aGUgdHlwZXMgb2YgQVNUIHN0cmluZ3MgYW5kIGlkZW50aWZpZXJzIHByb3ZpZGVkIGJ5IHRoZSB1c2VyIGJlZm9yZQotICBjb21waWxpbmcgdGhlbS4KLQotLSBJc3N1ZSAjMTI1Nzk6IHN0ci5mb3JtYXRfbWFwKCkgbm93IHJhaXNlcyBhIFZhbHVlRXJyb3IgaWYgdXNlZCBvbiBhCi0gIGZvcm1hdCBzdHJpbmcgdGhhdCBjb250YWlucyBwb3NpdGlvbmFsIGZpZWxkcy4gSW5pdGlhbCBwYXRjaCBieQotICBKdWxpYW4gQmVybWFuLgotCi0tIElzc3VlICMxMTYyNzogRml4IHNlZ2ZhdWx0IHdoZW4gX19uZXdfXyBvbiBhIGV4Y2VwdGlvbiByZXR1cm5zIGEKLSAgbm9uLWV4Y2VwdGlvbiBjbGFzcy4KLQotLSBJc3N1ZSAjMTIxNDk6IFVwZGF0ZSB0aGUgbWV0aG9kIGNhY2hlIGFmdGVyIGEgdHlwZSdzIGRpY3Rpb25hcnkgZ2V0cwotICBjbGVhcmVkIGJ5IHRoZSBnYXJiYWdlIGNvbGxlY3Rvci4gIFRoaXMgZml4ZXMgYSBzZWdmYXVsdCB3aGVuIGFuIGluc3RhbmNlCi0gIGFuZCBpdHMgdHlwZSBnZXQgY2F1Z2h0IGluIGEgcmVmZXJlbmNlIGN5Y2xlLCBhbmQgdGhlIGluc3RhbmNlJ3MKLSAgZGVhbGxvY2F0b3IgY2FsbHMgb25lIG9mIHRoZSBtZXRob2RzIG9uIHRoZSB0eXBlIChlLmcuIHdoZW4gc3ViY2xhc3NpbmcKLSAgSU9CYXNlKS4gIERpYWdub3NpcyBhbmQgcGF0Y2ggYnkgRGF2aWRlIFJpenpvLgotCi0tIFdoZW4gYSBnZW5lcmF0b3IgeWllbGRzLCBkbyBub3QgcmV0YWluIHRoZSBjYWxsZXIncyBleGNlcHRpb24gc3RhdGUgb24gdGhlCi0gIGdlbmVyYXRvci4KLQotLSBJc3N1ZSAjMTI0NzU6IFByZXZlbnQgZ2VuZXJhdG9ycyBmcm9tIGxlYWtpbmcgdGhlaXIgZXhjZXB0aW9uIHN0YXRlIGludG8gdGhlCi0gIGNhbGxlcidzIGZyYW1lIGFzIHRoZXkgcmV0dXJuIGZvciB0aGUgbGFzdCB0aW1lLgotCi1MaWJyYXJ5Ci0tLS0tLS0tCistIElzc3VlICMxMjY0NjogQWRkIGFuICdlb2YnIGF0dHJpYnV0ZSB0byB6bGliLkRlY29tcHJlc3MsIHRvIG1ha2UgaXQgZWFzaWVyIHRvCisgIGRldGVjdCB0cnVuY2F0ZWQgaW5wdXQgc3RyZWFtcy4KIAogLSBJc3N1ZSAjMTE1MTM6IEZpeCBleGNlcHRpb24gaGFuZGxpbmcgYGB0YXJmaWxlLlRhckZpbGUuZ3pvcGVuKClgYCB3aGVuCiAgIHRoZSBmaWxlIGNhbm5vdCBiZSBvcGVuZWQuCkBAIC02OTcsMTggKzExOTIsNDIgQEAKIC0gSXNzdWUgIzEyNTQwOiBQcmV2ZW50IHpvbWJpZSBJRExFIHByb2Nlc3NlcyBvbiBXaW5kb3dzIGR1ZSB0byBjaGFuZ2VzCiAgIGluIG9zLmtpbGwoKS4KIAorLSBBZGQgc3VwcG9ydCBmb3IgdW5hcnkgcGx1cyBhbmQgdW5hcnkgbWludXMgdG8gY29sbGVjdGlvbnMuQ291bnRlcigpLgorICBJc3N1ZSAjMTMxMjE6IEFsc28gYWRkIHN1cHBvcnQgZm9yIGlucGxhY2UgbWF0aCBvcGVyYXRvcnMuCisKIC0gSXNzdWUgIzEyNjgzOiB1cmxwYXJzZSB1cGRhdGVkIHRvIGluY2x1ZGUgc3ZuIGFzIHNjaGVtZXMgdGhhdCB1c2VzIHJlbGF0aXZlCiAgIHBhdGhzLiAoc3ZuIGZyb20gMS41IG9ud2FyZHMgc3VwcG9ydCByZWxhdGl2ZSBwYXRoKS4KIAorLSBJc3N1ZSAjMTI2NTU6IEV4cG9zZSBmdW5jdGlvbnMgZnJvbSBzY2hlZC5oIGluIHRoZSBvcyBtb2R1bGU6IHNjaGVkX3lpZWxkKCksCisgIHNjaGVkX3NldHNjaGVkdWxlcigpLCBzY2hlZF9nZXRzY2hlZHVsZXIoKSwgc2NoZWRfc2V0cGFyYW0oKSwKKyAgc2NoZWRfZ2V0X21pbl9wcmlvcml0eSgpLCBzY2hlZF9nZXRfbWF4X3ByaW9yaXR5KCksIHNjaGVkX3JyX2dldF9pbnRlcnZhbCgpLAorICBzY2hlZF9nZXRhZmZpbml0eSgpLCBzY2hlZF9zZXRhZmZpbml0eSgpLgorCistIEFkZCBUaHJlYWRFcnJvciB0byB0aHJlYWRpbmcuX19hbGxfXy4KKwogLSBJc3N1ZXMgIzExMTA0LCAjODY4ODogRml4IHRoZSBiZWhhdmlvciBvZiBkaXN0dXRpbHMnIHNkaXN0IGNvbW1hbmQgd2l0aAogICBtYW51YWxseS1tYWludGFpbmVkIE1BTklGRVNUIGZpbGVzLgogCistIElzc3VlICMxMTI4MTogc210cGxpYi5TVE1QIGdldHMgc291cmNlX2FkZHJlc3MgcGFyYW1ldGVyLCB3aGljaCBhZGRzIHRoZQorICBhYmlsaXR5IHRvIGJpbmQgdG8gc3BlY2lmaWMgc291cmNlIGFkZHJlc3Mgb24gYSBtYWNoaW5lIHdpdGggbXVsdGlwbGUKKyAgaW50ZXJmYWNlcy4gUGF0Y2ggYnkgUGF1bG8gU2NhcmRpbmUuCisKIC0gSXNzdWUgIzEyNDY0OiB0ZW1wZmlsZS5UZW1wb3JhcnlEaXJlY3RvcnkuY2xlYW51cCgpIHNob3VsZCBub3QgZm9sbG93CiAgIHN5bWxpbmtzOiBmaXggaXQuIFBhdGNoIGJ5IFBldHJpIExlaHRpbmVuLgogCiAtIElzc3VlICM4ODg3OiAicHlkb2Mgc29tZWJ1aWx0aW4uc29tZW1ldGhvZCIgKG9yIGhlbHAoJ3NvbWVidWlsdGluLnNvbWVtZXRob2QnKQogICBpbiBQeXRob24gY29kZSkgbm93IGZpbmRzIHRoZSBkb2Mgb2YgdGhlIG1ldGhvZC4KIAorLSBJc3N1ZSAjMTA5Njg6IFJlbW92ZSBpbmRpcmVjdGlvbiBpbiB0aHJlYWRpbmcuICBUaGUgcHVibGljIG5hbWVzIChUaHJlYWQsCisgIENvbmRpdGlvbiwgZXRjLikgdXNlZCB0byBiZSBmYWN0b3J5IGZ1bmN0aW9ucyByZXR1cm5pbmcgaW5zdGFuY2VzIG9mIGhpZGRlbgorICBjbGFzc2VzIChfVGhyZWFkLCBfQ29uZGl0aW9uLCBldGMuKSwgYmVjYXVzZSAoaWYgR3VpZG8gcmVjYWxscyBjb3JyZWN0bHkpIHRoaXMKKyAgY29kZSBwcmUtZGF0ZXMgdGhlIGFiaWxpdHkgdG8gc3ViY2xhc3MgZXh0ZW5zaW9uIHR5cGVzLiAgSXQgaXMgbm93IHBvc3NpYmxlIHRvCisgIGluaGVyaXQgZnJvbSBUaHJlYWQgYW5kIG90aGVyIGNsYXNzZXMsIHdpdGhvdXQgaGF2aW5nIHRvIGltcG9ydCB0aGUgcHJpdmF0ZQorICB1bmRlcnNjb3JlZCBuYW1lcyBsaWtlIG11bHRpcHJvY2Vzc2luZyBkaWQuCisKKy0gSXNzdWUgIzk3MjM6IEFkZCBzaGxleC5xdW90ZSBmdW5jdGlvbnMsIHRvIGVzY2FwZSBmaWxlbmFtZXMgYW5kIGNvbW1hbmQKKyAgbGluZXMuCisKIC0gSXNzdWUgIzEyNjAzOiBGaXggcHlkb2Muc3lub3BzaXMoKSBvbiBmaWxlcyB3aXRoIG5vbi1uZWdhdGl2ZSBzdF9tdGltZS4KIAogLSBJc3N1ZSAjMTI1MTQ6IFVzZSB0cnkvZmluYWxseSB0byBhc3N1cmUgdGhlIHRpbWVpdCBtb2R1bGUgcmVzdG9yZXMgZ2FyYmFnZQpAQCAtNzIzLDE5ICsxMjQyLDM1IEBACiAtIElzc3VlICMxMjU3NjogRml4IHVybG9wZW4gYmVoYXZpb3Igb24gc2l0ZXMgd2hpY2ggZG8gbm90IHNlbmQgKG9yIG9iZnVzY2F0ZXMpCiAgIENvbm5lY3Rpb246Y2xvc2UgaGVhZGVyLgogCistIElzc3VlICMxMjEwMjogRG9jdW1lbnQgdGhhdCBidWZmZXJlZCBmaWxlcyBtdXN0IGJlIGZsdXNoZWQgYmVmb3JlIGJlaW5nIHVzZWQKKyAgd2l0aCBtbWFwLiBQYXRjaCBieSBTdGVmZmVuIERhb2RlIE51cnBtZXNvLgorCistIElzc3VlICMxMjU2MDogQnVpbGQgbGlicHl0aG9uLnNvIG9uIE9wZW5CU0QuIFBhdGNoIGJ5IFN0ZWZhbiBTcGVybGluZy4KKwogLSBJc3N1ZSAjMTgxMzogRml4IGNvZGVjIGxvb2t1cCB1bmRlciBUdXJraXNoIGxvY2FsZXMuCiAKIC0gSXNzdWUgIzEyNTkxOiBJbXByb3ZlIHN1cHBvcnQgb2YgInVuaXZlcnNhbCBuZXdsaW5lcyIgaW4gdGhlIHN1YnByb2Nlc3MKICAgbW9kdWxlOiB0aGUgcGlwZWQgc3RyZWFtcyBjYW4gbm93IGJlIHByb3Blcmx5IHJlYWQgZnJvbSBvciB3cml0dGVuIHRvLgogCiAtIElzc3VlICMxMjU5MTogQWxsb3cgaW8uVGV4dElPV3JhcHBlciB0byB3b3JrIHdpdGggcmF3IElPIG9iamVjdHMgKHdpdGhvdXQKLSAgYSByZWFkMSgpIG1ldGhvZCksIGFuZCBhZGQgYW4gdW5kb2N1bWVudGVkICp3cml0ZV90aHJvdWdoKiBwYXJhbWV0ZXIgdG8KLSAgbWFuZGF0ZSB1bmJ1ZmZlcmVkIHdyaXRlcy4KLQotLSBJc3N1ZSAjOTYxMSwgIzkwMTU6IEZpbGVJTy5yZWFkKCkgY2xhbXBzIHRoZSBsZW5ndGggdG8gSU5UX01BWCBvbiBXaW5kb3dzLgorICBhIHJlYWQxKCkgbWV0aG9kKSwgYW5kIGFkZCBhICp3cml0ZV90aHJvdWdoKiBwYXJhbWV0ZXIgdG8gbWFuZGF0ZQorICB1bmJ1ZmZlcmVkIHdyaXRlcy4KIAogLSBJc3N1ZSAjMTA4ODM6IEZpeCBzb2NrZXQgbGVha3MgaW4gdXJsbGliLnJlcXVlc3Qgd2hlbiB1c2luZyBGVFAuCiAKKy0gSXNzdWUgIzEyNTkyOiBNYWtlIFB5dGhvbiBidWlsZCBvbiBPcGVuQlNEIDUgKGFuZCBmdXR1cmUgbWFqb3IgcmVsZWFzZXMpLgorCistIElzc3VlICMxMjM3MjogUE9TSVggc2VtYXBob3JlcyBhcmUgYnJva2VuIG9uIEFJWDogZG9uJ3QgdXNlIHRoZW0uCisKKy0gSXNzdWUgIzEyNTUxOiBQcm92aWRlIGEgZ2V0X2NoYW5uZWxfYmluZGluZygpIG1ldGhvZCBvbiBTU0wgc29ja2V0cyBzbyBhcworICB0byBnZXQgY2hhbm5lbCBiaW5kaW5nIGRhdGEgZm9yIHRoZSBjdXJyZW50IFNTTCBzZXNzaW9uIChvbmx5IHRoZQorICAidGxzLXVuaXF1ZSIgY2hhbm5lbCBiaW5kaW5nIGlzIGltcGxlbWVudGVkKS4gIFRoaXMgYWxsb3dzIHRoZSBpbXBsZW1lbnRhdGlvbgorICBvZiBjZXJ0YWluIGF1dGhlbnRpY2F0aW9uIG1lY2hhbmlzbXMgc3VjaCBhcyBTQ1JBTS1TSEEtMS1QTFVTLiAgUGF0Y2ggYnkKKyAgSmFjZWsgS29uaWVjem55LgorCistIElzc3VlICM2NjUxOTQ6IGVtYWlsLnV0aWxzIG5vdyBoYXMgZm9ybWF0X2RhdGV0aW1lIGFuZCBwYXJzZWRhdGVfdG9fZGF0ZXRpbWUKKyAgZnVuY3Rpb25zLCBhbGxvd2luZyBmb3Igcm91bmQgdHJpcHBpbmcgb2YgUkZDMjgyMiBmb3JtYXQgZGF0ZXMuCisKIC0gSXNzdWUgIzEyNTcxOiBBZGQgYSBwbGF0LWxpbnV4MyBkaXJlY3RvcnkgbWlycm9yaW5nIHRoZSBwbGF0LWxpbnV4MgogICBkaXJlY3RvcnksIHNvIHRoYXQgImltcG9ydCBETEZDTiIgYW5kIG90aGVyIHNpbWlsYXIgaW1wb3J0cyB3b3JrIG9uCiAgIExpbnV4IDMuMC4KQEAgLTc0MywxODEgKzEyNzgsOTEgQEAKIC0gSXNzdWUgIzc0ODQ6IHNtdHBsaWIgbm8gbG9uZ2VyIHB1dHMgPD4gYXJvdW5kIGFkZHJlc3NlcyBpbiBWUkZZIGFuZCBFWFBOCiAgIGNvbW1hbmRzOyB0aGV5IGFyZW4ndCByZXF1aXJlZCBhbmQgaW4gZmFjdCBwb3N0Zml4IGRvZXNuJ3Qgc3VwcG9ydCB0aGF0IGZvcm0uCiAKLS0gQ2xvc2UgdGhlIGNhbGwgcXVldWUgaW4gY29uY3VycmVudC5mdXR1cmVzLlByb2Nlc3NQb29sRXhlY3V0b3Igd2hlbgotICBzaHV0ZG93bigpIGlzIGNhbGxlZCwgd2l0aG91dCB3YWl0aW5nIGZvciB0aGUgZ2FyYmFnZSBjb2xsZWN0b3IgdG8ga2ljayBpbi4KKy0gSXNzdWUgIzEyMjczOiBSZW1vdmUgYXN0Ll9fdmVyc2lvbl9fLiBBU1QgY2hhbmdlcyBjYW4gYmUgYWNjb3VudGVkIGZvciBieQorICBjaGVja2luZyBzeXMudmVyc2lvbl9pbmZvIG9yIHN5cy5fbWVyY3VyaWFsLgorCistIFNpbGVuY2Ugc3B1cmlvdXMgImJyb2tlbiBwaXBlIiB0cmFjZWJhY2tzIHdoZW4gc2h1dHRpbmcgZG93biBhCisgIFByb2Nlc3NQb29sRXhlY3V0b3IuCisKKy0gRml4IHBvdGVudGlhbCByZXNvdXJjZSBsZWFrcyBpbiBjb25jdXJyZW50LmZ1dHVyZXMuUHJvY2Vzc1Bvb2xFeGVjdXRvcgorICBieSBqb2luaW5nIGFsbCBxdWV1ZXMgYW5kIHByb2Nlc3NlcyB3aGVuIHNodXRkb3duKCkgaXMgY2FsbGVkLgorCistIElzc3VlICMxMTYwMzogRml4IGEgY3Jhc2ggd2hlbiBfX3N0cl9fIGlzIHJlYm91bmQgYXMgX19yZXByX18uICBQYXRjaCBieQorICBBbmRyZWFzIFN0w7xocmsuCisKKy0gSXNzdWUgIzExMzIxOiBGaXggYSBjcmFzaCB3aXRoIG11bHRpcGxlIGltcG9ydHMgb2YgdGhlIF9waWNrbGUgbW9kdWxlIHdoZW4KKyAgZW1iZWRkaW5nIFB5dGhvbi4gIFBhdGNoIGJ5IEFuZHJlYXMgU3TDvGhyay4KKworLSBJc3N1ZSAjNjc1NTogQWRkIGdldF93Y2goKSBtZXRob2QgdG8gY3Vyc2VzLndpbmRvdyBjbGFzcy4gUGF0Y2ggYnkgScOxaWdvCisgIFNlcm5hLgorCistIEFkZCBjZ2kuY2xvc2Vsb2coKSBmdW5jdGlvbiB0byBjbG9zZSB0aGUgbG9nIGZpbGUuCiAKIC0gSXNzdWUgIzEyNTAyOiBhc3luY29yZTogZml4IHBvbGxpbmcgbG9vcCB3aXRoIEFGX1VOSVggc29ja2V0cy4KIAotLSBJc3N1ZSAjNDM3NjogY3R5cGVzIG5vdyBzdXBwb3J0cyBuZXN0ZWQgc3RydWN0dXJlcyB3aXRoIGFuIGVuZGlhbm5lc3MKLSAgZGlmZmVyZW50IHRoYW4gdGhhdCBvZiB0aGUgcGFyZW50IHN0cnVjdHVyZS4gIFBhdGNoIGJ5IFZsYWQgUmlzY3V0aWEuCistIElzc3VlICM0Mzc2OiBjdHlwZXMgbm93IHN1cHBvcnRzIG5lc3RlZCBzdHJ1Y3R1cmVzIGluIGEgZW5kaWFuIGRpZmZlcmVudCB0aGFuCisgIHRoZSBwYXJlbnQgc3RydWN0dXJlLiBQYXRjaCBieSBWbGFkIFJpc2N1dGlhLgogCiAtIFJhaXNlIFZhbHVlRXJyb3Igd2hlbiBhdHRlbXB0aW5nIHRvIHNldCB0aGUgX0NIVU5LX1NJWkUgYXR0cmlidXRlIG9mIGEKICAgVGV4dElPV3JhcHBlciB0byBhIGh1Z2UgdmFsdWUsIG5vdCBUeXBlRXJyb3IuCiAKLS0gSXNzdWUgIzEyNDkzOiBzdWJwcm9jZXNzOiBQb3Blbi5jb21tdW5pY2F0ZSgpIG5vdyBhbHNvIGhhbmRsZXMgRUlOVFIgZXJyb3JzCi0gIGlmIHRoZSBwcm9jZXNzIGhhcyBvbmx5IG9uZSBwaXBlLgorLSBJc3N1ZSAjMTI1MDQ6IENsb3NlIGZpbGUgaGFuZGxlcyBpbiBhIHRpbWVseSBtYW5uZXIgaW4gcGFja2FnaW5nLmRhdGFiYXNlLgorICBUaGlzIGZpeGVzIGEgYnVnIHdpdGggdGhlIHJlbW92ZSAodW5pbnN0YWxsKSBmZWF0dXJlIG9uIFdpbmRvd3MuCisKKy0gSXNzdWVzICMxMjE2OSBhbmQgIzEwNTEwOiBGYWN0b3Igb3V0IGNvZGUgdXNlZCBieSB2YXJpb3VzIHBhY2thZ2luZyBjb21tYW5kcworICB0byBtYWtlIEhUVFAgUE9TVCByZXF1ZXN0cywgYW5kIG1ha2Ugc3VyZSBpdCB1c2VzIENSTEYuCisKKy0gSXNzdWUgIzEyMDE2OiBNdWx0aWJ5dGUgQ0pLIGRlY29kZXJzIG5vdyByZXN5bmNocm9uaXplIGZhc3Rlci4gVGhleSBvbmx5CisgIGlnbm9yZSB0aGUgZmlyc3QgYnl0ZSBvZiBhbiBpbnZhbGlkIGJ5dGUgc2VxdWVuY2UuIEZvciBleGFtcGxlLAorICBiJ1x4ZmZcbicuZGVjb2RlKCdnYjIzMTInLCAncmVwbGFjZScpIGdpdmVzICdcdWZmZmRcbicgaW5zdGVhZCBvZiAnXHVmZmZkJy4KKworLSBJc3N1ZSAjMTI0NTk6IHRpbWUuc2xlZXAoKSBub3cgcmFpc2VzIGEgVmFsdWVFcnJvciBpZiB0aGUgc2xlZXAgbGVuZ3RoIGlzCisgIG5lZ2F0aXZlLCBpbnN0ZWFkIG9mIGFuIGluZmluaXRlIHNsZWVwIG9uIFdpbmRvd3Mgb3IgcmFpc2luZyBhbiBJT0Vycm9yIG9uCisgIExpbnV4IGZvciBleGFtcGxlLCB0byBoYXZlIHRoZSBzYW1lIGJlaGF2aW91ciBvbiBhbGwgcGxhdGZvcm1zLgogCiAtIElzc3VlICMxMjQ1MTogcHlkb2M6IGh0bWxfZ2V0ZmlsZSgpIG5vdyB1c2VzIHRva2VuaXplLm9wZW4oKSB0byBzdXBwb3J0Ci0gIFB5dGhvbiBtb2R1bGVzIHVzaW5nIGEgZW5jb2RpbmcgZGlmZmVyZW50IHRoYW4gVVRGLTggKHJlYWRpbmcgdGhlIGNvZGluZwotICBjb29raWUgb2YgdGhlIG1vZHVsZSkuCisgIFB5dGhvbiBzY3JpcHRzIHVzaW5nIGEgZW5jb2RpbmcgZGlmZmVyZW50IHRoYW4gVVRGLTggKHJlYWQgdGhlIGNvZGluZyBjb29raWUKKyAgb2YgdGhlIHNjcmlwdCkuCiAKLS0gSXNzdWUgIzEyNDUxOiBweWRvYzogaW1wb3J0ZmlsZSgpIG5vdyBvcGVucyB0aGUgUHl0aG9uIG1vZHVsZSBpbiBiaW5hcnkgbW9kZSwKLSAgaW5zdGVhZCBvZiB0ZXh0IG1vZGUgdXNpbmcgdGhlIGxvY2FsZSBlbmNvZGluZywgdG8gYXZvaWQgZW5jb2RpbmcgaXNzdWVzLgotCi0tIElzc3VlICMxMjQ1MTogcnVucHk6IHJ1bl9wYXRoKCkgbm93IG9wZW5zIHRoZSBQeXRob24gbW9kdWxlIGluIGJpbmFyeSBtb2RlLAotICBpbnN0ZWFkIG9mIHRleHQgbW9kZSB1c2luZyB0aGUgbG9jYWxlIGVuY29kaW5nLCB0byBzdXBwb3J0IG90aGVyIGVuY29kaW5ncwotICB0aGFuIFVURi04IChtb2R1bGVzIHVzaW5nIHRoZSBjb2RpbmcgY29va2llKS4KLQotLSBJc3N1ZSAjMTI0NTE6IHhtbC5kb20ucHVsbGRvbTogcGFyc2UoKSBub3cgb3BlbnMgZmlsZXMgaW4gYmluYXJ5IG1vZGUgaW5zdGVhZAotICBvZiB0aGUgdGV4dCBtb2RlICh1c2luZyB0aGUgbG9jYWxlIGVuY29kaW5nKSB0byBhdm9pZCBlbmNvZGluZyBpc3N1ZXMuCi0KLUV4dGVuc2lvbiBNb2R1bGVzCi0tLS0tLS0tLS0tLS0tLS0tLQotCi0tIElzc3VlICMxMjc2NDogRml4IGEgY3Jhc2ggaW4gY3R5cGVzIHdoZW4gdGhlIG5hbWUgb2YgYSBTdHJ1Y3R1cmUgZmllbGQgaXMgbm90Ci0gIGEgc3RyaW5nLgotCi0tIElzc3VlICMxMTI0MTogc3ViY2xhc3NlcyBvZiBjdHlwZXMuQXJyYXkgY2FuIG5vdyBiZSBzdWJjbGFzc2VkLgotCi0tIElzc3VlICMxMDMwOTogRGVmaW5lIF9HTlVfU09VUkNFIHNvIHRoYXQgbXJlbWFwKCkgZ2V0cyB0aGUgcHJvcGVyCi0gIHNpZ25hdHVyZS4gIFdpdGhvdXQgdGhpcywgYXJjaGl0ZWN0dXJlcyB3aGVyZSBzaXplb2Ygdm9pZCogIT0gc2l6ZW9mIGludCBhcmUKLSAgYnJva2VuLiAgUGF0Y2ggZ2l2ZW4gYnkgSGFsbHZhcmQgQiBGdXJ1c2V0aC4KLQotQy1BUEkKLS0tLS0tCi0KLUJ1aWxkCi0tLS0tLQotCi0tIElzc3VlICMxMjU2MDogQnVpbGQgbGlicHl0aG9uLnNvIG9uIE9wZW5CU0QuICBQYXRjaCBieSBTdGVmYW4gU3BlcmxpbmcuCi0KLS0gSXNzdWUgIzEyNTkyOiBNYWtlIFB5dGhvbiBidWlsZCBvbiBPcGVuQlNEIDUgKGFuZCBmdXR1cmUgbWFqb3IgcmVsZWFzZXMpLgotCi0tIElzc3VlICMxMjM3MjogUE9TSVggc2VtYXBob3JlcyBhcmUgYnJva2VuIG9uIEFJWDogZG9uJ3QgdXNlIHRoZW0uCi0KLVRvb2xzL0RlbW9zCi0tLS0tLS0tLS0tLQotCi0tIElzc3VlICMxMDYzOTogcmVpbmRlbnQucHkgbm8gbG9uZ2VyIGNvbnZlcnRzIG5ld2xpbmVzIGFuZCB3aWxsIHJhaXNlCi0gIGFuIGVycm9yIGlmIGF0dGVtcHRpbmcgdG8gY29udmVydCBhIGZpbGUgd2l0aCBtaXhlZCBuZXdsaW5lcy4KLQotVGVzdHMKLS0tLS0tCi0KLS0gSXNzdWUgIzEyMzMxOiBUaGUgdGVzdCBzdWl0ZSBmb3IgbGliMnRvMyBjYW4gbm93IHJ1biBmcm9tIGFuIGluc3RhbGxlZAotICBQeXRob24uCi0KLS0gSXNzdWUgIzEyNjI2OiBJbiByZWdydGVzdCwgYWxsb3cgdG8gZmlsdGVyIHRlc3RzIHVzaW5nIGEgZ2xvYiBmaWx0ZXIKLSAgd2l0aCB0aGUgYGAtbWBgIChvciBgYC0tbWF0Y2hgYCkgb3B0aW9uLiAgVGhpcyB3b3JrcyB3aXRoIGFsbCB0ZXN0IGNhc2VzCi0gIHVzaW5nIHRoZSB1bml0dGVzdCBtb2R1bGUuICBUaGlzIGlzIHVzZWZ1bCB3aXRoIGxvbmcgdGVzdCBzdWl0ZXMKLSAgc3VjaCBhcyB0ZXN0X2lvIG9yIHRlc3Rfc3VicHJvY2Vzcy4KLQotLSBJc3N1ZSAjMTI2MjQ6IEl0IGlzIG5vdyBwb3NzaWJsZSB0byBmYWlsIGFmdGVyIHRoZSBmaXJzdCBmYWlsdXJlIHdoZW4KLSAgcnVubmluZyBpbiB2ZXJib3NlIG1vZGUgKGBgLXZgYCBvciBgYC1XYGApLCBieSB1c2luZyB0aGUgYGAtLWZhaWxmYXN0YGAKLSAgKG9yIGBgLUdgYCkgb3B0aW9uIHRvIHJlZ3J0ZXN0LiAgVGhpcyBpcyB1c2VmdWwgd2l0aCBsb25nIHRlc3Qgc3VpdGVzCi0gIHN1Y2ggYXMgdGVzdF9pbyBvciB0ZXN0X3N1YnByb2Nlc3MuCi0KLS0gSXNzdWUgIzEyNTg3OiBDb3JyZWN0IGZhdWx0eSB0ZXN0IGZpbGUgYW5kIHJlZmVyZW5jZSBpbiB0ZXN0X3Rva2VuaXplLgotICAoUGF0Y2ggYnkgUm9iZXJ0IFhpYW8pCi0KLS0gVHJ5IGhhcmRlciB0byByZWFwIGRhbmdsaW5nIHRocmVhZHMgaW4gdGVzdC5zdXBwb3J0LnJlYXBfdGhyZWFkcygpLgotCi0tIElzc3VlICMxMjU3MzogQWRkIHJlc291cmNlIGNoZWNrcyBmb3IgZGFuZ2xpbmcgVGhyZWFkIGFuZCBQcm9jZXNzIG9iamVjdHMuCi0KLS0gSXNzdWUgIzEyNTQ5OiBDb3JyZWN0IHRlc3RfcGxhdGZvcm0gdG8gbm90IGZhaWwgd2hlbiBPUyBYIHJldHVybnMgJ3g4Nl82NCcKLSAgYXMgdGhlIHByb2Nlc3NvciB0eXBlIG9uIHNvbWUgTWFjIHN5c3RlbXMuCi0KLS0gQXZvaWQgZmFpbGluZyBpbiB0ZXN0X3JvYm90cGFyc2VyIHdoZW4gbXVlYmxlc21vcmFsZWRhLmNvbSBpcyBmbGFreSBhbmQKLSAgYW4gb3ZlcnplYWxvdXMgRE5TIHNlcnZpY2UgKGUuZy4gT3BlbkROUykgcmVkaXJlY3RzIHRvIGEgcGxhY2Vob2xkZXIKLSAgV2ViIHNpdGUuCi0KLS0gSXNzdWUgIzEyNDQwOiBXaGVuIHRlc3Rpbmcgd2hldGhlciBzb21lIGJpdHMgaW4gU1NMQ29udGV4dC5vcHRpb25zIGNhbiBiZQotICByZXNldCwgY2hlY2sgdGhlIHZlcnNpb24gb2YgdGhlIE9wZW5TU0wgaGVhZGVycyBQeXRob24gd2FzIGNvbXBpbGVkIGFnYWluc3QsCi0gIHJhdGhlciB0aGFuIHRoZSBydW50aW1lIHZlcnNpb24gb2YgdGhlIE9wZW5TU0wgbGlicmFyeS4KLQotLSBJc3N1ZSAjMTI0OTc6IEluc3RhbGwgdGVzdC9kYXRhIHRvIHByZXZlbnQgZmFpbHVyZXMgb2YgdGhlIHZhcmlvdXMgY29kZWNtYXBzCi0gIHRlc3RzLgotCi0tIElzc3VlICMxMjQ5NjogSW5zdGFsbCB0ZXN0L2NhcGF0aCBkaXJlY3RvcnkgdG8gcHJldmVudCB0ZXN0X2Nvbm5lY3RfY2FwYXRoCi0gIHRlc3RjYXNlIGZhaWx1cmUgaW4gdGVzdF9zc2wuCi0KLS0gSXNzdWUgIzEyNDY5OiBSdW4gIndha2V1cCIgc2lnbmFsIHRlc3RzIGluIHN1YnByb2Nlc3MgdG8gcnVuIHRoZSB0ZXN0IGluIGEKLSAgZnJlc2ggcHJvY2VzcyB3aXRoIG9ubHkgb25lIHRocmVhZCBhbmQgdG8gbm90IGNoYW5nZSBzaWduYWwgaGFuZGxpbmcgb2YgdGhlCi0gIHBhcmVudCBwcm9jZXNzLgotCi0tIElzc3VlICM4NzE2OiBBdm9pZCBjcmFzaGVzIGNhdXNlZCBieSBBcXVhIFRrIG9uIE9TWCB3aGVuIGF0dGVtcHRpbmcgdG8gcnVuCi0gIHRlc3RfdGsgb3IgdGVzdF90dGtfZ3Vpb25seSB1bmRlciBhIHVzZXJuYW1lIHRoYXQgaXMgbm90IGN1cnJlbnRseSBsb2dnZWQKLSAgaW4gdG8gdGhlIGNvbnNvbGUgd2luZG93c2VydmVyIChhcyBtYXkgYmUgdGhlIGNhc2UgdW5kZXIgYnVpbGRib3Qgb3Igc3NoKS4KLQotCi1XaGF0J3MgTmV3IGluIFB5dGhvbiAzLjIuMT8KLT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi0qUmVsZWFzZSBkYXRlOiAxMC1KdWwtMjAxMSoKLQotTGlicmFyeQotLS0tLS0tLQorLSBJc3N1ZSAjMTI0OTM6IHN1YnByb2Nlc3M6IFBvcGVuLmNvbW11bmljYXRlKCkgbm93IGFsc28gaGFuZGxlcyBFSU5UUiBlcnJvcnMKKyAgaWYgdGhlIHByb2Nlc3MgaGFzIG9ubHkgb25lIHBpcGUuCiAKIC0gSXNzdWUgIzEyNDY3OiB3YXJuaW5nczogZml4IGEgcmFjZSBjb25kaXRpb24gaWYgYSB3YXJuaW5nIGlzIGVtaXR0ZWQgYXQKICAgc2h1dGRvd24sIGlmIGdsb2JhbHMoKVsnX19maWxlX18nXSBpcyBOb25lLgogCi1UZXN0cwotLS0tLS0KKy0gSXNzdWUgIzEyNDUxOiBweWRvYzogaW1wb3J0ZmlsZSgpIG5vdyBvcGVucyB0aGUgUHl0aG9uIHNjcmlwdCBpbiBiaW5hcnkgbW9kZSwKKyAgaW5zdGVhZCBvZiB0ZXh0IG1vZGUgdXNpbmcgdGhlIGxvY2FsZSBlbmNvZGluZywgdG8gYXZvaWQgZW5jb2RpbmcgaXNzdWVzLgogCi0tIFNraXAgbmV0d29yayB0ZXN0cyB3aGVuIGdldGFkZHJpbmZvKCkgcmV0dXJucyBFQUlfQUdBSU4sIG1lYW5pbmcgYSB0ZW1wb3JhcnkKLSAgZmFpbHVyZSBpbiBuYW1lIHJlc29sdXRpb24uCistIElzc3VlICMxMjQ1MTogcnVucHk6IHJ1bl9wYXRoKCkgbm93IG9wZW5zIHRoZSBQeXRob24gc2NyaXB0IGluIGJpbmFyeSBtb2RlLAorICBpbnN0ZWFkIG9mIHRleHQgbW9kZSB1c2luZyB0aGUgbG9jYWxlIGVuY29kaW5nLCB0byBzdXBwb3J0IG90aGVyIGVuY29kaW5ncworICB0aGFuIFVURi04IChzY3JpcHRzIHVzaW5nIHRoZSBjb2RpbmcgY29va2llKS4KIAotLSBJc3N1ZSAjMTE4MTI6IFNvbHZlIHRyYW5zaWVudCBzb2NrZXQgZmFpbHVyZSB0byBjb25uZWN0IHRvICdsb2NhbGhvc3QnCi0gIGluIHRlc3RfdGVsbmV0bGliLnB5LgotCi0tIFNvbHZlZCBhIHBvdGVudGlhbCBkZWFkbG9jayBpbiB0ZXN0X3RlbG5ldGxpYi5weS4gUmVsYXRlZCB0byBpc3N1ZSAjMTE4MTIuCi0KLS0gQXZvaWQgZmFpbGluZyBpbiB0ZXN0X3VybGxpYm5ldC50ZXN0X2JhZF9hZGRyZXNzIHdoZW4gc29tZSBvdmVyemVhbG91cwotICBETlMgc2VydmljZSAoZS5nLiBPcGVuRE5TKSByZXNvbHZlcyBhIG5vbi1leGlzdGVudCBkb21haW4gbmFtZS4gIFRoZSB0ZXN0Ci0gIGlzIG5vdyBza2lwcGVkIGluc3RlYWQuCi0KLQotV2hhdCdzIE5ldyBpbiBQeXRob24gMy4yLjEgcmVsZWFzZSBjYW5kaWRhdGUgMj8KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLSpSZWxlYXNlIGRhdGU6IDAzLUp1bC0yMDExKgotCi1Db3JlIGFuZCBCdWlsdGlucwotLS0tLS0tLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjMTIyOTE6IFlvdSBjYW4gbm93IGxvYWQgbXVsdGlwbGUgbWFyc2hhbGxlZCBvYmplY3RzIGZyb20gYSBzdHJlYW0sIHdpdGgKLSAgb3RoZXIgZGF0YSBpbnRlcmxlYXZlZCBiZXR3ZWVuIG1hcnNoYWxsZWQgb2JqZWN0cy4KLQotLSBJc3N1ZSAjMTIwODQ6IG9zLnN0YXQgb24gV2luZG93cyBub3cgd29ya3MgcHJvcGVybHkgd2l0aCByZWxhdGl2ZSBzeW1ib2xpYwotICBsaW5rcyB3aGVuIGNhbGxlZCBmcm9tIGFueSBkaXJlY3RvcnkuCi0KLS0gSXNzdWUgIzExOTU6IG15X2ZnZXRzKCkgbm93IGFsd2F5cyBjbGVhcnMgZXJyb3JzIGJlZm9yZSBjYWxsaW5nIGZnZXRzKCkuIEZpeAotICB0aGUgZm9sbG93aW5nIGNhc2U6IHN5cy5zdGRpbi5yZWFkKCkgc3RvcHBlZCB3aXRoIENUUkwrZCAoZW5kIG9mIGZpbGUpLAotICByYXdfaW5wdXQoKSBpbnRlcnJ1cHRlZCBieSBDVFJMK2MuCi0KLS0gSXNzdWUgIzk2NzA6IEluY3JlYXNlIHRoZSBkZWZhdWx0IHN0YWNrIHNpemUgZm9yIHNlY29uZGFyeSB0aHJlYWRzIG9uIE1hYyBPUyBYCi0gIGFuZCBGcmVlQlNEIHRvIHJlZHVjZSB0aGUgY2hhbmNlcyBvZiBhIGNyYXNoIGluc3RlYWQgb2YgYSAibWF4aW11bSByZWN1cnNpb24KLSAgZGVwdGgiIFJ1bnRpbWVFcnJvciBleGNlcHRpb24gKHBhdGNoIGJ5IFJvbmFsZCBPdXNzb3JlbikuCi0KLUxpYnJhcnkKLS0tLS0tLS0KKy0gSXNzdWUgIzEyNDUxOiB4bWwuZG9tLnB1bGxkb206IHBhcnNlKCkgbm93IG9wZW5zIGZpbGVzIGluIGJpbmFyeSBtb2RlIGluc3RlYWQKKyAgb2YgdGhlIHRleHQgbW9kZSAodXNpbmcgdGhlIGxvY2FsZSBlbmNvZGluZykgdG8gYXZvaWQgZW5jb2RpbmcgaXNzdWVzLgogCiAtIElzc3VlICMxMjE0NzogQWRqdXN0IHRoZSBuZXctaW4tMy4yIHNtdHBsaWIuc2VuZF9tZXNzYWdlIG1ldGhvZCBmb3IgYmV0dGVyCi0gIGNvbmZvcm1hbmNlIHRvIHRoZSBSRkNzOiBjb3JyZWN0bHkgaGFuZGxlIFNlbmRlciBhbmQgUmVzZW50IGhlYWRlcnMuCisgIGNvbmZvcm1hbmNlIHRvIHRoZSBSRkNzOiAgY29ycmVjdGx5IGhhbmRsZSBTZW5kZXIgYW5kIFJlc2VudC0gaGVhZGVycy4KIAogLSBJc3N1ZSAjMTIzNTI6IEZpeCBhIGRlYWRsb2NrIGluIG11bHRpcHJvY2Vzc2luZy5IZWFwIHdoZW4gYSBibG9jayBpcyBmcmVlZCBieQogICB0aGUgZ2FyYmFnZSBjb2xsZWN0b3Igd2hpbGUgdGhlIEhlYXAgbG9jayBpcyBoZWxkLgogCistIElzc3VlICMxMjQ2MjogdGltZS5zbGVlcCgpIG5vdyBjYWxscyBpbW1lZGlhdGx5IHRoZSAoUHl0aG9uKSBzaWduYWwgaGFuZGxlcgorICBpZiBpdCBpcyBpbnRlcnJ1cHRlZCBieSBhIHNpZ25hbCwgaW5zdGVhZCBvZiBoYXZpbmcgdG8gd2FpdCB1bnRpbCB0aGUgbmV4dAorICBpbnN0cnVjdGlvbi4KKworLSBJc3N1ZSAjMTI0NDI6IG5ldyBzaHV0aWwuZGlza191c2FnZSBmdW5jdGlvbiwgcHJvdmlkaW5nIHRvdGFsLCB1c2VkIGFuZCBmcmVlCisgIGRpc2sgc3BhY2Ugc3RhdGlzdGljcy4KKwogLSBJc3N1ZSAjMTI0NTE6IFRoZSBYSW5jbHVkZSBkZWZhdWx0IGxvYWRlciBvZiB4bWwuZXRyZWUgbm93IGRlY29kZXMgZmlsZXMgZnJvbQogICBVVEYtOCBpbnN0ZWFkIG9mIHRoZSBsb2NhbGUgZW5jb2RpbmcgaWYgdGhlIGVuY29kaW5nIGlzIG5vdCBzcGVjaWZpZWQuIEl0IG5vdwotICBhbHNvIG9wZW5zIFhNTCBmaWxlcyBmb3IgdGhlIHBhcnNlciBpbiBiaW5hcnkgbW9kZSBpbnN0ZWFkIG9mIHRoZSB0ZXh0IG1vZGUgdG8KLSAgYXZvaWQgZW5jb2RpbmcgaXNzdWVzLgotCi0tIElzc3VlICMxMjQ1MTogZG9jdGVzdC5kZWJ1Z19zY3JpcHQoKSBkb2Vzbid0IGNyZWF0ZSBhIHRlbXBvcmFyeSBmaWxlIGFueW1vcmUKKyAgYWxzbyBvcGVucyBYTUwgZmlsZXMgZm9yIHRoZSBwYXJzZXIgaW4gYmluYXJ5IG1vZGUgaW5zdGVhZCBvZiB0aGUgdGV4dCBtb2RlCiAgIHRvIGF2b2lkIGVuY29kaW5nIGlzc3Vlcy4KIAotLSBJc3N1ZSAjMTI0NTE6IHB5ZG9jLnN5bm9wc2lzKCkgbm93IHJlYWRzIHRoZSBlbmNvZGluZyBjb29raWUgaWYgYXZhaWxhYmxlLCB0bwotICByZWFkIHRoZSBQeXRob24gbW9kdWxlIGZyb20gdGhlIHJpZ2h0IGVuY29kaW5nLgorLSBJc3N1ZSAjMTI0NTE6IGRvY3Rlc3QuZGVidWdfc2NyaXB0KCkgZG9lc24ndCBjcmVhdGUgYSB0ZW1wb3JhcnkgZmlsZQorICBhbnltb3JlIHRvIGF2b2lkIGVuY29kaW5nIGlzc3Vlcy4KKworLSBJc3N1ZSAjMTI0NTE6IHB5ZG9jLnN5bm9wc2lzKCkgbm93IHJlYWRzIHRoZSBlbmNvZGluZyBjb29raWUgaWYgYXZhaWxhYmxlLAorICB0byByZWFkIHRoZSBQeXRob24gc2NyaXB0IGZyb20gdGhlIHJpZ2h0IGVuY29kaW5nLgogCiAtIElzc3VlICMxMjQ1MTogZGlzdHV0aWxzIG5vdyBvcGVucyB0aGUgc2V0dXAgc2NyaXB0IGluIGJpbmFyeSBtb2RlIHRvIHJlYWQgdGhlCiAgIGVuY29kaW5nIGNvb2tpZSwgaW5zdGVhZCBvZiBvcGVuaW5nIGl0IGluIFVURi04LgpAQCAtOTMxLDE0ICsxMzc2LDMyIEBACiAgIHN0aWxsIHBvc3NpYmxlIHRvIGdsb2JhbGx5IG92ZXJyaWRlIHRoZSBkZWZhdWx0IGJ5IHNldHRpbmcKICAgTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUIGJlZm9yZSBsYXVuY2hpbmcgdGhlIGludGVycHJldGVyOyBpdHMgdmFsdWUgbXVzdCBiZQogICBncmVhdGVyIG9yIGVxdWFsIHRvIHRoZSBkZWZhdWx0IHZhbHVlLCB0aGUgdmFsdWUgd2l0aCB3aGljaCB0aGUgaW50ZXJwcmV0ZXIKLSAgd2FzIGJ1aWx0LgorICB3YXMgYnVpbHQuICBBbHNvLCBpbXBsZW1lbnQgdGhlIHNhbWUgaGFuZGxpbmcgaW4gcGFja2FnaW5nLgorCistIElzc3VlICMxMjQyMjogSW4gdGhlIGNvcHkgbW9kdWxlLCBkb24ndCBzdG9yZSBvYmplY3RzIHRoYXQgYXJlIHRoZWlyIG93biBjb3B5CisgIGluIHRoZSBtZW1vIGRpY3QuCisKKy0gSXNzdWUgIzEyMzAzOiBBZGQgc2lnd2FpdGluZm8oKSBhbmQgc2lndGltZWR3YWl0KCkgdG8gdGhlIHNpZ25hbCBtb2R1bGUuCisKKy0gSXNzdWUgIzEyNDA0OiBSZW1vdmUgQzg5IGluY29tcGF0aWJsZSBjb2RlIGZyb20gbW1hcCBtb2R1bGUuIFBhdGNoIGJ5IEFraXJhCisgIEtpdGFkYS4KKworLSBJc3N1ZSAjMTg3NDogZW1haWwgbm93IGRldGVjdHMgYW5kIHJlcG9ydHMgYXMgYSBkZWZlY3QgdGhlIHByZXNlbmNlIG9mCisgIGFueSBDVEUgb3RoZXIgdGhhbiA3Yml0LCA4Yml0LCBvciBiaW5hcnkgb24gYSBtdWx0aXBhcnQuCiAKIC0gSXNzdWUgIzEyMzgzOiBGaXggc3VicHJvY2VzcyBtb2R1bGUgd2l0aCBlbnY9e306IGRvbid0IGNvcHkgdGhlIGVudmlyb25tZW50CiAgIHZhcmlhYmxlcywgc3RhcnQgd2l0aCBhbiBlbXB0eSBlbnZpcm9ubWVudC4KIAotLSBJc3N1ZSAjMTE1ODQ6IGVtYWlsLmhlYWRlci5kZWNvZGVfaGVhZGVyIG5vIGxvbmdlciBmYWlscyBpZiB0aGUgaGVhZGVyIHBhc3NlZAotICB0byBpdCBpcyBhIEhlYWRlciBvYmplY3QsIGFuZCBIZWFkZXIvbWFrZV9oZWFkZXIgbm8gbG9uZ2VyIGZhaWwgaWYgZ2l2ZW4KLSAgYmluYXJ5IHVua25vd24tOGJpdCBpbnB1dC4KKy0gSXNzdWUgIzExNjM3OiBGaXggc3VwcG9ydCBmb3IgaW1wb3J0aW5nIHBhY2thZ2luZyBzZXR1cCBob29rcyBmcm9tIHRoZQorICBwcm9qZWN0IGRpcmVjdG9yeS4KKworLSBJc3N1ZSAjNjc3MTogTW92ZWQgdGhlIGN1cnNlcy53cmFwcGVyIGZ1bmN0aW9uIGZyb20gdGhlIHNpbmdsZS1mdW5jdGlvbgorICB3cmFwcGVyIG1vZHVsZSBpbnRvIF9faW5pdF9fLCBlbGltaW5hdGluZyB0aGUgbW9kdWxlLiAgU2luY2UgX19pbml0X18gd2FzCisgIGFscmVhZHkgaW1wb3J0aW5nIHRoZSBmdW5jdGlvbiB0byBjdXJzZXMud3JhcHBlciwgdGhlcmUgaXMgbm8gQVBJIGNoYW5nZS4KKworLSBJc3N1ZSAjMTE1ODQ6IGVtYWlsLmhlYWRlci5kZWNvZGVfaGVhZGVyIG5vIGxvbmdlciBmYWlscyBpZiB0aGUgaGVhZGVyCisgIHBhc3NlZCB0byBpdCBpcyBhIEhlYWRlciBvYmplY3QsIGFuZCBIZWFkZXIvbWFrZV9oZWFkZXIgbm8gbG9uZ2VyIGZhaWwKKyAgaWYgZ2l2ZW4gYmluYXJ5IHVua25vd24tOGJpdCBpbnB1dC4KIAogLSBJc3N1ZSAjMTE3MDA6IG1haWxib3ggcHJveHkgb2JqZWN0IGNsb3NlIG1ldGhvZHMgY2FuIG5vdyBiZSBjYWxsZWQgbXVsdGlwbGUKICAgdGltZXMgd2l0aG91dCBlcnJvci4KQEAgLTk0OSwzNSArMTQxMiwxMDUgQEAKICAgY29ubmVjdGlvbiBpZiBpdHMgZ2V0cmVzcG9uc2UoKSBtZXRob2QgZmFpbHMgd2l0aCBhIHNvY2tldCBlcnJvci4gUGF0Y2gKICAgd3JpdHRlbiBieSBFemlvIE1lbG90dGkuCiAKKy0gSXNzdWUgIzEyMjQwOiBBbGxvdyBtdWx0aXBsZSBzZXR1cCBob29rcyBpbiBwYWNrYWdpbmcncyBzZXR1cC5jZmcgZmlsZXMuCisgIE9yaWdpbmFsIHBhdGNoIGJ5IEVyaWsgQnJheS4KKwogLSBJc3N1ZSAjOTI4NDogQWxsb3cgaW5zcGVjdC5maW5kc291cmNlKCkgdG8gZmluZCB0aGUgc291cmNlIG9mIGRvY3Rlc3QKICAgZnVuY3Rpb25zLgogCistIElzc3VlICMxMTU5NTogRml4IGFzc29ydGVkIGJ1Z3MgaW4gcGFja2FnaW5nLnV0aWwuY2ZnX3RvX2FyZ3MsIGEKKyAgY29tcGF0aWJpbGl0eSBoZWxwZXIgZm9yIHRoZSBkaXN0dXRpbHMtcGFja2FnaW5nIHRyYW5zaXRpb24uICBPcmlnaW5hbCBwYXRjaAorICBieSBFcmlrIEJyYXkuCisKKy0gSXNzdWUgIzEyMjg3OiBJbiBvc3NhdWRpb2RldiwgY2hlY2sgdGhhdCB0aGUgZGV2aWNlIGlzbid0IGNsb3NlZCBpbiBzZXZlcmFsCisgIG1ldGhvZHMuCisKIC0gSXNzdWUgIzEyMDA5OiBGaXhlZCByZWdyZXNzaW9uIGluIG5ldHJjIGZpbGUgY29tbWVudCBoYW5kbGluZy4KIAorLSBJc3N1ZSAjMTIyNDY6IFdhcm4gYW5kIGZhaWwgd2hlbiB0cnlpbmcgdG8gaW5zdGFsbCBhIHRoaXJkLXBhcnR5IHByb2plY3QgZnJvbQorICBhbiB1bmluc3RhbGxlZCBQeXRob24gKGJ1aWx0IGluIGEgc291cmNlIGNoZWNrb3V0KS4gIE9yaWdpbmFsIHBhdGNoIGJ5CisgIFRzaGVwYW5nIExla2hvbmtob2JlLgorCiAtIElzc3VlICMxMDY5NDogemlwZmlsZSBub3cgaWdub3JlcyBnYXJiYWdlIGF0IHRoZSBlbmQgb2YgYSB6aXBmaWxlLgogCiAtIElzc3VlICMxMjI4MzogRml4ZWQgcmVncmVzc2lvbiBpbiBzbXRwbGliIHF1b3Rpbmcgb2YgbGVhZGluZyBkb3RzIGluIERBVEEuCiAKKy0gSXNzdWUgIzEwNDI0OiBBcmdwYXJzZSBub3cgaW5jbHVkZXMgdGhlIG5hbWVzIG9mIHRoZSBtaXNzaW5nIHJlcXVpcmVkCisgIGFyZ3VtZW50cyBpbiB0aGUgbWlzc2luZyBhcmd1bWVudHMgZXJyb3IgbWVzc2FnZS4KKwogLSBJc3N1ZSAjMTIxNjg6IFN5c0xvZ0hhbmRsZXIgbm93IGFsbG93cyBOVUwgdGVybWluYXRpb24gdG8gYmUgY29udHJvbGxlZCB1c2luZwogICBhIG5ldyAnYXBwZW5kX251bCcgYXR0cmlidXRlIG9uIHRoZSBoYW5kbGVyLgogCiAtIElzc3VlICMxMTU4MzogU3BlZWQgdXAgb3MucGF0aC5pc2RpciBvbiBXaW5kb3dzIGJ5IHVzaW5nIEdldEZpbGVBdHRyaWJ1dGVzCiAgIGluc3RlYWQgb2Ygb3Muc3RhdC4KIAorLSBJc3N1ZSAjMTIwMjE6IE1ha2UgbW1hcCdzIHJlYWQoKSBtZXRob2QgYXJndW1lbnQgb3B0aW9uYWwuIFBhdGNoIGJ5IFBldHJpCisgIExlaHRpbmVuLgorCistIElzc3VlICM5MjA1OiBjb25jdXJyZW50LmZ1dHVyZXMuUHJvY2Vzc1Bvb2xFeGVjdXRvciBub3cgZGV0ZWN0cyBraWxsZWQKKyAgY2hpbGRyZW4gYW5kIHJhaXNlcyBCcm9rZW5Qcm9jZXNzUG9vbCBpbiBzdWNoIGEgc2l0dWF0aW9uLiAgUHJldmlvdXNseSBpdAorICB3b3VsZCByZWxpYWJseSBmcmVlemUvZGVhZGxvY2suCisKKy0gSXNzdWUgIzEyMDQwOiBFeHBvc2UgYSBuZXcgYXR0cmlidXRlIGBgc2VudGluZWxgYCBvbiBpbnN0YW5jZXMgb2YKKyAgOmNsYXNzOmBtdWx0aXByb2Nlc3NpbmcuUHJvY2Vzc2AuICBBbHNvLCBmaXggUHJvY2Vzcy5qb2luKCkgdG8gbm90IHVzZQorICBwb2xsaW5nIGFueW1vcmUsIHdoZW4gZ2l2ZW4gYSB0aW1lb3V0LgorCistIElzc3VlICMxMTg5MzogUmVtb3ZlIG9ic29sZXRlIGludGVybmFsIHdyYXBwZXIgY2xhc3MgYGBTU0xGYWtlRmlsZWBgIGluIHRoZQorICBzbXRwbGliIG1vZHVsZS4gIFBhdGNoIGJ5IENhdGFsaW4gSWFjb2IuCisKKy0gSXNzdWUgIzEyMDgwOiBGaXggYSBEZWNpbWFsLnBvd2VyKCkgY2FzZSB0aGF0IHRvb2sgYW4gdW5yZWFzb25hYmx5IGxvbmcgdGltZQorICB0byBjb21wdXRlLgorCistIElzc3VlICMxMjIyMTogUmVtb3ZlIF9fdmVyc2lvbl9fIGF0dHJpYnV0ZXMgZnJvbSBweWV4cGF0LCBwaWNrbGUsIHRhcmZpbGUsCisgIHB5ZG9jLCB0a2ludGVyLCBhbmQgeG1sLnBhcnNlcnMuZXhwYXQuIFRoaXMgd2VyZSB1c2VsZXNzIHZlcnNpb24gY29uc3RhbnRzCisgIGxlZnQgb3ZlciBmcm9tIHRoZSBNZXJjdXJpYWwgdHJhbnNpdGlvbgorCiAtIE5hbWVkIHR1cGxlcyBub3cgd29yayBjb3JyZWN0bHkgd2l0aCB2YXJzKCkuCiAKIC0gSXNzdWUgIzEyMDg1OiBGaXggYW4gYXR0cmlidXRlIGVycm9yIGluIHN1YnByb2Nlc3MuUG9wZW4gZGVzdHJ1Y3RvciBpZiB0aGUKICAgY29uc3RydWN0b3IgaGFzIGZhaWxlZCwgZS5nLiBiZWNhdXNlIG9mIGFuIHVuZGVjbGFyZWQga2V5d29yZCBhcmd1bWVudC4gUGF0Y2gKICAgd3JpdHRlbiBieSBPbGVnIE9zaG15YW4uCiAKLS0gSXNzdWUgIzk4NTA2NDogTWFrZSBwbGlzdGxpYiBtb3JlIHJlc2lsaWVudCB0byBmYXVsdHkgaW5wdXQgcGxpc3RzLiAgUGF0Y2ggYnkKLSAgTWhlciBNb3ZzaXN5YW4uCistIElzc3VlICMxMjAyODogTWFrZSB0aHJlYWRpbmcuX2dldF9pZGVudCgpIHB1YmxpYywgcmVuYW1lIGl0IHRvCisgIHRocmVhZGluZy5nZXRfaWRlbnQoKSBhbmQgZG9jdW1lbnQgaXQuIFRoaXMgZnVuY3Rpb24gd2FzIGFscmVhZHkgdXNlZCB1c2luZworICBfdGhyZWFkLmdldF9pZGVudCgpLgorCistIElzc3VlICMxMjE3MTogSW5jcmVtZW50YWxFbmNvZGVyLnJlc2V0KCkgb2YgQ0pLIGNvZGVjcyAobXVsdGlieXRlY29kZWMpIGNhbGxzCisgIGVuY3Jlc2V0KCkgaW5zdGVhZCBvZiBkZWNyZXNldCgpLgorCistIElzc3VlICMxMjIxODogUmVtb3ZlZCB3c2dpcmVmLmVnZy1pbmZvLgorCistIElzc3VlICMxMjE5NjogQWRkIHBpcGUyKCkgdG8gdGhlIG9zIG1vZHVsZS4KKworLSBJc3N1ZSAjOTg1MDY0OiBNYWtlIHBsaXN0bGliIG1vcmUgcmVzaWxpZW50IHRvIGZhdWx0eSBpbnB1dCBwbGlzdHMuCisgIFBhdGNoIGJ5IE1oZXIgTW92c2lzeWFuLgorCistIElzc3VlICMxNjI1OiBCWjJGaWxlIGFuZCBiejIuZGVjb21wcmVzcygpIG5vdyBzdXBwb3J0IG11bHRpLXN0cmVhbSBmaWxlcy4KKyAgSW5pdGlhbCBwYXRjaCBieSBOaXIgQWlkZXMuCisKKy0gSXNzdWUgIzEyMTc1OiBCdWZmZXJlZFJlYWRlci5yZWFkKC0xKSBub3cgY2FsbHMgcmF3LnJlYWRhbGwoKSBpZiBhdmFpbGFibGUuCisKKy0gSXNzdWUgIzEyMTc1OiBGaWxlSU8ucmVhZGFsbCgpIG5vdyBvbmx5IHJlYWRzIHRoZSBmaWxlIHBvc2l0aW9uIGFuZCBzaXplCisgIG9uY2UuCiAKIC0gSXNzdWUgIzEyMTc1OiBSYXdJT0Jhc2UucmVhZGFsbCgpIG5vdyByZXR1cm5zIE5vbmUgaWYgcmVhZCgpIHJldHVybnMgTm9uZS4KIAogLSBJc3N1ZSAjMTIxNzU6IEZpbGVJTy5yZWFkYWxsKCkgbm93IHJhaXNlcyBhIFZhbHVlRXJyb3IgaW5zdGVhZCBvZiBhbiBJT0Vycm9yCiAgIGlmIHRoZSBmaWxlIGlzIGNsb3NlZC4KIAorLSBJc3N1ZSAjMTExMDk6IE5ldyBzZXJ2aWNlX2FjdGlvbiBtZXRob2QgZm9yIEJhc2VTZXJ2ZXIsIHVzZWQgYnkgRm9ya2luZ01peGluCisgIGNsYXNzIGZvciBjbGVhbnVwLiBJbml0aWFsIFBhdGNoIGJ5IEp1c3RpbiBXYXJrLgorCistIElzc3VlICMxMjA0NTogQXZvaWQgZHVwbGljYXRlIGV4ZWN1dGlvbiBvZiBjb21tYW5kIGluCisgIGN0eXBlcy51dGlsLl9nZXRfc29uYW1lKCkuICBQYXRjaCBieSBTaWppbiBKb3NlcGguCisKKy0gSXNzdWUgIzEwODE4OiBSZW1vdmUgdGhlIFRrIEdVSSBhbmQgdGhlIHNlcnZlKCkgZnVuY3Rpb24gb2YgdGhlIHB5ZG9jIG1vZHVsZSwKKyAgcHlkb2MgLWcgaGFzIGJlZW4gZGVwcmVjYXRlZCBpbiBQeXRob24gMy4yIGFuZCBpdCBoYXMgYSBuZXcgZW5oYW5jZWQgd2ViCisgIHNlcnZlci4KKworLSBJc3N1ZSAjMTQ0MTUzMDogSW4gaW1hcGxpYiwgcmVhZCB0aGUgZGF0YSBpbiBvbmUgY2h1bmsgdG8gc3BlZWQgdXAgbGFyZ2UKKyAgcmVhZHMgYW5kIHNpbXBsaWZ5IGNvZGUuCisKIC0gSXNzdWUgIzEyMDcwOiBGaXggdGhlIE1ha2VmaWxlIHBhcnNlciBvZiB0aGUgc3lzY29uZmlnIG1vZHVsZSB0byBoYW5kbGUKICAgY29ycmVjdGx5IHJlZmVyZW5jZXMgdG8gImJvZ3VzIHZhcmlhYmxlIiAoZS5nLiAicHJlZml4PSQvb3B0L3B5dGhvbiIpLgogCkBAIC05ODUsODEgKzE1MTgsMzAgQEAKICAgdGhlaXIgZW5jb2RlKCkgbWV0aG9kIGFueW1vcmUsIGJ1dCBjb250aW51ZSB0byBjYWxsIHRoZSByZXNldCgpIG1ldGhvZCBpZiB0aGUKICAgZmluYWwgYXJndW1lbnQgaXMgVHJ1ZS4KIAotLSBJc3N1ZSAjNTcxNTogSW4gc29ja2V0c2VydmVyLCBjbG9zZSB0aGUgc2VydmVyIHNvY2tldCBpbiB0aGUgY2hpbGQgcHJvY2Vzcy4KKy0gSXNzdWUgIzEyMDQ5OiBBZGQgUkFORF9ieXRlcygpIGFuZCBSQU5EX3BzZXVkb19ieXRlcygpIGZ1bmN0aW9ucyB0byB0aGUgc3NsCisgIG1vZHVsZS4KIAotLSBDb3JyZWN0IGxvb2t1cCBvZiBfX2Rpcl9fIG9uIG9iamVjdHMuIEFtb25nIG90aGVyIHRoaW5ncywgdGhpcyBjYXVzZXMgZXJyb3JzCi0gIGJlc2lkZXMgQXR0cmlidXRlRXJyb3IgZm91bmQgb24gbG9va3VwIHRvIGJlIHByb3BhZ2F0ZWQuCistIElzc3VlICM2NTAxOiBvcy5kZXZpY2VfZW5jb2RpbmcoKSByZXR1cm5zIE5vbmUgb24gV2luZG93cyBpZiB0aGUgYXBwbGljYXRpb24KKyAgaGFzIG5vIGNvbnNvbGUuCisKKy0gSXNzdWUgIzEyMTA1OiBBZGQgT19DTE9FWEVDIHRvIHRoZSBvcyBtb2R1bGUuCisKKy0gSXNzdWUgIzEyMDc5OiBEZWNpbWFsKCdJbmZpbml0eScpLmZtYShEZWNpbWFsKCcwJyksICgzLjkxMjI0MzE4MTI2Nzg2ZSsxOSswaikpCisgIG5vdyByYWlzZXMgVHlwZUVycm9yIChyZWZsZWN0aW5nIHRoZSBpbnZhbGlkIHR5cGUgb2YgdGhlIDNyZCBhcmd1bWVudCkgcmF0aGVyCisgIHRoYW4gRGVjaW1hbC5JbnZhbGlkT3BlcmF0aW9uLgogCiAtIElzc3VlICMxMjEyNDogemlwaW1wb3J0IGRvZXNuJ3Qga2VlcCBhIHJlZmVyZW5jZSB0byB6bGliLmRlY29tcHJlc3MoKSBhbnltb3JlCiAgIHRvIGJlIGFibGUgdG8gdW5sb2FkIHRoZSBtb2R1bGUuCiAKKy0gQWRkIHRoZSBwYWNrYWdpbmcgbW9kdWxlLCBhbiBpbXByb3ZlZCBmb3JrIG9mIGRpc3R1dGlscyAoYWxzbyBrbm93biBhcworICBkaXN0dXRpbHMyKS4KKwogLSBJc3N1ZSAjMTIwNjU6IGNvbm5lY3RfZXgoKSBvbiBhbiBTU0wgc29ja2V0IG5vdyByZXR1cm5zIHRoZSBvcmlnaW5hbCBlcnJubwogICB3aGVuIHRoZSBzb2NrZXQncyB0aW1lb3V0IGV4cGlyZXMgKGl0IHVzZWQgdG8gcmV0dXJuIE5vbmUpLgogCi1FeHRlbnNpb24gTW9kdWxlcwotLS0tLS0tLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjMTI0MDQ6IFJlbW92ZSBDODkgaW5jb21wYXRpYmxlIGNvZGUgZnJvbSBtbWFwIG1vZHVsZS4gUGF0Y2ggYnkgQWtpcmEKLSAgS2l0YWRhLgotCi0tIElzc3VlICMxMjIyMTogUmVwbGFjZSBweWV4cGF0Ll9fdmVyc2lvbl9fIHdpdGggdGhlIFB5dGhvbiB2ZXJzaW9uLgotCi1CdWlsZAotLS0tLS0KLQotLSBJc3N1ZSAjODc0NjogQ29ycmVjdCBmYXVsdHkgY29uZmlndXJlIGNoZWNrcyBzbyB0aGF0IG9zLmNoZmxhZ3MoKSBhbmQKLSAgb3MubGNoZmxhZ3MoKSBhcmUgb25jZSBhZ2FpbiBidWlsdCBvbiBzeXN0ZW1zIHRoYXQgc3VwcG9ydCB0aGVzZSBmdW5jdGlvbnMKLSAgKCpCU0QgYW5kIE9TIFgpLiAgQWxzbyBhZGQgbmV3IHN0YXQgZmlsZSBmbGFncyBmb3IgT1MgWCAoVUZfSElEREVOIGFuZAotICBVRl9DT01QUkVTU0VEKS4KLQotLSBJc3N1ZSAjMTEyMTc6IEZvciA2NC1iaXQvMzItYml0IE1hYyBPUyBYIHVuaXZlcnNhbCBmcmFtZXdvcmsgYnVpbGRzLCBlbnN1cmUKLSAgIm1ha2UgaW5zdGFsbCIgY3JlYXRlcyBzeW1saW5rcyBpbiAtLXByZWZpeCBiaW4gZm9yIHRoZSAiLTMyIiBmaWxlcyBpbiB0aGUKLSAgZnJhbWV3b3JrIGJpbiBkaXJlY3RvcnkgbGlrZSB0aGUgaW5zdGFsbGVyIGRvZXMuCi0KLQotVGVzdHMKLS0tLS0tCi0KLS0gSXNzdWUgIzEyNDA3OiBFeHBsaWNpdGx5IHNraXAgdGVzdF9jYXBpLkVtYmVkZGluZ1Rlc3QgdW5kZXIgV2luZG93cy4KLQotLSBJc3N1ZSAjMTI0MDA6IHJlZ3J0ZXN0IC1XIGRvZXNuJ3QgcmVydW4gdGhlIHRlc3RzIHR3aWNlIGFueW1vcmUsIGJ1dCBjYXB0dXJlcwotICB0aGUgb3V0cHV0IGFuZCBkaXNwbGF5cyBpdCBvbiBmYWlsdXJlIGluc3RlYWQuIHJlZ3J0ZXN0IC12IGRvZXNuJ3QgcHJpbnQgdGhlCi0gIGVycm9yIHR3aWNlIGFueW1vcmUgaWYgdGhlcmUgaXMgb25seSBvbmUgZXJyb3IuCi0KLS0gSXNzdWUgIzEyMTQxOiBJbnN0YWxsIGEgY29weSBvZiB0ZW1wbGF0ZSBDIG1vZHVsZSBmaWxlIHNvIHRoYXQgdGVzdF9idWlsZF9leHQKLSAgb2YgdGVzdF9kaXN0dXRpbHMgaXMgbm8gbG9uZ2VyIHNpbGVudGx5IHNraXBwZWQgd2hlbiBydW4gb3V0c2lkZSBvZiBhIGJ1aWxkCi0gIGRpcmVjdG9yeS4KLQotLSBJc3N1ZSAjODc0NjogQWRkIGFkZGl0aW9uYWwgdGVzdHMgZm9yIG9zLmNoZmxhZ3MoKSBhbmQgb3MubGNoZmxhZ3MoKS4gIFBhdGNoCi0gIGJ5IEdhcnJldHQgQ29vcGVyLgotCi0tIElzc3VlICMxMDczNjogRml4IHRlc3RfdHRrIHRlc3Rfd2lkZ2V0cyBmYWlsdXJlcyB3aXRoIENvY29hIFRrIDguNS45IG9uIE1hYwotICBPUyBYLiAgKFBhdGNoIGJ5IFJvbmFsZCBPdXNzb3JlbikKLQotLSBJc3N1ZSAjMTIwNTc6IEFkZCB0ZXN0cyBmb3IgSVNPIDIwMjIgY29kZWNzIChpc28yMDIyX2pwLCBpc28yMDIyX2pwXzIsCi0gIGlzbzIwMjJfa3IpLgotCi0KLVdoYXQncyBOZXcgaW4gUHl0aG9uIDMuMi4xIHJlbGVhc2UgY2FuZGlkYXRlIDE/Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi0qUmVsZWFzZSBkYXRlOiAxNS1NYXktMjAxMSoKLQotQ29yZSBhbmQgQnVpbHRpbnMKLS0tLS0tLS0tLS0tLS0tLS0tCi0KLS0gSXNzdWUgIzEyMDYwOiBVc2Ugc2lnX2F0b21pY190IHR5cGUgYW5kIHZvbGF0aWxlIGtleXdvcmQgaW4gdGhlIHNpZ25hbAotICBtb2R1bGUuIFBhdGNoIHdyaXR0ZW4gYnkgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgotCi0tIElzc3VlICMxMjA0NDogRml4ZWQgc3VicHJvY2Vzcy5Qb3BlbiB3aGVuIHVzZWQgYXMgYSBjb250ZXh0IG1hbmFnZXIgdG8KLSAgd2FpdCBmb3IgdGhlIHByb2Nlc3MgdG8gZW5kIHdoZW4gZXhpdGluZyB0aGUgY29udGV4dCB0byBhdm9pZCB1bmludGVudGlvbmFsbHkKLSAgbGVhdmluZyB6b21iaWUgcHJvY2Vzc2VzIGFyb3VuZC4KLQotLSBJc3N1ZSAjMTE5NTogRml4IGlucHV0KCkgaWYgaXQgaXMgaW50ZXJydXB0ZWQgYnkgQ1RSTCtkIGFuZCB0aGVuIENUUkwrYywKLSAgY2xlYXIgdGhlIGVuZC1vZi1maWxlIGluZGljYXRvciBhZnRlciBDVFJMK2QuCi0KLUxpYnJhcnkKLS0tLS0tLS0KKy0gSXNzdWUgIzg4MDk6IFRoZSBTTVRQX1NTTCBjb25zdHJ1Y3RvciBhbmQgU01UUC5zdGFydHRscygpIG5vdyBzdXBwb3J0CisgIHBhc3NpbmcgYSBgYGNvbnRleHRgYCBhcmd1bWVudCBwb2ludGluZyB0byBhbiBzc2wuU1NMQ29udGV4dCBpbnN0YW5jZS4KKyAgUGF0Y2ggYnkgS2FzdW4gSGVyYXRoLgogCiAtIElzc3VlICMxMTA4ODogZG9uJ3QgY3Jhc2ggd2hlbiB1c2luZyBGNSB0byBydW4gYSBzY3JpcHQgaW4gSURMRSBvbiBNYWNPU1gKICAgd2l0aCBUayA4LjUuCkBAIC0xMDY3LDggKzE1NDksNiBAQAogLSBJc3N1ZSAjOTUxNjogSXNzdWUgIzk1MTY6IGF2b2lkIGVycm9ycyBpbiBzeXNjb25maWcgd2hlbiBNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQKICAgaXMgc2V0IGluIHNoZWxsLgogCi0tIElzc3VlICMxMjAxMjogc3NsLlBST1RPQ09MX1NTTHYyIGJlY29tZXMgb3B0aW9uYWwuCi0KIC0gSXNzdWUgIzg2NTA6IE1ha2UgemxpYiBtb2R1bGUgNjQtYml0IGNsZWFuLiBjb21wcmVzcygpLCBkZWNvbXByZXNzKCkgYW5kCiAgIHRoZWlyIGluY3JlbWVudGFsIGNvdW50ZXJwYXJ0cyBub3cgcmFpc2UgT3ZlcmZsb3dFcnJvciBpZiBnaXZlbiBhbiBpbnB1dAogICBsYXJnZXIgdGhhbiA0R0IsIGluc3RlYWQgb2Ygc2lsZW50bHkgdHJ1bmNhdGluZyB0aGUgaW5wdXQgYW5kIHJldHVybmluZwpAQCAtMTA4MiwxMiArMTU2MiwxNiBAQAogICB3cml0aW5nLCB0aGVuIHNlZWtpbmcgYmVmb3JlIHRoZSBwcmV2aW91cyB3cml0ZSBidXQgc3RpbGwgd2l0aGluIGJ1ZmZlcmVkCiAgIGRhdGEsIGFuZCB3cml0aW5nIGFnYWluKS4KIAorLSBJc3N1ZSAjOTk3MTogV3JpdGUgYW4gb3B0aW1pemVkIGltcGxlbWVudGF0aW9uIG9mIEJ1ZmZlcmVkUmVhZGVyLnJlYWRpbnRvKCkuCisgIFBhdGNoIGJ5IEpvaG4gTydDb25ub3IuCisKIC0gSXNzdWUgIzEwMjg6IFRrIHJldHVybnMgaW52YWxpZCBVbmljb2RlIG51bGwgaW4gJUE6IFVuaWNvZGVEZWNvZGVFcnJvci4KICAgV2l0aCBUayA8IDguNSBfdGtpbnRlci5jOlB5dGhvbkNtZCgpIHJhaXNlZCBVbmljb2RlRGVjb2RlRXJyb3IsIGNhdXNlZAogICBJRExFIHRvIGV4aXQuICBDb252ZXJ0ZWQgdG8gdmFsaWQgVW5pY29kZSBudWxsIGluIFB5dGhvbkNtZCgpLgogCi0tIElzc3VlICMxMTE2OTogY29tcGlsZWFsbCBtb2R1bGUgdXNlcyByZXByKCkgdG8gZm9ybWF0IGZpbGVuYW1lcyBhbmQgcGF0aHMgdG8KLSAgZXNjYXBlIHN1cnJvZ2F0ZSBjaGFyYWN0ZXJzIGFuZCBzaG93IHNwYWNlcy4KKy0gSXNzdWUgIzExNzk5OiB1cmxsaWIucmVxdWVzdCBBdXRoZW50aWNhdGlvbiBIYW5kbGVycyB3aWxsIHJhaXNlIGEgVmFsdWVFcnJvcgorICB3aGVuIHByZXNlbnRlZCB3aXRoIGFuIHVuc3VwcG9ydGVkIEF1dGhlbnRpY2F0aW9uIFNjaGVtZS4gUGF0Y2ggY29udHJpYnV0ZWQKKyAgYnkgWXV2YWwgR3JlZW5maWVsZC4KIAogLSBJc3N1ZSAjMTA0MTksICM2MDExOiBidWlsZF9zY3JpcHRzIGNvbW1hbmQgb2YgZGlzdHV0aWxzIGhhbmRsZXMgY29ycmVjdGx5CiAgIG5vbi1BU0NJSSBwYXRoIChwYXRoIHRvIHRoZSBQeXRob24gZXhlY3V0YWJsZSkuIE9wZW4gYW5kIHdyaXRlIHRoZSBzY3JpcHQgaW4KQEAgLTEwOTcsMTMzICsxNTgxLDY4IEBACiAtIElzc3VlICM4NDk4OiBJbiBzb2NrZXQuYWNjZXB0KCksIGFsbG93IHRvIHNwZWNpZnkgMCBhcyBhIGJhY2tsb2cgdmFsdWUgaW4KICAgb3JkZXIgdG8gYWNjZXB0IGV4YWN0bHkgb25lIGNvbm5lY3Rpb24uICBQYXRjaCBieSBEYW5pZWwgRXZlcnMuCiAKKy0gSXNzdWUgIzEyMDExOiBzaWduYWwuc2lnbmFsKCkgYW5kIHNpZ25hbC5zaWdpbnRlcnJ1cHQoKSByYWlzZSBhbiBPU0Vycm9yLAorICBpbnN0ZWFkIG9mIGEgUnVudGltZUVycm9yOiBPU0Vycm9yIGhhcyBhbiBlcnJubyBhdHRyaWJ1dGUuCisKKy0gSXNzdWUgIzM3MDk6IGEgZmx1c2hfaGVhZGVycyBtZXRob2QgdG8gQmFzZUhUVFBSZXF1ZXN0SGFuZGxlciB3aGljaCBtYW5hZ2VzCisgIHRoZSBzZW5kaW5nIG9mIGhlYWRlcnMgdG8gb3V0cHV0IHN0cmVhbSBhbmQgZmx1c2hpbmcgdGhlIGludGVybmFsIGhlYWRlcnMKKyAgYnVmZmVyLiBQYXRjaCBjb250cmlidXRpb24gYnkgQW5kcmV3IFNjaGFhZgorCistIElzc3VlICMxMTc0MzogUmV3cml0ZSBtdWx0aXByb2Nlc3NpbmcgY29ubmVjdGlvbiBjbGFzc2VzIGluIHB1cmUgUHl0aG9uLgorCiAtIElzc3VlICMxMTE2NDogU3RvcCB0cnlpbmcgdG8gdXNlIF94bWxwbHVzIGluIHRoZSB4bWwgbW9kdWxlLgogCi1CdWlsZAotLS0tLS0KKy0gSXNzdWUgIzExODg4OiBBZGQgbG9nMiBmdW5jdGlvbiB0byBtYXRoIG1vZHVsZS4gUGF0Y2ggd3JpdHRlbiBieSBNYXJrCisgIERpY2tpbnNvbi4KIAotLSBJc3N1ZSAjMTEzNDc6IFVzZSAtLW5vLWFzLW5lZWRlZCB3aGVuIGxpbmtpbmcgbGlicHl0aG9uMy5zby4KKy0gSXNzdWUgIzEyMDEyOiBzc2wuUFJPVE9DT0xfU1NMdjIgYmVjb21lcyBvcHRpb25hbC4KIAotVG9vbHMvRGVtb3MKLS0tLS0tLS0tLS0tCistIElzc3VlICM4NDA3OiBUaGUgc2lnbmFsIGhhbmRsZXIgd3JpdGVzIHRoZSBzaWduYWwgbnVtYmVyIGFzIGEgc2luZ2xlIGJ5dGUKKyAgaW5zdGVhZCBvZiBhIG51bCBieXRlIGludG8gdGhlIHdha2V1cCBmaWxlIGRlc2NyaXB0b3IuIFNvIGl0IGlzIHBvc3NpYmxlIHRvCisgIHdhaXQgbW9yZSB0aGFuIG9uZSBzaWduYWwgYW5kIGtub3cgd2hpY2ggc2lnbmFscyB3ZXJlIHJhaXNlZC4KIAotLSBJc3N1ZSAjMTE5OTY6IGxpYnB5dGhvbiAoZ2RiKSwgcmVwbGFjZSAicHktYnQiIGNvbW1hbmQgYnkgInB5LWJ0LWZ1bGwiIGFuZAotICBhZGQgYSBzbWFydGVyICJweS1idCIgY29tbWFuZCBwcmludGluZyBhIGNsYXNzaWMgUHl0aG9uIHRyYWNlYmFjay4KKy0gSXNzdWUgIzg0MDc6IEFkZCBwdGhyZWFkX2tpbGwoKSwgc2lncGVuZGluZygpIGFuZCBzaWd3YWl0KCkgZnVuY3Rpb25zIHRvIHRoZQorICBzaWduYWwgbW9kdWxlLgogCi1UZXN0cwotLS0tLS0KLQotLSBJc3N1ZSAjMTIwOTY6IEZpeCBhIHJhY2UgY29uZGl0aW9uIGluIHRlc3RfdGhyZWFkaW5nLnRlc3Rfd2FpdGZvcigpLiBQYXRjaAotICB3cml0dGVuIGJ5IENoYXJsZXMtRnJhbsOnb2lzIE5hdGFsaS4KLQotLSBJc3N1ZSAjMTE2MTQ6IGltcG9ydCBfX2hlbGxvX18gcHJpbnRzICJIZWxsbyBXb3JsZCEiLiBQYXRjaCB3cml0dGVuIGJ5Ci0gIEFuZHJlYXMgU3TDvGhyay4KLQotLSBJc3N1ZSAjNTcyMzogSW1wcm92ZSBqc29uIHRlc3RzIHRvIGJlIGV4ZWN1dGVkIHdpdGggYW5kIHdpdGhvdXQgYWNjZWxlcmF0aW9ucy4KLQotLSBJc3N1ZSAjMTE5MTA6IEZpeCB0ZXN0X2hlYXBxIHRvIHNraXAgdGhlIEMgdGVzdHMgd2hlbiBfaGVhcHEgaXMgbWlzc2luZy4KLQotCi1XaGF0J3MgTmV3IGluIFB5dGhvbiAzLjIuMSBiZXRhIDE/Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLSpSZWxlYXNlIGRhdGU6IDA4LU1heS0yMDExKgotCi1Db3JlIGFuZCBCdWlsdGlucwotLS0tLS0tLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjMTg1NjogQXZvaWQgY3Jhc2hlcyBhbmQgbG9ja3VwcyB3aGVuIGRhZW1vbiB0aHJlYWRzIHJ1biB3aGlsZSB0aGUKLSAgaW50ZXJwcmV0ZXIgaXMgc2h1dHRpbmcgZG93bjsgaW5zdGVhZCwgdGhlc2UgdGhyZWFkcyBhcmUgbm93IGtpbGxlZCB3aGVuIHRoZXkKLSAgdHJ5IHRvIHRha2UgdGhlIEdJTC4KLQotLSBJc3N1ZSAjOTc1NjogV2hlbiBjYWxsaW5nIGEgbWV0aG9kIGRlc2NyaXB0b3Igb3IgYSBzbG90IHdyYXBwZXIgZGVzY3JpcHRvciwKLSAgdGhlIGNoZWNrIG9mIHRoZSBvYmplY3QgdHlwZSBkb2Vzbid0IHJlYWQgdGhlIF9fY2xhc3NfXyBhdHRyaWJ1dGUgYW55bW9yZS4KLSAgRml4IGEgY3Jhc2ggaWYgYSBjbGFzcyBvdmVycmlkZSBpdHMgX19jbGFzc19fIGF0dHJpYnV0ZSAoZS5nLiBhIHByb3h5IG9mIHRoZQotICBzdHIgdHlwZSkuIFBhdGNoIHdyaXR0ZW4gYnkgQW5kcmVhcyBTdMO8aHJrLgotCi0tIElzc3VlICMxMDkxNDogSW5pdGlhbGl6ZSBjb3JyZWN0bHkgdGhlIGZpbGVzeXN0ZW0gY29kZWMgd2hlbiBjcmVhdGluZyBhIG5ldwotICBzdWJpbnRlcnByZXRlciB0byBmaXggYSBib290c3RyYXAgaXNzdWUgd2l0aCBjb2RlY3MgaW1wbGVtZW50ZWQgaW4gUHl0aG9uLCBhcwotICB0aGUgSVNPLTg4NTktMTUgY29kZWMuCi0KLS0gSXNzdWUgIzEwNTE3OiBBZnRlciBmb3JrKCksIHJlaW5pdGlhbGl6ZSB0aGUgVExTIHVzZWQgYnkgdGhlIFB5R0lMU3RhdGVfKgotICBBUElzLCB0byBhdm9pZCBhIGNyYXNoIHdpdGggdGhlIHB0aHJlYWQgaW1wbGVtZW50YXRpb24gaW4gUkhFTCA1LiAgUGF0Y2ggYnkKLSAgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgotCi0tIElzc3VlICM2NzgwOiBmaXggc3RhcnRzL2VuZHN3aXRoIGVycm9yIG1lc3NhZ2UgdG8gbWVudGlvbiB0aGF0IHR1cGxlcyBhcmUKLSAgYWNjZXB0ZWQgdG9vLgotCi0tIElzc3VlICM1MDU3OiBmaXggYSBidWcgaW4gdGhlIHBlZXBob2xlciB0aGF0IGxlZCB0byBub24tcG9ydGFibGUgcHljIGZpbGVzCi0gIGJldHdlZW4gbmFycm93IGFuZCB3aWRlIGJ1aWxkcyB3aGlsZSBvcHRpbWl6aW5nIEJJTkFSWV9TVUJTQ1Igb24gbm9uLUJNUCBjaGFycwotICAoZS5nLiAiXFUwMDAxMjM0NSJbMF0pLgotCi0tIElzc3VlICMxMTg0NTogRml4IHR5cG8gaW4gcmFuZ2VvYmplY3QuYyB0aGF0IGNhdXNlZCBhIGNyYXNoIGluCi0gIGNvbXB1dGVfc2xpY2VfaW5kaWNlcy4gIFBhdGNoIGJ5IERhbmllbCBVcmJhbi4KLQotLSBJc3N1ZSAjMTE2NTA6IFB5T1NfU3RkaW9SZWFkbGluZSgpIHJldHJpZXMgZmdldHMoKSBpZiBpdCB3YXMgaW50ZXJydXB0ZWQKLSAgKEVJTlRSKSwgZm9yIGV4YW1wbGUgaWYgdGhlIHByb2dyYW0gaXMgc3RvcHBlZCB3aXRoIENUUkwreiBvbiBNYWMgT1MgWC4gUGF0Y2gKLSAgd3JpdHRlbiBieSBDaGFybGVzLUZyYW5jb2lzIE5hdGFsaS4KLQotLSBJc3N1ZSAjMTEzOTU6IGlvLkZpbGVJTygpLndyaXRlKCkgY2xhbXBzIHRoZSBkYXRhIGxlbmd0aCB0byAzMiw3NjcgYnl0ZXMgb24KLSAgV2luZG93cyBpZiB0aGUgZmlsZSBpcyBhIFRUWSB0byB3b3JrYXJvdW5kIGEgV2luZG93cyBidWcuIFRoZSBXaW5kb3dzIGNvbnNvbGUKLSAgcmV0dXJucyBhbiBlcnJvciAoMTI6IG5vdCBlbm91Z2ggc3BhY2UgZXJyb3IpIG9uIHdyaXRpbmcgaW50byBzdGRvdXQgaWYgc3Rkb3V0Ci0gIG1vZGUgaXMgYmluYXJ5IGFuZCB0aGUgbGVuZ3RoIGlzIGdyZWF0ZXIgdGhhbiA2NiwwMDAgYnl0ZXMgKG9yIGxlc3MsIGRlcGVuZGluZwotICBvbiBoZWFwIHVzYWdlKS4KLQotLSBJc3N1ZSAjMTEzMjA6IGZpeCBib2d1cyBtZW1vcnkgbWFuYWdlbWVudCBpbiBNb2R1bGVzL2dldHBhdGguYywgbGVhZGluZyB0byBhCi0gIHBvc3NpYmxlIGNyYXNoIHdoZW4gY2FsbGluZyBQeV9TZXRQYXRoKCkuCi0KLS0gSXNzdWUgIzExNTEwOiBGaXhlZCBvcHRpbWl6ZXIgYnVnIHdoaWNoIHR1cm5lZCAiYSxiPXsxLDF9IiBpbnRvICJhLGI9KDEsMSkiLgotCi0tIElzc3VlICMxMTQzMjogQSBidWcgd2FzIGludHJvZHVjZWQgaW4gc3VicHJvY2Vzcy5Qb3BlbiBvbiBwb3NpeCBzeXN0ZW1zIHdpdGgKLSAgMy4yLjAgd2hlcmUgdGhlIHN0ZG91dCBvciBzdGRlcnIgZmlsZSBkZXNjcmlwdG9yIGJlaW5nIHRoZSBzYW1lIGFzIHRoZSBzdGRpbgotICBmaWxlIGRlc2NyaXB0b3Igd291bGQgcmFpc2UgYW4gZXhjZXB0aW9uLiB3ZWJicm93c2VyLm9wZW4gd291bGQgZmFpbC4gZml4ZWQuCi0KLS0gSXNzdWUgIzExNDUwOiBEb24ndCB0cnVuY2F0ZSBoZyB2ZXJzaW9uIGluZm8gaW4gUHlfR2V0QnVpbGRJbmZvKCkgd2hlbiB0aGVyZQotICBhcmUgbWFueSB0YWdzIChlLmcuIHdoZW4gdXNpbmcgbXEpLiAgUGF0Y2ggYnkgTmFkZWVtIFZhd2RhLgotCi0tIElzc3VlICMxMTI0NjogRml4IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlViIpIHRvIGRlY29kZSB0aGUgYnl0ZSBzdHJpbmcgZnJvbQotICBVVEYtOCAod2l0aCByZXBsYWNlIGVycm9yIGhhbmRsZXIpIGluc3RlYWQgb2YgSVNPLTg4NTktMSAoaW4gc3RyaWN0IG1vZGUpLgotICBQYXRjaCB3cml0dGVuIGJ5IFJheSBBbGxlbi4KLQotLSBJc3N1ZSAjMTEyODY6IFJhaXNlIGEgVmFsdWVFcnJvciBmcm9tIGNhbGxpbmcgUHlNZW1vcnlWaWV3X0Zyb21CdWZmZXIgd2l0aCBhCi0gIGJ1ZmZlciBzdHJ1Y3QgaGF2aW5nIGEgTlVMTCBkYXRhIHBvaW50ZXIuCi0KLS0gSXNzdWUgIzExMjcyOiBPbiBXaW5kb3dzLCBpbnB1dCgpIHN0cmlwcyAnXHInIChhbmQgbm90IG9ubHkgJ1xuJyksIGFuZAotICBzeXMuc3RkaW4gdXNlcyB1bml2ZXJzYWwgbmV3bGluZSAocmVwbGFjZSAnXHJcbicgYnkgJ1xuJykuCi0KLS0gaXNzdWUgIzExODI4OiBzdGFydHN3aXRoIGFuZCBlbmRzd2l0aCBkb24ndCBhY2NlcHQgTm9uZSBhcyBzbGljZSBpbmRleC4gIFBhdGNoCi0gIGJ5IFRvcnN0ZW4gQmVja2VyLgotCi0tIElzc3VlICMxMDgzMDogRml4IFB5VW5pY29kZV9Gcm9tRm9ybWF0VigiJWMiKSBmb3Igbm9uLUJNUCBjaGFyYWN0ZXJzIG9uCi0gIG5hcnJvdyBidWlsZC4KLQotLSBDaGVjayBmb3IgTlVMTCByZXN1bHQgaW4gUHlUeXBlX0Zyb21TcGVjLgotCi0tIElzc3VlICMxMTM4NjogYnl0ZWFycmF5LnBvcCgpIG5vdyB0aHJvd3MgSW5kZXhFcnJvciB3aGVuIHRoZSBieXRlYXJyYXkgaXMKLSAgZW1wdHksIGluc3RlYWQgb2YgT3ZlcmZsb3dFcnJvci4KLQotTGlicmFyeQotLS0tLS0tLQotCi0tIElzc3VlICMxMTkyNzogU01UUF9TU0wgbm93IHVzZXMgcG9ydCA0NjUgYnkgZGVmYXVsdCBhcyBkb2N1bWVudGVkLiAgUGF0Y2ggYnkKLSAgS2FzdW4gSGVyYXRoLgorLSBJc3N1ZSAjMTE5Mjc6IFNNVFBfU1NMIG5vdyB1c2VzIHBvcnQgNDY1IGJ5IGRlZmF1bHQgYXMgZG9jdW1lbnRlZC4gIFBhdGNoCisgIGJ5IEthc3VuIEhlcmF0aC4KIAogLSBJc3N1ZSAjMTIwMDI6IGZ0cGxpYidzIGFib3J0KCkgbWV0aG9kIHJhaXNlcyBUeXBlRXJyb3IuCiAKKy0gSXNzdWUgIzExOTE2OiBBZGQgYSBudW1iZXIgb2YgTWFjT1NYIHNwZWNpZmljIGRlZmluaXRpb25zIHRvIHRoZSBlcnJubyBtb2R1bGUuCisgIFBhdGNoIGJ5IFBpZXJyZSBDYXJyaWVyLgorCiAtIElzc3VlICMxMTk5OTogZml4ZWQgc3BvcmFkaWMgc3luYyBmYWlsdXJlIG1haWxib3guTWFpbGRpciBkdWUgdG8gaXRzIHRyeWluZyB0bwogICBkZXRlY3QgbXRpbWUgY2hhbmdlcyBieSBjb21wYXJpbmcgdG8gdGhlIHN5c3RlbSBjbG9jayBpbnN0ZWFkIG9mIHRvIHRoZQogICBwcmV2aW91cyB2YWx1ZSBvZiB0aGUgbXRpbWUuCiAKKy0gSXNzdWUgIzExMDcyOiBhZGRlZCBNTFNEIGNvbW1hbmQgKFJGQy0zNjU5KSBzdXBwb3J0IHRvIGZ0cGxpYi4KKworLSBJc3N1ZSAjODgwODogVGhlIElNQVA0X1NTTCBjb25zdHJ1Y3RvciBub3cgYWxsb3dzIHBhc3NpbmcgYW4gU1NMQ29udGV4dAorICBwYXJhbWV0ZXIgdG8gY29udHJvbCBwYXJhbWV0ZXJzIG9mIHRoZSBzZWN1cmUgY2hhbm5lbC4gIFBhdGNoIGJ5IFNpamluCisgIEpvc2VwaC4KKwogLSBudHBhdGguc2FtZWZpbGUgZmFpbGVkIHRvIG5vdGljZSB0aGF0ICJhLnR4dCIgYW5kICJBLlRYVCIgcmVmZXIgdG8gdGhlIHNhbWUKICAgZmlsZSBvbiBXaW5kb3dzIFhQLiBBcyBub3RpY2VkIGluIGlzc3VlICMxMDY4NC4KIAotLSBJc3N1ZSAjMTIwMDA6IFdoZW4gYSBTU0wgY2VydGlmaWNhdGUgaGFzIGEgc3ViamVjdEFsdE5hbWUgd2l0aG91dCBhbnkgZE5TTmFtZQotICBlbnRyeSwgc3NsLm1hdGNoX2hvc3RuYW1lKCkgc2hvdWxkIHVzZSB0aGUgc3ViamVjdCdzIGNvbW1vbk5hbWUuICBQYXRjaCBieQotICBOaWNvbGFzIEJhcmVpbC4KKy0gSXNzdWUgIzEyMDAwOiBXaGVuIGEgU1NMIGNlcnRpZmljYXRlIGhhcyBhIHN1YmplY3RBbHROYW1lIHdpdGhvdXQgYW55CisgIGROU05hbWUgZW50cnksIHNzbC5tYXRjaF9ob3N0bmFtZSgpIHNob3VsZCB1c2UgdGhlIHN1YmplY3QncyBjb21tb25OYW1lLgorICBQYXRjaCBieSBOaWNvbGFzIEJhcmVpbC4KIAotLSBJc3N1ZSAjMTE2NDc6IG9iamVjdHMgY3JlYXRlZCB1c2luZyBjb250ZXh0bGliLmNvbnRleHRtYW5hZ2VyIG5vdyBzdXBwb3J0IG1vcmUKLSAgdGhhbiBvbmUgY2FsbCB0byB0aGUgZnVuY3Rpb24gd2hlbiB1c2VkIGFzIGEgZGVjb3JhdG9yLiBJbml0aWFsIHBhdGNoIGJ5IFlzagotICBSYXkuCistIElzc3VlICMxMDc3NTogYXNzZXJ0UmFpc2VzLCBhc3NlcnRSYWlzZXNSZWdleCwgYXNzZXJ0V2FybnMsIGFuZAorICBhc3NlcnRXYXJuc1JlZ2V4IG5vdyBhY2NlcHQgYSBrZXl3b3JkIGFyZ3VtZW50ICdtc2cnIHdoZW4gdXNlZCBhcyBjb250ZXh0CisgIG1hbmFnZXJzLiAgSW5pdGlhbCBwYXRjaCBieSBXaW5zdG9uIEV3ZXJ0LgorCistIElzc3VlICMxMDY4NDogc2h1dGlsLm1vdmUgdXNlZCB0byBkZWxldGUgYSBmb2xkZXIgb24gY2FzZSBpbnNlbnNpdGl2ZQorICBmaWxlc3lzdGVtcyB3aGVuIHRoZSBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uIG5hbWUgd2hlcmUgdGhlIHNhbWUgZXhjZXB0CisgIGZvciB0aGUgY2FzZS4KKworLSBJc3N1ZSAjMTE2NDc6IG9iamVjdHMgY3JlYXRlZCB1c2luZyBjb250ZXh0bGliLmNvbnRleHRtYW5hZ2VyIG5vdyBzdXBwb3J0CisgIG1vcmUgdGhhbiBvbmUgY2FsbCB0byB0aGUgZnVuY3Rpb24gd2hlbiB1c2VkIGFzIGEgZGVjb3JhdG9yLiBJbml0aWFsIHBhdGNoCisgIGJ5IFlzaiBSYXkuCisKKy0gSXNzdWUgIzExOTMwOiBSZW1vdmVkIGRlcHJlY2F0ZWQgdGltZS5hY2NlcHQyZHllYXIgdmFyaWFibGUuCisgIFJlbW92ZWQgeWVhciA+PSAxMDAwIHJlc3RyaWN0aW9uIGZyb20gZGF0ZXRpbWUuc3RyZnRpbWUuCiAKIC0gbG9nZ2luZzogZG9uJ3QgZGVmaW5lIFF1ZXVlTGlzdGVuZXIgaWYgUHl0aG9uIGhhcyBubyB0aHJlYWQgc3VwcG9ydC4KIApAQCAtMTIzMiwxNiArMTY1MSwzOSBAQAogLSBJc3N1ZSAjMTEyNzc6IG1tYXAubW1hcCgpIGNhbGxzIGZjbnRsKGZkLCBGX0ZVTExGU1lOQykgb24gTWFjIE9TIFggdG8gZ2V0CiAgIGFyb3VuZCBhIG1tYXAgYnVnIHdpdGggc3BhcnNlIGZpbGVzLiBQYXRjaCB3cml0dGVuIGJ5IFN0ZWZmZW4gRGFvZGUgTnVycG1lc28uCiAKKy0gSXNzdWUgIzg0MDc6IEFkZCBzaWduYWwucHRocmVhZF9zaWdtYXNrKCkgZnVuY3Rpb24gdG8gZmV0Y2ggYW5kL29yIGNoYW5nZSB0aGUKKyAgc2lnbmFsIG1hc2sgb2YgdGhlIGNhbGxpbmcgdGhyZWFkLgorCiAtIElzc3VlICMxMTg1ODogY29uZmlncGFyc2VyLkV4dGVuZGVkSW50ZXJwb2xhdGlvbiBleHBlY3RlZCBsb3dlci1jYXNlIHNlY3Rpb24KICAgbmFtZXMuCiAKIC0gSXNzdWUgIzExMzI0OiBDb25maWdQYXJzZXIoaW50ZXJwb2xhdGlvbj1Ob25lKSBub3cgd29ya3MgY29ycmVjdGx5LgogCistIElzc3VlICMxMTgxMTogc3NsLmdldF9zZXJ2ZXJfY2VydGlmaWNhdGUoKSBpcyBub3cgSVB2Ni1jb21wYXRpYmxlLiAgUGF0Y2gKKyAgYnkgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgorCiAtIElzc3VlICMxMTc2MzogZG9uJ3QgdXNlIGRpZmZsaWIgaW4gVGVzdENhc2UuYXNzZXJ0TXVsdGlMaW5lRXF1YWwgaWYgdGhlCiAgIHN0cmluZ3MgYXJlIHRvbyBsb25nLgogCiAtIElzc3VlICMxMTIzNjogZ2V0cGFzcy5nZXRwYXNzIHJlc3BvbmRzIHRvIGN0cmwtYyBvciBjdHJsLXogb24gdGVybWluYWwuCiAKKy0gSXNzdWUgIzExODU2OiBTcGVlZCB1cCBwYXJzaW5nIG9mIEpTT04gbnVtYmVycy4KKworLSBJc3N1ZSAjMTEwMDU6IHRocmVhZGluZy5STG9jaygpLl9yZWxlYXNlX3NhdmUoKSByYWlzZXMgYSBSdW50aW1lRXJyb3IgaWYgdGhlCisgIGxvY2sgd2FzIG5vdCBhY3F1aXJlZC4KKworLSBJc3N1ZSAjMTEyNTg6IFNwZWVkIHVwIGN0eXBlcy51dGlsLmZpbmRfbGlicmFyeSgpIHVuZGVyIExpbnV4IGJ5IGEgZmFjdG9yCisgIG9mIDUgdG8gMTAuICBJbml0aWFsIHBhdGNoIGJ5IEpvbmFzIEguCisKKy0gSXNzdWUgIzExMzgyOiBUcml2aWFsIHN5c3RlbSBjYWxscywgc3VjaCBhcyBkdXAoKSBvciBwaXBlKCksIG5lZWRuJ3QKKyAgcmVsZWFzZSB0aGUgR0lMLiAgUGF0Y2ggYnkgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgorCistIElzc3VlICMxMTIyMzogQWRkIHRocmVhZGluZy5faW5mbygpIGZ1bmN0aW9uIHByb3ZpZGluZyBpbmZvcm1hdGlvbnMgYWJvdXQKKyAgdGhlIHRocmVhZCBpbXBsZW1lbnRhdGlvbi4KKworLSBJc3N1ZSAjMTE3MzE6IHNpbXBsaWZ5L2VuaGFuY2UgZW1haWwgcGFyc2VyL2dlbmVyYXRvciBBUEkgYnkgaW50cm9kdWNpbmcKKyAgcG9saWN5IG9iamVjdHMuCisKIC0gSXNzdWUgIzExNzY4OiBUaGUgc2lnbmFsIGhhbmRsZXIgb2YgdGhlIHNpZ25hbCBtb2R1bGUgb25seSBjYWxscwogICBQeV9BZGRQZW5kaW5nQ2FsbCgpIGZvciB0aGUgZmlyc3Qgc2lnbmFsIHRvIGZpeCBhIGRlYWRsb2NrIG9uIHJlZW50cmFudCBvcgogICBwYXJhbGxlbCBjYWxscy4gUHlFcnJfU2V0SW50ZXJydXB0KCkgd3JpdGVzIGFsc28gaW50byB0aGUgd2FrZSB1cCBmaWxlLgpAQCAtMTI2MSw2ICsxNzAzLDEwIEBACiAtIElzc3VlICMxMTQ3NDogRml4IHRoZSBidWcgd2l0aCB1cmwycGF0aG5hbWUoKSBoYW5kbGluZyBvZiAnL0N8Lycgb24gV2luZG93cy4KICAgUGF0Y2ggYnkgU2FudG9zbyBXaWpheWEuCiAKKy0gSXNzdWUgIzExNjg0OiBjb21wbGV0ZSBlbWFpbC5wYXJzZXIgYnl0ZXMgQVBJIGJ5IGFkZGluZyBCeXRlc0hlYWRlclBhcnNlci4KKworLSBUaGUgYnoyIG1vZHVsZSBub3cgaGFuZGxlcyA0R2lCKyBpbnB1dCBidWZmZXJzIGNvcnJlY3RseS4KKwogLSBJc3N1ZSAjOTIzMzogRml4IGpzb24ubG9hZHMoJ3t9JykgdG8gcmV0dXJuIGEgZGljdCAoaW5zdGVhZCBvZiBhIGxpc3QpLCB3aGVuCiAgIF9qc29uIGlzIG5vdCBhdmFpbGFibGUuCiAKQEAgLTEyNzIsMTcgKzE3MTgsMzMgQEAKIC0gSXNzdWUgIzEwMDE5OiBGaXhlZCByZWdyZXNzaW9uIGluIGpzb24gbW9kdWxlIHdoZXJlIGFuIGluZGVudCBvZiAwIHN0b3BwZWQKICAgYWRkaW5nIG5ld2xpbmVzIGFuZCBhY3RlZCBpbnN0ZWFkIGxpa2UgJ05vbmUnLgogCistIElzc3VlICMxMTE4NjogcHlkb2MgaWdub3JlcyBhIG1vZHVsZSBpZiBpdHMgbmFtZSBjb250YWlucyBhIHN1cnJvZ2F0ZQorICBjaGFyYWN0ZXIgaW4gdGhlIGluZGV4IG9mIG1vZHVsZXMuCisKKy0gSXNzdWUgIzExODE1OiBVc2UgYSBsaWdodC13ZWlnaHQgU2ltcGxlUXVldWUgZm9yIHRoZSByZXN1bHQgcXVldWUgaW4KKyAgY29uY3VycmVudC5mdXR1cmVzLlByb2Nlc3NQb29sRXhlY3V0b3IuCisKIC0gSXNzdWUgIzUxNjI6IFRyZWF0IHNlcnZpY2VzIGxpa2UgZnJvemVuIGV4ZWN1dGFibGVzIHRvIGFsbG93IGNoaWxkIHNwYXduaW5nCiAgIGZyb20gbXVsdGlwcm9jZXNzaW5nLmZvcmtpbmcgb24gV2luZG93cy4KIAorLSBsb2dnaW5nLmJhc2ljQ29uZmlnIG5vdyBzdXBwb3J0cyBhbiBvcHRpb25hbCAnaGFuZGxlcnMnIGFyZ3VtZW50IHRha2luZyBhbgorICBpdGVyYWJsZSBvZiBoYW5kbGVycyB0byBiZSBhZGRlZCB0byB0aGUgcm9vdCBsb2dnZXIuIEFkZGl0aW9uYWwgcGFyYW1ldGVyCisgIGNoZWNrcyB3ZXJlIGFsc28gYWRkZWQgdG8gYmFzaWNDb25maWcuCisKIC0gSXNzdWUgIzExODE0OiBGaXggbGlrZWx5IHR5cG8gaW4gbXVsdGlwcm9jZXNzaW5nLlBvb2wuX3Rlcm1pbmF0ZSgpLgogCiAtIElzc3VlICMxMTc0NzogRml4IHJhbmdlIGZvcm1hdHRpbmcgaW4gZGlmZmxpYi5jb250ZXh0X2RpZmYoKSBhbmQKICAgZGlmZmxpYi51bmlmaWVkX2RpZmYoKS4KIAogLSBJc3N1ZSAjODQyODogRml4IGEgcmFjZSBjb25kaXRpb24gaW4gbXVsdGlwcm9jZXNzaW5nLlBvb2wgd2hlbiB0ZXJtaW5hdGluZwotICB3b3JrZXIgcHJvY2Vzc2VzOiBuZXcgcHJvY2Vzc2VzIHdvdWxkIGJlIHNwYXduZWQgd2hpbGUgdGhlIHBvb2wgaXMgYmVpbmcgc2h1dAotICBkb3duLiAgUGF0Y2ggYnkgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgorICB3b3JrZXIgcHJvY2Vzc2VzOiBuZXcgcHJvY2Vzc2VzIHdvdWxkIGJlIHNwYXduZWQgd2hpbGUgdGhlIHBvb2wgaXMgYmVpbmcKKyAgc2h1dCBkb3duLiAgUGF0Y2ggYnkgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgorCistIElzc3VlICMyNjUwOiByZS5lc2NhcGUoKSBubyBsb25nZXIgZXNjYXBlcyB0aGUgJ18nLgorCistIElzc3VlICMxMTc1Nzogc2VsZWN0LnNlbGVjdCgpIG5vdyByYWlzZXMgVmFsdWVFcnJvciB3aGVuIGEgbmVnYXRpdmUgdGltZW91dAorICBpcyBwYXNzZWQgKHByZXZpb3VzbHksIGEgc2VsZWN0LmVycm9yIHdpdGggRUlOVkFMIHdvdWxkIGJlIHJhaXNlZCkuICBQYXRjaAorICBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCiAKIC0gSXNzdWUgIzczMTE6IGZpeCBodG1sLnBhcnNlciB0byBhY2NlcHQgbm9uLUFTQ0lJIGF0dHJpYnV0ZSB2YWx1ZXMuCiAKQEAgLTEyOTAsMjEgKzE3NTIsNTAgQEAKICAgbXVsdGlwYXJ0IHN1YnBhcnRzIHdpdGggYW4gOC1iaXQgQ1RFIGludG8gdW5pY29kZSBpbnN0ZWFkIG9mIHByZXNlcnZpbmcgdGhlCiAgIGJ5dGVzLgogCistIElzc3VlICMxNjkwNjA4OiBlbWFpbC51dGlsLmZvcm1hdGFkZHIgaXMgbm93IFJGQyAyMDQ3IGF3YXJlOiAgaXQgbm93IGhhcyBhCisgIGNoYXJzZXQgcGFyYW1ldGVyIHRoYXQgZGVmYXVsdHMgdG8gdXRmLTggYW5kIGlzIHVzZWQgYXMgdGhlIGNoYXJzZXQgZm9yIFJGQworICAyMDQ3IGVuY29kaW5nIHdoZW4gdGhlIHJlYWxuYW1lIGNvbnRhaW5zIG5vbi1BU0NJSSBjaGFyYWN0ZXJzLgorCiAtIElzc3VlICMxMDk2MzogRW5zdXJlIHRoYXQgc3VicHJvY2Vzcy5jb21tdW5pY2F0ZSgpIG5ldmVyIHJhaXNlcyBFUElQRS4KIAorLSBJc3N1ZSAjMTA3OTE6IEltcGxlbWVudCBtaXNzaW5nIG1ldGhvZCBHemlwRmlsZS5yZWFkMSgpLCBhbGxvd2luZyBHemlwRmlsZQorICB0byBiZSB3cmFwcGVkIGluIGEgVGV4dElPV3JhcHBlci4gIFBhdGNoIGJ5IE5hZGVlbSBWYXdkYS4KKworLSBJc3N1ZSAjMTE3MDc6IEFkZGVkIGEgZmFzdCBDIHZlcnNpb24gb2YgZnVuY3Rvb2xzLmNtcF90b19rZXkoKS4KKyAgUGF0Y2ggYnkgRmlsaXAgR3J1c3pjennFhHNraS4KKworLSBJc3N1ZSAjMTE2ODg6IEFkZCBzcWxpdGUzLkNvbm5lY3Rpb24uc2V0X3RyYWNlX2NhbGxiYWNrKCkuICBQYXRjaCBieQorICBUb3JzdGVuIExhbmRzY2hvZmYuCisKIC0gSXNzdWUgIzExNzQ2OiBGaXggU1NMQ29udGV4dC5sb2FkX2NlcnRfY2hhaW4oKSB0byBhY2NlcHQgZWxsaXB0aWMgY3VydmUKICAgcHJpdmF0ZSBrZXlzLgogCistIElzc3VlICM1ODYzOiBSZXdyaXRlIEJaMkZpbGUgaW4gcHVyZSBQeXRob24sIGFuZCBhbGxvdyBpdCB0byBhY2NlcHQKKyAgZmlsZS1saWtlIG9iamVjdHMgdXNpbmcgYSBuZXcgYGBmaWxlb2JqYGAgY29uc3RydWN0b3IgYXJndW1lbnQuICBQYXRjaCBieQorICBOYWRlZW0gVmF3ZGEuCisKKy0gdW5pdHRlc3QuVGVzdENhc2UuYXNzZXJ0U2FtZUVsZW1lbnRzIGhhcyBiZWVuIHJlbW92ZWQuCisKIC0gc3lzLmdldGZpbGVzeXN0ZW1lbmNvZGluZygpIHJhaXNlcyBhIFJ1bnRpbWVFcnJvciBpZiBpbml0ZnNlbmNvZGluZygpIHdhcyBub3QKICAgY2FsbGVkIHlldDogZGV0ZWN0IGJvb3RzdHJhcCAoc3RhcnR1cCkgaXNzdWVzIGVhcmxpZXIuCiAKKy0gSXNzdWUgIzExMzkzOiBBZGQgdGhlIG5ldyBmYXVsdGhhbmRsZXIgbW9kdWxlLgorCiAtIElzc3VlICMxMTYxODogRml4IHRoZSB0aW1lb3V0IGxvZ2ljIGluIHRocmVhZGluZy5Mb2NrLmFjcXVpcmUoKSB1bmRlciBXaW5kb3dzLgogCistIFJlbW92ZWQgdGhlICdzdHJpY3QnIGFyZ3VtZW50IHRvIGVtYWlsLnBhcnNlci5QYXJzZXIsIHdoaWNoIGhhcyBiZWVuCisgIGRlcHJlY2F0ZWQgc2luY2UgUHl0aG9uIDIuNC4KKwogLSBJc3N1ZSAjMTEyNTY6IEZpeCBpbnNwZWN0LmdldGNhbGxhcmdzIG9uIGZ1bmN0aW9ucyB0aGF0IHRha2Ugb25seSBrZXl3b3JkCiAgIGFyZ3VtZW50cy4KIAogLSBJc3N1ZSAjMTE2OTY6IEZpeCBJRCBnZW5lcmF0aW9uIGluIG1zaWxpYi4KIAorLSBpdGVydG9vbHMuYWNjdW11bGF0ZSBub3cgc3VwcG9ydHMgYW4gb3B0aW9uYWwgKmZ1bmMqIGFyZ3VtZW50IGZvcgorICBhIHVzZXItc3VwcGxpZWQgYmluYXJ5IGZ1bmN0aW9uLgorCistIElzc3VlICMxMTY5MjogUmVtb3ZlIHVubmVjZXNzYXJ5IGRlbW8gZnVuY3Rpb25zIGluIHN1YnByb2Nlc3MgbW9kdWxlLgorCiAtIElzc3VlICM5Njk2OiBGaXggZXhjZXB0aW9uIGluY29ycmVjdGx5IHJhaXNlZCBieSB4ZHJsaWIuUGFja2VyLnBhY2tfaW50IHdoZW4KICAgdHJ5aW5nIHRvIHBhY2sgYSBuZWdhdGl2ZSAoaW4tcmFuZ2UpIGludGVnZXIuCiAKQEAgLTEzMjAsNyArMTgxMSwyNiBAQAogLSBJc3N1ZSAjMTE2MzU6IERvbid0IHVzZSBwb2xsaW5nIGluIHdvcmtlciB0aHJlYWRzIGFuZCBwcm9jZXNzZXMgbGF1bmNoZWQgYnkKICAgY29uY3VycmVudC5mdXR1cmVzLgogCi0tIElzc3VlICMxMTYyODogY21wX3RvX2tleSBnZW5lcmF0ZWQgY2xhc3Mgc2hvdWxkIHVzZSBfX3Nsb3RzX18KKy0gSXNzdWUgIzY4MTE6IEFsbG93IGltcG9ydGxpYiB0byBjaGFuZ2UgYSBjb2RlIG9iamVjdCdzIGNvX2ZpbGVuYW1lIGF0dHJpYnV0ZQorICB0byBtYXRjaCB0aGUgcGF0aCB0byB3aGVyZSB0aGUgc291cmNlIGNvZGUgY3VycmVudGx5IGlzLCBub3Qgd2hlcmUgdGhlIGNvZGUKKyAgb2JqZWN0IG9yaWdpbmFsbHkgY2FtZSBmcm9tLgorCistIElzc3VlICM4NzU0OiBIYXZlIGltcG9ydGxpYiB1c2UgdGhlIHJlcHIgb2YgYSBtb2R1bGUgbmFtZSBpbiBlcnJvciBtZXNzYWdlcy4KKworLSBJc3N1ZSAjMTE1OTE6IFByZXZlbnQgImltcG9ydCBzaXRlIiBmcm9tIG1vZGlmeWluZyBzeXMucGF0aCB3aGVuIHB5dGhvbgorICB3YXMgc3RhcnRlZCB3aXRoIC1TLgorCistIGNvbGxlY3Rpb25zLm5hbWVkdHVwbGUoKSBub3cgYWRkcyBhIF9zb3VyY2UgYXR0cmlidXRlIHRvIHRoZSBnZW5lcmF0ZWQKKyAgY2xhc3MuICBUaGlzIG1ha2UgdGhlIHNvdXJjZSBtb3JlIGFjY2Vzc2libGUgdGhhbiB0aGUgb3V0ZGF0ZWQKKyAgInZlcmJvc2UiIG9wdGlvbiB3aGljaCBwcmludHMgdG8gc3Rkb3V0IGJ1dCBkb2Vzbid0IG1ha2UgdGhlIHNvdXJjZQorICBzdHJpbmcgYXZhaWxhYmxlLgorCistIElzc3VlICMxMTM3MTogTWFyayBnZXRvcHQgZXJyb3IgbWVzc2FnZXMgYXMgbG9jYWxpemFibGUuICBQYXRjaCBieSBGaWxpcAorICBHcnVzemN6ecWEc2tpLgorCistIElzc3VlICMxMTMzMzogQWRkIF9fc2xvdHNfXyB0byBjb2xsZWN0aW9ucyBBQkNzLgorCistIElzc3VlICMxMTYyODogY21wX3RvX2tleSBnZW5lcmF0ZWQgY2xhc3Mgc2hvdWxkIHVzZSBfX3Nsb3RzX18uCiAKIC0gSXNzdWUgIzExNjY2OiBsZXQgaGVscCgpIGRpc3BsYXkgbmFtZWQgdHVwbGUgYXR0cmlidXRlcyBhbmQgbWV0aG9kcwogICB0aGF0IHN0YXJ0IHdpdGggYSBsZWFkaW5nIHVuZGVyc2NvcmUuCkBAIC0xMzMxLDYgKzE4NDEsMTAgQEAKIC0gSXNzdWUgIzU1Mzc6IEZpeCB0aW1lMmlzb3ooKSBhbmQgdGltZTJuZXRzY2FwZSgpIGZ1bmN0aW9ucyBvZgogICBodHRwbGliLmNvb2tpZWphciBmb3IgZXhwaXJhdGlvbiB5ZWFyIGdyZWF0ZXIgdGhhbiAyMDM4IG9uIDMyLWJpdCBzeXN0ZW1zLgogCistIElzc3VlICM0MzkxOiBVc2UgcHJvcGVyIGdldHRleHQgcGx1cmFsIGZvcm1zIGluIG9wdHBhcnNlLgorCistIElzc3VlICMxMTEyNzogUmFpc2UgYSBUeXBlRXJyb3Igd2hlbiB0cnlpbmcgdG8gcGlja2xlIGEgc29ja2V0IG9iamVjdC4KKwogLSBJc3N1ZSAjMTE1NjM6IENvbm5lY3Rpb246Y2xvc2UgaGVhZGVyIGlzIHNlbnQgYnkgcmVxdWVzdHMgdXNpbmcgVVJMT3BlbmVyCiAgIGNsYXNzIHdoaWNoIGhlbHBzIGluIGNsb3Npbmcgb2Ygc29ja2V0cyBhZnRlciBjb25uZWN0aW9uIGlzIG92ZXIuIFBhdGNoCiAgIGNvbnRyaWJ1dGlvbnMgYnkgSmVmZiBNY05laWwgYW5kIE5hZGVlbSBWYXdkYS4KQEAgLTEzNDEsNiArMTg1NSw4IEBACiAtIElzc3VlICM1NDIxOiBGaXggbWlzbGVhZGluZyBlcnJvciBtZXNzYWdlIHdoZW4gb25lIG9mIHNvY2tldC5zZW5kdG8oKSdzCiAgIGFyZ3VtZW50cyBoYXMgdGhlIHdyb25nIHR5cGUuICBQYXRjaCBieSBOaWtpdGEgVmV0b3Noa2luLgogCistIElzc3VlICMxMDgxMjogQWRkIHNvbWUgZXh0cmEgcG9zaXggZnVuY3Rpb25zIHRvIHRoZSBvcyBtb2R1bGUuCisKIC0gSXNzdWUgIzEwOTc5OiB1bml0dGVzdCBzdGRvdXQgYnVmZmVyaW5nIG5vdyB3b3JrcyB3aXRoIGNsYXNzIGFuZCBtb2R1bGUKICAgc2V0dXAgYW5kIHRlYXJkb3duLgogCkBAIC0xMzUzLDc1ICsxODY5LDE1NCBAQAogICByZWxhdGl2ZSB0byBQeXRob24yIGFuZCB0aGUgcmVzdWx0IGlzIG5vdyB0aGUgc2FtZSBhcyBpdCB3YXMgaW4gUHl0aG9uMi4KIAogLSBJc3N1ZSAjOTI5ODogYmFzZTY0IGJvZGllcyB3ZXJlbid0IGJlaW5nIGZvbGRlZCB0byBsaW5lIGxlbmd0aHMgbGVzcyB0aGFuIDc4LAotICB3aGljaCB3YXMgYSByZWdyZXNzaW9uIHJlbGF0aXZlIHRvIFB5dGhvbjIuICBVbmxpa2UgUHl0aG9uMiwgdGhlIGxhc3QgbGluZSBvZgotICB0aGUgZm9sZGVkIGJvZHkgbm93IGVuZHMgd2l0aCBhIGNhcnJpYWdlIHJldHVybi4KKyAgd2hpY2ggd2FzIGEgcmVncmVzc2lvbiByZWxhdGl2ZSB0byBQeXRob24yLiAgVW5saWtlIFB5dGhvbjIsIHRoZSBsYXN0IGxpbmUKKyAgb2YgdGhlIGZvbGRlZCBib2R5IG5vdyBlbmRzIHdpdGggYSBjYXJyaWFnZSByZXR1cm4uCiAKIC0gSXNzdWUgIzExNTYwOiBzaHV0aWwudW5wYWNrX2FyY2hpdmUgbm93IGNvcnJlY3RseSBoYW5kbGVzIHRoZSBmb3JtYXQKICAgcGFyYW1ldGVyLiBQYXRjaCBieSBFdmFuIERhbmRyZWEuCiAKKy0gSXNzdWUgIzU4NzA6IEFkZCBgc3VicHJvY2Vzcy5ERVZOVUxMYCBjb25zdGFudC4KKwogLSBJc3N1ZSAjMTExMzM6IGZpeCB0d28gY2FzZXMgd2hlcmUgaW5zcGVjdC5nZXRhdHRyX3N0YXRpYyBjYW4gdHJpZ2dlciBjb2RlCiAgIGV4ZWN1dGlvbi4gUGF0Y2ggYnkgQW5kcmVhcyBTdMO8aHJrLgogCiAtIElzc3VlICMxMTU2OTogdXNlIGFic29sdXRlIHBhdGggdG8gdGhlIHN5c2N0bCBjb21tYW5kIGluIG11bHRpcHJvY2Vzc2luZyB0bwotICBlbnN1cmUgdGhhdCBpdCB3aWxsIGJlIGZvdW5kIHJlZ2FyZGxlc3Mgb2YgdGhlIHNoZWxsIFBBVEguIFRoaXMgZW5zdXJlcyB0aGF0Ci0gIG11bHRpcHJvY2Vzc2luZy5jcHVfY291bnQgd29ya3Mgb24gZGVmYXVsdCBpbnN0YWxscyBvZiBNYWNPU1guCisgIGVuc3VyZSB0aGF0IGl0IHdpbGwgYmUgZm91bmQgcmVnYXJkbGVzcyBvZiB0aGUgc2hlbGwgUEFUSC4gVGhpcyBlbnN1cmVzCisgIHRoYXQgbXVsdGlwcm9jZXNzaW5nLmNwdV9jb3VudCB3b3JrcyBvbiBkZWZhdWx0IGluc3RhbGxzIG9mIE1hY09TWC4KIAogLSBJc3N1ZSAjMTE1MDE6IGRpc3V0aWxzLmFyY2hpdmVfdXRpbHMubWFrZV96aXBmaWxlIG5vIGxvbmdlciBmYWlscyBpZiB6bGliIGlzCiAgIG5vdCBpbnN0YWxsZWQuIEluc3RlYWQsIHRoZSB6aXBmaWxlLlpJUF9TVE9SRUQgY29tcHJlc3Npb24gaXMgdXNlZCB0byBjcmVhdGUKICAgdGhlIFppcEZpbGUuIFBhdGNoIGJ5IE5hdGFsaWEgQi4gQmlkYXJ0LgogCistIElzc3VlICMxMTI4OTogYHNtdHAuU01UUGAgY2xhc3MgYmVjb21lcyBhIGNvbnRleHQgbWFuYWdlciBzbyBpdCBjYW4gYmUgdXNlZAorICBpbiBhIGB3aXRoYCBzdGF0ZW1lbnQuICBDb250cmlidXRlZCBieSBHaWFtcGFvbG8gUm9kb2xhLgorCiAtIElzc3VlICMxMTU1NDogRml4ZWQgc3VwcG9ydCBmb3IgSmFwYW5lc2UgY29kZWNzOyBwcmV2aW91c2x5IHRoZSBib2R5IG91dHB1dAogICBlbmNvZGluZyB3YXMgbm90IGRvbmUgaWYgZXVjLWpwIG9yIHNoaWZ0LWppcyB3YXMgc3BlY2lmaWVkIGFzIHRoZSBjaGFyc2V0LgogCi0tIElzc3VlICMxMTUwMDogRml4ZWQgYSBidWcgaW4gdGhlIG9zIHggcHJveHkgYnlwYXNzIGNvZGUgZm9yIGZ1bGx5IHF1YWxpZmllZCBJUAotICBhZGRyZXNzZXMgaW4gdGhlIHByb3h5IGV4Y2VwdGlvbiBsaXN0LgorLSBJc3N1ZSAjMTE1MDk6IFNpZ25pZmljYW50bHkgaW5jcmVhc2UgdGVzdCBjb3ZlcmFnZSBvZiBmaWxlaW5wdXQuCisgIFBhdGNoIGJ5IERlbnZlciBDb25leWJlYXJlIGF0IFB5Q29uIDIwMTEgU3ByaW50cy4KIAotLSBJc3N1ZSAjMTE0OTE6IGRibS5lcnJvciBpcyBubyBsb25nZXIgcmFpc2VkIHdoZW4gZGJtLm9wZW4gaXMgY2FsbGVkIHdpdGggdGhlCi0gICJuIiBhcyB0aGUgZmxhZyBhcmd1bWVudCBhbmQgdGhlIGZpbGUgZXhpc3RzLiBUaGUgYmVoYXZpb3IgbWF0Y2hlcyB0aGUKLSAgZG9jdW1lbnRhdGlvbiBhbmQgZ2VuZXJhbCBsb2dpYy4KKy0gSXNzdWUgIzExNDA3OiBgVGVzdENhc2UucnVuYCByZXR1cm5zIHRoZSByZXN1bHQgb2JqZWN0IHVzZWQgb3IgY3JlYXRlZC4KKyAgQ29udHJpYnV0ZWQgYnkgSmFuYXRoYW4gSGFydGxleS4KIAotLSBJc3N1ZSAjMTExMzE6IEZpeCBzaWduIG9mIHplcm8gaW4gZGVjaW1hbC5EZWNpbWFsIHBsdXMgYW5kIG1pbnVzIG9wZXJhdGlvbnMKLSAgd2hlbiB0aGUgcm91bmRpbmcgbW9kZSBpcyBST1VORF9GTE9PUi4KKy0gSXNzdWUgIzExNTAwOiBGaXhlZCBhIGJ1ZyBpbiB0aGUgb3MgeCBwcm94eSBieXBhc3MgY29kZSBmb3IgZnVsbHkgcXVhbGlmaWVkCisgIElQIGFkZHJlc3NlcyBpbiB0aGUgcHJveHkgZXhjZXB0aW9uIGxpc3QuCisKKy0gSXNzdWUgIzExNDkxOiBkYm0uZXJyb3IgaXMgbm8gbG9uZ2VyIHJhaXNlZCB3aGVuIGRibS5vcGVuIGlzIGNhbGxlZCB3aXRoCisgIHRoZSAibiIgYXMgdGhlIGZsYWcgYXJndW1lbnQgYW5kIHRoZSBmaWxlIGV4aXN0cy4gVGhlIGJlaGF2aW9yIG1hdGNoZXMKKyAgdGhlIGRvY3VtZW50YXRpb24gYW5kIGdlbmVyYWwgbG9naWMuCisKKy0gSXNzdWUgIzExNjI0Nzc6IFBvc3RlbCBQcmluY2lwbGUgYWRqdXN0bWVudCB0byBlbWFpbCBkYXRlIHBhcnNpbmc6IGhhbmRsZSB0aGUKKyAgZmFjdCB0aGF0IHNvbWUgbm9uLWNvbXBsaWFudCBNVUFzIHVzZSAnLicgaW5zdGVhZCBvZiAnOicgaW4gdGltZSBzcGVjcy4KKworLSBJc3N1ZSAjMTExMzE6IEZpeCBzaWduIG9mIHplcm8gaW4gZGVjaW1hbC5EZWNpbWFsIHBsdXMgYW5kIG1pbnVzCisgIG9wZXJhdGlvbnMgd2hlbiB0aGUgcm91bmRpbmcgbW9kZSBpcyBST1VORF9GTE9PUi4KKworLSBJc3N1ZSAjOTkzNTogU3BlZWQgdXAgcGlja2xpbmcgb2YgaW5zdGFuY2VzIG9mIHVzZXItZGVmaW5lZCBjbGFzc2VzLgogCiAtIElzc3VlICM1NjIyOiBGaXggY3Vyc2VzLndyYXBwZXIgdG8gcmFpc2UgY29ycmVjdCBleGNlcHRpb24gaWYgY3Vyc2VzCiAgIGluaXRpYWxpemF0aW9uIGZhaWxzLgogCistIElzc3VlICMxMTQwODogSW4gdGhyZWFkaW5nLkxvY2suYWNxdWlyZSgpLCBvbmx5IGNhbGwgZ2V0dGltZW9mZGF5KCkgd2hlbgorICByZWFsbHkgbmVjZXNzYXJ5LiAgUGF0Y2ggYnkgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgorCiAtIElzc3VlICMxMTM5MTogV3JpdGluZyB0byBhIG1tYXAgb2JqZWN0IGNyZWF0ZWQgd2l0aAogICBgYG1tYXAuUFJPVF9SRUFEfG1tYXAuUFJPVF9FWEVDYGAgd291bGQgc2VnZmF1bHQgaW5zdGVhZCBvZiByYWlzaW5nIGEKICAgVHlwZUVycm9yLiAgUGF0Y2ggYnkgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgogCi0tIElzc3VlICMxMTMwNjogbWFpbGJveCBpbiBjZXJ0YWluIGNhc2VzIGFkYXB0cyB0byBhbiBpbmFiaWxpdHkgdG8gb3BlbiBjZXJ0YWluCi0gIGZpbGVzIGluIHJlYWQtd3JpdGUgbW9kZS4gIFByZXZpb3VzbHkgaXQgZGV0ZWN0ZWQgdGhpcyBieSBjaGVja2luZyBmb3IgRUFDQ0VTLAotICBub3cgaXQgYWxzbyBjaGVja3MgZm9yIEVST0ZTLgorLSBJc3N1ZSAjOTc5NTogYWRkIGNvbnRleHQgbWFuYWdlciBwcm90b2NvbCBzdXBwb3J0IGZvciBubnRwbGliLk5OVFAgY2xhc3MuCiAKLS0gSXNzdWUgIzExMjY1OiBhc3luY29yZSBub3cgY29ycmVjdGx5IGhhbmRsZXMgRVBJUEUsIEVCQURGIGFuZCBFQUdBSU4gZXJyb3JzIG9uCi0gIGFjY2VwdCgpLCBzZW5kKCkgYW5kIHJlY3YoKS4KKy0gSXNzdWUgIzExMzA2OiBtYWlsYm94IGluIGNlcnRhaW4gY2FzZXMgYWRhcHRzIHRvIGFuIGluYWJpbGl0eSB0byBvcGVuCisgIGNlcnRhaW4gZmlsZXMgaW4gcmVhZC13cml0ZSBtb2RlLiAgUHJldmlvdXNseSBpdCBkZXRlY3RlZCB0aGlzIGJ5CisgIGNoZWNraW5nIGZvciBFQUNDRVMsIG5vdyBpdCBhbHNvIGNoZWNrcyBmb3IgRVJPRlMuCisKKy0gSXNzdWUgIzExMjY1OiBhc3luY29yZSBub3cgY29ycmVjdGx5IGhhbmRsZXMgRVBJUEUsIEVCQURGIGFuZCBFQUdBSU4gZXJyb3JzCisgIG9uIGFjY2VwdCgpLCBzZW5kKCkgYW5kIHJlY3YoKS4KKworLSBJc3N1ZSAjMTEzNzc6IERlcHJlY2F0ZSBwbGF0Zm9ybS5wb3BlbigpIGFuZCByZWltcGxlbWVudCBpdCB3aXRoIG9zLnBvcGVuKCkuCisKKy0gSXNzdWUgIzg1MTM6IE9uIFVOSVgsIHN1YnByb2Nlc3Mgc3VwcG9ydHMgYnl0ZXMgY29tbWFuZCBzdHJpbmcuCisKKy0gSXNzdWUgIzEwODY2OiBBZGQgc29ja2V0LnNldGhvc3RuYW1lKCkuICBJbml0aWFsIHBhdGNoIGJ5IFJvc3MgTGFnZXJ3YWxsLgorCistIElzc3VlICMxMTE0MDogTG9jay5yZWxlYXNlKCkgbm93IHJhaXNlcyBhIFJ1bnRpbWVFcnJvciB3aGVuIGF0dGVtcHRpbmcKKyAgdG8gcmVsZWFzZSBhbiB1bmFjcXVpcmVkIGxvY2ssIGFzIGNsYWltZWQgaW4gdGhlIHRocmVhZGluZyBkb2N1bWVudGF0aW9uLgorICBUaGUgX3RocmVhZC5lcnJvciBleGNlcHRpb24gaXMgbm93IGFuIGFsaWFzIG9mIFJ1bnRpbWVFcnJvci4gIFBhdGNoIGJ5CisgIEZpbGlwIEdydXN6Y3p5xYRza2kuICBQYXRjaCBmb3IgX2R1bW15X3RocmVhZCBieSBBeW1lcmljIEF1Z3VzdGluLgorCistIElzc3VlICM4NTk0OiBmdHBsaWIgbm93IHByb3ZpZGVzIGEgc291cmNlX2FkZHJlc3MgcGFyYW1ldGVyIHRvIHNwZWNpZnkgd2hpY2gKKyAgKGFkZHJlc3MsIHBvcnQpIHRvIGJpbmQgdG8gYmVmb3JlIGNvbm5lY3RpbmcuCiAKIC0gSXNzdWUgIzExMzI2OiBBZGQgdGhlIG1pc3NpbmcgY29ubmVjdF9leCgpIGltcGxlbWVudGF0aW9uIGZvciBTU0wgc29ja2V0cywKICAgYW5kIG1ha2UgaXQgd29yayBmb3Igbm9uLWJsb2NraW5nIGNvbm5lY3RzLgogCistIElzc3VlICMxMTI5NzogQWRkIGNvbGxlY3Rpb25zLkNoYWluTWFwKCkuCisKKy0gSXNzdWUgIzEwNzU1OiBBZGQgdGhlIHBvc2l4LmZsaXN0ZGlyKCkgZnVuY3Rpb24uICBQYXRjaCBieSBSb3NzIExhZ2Vyd2FsbC4KKworLSBJc3N1ZSAjNDc2MTogQWRkIHRoZSAqYXQoKSBmYW1pbHkgb2YgZnVuY3Rpb25zIChvcGVuYXQoKSwgZXRjLikgdG8gdGhlIHBvc2l4CisgIG1vZHVsZS4gIFBhdGNoIGJ5IFJvc3MgTGFnZXJ3YWxsLgorCiAtIElzc3VlICM3MzIyOiBUcnlpbmcgdG8gcmVhZCBmcm9tIGEgc29ja2V0J3MgZmlsZS1saWtlIG9iamVjdCBhZnRlciBhIHRpbWVvdXQKICAgb2NjdXJyZWQgbm93IHJhaXNlcyBhbiBlcnJvciBpbnN0ZWFkIG9mIHNpbGVudGx5IGxvc2luZyBkYXRhLgogCistIElzc3VlICMxMTI5MTogcG9wbGliLlBPUCBubyBsb25nZXIgc3VwcHJlc3NlcyBlcnJvcnMgb24gcXVpdCgpLgorCistIElzc3VlICMxMTE3NzogYXN5bmNvcmUncyBjcmVhdGVfc29ja2V0KCkgYXJndW1lbnRzIGNhbiBub3cgYmUgb21pdHRlZC4KKworLSBJc3N1ZSAjNjA2NDogQWRkIGEgYGBkYWVtb25gYCBrZXl3b3JkIGFyZ3VtZW50IHRvIHRoZSB0aHJlYWRpbmcuVGhyZWFkCisgIGFuZCBtdWx0aXByb2Nlc3NpbmcuUHJvY2VzcyBjb25zdHJ1Y3RvcnMgaW4gb3JkZXIgdG8gb3ZlcnJpZGUgdGhlCisgIGRlZmF1bHQgYmVoYXZpb3VyIG9mIGluaGVyaXRpbmcgdGhlIGRhZW1vbmljIHByb3BlcnR5IGZyb20gdGhlIGN1cnJlbnQKKyAgdGhyZWFkL3Byb2Nlc3MuCisKIC0gSXNzdWUgIzEwOTU2OiBCdWZmZXJlZCBJL08gY2xhc3NlcyByZXRyeSByZWFkaW5nIG9yIHdyaXRpbmcgYWZ0ZXIgYSBzaWduYWwKICAgaGFzIGFycml2ZWQgYW5kIHRoZSBoYW5kbGVyIHJldHVybmVkIHN1Y2Nlc3NmdWxseS4KIAorLSBJc3N1ZSAjMTA3ODQ6IE5ldyBvcy5nZXRwcmlvcml0eSgpIGFuZCBvcy5zZXRwcmlvcml0eSgpIGZ1bmN0aW9ucy4KKworLSBJc3N1ZSAjMTExMTQ6IEZpeCBjYXRhc3Ryb3BoaWMgcGVyZm9ybWFuY2Ugb2YgdGVsbCgpIG9uIHRleHQgZmlsZXMgKHVwCisgIHRvIDEwMDB4IGZhc3RlciBpbiBzb21lIGNhc2VzKS4gIEl0IGlzIHN0aWxsIG9uZSB0byB0d28gb3JkZXIgb2YgbWFnbml0dWRlcworICBzbG93ZXIgdGhhbiBiaW5hcnkgdGVsbCgpLgorCistIElzc3VlICMxMDg4MjogQWRkIG9zLnNlbmRmaWxlIGZ1bmN0aW9uLgorCistIElzc3VlICMxMDg2ODogQWxsb3cgdXNhZ2Ugb2YgdGhlIHJlZ2lzdGVyIG1ldGhvZCBvZiBhbiBBQkMgYXMgYSBjbGFzcworICBkZWNvcmF0b3IuCisKIC0gSXNzdWUgIzExMjI0OiBGaXhlZCBhIHJlZ3Jlc3Npb24gaW4gdGFyZmlsZSB0aGF0IGFmZmVjdGVkIHRoZSBmaWxlLWxpa2UKICAgb2JqZWN0cyByZXR1cm5lZCBieSBUYXJGaWxlLmV4dHJhY3RmaWxlKCkgcmVnYXJkaW5nIHBlcmZvcm1hbmNlLCBtZW1vcnkKICAgY29uc3VtcHRpb24gYW5kIGZhaWx1cmVzIHdpdGggdGhlIHN0cmVhbSBpbnRlcmZhY2UuCiAKKy0gSXNzdWUgIzEwOTI0OiBBZGRpbmcgc2FsdCBhbmQgTW9kdWxhciBDcnlwdCBGb3JtYXQgdG8gY3J5cHQgbGlicmFyeS4KKyAgTW92ZWQgb2xkIEMgd3JhcHBlciB0byBfY3J5cHQsIGFuZCBhZGRlZCBhIFB5dGhvbiB3cmFwcGVyIHdpdGgKKyAgZW5oYW5jZWQgc2FsdCBnZW5lcmF0aW9uIGFuZCBzaW1wbGVyIEFQSSBmb3IgcGFzc3dvcmQgZ2VuZXJhdGlvbi4KKwogLSBJc3N1ZSAjMTEwNzQ6IE1ha2UgJ3Rva2VuaXplJyBzbyBpdCBjYW4gYmUgcmVsb2FkZWQuCiAKKy0gSXNzdWUgIzExMDg1OiBNb3ZlZCBjb2xsZWN0aW9ucyBhYnN0cmFjdCBiYXNlIGNsYXNzZXMgaW50byBhIHNlcGFyYXRlCisgIG1vZHVsZSBjYWxsZWQgY29sbGVjdGlvbnMuYWJjLCBmb2xsb3dpbmcgdGhlIHBhdHRlcm4gdXNlZCBieSBpbXBvcnRsaWIuYWJjLgorICBGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIHRoZSBuYW1lcyBhcmUgaW1wb3J0ZWQgaW50byB0aGUgY29sbGVjdGlvbnMKKyAgbW9kdWxlLgorCiAtIElzc3VlICM0NjgxOiBBbGxvdyBtbWFwKCkgdG8gd29yayBvbiBmaWxlIHNpemVzIGFuZCBvZmZzZXRzIGxhcmdlciB0aGFuCiAgIDRHQiwgZXZlbiBvbiAzMi1iaXQgYnVpbGRzLiAgSW5pdGlhbCBwYXRjaCBieSBSb3NzIExhZ2Vyd2FsbCwgYWRhcHRlZCBmb3IKICAgMzItYml0IFdpbmRvd3MuCiAKKy0gSXNzdWUgIzExMTY5OiBjb21waWxlYWxsIG1vZHVsZSB1c2VzIHJlcHIoKSB0byBmb3JtYXQgZmlsZW5hbWVzIGFuZCBwYXRocyB0bworICBlc2NhcGUgc3Vycm9nYXRlIGNoYXJhY3RlcnMgYW5kIHNob3cgc3BhY2VzLgorCiAtIElzc3VlICMxMTA4OTogRml4IHBlcmZvcm1hbmNlIGlzc3VlIGxpbWl0aW5nIHRoZSB1c2Ugb2YgQ29uZmlnUGFyc2VyKCkKICAgd2l0aCBsYXJnZSBjb25maWcgZmlsZXMuCiAKIC0gSXNzdWUgIzEwMjc2OiBGaXggdGhlIHJlc3VsdHMgb2YgemxpYi5jcmMzMigpIGFuZCB6bGliLmFkbGVyMzIoKSBvbiBidWZmZXJzCiAgIGxhcmdlciB0aGFuIDRHQi4gIFBhdGNoIGJ5IE5hZGVlbSBWYXdkYS4KIAorLSBJc3N1ZSAjMTEzODg6IEFkZGVkIGEgY2xlYXIoKSBtZXRob2QgdG8gTXV0YWJsZVNlcXVlbmNlCisKKy0gSXNzdWUgIzExMTc0OiBBZGQgYXJncGFyc2UuTWV0YXZhclR5cGVIZWxwRm9ybWF0dGVyLCB3aGljaCB1c2VzIHR5cGUgbmFtZXMKKyAgZm9yIHRoZSBuYW1lcyBvZiBvcHRpb25hbCBhbmQgcG9zaXRpb25hbCBhcmd1bWVudHMgaW4gaGVscCBtZXNzYWdlcy4KKwogLSBJc3N1ZSAjOTM0ODogUmFpc2UgYW4gZWFybHkgZXJyb3IgaWYgYXJncGFyc2UgbmFyZ3MgYW5kIG1ldGF2YXIgZG9uJ3QgbWF0Y2guCiAKIC0gSXNzdWUgIzg5ODI6IEltcHJvdmUgdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBhcmdwYXJzZSBOYW1lc3BhY2Ugb2JqZWN0LgpAQCAtMTQzMywyOCArMjAyOCwxMzcgQEAKIAogLSBJc3N1ZSAjOTM0NzogRml4IGZvcm1hdHRpbmcgZm9yIHR1cGxlcyBpbiBhcmdwYXJzZSB0eXBlPSBlcnJvciBtZXNzYWdlcy4KIAorLSBJc3N1ZSAjMTIxOTE6IEFkZGVkIHNodXRpbC5jaG93bigpIHRvIGNoYW5nZSB1c2VyIGFuZC9vciBncm91cCBvd25lciBvZiBhCisgIGdpdmVuIHBhdGggYWxzbyBzcGVjaWZ5aW5nIHRoZWlyIG5hbWVzLgorCistIElzc3VlICMxMzk4ODogVGhlIF9lbGVtZW50dHJlZSBhY2NlbGVyYXRvciBpcyB1c2VkIHdoZW5ldmVyIGF2YWlsYWJsZS4KKyAgTm93IHhtbC5ldHJlZS5jRWxlbWVudFRyZWUgYmVjb21lcyBhIGRlcHJlY2F0ZWQgYWxpYXMgdG8gRWxlbWVudFRyZWUuCisKIEJ1aWxkCiAtLS0tLQogCistIElzc3VlICM2ODA3OiBSdW4gbXNpc3VwcG9ydC5tYWsgZWFybGllci4KKworLSBJc3N1ZSAjMTA1ODA6IE1pbm9yIGdyYW1tYXIgY2hhbmdlIGluIFdpbmRvd3MgaW5zdGFsbGVyLgorCistIElzc3VlICMxMzMyNjogQ2xlYW4gX19weWNhY2hlX18gZGlyZWN0b3JpZXMgY29ycmVjdGx5IG9uIE9wZW5CU0QuCisKKy0gUEVQIDM5MzogdGhlIGNvbmZpZ3VyZSBvcHRpb24gLS13aXRoLXdpZGUtdW5pY29kZSBpcyByZW1vdmVkLgorCistIElzc3VlICMxMjg1MjogU2V0IF9YT1BFTl9TT1VSQ0UgdG8gNzAwLCBpbnN0ZWFkIG9mIDYwMCwgdG8gZ2V0IFBPU0lYIDIwMDgKKyAgZnVuY3Rpb25zIG9uIE9wZW5CU0QgKGUuZy4gZmRvcGVuZGlyKS4KKworLSBJc3N1ZSAjMTE4NjM6IFJlbW92ZSBzdXBwb3J0IGZvciBsZWdhY3kgc3lzdGVtcyBkZXByZWNhdGVkIGluIFB5dGhvbiAzLjIKKyAgKGZvbGxvd2luZyBQRVAgMTEpLiAgVGhlc2Ugc3lzdGVtcyBhcmUgc3lzdGVtcyB1c2luZyBNYWNoIEMgVGhyZWFkcywKKyAgU3VuT1MgbGlnaHR3ZWlnaHQgcHJvY2Vzc2VzLCBHTlUgcHRoIHRocmVhZHMgYW5kIElSSVggdGhyZWFkcy4KKworLSBJc3N1ZSAjODc0NjogQ29ycmVjdCBmYXVsdHkgY29uZmlndXJlIGNoZWNrcyBzbyB0aGF0IG9zLmNoZmxhZ3MoKSBhbmQKKyAgb3MubGNoZmxhZ3MoKSBhcmUgb25jZSBhZ2FpbiBidWlsdCBvbiBzeXN0ZW1zIHRoYXQgc3VwcG9ydCB0aGVzZQorICBmdW5jdGlvbnMgKCpCU0QgYW5kIE9TIFgpLiAgQWxzbyBhZGQgbmV3IHN0YXQgZmlsZSBmbGFncyBmb3IgT1MgWAorICAoVUZfSElEREVOIGFuZCBVRl9DT01QUkVTU0VEKS4KKworLSBJc3N1ZSAjMTA2NDU6IEluc3RhbGxpbmcgUHl0aG9uIGRvZXMgbm8gbG9uZ2VyIGNyZWF0ZSBhCisgIFB5dGhvbi1YLlkuWi1weVguWS5lZ2ctaW5mbyBmaWxlIGluIHRoZSBsaWItZHlubG9hZCBkaXJlY3RvcnkuCisKKy0gRG8gbm90IGFjY2lkZW50YWxseSBpbmNsdWRlIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyBzcWxpdGUuaCB0d2ljZSB3aGVuCisgIGJ1aWxkaW5nIHNxbGl0ZTMuCisKKy0gSXNzdWUgIzExMjE3OiBGb3IgNjQtYml0LzMyLWJpdCBNYWMgT1MgWCB1bml2ZXJzYWwgZnJhbWV3b3JrIGJ1aWxkcywKKyAgZW5zdXJlICJtYWtlIGluc3RhbGwiIGNyZWF0ZXMgc3ltbGlua3MgaW4gLS1wcmVmaXggYmluIGZvciB0aGUgIi0zMiIKKyAgZmlsZXMgaW4gdGhlIGZyYW1ld29yayBiaW4gZGlyZWN0b3J5IGxpa2UgdGhlIGluc3RhbGxlciBkb2VzLgorCistIElzc3VlICMxMTM0NzogVXNlIC0tbm8tYXMtbmVlZGVkIHdoZW4gbGlua2luZyBsaWJweXRob24zLnNvLgorCiAtIElzc3VlICMxMTQxMTogRml4ICdtYWtlIERFU1RESVI9JyB3aXRoIGEgcmVsYXRpdmUgZGVzdGluYXRpb24uCiAKLS0gSXNzdWUgIzExMjY4OiBQcmV2ZW50IE1hYyBPUyBYIEluc3RhbGxlciBmYWlsdXJlIGlmIERvY3VtZW50YXRpb24gcGFja2FnZSBoYWQKLSAgcHJldmlvdXNseSBiZWVuIGluc3RhbGxlZC4KKy0gSXNzdWUgIzExMjY4OiBQcmV2ZW50IE1hYyBPUyBYIEluc3RhbGxlciBmYWlsdXJlIGlmIERvY3VtZW50YXRpb24KKyAgcGFja2FnZSBoYWQgcHJldmlvdXNseSBiZWVuIGluc3RhbGxlZC4KKworLSBJc3N1ZSAjMTE0OTU6IE9TRiBzdXBwb3J0IGlzIGVsaW1pbmF0ZWQuIEl0IHdhcyBkZXByZWNhdGVkIGluIFB5dGhvbiAzLjIuCisKIAogSURMRQogLS0tLQogCi0tIElzc3VlICMxMTcxODogSURMRSdzIG9wZW4gbW9kdWxlIGRpYWxvZyBjb3VsZG4ndCBmaW5kIHRoZSBfX2luaXRfXy5weSBmaWxlIGluCi0gIGEgcGFja2FnZS4KKy0gSXNzdWUgIzExNzE4OiBJRExFJ3Mgb3BlbiBtb2R1bGUgZGlhbG9nIGNvdWxkbid0IGZpbmQgdGhlIF9faW5pdF9fLnB5CisgIGZpbGUgaW4gYSBwYWNrYWdlLgogCiBUb29scy9EZW1vcwogLS0tLS0tLS0tLS0KIAorLSBJc3N1ZSAjMTQwNTM6IHBhdGNoY2hlY2sucHkgKCJtYWtlIHBhdGNoY2hlY2siKSBub3cgd29ya3Mgd2l0aCBNUSBwYXRjaGVzLgorICBQYXRjaCBieSBGcmFuY2lzY28gTWFydMOtbiBCcnVndcOpLgorCistIElzc3VlICMxMzkzMDogMnRvMyBpcyBub3cgYWJsZSB0byB3cml0ZSBpdHMgY29udmVydGVkIG91dHB1dCBmaWxlcyB0byBhbm90aGVyCisgIGRpcmVjdG9yeSB0cmVlIGFzIHdlbGwgYXMgY29weWluZyB1bmNoYW5nZWQgZmlsZXMgYW5kIGFsdGVyaW5nIHRoZSBmaWxlCisgIHN1ZmZpeC4gIFNlZSBpdHMgbmV3IC1vLCAtVyBhbmQgLS1hZGQtc3VmZml4IG9wdGlvbnMuICBUaGlzIG1ha2VzIGl0IG1vcmUKKyAgdXNlZnVsIGluIG1hbnkgYXV0b21hdGVkIGNvZGUgdHJhbnNsYXRpb24gd29ya2Zsb3dzLgorCistIElzc3VlICMxMzYyODogcHl0aG9uLWdkYi5weSBpcyBub3cgYWJsZSB0byByZXRyaWV2ZSBtb3JlIGZyYW1lcyBpbiB0aGUgUHl0aG9uCisgIHRyYWNlYmFjayBpZiBQeXRob24gaXMgb3B0aW1pemVkLgorCistIElzc3VlICMxMTk5NjogbGlicHl0aG9uIChnZGIpLCByZXBsYWNlICJweS1idCIgY29tbWFuZCBieSAicHktYnQtZnVsbCIgYW5kCisgIGFkZCBhIHNtYXJ0ZXIgInB5LWJ0IiBjb21tYW5kIHByaW50aW5nIGEgY2xhc3NpYyBQeXRob24gdHJhY2ViYWNrLgorCiAtIElzc3VlICMxMTE3OTogTWFrZSBjY2JlbmNoIHdvcmsgdW5kZXIgUHl0aG9uIDMuMSBhbmQgMi43IGFnYWluLgogCistIElzc3VlICMxMDYzOTogcmVpbmRlbnQucHkgbm8gbG9uZ2VyIGNvbnZlcnRzIG5ld2xpbmVzIGFuZCB3aWxsIHJhaXNlCisgIGFuIGVycm9yIGlmIGF0dGVtcHRpbmcgdG8gY29udmVydCBhIGZpbGUgd2l0aCBtaXhlZCBuZXdsaW5lcy4KKyAgIi0tbmV3bGluZSIgb3B0aW9uIGFkZGVkIHRvIHNwZWNpZnkgbmV3IGxpbmUgY2hhcmFjdGVyLgorCiBFeHRlbnNpb24gTW9kdWxlcwogLS0tLS0tLS0tLS0tLS0tLS0KIAorLSBJc3N1ZSAjMTM4NDA6IFRoZSBlcnJvciBtZXNzYWdlIHByb2R1Y2VkIGJ5IGN0eXBlcy5jcmVhdGVfc3RyaW5nX2J1ZmZlcgorICB3aGVuIGdpdmVuIGEgVW5pY29kZSBzdHJpbmcgaGFzIGJlZW4gZml4ZWQuCisKKy0gSXNzdWUgIzk5NzU6IHNvY2tldDogRml4IGluY29ycmVjdCB1c2Ugb2YgZmxvd2luZm8gYW5kIHNjb3BlX2lkLiBQYXRjaCBieQorICBWaWxtb3MgTmViZWhhai4KKworLSBJc3N1ZSAjNzc3Nzogc29ja2V0OiBBZGQgUmVsaWFibGUgRGF0YWdyYW0gU29ja2V0cyAoUEZfUkRTKSBzdXBwb3J0LgorCistIElzc3VlICMxMzE1OTogRmlsZUlPIGFuZCBCWjJDb21wcmVzc29yL0JaMkRlY29tcHJlc3NvciBub3cgdXNlIGEgbGluZWFyLXRpbWUKKyAgYnVmZmVyIGdyb3d0aCBzdHJhdGVneSBpbnN0ZWFkIG9mIGEgcXVhZHJhdGljLXRpbWUgb25lLgorCistIElzc3VlICMxMDE0MTogc29ja2V0OiBBZGQgU29ja2V0Q0FOIChQRl9DQU4pIHN1cHBvcnQuIEluaXRpYWwgcGF0Y2ggYnkKKyAgTWF0dGhpYXMgRnVjaHMsIHVwZGF0ZWQgYnkgVGlhZ28gR29uw6dhbHZlcy4KKworLSBJc3N1ZSAjMTMwNzA6IEZpeCBhIGNyYXNoIHdoZW4gYSBUZXh0SU9XcmFwcGVyIGNhdWdodCBpbiBhIHJlZmVyZW5jZSBjeWNsZQorICB3b3VsZCBiZSBmaW5hbGl6ZWQgYWZ0ZXIgdGhlIHJlZmVyZW5jZSB0byBpdHMgdW5kZXJseWluZyBCdWZmZXJlZFJXUGFpcidzCisgIHdyaXRlciBnb3QgY2xlYXJlZCBieSB0aGUgR0MuCisKKy0gSXNzdWUgIzEyODgxOiBjdHlwZXM6IEZpeCBzZWdmYXVsdCB3aXRoIGxhcmdlIHN0cnVjdHVyZSBmaWVsZCBuYW1lcy4KKworLSBJc3N1ZSAjMTMwNTg6IG9zc2F1ZGlvZGV2OiBmaXggYSBmaWxlIGRlc2NyaXB0b3IgbGVhayBvbiBlcnJvci4gUGF0Y2ggYnkKKyAgVGhvbWFzIEphcm9zY2guCisKKy0gSXNzdWUgIzEzMDEzOiBjdHlwZXM6IEZpeCBhIHJlZmVyZW5jZSBsZWFrIGluIFB5Q0FycmF5VHlwZV9mcm9tX2N0eXBlLgorICBUaGFua3MgdG8gU3VtYW4gU2FoYSBmb3IgZmluZGluZyB0aGUgYnVnIGFuZCBwcm92aWRpbmcgYSBwYXRjaC4KKworLSBJc3N1ZSAjMTMwMjI6IEZpeDogX211bHRpcHJvY2Vzc2luZy5yZWN2ZmQoKSBkb2Vzbid0IGNoZWNrIHRoYXQKKyAgZmlsZSBkZXNjcmlwdG9yIHdhcyBhY3R1YWxseSByZWNlaXZlZC4KKworLSBJc3N1ZSAjMTE3MjcxMTogQWRkICdsb25nIGxvbmcnIHN1cHBvcnQgdG8gdGhlIGFycmF5IG1vZHVsZS4KKyAgSW5pdGlhbCBwYXRjaCBieSBPcmVuIFRpcm9zaCBhbmQgSGlyb2thenUgWWFtYW1vdG8uCisKKy0gSXNzdWUgIzEyNDgzOiBjdHlwZXM6IEZpeCBhIGNyYXNoIHdoZW4gdGhlIGRlc3RydWN0aW9uIG9mIGEgY2FsbGJhY2sKKyAgb2JqZWN0IHRyaWdnZXJzIHRoZSBnYXJiYWdlIGNvbGxlY3Rvci4KKworLSBJc3N1ZSAjMTI5NTA6IEZpeCBwYXNzaW5nIGZpbGUgZGVzY3JpcHRvcnMgaW4gbXVsdGlwcm9jZXNzaW5nLCB1bmRlcgorICBPcGVuSW5kaWFuYS9JbGx1bW9zLgorCistIElzc3VlICMxMjc2NDogRml4IGEgY3Jhc2ggaW4gY3R5cGVzIHdoZW4gdGhlIG5hbWUgb2YgYSBTdHJ1Y3R1cmUgZmllbGQgaXMgbm90CisgIGEgc3RyaW5nLgorCistIElzc3VlICMxMTI0MTogc3ViY2xhc3NlcyBvZiBjdHlwZXMuQXJyYXkgY2FuIG5vdyBiZSBzdWJjbGFzc2VkLgorCistIElzc3VlICM5NjUxOiBGaXggYSBjcmFzaCB3aGVuIGN0eXBlcy5jcmVhdGVfc3RyaW5nX2J1ZmZlcigwKSB3YXMgcGFzc2VkIHRvCisgIHNvbWUgZnVuY3Rpb25zIGxpa2UgZmlsZS53cml0ZSgpLgorCistIElzc3VlICMxMDMwOTogRGVmaW5lIF9HTlVfU09VUkNFIHNvIHRoYXQgbXJlbWFwKCkgZ2V0cyB0aGUgcHJvcGVyCisgIHNpZ25hdHVyZS4gIFdpdGhvdXQgdGhpcywgYXJjaGl0ZWN0dXJlcyB3aGVyZSBzaXplb2Ygdm9pZCogIT0gc2l6ZW9mIGludCBhcmUKKyAgYnJva2VuLiAgUGF0Y2ggZ2l2ZW4gYnkgSGFsbHZhcmQgQiBGdXJ1c2V0aC4KKwogLSBJc3N1ZSAjMTIwNTE6IEZpeCBzZWdmYXVsdCBpbiBqc29uLmR1bXBzKCkgd2hpbGUgZW5jb2RpbmcgaGlnaGx5LW5lc3RlZAogICBvYmplY3RzIHVzaW5nIHRoZSBDIGFjY2VsZXJhdGlvbnMuCiAKQEAgLTE0NjcsMzUgKzIxNzEsMTg0IEBACiBUZXN0cwogLS0tLS0KIAorLSBJc3N1ZSAjMTE2ODk6IEZpeCBhIHZhcmlhYmxlIHNjb3BpbmcgZXJyb3IgaW4gYW4gc3FsaXRlMyB0ZXN0CisKKy0gSXNzdWUgIzEzNzg2OiBSZW1vdmUgdW5pbXBsZW1lbnRlZCAndHJhY2UnIGxvbmcgb3B0aW9uIGZyb20gcmVncnRlc3QucHkuCisKKy0gSXNzdWUgIzEzNzI1OiBGaXggcmVncnRlc3QgdG8gcmVjb2duaXplIHRoZSBkb2N1bWVudGVkIC1kIGZsYWcuCisgIFBhdGNoIGJ5IEVybm8gVHVraWEuCisKKy0gSXNzdWUgIzEzMzA0OiBTa2lwIHRlc3QgY2FzZSBpZiB1c2VyIHNpdGUtcGFja2FnZXMgZGlzYWJsZWQgKC1zIG9yCisgIFBZVEhPTk5PVVNFUlNJVEUpLiAgKFBhdGNoIGJ5IENhcmwgTWV5ZXIpCisKKy0gSXNzdWUgIzU2NjE6IEFkZCBhIHRlc3QgZm9yIEVDT05OUkVTRVQvRVBJUEUgaGFuZGxpbmcgdG8gdGVzdF9hc3luY29yZS4gUGF0Y2gKKyAgYnkgWGF2aWVyIGRlIEdheWUuCisKKy0gSXNzdWUgIzEzMjE4OiBGaXggdGVzdF9zc2wgZmFpbHVyZXMgb24gRGViaWFuL1VidW50dS4KKworLSBSZS1lbmFibGUgbGliMnRvMydzIHRlc3RfcGFyc2VyLnB5IHRlc3RzLCB0aG91Z2ggd2l0aCBhbiBleHBlY3RlZCBmYWlsdXJlCisgIChzZWUgaXNzdWUgMTMxMjUpLgorCistIElzc3VlICMxMjY1NjogQWRkIHRlc3RzIGZvciBJUHY2IGFuZCBVbml4IHNvY2tldHMgdG8gdGVzdF9hc3luY29yZS4KKworLSBJc3N1ZSAjNjQ4NDogQWRkIHVuaXQgdGVzdHMgZm9yIG1haWxjYXAgbW9kdWxlIChwYXRjaCBieSBHcmVnb3J5IE5vZmkpCisKKy0gSXNzdWUgIzExNjUxOiBJbXByb3ZlIHRoZSBNYWtlZmlsZSB0ZXN0IHRhcmdldHMgdG8gcnVuIG1vcmUgb2YgdGhlIHRlc3Qgc3VpdGUKKyAgbW9yZSBxdWlja2x5LiBUaGUgLS1tdWx0aXByb2Nlc3Mgb3B0aW9uIGlzIG5vdyBlbmFibGVkIGJ5IGRlZmF1bHQsIHJlZHVjaW5nCisgIHRoZSBhbW91bnQgb2YgdGltZSBuZWVkZWQgdG8gcnVuIHRoZSB0ZXN0cy4gIm1ha2UgdGVzdCIgYW5kICJtYWtlIHF1aWNrdGVzdCIKKyAgbm93IGluY2x1ZGUgc29tZSByZXNvdXJjZS1pbnRlbnNpdmUgdGVzdHMsIGJ1dCBubyBsb25nZXIgcnVuIHRoZSB0ZXN0IHN1aXRlCisgIHR3aWNlIHRvIGNoZWNrIGZvciBidWdzIGluIC5weWMgZ2VuZXJhdGlvbi4gVG9vbHMvc2NyaXB0cy9ydW5fdGVzdC5weSBwcm92aWRlcworICBhbiBlYXN5IHBsYXRmb3JtLWluZGVwZW5kZW50IHdheSB0byBydW4gdGVzdCBzdWl0ZSB3aXRoIHNlbnNpYmxlIGRlZmF1bHRzLgorCistIElzc3VlICMxMjMzMTogVGhlIHRlc3Qgc3VpdGUgZm9yIHRoZSBwYWNrYWdpbmcgbW9kdWxlIGNhbiBub3cgcnVuIGZyb20gYW4KKyAgaW5zdGFsbGVkIFB5dGhvbi4KKworLSBJc3N1ZSAjMTIzMzE6IFRoZSB0ZXN0IHN1aXRlIGZvciBsaWIydG8zIGNhbiBub3cgcnVuIGZyb20gYW4gaW5zdGFsbGVkCisgIFB5dGhvbi4KKworLSBJc3N1ZSAjMTI2MjY6IEluIHJlZ3J0ZXN0LCBhbGxvdyB0byBmaWx0ZXIgdGVzdHMgdXNpbmcgYSBnbG9iIGZpbHRlcgorICB3aXRoIHRoZSBgYC1tYGAgKG9yIGBgLS1tYXRjaGBgKSBvcHRpb24uICBUaGlzIHdvcmtzIHdpdGggYWxsIHRlc3QgY2FzZXMKKyAgdXNpbmcgdGhlIHVuaXR0ZXN0IG1vZHVsZS4gIFRoaXMgaXMgdXNlZnVsIHdpdGggbG9uZyB0ZXN0IHN1aXRlcworICBzdWNoIGFzIHRlc3RfaW8gb3IgdGVzdF9zdWJwcm9jZXNzLgorCistIElzc3VlICMxMjYyNDogSXQgaXMgbm93IHBvc3NpYmxlIHRvIGZhaWwgYWZ0ZXIgdGhlIGZpcnN0IGZhaWx1cmUgd2hlbgorICBydW5uaW5nIGluIHZlcmJvc2UgbW9kZSAoYGAtdmBgIG9yIGBgLVdgYCksIGJ5IHVzaW5nIHRoZSBgYC0tZmFpbGZhc3RgYAorICAob3IgYGAtR2BgKSBvcHRpb24gdG8gcmVncnRlc3QuICBUaGlzIGlzIHVzZWZ1bCB3aXRoIGxvbmcgdGVzdCBzdWl0ZXMKKyAgc3VjaCBhcyB0ZXN0X2lvIG9yIHRlc3Rfc3VicHJvY2Vzcy4KKworLSBJc3N1ZSAjMTI1ODc6IENvcnJlY3QgZmF1bHR5IHRlc3QgZmlsZSBhbmQgcmVmZXJlbmNlIGluIHRlc3RfdG9rZW5pemUuCisgIChQYXRjaCBieSBSb2JlcnQgWGlhbykKKworLSBJc3N1ZSAjMTI1NzM6IEFkZCByZXNvdXJjZSBjaGVja3MgZm9yIGRhbmdsaW5nIFRocmVhZCBhbmQgUHJvY2VzcyBvYmplY3RzLgorCistIElzc3VlICMxMjU0OTogQ29ycmVjdCB0ZXN0X3BsYXRmb3JtIHRvIG5vdCBmYWlsIHdoZW4gT1MgWCByZXR1cm5zICd4ODZfNjQnCisgIGFzIHRoZSBwcm9jZXNzb3IgdHlwZSBvbiBzb21lIE1hYyBzeXN0ZW1zLgorCistIFNraXAgbmV0d29yayB0ZXN0cyB3aGVuIGdldGFkZHJpbmZvKCkgcmV0dXJucyBFQUlfQUdBSU4sIG1lYW5pbmcgYSB0ZW1wb3JhcnkKKyAgZmFpbHVyZSBpbiBuYW1lIHJlc29sdXRpb24uCisKKy0gSXNzdWUgIzExODEyOiBTb2x2ZSB0cmFuc2llbnQgc29ja2V0IGZhaWx1cmUgdG8gY29ubmVjdCB0byAnbG9jYWxob3N0JworICBpbiB0ZXN0X3RlbG5ldGxpYi5weS4KKworLSBTb2x2ZWQgYSBwb3RlbnRpYWwgZGVhZGxvY2sgaW4gdGVzdF90ZWxuZXRsaWIucHkuIFJlbGF0ZWQgdG8gaXNzdWUgIzExODEyLgorCistIEF2b2lkIGZhaWxpbmcgaW4gdGVzdF9yb2JvdHBhcnNlciB3aGVuIG11ZWJsZXNtb3JhbGVkYS5jb20gaXMgZmxha3kgYW5kCisgIGFuIG92ZXJ6ZWFsb3VzIEROUyBzZXJ2aWNlIChlLmcuIE9wZW5ETlMpIHJlZGlyZWN0cyB0byBhIHBsYWNlaG9sZGVyCisgIFdlYiBzaXRlLgorCistIEF2b2lkIGZhaWxpbmcgaW4gdGVzdF91cmxsaWJuZXQudGVzdF9iYWRfYWRkcmVzcyB3aGVuIHNvbWUgb3ZlcnplYWxvdXMKKyAgRE5TIHNlcnZpY2UgKGUuZy4gT3BlbkROUykgcmVzb2x2ZXMgYSBub24tZXhpc3RlbnQgZG9tYWluIG5hbWUuICBUaGUgdGVzdAorICBpcyBub3cgc2tpcHBlZCBpbnN0ZWFkLgorCistIElzc3VlICMxMjQ0MDogV2hlbiB0ZXN0aW5nIHdoZXRoZXIgc29tZSBiaXRzIGluIFNTTENvbnRleHQub3B0aW9ucyBjYW4gYmUKKyAgcmVzZXQsIGNoZWNrIHRoZSB2ZXJzaW9uIG9mIHRoZSBPcGVuU1NMIGhlYWRlcnMgUHl0aG9uIHdhcyBjb21waWxlZCBhZ2FpbnN0LAorICByYXRoZXIgdGhhbiB0aGUgcnVudGltZSB2ZXJzaW9uIG9mIHRoZSBPcGVuU1NMIGxpYnJhcnkuCisKKy0gSXNzdWUgIzExNTEyOiBBZGQgYSB0ZXN0IHN1aXRlIGZvciB0aGUgY2dpdGIgbW9kdWxlLiBQYXRjaCBieSBSb2JiaWUgQ2xlbW9ucy4KKworLSBJc3N1ZSAjMTI0OTc6IEluc3RhbGwgdGVzdC9kYXRhIHRvIHByZXZlbnQgZmFpbHVyZXMgb2YgdGhlIHZhcmlvdXMgY29kZWNtYXBzCisgIHRlc3RzLgorCistIElzc3VlICMxMjQ5NjogSW5zdGFsbCB0ZXN0L2NhcGF0aCBkaXJlY3RvcnkgdG8gcHJldmVudCB0ZXN0X2Nvbm5lY3RfY2FwYXRoCisgIHRlc3RjYXNlIGZhaWx1cmUgaW4gdGVzdF9zc2wuCisKKy0gSXNzdWUgIzEyNDY5OiBSdW4gd2FrZXVwIGFuZCBwZW5kaW5nIHNpZ25hbCB0ZXN0cyBpbiBhIHN1YnByb2Nlc3MgdG8gcnVuIHRoZQorICB0ZXN0IGluIGEgZnJlc2ggcHJvY2VzcyB3aXRoIG9ubHkgb25lIHRocmVhZCBhbmQgdG8gbm90IGNoYW5nZSBzaWduYWwKKyAgaGFuZGxpbmcgb2YgdGhlIHBhcmVudCBwcm9jZXNzLgorCistIElzc3VlICM4NzE2OiBBdm9pZCBjcmFzaGVzIGNhdXNlZCBieSBBcXVhIFRrIG9uIE9TWCB3aGVuIGF0dGVtcHRpbmcgdG8gcnVuCisgIHRlc3RfdGsgb3IgdGVzdF90dGtfZ3Vpb25seSB1bmRlciBhIHVzZXJuYW1lIHRoYXQgaXMgbm90IGN1cnJlbnRseSBsb2dnZWQKKyAgaW4gdG8gdGhlIGNvbnNvbGUgd2luZG93c2VydmVyIChhcyBtYXkgYmUgdGhlIGNhc2UgdW5kZXIgYnVpbGRib3Qgb3Igc3NoKS4KKworLSBJc3N1ZSAjMTI0MDc6IEV4cGxpY2l0bHkgc2tpcCB0ZXN0X2NhcGkuRW1iZWRkaW5nVGVzdCB1bmRlciBXaW5kb3dzLgorCistIElzc3VlICMxMjQwMDogcmVncnRlc3QgLVcgZG9lc24ndCByZXJ1biB0aGUgdGVzdHMgdHdpY2UgYW55bW9yZSwgYnV0IGNhcHR1cmVzCisgIHRoZSBvdXRwdXQgYW5kIGRpc3BsYXlzIGl0IG9uIGZhaWx1cmUgaW5zdGVhZC4gcmVncnRlc3QgLXYgZG9lc24ndCBwcmludCB0aGUKKyAgZXJyb3IgdHdpY2UgYW55bW9yZSBpZiB0aGVyZSBpcyBvbmx5IG9uZSBlcnJvci4KKworLSBJc3N1ZSAjMTIxNDE6IEluc3RhbGwgY29waWVzIG9mIHRlbXBsYXRlIEMgbW9kdWxlIGZpbGUgc28gdGhhdAorICB0ZXN0X2J1aWxkX2V4dCBvZiB0ZXN0X2Rpc3R1dGlscyBhbmQgdGVzdF9jb21tYW5kX2J1aWxkX2V4dCBvZgorICB0ZXN0X3BhY2thZ2luZyBhcmUgbm8gbG9uZ2VyIHNpbGVudGx5IHNraXBwZWQgd2hlbgorICBydW4gb3V0c2lkZSBvZiBhIGJ1aWxkIGRpcmVjdG9yeS4KKworLSBJc3N1ZSAjODc0NjogQWRkIGFkZGl0aW9uYWwgdGVzdHMgZm9yIG9zLmNoZmxhZ3MoKSBhbmQgb3MubGNoZmxhZ3MoKS4KKyAgUGF0Y2ggYnkgR2FycmV0dCBDb29wZXIuCisKKy0gSXNzdWUgIzEwNzM2OiBGaXggdGVzdF90dGsgdGVzdF93aWRnZXRzIGZhaWx1cmVzIHdpdGggQ29jb2EgVGsgOC41LjkKKyAgMi44ICsgIG9uIE1hYyBPUyBYLiAgKFBhdGNoIGJ5IFJvbmFsZCBPdXNzb3JlbikKKworLSBJc3N1ZSAjMTIwNTc6IEFkZCB0ZXN0cyBmb3IgSVNPIDIwMjIgY29kZWNzIChpc28yMDIyX2pwLCBpc28yMDIyX2pwXzIsCisgIGlzbzIwMjJfa3IpLgorCistIElzc3VlICMxMjA5NjogRml4IGEgcmFjZSBjb25kaXRpb24gaW4gdGVzdF90aHJlYWRpbmcudGVzdF93YWl0Zm9yKCkuIFBhdGNoCisgIHdyaXR0ZW4gYnkgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgorCistIElzc3VlICMxMTYxNDogaW1wb3J0IF9faGVsbG9fXyBwcmludHMgIkhlbGxvIFdvcmxkISIuIFBhdGNoIHdyaXR0ZW4gYnkKKyAgQW5kcmVhcyBTdMO8aHJrLgorCistIElzc3VlICM1NzIzOiBJbXByb3ZlIGpzb24gdGVzdHMgdG8gYmUgZXhlY3V0ZWQgd2l0aCBhbmQgd2l0aG91dCBhY2NlbGVyYXRpb25zLgorCistIElzc3VlICMxMjA0MTogTWFrZSB0ZXN0X3dhaXQzIG1vcmUgcm9idXN0LgorCiAtIElzc3VlICMxMTg3MzogQ2hhbmdlIHJlZ2V4IGluIHRlc3RfY29tcGlsZWFsbCB0byBmaXggb2NjYXNpb25hbCBmYWlsdXJlcyB3aGVuCiAgIHdoZW4gdGhlIHJhbmRvbWx5IGdlbmVyYXRlZCB0ZW1wb3JhcnkgcGF0aCBoYXBwZW5lZCB0byBtYXRjaCB0aGUgcmVnZXguCiAKKy0gSXNzdWUgIzExOTU4OiBGaXggRlRQIHRlc3RzIGZvciBJUHY2LCBiaW5kIHRvICI6OjEiIGluc3RlYWQgb2YgImxvY2FsaG9zdCIuCisgIFBhdGNoIHdyaXR0ZW4gYnkgQ2hhcmxlcy1GcmFuY29pcyBOYXRhbGkuCisKKy0gSXNzdWUgIzg0MDcsICMxMTg1OTogRml4IHRlc3RzIG9mIHRlc3RfaW8gdXNpbmcgdGhyZWFkcyBhbmQgYW4gYWxhcm06IHVzZQorICBwdGhyZWFkX3NpZ21hc2soKSB0byBlbnN1cmUgdGhhdCB0aGUgU0lHQUxSTSBzaWduYWwgaXMgcmVjZWl2ZWQgYnkgdGhlIG1haW4KKyAgdGhyZWFkLgorCistIElzc3VlICMxMTgxMTogRmFjdG9yIG91dCBkZXRlY3Rpb24gb2YgSVB2NiBzdXBwb3J0IG9uIHRoZSBjdXJyZW50IGhvc3QKKyAgYW5kIG1ha2UgaXQgYXZhaWxhYmxlIGFzIGBgdGVzdC5zdXBwb3J0LklQVjZfRU5BQkxFRGBgLiAgUGF0Y2ggYnkKKyAgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgorCiAtIElzc3VlICMxMDkxNDogQWRkIGEgbWluaW1hbCBlbWJlZGRpbmcgdGVzdCB0byB0ZXN0X2NhcGkuCiAKLS0gSXNzdWUgIzExNzkwOiBGaXggc3BvcmFkaWMgZmFpbHVyZXMgaW4KLSAgdGVzdF9tdWx0aXByb2Nlc3NpbmcuV2l0aFByb2Nlc3Nlc1Rlc3RDb25kaXRpb24uCistIElzc3VlICMxMTIyMzogU2tpcCB0ZXN0X2xvY2tfYWNxdWlyZV9pbnRlcnJ1cHRpb24oKSBhbmQKKyAgdGVzdF9ybG9ja19hY3F1aXJlX2ludGVycnVwdGlvbigpIG9mIHRlc3RfdGhyZWFkc2lnbmFscyBpZiBhIHRocmVhZCBsb2NrIGlzCisgIGltcGxlbWVudGVkIHVzaW5nIGEgUE9TSVggbXV0ZXggYW5kIGEgUE9TSVggY29uZGl0aW9uIHZhcmlhYmxlLiBBIFBPU0lYCisgIGNvbmRpdGlvbiB2YXJpYWJsZSBjYW5ub3QgYmUgaW50ZXJydXB0ZWQgYnkgYSBzaWduYWwgKGUuZy4gb24gTGludXgsIHRoZQorICBmdXRleCBzeXN0ZW0gY2FsbCBpcyByZXN0YXJ0ZWQpLgorCistIElzc3VlICMxMTc5MDogRml4IHNwb3JhZGljIGZhaWx1cmVzIGluIHRlc3RfbXVsdGlwcm9jZXNzaW5nLldpdGhQcm9jZXNzZXNUZXN0Q29uZGl0aW9uLgogCiAtIEZpeCBwb3NzaWJsZSAiZmlsZSBhbHJlYWR5IGV4aXN0cyIgZXJyb3Igd2hlbiBydW5uaW5nIHRoZSB0ZXN0cyBpbiBwYXJhbGxlbC4KIAogLSBJc3N1ZSAjMTE3MTk6IEZpeCBtZXNzYWdlIGFib3V0IHVuZXhwZWN0ZWQgdGVzdF9tc2lsaWIgc2tpcCBvbiBub24tV2luZG93cwogICBwbGF0Zm9ybXMuIFBhdGNoIGJ5IE5hZGVlbSBWYXdkYS4KIAorLSBJc3N1ZSAjMTE3Mjc6IEFkZCBhIC0tdGltZW91dCBvcHRpb24gdG8gcmVncnRlc3Q6IGlmIGEgdGVzdCB0YWtlcyBtb3JlIHRoYW4KKyAgVElNRU9VVCBzZWNvbmRzLCBkdW1wcyB0aGUgdHJhY2ViYWNrIG9mIGFsbCB0aHJlYWRzIGFuZCBleGl0cy4KKwogLSBJc3N1ZSAjMTE2NTM6IGZpeCAtVyB3aXRoIC1qIGluIHJlZ3J0ZXN0LgogCistIFRoZSBlbWFpbCB0ZXN0IHN1aXRlIG5vdyBsaXZlcyBpbiB0aGUgTGliL3Rlc3QvdGVzdF9lbWFpbCBwYWNrYWdlLiAgVGhlIHRlc3QKKyAgaGFybmVzcyBjb2RlIGhhcyBhbHNvIGJlZW4gbW9kZXJuaXplZCB0byBhbGxvdyB1c2Ugb2YgbmV3IHVuaXR0ZXN0IGZlYXR1cmVzLgorCistIHJlZ3J0ZXN0IG5vdyBkaXNjb3ZlcnMgdGVzdCBwYWNrYWdlcyBhcyB3ZWxsIGFzIHRlc3QgbW9kdWxlcy4KKwogLSBJc3N1ZSAjMTE1Nzc6IGltcHJvdmUgdGVzdCBjb3ZlcmFnZSBvZiBiaW5oZXgucHkuIFBhdGNoIGJ5IEFya2FkeSBLb3BseWFyb3YuCiAKKy0gTmV3IHRlc3RfY3Jhc2hlcnMgYWRkZWQgdG8gZXhlcmNpc2UgdGhlIHNjcmlwdHMgaW4gdGhlIExpYi90ZXN0L2NyYXNoZXJzCisgIGRpcmVjdG9yeSBhbmQgY29uZmlybSB0aGV5IGZhaWwgYXMgZXhwZWN0ZWQKKwogLSBJc3N1ZSAjMTE1Nzg6IGFkZGVkIHRlc3QgZm9yIHRoZSB0aW1laXQgbW9kdWxlLiAgUGF0Y2ggYnkgTWljaGFlbCBIZW5yeS4KIAogLSBJc3N1ZSAjMTE1MDM6IGltcHJvdmUgdGVzdCBjb3ZlcmFnZSBvZiBwb3NpeHBhdGgucHkuIFBhdGNoIGJ5IEV2YW4gRGFuZHJlYS4KIAotLSBJc3N1ZSAjMTE1MDU6IGltcHJvdmVzIHRlc3QgY292ZXJhZ2Ugb2Ygc3RyaW5nLnB5LiBQYXRjaCBieSBBbGljaWEKLSAgQXJsZW4uCistIElzc3VlICMxMTUwNTogaW1wcm92ZXMgdGVzdCBjb3ZlcmFnZSBvZiBzdHJpbmcucHksIGluY3JlYXNlcyBncmFudWxhcml0eSBvZgorICBzdHJpbmcuRm9ybWF0dGVyIHRlc3RzLiBJbml0aWFsIHBhdGNoIGJ5IEFsaWNpYSBBcmxlbi4KIAogLSBJc3N1ZSAjMTE1NDg6IEltcHJvdmUgdGVzdCBjb3ZlcmFnZSBvZiB0aGUgc2h1dGlsIG1vZHVsZS4gUGF0Y2ggYnkKICAgRXZhbiBEYW5kcmVhLgogCiAtIElzc3VlICMxMTU1NDogUmVhY3RpdmF0ZWQgdGVzdF9lbWFpbF9jb2RlY3MuCiAKKy0gSXNzdWUgIzExNTA1OiBpbXByb3ZlcyB0ZXN0IGNvdmVyYWdlIG9mIHN0cmluZy5weS4gUGF0Y2ggYnkgQWxpY2lhCisgIEFybGVuCisKIC0gSXNzdWUgIzExNDkwOiB0ZXN0X3N1YnByb2Nlc3M6dGVzdF9sZWFraW5nX2Zkc19vbl9lcnJvciBubyBsb25nZXIgZ2l2ZXMgYQogICBmYWxzZSBwb3NpdGl2ZSBpZiB0aGUgbGFzdCBkaXJlY3RvcnkgaW4gdGhlIHBhdGggaXMgaW5hY2Nlc3NpYmxlLgogCkBAIC0xNTA4LDEyICsyMzYxLDYxIEBACiAtIElzc3VlICM5OTMxOiBGaXggaGFuZ3MgaW4gR1VJIHRlc3RzIHVuZGVyIFdpbmRvd3MgaW4gY2VydGFpbiBjb25kaXRpb25zLgogICBQYXRjaCBieSBIaXJva2F6dSBZYW1hbW90by4KIAorLSBJc3N1ZSAjMTA1MTI6IFByb3Blcmx5IGNsb3NlIHNvY2tldHMgdW5kZXIgdGVzdC50ZXN0X2NnaS4KKworLSBJc3N1ZSAjMTA5OTI6IE1ha2UgdGVzdHMgcGFzcyB1bmRlciBjb3ZlcmFnZS4KKwogLSBJc3N1ZSAjMTA4MjY6IFByZXZlbnQgc3BvcmFkaWMgZmFpbHVyZSBpbiB0ZXN0X3N1YnByb2Nlc3Mgb24gU29sYXJpcyBkdWUKICAgdG8gb3BlbiBkb29yIGZpbGVzLgogCistIElzc3VlICMxMDk5MDogUHJldmVudCB0ZXN0cyBmcm9tIGNsb2JiZXJpbmcgYSBzZXQgdHJhY2UgZnVuY3Rpb24uCisKK0MtQVBJCistLS0tLQorCistIEFkZCBQeU9iamVjdF9HZW5lcmljR2V0RGljdCBhbmQgUHlPYmplY3RfR2VuZXJpU2V0RGljdC4gVGhleSBhcmUgZ2VuZXJpYworICBpbXBsZW1lbnRhdGlvbnMgZm9yIHRoZSBnZXR0ZXIgYW5kIHNldHRlciBvZiBhIGBgX19kaWN0X19gYCBkZXNjcmlwdG9yIG9mIEMKKyAgdHlwZXMuCisKKy0gSXNzdWUgIzEzNzI3OiBBZGQgMyBtYWNyb3MgdG8gYWNjZXNzIFB5RGF0ZVRpbWVfRGVsdGEgbWVtYmVyczoKKyAgUHlEYXRlVGltZV9ERUxUQV9HRVRfREFZUywgUHlEYXRlVGltZV9ERUxUQV9HRVRfU0VDT05EUywKKyAgUHlEYXRlVGltZV9ERUxUQV9HRVRfTUlDUk9TRUNPTkRTLgorCistIElzc3VlICMxMDU0MjogQWRkIDQgbWFjcm9zIHRvIHdvcmsgd2l0aCBzdXJyb2dhdGVzOiBQeV9VTklDT0RFX0lTX1NVUlJPR0FURSwKKyAgUHlfVU5JQ09ERV9JU19ISUdIX1NVUlJPR0FURSwgUHlfVU5JQ09ERV9JU19MT1dfU1VSUk9HQVRFLAorICBQeV9VTklDT0RFX0pPSU5fU1VSUk9HQVRFUy4KKworLSBJc3N1ZSAjMTI3MjQ6IEFkZCBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQgbWFjcm8gZm9yIHJldHVybmluZyBOb3RJbXBsZW1lbnRlZC4KKworLSBQWV9QQVRDSExFVkVMX1JFVklTSU9OIGhhcyBiZWVuIHJlbW92ZWQsIHNpbmNlIGl0J3MgbWVhbmluZ2xlc3Mgd2l0aAorICBNZXJjdXJpYWwuCisKKy0gSXNzdWUgIzEyMTczOiBUaGUgZmlyc3QgYXJndW1lbnQgb2YgUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWwgaXMgbm93IGBjb25zdAorICBjaGFyICpgIGluc3RlYWQgb2YgYGNoYXIgKmAuCisKKy0gSXNzdWUgIzEyMzgwOiBQeUFyZ19QYXJzZVR1cGxlIG5vdyBhY2NlcHRzIGEgYnl0ZWFycmF5IGZvciB0aGUgJ2MnIGZvcm1hdC4KKwogRG9jdW1lbnRhdGlvbgogLS0tLS0tLS0tLS0tLQogCistIElzc3VlcyAjMTM0OTEgYW5kICMxMzk5NTogRml4IG1hbnkgZXJyb3JzIGluIHNxbGl0ZTMgZG9jdW1lbnRhdGlvbi4KKyAgSW5pdGlhbCBwYXRjaCBmb3IgIzEzNDkxIGJ5IEpvaGFubmVzIFZvZ2VsLgorCistIElzc3VlICMxMzQwMjogRG9jdW1lbnQgYWJzb2x1dGVuZXNzIG9mIHN5cy5leGVjdXRhYmxlLgorCistIElzc3VlICMxMzg4MzogUFlUSE9OQ0FTRU9LIGFsc28gd29ya3Mgb24gT1MgWC4KKworLSBJc3N1ZSAjMTI5NDk6IERvY3VtZW50IHRoZSBrd29ubHlhcmdjb3VudCBhcmd1bWVudCBmb3IgdGhlIFB5Q29kZV9OZXcKKyAgQyBBUEkgZnVuY3Rpb24uCisKKy0gSXNzdWUgIzEzNTEzOiBGaXggaW8uSU9CYXNlIGRvY3VtZW50YXRpb24gdG8gY29ycmVjdGx5IGxpbmsgdG8gdGhlCisgIGlvLklPQmFzZS5yZWFkbGluZSBtZXRob2QgaW5zdGVhZCBvZiB0aGUgcmVhZGxpbmUgbW9kdWxlLgorCistIElzc3VlICMxMzIzNzogUmVvcmdhbmlzZSBzdWJwcm9jZXNzIGRvY3VtZW50YXRpb24gdG8gZW1waGFzaXNlIGNvbnZlbmllbmNlCisgIGZ1bmN0aW9ucyBhbmQgdGhlIG1vc3QgY29tbW9ubHkgbmVlZGVkIGFyZ3VtZW50cyB0byBQb3Blbi4KKworLSBJc3N1ZSAjMTMxNDE6IERlbW9uc3RyYXRlIHJlY29tbWVuZGVkIHN0eWxlIGZvciBzb2NrZXRzZXJ2ZXIgZXhhbXBsZXMuCisKIC0gSXNzdWUgIzExODE4OiBGaXggdGVtcGZpbGUgZXhhbXBsZXMgZm9yIFB5dGhvbiAzLgogCiAKQEAgLTE3NDUsMTAgKzI2NDcsNiBAQAogLSBJc3N1ZSAjMTAxNTQsICMxMDA5MDogY2hhbmdlIHRoZSBub3JtYWxpemF0aW9uIG9mIFVURi04IHRvICJVVEYtOCIgaW5zdGVhZAogICBvZiAiVVRGOCIgaW4gdGhlIGxvY2FsZSBtb2R1bGUgYXMgdGhlIGxhdHRlciBpcyBub3Qgc3VwcG9ydGVkIE1hY09TWCBhbmQgT3BlbkJTRC4KIAotLSBJc3N1ZSAjMTA2ODQ6IHNodXRpbC5tb3ZlIHVzZWQgdG8gZGVsZXRlIGEgZm9sZGVyIG9uIGNhc2UgaW5zZW5zaXRpdmUKLSAgZmlsZXN5c3RlbXMgd2hlbiB0aGUgc291cmNlIGFuZCBkZXN0aW5hdGlvbiBuYW1lIHdoZXJlIHRoZSBzYW1lIGV4Y2VwdAotICBmb3IgdGhlIGNhc2UuCi0KIC0gSXNzdWUgIzEwOTA3OiBXYXJuIE9TIFggMTAuNiBJRExFIHVzZXJzIHRvIHVzZSBBY3RpdmVTdGF0ZSBUY2wvVGsgOC41LCByYXRoZXIKICAgdGhhbiB0aGUgY3VycmVudGx5IHByb2JsZW1hdGljIEFwcGxlLXN1cHBsaWVkIG9uZSwgd2hlbiBydW5uaW5nIHdpdGggdGhlCiAgIDY0LS8zMi1iaXQgaW5zdGFsbGVyIHZhcmlhbnQuCkBAIC0xOTA1LDYgKzI4MDMsOSBAQAogQy1BUEkKIC0tLS0tCiAKKy0gUHlPYmplY3RfQ2FsbE1ldGhvZCBub3cgcGFzc2VzIGFsb25nIGFueSB1bmRlcmx5aW5nIEF0dHJpYnV0ZUVycm9yIGZyb20KKyAgUHlPYmplY3RfR2V0QXR0ciwgaW5zdGVhZCBvZiByZXBsYWNpbmcgaXQgd2l0aCBzb21ldGhpbmcgbGVzcyBpbmZvcm1hdGl2ZQorCiAtIElzc3VlICMxMDkxMzogRGVwcmVjYXRlIG1pc2xlYWRpbmcgZnVuY3Rpb25zIFB5RXZhbF9BY3F1aXJlTG9jaygpIGFuZAogICBQeUV2YWxfUmVsZWFzZUxvY2soKS4gIFRoZSB0aHJlYWQtc3RhdGUgYXdhcmUgQVBJcyBzaG91bGQgYmUgdXNlZCBpbnN0ZWFkLgogCkBAIC0xOTU2LDYgKzI4NTcsOCBAQAogVGVzdHMKIC0tLS0tCiAKKy0gSXNzdWUgIzExOTEwOiBGaXggdGVzdF9oZWFwcSB0byBza2lwIHRoZSBDIHRlc3RzIHdoZW4gX2hlYXBxIGlzIG1pc3NpbmcuCisKIC0gRml4IHRlc3Rfc3RhcnRmaWxlIHRvIHdhaXQgZm9yIGNoaWxkIHByb2Nlc3MgdG8gdGVybWluYXRlIGJlZm9yZSBmaW5pc2hpbmcuCiAKIC0gSXNzdWUgIzEwODIyOiBGaXggdGVzdF9wb3NpeDp0ZXN0X2dldGdyb3VwcyBmYWlsdXJlIHVuZGVyIFNvbGFyaXMuICBQYXRjaApAQCAtMjQ1Niw2ICszMzU5LDggQEAKIExpYnJhcnkKIC0tLS0tLS0KIAorLSBJc3N1ZSAjMTI5NDM6IHB5dGhvbiAtbSB0b2tlbml6ZSBzdXBwb3J0IGhhcyBiZWVuIGFkZGVkIHRvIHRva2VuaXplLgorCiAtIElzc3VlICMxMDQ2NTogZml4IGJyb2tlbiBkZWxlZ2F0aW5nIG9mIGF0dHJpYnV0ZXMgYnkgZ3ppcC5fUGFkZGVkRmlsZS4KIAogLSBJc3N1ZSAjMTAzNTY6IERlY2ltYWwuX19oYXNoX18oLTEpIHNob3VsZCByZXR1cm4gLTIuCmRpZmYgLS1naXQgYS9NaXNjL1JFQURNRSBiL01pc2MvUkVBRE1FCmluZGV4IGIyMzljZWUuLmJjZDRjMWIgMTAwNjQ0Ci0tLSBhL01pc2MvUkVBRE1FCisrKyBiL01pc2MvUkVBRE1FCkBAIC0yMSw2ICsyMSw3IEBACiBSRUFETUUgICAgICAgICAgICAgICAgICBUaGUgZmlsZSB5b3UncmUgcmVhZGluZyBub3cKIFJFQURNRS52YWxncmluZCAgICAgICAgIEluZm9ybWF0aW9uIGZvciBWYWxncmluZCB1c2Vycywgc2VlIHZhbGdyaW5kLXB5dGhvbi5zdXBwCiBSUE0gICAgICAgICAgICAgICAgICAgICAoT2xkKSB0b29scyB0byBidWlsZCBSUE1zCitzdm5tYXAudHh0ICAgICAgICAgICAgICBNYXAgb2Ygb2xkIFNWTiByZXZzIGFuZCBicmFuY2hlcyB0byBoZyBjaGFuZ2VzZXQgaWRzCiBTcGVjaWFsQnVpbGRzLnR4dCAgICAgICBEZXNjcmliZXMgZXh0cmEgc3ltYm9scyB5b3UgY2FuIHNldCBmb3IgZGVidWcgYnVpbGRzCiBUZXh0TWF0ZSAgICAgICAgICAgICAgICBBIFRleHRNYXRlIGJ1bmRsZSBmb3IgUHl0aG9uIGRldmVsb3BtZW50CiB2YWxncmluZC1weXRob24uc3VwcCAgICBWYWxncmluZCBzdXBwcmVzc2lvbiBmaWxlLCBzZWUgUkVBRE1FLnZhbGdyaW5kCmRpZmYgLS1naXQgYS9NaXNjL1JQTS9weXRob24tMy4yLnNwZWMgYi9NaXNjL1JQTS9weXRob24tMy4zLnNwZWMKc2ltaWxhcml0eSBpbmRleCA5OSUKcmVuYW1lIGZyb20gTWlzYy9SUE0vcHl0aG9uLTMuMi5zcGVjCnJlbmFtZSB0byBNaXNjL1JQTS9weXRob24tMy4zLnNwZWMKaW5kZXggOTg1Yjc5Yi4uNzBhZTdmZSAxMDA2NDQKLS0tIGEvTWlzYy9SUE0vcHl0aG9uLTMuMi5zcGVjCisrKyBiL01pc2MvUlBNL3B5dGhvbi0zLjMuc3BlYwpAQCAtMzksOCArMzksOCBAQAogCiAlZGVmaW5lIG5hbWUgcHl0aG9uCiAjLS1zdGFydCBjb25zdGFudHMtLQotJWRlZmluZSB2ZXJzaW9uIDMuMi4zcmMxCi0lZGVmaW5lIGxpYnZlcnMgMy4yCislZGVmaW5lIHZlcnNpb24gMy4zLjBhMQorJWRlZmluZSBsaWJ2ZXJzIDMuMwogIy0tZW5kIGNvbnN0YW50cy0tCiAlZGVmaW5lIHJlbGVhc2UgMXB5ZG90b3JnCiAlZGVmaW5lIF9fcHJlZml4IC91c3IKZGlmZiAtLWdpdCBhL01pc2MvcHl0aG9uLm1hbiBiL01pc2MvcHl0aG9uLm1hbgppbmRleCAyMGJlZGVkLi43NTdkNGQ4IDEwMDY0NAotLS0gYS9NaXNjL3B5dGhvbi5tYW4KKysrIGIvTWlzYy9weXRob24ubWFuCkBAIC0zNywxMyArMzcsNiBAQAogLkIgXC1PTwogXQogWwotLkIgXC1SCi1dCi1bCi0uQiAtUQotLkkgYXJndW1lbnQKLV0KLVsKIC5CIFwtcwogXQogWwpAQCAtMTU1LDI3ICsxNDgsNiBAQAogRG8gbm90IHByaW50IHRoZSB2ZXJzaW9uIGFuZCBjb3B5cmlnaHQgbWVzc2FnZXMuIFRoZXNlIG1lc3NhZ2VzIGFyZSAKIGFsc28gc3VwcHJlc3NlZCBpbiBub24taW50ZXJhY3RpdmUgbW9kZS4KIC5UUAotLkIgXC1SCi1UdXJuIG9uICJoYXNoIHJhbmRvbWl6YXRpb24iLCBzbyB0aGF0IHRoZSBoYXNoKCkgdmFsdWVzIG9mIHN0ciwgYnl0ZXMgYW5kCi1kYXRldGltZSBvYmplY3RzIGFyZSAic2FsdGVkIiB3aXRoIGFuIHVucHJlZGljdGFibGUgcHNldWRvLXJhbmRvbSB2YWx1ZS4KLUFsdGhvdWdoIHRoZXkgcmVtYWluIGNvbnN0YW50IHdpdGhpbiBhbiBpbmRpdmlkdWFsIFB5dGhvbiBwcm9jZXNzLCB0aGV5IGFyZQotbm90IHByZWRpY3RhYmxlIGJldHdlZW4gcmVwZWF0ZWQgaW52b2NhdGlvbnMgb2YgUHl0aG9uLgotLklQCi1UaGlzIGlzIGludGVuZGVkIHRvIHByb3ZpZGUgcHJvdGVjdGlvbiBhZ2FpbnN0IGEgZGVuaWFsIG9mIHNlcnZpY2UKLWNhdXNlZCBieSBjYXJlZnVsbHktY2hvc2VuIGlucHV0cyB0aGF0IGV4cGxvaXQgdGhlIHdvcnN0IGNhc2UgcGVyZm9ybWFuY2UKLW9mIGEgZGljdCBjb25zdHJ1Y3Rpb24sIE8obl4yKSBjb21wbGV4aXR5LiAgU2VlCi1odHRwOi8vd3d3Lm9jZXJ0Lm9yZy9hZHZpc29yaWVzL29jZXJ0LTIwMTEtMDAzLmh0bWwKLWZvciBkZXRhaWxzLgotLlRQCi0uQkkgIlwtUSAiIGFyZ3VtZW50Ci1EaXZpc2lvbiBjb250cm9sOyBzZWUgUEVQIDIzOC4gIFRoZSBhcmd1bWVudCBtdXN0IGJlIG9uZSBvZiAib2xkIiAodGhlCi1kZWZhdWx0LCBpbnQvaW50IGFuZCBsb25nL2xvbmcgcmV0dXJuIGFuIGludCBvciBsb25nKSwgIm5ldyIgKG5ldwotZGl2aXNpb24gc2VtYW50aWNzLCBpLmUuIGludC9pbnQgYW5kIGxvbmcvbG9uZyByZXR1cm5zIGEgZmxvYXQpLAotIndhcm4iIChvbGQgZGl2aXNpb24gc2VtYW50aWNzIHdpdGggYSB3YXJuaW5nIGZvciBpbnQvaW50IGFuZAotbG9uZy9sb25nKSwgb3IgIndhcm5hbGwiIChvbGQgZGl2aXNpb24gc2VtYW50aWNzIHdpdGggYSB3YXJuaW5nIGZvcgotYWxsIHVzZSBvZiB0aGUgZGl2aXNpb24gb3BlcmF0b3IpLiAgRm9yIGEgdXNlIG9mICJ3YXJuYWxsIiwgc2VlIHRoZQotVG9vbHMvc2NyaXB0cy9maXhkaXYucHkgc2NyaXB0LgotLlRQCiAuQiBcLXMKIERvbid0IGFkZCB1c2VyIHNpdGUgZGlyZWN0b3J5IHRvIHN5cy5wYXRoLgogLlRQCkBAIC0xODQsNyArMTU2LDkgQEAKIC5JIHNpdGUKIGFuZCB0aGUgc2l0ZS1kZXBlbmRlbnQgbWFuaXB1bGF0aW9ucyBvZgogLkkgc3lzLnBhdGgKLXRoYXQgaXQgZW50YWlscy4KK3RoYXQgaXQgZW50YWlscy4gIEFsc28gZGlzYWJsZSB0aGVzZSBtYW5pcHVsYXRpb25zIGlmCisuSSBzaXRlCitpcyBleHBsaWNpdGx5IGltcG9ydGVkIGxhdGVyLgogLlRQCiAuQiBcLXUKIEZvcmNlIHRoZSBiaW5hcnkgSS9PIGxheWVycyBvZiBzdGRpbiwgc3Rkb3V0IGFuZCBzdGRlcnIgdG8gYmUgdW5idWZmZXJlZC4KQEAgLTQyOSw5ICs0MDMsOCBAQAogSWYgdGhpcyBpcyBzZXQgdG8gYSBjb21tYS1zZXBhcmF0ZWQgc3RyaW5nIGl0IGlzIGVxdWl2YWxlbnQgdG8KIHNwZWNpZnlpbmcgdGhlIFxmQlwtV1xmUCBvcHRpb24gZm9yIGVhY2ggc2VwYXJhdGUgdmFsdWUuCiAuSVAgUFlUSE9OSEFTSFNFRUQKLUlmIHRoaXMgdmFyaWFibGUgaXMgc2V0IHRvICJyYW5kb20iLCB0aGUgZWZmZWN0IGlzIHRoZSBzYW1lIGFzIHNwZWNpZnlpbmcKLXRoZSBcZkItUlxmUCBvcHRpb246IGEgcmFuZG9tIHZhbHVlIGlzIHVzZWQgdG8gc2VlZCB0aGUgaGFzaGVzIG9mIHN0ciwKLWJ5dGVzIGFuZCBkYXRldGltZSBvYmplY3RzLgorSWYgdGhpcyB2YXJpYWJsZSBpcyBzZXQgdG8gInJhbmRvbSIsIGEgcmFuZG9tIHZhbHVlIGlzIHVzZWQgdG8gc2VlZCB0aGUgaGFzaGVzCitvZiBzdHIsIGJ5dGVzIGFuZCBkYXRldGltZSBvYmplY3RzLgogCiBJZiBQWVRIT05IQVNIU0VFRCBpcyBzZXQgdG8gYW4gaW50ZWdlciB2YWx1ZSwgaXQgaXMgdXNlZCBhcyBhIGZpeGVkIHNlZWQgZm9yCiBnZW5lcmF0aW5nIHRoZSBoYXNoKCkgb2YgdGhlIHR5cGVzIGNvdmVyZWQgYnkgdGhlIGhhc2ggcmFuZG9taXphdGlvbi4gIEl0cwpAQCAtNDQwLDggKzQxMyw3IEBACiB2YWx1ZXMuCiAKIFRoZSBpbnRlZ2VyIG11c3QgYmUgYSBkZWNpbWFsIG51bWJlciBpbiB0aGUgcmFuZ2UgWzAsNDI5NDk2NzI5NV0uICBTcGVjaWZ5aW5nCi10aGUgdmFsdWUgMCB3aWxsIGxlYWQgdG8gdGhlIHNhbWUgaGFzaCB2YWx1ZXMgYXMgd2hlbiBoYXNoIHJhbmRvbWl6YXRpb24gaXMKLWRpc2FibGVkLgordGhlIHZhbHVlIDAgd2lsbCBkaXNhYmxlIGhhc2ggcmFuZG9taXphdGlvbi4KIC5TSCBBVVRIT1IKIFRoZSBQeXRob24gU29mdHdhcmUgRm91bmRhdGlvbjogaHR0cDovL3d3dy5weXRob24ub3JnL3BzZgogLlNIIElOVEVSTkVUIFJFU09VUkNFUwpkaWZmIC0tZ2l0IGEvTWlzYy9zdm5tYXAudHh0IGIvTWlzYy9zdm5tYXAudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE0MmJlN2YKLS0tIC9kZXYvbnVsbAorKysgYi9NaXNjL3N2bm1hcC50eHQKQEAgLTAsMCArMSw3MjU0NiBAQAorMjE2MSAzY2QwMzNlNmI1MzBmNmE3OGIzYjE0ZmVkYmQyMDc0ODk2ZGJmNmRlIGxlZ2FjeS10cnVuaworMjE2MiA0ZGI5ZDQ2YjMwNmE5YzZlYzJkMWZlN2E3Y2MzNmVmNzE3MzQyNmE2IGxlZ2FjeS10cnVuaworMjE2MyA0YTNhNjQ4MTg1ZWY4OTY1YzM0Mjg2MGJkODQ1N2VkNmMwM2M2ZGUwIGxlZ2FjeS10cnVuaworMjE2NCA4ZGE5MjI1Y2M2MGUyZGExNjY1YTgwYWY5MDE4NGRiMGZkZGEwNWNlIGxlZ2FjeS10cnVuaworMjE2NSAxN2U0OTBiNGRjMjhiOGFjNjA1ZmExOWU0ODJjZjcyMmZlODA2NThkIGxlZ2FjeS10cnVuaworMjE2NiA1NTcwZGJiMWNlNTU4YjU1NzE2ZWFiN2QwODBhMWFmYWQyZTc3ZTJmIGxlZ2FjeS10cnVuaworMjE2NyBmYzZmY2Q3ZGY0ZjdmMmUxYzEyZjE3YWYyNDY0YzQ5N2Q2ZjZhM2U5IGxlZ2FjeS10cnVuaworMjE2OCAzNGQ2NjdkYzFhNGM0YWJkY2IxOWNkZGZkMmU5YmZkYTAxMTM5ZWQyIGxlZ2FjeS10cnVuaworMjE2OSA2ZmMxNDZiZDRmMDNjOTdkMTRjN2MzMDBiMTIxMmExMWViOWI2NzJhIGxlZ2FjeS10cnVuaworMjE3MCAzMzcwMWRiNGVhNTU5MTAwZDM3YmU0NGQyZjBkNTNlNTY4YTBlYzMzIGxlZ2FjeS10cnVuaworMjE3MSBhNzFlODk2ZWQwNDczNDIxZDg4ZmU0NTUyNjljNWE1ZTU0NzMyYTIyIGxlZ2FjeS10cnVuaworMjE3MiBiY2VhNmM4MjI5MDZjODRlZGVkYWJjYzAzZWM0ODE1OTVkZWYwYTYzIGxlZ2FjeS10cnVuaworMjE3MyAzNmEyMjBkMzczMWEwMzM0NTc4NTU5M2VjMzJlYmMzNWEyOTQ5NGRlIGxlZ2FjeS10cnVuaworMjE3NCAwNmJmMmFmMDBlM2E5ZWI1MTUyOWI2MThjYmRjMGJiY2YxYTRlOTY0IGxlZ2FjeS10cnVuaworMjE3NSA4NzRjOGZkNTY1ZmEwOTQ2MWMyMTM5OWFmOWVkZTEyMzRlYTEwZjcwIGxlZ2FjeS10cnVuaworMjE3NiBlOWUwNWZiYmE3YTQwMDM0ZjgyMTFjOWQxZDEyYjI4ODc5ZjUxZmNmIGxlZ2FjeS10cnVuaworMjE3NyAwODA4ZTVhYjc0M2FiYjhiMDU3YTU1Zjc2NTFhYzExOGM4M2Y1YjBjIGxlZ2FjeS10cnVuaworMjE3OCBhNWYwMWE5MTc0MDkyZDI5ZWJhNjM3N2MyMzY5MTg3Y2RiM2ZkN2Q1IGxlZ2FjeS10cnVuaworMjE3OSBlOWJiZTRhYzMyMzg5ZThhN2E2YzBiNGFlZmFmNGVhZDMwODhmMjFhIGxlZ2FjeS10cnVuaworMjE4MCA3MWFjMGUzNzIzNmE1NGUwYTY3ODhiMzg0NjU1ZDhkODIwOWQ4NThhIGxlZ2FjeS10cnVuaworMjE4MSAxMTg1NDUzMTJmM2JmZTEwM2JjY2ZiMTAzZjRkZjJlZWIwZDBlYjgzIGxlZ2FjeS10cnVuaworMjE4MiA5NjE2OTZlZjNhYjdlNDNjOTlmNWM3NjBmN2M2MjFiNmExMTlkYzk4IGxlZ2FjeS10cnVuaworMjE4MyAyZDNlYjcxN2EwMGQxMDNkNDM3NTk0ZTA4MTkzZGFlNjAwMDYxZGE5IGxlZ2FjeS10cnVuaworMjE4NCAwODU2MmRlMDE2NjgwMGUxYzZkNWQ1MTVmNzQzNjliMzk5ZmQ4Y2FhIGxlZ2FjeS10cnVuaworMjE4NSA2NGE2OWQ2MTIxZTBkMjA2MmYyNmE3ZWNhNjdlOWI2YTQyZGNhMjdiIGxlZ2FjeS10cnVuaworMjE4NiAzMjYzOTg3OGQxNmI2MDQ4NzUzODhlMjI5OTYxMWJiZmM1MTg5NjI2IGxlZ2FjeS10cnVuaworMjE4NyA0NWFlYjJlZWFkNzllZTdmYTM2ZTQxNjZkZWI3NTM4NmMxM2UzNDFkIGxlZ2FjeS10cnVuaworMjE4OCA4MmM3YmFiNzhiYjEwYTcwNmY1ZDUyMGIxNTUwZTcyNGI5NGFhMzhjIGxlZ2FjeS10cnVuaworMjE4OSBlNWM1MGM2ODgxMTdjNmU1YmQ4OTU0NjBkYWNlNmM5Y2JmNTgxYWZkIGxlZ2FjeS10cnVuaworMjE5MCAzNDJhN2M2MWMwYzNjMGZlNDgxNGQxYWQyNGU3NzE0Mjc3MzgxNWIxIGxlZ2FjeS10cnVuaworMjE5MSA4NmUwZTIzNTBiYTExNzQ3YzRlMGZkY2U5N2JjN2M5YmM2NDg3NDFiIGxlZ2FjeS10cnVuaworMjE5MiBjNDg3ZGZjMzA2NjMzOTg1MDg1NGZiODU4YzZhODMzMDU5YTliYzc4IGxlZ2FjeS10cnVuaworMjE5MyBiNjQzZWFkZTY1NDQ1OWY4N2Q1NzJkNmI3OTM4OTZkOWIzYWRmODQwIGxlZ2FjeS10cnVuaworMjE5NCBiODA3YzkwYzRhNjgyMmQxY2I4YjM5Njk5MWNhYTgwODViYjMyYjRlIGxlZ2FjeS10cnVuaworMjE5NSAxZDIyOTAwZjc3Yjg1M2JlZTA2ZGQyNGExYmYxZmRmNDUxNWI0OGJjIGxlZ2FjeS10cnVuaworMjE5NiBkYTA2YTI4MmI4ODA0ZmE0N2ZmNGMzYzRiZDkyYmE5ZmI4ZWVhOTI5IGxlZ2FjeS10cnVuaworMjE5NyBhMjI0MGNlOTFlNTIwNjFiNDMyZjk3OTU3ZjkyYmY3OTc4NTM0MGFjIGxlZ2FjeS10cnVuaworMjE5OCBjNzk1ZmRhY2VkOWI4YTI4ZDk4MzMyNzc4NjhiMWY3NDYxYTA5NWY1IGxlZ2FjeS10cnVuaworMjE5OSAxMGUxODIxYzM0NWNhMmQxMzc1MzVhNmMxY2Y1ZWIwMTI4NmZjZDdlIGxlZ2FjeS10cnVuaworMjIwMCAxOTA1ZjgyMTM5N2IwZjA5NDEwMTE2MDhlNWI0NmRkMWM5ZTM4OWU0IGxlZ2FjeS10cnVuaworMjIwMSBmMjhhYzdmNjIxYzc2MDc5Nzc0YzMwMDE3YjI5MDEzOTY1ZDEwNDA5IGxlZ2FjeS10cnVuaworMjIwMiBlODBlZmVhYjQ5YjMyYzE1YWM5N2IyNGQ0ZjZlOGZkZDVjY2YwYTk1IGxlZ2FjeS10cnVuaworMjIwMyA0ODM1YzJkMzhiODRlNWZiNTU4MDM2ZDQ3YzU4NzFkZDk2NjMzOGI3IGxlZ2FjeS10cnVuaworMjIwNCBlYTIxOTgyYTE1MzI0MjVmODJlYzVhNDM0NmNiODQxOTE3YTcxZDk1IGxlZ2FjeS10cnVuaworMjIwNSA0ZDNhMjhkZmZjOWI5NWQzOGI5MTJjYjY5NTc0MmRlNDBkOTU3NjM1IGxlZ2FjeS10cnVuaworMjIwNiA3ZmVjYWJiMzI3OTE0NTA0NTQ0NjE3ZTViYWNkMWMwNWExMmU4NjlmIGxlZ2FjeS10cnVuaworMjIwNyBjZTZmMjQ3MTE1MDRlNTk1NmQ2NjAwOTljOTllY2NiOTUxYzBjMTQ5IGxlZ2FjeS10cnVuaworMjIwOCAwNTA1N2UzNjYwZjgyY2U4ZTgzZThjMmQ3M2QwYjU4NDk0ZjJiZWE3IGxlZ2FjeS10cnVuaworMjIwOSBiMGU3NjIyMWU3ZmZkYmNmZTk4YTQ0YWRmYWU5YzIzNTA5M2M3Y2ViIGxlZ2FjeS10cnVuaworMjIxMCBjM2ZhMmQxZjMwMzU4Njk5ZWUyNGUyYTVjM2MwMTE2NjJmNzVjMzc2IGxlZ2FjeS10cnVuaworMjIxMSBiOTQ4MjJmNTQ5OTEzMDRiNThhZGJiZWEyMzg2OWM5OGIyZjZmM2ZlIGxlZ2FjeS10cnVuaworMjIxMiBlYmNiNjI2Y2ZkZGZiOWYxYzdiMTg2NzhhY2JlYzQ0ZWI5N2FiYmQ3IGxlZ2FjeS10cnVuaworMjIxMyAxYjMxMDc3YWM2NDMwN2FiNTQ1NTI2NTFhZWM2Nzg3OGQ4MGQwYmQ3IGxlZ2FjeS10cnVuaworMjIxNCBhMWU1MGE4ZjQyZTIzY2ZhYjY0YmUzZTk5ZDhhNTMzNWVhMzNhOWM1IGxlZ2FjeS10cnVuaworMjIxNSA0MDJmNTcwOGIxMDdiMDVmODExZTVmODU0Mjg0MmU3MTc5OGRhNmM5IGxlZ2FjeS10cnVuaworMjIxNiA3YTAxZGJjZWU5YmMwMzEyZjVhMzE3ZmIyNDI5OTc1MWU3OGRkZGMyIGxlZ2FjeS10cnVuaworMjIxNyBhN2U4ZmI3YmI2YTI4ZWIxM2MwNTZmM2M2MmE5NmNhYWM1ZjY0NGQ0IGxlZ2FjeS10cnVuaworMjIxOCBhMWMyYjRmYWQxMzZjZmIxYjIyMzE1MGE0OGMzNDgwZDYzZTJkZWNiIGxlZ2FjeS10cnVuaworMjIxOSA0OTc1Zjc5OTBiMmIzNWM3MGQyMzUwNWVjZWE1YzIwZWVmY2QxZWQ4IGxlZ2FjeS10cnVuaworMjIyMCA0MzNmNTJkMWQ5NTg3NzY3MDNhNzNlODBlNTU2YmVlYjBlNDdmNTQzIGxlZ2FjeS10cnVuaworMjIyMSA0ZjU5M2IzOGQwNjE1NTc5YWNhZDRjM2M5Y2IzNTBlYjYwMGRkYzRlIGxlZ2FjeS10cnVuaworMjIyMiA1YzRkZDkzNDhlODExMzMyMGM0ZjdiNGU5ODMzZjMyMDVkZjE4YjgwIGxlZ2FjeS10cnVuaworMjIyMyBmZmZkMTI4NmM4ODI2NzkzNGQ3NDg2ZTRjNGU0NjdkNTdiMDg2NTliIGxlZ2FjeS10cnVuaworMjIyNCA2MTMxMTUwNmYyY2QwOWJhZGQ4Yjc5NDU2YWY5Nzg5MjE0ZWNiMGY0IGxlZ2FjeS10cnVuaworMjIyNSBhMjJkZjUyZDc3NDlhM2E4YzA3NzBhODIxM2RlNDdiMmNhNThmZWNmIGxlZ2FjeS10cnVuaworMjIyNiBhNzJjMGE3ZGM5OTNhYWUwNWU3MDg1Y2QzODY3OGI5ZGJiZWIxOTgxIGxlZ2FjeS10cnVuaworMjIyNyA0NmNiMTRhZWMxMGE4ZDZlMzY2NWI3MTg4MDcwYjY3ZTg5OWFkNjM2IGxlZ2FjeS10cnVuaworMjIyOCBmOThlNDE3MTFkMTc3OTAwYTk2ZDU3NDViYTkwY2M4OGJkODJkN2Q4IGxlZ2FjeS10cnVuaworMjIyOSAzNjUwMzczNmZkYzIzOTM0MDZjMDg2MGM4MWEyMDIyMmQ3M2NlZTU5IGxlZ2FjeS10cnVuaworMjIzMCBjY2NkNTM0ZjIyODA3NGYyNjc0ODQ4NDIyMWQ2OWYyZWU3NTJmMmIzIGxlZ2FjeS10cnVuaworMjIzMSBhMzZjMzQ4YThlMWEyOTE1ZDY5YjdkZDIwMjE2M2ZkYjdlNTk2Yzg4IGxlZ2FjeS10cnVuaworMjIzMiBhYzQ1MjJlOTljYTk0Mzc3YTY1YzY2Y2ZkYzI2Njg0ZmEwZmRmYmViIGxlZ2FjeS10cnVuaworMjIzMyA1ZThhMGI0MGE0YmRmMWU4M2M1ZDBiZjM4ZWZjNzc0NWIwNmVmOGQ0IGxlZ2FjeS10cnVuaworMjIzNCAzMDI4YWNhYTU2YjA1ZWQwZTExZTE1NmU4MWI1YTA2NzE5MTVjYjg2IGxlZ2FjeS10cnVuaworMjIzNSBiYzI0NGRmMjAyNTE2YjVhNTU1MTNlNDYzYjJmNjM3ZDE4ZjU4MDU1IGxlZ2FjeS10cnVuaworMjIzNiA4NWVlZDA2MGE0NmNlMjY2NDlmZDY4MDJjZmJkNWVlYzYxOTEwNjg4IGxlZ2FjeS10cnVuaworMjIzNyBlZGU4Njc5OTcwNWJhMTRiYzQwMjEzNTcxZGZlMmExZDVmNTZlOTA3IGxlZ2FjeS10cnVuaworMjIzOCBmNzJlMGM2MjM2OWUyNGNjYzBlY2RhYjc5MmM5N2EyMWIyMzMyYmFkIGxlZ2FjeS10cnVuaworMjIzOSBiMWZiNGUxZjZlNTE2ZDI4MGM1NTUwMWIyMzQ0NDk4Y2E2MjdmZWJjIGxlZ2FjeS10cnVuaworMjI0MCA2YzQzZTU0NzZkZTY5MDQxMjY5OWIzYmRlNmI1MDdiMWM0ODgwNGE2IGxlZ2FjeS10cnVuaworMjI0MSBmNDcxMDFkYzNjMTg4ZjI0ZjliOTcwNWRiM2I2NDg5MTkxNGJkYjgyIGxlZ2FjeS10cnVuaworMjI0MiBkZTM0ZjRhNGQzNTNiOWY1Zjk5MWFhY2E5OGM4M2ZhYWM2ODFjNmY1IGxlZ2FjeS10cnVuaworMjI0MyA1NTRhYzY1OWIyY2I5NTI0ZWY0Zjk2ZWMyNzU2ZGM0Y2EwZmEwZjliIGxlZ2FjeS10cnVuaworMjI0NCBmNmJjZjNjMWQ3MTRlNzg3NTM1NmNhMTJjMzJlZTVmOTc1ZjRlZDhhIGxlZ2FjeS10cnVuaworMjI0NSBhNzljYmIyNjU1YmFhZjU0YWRkYzIyMDMzNTAwMzY0NzliZGNiN2UzIGxlZ2FjeS10cnVuaworMjI0NiAwNmM5MmY0OTFmNTg4ZWQ5YWJlMGYyZDRmMTUxMjA2OWEzMGMxOTAxIGxlZ2FjeS10cnVuaworMjI0NyBhNjkzNDM4MGM2ZTc5Yjg3Zjc3NjJiMWQ5NDMzZDBlMGE4OTM3NDUyIGxlZ2FjeS10cnVuaworMjI0OCBlZjI0NDBmMjRmMTAyYzY3N2EwMmQ0MDc5ODhkZDg1ZjVkYTUwY2FiIGxlZ2FjeS10cnVuaworMjI0OSAxNmU4YzVkMTY0OTM1ZjNjNmE5ODllZWVhZGYyMmIwYWI0ZGMyMmVhIGxlZ2FjeS10cnVuaworMjI1MCA1ODQ3ZGYxMzk5MWRlNmE4MzY0ODQxMDc1NTNmNGU5Y2VjY2E4YTE0IGxlZ2FjeS10cnVuaworMjI1MSA1Y2I4NDNiYzg3ZmMwODY1NDZmYWJmNmI4ZWMwM2VlZDMxZTIwYThmIGxlZ2FjeS10cnVuaworMjI1MiA1YzM1N2QzN2IzMjczMWM4ZDAyMDQ1NDk3MDIwODU4Yzc5YzU3MTM5IGxlZ2FjeS10cnVuaworMjI1MyAwMDIwNjZhODM5YzUxY2MxODRhMGM2ZTY2OWVjOWQ2MzQyMGNkYTY3IGxlZ2FjeS10cnVuaworMjI1NCA5ZTA1MWZjNzA3M2U3N2I5ZTE1MDM0YTE5ZTU0N2VmZTJiODVjNjZhIGxlZ2FjeS10cnVuaworMjI1NSBkYWM4NjI1YzhkOWIwMTQxNzljZDU4MzM1OGI0ZDBlNGUyNTAyNTY3IGxlZ2FjeS10cnVuaworMjI1NiBhNWJmN2Q1OTU5Y2UwNTBmMmIwNTFjMTJlODE4MDg5NWU3ZTZkOGE5IGxlZ2FjeS10cnVuaworMjI1NyAyN2E1YjA4YzNlNzQyYzYyYTE1YjY4MTU2ZmUwZDQ4OGMwOTRhZDQyIGxlZ2FjeS10cnVuaworMjI1OCA2Yjc1ZjJhMzAwMGQ0MDY1MTQ2YjJkYWZlNmQ4M2QzMzA3MWU4ZDM1IGxlZ2FjeS10cnVuaworMjI1OSA0NTVkNjVhMTFiMTNlZDM3NzkyZTFmNGZmYmZlM2JjZGZhYTc4M2VlIGxlZ2FjeS10cnVuaworMjI2MCBlMGM4ZWZlZTc2YmQ4MTU3ODRjODEzYzY2YTJhMTA0NmU1YTBiZjVhIGxlZ2FjeS10cnVuaworMjI2MSBhZDE0YWE4YTI5ODQ0MzIzODRmN2FmMjFkNDUyYmU1YWFiYTZmMThmIGxlZ2FjeS10cnVuaworMjI2MiAwOGU1NWRiNmY3OTZhMjc2ZWNkMWMxNjgzYTUwMmJhZmQ3MjQ3ODcyIGxlZ2FjeS10cnVuaworMjI2MyBmMmNhY2I5MGM5MTdjOGQyOTI3OTk0Y2MyNDMxMmE2MjFkYjEzZjgzIGxlZ2FjeS10cnVuaworMjI2NCAxMjI5YmExMjRlMGJhOGVjZTkyMmNlMTRjMGY0YWFiZGJkZTFkM2YwIGxlZ2FjeS10cnVuaworMjI2NSA0ZWM4YzI2M2FiNDhiNDlkNzcyNzAxMWM0YTg2YzdiMTA5YjBmYTU4IGxlZ2FjeS10cnVuaworMjI2NiBiNGQ1ZmRjYmY4M2M2OGY5MTNhZjRjMTc1YTE0M2M4YWJmNzc1ZmVmIGxlZ2FjeS10cnVuaworMjI2NyA2NDM3M2M3OWMwOTk5OTBjYjY5MjYyZDE4M2E0NWU0ZGJmZjQyODQyIGxlZ2FjeS10cnVuaworMjI2OCAxZTAwN2RjY2IyNzA5YjA4MTFlNTNiZjA3YzdiODc5NzkxYWM5Nzc0IGxlZ2FjeS10cnVuaworMjI2OSBhZTliMzY2YzU3NWQ1NTdlNmY4MDZmMGQxNmU1NDc4NTcxNzU0YzFiIGxlZ2FjeS10cnVuaworMjI3MCBmNjk0MDM2Yjg1NjFlYjFiM2NiNTllZjM2ODBkN2U5NmRkZmQ3MWEwIGxlZ2FjeS10cnVuaworMjI3MSBlNGIxZDllNjk4MGE0MzhmOTAyZWVmOTAwMzY4YzJlNmEyZDUwYTY0IGxlZ2FjeS10cnVuaworMjI3MiBkMDhmNzUyYjU2YzA2MTQ2ZDViYWNmYjJlZjc2YzEwMzZhM2NkYzQ5IGxlZ2FjeS10cnVuaworMjI3MyBkOGExYjY0NTYyMTJiMjhiNjEyNjRkYjAyZDY1YjJjNWY2ZGU3MmM4IGxlZ2FjeS10cnVuaworMjI3NCBkMTY5NjExNjczNjVmZmZmODE3YmI4ZTY4YTIxMTFmZTUzYTZjYzU4IGxlZ2FjeS10cnVuaworMjI3NSAxZWZiOGVkNmFmZDMzYTAwNmM1Mjk5ZDNhNDE1YWNlMTJjOTg2YTg5IGxlZ2FjeS10cnVuaworMjI3NiA0MDk0YjQ2ZjA0YzhlYWYzMjViM2Q1OTllNzMyYTViZjlhOGMzYTdiIGxlZ2FjeS10cnVuaworMjI3NyAwYTAyY2E5ZGNkNmUwMjJmMTBhMWNjNTUzN2M3OGFhNzEzMjRhMzIzIGxlZ2FjeS10cnVuaworMjI3OCA3ODczM2MxYzZlMzYxODdhZjU3ZjRlYTI1MTcwYWQwN2QwODEwYmI4IGxlZ2FjeS10cnVuaworMjI3OSBhODA5MDEzYzJhZjFlZjNmZDY5ZmY1MWI0OWMyNTYzYWY3YzMyNzA1IGxlZ2FjeS10cnVuaworMjI4MCA5ZmVlMWNhNmM4ZmVkMTU3NzBjZjA2ZjQxODc1ZGZmYWU5YWVkNDJhIGxlZ2FjeS10cnVuaworMjI4MSBjOWE1ZmUxNjYwZjUxOTg1ZTI2OWJlNDkyOTQ2NGU1YzRlYTJlNWFkIGxlZ2FjeS10cnVuaworMjI4MiAwYzI1ZmFmNGE2YTQ0NTA4NWM0YjdhOTg1YjdhNDMwMGM5MzljZjcxIGxlZ2FjeS10cnVuaworMjI4MyBiMzgwM2ZkM2NiMmM4ZDkwOTMxMzZmNWExZDJlYzUwZjk4MWI0MzEyIGxlZ2FjeS10cnVuaworMjI4NCAyMjcyN2I0Mzc4MWU3YzUzZGJkY2Y1MmYzOGFiZmQwOWQ2ZDA4MTRmIGxlZ2FjeS10cnVuaworMjI4NSBhOGQwMzNjNmZiNTRhM2VlYTgwZGUwYTI5NTJjZjVhOTgwYjNmODQ3IGxlZ2FjeS10cnVuaworMjI4NiBmNzFkNmEwOTZiMDIxOGEyNjcyN2JkYTBkNGQzZDVhY2JmMzUyM2RiIGxlZ2FjeS10cnVuaworMjI4NyAyN2NjMGQ4MjM3NjYzYjc1ZGEzODcxNTQ2YjIwM2Y1Njg1YTQ3YTQ1IGxlZ2FjeS10cnVuaworMjI4OCBkMjE0YjVkMjFkZjhjNWFjZWNlZWU1NmJlMTQ4MTg0NDVmODA5ODMzIGxlZ2FjeS10cnVuaworMjI4OSAzYmVkNzZjZGFjMGM0NjU1Y2Y4MDI1YmE2MTIyMWYzZWNjZDdiNjlmIGxlZ2FjeS10cnVuaworMjI5MCBlZmQ5MDA0OTdmNGY4N2Q3MTdkMTM3ZGI1OGFmOTk1ZDZhMDNiMTRiIGxlZ2FjeS10cnVuaworMjI5MSA4ZjIxNGQ2MTdhY2FiODBmMTY2N2MxMDJiNmZlODVmNjgwYmNlMGRiIGxlZ2FjeS10cnVuaworMjI5MiBhZDRjNWE1ZWYwZmZlZWU5YjlhYTg4NWE0MTZlMDlmYTQ0OTI1MWIwIGxlZ2FjeS10cnVuaworMjI5MyA2NWVkZGUwMjJkNzFlZTM4M2IwYTU0NmM3Mjk3YzkzODk4YTZlMWIxIGxlZ2FjeS10cnVuaworMjI5NCAwNjg4OTY4NWViNjIwMWQyNGU5MTNiNGMwNTRjMWYyMjc0ZDRkMzVkIGxlZ2FjeS10cnVuaworMjI5NSA1ZDVjOWIyZGE1NjIyMTgyY2FmY2YxNzc3YjhhYTc2YzcwYWI3NjIwIGxlZ2FjeS10cnVuaworMjI5NiAyNmNjYmMzZTQxYzQ2MWFkNzlhNDJlMjAxMzM5Y2I5ZjlhMmQ4OWM3IGxlZ2FjeS10cnVuaworMjI5NyA2NTIzYmQyOTU0ZjA0MzZmYjhmNmNiNGFhYWZhMzAwNTA3ZTNhYjI3IGxlZ2FjeS10cnVuaworMjI5OCA4MmVmOTRiOGI5MDJlMzQ5NGIzODYwMWQxODQ0YmI5NTlkZTMxNjc3IGxlZ2FjeS10cnVuaworMjI5OSBiYjI0OTQ4OTU3ZTNjYTk2ODc2ZTkwMmVkYjI5MGFiNDY0YmE2YjZlIGxlZ2FjeS10cnVuaworMjMwMCBjMjk0YThjYWViYjliYjNlZTlmODkyYTM3MmQ2NDU3NTA3MDQ2ZjUzIGxlZ2FjeS10cnVuaworMjMwMSAzYjgwMjNiMGJiNDhiMTA2NmQ0YTMzNDA3MzE3MzA0ZDM3MjllMzkxIGxlZ2FjeS10cnVuaworMjMwMiBiZjVhODUzOWQ4YmE3Zjc0ZjAzNDIyYzViNGY2NjkwNzBmYjk2NTIxIGxlZ2FjeS10cnVuaworMjMwMyBjN2VhNjA0OTFlNjgxZTliOTFmNzZhMDEyYzRkYzk0NGI1ZmZmMmQ4IGxlZ2FjeS10cnVuaworMjMwNCAxODcwZDgyZGUwNjk5YWZiYTg5YTE5NDY2YjJmOWMzNjUxYjRjYzlhIGxlZ2FjeS10cnVuaworMjMwNSBjNzBlZWZlNDgwMjkwYTFkODBkOTg3YTJmZjU5OWEwZWFjYmViOTkwIGxlZ2FjeS10cnVuaworMjMwNiA4NTNiNzM2YTZhOWVlMzhlMzMwMWQ0MzBjMTUyYWU3NThlMTYxYTQwIGxlZ2FjeS10cnVuaworMjMwNyAwZjU5ODk5M2Q5OTg2ZjRhZTRlNmRkOWEzNDkxZDUwOWIzMDk4ZTgzIGxlZ2FjeS10cnVuaworMjMwOCAzNDk5YWQ4NzgzOWFmN2ExYTRmNzFjMTVmODlkMjBhYjg0Yzc4ZTcxIGxlZ2FjeS10cnVuaworMjMwOSBhMGM1ZjJhZjJlMGNhZDVjNGQ0ZGU0YTg5M2NhNWE1ZmU3Y2U3ZDQxIGxlZ2FjeS10cnVuaworMjMxMCA2MWM1MjYwYzM2NGYyNjBlNGM5YzljNTlkN2Y5ZDJhN2Q0NDM2YTFjIGxlZ2FjeS10cnVuaworMjMxMSBjNjVlYmE4MTk0YzdiNDAzYjllNzJlYWFjNDUwZTJkYWRhZjIwMzc3IGxlZ2FjeS10cnVuaworMjMxMiA5ZDRjN2RlMGRlZjRmZTY3ZWY1YWQ1ODI0NGM3Njk5YjUxODhiYTFkIGxlZ2FjeS10cnVuaworMjMxMyAxZDQwOTRjN2Q1OGI4YzczMGYwMzRiMWIzMTM2NTE4NTYyOWRhNTYzIGxlZ2FjeS10cnVuaworMjMxNCBlNTc2NGEwZDJkMzI5OWRhNjYxNGVlZjE5MjJjN2Y0MTc3NjY1ZmNlIGxlZ2FjeS10cnVuaworMjMxNSBmMmVmY2VhZjczY2M5ZDk5OWI4ZGY1M2JmZjdjZDIxOGEyZTYzMjQzIGxlZ2FjeS10cnVuaworMjMxNiA4OTZjODI1ZjJmNzFiZGQyYWMwZGYxMmI1YzZmZjE3OWUwNmNkYTI1IGxlZ2FjeS10cnVuaworMjMxNyA0M2NhYmFjNTAyM2QyYWMyN2Y1YzlhM2M4MzVmMWFjNjY4YzQzNjgzIGxlZ2FjeS10cnVuaworMjMxOCA0N2NjMGNlNzk5OWM3ODdmNmU5NGJkM2EwM2UxOWMwOTAyMjI0OGZlIGxlZ2FjeS10cnVuaworMjMxOSBjODY1OWY4YTVmNjM3ODRjNWFmZTQwMGRjMTdiNWZjMTkyZDAwMTk1IGxlZ2FjeS10cnVuaworMjMyMCA0MWYzYzY2YjEwZmQwYTY1Y2FiYzQ4YmZhMWM2YWViMzIwZDQxMzU1IGxlZ2FjeS10cnVuaworMjMyMSBhZmE0OGE5NmE0NDQzY2I1ODU3MTM4Nzk5ZTFkMDljNWRjNGJhZDY4IGxlZ2FjeS10cnVuaworMjMyMiAyNWE3ZmI0NGUyOTc4NDQ5ODEyMzU0Y2IwN2EyYjg2MmFmMzJjZWUyIGxlZ2FjeS10cnVuaworMjMyMyA3NjE4Njk3NjZlNDUyOGU2OGYxZDExNDYwNmViYzkxZWVjOGE0ZWZhIGxlZ2FjeS10cnVuaworMjMyNCBlZjliNGJlNWEzZmVhMTAyOWIzMWI1MTU0MjQ2OWRlMGIyNjhkZjBiIGxlZ2FjeS10cnVuaworMjMyNSA3Y2U5MWNmYjdhYzQ1MTJkNDkwNzczZDgxNzQ5Mzc1YThiYzMyOTgyIGxlZ2FjeS10cnVuaworMjMyNiBhNDU0N2FmMjk2NzExYmFhNzQzNzcyMjkyYzc0MTg0YzlkMjc4NWM5IGxlZ2FjeS10cnVuaworMjMyNyAyODkyM2U0NDI1NGNlYjc2Nzg5N2Y0NWRkZWRlNWUyMjllZjU0ZWQzIGxlZ2FjeS10cnVuaworMjMyOCAzZmEyYjE0YmUyNzA5MTE5MDc5ZjdhNmM2MzBlNWIxMzVkNWRlOTA1IGxlZ2FjeS10cnVuaworMjMyOSA2NTg1YWFiZTE5NjhiYTU2MThmMThlYTBjOWRhMWM5Nzg4YjM0ODlmIGxlZ2FjeS10cnVuaworMjMzMCAxZWQ3ZjZmNjU5ODM3MWViZDIzNTBlMTY4MTA4MWIyNjdhYzMwMWU2IGxlZ2FjeS10cnVuaworMjMzMSBlZTBhMzJmZDQ1Njc4NDk1YWMwMjMzY2FhZjZlZWNkMGM4ODRlOThiIGxlZ2FjeS10cnVuaworMjMzMiAwY2VlMDFiNjhkOWM4MjRkMzMzMjJlMzYwMjRhMDJmNGE3NWU3ZTEwIGxlZ2FjeS10cnVuaworMjMzMyA1Y2YzYzM2ZDAyZWE0Y2FiMjMxYzI5OTdlYWIyOGZlMmM3MjZiMTFmIGxlZ2FjeS10cnVuaworMjMzNCA0NjU2NDUyNDM2ZTE5YzQxMmU4ODA4ODM0ZTMxODVhOTY1MDA5NWU0IGxlZ2FjeS10cnVuaworMjMzNSAyMGZlZTRlMmVlY2RjOTVlZTAwYjJlYTNjZDJiMmVlOTViNWU1YjRkIGxlZ2FjeS10cnVuaworMjMzNiAwNmNjM2IwMDY3MWMzZTIyMTU3ZTI3ZThhN2Y2ZTg2ODJhNzZhODQ5IGxlZ2FjeS10cnVuaworMjMzNyAyMjkxNjhhMmZlMjg2YThiMjVkODNkODA1NjNkNzVmNDYwYTI1OWEwIGxlZ2FjeS10cnVuaworMjMzOCBiZDQ5Y2E2YzRhZGQyNDNjODhhMDk0MmFiZjVmMTNjZWYxMGZjM2QxIGxlZ2FjeS10cnVuaworMjMzOSBmYjYzNjdkNWZmNDY0OTA1NGU4Nzc5N2Y0MTIyMzQ4OTMwNTkxM2E0IGxlZ2FjeS10cnVuaworMjM0MCAwYzM1NWU5ZWU4NTQ1OGExZDFhZWU4YmFkZWFkYjgyZjVhYmFkYjRmIGxlZ2FjeS10cnVuaworMjM0MSBhNDA1YTMxMjQyZTdjNGI0ZDJlZDBlNDZiZTVmNGY5MGEzZDczOGNhIGxlZ2FjeS10cnVuaworMjM0MiBhODIzNjAyYzIyNzQxZDVhYjljNDc4YzZmNWJkMTkxN2MyMDQxNWVjIGxlZ2FjeS10cnVuaworMjM0MyA1OWZmYjZkNGIzNGM3NjczY2E3NGFmZGE4MmFlYTYzZmQ0YmNlZDc0IGxlZ2FjeS10cnVuaworMjM0NCBjOTE2OGFmZTIzZGRmNjljZGY1ZjAxNmM3MzFlZDNjNGNhYmNmMDE0IGxlZ2FjeS10cnVuaworMjM0NSAxYjA4ZGY0MTU4N2I4NTVmNGM2MjViOTIzYmJmZmQ0NjI3NTRiNTk0IGxlZ2FjeS10cnVuaworMjM0NiAzMzQ2NjI2OGI2MzcxZWE1ZTkzYzkzMWQwY2UzMzU0MGQ1YWUyZThkIGxlZ2FjeS10cnVuaworMjM0NyA4OTExNWU3NTM0ZDU4MGUwYjhkMjU4MWM4YzI0ZDAwNzkxZGIxYThkIGxlZ2FjeS10cnVuaworMjM0OCBmNDdkNWU5ZWEyNjRlZjkzZDM1ZmQ5YjQxOTQ4Y2QxNDJiYTcwZDQ3IGxlZ2FjeS10cnVuaworMjM0OSBkODE4MThlNjI2NzFhNjNlNTU1M2M5OThjYzYxYmRmYjM1OTEzNDZhIGxlZ2FjeS10cnVuaworMjM1MCBmZjBkYWUxZjRkYjYyNWJmMTMxYmViN2I2Y2Y3M2YxM2FlNTdjNWZhIGxlZ2FjeS10cnVuaworMjM1MSBiNTBmYTZkNTg3ODZkZGJkNDczZGVjZDk1ZTYwNWI4OWUwNGJjNDhjIGxlZ2FjeS10cnVuaworMjM1MiA1ZmZkMzcxYjc4NDFkZTY1MGMyYmZhYzEyN2YwNDBiOWZiNzgyYTk3IGxlZ2FjeS10cnVuaworMjM1MyAzMmFlNGExYWFiNjg5YWVmOGVlMDkwYzRjMTg5MTZkYTc4ZTIyZmRiIGxlZ2FjeS10cnVuaworMjM1NCA1N2YzZmZjN2IxYzQwNTQyNTE5OWViN2ZjMmQ4MzRkMzg1NzgyZTNkIGxlZ2FjeS10cnVuaworMjM1NSAxNDVmOWUxNDU5NWY0YmM2MmIxZTc0MjA3YzZkNTk2MzZhN2U5N2UxIGxlZ2FjeS10cnVuaworMjM1NiA0NWY0M2Y3NTVlNWM1M2JiNGZlY2M4NThhNzU1NDIzZDgyZTU4Zjg5IGxlZ2FjeS10cnVuaworMjM1NyA0OGZjMGI4ZjMzZDkwOWI0NDNmZDgwYjgzM2VhNWZiNGM1NTNlYTUwIGxlZ2FjeS10cnVuaworMjM1OCA0MjNiZTg3NmRjY2U2MjI1NzBjNTc5MzE5OTQ5NjY4MTJkMTE0ODMxIGxlZ2FjeS10cnVuaworMjM1OSA2NDYzMTZjOTk1MDc4ODhjZTkyMjZmZTdlNjc5N2ZlNzY4ZmU1M2YwIGxlZ2FjeS10cnVuaworMjM2MCAwYTNlMzNjZmQ0YTkzMzNlOWQwNmQ0NzQ2M2FlZGZiYTA2NzQwZTlhIGxlZ2FjeS10cnVuaworMjM2MSA5ZDAxOTY1ZjRmNDhhZmQ1OGU5ZjJjOThlYzM1NWZkZTZiODU2OWNkIGxlZ2FjeS10cnVuaworMjM2MiAzMTBmOGM5MjQwNzMyZTBhNzM2NDcxMzM0NjQzOWM2ZjUxYzI5N2VmIGxlZ2FjeS10cnVuaworMjM2MyBiZmZmYzdlMGZjYzNlMTkwYTEzNTUyODhlOGFkNzFhYjEzYTZjOThmIGxlZ2FjeS10cnVuaworMjM2NCBjZWIzNmVjNjE5OGRmMzk5YzE5OWQ3ZDAxOGViZDE2NGJhNmY2Nzg3IGxlZ2FjeS10cnVuaworMjM2NSAzZDdkYTYxNzRlMmU1ODUzZmM1MmVjYzhkZmI1YTg5MGQ1NTQ3ZGMyIGxlZ2FjeS10cnVuaworMjM2NiA4ZmZkYTg0NmQ3ODg5ZmQ5NzNjYTkwMDUyNGU0YzkxNzEzMTM1YWVjIGxlZ2FjeS10cnVuaworMjM2NyAzY2M1NDk3MmFiNTIzMDZhZjU5OTI3ZDViYTA3MDIyYmI2NWQwNGE1IGxlZ2FjeS10cnVuaworMjM2OCA5YWIzMjk2OTdkZGE1NDc1MDk4ODg1MjQ1MzBlMDI4MGM1NDIwMGZmIGxlZ2FjeS10cnVuaworMjM2OSBmMzUyZWE0ZGZmNzA4YjFhNzJhOTVjNDVlZDk5YTg0ODkxODZmYTExIGxlZ2FjeS10cnVuaworMjM3MCBlNDg2Yzg0OWM1MGMyNTZlYmM2ZjA5MDNhOTY5ZWEwMzZkNDM4OWM0IGxlZ2FjeS10cnVuaworMjM3MSA5MWEyZjQ3NDU4NTIxODQ0MDVmNjJlMTNkYzllOTJjNTA3ZGM4ZTk2IGxlZ2FjeS10cnVuaworMjM3MiA4M2YwYTcyNGE4N2MwMTYzMGEzOTZiYTU2YTNhYmE5YmRiYWVmNDZlIGxlZ2FjeS10cnVuaworMjM3MyBhNzkzYzllODgwYzdmOTM1OWYwNjMzODA3ZDdkNjJkNWFjMDcyNDBmIGxlZ2FjeS10cnVuaworMjM3NCA2NmI1NTc2NmJhNjU4YTU2YjFlYzQxZGU5YzJiMTYyYjhhOGIxYjE2IGxlZ2FjeS10cnVuaworMjM3NSBlZDAzMTFiOGU3NDE5MTgwNzljN2Y1MjZhY2YyODE3Nzc2MTZiNTVlIGxlZ2FjeS10cnVuaworMjM3NiBmNjFlNzM2OGRlZjJlOWU1ZjU1ODY4N2M5YWMxNWZhMzRmMDBkMWYyIGxlZ2FjeS10cnVuaworMjM3NyAxNzU0YjgwMjRiNTVkMGMzN2ZmZTZjMWFmM2ViMDFiMzcxZDZhZWRhIGxlZ2FjeS10cnVuaworMjM3OCAxOTU4NzIzYmZlMDI0ZDZlYjRhNGIwYzY2ZjI5YzU4ZDJiMjZhYmFmIGxlZ2FjeS10cnVuaworMjM3OSAzNDI5Yzk0NWQ4MTdkYmQxZWM0MTVhYzk1MzZkMmQyMTRhYmE4MjU4IGxlZ2FjeS10cnVuaworMjM4MCBhMTA5N2NkMDMzNDhlZTgxYjYxYzA2MDQ4Y2NiYTZkOWMyNThjYjZjIGxlZ2FjeS10cnVuaworMjM4MSAxZWZmNjExMTU4MmU0OGUwMDkwNjg4ZjQ3NWQxNmRiZGQ4ZjIyN2RkIGxlZ2FjeS10cnVuaworMjM4MiBlZGRhOWFhZDNlOGYxN2UyZDhmYmNjMzI3ZjE3ZmI2YzBlZmM3NjdiIGxlZ2FjeS10cnVuaworMjM4MyAyODk4ZDc4ZmEzMmRlN2UwNmIwZGMxYjRlMmJhOGIzMzg4ZDU2ZDVkIGxlZ2FjeS10cnVuaworMjM4NCA2NjkzYzVkODdmM2EwNDlkOTA4MGFlNmM5MDRlZDlhMjM0NjkxM2IwIGxlZ2FjeS10cnVuaworMjM4NSBlNzFiNmZlYzg2ZTU5OGZkMzAyNmY3ZWQ2MzA4ZmEzNzMwZTZhNWVlIGxlZ2FjeS10cnVuaworMjM4NiA3ODE5ZTE2MTUzMjBiNDIwNjIzMmVkYzM3ZWI4NjJiYzZmODczYjYyIGxlZ2FjeS10cnVuaworMjM4NyA3ZTgzMTE1ZWRiNmFlNmQzMjY0ZWMzM2M4OTQzMmIzZWRhMmYwMDAxIGxlZ2FjeS10cnVuaworMjM4OCA3ZWM2MDU4YjUzOWI3ZWQ5ZmEwY2Y2YmUzN2VkY2QxNmZjMTY4NjhiIGxlZ2FjeS10cnVuaworMjM4OSA2MzRjMWQzYzdkMzkyM2YwNGNhNTM0YWE4ZmYwNzQzOTkyOTYxMWM4IGxlZ2FjeS10cnVuaworMjM5MCAwODU5N2UyYjYzZDNmOTQzY2ZkZTZkMjc0MzQ0Njc1YzcyN2MzZTA0IGxlZ2FjeS10cnVuaworMjM5MSA3YmE5NjEyMDU4YTQ2OWIzNDkzOWY0ODgwN2JkNmUyYzI0ZWUwZjYyIGxlZ2FjeS10cnVuaworMjM5MiBiMzFhYmY0MjBlNjFhN2EwYTVhYWI0YTcxMjliYWExNThjOWVlZjA0IGxlZ2FjeS10cnVuaworMjM5MyBhZjJlNjQwMDc2OTgxN2IzOGVmYjdlZDUwNWFjYTZjODFjNTg4OWRjIGxlZ2FjeS10cnVuaworMjM5NCA4ZjYyYTU0NTczMTllMjY3ZjQ0YjZiZTUxZWYzYmUxZDgwYThlZjNmIGxlZ2FjeS10cnVuaworMjM5NSA5MTRjODNjZmE1ZTEwNWM3OTEyNDdjM2E4ZGZiZDA4MTZjZjQ0OTk3IGxlZ2FjeS10cnVuaworMjM5NiA5NzcwMTEyZTY2MGE5MDNmNWVhYzY1NzhhOGQ1NTg4MTRmNzQ4YjIyIGxlZ2FjeS10cnVuaworMjM5NyAwYTkyYjZhMWI5YzBhYmU4NzdiNjFhNGUzYjQ1OGUxZmViN2I2OGFlIGxlZ2FjeS10cnVuaworMjM5OCAxNmY0Njc3MTdkN2FiNzAzNWExMTVhYTlkNTEyZWI1OWM3MGY5YmNjIGxlZ2FjeS10cnVuaworMjM5OSBmZDgxNmVkMTdlMzVmMTcxMGU4Yjk2YjNjYzlmYjdlMDkxZDU1ZTE5IGxlZ2FjeS10cnVuaworMjQwMCBmZGE5NzNmMmE1MTJiOWE1NjI1NzU1Y2U3MDFmNjNhZWI3ZGVkMmI3IGxlZ2FjeS10cnVuaworMjQwMSAwYWFkM2E3Yjk3ZWYzNTI5MTMxNzExZmM4MWFiZDM3Nzk0YWZiZTUyIGxlZ2FjeS10cnVuaworMjQwMiA0MWUwNTc4NzBhNTM1NGVmNWI1Mjk1NmI4OTg5MmY0NGEzYmY3ZDc1IGxlZ2FjeS10cnVuaworMjQwMyAzMTZhMGQ5YzAwOTY5ZWQwNjZiMDI1YzA1NGZkYjBkMWM0NGQ2OGQ0IGxlZ2FjeS10cnVuaworMjQwNCA1ZjdjMjRiMzk1M2JlNzQ0M2VkNmYxZTM3OWIzMGI1M2JiZDBhZTc3IGxlZ2FjeS10cnVuaworMjQwNSA0N2ViODFkYTQ2ZGMyMTY3N2YxOGJjMWY1M2JhZWYyMGY0NGJmNTg3IGxlZ2FjeS10cnVuaworMjQwNiA0MzEzM2Q4ODVjNGNjOTYzMjExNjk5ZWQyOGM5Njc5MDNlMTY3YTNmIGxlZ2FjeS10cnVuaworMjQwNyA5NTZmZDVjM2YwNDA3ODAxN2RiYjI1ZmI3MGIyYWQxYThlYTFiMjhiIGxlZ2FjeS10cnVuaworMjQwOCAzNTliZjEwOWRhMGY3YzYxMDJjMGRkZTkwYTU5OWU4MTg4ZWIxZjRkIGxlZ2FjeS10cnVuaworMjQwOSA5ZWIxM2M2N2FlNmZmNmJlYTkyZjgyNmNlN2FmMTM1YWMwYWViOWJiIGxlZ2FjeS10cnVuaworMjQxMCBiYWIxZjU0OTRiOGVkZGNkZDFlNzlkNzE3OTRjNGYzZTA4M2MzMjY4IGxlZ2FjeS10cnVuaworMjQxMSBiOTk4NjAwOWQ3ZGM0YjdjMjg5MDU0YTg5YTY4NmNkYTJmYTZlZDc3IGxlZ2FjeS10cnVuaworMjQxMiA0OGQ1OGI3NGEzYTQ3YWJjYzYxNmJjYjYzNThiMDhkNDI1MjI1OWEzIGxlZ2FjeS10cnVuaworMjQxMyA2ODExOTEyZjY3MmQ4OTQzMzkxMzJiNmI4ZmM4NmRjZDU5MGNhMzczIGxlZ2FjeS10cnVuaworMjQxNCBkNGU1MzJlZTZmM2QxODdjMDdlZDU3ZDQ0NzU5YjQwNDBlY2NjMjM3IGxlZ2FjeS10cnVuaworMjQxNSA3MWIwYmQ1ZWQxNjIwNWIyMWQ0MzZhNmNiZmQ0ODEyZjE2YzlmOWFkIGxlZ2FjeS10cnVuaworMjQxNiA4NjA0ZjkwMjljZGEzZDcxN2JlYzY0MTI2NmVjNzA0YzhmMzY5ZTIwIGxlZ2FjeS10cnVuaworMjQxNyAzZWFiMmNmNWU0ZGQ1MWNmY2M0NDlkZjZlNGMwOThkZjliMGNmN2Q0IGxlZ2FjeS10cnVuaworMjQxOCBhNDY1NThhZDBiZWRhOTU4YWM1YzE3MDExNTZlNDY5MThjMGM3MWQ0IGxlZ2FjeS10cnVuaworMjQxOSAzYjkzYmNlYTEwZjZkZjg2OTE4MzgzNWU4NGNmZjViZmM1ODc3ODRhIGxlZ2FjeS10cnVuaworMjQyMCA2MzIxZDNkYzU3ZTBjMTg5MGE2ZjYyMmM1MWQzOWY0MGFmYWNhNjRkIGxlZ2FjeS10cnVuaworMjQyMSAyNmIyZWVkNzgzODE0ODgwNzQxMzMwZDBkNmMyZDFiOGJlMTE0ZTA0IGxlZ2FjeS10cnVuaworMjQyMiBmNGE5NDRlOTgzNWZhOTMyZjE0MjY4NWE3ZTI0NGY2ZDI5OTQ3MTE0IGxlZ2FjeS10cnVuaworMjQyMyA2YWNkNDFhNDVkOGRhOGJiMGYzYTU2ZmJkZTBmOGM2NjgyNmQwM2Q5IGxlZ2FjeS10cnVuaworMjQyNCAyOGYwZmZkOWZhY2ZiOTlhYzU5NThjNzhlMDgzY2UyMjY2MzgwOTE3IGxlZ2FjeS10cnVuaworMjQyNSA3MmQxYjg5YmUzNWFlMjJiYjZhZWE1M2EzN2QzODQ0ODQ2MzNjZjQ4IGxlZ2FjeS10cnVuaworMjQyNiAxODdiYTE3MzNiMTc4MWI0YmY1ZDk3YTRkNGZiMzM0MjU1NTBkODkwIGxlZ2FjeS10cnVuaworMjQyNyBiNTgyNmJmMjk2Nzc2ZWEwZjQzYTk1MjEwNGQxMTQ5OGZmMjRhZDZlIGxlZ2FjeS10cnVuaworMjQyOCA0NTc2NjFlNDdjN2JhOWI2ZGQ5MjY1M2Y3YjQ3ZDdhY2ZhOTQyM2E1IGxlZ2FjeS10cnVuaworMjQyOSAwZmUyNDcxMTY2ZjA1M2JmN2Y2YjFiMDEzM2QzOWQ4YzI2ZWZiMjNmIGxlZ2FjeS10cnVuaworMjQzMCA3NDVhNDY2MTE5NTdkNmIyNDU0NzY3OGRlM2ExZWUwZjUyM2VjZTY1IGxlZ2FjeS10cnVuaworMjQzMSBhZGVkMjA4YWRmNmM2Mjg1YTgzZThlNDNiYzU5MjllZDA0ZTQyYzNjIGxlZ2FjeS10cnVuaworMjQzMiAwYmYwMmUxYjdmNTFkZTZjNjUwZDE4OTg1NjUyZmVkYmNhMGU5YTEwIGxlZ2FjeS10cnVuaworMjQzMyBmMDg1N2NlN2VkNGZhZTQwOTg1ZTJkZDBkMjE2Mzc2ZmZmZjMwN2M2IGxlZ2FjeS10cnVuaworMjQzNCBhZjFjOGY1ZDBiMzdmOTMxYmQxNzYxYjg5M2Q3N2NmM2E5NWUwNTY5IGxlZ2FjeS10cnVuaworMjQzNSAxMmE2NDExNWE0ZWViZGE0YjhjY2Y5M2YzMjIxNmIyMjcwNzg0YTk2IGxlZ2FjeS10cnVuaworMjQzNiA4MDAwMWMwMjNiMmIyNmZhYzk4YzI5NDBmMzFhNDZjZjJmNTRiZTk4IGxlZ2FjeS10cnVuaworMjQzNyAxMDc4Y2QyNzNiNDA0MWI3OWYxMmZiNDE5Zjg1NzQ5YjdkZjliZmJiIGxlZ2FjeS10cnVuaworMjQzOCA1M2M4ZDc2MmYzYTgzZTIwM2E1ZWEwMTIxM2QxMTVjNTUzZDNmYjQwIGxlZ2FjeS10cnVuaworMjQzOSBhZjlhODYzNmU0YTg3Nzg3NDcxNDEwOTM0MTUyMzE0NzJiN2Y5YzRlIGxlZ2FjeS10cnVuaworMjQ0MCA5YzkyNGY5YzNiMTY5NDMyODdhYTU2YmJkOWVmY2YzMzZhMTY1NDZkIGxlZ2FjeS10cnVuaworMjQ0MSA3MDJhMTM5ZmEyNGI0OWE4NGE1MzAxMjI5ZjMwYzBlMDkwYTIxMWFmIGxlZ2FjeS10cnVuaworMjQ0MiA2ZGZjOTI2MzAxMjM0NzBhMDQ0N2NmYWQ3YmFlNzlkOTAwMjY0MjEyIGxlZ2FjeS10cnVuaworMjQ0MyBkNWM5YWU0MjJiNDEwMzY2ZDVkMzAxNzc0YjYyZDc3NTk2YmJiNTk1IGxlZ2FjeS10cnVuaworMjQ0NCBlZDAxNjI1NTg5MjkzM2E5ZGUyZTFjY2JkZDYzM2U3ZjQyZWUzMTEyIGxlZ2FjeS10cnVuaworMjQ0NSA2YWM0MDIwMjNjYWM1ZWE5ZjM3NWY0MjI1ZDUxZTRkMWYzOTY2YmQ4IGxlZ2FjeS10cnVuaworMjQ0NiA4NWJkN2RhYzEzZjNhZWM4ZmNmMjQxYTg0NGE2NDc0NDJkNjg1MzY1IGxlZ2FjeS10cnVuaworMjQ0NyAzOTA1ZGE2YzRhOGJmMTQ1N2FiYjBmZGRjZTE4ZDJlYTAzOTRjNmVmIGxlZ2FjeS10cnVuaworMjQ0OCAwN2VmZGEyOTUxYTg3ZjFmOTAyMjA1YjBiZDhlMzE5MGIzOWI3ZDA2IGxlZ2FjeS10cnVuaworMjQ0OSA5YjQzYTk4MzEyNGMxMmM2NjI4ZDIzNDMzM2Q4MTc3MjUzYjY5ZTRlIGxlZ2FjeS10cnVuaworMjQ1MCBjNGMyNzhjNTZlOTAwMDUzMTNiMjUxYzU5YWJhZTgzMTczMDI4NmI3IGxlZ2FjeS10cnVuaworMjQ1MSA2NjM3ZWVlMWM0Zjg0MjJkNzYzZGNlODQ4YjMxYWM4MGUyOTU3YzE1IGxlZ2FjeS10cnVuaworMjQ1MiAwNjc3NGE5NGFiYjViZDczNjYxZjMxNjExMTE4ZTEyMGJlMzVmNjEzIGxlZ2FjeS10cnVuaworMjQ1MyA2MzA4NWY3YjNkYjVhZDJiY2FiNjUwNTMxYzI3YzhlYTgyMmFjNGMzIGxlZ2FjeS10cnVuaworMjQ1NCBmOTAwYjY5MmIzN2U0NzAxOGQ1NWRiM2Q5N2FlZjRjYzZkM2IwY2M3IGxlZ2FjeS10cnVuaworMjQ1NSA4OTM4YjMxMzJjYWE5MDM4YTA2YmY2ODViODMyOGFjZjNhMjJlZDViIGxlZ2FjeS10cnVuaworMjQ1NiBkN2EzOGRlY2U4NmE4MTgyYTRlZDMyNDQ1MzEzYmIzZTM5NDA1YzJiIGxlZ2FjeS10cnVuaworMjQ1NyA3YTM1ZDk4NTc2M2IyMWY5NTllMmQxNmM4YWVjYmViYjVlY2Q1NTVjIGxlZ2FjeS10cnVuaworMjQ1OCBhYmNjYjBmOWY3MzU5YmMyOWI2YmRkYjI5Y2RjZDAyYjM3ZjFlYjcwIGxlZ2FjeS10cnVuaworMjQ1OSA3Zjg3NTZmZDY0MjIwZTNkMTA2NjUxMjVkNmVmMmUyOWI4YTUwZTU4IGxlZ2FjeS10cnVuaworMjQ2MCBmNzA5MGY1ODE0YzIyNzYxOTg5MTdmZDg2NWJlNjcxNTUzNTRmOGM4IGxlZ2FjeS10cnVuaworMjQ2MSAwOWZiNzllN2JhZjdhZTdlMTBlYWRkMTIxOGE0NDk4YTY5MWQwYTY2IGxlZ2FjeS10cnVuaworMjQ2MiBjMjhmYWJlMjExNjU0NDU4Nzk4N2QzYzYwZjE0MzA2YzdiOTk3MmFiIGxlZ2FjeS10cnVuaworMjQ2MyBkMTlhNjY1OTA0ZGY1Nzk0ODM3YzUxNjQ4Nzk3ZThjYWJlYWViYzMyIGxlZ2FjeS10cnVuaworMjQ2NCAxNDlkZDEyMWQwYTZiNGViNDAzNDBjYTlmMDA0MDEyYzdmM2E3ZGZiIGxlZ2FjeS10cnVuaworMjQ2NSAzMjAxYjc1Njk1ZWYyODgzZWZkNDg2NGY0N2EwZjNhYzUyN2E4NmRiIGxlZ2FjeS10cnVuaworMjQ2NiA2YjkzZDRjZThkY2I5OGJmNThhMmQ4ZTkwYjkzNzEzZTE2OTlhMGRlIGxlZ2FjeS10cnVuaworMjQ2NyBjOGE5NzkwMjlkZjQxZDhhYzEyM2IyM2U1MTM4MGI3MWNhNDI1MjAwIGxlZ2FjeS10cnVuaworMjQ2OCAzNWEyNTI4ZjhhNzNkODZmZDM4ZTliYmEwM2MxN2NhY2IzZTA3YTM0IGxlZ2FjeS10cnVuaworMjQ2OSBhYmNkOTE1OTMwMzU3N2ZiZWZiZjQ2NGUzMTY1MGFjMGZlYTQyMzE1IGxlZ2FjeS10cnVuaworMjQ3MCAzODIzMjNmOTJmY2U1ZmQwNGVjNTA2MTgzZjAyZjg0MWZhMGZkZTQ4IGxlZ2FjeS10cnVuaworMjQ3MSA3MmEwMjY4NDIwZDA2NzRlMmE4ZDBkZDY1N2E2NDZlZDcwNGE4ZjQxIGxlZ2FjeS10cnVuaworMjQ3MiA2MDVlMTcyYmJiNTU3NDY0Mjg3ODIzZTRlN2Q0NmYzODdmZTIwYWYxIGxlZ2FjeS10cnVuaworMjQ3MyBhZTg5NDExZjZmYzBlMDY0ODZhMTAxMjAzOWJlY2Y1OWU1YzU3OTVlIGxlZ2FjeS10cnVuaworMjQ3NCBiOGU0MjEzZjY1YTZlNTRkYjRlMzJlOTQwYzUxOWU2Y2FlNjE2NzM0IGxlZ2FjeS10cnVuaworMjQ3NSBlODM4NTJkMWE1ZTIzZDZkMzhkODZhOTBkNzczOWU0NWFmMmFjMmZiIGxlZ2FjeS10cnVuaworMjQ3NiBhZWY3ZTBhOTExOWU1ZDM3ZWU4MjIyNmE0NDUyYjIyOGZjNzBhMjBmIGxlZ2FjeS10cnVuaworMjQ3NyBhOWQ0NjdlODQ2MzE5NGNkNTZjMWI2ZjgzNzgwMDE2ZjcwZWUxMGQ5IGxlZ2FjeS10cnVuaworMjQ3OCAzMjViNDBkNzcyMzU1NjI5NTRkNzFmZTFmNTlmOTFiNzhiZjY2NzAzIGxlZ2FjeS10cnVuaworMjQ3OSAxMmZkZmEwMTBlNDFlYjk1NWZkNWM3ZWU0YTI3NmU2ZmRkZGE0NjhkIGxlZ2FjeS10cnVuaworMjQ4MCBhMTc3NWNjNzg2ZTZhZDlkMTI1NGEyYjBhMWIwMGNjZTRhNWU3NzUwIGxlZ2FjeS10cnVuaworMjQ4MSAyNjQyNmM0MmExNjJhNDQ5ZmUwMjg3MDY1NjU3ZjVhNjkyMzhlMDRlIGxlZ2FjeS10cnVuaworMjQ4MiAyYTg0YjE2ZjkxYjA5ODgzMWJhNzUzYjNlMzEzZDVmODY1YTI5ZDAwIGxlZ2FjeS10cnVuaworMjQ4MyAxYTZjZjFmOGNjZWNhMDRiZGMyZWE3MGNkMjNkYmRiNWQ4NjE1NTgxIGxlZ2FjeS10cnVuaworMjQ4NCA3MTRjMjM5MGU1Y2I0NWU2YzgzMzRmYzQxY2NlOWUyZDZjMTI0NDg2IGxlZ2FjeS10cnVuaworMjQ4NSBhODEwMjBkNTA1YmY5ZThiNmM5ZTBmNzgyOWVjMTFhMWVlYjMzMzA4IGxlZ2FjeS10cnVuaworMjQ4NiBiYWFkYTIwNzYyYjA4MTg1ZDAxMGUzNmM2NjgxODMyODNkM2NlYzBjIGxlZ2FjeS10cnVuaworMjQ4NyBmZjA4NjJlM2Q2M2E5Njc3OGRlMjgwYzk2ODc1YWZmMTQ2Mjc5N2VlIGxlZ2FjeS10cnVuaworMjQ4OCA0YjU5ZTYzYTI3YjU3YzMxNzJlZGQwZTk1Yzk2MzEzNWY5ODlhY2U4IGxlZ2FjeS10cnVuaworMjQ4OSA0OGJiYzhhZDgwMTZhNWI1NDc0MTZlZTFiZmNmYmQwNWNkMmYwOWY2IGxlZ2FjeS10cnVuaworMjQ5MCBmMjFjYjdiNTNmNmNmOGFjNTc0OTU5ZjJlZTI1ZTI4YzRmNWZhZmFmIGxlZ2FjeS10cnVuaworMjQ5MSAxODA3ZDYwZTYyMzFmN2JhYjg0MmE4YjcxODUwYTA2MjlkNjU2NjAxIGxlZ2FjeS10cnVuaworMjQ5MiAyMWMyNjZmN2VjYTFkOTY3YWJmODNjYzVmYzQwMzAyOWU4ZjljMGVlIGxlZ2FjeS10cnVuaworMjQ5MyBiZTMwNTJhNzdiN2ZkNDY4OTU0YTA3NDg1MzE3YWRlM2Q5ODNiNDBlIGxlZ2FjeS10cnVuaworMjQ5NCAxMzdhNWUwNmZjODRjZTU1Y2I0MzBlODk3NWQ2OWIwNzk1ZTRjNzVlIGxlZ2FjeS10cnVuaworMjQ5NSA0NDlmNWU1ZDlhZjYyZjIzZWU1MDk1Mjc1NGYzZmQ5MWVkZTdkNGYzIGxlZ2FjeS10cnVuaworMjQ5NiAxN2EyOTc2MGQwNjJiMDEzY2RjYjRiZTU3NjA3MzJhN2MxYzFjNzFiIGxlZ2FjeS10cnVuaworMjQ5NyA2NDE4OWJhN2UyM2JjYWMzMGJiMGRiYWMxN2U0MWQ0ZTA3MDhiMzgzIGxlZ2FjeS10cnVuaworMjQ5OCA0MjY2YWVmNTBjMmI0Y2ZiMWMyZjExMjU1N2I2ZGIwNDJkYmNhN2YwIGxlZ2FjeS10cnVuaworMjQ5OSA3OTRjZmQ0NTVkYzZmNjI2YmNkYzVjODQxMTY0MGM5ZWYyNTFjYjJiIGxlZ2FjeS10cnVuaworMjUwMCAwOGRjMzdhNGRkMzIzYTIyNTViMDQ4Njg1ZTk1OTYyNzA0Y2JmYzY2IGxlZ2FjeS10cnVuaworMjUwMSBlMzk0MWVmZDczMTA1YzEyMThhYTExYzM5NDQ0ZTA1ODA4NjQ4MGY2IGxlZ2FjeS10cnVuaworMjUwMiA5MDQxOGZkNDM3ZGJkMzY3NTA4MzU0MTFlNmMxYTFhMmQ1ZjRiM2I4IGxlZ2FjeS10cnVuaworMjUwMyBmMzc5NWFjMTQ2Y2VmZWYwYjZhNTViMTMxMzFmNzdmOWM2Y2E5N2I1IGxlZ2FjeS10cnVuaworMjUwNCAzNmFjZTkwODI4OWJhNzlkOTdiNzA2MGU4NWYwNWRiZTlmZGJlMzQyIGxlZ2FjeS10cnVuaworMjUwNSA3NWIyZmQxNjNmZDcxNWExMDAzM2E2MDgzNzY2NzM3MGI2NTAxNWM4IGxlZ2FjeS10cnVuaworMjUwNiAyZTBlYTZkNWM2Y2VmYTdhY2RjZTUxYWM1MzkxNTk1N2QzZjY3ZmI3IGxlZ2FjeS10cnVuaworMjUwNyA0ODE3YWU0MGE0ZTIxZGMwOGQ3ZDZhNTRhNTM3NWQ5NmVhYzVlZTQ5IGxlZ2FjeS10cnVuaworMjUwOCBkYWFiZTIzMjA2MmUwNGM2M2VkYjU0YWI1MTc3MmM0NGNkZTUyYzhkIGxlZ2FjeS10cnVuaworMjUwOSBhMjk1ZDlhM2ZlODkyMzNjMmY1NTNjN2IzZGRlZTFiMjcyZGQ3ZjYwIGxlZ2FjeS10cnVuaworMjUxMCA2ZTVjYmQ5Y2Q1Zjk1MTg3Y2NiY2U1MGY3MTViNjY2MWQwZGExNDc1IGxlZ2FjeS10cnVuaworMjUxMSAzZGZhYTA5M2Q5NmU5MThjM2UwZTg1YmE5NTBjYjM0ZGI1Y2Y4MDU5IGxlZ2FjeS10cnVuaworMjUxMiBhMzU5NWFlNGRjMWU3ODNmYTQ5OTk5NGRkYWNjOTkzYjYzZTc0OTMzIGxlZ2FjeS10cnVuaworMjUxMyBkOTMyNTljZDM3OWQ2NjZlZmQxMjM0ZDU5YTBlYjBkMTM3NGNjMDg2IGxlZ2FjeS10cnVuaworMjUxNCAxYzJjZjJiZGI2YzhhMGU1NWMyZGYwNTFiMjIxNmI1MWRlMzEwNTMwIGxlZ2FjeS10cnVuaworMjUxNSA2MGRhN2VlOTEwMGU2NDliNDAyNTA0YzQyMmY3YzU4OTgwMGM0YjU5IGxlZ2FjeS10cnVuaworMjUxNiA4YTk0Y2NjNGM5MTQwMGIyZTQ2MjIzZTlhYzE3ODA2ZjFkOGUxYWQzIGxlZ2FjeS10cnVuaworMjUxNyBhYjA1ZWZlZDAzZTkwZmY2MWNiNjI4NjljNDIyOGFmZDdhMzgxY2E3IGxlZ2FjeS10cnVuaworMjUxOCAyMzU4N2JlYTExYmIxYThmNjc2ZjQ5ODdjZDBmMTM5MGZjYmZhMTZjIGxlZ2FjeS10cnVuaworMjUxOSBhNjdhYjVkNTgxNDYzYzFmZGY1MDk1MWEwNzBkNmNjYTk2MDUyMzIyIGxlZ2FjeS10cnVuaworMjUyMCAwNjk2ZjE5ODc1M2Y5NDhlOGE2MTRkMTlmMzAxYWQ2NDhiOTY4MmM4IGxlZ2FjeS10cnVuaworMjUyMSAzYjMzYWM0NGUzNmUzYzY1Y2U3MjY5ZGM4OWM5ZWZhMmZkOTFhOWJkIGxlZ2FjeS10cnVuaworMjUyMiBjODU4NGExYmEzOGE5NDc0NGU2MTFlNGExMmUxMzY2ZDBjNjk0OGZlIGxlZ2FjeS10cnVuaworMjUyMyBiMjk2OTZlNWM0ZDk4MmQ5NTlhMjJmZWFjYTA0NTdlNWEwNDdmYWUwIGxlZ2FjeS10cnVuaworMjUyNCBkNzA3NTRhOTYzMTBkNjI4ODFhODk5YjY1NjNhYWIzMmU1OGQ1NTA4IGxlZ2FjeS10cnVuaworMjUyNSAwYmY4MjVmNTVhYzE1MjAwYjYwMjFmOGFhM2I0MGQxZjRjYjJhOTg5IGxlZ2FjeS10cnVuaworMjUyNiA0ZTMwNzNiYjBlM2UwMzk3YmRlOTc1M2U4ODMyMjEzYzA5Y2EwOTAwIGxlZ2FjeS10cnVuaworMjUyNyBjZmJhYzZmZjczYWYzY2E0MzQ5ZmUzOTBlZDVhMGUwYmQwZWE4YzI2IGxlZ2FjeS10cnVuaworMjUyOCBhN2QzNzBmOTNmNzUyNmYzNDMzYjZiMzRhYjU0ZjIyMTUxODVjZGNiIGxlZ2FjeS10cnVuaworMjUyOSAwOTI3YmRiODE2YTA0M2JjYjRhMTFmMTQ4MDBlZDE3OWQ4NjM2NGQyIGxlZ2FjeS10cnVuaworMjUzMCA0NmE2NTYxMjNhNjk2NTU2MGJmMjMyMjM4MDY5MzJkNTM3YzMzNjJkIGxlZ2FjeS10cnVuaworMjUzMSA1MDliYjc0YWMzMjQxMjlkMzIzNTMyMWM5YWE1ZGU3Mzk5OGZiMWU3IGxlZ2FjeS10cnVuaworMjUzMiAzOTcyOTAwZTFiNjFiMjcyZDVmNDZiZmYyMDJmZjRiYWQ1NDc3Y2U3IGxlZ2FjeS10cnVuaworMjUzMyAxNmIxOGY1ODZmZWNjNDFkMTU0NDRiZDQyOTE0NjNjYjlhNjc0ZjczIGxlZ2FjeS10cnVuaworMjUzNCAzMDVlMTUwYmFhNTM4ZTVlN2RkYzBmNTFjZTM2ZDQ3NjA5MmJmNTVjIGxlZ2FjeS10cnVuaworMjUzNSA3MGExOGE2Njg5ZDRkOWNkMGRlMzdhYzJjNmQ0N2M4NWI2MjNjN2YxIGxlZ2FjeS10cnVuaworMjUzNiA4NjgyOGNjMWM2NDY4ZDNhYjBmMDgyMjRhMjcyNmM2ZGM5MTM5NWQxIGxlZ2FjeS10cnVuaworMjUzNyA1NjQ1OTQyYjdhZTA1NWM1NmJkMWQ2M2YzMDlhZTUwMzI2YWRjNGI4IGxlZ2FjeS10cnVuaworMjUzOCA3YWE0Y2Q2MjFmNTkyNjRmMmY5ZDMwMTcxNDAzM2I3N2U2NzFjYTlmIGxlZ2FjeS10cnVuaworMjUzOSA3MzA3NTdjY2I4YTM2OTg0ZjgxOGExMTg4NjU4OWM5MWE5MzdjYjNhIGxlZ2FjeS10cnVuaworMjU0MCA3M2VmZTNlYTRmMWI4YWY3YzJmYmJlODVlM2U4OWJmODE1OWY3MjM0IGxlZ2FjeS10cnVuaworMjU0MSBkZGFiNTAyODVjNDc5ZWFmODRjZjdkNmIwMDZjYjZlNzBhNjA3YTg3IGxlZ2FjeS10cnVuaworMjU0MiA0YTk2ODIzZjliNjg0OTYwMGM1ODhmZjM4Nzc1Zjg2ODJmOTYyNzAzIGxlZ2FjeS10cnVuaworMjU0MyA0ZGZmMjNlN2NmMTE0MTdiNTBkN2RhN2Q3MTFkODQ3ZjNiODA1MDYzIGxlZ2FjeS10cnVuaworMjU0NCBiYTNjMWY5NWU2NjVlMzU1NjdjYmIxNzgxZGY2MzBmYzczNmY0ZjI5IGxlZ2FjeS10cnVuaworMjU0NSBhM2Q0ZDQ2MWQ0NDIxZmFlYjM0YWNhMjhmYzY2NDM3NjBhOTQxZGU1IGxlZ2FjeS10cnVuaworMjU0NiAwMzlhZWU2Y2JkNzg2YWJmNTEyY2NiYTIwOTBiZjQ5MDc1OTgxMWEzIGxlZ2FjeS10cnVuaworMjU0NyAwNTk4ZjRmMjVkMDQ0ZDYyYWIzZTcyM2NjNjMyMDYxNjliYjU3YTM2IGxlZ2FjeS10cnVuaworMjU0OCBmMDFhZWU2MTU1YjNhMmZmMmEzZGY5OTNhZTEyNTc2MGQ3ODJhOGMyIGxlZ2FjeS10cnVuaworMjU0OSAzMWQ1MDllOTQyNzEwNTlmMTJkNjNjNzEzMWMwZDU4MDI2ZDg3OTRlIGxlZ2FjeS10cnVuaworMjU1MCA1NWJmNjY0NDVjODVjODBmMjI3YWM0OWMzMWEzZTg4ZjlmODA1ZTk3IGxlZ2FjeS10cnVuaworMjU1MSAxNzJhYTJjM2U3MzQwYzFlNzQzOWYzYjdlMWJhMGYzZjBjY2E2ZjA2IGxlZ2FjeS10cnVuaworMjU1MiBjYWY4NDY2ZGNjOWMzNTc3YzFlYjYxOTE0NjdmZTk0ZjE1YjI0MjU3IGxlZ2FjeS10cnVuaworMjU1MyBmMzNhM2Y2OWRmY2I1OWJkMTk4NjQwYTYyNDc4OWU2MjE3YjE2MzMxIGxlZ2FjeS10cnVuaworMjU1NCA1OTYwOWIzYWY5NzhhMzk3MDE2Y2QzNWJhZWEyZDE1ZTU4YzNmYWZhIGxlZ2FjeS10cnVuaworMjU1NSA4MTU0Mzg1MjQ4ZDgxNzU3ZGU5MTE4OTdiMjdkOGIzZjFmYTBkYjMwIGxlZ2FjeS10cnVuaworMjU1NiA2NTliOGRiZjY5NWM1MTFhOTk1NWU5Yzc3ZDQyYzVmZmE5OTg5ZmM3IGxlZ2FjeS10cnVuaworMjU1NyBjMjYyZjQyMWE0NGM1MWM0ZmE4OTc1NDBkNDM5NTRlMTgxMWE5OTM3IGxlZ2FjeS10cnVuaworMjU1OCA0Y2RjYzE2YmQwODAwZmVjMGIyODE0ZThjMDA5ZGZkYzBkNWYyMDIzIGxlZ2FjeS10cnVuaworMjU1OSAwYWMxMzU3Y2Q4OTg5ZTNiMzY1NDIyOGUxNjY3N2JkYTE2NjJhMzk5IGxlZ2FjeS10cnVuaworMjU2MCAxZTRlNmRmMDcxOGUwMzgzNmE1YmI2OTNlY2YzODA1YzQyYzA3MjQ0IGxlZ2FjeS10cnVuaworMjU2MSBkMTg5YTJmNjgxYTZkZjM3NTlhMGE0MDI2YmQ2NWVkNzQxMzIyMGEwIGxlZ2FjeS10cnVuaworMjU2MiAwYzVlNGUxMzdkZTZlMGYzNjhhYjQ4OWU2NDQ2MWVmOGIwNDJjYmYwIGxlZ2FjeS10cnVuaworMjU2MyA5YmQyNjgwZDE2YmMzNjE3MGYwZjJjOTAzZjFmYjg3NjU0MTA3NzA3IGxlZ2FjeS10cnVuaworMjU2NCBkNzgzMmFmNmFiYTYzNGU1ZTMzYWRiNDgxNWVkOTA3ZjliMjg4MGNlIGxlZ2FjeS10cnVuaworMjU2NSA5Y2QzOGQxYWMzOTE5ZjM2YzBhMjYzZmNhZTQ4N2YzZjA0MTJhZTljIGxlZ2FjeS10cnVuaworMjU2NiBkM2QzMjg2ODAzMjhkZTdmODYyYzExMjNiNjIzZThjNGM3NzVkMzY3IGxlZ2FjeS10cnVuaworMjU2NyBlNjI4ZDA5Y2UyMmZlYmRkYmM1ZmVmYWEyMjMyNjIwMjY2NGVhNzFjIGxlZ2FjeS10cnVuaworMjU2OCA5YjNkNTU3NjY1YTkxODAyNTViNmY1NzczZTA5MjVmNmZhODAyMjQ3IGxlZ2FjeS10cnVuaworMjU2OSA5NTIxMzNlODliYzcyNWViZmE0OWYzODE2MDk2M2UwNWEyMmM3NGY0IGxlZ2FjeS10cnVuaworMjU3MCBiNWZlNjQ4MjA3MmZlZmE0Y2I0M2I3MmIxMmNmZjVlMmY2ZDNlNjI0IGxlZ2FjeS10cnVuaworMjU3MSBmZDA2MWRhZTllNTcwZDhmYTgwMzhjZWNlNzBiYWNlZjVlMWZmNjdiIGxlZ2FjeS10cnVuaworMjU3MiAwZjM1M2FmYzI4NzBkNjg0NDc3MjlkYTA3NDJkNDQxMWM1YmJlZDI3IGxlZ2FjeS10cnVuaworMjU3MyA0ZWYzMWY1ZDNkOTI3YjRiNzJiZjEzMTAxZjM4NjRlYWY2MzIyNjkxIGxlZ2FjeS10cnVuaworMjU3NCAyYWZmMzdiOWUyMGVjYTA5N2Q4YzlhYzkwZmM2Y2JmZDQ0MzBjNjhmIGxlZ2FjeS10cnVuaworMjU3NSA0YzQ1YmNiZTNiYjNiYmY3MTJmMmFlYjk1M2I0NWU0NWQzZjM5OGZmIGxlZ2FjeS10cnVuaworMjU3NiA0ZjE1N2IzMjRjNTA1YjA2MmNmNTJhMjk2YTRhZjRkMmE5NDM1NmNiIGxlZ2FjeS10cnVuaworMjU3NyAyYjAzNGM5MGI2ZDlhNjc4ZGRjNDc5OTM5YzQxYTExOGZjNjBhYzVlIGxlZ2FjeS10cnVuaworMjU3OCAxNjNlMjkwNjBmMGJmMzJmMTE5YjdkMTIxMjhlMTc0MTk5ZDQxNDhjIGxlZ2FjeS10cnVuaworMjU3OSA3MDMyM2NiYTNjMTM2OWRhMjRjMDMwOWZkMDZjMzNmOTkzNTIzZDc5IGxlZ2FjeS10cnVuaworMjU4MCA1YTlhYTJhYmEwOGU5NmQwMDBlOGMzZmZkODFhNDNmOWMwMDU5MTg1IGxlZ2FjeS10cnVuaworMjU4MSAzOTQzMDEzNDA2OTMzNzJiYjhjMGZlMzkyNzA3MGIyMTMwMDE0MmFlIGxlZ2FjeS10cnVuaworMjU4MiA1NWVlNzVmMmZlYTRhY2RhZDY0ZWUzNmUyYzRjZmVhZWI1YmJiMzVkIGxlZ2FjeS10cnVuaworMjU4MyBlYTVjZjA5YmJmMzZiNDY3Y2I3OGY3Y2IzNzY0NzIyZTA1MGI0NWFjIGxlZ2FjeS10cnVuaworMjU4NCBjOGQwYTRhNDFmMGJhN2NlODJmZDdiY2U3NTlhZjExODNjNGMxYjgyIGxlZ2FjeS10cnVuaworMjU4NSAyZGNlY2E5YTA3MTM5MzNjMzYxZTQxYzZiM2QyMGVhY2M1YzQ0OTc1IGxlZ2FjeS10cnVuaworMjU4NiBkMWVlMGZiMGMwZGY1NjVhMjQwNTUxMzdlM2VjNjYwZjNkYzA3M2MyIGxlZ2FjeS10cnVuaworMjU4NyA2MWJiYzcyMzBjNzE2NmU1NjVlZDBhYmZhMzU1MzBlZmUzNDRjMmRmIGxlZ2FjeS10cnVuaworMjU4OCBhM2E4NDJiMzk5MTMyZWM4MGVkZTU4OTQyZmYxOWI0YjcxYTdhYWM0IGxlZ2FjeS10cnVuaworMjU4OSAzYzdiN2NhYTlkYTU2NmFhY2U2MTBkMTFlZmZkZmU4N2E0MTkwOTc5IGxlZ2FjeS10cnVuaworMjU5MCBiYjMwOGU3YjAwMzk0ZmJjOWM3ZTQ0NTVhZWNlNGNhNTAxMzk4MzhkIGxlZ2FjeS10cnVuaworMjU5MSAwZjllYmM2M2RjYjU2Mzg5YWYxYjFiZmQ3MTNlYjEwYjk5NzZkY2IwIGxlZ2FjeS10cnVuaworMjU5MiAwOGIxYTg5YzhmMDYzNTM0Yzc5Mzk3NTc0MTQzNzk0MWU3M2FmZTUyIGxlZ2FjeS10cnVuaworMjU5MyA3OTQwYmIzOTFhNmFjYjJmOWY1ZTAzNmUxZjBlNTJkN2U5NGRmN2FkIGxlZ2FjeS10cnVuaworMjU5NCA4YmVkZGMxNzAzOTY2OGIzNDgwNjk1YmIzYzhkMmI5NWJmNTRmNzM1IGxlZ2FjeS10cnVuaworMjU5NSA0ODdiN2M2MmFlNzc0YTM4NTEzM2RiMDExNTZkMjcxN2I1NmRlMDU1IGxlZ2FjeS10cnVuaworMjU5NiAyZGUzNGI5NjAyZTBlZjY1ZTQ4ZDE0ZTM5ZWQ2MGYxNzU1Mjg0MDU2IGxlZ2FjeS10cnVuaworMjU5NyAxZTZjOGYyYWExMzZkYWEyNzU0NzYxMzkzZTBjOTIyM2QwZmZmYWU1IGxlZ2FjeS10cnVuaworMjU5OCA0MDJhNTlhZDI0OTNmMGI5N2YzMmM2ZmViMTg5YTU1ZWUxYTVhMzMyIGxlZ2FjeS10cnVuaworMjU5OSA2NGJjOGEyODRmYjNmY2ZkMzZhMThiY2QyZmU2YjUyNzBmNGRmMWYzIGxlZ2FjeS10cnVuaworMjYwMCBjMTJkMDMzZjY1OTRlNjY0OWZmYzI0YjgxZTA3ZTBiYTAxNjk5N2I5IGxlZ2FjeS10cnVuaworMjYwMSBlMmRiMzM0MWQ2ODYwZWU2NzZiNWJkODI2ODUwY2U2MjY0N2JkZWUzIGxlZ2FjeS10cnVuaworMjYwMiA2MDBiZmE5ZmI4Yjc2ZTVhOWE0NzUwMjFiZGZmMzcwM2E1MjQzOTNkIGxlZ2FjeS10cnVuaworMjYwMyAxN2Y0Y2RmMjg5NTlmNjBhMjQ0OTRlZjZmMWU0MTA1ZmI0OTgwOTBhIGxlZ2FjeS10cnVuaworMjYwNCA5Zjg1YmViMWY3Yzg0OWZlMDE2OTcyZDg4MGM4YTBiYTIzY2JmYzFjIGxlZ2FjeS10cnVuaworMjYwNSAxZjY0ZjU1YTUyZTg2NWFhN2FhOTY3YjkxOWZhNDBiYTc3NGU0MmM4IGxlZ2FjeS10cnVuaworMjYwNiBjMDY4M2Q2Njc2YzY2YmM1NGJhOTZlZmMwMTk3OTk4ZjhmMDM3ZGRjIGxlZ2FjeS10cnVuaworMjYwNyBjMzA3ZDEwYjY4MGM2YTM5OGNhMTU2ZjdjMGNkNDA2YzIyZTJlYTFmIGxlZ2FjeS10cnVuaworMjYwOCA4ZjYzODlkYmMxY2Y3YjRmYTcxODI3OTkwMzRhY2M4YzhmZjA4Yzg4IGxlZ2FjeS10cnVuaworMjYwOSAzMjZiODllYTY3MTM4YmFjNDUzMWM1OTgwNjIyZjg1ZTkyMmJmNzU0IGxlZ2FjeS10cnVuaworMjYxMCBhNGZlYTY5MTIwZDgxNDc3MzFiMjY5NDkyMTEwZTc2ZmE1MGYyMjM5IGxlZ2FjeS10cnVuaworMjYxMSAyMzQ5N2RiNjY4N2FhMWRhY2UxOTZkYzYxNjQyZDAzMWQ4N2FjOWQzIGxlZ2FjeS10cnVuaworMjYxMiBiMmRjZTAxYzM2NmU2YWU1NDU2MWE3YThlODY1MjZkNzE2NDY4NzNhIGxlZ2FjeS10cnVuaworMjYxMyBhZTFhNTU1ZTY1ZmFjNjQ2NTZiYzAyZWE1ZGRhYWNiYjM3MGUwNDZjIGxlZ2FjeS10cnVuaworMjYxNCAzNGFiY2ExODJmMThlMWI2MTY5ZWFlMDgyYzMxYTMyODFlODgxYTQ1IGxlZ2FjeS10cnVuaworMjYxNSBhNWYwYjgzOTBjODc5NjgxZGJiMjg0OTRjYmRlYjhjZTFmYmQ4Zjg4IGxlZ2FjeS10cnVuaworMjYxNiA0NjRkOWQ5M2YzNGU5MWEyMjhmZjY1ZGFmNDQwZDllYThjY2M3Mjg0IGxlZ2FjeS10cnVuaworMjYxNyA5MjcxOGU0ZjVhZGMxYjI4NGM3NjhlZGUyZWFjNzBiZDg0ZTJiNGUwIGxlZ2FjeS10cnVuaworMjYxOCBlODY2N2E3ZDMxOGRkZWUwODVkOGUyNGU4ZDcwNmU0NmE4YWJhMzMxIGxlZ2FjeS10cnVuaworMjYxOSAxZmQ0NzEyY2M2NmY3YjZhYzU5ODA0NWM4MDA1ZjA1OTE3ODY1NDQxIGxlZ2FjeS10cnVuaworMjYyMCAwNzM2YWVmYWZjNjAxOGMxNjRmZjgwZDhlM2MyODRiOGI5NTE2NTVlIGxlZ2FjeS10cnVuaworMjYyMSA3YTYwZmFhMzgxMTM1MWJhMGI0NmRhOTBlNmU5Mzk0NzE4NjZjYjJkIGxlZ2FjeS10cnVuaworMjYyMiA3NjljZmZmNGFlNWU5NTA0MWFjMzk2NDY2YzA1ZDExZGU2MzI1OWU2IGxlZ2FjeS10cnVuaworMjYyMyA2NzhhNzM0YzI0NGRjOTBjZDgzMTVlZTNiNzQyM2MwYmY0YmMzNDY4IGxlZ2FjeS10cnVuaworMjYyNCBjOTdmNGM2YmE2YzY1ZWNjNjNmMzM1YmY3MGFjZjQxMjYxNzJhZDI3IGxlZ2FjeS10cnVuaworMjYyNSA5MDMwMGNhMjEyMDA1OTIwNjZiYTc4ZTI3ZTk0MWIyYWM2NzMyYTNjIGxlZ2FjeS10cnVuaworMjYyNiBjYTAzOTFhODEyZjg2MzU4OTI5NTQ4Yzc1YWJhYzlmMjA3YjhlNTZmIGxlZ2FjeS10cnVuaworMjYyNyA5MGNiY2IwYjk3ZGM3ZDQ5ODQ0MzUyNGM1MjJiOTExOTNjZTk1MGQzIGxlZ2FjeS10cnVuaworMjYyOCAxY2I3OGI2MjViMDcyM2NiNDk1NTJkZDZhYzc4MDljZTVhNGJhNGZhIGxlZ2FjeS10cnVuaworMjYyOSAxMGUzZDI2MDQxMzEwOWE5YWJkMzdlYjQ1NzZlMGU1MmYyNTJkZDJjIGxlZ2FjeS10cnVuaworMjYzMCA0MjEzMGU3MjIwYWZmYjk0ZDBjMzNmOGZlNjc3ZDc4MmU4MDJjYmNjIGxlZ2FjeS10cnVuaworMjYzMSBhMTAyNWNiYmEzMGRhZDE3Zjk5NTc0MWFhOGQ1YjQ1Mjg4ZDljZGQ3IGxlZ2FjeS10cnVuaworMjYzMiAxYmUyMDg3NjkyYTI0NDQ2NDM0NzMxMzkyZTM0MGVhNjJiZmM4NjNkIGxlZ2FjeS10cnVuaworMjYzMyAxZDRiMDMzOWI4M2RhOGUzYmNhMDQ0ZWUyMjZkZjUyZGQ0MWM5ZjdhIGxlZ2FjeS10cnVuaworMjYzNCA0YTdmMGYwNmNkMjdjNGIyOWY3NjY2M2YwNjczODdiMmIzNjFmN2YwIGxlZ2FjeS10cnVuaworMjYzNSAxOTM2NTIwMWRjZmE4NWFlYWUzZDk0MDU5NjRlYmJkZjgyOTY4MGFhIGxlZ2FjeS10cnVuaworMjYzNiBlMmMzNDYzYzRkOTE4NDMwMzhmYTYwYWI3NzJiZjM3MGZmM2NiNDA0IGxlZ2FjeS10cnVuaworMjYzNyBiZWM5NjNmOTliYzlmNTkxYWQxYzJlMDllZTYyNDUyZWVhOWI5YWEwIGxlZ2FjeS10cnVuaworMjYzOCA0MzZjODEwMzA4NTMzODY3MzNmNmIyMWEzZGM0OTdiOWJmZDk0ZjJmIGxlZ2FjeS10cnVuaworMjYzOSBjM2JlZTVhNTcyMWY3ZWNkN2RhYmQ5NmQ4OGRmNTRmOGEwYzAyNTQ2IGxlZ2FjeS10cnVuaworMjY0MCAzMjQ5NmEwZDAxZjQ4OGE2NWU3NThlZWY0NWMzZTViMzAyZWRiMjUwIGxlZ2FjeS10cnVuaworMjY0MSBjNjRjNjcwMjU0OWQ2YmEyY2RiOTkwODk1ZjRmZmZjYzc1ZmZmNDAzIGxlZ2FjeS10cnVuaworMjY0MiBkYzA0NjM0NTNhNjQzNzFiYWEwMzgxYjUzYzJmYjM4YThkNjYxY2Y5IGxlZ2FjeS10cnVuaworMjY0MyBlZTg5OWE4MTU3MGQwNTA0Y2E4MGFhMWRkODJkZDM0MzVjZGVkNzA0IGxlZ2FjeS10cnVuaworMjY0NCBjZmJjNGNjZTFhNDI3NzYyOThmNmQ2MDJmNDU3NzkxZDgzOThmNWQ5IGxlZ2FjeS10cnVuaworMjY0NSBkYjgyMGRhM2NlMDNlZDY3MWY2YWNjMjQ5NDIwMjQ1OGMzNmY3NDBjIGxlZ2FjeS10cnVuaworMjY0NiAzYjM4NWJkYTM4Zjg5MTU4YTdmMGUwMmExOTQ5ZTU1ODFhOTQ5OTE1IGxlZ2FjeS10cnVuaworMjY0NyBjN2EyZjU2MTNkNjY0NjkxOTZiYTgwN2QzYjg0MjIxMTJjOTRlNDViIGxlZ2FjeS10cnVuaworMjY0OCA3N2I4MGE5MWQzNTdjMWQ5NWQ4ZTdjZDRjYmJlNzk5ZTVkZWI3NzdlIGxlZ2FjeS10cnVuaworMjY0OSA5MGYzNWZjZjhlYTAxZDcwODI5ZGI1NmViZGFjZDJhZDQzZjcxNDAwIGxlZ2FjeS10cnVuaworMjY1MCBhMGZiYzdiNmE0ODVmOThjOTA3MWQyODc3OTRmMWQyNGYxZTYzZGQ3IGxlZ2FjeS10cnVuaworMjY1MSAwMjNjN2Y2OWQyNDAwMmM4NjM5MzdiODQzZTc3YTQzZTZiNGYwMmQ3IGxlZ2FjeS10cnVuaworMjY1MiBiOTI2NTgwYzljMjg0MTg2MzE4MmEwOGMxNDc5MDgyOWQ4MTNkZDkxIGxlZ2FjeS10cnVuaworMjY1MyA5MmExMGExZTE0NjMwMDdjMDM1ODc3ODkxZDlhYWEyNjA1MjlkMzM3IGxlZ2FjeS10cnVuaworMjY1NCA1NzY2N2FiMWUxOTQxZDAxZWViYzRjNmViZTZkNzdhZTg4Y2UxM2RkIGxlZ2FjeS10cnVuaworMjY1NSA0YzIxMWU4Mjg2YjVjNjI4MmVhNDUyN2Q4NTVjYjJjNjI0NDI0OTliIGxlZ2FjeS10cnVuaworMjY1NiAwYWM5ZDVkYjQxYzhmZjFmZWJiNTEwYmQzNDNhMDUzYjRiMzQ3MTBmIGxlZ2FjeS10cnVuaworMjY1NyAwYWMzOTJiN2Y3NmVhYmVhZDg4NDE3MTdmZWQxMzUwYTUwM2NhYzQ2IGxlZ2FjeS10cnVuaworMjY1OCAyY2U2YTJhMzE4ODYzZGVlM2VkYmFmOTA2MzliYTMyYzY3NWRjNjZiIGxlZ2FjeS10cnVuaworMjY1OSA1NmJiMTA2N2E4ODA2ZWQyYzkxM2RlOTQ2ZDZmNWJkMWI5YTgxODI2IGxlZ2FjeS10cnVuaworMjY2MCA4MGUyZTVkNjdiNDk2NjY1MzA5ZjExNjVlYTE0Yzg3OTRkYWRkN2IzIGxlZ2FjeS10cnVuaworMjY2MSA3ZjNmYWFmZDgzZWQzNzI3NTI5ZDcxZGE4M2MwNDBkOTU2NTU3YzdjIGxlZ2FjeS10cnVuaworMjY2MiBkZGJjZDUzMmMxMTRkZjc1YmY3M2UzMDczZGVhNDE2NTg1NTJhM2MwIGxlZ2FjeS10cnVuaworMjY2MyA2N2Y2ZjcxOTQzYzE2MjI5ZGE3NWEzNjc2NjYzZDYwNjI3NzA2ODZjIGxlZ2FjeS10cnVuaworMjY2NCBlMTRkNDY0NDBlYTcxMzk5ZmZmMTZmN2MwNWQxYWI3OTRmOGFjZTYzIGxlZ2FjeS10cnVuaworMjY2NSBlYjAzOTc3YmFlZWI0Y2YzMjg3YWZjN2EyNzZhOGU5MjU1MmYwNGJlIGxlZ2FjeS10cnVuaworMjY2NiAwOTVkOWNmNGUzZTZlMjRiMTgwYjBjYzRmZmUxYzBjODY5MDg2MmZlIGxlZ2FjeS10cnVuaworMjY2NyA5ZjcxNjFkYjU2NjllOTFiNTY4Mzc0ZmQ2YmQwNDQ1ZmE2NTQ3MWI3IGxlZ2FjeS10cnVuaworMjY2OCBmYmZmMmU3Y2M0OWRmODg3YjQ5ZmQ4M2U0NTUxZjQzNzllOWRkZGEyIGxlZ2FjeS10cnVuaworMjY2OSA3OWVhMTNiN2RmMmMxNjI3NTBhNDI3YTBiNGVjNzNhZTIyNWViN2NlIGxlZ2FjeS10cnVuaworMjY3MCA1YjVmODZlZTRmNzliN2U1NTIxZDZlNjJkNzY4YjgwNzBhMzFhY2I1IGxlZ2FjeS10cnVuaworMjY3MSBjYmNkZmRhMDViYzRlMjJhZjU2ZGZkZjAxZWNhN2Q3YjhmMzZmM2E0IGxlZ2FjeS10cnVuaworMjY3MiA3NjZjYzgyMGY1MTFlMTAxOWFiN2EwOTlhNTRiZWZmN2FmOWYzMjA3IGxlZ2FjeS10cnVuaworMjY3MyA4NDE0ZTFmOWE1ZmU0Y2NiMzczZTI1ZDMxODNhZGViZjkyMDgxY2ExIGxlZ2FjeS10cnVuaworMjY3NCA5ODk2ZGNmMDhlMTZmYWUwOWU2MWI1NDUyMWNmYjJlNDg0NTdiOGZlIGxlZ2FjeS10cnVuaworMjY3NSBiNDZkNzZlYmQ5YTcyZTUwMzJmNDE1NzdiMjg2OGU0YjczZDAwNGMyIGxlZ2FjeS10cnVuaworMjY3NiBmOGQ1M2I2Y2Q0NDJlODAwZTIyOWVkMWZmNDU5MzBkOTczNzAwMTlmIGxlZ2FjeS10cnVuaworMjY3NyA2OWY4OTczOTkzOGY5YTYwOGZkYWU2ODA1NDU0YjQwM2NkMzRmZjhhIGxlZ2FjeS10cnVuaworMjY3OCA0M2MyMjMxNTliMjgyNzY5N2M4MDg5YWRlMWM2OGRmZTA1Y2FmYWY2IGxlZ2FjeS10cnVuaworMjY3OSBkZjAzNDNhYzhhMjFhYjE1OGZhNGIxMzk5NjUzN2VhYzA2MDI5MWRjIGxlZ2FjeS10cnVuaworMjY4MCAwNDhlMTM3MWM0NTA2YzFlM2UyMjYwYjk2MjM1YTU5NWQ4MGYwMDg0IGxlZ2FjeS10cnVuaworMjY4MSAwMmRlN2E4YWUyNjc2MWNmNWM2N2RjZDI5MjFjMGNlMmY2NmQ0YTIyIGxlZ2FjeS10cnVuaworMjY4MiAyZGNkYjAwMjNjMzIwZWU1MmVlNzMzN2M2OTkyMDcwYTU5Zjk1NWJjIGxlZ2FjeS10cnVuaworMjY4MyBiZTg5OGNjMTU4MDA2YTE4NDc4Mzk1MjQzYzM1YWViNTUzYjEwZDU0IGxlZ2FjeS10cnVuaworMjY4NCBkOWI2YjAzNjk4NjBjNDVjNGFlZWNjYzc2Yzg5MDZiMjliMTQyN2I2IGxlZ2FjeS10cnVuaworMjY4NSBiMzgyNWNlODNjODdmMjQyOWRmZjg0NWVjNzQzNWY0YTc2ZTg3ZDBhIGxlZ2FjeS10cnVuaworMjY4NiA3NDJkYzgzODAzOGJmY2FjYWQ3YjAzZmMwYTA2NWRiMzM2MjAyZGU1IGxlZ2FjeS10cnVuaworMjY4NyAyYjBhZDUyYWMzOTY4NmM4OTg0OTllMzBmOTllYTFmYTM1ODI5NjczIGxlZ2FjeS10cnVuaworMjY4OCA0MzU3YWI2OGM3ZDViNmU5YzBkNmExNmI3OGY1YmYzMTBkYTZhOGUxIGxlZ2FjeS10cnVuaworMjY4OSAzZDQ2NzEwOGIwMDgzYzRjNTZiZDVhNDc0N2JhZWE3MDMyMTI1YmU1IGxlZ2FjeS10cnVuaworMjY5MCAxZWZkYjE1MjIxZGRkMWU5NjM1NzBmYjcxZjI4MThiZTBjNGI2ODA5IGxlZ2FjeS10cnVuaworMjY5MSBkYzJlYzQ5YTJhZDI5YjZkOTYzMDEzZGU1MmExYTgzNWUwZmM3MWYzIGxlZ2FjeS10cnVuaworMjY5MiA4MzMxMDc2Y2ZlMTUyZGZjYjlkMTY2OWY5MjlkNDc5MWQ1YjkzNjM4IGxlZ2FjeS10cnVuaworMjY5MyBmZWUzNTA3OGVmNDBhM2Q1YjU0ZmUwOGIzMzQ5OTcyNTMzMGVlZjk4IGxlZ2FjeS10cnVuaworMjY5NCA4YjRhMjc0ZTU0NmRjY2E4Y2E4MGJjMTYxOTEyMTg0NmViNjA5ZWU4IGxlZ2FjeS10cnVuaworMjY5NSA5NmIyMTI4ZjAwYWVkYzI0YTI0NGE2ZWFlMjAxYWVlNDg4NzgyNDEyIGxlZ2FjeS10cnVuaworMjY5NiAyNjk2YjU2ZGRhYzQ5NTJmY2QzODAyZDFlMTgyNDMzZGVmMWE2MzVhIGxlZ2FjeS10cnVuaworMjY5NyAyNTU3MjhhODQxZGVmMWI1ZTkyOGUwZWQ2MWQ2NGNjYTQ4NjE3MzYzIGxlZ2FjeS10cnVuaworMjY5OCA5MDE5ODQ4ODI0YTEwZDZlMWUxOGVhOGJiNjc2ODUxMDgyY2I1OTYzIGxlZ2FjeS10cnVuaworMjY5OSA5ZDAyNDJiOTJjYTVmYjA3N2NlZGNjMDBmMTYxMGFlZGVmOWNjMDI1IGxlZ2FjeS10cnVuaworMjcwMCBlYTUxNDY4NjZiY2YxNzk3NDU0MjdlZDNmYTliOTliYjcwMGRmNmY0IGxlZ2FjeS10cnVuaworMjcwMSA0OGVhZjRmYzUzY2IwZDgwMTMyNjIxYTM4NjE1YzYxYWVhZjBlZWUxIGxlZ2FjeS10cnVuaworMjcwMiA1ZjU5MGFiNDUyOTU3NzZiM2M4NDdlYjI3NjRiZTQ3NjE5ZmQ2OTQ1IGxlZ2FjeS10cnVuaworMjcwMyBiNTg2MTg5Y2MxZjVlNjk5ZGIzNzdkNDBhNTBjNGQyZDc2OTQ0NTE0IGxlZ2FjeS10cnVuaworMjcwNCBkNWUxYzQ5OWYwMTM3ZGYyNDkxNzMxN2YxZWI2MTg4YzAzZGE3MzE4IGxlZ2FjeS10cnVuaworMjcwNSBkMGJhYTgzMDAwMDU2MjQyZWYyMjVkOGIxMDRmMTZhNjI2MjEyYWI1IGxlZ2FjeS10cnVuaworMjcwNiA5ZjA2YzY2ODlmMGQxMGE0MzcyNWE0NWI1NTAzMWM5NmFiYWFlYmM0IGxlZ2FjeS10cnVuaworMjcwNyA5MzdjYmMwYmU2ZWNlZGI1YzBiOTI3YmE1MDM4NGIwMGM5NWU1YTg0IGxlZ2FjeS10cnVuaworMjcwOCBlMTk4Y2M5OGE0ZmQwZTdlMmYzMzlhNDJlNzQ3ZWQyMDJkYzg3MWQ2IGxlZ2FjeS10cnVuaworMjcwOSA4MzA0NjY2NDE2MGU5OTA5MmQzMzI2NWQ4MWI2Yjg2MzhiZWJkNGEzIGxlZ2FjeS10cnVuaworMjcxMCA0ZWZmZjZjZWE5MGY2OTlkN2Y2NTEwYTI5ODhlMGI2YjA1ZWRkNjE5IGxlZ2FjeS10cnVuaworMjcxMSA3NjZjZWM1MGQ3NjZkM2Y3YjU1ZDUyNmZiZDI4MmVmZmU2ZDRlMjJiIGxlZ2FjeS10cnVuaworMjcxMiA1YTYxZjgyN2Y0N2MzYTM5YjRhZWFjNTM5MDE2MzkzMWFhOGQ0Zjg2IGxlZ2FjeS10cnVuaworMjcxMyBjMTU4YzgzNDc2NTQ2NWI3MzczNWMzNzRlYTI0ZWE0NmIzMWI0OTJmIGxlZ2FjeS10cnVuaworMjcxNCAyNjQzMDZiNjFiODNmZWZjZjAzNGNkNDExZWE3MzZkYmFkMTBlMDY5IGxlZ2FjeS10cnVuaworMjcxNSAyZTI4N2ExNTAzYjI1MjY0NmY0ZDgwY2Y5YjZjNzNjZDVkNmU5MDI0IGxlZ2FjeS10cnVuaworMjcxNiAwNzgwYjk1YTY2MGVjODIwOThmM2E4NTRlMjYyYmFjYThhYjU5MWU2IGxlZ2FjeS10cnVuaworMjcxNyBhZGZhMDgyZjUyMGE2MTY2ZjZkMzVmNzMwMWM1NzAxODgxNGE3NjAyIGxlZ2FjeS10cnVuaworMjcxOCAxZWY2M2FkZjRmYzViYTY4NTY0NzQzMTJlMzJlMGMxYzBlYWU2MmJhIGxlZ2FjeS10cnVuaworMjcxOSBjZmI1MzMyMmM5ZDExNDMyZGE1MmUzZmYxOTYxOTY1ZGI4NGJkNDNiIGxlZ2FjeS10cnVuaworMjcyMCA2ODNlZGIwYzQ0NjM0OTI5ODM5ZjYzYTVjZGMzODg3YjM1YjU5MDlhIGxlZ2FjeS10cnVuaworMjcyMSAwNjE0ZDg4N2QxMGFiZDAyYmUxNGQ4OTE1OWQ5YTRkM2UyOTc5NmJmIGxlZ2FjeS10cnVuaworMjcyMiA0NDM0MzkzYjRlZGU2NTY2ODY1OGI0NmE2YjVlNWUyMzRmODFmMzI0IGxlZ2FjeS10cnVuaworMjcyMyAxNzA2OGE2YTBhYTUxN2I2ZDAzYWVlNzk3NTY0YWU4YTU1NTBhZWUxIGxlZ2FjeS10cnVuaworMjcyNCA3M2UyNjZiZjdhYzZiMDNiOTcyYjNiMzA2YzY3Y2NmZmFlNDBmNWYzIGxlZ2FjeS10cnVuaworMjcyNSBmOWMwN2VlNzkzMDIyZjY1YzJiY2JjYjU3YzcyMTFkMzJhNjIwOGU1IGxlZ2FjeS10cnVuaworMjcyNiA1ZmFmOTNlYjkyNTZlMzM2MzQzY2EyZDJmNjliMjRlNDI1OGZkNGIyIGxlZ2FjeS10cnVuaworMjcyNyA1YTFmOWFkZTE1MTI0MzIwYTAzNDkyMGIzYzUxMTA3YWFjYTE4MTlkIGxlZ2FjeS10cnVuaworMjcyOCA4YzE3OWQwMjM1ODNjZDg2MWQ3MTFmZjMxMzY5NGYxZDFmNTc2OWI3IGxlZ2FjeS10cnVuaworMjcyOSA5MjUwOWQzMDRlNDc5YzYwYTdhYjQzNTVlZGY4ZWRlYTVjN2Q4YWRiIGxlZ2FjeS10cnVuaworMjczMCA2YzM2YzI3M2Q1N2Q0ZDllMDIyMWJkY2RiZWQyMjgzMjU0NWUwZmQwIGxlZ2FjeS10cnVuaworMjczMSAzNGE3NjEwNDZkYmQ2OWY2OWRkMzc1MWY1OWQxODFlYjExMDI2YTFjIGxlZ2FjeS10cnVuaworMjczMiBhNWMyNDU5MjNiMzEwZDU2OGEwYWZlZmEwZTRmNjZjMzExMjk1M2ZlIGxlZ2FjeS10cnVuaworMjczMyAwODZiZGJiNjk3M2JmMzViNWM0ZWY5ODNlMGFhZTA5NGQ4YzQ0YmE2IGxlZ2FjeS10cnVuaworMjczNCA0Y2I1NTM1NjcwNmYzYmZiM2UxNGVlNWZmMjI4Mjk1YTc2ZGZlNTYyIGxlZ2FjeS10cnVuaworMjczNSAwM2I5ZjE1MmFkYjY5NTMyNWM1OTMxMTFhMTE4MzM2NzgzYzdmMTg5IGxlZ2FjeS10cnVuaworMjczNiBkZWFlODBlMDdhODFjOThlMjViMmMxM2YyYzJhZmI2ODU2NWU4MTRmIGxlZ2FjeS10cnVuaworMjczNyAzYjhmNDFmOTZlYjRjOTUzMzM2NzQxMGFjZjMyY2Q0MGYwMjY5ZTFhIGxlZ2FjeS10cnVuaworMjczOCAyZGE5MzRlZjI3YzAzODEzYWJkMWFmZTA4MjkxY2Q4N2QxNGRhZjdhIGxlZ2FjeS10cnVuaworMjczOSAxMmVjZWE2ZTk1NWMxMmIxMzNmOTRlMzZmNDBhMjQyNTgzNWEwMGM0IGxlZ2FjeS10cnVuaworMjc0MCA2ODg0MzQ2YzA0YTA0OGIzMGYzYzUzMzY1YmNiN2M0ZDhhYzE3MzJmIGxlZ2FjeS10cnVuaworMjc0MSAzMTY5ZDM4ZjY3NzQyYjk4MTYwNjJjOWFkOTRiNjk1OWQ4YzhjZWViIGxlZ2FjeS10cnVuaworMjc0MiBiYWUxNDk0ZjJlYzgxMDIzMGNiNTc0NTJiMDYwMzQ4Y2JlZjQyMWE3IGxlZ2FjeS10cnVuaworMjc0MyA1ZjcxZjE2NjA3OWQ0MDFkZmNjZjViNGNiNTEzNzc2MjY2YjY4MmZjIGxlZ2FjeS10cnVuaworMjc0NCBjNzJmMjZhYzQ5MWJhOGQ4MjI4ZWI4ZjZmNTdiODE2ZDM1ZjdmMTllIGxlZ2FjeS10cnVuaworMjc0NSAzN2FhNjdmMDg2N2MxMGY0NjM3YzdlMDBmNDRjZWIzNGYyYWFhNGNjIGxlZ2FjeS10cnVuaworMjc0NiAzNzkwNWZlMTg5MmEyN2RkOGI3YzQzNWY0NDQ0NDdmNDNhMDJjNDM1IGxlZ2FjeS10cnVuaworMjc0NyBkYmY0MDg5MTgyMDE2MWViNWU0N2QwNWJkZTliZmY2MzZiZDA5NDBmIGxlZ2FjeS10cnVuaworMjc0OCBkMTU0N2Q2YmI1YjVjZjYxMWY4Zjc3MzI1ZTI5NDBjMjIyY2RiZGEwIGxlZ2FjeS10cnVuaworMjc0OSA3ZDI0ZGU2NDNmYjUwY2FhYjNkMjQwNTk5NTJlYWMyYjc2MzZlMWY1IGxlZ2FjeS10cnVuaworMjc1MCA2MDc3NzA0ZGFiN2EzZjc5YjcxNjRlNGQxODEyYjY1NGNkZGEzMWE4IGxlZ2FjeS10cnVuaworMjc1MSBmMTFmYWU4ZWUxZTQyOWQ4MzZiZjI3OTQ0MzdiYWMzMjFjNTExZTBhIGxlZ2FjeS10cnVuaworMjc1MiA5Mjc2YjNlZTM5MzY3YzYxZDIxYmQxNDJjZDk3YmRkMmZkYmI3M2Y5IGxlZ2FjeS10cnVuaworMjc1MyA5NTcyYTdkMDlkZmY0NjJlYmVhZDQ5YzEwNDIzMWEzYTRlZWMzMmQyIGxlZ2FjeS10cnVuaworMjc1NCAwODY4MTc2MzY1ZDdmYWMxOGQ5ZTZlNDQ3NzhiMzk0OGU3MDQ3NWQxIGxlZ2FjeS10cnVuaworMjc1NSA0N2M0MmVhNjdhOGJkODUzMTQ0ZDk5ZDBiYThjZTc2MWM1NjNlNjczIGxlZ2FjeS10cnVuaworMjc1NiBmOWNkZWViZmNiNjcwYzMwNjg4NTU4NzlmNDk3MDk4MjlkOWQ4NDcyIGxlZ2FjeS10cnVuaworMjc1NyBlMThmMWZhMzk4YTMwYjNlMjVjYWZlM2M2ODc5MDgwZTJiMWQ3ZjVhIGxlZ2FjeS10cnVuaworMjc1OCA4MDBjZjQwODZmYjMzZDgwY2IzYjY3NzE0OWJmMTViNmYwMzIyZTU5IGxlZ2FjeS10cnVuaworMjc1OSBiMjA0ZjMxZmJjOTdlNjBkZDE3NDM3YjI0ODBkOWU2OGVlMmE5NTE3IGxlZ2FjeS10cnVuaworMjc2MCBhMzQ3OTMzYTZkOTIyZjYwNWY1MDJlOGNkMmFmMjhlYjNmZDk1ZGUzIGxlZ2FjeS10cnVuaworMjc2MSBkNDliNmE2NzI1YmQ4N2Y1MjE5YTczZDFmMDcxNTUzNDFjNDRlN2EzIGxlZ2FjeS10cnVuaworMjc2MiA4Y2RkNjJiYjUxNWNiYWEwYzE3OGY3NjE4YTYyYzk2YWY2ZGVhYjgzIGxlZ2FjeS10cnVuaworMjc2MyA1YTM1MTk1Mzk4ZWY1M2ZiZGQ1N2Q2ZDZiYzg4NDFkOGQyZTQ2MDA5IGxlZ2FjeS10cnVuaworMjc2NCAzNGQ2N2RhODhlODRiODRiNmQ4ZWQ3NzM3MjIxMjE5ZGZiYjJkNGIwIGxlZ2FjeS10cnVuaworMjc2NSA4YTI0ZWY0NGRmYjBhOGI0MmI2NTE0NThmNTVlZDc1MDc5MGY2MWRkIGxlZ2FjeS10cnVuaworMjc2NiA2YjM2MDQxNTljYTliMTE4YzY3MTAyZTY1Mjg0YWQ1MTU0NjY0ZWM5IGxlZ2FjeS10cnVuaworMjc2NyBjNzYzZmM2NGZjYWJiZTI1Y2I0ZjMyYjA0Y2M1N2FmMDdiZDcwZWE0IGxlZ2FjeS10cnVuaworMjc2OCAwMjE0YmJmNDdiZjZkZWU0NmVkMTUzMDA3MGU0MzE5Mzg2MjMyYWVjIGxlZ2FjeS10cnVuaworMjc2OSA5Mjc2YzI2MjVkNjRjYmZkMjQyYTNiZjQ1YzFiZWVmYzIzMGJmZjE2IGxlZ2FjeS10cnVuaworMjc3MCAwYWQ1YjM1ZTNhZDg5Zjg2MzU3NjA0Njk2ZmJhZmFhM2E3MzVlNDJhIGxlZ2FjeS10cnVuaworMjc3MSBkY2M2ZGUxYzM3YTRmNTM1MjZlMDYyNTQ0Mjg1NzZhN2I5OGY0ZTI4IGxlZ2FjeS10cnVuaworMjc3MiBlMjVlMjY1NmM4NTM3YjExNWYzODI2MTQxNjg5NmU0NGE2ZmU2Mjc1IGxlZ2FjeS10cnVuaworMjc3MyBmODI1OGY4NDEwNDZlOGQ2NDkyMDI1YzM0YmZhNTI3OTMzOWYyZjYzIGxlZ2FjeS10cnVuaworMjc3NCA0MDVhMmZlYzc0NTQxZGU3MDMzYzRjMzFkYjQ2Mzg0N2Y5ZTBiNzNkIGxlZ2FjeS10cnVuaworMjc3NSAxMWU4NjI3MGVkMGRjZmU3YjQ3Y2EzZTlhNGIzODQzOWEwYmYzNGE1IGxlZ2FjeS10cnVuaworMjc3NiA0MGEwZWM5OTRjNTQ5ZWNjODkzYjNiNzJlODE1MTI0NWIyYjAzYzA2IGxlZ2FjeS10cnVuaworMjc3NyA4ZDU3MjU0OTRlZGU3MzE2MGIwNzVmMjUwMGZkNDdhMzE3YTJjMjk4IGxlZ2FjeS10cnVuaworMjc3OCA3NTViYjhlZmNjMmQ1MzM0OWM4ZTA5ZmFjMzcwMGUxN2I3YjVmMTFhIGxlZ2FjeS10cnVuaworMjc3OSAxODllZTNiZWViYjVlNmY2YTUxYzQ2YWFjNzk0MWYwODdhZjNkMzc5IGxlZ2FjeS10cnVuaworMjc4MCBhYzdkNjQ0NTNhYTlmMTVlYTk4ODg4YTUxYjhjZTM1YzFkZjdlZmU0IGxlZ2FjeS10cnVuaworMjc4MSBkMWY2ZWM3ODhhY2Y3YjVmYzQ3MTVhMDA3NmFhM2IzOWI2ODE3M2Y5IGxlZ2FjeS10cnVuaworMjc4MiBjZGVjM2U4ODA1M2IzZGY1NWY3NzUxMjk4NDI3NWQzMjZhY2IyNjJiIGxlZ2FjeS10cnVuaworMjc4MyBhMGQ0YzVlZjFkNWQ3ODk1ZmRjNWJkZjc0NjRlZDQzM2QyNDBlZjFkIGxlZ2FjeS10cnVuaworMjc4NCA5YmU2NThkMTkzYTk4OWY5MjMxMzAyNWNjY2ViN2QzNTZjM2Y5ZDVlIGxlZ2FjeS10cnVuaworMjc4NSAwZTQzNjIwMGJmMTI4ODRjZTFkZDU1YjQ4NDQ1NTQ1NWIxMGMxZGYzIGxlZ2FjeS10cnVuaworMjc4NiA3ZmI1ZGVmYzhmNmZhYWE1OTVlYzFiN2I4NGQ2YTkzNTFlMWI1YTY3IGxlZ2FjeS10cnVuaworMjc4NyAyMTJhZDE1OGE4MDYyZTJmNTM4ZGEzZDAyNTRiODExNDA3ZTcwY2ZmIGxlZ2FjeS10cnVuaworMjc4OCAxZDY1ZjI4YzBhYTk3Y2I4NTM5OTU2NzgwNjczMDQ3ZWU4MDM4MDU0IGxlZ2FjeS10cnVuaworMjc4OSBkNDIwYWY5YzFiNzU3YTJmODI2MDUyYWJmMTRlZDU2YmI0NjZlNzNkIGxlZ2FjeS10cnVuaworMjc5MCA0MmE2YjhlMTM5MWEwNzg1YmViYWI2NGYyZjgxY2NkMGMwOGExNTEwIGxlZ2FjeS10cnVuaworMjc5MSAwNGVkNDc2NWIxN2NlNTMwZGYxNGRkOTRlYzk0NWQ2ZGVlZDAzMzQzIGxlZ2FjeS10cnVuaworMjc5MiBmNWEyYmMzOWUxMGUyYTRkNGQ4ODczNzNiMWRlOTc0OGE1N2E0ZGRlIGxlZ2FjeS10cnVuaworMjc5MyAwYzE5MzhmMmUwYzAyZjg0YjVhZDYyYTFjZDU1Mzk1MzRiOTBjZDEyIGxlZ2FjeS10cnVuaworMjc5NCAxZjZjNTkzZWRhNjg3YjI5ZDUyMDMxZDdmZTE3Mzk2MTI1Zjc0MTBiIGxlZ2FjeS10cnVuaworMjc5NSA4ODU5OTZhMWE2MzE4ODBlZjYyOGJhY2FkY2RlMGJiOWY4M2UxOTA0IGxlZ2FjeS10cnVuaworMjc5NiA3ODRhMDlhNTIzNzVjNGU1NTJlOGUzZjgzZWRjOTczZGM3NjU5MmZmIGxlZ2FjeS10cnVuaworMjc5NyBkNWJiOGZlNDNkZjJmM2JmYjMzZTc5OGRjYmY4OTU4OGRjYjQyOWNmIGxlZ2FjeS10cnVuaworMjc5OCAzY2I2ODZjNDhjZGRkZjgxYmU0MzQyYmJkZmFjZTcxNGVmZDY4Zjg0IGxlZ2FjeS10cnVuaworMjc5OSA5ZDAxZTk4ZWQ4NDkzZTA3NjZiNWU1ZmYxMjU5ODA0ZjcxODliZDU0IGxlZ2FjeS10cnVuaworMjgwMCAyZjk1YTAxZDZjMWYzYzY0NTZkZmQyYWQ0Nzg3M2ZjNjA0ZjhhNmFjIGxlZ2FjeS10cnVuaworMjgwMSAwYjM4MDAwZmM4MjNkZjc4MGY3ZGQ4NmQzY2Y2MTIyMjgyOTk3ZmRiIGxlZ2FjeS10cnVuaworMjgwMiBiMTYyYjI3NDAwYmM1MDJkZDBlY2M3NDNkYWEwZmU1Mzg2ODQ5ZmU2IGxlZ2FjeS10cnVuaworMjgwMyAwZWZiOGRkZjZjMGVkNzhiY2EwM2YzNTY1YWMyYjFkNDI4ZTY1MmNjIGxlZ2FjeS10cnVuaworMjgwNCAwMmQzZjE2MWI3ZjU1NzAyYWRmYTQ5NWEwMDFjZDFhNzNiZjU2YjFkIGxlZ2FjeS10cnVuaworMjgwNSA1OWY5MzI1YmI4ZWNjM2U1ZGI0MGIwZDY1MDNjYzc5MTc0NjM4YTBiIGxlZ2FjeS10cnVuaworMjgwNiBjMGU3YjBiOWI3NTA3ZDQzMmYxZTA1ZjVhZDFlN2E4NzVhMmU0ZDVkIGxlZ2FjeS10cnVuaworMjgwNyBjODMyYTJiMGQ0MzMwYmQ4MzE1MjFmZmRmYWNhYTgzZjg3OTRlMzRiIGxlZ2FjeS10cnVuaworMjgwOCA4YmJhMTRmN2RiOGExZGNmZTk3MzA4YjJjYzUwMzA0MzMwZWY4OWNmIGxlZ2FjeS10cnVuaworMjgwOSBmNmNjN2FhMzFkZTY5ZTlhN2M2MjFhYmFlYTdlYzA1ZWYwNmNhNjE1IGxlZ2FjeS10cnVuaworMjgxMCBkYTViMTQzMzQ2N2MxY2E1ZjU5NGVkMjc5Y2Y5MmQ2MTI1OTQ1Y2U0IGxlZ2FjeS10cnVuaworMjgxMSA0ODlmZWNjMWRhMjg2YWFjMmY3ODNhYjMzNTRhNTg2ODZmZjY2NjJjIGxlZ2FjeS10cnVuaworMjgxMiA3M2ZlN2ExYTVkZDQyZTM2NjI0YjExMzVmNzZiODJiOGUwYjA3OWViIGxlZ2FjeS10cnVuaworMjgxMyAwNDU3YzQ0MWIwODYwNzc5YTcxOWUwNWVhNTI5NTY4YTc0MjlmZGI4IGxlZ2FjeS10cnVuaworMjgxNCA3NDk0MmVjNzA0MzBhZThmYjU0ZmQ0ZmExYWU3Mjk1NDBjODMwYTIxIGxlZ2FjeS10cnVuaworMjgxNSAyZTBkNjg4MjAxM2VmZmRlNjQyMmRkYWVlMDJkNzQ5ZThlZTNkOGFlIGxlZ2FjeS10cnVuaworMjgxNiBlNzI5M2I1YjU3MGQ5ZDYxOTFiMTBhZTQ4MGVmOWE0Mjc1NGZlYWM1IGxlZ2FjeS10cnVuaworMjgxNyBmNmY5ODJjYjU0MDEzMjJiNGM2ODY4MWNjYTA1Y2Q1OGE0Yzk4OTUxIGxlZ2FjeS10cnVuaworMjgxOCAzZTYyNmM0MTNiYmY0ODhmYzI4OGZmYWMxNmYwOTFlZWE5ZTc0Yjk4IGxlZ2FjeS10cnVuaworMjgxOSA1YjUyMWZlNGQxZjY0OTZiMGQzMmYwYzFlMDM4OTM3Zjc0YmQ1ZDQ2IGxlZ2FjeS10cnVuaworMjgyMCA2ZDE1OTliZTJiNTRlMGU0MDA2MmFlYjA4Y2UzMWVmNzNhNjU0YTBlIGxlZ2FjeS10cnVuaworMjgyMSBkMzc3MGIxZGE2MTE1Mjk1N2I0ZWMyNjZjMTNkMjhkNjMzMWIzNmU4IGxlZ2FjeS10cnVuaworMjgyMiA3ZTVmNGQ5YWVlNzdiYzZkYmFmYWZiOWE5OTNiYTJjMThjMjQzNGJmIGxlZ2FjeS10cnVuaworMjgyMyBhYWZmNjUwZDdlMTM2NjBhYjFmZDZiZDM0YjNjYzAyOGU3ZDM0OGI1IGxlZ2FjeS10cnVuaworMjgyNCA1ZWQ2YWRiYjk1ZjM1OTAzMmRkYWQ2M2Y1MThkYjM4ZDZkNjIyNDcyIGxlZ2FjeS10cnVuaworMjgyNSBlM2I2M2E5OTE0Zjg3MDI5YzM0NjM5Y2Q4ZDJhYWJiY2M5MjY1MzU5IGxlZ2FjeS10cnVuaworMjgyNiAxODkwNzgxMzYzNTE1NzFhZmEyZDQ4NmZkOWQyOGJlNGQyMTAzZjczIGxlZ2FjeS10cnVuaworMjgyNyAyODM5MDM3NWEyYjlhZTY2NTAxN2YyMGY4NjQ2YWFlZTZiM2VhZTgzIGxlZ2FjeS10cnVuaworMjgyOCAxNjRiNTZmYTY1NThlYWFhMmYyMTZlZTNjNDI0YTc5ZWQxOWUyZWFhIGxlZ2FjeS10cnVuaworMjgyOSAxMDQ5ODY3ZGNhMWY5NDgzY2E3NTg4OTVlZjQ5MzhhYWU4MjdiMGQ0IGxlZ2FjeS10cnVuaworMjgzMCBjMmJhODg3ZDk0OTJiMWIzYzQ1YTJlMzg2OTc2OTMyYzc4YjI4ZDI2IGxlZ2FjeS10cnVuaworMjgzMSAyY2RkYmJlYTliZmIzMjNjNTcyNDhkZGEyZDVhY2IxOTdmNGEyZjcyIGxlZ2FjeS10cnVuaworMjgzMiAxMDAwMmUxYmM1MjY0MmQ4OGUzMGZkMWU0NDI0NTBmZDAyNzI4ZWFjIGxlZ2FjeS10cnVuaworMjgzMyBmZmRkZTdmYzcxYzFlY2I4MmQ0ZTRiZTYxNTUxNzZkN2RjOTA5NzU5IGxlZ2FjeS10cnVuaworMjgzNCA3MWQ0OTYyNTlhZDM0OGU2ZGUxYzM3M2JmNDU4MDlmYzA1ZTEwMzE0IGxlZ2FjeS10cnVuaworMjgzNSA0ZTJkMjM5ZGM2NGM4ZjEyYWVlOWYyODhlMWM3ZjFlM2E0YmU2ZWVkIGxlZ2FjeS10cnVuaworMjgzNiA1YWZmOWY4ZmQyOTk1ZWZiMmMwZTVmMWI1Mzc1MmU4N2RhZjYyNmM2IGxlZ2FjeS10cnVuaworMjgzNyBlMzRlYmNiYmRjYTZmZmE0YjliMDg0MWMyNTY2MjQ0ZWRlYTQwYWNmIGxlZ2FjeS10cnVuaworMjgzOCA2NDQxYWE2YTQxMjY0OTg0ZmE3ZGIxNDRmNzA0OWM0ZmIxNzQzYzViIGxlZ2FjeS10cnVuaworMjgzOSAyMDViOTQ3YjFkM2MyNmM3NjA0NzU2YzgwOTEzN2I1MTE1MGUyMjYyIGxlZ2FjeS10cnVuaworMjg0MCA2YTYwMzQyYzMxMDc0ODM2YTQ1ZGNjYzgyNDFjZTc1OTk1MDUwNDJlIGxlZ2FjeS10cnVuaworMjg0MSAxMDJkZTMxOTk5OGUxN2UwZDFlYTkxZWZlNTc5NDBmMTUxMmNiZTQzIGxlZ2FjeS10cnVuaworMjg0MiAxMzg2YTcyYWU2MDQ3ZDk3NjA1MjFmMDJkYjk0Nzk3MjVhMjczYzY3IGxlZ2FjeS10cnVuaworMjg0MyA3NTQ0ZWJhYzU2OTg3ODE2ZGJlNjFiNmM0ZTUyN2JiNTM0MGM1Mzg2IGxlZ2FjeS10cnVuaworMjg0NCAzYjA5YjQwY2VmMWQwOWZhYzE2NWY1NTU1YmQ1YzhkZDU1ZGE2NWU5IGxlZ2FjeS10cnVuaworMjg0NSA5MTI2ZjRjYjFjY2E0NzA1YzdjZGUyZWY1NDRkMmI2NWNhNzE0YmYwIGxlZ2FjeS10cnVuaworMjg0NiBjYTI4YTNhODJiYmE4NDgxZTI0ODc4ZTcxNDEzYmEzN2UwYTQ1NDdmIGxlZ2FjeS10cnVuaworMjg0NyBkMjQ0ZWUwM2M1NzZlNzI0ZmE1ZTdkMDQ5YWMzYTI1M2E1NGM0NGFiIGxlZ2FjeS10cnVuaworMjg0OCBlMTViZWE5NzFhNWJkNTM3OWU4YmI1MzMwNjBiMWY1ODY1ZWEzYjlhIGxlZ2FjeS10cnVuaworMjg0OSA1YjcxODYzYzgwMWQyOTZmNTIzMjI0NzVjMTY2NGU4Y2FjMzZjNDIyIGxlZ2FjeS10cnVuaworMjg1MCA5MGVhNTA3ODYwOTUwYTMzZGQ4NmJiMjYzMmM4NTMzMzViMTIxMTEwIGxlZ2FjeS10cnVuaworMjg1MSA4OTFmOTgzNTdjMDQzNTVhZDJiMmQ0ZTlmZGMzNjEyNDlmMzJmZjUxIGxlZ2FjeS10cnVuaworMjg1MiBkNmZhNjRjZWM0MTBlNjBjMGE4NjYyNzM2MDQwY2EwOTYwYzBlNjdkIGxlZ2FjeS10cnVuaworMjg1MyAyZGJkN2U4NDRiZDA4MjdhNGRiMjAyOGIxMDg5YTJmOWRjNGFiZjdkIGxlZ2FjeS10cnVuaworMjg1NCBiNDliYWFkOWI2NDA2Yzc3NzQ5ZDQxNzg5NjRlZGFiOTQwNTVhNTUwIGxlZ2FjeS10cnVuaworMjg1NSA1YzE4ZDZjNTc4Mjc0MmYyOWZiMTdhNGFjN2Y2NTM2NjhmZDAyOThiIGxlZ2FjeS10cnVuaworMjg1NiA4N2FiOWM4MWU5MjdlZGQ2NmQ4YjhjOTJlYTFhY2M4YzQyYzIxNzQ0IGxlZ2FjeS10cnVuaworMjg1NyBmMzdmOGJjOTE5MGM1NmEwZjVjNDIxOWJhNTRhNGM4NTcxMDIxOGVkIGxlZ2FjeS10cnVuaworMjg1OCA3YzA2YmYxNWZkMmFiZGUxMDk0MTFkOGNhMzE4M2E1ZWM5MmM5MzJiIGxlZ2FjeS10cnVuaworMjg1OSA4YTYwNjQ5ZTc5ODdlNTFhNzU2OGYxZDlmMjI0NTYwZDdmMGRiODk2IGxlZ2FjeS10cnVuaworMjg2MCA4MmMxMjU5YTRlZjMzMDJhMDczMTIzNmJiOWYxNTJhMTE5MTdjZGNhIGxlZ2FjeS10cnVuaworMjg2MSAxNDExOWIxOTQ4ZmI0MTNiNWQ2Mjg3MzNkNWNkNGIwNDgwN2NhYzEwIGxlZ2FjeS10cnVuaworMjg2MiAwOWNlMDRlZjcyM2JlNzFkZTVlZmIxODRmYjAzODZkNWU4OTE2YjkwIGxlZ2FjeS10cnVuaworMjg2MyBmNTNkY2I5YTA0ZDYzODI1MTdmYTAzNDRlY2IzOTYzNGUwOGE3NTBkIGxlZ2FjeS10cnVuaworMjg2NCA4ZmZhZTBiNDZmZDQ5MjdiOGYxNjlkNmE3N2Y1Y2Q2YjAxYjYxY2EzIGxlZ2FjeS10cnVuaworMjg2NSBhODAyMmIyYTc3ZTYwOTZhMWI1ODVhZTFkZjRhNDI2M2VjYWFjMjZkIGxlZ2FjeS10cnVuaworMjg2NiAxZThlM2FiNjdiNDU4NWU0ODVlMjNmYWQ1ZTM2YmEyMGZhZTBjYWIxIGxlZ2FjeS10cnVuaworMjg2NyA3NTgyZWQxMzY4NGU0OTc4MDY3M2IzYzBjMTE0MjMzNDdiN2IxMjIzIGxlZ2FjeS10cnVuaworMjg2OCBiZmRkNmU2MjZkZDM3MGFlNDJmMmVjOTdjMmFmMzhiOTFhN2Y2YWJjIGxlZ2FjeS10cnVuaworMjg2OSA4YmNiNTBmNDM2ZmFkZWU2ODgxYTJiZTVlNDJhMmVlNjQwY2M1ZmYyIGxlZ2FjeS10cnVuaworMjg3MCA3MjM2ZTAyYzQ1NjMxMjY3NGVmYTdjNzZhYzA5Zjc3Y2IwNzQ5Yzc0IGxlZ2FjeS10cnVuaworMjg3MSBiYzVjNzdmYTgwMDY4N2NmZTc0MGZmYzkxNDcxMGI2NDU5ZmRmMzBiIGxlZ2FjeS10cnVuaworMjg3MiAzZDljMjMxMGFmZTg1YmM3NTBhZTU2YWQ0NWIyZTVlYzFhNWNjNWRhIGxlZ2FjeS10cnVuaworMjg3MyAwMGNkYjhkZWRkNmYyYTU0NjAwNWVkZWNlZmY4ZjUyZmU4NmMyMTA1IGxlZ2FjeS10cnVuaworMjg3NCA4NjI0NTdlMDIzN2NhNThmNTg4MzU3MWRiNzUxNmQzNDBlMDkxOTBmIGxlZ2FjeS10cnVuaworMjg3NSAyNDAzZmI2ZWFlYzYyMWMzNThlMmE1Y2U1NTAyNGZiNDc2NzYzMDk0IGxlZ2FjeS10cnVuaworMjg3NiA5M2UyMTVkYzFkNmVmMWUyYzdlMjE2YmEyZTA3ZGI2MzFjODk2NTI2IGxlZ2FjeS10cnVuaworMjg3NyA0ZDY0YWJiZGY3MGE5NjkxMjYxNmUzYTRiNzM0YTg2YTJlNzA3MDk4IGxlZ2FjeS10cnVuaworMjg3OCA5ZTkxNDVhYmM0MmFjNDU0ZTU4OGU3NGIwMzY4Yjg2MDllMTY3NzM2IGxlZ2FjeS10cnVuaworMjg3OSA0ZDJhMTk5ZTEyMDJhNmI3Mzc4OGUwOWE1YWNkMWIxZWJlMDY1NTg2IGxlZ2FjeS10cnVuaworMjg4MCBjY2UwNWE0NzZlMDQxMmVlMGMzMjI4ZjU2YWFhNjRkNDA1OWJlM2E5IGxlZ2FjeS10cnVuaworMjg4MSBmNzI3OGEwNjdmYjQzMDM2NWIwMTIzMjE3ZTJiNTZkYjZiZjM1ZWQxIGxlZ2FjeS10cnVuaworMjg4MiBkOGIxN2ZhYjNhOTgzZjEyN2U3NjdiOTAxNmQwOGM4ZGU0ZmEyODAwIGxlZ2FjeS10cnVuaworMjg4MyA1N2U5NGViYTI0ODQ4Y2I4MDU3YzEwZWM3YjVmN2VhZGM5YzIzOTk0IGxlZ2FjeS10cnVuaworMjg4NCBlNzU3MWExOGJkZWYxZDAyMTQ1NWVkMWQyZGRjOTQ5YWNhNTIzYWY1IGxlZ2FjeS10cnVuaworMjg4NSA0NzZiYjdlNWI4NTQ3NTY5YjE4ZTdkMWIwMDhkMDk4OGIzMmZkNTVmIGxlZ2FjeS10cnVuaworMjg4NiA3NmU0ODcwMTIwNGJmMjM3Yzk5MTk1OWE3NmY0ZTI1Njg2MGIxZWNkIGxlZ2FjeS10cnVuaworMjg4NyBlOGM2ZmE5MTE4ZWJlOWVmZjZiOTg2Njg2MzE0NTk1OWI4YWE5ZGEzIGxlZ2FjeS10cnVuaworMjg4OCA5YTc1NDQ4NmVmMGI1MTIxYjI2YTI1ODQ0ZGZmNDczY2Y3MDAwNDljIGxlZ2FjeS10cnVuaworMjg4OSA3NmQ5MmViYjRkODJhNzVjNTA2M2RkZjU4YzYwMGE1MjFkMGZjZGY5IGxlZ2FjeS10cnVuaworMjg5MCA4MmRkMDgxZjM4MGQ1NGE3NDk0OGViMThjOTBjMTViZTIwNTRkZDQyIGxlZ2FjeS10cnVuaworMjg5MSBjODE5NTJkOTdlYmU4YWQ4NzY3MmNlY2JiMzk1OWRkY2E3ZmFlNmE4IGxlZ2FjeS10cnVuaworMjg5MiBjNjVmYzE3MmYxNmRiYmE2ZmRlYTljZDliMWJiOGRkYzNjNWZlNWMzIGxlZ2FjeS10cnVuaworMjg5MyAwMzM4YzdjOWYwOGM5OWFiZWU5YzhiYjI3NGRiMzkyZjJiOGUyMWJhIGxlZ2FjeS10cnVuaworMjg5NCBmMTc5ZDhkNWVlOGM4NTNkY2NmOTZjOWQwNjEwOTQ3MjY1MzczMGJjIGxlZ2FjeS10cnVuaworMjg5NSBjZjVjYWJmYjNmNzFmNmI3NzliMTRjYTg3Njg2ZmNkMGM5MDdhYmNjIGxlZ2FjeS10cnVuaworMjg5NiAxZTIwNWQwODc1ZjYyZGY1OTJhNTMzOWQyMjJkYTAxMTk5NGM5MjhmIGxlZ2FjeS10cnVuaworMjg5NyBlYTBiYWQ5ZmRmNjczNGU5MDk0M2M5NTI0NjIxNTdmOWE3MTMyNGZmIGxlZ2FjeS10cnVuaworMjg5OCA4MjQ2NTc2ZWYzZjUzNTk2OTU3ODEyNDgyMmIyNzk1NTI4ZjU1OGE0IGxlZ2FjeS10cnVuaworMjg5OSA1NWM2MGU3ZjMxZWRhMjczYmQ2MjA3YmY1YTJhMjMxMDM5Zjk5OGRlIHVubGFiZWxlZC0xLjUuNAorMjkwMCAwNzhmOTAxNWYxNzg5MjhjNmQyMjM0OTEyYjk5ZWMwMTY4M2IwNTQ5IGxlZ2FjeS10cnVuaworMjkwMSBhYjFiMzQ4NmIyMjYzOGY1NGFmNmM5YjBhZjI2NjQwN2M3OTE1ZmQwIGxlZ2FjeS10cnVuaworMjkwMiBkNzc4MjQ1NDNiY2U5NmE5ZjAwNjQ5MmJkN2U4OGM4ZjUyM2Y0MGUwIGxlZ2FjeS10cnVuaworMjkwMyBkYzYwOTUzZjYwNTI5OTA3YjgwZjBmYzhkOWFkYzBmMzM2NjIwYTdlIGxlZ2FjeS10cnVuaworMjkwNCBmNzEwMTEwY2ZkMzkyYTU2YmEzYmU5YWZkOTJhY2IxOTYxZjMyYjIyIGxlZ2FjeS10cnVuaworMjkwNSBkYmNiNDlkNzQyYTBjZmYyYWMzMzgxMGI5NDc3ZWM3YzEyYjM1NDQzIGxlZ2FjeS10cnVuaworMjkwNiA4MzRkZDRhNzdlZTIwZjk5OThiNTZmZTIxZDhhOWQ4OTYyZmM4NjAxIGxlZ2FjeS10cnVuaworMjkwNyBjN2IyM2NjOGNkZWRhZmY0ODcwZGRmNTNmMzhiYmE4ZTQ3ZDU5YjM4IGxlZ2FjeS10cnVuaworMjkwOCA2YzBmMTYwMDhiZDlkNDBmY2FjOGI1MTg5ZTFlZjgxNThlMTk5MjE4IGxlZ2FjeS10cnVuaworMjkwOSA0NWM4MTg5Mzk0ZmYwZTNlOWQ5NjIwMzMyYThjYTE4MzI1NDI2MGU2IGxlZ2FjeS10cnVuaworMjkxMCA3MGMyZjQwNDMwYzc2OTVlZjkyZDhjYzMxNWYzMzNiOWNiYzE5MzRlIGxlZ2FjeS10cnVuaworMjkxMSAzMjA4NWVkZDc3YTdkODk0ZjI4MzU3MGFiZTM1MmUxMDAxMWEyZTdlIGxlZ2FjeS10cnVuaworMjkxMiBmZjNkYjk1NWU2MjhmMzQxNjQ3NWY3NmQ0MmFkOWJlNDUwOGVmZDdiIHVubGFiZWxlZC0xLjUuMgorMjkxMyBhNWU2ODgxY2ViZjA5YzgxNmI4MDU5NjMwYjc4ZWM1NTExMTM5MmU3IGxlZ2FjeS10cnVuaworMjkxNCAwZDQ5NGJjMjQyMDdmNzdhNTZlZjc0NWNhODQ4NjFiZTkxN2E2MzJmIGxlZ2FjeS10cnVuaworMjkxNSA4YmQyMTk0YWQ2ZjlhOWI1M2U4ODI0MDlhMGZjYWI5ODZjNTYyOTg3IGxlZ2FjeS10cnVuaworMjkxNiA4ZjdiMzFhOGE2Nzg1Yzg0NjY3MDlmNWQzZjMzZmE4Y2FkYjU2MGM1IGxlZ2FjeS10cnVuaworMjkxNyA2ZmJiMDNkYzQzOWVlMjY5YjI0N2FkZGZiZTNhYTBlNTQ4M2YwNmFmIGxlZ2FjeS10cnVuaworMjkxOCAyZGQ1ZGJmMjhhMmRkNTVkNGFlNzJjYTVjMTg0YTJhMTEzZDM2NGQyIGxlZ2FjeS10cnVuaworMjkxOSA1ZDJmNjJhZDhkZWVjMTIyM2RmYWJkMGM1NGU1NWFjYzZmYmYwMGJkIGxlZ2FjeS10cnVuaworMjkyMCA5ZGUzZDAyYWE3NWQxOWFiOTI4ODc5MjQ5MGJlNDU2ZGM3NGZjMmM0IGxlZ2FjeS10cnVuaworMjkyMSBiZmM2NTUwNzQ1MjNkMGFiZjQwODI5OTVjNzE1NDI3ZmEzYTIxMmRjIGxlZ2FjeS10cnVuaworMjkyMiA0MWRkMzkzNDg3ZjU5MWE0NGNhYWVkM2NjZDY5Y2ZhNzY0Y2ExZTNlIGxlZ2FjeS10cnVuaworMjkyMyA5YjY3MWYzOTdhOGYyNzAzNzA5OGNhMzY2MTQ4ZTRkNDJkZGQwYjgwIGxlZ2FjeS10cnVuaworMjkyNCAxZGZiMGM5ZDA1NzY3ZDBjZGI4MDM3YTZhN2MxNWEzODY1OTIzNmFkIGxlZ2FjeS10cnVuaworMjkyNSA1N2MzZTljZmVlNDBmZjg1OTlkMDFkNTFlZjYzYmM4MDExOGU3Y2JiIGxlZ2FjeS10cnVuaworMjkyNiAwN2Q1ZDYyYTRhMmIyMDE2NjBlMzAwYmQzYzZjNmQ1NTU5NDg0OGM5IGxlZ2FjeS10cnVuaworMjkyNyA3ZDg0ZTBkZGYzYmUyZGM4NjQ0NDRhODYxZDY1N2U4NjA5ZjhjZTgwIGxlZ2FjeS10cnVuaworMjkyOCAzODkwZjQ2ZDZlM2I3MTE0OWE2MDdlNmUzNzliOTNkNDY1MzQzNTA3IGxlZ2FjeS10cnVuaworMjkyOSAwNTM3NmM5MjZmNTgwZDk5YjFkODlkNzc3MWNlYWU3MTNkMDgwNGQzIGxlZ2FjeS10cnVuaworMjkzMCA3YTBkMDNlOGJkMjliYWU2ZDk4NGMzNjFjYzE1ZDA0ZTY3ZDBjM2Y2IGxlZ2FjeS10cnVuaworMjkzMSA2NzYwMzFiZjQ0ZWUxYWQ1MzlhNWQxZWNkMDYzYmUyZGVlMWI4YmJhIGxlZ2FjeS10cnVuaworMjkzMiBmODQyMWRhNGVmYTc2YjdkNWQ1OWQ4N2IyYjQ5MDE0NmI3MjM4MTE3IGxlZ2FjeS10cnVuaworMjkzMyA3NDQ2OTZiYTg5MjdhZTdiY2FmODVlNjVjZTdiOTI1YjQwMzViMTFkIGxlZ2FjeS10cnVuaworMjkzNCAyZTgyZGQwZjhhOWUzN2RhYzcwYWMwNjYwYjBiZTQ1YThiOTg2NDM2IGxlZ2FjeS10cnVuaworMjkzNSBkOTQ1Y2YzM2E2NGY0NjhhYTdiZWJkMmZkYzk1ZjU5YmVjNTQ1YTRlIGxlZ2FjeS10cnVuaworMjkzNiBjNzIxYWZhYjBlZmE2MWU1YThlMjIzMzZkZDc0ZTBiODdiZjE3Mzg4IGxlZ2FjeS10cnVuaworMjkzNyA3YzhhYmNlMTk3OTg0YTlhNjIyNWE5NzI4NjI5YzhkNTYwMTA5NGY2IGxlZ2FjeS10cnVuaworMjkzOCA0NWIzYTc4ZjI1NmJhZTZiNDk4ZjdjMWQ2Mjk3NGRhMjEyMjViZjcxIGxlZ2FjeS10cnVuaworMjkzOSA3MjU5ZTk2YTA0YTlkNDUxNDBmMGQ2NmM2MmNlNzZjMDlkMjI1YTA3IGxlZ2FjeS10cnVuaworMjk0MCBjMGQ0Y2FhNzFiZGFiMTJmYjBhMzMzYWYxNDBjMTVkZjllNWY4NzBlIGxlZ2FjeS10cnVuaworMjk0MSA2MTYzMDIwYTk2N2RiYzNmN2I5NWEyZDk4ZWUyNjU1ZjE1ODU2ZWQ5IGxlZ2FjeS10cnVuaworMjk0MiBiMzdhYzkxZTJhMGRhNGI4MDhiZjJiNTQxOGMyNzQwNzM0YWJkMjFkIGxlZ2FjeS10cnVuaworMjk0MyAzMGE2NTIxMDE1OTlmZjFlNzg2YTkwYjFiMTAxNjVmYTU0ZDkzYThhIGxlZ2FjeS10cnVuaworMjk0NCA2ODU4NDMxNGExNTQ3ZmRlOGE2NzBiNjBkYWRhYjBjMGMxYWRiYzEyIGxlZ2FjeS10cnVuaworMjk0NSAwMTJlMzdmMDUwMTkwZjE5MTE2NWY1YTk4OWJhNjEyNjI3MDBhMzFhIGxlZ2FjeS10cnVuaworMjk0NiAzZTFmYmU4NGNmOWZjNmEyNjMwYWEyYTA3ZDE5M2RlZjQxMjA0YTNiIGxlZ2FjeS10cnVuaworMjk0NyBmYmQ2OGU2OTIxNGMyN2UwNTk1MzgxM2ZhMDE4NDU0ZjhmZmNmODEzIGxlZ2FjeS10cnVuaworMjk0OCBjZDgxZTU2ODA0YjA5NDJiMWE5ZDQ1MDYwYzNmN2MxMWUxYjExYWVlIGxlZ2FjeS10cnVuaworMjk0OSA2M2QzNGU4NzdhNjk3MDhmM2RlYmRlMWU0NjQ1MjY4OTNkOThhYjA5IGxlZ2FjeS10cnVuaworMjk1MCA0NDMxOWRmNmE5MWMyOTY3NzIzZmVlNTA2MDAyMTI0MTVmN2E4NWFmIGxlZ2FjeS10cnVuaworMjk1MSBiYTRlYzEzYzBmOWY5ODJlZjliNWU1NDJkMzVhNjNhNTU1MTY5NWQ1IGxlZ2FjeS10cnVuaworMjk1MiBmNTY1Y2Y3ZjlhYmE4M2MxYTgwYzcxZTE4NDdmNzM1OTcyMWUzMTk5IGxlZ2FjeS10cnVuaworMjk1MyAxNjQ4NDlmNTYxMDVmZTJjMzA2MTlhNjRhZmUyM2RjNTVjNmVmOTQ0IGxlZ2FjeS10cnVuaworMjk1NCA3N2VlOWIyMjJmZGI0YTQ4ODg1Nzg1ZjlhYTYxNDI1YmYxNWY4Yjc1IGxlZ2FjeS10cnVuaworMjk1NSBkYzNiNDU1Zjc2MzI3NzM1YjA2NWJiZTA2ZTAyODA3MWM1NGUxOTAwIGxlZ2FjeS10cnVuaworMjk1NiBjYmYwZWY5OThhNGExZTU3Y2ZkYWU2NDg3ZDc0NzRhMTVjYjU5YmFmIGxlZ2FjeS10cnVuaworMjk1NyBjN2JjNTYxNGVlYWQ1YjRmNjlmYmQzZmJmY2ZlOTY3ZDVmOTYwMDliIGxlZ2FjeS10cnVuaworMjk1OCAwY2QxOTc5NDdkODE0ZTljZjIyYjlkNDRhOWY2NjlhMTdkMDcwNjVlIGxlZ2FjeS10cnVuaworMjk1OSAxMzYwNjE4NDA2MjQzNDE1Mzk5YWM2NjMzMjNmOWQ5NDEzN2RkNDMwIGxlZ2FjeS10cnVuaworMjk2MCAzYzhiNDQyZTVlMWYyZTZjZTMzYWE0ZjU1ZmU3YjgwZDkxZjQyNjQ3IGxlZ2FjeS10cnVuaworMjk2MSBkZmIzYjBlYzFmZjkyOWE2ODIyY2Q1YmM5MGMwMjAzZTYzMjhjOTFjIGxlZ2FjeS10cnVuaworMjk2MiA3ODRjNTFjYjFiNzk3MGI3YTFjN2UwZDBiMTRhZDk2MDU2NzczMzYyIGxlZ2FjeS10cnVuaworMjk2MyA0NGVjZmY2ODg0YjdkNzFjZjRjOTgwZmU5YTJhZDgwMDMwNTlkMGRjIGxlZ2FjeS10cnVuaworMjk2NCA5NjUyZmM4MzBhMTJkOWFiYTlhZDg2YzBjNGM2Yzg3ZWJlOTZkNWI5IGxlZ2FjeS10cnVuaworMjk2NSAzZDY1NDFhMmVjYTVhMDYyNWU1ZjQyNDQ5MDA0MTU1MmQyYWM5MmE3IGxlZ2FjeS10cnVuaworMjk2NiBkMDU3MDRhMDAwZWJkZTVkOTFhMjNjZTE2MmVhY2M3MzQ4ZjExZGU5IGxlZ2FjeS10cnVuaworMjk2NyAzYWRlY2UyYzg1NjcwNDVkYzE5N2ZmOThjZGY4YjNiNDNlNWFmNmU3IGxlZ2FjeS10cnVuaworMjk2OCBiYWIyYmViZDM1ZTczNTgxYWU0ZDg4OWMxZTViMDRiZmZkNmMxZTA4IGxlZ2FjeS10cnVuaworMjk2OSAyNTk5MjNlNGQ3YjE3ZmJjZDAwZDY4MTdmNzlmMWE3YmMwNzQzZDhlIGxlZ2FjeS10cnVuaworMjk3MCA0M2M4NmQxZWIyMmMyOTQ2NjYwMzE4MzI4ZjhkNTU5YzA1N2QxZTYzIGxlZ2FjeS10cnVuaworMjk3MSAwY2ZmMzZiMTEwZmU1NTI3NDY5ZDA2YzM2MTE4NDBhMmQ3YmRkYTgxIGxlZ2FjeS10cnVuaworMjk3MiA4NTdlZDNmYmRjMGVhMzlkMmIwOGYwNWNmNjg4NzlmYTY0YTNkZTczIGxlZ2FjeS10cnVuaworMjk3MyAzNzczYjZmNmRkNTNiY2ViNmM0N2QxYzY3YzRlN2U4MmRmYjA5NzNjIGxlZ2FjeS10cnVuaworMjk3NCBkNmUyNTc5MjMyM2ZiNmJmY2U0MTk3MjZiYWFiZTc4ZmNjMTFlOGU0IGxlZ2FjeS10cnVuaworMjk3NSA5NGVhNmVhN2Y3ZDU1NmFmN2U1OTY1YzBhZjFkNWEyOTMyNWE4MGZmIGxlZ2FjeS10cnVuaworMjk3NiAwMWE2YmY1NzQ1MmU1NWFlZDcxNTczM2ZmMGQxZjhjZThiZmNlZjY0IGxlZ2FjeS10cnVuaworMjk3NyBmMDhkMzQ0OTkyNjlkZTBlNDhmZWNiNGViYWM0N2U5NDU4OGNiMzI5IGxlZ2FjeS10cnVuaworMjk3OCA2NTA4YzkzZjk0NzI5YWFkZWU4YzRiMTNjNjFmOWMyYWRiMjIwMTk2IGxlZ2FjeS10cnVuaworMjk3OSBlNGEyN2Q4NGVhMzY3ODBmMDg2NGIzZDU0YzNhOGQ3NmVjYmExYWRiIGxlZ2FjeS10cnVuaworMjk4MCBhYTYzM2YwZGVmYTYxZWE5NTVlMDRlZWVkYjM0NDg2YjQ1NGU2MDYwIGxlZ2FjeS10cnVuaworMjk4MSBlMTU3YzEyY2Q2ZTdmNzQ5MWNlMzBmYzNjNTNhYWNlYzVhYmZjMzY3IGxlZ2FjeS10cnVuaworMjk4MiBhMWU4NGI0ODQ0N2FlNjQ0YmJhZGZiZTVjMzk2MmUwNzc4MmRiYmU5IGxlZ2FjeS10cnVuaworMjk4MyAwOWM2OWExZWM3YjA5MjhiMWZiOTE3Y2RkY2MxYzFlYTVhNzk1ZmNmIGxlZ2FjeS10cnVuaworMjk4NCAwMWZjNTkwMDMzMzlmNzcwM2YwZjljYTNjYmMwMjA1M2RiODYyZmQxIGxlZ2FjeS10cnVuaworMjk4NSAxZWVjZmZkOTY5Njg5ZTA4MDkyMjI0OWFkYTJkNjlhYTdjZTU3MDZjIGxlZ2FjeS10cnVuaworMjk4NiBkMWI4OWU4NWNlNzU2ZDNhMmQ2ZDZjNzNmMTgyNDFhMmM0NjgxMjYyIGxlZ2FjeS10cnVuaworMjk4NyBiODRhNmQ0ZGU5MGU4ZmNmNDM0YTMxYWVmMGRlOTgxZDVkZDcxNjI5IGxlZ2FjeS10cnVuaworMjk4OCAxZDE5NjY5ZjU2ODc2OTY0MzNhNWYyYzA0OGI5M2RhY2NhYjk0OWE3IGxlZ2FjeS10cnVuaworMjk4OSAzY2I5YTJiN2I0MGNmNDJkZTM5YTRhOTAwNGZhNTM2M2FiNzBjNDNjIGxlZ2FjeS10cnVuaworMjk5MCBmYWYxMWFkY2NmYzY1YmQwYTc0ODEzNDljYTEzYmVhNWVhMThlMDM3IGxlZ2FjeS10cnVuaworMjk5MSAyZmNkNDAxYTYyMzIzYTQ2OTRkZWEwYWYyY2E4NmM5NTM0NmQ5NGM4IGxlZ2FjeS10cnVuaworMjk5MiAyMWIzZWE2YmQzMmQzMTZlMWQ5YjY3ZmZmZTAzMDQ1ODJiNjkxZjU2IGxlZ2FjeS10cnVuaworMjk5MyBlYTUwNzJkZTc0MjczYTUyOWZhMDA2NDIzMzlmZmI0ZDQ5MmZhMGRlIGxlZ2FjeS10cnVuaworMjk5NCAzZWIwNWQyZGM3YjExZjQxYjU2MzFlYzg5M2RlNzliZTNiNmQyNDZjIGxlZ2FjeS10cnVuaworMjk5NSBiNDE3OTIzMDcwMDhkZWI0MzhhOTczYWI3OWEyNzcxZTY4YTc3ZWMzIGxlZ2FjeS10cnVuaworMjk5NiBhNzg4MmZjNmVhMjcwNWI4ZTE1MGRiYmMxZTFmZTkyNjQyYzkzYWUxIGxlZ2FjeS10cnVuaworMjk5NyA2YmY2OWY1NGE5MDNkODllNmQ1YzE5N2E0NTNkNzRmMjdkYzI5NzM2IGxlZ2FjeS10cnVuaworMjk5OCBmMjc3M2E2ZGM1MWVlY2IyOGJkZTViZjc2YjAyNGQ0OTE5NzQyNTY4IGxlZ2FjeS10cnVuaworMjk5OSA3YjRhZGU1MzZhZjg4ZjQ1MzBlZjZlNzUxMGM5YTRmMjc3YjE2NjZjIGxlZ2FjeS10cnVuaworMzAwMCBiOThhZWYyMTNkYWVhNTRjMjMwYzgzY2Q2NDQwZTMzZjJiOGQ4MTc1IGxlZ2FjeS10cnVuaworMzAwMSAwN2E4YzQ0M2I4MzEwNDgzY2M0ZTUyNjc2Y2RiNWJiMTI3NjFlOTNhIGxlZ2FjeS10cnVuaworMzAwMiAxNzgwZWI4ZmRlMmI2NDVmMzNhMGVhNzMyYTFhZDlmMTA0NjNlYjA1IGxlZ2FjeS10cnVuaworMzAwMyA0MTAxZGVkNzNjNTJkYThkZjdlYzAzZTBiZjFlNDM5OWJhNDRmZDljIGxlZ2FjeS10cnVuaworMzAwNCAzZjgxYjVhYzJiYjIwMjQwODU5MjU1N2QwMmNlMGU3N2ZjNDllN2FkIGxlZ2FjeS10cnVuaworMzAwNSAxNDY2MzVkZWYwMWVhYjJkYjM3MWRlOWEzN2UxMDI5MzIwYTQ4NTU2IGxlZ2FjeS10cnVuaworMzAwNiAzOThjMDBmMTFhMmY0NWMyN2U0M2ZjYjE5ODMzN2UyZjQzNDFiMWYzIGxlZ2FjeS10cnVuaworMzAwNyBjNTVjYjc2YmM4MzcwODFlMGQ1MWFmOTdmNDhiMjUwZmRhYjkwNDRhIGxlZ2FjeS10cnVuaworMzAwOCA4NTFhYzRhOGJlN2Q4ODViMzcxY2NlM2VhYzUyMTdkZTk4YWU3NTJiIGxlZ2FjeS10cnVuaworMzAwOSAxNjQwY2MzZjFhNTNmODA3NTJmYjJjODBiZDU3MWM0MGRlZWJlZTA5IGxlZ2FjeS10cnVuaworMzAxMCBkMzFlYzE1ZjVmNzEwNjQ0YWUyNzM2Mjk4M2Y3ZDZiMGE2OWY0MWFhIGxlZ2FjeS10cnVuaworMzAxMSBiMmE0MWY2YWVhYzk5MGNhY2JhMjRkMGE5Mjc5NGIyMzAzMDIyZTM1IGxlZ2FjeS10cnVuaworMzAxMiBmZTZhNWYyNjQwYTI3NmQ5MDE3ZjVlZGYwMDc0NDYxZDNiZDliOTZiIGxlZ2FjeS10cnVuaworMzAxMyA4NzJhM2NhZWZmMDcyNDIwMzUzODlkNmZlNjVmMDI4MmEyMDM2Yjk3IGxlZ2FjeS10cnVuaworMzAxNCA0ZGVmYWJiODI5NmI1YjQ3MDZkMDM3ZDU4YWEwZGM2OTU2YjBkYjM5IGxlZ2FjeS10cnVuaworMzAxNSAxYWM1YzY3MjdlOGM1OGRjODk5NDBiNmY3MDA3N2NiMGNiYmJiMTJlIGxlZ2FjeS10cnVuaworMzAxNiA0ZDU4ZTJjNTA4ODdhNWFjYWU4ZTg5MjU4NGQ1N2E2NWJhOTRjZTdlIGxlZ2FjeS10cnVuaworMzAxNyAzOWU1YjdlMzE1ODg4NWYzMWViYTM0MGRlZmYwMjVhMDcxZDVjMDMwIGxlZ2FjeS10cnVuaworMzAxOCA2ZjQ5OWQ1ZGFkZGY3YWJjZjdlNDkxNDQyOTZkZGU4YTI4MTcwMDVmIGxlZ2FjeS10cnVuaworMzAxOSAyNTQxYjNkMGYyMGY3MWU2MTZiOTdhOWYwZGUyNjJhNzAzMmVkYTc3IGxlZ2FjeS10cnVuaworMzAyMCA4YmMxNzBlNWVmZWU3MjE0NmE4Y2UyY2MwOTgwNzVkOTE3YTM4ZTNkIGxlZ2FjeS10cnVuaworMzAyMSA2Y2ExYzQ0ZmQ1Mjc4YTMyOWNjN2YxNDk1OTBjZTNhMmY3ZDY1Yjg1IGxlZ2FjeS10cnVuaworMzAyMiA2ZjNmZWQyNTBhZGIwZmEyMjI3N2UxZDhhYTI1ZWU5ZmVmYTE2ZWY2IGxlZ2FjeS10cnVuaworMzAyMyAzOTEzNGM5OWM5MjM4M2E1NzE2NjY4NzBmN2FhNzIwNjdmYmZmMTEwIGxlZ2FjeS10cnVuaworMzAyNCA3NjA5NWE4Yjk2Y2FlYmYwZGRjZDJiOWVmYTMxNGE3YmMzNzcwOGZkIGxlZ2FjeS10cnVuaworMzAyNSBiY2YwMjA1MmU5MDllODFhN2M0YzAwNzk2YmQzYTZiNGRiMjJlYWUyIGxlZ2FjeS10cnVuaworMzAyNiBiNjhiMTBhMjE1MjAwOTNlOGExNmZiMjczN2U1YjlkYTQwY2Y3N2IwIGxlZ2FjeS10cnVuaworMzAyNyBlNThmNDBjMmYyODVjZjVlMzZjNjFkYjA5MTQ1Mjc3N2Y0YTM0ZGMwIGxlZ2FjeS10cnVuaworMzAyOCA1OGU4NzcwZGI0NGFjZGZlZDFkNzY3Y2M2ZDAxMDg5ZmQ0OWUyZjk3IGxlZ2FjeS10cnVuaworMzAyOSAwNmMwNzg3NTBlODA4YTMzYjhiNzMxYzIwNTM2ZWZlZTM5MTVkZDE0IGxlZ2FjeS10cnVuaworMzAzMCBjYjE0NmFhOTg3Yzk0NWY5NjA0N2Y3ODQ2NWU3NjIzMThjMzgwNTAwIGxlZ2FjeS10cnVuaworMzAzMSBiMmRiNGJmMzRmZjhjZTQ5OTk1ZGE3ZTg0MDQ4M2JmZTcyOTg3OTQyIGxlZ2FjeS10cnVuaworMzAzMiA4ZTM1MWZiMjU3N2EwMmIyNjJhN2VmNTA5NzY3MzVkZDJhNWRiMjhmIGxlZ2FjeS10cnVuaworMzAzMyA5NzE1ZmRjMWU0NjJkZmQ0ZjUwZmQ4YzBkN2IzZGE3MDIwYTkzZmJiIGxlZ2FjeS10cnVuaworMzAzNCAyMjE2OWZjYzExODI2ZGE2NTc4MThmMTgyYzI2ZGMzNzM5YTI1OTc1IGxlZ2FjeS10cnVuaworMzAzNSA3YTAxM2Q2NDQ1YTQ4Nzc1NWM0OTYxY2E4NzIxZjlkYjM2ZmRiMmI5IGxlZ2FjeS10cnVuaworMzAzNiBhYWRkZjgyMWY1ZDQzMmNmMTE2YjNhYmE0NDg2MTE1YzM4ZTAyZWQxIGxlZ2FjeS10cnVuaworMzAzNyA0YzliYzUyYjgwODBkMzljZjhkZjZmY2U4YmZkODA4MWFkYWNlYzhkIGxlZ2FjeS10cnVuaworMzAzOCBjZDBlN2YyNGZhY2ExYjExYWI1NmI1YTFiNjJkOGFmMDAzYzA0MWE3IGxlZ2FjeS10cnVuaworMzAzOSBlYzMxNzQ4ODM3ZGMyNzg5ZjQ4Nzk0NmYzMjU5MTczMTk3MTQyZjkyIGxlZ2FjeS10cnVuaworMzA0MCA5ZmIyYTg2OGVlZWVjNjVhZTdkYzYxOTgwNGVkNTU5MThkNzkxYjVhIGxlZ2FjeS10cnVuaworMzA0MSAzNjMyMzE0MGY3NTE4NTQ1ZTJiYWQ4MzVmYWU5NGFkN2EyZjU1Njk1IGxlZ2FjeS10cnVuaworMzA0MiBmOTQ4MWFhNWU3NzZiNjVmN2JkMWUyNmI1Nzk2M2UxODViNDFkM2E0IGxlZ2FjeS10cnVuaworMzA0MyAzNmI5MzQzMjZmZWQ1ZjQ1NWE3YzBmZmFkOGQzMzUwNTA5ZTEyODI5IGxlZ2FjeS10cnVuaworMzA0NCBhZmY4MTljYWYyMWFmNTRjYjY2MWM2OTkwZTAxNDA5YjdkM2Q1MTFjIGxlZ2FjeS10cnVuaworMzA0NSAwMGViZTVmYjBhYzY3MTIwYjYwNGU1MWEyNzY4YzNlZDgwYjBhODQ1IGxlZ2FjeS10cnVuaworMzA0NiBhNTRlNGE3MTdjOWJiZTI5MWQ5MmU0ZDYzMDU1MmI0ZDlkOThlOGVlIGxlZ2FjeS10cnVuaworMzA0NyBjMDJjM2NiYjhhZDEwNDc3NDFiYzZmOWI0NjIyY2Q3MWZjZjNmZDU4IGxlZ2FjeS10cnVuaworMzA0OCAyNjZkZTU5ZGU4YTlkODcyODdjYjQ4M2RlZWMyODZkMjhkMGEwOGZhIGxlZ2FjeS10cnVuaworMzA0OSA5YTA1ZTJiZmE3NGMzNmJiYTZiZWI3ZGUzZjUwNmU2ZWRmMGZmMTlhIGxlZ2FjeS10cnVuaworMzA1MCAxNmExOTUzNTRiMmJlZTA2YjdmYzNiNWQ5YWRiMjY1MDQ0YzgyMWQyIGxlZ2FjeS10cnVuaworMzA1MSBkZDdkZmFkNDA0Y2Q4MzJkYTYzOGYxNzUyOTRhNmVmZTlmY2I3YWQ0IGxlZ2FjeS10cnVuaworMzA1MiAxODE0MDkxNDFhMTgwNmQ3Yjg1YzMxOGZkYjk2NDNiZTI0N2VlMDljIGxlZ2FjeS10cnVuaworMzA1MyBiM2Q2MzlhZDY2NmQ1YjIwYjBkYjdjNTUzYzAzN2U0OWRhZTVkNjZkIGxlZ2FjeS10cnVuaworMzA1NCBhOGNhNzIwZmQ5MjE5ZWVhNmJjZTMyZGY2YTk5ZDVmOTVhMDE2ZmE3IGxlZ2FjeS10cnVuaworMzA1NSAxMWVhNjY5YzIzMWUxM2QyNGQ0OWRiMzhjNzUzMTEwMjhmMzVjNDRkIGxlZ2FjeS10cnVuaworMzA1NiAyMjY1ODI4MjJjZmFmMTIyZjBlZDNjYTk1YmIxMmZhOWMzZDExNTRlIGxlZ2FjeS10cnVuaworMzA1NyA0NmNiNmJjZTRjNDc1ZjRmZWZjNTIyODQ5MTk2NjZkNGZhYzQ0ZmY2IGxlZ2FjeS10cnVuaworMzA1OCBiZWJkYzFhY2Y0NzQ1OWI4NmU1Y2Y5NzUwMmRmYjA2MjAxNzE3N2NjIGxlZ2FjeS10cnVuaworMzA1OSA2NDU5ZTJmMjFiZjY4MDc3Mzc4OGZjMmFmZDY2MTliNzJkN2M4ZWFhIGxlZ2FjeS10cnVuaworMzA2MCAwYzViMmQ5ZTQ1ZTgyZDNmMmU1ZThhZWQ0NGFmNWZhYzJjYjk1NTYxIGxlZ2FjeS10cnVuaworMzA2MSBlZjg2NTAyNTA4ZTJmMTA4NmMxYTE4NmJmYjEzYTY1YTBmMGQyZjBmIGxlZ2FjeS10cnVuaworMzA2MiA5OWJmZjFkYjc1ZjRhMGZmMWQ2NzI5ZGUxZWM5N2E2ZjNhYjFlNjc0IGxlZ2FjeS10cnVuaworMzA2MyA1OGE3NDM4YzJlN2VmOTIyYjM2MzE3OWUwNDZmMDgyOWJiYWFhZDBhIGxlZ2FjeS10cnVuaworMzA2NCBmZWEzZjU5NGRmNzc0NmI3NzZhMTNjYjkwZjNlZmE0OWIzY2I3ZjU0IGxlZ2FjeS10cnVuaworMzA2NSBhNDc5M2FlMjY2ODI2YzAxMzRjNDk2N2QwYTBiYmMzYTYzODRhYzE0IGxlZ2FjeS10cnVuaworMzA2NiBmZDYyYzI4MDk2YjU4NzdlNjZkNGJlZDdjMWZhNDU5MDEwNjU3NDc5IGxlZ2FjeS10cnVuaworMzA2NyA3ZjdiYTY1YTI4MjVjMGU0NmI1ODRmOWIxMjI1OTkzYmMwMzU2YjVjIGxlZ2FjeS10cnVuaworMzA2OCBhMWY1YjIxNmUzOTJjZDliNTJhNTc1OWFjNmNhYmNhM2VhYmY4NWE3IGxlZ2FjeS10cnVuaworMzA2OSA2Mzc5OGNkZTU4MmNmNTM1NjQ1YTI0MmVjYTNkYWU3OWZjMGUzNjBmIGxlZ2FjeS10cnVuaworMzA3MCAzMjAxMGQzNTVmYjYxMjJlNTI1OGVhOTIzNjYzNDY1ODNkYjVmNWJkIGxlZ2FjeS10cnVuaworMzA3MSA0MjRmNTVlNjdkNWQzMjRiOTg2NTc2YTVmZGU5OGMxNDdjZjJiNDI1IGxlZ2FjeS10cnVuaworMzA3MiA0ZGEwYjdkYWU3OTZmZjhmMjU4YWQ2YjdhNDcwZTZmYjljYzNkYjFkIGxlZ2FjeS10cnVuaworMzA3MyBhNGYyYjIyMTBiMDIxMTUwMzBjNTlhMTU3NTM5NjE1NzMzOTM4ZDZmIGxlZ2FjeS10cnVuaworMzA3NCA0ZmQyMjYwMmUyODJjMWVlOGJmNTE4N2ZkMTRmZDJiM2E4NGJhNTY3IGxlZ2FjeS10cnVuaworMzA3NSA2MGUzMTE4ZDMwNzM3YmI2ZjI5YzM4NzZhNGM4MTNjNjMwNGQ0NTk5IGxlZ2FjeS10cnVuaworMzA3NiBlOThhOGY4MDI5MDNhNjI5YzYyNDY2MTQxNGNjODljYWUyYWM3NjZkIGxlZ2FjeS10cnVuaworMzA3NyA3NGI3MTZlOWFjNDk4NmU0MDAzNzg5MzgxY2QwZGQwNDRlMmEyYTM4IGxlZ2FjeS10cnVuaworMzA3OCAzOWVlN2RlNzQ3NTAyZTk2MmJkYjVjNmU4NzJiMzY3ZjQyYjBhNTVhIGxlZ2FjeS10cnVuaworMzA3OSBmZWMxOGUyNDRkMTY4ODJiMjlmMGZkNTdiZTdkNTExZmQyZmYyOWY2IGxlZ2FjeS10cnVuaworMzA4MCBjZmRkNTc1ZWZmZjJiNDE1NzBiMzdiZmJmZjgwYjJjMzc1MTA2M2E1IGxlZ2FjeS10cnVuaworMzA4MSBlNDNhMjIwYzI4N2FhM2VhMjdiN2MxZTEzZjVmYzAzMDkxOWY1ZGY0IGxlZ2FjeS10cnVuaworMzA4MiBkM2IyN2ZmZjAwYjJmMTI1NzVlYzFkMjEzYjhlNmQ3ZDM3NzllZTNiIGxlZ2FjeS10cnVuaworMzA4MyA4YzczYzVmM2I2Y2E3M2RkYjY2OTRhNmM1NTI4NzA5NTA2YWZmNmQ2IGxlZ2FjeS10cnVuaworMzA4NCA4MDc4ODM0OTk2ZWNjNTgyY2E0NDc5NjgzMTQwZjA4ZjdmMzBiMDM0IGxlZ2FjeS10cnVuaworMzA4NSBjMTJiNDQ1Y2RhY2VhMWQ5ZjlhMDg4YWY2MjJhNmE1YjFjMDRjYWFlIGxlZ2FjeS10cnVuaworMzA4NiA3MmFjZWVkMzY1ZDQzNWI3YzI5NTNkYjg0MGJjZDA1NDc2OTk4MzczIGxlZ2FjeS10cnVuaworMzA4NyAyNTA1ZmQyMGQyNzdhNDc5ZTBkNDg3NjYyYjhkYzIzNGQ2YmFlMjYwIGxlZ2FjeS10cnVuaworMzA4OCA2MTE0M2JmMDNiNDQ3NmUwNWUyNzJjY2U5ZGFhOTU2NjEzYWNlNzQ3IGxlZ2FjeS10cnVuaworMzA4OSBjMTU2ZDQ5NjBjMmI0MDg1OWIxZjA1OGMyNGZkMWIwNjA1MDQzZTcwIGxlZ2FjeS10cnVuaworMzA5MCBhYWNiZDRiNTU4YzdlZmNmYmJmNzdjY2JiZTI3MDY4MzQ2YzAwYjQ4IGxlZ2FjeS10cnVuaworMzA5MSA4NzI1ZmE4ZDdmZjkxZDgxYTQzNmFhNjFkMzRkNzBmNmNlZTI5MTI5IGxlZ2FjeS10cnVuaworMzA5MiBmZjAyYjk0OGM5YTgwYjdiOTU1YzE1ODQxYjkzMWY1NDEyYmQ4MWEyIGxlZ2FjeS10cnVuaworMzA5MyBlNTA2MTk3MzMyYzBjMWExMWVhNGJmOWNkYTcyODA2MmU4ODVmMDRlIGxlZ2FjeS10cnVuaworMzA5NCBkODYwOGVkMWNjM2IxM2I5ODIzMDEyZTBiYWY2ZDlhNDY2YzVlM2U3IGxlZ2FjeS10cnVuaworMzA5NSA2MTU5ODNmMWEzZmYzZmQ1OTJlMjY3M2I0YTdlNDRiYmUzM2Y0ZWJkIGxlZ2FjeS10cnVuaworMzA5NiBjNDMyNzM4Y2Y2OWFlYWUxNWY1ODhjZmE2ZjRmMTA5ZGU3OTRhYjMyIGxlZ2FjeS10cnVuaworMzA5NyBkMzgzZDI3MzMxNzY1ZjhkNmVjYzA2ZTMxZDQ1MGI0YWYzOWJjYzIzIGxlZ2FjeS10cnVuaworMzA5OCA0ODc5OTY3OTZlZGM2YzczMWI3NTBjZjk1ODZkOTUyMTM3OThlZTE1IGxlZ2FjeS10cnVuaworMzA5OSBkY2U2ZGM2MmYxMDhlZTQ0YjA0N2VkYjAyYmY0NGQ5OWNlMjA1YWM5IGxlZ2FjeS10cnVuaworMzEwMCA1OGE0Y2IxOGYwMjVhZjg2ZDlkYjNkMDkxYzkxYzRmNDQ2ODQ0NzhmIGxlZ2FjeS10cnVuaworMzEwMSAxODM2OWJiOWMyNGQwNzg3OWY2MDVlZmE3ZWM1MWE1MGYyOTJkN2E4IGxlZ2FjeS10cnVuaworMzEwMiA3MjQzYTkwNjkzN2NmNzg0ODNjZWVkYTM1MDM0YTRkMDE2YzQzMmVhIGxlZ2FjeS10cnVuaworMzEwMyA4NDQ0ODJiNjQ2N2FhZTNkNThjODFhNTA1NzA1ZTUyM2JhNmVmMmIxIGxlZ2FjeS10cnVuaworMzEwNCBjZDQwZTNlZWJiNDkzOTBmNGUwMzRhZjMxMWRjYmUyNjFiYzdhMDE0IGxlZ2FjeS10cnVuaworMzEwNSAzYWE2NTg5MmI3NWM0NzA2OTY3MzU3MzM1YTk4NzYxNzllNTM5YTk5IGxlZ2FjeS10cnVuaworMzEwNiBiNDZmMjFjODMzNjkwOTZmMDAzZDk3YjhmYjU0ZDVhYjlkNzU4ZjExIGxlZ2FjeS10cnVuaworMzEwNyAyMjJmMDRmNTUwODMzNTcyNmFiNmU2MWUxZDVkZjM0NDc3M2Q4YjFjIGxlZ2FjeS10cnVuaworMzEwOCA0NjViOTg0MTc3MGUzNDU2NWU0ZDk2Y2YwZGY3MGJjYTRiMDdkOGU2IGxlZ2FjeS10cnVuaworMzEwOSAzNmUyYjdhMDBkNzJmMzZhZmJhYmM4MDFlMmQwMzVkZjcwMDUzMTRiIGxlZ2FjeS10cnVuaworMzExMCAyNjBkOTZkYjExMmY4N2QyMDRiYzhlNWUyZGM0ODczZmI4MWZjMjI1IGxlZ2FjeS10cnVuaworMzExMSBlNWFlNDJmZmQ5YTA3NTdmNmE3NzFmOTY3MWVmZTYwNjZiZTIzNzM2IGxlZ2FjeS10cnVuaworMzExMiBiYzBhYjAxNzU0YmE1ZGNiNDgwMDQxZTUzZDlkODdhNjdkNTUzMDdmIGxlZ2FjeS10cnVuaworMzExMyBiOWYyNGQwYzdkOTYxNmE3ZDAyZjE2MGVjNzhhNDAzMGQ5NTY3YzIzIGxlZ2FjeS10cnVuaworMzExNCAwMjg0ZjEwNzlhN2JhZTU2NDIzYzljZTczYWUyMzgzYmE3MWNkYTVhIGxlZ2FjeS10cnVuaworMzExNSA3ZDhlNTFlNTgwZDFhMjNjYTMzZDIwMjg5NzZmNTJkMmIyYmQ2NjllIGxlZ2FjeS10cnVuaworMzExNiAyYjYwODMyNzIzYzE0MzFmNzk1Zjg0OGQzMTczYjYzNzlhODVkZTlmIGxlZ2FjeS10cnVuaworMzExNyAyNjZhOGJhMjA3ODRmY2Y0MWJjNGVmMjhlY2ZjZTlhOTkyNGVjOGM3IGxlZ2FjeS10cnVuaworMzExOCAwM2RlNjcwODBjOTU2MjQyOGRjNzM3ZTcxZjRlZTRlZDIyNTJkOWE3IGxlZ2FjeS10cnVuaworMzExOSBhNjBjYjUzMjEyMTEwZTU0MDBiNDNiNWI4OGViZDZjZTc3ZGM3ZTE5IGxlZ2FjeS10cnVuaworMzEyMCA1YzZjZGI1OGE4MDFjYjgxOTQ2NGUwZThjZDFlMWRkMzEwZjg4MjA1IGxlZ2FjeS10cnVuaworMzEyMSBhNzM2ZWYxODQwYTUxZmUyYjc1ZWE4OWY1MTkxNTU4ZWQ5NDEzYjU2IGxlZ2FjeS10cnVuaworMzEyMiA2OGIzMDJhZDg0YTE5MWI0M2Q5OTU1YzU4YzgyOTM5Y2Q2Mjk1OTkwIGxlZ2FjeS10cnVuaworMzEyMyA3ZDNhMDUzYzY3NjVhZTU2ZWIxNmMxMGRjNTg5ZDVjMGZmMTMwOTk1IGxlZ2FjeS10cnVuaworMzEyNCBhMzFlMDc4NDcwNjM4NzQ2OWNmMGU5ZjNlY2M4Yjg5MTE3ZmQ0ZWZiIGxlZ2FjeS10cnVuaworMzEyNSBiNDFlOTU3MzFlNDIyNDIxNzg1ZjE1ZDg5NTcxMzNmNDRmZDNkOWZkIGxlZ2FjeS10cnVuaworMzEyNiBiNWZjYjY2MjQ2NWU3M2NmOGY2N2U5NWFlOWQwNTQzM2U5MzIwOWY3IGxlZ2FjeS10cnVuaworMzEyNyA0YmRiMjc5NDNlMjI0MjEzNzAwNjkwOTBkYWU0MDBlNTNiZmM3ZjVlIGxlZ2FjeS10cnVuaworMzEyOCAxNGNjNGIwN2NlYmJkNjExZTc3MGJmN2ExYjUwOTI4ZDhkYzdjMDc5IGxlZ2FjeS10cnVuaworMzEyOSAyN2FhZjk0NDc1ZGRiZDc1OWIwNTAyZDdiYzdmYzYzOWY5OGFmZTQwIGxlZ2FjeS10cnVuaworMzEzMCAxYTUyMDI5MGMzOWMwNTI1YTdmZTAyMWEyMTEyM2E4MjQyYWUyMTU5IGxlZ2FjeS10cnVuaworMzEzMSAwNmE5YzgyOGI2MDg5MWI1OGNiZDZhNmMzMjNiM2U5MDQxMWQ0MWFjIGxlZ2FjeS10cnVuaworMzEzMiA5YmZlNzNjNzczMzRjYWI2MTMwMjM2YjdmNTQ3MzRmOThmZTRlOGVmIGxlZ2FjeS10cnVuaworMzEzMyA0NjU3ZjdjOTgwZTg1OWY1OTIxNDk5ZDY1ODZmYTNlYzc4NGI0MjY3IGxlZ2FjeS10cnVuaworMzEzNCBmNjcxOTM4ZGZkZTJlNTMyOGFhODA4ZTc0OGEwMWRhZGIxNTFjZGFjIGxlZ2FjeS10cnVuaworMzEzNSA3YjM3YjVlNzE0OTNhMzY3MThmNTUwMzU0ZWNkOWE2MzVlMGRjZTk0IGxlZ2FjeS10cnVuaworMzEzNiAzMGEyOTAyNTdjMzFkMGIwOGQxNzI4NjUyZDE0ZDZkZTUzMTUyZDY1IGxlZ2FjeS10cnVuaworMzEzNyBjOWMwMzI4MzY4YTllMmI2NDM5MTYwNDNmZjViNjVjMjJmNDViMGJmIGxlZ2FjeS10cnVuaworMzEzOCBhZGJhYzU4OTNmOWM2MGRmYjE3M2EyZjY1MDE3NjQ1NmRlY2JmYmQyIGxlZ2FjeS10cnVuaworMzEzOSAzMWIwMThiZGE3ZTJkM2Y1MDBkOWZjNzQ4ZTRhOWJlMTU5YjFlOWYxIGxlZ2FjeS10cnVuaworMzE0MCA1NzZkYzE0YTI0MDA5NzEyZWNiMTA2M2M5Mzg2NGFiN2YzYWZjMzUxIGxlZ2FjeS10cnVuaworMzE0MSAxM2M5OWVhZjMyYThjNDVmYzkzOTgxOWJhMDE4YzRiMTk0M2I1NjYwIGxlZ2FjeS10cnVuaworMzE0MiAzYzU1ZTYxMmE2ZmNjMWQ3ZWM0MTkxZWUwNDBlOTM2NmE3MmUxYmM3IGxlZ2FjeS10cnVuaworMzE0MyBmZmUyZmJjNTgzZGVjZDc5MTk4NWUyNjNmZTk3OWJlOGY1MzhkOWFlIGxlZ2FjeS10cnVuaworMzE0NCA5ZjFkYjU1NmZmYmMyOGVhM2RhZGQyZDZhMzE5NzM5ODJhZTEwOGM2IGxlZ2FjeS10cnVuaworMzE0NSBmYmNiOGQwYmQ0NWUwMzIxZWM5ZDU0ZDVhZmFkZGQ3ODczY2E4MGFmIGxlZ2FjeS10cnVuaworMzE0NiBiMDQ1ZTY4YmJjZGQ1NGQ0YjQ1ZTNjMDczZDAyODI3MjZhM2ZlMjg5IGxlZ2FjeS10cnVuaworMzE0NyA4N2FlZDUxNjAxNjE3NmI0YTQwMDI1NzkwMmE1OTc5MjY1Yzg2OWZlIGxlZ2FjeS10cnVuaworMzE0OCA1Y2M3YTNjZDU1N2I2NDkzNzc2YTIyYWI1MzMzYjhkMDIwMGIxNzEzIGxlZ2FjeS10cnVuaworMzE0OSAyYTA3NDZkNTI0NzhhNzJlYWQzZDFkY2I2MDc1N2IwMTYwMDM1NjE2IGxlZ2FjeS10cnVuaworMzE1MCAyNGM5OGI2MGRkNzQ2NWJlNDBiMDM3YTY2YzVjNWFmNTgyMThmOTllIGxlZ2FjeS10cnVuaworMzE1MSAxOTdhMmNmM2E2NjJjNmIxYzcwMmI3MzEwMDE3MDJkMmVkYmQwNmFjIGxlZ2FjeS10cnVuaworMzE1MiA3N2FjYTY5NjZiOWQwMWI1YTEzNGYwZmM5OTM4Njc3NWU2NWVlNmY2IGxlZ2FjeS10cnVuaworMzE1MyBhOWViN2EwZDQwMDIxNDFmZTcyNTRkNWVjZTJjNTMzY2E2NWU1NWUyIGxlZ2FjeS10cnVuaworMzE1NCA3ZjgwZjMzNmJlN2Y4MmFiZWNkNDVkNzg4YjhiMmJkMWI2ZDUyYzBjIGxlZ2FjeS10cnVuaworMzE1NSA0OGM2MzdmYjE1MGYzMjg5ODE2ZjFmZDM3YzdhYWE4ZTM4ZTQwMDcwIGxlZ2FjeS10cnVuaworMzE1NiA3Y2UxOTc1ZjExYTkwZjEyNDFjY2IzMWViYzUyMzI1YjEwNjNiMDhmIGxlZ2FjeS10cnVuaworMzE1NyBmNGRiNDA2M2VjODg2ZWQzOWFlZWIxNjRlNDY2MDFhNmRiNDI5MDE4IGxlZ2FjeS10cnVuaworMzE1OCBmMDI1ZWVmOTMxMzBkMzI1OTI3NTc0ZjA5N2Q1NjgxYzIyYjY5MGVjIGxlZ2FjeS10cnVuaworMzE1OSBmZmIwM2NlYmYzZjQ1NWU0MjZlNDI1YWZlMzI2NjQ4MmNiN2E4ZDI4IGxlZ2FjeS10cnVuaworMzE2MCAwYmUxYTVkYjc3ODQ3NGEwZTVjZmY3ZmFkMTI5MWJkNmRiYWFkYjE2IGxlZ2FjeS10cnVuaworMzE2MSAwOWI0ODYwNDg1NWY0ZGQzZjM3NzNkMmVmMjQxYWFkYTBlMGM1MTA5IGxlZ2FjeS10cnVuaworMzE2MiBkZWJmY2I5YTdlMDhhNjQ3NDM4OWQyZjlhNmVjOTBiMWQxNjViNzZiIGxlZ2FjeS10cnVuaworMzE2MyA2Nzc0MTA3YzY0N2RjNTljNjA0ZGFhNzBjNGIxYWJlN2JjOWQ1NWYxIGxlZ2FjeS10cnVuaworMzE2NCA1MDY3ZjJkMzhlMTQzZmIyMzI1ODUxNjUyNDU0NDg2NjI5YmNmNjU3IGxlZ2FjeS10cnVuaworMzE2NSAwY2U0MDRlNDEzOWM1YjY1MTE5MGM4NGEyZTgxZDQ1YzZkZGIyYTlmIGxlZ2FjeS10cnVuaworMzE2NiAxN2RiMDU5YjI5YmFjYWIzMWRkOTAxYzk2MDY1YWU0NWE2Y2UwN2ZlIGxlZ2FjeS10cnVuaworMzE2NyA1ZDcxNDJlYTAxYjdkYjBmMTc4MDY2NGU2OWM4OGFkYzUzYTIxNDBiIGxlZ2FjeS10cnVuaworMzE2OCBiMzMyMjhlM2MyYzI3ZWQ5MjMxNWUzNTRmYjgwNWI1NmVlNDU3OGZiIGxlZ2FjeS10cnVuaworMzE2OSA5MDMwNzEzNzdkMjkyZTU5OTI0MGQ5M2ViYmIxNTYxOWEwZjdkNWQ1IGxlZ2FjeS10cnVuaworMzE3MCAwNGE4YTg5YzkyZWI3MGUxMjEzODYwMmFkNTQ3NGU2MTdkMzk3NjdmIGxlZ2FjeS10cnVuaworMzE3MSBmZGJlYWUyZDZlNjcxZTIxNWE4NTFlNmZlN2RkYzNjMzg0YmFmMDJhIGxlZ2FjeS10cnVuaworMzE3MiAwOWQyNzFlZjNiODI0MDQyNzkwMjg5YTk1YWI3YWVmODIxM2QzZWEyIGxlZ2FjeS10cnVuaworMzE3MyA2YzFmZDA1MTBkNjFiY2QxNzA4ZTE5MmU1YThjM2FjMzg5NGNlZTVkIGxlZ2FjeS10cnVuaworMzE3NCA5MjY3OGI1MDU3YzY1NTZjZTU0NDU2ZTUwNTQwYjE1Yjc1YTdhYTBjIGxlZ2FjeS10cnVuaworMzE3NSA4MDY2ODliOTM1NThmOTU2ZjcxZTYwOWYyMzJjMWUwMmZkYzU0ODM0IGxlZ2FjeS10cnVuaworMzE3NiBhMWNlNWE5NDk4MjhkNWMyYmYxNTU0ZjgwMGQzYWQ3YjEyZmM4NzIzIGxlZ2FjeS10cnVuaworMzE3NyA5NmFjYjM1YmI5MmJiODkxZDlhYzBlMTgyMjFlMTk4NTAxMDZjMGEyIGxlZ2FjeS10cnVuaworMzE3OCBmM2Q1ZTJjM2I5YTNhNTMxZjdjZTcyZWJmNGMzOTEwYjliMWJhMWI3IGxlZ2FjeS10cnVuaworMzE3OSBhNDFlM2JhNWI0N2Q5NmZiYjdkOTIxZDU0YWRiZjFkZDk3MzUwMGUwIGxlZ2FjeS10cnVuaworMzE4MCBjYjdlZjliZDllZGVjMzc5YTUzODY0MGQ5ZDNiM2U3MzY3NzQ5ZTFjIGxlZ2FjeS10cnVuaworMzE4MSAzOTQ1ZjM3MTIzNTQ5MDFiZDc2ODlhYTkzZDVjYmFjMWUwZTJkMTYyIGxlZ2FjeS10cnVuaworMzE4MiBhM2U3NjhlYTgwMmFiOTA3ZjAxMTAxN2FlMWJlZmY1ZTE3YTY2YjRlIGxlZ2FjeS10cnVuaworMzE4MyA3NDQyYjIwYzQzZmRmY2NjMWEzOTk3NzA1MzczYjlhMWQ1MTM4NGI1IGxlZ2FjeS10cnVuaworMzE4NCAwZDdjODIzNjY3MDQ1MDA1MjdjNDU3MzdkM2MzMmMzZDFjYWUxMzYwIGxlZ2FjeS10cnVuaworMzE4NSA5YjU2NmFjMzhjMmI4NDM0MWM4NDUzMDI1MDM3YzdmMTI5YTFiNWJjIGxlZ2FjeS10cnVuaworMzE4NiA5NGFiNjc2MWFmZTJjNGVmMmQ3MDVjN2NlOWExZDMxMWNmZThmYWMyIGxlZ2FjeS10cnVuaworMzE4NyA3YjRmMjgzM2ZkOTAyYmM1NThhMjFiYTFjYTE4NGI2MWI4M2FlNTE3IGxlZ2FjeS10cnVuaworMzE4OCBmOTkzMTk3YzNhNDc2ZTQ5YzM3ZTNkOWI0NDY1NjM0NDgwN2I5MTc5IGxlZ2FjeS10cnVuaworMzE4OSA1NmQ2M2NhYmRiYTdlYzA4NTVmZTI0MGQxYTU0Y2EyZDZjY2ExOGExIGxlZ2FjeS10cnVuaworMzE5MCA1MTM5NDBlYjRkN2I2OTkxYjE1NTZmZDk3YmZjYmFiYmJmOWRkNWU0IGxlZ2FjeS10cnVuaworMzE5MSBlZDQ1NmU5MWQ5NWFlODU0Njc0NTk5ZTliNjMzMzliYjk2YzFhNmI5IGxlZ2FjeS10cnVuaworMzE5MiAyZjk4MDVjOTYzZTg1MzY0ODA3YjhlYTE3ZWJiM2NmMzQxZDJhZWQ0IGxlZ2FjeS10cnVuaworMzE5MyA5ZjBmYjExNGMxZTU0Y2U1NjNlNTQzMzBmZDdkMThjMDVkZjRjZWY3IGxlZ2FjeS10cnVuaworMzE5NCA3YTExYTcwZjdmNDRkY2NkNDJlZGQxZDliMjk2Zjg3NTIzY2JhMTgyIGxlZ2FjeS10cnVuaworMzE5NSA0MzJmZTdmMDgzN2M0YjI1YTc0YzQyZmE0YmUzNWI1MmY5NTUyYzg2IGxlZ2FjeS10cnVuaworMzE5NiBmYmI4NDBmNjRiZjg5NTY3Y2E2YzkzYmMwZTUwZDVlYWU1ZGYxZGY1IGxlZ2FjeS10cnVuaworMzE5NyBiYmQwMTk4ZWFlNWJmMThmYWFjMjc0YzY3ZTI1MzRjZGQ3ZTgzYTRlIGxlZ2FjeS10cnVuaworMzE5OCA1ZmIzZjczYTYyN2ZjZTU5ZWQwZTE4YzMwZTFlZWE2YTdhZDhmY2Q4IGxlZ2FjeS10cnVuaworMzE5OSBiZmZlZmJmY2ViNjA1NDNjMzQ4YTZmYjk5ODQxYjhlZTNjOWE3ZDI1IGxlZ2FjeS10cnVuaworMzIwMCA1MTZiNWExNmFjNzcxOGQ2ZTE3ZGEyMWEwNmVmMzQzZDNiNTY5Zjc5IGxlZ2FjeS10cnVuaworMzIwMSBiMDA0MzhmMjY1ZWQ4Zjk2MjJkYWFlM2E2ZTBhMzJhYWQ2NjM0OTA0IGxlZ2FjeS10cnVuaworMzIwMiA2YWEwZWUxNGFjMmVkNjA2YTBlOGJjOGE2NDYwNDY5ODBiYjQ0OWEzIGxlZ2FjeS10cnVuaworMzIwMyAwZWU1OWExNGU1NDIxZmM5YjQzMjI0MjBlMDc1NmExM2FiMzVlNzA4IGxlZ2FjeS10cnVuaworMzIwNCAzZGFjMjA0Yjc0ZmFmZjkzN2YxMDVjODI0N2NjMWUzMjg1ZGUxZTA1IGxlZ2FjeS10cnVuaworMzIwNSA1OGY3NDhmNThkZjU4NGJiMjY5NmU1OThmYmM5MmM4MWY3N2VhNDhjIGxlZ2FjeS10cnVuaworMzIwNiA4ZjNhMjU0MDk5NWExNWUwZTE3ZGU4OWI3NzNjNzk3MTY3MDQ5NzkyIGxlZ2FjeS10cnVuaworMzIwNyBjNzJlZTI5Y2NjZDAxOGZkNzM3MmY2YmU0MTI0ODY5MjYzYzM3MTllIGxlZ2FjeS10cnVuaworMzIwOCAxMGYxMGQ0NTQyZmFlZDg1NDJlNmI1NmRmYTkxODFhZWE1MmI2Y2QxIGxlZ2FjeS10cnVuaworMzIwOSBkNjgwOGVjNmVkYzczNmU2MzQ1NGMzYTViN2M3OWY2MWRkZWU1OGEwIGxlZ2FjeS10cnVuaworMzIxMCA2YjVhMzRkYjIxZmUxNzMzNjgyYWU0N2Y4MjRiZjczY2I4ZTgxNGM2IGxlZ2FjeS10cnVuaworMzIxMSBjMWViZmRlMzQxYTNlY2M5YTk5NTBlZmQzZTYyOTM3NDU1YzY1MzlmIGxlZ2FjeS10cnVuaworMzIxMiAyZWQ1MTExNzE4MDk4MzgyN2IxOTExY2I4NjQ0ODg5NDczM2Y4OGUxIGxlZ2FjeS10cnVuaworMzIxMyBmNDlkMjMxMTc3NmJiOTNkYzlkODVlY2U5OTg5MjQ5ZmM2MTZiMjhmIGxlZ2FjeS10cnVuaworMzIxNCBmNTRlNjRjOGI5YjcwYmI5YjAzZDMwY2YyOGExZDgzNDUyOTNhZjYzIGxlZ2FjeS10cnVuaworMzIxNSA2NTA4ZWEzMmM2YjA5OTk5ZmI0YjFmMzVjZGY4N2ZmOTI1MjU0MjhkIGxlZ2FjeS10cnVuaworMzIxNiBjOTU0NmEyMTE4ZjA0YjZiMzY1MDdiYjM1NTMxYjQ2NTc2MjE4NzY4IGxlZ2FjeS10cnVuaworMzIxOCAzMTZjZTY3N2M2YjIwYTRjOTBhMjg2ZDc5MDAzY2IyMjk3ZmRmNGFiIGxlZ2FjeS10cnVuaworMzIxOSA2YWIyMDdhNTVmY2EzNDc3ZjQ2MTBiZGNhYTk4MjI3MGEwYmJhZjkyIGxlZ2FjeS10cnVuaworMzIyMCA5YmY3NWU0ZDlhZWMzZWFiM2RiYTA1MzU2Mjg5ZGQ0NjBhNjg1N2E1IGxlZ2FjeS10cnVuaworMzIyMSBlNjY0MmE1MzVkYjVmYzE2YzBhZmU5YjE0NjU5NjA2YzE2OGY5MDc2IGxlZ2FjeS10cnVuaworMzIyMiBmZTE5MjZiOWRmZmE3MzEyNTQ4OGRlZDFjNGZkZWQ5OGNlOWJkYmM4IGxlZ2FjeS10cnVuaworMzIyMyA1OTJiYWM2YWRmZmMyNTY2NjJiNDlkYWVjNDgxZTFiOGI1ZGI5ZjcxIGxlZ2FjeS10cnVuaworMzIyNCA0ZjY2NDFkZWE2NDU4OTc4ZDAyMTAxOGRkMmEyYjg4OTg3ZTE2ZmY4IGxlZ2FjeS10cnVuaworMzIyNSBhM2ZhMjI5Nzc1YzE2ZDNhMzJiOWZiNTVhNGYxM2Q0MGRkZmQ1MDg3IGxlZ2FjeS10cnVuaworMzIyNiAwZGExNmU4MTQ4MmNmMzNkMGNhOWI4YTQ4ZDIzNmM2NzQwNmUxYzlhIGxlZ2FjeS10cnVuaworMzIyNyBhYWEzYmNjYjE0M2FhZjFiNzcxNTVjN2ExOWI2MmJhMmIxNTY3ZGM4IGxlZ2FjeS10cnVuaworMzIyOCA2YmU5NzAzOWNjMTFmNjI0YTBiYTJjYTY2M2EzZWJiYTFmZGE1YWYzIGxlZ2FjeS10cnVuaworMzIyOSBiNWQ5NWFjZmQzZWUzMjM1ODM5YzcxMzZiMjdiZmNmN2IxYWVjNTlkIGxlZ2FjeS10cnVuaworMzIzMCA2OTZiOTEzMjdlYTIzOGU1MTMxNGQ0MDNhMWIwMjFhMzFiYzBmNjA4IGxlZ2FjeS10cnVuaworMzIzMSAzOTNkNTRlY2Q0M2I1Yjk2ZDQxZWE0ODQ2ZjgwNTZlYTI1OGEyMmYzIGxlZ2FjeS10cnVuaworMzIzMiA3MTYyZjVhYzg5OWFhOTJhNjRiYzQ5YjQ0NWFmZDdjMTJkNmM1ODgxIGxlZ2FjeS10cnVuaworMzIzMyAwMDE2NDU3YmQ5N2E4NWE1YTZjNWMxMTM4NGY4ZjNmYWZiZTUzNTBmIGxlZ2FjeS10cnVuaworMzIzNCAxYTU0ZDMyMGYyOTY0YWE3ODVjMjBkN2UzZGUwMmY5MjdhYWNhNjdkIGxlZ2FjeS10cnVuaworMzIzNSAyMjkxZGEwNWYxNzg0YmZiODUxNGRlNTZiZDkzOTEwODNkMTIwYzBjIGxlZ2FjeS10cnVuaworMzIzNiA3NjdlZjczNzBkMzNjNGQ5MDkzOGM1NTBkMzNjYWQ1NWViNTI4NDM5IGxlZ2FjeS10cnVuaworMzIzNyAyYzA0MzJmY2MyNzA3OWQwMGVlZjIwNzZjMDU2MzI5NmRiNzkzMTA5IGxlZ2FjeS10cnVuaworMzIzOCA0ZGMzODJmZjZmYzc0ZDM1MGQ2MGM2MTE0ZDVlNjY4M2JhOGMxYTFlIGxlZ2FjeS10cnVuaworMzIzOSA5OGNiNmExMjUyY2I2NWIzM2ZjZjgyMDhmMDQwYjIyYmJmNjEzMTJlIGxlZ2FjeS10cnVuaworMzI0MCA2YWM5MTZmOGY4NjI2OGQwODBjZTVlYzAwOTFkNTJkOGM5YWE3M2ZhIGxlZ2FjeS10cnVuaworMzI0MSBmZWI1YjIzNGIwYjVmZmIyNDM2OGI3NDI2YjQ3OTJiOWYyNzE0YjAxIGxlZ2FjeS10cnVuaworMzI0MiAyNDUwMDNjMDA2YTYzN2Y0ZjFkMDhjZjM5NzdlYzE3ZDgyNjIxZTZmIGxlZ2FjeS10cnVuaworMzI0MyBlNGM2YTBkZDVjMmIyN2E3YTVmZTc4NTMyNjVlYmNkMDViMzBhYzU2IGxlZ2FjeS10cnVuaworMzI0NCA3NjU3YTc1MDk0ZjFjMjA4MmExMmVkNTY1OTNhODM3YjM2ZDA1ZTE4IGxlZ2FjeS10cnVuaworMzI0NSAzMWRmNThmYTk4Y2M1NTkxYmMxZTYyMTExYzMyMGZhYzExMTk2Y2UwIGxlZ2FjeS10cnVuaworMzI0NiAwOGQzYzM3MDE5M2RmN2Y2OGRiZjQ2YjM1NDJmZGY4ZTQ4YzllZGQ3IGxlZ2FjeS10cnVuaworMzI0NyBmMDg2ZDdiNDkzYjRkZmNmYTFjNWE3ZDAzZGMzZDgzN2U2MjE1OWIwIGxlZ2FjeS10cnVuaworMzI0OCBiNzU1YTQ2MjAxZjZlNzVjNzhkNGRmOGNhYzYzMDY2MjJhODg3ODlmIGxlZ2FjeS10cnVuaworMzI0OSA5NjVhYTNiNTNhOWQ4NmE1YTNjYzZjNmQyZTZkOWNkZjA4NGU3YTY4IGxlZ2FjeS10cnVuaworMzI1MCBkYjgxN2YzYTFjNjU0NDhhNTU1ZjYyNzNiYWY4MDQ0YjQ0M2Y3NjhjIGxlZ2FjeS10cnVuaworMzI1MSBiOWU0ZjczMjFlMjhkY2ZiMzgyY2EzMzY4MDFjYmYyNDQ0MzA0M2FjIGxlZ2FjeS10cnVuaworMzI1MiAzNTgyNDg5OWFhY2Y4MjBhZTkwYzlhMWE3ODZlNzkyMDlkZGUxOTU2IGxlZ2FjeS10cnVuaworMzI1MyA4ZDYyYzkwNTZmZTE1NDQ0MzA3NmFiYzZjNWQ1YTgwNzhjYzBhN2RhIGxlZ2FjeS10cnVuaworMzI1NCBhYjkyNjUzNGExNTI3NDkwOGVlMmE1MDkzMjFmYTA5MmMwY2ZmZmQwIGxlZ2FjeS10cnVuaworMzI1NSA2ZDU3ZGNiNGZhYWRjYmU5MzM3YzkxMDkzMmFmNjlmOGQ5ZGVlOWZiIGxlZ2FjeS10cnVuaworMzI1NiA4MmM1NWVhOTA2OWU1YjU0OGI3YzEzNjAzY2Y5MTFlZTdhOGU2MmRiIGxlZ2FjeS10cnVuaworMzI1NyBhNDM3NmE5OTdmYjE4YjliOTZlMmI1N2E3ODFiODQzYTdmYTAwMGNkIGxlZ2FjeS10cnVuaworMzI1OCBkMmFmNmJkY2I2ZDBhMjQ0Mzc2NzJiZmE2MzcwZTJjNzE2ZWRmYmIzIGxlZ2FjeS10cnVuaworMzI1OSBhYzA4MjhlZjY4ZjI5YmJkMTE0MjVlM2NhMDcyNGEzNjI2ZDI4ZGY2IGxlZ2FjeS10cnVuaworMzI2MCBjZTcxODQ1N2IxNzI2NTc3MTE3YTAwOGU4ZjBjMjU2ZGMyMjI4MGZjIGxlZ2FjeS10cnVuaworMzI2MSBjNjQ0YmM2MjYwOThhZDdiZjMzYTU4MjFlNzQ1NWU3NGRhZjYwYTdjIGxlZ2FjeS10cnVuaworMzI2MiBjOWQyZjZiZGFhNjliZDRmMzIzMmZlOGZmNWU3NTAyMDU0OGI5ZWQxIGxlZ2FjeS10cnVuaworMzI2MyAzZGQ3YjgyNTU2MTlhYTgyNDRkYjM2YmNkOWZhY2M2MDU3Y2YxZmNlIGxlZ2FjeS10cnVuaworMzI2NCBmZjE4OTlkY2RhMDU5ZGRjYjMwZmVjY2I3MDM1YjJlZWVmOWI5NWE4IGxlZ2FjeS10cnVuaworMzI2NSBiNzU3ZTU4YmM1MjVjMzk4NGU3Nzk3NjA4YTI5ODE1NjQxYTQ5M2RlIGxlZ2FjeS10cnVuaworMzI2NiAzMGMyNmNmNTQ4MDQ5NjczNTI4ZTRjZDYzODc4OTA5YWVhYjBiMzE4IGxlZ2FjeS10cnVuaworMzI2NyBmY2FhZmQ1ZWM2OTU2M2MwYjdkMDgwZmQ2N2UxN2ZmYjc4ZDliYmRiIGxlZ2FjeS10cnVuaworMzI2OCA0MTU0ZTk4ZDE0NzhiOTJkZmM0MGQ4Nzc2Y2YyMWFlZjg2NGFlZGFhIGxlZ2FjeS10cnVuaworMzI2OSA2ZjJhNmVmZDAxOWU0NWY4MDc1MWNlMmJkMGQ3MGQ4YjQ1MjlhN2RiIGxlZ2FjeS10cnVuaworMzI3MCA4ZWE1NDYwNDdmMDExNjMwM2E4NTVmOGU3NmQwODA1MzY0YTM2ZmY2IGxlZ2FjeS10cnVuaworMzI3MSA5MWMxODZhMjE2ZTcwOThjODMzZTExNDFlMjYyMjM0NDM2NmIyY2E2IGxlZ2FjeS10cnVuaworMzI3MiA3ZjhkZGNlODg0OTYxZDRiOTM1MjcwMTUyMGJkZDdlZjVmNTZjZjU3IGxlZ2FjeS10cnVuaworMzI3MyBlMmY4MDc3YTkyNmVlYzJiMjJkZTc0YThjMDIxMzMyOWM2MGMyYTI2IGxlZ2FjeS10cnVuaworMzI3NCAxZDA2YjE0OTllYjkzMmYzN2EyZDRmODcwMGMyZGU4M2I1Yjk2ZjMwIGxlZ2FjeS10cnVuaworMzI3NSBkZTcwZDc3YjNlZWQ3NGUwYzEwZWJhMjg0NWFiNTU5OGJmMzAzMTdlIGxlZ2FjeS10cnVuaworMzI3NiA4Mzk5ZTlhYTAzZTdmZTJlNTY3NGFhMzdiZmJjOWJkNTUxZDZiZmE2IGxlZ2FjeS10cnVuaworMzI3NyA0NmQzMWE2NDljZTY2NzMxYWNmNzFhOWYzMzAxMzMxZWIwNmEyMjQ0IGxlZ2FjeS10cnVuaworMzI3OCBjMGFlZDVlZTExMGJjN2QzYjFlMTY5OWYyMGRlYjk0MDg3YWQyYTc2IGxlZ2FjeS10cnVuaworMzI3OSBjMWVlNjBiZDVkZTQ1YWE3YWYwNDZmYTFmOTYyMWMxMTNkMjU1Y2QyIGxlZ2FjeS10cnVuaworMzI4MCBjMjZmNWJlYzM0MzhhZDlhYzk2NWVhZDNjMWM3M2YzMjczOGU3N2NjIGxlZ2FjeS10cnVuaworMzI4MSAxYTBiZTZlMzY4MThiODkxMmEzZmZhNDI4NGNmZGRiNjExODg5MWE3IGxlZ2FjeS10cnVuaworMzI4MiA1NjYzNjM5NTcyNGQ0OTQ0OWNkMTNkZjk1NTQ5OGNkZjMxYjJkYjZmIGxlZ2FjeS10cnVuaworMzI4MyBmZjZlMjE3MzA5OWFlM2M4NWNmODFmMjJhZmQxZTFjMjJiMzU1ODM5IGxlZ2FjeS10cnVuaworMzI4NCA1ZTY1YjEwZGQyNGQzOWNkMmFjZmNmNzZhNzlkNGYxYjFlYjJhMzM0IGxlZ2FjeS10cnVuaworMzI4NSA3NWI0NzJhYzViN2JlMzJmZDM2NzBhZTYwM2UzYjA5YThiNmEyNTU4IGxlZ2FjeS10cnVuaworMzI4NiA5NGQxMjExNjc1NmFjNzVhOTI4N2U1NmNlYTU5ZmIyMjU0ZWRiMTFmIGxlZ2FjeS10cnVuaworMzI4NyAwOTE0NzRjMDgzMWE3YTI3MmEyYTc3MzBiOTVmYTA2MjlhYjM0ZTM2IGxlZ2FjeS10cnVuaworMzI4OCBkZDcwYTNhYWQyNjY1ZWFiYjUyYzhhNTM2YjBjZDY5YzUzNWIyZmJkIGxlZ2FjeS10cnVuaworMzI4OSAwY2NiMzU2ZTg4YjEyNmY1M2RjM2MwYjM4YjBkYWFjMDZkMGJmZWY5IGxlZ2FjeS10cnVuaworMzI5MCA0MWZiZDkyYmYxYWQ4MDFhMTA5YjcyOWMwOWZlNzBlYzk3MWM4MDdlIGxlZ2FjeS10cnVuaworMzI5MSBhN2JhMTkxMjBmNTQ3NDlmNGY5MGIyNTE5MTViYjJkZDg3Y2I2OThhIGxlZ2FjeS10cnVuaworMzI5MiBhYTllZDNiOWVkYTFjYTM0YWU3MTZiNTIwNTBiMGE4YzcxNzBmMWVkIGxlZ2FjeS10cnVuaworMzI5MyBiNmNkZGZkMzQ4YmExYTU4NWFlODczN2Q5MzQ0MGVmMTRlNTZlZWI0IGxlZ2FjeS10cnVuaworMzI5NCAzZTllYzg1YWM0OWI2ZmY1NWFmNjBkMTg4NDQ3OTlhNWI0Yjc1YTNmIGxlZ2FjeS10cnVuaworMzI5NSBlNTNiYWY5YjRiOTU1MWU1NTg4YzJmYWY0ODkxYjU0M2RhZmRiNjY3IGxlZ2FjeS10cnVuaworMzI5NiA2NDYxZGFjOWE5ZjI5Nzc3YjBkN2Y0OGRhOWU4ODVhZDg5ZTUwZjJhIGxlZ2FjeS10cnVuaworMzI5NyA5YWRkMGUzZTgwNGEwNTk4N2Q0YjhhNjY3MTI5Mjg5YjhkMjE0NzlhIGxlZ2FjeS10cnVuaworMzI5OCA1MTEyZDQzMjEyNmIxNzU3MDQ3NmYzY2VlNTNlYmNiYzU2NmVhMGRlIGxlZ2FjeS10cnVuaworMzI5OSA2MjMxZTFiNWIyMmI3YmVhZDIwMDFkYzI3MzM4OGZkMWQ1MmRhNWNmIGxlZ2FjeS10cnVuaworMzMwMCBlMzkzMDliOWEwYWE2ZDE2NmJjMDlkZDkyNDc2ZThhZGUxYmRhM2I5IGxlZ2FjeS10cnVuaworMzMwMSBiMzM4MjYyY2QwODA3YzQ2NDRmOGYwOTA1NmI4MDE0YzkyNzgzOWU0IGxlZ2FjeS10cnVuaworMzMwMiA5NTBmMDExMzE0MDNlMTU4ZTM1NDMyYmQ4OTUxMjBiZTM4YmM0YzU2IGxlZ2FjeS10cnVuaworMzMwMyBmNDllODYyZmVlYzRkOTE3OGQ0MjQyYmU1MmMwMjZhOGM1YmZkYzI5IGxlZ2FjeS10cnVuaworMzMwNCBiZTg5MTI1NjQzZjI1Y2Y5MDE2MGEyOWYxNGFmZjZmNWJlZWFiY2ZjIGxlZ2FjeS10cnVuaworMzMwNSA1NGViMmNmMjY5N2U2ZTUzNGU1MjgyNmQzNWJhNTk0YTgzOTAxZTM2IGxlZ2FjeS10cnVuaworMzMwNiBlMDg3NzIyNmQ2MTM4ZTBlZDQ5MTMwYjQ3MzJlNDM2ZDM4NDZiYzlkIGxlZ2FjeS10cnVuaworMzMwNyBlNWNlOWQwNDA4ZDBlNTZmN2Y0MTY4N2Q0ODUwYWVlNmYzNjhlZTZkIGxlZ2FjeS10cnVuaworMzMwOCBmMjBkZTEzMjI2OTIwZDkzOGE3OTExMTBhNmY0N2NjMzRlNjcxYzY5IGxlZ2FjeS10cnVuaworMzMwOSBiYjc2NjVjNDQ4MjI2ZmI5ODIxMmVjNTZkYWFkODgwZWQ4OTEwZjNiIGxlZ2FjeS10cnVuaworMzMxMCBhNDE2NDkzZDNhNGMyZjNiMjQ3MWZiMGI5MGQ4OGQ2YzYzYzk3MzAyIGxlZ2FjeS10cnVuaworMzMxMSAzYzZhNTJkMjU0M2RjMmQwNTJiMDVjY2QxYjNkMDI3OTY1NzFjMmM1IGxlZ2FjeS10cnVuaworMzMxMiBmYTYyZmIwZTU1YjJkODliZmZmZjQ2ODA3MjhhYWQzYzI5ZDU2MDQ1IGxlZ2FjeS10cnVuaworMzMxMyBjNzJlY2RiMzNhZjc1NzkxYmM0OTZiZWI4ZmM5NzNhZGQ3MGFhZmNkIGxlZ2FjeS10cnVuaworMzMxNCA4NDY3YjExOTM1MGJlYmM2Nzg0ZDc2OTU0ZmY3Mjg3ZDZkOGZlYWE0IGxlZ2FjeS10cnVuaworMzMxNSAxOTRhZjA0ZDM0NGIwODA2Yjk0ZTAxMzIyYmI2ZDA2YTYwMTQ1ZDI2IGxlZ2FjeS10cnVuaworMzMxNiA2NWU0MTk5YTc5ODJmYjE5YWUxZWYzMmI1N2FhMTdkZjMxMWFlNmEyIGxlZ2FjeS10cnVuaworMzMxNyBkNDQ4MGMwODQ0NGRjNWI2MzY0NmVmMDRkMTg0M2Q2ZmMzYmNmMWQ0IGxlZ2FjeS10cnVuaworMzMxOCBlODJhYzQ1MmQ1NTFkZDdjZjk1MjNiN2UwY2QwYTBhMzBjODc2MmU4IGxlZ2FjeS10cnVuaworMzMxOSAyOWQyZWYwYzk0Yjk1MDRkYThmODA5MjU2NGM3YWI2YTk4MTgyODY0IGxlZ2FjeS10cnVuaworMzMyMCAyM2ViMjc3MzFkOWNiMzJhZDlhOTRiMTJlYTY4OGU0MjRkNzRmZTk1IGxlZ2FjeS10cnVuaworMzMyMSBmMGViNzdhYmYyNDQzNmJiY2Q3NDZjOTAzMzcwNjk0ZDcyMWFjZjljIGxlZ2FjeS10cnVuaworMzMyMiAxMjA1MThlZjM2ZTMzYTQ3YzI5NGFhOWUxOWI2ZjVmZjBiN2Q2M2I3IGxlZ2FjeS10cnVuaworMzMyMyBkZWRkNDRlYjczNWIzZjE2NTEyYjRlY2RmNjkzZWFhODBmNmQ3OWFmIGxlZ2FjeS10cnVuaworMzMyNCA1MjQ0ODI3ZGQ0MjM4MTdhODBiYTU2MjQwYjZlMzFlZTExOWQ4YjNkIGxlZ2FjeS10cnVuaworMzMyNSA5YjdmOTBmOWYzYzE1Mjk5NmViYTZjZTk0MGIyM2FhNzgxY2ZiOTNlIGxlZ2FjeS10cnVuaworMzMyNiBmYWM2MmJjZDNiYjhkZTFjY2UzZDY5ZjMxY2U3Zjc4YTNlM2EwNjczIGxlZ2FjeS10cnVuaworMzMyNyBlZGRjNTRiMWQ5YWI4YjY3NTk3M2MwNWZjODQzNTYxOTBmNTM0YzRmIGxlZ2FjeS10cnVuaworMzMyOCBmMDc4NGFlMWZmNWNhY2FmODY1ZGQ2ZjNiMTRlMDVjNTUyYmUwN2U3IGxlZ2FjeS10cnVuaworMzMyOSBkOTkwYzJiOGExZTZkMDliMDQwNmQ3Y2IzYjM5MWQ4OWFmNjFjOWRiIGxlZ2FjeS10cnVuaworMzMzMCBhN2NmMjBjODQ1YTNhNDZlNmMzNjU1M2IxN2Y1NWNjMTUxNWVjMmZjIGxlZ2FjeS10cnVuaworMzMzMSBhNDdlMGM5YmFhZDAwODI0OWNiOGQ1Yjc2YWUzYzEwMzIzMjk3NWUyIGxlZ2FjeS10cnVuaworMzMzMiBjMDFjOTVlZjFmYmRhODg0YjQwMDJmOGEzY2JlMWMxZDNjYTY0OTk4IGxlZ2FjeS10cnVuaworMzMzMyA1NzQ1ZTU1ZjJlMjgwZjEwOTg0YmU4OTJmMzEyMTBiNzE5YTFlOTlkIGxlZ2FjeS10cnVuaworMzMzNCBiYjU0ZmY0MTM0OGY4NzliZTE4M2YwYTU4NWNlN2RhODg2Mjk1OWUxIGxlZ2FjeS10cnVuaworMzMzNSA5YzFhZTYwN2QxMzUzODA2ZWFhYmI3Y2IwMTdjODY5NTc1ZjIyZTc0IGxlZ2FjeS10cnVuaworMzMzNiBlNzFiNjQ3ZmEzMzU2ZjUwY2Y0ZDI4NTRkMjZhM2Q1Y2VkYTNhZmMyIGxlZ2FjeS10cnVuaworMzMzNyA5NTUyMTJlZDUyZDM3Yzc0N2Y5NzZkZTE1NzE2YzEwOThhYmI0ZDRkIGxlZ2FjeS10cnVuaworMzMzOCA4NjA0YzM5NDk4MDlkNTEzMWYyZWQzMTBkN2UwNzE1YjQ0ODM4ZjQxIGxlZ2FjeS10cnVuaworMzMzOSA3MTdlYTE3Njc0MzBiYWRhODIxOTEwZjAwOGYyZjBhNzJjNjhkMjcxIGxlZ2FjeS10cnVuaworMzM0MCAyNzE1NGEyYjkyNDQwMjcwMzBjZTgzNDVlYTgzNTU0Y2ZkZGE2ZjVmIGxlZ2FjeS10cnVuaworMzM0MSA1MzNlMzZkZTFlNGRmNjE5NWM1ZmE1N2NlNWY0ODZiOWJlYWUxOTNjIGxlZ2FjeS10cnVuaworMzM0MiBmOWJiYjAxMzg4ZDViZjNjYjhlNzFhZjQxM2QzYmFlZWMzYmNlYWRjIGxlZ2FjeS10cnVuaworMzM0MyA5YWU2NWVlMDk3MzVkMDcyMmE2M2RiMzg4MjI4MmFlZDE5NzJhMzk0IGxlZ2FjeS10cnVuaworMzM0NCAxZDZjYmViMjcwOTYyNzJhOWNlZDM4MTVhZjFhMGNiNjExNmQyMmRmIGxlZ2FjeS10cnVuaworMzM0NSA5NTBjZDM3ZmNkZGM1NDc3ZGJjYjA4Y2YyMjhjN2Y4MDAxOTkxYTFlIGxlZ2FjeS10cnVuaworMzM0NiA2NGNmMTkxZDIxZDA4YzkzMTJmOTRhMGU4YWY1MGQxZTNjMjdmMDE0IGxlZ2FjeS10cnVuaworMzM0NiA2NGNjNTQzOWUxMGE2ZmRmOTg0ZWZmYWYwMTQxZTk0ZmE0Y2MxMDA0IGxlZ2FjeS10cnVuaworMzM0OCBjZjhkZGIyOWUyNmVkYWZhZWEwYjUwZmIyZjhiNGFiODUyMmUxMjM5IGxlZ2FjeS10cnVuaworMzM0OSAwZWZlZjk3ODVhMjVkN2Q5YWFlMjVlYTEyYTAwYWE4NDE2ZGFjMTkxIGxlZ2FjeS10cnVuaworMzM1MCA5NDdmOGEzNDdjNGYxNzg5ZThjODkzN2UxZDU1ZjRhOTM3Nzg5NjU1IGxlZ2FjeS10cnVuaworMzM1MSA2YTA3N2MyOTM5ODZjMGFkNzk3MWNiZjRjZTZjMTg0NjA3Yjg2ZjZmIGxlZ2FjeS10cnVuaworMzM1MiA1ODRjNDE0MmM1Mzc5ZjNhNTM3YjI3YTk5NTNjOTA2MmVmMmNhZjVlIGxlZ2FjeS10cnVuaworMzM1MyA4NDdjNDgzNTYyOGZhOGYxMWIzOGZkMjg5YTcxMjkyMmU0NjAzYjM3IGxlZ2FjeS10cnVuaworMzM1NCBlYThkNGNjZTc4MmJiZmFkZjBlMmM5MTVjODJkYjI2MmY0OTdjYTFmIGxlZ2FjeS10cnVuaworMzM1NSAzOGYwMDU0ZjQ0YTcxYzZmNzkwMWQ1YmYxMDQ1ZTUzNDljZTczNDE2IGxlZ2FjeS10cnVuaworMzM1NiA3ODQyODI0M2ZlYWE3NTIwOWRhN2Y5OTZkODA2ODhhNWE4OGRhMmZjIGxlZ2FjeS10cnVuaworMzM1NyBiN2FlZTc5OWRjNzE1YWQxYjg0ZmFmYWMzNWVhNzc1NWY5MDc3YjAwIGxlZ2FjeS10cnVuaworMzM1OCAzMTA1MzIwMTVhN2QzNTliZmU3NzYwYTU1YWM0MzhiNGVmMTA4M2I0IGxlZ2FjeS10cnVuaworMzM1OSBlMTIwOTM2YTBjODdmOTUxNWMxNDAxOGFiYmU2ZWQxYTFkNzM2MWYxIGxlZ2FjeS10cnVuaworMzM2MCBjZTY3ZDkxYWRmNWU3ZTA2NWRiMzVhYTBkZmRiZDM0NTkxMjRmZjczIGxlZ2FjeS10cnVuaworMzM2MSA2NzVhMDI4MjBkNjZlMTQwZTJhNTU4M2RmNjI5ZTgyYWJlNzU0ZjY0IGxlZ2FjeS10cnVuaworMzM2MiAyOTM3ODk3YTdkOGIwMzg3OTM2MDg0ZjQyNGM2OWFiNWEzMTNhMjhmIGxlZ2FjeS10cnVuaworMzM2MyA3MThmMWQ5YmNiNTA0ZjI1NWNmNzM2ODE5NzEzNWE4YWRmZDQ5NDk1IGxlZ2FjeS10cnVuaworMzM2NCBlODIyM2QwYjcyYWM1MTk2MGJmMDkzMWU5NmMwMmFjNTcxYzFkN2I1IGxlZ2FjeS10cnVuaworMzM2NSAwZDc5OWQzYzQwMzZlN2Y4YjE2OTUwMzdhM2U3MjgyNzE2NWJiNWNmIGxlZ2FjeS10cnVuaworMzM2NiBkMDIyMjFlYmFjMmFkN2M4YjA5MThkNzk2NThhYWRkZjY1ZGVkMjFiIGxlZ2FjeS10cnVuaworMzM2NyA4MzFkODJhYTRkZDA4MTg5YTE4ZjAyMDEzNzk1ZThjM2QyNWIxOTQxIGxlZ2FjeS10cnVuaworMzM2OCAzNTczZWY0MjFiZjQxMTA3YmY3MTk5ZTVlYWYxYjFiNDljM2MxODhlIGxlZ2FjeS10cnVuaworMzM2OSBlY2ZiYzI0NmVlYWExMGM0ODM0MzVjN2JkMjJmNjgwMWI2MzUxNmEyIGxlZ2FjeS10cnVuaworMzM3MCAzZDFmNzA4NzlmMDMwNDE0YmFkZDk4OWQyMDU1ZDI1NWNlM2EwOWMwIGxlZ2FjeS10cnVuaworMzM3MSBiNTY0YmQ0ZTU3ZTEzNTM0NDk3MDE5NTU2MTU5ZDVmNDdjYmI2OTg5IGxlZ2FjeS10cnVuaworMzM3MiA5YjE0YTRkODkyMDczYzYwODlkODJlYjlkY2JmNDM4YzkwZWI4YmNjIGxlZ2FjeS10cnVuaworMzM3MyA5ZmU3ODNjYTk3NmUyZjkxYWZlNzYwNjIxYzk5ZjQyYzg4ZWQzYTVjIGxlZ2FjeS10cnVuaworMzM3NCBiYmVmMjQ3M2U1NjhkMjkyODcxODEwZWM1NmJmNDM1N2NmZDA3YWY0IGxlZ2FjeS10cnVuaworMzM3NSA0MDY4NjBkZmFhYzc4YjYwODE0YThlNzYyMjFjYWFlYjA2ZmNmZmIxIGxlZ2FjeS10cnVuaworMzM3NiA1YTQxMDk0NDFlYWUwMDk1MTI1OGJjOGFjNjAxNjkyZWFiZmIwODFkIGxlZ2FjeS10cnVuaworMzM3NyBmYTZjZTdmNTNhYTUwMThhOTBlOTA2ZmFiMjZkZGJmNDQ3MGE4YTZmIGxlZ2FjeS10cnVuaworMzM3OCA0MTZhOGE4ODZhODJhYTJkM2Y1NmVhOWNlNWMyMzk4NGQ3OWMwMzhkIGxlZ2FjeS10cnVuaworMzM3OSA5ZDZjZjUyOWJiNzFhN2Y0ZmU5OTc1OWRkNjc3NzBmZmMwNTU1YmJkIGxlZ2FjeS10cnVuaworMzM4MCA0OTJmNWUzZTY0OTU1NThkNThjOGI5NmZkNWQ4MGMzNjdjYTk4MTNiIGxlZ2FjeS10cnVuaworMzM4MSAxZDdhNGVkMGM5ODVmNWVmODIyMzRiZjVmZmM5ODQ1OThjNDBiN2ZjIGxlZ2FjeS10cnVuaworMzM4MiA1MTIyM2NlOTVhNjE5ODY2MWM5YTI4MzMyMDgzODRjOTY5YzEyZWE0IGxlZ2FjeS10cnVuaworMzM4MyA2NGVjN2JkMmU4MzczN2E3M2ZjODhiOGIzMDMxMTllMGRiYzgxMGMyIGxlZ2FjeS10cnVuaworMzM4NCA4MmY0YTZhMTk2NGRlZjYxZWQwMjQxNjc1OWIxMjI3ZjQ0NzFlYmYyIGxlZ2FjeS10cnVuaworMzM4NSBhZDZkNWMxZWY1ZTYxYTI5MDA2ZWI1OGZmYzI4ODgyMGVmMTRiMzJiIGxlZ2FjeS10cnVuaworMzM4NiBjZTdhZThmODFiMDYxODI0NDEzMzhmYjkwNjVlZDVjMzJkYTcxN2I2IGxlZ2FjeS10cnVuaworMzM4NyA1YWU0YThjZjc5ZWYzM2ViNWMyOTk3MzNlMzY5MDgwMzc4NmMwNGQ0IGxlZ2FjeS10cnVuaworMzM4OCA3ZTI3NjU5ZWIyZDk2Njk4MWI5YjkyZmU3ZWE3NjkzMjc2MjkwNTQ4IGxlZ2FjeS10cnVuaworMzM4OSAyNzUzZTJjOWFhMjFjOWI2YWE4NGU5MDU2OTJiOTA2ZTlkZDFiZDFmIGxlZ2FjeS10cnVuaworMzM5MCAwNjU5YjYzZDYwNDQ3ZDYzMzZlZWQyY2E2OTk0MTM3NzIyZDBmZGRlIGxlZ2FjeS10cnVuaworMzM5MSAyMDI2ZWMwMGVmZGNmNDBjNzVjYzAzNTljM2NhYmZiM2IyYTNkZjJiIGxlZ2FjeS10cnVuaworMzM5MiBmMDE4ZDFkMGU5MWE1ZGY3N2I0MTk5MjNlOWU3N2UyZDAwMmIxMzdmIGxlZ2FjeS10cnVuaworMzM5MyBkY2U3YTRjYmFjMTEyZmVlNTg5YTI4ODM3YzMyMjYyMmI3NmI4Y2ZjIGxlZ2FjeS10cnVuaworMzM5NCBlMGY3ZmY4NWZhMDY1MzgzNzcxNDQ1Y2QzYjEwZDRlYWZmZDc3MWFkIGxlZ2FjeS10cnVuaworMzM5NSAyNjg4ZjliZWJkOWE1YTVjYWE2YjU0NzU1YzljN2U0ZDliNmI1NjNhIGxlZ2FjeS10cnVuaworMzM5NiBhZmNiYTg4YzZhY2I3N2RlZmQ4ZDliODdjNGFmZDAyZWE4OTM4ODllIGxlZ2FjeS10cnVuaworMzM5NyBiM2U2YTQzNWM0OGZlMjdiZGNmZThjOTU2YmE3MGNlZmY0MDI2ODBjIGxlZ2FjeS10cnVuaworMzM5OCA1ODZjOTI4YzY1ZDM0ZGU4Yjk3ZTkzMDM3MGEyNWIxNmMwY2Y3NTc4IGxlZ2FjeS10cnVuaworMzM5OSA4N2VkMDBhNjJkMzEwMTM4NTNjNWYzZDMwODA0ZDYzOWI5ZjZlOTcyIGxlZ2FjeS10cnVuaworMzQwMCA2ODA0MDZjNDE1MzkxNmViYjRkMmJiMWY0M2JlOTg3MzhlNjg4ZTBlIGxlZ2FjeS10cnVuaworMzQwMSAwNTU4MGUwMGY0MWUyYzc1ZDc5Y2ZlNjcwNGU5NmI2ZDA4MTVlNzBkIGxlZ2FjeS10cnVuaworMzQwMiBkNDI2YzVkNTkyNTRhNTAxNjRkNzk3ODJmNTM1ZDQxZTUzNDU5ZWFmIGxlZ2FjeS10cnVuaworMzQwMyAwYzY1N2RiMjdkYmY2NGY5Zjg4ODRlNzBmYjgzN2YyMzM2YTNjMzA5IGxlZ2FjeS10cnVuaworMzQwNCBlNjAzNGVkYzQ3YWU1YzJlZDc1YTI3ZTNjNThmNTY5MGQxZDZiMzIxIHVubGFiZWxlZC0xLjkuMgorMzQwNSA1YjhlYzhmNzExY2VmMTA3MDgxY2NmYmM0NDJmNDU2NWMwYjBkZDg2IGxlZ2FjeS10cnVuaworMzQwNiBhNzU5M2JhOTlkY2JhYmRlMjQxNjBlNWEyZjVlNzBiODZiZTdmZDdkIGxlZ2FjeS10cnVuaworMzQwNyBlNTU3MjRmYmMyYWY3YjBlMTE2NzE1MzkzZDU2MzMyYzg4ZWQzMzhhIGxlZ2FjeS10cnVuaworMzQwOCA4ZjI0NmM4OWRkY2ViOTdlZTc3ZmU2ZWZiOTBjOWI3NzY0MmY3OGY3IGxlZ2FjeS10cnVuaworMzQwOSA5MWE3NzA4N2U4M2YyMWM0ZTUyY2NhNjg3MzQ5NTUxODdmNTA4NTVjIGxlZ2FjeS10cnVuaworMzQxMCAxYTZiYTIzYWU0NDdhY2FlMGE1ZGE5NDM5MGNlN2NhYjk0OTgzODBjIGxlZ2FjeS10cnVuaworMzQxMSA5MTFiODAxN2RhNDZiNjMyOGYyN2M1NmRmZjFiM2EzNjFhNTYxNTMyIGxlZ2FjeS10cnVuaworMzQxMiA2YjNiNzVmMDdjYmI3YjgyNmUwYjYxNzNjZGM0ZmU5Y2U5MDkyNzAzIGxlZ2FjeS10cnVuaworMzQxMyA3OGNiMGFjY2ZiMGNlZjI5ZmZhMDA3ZmM5NDM4ZWJhOTQ3OWM2ODZkIGxlZ2FjeS10cnVuaworMzQxNCA5MWMxZjk0YjE3YmMxMTdhODFiZmY2YjEyNjNlNGMxN2JjNTFlZjc4IGxlZ2FjeS10cnVuaworMzQxNSA0OWE3YTNjM2Q4NTA4OWNmMDg5NDI4ZTU5NmU1NmU1YTNiZWQ0YmYwIGxlZ2FjeS10cnVuaworMzQxNiBjYTE3MjhjNGJkNzg4NDZmNjJkZjc4MDcyYTY3MDc4MzY5M2JmZjRlIGxlZ2FjeS10cnVuaworMzQxNyBjNGNkMGQ5ZDgyODFkYjUzMDk2NTAwMDcyYmEwNDdhMWQ3ZThiNDRhIGxlZ2FjeS10cnVuaworMzQxOCA2ODViMzFmZTg5YzYwZDAyNGE4ZGEwM2NmYWU0ZjVkYTgxMDBiNzE5IGxlZ2FjeS10cnVuaworMzQxOSBiYmNlYzI0YjI0Mzc3NmQ5YmE0MjM5MGI3NGQxMTQxNGMxN2JmMzNmIGxlZ2FjeS10cnVuaworMzQyMCA0OTYzMDEyM2EzZjM0MDM3ZThiYmZhMzFjZjVkN2RkOWJmYmIyNTgzIGxlZ2FjeS10cnVuaworMzQyMSA3YWE5NjEzZmZkMzYzMTM2MjBlOWQwMWQyYjlkZjIwNTY2OWUwZmVmIGxlZ2FjeS10cnVuaworMzQyMiAxY2FiYzJiNmM5NzAxYWVhMjliYjUwNmI1OTM5NDZlNjdiZjc1OTNhIGxlZ2FjeS10cnVuaworMzQyMyA2Yjg2ODhlNmE3ZWQ2ZWM1ZjYzNzIzNjljYmI3NjQ3M2ZjMWI3NTMzIHVubGFiZWxlZC0yLjMuMgorMzQyNCA2ZDgwZTFmOGY3MGE1ODBiNzg5MDdhZmZhNDU0ZmU1MTc2MGJhMDIzIGxlZ2FjeS10cnVuaworMzQyNSA0NWQ3MDg1MjExODgxOTU5Y2FhNTZjZjI2NTMwMDFiMjNlMWJmMzIwIGxlZ2FjeS10cnVuaworMzQyNiBiMTIwY2RkMzBmYmNhNTkxYTQ0NzNiZDExZGMwZTI5YmVlMTMxN2FjIGxlZ2FjeS10cnVuaworMzQyNyAyYzUxNWYwNzM2N2FkNDE0N2UxYWEzOWJiZTM3ZWQxM2MxZTIxNmNmIGxlZ2FjeS10cnVuaworMzQyOCBmODIwZTY5MTdmMDdlNTAxMmJkZDEwM2VmOTczODkzMThkNWExMGY4IGxlZ2FjeS10cnVuaworMzQyOSA2NWExZTRlOWNkNTQ2YzRlNTc4NzMwYTg4ZGRhZjIzNGJlNGQ0MDQyIGxlZ2FjeS10cnVuaworMzQzMCA2YzU4ZGMxZDJmOWQyMDhhOTEwNmQ0NDQ4YzI5YTlhNmI2YzMzODE0IGxlZ2FjeS10cnVuaworMzQzMSAxODExZTk2MDgwZDQ0MjJkZWViMTlmOTE5ZGVlYmM3YjZkM2Y0YmUwIGxlZ2FjeS10cnVuaworMzQzMiA4OWU0YjE2NjYxNzg5Y2IzNjhlNDhlM2RlOTExODY5ZTM5NGZlMTAyIGxlZ2FjeS10cnVuaworMzQzMyBkMDJjZTMwZDdkZGJjODdiZGU2MzMyMDlmZGFmY2IxMmJmYWUyOGI3IGxlZ2FjeS10cnVuaworMzQzNCBmNWY3M2M5NDYzYTg2ZDI2NzlhNjY5MjQ3MmE3YWJkN2UyN2E2MGNmIGxlZ2FjeS10cnVuaworMzQzNSAyODk0ODE4MWZiMmY3OTVmOGVmZmE1NjE0NDg2MzZhYjcwMTQ0NWVjIGxlZ2FjeS10cnVuaworMzQzNiAxNDM2OWE1ZTYxNjc5MzY0ZGVlYWU5YTlhMGRlZWRiZDU5M2E3MmUwIGxlZ2FjeS10cnVuaworMzQzNyAyOTE5YjQ0OGUzODU4YTEwOGU3NGI5NjJiNzQ4MDllMTc2MmFmNWJjIGxlZ2FjeS10cnVuaworMzQzOCA3Yjc0MTFmOWIxMTZmMDBjMjM0YTMyODZlMjZmM2NmYTY2YTBkZjcxIGxlZ2FjeS10cnVuaworMzQzOSA2OWEwNjZiNmIxZmY0YWY1MTE2MjY1ZDY5YTQxM2QxYmZjM2FkYzg4IGxlZ2FjeS10cnVuaworMzQ0MCAyYzc0OTYwZDZhZmVmMTM2ZjlhOGI0MTE3ZjVlMGFjNWJjZTRjN2NlIGxlZ2FjeS10cnVuaworMzQ0MSBiY2E3MWYyZTJjYjRlZTY2NDYxOGQwNTBjMTdmZmQ3ZjI4MDE2YTM5IGxlZ2FjeS10cnVuaworMzQ0MiBmNzZiN2JhOTlkM2VmYjUxNTIzN2VkNzQ3YmNjYjhkZTc0NDQyZTU5IGxlZ2FjeS10cnVuaworMzQ0MyA4NzE0NmRjMWY3OWM1YjdjZTk4MGFmOGFmNzJiYWMxZGNjZmNiOWYwIGxlZ2FjeS10cnVuaworMzQ0NCAzY2E0NTZmNDRiZjNlZjM2YTk3NGRkNzVlOGFkZGI5YzdiNWI3NGU1IGxlZ2FjeS10cnVuaworMzQ0NSA5ZTQyMDZmNjRkMWI1MTQ3ZmQwN2UzMjcxMjZiNmMyYmJlNjg5ZTFmIGxlZ2FjeS10cnVuaworMzQ0NiBhZjI3YTgzMDBkMjQwOTRhYWZhNmVlNzQ2ZGU1NTY3YmE5YmNjNDQ3IGxlZ2FjeS10cnVuaworMzQ0NyBjNjBjYjA1OWM0ODFlNGE5NGQ1OTQ2NDY5ZDQyOWEyOWFhZmY4YjVkIGxlZ2FjeS10cnVuaworMzQ0OCBlMDQ2NGU3MTE1Y2EyYmY5YzgwYzk1ZjQ0NmE2ZDY0ZGZmMjgzZjAyIGxlZ2FjeS10cnVuaworMzQ0OSA5MTgxZGE0MDY5NzhjODFkZWQxOTAyYjk0YTBjZDk2MmFkMzE5MGI5IGxlZ2FjeS10cnVuaworMzQ1MCBkYmNlNzJhZmUyNjE1MTZkMzU2M2NkMTcyMGZhYzIzNjk2OGRjYTczIGxlZ2FjeS10cnVuaworMzQ1MSA2ZDdmZGVjOWQ0OWUyODQzYjQ3YWU2MzQ1MGQ2MDlmMzQzNTc0NjU5IGxlZ2FjeS10cnVuaworMzQ1MiAzM2YzZDdlYmZjYzFiMDFlNzE2OWI3NjMwYWVkZDU3NmE4YzY3YWQ2IGxlZ2FjeS10cnVuaworMzQ1MyA2NzNkZDliYmRiZjE1MTFhZTkwMDkyNzAxYWRmOTIwYTc2M2EyNjMwIGxlZ2FjeS10cnVuaworMzQ1NCA5ZmVkNTcyNmEzNmQ3Y2UxMzU1YzMwNTkyODM4ZDkzMzIxZDU4MGVlIGxlZ2FjeS10cnVuaworMzQ1NSA0ZDI5MmM3ODU3ZDQ3NGZhZTVlYzkwOWVkZDQzNGJjZWQwOGI4MzY0IGxlZ2FjeS10cnVuaworMzQ1NiA3OTcxZmVjYmYyOGU3ZTFlMDk4YTc5Nzk2NGE2ZGMwMDNmOWVjNDg2IGxlZ2FjeS10cnVuaworMzQ1NyA1MTdkMjllYmM4NDBkZTQ1YjNjOTQ1NjA5M2Q4NDJhMWIzMWMxM2JiIGxlZ2FjeS10cnVuaworMzQ1OCA1N2I4MGI5OGI4ZTUwNzUyY2E0NTc3MDQzZDg0N2FjZGNlYTkwOTVmIGxlZ2FjeS10cnVuaworMzQ1OSBhYzNjODBhYmJmNDMwMDM0OWM1ZTZlMzM4NTMwYjI5YWUwZmEzNjA0IGxlZ2FjeS10cnVuaworMzQ2MCA2NzI2MWM3OTJmNGMxNGZiY2IxM2ZmYjBiNTFhODM2YzJhZDUxMzBhIGxlZ2FjeS10cnVuaworMzQ2MSA0NzczZDVjM2I1YTQ2ZGUwZjZjZmRiYzZjMDNjMTRkMjdlOTQ4ODViIGxlZ2FjeS10cnVuaworMzQ2MiBjM2QwOWY3NmQ2YmY0MzhmOWM3YjEzZmM2YjExNmYwYmQ1ZWY4MzkxIGxlZ2FjeS10cnVuaworMzQ2MyA5MjM0Yzk2MWVjNDNjYTI4NTdlMzgxMDMyNjcwZGU5NDUyYTVjOTg0IGxlZ2FjeS10cnVuaworMzQ2NCBkZWE3NDQyYzVmODdjNmUxZDBhMDlhZWY1YjFiM2VhYTg3Mjg4NDc0IGxlZ2FjeS10cnVuaworMzQ2NSAwNGE3ZjliZjFlNjcyYzRmN2RlNTI3ZTg4OTA0NWU2MzNkMGQwN2FiIGxlZ2FjeS10cnVuaworMzQ2NiBjNjRhZjU2NzFjYzY5NWU2MmIzNjRkNDMyMDIyMWY5YThkOGY2ZTU0IGxlZ2FjeS10cnVuaworMzQ2NyAzOWM3NjZhNmVkNWY5ZGFiMjI5NjRlOTFkMTI1MDc4ZDgwZjQ1OTRhIGxlZ2FjeS10cnVuaworMzQ2OCBjZWY1MTRmOTk3NGM5ODNiZGZhZjFlNmZmNjI2NTViYzY5OWQ0MTFmIGxlZ2FjeS10cnVuaworMzQ2OSBiY2E3ODU1ZDhlMDkzZjA5ZjU1Y2IwYTBmMmI5MTBhYjY3ZmUzMmU0IGxlZ2FjeS10cnVuaworMzQ3MCAyMDkwNTVlNWU0NmE0MGQyMjZjZmY1YzQ2MjM2YzgwNWM5MTI2N2Y0IGxlZ2FjeS10cnVuaworMzQ3MSA2ZTM3YWYzZjI2MWMzOWI5MmZlNzIxZGFiNDQyMGI5Yzk3NDFmNTFjIGxlZ2FjeS10cnVuaworMzQ3MiA5OWQ5ZTdlOWYzNzY3ZTg5MTQwMGJkMzhiMDRiZTE1NWRhOGIyNTJjIGxlZ2FjeS10cnVuaworMzQ3MyBjZmY3YzQ4ZmE5ZTE1Y2VjNjgwNTlhNzU5MDdhYmI0NDJlZWIzZjViIGxlZ2FjeS10cnVuaworMzQ3NCAxZThiZDM1NGI2NzYxMTJkOGIzYTg0Yjg3MmQ3MjdkOWFhNjNlMDRlIGxlZ2FjeS10cnVuaworMzQ3NSAwMmMwM2FmYzUxM2U5NWYzMTc4ZTk3N2VlMjBmMzY1ODEwODM4Yzc5IGxlZ2FjeS10cnVuaworMzQ3NiA3NDdjZTdlMzYwODQ0YTMzZWMxYjJhZWJiZTg4YmE2NTQwZTBmMmFkIGxlZ2FjeS10cnVuaworMzQ3NyAwODMwY2YyYmUxZDJjNTkyN2NjMzNhZTQyZGY4ZGM2ZDk3NmU5NzY4IGxlZ2FjeS10cnVuaworMzQ3OCAyZjY5MWRjNTRiZmE2YTg4NTVhNjQyOTQ0ZWVkNzQ4YzYyOWVhOGQzIGxlZ2FjeS10cnVuaworMzQ3OSA2ZWUzODAzNDljODQ5MDIzMjk3N2Q1MWJlMjk4NGZjNTY3NDNkMTEwIGxlZ2FjeS10cnVuaworMzQ4MCA5MThiZWU5MGY3M2UxNTIyZTE3NjY0MTk4NDkxNWE4MmZmZGExZmI4IGxlZ2FjeS10cnVuaworMzQ4MSBhY2RjMGI5YTZjNzg0OGE2OTM3YWI3OWNmZjRkOTBhNTU4ZGQ4OWM1IGxlZ2FjeS10cnVuaworMzQ4MiAyZjNmMjkzZWY1ZjE1NTk3NjkwMDcwY2RlOTUxMWU5NDg4YjdkZTUxIGxlZ2FjeS10cnVuaworMzQ4MyBlYzMxMmI2NDdmY2JmYTg5OGZkZGE5NzQ5NGI3NjNjYzhjZDZiYzMwIGxlZ2FjeS10cnVuaworMzQ4NCA5MmU2YThjZjE0YmVlNjU1NjVlZjhhZDZlOWJiMTlmZDg3OGQ5MzUxIGxlZ2FjeS10cnVuaworMzQ4NSBjZDM5NzI2NmRjMWM4ZTFlMThkMDJmOGQ5ZmU5MzQyNTdlYjM2MDlkIGxlZ2FjeS10cnVuaworMzQ4NiA3ODc0MmIzZmRkNDRiYTkwZTI3YzNlOWUxYWM5ZTRmYmMyOTYxNTNkIHVubGFiZWxlZC0yLjE2LjIKKzM0ODcgOTA3YzM5OTZiMTVjMmM4NTU0YjA0MjFjM2MxOWU2OWJlZmUyNTQ4ZCBsZWdhY3ktdHJ1bmsKKzM0ODggYTgwNjc3Nzk4Zjg0MjA0YjFmODM1NjBjZjEwOGU2MTRiYWI5ODVhOCBsZWdhY3ktdHJ1bmsKKzM0ODkgZjNjOTA3ZWZlNWQ3MTAyMDJiZTY4ZjZkZDQ1YTU4YTJiODMyNmE4NiBsZWdhY3ktdHJ1bmsKKzM0OTAgZmU3NjU4NWM3NDhlOGVhM2Q4MmRhODY2Y2U2YjZlMmEwNjE5NjNjNiBsZWdhY3ktdHJ1bmsKKzM0OTEgNzE2YmU3NjVhNzliMmJjNmQzMmQ2MTNlZTM5MDk3MTUwYTdiYzZiZCBsZWdhY3ktdHJ1bmsKKzM0OTIgMjVkMWM5OTMyNTU4MjJhMDczNzZhNGI2NzIyYjZiZTg2NTYyMDhiZiBsZWdhY3ktdHJ1bmsKKzM0OTMgZTVkMzYzNTQwMTc5ZjllNmM5N2YxYThlZWYxYzFkMjhhZTc3ODk1NiBsZWdhY3ktdHJ1bmsKKzM0OTQgOGEzNTc0YTA3YjE4NWQ1YmMyY2QwZDM5OTM5OGNlYWNlNzRjYmE0ZSBsZWdhY3ktdHJ1bmsKKzM0OTUgZTJkZWNhOTgzMDA4MmI3MDM5Y2Q4NGI1N2M4MDFjMTRjOWRhM2RjOCBsZWdhY3ktdHJ1bmsKKzM0OTYgNTE5YzI1MDM5YzZhNDU4OGE3ZGRlY2YyYWFhMGFlMzhlNGU4MzBkOCBsZWdhY3ktdHJ1bmsKKzM0OTcgNDA5ZWE3NGZlYjIxN2MyNGM5NDRjNzNjNDE5ZmQzNjNhMjVjYTI3NiBsZWdhY3ktdHJ1bmsKKzM0OTggMDc5MDA4MzRjYzk3ZDFiOGRmMWMzN2E3ODFmYzRjMWM5YjgyNTI1YyBsZWdhY3ktdHJ1bmsKKzM0OTkgZTVmYjljZGJlMDUwN2JiMzFmNDYzYmUyYzRhMTA2NDI0NmEzN2ViZiBsZWdhY3ktdHJ1bmsKKzM0OTkgNzhhN2VkNjk1MzAyNWU3ZWNkZGU5NTg1MDk5YjAxYTZhZTQwYjc2YSBsZWdhY3ktdHJ1bmsKKzM1MDEgZjM4NDhmNzRiMjgyNzk5ZjM0YTAzOGQxYTI4ZGNhODhjN2NlNjg4ZSBsZWdhY3ktdHJ1bmsKKzM1MDIgNDE5MmUyNGVjNTYyZDFlMDliMzg4Y2VlNzJiODFiMjA3Y2RmODM5ZCBsZWdhY3ktdHJ1bmsKKzM1MDMgYzQ0NTQ1ZTU5NWExNWNjMGIyMTg2MTNiY2QxZWEyZGRiMGYzZDQzZiBsZWdhY3ktdHJ1bmsKKzM1MDQgZjhmNjRjYmQ5ZmI1YTE5YmIwMDY1MWI5ZjU0NzQ4M2FhYjkyOWM2MyBsZWdhY3ktdHJ1bmsKKzM1MDUgYWFiMzBiNzRjZjZhOGRmMjc2MTExZDc3OTRlNDM3NDQ1OTJkNTE5NyBsZWdhY3ktdHJ1bmsKKzM1MDYgZDIwN2JlZWRjODZkNjhiYmYzZDllZDlhYzJlNmQ0MjZiMzQ5MmVjMyBsZWdhY3ktdHJ1bmsKKzM1MDcgNjY4ODUzZDdiNjRiY2JhNDQwOTk2NDk4MzJiYzFiMDgxYWE3ZWI4OCBsZWdhY3ktdHJ1bmsKKzM1MDggMTNkMGZkZTQ4ODMyNjNiYzZkNTI1YWM2MzY4OWE1NThiZjIwNjMwMyBsZWdhY3ktdHJ1bmsKKzM1MDkgZjM3OTFjNGZiNzI0N2IwOGVkNjE2MWJkYjU4YTk2OGRkYzA2ZDExYyBsZWdhY3ktdHJ1bmsKKzM1MTAgZDBhNWMzMDBlYWFmNWVjM2MxMDFlODlmZjMxMjcxNGE0YzEzYmQwNiBsZWdhY3ktdHJ1bmsKKzM1MTEgMjc5OGQ4NjAzYmYwMjg3M2RlODA1MGVhYzVjOGQyNzM0MGU5ZWYwNSBsZWdhY3ktdHJ1bmsKKzM1MTIgZjQxNDMzYzk4YzVlYjAyZTg4Y2FlOTk5OGQ5M2MyYjg3YzkzOTRjNyBsZWdhY3ktdHJ1bmsKKzM1MTMgNWQwYjI3ODFlMjNiNDBhZjU3YWM4MTJjNWU1YjJmNGM0YWQ5NGYyMCBsZWdhY3ktdHJ1bmsKKzM1MTQgYTIyYTM1MGQzYTVkZDNjZDAyNGQ2OGNhY2QyNWYzYjkxNmM4NWJiYSBsZWdhY3ktdHJ1bmsKKzM1MTUgNWVmYTc2Y2ExN2YyZWQxMjhjNjgyMzMyNzA1OGM4YTM3YjljNDQzNSBsZWdhY3ktdHJ1bmsKKzM1MTYgYTNhMDI3YzQ5ZWIxM2MwNjgwZTMzZjExN2IxZTVkODMyNGRjNDIzNSBsZWdhY3ktdHJ1bmsKKzM1MTcgZDljYjU1ZWYzNGUyZTUwNGIxMGZlYTBkODQxNzkyMDVkNzg5MDJlOCBsZWdhY3ktdHJ1bmsKKzM1MTggZTE0OWM3N2QxNzNjYWFkYzAyZGZiN2I1ZjU0N2IyNGI3MjRmOTJlNiBsZWdhY3ktdHJ1bmsKKzM1MTkgNGQxYTE1ZmM0NzQ4ZDZkOTBkNGNlYmU1NjIxMGFmNGM0OGNiYTkwYiBsZWdhY3ktdHJ1bmsKKzM1MjAgYTYzNTVjODM1NzhkOGQzZThlZjk4ZTQ5ZTA4ZTYxZmE5NTZiOTQ0ZiBsZWdhY3ktdHJ1bmsKKzM1MjEgZmNjZDQxNWUyZWI4Y2QwYWE1YzFhYTNmYzE4NmUxY2ZhMzc4ODk1YSBsZWdhY3ktdHJ1bmsKKzM1MjIgMmI1NGNjYzg1MmU0MDRhNDE3MmJjN2VlY2M4OGVlMTAwOTVhOWI5YSBsZWdhY3ktdHJ1bmsKKzM1MjMgMDQzZGExOTMwMmVmMjQ0YmY1NzIxZjIxODZjYTI3OWJjYmNkOWEwNSBsZWdhY3ktdHJ1bmsKKzM1MjQgMmZhYzIwOWUxYzNmNTUyMjEyZDI5NmUxNTcyNTE1MjhlNDRkMzA0OCBsZWdhY3ktdHJ1bmsKKzM1MjUgM2UzM2NhNTRmYmRjMWMzMjYxZGQ4ZDY4MGRmMWQ1ZmEzZjA2YWQ3ZSBsZWdhY3ktdHJ1bmsKKzM1MjYgNWQ3NGE5ODczNTg5Njc0NTBkMTkyYmUwOGQyNTljZGFlOWRjMjAwMyBsZWdhY3ktdHJ1bmsKKzM1MjcgMTgwOGNhNWQ4ODgzMDk3YzcyYzZhOGE4OTE0MzA0MWMyMGVhMTNjMSBsZWdhY3ktdHJ1bmsKKzM1MjggN2NkNTMzY2YxOTRhOWRiZWFlOTBiODc2OGZmNWRkMmVlMzNiZjNhOCBsZWdhY3ktdHJ1bmsKKzM1MjkgNTYwNDA3ZWM2MzJiOWY2ZmNlYmY4OTc1NWYzODNkMWViNDcyZTRhYSBsZWdhY3ktdHJ1bmsKKzM1MzAgZTFjNDczZjkyOWM0NzI2NDdmMDIxMGZhNjhiZmM2OGE5MDUwMjMwZCBsZWdhY3ktdHJ1bmsKKzM1MzEgMTMyNjAyZDg1NGQ4YzQwZjRlNDkzZTlmYWE0NmY2MjdlYzY0MTEwNiBsZWdhY3ktdHJ1bmsKKzM1MzIgYTVmYzEwNDg0OWFhMjFmNjMyMWY1ZDk5N2UzYTM3ZmI2NWE3ZDlkMyBsZWdhY3ktdHJ1bmsKKzM1MzMgMjg3ZmMzMmMxZDljM2ZiMmYyMjFkY2IwNTZhMjUzOTI5YmUzMDdjYSBsZWdhY3ktdHJ1bmsKKzM1MzQgZWU0YTJmODkzMjU0ZGQ0MGUwMWMyN2RjYjYxYTUzOGQzOTM0NzBlMyBsZWdhY3ktdHJ1bmsKKzM1MzUgNGM4ZTVmY2IzMzAxNTlkZjM3OGYzN2I1ODMyODlmYWZhYTVkOWRhOSBsZWdhY3ktdHJ1bmsKKzM1MzYgODllMWU1ZDljY2JmMDNkOTQ4NTBmMjE2YzQxOWQ0YzE1OGM1NjU4NSBsZWdhY3ktdHJ1bmsKKzM1MzcgZjllNWEyODIzNjc3N2U1MGEzMmYxMGRiMTkzODkwYjE5YWY0MmNiOCBsZWdhY3ktdHJ1bmsKKzM1MzggZmFhZjM4NDNiOGJkNWQxYTZmYjdjMzM1N2EwZTQ4ODAzMGEwNjRlZCBsZWdhY3ktdHJ1bmsKKzM1MzkgZjdjNjA2MTAzZGQ1ZWQxZWVhM2U1NzMzZWVmMTc1NTYxMzEwMDhlNCBsZWdhY3ktdHJ1bmsKKzM1NDAgN2JlN2E3ZTBjNDY1ZTc2ZThkOTdlNTQ1OWQ1ZmU2MzhlY2Y1Y2ZlNSBsZWdhY3ktdHJ1bmsKKzM1NDEgODlkN2Q1ZTEzNmFkZGNlN2I1OGU3ODc1ZWUyOGM0ZjI2ZGRkM2ZmOSBsZWdhY3ktdHJ1bmsKKzM1NDIgZjNhMzI1NjYyZDM5YzYyYjA4Y2IwNDFiNGQzMDc3OTM1ODliNWE3OCBsZWdhY3ktdHJ1bmsKKzM1NDMgMTA1ZDMzMmMyNzdjNjUxOWExMjgzNmUyOWVmMzUxOWY5Yjg2Y2FhYSBsZWdhY3ktdHJ1bmsKKzM1NDQgMzU0M2NlODhhMzFlZDg1ZjJiMWRhNTJlMjk4MjMwMjRkYzU2MmEzNSBsZWdhY3ktdHJ1bmsKKzM1NDUgYjAzZDAwZTI0YzNjMWEwNTdmODNjNDU3ZTdmN2E2MjVkY2IzYzJmNSBsZWdhY3ktdHJ1bmsKKzM1NDYgNzEwYzZiMTNlODc1MDgzYTY0MmVkNGU0MmVmZTY4ZjkzOGE2ZDQxNCBsZWdhY3ktdHJ1bmsKKzM1NDcgYTRhYTgzMDEyYWYzYjIzZmFhZWMyYzA5YWEwYTZlOTUxNjc2OGIyYyBsZWdhY3ktdHJ1bmsKKzM1NDggYzAyYjNmZTBiMzNjMjU5ZWZjZGYxZjgyMzY5YWY2NDExODE1MGNhNSBsZWdhY3ktdHJ1bmsKKzM1NDkgYTBhMGM3NmY2ZWY2YThjYjU3ZThjZDc0MDdiMDAxZTM4OWVmYWUxZSBsZWdhY3ktdHJ1bmsKKzM1NTAgYWU0ZTkwZmE4YmNhNTIxODk0YjcwOGE5ZTA0ZDAwZTQ1NTQyMmIwMyBsZWdhY3ktdHJ1bmsKKzM1NTEgYjJjN2FhYmZhOTEzYjliYjJmOWYzMTc4NWIxZWY2NDlhMmY1Mjk0MyBsZWdhY3ktdHJ1bmsKKzM1NTIgMTU4ZjBkOWNkZDQwZjUzNWRhOGY1ODcxMjFhZTcxMzRlZDYwOGI1MCBsZWdhY3ktdHJ1bmsKKzM1NTMgNWEzMGE0ZTA1NmU3Y2MzN2Q3MmYxMGFkZTEyMzQwYzg0YTg4Mjk2NCBsZWdhY3ktdHJ1bmsKKzM1NTQgZjk5MmFjMmEzOGQ1YzdmM2ZjNWE0NzMwN2I2MGVkYjMzOGQ3MzNmNCBsZWdhY3ktdHJ1bmsKKzM1NTUgZGNlM2MzMGNkNzI3ODdhNzQzZGI3YTg3ZTQ2MTY5N2IyOTlmYmQ2NCBsZWdhY3ktdHJ1bmsKKzM1NTYgZTk5YzIyNDkwYmZiZDRlMTc1YWIwOTQ2ZTBkN2M5OTdmOGYzZWRkNyBsZWdhY3ktdHJ1bmsKKzM1NTcgY2ZmZThkNmIyZjA5YjdlZWQxODY3YmQ3MzkzMDVhNzZmNDA5MWNjZCBsZWdhY3ktdHJ1bmsKKzM1NTggN2MzMjQ1YzE4Njc3NGI4NDQ0NTQwYmVmNmQ1MzkzYTM2MDE5NmVkMyBsZWdhY3ktdHJ1bmsKKzM1NTkgMGZmZmY0MGQxM2ZmNDcwZTM5MWU4NzE5Y2QyNWFiYzUzZTM1NTRiMCBsZWdhY3ktdHJ1bmsKKzM1NjAgN2Q2YTJkOTUwZjEzYzc0MDc4NWM0ZmFmMjAzMzFiNTZhYTYxYmZmZiBsZWdhY3ktdHJ1bmsKKzM1NjEgOThmNTFmNjFjYjRiNzZhZmY3N2Q1ZDBiYzJlYWI1YTlkMzY5YmU0ZSBsZWdhY3ktdHJ1bmsKKzM1NjIgNDIyOTI3NWRlYzMyNjEwM2E4ZGI0ODY3Yzg3MzczNWIyNjBjNjRhZSB1bmxhYmVsZWQtMi4xMC4yCiszNTYzIGJlNjFlMDcyYTUwNWI5ZWNiMGY5N2Y3ZTFiMGQwOGE5ZmVlMWNkMmMgbGVnYWN5LXRydW5rCiszNTY0IDRhMjg2YjMwMGI1ZWZjYWYyODFmZGJlOGI1MzI2YjE5YWQ5OGZjYzggbGVnYWN5LXRydW5rCiszNTY1IDFjZTJjMGY1NjVlZjNlNmJhZjQ0NGM4MjhmZjcyOTIwOWJjOWQxM2IgbGVnYWN5LXRydW5rCiszNTY2IDFkODQxNTg3YWVkZWIwNzFhOWE1OGEyOWM4NzBhYzhlMTE4YWZmNzcgbGVnYWN5LXRydW5rCiszNTY3IGNjMTcyY2UwNTU2MWFmMTZhYTA1YjIxNWEwN2Q1MWYyY2JiY2M3ZDMgbGVnYWN5LXRydW5rCiszNTY4IGFhYzgyMzFhNzE1YzdjZTQ4NzdlYWU2ZmJjOTgxZWRiN2JjMzI3ZTYgbGVnYWN5LXRydW5rCiszNTY5IGNkNTk4OWE1OGJjZmUwMzIwZGRkMmIxNGM0NjlmN2MyYjVhNGM0OTEgbGVnYWN5LXRydW5rCiszNTcwIGFmNGUyNzFkMDdiMWRkMmVlNWE3MDZjZGJlYTZlYmViZjk0ZDgyZWQgbGVnYWN5LXRydW5rCiszNTcxIDYyNzg5MzNkMDJlMzhiYjhhYmRkYmM3NTQ2NzNmNzk2MTdkMWJmODggbGVnYWN5LXRydW5rCiszNTcyIGM4MTQ5Mzc4ODBjYzNjYzAwNjc2MDgyY2M4YTliNGE0ZTVlOWQ3OGMgbGVnYWN5LXRydW5rCiszNTczIDkwYzVlMmJiNGRhNTViZWRlNmU3ZDhkZTQ0ZTZhMmIwYmNkZTExY2QgbGVnYWN5LXRydW5rCiszNTc0IDQ3NDgyM2U1ZjdkYzEzYjk2ZDVmZDhlYjljODA5Y2NlOGFhOTA0NjcgbGVnYWN5LXRydW5rCiszNTc1IGE1OGMwNjFiNGY1NTUyNTE3N2Q2N2ExNTJlN2UwZjhmOTNmNGZlYTcgdW5sYWJlbGVkLTIuMS4yCiszNTc2IDJlMGE4YTNlZWY0YThmOTc1YjBjMTI2NzEzNTJkMTI1NzdkNjM2YmIgdW5sYWJlbGVkLTIuMS40CiszNTc3IGI5ZmNmYjk5YTNlNTRiNmY3NjYzNTA4ZDEwZTBkODA4NzgxYjlmN2MgbGVnYWN5LXRydW5rCiszNTc4IDE4ZGY2NzQ1MzlkYTU1MzA1ZjZkMjZjMmRkNDYwMzA2YTBmZjJjMzMgbGVnYWN5LXRydW5rCiszNTc5IGY1YjFkZGZkZGJhODMzYjMxYjZhYWY2MWQ4MTEzMDQ5ZjA0MjM0ODUgbGVnYWN5LXRydW5rCiszNTgwIDMxNTI3MmVjNGQ1YjYzZDVlZDJlNWY1ZjAzYzhmYTExZmZjZDYzMGIgbGVnYWN5LXRydW5rCiszNTgxIDE2OTFlYTVkOWQ0YjViMzQ0MTk3YTMzNmM3MzIxYzVlYTNiZTkyNjUgbGVnYWN5LXRydW5rCiszNTgyIDAwZjFlODg2NGRjY2RmZTYxNGQyNGIzZWMzNDQ1ZjNlNGFjYmM5MWQgbGVnYWN5LXRydW5rCiszNTgzIGM5MTRiMTBiZjJlZDc3NWMwMzJkNzRmNWFlNDVlMDQ3NjYwMGJhMjQgbGVnYWN5LXRydW5rCiszNTg0IDI0OTE3NzRlMzZhOTBjYmI1Y2ZlMjYzNDMyYjFhNzZkMmQzYWExMTkgdW5sYWJlbGVkLTIuMjUuMgorMzU4NSBmNTUwMzFkNTQ5Yjc5YTZiZWIwN2MzMGJlMWRmNTNmZTQ3MzQ0OWVjIHVubGFiZWxlZC0yLjI1LjQKKzM1ODYgZWQ1MjJjOTQ4ZDQyOGMzN2FlMGU5ZDU4ZTRjOWU5ODUwNmRjNzYxOSB1bmxhYmVsZWQtMi45LjIKKzM1ODcgY2FkZWI3OWMxMzJmNTUwMmNlZmY5MjMxMjAyMDc2NjBkOWIyNTcyYiB1bmxhYmVsZWQtMi45LjQKKzM1ODggMjg1MmVkYjRmZmZlMGVjMzc4OTVmMDMxNDEyM2UwODQ1ZjhlYzBjZCBsZWdhY3ktdHJ1bmsKKzM1ODkgMDY1NzA0MjlmMDYyZDMxNGQwYjg2ODIyZDFhM2NjZGE1MzQ2ZTIwZSBsZWdhY3ktdHJ1bmsKKzM1OTAgZDZmNmExY2I3ZDc5ZTliMTk4ZmMxNTgzYjI4NjljOWU5ZjQwMDgxNSBsZWdhY3ktdHJ1bmsKKzM1OTEgZjdlZGZhNmQwZGNiYTQ4NzJiZjQwODRmNmI1NzRkM2VhMTE4ZGQzNCBsZWdhY3ktdHJ1bmsKKzM1OTIgYjFiYjc0YTJiNTkzMGU5YjRmYzc4ZTliNTVmNjY5MTU5MjEyYWJkMCBsZWdhY3ktdHJ1bmsKKzM1OTMgMjA0MDAxZGRkY2MzMmUzOGUxMzY5OGQ4ZDJkZDU5NGNjNmQyNTg4YiBsZWdhY3ktdHJ1bmsKKzM1OTQgZDJmOThiZWVjODVjZjIyNGM4ODI5OGEwZGI2ZGU5NWQ3YzI5ZTQwNyBsZWdhY3ktdHJ1bmsKKzM1OTUgZmU3Mjk4ODEzZjE3MTRiNDdmYTJiOTMwNjcwNmZmMzVmODNhYTRkNyBsZWdhY3ktdHJ1bmsKKzM1OTYgOGE5MGM5YmJiZGYwYzlkNzFhODM0YzJmMzkxOWFjMDQwNTEyZGU3NSBsZWdhY3ktdHJ1bmsKKzM1OTcgMGIzMmVjOGEzZTIwODIxZTY0OGVlMWU1Y2E5MTM5MTg3ZDAwNmJjNyBsZWdhY3ktdHJ1bmsKKzM1OTggYTJmMmE4YmQ1NmY5YmZmMWE1MjFhNmNjNmVkOWQwNWYyMDQ3Yzc1MCBsZWdhY3ktdHJ1bmsKKzM1OTkgNzJiZGRmYWQzNTFhOWEyMjBkYjI0NTA0ZGFiYTBhNjhiYWQ4MjhmMSBsZWdhY3ktdHJ1bmsKKzM2MDAgYzg4N2ExZjMwNTI1NWQxYWJmYTZmZTZhZWZlYTY4ZjNlNmQ2ZDFlYyBsZWdhY3ktdHJ1bmsKKzM2MDEgODcwMWI5MzM4M2FiMWRkZTkxOGViN2M2Y2Q2ZjAyZTUzYjk1YjkwNSBsZWdhY3ktdHJ1bmsKKzM2MDIgZjdhNzUyZmI3YjczN2QxZjBlOWNiNDVhOGIwMjEyNzZiODk2NjIyYiBsZWdhY3ktdHJ1bmsKKzM2MDMgYWRhNTZiMDc2NWMxNjcyZDlkZWQ4MDdmNjMxNjVjNzc4NWI1NDUwNSBsZWdhY3ktdHJ1bmsKKzM2MDQgOWM3MDdkOGNmMGM4ZDE2ZTZkODY5ZWZiNjNhNmU4Mzg4MWRlZjc3YyBsZWdhY3ktdHJ1bmsKKzM2MDUgZDcxNjhjYzJiZTA3ODMzZDBhMTVhMDZmYTk0NzQ2YzU5MzNmMTkwMiBsZWdhY3ktdHJ1bmsKKzM2MDYgNjQwYzM2YjY0ZGVhMWNmNzJmZWU0MWY1MTE5YzA2ZDUzNDg0ODMxMSBsZWdhY3ktdHJ1bmsKKzM2MDcgNWNhZTc2NTMxNzFiNDRhMTlkNjVhYjYxMzhmNzE4MTU0MWNmNjdjNCBsZWdhY3ktdHJ1bmsKKzM2MDggNDZjMjE3MzM3YmRlNGY1NDk5ODkwMTRlMmZhZmE3ODY0NmQxM2ExMiBsZWdhY3ktdHJ1bmsKKzM2MDkgNTYwZWM3MDMwODE3N2I0MzkxYWZhMTcxZDYwNGRmMzFlN2UzNDQwYyBsZWdhY3ktdHJ1bmsKKzM2MTAgODlhNWNlMTlkMTNhZjIwOGVhMTJmNWU2ZTAwMWRmMGMyNGE3YTVkYyBsZWdhY3ktdHJ1bmsKKzM2MTEgZTQ5OTExNmQ0NWU0OTE5ZGM0NmQ3NTJiMzg0OTY4MmRlODdkZDI1YiBsZWdhY3ktdHJ1bmsKKzM2MTIgZDdlMzg0MmIyZTdiMTBmZmZiMDRmNDFlYmNlYWM3MDE1MDEyOTE2ZiBsZWdhY3ktdHJ1bmsKKzM2MTMgZTQ2MzIyYTMxZjYyMmJhMWM5ZDA0NDliZmQwZjdkYTNhMWRkNjA4YyBsZWdhY3ktdHJ1bmsKKzM2MTQgZDgyYzJiYTRmODE4N2I1MDBiZTZkZDYwNGRjN2VlM2ZjMDhlNmIwZiBsZWdhY3ktdHJ1bmsKKzM2MTUgY2QzODI0NTZjNTcyYmJhYTIwNTUzZTliMTExMjRhM2VkMTZlNzBjNSBsZWdhY3ktdHJ1bmsKKzM2MTYgMjhjY2VhYmY4Y2NlYzY4MmFjNjczMThjMjNjZDg4NzNkMWY3OGIzZiB1bmxhYmVsZWQtMi4zNi4yCiszNjE3IGNiZjI4ZDY1NDY5ZjUwNjI0OGIzMmFjNGMyMmI4MzQxNmQ2MTNhNzggdW5sYWJlbGVkLTIuMzYuNAorMzYxOCA0NzQ5Yzk1NzQ2NmI3N2YxMDgwMTk5ZWM2ZDk3MGYzODY3Y2FjYTE3IGxlZ2FjeS10cnVuaworMzYxOSAyZWMwOGE5ZDAzMjU1MjEwNmNiYmJlYTZjZDBhMDE4YmRhZjc5MDIwIGxlZ2FjeS10cnVuaworMzYyMCBmMmQwNDA1NGM5MzQ2YTM2NDVmNmQxNTNmZmNjODVkM2ZhNTJjNjZkIGxlZ2FjeS10cnVuaworMzYyMSA5MTMzODA2N2Y3NTAxZTNlMWQ5ZDYzODg0NWJhZmJhOWY3OTZhY2U4IGxlZ2FjeS10cnVuaworMzYyMiA5ZmIwZjFhZmIzNGNkM2E4N2ZjMzQwNGIwMDNiNGI2ZTM5OWUyZTUzIGxlZ2FjeS10cnVuaworMzYyMyA0ZmY2MDhjNGNhY2FlMGMxNDc0YjQ5ZjQ4YjQ1YjM5ZDczZjM5YzI1IGxlZ2FjeS10cnVuaworMzYyNCAzMjhmNDQ2ZDIwMTY3NjA2ZjhkMjYyYzA0MzRhMTA4YjU1YWNjMjQ5IGxlZ2FjeS10cnVuaworMzYyNSBhZTkzZWM0ZGQ1NTYzNjliYWZhYjM5YzRlMGE4NjUzZGM3NzQxNGYyIGxlZ2FjeS10cnVuaworMzYyNiBkOGNhMGU5MTNjNDQ0MmE2YjRjZDYzMjIzMjY4OTVkNzY0NGE5ZGM4IGxlZ2FjeS10cnVuaworMzYyNyBhODkzMmE0Yjk2MjRkOWJiZDI1NTQ5ZDJhNTI2YzEwNTk5OWEzY2I2IGxlZ2FjeS10cnVuaworMzYyOCBhNWE0NjU0YzMzYmU1YjM5Nzc2MTk0MDM2MTk2ZTMzMmU0OTlhZTg4IGxlZ2FjeS10cnVuaworMzYyOSBkNzczYTVmODk0MjY4NzlkYjJmZWJkMjU5ODkxMjMzMWNkOGJmMzNlIGxlZ2FjeS10cnVuaworMzYzMCAzYTVmMmYxMTBmNzA2MmI5ZTI2NTEyY2ZlZDQ5YWMwMmFlNjI0Yjg2IGxlZ2FjeS10cnVuaworMzYzMiA1MDEwMWViNjMxMWIwNzdjOWQ5NjczMzY5NDI0MmE0MWY4N2Y4ODZlIGFscGhhMTAwCiszNjMzIGIxOGViMmY0YWYwY2YzYzU5MmVjMjNjNmZmMzdjNjhlOTY1MDgxY2UgYWxwaGExMDAKKzM2MzQgMWNlYTlkODBhMmJjMWNlNGIxZTFmNjA4ZmQyNmQzMDA1ZGNiZjRmNCBhbHBoYTEwMAorMzYzNSBkOWQyMTM4MmM3M2I5MmMxODFhMDJjYTNhMDQyMDk0YWYyMzNhMzkzIGFscGhhMTAwCiszNjM2IDViOTcwMDQ3YTcyMmMxNmUxMjZmNzJlMDVmNTFjYTRkZDI5NTU1YTggbGVnYWN5LXRydW5rCiszNjM2IGVmNzNkNDBhODI3OTUxYzlkYTdhMzJjYzhkYmUzODYwMGZmZWM3ZGIgYWxwaGExMDAKKzM2MzcgMjkyYzVlNzkyNjRkZjI2NjgyNTZjNjllNGU4NGJlOWQwNWY5NjFmYyBhbHBoYTEwMAorMzYzNyBkOGNkYWM4ZmRjNzQ1MGJlMWJlMTYyMjg2NTQ5N2Q0YWEwYjJkY2EwIHVubGFiZWxlZC0yLjI1LjIKKzM2MzcgOGIwOGEzNjY3NmQ0ZWRhNDdlMWRhNzY5NmU0YjIyODEyMzE5M2YzYiB1bmxhYmVsZWQtMi4zNi4yCiszNjM3IDE5ZmEwMWM5ZmFmMzk3NjM3OGY2NTRiYjRmYTdjZDNkYjI4ODJhNGQgbGVnYWN5LXRydW5rCiszNjM3IDhlZWYyMTE1NTVjNmQzNWY0ZDI5YzlkYzc3NGEyNDliZDFjNzRjZDAgdW5sYWJlbGVkLTEuNS4yCiszNjM3IDBjYTY1M2Q2NzdkMzQ5NzQzYzI5YzFhZTIyMTJhOGRjYjU3MjkzY2QgdW5sYWJlbGVkLTIuOS4yCiszNjM4IDYwN2IxOWFlMWUxM2EzMjIwNTA2ZTg1YzI4ODdmZjc0OWM2NGY1NTAgdW5sYWJlbGVkLTEuMi4yCiszNjM5IDMxZjFiOTg3Y2RmODJjYmNiMzhmNTAxMDhhMGFmMDgzNzlkODMxZjMgYWxwaGExMDAKKzM2NDAgZDk2MTk5YmU3NGU2YTQ0OGNjOTU0MGJkOTZiOWYxZTRjOWY0MTVkNiBhbHBoYTEwMAorMzY0MSBmOGQzZmY2NjM5YjU5NjcwZGMxMTMyZDllOGRjZTVkOGNjOTVmZWM5IGFscGhhMTAwCiszNjQyIGE3OWIwMjQzOTdmODdjNzE4YTJhMzFiZGYyM2RkOTZkZTAyOGViNzkgYWxwaGExMDAKKzM2NDMgNWNlNDA0NjJhZTk5YWVkOTRlYjUwZjgxOGMyYzRlY2IyNzcyOTIwYSBhbHBoYTEwMAorMzY0MyBiODU4MGUzMjA0NmMxYjY5MzljZWFiOGU5MzkyZWVlODgwZjJlNGFlIHVubGFiZWxlZC0yLjEuMgorMzY0NCAwOGQ0ZGE0OGRjZDU4ODc0MjA4MTI3MTI0MjBmZTE3ZjMwMTc1NzJkIGxlZ2FjeS10cnVuaworMzY0NSBkOGJhM2NmOWRhYmNhOTc4ZmY1NjVmMzYxOTAwNzE4YTViYzg3NDQ4IGxlZ2FjeS10cnVuaworMzY0NiAxZjhjNjQ4NDkyMDM0ODAwMTU3NTVkYjUzODlkZDI0NWJkZWJiMmI3IHVubGFiZWxlZC0xLjMuMgorMzY0NyA2YzA2NzY5YTg4NjliMGRkZmFjNzRhOTgwZTg2OTU1MjU4OTRiNDZiIGxlZ2FjeS10cnVuaworMzY0OCAyNWMxMTJiM2M5NTdlZTE5MTUyNWFjNTQ3ZDgwN2Q5ZDAwNzliNTg4IGxlZ2FjeS10cnVuaworMzY0OSAxMDlkMzlkZWMxMjg4NmJlM2MwY2NkZDdlYjYzZTQ5ZWRhYWZjM2NiIGxlZ2FjeS10cnVuaworMzY1MCA1ZjNkNmU0YjU1MDNkNTFlYTFjYjIyNDJhZDcxN2VmNTcxNzBlOTE2IGxlZ2FjeS10cnVuaworMzY1MSAzMDU3NDhlYmFiNDM3MjQ1MjViYTRkZjllN2YwYWQzZmI5NjE5NWE5IGxlZ2FjeS10cnVuaworMzY1MiA0ZGM3YjE1YjZiOTcwZGFhZGUxZTM3OGU3MzNlN2Y4YzJlYmQ2MGQwIGxlZ2FjeS10cnVuaworMzY1MyBjOGE5NWMxNzBlMWVkODczNDA3MzQ1YjkxYTVhNmM4NDMzMzg5NGYwIGxlZ2FjeS10cnVuaworMzY1NCBlZDM2YjNlOWNkNzg2NWFjNmI1MTFlMGQ0OGVlNTBhMDVlMmVkZDU5IGxlZ2FjeS10cnVuaworMzY1NSA2M2ViNmM3NTA5Mjc1N2QyMDA0MDA3OTcyYTFlNDIwOTFhMDZlZDQxIGFscGhhMTAwCiszNjU2IDE5Yzk4ZjIwYTliODNhMzFjYjQ4OWJjYWNiMTIyODdhMmYxODlhNzMgbGVnYWN5LXRydW5rCiszNjU2IDA4Y2Q4Yjk2YjZiZmMyNzhiNjZlZDQxMWQzYjlkN2I2MzRiODk5MWYgYWxwaGExMDAKKzM2NTcgNmJjZTMzZDdmMGQxMTJmNGRkYjM5NmVlOTUxMWFmNjc2OTIzMTIxNyBsZWdhY3ktdHJ1bmsKKzM2NTcgZjUzMzZkODZmNThiOGQ5YTRlMDM0ZmQ0YmNlMWQwYTNmZmNkNGRhZCBhbHBoYTEwMAorMzY1OCAzMDU5MjE4ZjYzMGJkOGVjMGYyNmIxMjJlZTM4YmU3NTZlYzc5MWE2IGxlZ2FjeS10cnVuaworMzY1OSA3NzM4Y2U5NWJhNGRjYTljZDhlYjVlY2QzYTJiY2RlMGFlZjA1ZTU0IHVubGFiZWxlZC0xLjkuMgorMzY1OSA4MzhhYTE0MDZlZWFlZjgzMjE2ZTA0NDkwYmRiZmJhMzFhNjEyMTFjIGFscGhhMTAwCiszNjU5IDI0MzBhODYwMmE2NWQxMzY5NTM2NmFjY2VjZjk2NDlkNzU0YTJiOGUgdW5sYWJlbGVkLTIuMTYuMgorMzY1OSBiNGY4MTVmM2NmM2UxMDhmYzk3Y2YwZjI4Yjg3ZmFiYzM4NTBlNjEyIHVubGFiZWxlZC0yLjI1LjQKKzM2NTkgZDAxODc2NThjZjBiM2JiNmY0NDljZGMyZDhiMGUxZDlkOTE4NmE1MCB1bmxhYmVsZWQtMi4xLjQKKzM2NTkgNjEyYzc2YWFjM2FhODllODZmNWU0ZWNjZjk4M2IzNGNlZDBhMjk3MSB1bmxhYmVsZWQtMi4zNi40CiszNjU5IDMxM2Q5YjkzMDk0MDllZGRkNjJiOTc4NGU3MDZjZDQ3NGZjY2EzMDQgdW5sYWJlbGVkLTIuMTAuMgorMzY1OSA4ZGMyY2YzMTQ1YjNiYmJhNTNhN2JkYzVkMWZlM2M2ZWI5ODM5NjgzIHVubGFiZWxlZC0yLjkuNAorMzY1OSA1MWVlZmMwNTRhZmY4YmEzYmUxOGVkZWNjZDkyN2IxMjEwMmQxOTZiIHVubGFiZWxlZC0xLjUuNAorMzY1OSBhZjY2N2M2ZDIwNzIyMTExOTRkY2M0OWNlY2NlYWYxZWJiZDFkZTc2IHVubGFiZWxlZC0yLjMuMgorMzY2MCBkNDcwNWQ3MDY2MzI5MjQ4OTAwY2Y5YzYyNTcxYTIyMDIyYTdkNmQ3IGxlZ2FjeS10cnVuaworMzY2MCAxZGNhMzNlYjJkN2E1MzdkZjE0YWIzODM1Njk4ODNmNTVkZTk5NzVkIHVubGFiZWxlZC0xLjIuMgorMzY2MCA4ZjQ0ZTQzMTA0MTRiNmQ5NTc4NWE5ZmUzNzk1NjMxNDJhYmFmN2IxIHVubGFiZWxlZC0xLjMuMgorMzY2MSBkY2NlZjFjYmRhNWEwNmRjOGYxNzlhZjdjOWRkNzc3MjIyN2FlNjlmIGFscGhhMTAwCiszNjYyIDJlYzk2MTQwYTM2YjQ4ODM0NWEzYzFhMWNlOGZiZTQwYzNiM2IyNjUgbGVnYWN5LXRydW5rCiszNjYyIDRhYTkxZmQ2OTcxNTQ3OTZjYTFlZDFhODVhNTZjYzU5Y2IzZDNmODYgYWxwaGExMDAKKzM2NjMgYzc1MWNiZWVlNjg4MmZiMzA0NmNiYTE2Njk5MDZhOTVmMzZhNTcyOCBsZWdhY3ktdHJ1bmsKKzM2NjQgMjM1NjFkYzdiMTVmNWU4MzIwMGFhNWZjMDQ1YWM0ZDExY2FkOGU5YSBhbHBoYTEwMAorMzY2NSBlNTYwYjMzNDI0MDViMzI3N2I0ZGZkYzZiMDAzODAyMjc3ZDFlZTBmIGFscGhhMTAwCiszNjY2IDBlYjBlZmM1MWQ5YjM3YzQ4ZmE2YzM5NDMzYjdhZTI4ZTI0NjhlN2IgYWxwaGExMDAKKzM2NjcgYzMyZTEwMjA0NjhkZmY4NDI5MTU3OWNhOWRjNTljMWFiNjc4MWVmZiBhbHBoYTEwMAorMzY2OCBlMjYzYTcyYTc2ZmU5ZDZhMWFjMDFlMjMzYjQ4NTI0Mjc3Njc4OWVlIGFscGhhMTAwCiszNjY5IDkzZDEyOTcxNzhjYmU3ODVmMGIyNTUxMjFhYWIyY2VjZjdlYTIxNDggbGVnYWN5LXRydW5rCiszNjcwIDk4YzU1OWZkNmUyYTkyYTRlNWMwOWVhNmIzMTdlMjliMDJkZTk2MzIgYWxwaGExMDAKKzM2NzEgY2JhMTA5NmRhNTUzMTFkZDYyYjY5YzBiYmI4MDI3MGEwYzE4OTlmYyBhbHBoYTEwMAorMzY3MiAyMDY0YjE2NzA5ZjJjZTVmOTBmNmY4NGI4NGVlMDUxYmIxZWM1MGI2IGxlZ2FjeS10cnVuaworMzY3MiAzNDVkNTdiZWMyNjlkN2JmZDZmMjZlNzI1MTU2OWNhMmNkM2NmYjUzIGFscGhhMTAwCiszNjczIGY4NmY2NTFjNzA3ZjQxMGIwMjkwMWY5OGU1ZTQ3YmU1Nzc1YjE5OWQgYWxwaGExMDAKKzM2NzQgMmNiMDc2YWU4OTI3MjE3OTEwMWU2YTFlYjNmMzJlNzBjYTg2N2ZlNSBsZWdhY3ktdHJ1bmsKKzM2NzQgZWJmNzI4ODAzNTVmMTgyNjNkMWY4NzFkNWQwNDMzMmNkMTcxMTZkZSBhbHBoYTEwMAorMzY3NSAzZmU3NTgyYjk2MzZkZjJkNDNjNDc5NGNlZjFjNmFlYjZkYmFkZTI1IGFscGhhMTAwCiszNjc2IDQ4MTQxZTY4YjM2OTgzMjJmYzAzN2QxNDQzZDgxODU0YTEwN2Y0MDUgbGVnYWN5LXRydW5rCiszNjc3IGQ4MzY2NDU4ZDEwNjZkMWMwNGEzMDJhODcxYjQ4ODk1MjEwNTMzMDUgYWxwaGExMDAKKzM2NzggMmJlODA0OTY2MTQ3Njk4YjQxNDdhOTRmZWRlYWJiYTA5OGZiNzgwMyB1bmxhYmVsZWQtMS4xLjIKKzM2NzkgZjJmMTYzYzA5OTU5YjNlNzUyMjY3MTYzY2FkMjc4MzIyYTk0Yzk5NSBsZWdhY3ktdHJ1bmsKKzM2NzkgYjY2YzZlMmE2ZTA2ZmEzNDJlMDQ4YWQwMjM2MmQ0ZmE4ZTE4ZGEzMiB1bmxhYmVsZWQtMS4xLjIKKzM2NzkgZmVjMmNmOGQ2ZTc3OTk5NDliMDZkMzMxMDJmZTI2ZDllNmQ3Nzc0NiBhbHBoYTEwMAorMzY4MCA4NzA3NTFmYjA5ZWJmZDU5MzA5Mjg1OTJmNThiNTlhMmE5OTIzNTgzIGFscGhhMTAwCiszNjgxIDBkZWY5NGY4MGIzODQ5NzQ4NjgzM2Q5YWFmNzA5OWZiMmY1Y2NiNDkgYWxwaGExMDAKKzM2ODIgMjRkNjU2NTNlMmFjOWQ0NDYyY2MzODQwMjIwMDBhNjE5Y2FkYmUxNyBsZWdhY3ktdHJ1bmsKKzM2ODIgMWM0ZTJkNjIwYjE2MzgyNjEyOTdiNWZiYzNiODYxNDJkODA2NTk3OSBhbHBoYTEwMAorMzY4MyBkMDNjZWE2YzA3OTVkNGQ5ODZjNzczN2Y2NDRjMzI2OWEzZTU1MGRiIGxlZ2FjeS10cnVuaworMzY4MyA0Mzg1MzNiMzQxYTZkNTY5OWMwMzVlNjU1ZGJhMDI5YWFkOTdiNGU2IGFscGhhMTAwCiszNjg0IGUzMzc2MjRjM2VhMzcwNTM1NDAxZTNiOGEzMmE5MTdmNWUzY2QzOWEgYWxwaGExMDAKKzM2ODUgM2Q1ZDRjOWVkMTlkZDg2OTVlOWY1NDdkY2Q2YzBiZDQxYzFlZGI2ZSBhbHBoYTEwMAorMzY4NiBiODBmMWRjOTZjMWE1NmIzYzQzYjQwNzlmNzg3MzAwM2YzZGM3M2U5IGxlZ2FjeS10cnVuaworMzY4NyBlYWIwMTk2YThkODM4ZTcyYzljYzA0Zjg5NjViYjE1Mjc0YjkzMWYzIGxlZ2FjeS10cnVuaworMzY4OCBiNWIxZjM4YmVmYTQ4ZGEwYTg2NjFkNGJhZDE4YThjOTczZmNiZTM3IGxlZ2FjeS10cnVuaworMzY4OSA1NTBlMjYwNTk1OGIxNmU2NDE1NjU3NzdjMTA5ZjM1ZGFhYmRjYTM2IGxlZ2FjeS10cnVuaworMzY5MCAyZGRlYThlNmRkMjBiMGZiN2JlZjMwMjIyZWEzYTA2YWVjNzQyNzk5IGxlZ2FjeS10cnVuaworMzY5MCAzNTU5YjA5MDY3MGVlYzlmZDFiNjk3YTlmOTBmMTE3OTA5NGY1NjUwIGFscGhhMTAwCiszNjkxIDYxYTcyM2ZhMjUzOGM3NTVlNGY1N2E1MDQzZDE1NmEyYTczMTMzYTAgYWxwaGExMDAKKzM2OTIgOWYzZTJlOTMxYjRiOTNmZDViNmVkNGVjODM4M2E1YzhlMjIzZTcxMiBhbHBoYTEwMAorMzY5MyA1NzgxYWFmOWNjZDM1ZjcxZDAwOTBjNWQ4MjRhMzVmNjhhYjk4YjdhIGFscGhhMTAwCiszNjk0IDUwMTlkMDNkNzE5MjBiOTE2ZDI2NjU0OTY3YzZkNjcxZTJiYTI1MDkgYWxwaGExMDAKKzM2OTUgMjI0YzZiZDkyY2ViNDU0MGQ3NGZlMjMwOTRmMjM0ODg5MWQxNjIyMCBhbHBoYTEwMAorMzY5NiA4ZDZkODUzNTlmYTNiOWNkZDEwYzhhYWJkYTQ2OTU3MmJmZjMxNTk2IGxlZ2FjeS10cnVuaworMzY5NyBlNWZhODk3OWI5ZTY2ODI0MTIwZTk3NjkyNzZmNGVkZmM0ZDAyNTVmIGFscGhhMTAwCiszNjk4IDBhNmJlZTRiNmIxNzUxOGJlZmY5MGUxYjQwMzE3ZTMxZjc5YjNlNGUgYWxwaGExMDAKKzM2OTkgMmFlMDJmMGQ5ZTZiMGE2ZDQwODdkY2RhYmJhOTdkNDkwNzNjMGM5NyBhbHBoYTEwMAorMzcwMCAyZDRiZDhjYzQwNDIwMGZhNzI1NWNiZTVhMGM3NTA2NmIyMmM2OGM5IGFscGhhMTAwCiszNzAxIDRmODk2MGM3ODE0MWRiYzM3NDAyN2M1ZTg4YjdmYWI0NGY4NWEwZTAgYWxwaGExMDAKKzM3MDIgNzU4NzE3Zjg1MGYyYWEzN2U1OTM2MzYwZDNkNDNlZTZjZTQxMjMwYyBhbHBoYTEwMAorMzcwMyAwNTAxNGUwZDMzZWM1ODE2NDVkYWQwNGVjNGIxOTM4MGJlZjhmNGQ3IGFscGhhMTAwCiszNzA0IDc2YmM2ZDc0ODg5MGQ4N2E5OTA0NmZhNTZlMDE2MzAzNTZhNTMyMWQgbGVnYWN5LXRydW5rCiszNzA1IGU1M2VkNjc0NTlmNTZkNzM0NmExZTJiM2ZkOTk3M2VhOGJkODAzNjcgYWxwaGExMDAKKzM3MDYgMGM4YjE4MTJmMGI2OWQ5MWUzOGIwN2VjMzgwNWE5NjZmZDVlMzg0YiBhbHBoYTEwMAorMzcwNyAxMGFkOGJlZjlmNDNkYjc1ZTk4YWFkYTQxNGRmZjhkZTdiZWM1NzhmIGFscGhhMTAwCiszNzA4IGE5MDkxYzQ5OGIxMDFlNTgyMzUyNGM4ZmZkMzY1MzU0MmIxYjAyMjQgYWxwaGExMDAKKzM3MDkgNjI3YmM0MjJhOTAyODY4MWYwZWViZjMxOWVmYTE2YmE2NDE2NmQ0YyBsZWdhY3ktdHJ1bmsKKzM3MDkgOGIzYTcyN2RjNzFiM2FjM2U5OWQwM2I3YjRjZGY1YWIzMTAxYWNlMCBhbHBoYTEwMAorMzcxMCAyNzJlMmM2NGI3NGRiYmI4OTg1M2NiMTU0MmNhNWQ0OTM0NDMwNjQzIGFscGhhMTAwCiszNzExIDZkZmI4NGFkZmU0MzExOWE5YTdlMTIxYzA4Y2IwYmM3NjZkNmYwODEgYWxwaGExMDAKKzM3MTIgNmI2MzAwY2M0NjRlNWE0YmMxNjcwYjdhNzI1OWVhYWEwZDg1YmQ4ZCBhbHBoYTEwMAorMzcxMyA1MGZhYjIzM2Y0MDQyMTMwMmE0ZTJjMjBjMDM5NjZmNGU4M2NmYmYyIGFscGhhMTAwCiszNzE0IDNkMTljYTQwZWI4MmRmZDJlOGY1YWQyZDZhOTViOTY5MGZlN2YzZmIgbGVnYWN5LXRydW5rCiszNzE0IDkyNWM5NTI4MzBjZTI2ZWJiYTY4YjI0YjMyOTJkY2Y4MWMzZDM1N2EgdW5sYWJlbGVkLTEuMS4yCiszNzE0IDYyN2Q2NDRiYzZjMTc3ZjlhNmVmNDk1NTNjNDIzNzVkYzljMDYzMDYgYWxwaGExMDAKKzM3MTUgOTYzN2MwNDk2MTdkMzM3NmQ0ZWU1MTc3ZDg5MWY2MGUyMzZiYzE3NSBsZWdhY3ktdHJ1bmsKKzM3MTYgZWQ3NTk5MjE3N2U4MzE3MTliMDY4ZGM2ZWY5OGMwOWU1YWVlYWRlZSBsZWdhY3ktdHJ1bmsKKzM3MTcgMjk5MjdmMDM4NmE2OWU4M2U5YWMyMmYwZjVhZmM4OTNiNTRiZDk2MCBhbHBoYTEwMAorMzcxOCBjNjJhNmRhN2ZlYWMzZDdhNTE3OWRkMTM5MDQwYjlhZTIxOTkzNDAwIGxlZ2FjeS10cnVuaworMzcxOSBhNTI1NjA2MWYzYTAwZjc2YWUyNGM1MTgxZTI2MDgwMWVkNTUzZTNhIGFscGhhMTAwCiszNzIwIDVmZDU1YTZhYzc2ZTgzN2MzMDA5ODU2YTMzNjY2YTU3MzI2MDRmOWQgbGVnYWN5LXRydW5rCiszNzIwIDMyODY1Yzg5Y2YxMmU2M2Q4NDQ0NWQ4NzBjN2QyMjY0MDA0ODY2ZTAgYWxwaGExMDAKKzM3MjEgZTE4MzUwMmZiNWJjNmY1YzNhNjM0NmFlYzA4YTU5MGY5ZmU3MjljMSBsZWdhY3ktdHJ1bmsKKzM3MjEgZmRiZDM5NTRmZWYwMGI0NDZhNDExNzhhNWY3NjIwY2MwNTYxYzc1NiBhbHBoYTEwMAorMzcyMiA1ZTkyYjEzMmU3MGZhMzJiN2JhMWQ0MTY0ZWE1ZWQ3NzcyMDIzMjFmIGFscGhhMTAwCiszNzIzIGQwYmIwN2Q0YzZmZWI4ZDJiMzBhZDQwOGZlOTU4YTAzYTBlNGMyMWMgYWxwaGExMDAKKzM3MjQgNzQ1M2UyYmE1MzYyYTQ0MzIxNmVhOThlYjZmMDA4MTdiOGFkZWI0NiBsZWdhY3ktdHJ1bmsKKzM3MjQgYWE0NzJlOTE3ZjZjMjMzOWY0NDAxNDgxODRhOWY0MmRmNTRiZTM3MSBhbHBoYTEwMAorMzcyNSA4NzcwNzNiOWY4YzMyNTRhODMyNTBiMjU2NGVmYzY1YzlmMWFiYWFiIGxlZ2FjeS10cnVuaworMzcyNiBlNGVmMWIxN2RhM2RiYzViOWJjMjFmMWEwYzZhMDI3ZDZiYTQ1MzFhIGFscGhhMTAwCiszNzI3IGNjMzExOTE2NGQ1YzJmMzY1ZWM3MjA2Yzk5NDM1NjU1MzI5ZjViYTUgbGVnYWN5LXRydW5rCiszNzI3IGFiYzJmOTgxNGNjOTY4NTVlYWVjZjA4NWZlNmYxMDhhM2VhY2UxZjUgYWxwaGExMDAKKzM3MjggOTQ0Y2M3YzY0ZTdjZGQ5NjEwNTczMGQwYzFkYTU5OWNmYjUwYTc5YSBhbHBoYTEwMAorMzcyOSA5ZjI4OGNiNTZhYjUxZjdhYTQ4ZjRkMzdmNjc4NGI1MWY4N2U3N2Q3IGFscGhhMTAwCiszNzMwIGE2ZWJiNjhkYjM0ZWI1MTYxZmQzMWY5NTY4ZDFjZWNkZjNkYTBlNzEgbGVnYWN5LXRydW5rCiszNzMwIDc3ZTBlYTYwNzk2YWU0ODRiY2RhNmVmOTYwMzJkMDJlMTEyMWM1ZWQgYWxwaGExMDAKKzM3MzEgYTc1ZjcwY2ExYmUwYTY0YzNlNzE5MTU5ZDkzZDVkYmEwM2ZmYTM2MiBsZWdhY3ktdHJ1bmsKKzM3MzIgZjUyMGI5YzdhZTZmNjVkYjEwN2E4MGM4Y2VjMTM2ODRlZTY2YzFlNCBsZWdhY3ktdHJ1bmsKKzM3MzMgNTY4YzYwNmEwZTMxMWI2NTQ3OWQ2YzFhYjhhN2IwOGI4MDA1ZmE0MSBhbHBoYTEwMAorMzczNCAxZjdkYWQ1NzZhODUxZDFiMWY2Y2FkMjJiYTI2N2RkNjJlN2I1NjZiIGxlZ2FjeS10cnVuaworMzczNCAyMDRiN2U3OTNjMTViNGJkMWQ0MGFkZTU2NTZhNWVkZmVkYWRjYWU3IGFscGhhMTAwCiszNzM1IDc4M2VmMzYxZjM5NTE1YThhZWY1NTY5NTgzM2UzYWM0MTA5ZTM3YWEgbGVnYWN5LXRydW5rCiszNzM2IDg5NjVlZjRlYjM5OWFjNDc2ZGNiZmViYTdiYTQzMWFhNWQ5YTZlZWEgbGVnYWN5LXRydW5rCiszNzM3IDM2NjRjYjg4YTAzMDA4ZWRiY2M3Zjk3NDg0ZTg1NThkMTg0M2I2YjcgbGVnYWN5LXRydW5rCiszNzM4IDUyM2Q0MjExODhiOTNhNTM3YWIzYjI0NzExMDIyOWI4YjI2ZjY5NGMgbGVnYWN5LXRydW5rCiszNzM5IGFlZTU1ZDk2OWExMjI0MWE3OGRkMTdkZWUwNmFjNzI4MTJiY2M5YWMgbGVnYWN5LXRydW5rCiszNzQwIGVmMDgyYzEwNzJhNzExNWRiZmMzMDM2ZWM2M2ZjZGYxYjg5YTVjNzkgbGVnYWN5LXRydW5rCiszNzQxIDViMjU1YTM1ODgzMzBiNTg4YzBjZDg1YjE3NjJkZTY1ZGMzN2RlMjcgbGVnYWN5LXRydW5rCiszNzQyIDkzOWE5NWYzZGNkZWE0MzFiODM4YmJkYjNiMzJhYmNiYmMwMWY2Y2EgbGVnYWN5LXRydW5rCiszNzQzIGJlNjgwMGE2MDE5YjRkNDIxNDcwY2M1OTgyY2Y1MjlmNjMxOWYxOTAgYWxwaGExMDAKKzM3NDQgMzY0MmM2NDQ3MmMwNzhhNjliM2Q4ZWZmM2ZjZTk2MzE1YmIyZGFhNiBhbHBoYTEwMAorMzc0NSAzNjQ4ZWRkMzQzZWI0NGM2NDEwZGRkZDg4MjRkMDQ3OWIwMzA1ZjE3IGFscGhhMTAwCiszNzQ2IDZkMjRiOTlkYzg4MWI4ZjM3NjFkYzBmN2VjYjRlOWZlMmRiOGNmNWYgYWxwaGExMDAKKzM3NDcgYzhiNzE0YjliYzVhYjJiNWNmNjAxN2MyMjAxNWM4ZDViMzA3ZjJmNSBhbHBoYTEwMAorMzc0OCA1OTk0OTQ5YTdlZTlkYjQwMWI5ZTZjYjUxZDA0ZTdkMzMwNTRmY2E4IGFscGhhMTAwCiszNzQ5IDFlMjY5NGEwNjkzOTg4YmU0MDk2OTczOTBlZmY2YTA1Yzc2MjE1ZDcgbGVnYWN5LXRydW5rCiszNzQ5IDkxYmFkMzc2YjRiY2U1ZWI0NmMyMzg1ZDIxMmUzNGVjNjU0ZWEwMWMgdW5sYWJlbGVkLTEuMS4yCiszNzQ5IDJlYTgxM2FhMjYwMmZjOTU2NDgxZTRmZGU4Nzk2ZjM1Y2JkMjFiMTMgYWxwaGExMDAKKzM3NTAgZjlhZGI4OWYyMDAxNmE5ZmE2NDU4MDA1NjdlNDIwMmMwYzUyYTRkMCBhbHBoYTEwMAorMzc1MSBmYTllNGRiNzkxMWRhOWZmYzA2M2FlODNiZTU1OWI4ZWMwOWYyZDlmIGFscGhhMTAwCiszNzUyIGM1Y2UzNTg0MDAxMzBhOWNjOTM2NGM5YmQyMTZmMTk1ZDlmNjY3ZTcgYWxwaGExMDAKKzM3NTMgMDcyNjdlZDEzNzEzNTkyYzAzMjk3YjA0MDI1ZTA5NjYzNTYwMGU4OSBhbHBoYTEwMAorMzc1NCAxZjg0MTc4MGVmYzIzZWVkZTA3NzRiNjAzZTYxYjg4OGMwMTk3YmY0IGFscGhhMTAwCiszNzU1IDI3ZjM5NWFmZTYwZjY5NjZkZTczNWQ3M2ZlMzdlMWFiZDYzZTNiYmQgYWxwaGExMDAKKzM3NTYgZmRiZDg5OGJjMWZlNjJkODQ3OWJhYTE5OThiNDZiODgyMDcxYjBmNSBhbHBoYTEwMAorMzc1NyA0NDg2M2M0OWE0MzZiZmEzMDhkMDkyNTM0ZmY2NDc0YTQ5MGE3NzcyIGxlZ2FjeS10cnVuaworMzc1NyBhMWFlZTc2OTliZWE2NTRlNGRmZGY5NWYxZjEzZDU1OWIyZTJiYmYyIGFscGhhMTAwCiszNzU4IDRhNzIyOTYyZmI2OTcwOTQ2NTNlMjIwYzZkYzRmODc5MjNiYzQ3NmQgYWxwaGExMDAKKzM3NTkgNzUzOWNjYjc3ZDI4OGFhOGU2YWVjMmVjNjg0NWE0ZDgwNDU3Y2YxZCBhbHBoYTEwMAorMzc2MCAzMzM2Y2RjZDRhNWZmNmM3NmIxMDE3OGQ2MGNkYTQ0ZDlkOGNiNWIzIGFscGhhMTAwCiszNzYxIDQ3MmEzNDdiYWZjY2M0OTgxM2E3MGRlZTNjOTI4MTEyMDE1NDQyODIgYWxwaGExMDAKKzM3NjIgMTMwYjA0ZmM1NGRjYzY5OThlMjBiYjJhMTQ5Y2RlY2UxOTc2MTU4ZiBsZWdhY3ktdHJ1bmsKKzM3NjMgZWQ0YzExNmI1ODkzNGU4MjgzNjUxOTA2ZGE1YzY0MGZhOTFmM2M0OCBsZWdhY3ktdHJ1bmsKKzM3NjMgODExZWY2ZWQ0Y2ExYmI0YzMyMWM2N2UyZGRmZDQzOTdlNTQ4ZDc3MSBhbHBoYTEwMAorMzc2NCAzYmI3ODhhMWRkYTA0NmRjZTVhNTUyMzBhOTg0ZTE5NzQyYTFjMWZiIGFscGhhMTAwCiszNzY1IDJiYmExODhjNmFkYWRlMzZiNzVkYjQxYzFhMmM2ZmU1YWVmMjhkNDUgbGVnYWN5LXRydW5rCiszNzY2IDA2MTA2MmY4YTliZmQ3ZGIxYjRkNjMxNGM0NzJiMzNjMjg4YzcwOTMgYWxwaGExMDAKKzM3NjcgMDkwZDBjZDk2MWFmMTc1MGVmOGRlNjhlNTU5ZjBiOTlkMzgxZjkxZCBsZWdhY3ktdHJ1bmsKKzM3NjcgYzIzYzFhYzkyMjA4MjQzZTQzNDgxMWY5ZGQxOWNjN2ZmYjE1MmU2NiBhbHBoYTEwMAorMzc2OCAzNWRiNmZjYTRkZjRkNzJlYzJiZmY3OGU5MmIwYjM0Yzk4ZjI1ZTYzIGFscGhhMTAwCiszNzY5IDA4MTczMmM2YzExMjk4ZDBhMDVmYzFhN2QwYTI0YTI3MDg4MTEzOGYgbGVnYWN5LXRydW5rCiszNzY5IGM1Nzk4NzViMjk4MDc4ZTU3Y2M1YjE2N2IzYmRkZTIyNzY2MjEyZTggdW5sYWJlbGVkLTEuMS4yCiszNzY5IDc0ODE5MDQwZTcyNjU3OTE2ZmI0MGJhNGJhNmFjZjBlOTZhMDAyMjIgYWxwaGExMDAKKzM3NzAgMDlhMmE2NjFlOGMwNTEyMWJkYWI5YWNiMjQ4N2IyZTI0ODVjODdhYSBsZWdhY3ktdHJ1bmsKKzM3NzAgNWYwZjhiZjdiMzVjZWQ1ZTMzOTU0MDdmOGU1OGFlMzQ1NmQwZmU4YSB1bmxhYmVsZWQtMS4xLjIKKzM3NzAgOWI0ZjllODIxZmQ0NmViNzExMTJkOTMxYzQ0MjllYWM0NjQxNDlhZCBhbHBoYTEwMAorMzc3MSA3YzNmYmM5N2Y5NDY3NzBlYWM0MGQ1MmY1YmE0OGU2Y2NlNzdiNzIzIGFscGhhMTAwCiszNzcyIGJjNWM5MjUwOGY1NjAzMDEyMGVlZjBkMTgxMTIzNDBkNTFkNjNiOGYgbGVnYWN5LXRydW5rCiszNzczIGRjYzk1YTEzN2E2ZjkxY2U5NTYxMWVmZDlhZDM4YTQwNmI4MmFlYjYgYWxwaGExMDAKKzM3NzQgM2I2Zjk1MDUzMDQzNjA4MGI3ODMzYTQyYmQ4MzFlMmRjNjlmMzY4OSBhbHBoYTEwMAorMzc3NSBlMjEwYTRhM2Q5ZjBjODZhYWJiOGM1NjExNGFlNWM2MTc4NWJiZDMzIGxlZ2FjeS10cnVuaworMzc3NSAxZmYzN2ZmNmFmZjRlNGQ2YjViMTJlMTg3YTM0Y2RjNTk3ZmE3NDY0IGFscGhhMTAwCiszNzc2IGEyN2Q2ZWMzZmQ0YTU5OTlmNjIwMGVkNzkxZjRhYzgzMjkwNGQwNjkgYWxwaGExMDAKKzM3NzcgZDY4ZjZjYzI2MTFlY2UzMjNkNzIwMTZkMTUyNDcxODcxODE3ZThjNyBhbHBoYTEwMAorMzc3OCBmNWMxOTc5YmVhN2NkNWMyY2EyYmFkZjNiODRkZTllYjNmNGMxYzcyIGFscGhhMTAwCiszNzc5IDU2Y2JmZGYzNzI1NGM5ZTA4NTdhZDFjZGRlMWQ2NWZlM2NjMmRhY2EgYWxwaGExMDAKKzM3ODAgYzI4NjhlZjI4YmVlMmIyZjFkMmJlYzlmMzAyNDI3MGEwYzJlYWYxOCBhbHBoYTEwMAorMzc4MSAxYThlOTBhMzczNTdiYWU3YjRhYmE5MjJmMWYwYWIzM2JmZGNlZjZmIGxlZ2FjeS10cnVuaworMzc4MiA4ZTk3YTY4YjJiMTdkMDFkYWM3NDU4NjM0NGZiMDY4Y2VjOGY4ZTY5IGxlZ2FjeS10cnVuaworMzc4MyBiZGJlNmQ4YTdhOGY4NmZiY2EyYjdlMGFiZWI5YWM3ZjUwMjg5NWNjIGxlZ2FjeS10cnVuaworMzc4MyBhNGY2YmEyZTQ3ZmZkNjMzYTI1NmQyNzg1N2E5ODlkYzA1MDVhMmZmIGFscGhhMTAwCiszNzg0IDk3ODE5NTY1OGU5YTM3ZTIwYjljMjA5NmFmMzYxNzQ4NDliNDEwM2MgYWxwaGExMDAKKzM3ODUgMDk0MjBlMmU5Mzg4NDVhMGQ1YWVmZmU5M2FkNDk0NGJmZjliNDEzMSBsZWdhY3ktdHJ1bmsKKzM3ODYgZTQ1OTQ4ZTJiNjZjZTQ4NWFkZTQ5MzJhOWRhNTRmZTk2NTVmODU1MyBhbHBoYTEwMAorMzc4NyBkZDZlYTE2N2YyYmQxYjc0MWM3MGZlODg2YjkyYTUwOGQzZjIzMzBmIGxlZ2FjeS10cnVuaworMzc4OCAwZjg4Zjk2NWJmZjI3Yzg4Njc1ODE5NzIwYWIwYzdlNTJlMDUxMWQ4IGFscGhhMTAwCiszNzg5IDMzOGZlNThiMmM2NzczODU4ZWEwMjJmNDVhZTMyOWIwODdiMTc0NDkgYWxwaGExMDAKKzM3OTAgMTQ3ZTk5MTk4ODM4Y2M2N2ZiODEwZDgxMWRlODFiMGIyYjZlMGFjMiBsZWdhY3ktdHJ1bmsKKzM3OTAgMjBmYmQwNDM0ZmI2MzRkZmMwMGI3N2FhYTNkYjMzYzRmNjNjNmM0NyBhbHBoYTEwMAorMzc5MSA3Njg5MWQwY2Q1ZmRhYzFlNDUxMDRlMzI4OWNmOGI3YWIwMjRiOWE1IGFscGhhMTAwCiszNzkyIGRjOGFlZDhiMjA0ZDE4ZmZkNzkyNDE1ZWY2NGQ2Mjk5OTA1MmIyM2EgbGVnYWN5LXRydW5rCiszNzkzIDhiOTA4ZTk5Mzk3NTdkYzM1MTI5MTAxMzU4Y2MyNGFmMzNhMWM4MzIgYWxwaGExMDAKKzM3OTQgODhiYTVkMTdmMzBhMGY1M2FiZmMzNjcxYzE3YjNlNDFjNGJkZTRlNyBhbHBoYTEwMAorMzc5NSA1ZDVlYjc2YmIyNzhhYTZjMTVhMjkyNDRlNzc2ZDJlZTZlNWQ5NWYwIGxlZ2FjeS10cnVuaworMzc5NSAwN2U0YzU3MjZmNzg1Njc4YTRmODgzODFiZjU4NjVjOTU0MzI3NjNiIGFscGhhMTAwCiszNzk2IGJiYTgwMDg4YTA0NGEzMzg3OTA2Mzk0NGQ5YmQ0YTdmMWNmYWJlYTUgYWxwaGExMDAKKzM3OTcgYzIzY2NhZWM5MjQ5MzI1ZDNjM2YwOWRhYjk0OTVlYzk2OThiMjRlZiBhbHBoYTEwMAorMzc5OCAwMzY4ZWY0OWZmNGM2MTc0MGMxNjNhYWE2NzI5OGM2Nzg2ZTkxYTQwIGFscGhhMTAwCiszNzk5IDUzZWNjZWQyZjJiMmExODRmMjM2MWYwYzliOTFhYzAyZjNjMWI5MmUgbGVnYWN5LXRydW5rCiszNzk5IDdjZTQxMjI5NWNhM2NhYjVhNDJmYWNkZWFiZjIyMGZiOGYxMDUyZDMgYWxwaGExMDAKKzM4MDAgOTdjNWU2MDdiNzk3NzMyNjdkMjg4YWY4MDVjMzM1YWViNDkxYzczOCBsZWdhY3ktdHJ1bmsKKzM4MDAgOGQ4YjdkYzk5OTgyZTM2MWQ2ODViYjAzZjUxMzA0YTJjN2ZhNThkOCBhbHBoYTEwMAorMzgwMSBjOWIzZjc3ZTE4YmFlZmFlNWE5MmQ5NTg1ZDRmYmRhODBhMjk5Y2NiIGxlZ2FjeS10cnVuaworMzgwMiBjM2Q3ZjgxNGIyZDA2NDAxYzdiMGNiYmJkYjljNjg4M2M2ODU2NTE3IGxlZ2FjeS10cnVuaworMzgwMyAyNjAzYjQyMGM1ZGVjYWM1MTc4YzQ0NjZmN2M5ZTNlNmE2ZWNiN2E2IGFscGhhMTAwCiszODA0IGU5YjBjY2UzYjk4MDkzZTBmNzRkYTQyN2NjYTljMmExMGQ0YzJjZjEgYWxwaGExMDAKKzM4MDUgMTdlNWM5NGY4NjJmNzY3OGYwYTQ4YmVmYjk5OWRlMTcyMjZkYTEzNiBsZWdhY3ktdHJ1bmsKKzM4MDYgMTVlMWI4NjEwNGE2ZTYxOGY5MmMyMTdmZDYzZDc4NTIzZDRmZGJhYSBsZWdhY3ktdHJ1bmsKKzM4MDcgOTk1YThlZjRhNWMwNGYzZTY4MTE4MTY4YmUwN2EzZWI4OTI0OWVlNSBsZWdhY3ktdHJ1bmsKKzM4MDggZWQyMTFjNzYxMDg1OGJkNmQ1OTRhMjA3MDdlMzVmYTI0MmJkNTAxOSBsZWdhY3ktdHJ1bmsKKzM4MDkgODdjYmY5ZTIyNzI5OGU2YTliNjUzMmJlOTJhNzcyYmVhNTUxMDBkNyBhbHBoYTEwMAorMzgxMCA1YzZjOTkwNjZiMmM3MTA5NjI4ZmY0MDNjOGRmNWY2ZjhiNTlhNzhkIGFscGhhMTAwCiszODExIDQ4YWVjOWQzODUyYTk1MjkxOWMwZGM4MmZhODFkNzA1MDg2MmVkOGUgYWxwaGExMDAKKzM4MTIgODY5ZmJhODA5YzY4OWUzZDY0YTYzNDhmOTVmNDMxZTQyYjg2OWE5NyBsZWdhY3ktdHJ1bmsKKzM4MTMgNWMwMTkzMWRhNTliZDFkMThlMzY3ZWMzYTliMTc4MmNlM2U3OTQ4YiBsZWdhY3ktdHJ1bmsKKzM4MTMgN2MzNTdjNmEyOGJkYzg5ZGVkOGE0OWU2ZWI3NDg2MzIwYjNmMGFkMiBhbHBoYTEwMAorMzgxNCA3ZWNkNjM4MDU2NmNiMzE4YjJjZTJkNmQ2ZWVlNjMxMjVlZTAyZGYzIGxlZ2FjeS10cnVuaworMzgxNSBlMDUzYTg3ODI4ZjQ0MjYyYjNhZDI2MzkyYmU0M2U0MTRjOTk2ZTllIGFscGhhMTAwCiszODE1IDk3OGJmMTM0ZjQ0YWI3YzNjODRjNDc2YTI5MWU3ZjRlZDk3ODM2YTYgYWxwaGExMDAKKzM4MTcgOWZiZjM0ZTFjMWY3NmJmMTQwNGY4ZWJlNmMyYjI2MzcyNDQzZTQyMiBsZWdhY3ktdHJ1bmsKKzM4MTggNWExN2M0M2RjZmYwM2NkOTIxMGQ1Y2NjNWE4MzUxODlhMTc4NDQ4YiBsZWdhY3ktdHJ1bmsKKzM4MTkgNDA0N2YyMjRlZmRiMGVjNzg4MmRkYWJlYTI4MDIyMDc2N2RkNTlmOSBsZWdhY3ktdHJ1bmsKKzM4MjAgNjMwZTAzMTA5YzYzOGRkMTZjZGU5Mzc4YWZhNDExZjhjMjlkMWY2ZCBsZWdhY3ktdHJ1bmsKKzM4MjEgZGYwYWVlNjQxMTRiY2YxZjkyMzk3YmM4ZmM4NDQ3YWI2MTRjYmJiZSBsZWdhY3ktdHJ1bmsKKzM4MjIgMWZmNmNlZGQyMjQxMmRlZDc1NzQxZDlhNGQ3ZmM3YWRhNTBiOWJjNiBsZWdhY3ktdHJ1bmsKKzM4MjMgMWMzNjQ0YmFiODZhYjUzZjJmMjkyNjQxMTFkM2Q4MmFkMTE4NTZiNyBsZWdhY3ktdHJ1bmsKKzM4MjQgYjY4ZmI3Mzk4NWQ4MzZhNDMyMGFlYzBjNmQyZDMxYTYzNDI3YWQxMCBsZWdhY3ktdHJ1bmsKKzM4MjUgNDQzNDcxZmYzMTQ3MGEyZWIzMjMyOTBiNjJhZDhlMjFhNjkwM2E2YiBhbHBoYTEwMAorMzgyNiBiYTI0ZmM4ZDNmOGM1NWRmNWIxYzQzYmVlZmQxMjM0NDE3MWY2OGY3IGxlZ2FjeS10cnVuaworMzgyNyAwZWZhMjQwYjFkYmMwNTdkYzQ0ZmExZDQ0ZDRjNGQ4ZmVkYWM1NjM4IGxlZ2FjeS10cnVuaworMzgyOCA1MDU1MzA4MTUyYTRlMjg3N2I5ZTVmOTcyZGUyN2FlODczZGIzMzg2IGFscGhhMTAwCiszODI5IDVjZWY0ZjVhMjhjZWRmY2E1ZmFkZTgyNWVkZmM2MGIwN2ZmNmU4ODggbGVnYWN5LXRydW5rCiszODI5IDllYzdkNmY3NzUwMGNhMDkwYzIxOTFlMGIzYjQwYzY2YTNlMGZlNzcgYWxwaGExMDAKKzM4MzAgODFmMjZiZjExNzhmOWUzNzEwYzA4YWRmNmI4Y2M5NDJiMTZmZmQxNiBsZWdhY3ktdHJ1bmsKKzM4MzAgZWUzZDVlYTEzYTM3YjkyYzZlYzA1OWVlOWQ4Mjk4NzNiMTYxOTY0MiBhbHBoYTEwMAorMzgzMSA0OGFhM2QzMzE0YWMxNzFkYjVjZTE3ZjY1NmU0YjRjNzEwMDBlMWEwIGFscGhhMTAwCiszODMyIDk4MDYyNmVjYWQ2MWQ4ZDA1NmYzOWZlYzRlMmJhODk0MzRmYmFkYzYgbGVnYWN5LXRydW5rCiszODMyIDVjMzUwNjMxYzgzOTYwNWExZDNhZGM1YmY0M2NhZjE0ODA1ZDFmMWYgYWxwaGExMDAKKzM4MzMgM2U2NWJmZDE1NzZlZDk4YTA4YTE5NmM3MTZhZDVjODJhMzA0MTFmYyBhbHBoYTEwMAorMzgzNCA5OTMwMDg3ZWE4ZjVlNmU4ZDdjYzU0MzI2YTZmYjg0ZWEyOGI5Yzc1IGFscGhhMTAwCiszODM1IDhjODlmNmVmOWY5ZjhmNTQ3ZDU3Yzg1ODZlMzBlZWI4M2RlZjM0MzQgYWxwaGExMDAKKzM4MzYgY2I1ZmQ4MDA2OGNlZjI1Njg5ZGI3ZGNiYmRmOWUzNzE5Yjc5ZThjYSBhbHBoYTEwMAorMzgzNyBiYWZjNTMzZTBlYjZhYzVhYTVmMDgyZWNjZmJkMzE4Mjc4ZjZjNTQ3IGxlZ2FjeS10cnVuaworMzgzNyA3MDMyYThhMmM0MmM1MjI0ZTNjZjUyZjNjODg2ZWMzNmNiNTNkMTMwIHVubGFiZWxlZC0xLjEuMgorMzgzNyBjOTZmYzQ5N2I5MzJmNWRkMjg2MDNiMWRiZGM1MWUxYzllYjdkMDQxIGFscGhhMTAwCiszODM3IGIxNWI4Y2M5YjhkMTBlMDM1MmEwYjhiN2U4ZDUxZmEzMDlkYjZkZjMgbGVnYWN5LXRydW5rCiszODM5IDI2OGU1NzYzMDAxNjIwMjgwODYwOWUxYTg2ZDBkYjA4ODM4ZDY5MjUgYWxwaGExMDAKKzM4NDAgYjcwZjA4OTA3NTQ2MTdiZjNmODU4MTI0Y2ZiYjdjMDUxNzA2YjQ5YSBsZWdhY3ktdHJ1bmsKKzM4NDEgNmY1MmI1Mzg5Yjg4ODE3ZDQ0YjcxNDg4NzFkN2MwNzA0OWFhOTc3OCBhbHBoYTEwMAorMzg0MiBlMzgwYjRkNTRmZDM5ZWFmM2FiODlhMWM5NGUzYWQxODk1ZDY5NjhmIGFscGhhMTAwCiszODQzIDVkZmQxZDUxZDY2ZGVhYTU2NWU1YTc3MGU0NmNmMDBkODBlYWE1ZWEgYWxwaGExMDAKKzM4NDQgNjk2NmQ5NTdiNWIxZTc1MGY2MGZkZTUzN2IzOWE1MGQwYjhjYTVlYyBhbHBoYTEwMAorMzg0NSAyYjVmOGIyMDIxYmZkNzMwOTRjOWY4MjI4ZWU0OGY2NjI0ZGM1ODE3IGFscGhhMTAwCiszODQ2IDhkZjcyZTU4ZmE5ODAzMmM3ZTQyNjFhMTUyYzQzNDg0MDZhMmE4ODEgYWxwaGExMDAKKzM4NDcgYWQyMTY4NzZjNDdmYmZmNzA0YjNhZDIxMDVkOTlhMmE1YWI4OWMyNCBhbHBoYTEwMAorMzg0OCA4YzY4MTRmMzRjZGQ5MzZmMDczOTBjM2QwN2I5ODE1ODhjNGZkYjBmIGxlZ2FjeS10cnVuaworMzg0OCAyMmI3ZDM3MzViZDI1ZmVjM2ZjY2U0MTZmMzRjMDhmODk4OGUyNzY5IGFscGhhMTAwCiszODQ5IDZkMzUzMDgyNjFmNGY3NGQ4NWMxMDNiOTc1Yzg0MzRlNDA3Nzg1YjkgbGVnYWN5LXRydW5rCiszODQ5IDc3MjNlMDAwMzk4ZGE3NzQ0NDlkN2VmZDY1MDU4YmMxOTI0OGU1MGYgYWxwaGExMDAKKzM4NTAgNTk3MzM1NGZiNDk5NTRmNzI0NjVmNzEzMjJjYWVjYWI0NmFkMGM3NSBhbHBoYTEwMAorMzg1MSBjZDI3OWUwZjc3ZDg1M2YyNjNjYTc2MzU4MGZlYzEzNTM1OTZkNDc3IGxlZ2FjeS10cnVuaworMzg1MiBjMzQxNWIzMTliNGU4NjkyZjljNjRlMjc3YTQ3ZmJjMTZiOGUxOGZkIGxlZ2FjeS10cnVuaworMzg1MyAxNzJhYTBlZWViNmY3Y2JmMGI3NTQxZmZkZDgzNzg4YWFkYjExZjk0IGFscGhhMTAwCiszODU0IDI3NDA2NmJkZTI0MTIzY2FjMDU2MzVjYjU5MjM4YjAwNmNmZTQ5YWEgbGVnYWN5LXRydW5rCiszODU1IGRmMGZiNzg4YzBjMWY1MDY1MzMxMzg4YmIzOTFjNjRlNDQ4NTBlN2MgbGVnYWN5LXRydW5rCiszODU2IDllMzQ0NDhhMDA1ZWQ3NWZiMGE1YjU5NTc3MTRmNGM3YTJjY2ZkZTIgYWxwaGExMDAKKzM4NTcgMTZkMWRhYjNmMmMxYjliMzMyYTc2NTAyYWViMDZlNzNjZTkzYjhhYiBhbHBoYTEwMAorMzg1OCA4Y2M5MDhiMGQ4M2JkZTI1ZWYxMTljNjUyNzk0MDc2NTJhZjA5ZGRmIGFscGhhMTAwCiszODU5IDMyODZiZmY0NDNjNmEwNjYwYmNkNTgxYjFjNzQyMWY4Y2Y4YjRkNjEgYWxwaGExMDAKKzM4NjAgMjc0YjkzYjEyMTEzZjU4OWE1NWQ4ZmE2ODRjODA4Y2E0OGNiNzE5ZiBsZWdhY3ktdHJ1bmsKKzM4NjAgZTVkNjY1MjMxYzU4OTRjNjM2MWIzM2M4YTJhMDdiYmNlOTI3ZDBlZCBhbHBoYTEwMAorMzg2MSA4ZWFiMmVlNDBmMzJkYmRlZDhhYzY0ZTJkY2JkOGViOGE2Y2M3NWQ0IGFscGhhMTAwCiszODYyIDI0OWZlNWUyNGUyMGViOGQ5ZTNhNzcyYjdiZWMxNjc3ZmQyZTVmODIgYWxwaGExMDAKKzM4NjMgOGFhYmU5YWFlMGZhMDdhNmFhNTQyZDFmZjhjMjgyYWVlNmM3NmM1NCBsZWdhY3ktdHJ1bmsKKzM4NjQgY2Y2MGEyYjI0OTc5ODU4ODlmOGJmNDFiMDE3NjU1MTM2MGJhMjlhYSBhbHBoYTEwMAorMzg2NSBmNGRiOTJlZWYyYWY3MTdiNGVjZmQ3NTUxYjRiMGY1NDc0NWIzNTEzIGFscGhhMTAwCiszODY2IDAyMGQ4YzJkOWQzY2ZiM2QyNjg1YTA0YjM2ZDM2YmYzZDVkMzQzYjkgbGVnYWN5LXRydW5rCiszODY3IGJkMWE0ZDcxN2U5ZDFlZTQ0ZWE4ZWEzYThmZWNlNzQyZWVjMmZjZTIgbGVnYWN5LXRydW5rCiszODY4IDc4MGYzMzViZjUyNGI3MDU5YWU2NDI1NWY5MDllMDBlNmJiNWE5NGQgYWxwaGExMDAKKzM4NjkgNTlmZDQ2ODZmODhjYTY0YjRiN2IwM2U4YTYyZGIzNGFiNDNjM2YwNSBsZWdhY3ktdHJ1bmsKKzM4NzAgYjNiZmY1ZWQ1ZDNkMDg5NDFjYmQ0ZDI1Y2Y4NDQ5MmU3MzJlZWM4MiBsZWdhY3ktdHJ1bmsKKzM4NzEgOTYwMDU1MzkwMGQ0N2VhMTQwNTAyODNjZDhlZTlhYmFkYTQ0MTdmNiBsZWdhY3ktdHJ1bmsKKzM4NzIgYjMzNzIwZDBhZDk3YjE1Mzc5NjE0OWVkNWE2ODgzMTljMTU4YTM0OSBhbHBoYTEwMAorMzg3MyBjZGFmYzk1MWU4ZThiMzBmZDEzMjA2ZjRiODBkZjE0NWUzZTNkZDhlIGFscGhhMTAwCiszODc0IGRkZGNiYTIwMzhiY2I1YjJmMTlmZGYwZDVmY2JkNTNmMjA4MGU4M2MgbGVnYWN5LXRydW5rCiszODc1IDdkMjFjOTIzYjU0YWViZjNjZGQ3MzFkZmY1OTIzOTg5NjM1NDE0MGUgYWxwaGExMDAKKzM4NzYgOTAzNzk0ZGY1ZWE5ZWVkNTVhMzAwYWNmMmY3NjFjNTc4ZjI2NGE5MSBhbHBoYTEwMAorMzg3NyBlNDQ0OTlhNDRjYjhlMzc0ZTM1YmJmNTRiM2FhNmJmYTBmNjE3NzA5IGxlZ2FjeS10cnVuaworMzg3OCAzNzAwNTBjZDBiNmM1MDFlNjAzNDhiMDlkNGJmYmFlZTI0M2JmOGFkIGFscGhhMTAwCiszODc5IDhkMjZlZTI0YWQxODJlYTBlOGFiNjcxYTQ3Zjk4ZDc1OTE3MmMxYTkgYWxwaGExMDAKKzM4ODAgM2FjZjgxOGYzNTQ4MzFmNDYyMzY3NTUxYjFiZWMyMGE1MjliYmEwMyBhbHBoYTEwMAorMzg4MSBjZGIxNDA0MWNjODdiYjY0MGFkMDRiMDRiMjAyZmNmYmNlN2JmZGVjIGFscGhhMTAwCiszODgyIGFjYmE0NDI3ZTg5YzcwMDA3NDhmOTg0YmRhNmViMjNhNWZjMzcyZWQgYWxwaGExMDAKKzM4ODMgM2QwMTY5OTkyNjRhYzJjNzNlYzhkNmI0NDBmMWQ4NmY3ZDU4MjFjNSBsZWdhY3ktdHJ1bmsKKzM4ODQgYWYzZjJhMDNiYjE4ZmUwZWVmOTdkOTZlZDRlYTE5YTEyMmE5MmFmZSBhbHBoYTEwMAorMzg4NSAzY2RkYzY3YmUzZjU3NTY2MmNmNzM0YjUxMjQ3MWVmYjUwMGY4NjI2IGFscGhhMTAwCiszODg2IGFlNGI5Y2I1YmExNTYxMTI4YWNiY2NjMzk3YjAwNmYxODEzOTA3MjQgbGVnYWN5LXRydW5rCiszODg3IDA2YWE2MDhjNTg5ZTg2YzU4NmJjMWNjZDI2MGZmNWI1ZjRmOTAzZDYgbGVnYWN5LXRydW5rCiszODg4IDkxZjg0NmY2ZDZhNjFkMDQzZDBlNzI0Zjg1Yzc4NGQxNGE3MTVhNTIgbGVnYWN5LXRydW5rCiszODg5IGVhY2FhNGYwNzgyNmQ5YTAwYjIzZjIxNjA0OWQzZTM4YTg3Y2E0NjkgYWxwaGExMDAKKzM4OTAgMmEwZDQ5OTc0MGI2MjRiODgwNzI0Mzk4MzNmMWViZTA2YTc2NTQ5OSBhbHBoYTEwMAorMzg5MSA4MzYyMmI3YTAwYjUyMzhmODMwNTkwNmNmOGUzNGM4N2NiYzA0OWRhIGFscGhhMTAwCiszODkyIGVhYWJhMmNhZmVlYjljMzQwNzg5ZWEyYmE0MzQyMjFjMzk1MzExODkgbGVnYWN5LXRydW5rCiszODkzIDJkMGVjZTU2MDQwNjlhMTYyZjc5NDM0MGJlYjFhOGM4MDQ0OGE2OTYgYWxwaGExMDAKKzM4OTQgNzJmOGUxZTYxNGYwNjMwMzU3NzU5M2M3MWQyMWZkNjkxNTVhOWE1NyBsZWdhY3ktdHJ1bmsKKzM4OTUgNDU3MjhiZmVjYjc2OGYwMjEyODU4NzdjNjE1MWZhOWU2MDFhMzI4ZSBsZWdhY3ktdHJ1bmsKKzM4OTYgNjk1ZmI0OTRhM2EyMmZjOTM2YjQ0ZjUzMGQ4NTljZWNkMTdiYTBiMCBsZWdhY3ktdHJ1bmsKKzM4OTcgN2JmNmIxMjhlOThjNDg4NjhlNTNkN2JmN2JiYWMyNTkyODhjOTAyNSBhbHBoYTEwMAorMzg5OCBmMzI2Mzc1OTY3OGVmMzg0NzJmZDFjMzg2NzE2YTFhZTAyY2IyMjg5IGFscGhhMTAwCiszODk5IDQ0NGUzNDlmOTYyZjBhZTMwMDY4MjUyZTU5ZGJlNTc3OTFmY2M2ODAgbGVnYWN5LXRydW5rCiszOTAwIGIyMWYwNDhjMjNlOWUwMjg0NTBmMWYyZWM0ZDA0YWViNTcxMjliYzQgbGVnYWN5LXRydW5rCiszOTAxIDI4OGE0NjA2ZDJmZGUxMDA2OGRjNzljZWE2YWNkOWY4MDc0NTU4NTYgYWxwaGExMDAKKzM5MDIgMDIxZGFhYmU2OWQ4Nzk1NjYxZjc5ZjY3ZWFlYjI4MmZmMzk2YTUwMCBsZWdhY3ktdHJ1bmsKKzM5MDMgYzE3MzYwYTE2NTg3MDM4YzViZWJiZjNmZGU5YjFkZWU3ZDNhM2YwMCBsZWdhY3ktdHJ1bmsKKzM5MDQgMzJkYTU3ODE4ZTk3YjVmZmQyMDhlYjk2YmVhY2I0YTBkOTgzMGRiOCBsZWdhY3ktdHJ1bmsKKzM5MDUgYjk2MzRiZDVjYTU1YTk4ZTJlZmQ2YjI3OWMwZDkyOWEwZGRmNmM2MSBsZWdhY3ktdHJ1bmsKKzM5MDYgMjM4NGZhYTUzNTBmM2I2ZDFlMGYyYjEzZjJmOWYwZDA1NmI0NTQ1OSBsZWdhY3ktdHJ1bmsKKzM5MDcgYjNmY2RiZDJkOWJiYTUzYjU3ODU5ZTgzMDEyNDJmZTIxYzRiYTMxMiBsZWdhY3ktdHJ1bmsKKzM5MDggOGQ3YWIyYzdlOTkzMzA5MTAyNzVmMDFkYjkxZDhlZWU1NTE2ZDQ1NyBhbHBoYTEwMAorMzkwOSBlOTZhOGNmYmJlZjFiNmEzZGRmNjNlZjkwZmQwOGVmN2Q2ZmU0Nzc5IGFscGhhMTAwCiszOTEwIGM5NjQzNjRhOGY3ZjhlN2MwNGZlNzdlMjk2MmRjMmYyODQyMzYwODcgYWxwaGExMDAKKzM5MTEgYjJkMThmYTUyOWY0ODc2MGNiZGI0YTU3MWQ0MjM1MDcyNTg4YjhhNiBhbHBoYTEwMAorMzkxMiAwNTU2NjE3YWEzMzg2ZTcwZmY0NzBlY2NlMWY2YTYwMzcxZWM0NjEyIGFscGhhMTAwCiszOTEzIGQ1OTBmZmQ1NGY4OThjYTExN2YwMDI3OTIwMzQ3YzFiYzJlOTE5NmUgYWxwaGExMDAKKzM5MTQgNzliYjY4MjcwYzdiMTJjZGIwMzZhMGFmZDYyZTI3Y2VkODVhMTc2YiBhbHBoYTEwMAorMzkxNSA0MWJjZDE4NTNmZWE1N2RiOWI5ZWQ3ZjgyOWI3NzdmOGUwZjhhYTg4IGFscGhhMTAwCiszOTE2IDEzMTMyM2YxNzE1OTIyZmRlYzBhNzQ1YmEwYzlhYTJkOThjOWYxNWQgYWxwaGExMDAKKzM5MTcgODEwMTg2NTBkYzMyNDVhOTZlYmMwNDMwY2ZiMzhmOWEyYjkwYWY4YyBhbHBoYTEwMAorMzkxOCBjMTNiYmRmZWViZmZlNmMxZTBmNGUwYWFkNWE3YmNlMWQwYmJjYmRhIGFscGhhMTAwCiszOTE5IGNhNWVkNTJhY2EyN2E2YThkNzYwZWYwY2I5MTc5MjhiZTI5MTVhMDYgYWxwaGExMDAKKzM5MjAgZmM0NWU1NzdmZjliMjBjZWE4NTM3OWI3ZDI3MDRhZDdlYTc0N2Y2MiBhbHBoYTEwMAorMzkyMSBhNzA0MWQ2ZjdkZTNlMzU4OTc3ZGE5Mjg3OGRjMjQ1NTRkMjBjYTEyIGFscGhhMTAwCiszOTIyIDVlZmZhYWQ3MWJhNTJlNWU2YjQ0MGM4ZDg1M2I2NGY0OWIyOTZiNWQgYWxwaGExMDAKKzM5MjMgYWQyMjcwZTcxZWMzZjBiNjUzYzI3YzI2ZmExNWJhM2NlZGVlOTI5NCBhbHBoYTEwMAorMzkyNCAzNDY5ZDA0ZTNlMzZkNWZjYTg5OWJmNGNiMGM5ZjE1NWI1YTQ3NTEwIGFscGhhMTAwCiszOTI1IGYwNzE0YmI0ZWE5NmExZTEwMDgzMjJlZDViNzFlNDM5Zjg3MzMyNzggYWxwaGExMDAKKzM5MjYgMzM3YWJkYzE1ODRhNDI1ZTU0NDNhODkyN2ZkYTMxYmViYmExNjU5YiBhbHBoYTEwMAorMzkyNyA3Yzc1ZjYwNDY4ZjgwMmQwZjczMzI5NGYxY2ZmYjZhZmJjNTE4YTdlIGxlZ2FjeS10cnVuaworMzkyOCAyMjM2ZDcwOWZmMmRhZWE2MDhmYTA0YmRlYzUzOTFkMjE1OTZkNGI2IGFscGhhMTAwCiszOTI5IDkwYTIwOTkzNzQ3ZDFmMzhhNWEwYzRiYjVmMjUyNDYwYTU2ZDMxYmQgYWxwaGExMDAKKzM5MzAgYzFjZGVlZDhjNTE0NGY1ZWU3MjMzMmU3M2U1ZTA0MDZiZGMwYjVjZiBhbHBoYTEwMAorMzkzMSAzZDhiYTQxODQ4ZmYwZjgyMjU0NDQ1ZTI2OWViMWM4ZTMzMDdjYjhhIGxlZ2FjeS10cnVuaworMzkzMiBiNDU0ZGM5MjQ3YjA3NmI3Y2E1N2NhOTZlOGMxMjRlMGRhMDkyOGE4IGxlZ2FjeS10cnVuaworMzkzMyA5OThjNjQyMmNkOGFhZTAzZDI4YjhhNWQzMmNiYjZjY2I2NjhhMzE0IGFscGhhMTAwCiszOTM0IGJjZjBiOGRmZGFlOWY0NDZkNjEzMWU0OWUyODYyNGQ4MzFiMzhiYjQgbGVnYWN5LXRydW5rCiszOTM1IDdmZGVhZGZhODNlMGNjNjg3ODhjMzcwNDljYmIyODcwYjA3ZTAxYmUgbGVnYWN5LXRydW5rCiszOTM2IGFjMmU1Y2MyOTk0OWQ5ZWQ2YzNlYzA1OTQxNTQ5M2FmNjAxYjMyYTEgbGVnYWN5LXRydW5rCiszOTM3IDU5NGE4YzEyZDY4ODI3NmYyZDIyNzBmOGI0NmMwZWRmMDRjYjBlZTkgYWxwaGExMDAKKzM5MzggZmNhMmZlZGVhNzFjYzY3YWEyMjBiZWZjMjVhOGZiNjFhOTVhYjRjMCBhbHBoYTEwMAorMzkzOSAyYzZmMTMzNzgwMWNjMDEwMmVmNzMwOTZiZjBkZTZhNmMxYWUwMTgzIGFscGhhMTAwCiszOTQwIDEyODdmYjA1OTU4ODhjMDE0N2M0NTVlYjY2MjQ3Zjc3OGQ0ZWVkYTQgYWxwaGExMDAKKzM5NDEgZjY1Nzk0ODg5MzQzNzBhNDQ0OGU2ZTNjM2ZmNzU0MmQzZTc1YWQ0MSBhbHBoYTEwMAorMzk0MiBhYzllMTJiNGVhOGM2NTdiY2EzNGUxOGE3MTE3YjBiNDRlM2RmZTE3IGxlZ2FjeS10cnVuaworMzk0MyAyMGRmNjUzMzc2YjQxN2I5OGUyYWFhZWQzYWRlYjQ3NWFjOTE1ZjMyIGxlZ2FjeS10cnVuaworMzk0NCA2NzIwMTE4NzFhMWI2NDA1OWI4ODAwZmFlMWU3ODdiNDAyNTUxNTE3IGFscGhhMTAwCiszOTQ1IGE1YmRmZjk3MDU5NTFmYTZjZTdhNjRiOTQyMTVlOTY1MDc4OWQ4YzQgYWxwaGExMDAKKzM5NDYgODhkZTIxZWY0YThhMzBmNmE5MTY5Yjg5NmZjMjZhOGM3YWM5MzcxZiBsZWdhY3ktdHJ1bmsKKzM5NDcgYmE2YWM4MmZjYjY4NmRlMTVjYzM2YTdlM2ZkMzQ3NThjNWE0YWQ4ZiBsZWdhY3ktdHJ1bmsKKzM5NDggYjM0NDM1NDZkNmVlNGIwMDk4ZjkyYjBjNTQ0ZWIyNTQ3MWU5MDgzZCBsZWdhY3ktdHJ1bmsKKzM5NDkgNDU3OTAzNTZlMDI0Zjc2MjA2YmMxYTQwZThjYTdhYjUxYjZhMDg1MiBhbHBoYTEwMAorMzk1MCAyMTk3ZGQyNDFkOGRjODYyMTVjYmIyZDlhYmVmODE0YTM4NjZmYjc2IGxlZ2FjeS10cnVuaworMzk1MSBkZWE2N2MyYTRjMDdmM2JkZmVjOTQxMmI2MWI4ZDE0MGY2OTNiMzQ4IGxlZ2FjeS10cnVuaworMzk1MSA3OWFiNGRmOWQwZjVmZjJmMmM5YzNhMzA2ZjFmZWIxYWQyYzUyODE0IGFscGhhMTAwCiszOTUyIDllMGVjZTZlZDgxZDdhMGFkNDU5MzRkNjIxODBjYjVjMTBkMGE5MzMgYWxwaGExMDAKKzM5NTMgY2EzY2NhYTg1MDYwMjZmZGUxZjJiOTY4ZTNjNTJhZTQ3MjE4NDk4MyBhbHBoYTEwMAorMzk1NCBlY2JhZGI4MTg4NDc1MDNiNjhiZmZlMWFkZjFlNzRjZjRlNTdhNDdkIGxlZ2FjeS10cnVuaworMzk1NSBiMmM5MjJjZmI0ZDk3YmNmY2Q4OTUwY2Y5ODY1NDU0MjU4NjYwZDZmIGFscGhhMTAwCiszOTU2IDRiY2Y1ODRjMTU3MmI0ZjI3MTgwMDA2MDVkZmE3OGU4ODgzNTc0NjYgYWxwaGExMDAKKzM5NTcgODNiNDFiZjE5MzkyZWQzZmY0YWI3NGEzNjE3YmJkMzk5YTgzNDQ4NyBhbHBoYTEwMAorMzk1OCBkNzQxMDQxY2IwNzZlYmNiZTFmNGJiMzk3YTk5ZWZlYzk0OGRlZWNlIGFscGhhMTAwCiszOTU5IDA5ZDc3YmI3MWQ3NWI1M2RlYjVhNDhiYzIzYmFmOTdjNDU3MDZmZGUgYWxwaGExMDAKKzM5NjAgY2UzMjg0NzE2NGUxZTZkMDc3MmM0OTEzNmM5MTNjNGM4MDJhMDA4ZCBhbHBoYTEwMAorMzk2MSBlNzZjNjg3YWM3ODFkNDJhNzQzNTk2OGEyNzQ0M2U3MzVhNDMyZmQ1IGFscGhhMTAwCiszOTYyIDZlYzE1MjIyMTc5MmU2NWY3YTExZTJhYjVlZWY1ZDE0OGJmMWYyYzEgYWxwaGExMDAKKzM5NjMgMzNkMzM0NDNlYzQ1OWZkMjI4Y2Q1NDVlMTRkNWU5ZDVkYjliYjRiNCBsZWdhY3ktdHJ1bmsKKzM5NjQgMzAxZjhjYTk4ZTBiNWY0NDBjOWQwMTQ1MDc3MmQzYzhlMGVhOGExMyBsZWdhY3ktdHJ1bmsKKzM5NjUgNTdiOWI3N2RhMjFiMzlkNWE5YTVjOTE3YTgxMWRmODJmMzlmOTIxMCBsZWdhY3ktdHJ1bmsKKzM5NjYgNWU1YTYxYmRkZTBiNzgxOWNkMjM5ZWVkZTk4NWIwYjZiZWQ2OGI1ZiBhbHBoYTEwMAorMzk2NyA5MDdjNWRkODljNmNlZmJhOGE0OGQ0N2RiMzlhNDA5N2Y5NWI3MjFhIGxlZ2FjeS10cnVuaworMzk2OCA0ZTdlYjVhM2ZiZGFmMTIxNWVkNzAwMzY4YmQ5ZmU4ZDIwODkwMTFmIGxlZ2FjeS10cnVuaworMzk2OSBjMmZmMjE2M2YwYjcwYzFlY2QwZDhhYWMwM2Q1MzM5YTQ0Nzg5NmUzIGxlZ2FjeS10cnVuaworMzk3MCBlOGJmMTA3NzE3ODEzOTdiOGQzNzQ1MjlmMTEyZjk0YjQ5YWM4NTAzIGxlZ2FjeS10cnVuaworMzk3MSA2MGE3MjE0ZjMzYTg4MTY1YzcwNGI3MzE5ZWU2MjhkNTNiY2M4ZThhIGFscGhhMTAwCiszOTcyIDU0ODg5MTFlYmMyNmVjNzI5NjVhYzMwOTFiMjdlMDMxMGJiMTcyZTcgYWxwaGExMDAKKzM5NzMgMTQzMWFiYjI4MzUzZjQ4NTBlYTVkYmMyMWIyMDYyNGYwZWYwY2RjZiBhbHBoYTEwMAorMzk3NCAxMjlkOThiNTE3YzI1NmZlODViNDM5MjYzNzZhYTA2NjRkN2FmNDllIGFscGhhMTAwCiszOTc1IGE3NTRiYzc0ZTU4NGRhZWE3ZjEwZjQ4YmVmOGM3MzE5OWNiYWM5NGMgbGVnYWN5LXRydW5rCiszOTc1IDc1OTM5ZGNjOTM4YTcxYWRhMWVkODljMzU5MTI2YzBkYzE2MDFjMTcgYWxwaGExMDAKKzM5NzYgMDc3MDgwZDc1OGRkYTY4MmVkNjE4YTNhNWM5YWZjZGQ3N2EyZWUyOCBhbHBoYTEwMAorMzk3NyBjNmFmYjk2YTQ1MjMwZjU1MWRmMTRhYzIxMTljYzgwYTM2NWMxZWFhIGFscGhhMTAwCiszOTc4IDVjMjlmNGIxYjI4NTE1MjUzNGEwZTI1NzZmMzcyNzY5NTBiZmJkYjMgYWxwaGExMDAKKzM5NzkgZTI5MTEwNWIxYmVlYWIyNjljN2EzNGNkYjg5MjE3ZjFiMTc4ZjU0YSBhbHBoYTEwMAorMzk4MCA2OWQ1ZGMyNGNiM2I1NTlmOGNkMTllYWU1MjkwM2QwMTdmMzA1OTQ2IGFscGhhMTAwCiszOTgxIDI0MWMzNTVmZDllYWQ1NzNmZjA4MDg5MWY1MTMxMjc3M2Y0ZmU5YTIgbGVnYWN5LXRydW5rCiszOTgxIDhkZWQ4YzY1NTExZGE0M2JkMGI5MDM0NzA4NzViYjRkZWI5NWVkNjAgYWxwaGExMDAKKzM5ODIgMmU4ZWFlZTllZjQ1Y2VhNmVjMWE4YjI1Njk4MWU0ZWJjOTgyNzllYyBhbHBoYTEwMAorMzk4MyBiZTJkYjMxNDIzNTc0ZDYxODRiYjVhMTRiYjk2NzhlZjY3ZTAwNzM0IGFscGhhMTAwCiszOTg0IDIyMWQ0N2IyOTc0ZTczYWI3OTFhNDBjYjlkOGFjNWNmNDRhOTk3NzMgYWxwaGExMDAKKzM5ODUgNzhhY2FkZWEzOTE4ZmM5NjdlNTU4ZjBmZjQ4Yjc4NjhkZTE5ZjVkYSBsZWdhY3ktdHJ1bmsKKzM5ODUgZjlkYmJiYjE3OTI5MDI1ZDA2ZDYyOWE0YmVkM2U1MWExMTMxYTcyNCBhbHBoYTEwMAorMzk4NiBhY2VhMTEwMzEyOWJhYzExYWY2MWRkYTdmODEyYzUxOGRhNWI4NmNlIGxlZ2FjeS10cnVuaworMzk4NyA4M2VlNzY0OTgyM2QyNTZjZjI3OTEzYmI0NDhmOWM0YWZjOGNmZjhlIGFscGhhMTAwCiszOTg4IDQwNDhjY2Y4NWIzZDI0NTY2NzU0YmEzMDMzZWI3NGNjZjg2NDYwMzQgYWxwaGExMDAKKzM5ODkgZDdhODU1N2U3ODBjZDUyNmE4NTUzOGFlYTZhMWQwZjQ0ZDU0OWJkOSBsZWdhY3ktdHJ1bmsKKzM5OTAgYzk0OWRjYjAzNDhiZTRlYWJkZmU1MWVkOTRjODU5YmQzMmNlNzdjNiBhbHBoYTEwMAorMzk5MSA3Yjk4MjhiYzcxZGQ2NDkyNTlhYjRlZDdjMTVkOGEyMmRlYWI4YmQxIGxlZ2FjeS10cnVuaworMzk5MiBlMjBkMDY5NGU3NDAxNGViZjZkYWI2NGQ5YjI2ZDMwYmZhNWUzZDMyIGxlZ2FjeS10cnVuaworMzk5MyAxMDM2ZjIwNWNjMmQ3YTVmMTA3Y2RjMWZiZWUzMjA3NDk4MTkyYzA1IGFscGhhMTAwCiszOTk0IDcwNDkyZDY1OWUzYzdjMTI0ZDNmY2IxNDA5YTIwOWIzZmQ3MjVjY2IgbGVnYWN5LXRydW5rCiszOTk1IGE4Mjc1NTYyNzg0Y2QyZjI2OTE5NjExYjA4N2U1Njk5ZDYxNDM4ZjggbGVnYWN5LXRydW5rCiszOTk2IGY1MGZlNGI5NTJiYWExNzJkNmRmZmEzYTI4Y2FkNjI5NWVkNWQ3MzEgbGVnYWN5LXRydW5rCiszOTk2IDAzMjZiNWQ2MTQ0NWVlM2E4ZDNkZTI4MTE5Zjk2NTJjYjcyZDJlM2YgbGVnYWN5LXRydW5rCiszOTk4IDZhMDFmMDk5ZjBhZDhkNDU0N2RkN2M2YThhMWQ4ZWFjNmU1ZWJmZGYgYWxwaGExMDAKKzM5OTkgMzY2ZjhkZWU5NmZiZjRlNzc0NjA4ZTBlZGU5YmMwYWI0ZDdiYTJhMSBhbHBoYTEwMAorNDAwMCAyZTA1MGE1MGFhMGEwMWYzNTM1ZGEwMjc5MWE2YTBmZTE5MzMzZWYyIGFscGhhMTAwCis0MDAxIDJiMjc1NTMwMjhhYWMyM2U2ODcwODE3OTg2MzljNDE5ZDM0Y2MwOGYgbGVnYWN5LXRydW5rCis0MDAxIDc0OTIwYzNhMzY3ZDJkMWM3ZjI5Mzg4YjI0NDQwMWZkMmVlNDM5ODcgdW5sYWJlbGVkLTEuMS4yCis0MDAxIDIyNTQ4MjI5ZDZmZGRjZTMzY2Y1N2EzOTMxZmJiNzI3MmM0YmU3NjYgYWxwaGExMDAKKzQwMDIgMDQ3N2JjMzljOTM1OTJhZDkyMzM5MWY3ODMxNDFkZGE4MTgzOTQzMSBhbHBoYTEwMAorNDAwMyA3Zjg5MWYzMjg2NGNhNTJhMWQwYzc5NmJlYjdiMzAyZDkwMmNjM2Y5IGxlZ2FjeS10cnVuaworNDAwMyA4ODk2ZTRlYzA5ZmM0YTQ2ODQ4ZjQzOGIwNDFkMjA4YjI1NTM0ZTIwIGFscGhhMTAwCis0MDA0IGIxNGM2Yjk1NTE2MWNhMDRhZTA5M2E4NjcyM2Q0NDAzY2ExMzBjYmYgbGVnYWN5LXRydW5rCis0MDA2IDg0NTQ1NzlhYjUyZjM3MWRjZjU1NDZjYjUzMGUyZGQ2ZmQ2MGZmNWUgbGVnYWN5LXRydW5rCis0MDA3IDljYzg1OGJkNTczZGUzNGYzMDlmZTE2ZWE1YzQ4ZTk0NmI3NTM3MjUgbGVnYWN5LXRydW5rCis0MDA4IDgxMmQwODExZmNmM2UwNjJlNDUxNTliNDM4Y2FiYWFmMDAzMDhjZDIgbGVnYWN5LXRydW5rCis0MDA5IGE3NWRjODY1NmNiMGEyMzkzZGJhNGMyNTJmMzFkMzEyYmU0ZDEzMmMgbGVnYWN5LXRydW5rCis0MDEwIGI2YjUwZDk0MTI1ZmQ0MmYxMDJiYzBkOGZjMDQ0M2M0NzU5NjI4NGQgbGVnYWN5LXRydW5rCis0MDExIDg3YTJiMDRjNDY4MGJkMTIxZmMzZTY4NmZmYTg3OGY2YjRmYTMxNmIgYWxwaGExMDAKKzQwMTIgOTZkMGRjNDczOWVjYTI0ODIwNzUzYjE0YmRiZWIwODE3MDdhYmQyZSBsZWdhY3ktdHJ1bmsKKzQwMTIgMWNmNjA4NTY5N2NkNWEwYTRlMDJiM2YwOTI0ZmEyNTY4ZGVkMDEyOCBhbHBoYTEwMAorNDAxMyA1NTJiMjFlN2MyMzBhNzlkMjZiYzMxNWY5ZWY1NjA5OGQwNGQ3NDc1IGFscGhhMTAwCis0MDE0IGMxZmIyYjZjNDc0Y2VhOTNlZTU0Y2M4MWYxNGU2OWEwYmNjNDI3MTIgYWxwaGExMDAKKzQwMTUgZTQxYTY1MzA2NzA2MjAwNWEyYzVlYzUwNmNhZGUwOTdkMWI4NDQ0NiBhbHBoYTEwMAorNDAxNiAxNTEzMjFhMThkYjRhNzhiODg3YTdiNjA3NmE0MGU2MGQyZTA2NGJmIGxlZ2FjeS10cnVuaworNDAxNiA0MjQ4NmJmMjM2NDdkYjQzMDI2NWE0ZTMzMjgxODQ2Y2E3MmY2MDhlIGFscGhhMTAwCis0MDE3IDhmYmU4NjBhMjZlMTk5NWYxZGExZmE3MWQ5ODk1ZDE0NDBkODA1MGIgbGVnYWN5LXRydW5rCis0MDE3IGU0NmUwZWU3NmRiYzQ0ODE4YTY2N2VjMTI0M2FmZTk1NTNhZDdhZDMgYWxwaGExMDAKKzQwMTggYTlkZDJlMWVhNWM5ZWEyY2E0N2I0ZDBjODBhY2ViNmExNDU2ZmYwZiBsZWdhY3ktdHJ1bmsKKzQwMTggYTE5ZmEwNTVlYzQ4YjI0NDY3YTdhMjMwZGJjYWEyN2JjYzMxNmEzMyBhbHBoYTEwMAorNDAxOSA0MTIxYWZkNzZkNzM0YWZlYzIyNGZiMmJhOWViOGQxNjZjM2QxMDkyIGxlZ2FjeS10cnVuaworNDAyMCA1YTZjMmEyMzhmMDM4NzZlMmE3OWUyYWIzMjlmMjVlMjdiYTI4OTM1IGFscGhhMTAwCis0MDIxIDI5YzQyNTVjZDQ1Y2Q1ZjJlYmM2YzExZDZjZjRmMGM1NTdhZjg4NTQgYWxwaGExMDAKKzQwMjIgMDIwMmE3MmQ5OTRlM2QzODI1NWYzYTU1M2E5MGNlMWIxNTM2ZWVmZiBsZWdhY3ktdHJ1bmsKKzQwMjIgNGUxYTJkYmY5M2M1MzJhMmJmZmNlM2M1ZGZlNTdhNzhmNmQ2ZjIyZSBhbHBoYTEwMAorNDAyMyAzZTZiNjdjYTlkYmU0MjY5Zjk1OTAwNDIzNzJiN2VhZmQ4YzM2Yjc3IGxlZ2FjeS10cnVuaworNDAyNCAwMDdhZGYwMTU0M2M1MTc2OWZjMzJkOGExOWRlNDk0NjFmY2VlMTk5IGxlZ2FjeS10cnVuaworNDAyNSA2Y2U4MmMxNTgxYjkyZjc3MWRiOTBjNGY1Mjg1ZGFjNTZlZGI5Y2NiIGFscGhhMTAwCis0MDI2IGYyNjAyMjg4MzgxYTQyNTdmOGY2MmY5OGEwMzZmZGU3NjlmMGVkYzcgbGVnYWN5LXRydW5rCis0MDI3IDU5MDM5YzA4NTZjOTM5NmUzZjFmM2E0NzQ0OWQzMTY5ZDczZjc1ZjQgbGVnYWN5LXRydW5rCis0MDI4IGEzZWIyNTI1OTMyOTQyMTY2ZTM0MGU3YzZkODQ4NzM0YThhZjU2MDIgbGVnYWN5LXRydW5rCis0MDI5IDFmNDkyOWE0OGU2NGEwMDQ3YzM4ZWQ3ODkxZDEyZWFiNTkyMWJiMTQgbGVnYWN5LXRydW5rCis0MDMwIDlhZjhiMzk5MWNlZGY3MmViYmI5NmRhN2NiNjExNDQ4ZGExYjhjN2MgbGVnYWN5LXRydW5rCis0MDMxIGZjYWY4YTJiYWYzODk2ZTkwMDM3OGI4NjA4NDlkYWEwMTQ2MjBiYzAgYWxwaGExMDAKKzQwMzIgYmNhODI5MGMxYjMxY2Q3ZDcyNzA1ZTM5MzI3NTZlMmQyOGVlMDU1MSBhbHBoYTEwMAorNDAzMyA3YTI5YmIzYmRkYjQ2NWFlNDQwYTM1ZDZmNTM5MjY5ZTNjODA0ZDQ0IGxlZ2FjeS10cnVuaworNDAzNCAzN2NmODdmNTYxZWNhOTg1YWVhZjJhMDUxNGRkZGQ5N2U5YTE4ODEwIGxlZ2FjeS10cnVuaworNDAzNSAwNTU5NjJmOTZkZTdiNWYwZmEwOGQzYzNlZjE1NTZiYTBmZTgyNmVjIGFscGhhMTAwCis0MDM2IDE0YjA4N2ZlNTM0NzBjNGUzN2UxNDAwMDc1OGVkZTU1NTk5MDdlODIgbGVnYWN5LXRydW5rCis0MDM3IDcwODY1NGE1ZGRkZTAzMTFkNzU4MTc1NjZjYWIxN2M2YmRhYzNlNDcgbGVnYWN5LXRydW5rCis0MDM4IDBkMDI5ZGVlOTEyOTBmOWEyZjZlNDVhMmFkZjdkNWNiMDhmZDNkODUgbGVnYWN5LXRydW5rCis0MDM5IDdhNDdmYWJiMTg3YzZjMjY3Y2VlNzdiNDUyNzk1NjMyYjYxYzcyOWMgbGVnYWN5LXRydW5rCis0MDQwIGZhNTBkNGJkNTUzNzg1YTFjMWFiZTcyOTc5MzY4YjQwNjg5MjU4YTggbGVnYWN5LXRydW5rCis0MDQwIDYwYjAxNThkOTQ4YWNjM2ExOTA1ZTBiMWQ3YWVlMjU2NTlkOGY3MzggYWxwaGExMDAKKzQwNDEgZjg0OThiMDg4YWExYTBjNTAzNjZkY2E1MjM2Y2M1NWMxMDQ4Y2QxMSBsZWdhY3ktdHJ1bmsKKzQwNDEgOGE3ZTUzMGRkNDRhNWU2NDAwMDhhOTM2ZWFjMzUzNmFlNDcyY2IzMSBhbHBoYTEwMAorNDA0MiA2MjNkZDcyNDkxODY2NDQxMTQ4ZDgwYmQwNTFiOTE4ZjRjZDMyYWUyIGxlZ2FjeS10cnVuaworNDA0MiAxOWYyMDc1MWY4ZGVmYmVmMTQ2Yzc3ODE1NDU5ZWNiM2NiMDI3NzU3IGFscGhhMTAwCis0MDQzIDAzZTA5N2RkZWNhMmJlY2I4MjI5MDg2ZjZmMjUwYWU2ZjRmMWNkNDUgbGVnYWN5LXRydW5rCis0MDQ0IDZjZjZiNjY5MWFhZWIyODE3ZjA5MjZmYTJkZTEzZjhjNGQ3MmIyYTQgYWxwaGExMDAKKzQwNDUgN2FjNGU0OTc5MWY0N2UxYmRhZDhlZjRlNDY4YjM5MmJjNzYyNDY0MyBsZWdhY3ktdHJ1bmsKKzQwNDYgOWUyYjE5NDJhNzQyMGFhNDA2N2MxOTVjYTkxZDlhOWI2NjY3YWM3YiBhbHBoYTEwMAorNDA0NyAxYzcxYTI3ZmQ2OTMzZGM2ZGU1NTg3MTMyN2E0M2FiMmIwNDhjYWEyIGxlZ2FjeS10cnVuaworNDA0OCA1MWEwNmZkZmZmNzg5ZDMzZTJhMDA2ZmMxNjhiOTYxODU0ZTYxNDA0IGxlZ2FjeS10cnVuaworNDA0OCAxMWVhMTYxYTAxYzJmZDkyYjQ0YTk4YjIyMDI2ZjI5NTZmYTZkMTA5IGFscGhhMTAwCis0MDQ5IGNmMzI4YTllYzVkNDQ4NzZjZjAyNGYxMWQ3YWM1NjU5ZjlkMzk1NDAgYWxwaGExMDAKKzQwNTAgMTliMDBlZjRjZGQ5OTdkYTMyOGUzOWUzZDUyZDkzNDkxMTA5NjEzZCBhbHBoYTEwMAorNDA1MSA3ZTVmOTdiYWIxZTZmOGRlYzc2ZDRmMDc0MTc0NDdlYjU3OTIwMGQwIGxlZ2FjeS10cnVuaworNDA1MSBjZjI0ZjNlN2JlNmQ3ZTY1ZWE1YTVjNTdmYmYxZmJhOGY4YWQyZmUwIGFscGhhMTAwCis0MDUyIDMyYzI4YWRjY2QxMmIwNjkwYzE5NWQzYThjMjM4YmExMjQ3MDg2M2YgbGVnYWN5LXRydW5rCis0MDUzIDNhYWM4MjVhNTNiNTIzZGY1ZjAyYWQwZjM4NzcxZDFhNzVjNmQxNWIgbGVnYWN5LXRydW5rCis0MDU0IGNiZWU1ZTFlOWJlODMyNTkwNDI2OTk4MDk4MzEwZmU2OWJhMTM3YTkgbGVnYWN5LXRydW5rCis0MDU1IDc2MDNhM2IyY2JlZTk5MzQ1ZDJmOWUzZTdjZmFiZWY5MzE4OGQxYWMgYWxwaGExMDAKKzQwNTYgOTBlZTcxYTNhMTNlYmI0NDgzNmNhZjE2ZjY5OGRiOTJkMjE4YmQ1ZCBsZWdhY3ktdHJ1bmsKKzQwNTcgYTRjN2VmZjI1OWE1OWM4YjRmNTE5OGEyNjc4NDdkYWRhNzViOGExOSBhbHBoYTEwMAorNDA1OCA0ZGVmOTM0ZmY3NWI4MDYyYWJmYThhMDcwMWRiYTY3OTVmOTc1NmU0IGxlZ2FjeS10cnVuaworNDA1OSBmMDJhNDY3NTRmNTA1YzNlZDMwZGFmZDdjNGMxNTU0OGZkYjkwZGE2IGxlZ2FjeS10cnVuaworNDA2MCBhODYyZDhmNDUwN2I4YjRiZDNjNGRmYTEzZDNmOGI5MTc2Mzg0ZmRlIGxlZ2FjeS10cnVuaworNDA2MSAxYjllYzM3ZGIyYjlhYmY5NWNhMWU4YjhkNDE4YjVkMGRlNjRlMDJmIGFscGhhMTAwCis0MDYyIDUwOTZiYjQ4Y2NmZTEzMGJmZTFmZThjMWNhMDA0ZGNmODY1YWY5NGEgbGVnYWN5LXRydW5rCis0MDYzIGI1YTY2MGNhYThlMWJjNDU3YjU0MTQ0M2JiMWIxZGRhMmVlZWNkNzIgYWxwaGExMDAKKzQwNjQgZDkwYWFhMDkxMjNiZjU4OGE3OWQwOWZmZWZmMzcwNzJhOWRkM2Q4YiBhbHBoYTEwMAorNDA2NSBlMjgyMzExMGMwNTE1NzA0NTQ0NGUxZjM4YzMyZWQ4ZWM1ZjJkOTEyIGFscGhhMTAwCis0MDY2IGU2YTIxM2I3ZDBkMmI5ODAzY2Y0MDIzZjBlNjRmYzBjZDcyNTE2NzcgYWxwaGExMDAKKzQwNjcgNzJjOWE0ZGM0ODQ3ZDc5NDg5Nzc2ZDU2YTI0MjNkM2VhMGU1M2FiYiBhbHBoYTEwMAorNDA2OCA0ZjQ0OWFiNjA1NjdmYmI2NDNlMmFkNDUzNWNjYmRjOWM5ODBmYmE0IGFscGhhMTAwCis0MDY5IGZmZDQ5NWJhY2JkNDM2ZjAwZThjYmViMmJiMGMxMDgzYWI4M2YwNDMgbGVnYWN5LXRydW5rCis0MDY5IDhlN2Q4ZDBkNGU5MGE5NDUxNThkYTU2ZGFjOTg4ZGY3MjliYjVhODcgYWxwaGExMDAKKzQwNzAgZjdlMWUyMzg5Mzc1ZjIzMjYyMGFlZjhlNGFkNDhlNzFjNGM1OGIyMyBhbHBoYTEwMAorNDA3MSAwMWQyNjQ4NmIwZWU2NjQ3YzNmMmQxMGEwZGJiZjQxMmEzNmY4MmZjIGxlZ2FjeS10cnVuaworNDA3MiAxNGIwMzQxOGM5MGZiMzhhZjIwZmVkN2Y0NzI2ODllZTk1M2M0Y2NiIGxlZ2FjeS10cnVuaworNDA3MyBhNmU2ZmFkMWEwMWIzMmZkZjQ0ODMzZTRmMGY5OGI3M2QzNzI0ZjFjIGxlZ2FjeS10cnVuaworNDA3NCBhMDllZmIxMzVkZTU1MjQ2MzUwZWU0MjQ1YWMxODE5ODRiNTdlNTdjIGxlZ2FjeS10cnVuaworNDA3NSBkMDc0YjJmYjYwOTE0ZGQ3ZDVjYjkwMWI5MWY5NWZiOTJlZjY4MmQ1IGxlZ2FjeS10cnVuaworNDA3NiA3M2RkMmE5Nzk4NTdmMTdiMzZlOTE1MzJiMTY3MmZlNjVkY2I5NjJlIGxlZ2FjeS10cnVuaworNDA3NyBiNWQ1YmJjZWIwMGY2MDQ4NjM0Yjk4ZjA3ZDg2OWJkZGI0YTkzYjUwIGxlZ2FjeS10cnVuaworNDA3OCBhOTYxNmY1NjU0NjU1Mzc4Mjk1ZTRhOWIzMTNlM2VkOTRlODRhODU2IGxlZ2FjeS10cnVuaworNDA3OSAyNzM0NTE4OTIzMjdjZTFmMWIwN2YwZGQ0OTA5ZDBkNTZlYTY4ZGRmIGxlZ2FjeS10cnVuaworNDA4MCAzODJiNGY4YTczN2E0Y2ZmMWFiN2IwNWZlOTNiOGRkNjcwNTQ2OTM4IGxlZ2FjeS10cnVuaworNDA4MSA5NTNlNzRlYWMwMDYyOTgxNjljNTJlZTcyYTI5ZTdmNGY0NWQ1NmNmIGxlZ2FjeS10cnVuaworNDA4MiBjZWQzZDExMjJmN2NiYWIxM2UwNzcxMzJkNjhkNGQwMTE5Mjg4NTNiIGxlZ2FjeS10cnVuaworNDA4MyAzNDRkZDI4ZGE5YzU2NjIwZjUzNmVhMWEzOGU4NzI4MjNjNTBkYjNmIGxlZ2FjeS10cnVuaworNDA4NCBhOTQ4YjQ0YWQ0YTE1NTBiNTcyYmI3NTgxMDJmZTVjMDgzMGZkMDQ2IGxlZ2FjeS10cnVuaworNDA4NSAyZmU1NGY2MmNkYjU0OTcyYzFhNTkyY2M2M2RlYWU0ZTk3NTk4YmZjIGxlZ2FjeS10cnVuaworNDA4NiA0YzMwNjJjNzEzNWZjZDNkNzFkMDRlNDg2MWRlODJiMjI3ZWZmOWIwIGxlZ2FjeS10cnVuaworNDA4NyA2YTBlNWNkNDk5YzQ1ZWRkZDc1Y2NiM2JmODI0M2M0NTZkOGNmMGJlIGFscGhhMTAwCis0MDg4IDQ5NmM3ZTlmMTFkMjQ4MjBkYjM0NTM4MTRmNjIzNGFkZDVmMjI5YzkgYWxwaGExMDAKKzQwODkgY2EwMjMzOTllNWM5NGJiNWU3ZjkyZjlhNWYwNGE0NDJiMDNiMjIzOCBhbHBoYTEwMAorNDA5MCA1MmZhNGRjZDFiMGUwYTE2MmIwZmRjN2I0OGIxM2U0M2JiNWIyNjRkIGFscGhhMTAwCis0MDkxIGI2YzM1ZTFmYWRhZTZmZjEyNzFmNWI1ZDg3NWIwYmI2NGJmZTE2YmYgYWxwaGExMDAKKzQwOTIgOGY5NjgwMjczMzA3NzUzOGY4OTVlMzk3NTc0MWRkOWIxODBlNmZjMiBhbHBoYTEwMAorNDA5MyA5YWU3ZjJmZDg5ZjEwOTdkYzc4YTY2MTg5YWViNGJmMGI0MTNmYjQ3IGFscGhhMTAwCis0MDk0IDRiNTBmMTA0MmU4ZGMwOTAzODZkMDU0NzE3OTE4ODJjM2JlMWY2NjAgYWxwaGExMDAKKzQwOTUgNzYzNzE4MDVkOWYzNzRmMTk3MzI4ODEyOWEyNDMzMTRjYzQyODg2MCBsZWdhY3ktdHJ1bmsKKzQwOTUgMDNiMDU3MTdiOTUyMjRhZDJhNzA3YTc2MjA1NjQ0ZDkzMzcwOTk1YiBhbHBoYTEwMAorNDA5NiAxZTNhNTUzZTQ3OWFmMDhkZTNlN2Q5YThlYTU4ZDA3MzhiNTkyZGYzIGFscGhhMTAwCis0MDk3IDNiOTBhOWZjMWUwMzk4OTI4NTNiNjViY2NkODRiOGZlYTE5MjQwNjkgYWxwaGExMDAKKzQwOTggMWYwNmY3MTkwNGMyNDFmMGEzNWJhNzU4MzQ3N2Y4Y2U5ZTRjOTIxYSBsZWdhY3ktdHJ1bmsKKzQwOTkgNTA4YjczZTBhN2U0ZjFmMTViZjZjZTQ0YzdlNzZhNzY5ZmJmZDgyNCBhbHBoYTEwMAorNDEwMCAzYWZhZmFjM2Q3YTE2YmViYzI5ZTc0YTE0ZmNkYjRiZTBhM2I2ZGZmIGFscGhhMTAwCis0MTAxIDAyZDhjMTU4ODJmZjlhZDUwOTY4YTNiZTE3YzgwM2ZhYjE4ZjExMjcgYWxwaGExMDAKKzQxMDIgNTI5MDQyOGJhZDM3MTViNzNmYTBkMTIwMGEzOTRkNzIxOTBiMDc2MyBsZWdhY3ktdHJ1bmsKKzQxMDMgNzViY2IxZmM2NWJlNTljMTMyNTc2OWUyYTJkMjdiZjUxNDZmZmM1OCBhbHBoYTEwMAorNDEwNCA4Y2Y2NDBlZjM0NDAwNzY4OWU5ZDM2NDQxYWU0MzVlYjdhYTUzZTJjIGFscGhhMTAwCis0MTA1IDEwMDllYTQ5MzY2Y2M5OGNmNmZhZjk1NWQ2Y2Q5YWQwM2Q4OWRiNmIgYWxwaGExMDAKKzQxMDYgYzJlNmM5YTdhOTVmOGI0NmFmOTY4NjFhNDVmYTI0NGNhMWMyMTNmZiBhbHBoYTEwMAorNDEwNyAwYTYwNDYwZTk5ZjAyYjQxOTZlNGE3YmRjM2IyOTg4Y2E3ODA0ODIwIGxlZ2FjeS10cnVuaworNDEwOCBkYzhlMWQ3MmQ3OGRjY2U1ZWY1MDFiNDNmNWQ1MmYyN2M2OTY1MjI5IGxlZ2FjeS10cnVuaworNDEwOCBjYWVhZWUzOTBlNDNmZTU3M2E5M2QzNWMyYmNlODM0MjczM2EwY2QzIGFscGhhMTAwCis0MTA5IDFiMTdhYWYyNTEwNTQ5NzZiYjJjM2FlYzdjNGQ1OTQxNDAxYmI0YmQgYWxwaGExMDAKKzQxMTAgMmJjZGRjOTA1ZGEwYjlmOGNiNTI3ZTZmY2ZiNWZlOGRjNDNjNzI0NCBsZWdhY3ktdHJ1bmsKKzQxMTEgMDgwODExYjFkMDIzMzIwZmFiM2E4OTVmZjZjYWM5NGQ2YjEzYmFjOCBsZWdhY3ktdHJ1bmsKKzQxMTIgMWNkNGZkMTY2MjNkZTIzNGU2YzIxZjg4N2QzOTM3MzRjNTM5MjI5YyBhbHBoYTEwMAorNDExMyA0Y2JmNTM2YTZmMTgwMzg1OGU0YjU3MDE5ZjZiYWQ3Njg2N2ZjYTY2IGxlZ2FjeS10cnVuaworNDExNCBjNTRjMDdhYmNmY2YzMWZmYmQyOGUzNTA4MGRiYzUwNDIyMjM5YzkwIGFscGhhMTAwCis0MTE1IDZiZTkxYzQ0Y2FmZmQ1ZTJjM2Y0MjkxM2Y4ZGRiMjNhZjk4NWI1MzIgbGVnYWN5LXRydW5rCis0MTE1IDZlNGE4OWVlMTE2MzRiNWVmYzBkYjBmZTEwNzUzYmQ4MzllMTMxNDYgYWxwaGExMDAKKzQxMTYgMjNmZDUwZDc3YjVhMDUwMzZkYWJkZGY0YmQ4NDdhNzU2YzgyM2U1OSBsZWdhY3ktdHJ1bmsKKzQxMTcgYjVhNTdhZjQwNTA4YzhlNGRhNWVhYWE2ZTU4OGE1MGVkMzc1OTFkNCBsZWdhY3ktdHJ1bmsKKzQxMTggYmI2MTgxNmUxZGFiMGU0NjgxMjEzYTcyMWVjNGRhZTM5YzM5OTBmZSBsZWdhY3ktdHJ1bmsKKzQxMTkgOTQ2MjFhNDY4YjYwZDQxNTkzYzEyYWE4MDMwMTlmNmYzNmQ4M2MzZiBsZWdhY3ktdHJ1bmsKKzQxMjAgOTNlMDM2Nzg2YjE3YTc4ZDBkMGVmNTgxNTAxOTZiNWE4ZDk0ZWJlNSBsZWdhY3ktdHJ1bmsKKzQxMjEgZDg4YWY1OGU5NWNkMDg0NGViOTk1MWE3YzZiYjQyZDkwNTczNjhhZiBsZWdhY3ktdHJ1bmsKKzQxMjIgZTI2NjVkOWQ0ZTQ2ZDI1NDlkNTliZTA4NzU1ZTBkNzE1ZGQxN2M3NSBsZWdhY3ktdHJ1bmsKKzQxMjMgY2YyOWMwOWYwN2I2MWY3OWVhMjM4YjE3ZDEyYjA2MjQ1NmQ2NTM2MCBsZWdhY3ktdHJ1bmsKKzQxMjQgMDNkMzUxYjZmNzM4ZTRjNWI4YTJkZmIxOGRiYWY4MzdlODkwOGFlYSBsZWdhY3ktdHJ1bmsKKzQxMjUgYzUwMTI3ODA5MTc5ZGRlZDdjN2EwMTM4OTJkZDRhYTNkYWYwZTAyZCBsZWdhY3ktdHJ1bmsKKzQxMjYgYjk0OTIyNGE0YmQ1NjFhOGQ4NTBiMTNlYjQ4ZjRlOWI4OWYxNTE2NCBsZWdhY3ktdHJ1bmsKKzQxMjcgOTAyZmZmNTVkYjM4MWYwOTM0ZDlhYzM1ZTVmMjJiNmI3YjFmZDJjOSBhbHBoYTEwMAorNDEyOCA1MTdiYWFlMWI2NjNjMjYxYjZhMDdkZmY1OWYxYjA2MTA4ZTU4NjkzIGFscGhhMTAwCis0MTI5IDQ2OGI4Nzg0ZGE0OGI3NGEwN2VhODBiYjYwMTVjODljYzY1ZWY0YzkgYWxwaGExMDAKKzQxMzAgYmZjZmY4YWY5NzUxNjg3ZmU5MWMxZjUyYmFhOTkzMTdkZTg3YmQ4NiBhbHBoYTEwMAorNDEzMSBmODU0MGE4Y2Y1ZDc5NDY0NWI0YjU4YmU1YjQwNTg3OGQ0MjFjYzM1IGFscGhhMTAwCis0MTMyIGEyNDAzZmUyYzg4NTgwNTVmNjUxYTc5MTkwMDgyODA0OGExZjc5NDAgYWxwaGExMDAKKzQxMzMgMmIwN2Q5MjVjMDlkNDFlZWRkMWJmN2YyODRjYmQ4YWZhODNmY2ZhYSBhbHBoYTEwMAorNDEzNCBkZjIyMDRlNDdiNjVmNzVhMDVlZTIxZDJlNTgyZTFhY2FiMjM2M2I1IGFscGhhMTAwCis0MTM1IDc3Yzk0OTMwMWRiMzc0OTA0YmY2NWI3NWUxNTU4ZThiYmYxMGJlYjIgYWxwaGExMDAKKzQxMzYgNzg3NDc1NjEwYjAyZTMxZGM1NTcwYTEzMmQwYTc3YTNjYzYxMzdiNyBsZWdhY3ktdHJ1bmsKKzQxMzYgYjcwNzJlYzdkNjUyMzdhY2U0NzFhZDNmYjM4MjExMTRjNWM0N2FlYyBhbHBoYTEwMAorNDEzNyA3YjFjNDlhN2QzNzVlYTA5NWY1YjY4NzBhY2EyMTRkMmIxNjIwOTM3IGFscGhhMTAwCis0MTM4IGRhMmFmYzAyOThhNzBmY2U3ZDNjMTk2OGFhNDA2MjI5YzJlNjQ1YjUgYWxwaGExMDAKKzQxMzkgOWRhNDk0MjM4NzczYzkxNmUyNWE2ZTMxNWZkNmZiZDllZjFmNGEyMiBhbHBoYTEwMAorNDE0MCBmYjViYjllN2NkN2E4MTljMWQ0ZTJhYTg1MzRkZDhhMmQ2ODUzNDY5IGxlZ2FjeS10cnVuaworNDE0MCBlYmU4NjgxY2Y1ZmVhZjFhNGRkOTgwMDc0ZTBiNDAyMDZjMDg5MTkwIGFscGhhMTAwCis0MTQxIDg3OWU4ZDA0ZTU4OTY3N2ZjNjQwOTVkMDA3MzJkNmVlMTc4NDc4ZGMgYWxwaGExMDAKKzQxNDIgZWIxMWEwOThiN2ZmMmNjZGU4MzllYTc2MDEwYTFjNzM1NmU1ZDczNyBhbHBoYTEwMAorNDE0MyA5ZTdkMjA2YTQ5MjIxNjZhMjE5YWI1OWQ0MjM5YjUyZDYzMTk5ZTM0IGFscGhhMTAwCis0MTQ0IDkzZGY4MzAyMmJlODc4YzExMDc2YTg2MDg4YjhjMjBlMDE3NTM0ZWUgbGVnYWN5LXRydW5rCis0MTQ1IDc3YmJlNThhZmVhYjUyNTMyYmFhMTcwZWY1OWM0MzY4OTM2ZjlmYTYgYWxwaGExMDAKKzQxNDYgMDE1YWYxYzQ3NzI2NDI3ZmVmYmE2YWMwNGNkNmU0YjU3OGU1ZDY0MiBsZWdhY3ktdHJ1bmsKKzQxNDcgMTkwMWUwODA4NmY5ZmQ2NGU3MGYxZTEyYjkyNzY0MGNiNzY2ZGViZCBhbHBoYTEwMAorNDE0OCBmMWIwNDBiY2EzZTEyZWFkNGJlNTljZWM0ODA1OGU5Y2I3NTRkNWU1IGxlZ2FjeS10cnVuaworNDE0OSAwZmIzYWE1Y2E0YzAyZWNlMTAxYzNiZDBjZWQ1ODRkZTRiYmU5OWJmIGxlZ2FjeS10cnVuaworNDE1MCBiYTk1N2FhNDIyNDFhOWNlOTBiNTg3NzU3Nzk5MDQ3YjcxNmU1NmQxIGxlZ2FjeS10cnVuaworNDE1MSAyMjI4MDJmMGQ5NzgyOTU0NWY0MTBkNzUwMWZhZTZlNDNiZmY0Y2U1IGxlZ2FjeS10cnVuaworNDE1MiA0YmJhM2M5MDdmZmFlNDc1Y2EwYjIzNTFkYjM1ZGUzMWQ5MGY5M2M1IGxlZ2FjeS10cnVuaworNDE1MyAxOTJkODY5YmViOTczNmExODE3NjkwNzQzNmEwNTRiOTBmNDk4ZjliIGxlZ2FjeS10cnVuaworNDE1NCA2ZjgxYjEzZmQ2YWMwOGQ0MmU2MTg4ZWZiYjliMzY0ZmFmZDU0ZmZhIGxlZ2FjeS10cnVuaworNDE1NSBkZTJkYzFiYzRiYWUxY2MzYzhjOWU5MzgzNzBkZjdjNDc3MzM0ZTYxIGxlZ2FjeS10cnVuaworNDE1NiAzNzViOGI4NjMxMjZmYWVkZmU4YzYwOWIwOWNiMWU3NGMxYWE0ZTExIGxlZ2FjeS10cnVuaworNDE1NyA1NjU2Zjg4N2ZmZjM3ZWZkOTM5ZTg3ZjZhM2FiNWQ5ODg3M2U2MTE1IGxlZ2FjeS10cnVuaworNDE1OCAzNjZhMDI5MmI2MTQyZTY0NTBkYzM1ZWJhNmNlN2M1YjJhNzAzOTExIGxlZ2FjeS10cnVuaworNDE1OSAyZWY5ZDUwYWI2NTRiYTUwMDNiZTQ4OGI5ZTgyOTViMDgzMWMzMGEzIGxlZ2FjeS10cnVuaworNDE2MCBiYjU2NmQyOGNhYTBkM2FmZTkxYmU2NjhlMTU5ZjFjYjNkOTY4YmFjIGxlZ2FjeS10cnVuaworNDE2MSA1ODQwZTU1M2ViOGQ4OWZjNzU5ZGUzMjYwYmQxYmI5ZDUxZmY5ZjRkIGFscGhhMTAwCis0MTYyIGRiMGVhZWY0MmNiOTRlOTIxOWFlODk2YTc4NzQzYWI4OTU2YjFhOWQgbGVnYWN5LXRydW5rCis0MTYzIDk5MjhkMzMzODIxZGUwYmJiOGI4YTU0YzExYTExZGQ1NmYzNDdmZjYgbGVnYWN5LXRydW5rCis0MTY0IDUwNGJmYTU5Yjk1NGVmOTdlYzFmNDZjYjgyMWJjYzRiYTE1MjlkYjcgbGVnYWN5LXRydW5rCis0MTY1IGJhOWI3NTVlMTdmZTBiMmRkMjA2MjdhMDcwYmFjYWQyOWE5MDc2MWQgbGVnYWN5LXRydW5rCis0MTY2IDBkNjEzM2FiYjZlNWZjYmY4ODNmOGEwYmFjMTY5MTg0ZDcyYTg2NzggbGVnYWN5LXRydW5rCis0MTY3IGExNjAxZmMyYjNlNDQxNGJhMzI4YTBiZTMzMzc1N2RkNWMyYTI2YWEgbGVnYWN5LXRydW5rCis0MTY4IDJmOWJhMmViY2IxMDczYmZlMTdjYjdlNzQwZTRlYTZhMDI3ZTgzMzAgbGVnYWN5LXRydW5rCis0MTY5IDQyMTBiMGRlZjNkNzgxNTA1M2E3MWJhMjFjY2E3NzY3YmFkOTY2NjkgbGVnYWN5LXRydW5rCis0MTcwIDFkZDMxMTUzNzA5ZGQ1YzYyNzhmNmViYmFiY2Y0MmYxMGYwNjQzNWUgbGVnYWN5LXRydW5rCis0MTcxIDQ3MGE1MTU0NWQ2YzRkY2VjYzhhMTI1ZjdlZmFmZTMwZGI5NGM3YWIgbGVnYWN5LXRydW5rCis0MTcyIGU1YThmNjQ3OTIxNjkxZDllMjg3MTE0MDYzNGZiMDA2MDFmMTQzYjUgbGVnYWN5LXRydW5rCis0MTczIGUxNjc2OWNkN2E5MDFlZDc0M2ZkMzJmODI3Nzk1MGJmZTFkNjAzZDQgbGVnYWN5LXRydW5rCis0MTc0IGNkZjQ0YzE0YzI3MDg5MGNiMGQ3NTQwZGY5NjI5YTU0ZGNlNjU3ODIgbGVnYWN5LXRydW5rCis0MTc1IGU4MGM3MTM5ZjUzM2U0ZTM5YWIxNGVmYTM4MGQ1Y2ZhNzRmZGJjMTcgbGVnYWN5LXRydW5rCis0MTc2IDZiMGYwZWYyYzEzMmM3NTk3MTk2ZjU2NWVjNDQ0ZDNmODhjNjFiNDIgbGVnYWN5LXRydW5rCis0MTc3IGJkMWQwYmE0MGY5MGNlNDI2YjUxNTZiYjdhZDNkOGE2OTZlNGUyMTIgbGVnYWN5LXRydW5rCis0MTc4IDdmMjBmNGI5MzM1ZmEwNzg2NTM0M2MxYmMyYzgyN2JiYmRmOTI4YTAgbGVnYWN5LXRydW5rCis0MTc5IGU4NjUxZDBlNGEzYzcxODYzNWU0NDAxMTBjZDEyM2U2YzhkYmQ1MDUgbGVnYWN5LXRydW5rCis0MTgwIDU4MWZlNmJmYzkwMjRhMmVhMDU0Nzc0Y2QxYTA5YjY1N2JjYTZkOTQgbGVnYWN5LXRydW5rCis0MTgxIGFmYzU3NDA2NGU2MmNhZTgyOTQ4NmQ3NzhmNjFiMzZjZmFhYjc3MjkgbGVnYWN5LXRydW5rCis0MTgyIDE3NTAwY2Y5NTM4ZjFhOWZlYWY2ODcyZWQ2MjBlNDk2YWQ4ZWE0ZTMgbGVnYWN5LXRydW5rCis0MTgzIDI1NDMyNmYyNDE1ZjQ2YmQwMmEyNTc5YTFlYTdkNTA4NDg0NzFmZDYgbGVnYWN5LXRydW5rCis0MTg0IDg2ZWQ1Mzg0NGIwN2NmNjQ3YjJkNzRlNGYyMzNhZGZjZjFiZWIxYjAgbGVnYWN5LXRydW5rCis0MTg0IDkwN2Q5ZTdiZjRiNTg5ZmMyZjAyYTliOTAwYzU4ZjQxY2U1NTRkODUgYWxwaGExMDAKKzQxODUgOTYwMGQzZDVjY2U3YmRkOTQzMDkyNzc0N2RlNmQ5M2I4ZGNjNzZjNSBhbHBoYTEwMAorNDE4NiBlZTJmODhhNGY5ZTJiY2U2MzlmYmRjMjViZDhkYzhhZDlkODlmNWYwIGxlZ2FjeS10cnVuaworNDE4NiAyODVmZTg5Nzk5Nzk5NTc2NTVlNzZkYzAyYmRiMDA0MDhiOGJhNjRlIGFscGhhMTAwCis0MTg3IDQ1OGQ4ZjNlZjMwNzU4MjdlMWZmZTRiZTQyODViNDNhYTkyMDllMDcgbGVnYWN5LXRydW5rCis0MTg4IDI5Yzc4NTE2ZWUzMzMzYzA5NWJlOGZiZGUyYjJiOTllZDU3YWViNmYgYWxwaGExMDAKKzQxODkgNzgzMWZmZGI3ODdiODNmMmQwNmZlMTdhOWIzYzZjNTkxMzIzOTNkMSBsZWdhY3ktdHJ1bmsKKzQxODkgMjFkN2Y5MzI4MTliNGRhOGVlN2RhYzliZWNiZGRiZWRjYzQwMGQ2NyBhbHBoYTEwMAorNDE5MCBlOTViMDcwMWM4YjU0ZjI0ZGY4YzkwYjgzMDc0MzU3NWVmZDdiZjYyIGxlZ2FjeS10cnVuaworNDE5MSA5NjAwOWRhZTlkNjI2MjZhYTRkMjM3ZmU1ZGQ0NWZlODFlZDdiMTM0IGxlZ2FjeS10cnVuaworNDE5MiBiZWRlMzhjNGE5ZjVlY2Q0MjEwNzM4ZTlkZDk1Njc5YzI4ZmEzNzE0IGxlZ2FjeS10cnVuaworNDE5MyBiYzExYzFmZjZjYWMwMzFmOTI3OTg2YjM0YjBhNGI4ZDkyZjU5YjMzIGxlZ2FjeS10cnVuaworNDE5NCA1OTUyNjRjMmYwNmQ0YTYwOTY2MTYyYWY1ZjQxMTQxYzkzZjcyYjhlIGFscGhhMTAwCis0MTk1IDZjMGUxMWI5NDAwOWEyNTIzOTkzOGY1MjNhNzJlY2RlNzYzNmFkMDIgbGVnYWN5LXRydW5rCis0MTk2IGQ1YjY3ZDJlYzdlZTAzMTAwYTY2ODM3NDBmZGQwZjdmZjcxMjI2MWUgbGVnYWN5LXRydW5rCis0MTk3IDM3MjkwM2I2MzcxMWE5YmRkOGFmYzM3NzM0ZWVjNDU4MzI5ZDM1OGUgYWxwaGExMDAKKzQxOTggMTk0MDg5MmQyZmUzYThjZjNiNzRjYzEyZDY3MDM5OGMzZTQ4MDM2MyBsZWdhY3ktdHJ1bmsKKzQxOTkgZTNhOWQ4MWRmMTg1M2M4YjM3NTc2MjZiMTdhODVhYTgzYWNiNGNmNiBhbHBoYTEwMAorNDIwMCAzZjdkZGI4YmIyZjYzYjczYWIwNzFmY2I3ZTFmOGE2MjJjNjUyMDYzIGxlZ2FjeS10cnVuaworNDIwMCBlN2I1ZmU3NmU1ZWFjYWU0YzY2MjhhOGUzZTI5ZmU4Y2Q0YzgxNGViIGFscGhhMTAwCis0MjAxIDgyODZhNjYyNTAyYmI2YjViMGFlMmIxYjJhNjViYTFjOGRlN2JhZGMgbGVnYWN5LXRydW5rCis0MjAyIGJjZWI3MjBlZTM2MmIwOTQ3ZTBhOGMxMjVhM2E3MWY4YzQ2ZDc2YmMgbGVnYWN5LXRydW5rCis0MjAzIDBiNjQ1NzI2OTU3ZTIzMjliOWM4M2FmMDhkYTcxNGJlZGJhZDZhYzAgbGVnYWN5LXRydW5rCis0MjAzIDQ2MzljM2FkODM0YjdjYzA4MWQ4MGQ4ZmZkZmZlZjBlZTUzZjdiYWYgYWxwaGExMDAKKzQyMDQgZWMyNWFhZDQzNzI0ZjA1NWEzZjgyNmUzOWRmNzI1NWRhOTE0Y2RmYSBsZWdhY3ktdHJ1bmsKKzQyMDUgY2JiNjJlZTg4NTRhNjQzZWM5NjY5ZmUzYzY1N2VhZGM2MWU2YTA2OSBsZWdhY3ktdHJ1bmsKKzQyMDYgYjU0NjhkODg2Y2I1NGEyMDM0YmQwNjU2NDZlNGJkOGRlNTA3ZDRlNSBsZWdhY3ktdHJ1bmsKKzQyMDcgYmJlOWVhNTU4MjYxZWU2ZGViZGEzZjgwMjE5NDQzZWZjMzAzY2RmYSBsZWdhY3ktdHJ1bmsKKzQyMDggNzhhMzY1NDA2YzRjZWJmODVkZGM3YjAwMWM2Y2EzNDRiNzk3YWFlMSBsZWdhY3ktdHJ1bmsKKzQyMDkgZjUzMzc5MWFjYzc3OTdlZjMzYTZmYWZmZmQzYzBlYjI4ZTM1OWRmOCBsZWdhY3ktdHJ1bmsKKzQyMTAgNjk3ZWU4OWFkZGZlMWU2NTVjNzJkYWFhNjEwZWViZTQzMTNjMWEwNiBsZWdhY3ktdHJ1bmsKKzQyMTEgYjk5NTc4Yjg3OGNlNmM0YzZmYmUxMTBhZTQwNGFkNDExZjUxYzM5MSBsZWdhY3ktdHJ1bmsKKzQyMTIgNGQ0MjFmOWU4MzczY2MwYTMxMDRlMWJlYjdkNjZiOWYyZDE5ODUwMyBsZWdhY3ktdHJ1bmsKKzQyMTMgNDhlNmIzMTlmM2U0ODBkOTliZjQwMzVlYmE4NzZlZmUwN2Y5ZjQyZCBsZWdhY3ktdHJ1bmsKKzQyMTQgN2EyZTc2ZWNiOWVmOTFkZjczYjBiM2QyMTM5MzdlZjYxNzY2MGZmYiBsZWdhY3ktdHJ1bmsKKzQyMTUgOWJjM2RiZjA4NzFkMjZlMDUxYWYyNTZhNjRlNDVmM2VhOTc1MjAzOCBsZWdhY3ktdHJ1bmsKKzQyMTYgZDM1MzVkMDYyNmI0NjgwMmI3NDg1YmRlOGZlNjMzMWFlYWIwOWI1ZiBsZWdhY3ktdHJ1bmsKKzQyMTcgOTQyYzRkMDk0YTBjNDE5YzU1YTQzZjQ5YmYzYmE1MmRjZTUxZGE4ZiBsZWdhY3ktdHJ1bmsKKzQyMTggYTA0Njg5Zjk5ODNlN2FkN2IxNmZlNjJmZWRlYmQ1ODUxMjc3NjVmOCBsZWdhY3ktdHJ1bmsKKzQyMTkgNmU5MTMwNDYwMjg4NjdhMGVlYjQ5ZDYyNzc0YWJjYzg3M2RjOThhOCBsZWdhY3ktdHJ1bmsKKzQyMjAgOTA3NjA1MzIwYTVmZDdhNGE1MmI5NzU4ZTk3ZmY3MDg5Nzg0OTdkOSBsZWdhY3ktdHJ1bmsKKzQyMjEgNjg4MTJiNzYzZTBlMmJhZDJiNzk0YzczMzZmMTc2ZDI3M2RiNDE4ZCBsZWdhY3ktdHJ1bmsKKzQyMjIgNmNiNzU5YzZkMTc5MGQwNmUyYzFkYTgzYzg5MDQxNmNlZGQ5YjM4YyBsZWdhY3ktdHJ1bmsKKzQyMjMgYjBkY2EyOTcyYjJiMThkOTNlNmFkOGRmMGNlNTc2M2MxZmE4NTcxNSBsZWdhY3ktdHJ1bmsKKzQyMjQgNTFjMmU1YTlmMzljZDE5MWYyYzRkYjBmZWVjMjY0OGIwZWU3MjYzNSBsZWdhY3ktdHJ1bmsKKzQyMjUgN2IzYTc2NzkyNGExYTllMzJiNTUwNzFmMTU5NzZiMmQwNTY5OGRmMyBsZWdhY3ktdHJ1bmsKKzQyMjYgZGY3YWE1NGFkY2QyOWJjMDFiNDU5MWViNDIzZTQxYWI5Y2JjNzBiMSBsZWdhY3ktdHJ1bmsKKzQyMjcgOWQzNjJlNWU0ZTc4OTkwZmFhZDhiNTkxNzRmNmJkNzhjMDUxOGM4YyBsZWdhY3ktdHJ1bmsKKzQyMjggMTdjODBhOTUyOTE0MzkzNmU5M2MzMzk4MzExNDg2ZTI5MzY1MTNhYiBsZWdhY3ktdHJ1bmsKKzQyMjkgNTI1N2FmODBlMTYxMDg3YzY5NTcwZWMyMzU3YzBiYmQ2MzQ4ZTU2NiBsZWdhY3ktdHJ1bmsKKzQyMzAgN2UwMDFjNDgxMGJiYzc2MmIwZjA1YTc3OWI5Njc3MTRkYWRkMGNmOSBsZWdhY3ktdHJ1bmsKKzQyMzEgZmZkZmFmMWIyNGQ1NDBjY2QyOTY5ZjM1OTY1YzQ1NjM4ZDM0NTEyMiBsZWdhY3ktdHJ1bmsKKzQyMzIgOThhMjBhNDBmNjEzYjEzZGZhN2E1NGFlNDBjMzA5ZjVkMjNmM2RlNiBsZWdhY3ktdHJ1bmsKKzQyMzMgNzZjYzg1OGUzMzkxNTgwZDE1NWE1OTE3ZGEzOTMwZTJjMzEzNmNlMyBsZWdhY3ktdHJ1bmsKKzQyMzQgOTJkZjMwZGY1ZDc3OWU4MjJjMDBjZGFjMmI0NTY3NGU5MDc1MzNhNSBsZWdhY3ktdHJ1bmsKKzQyMzUgMjA4OTc4MTZhNGI2YzhkZDY0MThhNjRlYjllYTU0YTBhYjBkODYyZCBsZWdhY3ktdHJ1bmsKKzQyMzYgMWMyOGYxOTM0YTExZWVhNGI2ODI4ZDVkM2U4ZWE5Njc1MmUxNjY0YSBsZWdhY3ktdHJ1bmsKKzQyMzcgYTNmMTk5ZThiYWM2ZjAwMzIxNGIwMGQ2MGNkY2JiMGQyMWVhODFhNyBsZWdhY3ktdHJ1bmsKKzQyMzggZGQxNjdiZmQ3YTA4NmE5ZWU2NjFhZmFiMDgwNWE0M2Y0MmVjODdjMiBsZWdhY3ktdHJ1bmsKKzQyMzkgNzcwN2I5NzA4ZjZjYzdjM2Y5ZWJkN2Q0NjkyYmEwNmEzMDM2NGIxOSBsZWdhY3ktdHJ1bmsKKzQyNDAgY2I4NGRkNTFjMmFhMzEwZTViYWU3MWQ5ZGI0ZTc0MWNhMGVlNWJmZiBsZWdhY3ktdHJ1bmsKKzQyNDEgNTZhOTg2ZTQ5ZjU2N2NkNjg0ODc4NGJjNWI2NDUwZjAwZWVlMmMyMiBsZWdhY3ktdHJ1bmsKKzQyNDIgNDNhZTdmY2Q3ODM1MmEyZjdjZTI5NWFhZGE3NGRlZWQxODUxNzUzOCBsZWdhY3ktdHJ1bmsKKzQyNDMgMzYyMTRjODYxMTQ0ZGQ2MmEyMGFkNGQzYjI3YjljODI5M2Y2MDQwZiBsZWdhY3ktdHJ1bmsKKzQyNDQgNTM1YWNhNmZmN2U5MTM0NzE4YTAyYjRmNGFmYjIyYmJlOTc2M2IxNSBsZWdhY3ktdHJ1bmsKKzQyNDUgYTU4NGI0YmJiYzU5MzRjMWFlNDFlZDUyOGFlNzkyYzEwNGRmNTJhNSBsZWdhY3ktdHJ1bmsKKzQyNDYgNjY4NTA0ODQzZDBmNDE4OWM4NDUzODJkMGJkNGJjZGM1NzgzMmI0YiBsZWdhY3ktdHJ1bmsKKzQyNDcgOWI1MzBiYjU0NjQyYmExODZiYjU3NGI1ODk2MDEyYjIwMDkzNzRkZSBsZWdhY3ktdHJ1bmsKKzQyNDggZmE4YmJkMDlmMmU2YjZjNmU5NzQ3MTk3YTI4MzhjZTg3N2M0NDZhMSBsZWdhY3ktdHJ1bmsKKzQyNDkgYjcxMWM5MDEwMjMyOTMyNjliMWRlMTY3ODFmYmJlMDVlNzg5YTAwZCBsZWdhY3ktdHJ1bmsKKzQyNTAgYjE2N2UzMzUwNDkxMjBlYzdiMGZjNWU2ODc0NGM1ZTc2ZjYwYTg0YSBsZWdhY3ktdHJ1bmsKKzQyNTEgZjA3YzRmZjBmNzk0Njg2NzIwZjBlMTliZTczNTVmNGZiNDNlODkxZSBsZWdhY3ktdHJ1bmsKKzQyNTIgNjA2NjAzNDFlZTEwNzFiNDBmZWY5MzVhM2MxNjYxMGU1NmU4MmVkOSBsZWdhY3ktdHJ1bmsKKzQyNTMgYWQzZjFkMzYyYzE0MDZjZmMwMjJhNDBhNzBlYTk4MDdlYjNhNjBjYSBsZWdhY3ktdHJ1bmsKKzQyNTQgMTQ4ZWUyYWE2M2U2ZGVjNTkxYWM3NDUyMGZhZWMxZDFiMTJjZTdkOSBsZWdhY3ktdHJ1bmsKKzQyNTUgYjg0MDI5NmI5ZTA1OGQyNzRhODkwMDQ0ZDhjYWQ1M2NkZWUwNzI1NSBsZWdhY3ktdHJ1bmsKKzQyNTYgZmFmYTVkYzgxMDBmODQ5YmZlNzFlNGYwNjgyMGY4YjM1NDk5MmYwNCBsZWdhY3ktdHJ1bmsKKzQyNTcgYjQwOGQ2YTYzODE5NTIzOWU2MjdlN2EwNTgxOGVkYjQ4NmQ3ZjdkYSBsZWdhY3ktdHJ1bmsKKzQyNTggNWI5MmEwODM5MzRkYmZiMzk0NzdmNzRjMDY0YzU2MGNjNTE3ZTAxNCBsZWdhY3ktdHJ1bmsKKzQyNTkgZjJjZTMxOTFmYzlkZTM4YjQ2MWJmNWJiNDRlOTNjOGYyYTJhNmFlNSBsZWdhY3ktdHJ1bmsKKzQyNjAgNzgyNTA5ODEzZDU3MmI4NmY5MGNjNGNkMjdjYmE1YzA3OTNlYzRlYiBsZWdhY3ktdHJ1bmsKKzQyNjEgNmNmZDQzZDVjMDc0NmIwZWM4MGUzNGU0ZGE1OWYyOGU3NzBjNzFhYyBsZWdhY3ktdHJ1bmsKKzQyNjIgZDhkOTQxZmFmNTExMGIyMzE2ZDIzN2Y5MzgxYTI0YWNmZmMzZDhjOCBsZWdhY3ktdHJ1bmsKKzQyNjMgZDg5MmFjNGI0ZmI5OWUxNDkxYTI3MDUyMjQxMGYwYzU2YmU5Yjc3NSBsZWdhY3ktdHJ1bmsKKzQyNjQgZWE1YjEzZDExYTEzMDViYjQwNGVkMGNhOGEyOGMxZGY4MmNjZWNjMCBsZWdhY3ktdHJ1bmsKKzQyNjUgMmQ1YjM2YTQzOGFiOWNmMzg1OGI3ZDcwYmQ1OTYyMjQ5ZWZjYTM4MSBsZWdhY3ktdHJ1bmsKKzQyNjYgYzQ3ZDUyNmE5NGQ5MmUzOGU2NjZlOGNmM2UyMTMyNjcxNWMwNDE4MCBsZWdhY3ktdHJ1bmsKKzQyNjcgMDQwNmEyMDhjYTVkM2MxMzdiOTVkNmRiYmE2ZWMzZWNjZjQyYWY0OCBsZWdhY3ktdHJ1bmsKKzQyNjggNjM1M2ZlMjVjZGNlNGJlNTNjOTU3OGVmYzA2Y2RhZjVhNTJjZjg3ZSBsZWdhY3ktdHJ1bmsKKzQyNjkgM2I0NzAzMTczY2FmODY2NGZlMTRmMDA2ZGEyZTllNTJlOTQ0ZGE5OCBsZWdhY3ktdHJ1bmsKKzQyNzAgMjBlMWQyOTZmZGNjODZiY2ViODJkNjM4N2YxNjQwOTQ0MzA4MTNiNiBsZWdhY3ktdHJ1bmsKKzQyNzEgYTcxMGZiMDAxYTNmYjQ1MTNjMjFmYjEzNGM4ODA0Yjc2NDYxMjQ5NSBsZWdhY3ktdHJ1bmsKKzQyNzIgYTI2YjMxZTE1OWJlYzQxZDc4Yjk2ZmYzZjViYTdmMDI0ZjM5MDIwNyBsZWdhY3ktdHJ1bmsKKzQyNzMgY2U1NDQ3ZGI4ZjUzN2UyYTA0YmJhMzUwZWY0OWUzZTQ1NDQ1MGY1YSBsZWdhY3ktdHJ1bmsKKzQyNzQgNDA1OTRmODBhYjNjMmYyODllMjA5ZjY5NTRmOTBlNGIxYmVlN2VlMSBsZWdhY3ktdHJ1bmsKKzQyNzUgNzZkMGYyYjNiOWVlNzExNzllMGFjZDUyMTQ5MDQxMWZiYWUyZTk2MSBsZWdhY3ktdHJ1bmsKKzQyNzYgYTZlZjJjOTdjNzc2MWVkMjEyNzBiYTdhYzVkZWUzYWVmNjNlMTEzOSBsZWdhY3ktdHJ1bmsKKzQyNzcgYjExYTA2NjhiMTgxY2NiYjQ1NmRiNzg0ODIyYjk4YmQ4MzRjOTI3MSBsZWdhY3ktdHJ1bmsKKzQyNzggNzkzMWRlMDFlNjkzN2RlNWE0ZDMzMWQ0MzU1NWIwZjJiM2U2MjdhMCBsZWdhY3ktdHJ1bmsKKzQyNzkgY2U4OTdlNzUyY2E0YWM1NTE1MzFhMjAyMmQyOWY3MTQwMzhkNDlkOSBsZWdhY3ktdHJ1bmsKKzQyODAgZjVmM2RkZmVjM2M3YjE1Y2M5ZGNjYmFmMTFhMWM1MTdlOTc2ZWIxMyBsZWdhY3ktdHJ1bmsKKzQyODEgYjQ2NGUxZDBiMmZiNDM0YzhmNmI4OGIyNDI1OGMyMzZmZmFhNzU2MiBsZWdhY3ktdHJ1bmsKKzQyODIgYzFiMGQ3ZWVkOWZkZmFjNmMwYjRkMDk3NTdkMjU4MmQ3MWIxYjhmNCBsZWdhY3ktdHJ1bmsKKzQyODMgYzQ1MzZkOGFmN2I1ZDRlODA1ZjlmNWRmYWQwNjkwODYxZWQyMDhjMSBsZWdhY3ktdHJ1bmsKKzQyODQgMjE2Yjc1NTUxNWU2NWQwMWVkMjQxN2NlYTllNzBhYzRhNjhjOWRkYiBsZWdhY3ktdHJ1bmsKKzQyODUgNzllNDIwODA1YzY3MjI3YjM4OTQwZGI1OTQwMWM0MjE4NWUwYTVjOCBsZWdhY3ktdHJ1bmsKKzQyODYgMzlhNGMxNWFjYjMyZGJlMjEwY2U4YmExZjAzZmNiNThhNTFmYjk3MSBsZWdhY3ktdHJ1bmsKKzQyODcgZjhiYWFiNWMwMTY1Mjg1MDVkODE3YTZhOTdkZmI3YWY5NDg0ZTZlOCBsZWdhY3ktdHJ1bmsKKzQyODggZDc5OTg4OWMwMWUzNWI5M2U4ODRkOTcyYzZlYTcyNjFiZjc0MTQ2NiBsZWdhY3ktdHJ1bmsKKzQyODkgMTIwM2YwNjI5NTI3NTMxYzgwYjU5NzQxOTY2ODZkZmFhODBlYjhmMiBsZWdhY3ktdHJ1bmsKKzQyOTAgODczNjRkOWUzNDQ0ZTk1ZjQ3YTQwN2E4MjU0MDY1NjI3MTlkMzhkNiBsZWdhY3ktdHJ1bmsKKzQyOTEgNWY2YWNkMWFiNWM1MDNmZDNmZTkwOGIxMDc1NDVjYzhjMmM4YjkxMiBsZWdhY3ktdHJ1bmsKKzQyOTIgMWY0YTg2ZGJjZDc5MDY0MTdlOWE4MDM0MTM5ODBlOGY0ODEyZWYxNSBsZWdhY3ktdHJ1bmsKKzQyOTMgYmZkMTE2MjBhMmQ4MWU4MzA0ZjQ4ZjY1NTIyYmI3Mjk0ODkwMTA0ZSBsZWdhY3ktdHJ1bmsKKzQyOTQgMjNmMDNlZjAwMzYxYmM3NzE3Nzk1YjMxZGRjOTMxNTBhNTQ0MmI1NSBsZWdhY3ktdHJ1bmsKKzQyOTUgNjVjYzcyN2YxNDM2YzA3OTcyN2ZmZGQ3MDkxNmNiNDU3YjVkYThhOCBsZWdhY3ktdHJ1bmsKKzQyOTYgODI5NGJiZDk0NTM1MGQ0MWQ0ZWFlMzZlNTEyNTg2M2RiMzQzNmZiNiBsZWdhY3ktdHJ1bmsKKzQyOTcgZDFlNmM5YTY0YTU2Mzg0MWY2MDE3N2FjOTA3NzM5Zjk1M2YxNTYzMCBsZWdhY3ktdHJ1bmsKKzQyOTggMDk1YzFjYzdmMmJiYjIyZmYxMTZiMDMzN2FjM2JkMmQyZmUzN2NkNiBsZWdhY3ktdHJ1bmsKKzQyOTkgNTI0M2ZiMTg3ZDM2YzYwYjAxMjEzM2ExYTVjNjYwZDdhMzVhMTI2NCBsZWdhY3ktdHJ1bmsKKzQzMDAgMGQzMTg0NzVmOWUzNzE5OGI1YTMyMGM4ZTEwZTY5YTc1MjIzYjE0YyBsZWdhY3ktdHJ1bmsKKzQzMDEgYjcyNDU5OTQwMWZmNzNmYmI4ZDU5NWI5YjNkNjMwOTM2MzRiNDk5NCBsZWdhY3ktdHJ1bmsKKzQzMDIgNmUyM2FmNjQ1YjQwYmRkOGUzMWVhMGNjNGM3MmQzMGVmNzc4ZjMxNSBsZWdhY3ktdHJ1bmsKKzQzMDMgMWZjNGRiNzkxNDZhZTVlZjU3N2MwNmZiYTVjZGY3YzU4ZDJlZTQ3ZSBsZWdhY3ktdHJ1bmsKKzQzMDQgMTQ1MzkxZGYyNjU3OWUxYzZmYzQ0MTA4MDhlYTZmYjkxNDk0NWU1NyBsZWdhY3ktdHJ1bmsKKzQzMDUgMDlkZTcyM2IyNTk2ODI2NjVjNDY2MDIyYzAyMjAyYzFmYzFmZTFhZiBsZWdhY3ktdHJ1bmsKKzQzMDYgOWQ0YWRkNDJlZTIyZmY0Mjg5M2VhZjM3NzAyODA4YTI3NTE1N2Y3MSBsZWdhY3ktdHJ1bmsKKzQzMDcgMjc4NmFjYmE2Y2VjMWNmYjlhNTk3MTFmNGNlNjEzZDAyNTM2Y2NhOSBsZWdhY3ktdHJ1bmsKKzQzMDggOWRiZGI4M2Q0MTc4ZjM5Mjc1OGVjOGFmOGQ0M2JjMTNjMjQ0ZjM0MSBsZWdhY3ktdHJ1bmsKKzQzMDkgMTgyMjQ2NWEzNWI4MGNmY2U0MjgzODJlNzU3YWJiNGIyNzc0MjQ2MyBsZWdhY3ktdHJ1bmsKKzQzMTAgZTE1Zjk3NjFjYjAzNWJjYjYxZDYyNGZjZWFhNTMxOWRhNTBlZjgzZiBsZWdhY3ktdHJ1bmsKKzQzMTEgMGIwODE5NmU5ZmY2MTZlYzM3NDYzZGYzMzYyMjEzNzc3OGQwM2IyMiBsZWdhY3ktdHJ1bmsKKzQzMTIgNTRmZGM5YTk1ZjQ4OTA5M2ZmNWVlMzA4ODliOTZlZjY3MzZlNjg3MiBsZWdhY3ktdHJ1bmsKKzQzMTMgNzg4OThiMDRhNjViZWYxZTYyMWZmZjk1MTc1M2Y1NzMwNDk1NzRkNyBsZWdhY3ktdHJ1bmsKKzQzMTQgZDQwNWUzZThmZmQzNDlhZTc2M2ViN2I4Y2ZkY2Y0ZmI0YWQyNWQwZiBsZWdhY3ktdHJ1bmsKKzQzMTUgZWYwOTQ2NTYwNjIwYWNiNTg3OTg5MmZmYTYxZDRiNTEzM2QyOGQ4OCBsZWdhY3ktdHJ1bmsKKzQzMTYgODU1Y2VmYmIyNzE4NjMxMjlhZDFlZDk5YTA0NGZjOGY0MmEzOGY3MiBsZWdhY3ktdHJ1bmsKKzQzMTcgYWFmMWUwNWU2ODQyZDhlZDgzNTU5OGU1YzdiNTljODI5NDJkNjlhNyBsZWdhY3ktdHJ1bmsKKzQzMTggMjBlNjA3MTQ3ODhjNWRhN2E3Nzk5MmY3ZDI1OWUzYjhlMzM5ODk1NSBsZWdhY3ktdHJ1bmsKKzQzMTkgOWM1ZDMzM2QzMzAwZTkzMjQwZTE1ZmUyM2E1MDI2ODZkYTY3YzA0OCBsZWdhY3ktdHJ1bmsKKzQzMjAgNzU4YzEzNzRmMzAzNDgyZmNmYzZmM2ZkYjNiMzQxMDA3ZWEyN2RlMCBsZWdhY3ktdHJ1bmsKKzQzMjEgNjNhZDI4OTM5NzgxYWE4ZDc1NzllMDg2YWNjMmQ1NzY1NjZhYzg0OSBsZWdhY3ktdHJ1bmsKKzQzMjIgMmNlZGU2MWU5YjFiYTRlYjhiYTQ4OWZiNTQwMWQzMmMzMDI1NjU5MiBsZWdhY3ktdHJ1bmsKKzQzMjMgNjE3MzhlZDZjYzEwYzQyOTUyYmE5MmZlMTIxNzRjM2E2M2Q0YmRmYiBsZWdhY3ktdHJ1bmsKKzQzMjQgMTBhMTI0NzNlZTkzMWNhZDI0YzczZDVmZjcyN2YxNDRlMWRmNTY5MCBsZWdhY3ktdHJ1bmsKKzQzMjUgMzJlNmMzYTY3MWQwMGY3ZjBiMTZhZDllMTEzZDQxNzEzZGYwMzZmMCBsZWdhY3ktdHJ1bmsKKzQzMjYgOTA4MWJiN2FjZDUyOGFlOTM0YzU4MmMyOTgwMTYzYzcxZWNiMTcwOSBsZWdhY3ktdHJ1bmsKKzQzMjcgMDc0YWEyNjM4MjZiNDY2OWQwZTI0NGVhMjA1ZDQyM2UxMmJhZTdlOSBsZWdhY3ktdHJ1bmsKKzQzMjggOGM5Y2MwNTRjNWVkY2U2ZGVhZThjNDFmN2Q3MzJiZDk2MTIxZjdkZCBsZWdhY3ktdHJ1bmsKKzQzMjkgY2M1YmY2YmU4MWE1ZDI2ZjgzZDI5NjhhYmQ5NmE0NDBiMjhmYTAwYiBsZWdhY3ktdHJ1bmsKKzQzMzAgMzJkMDA1ZmFmNWZjZDBiZTc0MGEzNTk0M2EyOTM1ZjI2MDA0NjUyZSBsZWdhY3ktdHJ1bmsKKzQzMzEgMjdkNGYxZjkzNDZjNTc0Nzc2NzQ3MjgyNjg2ZjIzZjgxMWUzNmMxNSBsZWdhY3ktdHJ1bmsKKzQzMzIgOTFiZmIyNzcxNTU0ZTgxN2FlMDkzZTdkMWM4NWUyOWY5M2IxN2U2ZCBsZWdhY3ktdHJ1bmsKKzQzMzMgMDVmYjlkZWMyYzljZjFjNGY4ZTZmNDVlMDFlMmJkNWJjZTY3OGQ1MSBsZWdhY3ktdHJ1bmsKKzQzMzQgM2E3MGU5YzBkOWY1MTFhNTdhZTQ0ZWYwNGU3YjQ4NGM1NTk0YjY4ZiBsZWdhY3ktdHJ1bmsKKzQzMzUgZjg0YjY0ZGYwOWMzZTYyOTU1YWU5ZTZkYTE3YzE3Zjg0MTIzZmE0YyBsZWdhY3ktdHJ1bmsKKzQzMzYgNDIxNGE3NTgzZjJiYTg4YjgwZTRjZWIyMDJiMTJmMmEzY2JiNDQxNSBsZWdhY3ktdHJ1bmsKKzQzMzcgYWZiZjExODZjODk3NGEwZGViZjZiZjdiMDRjY2UyZGM1NTkxMTc0ZiBsZWdhY3ktdHJ1bmsKKzQzMzggZDNkZTJjYWQyYzY4NGMxNjAzNWE0OTg3MGQzODBkYzgyZmQ5MDg5YyBsZWdhY3ktdHJ1bmsKKzQzMzkgYWM2YTlmOTBmNmZkNDhkN2MyNTQwOGRhMDY2MGFkZDYzMDU4Mzg2NSBsZWdhY3ktdHJ1bmsKKzQzNDAgZTdjNmExODM4MWQ5ZTdhMzA1Yzg0ODgwYzFmYzQ3MTJhY2E3MjI4OSBsZWdhY3ktdHJ1bmsKKzQzNDEgYmU5NTZiMWVmYjk3Y2NhYTc1ZTFhYTk3YmM1ZDc5YzFlMWVkZGI0YiBsZWdhY3ktdHJ1bmsKKzQzNDIgNGUxY2VhZWUyOTYzMjdkZWZjZTRhYjQ1MDkyODMyY2U3MGJiN2U5ZCBsZWdhY3ktdHJ1bmsKKzQzNDMgYjdkZTY3ODVjOGFjN2Q5NzI0MjAyMjQ2YTQ2OWM3NzYzYzIzNzNhZCBsZWdhY3ktdHJ1bmsKKzQzNDQgMjRhZTdhZjQwYTA5NjBkZWNkZTE2NzgzZjYzNDE4ZDJjZGZjN2FhMiBsZWdhY3ktdHJ1bmsKKzQzNDUgZWVjMGRjNWFiYTYwMTFiYWJhNTA4ZmNiNTYzMTNkNzg2MDIyNTA4NiBsZWdhY3ktdHJ1bmsKKzQzNDYgYWJhNTE2MjEyNDRlN2IwMTIzOThhYWEzNzY2ZDdiYzE2Y2FhNzc3NCBsZWdhY3ktdHJ1bmsKKzQzNDcgMmM4YjRkZjIyYmMyZjA0NWMxMWQ1NjllOWZkMjlhMzY0Mzk3ZTBiNiBsZWdhY3ktdHJ1bmsKKzQzNDggYzIzNTBjODdiZTNmY2M3OWU5NzUxYmQ3MTkxNWQ1ZDE5MGQ5N2I2OSBsZWdhY3ktdHJ1bmsKKzQzNDkgNjU0YWE5NjRkYzI2M2Y5ZGJiZTA1ODQ2NTNkMjllZTNlMzhlNTY0YSBsZWdhY3ktdHJ1bmsKKzQzNTAgM2ZiZGE4NzY4ODU1Mjg2MmNiYjY5YTJiNWNmZTE4NmEzOGJlNDhmMiBsZWdhY3ktdHJ1bmsKKzQzNTEgMjBmMTdiNWFjY2JmODIwMGI4NzJhOTBjYzAyMzUwNTYxNWViM2E5ZiBsZWdhY3ktdHJ1bmsKKzQzNTIgYTY3NzZhNzg4Zjc0OWFlMWQ5OWJhNTI0MjFmNTVjNWI2ZTA4NTQ0NSBsZWdhY3ktdHJ1bmsKKzQzNTMgNWJhZjExMzVhMTNkM2Y1YTYzMmI3YzcwMmMwM2YzYzA1YmU0NGM2NSBsZWdhY3ktdHJ1bmsKKzQzNTQgMjU5ZTY5YWEwZjE1OTg4NzMwMDFiMGE5MGQ1MjQwYjVlODFkZWQ5OCBsZWdhY3ktdHJ1bmsKKzQzNTUgNTNkMTdjMDRiNDJmYjBmMzQ0OWI0Yjg1NjJjZGJmODU1Njc0Y2EzMCBsZWdhY3ktdHJ1bmsKKzQzNTcgZTQ1MGJkNDM2MzFhOTg0Mjg2ZWI1NDAzZGU2OTFlYmVkZDQyYTdhZiBsZWdhY3ktdHJ1bmsKKzQzNTggNjEwOTA2OWQ1NjEyZjAzODhlNDAyMDhkZDg4MmVkNTQ1N2NmOGQzYiBsZWdhY3ktdHJ1bmsKKzQzNTkgNjFjM2MxYTJmZGI0NDNmMmFlMWUwZTY3NzYyZjFhZWY3YjE4NTI5MyBsZWdhY3ktdHJ1bmsKKzQzNjAgOWQ5ODEyZjI3OThiNzNhNjUwZmExY2MxMjExNDJmNTFkYWZjZDQ2ZCBsZWdhY3ktdHJ1bmsKKzQzNjEgYmQ5NDA2OGYwZmQwMzc1NDBhYzUwNGZlODE3NDIzMmNhOGYyM2M0ZCBsZWdhY3ktdHJ1bmsKKzQzNjIgMDQzNzczODI3OWE4ZDY4MDc5M2ZkZGY5ZDVhYmFkMWFkNzIyMjNjZiBsZWdhY3ktdHJ1bmsKKzQzNjMgMGMyMzIxOTRhNjRmMTBjNzFjNjE3YTcyYzY5YTRjOGRlZGFjMTE5MiBsZWdhY3ktdHJ1bmsKKzQzNjQgMzU5NDdmNjA1MjhlZDAxNTdlMjE1MTRmNTU0MDM4YmUyNmRkMGUyMCBsZWdhY3ktdHJ1bmsKKzQzNjUgYTdmMjY5NjEwZWMyZDc5ZjdmZDQ5ZDU0OGY0NjIzODg3MmQ5NmJhZiBsZWdhY3ktdHJ1bmsKKzQzNjYgYWRhMTlhYWFmOGMwYzhlNTA3MWI1N2E0YmE2OTVkZjQzMDhiNmZjOCBsZWdhY3ktdHJ1bmsKKzQzNjcgODYyM2FhMzkxNWRiNzAyYjEwMmNjNzcyY2IzMzY2ZWFjMjk3MDM0MCBsZWdhY3ktdHJ1bmsKKzQzNjggODkzNDEyMTAxMjk2OWYwM2QwZThjN2UyYjA0MzJlZGRkODVhOTFlZSBsZWdhY3ktdHJ1bmsKKzQzNjkgODA4MThjMTA2ZTNlNmY0ODc3YTg0ZTQyNmMwNjFjN2E3ZmJiNTFiMyBsZWdhY3ktdHJ1bmsKKzQzNzAgZTEyNWY1MDIxZTY3M2QxNDVlM2VjZDhjNmRlYzk4ZDNmNmM4N2FmOCBsZWdhY3ktdHJ1bmsKKzQzNzEgMDE0YTFmYjljNjQ2MzQyOWFjNThhYTQ3YTYzOGQxNjJjZmY2YmI2YSBsZWdhY3ktdHJ1bmsKKzQzNzIgZjM5ZDQzNzI4NzcyNGU1NjI3OTZhYjY1MTE1MGZmODFkMjMwZjRjNiBsZWdhY3ktdHJ1bmsKKzQzNzMgZTBhZTZmOTViY2ZiNDE5Y2UyNzM4OWY5ZmYyOTNlYTJmMjQ4YWEzYiBsZWdhY3ktdHJ1bmsKKzQzNzQgNWYzM2NhNTIxNDUyMTI1OWUzNWZlYjAzYWY5NTZhZTBmZWE3ZDkwYSBsZWdhY3ktdHJ1bmsKKzQzNzUgMjc1OTUxYjA4NjA4YzljYzRkN2JlZGE0NzQ1OTMwNmNlZmViNjQwMCBsZWdhY3ktdHJ1bmsKKzQzNzYgMzg1MDcxM2Y2YWVhZTY5MDhkNjRmY2IzODE1NjI5NjYwZDFiMWFkMSBsZWdhY3ktdHJ1bmsKKzQzNzcgYzEwODhkMGJiNTYyMzA2NmNlNTExZTA4NzBhMjBlMTdmNzU1NDgyMSBsZWdhY3ktdHJ1bmsKKzQzNzggNThiMDQ2Nzk1MGQ4MjIzNjhkMGViYjA1YWM0MDUzY2IyMmNhMDY0ZCBsZWdhY3ktdHJ1bmsKKzQzNzkgYTFhYmE0ZDQ1ODkzYjBhZGE5NjI1MzMxNjYzNzU0YThjMGIyODBkMCBsZWdhY3ktdHJ1bmsKKzQzODAgZWE5ZTg1MzNkNmMzMmE5M2YwZTRhMzE4MTkxZWRjNDMyODQ3OTQzYyBsZWdhY3ktdHJ1bmsKKzQzODEgZTU2YWZkMDNjYTdmYzk0NjA2ZDJkYWViNDA0ZTE4MWM0YjZhOTkzZCBsZWdhY3ktdHJ1bmsKKzQzODIgYThiN2VlMGU1NzJkYTdkZTAwMGUzNGUzOGM3ZWQ0ZDQ4ZjMwY2ZiYSBsZWdhY3ktdHJ1bmsKKzQzODMgZjA3ZDY2YzE2MmNiZmZiNjAzYWNjMmY4Mzg5OTljOTEzZmYzMDM2ZiBsZWdhY3ktdHJ1bmsKKzQzODQgZmFjYTdlMzI4YmE3NDljMTNlZjU2YzA3MzYxNDE2MzNmNTYwYzVkOSBsZWdhY3ktdHJ1bmsKKzQzODUgZTNmZjllMmEzZWI3YWY1ZjE2ZjBmZThkMzk2YTdhM2M2NzkwYmVmZCBsZWdhY3ktdHJ1bmsKKzQzODYgNWJjYWFlZDkwMmY1NTBkYWYyZWI5OGFiNjA1NTdmMjg0MTc2YThmYyBsZWdhY3ktdHJ1bmsKKzQzODcgMjM0ODE3NjUyZGIwNmMyZDRmMTU5YWExNzVmNmE1ZWI1Njc1YmIxYSBsZWdhY3ktdHJ1bmsKKzQzODggZjNhZTdjMTdhYzA4N2Q5YTAwZmIwMWMwODdjOWU4ZmY5MjhhMWI2ZCBsZWdhY3ktdHJ1bmsKKzQzODkgZDlhM2UzMGIyZTQ3M2M4Y2NhYjYwMDViNmIzMzMyNzc3YTg4MDc0MyBsZWdhY3ktdHJ1bmsKKzQzOTAgNDVjNzMwMThkZDAxZDcxY2YzODNhM2EyNGQ1ZDg0NGVhZTU5NjYyOCBsZWdhY3ktdHJ1bmsKKzQzOTEgMzIwYmFlYWI3ODdhYzlkNzA1NGNmMDlkMGQxZTBmMjgzYjNjN2Y2NyBsZWdhY3ktdHJ1bmsKKzQzOTIgMmI1ODFjZTQzZjRhMzczMzk4MjllZjZlYmE1NGFjZmNhMzU3NzIyMCBsZWdhY3ktdHJ1bmsKKzQzOTMgOTNkZTU3NzU5NjZlNTU5ZWY2YzJjYmI3NzY2YzMwNDA3OWNhNzI3MSBsZWdhY3ktdHJ1bmsKKzQzOTQgOGI4OTdiN2YzYWRlOGZjNGQ5NjU0M2NiZmM1OTcwMzBmYmQyMWIyNyBsZWdhY3ktdHJ1bmsKKzQzOTUgMGE5MTUyZjg3MTExNjAyMzgyMmFmMGQ2ZTdlZWZlNjc4YmQ5ZmYxNCBsZWdhY3ktdHJ1bmsKKzQzOTYgODVmMWQyYmVjNjMyY2EzODlhZDA4YzQxNDExYjkwZTBjYjNlMWYzMCBsZWdhY3ktdHJ1bmsKKzQzOTcgMzE4NzNiZDZmNGE4NzE2OGU0NjhiOWE1ZTVlNDU5Y2JiMGE0OGRmMCBsZWdhY3ktdHJ1bmsKKzQzOTggOGU4ZmRkY2JkZmQyYjI1ZTRlMTM3NjFhNThhNjRiODM5MGUxZGQ0MCBsZWdhY3ktdHJ1bmsKKzQzOTkgNGJlNmVmMWMyYzFkZjVlMWQ4MzRmNWFkZmUxNmI4NjkyODFhOWE3NyBsZWdhY3ktdHJ1bmsKKzQ0MDAgYmJmODJlYjRhNmQ5ZDMzZjAxMDgwMGUxYzczNGJiNWQ0MTM5ZWRkNiBsZWdhY3ktdHJ1bmsKKzQ0MDEgYmEwOWQ5MGY0MmJiMjYzMTc0YTZkMGE1M2UzMTA0ZDQ2ZmVmM2UzZSBsZWdhY3ktdHJ1bmsKKzQ0MDIgOWJjYWM4ZGEwMjYyNDQ1YzVhYzA4NTk1YThjNDNhYzQxYjAzZWFiMCBsZWdhY3ktdHJ1bmsKKzQ0MDMgMzE1ZDljODI4MTc3NGQxMzE0ZTA5ZjlkMWIzMmZhNWYzYWU4YWY0MiBsZWdhY3ktdHJ1bmsKKzQ0MDQgZjZiNGU3YWNjN2EzNzRmYTMwYzU5OTg1MWIzMzg0YTk2Y2M2NDU0OSBsZWdhY3ktdHJ1bmsKKzQ0MDUgZTE1N2M4MWQwMzU4OWQ2OTQ5NzZlMTRmNjc4ZjM2NjIxMDc5OGRlZiBsZWdhY3ktdHJ1bmsKKzQ0MDYgYjJjNTZlMDRjYjgyOTA1ZTQ2ZTU4M2U1Njc4YWU3N2U5NzIwOGRkOSBsZWdhY3ktdHJ1bmsKKzQ0MDcgNGM1NzFkOGMzY2UxM2JmZjdmZTUwMTg2MGNhYWYyOGY5ZjIwZDY4MSBsZWdhY3ktdHJ1bmsKKzQ0MDggNDRlOTQxNTI0NWZiMDljZWY1ZjJhMWZiZGZhMWE1YzUyZjM1MDIxYSBsZWdhY3ktdHJ1bmsKKzQ0MDkgODgzYTIyODE3NDcyYWVkMDU4MzZhMDViNGIwOWI2NGM0Y2ZmOTgzZiBsZWdhY3ktdHJ1bmsKKzQ0MTAgNzYxMDUxYWE0MzRkYjFmMDlkYjg1NGNlN2YyMGJiMmQxYTVlYWY3OSBsZWdhY3ktdHJ1bmsKKzQ0MTEgMzhkY2IwOTBmNDhiMDYzODU3Zjg5MzBlYjhmMTc0ZjJmNmU5NTcyZiBsZWdhY3ktdHJ1bmsKKzQ0MTIgNTQ1ZTIzNTgzMWI3YmI0OWZiY2Q3OWFkNmFiZjZjNWNjMThmODdiNyBsZWdhY3ktdHJ1bmsKKzQ0MTMgNzEwMGFjYjBkMzYzZDdlYjc4ODA3Y2Y3OTJiZDliZDhhZGFhNDIwNyBsZWdhY3ktdHJ1bmsKKzQ0MTQgNDI3YzYxOWNhNWQwNzMxOWI2ODFhNzEwMmNjYzdmNzFiYmY5ODZlZSBsZWdhY3ktdHJ1bmsKKzQ0MTUgMDU4YTQ2ZDhmYWY3NjU4ZWExYTI5ZTU2N2E5MTIyZWMzNWM4OGE4MCBsZWdhY3ktdHJ1bmsKKzQ0MTYgNjQxZjZiYmY4MDdiOWNjOTc5MmU3M2I0ZTA5ZmE1MGNmODcyMmRhYyBsZWdhY3ktdHJ1bmsKKzQ0MTcgYTEwZDMxZmYzNTI3ZGE3ZDMyZjg4YjFiMDZmMjY4NjczZjNiZTI1NCBsZWdhY3ktdHJ1bmsKKzQ0MTggNzhiZjY3NWRmNWU1ZGZmYTk2NGRlYzAwOGQ2NTMwMzYyZDkxYWVhMCBsZWdhY3ktdHJ1bmsKKzQ0MTkgM2JhMTczMDVmMDQ3ZjE5MDI0ZDNmOTk5ZDRkMzRmYmMxZjc3Yzg0MyBsZWdhY3ktdHJ1bmsKKzQ0MjAgZGQ3YmU4MTI4NDEwNzE0YjE5NDZlMzk5NjExM2I2NTljMTNkMDc3NSBsZWdhY3ktdHJ1bmsKKzQ0MjEgZGMxZGJmNmI1MjExMDA1YmRiY2FiOThmNzFjYzU2Y2JmOTMzMjU1OSBsZWdhY3ktdHJ1bmsKKzQ0MjIgNGZiMGEwODA3YjA1Njc0MDJhMjZiMTU4YWJjYmY0NTU5MDc4YTVkOSBsZWdhY3ktdHJ1bmsKKzQ0MjMgM2RlNWE3NTQ5NGRmY2EyYTU4NDg1ZDE2MWU0YjdiOGJiNGJmZmUwYiBsZWdhY3ktdHJ1bmsKKzQ0MjQgODQ2MzdjZmRiYzA3NDJhOTc1OTVlNDRkNjY5MjQ3ZGM0ZjkwM2IxNSBsZWdhY3ktdHJ1bmsKKzQ0MjUgODdhNjIwZDg0NzY2MzNkYjhiMzViMTlkOWU0ZDM0ZDhiZjNmODFkNCBsZWdhY3ktdHJ1bmsKKzQ0MjYgNDQ1NDQyMTc4NGQ4NGFjOTRkMzlkOWVmZmM2MjU0ZGZmMDUyYmE4MSBsZWdhY3ktdHJ1bmsKKzQ0MjcgZjIyY2I1ZmVlOWM4YjdkODI2NWIzNzliOGYzNTFmMzAxZDZmMjA4YyBsZWdhY3ktdHJ1bmsKKzQ0MjggZjk1YzE5M2JmZTY1MzRmYTFmM2NmODIwODY1NmMwMWNjMWE1ZDUzZCBsZWdhY3ktdHJ1bmsKKzQ0MjkgZGNmZTdmZDFhY2JjNTY0NGZkZGU3MjE3ZjUyMDI0NDFhOTIxNzcyNCBsZWdhY3ktdHJ1bmsKKzQ0MzAgZTIzNjM5ODc5Y2QwNWI5NmE1ZjI3M2FlMDc4N2QxNjNkZDJmYmNmNCBsZWdhY3ktdHJ1bmsKKzQ0MzEgYWQyNWM1MjM3NmI0NWI4MDlmYmQyYTZjMDQ4ZDNkYjYwMTIwZTJlMyBsZWdhY3ktdHJ1bmsKKzQ0MzIgNDJmOTVlYTc1ODY3MzQ3ZTgyNDAxNjllZDlkOTAyNmJmNjI3MDEzNCBsZWdhY3ktdHJ1bmsKKzQ0MzIgODMyNjE1ZWMwNzY0NmUzMTBjODUzMTZiOGJhNmJjOWIxN2FkMzU0NyBsZWdhY3ktdHJ1bmsKKzQ0MzQgMjM0N2IxZmU4MTJkZDVjZTY1M2MxMDFhMDdiMTIwN2NiYTdlYWQxNCBsZWdhY3ktdHJ1bmsKKzQ0MzUgNGU2MzEwMzJlYWNmMmI5YzZmOTc2YjY1OGM4NDFiMDM5NmYwZjMzZSBsZWdhY3ktdHJ1bmsKKzQ0MzYgMzM1MTU0ODVlYWQwZDZkZTMzZjI4MjMyM2E4YjEyMzNkNjNmZWFhMCBsZWdhY3ktdHJ1bmsKKzQ0MzcgODBiZDdhZjczMjAxOTA3ZDI1NzExZjFmNjgyOGEwZWM2ZDFiZDM2YiBsZWdhY3ktdHJ1bmsKKzQ0MzggNDA2MTFjYWNkNWJkN2EyNmFjMWYwMTQ4MGI0YzkwMDk4NWMyYTBjMiBsZWdhY3ktdHJ1bmsKKzQ0MzkgMTVhMWViMTEzYTQzMDgzNTY4NjBjMTllZGY4ODJhOTY2MzI5MTRjMCBsZWdhY3ktdHJ1bmsKKzQ0NDAgNThlZWY1MWUzMDg0OWM2YTc4MzRlZDlmNjhkMjM1YzQzOTVkY2FkMCBsZWdhY3ktdHJ1bmsKKzQ0NDEgNTU4ZDlmOTVhNjAyMGFkNjMzZjZmYThlZGM3MTkzZjJhNjFlZmI0ZiBsZWdhY3ktdHJ1bmsKKzQ0NDIgZGM2ZWFhMWE4ZmRkZmVkNWU3MzZiMDE5N2U3NTdkZTQ0MDI1MThkYiBsZWdhY3ktdHJ1bmsKKzQ0NDMgNzdkMWNhYmY5NzFjY2NjYTIwODI2N2E1MWIzODRkODQ5MzUxMTA4ZiBsZWdhY3ktdHJ1bmsKKzQ0NDQgNGU2MDU2ZDk4MGUxYTFjMDczMzA5NzIxYmQxOTExY2JjZDg1Zjk1MyBsZWdhY3ktdHJ1bmsKKzQ0NDUgNzQ0MjY1Mzc0NDUwODAxZjBmMWZhZTAyOWQ4MDlhODg2YzEwNmIzMSBsZWdhY3ktdHJ1bmsKKzQ0NDYgZjQ5NTI3ZWNkYjNhZDVjZDZhOTdiNzllZmUwMzVjODY0MDBjOTA0MyBsZWdhY3ktdHJ1bmsKKzQ0NDcgYWYyNmQ0ZDVjMWQ0M2EyYmYzNjRjNDkyZTU1ZTYzNDM4NjI2OGUzNSBsZWdhY3ktdHJ1bmsKKzQ0NDggZmIxOThlMTMxNmI5YmRjMmM4OTc4ZjYzZWU2NWJlYmJiOWZmMjQ5MSBsZWdhY3ktdHJ1bmsKKzQ0NDkgMWRhYjk5Yjg2ZmE4YzNmNmE3YzQ0MDA0ZDI2NGVmMWUzNjEzN2FkNSBsZWdhY3ktdHJ1bmsKKzQ0NTAgZjkwMGMwOTk5NWRmYzQyZjI1NjY4NmMyZWJmODEwYzNmOTMwMTM0YSBsZWdhY3ktdHJ1bmsKKzQ0NTEgNjNmODc1ODQ5YmQ4MzE5MTQ0MTI5YTEwOGM5ZDc2NGJkYTcwMTdiMyBsZWdhY3ktdHJ1bmsKKzQ0NTIgY2Y0ZDg4NjJmMTliZjQ1NzQwZjlkZmMwMWQ1ZGZmM2ZkZGY3MGNjOSBsZWdhY3ktdHJ1bmsKKzQ0NTMgYzVhNTE0ZjhmM2UzZGFjNWFjN2MxYWNjYjVmMWVkOTE3MWRiMWEyMiBsZWdhY3ktdHJ1bmsKKzQ0NTQgZDVmNGQwMTNkY2MxNDQzZTNjY2I0NDA5ZTc4ZmQ5NWIzNmQ5MWFkZiBsZWdhY3ktdHJ1bmsKKzQ0NTUgZjA1YjVjZDc5ZmJlZGI3M2E0OTJlY2I5NmM5YjFhMDRiNjgyY2M0NyBsZWdhY3ktdHJ1bmsKKzQ0NTYgZTg5NTJiOGRmZWZmY2RhY2Y0NDUxODNmOWVhZDA5ZWFjNzczZmM0NyBsZWdhY3ktdHJ1bmsKKzQ0NTcgYTcwODgzODAzMzM4YTAwNTcxODRlOTQ4Y2Y5ZjUyMWQ1NGZhZGRlZiBsZWdhY3ktdHJ1bmsKKzQ0NTggN2Y4NzE5YTM2NjYyMDNiNzQzN2RiNmRkNzRiYjE1ODc5MzYwYjQ1MyBsZWdhY3ktdHJ1bmsKKzQ0NTkgZWQ1ZDBhZDVlYTJmMWZkZTgzNmQ0NDQzMDQxM2ZhOTUxMWFhNjgzOSBsZWdhY3ktdHJ1bmsKKzQ0NjAgM2FhOTE4NGNmZjhiNmM5YmVhMDdhOWE2MDgwM2ExMzI5ZTM1NTk4ZiBsZWdhY3ktdHJ1bmsKKzQ0NjEgN2M1M2U2MWJjNGJhNTc4ZTA0YTY4MTg4MWI1MWI4MzJkMDA4MGY0OCBsZWdhY3ktdHJ1bmsKKzQ0NjIgODExYzRlNDYyMmFhYmY1NmJjYTI4N2MyNDE3ZjY1NTNmOTgzZWE1NSBsZWdhY3ktdHJ1bmsKKzQ0NjMgMzkyZGIxODgxMTkwOGM3YWM3MjE4NWExOGE2OTExYTE0NTEyMWUyMSBsZWdhY3ktdHJ1bmsKKzQ0NjQgZjY1ZWMzZGNjNTYzMWZkNTViYThiZGNhMzFlOGNmNWJmMGNmZmI2YSBsZWdhY3ktdHJ1bmsKKzQ0NjUgZjI3ODAwOTY1ZmY3Y2VkYjA3ZDZkYmE5MmE5ZWFkNGQ2MjViMmRmNCBsZWdhY3ktdHJ1bmsKKzQ0NjYgMGJhZTZhYjljOWUwZTc2NWU4ODkwMjQ4NDI2ZTI5YzZlZWY0MWRlNSBsZWdhY3ktdHJ1bmsKKzQ0NjcgZGM5YjYzMTZiOWIzNTRmMjFmMGEzM2MyODg4NGNlZWNhYTRlZDc3NiBsZWdhY3ktdHJ1bmsKKzQ0NjggNjlkNDhjYmRjMmQ5YTM5Mzc0Mjc2NjZiMTQ2N2I2MmQ3OTI3YWNhYyBsZWdhY3ktdHJ1bmsKKzQ0NjkgZWMwNWQ5MDIxYmNjZDgyMzAxNTM4YzAwZjYyNTI0NDgxYWFmYzBkMSBsZWdhY3ktdHJ1bmsKKzQ0NjkgOTg5NTQ3NWQxOGM3YjVmMzJhZGFmNzhmNzE4ODZhZTA0MWU0ZDEwYyBsZWdhY3ktdHJ1bmsKKzQ0NzEgYTRhODU0NTBlYmFmZTMyNGNkMzRmZWYyNzViZGQ4NjQwYTk2YjZmMCBsZWdhY3ktdHJ1bmsKKzQ0NzIgNWEwNzc1Y2U3YjMxMWViOTZhNzYwZGUyYThmN2JlOWMwYmMwMThkMCBsZWdhY3ktdHJ1bmsKKzQ0NzMgOWUzNDY5YzBlZDc1Y2MyNGExNWRmM2I2ZGNkN2E1OGU2ZWNlNTJhOCBsZWdhY3ktdHJ1bmsKKzQ0NzQgN2JkYTBmMmMxNzBjZGVhMjk2NmU1N2RkOWRkZWMzMDE3OWQ0ZmY1OCBsZWdhY3ktdHJ1bmsKKzQ0NzUgZWUxMmVkZmMyMDk1OTliYTFjMzZjYjRmZmQ5YTVmZWUxNWI0MWQwOSBsZWdhY3ktdHJ1bmsKKzQ0NzYgZWVlM2Q3MTVmMGNmYmYxZWEyZjRjNDI5N2Y3MmJiZDM3MzdjY2IwYyBsZWdhY3ktdHJ1bmsKKzQ0NzcgM2Q0MzFhNTIxMTMyZjIzYTA4YmQ2ZGMzNTQyMjE1ZWIwMjFmOTczZSBsZWdhY3ktdHJ1bmsKKzQ0NzggNzJiMmFiNTZlNDAzNTJlM2VkYjY3MmVkNDFjNWFkNjAwMzA0N2RmYiBsZWdhY3ktdHJ1bmsKKzQ0NzkgZmE3YmM1MjgzMTRiYzQ2MWRhYTQyOTU1Y2RkNmEzODU5MWM5YTNkMyBsZWdhY3ktdHJ1bmsKKzQ0ODAgOTdkNjE0YjI0YzA4Y2I1NDYzNjFjZTFmYzc1MjUxZThmODI4YjFlNyBsZWdhY3ktdHJ1bmsKKzQ0ODEgNWM3NGMzYWVkYTc0YWY2YWM3MjMyMDI4MGJiOWViZjNhOTNmYjNlNSBsZWdhY3ktdHJ1bmsKKzQ0ODIgZDRhMDZlODA1NmI4N2Y5YTMxNjNiNjEyMmRjNDUzNTE1Njk0OTBhNSBsZWdhY3ktdHJ1bmsKKzQ0ODMgMmEzYzhiZWJmMTU2OGFmMjg5NTkyNzUwYTY5ZmJiNjdlOTI0ZTZhYiBsZWdhY3ktdHJ1bmsKKzQ0ODQgNjcxY2YxZjhiMGMzM2JiNzE4MzkwZWYzODNlYzY3NTZjZDIxMGFmNSBsZWdhY3ktdHJ1bmsKKzQ0ODUgMTczOWYwMGZmYzg2MzFlMzBhNjdmOGE2NTM2OTFjOGJhMzNlZWMwNSBsZWdhY3ktdHJ1bmsKKzQ0ODYgNjA5YmZiOGFlN2Y1NGFlZTc1NzAzMTgxNjkxNDM3M2EyMzNhNWJjYyBsZWdhY3ktdHJ1bmsKKzQ0ODcgZTQzYTE5NDJlNTg4MDZhMTI0ZjcwNDFlNzhiZTAxY2JiMWI3MmIzZiBsZWdhY3ktdHJ1bmsKKzQ0ODggZjIzNmFkYzI4ZTc3NzA5MjJlMGM2NzFkMGJmZmFjMjJjZTk3MDU3OCBsZWdhY3ktdHJ1bmsKKzQ0ODkgY2U2OTc0MmYyZTc3Nzk1ZDE3NDJlZGFiYTc1ODJhMDUyZTk1ODI2MCBsZWdhY3ktdHJ1bmsKKzQ0OTAgODNmY2I5ZGI0Y2E4ZWM0ZTlmNzRiNDhlMjc0MGUzM2JkZGE3MTg1NiBsZWdhY3ktdHJ1bmsKKzQ0OTEgMzcwZjhjYmQ3YzMyM2U4ODVhMzMwMjRlYTdmNjYyNTUzYTFjYzg4NiBsZWdhY3ktdHJ1bmsKKzQ0OTIgNTk4M2QyZGI1OTA0NTdhYjA2ZGI2YWJkNmY3NDQ4NWVlZmJkODM4ZiBsZWdhY3ktdHJ1bmsKKzQ0OTMgMDcwMTc2OTA5MGY0OWJmMWEzMTRiM2Q1YzUwZWJhOTAzMzM4M2RhNSBsZWdhY3ktdHJ1bmsKKzQ0OTQgM2Q4MjJlMzJjMzI5NzA0NDBlNTc3OTc0YWQzMjVkNjBjNmM2OWQ4MSBsZWdhY3ktdHJ1bmsKKzQ0OTUgZTI4ZTEwZTVkZWIyYzMxMzI1MTBmMmU2ZDYzZWViZjI3ZmUyMjNiYyBsZWdhY3ktdHJ1bmsKKzQ0OTYgZWE2OTZmMjQ4N2ZjODYyODViOGMzZTExMWUxMWU2NmQ2ODgwN2JkYSBsZWdhY3ktdHJ1bmsKKzQ0OTcgNGViZWU5MDQ5MjRlNmFhNzc4ZTllNDEwYThiYzI0OTcyMDhmOTk2YSBsZWdhY3ktdHJ1bmsKKzQ0OTggMjgxZTQwNjUyZTIzNDUzODQ1NTAwNzI4MGQ0N2MyNjk5N2RlNjhhMiBsZWdhY3ktdHJ1bmsKKzQ0OTkgNjJiYmJmZTZiYmY2ODI4Njg4Njg0M2E3NmUzNzNjZTJiNmZjMjgyOCBsZWdhY3ktdHJ1bmsKKzQ1MDAgMWNlM2RiZWViODkwOTM4MGUzYjFiNzhjOGUyOTE5ODMzNGZiODMzMiBsZWdhY3ktdHJ1bmsKKzQ1MDEgZjE4YzE5MTVjNzIyZDE3NTE5OGEzNmI0NzljOTZjM2QzOWRiNGEyNiBsZWdhY3ktdHJ1bmsKKzQ1MDIgYzg1YWJjYzc1MmIxODQ2NDMwNjkwZmNmN2NhMWVjYzk5NDkyOGIyYyBsZWdhY3ktdHJ1bmsKKzQ1MDMgMDdjZjNiM2JhZjE2ZmMzMzcwYWM5NThlYjZjYzk5MjcyNTUxY2RmYiBsZWdhY3ktdHJ1bmsKKzQ1MDQgMTkzNjNmODU3MGEyZmNmZmQyZGEyNjBhNDVkNGEyMDc1ODQwODJiZSBsZWdhY3ktdHJ1bmsKKzQ1MDUgMjNkZmNhOGFhNzNiMDQwNTZkZTc1MGRmODRiZDNkMzdjZGZmYzk5OSBsZWdhY3ktdHJ1bmsKKzQ1MDYgZDdlOTE0MzdmMGEyN2UyNzQ3Y2UwMmFiMWJhNTA4ZjRlNWQ4ZWMzYyBsZWdhY3ktdHJ1bmsKKzQ1MDcgZGU0OWQ0OTA0NGQ3NTNkZjExMzA0M2I0Yjc5MzYyNTAzZjc4ZGM0OSBsZWdhY3ktdHJ1bmsKKzQ1MDggMDMxOWIxMjMyMWQ3ZGRiZjIwYTBkZmQ2ZmU1YTI5MDMzOTZkNmFkYSBsZWdhY3ktdHJ1bmsKKzQ1MDkgY2YzMWVhYjZhYjVhZTJlMDFmNGM2NmJjYzlkNWZlMmNhZTBjMGExNCBsZWdhY3ktdHJ1bmsKKzQ1MTAgYWZmNWQ3ZDA2NzM1YzhmYTBhZjk1ZGRhYThhMjY3MWFjZDhkZTUwYiBsZWdhY3ktdHJ1bmsKKzQ1MTEgNzljMTcxZjU4MWZjZGVlMzA5OTNmYTNkMmNjZTI0OTEwMjViNTFiZSBsZWdhY3ktdHJ1bmsKKzQ1MTIgNTA4MDM2ZGJiYTNiNGYyZjZmMTI4MzRkYzA2MDBhMDQ4OTFkNjcyMiBsZWdhY3ktdHJ1bmsKKzQ1MTMgODY2YzgxMDY4ZGJkYTI3MWVlMjJiOGMwODVjMzBjMjRhNzE4Y2IwNSBsZWdhY3ktdHJ1bmsKKzQ1MTQgMTQ2ODkwNjUzYTU3ZWExM2IyOGZmNDZkNDZlOTJmZDRjNjM4ZWFiMiBsZWdhY3ktdHJ1bmsKKzQ1MTUgMTcyYmEwNGE1MTkxNmNiNzUwNDEzNTQwZTAzZjZmNDI4MWFmNDFkNSBsZWdhY3ktdHJ1bmsKKzQ1MTYgZDBkMGE2OWI1Y2EzNGI3NWVjNzdkYmZjODlhNWFmZmZmNjIwNDMxYSBsZWdhY3ktdHJ1bmsKKzQ1MTcgNWVkMDY1OTQzNTI2MjE1NDdmNTM2ODE2Yzc0OTA1ODA3MmZmODY1NiBsZWdhY3ktdHJ1bmsKKzQ1MTggMjgwZjMxZTZjNjUzYmU0MGZjM2Q1NWRlZmFmMWNkZDhjYzlmZWVlMSBsZWdhY3ktdHJ1bmsKKzQ1MTkgMjZjZDRkNmMyZDEyYmUzZWI2ZWM3YWQzMzUyZGY4MmZiMWU1N2EyZiBsZWdhY3ktdHJ1bmsKKzQ1MjAgMDAwYWU2NDJmOWI4ODlhMWFkZjk4MjQ5NGYwNzIyOGRlOTQ3NDZjZCBsZWdhY3ktdHJ1bmsKKzQ1MjEgMWI5OTQ1MWZhMTQzNmNhZDc4NDJmZWM1YzU5YWEyYzA0ZDYyYWIwOCBsZWdhY3ktdHJ1bmsKKzQ1MjIgNTIyNzMyNGQ2NGU0Mjk4N2NiODZjZjhiOTdmYTQ5NmQ0NGFkMjFmMyBsZWdhY3ktdHJ1bmsKKzQ1MjMgM2FhN2E3Nzg0NDU1OWFjNDc0YjVmNjI5ZTc1OWYxNmE4ZWRmYzc0OSBsZWdhY3ktdHJ1bmsKKzQ1MjQgYmU1YWI4ZTg5YzQ5ODZlODIyOThhY2E0YmM2NTNiZTgzODkyYmQ0OSBsZWdhY3ktdHJ1bmsKKzQ1MjUgMDQ4ZTkxYTU5Yzc1ZThjZTYwYTM1MzIxZmFkMGNhYzYwNzJhYjNmMCBsZWdhY3ktdHJ1bmsKKzQ1MjYgY2Y2NWExMjRmYTRiNzY5YzY5MjFiNmE5ZjY1YzI5MzRiMGZhN2FjMiBsZWdhY3ktdHJ1bmsKKzQ1MjcgNjhhMzhjZmZjZjU4M2MyOTE4YTUzODg5MDVjMTliZGViYTE5MTI4MiBsZWdhY3ktdHJ1bmsKKzQ1MjggYTM2Y2FjNzljNWFmN2MxYzE5MjVhNDFjNTJlYzI5MTdlYjkxYmQyNiBsZWdhY3ktdHJ1bmsKKzQ1MjkgNGMzNDdlNGQxM2YxZjExNjVjODBkZDliYTQxOGVmZmRhZjFkODA1MCBsZWdhY3ktdHJ1bmsKKzQ1MzAgYWRjMDI4Yjk3N2JkZjZiYjdmNWFjMWNkZTYwMmU3ODZmYThlYmY1NyBsZWdhY3ktdHJ1bmsKKzQ1MzEgMzg0ODA5NGYyNTljYTdiYWM2OTQ0NmJlN2YyODc5MTlkN2VhMzQxOSBsZWdhY3ktdHJ1bmsKKzQ1MzIgZGY2ZmU4Mjk2YmMzMWQ1M2MzNDk0MjY1ZTc1YWFlM2ZkYmE3MDBjZSBsZWdhY3ktdHJ1bmsKKzQ1MzMgNWJiZjBhOWM5YTQyOGFjNzg2NGQzMDAwOTk2M2M2MTRlMGJlMjdmNiBsZWdhY3ktdHJ1bmsKKzQ1MzQgYzIxY2M3YjNjZTI4MzM3M2NmN2QyZTcxMzY1ODk1NzAzZGIzYzcxYyBsZWdhY3ktdHJ1bmsKKzQ1MzUgYWZlY2RlYzk5NmZmNTAwMzM2MjViNWY1Y2M2YjdmYzcyZjk1YTQ5NCBsZWdhY3ktdHJ1bmsKKzQ1MzYgNGFmYTdlYjQ3MzRiY2ZhZjY1MmZkYmZkYzg3N2IyODRmYmY3M2RiYyBsZWdhY3ktdHJ1bmsKKzQ1MzcgZjJkMjY3ZWRiZmQ2ODc2NzA5MzkxNWZhMTM3ZGRlNzBkZTEyZWE4MyBsZWdhY3ktdHJ1bmsKKzQ1MzggYWJiZjJhNGI0ODhiMzcxYTJlNjQ1OTk1YWEzY2UxNjFlNDc1NzQ3YyBsZWdhY3ktdHJ1bmsKKzQ1MzkgODkyMWEyODgxZmM3ZjI2NDY4Y2Q4NjI2MjUwYmE0YWYwNDM0ZWRkNiBsZWdhY3ktdHJ1bmsKKzQ1NDAgMjYwNGQxMWM4YjQwNDU5YzBhY2IyMDVmZTc1YWIyYmQ2MDk5YzczMSBsZWdhY3ktdHJ1bmsKKzQ1NDEgNjUxNDZiNTJmMTZiOTM0ZGRkMGQ0OTVhY2EyZDdiNzFjMmMwOWMyZiBsZWdhY3ktdHJ1bmsKKzQ1NDIgMTk0MGUxZTBjZWRmNWQ1NWU3M2MwZmRlMGY1MzZhZGMyOGM3ODAzMyBsZWdhY3ktdHJ1bmsKKzQ1NDMgNTNhYTUxNDMzZjdmZDVkNTNjMjcwYmJjZDAxMzRiNDQ3MTI3MGI4NyBsZWdhY3ktdHJ1bmsKKzQ1NDQgZjc4YjM4N2I1NGUwYTM5OTVhMGQyNzVkOWJlNDZhODJkZjkxMjcwZiBsZWdhY3ktdHJ1bmsKKzQ1NDUgYjRkOTgyYzY0OGJiM2U3NjAyYTk1OWY0MTUzMDU4NzE1YTQ4YTE4MiBsZWdhY3ktdHJ1bmsKKzQ1NDYgYjAzYjQzYmVlMWFiM2VjZmY2YTUyM2NhYTUwMTY2YzA5MThjZDc4ZSBsZWdhY3ktdHJ1bmsKKzQ1NDcgZThjYWZiMmI3NDNhN2U0YzAzZDg2OWEzNDJhMGNmNmNlZTEyOTE4OCBsZWdhY3ktdHJ1bmsKKzQ1NDggZDM1NmM0NzNkYjk5M2ZlNzRmYmZmYmJkNzM4NWI2YmY5MzAzYTdjNyBsZWdhY3ktdHJ1bmsKKzQ1NDkgMGQ3ZTRhYTU5NWY3YWE1YjRkOWI4MGU1ZGFhMDBiNzUwNzU0YzBkZSBsZWdhY3ktdHJ1bmsKKzQ1NTAgZDVjOTM1YjlhN2I1MGNlNTRhOGZkMmE1YTM1NjJjMDRmYjJkYzM0MCBsZWdhY3ktdHJ1bmsKKzQ1NTEgZTQ1ODg0MDRmZGZmMjU0MDBjMDU4MmE1NTMwNmI5MDE2MzQzOWU0OSBsZWdhY3ktdHJ1bmsKKzQ1NTIgYjdiZTAzODJmOWVlNjlkMTZhMWI4Y2ZmNzJkOWZkOGVkODU1OTM1ZiBsZWdhY3ktdHJ1bmsKKzQ1NTMgYmEyZTIxYTU0YWUzOTkxYTRiZWEzYjhlYmFjYzhmMzQ2ODRkZGNmZCBsZWdhY3ktdHJ1bmsKKzQ1NTQgNDU3NGVkNjU3Y2M5ZjlhNTVjYWU0NDU0MTVlNmE3OGQ5ODc0YTg5YSBsZWdhY3ktdHJ1bmsKKzQ1NTUgZmRjY2MzMjIyZDBhZTc5NDFjYzQ1YWE2ZDkzMzA4OTA5ZmJjMzQ4NyBsZWdhY3ktdHJ1bmsKKzQ1NTYgMzA4MjFiYzJkY2I3NDRmYjBhZjE3NWQ3YmQyOGQyOTVkYWI2MjVlYSBsZWdhY3ktdHJ1bmsKKzQ1NTcgYmJmYWMzZTI1NzBkOWFiMjIwZGZmN2Y2MWQ5MTIyMmJiOTVhN2FlYSBsZWdhY3ktdHJ1bmsKKzQ1NTggNzQ5M2M2ODA1ZGM2ZTVjYjkzNDdiZWI2NjhlYjExMWUyYWMxMTFjZSBsZWdhY3ktdHJ1bmsKKzQ1NTkgZWE3YjJiZjBiNTIxNjFmOTZhNWE5N2MyY2E4YmU2ZDMwMGRjNTFmZCBsZWdhY3ktdHJ1bmsKKzQ1NjAgMmViYjIxMjg0ZjM0NTFhNzY5YmY1NzhmNmJmZTQ0Y2RlOGU0OTZiZCBsZWdhY3ktdHJ1bmsKKzQ1NjEgMDE4MzBkYzhkNmU1ZDM2YmZkMDFmMjJmNTY3MTJlZjIyMzllZjFkMCBsZWdhY3ktdHJ1bmsKKzQ1NjIgYWY0MWY0YTIxNjgyZWE4MjEzNjI3YWRkNDUzMjEyZTYwYzNlN2NmMiBsZWdhY3ktdHJ1bmsKKzQ1NjMgMDcwODBhMjk2MDcwN2JiYjlmMDFlZjY2MzBhOWZlYzA0OTViYzIzMyBsZWdhY3ktdHJ1bmsKKzQ1NjQgNmM0OTA1ZmZmZjAxZTliODkyMGU0ODI5YTkyOGI2NWZmY2Q3OTE5MCBsZWdhY3ktdHJ1bmsKKzQ1NjUgMzBjYmUwMjRkZjQwOWVjMGQ3ZTMyYTQzNzQ2ZDc4MzY0ZDU0MjNmYSBsZWdhY3ktdHJ1bmsKKzQ1NjYgMjY2OWVmMTRjMjA1NDE5OTBkNmRiY2VlOTllMWJjMmY0MzY3NmZkYiBsZWdhY3ktdHJ1bmsKKzQ1NjcgNzZjODYwYTE4ZDgyMzQzZmI0ZTA3NmRhZGNlNGZiYmM1MDgwZTczOCBsZWdhY3ktdHJ1bmsKKzQ1NjggNzk0N2MwZDE2Y2EwNDFlNjkxNGVjODkyMTg1MGMzOGI0MTI1MjU5ZCBsZWdhY3ktdHJ1bmsKKzQ1NjkgN2VhMzY5ZDA1YzJlZTE5NWUxMjJkNGQ3Y2ZkMGQ4NTEyMzA4ODQwMCBsZWdhY3ktdHJ1bmsKKzQ1NzAgZDczZWVkMzUzMDAxMGM0ZmQ0YzgwMmEwOTA5M2FlMGVmNGQzZjYxNiBsZWdhY3ktdHJ1bmsKKzQ1NzEgNWRmNjlmMjk0Y2NjNmY2ZDQ2NjFlODRlMzllMDYxMzJiMDcwYTc1NCBsZWdhY3ktdHJ1bmsKKzQ1NzIgYWVkYTg2NGMxMWM0NDYzOTI1ZWRkMjBhMTg2YWQxZDQ4ZTdlYmRiMyBsZWdhY3ktdHJ1bmsKKzQ1NzMgMWRhZTBkMzA2MmQyNjNiYjZjYzY4NTFlNzI4OWEwNWM3NjZhMmU3NSBsZWdhY3ktdHJ1bmsKKzQ1NzQgODRiNjFmZTQ0NTczMDQ4NDAwY2RiMWU3MTFmMDZkYWNkZjRiMzJhYSBsZWdhY3ktdHJ1bmsKKzQ1NzUgODZkOWU5MTQwNWM4NTUzODk3Yzg4NzBjNDBlY2VmMmI4Y2FmNjVkMCBsZWdhY3ktdHJ1bmsKKzQ1NzYgYmEzZmQ5NmYwNTVlZjkxOWI0ZDgwMzI2YjE2NzViYzM1MjgzODY2NyBsZWdhY3ktdHJ1bmsKKzQ1NzcgZmQ1YWI3ZTgyOGZjY2MwMTQxNTk2ODI0ZjhhNzVjYWFhMjZhN2FhNSBsZWdhY3ktdHJ1bmsKKzQ1NzggMzY4NDdiOGI1NzVkZjY1MWY1OGFlZDU4MTM2OTZlYjc2ZGY2NTI0ZiBsZWdhY3ktdHJ1bmsKKzQ1NzkgYmQwNjFkYzMwODQyZTc1MDRlZGU0ZDdjMzdmM2U4ZTE3OTc5MDVkNSBsZWdhY3ktdHJ1bmsKKzQ1ODAgYWYzNmJhZTM0M2ZjZjhkYWVmNDhhOTg1NDFlMzdjMzk2ZjI0MDhlOSBsZWdhY3ktdHJ1bmsKKzQ1ODEgNjk1NDAxNjkyYzQ2ZmI2MmM0ZThjOGRiZDdjZjkxMWMwZGNmNTVkZiBsZWdhY3ktdHJ1bmsKKzQ1ODIgOTJkYTg5MDE1MTdlM2YxNWM5OGM5MThiMmRmMjQwYTA5MWE0Y2VhNCBsZWdhY3ktdHJ1bmsKKzQ1ODMgMDUzNjBjZDYxNmFlMzg4Njc1MTA1NDVlNjk0ZGRhYjI0OWU2Yzc0YiBsZWdhY3ktdHJ1bmsKKzQ1ODQgY2EyN2MyZmUwYjhkNGM2YjU2ZTRmMDZiNjMxYTVhNmQ4YzQ3MjYzYiBsZWdhY3ktdHJ1bmsKKzQ1ODUgZmU5MjJmZWQ2YjMxZDhjODRmZjYwYWU4ZWI2NDUzMjUzMDFlYzUyOSBsZWdhY3ktdHJ1bmsKKzQ1ODYgNGRkZjU1NDQ1N2FkNWQxYjIwMWNjOWM2YWYzMjMxMWQ2MWJmOTQyYyBsZWdhY3ktdHJ1bmsKKzQ1ODcgYzE2ZDY5M2JmZTczZjUyZjQzZjgwNzgwYThmNWExZjUxMjZlNTkwYSBsZWdhY3ktdHJ1bmsKKzQ1ODggOWQ2MWM1NzQ5YmY4Mjc4MWE3YTA2MDM5NDY5ZGM4MTNhZTI4NDk3MyBsZWdhY3ktdHJ1bmsKKzQ1ODkgNGY5MGI0NzRiZWVjMzQwZjA1OWYwNTk2OGFkMGFhOTk3ZWI2NmNjMyBsZWdhY3ktdHJ1bmsKKzQ1OTAgYzU3YjVjNTBhMmQyOTU0ZjZhMGMxY2Q4YTFiNTFmOGNiMDAyM2JlZiBsZWdhY3ktdHJ1bmsKKzQ1OTEgYzkwODVmMWU5NzdmMzM4MDM0MGJiZmJjMTkxYzFiMmYxNTYzMTllZSBsZWdhY3ktdHJ1bmsKKzQ1OTIgMjNmMDQwMzE3ODI4MGFlMDdjZmIzMDg0ZmFmZDhjYzU3Y2VhYzY1MiBsZWdhY3ktdHJ1bmsKKzQ1OTMgOTRlMmNhODY1OTBhNTZkMzg3NGRjMjRiZTVkZWI3M2Y5NTNiNzgxZiBsZWdhY3ktdHJ1bmsKKzQ1OTQgMTczZGQwMDg3OWFiNjAwMGM4MmRjNjQ5OGZjOGY3MmZkZjdhOGQ0YSBsZWdhY3ktdHJ1bmsKKzQ1OTUgODQ5MjNkOTJiNTNlN2FjMWE2MzIyYTMyODBlMzQxYWU3ZDM2MTJiYyBsZWdhY3ktdHJ1bmsKKzQ1OTUgMTZlYjRjNTFlZTk3MTY5MDQ2MzQwOTk4ZTg1MGE2M2M2NTIyNWIwYSBsZWdhY3ktdHJ1bmsKKzQ1OTcgN2FlODQ3YjFiMjY5MjI4YjljYzM4NGUwYmFmZDA0YTM2NzkzYmUxYiBsZWdhY3ktdHJ1bmsKKzQ1OTggMGU2MGNkMjA3YWRiYjI0YmQ1YjNjMmI4NDRiN2MwODY3M2UwNDRhNSBsZWdhY3ktdHJ1bmsKKzQ1OTkgZTllOTNlMDczNTRiOGJjMGIzOTQwMTQ2MmE3MGE2YjliOWRiYTBmOSBsZWdhY3ktdHJ1bmsKKzQ2MDAgOWFmZGJmOTQ0YzJhMDNhNjQ5YTU3ZmUwYTMyM2NkMTIyNTFjNTYwZCBsZWdhY3ktdHJ1bmsKKzQ2MDEgODM4ZWY5NzY4ODIxMDMwMTY3ODViOTdkNDBlYjkyY2Q5ZDMwMWY5YyBsZWdhY3ktdHJ1bmsKKzQ2MDIgZjk5YTIzOTk4NzcwYmFiN2UyZjI1NjU2ZjdkMDA0YTY1YjkzOGI1MiBsZWdhY3ktdHJ1bmsKKzQ2MDMgNjA2MGQ3ZmIwN2UzNDI0NWU5NzMwYmZmZDg2MjEwN2U4ODRmNGEzNCBsZWdhY3ktdHJ1bmsKKzQ2MDQgNDQ4NDM1YmZlYWRjMGQ0NmNmNTVjNjhjOTJmNTAzZjZkOWNmNjgxMSBsZWdhY3ktdHJ1bmsKKzQ2MDUgNWZkODUyNGRkMDNhMjEwYTkzNzhiNmIzMmFjZTE3M2I4ZjAwMWM4NyBsZWdhY3ktdHJ1bmsKKzQ2MDYgMWE1MjM1MWEwMGIyNmNkMDU5YTZiYzllMmQ5NTE4ZTc2OWExZjFkYSBsZWdhY3ktdHJ1bmsKKzQ2MDcgZTU0Yjg2NTRmOTM4NGYxMjI3YmEyMTk3ZmViNWZlMTYxMWFkZGVjOCBsZWdhY3ktdHJ1bmsKKzQ2MDggMDcyOGZlYjFkMDMxYjQ4ODQyYjcxOTgzNzBhZjJjNzg2ODhhZjU0MiBsZWdhY3ktdHJ1bmsKKzQ2MDkgODQ5NzFkMDE1OTY1ZThlOGYyZjQxZjQ0NTkzZjIzMmY2OGQ2YTU0NyBsZWdhY3ktdHJ1bmsKKzQ2MTAgY2ZiYWI3OWE3OTlmNDY1MzU1MjI3MWRhNTAyMGJlMjIyMDUxNjM4NyBsZWdhY3ktdHJ1bmsKKzQ2MTEgMWUwODM4YmI4ZjIyMDhlMjkyYjMwMDM0MTYyM2VmODMyYmMyMDlmOCBsZWdhY3ktdHJ1bmsKKzQ2MTIgMjk3MjBjNWQ5ZTdlYzQyMjFmYzg3ZjFiMjIyZjgwNTMxOWJmZDcwNCBsZWdhY3ktdHJ1bmsKKzQ2MTMgYTYxOWE2MWFhZDFlYmI4Yzg4MDI0MWZjMmNlZDBmMWUwNjJjMDIyZCBsZWdhY3ktdHJ1bmsKKzQ2MTQgODk5YjRlM2RmZDRjZmY5OWNhNDBlZDcyYzA3NTM4NDUwMjQxNmUxZiBsZWdhY3ktdHJ1bmsKKzQ2MTUgZjA2MjIyZTA3Y2E3NTUzNzk1ODM2ZjdlOTQ0NDcxODVhNjkxNTg3YSBsZWdhY3ktdHJ1bmsKKzQ2MTYgYzlhZWEzNGFlNGI2OTk3MTRhZTgxM2U0NzVmNDg3NGUyYzFkYmJjMiBsZWdhY3ktdHJ1bmsKKzQ2MTcgZWUwYjNjYjM3YWY4OGNjNGM5MzY3MGExNmQxOWE4ZTNjMzhiOTgyYSBsZWdhY3ktdHJ1bmsKKzQ2MTggNDU5YmY3ZDA0ZTA1YmViODI5ZTJkNGQwMjViN2RhZjgzYzk2YjAzYyBsZWdhY3ktdHJ1bmsKKzQ2MTkgZjQ5YjYzNzI0OTJmMjhiYjczYjQxNTM3NmQ3ZTNiNGQyMWI4NDAwZCBsZWdhY3ktdHJ1bmsKKzQ2MjAgN2E2YjU3ZmViYWM0NmMxMDYyMWNkY2RkNzMzOTIxOGQ0YzliYmJmZSBsZWdhY3ktdHJ1bmsKKzQ2MjEgZDkwYzkxNGM1NzdkMjBiNDIxZjEwZTcyYTkwNzM5NWU1OGIzOTZkZSBsZWdhY3ktdHJ1bmsKKzQ2MjIgOWE5ZjNmNWQ2Zjg2MDMyMjEyZjAwNzNhNTI5OTBkOWYxZTE4MDQwYyBsZWdhY3ktdHJ1bmsKKzQ2MjMgOTJjZDg1NDcwYTc2OWRmNTc3ZDgwY2E2MjRlNmEwNzU4ZGVkMTA1OSBsZWdhY3ktdHJ1bmsKKzQ2MjMgYjQ1YzY4ODc1NmQwNGZiODRkNGEwZDUxOGZjM2Q3ZTNjYjI1ZmE4ZCBsZWdhY3ktdHJ1bmsKKzQ2MjUgN2ZmNmQ5OTlmMDU5YTA4YzhjODJiODNjMDUyZDUxNGY2Y2JlNjUxOCBsZWdhY3ktdHJ1bmsKKzQ2MjYgOGFkY2I4MDhkOGRkZDg0Mjk1NTQ4MWZkYzI3ZmY2MjIxZWVmMmQ2MSBsZWdhY3ktdHJ1bmsKKzQ2MjcgNmYzNWExYWQxYWNjODMzNTkwZjk4MjU3N2M1MGViZDYwYmFlOWRiNiBsZWdhY3ktdHJ1bmsKKzQ2MjggNWVlZDgzMjE2ZTZjNTViODU2OGE5OWY1NjQ3Y2FjOTBlMWQ5MTIxMCBsZWdhY3ktdHJ1bmsKKzQ2MjkgMDQ0NTcyNWZlNWRlNGNhZWFiZjQ5MzhkNTRmZmMwNmYwMTBkNjc4YyBsZWdhY3ktdHJ1bmsKKzQ2MzAgMWU5ZTc0OTQ0YmI1MWY0OGY4NjI5MTliYTY4OTBjMTI3MWJjZDY2MCBsZWdhY3ktdHJ1bmsKKzQ2MzEgOWY1MDBhMzRjMzU1NDE4MTFjNTY0YTg5MmVkMjZmNzg2ZGRmNDdjZiBsZWdhY3ktdHJ1bmsKKzQ2MzIgNjVkODdmMDZmMDhmYzMwYjgzYWMwYTM3MTA0ZDY2YjBjNDA0Njk0OCBsZWdhY3ktdHJ1bmsKKzQ2MzMgOGRhMDNkZWNlZjU5M2RkZTBlNDRhYjEyN2E2YzNhNGNjZGMwYjk0OCBsZWdhY3ktdHJ1bmsKKzQ2MzQgOWI0NTFjODRhN2JmOTMwMTEwMTI2Mjg1OTRmMmE3YjQ0YTZmMjA3OSBsZWdhY3ktdHJ1bmsKKzQ2MzUgMDA0ODAyNGI3ZWY4NGNkOWMwMGU1NzhkOTc2MjBjMTUxNTllYzI1ZCBsZWdhY3ktdHJ1bmsKKzQ2MzYgZGZhYmIxM2JjZTcwZmMxODFiMjZjMDJiNDE5Y2ZhMDU1MDk5MTg4MiBsZWdhY3ktdHJ1bmsKKzQ2MzcgNjJiZGRlZDVmMDBhMjMxNTFjNDgzOTZmMjA3MWQ1MjE1YjdhYzRjNSBsZWdhY3ktdHJ1bmsKKzQ2MzggODdmNGQ2ZDJlOWM4OWE4NGU5OTAyMTZjYTY1NzViODgxNWY5MjczZSBsZWdhY3ktdHJ1bmsKKzQ2MzkgOWM4YjQzMjM4MDhiYzBmOTkxMzNkOWIyN2UyYjE0NWU5NzljZDEyMyBsZWdhY3ktdHJ1bmsKKzQ2NDAgOTVjYjUyYjg1Zjc4NjdmYjQ3YzY4Nzk5NDI0NWJjN2M1ZDViOWE1MiBsZWdhY3ktdHJ1bmsKKzQ2NDEgOTY4ZTI0ODRkOTRkYTM4MmQ0OWM3MzNjMDNjNGUyOTkzZDExNzQ0NSBsZWdhY3ktdHJ1bmsKKzQ2NDIgNjQ2MWZmMGM0YmVlNmYzMDU2MmExNTQ4MzM4N2M1ZGUxNzZjNWYxOSBsZWdhY3ktdHJ1bmsKKzQ2NDMgZDU5NTY4MzgxNDQ3ZDBlMzI5OTVmNzVhNzNkMjBhMjg1ODhkODM0YiBsZWdhY3ktdHJ1bmsKKzQ2NDQgYjQwZTEwYmRhMjMxOTFkMmQ3NmI3ODgzNDZkNGQxMjJhNDg2YjA2MiBsZWdhY3ktdHJ1bmsKKzQ2NDUgZjQ4OTUxZGFiYTRmZmMzZTc1NjI1ZjM0YTRkZjNlNjNhYWZlZWJlYSBsZWdhY3ktdHJ1bmsKKzQ2NDYgZjc4ZmJjY2FmNThjYzY2ZDFiODA2NjM1MTkyYjUxZWIyNjA3MmVlMSBsZWdhY3ktdHJ1bmsKKzQ2NDcgMWMwMTJkODJhOTc1OGMyMmIzNzQ1Nzk3Yjc0ZWZkYTk2ZThiMTMyNCBsZWdhY3ktdHJ1bmsKKzQ2NDggOGU0NzZjYTNhN2EzZjJmYWY2ZjFmNjUxN2Q2YmJiODg3NDA2OTY0NyBsZWdhY3ktdHJ1bmsKKzQ2NDkgY2NjMjc5ZmY5MzVkMGY1NGE2YmM5ODE1ZmUxNTEyZDUwNTI1MmJlNyBsZWdhY3ktdHJ1bmsKKzQ2NTAgNWU1NjhiYWNmYmU5OWJhNjJhODJhMzhhYzUyNzQyNWJjZjc4MmRmYyBsZWdhY3ktdHJ1bmsKKzQ2NTEgOTFhNDNlYTExYmEzNTk0YzkwMmMxZWJlNjU2NGIxMDI2MTBhZTk4YyBsZWdhY3ktdHJ1bmsKKzQ2NTIgMjc1NTdlNzBhOGYwMjliY2Q3OTNiNzJjNmFhMDk3ZDMyZTA4MjMyMSBsZWdhY3ktdHJ1bmsKKzQ2NTMgZjQ2NzFiNjgxYWI5OGU3NjIwZmQ5NzI5YzQzNjE4MGU3MDljNDYwOCBsZWdhY3ktdHJ1bmsKKzQ2NTQgNWFlOTIyY2ZlNDA0OTM0N2JiMDc0MDNkMDBlNTZkYmVhYmRmZDE4ZSBsZWdhY3ktdHJ1bmsKKzQ2NTUgOGYxZGFmZmU3OTliY2YzNGUwN2FmYmM5OGQxMzc3MDg4MzQ2ZjRjYiBsZWdhY3ktdHJ1bmsKKzQ2NTYgOTg5NGU1NTQ2OGVjNjBmNzVhMmFmMDA2MzNkZjgzNDAwMzQ5NDU4ZCBsZWdhY3ktdHJ1bmsKKzQ2NTcgY2RiMzczZjY1YmYzODBkYmQyOTQ3MmQ3ODgxNGIyZTAwZTAwY2I0ZSBsZWdhY3ktdHJ1bmsKKzQ2NTggMDJkZDYzZDNmZTliMzEzNzBlZTU3MzY2NGJlMmEyMTE5NWE0NDQ1ZiBsZWdhY3ktdHJ1bmsKKzQ2NTkgNTI3ODg5YWU4NDUwMzkwOTc3ZDNlODk1MjFiNGMyZGNlYjkxMzQxNSBsZWdhY3ktdHJ1bmsKKzQ2NjAgMGUzMDI3NzFlZTVhMmJmYzdiZWUxOWMyODdmY2Y5YjNmODM2MjViZiBsZWdhY3ktdHJ1bmsKKzQ2NjEgMzNlYTljYzdkN2JhZTcyM2M4N2EyNzIyNmQ4MjM0MDNjNDg0YTg5MSBsZWdhY3ktdHJ1bmsKKzQ2NjIgYzY4YTAxMTNiNzVhMjdmZWEzM2JkMzY0MGNmYzUyMGYxYTUyYWQ3ZiBsZWdhY3ktdHJ1bmsKKzQ2NjMgNDA1M2Q0Y2I1MGUwZDcwMTc0NmE3NTc0OWE2N2NhMDhiN2NmMDI4OCBsZWdhY3ktdHJ1bmsKKzQ2NjQgZTczNGM3MjM1NzI3ZTc0YjU0YWQ3OWIzMGNmY2VmMmQzNWMyNDEwYyBsZWdhY3ktdHJ1bmsKKzQ2NjUgZWIzZTYxZGIwZGRhOWM1YWY0NTU4OWNhMjIxZTM4MWU2YjE1ZjNjNyBsZWdhY3ktdHJ1bmsKKzQ2NjYgNjRlYjQ4N2NhNDY1ZDZiNmEyODYwNWU5OThjODc1MWNhYTE3NzFkZiBsZWdhY3ktdHJ1bmsKKzQ2NjcgOTM5NzkxZjIxOWE2M2VkODU2MWVjNmJiNzU2YzRlNzdmNGU5YWY1OSBsZWdhY3ktdHJ1bmsKKzQ2NjggMjcyMjI5MzQ4ZmUyYjc3YTE1YzRlMzE3NWE3NTY5MTQxZWVkODE1YSBsZWdhY3ktdHJ1bmsKKzQ2NjkgYTNiZDYxNjMyZjE0NWVkOTg4YTFjMmFiN2Q1OWEwYzUwNGM3OTc1ZCBsZWdhY3ktdHJ1bmsKKzQ2NzAgYWJlZDM2OGQ2OGVmMTg5MGM2NzI1Y2Q5MWViOWYxZjJkMmVlZmYxOSBsZWdhY3ktdHJ1bmsKKzQ2NzEgNzZkNDNjMDMzODQ4MTBiNTI3MTJhYmVkYzZiNTllYTcxZjljZDE5NyBsZWdhY3ktdHJ1bmsKKzQ2NzIgY2ZlYWE1MDgyYmE4MzFiNjIxYTAzNGI3NzI5M2I4NGViN2MzMjI4ZiBsZWdhY3ktdHJ1bmsKKzQ2NzMgMDYxMjEzMmUwMDE4NTdlZTRhOGM0ZWEwZjkxZjM1NmM0YzMxNmVjNSBsZWdhY3ktdHJ1bmsKKzQ2NzQgOWJjM2E1YmFhNjgwZTM4ZDQwNWNjYzcxOThlOGQ0ODJlNmQwNTkzNiBsZWdhY3ktdHJ1bmsKKzQ2NzUgNzRhMGE2MTIxYWY3MWI2YWM3MzQ5NjVhZGNiZGE3MDVjOGY4YTE4ZSBsZWdhY3ktdHJ1bmsKKzQ2NzYgYmJiNTZkYzNiNTI2YjU1MmI1M2Y2OWU3MmNiMmRjMDNjNzBmZmJkOCBsZWdhY3ktdHJ1bmsKKzQ2NzcgYWEzMzY1ODE1YzIwZDc1YjIwMTMyM2VlNjRlMjEwNzM0ZmY1ZDdiNCBsZWdhY3ktdHJ1bmsKKzQ2NzggMzI0MzVkMzNmMzRhNmY0NGM4ZWNmYjU0MDhkNGEyMzhkNjg2N2U5YiBsZWdhY3ktdHJ1bmsKKzQ2NzkgNDk3MTk3ZjM1NzNjMTBiOTRlM2UxMDhjNmU5Y2NkZmUyNTE4NzNkZSBsZWdhY3ktdHJ1bmsKKzQ2ODAgYzJkMThiNTgyMzJlZGVmMTY1YjMxNTBlNjIwMzQwOTk1OTAyNjJhMyBsZWdhY3ktdHJ1bmsKKzQ2ODEgZTUzZDAxOWU3ZDQ3NjEyZDJlNjQ2ZmY3ODNmNTg5OGJkNGZiNjRjZSBsZWdhY3ktdHJ1bmsKKzQ2ODIgOTU4OGMyMzhlNjYwOWMxMzEyNDEyYjViMjEzZGFmYTYzZmNhMGJhMCBsZWdhY3ktdHJ1bmsKKzQ2ODMgNGJjZjFiOTZlZmVjNGYxMTZiMzMwOTQwZjM3MTNhMmZjOTc2Mjg4MiBsZWdhY3ktdHJ1bmsKKzQ2ODQgOTJlNmY1ZDhiZTgyYWI5MTQ0OGJjNjczZmQ0ZThmZjRkNzU2YzU4ZCBsZWdhY3ktdHJ1bmsKKzQ2ODUgMWU4YjM0N2EwNTZjZjM2NjZlZmU1MzE0NmFlMzcyODNkYzg3MjRhZiBsZWdhY3ktdHJ1bmsKKzQ2ODYgOGQ1ZTM2YjM3YTQxMzIyOWZhOTFlMTE3ZDc4YTFmNWU0NzhhOTcyNSBsZWdhY3ktdHJ1bmsKKzQ2ODcgMDEwMzc1MzJjMDg2MGExYmM5OTQxMTM3YTI0ZDlkN2NmZTNiYjJiOCBsZWdhY3ktdHJ1bmsKKzQ2ODggN2I2NTQwNDk2ZjU1NGJiNmU1NzRmMWEzMmU2NTAwZmI2ZWRjMGIzMyBsZWdhY3ktdHJ1bmsKKzQ2ODkgMDFlZDRjZDIxNTc2Y2JiNDUwYzhiODE2ZWY3MTBjZWE3ZDQ0ZmNiNiBsZWdhY3ktdHJ1bmsKKzQ2OTAgMWI2NjI0OTc0MjZiNTNhMTBlMmU4OGYwMDgzODg2OWNkZDY1M2NmMyBsZWdhY3ktdHJ1bmsKKzQ2OTEgMGIwYjE4ZDY1NWQyZTljMDVlNGU1N2ZlMmNmZjhkNmE4MWUyMWM1NiBsZWdhY3ktdHJ1bmsKKzQ2OTIgYjVkY2JhN2I3MzJkMDNiMGRiZGMwMDA1MWNiODAxZTc3ZjEzZTcwNSBsZWdhY3ktdHJ1bmsKKzQ2OTMgNDQyYmFlOGZjZmRjNjUxNGYxOWQxYWNmZjhiYTYxMTE1ZGYyZmIwOCBsZWdhY3ktdHJ1bmsKKzQ2OTQgOTRiODQ1MzVjMzRlMTFkOGVhMjViYWJkYmMwYmNiYmUxNDYxYzU4NyBsZWdhY3ktdHJ1bmsKKzQ2OTUgZmVmYWUzN2MwNTNjZmQzYmNlZjNkOTM5YThmM2ZkNzU2Yjc4YThiOCBsZWdhY3ktdHJ1bmsKKzQ2OTYgZDNiNWJlMGM4NzJmMzNiMWVlOTEwODYzNDRhZDJjNzBjNjIwMjFhYiBsZWdhY3ktdHJ1bmsKKzQ2OTcgMjgzYThlYjJlMzE3Y2I3ZDdiMTE1YWM4YjA0YTJmZmU5ZjYzNGJlZiBsZWdhY3ktdHJ1bmsKKzQ2OTggNzJlMDVjNjFjMmZlNTkzMzc3ZWE3M2NiOGViNGI1Yzg3YjIwNjI1NiBsZWdhY3ktdHJ1bmsKKzQ2OTkgN2ZhNDhhYjRiZTBmNGJjM2Y1MTNhNTA4NGMxOWI2ZmYzYTAyZjYwMCBsZWdhY3ktdHJ1bmsKKzQ3MDAgMWFiMzViNmY2MzhhMjY2YjcxNzY3NzVmNDQwOGNkM2U5ZGI2YWJjNSBsZWdhY3ktdHJ1bmsKKzQ3MDEgOGFkMTM2MzI4N2FhOGJjOTgzNWQyYjQ1MTI5OTU2NmY0NTJiMTNjMyBsZWdhY3ktdHJ1bmsKKzQ3MDIgNDM4ZjUzZTdjZmQxNGU5NWVhNzJkODlkMGM3YmM0OWY1YTU5YzIwOCBsZWdhY3ktdHJ1bmsKKzQ3MDMgYTc2YTc5Zjg5NmNmNWZlMjExM2JiOWY2NmFjNGRkNjAyMmQ1M2Q3MSBsZWdhY3ktdHJ1bmsKKzQ3MDQgM2JlZjFhZmY4NzFiYzM0OTIwNzA4NTk3NDUxNWEzNTZkMWQ1N2MwNSBsZWdhY3ktdHJ1bmsKKzQ3MDUgZTBhMzI0MmQ1YWU3OWQxNjIwYTIyNjI0MmE4YjNjYWExMzk0ZWI5MyBsZWdhY3ktdHJ1bmsKKzQ3MDYgZTlkMTFmOWI4MmUyYjU4MWE5NmI3MzI1ZTIzY2ZkMDc3YTM4OTQ5MyBsZWdhY3ktdHJ1bmsKKzQ3MDcgYzIzZDA5MjIxNWQyYzNlNWY4MDMyMjIyMjVkZjcxYTZjM2E3NjY3NCBsZWdhY3ktdHJ1bmsKKzQ3MDggNjdlOGVmNjk4YTQyZmYyNzIwYWY3ODE1MGVjZDk3ZDBjMzM0OGQyMCBsZWdhY3ktdHJ1bmsKKzQ3MDkgMzgyZWRlZjJkNmQ3MGQzN2MzNDI4OWU4Yjc0MTEzODI3ZjI2YjhlOCBsZWdhY3ktdHJ1bmsKKzQ3MTAgZDA5MWIyNDZhM2E3YTViYjJjMTQxNWRmYTIxM2NmMTlmZTY0ZjY1YiBsZWdhY3ktdHJ1bmsKKzQ3MTEgZWU0Yzk1NGNkNWRmNTJlOWM0MDczOTdkNGRiY2QxY2ExMDQyNDQzNSBsZWdhY3ktdHJ1bmsKKzQ3MTIgYjFhNmE4MWFmMWNmZjQ3ZDM5YTUwNDhhMThjYTk4MTU1OGY1NzI3NCBsZWdhY3ktdHJ1bmsKKzQ3MTMgODNkMDY0MDRmNmUxMTQ0MmNkMzEwZTY5Y2FiYWZlN2E3ZjI2MGFiYSBsZWdhY3ktdHJ1bmsKKzQ3MTQgYTgxYjZkYjZkMzNjOTRlOGQwOTQ4NjlhMjExMWI4NzA4OThiNzIwMCBsZWdhY3ktdHJ1bmsKKzQ3MTUgNjQ1ZTk2MzQzZjg5ZmVmOGRiOThmNTNkNmE4OGYzNzRmZjBkNWM3YyBsZWdhY3ktdHJ1bmsKKzQ3MTYgMDNiZDc5NDMyZjA2OWM2MzJhZTVhZTg0MjFmNzI0YzEzZWY3MWRhMCBsZWdhY3ktdHJ1bmsKKzQ3MTcgNzg5NWE5NzMxM2U1ZjRjZmFkMjRjNWE2YmE1NmU4NDY0NTM5ZTIwZSBsZWdhY3ktdHJ1bmsKKzQ3MTggODVhYTJlNGQwMTIzYzUzYzVlNjhlODM0YTQ2ZmM3MGI4NTE5NWFjYSBsZWdhY3ktdHJ1bmsKKzQ3MTkgNGJjYzkyOTE2ZmFiYjJmNmM1MWU0ZTExNTE4ZjY2N2VkYWY3ZWNmOSBsZWdhY3ktdHJ1bmsKKzQ3MjAgM2E4M2MzY2VmNGIyYjVjODRhOTM2N2ZlMmZiMDBkMzZiOTQzMWVhNSBsZWdhY3ktdHJ1bmsKKzQ3MjEgNzQxMWI2YTA2OTIwY2Q2ZDRiZTIxMDZkYWYxNGZjMjM4NWQzYmM4MCBsZWdhY3ktdHJ1bmsKKzQ3MjIgYWM2ZjY5YjFlOTkzMDcxNjIwM2E3YTU0YTEyNmZiOGU3ODYyMDVlYiBsZWdhY3ktdHJ1bmsKKzQ3MjMgYThjNmRhM2JkMzA1NmRkNTZmOWZlMDM4Y2NjMTRiMzhkNWFiMTliNCBsZWdhY3ktdHJ1bmsKKzQ3MjQgM2E2NThlZWMxZjAyZTE0ODVlNjgzM2Q2ZjBlYmQxYzhiN2RhYTZlMSBsZWdhY3ktdHJ1bmsKKzQ3MjUgOGExMjQ0ZTdjYjNiZDJhNDgzY2YzZjY5YTUwZjBlYzNiODQ3MzMyMyBsZWdhY3ktdHJ1bmsKKzQ3MjYgNThhYTdmM2IxNjkyYmY1Nzk4Y2VhMTY2ZGUzMjAxOWRhZjhjM2JhYyBsZWdhY3ktdHJ1bmsKKzQ3MjcgMDc2NWQwYmQ4OGQ2ZGE1YWZmMDQxODY3MjQyNDBmMzM2NDg4NDQ1MiBsZWdhY3ktdHJ1bmsKKzQ3MjggOTA4ODBiZDA5MjIxZGVjZDNhYmM4ZmY1M2U3Y2ZmZjYzOTg3MmY4OCBsZWdhY3ktdHJ1bmsKKzQ3MjkgZTViOWY2NDQwNTNlOWUwYzRjZDFiZGQ5MTAzOWVlOTY5OTcxOTQxOSBsZWdhY3ktdHJ1bmsKKzQ3MzAgNjZkNmQxM2RmNGY4YTk4MjA0ZWM0YmE0M2JkYjRiMzM3MzJlZTc1NyBsZWdhY3ktdHJ1bmsKKzQ3MzEgZGY3ZTI2YjVjOTE4OWJhNDNhMGEwZGY0MmQ4MjNiNGE5MGVkOWJmOSBsZWdhY3ktdHJ1bmsKKzQ3MzIgNjU2NDQ3NjYxNThhZThlNGNhOTczMmE1NzMyNjk2ZjUzYjViNmYyYSBsZWdhY3ktdHJ1bmsKKzQ3MzMgNjE4NzAxY2RmNjAwMDEwNjAyZDlkYmE2OTQyNjdhM2QyNWJhNTZmMiBsZWdhY3ktdHJ1bmsKKzQ3MzQgNjUwY2I2N2Q3NjU5ODQyZGVlOGRjYTk5YmM1NTVmZmE5NTcyNWViYSBsZWdhY3ktdHJ1bmsKKzQ3MzUgZWVhYWY4NzVmN2I2ODEzOTczZWU3ZGMwZjFkZjc1MzYzZjJkODZiMiBsZWdhY3ktdHJ1bmsKKzQ3MzYgYjAzNGI0ZWEyYjM5OTAyNmViY2ViNTRkYjk5MmJiMWRmMDhhYTBjYyBsZWdhY3ktdHJ1bmsKKzQ3MzcgNzg1OWQzYWFiMWI0MDUxOWQ4OTEzYWIyMjI3NTJmMWQ1NGU2YzJkZCBsZWdhY3ktdHJ1bmsKKzQ3MzggNzFjMTFhNmU0YmMwMGYyYjc5YzIxOWExMDZiMjE0ODA1NDcxODA0OCBsZWdhY3ktdHJ1bmsKKzQ3MzkgNWU2YzBjZGFhN2MxYmJjY2RjMmQ2ZDYxMDJlOTBmMjg5MWMwZjJiZiBsZWdhY3ktdHJ1bmsKKzQ3NDAgNTU0NmY0YTZlM2MzNGZkMmUzMTk3ZjU3YmNmMjJlMjYwMjgxMjRhMSBsZWdhY3ktdHJ1bmsKKzQ3NDEgNTQwZjg0NDRlZjhhODczMDA5MzQxN2NkZWFmM2MyYWY4Nzk1NmQ0OCBsZWdhY3ktdHJ1bmsKKzQ3NDIgYjRjYWFjMTQyOGQwZGE3ZWYwOTk5MDIwYTcwMGVlZGUyOWU1Y2ZlZiBsZWdhY3ktdHJ1bmsKKzQ3NDMgMzE5NWRiNjY4OWZkNjEzZWVhYjE2YjY4YjZlZDA4MWQxODQ2OGQxYSBsZWdhY3ktdHJ1bmsKKzQ3NDQgZjVhNmU2ZWU1MjljMDdiYTc1YzU2ODRkMDU1YzM2ZjVjZmRkYmQ5OCBsZWdhY3ktdHJ1bmsKKzQ3NDUgYWM4YTIyNWIwNTFiNzU3NzIyMTdiNGYwZTQ5MzFlMDM1ODZmN2IyYSBsZWdhY3ktdHJ1bmsKKzQ3NDYgMDFhOTU0MTI0NTc3MjRmYmQyMWFhNzAxNjg2OThmMDE2MzYxMjE4NSBsZWdhY3ktdHJ1bmsKKzQ3NDcgYTI0MTQ2MjQxOTkxM2I3ODUxYTA3ZWE1NzhiMTNhOWY4NWRhM2JiMiBsZWdhY3ktdHJ1bmsKKzQ3NDggNjI2M2UyZmQ5Mzk4ODgxMzk4ODE1NGYzYmIxNGZlN2JmOGYyYWEzMSBsZWdhY3ktdHJ1bmsKKzQ3NDkgM2Q2YzlhNDdlYTQ0NWE1M2ZiMjM3MWI2ZGIwMGY5NWQyZjkzMTVmNiBsZWdhY3ktdHJ1bmsKKzQ3NTAgZjE3ZDZlNmI0MGRhYjE0YzVhY2IxNTI5M2Y2OTgyNTQ3NGFhOGY1YSBsZWdhY3ktdHJ1bmsKKzQ3NTEgOTcxN2Y2YThmNWZhZmU5ZWJjZjJmNjhkZTc0Mjc4ZmYyZTA4NmUxOSBsZWdhY3ktdHJ1bmsKKzQ3NTIgZmU4ZGI3OGYzMTFjOTZjZWQ2OGNkODc5NTNmODZjZTM0ZTU1MGJiOSBsZWdhY3ktdHJ1bmsKKzQ3NTMgOTkwMDk5ZWQ3ODEwNTFkNTVlNGMwMmYxMzMxYWY0YTAyYzc2NWU0NyBsZWdhY3ktdHJ1bmsKKzQ3NTQgZDIwNDlhMWQzY2M1Y2YxY2QyYWU2NThjMWRlNDM5MmEyZTMzN2RhYyBsZWdhY3ktdHJ1bmsKKzQ3NTUgYWRhYjY2ZmFjMzBlOTdlYzc4NjZmZmUwM2UzNzAzMzU4ZWZlYWY2YSBsZWdhY3ktdHJ1bmsKKzQ3NTYgNmEwNDI1NmVhMDg3N2MwNzRkMmE5Mzg4YzQ2M2ZmM2M5MmVmMjhkYSBsZWdhY3ktdHJ1bmsKKzQ3NTcgNTA1ZmM0NzhmZjA4NTE0ZTUyM2RhNjE4ZDRmNTUzZTE5NzY4MWRiMSBsZWdhY3ktdHJ1bmsKKzQ3NTggMTcwYjk5ODYyZDA5NWQ5NjM4NTkzMWExYmIzZGZjMTQ1OWI4NGZlZCBsZWdhY3ktdHJ1bmsKKzQ3NTkgNjVhNjhjNTFlOWYyYTcwZmYzNmZmY2QwOTZlM2Q5MDNhZWNhZmQzNyBsZWdhY3ktdHJ1bmsKKzQ3NjAgMDhiNDU3ZDZiNTE2ZWRmNDU2ZmY3NjM2MDdhMjA0ODVhMGE3ZTRjZCBsZWdhY3ktdHJ1bmsKKzQ3NjEgNWFlZTJjNWQ4ZGZmY2FlYTNlODZhNzc4ZDA3YmZhYTRhNmJjNjlhYyBsZWdhY3ktdHJ1bmsKKzQ3NjIgMTRiMTI2ZDBiNWJlMzRiYzk3YjEyZDYyMjk4MDllZGVmYWRmMDM3NCBsZWdhY3ktdHJ1bmsKKzQ3NjMgNTZjYTY3ZGRlYzg1OGI1NmQwZjAwMTdmZjJiYzFmNmE0ODE5ODdkNyBsZWdhY3ktdHJ1bmsKKzQ3NjQgMDc5MTNmYjhmOTJmMDQ5OTM5MGI3YWIxMjkzN2QyMDVkNTM1OWM4NCBsZWdhY3ktdHJ1bmsKKzQ3NjUgZmM2ZTk2MjIxMDg4YjA4MjM1N2FkMDhiODc4MmM0Njc3YzA2YjllMiBsZWdhY3ktdHJ1bmsKKzQ3NjYgNDBhZWM0OGNkMWUyMTQ3ZDhmOWFmMDZiMWNiMGRkMDBmYWNlNDNiMyBsZWdhY3ktdHJ1bmsKKzQ3NjcgZmY3MmE1ZjlhNGVlMTI0YWEwZDg4YTkxMzBiZGI4NjU0OTZlODFmYyBsZWdhY3ktdHJ1bmsKKzQ3NjggNTE1ZTFkMDMzOTRhZDg2NjllYzRkOTk4Mzg0ZGYwNzkyNjA5NDc3MyBsZWdhY3ktdHJ1bmsKKzQ3NjkgMTQyNTYxNzUxNGFjY2Y4YWEzMGMxNWM1NTMwNTA2ZmU4ODIxZmUwZCBsZWdhY3ktdHJ1bmsKKzQ3NzAgZWQ4MjFhOTliYTM5MjM5NTA3YzAwY2E1ZDdkZTczNTg4YzBjNTEzMCBsZWdhY3ktdHJ1bmsKKzQ3NzEgMWNlMDdmNjQ4NjJlOWY1ZjgwYzY1NmU2OGYwMTU3YzYzZTg2ZWQ5NSBsZWdhY3ktdHJ1bmsKKzQ3NzIgOTllN2FjMjJiZDJlMmQ1MTg4YzBkZGMyMjgyMGQ2MTdhYWM2ZjA4MiBsZWdhY3ktdHJ1bmsKKzQ3NzMgMWU3MjA3MTI4MTY3ODhjNmNlZDhlOTU4Zjk3Nzc2NGU0NWE4YTNiYSBsZWdhY3ktdHJ1bmsKKzQ3NzQgNWY3MDU4ZDgxNmNmOTFmMjUzMzQwZDRkY2QwYmY2YjlkZjZjN2YzZCBsZWdhY3ktdHJ1bmsKKzQ3NzUgMzE2MWU3Y2YyMDU0ZjczNmY4YzI4YzE2Y2QzYjlhYzFkZmQ3ZDliOCBsZWdhY3ktdHJ1bmsKKzQ3NzYgZDNlMmY5ODhmMWFmMGUxNDgwNWM1NjE1ZmIzOGM0NDAxNTc5ZWQwYiBsZWdhY3ktdHJ1bmsKKzQ3NzcgM2RmZWY2N2UwZGVkOTBlN2QxMTI4YTNmYzJhMDI0MjBhNWFhMmYzMCBsZWdhY3ktdHJ1bmsKKzQ3NzggZmFhZWNlN2NjZDZlNzFiMTVkNDgwMzcyMDI1MjM4ZGI2MGE0YWNjMSBsZWdhY3ktdHJ1bmsKKzQ3NzkgN2JkZTRiMWRmNDk0MDk3ZjdhYTE5OTY1NzRiNjNlZmY4ODdlYmVkMCBsZWdhY3ktdHJ1bmsKKzQ3ODAgZThkMjA3NjU4YTA0NTJiMWQ1OTI3NzNkM2VlODRiNWMwOGFkYjZmOSBsZWdhY3ktdHJ1bmsKKzQ3ODEgNDNmOWU3NTQ5YzcwZTZlODM3ZDBlMGE2NjZhZDI0MDZmNGUzNmIzYiBsZWdhY3ktdHJ1bmsKKzQ3ODIgM2VkZWM4MjExYTM2YWQ1NzE5M2U5ZDg4MTlmNzU5MDAwZjJlMjlmZiBsZWdhY3ktdHJ1bmsKKzQ3ODMgMWIyNjJkMTkwYTRhNDgxMDk4M2NjM2Q2NjViNTU5NDQ5MzM5OWMxOSBsZWdhY3ktdHJ1bmsKKzQ3ODQgODQ1NjBmNGIyOWVmMDlhMjA5Y2RjYzc4OGQ0Zjk2NWYzZWFlMzcyMSBsZWdhY3ktdHJ1bmsKKzQ3ODUgMjQyZGQ1ZWQzYjA4NWVlZTJmNDI2NzJiYTY1MDQ5NTIyMjZhMjk5ZSBsZWdhY3ktdHJ1bmsKKzQ3ODYgMzJlN2QyNjk2ZDc5MWM2OWVjOTlhYjExMjU2MTdlOGY0Yzc4YWUyNiBsZWdhY3ktdHJ1bmsKKzQ3ODcgNjQ2OGZkMDI1MWQyOTY4ZTYzMTE4NmZhOTQ2YTUwNGE2MGFmZDM2YSBsZWdhY3ktdHJ1bmsKKzQ3ODggZDhiNGM3ZGI3N2FlNmJmZjhiMjVlYTI3OTgzYWEyNTA0Njk1NTIyZCBsZWdhY3ktdHJ1bmsKKzQ3ODkgZTExZTZiMzU4NTMxM2FhOTE5ZDdhNGUyZjgxMzQ1Nzk3ZmZmNjMzNSBsZWdhY3ktdHJ1bmsKKzQ3OTAgYjIyNDExNzdiY2NjNjI3NzMzMmU4YTVlOTU3ZjhjYjg3NmJmMzQwMyBqYXIKKzQ3ODkgOWU4MmRhZjc2MDViYWQ3OTc2YTlhYmM5OTdjYjVlMGFiZTQzNDA3OCBsZWdhY3ktdHJ1bmsKKzQ3OTIgNzFlNjA4NzFjNjgxY2U5MTQxOTc0ZWZhYzNlMGIzM2M5ZmUzMjg4YSBsZWdhY3ktdHJ1bmsKKzQ3OTMgNGMyZjE0NTIxMjVkNTlkMDc1YzZmZTdkYWY5MDE0Y2JkZjE3OGYzNiBsZWdhY3ktdHJ1bmsKKzQ3OTQgNDEyNzg5M2E4N2FkMDVhMDIyZWU3MGI1OGFkODFjNjM3ZmJmOWU2NSBsZWdhY3ktdHJ1bmsKKzQ3OTUgMjFmMGQ1ZjE4Y2RhZTYxMDhmNWZjNWZkMjU0NTE5ODJkNjAxOWY5ZiBsZWdhY3ktdHJ1bmsKKzQ3OTYgNjNmYTM4N2MwMmZlYmNiMDhiMDU0YTBlZTIwMzNlYjAzYTg3NzA2NSBsZWdhY3ktdHJ1bmsKKzQ3OTcgNjcwZTUwYWUzODlkNTRjYzMyMTAxY2ZiNGQ1YWQ2OGY2MDhmMDU1NiBsZWdhY3ktdHJ1bmsKKzQ3OTggNGI2MTdmZWU0MjdkMzYzOGM4N2MwZDYyZDhjOWY1MzNiMzhiOWI3NyBsZWdhY3ktdHJ1bmsKKzQ3OTkgZWQwYWE0YTVkMTA2YjljMmI3YjJlZDNkODUwZTQ4NGJkNzA2ODQ2MyBqYXIKKzQ4MDAgMjc5ZDUxYTE4YWU0YjRlOGRjZjAwNzc2MGE5Nzc4ZDhiZmVmODhiMyBsZWdhY3ktdHJ1bmsKKzQ4MDEgOTU1MmVkYjRlYWJmYWMzNDFhNmQzZTRmMTAxM2ZhOTQ4YzAxNzcwZiBsZWdhY3ktdHJ1bmsKKzQ4MDIgZjA5ZDMyNTJhMzhiMjEzZWVlZDJjNzc2YTE4YmYyN2EyMjYzODNmOCBsZWdhY3ktdHJ1bmsKKzQ4MDMgZDA1Njg1OTkzNDc2ZDRjYjcwZjViMzRhZGRmMTExODAxMGYzOWYwNiBsZWdhY3ktdHJ1bmsKKzQ4MDQgZWQ0ODY0NjFkZWY2NzZmMDYxOTlhY2FmYmFkYmZjYzFkZWExYWU3MyBsZWdhY3ktdHJ1bmsKKzQ4MDUgZDY1YzQ4NWUwYWQ4MjM2MDAzN2Y4YWI1NmM0Mzg5OTFlNWRkYWQ4NiBsZWdhY3ktdHJ1bmsKKzQ4MDYgYTIwNTQ5MzM3NzViMDAxNGQ2MDVmZGUzZjdmMTRhODVlZTM4MTNmZSBsZWdhY3ktdHJ1bmsKKzQ4MDcgODVmYTAyYjg1ZDdkMTMwYTE0YTkxZDZiYzJlNWY1YzRlNTYwMWUwMCBsZWdhY3ktdHJ1bmsKKzQ4MDggMjZiMWIxNWZjOGVjMzc1NmE1NjNlNGU3MWU3YmJjN2E4MWVhNGZiYyBsZWdhY3ktdHJ1bmsKKzQ4MDkgOGE4NzY1MzQzY2MwZDQ1NWEwNjE4ODJlNTdjYThhMTQyZDlmYjIyYyBsZWdhY3ktdHJ1bmsKKzQ4MTAgZmJhZjU0MTY5NzExNzNiMzY2MDZkZTRlNWM1OWE3NWJmNTY5MDJlZSBsZWdhY3ktdHJ1bmsKKzQ4MTEgZGY1YjcyOGI4ZWI2MmVlNzk4NjA3YmEzODY1MGE2MTNkOGNlYTU4MSBsZWdhY3ktdHJ1bmsKKzQ4MTIgNmE5NDExOTg0NGViMzgyMGU0NGZjMzM2OTQwOWZjYzliYWM3Mzk5NyBsZWdhY3ktdHJ1bmsKKzQ4MTMgMTc0MGZkNzZmYzMzMmZiYzQ3OTVlMWZjODNmZGRkMDczZDU0OTE2ZSBsZWdhY3ktdHJ1bmsKKzQ4MTQgNGM0M2NiZGNkNTI0M2Q5OWNjMjUxMWUyOTRmYjlkZmNiYzI1NWQwMyBsZWdhY3ktdHJ1bmsKKzQ4MTUgOTE2YThmZjM2YTg1NDcwYmZhNmEwYzdhMDE1NjNjMDYwZjllNjQ3MiBsZWdhY3ktdHJ1bmsKKzQ4MTYgN2ZkNzQxMmU3MTg4NDhlMGYzMzMzYzJiNDZkNjE4MjQ5Yjk3ZTA2ZSBsZWdhY3ktdHJ1bmsKKzQ4MTcgZTgwYWNmYTEzYWMwMDA0NDk3ZDZiMzFlNGE1ZGE1ODIwZDJkODZjMSBsZWdhY3ktdHJ1bmsKKzQ4MTggNzQ3ZjBiN2NiN2JlNDM0Y2I5NjVlY2QxNGY1MmM0Zjk3NWYzNjEzNCBsZWdhY3ktdHJ1bmsKKzQ4MTkgMjFhMjNjZmM0ODQzMWFlOTFjYTAxM2UwMGVhMTFjMDEyMzM1MDNiZSBsZWdhY3ktdHJ1bmsKKzQ4MjAgOTY3NDdjNzg3YTgzM2MzMTkwZDNkM2MyMDE5NGFiMzJiYThlZWIxYiBsZWdhY3ktdHJ1bmsKKzQ4MjEgOGNmNjNjMzBmZmM4NzdlYzBhZDk0NjAwY2MxNDIxOTI1NjYzYTg2MSBsZWdhY3ktdHJ1bmsKKzQ4MjIgOTRiZjJmMDVkYTMxOWU2Y2UzNWUzM2Y3YWE5N2EzN2NmMjg0YjNiMiBsZWdhY3ktdHJ1bmsKKzQ4MjMgOTE1ZmFiZWM2NGEzMGFkNzMzYjEyOTAyM2EyZjA3MjdkNjNjZjI5ZiBsZWdhY3ktdHJ1bmsKKzQ4MjQgNjYzYWEwNTllMjlmZWM2NmYwMzM4MTk4ZmMzMjZkOWJiMTAzMjBlOCBsZWdhY3ktdHJ1bmsKKzQ4MjUgYmExYjc2YzA5MDQxNGEzZWM4MDY4YjU3MTVkOTQ2ZWExMzJlNmNjMyBsZWdhY3ktdHJ1bmsKKzQ4MjYgZTM4NjAzNWY4OTdkZmQ5MWFjNjM1OTYyNjU0Y2RmM2NiODYxNjU0NiBsZWdhY3ktdHJ1bmsKKzQ4MjcgMDRmNjFhNWE3NjU0MDljNGQ1MGFmNzQyMGI5MzU3NGFiMGM3MmJjZiBsZWdhY3ktdHJ1bmsKKzQ4MjggMGM4MzVjODA0MzIyNGNmNTkwNTUzMjc0NzE3ZWU0ZjI4MTcwMGMzYiBsZWdhY3ktdHJ1bmsKKzQ4MjkgNTgyYjAwZmJhYjE2MTQ1MjNmOGQ0ZjQzMjMyNzA2MGJlZjQzNTI5OSBsZWdhY3ktdHJ1bmsKKzQ4MzAgMzk3NDc4YmNhMGM0ZGFjMWRjMDNlMDJkNGQzYjQ2OWUyMGU3YzhlOSBsZWdhY3ktdHJ1bmsKKzQ4MzEgNTFjODgyNDk4NWY4YTUwODUwYWQwZWViNmVhZGUxYTczYmQ5Njc1ZCBsZWdhY3ktdHJ1bmsKKzQ4MzIgYzMxZWFlZDc3OThiYmE0MWYzMTRkMzhlNjkzYTc0ZjllNjhhMzVmNCBsZWdhY3ktdHJ1bmsKKzQ4MzMgZGFiMzRjYmY4ZDdmYTNmNDJhOTk3OWY4N2U5MjAyYjdlOGJjNWJmZSBsZWdhY3ktdHJ1bmsKKzQ4MzQgNGU4N2YzYTNmMzNhODdhYmZiMDhkOGQ3M2FlOTdmODAyNTdhNjQxZCBsZWdhY3ktdHJ1bmsKKzQ4MzUgMWEyMGQ1MDU4NzQ0NDhiYzcwMWFiZWExNjE1OTJjZDU0MjhkOGIzZiBsZWdhY3ktdHJ1bmsKKzQ4MzYgYzhhODMyMThiYTYxODcwYTZjNzE3ODAxZmI3ZWE1YjY0YmZlZmVjMCBsZWdhY3ktdHJ1bmsKKzQ4MzcgZmYzZmMzMGVkNzYwNjlhMWIzZGRlZWYwZjFmNGQzYjMxZjA3ZTU3NiBsZWdhY3ktdHJ1bmsKKzQ4MzggNjQ1MGQ4ODI4ZDJiOTg4ZDQxNDAyMDI3MTZkN2U5MTU0ZGJkYzRlNCBsZWdhY3ktdHJ1bmsKKzQ4MzkgNGNjODEzN2NjYjU2Y2ZmZjM5MmY2OWM2YmQ1ODM2MjNjYWU3MzZjYiBsZWdhY3ktdHJ1bmsKKzQ4NDAgZjhhYjkyNWVmZGE4OGFlMGRhMGEwZTNlNWU3MTc4MGFjOWQ0MDNhMyBsZWdhY3ktdHJ1bmsKKzQ4NDEgYzY1MzNiODk2Mjg4ODdhMzExZTljZjM4YjliMWQ4ZWQ4ZDk2ZDBkZSBsZWdhY3ktdHJ1bmsKKzQ4NDIgYzA5ZGFiZjcwOTk2ZmI5YTlmNzg2NmYyN2IxMzg1MzU2ODk5MjIyNyBsZWdhY3ktdHJ1bmsKKzQ4NDMgNTMxM2FjNmYzNGZkY2IwM2U2NzNjMTc2MTQwZjgwNzdjMWRkODBiNSBsZWdhY3ktdHJ1bmsKKzQ4NDQgZjk3OWU1YmQ2YTIyMzBlNzhjNTIzYmYwZjllOThlYTBkMDkxZWEwYSBsZWdhY3ktdHJ1bmsKKzQ4NDUgNDliZmVmMTdiMTJiNjVmYTc2YmZiMDljZjM0YWRhNWE1YTY4YjhjYiBsZWdhY3ktdHJ1bmsKKzQ4NDYgZGRiMTM4NjJmYmIyYmVhNzQ3YTY4MTdiOWE4ZGRlY2EzZGQxYTVkMCBsZWdhY3ktdHJ1bmsKKzQ4NDcgZWNiYmFhNTg0ZjNjMTY3Mzk4ZTA2YjQ3MTI1ZjIzZDMxYzM2MzA4OSBsZWdhY3ktdHJ1bmsKKzQ4NDggOWRjODc1YWQwNTBjODk5NDBlM2E1OTNhY2Q2ODI4N2U0YzcwOTBiNCBsZWdhY3ktdHJ1bmsKKzQ4NDkgYjE1NmJmNGJlNjJmMWI2YTljNTcxMzUyYTJkNjE5ZWQ3NmNlNDJmYSBsZWdhY3ktdHJ1bmsKKzQ4NTAgZmE4Y2RkM2NjNTQ1NDA1NTE5NDNjMDMyMDlkNWJmNGZkZWFhNTRkZCBsZWdhY3ktdHJ1bmsKKzQ4NTEgNDJiNTY4OWE3NDA5NWRkODA5MDI2NWNhZWI2MGUwMjM2ZThkN2ExOCBsZWdhY3ktdHJ1bmsKKzQ4NTIgMjljYTQ1ZWIzYWI3NTIzYmE3NTU3OTk5Nzc0M2E5NzA4ZTdiMjYwYiBsZWdhY3ktdHJ1bmsKKzQ4NTMgMDczNmE3ZWMyZjI4OWU1ZGVlOTFkMGNlOGEyZjdmOTViYjM5MjY5ZSBsZWdhY3ktdHJ1bmsKKzQ4NTQgY2FiYjdjNTczMmVmMWEzOGQ5ZjQxNDZhYzU4MjYxODI0MGM3M2RkNiBsZWdhY3ktdHJ1bmsKKzQ4NTUgNDM4YThjMjY1ZWI5ZjU0Yzg2N2NlZmY3YWNkMmI5MmJjOTRiMTNjNyBsZWdhY3ktdHJ1bmsKKzQ4NTYgZDMxZjY5NGMxMWE4OWI3MTExNzA2Mjk3NjMyMTY4ZGZhZjMxODA2NiBsZWdhY3ktdHJ1bmsKKzQ4NTcgMTMyNWIzZThlM2QzY2UxZjY1ZjA3NjgwMmEzODRlYWVjYTQ5YmQxNyBsZWdhY3ktdHJ1bmsKKzQ4NTggY2FiNjk5NDUzNzc1YzE5MDliYmFjODYwYTE5MjgyNjNlMDgyZTg4OSBsZWdhY3ktdHJ1bmsKKzQ4NTkgNzJjNzE1YzAwNGM4OTg2MWQ1MDRiZTdlZjRjYjUwYjQ2NmM0NzI5MyBsZWdhY3ktdHJ1bmsKKzQ4NjAgNzI0NmI5OWQyOTY2YTJjMmIyNTZlZTZjMWYwMzQ1ZGFmZWFhMzA5MCBsZWdhY3ktdHJ1bmsKKzQ4NjEgMGI2MmI1M2Q0M2Y4Nzg2YjY1NDFhM2E4M2E3NDMyZjNlNzk1YTc0ZCBsZWdhY3ktdHJ1bmsKKzQ4NjIgZTE0OTc1YzkxMGYwY2ExYTdkNjQ4MmRiYTBhMjMwNjlmY2U3NzBkYSBsZWdhY3ktdHJ1bmsKKzQ4NjMgOWE5NDI5MmFhNGMxNWJiZGQwNTljZTI2NDI2ODRkOTJlZGQyNjY4MiBsZWdhY3ktdHJ1bmsKKzQ4NjQgNzdlYjYzNzE2YjRmOThkM2E1NDYwYzBiYThmYzUxYjJjNmQ4NzBkZiBsZWdhY3ktdHJ1bmsKKzQ4NjUgNGZjMDMzY2I1NTQ0NWJhNmUxYWJiMjQ2YTg2YjY3N2M3OTVlOTI1ZiBsZWdhY3ktdHJ1bmsKKzQ4NjYgNDAzYTU2MzEyMTRiMDI0NTEwMmM1MzBiZGRkZDg1Y2Q0YjJjODkzNiBsZWdhY3ktdHJ1bmsKKzQ4NjcgZGQxYWIyMGY4MjIzYjM5ODY0MzRkYjVjNThiNjFhMDc3NmFmYmU3ZSBsZWdhY3ktdHJ1bmsKKzQ4NjggNzVhZTEwNGY3ZTZjNTFlYTJmMDQ1NmM3MmZlYTI0OTFmNDk3M2NhOCBsZWdhY3ktdHJ1bmsKKzQ4NjkgODEwYmMxNWUxOGY5ODNiZWYyMzViZTE2YTNiMzVmNmYxMjA1N2E2MSBsZWdhY3ktdHJ1bmsKKzQ4NzAgNjE0MjUxODM2Y2ViMjI3MzA5NjI2NTk5NWI4MmI1ZmEzM2ZmMjYwMyBsZWdhY3ktdHJ1bmsKKzQ4NzEgZWU4ZTkxYTE3NzQ1YWJiN2NmYTE0MjNjNzVmMjg2NmM3YzkxMjk5ZSBsZWdhY3ktdHJ1bmsKKzQ4NzIgNzVhYTUyNDZiMmY2ZjNkMWQyZmIwNzVkZDEyMzk5YWU4NDMyNjczOCBsZWdhY3ktdHJ1bmsKKzQ4NzMgOTdlNTcwNTBlMjc2MGNmYTI3MmY1MmRjMGIyZDA4NmViNTg4ZGQ5OCBsZWdhY3ktdHJ1bmsKKzQ4NzQgMjJiMWFiMGU2NDczNWRiN2Y4ODgzNGExZWQ0Yjk5NGFkY2VkMDZjZSBsZWdhY3ktdHJ1bmsKKzQ4NzUgNGE0NjJhYWNjMWU5OTE0NWI4MDNjYmY4YjMwYTg1NTY1NzFmNzJiMiBsZWdhY3ktdHJ1bmsKKzQ4NzYgNmJlZWYxNzg3MWY5ODJkM2NmYjU0YzBiYjM5ZDdhMWUzN2IxNWVhZSBsZWdhY3ktdHJ1bmsKKzQ4NzcgNmVkYTY0MmYxOWQwMzc4MGJmMDI5MDcyZmE3ZTkxOGI4NTIyOTQ0YyBsZWdhY3ktdHJ1bmsKKzQ4NzggZjRmNzFlYmVhNTNmMTQ1NDIzZTEwYTM1ZmZiNGE0Mzk2YTAxODNhMCBsZWdhY3ktdHJ1bmsKKzQ4NzkgNzNlZWZmNGQ0M2Y4NGFkNzZkMmJiMmYwZTBjNGZiOTQwNzBjYmIxOSBsZWdhY3ktdHJ1bmsKKzQ4ODAgMDBmNGU0MDA1NzVhOTczNDBlNjA5MTIxNjc2OGQxZGJhNTRlNWZkMiBsZWdhY3ktdHJ1bmsKKzQ4ODEgZWNjZjQ5MzdmMWRjOWFkMzVhZWZlZTUwZDQ3ZjNhNGJhMmZkZjZlOSBsZWdhY3ktdHJ1bmsKKzQ4ODIgOWJmMTg5OTZlZWQ4YzlkZjZiM2Y0ZWFkMDBkNWI0MmRlZDQ5OWExOSBsZWdhY3ktdHJ1bmsKKzQ4ODMgYmQzYWQ2NjM0ZTc2NDgyMDYxZjlmZDRmY2U1OTExNDUxOGY5YjcyYiBsZWdhY3ktdHJ1bmsKKzQ4ODQgNzkyNGI3ODE5ZDhmOTZjNzJhMThhZThmOTkxN2E1N2VjNjViY2QxNCBsZWdhY3ktdHJ1bmsKKzQ4ODUgZWZiMDY4NWE2YzkxY2JlNjU4OWE5MzY0YzBjOWFmMTU2ZTI2MmNlMiBsZWdhY3ktdHJ1bmsKKzQ4ODYgZDM5YWFiNmMxMzBkNDVkYjg5NDg4ODVmM2Q2ZjI5YzYwZDFlNzAzZSBsZWdhY3ktdHJ1bmsKKzQ4ODcgY2JiNDA3MmQ1MzhiZTdmMDQyYWVmODVhZmUwMDZiZWI5MmFiZjY2OSBsZWdhY3ktdHJ1bmsKKzQ4ODggNDQ1YmVhOGNlYWIxZDA3MDgzZDNlNGE2OGQ4YjNjZDE1ZjNhNmM4ZCBsZWdhY3ktdHJ1bmsKKzQ4ODkgNmNiZDI4MzBiNWEyMzhjZjU4Mjg0MDg1NzY2NjQ2MjFhYmZiZGI0ZSBsZWdhY3ktdHJ1bmsKKzQ4OTAgNWJjMzQxYzQwNzFjZDA5Mzk3NmRhODA0N2ViMjhjMTQzMzBjZjdiNSBsZWdhY3ktdHJ1bmsKKzQ4OTEgMWU4YWViYWI4NzRhZTEyNWU3ZmQ0NWI4NmQwZDY1MzdhNzBhMGUwMCBsZWdhY3ktdHJ1bmsKKzQ4OTIgZmE5OGRkYTA3ODc3ZjA4OGZiMWVkNzU2NGJmYWMyNjBlYmU5MGE3MyBsZWdhY3ktdHJ1bmsKKzQ4OTMgNjJlYmJjZmVhODI3MmI4NGQ2MzU5OGQ3NmY3NjVjZGY3OGI3YmUxZCBsZWdhY3ktdHJ1bmsKKzQ4OTQgMWY1OWYyYTEzMzEyOTZlZGYwMTIxMDU5NzAxNDI2MTllYzMzNjJmZiBsZWdhY3ktdHJ1bmsKKzQ4OTUgYzFkMjcwNDNjMjJmNDViNjQxOGY2NDdkYWNiNWE2NDAyNTc4MzEyZiBsZWdhY3ktdHJ1bmsKKzQ4OTYgZDU3N2Q3NDk5MThkMTgzZGQ2MzJkMTczNzA5ZTYwMzBjMjI5OTM4NSBsZWdhY3ktdHJ1bmsKKzQ4OTcgMmY4OWVjMWE5YzM4YzdkNzIxOTJjNzRmMDUwMDg5Yzg1YTIwOGEzMyBsZWdhY3ktdHJ1bmsKKzQ4OTggYTVlOTVmOWRlOTAwMGU1Nzg4MmNiYjNhYjg3Yzg2Y2Q3ZTdkMDIxOSBsZWdhY3ktdHJ1bmsKKzQ4OTkgMmRjZjc1MzgzNDdhOWQ2OGYyZThjOTU5OGFkY2E3MjQzMTU5YWJkYyBsZWdhY3ktdHJ1bmsKKzQ5MDAgOThjMWQ4NDEwMWE1MDgxM2I0NWExZjAxZDEwMDVlMzZiNmE0N2M1NyBsZWdhY3ktdHJ1bmsKKzQ5MDEgZjYxNzE2YWQwYjdmNTFmMzFjMDIzZjM0ZTVhZTQyYTgzZDk3MzEyOCBsZWdhY3ktdHJ1bmsKKzQ5MDIgNmYxMjExYjJlMDc3OWIxMTA2MmI5YjJjY2U2OTBmMjQ0NTA3NTNmZSBsZWdhY3ktdHJ1bmsKKzQ5MDMgNzM0OTlhNjY3ZTc4NGVkYTc0ODEzNjg2MWZkNGIwZjc3YTgxM2YxNiBsZWdhY3ktdHJ1bmsKKzQ5MDQgMmM2NTY1ZjFiN2Y4NjQ0NThkZDUzYTI5ZmIxODhiZWQyNWMwZmVhZiBsZWdhY3ktdHJ1bmsKKzQ5MDUgOGVlZWNkMjMzZDU2OWJiYTlmOGMyMzA5N2RkYzI1Njk3ZjMyOGVlYyBsZWdhY3ktdHJ1bmsKKzQ5MDYgOTRhNjQzNjY1NWUwM2ZiOTc1MzgxNDNlYTg2ZmU3ZWM3MDQ0MDY3YiBsZWdhY3ktdHJ1bmsKKzQ5MDcgNDgwYjI1MWEwNDY4MzViMWNiNDU4OTMxZTUxYjRhYTJkMGQ2NTdiYiBsZWdhY3ktdHJ1bmsKKzQ5MDggOWVmZDQwOGZjOWY2YmI3MjkzNmJkYTZiNmNjYzY0MTBlNmNkYWMwNSBsZWdhY3ktdHJ1bmsKKzQ5MDkgY2RkM2E3MjFiNDBlM2U4ZTk1Nzc1MzlkNjQ4OGU4Y2JlMzY1NTI1YyBsZWdhY3ktdHJ1bmsKKzQ5MTAgODk5ZDIwODc0NTY2Yjk4NmQyMTZkMTRmZTM2MDkyMTEwNGM0YmYyMyBsZWdhY3ktdHJ1bmsKKzQ5MTEgYjQyYWI3N2YyMjI2MDMxNjYzYzMxMjkwYTVhYWQzNWFiYWJlOTM3NCBsZWdhY3ktdHJ1bmsKKzQ5MTIgYmMwMzIyNWE0NDkzZjVkYmE2YjNmNmU2YTRmYTkxYjBkY2NkNmFmNyBsZWdhY3ktdHJ1bmsKKzQ5MTMgZTFhN2JkZmFmZWM5MzIzODg1Mjc4ODlkYmYxMWNjY2Y5ZWZmYTYxYiBsZWdhY3ktdHJ1bmsKKzQ5MTQgNjViY2I0MTgyYzFhMzIwNzk3OWVlYmEyOWY0MGY0ZTQxZTFkOWM3MCBsZWdhY3ktdHJ1bmsKKzQ5MTUgYmFjOTZkNWM0NjNmNDUyZmZhN2E0NGY3YWQ1YmRmMDEzYjBkZWMyYyBsZWdhY3ktdHJ1bmsKKzQ5MTYgMWMyOWY2YmRkODk4ZjZlMjRlN2JmNTUzM2M2YmYzNDU0OWViYjg4YiBsZWdhY3ktdHJ1bmsKKzQ5MTcgZDk0MDQ1YmQ0YTA0MTJiOWE2OTAwYTQwZDc5NjZkOTcyYzUyYTQ4OCBsZWdhY3ktdHJ1bmsKKzQ5MTggZTllODZhZTVmNWE0YTg3ZjFhNGRkYjA2MjU4MTYwNDEzN2QwMjFkZCBsZWdhY3ktdHJ1bmsKKzQ5MTkgZTc2NGI3OGE3MDRmNTE4ZjFhODM0MmZkYTFiOGYyYzQzNWJmY2IyMiBsZWdhY3ktdHJ1bmsKKzQ5MjAgZTcyNmY5MGQyYTlmZjI0OTU5ZGExMTlmMjI1ODU5MjU1NTU3ZDZhZiBsZWdhY3ktdHJ1bmsKKzQ5MjEgMWY0MTQxYWFmZTM2MTk3NjlhN2JlNGVhZjI1M2ZjNGRjNmEyNmM2ZCBsZWdhY3ktdHJ1bmsKKzQ5MjMgMzIyZmM1OTZmMWM0Mzc5MTMwMGU4MGNhZmRhYTlhMTQ1NTYxNmFjOSBsZWdhY3ktdHJ1bmsKKzQ5MjQgNGY3YzY3M2RhOTE4YjU2YWQxYmE1NWU2ZjRmY2Q4NDNmM2VhMjU3YiBsZWdhY3ktdHJ1bmsKKzQ5MjUgM2Q2NzM0YWI2Y2Q0MDJkZDAyMWU2ZDRhM2Q4NzllYzFmMzdlODNiOCBsZWdhY3ktdHJ1bmsKKzQ5MjYgOGUzOGNkMGEzYTMxNWZlMWJkN2E4ZTNjOWMxNmY1MDIwZTI3Mjg2NCBsZWdhY3ktdHJ1bmsKKzQ5MjcgMGUxZjlhMTRmYmQ0OTVhOTNhYjVmMzEyZTIxYmU2MDAzNjM5MmUzZiBsZWdhY3ktdHJ1bmsKKzQ5MjggNWJiMzlhNDJjNzI5MTIyNzRlZmE5MTFhOGYyYmFiMGJjZmNjYzJhYSBsZWdhY3ktdHJ1bmsKKzQ5MjkgZGQyODQ1ZDA2ZWIzN2FlMjk0MDhmZThiZmUwNzgwNWQwYjJlNjZiNSBsZWdhY3ktdHJ1bmsKKzQ5MzAgNTNmOTJhNDczYzZmMTBhNmYxYzA2MDdjNjFkNjQyODEwY2QyYjY5NSBsZWdhY3ktdHJ1bmsKKzQ5MzEgZGU0ZGMxNjViZmI2YTExNTI5OWM5YWExYzliOWIxZTI0ZDE5ZjI5ZSBsZWdhY3ktdHJ1bmsKKzQ5MzIgMzAyMDVkNjM0YTE1YjUyODEyNmFlYmRhY2FjZjU2YTM2ZWYxNjJlYiBsZWdhY3ktdHJ1bmsKKzQ5MzMgNzA4OWQ0ODQzNDA3MmVjZGY0NzliMDZlOTNjMjdjMDU3YzcyMWE0NyBsZWdhY3ktdHJ1bmsKKzQ5MzQgMTFiOTM3ZWEwMDI2NGE1YjFmOTNkNTE3YjVhNWQ3OGJkMjMxNTE3YyBsZWdhY3ktdHJ1bmsKKzQ5MzUgNjQ4NDJlMjA2Yjc2Y2IxNWE5YTAwMzI2OTA3MTgwMGZmNjU2NTY4NCBsZWdhY3ktdHJ1bmsKKzQ5MzYgYTE3ZGExMzIyYzU2ZDUxMGI0MmQ2MDdhYzM3MzdkMTE1ZGE5OTg5MCBsZWdhY3ktdHJ1bmsKKzQ5MzcgYmQ0NzY1NTViZTQyYTdhZDc5OWZhNmUyNTI1NjlkZmU2NTVkNjc0NCBsZWdhY3ktdHJ1bmsKKzQ5MzggMjJjZDIyYmY0Mzg0ZTRkNDZiYjA1N2UzNzRjZDRkNmM3ZWUxMGVlYiBsZWdhY3ktdHJ1bmsKKzQ5MzkgMDUxMGI5NDgxNzhlMGJhNzA2YjVhNGU1OTVjMTRkNTkzNTRiZWY4NCBsZWdhY3ktdHJ1bmsKKzQ5NDAgNTE3YmNkNDgyM2FiNzg2Yzc0YjJmYjEzNzEwYWZkZjVmZjg1MGM2YiBsZWdhY3ktdHJ1bmsKKzQ5NDEgMmE1NzRkNGIwZDU4YzJmMGUzODJhZGE0NmE0MDM0NGI2NTU1YTI2YyBsZWdhY3ktdHJ1bmsKKzQ5NDIgZDYzMGM2ZDM2ODM5YWQ4ODQyNmFlNjdiMGZhYzViZDMzMTFlNWZlMSBsZWdhY3ktdHJ1bmsKKzQ5NDMgZmUzN2VkMmNmN2E1YzU3M2JmZmI4MjE0ZjAzMGQ0ODY0MzZjYjE3ZiBsZWdhY3ktdHJ1bmsKKzQ5NDQgZWIxNGYzMmE5N2NkYzVjNTQ5ZTcyZWIxZDlhMzQ5ODhjMDIwOWM2ZCBsZWdhY3ktdHJ1bmsKKzQ5NDUgODA3MjlhZmY5MDU3YzBmZjE3ZmFhNWFjNzBkYzNhZTY3OTE5ZTFhZCBsZWdhY3ktdHJ1bmsKKzQ5NDYgY2Q2NGEzMmFiODAzMmNmNzZiY2I2ZmUxYmNjNDg2ZTk4MGM4OWE4OSBsZWdhY3ktdHJ1bmsKKzQ5NDcgNDQxOGU4NTQ3ZWZjZjE1MGY3MDFiYWM5NDk4ODBjZjAxZTdkNjBhMSBsZWdhY3ktdHJ1bmsKKzQ5NDggZmI4ZTA4ZWM4OGRkNTYwNjJjMWE5MzU2MDIxYWU4MTVhYmQxNTZiNiBsZWdhY3ktdHJ1bmsKKzQ5NDkgNGI1NzRkYjVkYjEzZjE3NTc0YjY1YzQ2OTBiMGJjMGEzYjJjMjljYiBsZWdhY3ktdHJ1bmsKKzQ5NTAgZDk0ODEzNTRmZGMzNjE5OWJlMWJhM2JlODMyZmU4MzY5MTA1NDBkZCBsZWdhY3ktdHJ1bmsKKzQ5NTEgNWZjNjI1NjJlNmVjZTE3MDlkZjNjNzk0NjE1NGY3N2UxZWQ3MmQ1NyBsZWdhY3ktdHJ1bmsKKzQ5NTIgNzE4YzY1ZDBlMTJkYjQ4NjYxYWY3N2I1NzZjY2QxYzM2OTIyYzZmMyBsZWdhY3ktdHJ1bmsKKzQ5NTMgNjBlNWFhY2ViM2ViMzZjYTA0ZDI0YjEzMDNkOTIzNjBhMThmNTAzZSBsZWdhY3ktdHJ1bmsKKzQ5NTQgMTVhODY2ODdmODM4MDcxMTQ1N2IzMmI2MGI2YzkyNGIzYjMxODEyYSBsZWdhY3ktdHJ1bmsKKzQ5NTUgZGRmNjBiYzdlZDMwMTVmNzM3ODkyYWQ5NDRjMDY5Mzc0NmJiYThjNiBsZWdhY3ktdHJ1bmsKKzQ5NTYgYzIyMTk1N2E2MjZkN2VjNWZlMjYzZWY4NzhhYzU5N2U1NmYxODFhNiBsZWdhY3ktdHJ1bmsKKzQ5NTcgZjIxN2MxYjI3Zjg2NzZhNWQ0YjY1M2E3Y2NiYzI3NGI5OTMxNWUzNiBsZWdhY3ktdHJ1bmsKKzQ5NTggYjVjZTgwMTE0NDE2MTU4NzVjNDk0MzhlNzlkMGQ2ZDAwODRjYTJkMiBsZWdhY3ktdHJ1bmsKKzQ5NTkgZDU5NzgyMzhlM2JhNmY3Y2M3NzMyMDJmMjEzYTczOTViYjYzZDQwMCBsZWdhY3ktdHJ1bmsKKzQ5NjAgNGRkMWFmMGRkZWYwOGRiMjZlMjYyODRjMzE2OTVjNGU0NzNmN2MxNSBsZWdhY3ktdHJ1bmsKKzQ5NjEgNDI1ODM1Yjg4MDk5ZTgyMmI5OGYwOTJhYWJlNTFiYTQ1YzllY2NlYiBsZWdhY3ktdHJ1bmsKKzQ5NjIgZTkyMGU2YzI3MjA4MjFjMWMyNmVhZjg2MDI4NmRlN2Y3MTBkNDBmMiBsZWdhY3ktdHJ1bmsKKzQ5NjMgOWQ2ZTk3ZDY2NjcwOGQ0MzdhYmUyODVjOTFmNDgyNjU5Njk3YTFlNyBsZWdhY3ktdHJ1bmsKKzQ5NjQgOGFjNGMwZTFjZTE3YWQyOWJmN2FjOWEyOTFkNmQ2NjdkYTMxYmNiNSBsZWdhY3ktdHJ1bmsKKzQ5NjUgNDdjYzUzYTFmZDQ3YjNkNGVlYzQ4ZTM5MmE4OTI3NjZhNTAyODc0YSBsZWdhY3ktdHJ1bmsKKzQ5NjYgYzZlNDgyODcwZWMzMGFkMGM0M2MzOTgzZTEwZjM5OTZkYmNkMjRhYyBsZWdhY3ktdHJ1bmsKKzQ5NjcgYzI5YWRiMzM4OTY0Y2I3ZmFjMDk0ZWU2MDk2ZDk5NWEzMGM0OTRjZSBsZWdhY3ktdHJ1bmsKKzQ5NjggYzZhNmUyYjIwYmQ4M2RkMzhhOGUyMmU3MTY1NGY1ZTdiODUwNmY1NiBsZWdhY3ktdHJ1bmsKKzQ5NjkgYzZmMmQ1MTI1MWQwNzVkNzhkZWEzNzliNTRiZTJlMWEzYzZmYjI5YyBsZWdhY3ktdHJ1bmsKKzQ5NzAgNTZlMjUxMTRkNDM4NDQzNTlhZTA2NGM5MzNlNzg2ODNiODExZWRmMSBsZWdhY3ktdHJ1bmsKKzQ5NzEgZjRkYzUxZjc4YTU2ZGMzZmJiMTQxZDZkYmRlYjVjY2IwNDM2MTdjZCBsZWdhY3ktdHJ1bmsKKzQ5NzIgMWNlOWU2N2M2ODU2ZThmYzc4YmExNzU1NjUxZWI0OTllNWEzYzBiOSBsZWdhY3ktdHJ1bmsKKzQ5NzMgZDBiOTgxMmNkOWNmNDA1MTNhYzhmNzM5ZmI3ZmIyZmIwZGY5OWM1YSBsZWdhY3ktdHJ1bmsKKzQ5NzQgMmY0NTU2MjdjMWYwZWQ1YWZiMjg3NzZkNDliNWI3YjdiZmZkZGU3MiBsZWdhY3ktdHJ1bmsKKzQ5NzUgNTU2MjE5NzA5ZTk5ODViY2ZlMTIwZWFhNjA2NzQzMzIzYjVmZDk0OSBsZWdhY3ktdHJ1bmsKKzQ5NzYgNDk1YWZjOGFkN2I5NjlmMTRlNmMwYzI1YjI0ZjViZmVlODE3OGY4MSBsZWdhY3ktdHJ1bmsKKzQ5NzcgODQ3ZDI0ODQxYzg1Njk5ZDE1MTgyYzUzMzlkYjU1ZDNkNmRiMTMyMiBsZWdhY3ktdHJ1bmsKKzQ5NzggZTdkNDgwY2YxNmJhNmRmODEwYWU2OTEwNjk3NjAwYjdmNjZjYzI3NyBsZWdhY3ktdHJ1bmsKKzQ5NzkgOWU0MDEyYjE3NTdlYjRiNmE2Y2JkOTNhMzJiMWY3NzU3NWU0NDUxNSBsZWdhY3ktdHJ1bmsKKzQ5ODAgOGI4YTM3YjdjYmE0Mzk5Yjk4OWMwNTI5YWMwZDQyNDE2MWEwZDFkZSBsZWdhY3ktdHJ1bmsKKzQ5ODEgNjAwMTQ0OGZhYjg5MDM1MGJlYTgzYzYyYWEyMzg2NTFkNWQxZWVmYyBsZWdhY3ktdHJ1bmsKKzQ5ODIgMTZlYTE1MWFlZWMzYTRiMDg2YjkzZTk0N2Q2MzA1YjExZDBhNTdkYSBsZWdhY3ktdHJ1bmsKKzQ5ODMgZDExMjNiMTBjZjIzNzJjYzRlM2U1YTU2ZmU5YzBjZjYyOGM3ZmRlNCBsZWdhY3ktdHJ1bmsKKzQ5ODQgODE1ZGZhYTZhNzc4Nzc3MjA2MzM0YTdkN2NhN2IxODY0MWNiMWMyNSBsZWdhY3ktdHJ1bmsKKzQ5ODUgYWUyYjAzMjQ0NWY5OWMzM2IxZjc3YjJiMjIzNjhkMzViMmI0MzA2NCBsZWdhY3ktdHJ1bmsKKzQ5ODYgMTZlYTU3YzM4YzRmNzQxZjMxNjk2YTNjOTNkMzU2YWI2YTllMGM4ZCBsZWdhY3ktdHJ1bmsKKzQ5ODcgMWE1ZTdkYTQwNGMzZGEzYjNjYzVmNWZhYTU2Nzc2ODMxNDBhNTk2YiBsZWdhY3ktdHJ1bmsKKzQ5ODggZTM5YmIyNDBiMWIzYTdhODQ0NWQwMDFlYmJiZDQ2MTZlMWMwZWY5YSBsZWdhY3ktdHJ1bmsKKzQ5ODkgOWU1YTA5ODQxNzgxOTU4YzI4ODNkYmZjY2E2NWVlNjhmY2M5OTM2OCBsZWdhY3ktdHJ1bmsKKzQ5OTAgZTUwNmVjNGZiMmIxMGQ0MDBlZTdmNjM4ZjY5Zjc5YjUyYzZmYTNiZiBsZWdhY3ktdHJ1bmsKKzQ5OTEgNzNkMTkzZWFhOTAwZWE0MzhlODQ1Mjk4ZmQ3NzY4NGI2YTQ3NDUyNCBsZWdhY3ktdHJ1bmsKKzQ5OTIgODc1MTczZjNmMzFjYmQyMzQ2Y2I0Nzc5MTNhZWU3NWU5MjU4ODllZiBsZWdhY3ktdHJ1bmsKKzQ5OTMgYTE0ZmMyZDA0YzA2MjVhODY1ZmZiNDNiZDhjNTQ0OTQ1Yzk1MDllMSBsZWdhY3ktdHJ1bmsKKzQ5OTQgNmZjZDBiMDIyZmE3N2JiZTYyZGY3Zjc5NTE0NzdiZmVkMmEyYmYyYyBsZWdhY3ktdHJ1bmsKKzQ5OTUgNGRmMDBiMjk0NzdiN2Y3YjI2OTc5YjllZDNhMWJmNzdmYjgxMmI3ZCBsZWdhY3ktdHJ1bmsKKzQ5OTYgNTM0YTk3YzQwMGNjN2Q2MGM1MzVjZmQyNGU1NDg0MDFmMzFhZTZjOCBsZWdhY3ktdHJ1bmsKKzQ5OTcgZDdhZTVmYjFkMjU1MDk4MTQ5NzgxYzAxZjQ4ZmU5NTk3NTA2NGNiNiBsZWdhY3ktdHJ1bmsKKzQ5OTggYjcyY2NmNWI3ZGJjNDdmYzhkMTE2OWRhM2RkYTJjYTczMTFmNzliYSBsZWdhY3ktdHJ1bmsKKzQ5OTkgNDlkZjE1NzZmYjU0ZTkyZmYxY2JhMTBhNTJjZTUxOGQzZjU2ZDk2ZiBsZWdhY3ktdHJ1bmsKKzUwMDAgMWE0NDhkZDg0ZWRjMmU5ZjNkMjE0OGNhMzlkZTZjYTgyNWViODZhNyBsZWdhY3ktdHJ1bmsKKzUwMDIgYWFiYmZiNjFlMzg4ODRiNmEwYzRjMzE5ZWZhNjI3ZDRlYWJhZjZkYyBsZWdhY3ktdHJ1bmsKKzUwMDQgOWNjNzc1ZmQ2ZTg0YzVmMzM4NWJlYTkwYTI0N2U3OTgxYmFiOTBmYSBsZWdhY3ktdHJ1bmsKKzUwMDUgNTUzNmZjYmFlODBhZDdiMDE3ZDMzOGE4ZmUyMGExNTQwMGIyMjVkMyBsZWdhY3ktdHJ1bmsKKzUwMDYgMzI4MWE5MzFhMWQ5ZGM5NzdiYTEzYzUwMWFmNDBkOTJhZTRhNWFlNyBsZWdhY3ktdHJ1bmsKKzUwMDggMmNhYzZjNTA2NmRhNTA5NTk4YWIwNmVlMjllOTBkZjY5YmZmYTczOSBsZWdhY3ktdHJ1bmsKKzUwMDkgNDE5NjAwMDc4OWJjNWUyNDI2ZTAzOGE3NGU1MjEyMGI1NmY1OTBiZCBsZWdhY3ktdHJ1bmsKKzUwMTAgMGY2ZmY0NWJkODE2Nzg3NmI3YzNlNDUzYjZlMjU2MWU3Njg2M2UxYSBsZWdhY3ktdHJ1bmsKKzUwMTEgYzU1ZGRkYmZjZjdjZThlYjZhZmJmOTdjZjRmZDU5ODg5NTFmNDlmMyBsZWdhY3ktdHJ1bmsKKzUwMTIgN2Q3MDIwOWYzNTVkMjBlYzAxZGJjNzNhMDJmYjI5Y2U5MjNmMjE5OCBsZWdhY3ktdHJ1bmsKKzUwMTMgZjMwYmM0OGM0MTdhMjFkMWNjM2I2ZTY2Zjk3MzljOTVmMzgwMjgzYyBsZWdhY3ktdHJ1bmsKKzUwMTQgZjRkMjZhMGUyOTc1MTUxYTZmZWVkMDBkYmFlZDNjMjM1MGYwNDUyNSBsZWdhY3ktdHJ1bmsKKzUwMTUgYjE4MWRmZjIxYjBiOGU5OWNmMmM5NDU3OTg5MGQ2ODEzYTUxYmU1YiBsZWdhY3ktdHJ1bmsKKzUwMTYgZjliMDc5MTVhMDYxN2RhMGFlNGZiMGU5YmE1OTM2MWMyY2M0MmRhYyBsZWdhY3ktdHJ1bmsKKzUwMTggMmFhNmI1YWQ0NTIwNGUwNzFkYjFkNGY3YzFlMjgyYWJhYmU1OWUzYSBsZWdhY3ktdHJ1bmsKKzUwMTkgMzhmMzIyNWVmZjMxYmRkMzViYzYyNzA4OGZlNzJiYTBmY2Y1MGQwYiBsZWdhY3ktdHJ1bmsKKzUwMjEgM2Y4YzhiOTAxNThkZmQzMmZiYzQ4Y2FiNDI5MWY2M2IzNmRmZGUyNCBsZWdhY3ktdHJ1bmsKKzUwMjIgNzg3YjRkZDZmNWYzZTZjMjBlMTJkMTc5NGMxMDY5ZWJiNDRkYTY3OSBsZWdhY3ktdHJ1bmsKKzUwMjMgYjA5MmQ5MzZjODc1ZTY2ZjE3NGRkMWFjYTc2MTAxZTJkNjk5YmE2ZCBsZWdhY3ktdHJ1bmsKKzUwMjQgMzgyODIwNmMyZGMwYzYwOWU2NGFiNmMyOTgzZDc5ZDk5NzQ1MWVjYSBsZWdhY3ktdHJ1bmsKKzUwMjUgODVjMDgxOTY2MmI3YjQ5YmRkY2U0NDU5NzFjNjgyMGFmMjhhM2I0OCBsZWdhY3ktdHJ1bmsKKzUwMjYgN2ZiZmY1MmRiMDg3NzRkZjk0ZDE0OTZhNGVlZmQwZjMwMGI2MmI5NSBsZWdhY3ktdHJ1bmsKKzUwMjcgOTEyODEzZDU3M2I0MmZmYTIyM2E5NTc2NmM4ZjM3MWQ0NDlhZGE3NCBsZWdhY3ktdHJ1bmsKKzUwMjggOTE5YzUzYTM1ZWZhZWFkM2U5ZGY4ZTA5M2NiNWQxMjc2YzczYTM2ZCBsZWdhY3ktdHJ1bmsKKzUwMjkgYjU5NjNjNGI2MzlhZDE0OTcxNzEzNmI2ZjM3N2FkMzBlNzI0MWUyZSBsZWdhY3ktdHJ1bmsKKzUwMzAgMmM2MTc4NjMyN2NmZjA1NGQzN2Q4Yjk4ODdlMGU4YTQwZjY3MWZmNyBsZWdhY3ktdHJ1bmsKKzUwMzEgN2EzNzMzNzMyOTAxYzExOWU1ZjVhNjkwOThmZjE2MTI2M2M2NGVkZCBsZWdhY3ktdHJ1bmsKKzUwMzIgOGJlNDAwMmI1MDg2N2MxODdmM2JkMGU3ZmNlMjlkZTUyMjVlZWMwYiBsZWdhY3ktdHJ1bmsKKzUwMzMgMTgwNzg2NGE3NWY0NzE0M2NiMzBjNDg3NThkZGI2NTBkZWIxM2RlNCBsZWdhY3ktdHJ1bmsKKzUwMzQgYWMxM2NhYTc5ZTNjYTYzNDI4NTVlMTAzYmQ3ZTQ5ZTRhZjBmZjNjOCBsZWdhY3ktdHJ1bmsKKzUwMzUgMGJhZWI3NDZhODU0MDMyOWM3NDEyNTFlMzcwNGMwMTJjMDU2MzA0ZSBsZWdhY3ktdHJ1bmsKKzUwMzYgZjBiNzg3MmRhNjg5MWMwNWQ2N2JhOGZiZDQ0Y2FjNGU5MGVlN2NjMyBsZWdhY3ktdHJ1bmsKKzUwMzcgOTY3N2ViMTA1ZmFlODI0ZGI2YzA4N2NlNjA0NzBlMjM0ZWUzMjIxYyBsZWdhY3ktdHJ1bmsKKzUwMzggZjQ3YmM1NTU0NDE4NWE1YzA5YjYzMzc0MzQ1MTljMTcwMzAzNjQwNiBsZWdhY3ktdHJ1bmsKKzUwMzkgNDk4ZGFkODA0NWQzNGM4NmJkNjVlZGI2M2I3ZWE1NmNiMzk0NzE1YiBsZWdhY3ktdHJ1bmsKKzUwNDAgMGFjMjdmZmQwNTc5OWMzZjFkZDg2N2JlY2Q1MTgxYjg5YTYxYzc5YSBsZWdhY3ktdHJ1bmsKKzUwNDIgYmM0YjNmZGE2YTgwNzhkYzYzNzdmYWFjOWZkMGIwMmU4YTNiNDU1OCBsZWdhY3ktdHJ1bmsKKzUwNDMgOTFiYzkwN2IxZTYzY2YwODJmNDM0NzEwZWZkMjhkN2U3ODMyMTMzMCBsZWdhY3ktdHJ1bmsKKzUwNDQgNGQyOGI2NTViNzI4NzE1ZTQyYjNhMGJhODFkY2Y4NWU5MTU0ZDNjYiBsZWdhY3ktdHJ1bmsKKzUwNDUgMzc3MGU0MzQ3ODAzODVlZjkyNjg1NDZkOGQ4NjdjNmQxNGRlYTc1OCBsZWdhY3ktdHJ1bmsKKzUwNDYgNzkxNDkxNTcyOWUzZDUyMWI3MTNmODIwYWZhZTYwNDVlNjZlYWE3NCBsZWdhY3ktdHJ1bmsKKzUwNDcgNGI2YzA3NjJkNjU5YjRkNjFlN2MyOWRjNWJjMzEzMzgxNTY5ODZiOSBsZWdhY3ktdHJ1bmsKKzUwNDggNzA0MmFlZTY0MDllZmM3ODIwZmQzZDE4ZmE2MDZiYjBkZTQ3OTM0NSBsZWdhY3ktdHJ1bmsKKzUwNDkgYWUxMzFiOGI0ZTMxOWRiZmMxM2Q4NzM5YjkzZjUyZWNlMjkwMWRkMSBsZWdhY3ktdHJ1bmsKKzUwNTAgZDY5OTU0ZTFmNWQ0MThmNGZkZjBlZDIzZjUxMmI1ZmI1OThhZGI0ZSBsZWdhY3ktdHJ1bmsKKzUwNTMgYmJiZjE3NjQwYzZmYTE1Y2JjNTk2M2M3NTgxOTAyNWFmM2VmM2QxNiBsZWdhY3ktdHJ1bmsKKzUwNTQgZDVkMjdkYWQ3ZmVhZjVkNmY1MzlhYmUzMDNhMDk1MDk0NmU5NGRlOSBsZWdhY3ktdHJ1bmsKKzUwNTUgNWQwOTM4MzUwYWU4ZThkODdjYzg3NjFmZThhYmQzN2Y2NGIzMTQ3NyBsZWdhY3ktdHJ1bmsKKzUwNTYgMmEzZTQ4OTcyMjYxMmY5MzA1YzE5ZTU5YmI3NTgyNzlmODU3Yzc3YiBsZWdhY3ktdHJ1bmsKKzUwNTcgNzYzZWI0Nzk3NWRkMzk3ZTkzNmU0NzJmN2IwOWY1M2NjOWUxN2E3OCBsZWdhY3ktdHJ1bmsKKzUwNTggOGRmNTc0YTY1NWFkNmMzY2Q1YjgzZTM0OGQ4OWEzMzllODYwZjIyZSBsZWdhY3ktdHJ1bmsKKzUwNTkgY2U5YTc1MDdlMWVmZWI3MTAzNTZjYThlNTVmOGVjYmMxYzY0NDgyZiBsZWdhY3ktdHJ1bmsKKzUwNTkgMDY1ZTMxY2Y1ODYyZTI3NTIxY2Y1NzI1YjAwM2FlZDIxMWYwOTFiMiBsZWdhY3ktdHJ1bmsKKzUwNjEgMzE3Nzc2MjJhZTkzMTU3YTIwMTA4MTI5MTQ5YWVmY2VmZTJjOGVkYiBsZWdhY3ktdHJ1bmsKKzUwNjIgY2Q1YTk2ZjYyMzliZGU0NTJhMjBmNzcxMGJmN2E0YmFjZDk2MmMxZCBsZWdhY3ktdHJ1bmsKKzUwNjMgYjI4MWMzYzg2M2NjYWU0ZWRiZDFjNjk1OGY5ZDMzYWE3MDNkZjczMCBsZWdhY3ktdHJ1bmsKKzUwNjQgYmRiNjNhNzk3NTU1NTQ3ODQxOTI0MDJhZmZjYmNlNDM3YTcxMTRiYSBsZWdhY3ktdHJ1bmsKKzUwNjUgNTg4Y2Q0MzQzZWVkMWZjMjczNjA5ZjcwNDExYTAzYzg0YzY1NWZiOCBsZWdhY3ktdHJ1bmsKKzUwNjYgMzUyMzM2NDA0NzliMmViYzhiYjJkODNkZDdjNTQzNDkyZjc3NmU1NCBsZWdhY3ktdHJ1bmsKKzUwNjcgYmVlMmFlZDQxNmQ2MjQ0MjdhZDBhZjhjYTNjMzZmMjFkYTFjZjUxYSBsZWdhY3ktdHJ1bmsKKzUwNjggNDA4NGVjZjI3NmNmMGY1ZTQ2Yzg4MjJmMDZhZTQwMzZiNjJjMTU1MiBsZWdhY3ktdHJ1bmsKKzUwNjkgYzUyYjVjOWJlN2UyMTdmNDI0MjIxZjhlMjU5YzkwYzlmNTdhMTkzOCBsZWdhY3ktdHJ1bmsKKzUwNzAgMjliOTBhODZhYzk2ZDhjODhjMzNmMmNkZTI1NTA3YWNiYzJkYzE4OSBsZWdhY3ktdHJ1bmsKKzUwNzEgMTdjOTI1ZjAwNjBiOGM3MTk2NTllYjYwYmQwZTg3NjBjZjhlMWJkMyBsZWdhY3ktdHJ1bmsKKzUwNzIgMWM4MTQ3ODNlZmMxODUwMGEzMDIyZmY1N2EzN2VmN2U1YTY0NGI4NCBsZWdhY3ktdHJ1bmsKKzUwNzMgZWVhYzE3MGY1ZjJmZjgyNThjNjlkODgyMzdhNWE3ZmM4YzZlOTgxZSBsZWdhY3ktdHJ1bmsKKzUwNzQgN2VmNzI4NzNlNGQ2ODc0N2Y1MjZjNzg4OThhODllZWQzOThjYmZjZCBsZWdhY3ktdHJ1bmsKKzUwNzUgYjAyNTczZWViMTgyOGM2ODIyZGIyOGEzNTFjZWFjNTdlNmNiMWNiYiBsZWdhY3ktdHJ1bmsKKzUwNzcgMDE2ODdjZTQzNzA4MmE1NWI3ZWNmMDA2NDMyODAwZmVmNTU3NGNlYyBsZWdhY3ktdHJ1bmsKKzUwNzggY2E2YjYwZDRlYTkwNjM3YzY3NmIxMDMwMDA4MGE3Y2U5NGFjZDNjZCBsZWdhY3ktdHJ1bmsKKzUwNzkgYjM2OGJlN2IwNjJhNTMwMmEyZDA2YjkzZTQ2N2Y3MmYwYmE4Yzk3YSBsZWdhY3ktdHJ1bmsKKzUwODAgZjcwNDlkNDY1MzY1NzY5OGQ5OGQxMjBlZmZiMWFlNWFmNjJkMDM3NCBsZWdhY3ktdHJ1bmsKKzUwODEgYmMzMjYwNzRmODYxNGU4MWI1YmRmMzlmMDlmNDRhMjljOWNhODMzMiBsZWdhY3ktdHJ1bmsKKzUwODIgYTkyZGRlZDRhN2M0ZGNjNjI0YTY4MGMwMDhkZWI2OGM5N2FiZDRmMyBsZWdhY3ktdHJ1bmsKKzUwODMgZWQzMGJjYTE4NGJiODFlMjNhOGZhYTlkOWJkODBiY2RkZGEwNDZjMSBsZWdhY3ktdHJ1bmsKKzUwODQgNmNjNjM3YzYwY2U2NjJhZmVjYTIyODIzZjk2YTZhMmZlMGZhYWQ3YiBsZWdhY3ktdHJ1bmsKKzUwODUgZGE0N2I0MTQ2YTdjODdjZWQ0Y2E0ODRkNmY1MzZjZmMyZjk2OTkyOCBsZWdhY3ktdHJ1bmsKKzUwODYgYmQwNWRjZWE3YjA5Y2Q3NDc0OTdjZWMzYmVlNjA3MjMyNDA5NTJkZiBsZWdhY3ktdHJ1bmsKKzUwODcgMmY5MTAyZjU3MTQzZjFkNmZkNDYyYmQ5NThlNWM1ZjE0YzA5Mjc1NCBsZWdhY3ktdHJ1bmsKKzUwODggNjFlM2I2MGFlYzQ0MTlkYWVkMWU4MWYzZjI2N2I2YmY2MmRhOTY1OCBsZWdhY3ktdHJ1bmsKKzUwODkgODMwMThhYTliMTdjOTU2YzU0ODY4YjMzNjRhN2MxNGFjNDYzNGQ4OSBsZWdhY3ktdHJ1bmsKKzUwOTAgNjM0MWE0YzAwODJiMzQ5Mzc1MTcxZDViZjA5OWNkYTZlYjAwZDIwNiBsZWdhY3ktdHJ1bmsKKzUwOTEgNWEzMzcxMzIwOTc1NDVlYWYyZWQyZjVmYjQ5NDc5YjM0ZmQ4OGFlYiBsZWdhY3ktdHJ1bmsKKzUwOTIgZGJiNDE3MTIxNjViZTRmYTQyZjBkZTc4NzExMmRjYjAyMTIwMmJmYSBsZWdhY3ktdHJ1bmsKKzUwOTMgZTllYTA1NzAyNjc2ZTdiYzgxZGE2NTk5YzEzZjMyMGI4ZTU2YzBmOCBsZWdhY3ktdHJ1bmsKKzUwOTQgN2M5MmQ0NGZhNmZjYTUxMGVlMWE5OTRlOTg2NjVlNDQyNjAyMTBlNSBsZWdhY3ktdHJ1bmsKKzUwOTUgMTc1NjcxY2MyMWQ4YzY0NGNlZDE3ZGI3Y2E3MjU0ODFhNGVjYjlhNCBsZWdhY3ktdHJ1bmsKKzUwOTYgNmM4OWRmNTc2ZDkxYWZhZGM3MzcxY2M5M2QzOTY5ZmM3MzNjNzFlOSBsZWdhY3ktdHJ1bmsKKzUwOTcgOTEyMzE3YTM3ZTJiMzg1NjE3ZWJhZmRkZjY5Y2YzYTJhMTMyNzJlYSBsZWdhY3ktdHJ1bmsKKzUwOTggNzVlOWU1NmI1ZjliMWEwZGUzZTAyNGVmYjQ2ZDA5M2VmMmRlZWJkZSBsZWdhY3ktdHJ1bmsKKzUwOTkgMjI5MTJmM2E4ODlmMTJmZjYwNzg2MDQzN2Q4YTQwMmZkMWUyMTRkYSBsZWdhY3ktdHJ1bmsKKzUxMDAgZjRlZjNiMjEyNmViY2JkZDY1YjZjOTY1MTQ0ZmIzMGYyYTQ2MTFjNSBsZWdhY3ktdHJ1bmsKKzUxMDEgNmYzOTZjZTUyNTVkMDhmMWE2ZTM5MGRiZjhjM2RkYjQ2YTQ0NTZhYiBsZWdhY3ktdHJ1bmsKKzUxMDIgNjdmZjlmNDdhYjM2ZmU5Yjk4MDFmNzZjOWY0MDFkMDJlNzkyOWFiOSBsZWdhY3ktdHJ1bmsKKzUxMDMgNDQwODc4MTkxNDhlMjc3Njc4OGNlOGI2NmI5NTAyOWUzZWQwNjVlOCBsZWdhY3ktdHJ1bmsKKzUxMDQgNjhjN2EwYTYxZmQ1ODFjMDc2Y2Y4ZmY4ZDFlZDhmOGUyMzcxNzNkOSBsZWdhY3ktdHJ1bmsKKzUxMDUgZjExYmE5Y2MzNDJmMjgwY2FhODdmYzFjMTk4YWEzY2ViMTU5YTBlMCBsZWdhY3ktdHJ1bmsKKzUxMDYgZjVjNDA4NjlkYTEwNjU4ZWMxMDMxNzBjN2MzOTYyNDE4MDAzNDUwMSBsZWdhY3ktdHJ1bmsKKzUxMDcgZjk4YTIyMzNiMzM3YjQ5NTM0NThiN2RjZGNkNTY0YTVkMjNlNDVmNyBsZWdhY3ktdHJ1bmsKKzUxMDggNTEzNGMwMDllMWE0ZmU1ODNkZDllMGVlN2E3MTg2OGQ4NzAxNGI2YyBsZWdhY3ktdHJ1bmsKKzUxMDkgZDllNGNiYmE5NThjMDY5MThmZTE2ZmE2YWNiZmRkZDE2OGMzNGEwMSBsZWdhY3ktdHJ1bmsKKzUxMTAgN2M2OWM0YWVjYjM4Y2I0NTVlNzM5YmYxOTA2ZTJiMjc3MTY3ZjBmNiBsZWdhY3ktdHJ1bmsKKzUxMTEgZjg3NmNkNWM0NDE3ZDc1MDA5NWQ4MDA5ZjdjMmRjOGYxNWUyNWViMCBsZWdhY3ktdHJ1bmsKKzUxMTIgZGUyOTdjZGVhMzRlZTY1MGUyMWUyYmVkMmUwYWNiYjRjZjZmY2MzYSBsZWdhY3ktdHJ1bmsKKzUxMTMgOWI3ZTZkOWE1MjhkYTdjODhmM2Y4ODhhNjRiMGI4NThhMDRmNGJkYiBsZWdhY3ktdHJ1bmsKKzUxMTQgYjdlOGJjMDAyYTI0MzBjYmNmNDU2ZjZlNzYxODI4ZmFhM2ViOTNlOSBsZWdhY3ktdHJ1bmsKKzUxMTUgMDYzYTk2YjQ5YjNlNjJhOTQ4MjFiZjM2NzQ0ZGU3MWI5OTFlNmUxMCBsZWdhY3ktdHJ1bmsKKzUxMTYgNjA2YTA5N2RmZDAwMmM0YTA4NmIxNTFlOGIyMjcwMWI3NDA2YWM3MyBsZWdhY3ktdHJ1bmsKKzUxMTcgODRlMjI2MGRiMTc5OWIzNTBiYjI4OTY2ODM0ZjliNzY0YjE3ZTFmYSBsZWdhY3ktdHJ1bmsKKzUxMTggZDYzNTBhMzE4OTk3ODgyYzY5ZmM3NmI4Yzg1OThhNjUzZjY5NmYxZCBsZWdhY3ktdHJ1bmsKKzUxMTkgZTNlY2M0MDE4OTg5YWUzODExYjcyYWQxYjNjZDFmNTBlNGNjNWU0NSBsZWdhY3ktdHJ1bmsKKzUxMjAgZjRiM2Q2OGM3MTI0NDJjYzc0Yjg1NTgyZTU1YjMxMzU1YWM0Y2RhMyBsZWdhY3ktdHJ1bmsKKzUxMjEgZGIzZGFjZTI3OGFjMDE4OGRlZWFjMDBhMTljNDY2YTVjN2IxYWE4NiBsZWdhY3ktdHJ1bmsKKzUxMjIgOWNmNjA0YTM0MTFlOTQ1YjlmNGU1ZDYyM2ZiYmJiNmI0MWUzNzQwNCBsZWdhY3ktdHJ1bmsKKzUxMjMgODQxZjcyZGM1NDQyNGIzZGVmMzY2MGI1ZDFlOGYyMzQyMzYwNjVhMiBsZWdhY3ktdHJ1bmsKKzUxMjQgM2EzZGYyMzEzMjdjMWQwNjcxNDQwODM1NjAxYzhhNGRlMTBjZjI1NSBsZWdhY3ktdHJ1bmsKKzUxMjUgMjY2YWQxMzI4N2E0ZTBjYTU5OGNmMjI4MTVlYjEzZGZjZmM4NjliZSBsZWdhY3ktdHJ1bmsKKzUxMjYgNGViNmRkYjllOTYxYzlhYjViYTI2YTExZDNkMTNhOWU0NmRkYTU4MSBsZWdhY3ktdHJ1bmsKKzUxMjcgYjRmZDQ4ZTNhM2I4OWIyYWQ5NGZlNzk1NWJmNmNjOTFhNjI0OTliMyBsZWdhY3ktdHJ1bmsKKzUxMjggZGYzZTFlNTIxZmU2NWRlM2YwZDdjYjMwNmRkZTcwYzI1ZjJlM2JhNSBsZWdhY3ktdHJ1bmsKKzUxMjggZTcyMjU3ZTY1NTQ1NGQ1Njk0NjhkYThiMTE4OWUwZWMzMzZmMzUzNiBsZWdhY3ktdHJ1bmsKKzUxMzAgNTEzZjFjYjcwY2U2YTllY2Y0MjhhN2U5YTUzMjQzYzI5YzNlYWFlMCBsZWdhY3ktdHJ1bmsKKzUxMzEgMmY4ZThiNjEyOWY3M2FjN2EyNjMzZmQyODQzYWRkN2I1MjEwMWVkMyBsZWdhY3ktdHJ1bmsKKzUxMzIgNDkxODM5MzhkMDdlOTdiNGMzY2UyZDY1NTQ5MTVmYmM2N2ZiOGQ3YyBsZWdhY3ktdHJ1bmsKKzUxMzMgMGI3ZTE0YmI1NGFlMGVlZjEwN2I5ODMyYzllNDg4OTAyNTY5ZjA2MCBsZWdhY3ktdHJ1bmsKKzUxMzQgZTJkZDc4MTk3NTk2YmZkMThiZjNjZGI4OWY0MWJkZDBkNGM3NjJkZCBsZWdhY3ktdHJ1bmsKKzUxMzUgMzRlZWZhMjI2NzA5YWE4ZWRhYWM2ZGY0YmQ0ZDNmNmZjZjk3OGU1OCBsZWdhY3ktdHJ1bmsKKzUxMzYgYzk0NTczNWE0YWQ3MGY0MjAyMTg1YzAyYmRjNzA1OGEwZWU1NDMyOCBsZWdhY3ktdHJ1bmsKKzUxMzcgZDI0MTkwYzY1YjUxZjAzNDFkNzkyNWVlYzllZGQ3M2VmZmZlMjg3ZiBsZWdhY3ktdHJ1bmsKKzUxMzggMGZiNjU1MjBmY2QwMTJhNzUwNTFlNWMxZGNhMGQ5MzBlYzViNjVjMSBsZWdhY3ktdHJ1bmsKKzUxMzkgNGM4MGNmMDJkMTU0MGM3ODk1MDQxZGU2NjgwMGU5YTdjZWJiZDFmMyBsZWdhY3ktdHJ1bmsKKzUxNDAgNDkzYjg3MWYzNzc1NDdjNmNlM2ViYzc3NzViNjljOWRkZWJmNjNhZSBsZWdhY3ktdHJ1bmsKKzUxNDEgMzE4MTcyZmYyZjE0YzY5NzljMDk2NmI5ZmUzOWRmMWFlMDVjMDE2ZCBsZWdhY3ktdHJ1bmsKKzUxNDIgMTA3YzE4MDA5MzdlM2Y0NzFlMzkzMmUzZjI0NjRiY2MwY2RjZWM4NSBsZWdhY3ktdHJ1bmsKKzUxNDMgMGI2YzhhN2U5MzNhNjZlZWFmYjY1YTdlZGNiNjZmZTJlZWMwNmZlMSBsZWdhY3ktdHJ1bmsKKzUxNDQgMGU5Y2FlMGI1MDcyZDY4ODIwZGQwOWY0OTdhYzIxYmVkMzJiZWM0OSBsZWdhY3ktdHJ1bmsKKzUxNDUgOWU5ZjIyZGJlZDFhZjA0ZTA5NzYxMGRhNjM5YzNjMjY5MDJhYjZmYyBsZWdhY3ktdHJ1bmsKKzUxNDYgZDQ2NDRkMzkyYThmZTY4YzQzYjNjNDFiNGM0MDhmOWIzODU0YmQ5NCBsZWdhY3ktdHJ1bmsKKzUxNDcgMmQ5YjE2NTI3MjQ3ZGNiM2EzNTdiMGMwZTE4ZDAyNmRiNWZhYmEzNCBsZWdhY3ktdHJ1bmsKKzUxNDggNjkwZTQ2ZjBiZjU5ODU1ZmNjODk5MjY2OWVmYzEwNjVjNDVmZTU3MiBsZWdhY3ktdHJ1bmsKKzUxNDkgMWE0ODFhNzVhZjQ1ZjEyOTI4NjMzYTIwMDdmMjM4NWFmYzc2ZjIwOCBsZWdhY3ktdHJ1bmsKKzUxNTAgODkyOTJmNmEyNThkY2NmZTdjMjY5NGFlNjhjYTEyZDA5ZjUyMmZiMyBsZWdhY3ktdHJ1bmsKKzUxNTEgMjEwODIxZmQ1NjUwOTQ3YWQwMDhjNjRmYmE5MGVkMGE1NmJkZWM2ZCBsZWdhY3ktdHJ1bmsKKzUxNTIgNGI1N2FmMWJhMjk3MTA2Y2Q3ZWM1OGI0MDE4ZDBkYzRmZDhmMTljOSBsZWdhY3ktdHJ1bmsKKzUxNTMgOWJkYzI3ZDE1MWJhYTZiNWQ0YmIwYjk2NTYxNzZlOTkzM2Q5OGJkZiBsZWdhY3ktdHJ1bmsKKzUxNTQgMzQ3Y2YwZTQ5MmQ4MTFkNTBjNWMyODBjN2Y2NTAxMzM5ZDZiOGE1ZCBsZWdhY3ktdHJ1bmsKKzUxNTUgNzMzNWM1YjNiNDNiZDI0NGIyOTFhNWFiOGJiOWY1NDEzMDc2NzlkNCBsZWdhY3ktdHJ1bmsKKzUxNTYgYzFmNDg4NThmMTg2MGZhYzMwZTY1NTg1NWNiMDllNjJlMDQzMjVhMiBsZWdhY3ktdHJ1bmsKKzUxNTcgOTI1ZDFiZmNkOTI1OTNkMGFhYTQ2MDllNjIxMzk4MjM3Zjc5OTBlZCBsZWdhY3ktdHJ1bmsKKzUxNTggZTFkMjNhNmI5MzBiODA3YTQ3ZWQwYmYzOTFkOWEwYTQzYjViODg1ZiBsZWdhY3ktdHJ1bmsKKzUxNTkgMWFmOTIyMGM2ZDE5ZDk0NmYxN2NiOWI5OWIyOGUwNGE0ZjViYjkwZSBsZWdhY3ktdHJ1bmsKKzUxNjAgMTE1N2UxNDI3MGQ2ODc2OWQ3ODk1OWI3MTJmNWI1MTMzYmNhNTNiYiBsZWdhY3ktdHJ1bmsKKzUxNjEgZTAzOTM2NTdmZmE0NzcxZGQzYWVmNGQ3ODBmZDUyMTQxZTViMTk0MyBsZWdhY3ktdHJ1bmsKKzUxNjIgMDYyMzVmZGMxYWFmM2JkYzc1NjY3MGVmZWZiNjlhMTRlMGYyMDAwOSBsZWdhY3ktdHJ1bmsKKzUxNjMgM2ZmYjMxY2M4YTliM2EwZmFjM2FlNDg4ZDM0NDEzMzYwNWMyNDdmZCBsZWdhY3ktdHJ1bmsKKzUxNjQgNTM4YWI4MmY5MWE3Mjc1NDE2NDgwNGNiM2U4MzlkNTQ5ZjA3N2E0MCBsZWdhY3ktdHJ1bmsKKzUxNjUgNmQ5M2I0YTBmNGNlN2M3ZThjNDY3ODBiMmE5NTM4ODlhNzljNDEwYSBsZWdhY3ktdHJ1bmsKKzUxNjYgMmY0MmUyNzM4MmU5ZDIzNjhhM2Y1ZjNkODAwZDkyNmUxODMyMTU1MCBsZWdhY3ktdHJ1bmsKKzUxNjcgMTJkOGM4Mzg1NzM1ZmNhYjNmYjU5YjY4MzNlZTQwNGRhZDczMzc3MiBsZWdhY3ktdHJ1bmsKKzUxNjggMTk4NmI4NjllM2ExMzEyMmIwN2E5ZDU1MDY0MmExZTA1YTBiODNhNCBsZWdhY3ktdHJ1bmsKKzUxNjkgZjEyZmYxMzBlMGI1ZjQyNTQ1OWYwZTcwYjY2MTVjMGRlNDQ5MjRkYSBsZWdhY3ktdHJ1bmsKKzUxNzAgNzk3M2Y1Mzg3MjZjYWFjZmU2NzY3NGU5OWM3YTQwYTFkZmQ2NzcyMyBsZWdhY3ktdHJ1bmsKKzUxNzEgOWVkNDVkYmYyNzY1OGEwYWY4OWJjNWMyYjRmNjA0YmZlZWUyNzJlMyBsZWdhY3ktdHJ1bmsKKzUxNzIgNGUwNzY5NDQ0ODhhYWI4NGViM2I4YjAyYTc5ZjhiMTM2MGIzYzgwMCBsZWdhY3ktdHJ1bmsKKzUxNzMgMTMwNmU3NjFhNjIzODM3NDBhNTlmNjM5ZjE4Nzc5ZGJiOGI2ODA0YiBsZWdhY3ktdHJ1bmsKKzUxNzQgMzczYzE2MzdkMzAxMDRlN2NhZmVlMWQyMWY1NjIwZWQzNDIwNGIyNyBsZWdhY3ktdHJ1bmsKKzUxNzUgNTAwMzIzNDM5ZWIzOWIzZjcwMGE0ODkzNzFkMjAxYjE1NDRhODMxMSBsZWdhY3ktdHJ1bmsKKzUxNzYgYjY4OWU2ZjkyZjE3YTExMTAwMTEyZTMzYzEwNDllOGQ2N2Q1Y2I4MiBsZWdhY3ktdHJ1bmsKKzUxNzcgOWZlYjBiMGI1MGI2MGM0MGZlNzUyNTI0MzM3YzQ2YmQ0NWNiMjcyYyBsZWdhY3ktdHJ1bmsKKzUxNzggNzQ3NDdiZmZiNmE0ZDI3Yzg2NDkwYTBkYTk2MjhlZjU0ODgyYjBhZSBsZWdhY3ktdHJ1bmsKKzUxNzkgY2Q5ZDg2ZWNjMTc1Mjk0YzZjMTlkODkzZDE0YjBlNGVjYjRmYzAwNiBsZWdhY3ktdHJ1bmsKKzUxODAgNzVhZmFhYzg1NTY3MDdjZjAzZDU3Zjk5YzU1NjcxYjRhZDQ0NmY0ZiBsZWdhY3ktdHJ1bmsKKzUxODEgMmEzMTg3NmY3MTAyOTkwNTZmMDJiMTNjODcwODVhZTZiODA5MTNiYSBsZWdhY3ktdHJ1bmsKKzUxODIgMTliMTE5NWEzYWY4NDdlMWE5NmQ2NDUyOWYzOGUzZTU4NTMyYjg3OSBsZWdhY3ktdHJ1bmsKKzUxODMgNmM4NjRhZDUxOWEzNjg0YWZhM2JjNzE5N2RiNWE0NDJlMmIyMTM0YSBsZWdhY3ktdHJ1bmsKKzUxODQgODg5YzZkYTdiNGNhNTExOWRmN2RhZjMwMjQzNmY2YjQ0MmIyNGQwZiBsZWdhY3ktdHJ1bmsKKzUxODUgNjI2N2E1ZjIyMmJmZGVkNWUzOTNlOWE4YmQxZmFkZGQ5M2ViMzUyNSBsZWdhY3ktdHJ1bmsKKzUxODYgYWJmMTE2ZGI1MjNmZTRkYjliOGZhZjAyMzY0MDk1MGIxNDc5MjlhYiBsZWdhY3ktdHJ1bmsKKzUxODcgMzY0ZDRhNTI0Y2VjODIxZGJjZTczZTY5MWM0OWVhMmVjYzdjODJhZSBsZWdhY3ktdHJ1bmsKKzUxODggYTVjZWIzZTkzZmExMjczNWVmMWExMGNmMjg1ZmMzNzhlNjU2NTg3NSBsZWdhY3ktdHJ1bmsKKzUxODkgYTBmYzk0YjNiYjIxMjcwNDJhMWQwYzZjNWEzOGFkOGZmZGI4MTU4MCBsZWdhY3ktdHJ1bmsKKzUxOTAgNmE5ZWNiMDVjNjc5ZWQ4YzRiYzU3MGQ3YmZhOWRlNTg3MmJmYWM2MiBsZWdhY3ktdHJ1bmsKKzUxOTEgODIyMjA0MWY1YTkxZDU0Mzg0ODk4YTUyZDQ3YzA4M2QyN2RhZTJkZSBsZWdhY3ktdHJ1bmsKKzUxOTIgZDAzY2NhZTE3MGVhZjI4MjljZjgzYmQ0OWU2N2IzMzU0YzFjNWIyMyBsZWdhY3ktdHJ1bmsKKzUxOTMgZTg4MGMwMTY0YWVjZTIyNmI2NGQ2NjczMmEzYzgxNDQ3OGM3Zjk0NiBsZWdhY3ktdHJ1bmsKKzUxOTQgYzI2N2UzMzEyMDMwOGEyYWUyMTljNTc3Y2M1NmVmY2EyMDkyM2E1NyBsZWdhY3ktdHJ1bmsKKzUxOTUgNWFmNmRiMWY2YzBjZGM0MmFkY2I1MDUxZjJlZDA4ZjU3MmY2ZjczYSBsZWdhY3ktdHJ1bmsKKzUxOTYgMTBlMTA1ZTRjZjljM2I4ZjA0NTBhZGI3OGE0NzgwZjBlZjM4ODhkZSBsZWdhY3ktdHJ1bmsKKzUxOTcgOWY4MmE2YmIwMDEwZGI2MmNiODg1MDhlOWU3NzI4YTU4MTBhNDU4MiBsZWdhY3ktdHJ1bmsKKzUxOTggZGFhMTUwYjNhNmU0M2UxMmIzZTE1OWI0ZTUwYzk1Zjk1YWQ0ZGFjNiBsZWdhY3ktdHJ1bmsKKzUxOTkgZGM2NGRmN2YxYWQ2OTAwZjU2MWQ0MmYyZTMwOTFlOTlkODVjMjIyMCBsZWdhY3ktdHJ1bmsKKzUyMDAgNjg2ZjRiZmI0ZGE2MjI4OWMwN2RlMmQwYTExNGI3NWNiMzg5ZmU2YyBsZWdhY3ktdHJ1bmsKKzUyMDEgOTAyNDBlODE5YmVjYjk5MWMyNjhlMzNhODczNzM1OWI0MmZjZWMwYSBsZWdhY3ktdHJ1bmsKKzUyMDIgMzdjNDhmZGU2MWI4ZWQ4NTYyZTYzNTA4YTVhZDgwMjQzYmQwYmRhYSBsZWdhY3ktdHJ1bmsKKzUyMDMgM2NmODk2ZDI0ZTUwZGJiNGY3NDAyYTEzNWUwNWY4Y2ZiNTc0NjZiZCBsZWdhY3ktdHJ1bmsKKzUyMDQgN2RmNmZjYjQyNmY1MTQ3OWI5ZTA1NzRlNmU1ZGRmOGJjZGVjMzQwYyBsZWdhY3ktdHJ1bmsKKzUyMDUgODBiNWM4MjI3MmEyNWMxZWY4NTEzMTRlMWJmOTJkMjg1OTQ0NmFlYSBsZWdhY3ktdHJ1bmsKKzUyMDYgM2UzNzBhNGIxMDNiZTIwNzljN2UyYjhiZGI1NTUwZjhhZWE3OTczNSBsZWdhY3ktdHJ1bmsKKzUyMDcgOTgyYTViZDZkNDZkMDc2NzBmMjA4YjhjM2YzNWQwODBlN2ZlMmVkMSBsZWdhY3ktdHJ1bmsKKzUyMDggYTgyNzgwMWVkOTYzMzg0ZWFiMTZmZGZlMGVlM2EzYzE5YzFmYmU5OCBsZWdhY3ktdHJ1bmsKKzUyMDkgZjE4NzliMWEyYzJhZThkYjdmMzk1MDhjYmQwMDk1Yjk0YTgwOWRkZCBsZWdhY3ktdHJ1bmsKKzUyMTAgNGYxYjBjYzczNTA3ZDY3Mjk1OTk1YzU5MGU2MDU0YTAxODRiZWFmZCBsZWdhY3ktdHJ1bmsKKzUyMTEgM2Q1ZWMxYzIyMDU1MDIyMTU2ZThmZWU5MzA2MzVkZGU2MzA4YjE0NCBsZWdhY3ktdHJ1bmsKKzUyMTIgODUzYzQ4Njg5M2I4MmNlOTVjZWMxMGJlNGY4ZmVhN2Q0ZTQxNDkwYSBsZWdhY3ktdHJ1bmsKKzUyMTMgZTQxNjY5YTFkZWEwMjRkOWJkZTAyMmM3ZjNiNTliM2MyNTBlMzM3NSBsZWdhY3ktdHJ1bmsKKzUyMTQgMzljZDI1Njc4YjQxYWNkNDE2NDM2ZTE5MGFlZmQwYTVlNDc3MjNiZCBsZWdhY3ktdHJ1bmsKKzUyMTUgOTUxNmJhZDk3OTYxMzEyOWVkNjBmMDcxYjM2OTcwMjg2MjYxMzYxOCBsZWdhY3ktdHJ1bmsKKzUyMTYgMGFmMDFmM2UwNmNjOWU0YTMzNTVmOTU1NTMxZWMyZGY5MmRmNmRiMSBsZWdhY3ktdHJ1bmsKKzUyMTcgYWU2NDAwM2IyYTc1NjUxYzRkZTdhYmEwZjBlYTU2N2IwMmM5MjU0OSBsZWdhY3ktdHJ1bmsKKzUyMTggMzU0ZWJkZGQzNjJiMDRjNzZjZTM3NTIxODk4ZmZkZTBiZmU2ODI0MyBsZWdhY3ktdHJ1bmsKKzUyMTkgNGI3NGIzYjQzMjY5YjcxZjRiNjYwZjg1YmJlYzJkMzM2YWRkZjVmZCBsZWdhY3ktdHJ1bmsKKzUyMjAgYTEwODdhYTY0MWNkOTVmMGYwODAzZjAxNDE2ZWIwMmU3YzA5YzYxOSBsZWdhY3ktdHJ1bmsKKzUyMjEgNDM4OWE2MGZlZGNlNjYxZmRhYjc3MDA3MWY4YThlNDRmOWNiMjY4YiBsZWdhY3ktdHJ1bmsKKzUyMjIgNTIxNTYzNTJmZGQ2ZDM1Y2RmOWYzMjRhOGRjODVjOWQ4NTM5MjBlOCBsZWdhY3ktdHJ1bmsKKzUyMjMgNmNmZDY5NTg1NjM2ZjAyZWZlYzM5YWNlMzVmYzE0YmQ4YjgxMjJkMiBsZWdhY3ktdHJ1bmsKKzUyMjQgNjlhYmE2ZDlkMzc4MzUyNmUzNGFjZjc0ZDAyMGQyOGU2ZWY4NmFlNSBsZWdhY3ktdHJ1bmsKKzUyMjUgYWFmOTAyY2RmZGM0YTJhMmQ3YmE1YjMxZWRjY2E5OTM1ZTA0NDkwYiBsZWdhY3ktdHJ1bmsKKzUyMjYgMWI5ZTkwMzUzNTI5MTE5MjE2MTMzYmYxMmZjMDRiNzM1ODQ3NTljNiBsZWdhY3ktdHJ1bmsKKzUyMjcgYjQwY2FiZmRjOTFkZTI1YmNlZmVjZjI2ZDhhNzk4MmZhNDZiMTYyNyBsZWdhY3ktdHJ1bmsKKzUyMjggYmUyMWMzZTBjYzAzZjQ4ZWI2YWE0YTIwYWQ0YzVjNDEwMTYyZWExMyBsZWdhY3ktdHJ1bmsKKzUyMjkgYjk1NDg5NjBmOTQ1MGM5YWQwOWJkN2JkM2NhYjljZWI5ZjM5MWIzNyBsZWdhY3ktdHJ1bmsKKzUyMzAgYWM2YzhiMTIxOWU2NzFjZDQ1NWY5Nzg1YTU1NDQ2MGFlMmQ2ZTQxZCBsZWdhY3ktdHJ1bmsKKzUyMzEgNmQ4ZDk4MWVmNmM0MTUxYzM2Njg2NWQ2MWI0NWQ0YzYwNDE5ZTllZSBsZWdhY3ktdHJ1bmsKKzUyMzIgZmVjYzkzOWY0ZDU5NTdjZmI3YjFlNjBiNWQ1NDFjNWM5OTc4MWYyOCBsZWdhY3ktdHJ1bmsKKzUyMzMgOGVjZTkyMjdmZGUxMDRkOWZlZDJhYTI3YzMwOGViMmQyOWYwOTc2MiBsZWdhY3ktdHJ1bmsKKzUyMzQgYTBhNGFmYTM5ZDdhMDFjZDRmMzY1YTRiOGJlYmQxNWU5ODhjZTY4YSBsZWdhY3ktdHJ1bmsKKzUyMzUgNmExNjU2ZGI3ZGRlZWNiNTlmOWZmZjJjZWQ2YTYyNjJiOTU0MzQxMCBsZWdhY3ktdHJ1bmsKKzUyMzYgZGMyYWRmNzllNTIzZTEwMmVjNTcyZmU4YzQ3NDc5NDU1ZjY0MTRiNyBsZWdhY3ktdHJ1bmsKKzUyMzcgMGU1ZGFmYjg1ZmJkMmJiNjNiNzJkMjlmZWI5N2U5YTY1OTg5YWNlMCBsZWdhY3ktdHJ1bmsKKzUyMzggMzU0MzJjOWE4NzRlMmMwZDFjNmZlZTk2Y2U0YjVlN2RlZjEyNjE1ZiBsZWdhY3ktdHJ1bmsKKzUyMzkgMWEzZmYwMTQ4ZGVjZDhmZjY0Njc5M2U0YTY1NWExNjQzODc1NjkwOSBsZWdhY3ktdHJ1bmsKKzUyNDAgYjczNWQzMzg2NjUxYTA1N2Q3YjBiOGM5ZGQ1NmIyMzAyNDllOGViYSBsZWdhY3ktdHJ1bmsKKzUyNDEgZmQ3NzdhZjY3YzIzMTBkM2NjYTkxODMyZTQ5ZWVjYWYwMDIzNTVlZiBsZWdhY3ktdHJ1bmsKKzUyNDIgNWJjMGVkZDViM2Y5MzJiNDdkNDhmNjAyZGFmZmIyNjY3ZjhiMzZlZiBsZWdhY3ktdHJ1bmsKKzUyNDMgYmYxZGVkNzU5NjJkNjIwNjE1NTc1ZGYxMTY0ZTc5NzVhYTlmODU2MCBsZWdhY3ktdHJ1bmsKKzUyNDQgMTdmZGVjMmZiMzA5YTkxZWIxYWVlY2YxNTk1ODAyMzhiODE0N2RhZCBsZWdhY3ktdHJ1bmsKKzUyNDUgYWY3ZDBmZWEzZmIyYTJjMmFlMWUyMDQ4NzVlZWRjZmE2ZGVlMzk2ZSBsZWdhY3ktdHJ1bmsKKzUyNDYgNDExM2Y0ZmJhYWU1MzcyMDJkMDlhMTZlMjk0ZGI5ZDdmYWQzY2I4YiBsZWdhY3ktdHJ1bmsKKzUyNDcgMTIwM2U1ODQyMjU1Y2U2NGVmMmYzYmE5ZmEyNzYxNDFlMjk0MzhiNyBsZWdhY3ktdHJ1bmsKKzUyNDggYTVkMzYxZTJiMmUyMGM2ZDBiY2Q1MDU5M2ZjODE0Yjg4YTQ2MmM0YyBsZWdhY3ktdHJ1bmsKKzUyNDkgOWVjNDRlMzdmNmIxMzNjMzZhYzg2N2JlMzA0NDVhMmEyYzNiMTU5NCBsZWdhY3ktdHJ1bmsKKzUyNTAgM2I3ZmE1NmEzYjliY2JmYjYzMjAxNzM5ZDA4NzQ2Y2Y4NWQwNGU1OSBsZWdhY3ktdHJ1bmsKKzUyNTEgNTBiMmY4MmU2ZjBlYTQ3YWRiOTcyMTMzMTg2ZTAwOGM2MzA5YzcxNSBsZWdhY3ktdHJ1bmsKKzUyNTIgMDZmMjI4ZDYyMzZlNGNmOWFkZjY4YmU4MjY0ZjU0ODZiYmYwN2Y5YSBsZWdhY3ktdHJ1bmsKKzUyNTMgN2MzZTRmM2VlMTUyZjg4YzQ5MTY1M2U5ZDcwMjVmMTQyMDE1OGEzYyBsZWdhY3ktdHJ1bmsKKzUyNTQgOWFhYjRlYjJiM2Y5ODM3YjhkZDQ4OGM2OGRiZTkwMWI3ZDgyODllZCBsZWdhY3ktdHJ1bmsKKzUyNTUgNDE1NjU0NTZiYzIyMWNjYzU5YWRiNGFiYWI4MGRhNTVhMDk3MjZhOCBsZWdhY3ktdHJ1bmsKKzUyNTYgMjRmYzA2MTZhNjk2YzgyOTk0OWYwZmUyOTY3ZGEwNWFhOWM5ZWE2NiBsZWdhY3ktdHJ1bmsKKzUyNTcgYmFmMGI5YjdjMmE1YWE2OTM4Y2Q2YTk1OGI1YTgwMjMzODg3ZWQyMyBsZWdhY3ktdHJ1bmsKKzUyNTggYWYzYWFiNmIwN2M0M2E5NTRlNzJiYjUxNDgxM2M1NDJjMDU0NDFhMiBsZWdhY3ktdHJ1bmsKKzUyNTkgYjg5MzdlNzRmZGY1NTFjMDMyMTIzMmZiMzRhMzBhNjU5OTBkNGVmZSBsZWdhY3ktdHJ1bmsKKzUyNjAgODIzZjNhOGVjZmU0MTkzNDcwMWJjZjM4YjQ3YzEyY2Y4Y2M4OWE2NyBsZWdhY3ktdHJ1bmsKKzUyNjEgZWEzOGMzNjNkZTU4Yjc1YjQ5ZTAzNmRjMDI3ZjExZWNlNWE3NmViNSBsZWdhY3ktdHJ1bmsKKzUyNjIgZWJjMTcxNGRjNzM4YmRkYzI0NDQzMTQ4NTcyODI1MDlhNTQ0YTk0YSBsZWdhY3ktdHJ1bmsKKzUyNjMgN2YyYzBlN2VmODQyNjJjNTk1ODY0NjM0MmY4NjhmMzMzOGNhYjBiZiBsZWdhY3ktdHJ1bmsKKzUyNjQgNTljMmFjYjNlNzAyNTQ2M2Y5OWRmZTNhYTdlMzVlYzM5NmIwZTU4NCBsZWdhY3ktdHJ1bmsKKzUyNjUgNGE5OThiMWEzMzFmMGFlOWYwZjMwYzdiMWUzODc1YTA1NWNhNDg3ZiBsZWdhY3ktdHJ1bmsKKzUyNjcgYWIzZGNhOTdmZmJlYjYzNWExNmVjNWVkMzhmZjQ1ZjYyZjg4ODA4ZiBsZWdhY3ktdHJ1bmsKKzUyNjggZTkxMWYyZmIxNzljMmMzMmNhZjkyMzZiYmUyMmNkYzIzYWQ1YTFhMCBsZWdhY3ktdHJ1bmsKKzUyNjkgNzUwYTJkZDhhNDM3YmZjOGJkMzE5OWM4ZDcwMDNjMmI0NTQ5Y2QxMSBsZWdhY3ktdHJ1bmsKKzUyNzAgYTIzNjNiNmU5Yzg2ZTlhYmM1MzY5M2I2YjU5ODcwNzlkZWEyZDU2MiBsZWdhY3ktdHJ1bmsKKzUyNzEgNjBjNTc3NzczNjZmNzU1YTk3MTQ4ZmI1MGMzYWJiMGQ5ZDhkYjhlOSBsZWdhY3ktdHJ1bmsKKzUyNzIgYjdhMDZkYjg1Y2FmY2U0MTNkMGM1NWRjZDkyNWFmMWQ2Y2YyNzgxYiBsZWdhY3ktdHJ1bmsKKzUyNzMgZDc2YTcxNGQxY2VhYWFkZTAwNzgwODE0YzNjNzJiYjkzMGQ1NDZhNyBsZWdhY3ktdHJ1bmsKKzUyNzQgNWNhNWQ3N2FmZDI4YmFjNzM3ZWIwYWFiOTc4NWU0MzFlZGRiY2I0ZCBsZWdhY3ktdHJ1bmsKKzUyNzUgOTMxOGFjNTE2OTFlNmQ4NjM4NGZmZDQ0MzBkMjE2NGEyNjEwZDM0NCBsZWdhY3ktdHJ1bmsKKzUyNzYgNmZmY2JlMGZlOWQzY2QwMGYyZmUzMjk4MzY4NzYzOTExOWMyZjliOCBsZWdhY3ktdHJ1bmsKKzUyNzcgZmMyMTkwZWMxYmVhZDI4N2JjMDZlMTgxMTMyNDZiMDZmOWQ2OWYxNiBsZWdhY3ktdHJ1bmsKKzUyNzggMDdmYzRmZWZiNjgzNzU5NTFlZTc2MGM4YTUxNTNjMjM0NjcxNGRlYyBsZWdhY3ktdHJ1bmsKKzUyNzkgZmIzZGFmOWIyNDU2ZGMxYTNkOTlmNTZmNzhjNWU2MjcwZWVhZjFlOCBsZWdhY3ktdHJ1bmsKKzUyODAgOTk5YjViZGMxOGNlOTk2YjAyYTA3NmFhN2MwYmYwYTk1M2FiMTQ1MSBsZWdhY3ktdHJ1bmsKKzUyODEgYzZmZTgwY2U3YzIwOTNhMWFjYTU1ZGYwYWEyY2NlMDVkZDkzOTliMiBsZWdhY3ktdHJ1bmsKKzUyODIgMWU4MmRkNmRmZTJlZjQxNmY0YjhhMjhhZjg0ZmY5ODQzYmNiYTAyZiBsZWdhY3ktdHJ1bmsKKzUyODMgYzRjMzlkMTcxZWMzYjA2M2Q2ZGJkYTI2OGMyYjFmNTVmOTU3ZTI4MiBsZWdhY3ktdHJ1bmsKKzUyODQgOGI4ZmIyNGQ0ODM3OTRmMmU5MzAzMTM5MmU5MzIwODMxMWQ5MzM3ZCBsZWdhY3ktdHJ1bmsKKzUyODUgYzliNzI5N2EwNzU4NzIwYjdjYTQzMjVlMGU0MjE3YWIxMjljMDc5OSBsZWdhY3ktdHJ1bmsKKzUyODYgODIyNWM2NTgxYjNkMzZlMjVlYTEwNmQyNDU0OWY5OGIyOTk0NGI4NiBsZWdhY3ktdHJ1bmsKKzUyODcgNjhkN2VhZTZjYmQ2YzU2NzUxMDQ5ODc5NjE4YmFiYTUyNDk1MmIzZSBsZWdhY3ktdHJ1bmsKKzUyODggNDNjY2ZjZDk4ZTgwNmVkYWQzZmFhYTZiNGY5NWM0YTdiYjMyN2I5MyBsZWdhY3ktdHJ1bmsKKzUyODkgNDA3Yzc4NDZiODg2Yjg1OGJmODgwMzg0YTJmMmIzODZlYTZkMjJhNCBsZWdhY3ktdHJ1bmsKKzUyOTAgMjgyYjBiNGMxZWVhNTkwYjkwYTVmZjEwOWYzNmMxZDYxZWNlNTM3NSBsZWdhY3ktdHJ1bmsKKzUyOTEgNjVjNzEwNTg2OGY4ODk5NjRlOGU0N2UzODEyZTY3MmIzMjFlMjkzZSBsZWdhY3ktdHJ1bmsKKzUyOTIgYmViYjBlYTdkZTIwMGNlYzNiZmEyZGZlYTNjNTgzNjBiZjg1N2ZhOCBsZWdhY3ktdHJ1bmsKKzUyOTMgY2Q5ZTYxMzUyNDRhNTcwOTBhNjcyOWYxYjUyMzg4MzY0NWQwOTUxZSBsZWdhY3ktdHJ1bmsKKzUyOTQgZmYxZmFhNGNjMWRmYmM4OWI3YWZmODkzOTBlYTM2NGJhZjAyMDc2YSBsZWdhY3ktdHJ1bmsKKzUyOTUgNTlhOTY4OWMxMWE4YjAxNDUxOGNjNDMwYWMyNWU2YTdmMjFiMTU3ZSBsZWdhY3ktdHJ1bmsKKzUyOTYgOTQzZTFjNDgwNGQ4MDA2MzVhYzk3NjUzZTFmYmMzYmE5MDUyMDMwZSBsZWdhY3ktdHJ1bmsKKzUyOTcgYmQ3OWNkNzY4ZmY4ODBlNzFkZTg2MTYwNzlmMzIwYzlhNmY4NDUzNCBsZWdhY3ktdHJ1bmsKKzUyOTggZWVkZDZjMWYzYWU3ZTRjYmQzNmM5NmY4ZDE5OWExMGIyYzU5ZWJmNiBsZWdhY3ktdHJ1bmsKKzUyOTkgMWZkOGYzMTZjYmU5MGY4OTQwMGM4ODUzYjkxODcyMzJjMDBmNzcwZiBsZWdhY3ktdHJ1bmsKKzUzMDAgMTY0Mzk5N2YxNzE4YWE2NGY1MzIwZTRjYzc3ZWYyNTIzOWY5NjEyMyBsZWdhY3ktdHJ1bmsKKzUzMDEgNGRlYTNmNTU0NWNmM2Q5MzUyZmU0MTk5MDlkNzM0NDA1YzZmZWQzYiBsZWdhY3ktdHJ1bmsKKzUzMDIgN2M3YjM3MDRhNjhmYTIxMTBjMDcxM2EyODUzNWMxMTdlYmU4YzliOCBsZWdhY3ktdHJ1bmsKKzUzMDMgZDkyZWY5NGFmZWZiZWNlZTY2YjgxMTEzOTE4NDhlYjI2MGYxNzA2NSBsZWdhY3ktdHJ1bmsKKzUzMDQgYjk4OGE0YWNhNmY5NjBhMjhiMjk1Y2M4YmExOWU1NjJkODkwOTA1MCBsZWdhY3ktdHJ1bmsKKzUzMDUgOWIxYTMyNjcyN2RmZDc3MGFhZWEwN2QwNGI5ZjRjMWU2ZjhmMzhlYiBsZWdhY3ktdHJ1bmsKKzUzMDYgMmM3M2M4YWI4YjgyYWU4MmQ0NWY4MWU4MzA0MzhhNTgwYjg2ZWM4MSBsZWdhY3ktdHJ1bmsKKzUzMDcgZDUzOThhY2FmYTJjY2M5M2VlYjE1NjNhNWQ0YTBhZTFlOGIxMzI4MSBsZWdhY3ktdHJ1bmsKKzUzMDggNjQ5MjhmNmE4ZTgwZTA2Y2UyNDAxOWI3ZGQ3YTYxYmU4MDQwYWJlZiBsZWdhY3ktdHJ1bmsKKzUzMDkgNDIwODc0ZjdkOGJkMWZmMDQ4OWI0NmEyZTE5NGZlYTM4MGFmNjIyMSBsZWdhY3ktdHJ1bmsKKzUzMTAgOGQ5MmEzYmI5YzFmZmFkY2I3YzIxYTFlNWEzZGVlMjQ5Yzk4Yjc3YyBsZWdhY3ktdHJ1bmsKKzUzMTEgMDI2MWJmNWIzODE5YjAzZDgzZjI1NDU2Mjk0NzI0NDYzNDYwNDAyNiBsZWdhY3ktdHJ1bmsKKzUzMTIgMDUxYmFjYWI1OWFmZTI1ZTMwNjk4M2ZlNDBiNjFkYzE1MmY4ZmJhNSBsZWdhY3ktdHJ1bmsKKzUzMTMgZWFlNGIyYmE3MjJlYjRjODRjM2RlZTllMzE0ZDE1ODlhZGE1ODNhMSBsZWdhY3ktdHJ1bmsKKzUzMTQgNTYwYWNjMjVmODk2NjAzMzJhMmRiMDY2OTMxYTdmMDRlYTA4NjliZiBsZWdhY3ktdHJ1bmsKKzUzMTUgNGY2ZDVmZTE5ODEyMmYzZDYyZGQ2NmFjOTZhNzk2ZTE2ZjRkMjMxZCBsZWdhY3ktdHJ1bmsKKzUzMTYgOTdjZmM0NmUzMzAyYzE2NmQ1N2JkMzVhOWI5M2NjYWIyZDQxOWVjZCBsZWdhY3ktdHJ1bmsKKzUzMTcgZTM3OTVkYjRhZGY4OThmYzIzZTg1ZTJhNWYyY2E2ZjE0NGZiYTA4YyBsZWdhY3ktdHJ1bmsKKzUzMTggYmVlZWZmZjFjNDQyNjUzMzY0MjFmMGRhZmM3ZDRiOThmZThhNzNiNCBsZWdhY3ktdHJ1bmsKKzUzMTkgMWVlZWJhMDlhMzA2NDk3MWFhNmQzZTFjY2I1NGI5MzM4ODJkZmVjMyBsZWdhY3ktdHJ1bmsKKzUzMjAgZDQyOTQxZDNhOTVmNDVmNjYyYjQ3N2I3NjNjNTgzYWI5ZGMyZTczMiBsZWdhY3ktdHJ1bmsKKzUzMjEgZGQ4YTMwZTVmNzQ0MzRjMjg5ZTY1MTFjYTY4MzFmMDQ1ODIyNjBkNSBsZWdhY3ktdHJ1bmsKKzUzMjIgZTZiZWMxNDlhOGQ3MjM5N2VmNWUzYjlkZWI1MWM5MGM0YzBlZjIwMyBsZWdhY3ktdHJ1bmsKKzUzMjMgYTdhZjk3MGE5NGE0MjcyYmNjMWY0ODBkNTQ0NGM4ZjFjMTRlYjgyNSBsZWdhY3ktdHJ1bmsKKzUzMjQgZWViYmRiZWU1NGY5MDIwN2Q2ZjM5ZjJkNGY3MzM0ZGM4MzFhMjU3MCBsZWdhY3ktdHJ1bmsKKzUzMjUgZWIxZWQ0ZDg0NjI5MGQ1MjljYTE4N2FjZTljOGM0YWJkOTFiM2M2ZCBsZWdhY3ktdHJ1bmsKKzUzMjYgYmEyYjMwOTcyZmZlYTczNWU0Nzk1YjljZDZjYTI2MmQ0ZTc1ZDk4ZiBsZWdhY3ktdHJ1bmsKKzUzMjcgNmFlOWIzNzdlNTIyYTRlZDAyMGExOGI1Njg4OWU1MzEyZjBiMTMwZSBsZWdhY3ktdHJ1bmsKKzUzMjggZGM2YjNlNzZjY2U2NjQyNzc3ZTA1ODFkNDk2MzljYzFkMDBhYjBlMyBsZWdhY3ktdHJ1bmsKKzUzMjkgZGY4Y2VkYTg0NTQ1ZTc1MDNjMDhjZmFlZGE1ZjNlYWM3NTVlNTcwYSBsZWdhY3ktdHJ1bmsKKzUzMzAgMTBlMDA3YWVmMWNmZjEzMGE3ZmFlNGMwNjFmYzY1ZmZhODQ3MzllYSBsZWdhY3ktdHJ1bmsKKzUzMzEgNWY5NTE5MTJlOTk1OTBjYjRmMWYwOWNlMjJlZjRlZjU4NTFkZGYxNCBsZWdhY3ktdHJ1bmsKKzUzMzIgZDQwMjkwZTQyNDU1NTZlOTU3NDNhMDZkNGE1NDFhNzljZWViMDc4NiBsZWdhY3ktdHJ1bmsKKzUzMzMgMTQxMTFkNjY1NzdkZDU0NjRhZjdlODk5MjMxNDY0NjM5MGRhMWI3MiBsZWdhY3ktdHJ1bmsKKzUzMzQgYTE2OWU2ODczNGZmMTBlYjE0Zjc2NGU5ZDZkN2RkZTc3YmI4ZGY0MSBsZWdhY3ktdHJ1bmsKKzUzMzUgZjY1N2Q2NzgxMmFmYWU4ZDAyNThkYTQxNjA3ZGQzZmNmZjU5YzRjOCBsZWdhY3ktdHJ1bmsKKzUzMzYgYjlhNjI1MDFlNzZkYzg5ZTk5ZWJmYjJkNjg2MDIxYzQxNTI3MTFhOCBsZWdhY3ktdHJ1bmsKKzUzMzcgNTIwZTE4NTVhMjRkOTBiMjFkNWNkYzJjNjYwODM5YTlhZmZiMzE2ZSBsZWdhY3ktdHJ1bmsKKzUzMzggMDUzNDAyNWNlZmU1NTZmYWM3ZWMzNGQ0NzkwMzllY2JiYmY1MmM3NiBsZWdhY3ktdHJ1bmsKKzUzMzkgZDNiMDdiYTNlMTJkZjNiODI3NjE0NTFiMzBjMzg3YTZjOTZkYmQ0MCBsZWdhY3ktdHJ1bmsKKzUzNDAgMzE1NzYwYmEwMDQxZDA0Y2JiYjc1ZTMyMWQyODZkNGEzN2ZmZTkyNSBsZWdhY3ktdHJ1bmsKKzUzNDEgOTI3ZjQ4MzlmYmZhMTQ4YzU3NTc4MDAzOTY5YzczZGJjODczYmI5MiBsZWdhY3ktdHJ1bmsKKzUzNDIgNzE1ODRmZTc3NDljMzVmZDhlYWY1NzdlZTU2YWJjYjM1NzVjMWFlNyBsZWdhY3ktdHJ1bmsKKzUzNDMgODUxNDBiMzU0ODkwMWY4Nzc5MzU5OGQ5ZjIwOTRiZGJkZmJhZWQ3YSBsZWdhY3ktdHJ1bmsKKzUzNDQgYmVlZWE5NzU3ODc5ODk3ODk5YmYyNDc4ZGIxZTJkNGFiMTgyMDI2YSBsZWdhY3ktdHJ1bmsKKzUzNDUgNWE1MjE5YzhjMmU2NzRmYzQwZmJmY2JjMDcxYjA3NmVjMWJhMzI0OSBsZWdhY3ktdHJ1bmsKKzUzNDYgMzYzN2RhNGM5OGNiMzEwMTQ3ZjA1OGVhZTM2MGRlOTg4MzJmZDMwOSBsZWdhY3ktdHJ1bmsKKzUzNDcgNmYxZGRmMTEzOTgyYWRhMThhNmIzOGI5ZTdmZmU3NjIxNjg0ZjNiMCBsZWdhY3ktdHJ1bmsKKzUzNDggYTBlODI0NmQ1MjM3OGQ1MTg5MWU2MGEwNjlmY2ViYzZhYTI3MTlkZiBsZWdhY3ktdHJ1bmsKKzUzNDkgZjg4YmNjYjU0OGVmNGMxNTU0YTRiODQxMTcwMTI3YTA2OGU2MTY3YiBsZWdhY3ktdHJ1bmsKKzUzNTAgNTFjOWNmZmYzMWYzZTE3ZWEzNDcyMWIwMDBiZjZhYzgzMTU3ZGEyYyBsZWdhY3ktdHJ1bmsKKzUzNTEgZTAwNmVkODhiNGFhNDY3ZGVkN2JhYTA2MDE5ZDU5ODJkMzJkODJmMSBsZWdhY3ktdHJ1bmsKKzUzNTIgMzYzYWY3ZTNlZDJkMjNjYjc5YjU5NzJiZTc3YmEyZmNkNTgyZmQ0MSBsZWdhY3ktdHJ1bmsKKzUzNTMgMjFlMTA1NDYwYTQ5OTllOGJmMTdhYjEyMWY2ZjBlZmZiNzQ1ZTU0MCBsZWdhY3ktdHJ1bmsKKzUzNTQgZWMwYjQyODg5MjQzYTdmOWU2YmM3NTY4MjAyM2JjMzg3OTFlYzFjNyBsZWdhY3ktdHJ1bmsKKzUzNTUgNmFiZDE0NDg1ODg0ZjYxYjhkMTE4YjZmMzE0MDVmM2QxZjExNjg4MiBsZWdhY3ktdHJ1bmsKKzUzNTYgZTUxM2YwZDY1MzY4YzFlNTgxYWQ2MTZhZmQ0ZTkwYzk1MzAzMmJmMiBsZWdhY3ktdHJ1bmsKKzUzNTcgMDRlMTY5MGZiNGQxMTc0OTYyYjM3YTYxZGM4MzM0OGZhNDNmM2RlZCBsZWdhY3ktdHJ1bmsKKzUzNTggOTY0ZDc2ZjQ5YTVlY2E5NWU4ZWQyMzU1OTdlNzdlNGViYWQzOTE5MyBsZWdhY3ktdHJ1bmsKKzUzNTkgMzNiMTU0YjZjNjFiYjlmZTllNDhiMzA1NzU0MTUxZDY4MmMwODFlNCBsZWdhY3ktdHJ1bmsKKzUzNjAgNDUwYWQ1NDk2NDA3NzAxZGVmYzgwODUxNWRlYmFiMDMxMGJjYzI0OSBsZWdhY3ktdHJ1bmsKKzUzNjEgNDA5NTc4MmM5NDBlYWM0MGU4Y2E1ODE0MGIwNmQ0OTk5Y2NhYWIwMyBsZWdhY3ktdHJ1bmsKKzUzNjIgODFiNDEzMjRkMjZlYjhlNDZjMTY0OTNkMTA3MWE0NDNmYjA3MDdkMCBsZWdhY3ktdHJ1bmsKKzUzNjMgZjBkOWY4MDBhNGFhYzdhZGExZWI0YmUxZjdhOTViZDA4ZDQ4MTBiNyBsZWdhY3ktdHJ1bmsKKzUzNjQgNGQ2OWZkZWU5ZjVkNDI5YTg0MGExYzE2MTI3MjAzMGEyMTk2OTdlMiBsZWdhY3ktdHJ1bmsKKzUzNjUgNTZlNjI4YTc3YzhkNThhMzAwOTMzZGY0YmM0ZDRmM2MzNzQ0Nzk1NiBsZWdhY3ktdHJ1bmsKKzUzNjYgNjVmMDZmYzM5OTYwMGIwNWRhNGYxYmZhMTk2ZDk2NWNjY2IxNDhiZiBsZWdhY3ktdHJ1bmsKKzUzNjcgMGFjYmQ4NWJjZGJhMzY1Mzg4MWE0YjAwOWFhNjQ2ZWE1YjBkNDNhYSBsZWdhY3ktdHJ1bmsKKzUzNjggNTdlYzI0ZTBmMzVhODBmMDI2NWZlOTc4MzRlMmU2YzBlY2JmMDM3YSBsZWdhY3ktdHJ1bmsKKzUzNjkgMTM1ODFiNDE3ODM3Yjg0NWJjYjkwOTA2MDlkYjlhNzMzYTlhNmRmOCBsZWdhY3ktdHJ1bmsKKzUzNzAgNzM4Yzc0NjE1YWM0ODk4YWNkY2YwM2RmN2ViY2Y5MmIwYjMwMWFhNiBsZWdhY3ktdHJ1bmsKKzUzNzEgMDI0ZmRkOWNjZGYyNDBiZDU0ZmViZWFlMTJmNDU0NTEyY2UwNzc1MCBsZWdhY3ktdHJ1bmsKKzUzNzIgMGFmZDQyOTYwYTFmZDM2MGIwZjk2ODFhMTM2ZDY2ZTg4NjlhYjNjMSBsZWdhY3ktdHJ1bmsKKzUzNzMgMjE0MzVhMGI5YjExNmE0OTgzZjhmMzVlZTNiYTZhMGYzYjJiYWU3NiBsZWdhY3ktdHJ1bmsKKzUzNzQgODk1N2JjZWJmMTJjNGZiMjk2YWZlMjQzNWUxMDJlZWFmOTBmYWE0MyBsZWdhY3ktdHJ1bmsKKzUzNzUgNjE5ZjMxNjU4YjNiYTdiMWFhMGYzMDFjNDlhMzU4N2JjZDhjNjQyOSBsZWdhY3ktdHJ1bmsKKzUzNzYgZjliMTA2OWEzZTI2NWQ5MGRlZmJjODAzNzYzZGY4MWViODdlYTQwMCBsZWdhY3ktdHJ1bmsKKzUzNzcgNWEyNjEyZmI2YzBlMzFiMDdlNjIzYjVkNDZiNWEwM2QyMjdkMGFmOCBsZWdhY3ktdHJ1bmsKKzUzNzggNDI5ZDdlMWIxZjJiOGMzNjgyY2I0OGZkYmIxZDdlMGUwMGJmMzIyYyBsZWdhY3ktdHJ1bmsKKzUzNzkgZGY3YjE1YzFlOGI3OTZmZjRiYzI3MWNlOWQzNTUyZGEzMTU3Mjg4OCBsZWdhY3ktdHJ1bmsKKzUzODAgNTFkZDA2NWE5N2E2MTRlYzIwYjA4MTlhODYwM2ZlNDQwMzFiM2QzZiBsZWdhY3ktdHJ1bmsKKzUzODEgZTE2ZTE4Yjk2MjZjOGYyZWVlMWFhNmI3OGY3OGMwOTgyZDhlZTdlNyBsZWdhY3ktdHJ1bmsKKzUzODIgNDUwOWRmZTE5YjY4NjBkZjFhNTI4MGQ0ODlmNGE0MTY2M2RhZDE3NyBsZWdhY3ktdHJ1bmsKKzUzODMgNzY0YjBmYzg2N2E0NzVjN2I3NDg4MTcyZTAxYTgzM2U4MDFlZTFiNiBsZWdhY3ktdHJ1bmsKKzUzODQgOWZhZDAyOWY4MzhmZDFiOTJmMzM2ZTlhYjQzNmM2YjBiOTUwMmZjZSBsZWdhY3ktdHJ1bmsKKzUzODUgY2ZhOWIzYTg0ODcyZWFmOWQ5YjI2NzFjMDE0NGUyY2ZkMTJmNjdhNCBsZWdhY3ktdHJ1bmsKKzUzODYgODExZDlhOThlMThhYjQxNjI3ZTM4YzFlOTNiYzVlMzJmNTEyMWEyOSBsZWdhY3ktdHJ1bmsKKzUzODcgMTc3ZjU3NTcwOGJiMDkwYjE4ZDE5NjE0NTExNjRjNDVjMDlkNjNjMyBsZWdhY3ktdHJ1bmsKKzUzODggMGM1MGVjOGU4MzU4ZThkNGEwNzY5ZjIyYjc0YTRlNTcwZDg1N2M2MSBsZWdhY3ktdHJ1bmsKKzUzODkgNGYwODJiZTU5MDJhZTE1Mzg2ZTE2Nzg1NDhiMzllMTM3ZGYxZTRmOSBsZWdhY3ktdHJ1bmsKKzUzOTAgMTc2MzU2MDRiZGNlMTVhNGNiMmNjNjE1OWQwNjYxZmQzOGZiNjAwYiBsZWdhY3ktdHJ1bmsKKzUzOTEgNDQxNDVlZWI2MTAwYzljMjVlYWUxNjg3OTM5MjNhNjQxNjI4MDNlNiBsZWdhY3ktdHJ1bmsKKzUzOTIgNWViOGJkZTMwMGI3ZWRlMTQzYmEyOTY0ZjNhYWE2OGZhZTAxMzliNiBsZWdhY3ktdHJ1bmsKKzUzOTMgNGE1MzQ4MzkzOWMxZWI5OTI5MTg5NmI5N2EyOGMzZDFlODMyMjM2MCBsZWdhY3ktdHJ1bmsKKzUzOTQgMGFkOWQxMjNmZjU1ZGYzNDk1MjRiYzI0MjMyYzVhOTY3NTI5YjIxZCBsZWdhY3ktdHJ1bmsKKzUzOTUgNzkyZTM5ZGZlMjE2MTZhNjQyYzU0MTRkNTliMmJjNWY0YzljMTQxZSBsZWdhY3ktdHJ1bmsKKzUzOTYgN2QxZWNlYzI1YzA2ZWRmYTQ5ODc5NzEyMTk1MjdkOTk3NWY4YzY0YiBsZWdhY3ktdHJ1bmsKKzUzOTcgNzM5Mjc5MDMyOGJiZjNmZDdmYjMwMDYyYzM3ZTcyN2JlZWU0NTEzOCBsZWdhY3ktdHJ1bmsKKzUzOTggZGNlOTE1NWIwNDAxZWQ4N2ZhNDQ5ODVjN2EwMzM3MjlhMmQwMjNjNCBsZWdhY3ktdHJ1bmsKKzUzOTkgZWZiZGM1MGU3ZjU0YzUzYjcyNzRlZDMzZTM1YmE0ZWE1Zjk1MWRhNiBsZWdhY3ktdHJ1bmsKKzU0MDAgN2UxMjY1MzEyZGQ0Mjc1M2M4NmVlMDYzYWU0YTZiYTczZjY1NzYwNiBsZWdhY3ktdHJ1bmsKKzU0MDEgY2I1Y2NiYmExODU2OGViMzg4MjMwNGUyYTEzZTg5MTcyYjY5MjJmMSBsZWdhY3ktdHJ1bmsKKzU0MDIgOGFhYjgzY2M2MGEwNDFjMDc2NjdjNjMzNmQwOGJiOGMwYzNmMzVmMyBsZWdhY3ktdHJ1bmsKKzU0MDMgMDk3MGViZDMxNTM2NzQ0ZTM4OWYzNzEyYjQ4MjcyZDhhYzVkMDkwNCBsZWdhY3ktdHJ1bmsKKzU0MDQgMWQ4NjI2YmM5OWM3MTAyOTFiNTAwNTUyNDczNTM0MmI3NTliYjgwZiBsZWdhY3ktdHJ1bmsKKzU0MDUgZjAxN2Y1Y2RiNGJkYjI4NTQ5ZTg5MjRmNjI0ODQ3MzcxNmUzNDY0OCBsZWdhY3ktdHJ1bmsKKzU0MDYgNGRmZGYyMzRjZGE4ZjUwMzMyMzlhNmMyZGVjOGQ0YmI0ZTc0YWUzNyBsZWdhY3ktdHJ1bmsKKzU0MDcgNzA4MmMxYTFmOWFiOTg2ZmMxMjRjOGZkNjZhYzFjYzY1MGUzN2Y5ZSBsZWdhY3ktdHJ1bmsKKzU0MDggOTdmN2NmYWJlMDdlN2E5NDBkY2E1ZjkxY2Q4MmJkOTY3MDdlMDI2ZiBsZWdhY3ktdHJ1bmsKKzU0MDkgMzcxNTIwNjM5N2ZlOTA2MGJkNDgyNzJkMmViNDNmZGFkNmVmMGJlMiBsZWdhY3ktdHJ1bmsKKzU0MTAgOGVkYmVhYTJiYmY3YTcwMmVlYjM4NDdlYzBlMjA5ZThiZWYyZWM2MyBsZWdhY3ktdHJ1bmsKKzU0MTEgYzA5OTdiNDYyMzQ0YjQwNjYyOTBlMTA4OWUyMTBjMWUzZDdhY2Y0YyBsZWdhY3ktdHJ1bmsKKzU0MTIgZjE3YjdkMGE3NDgyNDRlOTc0ZjdjMTA2OGNlMGEyMzE2MDY0N2EzNyBsZWdhY3ktdHJ1bmsKKzU0MTMgMTBjMTAzMGI3MGFkZThmMDEzZjUxMzkwOWEwMTJjMTA1MDUzZGRiOSBsZWdhY3ktdHJ1bmsKKzU0MTQgYTk4MGQwNzYwNTJkYWJkYzE5NzJlMTg2OGU2YzA4NWJhMzMwY2U1YiBsZWdhY3ktdHJ1bmsKKzU0MTUgMzAyOWU4MWVkYmM3NzViOTY3MTEwMjQ1OTcyZWE3YzlmMWFmODk5YiBsZWdhY3ktdHJ1bmsKKzU0MTYgYmMwODAzMDg0ZTYwYTk1YmQ3ZWEzN2EwMTA1OGVmN2UwZmI3MTM4NyBsZWdhY3ktdHJ1bmsKKzU0MTcgYTFhOWI3MzY0YmMzNDg2NmNmYmI5NDY3OWZjZjcyYmYyNjQ0M2QyYyBsZWdhY3ktdHJ1bmsKKzU0MTggMTFkODk5MTRjN2I5YjFmM2Y1ZjljYjMwZTUyOTY5ZTdhY2ZmNDkwNyBsZWdhY3ktdHJ1bmsKKzU0MTkgMjFkZjQyMWYwM2ZlMGQ5NjhlNTIwN2Y1ODhlNmMwODQ3YzBiZTY0MiBsZWdhY3ktdHJ1bmsKKzU0MjAgNDVhZDFhOTM5ODZhMGViZDJjOTkwNjQzNDliMzJjNGU1Y2FhYzA2MyBsZWdhY3ktdHJ1bmsKKzU0MjEgYzVjYjNhNTM5MzNjMzUxYTNjNDNmMTAyMzE0M2U1MzE1ZDE2MTEzNiBsZWdhY3ktdHJ1bmsKKzU0MjIgNTI3ZDFiMjkyNTI1MDYyOGViY2RhYjU4ZGE5OWIxYmY0M2Q4M2U1ZCBsZWdhY3ktdHJ1bmsKKzU0MjMgNGQ3ZmQ5ZmY3OThkNTUxOTk1ZGZkNDJhZTRmNjc1ODAzOGMzYzNiNSBsZWdhY3ktdHJ1bmsKKzU0MjQgY2M5MjIyYjk0N2VlMGExNDc1ZTRmYWE0ZDYzNmZmMWMxZTZjZjEwNSBsZWdhY3ktdHJ1bmsKKzU0MjUgNGY5ZDRlNzMwNTdjNzYzMjM5MGQ2ZGU4MTk4NTJiYmY5NTBjY2FiZiBsZWdhY3ktdHJ1bmsKKzU0MjYgZWI2ZWI2MWI2MDZmZmQzMjU2OTk2ZWNhYzZkZjEyZDJjNzc5ZTE5MCBsZWdhY3ktdHJ1bmsKKzU0MjcgZjNmN2MwMWJjOTY2Y2QyNzgxZmYyNjYyZmM0NzY2MDZiNmJkMmUyMSBsZWdhY3ktdHJ1bmsKKzU0MjggMWM5MTlkMDJhNjQ1OTc1NDg0YmM3ODJjYWMzNjFkZWZkMjVhMWE3MCBsZWdhY3ktdHJ1bmsKKzU0MjkgZjcyYWJkNjJkNTA4M2Y1N2Q1ZmFhMDY2MmFkODg0NzBkMDk5MDYyMiBsZWdhY3ktdHJ1bmsKKzU0MzAgMDIzNTI3MzQyNTk5NmEzNjJkNTlhMGJhZWUzY2FiNGE0ZmY1Njk5MiBsZWdhY3ktdHJ1bmsKKzU0MzEgMTIyZDE0OWZhODAxNjQ2MDc1Njg0NzIwNTQ2MDkyZTJkN2VjM2U1MiBsZWdhY3ktdHJ1bmsKKzU0MzIgZDAwNzJkMWRmODJjMmI3ZjlkZTAxOWVmZWMwOTRiMjgxZWQ5M2UzNCBsZWdhY3ktdHJ1bmsKKzU0MzMgZjlmYmZkOTAzMTUzMDJkZTNmOTFjYmU2N2JlNDRjN2M0NzNmMWE0NSBsZWdhY3ktdHJ1bmsKKzU0MzQgNzQ5NTNhNDE2MDdjMWE2M2UwYTU5MzE5NTgzYzA1YTM3MGM2ODk4MCBsZWdhY3ktdHJ1bmsKKzU0MzUgNTIxMzA2Njc5ZTM0OWVmYzJmYmUxMGJmYmIyMDYwZDAxYTNkYTg0ZiBsZWdhY3ktdHJ1bmsKKzU0MzYgYzAwZmFlMzgwZGM3OGQyYTlmNjBmNTNjZjVlNzY3MTNlMTAwMWIzNiBsZWdhY3ktdHJ1bmsKKzU0MzcgY2ZjNjZiOGNhMjAyNzAwMWZmZWNiNDM4N2JlZDI4MTA3NzBjY2VlNiBsZWdhY3ktdHJ1bmsKKzU0MzggZDIzZDczYjRlNThhOWZmYjBjNzAzYTJkMmY0Mzg5NzZlMjcxNTI4NiBsZWdhY3ktdHJ1bmsKKzU0MzkgOTk5NDVmZGE3MTlkYjIyMjFiNDYxMzQwOGMxMDJiOWY5ZDllYjQ2ZiBsZWdhY3ktdHJ1bmsKKzU0NDAgOTg2NGZlMDU5ZTBkYzRjNTA1YThjMTIwMjZkN2RhZTE4MGQzOTNmYiBsZWdhY3ktdHJ1bmsKKzU0NDEgZDFjNDU4Yzg3ZjRhNmIwZWRmYWM2YjQ2ZmI0NjFiNjA1NGYzNzQ3YSBsZWdhY3ktdHJ1bmsKKzU0NDIgODIzNTZiZGRmNzEyY2ViYmU2ZTMxN2Y1YzczMWVmMzgzMTIwZDA3MiBsZWdhY3ktdHJ1bmsKKzU0NDMgNGRlNzc5MjMyYWE0YzBhNDlkNjEyOGI2N2YzZmE4ZmJmY2MwMDA0MyBsZWdhY3ktdHJ1bmsKKzU0NDQgNDQxODY2YmUyZWM5OTE2YTIwYWQ3ODc5MTljNGEzZGQwYWY4YzQ5NCBsZWdhY3ktdHJ1bmsKKzU0NDUgN2E2N2RiY2I2ZDgzY2YyYjBhYmYxMjNkOGRmNDhhYTlmYmI1Nzk5MSBsZWdhY3ktdHJ1bmsKKzU0NDYgN2VlYTliNDI2ODAyNGI1MGQ5OWQ0MzJiYjRmMWJiNDlmNTFiYjYwNSBsZWdhY3ktdHJ1bmsKKzU0NDcgYjZjZmEwNjNiODliYjBiYjEzZTdhZjI4ZjljZDIxM2FmZmYyN2I1ZCBsZWdhY3ktdHJ1bmsKKzU0NDggNTZhZDI0N2NiZmNiZWQwM2MzYzMzZjdhNDI4OTAyZjE3M2IwZDQyMiBsZWdhY3ktdHJ1bmsKKzU0NDkgOGQyOTA3ODU2YjM3ODQ3MDEzOWMxZmQ2NTJjM2QzYWFkMjllMWJkMSBsZWdhY3ktdHJ1bmsKKzU0NTAgN2IzOTExOTYwNTY0MTVmNTI2ZDRlMWExM2ViZjdjNGFlOTc3YjRmMCBsZWdhY3ktdHJ1bmsKKzU0NTEgNGMxZDgwOTUzOTUwOWI4ZTZiZTcyNGNkMDMwOWI2YmU0YTFjMDhiYSBsZWdhY3ktdHJ1bmsKKzU0NTIgMGQ3MTAwZmZiNjFhN2U3MzhhZmIxMGY5MTljNWNjNTUxNDQ4Y2YzZCBsZWdhY3ktdHJ1bmsKKzU0NTMgN2QyNjgzNDJkYzNhM2FjOWE0N2EwMzRjMmQ2OTA4YjlkYjQ1YzY3OSBsZWdhY3ktdHJ1bmsKKzU0NTQgZjkzM2E1MzBjMzhmMTcwNzI2NTlkYzAzYTRkYTZkY2RiZjNjODhkMiBsZWdhY3ktdHJ1bmsKKzU0NTUgMmZlOWQwMzcxZWNkMDY3MWJiOTVhMzFiMzJlYTE0NjM4ZjJkODQ3OSBsZWdhY3ktdHJ1bmsKKzU0NTYgMDRiYWRhOGQ2NWRlNDM1ZDUzODZkOGU1ZmRkMGQ3YmY2YTg3Y2NmMSBsZWdhY3ktdHJ1bmsKKzU0NTcgOTQ3N2E0NDU3ZTU2NDMzMTVjMjJmZGU1YThkMWI3OTY0YjJlM2ZjMyBsZWdhY3ktdHJ1bmsKKzU0NTggNDQ4ZWRjOTIzY2FkNDBkNzA3MmFjNmM5ZjczODZlZWFiYmExOGFkZiBsZWdhY3ktdHJ1bmsKKzU0NTkgZDI5N2M3MjIwNjEzNTg0Mjc3ZDc0YzM0MDdkNGJiMjQ3NDI0MjkxOSBsZWdhY3ktdHJ1bmsKKzU0NjAgNWQ0NzQ5YTQ3MGI0ZDAyMDBiOWNlYTg3Yjg2MDFlYTRkNWMwODQzNiBsZWdhY3ktdHJ1bmsKKzU0NjEgYWMwMTUyZjYzYmRkZmI3OThiMTE2NWU3ZTQ1ZGVmMWM4ZGYzN2RhZSBsZWdhY3ktdHJ1bmsKKzU0NjIgMWE4ZDZjN2RkNTYwZjE5NTBlNGNiNmE3NTUxYWQzNjRhNDQxMmM3MCBsZWdhY3ktdHJ1bmsKKzU0NjMgNTEzYTk2YTU3NTBmYmE3NTE3NGNlM2FlMDJkOTA3OTUwN2UwZTkzYSBsZWdhY3ktdHJ1bmsKKzU0NjQgZDRmZjQ3ZGY1OTIwZGZkMjE0NjgzNDllZDRlMzUxNGNhZDIwMzUwNSBsZWdhY3ktdHJ1bmsKKzU0NjUgOWJjYTk0YTM2YTA4MTBhZjIwNGQ2OGMwNjk2Nzg4OTlmMmZmYTFkMyBsZWdhY3ktdHJ1bmsKKzU0NjYgYmEyZmU1ZjgzNmE4M2RlMmQ3OGU1YWFkNjVlNWYzNGQyYWJlMGU0YyBsZWdhY3ktdHJ1bmsKKzU0NjcgNTU4OTViNWEzMDA3YjRiYzkxZjMwYmFhZGY5N2JlOGYyYjMwY2M2ZCBsZWdhY3ktdHJ1bmsKKzU0NjggZDQ2ZDgzMWJjNWYzMDEyM2Q4NTdjODA3NjU5NjdiZmY5MGY2ODI0MyBsZWdhY3ktdHJ1bmsKKzU0NjkgNTkxMWYyNGJjYzJkZTAzNzBlYTkwOWFkZGQ5ZDlmYTg1N2FjNTU5MSBsZWdhY3ktdHJ1bmsKKzU0NzAgODk4N2NmYTc1OGJiZDViN2Q0OTgwMGNkMTg3NzE1NTg3ODE1MTc0OCBsZWdhY3ktdHJ1bmsKKzU0NzEgYmVjZDU4MTYwOTExMGJlYmJlZmRkYTkxY2Y3ZmNmNDE4NGUwZmMyMCBsZWdhY3ktdHJ1bmsKKzU0NzIgYWQ2ZjAzOWE1YzQ5MjJmODkwZmNjMDQwMWFhMDBmODUwNmFjZDg0NyBsZWdhY3ktdHJ1bmsKKzU0NzMgMjBjYTU4ZWRjODU1NDhjODBiNTExYTAwOGMzZDdhMjAwMDNhNDYwOSBsZWdhY3ktdHJ1bmsKKzU0NzQgMDJmMmM1MThhYTQ2Yjk0MzY2ZWNiMzAxZDhmYjhhZmJkNTg0MDI4YiBsZWdhY3ktdHJ1bmsKKzU0NzUgYTUxMDIyZjE5ODBmZDVhMTVkNjhhMGU5YjMwZWMxODYwNDAwZTA5ZSBsZWdhY3ktdHJ1bmsKKzU0NzYgN2ZiNmYyMGUyYmEyOTQ0NGUyOTQyYTk3YTNiYmJkNThjYzcwZDQ0ZCBsZWdhY3ktdHJ1bmsKKzU0NzcgNmFhNGU5MjA5ZmJkOGVkYjcwNWI3MjdmMWRiMDg0M2JmYTgxYzM4MyBsZWdhY3ktdHJ1bmsKKzU0NzggNzJhNjFhMTQ5ZTRlNmM3MDE5YjMxMDMyYzU4ZGUwMzBmNTU0NjVmMCBsZWdhY3ktdHJ1bmsKKzU0NzkgNmI5Y2I2NjM0ODk3NWQyNDMyM2JlNGNjMzJjOWNlYWE3NDI3M2NiNyBsZWdhY3ktdHJ1bmsKKzU0ODAgMjEwNzM4ODY2MTY2MTIyODUwZGRkNWRjM2ZlOGUxMjAxYzdjYzYyYiBsZWdhY3ktdHJ1bmsKKzU0ODEgNWQzZDI5NzA0NmQyYzcwMzE5YzJiMzBjNjZmNjgwZTQ1ZTg0YzRiNiBsZWdhY3ktdHJ1bmsKKzU0ODIgMjY3MTg0MmM3MmNmYzRkYzRmNGExZWRiYThjZWNmNmQ4NDA2MmI5NCBsZWdhY3ktdHJ1bmsKKzU0ODMgN2FlMzMyNDcyNjI5YzRhZjkxNWMyYmE4NWZlOThhMTI4MWQ3YTFjMCBsZWdhY3ktdHJ1bmsKKzU0ODQgNzc3NDQwMDM1ODEzMzk4MmU3NzZhNTlkNTkwNDRiMjEwYTM1ZTJjZiBsZWdhY3ktdHJ1bmsKKzU0ODUgMjczOTBiNTM2NjQwYzUxYjQ1NDBhZmFhOTQ1YWFiNWQwY2I0MzQ5OCBsZWdhY3ktdHJ1bmsKKzU0ODYgZDI5NWY0Yzk4YzhhNjQ2MGUzZGFmNjAyZTgxYmExYjRkOTY1YjdmZSBsZWdhY3ktdHJ1bmsKKzU0ODcgYzc2NzFjMzZjNzI1ZTY4NWIxMGJhM2U3Mzk3MjVjNzc3M2E2OTQxNCBsZWdhY3ktdHJ1bmsKKzU0ODcgZTYzZDgzZjgyNzU4NTNhYWFhM2QxOTcyY2I4NjU2NDUwNWU2NTU4MyBsZWdhY3ktdHJ1bmsKKzU0ODkgYzVkODUyNzM1ZTdmN2I0OTBlY2JjY2JjNjBmYjYzYTk3YTE0YjdjMyBsZWdhY3ktdHJ1bmsKKzU0OTAgODc4NDcyMjhiMTU4ZDk5NzFmYTlhYjNhMjVmZTNjMjI2NzIzMWRkOCBsZWdhY3ktdHJ1bmsKKzU0OTEgNTRhYTg3YjFjY2VlNDU5ZGQxZTEyOWVkZDQ5OWIzM2JkZDllZmM0ZCBsZWdhY3ktdHJ1bmsKKzU0OTIgMzkxMWQ0YTg5YWIwY2FkMzY4OTJkMzZiNzQyNWNlM2JkYmVmZTU4YSBsZWdhY3ktdHJ1bmsKKzU0OTMgNzRjOGZjZGM5N2RhYTYxYWFiMzRiNGI3Yzk0MDczODMwYjE4YmE1YiBsZWdhY3ktdHJ1bmsKKzU0OTQgZGM0YmVjMDM2NzgzZTY3MDJmZDkwMjY5MmRlMmM2YTFlZjRmYTBhOSBsZWdhY3ktdHJ1bmsKKzU0OTUgN2NkMWRhNDA2NGQ3ODQxNjkzMjJmZTQ4ZjFjY2ZhZTcwZTAzNzc3YSBsZWdhY3ktdHJ1bmsKKzU0OTYgMTQ3NTNjMzJlOGI0MmExMzJlYjE3M2Y3NTk5MzJkMzE3MDI4MWMxMyBsZWdhY3ktdHJ1bmsKKzU0OTcgNDA1YjQ3M2FhNGExMzVjNTBmMmVmZTgxOTY1Yjg3NzlhYmE4NGE1MiBsZWdhY3ktdHJ1bmsKKzU0OTggOWM0OWFjZTZiMWU3OGYxOTEwNjUzMTRmYWQ4MTY4MjI0Y2U2ZDRlNiBsZWdhY3ktdHJ1bmsKKzU0OTkgM2IzZTY4MDc1ODMzMmI4MDk3YTgyMmRlZjE3NWQ1MDY4YzY1MjY3NSBsZWdhY3ktdHJ1bmsKKzU1MDAgNDdkOGJjYWJkMTc2ZjQyM2VhMmQyYTdkNmU0OThlYjRmZDI5ZjI3OCBsZWdhY3ktdHJ1bmsKKzU1MDEgYjgzOGQyYjk1MjAxMmZmMWNmYjZmNjU0ODFjOGM2MDJiNDFkYmM2OSBsZWdhY3ktdHJ1bmsKKzU1MDIgY2U1ZjBiODNmN2U5ZjRlMGU2NjcwZjM4OGFkNTBhNjJmOTBiMjY5NyBsZWdhY3ktdHJ1bmsKKzU1MDMgYmM4ZWVmZmQ0ZDA2ODc2ZDJiNzI4ZmUwMzFjODk3N2EzZTVkZTE2OCBsZWdhY3ktdHJ1bmsKKzU1MDQgZjhhYmMwMzdiOTRmOGNkZTQ5MWZiNTllNGFjYjc0MDdhOWU2ZGIwNyBsZWdhY3ktdHJ1bmsKKzU1MDUgNDNlYTJjOGIzMjg2ZTg4NzgyNDgyNzBlMTBmMzJlNWE0MmM0NGQwYiBsZWdhY3ktdHJ1bmsKKzU1MDYgMDE2ZjM2NjJlZjk4MzhiYmM4MGJiYjY1ZWJkNGMwOGMzMzVjMTQyNyBsZWdhY3ktdHJ1bmsKKzU1MDcgZGE2ZGJkZmQ1MWRiMWJjY2U3MWU0MjBjMDZhMTE5OGM4OWY3YzA0YiBsZWdhY3ktdHJ1bmsKKzU1MDggNmI5YzU3NWMwY2JhMDM4MjRkMzQxNmQyNWNkNjVkNjJjODlkZThjOCBsZWdhY3ktdHJ1bmsKKzU1MDkgNmFmMGZiYzg1NTNhYjZiMDU2NDgwZGM3MGI1ZjZlMGNkYzQxNjRmMCBsZWdhY3ktdHJ1bmsKKzU1MTAgNDU4MWEwZjAzNTNlYWYzMGY4ODVkNTk4OTYwODFmMmRmOGEwZmI2MCBsZWdhY3ktdHJ1bmsKKzU1MTEgN2U3YmIwMGEwYTJlMjVkOTVhZmYyMGQzMTUxZGFiNDJiMzM0MWQ1NyBsZWdhY3ktdHJ1bmsKKzU1MTIgYmRhNTRlYTIzYTgwY2MyZTgwYzE5MGJiNWNkOTg4YmU1NjMxOWNmYyBsZWdhY3ktdHJ1bmsKKzU1MTMgOTQ4MzViM2VkZjNlMDU5ZDE3ZWQ2N2Q3NWE3OWU5YTFlMDNiNGM4YiBsZWdhY3ktdHJ1bmsKKzU1MTQgNjVlYTc4ODc1YmM4MTI5MDVmOWI5MmQ3YzlkMDQ2NzFjMDgzMTQzYSBsZWdhY3ktdHJ1bmsKKzU1MTUgMDFiYzA2YzJlNDdkM2JmY2E4YWIxMDhlNTZhNzFmOWQyOWZlMTBiYSBsZWdhY3ktdHJ1bmsKKzU1MTYgNmM2OTRlYWQxNjY4NzUzOTgzZTI0ZWYyMTRjMjBjNmE4OTlmZTQ1MCBsZWdhY3ktdHJ1bmsKKzU1MTcgMmNkNGNjMDY1YzFmNjM2NmRlMzEwMGMxMGViY2M0OTg4NTdjNDg3YiBsZWdhY3ktdHJ1bmsKKzU1MTggYTk0NmU0Y2M2ZDViMDE3MGMwZjUzZmVjYmU5MmYwNGJiMjM1NzRkZSBsZWdhY3ktdHJ1bmsKKzU1MTkgZmQ1MDk4NmYzNWU1Y2NkYTM4NjJkNWY3ZjQ4MDVlMGRmMDAwNTljNyBsZWdhY3ktdHJ1bmsKKzU1MjAgNWI5MjhiNjk1ZmE0Zjc3NTlkY2Q5ZDZlMDk5NDBlM2QzN2RmNzdhYiBsZWdhY3ktdHJ1bmsKKzU1MjEgMmNiMTQxNjAxMGIzMzYxNjMxYjM4ZTdmYTUwZWE2YTU5ODRiMmQzMCBsZWdhY3ktdHJ1bmsKKzU1MjIgZWQwODc0Mzk4NDMzZGE4Zjk0YjRhYTZmYjM0MDE5Mjc5NmQxZDkwZSBsZWdhY3ktdHJ1bmsKKzU1MjMgN2UyYzA0ZTZmN2U3MTcwYmE3ZTEyYjY0YmE0ZmM2NDMyZjM2MDc5YSBsZWdhY3ktdHJ1bmsKKzU1MjQgMjRhZjhlYWI3Yjc2M2JiNDlkMjc0MDM4ZmFlY2ZmMzNlMDAwYzU3MyBsZWdhY3ktdHJ1bmsKKzU1MjUgZDk0YjUwMGNiOTg2MzA2ODMxNzZlM2IyN2VlNzRlNzBmNTE4YjAyZiBsZWdhY3ktdHJ1bmsKKzU1MjYgYzEyMDMwZmJiNWI2MGZiNWI5NzU2OGQ5MGRmYmZhNDYxNGQ2ZTQ1NCBsZWdhY3ktdHJ1bmsKKzU1MjcgNjYwZTZmMzU5OTFjYmE0N2VkOTczY2ZmOTkyNDQxNmE5NWNlMzJkYyBsZWdhY3ktdHJ1bmsKKzU1MjggZGQ1NGVlZmRjMmM5N2YwNWQ0OWViNzQzZDQ2N2Q4MGEzYWM0OTM3MSBsZWdhY3ktdHJ1bmsKKzU1MjkgOGQ1MTc5Mjc3ODU4YmU5OTA3YTA0MzJlNmIwNDBlNjM2YzBiN2ZiMiBsZWdhY3ktdHJ1bmsKKzU1MzAgYjMzM2YxNmZiNDE5NmU5M2RlZWY0ZjlhOGMwNTZmMDhjMmEwNWE5MyBsZWdhY3ktdHJ1bmsKKzU1MzEgZGY3ZGZhYzMwYzNlM2E5MThjZTcyYjJiY2RmMjZiNTczMjM3YmZhMCBsZWdhY3ktdHJ1bmsKKzU1MzIgYTU3NjhlNGVlMDQ1MzI0MGNkZmIxYjA0MzIyNTJmNTZhNDVkMGNjNiBsZWdhY3ktdHJ1bmsKKzU1MzMgMTM0YzZjMmQxYWJmOWM5NWQ5MGFhZjVlZThjMTY1MzNjZWJkMzg0YSBsZWdhY3ktdHJ1bmsKKzU1MzQgNmVjODIwZGIyZmZhZjY2YWFjMTU2YmVmYzNlMTY2OTk1ZDJlYTFmMCBsZWdhY3ktdHJ1bmsKKzU1MzUgMzFjNTJhMGEzNzJjMGVlYzc1Y2M0YjcyMjRhNTQ0ZDFmOTc4MTJkZSBsZWdhY3ktdHJ1bmsKKzU1MzYgMzI4YWM3NGY2Y2E2OTgzNGU5ZTY1OTc5ODliMmFlODNhZWVjNmZhOCBsZWdhY3ktdHJ1bmsKKzU1MzcgMjQ2ZDU0MjIxMjRmOTk5Y2QxOGNlMTliOTFiNmU4Y2ZiZjA1ZTNlNSBsZWdhY3ktdHJ1bmsKKzU1MzggZmJiOGVkZGM5MzA5ZmIxZTg4MjA2ZTkyOGI1M2VhZWY1ZjAyNzUxOSBsZWdhY3ktdHJ1bmsKKzU1MzkgZDE0Y2VmMTRmYmYyN2U3MGI4MmFmMThiMmI0NDY0MzI5NWE1YmJkMSBsZWdhY3ktdHJ1bmsKKzU1NDAgZDZiMTMwZmE5MWI2NWQzOWYwM2VlMjFhYTBkNzE1OGNiNzRlZTNiNyBsZWdhY3ktdHJ1bmsKKzU1NDEgOTcxZTVjYTE4YmQxZDg0YWUzNmU5NmJlOTM4NTEwZTZjNDQ3NWY2MCBsZWdhY3ktdHJ1bmsKKzU1NDIgZTQyOWE3ZTcxZTBjY2QyMmQxMTFmNmI5YjczOTVhMmE4MTRjZDJlYSBsZWdhY3ktdHJ1bmsKKzU1NDMgNjk5Y2Y4Yjk0ZjgwMmU4N2ZlODNmNzBmYzYxYzM1NTBlZjI5MDRjNyBsZWdhY3ktdHJ1bmsKKzU1NDQgNzIyNmRkMzE3NTVjNzAzYjAwZDBiMDA4Y2Y4YjUyYTA3ZTY1Zjg5ZiBsZWdhY3ktdHJ1bmsKKzU1NDUgZTNmYmNlZDFiYzA5YjMxOGU1NjJjOTM2NGYzZmQyMTQzOGE5MTY3YSBsZWdhY3ktdHJ1bmsKKzU1NDYgYmZhNDI3ZGE1ODBlY2RmMzRiNDRiZmIxZTYwMTJiYjk0ZjVlYWI2MCBsZWdhY3ktdHJ1bmsKKzU1NDcgZGI4OWFhYjQxNWExYjdiYmU2YzM0NTU1NzQ5NDdlYzg0Mjg3MzNlZiBsZWdhY3ktdHJ1bmsKKzU1NDggZWFkYTI0ODY3NmRlZjYzYjgwN2Y2MDZjODIwZTIzNDQ1MjNkYzNiOCBsZWdhY3ktdHJ1bmsKKzU1NDkgODdmZWEyNjFhMjYzZTdjZjFmOWViNDVjOGI0NmYxNWI2NzQzZDUxMiBsZWdhY3ktdHJ1bmsKKzU1NTAgMDdjYjUwMTQxZDA3MDcyYWE1N2FhZTRlY2M1ZGIwMDlmZWYzNTM2NSBsZWdhY3ktdHJ1bmsKKzU1NTEgOTFjMWJiNzVlOTQ1Y2Y4Y2M5NmIyNzA5ODE3YjFiOTgxNTMyNzYwNCBsZWdhY3ktdHJ1bmsKKzU1NTIgYTdjOTdjNDM3MTkxZDQ0Y2NkMTMwZjdiODc5YjI0NjlkNGM3NDlmNSBsZWdhY3ktdHJ1bmsKKzU1NTMgZDdlZWE5MDEzZTczNjI4OGIzZGZhN2M0NzkwOTMxOGYzNDY1ZDQyZCBsZWdhY3ktdHJ1bmsKKzU1NTQgMzE2ODRjNWJiMTcyN2NjYjQ4NjYzMjY4YmQzYTMxYzUxZDZkMDA4NiBsZWdhY3ktdHJ1bmsKKzU1NTUgNzU5MzY5OTBhMzMwYzBhNDRlY2M4ZDVmNDczMzUzY2FhMjMxMjlmYiBsZWdhY3ktdHJ1bmsKKzU1NTYgZWY5YWM2ZGVmNzFkM2I2ZWM5Mzg5ZTI1MTZmN2UwNDgwNzhlZmRjMSBsZWdhY3ktdHJ1bmsKKzU1NTcgZmJmYTNkM2NhNGUwOTU2NmQzNGY2YmViYTEwMGI4ZDRmMjBiZmI0YiBsZWdhY3ktdHJ1bmsKKzU1NTggN2RkZmI2MjlhYzNmZTkwMzg1YTQ1ZWMwYWFhMDhiNGFjMDZjYzQzZSBsZWdhY3ktdHJ1bmsKKzU1NTkgMWZmMTI2MTlhMTRjN2RjZmRkMjNlMTM3MDg1MzNmYTQ5YjVlMjhlNCBsZWdhY3ktdHJ1bmsKKzU1NjAgYjNhODAxM2NiNGZhMzY3NTUzMmU2NTUxODUzOTRjOWIwZTQxYTdhYiBsZWdhY3ktdHJ1bmsKKzU1NjEgNWExZmJkMjFmYzJhNWE1Zjg0NjFkMjFkMTFmYzViMTdkYjVjZjQ5YyBsZWdhY3ktdHJ1bmsKKzU1NjIgYzFkNzdkNzRmZTM1MDY4ZmRiYzM2ZjRjN2Y4Y2VmN2JlNDJhZDNmOSBsZWdhY3ktdHJ1bmsKKzU1NjMgODQxMDRkNmI0YWU3ZWRmMDA1NGJjNjQxNmJhOWI3OTFjMGU2ZGI4MCBsZWdhY3ktdHJ1bmsKKzU1NjQgOGFhNjkxOGE4OGM2YjE1NDFjN2QwY2Q2ZjQ5NjBjNDQ3ODhmZTI5NCBsZWdhY3ktdHJ1bmsKKzU1NjUgNGM4M2Y1NjliNDM0NTkzYjM4NTUzMjQwZjUxNzY0YmU2MjlhZjZkMiBsZWdhY3ktdHJ1bmsKKzU1NjYgZDI0OTExMWQ0Y2NjZmY2ODQxZmU4ODBiZmFmNDNiYjQzOTk1YjZkOSBsZWdhY3ktdHJ1bmsKKzU1NjcgMTcxZWVmNjlhMmNkMDg3ZjYzMTI1YjI4YjMzYjZiOTVmNTljNzdmMyBsZWdhY3ktdHJ1bmsKKzU1NjggMjM3YzNiMmE2MTg3MWIwNzU3YjU4ZTgyZGE4NGRkMzRjZGNiNWZhNCBsZWdhY3ktdHJ1bmsKKzU1NjkgNjkyNzE1YWJiZDBiYmVlZjZmMWMzYTQ3MmM3NmM5MGE1NzA5MmI5OCBsZWdhY3ktdHJ1bmsKKzU1NzAgZTUxZTE3YjJkODhiMTVkOWE5NTk4NmViMTNhZjhhNjJkNmQxNzk4YSBsZWdhY3ktdHJ1bmsKKzU1NzEgNTZkYmEwMzdiOGQ2YzY1NjQ1YzFmODliYzc4ZTIxYjFjZDBkZDE0MSBsZWdhY3ktdHJ1bmsKKzU1NzIgNDM4Zjg4YjU1MTU0YWQ0YzQyYzYwNTE2NzQ5ODI0MzE5M2Y1NDVjZCBsZWdhY3ktdHJ1bmsKKzU1NzMgYzQxYThlNTAxOTczNDNjOTc3MThmNjM2YTcwNTE2YTZhN2ZjZGEyYiBsZWdhY3ktdHJ1bmsKKzU1NzQgM2RjOWZmM2FiZjM2MTYzMmRlY2RhMTlhNjE3NjRlZDFiOGY1YjE5OCBsZWdhY3ktdHJ1bmsKKzU1NzUgYThmY2M1MTFhODlhOGYzN2E5MzMyYzc3ZDkyNzhlNWExYjExZDFjNCBsZWdhY3ktdHJ1bmsKKzU1NzYgMTQxMjNlMDhlODg3ZTQyODNhZDY0ODhhNzg0NjRhMDVkNzBmYTJkNSBsZWdhY3ktdHJ1bmsKKzU1NzcgNWMwYTdmNzgzNmZiMWRiZDQwNWJkMTFhMDc0ODRmYWQxZmY5ODUxMSBsZWdhY3ktdHJ1bmsKKzU1NzggOWY3NjE4NWM5NjkzN2NmNTVjZGE4ZmViN2U2NTVmODIyNTQzYTUzYyBsZWdhY3ktdHJ1bmsKKzU1NzkgMzZmNGQ1NDY5OTE1MzNjOTRhNDAyNmEwMzU1NzgyMjcxYmUwNmJmZSBsZWdhY3ktdHJ1bmsKKzU1ODAgYWY4MjI5MTEzNWJkMDZjMGY4MzViNTdmNDBjNDVkN2NmMTAxNWE2NyBsZWdhY3ktdHJ1bmsKKzU1ODEgM2FhYjkyNWViZmIwMzRlMDVjYjc5YzAxZjU3NDU1NWY3ZjZhZjhiNyBsZWdhY3ktdHJ1bmsKKzU1ODIgOTQ5N2NkY2RiNmFhNTFiNGYxYWZlNWJlYTg4NjgzZTYzMDFkMGEyMCBsZWdhY3ktdHJ1bmsKKzU1ODMgZGIxMzlhNDExMmYzMmY1MzhjMzUwZDlkYWNjNjVmOTQzNDA0MDY1NyBsZWdhY3ktdHJ1bmsKKzU1ODQgMDc3Mzk5Y2M4MmU4Y2ViMjg4YjAwNTU3MjU4YjdhMjMwZGY0Zjc4NyBsZWdhY3ktdHJ1bmsKKzU1ODUgZTQ3NzA5NGE4Y2ExMDg4MjBmOGY0MzkwMmI2YzM3MGRjNDdmNDZiZCBsZWdhY3ktdHJ1bmsKKzU1ODYgMTA3MWQxNmM5MzBjMWQ4NjljZTE4ZGQwZWJhYTQxMzZmNDJiNDhhMyBsZWdhY3ktdHJ1bmsKKzU1ODcgNGExMmE1NDMxNzVkMGJhOWE5MzA2MGNhYjM4MDUxMDM1ODRjMzdmNSBsZWdhY3ktdHJ1bmsKKzU1ODggYzEwZjU1YjQ2YTExNTFiMWI5YmY2MGFhNTE4MDlmZDYzNjJmMGQzMyBsZWdhY3ktdHJ1bmsKKzU1ODkgMmNhYTNlMjgzNTY4ZDA3NWE0Y2QyMDY2OTc0ZTYwNDQxMjlmM2ExMyBsZWdhY3ktdHJ1bmsKKzU1OTAgOTM1NjJkZGUyMjRhYjdkMDk0ZTVjNzY1ODQ2YWU4YmVlNTcwYTJkNyBsZWdhY3ktdHJ1bmsKKzU1OTEgMTdmMzExZWEwYzlhMDdjNTViZDIwZTBiMzBkOWYxOWI2NjJlMTdhZSBsZWdhY3ktdHJ1bmsKKzU1OTIgOTA1NjZjOWMxODlmMzJkMWI3OTQ3Yzk4M2VhNTg2YmZmYWIyNTA5YSBsZWdhY3ktdHJ1bmsKKzU1OTMgZTkwNjQzZjMzYzY0YzEyYTYyODFjZmNkZDlhNWVhMzEyODllN2Y1NSBsZWdhY3ktdHJ1bmsKKzU1OTQgODcxMGQ3MTQ5YzZmMWJiZWUxNWIyNzk0MWVlYTMyMTRlM2NjMDE3ZiBsZWdhY3ktdHJ1bmsKKzU1OTUgMjdhMDc2OWRiOTIxOTMzNDBlNjc3YWVjZjkwYmJlYWI2ZDkyMDJmOSBsZWdhY3ktdHJ1bmsKKzU1OTYgZTgzNWEyMmIwYmRkZTk0ZmViYzAxYWMwNjczNWU2MWUyMDg5YjhhOCBsZWdhY3ktdHJ1bmsKKzU1OTcgZGNmMmEzN2U3M2Q5ZDM2ZjE4MWE3NGFhN2NiYTA4YWNmNWEzZDU1OCBsZWdhY3ktdHJ1bmsKKzU1OTggNzFiYjcxZTMwNmZlMmRjYjY2ZTk2NWUwZGQ4ZTc0NTkzODAwNzUzYyBsZWdhY3ktdHJ1bmsKKzU1OTkgNzBlZTRlM2NiM2Q4MzgyNjRjZTE0YTcwMGE5ZDA4MjE2M2RhMDViNiBsZWdhY3ktdHJ1bmsKKzU2MDAgNTkxMjg3YTIyZWU1OTZkZWMxYjFkNmJlMGJiZjhlNzZlZjYzYTQwZSBsZWdhY3ktdHJ1bmsKKzU2MDEgMjY3N2ZiYjExN2Q2MmI0NTFhZmNjNDk3NjY2ZjI4ZGUxMDU0MDRiNSBsZWdhY3ktdHJ1bmsKKzU2MDIgOTk5ZmNjZTQ5NmY4NDk1NDg5ODJjNGE1NDVjMDVmNmRiNjRiZWRkOSBsZWdhY3ktdHJ1bmsKKzU2MDMgMWI0YjhhNGZiNDYzMzQwMTcxMDg3NzNjY2I1MGQyNzg0Yzk0OTE5MiBsZWdhY3ktdHJ1bmsKKzU2MDQgYWRjYzkxNmI3NjE2ZDgwNzQ2YzFjMTJmMGU5YWMyYmFiMzUxZmViYSBsZWdhY3ktdHJ1bmsKKzU2MDUgZjFmMThjNTVkMTM2NDI0NTQyNjk2MmI5MGY3OWVhOTAxOGMyYzNlNCBsZWdhY3ktdHJ1bmsKKzU2MDYgZGYwN2YyODcxMWZkZjMyODk5ZmJhZmQ3MzUyOGFhOTZlM2E1NDI0ZSBsZWdhY3ktdHJ1bmsKKzU2MDcgY2QzODhjYzliYTk4ZGNiODlmYTgwMmUzYTFlOTlkNGMwNzY5YWJmNiBsZWdhY3ktdHJ1bmsKKzU2MDggM2Y4YTczMzgwYzRiY2NkMTg5MDg0YWU0MDNjMWIwN2FhOTY2YmYwYSBsZWdhY3ktdHJ1bmsKKzU2MDkgMzkzYjZkODFiMTI2YjI3NGQ2N2RkOWQ2MWVmYjUwOTlhMDk5MzBiMSBsZWdhY3ktdHJ1bmsKKzU2MTAgN2M1Zjk0ZjU2Zjc5MzU4NjllY2RiZmY2NTRlYWUyZmVkOTUxMjgzMyBsZWdhY3ktdHJ1bmsKKzU2MTEgZmJmNThkMjc4ZDY0NWQwYTUyN2JlOThlNjU2ZTRjNGE0ZDhkMmVlMSBsZWdhY3ktdHJ1bmsKKzU2MTIgNDNmOGRiMjNlZjE1ZTIwY2I1NjU5ZGEwZjAyMzYzYjVmM2YzY2E2ZiBsZWdhY3ktdHJ1bmsKKzU2MTMgYTk1ZmY4Njc1NzE4MTBlNmUyNTRhY2Y2NmRmYmRkMmZiNGFiMWQyMCBsZWdhY3ktdHJ1bmsKKzU2MTQgNzBhOTMyN2Y2YzRjNmIyYjM1OThiNWFkNWZjMTI2N2ZjMmRmNWJhMyBsZWdhY3ktdHJ1bmsKKzU2MTUgNDhkYjVkOWEyNzk0MWMyZTE4Nzk0MTBjN2FmYzU5MGVkZTI5MzdmMyBsZWdhY3ktdHJ1bmsKKzU2MTYgYmFkOTdiNDA1MTY2NmEyZGYyZjYxYWRlMzFlYTIwNTM2MDFmNjE1YSBsZWdhY3ktdHJ1bmsKKzU2MTcgNDkwYmU4NjVhYTBkNTc5ZWVkNDRhNmFlODY5YTNlNTgxZTgxOWU5ZCBsZWdhY3ktdHJ1bmsKKzU2MTggYWNmZjc5ZGQxNGI3NTA3ZjZkY2JhNDMwNzU5M2I1NzU2NzJhZWUyNiBsZWdhY3ktdHJ1bmsKKzU2MTkgYTM2ZTMwMjQwZDA2ZjRkZjI2N2E5YTM1MjRmMGIzMjZjYzVmYzcyYyBsZWdhY3ktdHJ1bmsKKzU2MjAgOWE4OTYwODZkM2MzNzA0MTQwZGNjNWIwMDcwMWIyZjkwMzM3YzJhNCBsZWdhY3ktdHJ1bmsKKzU2MjEgY2Q3ZWFhNjJjYzMxYjdmNjYzNjQzY2MzM2VhNTM3YTA1MGZkOGU1ZiBsZWdhY3ktdHJ1bmsKKzU2MjIgZDZkZDUwZmUxZWNhYjc1NDcyYzM0ZDE1MDRlZWUyYjYzZWNkYzU2OCBsZWdhY3ktdHJ1bmsKKzU2MjMgOTMxNTNkNWMzMzNkMDdkMTFiNTE0NTI5OTI2YWM1ZTY5ZGE0N2IwYyBsZWdhY3ktdHJ1bmsKKzU2MjQgNDY5MzY5YWQyZjJmYmE0YzhlMDZjYjM5ZGMzYjJhYTIyMjRhMzZmNiBsZWdhY3ktdHJ1bmsKKzU2MjUgNTk2MWI3NmQ3ODk5NmUzNWY1ZDRjYjFmZjM3OTM3N2Y0YTZmMzBhMSBsZWdhY3ktdHJ1bmsKKzU2MjYgNGNiMTI2MDRkYTlkOWVhOGE0ZTZjOWEwNTlmMDk2ZTUwOTk4MDdkMSBsZWdhY3ktdHJ1bmsKKzU2MjcgZmQ0ZjAwOGQ3NzQzYjUxZWY5N2Q1MDZjN2ZhMDc2NjdiZWY0OTlmNCBsZWdhY3ktdHJ1bmsKKzU2MjggMjIwNWRjNDk4YWRmYmViMGVmNWE5YThjNDMwNmIyOGMxN2E3MTY3ZSBsZWdhY3ktdHJ1bmsKKzU2MjkgNDBjNjhlYmQ1ODkxZDliNGY3MmJlMzE0NjhjYjRhYTNkYzQ2NGZjOSBsZWdhY3ktdHJ1bmsKKzU2MzAgMzE3MmMzOWNkYWQ4MDg3ZDVhNzExOGE3OWJjOWJiZjA4YzhhNjQyNiBsZWdhY3ktdHJ1bmsKKzU2MzEgOTVlODBiNmI4ZjJlNDRjZmJhMWRkYzcyNjdhNjMyOWIyNDY5NDZlMSBsZWdhY3ktdHJ1bmsKKzU2MzIgOTJlMTQ1Zjg0MTRlOTYxNjUxMjljMzU1ODFlMzJjYTczYjM5ZGVmOCBsZWdhY3ktdHJ1bmsKKzU2MzMgOTM4YzQzM2M4NzZhM2Q2OTViMWQwN2Q3ODNkNjgxMWJmN2U4NDBkYSBsZWdhY3ktdHJ1bmsKKzU2MzQgZmU5Zjk1YjA0MmZjOGNmMDYxOTUzMTBkYzQ0ZWJhNzEyZmJhYjliNyBsZWdhY3ktdHJ1bmsKKzU2MzUgOTQ4OWEzNzJjNjg2MmExOTIwNTQyZTIyOTEyNTQ0MDI3NjA3NTQwZCBsZWdhY3ktdHJ1bmsKKzU2MzYgZmZmOGE3NTBlN2Y2M2RjMGEwMWJiMzkzZjI1YjA0ZDBhYTMwOTYwYyBsZWdhY3ktdHJ1bmsKKzU2MzcgYjliOWU2NjI4YjM1MzUzMDFjNWM0ODIwZmI5Y2FkNjQ1M2FmYWFhNCBsZWdhY3ktdHJ1bmsKKzU2MzggMTMxNDZjYjZmNjdjNjFkZTI1MmNiNmEyMjM4NjVkNmQ3NGNjNmYxYiBsZWdhY3ktdHJ1bmsKKzU2MzkgNmJjY2ZjMGVkNjk1OTQzOTQ4NTBkMWZkMDg4MTUyNDA1OTE1OGRiMSBsZWdhY3ktdHJ1bmsKKzU2NDAgNmQzNGFkZTJlOWQ0NTI3MWIwZmM2NWZiNjBmM2Y0ZTEyYWYwZjM3OCBsZWdhY3ktdHJ1bmsKKzU2NDEgZjc3ODk5NDViOGRlZTZjZDc3ZTQxZTE4YzcwNTUyN2U5YzllMWZlNCBsZWdhY3ktdHJ1bmsKKzU2NDIgNDliNzg3YjliZmFlMjZjZGE1NmU2NDNhZGQ0ZGQyY2ZhZWZlNGI5YyBsZWdhY3ktdHJ1bmsKKzU2NDMgMDZlMzQwZjg1OTYxZDFkZjIwNWU1ZjQ1ZDg4Y2NiNzRhNzAzNWRjNyBsZWdhY3ktdHJ1bmsKKzU2NDQgY2Y2YzBjNWRjNzNmNzg2M2YwNzdjMGRjMDQ4MzM5MzUxYTQwZmIxOCBsZWdhY3ktdHJ1bmsKKzU2NDUgM2UxZTVmNjhmZDFjY2EyMWExNWNlMTBjYjUwMWJjZDRhMTY2YzEwYyBsZWdhY3ktdHJ1bmsKKzU2NDYgMmE0ZDEzMDM3M2RiMjE5ODg2ZWRjOTgzNzZjMjI1NDNkYTc1M2U0MSBsZWdhY3ktdHJ1bmsKKzU2NDcgYTQyMDEyYzE4OGZkMzg3OWI2NmJiOTRjNDkyNGQ5ZjNhOWFjN2JmNSBsZWdhY3ktdHJ1bmsKKzU2NDggMjRiNTNjYjMxNjgwOTQ1MTBkY2ZjYzMwNzViNGYxYTUyMzE4MTZiZiBsZWdhY3ktdHJ1bmsKKzU2NDkgOGYzZjI1YTgzN2IzODE3ZGJhOWQzYTI3YmExYTkzMWY3ZTQ1NWYyNiBsZWdhY3ktdHJ1bmsKKzU2NTAgNjFjYTE5YTMwMDBmZWMxMjg4YWZiNTk2ZmIzZjJjYjQ5ZGI2MzJhNyBsZWdhY3ktdHJ1bmsKKzU2NTEgN2IyZjY5NTQwNWJhZmJmYmZkOGFjZTllMDM3NWY1ZTQwZDQzNmI2MCBsZWdhY3ktdHJ1bmsKKzU2NTIgYzA1NmY2ODVjMDgxM2M4ZTQ1M2E1Yzk3NDU0NDc3Y2M0Njk0ODhkZCBsZWdhY3ktdHJ1bmsKKzU2NTMgODMwMWQ1NWViNjRiZTI2OGRjNTdlOTE0ODBjNWI4Y2RiMzE1YWRkNCBsZWdhY3ktdHJ1bmsKKzU2NTQgY2MzOWQ2MmIyN2ZkMTE1OTAyYzU2NDBiNjJkMTFlMzQ2ZTY3OWRkMiBsZWdhY3ktdHJ1bmsKKzU2NTUgZjQ3MmI3ZWMyNWM1ODNjNjJiODg5MWRlMjZlOTIzYmQ4NTZiZTdkYyBsZWdhY3ktdHJ1bmsKKzU2NTYgMDJjOGY3NGQwOGRjZDg0ZDM2MjBmM2JlMjAxNTBiZjViYTUyM2E5ZiBsZWdhY3ktdHJ1bmsKKzU2NTcgMjhkZmM0NjcxODVmYzQyNTgzOGY4ZGI1OTc1Yjk1OWU3ZGRjMGNkMCBsZWdhY3ktdHJ1bmsKKzU2NTggZjlmZDUxMjI2ODBmMzMzZDNjOTczOWVhOGVmZWQzMzA5MTc0ZjdjMyBsZWdhY3ktdHJ1bmsKKzU2NTkgMmFhNzk4MzdhZWU1NmVlYTc2OGYxNWNiNTU5NzQyNTRhODAzOWYwYSBsZWdhY3ktdHJ1bmsKKzU2NjAgODIyNGYwYmM1Y2RhNDk0MmVhY2FiYTA0MTA5MmQ3ZTgwNzg1YmRhOSBsZWdhY3ktdHJ1bmsKKzU2NjEgMDVhZWI5MWUzYjkwZDBkMzYxZjM4NWEzODM0ODRmMzI0Y2RlZTBmMyBsZWdhY3ktdHJ1bmsKKzU2NjIgNjExOTNjNjMyZjUxZTE5MTFhODcyZWI1NDEzMmRlYTdhZWM5MjUzNyBsZWdhY3ktdHJ1bmsKKzU2NjMgMTk1YWQ5ZmI0NTgzMmM3OWEzMmMwOWQzNTc4OTU0MGQ1NjdiM2NhMiBsZWdhY3ktdHJ1bmsKKzU2NjQgNWQxNmVjYWU4ZWU3MTExODFkYTY4YTE2MzBjODRkY2ViMGM1YmFhMCBsZWdhY3ktdHJ1bmsKKzU2NjUgMjFjZDUwYTRhM2Y3NjdhOTNmMDhkOWE0Yjc4OWE5M2FiNTlhNTI4NyBsZWdhY3ktdHJ1bmsKKzU2NjYgODg0MWE0ZDVjZDRiZWI4ZmNhM2Q4NmE3NTI0NmZjZGUxNWY1YmZmNCBsZWdhY3ktdHJ1bmsKKzU2NjcgOGY1YWIxYTZjOTE0MmViYTQ5ZDA4MzYzYzlmOGU0Y2EyYzcwYmYyNSBsZWdhY3ktdHJ1bmsKKzU2NjggMTliNThjZTc5NGM5MDI2Nzc2ODdiN2U2OTA1MGYyYmZjMWM3MDdkOSBsZWdhY3ktdHJ1bmsKKzU2NjkgNjQ5MWJkMmJiZGVmZjY4NTllMjU0ODFmZDEzNzQzOTQ2YmQ2ZDAwZCBsZWdhY3ktdHJ1bmsKKzU2NzAgNDZkZjY3MmM3YzI3MGRhMzYwYjU3ZjAwNzIwZTRjYjU1ZDBiMWYyZSBsZWdhY3ktdHJ1bmsKKzU2NzEgZDVlNzZhOTViNTY2NWM5MDkxYjU1Y2FiZTBkZjJhNTVkYTU2Yjc1NSBsZWdhY3ktdHJ1bmsKKzU2NzIgM2QxMjJmMDJlNjQ5ODcyNjk2YmY4NDkxMjg5M2VkOTA2MTEwY2NkNSBsZWdhY3ktdHJ1bmsKKzU2NzMgZGYyZjI1MmRjZDI5ZGRlN2ZmMjRhZWNhYmQzMzdiMWUwNTMxOGY2YyBsZWdhY3ktdHJ1bmsKKzU2NzQgMGVkNWNkOGRmNTFmOTgxNjE5MTRkYTA5ZmU5YWJjMDUzYWYyYTJiMiBsZWdhY3ktdHJ1bmsKKzU2NzUgYTIyN2RjZTQ4NDUxN2RhNjE1MGEwYTk0YTc3MDQ3MDNhNjlmOWFjNCBsZWdhY3ktdHJ1bmsKKzU2NzYgMmI1Yzg3MzgxMzBjZjk1MjJmMWZiZjRhZGJhODI1MGFmZjA5YzZmZSBsZWdhY3ktdHJ1bmsKKzU2NzcgY2RlYmVlNGEzZTNlODcxYTdlNmY1ZmU2YzExOTRlZDhkZGNjYTAzNSBsZWdhY3ktdHJ1bmsKKzU2NzggOThlMmNhZDQ4NTdmMWQyYmQ1Mzk5ZGEzN2I4ZDJmOGFkMjA5ZTk3NCBsZWdhY3ktdHJ1bmsKKzU2NzkgYzdjZGQyMmE0ODUzYWQ4YmEwMDlhMWZkZjc1ZmM1MmYyMTc3OWQyYSBsZWdhY3ktdHJ1bmsKKzU2ODAgMjFkNGEwN2IxODc1YjFhZGJjNzBiYTZkMGNkZjU1NTdhNGMwZDU2MSBsZWdhY3ktdHJ1bmsKKzU2ODEgZmZlMDMyODM2OTM3MzczNTA2OWI0NDZmYmM4OGNjMzg3MmNmODMwOCBsZWdhY3ktdHJ1bmsKKzU2ODIgM2IyYmU4MTFhNjZhYWE2YmZkZjg1ZGMzN2ZjNjJlODBiNmYwODllOSBsZWdhY3ktdHJ1bmsKKzU2ODMgZDAwYTc5ZWJiMDI3MzQ4Y2RkZjVlMjU0OWI0ZWRjNmM3M2M3ZDMxNyBsZWdhY3ktdHJ1bmsKKzU2ODQgODAxMjY1Yjg2MTY0MDI0NDRhZDc3OWZiZWI1NjYzYzkxZGMyZTE3ZSBsZWdhY3ktdHJ1bmsKKzU2ODQgN2Q3NDNjODY1YTlhYTZiZGU4YjYwM2UzMmUwNTQyMDMxYmJhM2MzMyBsZWdhY3ktdHJ1bmsKKzU2ODYgZTQ1ZjNkMjYyYWU0YTkyM2VkOGM0MGYwZGY5OWRmOTZjZTBmNDNmOCBsZWdhY3ktdHJ1bmsKKzU2ODcgZjFjYzI0N2ZmZjEzN2Q5NGRiODEyZTllY2NjNmJiYzhhZTY4Njk0ZCBsZWdhY3ktdHJ1bmsKKzU2ODggNzhlMTk1M2ZjOWIyZjMzNDUzNjAyYmIyZGU4N2IwNWNjYzQ2NTc2YyBsZWdhY3ktdHJ1bmsKKzU2ODkgMGYzOGNlYzU2NTM5MWU1MzBlYTRmODkyMDNkOGU5ZTA3OTZmOWY4ZCBsZWdhY3ktdHJ1bmsKKzU2OTAgZTc0MTdhNTY4NTg2YWIzOTJkMWE2NDk3MzNmYTM2ZjVlYzEwNDkwMyBsZWdhY3ktdHJ1bmsKKzU2OTEgMmZiMzk4YWIzZTZhYjAyODNkOWUwZDczZmIzYWQ1ZjcwOTEzMjk2YiBsZWdhY3ktdHJ1bmsKKzU2OTIgZTU1NGE2MWE4NDY5NGZiMTc3MDg4MTBkN2NkNTg2OWRlYTE1NTQ0MCBsZWdhY3ktdHJ1bmsKKzU2OTMgOGMwYTUxODBmYTM2ZWFmMjRlY2VjNTQzZTA5MWQ5N2NiMGQ2YmUyYyBsZWdhY3ktdHJ1bmsKKzU2OTQgZWZiOTcxNDI5OTJlNDg5Nzg5NjhmYmFiZTBjMWNhNzE4ZmVjOWFkNCBsZWdhY3ktdHJ1bmsKKzU2OTUgZjRhNTlmZmUxYTVmNWMxYzgyMzUyOGNjYmI4YzAxZDZlMzI4ZWMxMiBsZWdhY3ktdHJ1bmsKKzU2OTYgZTMzN2JmM2NiNDNhZWEzODZlNjI1OTcyNGM1ZmE4NDM2M2Y0MjEzMSBsZWdhY3ktdHJ1bmsKKzU2OTcgMTE4YzA2M2RmNDUzYzJjMmYzZDY3NjAxNzM1MzgwNjA1ZGYzNzdjYyBsZWdhY3ktdHJ1bmsKKzU2OTggMWFjYzA0NDc4ZGMzMTBlOGM0MDUxZjMyMzdlNmU2ZmE5NDYzMTQxNCBsZWdhY3ktdHJ1bmsKKzU2OTkgZWE3ZWM0YTRjOGQyZjUzMGE2NzEwZjg3ZjI3YTM0NzMwNjBlYzgwMiBsZWdhY3ktdHJ1bmsKKzU3MDAgZmQ1NzNhYzc1OTQ3NDAzNTVmMDVjNDFjOTEyOWI3OGI2Njk0YzFlMSBsZWdhY3ktdHJ1bmsKKzU3MDEgYWFmZTdkNjM0OTg1MjdlZGY3ZDk2MTRiNzFmYWI4NDk0ZTkxNzkwNiBsZWdhY3ktdHJ1bmsKKzU3MDIgM2RmOWFiMDNiYWRmZmIyZWMyY2Y0Zjg2OWVmMmFiN2EzZDI3MjA5YSBsZWdhY3ktdHJ1bmsKKzU3MDMgNDYzYjI2ZmE0ZDdiNzU2Nzg1MGMxYjQ1MDZhY2E4NmE0ZDcxMzNlYSBsZWdhY3ktdHJ1bmsKKzU3MDQgNjJiYmZkZTQxYjE0NDNiYTY3NjlmYjg1NjEwZTFkNjE0MGJhNTIwMCBsZWdhY3ktdHJ1bmsKKzU3MDUgZDM1MTBmMTExOGI2Yjc3MmE5NGUxZmIwNDAzYTE5NDk3YzgzMDllNCBsZWdhY3ktdHJ1bmsKKzU3MDYgMjg1ZGJhNGUwZTUxNmM1MDc3YzBjMTRlYjlmY2RlMzIxNTU0MGQ2NSBsZWdhY3ktdHJ1bmsKKzU3MDcgZjdmZDg1YjMyYTdkODVlNDk2Y2U3ODlhYzQ0NTcyZTI5N2Y2YmI2MCBsZWdhY3ktdHJ1bmsKKzU3MDggZTkyNzg5YTk2MGEwMjcyYjJkMTQwYzI1NmZmMmM5MmZkZTRmMzllMSBsZWdhY3ktdHJ1bmsKKzU3MDkgMzEzNjM3Yzc3ZGFhMDNhMjk1Y2IzMTc3M2U0MGVmNjgwZWU3OGJjYSBsZWdhY3ktdHJ1bmsKKzU3MTAgNDA1ZGE1NTY2NjFkNjZhYTQ3OWVhZTY4ZWUyMzU2ZmFkYjViZDFmZSBsZWdhY3ktdHJ1bmsKKzU3MTEgMjg0MmZmYTUyMTI2MGRkNzU1NDM1MDZmYjZlNjliY2MwNGVlNWI3MSBsZWdhY3ktdHJ1bmsKKzU3MTIgMThiNjBkOGQ5ZTM1YTI2NGI0NmVhOGVhNzM0NTJjYjcxNWRhMTVkNSBsZWdhY3ktdHJ1bmsKKzU3MTMgN2IxYTZiYmEyNTgwNWIzOWEzYWRiNGE4MDU3ODRhMDkwMWY1NTAyNyBsZWdhY3ktdHJ1bmsKKzU3MTQgMjBkNzRmYTNiNTBiMWJmMDcyYWQxOGJmN2EyZWIxNzBiMDhmOWRhMSBsZWdhY3ktdHJ1bmsKKzU3MTUgNWUxMDFlYWQxZTY5OTA5NTI0ZmI1MGQ3NDVhOTQzOTc3Y2UzYmExNSBsZWdhY3ktdHJ1bmsKKzU3MTYgMWNmNmUxMDUyMmUwOTE1NjAxZTA2MDQ4ZGE4NWI4MjgwNTFhMmRjZCBsZWdhY3ktdHJ1bmsKKzU3MTcgZWQwZDE0OGZjMDVjODc5Nzg2YWM0ZDZiN2RkYzI5NzQxNjUwZDRjOSBsZWdhY3ktdHJ1bmsKKzU3MTggMWEzOWQ0MDdiNGQzOTAyOWQzMTBlZjc5ODI0MDM1OTM0MzQ3OWI2MSBsZWdhY3ktdHJ1bmsKKzU3MTkgNDY3ZTBmMmQ2NzhhMTFmNDMxYjNlNmM3M2ZmZTc5MThjNGNhNGRjNCBsZWdhY3ktdHJ1bmsKKzU3MjAgZjg5Y2RkYTc0MDVhYzRjNzFkZjIyYWQ2ZTczMTU0MGM4YTM0NzNlOCBsZWdhY3ktdHJ1bmsKKzU3MjEgY2M1NDc0MjIxYzhjYjFhNjAyMWMyYmRiMTNkOWIxN2YxNDRkNTNlMCBsZWdhY3ktdHJ1bmsKKzU3MjIgMzMzMTBjYjZhNWQ3NjgzNDIwOThhMWY1NjE0Mzg5OGRjZDUwZjM4MCBsZWdhY3ktdHJ1bmsKKzU3MjMgYTZiMDcwNDEwNmM4Y2ZkNjUxOGQyZGU5MTdkYmNhZDQ0Mzk2MzMzZSBsZWdhY3ktdHJ1bmsKKzU3MjQgYmFkN2Y1NmM4M2IyYjYyYTE4ZWVkMTE2Yjg1Zjg2NjJjOGY5NmQ4ZSBsZWdhY3ktdHJ1bmsKKzU3MjUgNmU0OGZhYjY5OTBmMzE0ZmI3NjE0NTViM2ZmMjUyNjFjMDZkNjg4NSBsZWdhY3ktdHJ1bmsKKzU3MjYgZGIxMWEyYmZlYTY2ZGE0M2IwNjM2YTIwZTYxZjg2YmFmYmVhNzQ0YiBsZWdhY3ktdHJ1bmsKKzU3MjcgYjFjYTY1OTcxZTM2ZmFhNjY4NWVkNjEzYWQyMTNmYTE1YWFjODhiZiBsZWdhY3ktdHJ1bmsKKzU3MjggNGY0MDgzYTI2YmYyMjMzOTAxNTU3MTdmZDkzODEwNDc0NjA5NmE1YyBsZWdhY3ktdHJ1bmsKKzU3MjkgYmZiNjNiNDVmZjBmNjc3YWMxN2EwNjM5NmRkYWFiNzg0YzYwNmRiMSBsZWdhY3ktdHJ1bmsKKzU3MzAgOGM1OGFiN2FhNzFlZjEwMWYzMzNmNWQzODI5ODhmMzI3NDUyOTdmMCBsZWdhY3ktdHJ1bmsKKzU3MzEgMmMxZTNlODc1MTA5OTZmYjAzYmY2M2U3NjJlMWVlMGRhYzVhZTQzMyBsZWdhY3ktdHJ1bmsKKzU3MzIgMmY4MzdkODI0MTIwZDg5MmNkZjg4YjgxMmU4ODkzYzE5MzY3MzFmYiBsZWdhY3ktdHJ1bmsKKzU3MzMgMTU5Nzc0YWYyZWRlNjZjMGMwOTIyOGIzNTc2NmE5YWUxYmIwYTZmNCBsZWdhY3ktdHJ1bmsKKzU3MzQgOGU3MzNmOTJlZGMwOTM0ZjgzN2VmNGNlZDNlZjkzMjg1MTBjOTc3MCBsZWdhY3ktdHJ1bmsKKzU3MzUgN2VhYzAyYTYxNzZlZGYyODFjNWY0NTA3NWMwNjdlNjI3M2FmZmZhNyBsZWdhY3ktdHJ1bmsKKzU3MzYgMTE3NjE4ZGQwZTdmNTMzMDQwZjg4OTNmYWQzMmVjNWUxODJkNzY2MCBsZWdhY3ktdHJ1bmsKKzU3MzcgYjE2ZmNkMTI2YjFjMjRlNmU5OTcwODgxNjIxMGRiY2I2MTA1OGJmYSBsZWdhY3ktdHJ1bmsKKzU3MzggMDMxN2FjNTIyNjA1ODE3YzZmZTE3NTM2YWMyNTM5ZGU3MTE4NWJiNSBsZWdhY3ktdHJ1bmsKKzU3MzkgNjEyMjczMGI3OTg4NTE2ZjQ2YWU1Mzg4N2Q5ZDJiMGM1MzBkM2M3YyBsZWdhY3ktdHJ1bmsKKzU3NDAgZjk0NzgzYjliZmJhYjdlMTYwOTZhODAxMjc0MjcxYjkxYzhhODMzNiBsZWdhY3ktdHJ1bmsKKzU3NDEgOTc1Y2NmYTcyMWY2YmVhZjQ1Mzk3NTE4ZGY0OTI5NWMxMDlkNzY5NyBsZWdhY3ktdHJ1bmsKKzU3NDIgM2E4M2MwMTdkZjFlY2E5NTVlYTMxYjQ5MjA1MDIxYzM4NjNlZTU2YyBsZWdhY3ktdHJ1bmsKKzU3NDMgZjFmYjMyNmM3ZTJmZTFhMDhlYzkzNDUwNmRiNDdjYmZiNjJhZDg3ZSBsZWdhY3ktdHJ1bmsKKzU3NDQgMzZhMTg0ODk1ZWI5ODBhNmQ4ZWMzYzFhYjhlYTE2OTY3YTJlYzIxYiBsZWdhY3ktdHJ1bmsKKzU3NDUgNDNjNWU3YTNmYzFmYjYyYWUzNjdlOTZmNWMzYWM1MTc1YjkxMTM5YyBsZWdhY3ktdHJ1bmsKKzU3NDYgYTgwNjU3NjJhMzhlYTAxYzU1NmZmNGIzYTkyMTI2NzExOTEzYzgwYyBsZWdhY3ktdHJ1bmsKKzU3NDcgZjhhMDcxNzAyNGZlNGJmN2MzN2I5ODliYzdjNTYxOGZiNzE4ODNmOCBsZWdhY3ktdHJ1bmsKKzU3NDggODcxYzc2OGQwZGEyMjA3NzIzMmRiZWUxMjU3ZmM4MjExZDQ3N2EyOCBsZWdhY3ktdHJ1bmsKKzU3NDkgNmExOGM0Y2I2OGQ4NDRjNmVhN2I2ZmNjOWNmM2U2OGM2YTBjYzRlMSBsZWdhY3ktdHJ1bmsKKzU3NTAgOWZhMmUyMThlMmE4NGM2OGFiZjZjYmEzZTk1MmYwNjg3ODExMDI2ZSBsZWdhY3ktdHJ1bmsKKzU3NTEgM2EwZjg0YzY5MDUwYTNhYjJmOGQzNzUyZWEwMDY3MTc5ZDcyYzhkZSBsZWdhY3ktdHJ1bmsKKzU3NTIgMjEyZWFlNWI5NjYwYjU4ZTMxY2ZkYjM1NTFkZjE2ZDJmMWI2YThkOCBsZWdhY3ktdHJ1bmsKKzU3NTMgNmQ0ZjcxNDMwNzIyYjVlZGFkNzZiZDE2MTkxMmI2ZTU2YjRhOTVmMCBsZWdhY3ktdHJ1bmsKKzU3NTQgZTM4YzA5ZDAwODA2OGNmZjhmZmMwYTFhMzE3NDQyMmVjOWI2ZjE2NiBsZWdhY3ktdHJ1bmsKKzU3NTUgMjg4ZTMzN2Y3M2U3ZTQzNjhjNzA4ZWM1NzNlYzFlNjZhN2VkMGFjNSBsZWdhY3ktdHJ1bmsKKzU3NTYgNjZmNGJmOTQ2MjdmZWUwODg5NTA4NzU4ZDRjMjVjMzNhYTk3MjhlYiBsZWdhY3ktdHJ1bmsKKzU3NTcgM2Y0NTU3NzdmZjI4NDFhZDVmM2EyMjFmNmZkNDNjYjNiNzlkM2UyNiBsZWdhY3ktdHJ1bmsKKzU3NTggNDVlNDQ0NTQ3ZTVhMzVlOGZmMDAzM2ExMWYyMzU1ZWViYmJmYWJkMiBsZWdhY3ktdHJ1bmsKKzU3NTkgNzIzNTc5NzhmZmQyMmExODU2Mzk1NjNkYWViMDdhNTk4ZTkwN2Q2MiBsZWdhY3ktdHJ1bmsKKzU3NjAgYmFmYzEwNWJjN2NkOTlhNTJhZDlhNTJjZGQxOGRmY2E2MmQzNTNkYyBsZWdhY3ktdHJ1bmsKKzU3NjEgMmJkZGZiM2NmY2YxYWE4ZDgxMWZkZjQxYzU2MzU4MjczMDVlYTljNyBsZWdhY3ktdHJ1bmsKKzU3NjIgM2NhMTExZTBiMWE3Njg3N2U0ZGU2ODc3NzhiZmVkMjUyNjdlMGJmZSBsZWdhY3ktdHJ1bmsKKzU3NjMgMGQ2YjYwYjc0ODM4NGNhZjIxM2M4NWRiOGJkMTMwNTgxMGUzZjM1NyBsZWdhY3ktdHJ1bmsKKzU3NjQgNThlZjRjNDk1ZGU3NjJjOTQ2Yjg0MjE0MWM3MjQzNjM2YzAxMTMyYSBsZWdhY3ktdHJ1bmsKKzU3NjUgOWE0MDgxNDQwNzgzMDE4ZmVmMmY1NmY2ZjZjMjQ1YTAyZmJiNjdiYyBsZWdhY3ktdHJ1bmsKKzU3NjYgNDc3NjNhYzQ0YzQ4NmI3MjViNGRjMzFkZmRjNDRkOTFkMDYyMTgzYSBsZWdhY3ktdHJ1bmsKKzU3NjcgOTdjZDU3NzFjMjNlMjU3ZDJlNTczOWE5YTQ1MjA1MjZmZWJjNmI2NiBsZWdhY3ktdHJ1bmsKKzU3NjggN2Y1YjQzMmI4N2M0OGM2MzVmMjk0ZDE2MGVhNzBkOTAyNTBmNTg5YyBsZWdhY3ktdHJ1bmsKKzU3NjkgNTRmMDY3ODc1N2IwMGY2ZTMyYzc4NzkwYWE2MmU3OWM2YzMyMDBkNyBsZWdhY3ktdHJ1bmsKKzU3NzAgZDRkNWM5ZmE3ODU5MmExNmIzNTYxMGY2MDk5OTY5M2FiYzJkYjJlMCBsZWdhY3ktdHJ1bmsKKzU3NzEgOGE1MDk3ZTlkN2VlMmYzNmM2NzdlYTBkMzA3OTVlOTNmNTFmMTk0MCBsZWdhY3ktdHJ1bmsKKzU3NzIgODNkYWE1NGMxODFkZDBiY2MwMTgyMTdmNjU2ODVkN2E1MzI4NDVkMyBsZWdhY3ktdHJ1bmsKKzU3NzMgMTQwZDgyMzlhNDQ2ZThmMzFjNGRjMGFiOTc2ZmZiNjYxZDU4N2MwNCBsZWdhY3ktdHJ1bmsKKzU3NzQgMTNiMjRkMTAzNGJkM2JjYzcwY2Y1MDdmZWRmM2Q5MzkzYTRhNTlhNSBsZWdhY3ktdHJ1bmsKKzU3NzUgZTUyNDY1NzFmMGZkY2FjN2Q4NDE2ZWE3YzgwM2I3MzMwYjg5NGIxOCBsZWdhY3ktdHJ1bmsKKzU3NzYgYjgyOGJjY2RhMTg5ODM1Y2Y3OGQwYjgyYzQxMmEzNWRkYzA5MTJhYSBsZWdhY3ktdHJ1bmsKKzU3NzcgNjA0YjFmYzI2ZDYzM2E4OGUwMjdkMGFlYjkyNTgwMDZkODM5N2ZiNyBsZWdhY3ktdHJ1bmsKKzU3NzggZGYwZDAwOTE2MmI2NzUxODcxYmYwNThiMzFmYjY1YmExYmM3MzFmMiBsZWdhY3ktdHJ1bmsKKzU3NzkgYzA2NjRiZTdmNjYyNGI2Y2EwZjg1ZTY1OGU0OTRmODA4NjUwNzUzZiBsZWdhY3ktdHJ1bmsKKzU3ODAgNjhmZGM0MGFkZDJjYjNmNTVkMWFmYjI1OWIwOWUxNDAzNGY3MTU2NSBsZWdhY3ktdHJ1bmsKKzU3ODEgNThhNjczMjJjODk2MGNkMzM5NWE1NWQyMTk0OWQyM2NjODA1ZjFjNyBsZWdhY3ktdHJ1bmsKKzU3ODIgNDRmNDhhYWNhOGJmZjQ1OWJjMjJmMzRiODQ4MzY1ODhjYjU3M2UwMSBsZWdhY3ktdHJ1bmsKKzU3ODMgZTVkMWYyNDJkYWY5YzE2MDUxZGY0Mzc1MGI4N2MyNGFiM2E2ZDY4ZiBsZWdhY3ktdHJ1bmsKKzU3ODQgZTRmNTdkZDNkMjQ2NTM5NTgzNGI0ZmI5Y2E0NzdkYjJkODI3ZWExZSBsZWdhY3ktdHJ1bmsKKzU3ODUgOGI4ZDYwZmJlM2JmOTViZTMyNDgzYWNmNDAzN2UxZjZlOGM1NjEzZCBsZWdhY3ktdHJ1bmsKKzU3ODYgMzJiNGU4YWRlYmViODRmNzZjZmY0NDE0ODFjOTkyZDRjOWNlNDMyMiBsZWdhY3ktdHJ1bmsKKzU3ODcgNGU2ZDBiMjZlZmFmMzJlYjc3N2I4NWE4MDc0MWEyZjIwZTM2ZDI3YSBsZWdhY3ktdHJ1bmsKKzU3ODggOGRkZGE2NmRiZjJjODkyNmY5ZTQxODkzZWE3MDY3ZTA0YTMzYjYyNiBsZWdhY3ktdHJ1bmsKKzU3ODkgNTk2MzQ3ZGI2YTY4Zjc5NzY2YjM2MDQ4ODc2NjBiNTBjNWU0ZjYzMSBsZWdhY3ktdHJ1bmsKKzU3OTAgNjA5OGFhYThhZTdmYmNkOTI2MjhhNTk4Yjk4NDU2NDZkMzgxNjliMSBsZWdhY3ktdHJ1bmsKKzU3OTEgMzY5MjBiYmQ4MWE4MzQ0MTk0M2Y5ZTA5ZmFjZjJmNGZlMzQwYjU3MCBsZWdhY3ktdHJ1bmsKKzU3OTIgODk1MTQ0MjZiOWI4ZTRhMjA4NTM5N2I5MjAyYTE2MjQ0ZDE5ZDQ0MSBsZWdhY3ktdHJ1bmsKKzU3OTMgMWVhYjg0OTU0NjJmYjQwMmI5MTQwMjE0OGU3ODk0ZTVlZTYzMmUzNiBsZWdhY3ktdHJ1bmsKKzU3OTQgNDlmN2E0YTFmMGY2Y2U3N2M1YWZiZTgwOTc3N2NlY2YzOWUyYThjMyBsZWdhY3ktdHJ1bmsKKzU3OTUgNGM2NTUxMTVkZmNlN2RmZTQxYThiZGFmMjhhMGZhNGQ4ZDdkNDZkNiBsZWdhY3ktdHJ1bmsKKzU3OTYgNjdkMzQ3YzMyZmZmYjhjOTYzNjE1Zjc5ZDUxNDkxOTNlYzY4ODE0ZSBsZWdhY3ktdHJ1bmsKKzU3OTcgOWYxYjZlMmRiOGUwMTJjMzc4MjNhNDU1YjljZmUyZDBhMmQ1ODJiZSBsZWdhY3ktdHJ1bmsKKzU3OTggMGRhMjRmMWMzZGRlNmRhNGZkYzdjZDMzNzE5N2RkNzBjZjZiZWM1OCBsZWdhY3ktdHJ1bmsKKzU3OTkgOTU2NDNjMGIwYzBlYjA4MmIxNmU5Y2VhNTYzNGJmNmZiZWI4OTA4YiBsZWdhY3ktdHJ1bmsKKzU4MDAgNGI1YmZmOTU4MDRlNzJiNzc5Y2FhNGVhYTRmNTcwMWQzYmUyZGRhZCBsZWdhY3ktdHJ1bmsKKzU4MDEgOTY5YmQ5MTFlMTE0ZmNmMzJlYTRkMzllM2M1N2U5ODJiMzQxNGY2ZSBsZWdhY3ktdHJ1bmsKKzU4MDIgOWJkMWU0MWQ2YjExNmE1NWFkNzNkNThmZTk2M2VhODBjMWFlOWE2OSBsZWdhY3ktdHJ1bmsKKzU4MDMgMjQ5N2M0M2Y0OTgzZGJjYzU2ZjcyYjE3NTM5MjFkYmFjNjdhYzMzNSBsZWdhY3ktdHJ1bmsKKzU4MDQgMjAxZGU4NDU1YzJiYzlkMWEyNzI2ZDRlMmZlYjE0ZDE1ZDM4YjNmNCBsZWdhY3ktdHJ1bmsKKzU4MDUgMmRiNTg1ZWEyMThiZmRhY2M4MjI3MDA3NGI2NGJhM2M5ZjRiZTBlNSBsZWdhY3ktdHJ1bmsKKzU4MDYgMTZjYjA0NzMyMjRjZDUxN2EzYjZjOWZmNTVmZTM3YTcxZmNiOTIyYiBsZWdhY3ktdHJ1bmsKKzU4MDcgOTFjM2U5ODIxZDBhMGQ5NDFkNDc5NTNlNDVhMDNmN2ZlZjdmNDI3NiBsZWdhY3ktdHJ1bmsKKzU4MDggMzY0MTYxNDAxMDVhMjk0M2JkNDBhNTJlYWFjZTU3NjQ3NjdmNTgwMSBsZWdhY3ktdHJ1bmsKKzU4MDkgMDA0NTM2MTNjZDRjNzc0OTJjNGE5MmFjOWZjODEwNjMwMmU3YmU0ZSBsZWdhY3ktdHJ1bmsKKzU4MTAgMDEyMzc2ZDNhYTE0N2IwMmQyNjNlMDU4Mjg2NDhhNmYxNGYyZDJhMyBsZWdhY3ktdHJ1bmsKKzU4MTEgM2I0ODQ4MTJhY2Y2ZTJlMTk3ZmZkODBlMjNmNjYzNWNiZjc5NGMwMiBsZWdhY3ktdHJ1bmsKKzU4MTIgMTcwOWQ1ZmVkNTI4ZTZhZWIxZWQ1MjAwNGRhMjM0M2ZmOTc3MDE5ZCBsZWdhY3ktdHJ1bmsKKzU4MTMgNTY4OTc3NjBlOTU4NzI1NzRlNjEyYWI4NDJjZjVjZDZkMzliNjdlNCBsZWdhY3ktdHJ1bmsKKzU4MTQgZmFhMjFjZTFmZjAxZGM3OTNhZDdhNzI5NTI1YTA2ODNhMjMyZWU1NSBsZWdhY3ktdHJ1bmsKKzU4MTUgZWZkZGUxZDc0MjRiOTA0NmFlOGY4ODNhMTRkZThiYzhlMDM0ZTE3OSBsZWdhY3ktdHJ1bmsKKzU4MTYgODIwOTk5OGQ2NjllMTZhMDhmY2E0OWNiZTdhYTI4OWYxNDZkODA0YSBsZWdhY3ktdHJ1bmsKKzU4MTcgMmJlMGJkZTNhMDcxOGUwMzc0ODA4OTg5ODY5NTM0OTJmODE4MGNkYiBsZWdhY3ktdHJ1bmsKKzU4MTggYWUwMDRhNDUwNTBmZGE0NDcyN2RiZDczOGJlNjAzNTMwYzQ5MjZkOCBsZWdhY3ktdHJ1bmsKKzU4MTkgODFmNDVmNjkzODhlMmRlN2JlNGYyNTVlY2I2ZDg3MThiZDUzYWQwYSBsZWdhY3ktdHJ1bmsKKzU4MjAgZjZhODQwZTgzZDJhNTJiOGY0OGZjNjBlOGU1MTg4OWI3NTIyOWU4NiBsZWdhY3ktdHJ1bmsKKzU4MjEgMGIwMjFjZjQxZGRhYzBiYjBjMmFhMGI3NTRlOGNjYmJjMTllNTVkYSBsZWdhY3ktdHJ1bmsKKzU4MjIgZGRiNDUxMGVlYjQ2ODM1MWZiOGQwZjY4NmRkYWYxOTMzZmY2ODU2MiBsZWdhY3ktdHJ1bmsKKzU4MjMgNmQ3NjJhMmY5YjY5ZDY4MDMzNTQ2M2Q2ODE0MDYxYjEyYWYyZDIwZCBsZWdhY3ktdHJ1bmsKKzU4MjQgMWExN2JhNTBiZDY4MTkxNzcyNjU0M2RhODgzODNhZjcxZTgwNTNmZSBsZWdhY3ktdHJ1bmsKKzU4MjUgMjFkODk2OTgzMjljNmIyYjJmZTdlZDg2OTQ1MDYzNTFmMTViNWYxYSBsZWdhY3ktdHJ1bmsKKzU4MjYgMDg5ODU0MzE1MDBiNzE2ZWQzMDA5OTI5YjhiOTg3YTdhNDgwYzEzNSBsZWdhY3ktdHJ1bmsKKzU4MjcgZTBlZjAwOWIyNzAyMjNmMjI3MjU2MGRlMTA4MzNmMWE4MDEyNGFiZCBsZWdhY3ktdHJ1bmsKKzU4MjggZTI4MTI0YmI3ZmFiMzE4YjFmZmY4ZGY1ODNlNDA0NzI1MDg1MDg5MSBsZWdhY3ktdHJ1bmsKKzU4MjkgNmNhOTc4N2NkM2FhYTBmNTZhM2U1YWVmZDlhYTc1ZjY1N2U2MTBhNSBsZWdhY3ktdHJ1bmsKKzU4MzAgMzY5YjMwZjc4ZDYzZmNlNWE3MGYwMjI2NTVmMGNmZGU1MzlhNWI5YSBsZWdhY3ktdHJ1bmsKKzU4MzEgYmMxN2U4MzEzZWEwNmJiNGIxNGU0Yjc2NTY3YTNjZjIyYjU3ODQzNSBsZWdhY3ktdHJ1bmsKKzU4MzIgZjhmZjI4MzI5OTcxNjJkNWZjMmU5NjZiNjVhYjExOGU4YWE1NmMzMiBsZWdhY3ktdHJ1bmsKKzU4MzMgYzI1ODY1ODg0NjQ5NThkNDg0ZTZmNDAzYTIwMzc2MzYyNGFiODQyYyBsZWdhY3ktdHJ1bmsKKzU4MzQgNGUxYWQyNDQxMGE3MTE2ZmNmNGI3OTQxNjFlOTNiODA5NGVkODNlNCBsZWdhY3ktdHJ1bmsKKzU4MzUgYWYxYzJmMzZkYzM0ODY5ZTUwY2ExOWQ0ZGNmNDY1MjczYThjMTllYiBsZWdhY3ktdHJ1bmsKKzU4MzYgM2NmMmQ4YTJkNzRiMTNkNzc1ZDVjMGQ2MTczYjFlN2IyNWQwOTk3YyBsZWdhY3ktdHJ1bmsKKzU4MzcgMDUwODRlZTU0ZTU0OGUyY2I4NDQ3N2M3ZjJmMTRkYmZkZjFiOWI5NCBsZWdhY3ktdHJ1bmsKKzU4MzggNmIwYWY3OGE5MGU1ZjExMTg3MjNhOThjZjc3YTM1ZDM2ZmQ1MjBiMiBsZWdhY3ktdHJ1bmsKKzU4MzkgMzU5MDhlMzc1ZDFhNmY5OWZhMjIxOTg1Y2IxNmQzODlmNWY5MDk4NyBsZWdhY3ktdHJ1bmsKKzU4NDAgZmUxOThkZWUwNjQwODYyN2U3M2M2NmY3MmIxMzk5Mjk1ZmU3ZDQwOSBsZWdhY3ktdHJ1bmsKKzU4NDEgMGM4ODIxYmY2ZGI1NjZhYmQ3MzE0OWQ4MGFlOTJjMjM0ZTVjYjA1MCBsZWdhY3ktdHJ1bmsKKzU4NDIgMjhmNDFlYzdjNWNjNDIzNTU5ZjVhZjViNDc4YTUyZGEyNTUzMDNkYyBsZWdhY3ktdHJ1bmsKKzU4NDMgZTA4NjJmMDVlMTg1MDc3ZWFmMDMxNDQ1NGEyNzE0M2YyZGZiMGEwMiBsZWdhY3ktdHJ1bmsKKzU4NDQgODI3MzM4Njk5MDk0NDRkNDllYTY3ZDA5ZjI1ZTgzYTZmODZjM2FiYSBsZWdhY3ktdHJ1bmsKKzU4NDUgNmEzZmZjMWRiYjk1ZDg5NzE3MDIzMWFjM2FlNDU2NWQxNWQ4MDBlYSBsZWdhY3ktdHJ1bmsKKzU4NDYgMDQ2ODg4ZGExZjQ0YTZmNTExM2NkZjJhNWU5ODViNGI4OWY4ODQ2OCBsZWdhY3ktdHJ1bmsKKzU4NDcgMmVlMWY5MjNjYjE5MzIxNmNjMmVkMTAyNjRiZTM5ZGM5M2QyYjFmOSBsZWdhY3ktdHJ1bmsKKzU4NDggYjdiMmMxM2I1ZTMzMjg2MGNmYmExYmM2ZGRmZWJiYjEzOWVhNWZlNCBsZWdhY3ktdHJ1bmsKKzU4NDkgYTQ0MjM1ZTk5NGYzN2Y0OTdjN2I2YjIyZDE1Mzk5M2RiMTM5MjE4NSBsZWdhY3ktdHJ1bmsKKzU4NTAgOTJmMTFhZWZiNWNhMzVmNDQxZGNiMzhhOTU1MGUwYzlkMTYyYTg1ZSBsZWdhY3ktdHJ1bmsKKzU4NTEgYzcxYTdhNGY1ZjhlYTU4MjVhMDc4YWNiM2RmNWYwNzBiZGFmZDhkNiBsZWdhY3ktdHJ1bmsKKzU4NTIgZDU1MzJhNzFiNDU0YjZjMzI0OWU4MWVhMjAwMjNmMTA5NTcxMjc1OCBsZWdhY3ktdHJ1bmsKKzU4NTMgNmY1ZmViM2I0ODI5Zjk4YzA3ZDRhNTcyMjc5NWUzOTk2ZDAzMDRlOSBsZWdhY3ktdHJ1bmsKKzU4NTQgOWZhMjIyOGJiMDk2MjBlYmQzZGQ4MjA2ZDhiNGJhZjhhZjE4YWY3YSBsZWdhY3ktdHJ1bmsKKzU4NTUgMTY5NmZiZjMwMmI2M2ZkMWQ2MWI3MjRjOTU1MDNiYjBkNTQ1NDVmZiBsZWdhY3ktdHJ1bmsKKzU4NTYgZDE1ZDI5YmJjMWNlMTFmY2RjOGY1NTZiYTAzNWJhNTNhZjA5N2FjMSBsZWdhY3ktdHJ1bmsKKzU4NTcgODMyZjI2ZDBlMDY5ZjZkNTllY2NmMzA1YzllYmFmMTI4M2ZlNjk1MyBsZWdhY3ktdHJ1bmsKKzU4NTggMWMwMGQyODQ2ZTg0OWY2OTYyNWNjNmI3MjI3OWFjMDUzYWUzOTRiNCBsZWdhY3ktdHJ1bmsKKzU4NTkgYWRhMjIyNTg1MzY2ZTZmNTkzNGE5OWMyM2E3NmQ0ZGNiYjE0Y2I4MSBsZWdhY3ktdHJ1bmsKKzU4NjAgZDlhNzk5NzdiMzhkNDM5ZWEzZjEzOTQ5NWI1ZDI3YThiZjhiMzhhOSBsZWdhY3ktdHJ1bmsKKzU4NjEgNGZlYTZjZDk0ZGZhNGQ1OTIyM2RlYjVmOGRmZTAxMjU0ODkxZWE0YiBsZWdhY3ktdHJ1bmsKKzU4NjIgZjU5ODYyMzA1MGEzOThjYTNiMjI4MmNkYTBiMjkyM2EyMjNlMTc4YiBsZWdhY3ktdHJ1bmsKKzU4NjMgNTQ2NGZiMmQxMjllNTA4MTkyMTk5OGIxODkzZjUxYzMxN2NhMTg4ZSBsZWdhY3ktdHJ1bmsKKzU4NjQgNWQ3YTE1ZGY3MTU1NTI1Njk2ZWZmYzMwM2JhYTk0ZDc1NTU2N2RjOCBsZWdhY3ktdHJ1bmsKKzU4NjUgNDA5YTg5YzVmNjZkNTJiMjJiNGU3ZjcxYTkwOWY5ZGY4MmRjMGY5YyBsZWdhY3ktdHJ1bmsKKzU4NjYgMDI0MzVmZDk1Mjc3YzYyZDJiZjRkNzI5YTNiNTU3NmQ5ZGY2MWU0YyBsZWdhY3ktdHJ1bmsKKzU4NjggMTE2ZGI3MzQ3ZDAxYzRjNmU1ZWUyMWU0YzI5YTUzZGM5ZmNiYzRmYiBsZWdhY3ktdHJ1bmsKKzU4NjkgMWRmOGY1YThiMjE2ZDExMTU1N2VkZjgwYmRlODZlYTE4YmQ4ODg0NyBsZWdhY3ktdHJ1bmsKKzU4NzAgNTJkY2U0Y2RjOTMwZTAxYThlMjg5N2VhYzk2OGZiYzQ1OWM3MjcyZiBsZWdhY3ktdHJ1bmsKKzU4NzEgYmE4M2RkNDU4NTMzMTE4NTUxYTlmM2YyYzQ0ODQ1NGMzNmQ0NzY1MSBsZWdhY3ktdHJ1bmsKKzU4NzIgZTk5NGU2N2JjYjk1MDAxZGZkOWU0ODU5Yjc4YTI2OGYxMjQwMWUwMiBsZWdhY3ktdHJ1bmsKKzU4NzMgYzI4MzQ0N2I5ODVmNTJlYTQ3ZWIwMDQxZTk0NzM5OTkwZTQxMmY1MiBsZWdhY3ktdHJ1bmsKKzU4NzQgODEwZTY5MGFhNjAyYjAzMjQ2NzFkNWIxZWMyZjkyZTk1ODU3NDFiYiBsZWdhY3ktdHJ1bmsKKzU4NzUgZjI2MTRhYzczNWQwYzI2YzYxYThkNzg4ZmYzZjc4ZDkwNmNjYmNmMSBsZWdhY3ktdHJ1bmsKKzU4NzYgMzk3ZTZkNTNhN2FkZTU4YmI4YzkwZmFiM2I2Y2ZhZjJhYmQzOGJjMSBsZWdhY3ktdHJ1bmsKKzU4NzcgMjc0MDZjMzZlOGJkNDQ5ZTc4OGRiNzUxMzAxMTQ1NDc4Y2E3ZTgyYiBsZWdhY3ktdHJ1bmsKKzU4NzggMDIyNDc0YWMyNDUxZTQ5MDA2ZmZlMDU1YmQzZTQ1YmRjNGIzMGIyZSBsZWdhY3ktdHJ1bmsKKzU4NzkgMTQ5OTFjNDMzMWRmMDg0ZGIxNDRiZmVkYzU5NDIyYzUxYTlhM2IzNyBsZWdhY3ktdHJ1bmsKKzU4ODAgZjZiZGRhMzcwY2I3NGIwZmQyM2U2NzVkNzYyYTZjN2RkMzc5ZjAzYiBsZWdhY3ktdHJ1bmsKKzU4ODEgMmZlN2Q0ODk2NTRlOGFkNWM1NzMxYzAwYzVjMGZkYTE5NGVlNjA5NiBsZWdhY3ktdHJ1bmsKKzU4ODIgMDk4Y2JkNmQxOTZlNGY3ZmRjOWZhODgxYmZiNTY3YTQxMzc5NWM3MiBsZWdhY3ktdHJ1bmsKKzU4ODMgZjZhNmE2OTkyN2ZmZWYyMTUzZjIwZWY2MmRlZmNhYWI1ZTQ4YTc5ZCBsZWdhY3ktdHJ1bmsKKzU4ODQgYjZjMGE0MWU0YTQ2NTgwYzJkMDMzZjY5NDMyZWFjOTE1MjFmMDYxMSBsZWdhY3ktdHJ1bmsKKzU4ODUgZTFkZjkwMjA1YTMzMzkzNmQ5NjY5MWViNzQ0NDQ2YjA0M2JiODg2MSBsZWdhY3ktdHJ1bmsKKzU4ODYgMGFjNWZiYWY4YWVmOGJhYWNmNDkxNmUzNjNlMjQ1Mzg0MWI5ZDQyNSBsZWdhY3ktdHJ1bmsKKzU4ODcgZTA0NWY5MTMyYjA3YmNiZGFlOTAzNmM5YWZlNGE5MGM0OTU5NGQ3MCBsZWdhY3ktdHJ1bmsKKzU4ODggMDEzYmJlNGVmOTQzN2FjNTgwOTBlMDExMzMxZDVmMWRiMTljNTg1OCBsZWdhY3ktdHJ1bmsKKzU4ODkgOTBiNTQzMTI2NjFhMzUwMzRlNzY0ZDE4MzY1NGZiZjUxMmRjZDVkMiBsZWdhY3ktdHJ1bmsKKzU4OTAgNjdmNWQyOWQ0MDViMmE5MGY3MDE3ZjJmYTVkZDRjNjI4ZGU0ZGE4YSBsZWdhY3ktdHJ1bmsKKzU4OTEgMDJjOWRhMjBiNDFlNjkzNjZlZTJjYmI2NDZhNjYwNWNjZjRiOGQ1MyBsZWdhY3ktdHJ1bmsKKzU4OTIgMjRiZWUzNzgzYjM1ZjNmNGM5MGZlMDYzMzRiNjFkMjQxZTMzMDI0YyBsZWdhY3ktdHJ1bmsKKzU4OTMgMjMyNTRkYWEyNDdiODc1MzIyYzgyYzEwNmRkMmMzOWI4MGFkZWJmNCBsZWdhY3ktdHJ1bmsKKzU4OTUgNjQwMmJlMjY4OWM1NzlkMmRjYmJlYWMyNGFjZGU0NzlkNWNiMzViNSBsZWdhY3ktdHJ1bmsKKzU4OTYgYWY1ZmY1MjMxZDRhMWQ0YWJmNzBiNGZhNTEwZjZlNjA1ZWFhNmFjNCBsZWdhY3ktdHJ1bmsKKzU4OTcgYmE5ODMxNDA3MThhYTQ3Y2U4MGE4NGI0MTZiMTExZmEyYzI1ZGIzNyBsZWdhY3ktdHJ1bmsKKzU4OTggZGE4NmIzYjU0MzYzY2NkNDNkOTBlYThmZGI5NDBmNDg2NWM0OTJiMCBsZWdhY3ktdHJ1bmsKKzU4OTkgNTc4NDY2OGQwNTc2YmYxMmNhOTM3MzAzYmNlMjI5OTVkNjYyYjg0OSBsZWdhY3ktdHJ1bmsKKzU5MDAgMjZiZWM5ZTIyZTVkMGY1NjU0MWZkNjkxOTJjMjM3MzJkMDcwOGRmMSBsZWdhY3ktdHJ1bmsKKzU5MDEgNmFiYzc1ZWM2ZDI5ODI1MGM2MDcxZDFlYWM2Zjc0M2JlZDI4MTRiNyBsZWdhY3ktdHJ1bmsKKzU5MDIgNTc4Y2EzMDJhNTk4YzM2NmY4MDA0M2VmYmNjMmZjMjQ1ZmJkMWYzZCBsZWdhY3ktdHJ1bmsKKzU5MDMgNTI5ZjRkOWNiZTNkOGU3MjEzZWRkM2FkZDQ4YWY0N2NmMWUyNGMyZiBsZWdhY3ktdHJ1bmsKKzU5MDQgZjcyMDUwZGQ2MWE5YzNmN2NkZDliNTFlMGZmNGE0ZGYzNmJiOTA2ZCBsZWdhY3ktdHJ1bmsKKzU5MDUgZGI5ZjZlZGU1OGE3NjZjMDliZmQxODc1NTg0YjFkY2JkYzI5NzVlMSBsZWdhY3ktdHJ1bmsKKzU5MDYgZDcwMTQ5MjAyYzkzZGM2MzJlNDE5NGVkYzc4Y2FhNjY0ZjZlNzEzMyBsZWdhY3ktdHJ1bmsKKzU5MDcgZDBkMWEyMWQ0OGIwYWQzY2Y3Y2ZiODE1OTA1MGM2ZWMwMGJmYjcxNCBsZWdhY3ktdHJ1bmsKKzU5MDggMWFmMWFkY2E4MjQyNzQ4YTdjYWI1ODEzNGQzOTgwNGM3ZWZiZDRiMyBsZWdhY3ktdHJ1bmsKKzU5MDkgM2JkZTRiNTlhNWQyZTBjYmJmMzYyZWY3N2Q4N2U0OThlZWY1OTA4MCBsZWdhY3ktdHJ1bmsKKzU5MTAgNTU4MDhmNjAwOWNkZDAyMzc1ZTNiMTM5ZjBiZGM0ZDY1OGIwMDUxMSBsZWdhY3ktdHJ1bmsKKzU5MTEgMDY2YThhZTRkNDA2M2FiOTk5OGE3ZjI3MWI2MjAwYzUyMGZmMGQ4ZiBsZWdhY3ktdHJ1bmsKKzU5MTIgMWZmMTI4MDRmZjJhNzQ1ZWE5YmYxZDlhY2U1MWYzNmNlM2Q5MjM4MyBsZWdhY3ktdHJ1bmsKKzU5MTMgZTc2Y2EzNGQ0OGYzZWVmMzE1NTI5MDZiMTI4MmM3MTFlYWU3MzIxMSBsZWdhY3ktdHJ1bmsKKzU5MTQgMDc5NzdiZjBkOTk3MGI3YzFiOWQyNmJiMmUxZWEwZWU4NDg5Nzc1OSBsZWdhY3ktdHJ1bmsKKzU5MTUgNjIzYmE5YmRlYjIyMTUxYzkwZDQ1NmJkMTNmOWJiNjI0MzRjMzkxYiBsZWdhY3ktdHJ1bmsKKzU5MTYgZGI3NmZkMzkwZjc0OWExZmQwNTU4MmRiMDk4YmIzNDM3MmFmYTE2OCBsZWdhY3ktdHJ1bmsKKzU5MTcgZjkxZjYxOThiMjc2OGY2YTUwZGE2ZTdhMjBjMzQ3ODY2Y2Y2N2Q2YiBsZWdhY3ktdHJ1bmsKKzU5MTggYzNlNTFlYjFjMTRmZGZiY2Y5M2IxYmFhMTBmYzA0ODBlYmQyYmU4NiBsZWdhY3ktdHJ1bmsKKzU5MTkgNzEzYmQ4Mzc3MzgyMGZiZWEzZDdhYjYxM2YwZGI2MzdjYmQ4N2YzMSBsZWdhY3ktdHJ1bmsKKzU5MjAgNWFiYmM5YjVmZGYwYjI3YWEyZjIxYjQ3ZTIxNjhkMWRhY2UxZjkxZSBsZWdhY3ktdHJ1bmsKKzU5MjEgZWM4NDk0OWY4MWVlZGY5M2ExMjQ3MzMxYTNmOGZlNzNmNzcyZWIxMCBsZWdhY3ktdHJ1bmsKKzU5MjIgYTdjMjczNzY4N2MyMTJlNTVmYWU2MWQ2N2JjZTgwYzYzZThmOWM2YiBsZWdhY3ktdHJ1bmsKKzU5MjMgZTY0NmFmYzUwYWM3M2E5YTNjZmM4NzQ0ZDM1NmEyNzZhNTcxNDE5OSBsZWdhY3ktdHJ1bmsKKzU5MjQgMTQ0NGEzNTI0ZWRlMDliMDQwN2EwOWFiYmIyYzBiNTBhNjk5MmE5YSBsZWdhY3ktdHJ1bmsKKzU5MjUgZGNjNTk0OTM0OTlhZTcwYmQyZGEwYzYwZGQxNTc0MDJmNzlkZTEwMiBsZWdhY3ktdHJ1bmsKKzU5MjYgYTcxZDJmZDkwZmE4N2I4NGY5YjE0Y2E1M2MzMDYxYTAxZDMxODI1MSBsZWdhY3ktdHJ1bmsKKzU5MjcgNDA4ZGZjNzE4OTUxOGYxZDRmYTk2MDAzODcwZDhkNzU4NGQ0ODdjNiBsZWdhY3ktdHJ1bmsKKzU5MjggNzA1MjJkYjExMDE5YThjYjdjMjFiODE2MWNhZTRhN2U2ZGU2MGUxZCBsZWdhY3ktdHJ1bmsKKzU5MjkgOTdiMGU5NjI1ZWIxZDVmODBlYmI2ZjcwNGZiNTY1MThhMjY2Y2JjZCBsZWdhY3ktdHJ1bmsKKzU5MzAgODAzZmJjZGNmYzlmODdmNzQ3Y2Q0MGZmMTM4OTMxZGQ0N2VmZjNkZCBsZWdhY3ktdHJ1bmsKKzU5MzEgOGIzZjJhODYyMGY1NGZiOGI0NTRjYTVlOGRhNWFmNDdiOWJmNzExOCBsZWdhY3ktdHJ1bmsKKzU5MzIgZDE5NjhhN2NjNjIwYzE2MTAxY2Y2Y2FkMTYzZmUxZWIwMTA1MzgzOCBsZWdhY3ktdHJ1bmsKKzU5MzMgOGRkMDE4OGU1MmE3YzhjNTliOGNmZTAzMjVjMWIyMWY4OGU4MjUxNiBsZWdhY3ktdHJ1bmsKKzU5MzQgZjBiYWFkYmZjYWJkYjUyZGNiNmYyMGNhYmIxMDk3Nzg0ZDBkZmJhNCBsZWdhY3ktdHJ1bmsKKzU5MzUgMTQyNWZjNjQ5MWViYmZjZDliMmZiYzQ3MjU5ZGM3NDA3ZjcwMzUyMiBsZWdhY3ktdHJ1bmsKKzU5MzYgNDUwZjRkNDZkOWRiZjAxMzZlOThjNzNlMjhlYmFlMjQ3OGFlM2VhOSBsZWdhY3ktdHJ1bmsKKzU5MzcgNjIwYWIzZGIwNzkzNGM0MTgxYmUyZTdkYjliNTU5NzRkZDViYmViYiBsZWdhY3ktdHJ1bmsKKzU5MzggZTkwNDMyMjM5MzVhZDM0Y2NjZjkxNGQ0YTBiMGM5MWZlM2Y1OTVmMCBsZWdhY3ktdHJ1bmsKKzU5MzkgYjM4ZmRiMDA4ZjFkYzMxYTk1OGRiYzA0MTcwMDk4OTdhNjk2NjZiZiBsZWdhY3ktdHJ1bmsKKzU5NDAgYWE4YWRmZGQzYWExZTFlOWFlNWIyY2UyYzI1MjhiZGQ3MTI2ZTBkNCBsZWdhY3ktdHJ1bmsKKzU5NDEgNTBhYTE2ZjgwOWQ3NjAwMzJjMDQxZmQ1ZDQ2NDE3YmU2MzY4M2EzYyBsZWdhY3ktdHJ1bmsKKzU5NDIgYTI5MmI3NTgzYzAxNWEyODJhMWVmOTY2MmM3YWY3ZDBjODQzYWE1MSBsZWdhY3ktdHJ1bmsKKzU5NDMgMTEyOTllOTVjYWU4NDBkNzAxM2IwMzYwYWMxOTJmY2M5NjdlZmExMiBsZWdhY3ktdHJ1bmsKKzU5NDQgMDczNTUwZTMxMjczMDc0N2Y1NjM0MjE0MTUzMmI5MGM3OTBmYzhlYSBsZWdhY3ktdHJ1bmsKKzU5NDUgMzVjNGE0OGQ5ZGExNjk0YzUwZTZmODgzYTUwOTM3ZTZjMTYxMjM2MyBsZWdhY3ktdHJ1bmsKKzU5NDYgYTRmMDFkNDNkYWQ2OTkwMTVkMTYwNmE0YmE1YjczOGVkMzAzMDhkYSBsZWdhY3ktdHJ1bmsKKzU5NDcgODljYWZmZDJjMDYxNDg4MzVjMjhkNDY0NmU5YzYzM2NiNjg3MzczYSBsZWdhY3ktdHJ1bmsKKzU5NDggYWVjOGJiY2Y4YjBlNWYwMmFmODI3ZGM0OTNkZWRiNDBjM2VmNjFmNCBsZWdhY3ktdHJ1bmsKKzU5NDkgODI3ZjExYWQ2NWRmNjNkZDg3ZDlkYTlmYmEyNDRiNTEzZDk3YzE2ZSBsZWdhY3ktdHJ1bmsKKzU5NTAgZTI5MGZhZWI5MmM4NWY3ODNiNDMyM2QwN2NhYWNkOGZkOTY5MWZkNSBsZWdhY3ktdHJ1bmsKKzU5NTEgMDBjYTkwMGM3NzQyYzVlMDczNDI3NjQwYmIzMzVmZGVlMDY2ZWQ1ZCBsZWdhY3ktdHJ1bmsKKzU5NTIgZmVkOTNkMmQ4OGZjNDZmOWNiN2U2MDVlNTQzMmZhOGNjMmI4ODlmNCBsZWdhY3ktdHJ1bmsKKzU5NTMgY2UyN2UwMzI4NDYyZWQ5NmYzOTBjMjg2ZjIyMjQ1YjE5NzNjMTI5YyBsZWdhY3ktdHJ1bmsKKzU5NTQgNjFmMTlhN2IxZmYxMDZjNjdlOTUzMjk2MjEwNWU4NWY0OWRjM2VhNiBsZWdhY3ktdHJ1bmsKKzU5NTUgMDJhMjNlNmU0MTRhZmZlOTQ3OWE4ZGVmYzU4MTc4ZjJkOTQ2NjUzZCBsZWdhY3ktdHJ1bmsKKzU5NTYgODM1NTcxNTNmNTQ0NzQwMTMzM2VjNWQxYmNiZjAyYjM3YWFhNDFhZCBsZWdhY3ktdHJ1bmsKKzU5NTcgMmMxNzhiZjcwZjdlZjM5YzE3NDRhZjRiYTg0MzE4YzZlOThkYTZkOCBsZWdhY3ktdHJ1bmsKKzU5NTggM2I2ZWJmOGQyYTU5ZTY2OTBjOTI2YWRkNDY0Y2E5OWJhYjg5NmY3MiBsZWdhY3ktdHJ1bmsKKzU5NTkgMWRmYzUxOWVhM2NiZTQ1ZmQ3ZjAwNGMzY2QxYjYzODU4YTFkNGY2YiBsZWdhY3ktdHJ1bmsKKzU5NjAgMTZhNWY2MDQ4NDYxZjgzOWNjZTM2OTg0OThmOTJkODZiMDI1MWU3MiBsZWdhY3ktdHJ1bmsKKzU5NjEgMDgxMzBmMDBjMThkYjUwM2Y0ZTM5NWNhMmU1NWQxYzc3OTExOWE5OSBsZWdhY3ktdHJ1bmsKKzU5NjIgMDNjNmMxODMyNWVhY2E5NjJjMzE4NTc1NjQyMWM2N2VlOTM3MmY0OCBsZWdhY3ktdHJ1bmsKKzU5NjMgMTQyY2JhYmRkOTQ1NTZhMzNiNTRmZTBlYTI0NzQ4YTA3YTJlM2IzNCBsZWdhY3ktdHJ1bmsKKzU5NjQgZjcwZGJlNjA4ZjAzMWY3YmFkOGExZWVjMjAxZjE1OGY4MmE0ZTFlYyBsZWdhY3ktdHJ1bmsKKzU5NjUgOGQ0M2I4MzAzNDFiYjU2YWVmMWFmYjNmMDZiYjVmZjVhMTMzZmE5NiBsZWdhY3ktdHJ1bmsKKzU5NjYgZDYyNDZhZWI0YTNmMjc0MmUyY2I1YzI1NjQ3MDczY2ZjMDJkOGYxYyBsZWdhY3ktdHJ1bmsKKzU5NjcgY2RlYTNmMjdjZjdjNzBiODIwOTRlNjY1MmM2YzFiNTJlY2VmOTIwOSBsZWdhY3ktdHJ1bmsKKzU5NjggNWYyNTA0MGZkNjNlNmY0MGQxZTY3YzZiNmQ3NDcxNTJhMjA0YjdkZSBsZWdhY3ktdHJ1bmsKKzU5NjkgZWFlNzBkN2YyZWM3YzhlMGE1ZTExZWM1NzdjZGJmYjkyYTQzOTcyMCBsZWdhY3ktdHJ1bmsKKzU5NzAgZWI1YjhkM2Q4YWNmNDI3YjNiYzNlZmUxNjY1MThhZmYyNWQxN2RiMyBsZWdhY3ktdHJ1bmsKKzU5NzEgNjE4OTRiYTU3MWY1YTgzZjUzYWMyNWIxMDk5YzkzOTUzZTU4OTE5NSBsZWdhY3ktdHJ1bmsKKzU5NzIgODk5YWVmZWE4MDFjOTlhZTM0Yjc3NTZiMDA1ZGY2ZThlODhmNmRkMiBsZWdhY3ktdHJ1bmsKKzU5NzMgZThkNTAxYzg4YTNlM2U5YmRjZDZmZWY4NGYxZDA0ZDY5ODEwY2ZiMyBsZWdhY3ktdHJ1bmsKKzU5NzQgZjZiZDU3ZGJkNTI0ZGVlYjc1OTliNzhiMzZhYjhiMmUxNjY2YWUzZCBsZWdhY3ktdHJ1bmsKKzU5NzUgZDI0ZjhkNzllY2EwNzRjMDIwMzVjZjE4MmVjYmEyZDJhMTA5YWJmMyBsZWdhY3ktdHJ1bmsKKzU5NzYgNDMxZThkMDEwNTQ3YTIzYWM4Zjc4NDZjMmJiZmVjNmViNzY3ZGYzMiBsZWdhY3ktdHJ1bmsKKzU5NzcgNmYzNjNhNDE3NjYxMTcyZmIyNDhiYmRlMDA0ZTdmN2ZmNzI1MTExYSBsZWdhY3ktdHJ1bmsKKzU5NzggNTU4ZGNlNjU1M2Q5MDViYjA2NTAxNjIyOTk2NDAxYjM5NjE5OGJkNyBsZWdhY3ktdHJ1bmsKKzU5NzkgYTFjMGMyYTM4ODgzZmFiZjc5ZjQ2OWE3ODNjOTcwN2JjYzVlNDA4OCBsZWdhY3ktdHJ1bmsKKzU5ODAgYzVkMzBhNTY0M2JlYWVlZGY1ODZlN2U5NWFjM2IwMTVhMmJjOTI5ZCBsZWdhY3ktdHJ1bmsKKzU5ODEgMmEwOTlmYjc2ODIzYjMyZWMzZDlmNjY3OWRkMTg1MzdiZTVhZmY1YyBsZWdhY3ktdHJ1bmsKKzU5ODIgNDM2MWE1ZmZiNjM4MjYwMmRlM2ExY2EwNmJiNGFjNmZiZTZkZWZjZCBsZWdhY3ktdHJ1bmsKKzU5ODMgMDVhZjI5ZThkZjBlNzU2ZjZlOWFiZDY1NGU3OWI5YmJlYzAyNTE5ZCBsZWdhY3ktdHJ1bmsKKzU5ODQgNTY2ZjQ2YjlkNzEyNmM5OTM5OTZkNTU5ZGJlYTQ0ZjZkYzY3YzkwNiBsZWdhY3ktdHJ1bmsKKzU5ODUgNzg3OWYzYjM5NjA2ZWNmYmMzYzU3ZjM1NDQyZjM0OGVmYjYwMmYyZSBsZWdhY3ktdHJ1bmsKKzU5ODYgNTQyYzgwZTYyMTExNGZmMmM5ZjlmMmFjNzk5ZDllOWEwYjM0NWEzZSBsZWdhY3ktdHJ1bmsKKzU5ODcgN2YyMzBkNGYzNjU1ZDY2ZTM1MzQ4ZDkyYWVhNjkwYjk2MTM4ZGU0ZCBsZWdhY3ktdHJ1bmsKKzU5ODggMDVlODUwNTU1ODJjYjRhMzJlZTNlMTg0OTlkMjY4OGYzZTdiNjg0OSBsZWdhY3ktdHJ1bmsKKzU5ODkgMmIyZmM5YTBiNGVjMTY5Njg2MDY1YTI3YTI4M2JlMDJmOTRkZmQxYyBsZWdhY3ktdHJ1bmsKKzU5OTAgZDc4MDFhNzdmY2Q1N2JmMDQ5ZGU3YjQ1MzMyMTU5MzIzMGM3MWQwYiBsZWdhY3ktdHJ1bmsKKzU5OTEgMDE0NWI4YWUyZDVmYjlmZDA4ZjJhMjM2MTlkMGI1MjJhYzIyYWI3ZCBsZWdhY3ktdHJ1bmsKKzU5OTIgOTM5OTQ1MTkyMDAwMzhlZTcyMjNlNjcyNzVjZjFjY2U3MDdlZDdkNSBsZWdhY3ktdHJ1bmsKKzU5OTMgNDNhZjUyM2EwMGNhZmQ3MDY4NjYxYmRiNzAyNWI4YmI3MmRlM2JmOCBsZWdhY3ktdHJ1bmsKKzU5OTQgNzNiYzQxYmU3MDc0ZGUzM2FlNDFmNWExMzY5NDZiMWUxNjk4MDUwOSBsZWdhY3ktdHJ1bmsKKzU5OTUgODU1MmUxN2FkYTY4YTE4ZTg4Yzc0Mzk4ZWY4MDRlMjczMDc0OGUwMyBsZWdhY3ktdHJ1bmsKKzU5OTYgNTEwZGJmYThjNTk5ODdjZmZjYjRkMGU0ODI2YzZlZjM5ZTI3MGYxMiBsZWdhY3ktdHJ1bmsKKzU5OTcgZWI4M2U0YjBjNzMzNzgwNGQxMDA0MWY3YzYyZmIxMmQ2YTQ5NTc4ZCBsZWdhY3ktdHJ1bmsKKzU5OTggNTBlNWI0YzU4OTVmYzUyZjU3YWUzNDMwMzVhNWQzOTAyYTNiMWI1NCBsZWdhY3ktdHJ1bmsKKzU5OTkgMjRmYjlmNGY4OTg0YjQ3ZDFmZDQ0NTU4MjEyNDBiMmFjYWRkOGVmNiBsZWdhY3ktdHJ1bmsKKzYwMDAgMzhlMTQ4MGU3Zjg5ZGJkNjhlNjc3NjMwNTA5MzA2ZTJhYzYzNTk5OCBsZWdhY3ktdHJ1bmsKKzYwMDEgNzI4ZDU3NDVhZTdiODYyY2Q5MjJhODMyNTYxYTMyYjllYTM4OTNjNCBsZWdhY3ktdHJ1bmsKKzYwMDIgZTY3YWRjOGIyZjE2NjcyMjViMWRlN2UxNzIxZDBkOGY4NmMwZWY2NyBsZWdhY3ktdHJ1bmsKKzYwMDMgMjBhMTNmY2RhZTU0ZjkzMDBhZjk0NjM4YzRhNWQyY2Q2NzkwOWM0NyBsZWdhY3ktdHJ1bmsKKzYwMDQgYWM4ZDI0ZjFkZjA4Mjk4YTkwN2NiZDIzMmNkZjU2YWEwMmQzZWYyOSBsZWdhY3ktdHJ1bmsKKzYwMDUgODIzMDcwNzFjNjY1ZTdjNGUxY2Y3MjNiMTljN2NkOWQxYzUyNzgxNSBsZWdhY3ktdHJ1bmsKKzYwMDYgMzViZWM4OGQ5NzM0MmFmMjcxN2NlYjUxMTlkMjlkMWUyZWQ1M2QwZCBsZWdhY3ktdHJ1bmsKKzYwMDcgNmM1NDFjNjNjNDNhMTEyZjQ5YWNmMWI0NDI3OTA4MzA0YWNlYzdlNiBsZWdhY3ktdHJ1bmsKKzYwMDggNWFlYzQ5MTExNzcyNmE3ZmJjNGQyMjkyY2YwNDNlMGQwMDFiYWJkNCBsZWdhY3ktdHJ1bmsKKzYwMDkgMmIxNjZiMjIwYzExM2RhNzk4YzY4OWNjYTEwYWU1MjE1YjQ2OTFmMiBsZWdhY3ktdHJ1bmsKKzYwMTAgNmMyNTgwNDNjZmFhNWE4MzU0ZjA4ZGM1MDFhYWIwMzMzZWE0MzA3NSBsZWdhY3ktdHJ1bmsKKzYwMTEgNWRmMmFjYmEwZmM1MDE5NjJhYTI3YzllN2ZmODJmOTI5YTA2ZWUzOSBsZWdhY3ktdHJ1bmsKKzYwMTIgMjJkN2Y1NGM1NzkyN2UzM2JmODYyYzUyN2NmYTlmZjRmYTI3NjM2YiBsZWdhY3ktdHJ1bmsKKzYwMTMgMmM5MDBkYWU4Nzk5MzViY2JmMDg3YWUzZjY2NzVmMWRiZGE0NDdhNiBsZWdhY3ktdHJ1bmsKKzYwMTQgNmY1MjNiZDBhM2FiZmYyOWE5OWRhNGEzNDI2NjMxMGQzYzY3MmY0MCBsZWdhY3ktdHJ1bmsKKzYwMTUgM2Y3Y2RmMTY2M2Y3YWZmMzQxNzYzNjZhZTA3ZDBjNjFjMzg2NTRmNiBsZWdhY3ktdHJ1bmsKKzYwMTYgOWNhOGFlNzFiYmIwOGQwM2NiNTFlZDRiYmE0MDU4ZWIxNDA2Zjc4MSBsZWdhY3ktdHJ1bmsKKzYwMTcgMDRlZGZjYmI3MTIxMzBhNzNiNTk1OGQyZjY2YWQ0MDk4OWVlYTE5YSBsZWdhY3ktdHJ1bmsKKzYwMTggZjY2MzA2YmMwNjYzZTRkMjdjMTU3NGFlOGJmZGNjZDdjZTgxMmRmNCBsZWdhY3ktdHJ1bmsKKzYwMTkgYTk1YjM1MGE0NGRhZTdhYzc2YzFkNGVmMGQ2YmU2Mjg0NjRhMjE3ZCBsZWdhY3ktdHJ1bmsKKzYwMjAgZThhMmE1ZTRjN2IwNDYwYjg1N2NkZjA5OGYxMzZhM2MyMGE4OWQ2ZSBsZWdhY3ktdHJ1bmsKKzYwMjEgYzdlODA4NTk2ZDE0MWMwMjI1YTczZDM0MzcyYWZmM2YyZjllMDMwMiBsZWdhY3ktdHJ1bmsKKzYwMjIgMWQwMzVlMjExMjA5NjkxOGFkMWMwMTAyYmQxYmFjNzYyNjU4YzNmMCBsZWdhY3ktdHJ1bmsKKzYwMjMgMjQyNzliYWZhODI4NDI5MjcyYmE4Mjk2MDEwYTNjOGY3ZDE5Y2I0ZCBsZWdhY3ktdHJ1bmsKKzYwMjQgMjljMThmYjEzZDhmNDEyZDFjOWUwZTE4NjYxNTQzNmNlOTk5ZjY5NCBsZWdhY3ktdHJ1bmsKKzYwMjUgNTNjNjZkMTlkMTI3YTMzMGZhMjExNmJkNjhhM2YxZTM1YmNhMWJmYiBsZWdhY3ktdHJ1bmsKKzYwMjYgY2VlNGE2ZDg0MTVlYzFiYWYyYTJmOWNiOGI4MTJjNTA4YTA4MTU0NSBsZWdhY3ktdHJ1bmsKKzYwMjcgMDk4Yjg4ZDI2MGQxMmZiMDY2Njc3ZDAxNTc5OGQ1ZmY5Mjc4NDhkZCBsZWdhY3ktdHJ1bmsKKzYwMjggMThhOWM2MjgwNTQzYjUyMjliNzcxZjY2NzU5NGFhMzUxMTJjMTc2NyBsZWdhY3ktdHJ1bmsKKzYwMjkgYjhiMWI2Yjk3NDMzODdjNDdlNDhiMzMyZDAxYWFjYjU3NDJkZjMxMyBsZWdhY3ktdHJ1bmsKKzYwMzAgOTE4OTM4NzFiYTA3NDIzNDY2MzI1MzdmNDk3Y2U2YzY3MTQ4NTQyYyBsZWdhY3ktdHJ1bmsKKzYwMzEgNTIyNzg0MWNmYTFmYjcwNGU5YzFkZjgwZGQ5NTM1MWFhYWY4NWUxYiBsZWdhY3ktdHJ1bmsKKzYwMzIgMzViMzUzNmZiNzYzYjljZjU5YWVlODc3ZjJmMTY0Y2IxMTNjODQzYyBsZWdhY3ktdHJ1bmsKKzYwMzMgOTFjMTA4MjA2OWQ4MTMyMmQ0YjhmZDE0ODJmMDVlOTI1NWYzNTc5MyBsZWdhY3ktdHJ1bmsKKzYwMzQgNGMwYTVjYTMwZjk0YTY3NGRmOTdhY2RhNWM1OTFjYTgzMDFmNmJjYiBsZWdhY3ktdHJ1bmsKKzYwMzUgYWExMTEyZDU2NjY4M2FmZGE3NGNjODQxOTJjOWE4ZmU2MmYyZjk0YSBsZWdhY3ktdHJ1bmsKKzYwMzYgNmY3MTViZmYxN2U0ODIyOTk4Nzk2MjgxN2NmM2YxZTRlYmQ3ZWJhYSBsZWdhY3ktdHJ1bmsKKzYwMzcgNmRlNDRkOTY2MjkyNjU5YWU5NGNhMDFiYmFiM2Y5M2Q4YWNiZjEyOSBsZWdhY3ktdHJ1bmsKKzYwMzggOTIyYzAwMTY1Zjc2MTJmYWQ3NzEwNjRmMTRiMDU3ZTY5ZWJiNDQ1MSBsZWdhY3ktdHJ1bmsKKzYwMzkgOTc3ZmYxYWNlMDcwMWU5OTMxMjU3ODJkOTNlZTUxN2VlY2U3YzYyNyBsZWdhY3ktdHJ1bmsKKzYwNDAgZjZiMjE4Y2VjNmJlZjY0OWNmZWNjNmQ2NzQ3N2NiMjhlNzg3MWY5OCBsZWdhY3ktdHJ1bmsKKzYwNDEgNmJlMzY1YTY3M2IxNGMwM2Y0ZDU4ZWExZTgwZTg2Y2ExZWZlYzBhMiBsZWdhY3ktdHJ1bmsKKzYwNDIgNGM3YmFiNGNkY2E2ZThjYzJlMDk3ZGRhM2ZhY2MzYjBiMzgyZDVhNCBsZWdhY3ktdHJ1bmsKKzYwNDMgMWVjMTU0MjQxNzQ3NTdmMGI1N2U5ODAxYzZjYTdmNmIxN2IwMWVjYSBsZWdhY3ktdHJ1bmsKKzYwNDQgZTJiM2E2OTZkNjljNzU3YzVlMzdiMDcxNjc3Yjk5ZmJkZjNmNGE2ZCBsZWdhY3ktdHJ1bmsKKzYwNDUgNGVjMWNhYzM0MmRkYzdmZTI0NWEyMjNlY2NlN2EzMmFiMTMyYWE1ZCBsZWdhY3ktdHJ1bmsKKzYwNDYgNmVjN2RmMjA2OTdkMDg2NWU4ZTQ0MGU5Y2VhYmYxZmQ3NzU1MGU0ZiBsZWdhY3ktdHJ1bmsKKzYwNDcgMjY0ZDE5NmJjNGM2ZGU4ZmY4OTk2MmVhNjczYjJhOGQ0OGE0NTRkMiBsZWdhY3ktdHJ1bmsKKzYwNDggZmQxNjY5ZjhkODc0M2JhNjYxNjI4NGU1YmU4MjY1OTRmMDY5MTdkYSBsZWdhY3ktdHJ1bmsKKzYwNDkgOGU2NjM5NDVlMTc0NDVjNTkyNDk3ZGNiNWM3NzVjMjFjNTljODU4ZiBsZWdhY3ktdHJ1bmsKKzYwNTAgZWM4ZjViNzVkZjY0ZGFjYWYzMDE2YWU5NGRlODU0MTE5MmNkMTEwMCBsZWdhY3ktdHJ1bmsKKzYwNTEgNmY0NWJlZWQzODczZjcxY2RjMGIzZTg5NjYwY2MxM2UyYTZiNDM5OCBsZWdhY3ktdHJ1bmsKKzYwNTIgNmFiNGNiY2VkZWMyMDNiODI3OGEwMjI0MGY0OGY1NjI0YTJkNTA1MyBsZWdhY3ktdHJ1bmsKKzYwNTMgNzJhZDJmMWU5OTE5YWZlYzFjYzdiZWFiOGQ4OTg0MWFhZjU1YWIxNiBsZWdhY3ktdHJ1bmsKKzYwNTQgNGVkMDlhM2MzMjAxOGUyMTlkYTliNzYyMTE1M2JkNWY4Y2Y4ZmQxMiBsZWdhY3ktdHJ1bmsKKzYwNTUgMzZjYzNlZTU0ZjI4Yjg4MDBlZjNmYzEwZjIwNTUzNWMwNWU0Yjg4YyBsZWdhY3ktdHJ1bmsKKzYwNTYgYjVjY2NmMWM4ZjM4NjZiZWFkYzM5NDY0YmIyN2Q2ZDEzMTU2OGU0MyBsZWdhY3ktdHJ1bmsKKzYwNTcgZGFmYzhhMTBiMTg2ODA0NjBkZjdlMTlkMGYyMzRhMTYzNDI0YWNlNCBsZWdhY3ktdHJ1bmsKKzYwNTggYmQyMGMwNDI3NGZmYTZlNjllMWM5NGEyYzgyMzhiNzI1N2Q2MThkOSBsZWdhY3ktdHJ1bmsKKzYwNTkgNzM2NjRlYTIwMzBlMGJmZmZiZGYwYTA2NjFhNmVjZjNjMDNiOThkMyBsZWdhY3ktdHJ1bmsKKzYwNjAgMWMxOGY5MDYzNmZiYmUwODE2MTI2YTFlNjhlMDE0ZWIyNzM4YTFkMiBsZWdhY3ktdHJ1bmsKKzYwNjEgMjQwMzYyMGNhOTMxYWVmY2VlMDc4OTJkZDI3MjY0MGRhOWQzZjRkNiBsZWdhY3ktdHJ1bmsKKzYwNjIgZGU5ODdmZDY3Yzk0MzUwMmQ1YmNhZWJmMjE4M2M3YjZkYzlmYTA4OSBsZWdhY3ktdHJ1bmsKKzYwNjMgNTY0OTEyMjY3MjkwZjQ0OWUxZjI0ZWVjOTdiMWI0MGYyOGFiM2JjNCBsZWdhY3ktdHJ1bmsKKzYwNjQgNjI5MzcyMzIwNWE2YTgyOTRlZTkwYWUxNDI5OTg1MWI2NDkzMzUwNyBsZWdhY3ktdHJ1bmsKKzYwNjUgODgwMGRmMzY2YjEzMWQyYTI2NTJlMDBiMThlNTYyYjRkYTc3ZmUwZiBsZWdhY3ktdHJ1bmsKKzYwNjYgZTA3NTk3Mzg5ZDY0YmJmYjU4YjY4YzM0NTYxODcxZDI1Mzc2ZmQ4MiBsZWdhY3ktdHJ1bmsKKzYwNjcgNmM5MjYwYWUwZDE2MzZhOTVkMDEwYzM2YzBiNzZiMWQ4NzAyYWFlZiBsZWdhY3ktdHJ1bmsKKzYwNjggODczOGIwZGQ3N2ZkODcwMDljYmU4Y2ExZWYxZDEyMDdhMDViNWI0NyBsZWdhY3ktdHJ1bmsKKzYwNjkgN2M1NzExYTZhNDc1OTdkOTMxYmU0ZWU4MzI1NGEzMmMxNjU2NzdkYiBsZWdhY3ktdHJ1bmsKKzYwNzAgNWE3YTc2MTY2ZTdlMzk5ODE5NGUxMDEyMjFjMzk4ZTUzYjQyZDNmZiBsZWdhY3ktdHJ1bmsKKzYwNzEgNDA0OTZkYjhjZjFmY2M5OGQ2MjhlNzk4YjAyNmUwZDIyZjY4Nzc3NiBsZWdhY3ktdHJ1bmsKKzYwNzIgZDkwNjdjNWY1MGFkZDQ5ZTM5YTQyZTRiODNmYjE3MWRhZTM5ZmViZCBsZWdhY3ktdHJ1bmsKKzYwNzMgZWI2ZWY3ZWNhMjA3ZDI5ODliOThiMGE3MDA3YjFmOWM1NWQ3MGUwYSBsZWdhY3ktdHJ1bmsKKzYwNzQgYWE1ZjNlY2JmNTZmMzJkOGZjY2I0YzcyZDZhNTI5OWY0ZDg5Y2Y5NiBsZWdhY3ktdHJ1bmsKKzYwNzUgMWQ0ZjJmMjBhMjdjY2I2MTA5NmEyNTFkZGYwZDg5MTVjZGU5NjliZSBsZWdhY3ktdHJ1bmsKKzYwNzYgZGQ3NGEwNjAwNmUwNDAyMTcyNjNiODA1NzdlODQ2ODJkZDMxZDRkMyBsZWdhY3ktdHJ1bmsKKzYwNzcgODU3M2U2NWZhOTQ4NGYyNmJiM2RhZmI3ZjRmNDRmNjVhN2FjNDlmMiBsZWdhY3ktdHJ1bmsKKzYwNzggMGIwYzRlZDE5MzZhYzJkMjg1MmMzOTU4N2I5Y2U2ODM3ODYwNDU4YiBsZWdhY3ktdHJ1bmsKKzYwNzkgZDBhOTdhYzI1ZGFiNDczNjU4YTQwZDg2N2RjNzNkOGFkNjE0NDNiZiBsZWdhY3ktdHJ1bmsKKzYwODAgNDUzYTlmNmU5NjE4OWRlNjliNjMzZmY3MzViYjg0OGEyMDljNWUxMCBsZWdhY3ktdHJ1bmsKKzYwODEgNDg2NmEwZmMyYmJkNGU2NTUzNjZmZTU4OThhYmQ1NmY4MGYxOGNmOSBsZWdhY3ktdHJ1bmsKKzYwODIgMmYzMTRjYTBjZDMzOGQ2ZWM0NjE4ZTY0OGM5MThlZTBkYzFkMDgwYSBsZWdhY3ktdHJ1bmsKKzYwODMgMzIzMTY1Y2IxZmE1ZDc0YWVmZjhhYTdmYzMzNTRlNDc4ZDM0ZjBlNyBsZWdhY3ktdHJ1bmsKKzYwODQgZmRhM2MwOThjODk5NThmNTI5MzY2M2Y5NTkzMGEyNTdiMGM2ODFiYyBsZWdhY3ktdHJ1bmsKKzYwODUgMGU1YTdiMjIwMTZjZGVlMDNhYjIyNDEzZWU2MGYzYTE1NTA2NjA2OSBsZWdhY3ktdHJ1bmsKKzYwODYgNmU3MzU4NGNmNTc1ZWVkYTc1NjdmOTZhMjRlMDhlNmMxYTI0YjA5ZCBsZWdhY3ktdHJ1bmsKKzYwODcgYTNjOTdlMjA1ODQ3OTM0MmE4ZDk1NTdjZGViZjZmZGI5NDU5ZDg4NCBsZWdhY3ktdHJ1bmsKKzYwODggZWY3NTk2NjlhYTA0MjYyOTAzMjRlYmI4M2Q2NWQxNjRkYjY2ZGExMCBsZWdhY3ktdHJ1bmsKKzYwODkgMjhjMGRmMWNlMjg0NDk4MjM0NDgyMzg4ZjcxNTJkMTUzZDY4ZjMwNiBsZWdhY3ktdHJ1bmsKKzYwOTAgZjE1OGVkY2NjNzJjY2I2M2ZmZThiMWE1OTU5NjAyZjlkZDNkZTgwOCBsZWdhY3ktdHJ1bmsKKzYwOTEgYjc1ZWRjMGU2MzMzZWU2MGM1NjJkMWJhODBkMjZjMmU2NjZmNzNjZCBsZWdhY3ktdHJ1bmsKKzYwOTIgZDQxZDg5ZWI0M2U1MGNkOWJmOGI5Zjk1ZmM3OWYwMGEyMmU5MmY5ZCBsZWdhY3ktdHJ1bmsKKzYwOTMgNWE5OGE0ZmQ1OGI4NDIxMDEyMTJlYjgzODUxZmIyMjY5ZTBkNjAwYSBsZWdhY3ktdHJ1bmsKKzYwOTQgOWU0NjY1N2JiOWU4NDc5YzhhYzk4NmM5ZGNiOTdkMGM1YWU0MjM1YSBsZWdhY3ktdHJ1bmsKKzYwOTUgYmQ2ZWFhMmI0MWFjMzYwNzBlNGFlYmUyNWU1OTU1NjYzNzljMTJmYiBsZWdhY3ktdHJ1bmsKKzYwOTYgZDE5NWI4NzFlNzA0NGUxOWQ1OWJmMTlhNjUwMjZmNzRhNzI5ZjIyOCBsZWdhY3ktdHJ1bmsKKzYwOTcgMzQ0MDc3N2YwZTY1NmFjZTNlZDM4MDRiYzM2ODQxM2JkMDQzNDVkMSBsZWdhY3ktdHJ1bmsKKzYwOTggZTU0ZDM5MTA3MjQ5NTZmMmEwNjg5MGNlNWFkMmVlNWMwOGFkZWQ5ZSBsZWdhY3ktdHJ1bmsKKzYwOTkgMmViN2U5ZTIzNmJmNTdjZjA5ZDNkOTkwMmUyODJjNGMwZTk1NjVkZSBsZWdhY3ktdHJ1bmsKKzYxMDAgOTg1MTM0Mzc1NjcyMzZkODJkNGE4N2FjOWE4ZmJlZWE1NGM5YWUyNCBsZWdhY3ktdHJ1bmsKKzYxMDEgNDQxNjFmYjA0YjdlODM0YmZjNzcwOWJkZGQ2OTc5MWQwMTMwMjZlNiBsZWdhY3ktdHJ1bmsKKzYxMDIgYTdlM2JjMmE3Y2FjNDc5ZDQwODkzMzQ5Y2Q0YzJmMGJhMDNmYWUyYSBsZWdhY3ktdHJ1bmsKKzYxMDMgM2FiY2Y3MjVjNWY0MDk3NzYyNjczYjAyZDkyN2FkMWZhNDNmYTgzNCBsZWdhY3ktdHJ1bmsKKzYxMDQgODk0MTc4OTVkOTYzY2VkYzI1MDFkYTIyZDIyZTUwNTVmNzE4YzA0ZSBsZWdhY3ktdHJ1bmsKKzYxMDUgNjc2OGJiZDE4ZTA5OTgwYTcwN2I5ODViNWU2MmRkMGIyYjg5MDQ1YSBsZWdhY3ktdHJ1bmsKKzYxMDYgNmMwMDg2ZjkyNzBjZjk1MTNjYzQyYjliODU4NTc5ZGRkNDk0ZTdjMyBsZWdhY3ktdHJ1bmsKKzYxMDcgYzI4M2I3YmJkYTA5NTJiMjcyZDdiN2E4NTlhMGQ5NWVlNWE2Nzk5ZiBsZWdhY3ktdHJ1bmsKKzYxMDggNzAxODM1OTIzNzBlNzRlYTYzZmVkNjMxNGQ1MDc0M2E0MzVjYTJlYSBsZWdhY3ktdHJ1bmsKKzYxMDkgOGQ1MGE5NmY4NjgwZWE4MTFlNTAyMDBiYTU0MGE2NjY5NzE0ZjE5OCBsZWdhY3ktdHJ1bmsKKzYxMTAgZTRmYWFkYjRhYmUyZWRiNGUxODFkYzM5NzU2YWVjN2I5Njc1ODkyYiBsZWdhY3ktdHJ1bmsKKzYxMTEgZDA0OTc1ZGI1MmRjZjNiNDcwMjhlZDgyMmEzNzhmZmNkN2JlMWIzYiBsZWdhY3ktdHJ1bmsKKzYxMTIgMGQxNDYzYTQ1YjZmNTVjNjg1NzcwMGU2NjJkZWVkMzhiYjhlNWQ4NCBsZWdhY3ktdHJ1bmsKKzYxMTMgMDE3ZDMzNTZhNWVkMDQzMGZkMTM1OTVhMWIwN2I2ZTk0ZDA3MTQ2YSBsZWdhY3ktdHJ1bmsKKzYxMTQgNDllZTg5ZTAxN2FiZTUyNmM2MGYzYjJlYzliNzkzNzVlNDY3MjBiNyBsZWdhY3ktdHJ1bmsKKzYxMTUgNTY0ZmE2ZjE4NWE3ZDdjZDZmZTY3YzM2MmUxYjUzZDFlNzQwMjUzMyBsZWdhY3ktdHJ1bmsKKzYxMTYgMTZjYThmMGYzZjExMjQwMWEwZmM2NWYzNjZmMjcwMjhiZjM4YjRiNSBsZWdhY3ktdHJ1bmsKKzYxMTcgYTlmYjVhODk1ZmExYzMyZTZmYmFhYWJjNWY2ZDQwYmYwNjgyNjUzZCBsZWdhY3ktdHJ1bmsKKzYxMTggNjNjZGZiYjRhMmJiOTljNDEzNmIyOTQzODRhZDhkN2I4YmVmMDI5YiBsZWdhY3ktdHJ1bmsKKzYxMTkgNWQ2ZmUxNDVmNzczYTIxNGFhYzIzOGYxZWZiZTE3NDIxZDNmMzg5YiBsZWdhY3ktdHJ1bmsKKzYxMjAgMDYwMmRiMWQxZGZmN2E1ZjdlNWM3YWVkZWY1MTU2OGFlNzAyM2VjMiBsZWdhY3ktdHJ1bmsKKzYxMjEgNzI4YTM5YTNlMGQ1NTA4NGU1YWJiY2MzZjNmODdlN2UyMzE3MzVlOCBsZWdhY3ktdHJ1bmsKKzYxMjIgNTMwOWNlZjhjMTY5MmNjMjVmNWU2MTA0ODlkMWYzMGJhYWFmMGE0NSBsZWdhY3ktdHJ1bmsKKzYxMjQgNjZlZWFiNWE3NThjNjczMmYyMjQ2NzBkMTI1ZjE4NmNmYjY3YjM4ZSBsZWdhY3ktdHJ1bmsKKzYxMjUgZjg5ZmE3ZTk1Yjg0MDk1ZjQyYTE4Mjg1NGQzNGExZjFjNmM0MzhhZSBsZWdhY3ktdHJ1bmsKKzYxMjYgYWRlOWY5OTY1OTBhNWU3OGY1YThiYjA3OTJmMDcwMzU5OTUwNGI1YSBsZWdhY3ktdHJ1bmsKKzYxMjcgOWFjMWUwZDU2Njc0MTNjZmQ3ZTY4OTk4MGE1OGJmYmIwOTBjNmE2ZSBsZWdhY3ktdHJ1bmsKKzYxMjkgMzViZTVkZjZlZjc3MjJiOGY1MGEyMzVlYjFmMmNmNjE5MTFjNzc1NSBsZWdhY3ktdHJ1bmsKKzYxMzAgODI1YmQ4YzExYjFjMWFjNWM0OTZiYzdhY2ZjMmQ5ZjhjNDZhZGE2OSBsZWdhY3ktdHJ1bmsKKzYxMzEgMDU4ZDgxZDFkNTZkOTMyNmUzNzdkZTUzMDBmNTA5NjA2NzBkZTI2NiBsZWdhY3ktdHJ1bmsKKzYxMzIgYmQ2ZDAyOGQ5OGZjZWY0MjQ1MjViMzI0MzcyNjBkNTMyZGQ5OTNkZiBsZWdhY3ktdHJ1bmsKKzYxMzMgMzk5NDcwYTk1OGMyMmQ5N2NjYjg2M2U2Nzk0YzNmODk3ZTg1ZDc4YyBsZWdhY3ktdHJ1bmsKKzYxMzQgMDcxNjRkMzA0MjlkYzZkZDA3MzYyZWMyMGJjMmE5MWYyNWRkY2I1MyBsZWdhY3ktdHJ1bmsKKzYxMzUgYWQwM2UyMWZkYTU0YmNhNWMxMmVlNzc4ZjhkN2I4MTgwMjU4YWQ5MiBsZWdhY3ktdHJ1bmsKKzYxMzYgNTE4ODM3NDM3N2FlOTk2MjVmZDI1YmVhZTQ1Y2Q2Nzg0NTM2YWUyZSBsZWdhY3ktdHJ1bmsKKzYxMzcgNTU2ZWM4MmY0ZDkzOWUxNWYyYzZiZDUyOTU3NzRiZGQ4Mjc5ZGEyZSBsZWdhY3ktdHJ1bmsKKzYxMzggZWFiYmIzYzE4MThmZTQyOTYyYjFjMTVhOThhNjljZDA4NmE4M2E4NyBsZWdhY3ktdHJ1bmsKKzYxMzkgYWI5MjQ4MGZhNGVjYjNjOWIzMGQzNDM1NTUxOGY3Nzc4YmJiMjliYiBsZWdhY3ktdHJ1bmsKKzYxNDAgMWQxMzRlY2RhMDk0ZWUxNzdjODBiZmM3ZDEwMTRhYzM4NzRjMTQ0NSBsZWdhY3ktdHJ1bmsKKzYxNDEgMTY0MTNlZTU4OTY3NzQ1Njg0NzUxNDk3YTNjZmViYTBhZDBjNTM3ZCBsZWdhY3ktdHJ1bmsKKzYxNDIgOWE4YTQwZjIyMThjOWNiMjYyNjU4OGUxZmMxNTg1MGFkOWY2NDU0OCBsZWdhY3ktdHJ1bmsKKzYxNDMgY2VjMjdjOTNiNWNiODM0YzEwMTczN2RkNTEzZTYwODE0YWFjZmNlOCBsZWdhY3ktdHJ1bmsKKzYxNDQgZjZhY2U2MWMzZGZlNjRlYTM3ZWY5ODBhZWUwMDFlYjM0OTQwZDJjNyBsZWdhY3ktdHJ1bmsKKzYxNDUgM2VhZjJjNjczYTExYTc4OGZiNjI0NGFmMjIyM2IzY2JlMmJkMTA4MiBsZWdhY3ktdHJ1bmsKKzYxNDYgZDYxN2RlMTU3NzRiMmU3Yjc1YTJiNzY0N2FlYTdjOTA2MGFhYzIxMyBsZWdhY3ktdHJ1bmsKKzYxNDcgNzQ3NjRiM2VjMWJkYjc0YTVlNjU5Mjc1NjI0NmY5YWY3ZGZhYWRmMyBsZWdhY3ktdHJ1bmsKKzYxNDggYjA1MzE1ODE2NTc5ODMwNDUyYzA0ZTI5ZDlhMmQzN2YyMzg0ZjZlMSBsZWdhY3ktdHJ1bmsKKzYxNDkgYmRkYmFhNTFhYTVhOTMzMThhZmViOTJkYWIyZTRlNjNhZTVlZDdmNCBsZWdhY3ktdHJ1bmsKKzYxNTAgYjg5ODA3MzVkMDNiM2UxNDA5MzhhNjQyNDYzZmE5NDQzZDczZDhmZSBsZWdhY3ktdHJ1bmsKKzYxNTEgODcyMWZhZmRiNjdhYTliNWE5MjJkMjNjZjg3YzhmMjMyZWZjMDVkOCBsZWdhY3ktdHJ1bmsKKzYxNTIgYTUyN2Y0NDljYTI2NjYxZjVkMjkwZDM2N2QxMDMyNzZhYWQzOTJhZSBsZWdhY3ktdHJ1bmsKKzYxNTMgOTQ2NmVhYmI2NjlhNmNmMjY2ZmVjNjU1YzFjNzI2ZDczZTAyNjhhNyBsZWdhY3ktdHJ1bmsKKzYxNTQgZWMzOTI2NDMxMWZmMjQxNGZhZTAxYWVkNzQ3OTI2YzkxMGI5MGI3ZiBsZWdhY3ktdHJ1bmsKKzYxNTUgNjA2YzM4NTM1ZjMwNDUxMzQ3ZDE5NDY2OTBmYWViZmU2ZTE3ZmI4YSBsZWdhY3ktdHJ1bmsKKzYxNTYgYTEzNjJhMDYzMTIyNTIyZmNjYzE4ODAxZDc2NTM2ODZlMDIxNDM3MyBsZWdhY3ktdHJ1bmsKKzYxNTcgYmRiZGE5MzliOTk5OGY4YWU4YjZkNTFlNTUzYmNiMTM2YmE3YjViNiBsZWdhY3ktdHJ1bmsKKzYxNTggZDhmOWRmYzc2YmJmYzhkZjk2ZmYxYWQ4YWI2Y2Q3NGM4YWVmOWZjZSBsZWdhY3ktdHJ1bmsKKzYxNTkgYTc5YjhkODE5OTdmZWFhZDljZWQyYzE0YjRiMDkzYjkwZDJiYjY2NyBsZWdhY3ktdHJ1bmsKKzYxNjAgNmRmZDc5OTQ0ODcyZmMwM2M1NDk3NDkzYmE5YjEwOTI2ZDllYmMwMyBsZWdhY3ktdHJ1bmsKKzYxNjEgNGEwN2ZlMWUwYjUwM2NiNWJjYWM0OGQ2Njc2OGY0MjYzYTRhZDMwYSBsZWdhY3ktdHJ1bmsKKzYxNjIgYjVkMTc0MWRlZDRhNWE0OGVhZjA4YTA1YmNhYTZkNWFjYTMzMTY4ZSBsZWdhY3ktdHJ1bmsKKzYxNjMgOGRjMWU3NGMxNjk1NmViMjAwZWM2ODNhYWY1ZDg4OTE0YWE1YzdmZSBsZWdhY3ktdHJ1bmsKKzYxNjQgODE4ZWUxMTUwNTRhM2I5Y2U5NjAxMjJjMTE3YTgxYTE1YTA3NTE3YiBsZWdhY3ktdHJ1bmsKKzYxNjUgNTgxZjA3M2YwNzFkN2Q3NzBmNDcyZjcxOWNiYjUwMmMzNGZhMzAyMiBsZWdhY3ktdHJ1bmsKKzYxNjYgMTQ1NDEzOGM2ZjJkNDBjNWEwYjU2MDY4ZGE4YmZkNzA2ZWYwNDA2MSBsZWdhY3ktdHJ1bmsKKzYxNjcgNjczOTBjMWRhZWJlZGRjZWVjZjQxY2RmMTFiNDVjYzA5MzE4MGNhNiBsZWdhY3ktdHJ1bmsKKzYxNjggODFmNTM1Y2ExZDk4Y2Q0NmE2OTU4OWE2NWZlMGQyZmQ3YWMyZGIzZiBsZWdhY3ktdHJ1bmsKKzYxNjkgOTdiMWMyYTcwZWFlMTFmYjdjZDQzOTljMGU5ZDJlY2JlYjg3NGVlOCBsZWdhY3ktdHJ1bmsKKzYxNzAgZTIzYWZiZjc3ZWZkZjk1NGIzZjljYmFmOWIxYWQ2NWZmOWFjOTk4MCBsZWdhY3ktdHJ1bmsKKzYxNzEgOTMxMDg2Y2I4NTI5NTAzMzdhODg2Nzk1ZmVlMThmNTZjMDI0YzdiZSBsZWdhY3ktdHJ1bmsKKzYxNzIgZjA0YmViODBmODE2NzdhZjBmZGY2MThkNGE2N2EzYjUzZTI0ZTQzMSBsZWdhY3ktdHJ1bmsKKzYxNzMgMzQwODc1NmVjNjAxODkwMTdkMTQ2ZDBlZGRiNmYyNDc0YWU5ZjM0ZCBsZWdhY3ktdHJ1bmsKKzYxNzQgZmY3ZmE1OWY2MmU4OTM0YWI3Yjg0NTc0Y2I3ZDFlNDM0YzY0Y2QyZSBsZWdhY3ktdHJ1bmsKKzYxNzUgMTcwMzA1MTVmNjIzMjc1NGQzNTExMmE1OWQ4Y2YyMzBmZGNiMTUxMiBsZWdhY3ktdHJ1bmsKKzYxNzYgYzg2N2MyOTRiMTZjMDgzYWE5NjY3ZWQxODE5ZTYyMjg3ZjA0YjQ5MyBsZWdhY3ktdHJ1bmsKKzYxNzcgZGI1NzcwOTRmNjg1M2UxNTc1M2JlOWNiZDRiMDE2NmEzNmI5MGEyNCBsZWdhY3ktdHJ1bmsKKzYxNzggMGU5Nzk1MDA0Y2QyNjc2ZmNkMThlZDM2NzU1ZjE0YTg0ZjE0M2UwYSBsZWdhY3ktdHJ1bmsKKzYxNzkgMGY2ZjBlOThlM2I2NGI0ZTUzODFmZmUwYjY5NjBlMWQ0OWM3Y2Y3MSBsZWdhY3ktdHJ1bmsKKzYxODAgZGFkNGQ0MzM2M2Q4ZmUxZmJiODg4MDA1NjE2NzAwZjkwYTlkOGEyOCBsZWdhY3ktdHJ1bmsKKzYxODEgNzg3N2RlZjk0MDYzZDQ3MTQ5Y2ZmNWI5YTMwZTlmYzE0ZWE0ZThiYSBsZWdhY3ktdHJ1bmsKKzYxODIgYzA0NTMxZmMyNzA5NjkzOWMzMTQ0OGVlYWI0ZmNiNWM4Njk2N2QyYSBsZWdhY3ktdHJ1bmsKKzYxODMgOGU0Nzk4ZDIxOTE1ZWZjYWIzY2FjODdhZTRiZDU5NGQ4ZDQ4ZTgxOSBsZWdhY3ktdHJ1bmsKKzYxODQgYWRjODY3MDdmYTk2Mzg5OWI1OWUyOTI5N2UyZjRjM2VjNzcxOGE1MSBsZWdhY3ktdHJ1bmsKKzYxODUgYzEyMGE0ODNkNTkwOThkNjY5MWZjYTUzNTQ1YzJmODFmNzk0NjIwMSBsZWdhY3ktdHJ1bmsKKzYxODYgNWMyNThlZmZlODFjNGQ5NWJjNjA0NGY2NmE2MGUxM2EwMWY3NzE3MyBsZWdhY3ktdHJ1bmsKKzYxODcgZGU1Mjc5NDAyYjk0MzhjZGY2NDMzYzM3MzM4MTYxN2FkYTdkNDUwMiBsZWdhY3ktdHJ1bmsKKzYxODggNTAxMjE5MWVjMmRhYjE0YmJlYjQ3ODg4NzgxODA1OGNhY2YxZjM1MiBsZWdhY3ktdHJ1bmsKKzYxODkgOWU1NDRhMmMxOWEyZGE3MDg5MDk3NGI2YjEyMTNkNDg4YTY4ZDU2ZCBsZWdhY3ktdHJ1bmsKKzYxOTAgNzZlNWYzNTk4ZTY5YjRhMjk5MTkxODUzNWYxNDgwYzViM2E2ZmZkYSBsZWdhY3ktdHJ1bmsKKzYxOTEgYjM0MWRlZjRlZWY4Y2JjNjJhMDczNTY0Mjc4OTU2OTQ0ODA0Y2QxMyBsZWdhY3ktdHJ1bmsKKzYxOTIgMzIyZjYxZTRjMzg3NWFhNDgxNTY3MTYwYzNiODgzNTMyNmE5MGUxNCBsZWdhY3ktdHJ1bmsKKzYxOTMgYjJiMDYzYWEyNzU1MTBkNmJjYzQ4NDk3MWI1MDBmM2Y2OGY0Yzk4YyBsZWdhY3ktdHJ1bmsKKzYxOTQgNDNhMzdlNmI2NDY5YTRkMjFhYjBmYzNjMjY1YzA1NzNkMjM1ZTk5NiBsZWdhY3ktdHJ1bmsKKzYxOTUgMjY0NDJiNWY5Y2ZkODQ3YjYzYmUyNzgxZDRmYjNjY2I0MDliYmNjYSBsZWdhY3ktdHJ1bmsKKzYxOTYgMGZmNWJkOGViYjAxYTYwYjcxOWE3NjYzYTA5YzcxODhlNGMyZWZiNSBsZWdhY3ktdHJ1bmsKKzYxOTcgNjU3NzkwZGIwNmUzYzU5NDVkOWU3YWQ5Y2ZjMWNiZWMxZjY1ZDI4NyBsZWdhY3ktdHJ1bmsKKzYxOTggYTEwYTBmNjAxNGM0OWE1ZmJkMWE0YzM0Mzk1ZTI4ODJmODU1ZmY1ZCBsZWdhY3ktdHJ1bmsKKzYxOTkgNmYzYzdiMmYyYjhkZTgyOGIyNjY4MmQzOTk1ZjNmYmEyNzgwZjlkNSBsZWdhY3ktdHJ1bmsKKzYyMDAgMDY4NTU2MzgwY2IwODYxYzVmOGMwMjQ0MzBkYTE2MTdkYzgwZmVlYSBsZWdhY3ktdHJ1bmsKKzYyMDEgYmE4NGQ3ZTg1NTRiNWVjZDRmY2Q2OWQ1NzY5NzY0YjZlYWQzM2YwYiBsZWdhY3ktdHJ1bmsKKzYyMDIgZGUxY2IzMzIxOWUzMTE4YTNmOWVhMjA5MjFlYTE4MWE2OWU3N2U1NyBsZWdhY3ktdHJ1bmsKKzYyMDMgNTIzZjQ5YTFlNDJhNTcwOTg4ODI1ZmFhZjZkNjk2NWRiOTQxYmYwMCBsZWdhY3ktdHJ1bmsKKzYyMDQgYjI1MGIyNzBkYmQ0ZDBlYjA0MDEzNWRlNjY4YzhlZmEzNjZmYmIxNyBsZWdhY3ktdHJ1bmsKKzYyMDUgMDRjMDc1MzhjYWM0ZGI3NzJjZDE2MTI3OTVjMjM3NjQ2YjlhODlhNyBsZWdhY3ktdHJ1bmsKKzYyMDYgNDY5MmNiNDYwMDhlZTBjOWU5MzNmNmQ2ODc4YWE0MDVjM2JlOGY3NSBsZWdhY3ktdHJ1bmsKKzYyMDcgNmM5YzJhYzE1ZTRiMDE3Zjc0ODZiYmJkOGMxMTdiNGQwYzIzMTM3NCBsZWdhY3ktdHJ1bmsKKzYyMDggNmIxYjY2NDg2M2Y0MDk0MDI1ZTdlMGI1ZGFlMGM1NGNkNWIzN2FmYSBsZWdhY3ktdHJ1bmsKKzYyMDkgY2U3NGJiYThhNmE2ZDE4YmNlNzdjZTZiYzcyNDFjNzk5Mjc0N2JjZCBsZWdhY3ktdHJ1bmsKKzYyMTAgNzk1MjQ4MjlhNzMwNjY2ZGNiMWI0ODQ0MjEyNTE0YmE1MjNmOTI0YSBsZWdhY3ktdHJ1bmsKKzYyMTEgZTQ4MDdhMGMxMDkyZGUyZWNkNDA2ODU1OTdhNDI4OWM2YTI2MzY4OCBsZWdhY3ktdHJ1bmsKKzYyMTIgZWY1OWI0ZDAwMTM0OTA3YWQzOTI4NmQ5ZTQ4NjUzNmFjOWIwNDJiOSBsZWdhY3ktdHJ1bmsKKzYyMTIgNGZjODVjODJjYzIyMjU1NGFlNmI5YzBiODc3NzZlZDVmMmI3MGM2ZSBsZWdhY3ktdHJ1bmsKKzYyMTQgYjIwNzg3NmRmMjlhY2FjMDcyMjFhYTI2MDRlMGVjMDE3OGFjNDJjZSBsZWdhY3ktdHJ1bmsKKzYyMTUgZmZkZjFmMDZjZjhiNWMzNjNmOWM1NDc2Mzc5ZmY1Zjk1ZjdlNGJmOSBsZWdhY3ktdHJ1bmsKKzYyMTYgNjA4MGIyZWJjMWYxNGE1YzQ1YzIxMDc2NjBhNzVkYWNhZDkxMjg1OSBsZWdhY3ktdHJ1bmsKKzYyMTcgNzUwNDg4NGU4YTc0ZmM2MDdhODg2YTIxZWY1MjZmYTJkNTQ0NzU1MiBsZWdhY3ktdHJ1bmsKKzYyMTkgYWM3MDE4YjU3NzQ1NmNlYmIxMTZhNzUwZmUyMmNlNjRiOWRlNzMwYiBsZWdhY3ktdHJ1bmsKKzYyMjAgNTZkMzM1MGNhMWYxNzJkNjJlZGY5MzFiNTMyYjMwYjExMTVjOTY3MSBsZWdhY3ktdHJ1bmsKKzYyMjEgMTFlMDNkN2E3Mjk4MDVkZmVlZjc0NGE1NWM1MGU5MzM1N2JiNDA4OSBsZWdhY3ktdHJ1bmsKKzYyMjIgYTIyNDM4ZTk0ZmU5NzRiNTE5MTM0ODNhNTI1MjlhMzE1MmMxNWU3ZiBsZWdhY3ktdHJ1bmsKKzYyMjMgMmRiNjM2MzQ1OWNhZjFkNjlkZTJhOGJhYWMxNmZkMDM1YzE0MTk0MCBsZWdhY3ktdHJ1bmsKKzYyMjQgMzUzN2MwOGMxZWZmYmFiNDQ3MjM2YjhjMTJhYzNmMzI4Njk4ZDcxYSBsZWdhY3ktdHJ1bmsKKzYyMjUgOTdkMjI3OGEzMzFiOTQ1ZDQxMzFiZTMzZDU5MjgwZWM2YWQwZmJmMCBsZWdhY3ktdHJ1bmsKKzYyMjYgZDIzZmVhMjQ4YTFlYzI1YjFjYzE3N2ViNWRmNDg1NmMxNGVlYjFhOCBsZWdhY3ktdHJ1bmsKKzYyMjcgNjU5OGE1MTg2NjhmNzdhZjI1OGFiYTVhZjI3ZDljZDczMDFmYTlmNiBsZWdhY3ktdHJ1bmsKKzYyMjggODJiYjdkMmE2YjMxZTZmNTBlZjQ0NDllZjcwZjE3YWIzOTg5NTc1MCBsZWdhY3ktdHJ1bmsKKzYyMjkgMTViMWIwM2FkZTkzZDcyY2RlNTAxNzUwYjRlM2MxYjZlMTc5N2ZjMyBsZWdhY3ktdHJ1bmsKKzYyMzAgYjkxNmQ2MTRlMzYzNDY4NWFlNjU1ZDViODYyYmNjYWQ2MDc0OGE4NiBsZWdhY3ktdHJ1bmsKKzYyMzEgNTY3NDZlZWRmZTAzNzg5NzRiOGMzNDAzYjVlM2E4MWMyOTg0NDY0ZCBsZWdhY3ktdHJ1bmsKKzYyMzIgYmY4YzIzMGRmNWU4ZGQzMjBlMmMxNGZmNDQ1NTJiMGRlMjk0MGY1YyBsZWdhY3ktdHJ1bmsKKzYyMzMgZTYwMzYwMWM2OGNmNDQ2OGU1M2YwNjY1MzMyYjNmODUxYWY0YWNiYyBsZWdhY3ktdHJ1bmsKKzYyMzQgYzU3YjM4ZTQwYjJkYTUwYzc1ZWNlYWEyNTJkNzhkN2Q1NjBlMDg2NSBsZWdhY3ktdHJ1bmsKKzYyMzUgYmI0Y2MzZmE2MDAwYjA5YmRhZjdjMzhkY2U2OWY1ZjVlMDBkNjhjMSBsZWdhY3ktdHJ1bmsKKzYyMzYgMjlmZTZhMGRlMzY2M2I4ZDQ1YzJjNzQ5M2ViNWI0ODQwYWNmODRmZiBsZWdhY3ktdHJ1bmsKKzYyMzcgZGI1NDg4ZmU0OTViMmEwMDU5M2JiOTEzMDk1Zjg5NDEzOWE1ZWYzYiBsZWdhY3ktdHJ1bmsKKzYyMzggNTE2NDkwYzgxOTJjZGZiMDE2ZmExODViOTI3YzIwOGI3MGZkZDY4OCBsZWdhY3ktdHJ1bmsKKzYyMzkgNGI1ZGVmNDA3NzNjZWFmYTU3NWZjZTViMjA4YWVlMzNiMGM3OGRiMCBsZWdhY3ktdHJ1bmsKKzYyNDAgZDFhZTBlYTlhNTg1ZjkxMmQ3YWEzZDAwNGZmODE3ZDBkZWExMTJmOCBsZWdhY3ktdHJ1bmsKKzYyNDEgMmI4MTBhM2M3ZTQxNGNhNDJlNmM4OWI0YTEzN2I0Y2JkMGU0NmVjMiBsZWdhY3ktdHJ1bmsKKzYyNDIgN2NkYzBjNzE0NmQ1MGFjMjE5NzNmNTA2MGQ4Y2VjNjcxZGI4OTE4ZiBsZWdhY3ktdHJ1bmsKKzYyNDMgZDA5ODgzMThiNzU2OGM2YTUzZWJkYmUyZmNkNzliODcxZWRjNDM2ZSBsZWdhY3ktdHJ1bmsKKzYyNDQgYzhkMGY3ODIyMWNjMzZlODE3ODZkNjQ3NTA5ODllODdhZjBjNDcwYiBsZWdhY3ktdHJ1bmsKKzYyNDUgNmU0MGEyYTNlNmVmMGM0YTM5ODYzMzYwOWEyNDEzZWEwNmY4ZTM0NSBsZWdhY3ktdHJ1bmsKKzYyNDYgNGM3OGQ3M2M1NjY3NTcyM2NiNzczZjIzZDBhMmFjZjQyNmI1Y2MyMCBsZWdhY3ktdHJ1bmsKKzYyNDcgYWIxMTBiMWU5MmZmYTE4MmVhYzRkNjkzZTAyN2U0MzRjYjNiNjhkYiBsZWdhY3ktdHJ1bmsKKzYyNDggZWNjZmFkYTQ3ZjI4NWFiNGE5YmZhYTU0NWVlNGIyMWVjZDc3YWRkZSBsZWdhY3ktdHJ1bmsKKzYyNDkgZjM1ZGRlN2Y0MTQzZTVmNjEwYmFjZWQ5NmNhMjBmMzk5YzMwMDIxMyBsZWdhY3ktdHJ1bmsKKzYyNTAgZjk5MDdmNTczMjdlYzU3NjM4ZDdhOTIwMWVhNDdhM2NkY2M3YjY4OSBsZWdhY3ktdHJ1bmsKKzYyNTEgMTBiNTA2MWY2Y2JjZjg1NGM3ZTgxYTUyZGM0OTA5NGQwOWEyM2UzNyBsZWdhY3ktdHJ1bmsKKzYyNTIgYWMxMTRhNWZjOGZmODQ2ZTc5ODIxODM4M2NmNGJiNDFhZjdjNjZkYSBsZWdhY3ktdHJ1bmsKKzYyNTMgMjdjMzc3NTc1ZjRhYzRkZDlmNGZiMmIwOGFhOTk4MDZiNDFjNTRiNyBsZWdhY3ktdHJ1bmsKKzYyNTQgM2ViMTY5NGVkY2U2YjA0MjlkYzVjZTg1Zjk4YWEwYTY4ZDYzNzc0MSBsZWdhY3ktdHJ1bmsKKzYyNTUgYTYyMDNkMTcxNThiYTUyZTBmZDMzZDhjMjhiMWM0NTlmYWZmNWMzNCBsZWdhY3ktdHJ1bmsKKzYyNTYgYjQxMDE5NTU3YjZlN2NmZjg4ZjJhZTA4ODgxNmQ4MWNlOGMzMTk4ZSBsZWdhY3ktdHJ1bmsKKzYyNTcgMGQ3NDAxMTMxMGNkMWI1YmVhY2RjYWVhODI4NDlkZGE0MWQyY2Q3NSBsZWdhY3ktdHJ1bmsKKzYyNTggNzE4YzhhZjdiZTJhOWZjZTkyMTdiNWViZjI0NjJlYzQ5MjMwNzhmZSBsZWdhY3ktdHJ1bmsKKzYyNTkgNzc2NjM2MGI4NWI4OTFlYTlkYjc4NWVkZmViODViM2RjODdhZmJhMyBsZWdhY3ktdHJ1bmsKKzYyNjAgYjY1MzY4ZWQ4NmJlODlkMTdmYjliMWE5NTg5YWRjYmJlNjU3M2M0NSBsZWdhY3ktdHJ1bmsKKzYyNjEgNDY4ODM3YWQ0NWYzODIzYWM4OTIwODQ4OTg0YTUxZTk1NmFmODE4OCBsZWdhY3ktdHJ1bmsKKzYyNjIgN2U2NTM2NzMwZDBlZWVkMmJiODlkZTI5MTRjZjUxNjE4MTYwNjVjNyBsZWdhY3ktdHJ1bmsKKzYyNjMgMmY1NzM5MmIyZmRlMTI5YmM2ZTMwOTk0NjcxNjQzMjcyOWMzODMwYiBsZWdhY3ktdHJ1bmsKKzYyNjQgZTllZTRjOTA1YWJkMjhmNzJlODcyZWRmY2I1OWExOGI5MTFkNmVjZSBsZWdhY3ktdHJ1bmsKKzYyNjUgY2EwMmQ5Mjc4MTgwMTFiN2YwOTY4ZTI4MTc2NGY5NDVhNTg5YmE5OCBsZWdhY3ktdHJ1bmsKKzYyNjYgZDFjNDdmNGYxNTQxNTAyM2Y5NjkwZmFmMzdiNGVjMjlkOTY3M2E5NyBsZWdhY3ktdHJ1bmsKKzYyNjcgMWYyMGY1MWI3MDBlNDViOGMzNjUyYWIyNmZmZjU4Y2E5MjY1ZGRhMiBsZWdhY3ktdHJ1bmsKKzYyNjggZWM2OTYzYzM3NDFjMTY3NDA3MjY2ZmNmNTU0OGNjNDY3MDJkZTVlOCBsZWdhY3ktdHJ1bmsKKzYyNjkgNTFhN2M4ZmU3YzdiMjkyNmQ4YWMwNGYxODc4YzBlYWM2YjY5OTg3MCBsZWdhY3ktdHJ1bmsKKzYyNzAgYTgxNmFiZTg2ZjkwNDRkN2FjNjVhYWQzYzBmNzA3YWRjMDc1NGY4MiBsZWdhY3ktdHJ1bmsKKzYyNzEgMmYyNzUwMWRiM2MzZTQyN2UxMTM2Yjk1YTk2MmE3MjdjMGUxYzY1YSBsZWdhY3ktdHJ1bmsKKzYyNzIgYWNmMzVlZDBmMDI2NDc1MWVhZDAxMzc1ZDM0NWU4ODE0NTI4NzQ4ZiBsZWdhY3ktdHJ1bmsKKzYyNzMgODQzMTIxYTIyNmNhOTQ2MWI4NmRlZjZiNWMyYTE0YjcxMDhlMzdiMCBsZWdhY3ktdHJ1bmsKKzYyNzQgNDhlODU5ZjMyOGNiYzAxMWY2Yzc2ZWE0ZWFiNTI5ZmI1NzVkODJhYSBsZWdhY3ktdHJ1bmsKKzYyNzUgMmVhYTAwODYwZWRjNDYwYjJjOTkyNTc5ZWVlYTc5NmQ1N2U5YzhmNSBsZWdhY3ktdHJ1bmsKKzYyNzYgNDg3NzZiZjRiZDQ5M2M2YzMxMTczYjUwMjVmN2Q1YTk2NDg5MzhiMiBsZWdhY3ktdHJ1bmsKKzYyNzcgNGY3Mzk2MmFhYmE2YmFjODY0Nzg1YjJlMjA2OTc2YWJhN2NlODU2MCBsZWdhY3ktdHJ1bmsKKzYyNzggOTM4NjhjN2ExNWM5MGJlZWI4OTQ0MTk4NjIzM2FiZTZmZGI2ODRhMyBsZWdhY3ktdHJ1bmsKKzYyNzkgNDI2ZTc5NmY2MTE1MjE3OWVhNGRiOWU4YTE2ZGMwN2IxNmQyZjUwZiBsZWdhY3ktdHJ1bmsKKzYyODAgMTdhMjg5MWU2MjdmYjg5ZTUyM2Y3MTJmZTY1MWRmMTAwYzJjOTlkZiBsZWdhY3ktdHJ1bmsKKzYyODEgYmYzZjgwOTQxZWMxMWM4YTM3MWM1ODNmYzM0OWJhMGVlNmM5M2Q2NSBsZWdhY3ktdHJ1bmsKKzYyODIgMmRiZDUwODFjNzFlN2JmYmEwNTYwZThkYWZmNDFmOTY4ZGM1ZDY2YiBsZWdhY3ktdHJ1bmsKKzYyODMgYjlhMDQzNGQyY2I2ZjEyMDJkNjRmNDY0ODkzMmNjYTQ3ZWNmMDJiZiBsZWdhY3ktdHJ1bmsKKzYyODQgNmQzMjRmYmFmYWRjMmY5YTM2NTkzMmE5MjczMzIwNmMxN2Q2Mzk2YyBsZWdhY3ktdHJ1bmsKKzYyODUgY2EzNmUzMDhlMzNkOWRlMjczZjFhNjk3Nzk2ZDQ5YTIyZWU3ZDYwYiBsZWdhY3ktdHJ1bmsKKzYyODYgMzFlMTAwZDlkOTI5YzhiMGQ4YmFhNzYxNjE0Y2RlZDE1YWFhNzA0YSBsZWdhY3ktdHJ1bmsKKzYyODcgY2M5MmZhMmNkODZiZDhlZTZkZjc2NmQ4NGEyNGMyNmY5MzkxNWYyZSBsZWdhY3ktdHJ1bmsKKzYyODggODlkNGY1ZGVkNjcwMzc3NjA5OTk3ZWVlMWIzZjNiMzMzNjQ1N2NiZSBsZWdhY3ktdHJ1bmsKKzYyODkgZjMyNjc2YWIzZjNhMDYxMWQxNzFmODQ5OTBmYWY0ZDk2ZTU5N2QzNyBsZWdhY3ktdHJ1bmsKKzYyOTAgM2M1Y2E3NzI3OTg4M2E0MzEyZTY3MDU5MjI0NjhkOTI3MjFkNzY4MCBsZWdhY3ktdHJ1bmsKKzYyOTEgNWI2YTc5MWFjNmU3ZGU0ZWFkYTI0OWM4ODBjYjkwNDk5MmUzOGYwNyBsZWdhY3ktdHJ1bmsKKzYyOTIgZjdmM2U0YjU2OTNjMTRiZWQzOWRlZjYzZTZiYmRiZjljMTUxYzVjZCBsZWdhY3ktdHJ1bmsKKzYyOTMgMjQwZjgzNGFlZThiYmI0ODQ1ODMzOTQzNDZhOTU1ODcyMjRmYTIzMCBsZWdhY3ktdHJ1bmsKKzYyOTQgZGI0ZWEzYWJmODkxMmM0NzIwOTUwM2U5YzcyMDU2M2MyODE1Y2YzNSBsZWdhY3ktdHJ1bmsKKzYyOTUgOWFhYzM3ODkyZTg4OGZlZDg0OGJhMWRhZDRiNjdhYTRiNjlmMzI0NCBsZWdhY3ktdHJ1bmsKKzYyOTYgODIwYWJhMTA0NmMzOWFmZGYzOTE2OWYyMGY3MzAwMzQ5OWE3ZjhiMiBsZWdhY3ktdHJ1bmsKKzYyOTcgYzNlYzY5YjFmZTM2MDkzM2RkYzY1ZmYyMTNjNWNkZjc4ZTQyMjRhMSBsZWdhY3ktdHJ1bmsKKzYyOTggOTgzMWUwZmMwMWRlMDQ3MjhlOWI4MWZlYTJjZGQ1Mzg2YzAzYTM0NiBsZWdhY3ktdHJ1bmsKKzYyOTkgYmMyMmViNWQ0YTBhMTFiYTY1Y2Q0MjBhNjA1YzIzMzcyYzQxNTRjMiBsZWdhY3ktdHJ1bmsKKzYzMDAgYzM1ZDllMmE2ODYwODMyN2U1MjgyNGQwNGMyNDA5ZmNhMGUxYjlkZSBsZWdhY3ktdHJ1bmsKKzYzMDEgMDliZWJhOTQwOWRkZDRhZjUzMjg3NDAxYzI5NjQyODEyZDBhMmUxOSBsZWdhY3ktdHJ1bmsKKzYzMDIgM2UzZTk1ZGRjZTIyZmIzNDg5ZjQ0NmFhYjVkNWQzMjdmY2YwMjZiMSBsZWdhY3ktdHJ1bmsKKzYzMDMgOTY4NTFmNTFhZDZiZjlmZWRhZTVmNmE0ZWY2YmMxZDhkODM2OGU5NiBsZWdhY3ktdHJ1bmsKKzYzMDQgMDM5YmMzZTRlNjRlYTEyMDhmY2MzOTAwMjIyMTJmNmU2OTgwYjk0YSBsZWdhY3ktdHJ1bmsKKzYzMDUgZjBlZmZmMjhhMjRkZDFkMDU1YzM2YWM1OTNjMGI2ZDRmYWI2MTA5MyBsZWdhY3ktdHJ1bmsKKzYzMDYgNzdkOTEyZjJhYmNiNGYzMzA0MGYwY2I5M2Q5Zjg3NWU3YjQ4MDQ1ZCBsZWdhY3ktdHJ1bmsKKzYzMDcgMzQzMjMyYzFkYzlhMDc0OTM5OTcwZTZkMTUxYzQwYThiM2U5YWJiYyBsZWdhY3ktdHJ1bmsKKzYzMDggZmExNDgwZTYwZWQ2YjQ4ODhjZmVjZjY0MThiMmMyYzk3NmM5ZGUzZSBsZWdhY3ktdHJ1bmsKKzYzMDkgMmIyZWZhNDhmMjhkMjZiOTczY2NjZGRhMDNkMGQ1Y2IzYWY3NmJmYiBsZWdhY3ktdHJ1bmsKKzYzMTAgNWFhYjNmNjY4ZTg0Njk2ZDI1ZDE2NWFlYTczNjI3NDBhZjcyODZiZSBsZWdhY3ktdHJ1bmsKKzYzMTEgMjJlMjliMTc0N2UxMzlkOTU5OGVhYTUxMjZjNTkzMTNhZjM5OTQ5ZCBsZWdhY3ktdHJ1bmsKKzYzMTIgMjZjMjAwMjY2NjExOTgwNmUwMDdhZDM2N2NiODUzODVmNzIyMWRhNSBsZWdhY3ktdHJ1bmsKKzYzMTMgZjY2Njc5YWE4ZGUwYWNlMzZmMzZkYmIzZDdiOTViMzI5Nzk2ZTE4OCBsZWdhY3ktdHJ1bmsKKzYzMTQgMjEwODE2ZDM0OGJhNDVlZTg5MTQ2OTA3OGJjYmE2MmRhMDU4M2RhYiBsZWdhY3ktdHJ1bmsKKzYzMTUgZGUwYWQ3NTI3ZGU3ZmNlODQ3MWU4NjA5NGYyOGI3N2UxY2IwZjVmYiBsZWdhY3ktdHJ1bmsKKzYzMTYgMGQ1NGExNGVmMGI4Yzc0YmZiNjJkNTMzMmYyMzNlNTdlYzc4NjgyOSBsZWdhY3ktdHJ1bmsKKzYzMTcgZDE5MzM4ZmQzOGViNjllODU0MDVjZWUxYTA5YTA3MzY0ZjFlZTZmNCBsZWdhY3ktdHJ1bmsKKzYzMTggZmNkODJhMDE1MDdkMjYyMjk1NTViN2IwOTE0YmNhZWNkNzc1NWRhMyBsZWdhY3ktdHJ1bmsKKzYzMTkgOGRhYjNhZDk2NDAwNmJlZGZlZjhmNTk0MzQwZjMwZDczNjJjY2EyMyBsZWdhY3ktdHJ1bmsKKzYzMjAgOTdkMjRhZjM0OGNmZTgyOWI0MWM3ZDJmMmRhOWQ4OWZmMGExOGM3MCBsZWdhY3ktdHJ1bmsKKzYzMjEgNjlkY2MwMmUzMTM1ZmFiYzczNGU1MGViMTEyODEzM2Q5ZTM3MjFjNSBsZWdhY3ktdHJ1bmsKKzYzMjIgZDFjZmY0OWUzY2M4ZDI4MGE0NmQzY2EyNTU3ODdkMTRjMWNkYTE1NyBsZWdhY3ktdHJ1bmsKKzYzMjMgMGZmYzBiMzYyZmNiYjkzZmFiYmJiNWM1NzhhNjFkYzYyYjdlZDM5YiBsZWdhY3ktdHJ1bmsKKzYzMjQgOTc1MTlkZmM2M2FlYjc5ZGZlOGEwMWZlOTIyZjA4NWEwOWE4NWExNiBsZWdhY3ktdHJ1bmsKKzYzMjUgM2IxMTRmMDMxNWMxNDU2MTQ5MjE2MmFkNzg1YmRkYjhkOWU0ODA4NSBsZWdhY3ktdHJ1bmsKKzYzMjYgMjMxMjZlODA0MGEwYzEyNjJlYTE4ZDBmYWU3MmFkNGQ2NjRmNTVkOSBsZWdhY3ktdHJ1bmsKKzYzMjcgMDQ1N2VhOTRlZjc5ZmFmOWJjNzliZWYxZjI0YThhZmEyZjU0NmUwYyBsZWdhY3ktdHJ1bmsKKzYzMjggNTgzMGVkZTQwODZjNzQ0MDRkNDE3ZGUzMjUxZGNjZTMxNmUxOWQ5MiBsZWdhY3ktdHJ1bmsKKzYzMjkgODNhOTViZjcwODY3ZGJmMzc0ZDdkZTg1OTk3NDRmYTA4YjVlMWZiNCBsZWdhY3ktdHJ1bmsKKzYzMzAgOGI3MWVhNWRhY2M4MzE1NTAyMzlkNzM3OTRmYWFiYTZlZDAxMzUyNyBsZWdhY3ktdHJ1bmsKKzYzMzEgMDg1MzE2NmYwZDY5NjYwZDZjNDMyZWIzOGQyNTcwYWZkNGI3YjdmYSBsZWdhY3ktdHJ1bmsKKzYzMzIgYjYxOTM5NTI0YzNjZWZjYjRhZTBlMjE1MDQ4YzAwNjRkMTZlMDY1MCBsZWdhY3ktdHJ1bmsKKzYzMzMgOGI1OTAxMzk5YWRkYjRlYTIxNjhiZWI3YzkyZjU0MzU0YjFhMGM5NCBsZWdhY3ktdHJ1bmsKKzYzMzQgZDU1Y2RmNDNjMjQwMTljNjQwODllZmEyYzZmODcyNzA3ZmZmYTQ2MCBsZWdhY3ktdHJ1bmsKKzYzMzUgNDU2NmExOWMzNDM4ZDE0ZTAxNmFhMzcwZjIwYzM4ZTdmMTE4ZGQwMiBsZWdhY3ktdHJ1bmsKKzYzMzYgNzgxOTU2ODMyM2MzNzUzZjMyZDIzYjU3MDIxODA0YzY3NzI3MzZkYiBsZWdhY3ktdHJ1bmsKKzYzMzcgNDU5MTAzNTIyOGE3NzNhNTE2YWE0MGU4NTczZjRhNTlkZmJjZGU1MSBsZWdhY3ktdHJ1bmsKKzYzMzggYTNiMDlhNzExNjJiYzIyYmM0YzRiYTM3NjM3NmYyNjA2ZjYzOGQ3MSBsZWdhY3ktdHJ1bmsKKzYzMzkgZTliMzVjYzg4YjUwZTk0MGQyN2JjZGNiMDQ1NzcyYTllYzdmN2E2YyBsZWdhY3ktdHJ1bmsKKzYzNDAgMmFjMmE2MDEyMDViMzM1YmM4NmIwOTE3M2U2ZDU5ZDE0ZjUwOTcwMSBsZWdhY3ktdHJ1bmsKKzYzNDEgNGRkZThjMDQwZjllYzUxNjViZTAzN2ZiZWNjMDNhNWNhNWQ5NTY2YiBsZWdhY3ktdHJ1bmsKKzYzNDIgNWIxNDcxMDk1YTNhMjY3MjFmYjY0MWY0MjU1NjZhNjNiNDI0MjY4NyBsZWdhY3ktdHJ1bmsKKzYzNDMgOWIxOTUyODVmZTE3N2IxNWY0ZGU1NWEzZTRhNjU5NTg1ZmI3MTNjNSBsZWdhY3ktdHJ1bmsKKzYzNDQgNGU5NzkxNjE2NzFmNDM5YWU4NWUyMGJiZGQ1MDI5NTdmZTlmMzBjOCBsZWdhY3ktdHJ1bmsKKzYzNDUgYmMwZWRjNTg5YWQ0OWQ5YjVkNDkwY2FiNTI1M2FkMjRhNGViYzc5OSBsZWdhY3ktdHJ1bmsKKzYzNDYgZGM1YzExMTc3MzM5ODBlOGQ4NzU0MWU2MjcwMzdiNGE3ZTUwYWZlOCBsZWdhY3ktdHJ1bmsKKzYzNDcgMjgzOGRiODNkMGVkMzg2MDRlZjYyOGE0N2QxMGM0MzIwYTM5NTBiMyBsZWdhY3ktdHJ1bmsKKzYzNDggMDYzOGZkYzIzZWVjNGJhNmU2YjNlMjQ4MTg4ZjllNjE3YmQwYzgwMSBsZWdhY3ktdHJ1bmsKKzYzNDkgNDA4ZTM3NDkzNGU1YTQyNGQzMDQzYmZkNjRiODk1YWEyMTc1OTc4YyBsZWdhY3ktdHJ1bmsKKzYzNTAgNDI4NjkxMDA4MGE5ZmVhYWZkZTNmODEzMDc5YjhiZGJkMzc0OGQwYSBsZWdhY3ktdHJ1bmsKKzYzNTEgZmVlOTI4ZjE2NjFlNzc1MmY1NzI2ZmYzODgyYWRkZjAzYjk4MjljOSBsZWdhY3ktdHJ1bmsKKzYzNTIgZDBiNDU2NmUyMTA3YTUzNzQxODEzN2VlMTA3ODllYWJlODI1ZGNhNSBsZWdhY3ktdHJ1bmsKKzYzNTMgMmRhMTJjOWQ3MTRmNDczMmJiZDQwOWU1ODU2NjE4NmJiMmZlMzExNCBsZWdhY3ktdHJ1bmsKKzYzNTQgMzU3ZDczOTVjOTk4Y2RmNjZlYmY2NDZiZTU0M2Y4MzQ2NWNmYzQ4MyBsZWdhY3ktdHJ1bmsKKzYzNTUgYzg4M2Q1ZTI0YWQ4ZjMzNWM5MmVhZjZkMDJhYzlhODQ1NGE0NGVjMSBsZWdhY3ktdHJ1bmsKKzYzNTYgNmRjN2VkOGE0MzRiMWZmMzY5MGZiOWE1OTgxMWEyMjQ5YzEzMzRlMSBsZWdhY3ktdHJ1bmsKKzYzNTcgZmM5YjE2NWE4YTA5ZDMxMjg2YmUwODYwYTk4NDM3NTBiMzk0Njk2MCBsZWdhY3ktdHJ1bmsKKzYzNTggODFmNjBmNTJiODczMjU4NWFmNGU4YzM3YTljZjQ3NzE5Y2RhZTA0ZSBsZWdhY3ktdHJ1bmsKKzYzNTkgOTU3ZjQyZWEwZjg0NDQ0ODZhMjM3Y2I3OTJiMzA1N2VkN2MzMjNhMCBsZWdhY3ktdHJ1bmsKKzYzNjAgM2M3NTMwNmE2NWNlZDQxNjYzMzc4YzY5MGNhNWEzNDU0ZTlkYzdhOSBsZWdhY3ktdHJ1bmsKKzYzNjEgNTcxNjgyNWY2ZTliMTM3ZmY4NjdlM2Q5YmFiYjQzZjhlMzEzNWE1OSBsZWdhY3ktdHJ1bmsKKzYzNjIgZjkwMzAxNTQ0ZmE5YmU4OWE2YjhmMmE4OWM4NWI3YWE0ZDE2ZWIxMiBsZWdhY3ktdHJ1bmsKKzYzNjMgZDllN2YxMDg4YzNiMzYzYmE0ODUyY2Q4ZWE3MWM4Mjc0MWU3NmU4MCBsZWdhY3ktdHJ1bmsKKzYzNjQgYWIwODg5ZTQyMWVkNDdhMmIyYTU0MDQyYjk2NDQ2YjY0NDgwNTdhNCBsZWdhY3ktdHJ1bmsKKzYzNjUgOTU4ZDRjNjc1MjZiMDljZGRkMmUyNjIyNTQyMzE0M2UwYjJkZTQ2NCBsZWdhY3ktdHJ1bmsKKzYzNjYgYTUwYWU4MzkzZDM3ODBjYzc0M2JmOWI4MzcwNGMxYjk5MDUwMmVmOCBsZWdhY3ktdHJ1bmsKKzYzNjcgMzNlNWQxZDQyY2MyNjJmOTgyMDRhYmQ5MzUzYzE5MmVhN2NkNzUzMyBsZWdhY3ktdHJ1bmsKKzYzNjggZjRhM2IxNmU5NWYwN2ZhYWY0ZWYxZDBhMWMyZGJhYWU5OTI2YzQxYyBsZWdhY3ktdHJ1bmsKKzYzNjkgMzE4ZTY4OWMyMjBmOTIxOTdkOWVjNzY1YmU2OWVjYWYzMjQ3NWQ0NiBsZWdhY3ktdHJ1bmsKKzYzNzAgOTRjNmJmNmZkN2Y0ZmEwOTUwMjRjN2RhZjg4YWI0YjQ5MjFkYzUzYSBsZWdhY3ktdHJ1bmsKKzYzNzEgNTg0OTM2ODkwZjg2NjkxNWQyMTU0YmQ1MjVlNTBmM2Y0NWYyZDE3NyBsZWdhY3ktdHJ1bmsKKzYzNzIgY2JhNGNlMTVhMGQ1Yzk5YWE2NWE5Yzg1OTY4NGRkZTVjZGQ3YzZiZiBsZWdhY3ktdHJ1bmsKKzYzNzMgY2UyZDkyMzliYTgxMTQ1ZDhjNjBjMmM2MWY5MDVkZWI3Yjg2ZDgzOCBsZWdhY3ktdHJ1bmsKKzYzNzQgMDg2NGE2M2ExMGE5MmMxN2M1MWNkMzA0MTNlMmJkMDNmZmNiMWNiMyBsZWdhY3ktdHJ1bmsKKzYzNzUgYTNmNjdiYjk2YWRjOGMzMjZkZmZkODUyYjBlNzFmYzliZTczM2FhNiBsZWdhY3ktdHJ1bmsKKzYzNzYgZmU0MTE2M2MwMGMzZmYyOWRlNWY1NmU2M2MzMjI4ZDQ0ODdmMDEwNSBsZWdhY3ktdHJ1bmsKKzYzNzcgOTdlNzAxMWZiMWIxOTFhMzA0ZjY1YmY0M2ExNTZjM2ZjMzcwMzIwYSBsZWdhY3ktdHJ1bmsKKzYzNzggYTBmZDgxNjg4YmU1MmY1ZDU3Mjk1OGM5YzI0Y2MwNDkxYjZlYjMxOCBsZWdhY3ktdHJ1bmsKKzYzNzkgYWMxZDVhYmZkNzhlZTQ5MTBkN2U1ODMyYTc4YzU0NTI1ZDJhMzIxZSBsZWdhY3ktdHJ1bmsKKzYzODAgODY3MTY0MmUxNGEzNzhmOTk4YjkxZTgyMDZhNTc4NTViOGE0MDg2ZCBsZWdhY3ktdHJ1bmsKKzYzODEgNmQ1MDk2YjcwMzhkOGExNjlhNzQxYjA5ZTFhZWZiMTUzOTNkZDRjMiBsZWdhY3ktdHJ1bmsKKzYzODIgOWNmMTFhZjM2MjhjODk4NTljNTMxZDUzNWZjNGM3ODkzYzIxYzgzMCBsZWdhY3ktdHJ1bmsKKzYzODMgYTlhOTJkYzJiMzc0OTQ2YzI4NjQxNjEyMjNlYzE3ZmE3NjlkMTdmZSBsZWdhY3ktdHJ1bmsKKzYzODQgNWJiZTBkY2UyZTI2NzFjYWZiOGEwNDI3NDZkNGU1Y2MzODcxYzYwYyBsZWdhY3ktdHJ1bmsKKzYzODUgZjI4ZDNkODk4MmEyNWE3Mzc1YTFhNTFmZmQzNmUxMjI0MWExZmY0YiBsZWdhY3ktdHJ1bmsKKzYzODYgNTI0Y2Y1MDFjODUxZmQ4NWEzOWU3MmU1NjljYWU4MDY3ODdlM2NhMyBsZWdhY3ktdHJ1bmsKKzYzODcgMzQxMTQ2MTAwZjM4Y2E5OGZhNjdlNzBmYThlYTAwOWY5YmRjYzQyZCBsZWdhY3ktdHJ1bmsKKzYzODggODRlMTZjZjkyMTk5MjViNWNlMzhhNDk4OTBkMDI1OTlhZWZjMjI2NyBsZWdhY3ktdHJ1bmsKKzYzODkgNDQ0MTJlNDZmMjY4NzdlOTQ3MzBmNTkyNTdmNzhiMzhlYTM5YWU0OSBsZWdhY3ktdHJ1bmsKKzYzOTAgN2RlNWUxMTUzYjM5MmNiNmQ1NmZhZTVjM2Q2YTM3MTU5NGVhNDhkZiBsZWdhY3ktdHJ1bmsKKzYzOTEgZjQ4Nzc5M2Q2MDE4NDZkMGY5NjYyMTM3NTk3YmVkODliMzFmMzQ3MyBsZWdhY3ktdHJ1bmsKKzYzOTIgOTM2NjE2NGY1YzRhOTNkNzI5N2NhOGQ3NDk4MTI1YWNhMDE3NjEzZiBsZWdhY3ktdHJ1bmsKKzYzOTMgYzJhZTA0NDBjNDI0YTcyMjg0YTU3ZWM4NDIxZTk3NTM1OTU5NjljYiBsZWdhY3ktdHJ1bmsKKzYzOTQgZThiZDQzMGNkMzU3ZTg2Y2Y5OThkN2Q4OThmOTUwNTQyY2YyNWY5MSBsZWdhY3ktdHJ1bmsKKzYzOTUgYTM5ZDA2NDk3NTIwMzViN2Q5YTU2YjJjNDZlYTUxZGFkMTE4YTYxNyBsZWdhY3ktdHJ1bmsKKzYzOTYgMDYzZDg2NzQxNDEwZTJlZDg3ZDFjMjk2ZjlhZTE3ZTIzYzRmZjRjZCBsZWdhY3ktdHJ1bmsKKzYzOTcgNGJjZWU2M2Q1YmIxN2RiMDM4Mzc2NmZhNzM0MDBkM2E0YzMzYWVmOSBsZWdhY3ktdHJ1bmsKKzYzOTggMWRhMTY4MTg1ZTRlMDViODlhNTA4NmExOGRkYzZlOTMxODdjY2ZiYSBsZWdhY3ktdHJ1bmsKKzYzOTkgNTNlNzU3YmI2N2Q1ZDYzMWU2YmE5ODFiNWY4NGM3YzgxMmQ0NzdiOSBsZWdhY3ktdHJ1bmsKKzY0MDAgMTY0MGUzNTU5Yjg2Njc5OWQ5YzNlYTA5YjIyNTk5OWJiOGRjMTE1YSBsZWdhY3ktdHJ1bmsKKzY0MDEgZmY2OGEyZWMxZmYxMmNiNjE1Y2NiYzg3MmE1NmM1MjcwNGY0OTc5OSBsZWdhY3ktdHJ1bmsKKzY0MDIgNTJjMTllZTgzYTZiMGY3MWM4OTAwN2E1ZDIyYThkZGJlZmExOTI0ZiBsZWdhY3ktdHJ1bmsKKzY0MDMgODgyYTMxYjdmODczMTFmOGUwOGYwMDgyZGEzYWNiNDRiOTJiZTgxNyBsZWdhY3ktdHJ1bmsKKzY0MDQgZmUxMTk2OTk1MzQ0NmQ3MGFhOTIxMTM0ZjhkMzg3MTA3MGMxNDVkYyBsZWdhY3ktdHJ1bmsKKzY0MDUgNjBiYjc0M2I4YTVjMjAwMGQzYjA1NWY3MjI0NzhlNTk0YmJkZTM4NCBsZWdhY3ktdHJ1bmsKKzY0MDYgZjlhZDk4YjU4NDcyYjA4ZTdlNTk1MDJlNjMzMDNlMjhmNTgzZTgyOSBsZWdhY3ktdHJ1bmsKKzY0MDcgZDdkODcwNWJhNjQ0NGRkMGQ3YTFkNWEyMTg0OGIyNTcxNGI2YzljOCBsZWdhY3ktdHJ1bmsKKzY0MDggNmUwYmJhOTNhMGViMzM4NjA5NGRjM2E5ODQ5NzgzMjg3ZmVhZDgxOCBsZWdhY3ktdHJ1bmsKKzY0MDkgZGVjZDEzZjY2MjlkNWE0MzI0MGY1ZTVlNWQ4Y2RlZTMyYjc4NzEyYiBsZWdhY3ktdHJ1bmsKKzY0MTAgNjFiNGNhZTc3ZjdlODczNWFiMDY2NmRlODI4NWFjNTRiODZhNGNjZCBsZWdhY3ktdHJ1bmsKKzY0MTEgNjc1MzI4YjA4MTIyYjljYzk0NGVkMTIyZmQyZmNjN2ZiNDM3ZjJmYSBsZWdhY3ktdHJ1bmsKKzY0MTMgNDZiMzNjZjhiOTEzZTVkMDcyMmRhMWE1NWU4NmM1NWM5MjNlN2UyYSBsZWdhY3ktdHJ1bmsKKzY0MTQgMGQ0NDM3ZDFjMmI1N2ViYmJhZmFlMjAwZTJiNTkyMWNhYjBmYmY2YSBsZWdhY3ktdHJ1bmsKKzY0MTUgMzg2ODQ4NTIzNzZmNTQyMjYxMzk1M2MyZDBkMmIwZDY3ZDJlMTQ2YiBsZWdhY3ktdHJ1bmsKKzY0MTYgNmU2MDllMjY2YmU5ZDEwYTliMWEyMzYyZGQ1NjRmNjlmNGUzZTdjOCBsZWdhY3ktdHJ1bmsKKzY0MTcgZmJhZmIwY2QwYTJhNTVmZjMxM2FkNGU3MDkwZDEzNzRmODA0ZjgxNSBsZWdhY3ktdHJ1bmsKKzY0MTggNzNjZjcwODJiOWU4ZDc0MTQ3MmM0Y2ZiZThjNjZkZDI3MTUzNDkzMiBsZWdhY3ktdHJ1bmsKKzY0MTkgNmY3OGQzMTY0Mzc2YWUyNDIxZjUwMDQxN2ZmMmNkNzkwMjA1MzQ5MyBsZWdhY3ktdHJ1bmsKKzY0MjAgMTA3NTNlNGQ3NmU3MWRjNmEwODVlNTI2MjJkZjkxNGE3NGMwN2NhZCBsZWdhY3ktdHJ1bmsKKzY0MjEgZGVhZGVhNDNiYjUzNjQ1MzVlNWRkMTcwZjI4YWVmMGQxN2NmZjk1NSBsZWdhY3ktdHJ1bmsKKzY0MjIgM2FjYWY3YWY0OWNjMTAxMzY2MzBmMzQ1N2EwMDI1ZWEwNmFkMmYzOSBsZWdhY3ktdHJ1bmsKKzY0MjMgNzVkMDE2Yzk3ZDFjMmNlZWY0NzhmZTg3NWMzMmJkMDg1ZDFjMDMwYyBsZWdhY3ktdHJ1bmsKKzY0MjQgOTA4MTgxOWFiYmY1NTY3NDJhOWY5ZjQyMGIzNTY1OWVhZjQwYWRmMCBsZWdhY3ktdHJ1bmsKKzY0MjUgN2VlMWIxMDBlZDI5YTRmZjFmMjMxNTdiZThjMGNmYjQ5MmE0M2QwYyBsZWdhY3ktdHJ1bmsKKzY0MjYgZjBmOGI1MGI1YjZjZDY4NmVjMGU2YmI0OWNjZjAxZGZlZGFiM2M5MCBsZWdhY3ktdHJ1bmsKKzY0MjcgOWQ4YTk2NWRlN2VjOGFjOWY1MzZkYzU1NjU0MTQ5NmU0YTgxNjUyOSBsZWdhY3ktdHJ1bmsKKzY0MjggMjkwMTViNThlOTIyMDIzNDUyOThlZmI5ODEwZjk0Mzg3Nzk5NzhhNiBsZWdhY3ktdHJ1bmsKKzY0MjkgOGUzMDliZTg5ZWU0NTRmMTdkZDA2MGUxZTU5YWVkMjdiNzkyZDBlOSBsZWdhY3ktdHJ1bmsKKzY0MzAgZjAxZTdhZjFkZDYwNjgzYjFmMzAyZTkzMjU3YWM0NzM4NTg2ZWQxMyBsZWdhY3ktdHJ1bmsKKzY0MzEgYjg2YzgwNDQ4ZDM1NWU3ZTg5Y2JjNzZjMjI0MzU0YmNhYjMxMmNiMyBsZWdhY3ktdHJ1bmsKKzY0MzIgNmFmN2E3MDNhZGFlZGExYzZmNWU1ZDVkMmI1YzI5NDg0MjJhMjY0YSBsZWdhY3ktdHJ1bmsKKzY0MzMgOTBmNTA1NTU1MGQ5YTA0ZTUyYTZjZjZkNTAwMjE1MWM3ZWM4MTJjYyBsZWdhY3ktdHJ1bmsKKzY0MzQgYmZkOWJhZjNhOWMyOWZlNWVkNjNlMmE2YTgxYTIxMGM0ZjVhYTg4OSBsZWdhY3ktdHJ1bmsKKzY0MzUgZjA4ZDdmMzY4ZWJmYTE4ZTk5ZDAzYTZhOGQ0ZGYwN2Q1MDRlNGZlOSBsZWdhY3ktdHJ1bmsKKzY0MzYgMDA3MjI5OTBiODBjMzFmMmVkOWRkZjI1ZjVkYTQ4M2YxODY2NjRiMSBsZWdhY3ktdHJ1bmsKKzY0MzcgZmNmZWM2YTgxMGJhNTQzZTY3YjIwZjkyYjE5NDk3ODhkNmZiNWE5NyBsZWdhY3ktdHJ1bmsKKzY0MzggOWMwNWZmNmZiMGE0ZTRiYjc1ZTViZDA2M2ZlOTdhMjFiNzEyNjE0NyBsZWdhY3ktdHJ1bmsKKzY0MzkgMjg5N2RhZmVkOTVhNzI4NGVjZjlhYTRjYTI3YmYwZDJlOTExNjcwMyBsZWdhY3ktdHJ1bmsKKzY0NDAgNTMwMTllM2E2ZDVhMzQwNTkyODJlNWY3NzhmMzdhZjJmMWQzZTI3MyBsZWdhY3ktdHJ1bmsKKzY0NDAgMTI5ZjEyOTlkNGU5N2U4ODRiYmJiZGQwMGJhZjEwMWQxNzg5NzNlNiBsZWdhY3ktdHJ1bmsKKzY0NDIgYWQ4OGEwMDA1MjFmN2IzZjNlZGI1NTRlYmFkZDg3NzBlOGYwMDhkMyBsZWdhY3ktdHJ1bmsKKzY0NDMgZGMxNDQyNTk0OThmY2U5YWE2ODliMjhmYmM5NzYwMmNhM2FmMzBkMSBsZWdhY3ktdHJ1bmsKKzY0NDQgMTQ4MTUyNTJjN2EzYTVhZTQxZDNmODkxYjVmOGIxMmJiODM4MTkwNCBsZWdhY3ktdHJ1bmsKKzY0NDUgYmIwY2U2NTNjMmJhMDI3YmI0MTI5OTdkMGIxOGI0YTcxNmRiZjZiMyBsZWdhY3ktdHJ1bmsKKzY0NDYgM2QxZTRiNzZmNzQ1YTkyYzkxNWE4NmRiM2JmZDE4ZjM3N2U2ZDg5ZCBsZWdhY3ktdHJ1bmsKKzY0NDcgZmM1MDVmMDJhZDhhMjgwNzU5ZWIwNzRlNTJiOWIwODAyMDA1NDY5ZCBsZWdhY3ktdHJ1bmsKKzY0NDggYjc2ZmU2N2VlZDQ0ZWE3MDkzMDIwZDc5NTYxNzBiNmE3MWY1YmUyNCBsZWdhY3ktdHJ1bmsKKzY0NDkgYTM0OTk3YjZlZGY0MmJkN2RlMTUyMDMwZjIwYWUyMjU0N2MyY2MyNyBsZWdhY3ktdHJ1bmsKKzY0NTAgZWFlYzRmNmE4YmU4Y2ZmN2ZlMTNiYjA5NzAyMzA0YWJmZWQwOTUzNSBsZWdhY3ktdHJ1bmsKKzY0NTEgYjkzYzRjZmMyY2ZlYTRiNGMzZjQ2M2E0Y2FlNTM1ODg4MDAzZWU3MyBsZWdhY3ktdHJ1bmsKKzY0NTIgODdlNTNjNjJjYWM4MjE2MGM3Y2Q5MjY4ZjA5YzdmMTNlMTgwNTg3MSBsZWdhY3ktdHJ1bmsKKzY0NTMgNGI1MDk4YjFmY2VmMjgwNjBhYjg5MGNlOWEwMmZjZTkyMzZhYmEyMiBsZWdhY3ktdHJ1bmsKKzY0NTQgZmI1ZmMwMzIwZTZlNWQ1MmRhYWM5NzU0NTM2OGNjOGJhOWM2YjFhYSBsZWdhY3ktdHJ1bmsKKzY0NTUgY2FmMTEwNzI0Y2MxNzdlNDUwM2JmNjA3OGRiNzIyOTZhNTEyOTdhMiBsZWdhY3ktdHJ1bmsKKzY0NTYgNDQ5MDI1MTY2MTRhOTAxZmM5ZWQ5ZmNjNjhkYTkxZDAwZjRhYjE1OCBsZWdhY3ktdHJ1bmsKKzY0NTcgMDYxM2YxN2RjZmQ4NjUzYTMwNDc0NDcxM2QwMmY3YjE2YTY3YTU2MyBsZWdhY3ktdHJ1bmsKKzY0NTggMDExY2ZlNzQ5MGViNWY5NmY0ODM1YjRjNjVlODZjZGM2OWZkZTJjMSBsZWdhY3ktdHJ1bmsKKzY0NTkgOWMyY2JmMzA2ODY0ZDJmYjliMDUzYzNkOGIyYmM0MWU0NDhhOTJiMCBsZWdhY3ktdHJ1bmsKKzY0NjAgNmZiYzVjNjY1ODEyMWU1YTQwODUwMjBkZGNjMDZmN2ZiMTY2YWUzNCBsZWdhY3ktdHJ1bmsKKzY0NjEgZWZiM2E1YTJjZGVhY2JmYjFmMzBlMzkzNGU3ZmFiM2EzZGU3ODg4YyBsZWdhY3ktdHJ1bmsKKzY0NjIgYTgxNTc2NWI0Njk1MmMxZjNhODgxNjE4MjQwNWUxMDhlMTdmNTAzMiBsZWdhY3ktdHJ1bmsKKzY0NjMgYWU4ZDFiNDY5ODEzYTcxZmE3NTNjYjQwZDEwM2FmZGQ3Y2Q5MmRiNCBsZWdhY3ktdHJ1bmsKKzY0NjQgY2ZiOGI3YmMwMjMzYTVmMTJjZTE3ZjVhZDEwOTFlZDZkZGU1ZGQyMyBsZWdhY3ktdHJ1bmsKKzY0NjUgYTRhYWM3NjZjYmYwMDU4MjhlYTlkMmJhNTRiYzk3NTYxZTdhN2FkYyBsZWdhY3ktdHJ1bmsKKzY0NjYgNjQxNGZmYjdmMjg1ZDM2MmUzMjNjNTY4OTc1NTA5NjUwMDJlNzM1ZiBsZWdhY3ktdHJ1bmsKKzY0NjcgM2Y1N2FiMzJiNzQxMmIzMzVjMGU4YTM4MWE0MTI0MjNjYWFhYmRlNSBsZWdhY3ktdHJ1bmsKKzY0NjggY2EwZTA1ZWM4NWI5YWFkMzBkMThkYTkwYTRkYzNhODExZTVhNjFjMSBsZWdhY3ktdHJ1bmsKKzY0NjkgMGVjMmNlOTdiOGUzY2JkMGFhZGVlMDMxODEzNWExZTJmODhjMDMyNiBsZWdhY3ktdHJ1bmsKKzY0NzAgODA2OTc5MGIzOTc0MDA5MTllZTk5MGNkMzkyNDRmNGQ0MGMyNDY3YiBsZWdhY3ktdHJ1bmsKKzY0NzEgZjYzMGEwNjdhZThjYjIyMTBiNjhjYzc4MmY4NWUxNWVlODliMTkzOSBsZWdhY3ktdHJ1bmsKKzY0NzIgYjA5NzZjZGJkNTk4MDNiMzAzZTZjYTAxMzY5MDU2YzdiMGFhNTU3YyBsZWdhY3ktdHJ1bmsKKzY0NzMgYmZmZmQzOGQ2MDBiNWQ5NjVhNWNmYmU2MWE0NjhlZGE1ODJkMjM1NiBsZWdhY3ktdHJ1bmsKKzY0NzQgMWVkNzczZTE1OTM2OTM0NWMzOWUyODY3NDQ5ZjE5ZTNlMWJkYTFmZCBsZWdhY3ktdHJ1bmsKKzY0NzUgNDI0MTU4MjYzNmFkYjM4ZWNjMTQzODJkY2QwYTNmYTVjODY4ZDFkMiBsZWdhY3ktdHJ1bmsKKzY0NzYgMTM4ZmExNWExMDMyZWMxYjE4YzY5MWU2ODFjZTgzOTdiZjhjOGVjNCBsZWdhY3ktdHJ1bmsKKzY0NzcgZDNhMWY2MDg4YzI4ZjEzMTk5ZjBjMjQ2MDBmZjFiOWI4N2VjZDg3NyBsZWdhY3ktdHJ1bmsKKzY0NzggNzQ5NTMyMjQyN2M3NmFjNmUzZjc5NTM2NzYzZDk1ZDcxMWYyYzI3ZiBsZWdhY3ktdHJ1bmsKKzY0NzkgYzJhNjExYWUwZmVjZjQ5NjkwMDNjMmU5ZjUxYmI5ZjE0MmE0ZDg0YiBsZWdhY3ktdHJ1bmsKKzY0ODAgMWEwYWE5ODZmNmZhNjQ1NWI3YjEzZjdlYjQyYTVhMmU1ZDdjMTE3NCBsZWdhY3ktdHJ1bmsKKzY0ODEgMThjMzI3MTRmOGJhNTVkMTU1ZWE2YTg5NjJjZTA5MjkwMWM1MzYxNyBsZWdhY3ktdHJ1bmsKKzY0ODIgNjExMDY5ODZhMWE0YzliZDUzNWM2MTExYzRhYzlkZjQwOWEwY2VlZiBsZWdhY3ktdHJ1bmsKKzY0ODMgY2NjZjlmMjczMmNmM2VkNGZlOTdmN2U1MWYyNTI4ODcwYTQ3ZGQzZiBsZWdhY3ktdHJ1bmsKKzY0ODQgOTI5NDExZGIyMGE4NTg3ZjYxNTQ5NzIwZDgwYjg3NjM1ODA2YTg3ZSBsZWdhY3ktdHJ1bmsKKzY0ODUgMjJhMDMzYmJlNjU1ZjE1YjQwM2Y0NjFkYjQwYjRkZmU2YTU2ZjUyMiBsZWdhY3ktdHJ1bmsKKzY0ODYgYWE5NTQ4ODg1YjNmODBhMzIzYTg3MTI3NDRhYTVmYzdjNTc2Y2ZjOSBsZWdhY3ktdHJ1bmsKKzY0ODcgNDkwOWVmMzllYWYxZGI4MjQxNDY4NDUwMjFjOGVmMzQ1MTkwNzM2NSBsZWdhY3ktdHJ1bmsKKzY0ODggMjExMjE1YzFjNTBkNGIyNGEzZDc0ODRiMzIxOTYzNmVhNWYxNjc0NSBsZWdhY3ktdHJ1bmsKKzY0ODkgOTM4OTE4ZmYzNTM3OTUwZTY5MjQ4ZTRlYjJmYmY2YWUzNTdjNjY2NyBsZWdhY3ktdHJ1bmsKKzY0OTAgNWRjOGMwNDI5MDViNWMxZWIyMjZkNTg3YWE2NWRiM2FhNjcwNGE0MSBsZWdhY3ktdHJ1bmsKKzY0OTEgNDBjOTI5MzM1ZDdmMjQ0NDIyNmM0ZjdiNzcxNWU2NjdhOGQ1MjMwZSBsZWdhY3ktdHJ1bmsKKzY0OTIgMWRlZTNlNGY2N2RmMDIyMjRlODVkMzNmODRiNmIwMjMwZTM2MDg3NSBsZWdhY3ktdHJ1bmsKKzY0OTMgZjQ5ZTQwNTdlYjY4MzAyZjI5OWIzN2FmY2Y3NjEyMjkzODllMjUxNCBsZWdhY3ktdHJ1bmsKKzY0OTQgY2YyNjMwYTQxZjg3NTJlNmZmNTM3NThjMTZlY2U1YWNhYjkxMzYzMyBsZWdhY3ktdHJ1bmsKKzY0OTUgNGZjY2Q5ZWVlNjc5YzIwY2M3MWVhMTU4MDJkOGViMDAwYzU4NTdkYiBsZWdhY3ktdHJ1bmsKKzY0OTYgODkyZjQ1NjE2NDhhMDk1MGUxYzVhN2JiMTUxYjU2OTg0NzYxOTgyMiBsZWdhY3ktdHJ1bmsKKzY0OTcgNTNkNTExYzAwMjlmNTQxMzE4NTdmMmNkN2RkZTRlMGIyODFmOTQxZCBsZWdhY3ktdHJ1bmsKKzY0OTggODU0ZjI1ZmRlOGY0MmMwYTI3ZjgxNWNiODY1NzY3YmY0ODkxZWQ2NiBsZWdhY3ktdHJ1bmsKKzY0OTkgNmJiYzEzYjdkY2E4OGI4Mzk2MDgxNTU0ODVjNmE4ZmU5ZTA3YmQ0ZiBsZWdhY3ktdHJ1bmsKKzY1MDAgMmNkYjhmNWFjMzY1ZjhkY2ZkNzg0NzcxYmNkYTE0YWIzOTYzNzRmNCBsZWdhY3ktdHJ1bmsKKzY1MDEgZGEyYjlhZTkxZDk1M2VjNjBiOTE2YmY0ODczMGE5MDc1NmU5YjIxMCBsZWdhY3ktdHJ1bmsKKzY1MDIgODJjOWRlZTA1M2JjNmQ0NDFlZTRhOTk2N2E4YjM3NTA4NmY5Mjg1NSBsZWdhY3ktdHJ1bmsKKzY1MDMgZTc3ZmFmNTU2OTdiOGYzZGM1MmVhMDRlNzA2YzhkYTNkZGE0OTQwOCBsZWdhY3ktdHJ1bmsKKzY1MDQgM2EyMDAwMDJkODBhODgwZWEzNTA4MWZhNjZhYjBkOGY4NjYyYjU1MCBsZWdhY3ktdHJ1bmsKKzY1MDUgODkzOTQ5ZDFkMjhlYWE3ZTJmN2Q1Mjg3ZWRlMTQyMjVjNzA2ZDk5NCBsZWdhY3ktdHJ1bmsKKzY1MDYgNTU5MmRlOTY1NmRlNGE5MjAwNDllMDVkMWViMzRiNWI4ZjY1YWMxZSBsZWdhY3ktdHJ1bmsKKzY1MDcgYjQzMzM4YzUyMzFlMTA1MzE2MTRkMjAzNzI1NDFhNWNlMTllZWVjZCBsZWdhY3ktdHJ1bmsKKzY1MDggZDFiYWVjNTcxODUyNGMzMzM0OTg1NjliZjhhZGY0OGQ0ZGIwMTE1NiBsZWdhY3ktdHJ1bmsKKzY1MDkgZjdjMjQzZDAxODQ0NjlkY2NmYTIwMTVlNjc4NDM1NmZhNTc1ZDM5OSBsZWdhY3ktdHJ1bmsKKzY1MTAgY2EzOTM1NWJlNTVhMmJhZWM5OTAzOTVmMGVhOGVjNDEzYmMyMTEzYiBsZWdhY3ktdHJ1bmsKKzY1MTEgMjYxNDcyZmE5NzJhNzU4MGYzNDMwZGI4MDczZGVlZGJhOGMwYjVlMSBsZWdhY3ktdHJ1bmsKKzY1MTIgMjNmMjgwYWI1NDA5Yjc5ZTYxNzNkNGUxZjg1MWRiYjY3NTU5NGQzMyBsZWdhY3ktdHJ1bmsKKzY1MTMgZjQxZjBjYWYxY2ZjZTJmNTQyNDBiNjEzMDU5NDM4OTRlNjQ2ODJiMSBsZWdhY3ktdHJ1bmsKKzY1MTQgOGEwMTBkZDQ3MzZlYjgzZTBlNjM1NmY3N2Y0OTU4YTU2YzU3OGMxYSBsZWdhY3ktdHJ1bmsKKzY1MTUgNmI0ZDBmMWEwYWU5YzliYjU1YzE4ZDBkYzBjMmFlYWEwYThhYzIyNiBsZWdhY3ktdHJ1bmsKKzY1MTYgZDZjN2U0MGNiZmRmMGEzOTNmNmI0MjIzNDM1NTA0ODNhODk0NDk5ZSBsZWdhY3ktdHJ1bmsKKzY1MTcgZWY3ZTNjNDk5YTRkYTAxY2QyZTEyZDM1NjUxMDczNWJkOWQ5ZjgwNyBsZWdhY3ktdHJ1bmsKKzY1MTggOTZlMGE3MjA0ZTMxZDgwZmY3YTE4NGYwYTIzNTcwOWJhNGVmMWJjOSBsZWdhY3ktdHJ1bmsKKzY1MTkgZWI5ZmM0MDRjMDY2MzEzZTRlOWFlNzZiZDNlMDdjNWQ3OTMzMWQxYSBsZWdhY3ktdHJ1bmsKKzY1MjAgM2U2ODYzY2VhMzgzMjYzYzU5ODJjNzNhODQ1MjVkMWE3NzE2OGIwZSBsZWdhY3ktdHJ1bmsKKzY1MjEgZjdiMTNkNDE4MmIzZGFlOGIzNzNlMjJkYTc5MmJjNDQ4ZGY2MjBkNSBsZWdhY3ktdHJ1bmsKKzY1MjIgYTJkYzdjZTRkZmJlN2JkNmZjM2NjMzI3NWRiOWQ2MGNlODhhZDNiYSBsZWdhY3ktdHJ1bmsKKzY1MjMgYmMwNjVkZjAzZWU0ZWY4OGMyYzQ4NmRhZmFhNTAzYzQ5NzkxODY2NSBsZWdhY3ktdHJ1bmsKKzY1MjQgZDZjYTZlMjA3OTk0NzcyMjkwNWIwMjg5MDhjMjE2MjI1YjM1NzY1YSBsZWdhY3ktdHJ1bmsKKzY1MjUgZWY2Yzg5ZmUyMWVkZWExYWRjMThmYjU1ZTAxMTUxMjZkNTA0YjU4YiBsZWdhY3ktdHJ1bmsKKzY1MjYgYWM5MjViOWExZDY3NzIxMzdlNWM2YmY5M2EwZDZhMGJlNDM2NmE4NSBsZWdhY3ktdHJ1bmsKKzY1MjcgNjY5Y2NkOWU3MTdlOGVjOWUyY2VlYjg4YTZmOWYzYWYzZTRiZDk5NCBsZWdhY3ktdHJ1bmsKKzY1MjggZjAxMTBjNWM2MjI3OTJiNDY1YjNiNTdiYjFjMWRlMWY5M2E5YTQxNiBsZWdhY3ktdHJ1bmsKKzY1MjkgNmRlZWUzYjIwNmI5OTQ3ZTQ0ZTgyNjkwYmNmZTBmYjkxNDJkMmYyOCBsZWdhY3ktdHJ1bmsKKzY1MzAgODE4NTk5ZTM5MTIzY2NiODFiMzkzNzZiMDg1OTYyMjQ4MzM0MmM3ZCBsZWdhY3ktdHJ1bmsKKzY1MzEgMjFiMjhkY2ZhODY1NDNkNzVkNzQyZjA3YmIzODEyODI0NzliNDUwNiBsZWdhY3ktdHJ1bmsKKzY1MzIgZDY4OTczODVjMzE4NWZjYmRkZDliMTI4MDIzYTM4N2RkZTU3Y2I2NCBsZWdhY3ktdHJ1bmsKKzY1MzMgNjRhNThiMGZiMTY3MTBkY2I3Mzc5NDdjYTY1NTk0YzUwYzQ3OTVjYiBsZWdhY3ktdHJ1bmsKKzY1MzQgNGJmMDFjNjZjYjY4NmNhOTg1MDNkNjE1YWFkNTA2YjhjOGUwYmVkMiBsZWdhY3ktdHJ1bmsKKzY1MzUgZDZkZTJjMTQ4ODE5YWM3YzNjZmI4MjJmNjc0M2Q1OWI0MDI3ZDIxYiBsZWdhY3ktdHJ1bmsKKzY1MzYgYTU4OWNlZGNiZWY1NDY1NDUxNGFkMTViMjQxMWU4NWVjZDE4ZTRhMiBsZWdhY3ktdHJ1bmsKKzY1MzcgNzg4NDM0NzJmYjZmYTIzZDk2ODBkZmU4NWE0ZjEzN2U2NWM5ODFmNyBsZWdhY3ktdHJ1bmsKKzY1MzggYmRlMTlhY2YxMDQ1ZDQ3ZTU5ODI5MjZlZTlkNTUyNWVmNWNmN2QzNiBsZWdhY3ktdHJ1bmsKKzY1MzkgMmM4OWJmMDRmODM0ZWFhZWFjZjE1NTNkZDM4MGU5MTg1YWY5ZWQyNSBsZWdhY3ktdHJ1bmsKKzY1NDEgMjMxYTQyMDkxODMwMmU5N2RjODk5ZTgxMDc5ZmJkNzk0OTBmYjcwOSBsZWdhY3ktdHJ1bmsKKzY1NDIgNGM1NGVjZmFkY2U1ZTQ4NmIwNjhmYjJlODA4MzE2YjRhOTBmOWIxNiBsZWdhY3ktdHJ1bmsKKzY1NDMgZWZlODY4OTFmNDExYjg1N2I5YWVlZWNmOTMxYWQ0ODViZjM2NjhjNyBsZWdhY3ktdHJ1bmsKKzY1NDQgMTk0MTIzMDVkMzM1YTY5Y2IxY2ZjMTkxYzhlMjIzZDZlYmZmY2FkMSBsZWdhY3ktdHJ1bmsKKzY1NDUgYzU3NWE5MjBlNGExZjM1YTRmOTNhMTYxZWI2YmViMWY4MTdlZWQ0ZSBsZWdhY3ktdHJ1bmsKKzY1NDYgZjY2NTYyNTM2ZjExYjNkNWM3MmJiY2JkY2Q0ZTBiNzFkZDkwMDAxYSBsZWdhY3ktdHJ1bmsKKzY1NDcgNTg1MDRjOWEzN2RjNGE4M2UzZmRjMjQ1OGFkMjdkZTI1OGVlMDUyZSBsZWdhY3ktdHJ1bmsKKzY1NDggN2I2ZWVmYWM2ZTQ5Mzc2MDk3MzY4ODAyYWE2YTY1NmQxMmY3YWMzMSBsZWdhY3ktdHJ1bmsKKzY1NDkgNGE3MDM4ZTdhMzEzOWMwOWY0OWY1NDg2MDNmOTIyNThjMDViMTY2MCBsZWdhY3ktdHJ1bmsKKzY1NTAgZWRhMjliZWY4ODBjOWE1ZGVjMjdkMWEyNTY3ZjUxYTY1NmNlN2U0NSBsZWdhY3ktdHJ1bmsKKzY1NTEgMTBjMDg0OTQyY2YxMmRkMGZlZWYzYmEyYjIyOTUxMWEwYjBjNzYwYyBsZWdhY3ktdHJ1bmsKKzY1NTIgMTg0NTFkY2E5NDY5YTA0ZTJiMzA4N2Q1ZTc0NTgxMjIyNjkzZjllNiBsZWdhY3ktdHJ1bmsKKzY1NTMgYTZlNjJjMjFiMGUzYjAxY2VkZjNkN2UyYmRmNWFhMzcxMjIxZGU1ZSBsZWdhY3ktdHJ1bmsKKzY1NTQgNzUyYjg2YmExNmZjNmU5Mzg0OTZiNzZiODg4YWZmZjQ5ZGM1NTI1YSBsZWdhY3ktdHJ1bmsKKzY1NTUgNWY2ODY5YTM4ZDg1MWYwNjk2NTgwNTQxY2E1YThiZDhjMGJkOGEyNiBsZWdhY3ktdHJ1bmsKKzY1NTYgMzkwNjgzODE4ZjczNDE3ZGI5MTRmYTFiMDEwODYwZWQ2ZDZjMTc0ZiBsZWdhY3ktdHJ1bmsKKzY1NTcgNDY2MTdkMjljNWQwNjM5YTdkNjUzMTdhYTZkNzgzNjRjZTMxZmE5MyBsZWdhY3ktdHJ1bmsKKzY1NTggN2Y4M2UyNGQxZDg2OWI2NzQ3MTAzMWU0MDFhZjliMWM1OWVlOWU2MyBsZWdhY3ktdHJ1bmsKKzY1NTkgZTBmNjQyZWU0NWJiZGEwMWEyZjFkMTA4MWRkNjI1OTIzMGMyYTY2ZSBsZWdhY3ktdHJ1bmsKKzY1NjAgODMxYjQyMGU0MTFlNDIxZDMzN2MyYzRlNmU1NjY5OWU5YWE4NTQ0NyBsZWdhY3ktdHJ1bmsKKzY1NjEgNzQwZGVmNjk3ZDhiOGUzYmNkYTRkZTZjOWNmMmE3OTY1Yzg3NDhmZSBsZWdhY3ktdHJ1bmsKKzY1NjIgZjgxZDc4NTQ3ZjI4OTI5MWFmYjIzNTNjM2Y1YzdjNGI1NDc5NmIwOSBsZWdhY3ktdHJ1bmsKKzY1NjMgOWY3MGQ5OTVkMDI3OTI5OWNkOTJmMzZlODM3Yzg4NGJkY2ExMGI3YSBsZWdhY3ktdHJ1bmsKKzY1NjQgMGI0MGM4ZDViMjFkMjI1OTU1OTcwY2NkYWMzNWVhYzlhMWQ2MGRhMyBsZWdhY3ktdHJ1bmsKKzY1NjUgZGM5NDZjYWI3YjliYmJhZjM5ZmFlNjkwOWQ3MzNmZDY3ZTVmMjUyNyBsZWdhY3ktdHJ1bmsKKzY1NjYgODU5MmZhNGExMTliMDhhODhhMWNhNDc2MjNiMzhkMGIxNTM3YWM1YyBsZWdhY3ktdHJ1bmsKKzY1NjcgZjI5ZmU3MWYxMWU2NGYxMzgxZWZiN2Y4NmUyODE5MGM4NzExZGMyYSBsZWdhY3ktdHJ1bmsKKzY1NjggODQzODE4NGU0NDhlMDM3ODI5YmE3MDc1MGY5NDMyNDA5ZTdjMTMwOCBsZWdhY3ktdHJ1bmsKKzY1NjkgMGE1OWM5OGRjMDA1MzVmYTczYjk1ZmU1M2YyOWIwYmMxMGY0YTQ1ZSBsZWdhY3ktdHJ1bmsKKzY1NzAgODQ2NWQ4ZmJjN2FjMTdiZTk3ZGM4MTNjY2VlYTBhMDlhYmRkMWI0ZSBsZWdhY3ktdHJ1bmsKKzY1NzEgZTUzODYzOGVkYzcxMzM3MjI1M2U3OGI1YTUyMjc0NTA5YjE5Mjg3NyBsZWdhY3ktdHJ1bmsKKzY1NzIgNmY2YmE3YzAwODIzZWFkOGQ1ZTVhYTlhZDY2ZjgxMmZiOTlkZTU5NiBsZWdhY3ktdHJ1bmsKKzY1NzMgM2EzYjM2NzE2Njg5YzVmODcxM2Q4MGNiMzdkYWEyZGJkYzA5MTUyOCBsZWdhY3ktdHJ1bmsKKzY1NzQgNTMzNmMwM2ExMzFmYjViZjAyYTg0MzYwYzU0ZDA0OTdiNmVmMzkyNyBsZWdhY3ktdHJ1bmsKKzY1NzUgMmZjZWE1ZGQxZDE4YTI1YWQ2MWU0NTI2ZDY4NzQxZDM0NjJhOGNiYyBsZWdhY3ktdHJ1bmsKKzY1NzYgOTU2OTY2NGFjMzQ3NTNmOWQ1ZDFhNGMzN2Q2MzE4ZTQwOTdiM2VlYiBsZWdhY3ktdHJ1bmsKKzY1NzcgYTVhODI2NjY5NzdiNWUyOWM3ODhkMjNkOTIwZGM3YWQ3ZTM2OTcyOCBsZWdhY3ktdHJ1bmsKKzY1NzggODY5YTk0ODA4NWMxMGZjZTgzOWRhNmQ1ZTc0YjE4NDY3M2Y3MjVlNSBsZWdhY3ktdHJ1bmsKKzY1NzkgOWMxZjliMDljNDQyNzU3NjJiODM0ODQyYWVjN2JmNTA4NGU4ZDQzNCBsZWdhY3ktdHJ1bmsKKzY1ODAgZjM5NTE2M2NhOWQyNTVjYTRmNmMwOGNjMWE3NTFjMmVhNWU0ZWQ2ZCBsZWdhY3ktdHJ1bmsKKzY1ODEgM2FjMDMwY2MzM2YwNjg4N2JiODdhMTFjMDk2MmRlM2FjNTEyZTExMyBsZWdhY3ktdHJ1bmsKKzY1ODIgNmQ5ZDVlN2U1ODhjNDlmY2QyZGJkYTE4YjNkZTE2YTUyN2M1ZjM2MSBsZWdhY3ktdHJ1bmsKKzY1ODMgOGM3YjdlOTRmNGRkMzllYmJkZDA5NTMzZjdkMzE4NWIxN2YwNTcyNSBsZWdhY3ktdHJ1bmsKKzY1ODQgMDdhMzVmZDJlMGExM2VlOTQ1NzBhYmI4OTlkODY3ZTczZWQ1OWM4NSBsZWdhY3ktdHJ1bmsKKzY1ODUgOTAyMTZlOTA3MzQ1ZWIyMGIzNTlkZGQ4NDllMzg4ZjhlOGNjMzczZSBsZWdhY3ktdHJ1bmsKKzY1ODYgNTcyNmJlOGVlNTlmMzBiYjMwODIxNzU0ODlhM2ViZmI1Mzg5MWM4MCBsZWdhY3ktdHJ1bmsKKzY1ODcgYjNhZjMyNWQ3MTJkZTNlOTdhZTA4OTQxMWIwMWE2ZjNhOTBhNjU5NyBsZWdhY3ktdHJ1bmsKKzY1ODggNWQ1MjM5NWY0MGIwYzlhMmI1ZjViOTNkYzMyMDNiODM2MWU2MzA0ZSBsZWdhY3ktdHJ1bmsKKzY1ODkgMjM1ODljMDE2Y2I5YjhjNTE0NDA2ZTRjZWZmMjczMTA4ZDg4MWM4MSBsZWdhY3ktdHJ1bmsKKzY1OTAgMzE5MDM5OGFlNTMzYzI2YTEyMjZmY2JiNzE0YmFlMzIyZGZkZmM0YiBsZWdhY3ktdHJ1bmsKKzY1OTEgM2QxMTc1ODcwMDVhMWRlMTdhYjE5MTk3MTY1ODg4MzExZTc2NDMyOCBsZWdhY3ktdHJ1bmsKKzY1OTIgYTg2NDA3YjNjM2FjNTM5N2RlMDZlYTA3MGQ5ZGJhZWJhMmYwZGQ2ZiBsZWdhY3ktdHJ1bmsKKzY1OTMgNGY4NGNlZTY1YjhjOWU0ZTJiMDVhNGYwNTA1ODIzMThkNDcwY2Q2YSBsZWdhY3ktdHJ1bmsKKzY1OTQgNjUwMDMxZTFlNDE5MGJmNmZkYWY0NzI0ZDQ3MTdjMzJiNmI1NTAxNSBsZWdhY3ktdHJ1bmsKKzY1OTUgMDgzYTdjZDgzNTQ1NTI2ZjQ3NzgyNGJlNDk2Njk0ZDQzM2YxNGU2YSBsZWdhY3ktdHJ1bmsKKzY1OTYgZDMwZjVmMGZkMGUyZDI5ZDVlYTIxNDRhMTJkZDUxNWExNTY0ZWY5NyBsZWdhY3ktdHJ1bmsKKzY1OTcgNzFiNDNkNGI3Y2QwZDM2NzllYTZhZWVlYzRmOGMzZWNjOGYzNzVhZCBsZWdhY3ktdHJ1bmsKKzY1OTggOWU2NTA0NDk0YWM3MzkxOThlODNjOWUyZGNhYTc1MTVhZDcyMTEzNCBsZWdhY3ktdHJ1bmsKKzY1OTkgMGI3M2MzMWJhYjkwOTdlYzJiM2UwZjBkZmYyYTBjNTliMjMzZjczOCBsZWdhY3ktdHJ1bmsKKzY2MDAgYzgwYzUxNTk5OWI5ODMwZGRmNGQyODUxOGVlYTU5MWIyZDIwOTdiZiBsZWdhY3ktdHJ1bmsKKzY2MDEgYTdhOWQ4MzUwNWM0N2RmYzBiMTBkODc3N2YyMDM5NTVkZWMyMjZkNiBsZWdhY3ktdHJ1bmsKKzY2MDIgNWFkZTQwOTZmYjZiODllMzI5MTZlNWY4N2RkZTY4NTZmMWY2NjQzMCBsZWdhY3ktdHJ1bmsKKzY2MDMgZWVkYWE1OTM0MWI5NWQzMTNiMjI2M2M4ZWI5YTc5ZjMxNDhmYWRlZSBsZWdhY3ktdHJ1bmsKKzY2MDQgN2I4NGRhZTk3ZWU4YTk4ODhiYjM0ZWM4ZjZjNWUyOTQzZDVhMGFiMSBsZWdhY3ktdHJ1bmsKKzY2MDUgNmI1ODkzMzRlMGU5ZTZhODM5OWRmMjM0Mjk2ZWYyN2I5ZTgzZTUxYSBsZWdhY3ktdHJ1bmsKKzY2MDYgYzE4ZDUyZTA2MjM4NzAzYzUyNDYyYmYzMGM4NjQyODAxNGY3OWY1MCBsZWdhY3ktdHJ1bmsKKzY2MDcgYTJiYzk0MTU2NGExOWZiYTZiM2MxNDViMmNiYzA0ZTVlNTc2NmQ3YiBsZWdhY3ktdHJ1bmsKKzY2MDggNjllZGM2N2U1YTY4ZjIwZWFkMWQ5ZDk0YmQyOTA2YTVkNmFlOWEyMiBsZWdhY3ktdHJ1bmsKKzY2MDkgMTg5OWI5MTU1M2QxZWYzMjc3NzBlNjBmZmFlYTZkZWMzMzUwNzBkNSBsZWdhY3ktdHJ1bmsKKzY2MTAgMjYyZmQ1ODJlNDRiMzRlODM1M2IwMTQ5MWVmMjVhYmU3ZjMxYjEzMCBsZWdhY3ktdHJ1bmsKKzY2MTEgOGI3NWQ1ZWEyMDdiZDc5ZTNiYzYwYzk1ZDY1ODc3YmE5ZTZhNWIzYSBsZWdhY3ktdHJ1bmsKKzY2MTIgN2QzZDJlZTU0YTJjYjI1YmM0ZThiMDI4NjllZTRiMTlhNmE5YTkyMSBsZWdhY3ktdHJ1bmsKKzY2MTMgMDEwMzQ0YjRhNjE2MjUzZWFkMGRkZjIxYzU1MDNhOWQzYmEyZTQ4MyBsZWdhY3ktdHJ1bmsKKzY2MTQgNWJhYTAwM2JmMzllMGI0ZTI3NjY3OTM5OGQ1NWQyYjU3MThlMGYyMCBsZWdhY3ktdHJ1bmsKKzY2MTUgNmZiMTMxNTAxYmI0NmQ2MzgwZjEyNmI0ZjAzNzViZDUwM2RiMTIxMyBsZWdhY3ktdHJ1bmsKKzY2MTYgNDQ4NzJmMjU1ZjkzNDc0N2I0NDFjZWU4YzM4NjUxYWNmMDAzNzk5YyBsZWdhY3ktdHJ1bmsKKzY2MTcgMzNiZjM4MmMyYjFkOWI1YjQwYzE0OWQzZDQ4YWEyMWZiMWQzZGVkNSBsZWdhY3ktdHJ1bmsKKzY2MTggZWZlYmYxYzRlZGEyOTY1NDA0ODBmNjg3ZmVmOWFjNjkyMDFiOTIxMSBsZWdhY3ktdHJ1bmsKKzY2MTkgOTUxZWQ5YTgzZjU3YTUwZGRhNWY2MTZmMjViYTBlMGQ1MmZkOGU0OCBsZWdhY3ktdHJ1bmsKKzY2MjAgYzRkNjZjNDEwYzgzY2QwMmFlN2NiMjNkOWYxODg0MjhlMWUyYTljNSBsZWdhY3ktdHJ1bmsKKzY2MjEgMzBmMWMwMWYzODY1MGI2OGNjNWVjYzcyM2VmMmY5NDAyMzhkYzRiMSBsZWdhY3ktdHJ1bmsKKzY2MjIgYWI0MzcxNWVmNGVlMjRmOTZlMDk1M2Y0YTI2NDNiY2JhMjZjYTE5YyBsZWdhY3ktdHJ1bmsKKzY2MjMgNDI5OGZmMjIyZDc2M2RiN2Y0OTNhMDNiYjRiODIxZjQ3ZDQyMzMxYyBsZWdhY3ktdHJ1bmsKKzY2MjQgOGEwZDQzYjEzMTI1MWQyZjZiNWI2ZmRlYzE4YTFiOGM3ZjU0YmM3MCBsZWdhY3ktdHJ1bmsKKzY2MjUgNjlhMzNmYTNkYmI4ODExNTA1Y2QwMzEzMmRkYWQ3N2E1ODQ0NDc4MSBsZWdhY3ktdHJ1bmsKKzY2MjYgOTg4MWE1MjE0ZmQyYzUwMTk5MjAyMDMyMjM4Y2M2YmE3OTcwZmNkOCBsZWdhY3ktdHJ1bmsKKzY2MjcgY2MwNmU3MDEyN2ZjMGJjOGM0ZTdkNjVmNGE4NTJlZjc0NTRkNzkyOSBsZWdhY3ktdHJ1bmsKKzY2MjggMDI2MjFiODc3ZWU1ZGYwMTFjZTViODNjOGNlMDcyYjk0NWNhOTA2YiBsZWdhY3ktdHJ1bmsKKzY2MjkgODZhNjJjYTNhMzdiN2FiZjU1OTQxNGViMGRhOGQ1NDYyMWQ3YTg4NSBsZWdhY3ktdHJ1bmsKKzY2MzAgMTQwNTA4YzljNjAzMTgyNWVmODcyMDAwNzA2MjZmYmJlMzY5OGRmYyBsZWdhY3ktdHJ1bmsKKzY2MzAgNDRhODJhYzY1NGE0MTc1NTY5ZGVlZDhlOGE5NGIwY2M4ZWRlZTA4ZCBsZWdhY3ktdHJ1bmsKKzY2MzIgZjNhMGQ1MDI0NmQyNzEzZmQ5YmRiZTYyNTA0ZDA1NDZhYzgyMWFmZSBsZWdhY3ktdHJ1bmsKKzY2MzMgZGY2Mzk4NWMxY2E5NjBmMGUzMGYzY2Q5ZGE1MDI0ZWIzN2JhZTJiYiBsZWdhY3ktdHJ1bmsKKzY2MzQgODExYTdmZjc4M2I3NzI5NmFlMGIzOGRhM2IyMjAwZWUxNDM4MDA4MSBsZWdhY3ktdHJ1bmsKKzY2MzUgYTgxYzNkZTNhYWQ5NWM5NTdkODg5NGNkY2Y5ZTY4YjlmZDQ0YjIwNSBsZWdhY3ktdHJ1bmsKKzY2MzYgOTkyNTAxODJjNDhhZmZkNTc4YTVjZjM2YWJlOGFhMjA3MzM5N2ZiYiBsZWdhY3ktdHJ1bmsKKzY2MzcgNTgyZDQ5MzdkNDk5NzFlNWM4ZDA4NGFmZmM4NDgyMTk3Y2M5YzZhZCBsZWdhY3ktdHJ1bmsKKzY2MzggMWMwNzllMjNmZDNiODk5NDBmZDk1ZWFiMDI5ZmI2N2Q5MTdkYTdhYiBsZWdhY3ktdHJ1bmsKKzY2MzkgYjNmZGU1Mjk0NDBmZDY0ZGU3ZGYyYmY2NGM3NDQzMjE4ZDFmNDMwNyBsZWdhY3ktdHJ1bmsKKzY2NDAgYTcxYTQzZDI0N2IwOWMyMDdjMDJiMzc1MmYyOWM1N2VlNDc0OGU0MSBsZWdhY3ktdHJ1bmsKKzY2NDEgYTk0MDBlZWUwNDBiMThlYjEwNzRiYjQ4OWQ0ZDljZDI4ZmFkNWI2OSBsZWdhY3ktdHJ1bmsKKzY2NDIgNzRiOGFhN2YxMTE0ZmJmM2YyZTI0ZDQ3OWZlMWU2ZWQyOTBhN2RjMyBsZWdhY3ktdHJ1bmsKKzY2NDMgNjg3ODk5YzU2M2UzZGUzODdjNDNkMWYyZTRiNDEyZDFlNTkzOGEzNSBsZWdhY3ktdHJ1bmsKKzY2NDQgM2RjMmU2NzVmMTc4MTcwNzg0YmY5NDNkMDc3MWU5ZjM0ZWViMDUwNyBsZWdhY3ktdHJ1bmsKKzY2NDUgMTg1NWU3Yzc5MWUyM2RjZDIyMzU3MzIwMWVmNTc4OGQ1NGYwZjgzNiBsZWdhY3ktdHJ1bmsKKzY2NDYgODg5OTc4MDJmYjliYjBhMTg5Y2Q0MjVmOGYzMWNlOWQ0MDZjYzMyZiBsZWdhY3ktdHJ1bmsKKzY2NDcgMjM2YWRlYTk3NjBiMDBmMjc0YzgwZGQ4ZWNiM2Q2NWMzZjgwNzkwNyBsZWdhY3ktdHJ1bmsKKzY2NDggZDI0MWJmZGE3Yjc0NmFmNDJlM2Q4ZDFiYTk1NTY3MTU5ZmI2YjBjOCBsZWdhY3ktdHJ1bmsKKzY2NDkgYmI1YjlmZjcyZGUxOTUxOGM2MDBmZTY0NjQwMTVjN2YwNTYwZThjYiBsZWdhY3ktdHJ1bmsKKzY2NTAgMzdkMDA5YjFiZjQ1ZGE5NjdjOTk5NmM5ZTJlM2U0OGY4YWVlMjA2NyBsZWdhY3ktdHJ1bmsKKzY2NTEgMzE1YTUwY2IxNWUzOGQ4OTc4YTE2ZTdiNzVhYjI0MWJhZWMwNzBhNyBsZWdhY3ktdHJ1bmsKKzY2NTIgMjgxNzRhYTM4Yzc2Mjc3YTAwOGQ1NGIzNTZhNTgzYmVmNGViYThkNyBsZWdhY3ktdHJ1bmsKKzY2NTMgMzNmNGE5MWY4NzFiZGJiOWQ2MzU0OGM2OTM2NzFiODc0NDhmNmRjZiBsZWdhY3ktdHJ1bmsKKzY2NTQgN2VkZTAxMmEzNWM1ZWYzNDZiZjc1NTljMGMxY2I3NGM1ODE0M2MyYyBsZWdhY3ktdHJ1bmsKKzY2NTUgM2Q1M2NmYWI4ODIxODhjMzg5ZDg0YjlkNmFmOWNkMDQ5OGMwOGM1NCBsZWdhY3ktdHJ1bmsKKzY2NTYgYTM5MjY0ODRhNjU4M2MzMDdjM2Q1NDk1ODY4Zjk2YTRlNTFhZmRlYiBsZWdhY3ktdHJ1bmsKKzY2NTcgYzM2MzY0NWI3ZWRkMjdiNDliZDE2MzExMmU3MWRhODczODFiMWU1OCBsZWdhY3ktdHJ1bmsKKzY2NTggMmNjYjk5YzkyODU0NDZiYmFiY2NmZTk0NjMwZmUyNjA3MjViMzdiOCBsZWdhY3ktdHJ1bmsKKzY2NTkgYTIzZjRmNDY3MjdiOWJmYTU0NmRiNzA5YTAwZTM1YzEyNWMyZGNkMSBsZWdhY3ktdHJ1bmsKKzY2NjAgNWUxMmU5YjI4ZWFmZjExMjFkYWM4MDE3NDBjN2Q0ZDkzOGNmYmVmNiBsZWdhY3ktdHJ1bmsKKzY2NjEgOGJiZWNmNjgzYTUwNDBmNmFkZDNkMzg5MjM2NTUzZWUwZGEzZDU3MSBsZWdhY3ktdHJ1bmsKKzY2NjIgYzc5NmFlMTE1NzgzMmQyY2NiNWNmMjQ4YmQyYmI3YzFlM2VlZDIxOSBsZWdhY3ktdHJ1bmsKKzY2NjMgMDNmMmMyMWFlY2FmMjZhMDM3OWJkM2ZlZTQxZTE2MjExNGE0ZGNjMCBsZWdhY3ktdHJ1bmsKKzY2NjQgOTRkYTU4MjE0ZDZjNzVmZDgwOTgzNDAxYzk2MzNkZDljODllN2UzZiBsZWdhY3ktdHJ1bmsKKzY2NjUgZTYxMzE4YzNhZDFlODdlMTY0MjI5NDA2ZjA4ZDJjMTE3NjJlODNjMSBsZWdhY3ktdHJ1bmsKKzY2NjYgZDIzZjc4NzMwZTAwZDEzZGZmMWNhZjcwYjFiN2QxNjUzNTg1YzNjMyBsZWdhY3ktdHJ1bmsKKzY2NjcgZjAyNWQ4YTM3N2I1NzAwMThkODE5ZGU0NzE1MzY1ZGVhNTY3NjcyNiBsZWdhY3ktdHJ1bmsKKzY2NjggZGZiZDZlMDBkZDM4M2QyZjNiMGVjNWY4NGQyZWQ2YzdkOTdiNTBlNiBsZWdhY3ktdHJ1bmsKKzY2NjkgZTNmNmFkYTI4ZWQwOTVlN2QwMGQ5Y2JkYzUxMDI1ODJjOGU1YzYyOCBsZWdhY3ktdHJ1bmsKKzY2NzAgNjcyMDZiYmQ1YmI1NDhiZDYwZGI2OWEyYjQ5NGExYTkzNzM1MWQ1NyBsZWdhY3ktdHJ1bmsKKzY2NzEgYjcwYmFiYTFjNzg5MzJjMjc5NjkzNDg4OTQ2YTg4N2NmODMxZGUzNiBsZWdhY3ktdHJ1bmsKKzY2NzIgMzgzODNiNjNmNDE1OGY5NDRlNzY4YTMyZGI4ZTFkZDUxMDkwNGE3MiBsZWdhY3ktdHJ1bmsKKzY2NzMgNmZiNmUwMWUyYmExNDQzNmRlMGQ4NmQxYThhNWMzY2Q4MGYxZGI4ZSBsZWdhY3ktdHJ1bmsKKzY2NzQgMjJhYWM4MWM3NTYwYzFhODk2MDMzM2YxYjExNDgwOTJmZjBlNDk1MCBsZWdhY3ktdHJ1bmsKKzY2NzUgYzYyNTljZjJjNTgxNDNkYjYxMDIzMDVkNTIxN2RlNGFjZDc1MWVmNiBsZWdhY3ktdHJ1bmsKKzY2NzYgMzUwZDBkZTA3NzM5YzM3NDcxZmU5MjlmOTY5ODkzOTFkYWI4MGI1MCBsZWdhY3ktdHJ1bmsKKzY2NzcgZDFiNDc0M2E5YTYwNTNlOThiNDA1NzA5YmNhZjk4NjQ1ZTQ4ZjcwNiBsZWdhY3ktdHJ1bmsKKzY2NzggMzEyNmY4YTE0NmE2NmY0YTc2Y2IwNGQzODhkZTVmNzliMGJiYWFjYyBsZWdhY3ktdHJ1bmsKKzY2NzkgYzc5OTQwMDgzNzhkOWRlNWEwYmYwNGEzNzZkMzQ5ZGVhM2VlMWE1MiBsZWdhY3ktdHJ1bmsKKzY2ODAgNDJlYzIzYzUwMDE4NmQ1YWJlMmRiY2MyNjFjYjU3M2Q0NTU4YjIyZSBsZWdhY3ktdHJ1bmsKKzY2ODEgNjNhZjI1NzRmNzFmNmM0MTcyYjY3YmQ1ODliYWNiODljZjQ2YWJmMSBsZWdhY3ktdHJ1bmsKKzY2ODIgMWMwMDY0MDA2OWY4YTU0MTQ1NmYzMWU5Y2IzZmJiODVkOTM2MjIwMSBsZWdhY3ktdHJ1bmsKKzY2ODMgM2ZkZTlkMmEzOWIwYzlhMjExY2JjYTg0YmYzODQ2NjA2NjkyYTNlMSBsZWdhY3ktdHJ1bmsKKzY2ODQgNjBmYzAxZDZmNzI3MGNjMzM2OGRiZjFhNjEyMjBmZWI1ODQ3YTg1MiBsZWdhY3ktdHJ1bmsKKzY2ODUgNGE5M2NjN2U3ZmI2ZjNlNWI3MGZmMDg4Y2QyMWZiNDgzYjFlZTliZiBsZWdhY3ktdHJ1bmsKKzY2ODYgZDcwMThiYzU1ODRlMGE5Yzg4N2JlMTA5YjBhNDI0NTU5MWM2ZDU3MiBsZWdhY3ktdHJ1bmsKKzY2ODcgZTMxYjRkZWZhZDViNDVjZGY0YzYwMDQ5M2Q3MDY3YTAyMjYxYTFlMSBsZWdhY3ktdHJ1bmsKKzY2ODggNjg4ZDU2NmNiMTViMDc5ZGE5ZDlhNjdiNmUwY2JjZTU2N2VlYzMzNSBsZWdhY3ktdHJ1bmsKKzY2ODkgMDQxMGVkMzgwOGVlYjhjMjU0MWFhOTU1NDEzMzg3ZDYwYTcxNGE5ZiBsZWdhY3ktdHJ1bmsKKzY2OTAgMGE1ZjAxZDQ3MDFjMDk5M2IyOTJjZDVhMjFjOTFiMjkxODQzZDYyMCBsZWdhY3ktdHJ1bmsKKzY2OTEgYzY2NzliMWM2Y2ZjMWI0ZjVjNDZjNTI0MWE4MzYyYjQ0OTExYjM5YiBsZWdhY3ktdHJ1bmsKKzY2OTIgOWUwZTg0MTdhOThhZWFkYWI5YzJmZWI4Njg2ZTQyZTNlYzVjY2Y3NyBsZWdhY3ktdHJ1bmsKKzY2OTMgOWJjZmIwMzRiOTYzZDJjN2NiNTIxMzc0MWY5NDlmZjNlNGE0NDUyOSBsZWdhY3ktdHJ1bmsKKzY2OTQgNDhiMmQ3YTQ1MzFkZjhiODI3ODBmMzBjNzg1NmRiMjYzYmVmMTM5OSBsZWdhY3ktdHJ1bmsKKzY2OTUgNjY5MTNjYTdlYzQ3MGFlYzk1MzNmZjJkMTY5YmQ4YjhmNjVhNDIyOCBsZWdhY3ktdHJ1bmsKKzY2OTYgMWQxZjBjNjQ3ZTc3YjEyMGY0ZmY4Y2IyMTI0ZWM5OTQxNGI2ZTU3MiBsZWdhY3ktdHJ1bmsKKzY2OTcgMTgwYzFkM2RhYzQxMTExZjczMzljOWYwZTIxMTE4OTNjZjBiZjVkNyBsZWdhY3ktdHJ1bmsKKzY2OTggM2ZlZWNhZDI5NmY0MGY0ZWQ4ZDkwMDQ0ZTg2ZTQwYTlhMTNhNWNiZSBsZWdhY3ktdHJ1bmsKKzY2OTkgYjNhZTBjZjJhMDZkNzEzMjRmYTg5OTgyNzg3NDBhMThlYmRkZWMwYyBsZWdhY3ktdHJ1bmsKKzY3MDAgNGZhY2FlMDBiZGQ2MTI0MDY0MmVlMGVkZmJmMWE4ZThhODZjMjNkYyBsZWdhY3ktdHJ1bmsKKzY3MDEgNTczZWQ1ZTM4NzliNjk5OTk4YWVkODgxMTQyZjRjMzQ0ODNiOGZiOSBsZWdhY3ktdHJ1bmsKKzY3MDIgODQ0NDRlYTNmNWY2OWQ2MGY2ZDg0N2FhYTk2NGNmYzYyYjI0Y2NiNyBsZWdhY3ktdHJ1bmsKKzY3MDMgMWY2OTJjM2YxZDMyZDQzOWYyOTJkMjBhYTNlZmVkNjY1Y2YxYTMxMCBsZWdhY3ktdHJ1bmsKKzY3MDQgNDFhNTJhYjI2M2RhYTI1MDdmZTMzMTUxOTIyY2U5NTAwMTA4ZjViZSBsZWdhY3ktdHJ1bmsKKzY3MDUgNWMzODdhYTAzNzA4NzMzN2ZiMjI5YTdlNTRhYjVjNDViOTUyYmRlNSBsZWdhY3ktdHJ1bmsKKzY3MDYgODg2YzBmNzc1Yzk3NmUyY2NkYjlmZjQ2ZDc0YjY2YTU5MDU2Y2Y5MSBsZWdhY3ktdHJ1bmsKKzY3MDcgMTA5OTE1OWVjODIxOWUwZjk2ZDU2OGQyMDJkMTE2OGQyMWJkNThkMCBsZWdhY3ktdHJ1bmsKKzY3MDggN2JmNzFhODM5NjYxYmMyNjAwNmFjODMwMzhlZDExZDM2MjBkMGVlOSBsZWdhY3ktdHJ1bmsKKzY3MDkgOGYyOTFkYzhmYTliNDY5ZTYwZjI1NjE3OTIwYmUzNDI0NmYxZTY4YiBsZWdhY3ktdHJ1bmsKKzY3MTAgNzgwZmMyYjE2NzRkNzcyYjg4OTgxNWY2Y2I3MmQzZGJjYjRmNjM4YyBsZWdhY3ktdHJ1bmsKKzY3MTEgY2I0OTAwZmFiNzY0MjhhZjhhZTU1ZTMxOTllOTQ2OTUyNWRlYzFjNCBsZWdhY3ktdHJ1bmsKKzY3MTIgNmM4NmQ5MTM2YzA5MGQ0ZmQzNDUzZmU5MjI2MGEzZTEyZmU3MGYyNyBsZWdhY3ktdHJ1bmsKKzY3MTMgNjcwMDU1OGEzMmZiMTMzYzkzOTFkNDA3OWVhZjE5Yjc0NzZlNDdkNCBsZWdhY3ktdHJ1bmsKKzY3MTQgMjFlNWI5NGI5OWI4MGJkZjhlNmNjZWNiMjI5OTdmYTNjYzkxM2MyNSBsZWdhY3ktdHJ1bmsKKzY3MTUgYzYyZDMyYzVmZjNkZWNlZTNmZWFhNTRjNjI0ODBlNzk1MTAwOTRlMyBsZWdhY3ktdHJ1bmsKKzY3MTYgMzU0NWFiNDNhNzJhMjE5ZjBmYmNlMzI1ZTJkZjE4Nzc2N2EzZTJhOCBsZWdhY3ktdHJ1bmsKKzY3MTcgMWNlMDBjZGMwMDNkMjU1ZThiMDhiNTk4YmM3MDkyYjUyM2NkMDc5MCBsZWdhY3ktdHJ1bmsKKzY3MTggMGZhZTM1M2IwNGNhMmQxYTUzNDE2NzhhNmVkYjE5YmUyZTI5MDdjNiBsZWdhY3ktdHJ1bmsKKzY3MTkgNDNlMmU1OTJhMDAxOTg1MTIwZGE1MDg5ZWRlMTRhMDZmZmYyMDhjMyBsZWdhY3ktdHJ1bmsKKzY3MjAgYzZlZjhiN2IyNmViYzEyMDUyM2Y4ODEwNWNlMjkzMzVhZGYyMjU2YiBsZWdhY3ktdHJ1bmsKKzY3MjEgZGEzOGNkNjE2NDEyN2NjZGJhNzk2MDk0NDYxYTk1NGU5NmI0MDliMiBsZWdhY3ktdHJ1bmsKKzY3MjIgNWY2NzJhNTEyZGM0MWZkYjgwNzkxNzYxMmExYThhZjAzOTk3OGUyYSBsZWdhY3ktdHJ1bmsKKzY3MjMgMGNmNjcxNDUyZmM1NDNkNDI2ZDUzZDZjODNjNDM3ZDNiNDk5MjhmZSBsZWdhY3ktdHJ1bmsKKzY3MjQgNDQ3MGY3ZmYwYzIzOWM4OTRjYjliNTE4ODEyOTgyZjQ3YmQwZmQ4NiBsZWdhY3ktdHJ1bmsKKzY3MjUgYWMzZmJiNjc3MWY1YzJkYjM5YmI2M2EyYjZhMjAyOTYxZDdhMWE3MiBsZWdhY3ktdHJ1bmsKKzY3MjYgNmI2YzVkMTIxMzBjZDk5MGVkYTgwNjU2MGRmNmQ0YjQ4OTViYTYzNSBsZWdhY3ktdHJ1bmsKKzY3MjcgMDJhMDMyMWY5NDY4YmVhYzdhZGRlYTk2NmM1YjBmZWUwMjhjZmMyYSBsZWdhY3ktdHJ1bmsKKzY3MjggMDVhZTU3MmMxYWM1NjZjM2U4MzUwOTYzMWU0Y2IwN2NlZDA5OWYzNSBsZWdhY3ktdHJ1bmsKKzY3MjkgNjQ3MDRkMzZiMTk4MWU4MjNmY2YwZmE1ZTg4NTcyZmIwNjAzNDA5OSBsZWdhY3ktdHJ1bmsKKzY3MzAgZTIyNWU3MGZkNjU3MWZhNjQ3ZDQzYjBiYzQyM2NkYWNmZThkZTgwNiBsZWdhY3ktdHJ1bmsKKzY3MzEgMjM5YjEwMDgxMTc2M2QzNDE5OGQxMDE5NWRkOWIxMzRhZjBhZmViZCBsZWdhY3ktdHJ1bmsKKzY3MzIgYjdlN2ViNWVmODIwYWE4Nzc5N2ExNDg5MDVhZDVjMGU5MWZhMzMxZCBsZWdhY3ktdHJ1bmsKKzY3MzMgZGJiNzYwOTVhZGVlMDk1OTkwMzM3YmVlNmJkOGRjYmJhYTc3YTkzNCBsZWdhY3ktdHJ1bmsKKzY3MzQgNTE2ZGRmNTAxOTRkMzY4MDZlZTlmYzllZGZiYjVmZmFmMTVkNWQzNSBsZWdhY3ktdHJ1bmsKKzY3MzUgNTQ0MjE3ZDU0OGE1ZjFkNTk0OTZlZGQwMjk0ZjU1MzUyNzMwZjFhYyBsZWdhY3ktdHJ1bmsKKzY3MzYgNjdkMjU4ZWRkM2Q5OWJjYjZmYTEzZWM4ODZiNGVlN2MyMzg2ZTk3MCBsZWdhY3ktdHJ1bmsKKzY3MzcgN2I1NGEzY2VkYmUwYzY0NGM3MDVjYWNiNjY2ZjZmODA4ZWI3YmE3NCBsZWdhY3ktdHJ1bmsKKzY3MzggMjUzMDFiOWVhMGNjZGU5ZDZmMjdhMjdiZDdjOTAyYjRlY2Q4NTRjNCBsZWdhY3ktdHJ1bmsKKzY3MzkgODg5MmRhOTU1NGE1YmQxMWZlOGJjN2Q2MDRlNGZiMjY3ZjdjODQ3YyBsZWdhY3ktdHJ1bmsKKzY3NDAgZjBlODIxMjliZDNlYTM2MTdhMmYxZjVhNzYxNmM5MmU0NzRkODNhOCBsZWdhY3ktdHJ1bmsKKzY3NDEgNjA4MjUwMWVjYjJlNTg2YzIwMDUwYmIzOTNjNGU2NWIwZjE1ODFlMyBsZWdhY3ktdHJ1bmsKKzY3NDIgMmU4N2I4MTE3NmY5ZDMyNWE1NjkzODMzMDRlMzQ3MWU1NGVkOTkyNCBsZWdhY3ktdHJ1bmsKKzY3NDMgMzhjOGExY2NjMTZjNjBlMDM3YWU4ZDBlYWI3YzVkZTRmYTc0NTlkNyBsZWdhY3ktdHJ1bmsKKzY3NDQgZWY1MWU0YTJlNzk5NDQ5ZjNmNWQ5Y2RmYmZhMzc0NjU5ZDVhOWQ0OCBsZWdhY3ktdHJ1bmsKKzY3NDUgNjUxMjBlOTFiMDYxZWE3ZGYxYTZmNjgxYzM2N2E0ODRlMGZkZjhhNCBsZWdhY3ktdHJ1bmsKKzY3NDYgZTc4OTAzMzZmMTA3MDRmMzM0MGI4OGE2MDlkNTBjZWJjMWIxOGM2YSBsZWdhY3ktdHJ1bmsKKzY3NDcgYzQ4NzY0YmY2MmQxZWQwNmE3M2MxMGYzMGRkNjQxNDJmZjcxOGJmZCBsZWdhY3ktdHJ1bmsKKzY3NDggMzc5OWI3MTE2MzFiMjVlYzY0NmVlODc3ODNjMGIzNWRhNGM2MjU1ZiBsZWdhY3ktdHJ1bmsKKzY3NDkgY2I4NDFmMWIwMjJlYTIyNGNjN2M2ZjVjY2Q5NjY2MDdhZmI2NTVmMSBsZWdhY3ktdHJ1bmsKKzY3NTAgYWUxNzhmMTUwNDAzMDBjNjkwYTU2ZDIzOTNhNzdhNjY1MGFmODU0NSBsZWdhY3ktdHJ1bmsKKzY3NTEgYmVmZGYwZGMwOTZiMDhlZWM1MmYzZThiZjYwYmJiYWY0ZGFjNTJhYSBsZWdhY3ktdHJ1bmsKKzY3NTIgZjZlODI0YjI3MDMyMzVkOGMzNTliMzIxNjAwOTJmZDIzZDc4YjFmNCBsZWdhY3ktdHJ1bmsKKzY3NTMgOTRiNzYxZmFjNGQ3YmIzYzhhY2MzYzliZTllMTBlZTFjYjgwZmM4MCBsZWdhY3ktdHJ1bmsKKzY3NTQgNTY5MDk3ODFhNzQxYjEwNTA1MjZiNTIyNmUyZjY0ZDlkZGVlNDkzZSBsZWdhY3ktdHJ1bmsKKzY3NTUgNGJkYWZhNzAzYTA0YjVjN2I2YmU2NDlkN2U1ZmZlNWVkNGFlMDU1MSBsZWdhY3ktdHJ1bmsKKzY3NTYgZGFmMTJmNjRkNWFhM2Q1MTg1MjAwNGUzYjQ1OTAxYWRlYWE3NDc5NCBsZWdhY3ktdHJ1bmsKKzY3NTcgODM5ZjcyNjEwYWUxZjhiZTFiYTJlMzE3MjNiMzY3ZTg3N2QzZmIzZiBsZWdhY3ktdHJ1bmsKKzY3NTggZTIxZDNlN2FlYTg3MTk2YzQzMTk2NWZmMzNjMTIwMjhlNzIzODY1NSBsZWdhY3ktdHJ1bmsKKzY3NTkgYjY5ZjRiODM4OTJlNjg4NWI2MDg5ZGNhMGNlNzYwY2NmNGI1MTY4NiBsZWdhY3ktdHJ1bmsKKzY3NjAgZGIzNWQyYjkzZWJhMGY5OTY5ZjBiMzJhODVmMTJhZDE4Mzc3YmViNCBsZWdhY3ktdHJ1bmsKKzY3NjEgZjJmNWNkN2NiNWI1NmIzYTZlYmEzM2EyM2Q1MDhkZTE0NTgxOGY4NyBsZWdhY3ktdHJ1bmsKKzY3NjIgNDNhZTA0NWFhMTBlMTA3YzQ5YjVhZDUwY2IyYTdjOGQ2ZDlhZDk5YSBsZWdhY3ktdHJ1bmsKKzY3NjMgMDAzNmRjZjI4NDAyM2E5YmQ4NjMyMzI2ZmNjYzg0MmEwMTBjYTE4MSBsZWdhY3ktdHJ1bmsKKzY3NjQgOWM2ZWFiMGNmNTQyZGUxYjE0MDVjMTA1ZWUzYmJlYWViNzk0ZDcyOSBsZWdhY3ktdHJ1bmsKKzY3NjUgMTQyN2Q2MWYxMzA3Mjk5ZjgyNDNhNDFjMTI5YTViYzY1OWY2Y2NlNyBsZWdhY3ktdHJ1bmsKKzY3NjYgYWJkMGI5ZmY2NzU5MmQxMDQ3NzM2YTdlZWY1Y2Q5ZWJjOTJiYTZjNyBsZWdhY3ktdHJ1bmsKKzY3NjcgNjliYmMyMWY1NWNmMmUzNGU0NzM4YWE1MzI0ZDIzNjM3MDBlYzRkZiBsZWdhY3ktdHJ1bmsKKzY3NjggNTIwZGRjYjNkNWQ2OGUyN2IwNjc0MTI4YWZhODY1MWE4ODA1NDQ0NyBsZWdhY3ktdHJ1bmsKKzY3NjkgMDA4YjlmYzU2NWJmZGMyNzI4NGFhNjMzNTUzMGJlMGUyMzU3ZmM1MyBsZWdhY3ktdHJ1bmsKKzY3NzAgNzVkNzU3MzJhOWU0YmU4ZDViNWIxMmMxOTI4YWY4YTNiMWJjNTQ0YyBsZWdhY3ktdHJ1bmsKKzY3NzEgY2Y5YTk3YmZjMDIzMzllMDNlNGI0MDYwYjk4ZTZmNGQzN2U0ODllMSBsZWdhY3ktdHJ1bmsKKzY3NzIgNmY3MDkwYTgyNjQ1OWQxYjUzZGZiZmRlYTFhNzkyNzI0ODIyN2ViMCBsZWdhY3ktdHJ1bmsKKzY3NzMgZWIxZWQ3NDM5NzJjNDI2YThjZGQzZDgwM2JmNmNiYTcwYTYyODQ1NSBsZWdhY3ktdHJ1bmsKKzY3NzQgZTA1ZGE4MDQzYjUwMGI0MTUzNGRlYmM3MjVlMmZjZGJjMmI5NWZmNiBsZWdhY3ktdHJ1bmsKKzY3NzUgODY4MDYzMTYxNjY1OGU1ZWQ1ZWE0M2I3MmI5NTIyMDdhM2E5N2VjZiBsZWdhY3ktdHJ1bmsKKzY3NzYgZmM0ZjEyODlmZTZjZjZmZDk0NTZkMTQ2NzAwZmMyNGIyYmQyZTU1MCBsZWdhY3ktdHJ1bmsKKzY3NzcgMzg4ZjljMjIyMGNlNGY2MmMyYTNhN2M2YzQxNzczODE1MzkwM2Y2OCBsZWdhY3ktdHJ1bmsKKzY3NzggOTVjMzE5MzFiNzZhZjcwODM3YTNhNDE0ZjE4ZGI0MGIwMGExZmNmNSBsZWdhY3ktdHJ1bmsKKzY3NzkgNzgwOWI2YjRmZmQ5MzUzODY2NmIxM2Y3ZjQzNDllMDQ4ZGJkODhkMiBsZWdhY3ktdHJ1bmsKKzY3ODAgZTlmNDhkN2U3M2IxY2FjOWEzZTE1Y2QxY2ZmMGFjZTFiODYyZDk1NCBsZWdhY3ktdHJ1bmsKKzY3ODEgMmVlYzM1ZTJhZmZmNzNmMjllNWQ0ZWZlOTQ4YTgzZjcxNTc2YTk5YyBsZWdhY3ktdHJ1bmsKKzY3ODIgMWEwZjM0YzE4MTYzY2MwNDk1Y2JlYTEzNDE0NDc0YWY2YWZlYzUzZSBsZWdhY3ktdHJ1bmsKKzY3ODMgZWNiZWI0NDVmNjJlNTA2ZjhmNzU0ZjEzYzM2NDAzMGYyNWUzZjc4YSBsZWdhY3ktdHJ1bmsKKzY3ODQgM2Y2ZDI2MTY1NGNhMmU5ZGI5MzkxNTYyOGFjNGExNDNmYmQyYmY2YiBsZWdhY3ktdHJ1bmsKKzY3ODUgYzk3ZmZkMmViZDUzOTY0MTBkZTlhNzNmYTY3N2E5MzVhZTM2MWY2YiBsZWdhY3ktdHJ1bmsKKzY3ODYgOTM3ZjY5ZmQ0M2ZlYTVlNzhiMTYyMTJiNzk0MmE5OGNiZTcwZGEyMyBsZWdhY3ktdHJ1bmsKKzY3ODcgOTg0N2RlOTQwNzkwMjk5ZmNlY2YyZDFiOTAxYzY5OTE1OTAwNjJkZCBsZWdhY3ktdHJ1bmsKKzY3ODggM2IzODcwYjlhY2YyNDM5NzY3YWY4NTVlMjk5ZjlmOTA0YTAwY2NmOCBsZWdhY3ktdHJ1bmsKKzY3ODkgNDZkNzM2ZmI5ZGEzMjI4MmQ1MjhhYWVjYTU5YjBlNWQwZTRkMTIxMyBsZWdhY3ktdHJ1bmsKKzY3OTAgNzcyODI4YzFiMWY2ODc0MTlhNTIxN2FjZDE1NWFmMWNmMTBmZDRmZCBsZWdhY3ktdHJ1bmsKKzY3OTEgMGY1MWYxZDcwZDQ1MjZmY2FhOTllZWU2M2I2M2JjZTUwNDcyNjBjNCBsZWdhY3ktdHJ1bmsKKzY3OTIgOTdkMzY1MmU1N2QzNWMyM2ExZGYyZDUwMzRkNjMxNDM2ZmZlNzcyNyBsZWdhY3ktdHJ1bmsKKzY3OTMgOTcxMzM5OTZlMjJmMGYyYTIwNWExNWM5ZGEzOWEyMmNjNDE5NWFjYiBsZWdhY3ktdHJ1bmsKKzY3OTQgZDU4NzE5NmY5YmVmYTVlYTZlZWVlYTIxYTRjN2Y4YzdjMzAyYWExMyBsZWdhY3ktdHJ1bmsKKzY3OTUgOWQ0NDUwMzUwNDUxZjFlYmRlN2Q2YjZjMDE4Y2ZiMzM4MDVmZTFkZSBsZWdhY3ktdHJ1bmsKKzY3OTYgNzczOTdkNTFmODkyMDRkZWFhZTRkNzhhMGU1ZWQxZDRlN2U4NmI1MyBsZWdhY3ktdHJ1bmsKKzY3OTcgMzE0YzEzNDQ1YTAyZGYwMDE0Y2YxZDM4YjU5YTIxMWM5Mzk5ZWNlMCBsZWdhY3ktdHJ1bmsKKzY3OTggMWFmY2QxY2QzMzNiNTdjM2ZmMTA0N2I5ZDU3ZjE3MTBjOTZjZGY3ZiBsZWdhY3ktdHJ1bmsKKzY3OTkgMTJjMzg2NWFlYWEwMzYzNTA2OTk0ZTQ5OThiNzY1OGZmNmM4MmM5YyBsZWdhY3ktdHJ1bmsKKzY4MDAgMDI3ZmYxNTU0ZTY2MmJmZjJjYjNkYjlhMmQ4ZDMyNWJiMDgwMjY3ZSBsZWdhY3ktdHJ1bmsKKzY4MDEgZmI3MzBmYjEzZmFiNWNhZTY3NDk1ZjY3YzRjMDAyM2M5OWJmOTQwMiBsZWdhY3ktdHJ1bmsKKzY4MDIgYjAzYWIzNWQ1MmRmOTc3YzliZDczYWVhMmI1NGYyMGFmZjdhNzQzOSBsZWdhY3ktdHJ1bmsKKzY4MDMgYTI0MGJlNWJlNmI0YzQ2M2E0NzIxNWI4OTQwMjZiZWNkYzUwYjdlNSBsZWdhY3ktdHJ1bmsKKzY4MDQgOTA1ZjdiNGIxMzIzODcwN2ZlN2JiOTU1OWQwZGExZDE2ZDI1ZTcwNCBsZWdhY3ktdHJ1bmsKKzY4MDUgYzJlYjM4YjY3NGYzMDk4OTI0OGM2NTRkYWQ4NzhmNjM1MDllZDQyNCBsZWdhY3ktdHJ1bmsKKzY4MDYgZDA0NDY5ZDAyNTZjZThlZjFiYjA0MWFlZTY0Y2NhZTBmYzkxNzk2MiBsZWdhY3ktdHJ1bmsKKzY4MDcgZWUyMDI2MjE3MzQ5OWM0ZTVjNGYxMjU1YzE4ZWNjOTFkMTZhMmY0YSBsZWdhY3ktdHJ1bmsKKzY4MDggZjM3Y2JmYWE3MzI4MTI5YTBkOGRmMjkyNDgyMDkwZDc1MmQ1OGRiMiBsZWdhY3ktdHJ1bmsKKzY4MDkgMzY2ZDcyZjEyNzk0YzU2OTU3YmM3NWU0MzhjOWY3MjVhYzNkMTU0NSBsZWdhY3ktdHJ1bmsKKzY4MTAgNGRiZmQ0ZGZlMjgxYzkxMjU1MmNiM2FlNzNkZjA0MDk5OGVjOGQ1ZCBsZWdhY3ktdHJ1bmsKKzY4MTEgMzc2ODIyYzY1ODEwODQzZWY4NjEyZGRkMjNiYzA2MjRjNTIyMzI2OCBsZWdhY3ktdHJ1bmsKKzY4MTIgYWYxNjg0ZmM5YzYzMjRkOGQyNDFlMjJiNzgxYmU2NmZhYTk0M2MyZiBsZWdhY3ktdHJ1bmsKKzY4MTMgZTdiYTA5MmMzY2YzYzcxNTNiNWQ5YjQyZDdhMjM3YjFlNGZhZWZhYyBsZWdhY3ktdHJ1bmsKKzY4MTQgMmRmNjJkYjM2NmI3NjgzMDJhYjM0NDg3ZDJiNDYzZDhmMTZmMDY1YiBsZWdhY3ktdHJ1bmsKKzY4MTUgNWE3NTUxMjM2MDYzNWFlMzM2NzE5MGZlMGVkZGVlYTQzNGJmYzQzOCBsZWdhY3ktdHJ1bmsKKzY4MTYgODk3Mjk3YWJlNWI0MDVjMTYyYjFkMThlM2FmYTZlMmMyM2M1OTFhZCBsZWdhY3ktdHJ1bmsKKzY4MTcgNGJiZGU4MDRiNjk3ODRiNGIwZjBjNThjNzA1MDUzZmQ4NjEzZDYwMyBsZWdhY3ktdHJ1bmsKKzY4MTggNWNiZGJhNGQyZTE1MjVkOTQyMGFlYTk3OWExMzRjZjBhYzA4NzI1ZCBsZWdhY3ktdHJ1bmsKKzY4MTkgNGZiODg0YmYxNDdjYzFjMWI2M2M1NTBkNTBiYTllZGMyODI3YTRjOSBsZWdhY3ktdHJ1bmsKKzY4MjAgN2I2MDBlNzNmZDJhOGEwZmZkMTgyODA5M2Y2YjRjYTlhMDQxMzNhYyBsZWdhY3ktdHJ1bmsKKzY4MjEgYTVjMjlhY2NjNDM4ZTgwYmUyMDE0ODEwMjVhZGZjMGMwOWE0NzBhMSBsZWdhY3ktdHJ1bmsKKzY4MjIgODUyY2EyM2M4MGNjZTAwZjUxMmE3OTczNzhmMWJkNWJmZGY1YTA2ZiBsZWdhY3ktdHJ1bmsKKzY4MjMgOTgzZGY0MzY0NTk1NzBmZDg1NjFiYWVmNzZhMGFhMjU4NjQ1NWJjNCBsZWdhY3ktdHJ1bmsKKzY4MjQgYTIwOTkxOTQ2Mjg1MDNhYmU3NmQ3MGM0N2JhMjMwOTU4YmMwNjZlNSBsZWdhY3ktdHJ1bmsKKzY4MjUgMDJhMjRlNDhiMzc2ZTU2YjQ5YmNlOGZmMTk4ZDczMjA3MWNlMDdkYSBsZWdhY3ktdHJ1bmsKKzY4MjYgNmVjMGNhZWFmODIzMGQ4ZWZiNjEwN2I0YzRiZDgwNTI1MWRjZDgwNyBsZWdhY3ktdHJ1bmsKKzY4MjcgYWFjOGE5OWExZjljNGZhMzA1ZDBiMmNlNjM0MGMxMTZmMjQ4MjhkYSBsZWdhY3ktdHJ1bmsKKzY4MjggNjkyNTA3MDM5NTNhMmE3MTA3MmYwOTZiYzg2MmY5NjVlOWVkZjkyNyBsZWdhY3ktdHJ1bmsKKzY4MjkgZWI0NTVkOTliYTk4MjI2ZmI4YWM0ZGFkMGFiM2ZiZDljZmZhMjlmYSBsZWdhY3ktdHJ1bmsKKzY4MzAgOTVmZjg5ZDgzZDYzOTdhODRlZDgxYzEwMjUwMGJlM2U5ZDRhNTZlYiBsZWdhY3ktdHJ1bmsKKzY4MzEgMjkxMzU5NzQ0M2I5MDBlMDBiNWUxNTkxMGRmNDc2MjU4MDFkMzMzMSBsZWdhY3ktdHJ1bmsKKzY4MzIgMDIxMmI0ODA5NDRiYzIwMzk3ZDY4OWQ5ODE4ODVjMjE1MDEwZTIxMCBsZWdhY3ktdHJ1bmsKKzY4MzMgNGUwMGU1ZGFhNjEyOGQyOGIwNzUyZmNhMTI4ZTM5M2VkYTMxZWI0YiBsZWdhY3ktdHJ1bmsKKzY4MzQgZGJmMjczN2QyYzgxY2EzZTNjZjM5ZGIzNDhhZDM4NjQ3OGE4ZDBhZSBsZWdhY3ktdHJ1bmsKKzY4MzUgYWY3NTQ5NjFhY2M1MjRjOTEwMDUwM2Q5YjczZTcwYTQyNmFiNDVkNCBsZWdhY3ktdHJ1bmsKKzY4MzYgMzgzNjExYmRhOWU2ZGVlODlhYmRhNTU0MThiNjM1MmYwYTkzM2UxMiBsZWdhY3ktdHJ1bmsKKzY4MzcgN2IxZjZlNWU5Mjk0NjMwYzRiMGM0YmQyNjgzYTU1MTE3MTMyN2ViOSBsZWdhY3ktdHJ1bmsKKzY4MzggMzQxODJhNjQwOGUwNGY5NWIwMWQyYjJiOWY4YjJmMGFhY2Y5NWE1YiBsZWdhY3ktdHJ1bmsKKzY4MzkgOTEzZmM5ZmY0M2FjMTIxYTk3MjA5YThjNjQyMGRlMGMyOGViYjk3MCBsZWdhY3ktdHJ1bmsKKzY4NDAgM2ViNzRkZjY3MmEzOTk3MzAxZWFmYjAxNjIzMTRkODFjMjUzYWNhYiBsZWdhY3ktdHJ1bmsKKzY4NDEgMzE1YTc5MTk5ZmM4ZWQ3Y2ZkOWFjNGFlOTFmMWFjYWM5ZmEzODllYyBsZWdhY3ktdHJ1bmsKKzY4NDIgYTA1ZjhkOGM2NzY4ZjgxY2YyMjViMzBlMmQyYWEwMzRjNTI4N2UzZCBsZWdhY3ktdHJ1bmsKKzY4NDMgM2U3N2Q2NjM3YTJiOTBkMzJhNjk3NDBlZDA5MjE3MjgyM2YyZjI2ZiBsZWdhY3ktdHJ1bmsKKzY4NDQgYTcwNjkyYTZkOGNjZjU4ODBmMmU4NDZjOTFhOTM2MWYxZGNjOTIwYSBsZWdhY3ktdHJ1bmsKKzY4NDUgYzI3N2VlOGM2NjljZGI4MjBhOWQzYmJlMjNkNjAzNWQ1MjZkZmFlYiBsZWdhY3ktdHJ1bmsKKzY4NDYgY2JkNDM0YjQ2YzFhNjNmMzIyNGY4YTgxMzJhMGNhYmZhOTA3ZDZjNSBsZWdhY3ktdHJ1bmsKKzY4NDcgOThlYTgwMDUxZGJjOTFkMDk3MDJiNWRjMjRiMjM3MDA0ODVjNzAyMyBsZWdhY3ktdHJ1bmsKKzY4NDggNDYxNDBmNTg1NmQ5MGEwZWE4NDZjZTk4ZTFhN2JmZTIwMGExYTdiMCBsZWdhY3ktdHJ1bmsKKzY4NDkgMzFjN2Q4ZjQ1YWViMDg1NTc4ODNiZmU3Y2Y2NzE5MDVkMGQyYTUwNCBsZWdhY3ktdHJ1bmsKKzY4NTAgZDRmNjRmYzQyZDg0NDkwNTRmMzMxN2VkNzQ5MjA2OWEzNDQ2M2Y1YSBsZWdhY3ktdHJ1bmsKKzY4NTEgNWY4YTY1M2IxNzc5YTUwZGU3ZWNjY2VjMDQ4ZDkxOWI2YTQ4MTc5MSBsZWdhY3ktdHJ1bmsKKzY4NTIgOTY2OTlhZjQ4MWJhOWU5ODJkNDFhZmRhZWI0MWJhZmNhY2MyZjVkMSBsZWdhY3ktdHJ1bmsKKzY4NTMgMzA2MTY3NmE2NTlhZTNlOGU3OTZhMDg5NzBhZDliZGViZDI2MTM1OSBsZWdhY3ktdHJ1bmsKKzY4NTQgYWYxYmYwZjZlMmRiMTEwMGY0ZmEyZTI5YTEwZjYxZTc5ODhhMjQ0OCBsZWdhY3ktdHJ1bmsKKzY4NTUgNzk4NzMyZTY5YjNiYTFhNjI0ZDhjYjk5N2Q4YjZlMjIyYzYxZWU0NyBsZWdhY3ktdHJ1bmsKKzY4NTYgYWQ0MWRlY2M1ZmE5M2Y5Yzg4YjVhOGU2OWJjZTI4NDMyOGI4MDVhNCBsZWdhY3ktdHJ1bmsKKzY4NTcgZTAzM2M3ODZmMjk3MWM3NjQ3NDlmOWYzOTUyNDBjMGU1YzM4Y2IxZiBsZWdhY3ktdHJ1bmsKKzY4NTggMGRlOWM1NTRiYTAwYzBkNmVmNWRhMzU4MTA0ZDExY2M2ZmJmMTc0NSBsZWdhY3ktdHJ1bmsKKzY4NTkgNzBjYzIzOGQ1NjNlNjIyNzkyZGU3ZmY4MjgxYzM2MmZlNDMxZjEwMCBsZWdhY3ktdHJ1bmsKKzY4NjAgM2M3ZWZlYjYwN2EwNzBjYjQ0NTkyYWM5OWNmMmZmN2FjYjNjN2M0MSBsZWdhY3ktdHJ1bmsKKzY4NjEgMmUyNzJiZjVhNDNlODQ0N2JlMDhiNWU2YmI3MGFlZGYxMmI4YmJhYSBsZWdhY3ktdHJ1bmsKKzY4NjIgYTc3ZjRjMjI2OTdmZjlhZWY3ZjU3YjdjYjU0Y2IwMGZmYTJkOTQ2NCBsZWdhY3ktdHJ1bmsKKzY4NjMgYWRiZTYzMzE3Y2NiM2RjYzY3YTRmNWI0NTJmNmI1N2M0NmVmYmY3OCBsZWdhY3ktdHJ1bmsKKzY4NjQgNzc5NTRmZTQzNzZjYjQ5MWUyN2I1YTQ4NDNhNWY1MDA2YTgyMjI5YiBsZWdhY3ktdHJ1bmsKKzY4NjUgNjJiNjViZTJiNzdmMWIxYTlkNzE3NmEyYjVlZTZiMzI0NTBhZDdmYiBsZWdhY3ktdHJ1bmsKKzY4NjYgNzJhMGNmZGEyMDA0NDc0NTkwOGNkOGQ1MTlhNjUxM2Q4NTQ3OTA4MSBsZWdhY3ktdHJ1bmsKKzY4NjcgNzk4MDg2MzIzNDY0NWM4NThiNzUzZmVhZjA1MjMxZTg5NmExNTcyMiBsZWdhY3ktdHJ1bmsKKzY4NjggNWM4NmY2MDUzOWY3NDI3ZTBhZDEzY2YwNDFjYTA2MTRlODdiYmYyOSBsZWdhY3ktdHJ1bmsKKzY4NjkgNDhkMWY1YmViMTZiYTY0OWFkNDJkNmVhMTJjNDdhYjg4ZTU3ODYwNCBsZWdhY3ktdHJ1bmsKKzY4NzAgZDU4YTg0OTE1ZmFkZTE5YWUyZDgyZjBkOGE1OTE2MWI0NDkzYjEyNyBsZWdhY3ktdHJ1bmsKKzY4NzEgODkwNDM0ZDViZWMyZjljMzlhYTZlYTZkMTExNmU0NDE4MjBkZjBiNCBsZWdhY3ktdHJ1bmsKKzY4NzIgZWM0YzQyYmVhNjlkNmNmYjEzOWM0YzQ0ZGNlMTE4YmU4YjlkYTUwZCBsZWdhY3ktdHJ1bmsKKzY4NzMgZmRkMTI5ZjA1NzRlZGNjNjE3YjllYTAwNmVjNjU5N2ZmYjFhYTRiMyBsZWdhY3ktdHJ1bmsKKzY4NzQgMDkxNzc1YTVlMTliMzVlOTQ0NTFiMDQ3MTc2MWJlNjM0ZTdiMTk3YSBsZWdhY3ktdHJ1bmsKKzY4NzUgZDE2Yjg2MjFhM2YwZWFkYTM5MDRiMDZjNWQ2MzdhOTllMGJlNWE5NyBsZWdhY3ktdHJ1bmsKKzY4NzYgMWQyNzVjZDQyYzliMTg3YzYzMjlhYzhhZDIyNWI2ZjcxMmI4Zjc4MSBsZWdhY3ktdHJ1bmsKKzY4NzcgM2IzZjdjM2Y2ZGEyZjhmMGQ1ZTg0ZWI2ZjYxNzQ1YmQ2NzNlZThkYiBsZWdhY3ktdHJ1bmsKKzY4NzggMWUyZDI4MDYwNmQxZWZmOGQyMzNkNzM4ZmE5OGY3NWJjMDU4NmE4OSBsZWdhY3ktdHJ1bmsKKzY4NzkgZTUyOGMwYWNlNGU1ZGE5ZDIxY2MzZTI4N2E1MzRiMjg1ZDE1MGNhNyBsZWdhY3ktdHJ1bmsKKzY4ODAgNmYwMzJlYTI2NjQyZjZkY2UwMGNlZmFlNjE3OGQ1MDJmYmNhMjcxZSBsZWdhY3ktdHJ1bmsKKzY4ODEgN2RkZDhiM2Y2ODAyZjBlMmU5MzM5ZTc4NmY4OTg0NTQxYTJiZWQxOCBsZWdhY3ktdHJ1bmsKKzY4ODIgNmM3NzFlYTM4ZWVlODcyOWExMzFlY2M0OTYyNzdmNmYwYTVkODNhOCBsZWdhY3ktdHJ1bmsKKzY4ODMgYTk4MDExZjBmOWNhNWI0YWIxYjNjZThkMWI4MTVkNmQyMTY2OWQ3OSBsZWdhY3ktdHJ1bmsKKzY4ODQgNGNlZjIzZTFkY2NhODdmZjE4NzA4ZDdiZDU3ZjY5MGY5ODMzN2I2NSBsZWdhY3ktdHJ1bmsKKzY4ODUgZDczODQ5MGM4ZGExOTNjMmZjZWMwYzE4NWE4NGNlNGI1MzUxYWJmOSBsZWdhY3ktdHJ1bmsKKzY4ODYgYWMzMzI0ZTYzOGU5NmMyNDM4ZTE1NWEyODY5YzRmYTZjZmUxMGZkZSBsZWdhY3ktdHJ1bmsKKzY4ODcgNzdkM2QzMDEzNjkyZmRjM2I0NDQxMGIxYTM5NjBkMTk0MDA3YjEzOSBsZWdhY3ktdHJ1bmsKKzY4ODggMDJhNjhkNjIzODA1YzAxMjE1ZTE1MTkyN2UzMmM0NjRiNTE1ODI1YSBsZWdhY3ktdHJ1bmsKKzY4ODkgM2RiZWQwZmY5Y2YyMzM0ZDc2MjdmYjQ5N2RlNWMzZmE3ZDRlZjU2ZiBsZWdhY3ktdHJ1bmsKKzY4OTAgZmNlNGY4N2U1OTc0OTQ3YjgxM2U1MDUyMDVmZGRmMmU4N2U3NjViYyBsZWdhY3ktdHJ1bmsKKzY4OTEgYzE0MzVjNWRhMjgxN2IzMDY0NThlZWQyMGIyNzhkOTljYzRkYzAyYiBsZWdhY3ktdHJ1bmsKKzY4OTIgZjQxYWI3MTNmN2VhYmU5MzgxYjdhZjEwNzZlOTNlNDc2NTIwMmU2NSBsZWdhY3ktdHJ1bmsKKzY4OTMgMmVhY2QyYzhlYWJmZjQzNTU0NjcwZWE3OGUzODM5Zjc5ZDZiOWNlZSBsZWdhY3ktdHJ1bmsKKzY4OTQgN2ZmZmY2OTVmMjFkYTc3MTk0YmM1ZjQ3ZjAwMTY4YTJlZDBjMWRkMSBsZWdhY3ktdHJ1bmsKKzY4OTUgOTNkMDVlMTc4MjE2NGRmN2IwZTdjMmZiZTY0MzA5YWRlYTI2ZmVmYiBsZWdhY3ktdHJ1bmsKKzY4OTYgZGQ1ZTllODU3MTg2NTlkNjVjNDFhMTg1Mjg3ZDNhY2IxMzM1NzdjYiBsZWdhY3ktdHJ1bmsKKzY4OTcgZWY3NjA0YzA3ODc3ODFiOTEzZTcwZTZmZTAxNjliOTE3NjgwZGUwYSBsZWdhY3ktdHJ1bmsKKzY4OTggNGY2YzU2MjkyZDM0ZjZiZGU1OGNlZDE2NmM4OTQ3ZDEzNzU4YzhhZSBsZWdhY3ktdHJ1bmsKKzY4OTkgNWUwMzg4NTZmYTU2ODg2ZmI2YmY4MjBlYTBkMjYxNTk4NjBkZDk4YyBsZWdhY3ktdHJ1bmsKKzY5MDAgNzVhYmU3MzdlNzBiNjE3MTlkMTExZjcwOTdkM2Y0YTU3MzBjM2Q5MyBsZWdhY3ktdHJ1bmsKKzY5MDEgOWM3ZWYwMzBiZWM4MDExYTNiMjRmNjEzMDBlMDRhZjBlNTY3M2U4MCBsZWdhY3ktdHJ1bmsKKzY5MDIgOTM4YmU3YTMxMDZmMjg1YmQ3MmI1MDQ0OWY3N2Q3NjdmODlhNzA4ZSBsZWdhY3ktdHJ1bmsKKzY5MDMgMzRlZWI2MWYxMDI4Mzg2ZDhhNTI0MDMwMzViZWFhYmJkNzg3NGQxNyBsZWdhY3ktdHJ1bmsKKzY5MDQgOTI3NTMyMDcxNDkwNDQxMzFlZTJhNzZlMTc3YzViZDEyNTI3ZTg3NiBsZWdhY3ktdHJ1bmsKKzY5MDUgZjJmOTQ2YmQ3ZjQ3YzVjOWE2MzVhOTY4YWY0NjVkYzc5MDhmMWIyOCBsZWdhY3ktdHJ1bmsKKzY5MDYgMWNjY2U1ZTRmODA2ZDU0OWMxYWEzZmFiOWM0OGE3MDhhNGM0OTg2MCBsZWdhY3ktdHJ1bmsKKzY5MDcgMzQwYWRmYWE5ODU0M2YwMTllYjBmZWU4NjdhZDlmMmZmZjBkN2ZiYiBsZWdhY3ktdHJ1bmsKKzY5MDggYWMyYTYyN2NlM2E3ZWY3ODAzN2U5M2EzZGQzODk3YTliMjczMTY4MSBsZWdhY3ktdHJ1bmsKKzY5MDkgMjVjNTMyODY3NjNkMDM1OWViMzIzODJmMGRjNDAyNzViNWZhMTllZCBsZWdhY3ktdHJ1bmsKKzY5MTAgYTM2MjM1NjMxMjczN2I3N2M5OWIyNDgwNzljODUwZjZjZWY3YzYyOCBsZWdhY3ktdHJ1bmsKKzY5MTEgN2RlNDU3YmRjOTQ2Njc5Mzg2NjE0ZmUyM2JmMjJlODg1YWFhNjBhMCBsZWdhY3ktdHJ1bmsKKzY5MTIgZTg4YjMyMTVlOTRhNTkwMThiODRmMWE5NjU3N2JmZDMxYzk3MWI1NyBsZWdhY3ktdHJ1bmsKKzY5MTMgZmIxMjM3YmY3MDIyYmI3NzczOTc4ZGIzMjEwYTJhZWU5ODA3N2E3YyBsZWdhY3ktdHJ1bmsKKzY5MTQgZmNlMjk2ZGJiMDNlMTY5OTgxMDNiN2EwM2ViZjUyMjkxODUyNDBlNSBsZWdhY3ktdHJ1bmsKKzY5MTUgNzgwMTBjY2I4YTQ2MTg4MWViY2I1NTQzNmM4MzMwNGZmZmEzM2M2MyBsZWdhY3ktdHJ1bmsKKzY5MTYgMDU0OWUzNDI4ZDU3ODM1ZGQ1YWNhZDdhOTBlN2RjOWFmMGYzYWQxMiBsZWdhY3ktdHJ1bmsKKzY5MTcgMWMyNzQ0OTEzMGJhNDQ1YzIxMTAxOTMxMWIyMjkzOGJjODE1MmQxMCBsZWdhY3ktdHJ1bmsKKzY5MTggZmE5YWJmOWE4NjI0ZTZmNmU3NDVhZTE1ZWNmNDM3N2VjMzIyYjk5MyBsZWdhY3ktdHJ1bmsKKzY5MTkgMDJiMWYwOGUzMGEwM2NhZTk0ZmJmNzI1OTljZDYyN2Y3MjVjYzE5NCBsZWdhY3ktdHJ1bmsKKzY5MjAgOTQ1MjE4ODA4NzFkMTYyYmRjZjlmYzM1Yjg5YTA0ZmQzZWRlZTc0YyBsZWdhY3ktdHJ1bmsKKzY5MjEgMWJhMjJmNzQ5NDg5YTQzNTRhN2JjMzYxMjlkMDQwNDMyZmZhMTNlMyBsZWdhY3ktdHJ1bmsKKzY5MjIgODVkMzg0NTZhZGYwOTQ4NWI0MDQyYjAwYWIzZjlhOGVlNzY0N2NjMCBsZWdhY3ktdHJ1bmsKKzY5MjMgMWZiOWE1NGU0YTljMTU3YmRhNGFmMzUyOTU3ODJiMGMzNDFmYjBiZiBsZWdhY3ktdHJ1bmsKKzY5MjQgOTFjNjk2NDU3ZmQ0ZWQyY2QzMTRiMGI2YTBlZjA1MDM4ZjI4YmM3OSBsZWdhY3ktdHJ1bmsKKzY5MjUgYzZmZmI0ZmM0ZGE0MDY2MjQ3MzIxMzcwNTc3ZmZhMWZjYzMyYmQ3ZiBsZWdhY3ktdHJ1bmsKKzY5MjYgZWRhYjA5Nzg4MmQ4MGU0MWJkNmI5OTQ2ODM4NGE5N2NiNjY1M2YyYSBsZWdhY3ktdHJ1bmsKKzY5MjcgZGNjNGNmOWZhNjJhODZjYjY5NGQxMjM1NTI5NTBkM2M2ZjdiYjViNiBsZWdhY3ktdHJ1bmsKKzY5MjggNGMxNjE1NGZmZmI5N2I0NmYyNWRjNTIwZGNjNDcxNzJhYTgyNDcxMyBsZWdhY3ktdHJ1bmsKKzY5MjkgN2VlZWZkMzI2N2Q0NTBhNzI4OTcwZTE5ODdmOTM4YzdiNDk3ZDlhNyBsZWdhY3ktdHJ1bmsKKzY5MzAgYWNiMTk4OGI4ODUyZmI4OTc2YTA3OWY5OWY0ZWVlMTYwMjQ5MDQ4NCBsZWdhY3ktdHJ1bmsKKzY5MzEgYWI2MGM1NTg1ZDFiMDA1Y2RjNTRiYWRmZDZlYjM0M2Y2ZDhmNTg4NiBsZWdhY3ktdHJ1bmsKKzY5MzIgZDg3NTlkMGI1YTY3Y2JiZDBhM2MwZWM2YmJhNWU1N2JmOWE2NDEwNCBsZWdhY3ktdHJ1bmsKKzY5MzMgYzkxYWFjYmY4ZWQ0NjUyODk0MGJiMDZlODZjY2NkMmNlOWMwMTRhMSBsZWdhY3ktdHJ1bmsKKzY5MzQgNTE5N2UwZjNmMGZmY2VkMGM5ZWJiODY2NGEyMzE0MDk5OGU3YmRhYSBsZWdhY3ktdHJ1bmsKKzY5MzUgYTgyNjRkNzBmMjgxYzYwOThiZjAyYjVjM2Q3MzE1ZjlkMTVhYjBlZiBsZWdhY3ktdHJ1bmsKKzY5MzYgNmY4OWE0NGE4NjFjN2JkOWEyYTY4MjYyNDE3NTQ4ZDVlMThjMmZkYSBsZWdhY3ktdHJ1bmsKKzY5MzcgYzZhNDc4NmU3ZjhlYTgzMDFiYWMxNGE3NTk1YmFlOGRmZDRmNzgxMyBsZWdhY3ktdHJ1bmsKKzY5MzggYmFhYmZiNWQ2MmE4OGNlNDFhNDg5MWZlYWFkYWNhZmNjZWE2YzhlNCBsZWdhY3ktdHJ1bmsKKzY5MzkgYjUxZGMyZmI0OGUxODA0YWRkNTc5OTE3OGY1YjYyYzVkYmQ5NzUzZCBsZWdhY3ktdHJ1bmsKKzY5NDAgOGQwNTZmNTNhN2Y2MzI1YTkwN2VjMzViY2Q2Y2ZhNWI0M2RiMzM5MCBsZWdhY3ktdHJ1bmsKKzY5NDEgMGQ2MWY2YzM4YjM3ZTI1NzhhNDlmYTk3NjdhNDNiNTQ0YzBkOTk4MSBsZWdhY3ktdHJ1bmsKKzY5NDIgNjAwZjViOGExNmNiMWM0NzViZGMyOWM1MzhlOGVlZmU1M2RmYjdiMSBsZWdhY3ktdHJ1bmsKKzY5NDMgNWQ3ZmEzZjJjZWMzZDU2MTE2YjZhNjhhOTIyYzNiNDI0NGE1NGM3MSBsZWdhY3ktdHJ1bmsKKzY5NDQgZDljNTE1NWJkYTUwMDJmMmNlODhjNTQ5ZTg4NzM5N2ZjZWU4OTE3MiBsZWdhY3ktdHJ1bmsKKzY5NDUgMTIyYzhmZGZlNGVmOTFhYTc1YmRkMDAyOWQzYTBiOTVjYWI1ODMxYiBsZWdhY3ktdHJ1bmsKKzY5NDYgZjYzNDYwOWY0MDI4YTVlMmM3OTFlMGQyM2U3YTk3YjQ0NGQxZTJmYSBsZWdhY3ktdHJ1bmsKKzY5NDcgNTVmZTY0YzIxMTQ1Y2Q4OTMyNzM5MWNlYTdlMWRkZWM0NzU2ZTk2OCBsZWdhY3ktdHJ1bmsKKzY5NDggNGQ2YmFiZjJlNGUxOTEzYWQ5NmFiOGRkZGEyZmIzYWQ1MjViNWU2NyBsZWdhY3ktdHJ1bmsKKzY5NDkgZmIyZDFkNWUxNDFhYTQ2Y2RiYWNhNDU4MGRmOTU4OTUzMjAyNjlkNCBsZWdhY3ktdHJ1bmsKKzY5NTAgN2U1ZjAzOTUzMTEwNTliZDQ0ZjZlMmUzY2NhMGMyM2JkODIwZmM0ZCBsZWdhY3ktdHJ1bmsKKzY5NTEgMmZkYmExMjY3NjEzOWVmNWZkMWFmNjRmNzhiMWU2MDkwNGE0OTVhMCBsZWdhY3ktdHJ1bmsKKzY5NTIgMjY3YWU1ODIzMmQ5YTg2YTllYWM1NTE0MzMyZjA5YzljZmNiOTFkNiBsZWdhY3ktdHJ1bmsKKzY5NTMgMjM0MzgwMzMxOGU0ZjZmNTYzMjE0YTBjMDgxZjQ4NjJhNjkyODNiMCBsZWdhY3ktdHJ1bmsKKzY5NTUgOWU4NTNhNWYwNGZmOWVjMTkyMmVhY2E3MDBhNDQxNmMyMTg0OTJhNiBsZWdhY3ktdHJ1bmsKKzY5NTYgZGQ3MDllZDgyMjYyNzBkZWZlMDFkYjljZmU5NzM0NjJjZTIzYzNlMCBsZWdhY3ktdHJ1bmsKKzY5NTcgMzI0ZTFlMzZlNjUyYmMyMWEzNTg0MTY1ZTAxYTFmY2ZkOTlkYmNmOCBsZWdhY3ktdHJ1bmsKKzY5NTggMWZlYzg4YjIyZTg3ZjgyNGM0NDFlYzA0YWRlZTJiNWIwZTllYmMwYyBsZWdhY3ktdHJ1bmsKKzY5NTkgYTYwZDg1MjM3ZmRiODFlYTU3MGQwODczYjE4ZjEzNDVjMmNiMTc2ZCBsZWdhY3ktdHJ1bmsKKzY5NjAgZDkwNGY1MzlmZmQ5Y2U4ZWZlZTEwYjAxMjc4NDRiYWVlYjNkM2JjNyBsZWdhY3ktdHJ1bmsKKzY5NjEgM2Q0MzUxMGI1ZTE5ZGE1YTY0NTljMGQ3M2FhNjM1YTBmNWRmYTM0MyBsZWdhY3ktdHJ1bmsKKzY5NjIgZTBjMWJkMGE3NGE5MTI3NDRjY2ZiNjI1YmViNjMxMmNkY2RlOWU3OCBsZWdhY3ktdHJ1bmsKKzY5NjMgOGNlMTg1MzhlM2JiZmIxZTQyOTk2MTM2ODcwYzUyMzJhZjk1MTY5NSBsZWdhY3ktdHJ1bmsKKzY5NjQgMGU2MjNlODIzMDFmMWZiMTQ2ZjA1MzNhY2JlN2ZlNGUzOTY0MzUyMCBsZWdhY3ktdHJ1bmsKKzY5NjUgOTc0ZGMzNmZlY2Q2MmMxNmY2ZTJjZWM5ZTRjNzEwOWJjNmVhMWNlYiBsZWdhY3ktdHJ1bmsKKzY5NjYgNmE3NWIzY2YwMjNjZmM3YWMzYjE4MDdlNzEzMWZmOWRhODQ3MGNiZSBsZWdhY3ktdHJ1bmsKKzY5NjcgYWU3NWQ0YTFmNWRkYjM1Nzc1YzY5ZmNiYzAwZGU3YWY1MzA2OWEwNCBsZWdhY3ktdHJ1bmsKKzY5NjggOTllNzBjNDcyYTIwMmRhNTEyNjY0YmY2YzE5OTBjODMwMjcyMWM1NSBsZWdhY3ktdHJ1bmsKKzY5NjkgYTk1NTQ5MjY5ZGUyYjAzMDI0OThmNTZlYWJjNjBlZWJhY2QxNTdiZCBsZWdhY3ktdHJ1bmsKKzY5NzAgNTY5ZTNhZjUyMTg3NWRlZmY2NzQ2YzNjYzhiZjE1MjI3M2U2YmNiYSBsZWdhY3ktdHJ1bmsKKzY5NzEgZWFlOGFiM2QyNGUwMzAwOTJlMjc0ZTQxZGJiZDgxN2RlYjNkZWMxOCBsZWdhY3ktdHJ1bmsKKzY5NzIgOTMzNTNlMWQxYzc2MDRmMDc1NzUyNDU3YmUzMWUyNjJjMjNhYTgwOSBsZWdhY3ktdHJ1bmsKKzY5NzMgZDgwMTI1ZDdkYzczNGExZjllMTQ1OWVmZjg2NDdjZTgwYmU1NDA4YyBsZWdhY3ktdHJ1bmsKKzY5NzQgMjBmZDk2NjQ4NTEwOGRjMmUwOGE3YzRlMWUyMmM2NzczYmI5MTgxYSBsZWdhY3ktdHJ1bmsKKzY5NzUgNGJhMjBmNDQ2NTRiYmU3ZTBjYzQ5Mzg2OWEyMWZlMjY5MTNmYWVjNiBsZWdhY3ktdHJ1bmsKKzY5NzYgNTU5YWE0N2IyZTJjZmNmZWU2NGIxOGY5ZmMyYzc5NTlhZmU0MWUwMSBsZWdhY3ktdHJ1bmsKKzY5NzcgOTQxYjA1MWFmNjc1ZTJiN2VlNzY1ODM4MzhiYjZjOTQzMDc0NGI2MiBsZWdhY3ktdHJ1bmsKKzY5NzggNjVkMmQ4ZTY3ZGEzMjNiNzRiNzJlNGQ4MDU1MzZmYWE2ZmQyNGMxZSBsZWdhY3ktdHJ1bmsKKzY5NzkgODU4ZmIyZTliYzE3MjNjODhiOWVlNzgxNWIxMTg1NjQyM2JmOGE0YSBsZWdhY3ktdHJ1bmsKKzY5NzkgZGI0OTQ5NGM5M2RjNzNkZTA2ZDU3MjFjNzRlYWI1MzNhOTQ3YTkyYyBsZWdhY3ktdHJ1bmsKKzY5ODEgMmIyMWVhMmYzOWI0NDMyNmNiMjBjMTVmOTA4ZjAzZjdkMGNmZTgxMSBsZWdhY3ktdHJ1bmsKKzY5ODIgMTg5MjdhYmRjMjYyODE5NDhiY2I5NTQ2NDJhNmY4YTc0NTM0NGZmMCBsZWdhY3ktdHJ1bmsKKzY5ODMgNzE4N2M3MDllYmZkZWE0MTQ3YWY5ZDI1OTcwNzcxMjdlMjgyYzhkYyBsZWdhY3ktdHJ1bmsKKzY5ODQgOWNhNTk0MjQwMjBlMDBmNmJjNmQxMTUxOTc3NmVjOTY5MTA3YzczMCBsZWdhY3ktdHJ1bmsKKzY5ODUgMTFlMGMyMjA4OTk5Nzk4NmQzODdmMDFhNWUyZTcyZDA2Njg3NWU5NSBsZWdhY3ktdHJ1bmsKKzY5ODYgZGYyYzIxMmU0ZWEzZWJjYWJlZWY2MGViOGI0MzYxYWFlN2RiZjE2YyBsZWdhY3ktdHJ1bmsKKzY5ODcgMjNhMTA0ZDNiY2VkYzc1Y2M3NzdjNDYzMWUyZWY0ZTI3Mzc5YWM4YSBsZWdhY3ktdHJ1bmsKKzY5ODggODQ3NDQ1YWVhYjJkMTkwYTZjNmI1NzI2NmRmYmNmZGE1NDE0N2QwNyBsZWdhY3ktdHJ1bmsKKzY5ODkgZjY5NzZiOWE4NWE0M2VmOWI0Nzg1YWU1NTIyMzFhMTA1OGIyZTgzMSBsZWdhY3ktdHJ1bmsKKzY5OTAgYTc1ODU4ZmVmNTUwN2VlN2FmZmI5N2MzMDllNGNjOTEwNjZlOGJmYiBsZWdhY3ktdHJ1bmsKKzY5OTEgNGE3YzdkZDdiMWYwNTYzMzkzNjE3MzZiZGIxMDUwYTViMDhjODBjMiBsZWdhY3ktdHJ1bmsKKzY5OTIgYTRkMmFhZTc1N2E4ZDUxNzRhOWYyMmYyZDYxYTZiNDAxMDY4ZTUyZiBsZWdhY3ktdHJ1bmsKKzY5OTMgNjkxZTM5MmNhZDM0MGJkYmY4OTk5ODljMTEwOGMzZDhiNTAxNGE2YSBsZWdhY3ktdHJ1bmsKKzY5OTQgZmQ1MjRhMDAxY2U5ZmVlMjlmODE3Y2FlNTdjYjI2OTJiNWYyYjFjZSBsZWdhY3ktdHJ1bmsKKzY5OTUgYjQwNjNjMTAxYzJjY2UzMjQ5MzlmNzJiYTMyOTc3OTgxMWY1NjNkMCBsZWdhY3ktdHJ1bmsKKzY5OTYgOTdhNjE3OTVhMTY5YWZmN2UxZWE3YWNkZmQ4ZjA4ZDNiMTQwMzg4NiBsZWdhY3ktdHJ1bmsKKzY5OTcgZDI1YTBjY2JmZDZiOGE4YTA4OWE1NWE5ZDE5OTI3MjkzYWFlYTQ3YSBsZWdhY3ktdHJ1bmsKKzY5OTggNGQwNjgxZjdjZjZiNmI0YjVlNGYxMTk5MDE1Yjc2ZGMyYWRlNTAxNSBsZWdhY3ktdHJ1bmsKKzY5OTkgZDBjMDNjMzJlOGQ5NDMwZGZjYTQ3MGQyM2ZkZDdmNzY1OTgwZjNkYSBsZWdhY3ktdHJ1bmsKKzcwMDAgZmZlZjJjMzBkYzQ4ZmQwN2RhODJjY2EyODhlZDY1NzMxNGYwZjJiMyBsZWdhY3ktdHJ1bmsKKzcwMDEgZGI1NWI4MGFhZjEwMzk0YTZlNTg5OGE4YjQ1OTdhOWE1YjlkYmYxYyBsZWdhY3ktdHJ1bmsKKzcwMDIgNzg5NGEwY2Q4Yzc1NGI4NWM1ZDc4ZmQxODg1NjZjMjdhNTc3MjU1OSBsZWdhY3ktdHJ1bmsKKzcwMDMgMjgyNGNiZGJlMTJjNWJkNjdhNDNhZmU4ZmUxNmJlNjk0YzM5NWMzOCBsZWdhY3ktdHJ1bmsKKzcwMDQgMzM3NTYyMzMwZmQwZmQ1OTAzZmQ0MTJlYWRlMDk4YzM3MmUxYTZmZiBsZWdhY3ktdHJ1bmsKKzcwMDUgODBiY2IwMmViZjRlZjBhZjU0ODYxOWM5MTgxMjExM2E5ZmRmODkyOSBsZWdhY3ktdHJ1bmsKKzcwMDYgOTYwM2E2MGM4NjliZTI5MjJlZTk4NDBhNDhjZGJlZjhiZGYwYzA2MiBsZWdhY3ktdHJ1bmsKKzcwMDcgMzBjZWNhM2YxMDViMGRhODEwNTQzMjE4ZDZhYTcwNDAzNDJmOTBmNiBsZWdhY3ktdHJ1bmsKKzcwMDggNjJjZWY3ZTg5NmI2ZWNhYjI3MDRmMzI5MDI3ZDA5OGQ3M2MwZDkzMiBsZWdhY3ktdHJ1bmsKKzcwMDkgZDkwZDdiNTQxYWRhYjJmNmRhMTdkZDY4MGQyNThiNzA0OWM0MDRkZCBsZWdhY3ktdHJ1bmsKKzcwMTAgOTQyMWQyZjYzMDc3YTk1MmY2NjZhMGIwMDMzM2M4OTI2ODExODZlOSBsZWdhY3ktdHJ1bmsKKzcwMTEgMDU3NTA4MzhmODQwM2Y4ODYzNWZmNzdkY2FiODQ0ZDkyMzg2MWUzOCBsZWdhY3ktdHJ1bmsKKzcwMTIgYmYzNzY4YmQzMWYyYzk2ZDU3NGE2NTc1OTc3ZGE1NzQ2OWE4NWY1NyBsZWdhY3ktdHJ1bmsKKzcwMTMgNjUxNzBkYTFkMmNhNWJjNGIzMGNmNjljZmIxMDQxYzViNTIzMjc5NCBsZWdhY3ktdHJ1bmsKKzcwMTQgNDdlN2M0MmI5ZGM2MzUzZmRmZDg4M2RlNjQ5NWVkYTc0YzBlZThlZCBsZWdhY3ktdHJ1bmsKKzcwMTUgMWY0ZjFiZThhMzM5YjhjZTdlZTUxN2UwOGQwOTEzMTgyNDg5YjY1OSBsZWdhY3ktdHJ1bmsKKzcwMTYgNTc0OGQ1ZWUxOWVkM2NjMDk5NDU3NDFjMWUxN2M3MGNlOWMwYjdmNyBsZWdhY3ktdHJ1bmsKKzcwMTcgNjUyMzAzZWY5MjZiMWY2MmQyYjVlODBjZWJlNDBjYjk3ZWEwMjEwZCBsZWdhY3ktdHJ1bmsKKzcwMTggZTUyMDU0NDQwZWZjNWIwMmZhOWZkMzQ2MDMyMTQzMGNiYjVhZTk5YSBsZWdhY3ktdHJ1bmsKKzcwMTkgOGQwYjAwZWQ4YzJiNTZlNjdiM2I4YzgxZmUyYTYzZTc5YWNkNmY4OCBsZWdhY3ktdHJ1bmsKKzcwMjAgODIwYmYxYWU3ZTI1ODJkZDVmMjU0MTAyNTcyYjFkMDA5OGVmOGZjYiBsZWdhY3ktdHJ1bmsKKzcwMjEgY2M2NTIxYTJjZTIxZWU4NWZmNjFmZjg4NTgxMjI2OTI3Y2Y3ZGY4MiBsZWdhY3ktdHJ1bmsKKzcwMjIgNTRjODAwOGRlODdiYmI1Mzg0MGYyYTg3YzllY2NkMGM1NzY0Y2ZmZSBsZWdhY3ktdHJ1bmsKKzcwMjMgYmQ1NTFmYmI5NTk2NTg3Yjk3ZjE2OTYzNTUzYWYzMzIwNzJiNGQ4MSBsZWdhY3ktdHJ1bmsKKzcwMjQgZGJjOTg4MzRlZmYyZWE1Njg5NGJjNDA4YjUwZWJlN2M3MGY3MTY0MCBsZWdhY3ktdHJ1bmsKKzcwMjUgZjEyNDQwMzZlYmFiNmUzNzExODkyYzljMGU3YjRlMTYzM2ZkMGY2NCBsZWdhY3ktdHJ1bmsKKzcwMjYgY2VhMzE4YmI5ZDJmNGQ4ZTQ3MjU0ZWVlOWE0M2FkNThkMjI3ZTkzYSBsZWdhY3ktdHJ1bmsKKzcwMjcgZWZiMjkzOGNlNjc2M2ZjZjE1NjQ5OWQ1YTE5ZDEyMzg2MGQ0YjE2ZSBsZWdhY3ktdHJ1bmsKKzcwMjggODkwMDIxMzc2NGJhMTlkMjM3MzlkZTc0YThkNDJjZTMxYzhiZWY0ZCBsZWdhY3ktdHJ1bmsKKzcwMjkgZjAzMTQ2NjUzMGFmNjcyODMwODRhZWM3MDA3ZGIwZGY1NjljNTM4ZiBsZWdhY3ktdHJ1bmsKKzcwMzAgMDQ1MDc0MmYzNmY0ZmZkMTBmOWFmZDQ0MWI1NDNmZWI0M2M5M2IxOSBsZWdhY3ktdHJ1bmsKKzcwMzEgYjIxM2QyNThmZjMyN2RlZDYzNmRkOTBlMWU0ZGU0NDllNzkyMmZkYyBsZWdhY3ktdHJ1bmsKKzcwMzIgMmMwYzY4MDQwN2IyZWM0YzQyYjA4OGMzY2I0ODllYTIzM2ZiYjZmMyBsZWdhY3ktdHJ1bmsKKzcwMzMgZGY5ZDFlYmNmN2YzMGJhMTgxY2ViYWRmOTE2ZGQwMTZlNmY5NDU5NCBsZWdhY3ktdHJ1bmsKKzcwMzQgYWRiY2MwYWI5ZWI2YWY0MDFhNTJiZmQxOTIwOGY3N2RkYjI5NTExYSBsZWdhY3ktdHJ1bmsKKzcwMzUgYjIxN2RhM2Y5YjU0YzYzNjQyMGU5MTE1MTRkMDk1MDIwYmQ1MmRjYyBsZWdhY3ktdHJ1bmsKKzcwMzYgYzcxM2RlNzJlNzZlYzQzMjlhOTA1ZGFiNDI1YWI0Zjg5NjA5M2FlNSBsZWdhY3ktdHJ1bmsKKzcwMzcgZDAzMGVhNTMzZTYzYWZhZTg3MGRiNDI4YTdlYTE1NDVmZjdjZjg3NyBsZWdhY3ktdHJ1bmsKKzcwMzggZWE0NTg5MzNmYzJhZjZiMzlkZDFkZjc4NDQ3ZTFkOWU3NWM0YWE4YSBsZWdhY3ktdHJ1bmsKKzcwMzkgNzQ1YzdjNzBiZTMxMDhiMTc3NGY0M2QwYjFhODRhMDVhNmM2YmJjNiBsZWdhY3ktdHJ1bmsKKzcwNDAgN2Y0N2UyYjZjNGE0OTlmMmIwZDc5ODdiZDE3OWZkMDYxM2VmMDI5ZiBsZWdhY3ktdHJ1bmsKKzcwNDEgNjQwM2M5NGRlNTBkYzNjMWZlODQ4OTk5MTkwMDMzZWI3MjExN2Q2ZiBsZWdhY3ktdHJ1bmsKKzcwNDIgYTM2MGRjMWZhNTU4Mjk3ZTdiMjZmMjY0NzYyMzQzNjgxMjlhM2RmMCBsZWdhY3ktdHJ1bmsKKzcwNDMgNDM0MTU3NGUxNjNiM2Y0OTE1MjY1OTE3ZTczZDQ1MGNmN2I3NDdjNSBsZWdhY3ktdHJ1bmsKKzcwNDQgZTcwOGY1NjhiOGI3M2QzMGY0OWNjNjE1YTM1YjBkZDBmZWE1ZTQwNyBsZWdhY3ktdHJ1bmsKKzcwNDUgN2JiODRhMjIwNTQzNTFlODMyMzY3N2ZjNmE2MWRkZmYyNjg3NmFjOCBsZWdhY3ktdHJ1bmsKKzcwNDYgYTBlYzhhOWRiOTYwNTRjOWVlZjZhZGFjMGQ2MmI0MTEzNDBjNjk5NSBsZWdhY3ktdHJ1bmsKKzcwNDcgMjYyNmQwNmIzYjAxZjdlMTZlYzZiNTI3Y2YxODkxNDM3MTVhZTRmOSBsZWdhY3ktdHJ1bmsKKzcwNDggNzM3NThkYjJmNDY0Njg5NDc1MDcyMDc5ZTU1ZjUyOThkNDQ5YWE0ZiBsZWdhY3ktdHJ1bmsKKzcwNDkgODE4NjAzOTA1NWVkYTNkM2Q5YjNhMzc1YjNiMDMzYWM5NDlkNDY3MiBsZWdhY3ktdHJ1bmsKKzcwNTAgYWE5NjUwOGE2NTg3OTBmYjNhMDUyZDVhMWNhNmYwMzZkZTk5MDI2ZCBsZWdhY3ktdHJ1bmsKKzcwNTEgYzNiMDg5NWM5MGZiZjA4N2Q4NjkzMzcwY2YwNzQ1NmJkNGQwNWJlYyBsZWdhY3ktdHJ1bmsKKzcwNTIgZmFlNzhjZjg1NDFkNGJiN2VjYThkZmZkOTc3ZmNjMzhmMTYyYzBhMiBsZWdhY3ktdHJ1bmsKKzcwNTMgNmYxYTEyMGFlOWMwNjE2MTRhOWVkYjI5NDU4YWQzMzI4MmMyYTMxYyBsZWdhY3ktdHJ1bmsKKzcwNTQgZTNmNzFjZThlNmJiYjVmMzhlMTg1Njk3YzZjZjQwNDE4YTRhNTk0OCBsZWdhY3ktdHJ1bmsKKzcwNTUgMTFiZDRmNDk3NzQyZDgyN2I3MzdjMjY5Yjg4YjhhZTRlMzM1ZGZkOSBsZWdhY3ktdHJ1bmsKKzcwNTYgYzgzN2YyNWM3ZTQ3NzQ3MjQxYzNkYTA2NWIwNzEzOWY4MjQ2YjFhMiBsZWdhY3ktdHJ1bmsKKzcwNTcgMmY4ZDljMjJkZTYyZTE3MThjMDhjMTg3MTBiNjFjMjllMDdiNmFkYyBsZWdhY3ktdHJ1bmsKKzcwNTggNGY2NDRlY2M1YmFjNGFhYTI4OTIzMzEyMmQ4NjgwMTdjMTFlMmE0MSBsZWdhY3ktdHJ1bmsKKzcwNTkgMzg3MWViZDE5NjNjN2FkODFiN2U1ZTU3OGI2MmNhMmFiYWU4NTdhNyBsZWdhY3ktdHJ1bmsKKzcwNjAgNGE4MTY1YjNiNjYwM2Q5YjMxOGE4ZWUxNmY3MzMzZDUzMTU4OTMxOSBsZWdhY3ktdHJ1bmsKKzcwNjEgYjNkMjk5MGQ4YTRhZmI2OGIwMjlmY2M2ZjllMmVjMDIyNDg0YmVlMCBsZWdhY3ktdHJ1bmsKKzcwNjIgMDlkOTRlOWViMTAxMDAxOWQxYjNkMjdkNTI2MmM5YzVmNTY4MGVjNSBsZWdhY3ktdHJ1bmsKKzcwNjMgNGRjNjdmZGQ5ZTBiNWUwZWRjMTM1MmU1NzIzZThjMDJkNGVjZjMzMyBsZWdhY3ktdHJ1bmsKKzcwNjQgOTYxYmY5YTIwMGRkMTg0NDhhMWY5YmUyMjhlNTUwZDAyMzMxN2E5NyBsZWdhY3ktdHJ1bmsKKzcwNjUgMjEyNGY0Yjk3YmRkMmJiOTdhZDViZjQ5ODRhYWZhNTBlNzNiMjdhYiBsZWdhY3ktdHJ1bmsKKzcwNjYgOGNkZDk0YTNkMDJkOTk2Y2ViZWUzOGM0ZDIyZTY4ZWI2NmFjNmI4ZCBsZWdhY3ktdHJ1bmsKKzcwNjcgM2JmOWUyYmVhZjhjMDE5NzM4ZjU1YzlhYmE2MGIzNWQ3Zjg0MzJiNCBsZWdhY3ktdHJ1bmsKKzcwNjggNzJkMGRmYjkxOWZlMjhhMjJlZThhMmQ2NDBjNWNhZWU5YTEwODQwOSBsZWdhY3ktdHJ1bmsKKzcwNjkgNDE4NTcwNzVkNDViYWM4MDA3YzgyYTA0MmE2OTg4NjViM2Y2OGMwNiBsZWdhY3ktdHJ1bmsKKzcwNzAgZjhmM2RhM2ZkYWVkNTgyNjg1YmJkMDg2MGIyMTcwMDJlMzEyYjc1MCBsZWdhY3ktdHJ1bmsKKzcwNzEgNGZhMTk2NTk1OTFlZmEzZWQ4Y2U4MjM4NjdkODljZWFkNGJjMGY4NSBsZWdhY3ktdHJ1bmsKKzcwNzIgZTc0YjYwN2E1OTk2ZmE5OTIyMTNiYjk1M2RhY2I1Mzc3NDllMTg2ZSBsZWdhY3ktdHJ1bmsKKzcwNzMgOGZkYjA1MzljZmIxNTBhMTA3NDdjZDAxMWI1ODlkNDdmMzIwMTEwZSBsZWdhY3ktdHJ1bmsKKzcwNzQgYjJhMWM5OWNhNjQyYjk5M2E4ZDNjNTEzNTZjOTk5MjhmMzY0ZTgxYSBsZWdhY3ktdHJ1bmsKKzcwNzUgZDM2MjUwYWVmYjgyNTI2NzRjMmJmYjIwZTM2N2Q4MGU4MGE2OGQ2MSBsZWdhY3ktdHJ1bmsKKzcwNzYgN2Q1NmI0OTZjN2RjMjFjZGQxZDE3OTY0MDNkMjBkY2FiYjMwMzY1OSBsZWdhY3ktdHJ1bmsKKzcwNzcgN2M2ODAyZDg2MjBmNDJlN2E1MjYxZGJmMDg0MzgzMGI1MzQyNTk1MyBsZWdhY3ktdHJ1bmsKKzcwNzggNWM3NDFkMmQ5N2Y1YjE0NTQ5NDdmOGY5NDkwNjlmM2VmZDA2NGUwMiBsZWdhY3ktdHJ1bmsKKzcwNzkgMjM2ODM1M2Q5ODg3NTMwMTk3ZTNhYTJhMzJhYWU3MzRhMmExY2JkMiBsZWdhY3ktdHJ1bmsKKzcwODAgYjk4YjQ2ZGQ0MzY3ZTI3OTYwMTk3OGExOTU5Yjc3N2U3NjRjMTljNiBsZWdhY3ktdHJ1bmsKKzcwODEgNzM5Yjg0ODBmMWFjMjcwNmE2YjJlMjVkYTgwZGZhZGEwOGUzNzU4NiBsZWdhY3ktdHJ1bmsKKzcwODIgMzNhOGU2NWVlZjIzMDkwMDAxMDU0NTc5MTY0MjdkODU1NzRiMGRhNSBsZWdhY3ktdHJ1bmsKKzcwODMgM2VlODdkMDgyMTQ3YzE2NDNiYmVmMDQzYWU5YzNjOTRlNjkzYzMzMyBsZWdhY3ktdHJ1bmsKKzcwODQgNTNlZjViNTFhNDhiNGUwZTcwMmY2ZDJjNGI4YmI5NzRmZTQ4NjVmZiBsZWdhY3ktdHJ1bmsKKzcwODUgYmI0MDk0ZmY3YmRmZWQ0Y2NjM2M1MWQ0N2Y1ODNiYjUyY2QwYTNjOSBsZWdhY3ktdHJ1bmsKKzcwODYgY2JjNjY5ZmUzNzBhYjA1YjVlNDZmYTQyYmExYzJlOWVhMzdiZjBhNyBsZWdhY3ktdHJ1bmsKKzcwODcgNGRlMDVjYmY1YWQxOTg3ZjdhM2E0MjJkZDUxMjhmNTE4ZDE5OTBjNiBsZWdhY3ktdHJ1bmsKKzcwODggMTMyMTExMmU5ZTNhNGNlODNjNDFlMzU2YTY4MzA1YTNmNTcyYWRmMiBsZWdhY3ktdHJ1bmsKKzcwODkgNjgzMDc2NDMyYjdmOWRhZTZkYTg0NWNkMzViZWE1ZDEwNTRmNjMxMCBsZWdhY3ktdHJ1bmsKKzcwOTAgODc2MTc3MDFkNzIxZTcyZDc3MWJjMmVlODkwYmZmMDM2OWI3N2ViZCBsZWdhY3ktdHJ1bmsKKzcwOTEgOWNlZjk2OWM0NWU0NTA2MWIzYjgyMzUwZmQ1Mzg5OTg0OTBlY2U4NSBsZWdhY3ktdHJ1bmsKKzcwOTIgODc5OTlkYzRkNzk4MDAxOWMyMzA1YTg5YTAzYTljY2IxOWViZDMwNCBsZWdhY3ktdHJ1bmsKKzcwOTMgMDZjN2M3ZGU2OTc2ODk3YjNkMWE0Y2ZiYzEzNzY1M2NhYTM0NDI2YSBsZWdhY3ktdHJ1bmsKKzcwOTQgYzNjYTAwNjU1NGQ0NDRhYzY2NDkyMWZjODM0NjgxYTZjN2YwMjlhOCBsZWdhY3ktdHJ1bmsKKzcwOTUgOThjMDhmMGM0YTJlZDZiYzllMjUzNzAzZDNkYzVhNzA0MGE1NWRkNCBsZWdhY3ktdHJ1bmsKKzcwOTYgYTJmMTcxY2UyNWY4MTA1ZmViMDZiNGE0OGZmYTZkMThkNDFiNWY4OSBsZWdhY3ktdHJ1bmsKKzcwOTcgNjhiMjhiOGNhMDc3MGU0YTU2YjJlYWIxNjI2Yzg2MDc1MTA2MTJhOCBsZWdhY3ktdHJ1bmsKKzcwOTggMWZhYjk4MTQ2NWM4YmVkNGY0MzRhMjk5NDkxMzVhMzQ3MTczNWNjOSBsZWdhY3ktdHJ1bmsKKzcwOTkgYjExZDk2YzgwNzVjNTc0MmRjYmY3NmQ0NjQ3ZTRkMzk1ODMwNDQ5ZiBsZWdhY3ktdHJ1bmsKKzcxMDAgMjAyNjAyZmFlZmM3ODMyZWViY2QxMjkyMTI5MjBjMDIyNzBmMGE5OCBsZWdhY3ktdHJ1bmsKKzcxMDEgOTRjZTNlMDFjMzBjYzMwMGRiODdhYmE3MTRhZGJhNGYxYmU4ZDNhNSBsZWdhY3ktdHJ1bmsKKzcxMDIgNmI3NjU0NTNiMDQxMGUxMWIyYTc1MTc0ZjE3ZmU1MGEzN2Q1ZWU3MCBsZWdhY3ktdHJ1bmsKKzcxMDMgN2RmNWQ0Y2Y4Mjc3OGE0Mjc2ODA2NmQ5N2M0MzMwYjc0N2U0NGZjYyBsZWdhY3ktdHJ1bmsKKzcxMDQgZmYyNjg3MzI2OGE4NDJjZGI2MDMzMjYyYzI4YTE4YjY0ZmZiYzdjNyBsZWdhY3ktdHJ1bmsKKzcxMDUgMDQ1ZWQ4MzBjMDM1YTBkNTNhZWRkOTdiNWNiZGI5ZDMwMjE0ZjQ4NiBsZWdhY3ktdHJ1bmsKKzcxMDYgMjY0MmZmY2FjMmI0ZGNjMGIxMTRiNGQ4Y2ZhNzM2YjM4NjZlZWQwZSBsZWdhY3ktdHJ1bmsKKzcxMDcgYzhkMjQ3ZmY4ZDJmODNiNDI4NGJmYzA2ZWI4MzQwODlkNWMyZTJmZSBsZWdhY3ktdHJ1bmsKKzcxMDggM2YxMGY5OThhNTg3MWRjYzg1ZTQzZDlkNzVjZDE2OWU4N2ViZDljOCBsZWdhY3ktdHJ1bmsKKzcxMDkgOWZhY2JhYjE1MmNkYWIwZWNhYmI4MTgyYTRmMTU2MTI0MzliMTRlZCBsZWdhY3ktdHJ1bmsKKzcxMTAgNDk3NDVkZGI0ZjY5OGI1YmY5ZTNiODg0MDJlMjU1YzhkYzIwZDEzMyBsZWdhY3ktdHJ1bmsKKzcxMTEgYmQyODk0NWY3NTJiYjY0MGMxNjMwMDY2ZGUyY2I0NDliZDc5NTFjMSBsZWdhY3ktdHJ1bmsKKzcxMTIgZjUyYzJhYTA2MWY4YzYxM2Q1Yjc5NDY0ZjZiZDJhZWY0Y2M2ZDU5YyBsZWdhY3ktdHJ1bmsKKzcxMTMgNWY3ZDI0NmJiZWI3YjZlYjBiMjlmZTU5Nzc4MjA2ZDQwYzA5OTgxYSBsZWdhY3ktdHJ1bmsKKzcxMTQgOTdlYzlkZmJiMmI2ZTRhZTgwZTU1NjQ0N2ZkODkxMTA1MDRmNzYxYiBsZWdhY3ktdHJ1bmsKKzcxMTUgMzRkYjlhMjFiZmIxZDQ4MmNhZjE5NmJlZmVhOTQ2N2U4Nzc1OTNjNyBsZWdhY3ktdHJ1bmsKKzcxMTYgNWY4ZjYwNWFmMzM4NGQ1MzcwNmI3MjBjYTI2YzA0OGM3N2I0NmZmNSBsZWdhY3ktdHJ1bmsKKzcxMTcgNDM1OWU4ZDM4OWU2ZmQ4NmM0M2VmN2IxY2M0ZjE4YmQ3NzhjMjk2MSBsZWdhY3ktdHJ1bmsKKzcxMTggOGQ5MDlhZTFmMDk5NjRlY2I0YmQ4NzFmYWUwNTc1NjhjNmY0MTZkNCBsZWdhY3ktdHJ1bmsKKzcxMTkgZjRiYTllMDdkOWJmMmY0MDVlNmUzZjNiNmU1MmZlOGQ5NTZkMGNhNSBsZWdhY3ktdHJ1bmsKKzcxMjAgNjhjNGIwNmNmZmY3MDk1NmI0NGJhNzg1MjlhNTUyNTY2OTJhNjQyZiBsZWdhY3ktdHJ1bmsKKzcxMjEgZjRhNjBmMjYxZmJiNjZlNDUzNzc4NDgxOTA0N2FhNGZiZjI1Y2RkYiBsZWdhY3ktdHJ1bmsKKzcxMjIgYWI2Mzc0MjY4Y2FhOTI0NmZkNGM4NmU3ODgwOWFiMjBiZGJhZDIzNCBsZWdhY3ktdHJ1bmsKKzcxMjMgNmRkODUxNDQ1YzdkYzBiMWM4YmY5ZDBiYmJjYWQxZmFlYzE4ZjVmYiBsZWdhY3ktdHJ1bmsKKzcxMjQgZGFiMDFiODRhZmU2NjRkMGQ0M2IxYWMxNDMzMGY1ZDY0YTVkMGZhMyBsZWdhY3ktdHJ1bmsKKzcxMjUgMjc0Mzc1OWUzOTc5N2ZhN2FiMDM1YjczYjg5N2YwYzNjNWIyZmQxMSBsZWdhY3ktdHJ1bmsKKzcxMjYgNmVmZmQxMGU3MjMzYTY4NTljODVkMzhlMWU4MDhiOGJlNmJmNzE4MCBsZWdhY3ktdHJ1bmsKKzcxMjcgM2Q4N2NiMWIzZDE3YWQ3MThhM2Y2ZWM5MzhlZDE2NTJkMGZlZWM3NCBsZWdhY3ktdHJ1bmsKKzcxMjggM2I3Y2Q4M2I2MDJkNmZkODM4MGExNDVkNWIxMTc3MTliYWE3ZDA4YSBsZWdhY3ktdHJ1bmsKKzcxMjkgZGY4MTg1NmRiNThjNTQzN2QyNzY5NzQ3ZGQ5NGI1MWVkZjlhZTdmNyBsZWdhY3ktdHJ1bmsKKzcxMzAgYzc1YTJmMmRjMjIwYTU3NzY4OGU2MWIxMGQ3NzYxNDU4MzRlN2Q0ZCBsZWdhY3ktdHJ1bmsKKzcxMzEgMTg2YzJhZDRhYmYzM2M5MGY2ZTY2ZjhjNzBiNjkzZTlkYzc1OTIxNyBsZWdhY3ktdHJ1bmsKKzcxMzIgZGRiY2MwMzg5MTZiMmNmNTNhYWVmMzZkMmEzZTZhOTI2NGI4Y2ExMSBsZWdhY3ktdHJ1bmsKKzcxMzMgMGRkZGY0OWVhNDE2ZjNiZWJjMDYwOGU0OTNmYTViNDIxYzJlODg2OSBsZWdhY3ktdHJ1bmsKKzcxMzQgZTk3NTI4NDgyYmM2NzQyOTkwODE1Mjk1MzM1ODgzZDQ1NjBmMDA3YSBsZWdhY3ktdHJ1bmsKKzcxMzUgOGZiNTcyZTFiMWJhMTcxZTE3NDNiMTVjZTZiYzA5NGE3ZmUzYjJlYiBsZWdhY3ktdHJ1bmsKKzcxMzYgZDUwMjNkMGM1NTAyMzczNjQ4YmE1ZTg0ZWUzNGViNTE1NWY1Y2FlNSBsZWdhY3ktdHJ1bmsKKzcxMzcgMjI3ODUxMDhmMWVhMTNkNzRmNzU2OTMzMzNiNzgyZmEwOWRmNWMyMCBsZWdhY3ktdHJ1bmsKKzcxMzggNGVlNGI4YmI2N2M3NDQyNzBjZWQ0NGI1YmE0ZjNhZjU3MWM1OGIyZiBsZWdhY3ktdHJ1bmsKKzcxMzkgZGNiMmY1ZDM0YWU4MDI2M2ZlMzQxODhjMmUzZjlhNjYxMTczZTNlNiBsZWdhY3ktdHJ1bmsKKzcxNDAgZWQzNTA2N2UzNzkzZTBmYzNhODA1YTMxN2UyNmZkOWIyNDI1YzAzMCBsZWdhY3ktdHJ1bmsKKzcxNDEgMjliYzI4ZWNhM2U5ZWQ1NTUzZDQ5YTU3Y2QzYzc1M2VlYzQ5NmNlYSBsZWdhY3ktdHJ1bmsKKzcxNDIgYzQyMzc5ZTQ2NTNiYThjZWU5MjFhM2M0NzlkNGE1ZGU2MTg1YzdmMiBsZWdhY3ktdHJ1bmsKKzcxNDMgOTUyMDRhYTJmNDUyMmE1Y2M4Y2Q3ODU2ODE3MWQ5NzA3OTU3Y2I4ZCBsZWdhY3ktdHJ1bmsKKzcxNDQgZDUwMWRhZjBhMmY2NTVmZmRiMjk5NTk5NTQyODc0MDNhNjQwMDcwMiBsZWdhY3ktdHJ1bmsKKzcxNDUgNzkwMWZlNzlmNmFhOGEyNDkyYTA2MWJmN2NmNWYyNDNjNjBlNWVmNCBsZWdhY3ktdHJ1bmsKKzcxNDYgODJkZjEwNDBkZjBmOGE2Y2MwODE0N2FiYjlmMzBmNjA3ODcyNTg0NCBsZWdhY3ktdHJ1bmsKKzcxNDcgNWI1MzI2OGY1NDdhMzlkYjE3NzY5MTA5YTg1MDM1MTY5NDM1ZjllNCBsZWdhY3ktdHJ1bmsKKzcxNDggYTNjZGM4MTY0OTkwZTM0ZTM0M2I4ZmZhOTIwMTY1NTBkYmM4MjRmOSBsZWdhY3ktdHJ1bmsKKzcxNDkgYjQzZmY4OWZjNTBkOTVjMjI3YjU2YWRjODk4M2Y0ODM4YzM3ZDhjYyBsZWdhY3ktdHJ1bmsKKzcxNTAgMGMwMWEyM2M3ZGNkYmFiODEyOTcyM2Y4Nzg4OGNjN2M3YmE5ZWNmMCBsZWdhY3ktdHJ1bmsKKzcxNTEgMTkzOTUwYmM5ZDhmN2Y0YTVmNjVmMDc1YWZlMDgxZmQyYzQ5YmJmYSBsZWdhY3ktdHJ1bmsKKzcxNTIgYjgyOGViNTBkYmQ1MDYzOGU2ZmMyOTk5ZWY2NzI5ZTMxM2Q5MzJmOSBsZWdhY3ktdHJ1bmsKKzcxNTMgMTU5Mjk3MGM3ODliMDkyYzU5ZGE4ZWEwODJjNGI3YjliODgzZWEyMSBsZWdhY3ktdHJ1bmsKKzcxNTQgODliMTYxMjZkNGUyMmQxZjEyNjI4OGZhYzQzNDY3MjMxMGRkYTM5NyBsZWdhY3ktdHJ1bmsKKzcxNTUgMTBjMWI4ZjM5MDJmY2IyOGFjZWY3YmQ4MTE2YmVlNjcwZmZhZDgyMiBsZWdhY3ktdHJ1bmsKKzcxNTYgZjljNWEzMTNhZmQ5MzI1MDJmY2QwY2ZkZTMzMGE5MWMyZDQyM2YwMyBsZWdhY3ktdHJ1bmsKKzcxNTcgMTljOGU2MWNhZDJkODM1YWU5ZTJmZmZiODJhYmEzNWJkM2QzNTMxYiBsZWdhY3ktdHJ1bmsKKzcxNTggMzFiZDBhZDAyNzJkNWEwOTU0NTg0NTZmYWQ1MzNiNWM5NjEwMzgwNSBsZWdhY3ktdHJ1bmsKKzcxNTkgZDgwMDg0MWI1N2E4YzdlZjg5MDhjNTE3MjRlOWQwMzFmZDQyYzUyNCBsZWdhY3ktdHJ1bmsKKzcxNjAgZDdkMDVlMjM0NGQ3MzZkODk2Yzk5OWJjZTE4OTNhZTc2NDVlMDA1NCBsZWdhY3ktdHJ1bmsKKzcxNjEgYzA0NmVmYWYxYmQyYzQ2ZTYzMTg4NmM1ZDBiM2NmNzQzZmQxMDE0YiBsZWdhY3ktdHJ1bmsKKzcxNjIgZDEyMjc1M2U1YjlmNjAzYzg2MjZjMzYzZTY3MjFmOGMxY2ZhMDAxNiBsZWdhY3ktdHJ1bmsKKzcxNjMgMDFmNGVhMDVhNzY2M2VjMTJiMDM4MjE4YTY0MGUwZWYwMTllYzA3NiBsZWdhY3ktdHJ1bmsKKzcxNjQgOGY1MGJlYzUwNjhlNmVmZmM4MDVjOTNlYmNiZGEwMjg4OGRmNzY1MSBsZWdhY3ktdHJ1bmsKKzcxNjUgYzJiODMxZjkyM2MyZjAzZmQ4ZDViNDRlMzQwYTdkODkxZTNiZTI4NyBsZWdhY3ktdHJ1bmsKKzcxNjYgODAxNWM1NTQ5MzA5ODRlYWI5ZjRkM2NhMTMyY2QwYmY5MzI5NjAwNyBsZWdhY3ktdHJ1bmsKKzcxNjcgY2I0MDViOTY5NmQ0ODM2NTcyZjMzYzliYjg3NjgyYzkwODY0MmI1MyBsZWdhY3ktdHJ1bmsKKzcxNjggZmFkZGY2ZDU1YWYwYTRkNDAyMGZmNDdiMmZhNjVlMjg4OGM5ZDBjNiBsZWdhY3ktdHJ1bmsKKzcxNjkgMmMxMDM5NTkyMWUxZDBiYmIxYjg4NmZlOTVhMzMyMzA5NjQ1Y2Q4NyBsZWdhY3ktdHJ1bmsKKzcxNzAgZjEyYjFkNGQ2YTliYjg4MmY0NmU4NjQyOTdlYzhjYmQ2ODBhNTFlYSBsZWdhY3ktdHJ1bmsKKzcxNzEgZGUyN2RhNWYyMmYxNzUzNWY3ZDY4Y2U4MDVlZjRmODViYjBlZjY0OSBsZWdhY3ktdHJ1bmsKKzcxNzIgMWYzNjhmYjNlMWY3ODZiNDQ2ZDVmN2MxM2Y3MGYyNmZkNTFhODFlNSBsZWdhY3ktdHJ1bmsKKzcxNzMgZWU5OGU0NGQ0Zjg1NTFkNWUyYzdhMGFlODEzY2ZkNDM0NWQ5MDI2MCBsZWdhY3ktdHJ1bmsKKzcxNzQgYTE2OTRlOTViY2JhNzkyMGU3OWYwMzk3N2M4ZGFmOTgxNzcxOWNmMiBsZWdhY3ktdHJ1bmsKKzcxNzUgODI1MDM4ZDk4YWI2MjJiZDA3Njk1MmFjOTkzZTc0OWY3MzU0NWU5ZSBsZWdhY3ktdHJ1bmsKKzcxNzYgOGE3NWI4YmYxNTIxODc1NGZiY2E4M2MzMDc5YjdjMDJlMTdhZDA1NyBsZWdhY3ktdHJ1bmsKKzcxNzcgZTVlNTg3OTQwNDBmNDU0MzQwMTk3MjNlYmJlYzU1MDc0ODk1MThkNyBsZWdhY3ktdHJ1bmsKKzcxNzggZTBiYjFkYWMyZGJmNTU2Mjk3NTRkODdlYWZjNTU5ZmEwYjBhYTFhNyBsZWdhY3ktdHJ1bmsKKzcxNzkgNmMwZTM1Y2YwZjg1YmQ2MjNhZTA1Zjc2ZTRlMGQwNzc3ZTk0YWJmMiBsZWdhY3ktdHJ1bmsKKzcxODAgY2M1MjUxODJiYmIxZjM2ZWVjMWMyMDkxYmRhYTNjZmM5MjExMmY1ZSBsZWdhY3ktdHJ1bmsKKzcxODEgOTc4NTExNDMyNmFiNzUyNTJkNTRhZTJjZTg2YTkwODNkNDU3ZGNjMiBsZWdhY3ktdHJ1bmsKKzcxODIgMmRkMjg1Nzk0ZDY3NDMzMDgzNmE1OTM3OWU0ZGVlYjdiMzllMTRkYSBsZWdhY3ktdHJ1bmsKKzcxODMgNzc1YTdkMGMyOTYwOWZhZmQ4NTE2NDk4NjVkN2Q3MTVhM2M3NDJhNiBsZWdhY3ktdHJ1bmsKKzcxODQgNDM4OTQ5YmI0NTA4MDUwNjNjMjM1OGQ3MzNmOWM2YTY4YTZkZTAwNCBsZWdhY3ktdHJ1bmsKKzcxODUgN2I5YTYxNjYyODFhMTJjM2FkM2EyN2E5NTI3ZTJhMjFkYzAwZmNmYyBsZWdhY3ktdHJ1bmsKKzcxODYgZDlmZjZmODNhMTZhZDBhMTUzMWI2MzEwZTNjNjhiYjE4NGRlMjcxNyBsZWdhY3ktdHJ1bmsKKzcxODcgMDI1M2VmMjY3YjY4YzZjYTc4ODhmNTQxM2M4YjJhOWJjNWFjYTMxZiBsZWdhY3ktdHJ1bmsKKzcxODggNmNjZjVkYmE4YjBiYjZiNzcyN2NkNzE5Y2U5MDZmNGM5OWE3NzQwOCBsZWdhY3ktdHJ1bmsKKzcxODkgMGM2YzY5YjBkM2U5YzY5ZmE0OTgyZDFmY2FmYmFmMjA0OGY5YTJkMiBsZWdhY3ktdHJ1bmsKKzcxOTAgNjc3NTlkZmU2ZWU4YzdkYTZmMjFmZTYwY2RjYzBkODI1YjNhZGYyNSBsZWdhY3ktdHJ1bmsKKzcxOTEgYThhNTQ3NDkwYTEyN2NkZWQzZjdkNDEyNGNkNGQ5MzU4YTJhMDUyMiBsZWdhY3ktdHJ1bmsKKzcxOTIgMTIxNTRkMDkxMzE2NzRmZTlkZWFjNzk1NzZmNDk5M2RjZTcwYWQyNiBsZWdhY3ktdHJ1bmsKKzcxOTMgMTgzNDY1NGJlYmUzMjEyZTU2ODRlOWFlNzRiMzhhZGU1ZDA1N2Y4NyBsZWdhY3ktdHJ1bmsKKzcxOTQgNzZiYjIwOTlkNjE4MjlmNjg3MGQ0YTI1N2EyNDViZmQ1ZWMyZjYzNCBsZWdhY3ktdHJ1bmsKKzcxOTUgOTA4NTdmYjU3Mzk3MDZlMGMwMGE1NjBiNjc0ZDA0ZGUzMjk3YzFkZCBsZWdhY3ktdHJ1bmsKKzcxOTYgYjIwMDllZDE1MmZhNWIzYmZmNzU0ZjU0YjhjMTYzOWU1ZmE2NzdlMiBsZWdhY3ktdHJ1bmsKKzcxOTcgYzA3ZTVjNDU1NTc2ZGFhZDE5YTlkYjFhM2ZjOGRhMjFmMTc5YmNjOCBsZWdhY3ktdHJ1bmsKKzcxOTggNDM3NDRiZTI0MzNmNThmMDNiN2EzNzE5YTJhOGY5NTFkY2ZlMzdkMyBsZWdhY3ktdHJ1bmsKKzcxOTkgZGUwMWM2NmY1ZmE1OGJmMjg1ZDNlOTNmODIwNDNlNzU0ODY4YTc5NyBsZWdhY3ktdHJ1bmsKKzcyMDAgODY2OWVkYjFkOWM1NjU4N2I1NDIzYjVmNDAyZjRmZDgwYmFlOGVjMiBsZWdhY3ktdHJ1bmsKKzcyMDEgZjdhOTkxNjFkZjkyYWExYWE0OWMzOTEzOTgyOGZlYjFlMWY5YmU0MiBsZWdhY3ktdHJ1bmsKKzcyMDIgOWFjOWVhODQ4ZDdkYTc3OGNiMjFhNzQ2NWM0MzBkNTllY2Q2ZjI4NiBsZWdhY3ktdHJ1bmsKKzcyMDMgYjIxOGYyOTRiNzI2YWJjMDMyMzkyODllZGUwNGJhN2RkNTFjOTI1NCBsZWdhY3ktdHJ1bmsKKzcyMDQgZTI3ZmEyYTNmNTI2NTAxOTIwOWEwZTNiOWIzY2UzNzQ4ZDczZjRjYyBsZWdhY3ktdHJ1bmsKKzcyMDUgNjJjZjdkNTg5MzAwZWY5ZmM1NWEyY2MyZjNiZTcyZWIyMjlmNmNkNCBsZWdhY3ktdHJ1bmsKKzcyMDYgMDdmMGYyMTM2M2U2NDgyMTlmOGUyNmRlYjhjYWZjNjc3NGVhNTJjYyBsZWdhY3ktdHJ1bmsKKzcyMDcgZDM2NzAxNDIwMGJiNWI4MDExN2FiY2Y1Yjk4ZTFlMGM4YzMwZWQzYSBsZWdhY3ktdHJ1bmsKKzcyMDggM2M3ODEyYmZhMWE0YWFhYjg2NzYwZGJjZGIwYjdlMmQ4MDYxMjlhMiBsZWdhY3ktdHJ1bmsKKzcyMDkgM2RiNDIzNTE1NjI2YzJmYmE3MTMyYTcwNDVjYzI4MGVmZGM4MjEyOCBsZWdhY3ktdHJ1bmsKKzcyMTAgNGEzZjQ1YjM0NzFhYzU0ZTVkNTMwNWM4OTY4MWFhMGJiZjM2NDcyMyBsZWdhY3ktdHJ1bmsKKzcyMTEgOTRhZDU2ZWY1MDczMzU5ODQ3ZTM2NjJmNjhkOGZiMmUzZDQ2MzRjMiBsZWdhY3ktdHJ1bmsKKzcyMTIgNDI2Zjg3YzQ2NWEwMjY2ZjMxNDU0NGQyNGFiNWU3ZDA4ZGU4Y2Y3OSBsZWdhY3ktdHJ1bmsKKzcyMTMgOGVkYjU3YzMzNDg3YmFlZDkzYjkwNTdlZDdhYzg4MDUzMjE2MjdmYSBsZWdhY3ktdHJ1bmsKKzcyMTQgYjAxNjgyODUxYTYzMzY3N2FmN2E4NDEzY2M4YmU0ZGFlNzkwZTc0MiBsZWdhY3ktdHJ1bmsKKzcyMTUgMDYyZTg4NjA4YjU1NTllNjAxY2RjZDFjNDU1MjgzM2JlMjZkOTAzNSBsZWdhY3ktdHJ1bmsKKzcyMTYgYTQ0MDIwMDhjNTY5ZGQ4ZWY3ODhhNTZkOWE4MTc4ZWUzMTZlYmE3NyBsZWdhY3ktdHJ1bmsKKzcyMTcgZWQwMWVjNDNlYjMwZmY0M2Y4YmU2N2Y4N2E2OGVmYTRiYzE5NjVkNiBsZWdhY3ktdHJ1bmsKKzcyMTggMzU3ZDQ1NDQwODVhMmE2ZDFkMzM4YmJmNjJhZDhjMDVlOGU3OTM0YyBsZWdhY3ktdHJ1bmsKKzcyMTkgZTA1MjNmMmQ0MTYzOWM5MDRhYTEyOWE0ZWI4ZWFiNDUyNjNlZWNkZiBsZWdhY3ktdHJ1bmsKKzcyMjAgN2FjZGY1OWYzMWM1ZWMxY2ZmYjdkOGNlNmNjNmExZmI4MDBmNGQ3MSBsZWdhY3ktdHJ1bmsKKzcyMjEgMmNiZGU1ZmM0YjE5YmUxOTAwOTExZmQwNDdkZWE0NjYwMzlhMTYzMiBsZWdhY3ktdHJ1bmsKKzcyMjIgNWIwNWJjYmQ0NTQyYzY0MTdkYjgxZGIwMGEzODVkNTQ4NzcwYTVjOSBsZWdhY3ktdHJ1bmsKKzcyMjMgZWExMjY1ZjI2YjMzMjc0MDk1ZGQyY2MzN2Y1ZDI5NjQ5ODJhYTc5NCBsZWdhY3ktdHJ1bmsKKzcyMjQgZGRlYTY5ZjkwNzFiYTgyZDliOTg5NGU5MjQ3NTcxY2FmZTZmNjUzMSBsZWdhY3ktdHJ1bmsKKzcyMjUgZmZmY2M1MmNkYzFlODZmZTNhOWEzZmY3MThiNjlmNmJkMWRhY2JhNyBsZWdhY3ktdHJ1bmsKKzcyMjYgN2FiODM1Zjg3Zjg2ZDIxY2RiYzdiNzQwYmY0ZmM2MmI3MGRlNjgwNiBsZWdhY3ktdHJ1bmsKKzcyMjcgNzM2N2ZiMTA3MTA4M2VlMzM2YjA1MjJmOWNjYjIzMWFjOGY2NTljNCBsZWdhY3ktdHJ1bmsKKzcyMjggN2IxZTc4NGUyMGEwZWNkNTBlZjU1MGQwZDllNjE4N2ViNDc4NmViZiBsZWdhY3ktdHJ1bmsKKzcyMjkgMzA3MDNhNjU2ZDEzNDVjZGZmZjQ4Y2RhYzYxNDg5MGYyZDgxYjhlZiBsZWdhY3ktdHJ1bmsKKzcyMzAgMWRlOTZjNTcyYjAyYmM0YWJlODJkNGExOGQyZDE0ZmYxY2M0ODczNSBsZWdhY3ktdHJ1bmsKKzcyMzEgMzAxZDdmNmFjZjBhNmQwMWVkODY1NzIxZGU0ZjVjMmY3NDA0YTlkMiBsZWdhY3ktdHJ1bmsKKzcyMzIgZTFmMTcyNWNhZTZkYTgzMDAxYTNiYTBhNDMzMDljYThkOTI4ZjM5MyBsZWdhY3ktdHJ1bmsKKzcyMzMgNjA1ZmJhMDJlMTk1MDc3NjI0MzdhMTQ2Zjc4OTE2MjAyZWUyOGE0NCBsZWdhY3ktdHJ1bmsKKzcyMzQgM2ZjNjA0MmEyYWNiODc0YTJkZGQyMjU1NTdiZDAzMjYwNzMzN2I4ZCBsZWdhY3ktdHJ1bmsKKzcyMzUgNWIyMmUzMmVhYTE3NjRlM2Y2OTE2MzVlZjUzMmQ0MzdlMWI4MDc0MCBsZWdhY3ktdHJ1bmsKKzcyMzYgZDdlZWE2OTRjZDNhMDRlNmU2NTBmMDExNWM4YzJiZmRmZjQ1YWM2ZCBsZWdhY3ktdHJ1bmsKKzcyMzcgZjkyNjI2M2ZiNjU0YzI5Yjg3OGY5YTgyZGE4YjgwODY0MTJkOTE0YyBsZWdhY3ktdHJ1bmsKKzcyMzggMzg2ODlhY2VhZTdiNjBjNWI4YWM2YmZkNDBmNDdlM2QzY2ZmODI0YSBsZWdhY3ktdHJ1bmsKKzcyMzkgODg3MTRmYmY5YTA2MjZhYTYwY2QzNDJkYTgzNWQwYmNlNzdmMWQ5ZiBsZWdhY3ktdHJ1bmsKKzcyNDAgZjhiMzZjMGVjMTE0YWVkZGIzM2QzN2I5NGNkZDIyZTRlMjAyNjVhOCBsZWdhY3ktdHJ1bmsKKzcyNDEgOTYwNGQ2Nzg0Njc1YzJkZDhlNTAyZTRlMWU0YTAwMWRlOGEyMzRmMyBsZWdhY3ktdHJ1bmsKKzcyNDIgNjNkYWUyNzNiMDdkODU5MzE1NDRkOGY0NmRkMWY1ZDE4ZWRhYTJmYSBsZWdhY3ktdHJ1bmsKKzcyNDMgZjdhNjFjNmE2NWMzNzk3NDcxZTY5NDZjYjFlMmM2NWQyOTMyNzQyNCBsZWdhY3ktdHJ1bmsKKzcyNDQgZWVjYmNjNDhiMGU5NzZjMmJmNjEyM2MxMmZiNjgxN2ViODhiNDE0MCBsZWdhY3ktdHJ1bmsKKzcyNDUgNzIxMDhmYWE1NmJmMTQ4NzBkN2E3ZTY1OGQ1M2YzMWE0MTY1MjA5NCBsZWdhY3ktdHJ1bmsKKzcyNDYgNDcxMDcwMTY5MGMxYzZiZGI0MzQzMzg0NzZlMTQyZGRiMDQ1ZDFlZCBsZWdhY3ktdHJ1bmsKKzcyNDcgYjg1ZjEwYWU0ODU3ZjExNTFjZWZjZWE1Mzc5NWNiYTA0MTUyNzUzMyBsZWdhY3ktdHJ1bmsKKzcyNDggZDU1ZjMxMzM4ZmRjZjg1M2NjODI1ZTUxZDhmOWVmMjY3NmFlYzQ4MiBsZWdhY3ktdHJ1bmsKKzcyNDkgOWU0OGFiYmVlNmM1YzA1NDE5MWZiMjAzMmZhN2Q5NGEyZjcxZTM3ZiBsZWdhY3ktdHJ1bmsKKzcyNTAgMGQwYzQxM2I2ZjI1Mzk3NTY4ODZjMDVlZTlmZjU2YWUxMDIxYjg2NiBsZWdhY3ktdHJ1bmsKKzcyNTEgNGRlOGI4NmJhMjU1OTFhNDA1OThhZGRmZTVkNDM2MTM4NjcwMzMzMiBsZWdhY3ktdHJ1bmsKKzcyNTIgNTBkNmRjNDU4YWEyZmJiZmY2ZjI4NDJkY2NjMzc3ODIxYTRiOGZmZSBsZWdhY3ktdHJ1bmsKKzcyNTMgMWNjYWE0NDFkMDgzZjAwNDJjMTgxYzBmZjM1M2E5ZjMwNDIyNWNhYyBsZWdhY3ktdHJ1bmsKKzcyNTQgYTU3MWM3ZjA4OTkxNmRjYmM3NWNhM2E0ZDY1MzlhODE5Y2Q0OTA3ZiBsZWdhY3ktdHJ1bmsKKzcyNTUgYWJlZjUwMDZmODRiZGM3MDZiNzMzMjZjYzEyZDViYWYzNTM3ZWZjNiBsZWdhY3ktdHJ1bmsKKzcyNTYgNzU2MmE2ZGY5MWZiNGJlYmM2NDVhZGE1NzFlNzY3ZGRmY2IxYjA1ZSBsZWdhY3ktdHJ1bmsKKzcyNTcgMjQyNmEyMjA2NjRiMThiM2RlNDYxMzE4ZTFjZDQxMDIxYzVjOGU3OCBsZWdhY3ktdHJ1bmsKKzcyNTggZmViYTZkNThkMjA0ODlmMDE2MzhjMWE1Y2RlODc2OGVlZDk5OThlYyBsZWdhY3ktdHJ1bmsKKzcyNTkgZTQzMzYyOTEwYTVlM2UzYzdkNTU5YWZiMTk2MjA5NmEyZWI3MzA0MCBsZWdhY3ktdHJ1bmsKKzcyNjAgOWZjMzgwYjFhNDQ1YWExNGExMmY2NWRiNTc0Mjc0YzA1ODdiOWNhMiBsZWdhY3ktdHJ1bmsKKzcyNjEgMDk0OGYzOWVlOTYwZTQ3ZWI5NzJkM2ZkZDMzZWE4MjkxZDAwYTFmNiBsZWdhY3ktdHJ1bmsKKzcyNjIgZDdlNjY1M2QwODRmNmZiYzBlNzU5MTQyYTdlMjI2MzUxMDJiYjA0OSBsZWdhY3ktdHJ1bmsKKzcyNjMgZjIzMjFlNDIzMDcxN2U1YzU5NzdlODlhMmJkYzcwNzNjYjQ3NDk3MCBsZWdhY3ktdHJ1bmsKKzcyNjQgZDQ1YmE2NGI4MmZkNmJlZjI5NDM0ODI0Yzg5ZWVmOTFkMDg1MmRjNCBsZWdhY3ktdHJ1bmsKKzcyNjUgZjM3NTgyMzE0MTIzMTg1YTA1ZDRlMGEyYjRmOTlkZDNhNzNkYjdmMCBsZWdhY3ktdHJ1bmsKKzcyNjYgYTJmZDgwZWVkMjdmYTE3MmI2MWZmODVmMGZmMjEyMzc1NDYzYTU0NiBsZWdhY3ktdHJ1bmsKKzcyNjcgMGI2YjFiODgyODY2YjYwYTE4YWNiY2RlZTQ0NTI5YjRjNTQxMjY5NiBsZWdhY3ktdHJ1bmsKKzcyNjggYWFiZjRhMDNhNGIwYmJmMWJiYWY0ZWRhODI2Y2MzMTgxZTZhMDMzOCBsZWdhY3ktdHJ1bmsKKzcyNjkgODBjMGNhNDI0NTEwZTc5Y2M0NjI2YjI4ODA0ZWRlYzc1NjBiNDU3MiBsZWdhY3ktdHJ1bmsKKzcyNzAgYjY1MjBjNDVlYjA1NGU3NzA1M2M0NzU5ZWI5NDUxYWEzZDk4MTUxZiBsZWdhY3ktdHJ1bmsKKzcyNzEgYmY3MmE5NGVlOTZiOWIzY2NjYWQwNWNhY2MzN2UwYzUyZDVmNWQxYyBsZWdhY3ktdHJ1bmsKKzcyNzIgNTIyNThiMDIzYWEzMTc4MWJmZTliYjIzMWNiNjhlYWYyYWEzOTE3MiBsZWdhY3ktdHJ1bmsKKzcyNzMgNWRiOWFkNjAzMjZkYzhjMWQ5ODc1YzBjNWEzOWI1NGYyZWVhZWNjNiBsZWdhY3ktdHJ1bmsKKzcyNzQgZTcyYjJlZDM4M2E5OGI0ZmJjMGZhMGM2MjM0NWRmMGY1ODVhNjFkOCBsZWdhY3ktdHJ1bmsKKzcyNzUgZTJhN2ZmNmY0MTg4NzE4ZjMwM2NmNmVlN2Y2NTdiZjkzNDYyOGU1ZSBsZWdhY3ktdHJ1bmsKKzcyNzYgMmQ1ZWUzNzRhNzNiODVkNzMzYzIwNTNiMzFmMGNmMzg1NDc5NjZjMCBsZWdhY3ktdHJ1bmsKKzcyNzcgODY3ZmVkYTAwODQwN2YwZDcxN2E0NzNjNWQ5N2QxNWEyOTdmMTVkNyBsZWdhY3ktdHJ1bmsKKzcyNzggOTk2NWRmNzgyYWZjZjQyYmE3ZmNiZTIwMDc1ZTU5MzdiYTEwZGRiYSBsZWdhY3ktdHJ1bmsKKzcyNzkgYTJjNDI3ZjlkYjAyYjliZjFiOWFkODA5NGNmZGMyYmVjZWU2MjZhOSBsZWdhY3ktdHJ1bmsKKzcyODAgYzcxY2ExNWM4YjU1NWNkOGY0YzRmMWRiNTc4ZDE2YzkzMDk2MGIwNiBsZWdhY3ktdHJ1bmsKKzcyODEgYTNjNDc3MjU5NTA1NDQzMDhiZGY4MmMzYmMzNGFkM2FmMDc5NDJmNyBsZWdhY3ktdHJ1bmsKKzcyODIgOGQyYzhiMDgwNDAxN2Q0MTMxNjU3Y2Y0ZjBiYzhiMGRmMjgwZGY0YyBsZWdhY3ktdHJ1bmsKKzcyODMgMDlkNmM1NzA4OTk5ZTYzMjc4NTEyZTQ4ZDIwMjQwYmVlMWI3ODA5MiBsZWdhY3ktdHJ1bmsKKzcyODQgNmY4YjVjM2NkNmNiMmU1ZjJhNmZlZmFhMTljYWMyZTk4NThkZjhjNCBsZWdhY3ktdHJ1bmsKKzcyODUgMmNiNDY5YTQyMWE5NzgzN2ZkMjVmZTg3ZjQ1NDIxZTM1YjE4NWQ5YiBsZWdhY3ktdHJ1bmsKKzcyODYgOWFlM2NjY2ZhN2NkZTEyOWJkYTU5MzAzNjMzNjJkYzcxNzJkMjNiMiBsZWdhY3ktdHJ1bmsKKzcyODcgZGIyMzBmZWZhNzAyMzk4YjYwNjhiMTM4OTJiZDg4OTk5NmU0MWI0YSBsZWdhY3ktdHJ1bmsKKzcyODggYjZmYWRmMDIzMWFmOWIyNjM5ZjkyNWUwMDQyZjVjZjAwMDc3ODE1NCBsZWdhY3ktdHJ1bmsKKzcyODkgOTgyMTM2MDRmOTQxNGZkNDVjZmFlMjhkODc4YmU1MmQ2ZmIzNzBhYiBsZWdhY3ktdHJ1bmsKKzcyOTAgZmIxOGNlOGMwY2Y2YWJiMDYzZTRhZjQzZjI3MDg0MjY1OWZhNTFhMyBsZWdhY3ktdHJ1bmsKKzcyOTEgYzQ0NTQwZDUyZDEzNjk5MTA3NmFlZDA4YzgwMmVhYTY5N2Y5ZmUzYiBsZWdhY3ktdHJ1bmsKKzcyOTIgMGY3NTE1ZWJlM2JmNGVhZDJkZjA5YjM5ODZhOGI0ZmUxYzk3YzA4ZiBsZWdhY3ktdHJ1bmsKKzcyOTMgNjdhNTIyMWEyZjYwZjkzOWNjM2I0ZmNkYWFjMzQxNmRmOTI1NTUyNCBsZWdhY3ktdHJ1bmsKKzcyOTQgOWJkYTM4YzY3ZjRlYzI1YzBmZjVmMjE4YTc3MzM4ZmJkNzgxN2ViOSBsZWdhY3ktdHJ1bmsKKzcyOTUgZTcyYWMxZGM2MTRmMmEwODYwNDI4NDQ2MTE1ZDM5MmU2Zjg3ZWVhMyBsZWdhY3ktdHJ1bmsKKzcyOTYgMzkxZjA4YTk3NDZiOTZkMmJmNDA1NWVmYzk1ZTNiZWU1YTJmOWZiZiBsZWdhY3ktdHJ1bmsKKzcyOTcgNDRlODZkYWRlYzk0NGJjMTQ5OGIzYWFmODljYzQ1YzUzOGNjYzFjOSBsZWdhY3ktdHJ1bmsKKzcyOTggZjQyYmNhM2Q3YmUyMWQzMGMxNzdiYjkxNTMzNzUxYWU3YjFiMjE5MyBsZWdhY3ktdHJ1bmsKKzcyOTkgODc4M2NmZGM3YzZmOTkzY2JhNDgxMTZhZjg1YzMyZDgzYzAzMjQ2YSBsZWdhY3ktdHJ1bmsKKzczMDAgYjhhOTdhZDVmN2NlZDNhNTQ1MDc0M2IxMTBjOWI0OGFlYmUwODgzMyBsZWdhY3ktdHJ1bmsKKzczMDEgZjNiOTJjOTVlODViMzYyNmEwZWViOGMzNDlmYjAyNGEwNmYzNmQxYiBsZWdhY3ktdHJ1bmsKKzczMDIgYmU0ODFmM2FkYTBiZGFhMzA4Yzg1NTgyMzA5YWM1ODQ5Y2ZhZjNmZSBsZWdhY3ktdHJ1bmsKKzczMDMgOTdhZTg0NjZkMWM0MjA3NGUyMTlkNWUzYWRjMTgyZjkwZTI3NzFjYyBsZWdhY3ktdHJ1bmsKKzczMDQgNWEyZTcyNTJjODkwMmQ0ZDZkMTg2NjRkNjQwYWE2MWVjNmMxODdkOCBsZWdhY3ktdHJ1bmsKKzczMDUgNDM0MWZmNWM2OTdjZmVlMmE1ZDAzYWUxNzFmMTJiODhlNmZmMjNiZiBsZWdhY3ktdHJ1bmsKKzczMDYgZDg3ZTg3ODUzOTU4ZjNlOWU5M2VmNzY3NTg0ODhiMzJiMmJhZGY1OSBsZWdhY3ktdHJ1bmsKKzczMDcgNTBmNDk4M2I2Yjc5ZDE5MjIyMTkzODlhY2JkZjIxZTA2N2QzOWM0MCBsZWdhY3ktdHJ1bmsKKzczMDggMzM5ZDBjNDlmMGI1NzM4YWY0MjI5MzY2NzY0YjljYmQwODg3MjhlMSBsZWdhY3ktdHJ1bmsKKzczMDkgYzdlOTlhYjYyN2YzYjc0MDI5NjliYjgxNGMzMzAyYjUzMzcxZjEwNyBsZWdhY3ktdHJ1bmsKKzczMTAgZTA1NDgwZGI3MWFiMTEzOGRlMzViMzRjZDJmOGVkNWQ1MGI0ZGY5ZiBsZWdhY3ktdHJ1bmsKKzczMTEgYWNiMDUwMWQ5M2VmOWQzMGJmMDUzZmQxYTgyYmU3Zjc4ZjhmN2FlZiBsZWdhY3ktdHJ1bmsKKzczMTIgOWUxYWM5ZWJlNzlmNTFkY2QyNDNiNTMzZmNkMGNlYTZkOTBiZjVjNiBsZWdhY3ktdHJ1bmsKKzczMTMgNWMxOTUxZDU3M2IxZDliZjMxZmYzNzg2MDAxYmNmN2RmYTdlNjQ3NiBsZWdhY3ktdHJ1bmsKKzczMTQgNDU2N2UxNThkMjBjNTEyOTJiMmNmODc2NzFhZjUzNWQ5NmIwMWZiNSBsZWdhY3ktdHJ1bmsKKzczMTUgMzVjNjQzZTkwMjNlNzJkY2RkYmVmNTZhNDgzYWUxNDE1MzY0YTk1MSBsZWdhY3ktdHJ1bmsKKzczMTYgYTdiOWM3YzgxMzM3NjMyMWE4MjQyMTEyNzcxNTk5NTAyNTNkNGNhOCBsZWdhY3ktdHJ1bmsKKzczMTcgODQ2NzlmN2JiZTZkNTg0OGE2MDVjMTQwYmQ4YTAwZDBhYjVhYTVjYyBsZWdhY3ktdHJ1bmsKKzczMTggMzhhZTJhMGZjNGYzM2M2ZTZhZDBjN2YwNmZmZWU4YzA5ZjJjZjk4OSBsZWdhY3ktdHJ1bmsKKzczMTkgNTU1ZjZlNzZkMjA3ZGNjZDNkYmJjYTQ5NWRlZWZkYzM3YWZlNjYzMCBsZWdhY3ktdHJ1bmsKKzczMjAgMGJkZDMxNTM4ZDhmZDY2NjcwYjFiODdjMjcwNzcwZTc3MjE2YWZkZCBsZWdhY3ktdHJ1bmsKKzczMjEgOTcyMDI2ZDQ3Mjc0YWVhNWFkNmYzYWJlNzdkNTMyNGNiM2RjMjRkZSBsZWdhY3ktdHJ1bmsKKzczMjIgZDUzODEyZDY4NDA4YzYyNGZjODgyYjdjOTZjYjY5MzAwNTY0NWFlZSBsZWdhY3ktdHJ1bmsKKzczMjMgNTI2OTVlZmRmMjJjMmE4NWU4Yjg5YTU4MDRlYzk4YWNjZGI3ODU4ZCBsZWdhY3ktdHJ1bmsKKzczMjQgMGE0OWQxOTI1MDZkY2JhNjJmNzQyMTNhYTY5ZThlOTUxYmI2MWQ2OCBsZWdhY3ktdHJ1bmsKKzczMjUgMGUxODk3YTFmMGQ1MmNiMDlmOWFiZTUyOTg1MzE0ZDI5MjBlZDM2YyBsZWdhY3ktdHJ1bmsKKzczMjYgZjgwODAwMWEzZTAxMzdhY2JmZjEyZDhiNTQxMzkxMTI0NjVlYzM5NyBsZWdhY3ktdHJ1bmsKKzczMjcgMjljZWQ0ODVhY2EwOTgzNTZhMmJkMzdhZThkYTUzNDEzODQxNGM4MSBsZWdhY3ktdHJ1bmsKKzczMjggY2Y5MDc0NTM4MWJmZmQwYTY2MzM1ZWM1MDU2MTJjNWFjNmFhMDQ5NyBsZWdhY3ktdHJ1bmsKKzczMjkgMTY3YWQzOTQ0ODhjY2FiMWE1M2ViODkyODI0OGQ4NGFhMDNmY2NjMCBsZWdhY3ktdHJ1bmsKKzczMzAgNDNhYjBmZWZlNGExNTZhZjdmNDRlMjgxNDYxNmFlZGI0NzVhMzhmZiBsZWdhY3ktdHJ1bmsKKzczMzEgODhkYmZhMmJiOWRjZWZmYzBlMzhiNDk1MjQxNWZhNTZmMDY2YzViZSBsZWdhY3ktdHJ1bmsKKzczMzIgZTBhYWVlN2ZkMWZkNDU0ZTZlNDYwYjI2ZjI1ZWU5ZWFjMzg5ZTY3OSBsZWdhY3ktdHJ1bmsKKzczMzMgMTk4OTg5ZWUzNmQ1NmE1ZDNlNTVlNTgxYjhhMzM3ZDI3YmEwYmVhZCBsZWdhY3ktdHJ1bmsKKzczMzQgYWI0NjFjNzYyNTU5YTQzMWJjNDA4OWY0NTFkZDRiNTA3ZGE3NGM2NSBsZWdhY3ktdHJ1bmsKKzczMzUgNWM2ZmJkYzUwZTFkNjQzOThkZjkwNjk4ZjYzMTQwMzZiZDc4MmRlYyBsZWdhY3ktdHJ1bmsKKzczMzYgNjljYTVlM2NjYzZkYTgyNTE2MmM1YWU5YzM3MDg3MmM3ZTk1MmEzYSBsZWdhY3ktdHJ1bmsKKzczMzcgN2Q3MzE5ODExZmYwYWUxMzcxZTFjMGU3YzY5Mjk0OWFlMGZiOTE2ZSBsZWdhY3ktdHJ1bmsKKzczMzggYjE3MDdiY2RjMjY1MjZjYzc1OWQ1ZjA2N2IwMjc2ZWFmN2E4ZGFiNyBsZWdhY3ktdHJ1bmsKKzczMzkgYTUzOTA4ZDA5YTA0YzAxMDMwMjFlMzk4NmU3ODAxNDZhNTNmMzYzOCBsZWdhY3ktdHJ1bmsKKzczNDAgZjUwNzNlMjQxNDdjMDc4ODE1ZjUwMWY4OGZmNDFlYjg2ZGNiMmUzZiBsZWdhY3ktdHJ1bmsKKzczNDEgMzk2MDM0MGEzMjUyMDhjNGU1ZDc5MGYxMmZjM2Q0NTVkYWM4MzQ2OCBsZWdhY3ktdHJ1bmsKKzczNDIgZTNmMmFiMGIwYWExNmQyMDAzMjJmNjcwYjBlNzc3NzQ5N2RhOGUwNiBsZWdhY3ktdHJ1bmsKKzczNDMgYmY0ZGIyYTRiYjU0MDc5ZWQwN2IwYWE2ZjE3OGViODc0ZTUwMWU1NyBsZWdhY3ktdHJ1bmsKKzczNDQgMGVhMGZhYzY4YzFjOWQ4Zjc2ZDVmN2Q3YWVjM2YyZjI3ZTYzMmNhOCBsZWdhY3ktdHJ1bmsKKzczNDUgNjhmNDEzNDg2OWRiMDNiNzdjYWQyZmJjY2QwNjNiMDI0ODY4OWViMiBsZWdhY3ktdHJ1bmsKKzczNDYgYTcxNTliYTBlNDVkMWQ3NDk0NDY2MWY4YTNiODg5ZmFiMmQxYmE2MyBsZWdhY3ktdHJ1bmsKKzczNDcgZGE1M2U0OGVmZWE4NjBhMmRiMzNkZTNjNWJhY2VjMmFlOTY0NjIyYSBsZWdhY3ktdHJ1bmsKKzczNDggMzJmNmIwZDNhNjZmYmYwODhiY2M2ZjNkYWUyODQ2ZGM4YTM0OWM3ZiBsZWdhY3ktdHJ1bmsKKzczNDkgMDNiY2RkMjJmNmE0YzJhMjdlN2Q3Yzg0ZDExMDIwNjNkZGViZTlkNCBsZWdhY3ktdHJ1bmsKKzczNTAgOTExMDQwZTFiYjExOTE4NGJiNTkzNDI0NzhmNTQwMjg0ZGQ4N2NkMCBsZWdhY3ktdHJ1bmsKKzczNTEgMGYxMGZhNzUyY2E5MjU2ZjNjN2JjZjg5Mzc3MDQwN2U4MTFhNWQwOSBsZWdhY3ktdHJ1bmsKKzczNTIgZTU3YThkZTVhZWIzOWIzMDFkY2NkZDY5OGQxYmM1ZjU2YjRhZDFhYiBsZWdhY3ktdHJ1bmsKKzczNTMgYTllN2UwY2NhYTRhYzBjMTA1ZjYzZDczMjc4NmZlMTZmZmMxMzQ4OCBsZWdhY3ktdHJ1bmsKKzczNTQgNDUxNDAyMzE2MGI0NWQxZTJjYzBkNWZkNDBhOWY0NmIyYjNlZWUwMSBsZWdhY3ktdHJ1bmsKKzczNTUgOWE3ZTlmMTBhZWQ2MjA4ZWJmZDgzOTg5OWJmMjg4ZDdkZjU4NjRlOSBsZWdhY3ktdHJ1bmsKKzczNTYgMjI0MWQzMTI2NThhZTc3M2QyNDY2Yjk5MjUyMWE0NjMzODA0MzY0MiBsZWdhY3ktdHJ1bmsKKzczNTcgOGQxN2Q1NTJkMGVjMDVkYWM2YWQ4MWVkNjMxNDMzMmNkMTczZmJhMyBsZWdhY3ktdHJ1bmsKKzczNTggZTc0MmI1OTNjMDkyNjNjZGVkYmJjYTU1ZWM3ODZiZWI3ODZhNTdmMSBsZWdhY3ktdHJ1bmsKKzczNTkgNjVjYjI2MWY3NzM2YzlhNDNkZjgxZGZjNWY3NjJmOWQ1MzNlNjExZCBsZWdhY3ktdHJ1bmsKKzczNjAgMzgzYzY0ODYzNDZmNjYzM2E4ZTI5Yzg1NWMxZjM5OTQwYzNmMzcyMyBsZWdhY3ktdHJ1bmsKKzczNjEgMjFjNDFkM2MyNmI2NTExYTcyMzllNmU4ZTQ3NTcxNjU3MDY4YjZmNiBsZWdhY3ktdHJ1bmsKKzczNjIgMzQyZDJlZWQ1NzNhNTc4YjJlNjU2OWEzZWRmMWUyNTk4NmRjZWI4MSBsZWdhY3ktdHJ1bmsKKzczNjMgZjEyNjExODY3MjJjZDIwOWQ0ZTVmYjNiZmNjODA2YzkyZDJiY2JhOCBsZWdhY3ktdHJ1bmsKKzczNjQgOWM2YjVhNjVjZTYzMDBkOGQwYzZlOWJmN2E2MTkwMmI3MzFiYmNhOSBsZWdhY3ktdHJ1bmsKKzczNjUgOGE2OGY4MWJhYWQ2YjE2OTExMzE2YWRmMzkwNjA2Yjg2ZWI0NGY2YiBsZWdhY3ktdHJ1bmsKKzczNjYgZDM5OWE0NTM3ZjZkZTBmMjA0YzljYTZlZDNkZmQ0YTdjM2U4YmU2NiBsZWdhY3ktdHJ1bmsKKzczNjcgMWMwODljNWI2NmU5OTA5NTRlZDU3YzlkN2JjODNhODQ0OGMwZmQyZCBsZWdhY3ktdHJ1bmsKKzczNjggYzJlYWMxMjZlOGZmYzA4NzhjNjQ5OWY4ZjQxZWEzYmE0ZjU1MjczYSBsZWdhY3ktdHJ1bmsKKzczNjkgZjMxZjQ3ZmYxZmRkM2Y0OWIyNzFiOGJkNTU1YmMxYTMxNDA2M2Q1MSBsZWdhY3ktdHJ1bmsKKzczNzAgNTU2ODMyMGRhOWI1OWFlYmZlZjI5MTc1ZTUxZWE5ODdmMzBmOGExZSBsZWdhY3ktdHJ1bmsKKzczNzEgNTBhYmIwODUwNzQwNDY5ZWQ4YmYyZDEwMzMyOWY0Y2FjY2RlMzkzOCBsZWdhY3ktdHJ1bmsKKzczNzIgOTBjMjFkZGU0Mjg0M2ZiMDRjNTRkODhmMzI5NWU5Nzg0NGM2NjY3OCBsZWdhY3ktdHJ1bmsKKzczNzMgNGY4N2ZkMmQwNTYyZWFiMTg0YTU3Njg0OGViZTQwZDUwMmIzMTk2MiBsZWdhY3ktdHJ1bmsKKzczNzQgOWVmZjc4ODBlNjg0NDgwNWI5M2I2MDg4YzI1YzNjZTFjMGQxMjA3ZCBsZWdhY3ktdHJ1bmsKKzczNzUgMzdlOTdhMzEwMjQxMWQyMGQxNzI1NjViOWM5YjlmZWZhZDIxMzZmMSBsZWdhY3ktdHJ1bmsKKzczNzYgNzcwMTA0YzhmODRhMGFmYTMwMzQ5OTI0ZWIzYTQ3NDBmZTliMzVjNyBsZWdhY3ktdHJ1bmsKKzczNzcgZDQ2ZTQ3OGI1NzY3YzM4OWYzZTc3NDMzZDY2ZmFjMTA5YjdiODczMiBsZWdhY3ktdHJ1bmsKKzczNzggNmE2MjlkMjc4YTE4YjkyMmYyYjM4YzZjMzE1NTk5YTNmYTU4ZmFhNiBsZWdhY3ktdHJ1bmsKKzczNzkgNWRjMjBhOWUwNTA2N2JhMTcwMzY3ZTk4MDNlMzk2NzRiMWMzMWNlNCBsZWdhY3ktdHJ1bmsKKzczODAgMzIyMjBjNTcyOGY1MTQ4NmUwZDMxOTk2ZDY3MDM0MDJlNzQ0MmU4MyBsZWdhY3ktdHJ1bmsKKzczODEgZmNlNzgxYjEyN2I5MmYzOWQzZjczZTUxYmEzOGJhMTMwYTU5NzRhNiBsZWdhY3ktdHJ1bmsKKzczODIgZmQzNjI2NTExZGFkZmNjYjRlNTNlNjc0YTBmMzhjNTEzMmY1MTQyNiBsZWdhY3ktdHJ1bmsKKzczODMgY2ZhMTI4MjkwMmRhY2RhMmVhYWFlOGIzY2RjMDRiZmQ5NzVkNTZiNyBsZWdhY3ktdHJ1bmsKKzczODQgMDgzNGFhZGRiZjFmZTQ0ZTIxM2JiNDE2MjZlZGExZjI2ZjkxYTIyYyBsZWdhY3ktdHJ1bmsKKzczODUgZmNhZjlkMTE5YWJmZGMwOTBlZjgxMDY0OGQ4Mjk2MDkzMjk5OTgxZSBsZWdhY3ktdHJ1bmsKKzczODYgMjE4NzhjODQ5NjI2YWUxYjc0MmY4YWFmMWFiYTMyZmEyNzlhMzQ5YSBsZWdhY3ktdHJ1bmsKKzczODcgNGI1OTBmNThjNmE3YTM5M2YzYTFkNmVhMTkyMjZlYjhiNWY5YTkzZCBsZWdhY3ktdHJ1bmsKKzczODggOWUyYzNjNmQ0ZmExNWM4ZmI4NDM2MGI4NTJlZjNkYjdjMjM4ODhmYiBsZWdhY3ktdHJ1bmsKKzczODkgMjUwYmRkYjJlY2NmMmRiY2QwNDUxOTQ2ODE1ZDhlZTU0ZDE0ZjViNSBsZWdhY3ktdHJ1bmsKKzczOTAgMTRlZDkwOWE5YzgwOWY3ZWFiYWZiNzhmODdlYzdlZDIwMTUyZDAyZSBsZWdhY3ktdHJ1bmsKKzczOTEgMDc5ZWI2OTQ3MWU1ODMzOWMxZWJhY2QwYmM3YTM4ZmM2MzY5NDRjNyBsZWdhY3ktdHJ1bmsKKzczOTIgMWJjZDQ5NzJkYTdlODZlNDRiZDlhMmU3MDFiMDVhZmQzZGNlOWY1ZSBsZWdhY3ktdHJ1bmsKKzczOTMgMmE0ZDNkOTliOGE0NWE4YzJjNmY5OWJmNTJjMTUyYmIwNjY5ZWFiNSBsZWdhY3ktdHJ1bmsKKzczOTQgZjhlNWJjNTM1MWE5NzNhZTg0ODUzMGQ1YWM1OGE3MDM5YTllYWVlOCBsZWdhY3ktdHJ1bmsKKzczOTUgZTc3NTg1YWYyYTIxNjU1ODI4NjRlZTg2MDdiYjcyMDk0NGE5Mjk3NSBsZWdhY3ktdHJ1bmsKKzczOTYgNTU4YWJhYzc1OThkMjkwZWU5ZDJkZWJjMDEyZThkYThlZGY4MDc2ZiBsZWdhY3ktdHJ1bmsKKzczOTcgMmRlYzM2MzQ1NjY1ODMyMmFhMzhmNmVjMThlNjU4NmY2NDA2Yzk1YyBsZWdhY3ktdHJ1bmsKKzczOTggYWU1NzM5MjJmZGNkYWNjYjYxYmJlMmEzMzQyNjQ5M2E5YWQ0YjM2YSBsZWdhY3ktdHJ1bmsKKzczOTkgZjA3ZTE4ZGIzNjZjNDkxYzRlYmRlMDZlZDAzMTU4MzBiNDNmYjhiYyBsZWdhY3ktdHJ1bmsKKzc0MDAgNTA3YzQ2MDIwNTI2NGQ1OGUzNDA4YWIxNjI1Nzg3YjkyOWE2M2QwMiBsZWdhY3ktdHJ1bmsKKzc0MDEgNzA2OWEyYmY1YmFmNmE5YTU2YTlhMmU3ZTkyY2FlMGY5ODA4MDI2YyBsZWdhY3ktdHJ1bmsKKzc0MDIgMDQwNDkzZGU4NDhkOGRkNzI3NWQ1ODU4MDM5NzQwYjNiMTllYTM0OCBsZWdhY3ktdHJ1bmsKKzc0MDMgOWJlNjVlNmMzNWM4MjZkNGY3MDlhZDdmNjUxOWI0NjMxMzMzNDBjNyBsZWdhY3ktdHJ1bmsKKzc0MDQgNTEyNmQ0YjgxOWU5ZTE5YzVhYjI1NDM2NzViMDFkOTg5ZDFhY2Y4MSBsZWdhY3ktdHJ1bmsKKzc0MDUgNTM2OTM1YzI5NDAxNzNkMWJjNDQyYWVhZDRhMTNhNTFiMWIwYjM0OSBsZWdhY3ktdHJ1bmsKKzc0MDYgMTgwMjNlN2MzODYyZmNjOGM5OGRiYTYzMmU4NWViNTQxZGE1OGI2YiBsZWdhY3ktdHJ1bmsKKzc0MDcgYjM3ODc1MzgyNWEwOTFmZWNiOTRlNGM4N2JmYWQwMDQxNWI1MzkzZSBsZWdhY3ktdHJ1bmsKKzc0MDggYjU2YmMyNWFlYzg1MmFkMjlmZGJmNTE3NmM3OGM5MTIzYTBjMjgxNCBsZWdhY3ktdHJ1bmsKKzc0MDkgNmI2MTkxMmQ1ZjM1OWIwODQxNzlkNTk0ODMxMmFhN2E1ZjgxZGNmMiBsZWdhY3ktdHJ1bmsKKzc0MTAgMDk1YzllZTIzYjU3NmMwMTM5MTg1YjVlMWZjODE1NTMzMDYwNDRlNiBsZWdhY3ktdHJ1bmsKKzc0MTEgN2QwYmZiNDY4MmY5YWY1MjA1MDUxMGVkODAwZDE3NzVjYjQ2MjRiOCBsZWdhY3ktdHJ1bmsKKzc0MTIgNzg5ZGU3YzY2NzEyOTY2MmYwYmE0ODU1ZmI0YjBiMGUwN2M4YmVkNCBsZWdhY3ktdHJ1bmsKKzc0MTMgNzBkYjRiZTFkZDRiMjVjMTI1ZWIyZTk4ZWE1NzhiNzIwMDRkMmRiYiBsZWdhY3ktdHJ1bmsKKzc0MTQgMjE3Y2ZiNjE5OWJlMTE5NjEwYzIyNGNjYjJhODNjOGFlY2YzNjMyZSBsZWdhY3ktdHJ1bmsKKzc0MTUgNWVlZDUxNzUwMjg0MTYzMDQzYmUyOTc3OWVhY2NiNTkwMWRmZmU3OSBsZWdhY3ktdHJ1bmsKKzc0MTYgMzNlMzNiYTdmNDIxYWU3Zjk2YWMwMTAzNDgxNjEwMWUwYTg1NTIyOSBsZWdhY3ktdHJ1bmsKKzc0MTcgYTUyMGM2ODRjZThkYzAwY2I5MzExZTMwMTczNDkyMWJmOTIwODU0ZiBsZWdhY3ktdHJ1bmsKKzc0MTggNTdhZWQxNmUyMTY1YzhiMmNmODc1MTZlY2MxZDZiNWYwZjZiMTMwYyBsZWdhY3ktdHJ1bmsKKzc0MTkgNTI4YzMxOWM2ZTdmZjBkZjFiOTE3M2FiYzg4ODliYmU2MDNmZGM4NyBsZWdhY3ktdHJ1bmsKKzc0MjAgNjExOGNhNTE0MDRkODYwMmZmOTA4YmZlOWRkM2QyYTE2MmM4Njc3OSBsZWdhY3ktdHJ1bmsKKzc0MjEgYmExMWI1OGIyYjBhMzhjMGM3ZTlkMjAyNDc4NDkyOTc2NjY3ZGVmYSBsZWdhY3ktdHJ1bmsKKzc0MjIgNzhkODgwMDQzMTI5ZTA3NDVmMjUyZTM0NTVkOWZiMGI5M2YwMzQ5YiBsZWdhY3ktdHJ1bmsKKzc0MjMgNTY5MzQzNGVhNTM4Yzg5ZmQ1MzVjYjE4ZGU5OTY1MzgyYmVmNDNkNSBsZWdhY3ktdHJ1bmsKKzc0MjQgY2E5YWE0NzQxMWRlNGJhMjkwOTg3NjE2MWFiMDE3MjhmZDg2OTdjMSBsZWdhY3ktdHJ1bmsKKzc0MjUgMTlkODE5YjE2YjgyNTJhMDIxMjkzYjNjNGEzMzAwZWU2YWE2MTY3ZiBsZWdhY3ktdHJ1bmsKKzc0MjYgZGEyYWJiZjkzODdjNjFlYmNhMTVjOWM4ZGU1OGIwMmIzMjEyMWNkYiBsZWdhY3ktdHJ1bmsKKzc0MjcgMDVmZDQzMmQ5ZTJiNjhkOGU5MmUzNDIxMzQ3ZjA2ODEwNTczYmEyNyBsZWdhY3ktdHJ1bmsKKzc0MjggZGE0YTQ5N2JlYTNhOTQ4MzlmODg1ZjMzNzA0ZWU3ODRiZmFjMDc3NCBsZWdhY3ktdHJ1bmsKKzc0MjkgYjFlY2RiMmRhMjQwMDU1MTllMTk2OTlhNGUyMzQ1OGE4NmExYzA5ZiBsZWdhY3ktdHJ1bmsKKzc0MzAgZTZiNzk3YWFhNjlmN2QyMDViNTBlODQ5MTZjNzkzYTVhMjM2ZmIxZCBsZWdhY3ktdHJ1bmsKKzc0MzEgNzMzMjUwMTlhZDM5ZmY1YmYxZGU1MWMxM2NmM2ExMTU1YjIyNjk0NSBsZWdhY3ktdHJ1bmsKKzc0MzIgOWQ1OGQwZTk4NzdlNmU3YWYyYTJiOTdiMDVlYWYyMTMyMzcyZDI3ZSBsZWdhY3ktdHJ1bmsKKzc0MzMgY2U0MzhkMzZkNGZiZjExZDRkN2Y0NTdhYWRjYWRhZGM0N2E0NjVkZiBsZWdhY3ktdHJ1bmsKKzc0MzQgODlkMDc3OTVmZDY5NGZlNDI1MjdmMmY2YzRhZjBkNzJmMjQ0MGZlMSBsZWdhY3ktdHJ1bmsKKzc0MzUgMzhmOWU0NmQyMzE3YjUxMDczYjY1Yjc2ZWJjOGM1YTcxM2RkYmY4MCBsZWdhY3ktdHJ1bmsKKzc0MzYgNWU2MzMyMmY0YzA2MTNiODJkMzE4NDA5Zjg0NzRhNTU3NDJiMmQyOCBsZWdhY3ktdHJ1bmsKKzc0MzcgNzY1ZDk2MmY0NDQ5ODI1NjZmYWUyYzVhOWU4MTkwN2VmMDExOWMyNyBsZWdhY3ktdHJ1bmsKKzc0MzggNWRlZDJiYzE5MDhiMzY1NzFiMTI4YTRhOTlhOTQ2ZWIwOGRjYTgyZiBsZWdhY3ktdHJ1bmsKKzc0MzkgNmNlNjFmMjEyYzNlN2YwMDFmMTNmNTk3YWRjNjgxOGNkOTk4MjAxZiBsZWdhY3ktdHJ1bmsKKzc0NDAgZDg0Y2ExOTc4NjhiMzU0NzFjM2E1N2JiMTJlNjMwODc3ODNjMjAyZiBsZWdhY3ktdHJ1bmsKKzc0NDEgOWJiZDU3ZDM2MDlmYmI0MTMzY2EwYjQyMjA1MWU3YThmMzA2M2FlMSBsZWdhY3ktdHJ1bmsKKzc0NDIgMzcwNWY3NWE4MzU1ZTIzNjU0NGRjZTcwYjZmMzRjNDI0NjBlZDk2OCBsZWdhY3ktdHJ1bmsKKzc0NDMgM2QzMmRhMzdkNjI3ZDhiYTAyMjE2MGFiNGIzODQxYzczMWExZTVhZCBsZWdhY3ktdHJ1bmsKKzc0NDQgMGYxYWU2MmRkM2I4N2UwYTE3MTgwZmRkM2JlMDRjMDA0OTFjZTM1OSBsZWdhY3ktdHJ1bmsKKzc0NDUgODA1NDg3ZDUwNjIwYjRmNTQ2ZTFiOGQxMzA5NzU3MjI5ZjA3ZWUxOSBsZWdhY3ktdHJ1bmsKKzc0NDYgOGQ4Yzc2YTFkMjUwNDA2MmUxZmY3MjE5NTQ2ZThlOTA3ZDg4MDUzZCBsZWdhY3ktdHJ1bmsKKzc0NDcgNmVjZTVjZmI0OWZmZGIzZmRiNDNkMzc3YjdlNGRmOWJjYjljMDMzYyBsZWdhY3ktdHJ1bmsKKzc0NDggN2Q3M2NkYzAxMTk4MmE1ZTcxY2NkYmMyZTBkZGRmYzIyYWU0NzdkMSBsZWdhY3ktdHJ1bmsKKzc0NDkgMzk3NDU1NzRiZjA3YWZjNmYxOGIxZTQ4OGY5OGVjODI0NWI4NjA5ZCBsZWdhY3ktdHJ1bmsKKzc0NTAgYjRhNDAwYjM1OTVlMjRjZTk0OGM4NDFiYWUyOGZkZjE3NjdmYmEwMyBsZWdhY3ktdHJ1bmsKKzc0NTEgMmUyOTQ1ZDgxNjNjNjcxNzI4Mzg4NzVmMTkyMzdkMDEzYzNkMDA2MSBsZWdhY3ktdHJ1bmsKKzc0NTIgOWIxNjk0MzkwODIwZGQwNDQyYWRjZmU1ZGNiZGZiMDY4YzczOGU1OSBsZWdhY3ktdHJ1bmsKKzc0NTMgNDdlZTNiNGUyZDgwMzNjYWNkOTlkNjM1MjhiNGQ2NDNjMjZhNjEyZCBsZWdhY3ktdHJ1bmsKKzc0NTQgYjg2NGI0MTRjNDU3Y2Q5ZTQ0NTYwNWU1YTA4Mjc2ZjQyZjc4OWI5YyBsZWdhY3ktdHJ1bmsKKzc0NTUgYThkN2JmZWM3YzkyYjdjMThhYzllYzg2YzhkMjQ4MGQ4YTliY2RiZCBsZWdhY3ktdHJ1bmsKKzc0NTYgOTk0Mzc2YWY5MDY0ZDMwZjFlODJmYTk5YjExNDQ1NmMwM2U1MDk3NyBsZWdhY3ktdHJ1bmsKKzc0NTcgYjVlN2ZjOGJmOTE5NjM2OGRjMzBmMjdmMmNlODQ4N2JhODJlZGRkMSBsZWdhY3ktdHJ1bmsKKzc0NTggNjZjYmIzN2I0YzBiZDYwMDUzMTk0ODE5NDBmNzY5YTYzNDAzOGMxZiBsZWdhY3ktdHJ1bmsKKzc0NTkgNzdmOTcwMDc2ODMxNDAyNzYwM2EzMmNmMDkwZGVkYzE0ZWNlYmE2MiBsZWdhY3ktdHJ1bmsKKzc0NjAgNDMwOWJjOTdlY2M2YTg3NjllOGE2ZGRjMGFhYzYzOWExNzUyOWRlNiBsZWdhY3ktdHJ1bmsKKzc0NjEgZDhkNTYzYmFmODc0Nzg2N2MwNzA0OWNlYTFkMDczYjNkNDBhNWE0MSBsZWdhY3ktdHJ1bmsKKzc0NjIgMWRlZDk0MzhmYTUxNWQ3NzM4YTAwMmNjMGEwMmY3M2Q3MzA5ODk3MSBsZWdhY3ktdHJ1bmsKKzc0NjMgZGYzODVjYzBkMmUzODcwZWZkODYyZDdkN2Y0OWY1NzNhMjdiNzJmNCBsZWdhY3ktdHJ1bmsKKzc0NjQgNjUxNDhkZWQ1MTA4NGRhZmQ2Y2JkNDNiYjUwMzYwMDA0ZWY1MTZlOSBsZWdhY3ktdHJ1bmsKKzc0NjUgNmUxN2VmNWEyNmM4OTQ0YTg0YjNlMzZhYzA0ODg4ZmNiOGQyYmE3OCBsZWdhY3ktdHJ1bmsKKzc0NjYgODI3NjkxNmUxZWE4ZGNkZTU1ODdjMzg4YTVjODNjMzViYjc2Y2ZiYiBsZWdhY3ktdHJ1bmsKKzc0NjcgMTFiYWNiOGQ3MzFhZDZjYWRkY2QwZDg5YzVlMDFkMGI1OWUzNmRhMSBsZWdhY3ktdHJ1bmsKKzc0NjggYjgyZDg0N2IzZGNiY2NkNjNkZTA3NWUzODc5YTkzNjlkZmIzNGUwZCBsZWdhY3ktdHJ1bmsKKzc0NjkgOWJjNjUyZTlmMmI0NmQyOTI4YjAzMDAzZjA4Yzc1Yjg4MTQ3OTA1NyBsZWdhY3ktdHJ1bmsKKzc0NzAgMjY3ZWQ0ODBlYzFiODRjMWRlMDdmYTg2N2YwZGIyNmI0YzcxNTJkYSBsZWdhY3ktdHJ1bmsKKzc0NzEgOGRlMWY2YjA3ZGY5Y2Q3ZGMwZmMwYjQ2ZTcyZDdkYzBkMDZjM2YwNiBsZWdhY3ktdHJ1bmsKKzc0NzIgNThiYmFmMjg0YWQ2NmVmMGNlN2Y0ODE4ZDA0MDViMzBhYjZjZThhOCBsZWdhY3ktdHJ1bmsKKzc0NzMgY2M0YmE3MjE0YjE4Zjk5N2U5OWQwNzAzMTAwYzhkMTRiYzllNTg3ZSBsZWdhY3ktdHJ1bmsKKzc0NzQgNDY4MTI0YTE1NjBhMmQyZWJhM2Y0NGE2MDUyMTRlYzNhZTNkZWI0YyBsZWdhY3ktdHJ1bmsKKzc0NzUgN2M3YTE4NmI2ZDg2YjJiMjAzMDUwNzMxNWRmZTA5OTRlZTY2NWIxOSBsZWdhY3ktdHJ1bmsKKzc0NzYgMTdjN2ExMzNjY2Y3MTEyNWZkMjQ1OGQ0YTRlNTY3NTcwYzcyYjdlYSBsZWdhY3ktdHJ1bmsKKzc0NzcgYWUzYjQ2YTczNzY1N2IzZjQ0MGFiNzU2ZGNjMTY1YjcwZGJlZThlZSBsZWdhY3ktdHJ1bmsKKzc0NzggNjVhYWNlMjAxMmU1MmMzZjE5NDkxZTg5YzE4NDIyOTBkZGQxYjFmMSBsZWdhY3ktdHJ1bmsKKzc0NzkgNGM4ZTRlOTMxMWU0ZTBlNTJlNTA5MmVjYmFkMWJhMjY0ZmE0OWZmNSBsZWdhY3ktdHJ1bmsKKzc0ODAgZjE3YmFjZTQ4ZGQ2OGEyYzgwZjQ0YzAxMTVkM2FiYTdkMjhjYTA5NyBsZWdhY3ktdHJ1bmsKKzc0ODEgNWY0YjIzZTNkOTdjYjM4ZDBhOTNkYWU0MThjODgyOTU0MzVjNWU2YSBsZWdhY3ktdHJ1bmsKKzc0ODIgZTRmN2MzMzFiYjFhMmZmZjNlMzU4ZmJlOTZmYmI5ODRlN2UzZmQ0YSBsZWdhY3ktdHJ1bmsKKzc0ODMgZjU1ZTgyZTFlNTY1OGMwZmU0NjFmNDgzNzU1MGM4MzIxNzRiMmIwYiBsZWdhY3ktdHJ1bmsKKzc0ODQgNDAyZTM2YzgzZDIwMjkwMGEwMjNlMTYwNWViZGFkYmRhMzZiN2UyMiBsZWdhY3ktdHJ1bmsKKzc0ODUgZjBjZjhkMjc1ZmJjMTc1MTQyOGQwYTMzZWYxZTM2Mzc0ODkxYmEwMCBsZWdhY3ktdHJ1bmsKKzc0ODYgNjg0MGZmODlkMjRhMWYxOWZjMzI4ZTUxYTAxNjU3Y2ZlMmNkOTc1NSBsZWdhY3ktdHJ1bmsKKzc0ODcgNzdmOWMyNWUxZjFmY2FjYzkzZjJlNjNiMGNiYmMyYjcwYTQ3NjVmZiBsZWdhY3ktdHJ1bmsKKzc0ODggNGNhNGU1NGM5Y2Q4Mzc2ZGYxNDE3ZWUyOWM2M2JmYjc5ZGEyNWNmOSBsZWdhY3ktdHJ1bmsKKzc0ODkgMGJmYWM4OWFmYzgzZmQ2YjBhOTI5YjgyYjc3MmI4MTg1MjJlMjQ0YyBsZWdhY3ktdHJ1bmsKKzc0OTAgYjFlMmVlYTY2Y2I2Y2ZkYzJhNWU2NDY5ZTU1MzE0N2NkMWVlNDc4NCBsZWdhY3ktdHJ1bmsKKzc0OTEgZjFhZjA5N2E1ZTVkNzkwYzJhNmIwNmNhZDAwMDY0YzRkMjYxM2UwMiBsZWdhY3ktdHJ1bmsKKzc0OTIgMTNkMzhlYjdlMjI1ZDE4MzU0Y2E0YTY3YTg0YTg4MDgyNmE1MTE2OCBsZWdhY3ktdHJ1bmsKKzc0OTMgMDAxYTUwNDJiMTgxYTdkYWI1NGI2Y2QxMGVkMTI3MmJiNjJkNmI3MCBsZWdhY3ktdHJ1bmsKKzc0OTQgMjg5MzU2MDlkZmFlYTY0YWEwNmI5NmM1ZTYwNDU2NzkwMmQ3NDRlMCBsZWdhY3ktdHJ1bmsKKzc0OTUgMGVjYTlkNWY3YjJkNGIxYTA3Y2I2NDM0NTI1YThiOWJjNzNkZDVmOCBsZWdhY3ktdHJ1bmsKKzc0OTYgYzIyYWRkMzY0MzUxOGY2YzQ4MGE2ZjQ2NzE2ZmRhMGQ3ZTJiNWMwNSBsZWdhY3ktdHJ1bmsKKzc0OTcgNjI2NDU3ODdmYmM4ZDkyY2MyOWMyYTc3MTc4Yzg5N2FhMzMwNWMwOSBsZWdhY3ktdHJ1bmsKKzc0OTggNzVjMWVlODgyYTRhZDQ4YWQ2ZjQ1ZWI5NjgyZjQ3ZDAyMWEwNjBlNiBsZWdhY3ktdHJ1bmsKKzc0OTkgN2U1MTkwOTk5NjMzMmRhYjA3NjI5ZTYyODBlZWIwMWVkNTdkYzgyOCBsZWdhY3ktdHJ1bmsKKzc1MDAgYmZmOGY1YWZjNjdmZWM2NDFlOGZlMzBmMmY1ZTExNzc1Yzg4Yzk1YyBsZWdhY3ktdHJ1bmsKKzc1MDEgYjVhMWJiMmQxN2ZhZDQzNjEzMzZmOTU5NGE3ZGMxMjBlY2Q1MWUyZCBsZWdhY3ktdHJ1bmsKKzc1MDIgMGVhNGVhNWIyZWI3M2ZlYThlZWEyOGQxMDViNmQ4MmNkM2ViNjM2MiBsZWdhY3ktdHJ1bmsKKzc1MDMgMDY3N2M3N2FhNzBkZjE5ZWI0OTZjMzFjYzNkZWNjYjU0ZDU4MzcwZSBsZWdhY3ktdHJ1bmsKKzc1MDQgM2YwMzdlZTc3MzFiZTMyMzg1NmVjNDY3OTkyZWMxNWQ4OTdkMWJhNyBsZWdhY3ktdHJ1bmsKKzc1MDUgMDBjM2NiMTA3ZTVmMjc4ODA2YzRkMmMyNjllZDg4N2YzMTA5MzFiOSBsZWdhY3ktdHJ1bmsKKzc1MDYgMDE3ZDcyNTQ0ZGYyYmVjNTNmZDk5YzI0MGJhZmI1ZWJhYzZiYjRhYyBsZWdhY3ktdHJ1bmsKKzc1MDcgYmUzMWU3ZTE5MjQxYjFkNWU1ZWNmZDFhNGY2NDExMTc3YTFiZTJhYyBsZWdhY3ktdHJ1bmsKKzc1MDggNWI3YjcwM2RhYmZhMDc4M2I5MWYwMTRlYjAzMWMxOTJjY2RiOTYwMyBsZWdhY3ktdHJ1bmsKKzc1MDkgZGUyYTc1YzdlYTlmZjQ2Nzc3N2I2MGY5ZDk3OGI2MTI0MDdlZjE1MyBsZWdhY3ktdHJ1bmsKKzc1MTAgYTBlNjJkODVkZTc3YTE1MGUyNzk3YjFkZDhkODI2OTY4NjNmZjI0MiBsZWdhY3ktdHJ1bmsKKzc1MTEgNjk3NjVkNjQzMWUxYzRhOTM4YWJjMTM5MTgzMTRjZWQzMjNhNjFmZSBsZWdhY3ktdHJ1bmsKKzc1MTIgOWFkN2I4YzM2Yzc5NDA1MjMxZDBhYmJmNzFjZGYxODIyMWI3NzY1MiBsZWdhY3ktdHJ1bmsKKzc1MTMgYTgyMGRlYWQwNmU2NzYyZmM3OGI2YjEyYjYwN2E2MzgxYTFlZTFiNCBsZWdhY3ktdHJ1bmsKKzc1MTQgMzgwMzIyNjc5NjhjMDE3MmJhNmY5NGFmYTA5ZTZjNGE3NDIyYzAwZCBsZWdhY3ktdHJ1bmsKKzc1MTUgODc2ZTU3MzY0YzYyMzk5NWNmYTVmNDU1NTIwNjBlNDkyY2Y0NDc2YiBsZWdhY3ktdHJ1bmsKKzc1MTYgYzQ5NzkyOWIyMzcxMTVhMmMxZDczZTA2MjVhMzY3ZTMzN2MxNGZjNiBsZWdhY3ktdHJ1bmsKKzc1MTcgOWI3ZTBjZjUxOTkwNWFjNDkxOTk4MTFmMTJmZTcyZWRlMWQ0YzBkYiBsZWdhY3ktdHJ1bmsKKzc1MTggMTA0YTY0NmZjN2E2N2YyN2RmMjVkNGU5NDFiMjAwMzVlNTg3NmY5ZiBsZWdhY3ktdHJ1bmsKKzc1MTkgZWUzYWM5ZTBhMDMyMjk4NjJkMTkwNTZhNjc0M2IxOTM0YTI1MGI2OSBsZWdhY3ktdHJ1bmsKKzc1MjAgYjFkODI2OTdjMGIyMzY2NzRkMGU2MWMwZWZjYjBhOTExZTljNzJkZCBsZWdhY3ktdHJ1bmsKKzc1MjEgNjU4ODE1MjMwNTQ2YTQ4OTJjMmFlNTE5NDY4ZWRiNDgyNzA4NzhmZSBsZWdhY3ktdHJ1bmsKKzc1MjIgN2E5Y2FjN2NiOTEwOWY0NzNhY2RkZDFhOWQyM2UyNjhhZDk1ZTBjYyBsZWdhY3ktdHJ1bmsKKzc1MjMgZmRlNzM0NjdiNTg0N2JmNWQ1MjI0ZTZkODU0MjMyM2Q5YTY4ZDc2NSBsZWdhY3ktdHJ1bmsKKzc1MjQgOTQ2YjJiMmE3NjIyZmExN2FkNDI0ODI4Mzc2YTVlODhhN2EwMTNhZiBsZWdhY3ktdHJ1bmsKKzc1MjUgODU3OWUzNDQxZDliYzk5OTVkOThlOGJmMjQ4NTNmZWU1NWI3NTQ1MiBsZWdhY3ktdHJ1bmsKKzc1MjYgN2Y2ZDE5ZmM1YWNhY2ZjODU0YTczYmNjZGYyYTI4OWRhNmMxMzg3ZCBsZWdhY3ktdHJ1bmsKKzc1MjcgNzg0MWM0OGNkYjViNDk2N2RkYTYzYzAwYWZhYWRmODUzYzNhMzU2ZSBsZWdhY3ktdHJ1bmsKKzc1MjggMjE5YmRkOGFmYjM4ZWYwNWFjNDE3ZTcyOGI1OTIyOGM3NDQ1ODk1YSBsZWdhY3ktdHJ1bmsKKzc1MjkgZTljNDQyZDA5MzZmYjVjM2I5MjJjN2E1OTQ0YzVlOWZmNmQ5MjY5YSBsZWdhY3ktdHJ1bmsKKzc1MzAgZjU3ZTE4MWZmNjM4ZmRiMWM5YTM2OTY3YTMwYjRjOGRjYjE5N2Q0OCBsZWdhY3ktdHJ1bmsKKzc1MzEgZTYyOWM4OGYzZGQ4MDc3M2JmZWMxMzJkMzE3NjI1MGZiOGExNjhhMiBsZWdhY3ktdHJ1bmsKKzc1MzIgNmM3YTc2ZmQ1ZGMxZTkzMjBlMjE3NmZkMDcxNzk1YTQxOWIwYTkzOSBsZWdhY3ktdHJ1bmsKKzc1MzMgMzcxNDY0ZjY2NjZiNjZkN2YxZGQ1ZjQ2ZGZhMTYxOTEzZTQ3Mzk4ZSBsZWdhY3ktdHJ1bmsKKzc1MzQgMTkyZDU3MWNjNDYxNWNlNjg0YWY0MTgyM2FmYzE4MDdjMTU3OWE4OSBsZWdhY3ktdHJ1bmsKKzc1MzUgNWEyMzI4NzBjY2VhYjVmM2M0ZjVjOWIxZTc4Y2UxNWUxZmIyYWQ4MSBsZWdhY3ktdHJ1bmsKKzc1MzYgMzQ2ZmY5YmE5ZDM2MzcwNGNhYzBjY2EwYzNjMTAzYjg2NzE0MTVjYyBsZWdhY3ktdHJ1bmsKKzc1MzcgZDY4MTYzMWQ5OTJmMjAxYjQ0MTUxOGFmMjJjMDA1NDU0ZDZiNjBlNSBsZWdhY3ktdHJ1bmsKKzc1MzggZjA3MzFmYTQ0NDdmNTI2MmY1NTE3ODNjNmE4Y2RjYWQwNDg5YjAzZSBsZWdhY3ktdHJ1bmsKKzc1MzkgN2RkZWQ3ODUxZmNhOGM0YjQ2Njc3ODRhYTk3Mjk0YTI5NzVhMGE2YSBsZWdhY3ktdHJ1bmsKKzc1NDAgYjZmY2U3MjQzYmEwYmE4OTZmMDc4MjI3MjhjNTUwMjA2ZDcyZTlkYiBsZWdhY3ktdHJ1bmsKKzc1NDEgNzc2MTZiMzAwMWVmOGY3ZTA5YzQ2MzljMzZjMjg0ZGQ5NzFkZWUzYSBsZWdhY3ktdHJ1bmsKKzc1NDIgNGFhY2E0MmEyYTE2Yzk1MTc0YjJmZmY3YTVjM2Q2Y2FlZjg1Yjg3OSBsZWdhY3ktdHJ1bmsKKzc1NDMgOGVjZjJkN2M5ZmIxYWRiNDM4NWNmN2QwZmRhZjQ0MzEyYmQxMjQxYiBsZWdhY3ktdHJ1bmsKKzc1NDQgZmEzMTQ3NmEyNzg2ZWU4ZjU0ZDBlNWMwOWU1ZWQwMTdmZWIxMTZlNyBsZWdhY3ktdHJ1bmsKKzc1NDUgZWIxMmY0MDQ2ZDBiZTBmMGRmNjRmNmY4MGM2YmU1MTAyMTYyOTMxMCBsZWdhY3ktdHJ1bmsKKzc1NDYgNDRiZGYwYjU2YzBiZDgzNDE0MzRjY2Y4YjlhMjM3MDhhMjJhMGUxZSBsZWdhY3ktdHJ1bmsKKzc1NDcgZDI0ODNjMjc3NDJjMTU0Y2M0NjIwZGY1M2U2ODk5ZTlhMTdlNzY3MiBsZWdhY3ktdHJ1bmsKKzc1NDggZTIxZjFkMjU5NWRlOGI5OWI4MGFkZGE2ODcyZWRmZGZjZTA4NDRjYSBsZWdhY3ktdHJ1bmsKKzc1NDkgMzI3M2FjYmU0NzZmZGFhNWZhYjg5ZjZhMjIzYTkyZDEzMTlmY2NmZSBsZWdhY3ktdHJ1bmsKKzc1NTAgNWI5ZDQxZjRjMDhjMTE1ZjgzODM1YmExOGExNzk4NWQ3ODlhN2NjNCBsZWdhY3ktdHJ1bmsKKzc1NTEgNGVkYWI0NzQ5NzRjZTA3NzY3MDY0NzJhMjNlNzljM2U5NGY0ZTQzYSBsZWdhY3ktdHJ1bmsKKzc1NTIgMjNjNGM3ODM4YWMyYWIzYTY2NzVjMWNhY2I3MWMwMGYxMjcwMWEzMCBsZWdhY3ktdHJ1bmsKKzc1NTMgN2Y0YjMyZTg2NTQ1NTcyNTJiNjdhZmUyZGM5ZWJmMzFlMTQ0MzhiNyBsZWdhY3ktdHJ1bmsKKzc1NTQgZDZiMjkyYTMzY2ZlZjUzYzc1ZWE0OWZjMjdjYmJkOGM5OTUzYzA0NSBsZWdhY3ktdHJ1bmsKKzc1NTUgOWE4YWRhZjU4Y2U4NjA3NmI2ODkzNTVjZDBkYjUwYjcyZDZkMTk2NyBsZWdhY3ktdHJ1bmsKKzc1NTYgMWI2MTliODExYzEwMzVhODE1MjNiNjBiMzQ4ZDcwNzU4N2E0NzdmYSBsZWdhY3ktdHJ1bmsKKzc1NTcgMmM4ODEyZWVhNjM3OTQxNTU0YTRiNjU2ZDRhOWUxNWFjYzAyMjAwYiBsZWdhY3ktdHJ1bmsKKzc1NTggN2FiMWFhMDhkMzQ4ZGIwY2ZhN2EzNTJkZDllYTQzNTliMzhkMWYxMSBsZWdhY3ktdHJ1bmsKKzc1NTkgYWZjM2U0ZTA4NzQwYjYzOGFjYzU0MDMzYTE2YTMzYmMxNTZhZmEwNCBsZWdhY3ktdHJ1bmsKKzc1NjAgZDM3MDY1Nzk0NjhlNTBkNmExYTExMTI1NzE4MWY2MTQ1MTIzNDdjMiBsZWdhY3ktdHJ1bmsKKzc1NjEgYWE3M2RhNjYxY2RmZmFlMDlhZjkzM2UyZWMyMTQ3MzQxOTJjOTA0MiBsZWdhY3ktdHJ1bmsKKzc1NjIgNmVkOGViNGI2NjRiMzFiZTE4ODgzY2UzNWUxMzJlMzE2Y2VkNzNmYSBsZWdhY3ktdHJ1bmsKKzc1NjMgZTQyOGQyY2ZlZDQwYjNhOWNmNjk5YTYxZDAwOTg5ODBlZWE2NGQ2YyBsZWdhY3ktdHJ1bmsKKzc1NjQgOTFmODYzMDZiMDdiODVmYWJkZjhmNTQ2YWI4YTgyNWE5ZWEwZTgzNyBsZWdhY3ktdHJ1bmsKKzc1NjUgYjY3YzAyYmQ1ZTIzNjBlNDg4OTkzNjc0OGRlNjE3YjMxM2I3MDIwMSBsZWdhY3ktdHJ1bmsKKzc1NjYgM2ZlZWM4NWJiYTliNjM5OWY0NDVlZDUyM2IzYjU3YzQwNGUxZDJiOCBsZWdhY3ktdHJ1bmsKKzc1NjcgY2I3YWFkZDlkOWYyOTI0ODRhZWU0ZTA2NGVkZjBhZTE3OWRhZGQ4MSBsZWdhY3ktdHJ1bmsKKzc1NjggZDk5NmRjNDJmZTY0MTVhZDgyMDk2NzJhOGM2NzM0NmZjNDg0Yjc0NiBsZWdhY3ktdHJ1bmsKKzc1NjkgMzhhZGJiMzlmMTVjZjU3Nzk1OTA4NDk4ZjAyYWM0NDU3ZWFkMGM3OCBsZWdhY3ktdHJ1bmsKKzc1NzAgMTE5MjJhMmVjYWNkZTRkODE4YzQ2MjFhNmUyNjgzMWUzOGFmMzhiOCBsZWdhY3ktdHJ1bmsKKzc1NzEgMzBjMTBiMjIyOTUzMThlYTllNjg3YmFiNWJlYjQ3ZjYyY2U0MTgwMCBsZWdhY3ktdHJ1bmsKKzc1NzIgNTdiN2EwM2EzMjUyYzBlNTNiYTdkZjI4YjlmMjQyNmZiOTIwNmZmYiBsZWdhY3ktdHJ1bmsKKzc1NzMgYTQ0NTg2YmQ5ZmFiM2Y3MDk1YTQ4MzcwZDkxNmU3ZWZiY2JjMmFiMSBsZWdhY3ktdHJ1bmsKKzc1NzQgYjQyMzFkNTkyMjgxZjI1YjBhNTkxYjYzMzBiODk5Mzc5NDE3ZWY0NiBsZWdhY3ktdHJ1bmsKKzc1NzUgMzIzMTAyNTFkNzY3NDA4NjQ5OGUwYjY1Y2Y4ZGMwM2RhMjk5NjFhMCBsZWdhY3ktdHJ1bmsKKzc1NzYgMjQ5N2M4YjA0MTAxN2M5NjY4NmFkMTMyMGJkYjFlNzk0MmY5YTA1MCBsZWdhY3ktdHJ1bmsKKzc1NzcgZWU3MGI0YzcxODk5M2I2MGZkYWI0M2QxOWUzODE1Zjc1YTU4YzkwYSBsZWdhY3ktdHJ1bmsKKzc1NzggNDkyYzBjYWUxZjA1MjI5YjExNmJhN2JkMTBjOTJjNmViMjRmOThkMCBsZWdhY3ktdHJ1bmsKKzc1NzkgNDEwOWExNzFjOTAxYTQxZjhiMzkxZGVmM2IwMWU0MjkxOTg5MWYxYSBsZWdhY3ktdHJ1bmsKKzc1ODAgMDBmZDY4NTdmNzZiOTM5YzViOWVhMDAwZDFjZjgzZDZhM2U2MWY1MCBsZWdhY3ktdHJ1bmsKKzc1ODEgOTQwODEzMTE1Zjc3NWI4NjI4OGNmY2RiMDgwNzMwNmQxZTNhODE4YyBsZWdhY3ktdHJ1bmsKKzc1ODIgZjliNDZiNTAzNzUxOWY0NDMzMzc0MmExN2JlNzRmZTM4NjI0YTEzMSBsZWdhY3ktdHJ1bmsKKzc1ODMgYTlhNmQ0MTZiOTQ1Yjc5ODkyMTdiYzg0OTBkNTgwZGRiNDM0OTgyMyBsZWdhY3ktdHJ1bmsKKzc1ODQgMGJiZjk3ODYxY2Q5YTE2MDQwNjUwMDFlMWQyMmI2MmU2MTQyYjg2NiBsZWdhY3ktdHJ1bmsKKzc1ODUgMDczZjFiM2FkOWQyYmFmNDBiNGNiZjAyYjZkMDI1ODEyODJhZGM5NyBsZWdhY3ktdHJ1bmsKKzc1ODYgMjFiODcxMzI1Yzg1MzRkMWIyODdiYTkwNzdmYzc2NjRlYzlmZGVjMSBsZWdhY3ktdHJ1bmsKKzc1ODcgY2E2Mzg4YmNjMDVhNWQ5MjhhNjI2Mzc3MjA0M2NlYWUwZGRhZGVkZSBsZWdhY3ktdHJ1bmsKKzc1ODggZmI4Y2VmY2VmZDgxZWEzNjkwYTAxMzYzOWVkMTE4OWY5NDA2ZGQxMiBsZWdhY3ktdHJ1bmsKKzc1ODkgYjljZTNjYzUwMDc2NzFhODc0MWNlNjVhMzQ2MjUyMjkxZDEzMzE2MyBsZWdhY3ktdHJ1bmsKKzc1OTAgZTNhYjQ4OTg4Yzc3OTg1M2MxMWI1ZGJlYmE5YTg4N2VkYzcxNmVlNCBsZWdhY3ktdHJ1bmsKKzc1OTEgNTA2NjY0NzY3NzM2ZWZiNDAyMGU3Y2VjZGY2YjJjOTc2ZjJkMThhOSBsZWdhY3ktdHJ1bmsKKzc1OTIgMmJiMGJkYTE1ODVjN2ZhNTQ5NzM1YTA5ZTUwMmQwOGRlNWFlZGUzMiBsZWdhY3ktdHJ1bmsKKzc1OTMgMDAyODY1YWY1NWU1YjU4YzhjMzExZjkwNmE2ZmU0MDM1MTA0NWI1MyBsZWdhY3ktdHJ1bmsKKzc1OTQgYmRhMDFhMzc0NzYyMjViYWY4MDFjZjA4MTE0NzUzZDU4MGE4MTRlZiBsZWdhY3ktdHJ1bmsKKzc1OTUgYTQ4ZjM2NzhmOWUxYThkZTkzOTRmZGIzMGY0MjZkYTI3ODQwMTZlZSBsZWdhY3ktdHJ1bmsKKzc1OTYgMmU2ZWIxYzcxNWNlNWFjMWU3OTQzNTBmMzNiZjdhMTI1YWFiZTcyNSBsZWdhY3ktdHJ1bmsKKzc1OTcgNTdiMGYxNjE5ZTI4MjQwNDJhN2MxYTVmMzY3NjgyOThlNGIyOGY4YyBsZWdhY3ktdHJ1bmsKKzc1OTggMDVmZmZkNTViMDE0YzAxNTBiMDJjOWUxMDVhMTE4MjIyYjMyNmVhYiBsZWdhY3ktdHJ1bmsKKzc1OTkgMTcxNTkxYjM5ZjYzMmVkMGI0NWJiYWMxNmRjYzg5ZTEwNzcwNzI3YiBsZWdhY3ktdHJ1bmsKKzc2MDAgNTRhOWFkY2EyMTVjNmUwYjFhNzQ1YmJjYTc1ZDc1YmQzYjEwMmNhYyBsZWdhY3ktdHJ1bmsKKzc2MDEgN2I5NDBmMjk2MjFiODVmYjliZGU1YTdhNTUwM2FkM2Q2YmJjZmUyNSBsZWdhY3ktdHJ1bmsKKzc2MDIgZjIyMjEzMTkyNTMxNjEwYzdhNDZiNDc2M2VhYzc4N2Q0ODRkOTA2OSBsZWdhY3ktdHJ1bmsKKzc2MDMgYmYxYmQ2NGY4NWUwMWYyOWVhYTRlYzI3YjU0N2ZhZmFiNTdjYzRjMiBsZWdhY3ktdHJ1bmsKKzc2MDQgMTAyZTI5MTJkMGQxNzc2YTc2MmYyZmQzZDhkZDI4YWM0OWY4YjIwMyBsZWdhY3ktdHJ1bmsKKzc2MDUgMGJmNzM5NGRiYTIyMDViMDE1NDIzMjE3YzY1YzA1NzNjOTdkZWYyMiBsZWdhY3ktdHJ1bmsKKzc2MDYgZWM0NTI3NmE2ZGFkYjliZTEzZGJjYTVhNTIwYzMwNjRkZDljYjhhYSBsZWdhY3ktdHJ1bmsKKzc2MDcgMGZjMWRhY2RhZmQ3MzhiZGUzNzUyMmY4OWFkOGVlZmU5YmI5MDY0NiBsZWdhY3ktdHJ1bmsKKzc2MDggNjY2MTUyYjc3MDI3MTA5ZjMzYzcwMjhkMzg1YzdmYTQ5YjhjMGY0YyBsZWdhY3ktdHJ1bmsKKzc2MDkgZGVmMDNkM2I4ZGRiZjhiZDIxZjkyYjFkOGViODIzOWM3MzcwOGY5OCBsZWdhY3ktdHJ1bmsKKzc2MTAgN2ZhOWE2NDQ0ODNlODJlOWIzMWRlYjU3YWZiNjg5YzkxYjM5NzkyNiBsZWdhY3ktdHJ1bmsKKzc2MTEgYTUxM2Q4M2MwNmNiMDAxZjBkM2FmZjRmZDVkOTY3YWM5ZjgwNWZkNiBsZWdhY3ktdHJ1bmsKKzc2MTIgNDBlYjhiMGVlMTkyNjFiNWMyYzkyMjRjNTUwYzFiMjEyMTI3ZTFlMyBsZWdhY3ktdHJ1bmsKKzc2MTMgZjkzZWMxYWMxN2FhNzE5MGY2MDgwYjUwNDA5OGYwMGZhODFmYTI0YyBsZWdhY3ktdHJ1bmsKKzc2MTQgOTIxNmY1YzI1ZTRlZjc4ZTY3NzBiYmVjZjg2MWNjY2U2MjU4ZDY5NSBsZWdhY3ktdHJ1bmsKKzc2MTUgOGZiZWQ3OGU4MWU3MTIxMjg4N2I5YWI3NzljYmMwYWY0MWRkNWY5NSBsZWdhY3ktdHJ1bmsKKzc2MTYgYTRjOGI4ODcxMzc2MWZkNjY0YjBjYWU2N2Y4NjViZWQ5MmUzNzk0ZCBsZWdhY3ktdHJ1bmsKKzc2MTcgOGE5ZjE1NzkzMjM4MmVmZmYyZWY3MzM5NDUzN2I2ZjQ0ZDIwODgyMiBsZWdhY3ktdHJ1bmsKKzc2MTggNjk1MmViOWMzYTZmN2YxNTk5NDYyYmVjYTczNWQ1ZDAxZDVjMzAzZSBsZWdhY3ktdHJ1bmsKKzc2MTkgNmIzMzdlYzkyYmQwZDBhNTYxNDJlODAwOTc5ZGRiMGZjM2JjNmU3MiBsZWdhY3ktdHJ1bmsKKzc2MjAgMWU5NWZhYzg0YWIzMmY2NDY0YmJjMzJjYjVlZDUxZWMyY2ZjNjczYyBsZWdhY3ktdHJ1bmsKKzc2MjEgOWNlZmQwNGVlNTNhNTJiOGY2MTdhZDc2MzliNWMzMDc3Y2M3YjU0NSBsZWdhY3ktdHJ1bmsKKzc2MjIgYjIyN2I5YWY1ZjUzZGJhMDQyZmQ0MzVmNzQ3MDk4ZDFkMmY4NzVlMSBsZWdhY3ktdHJ1bmsKKzc2MjMgODllZGFhOGVkNTBmZTdjN2MwZTBhMGY0YmNmZGIzYTI1NjUxOThjYyBsZWdhY3ktdHJ1bmsKKzc2MjQgNzgwNjNiYWUzZmQ3NGJiNGY2M2FjYTVlZDJjNmFmZTc4ZGE4YTU4ZCBsZWdhY3ktdHJ1bmsKKzc2MjUgNDY2NWUyODQ5YTRhYzdiZWNkYzk5NGNlM2NlYzgzYzI0ZWZmZDJmOSBsZWdhY3ktdHJ1bmsKKzc2MjYgMjgyNjkyNWE4NDJlMjk4NmM4YjE3MDZiM2RmYmI2M2JlYTlmMzgwNyBsZWdhY3ktdHJ1bmsKKzc2MjcgYmQ3MDhmZTE5MzRiM2I4Y2I2YTg5YTkwMGMyNTVmMGYyY2RkNGQwNSBsZWdhY3ktdHJ1bmsKKzc2MjggMWFlN2UyZWJjMmYzMzFiMjg5Zjk3ZWQ5OGRhMjg0YjI2MzU3NjJjNCBsZWdhY3ktdHJ1bmsKKzc2MjkgZjYyMTlkNzc1NDgxYmExNzUwMTZlN2YzZDFkMzUzYjRhNmRjNTA2YSBsZWdhY3ktdHJ1bmsKKzc2MzAgYjU2NmU3NzI4MWNjMTRkNTkwMWRlOGY1NmJkMGI1OGIzNGU2NGE1OSBsZWdhY3ktdHJ1bmsKKzc2MzEgNDE3NDYyYWI4YjAwMjdmYjBkNDRkMTIzYzQ1Mjk0Nzc0NGZjNGM3NyBsZWdhY3ktdHJ1bmsKKzc2MzIgODI5YzQyODkzMTgxMDRmMGI4MDI0YzBlYWJiOGExYzhjOGE3NGQwNCBsZWdhY3ktdHJ1bmsKKzc2MzMgMzUxZTk1YzUxZGRiMWFjZGY1MTE1YjlkYjczZDBkNjAxMDllMWU4YyBsZWdhY3ktdHJ1bmsKKzc2MzQgZWY4MzUxZWE3MmMxYzYzMjNmMjMxYzBkMDg0NTZlNWRkNDI4YjYwNiBsZWdhY3ktdHJ1bmsKKzc2MzUgZGMzM2UxMWExYzI4ZGY1ZDZhMzNlMjgyOTg2MDM2ZTA2ZmQyODA0ZSBsZWdhY3ktdHJ1bmsKKzc2MzYgNWJiNzBkMmU5YWRhZGQxOGViYTFhYWFhZTlmYmZmNDU3M2ZkMWE2OSBsZWdhY3ktdHJ1bmsKKzc2MzcgNzEyNGU0ZWU0OTk1NTc2NDViMDcxYjY2NzYwY2Q4NTAzOTYxYmRkMCBsZWdhY3ktdHJ1bmsKKzc2MzggOTA2M2Y2MGVhMjhkNDE5MmY5OWQ3MTYzZGE1YzA4MGRiNzE5ZWFmZCBsZWdhY3ktdHJ1bmsKKzc2MzkgOGMyNzdmMjliNTM1ZTBiMjEyNTI5ZmQ3MTA5YjllNGJiMTNiYzc0NCBsZWdhY3ktdHJ1bmsKKzc2NDAgNGQxNWJkZjFkYjljMDA3MjczNWU1NjhkZDgwZWExNzM2MzBhMjc3NiBsZWdhY3ktdHJ1bmsKKzc2NDEgNzE1MWJiNzI3Nzc2N2VkMWU4N2Q4NGI1NGJiOGM4N2I2NmUxNzk3NSBsZWdhY3ktdHJ1bmsKKzc2NDIgNjFmODliZWJhMWFhM2M0YmYwZmRiZjEyMjkxNDc3OWVlODgwODA0OCBsZWdhY3ktdHJ1bmsKKzc2NDMgZGZmM2U1MDZjOWU4ZDQxZjZmZTFkZWNmNDQ1NGQ5YjcyZTE4ZTk5MiBsZWdhY3ktdHJ1bmsKKzc2NDQgMmVhOWM0MjVhNzY3N2YyMjk2YWM5ZjQ2NjI4MzlhMjZlMzNkMDEwNCBsZWdhY3ktdHJ1bmsKKzc2NDUgZjVkNzA3Y2U0MjIzYzE3M2VkZjhlNzhkMzM2MWY3ODRmYjk1YWQ1NCBsZWdhY3ktdHJ1bmsKKzc2NDYgYjFmYzRlYjJhYzVhOTQ4ZmIxOWE4ODlmYzBkNmU4NDY2OWU5ZWEwYiBsZWdhY3ktdHJ1bmsKKzc2NDcgMzFiMGU1ZjBiYWRmMTk2NjI4NzI0ZDZhMGZiMGQxZjA4NTNiZTFjNSBsZWdhY3ktdHJ1bmsKKzc2NDggZmY0ZjhmYThhMjczYTAyOTBmMmY4YjFmOTRjMDliNDY0MDg1MWUyMSBsZWdhY3ktdHJ1bmsKKzc2NDkgYzRlNWVmOWJjMzYxMjQ2MTg1NjMwZDIyMTZlZDI1ZGYyNmJjYzFmNiBsZWdhY3ktdHJ1bmsKKzc2NTAgMTk3ZTMyMDZlM2YzMDc0N2U1YWM2NWQwMDJkODliMjQ1YWQxZjhlNiBsZWdhY3ktdHJ1bmsKKzc2NTEgMmJkOTIwZTdlNWM3ODg1ODVlMjM5YjQ3YjIwOGY0ZWYxNzIwZTk0YSBsZWdhY3ktdHJ1bmsKKzc2NTIgYjE4ZTAzYmE0ODE3N2YxZmE0MzY2NDVjNmNlYTBhNGFkNmY2OTQ2MSBsZWdhY3ktdHJ1bmsKKzc2NTMgZjk3NDM2NGYzYTg3YTE3ZWEyMThjODc4ZDljOWI4YzBhOTdiZmU0ZCBsZWdhY3ktdHJ1bmsKKzc2NTQgODYzZmZjMmFiNzZhOTk1MzZmODdjN2FjNWQxZmZjMDJiOTgyYzkzNSBsZWdhY3ktdHJ1bmsKKzc2NTUgNmJjNTYyNTljYzRjYzI3Zjc5YmY4YWQ3Y2E4ZDVhNjUyNWQ1YWYwYyBsZWdhY3ktdHJ1bmsKKzc2NTYgOGEwYjgwZGM2ZTcxMTQ4NjkzNzJkMTU1MmJmN2FjMjdiMzZkMTEzZiBsZWdhY3ktdHJ1bmsKKzc2NTcgZTAzNjFkNTQyMWZmMGI0NTE0ZGQ1NTc3YmNiMGI0ODhkZjhhM2JhZiBsZWdhY3ktdHJ1bmsKKzc2NTggNjM2NzU3ZTgxMmE0YzRiZmE0YmRhY2FkMGE3MDZhZGM2ZjNlM2JhNiBsZWdhY3ktdHJ1bmsKKzc2NTkgNWNmODNhZDMyNTFlNWY1YjFkZmYwNmI3Yjk3ODk3NzhiYTA5MTNlMSBsZWdhY3ktdHJ1bmsKKzc2NjAgYzE3MjllMTQ4OTE2YjMzNTViNTc0NDBiNjFhZTMxZDZjZGQxMGU3NSBsZWdhY3ktdHJ1bmsKKzc2NjEgYTE2ZGVjYmI5NzE2NTg1YTU4NzQ4YjhkMmExMTdiYjJkNzdjNTU2MSBsZWdhY3ktdHJ1bmsKKzc2NjIgYzFhMWMzMDZhNDI5YjVmY2ZiODYxZGM2MzA3ZWRiOGViMzQ1NTk5YiBsZWdhY3ktdHJ1bmsKKzc2NjMgM2VjM2Q4ODA3ZjllODg5NjYyZDIxNTBmN2ZhZTdlODk1MzkwOTY4ZSBsZWdhY3ktdHJ1bmsKKzc2NjQgYmFiOTE5NmE4ZjMwYzYyNDE1NzY5NjMxYTYzMjIxNjBhYzRiNmMyOCBsZWdhY3ktdHJ1bmsKKzc2NjUgYTc5ZWNkNWFmN2U1YjQxOWI1MTViOWUwNDA3NjE3YWNkNWFkMDU0YSBsZWdhY3ktdHJ1bmsKKzc2NjYgZmEwZmMyODhiMmM5MGI5NjEwZWVmNmI0NjU0N2YzMzQ0YTkwZjcwYyBsZWdhY3ktdHJ1bmsKKzc2NjcgYjdhYzdiNDZiMTBjMDEwNWI0NWI1ODRiMzJlZjdkMmM0NTA5YThjYyBsZWdhY3ktdHJ1bmsKKzc2NjggZjBmZDEyZDc2ZTA3OGZmNWJiM2JmNGE4YTZmMTc5NGEwNjkwODBkOCBsZWdhY3ktdHJ1bmsKKzc2NjkgNTJmM2RjNDFmNmM0ZmNlYmJkZjk3ZWI1NzUxYjBmZTgwMWJhZDQ2ZSBsZWdhY3ktdHJ1bmsKKzc2NzAgYTg3NGY1ZDMwMzhlZGJkNGYxOTJhNDBjMzZmYjQzYjZmZmY3YThhZiBsZWdhY3ktdHJ1bmsKKzc2NzEgOGVlODFlZjRlOTgyZjRkZDY4ZjA4MWI1NjU1NDE5ODkxNzAxM2Y4ZCBsZWdhY3ktdHJ1bmsKKzc2NzIgNzRjMTI3MDRhMGJkMGM0OWU4NzFhZjA0ZjhlYTFiM2MzNjQzZmU5OSBsZWdhY3ktdHJ1bmsKKzc2NzMgZTBhNjA1ZTY2YmVkYWFkOGY5NWFmMTVkZGI4ZGRkZjkxNWExNTJmNyBsZWdhY3ktdHJ1bmsKKzc2NzQgN2UzODBkZjAwZDAwZmExYzM4YzBlNjJiOTJjYTljNDgzZGRiNDYzZSBsZWdhY3ktdHJ1bmsKKzc2NzUgMDI0ZTczODY3NGE1Y2RhNzhmN2JkZDdiMjhhYzc1ZmQ0YTQyOWY1MSBsZWdhY3ktdHJ1bmsKKzc2NzYgNTg3OGE1YWYzMTQ4ZDViZmFmYTBjMmFhZmU2OGFkM2Y3Y2FjZGY0OSBsZWdhY3ktdHJ1bmsKKzc2NzcgYWY5MmQ3NzkxNTJhYzI0ZmZiZTc2NDRhYTEyM2I5MDBmMTJjMWMxNSBsZWdhY3ktdHJ1bmsKKzc2NzggMDVjN2Q4YjRmZmQ2ZTRkZDliM2QwMGMyNjM3MTczMTg2YjdiODI0NyBsZWdhY3ktdHJ1bmsKKzc2NzkgYzI0OGEwN2U1MzQxNjRiMjYwODBhYmI5ZTEwNjljNjZkMDZhOGY4MSBsZWdhY3ktdHJ1bmsKKzc2ODAgYjM5MjAzOTgzZGU2NjExMWRmOTNhYWNiMjlkY2Y2YzQzMzc0NDVhMCBsZWdhY3ktdHJ1bmsKKzc2ODEgYmQ1ZTJjMmMxZTA4NzJiMTFhNmMwM2U4NTdmODNiNzlkMjJmOGVhMSBsZWdhY3ktdHJ1bmsKKzc2ODIgMDBlYmZhMzNjYzA3NjMwZWVkYTczYTBkNzVkN2Y1NTc1MGJhMGZiYSBsZWdhY3ktdHJ1bmsKKzc2ODMgOTNlODdjYWM0ODNlNWJmZmQ2NzM4NDI3YzliOTk1YmQwMTQ0Mzc0ZiBsZWdhY3ktdHJ1bmsKKzc2ODQgMmVjOWM5MzNhZmI4NzQ2YTQwMjQzOWMzNDE2Yjg2OGMyNDVlMmQ1YyBsZWdhY3ktdHJ1bmsKKzc2ODUgZDRjNmI0YjA1NDhjMWI2MDQzODA2NDNlYjc3ODg4OWMwOGUzYzU1ZSBsZWdhY3ktdHJ1bmsKKzc2ODYgMzE0ZDBkNjAzZjA2ZWU0ZTI3Mzk2ZjhiYjRkODlmNDRkOWM0MmJhNyBsZWdhY3ktdHJ1bmsKKzc2ODcgMWYzOGQ1ZmIzZDIzODgxYzk5OGU5ZjhjYTE4MGQ5NjIwYmUxNGE5ZiBsZWdhY3ktdHJ1bmsKKzc2ODggNWI0MDdlMGNiYzcxNWVhNjY3MzEwMWFjZTVlM2UxNTQzZDc2OTQ4NiBsZWdhY3ktdHJ1bmsKKzc2ODkgOWMxNmJkZjE2MGZmNjhmYmI2Y2Q3NDFmNTU1YjkwM2VjMDhiMzAyMyBsZWdhY3ktdHJ1bmsKKzc2OTAgZjcwMDQyYzE5YzU3YTNiNzZlZTg0OTZjYjQ5MTE4MWRmMDgzOGVhMyBsZWdhY3ktdHJ1bmsKKzc2OTEgOWJmNjUwZjIzZGE1NzEzMGI1YjI4Y2MxNjdkMDIxZGJiNjFlY2M3MiBsZWdhY3ktdHJ1bmsKKzc2OTIgM2FiN2Q1OGMyOTYzMWE2YTk1YTBmMWM2M2E5ZjY2MTJiY2EyYzBkYSBsZWdhY3ktdHJ1bmsKKzc2OTMgZjViZmI5YzRjMzY0MTNhZjQyYmE3ZGJmNDA4OGZmODA5MTM5Zjg0MiBsZWdhY3ktdHJ1bmsKKzc2OTQgMzM0ZDUyZDZkZjVkYWI0ZDJlOWI2ZGU3NDk2MTg1ZTYyNTg5MTQzZCBsZWdhY3ktdHJ1bmsKKzc2OTUgZTFmNjEzMzIyYjIzYzI3ZjY5NjBlMDFjNGQwMDg2MDE0NzJlNmZjNiBsZWdhY3ktdHJ1bmsKKzc2OTYgZDk3MzNiNGY4MTFmNDc1YTY0YjYwODNjNzg5MWY4NzQxYWYwZDZlNCBsZWdhY3ktdHJ1bmsKKzc2OTcgNGQ4YjdkZDVkZTJhMjgwYWY1MjQ0ZWY5YTZmNWY4N2UyNTRjZWMxYSBsZWdhY3ktdHJ1bmsKKzc2OTggYmM4ODMyYjUyYjUwYjhjYjE5NmQyOGFiYmM5Njk2NWIwODE1NmVkNiBsZWdhY3ktdHJ1bmsKKzc2OTkgMDU3NzRlYzM5YWQyMDViZGJkZjQ3NTg5MDk1NWMyOTkxZjVkZTY3MyBsZWdhY3ktdHJ1bmsKKzc3MDAgMWIxNGM1YzFiZTJhNTI4NTcyYTI2ZWYxODExNjJiYmJiMGZhZTcwMCBsZWdhY3ktdHJ1bmsKKzc3MDEgODRjOTNmNjAxNzE5NGVhODUwMGI3MmFhODdkZmYxYzgzYjNkZmE1ZCBsZWdhY3ktdHJ1bmsKKzc3MDIgOTc4NTJmNGViZGU2YjA0NDFlYWQ5N2ZiZDVkYmUwYzUwYjE0YTYwNiBsZWdhY3ktdHJ1bmsKKzc3MDMgNTllOGEwMmE0Nzc0ZDg2YTU1ZTNjNDAwMzJkYzQwZjU4MWZkNjA5MCBsZWdhY3ktdHJ1bmsKKzc3MDQgNzRjYWRkZjRiMjhhNGUyODQwNzVkZjlmM2E3YzQ3YjgxZjZlOTQ0MyBsZWdhY3ktdHJ1bmsKKzc3MDUgMGU2MGRlMmE0MmFmNzUwYzVkY2Y4MGNhOTU1MGM1NzVjNzAwODJkNSBsZWdhY3ktdHJ1bmsKKzc3MDYgOTMzNDRjYmRmNTQyMmEzNjhhZGUyYmIxOGJkNTkwZDg0OTZhMTkxZCBsZWdhY3ktdHJ1bmsKKzc3MDcgMGE1Y2VhNDI3YTlmYmJhZTAzNzYxY2I4OWUyNjczMDAwYzMwZmVjNCBsZWdhY3ktdHJ1bmsKKzc3MDggYjc0OWQyZGQ3NTgyODgxZTAxYWNkY2E0ZjRmMTM2ZThlNDZiYjllZiBsZWdhY3ktdHJ1bmsKKzc3MDkgMDdlZDUyZTIwMGRiNjk2OTk1NjJmZmYzMzU4MWMwMTczYTQwZWFhYyBsZWdhY3ktdHJ1bmsKKzc3MTAgNGYxZmE3YjY5YmE3NzkzMzZlOTk2NjVkYWFhOTE0ZjY5MmUzNmI5MyBsZWdhY3ktdHJ1bmsKKzc3MTEgYjRlNjcxYmMxMzMxMWFhMDhkMGViMWUzODlkZjg3MDIzNTU0OTE5YSBsZWdhY3ktdHJ1bmsKKzc3MTIgMTIzNzNiYTI0ZTVkMzcyYzZhNTVjYjhjNWRmOGRkYTc3YWE3OTY1ZiBsZWdhY3ktdHJ1bmsKKzc3MTMgMTUyODhjODM0M2E1YTYwODg2Y2VjMTRlMTFjMGIwMWQ0NDBhOTllMCBsZWdhY3ktdHJ1bmsKKzc3MTQgMjc2MzU0MzdmYTdhMmQ3ZDA0ZGNlOTk5M2Y3Y2VmZDU1YjFkOTJlMyBsZWdhY3ktdHJ1bmsKKzc3MTUgYTMyMzM4NjRjYTM4NWZlZWUwN2NiN2U0Y2NiOWQzOWQ1OTZiNGU4MCBsZWdhY3ktdHJ1bmsKKzc3MTYgYjg5ZjUyODIxYzUyZTg4YTU2OWI2MDVlYThjZDljMGEyNTU3M2EwNSBsZWdhY3ktdHJ1bmsKKzc3MTcgYTUwZGY3ZjNhMTBhMzNkMmE3OTM4NmQ4MmUxZDhhNDFkYzJmNzQ2YSBsZWdhY3ktdHJ1bmsKKzc3MTggNGYyNTFiOGUzMjhmNWI1ZjlhNzdjYzc5MTc3NzAyYTQ1ZDY5MDMzMyBsZWdhY3ktdHJ1bmsKKzc3MTkgMjQ3MTM5ZDIwMGU4Yzc4Y2MxMTY3ZGNkNGZjYTE1Y2JhODdmMTZhZiBsZWdhY3ktdHJ1bmsKKzc3MjAgYzVmZDMyNzA1N2M2YzM1NGE3YTI2ZmFkYzNhYWFmMTliZWRkYTNhZiBsZWdhY3ktdHJ1bmsKKzc3MjEgMjMzMzBhMWI5NTk0ZDkyOGY1ZTllNmM1MmMyY2I2NzhiMjQ3YjcyZSBsZWdhY3ktdHJ1bmsKKzc3MjIgNmRiOGFkZThkOGE5ODBkNTY4YzIwMWYwYjY5MDNjMTJmYWY4MWJiYSBsZWdhY3ktdHJ1bmsKKzc3MjMgYTU0NzIwZjhkZDM2Y2ZmYmY5ZWQ0MzY4ODJlOTUzNzBhZGI0Y2NiZCBsZWdhY3ktdHJ1bmsKKzc3MjQgMTMwMDU4NzJkMDUzNDZmYjAxYzc4ZDhmNjA1MTM2NGU1ODgxYjQ4YyBsZWdhY3ktdHJ1bmsKKzc3MjUgNTJlM2I2M2YyZGNhMDBlZDYzN2YzOGI0OTQ0NGU0Mzg0YWFjNmQwNCBsZWdhY3ktdHJ1bmsKKzc3MjYgMWJkZGJhMmYxMDBlNDhkYTA1Y2Q1MmFiODI3MmJiNmEyNWNiNTUxNSBsZWdhY3ktdHJ1bmsKKzc3MjcgMmZkOTI0NmIwZWU4MjEzMjhkYTMzOWQ1OGJhMTU2MjgyZTc2YTdlMCBsZWdhY3ktdHJ1bmsKKzc3MjggNmZjZjIwNzQ5OGQ4YWJlMTcxZjM4MDZhNTAyMzA1YWRiMjY2ZTA2MyBsZWdhY3ktdHJ1bmsKKzc3MjkgZmUxY2NiNGU0YzFjNzMyMDAyNzYyYzJmNDZjMDMyOGI5OTJlZDNmNyBsZWdhY3ktdHJ1bmsKKzc3MzAgZDA4N2NkMDYwYmFkZGE3NmU3ZWM1MTk0YTcyZDBjYzk0M2M2MWQzYSBsZWdhY3ktdHJ1bmsKKzc3MzEgNzE2OTRhMTcxMzI0ZmY1ZTgyYjNjZmQ1M2UzYmNlMmZjMTdiMDNkMCBsZWdhY3ktdHJ1bmsKKzc3MzIgODEyODM3OTVmMTZhOGEzOGUyODYxZGFhMDdlOTdmNjUyNGJkODAyNCBsZWdhY3ktdHJ1bmsKKzc3MzMgNDBkMmZkNDcyMjg0YTRlNGNmMGVmNjAzMTBmOGYxZGNjOWIzMTk3ZSBsZWdhY3ktdHJ1bmsKKzc3MzQgNzFkZjIxYzBhMzRlZDRiYzQ0ZDdmMzk0ZGM5MDY5N2YxNjI1ODMyYSBsZWdhY3ktdHJ1bmsKKzc3MzUgMWU1ZDYyOTNjNTI0ZTNlNWI5NDI0N2E0Mjg5MjAwOTVlOTgyOTI1MyBsZWdhY3ktdHJ1bmsKKzc3MzYgNzI5ODZiNzE2ODI0NjJhN2YzNDRlYzFjODlhYzAxYTk4NjMzYjI2NyBsZWdhY3ktdHJ1bmsKKzc3MzcgNWFiYzFhMzZiZWRkYzczOTYyY2M5NTFiMDE3ZDRiYzE5Mjg3NWQ2MSBsZWdhY3ktdHJ1bmsKKzc3MzggODZkNjBjMzRlYmRlNzc4NTc4ZjFlMzVkMWU5NDcxMjJhNDUyNDgwNCBsZWdhY3ktdHJ1bmsKKzc3MzkgMzg4NzhmMWNkNGYxZmVjOTk5N2I0M2IxOWY1ODg3M2EzZDNjYTM1NyBsZWdhY3ktdHJ1bmsKKzc3NDAgM2MxNzg4YWI5NzYxMDZmMzAxNjA3NzA4NGMyMjMyMWQ5YmU3MDRiNyBsZWdhY3ktdHJ1bmsKKzc3NDEgMWVmYzQyNzNmZGI3ZTM0OTBmOThkNzQ3YTg0YjZlMjJmN2Y3ZGY5MiBsZWdhY3ktdHJ1bmsKKzc3NDIgZDQxZWVlNmQyZmY3NjkzYmFmNGRjMDBmNWQ0OTJhZmQ4NjFlNDY1MSBsZWdhY3ktdHJ1bmsKKzc3NDMgNGYzMzFmNWJiNWYyYTRiOTIxOTk0OWQ3YTY5MzRjYWU1ZGJlY2JkNiBsZWdhY3ktdHJ1bmsKKzc3NDQgNGU1Mzc0NmU1MWFmOTBhMTcyYmU0NzE2YTMwMDgxYWRlOGM5NDM4NyBsZWdhY3ktdHJ1bmsKKzc3NDUgZGU5ZDBjNTI0OWIwZTJhN2Q0NjFlY2ZkZjFmYjM1MDg5ZGJlZDFlNiBsZWdhY3ktdHJ1bmsKKzc3NDYgYWZmNzA2MzM3OGE4YTYzOWM5NGQzNTA2NDQ4NjhjODk3ZTY2OTQ2ZCBsZWdhY3ktdHJ1bmsKKzc3NDcgYjE1OWY5OGNiZmVmYmQ2NTE4NDQxMDcyYzQ2MjkyYWQyNzk0MDY2ZCBsZWdhY3ktdHJ1bmsKKzc3NDggMTE0OGU3ZWJjYTM1NGIyM2VmMzgwY2M5YTIyNDU3ZmU1OTYyYTA2MSBsZWdhY3ktdHJ1bmsKKzc3NDkgMGQ2ZTcwYTVhYjRiZDFkNzJhZmZjMzBlNmMxMWM4NGJlYmZiMWE5ZCBsZWdhY3ktdHJ1bmsKKzc3NTAgMDk5ZGJjNjg0YzdiZTQwY2Y2OWY5NmQyODM0MmI0YjcwZDYyNzE0YiBsZWdhY3ktdHJ1bmsKKzc3NTEgYjdjYjY5NzY4OTNkODVmODkyMWNkMmVjMGU0NDA2NzUzOWMzYWY0NiBsZWdhY3ktdHJ1bmsKKzc3NTIgN2RmNWEwZDFmNTIzMGJkZjFhMzRjMGVkYzYwNDU3MDBkZGY3NGVkYyBsZWdhY3ktdHJ1bmsKKzc3NTMgMDFjM2U2NGJjODI0YWFiMGFiZDE5NmU0ZmE0MWU2MTFkMzhjNzk5YSBsZWdhY3ktdHJ1bmsKKzc3NTQgMTYzNzJhNGM0YzE0NWM2OWNkNTFhODcwZjhjYjFjY2ZhZjk2ZGMzYyBsZWdhY3ktdHJ1bmsKKzc3NTUgZThmOGNmMzU4MDU0ZWQ2YjZkODljNDhiMzZmYzI4NWUxOTNmNWUwYyBsZWdhY3ktdHJ1bmsKKzc3NTYgNjA3ZmEzMmZjMDRhMWRhM2NiOWEwZDJkMDc1ZTUzMjY5ZjUwOGRmYiBsZWdhY3ktdHJ1bmsKKzc3NTcgNTI1MGY0MDlkNTU4NzIzMWUyZDg2ZTY5NzYzN2I1ZGViNGM5Mzg2YiBsZWdhY3ktdHJ1bmsKKzc3NTggODJhM2ZiZGEzMzYzNTBiM2E0YzM1YTYxN2RiODk1MTcyODQyYmFjMSBsZWdhY3ktdHJ1bmsKKzc3NTkgMDJiMmVkZjU1YmFmMzlkZjk0NjVhZDhjNjRiZGU3MTA2MDNiYmY1ZCBsZWdhY3ktdHJ1bmsKKzc3NjAgZDJjOTk1ZWM0MjkwMTAwOGRjMWVmOWQzNGM5MGJhMDZjNzQ0ZDYzNiBsZWdhY3ktdHJ1bmsKKzc3NjEgZmJlZGE2ZjQ2ZWJiMzhhYjdiYTUyNjRjZDRhZDM5ODg2Y2QyMmMyOSBsZWdhY3ktdHJ1bmsKKzc3NjIgNWFmNzY2YTFiNTMxMjUwZmI2NDg4NzgxNjA4NThmODk3OTNkZTMxMiBsZWdhY3ktdHJ1bmsKKzc3NjMgMGYxNzExYjdkMzY3ZGZmYmI5YzUxNDI4ZjQ0MTY4YWFhOTU5NDRlOSBsZWdhY3ktdHJ1bmsKKzc3NjQgNDdkM2QzOTZkNGVmOGEyMWE2MWQ5YzlkNGVlZWRjODNiMWQwZTQyZSBsZWdhY3ktdHJ1bmsKKzc3NjUgZDMyYjhmNGQ5ZDMwOTIwY2U4MWMwYWNlMWUxMjdhNDAzNzdjZWM0NSBsZWdhY3ktdHJ1bmsKKzc3NjYgYTc2YTNhMzlmNmJjZmI3N2VlYzI4YWMwYWU5ZjM0MGJkMzcxZDQwYyBsZWdhY3ktdHJ1bmsKKzc3NjcgY2E1NjhlNWViZDE5YTM4MDU1ZmNjZTcyYzU0YWI4OTAxZjhkMWZhMSBsZWdhY3ktdHJ1bmsKKzc3NjggYjBkOWRlMzc4NmVjMzI5YzBkNjljMDRkMTRiMjY1NjYxNmJmMWI0MyBsZWdhY3ktdHJ1bmsKKzc3NjkgNTdhMmVkMDYzMGNkODU5ZThhNTg4Y2NhYmI1N2FkYTcyOTQ4OTg4OCBsZWdhY3ktdHJ1bmsKKzc3NzAgMmYyNzYwYzNkZDkwNWQ0M2ZkZDUyYzM2MzhhMDRiYzBjNGZlZWIyNiBsZWdhY3ktdHJ1bmsKKzc3NzEgN2FhNDU2NjAxNGM2YWMwNDkyYjk4ZTllMmVmZGJlZDUzOTJiMzYzZSBsZWdhY3ktdHJ1bmsKKzc3NzIgN2VjNzMzZjljMzA1NzRiZWQyYmVkODRkODFjOTUxOTJhNjkzYTUyZSBsZWdhY3ktdHJ1bmsKKzc3NzMgOWEzMmJkOGY0YWM4YTFjZTUwYjA2OGI1MWIxOTdmNDBjYjg5ZThiYiBsZWdhY3ktdHJ1bmsKKzc3NzQgYjUyM2U2ZTdhYzYxMmFkZTFlMjIxMDQ1NWIxMzRkNjUyZDExNzM5OSBsZWdhY3ktdHJ1bmsKKzc3NzUgZTc3OTQyNTYyZGQzOGU1MzVlNjZiOGM5YzU0OTRkMTY1NDk3ODUzNCBsZWdhY3ktdHJ1bmsKKzc3NzYgZmI4MTY1MzA0OTM5MzQ1ZGEzZWU3NWVjZGM5YmRhZGVmODg0OTE1NCBsZWdhY3ktdHJ1bmsKKzc3NzcgNWUzYmNmNGViZjI5ZjQ4Y2NjY2E1Yzg2NmM2NTgyZDRjYmY1NmEzYiBsZWdhY3ktdHJ1bmsKKzc3NzggOTY0NTYyYmQ3NWNjMzc2ZmE5YTMyOTQ0YjEwZGUyMDEwYTczZjlkMyBsZWdhY3ktdHJ1bmsKKzc3NzkgNDQ1OTE3MmY0MGJiMTQ0ODlkM2FlNjZmYzg5MTUyOWNkMzI0NWQ5YiBsZWdhY3ktdHJ1bmsKKzc3ODAgMzMyZmUwMmJmMDJkYzQ3YWY5MDM4MjhjNDIyYjYzMjVkYTk0OTZkMyBsZWdhY3ktdHJ1bmsKKzc3ODEgZTYxNGJjZDM0ZTM0ZmM0ZjU3NWViZTAwYTNlODMxYzBhNjczM2RjYiBsZWdhY3ktdHJ1bmsKKzc3ODIgYzNlZDI5OWQ1OTNlNmNmNDRmZWMzYTBlYzk2MTFjZmUzMDc4YWQxMCBsZWdhY3ktdHJ1bmsKKzc3ODMgZGY4N2Q1ZDFiYmRmMTdmOTczZGM3ZGM4NGRiZDMwY2Q1NjY2YjRjOCBsZWdhY3ktdHJ1bmsKKzc3ODQgZTc1NmI4ZTU0YzdjMWM2MmNhNjY1MWFmNWU0MTA3NGY1OGYzMTdiZSBsZWdhY3ktdHJ1bmsKKzc3ODUgMTkyZTJlMGNiY2U1MDY0OGQzMjY5ZWMzMTdhNDk2N2RiZGQzMzhjMSBsZWdhY3ktdHJ1bmsKKzc3ODYgNzgyNTk3Y2Y2MTUxZDlkZWExZjhiNTk0OTJjZTVhZTNmYjkzNWJlMiBsZWdhY3ktdHJ1bmsKKzc3ODcgZDBlYjE4MzA5MmIwY2RjNjhiNWQwMTVlNTgzNWU5ODIwYzg5MWJkNSBsZWdhY3ktdHJ1bmsKKzc3ODggZTg5OTY4ODRlOGUxN2U2YjdiNDAwMzkyODdiMzZmMGNkNWZiOWEwZSBsZWdhY3ktdHJ1bmsKKzc3ODkgOGZjMjE3ZDMzMjY3NTQ1OTdiMTY2ODFkNWQ3MjZlZWJlZDc3ZTZhMyBsZWdhY3ktdHJ1bmsKKzc3OTAgNjVjOWU5MGQ4MTQyNjkyZGYyYjg4OTI2MTJkODZhYzNjNTM2ZWRiZCBsZWdhY3ktdHJ1bmsKKzc3OTEgYzhlMjRjNGI4YmZiY2NhODM5OWY2MTQxN2QyN2FhMzU3NTU3NmM2NCBsZWdhY3ktdHJ1bmsKKzc3OTIgYzcyYzdlMTkzMGIzZjJjYjA3ZmM0YmFjOGJkY2VjYWVkYTg4NjNhZiBsZWdhY3ktdHJ1bmsKKzc3OTMgMmM0YjgwMmEzYjVkOGI1NWVlMDVkNGI2ZWUxYzUxMTNjYzU0MWQyZCBsZWdhY3ktdHJ1bmsKKzc3OTQgNzRhMWJjMDk5ODI3NmU3MjdmMTFiZDQxMjE2YzY3M2VhNWEwYTU3MCBsZWdhY3ktdHJ1bmsKKzc3OTUgYzNkZGI4NGE3NzYxZmRlM2M1NTQxODkzYTUzMzg5YjNiMDU1NmM0YyBsZWdhY3ktdHJ1bmsKKzc3OTYgZTJhYzA5ODJjYzMyZjBjZjExNmJjOWQ5YjRiNDI3NTgyMDE0YjJlNyBsZWdhY3ktdHJ1bmsKKzc3OTcgMzg4MTg1MzhiODljMGFlODcwYWNjZTg3MDA1Y2U2NzBjOTQ0NzJhYyBsZWdhY3ktdHJ1bmsKKzc3OTggOTFmOTkxODEyNzE4NTU3OTNhMzIyYmVlNzFiNjdmNGJhNDdiNjA0NyBsZWdhY3ktdHJ1bmsKKzc3OTkgNDg5ZGNhM2I1NGNjYjYwZmFiNjE0Yzk0YjZiMGNjY2Q3MTFlNTZmMyBsZWdhY3ktdHJ1bmsKKzc4MDAgM2EwNzc5OWRlYmExZjZkY2JjYzNhYTk3ZDJkZWNkZDUyOWRhZDAxMiBsZWdhY3ktdHJ1bmsKKzc4MDEgYjY4OTMxMzM5NDBmZWViMTMxNDE1NDJiMTM5N2JlNmI2ODRjMTNmMCBsZWdhY3ktdHJ1bmsKKzc4MDIgMTUyYjI4MjdhMWEwODczYTM1YjJiYzQyYzMxMjNhMzM0NzMyM2M3NyBsZWdhY3ktdHJ1bmsKKzc4MDMgMzU5ZThmODE1YTNhY2I0OTI3NzE1Nzk3MDJlOTZhYzVlYWViMTdmYyBsZWdhY3ktdHJ1bmsKKzc4MDQgNDM3NTJlMjA5NDczYzM4ZTFhODQ4NTRhOWQ5YjFhMmYxZmVkNTg1YSBsZWdhY3ktdHJ1bmsKKzc4MDUgNWEyMmY5YjM4YWFjMjI2OGFiMDg2ODQ4M2E3ZjVkMjc3OTRhOTU2MyBsZWdhY3ktdHJ1bmsKKzc4MDYgNjIzMmFjYmE3ZWIyMGEwYzc1N2ZmY2I4MjQzYjM3YzVmNjIxYTkyNiBsZWdhY3ktdHJ1bmsKKzc4MDcgOGRmYzI1Mjk2M2M3MTk5ZTNiYmE1ODk2ZmE5NTBmZWYyNDNkYWNkNyBsZWdhY3ktdHJ1bmsKKzc4MDggNjI3MzE2YzAwMWZiZDQ1MTc3M2NjMWIyYjM0N2I4ZjZiM2ZjNTMzZCBsZWdhY3ktdHJ1bmsKKzc4MDkgZDFhYzUxYjg3MGUyMThjMDQ3NjYyM2ExZWM5MTlmZThlZWVkZTllZiBsZWdhY3ktdHJ1bmsKKzc4MTAgZWU5Mjc1YjBmNWM4MGFmOWZlY2Q3Y2QwMzgzMjFkOTJkZWI1MGZjZSBsZWdhY3ktdHJ1bmsKKzc4MTEgNzQ2ZjY4N2FjZmMxYWY1MjMxZDk1ZjQwZjU0OWI5MWYyNzViMDIyYiBsZWdhY3ktdHJ1bmsKKzc4MTIgMTY2YzIyMzI5MjFhYmZjZThiYWNjZDUzYmY3MzY2ODYxZDkwMTQyOSBsZWdhY3ktdHJ1bmsKKzc4MTMgNjc5OTViYzE3ZjYyNWJjMGJjYjYzMmEzODcxNjkxNThmYzJlNmUzOSBsZWdhY3ktdHJ1bmsKKzc4MTQgYjBhMzE0MGNjOWIxYWRiMDdiZjIzYWJhYmRjOTkxNTViZDMyZGY4YiBsZWdhY3ktdHJ1bmsKKzc4MTUgZGI2NzNlOThmMjhkYWVlYjJmNzEyMTNjYWNmZWM1MjE0ODdhZTY3MiBsZWdhY3ktdHJ1bmsKKzc4MTcgNjdlNTIzN2NlMTQxOGIzODdkYTIyM2VlMzI0NTE2MzE1ZDUyMTVjOCBsZWdhY3ktdHJ1bmsKKzc4MTkgNjdhMGI1YWFhZTQzM2JhOTgwZWZhYmJiNzUxMTFiNDI4MjQxZGYzMSBsZWdhY3ktdHJ1bmsKKzc4MjAgNGE1NDFiYjBjNTM0MzNjN2FhMDliOGNiYjNiNjU1NWViMTYyMzM3OCBsZWdhY3ktdHJ1bmsKKzc4MjEgOWNhMjcxODhkYTIzMjMyMmY2NzAxMWIzNWMyMjJhNGYwMGUzZTU0OCBsZWdhY3ktdHJ1bmsKKzc4MjIgNWIyZWQ2MDgxZWI5NGFlMTlmNjM2ZDg1MmMwMjE3MzJiN2FlNTYzNSBsZWdhY3ktdHJ1bmsKKzc4MjMgMzM5ZGNiOWEyODI1NzBjOTMxZmE2NWVjMWVkZTE1ODYwZjQwZTVhNSBsZWdhY3ktdHJ1bmsKKzc4MjQgMDA2MWY0ZWE5N2JlOGVjMzUyMWRjOWNkMTQ2M2E2YzUwMTI4MDk2MSBsZWdhY3ktdHJ1bmsKKzc4MjUgYWUwMmVkMmFhYzNmNmM2YTUxMWI1MjNlMThiNTBjZjlmOGY2YmQxMSBsZWdhY3ktdHJ1bmsKKzc4MjYgNmFiMzkyZDdhNTJmY2Q2MDczNzRlZmNmMmNmYzZmZDkyZmQ5OWQzNCBsZWdhY3ktdHJ1bmsKKzc4MjcgNjg4YzNmZDQyY2E2MmQ1NjIxMTEwNmQxNTMwMWU4OWI5NmNkMTIwNSBsZWdhY3ktdHJ1bmsKKzc4MjggOTk5YzE5N2RhNTdjYzE2YmY1OTZmMWVmNzAyZTBjMjUzOWIyNTgwZSBsZWdhY3ktdHJ1bmsKKzc4MjkgZDU3NTdhYWQxYTRmZWE3NzhlMjRjMWJhNTY3NWRhZWZlZGMzODcyOSBsZWdhY3ktdHJ1bmsKKzc4MzAgZDQwY2Q5MTBkNjg0ZjBlYjc3YmUzZTA3NTZkNGM0ZjQ1NDNlZjU3YyBsZWdhY3ktdHJ1bmsKKzc4MzEgMmMwYjEwMTY1ZjdlY2E0MTk2YWUxNDRiMWQ2ODNiZDI2YzA0ZjE1ZSBsZWdhY3ktdHJ1bmsKKzc4MzIgMTc5MTY4ZTE3YmZlMjVjNTc3MjRkOWUyZGJlMjAzMjE3MjgwOTQ2MiBsZWdhY3ktdHJ1bmsKKzc4MzMgNDczNjJmZDkwNzFiYzc5MDliNzAxZTk3NTc4NDFhMzg0NWVmYzEzZiBsZWdhY3ktdHJ1bmsKKzc4MzQgYmMyZTMzMzQwNDhlMTNhMWFjMzU2Zjg4MDhiYWY3MGFlZmY2ZTk5NCBsZWdhY3ktdHJ1bmsKKzc4MzUgZGI0MGRiYTNmNzlhN2Q1MzAzMTQ0ODA2Y2MzMmE2YjhhM2NjYTgxNSBsZWdhY3ktdHJ1bmsKKzc4MzYgZWRlYTRmMWQ2M2ZkMDE1NTQzYzFiYzZjYzRjNTUxYjU5OGQzZWYwNCBsZWdhY3ktdHJ1bmsKKzc4MzcgZjg1ODAzOGI2NGMyNjA2NTM5YzJmYjhjYjQwNzI0OWM3M2Y5OTg3YSBsZWdhY3ktdHJ1bmsKKzc4MzggYjFjMmI3OWFhNTFmODVjNDkwZDExMjU0MDVmZWViMTM0MDA4ZTQ1MCBsZWdhY3ktdHJ1bmsKKzc4MzkgNjFlNDFiMmIxYjY5ZDQ4OGIwYjhkYjQyMzAwYTczMGFmYzE1NTVjMSBsZWdhY3ktdHJ1bmsKKzc4NDAgY2M1ODZiZGE2Mjc1NTI1ZDY3NThlMzMxOGFjYTI2YzVlYmY3OGMxNCBsZWdhY3ktdHJ1bmsKKzc4NDEgZTRhZjQxNGY1Zjg5M2I1ZDhjNmFlMDhlYTAxMWRlZmJkOTVkMTQ4MCBsZWdhY3ktdHJ1bmsKKzc4NDIgYjdjYTk4YzZkYmJkNjhhN2JhMzdjMzg0ZjU1MTc2Yjc3Njg4ZWMxOSBsZWdhY3ktdHJ1bmsKKzc4NDMgODczMTMzMzNhZTNmYzM3M2JlNGVjODgxNjBkYjM0MTdkNGVlMGYxZSBsZWdhY3ktdHJ1bmsKKzc4NDQgODk4MTUzM2U2Y2MxYTEyN2FhYjgwMzUyMGU1MTQwOWFiNzAyMTIwOCBsZWdhY3ktdHJ1bmsKKzc4NDUgZjIxMzJkMWY2NmE2MjhmNTljNWVmY2VkODE1MGU2YTFhOTM5OTVmMiBsZWdhY3ktdHJ1bmsKKzc4NDYgM2NhMTQ1MDMxNzBjYzlmOWI5MmZjMDg3NTg2MDJiYjI3MTYxZmFlOSBsZWdhY3ktdHJ1bmsKKzc4NDcgMWVhMWYwMTkyNjhkOWYyNzA3NDU3OWQ3MTVmY2IyOTY2MTY2ZjgwZSBsZWdhY3ktdHJ1bmsKKzc4NDggNDkzYTM0ZGNhNTNlZGQ3MjU0NjI5OTg1NjhhNzUyNTUyMmQzMGRiNyBsZWdhY3ktdHJ1bmsKKzc4NDkgNDI0OTIyYWZjMWJiNDBlOWY1MjAyMDlmNWI5NDNkNDZhODkzMTBjOCBsZWdhY3ktdHJ1bmsKKzc4NTAgNTg4MDM4NGQ3YzcxNDhiOGM0NTUxMDFmNzRkODA1N2E2MzBhMTEyYiBsZWdhY3ktdHJ1bmsKKzc4NTEgMTE4YmVlZjkxODczNmQ1Zjg2MmRhMzA5MmIxMDgxZjEwYmI4NzVhYiBsZWdhY3ktdHJ1bmsKKzc4NTIgN2Y5MGE2NzFjYzFkYjhhODExOGZhZjZiYTNjNGJiOTQ2ZmQyMTI3OCBsZWdhY3ktdHJ1bmsKKzc4NTMgOTk4MGZhZWViN2E1MTNkZDgyNTMyMmRjMWNlY2RhZDhiNGJjOTM0ZiBsZWdhY3ktdHJ1bmsKKzc4NTQgMDk1OTdhNDIzMjI3Y2UzMDY2ZWQyNzNhNmZmZDYxZmFlNWJjZjY3OCBsZWdhY3ktdHJ1bmsKKzc4NTUgMzE5ZTNlYWVjZGY0ZmI3OTA0YzE1YTUwMzI5ODY3OTgwN2QyNWEwYiBsZWdhY3ktdHJ1bmsKKzc4NTYgMWM5YTg0ZTA5ODFkMzU4YmE5ZjAzODBjODJlNzEwNjc3ZWIxNTY0MyBsZWdhY3ktdHJ1bmsKKzc4NTcgMmQ0YzZjYmEwMWJmMDA1ZTRiZmRjMGJlMmExY2FhM2VjMzNiZTExZSBsZWdhY3ktdHJ1bmsKKzc4NTggMzM5ZDQxMjlkM2Y3ZjE1YTQ4OWUxNjk4NWViMDEwZWY0NDMwNGJmYSBsZWdhY3ktdHJ1bmsKKzc4NTkgM2Y1NThhMzJjNDk4MDAwMzUyNDBlYTljMzkwYTdmZDQ5Y2JjZWU0ZiBsZWdhY3ktdHJ1bmsKKzc4NjAgM2M1ZmNmOGJmNTE4OTYxYmM0YmE4NWZiMmUwMGUwY2M4ZjlmMGVlYSBsZWdhY3ktdHJ1bmsKKzc4NjEgMzcxNGIzMjU4MjZkODk3Y2QxNmU3OTM0ZjI0OWE5MTk1MGEzMTJiZSBsZWdhY3ktdHJ1bmsKKzc4NjIgMTBlN2RiYTAxZDA1MTIxZmRhMWFkYTU0ZGFmYmYzMGY3N2RjNmViNyBsZWdhY3ktdHJ1bmsKKzc4NjMgNDNjNWUxZjkxNTRlNmQ3YTliMzJlYmI2YjM0ZDk3OGUzNjBjZDQ5YiBsZWdhY3ktdHJ1bmsKKzc4NjQgMDljNThiMTc0OTg5OTEwMjcwOWZkMTY5MWU0NTVkMjVjZWIyNWE2ZiBsZWdhY3ktdHJ1bmsKKzc4NjUgMTNhMzBjZWE4ZGJmN2QyODVmYzdjZTFmMzQwMGZlNDhmNzA1YjBiYiBsZWdhY3ktdHJ1bmsKKzc4NjYgNWE5NzA2OTY1YTRlYzNmYzEzOTBjYmI2ZWJmYjNmMjYwYTg0ODA5MSBsZWdhY3ktdHJ1bmsKKzc4NjcgYjI0ZTg0YTBmMzBiMzJhY2MzNDFiZTViMzAyMGNlODNlZmE5YTkxMSBsZWdhY3ktdHJ1bmsKKzc4NjggZTkyZjE4MmQ3NzI2OGM4NmI3OTQ5MjYxNjcwOGE3M2QzNzFjOTU2OCBsZWdhY3ktdHJ1bmsKKzc4NjkgMTk0ZDI2ZGY2YzUwMGNmZmQyZmMxOWZiMDQ1MDdkNDFmMThkYWI0ZSBsZWdhY3ktdHJ1bmsKKzc4NzAgMzFlMzk5NjM2Njc1ZmQ0MTQxMGM0NzUyMGQ5NzVhMzc1YjBmYTFlOCBsZWdhY3ktdHJ1bmsKKzc4NzEgYzJmYjk3NmJlY2ViMzlkYWQyMDE0MmM1Y2NlZGJlOWE3OWNiYzIwMCBsZWdhY3ktdHJ1bmsKKzc4NzIgMmM4MWQ3ZDY4ZWQzYWFkM2M2N2U3NzU5ZmQxNGExMWQzOTQzYWUxMCBsZWdhY3ktdHJ1bmsKKzc4NzMgZDE0NDc5NTBmYTA0NTY1MmZmNTViZTNhMmFjMjc1ZGEwNzA2NzZjNiBsZWdhY3ktdHJ1bmsKKzc4NzQgZmQ3ZWIwNThjZTVkYjMwNDE4YzUxZGZiNDZjNDMwNmNhM2UyMWUwOSBsZWdhY3ktdHJ1bmsKKzc4NzUgNzJiMjMxZWRmYjI1MjM5NTUyOTlhODk4MjQyNTk0MDNmZjQ1MzFmNSBsZWdhY3ktdHJ1bmsKKzc4NzYgMGE1OTk3NzNhOWNjYTRmZWRkZTdkMDQzZDc3MzA5NjVlMWM0MmU5NiBsZWdhY3ktdHJ1bmsKKzc4NzcgNzkxOGU4NzM5MTQ4YTRjNjBhYjY1Nzk0Yjc2Y2VhYTg4ZjZkYjllOSBsZWdhY3ktdHJ1bmsKKzc4NzggNDg3YWQwMzI3YWUxODI4YjI3ZGZiZmIzYmJlYzc1YjdlNDE0ZjBjZSBsZWdhY3ktdHJ1bmsKKzc4NzkgOGYwYTc5M2JiMGUyNjk1NzFjOGJjMGVhMmVmM2E2YmUxNzdhNTc2MCBsZWdhY3ktdHJ1bmsKKzc4ODAgNTBhOWMxNDA5NDZjNDg5ZmYyM2EyZGIzZTEzM2M0NDE5YzRmNmQ4ZCBsZWdhY3ktdHJ1bmsKKzc4ODEgMzc4MGNjZTE0ZjdkMDJjZGRjMWZjZDFiOTUyOTc2OGRlMTdhNjNiNSBsZWdhY3ktdHJ1bmsKKzc4ODIgYjc4NzFjYTkzMGFkNWJjNTFhOTA5ZWU3NWVjMmU1ZGExM2UwN2Y0ZCBsZWdhY3ktdHJ1bmsKKzc4ODMgYzIyNTQ3NTQxOTJjMmVhZjE1ZGQyYWU0MDI1ZWY4ZTMzNzNiN2JiMCBsZWdhY3ktdHJ1bmsKKzc4ODQgYjdhMjNkYmUwMDY1ZWNmN2Y4MTBiOTc0MGE3MzhhNTM5MmJkZTE4YyBsZWdhY3ktdHJ1bmsKKzc4ODUgNjQ4MTI0YTU4ODBhMzMyOTdhNDVlY2I4ODQxYzQ3ZTA4N2EzNmFkOCBsZWdhY3ktdHJ1bmsKKzc4ODYgMThkNmE1YWJkM2Y4MzIyNzM2YzVmYzg1MTE0ZTBjMDI4ODRhNzlmMiBsZWdhY3ktdHJ1bmsKKzc4ODcgM2IyZmRhMzFiZjFiYThlZGM1MDU3NzBlYWZkOTcyNmQ0NDRiNmNhNCBsZWdhY3ktdHJ1bmsKKzc4ODggNjcxNzA3M2RlNTg2NWE3MDYxZGUwZDAzZWQzNmJmZGNkM2QxMDhmYiBsZWdhY3ktdHJ1bmsKKzc4ODkgNzhkMzk4MDA1YmFiMDJhNTQyODZmOTBiYzlmZjA1YmMzMjRhZjdkYyBsZWdhY3ktdHJ1bmsKKzc4OTAgMTAyNjdmZGM3NTMxMTZjMWQzZTI1OTg4MjAzMzVmMGI3ODE3MGY2NCBsZWdhY3ktdHJ1bmsKKzc4OTEgMDEzZmY2OTUxOTA5ZjBlYjU1YjRlNzcxOWUzOTViMDAxN2Q5MzBjMCBsZWdhY3ktdHJ1bmsKKzc4OTIgNTk2MzgwYTU2N2QyMjM5NGNhMDFlZmYwOTA1OTM0YzM0YjUyY2ZlZCBsZWdhY3ktdHJ1bmsKKzc4OTMgMTcyMjU0ZDQxYTUxZGFmYjc0NmQyMTU5Njk4YWJkMjZmMjZiYzIyNSBsZWdhY3ktdHJ1bmsKKzc4OTQgYWJmMzNiODgyY2ZkY2U4Mzg3NGNhMTY0MzAzZDMzNDJiYmZjOTBhZSBsZWdhY3ktdHJ1bmsKKzc4OTUgYTFiNjNjNzNhZDFkYzUxNGNiMzZjNDAwY2FhMjY3NjY0NTkxNTVjMCBsZWdhY3ktdHJ1bmsKKzc4OTYgZDk5NDFhODk1YzAyMDk0MTE1NjRmMmQ0ZjA0MTcyZmVhZWFkYjA1ZSBsZWdhY3ktdHJ1bmsKKzc4OTcgMDE0ZWE5ZDcyZDAzY2ZlNGY5Nzg5NzFiNzFlM2QxNTQyZWQwMDM0YyBsZWdhY3ktdHJ1bmsKKzc4OTggZGFjYmZhYTA3YzQwN2MyNmFhYjk4NDJjZTRmMGVlMTMyNGIzOGZmNiBsZWdhY3ktdHJ1bmsKKzc4OTkgMzczMzJiNmY2MjgwYmVkNDcyYmQyOWQ5MzljZmU1YTVjYTRhMWI1YSBsZWdhY3ktdHJ1bmsKKzc5MDAgYmNjYjhkNzQyOTY0N2I5NDFlNWU3ZTZmODdiNTA0MzY5OGY1ZDNkZiBsZWdhY3ktdHJ1bmsKKzc5MDEgNjM4YTk5YmM4ZjJjY2Y3YjliYTQwYTI0OWQwNjI0NzJlMmFmNmI4MyBsZWdhY3ktdHJ1bmsKKzc5MDIgYTdlMzA5YjE3NGIyNzI1ZWJkNTMyOThkZTk1MTlhMjQyODE4ODMwZCBsZWdhY3ktdHJ1bmsKKzc5MDMgZGFiODYzYjc5ZGViYWMzMzg5ZWI0ZWM3ZTMzMjliY2JjOWU0ZDY0ZiBsZWdhY3ktdHJ1bmsKKzc5MDQgYjAwMjMzMzU1ODhjZWY3Zjk3YTkyYTcyOWUwOWE0ZGFkNTNkZDc5MyBsZWdhY3ktdHJ1bmsKKzc5MDUgNWUyYzE3YjM3NGZiMGVhYTI3MDFkZmY4YTUxOTdkMjM3OTBlZWQxMyBsZWdhY3ktdHJ1bmsKKzc5MDYgYWMyMzVjOWU2ODgxZjMzOGNhNjA5ZmVjYTQ4MDRmZTJkMmQ1OWNmMiBsZWdhY3ktdHJ1bmsKKzc5MDcgMjMyOWNjZjBlNTgxMTFjZjE2ODkxZDU2YmFkMWJlMzIzMzFhYjU3OSBsZWdhY3ktdHJ1bmsKKzc5MDggYTU2YjQ0YjM1NTA1NzJmZDM1Mjk5OTAwNzQ4NTYxZTkxZmNjODUzMCBsZWdhY3ktdHJ1bmsKKzc5MDkgY2VlNGM0NWM1NjhmNzYwZmFiYTE5NjlkZWZmYWZiNmRmYzYyMzg3NCBsZWdhY3ktdHJ1bmsKKzc5MTAgYWQ0NzQxZDU0MzFjYzFiZDBiY2VkMWNiMzFhMDE4MGEyMzY0NjY2NiBsZWdhY3ktdHJ1bmsKKzc5MTEgM2Q3ODkwMjM2YTRlNTkxYjM4YzEzMzhlZjM3NjgyNDA2MGQyNGJjMSBsZWdhY3ktdHJ1bmsKKzc5MTIgNTkxYzY0MjBmMTFkMDI1ZGNkMmM5MzFiMGJlMTc0ZTI1OTJhMzc4ZSBsZWdhY3ktdHJ1bmsKKzc5MTMgY2Y4MThiNzBkYTNlNjVkNjQxZmJmOWIyNDljMjA1ODY5Y2NlYTE4OCBsZWdhY3ktdHJ1bmsKKzc5MTQgYzJkYWUyYjFhMTIzNWQxZDIyZDU3MjFkYmEyMTVjYTY3NDhjYmUzZCBsZWdhY3ktdHJ1bmsKKzc5MTUgZTkyNmMzMzFlYmJmMWQzMTdkN2U3MTk1MmNmMDM1NzExMGQ1YzEyMiBsZWdhY3ktdHJ1bmsKKzc5MTYgMWRhZTViMWM4ZGJhMTJhNTM4ZjZhODBkZjBlYmFjMTQzMTk3MWUxYyBsZWdhY3ktdHJ1bmsKKzc5MTcgOWVhYTJjYWVkMWMzYjg0NWEwZjg5OGYwNWU0ZDYxNDIyOGE2MDc2YSBsZWdhY3ktdHJ1bmsKKzc5MTggM2M2ZGI3MTY1YmMzZDYwNGRjYTRmODY5ZmZhZjk0ZGViOTY2NjNmNSBsZWdhY3ktdHJ1bmsKKzc5MTkgNDU3OWE3NzAxOTQ5ZGFiZGM0NWZmOWQwNDAyNmY3MTQzNWRhODhlYSBsZWdhY3ktdHJ1bmsKKzc5MjAgODg2OGU5ZjEzNjU3ZDMwYzljMjM3MTBmMmVhNGE1ZGQwZmQ3ODBlMSBsZWdhY3ktdHJ1bmsKKzc5MjEgODdjNGYwNWExN2U1MWZjNjA3MjRhNmU5NjdjNzg5OTY0NTA0ZGJjYiBsZWdhY3ktdHJ1bmsKKzc5MjIgOGYzZTE2MTIzNjAwNDllMTQ2YjcxODQwN2Q3ODRkY2U3MWIwOWQ0MSBsZWdhY3ktdHJ1bmsKKzc5MjMgNTE1ZWQ3M2RhNWIxNGI3YjVhZWU4OGExMTk2OWU1NzE5NDkyZmE4ZCBsZWdhY3ktdHJ1bmsKKzc5MjQgMGIxZTY5NTA4OTA3MzZkMjQ5NDEzMDFiY2FlYTZhMjc0YmZhYmMwMCBsZWdhY3ktdHJ1bmsKKzc5MjUgZTlmNjE1ODg0NmIxNmI3YzM4MDgzM2U0NWU5YjgzNDgxN2EwNmY4NSBsZWdhY3ktdHJ1bmsKKzc5MjYgMDFmMDJiZjJiNDQxNjdiNjg0NmFhMzQzMzg1MWEyNmFiYzA3MDRjZiBsZWdhY3ktdHJ1bmsKKzc5MjcgNGE4MGU2Y2E3Y2QzNWVmNDdlMzAyZTdhM2MzMjY4MzEyZjE0ZmU5NiBsZWdhY3ktdHJ1bmsKKzc5MjggNWFiZGRlOTljOWVhZGFhOWQ4MDZiZmFlODllMWJjMzlmNjg3ODdhMCBsZWdhY3ktdHJ1bmsKKzc5MjkgMmE4NzUxOTlhNzFlODYwMjJhM2ViYzA4OGEzZmE4ZTNjMTY5MGIwYiBsZWdhY3ktdHJ1bmsKKzc5MzAgOWM2YzA3ZDQ0OWRmNTQwMzYyMjk0OWI3OTg4YzJhNjZkYjNjZjRmZCBsZWdhY3ktdHJ1bmsKKzc5MzEgMGY2Yzk2ZjQ4ZTFiYTQ3NmU1Njc5MjY4M2I3OWVlOWE4MjU4ZGI3YiBsZWdhY3ktdHJ1bmsKKzc5MzIgNjYzNTc5YTNjN2ZlYjU0MGU3ZmFjMjA0NGJjMTEwOWI0ODAzMDE0YiBsZWdhY3ktdHJ1bmsKKzc5MzMgNzMxNmVlY2IxZTZiMzJlNjE4Y2IzMDQzZjkxZWJhYjllYzM1NDc1YiBsZWdhY3ktdHJ1bmsKKzc5MzQgNTM0NDAwOTcxMTFmZWY4ZTM5ZTBlOWU1YzVmODcyMTA3ZWE3ZDc0MyBsZWdhY3ktdHJ1bmsKKzc5MzUgMTMwNTJkYzJkNWY2ZTZlNGI5MjQ2YzEyZDBhM2YzZjM3MWMzODUwNyBsZWdhY3ktdHJ1bmsKKzc5MzYgYzVkN2I2ZmNlZTAzZDIyNWVjZDM3ZDQzMTVmMWFkYTJkN2ZhYWJiZCBsZWdhY3ktdHJ1bmsKKzc5MzcgYWQ2YzQyN2RjYmQ5ZTRkNTc0ZDliMDgwOTA0ZTg5NjRmZTAxMWJhYyBsZWdhY3ktdHJ1bmsKKzc5MzggMGRlZDYzYmNmNWRlMjllZGQ5NjllZGYxMzZjNmFmYTA1YjdhYTIxNiBsZWdhY3ktdHJ1bmsKKzc5MzkgNjBmNjY0OWZkMjMxMGRlYmEzYzIzNmRjYzZmZjNlYmM4N2JmZWRkNiBsZWdhY3ktdHJ1bmsKKzc5NDAgOTUyODUxZDljY2UyMGY4ZGMxZTM4NDlhZTBjOTRjMzQ2MTBkYzkzMiBsZWdhY3ktdHJ1bmsKKzc5NDEgYjA1ODRiZjdiNGY1Mjk5NjJkNDkzODIwNjEzZDI4YTUyNDIzNWUxYyBsZWdhY3ktdHJ1bmsKKzc5NDIgMDllNmI0ZTM0NTIzYmFlMjBlNTgyNjYwOGExMzM4YmUwM2NmYjgwMiBsZWdhY3ktdHJ1bmsKKzc5NDMgNDNjODZjODE4MWQ0NTc2NjFkNTgwZTkyOThhOTYyZWMzYjg5ZDcxYSBsZWdhY3ktdHJ1bmsKKzc5NDQgNjRiNjkzMTUxOTU2ZDIxYWQ1YTgzZjg1YTJkOGZhMjU5MDEzMjMxMyBsZWdhY3ktdHJ1bmsKKzc5NDUgMDhlODZkNDM5MjgxZGYwNTY4NzRlNmJhZGJhMDQ1M2FjN2EwZDczYyBsZWdhY3ktdHJ1bmsKKzc5NDYgNDdlODFiMjE2OWU5NTRlYzI1YWY0YzUxN2FiNWQ2ZTFiMWRmMzgyNyBsZWdhY3ktdHJ1bmsKKzc5NDcgZDkwMjlhNGUwZjJhYzc3YzZmYzgxMjkxOTFjNjBjNWYzMDQ1OWE3YiBsZWdhY3ktdHJ1bmsKKzc5NDggOGU1ZDZkMzEwM2FlZjgzZTk3MmZjMjI0OWI4MjM4ODE3YjRmY2E5NyBsZWdhY3ktdHJ1bmsKKzc5NDkgODRkYjE1NGQ1YjkzZThkMGJlMDU2MjU1ODBiZWJlODFhMmE2ZjU5OSBsZWdhY3ktdHJ1bmsKKzc5NTAgYzNkNGJmYjhjY2RmMDFkNmEzNWJkMzI5Y2I0YjQ3NjQzYjkxOWU3MyBsZWdhY3ktdHJ1bmsKKzc5NTEgMjY2NmU5MDRlNDBiMGNjZDQ4ZTkyYzIxMzI2NjdjYzBhNDllN2FlNyBsZWdhY3ktdHJ1bmsKKzc5NTIgYTg2ZWEyY2NlYWVjZGQ1YjJlNzU2OGM3NTFkNmVjYWQxODVjMzI5YiBsZWdhY3ktdHJ1bmsKKzc5NTIgMDYyYWVkOGE0Y2UyYzkxYzgxYjgwZTI5ZjAyZmFmZjFjZjVhNzYxYiBsZWdhY3ktdHJ1bmsKKzc5NTQgZjQ0YTU2ZTY5N2ZiMTdjZTU2Yjg2Y2Y0MTliNjA3NmMyNjhjYzM0NiBsZWdhY3ktdHJ1bmsKKzc5NTUgMjY2YzlhYThjMTI3NzYxNDkxYmU4ODgxYTAzMWVkMTZkNDkzZGRlZSBsZWdhY3ktdHJ1bmsKKzc5NTYgNmQ1M2ViYWVjMDIxNTkxYjMzNTA5NjBiMTg4YTUzYjZkM2ZjNGRjMiBsZWdhY3ktdHJ1bmsKKzc5NTcgYjk2MTc2YzlhODUzYjY5ZDIwMWYwYjUwMjBmYTY4MzlhNGU1MDU3NCBsZWdhY3ktdHJ1bmsKKzc5NTggZjFhZmM1NjkwYjJhYjVmMjAxZTMwNGY1MTNkZjk5OTRiYjQ3NjgyNSBsZWdhY3ktdHJ1bmsKKzc5NTkgNmZhMjk3NTZlYzZhMjk0Mjc0N2FkOGE1MzhhZDBkZmQ5ZWQyNWVhNSBsZWdhY3ktdHJ1bmsKKzc5NjAgNzM1MDllZmE3MjRiY2NlY2Y5ODU4Nzg0NjY3M2I3M2M3NTAxMjEzNSBsZWdhY3ktdHJ1bmsKKzc5NjEgNTk1YTVmZTE0MGQ0MGMyNzYzMTBhZTVkZWE5MDM1NjEwZGI2OGJmMyBsZWdhY3ktdHJ1bmsKKzc5NjIgNDc4YzY4ZWE5ODI3NTFhMjUyYzI2YjhhYTlmZjE3YmRhNmE4OTQyMCBsZWdhY3ktdHJ1bmsKKzc5NjMgMTk1ZDVhYTE5NTFlMDNjMjM5ZDhmNDA1OGU1ZTk5N2ZjZGY5NzdhYSBsZWdhY3ktdHJ1bmsKKzc5NjQgZWQwMzk0NDg0MDgyYjYyYzkwNGY2YzYwMTNhMWJhMzE5NzRlY2UyNSBsZWdhY3ktdHJ1bmsKKzc5NjUgMmU4OWM1NWQ5YTI5NWEyZWZiYzQ3OGIzMDgwMmY1OWQyOGFkMDQwNSBsZWdhY3ktdHJ1bmsKKzc5NjYgMmQxMzMyODAxMjlmNzJjOTc1ZTgzMzJkZDA4NzFlNjUyZWZmNzBjNyBsZWdhY3ktdHJ1bmsKKzc5NjcgYzFiNDBiMDU3N2QxOTRmMWUxYWVkMzMwNzc0YzU4NjAxZGY0YWQ1ZSBsZWdhY3ktdHJ1bmsKKzc5NjggNTA2YmE3ZGY0MmYwNDYzMWI1MTRiOTY1ZDY2ZjY1NmExNGU4OGI3YiBsZWdhY3ktdHJ1bmsKKzc5NjkgYWYxYWVhNmI5NjhmZDZkYWNjMTMwM2E1NWZkYjAyZGE1ZTI1N2U1NCBsZWdhY3ktdHJ1bmsKKzc5NzAgZWY5M2Q1MWRhYjM2MmRkNTliYjUzNTgwN2M0ODc2MGE2ODhmM2UyNiBsZWdhY3ktdHJ1bmsKKzc5NzEgYmZkMDMxNTQwODhiNmFjMTEwZjBlMGM2NTk4ZmJhOGIzZjI4NDQyZCBsZWdhY3ktdHJ1bmsKKzc5NzIgZTY1MmE3OTNmNGU3MTJmNDU3YmY1NTYxOGFjYmY2Y2ZlYTUyNTk2NCBsZWdhY3ktdHJ1bmsKKzc5NzMgMGIxOTQ2NjAwYmRkZWQ4ZjFkMGM4NTFhYTA5ZTRjYWI0Yzg5N2I5YyBsZWdhY3ktdHJ1bmsKKzc5NzQgMzc3Zjg2OTVhOWZiYjIwMWQwNjdmMzM3YTBjZDkzNGFlZThiZTA2NyBsZWdhY3ktdHJ1bmsKKzc5NzUgOWExMjI1OTIzOTE4MWY4YTM0MjhhY2FlZWEyZGM2ZjJjNDY2OTE1ZiBsZWdhY3ktdHJ1bmsKKzc5NzYgYjkwNTM3MmVkZDRmYjQ3YTdlMDg3MjdiNmQ5NmMwYzRkYTAwNDFhNiBsZWdhY3ktdHJ1bmsKKzc5NzcgODIxOTEyZmQ5NjVhMWQwYTRhNmVkMDk1YWY0YTA1ODg3YjYxNDUxNiBsZWdhY3ktdHJ1bmsKKzc5NzggNDY2MGZmYjllNDgzYzc1ODc5ZTM0NWMxOTU1YmE3NGY4ZmM3M2M3NiBsZWdhY3ktdHJ1bmsKKzc5NzkgNTA1ODE2NjZjODU0ZmIxMDkwNjgxZjFmNDk2NDM5NzZjNDVhZjdmOSBsZWdhY3ktdHJ1bmsKKzc5ODAgYmEwMDVlNGRiNGM1MzQzNmYyMzcwNmE4MmI2OThiMWE0ODVjNDFhYiBsZWdhY3ktdHJ1bmsKKzc5ODEgYzg4YjliODY4OTk1MzE0NzM4YTExNGI2MGNhNTA0YTkzMGZjMzcxNiBsZWdhY3ktdHJ1bmsKKzc5ODIgNDdmYTAwODc3OTI0MmEyNzhhYzJkNDc1OGU0OTc0NDM5N2Q4OTJjZSBsZWdhY3ktdHJ1bmsKKzc5ODMgNTk0MzhkMTlkNjAzNjc1ZmY3NTA4Y2VjZmRkYTgzNjc4NDRkZGJiMCBsZWdhY3ktdHJ1bmsKKzc5ODQgNTZiNDNhNDBhNTI4NTU3MTc1MjIzNWM4N2JiZDdmMTA1ZTdjMmUyYyBsZWdhY3ktdHJ1bmsKKzc5ODUgMzY0M2YxOWQ1Y2ExYTQwMDY5ZjMzOGM4M2JhYzk0YWNjNjYxYWE4OCBsZWdhY3ktdHJ1bmsKKzc5ODYgZGRlZGZhNTU2ODRhNjBhMTFjMzU5ZmNiMjI4MmQzODdlZGNiZjU4YyBsZWdhY3ktdHJ1bmsKKzc5ODcgNzI5MGE5MzBiNGM5NTdjNWI1NjQxOTk5ZjdkN2UxMGU1MTgwNzcwZSBsZWdhY3ktdHJ1bmsKKzc5ODggZmIzOWQyODg2NjRiNTM5ZWI0ZmEwZDExNGY4ZjE1MjczMGQyNDU0YyBsZWdhY3ktdHJ1bmsKKzc5ODkgMTQ5ZDc0MmIwOTcxY2UxYzVjMTg0ODU0OWQ3NzlhZmU4MDJiNmE5ZiBsZWdhY3ktdHJ1bmsKKzc5OTAgNGRkNTA5NWMzYjY3ZTlmNzdkODljY2E2MDJlMWMzYTk5OTIzOGRhYyBsZWdhY3ktdHJ1bmsKKzc5OTEgNjRlMmZkOGYxZDY4NDkwZGZiNTRjYTFhOTc2YWVjZThjNTczYjFkZSBsZWdhY3ktdHJ1bmsKKzc5OTIgMDY0Yzg2NzE5Y2E3YmRmYzYxN2JjY2Y3MzIwY2EwNjJiOTA3YWUzZSBsZWdhY3ktdHJ1bmsKKzc5OTMgMjQ1NmQ4ZmY5ZmE4MjNlMjY0NjhlMGJiMzUyZmIxNzI3MDRmNDc4MiBsZWdhY3ktdHJ1bmsKKzc5OTQgY2ExMjNmMjQwYmE5YzM2ODBiYTQ4OWY2NzFmZDgzY2RiOWQzOGFlZSBsZWdhY3ktdHJ1bmsKKzc5OTUgNTc2YjdkOTI3YWZiOTA5YzhkNGIzMmNmYTkwMGI5ODU2NGQ1NzllYyBsZWdhY3ktdHJ1bmsKKzc5OTYgMTM4MTUyNzNlMTcxYmJhMTM1NGYzMzYzZDg1NTFjODJkNjFlMzIyMCBsZWdhY3ktdHJ1bmsKKzc5OTcgMzFkNjYxOTRhNzdjOWZmY2I4NDY2ODA5ZWE2ZjlhYzgyZDc3MDllNCBsZWdhY3ktdHJ1bmsKKzc5OTggODgwM2JmNDA0YjY5NDY2NTU2MGMxNTdjZWJhMWM1MmNhNTVmOTU4NCBsZWdhY3ktdHJ1bmsKKzc5OTkgOTg2YzMwODc2NWFlOTY3YWFkNzVmODUwMjEwN2NmNTIzYTE1ODNmZiBsZWdhY3ktdHJ1bmsKKzgwMDAgMGJhOWY5MTRhNzA4ODc2ZWUwMmUxMTMxMDRkZjBmZDg3MGE4MWFlMCBsZWdhY3ktdHJ1bmsKKzgwMDEgOWEyMzdhNGNmM2ExZjZmODc2ZDY1MDlmYTdhNDRlZWM2YzY4OGRmYiBsZWdhY3ktdHJ1bmsKKzgwMDIgODU4MmY3NGExZDIzNWQzZDMzNzZhMDJiZGFlYmU0NWVkMGIzN2FhNiBsZWdhY3ktdHJ1bmsKKzgwMDMgYmM5ZDU0NTIzODYyODAyYjdlOTkxNWI4ZmIzYzA2MzYxNjQ5OWViZCBsZWdhY3ktdHJ1bmsKKzgwMDQgMjZlZmY2OWVkNTUyM2NiYTQ3Zjc4MmI4YTcxZmQyMTk4Yzc5Y2RjZSBsZWdhY3ktdHJ1bmsKKzgwMDUgMzI1ODQ2M2YxY2EyNzVlMjY2YjlkNjc0YjE0OTQxNjJlMTU2YWE2ZSBsZWdhY3ktdHJ1bmsKKzgwMDYgZjVkZWNjNWQ3MDczZWY5ZjI1OThkMjg2OWUyMzQ1MmRmYmY4MGEzNiBsZWdhY3ktdHJ1bmsKKzgwMDYgYzk0OThhYzk4ODM3MjU3NWNmNzAyOGI4NjM5NWI5MDBjOWIwYTg0MCBsZWdhY3ktdHJ1bmsKKzgwMDggNTQ1NGZlNDkyNWQzNjU2NWIyYjY4YmY0MmRjYWY5MGFlYjM1MjllZCBsZWdhY3ktdHJ1bmsKKzgwMDkgMzBkNTU5ODI3MDQ3OTZlMWFjNjE2MzkxZDczZGYxZTQ3OWNlZDU0YSBsZWdhY3ktdHJ1bmsKKzgwMTAgODI2ZjI4OTg1YmVhZGY1OTEwNWE0MjU2YzczZmQ3YjM4MzI1MDgzMiBsZWdhY3ktdHJ1bmsKKzgwMTEgODRkM2NjYTgxNGZiZDBkNjUzNDkyMTEzOTY4MjZhMWZkZGVkYjRjNCBsZWdhY3ktdHJ1bmsKKzgwMTIgMjBjMmI3MTUxODhlYTk3NWJlYzQ4MmMyMGUxZmEzYzNmMGU0NGY0MyBsZWdhY3ktdHJ1bmsKKzgwMTMgYzZmMDRlOTY1NTA4MTgxNzc3NWRiNGMxMDQ3YjBiMDg2NDVjOGU5OCBsZWdhY3ktdHJ1bmsKKzgwMTQgYjFkZjkzODY1NWUxNWQ1MzkwYjU2NWZlMmMzMmIzZWRjMDAxMGI4NCBsZWdhY3ktdHJ1bmsKKzgwMTUgNDcyYzhlNGNjOTc0MWZiZWJmZmFiMjc1YzYzYWViMDc3MWJiNDlmZSBsZWdhY3ktdHJ1bmsKKzgwMTYgOGY4NzFhMDMwYjhkMTQwMjk4NTkwMjNiOTY2ZWEzNTc5ZjFhN2IyYiBsZWdhY3ktdHJ1bmsKKzgwMTcgYTBjYzAwNWVjY2Q3ODdiNGIxOTU2NmI4MDcxNmY0MDkyZmJiZTAyNiBsZWdhY3ktdHJ1bmsKKzgwMTggYjU3OWM1OTE4ZjJjYjM1YjBhMTlmNDUzZTBmMDIxN2FiMjJmZGFiNyBsZWdhY3ktdHJ1bmsKKzgwMTkgY2ZjMTNmM2YzODc2OTlkZmE0YmY3NTkzNDkwNDYwN2FjMjQ1Zjg0MyBsZWdhY3ktdHJ1bmsKKzgwMjAgMzdjOTM5ZjcwZmFjMDFkMDI2MmU0ODc2NGZjNzk1OGE1YjkwZTBhOCBsZWdhY3ktdHJ1bmsKKzgwMjEgMGJiYTkxNGJmN2IyYWNhNTFhYTM3YjMxYTk2MWY3M2Q3MDI3NzRiYSBsZWdhY3ktdHJ1bmsKKzgwMjIgN2U0MjI4NzgwZmY4YzFhMzRjN2E4ZDFjYzhjN2YyNTRiMGI0YzkwNiBsZWdhY3ktdHJ1bmsKKzgwMjMgNmMwN2Q0NGE3MDgxMDhjYzVkYjQ0MGQ0ZGVkNzU0NjcwMTc2YjA5ZCBsZWdhY3ktdHJ1bmsKKzgwMjQgOThkNGU5N2RhYWMwNTQ2ZDdmZTYwZGFiMGRkN2YwNDBjYjhmODcxMSBsZWdhY3ktdHJ1bmsKKzgwMjUgYTIyY2FmMTI5MzQ1MzhlNDQ3MGNhODc5YmZmNDFiNWM5ZGU1YzQ1OCBsZWdhY3ktdHJ1bmsKKzgwMjYgNTI2MTBlY2VlMzY3YTc5MzhhMGI0MTgzOTliN2EzNzNhZGY3YjkwYiBsZWdhY3ktdHJ1bmsKKzgwMjcgNDM4MjJlNGZjMjdkNDc2NDFhNGFkYzNkNWVmNjhmYjQ3NzZlOTEzYiBsZWdhY3ktdHJ1bmsKKzgwMjggMzQ1MDljMDUyNjZmMjI5ODQxOGVmMzhkMGVkMDRhN2M4Y2VmZGI3NyBsZWdhY3ktdHJ1bmsKKzgwMjkgMmRmYzcwN2Q2ZTY4NTE5NWJlODY2ZTg4Y2I3ZDk4ZDY2MDgzZGEzZiBsZWdhY3ktdHJ1bmsKKzgwMzAgMThmZDA3ODY5YjEzYzQ4YjhiNTI3ZmI5MTU1OGIzZDMwZmZlZDBmYiBsZWdhY3ktdHJ1bmsKKzgwMzEgYjVlNjQ4ZmRlMDk5Yzk2ZmVjM2NjNTlmNmIxNmQwMTIwMzgxNDBjMyBsZWdhY3ktdHJ1bmsKKzgwMzIgOTg5ZjRmZjczNDI5MTVhYTBmOGVhYzZmZGIzNjUxYmU1OTJjYTE0NiBsZWdhY3ktdHJ1bmsKKzgwMzMgZmE5ZmFkYTkxNmI0NTMwMzlmOTkyNzBiZTFiNjhkNzY3M2MwYWEzMyBsZWdhY3ktdHJ1bmsKKzgwMzQgNDMyOWU0MDc3Y2YzOTE1MWNmMmJjNjJiZWQwYzNiMjI3YWQ2MjM4NyBsZWdhY3ktdHJ1bmsKKzgwMzUgZWYzYmE4Yjk5ZGEyZWZmZmJhM2NmZmI2MDk5MjIyYmNkOWUzZWI5ZiBsZWdhY3ktdHJ1bmsKKzgwMzYgMWVjZWQxYWFhZDVhOGE2NWU2MzMwZDBiNWJhZWMyNTI3OGM1OWFlNiBsZWdhY3ktdHJ1bmsKKzgwMzcgOGVjMjk4YjI1NWEyMGI2NzBhM2ZhZDgyZDc4MzNlOGE1YTI5NzE2NSBsZWdhY3ktdHJ1bmsKKzgwMzggNGRjZjI2ZmU0ZGE1OTUxYjA5OWY1ZjBkYmViZjI4ZTBhZWIyYmU5YyBsZWdhY3ktdHJ1bmsKKzgwMzkgM2YzZDJkNDc0YWNhMGY1Y2ExM2E0NGY3MWEyNjBjYmU0ODQ2NzBlNSBsZWdhY3ktdHJ1bmsKKzgwNDAgZjFiMDM4NzU4YmRhOTNiMzNlNWM4Y2ZhODM5MTNiYWM1MWU5ZTMzMCBsZWdhY3ktdHJ1bmsKKzgwNDEgNmU5NDQyNzlhMzE0ZjMwMDQwNmRmMGJkMmVmZjNjZTI3MDY2NmZkNSBsZWdhY3ktdHJ1bmsKKzgwNDIgNWZmYWI2NWY4ZDA1MDk4OGI5MDY4NzQ2NTM1ZjJlNGY1ZjY4NTkyOCBsZWdhY3ktdHJ1bmsKKzgwNDMgMTlkNGEyODc0NjQ1NGMzNDExYzBmNjViM2RkMjViMzhiZmE4NTcxMCBsZWdhY3ktdHJ1bmsKKzgwNDQgOTMyY2ZjNWZjMTA0YjI0ZDExODg4YjllYTk0NmMzOTdkZGE2OGQ4MiBsZWdhY3ktdHJ1bmsKKzgwNDUgMTM5YWIyMWQyNjI5YmU0OThmMTg4Y2NmODUzMDM5M2I3M2NjYWUwMiBsZWdhY3ktdHJ1bmsKKzgwNDYgODE4Y2ZmZjNhYTVkOGJjYzFiNTA2MDJhY2Q2Y2EzZTc1M2UzMWM4NyBsZWdhY3ktdHJ1bmsKKzgwNDcgMTFlMmUzZmY5ZmM3YjE5ZWJjNDBiOTQwODU5OWVkNTUyMjM4ZDVkOCBsZWdhY3ktdHJ1bmsKKzgwNDggM2U2Nzk1MzBhZmM5ZWM2NGFjZWNiZTBlNzI2YzY2ZjA5Yzk2YTYxMSBsZWdhY3ktdHJ1bmsKKzgwNDkgYjIzMTg1NWE5NDc0NGRiZGUyMzg0MmRiNDc3N2Y2NWI2NWUwOGM4ZSBsZWdhY3ktdHJ1bmsKKzgwNTAgYmY5ZjEwNGFiZTc4YTU1YTlkZTZkZjE1OTc1MzkyYjM2MTY4ZTA4OSBsZWdhY3ktdHJ1bmsKKzgwNTEgODRkN2NjNWU2M2NkYjc2NWNkZTBhMTlhOGY3MzJmZDUxODVmNGVhZiBsZWdhY3ktdHJ1bmsKKzgwNTIgNmE5ZjI2M2UyYjQ4Y2FjYzhiODdlOTM2Nzc5ZjFhODI4YjcwNjUxZiBsZWdhY3ktdHJ1bmsKKzgwNTMgYzdkODEyZTRhZjBkM2Q5M2UzODQyMGMzMDRkZTVmMWJlZjZkNDhlYyBsZWdhY3ktdHJ1bmsKKzgwNTQgNmM3MmI5MWM4YjgzZDFhYzNiNDUxZjU1ZTE1NzkwMjgxMTE1ZTIwNyBsZWdhY3ktdHJ1bmsKKzgwNTUgOTM3ZDllYzJiNTYwNTE3YTJkYTJmNDJjMmUwYWE5MTg1YzNiMWM4NCBsZWdhY3ktdHJ1bmsKKzgwNTYgNDg2ZDVlOTg5MzhiYmE0ZDRiZmUxNDQ2Mzg5ODE0NzA3M2Y3ZTViZSBsZWdhY3ktdHJ1bmsKKzgwNTcgY2U1OTk3M2FjY2RlN2UwN2QyOWFjZjRmNzQ1NjNjM2M2ZTA4Y2U1NCBsZWdhY3ktdHJ1bmsKKzgwNTggN2UyYWQ5ZTMyZTBkNWRkNTNiOGRmNzIzYzBkNWQ2OWM1NzIyZjZhZCBsZWdhY3ktdHJ1bmsKKzgwNTkgODdkNWQ3ZmE4ZDA3ZTZiOTk2NjQ1ZmY5MmI2NjZkYTA2ZWMxY2QxZCBsZWdhY3ktdHJ1bmsKKzgwNjAgZWRiY2ZlZDdmYzdiZmM4OWU1ZTljYTFhZWFlMTA0N2UyZjQ3MTRmMyBsZWdhY3ktdHJ1bmsKKzgwNjEgODVjNTA0M2M5MzE2NzdlY2FiZTU4NmU4NGYwYzU2NDE1MmZkNzVhYyBsZWdhY3ktdHJ1bmsKKzgwNjIgNTdkYmRjMmIzMDIyNmYxMDNhMDFhZjdhM2U1ODlkMjg1NDE1MzZiZiBsZWdhY3ktdHJ1bmsKKzgwNjMgNzg0YmFmYjQ3ZTFmNmRiZjc0YmUwYjY4ZmE4OGFjMTEyZmVjNWMyNiBsZWdhY3ktdHJ1bmsKKzgwNjQgNmE0OGE3ZTcxMWQ4NmNhMjJhYWViNTA2MTI3MWFiZTAyOWJiMTdkMCBsZWdhY3ktdHJ1bmsKKzgwNjUgNTNjZGY5NGI2NTJiODNlNTY1MmY1YzcxMGU5ZWIzNGZkZDM5ODI4ZCBsZWdhY3ktdHJ1bmsKKzgwNjYgNzk1Y2E5NzVkOTZmODhlMjgzY2JkZjY2YmM1OWMzMTAyMTFhOGJmNCBsZWdhY3ktdHJ1bmsKKzgwNjcgZjNmNjU2ODdlNDI2MGRhZGY3ZGRjMDlkMWU2ODExMDc2MzdhYWI4ZCBsZWdhY3ktdHJ1bmsKKzgwNjggZGE0NzVlMTA3YTY4Zjc2OGRjNGRhMzFhMGJlODE3NTBhOTNmNTg4MiBsZWdhY3ktdHJ1bmsKKzgwNjkgZTNkNTI1ODJkMzYwNzgxMGQ1ZTNkOTJhZmM0MDQ5ZGRkNzc4ZDgzMiBsZWdhY3ktdHJ1bmsKKzgwNzAgNDUxYzdjY2YzNmI2N2YyZDFhZjhmNDRjMDA2NjNlYzYxNTNhMzA2NCBsZWdhY3ktdHJ1bmsKKzgwNzEgNGM0NjIxYWE5ZTc2NzdlNjEwOTYzYzNjZDMwMjAxYjIzNmQ4NmExNCBsZWdhY3ktdHJ1bmsKKzgwNzIgYzVhNTY3YWYxM2VlN2NmM2NhOTA4ZGRkYWY4Y2I3M2E3MDExNWJmNSBsZWdhY3ktdHJ1bmsKKzgwNzMgMmUyYmJlOTg1NjIwMjIzNTRkYmQ1OWQ1MTBiY2U2NjFkMTE1YjE4YyBsZWdhY3ktdHJ1bmsKKzgwNzQgNTUxNjkxNWZmZWU3ZDc4Mjc3MWIyZjMzNzc2OGQzMDIzN2UyMThkOCBsZWdhY3ktdHJ1bmsKKzgwNzUgMWYyMDZjOTFkYWVlMTgwMGY5M2M5ZWFjMzU5MzUyZTNiOWI4NTJlOCBsZWdhY3ktdHJ1bmsKKzgwNzYgYjVlNTFhZTlmODMyZTVhMzk4NjBlODQyZDg0MThhOWEwN2MyMGI3NiBsZWdhY3ktdHJ1bmsKKzgwNzcgZDk1NGRjMjQzZWIwN2FhYzUzZjk2NTFjNzFiMDg4MzBjYjMwNTBiYyBsZWdhY3ktdHJ1bmsKKzgwNzggYTYxMDIzYmNhMGE5NzQzNzlkYTcxNTRhMzMwYTE0NTg3OTM2ZDA1ZSBsZWdhY3ktdHJ1bmsKKzgwNzkgMDI5NGE2N2JmYmRiNDM3ZmFjYWM0MjM4ZmRlNTIyODllMWNmZmZlYSBsZWdhY3ktdHJ1bmsKKzgwODAgZjQzNTU5ZDIzYjNkNjhlOTVlYjYxYmEzN2ExNzFlYmQwZmVjZGMwYiBsZWdhY3ktdHJ1bmsKKzgwODEgODU5ODBlYTVlODA1Y2Y5OTBkMjgzZGU4ZGY1MjhjZTI1ZmZlNDQ4NCBsZWdhY3ktdHJ1bmsKKzgwODIgODlhZjViZjhmODczMjA0N2NkNmI5ZjI2MWE3OTdlOWEyNjA1YWE1YiBsZWdhY3ktdHJ1bmsKKzgwODMgNDk1ZmJkZTY0YTczYjVkYjZiOWQyYzRiYzNiOTA5MjVkMGJlZjljYSBsZWdhY3ktdHJ1bmsKKzgwODQgY2JiNGUzY2YwODZlMjIxYWQzZGZiNTQ0YzIyMTkxMjAyMzYzOWFhNSBsZWdhY3ktdHJ1bmsKKzgwODUgNzllNDljYmNlMmVmZDJmMGM2YjljMzg3MDlmMGNlMGIzMjAyNzNlZCBsZWdhY3ktdHJ1bmsKKzgwODYgZjI4ZWVhMDJjZjk0NDYyYmI5OTVmYWIyNDkzMTg5NjQ4MDgyZDgxYSBsZWdhY3ktdHJ1bmsKKzgwODcgMTBlOWNmYTAxMGYwODk3NjFmZTc5Yzk1Y2Q3Y2MxM2Y2NzBlNjU1NCBsZWdhY3ktdHJ1bmsKKzgwODggNWVkM2EyMWNjMTIyOWMxNzk4ODUyNDUzYzFlN2ZkNGQ5MWI1MzFhMyBsZWdhY3ktdHJ1bmsKKzgwODkgOGQ0MDVmNzEyODJmOTZlMDE2OGQ4NjBkZjEyN2E1MDEyNWJiMGU4NSBsZWdhY3ktdHJ1bmsKKzgwOTAgMTkwZTM1YmJjMTVhZTIzMjc4N2RlN2IyMDk1MzFmZDIwMGM2YjI0NyBsZWdhY3ktdHJ1bmsKKzgwOTEgNzI1NGVlMmE4YWJkYTcwODlhZDE0MGNlZWYyY2U2ODQ4ZmMxZmExNCBsZWdhY3ktdHJ1bmsKKzgwOTIgM2JhMDhkNmU5YjdmMjg0MWIyODM1NGUwMzY4YzA4NjJlYmIzNzBjMiBsZWdhY3ktdHJ1bmsKKzgwOTMgYmFlMmMwMTg5Zjg1OTRhOGEzNjY2MjM3MzY2NzBkMDdmNTU3NDg5OCBsZWdhY3ktdHJ1bmsKKzgwOTQgNzA4NTU1NzQ1MTZiODZiOThjNTE1OGRlYTFkMTE0MjZjMmFkMGFkMyBsZWdhY3ktdHJ1bmsKKzgwOTUgZmRkMWUxYTUzMGFmOGMwN2Q1YzI3MjJlZWFmMmIyNjE5MDc2M2M0OSBsZWdhY3ktdHJ1bmsKKzgwOTYgN2ZkYTc4NDFkYjkxODJmOGU3ODQ3YWQyMDQyMTUyNGU3MWE1NGFiNyBsZWdhY3ktdHJ1bmsKKzgwOTcgMDU1NmVhNjg3YTk3ZDgxODEwNTk0MGFjZGU4NmZlYWE3YzFkMWYzZSBsZWdhY3ktdHJ1bmsKKzgwOTggZTE0MTNmYTY0YjgzMWI3NDVkZmE0NWM5Nzk3MjNjMjZjM2MxNjRiOCBsZWdhY3ktdHJ1bmsKKzgwOTkgZjhlNDUyYTFmNjQ0ODNiY2Y2ZWQwYjNjZDM0YjA1Y2E1MmYxYmI1ZSBsZWdhY3ktdHJ1bmsKKzgxMDAgZmE2YzkxYTVmNDFiNzgzODc1NWUzMzc4ZjY1NjQ2OWVkMjZkOWRmMiBsZWdhY3ktdHJ1bmsKKzgxMDEgMzJiYWZjOWU5YzRmYzM2YzgwOWFmNjMwZjI3MGFiNDgwYmQyNzQ0ZCBsZWdhY3ktdHJ1bmsKKzgxMDIgYWNmY2UwMTVkZmRkMzZkZWUwYWFhMWI1YTFjMGNiOWVmNzYwNDgwYyBsZWdhY3ktdHJ1bmsKKzgxMDMgNjk2ZTc1NDA2NGMzN2YwYjY5MzFiYjFhNTBiMzk1ZDg1MGZjMWRiMiBsZWdhY3ktdHJ1bmsKKzgxMDQgNGQxMmU2ZTljMjdkMWU1MzY4YTc0NTBiOTMxOWRiMzU2NzVmYjMwZCBsZWdhY3ktdHJ1bmsKKzgxMDUgOTkyNDgyNWRhNGIzYTY4NTAyZTAxMDcyZTc5MjAzMWI2YmFiMmVkMyBsZWdhY3ktdHJ1bmsKKzgxMDYgZTZhMjMzZmM4YjliNDE0YWQyNjgzODQ2ZjEyNjVhNTJjZmJkN2M1YyBsZWdhY3ktdHJ1bmsKKzgxMDcgOGFmOGVlNzk3YzA5NTJjZjcxMmY4MzY4NjQ5ZGJiNDAyMWQ1NjI0YiBsZWdhY3ktdHJ1bmsKKzgxMDggOGM1NGM3Nzc2NzQ0OTBlODNiYzNiYzA3ZGI4MjFkYWRiZmI1M2NmZiBsZWdhY3ktdHJ1bmsKKzgxMDkgMDBmYzQxM2EzYjhiYzc2ZWIyOGU1NDcxOTI0NDliMzJmM2I3YmE4NSBsZWdhY3ktdHJ1bmsKKzgxMTAgYzY5Yzc1OWY0MzY2YzU2MDU1ZDA0YWI4ZGIyZGFlODAxNWFhN2MzMiBsZWdhY3ktdHJ1bmsKKzgxMTEgZWM5N2Y0MWM3YTA0ZWI0M2Q4OTRlNzVkNDEwYjE4NGNkYTQ4YzJjZCBsZWdhY3ktdHJ1bmsKKzgxMTIgYWNjNTVkNzA0Njc0NzhlMGVlZTg0YWM1OTQyNDg4ZDk0NTU5NjAwZCBsZWdhY3ktdHJ1bmsKKzgxMTMgNzViYTY0YzU1ZjJlMTJjOTUwNGNkZWFiNTYxZGVkZDM4ODQ0YjQwMCBsZWdhY3ktdHJ1bmsKKzgxMTQgMTdjYTdlNGU4ZmQ2ZTgxZmQ5ZjQ4ZWMwNWM3ODdlZTY4YjBmZDc4YSBsZWdhY3ktdHJ1bmsKKzgxMTUgZjkxNDM5ZDhmNjZlNDcyNmZmMWYyMTAxOTg3OGE4MGQ4NjdhYzY2ZSBsZWdhY3ktdHJ1bmsKKzgxMTYgNDM3MDU2NDdmZWI5Mjk3ZDVlZTJmYTUyYWFjNjM3ZDk2NGZmZDU2NCBsZWdhY3ktdHJ1bmsKKzgxMTcgNTdhMjYxZmE1OTZjNmYyNjRiYzdkZDc5MDJhNDUzOWU3NjI5NWRmNCBsZWdhY3ktdHJ1bmsKKzgxMTggNjVlYTQxZjJkMzRkODBmNzc1ZTkxZmNmZTA3MmE5ZjUyMTQ2ZjU3ZCBsZWdhY3ktdHJ1bmsKKzgxMTkgMGVmNzAyYjgwNDZiYTZmYTM5OTE4NTdkNDc0Y2VmNWI1MmIwYjgwNyBsZWdhY3ktdHJ1bmsKKzgxMjAgOTY5NDliOWY0MmNiOTAyNGQ1Mzg5YjI5OGQ1NWFlNzg2MmRjZDUyYSBsZWdhY3ktdHJ1bmsKKzgxMjEgN2MyMDlkYWJkOGM4MDAwMmNmNmVlZmVkMDQ2MWYxNDQ4MDgyOTNiZiBsZWdhY3ktdHJ1bmsKKzgxMjIgZTU5Mzc0ZTIzZmRmNmU0NjU2YmM3NWQxYTkxMzFiMjAyNjVmNzc2ZSBsZWdhY3ktdHJ1bmsKKzgxMjMgYzYzZTI4M2JiMmU0NjYxNDhmN2MxYWY1NGQwNmMwYzQ5ZDBiZWZkNyBsZWdhY3ktdHJ1bmsKKzgxMjQgYjQ5ZDgwMzdhNWNiYWUzZjQwNGM0N2Y0NmY0MzA5OTI2YmMwNGRhYiBsZWdhY3ktdHJ1bmsKKzgxMjUgMGNjOTdlNzVhMzYxMzkyOWY0YzYwOTU2MDVkODFkNTkyMDM3NDEyNCBsZWdhY3ktdHJ1bmsKKzgxMjYgMDdlMWFhYjIzMTE1MzQyM2VlZmQ1NTAzNTY1YjZiYjhlM2QxOGIzZCBsZWdhY3ktdHJ1bmsKKzgxMjcgZDQ1ZGM3ZmU0MmFmOWUzZTk4NjE3OGY3ZDBmYWM5N2ViZTRhM2FlNiBsZWdhY3ktdHJ1bmsKKzgxMjggOTVkNmUxNzk1NWVmYzhiYmQ5MjRhNDY0NTUyZTlmYzUzZWEwYmE2ZSBsZWdhY3ktdHJ1bmsKKzgxMjkgNjAwOWQ1MzkwNTg0OGNlZjkzOTFkNWQyZTBmNzg0MDM5ZjZiMzAwNCBsZWdhY3ktdHJ1bmsKKzgxMzAgMzA5NjAyYzg3OTI5MjQxNjljZjA3OWM5MTkzNDFiMTIwNzU0ZTRhNyBsZWdhY3ktdHJ1bmsKKzgxMzEgOGUxNGQ1NGE2NDE5ZDI5YzlmM2EzZmYwMmIyZjI3ZTMxODMxYTUzMyBsZWdhY3ktdHJ1bmsKKzgxMzIgMGI1NzQyZDMxODlhMjQwZWU0ZTM5NzM5YWVlY2I3MDdkYWEzNGFhYSBsZWdhY3ktdHJ1bmsKKzgxMzMgZDE3NWNhYzU1MGI5OGE2MThlNDM1NTcyYWVmNTUzOWI4NmVjOTEzNyBsZWdhY3ktdHJ1bmsKKzgxMzQgZGRlZDQzOWI3YjhhYjE2MTIxOWI3N2M3MWU3MDhlYTc4ZTY2OTIwMSBsZWdhY3ktdHJ1bmsKKzgxMzUgMTI2NWNhNDRmMDRiOWJjYzlmZjk5ZGRiOWNlMjg2ZDA5MmRiNzViNSBsZWdhY3ktdHJ1bmsKKzgxMzYgNmY5YTJjODc0MDE4ZWQ4YmZkYWUwNDJkYmZiYjVlNDk4MmYwNDA3NSBsZWdhY3ktdHJ1bmsKKzgxMzcgZWZkZWU3ZDQzMjcwNGQwN2EzNzU0NWRlMGMwNWQ0YmVlZjVmNGEwMiBsZWdhY3ktdHJ1bmsKKzgxMzggM2RiNzU0YWJmZjM2MmYwOTNlZDhiODFmMzM4NGZjZTdjOTEyZGNhMCBsZWdhY3ktdHJ1bmsKKzgxMzkgNmJkM2EyY2VjMzUzMGZlN2ExMWQxMmJlNjU1NzQwNzg4ZjdiY2M3ZiBsZWdhY3ktdHJ1bmsKKzgxNDAgMTgxNDk5ODBlY2U5ODM2OWU3Mzc0YmU2MmFlNThhNTBiMWU3ZTIwNiBsZWdhY3ktdHJ1bmsKKzgxNDEgMWRmYTRmMTdkOGZmZjYzMWRlMGQ3OTAyNjBkNDdjMTA1MDg1ODQ1MyBsZWdhY3ktdHJ1bmsKKzgxNDIgYjViYmU1MjIwZjZiYWE5NjEzMWM5MDY2NGZmODBjYmY3NTNlNWJkYiBsZWdhY3ktdHJ1bmsKKzgxNDMgMzQ3MDY4OWE5N2Q3MmEwYWVhYzAxNzM5MGQ4NDM4MTM3OWMwZTMzNiBsZWdhY3ktdHJ1bmsKKzgxNDQgNGE1ODQ5N2MxNGE4MTY3YjMxY2Q5ZDU4MGYxN2EyM2FkMWIyMjk0ZSBsZWdhY3ktdHJ1bmsKKzgxNDUgNjc2NzlmMmVkMjE3NjNiMTQ2Zjg0MTI5OTk2MTc4MDBlNDU5YTA2MCBsZWdhY3ktdHJ1bmsKKzgxNDYgODUxMzRiOTdhZTRkNTQwNzA2YzM2ZTdkZmRkMjA5OTIwYWJhYzg3YyBsZWdhY3ktdHJ1bmsKKzgxNDcgYzM1MDFhOWQzYzIwNTlmMWVhOGY5YTE0NWMxNDVjMjM2NDI2N2IwNSBsZWdhY3ktdHJ1bmsKKzgxNDggZDY2MzA0OTYzY2E3ZmU5MTY4MGNlZDY3ZmVhNzVmNThjOWVkNTA2YyBsZWdhY3ktdHJ1bmsKKzgxNDkgMTkyNmU2NDkyZDNmNzhkNTUwYjVjYmY4MTIzNTg0OGYyMWI2YTRiOSBsZWdhY3ktdHJ1bmsKKzgxNTAgYTlmZmRmZjA1NTdmOTVlZjY1OWQzNjk1ZjFmZTM3ZmRiMzI4MDU1NSBsZWdhY3ktdHJ1bmsKKzgxNTEgZTVkZTcwNzMwMGUxN2YwNzU0NzNlOTc5Mzc2MTlkMWMwZmNhZjBlZiBsZWdhY3ktdHJ1bmsKKzgxNTIgZmQ2YWNhZDdjYzdhOTdhNGRkNDFiNTZkNzk3YjRhZmM0NjJlY2E3NSBsZWdhY3ktdHJ1bmsKKzgxNTMgZWY4YTE1OTAyYTQ4N2FjMThjMzFjOWM5OTcyMTQ4MTZhNGFjZmIwNCBsZWdhY3ktdHJ1bmsKKzgxNTQgNmZkYTFlNmUyNjE2Y2I1N2IyYTBhMDFjNTMxODZhMTczZTA0ZmEyYSBsZWdhY3ktdHJ1bmsKKzgxNTUgNjRlNjExNjU1ODlhNzkzMTlhZDg5NmFjZjQ0YzdhMjkzMmI0NGU0NiBsZWdhY3ktdHJ1bmsKKzgxNTYgZDU5MTFjYThkNGViM2FmNGNmYzM0ZjZkN2M5NDkwMzVmNDYyYjEyMiBsZWdhY3ktdHJ1bmsKKzgxNTcgMTJkNjRjZGJhYWEyM2UyYzM3NDJhNTUwOWUzMjcwOTM2MGJjMGEwNSBsZWdhY3ktdHJ1bmsKKzgxNTggZDg4Y2I0ZDI2ZjEzZWQzODI1OWM5ZmQ2YjY3MGVkOWJmNDY4YjMyNiBsZWdhY3ktdHJ1bmsKKzgxNTkgZWE3MmJmZTM5NWJhMjE2MWVlOWE1ZDU3MDMzZjZkNjQzMTdkYTg3MiBsZWdhY3ktdHJ1bmsKKzgxNjAgY2QxYWU2MmVkMmNmZmMzYjhhYmUwYWZmYzQ4MmM1M2IzNGYyZmRlOCBsZWdhY3ktdHJ1bmsKKzgxNjEgYTA4MzFkZTIzNThjMzBlMjI4MjQyNTBkZDRiMDNiMDUyOTU4YmM3NyBsZWdhY3ktdHJ1bmsKKzgxNjIgMDlkODdhZDc1Mjc4OTg3YTlmNTVjYjllNmIzYTZhZDA1ZWExMTZjZCBsZWdhY3ktdHJ1bmsKKzgxNjMgMjA3N2EzMmQ4NThlZjY1MjVjZjJkNjAzMzgxNWI5MzZlMDRmZDI0MyBsZWdhY3ktdHJ1bmsKKzgxNjQgOGI3ZmFjZTliMWE3ODJhNjk5OTFhNDBlOTEyMmRmMmUxMWIwZGRiMCBsZWdhY3ktdHJ1bmsKKzgxNjUgZTc4ZDFlMGVjYzU5ODdjMjNjNDc1ZjNlNjI3NGMzMzA1OWU0NmUxMSBsZWdhY3ktdHJ1bmsKKzgxNjYgNTJjMTNmMTM4OWVmYWQ0ODk5YjE5OTBjZTBkZTRlMjZjMGU3NDNkYSBsZWdhY3ktdHJ1bmsKKzgxNjcgNGU4MTdiMmFkOTkxMGJjOTYwMzZmMjk1NWI2MjY3NzFhN2E0MmM5YyBsZWdhY3ktdHJ1bmsKKzgxNjggMzgzODNhZGEzODhlOWEwMjQ5MWY5ZjdlNWEyMmVlZWI0ZDg2OWFjZSBsZWdhY3ktdHJ1bmsKKzgxNjkgNDQyOGYxMDg0YjZjNjcwMzhlYWY5NDNlOGMwYTZkYTc4NjllZWUyNiBsZWdhY3ktdHJ1bmsKKzgxNzAgYTk3ZmRlMjgxOGZiZTQwZjMxZDc3MGIwY2ZiNmI5MjJjMWEwMjgwMCBsZWdhY3ktdHJ1bmsKKzgxNzEgMDEwOTA5ZGZjMzNlMmUwNmMyZjZjZDBiODYxNjQzYjUwMzY4YTMzZCBsZWdhY3ktdHJ1bmsKKzgxNzIgMDJlYTlkMDIxNDI3NDc2MWZlZGIyOThlMzQzY2M3MzNjM2UwYmIxNSBsZWdhY3ktdHJ1bmsKKzgxNzMgOWI2MjFhYzA5MjEyMWMyNTZjZmYzNDU0MTdhMTg3ZTE4YzBlOTBmZSBsZWdhY3ktdHJ1bmsKKzgxNzQgODhiMGIyYTNhYWI1NmE1YTk5NzJlYTAyNWZmZGJhOWVlNzM2N2YxZiBsZWdhY3ktdHJ1bmsKKzgxNzUgYmE4NjBkYzBhNTg1MTRmMTY5YzgwZTEyZTc0ZTI1MjRkZWFhZTM1OSBsZWdhY3ktdHJ1bmsKKzgxNzYgNzZmZDUyODFmOThhN2I4ZjgzOGQzODlmODk2MDJhMDU0NmJkMGY3ZiBsZWdhY3ktdHJ1bmsKKzgxNzcgNjBmY2E0NzgzNzkzNTZmOGQ5M2RjNGYyYTFjZTIyNTFlYmNkZTc4NyBsZWdhY3ktdHJ1bmsKKzgxNzggM2ExYmIxYzk4YzE0MGU4YjQ4MjQyOTFmMWMxNzJkZTFmMjZkNTMyNiBsZWdhY3ktdHJ1bmsKKzgxNzkgNTc2NjU3MDM4MWYyNGFlOTc5MzI4MGNlNTE0ZmU4NDUxMTVkYjVhYSBsZWdhY3ktdHJ1bmsKKzgxODAgMDNkZDFkZWQ1Y2IzZTg2NGU0ZmUzMDBjNWQ3MDdhOWFmYmNiY2M2MyBsZWdhY3ktdHJ1bmsKKzgxODEgYzY2MjM2YjdjYzZjYTRiNGMyYzRiYWIxOGFhZTFjZDI2N2UwZmJhMSBsZWdhY3ktdHJ1bmsKKzgxODIgYmEwOWI0MDdhMGJiOTNmNjRhNTU2NTBkMWFjYzk4NzY4M2FjOTk5MyBsZWdhY3ktdHJ1bmsKKzgxODMgZjhiYmQ3MWZiODE5YTU0MzliZDcyMWI5ODAzYjcwNGY1OTI3MmExMiBsZWdhY3ktdHJ1bmsKKzgxODQgNDA0YmEwMTdhZDQyN2I4MDAyMjIyNWU5MDU5YWNhNzg0ZjQzNDAzMSBsZWdhY3ktdHJ1bmsKKzgxODUgOTljZDM5ZjZhNTJkYjEzMGRmMjgyYzFiNzJmOTJhOWVhYjdmZDBhNCBsZWdhY3ktdHJ1bmsKKzgxODYgNjcxODMyNDcwYWExMTM0NzZlZDU0MGYyYWYxYWU0ZTM4NThiNTkzNiBsZWdhY3ktdHJ1bmsKKzgxODcgZjFkYTI5NDc3MmNmMmI1ZmQ5ZmUzMTZlYzhlY2I3ZWY4YmNlNzRiNSBsZWdhY3ktdHJ1bmsKKzgxODggZmIxNzBjZTgyOTUxMjkzNzRkNDNjMjg5YjVjNmViNzFlZGJhNGE0YyBsZWdhY3ktdHJ1bmsKKzgxODkgNDMzYzllN2VkYjYwODkwN2ZiZDkzOTc2ZDU3MWUwY2E4ZWNmZmJhOCBsZWdhY3ktdHJ1bmsKKzgxOTAgZWNlZTU1YmFhY2UzMDg5NmYxYjJlYjFkM2QzN2FiYWM0OWYzYzBkMSBsZWdhY3ktdHJ1bmsKKzgxOTEgZGVlMGE1OGE5MTMyMjI2ODA4YTM0ZGE4NWRkZWI0MWYxMzZlMDM4MCBsZWdhY3ktdHJ1bmsKKzgxOTIgMzc2MzVlZWEzYmNjODM5N2RlNDE4YTQyYWYzODdhY2Y4ZDgzZTFiMSBsZWdhY3ktdHJ1bmsKKzgxOTMgY2U2NGE4MTM5MjE2NjYwNTVhOTMwYjUyNDk0YjExMTFiNGQ1M2VhYSBsZWdhY3ktdHJ1bmsKKzgxOTQgM2M2NzQzNmEyOGU2MWIwMGM1YmQ1MDY0M2YzNThlNDhlNzI2ODRmMyBsZWdhY3ktdHJ1bmsKKzgxOTUgNTVkZmY4MTY5Y2Y1NGMwMzFhOGQ4NDYxMTg5OGNhMzM4YzI5Y2Q4NCBsZWdhY3ktdHJ1bmsKKzgxOTYgM2IzOGU4ZGI1ZjIxZmRmZWNkNjQ3NDBlNTg3MmY2ZWQzZGZkMzk5OSBsZWdhY3ktdHJ1bmsKKzgxOTcgNjEzYmQyMzdjZDU1YzUyMTE0YzljNjA1YTRhYmY4M2RmMmE3OGUwYiBsZWdhY3ktdHJ1bmsKKzgxOTggMTM4YjE3NmVjNDBmNDNjNGMwYTVjYzQ0N2Q2NTUyMjY4YTc2ZTkwOCBsZWdhY3ktdHJ1bmsKKzgxOTkgNmM5NzM2ODY1NjA4OTA1NWQ4YmJmNTVhMzY1ZDJkNWVmZDJhYWExZiBsZWdhY3ktdHJ1bmsKKzgyMDAgYmVlZTM1MWYxZjcyYWVmZjU2MWVkZmY4NjZhOTI4MWZiOWRhNjE3YiBsZWdhY3ktdHJ1bmsKKzgyMDEgZjlhZWE3MzhkNDM1MWVkMTQwMTg1MDRmMDYxOGVlOWMxYTE3NTZjZiBsZWdhY3ktdHJ1bmsKKzgyMDIgOWEzYjExNWFhNDkxOTBlZmZkYzBiN2U5YzllYmUzNzU1ZGIwYmY2OCBsZWdhY3ktdHJ1bmsKKzgyMDMgNTdhN2JhMTQxMmUyNjVlYmIzMDIxNzRjNDA5MTZlNjczZjk5MDJkMiBsZWdhY3ktdHJ1bmsKKzgyMDQgZTBkYTNkODlkNGI2NWZiYWI1ZDdjYjMzZWFkMDkxMDgxMWFmMGFjZCBsZWdhY3ktdHJ1bmsKKzgyMDUgMDRjMjgyNzRjMjgxODEyMDk4MDQwODc0ZmIzZGIyOTk1OWY5NmMxYSBsZWdhY3ktdHJ1bmsKKzgyMDYgNjE3ZjIwMzM5NGU3M2Y4NWViMzA1ODQ4YjU5YzQ4OWI2MWE3NTU1NiBsZWdhY3ktdHJ1bmsKKzgyMDcgOTk2MDc5NzQ0NTY2NWQ2MmJjODlkNWMyNjQ4NDE3MzBmNjMyZTEzNCBsZWdhY3ktdHJ1bmsKKzgyMDggNzU3NjJjNjcyMDBjYWY3NzE0MTZlYzQyMjljODViY2Q4MWQ3MmM4OSBsZWdhY3ktdHJ1bmsKKzgyMDkgZjAyN2RkMGE4NWU0ZTVlZGNiMGExZGQwNDlkMjM3ZTZiMzkxYTVkZiBsZWdhY3ktdHJ1bmsKKzgyMTAgOGY2Y2M3MTdkODE3YzA3YmZhN2M3MzY0ZjZiNjBjZjk5YWRiN2ViNyBsZWdhY3ktdHJ1bmsKKzgyMTEgYTk0YjBhMTIyYzk4NjkzODZkM2JmNWY4ODhhZjY2NzIwYjFhZjUxMiBsZWdhY3ktdHJ1bmsKKzgyMTIgNjM0NzI4ZDhiYzk4Y2ViYjU3ZTUwYzkxYmJlMDE3YzJlM2Y5YTBlZCBsZWdhY3ktdHJ1bmsKKzgyMTMgNGRjYTUzMjllOGZjNmRkMzU2ZTdmYTU4MTVkMjA1MmIyZjk0Y2EzZSBsZWdhY3ktdHJ1bmsKKzgyMTQgZDBjNmI0OWQ3MTAxOGUzNzQ1YjA2MDZlZDFjNDIzNGZhODUwYjc5OSBsZWdhY3ktdHJ1bmsKKzgyMTUgYzI5ZmMxN2Q4ZTRmZDQ5NzgzYjk5ZTdiNmVmYzEzZjEzNDlkYzNiZCBsZWdhY3ktdHJ1bmsKKzgyMTYgNzFlMTEwODJkNzMyMzU0NzNmMTU4MmE1ZjEyYzY5NGJiMWUwOGZmOCBsZWdhY3ktdHJ1bmsKKzgyMTcgNmEyMThmYThiYTliOTg3NGQwZWRjZTRiZGNjZjg3ODgyYWJhOGFjYiBsZWdhY3ktdHJ1bmsKKzgyMTggMTM4NDYzNzkzNDdkYTUwZTgxZDc5YTU3ZTNiMzBmODcyYjRkM2NjZCBsZWdhY3ktdHJ1bmsKKzgyMTkgODI3YTJmM2U2NDgzMmFhMDA3ZjJmYmYwZmY4ZTI2Zjk2YTc5MGU1YiBsZWdhY3ktdHJ1bmsKKzgyMjAgYzYwNmRkNjE1NDRhZTA3YjE5Nzc1YzUxZDllMjJmMjk2ZGE4YmQ0OSBsZWdhY3ktdHJ1bmsKKzgyMjEgZWE4YTBiMDkwOTA4YmQ0ZDY4YWY5MTRhZWNiZGUyMTExNzgzZTA4NCBsZWdhY3ktdHJ1bmsKKzgyMjIgZTIyZWVhNWQxMjZkOWI0MDg4OGI2NDMwMzdmM2ZmM2Y0NGIyMGM2OCBsZWdhY3ktdHJ1bmsKKzgyMjMgYWJlODYzNDQ2NmIyMzZjMTVmMzhiMzM0NjkwOGI0ZTY5NDhiYzU5MSBsZWdhY3ktdHJ1bmsKKzgyMjQgNDllMGUwNzJkOWNhYjU5N2M5ZmZhYThlNzgyNWI2MGM1ZDE2NjA1ZSBsZWdhY3ktdHJ1bmsKKzgyMjUgMWMzNGEwY2U3ODU4NTczYjJlMzA3MDhiY2NmNzZhMjlkOGI2MmU5ZSBsZWdhY3ktdHJ1bmsKKzgyMjYgMjBlNjM5OTg2ZmI5YmIyZDNhZGJmYTcxYzE4MGNiMGQ0ZmU4MTgwNyBsZWdhY3ktdHJ1bmsKKzgyMjcgNWE3NDI5YWM5MGM4M2IxYmIxNDNlOWM1YjM2MTEzOGU3ODkwYzc0MSBsZWdhY3ktdHJ1bmsKKzgyMjggODdkNjU4YTEyOGY5MWI1YzY4MmMxNmUyYTY1MGE3ZTkwNGJiM2Q3MiBsZWdhY3ktdHJ1bmsKKzgyMjkgZmE2ZDAxM2M5NDJiMDc3NWE3YmFlMjQwMWY4MmZiOWMzNDY1Y2Y4MyBsZWdhY3ktdHJ1bmsKKzgyMzAgNjRiYzc4MmE0MmVjNzMxNTlhZWFmMDdiNDNkMDhjNWM4NWEwMDU1NSBsZWdhY3ktdHJ1bmsKKzgyMzEgOWVkMjZhZmVlYWE1MmZjYjE2NThhZDAyMzZlOTQwNmU1OTJjYzI1YiBsZWdhY3ktdHJ1bmsKKzgyMzIgMThhNjM5ZGIwNDhjNzk5MGFkNzVhNDU2MjI1MGQ3NGY1YzU3Y2U5NSBsZWdhY3ktdHJ1bmsKKzgyMzMgNGI0MmVlYTEwYTAyOWU2MzNmYjhlMzY3ODE5YzNkNjdhMTJjOGNiOSBsZWdhY3ktdHJ1bmsKKzgyMzQgOGMwZjc0N2YxMTQxOWFjZmRhZGZmYjI0MTZjZmI2MzZiNDEwZmU0NyBsZWdhY3ktdHJ1bmsKKzgyMzUgYmZlOWJhNzRjMTllZDc2ZWQ3OGEzMDI3ZWYyYmYzY2ZjYzY2OWM2OCBsZWdhY3ktdHJ1bmsKKzgyMzYgOTE5Mzg2ZmIzZTUwNDMzMjI3NTdiYWI5MDM1MjcyNjUxZWY3NzQyZSBsZWdhY3ktdHJ1bmsKKzgyMzcgMjAxYzhkMDZlM2I3ODY3NTE5ZmIzN2ZkODE3NmJiZWVkNjA5MjAyOCBsZWdhY3ktdHJ1bmsKKzgyMzggYThlMzFkOTA1ZDJjMGZlOTc2ZjAyZDM1ZTM0NzMyOTNhNWU0MDliYSBsZWdhY3ktdHJ1bmsKKzgyMzkgNzliYjk5OTdjZTVmYWEwYjc4NmQ0NjNlODNhMWVkOWU0ZmE5MDAwMyBsZWdhY3ktdHJ1bmsKKzgyNDAgZmQ0ZTlmMjkzYzc3YThhODRlNGZiODQzMmJmMzU2MzZkNmJmYjRiMyBsZWdhY3ktdHJ1bmsKKzgyNDEgNjJmZTgwMGQxNzFhNzgwYzBlMDUxOTlkNmQyY2Q5ZDk1YzMxM2I4MSBsZWdhY3ktdHJ1bmsKKzgyNDIgZDY0MjFiM2VkMWRhNjViNDg5MDFhMzYwMWFiYjAyNTk3NmEzZDc3NiBsZWdhY3ktdHJ1bmsKKzgyNDMgMzA5YWFiNGMwYjk4ZTU3NDQ1YWQ5NzdlYmJhN2YyZmZiZWI0MDE5NyBsZWdhY3ktdHJ1bmsKKzgyNDQgMDNhNTdhZjcyMjE4OWNiZmE3ZGZjOTA5N2JhNmZkNGZmZjM5M2QyYSBsZWdhY3ktdHJ1bmsKKzgyNDUgN2RlNTlmNDdlODViOWNhZGYxNzc5OWRlZGQxNDFiMDgwNDRmMTUyNSBsZWdhY3ktdHJ1bmsKKzgyNDYgYjc2NDk0OTFhZTkyNDZhNGRlY2YzOTU2MWQzNjM1ZDZmNDAyMGJkOCBsZWdhY3ktdHJ1bmsKKzgyNDcgMzhlZjA5MTk2NGYwMjJmYTNlYjk1ZWU0NThmMTk4MzExY2M0OGRlNiBsZWdhY3ktdHJ1bmsKKzgyNDggZmI4ZjA3OWU0ZWZmODZmNjU5NWM4ZGRmNzNhODI0NGNiMWFiNDQwMiBsZWdhY3ktdHJ1bmsKKzgyNDkgNWY3ZGRiN2NhMzQ3Y2Y4ZjA1ZTBiOTQ1ZTVjZTZjNWRjOGM3MDAxMSBsZWdhY3ktdHJ1bmsKKzgyNTAgNzgzMTkyMjFlZGIyZjI4Y2RhZGQxYmNkMmYxOGQ4ZTZmNjRiZGI1MSBsZWdhY3ktdHJ1bmsKKzgyNTEgM2VmMjU2M2U4M2VlMzkwOTBhY2Q2MTJiMTdiN2Y4NjIyN2Q4MTZlYiBsZWdhY3ktdHJ1bmsKKzgyNTIgYzYwYmViNTYyNWU3MDE2NWY5NzhkYWQzYzFiMzAwOThiMjg4NGFjYiBsZWdhY3ktdHJ1bmsKKzgyNTMgZjZkZTA1MDA1NTc2OTVhYTcxOGZkZjBlNzMyMzlkMzg1ZTZjODNlOCBsZWdhY3ktdHJ1bmsKKzgyNTQgYjQ0OWNkODVkNTE5NzE5OTNmMGYwZDBmN2MzNjZhNzQwZTExOWNjZiBsZWdhY3ktdHJ1bmsKKzgyNTUgMDQ5ZDk0ZmZjMDZhMDEyNjdiZTIxNTdmZTNlMjk0ZmM0YmQxMTAxMiBsZWdhY3ktdHJ1bmsKKzgyNTYgMzQyODQ4N2IyOWEzODVjOTYyNjEwYTEyYTFmZDhlMDdjNDNmMDFjMCBsZWdhY3ktdHJ1bmsKKzgyNTcgYmIwYWNmZDRiNzIwYWZkN2EwNTFmMGY0ODQwNThiNjJlOTVlYTU1ZiBsZWdhY3ktdHJ1bmsKKzgyNTggM2I4ZDAwNDAzZGI4NWRjMzc3MzNlYWE3M2UwMjg1NzMwZTNjYjY3OCBsZWdhY3ktdHJ1bmsKKzgyNTkgYjgzZWNmNmY4NzMwMGMxYjQ3NzIxM2MyYmM5MzY0MTYyNGIzNjVjNyBsZWdhY3ktdHJ1bmsKKzgyNjAgOWNmYmM5YmI2NDIzYjA4YmI4YWY0NWJiZjFkYzhlZTZjYjgxNjUwMSBsZWdhY3ktdHJ1bmsKKzgyNjEgYzA0MzkwMWZhMWZlYmNiZmEyNGNjN2QwM2Q1NmJlZTk5ZGRjZmE4ZiBsZWdhY3ktdHJ1bmsKKzgyNjIgYjI0NzI5N2JlOWEwMjVlYzY0YjU1MDI2YzgxMTIzZTEwYTM1OWFlNyBsZWdhY3ktdHJ1bmsKKzgyNjMgYzU2OTg3M2VlYjE1ZDgyZjFiZWI0ODc3ZmQ4Yzc3Mjg2Mzk2Y2ZhMyBsZWdhY3ktdHJ1bmsKKzgyNjQgYjQyMGI2NGE0MDk2N2JmNzU1ZjczMDRkMDg1ZThlMjY5YmRkMzc0YiBsZWdhY3ktdHJ1bmsKKzgyNjUgMzFjYWUzNzRmNzg2NTY3NzMxY2ZiYWRmZjcwNzllOWUzNWRkNWVhNSBsZWdhY3ktdHJ1bmsKKzgyNjYgODhlNmFlMTA1YWI1ODEwZWY4YzI5MTc4OGM2ZjBjOWYyNzBiNDdhNCBsZWdhY3ktdHJ1bmsKKzgyNjcgMWQ0MTdlOWM3MmNmYWM3YjYzYzZlOWJkYWQxMmEwM2ExOWRiZjZhMiBsZWdhY3ktdHJ1bmsKKzgyNjggMmI3MzcyZWNkNTA3MmIwYTRiYjFhZjViY2NjYjJiMDUwYzBjMDhmYyBsZWdhY3ktdHJ1bmsKKzgyNjkgZGZmYWJjNjIwZTRlNDZkMDE4ZGI1ZDM2YjcwODI3YjFkNmE1NTg5ZiBsZWdhY3ktdHJ1bmsKKzgyNzAgNGNlNzgyN2EzNjIxN2I2NDhmNzE0NDIzYTlmMDRiODU3NDBhMTZiNiBsZWdhY3ktdHJ1bmsKKzgyNzEgZDc5YzRmYmIxOTgyYTFlMzM2MmQ5MzU4ZmJjZTczOGFiMDViMTRhNSBsZWdhY3ktdHJ1bmsKKzgyNzIgM2QxZDgwNTUwODdmYjc4M2QzYjhiODYzNTBkOTVmYzBiNjkwODAwOCBsZWdhY3ktdHJ1bmsKKzgyNzMgNzNjZjU4MjYxYjgyMzQ4MTMzMzJmZDBmOTQxYTM0ZDM5OTU4NDZmYyBsZWdhY3ktdHJ1bmsKKzgyNzQgZDY4OWQyYzRmODQyMGIwMTk1OTVjZjVjMzI5MWMzZDNhNTQ4MmQxMiBsZWdhY3ktdHJ1bmsKKzgyNzUgMjRhOGM1NmRlMjE0NDRlYmYyYWVkOTRjZjc4ZjE0MDZkODBiMmI5OCBsZWdhY3ktdHJ1bmsKKzgyNzYgZTg2MmQ5YjAwMjQ2YWJkN2M2YzQ0OTA4NGIxYWQxZmMzMzQ2YTQ3NCBsZWdhY3ktdHJ1bmsKKzgyNzcgN2U4ZWQ5NjUwZmNjMTE4YzczNzgwY2UyNDg3Nzg2OGVkNDNiMjQwYSBsZWdhY3ktdHJ1bmsKKzgyNzggZmUzZTdhMDU1ODM0MzY5MDFhYjEwNTQ2OGZiY2ZmOTQ0OWJhMzI2MSBsZWdhY3ktdHJ1bmsKKzgyNzkgZTQyMzkxZDY3NmQxMmQwNmViOTI0YmVlNzEyYjg0YjAwZGU2MjkwMyBsZWdhY3ktdHJ1bmsKKzgyODAgYjU2ZDUyN2E0MzNmNWE1MDU3OTI4NTVjMDljZGE2ZDdmODhlNGEyMyBsZWdhY3ktdHJ1bmsKKzgyODEgYjdjNjAwZWNjMjdkNDIwMGUzMWFkOGJiOWRmYWMzMGFmNGJjZGU1ZSBsZWdhY3ktdHJ1bmsKKzgyODIgNTE4ZDRmMGM4ZmNjNDk4MDI3NjAxODJhOTAzYTRhODczY2NlZjljYyBsZWdhY3ktdHJ1bmsKKzgyODMgNWE5ZjNjMjA3MzM2NjlmNWMwYjRhZTllNDdmYzIwOGI5MGVlMjNlZCBsZWdhY3ktdHJ1bmsKKzgyODQgNTA4MDNjYTU4YjFmOTFlMjVjOWM3MmE2OGMyNzYwYTRmMmM3ZTU3NyBsZWdhY3ktdHJ1bmsKKzgyODUgZGZmZDIyMTQ2YWFiOGNjY2Y4YTM2YzE0OWQ2YjMwN2Q4YjY4NjMxNyBsZWdhY3ktdHJ1bmsKKzgyODYgNTEyMGVhODZiMjVkNmQxMWFlZWM4NTRjNjQ4ODE2YzY2NTVlYzJmMSBsZWdhY3ktdHJ1bmsKKzgyODcgNmQ0MGViZDkyMjI3OTMwMjIwOTliOTJmMDE0MDdmNDM1OGRmY2YyYiBsZWdhY3ktdHJ1bmsKKzgyODggNThhZWI4NzJkOTE1MGQwMDIxODUzZTk0Y2MyYjgxODY1ODUwMzNkMiBsZWdhY3ktdHJ1bmsKKzgyODkgZjUzZDM2M2VmNjdhOWVhMjhiMzk5ZDVjNjIyOTJiMjllZTFmMTMyNCBsZWdhY3ktdHJ1bmsKKzgyOTAgZDMyMGNhODQzNTEyMjI0MDI3YjczM2MyNzE4ZDA1MjI1YTI1YWJkMSBsZWdhY3ktdHJ1bmsKKzgyOTEgNTVlYTU2ZWUyMGY2YmQ1NjY0MzcxMmQ3YTgwNDAyZjhjYzRhMjJhMSBsZWdhY3ktdHJ1bmsKKzgyOTIgZDhhNGYwZDkyMjFmMDc1YjE2MDFmNTMxM2EzMWY0ZmFkZDI1NjgzNCBsZWdhY3ktdHJ1bmsKKzgyOTMgNmEwZDdjZjE5ZDM4ZmFjNTdiOWI5NGI2Nzk3ODIxYzE5NzY4OGExMCBsZWdhY3ktdHJ1bmsKKzgyOTQgNDhiOTRkZTg1YmYzNWYyNDQyZWE1NDhhN2I0ZTM1NDVmZDY4NmFjNyBsZWdhY3ktdHJ1bmsKKzgyOTUgMzQ2OGVhODY0NWNhNDIzOGMyYjQ1MDI0MzUxZTVlMGZhZTVkMWJjNCBsZWdhY3ktdHJ1bmsKKzgyOTYgMGFlOGM3ZDMzNDY0ZWUwYzdhM2MzMGIxODkxNDc3OWQwNTEyMzUzOCBsZWdhY3ktdHJ1bmsKKzgyOTcgOTFkZDlkNzRmM2IzY2IwNmFlMGIxNzYwYzcxM2YxZWMwOGZhODI5MiBsZWdhY3ktdHJ1bmsKKzgyOTggNzgzMjFhODRkNzNlNWNkMzdkMTc1Zjk5NWRmMjZhYTdjNjhkMTQ4ZSBsZWdhY3ktdHJ1bmsKKzgyOTkgZDNmMmRmOGMyMjg2YzA1ZWI4NTFkYWMzMGQ5ZGMzNmQxMGFhNzQ3OCBsZWdhY3ktdHJ1bmsKKzgzMDAgYWQwNGQzODdhY2VlZWU4MWNlZWMyNmMyOWUwMDk4ZGVmZTY5ODcxZiBsZWdhY3ktdHJ1bmsKKzgzMDEgM2MxNWFlMGZiNmFkNzg1NWIwNDA2NGJlYmM3ZWY3Yjg5ZmI1YWFjYSBsZWdhY3ktdHJ1bmsKKzgzMDIgMGMzMzYxMmYxMWQ2YjE2Mjc4ZjM5YjVhYjI4YWFhZTA1MjFiYTc5YSBsZWdhY3ktdHJ1bmsKKzgzMDMgMDk2NWQ5ZmQxODYyZGQyMzM3ZWY4NGZjYWFlOTVhNjUyNTg5Njk4ZCBsZWdhY3ktdHJ1bmsKKzgzMDQgYTc5ZDBjZWYxMGExOWZkZDA0ZGRjOTY3MzZmYjRjODkyOWJiOWZjOCBsZWdhY3ktdHJ1bmsKKzgzMDUgOWZhMmJkOGEyYjc4YTUyNmQ4MDI5YjU1MDRjMjIxYzU0NGJiZmRlYSBsZWdhY3ktdHJ1bmsKKzgzMDYgZjExMjdkNmZjZDc0MjQ1NDIwNTMxMTBlYjI0YjMxYTExMjIxMGEyYyBsZWdhY3ktdHJ1bmsKKzgzMDcgMjI2YmNhODU4NDZmNDE4Zjk1OTkzMTJlNjRiM2U3YjRiNmEyMmU1MyBsZWdhY3ktdHJ1bmsKKzgzMDggOTg1YjdiZjQ3NTViNmNmZTkxYTQxMjkyZmExZjNjYTA1ZjM4MGVmMiBsZWdhY3ktdHJ1bmsKKzgzMDkgMjg1ZmI2YTk5ZTVmODVmNTc3YmQxMWFmNjUyMDg2MjM2NTE1OGRjNyBsZWdhY3ktdHJ1bmsKKzgzMTAgODZjMjc5YTg0OGViMmQ1MDE2MTM5NGQxMzdlMTdhNjM1YWFkZTI2NSBsZWdhY3ktdHJ1bmsKKzgzMTEgOTFhZWExYWY2NTRmZjE1OGYxMTA4OWVmMWFiMjQ2NzEwMjIzYTUxYSBsZWdhY3ktdHJ1bmsKKzgzMTIgYjkwNjNmNmY4MTFjYmZiOThlNDg0ZjkwZDU1ZDM0MzMzYTkyYmI1ZCBsZWdhY3ktdHJ1bmsKKzgzMTMgM2E3OTg2Nzc1MDZjZjA2NzU4NmZiOTFlY2VkYzAwYzdiYjhlZDU1ZCBsZWdhY3ktdHJ1bmsKKzgzMTQgMmU5MTdmOTM3MmUwM2E1NGQ3MDg4N2E3MWY3MTQzN2E5Mjc1OTI2OCBsZWdhY3ktdHJ1bmsKKzgzMTUgZWQ1ZGIwYzJhM2YzNDQxNzE5NmMxMjhlMGEyMzNlYWZiYmM2MWJlNCBsZWdhY3ktdHJ1bmsKKzgzMTYgMTc4NmNjNDE5ODg2ZWE2NmExNmMzYzQwZjNlNmY3NjIzMDNjZWMxNiBsZWdhY3ktdHJ1bmsKKzgzMTcgOWY4ZmYwMmVkZTZkZWViNWQ2NzcwNjQxZjg4ZTg2ZmNiOTJhODlhMSBsZWdhY3ktdHJ1bmsKKzgzMTggZTE2OTk0ZjNkMTAyYWM2YWZkOTcwY2QyODBmNDc0YzQ1OTRjNmY1YyBsZWdhY3ktdHJ1bmsKKzgzMTkgMzViMTRkNzhjNjFkOTQzMmQ3NTUzMGQxMmRkNDkzMDRjNzA2MGE0YyBsZWdhY3ktdHJ1bmsKKzgzMjAgNWE4YTVhMWEwNDc1N2Y2MGRiNmIwYmI2MGI1Njk2OWE3NWMzMWJkOSBsZWdhY3ktdHJ1bmsKKzgzMjEgNTk2MWYxMmFlNDI2NTg2YTAwYTY4NzRlNWZlN2RhNWIwMTgwMTljZSBsZWdhY3ktdHJ1bmsKKzgzMjIgNmU5OTY4NmI3NmRhMGNlMmY1ZDhmMGRlYmM3MmY1YWNlYWYzZTYzOSBsZWdhY3ktdHJ1bmsKKzgzMjMgODUyYTFmYTYyYTdjNGY2ZTFmZDUxNThkMDMzNmMxMzc2NzUzMmYzYiBsZWdhY3ktdHJ1bmsKKzgzMjQgZmY5YzAxMTAwNzliN2U0NjIxMDQwZTE0NTY3ZDY3YzRlNGM0ZDZiYSBsZWdhY3ktdHJ1bmsKKzgzMjUgZjY0YTVmNzUwNjk2NjAzOTgxMTU3NWExMGU5NmEzNTU0ZmI2NTA0ZCBsZWdhY3ktdHJ1bmsKKzgzMjYgMGQ3ODUxYjM3YWQyZDEzMGI5NzExNjBmZDIyNzk4ZDIzODljYjcyYyBsZWdhY3ktdHJ1bmsKKzgzMjcgNmY2N2ExYmRhMTVhMjE4YjFlYjUwNjI3YzJiZTQ2M2FiYzliODA0ZiBsZWdhY3ktdHJ1bmsKKzgzMjggZWRhZjFjYjYzZGMwYzg5ZjMyZjVlZjEwOGIzMGYzYzE0MzQ0MjQyYSBsZWdhY3ktdHJ1bmsKKzgzMjkgNGE0Nzc4ZTYxYzE0ZWIxOWI0NzliNzNhZTJkOTg0NWE0MjRlYzdhMCBsZWdhY3ktdHJ1bmsKKzgzMzAgOTJiY2Y0Y2M5NDIxMTlhZTljN2E3MmVjOTljOWE5ZDg3ZGZiY2QwNSBsZWdhY3ktdHJ1bmsKKzgzMzEgMzU4ZDcwODgyYWY2MjlhNzA3Y2VkNDEzZGE0ZGZlMzE1NmQ1NjNhZCBsZWdhY3ktdHJ1bmsKKzgzMzIgZmRkOGNlYTE4MWMwOTk0Y2Y4NjdlZWFkNDZjMDg1YWZkYzQ5MGZiNiBsZWdhY3ktdHJ1bmsKKzgzMzMgYzRkZDMzMjlmZDdkMDQ0YWQ2MGE1ZWI5NGZiMTZhNzI5Njg3Yjc0ZiBsZWdhY3ktdHJ1bmsKKzgzMzQgYTY2N2Q0OGU2OGI4NTY5NzIyMmZjODU1OWM0YTc4YjZkNmNjNGYyYyBsZWdhY3ktdHJ1bmsKKzgzMzUgZjVmN2M3Mzk1Njg3NjBlYmE1MWRkZmIzMDg0MGU2ZGEyMTU2MTM5YSBsZWdhY3ktdHJ1bmsKKzgzMzYgNjRmOWNlOTk5NDM3YmQ5MjgyYzM4OTczM2RmZGViZjlmMWIwMThkZSBsZWdhY3ktdHJ1bmsKKzgzMzcgNzI4YTA4MzI0MmEyYTZlNzA4ZWEyYmQ2NGY5NTg1NDcxOTU3N2QwMiBsZWdhY3ktdHJ1bmsKKzgzMzggMzIzZjZhMTZhNzY0MmNmMTYyYjA0OWVmMWJiYTU1ZjJkNjJkZGIwNiBsZWdhY3ktdHJ1bmsKKzgzMzkgNGRiYjRlYzQ0ZDE1MGU2MjI5YWM4Y2Y3ZWQzZTM0ZDExMWM5ZDg3MiBsZWdhY3ktdHJ1bmsKKzgzNDAgMGFjMmM3NDcwNTNmZGI3NGY4OGI0YTQ4MTY0MDFlNTQwYTc2MzI3OSBsZWdhY3ktdHJ1bmsKKzgzNDEgODc1MTdlOGVhNTE5MWI1YmQyNzAwMWY5YWQ5ZTE1ODUyNzA0MDJjZCBsZWdhY3ktdHJ1bmsKKzgzNDIgOTg0MWJjZTM3YzRkNjM5Yjk1NzQ5ZDdkN2E2OTg2NmQxZjRmYzkyYiBsZWdhY3ktdHJ1bmsKKzgzNDMgZjFjMDMyNzY4NzNhNjBiNDUyMTJkNzU1Yzk0OTU3ZWI1OGYzYTRkZiBsZWdhY3ktdHJ1bmsKKzgzNDQgOTc4MzdlNjRjNThjNTJjMjk3ZGYyZTllYjM0N2JmYmQ2ZDY0ZmYzNiBsZWdhY3ktdHJ1bmsKKzgzNDUgZTc0MmU0MWE0YjExYmVmYzY3ZDA4OWMwODg3NThmZmFhNGI2Zjc2MyBsZWdhY3ktdHJ1bmsKKzgzNDYgZjJiZjdiY2Y4YjhiNjdlY2QxODY4OWIyODQ3YjcwNzhjOTM2ZTFkMyBsZWdhY3ktdHJ1bmsKKzgzNDcgZmU0ZjFlYjE0ZDUzZjBiNGYwNjlmZmE2NGQyMjM4M2RkZTM5NzgzNSBsZWdhY3ktdHJ1bmsKKzgzNDggZWQ5MWNiN2QzODc2MTkyOGJiYzZkY2VkYzIyYWJhZmQwNDkxZGQ4NSBsZWdhY3ktdHJ1bmsKKzgzNDkgZGQwZTliNjQ2NjE2ODU1MjhhOWMyN2VkZGQ1OGE2MGEyNzA4MGFjZSBsZWdhY3ktdHJ1bmsKKzgzNTAgYzhhOGNmOTU4MTFjMzhjZjI3NjQzY2M3NTM1MmY2NzY5YmNjZDlmYiBsZWdhY3ktdHJ1bmsKKzgzNTEgYzY3YWQ1YmNkNGIyMDIzZTNmMDgxZTIwMTcyMDk5OGVlMjJiMTRjYiBsZWdhY3ktdHJ1bmsKKzgzNTIgZDI0MDg1MWNjOGM1Nzc1ZmI1MjhmMjkwMDhjODk3MDZlM2M3MjI3NCBsZWdhY3ktdHJ1bmsKKzgzNTMgYTJkM2MyYTYyYTMwYTMxOGIxNDcxNDhiNTRiYzBlN2JmYzM2NjRhNCBsZWdhY3ktdHJ1bmsKKzgzNTQgMDUzNGU1NGU4MTA2MmM4MDU2OTNlNWNhZGQ3MzA4ZWY0NGVkOGU3MCBsZWdhY3ktdHJ1bmsKKzgzNTUgNjhmNzMxMmEzMWY2MjlhZDk5MDc3MzdhNzAzMGJjODg3N2JlMzkwYSBsZWdhY3ktdHJ1bmsKKzgzNTYgYTc3NWE0NDEyNGQ4YjBjMmE1OGEwZDJhMGY2MTZkMmJhMzliOGJmYSBsZWdhY3ktdHJ1bmsKKzgzNTcgNTMwZGRiNzA3Njk1ZTdmYzE3M2QwNzRmMDUyMDJmZDgzNzZlZDNmMyBsZWdhY3ktdHJ1bmsKKzgzNTggYTEwMWExN2I4YjdiOGM3Y2I2MTg4YTM2MjcyOWU0OWY4YjJlMGJkNCBsZWdhY3ktdHJ1bmsKKzgzNTkgZDY1MTNkYTkyNDlkMzk3ZDA0Yzc3MmE4NmEzYzcwMzI0ZjM5ZThhMiBsZWdhY3ktdHJ1bmsKKzgzNjAgNzlkMTkzMWYxNzIyOWVlY2Y3ZDgzOTMzNjY0YWY0NTlkNzRlMDFjYSBsZWdhY3ktdHJ1bmsKKzgzNjEgYjU3MWI2ZWU3ZjE3ZTM3OGQxNjJiMmIzZGJlYjRhNGVmMTEyODhjMyBsZWdhY3ktdHJ1bmsKKzgzNjIgNzZiMWRhMjFmM2E4OTgxZDAyYjJmNWVkMWNmMDZhMzBiYjU2MjhiNiBsZWdhY3ktdHJ1bmsKKzgzNjMgNGM1MmExYjZhNTRkNjJhNjMzZTU4MGJiZjViMDEwMTA1MmM4OWY1NCBsZWdhY3ktdHJ1bmsKKzgzNjQgMmExNzJiNDk1MGI2YTZjMDIyOTE3YjE4NzM2NTUwZjNkNjU4YTI2MiBsZWdhY3ktdHJ1bmsKKzgzNjUgMGNkNzRmOTE4OWM2YTdjOWZkMTQwN2Y3NWVkYjIwZTM5OGE5ZmMwYiBsZWdhY3ktdHJ1bmsKKzgzNjYgY2RkMTI1ZGU3NWJmNmY2MjAyMWJiOGI2YTEyNDdmMWIxMmJmYTVjZCBsZWdhY3ktdHJ1bmsKKzgzNjcgZjMzNDJiMzgxOTM1YTQ2NDk5YjYwZTc3MWI1NDRmNjU5NThkNDI5MCBsZWdhY3ktdHJ1bmsKKzgzNjggYzRkNTQ3YzAxZTkzNGVkODVkNTJmMDU3ZmZlNjFjNWNkNDk4Mzg0OCBsZWdhY3ktdHJ1bmsKKzgzNjkgYjk2Y2NjNzgxMmYyZjA4M2JhOGMzYjI2MzkzMzczNmU2YThjMjNkYiBsZWdhY3ktdHJ1bmsKKzgzNzAgYzU3OWI5Zjk4YTVhNzE1NjA1MjY4OTExYmMxMGJjMDU2OGRlNWMzMSBsZWdhY3ktdHJ1bmsKKzgzNzEgZTJkZjk1YjdiZTc4OWEyNGVmY2MwZjg3ZTIzMDI2NDA0Y2JhZWJlYiBsZWdhY3ktdHJ1bmsKKzgzNzIgNDZjZDM1MmM3NjM4OWZkMjI5MmM0Y2YwYjllMjZmNGEzNDJlNzgwNSBsZWdhY3ktdHJ1bmsKKzgzNzMgNjcwMjJkMjhhNjVkMmRmZThhOWZhMjJjNzNlMmMwNDY4NDg0MTVhMSBsZWdhY3ktdHJ1bmsKKzgzNzQgN2QzNWEwNTgwMzU2ZWJkY2Q2MGViNDNmZTViMDU0OGFjNzIxZWZiZiBsZWdhY3ktdHJ1bmsKKzgzNzUgMjUzMzc3YTQwNjQ0ODQ3NTU5OWNlMDI3MGE4ZGM1MDA5MjdjMGJkYiBsZWdhY3ktdHJ1bmsKKzgzNzYgZjgyYjYwOGFmYjU2OGRmNmIwNDg2Yjc0NDI0YTA5OTEyOTJkNzMxMiBsZWdhY3ktdHJ1bmsKKzgzNzcgNDY2NjY0YWQzOGU0Y2VmMTkxZjg0YTFjMmM3MzhjMWVmNDg1MDE5ZiBsZWdhY3ktdHJ1bmsKKzgzNzggYmE0OWE2ZWY3MjE0ZjdmMDRhMTQzNWM1NzI3NGJjMmRhMTc2YmZhMCBsZWdhY3ktdHJ1bmsKKzgzNzkgNDEwMmY0NDcyMDMyOWIwNmQyM2FlZmFmYjUzNzgwMGM0ZTQzMGMxMSBsZWdhY3ktdHJ1bmsKKzgzODAgYjZlNDhhNGNkZDFlNjhiMjk4MmU2YTFhMjIxNmI5MGM1NDdhZjdiOCBsZWdhY3ktdHJ1bmsKKzgzODEgYzUwY2MyOGFmN2M3OWY5MDRmNGNmYTFlMmRmMGM3MTk2MTBhN2I5MiBsZWdhY3ktdHJ1bmsKKzgzODIgYzI0MjM4NDNhMjZmNzE1ZWMyNGI3ZmM0MDc4NmQ0M2FlNGJhZjY4MCBsZWdhY3ktdHJ1bmsKKzgzODMgZjM0NDYwOWE0OGU0ZWE5NmQzNDBjYzdhNzViOWM3OGNmMTI2N2JjZSBsZWdhY3ktdHJ1bmsKKzgzODQgYWY5MmNmZmQwNjNmNTNjMDk5NDBhYmQ0NDFlZTViNDI1ZDNjMWUyYSBsZWdhY3ktdHJ1bmsKKzgzODUgNGRkOWVhMWU5NGE4ODAxYzk1ZWNkODRlNjc3YzUxNThjYWJkMmMzOCBsZWdhY3ktdHJ1bmsKKzgzODYgZjgyNTljYTllZWQzN2M5OWUzYTZhMWUyNmRkZDUwMjU4MzlhZDBhNyBsZWdhY3ktdHJ1bmsKKzgzODcgODk3NzFhNDZjYTM1NGQ1MTdiNmJiMjYzOWRiNzNkYTI0NzljYjQwYyBsZWdhY3ktdHJ1bmsKKzgzODggNjk4Njc4MWEwN2VmMGRjMTQzODBmMWFkMDZkYmFkMDNhNjdlNTQ1ZCBsZWdhY3ktdHJ1bmsKKzgzODkgZjUyN2MxMmYyZTU1MjhlNWFmNGNiMzUwZGQ2NGRkMDY5OGU4ZmU5NiBsZWdhY3ktdHJ1bmsKKzgzOTAgNmIzOWY4NjMzY2E1NDdhMWQ4NzI0NzQ3N2FmNGViNjIzMzNlYjBlYiBsZWdhY3ktdHJ1bmsKKzgzOTEgNTE1NWIyYzM1ZTE1OWY1OWRkMTc1MTM0YmQwNDIzODJhODFjMmUzNSBsZWdhY3ktdHJ1bmsKKzgzOTIgZGI5Y2ZiMTA4NjIzYzI1YWRlNTE4ODcxNDFjZWNjM2E2YThmNGI2MCBsZWdhY3ktdHJ1bmsKKzgzOTMgZDJjODAzODBhZDBkZTc0MjNkYzZmZTVkNDFkYmM3OWQ2ZjVhM2QzMSBsZWdhY3ktdHJ1bmsKKzgzOTQgMDRhMWI4MmM4MzJiMWE3ZTE3ZjkzZTMxYTlhYjU1NjZiZWE4NGRlNyBsZWdhY3ktdHJ1bmsKKzgzOTUgNzgwYjY4ZGY0NTYwNzc0ZjViOGZmNTY2YmRhZDI1MjViYjgyNDQyZCBsZWdhY3ktdHJ1bmsKKzgzOTYgNWRhMThlMDAyYjFhOGZlODViYTVhOTU1OGMxYzE4Zjg0YThjYjc0ZiBsZWdhY3ktdHJ1bmsKKzgzOTcgNWZiMzA0MTNiOTNiMjE5ZjgwMTU5MzBkYzJkZWM2OTI5NjE1YjAwOSBsZWdhY3ktdHJ1bmsKKzgzOTggODAwYTUyMTdlNjdlNzg2OWJkYWU1ZDVlMTE1NmRiZThkOWM2MDEwOCBsZWdhY3ktdHJ1bmsKKzgzOTkgNDRkZGM3MTFlZTJkYzhjMTJkNGE3NWE4ZDJkY2E1ZjQ0ZGNjMGExMSBsZWdhY3ktdHJ1bmsKKzg0MDAgM2UxNThlNjlhYzVkOTFjMWNhMzRhZDAwZDAwYzNhZWY0MmE3ZjFjYiBsZWdhY3ktdHJ1bmsKKzg0MDEgMDhiMWU5ZDg0N2U2YjU5OTU5YTJkZmM5Y2ViNmMxY2JlYWIyMTI3MyBsZWdhY3ktdHJ1bmsKKzg0MDIgOTMzMDRiMmUxNGNiMzY4NzljZjYzMTRiYWRmZTQ3NGUxYWYwZmZmMiBsZWdhY3ktdHJ1bmsKKzg0MDMgOGQyMTk0ZTIyZTY3MzljZDk2NjI1NGE0ZmU4MmEwYmE2NDlhNjYyMSBsZWdhY3ktdHJ1bmsKKzg0MDQgNjNiYzkyODlhYjI4MjkzOTg1ZDA0YWQ2MjM5NmQ5MWZlYjhkYWFiZSBsZWdhY3ktdHJ1bmsKKzg0MDUgY2EyNDVjMzZjNmY2Zjg0ODI4NjMyOTE0OGJlOWY0YjAwYWE0MGY1NCBsZWdhY3ktdHJ1bmsKKzg0MDYgYjNjOTEzNzQ2OTAwZTE2MWNhYTM3NDZiMWE4ZGU0YmI3MTgxMWEyNSBsZWdhY3ktdHJ1bmsKKzg0MDcgZTJjY2U0YWRmMmE3MDI5ZWJlODBkN2Q5NzJlZjQwN2RiYTBkYWQzZiBsZWdhY3ktdHJ1bmsKKzg0MDggMTJmZTVjYzE1MTZkMDgyZDBkMjdhNmM4MWJjMDM3ZGRjMmQ1NzEwYiBsZWdhY3ktdHJ1bmsKKzg0MDkgNDBjZmM5MDVjNzc2OTZhYzhiMWUxMmM2ZWVjODNhYTNhMzY5ODAwOCBsZWdhY3ktdHJ1bmsKKzg0MTAgYjIxMGQyMDU5ODEyMTZkZWRkNDVkM2E4YTMxZjIxOTEzY2U4MTViMyBsZWdhY3ktdHJ1bmsKKzg0MTEgMDM2OWQ2M2IxMDBiMWY0YmI4MDc2ZGI5MWRmMTkwZDg5NjI3NWQ5NyBsZWdhY3ktdHJ1bmsKKzg0MTIgZDc3ZDNiOGU4NmIyNWE4OTIwN2E3ZDI0ZWQzM2EwZTVmNjc0MjU3YSBsZWdhY3ktdHJ1bmsKKzg0MTMgODBkMjQzNjRiOTMyNWViNjI2YTFjNGUzNjhiNTBhMGQwN2U3NzQ3ZiBsZWdhY3ktdHJ1bmsKKzg0MTQgNWE0ZDE4MWZmZmZkZjU3MzBjYmIyYTI4MzE3YzM4MTNhOTRlMzA5YSBsZWdhY3ktdHJ1bmsKKzg0MTUgMjIyZmFlYjQzZDAyMGM5NDZhYzc4Y2Q5ZDc1OWVhNmFhZWMzNzNiOSBsZWdhY3ktdHJ1bmsKKzg0MTYgMmM2NWJiNmFiODdjZDliYjY5ZjNlM2U0OWM2MjNiNGUyMzYyMjVjNyBsZWdhY3ktdHJ1bmsKKzg0MTcgZWVmNzZiM2NkOWFlZjNjMjI3MjJkN2ZiMzBkODMwNWM0NDgyMDM2MyBsZWdhY3ktdHJ1bmsKKzg0MTggZjdmYzg4ZmNmZmEyNDZiM2IyNDYzMTZjZDQyNmQzNGIwMzZmMWNlOSBsZWdhY3ktdHJ1bmsKKzg0MTkgYzExOTI4ZDI1OTdiZGRjNmQyMzEyZmYxNTY1YzZkNTA0NzM3YjcyZCBsZWdhY3ktdHJ1bmsKKzg0MjAgYWM4NzdjNDc2OGUxY2FiZjlhMjQxNDAwOTY1NTUzYWIwYWZiYzljZCBsZWdhY3ktdHJ1bmsKKzg0MjEgMWJkNjhlNDQ2NGNlMmZjNTQxZTkyYzdlNWNlM2JkMDAwMTZhOTkxMyBsZWdhY3ktdHJ1bmsKKzg0MjIgNzViM2FhYmNiN2MxMDA5MTk3NjhjNDljODI0MzhiMjhiMjVhZmVkNSBsZWdhY3ktdHJ1bmsKKzg0MjMgOWE1NjQ1MmM3ZThlOTIzMTNmNzlkODQ1NzkxZTYwOWZiNGY4Yzg5MCBsZWdhY3ktdHJ1bmsKKzg0MjQgN2NhNmE5MTJkNDU1YjliYjJmMjY1NzczMDlhY2Y0ZmZiNzJhM2YwMiBsZWdhY3ktdHJ1bmsKKzg0MjUgNmMwNjBiYzNiZjNkOWI1ODBhM2JkODk3YWNmNGZkMTBlOTk5OTk3YiBsZWdhY3ktdHJ1bmsKKzg0MjYgMGI0YTlkZDA5ZTBkYjBjZGQ5ZjZlMmFkMDNlMGYyYzY1OGFiZDY0MiBsZWdhY3ktdHJ1bmsKKzg0MjcgM2ZiY2RhNzQxNjk2NWE0NDIwNzA5ZWFjNjg5NDQyYThiZTQwNzBiNSBsZWdhY3ktdHJ1bmsKKzg0MjggOGQ3ZGM2Njk2OGNiYzZlYzRlYTNkYjNjMzQ5YzQ1OGUzZmYwNGYwZiBsZWdhY3ktdHJ1bmsKKzg0MjkgYjJlMDE4ZmIyYmE5MTVjMjA3ZDg3ZGJiMmEwYjdlNWY0ZmU3OGJlYyBsZWdhY3ktdHJ1bmsKKzg0MzAgMWE5OTY5NWE0MWNjZjY5MTQ2ODRjYmNiMDc5ZDQ0MzZiNjhmOGM2MCBsZWdhY3ktdHJ1bmsKKzg0MzEgZDM4MzVhNmExOGM5NTc4NWM4ZDFiMTAwMjYzZjlmYzg5YjRkZmI3MCBsZWdhY3ktdHJ1bmsKKzg0MzIgMWYyZGZjYTUyMjA3MmQxMzljODg2MjZmNjg4YzI0NWQyMWQ1NWFjOSBsZWdhY3ktdHJ1bmsKKzg0MzMgM2Q2ZjNmMGFlMDA1MDY1NjE0MmIxOTcxOWE4ZGVmZTVhODYzMjU3YyBsZWdhY3ktdHJ1bmsKKzg0MzQgMjRlYzQ2MjRlYTllMzA5OTJiOWRhZjc5ZDQ4MGU3YTFmZTdlMWIzOCBsZWdhY3ktdHJ1bmsKKzg0MzUgODM0NDYxYThjYTc2NzE0NjA4ZGRhMzNmYmM0YzI5ODVkNjk5ZjdjZiBsZWdhY3ktdHJ1bmsKKzg0MzYgMWE0ZmI2ZjEyZmZkNTRiMTIzZDIzZGU5ODAyYTA1Mjc0ODRkY2FhZCBsZWdhY3ktdHJ1bmsKKzg0MzcgNzZiYjQwYTFlYjA0NTMyMzg5OGQ2YjAwYTEyMjBlOGNlYmZlZWE0YyBsZWdhY3ktdHJ1bmsKKzg0MzggMzVlNWFjYzY1MzJjN2U1NGE2OWQ3MGJlMjU1NWRjYjQzYTc0Njk5YSBsZWdhY3ktdHJ1bmsKKzg0MzkgMjNlMDE0ODM5YWIwNTdkMTU5Nzc3NzIzZmM5MGYyNWU4MDJlMWQ2NiBsZWdhY3ktdHJ1bmsKKzg0NDAgODNkZTU1MzlmOGU0MzIyMGFkOWRmNzA2ZGQ4MzgwNTY5Y2JhMjE5NyBsZWdhY3ktdHJ1bmsKKzg0NDEgNDMwNTQwMjFiYjU3NTEwNjE3YTg4ZGZkZjEzOGNlZWEyN2I1MTVmOSBsZWdhY3ktdHJ1bmsKKzg0NDIgOGFlODNiOWMzNGEwMjQ1MDg3Y2YyZDcxNjE5OWQ3MzJkNTY4OGJlYSBsZWdhY3ktdHJ1bmsKKzg0NDMgOTZhOTdiMmI3MjNlOWY1M2UwNGYwYjNmOWY4YzQzMjZhODhiNmEwMyBsZWdhY3ktdHJ1bmsKKzg0NDQgOWU0ZGRiNDU5YjEwZDNiMGNmOTRiMjQ1YTY3ZTM0NzUzODBmYmZkYiBsZWdhY3ktdHJ1bmsKKzg0NDUgYjcwNDhmNWJlOWExOGQzOWFhYzRhZjlhNTcxZTM0MDM4OWE3MTY2OCBsZWdhY3ktdHJ1bmsKKzg0NDYgNWY2YTJlYWRhYjk3ODM1ZjI2ZTZiOTUzMTY1MDg0OTU3OTk2OTJmZSBsZWdhY3ktdHJ1bmsKKzg0NDcgNzAxZDg1NGQxOTMwYmI2YTFhMjRmMjczZmU5ZGRmMWVhYjczZGQ5NSBsZWdhY3ktdHJ1bmsKKzg0NDggM2YyYmZjMTU5ODlkY2FlNzU2MTcxNzljZGJiZjU1ZDY5MjQwZTI3NiBsZWdhY3ktdHJ1bmsKKzg0NDkgOGFiYjRkOGMzMTM0NDlkYTk5MmEzNDVjNmE1YWVhNjVkMGIwZDZjMCBsZWdhY3ktdHJ1bmsKKzg0NTAgZTc3ODQ3ZTExNThlMjEzODg0ZDRmYzM1ODQzNjE2ZTI2MjdhYTQ4NSBsZWdhY3ktdHJ1bmsKKzg0NTEgN2EwODgwZjhiOGVjMDhlYTEyNTIxMzE2OGRjNjkyZmE2NjRmMzhmNyBsZWdhY3ktdHJ1bmsKKzg0NTIgOGJiYTliYjg2NGFlMjM4YzRhZjkzYTc3NWU0Nzk4ZmVlYmM3MmRiMCBsZWdhY3ktdHJ1bmsKKzg0NTMgNWIyYzU5NTQyOGZhOTFmOTkxOTM2YWNiNzE5MzJiODdiYWVjYjNjNyBsZWdhY3ktdHJ1bmsKKzg0NTQgYjc3MDc5NjUxOWY2MDNmZWE1ZTc4ZDNmNjllNTkwZjcyNTBhYjZmZSBsZWdhY3ktdHJ1bmsKKzg0NTUgNzgxZWI0OWQyZDY2ZmQwYTA2NDJkODJmNGE3YmQxYTgxZDNlOWE1NCBsZWdhY3ktdHJ1bmsKKzg0NTYgNDIyOTYwNTIzMjg2NTIxNTI5Y2I2OGE3MzQwZjZmOThmNWQ3MmNhMSBsZWdhY3ktdHJ1bmsKKzg0NTcgMjg5NGJiNDllMmVlZTY4OTk0ZDE3ZGM2ZjQwYmQxMGNkNTIyNzNlNSBsZWdhY3ktdHJ1bmsKKzg0NTggMTcwYzQ2YTY1MDIyMGU2MmI2Zjk2MzJhODhhYzU2ZGU4Y2RhMDg1YyBsZWdhY3ktdHJ1bmsKKzg0NTkgNmFlYmQ5NzBiN2E5OWU4NGNmYTVmNDdkOTA3YTdhMjZiODVmN2QxMCBsZWdhY3ktdHJ1bmsKKzg0NjAgMzMzODVmOTRjYThhYzQyYTEyNzQ3NmUxZGFkMGM0ODU4NGYxY2RlZCBsZWdhY3ktdHJ1bmsKKzg0NjEgYjRiYmJhM2FmNGU4YzhhMmU3NjVkNTkzMGE1OGExMDVjYTA2N2VmZCBsZWdhY3ktdHJ1bmsKKzg0NjIgMDNhODgzM2I0YjczZDk5OTVkNTFjYmM2NWU4YmE2NDZmZDUyY2QwNCBsZWdhY3ktdHJ1bmsKKzg0NjMgMzIxMjc1OTNjMTM0ZDFhMWUzZDIzNmE1ZWU1NzIxZWU3NDRhNjQxNyBsZWdhY3ktdHJ1bmsKKzg0NjQgMGEyYzMzMTIwMGY1ZmYwODI3YmYwODk5M2JhMWFhNTk0MTMxMWM2ZCBsZWdhY3ktdHJ1bmsKKzg0NjUgNTk5M2EwOTlkOWIwMzY2MzBlZGYwYTdiYjRlZDBjNzZkMjg2NDhiZCBsZWdhY3ktdHJ1bmsKKzg0NjYgNWI5MGRhOGE5ZGNjMTc2ODQ2YWYxNmFhMDE2N2QxYTlmYjE4ZmI3MiBsZWdhY3ktdHJ1bmsKKzg0NjcgNTAzNTAwNjUyYmFjNDhmZjQwMmRlMmJiMGNhN2NhNzVhNjY0MDE3YiBsZWdhY3ktdHJ1bmsKKzg0NjggYTU3MzdkZDk2OTc5MDA5ZWJmOTkxYjljYzk2NGE1ZWRjNzA2ZDJjMyBsZWdhY3ktdHJ1bmsKKzg0NjkgNmU1ZDRlYzAzNzkxYzk2Y2M3OWQ5NWJmZDA4MWY2NGYzNjNmZTM1YiBsZWdhY3ktdHJ1bmsKKzg0NzAgMmRiM2I3MzYxODUzYzU1NjFmZWEzM2FmMTU1MTk0YjI3ZDhhOWE4NCBsZWdhY3ktdHJ1bmsKKzg0NzEgM2JhYzUyMzUyYzBiYzdhNmRjMWVhZTYzNTI3MTJkY2JjMGNhNDg0YSBsZWdhY3ktdHJ1bmsKKzg0NzIgYjhiNmE4OGY3ZjQ0MmRmNDBiNDcwNmMwNjQ4ZDZhYjVmOGY3YTEyNyBsZWdhY3ktdHJ1bmsKKzg0NzMgOWU3ZDU5ODJhYjNkZTk2ZTlhNDVkY2M4NTk2NTFiZDJkODg3ODM0MyBsZWdhY3ktdHJ1bmsKKzg0NzQgZmNlYTU3YzM0NmE1OWI2MWUzZjM3MzY0ZTlkNTM1ZGM1Y2EyMzljZCBsZWdhY3ktdHJ1bmsKKzg0NzUgYzI0YjU0YzE5NTcxNDJkMWQzYWY2MGRkY2RjMDQ0ZGQ2ZTJjNzhiMiBsZWdhY3ktdHJ1bmsKKzg0NzYgZjJkMTM0YmY2OTczYmEyNjU0OWRjNDI5MWQzOTU4N2VlNmM4MDRiOCBsZWdhY3ktdHJ1bmsKKzg0NzcgZDUyMGQ1ZDAxMTE1YjcwMmJjZmNjYTFhMGViN2E1NTY1MDFkMDZhZiBsZWdhY3ktdHJ1bmsKKzg0NzggODA1NjE2OWVjNDQ4ZTIzM2QwYjQ1M2JjMmZlZTk3MjhhM2RiNWY1NSBsZWdhY3ktdHJ1bmsKKzg0NzkgZDQzOWMzMmNlOTYzN2ZmY2E2MmI2MzljNzI3ODk4OTM3OWI4ZWRmNiBsZWdhY3ktdHJ1bmsKKzg0ODAgNTA4OTIxOTUwZjJjNDBiMmMwYzZmOWQzMDZiZTFiMGI4ZGM5YjNkZSBsZWdhY3ktdHJ1bmsKKzg0ODEgM2Y1OWIzNGViOTBmOTZhMzExNjhhYzFlODAyYmY0ODg4MWM4NzUwYiBsZWdhY3ktdHJ1bmsKKzg0ODIgMGNkYTlmMjQ3ZDdhY2I5YjJmMjRlMmRjZjI4NTA4NzJiY2Q3NGU4ZSBsZWdhY3ktdHJ1bmsKKzg0ODMgNzM2MWYyZjE4NmFkYTAwNWRiMzkxNDY3MGVhMGQwOTVlYTQ0NGIwNyBsZWdhY3ktdHJ1bmsKKzg0ODQgOWJhNzJmYzRmNTAzNjRjNzIzNDA3NjA5NTJhYWVjZjJiNzRjYzYwNSBsZWdhY3ktdHJ1bmsKKzg0ODUgNWRjMjY3Y2Y0ODk1MmNjMWJlYTJiYTFkZDM1NzIwOTU1Y2FmZGZjOCBsZWdhY3ktdHJ1bmsKKzg0ODYgODg3NDA4ZWVhZTk5MzliNTE5NTFhZmUxYzVjZmI1ZGFkMmQ3NjM1YiBsZWdhY3ktdHJ1bmsKKzg0ODcgODcxZjEzNWRkNjEyOWIzNzJhMGYxMjIzZDI0YzlmMDE4ODhkOTQyNSBsZWdhY3ktdHJ1bmsKKzg0ODggY2M1NzcwMDFmN2VjZWVkM2YzYmM3MGIyMzcyODAzOGZmOGMzYmU4YSBsZWdhY3ktdHJ1bmsKKzg0ODkgZDAyYWM2MWNkNTBmMWZhZTU3NjUxODgxMDhjZTM0Mjk5NDI1MDM3YyBsZWdhY3ktdHJ1bmsKKzg0OTAgMGI1YTIzZWE3NTE1NmYyNzNlNGFmYjJmMzgyZDQwZjhhOTY4OTg5ZCBsZWdhY3ktdHJ1bmsKKzg0OTEgMmYzNmUwYmIzN2MzNzhhOWNmYzQwZWYyNjJlOTY0NGY5OWJmY2Q1ZCBsZWdhY3ktdHJ1bmsKKzg0OTIgMThhZDExMDZmNjUxYWI4ZmNmZmQ1ZTQ4ZDY0ODk1MmY3OWRjMzMyMCBsZWdhY3ktdHJ1bmsKKzg0OTMgZGZmMjAyNGFiMDIxZmUyODg2ZjFhYTA0NGUzMmZjNWRlNGUwOGU0NiBsZWdhY3ktdHJ1bmsKKzg0OTQgNTBhNDE4NjNjMzRhNjAxMjc5OTIzNzdjODUzNDgwYTU1ZThmZjE0YiBsZWdhY3ktdHJ1bmsKKzg0OTUgZjA1NTQ2NzQzNDA2MTA0NjVjN2Q5YzhiNDkzMGUwZjAwNWQ0MjIwOSBsZWdhY3ktdHJ1bmsKKzg0OTYgYTJmOThkN2NhZGVkMWRkMjJkNThlZDMxNGM2MTAzMWUxNmNkMjRmYyBsZWdhY3ktdHJ1bmsKKzg0OTcgNTljMzQ5YTE0YTNhZGUzN2Q1N2VlOWM1NWRjNDkzYzg4MTEwOTVmZiBsZWdhY3ktdHJ1bmsKKzg0OTggNjAxYzRlY2EzZGUzNDFlNzdjMmIyMzc3ZDdkNTYyMDE3ZjMxNTM2YiBsZWdhY3ktdHJ1bmsKKzg0OTkgODAyNDcwYzdhNTBmMDQ4NGY5MTI1NzJlZGQxM2EyNjJjMTllYjUyMiBsZWdhY3ktdHJ1bmsKKzg1MDAgNmEyNWQ4MTEwYjAwOTQ1MmE2YjAwMDY5YWM0OWI5NGIyOWU4OGQwZiBsZWdhY3ktdHJ1bmsKKzg1MDEgZDVmODc0MWE4MTJjZjU1NTA3MzIxNmM3YzQ2NWFkZDY0M2U5MTA5NyBsZWdhY3ktdHJ1bmsKKzg1MDIgMGFkMTVmMzBjOGQ0MTA4Y2I2MTE4Y2Y5Yjg2MWE4MjBkOGFiMTU3ZiBsZWdhY3ktdHJ1bmsKKzg1MDMgYjU4MDQxNTRhZjRkZjEyZDJjZTYyYzY1MDhhN2U2ODZkYjYyYWI0NCBsZWdhY3ktdHJ1bmsKKzg1MDQgNDk0ZTU1MGNiMThkMTVjMmNlMTBkMGRlZTk0ZDQyNGQ0ZjQwNDFkMCBsZWdhY3ktdHJ1bmsKKzg1MDUgMjkyMTkzMTcwZGExNTlmY2ZmYWExMzg5Yjc3NGVjYWNkM2E2MmVjMCBsZWdhY3ktdHJ1bmsKKzg1MDYgNjhmMmQ3NzA0MTgwYTcyYjRkMTI3ODhlMDBjYTA1ZDc0ZDRjNDVmZCBsZWdhY3ktdHJ1bmsKKzg1MDcgYmY4MDNkZmQ0NDI4ZjI3NjE1NjBlZWIwNmM4MGRlOGUwMWY1NTYzOCBsZWdhY3ktdHJ1bmsKKzg1MDggNmM0NDlkZmYyZmI4OWNmMDU0ZmQ4YWY2OGViZjEyMGQwM2NkMDY4MSBsZWdhY3ktdHJ1bmsKKzg1MDkgOWE1N2NhMjI5NjgxYjY4MmNmM2FjNThiNzIyMGRkODhlOGM4YmEzMyBsZWdhY3ktdHJ1bmsKKzg1MTAgYWM3NTU0ZjI5MzEzNjllMzViZjk5NWE5M2JiMjg1MDdmZWZiOGFhMyBsZWdhY3ktdHJ1bmsKKzg1MTEgMWNmNzllYThmZmEyYTU4YTkwZDhkMTA2Mjk1MTc2MjgyY2RkZWVjNyBsZWdhY3ktdHJ1bmsKKzg1MTIgNjE0MTE4YTEzNDhjOTQyMWI3YjNmZjJmMWNlNGQwNDg4NjYxOWVhOSBsZWdhY3ktdHJ1bmsKKzg1MTMgYmUxYjc4ZTcwNzI4NzI4M2QzNWYyMmM3MDNkZTIyMTE3MmQzNThiOSBsZWdhY3ktdHJ1bmsKKzg1MTQgNGMyMjkyZTcwOWIyZDI3ZDUzN2Y3Y2NhZjZiNjAzMTU4NWNjZjZiYSBsZWdhY3ktdHJ1bmsKKzg1MTUgNDdhZGYxOGQwMWFkZDc4NjNlMDZiZDMzMmIzNWMxMjdkMzllZjk4ZSBsZWdhY3ktdHJ1bmsKKzg1MTYgNjE5MjMyMjM2ZGRiOGE1ODZmMzMwNDUwYzA0Zjc1YWI5ZmUzYThkYSBsZWdhY3ktdHJ1bmsKKzg1MTcgMWE0MzY5OTEwOGE2Mzc1NjU2MGI0YjMyNzY2OGQyZDJjODczYzllMiBsZWdhY3ktdHJ1bmsKKzg1MTggYTllMWVhODBlYTNmNGFhNTlmNTNmMzI1NzI1MjdlZGRmOGVmOTQyMiBsZWdhY3ktdHJ1bmsKKzg1MTkgNmRiM2Q1MmQ0YTc4YWYwN2VmYTIzMmM3NWIzYTMyMjFlYmRlY2E0NSBsZWdhY3ktdHJ1bmsKKzg1MjAgYzA3OWU5MjRjOTI3MTg5NjFiM2I5ZmUyNWQ1YWEwZjgxNWM0ZWY3MiBsZWdhY3ktdHJ1bmsKKzg1MjEgMGI5ZWMxYjM0YTdhNDA4ODBjZDI5YzJiNDdlY2MxM2FhMmI0MWNiMCBsZWdhY3ktdHJ1bmsKKzg1MjIgNmViMWUzNTQ5ZTJkYmJhNjI2ZWQzZTVmMjU4Y2M1YTkwMjE0ZGQyNCBsZWdhY3ktdHJ1bmsKKzg1MjMgOGJhNDZiMDc3OGRhZDI4ODcyYzkzMDA3ODBlMzRmZTUyZjE2OGE5OSBsZWdhY3ktdHJ1bmsKKzg1MjQgOTZmZWNjODBhMjhmN2M5ZjE1MDI0OTRkYzMxOTA0OTA2Y2JjZmY2YyBsZWdhY3ktdHJ1bmsKKzg1MjUgZTkzNjYzMTE3NmI2MWQ2ZDE5OTcyOTQ5NjA1MDRmMmZhNTUyNTgyOSBsZWdhY3ktdHJ1bmsKKzg1MjYgNGYxMmMyMWY4NzQ3OTY4YmM0MDdkMjIxY2M2NTJlOGVkZmI1NjRmNCBsZWdhY3ktdHJ1bmsKKzg1MjcgNjA3MzFiMTlmZTM0ZDU3ZTkzZjIzNDkwZGUzMjBhN2MxNGY1NzBmMSBsZWdhY3ktdHJ1bmsKKzg1MjggNmIwYWZiYmZlMGI3ODE5ZGQzODcyYTY1ZWIyMTg1NjE1OGY0Y2QyZSBsZWdhY3ktdHJ1bmsKKzg1MjkgMWRhMTIyNzE4NTk4ZTc1MDEzMzZjZWJkNTBlZDA5ZDkyYjAyMTIzZSBsZWdhY3ktdHJ1bmsKKzg1MzAgZGEzYzdkNDdmMjEwYTZlNWQ1YTAxMGJjMmYyNDY1ZDJkOTE0MzRlNyBsZWdhY3ktdHJ1bmsKKzg1MzEgY2FiOWVhNWU0ZWVkMzdkNzExMWYyNTY3N2RmZTA1M2I5MDMyNWJlMSBsZWdhY3ktdHJ1bmsKKzg1MzIgNzJkMDA0OTcxYjI2Nzk3ZTAwNzU5ZDAyZGY0NDUwOWNiYzY2Njc1MyBsZWdhY3ktdHJ1bmsKKzg1MzMgOGVjMDIxMjdjNDRiYjQzNTllNzExMTJjMGJiNDg2NjNhYWIzZWI5NCBsZWdhY3ktdHJ1bmsKKzg1MzQgNTY2ZDBjYWU5MTkxNWFiMTIyYmRkMTVlZDcwZmI5YjY1NjY0ODU2MiBsZWdhY3ktdHJ1bmsKKzg1MzUgODc3ZGJiYTNiNWE4MDQwMmM1NjU5YzFlZmJhYjEyZGU5MjczMTZlZSBsZWdhY3ktdHJ1bmsKKzg1MzYgMzg3ODRiODUzZDIzMWQyYWZlZWU2ODc2ZmQ2ZmQzMjM3ZTM1MDc2YSBsZWdhY3ktdHJ1bmsKKzg1MzcgMTE0Mjk5NjhlMjlkMjJlZTRhNGE0ODAxNWI4YmY3YzBkYmVlNmRjNCBsZWdhY3ktdHJ1bmsKKzg1MzggMzZkZjQ0MzRiM2IzMDNhMTRmNTg2YTM1MDg1MDcwODMxNjcwNzk2NyBsZWdhY3ktdHJ1bmsKKzg1MzkgNzRhNzg2NjZkZGM4YWZiZDMwZjMwMmM3Y2VjNDEzZjU5MmUxYjAzYyBsZWdhY3ktdHJ1bmsKKzg1NDAgYTVkNTAzZWNhNzQ3OGRkNDhlNWY0ZjNhZTVkZTdiODJlOThhYjEwYiBsZWdhY3ktdHJ1bmsKKzg1NDEgZTg4ZDJlMzIyYzVlYmU4MmNiY2VjMGZkMjdiZjljY2I5ODBmN2U0NSBsZWdhY3ktdHJ1bmsKKzg1NDIgMGY0MTkzYmQwOGQwYmNiYWVkNjI1Mjc0YjE4YjY0MDRiMDk0MmFmMiBsZWdhY3ktdHJ1bmsKKzg1NDMgZTRjZDA5MmY0M2Q2NmFhYTg2NWZlZGIyMDcyOTZiY2M4NDRhYThjOSBsZWdhY3ktdHJ1bmsKKzg1NDQgM2QzZmE4NzczODdhZWQzMTY0ZGMyMmU5MzhmMmRhMzc5MzE2ZGMzMyBsZWdhY3ktdHJ1bmsKKzg1NDUgOTI1ZjkwYjQ4ZDczNzI0NTM3ZDA3NzVkZDAyMTk1MGFjMGMwZTc0YiBsZWdhY3ktdHJ1bmsKKzg1NDYgZTBmMjQ5OTkzYTRmN2Y1OWM5MjYxODE5OThhODEzNmFhMDNhZWYwMCBsZWdhY3ktdHJ1bmsKKzg1NDcgNjQzZmE1NGYyMTI0NTgxZDVhNjNmMzhlMzliNGUyNzE2ODhjNWJhNiBsZWdhY3ktdHJ1bmsKKzg1NDggZDkxY2MwYTU3ZGFhM2E0MzJkNzZkOWRkZjFkM2Y4ZjlmM2QwZDJiNCBsZWdhY3ktdHJ1bmsKKzg1NDkgYzdiNWE3MjJkOTI2NDk0ZTY2ZTFjYTI0YjdjOWYzMWQ0NmIwMWQ0NyBsZWdhY3ktdHJ1bmsKKzg1NTAgZWNjOTQ5MGVjNzE5Mjc4MzhiMjk3ODExZjA4YTc1YjIyOTI4YmM4NCBsZWdhY3ktdHJ1bmsKKzg1NTEgNWU1ZTU0YTZkYmE2ZmFiOTJhOGVkYTE0NWIwZTdmZTk2ZWI2YWQ4MiBsZWdhY3ktdHJ1bmsKKzg1NTIgYmYzZjQ4N2ZjZDhiNTdmOTkwOWVhYTI3ZWFlYTIwZTM3OGFmYjUwZiBsZWdhY3ktdHJ1bmsKKzg1NTMgNjU0MGViMTdlNWI2NDU3YjVjYTVmOThkZTEzOTcyYmE2OWNiMTkzNyBsZWdhY3ktdHJ1bmsKKzg1NTQgODgxNGNjZjJkMWNkYjY1ODI4NTQ2NGFhYjViMjM1NWMwYTEwZDJiYiBsZWdhY3ktdHJ1bmsKKzg1NTQgZGM1Yzk2OGVjOTkyYWFiM2Q0MGE3MTg5ZGYwYzQ0M2QxYzdhMWE2OCBsZWdhY3ktdHJ1bmsKKzg1NTYgMmYxYTVjYWQyN2I3YTIzMDFiYzA4ODRhZGQyMzY1NTQ1ODYyNTI1MCBsZWdhY3ktdHJ1bmsKKzg1NTcgZDNjNjAzNWFjM2NiY2FiNzVmYmZmM2U5M2FiZWNmNjUzYjFjZWM2ZiBsZWdhY3ktdHJ1bmsKKzg1NTggMGViMTRhNjQ4NGYzZjhmN2QyZjNhODRlNzVhYjRmZDMxMmM0NjFjMSBsZWdhY3ktdHJ1bmsKKzg1NTkgZDdjYTA1NTQ3OTVlZWYzZmI0MWZiZjE5N2QxYzBkMDhlOGNjYTBlZCBsZWdhY3ktdHJ1bmsKKzg1NjAgZjE1OTA0NDUzMGIxODI3MDQ2NzI2ZmIzNjAyNmVkNzEwYmMxZjlmZiBsZWdhY3ktdHJ1bmsKKzg1NjEgMGFhNjJjYmVkOWY4MmU5MTcyOWQzOTkzODliNThiMWU3MWI5YmNkMCBsZWdhY3ktdHJ1bmsKKzg1NjIgZjlmMDI2MmM0YzU3NmU3YjdkNTBiYmU0NGUzOGMxZmRkY2JiNjliOCBsZWdhY3ktdHJ1bmsKKzg1NjMgZDg5YTIxOWI0OWE3MjEzYzFiMmM4NTBkNWVhZjFkN2U5MjUyNjU0NyBsZWdhY3ktdHJ1bmsKKzg1NjQgNjIyYzhkOTgxYTY5NTVmYTYxY2IwNTJmYjVkYjI0MjVjMjBhMjI5MiBsZWdhY3ktdHJ1bmsKKzg1NjUgYjA0NGM0NzljYmM4MzA1MTgzZTUzZmEzZDJiNjFlNzY5MDI0YmEyNyBsZWdhY3ktdHJ1bmsKKzg1NjYgZWRhZWU1Mzc4MDIxMzNiNmJlMDIwOWVkNGQwY2UwNTU3OTEyMWNmOSBsZWdhY3ktdHJ1bmsKKzg1NjcgZjEzMDQ5ZWQzMWZkYjkzNDMxN2FlZDVjMjIxZDY2ZTk5YWY3Mjc3MSBsZWdhY3ktdHJ1bmsKKzg1NjggZGM5MTZkOGJiYjU1ZDg4MjQwNWZkOGJmMzJhYWVjZDg5NDY2NThmMSBsZWdhY3ktdHJ1bmsKKzg1NjkgMjk0OWMwYTQwYjdiZDA4Y2FkYzhhYWQ2MTQ1Y2U3YmMyZTg2M2U5MCBsZWdhY3ktdHJ1bmsKKzg1NzAgZDEwOTNmMzQyMWI2ZjUyODBiZWIyMmM3ZGY4ZGFiYzljN2NjNGEyNiBsZWdhY3ktdHJ1bmsKKzg1NzEgYTIyZmNhN2E1YzVhN2QxMjcwN2ZmOGFlMWRlZjcwYzU0MzAxZjI2MiBsZWdhY3ktdHJ1bmsKKzg1NzIgMjc0MjI2NGVmZGRlZGQ1ZDk1OTJmZmM4MDc5NDMzMDdlMDgyNzU1NyBsZWdhY3ktdHJ1bmsKKzg1NzMgNDRiOGNmYmRhNDQxMjQwMzIyNmZiZGIzOGUyMzQxMTc3YTlhYmIxYiBsZWdhY3ktdHJ1bmsKKzg1NzQgZDEzN2U2MjRjZTQyYjIzOTFhZmI5YTRjMzA1M2YzYzJjYWYxMmU2OSBsZWdhY3ktdHJ1bmsKKzg1NzUgMTc5YmZkMGZlZTI0YTI3Mzg4ZDVlNTk5OTUwOWE3NTdjNTAwYzYwYyBsZWdhY3ktdHJ1bmsKKzg1NzYgOGY3ZjQ3NzAwN2IzODg2NTJjNTY3YzI4NTE4NmU0YzRjMzg1OTI2NyBsZWdhY3ktdHJ1bmsKKzg1NzcgOGJiMTI4MjE1ZGM1OGMxZTg5ZjhmY2QwZDY1MGE3NDI5MDkxODk4MSBsZWdhY3ktdHJ1bmsKKzg1NzggYTY0ZDE0YzQ5MTRmMjE1ZTUwMTgyMTZhZTgzMWNiZmJjMTkzZWEwOSBsZWdhY3ktdHJ1bmsKKzg1NzkgNGQ4ZWJmN2FmZmFiNGJkYWRiNzBhYmVkNWU2NmViODVhYzFiZjQxZSBsZWdhY3ktdHJ1bmsKKzg1ODAgM2JiODk3MGZiOTE4MzBhNTkwMTNjNzA0YjVhNjcyMzc1NzFmOTFiOCBsZWdhY3ktdHJ1bmsKKzg1ODEgZjNjMGMxN2I5NzA4YmY4MmM5ZGEwYWRiODgzOGE5NjYyZWFlMmY5NCBsZWdhY3ktdHJ1bmsKKzg1ODIgNzdmYjg4MGVjYTQ5MWZlMTM1OTRlNmRhNGVmNjRhZDgwOTI5MmJiMSBsZWdhY3ktdHJ1bmsKKzg1ODMgMzZiM2IzMzdjNTY2Mzg0MjFjZmEzYmRjOTU1ZGVhN2YwZjM3YzA1YSBsZWdhY3ktdHJ1bmsKKzg1ODQgN2JkNTY1ZTRmYmI1YWEwNDU1NzBjN2E1YzY3ZWQ5NzVhMGZkYTgyYyBsZWdhY3ktdHJ1bmsKKzg1ODUgMTY3NmY1Nzk1MTgwYmNiNzZmNGFlYTFmNDQ4MThkZTFkZjJkNjUzYiBsZWdhY3ktdHJ1bmsKKzg1ODYgOGNiMmFmZDEwMTE5NTAwZWIwZTBiMzM4NmU5YTNiMTFmZjNhNDVhZiBsZWdhY3ktdHJ1bmsKKzg1ODcgMjYwYjIxNzY5MDYxYWE5MDZhMWNjMmE1MmZmMzRmYTkzMWUyZTNiMSBsZWdhY3ktdHJ1bmsKKzg1ODggOTczZWYzNWVmNDgyNTY4ZjM5NTYyYzMxMTVmNjlhNmFjZDcxZjllOCBsZWdhY3ktdHJ1bmsKKzg1ODkgNWQxZjMzN2NlZTI2OWY5MTFhYzZmZTI2YTdiOWY2N2E2YmMyOWQ1NSBsZWdhY3ktdHJ1bmsKKzg1OTAgZDkxZmQ3Y2Q4YmU3YjJmNmJkNDI2ZTE1MDQ4NjZiOTYzMjYwZDNiMSBsZWdhY3ktdHJ1bmsKKzg1OTEgNzM3ZWQ2NjUyODk4ZTk0MTZjODA4OTljMzI5MzBjN2VhMGI5YjhjNSBsZWdhY3ktdHJ1bmsKKzg1OTIgNjVjOWJhODAwMDMwMmMyZjQ2YTVhYjgwYTU5ZDFmZjcyZDM4ZTI0MyBsZWdhY3ktdHJ1bmsKKzg1OTMgMDdiN2Q0MzIwYjE0YWRhYTUyYmE4NDlmZTc5MjA2MzAwZDA2NTJiZiBsZWdhY3ktdHJ1bmsKKzg1OTQgOThhMjgyY2ZiMDEzZTc4MjI4N2FjMzQyMWIxOWVhMGUxOWRlNjkzZiBsZWdhY3ktdHJ1bmsKKzg1OTUgZDEzZDNjMmM5ODYwYTkzNDJmMTIwZTM4MzM2ZjRiZDgwNGJkZjM5NSBsZWdhY3ktdHJ1bmsKKzg1OTYgYzIwYjY5ODBhODcwZmNkNjFjOGZlNzA1ZWJlY2U4MGU5YzQwMWQwMiBsZWdhY3ktdHJ1bmsKKzg1OTcgZGYyOWU4M2MzMDRmYWE0ZWQyYjQ4M2EyMTViYzU5MTIyOTUzNGU4NSBsZWdhY3ktdHJ1bmsKKzg1OTggZGYwMjhiYzU0ZTZmMzJhNWYwZjhjMGExN2FiNWJlNDBjMmNmMjQzMyBsZWdhY3ktdHJ1bmsKKzg1OTkgZGI4YWM2ZTEwOWI0ZGMwYjkyOGQwNmE5Y2NlZDdiZDc1Mzg3ZTZiYyBsZWdhY3ktdHJ1bmsKKzg2MDAgNzQ4ZmI1YTAwOWE3YzBjMzAxNmE4NWNiM2QxOTM1ZmFmMWJmMzNiOCBsZWdhY3ktdHJ1bmsKKzg2MDEgY2MyYzg0NzY5NjM2YTQyNTlmN2ZlOTA1ZWEwOWNlNzlkZjYyZThiYyBsZWdhY3ktdHJ1bmsKKzg2MDIgZDRlODdhYTdiZmYwNTY3OTE1MjZmM2VmYjRmNGQ2MDRiYzFhMTU0MCBsZWdhY3ktdHJ1bmsKKzg2MDMgYjQ0OTM0YzIwMTI1ZWZkOGEzMjIyYzcwYTNhOGMzNjRlMDM2NGMzNyBsZWdhY3ktdHJ1bmsKKzg2MDQgNDI1NDA5NWE1MDI5ODAxYzBmOTI2MzQ3ZjA1MjI5NGJkZjU2Y2M0NCBsZWdhY3ktdHJ1bmsKKzg2MDUgMDYwZjgzOTMyZTkxYTZmNTgyM2U4MjAxNmM4ZGZhMmI4ZWYzNmZhNSBsZWdhY3ktdHJ1bmsKKzg2MDYgNWRjMDc4YjIxM2U1ODJkNzFlYTgxY2QwYzAwNmM0ZGZjMzNhZjJjMyBsZWdhY3ktdHJ1bmsKKzg2MDcgMmQ5NTgyZWVlMTEyZTZlOGNhZGZkNjRmMWMyNGU0OTNkMTNlODYwZCBsZWdhY3ktdHJ1bmsKKzg2MDggODU0MmI4OTAzOTg5OTVmOWMwMzI5YWMyNzhiNzE4MjcwOTE0NGE0YyBsZWdhY3ktdHJ1bmsKKzg2MDkgOTQ2MDViMDAyNmU3ZjZiZjM3NzJhN2MwNTFlOGE2MjY2NjliMzM2NSBsZWdhY3ktdHJ1bmsKKzg2MTAgYjRhMGJlNWM0MmJmNzU5YjVjMmYwZjI4OWIyMTgxYjk0M2Y3OGUzYiBsZWdhY3ktdHJ1bmsKKzg2MTEgNTUyODNmNjgxYTFjMjEwMWQxOWU3ZjM3MGUxY2YzOTY5NjEyY2ZiYSBsZWdhY3ktdHJ1bmsKKzg2MTIgMzJmNjU3NDE3NDNiZDdhYzZiZDE4ODM2Njg2MmEzZmFmMGQ0YjAxYiBsZWdhY3ktdHJ1bmsKKzg2MTMgNTcwNDVmNTFkZDEyYjA0ZDI1ODY1NTdmOTI4YTIyZjEyYzBkYjQ2MiBsZWdhY3ktdHJ1bmsKKzg2MTQgNDBhYmYyM2UxNjhiZmMzYmFjZDFkNTkzYmY2ZjYxYWFkYjM1MzI5YyBsZWdhY3ktdHJ1bmsKKzg2MTUgZjgwZTc2M2MxNzE3ZGU3OTExMDgyZTI1MDgxYjUyNDkzMTMzZTEwZSBsZWdhY3ktdHJ1bmsKKzg2MTYgYTI4N2M1MDE0ZTY2YTgxODhiYWUyOTEwMWUyNmNhMWY2YmU4MDFmZCBsZWdhY3ktdHJ1bmsKKzg2MTcgM2M5NTEyNDAxZjZkNmI3NmY5YjEwOWIzZTZjY2FmYTJhYzdhZDQzMiBsZWdhY3ktdHJ1bmsKKzg2MTggOWY2MTZhNDkyMTk2NjE5MTAwNzlmNWNmMzNkMjQ4MmM1NmY0NWRmOCBsZWdhY3ktdHJ1bmsKKzg2MTkgMTQ0ZGI2MzViNDlkMzNlOTliNmZkMWU1YjczNzc0NWNkMTc1N2FlMiBsZWdhY3ktdHJ1bmsKKzg2MjAgYzIzMzRkOTdjZTE0Y2E0MTY5NWU3YTk5MzZiNjY3MGYwNDU3ZTgwZiBsZWdhY3ktdHJ1bmsKKzg2MjEgMTQxODIwMjQwMTExMDlkY2U1ZTM1N2I0ODg5YWY1MTM2MTY5OGNiNSBsZWdhY3ktdHJ1bmsKKzg2MjIgMzQxZmNiN2JhZDkwM2JhMjkwZThiMmJhMDllZjQ3YTE2YzQ1YWY4YyBsZWdhY3ktdHJ1bmsKKzg2MjMgYTJhMWRmMGNhODA4ZjYyMzM0OTIzMjJhMzc3MTUzYjhlN2FhYzM1YyBsZWdhY3ktdHJ1bmsKKzg2MjQgYjc2YTQ0MTYzZTBmNjAzYjZkYzRjOGFlZWUyYTZhY2VjMzk4MThjMSBsZWdhY3ktdHJ1bmsKKzg2MjUgNDU4NGYwODkzMGFjOTFiNDAzNzk3NDk4YzNmZTVjYTk4ZDRmYTE5YSBsZWdhY3ktdHJ1bmsKKzg2MjYgYmIwMTExMzA4N2ViYzUwYTM3MTU4YzA3Y2U2YTk5YjM4NWRhZTRmZSBsZWdhY3ktdHJ1bmsKKzg2MjcgOWE3OGNlMWRiOGY2OGVmMTk4OWE0YzBlNGI3NGEwN2FkOTc4ZTRiZSBsZWdhY3ktdHJ1bmsKKzg2MjggOWZkNjBlNjQwYWU1ZDA5NzcxMGFlMzQxZjVjNGIzOTVmNmRhMTczYSBsZWdhY3ktdHJ1bmsKKzg2MjkgZDdjYmQyNjUxZTU1OWJiZGZiNzJmOTg0ZjhhNjA2YWM1YmRkMGI4ZiBsZWdhY3ktdHJ1bmsKKzg2MzAgMTdhMjZmOTg2MDA3ODg0MjMxNzc1YjgxOWFkNGUzM2IxNzMxOGQxOCBsZWdhY3ktdHJ1bmsKKzg2MzEgMmVlOTgxMWM5MmZkNGIyZWNlYTY2MjBjOWVhZjcyN2IzNzdiYjhjNiBsZWdhY3ktdHJ1bmsKKzg2MzIgNDc4NjcwMDZmMDc2YWU4NTU3NmFkMmQ4MzI5Y2IwNjgwOWY2N2JjYSBsZWdhY3ktdHJ1bmsKKzg2MzMgMWEyYmZhOWEwM2Y3NDJmODY0OThkOWVjMjA3YWFjYTJhMGM2NDU2ZiBsZWdhY3ktdHJ1bmsKKzg2MzQgNjQ3ZTYwZmIzYmFjM2Y3YzA0YjMxMGY2NDMwYWIzNzAzNjcwZmEyMSBsZWdhY3ktdHJ1bmsKKzg2MzUgMmUwYWE4ZDgxMzk2NGJiNmJhZGQ5YTgwZDMxM2FjOTU0MGVmNDFjYSBsZWdhY3ktdHJ1bmsKKzg2MzYgMmIwM2ExZGZkYmQzZmU2Yzg0NTMxZjBlMWY0OThhOTc1MjRjYjE0NSBsZWdhY3ktdHJ1bmsKKzg2MzcgNzk1OTI3NjFiMzMxYTA2M2YzYTU4YWMyNWRhNWFmZjU2MzY3ZWI4MSBsZWdhY3ktdHJ1bmsKKzg2MzggZDNkNWEyNWYzYjcwNWNhMjU2M2UxYWE4ZTFjNzhjNGJiMjEzNDlkYyBsZWdhY3ktdHJ1bmsKKzg2MzkgOTE4M2EzYzZiODVmY2EzNjJiY2Q4NWJhNGZjZTUzYWI1NGZjNjA2NCBsZWdhY3ktdHJ1bmsKKzg2NDAgMTE5ZDE4NGJiNWVkODkwZTgxNzcyNDdmYzRlZjZhNjk5NmI4NjliOSBsZWdhY3ktdHJ1bmsKKzg2NDEgM2VjNWNhOGFmOTFkMWM2MzU4ZTVhZWUzNTZmZGIzOGY1MGZlZjY2NyBsZWdhY3ktdHJ1bmsKKzg2NDIgMjlkZGYxMDQ5ODQyNzRhZmYyYjU5YzMyYzhlNGQ0MjA1OWFkNTVmNyBsZWdhY3ktdHJ1bmsKKzg2NDMgYTE4ZTFjZWJkMjlmYzhjZmY0ODNkMDA1N2ZmZWQwODg1ODkwNWIzNyBsZWdhY3ktdHJ1bmsKKzg2NDQgOWU0MzI0NjhmNzU2MDVkNmIwNDQ1ZmJhYTkyZmUwZTdhY2FjNjc5MCBsZWdhY3ktdHJ1bmsKKzg2NDUgMjUxNGU5ZmUyOWY2ZDczOWEzZjE0ZjU4Yjg0N2JiY2NiODJkZDdiMiBsZWdhY3ktdHJ1bmsKKzg2NDYgNDMzZDNlMWMwMmY3ZDA2OWZhY2YzMzQwMzdiY2IzOTVjOGQ3OTJkNyBsZWdhY3ktdHJ1bmsKKzg2NDcgM2U2ZDY4OGIwZDJhMjcyYmYyNTFhMmNhMjNhMmM2M2ZlNTVlZTAyMyBsZWdhY3ktdHJ1bmsKKzg2NDggOWEzZTZmMGQ2YjVhOTc3NTI0MGYzYzJjYWI1MGVjMjE4YmEwOTI1OSBsZWdhY3ktdHJ1bmsKKzg2NDkgMmY2MDgzNGVlYWY1ZDYzYTk2Y2E5Yzg0MGQ3N2NiNzE5OWRhZTBkMCBsZWdhY3ktdHJ1bmsKKzg2NTAgMjUzZTExYjYxMTA2ZDhlZGVkZDNmYjE1OWFkODQ0YzA2NjUxYTc0NyBsZWdhY3ktdHJ1bmsKKzg2NTEgNzcxMzVkYTlmMzZjZGNlYWEwYzhiZDljYmQyNWEzZWUxOWE2Y2Q5ZiBsZWdhY3ktdHJ1bmsKKzg2NTIgMTlmZTg4MGNhOTE5ZmE3NTU1M2Q2Yzc3NzI1MzczMWE2ZWM5YWJiZCBsZWdhY3ktdHJ1bmsKKzg2NTMgMThmODI0ZTViOWVhZTliYjUxNjlhYWU1YTQ1Yjc5MDE2ODJmMTE3YiBsZWdhY3ktdHJ1bmsKKzg2NTQgYWFjZTUwMmI4ZThiMTM0NDliZmFjMDliYjQ4NTY0MDc2NjQ1NDg4YSBsZWdhY3ktdHJ1bmsKKzg2NTUgYjU1YjIxN2YyZTBkNzljM2YzODQyNmQ2YjM0MWM2ZGU0ZDZjODc4ZCBsZWdhY3ktdHJ1bmsKKzg2NTYgNmNiNjZmMGNhOGQ1NDA4ZjRhYTg4ZmNjMmZiNjU0OTg4ZTBiNWU1YSBsZWdhY3ktdHJ1bmsKKzg2NTcgMmZmNzZlOWJjODVkN2ZkMjQ4ODg4MTc1ZTExYjZmMWI1OGFmOWUyYyBsZWdhY3ktdHJ1bmsKKzg2NTggZWY5YTI5NTNmOTMzNDM5ZWVhNDRkMTMzMWExMDdjMDdmNTQ3NjM5NyBsZWdhY3ktdHJ1bmsKKzg2NTkgNDNiOGM0YTY5NmQxMTRjZDBkMWMzZTViMTk5NzA4OWJiNzMyNTA4NCBsZWdhY3ktdHJ1bmsKKzg2NjAgNjRlMTk0YzVmODU0ZDA3NTI0YjAzYzY0YWMwNzIxNjYyZGQ0N2VkYSBsZWdhY3ktdHJ1bmsKKzg2NjEgMTEyNDlkNDM5ODQwNDljMDYyMTIyZTQwNzQwOGY2ZTBlMTY3OTZjOCBsZWdhY3ktdHJ1bmsKKzg2NjIgMzJhYWNkNzUzZjM0M2FhMzhiZDg4ZWFhZjYzOWM3MDgzODcwNTdlYiBsZWdhY3ktdHJ1bmsKKzg2NjMgMmU3NTVkMWZmNjYxZjE1MGE4ODFkZTJjODI1ZTIxMGZjMDNmYmZhOSBsZWdhY3ktdHJ1bmsKKzg2NjQgM2VhYmEyNTFhMzI5OThhODUyYWRhYjBmNDlmNGU1MGUyNDhkYWM4NSBsZWdhY3ktdHJ1bmsKKzg2NjUgYjdjMmZmMzA3MDM5OWEyYTA5MjRjNmJiMWFmZTljYTlhNDEzOTkwZCBsZWdhY3ktdHJ1bmsKKzg2NjYgZTQ3MTAxMTliNDFjZDYxMjQ5MDRjZDFlZGQ5NzcxNGJhMTIyNDdjZCBsZWdhY3ktdHJ1bmsKKzg2NjcgYjU3NTdlODdlYjMyZWEyODhiMDM0MjVmZDkyMTY0MjdiMTQwYjJkMyBsZWdhY3ktdHJ1bmsKKzg2NjggM2E2YjdhMzc3ZGMzYTk2M2YzOWI0M2U0YzQ1MzMzZDYxMWZiOTViMSBsZWdhY3ktdHJ1bmsKKzg2NjkgMTJiOGE0MzU5OWQzMzczNDgxY2RmY2IzYTRjNjFlZTBlNDNkZjM3NSBsZWdhY3ktdHJ1bmsKKzg2NzAgYmY3ZDc3MDVkY2U1ZGNhYzI2ZTNjMDA2NWM0NzIxY2U4ZjI1ZGUzZCBsZWdhY3ktdHJ1bmsKKzg2NzEgY2ZmMTA1YTNhMzg0YTdlNzJmNDk3ZDYzNzJiY2RjOTljNWY3ZWY0MiBsZWdhY3ktdHJ1bmsKKzg2NzIgZDk3OTgwZTdjMDVmMzA1ZDRlOGRlMzA0MmI0ODdkYWExNjQ4NTk3NSBsZWdhY3ktdHJ1bmsKKzg2NzMgYWIwNDVlZDExYmM5Njc4OTgwZDk4MjJmY2RmZTQyZGEyNzYzNzU5MCBsZWdhY3ktdHJ1bmsKKzg2NzQgN2RhN2JhNWM2NTI1ODRmN2YxNDcxODAwNjlhYzEzNGU3MGEzNzYxMCBsZWdhY3ktdHJ1bmsKKzg2NzUgYzQzY2E4ZGQwMDgxODc2OWM3OThiMWM2OWJiY2ViMTE5MTcxOThmMiBsZWdhY3ktdHJ1bmsKKzg2NzYgZmU4OTcwOWMyZWFjMGJmNzdlMDFlMDdmZTA1ODAyOWYxMDRiYmU1YSBsZWdhY3ktdHJ1bmsKKzg2NzcgYzU3Y2VkZTNjN2MwMDIyZmYxYjBlZGU2ZDcxNjM5ZWFkYzc0YmNmMCBsZWdhY3ktdHJ1bmsKKzg2NzggZGM5NzRiM2E2Y2Y0ZjcyMmY2YzhlNzAxOTYzMzhlNWYyZTYwZGM2YiBsZWdhY3ktdHJ1bmsKKzg2NzkgYmEyZjExYTgyZjI3N2M1ZmQ1ZGI5ZjYwYmFhOTZhNzkyYzNiYmIxOSBsZWdhY3ktdHJ1bmsKKzg2ODAgZjU3YWU2OGFhM2FlNTI2ZWQ2NzhkZmM0MGY5ZDE5NDBiYWIxMjM4YSBsZWdhY3ktdHJ1bmsKKzg2ODEgMjRkNjY4NDU0Y2IwMDAyMzE5Y2EwMWNkNTkyMGI2MDQ5NGRlYmUxMSBsZWdhY3ktdHJ1bmsKKzg2ODIgZTU1NGI5ZjRhM2FhOTI5ZTJiZDcxYzk2ZDkyMjgxYmY2YjFlOTcxOCBsZWdhY3ktdHJ1bmsKKzg2ODMgNzdmNWI2Y2JlYTY2MjQwODhiNzVkYWUxMDY3YTQ2OTk0OWU2YmJkYyBsZWdhY3ktdHJ1bmsKKzg2ODQgOWMyZWU2YmJkYmIzMjM3ZjYxNmUyMjdkYjlmNTkzZWExOTVlYjMxNCBsZWdhY3ktdHJ1bmsKKzg2ODUgN2I0NWQ5MmUzODYxZTM3NjBkODg4ZWIyNjk3YjBmMzdmNjk1ZWEwYiBsZWdhY3ktdHJ1bmsKKzg2ODYgZmUzZmFjMWEzZTUxNzg0NmJiYjdhOWUzZTRjZjg4NzBiODEwYTBlYiBsZWdhY3ktdHJ1bmsKKzg2ODcgNmEwYmY2YjI2Mzk2NGZhYmE3MTE0NTVmOTc4MjE3MjNkMjQxZWE3NiBsZWdhY3ktdHJ1bmsKKzg2ODggYTEyZWUyN2NhZDkzMjJiMjEzM2MxY2IzYWJkMjBiOTBmMjIwNjNmNCBsZWdhY3ktdHJ1bmsKKzg2ODkgNTA4OGVjNWExMmE2YjJlMzA1MDM0MDU3OGQ0YjE1Nzc1OTIzMzE4MCBsZWdhY3ktdHJ1bmsKKzg2OTAgMzZkZmM4Y2MxZDAxM2EzMzE4NzI0Yjc2YjZjOGE4MzhiNzQwNTYzNCBsZWdhY3ktdHJ1bmsKKzg2OTEgNGUxZjg5YTEyZjk5MjkzMzcxNDY3MGMwMDFlMWQ3MDkzYWU0ZmNhYiBsZWdhY3ktdHJ1bmsKKzg2OTIgZWI3YTAxYjg2ZjkzMTZiNzdlOWU2MmE3YzEwYzNkYWQzZmMyYzFhNSBsZWdhY3ktdHJ1bmsKKzg2OTMgMzNjZWYwMTk2MWE3MTEwYjAyNzJkY2ZkMDFmOTEwNjk4ZWYyNjkzYyBsZWdhY3ktdHJ1bmsKKzg2OTQgYjcwMWRmODVjMDQ3NDc2NWM2NTYwODU2NjMyZmJkZWIwZTg2MzQwYyBsZWdhY3ktdHJ1bmsKKzg2OTUgOGI1OWMwMDRhNDk5YzEyNjFlMGQ5NzRhZTE3ZTIxZGI1NDA1OGJlOCBsZWdhY3ktdHJ1bmsKKzg2OTYgNDE4ZDM4NWE5ZTQyNGM0ZmM2Yjc1MzMzMjBhN2UxNTU0MmVmM2NjMCBsZWdhY3ktdHJ1bmsKKzg2OTcgZWQ0OTI0ZjNiMmE1NjFjMGM3NTQ3YTJjNjI0NmRhMDlmOGNhN2QyYiBsZWdhY3ktdHJ1bmsKKzg2OTggZWU1YmQwODUxN2U4NjJhNDczNjU2NzczZGFiYTBiZWZhMDJkOGY2NCBsZWdhY3ktdHJ1bmsKKzg2OTkgNzhhNGE1NjMyYTkxYzU1OWE3OTQzYjYwYTI2YTExNGQ4YzcyM2MyZCBsZWdhY3ktdHJ1bmsKKzg3MDAgODBiZGJjNDliNGM0MGI1OTI4NzJjNTFjZDY0OTg0OGUwZTkyYjljYiBsZWdhY3ktdHJ1bmsKKzg3MDEgODU2ZDg3ZDI4MmFjNmJhM2EyOGFlMDNiYTI0Mzg0YzM3Yjg5ZGI1MyBsZWdhY3ktdHJ1bmsKKzg3MDIgYTg1Y2RmMGJlZmM1Y2JmZDQyYzZhNzgwYWVkNzdhNGNmMDRhOTMzMyBsZWdhY3ktdHJ1bmsKKzg3MDMgOTk4NTUyMTliMzdmNjgwNzAyZDYxNWNiZTY3ZDg4ZjViNTY3YjNlMyBsZWdhY3ktdHJ1bmsKKzg3MDQgNjEzZjk3NmE1N2I0OTJkODZlZTZmNGFjZTc2YWRlMWVjNGYxNjZjNyBsZWdhY3ktdHJ1bmsKKzg3MDUgYjUzMzQ3YzgyNjBlZjE1MjZkYzAzOTUwMDRkN2RmYWZiMDM3N2NmOCBsZWdhY3ktdHJ1bmsKKzg3MDYgNGRhNDgwODcwOWM5NTk3NzU3ZTVlNTNlNDViNWYxMTUzNDg1ODYzMCBsZWdhY3ktdHJ1bmsKKzg3MDcgMGVmMGUwNTFiMWY4ZDIyYzEzZTJkNDVhYmNkZjUyMjMwODM2ZTIxNyBsZWdhY3ktdHJ1bmsKKzg3MDggYzg5MzkwZTU2YjkxNDJlYzg0OWNjZDc4YTNlZWU4ZDk2MGVmMmJlNCBsZWdhY3ktdHJ1bmsKKzg3MDkgZmM1ZTFlMDA0OTk0MGFlNzQwOGQzM2ZhZDk2M2UzY2Q0NTEzOTdhYyBsZWdhY3ktdHJ1bmsKKzg3MTAgZWZjZWQ4MzI2ZTNmMjUwYTZhNjUzOWNmNzI1NWIwM2M5OTNmODFlOCBsZWdhY3ktdHJ1bmsKKzg3MTEgNGU1ZmI4ZDlhY2IxYzYzYzk1NzAyMDYzOTE5MjViMzJmMWE3MzRhYiBsZWdhY3ktdHJ1bmsKKzg3MTIgMjQ4NDU5NjgzMjNmOTEwMmQ0MDJiMzYyYWNhYTZlNjFiNGFmNjJiMiBsZWdhY3ktdHJ1bmsKKzg3MTMgNmRmZWMzMjBmOTEwOWUxNGEyMzY3OGQ3YTc1NjYwZWEyNTY3M2YzNCBsZWdhY3ktdHJ1bmsKKzg3MTQgMDNiODc5M2Y3NmMyY2JjZWQ1ODYzMDM1MzA5YTI4NTQwMDE3MjZhZCBsZWdhY3ktdHJ1bmsKKzg3MTUgNDQ2MmQzYzYwMGJmOTcyYWM2YWY2MjFiMzcxNjE1NGNlMTA2MGU2OCBsZWdhY3ktdHJ1bmsKKzg3MTYgZjYwODc2ODM1YTc1OWMyMWVlNDQ3YWEwZjRiZWExYzA2ODJlOTc2OSBsZWdhY3ktdHJ1bmsKKzg3MTcgM2I1YmJjYWY5MTdmODdjN2VjMWI3NWNmZjgwNjFmY2U4NThhOTc3OSBsZWdhY3ktdHJ1bmsKKzg3MTggYWI2NDM0NGU4N2RiZGI1YjI3Njk0NmU0NDgyYjliNjhiN2VlYjExMiBsZWdhY3ktdHJ1bmsKKzg3MTkgMjFhMjg0OTBiZDk2MWNlOGMxZGY4Y2Q3ZGUxMDNjNDk3ZjJkMWFmYSBsZWdhY3ktdHJ1bmsKKzg3MjAgNDI3OWY0ZWIyMTBhMjE0ZjBmZjBmNDk3MjcyZDc3NDRmNGRjNzM1NyBsZWdhY3ktdHJ1bmsKKzg3MjEgNWFiMjFkMWI2MWQ4NmJmMzNiMDJlMzM5M2RhYjYzM2U0ZWYwMjJjYSBsZWdhY3ktdHJ1bmsKKzg3MjIgMTViY2VjM2QzMjU5OWU2NDk4ZDFhMTNlNzZkODM4OWQ3MWJiNjg5MyBsZWdhY3ktdHJ1bmsKKzg3MjMgNGNmMjBmYTg4M2E5MmUxZTc0YTkxNzg1ZmFmMDgzNzc2Y2IyY2E1MyBsZWdhY3ktdHJ1bmsKKzg3MjQgMTQ5NjQ0NGU4YzhiODMwNDdkMjRhYWVmZTJlYWNiNTYwMzM5NWRiNCBsZWdhY3ktdHJ1bmsKKzg3MjUgYWYxMTRlZDllNjFkZWQ2MGE3YmU5N2Q5NGU5MzIwOGY1MWVhNjUyYyBsZWdhY3ktdHJ1bmsKKzg3MjYgZjEwYWFkNzNlMDI5MzExMDI1N2E0ZjMwYzY0OTQyOTVmMGIyNjU2YSBsZWdhY3ktdHJ1bmsKKzg3MjcgM2ZhNGI3YWUwZTZiYzFmMGFhYWU0MDFmMDVjYzliYzgwZjZmY2EwYSBsZWdhY3ktdHJ1bmsKKzg3MjggM2UwYWE3MTYyYzg4MWY2M2Q3ZmJlZmI4NTdmMWM2ZGNiNmVmZjU3MCBsZWdhY3ktdHJ1bmsKKzg3MjkgNjQyOWRiNWQwYWY3MmQwMDkxZWIwOTFlNDQ1MDlmYTY3YzIwMzEzNCBsZWdhY3ktdHJ1bmsKKzg3MzAgNTIyNGVkODc3YmFlN2Q1NmI0ZGU4NDU2YjIzOTc1N2Y0YjNmYmFjMSBsZWdhY3ktdHJ1bmsKKzg3MzEgNGM3NmVlMDFkZjA4ZGIzYzRjYTQxZDAwMjUzZDI2Njc3ZDkyNjc5NyBsZWdhY3ktdHJ1bmsKKzg3MzIgZjQ0NmUwOGFjMzAyN2I4NmYyN2IzYWQ2NmE3NzRiYzk4NWRjNzlmZiBsZWdhY3ktdHJ1bmsKKzg3MzMgY2UyMDkyNzE0NDg0MzY5ZTg4Y2FlMjYyYjI2NTQ0ODUyZTAyYTlhMSBsZWdhY3ktdHJ1bmsKKzg3MzQgZGRkMjU1MTBmM2ZiNmYzMWJmZmYxYWY0ODFlOTU3NTM2NzU2MjFlNCBsZWdhY3ktdHJ1bmsKKzg3MzUgN2MxZWE4NWUyNjg0MmFiZDQyZGJlYWUyNjMyYzA5ZWIwZDU5ZjgzMCBsZWdhY3ktdHJ1bmsKKzg3MzYgNGZiY2M0Mjg5MDEyNmMyYjZjOTljYTY0OWUzOTdjMzZhZDIzNmM3MSBsZWdhY3ktdHJ1bmsKKzg3MzcgYzBjZDIzZTcwOGI1ODZlZDI4OGQyZWQzMWYyZTYwYzBmYzk2MmM0ZCBsZWdhY3ktdHJ1bmsKKzg3MzggZDk3OTQxZWM1ZWVkMDExNTRhYTdhNmIzMTY5NGY2NDA2ZDlkZmY0ZCBsZWdhY3ktdHJ1bmsKKzg3MzkgNTA3NGZhYjI5MjVkOGFjMGE4NTNhYTVjODE4NmRiYjdhOWE0MTJmYiBsZWdhY3ktdHJ1bmsKKzg3NDAgYWE2ZTA1MDRlMGYyYWI2ODczNTBiYzBhNjc5OGIxZjFjNDkxNTA4MCBsZWdhY3ktdHJ1bmsKKzg3NDEgM2RmMjJlZGNlY2FkODY5NzEyZDk1Y2E2YzcyNjhiMzNkY2Y3N2EwMyBsZWdhY3ktdHJ1bmsKKzg3NDIgOGE1MDI0OWFhNzJmMzNkMmE5MmE2NmRlOThiMDBlMGZkM2Y2NGM5ZSBsZWdhY3ktdHJ1bmsKKzg3NDMgOGMxZTAyMDg5Mzc5OGUwZjNmOTNhMWUyNzI3MDdmMzkzMmRhMDA1ZiBsZWdhY3ktdHJ1bmsKKzg3NDQgZWI4ZDFhMDk4YjlkZWNiMTQ2Y2YxZjI2MGE4Nzk4MTk5NWNhZjMxZSBsZWdhY3ktdHJ1bmsKKzg3NDUgMDIwYTNjOGFiMDcwYmEzNjY0NWUwMDljODc4Y2UyYWMwN2ZjMTUwNCBsZWdhY3ktdHJ1bmsKKzg3NDYgMTNjNTMyOWQyYzJlOTEyZmFhMWNmYjNmZTA5ZjY5MzgxYzU4YTljMCBsZWdhY3ktdHJ1bmsKKzg3NDcgZGVhOGRjNGI4ZTIyNWRmYmFkNTFkODAyNDFiMWM5MjRkYzhiMTliMSBsZWdhY3ktdHJ1bmsKKzg3NDggZTk5MjYyNDFmYWE0MDMyZmJmMmQxMGUyMTRhNGVhZDVjMDliZjM1OCBsZWdhY3ktdHJ1bmsKKzg3NDkgNzc1ODk5NTgzZGE2OWQxMDRhMzYxOGE5Y2ZjNWU4YWViZDcyYzY4NSBsZWdhY3ktdHJ1bmsKKzg3NTAgNDMzMzc3NWI1NWZkZGVmNmFlNWI0YzZiNDRlMDNmNzk4MzZlOWYwZiBsZWdhY3ktdHJ1bmsKKzg3NTEgN2EzODA4ZWRjNTM5MDQzNTEwN2ExMWViOWU0OWM1YmQ1ZGJmZmI5MiBsZWdhY3ktdHJ1bmsKKzg3NTIgZjlmYmRlNzVjNTM2NWE1ZjU4MDg5NjcwNDgxNGIxYjQ0ZGQ5MjQ4ZiBsZWdhY3ktdHJ1bmsKKzg3NTMgZWQ3NGNjNTljOGEyYzUwNGQyOTM5ZWQ0ZjY5ZmJjMGE2NGM3ZDNmZSBsZWdhY3ktdHJ1bmsKKzg3NTQgYmI1NDcyZmI0ODg1Yjk1MDJjYTJjNzNiZGQ3Y2Y5YTcxZDJmMGNjMCBsZWdhY3ktdHJ1bmsKKzg3NTUgMjk4NDQxNmExYjJiMjM4YzZmYzVmY2JiYTgwYzRjNDZjYzIwZWEwYiBsZWdhY3ktdHJ1bmsKKzg3NTYgMDc4NjAwNDlmMWM0NTE1ZmY5MjVjY2E1YzkxNDFmYTkzMTg4ZDQ0MSBsZWdhY3ktdHJ1bmsKKzg3NTcgYTI2NmU5NGNhNWUxY2Q5NDI4M2VhZDY3MmYxMWUxMzNjNGZlYzU2YyBsZWdhY3ktdHJ1bmsKKzg3NTggMzNlZjdiYTZlNzRiYTUxMzZiZDhiYzA4ZDBlYWVhNjM0ZmE2NWE0NiBsZWdhY3ktdHJ1bmsKKzg3NTkgZjY4MzllNTMyYmUyYjRlYTUxMjUyMTI4MTQwZGI4Mzg2YWM3MjU1ZSBsZWdhY3ktdHJ1bmsKKzg3NjAgZWJkYzQ4ZDA2Y2Y4NWVkMDI5NWRhNjJjN2U3MzAyZWFkY2ZlYWYwZSBsZWdhY3ktdHJ1bmsKKzg3NjEgZGFhNjJjMjI2NGI1MjU5OTU2OTcxZWNlODE1MDVjNGYwNjI2ZGExNiBsZWdhY3ktdHJ1bmsKKzg3NjIgMzM3MDU0ZTlkNGZhNDM3NTY1YzRmODE3MjUyMzRmMjVlZGQ1YzRkZiBsZWdhY3ktdHJ1bmsKKzg3NjMgODJjZDJiYWE0MTM2NDZmNmNjODBkNWJhNWI5ZTgwZTg3YTI5YjUyOCBsZWdhY3ktdHJ1bmsKKzg3NjQgNDg5ZGIzNjJjZDQ4ZDA4MzNhOGJhODkwMjlhNzRhODNjOWMxNDAzNSBsZWdhY3ktdHJ1bmsKKzg3NjUgNWZhNGIxMDMzYjA2ZmMxOTUxZWI1OGNmMDhhNTM2ZjUyYmJjYmI2NCBsZWdhY3ktdHJ1bmsKKzg3NjYgNjU0NDYwNDRmYjhmNzEyOWJkNmViNDBmYWE4MmY2NWY2ZjVkN2Q1ZiBsZWdhY3ktdHJ1bmsKKzg3NjcgNDdmYTNkZGZiMDkwYzk1YmVmY2IyNzYwM2M2MmY4MjI0MGQxOTYyMiBsZWdhY3ktdHJ1bmsKKzg3NjggM2Q2MTQ3NGExNTUwZDg2NTQ1NzMxOWM5ODA3ZmIxZDUzZjA2ZGI1NCBsZWdhY3ktdHJ1bmsKKzg3NjkgOGUzMWYxYzA3ZGM1YjJlZjAxMTA0ZWE5YWJiMDM2NjMyOWQ4Yzg0ZiBsZWdhY3ktdHJ1bmsKKzg3NzAgNmMwYTI2NThhMTU2MTA4YTA0ZTllMGIzMmJiNWM5Zjk3ZDE4MTM3OCBsZWdhY3ktdHJ1bmsKKzg3NzEgYTg0ZWYwYTcxMWJhMDkyYjcwODI3ZjAxM2ExMDY3NTA2YzUwMjU5MiBsZWdhY3ktdHJ1bmsKKzg3NzIgZWFiZGU4NmQ5N2YwNjk3ZjI1OGM5YjdiYzhjZjI0Y2U5ZWIzYjkzYiBsZWdhY3ktdHJ1bmsKKzg3NzMgYzBkNDNkNmY1MjQwZGU3ZTk5MDY2ZTgxZDk2NTI3YmViOWYwYmIyYiBsZWdhY3ktdHJ1bmsKKzg3NzQgNTA5NDc0Yjg4YjAxYzQxN2MzMzhjMzg4ZGExNDhiNzZiZjk0M2M4YyBsZWdhY3ktdHJ1bmsKKzg3NzUgZWJkMDk5ODg5NzIxYzQ4MDlhZjBmZTU4ZWQ4OGUwOGZjMzU4ZTMxZCBsZWdhY3ktdHJ1bmsKKzg3NzYgMDA1NGEzODQwYTc1MmE1MzcwM2QyYzFkYTE0MjMyM2FhNmQyZjMxMiBsZWdhY3ktdHJ1bmsKKzg3NzcgNDkxMDViOWU5OTQ3NDQ3ODgzMGI1Nzk4NzMwMmQ1NmViOWFjYWMzMiBsZWdhY3ktdHJ1bmsKKzg3NzggYTQzMzUyZjBlMWVlNmJhYWFmYmE4NzdiMjY5MGZkMjM4NjY0YWRkYyBsZWdhY3ktdHJ1bmsKKzg3NzkgYTYyZDZkMDYzYzBmMDg5ODNhMjZlNzExNzQ2ZDNmM2Y0MWIwMWUwZCBsZWdhY3ktdHJ1bmsKKzg3ODAgY2YwZWZmYzNmNTg1Yzc4OGM4Y2EwNzM0NTY3YmEwMjExYjk3NzFkNiBsZWdhY3ktdHJ1bmsKKzg3ODEgYjM3OGEwODg2NjIwMTUxZWRjMzg4OTdmN2U3YmM0ZDIzMTQ4ZjkzMyBsZWdhY3ktdHJ1bmsKKzg3ODIgNmUxZmE3NmU3OTQwN2QyNDNhYmZkMDc5YjM3Y2E3NjgzOTJmYjJlYyBsZWdhY3ktdHJ1bmsKKzg3ODMgNTlhOWZiZjU5MTI4NjNmYWEwZDE3ODQ5MDcxZGYyNzg4ZmU2YWY5NCBsZWdhY3ktdHJ1bmsKKzg3ODQgZTFlYTRhZDQ2MWY5MjNiOTk5OWUwZTgyODllMzkwOGViZTJkZWYwNyBsZWdhY3ktdHJ1bmsKKzg3ODUgZWE2ZTU4NzEzNmI2ZTNiYmQwMDgxYTg4NGNlMTkyYjY4ZGUwNjY3ZCBsZWdhY3ktdHJ1bmsKKzg3ODYgOTA0YTRkNzgzYTMzNzJiM2YyMWZkNTBjNGViNTJhOTY1MTg4MWQxZCBsZWdhY3ktdHJ1bmsKKzg3ODcgZWI1MTI4ZThhOGU4ZTNkNzI5NmU4NzYxNmJiZjVkMmRlNjk2NGJkYSBsZWdhY3ktdHJ1bmsKKzg3ODggMTNmYmQ5OGQ4MWNjMDYxYzczOTViMWI3MWU4YjM2ZDRjZWYyZjg3ZiBsZWdhY3ktdHJ1bmsKKzg3ODkgN2JhNzljOTQ5YjNhNzI3OGZhZmJlMGJlOGVlMjE4YmI5ZTcxODY3YiBsZWdhY3ktdHJ1bmsKKzg3OTAgYjk0NThkYzk5ZDUwYTBmMTM5NDA4NmY4MzlhOGEwNmYyNzE5YmU5YiBsZWdhY3ktdHJ1bmsKKzg3OTEgNGI3ODVlNTllODMxMjIwMDU1MWViN2M4MzU0OGRiZWFlOTJmMmU4MSBsZWdhY3ktdHJ1bmsKKzg3OTIgZDI1NDg5YzVhMjJmNGZmYWZkYjA3YWNmOGRlNGMxN2RhYTlkNDc0MyBsZWdhY3ktdHJ1bmsKKzg3OTMgYzIzNTk2NjViZTgwNzMwY2UxMmE3ZWY2ZDMyODczZTM3OWY0MTlmNyBsZWdhY3ktdHJ1bmsKKzg3OTQgNzFiNDBjYzRjYzAzNzJmM2NkZWJlMjk5NGZiMGJkZTE1MGY4ODg3ZCBsZWdhY3ktdHJ1bmsKKzg3OTUgY2RjNWE0MGZjZjk3NGU5NDJlZTZmNzk5NDFmMjQ2MjA1YWI1NDAzMCBsZWdhY3ktdHJ1bmsKKzg3OTYgYjdmMGI5OGY1MzI1MTdmNzUzODRhNzcyYWM2NTdlZjc5Y2EwYTlkOCBsZWdhY3ktdHJ1bmsKKzg3OTcgYTc1Y2E3NGRlZWNhY2M4OGFiOTNlM2QwMGFmOTlhYTNiMjNiNzkyNSBsZWdhY3ktdHJ1bmsKKzg3OTggOTEzY2QxZjM3M2JlNDdiNmU5MzA1ZmVjYmUyZDYzM2RjY2Q1ODM3ZCBsZWdhY3ktdHJ1bmsKKzg3OTkgMDVkOTQzYzQ1OTdjMmRjM2VlZjg4ZDhlZWQ0NTE1ODM1ODUyNDVjZCBsZWdhY3ktdHJ1bmsKKzg4MDAgM2Y4ZDdmNzRmMWJjNTQ5YTM0NmJjMmQwZGRiYWI1NjViYTk4N2IzMCBsZWdhY3ktdHJ1bmsKKzg4MDEgMjBiNTY0N2EwNjdlYmZlZmZmNTg4YmI1OGI3MjczOWQwODZkYjYxNSBsZWdhY3ktdHJ1bmsKKzg4MDIgNWNkYzNjYTA1M2Q2ZTgxMGE1NjU1NTBmYzEyNDAyZDdhNGZiZjcwYiBsZWdhY3ktdHJ1bmsKKzg4MDMgYjAxODM5OTQwMjFiMzcyZmNmNTEzYTI4ODMxMDczODFhNGU4NzYzYyBsZWdhY3ktdHJ1bmsKKzg4MDQgNGI0Nzc1YjQ5YmZhYzQ0YjYxN2E2NGNmOTJmYTQwZTYxYWI2OGFmMyBsZWdhY3ktdHJ1bmsKKzg4MDUgZGZlYWY5NjVmNDhhZDMyZjBiYjBlOWU2YzUyMGFhOWYyNWM4MjE3NSBsZWdhY3ktdHJ1bmsKKzg4MDYgZmJkY2ExNzI4M2MyM2JmMDA0Y2VmZjI3OTk3MjMyMWMxNzVkODJkZiBsZWdhY3ktdHJ1bmsKKzg4MDcgMTcyYzdmZWJkNzU1N2E1MDBlMzY5NzcyYWZhZTJjMDUxM2UwMDAzYyBsZWdhY3ktdHJ1bmsKKzg4MDggOTc5YzcxMjM4ZTViYjJjM2MyNDhhOWZmMDlhYzI4YTUyNWY0MTNmYSBsZWdhY3ktdHJ1bmsKKzg4MDkgMmY0YTkyNWU4YjRiMjQxNDNkMzI4YzIwNjNiYmUzNDFmOGRmZjRkOCBsZWdhY3ktdHJ1bmsKKzg4MTAgZGQxMDI3NjZlYTUxMjFiY2IzMDMyMDNkODBlYzZlZWM4MzE4MDIyOSBsZWdhY3ktdHJ1bmsKKzg4MTEgZmMxYzBhMjdiYjk2MzhhNmUwZDE2MDU5OWMwN2ExYWFlNWRmOTRjZCBsZWdhY3ktdHJ1bmsKKzg4MTIgNTc1ZjZiOTEwZjg4YjQxNmE3NmUzYzMyMzAyNjNiNTBjYzE1OTI1OSBsZWdhY3ktdHJ1bmsKKzg4MTMgYTQyYjMxZmU5NzZmNTU0NDFhMjljZDQ1OWNkNTBiZWVhNTJmYmYyYyBsZWdhY3ktdHJ1bmsKKzg4MTQgOWU0Mjk1MThjYjIwMTc0NTBkZDJkZGFjNTIwZmEyYzQ5ZWQ5MTFhMSBsZWdhY3ktdHJ1bmsKKzg4MTUgNGIwNzZmYzViYTQwM2VhYWQ1ZDAwZjQ4OTgxMTY4NTczZDFjZTZkOCBsZWdhY3ktdHJ1bmsKKzg4MTYgNmY4ZWI0YTFmYTA3ZWI3OTkxODFkMmYwYzAxNDJlMzdiMjZhZWNkMyBsZWdhY3ktdHJ1bmsKKzg4MTcgNTkzZjU0MTI5NjYxNmEzOWM4ZDM5MGFkYzQyNDc3ODZjNWE4NmZhMSBsZWdhY3ktdHJ1bmsKKzg4MTggMWVkOTE0ZjhiZjBhMGZlYzhjOTlmMmVmYmEzZjg5MmRkNTdhMzE1ZCBsZWdhY3ktdHJ1bmsKKzg4MTkgZTllZDA2NGYzOWY1MDVjZjdiNTA5ZGY3NjI1M2IxNWQxZmYyYWQzZSBsZWdhY3ktdHJ1bmsKKzg4MjAgNjg5ZGU2MTNlYTFjY2EyNzE3NzliM2RmMGEyMmU3OGRjOGNmZmEyNiBsZWdhY3ktdHJ1bmsKKzg4MjEgZTQwODdjZDQwYzg1ZDgwMGRiZWQzNmRiY2YxZmQ2ODhkNjEzZDgyZSBsZWdhY3ktdHJ1bmsKKzg4MjIgOThkYWNjODk3M2ExMjAyZjY0MjhhZWMyZjQ2OWFiNTQ1OTJlODIxYyBsZWdhY3ktdHJ1bmsKKzg4MjMgYTVmMjlhNTYwYzA5YTMzODg0MWE3YTdkMzE4ZTU2OGVkYjY3MTUyOSBsZWdhY3ktdHJ1bmsKKzg4MjQgMjY1NmQxZWVhNzkyMmRiOWYyZDUwZGU4ZWFmYTY0YjI4ZDYyMzAzNiBsZWdhY3ktdHJ1bmsKKzg4MjUgNmEzYjllN2Q0M2MxMzc3ZDIzM2YzOThkNzAyZWIzNWIwMmNmNTNmNyBsZWdhY3ktdHJ1bmsKKzg4MjYgYjczMzFiZDBjY2Y1NzdjYjlhOWE2MWE4MzA5MTM0YjA2MmNlNmRiMiBsZWdhY3ktdHJ1bmsKKzg4MjcgOWExMjFiM2ZiZWJiYmFmMWE1YTUxNTFkNDVjMDQxYjE2MTA0YjVjNCBsZWdhY3ktdHJ1bmsKKzg4MjggMzg2NGRmMjk0OTc5YTA2OTYxZjNjYjk3ZGFjZWM1ZTBhZTc3ZmVjYyBsZWdhY3ktdHJ1bmsKKzg4MjkgYjYyYTdhNTk0MTRlN2YzZTBmNzg1NTk3ZWRjNTk0Zjk2NGQ1OGY4OSBsZWdhY3ktdHJ1bmsKKzg4MzAgNjY2YWNjZDY2ODc4Yjc2ODEwM2JjODAxZjBhOGJlZTc5Mzg0ZWVjMiBsZWdhY3ktdHJ1bmsKKzg4MzEgZjRkY2JjMDI3Y2QyMmVlN2VhNDFiNzYyNjNhZGY3ZDU1YTBjYWNlNCBsZWdhY3ktdHJ1bmsKKzg4MzIgMmU0MGUyN2Y4YjI2MGZjNDc2MGI0NzEzZDE5NzRiZmU0NDk2YjhmYSBsZWdhY3ktdHJ1bmsKKzg4MzMgYTg1N2QyZjg3MzM2NGMwZjNlOGNkYzJhOTkwMGI1ZjQyNTU1MjQyMCBsZWdhY3ktdHJ1bmsKKzg4MzQgMTc0YzFiY2M4ZTJkMGQ4MjhlZjk2YzgyODY3M2U3N2VjMjliZDI3MSBsZWdhY3ktdHJ1bmsKKzg4MzUgOWU4MmRkNzYyODhlOGYxOTMwYTQ5YmZjM2Y4ZmIyZGY3M2Q0NjZkYSBsZWdhY3ktdHJ1bmsKKzg4MzYgN2RmNzhmOWQ2ZDM0Nzc3N2FhMTNhNmJiNjg5ZTMzY2QxM2UwZWY2ZSBsZWdhY3ktdHJ1bmsKKzg4MzcgZDY0ZTg1ZWQ3YjQ0MWRhZDdkZjIwNjhjNTYwYzJmMjc1ZjcwZDYzZiBsZWdhY3ktdHJ1bmsKKzg4MzggMGU3ZTIwMDQ5NjM3MjhhMzY1MmVlZWZmMGQ0N2NmZTRhYjc0MzU3OCBsZWdhY3ktdHJ1bmsKKzg4MzkgMzI2NjMyNjdlYjQwNjE5NjBjMDU4OWUwY2JmODIxYTRiMzhjY2Y1OSBsZWdhY3ktdHJ1bmsKKzg4NDAgMGM3NDY4OGJjMWZmYTQ5MzYwYjlmODNhNThiZGVlZDA0MjFlMGQzYyBsZWdhY3ktdHJ1bmsKKzg4NDEgZjM5YmVlM2ZmMjJiZGFjMmYxZTIyYWQ5YjAyZDI5ODFhODdjMzg3NyBsZWdhY3ktdHJ1bmsKKzg4NDIgMjFiOTNkOTg5MjZiODE1YWM5ZWNlMjg0ZDRiN2M2NDgyZWNhNzZkZSBsZWdhY3ktdHJ1bmsKKzg4NDMgNzFjM2JlYjI5NDk5OWRhYWFhODJmODQ3NTY3YjA5YzUwMGVlZGRmNSBsZWdhY3ktdHJ1bmsKKzg4NDUgMmMyOWI4OTgyNjQzMzdkMDJhMDBmNmRkNWQ5NGVlNThhNTBkY2E2OCBsZWdhY3ktdHJ1bmsKKzg4NDYgOTRlMGIzMWZkZjVmMjgzMzE1ODg4NzFmZjFkYWEyNTRjNjgxZDk3ZCBsZWdhY3ktdHJ1bmsKKzg4NDcgZjgyMjQwNDZjY2Y4Y2IzMzYyNTE0YTg2Y2UzOWY5ZDdhN2I1ZWIxOSBsZWdhY3ktdHJ1bmsKKzg4NDggMzY0MDUzMDkzOTdmYzI2NDkwNjdiOTI4ZTAyZTZiZDExZjAzMjczMiBsZWdhY3ktdHJ1bmsKKzg4NDkgNjc4YTNmMWQwYzgwOWM3MDBiZDJmNGY2NDkzZDkzNzhiOTk1YmVlMyBsZWdhY3ktdHJ1bmsKKzg4NTAgYzcxMzliNmY3MzQwNmUxYmIyOGYxMGY0MWJjYzgxMzUwZTc3ZTEzMiBsZWdhY3ktdHJ1bmsKKzg4NTEgNDdhOWE2ZGUyM2ZmYzIzYWYyOGMyM2MzODY3NDU1NGFhYzc0MDYyZCBsZWdhY3ktdHJ1bmsKKzg4NTIgZjZlZjlhZjRjOGI5NTRhNTVhN2I0ZjhlYmFlY2QxNjRjNjU4ZGM4ZSBsZWdhY3ktdHJ1bmsKKzg4NTMgYjY4MTg1ZDk0Nzc3YzBkMWFlMmE0OWJiNDk1MGRiNDk0OWRkMDlkYSBsZWdhY3ktdHJ1bmsKKzg4NTQgMWFmY2FjNzY1OGU1NzQ2ZTQxM2Q0YjIwYzMxZTYzNDE5NmNlNjNjNyBsZWdhY3ktdHJ1bmsKKzg4NTUgNGNiMjIzZjI5MzM3NmZhN2ZmMDZkNjBlMzk2MzZiZDc3MmUxMThhZCBsZWdhY3ktdHJ1bmsKKzg4NTYgODkyMmM3ZjNhMjg1NTExODk3MjEzMDJjODIyYmY2MmYxZDA1MzhmNCBsZWdhY3ktdHJ1bmsKKzg4NTcgYjgzZWEyZmVmMzMyYjFhYWU4YWQxYjNhYjBmMjIxY2IyMTMxNmRlMiBsZWdhY3ktdHJ1bmsKKzg4NTggMzdmZjcxY2Q5NDFlYjA0ZTc0M2JhZTVlNjViNGJiZGRlYzkxNTQ0NiBsZWdhY3ktdHJ1bmsKKzg4NTkgNDQ5MDQ3NjRkYWZhOGM3NGQzMmNmOTZkNTk0NTVjMGQ5ZGI4YWZjMCBsZWdhY3ktdHJ1bmsKKzg4NjAgMTZjZDM5ODA1ZmQ1MTg3YWI2ZjgyZmZhYmQxZjkzMWI5ZWNlNDA2OCBsZWdhY3ktdHJ1bmsKKzg4NjEgM2YxOTUyNTM0MzY3Yjk5MTU0NTI0NTY4Zjc3MGU5NWYzOTE3MTQ1MyBsZWdhY3ktdHJ1bmsKKzg4NjIgMjM4YThiNjA5NmUxYmIxZjI3YzU0MjU5MzlhMWQyZmYyNzNjNmI3ZiBsZWdhY3ktdHJ1bmsKKzg4NjMgMTRkNThiNWEyMWM0MDg2OGJjMWI5MGFjODg5NTVkNDdlNTU2OGVmZiBsZWdhY3ktdHJ1bmsKKzg4NjQgNTA1ZjUyMDEwZjJhZjlkZjQ5NmY1YWY2YzVhNzY2MzNlNTg4MWRkMyBsZWdhY3ktdHJ1bmsKKzg4NjUgODMzZmIwMTQwOWYzNDlhNGI5NWM3YmJiOTYxMTQzOGRkNDJkZWVlMyBsZWdhY3ktdHJ1bmsKKzg4NjYgMzdlNjhiNGE1Mzk3MzM2MzIwYzZlYjEzMTIwMzdmYTJlZTUyZTZlNyBsZWdhY3ktdHJ1bmsKKzg4NjcgYmRmNGUyN2Y1YjllM2QxMzNlY2MyZDY5NzFmMGE0NDk5ZDg5ZTI5OCBsZWdhY3ktdHJ1bmsKKzg4NjggYTJkZjNjOWU1ZjQzYWNmYmY0MjY2YWJjZjFlMWY0MzI5ZTRmOWRhOCBsZWdhY3ktdHJ1bmsKKzg4NjkgN2NiZWYwZDc0ZWEzNDFhYjE4MDIzNDMxZDQ3ZDdiNzdjOTg0ZDAyMyBsZWdhY3ktdHJ1bmsKKzg4NzAgMjRmMjk1ODZkZTk2OTAzNjdmYjBkOTI4ZDFkNjIyYWI1NzdlOTA3ZSBsZWdhY3ktdHJ1bmsKKzg4NzEgZjZmMjUxMWJiNmJhYTJmODBjNGE4YzVmNDIzMzhiYWJlNDc2YzVhMCBsZWdhY3ktdHJ1bmsKKzg4NzIgNzg0YTE2ZjU2NjQzNDc0ODg4ODY3ZWZkODFhNmZiZDQ4NDJmMzhlOSBsZWdhY3ktdHJ1bmsKKzg4NzMgMjJkYWUyNjM3ZTA4MmVkMDY4NzllNGFjYWY4YTM1YTY2ZDIzMjQ0ZiBsZWdhY3ktdHJ1bmsKKzg4NzQgNmVhOTI2YjQ2ZjhhZWJiZmYwZTlkMGM4YTM4M2JjOTRjYWUzMTg5OCBsZWdhY3ktdHJ1bmsKKzg4NzUgNGQ1NWJmZTFmZWJiZWM2MzYyMTY2MTJjZGQxYTlhZWZjMDQyNjhkMyBsZWdhY3ktdHJ1bmsKKzg4NzYgOWVkOWViNGE3ZjIzYTRmZjgxNTI5NzYxNTIxZGMyZGY3NDUzY2NlZiBsZWdhY3ktdHJ1bmsKKzg4NzcgYzdmZTM4OTBmMTAzZTY2NGYwOGQ5MzA2Nzc3NWVjYzUwYmRkMmZkMCBsZWdhY3ktdHJ1bmsKKzg4NzggMDQ5MGY2YTg0ZDM0NzUxNjk4ZTM5Y2ZjM2I4OWYwYzhjOTNhM2Q0MCBsZWdhY3ktdHJ1bmsKKzg4NzkgMzIyNDg3OGJkOGIzYThlMDE5MGRlODc1Yzg3YWExMWJlZjQwZDFmMyBsZWdhY3ktdHJ1bmsKKzg4ODAgOWY4MTM0ZTk1NTY1YjRhNmU0MWU4YTA4OWQyYmY4OGI0YTgzMzZhOSBsZWdhY3ktdHJ1bmsKKzg4ODEgOTQ1MmI3N2Q2N2VjOWZhMGU2ZjMzMDJjMzA5MmRhNTgwOGFlZjBmNiBsZWdhY3ktdHJ1bmsKKzg4ODIgZWQ2ZjZmMDMyMjE3MTliMmY2NjBlODBmMTlhOTAyYjU3ZWVkNjJjNyBsZWdhY3ktdHJ1bmsKKzg4ODMgNjUxNzdhYjZhNjk2YzUxOTlhMGNmYmJkY2UwZjQwZDZkN2JjOGUxYiBsZWdhY3ktdHJ1bmsKKzg4ODQgODExNTRhNTFjMTZlZDJhNmRlZmUxOTJiYTFlMmM1ZmRkMjcxNDMzMyBsZWdhY3ktdHJ1bmsKKzg4ODUgNTc0ODRlMjFlMzI3MWRiMmQ5YzRiZTMxMmU5ZjdlOWFmYmIyMGQxNSBsZWdhY3ktdHJ1bmsKKzg4ODYgMTg0MDkzZDk2ZDJhMmJiOGRjZmFhMGZjZWI4NDQ5MGE4ZWQyZmI5MiBsZWdhY3ktdHJ1bmsKKzg4ODcgNGFkYzdlOTZhYmEyNTI4ZDY3MWM0ZjQ5ODRmOWJjZTBkNjE4NTdlMSBsZWdhY3ktdHJ1bmsKKzg4ODggNDM5MzgwMGY5MjYxNTk4MTIyYjZkOGYxZTliY2YwZTI0M2Y2NjQ1YyBsZWdhY3ktdHJ1bmsKKzg4ODkgMzg2NTVlM2FkMTkyNTdlMzVmMTg0YmIzYTcwM2U4YzM5MzFmZTUxYSBsZWdhY3ktdHJ1bmsKKzg4OTAgMDRmM2QyNTlmOWU5OWFjN2U4NjdhYjNhNGEyMmIzN2U2YWVhNzdiNCBsZWdhY3ktdHJ1bmsKKzg4OTEgYzM3OGU3YTAyMzRhMmExMDM3YjlhZWVhYzFmNDdkMGM5NGI4M2NmYSBsZWdhY3ktdHJ1bmsKKzg4OTIgZWNjNTNlYThkNGViNjVjMDYyNGM0N2YxNWFjZmE4Yjk5ZTg2ODllNyBsZWdhY3ktdHJ1bmsKKzg4OTMgMjMwODNiZDhjMjYxODk4NzljZmM0MWI3YTI0ZDY5YjA4YzA5MThmMiBsZWdhY3ktdHJ1bmsKKzg4OTQgN2Y3NzcxMGEyMmQwYTY3MWVlZGZmMWUzOTk5ZDkwNWFkY2M1NzA1NiBsZWdhY3ktdHJ1bmsKKzg4OTUgNDQ5MWY4NGFjMjIzYTE2ZTkxMmZjNzA0YzE2MDZhOGRiZjNiOWMyMCBsZWdhY3ktdHJ1bmsKKzg4OTYgNDhkZjAxZWFhMDlhMjQ1ZTgyNTQwNTA1YTNmMzg4MGRmM2VlNGU4OSBsZWdhY3ktdHJ1bmsKKzg4OTcgNmYwNjQxMGUzMDdhZjQ1Mzc1ZDljZDdiZjMwMzRiODNjY2RjMTVjMSBsZWdhY3ktdHJ1bmsKKzg4OTggYWJlZDc1NGM3YjdmNWIxMzA5Y2I3MGIxZDA0OGQ3ZjYzNzU5ZmExMCBsZWdhY3ktdHJ1bmsKKzg4OTkgYzYyZTM0ZWE0NjRiMmQ0MGU3ZWQ2NjQ5MGNmMjY2YzI4N2M5MjZiNCBsZWdhY3ktdHJ1bmsKKzg5MDAgZmI5YjBkMjQ2ZWYzNGViZjYxOGY2MjAwZWI3NWZiMTNiOGM0MjFjMyBsZWdhY3ktdHJ1bmsKKzg5MDEgNjQ0NDg0ZTFhMzdiN2VlMmJkNDM1ZGE5YzBiNmVmYTY2NjQxNzVmYyBsZWdhY3ktdHJ1bmsKKzg5MDIgYWFjYTQ3ZWY1NWE4ZDQ4M2U5Mjk1YmRjODVlMWI4NmVhYmNjMWZjYSBsZWdhY3ktdHJ1bmsKKzg5MDMgNWYwMjE2MzAyY2Q4ZjRjODM3NWM3NmQ0MTQzMmViZDYzMjQ0MWRiOSBsZWdhY3ktdHJ1bmsKKzg5MDQgMDY4MjU0ZmU1NjE3ZTRiYWZiMzIzNjkwYTk1ZTlkNzZkYjZmMjlmYyBsZWdhY3ktdHJ1bmsKKzg5MDUgYWVlNTZlOWQxMGZjOTM1OTJhMWIzOGI1YTBkNWUxMTIzYjc3ZWI4ZiBsZWdhY3ktdHJ1bmsKKzg5MDYgZTM1NmEzNDQ4MTlkN2EyMjYwZGI2OTFjZTRmODhkNTcxMjVhYTZlNCBsZWdhY3ktdHJ1bmsKKzg5MDcgMTRhNzExMjY4YzUxYmI2OTM3YjE3MDg5MjNlYjA5ZjBhMjYxZDlkMiBsZWdhY3ktdHJ1bmsKKzg5MDggZTc4YjYxNzRiZWM5MjNlMGEzZWI4YTc5MjlmODU1ZGI5MzZiMmU5YiBsZWdhY3ktdHJ1bmsKKzg5MDkgMGRmMDE1OTA1MTAwOGViNTFiYmQ5OGI1MzhjM2QwMThhMzY2MDQ2NiBsZWdhY3ktdHJ1bmsKKzg5MTAgY2U1NmE3Y2ZlOTZjZmQxMDFjNmRiMzFlNjY5NmY2Njc0MjEyYjQ1MCBsZWdhY3ktdHJ1bmsKKzg5MTEgNDM1NjA2YjIxNWM1MmJhZWNmZTFhNDRkMDk3YjJkMmFiYWZlNDdmNSBsZWdhY3ktdHJ1bmsKKzg5MTIgYzgzYTFiMjFjNDJkMmEwODYwZTIyOWZjMGZiY2FkOWYwYzM5MTVjYiBsZWdhY3ktdHJ1bmsKKzg5MTMgMDUzYmJhYjBlYzUzZTIxMTIyODNlMTg5MzY3ODEwNzNlZTk1ODQzOCBsZWdhY3ktdHJ1bmsKKzg5MTQgZTU3YzcyYTJiMDY1NmQxZmEwYjExZTIwMTdjNzNlN2IyODE4NjM5MyBsZWdhY3ktdHJ1bmsKKzg5MTUgZjM4NGNjMTFiNzViZjA2MTMyNWQ4ZWUzMGQxNDM2ZmUxNGY2MDZhZCBsZWdhY3ktdHJ1bmsKKzg5MTYgOWU0NmVjZjAzYzNlODMzMGU5M2ExZTI3NWU0Y2I2M2UyMDVmNTFkMyBsZWdhY3ktdHJ1bmsKKzg5MTcgZDc3NjBhMWJhNGNhNzY5ZTYyNDdhNWMxZmMzY2Q4ZWNkMWU3ZmVhOSBsZWdhY3ktdHJ1bmsKKzg5MTggNDJiYzc5MmFjNjlmYWU1NWZmMjMwNGY0MmVlNTQ3Yzc5Mjc4ZmUzMSBsZWdhY3ktdHJ1bmsKKzg5MTkgZDllNTE0NTFlYmRmOTMwMmM0YzYyZmQwZTNiODlmYzI1MzM1ZTY0MSBsZWdhY3ktdHJ1bmsKKzg5MjAgZGRmY2VmYzBkODI2ODA3ZTFlOWE1OGZmNjNhM2MwZmU3NGEyZDlkZSBsZWdhY3ktdHJ1bmsKKzg5MjEgMTA4ZmZmMjU0NjJkNTYyMmRkNmE3NWU2NDQ3OTgzZjg2M2YwYjZhNSBsZWdhY3ktdHJ1bmsKKzg5MjIgOTNjMDE1ZWMyZDU3Y2FhZjg2MGQzOTRmZDcyZjA0MTc3YjExNDU0OCBsZWdhY3ktdHJ1bmsKKzg5MjMgYmRlNWFhZjNlNTg5NzQ0YjM0Y2FiMmJjNjAxOTFmOWRmMzlhMTg5YSBsZWdhY3ktdHJ1bmsKKzg5MjQgNTgwMzc4MmU3M2ZmYjcyZGZkZDhmOTNhNWZiYWJjMTRkOWQ2YTA1MyBsZWdhY3ktdHJ1bmsKKzg5MjUgMzFhNTA0NjgzNjZiYWUzN2NjYzExNmZhODA0OGIyYWUxMzg1NDU0MyBsZWdhY3ktdHJ1bmsKKzg5MjYgYjg1NGNhNDYwNWUxMjI5ODE0MGJiMjcwZTM1ZWM3YjZjN2NkNTBjZiBsZWdhY3ktdHJ1bmsKKzg5MjcgMzM1MGM3MzU1MGVlODNkMjMwOTI2ZjdiNzE5OTA5NjZiN2M4ZGExZiBsZWdhY3ktdHJ1bmsKKzg5MjggNzdhMjJkNDlkZDg1ODVkZWVjMjFmZDU0ZGVmNTliMmRmYmFlYzZhZSBsZWdhY3ktdHJ1bmsKKzg5MjkgMTA0MTMxNzlhNzJhNTg5MDNlNDVjODVjYWYwYTcxMDU5YmFiYjRlMCBsZWdhY3ktdHJ1bmsKKzg5MzAgN2VhNDY1ODMwZWY0NWRiZGQzMDlkN2I1ZmNkODk0Mzk1YzEyYTFhMSBsZWdhY3ktdHJ1bmsKKzg5MzEgYzliMTM5YjljNWZmZjUwM2M3ZjVjMGQzYzBhMzJmNjBjOWQ3ZDUyNCBsZWdhY3ktdHJ1bmsKKzg5MzIgYjViMzVhMGNmMWFhOTI4MjYyNmNhOTA5ZWRiYTQyOWVmY2U5ODM3YSBsZWdhY3ktdHJ1bmsKKzg5MzMgMjEzOGNmM2JkYzVhYjg1OGZiMjViNDBhYmY0ZjYyNGI5NTkyZjdlZiBsZWdhY3ktdHJ1bmsKKzg5MzQgMmM1YzM5OWI2ZWE0NjMzOTJlMjM2MzEzYTg1ZmI3ZTAyOTRjNGU4MyBsZWdhY3ktdHJ1bmsKKzg5MzUgOTBlZWQ5YTVkMDdhODM1OGQxMjEwNGFiYmMyYWIwOGMzYmQ0OGJiYiBsZWdhY3ktdHJ1bmsKKzg5MzYgMzkzNDg5NzRiMjJlODkwMDdmY2RiYTk0MWZjMjhkYzc4MGU5OWRhMSBsZWdhY3ktdHJ1bmsKKzg5MzcgYjY1ZWI0NDQyMmJhOTMyMmY3OTFhOGU0M2FmNjNlNDA1MzI4NWY4MCBsZWdhY3ktdHJ1bmsKKzg5MzggNzc3YWU1MjYwYTEyZjVjODNjN2ViNzE0MWQ4YmRhN2UwYzg2MTk5ZCBsZWdhY3ktdHJ1bmsKKzg5MzkgOTk4NjI3MmNlMjRhMTVjNGVmYWJkNmYwZDM2ZWY4OTA1YmUyZDVkNiBsZWdhY3ktdHJ1bmsKKzg5NDAgMjJiZWQ1Nzk0NTE0YzYyNzkxMDc1MTM0NzE5MjQ3MjQ0MzJlYmI4OCBsZWdhY3ktdHJ1bmsKKzg5NDEgMGIyYmNmMDQyNGEwNTNhNTZlZTBjYTY4ZjdlYzNkYjJjNTc2MThkZiBsZWdhY3ktdHJ1bmsKKzg5NDIgNGQ1NDVjYzZmYTk5YzRiMGFjZDdjYWMxYTRkM2ZkOTA1ODcyZDJjNyBsZWdhY3ktdHJ1bmsKKzg5NDMgYzE0MmViNTMzZmI5MGY5YjMyMTM0MWM3MTc1OGJmMWYyNGIwNDhhYiBsZWdhY3ktdHJ1bmsKKzg5NDQgOTQxNjM3NTljYjAyMWJkYTc3OWM2MmQxMDRjMzg3M2YzN2ExNDZjZiBsZWdhY3ktdHJ1bmsKKzg5NDUgNmE5MWEwZjY0MmZlN2IwYWMzNmI3NDQzMmM2MDJiNWI5ZGM4ZjY3ZSBsZWdhY3ktdHJ1bmsKKzg5NDYgMTAzYzYzOTgzY2RmYTRkYmNhMzA4ZDViYjJmODYwMmFiODlhYWI4YyBsZWdhY3ktdHJ1bmsKKzg5NDcgZGNhOWJkZjVlYTA4YTgwYzFmM2E2YzFiYjNjYjYzMzU2NzQ2YjQzZSBsZWdhY3ktdHJ1bmsKKzg5NDggZWU0ZjJiMWNlZWRhNGFhYzI2ZDQ0NDM3NjMwNTNmMGRlN2NlYWQ5NSBsZWdhY3ktdHJ1bmsKKzg5NDkgZGY2NTllMjM5ZTkwNmQ5YjYxNjdjZjcxNzI1ZTYyYjAzYWYwOWZiZCBsZWdhY3ktdHJ1bmsKKzg5NDkgNzQ2NjU0YTBhZjY4MGM3ZDliODE0YjIxMGEwMjZlYjkxYmVjOTUzMyBsZWdhY3ktdHJ1bmsKKzg5NTEgMmVkZTdjMmFjOTJjZjFlZTg5ZThlNTI0MTljODkwMWIwMzRiNzU4NiBsZWdhY3ktdHJ1bmsKKzg5NTIgZDE1MzI0MmFhNmJiMmRjM2IxZmJlYzhjOWFlMmFlNzg1OTRmNjgxYiBsZWdhY3ktdHJ1bmsKKzg5NTMgZjVmNzQ0ZWQ4MTM3YzdjYzM0YmZkMTE4ZDY1YzYyM2U2ZTQxNDE2MyBsZWdhY3ktdHJ1bmsKKzg5NTQgN2FiMGIwNTI5M2FhNDI3MjBkMTUxY2E4M2M3ZTNiZGViOWE1NTExZSBsZWdhY3ktdHJ1bmsKKzg5NTUgYzY3ZDg0MjFmYTIxNjY2ODA4YTI0YzYyMzg3N2UzMzJkN2U0YzUzYyBsZWdhY3ktdHJ1bmsKKzg5NTYgMjk3YTU0MWViODY1NzRjMjMyN2IyYzAyMThkNjkxMzRhMWYwYTk3MSBsZWdhY3ktdHJ1bmsKKzg5NTcgNThiNGQ5ZWE4ZTUxMzg0MmYzNDdlM2Q1YTQzMmYzZWJmYzE2NzI0MiBsZWdhY3ktdHJ1bmsKKzg5NTggNzI3YjUyMDMxMjEyNTc3ZDllZDUxOTVmOTQ3YmYwYWYwMTQ3MTRkMSBsZWdhY3ktdHJ1bmsKKzg5NTkgY2IwNWVhMmI2M2Q5ZDAwMDA2N2I1YzJlMTU3MmZlMTYzYzUwODczNyBsZWdhY3ktdHJ1bmsKKzg5NjAgZDMxMWI2ODc1NGMxODZlOGNkM2RlNzAyYmI2MzQwYWNlOWE5YjJjNyBsZWdhY3ktdHJ1bmsKKzg5NjEgNTYzYWUyMWIyMDU3ODM2MzlkODYxOGY5YzdhOWZjMGQwZGY4OWViNiBsZWdhY3ktdHJ1bmsKKzg5NjIgYjhlMjYwNzhkOGIxYWQzOGY0YTJhZDEyYjBiOGY0YTc2ZjVkZmVkNCBsZWdhY3ktdHJ1bmsKKzg5NjMgMmYyNTgxNjJhYWUyYWNkZmVkNzZjNTZlYmJiMmJkZTM2OTE5NWRiZCBsZWdhY3ktdHJ1bmsKKzg5NjQgMTYxODA2MDcxNmU3ODE5NTIzYmYxYzUwMjE1MTJjOGUxMzQ0ZmE1NiBsZWdhY3ktdHJ1bmsKKzg5NjUgNjMwNzI1ODA1YzY2MjJmZmM3MjRlODg0MGUyN2ZmZDAxNzZjNGNiNSBsZWdhY3ktdHJ1bmsKKzg5NjYgMzdjOGQ3Zjk2N2M3MWMwZGU0MTRiYWNhOTJiNzFlOWFiZTY4Zjg4MyBsZWdhY3ktdHJ1bmsKKzg5NjcgNGUxYTBmZTBhY2UyNGY1NjI4NDYxMDI1ODA2NTJlNDRhMTkxNjYyYSBsZWdhY3ktdHJ1bmsKKzg5NjggMmY5ZDU5ZGE3MmZiODZmNDA0YjdhMGU0MTVjMjc0YzAwOWViNDg1ZSBsZWdhY3ktdHJ1bmsKKzg5NjkgYWU3NGI2Y2NlZjU3ZDQzN2NmNzc5NjgwM2FkNWNmMGZjMGQyM2Q0YiBsZWdhY3ktdHJ1bmsKKzg5NzAgMjIyZGQ0ZDA2NTgxMjk0ZjIyOTU2NWM0NDdmOWM0OTFhMjgzZTk2ZCBsZWdhY3ktdHJ1bmsKKzg5NzEgYmI4YzMwMDRkNzU4ZWMxYmU5ZWQ3MzE2ODliNTBmMGJhNTAzMjRhNCBsZWdhY3ktdHJ1bmsKKzg5NzIgMTdlM2Q5YjZiNDJlODI4NTgxMzRjMmM0M2MwN2I2NmRkNGQ0MDViYSBsZWdhY3ktdHJ1bmsKKzg5NzMgMzlkMmE0ZGI3YzNiODBiODAzNmIzNmZlYmU2YjkyMjQwYjU1ZmYwMiBsZWdhY3ktdHJ1bmsKKzg5NzQgY2U0NWVmNGM2NWU5MWJlN2IyOWI1YTEzNWI5NzE0YWYxMTYxYzdjNyBsZWdhY3ktdHJ1bmsKKzg5NzUgYjM4YTc1NWI4ZGIxYzg3YWVlMzBjYjIyOWRiMzg0MTYyZDU1MzViNiBsZWdhY3ktdHJ1bmsKKzg5NzYgNDk4MWZkMmIzMjExNDA2YWJhNWQxNmU0YzRlYzRlYmNiOWNlNzcxNiBsZWdhY3ktdHJ1bmsKKzg5NzcgNmEwOGI2MGRlODJjNzIzMGIxMmZmZWQwNjVkOGM2YWE2MTliNThkYiBsZWdhY3ktdHJ1bmsKKzg5NzggODc5MTMwZjFmZjVmY2IxMjJjNzI4NTA3MmE0Nzg2YTA0MDgxYmY5NiBsZWdhY3ktdHJ1bmsKKzg5NzkgOWVmOWNhZGQ5NzhjNTRhODEyYTk2NWM1YjU5MzcwMDAxYWNlYmNiYSBsZWdhY3ktdHJ1bmsKKzg5ODAgMmEyZTViNzMxZDFjNzc2MzM5OTlhMTJjOTg2MjAyMWNmNjUyMjI0OSBsZWdhY3ktdHJ1bmsKKzg5ODEgOThiMmEwYTA5M2M5ZDQ5Yzk3ZGQ3ZWE1ZGRmM2Y1OTI3ZWZjMzgwZCBsZWdhY3ktdHJ1bmsKKzg5ODIgMDcxYTBkM2E0OWI5ZjkwZjVjMGJmMGZiYWYwZWZmOTk2ODViZjI0OSBsZWdhY3ktdHJ1bmsKKzg5ODMgYjA0OTRiYjUyMDE5OTRmOTE0OTY2NzRmNWU0YzliNDQ0MmUyZDc5ZSBsZWdhY3ktdHJ1bmsKKzg5ODQgZGY2ZGZhYWMyZDBiNTFhMmVmZDEyZGZjZGMxZDUwMTUzNDZiNzQwZSBsZWdhY3ktdHJ1bmsKKzg5ODUgYTAwMDczZjJlMDg3YWI0Y2UxNzI5YzFiMjBiOGE0NmRiMmFmYTQ3NiBsZWdhY3ktdHJ1bmsKKzg5ODYgODA3MzVmY2MzNWFmZmI3MjgxNDRmNzY2ZWMxYzU0ZTRiYTk2YTc2YyBsZWdhY3ktdHJ1bmsKKzg5ODcgZjAyMmJiZDEyMzM4NjgwMWQxZDQ2NWExOGI3MDk0MjhhODkzOTNjNCBsZWdhY3ktdHJ1bmsKKzg5ODggNzQ1MThkODgyZWQzMWFlOTQzNWEyYmUxMTdlNzRiOTVhZWI3YTNjYSBsZWdhY3ktdHJ1bmsKKzg5ODkgZmRiNzc2MzZjMDc0MzAyZjA2YTU4MzQ0MTM1MWQ3OWUyMjQ3MzUzMSBsZWdhY3ktdHJ1bmsKKzg5OTAgYTNkZDU5MTA4MTE5NmEyYmNhY2MzZjY0YmUyMDhiOTg2MzhjOTBlNyBsZWdhY3ktdHJ1bmsKKzg5OTEgNmM1ZjdlNzRmYTg4MDFmZThjZTgxMjI2NDBjNTQ0Yjc2NTFjYTUzMCBsZWdhY3ktdHJ1bmsKKzg5OTIgNmQ5Y2ZiNTNjN2VkMmMyY2RmNDI5MGQ4MWMzOTNmODMzOGIzZDMzOSBsZWdhY3ktdHJ1bmsKKzg5OTMgZWNjZGZkMTcyNzQwNjExZWIxNWI1ZjA1NDE0ZGQ2YThkOTUwNTQ4NyBsZWdhY3ktdHJ1bmsKKzg5OTQgN2U1MTcyN2QzYjdlZjNlNDIzMDQ1MWRiM2E5YTRkOTA3ZWJlZDA3YiBsZWdhY3ktdHJ1bmsKKzg5OTUgMWQzMGU1MmRjMzRkOWI0MzU3MWNlMmIyNzAyMWNhODhlNDYzNDk0OSBsZWdhY3ktdHJ1bmsKKzg5OTYgMWFmZjE5NzgzZDc0NmYxYjczZTk2N2VjMWI1ZWM5YzhlNWEwODllZSBsZWdhY3ktdHJ1bmsKKzg5OTcgMjRkYTAzNWNlYjZlYmQxYzg1YzgyYWIxMTQzMzllMTU0ZTg3NWJhNiBsZWdhY3ktdHJ1bmsKKzg5OTggZjFiMTcyODQ1MmMxMzBiMmI1NDVjZjA3OGJlZTVhNWJlYWRjMzc5NSBsZWdhY3ktdHJ1bmsKKzg5OTkgM2Y4NDU1OGEyNGRkODRmZjJmMzQ4MTJlYjdiZTM1MTQ1ZGQ2MTg4YiBsZWdhY3ktdHJ1bmsKKzkwMDAgOTYxNGZkZDgxMzkzNmVjYjg4YjE0NTM4ZGQ2Nzg3MDQ1NTFmMzQ1YyBsZWdhY3ktdHJ1bmsKKzkwMDEgZWU0OTZlZjFjYTgzOTliNzJmM2VmNGUwZjU1NTQyYjY1YjA5M2U2MCBsZWdhY3ktdHJ1bmsKKzkwMDIgZTljNjdjMTkyY2RiNjY3NDJkMTM5MGYyNTlhNDBlOTM4NWJhN2ViZCBsZWdhY3ktdHJ1bmsKKzkwMDMgNWNjYjEyYWZmYjU0YzBjNzE2OTE5OGIxNGVjMzkxMzE5NzAxYzE1NSBsZWdhY3ktdHJ1bmsKKzkwMDQgNDZmYTQ3MTdjZjI0YWNiN2ZjYzU3Yjk4ZWJiZTg1NGRkYTM2NGEzOSBsZWdhY3ktdHJ1bmsKKzkwMDUgYmMxOTAwMjQzZTMzOWEwZmQyZjBlMDJkNTNiNzk2ODU1N2FiMDM0ZiBsZWdhY3ktdHJ1bmsKKzkwMDYgNzIzYzg5ODgzMTg4MWQwNzVkMDgyOWVlOTE2NTg0ZGI1MDdjYTYwMyBsZWdhY3ktdHJ1bmsKKzkwMDcgODllMmVhYWNmZDkwMDBhZGQ3MWI4ZjFhYzc3NzdkOTdmOThmMzYxZiBsZWdhY3ktdHJ1bmsKKzkwMDggMGNkMWYyZjFkODJkMWM5NTgzNzVkY2NkNmQ2NTlkNGY4ZWU2OGYyNyBsZWdhY3ktdHJ1bmsKKzkwMDkgZTQ5N2E3ZmMwYWE4NTZjODU4NDVmYjAxNzA2MDgyODhkNjkzYjBjZSBsZWdhY3ktdHJ1bmsKKzkwMTAgZDM2OTYyOWU4YzI3YzBhM2RkMGI4ZmUwM2ZkOWExMjliZjVjMDhmZSBsZWdhY3ktdHJ1bmsKKzkwMTEgYmE2NTM3MjQwOGRkYzZiYmRlMWEyZGYzNTgzYWI4MDEwZmI1N2JjMCBsZWdhY3ktdHJ1bmsKKzkwMTIgMDg2NGE1NTY2ZDg5YWJkZGQ1YWVhZTFmNjEwOWI4M2NjN2EwYTg2YyBsZWdhY3ktdHJ1bmsKKzkwMTMgNjRjNWVmYTlkMmM0ZTRjMDBmZWU5MjQ2ODllY2NjNjk5Y2I3M2IwOSBsZWdhY3ktdHJ1bmsKKzkwMTQgMTg3MDM1MzhhZjQ4MTgxNzE4MTk0NzIzZTQ1N2UwMmY3Y2JhMzYzZSBsZWdhY3ktdHJ1bmsKKzkwMTUgMjU1MDVlNTYzYjM3YjcyZmU5N2JhYzIzMTQ3NTc2M2EwOTMzMzQxMCBsZWdhY3ktdHJ1bmsKKzkwMTYgYTFhMmI3MTE1OThjZDdhYWUxYjI1NTdlN2ZiYzg1M2M4ZjAyODZlZSBsZWdhY3ktdHJ1bmsKKzkwMTcgZDFmNDZhMDhkNzhhODZkMmM1OTExZjY4MDY4YTE4N2FlZTVmNmJlMyBsZWdhY3ktdHJ1bmsKKzkwMTggODBmYzBhOTA2ODg1MmVhZWY4ZWYyYjAyYWE4YTI3ZTBjYTk4ZDg4YyBsZWdhY3ktdHJ1bmsKKzkwMTkgYjJkZmZmMDY3ODljNmRmNzcyNjcyZGYzOGVmYmRhODE4YWExNTNhMCBsZWdhY3ktdHJ1bmsKKzkwMjAgNjJiZGIxY2JlMGY1NWY5NzViNjc3ODBkNDE5NzAwYjNjZDQ2NTc1ZSBsZWdhY3ktdHJ1bmsKKzkwMjEgZmMzMjdlYzE1YzdlZGUyZGY3ZmI2ZGUzMjhiY2UwMWE3OTdlMTFjMyBsZWdhY3ktdHJ1bmsKKzkwMjIgZDI4OTMyZDY3NmM4YjllNGM1ODVkZmNhYjk5MWZjNGM1ZDZhMzkwZCBsZWdhY3ktdHJ1bmsKKzkwMjMgYjQ1MDMyMjg1ODNjNGI0NjdiM2M1MDVhNGZiZDNmOTVjYjQ5NjI3NSBsZWdhY3ktdHJ1bmsKKzkwMjQgYzkxNWM5NGViYjZiZjNhOGEwMjNmZDA0NWMyYjVmYTdiYjk5NjhhYSBsZWdhY3ktdHJ1bmsKKzkwMjUgNzI0MzgyYWY1MzM5YjhlM2QwYTA2NTE0YmQ3ZjFmODY5NjA2YjQ0OCBsZWdhY3ktdHJ1bmsKKzkwMjYgZGQxZTgzMzIzYzQ1ZmRlMTcwODE2OTc1NmI3ZDc1NDk5NzU3NmEyZiBsZWdhY3ktdHJ1bmsKKzkwMjcgYThlM2IyZTlmNWQyMjgwYzIxNGNkMmE1ZjhhNWFjZDU5MTVkNWQ0ZiBsZWdhY3ktdHJ1bmsKKzkwMjggZjQwNmVjMzViZmNhNjk3N2NhNTJlZmFmYWFmMDUxNWU2NmQ3ZTg3OCBsZWdhY3ktdHJ1bmsKKzkwMjkgYmRkNGNiMmE4M2I1NzUwMTdlNTQzYjgzZDRkNjQ0YjliYjJkZDk1MSBsZWdhY3ktdHJ1bmsKKzkwMzAgNWRiZmZjNzg0NGY1NWE5ZWMwMTk3MGEwZGJmZTQzZjQ2M2M4OWUwYyBsZWdhY3ktdHJ1bmsKKzkwMzEgMmM2ZjJkOTJiMzE1MDg4ODJhMTdjNDAxMDMxY2M4MjZiNjZkYWQ5YiBsZWdhY3ktdHJ1bmsKKzkwMzIgN2M5YzRmODIyNGM4YjIwNzRiZDJhZDhhMDQ5YjlmZjcwNWZiYzM4NCBsZWdhY3ktdHJ1bmsKKzkwMzMgYTVmN2ViODY5ZjIxYzMzMjkyOTM1MmYzNDM2ZjQ4ZjY1OWRjNWNlOSBsZWdhY3ktdHJ1bmsKKzkwMzQgNDI4MGIyNzI5Y2NlY2IwOTliMWM5YzQ1ZmJlMTZlOTdmODdlNDRlYSBsZWdhY3ktdHJ1bmsKKzkwMzUgYjMzMWNkNDdlMGJjNzExNzAwZWVkOGVhODlmMTQ2YTQxZGZiNjgzNSBsZWdhY3ktdHJ1bmsKKzkwMzYgZWUzMDdmOTg0NWEzMjZjYjUzNTAyNjEyZTY3NTg0YTliZjE4MDRkMyBsZWdhY3ktdHJ1bmsKKzkwMzcgMWEyMzNiZTVmYzE3YTY4NjgwNjU0NmFmNGQ2N2FmMzJhNzdhZGZmOSBsZWdhY3ktdHJ1bmsKKzkwMzggNmU5YWE5MmZhYjY5Mjc4ZmEyMTM4NjZiMTk0ZTBhMDkwMWVlMDY2OSBsZWdhY3ktdHJ1bmsKKzkwMzkgZmQyZDRjMGFlNjQ2NzJiOTc3ODRjMzg2NmU3ZTM1YTVkYzAwMjMxMSBsZWdhY3ktdHJ1bmsKKzkwNDAgNTM4MzUwNDM1MjhjOGI2ZjEwNzAzNzRhODBhODRhMDQ1OWRkYjBiZSBsZWdhY3ktdHJ1bmsKKzkwNDEgMmFhMTNjMGM4ZjJmNjYwOWU3ZDVhMDZjYzdlOTZmNGY1ZjE2YTY2YiBsZWdhY3ktdHJ1bmsKKzkwNDIgODEyYWFkOGMwNWMyOTE0MTZmN2UwZWNjM2NiN2M5NTc3NGZkYWQ4YiBsZWdhY3ktdHJ1bmsKKzkwNDMgZTFjOGQ3MTgyZDY2N2QyYzVhYTYyYTk1YWU5OTM4NzA5MTBhMGU1ZiBsZWdhY3ktdHJ1bmsKKzkwNDQgYmUyYTAyMzVhZTg0YTRlNDljN2Y2ODE4MDVkYzUwN2Q3ZjI1YTRlYiBsZWdhY3ktdHJ1bmsKKzkwNDUgM2ZkZDcxNWU2ZWY5MDYxZWI0MDBjNWRiNmJhMjdlNDk3ZDEwYmJkNCBsZWdhY3ktdHJ1bmsKKzkwNDYgYTBiODM5NjY3ZDJlM2ZjNzQzMzdkMjRjODM1NjA4ZmY4YjhiYjk4OSBsZWdhY3ktdHJ1bmsKKzkwNDcgYzFiYWM1MzYwNDVmY2RiOTRmYWUzYWI4OTkxNGQ3ZmZlYTRjNjNhMCBsZWdhY3ktdHJ1bmsKKzkwNDggYjExNzQwNDViYzRhYjY3NmE3ODI0ZjNlNmFlM2EzNTJhYzU3Zjk3MyBsZWdhY3ktdHJ1bmsKKzkwNDkgOGIxNDMxMmEwMjkwMzU5ZGRkOTcyYWQ0MDRkM2ViN2RjNmRmNTI5YSBsZWdhY3ktdHJ1bmsKKzkwNTAgM2I3Mjg3ODY3MmNkMmUyYzMyMzVkNzMxMTYyODE3NGQwOWIzNzIwMCBsZWdhY3ktdHJ1bmsKKzkwNTEgNjdhMmFmY2RkMjFjMTAyZDUwM2I4MTgyYmMxZDUxZTc5ODE3ZTAxZSBsZWdhY3ktdHJ1bmsKKzkwNTIgNmZmYTljYjY1NGUyYjRmY2MyY2ZlNTUwNDJkNzU1MTMwMjUxNTdlYiBsZWdhY3ktdHJ1bmsKKzkwNTMgMDBkYWI3NWI5ZWYxMmUxODBiNzczZWYzODE4YmFjNDQwMDFhOTMwNiBsZWdhY3ktdHJ1bmsKKzkwNTQgZDI5YzRiMmY0OWFlMjcyMmIwNjRiNWNmZDNjOGQ2YzA3NzI0NDE4ZCBsZWdhY3ktdHJ1bmsKKzkwNTUgODU1OTY5OTBkYjQzZjk5YTM5ZTZjNmZlZGYwMTQ0ZGI4MjE2OThhOCBsZWdhY3ktdHJ1bmsKKzkwNTYgMDFlZTU2MDdiYjM1ZjQ1ODI0NmIzYzVjMTA1N2U3MTRmMjc5MGVhMyBsZWdhY3ktdHJ1bmsKKzkwNTcgOTIxZDE3Y2MyNjkyYjI5M2ZmMWNiYWM1NGFjNDNlY2FiMTI0MTJiMSBsZWdhY3ktdHJ1bmsKKzkwNTggYTFkODVjMGNhZTVhNmVkYjU1ZjRiMWJlZjFkYzRkY2FmODgzMDA2NSBsZWdhY3ktdHJ1bmsKKzkwNTkgOWUwN2Q1YjY5ZWJhZTZhODgyOWRmM2E5NmM2MDJjZWM1OWVlNzUzNCBsZWdhY3ktdHJ1bmsKKzkwNjAgZjk2ZTU3ZTY5ODQ2ZjA3OGVkNjQ5NTJmNzdhNWM5Y2Q0ODg5OTc5ZSBsZWdhY3ktdHJ1bmsKKzkwNjEgMDhkZGU1ZTVjYzI3NGFiZjRjZGUzOGQxYjA2NjFmMjkxM2Q2MzJkMCBsZWdhY3ktdHJ1bmsKKzkwNjIgYzI2NzJlNWFiYThiNzlmNDcwZTQ2NDhkYTgwNWMyOTVkN2I5MGYxNCBsZWdhY3ktdHJ1bmsKKzkwNjMgYzU2NTI3MmVkMmM3NDA3ZjgwYWEyMjgxYjhjYzc2OTRiNTI2ZGE1NiBsZWdhY3ktdHJ1bmsKKzkwNjQgNzUzMDc3ZjllYjJjOGEyNjA1MTYyNjlhMWFkNThmZmM3MDE0MzNmOSBsZWdhY3ktdHJ1bmsKKzkwNjUgZTBlNjY3YmJjOTcxYTRmZjQ1M2IyMGY3MGNjNzcxYWJkZDdlN2JhNiBsZWdhY3ktdHJ1bmsKKzkwNjYgZGEwMGJiNDk3MWQ4ZjZmMzEzM2Y5MThhMzcyNDYwYmM5OWYwNjJkNiBsZWdhY3ktdHJ1bmsKKzkwNjcgMjE5MmI5M2Q1MzM3ZTU4YjFiMjI3ZjkyZDlhNGI2MzEyZWRkZWU5NSBsZWdhY3ktdHJ1bmsKKzkwNjggNTE2MjQwZWYwZTE1MWRjMTM3OWViNTA4ZjE0ZjkwNGE0MWE1MDUzZCBsZWdhY3ktdHJ1bmsKKzkwNjkgODZiNjc3MDljMmI0MDJjZjJkNTllYzg3MmQ5NTA2ODdjMTNjM2ViMCBsZWdhY3ktdHJ1bmsKKzkwNzAgMTQwMjVhNGY3OTNlYzVlZDE0M2U2Nzk5MDAwYWJhNjZjNmM0YTk5MyBsZWdhY3ktdHJ1bmsKKzkwNzEgZmNkOGUzOGI5YjJhZjlmMTM5ZGJiYTA0N2NjNWI0NDkxNzdmMDRhMiBsZWdhY3ktdHJ1bmsKKzkwNzIgNDVlODRiZTZkNjQwNWJkYzE4YzY0ODE2MGJkNzlhOWFmNzNlZmFlNyBsZWdhY3ktdHJ1bmsKKzkwNzMgNWUwYjE1MmJmMWU2NWIxYTk0OTE3ZTA4NWRkOTc1NzZmNjhkMWM0YiBsZWdhY3ktdHJ1bmsKKzkwNzQgZjE1ZjBmYzM4Y2IxOWQ3N2MyZGIzM2UxMzIzM2NkZWM0Y2JhMzhmMyBsZWdhY3ktdHJ1bmsKKzkwNzUgYjg4ZmQzODk0ZDVhNGQzOWI1NGQzM2VlNTkyY2NmZmE0ZDI3MDQ5YiBsZWdhY3ktdHJ1bmsKKzkwNzYgY2VlZWM4Y2IwYTFlN2Y1YzY5NTQ0YTczZTMxMmM3Y2RlNWY4NzQzMyBsZWdhY3ktdHJ1bmsKKzkwNzcgNmQ2ZmVjMmVlZWY2YTgwM2EyNmJjOTEwMDZjZmFmNmQyMzBmZGMwNSBsZWdhY3ktdHJ1bmsKKzkwNzggODNjY2Y0NGJmMTk1M2Y5NDRhNTBkZGZjM2EwYzA5MTQ5NGQ4MDYyOCBsZWdhY3ktdHJ1bmsKKzkwNzkgMWU0MjhmNTFlZDRlMTNjOTQxZGEyYmYxODlmMzMzNDEyYzlhNDY2OSBsZWdhY3ktdHJ1bmsKKzkwODAgNDUxNGE1ZWEzZWM0NjQ0MjU2ZWVmYjY1NTg5YmUzNjMyNzU0MmExOCBsZWdhY3ktdHJ1bmsKKzkwODEgN2EwYTQ4ZDczMDc2YTgxNDU5YTcyMzUzOWY1NGNkZjgzN2JjMDY5ZiBsZWdhY3ktdHJ1bmsKKzkwODIgZjY3YTYzMzllZGU3NmVkOGU3ZjcxMWM1YzQyZGIzZTgxOTE3NzNiYiBsZWdhY3ktdHJ1bmsKKzkwODMgZGJiNDYxZTI3M2FkYWE1OTdkYWEzOGJkZTYwMTBmZDRkMThjYmIwZiBsZWdhY3ktdHJ1bmsKKzkwODQgZjViNTUzMTFlNzlkYWU4NTk0ZTU1MzZmYWMzZWQ0MmI5NGQxMmMyYSBsZWdhY3ktdHJ1bmsKKzkwODUgMmY0NTllYjIzYTBlZjE5ZmY2YWE1YWFlMTY5ZjVmMjMyNmM1ZTMyMCBsZWdhY3ktdHJ1bmsKKzkwODYgZjFlM2EzZjhhNDZjZGYyZTFkYTBiN2I3ODMyZTUwZDU5ZGQ2ZTg0NCBsZWdhY3ktdHJ1bmsKKzkwODcgMDIzZTVhYjBmODdkOGI5OGZlYWQ3ZGI3NTUyN2M1NTRlM2RiZDU2NyBsZWdhY3ktdHJ1bmsKKzkwODggMjM1YmM2ZjllMjM3YTY4MDVmYjVmZTJhNzIwZGYyODZkZGZhYTM3NSBsZWdhY3ktdHJ1bmsKKzkwODkgZTZiOWQyMWM4ZTBjMDY4Y2ZkNThjZThlMjg0MWY3Zjc3YWI5NjVkOSBsZWdhY3ktdHJ1bmsKKzkwOTAgNGIyZDhkYzkyZGI0Y2FjMGMxN2MyNDYwNTViNWU4ZWEzYjZiYWVhNiBsZWdhY3ktdHJ1bmsKKzkwOTEgMmU4NzRhNWE5MTJmMmUxYWU5NzE5NzA1ODVmN2FlNWU4MGM3NzVhNCBsZWdhY3ktdHJ1bmsKKzkwOTIgZTJiY2FhOTZjOTQwODQxY2RjYmMyOGQzZTUxZjdkOWM0YjMzMGNjZiBsZWdhY3ktdHJ1bmsKKzkwOTMgZTU0ZDUxNzE5MDJlNmEwMWI4YTFlOWQ3NDJhOTYxYjMxMDliNWNhZCBsZWdhY3ktdHJ1bmsKKzkwOTQgNmZlNWE1MWZlYTMwM2RkNjA4ZDMwOTFiOWQ1MjI4ZjQ3Mzc5MGYzNyBsZWdhY3ktdHJ1bmsKKzkwOTUgMmYwYjdiYWMyMDFjNWEyYWQ0OTU1N2Q1ZWIwNzVlNDI3YTFmNWJhYyBsZWdhY3ktdHJ1bmsKKzkwOTYgMDQzMTNkNGY5M2ZmNzMzMGJhYmFiYzM2YjAzZmVmNjM1OGNiN2E4OSBsZWdhY3ktdHJ1bmsKKzkwOTcgM2M0ZDYyNzU0NjVlOGYzOTBhN2JjMmZjMmZhNzIxMDE5Y2ZkMTZjZCBsZWdhY3ktdHJ1bmsKKzkwOTggMDBiMWI3N2M0MTc3Y2EwZWIyNmJiMjNhNWRlYWViY2NiYjEzOTlhZiBsZWdhY3ktdHJ1bmsKKzkwOTkgYjk2YWFkMTJhMTUwYmI2YzMwMDRiNDg1ZDljY2YwMjhmZDJiZThiNSBsZWdhY3ktdHJ1bmsKKzkxMDAgZjE0MzQ4Zjc1N2M3Njk5ODk4MTIwZGRhMjZlYThhMWExNDZiMThhZSBsZWdhY3ktdHJ1bmsKKzkxMDEgODJkNjc3NGRhMGM2OTcxZWVhNjRjZmFhMzc2MDY2MzVmMGQ4OWZlZSBsZWdhY3ktdHJ1bmsKKzkxMDIgYmUwNzkyMWQ5NzEzMWU3MDZiYjFiMjVkMjQwOTE3NWY4YzU0ZDBiZSBsZWdhY3ktdHJ1bmsKKzkxMDMgZjg4YjBjMjYwOGQ4MmVjMWJiNzljNGRjMmU5ZTk2YjUzOWEyNDYzZiBsZWdhY3ktdHJ1bmsKKzkxMDQgNWUzMWQzODFmYTQ3ZDI1YzBiMzc1YTkwMzI2ODgwODRkMzlkOGQ5OCBsZWdhY3ktdHJ1bmsKKzkxMDUgYTgzOWQzZWZhYmNlNmQ2Mzc5MDJlMTk2ZTg1ODRhZjdjMGYxZWM3ZiBsZWdhY3ktdHJ1bmsKKzkxMDYgZTk2YTgxNjQ3ZjljN2YzNGNjMTM3ZDQ5OTUzYWVkMjIxNzc0MTVmMiBsZWdhY3ktdHJ1bmsKKzkxMDcgY2RmZTNiN2Q3MTg3ZDgzYmI0MzdjYWEwMmY0MzdiN2M5NzA1MTUyOCBsZWdhY3ktdHJ1bmsKKzkxMDggOGY0ZDg5ZjBmMzM2YzgzM2Q1NzViZDE2NmU0NGZhMWYwYjdkNzRmNSBsZWdhY3ktdHJ1bmsKKzkxMDkgZDUxNTFiN2I5ZGJjZmU5ZTRiZjEzYzcxNzNjMjM4YWNmYjc5Zjc3MSBsZWdhY3ktdHJ1bmsKKzkxMTAgNTJkNDBjYzVmYTA4Y2M1YjlkZTIxMGFlODY2NzkwMDlkM2E1YzA3MyBsZWdhY3ktdHJ1bmsKKzkxMTEgZGYyYTJlNDNiZTE4Y2ViM2YwMWM3YWU3MzBkZDQ5YzFiZTkxNDg4ZSBsZWdhY3ktdHJ1bmsKKzkxMTIgZWNmYmFkOTA2MjMxNDIwYTRhOWM1YjliYWNlZTFkMWU2N2Y5N2I3MiBsZWdhY3ktdHJ1bmsKKzkxMTMgMDJmNTljYjI4NmZhYTNhZGQ0YWNlNDRlZmFmOWY3Mjg5YzZmYTM1NCBsZWdhY3ktdHJ1bmsKKzkxMTQgZjQwODI3YmFhYjgxMTJhOGUxNTI0ZTYxMjgxMjgzZWQwNzU4NTUxYiBsZWdhY3ktdHJ1bmsKKzkxMTUgMDMzOTJjMjdiZjk2OGJmZGVkYzM4YzFjNTU1N2U0NDExZTQ0YTMyMCBsZWdhY3ktdHJ1bmsKKzkxMTYgZTZkNzg2OTU4ZmIzMDdmZjVhNzUyMDYwNmY5NzYwNDMzNWQ4NDMzMCBsZWdhY3ktdHJ1bmsKKzkxMTcgZGE2NjJiMzQ1Yzg3NjAyZjY2YWY2M2VlNzJhZDNiNGU4ZmQ3YTE4ZCBsZWdhY3ktdHJ1bmsKKzkxMTggZjkwMzUxYjE1ODFiMmRmMTg0MmJiNWI3ZmY5MWYxNjczNDk1ZDJkYyBsZWdhY3ktdHJ1bmsKKzkxMTkgYWM0YjQ0NDczODY5NDNmNDYzMGRhNGJiMGY3YTg0NDY3ODM3MTU4NiBsZWdhY3ktdHJ1bmsKKzkxMjAgMjUxOGFjOTI1MWYwZmMyZTI2NTAyNmI0OWM0MWQyYTMyZTgyMTliMiBsZWdhY3ktdHJ1bmsKKzkxMjEgNDEyMTcwNDUxMDYzMGUwMzVkYzk3NWY2MzBhZWViYjQzMDQ3YzQ2MyBsZWdhY3ktdHJ1bmsKKzkxMjIgZTFkMzU2NWQyYjdhNDkyNTFlNmUxMjA3N2Y2MTQzYjA1ZDczOTdkOSBsZWdhY3ktdHJ1bmsKKzkxMjMgZTg2ODFlZGEwODU0OTVkNDE4MWZkNDZiNzE1N2RkN2NkYWRmYTRkMiBsZWdhY3ktdHJ1bmsKKzkxMjQgMWRhOWY2MDI3OWM5MzMwMjEwMWUzMjE0ODhiMGQ4NWQxYTU5MzliZSBsZWdhY3ktdHJ1bmsKKzkxMjUgYTdlYTc0YTI3OTkzNjkzODE1YjhkNzIwMTI3ZWRiYzRjZDQ4ZjMyNyBsZWdhY3ktdHJ1bmsKKzkxMjYgMGYyNDk4Yjg0N2JmY2M0OTZhN2VmMDRiYzIwMTA2NzEwNTFjMWUyMiBsZWdhY3ktdHJ1bmsKKzkxMjcgMjA1ODllZDNlOGJkZTVmZjVjODJhMTRkMDNmMzQyY2EyYzUyYTkyZCBsZWdhY3ktdHJ1bmsKKzkxMjggZjZiZTliNWFkYmRiN2Q2Njc3MjllYTFkMjQwZGIyMjBjMjgxNjJjNyBsZWdhY3ktdHJ1bmsKKzkxMjkgY2U1Mjg4ZWMzNmQwMjU1ZTVjMjUxNGIwM2I1MTBkNzU3N2UzNzM0NiBsZWdhY3ktdHJ1bmsKKzkxMzAgNWVhYzFjOGRiMDRmNjQxODdlMTFlNDUzYzVlOTliNDZjMzIzZGM4YSBsZWdhY3ktdHJ1bmsKKzkxMzEgYzZjMWQxMzM2NzdhNzg1NTVkOTcwNzZiMjg1MjdmOWY2Y2MzN2ZiZiBsZWdhY3ktdHJ1bmsKKzkxMzIgNmQ5OGI5NjllMWY2NzA5NzJkZDg0YTczYzMxM2I5YjFhNWUzOTkyMiBsZWdhY3ktdHJ1bmsKKzkxMzMgNDY2ZTg3YjE0NzY3MWY5YzMwMjYwMDEyZmYzNzYwZGFjYzMwZmFkZCBsZWdhY3ktdHJ1bmsKKzkxMzQgNTIzMjlhMTEzZTBmYTNlZjBmOTc2MzYzMzY2ZTJjNmNhOTQ1M2MxOSBsZWdhY3ktdHJ1bmsKKzkxMzUgZTQ5OWM3ZGJmZGYzNTlhNGU4MmM1ZWUwNTBiMDNiYjNhNjE4NDJiYSBsZWdhY3ktdHJ1bmsKKzkxMzYgZGVhZDZlNzdmNDY0MjhlZWE0ZTFlMjMyOTFiNTNhZTAzZjVlYmE2OCBsZWdhY3ktdHJ1bmsKKzkxMzcgMzM0Y2JmZDUxZGIzYWVjZTBkZjE0NjM1NTJkMTgyZjgyZWVlZmM4YiBsZWdhY3ktdHJ1bmsKKzkxMzggYmI4NmJiNzZkNjFkYTNjMGYwNjMwY2VhNDIxYWI1ZGZmNjJjNTdhZCBsZWdhY3ktdHJ1bmsKKzkxMzkgOTk5NTViNjU0MDhkYWEyN2NiNTc1ODcwZWRiZmJiY2Y3MDhhMTE5YSBsZWdhY3ktdHJ1bmsKKzkxNDAgZmJmY2YzOGQyYjM5NWZiZmI3Nzc2Y2FmNTZjZmRlMDBjODJlNzU1ZiBsZWdhY3ktdHJ1bmsKKzkxNDEgOWYwMmViMzZiNTczOWE0N2ZkNjUyMDcxNWViNzRiMWExNjEyNjhiMyBsZWdhY3ktdHJ1bmsKKzkxNDIgNzMxNGJlNjQ1MGFhMDhjYjQ5ZjY0MGU4NGIwNTY1ZjNkMjkxZjExYSBsZWdhY3ktdHJ1bmsKKzkxNDMgZDZkM2U3Y2Y4OTdlMGIxODhkYTU5OWFkZjQwZGUyMDE1ZTgwOTcyYSBsZWdhY3ktdHJ1bmsKKzkxNDQgYjJmMWZlYzZhNzAyM2UzNWM2ZmFjOTBkOTMxMjlmYmYwNjIxN2Q0ZiBsZWdhY3ktdHJ1bmsKKzkxNDUgMDg5YzA0ZDg5MTUxZWIwY2ZlN2E3Y2VjOGJlNDllYzJmZGM1ZmMzNSBsZWdhY3ktdHJ1bmsKKzkxNDYgOTg1NTI3MDRiODhmMjdhNDc2YjAzNDk3NDg1MTRhN2FjMTFmOTUzYiBsZWdhY3ktdHJ1bmsKKzkxNDcgMmY1YzgzNzQ4MjVjODUzNzExOThmNWE3YmIyYjkzODA0ODhiMmIyZCBsZWdhY3ktdHJ1bmsKKzkxNDggOGUzZWUzNTc3ZDRlOTUxNmRiYzE2MjU2NzliNmIwMTlhZDdmN2M0YSBsZWdhY3ktdHJ1bmsKKzkxNDkgMTQxMDVkZjMzYzEyYTIxZjIzMGYyYjdkZDk1M2VlNWI0YWI3YzEzYSBsZWdhY3ktdHJ1bmsKKzkxNTAgOThkNTU3OTNiNjdmYmFlM2FhZWUxNzljY2Q3NmEzYTMzMmY4YTBjNiBsZWdhY3ktdHJ1bmsKKzkxNTEgOTczMTg3ZjFiZDFkM2RjMjBhY2EwOWI3OWQwMTEwNDk1N2U5YWZkNyBsZWdhY3ktdHJ1bmsKKzkxNTIgNDMyZDFiZTAxNjNjNzVjMzBlODNiZTM0YjU2Y2JiMGY2MjZhZDQ5MiBsZWdhY3ktdHJ1bmsKKzkxNTMgY2RiMzI3OWIwNmU3OWQyOGI4NTk0MmM4OTJiZWM0NzEzZjhlMzc4NSBsZWdhY3ktdHJ1bmsKKzkxNTQgMWJiOGI3ZmU0NWVjM2VkMGEyNzhhMGNjNzg1YTNjZGM0YWI3NDhhZCBsZWdhY3ktdHJ1bmsKKzkxNTUgZTQ1YjgzNzA4ZDllOWJiZGQzODQzNTRlNzkxYWJkN2QxY2ZkODI5MyBsZWdhY3ktdHJ1bmsKKzkxNTYgZGUyZjhmNDk0YWUzNzM3ZWY5MmI4YTRlZDA3MDZjZTM3NjgwZmU1OSBsZWdhY3ktdHJ1bmsKKzkxNTcgZjk1YzlhZTJhYWVmZWU5NWE3MGNhYTE3MWU2ZmI2YjI2Yzg5NDE2YiBsZWdhY3ktdHJ1bmsKKzkxNTggYjhhM2JhNmU3YmM5ZGVmNmE5OWM0Mjk1OWM3MmM5NDNmYzQ4NWUzMSBsZWdhY3ktdHJ1bmsKKzkxNTggOGZmNThiNTczMGYwNmJlMDhmYmJkYzJiZjU5MjIyNmY3YTczNjIwMSBsZWdhY3ktdHJ1bmsKKzkxNjAgZWZmYTYyYjAwNjJiN2QyY2E1YWJjMTZiNDlmNWU0NjJhODMxYmY0YSBsZWdhY3ktdHJ1bmsKKzkxNjEgY2I4ODliNjc4MDUzYjAxMzVhZWI5NTdmYjliMzE3ZGE2NmZhMjc5NSBsZWdhY3ktdHJ1bmsKKzkxNjIgMDE3NDY3ZGU3OTMzZThjNzNiNTc0NzJkMTQyM2I1NjRiZGJmZDA4MiBsZWdhY3ktdHJ1bmsKKzkxNjMgODMxNDdlMDJlODBkOGUzMjNkNDkwYmFhZGU3NjJjOTlkMjIwMGUyNiBsZWdhY3ktdHJ1bmsKKzkxNjQgMmI3ZmJkNzZjZWY4NzA1NGNiNGIzYjEwZjM2MjZhNjVkMDE0NmY1MiBsZWdhY3ktdHJ1bmsKKzkxNjUgYTU5M2MyMjBlZGNjNjU5M2Q1MGY2Yjg0NGI4ZDJmNjBiYWQyYjQ1YSBsZWdhY3ktdHJ1bmsKKzkxNjYgNTNhMDdhZGE0OTlhZjc4ODY4ZTVjNmYzZWU2MzcyNDlmYWI2ZGFkMCBsZWdhY3ktdHJ1bmsKKzkxNjcgODRiNDNmZjQyZmE4MGUxYWViMzc3OWYwYmFjMTA0MWUzNmQ2YmJjNiBsZWdhY3ktdHJ1bmsKKzkxNjggYzA3OTg0ODdiNzI4Yjg3YTExNjJiY2FiYjI4NDc3MzEzZDI3MjNjNyBsZWdhY3ktdHJ1bmsKKzkxNjkgZDc5MGZlMjVlMTQ4ZWY5MmViZDgzY2JhNmEzMjU4YjcwZDgxY2Y1NCBsZWdhY3ktdHJ1bmsKKzkxNzAgNGJjYmJlYjYzYjg5OGU1NDMyMzQyZWZhNjlkYTI0N2EzODA2NDE4YiBsZWdhY3ktdHJ1bmsKKzkxNzEgNDBhODQyMGI0YWIzNmU0ZWUzMjc2NGZkY2QyYTcyYjFjNjJlMzQ1MiBsZWdhY3ktdHJ1bmsKKzkxNzIgYTcyYmY0M2E4ODcwYjFlMGQzMzQzN2QzNjc2NjQzMjJjYjc4YmYxNyBsZWdhY3ktdHJ1bmsKKzkxNzMgYjlmY2I5YTM0MzMyODIyZjY4YzY2OWY4N2I1ZWQ5YjM2MTAwMGE4ZiBsZWdhY3ktdHJ1bmsKKzkxNzQgZTkyMTU0MDIyYjQ4ZWU2Y2ZhNzE5NTVkMDc1ZjM1YzEzOWRmN2ZlOSBsZWdhY3ktdHJ1bmsKKzkxNzUgMmU3NWIzMWQ5NGM4NGYzMWE5MTlmNGE5NGQyZWMwMTA4MWI5YTUxNiBsZWdhY3ktdHJ1bmsKKzkxNzYgYjczZWI0ZTZmYWNlY2ZlZjlmOTIzYWU4NWVlOGY2MzQ4Yzc0MWM1NyBsZWdhY3ktdHJ1bmsKKzkxNzcgOTAwMWMwYTdiZTk4NjMzOTY5N2ExMWIzMzAxMTZkMmM5NTEwNzk4ZiBsZWdhY3ktdHJ1bmsKKzkxNzggYzY5MDM0YThiM2Y0MzRmN2E0ZjE5MGQxYzU4ZmIzMTA1NmFiNzExZiBsZWdhY3ktdHJ1bmsKKzkxNzkgNGQ2M2EwMDFjMjVlYTljMTJiYTg1NmZhY2I3ZDQ2ZDAxNTUyNDFkMyBsZWdhY3ktdHJ1bmsKKzkxODAgMTUxNjAxOWM5MGJlODhmNTAzOGRiNDcxM2ZlY2Y2ODM0MjdhNDhjZiBsZWdhY3ktdHJ1bmsKKzkxODEgYjkzNmNjZjQyZWEyZDUxYzEzYWQ2NmYzOGM4NWU5MzA1MzBiZTMzYSBsZWdhY3ktdHJ1bmsKKzkxODIgOWQ4ZTQ4ZjNiNDk4NWYwNmM1NmUxODdjOTE0YjU1ZmMyMjY0YTJlMCBsZWdhY3ktdHJ1bmsKKzkxODMgMDYxNTc5Mzk1MDQ2NTAxZDcxMTY5Yjk5M2RmYmI0YmIxZmU1MzEzZiBsZWdhY3ktdHJ1bmsKKzkxODQgY2JjNWU3ZDZhZDIzNWZiYTkwZjliNjY3NzFiZjhhYmQyYjhjOGZmMiBsZWdhY3ktdHJ1bmsKKzkxODUgMzlkOTZkOWQzY2NiNTZhNjFmY2U1MjEzYjNjM2NkNzljZDc2M2M4NyBsZWdhY3ktdHJ1bmsKKzkxODYgNDdhM2YzYjYwNTAyNjNhYWM5YWVjZDA2OTJhMmQ4MjI5ZGZlYTJjMyBsZWdhY3ktdHJ1bmsKKzkxODcgMTJhMWM5ODQ1MDc0NDA3NmQ4ZWFjNjZkMzJiY2NkMzRmYjFjNTQ4OCBsZWdhY3ktdHJ1bmsKKzkxODggOTBjNjM5MGI0OTQxNzNlZGRlODQyYTQyNjdhNWYzOWVjYTg4NzRhYiBsZWdhY3ktdHJ1bmsKKzkxODkgOThhYTkyN2Y5MDdjYzAzZDU0NTkwNWIzMjE2Njk5NDY2Zjc0ZmU0YSBsZWdhY3ktdHJ1bmsKKzkxOTAgZmYxNjQ0OGU4ZjI0MTcwODBjYmUzZTY3YjYxNTBiNDg4NjgxOTBjOCBsZWdhY3ktdHJ1bmsKKzkxOTEgOGE1YTAxMjMwN2JkZDEwZjk2OWJjN2VhNmY1YTlmNzE1ODExYjAyMyBsZWdhY3ktdHJ1bmsKKzkxOTIgYTViYjBiOGRjMzIwNDJiZmM1NWE0ODEyMzY0NzhiMWU3MDZjM2UyMCBsZWdhY3ktdHJ1bmsKKzkxOTMgMzliNDEzYWMyY2M5MWMxYjU5ZDJjNmI5ZTU0NjQzYzRhNmI5ZDI4NiBsZWdhY3ktdHJ1bmsKKzkxOTQgZDg1NGExYzdlNzRkMzMxYTc1MjkzZWJmNWRkMWE3YmViNDU3ZWYxMyBsZWdhY3ktdHJ1bmsKKzkxOTUgNjRhNzUyMTFjZjcyOWNmNGFjMDZlZDcyNTRkZWU5YzI4MzY0OWRhMiBsZWdhY3ktdHJ1bmsKKzkxOTYgMzJmMmVkYTI5NDZjYWQ3MDFiNDNlNmM4YTdlYzYyZDRiZTkzMjE3NiBsZWdhY3ktdHJ1bmsKKzkxOTcgZmFlYmMxOTQwNDMyOGIxMmJjMmJjMzEyMzQwMmE1NmM1ZDI5NTE1OCBsZWdhY3ktdHJ1bmsKKzkxOTggOTYwODUzOTAyZWJlNDE5MmUxNGNiM2Y4NGJhNGRiZDUyOTlkYjMxZiBsZWdhY3ktdHJ1bmsKKzkxOTkgYmJmOWU0YjMxZDg0YzRjMjEyZDNmNWYyZDU5NDE1MGMwMTkwZjk3ZSBsZWdhY3ktdHJ1bmsKKzkyMDAgMjFkY2UzMzI1MzIxOTYyMjFiYzBiMWFhZGUxZWFiYjAzMTI3MjI4OSBsZWdhY3ktdHJ1bmsKKzkyMDEgYzNmODViY2IwNDVhZDczZjYzNzUyMThjYTMxODM0NmVjYzhiOGU4YSBsZWdhY3ktdHJ1bmsKKzkyMDIgMmUzYWNiMjE0MGJmM2E1ZmY4MGM4Y2ZjMzNkNmExMTg5NTcyYWUyOSBsZWdhY3ktdHJ1bmsKKzkyMDMgMjgzZDFjYTU4NWQ5NGYyNjYzZjExY2I1M2FmZjMwYmRjYmZlMTI2MSBsZWdhY3ktdHJ1bmsKKzkyMDQgNGYzNjQyYTIwMTM3MmU2ODI0M2NkNzlhODU4NWU0ZTBiMmU0ZTRlNiBsZWdhY3ktdHJ1bmsKKzkyMDUgMjY2MmM5ZmUxYjNlMDNjYWEyN2ZkZjU2MTY0ODkyMzViNDEyYjQxZCBsZWdhY3ktdHJ1bmsKKzkyMDYgN2NjZTQ2OTE2MGM2ZWI4NTNiM2E4YmY0NGFhNDEwY2UxZDI4ZDBlZiBsZWdhY3ktdHJ1bmsKKzkyMDcgMTFhNzUxNzA1NGE1OGVhODAxNmE2NDUzYTVhYWMzN2U0MmE2MmZlNiBsZWdhY3ktdHJ1bmsKKzkyMDggOWM5YTg3YjViYjE3ZWMwMWVhM2IzZTI1MDNmYjA0ZjAxZTIzZjkzNiBsZWdhY3ktdHJ1bmsKKzkyMDkgMjE2NTYyMDRkZDRmYmQ5YTY3MWM2NDg3ZThlMjcyNjdmNjc0N2E4MCBsZWdhY3ktdHJ1bmsKKzkyMTAgMDlmNmE0OWFjYTEyZWY3MDZkMjQ4NjU0ZjJkZTdmY2NmZmY5ZDJlNSBsZWdhY3ktdHJ1bmsKKzkyMTEgNjVhZTcxMWRiMDBjYjVkNTU4YmI1NGM4MzdkNTRjMTliODc0MWJmNyBsZWdhY3ktdHJ1bmsKKzkyMTIgNGM5YjI1NmEzYmVlMGM5MTI4YTFlYzhhMjdkZGVhMWY5NmM0ZTdkOSBsZWdhY3ktdHJ1bmsKKzkyMTMgZmFiOGFiNWRjNWY4NGU4ZjZlOTZhZDk4ZDJjYzBiYjdhNWIyNTNjNCBsZWdhY3ktdHJ1bmsKKzkyMTQgNTNmZDQyYWEzYmJmY2FjYTBlMTU0NmIwZDY0ZTUxYzMyMTI4MGZiYiBsZWdhY3ktdHJ1bmsKKzkyMTUgYWIzZDdhMjhlMDdkMjU4MmFkZjA1ZDllZDQxODhiNGQxOTJlMWRkZiBsZWdhY3ktdHJ1bmsKKzkyMTYgM2JlZjU1Y2I3NDRiNmU2ZGU5Y2RlYjA4ZDA2YjJjN2FhMTg3YjhmZiBsZWdhY3ktdHJ1bmsKKzkyMTcgMWQ0MTc1ZWQ2YTljZWVlMzE1NTgwZjA4MmE1NWM1ZWZlZDQyZGFjNyBsZWdhY3ktdHJ1bmsKKzkyMTggMTg1M2I1YmMwNTQ4YmEwNjJjMzU0MDMzZTgwZTM5ZTJiODQxNTg4MyBsZWdhY3ktdHJ1bmsKKzkyMTkgNGNmMGRhMDcxZTJiZWEzZTliNGIwNzVjMGNiMmI2NTMwMDEyNzAwZCBsZWdhY3ktdHJ1bmsKKzkyMjAgNDg4N2Q3NTQ2OTJhZWZiMTAwYmNhYjQ1NDJiM2M0MDRlNDA1NWM1MyBsZWdhY3ktdHJ1bmsKKzkyMjEgNGY2OGM3YWM1MTE1NGRjZGNlMGY0NTgwNDJjZTQyMDczNjQ0MzM1YSBsZWdhY3ktdHJ1bmsKKzkyMjIgODA4NDhlOTE4YmNjMTg0MTQzYTllNmI0ZDQ0YjVmNzBmYTZhZWRiOCBsZWdhY3ktdHJ1bmsKKzkyMjMgMWRiNDFjYTQ1YzdmYzg4NTQ0ODc5NzI4ZDQ2NDQ1NjZhMzVhYjQyNiBsZWdhY3ktdHJ1bmsKKzkyMjQgYWJlM2FhZDllMDM4NWU3ZTY1Zjc1NDJkZDJiMmM2NWRkYjk3MzViNCBsZWdhY3ktdHJ1bmsKKzkyMjUgZmNmZjUzMTYzNGUxNGY0MTNkNzYxNTM2ZTIyMmE3MWQ1YjAxODgwZiBsZWdhY3ktdHJ1bmsKKzkyMjYgNzRlYTIwOGQ0NmNlODFhYTNkOWQ3NDgyYmQ1NzRjNTRkNzI0ODhlYSBsZWdhY3ktdHJ1bmsKKzkyMjcgNzkzY2FmNTE3NjQ3OWU0ZTRhOGU0N2ExZTM2YjMyYjNhNmZjMTM0OCBsZWdhY3ktdHJ1bmsKKzkyMjggNWU3YzkxMzU4ZWQyY2RlYTkxYzg3YzYwMGFlNTU4M2U3MWUzM2M1YSBsZWdhY3ktdHJ1bmsKKzkyMjkgNGRhZjA5MGZmMTYyMjY1MTk1NDM0M2Y3ZmI0NjY1YjhmMzE5YjUzYyBsZWdhY3ktdHJ1bmsKKzkyMzAgZWJhNmFkZjNmODQ0ZWY2NDdmYWI4OTZhMjM3Njc4NzcyNDVhZGJmNSBsZWdhY3ktdHJ1bmsKKzkyMzEgZTJlNWJiZmFkMWM4MWY3M2FiMzI0MTNmYzVlMGY1MDk4NWNhZWYwMyBsZWdhY3ktdHJ1bmsKKzkyMzIgMDdlOTVlZjU1ZjY1OGU3ZTY3OTVmYjBmMzM2MzBhMGZhZTkxNmIxNCBsZWdhY3ktdHJ1bmsKKzkyMzMgZmQyOWNlYmU4OGRjOGI0NTYyYzQ0YWNiNTJmYTg0OGI2NmY2N2Q2ZCBsZWdhY3ktdHJ1bmsKKzkyMzQgZTQwNzBkYzZhYzM1ZDVkMmYzZjIxZTE5ZDgxM2U0ZDgzMDc1M2FiNCBsZWdhY3ktdHJ1bmsKKzkyMzUgYWZmNmZmNTJkNWU3ZWQzMTJiZDg1MzRiOGZlM2Y2ZDMxMDE1YzQ5ZCBsZWdhY3ktdHJ1bmsKKzkyMzYgMGI1ZWIzMmI1NTFkMjgyYTJhNjY5ZWU0YThlNTRiMzBjZDM0OTAxMCBsZWdhY3ktdHJ1bmsKKzkyMzcgY2FlOGFhNDQxZmJkNGQ3YjY1ZTdlM2Q5YjJiYzExYjZkNzMwZTE5NiBsZWdhY3ktdHJ1bmsKKzkyMzggMDIwNGQ0NjFkMjE5Njc4OGVjMzQwYjkwMzMwNzNlNWEyNzFmZDVlMCBsZWdhY3ktdHJ1bmsKKzkyMzkgNzQ4YWJjN2Y4ODA4ZjQ4NDM5MTRmMjU1M2RlNGE2MzUxOGQxZWE4MyBsZWdhY3ktdHJ1bmsKKzkyNDAgMGEzYzc0MDJkMzk1M2QwN2YwMDBiYzJkYWUzOWNmMTU1MmE4Y2U1OCBsZWdhY3ktdHJ1bmsKKzkyNDEgMTI4MjRmZTA0YTA4ODUyMWRjNTRmYTYyZWIzNWM0Njc4NjU4YjE4OCBsZWdhY3ktdHJ1bmsKKzkyNDIgMDc1MmJiZjc3ZDgxM2ExZjU3ZGY3ZTNiN2IzZjQ2YTgzYzI1NGFiZCBsZWdhY3ktdHJ1bmsKKzkyNDMgZTZjMDMzZTliNzY5MjdiOWViNTFmMjdjNmMxYTU0ZjM2OGMxN2JiYyBsZWdhY3ktdHJ1bmsKKzkyNDQgODkwOTJhZDFlNjYwNzBkMTg2NWY4MTIwZTliZWVmZjJlYzg0MjI4NiBsZWdhY3ktdHJ1bmsKKzkyNDUgZTk3YjgyMzc1OTFjNTgxNTE1NWQ2MDlkMzc4NzI4ODg3N2M3NGQ0OCBsZWdhY3ktdHJ1bmsKKzkyNDYgYTI5YTZiZjAzYWYzMzIzYWVmOGEzOTgyZDEwZWFkZmYxMjhlMmQ1MSBsZWdhY3ktdHJ1bmsKKzkyNDcgMjJmZGZkMjgzYzljZWQ2ZDU1ODRjZTVjOTdhMjIwOWVlZDI4MGYyYiBsZWdhY3ktdHJ1bmsKKzkyNDggYjVjZDc2ODgxMmNiMzI0MTA4MjExMDc3NGM3ZGQ0Y2JiYTZhZDk2YSBsZWdhY3ktdHJ1bmsKKzkyNDkgMzNlMjE0NTI1MGFmZWU4MmNlNWNiOWM4NzYzZjRjMDgyMGViMmY1OSBsZWdhY3ktdHJ1bmsKKzkyNTAgODMyYTgwN2QwMDk4OGVhZDhjNjJiYjQwZWE0ZWRlN2Q2MzViNjY2MyBsZWdhY3ktdHJ1bmsKKzkyNTEgMTRkNmI3YTQyOTE5NDIxNTRlMGE2OWVlMmE0YTM5YzEwYmM4ZmQwNCBsZWdhY3ktdHJ1bmsKKzkyNTIgMGVmMjNmNTEzYTY1OTU5NzczYTE1YTk4YjU5MmM0MzhkMDAzNDkwYyBsZWdhY3ktdHJ1bmsKKzkyNTMgMzExN2FmOWRiZmNlNzkzNDZlZWUxZWQwZmJjZWNhNDVmZTUxMGQxNyBsZWdhY3ktdHJ1bmsKKzkyNTQgM2RmZTA1MTFiYzNiMzI2MzE1MDNjZTUxOGJjMmVhOGNlYTcyMTdmNSBsZWdhY3ktdHJ1bmsKKzkyNTUgZGFhNzdkOWFmMzRjOTAzMzlmOWMzZjliOGIwMzlhNjBlMWM3ZmM1YiBsZWdhY3ktdHJ1bmsKKzkyNTYgYmY2ZGU4MmFhYjBkODgxYWI3ODczOWUxMmQ0N2EyNzYxMzAyYTNkMiBsZWdhY3ktdHJ1bmsKKzkyNTcgNGRiZmZmYzNjMjNiZTM5NDVkYTQ0Zjc0NGFhZGExZDBmYzRiYmIzZSBsZWdhY3ktdHJ1bmsKKzkyNTggOWNmOGQxNGYzNTY1MmNkOTNlYmYzNmZjMDBjOWEzN2ExZmJjZDIyMiBsZWdhY3ktdHJ1bmsKKzkyNTkgYjk2ZDlmYmIyNGU1NjE0ZmJlZmNlODZkZWEzZjExOTkxMDNiNDk0ZCBsZWdhY3ktdHJ1bmsKKzkyNjAgODk4MDIwODdmODA2NjljZjc5YmVmZWMxNDQyYWUyNzE5ZDdiODAyOCBsZWdhY3ktdHJ1bmsKKzkyNjEgYzE4NTAxNzcwODk1NDUzZTczOTYzNzhjMGVkZWZiMGU3Y2M3MTg3YiBsZWdhY3ktdHJ1bmsKKzkyNjIgMDg0ODAwNTAyYTQyMDg0MjM2ZjhiZDQ3NTgzY2Q3NjdmMmU3YTRjMCBsZWdhY3ktdHJ1bmsKKzkyNjMgZjRlM2E3YWViOTQ5ZmYzZWQ2NWUxZGUxMzBiMTFlMTEyYzIxODEyYiBsZWdhY3ktdHJ1bmsKKzkyNjQgYmMwMDdjZjFkNmJhM2ExOTdlYzBkOTYxOTllM2IyOTRiMTFlMDAyMyBsZWdhY3ktdHJ1bmsKKzkyNjUgZjY5NTQyNzRlMWNhNDhmODg0NTIzYmUwYjBiNzI0M2ExYTY3ZTYzMiBsZWdhY3ktdHJ1bmsKKzkyNjYgY2VhYmQ1MDMxN2UzMGVkMjExZTA2M2RkNzUyYjhjNmIwODk2N2EwNSBsZWdhY3ktdHJ1bmsKKzkyNjcgYmI0NDBhMjk3NWFiOTkxNWNkODk2MmEwYmZjOGFhMjBiODkzMWNiMyBsZWdhY3ktdHJ1bmsKKzkyNjggYjFlNmMzZmU1ZGU4NTQ1ZDRmMWRkNWY3NGE4MTJlZjljMjYwODEwYSBsZWdhY3ktdHJ1bmsKKzkyNjkgOWU3NWQ5NDI1NmUwZTZhNTJiNmFjZTMwYTA3NWRkZjgyOTdkNjYxYyBsZWdhY3ktdHJ1bmsKKzkyNzAgZjUzM2MzMDc5NzgwYmZlOWE1NjcxNGVjZjlmOGU3MjUzMjliOGIxNyBsZWdhY3ktdHJ1bmsKKzkyNzEgODU3ZjkwNjUwNDFkNTIwYjUyM2EzZGI1NTk4NTEwOWRmNWRlZWMyZCBsZWdhY3ktdHJ1bmsKKzkyNzIgYjA5MmVlMTlhZTRmZWMwYmE1YjMyMmY4ODM5MTU3N2E4NDRmZDI2MCBsZWdhY3ktdHJ1bmsKKzkyNzMgNWIyNGNiYjFmOTliYTI1YWY1MjIxNzM2Y2VkMGNhYjQ5MWJjNjIyMyBsZWdhY3ktdHJ1bmsKKzkyNzQgZDEwMGQwMjUyY2IxYzVkY2ZkZjFmNmViNzQwY2FkNTAzN2MzZGIyYiBsZWdhY3ktdHJ1bmsKKzkyNzUgOTU0NDE3MTkxZmJmYzc4MWVjZThmNmZhYTg4YTUzNzUyNmNkYWM0ZiBsZWdhY3ktdHJ1bmsKKzkyNzYgMGJhNTBjNzQyOWU1MTAzNGIwZmEyOThhMjY4NzY0MzNhNzA3ZjkxYyBsZWdhY3ktdHJ1bmsKKzkyNzcgMzQxYTZlNDdhOGZmNjQ1ZmVhY2M2ZTNkYmFmNzZiZjgwM2RjYzk3YiBsZWdhY3ktdHJ1bmsKKzkyNzggNWVkZmViN2FhNmVhZTNkNzA0ODg2MjJjZTVhYzM5MmI5ZjZjNDU2NiBsZWdhY3ktdHJ1bmsKKzkyNzkgYmNhOTQ4MTk0ZGVhZjQ4Mjk0ZjBkYjYyMWYzYWNkNGMwMzFmOWEzNCBsZWdhY3ktdHJ1bmsKKzkyODAgOTg1YmU2ZGM4OTRmMzVmYWIwNWJiNDg0ODhlYjFlNzA3NTE4ZDJlOCBsZWdhY3ktdHJ1bmsKKzkyODEgYWZiYzExZGQyYzY1ZTVmYjgzYzZmNzdlM2EzYjZiYjk2MmJlZDg3YiBsZWdhY3ktdHJ1bmsKKzkyODIgZTIyNGM0MWJkYWM2NTA4ZjA3NGZlYmRjMjg3MDIzZGJlMmY2ODg3ZCBsZWdhY3ktdHJ1bmsKKzkyODMgOTNlNDgwZGVkY2YwOTQwNzFmODQ4N2U5ZDUzZjE1ZTViNGUyMzUzYSBsZWdhY3ktdHJ1bmsKKzkyODQgYWMxYjI2MWYxNjkwNGE2NjU5ZmNkNjI3ODg4ZDI4MGRmNzBiZjdhZCBsZWdhY3ktdHJ1bmsKKzkyODUgN2Y5MTlkNDcwMTI5M2ZjNWRkNjBiNmU2ZWJjMDllMDk4MjJlYTUxZiBsZWdhY3ktdHJ1bmsKKzkyODYgYTg3YmM1M2ZjMWFkNmVlNzViYWVhZTJiMDkyMzlhMDUxM2M4NDZiNyBsZWdhY3ktdHJ1bmsKKzkyODcgMTQwZTY1ZjgzOTUzM2ZhOWZiZTk3MTk3MDE5N2UyNTI5OTZlNjE2YSBsZWdhY3ktdHJ1bmsKKzkyODggY2E3NTVmYjFlZmI4YWY0M2I1MDEwOTI5OGI5NjU2MTA4ODlhYjY0NiBsZWdhY3ktdHJ1bmsKKzkyODkgOWI0MDZjOTI1MTQwODI1ODI5ZWYxNDJmMzFiMTQzNTNkYTg2NWQ5YiBsZWdhY3ktdHJ1bmsKKzkyOTAgZDg1MTQ3ZGNlMTg1ZDI2MmYyYzA3OGRhZDUyMDU2YzE3NGMyMmY5ZiBsZWdhY3ktdHJ1bmsKKzkyOTEgNjY3YTg1ZWJmYzNlZDBhYmFmNjAwM2M4M2ZjYTZmNjE2OTk2ZjFmNSBsZWdhY3ktdHJ1bmsKKzkyOTIgMGZlM2RjMjhiOTJjMGM5NmMyOTVlNTljNTM4MzgxZDY1MTFlYmY1YyBsZWdhY3ktdHJ1bmsKKzkyOTMgNjEzMWQzZjlhZjJkNjA5MjlkMDAyM2E1NWExMjY0MDU4N2ExZWRiYyBsZWdhY3ktdHJ1bmsKKzkyOTQgMmUzZjI0NGYxMDVmMzU3Mzk4ZjkyNzc1OTVlZTQwYmY2NWZjZDNhMiBsZWdhY3ktdHJ1bmsKKzkyOTUgN2RiYTJmM2I2YzgxMzVjM2U3N2EwMDE2ZGNjN2VjMDIwM2I0MDhhMCBsZWdhY3ktdHJ1bmsKKzkyOTYgNzczZmJjOGVmYmQ3N2UwNzJkOGRjMWY2YjdiYzEwMmFkNDYyZDk0NCBsZWdhY3ktdHJ1bmsKKzkyOTcgOTU5MjliMDFhMjYyNGFhMjZmM2MxZTNjYWRkMDQ1NDQ1NDllYjU0MSBsZWdhY3ktdHJ1bmsKKzkyOTggOGVmNDgxYzdjM2FmYzY0MzAwN2YzZjllZDcyYjcyZWRjNzM4ZDBkOSBsZWdhY3ktdHJ1bmsKKzkyOTkgYjE5Y2Q0MzEzMTI2NjNlZjQ1NWQ4YjQ2MWI1MDU3YjRlZDFlNzk2NSBsZWdhY3ktdHJ1bmsKKzkzMDAgZmMxMWZmMmM3NWIwNDk1ZGQ1YWNkZjBlOTg0MTkwMDA3ZjgyMWI2MCBsZWdhY3ktdHJ1bmsKKzkzMDEgNjYzYTQ5ZTRiZWQzMjY4Mjc4YzczOGU2YzQ1MWM4MWM1NGM0ZjQ4YyBsZWdhY3ktdHJ1bmsKKzkzMDIgZTM5YzNiNzc3MDQxNzJjODVhZjAzNDQxOTE3N2FiMGUxYjM0ZGFmNSBsZWdhY3ktdHJ1bmsKKzkzMDMgZWNhYTQzMWM1OTY5ZDliM2EzNDI1NDRlMTA1MzVkN2IzN2VmMGVhMiBsZWdhY3ktdHJ1bmsKKzkzMDQgYTE1NDVjYmYwYWRmN2Y0NmM0OTAwYzcxZTg4OTUzMGNiYzA4NmRlYiBsZWdhY3ktdHJ1bmsKKzkzMDUgOWZlOTdiNzYzMDY4YjY2OWNiOTU4OWQ2OWU5NWE1NjdmYTgwNGFiMiBsZWdhY3ktdHJ1bmsKKzkzMDYgZWU4OGM1YWJjMzQxZWNlOTM4YmIxZTE0NWMzMmRjMjg5ZTExODFhYyBsZWdhY3ktdHJ1bmsKKzkzMDcgMzUxYzcwYjhlNzMxM2ZkYjRhOGM5ZWFiZDVmZmRkMTc5NDVlYTc2MyBsZWdhY3ktdHJ1bmsKKzkzMDggOTkyMDlkY2YyOTQ2OGNlNzMwOGMyODRkOTczMTFmZDBiODc1YWFmMCBsZWdhY3ktdHJ1bmsKKzkzMDkgYWNmMjQ3NDY1ZmViZmRlMWJkNDFkY2U0MjVhYTZiNGExNzFlY2I2ZCBsZWdhY3ktdHJ1bmsKKzkzMTAgOWE1N2I0MTA3NDhkNTE1ZTg0YzdlYjAzNDQwZmIxYmVkOTgxZGNhMSBsZWdhY3ktdHJ1bmsKKzkzMTEgY2JmYzVmMzMyZDlkNGYxOWYzYTQ2OTYzYWFiNWExMTFjZWY1MTliMCBsZWdhY3ktdHJ1bmsKKzkzMTIgYWFiMDgyYmZlNjU0ZTUzZWU5N2MxNmQzYTc1MmI2YmM3YWYwZTk3MyBsZWdhY3ktdHJ1bmsKKzkzMTMgZGIxOTFhY2Y4ZTA2OGU2YWFjNTNmODc2ZDU2NTRhYWRmMDlhNjAzOCBsZWdhY3ktdHJ1bmsKKzkzMTQgMDI1NWI1ZWNkZTEwNjU0Mjk5ZjAzMTY4MWJjMzhjZWU5NDJmOThmNyBsZWdhY3ktdHJ1bmsKKzkzMTUgOTYxODFhNGE1NDgyNDliZDZhYThhZTkxZDZmMTI2YTU3ZTQzODg2MCBsZWdhY3ktdHJ1bmsKKzkzMTYgYjc1NTAwZWVlZDliMTJkMjc5MWVjMDIxNGE2OTUzYjUxYzdiOThhMiBsZWdhY3ktdHJ1bmsKKzkzMTcgNjIzMzM4MzUxMmJhOTlhMTgyZWJkZjVlMmEzOGNlZjRmMTlmZWM4NiBsZWdhY3ktdHJ1bmsKKzkzMTggNThiZmVjZTAxOTY4Y2MwOWMxNmYxMWQ3MzkyNDVhNDhkOTYzZDQ0NyBsZWdhY3ktdHJ1bmsKKzkzMTkgZDcxMzliYWM5Yjk5Nzg1ZWJkNmNjYjEyOWJlNTk2YWY2YmE2ODc0NyBsZWdhY3ktdHJ1bmsKKzkzMjAgNDE2Yzc5NTcyZjExODcxYjZlYWQxNzc4ODgwNGRmODhlYjdjMzkzMCBsZWdhY3ktdHJ1bmsKKzkzMjEgYWM2NWRiMjA1NGM5YzY3OGNjNGMyYmU5ZWNiNGIxYmI3YTYxYTFlZSBsZWdhY3ktdHJ1bmsKKzkzMjEgZWI3ODY1OGQ4MTlmYjBhZjA5YThlNmY5YmVkY2I2NzA4MDVlZDVmNiBsZWdhY3ktdHJ1bmsKKzkzMjMgM2ZmZjM0ZWE5MWFiNjQxOGQ5MmM3NTA1MmQ2MWJmMTMxYzMyM2E4ZSBsZWdhY3ktdHJ1bmsKKzkzMjQgNTk5ZWVhOTMwODQzYzE0Y2YyYmJkOTM0ODg3MTQ4NDQ4MzcwNGYzZSBsZWdhY3ktdHJ1bmsKKzkzMjUgOWRlZDRmOWUwMTllZDBhMWU1YzZlYWYxNzQyYzFhMzA2MTVkYjMyNSBsZWdhY3ktdHJ1bmsKKzkzMjYgOGFkYjM1MzI5YWYwMjRkOTUzN2IzMWVkMDdiMjNjZTYwZjg2MDlmMSBsZWdhY3ktdHJ1bmsKKzkzMjcgNTFmOGQ0ZGE4MWU0YjA3Nzk4NjE4ZWVjZDY0NjVlOGRjYmZjNTA1YSBsZWdhY3ktdHJ1bmsKKzkzMjggNTJmZDgyODE2NTYxNDViNWU3MzQ4Yzk1MTQ0YzQ3NTE4YzA3YWFkNyBsZWdhY3ktdHJ1bmsKKzkzMjkgZDNlNTE2ZWY5Y2QxMTIyZmQzMjcxZGZlYzhlODU0ZDk1OTM5ZDY2MiBsZWdhY3ktdHJ1bmsKKzkzMzAgYTQyM2UzZTBkYTQwMTBjYmQyNTY2NWIxYjJjYTQ5OWQ2MTEzZTk2OCBsZWdhY3ktdHJ1bmsKKzkzMzEgNjcyYTY1N2FiYmE4N2M5MGM1NWYwZTdhYzQzNjM4MTRkMTNiZDNkYyBsZWdhY3ktdHJ1bmsKKzkzMzIgZmQwN2Q1MDNhMzNjNWU1NmUxY2JmYzE5MDczYWFkZTRkOTBhY2I0YSBsZWdhY3ktdHJ1bmsKKzkzMzMgMWFiMzA3OTUxZjRlZDA4ODE1NjI1MGFkMWJmNzNhZmJhMDQ4YjRmOSBsZWdhY3ktdHJ1bmsKKzkzMzQgOTI3NGZhYjJjNWYyMGY1YjcyMDVlM2ZjYTkzNDMwYmMxOTk3MjUxOSBsZWdhY3ktdHJ1bmsKKzkzMzUgNjdjMTBkOTg5MDhkMmJlYjc3MTRlZjQxYjhkYTA1OWMyYTcwMTVhZSBsZWdhY3ktdHJ1bmsKKzkzMzYgNjFkOTczZWI0MTAyY2JmZDE5N2EwNWM3MDIyNmRhZWY3NjAzM2QwMCBsZWdhY3ktdHJ1bmsKKzkzMzcgNTFjOTMwMDc5NTE0NzUwMDQ0OTY3ZTE0NTI5OTEwYTIxMWQxOWE0MSBsZWdhY3ktdHJ1bmsKKzkzMzggOWYxZDNlZWI3ODRiOTMyNTkyZDlkYTAzMzQxZTQ3YmE0YmIwMTExZiBsZWdhY3ktdHJ1bmsKKzkzMzkgNzQ0Yjg5OTQxNDhhZTMyYzBlYjc3MGEyYWE4OWI5ZGMxMmI2OTQ4MiBsZWdhY3ktdHJ1bmsKKzkzNDAgYzViZmIxZGU2MWE1YjcwNDE5ZGNkMzRmN2RmYzIwYTRiMmZiODU3ZSBsZWdhY3ktdHJ1bmsKKzkzNDEgMzIwMjAwNWE3MjBiNDk3NTcwYWE4MGUyZGZmYzE4OWFkZmI1NjFlYSBsZWdhY3ktdHJ1bmsKKzkzNDIgMmRlMzk4ZjM3MGU4NmUxNmRkNTE0NDhlNWUxNDQ2MmQ3ZDUxYTNhMCBsZWdhY3ktdHJ1bmsKKzkzNDMgYzhjZGUxNWRkOGNlNGM2NTI3YzJmMDNjNmY4NWMxZGE1NDc0OTU5NSBsZWdhY3ktdHJ1bmsKKzkzNDQgMGMzZWZkZjI4MTMzMGJlYTNkYmNmN2QzYjg0YjVhNTEwOTU5MmI5MiBsZWdhY3ktdHJ1bmsKKzkzNDUgODFkZmRmNjU4OWY4Y2U3OTMyY2JjYWI1NjJhMDcwMTkzNzE1MDY1OSBsZWdhY3ktdHJ1bmsKKzkzNDYgMmY3NTNmNTQwZjQ1ZjQ5OTAxZTRlMWM4MjI3MjNjMTMzYjg0ZDI3OSBsZWdhY3ktdHJ1bmsKKzkzNDcgMjc4YWFjZjAxNzA3MTMwNDhkZjBlZmQ5ZTZiNzQ0NzUzNDJjN2MxMyBsZWdhY3ktdHJ1bmsKKzkzNDggMTkwMjkzOGU0MmM2MjA2NDUwODI0YmYzYWEzOTM1ODk1M2VjMThiNiBsZWdhY3ktdHJ1bmsKKzkzNDkgNzkzNzVmNzFkNmM4MzgyMjZjMDJlNGJlYzE4NzY0MDNhMzU2NTFlMSBsZWdhY3ktdHJ1bmsKKzkzNTAgMmQ5N2ZiMWQwNmNhMTQ0Yzc4YWZjZmVkMGU3NzRjMmFiOWI5NWM0YiBsZWdhY3ktdHJ1bmsKKzkzNTEgOWJlN2YxZTM3NTM1OTQ1OTcyZTM5M2MwZGQzZTlkOTNmMGVjZWFlMyBsZWdhY3ktdHJ1bmsKKzkzNTIgNmFlM2M5MWYyZDkzODM0MWY4MTI1OWU4NGVlOTExODhjNTBlM2E5MiBsZWdhY3ktdHJ1bmsKKzkzNTMgZDAzZjJlMmZiZjM2NjZkYWMyNmJlZTYzYTM1NDQ0YjRlM2Y4NmQ4ZSBsZWdhY3ktdHJ1bmsKKzkzNTQgNGUyY2M1MDQ0ZmE1MTNmMWExOGZlY2Q0ZTA1YmM5YjUyNDc3ODFlMCBsZWdhY3ktdHJ1bmsKKzkzNTUgNTgwOWVmMTU3Y2RkYjRlOGZiZjFjN2I0NTM1ZTUwNjU2MzIxODY5OCBsZWdhY3ktdHJ1bmsKKzkzNTYgZTI4NWExNWYzYTkyZWEwYTdmYWU1NTk3MWU0NmQ5MTNhMWE5Y2M3ZSBsZWdhY3ktdHJ1bmsKKzkzNTcgZWEyMThkY2Y3MjdkZDE1MWU5NTU2Y2M2OGJlNGVkNWIwZmRlMDJhMiBsZWdhY3ktdHJ1bmsKKzkzNTggYzQ2ZDg3OTIzMzE3YzM5YzRjMTE1MDllNGE0NTJiNmMxMjI0NDAxOSBsZWdhY3ktdHJ1bmsKKzkzNTkgMzhmOGE4MjhhYzU4ZDNlMzBhMmFiYmFkMWQ5OTYyZGYzMGM3MTcwYyBsZWdhY3ktdHJ1bmsKKzkzNjAgM2MxMmMwZDY5ZTEyMzAyZTRlZWJhYjkzZWRhNDQxMDM5MzBhMjM2YiBsZWdhY3ktdHJ1bmsKKzkzNjEgYmFmNjg2YmY4Y2EwYjY0MTRjNDEyZjE4OTNlODM2YTJmNmU5NTBlNSBsZWdhY3ktdHJ1bmsKKzkzNjIgNTk4ZDJmZmJmZDhiNTYyMjJhMGNjMDljMDUwZGM0NjA4NzI0M2U0MCBsZWdhY3ktdHJ1bmsKKzkzNjMgZThkMzIyMDkyMTdhOWQyNTk0OWY4ODcwYjUzYzk5MWE0MjdhMWJiZCBsZWdhY3ktdHJ1bmsKKzkzNjQgYjdkOGNjYjQ1NzQ2MzMyNWM5YzA5NTc5YzJlMjVjM2U4NTAwZmI2YSBsZWdhY3ktdHJ1bmsKKzkzNjUgOTEzMzQ1ZDU0ZjMwNmM1YzNiYzZjNDE4YTc2N2NiNDFjYmE4YjYzMyBsZWdhY3ktdHJ1bmsKKzkzNjYgZThmOTk3ODg3YzJkNWUzMjFiZjEzNjlhMDNlMTc3NDkwZDA4MWMzYyBsZWdhY3ktdHJ1bmsKKzkzNjcgYzdiYWI3M2U2M2M2ZTc0MTg5NzY1ZmYzMGJmZDQ1YTQxN2YxMWM1YyBsZWdhY3ktdHJ1bmsKKzkzNjggMWZmOWEzMGY4MjZhNDVhZDgxMGMxNDk1ZTBiMzM3YzNiYTQyMTg3MSBsZWdhY3ktdHJ1bmsKKzkzNjkgMDQ3YWJjYmYzZjQzMjU1N2M1YTM3OTU2MmNjZDI5MjJkYjUwOWU2MiBsZWdhY3ktdHJ1bmsKKzkzNzAgNWQyMDVmMjJhYjYxODYzYWE3OGE4ZDg5ZGYwZDA3Zjg1ZjE0MWI4OCBsZWdhY3ktdHJ1bmsKKzkzNzEgZDJlZjc5NGQ5YzExNmRkZjA4ZDYxMTZiM2Y1ODU0ZjM3MTM3ZDE1NyBsZWdhY3ktdHJ1bmsKKzkzNzIgMDVlMjY3YWVkODZlYmI1MTA3NzU4ODU2N2E4OTYxYTMxN2Y2NWJjZSBsZWdhY3ktdHJ1bmsKKzkzNzMgZDk0OWEzNWNhZTIwYzgzYTJmM2YwZWQ2MTdjMGRjODNjOGQyNWNjNyBsZWdhY3ktdHJ1bmsKKzkzNzQgZTcwYzRhZjE1N2Q1NDM1NGQyODhiMjgwMDI3NWI5ODFjYTI2OTg3ZCBsZWdhY3ktdHJ1bmsKKzkzNzUgNmZlNmE5YzE0NDk5MmYxMTNmMzNmMzhlNDcyNDU2ODcyMzJkNDQ5NiBsZWdhY3ktdHJ1bmsKKzkzNzYgMzdlZTE4NzExYzNjMzgxODQxMTg5OWExOWEwZjFlZDZjMGNiYzNhOSBsZWdhY3ktdHJ1bmsKKzkzNzcgMjE0ZjNjNGY1NDg5MmVjN2M4ZDVjYTU2Yzk3NjUyMmZhMDEzMjEwMiBsZWdhY3ktdHJ1bmsKKzkzNzggMjQ0MzdkOGQwZGRjM2I0NWIzMGQ0Mzc2MjIyYjE2NDY5NDI2ZTYzNCBsZWdhY3ktdHJ1bmsKKzkzNzkgYWRiMzAwY2JkNTY2ODBkMDEyMjQyZmE5OTM5NzZjZTEyZmI0NGE2MyBsZWdhY3ktdHJ1bmsKKzkzODAgMjUyMmM4Zjg2MTViZDUzMjljYzZmOTg0N2VmNzhiZjljY2MxY2M2YyBsZWdhY3ktdHJ1bmsKKzkzODEgZTIwN2JlYjVhMzYyOWJkMGNkOTUzYzgxYWM0OWJiZjUyZDNmYmZjOCBsZWdhY3ktdHJ1bmsKKzkzODIgOWNiMmYxMGIwNDI5OGVmYTBlMTRmMmJiMGQwZDdhNzY0MTYxZTNhYyBsZWdhY3ktdHJ1bmsKKzkzODMgN2I1NGY5NmFmM2JlZmEwM2MyYTk5MjQyYTliZTY1ZjBlZGM3OTFmZSBsZWdhY3ktdHJ1bmsKKzkzODQgODBhYjYwMzBiOTA0ZGM5MjllYTY4YTVjODg1MjgyN2YxOTZkZDMzYyBsZWdhY3ktdHJ1bmsKKzkzODUgOWVjNmUwYThmMzUzZmQyYmU2YWM1YTZlYTBiODY4YTZkODRmNWU5ZSBsZWdhY3ktdHJ1bmsKKzkzODYgZTRjZDMwZTQ1MzcxY2UwYTljNmExYjdlNGM2YjgyNmQyMGJhNTJkZiBsZWdhY3ktdHJ1bmsKKzkzODcgMzU0N2ZkZWFiNGRmYWM4YWY5MjcxOTkwOTI4NjAyMTdiNDVmNzQ4NSBsZWdhY3ktdHJ1bmsKKzkzODggZjU5NWU3ZmMyYmQ5ZWE1MmNlYzMzYjQ0MGRhMzc2NmJmYzg1ZGU4MiBsZWdhY3ktdHJ1bmsKKzkzODkgMmM0OWMwMmNmNzQ3NGFiMzlhOGUzMWU4NmZiY2FiYjUwNzFhYzY1MyBsZWdhY3ktdHJ1bmsKKzkzOTAgZjI2NmFiOTFhOTkwZDAwYTMyZTBiZTEzMzNjNTY4YWRjYzk4N2Q3OCBsZWdhY3ktdHJ1bmsKKzkzOTEgM2NmZjQ0NWJkMTBmZmE5NzExNWI2MWRjZmNiNzdhNTIzNzlkYmJiYSBsZWdhY3ktdHJ1bmsKKzkzOTIgMDM1ZTc5NmI4OTBlZDYyNjM5NTAzMDFlMDI2YWIzYTZjNDk2ZmNhZCBsZWdhY3ktdHJ1bmsKKzkzOTMgMGQ1MWIzYjY2MGQxMjkzZWRiZTgzMzY2OWI2OWIyYjFlZjVmYzQzMCBsZWdhY3ktdHJ1bmsKKzkzOTQgYjlhMzk1MDExMmFlYTU5MjBhZTY2NzkxNjM4MTEzZDMzNDAwMzQ0NSBsZWdhY3ktdHJ1bmsKKzkzOTUgOGRmYmVlY2MyNDIyYjc5OTE3NTNiYzkzMDI2MzA5Njk3NjExOTE4YSBsZWdhY3ktdHJ1bmsKKzkzOTYgOTUwZDA1MTliNWZlOWU5OWExM2YwOTVhZGYxYzZlMGEyN2EwMWFlOSBsZWdhY3ktdHJ1bmsKKzkzOTcgMTAwMjljOGM0MGUwZGM1NWMyNWU0NDBjNjI4NmZjN2Q5Njk2YjQyNCBsZWdhY3ktdHJ1bmsKKzkzOTggYWZiMWU4YWY3ZTRmOGFiYzJmZDY0YTg4YzVkZWEwOGM2NWRhMWViNSBsZWdhY3ktdHJ1bmsKKzkzOTkgMjM2ZWE5M2M1NmZmNzhiNzViODhkODVkN2QwMmI4OTgzMzJlNDBiYyBsZWdhY3ktdHJ1bmsKKzk0MDAgNzYyOWM0ZDk4NWJjM2VkZTNlMWZkODBlNWZiMjA3MmVlNDM4ZGJmYyBsZWdhY3ktdHJ1bmsKKzk0MDEgNzRhZDI2ODI1MDYwOGE5M2RhZGNmNGNhNWQyZThmODFhYzQwNDg2ZCBsZWdhY3ktdHJ1bmsKKzk0MDIgY2YzMTdhOWM0OTliYmZmNjE1NTI1NWIxYjQyNGYzOGRlY2QzOWMzMyBsZWdhY3ktdHJ1bmsKKzk0MDMgM2RiMjRiNGQ5YzQyMjc1YmQ5ZDMwZDk3ZWIzOGQ3M2VjODhiNjZkNSBsZWdhY3ktdHJ1bmsKKzk0MDQgOGM5MmVjOGY2MDM4YTc1MDcwZTJlYTI5N2MxY2EwNTQ4YzVkZDZjMSBsZWdhY3ktdHJ1bmsKKzk0MDUgNTIxMjVjZTM3NmE0MmU0MjEyODEyZGM5ZjM5ZTJmMzVjNjFjZTQ0YSBsZWdhY3ktdHJ1bmsKKzk0MDYgYjlkOWM1M2YxZTFkZjUxMjMwYmI4NmM0ZWY3ZmI0MDQwZWZlMWM1OCBsZWdhY3ktdHJ1bmsKKzk0MDcgNzQwMjRlOTA3YzYwZDYwNTQ2YTY2YjkxZGIxM2VlODI3ZmQ0MzJhMiBsZWdhY3ktdHJ1bmsKKzk0MDggNzc0NGJmMWU0ODViNjVmMWM1YzY1YTUyMzdmMzlkM2I1YWE3MGI1MCBsZWdhY3ktdHJ1bmsKKzk0MDkgNDA5MWIwNGY5M2FkZjAxODc1NjNlNGY4NjQ0ZGIzMDNhZjQyY2EwMyBsZWdhY3ktdHJ1bmsKKzk0MTAgYzViOTM5YjVhOWUwMmQ2ZDgzM2UzZDI5NTMwNDkyNWQ5ZTE5YTJiMiBsZWdhY3ktdHJ1bmsKKzk0MTEgYTcyZGM1MmI5N2FkZDQ2MWMzOWU3YjM4ZTNiNDczZjI2MWNmMTg2OCBsZWdhY3ktdHJ1bmsKKzk0MTIgNjgzYmMzNWFiNzUzYWY3OGI3YmIwOTBlODAzZmU1N2MzYzgwY2QzYiBsZWdhY3ktdHJ1bmsKKzk0MTMgNmI2ZWY5MDkyMzhlMDVjZDBkNzA3OGM5Y2Y5YjlhZjQ0ZDkyYzcxZiBsZWdhY3ktdHJ1bmsKKzk0MTQgNDU1Y2JhYjRhOWJlN2Q2NTQ2M2Q3ZjEwMmNmZmIyNTMyMTMyYzUwNCBsZWdhY3ktdHJ1bmsKKzk0MTUgZTNjOGMzNDBhOTkwYzhjZGZhZTAwMmYzODAzYzkzN2ViYmQwMDNlOCBsZWdhY3ktdHJ1bmsKKzk0MTYgYjNiMGFkNDcxMmFkMGY4NGEzMmZlZmVlMjE5MmE1YmFiMDMwYmNlMSBsZWdhY3ktdHJ1bmsKKzk0MTcgZGMzYzljMDRlZjA3YjkzM2E0MDNhMWZkM2NhM2RkNDk2Y2ZhMTY5MSBsZWdhY3ktdHJ1bmsKKzk0MTggMWRhZmFkMzA3MDA2NmI5OTFhNzZlMzc1N2RmNTEyYzdhMDhlNDllZSBsZWdhY3ktdHJ1bmsKKzk0MTkgOTEwNDc4NGFmMTU5MDhhY2Q3MjA1YTI5MjE5MDkyOTQyMWEyMTZkYyBsZWdhY3ktdHJ1bmsKKzk0MjAgMDYyOTFmMDRiYTljMzhjYTllMjAyNGZiM2I2MmY5Y2JhNzg1MGE5ZCBsZWdhY3ktdHJ1bmsKKzk0MjEgMGMxY2MyZDZjNGYwMWRjNGUxNDBkZDZmZDMwNDBjMTZhMGU3YTBiYiBsZWdhY3ktdHJ1bmsKKzk0MjIgZmViYTNkOWEzMGM3MjAwYThhMjBjYzE2MWIyMWFkMzBhZDk1ZDY0ZiBsZWdhY3ktdHJ1bmsKKzk0MjMgZjE0ZTQ0NTlmYjk0ZGJjN2Q5ZDNmNTFmYTZkNmU4MWUxYjQ1MGExYyBsZWdhY3ktdHJ1bmsKKzk0MjQgNWVmNDcwMDcxOWRlOWEyMjZiMWQ2MTEyMjI3ZWExZDgwZTAxOTY0ZSBsZWdhY3ktdHJ1bmsKKzk0MjUgZTdiZjU0NTNhNmZmNGZmNzY0ODJmMjQxZThlMjQ0Y2U1NDAxZTdiZSBsZWdhY3ktdHJ1bmsKKzk0MjYgODAwY2IyMzRmNjc2ZjFhYjAzZTY4NjcyZDc1MDk1OTVmMDU4NzZmMSBsZWdhY3ktdHJ1bmsKKzk0MjcgNmUwZWRkZmE0MDRhNzE3MDkxZmNmOWQ1ZDMxZDZlNGYyNzNlZWVjNCBsZWdhY3ktdHJ1bmsKKzk0MjggMzkxMmVmYTViZmNhMjY2M2U2NThmYmMyNjI2YzBjZTE1YmExZTJlNiBsZWdhY3ktdHJ1bmsKKzk0MjkgYzhhZDlkYzhhZTFlYmY2OWMyMTMwOGY2Y2NmNGRkODIxOGQ2YTNmZSBsZWdhY3ktdHJ1bmsKKzk0MzAgMTE0NGE5ZWQ5OGQ2YWIzODJkOWM0YzhiOWQyODI3MDA2NzU0ODIzMCBsZWdhY3ktdHJ1bmsKKzk0MzEgZGMwNzM5Mzc5NzE0OTg4MTE1ZTljOTk0NzUyNzhhMGI1YmZjYjVkOSBsZWdhY3ktdHJ1bmsKKzk0MzIgOTY0MmEyOGRmMmIxNGI3Nzg3OGRkZWRlMTI2YzQxNmNkNWI0MjAwYiBsZWdhY3ktdHJ1bmsKKzk0MzMgMzg0OTNiOTM3NmVhZTE4MWIzYTA2Mjk0NmQwNjRlYTUyNTI1Zjg4MyBsZWdhY3ktdHJ1bmsKKzk0MzQgOTc1NGIyMjMzNTgwOTFjYzY3YmU0NWE1NTBhYzEwMWQyMTk2NzcxMyBsZWdhY3ktdHJ1bmsKKzk0MzUgZGY1YjU2YTVhZmNmZDYzMjRmZWQyYzQ1YThkM2ZhNmZlOGQzYzFlMyBsZWdhY3ktdHJ1bmsKKzk0MzYgMTM5YWQzMWZmOGZkNWI5ODZiOGMwODNmOWE2YjM1ZjdmNjQxMDY5ZiBsZWdhY3ktdHJ1bmsKKzk0MzcgZmVkYmY5MzI1MTkwYjhhNmE2MDMwNmI5MjE4NGUxNGZkNDQxNGMxYyBsZWdhY3ktdHJ1bmsKKzk0MzggMzE5YTUxYzM4MWNlZTRmOGE0ZmQ5ZGMxNGE1NWM2Y2FjNjZmODM1OSBsZWdhY3ktdHJ1bmsKKzk0MzkgYzU4NzRmNmY1NDMxZjI5NGI5ZmM1YWZhM2I5M2Q4ZTc0YTI3OWY3NSBsZWdhY3ktdHJ1bmsKKzk0NDAgNDg0YTFjNjhjNTU4OTU2YWVhZjFhYzk3YWE1ZjhkNDk3YjBiY2QzMSBsZWdhY3ktdHJ1bmsKKzk0NDEgMTBmMjkyMWEwOTFlNzE0YWM3N2ZjZjJiMWZiMWViM2NjMTlkOTNiMSBsZWdhY3ktdHJ1bmsKKzk0NDIgMzNiZTdkNWQ0OThiNjA3MmI3MmFiMGE3MDEyMTRiMDYyMWZiMmVlMCBsZWdhY3ktdHJ1bmsKKzk0NDMgZGNlODM4Y2Q0MmMxODA5ZDcxMzUyNzg2YWUyZGJjNTExMGVkM2Q5NCBsZWdhY3ktdHJ1bmsKKzk0NDQgZWVkNjMwNDlkZjk1OTU1YTk5NTdjYjY1ZWQ0ZGNmNWE5Y2E3YjAzYSBsZWdhY3ktdHJ1bmsKKzk0NDUgNzQ0ZTJiNjhmM2I2ZDk0MGJiZjI1MTExODVjMTk3NGNmOTlhMmRhMCBsZWdhY3ktdHJ1bmsKKzk0NDYgMzFlY2E2NDhmN2ZmZWFmMWQyYzY0MTM0ZmYzN2VmMDE5ZmJmM2VlYSBsZWdhY3ktdHJ1bmsKKzk0NDcgNDkyYzZkYjE2MGFjOTllM2U4ZmYyNTcyZWJhOTJiODk3MDgxOWU3NyBsZWdhY3ktdHJ1bmsKKzk0NDggZTVhZmY0MTAzNmYzZDY1OTA2MGUyZmZiZjFmZDlhNjRmMWQ3YTY3MiBsZWdhY3ktdHJ1bmsKKzk0NDkgYmMxMjVmMGQyYzVkMGYxNDE0ZDA0ODgzNTk2N2UwZGUxZDY1ZThmNyBsZWdhY3ktdHJ1bmsKKzk0NTAgYTY5MjllNzQxN2RkNjJjNzc0MTU4ODE1YjU4YjBmZWVmNmFmZTQ2ZiBsZWdhY3ktdHJ1bmsKKzk0NTEgYmJhZDJjNjg0YWQ3MmJjZTVmMTM0NGRmYzRiMmQ2N2E4NjdkYmNjYiBsZWdhY3ktdHJ1bmsKKzk0NTIgMjNiMjdiMGIyMzViMzE1NTJkNTdlZjhlMzNiY2FlNDg3Njk2YWVjOSBsZWdhY3ktdHJ1bmsKKzk0NTMgODBiMWUyN2YyMGQ0OWNlMTE5NTg4NTM1MjNmNWJlNmI5YmYxMmU0MiBsZWdhY3ktdHJ1bmsKKzk0NTQgY2RhNzIwYjE5MTlkZmU1MjJhY2I5MGJhY2FiM2ZjNWVjODc3NzM1OSBsZWdhY3ktdHJ1bmsKKzk0NTUgYTU2ODZlNzU2ODVmMmQzZGViNTZkNTU3MTJlYzM4YmViMWM2MjAyMiBsZWdhY3ktdHJ1bmsKKzk0NTYgMmYyZWZiOGZhNTRmZjNjNjNhMmNlMWExNjdhM2Y5MWJjNThlM2I1ZCBsZWdhY3ktdHJ1bmsKKzk0NTcgNzY4OGYzMTA2YWU0NDFjMmNiNzg3MzJkMmQ2ZDVhMDMzM2FkZjk0OSBsZWdhY3ktdHJ1bmsKKzk0NTggY2ZhZDRiMDI5NjQ1ZTlhN2NiM2RhZGViOGVkMzA0OTJmMjBkYWY0ZCBsZWdhY3ktdHJ1bmsKKzk0NTkgYjcwYmE0ZGI3NjdlMDk3NDBmNWQxY2E3YzA3ZWI4OTJmMWE4ZTE0OSBsZWdhY3ktdHJ1bmsKKzk0NjAgZjMzNjQ3MDhjMDllMDc5MDEwYjZhMTdlNmQwMjA4NjI0MmNkNzgyNyBsZWdhY3ktdHJ1bmsKKzk0NjEgZmZjYWY3YWZkNWQ5ZTNlOTAxZmQ4ZGJkNWJjZWY0ZTE0OTNjM2E0NCBsZWdhY3ktdHJ1bmsKKzk0NjIgZjVmZDIzOWIxNzhhZDAwOGE2ODFiNDFkYmY1MDZkMzc0NjFjN2I2OCBsZWdhY3ktdHJ1bmsKKzk0NjMgZDRlOWFjNzU3ZTVjMDdmZjU5YzZiMzg3Y2QyYzQyNWQxYTYzNmMzNyBsZWdhY3ktdHJ1bmsKKzk0NjQgNjM4ZDg3N2VhOTk1ODM1MzM2YzA4ODhiMTNhMzIyNjAzMjY0OWZjMCBsZWdhY3ktdHJ1bmsKKzk0NjUgMWE0MTQxNThlYjY2NWIxMTBjZDRhNjg3MmVkM2JhYjVhMDQzMGVkMSBsZWdhY3ktdHJ1bmsKKzk0NjYgMmU5MWZjNzFjYmI1MDE5ODM0NzI5MWJiNzM0ZDc5ODNmNDVjYzgzYiBsZWdhY3ktdHJ1bmsKKzk0NjcgZmUxMDhhNGJiOGQ1OGRhYWNmODdjN2RiM2YxY2I5MmM1MjcwNTE0NiBsZWdhY3ktdHJ1bmsKKzk0NjggYjI0NDVjOTNmMDNiODljMGEwNjg3ODgyODRiZWM5YWNiYzY2MGEwNiBsZWdhY3ktdHJ1bmsKKzk0NjkgZjM0OWJmMGU5MzIyNzZmYjY0YzE3NDczN2FhY2FjMmIyOGRhZDIxNiBsZWdhY3ktdHJ1bmsKKzk0NzAgZDAwNTE1ZjkyYjUzNGQxNGU1ZDA0NjczMTRiODEyNGFlZGNiODI1MiBsZWdhY3ktdHJ1bmsKKzk0NzEgOTg3YTgzMWFhZjIzNmFkZjU2MTFjNzk2OWU3Zjg4MWJjZDM4MjY0YiBsZWdhY3ktdHJ1bmsKKzk0NzIgNjBjY2ZhOTY1NmFjZjBiNTIzNTRhMWMxNWQ3YzNmNGI4NjllYmIzMCBsZWdhY3ktdHJ1bmsKKzk0NzMgZWJjZjYwNGNjZWUwNTExMjlmYmFhZTZmMjYyMGRiYzRhYTBkZWUwNSBsZWdhY3ktdHJ1bmsKKzk0NzQgNjkxMTI5OTBkOGUyNDhiOWYzYmI4MGY1ZGVmMDAyN2U5ZjhmMmU1MyBsZWdhY3ktdHJ1bmsKKzk0NzUgZmExOTQzMGZlYzRlNDlmYTMxZTUwMGZiYzI5N2MxMWFmMWRkZDE3ZiBsZWdhY3ktdHJ1bmsKKzk0NzYgOGFkMTdlNGNjZDliYTg5OTNmYjdlYjUxMTczNWNmMGRjN2RjNjNmZCBsZWdhY3ktdHJ1bmsKKzk0NzcgN2NlOWRhMDI5NjE5ZjU1YmM1MzE1ZjdiZDdiNmYxYThjOTkwYmM0ZiBsZWdhY3ktdHJ1bmsKKzk0NzggZjJhZjNjNjQ1NzEwMjRjZjc5MDExYzA1NmNkZmYyYjkwMzk5YWVhZiBsZWdhY3ktdHJ1bmsKKzk0NzkgZmViODBlYTU0ODg4ODdjZWU4NTUyOGIxOTc4MDgwY2ZlNmU1Nzg2ZiBsZWdhY3ktdHJ1bmsKKzk0ODAgZjBmOWIyZTRmNGNjMGM1MDlmODg0ZDhiM2ZkMzY3ZWYwOWMyYWE1MSBsZWdhY3ktdHJ1bmsKKzk0ODEgMjI0NDQzOWZhZmNmMDZjMWRmNjZmNGZhMzQ2NjZjNmYwNjk3MTk2OSBsZWdhY3ktdHJ1bmsKKzk0ODIgYTEwYzQ1MzkxMjdhMWNmMGMxMjIwZjlmMDNjNmRkZDRlNDg1ZTViYSBsZWdhY3ktdHJ1bmsKKzk0ODMgY2RlZWZmNGQ2Y2I0Y2Y3MjlhODgzYmIwN2I1MDFjMWY4ZjJiMTc5MSBsZWdhY3ktdHJ1bmsKKzk0ODQgOTc3M2QzOTQxYzk2ZTJkM2JlMjYzYjhlMGQ0YTc1ZDRhZDg1NGFlMyBsZWdhY3ktdHJ1bmsKKzk0ODUgNmYyYWI0YWZhOGY5NDc4N2MwNmZjZjBiZDBhZDhmMzdiNjRkOGFkOSBsZWdhY3ktdHJ1bmsKKzk0ODYgNGI4ODcxMTk4NWEyNTg5YzMyMThmZTU2MDUzOWY0YzVmMjMyMTgyNCBsZWdhY3ktdHJ1bmsKKzk0ODcgNDQ0YTZiMDdkYTQ2NTE2OGFhMjhkYjcxYTgyYzk4ZTgzMWExYmVkNSBsZWdhY3ktdHJ1bmsKKzk0ODggMGFiYTY0OWJkOWJiM2FjZDJjZjZiYTNiM2YyNDM4NGEwODMxZDk3NCBsZWdhY3ktdHJ1bmsKKzk0ODkgN2E4YzMwODE5NmQxNDY1NWM0MmYzMWI3ZTUyNDc1YTI4MzIwOTBiNiBsZWdhY3ktdHJ1bmsKKzk0OTAgMmRiMTZkMWRiZDg3Y2JhMDY4MzIzNjgwYTJlOGMyNWNiMzU2NGRlNyBsZWdhY3ktdHJ1bmsKKzk0OTEgYTVkZjAyYjZjN2E4MzA4MmI0NzJiOGZmMGI0ODczMWEwZjg5OTNlYSBsZWdhY3ktdHJ1bmsKKzk0OTIgYzc1ZDg5OWU2NjZmMTY4ZDdlNDdiMDA1YzE0NWQ2ZmMyNmQzNjNmMiBsZWdhY3ktdHJ1bmsKKzk0OTIgODQ0NjEwMTFhMWEwYWI0MDJlMzUyZjA2NzQ4ZjI5ZmI1YjU1NTllNSBsZWdhY3ktdHJ1bmsKKzk0OTQgZGM4NWFkMWJhMGUxNTYzYTNmZWJmMGE5MTRlMmNkYWZkYWMyZjgwNiBsZWdhY3ktdHJ1bmsKKzk0OTUgNTlhYTNlMWMxM2RjNTgyMWIxODI5Nzk2NjFiMzczMTBjMjMxYzM1NSBsZWdhY3ktdHJ1bmsKKzk0OTYgMGE5NTE0NzBiMWJmMzBmZmI5Y2YxZjk1ZTFhYzQ3N2EzYzY5NTMyZSBsZWdhY3ktdHJ1bmsKKzk0OTcgYWRhMTMxMWRhMjg2ZWQ2NDAwN2Y4YzgxZDI4NzdiMGZhM2MyMzcxNiBsZWdhY3ktdHJ1bmsKKzk0OTggMjYxYjExYjBjY2Q2NGRmMDRmN2RlMDgxNjA3Y2Y4OTA4ZTExZDYxMCBsZWdhY3ktdHJ1bmsKKzk0OTkgMzg0NGRlMmE3MDlmNTBjZDcxMjQ0YjFkOGYyNzIxMWQ2MjdlOTNjMSBsZWdhY3ktdHJ1bmsKKzk1MDAgYTY2ZGY1NTVmMDI1ZjJiOGE2MjFjNGRiOTJlMDI2NTQyZWIyMmY4ZiBsZWdhY3ktdHJ1bmsKKzk1MDEgY2NkNDcxYzdiODYzY2RlMjJlNGQzMjVhM2FhMzFkOWFjOWVmZDAwNyBsZWdhY3ktdHJ1bmsKKzk1MDIgZTE3ZmU3OTMwNWM3NDA2YjhjN2I5Y2MyOWVmZTQwZjkyODIwZTIyYiBsZWdhY3ktdHJ1bmsKKzk1MDMgYzVhMThmYzRmOTY2MTRiYjEyZGYzNGEzYjc0NmIzYzE2NGU3OTFhZiBsZWdhY3ktdHJ1bmsKKzk1MDQgNGQ2NDU5MDliODM0NTVkMjFiYWRmM2VlMTRiM2FmZGRkNTcxYWEyOSBsZWdhY3ktdHJ1bmsKKzk1MDUgOGRhMzVmMWM3MzkwMTBiYjhiZjRkM2NjMTdiYTJkMDUwY2EwMDg1MCBsZWdhY3ktdHJ1bmsKKzk1MDYgMzc5ZDFmZDQyZGJmMWY5MWY5MTIxZWVkOTFmNTgwYzA1MWE2NjcwYyBsZWdhY3ktdHJ1bmsKKzk1MDcgYTM2N2FhYTY1MDNjYmRlMmNhZTBkM2FmNzMxOGE3YzU1ZTVhYWE3NyBsZWdhY3ktdHJ1bmsKKzk1MDggMDVlMGU0OTkwMTRmMjk0ZWQ2MjNjZGVmMzUzM2VlMzg0MzkyYzRlZiBsZWdhY3ktdHJ1bmsKKzk1MDkgOGQxMWVjYzE3N2IyYjhjNTAzNGU0MzM0YjFiZGZmNGQ3ZjkzZmMzNCBsZWdhY3ktdHJ1bmsKKzk1MTAgZmE4NWE3ZmQ3NDBiYzYxYmIzOTkxYWVkZjY0MmU0ZmYyNmZlY2FhZSBsZWdhY3ktdHJ1bmsKKzk1MTEgNjE0NzQ1OWJmY2ZiOWEwZTY3Y2ZhNzJhMWM4ZGI4Zjk2ZWJkNTIwOCBsZWdhY3ktdHJ1bmsKKzk1MTIgZGRmNTJmMDFiYzBhNzZkNmQ3Yzk4MjZlZjY2ODcwMTg1MTZkMmEyNiBsZWdhY3ktdHJ1bmsKKzk1MTMgMzE2MTY3NDk5MDA1OTk2ODI1OWMxODNkOWYyNjQ5NzRlZmI2MTE0OSBsZWdhY3ktdHJ1bmsKKzk1MTQgZDBhOTcwMTRlZDQyZjAxZjYyNjEzM2VlM2E4NzEyMmU0MDgwMDQzYyBsZWdhY3ktdHJ1bmsKKzk1MTUgMjYxMmY5YWMzMWVkYTE3NzYyNzgzNGIzMTNjZjQ4ZjRiN2IxYjhjZCBsZWdhY3ktdHJ1bmsKKzk1MTYgNDljZTE4YTE2OTlmNGM2MjA4ODg3NmQxNmMyYjViYWY2YjVhMmQwMyBsZWdhY3ktdHJ1bmsKKzk1MTcgYWI0ZDYwNDgyMmQwYWNmMjU3ZjZhZjFhNWMzMzQ3ZDJkMjkyYjg3MyBsZWdhY3ktdHJ1bmsKKzk1MTggMWM5MjdlY2ZjYmIzYjE4ODBkOTNjOTAxMzVlZWIwN2UwZTQ0YWExOSBsZWdhY3ktdHJ1bmsKKzk1MTkgYTUyYTNlMjZlZGM0Y2U5NDE0ZWUxMjVmYmYzNDcwZDUyNWUwOTgzMCBsZWdhY3ktdHJ1bmsKKzk1MjAgODRlODcxZTIwMDg3YWVjZjg0NjIyY2RmNjQzODM0NzU3ZGZhZmNhYSBsZWdhY3ktdHJ1bmsKKzk1MjEgNzZlYWYzNjA0MGJlNTVjYWUyYmIxZGIzMDA0ZWJlMjY4OWFkZGVjOSBsZWdhY3ktdHJ1bmsKKzk1MjIgMjk3ZWE2NzkyNmViOTRhYTQ5NTY3ZGRhOTAwODY4NGIzN2Q1N2Y0MiBsZWdhY3ktdHJ1bmsKKzk1MjMgYWU2M2ZhM2NiMWM2ZjkxZjYzNjI3ZGVmMDRhMzY5OTNlZjkyN2ZhOCBsZWdhY3ktdHJ1bmsKKzk1MjQgYzRhNzhiOTI0ZGQ5YWM4ODY4M2E4ZGY3MDRhOTdkOWQxZDdkMTdhMSBsZWdhY3ktdHJ1bmsKKzk1MjUgOWZlMzM1ZDQ1NTk1NmNjYjg5ODE0ZmFhNmM2YTY2MmE4YjllMzY4NSBsZWdhY3ktdHJ1bmsKKzk1MjYgM2VjYTVmMzc1MDFhNzljMTAxMzMzZjU5OTFkMzlhZjQwOGUxN2ZlZiBsZWdhY3ktdHJ1bmsKKzk1MjcgYWVjZTUxMzYyYWRhYzVjMWFhMGUyYzc2ODc2MjY2M2EwOTZmNjhlNiBsZWdhY3ktdHJ1bmsKKzk1MjggOTBlZGNiMzhmYjAwM2YyNDNkNTc2ZWZiYjE2OTRiNThjZDE4MTEyNiBsZWdhY3ktdHJ1bmsKKzk1MjkgMWYyZjU1OTc3MzliYTFlYjcxZDBmNmYxOTFlNGUxMTYwZGIxOTc0YSBsZWdhY3ktdHJ1bmsKKzk1MzAgNTAyODgwYWY0NjU0ZTM3OWQ5ZjdlNTE3MDAyYWE1NjE5YTNjMjcyMSBsZWdhY3ktdHJ1bmsKKzk1MzEgZGIwZGQxMTc1NDFkNDZlODJhM2NjMGM2ODM4YWI3YTVkZGExY2NkMiBsZWdhY3ktdHJ1bmsKKzk1MzIgNDI1MzQ0MDk3NTBhMDRlYTExOWJmNmUyYjFkODRiOTRhNDhhYzczMSBsZWdhY3ktdHJ1bmsKKzk1MzMgZGYwNWI5YzRiZTdmMzc3MDUxNjgxNGRiNDIwYTlmZGY5MzA2YzJjOCBsZWdhY3ktdHJ1bmsKKzk1MzQgNTNlNTRhMTRmNDMyMzM5ZDgxNmI0OTllMGQwY2FjYjZiMjI0Mjc4NCBsZWdhY3ktdHJ1bmsKKzk1MzUgMDg5NmQzMmI2MGE0YjFjYzgwMmNmMjY3YTVhZDEyYjE2MWQyMTBjYSBsZWdhY3ktdHJ1bmsKKzk1MzYgZjJiMmE3ZWEyYTFlMzU1YzlmNDE5ZmM2ZDg2MGFjNzFhMjExY2I2NCBsZWdhY3ktdHJ1bmsKKzk1MzcgNmUzYjQ2OTVmZmFlMWNhZTAwN2ZjNDdmZWI4ODAyOGY3ZjllMDMyZCBsZWdhY3ktdHJ1bmsKKzk1MzggYzk1ZTYwZWFkNWUwNmExZTVlM2U5OTZmMmQ0MGRhY2I2N2Q0MmUzOSBsZWdhY3ktdHJ1bmsKKzk1MzkgMWQwYjkwMjg1MjNjNmViYjMxYjhjYWFmNDNkMzUwMTY4YjgxOTlmMiBsZWdhY3ktdHJ1bmsKKzk1NDAgNmI0ZjhhOTZlMWQ0NDRmNGZkNmE3NjQ3MmE2N2QxOTYzMDc0ZWFiZiBsZWdhY3ktdHJ1bmsKKzk1NDEgZTY4ZWViMzVkMDRkMWRiN2U3Y2JiMWJlNzJkMGE4ODg3OWIzYTcxYyBsZWdhY3ktdHJ1bmsKKzk1NDIgMGM3MDI2NDU3M2RiM2QzNTIxMzYxMGJlY2M1NTRjZDRhMDhlOTg1ZSBsZWdhY3ktdHJ1bmsKKzk1NDMgODg2NmM2OWIwYWZjOGRjNzkzMWI0YTUxOWY0MTA1NjVkNGM4MDhmZSBsZWdhY3ktdHJ1bmsKKzk1NDQgZmE0MjMwNjg1NzU3MmZmODUzYWEwMjk5NmJhNzBkOGRiZjRhM2VhNCBsZWdhY3ktdHJ1bmsKKzk1NDUgOTA2NTBiYmQ5ZGJiNmFjNTlmMzA3YjYyMGFkMjQ3YTU3MTlkZTc3MiBsZWdhY3ktdHJ1bmsKKzk1NDYgMmNkZjExYjJlZDliNDQxMGZhYmRlMTYwNDdkMmFkNjJkN2QxYmFjNiBsZWdhY3ktdHJ1bmsKKzk1NDcgMDBlNjEyNTYwNDkyYzZhYTM1YWU0MDViZGQyZGU3MDA3Yzc4Njc4OCBsZWdhY3ktdHJ1bmsKKzk1NDggNzVhMWFlYzZkOWIyY2QyNDM4ZDY5N2Q0ZGRkOGEyODc1YzgzNjFiZiBsZWdhY3ktdHJ1bmsKKzk1NDkgMDMxNGVjYmM1ZjVkNGUyNWJlNmVhYzc5MjQ0MjEyNTU2MmYxMWI0MiBsZWdhY3ktdHJ1bmsKKzk1NTAgNWMzNTNjNTIyYTQ4Mjc4MTQ4YjVlZmQ0YmM3YzgyY2I3NzhjYzBhMSBsZWdhY3ktdHJ1bmsKKzk1NTEgM2I1MTlhNmQyN2JiNWJlMmZlODBkZTM2Njk4YWE4YzI1NjQzMDEwMCBsZWdhY3ktdHJ1bmsKKzk1NTIgOGNkNTczYjcyZDRiNjEzY2FiMGUwZTNkZGM3YmFkZjE2NjhhMjVkNyBsZWdhY3ktdHJ1bmsKKzk1NTMgM2Q4YzFiOGY2MDk5MGU4NGMyMTVkMTE5MmNkMTUzMWJkZjUzYTE2YSBsZWdhY3ktdHJ1bmsKKzk1NTQgMmFlNDQxN2FjMzMwOWVlNjgyNTg3ZDBmZmFmMmNjODc5OTFhMTM5YSBsZWdhY3ktdHJ1bmsKKzk1NTUgYzFhZDM0YjNjMDY5OTUwZDQ3NGRhODkzMGE0NzU2ZmY1NDJmYzk2NSBsZWdhY3ktdHJ1bmsKKzk1NTYgMDMxNDU1MzQ4MmEyOWU3NDQzOGEyNTFiYzM2YmM2MjNiZmE2NjcxYyBsZWdhY3ktdHJ1bmsKKzk1NTcgMzIyZGNhNWVlMTQ1YmRjYjQ3ZGJkNDI0YTBiNTAxMDk4YWQ5ZjUxMyBsZWdhY3ktdHJ1bmsKKzk1NTggOTI0ZjhhMDExN2Q1ZmIwMTFkNWYzZTVhZDMxNzE5ZTM0M2Y5NjMyOSBsZWdhY3ktdHJ1bmsKKzk1NTkgMGJhYTJhYjQyZWU5MGNkZGFjNjZmMzMxMDJmNmJiODI3YWFkNTY5ZiBsZWdhY3ktdHJ1bmsKKzk1NjAgNDE5Yjg2YjA0YWU0ZDk4YjNlNmU2OGY5ZGEzNThmZTk1ODk5OTU1ZiBsZWdhY3ktdHJ1bmsKKzk1NjEgOTEzZTQ4YWFhYzc2MWVhYzQ1NDE0MmRkYTA2ZTg4YzBkOTc5ZTQ5YyBsZWdhY3ktdHJ1bmsKKzk1NjIgMGM2ODg3NzY1OTM5NTI0ZTQzODFjZGQyNDcyYTRmZjE4MWNjNGU2MCBsZWdhY3ktdHJ1bmsKKzk1NjMgOWIwNWMyMGM1Nzc2YTRmMjVjMzI5MTcxNGM3NDhlZmZiMjIzNjIzMiBsZWdhY3ktdHJ1bmsKKzk1NjQgZmNiMmUzZWU4OTk1OTU2YjgwNTc2YjU1ZTkwYTMzOTU3MDk1NzQxNSBsZWdhY3ktdHJ1bmsKKzk1NjUgYWI1MWRhMzQ3MzE2ZDRiZmFiNzRiMDVlMTEzMDQ1MDJkYjc0ZWI2YyBsZWdhY3ktdHJ1bmsKKzk1NjYgYTJlMDU0MDMyODk5YzYyNTg2YzA0MzZhYTlkMmExYzI0MWUxMjAzYSBsZWdhY3ktdHJ1bmsKKzk1NjcgMjliMTY4Njg3NWRhYTUxNTEzYzQxZGI2Mjg1YTIyMzY5OGJjMDZlZiBsZWdhY3ktdHJ1bmsKKzk1NjggOTY0NjBlZjMzZmRlZDdlZDEyZmQ3NWE4YTdiNTU2ZjRlMmZlNjFlMyBsZWdhY3ktdHJ1bmsKKzk1NjkgMmU4YmNkZTRjMjQ4ZmZiZTY5OTY3ZDc3MjM3NDdlYjFjZDg0NmE1MyBsZWdhY3ktdHJ1bmsKKzk1NzAgOGE1NTY0M2U2NjdmYTE3MmRkZDA1ZDI3NjEzZjM5OTJhOTAwM2IyZSBsZWdhY3ktdHJ1bmsKKzk1NzEgYWY4MjZiMjNmMDA2NDMwODM1ZTBhNzJjOWI2MTA5YTI4ZjUzNjJkMiBsZWdhY3ktdHJ1bmsKKzk1NzIgZTU1NDgwOTZiNDJhNWZiOTEyNmU4ZWI2MDY1ZjVlOWI4ZWY1Nzg5NyBsZWdhY3ktdHJ1bmsKKzk1NzMgYmMxOTc2ZmY2ZmZkMzBmYjM1MzQ3NDllODk3ODU5YTI3OTg3Y2FhNCBsZWdhY3ktdHJ1bmsKKzk1NzQgNWJiODg0NTI3NDQ2Zjk2NWQxZTIxOWFhZDYyYmNiNDEwMWMzYWQ0MCBsZWdhY3ktdHJ1bmsKKzk1NzUgMDBhODVhYjAzMzdmN2Y4N2NkZjYyNmQzYmRlZDUwODVjODQ0NWJmMCBsZWdhY3ktdHJ1bmsKKzk1NzYgMTY3NmZhZDdiNjNlNzUyOWQyZjE4YjUxOTllZjVhYjA5MzJiMWQ4YyBsZWdhY3ktdHJ1bmsKKzk1NzcgZjdmNTViYjZhM2IzMDgwZjJlMDhiYjI1MDEzYWJhOTlmM2RjZWQzMSBsZWdhY3ktdHJ1bmsKKzk1NzggODA4NDc5Zjg1YTI5YTNiMTE5ZWFmNWI1ZGNlN2FkOGRhZDllMzIxMSBsZWdhY3ktdHJ1bmsKKzk1NzkgMGRjMmZjYjA3NmFjYTViN2I0YTJmZDE1ZGQwM2M0YzA0NDc4ZTU5NCBsZWdhY3ktdHJ1bmsKKzk1ODAgZWZhYTAxZGVmZmQyZGIwNDIwZTNjOWFiNzhmZjZlNjNkMzY0OTRiMiBsZWdhY3ktdHJ1bmsKKzk1ODEgMmU1YTExNmU1NGVjZDVjY2UxZTQ3MDRjOTdlMzFmZTU4ZjQwNGExNiBsZWdhY3ktdHJ1bmsKKzk1ODIgZTcwNjFhYjI0ODUyMTVlNDRiYjQ3YWJlOTI4ZTYyN2EyOTU2ZjdjYyBsZWdhY3ktdHJ1bmsKKzk1ODMgMjhjN2Q1ZmNkM2FjOWRhMzFmNmE5MWY4YThkMmU3MWMxNjgxMWE2MyBsZWdhY3ktdHJ1bmsKKzk1ODQgMzE3NmRlYWNiNmQxZjBlYWE2NTAxMDY5ZTI5MzZkNzllYWE3Yjg4OSBsZWdhY3ktdHJ1bmsKKzk1ODUgNmM5MDBhZGIxZWMzYjE1YTEwM2MzYzhhMmI2YTY5MThjYzk1ZGI0NCBsZWdhY3ktdHJ1bmsKKzk1ODYgZWQ2MjU0ODA0NTYzNWU1OWJlYWYyN2VlNzY1ZThkZWJlMGFlYjA4YyBsZWdhY3ktdHJ1bmsKKzk1ODcgZjQzNjY3ODY2ZDVlNWU2MjFmYWQ1YTUwNzk3ZTg0MWY4ODRiMTI2OSBsZWdhY3ktdHJ1bmsKKzk1ODggMjgyMjM2OGMyNjZhM2YwOTk2ZDA2ZWJlMGRmOTAwNGY1N2E0OGYxYyBsZWdhY3ktdHJ1bmsKKzk1ODkgZjA2M2YxZWIyOTY0YmM0MzFhNzBjMjIwNmQ4NGRhYjYwOWQ4ODAyOCBsZWdhY3ktdHJ1bmsKKzk1OTAgZWNlNDEyM2UzNmVhMmNjOTliNWRlMzJjOTIxYmU3Yzc1MzExYmM0MSBsZWdhY3ktdHJ1bmsKKzk1OTEgZjVmMzA1ZDdhNjE3NTc0NGUyYzNkYzcxYTRmYWRkZjkwNzI2NjUwNSBsZWdhY3ktdHJ1bmsKKzk1OTIgZmEwOTM3MmY3ODcyZGJhYzQxMWJkNzViMjU3N2MzNjhiOGFmMmFjNiBsZWdhY3ktdHJ1bmsKKzk1OTMgZWE3ZGM1MTBlMmRmNTY5ZTg1YjA3MGNiYjExN2UwNjJjNzZmYzAwMCBsZWdhY3ktdHJ1bmsKKzk1OTQgNDE1MTRkMWVkNjY0ZTJhZmFjMWJkZjVkMzE1YTBlZmZjZGQzYmY4OSBsZWdhY3ktdHJ1bmsKKzk1OTUgNDE5ZGNhMmIzYTYxNzkwYjQzZWM1OWRjMWZhMzFhMWEzZDljZGE1MSBsZWdhY3ktdHJ1bmsKKzk1OTYgZTkxMDhlOTdhNWEwMTdlMDI3ZGYzM2NkYmZhNTU0M2U5MTQ4MjM4ZCBsZWdhY3ktdHJ1bmsKKzk1OTcgNTE2MTg5OTg0YjBjYTM5NGNlMmY0YmZiNWFlYmNiZWM1ODNkY2VkNiBsZWdhY3ktdHJ1bmsKKzk1OTggMGVmZWQ0ZDMzMjNiMTMwMmFjY2EwMzliZDcxNmU1Y2NmOGQyZTM2MyBsZWdhY3ktdHJ1bmsKKzk1OTkgYzg3NDVkMjA1MTIyNzE2YzllMTBkYjc5OWZiNmYxMmY5ZTY4NjQ4NCBsZWdhY3ktdHJ1bmsKKzk2MDAgNDFkNmRiOGUyNmRjMDMzOTNkZjg3YjQ5MjcyYzViMjQ5YmIzMjU2OSBsZWdhY3ktdHJ1bmsKKzk2MDEgNWQ1MTdkZGNiZDJlZjUxOTMzZThmMWZlNGNjMWM1ZDMyMzNlNTAzNyBsZWdhY3ktdHJ1bmsKKzk2MDIgYzAzN2QwMGIxZTJjYmE4OTg1Y2I2MzljMTA2N2IzZjY0NTU3ZjE3MCBsZWdhY3ktdHJ1bmsKKzk2MDMgZGU0YzgxYzA2OTk0MjliZWU0OTdmZDhiMWFkNzQ0ZjhjNjkzZDVmOSBsZWdhY3ktdHJ1bmsKKzk2MDQgZDJjMTEwYWNjNjBjMTY2MjYyOTU1NzBmN2Y2YTU5MzAzZjJjMzk5MCBsZWdhY3ktdHJ1bmsKKzk2MDUgMWM0YmFhZGE1NTllMjMwZDM0MjE2MTZhMmExZjZhOTljOWU3YjZiYSBsZWdhY3ktdHJ1bmsKKzk2MDYgZGU0ZGNhOWU0Nzc4Y2ZlZjk3YTlhOGNmMTc3OWQ3NjkwYWUzNGJiOCBsZWdhY3ktdHJ1bmsKKzk2MDcgOTczMTViZjA4ZmFkNjIzZDYyMDRkMDVlMDdiNzZkMzc2Njk5MDAxZCBsZWdhY3ktdHJ1bmsKKzk2MDggZTRjMzFkYzMwNjIzYzZkOGE4MTYwNzUwODEwODU2ZTNjZmYxNGEyMCBsZWdhY3ktdHJ1bmsKKzk2MDkgZGZkZWFjNWUxOGM2MjVhYWQ5OThhMGFjN2U2MDRiZjVkNWYwNzRlMiBsZWdhY3ktdHJ1bmsKKzk2MTAgOTZmYTY3NTNlOTU2Mjc5YjViNjllNTNjODZmMTYzNGZhNTI4NjQzZCBsZWdhY3ktdHJ1bmsKKzk2MTEgYmE4NDllNDhmOWNhZTIzOGM5MzNhYmFiMmM5NGE5Mzk2ZjBlNWI3MCBsZWdhY3ktdHJ1bmsKKzk2MTIgMzkzOWY5ZmY2NjVmOGZiZWEzNWRjYTU3NzFlOTk2NDMxODVkMDA0OSBsZWdhY3ktdHJ1bmsKKzk2MTMgZWZhMjI0MzNlODU1ZGE0ZjQ1NWIxZTVjMGM1NTM2ODcyNDVmNjdkNSBsZWdhY3ktdHJ1bmsKKzk2MTQgOTNmZmU2NDFhNTEyNzZmZjRkYTE3YzJmNTRhYzlkMWQ4ZDA5MmM4ZSBsZWdhY3ktdHJ1bmsKKzk2MTUgMTZhM2NkZDJmMWQxM2I4MjAwOThmMzBmM2Y1MTRkMTQ0MTcyYzYxOCBsZWdhY3ktdHJ1bmsKKzk2MTYgYmY5MWMwZTE2NWFhZGNmNWVmYjEwNjAxYjAzZWZiN2E2ZDUyNWQzZiBsZWdhY3ktdHJ1bmsKKzk2MTcgZGM4Njg3YjUzZGQwZjE3NjhhMDFiOTY4ZWQ5MjUzODQzYTc0NGFkNyBsZWdhY3ktdHJ1bmsKKzk2MTggZTdiZmVhNDFmNjE3ZTg4ZTg3NTZmYzE1YTQ4NzBmZWUzYTYwMmM1MyBsZWdhY3ktdHJ1bmsKKzk2MTkgYjgxZmI2N2Q5MDhkN2E5NzNjZTEwMjJkNmZmMDM0ZTgwMDk0N2IxYyBsZWdhY3ktdHJ1bmsKKzk2MjAgYWZmMWU3YjFmNTIzZDczMDViYzNlMTFkMzJjYTcwMjU0MTg4NTAwZCBsZWdhY3ktdHJ1bmsKKzk2MjEgM2YwYmU3ZGU3Y2E1Y2E1NGFjZmNhM2UxOTM0YzNkMzE4OTdhMTg0MyBsZWdhY3ktdHJ1bmsKKzk2MjIgNGVmNmE4M2IyZTYyNWUxNjM1OWNlZmExNTg5N2Y4ZWFhMTBhY2ZhNyBsZWdhY3ktdHJ1bmsKKzk2MjMgNjA3NDg0N2ZhZDFkZTQ5NzAyOGVhOTJkNGZkMGVjZjNhOGIyYzY0MiBsZWdhY3ktdHJ1bmsKKzk2MjQgNDllNGUzZjMwZTU4ODAyYmE2ZGFiMGVkMjUzZThmY2MwN2FhYzgzZSBsZWdhY3ktdHJ1bmsKKzk2MjUgNTEyOGM2MDcyYWE1MWJhNzE2YmM3ZmIzYmRkMDAyYTU4OWNkZDg2MCBsZWdhY3ktdHJ1bmsKKzk2MjYgZDQ4Yjk5ZDg1NjE3NDJkNWQ3N2M4NWRmNTU4MTI3ZThkNmJlZDliOCBsZWdhY3ktdHJ1bmsKKzk2MjcgN2VkYzMwZGY3M2Y2YTJjYjIwZTVhY2IyZTZlM2EwYzZjODU4ZTdmZiBsZWdhY3ktdHJ1bmsKKzk2MjggYjg2NDAyOWE1YmM1YzVkMDNhMDEzNTkzZjhjMjUwMzBiMTU2NzMyZCBsZWdhY3ktdHJ1bmsKKzk2MjkgZDMzOTk1NGVhNTdkODk4NzkzMWM0Njc4Y2I5YzE1NDU1NGJlODkwYiBsZWdhY3ktdHJ1bmsKKzk2MzAgZDM5YTgwNTg1MmMyMGFlOWM3ZWY4ZGY3YmJiOGRlZmViYzkyNzE3NyBsZWdhY3ktdHJ1bmsKKzk2MzEgYTc2OTBlZjVlMTU5MzdlMTAyODBlOTUzNGM0ZWYxYTI5YzMxNGMyNCBsZWdhY3ktdHJ1bmsKKzk2MzIgNzQ5MTZjOTZkZGI5NjUxNGY0NTJiZjQ0ZmZhOWEwMzgyMjJlOWZlYSBsZWdhY3ktdHJ1bmsKKzk2MzMgMzBhYjM5YzJiMTg2MmU0ZjBkZWMzYjhkNGVlNmVhYWFkZGI3MDc3MiBsZWdhY3ktdHJ1bmsKKzk2MzQgY2U2YWQxNzBjMGNlNzJlOTA2ZmU5N2IyZmNmZWRjNjlhOTFjOTMxMSBsZWdhY3ktdHJ1bmsKKzk2MzUgYTZmYTlmM2NhZDEzN2NhYTVmN2M1ZTJjNzlhOWI2NGI3YWQxZmFlZCBsZWdhY3ktdHJ1bmsKKzk2MzYgZmI3MWI5MmQxNDNhYTFlMTZiNWIwMjRjYTBhMWMxOGNkOTIxYzkwZCBsZWdhY3ktdHJ1bmsKKzk2MzcgNDlhMjBkMDBlMzRjZTVmNWM2ZGY3NTljMGZiNjE2NTFhNjI5OTQ0ZSBsZWdhY3ktdHJ1bmsKKzk2MzggYTY0YTQyM2Q2YjU0MGFhNjQ0NzExNzZmYzZjZGM2MWYwNzE5NGExYiBsZWdhY3ktdHJ1bmsKKzk2MzkgNWFiNzA4MTgxZmE2MjIzMmYwNjU0NmZhZGZmMmUwMjhhMTFmMmZkMiBsZWdhY3ktdHJ1bmsKKzk2NDAgOGZiNWZkMDc1YjJhYjEzMjAzODRiY2ZhYjAzZjUwZGU3NzI2ODhlOSBsZWdhY3ktdHJ1bmsKKzk2NDEgZTU2NDZlZWNlYWU4ODc5ZmMwYTNkYzUzZGRjNzcwOTUzNTgwM2JiNCBsZWdhY3ktdHJ1bmsKKzk2NDIgYzNiNWIxYzI1YzUxYzdmMTZjYzdhOGJhMDNlYzZiZjc1Zjc3MmVkMyBsZWdhY3ktdHJ1bmsKKzk2NDMgMGQ1YTlhMGU3ZDY0YTEyZTAyYmU3MDczNTcyNTgyZDNkZDJiNjYzYiBsZWdhY3ktdHJ1bmsKKzk2NDQgNjZjYjAwMzE3YWNlYmI2ZjU4MDMxOWEwZjNmZjU4MGIzZGY2MWQ3ZSBsZWdhY3ktdHJ1bmsKKzk2NDUgZTU4YzdiNTBlOWI5YzZiOTZkODkzM2M1ZjNkMjc2YjU2OTI1OGVkMCBsZWdhY3ktdHJ1bmsKKzk2NDYgMjEyNTk3YWY4MjliYmNhYmMxNzk3N2RjNTgzZThkMmI4NDUxZTUzMiBsZWdhY3ktdHJ1bmsKKzk2NDcgMzczZDc4MTE4MTEzYjhjZjRmODkwODY2MmUzMDNkYjU3N2YyZGMwNiBsZWdhY3ktdHJ1bmsKKzk2NDggYzVlNzY3ZTIyYmQxYzNlNjVkMzZiNjIzZmE4OWU0OTFjZDU4OGFlZSBsZWdhY3ktdHJ1bmsKKzk2NDkgY2U0NzY2ZmIzZjU2M2QxNzYzOGM5MWExYzQyNGIyNTU2YmI2NjU5MiBsZWdhY3ktdHJ1bmsKKzk2NTAgYjViMGMzMjRjZTU5ODc4ZmNhZWVhYTE1M2VmYTFkMDhiN2MzN2IwMCBsZWdhY3ktdHJ1bmsKKzk2NTEgMGE0ZTI5YTI4NjU1ZTQwNDMwZWNmMjRhODM5YTcxOGRkMmY3YTcyZiBsZWdhY3ktdHJ1bmsKKzk2NTIgZGM5YmI0N2IzNTUyOGQ3ZGYyNjdjY2EzZDYwMWY2MTMwNDNjZjQ1MSBsZWdhY3ktdHJ1bmsKKzk2NTMgYTI4YmY2MmFjMzM1YjVmMzA2YTNlZTU3ZWM5MmRhMjE3ZjhhNjFiMiBsZWdhY3ktdHJ1bmsKKzk2NTQgMGJkMTg1YzJlNTgxMDNlMWU4MGQwOTNmYzM4OGUyMmQ3MzRhZDdhMyBsZWdhY3ktdHJ1bmsKKzk2NTUgN2MwMDRmYzEwOTg3MzdhY2YwMTU5NDJlODdiYzY2NjNhZmZkODE0ZSBsZWdhY3ktdHJ1bmsKKzk2NTYgNDA5ODdiODZhMWM3NGZiODVjOTZmZDc5NzJlMzQ2YTA3YWNlNTU5MCBsZWdhY3ktdHJ1bmsKKzk2NTcgN2Q2MWZhOWI1N2E4YzU0MmE5NTZhZmFiMmExYjMwYzNiMzljZDJjMiBsZWdhY3ktdHJ1bmsKKzk2NTggM2E5NjBiMmUyNjY3N2MxYmM1YmU0YjRhNTE4OWIwZGQxNmVkOWVkMiBsZWdhY3ktdHJ1bmsKKzk2NTkgNGYxMGQyMzNmMWRjNmQzZDBiNDE2YmY5YWJjNjdhMTQ2NzMxNmQ3NiBsZWdhY3ktdHJ1bmsKKzk2NjAgNTkzNjJlYTdlMGY4YjQxMDY0ZDE5NTAwOWZiZWI5ZmQyNjcwNzU2OSBsZWdhY3ktdHJ1bmsKKzk2NjEgZGU1Y2I3ODllOWYwZjJmODdiOTkxYTdiZDhhZTk3NTdjOTg2OWNiNSBsZWdhY3ktdHJ1bmsKKzk2NjIgNmY3ODE5NWJmOGY2ODdmNzBlYzU4NjhhOWRmNjIxMWRhOWQzYTYyMSBsZWdhY3ktdHJ1bmsKKzk2NjMgYTU5NmJiZTcyNTc5ZDhiNWUzNGNmNDEzMTc5ZjM2ZjlmZjVkNzg0OSBsZWdhY3ktdHJ1bmsKKzk2NjQgNmU1ZWI4NDUyNDZjMDliZDliNDU0M2RmMGQ2MTU3NjRlYWNkYTc1YyBsZWdhY3ktdHJ1bmsKKzk2NjUgMmE5YmE1OWFiYzM4MmI3OWYxODI4ZDg0MzUzMjY1YTBmMDU1NGFjYSBsZWdhY3ktdHJ1bmsKKzk2NjYgZWU0YTFhMzBkN2NlOTI3YTc5NmE0NjMxZmFiNWJiMzc0N2U0ZTNjYSBsZWdhY3ktdHJ1bmsKKzk2NjcgZjNjYzhkNTNhYzgwM2RmMmFhMzBkMWIxZDM3NjdiMDg1N2ZkYzhjNCBsZWdhY3ktdHJ1bmsKKzk2NjggMWY5ZDk0MmYxNTZjYzkzMmZkZWY5MTMzNDU1YjJmODA0ZDBkMWZjMCBsZWdhY3ktdHJ1bmsKKzk2NjkgNzA1NGJlNWFkN2Y2NzQxYWY5YmIwNjU0N2YzOTlmZGM2OWY0ZGE0MSBsZWdhY3ktdHJ1bmsKKzk2NzAgYWY5OGI0MjE0MjRjYzM5YjhjNmE4Yjc0YWM2ZjZlOTRkZTQ2ZDlkMSBsZWdhY3ktdHJ1bmsKKzk2NzEgZTI3OTU3MmUyZGEyNTUxNjY3MTgyZWRhMjZhN2ZlNTA3M2Y4NTZiMiBsZWdhY3ktdHJ1bmsKKzk2NzIgYjAwOWE0YzI0MTg4ZDUyODNmYmViMDJjMzM1MzZhZDVmOGMzYWRjNSBsZWdhY3ktdHJ1bmsKKzk2NzMgYzEyM2E1YTU5Y2RlMjFkMGMxMjhhYTNkYTJlZGU5YTQwNjZmYTI3ZiBsZWdhY3ktdHJ1bmsKKzk2NzQgMzA5ZmZmZTc2OGE2MjQyMTg1NTI5MDA1MDdkNmQ3ZTQ1NmNmNzE2MyBsZWdhY3ktdHJ1bmsKKzk2NzUgMjZkMDc3MzViYTRhNWIyNjdhYmZjODcwZTYzZGY2ODk5ZmM1MWFhYSBsZWdhY3ktdHJ1bmsKKzk2NzYgNWNkMmY2OTliZjY5MTY2YWQ3YTVkNTlmMWVhNjVmYjUxOWJjN2Q2OCBsZWdhY3ktdHJ1bmsKKzk2NzcgZGIwMDdhMmNhN2I2MzY3NzM1MjFiNWJlZTNkZDcyOTJlNTRhOWVkNCBsZWdhY3ktdHJ1bmsKKzk2NzggOThhOWRhNTIwZjFkOGMxOWFiNWJkNGUyMDMzMjdmNGU4Y2NjNTIxMyBsZWdhY3ktdHJ1bmsKKzk2NzkgNzIwZTkxODM5NjFlZThhZGQ3NDAxMzIzYjljNWMwMTUzZGRmNTQ0OSBsZWdhY3ktdHJ1bmsKKzk2ODAgZmVkM2QyMDBmYjU2NWQyYWNlODAxYmM2MTEzNmE4YjM3ZmNiYzgxZSBsZWdhY3ktdHJ1bmsKKzk2ODEgOGMxMjlhNTY3ODY3Nzk1MmEzMDI4YzlhMGNkMGI4YTRiOWQ5YmU3ZSBsZWdhY3ktdHJ1bmsKKzk2ODIgNDhhYjY2ODc0YjExOTFjZGQ0NDNhMGUzMTMwZjAzOTlhZDA5ZTkyMiBsZWdhY3ktdHJ1bmsKKzk2ODMgMDlmZmFiMjczZWViNTY1YTc2MTk1OTRkOTA1OTY4NTJmZjRkOGUxZSBsZWdhY3ktdHJ1bmsKKzk2ODQgM2YyNTVhZWRmNjIxZTk1ZTI2NzI5ZjNmYmQwOTAyNGRiNzRhMjRhMSBsZWdhY3ktdHJ1bmsKKzk2ODUgMDZkYjEwYzc2ZGM5NTJlM2ZhMDE5NGQ4M2I0MGM0NzM5NzZiY2RiOSBsZWdhY3ktdHJ1bmsKKzk2ODYgY2UyNzFlNWY5YmM1YWM4OTdjMGI5YTRkODJjM2RhNzBlNTg2MTZiNSBsZWdhY3ktdHJ1bmsKKzk2ODcgYzlmZTM1YTgyOThhZDg1OTZhNjMxMWE3MGRhMjlkZGViNjdiYjMzYSBsZWdhY3ktdHJ1bmsKKzk2ODggYmNjZGVjYTgxNjY5Y2UzYmQzMDE0YTMwMzEwY2Y3MWY1MmZhNTIwZSBsZWdhY3ktdHJ1bmsKKzk2ODkgYzc2NDIxN2FlNmViOTJkMzFkOTAwNWNmN2ViMjljOGFjNWMzMTcxNCBsZWdhY3ktdHJ1bmsKKzk2OTAgYjliYmZhMTY5OTIwZTQ1NWIxMjcxM2Q4MzJhODg3ZDlmOTIxYjMwMCBsZWdhY3ktdHJ1bmsKKzk2OTEgZmY1MjRiNjliNjY0YTNmYzY1MWY5ZmU5MzdlODg3NDk5MGI1Y2FiNCBsZWdhY3ktdHJ1bmsKKzk2OTIgNjIyMmQzMzcxZmI4MGViODQwZWU1MmQ4MTIzNmMxZjNiODk2OTc5YSBsZWdhY3ktdHJ1bmsKKzk2OTMgNWE3ZjI2OGEwNzgxYTk0YWRjNWM5ZDc1MzVkOGIxOWVlOGM0NmNlOSBsZWdhY3ktdHJ1bmsKKzk2OTQgMTZlY2YxNTU0YTgzNTc5MzgwZTczNzZlZWViZjExZmQzMTk1ZjEyZCBsZWdhY3ktdHJ1bmsKKzk2OTUgYmMwMDg2NDA0YTlhNTUyOTIxYmMzMmFhMTE4MmJlZTM1YmYwY2I4OSBsZWdhY3ktdHJ1bmsKKzk2OTYgOTBhMzVmMWI5MDA4NWZhMTlmMzQwODQ0ZTEwNTI2YTZmYWMyMzkwNCBsZWdhY3ktdHJ1bmsKKzk2OTcgNjQwYjk3ZDEwNWRmNzExNTJmOTczMmFkNTMzZGZiZDM1M2VkMzM1ZiBsZWdhY3ktdHJ1bmsKKzk2OTggZDBjYTgxNWM4MDcyNTQ4MTNlMjNjODhjOWRjZDAyZmMxYWIxYzk4NyBsZWdhY3ktdHJ1bmsKKzk2OTkgOTVjMTAxOTY0NDE0OTg1NzMwYTg5MWZkMzA2OTk2YmNiMGI0YTYxOSBsZWdhY3ktdHJ1bmsKKzk3MDAgMTBmZGYxNmY0ZGU5YzFmOTRmNmI4NTIzOGJjNjQwYjBjMzU0MTU5NSBsZWdhY3ktdHJ1bmsKKzk3MDEgOWRkZTA3YTU5M2Q4M2ZjMjMyYzcwZGIwMTI5MTMzMzAyYzI3YTZiNSBsZWdhY3ktdHJ1bmsKKzk3MDIgZDMzZDQ1NjIyZTY3MTFkOGIxYzk3OWNkNTAwZmFhMzcyNzA1MDhkZCBsZWdhY3ktdHJ1bmsKKzk3MDMgMTFmMzRiZTBiZTExZmY0Mjc3ZDUwYTJhNDc5ZjY5ZDQ3OWEwNGEzYyBsZWdhY3ktdHJ1bmsKKzk3MDQgNDc4MDJlMmY1YmVkYjRmMjJiYmM1NGQzMTZmODExOGNmMDM4MWJkMCBsZWdhY3ktdHJ1bmsKKzk3MDUgMDQ1ZmZhNGM1NmY3ODU2YTIzNGE5NTk0ZGRkZDc2ZTUwMjZiMWNmYyBsZWdhY3ktdHJ1bmsKKzk3MDYgYmM2NDgyZjdlNzhmYTM0NjZiOGI5NDFlYzkxYjk3YWQ5ZGQwYWU0MCBsZWdhY3ktdHJ1bmsKKzk3MDcgYmMyOGEwZWE2NjQwZjc3YjRiZGI0MDg0ZjI2MDYwZjQ5ZWJhNDg4YSBsZWdhY3ktdHJ1bmsKKzk3MDggMzc1NzIzYTc1NTljNzE1ZTA5NGJlYmMyNTNmMTViZjAxZTg4NTEyZiBsZWdhY3ktdHJ1bmsKKzk3MDkgMTc3YWQ3M2JmMWE5MjVmMDA5MzM1ZDdkN2ZkZTFhOGQ5MjI1MGJiNCBsZWdhY3ktdHJ1bmsKKzk3MTAgNzRjNTcyODhhMDJiOTk2N2JhNjQ4ZjRjYjVmYmUzM2IzM2Q0YzI5OSBsZWdhY3ktdHJ1bmsKKzk3MTEgMDhjNWJiZmFlNTJjMGRmZTA2M2VmZTgwMjMxZTczNmIwMDY2NjY5MiBsZWdhY3ktdHJ1bmsKKzk3MTIgMjNjNTA5YWEzZjBkOTQ3M2NlNTJhMTVhNzYwMDI0NzA2Yzc3Njc3NiBsZWdhY3ktdHJ1bmsKKzk3MTMgZGViZThlMDgxMjYwODVmNDAwYjNkYTYzYjBkMjNkNzY0MjRkY2U2ZCBsZWdhY3ktdHJ1bmsKKzk3MTQgZmQ3YTU5OTNkMDZkYWEyODQ4ZmMxMGMxN2IyZGE3MTU4MWI0OGIxNyBsZWdhY3ktdHJ1bmsKKzk3MTUgY2RiNGE4MTM3OWFkN2U1OTczZjE1YmVlNTliMTZmNTZlNDI2NDBiYSBsZWdhY3ktdHJ1bmsKKzk3MTYgYWE1NGQ3YzNkYWY5MDE2N2E5NWZhNmJkYjQzZmY3M2Q4NzNiYTQ3ZCBsZWdhY3ktdHJ1bmsKKzk3MTcgMzA2ZjczN2JhYjU3NmE4Mzg5MzJiNTk4NGE0NjZkY2Y3NjVkNTZmYyBsZWdhY3ktdHJ1bmsKKzk3MTggMmI4MjIzMWE5N2NjNmFiZjc2NWQ4M2E0YTIwOTZkYWIxMTNmNDExNyBsZWdhY3ktdHJ1bmsKKzk3MTkgYjU5ODU1NDJiYWUxZTY5ZjY1M2E0Nzc3MDFmYjY3ZGEwZjFiZWU4NiBsZWdhY3ktdHJ1bmsKKzk3MjAgZTc1MDA2MDY5MzY3ZmM2ZjExNTMwZDZlY2I1ZGRlOWRhNWZlZGQ4MCBsZWdhY3ktdHJ1bmsKKzk3MjEgNWY1YjllODcxODg2Y2Q4YjllYzQxNTE5ZTZlMjUzMDRjZTE1OTU0OSBsZWdhY3ktdHJ1bmsKKzk3MjIgMGI1M2MwMzkzYzg4MjYzZDdlNDFiOGYxOWEzYmIxZGIyZmQ0Yjk3OSBsZWdhY3ktdHJ1bmsKKzk3MjMgYTcxMTY4NjQ5ZGM1MWVmODNiMzU1ZjI2ZDk5MjdlYjg3ZDRjM2RmOCBsZWdhY3ktdHJ1bmsKKzk3MjQgMTkzZDcwNGNiY2M4NTFhZTczOGMxZmI4YTE1YTQ0Y2MyYzBjZWNlNSBsZWdhY3ktdHJ1bmsKKzk3MjUgMTI3MmI1OGU4NGFlYjZjMmRmN2EzOWMwZjI3YmQwMGJhZmFmOTQ2NCBsZWdhY3ktdHJ1bmsKKzk3MjYgMjg3NjIzY2NlMjg5NDUzZTI2Y2M4OWJkYzllYTlhY2I0MzY5NzUwMyBsZWdhY3ktdHJ1bmsKKzk3MjcgZjBiYjNiY2YzOTdiMjU0OTZjMGQ3YmU0YzlmMTgwYTRkYzRhMzFjOCBsZWdhY3ktdHJ1bmsKKzk3MjggYzY5ODY5MGEyN2IyNTkxMzQwMDUxYzBjYzNjMGI4ODc2MjY1OTQwZiBsZWdhY3ktdHJ1bmsKKzk3MjkgOGEwODAyNWVmOTNkOGY5NTQzNjY5ZmY3ZTM2MGNjYTE5ODkyODFkYyBsZWdhY3ktdHJ1bmsKKzk3MzAgZDNmZDIxODJjZmI4ZWQwMmQ0MjQwMTZiNGU2YjhjOTlkMWIzNjE3MCBsZWdhY3ktdHJ1bmsKKzk3MzEgNGU3NDAyYzhlNDYwYmZiZjhhM2IzOGIxMWY3NDdlMmVkMjlmMTBiOCBsZWdhY3ktdHJ1bmsKKzk3MzIgODEyNjE1ZTU0NTUwZTY5YWRhZDcwYzFmMzg2OWIyZGJkOTg4OGIzYyBsZWdhY3ktdHJ1bmsKKzk3MzMgY2E3OGIwOTVlY2YwMTQ2M2UzZTY5NTc1Y2FiOTFkOGFjMTJmOGFjZiBsZWdhY3ktdHJ1bmsKKzk3MzQgOGM3NDlkZmM0OWJmYTM4ZWQ2ZGYwMmI2NGNiODdlNGRhZjJhYjZjZSBsZWdhY3ktdHJ1bmsKKzk3MzUgOGIwZDZiNjRhMGVhMzljZTMzZTk2ZWQ5NWNiMjZiYzBhNWFhOWY3NCBsZWdhY3ktdHJ1bmsKKzk3MzYgNjE0ZDhhOTA4NGVhZDQ3NTgwMGQxZjNkOWQ5YmY0NDc3M2U3MGJiYyBsZWdhY3ktdHJ1bmsKKzk3MzcgN2NkYWE0NDk1NTMwNzkzYmFlY2U3MGUzZTdiMzZmNzkzN2IzNGRkNCBsZWdhY3ktdHJ1bmsKKzk3MzggYTdlOTUyNGEyYTUyYzY0YWEyODYzZTA2NTFlM2U4ZGI3NjVlYmY2MCBsZWdhY3ktdHJ1bmsKKzk3MzkgYmJmMzUwN2VmM2ZlZjI4NDBhMWQ1MjRlMGE5NmI0MjNmOTAyMTQxMyBsZWdhY3ktdHJ1bmsKKzk3NDAgYzA5OTA3MTA0MDkyYTU5MjUwZjdhN2Y1YzcyYWFiYjkwYzRkMjBmNSBsZWdhY3ktdHJ1bmsKKzk3NDEgNDFhOTI4Y2JjYzVlZWI4ZTBhNmI4ODc4MzcxNzMwMjZkMDNkMDZiZiBsZWdhY3ktdHJ1bmsKKzk3NDIgYjhkNDg0MTI1YzkyZGQ2MjUwZTQ4ZmE3Mzk4ZTljM2ZiMDExNDhiMSBsZWdhY3ktdHJ1bmsKKzk3NDMgYzAwMmZmZDFmYmJmZTdiYTRjYWVmYzA1NWQ0ZmEwMjc0YWFjMDRjYiBsZWdhY3ktdHJ1bmsKKzk3NDQgODNjMGU5ZGQ0MjIxZjg2YWU3M2I0NmQyMjg3YWMzYWIyYmViNzRkYSBsZWdhY3ktdHJ1bmsKKzk3NDUgY2ExNGZkYjk1NWVmODI3YmI0N2M2OGY1MGZlOTQxOWFmNWQ5NzFhNSBsZWdhY3ktdHJ1bmsKKzk3NDYgYTJmNGM5NDRjYjg3MjFiZmM2NmViMmY5ZDY3YzViYjM4Nzk5ZWVjYyBsZWdhY3ktdHJ1bmsKKzk3NDcgNjgyZDNlNWIyNjdmNDcwYjNjMTAxNGIzMDI1MzUyYzRkOGIzZGVkMSBsZWdhY3ktdHJ1bmsKKzk3NDggZjU1OTY5YzFjM2Q1NDE5Njk4MmQ5Y2EyZmZlYmM0NzFmMzU3ZTlkMiBsZWdhY3ktdHJ1bmsKKzk3NDkgMDA2MWQzOTE2YWU0YjE1ZTllMDYxOWFmNzM0ODE1NWVlMmVkZjg3NiBsZWdhY3ktdHJ1bmsKKzk3NTAgYzgxN2Y4NmNlN2RiNjcxOTNhNzQ3NGM0MmE0OGM1ZGJkNGI3NGRhZCBsZWdhY3ktdHJ1bmsKKzk3NTEgMTViYTY4YzMzZWQxY2VkYTMwMzI0MjAzZmFlNjlmNWUxYzdiNTk5OSBsZWdhY3ktdHJ1bmsKKzk3NTIgZjVlYTFiMzBjYjNmNzQ5ZTViOThkMzAwMGQzM2Q0Yjk0YWNmOWMxNSBsZWdhY3ktdHJ1bmsKKzk3NTMgMDBjZDlmZTRmNmYyYjA4OWRiNWI0NWRhMTRmZDkxM2YzZjFiYjhjMiBsZWdhY3ktdHJ1bmsKKzk3NTQgMzlkZTQ5NDM0ZGY0MjYxMWM0N2I2OWFmNjg5MjQzMTI2NmY0ODNkZCBsZWdhY3ktdHJ1bmsKKzk3NTUgYmY0ZTc5MGJkNjFhNGI5YjEzOTU1ODE4NTE0NzA5M2M1MTFhYTE3NyBsZWdhY3ktdHJ1bmsKKzk3NTYgNTlkMjc2MWJhMWNmY2FhMGMyZjA0OGE0MDFhZTMxMWE3MTNiOGQ3OCBsZWdhY3ktdHJ1bmsKKzk3NTcgNTJmYmI3MzEyMTAzNDViMDEzNTRlNjQwYjQ0NzA1Y2EyYTcxZTc4MyBsZWdhY3ktdHJ1bmsKKzk3NTggZjIxNGVlODgzOGRlNjgyNmYzNjBjNDFkNzBiODkwM2Y2YWYwMWM2MSBsZWdhY3ktdHJ1bmsKKzk3NTkgMWZkNzg3Mzg3OWFmODJjOWI5MzhiNTVkYWYzYmMxZDdlYzBiMTBkZSBsZWdhY3ktdHJ1bmsKKzk3NjAgNmQwYzQ4NWJhNWU0MTkzYzI2YjM0NDMzNWIyZjYyOTlhZTFjMzI4NCBsZWdhY3ktdHJ1bmsKKzk3NjEgM2EzZWUwNzVkZmI2OTgxZGM2OTQ1ZjEwZTk5MjU1ZDYzNmU1MjZjMCBsZWdhY3ktdHJ1bmsKKzk3NjIgMmYwY2U0ZmI4MTBiYTMwMWJkZTJkMWY1ZTZhOGJmMmMzYWZiYzVjNSBsZWdhY3ktdHJ1bmsKKzk3NjMgZWYyNjlhYjc3MGJjYzViZTZlYjJhNmM0Nzc2MTRmNTgwODVjYmY5NCBsZWdhY3ktdHJ1bmsKKzk3NjQgMWQ1MTE3OWNmN2M3ZmU0NTQ5NjI0ZTg5NmJiYjgxOTZjMGRkOGM4NyBsZWdhY3ktdHJ1bmsKKzk3NjUgYWYyYmM1ZjQ1OTE4YTcwMTIwODhiZTU1N2RhMWM5MmQwYjQwOWRiNyBsZWdhY3ktdHJ1bmsKKzk3NjYgNDE0OGU0YmM4YjI4NWY5YjEwZDljNTQ0NTljYjFlY2JlNjAwOGUzYyBsZWdhY3ktdHJ1bmsKKzk3NjcgNmZlZjAzMGE5NWQ0OWM2NTk0MmUxOGNjZTc5MDVlODI5NmRkNzUxOSBsZWdhY3ktdHJ1bmsKKzk3NjggNzJkNTMxZDU0NTcyOWIwMDM2ODkwMjU5ZmY2MDcxNWExYmYwZmYyYSBsZWdhY3ktdHJ1bmsKKzk3NjkgYjdmODRkMTc5ZTUxYTAzZDVmNWIxZDYyMjlmNGYxNzhlMmEyZjViNSBsZWdhY3ktdHJ1bmsKKzk3NzAgNmFkMjM0YWQ4ZGU1YzZkNTlmNmY3MDUzNGQ4Y2IwY2E0NzY0YTI4OSBsZWdhY3ktdHJ1bmsKKzk3NzEgMGRiZWM5OGFjZmM5Njc0NjQ5YTdhNWNmMTZhZDFmZWU4ZWEyMzU5NyBsZWdhY3ktdHJ1bmsKKzk3NzIgOGU2NGM1ZDU1NDhhMmE0MGI0NTVjYWExNzU0OWIyNmExYzJjZDlkZSBsZWdhY3ktdHJ1bmsKKzk3NzMgMjg1NDQ5MjY4YzM3ZjA4ZmIwYjhjMTllYTA0ZGY0NjAyZWZiODdkYiBsZWdhY3ktdHJ1bmsKKzk3NzQgYjAyNDk5MGQ2MWVjOGUyM2Q2ZGE4NjVjNTkzNjVmMzYxNTdkZWYxYSBsZWdhY3ktdHJ1bmsKKzk3NzUgZmIwYzViMzA3NDc2ZGVhYjIxZjg1OTI4NDY0MzY5YjBkZmM4ZDJhZSBsZWdhY3ktdHJ1bmsKKzk3NzYgMzcwMzQ5NTMxNWU5YTY0MzMyOTE5NGUxYmI1MzQxZmEwMjE5YzIxYSBsZWdhY3ktdHJ1bmsKKzk3NzcgMDhmOWI5MDE2NjliYTFjYTJjZmZkNDYxMTBlYWVjZjg1NDJhZmI0MyBsZWdhY3ktdHJ1bmsKKzk3NzggNDQxYWU0ZjRjZmNmOTE1ZjNjYTc3MDhmMjkzZGFmMjRkODEwZWExZiBsZWdhY3ktdHJ1bmsKKzk3NzkgNGY4NDIwMmMzNzdhY2QxZTg1OGE0YjJiNDgzMmY5YmE3MzNjZjg3MiBsZWdhY3ktdHJ1bmsKKzk3ODAgNjQwZjJlZjRkYTIxMjRlNTNiY2NiZGNiOTcyYWZhYTY3ODYxMDU4NiBsZWdhY3ktdHJ1bmsKKzk3ODEgNjU4Yjc0MmU0MzUwMzVjYzY4OWUxZmI4NjA4MDY4NzM5MmU4OWM4MiBsZWdhY3ktdHJ1bmsKKzk3ODIgMjZhOGU5ZThjYjg0MTFkNjhhMTM3YThhNDM5ZDZjNTY4MzBhNzVlMCBsZWdhY3ktdHJ1bmsKKzk3ODMgMDY3ZTQ4MTNjNmQ2N2EwODBjZGExN2FmNzkxYTU1MjY4ZWMxZmUyNyBsZWdhY3ktdHJ1bmsKKzk3ODQgZjg5ZTljZGRjMDk2MTMwNTU3ZTZkOWU3ZjQyYzBmNTFmNzlkNzMxYSBsZWdhY3ktdHJ1bmsKKzk3ODUgYzk4ZmVmOTIyZDUxNDY4Y2YyMDQ5NTA4MGRhMGNkODUzYWEyZjJiYiBsZWdhY3ktdHJ1bmsKKzk3ODYgODA5NmZlYzcyMmJhNzk2YWYzN2EyOTdjZWYxNDYzOTZmZjM3ODRjMCBsZWdhY3ktdHJ1bmsKKzk3ODcgZDcyNjYzNzJkZDM3MWM5ZDFhNzIzOGQ2MTNjMmI5NGY2ZjNlYjhkYSBsZWdhY3ktdHJ1bmsKKzk3ODggNjA5NWE0NzJmNTc0NWMzYWNhNzQxOTU5NWI3MTk2NTM1YjYzMzE5NCBsZWdhY3ktdHJ1bmsKKzk3ODkgZGY3NjRlNDJiMjU4ZjU3N2VkNTNhZWIxY2ZhNjMzYjE1YWJmZWUyNCBsZWdhY3ktdHJ1bmsKKzk3OTAgNDhkZjIwODBkN2Q0ODI5YzEyOThhOGMxYWRhMzE2MGNlMjAwOWVkYyBsZWdhY3ktdHJ1bmsKKzk3OTEgNWFlODdhN2Y5YTMyM2ZkNjUyYjI5YmRiOTE0MTExYTNkNjgxMmE0YiBsZWdhY3ktdHJ1bmsKKzk3OTIgZDIzYmI5NjllNjNhMDM3M2M2ZmQyY2JkNDNlYTBmYzNjYTk3NjRlZCBsZWdhY3ktdHJ1bmsKKzk3OTMgM2E1NWZiYjk5ZjIwNDc3ZDQwYjRlN2JiZDM1MDYxZWI5MWQwMjQ5YSBsZWdhY3ktdHJ1bmsKKzk3OTQgZjZjNmQ0ZDk3ZGM2NTFhNTMxMGY3NDMzMTU1N2IyMGQxZThlMGYxNSBsZWdhY3ktdHJ1bmsKKzk3OTUgOTI3ODQ4MjQ4MDBjM2RkMzczZDE0ZTU5NjVlNDUyN2E3YzVkNTFmOCBsZWdhY3ktdHJ1bmsKKzk3OTYgODMwMDA5YjU3M2VhMDk0Yjc0ZmI0NGQwMzJkMmYxNzYyMmQwMjY3NiBsZWdhY3ktdHJ1bmsKKzk3OTcgMDk4OTJiZjZhNTBkZmYxNTc3MjQ0MGNlZDk4Mzk4MzU4NGM4NTg3OSBsZWdhY3ktdHJ1bmsKKzk3OTggMTkyOGYwNWJhNDAwY2EyZWI2MzNlNjNjMzRmODZjM2U1NzcxYjc4MyBsZWdhY3ktdHJ1bmsKKzk3OTkgOThlZmQ1ZDkxZmNhNGZmZGQ2YTVlODA3M2Y3MDg2YjMxZTJlZTllYiBsZWdhY3ktdHJ1bmsKKzk4MDAgNzI0ZjgwNzI2MDU1MGRlODJhZWE2MDRlNWFjY2Q1N2YyZDgyYmFkYSBsZWdhY3ktdHJ1bmsKKzk4MDEgNDdlY2YwMmFhZjk3YjE0ZTFjMWM4NjFiMzc0NjJmZWFhNzdmZjFiNiBsZWdhY3ktdHJ1bmsKKzk4MDIgNTUxMjViMTE0NGZhM2E2YTVlMTY5MWEyODNkNWI4MWFkOTM0ZWJjOSBsZWdhY3ktdHJ1bmsKKzk4MDMgNmUwMGZiNzIzZjY5ZGJkZDYzZTJlODY3NDUzZDE1OTJhMWVmZjQ2NyBsZWdhY3ktdHJ1bmsKKzk4MDQgZmVjOGUwODRiMDc0ZjU3MDI3YWUzZTM2M2Y3NTM4NGNlNzRjMTU3YSBsZWdhY3ktdHJ1bmsKKzk4MDUgNDViNjZlOWFiNWVmYTAwODFiZTM5NWRiMTkxMmU1NWE0YmNjOGQ0ZCBsZWdhY3ktdHJ1bmsKKzk4MDYgYzJhMDg2OTg1MmViODQ1Yjk4YTlmZDY3NTAxYTI4MjQ2NWY0MjViMyBsZWdhY3ktdHJ1bmsKKzk4MDcgZTRjNzRmN2YzZTQ2NTk0YTRkYjhlMTg0ODM2NDgyZGM1NjhjZDZhYiBsZWdhY3ktdHJ1bmsKKzk4MDggOWFlMjE1Y2EyMGRiNGI4Nzc0NzgxNDRlZDg4OGYyNzMzMWU2ZjhlMCBsZWdhY3ktdHJ1bmsKKzk4MDkgODNhMzBhMzU4M2QzZjM2YTM5NGI3ZGJiYjZmMmJhNGFjZjI0NmVjNiBsZWdhY3ktdHJ1bmsKKzk4MTAgMjUyNTM5ODcxODczYzIxYWEwNTk1NzFmMjEwYmFhYzkwOTYxMTBhNCBsZWdhY3ktdHJ1bmsKKzk4MTEgNmU5Njg4Y2U3YzU3NjEwMjc5ZmM5ZDBlZDgyZmI3ZjNjOTZkNGFlNCBsZWdhY3ktdHJ1bmsKKzk4MTIgMzk2NWI2OWQ1MTE2ZTU5OTBmYzQ2M2ZiMDZjYzBmZTM4MmY2Y2ViOSBsZWdhY3ktdHJ1bmsKKzk4MTMgYzM3YTI4YTNiYjg1YjI2N2E4NDU0M2IwZGEwNGJjN2U2YTg1NmEyZCBsZWdhY3ktdHJ1bmsKKzk4MTQgZTE0OGNlMThjM2NlNGIzYzlkY2U0MTVjNzEzNDU3NzVlYTkxYjllOSBsZWdhY3ktdHJ1bmsKKzk4MTUgMTI5MzljOGI0ZTMwYTU0NGRkOWVmNWM3Nzk5NjU2YWFmYzMxM2E2ZSBsZWdhY3ktdHJ1bmsKKzk4MTYgZjkwNDg2MDA5MDVlOGNkNDM0OGM1M2UxYWJlM2M5OTRiZGQ0M2M0NCBsZWdhY3ktdHJ1bmsKKzk4MTcgZThiOGJhMTY5YjZkZDBlNmE1MzkxZjQxM2M1ZjNjYjU0Nzc5YjBiMSBsZWdhY3ktdHJ1bmsKKzk4MTggNmRjY2FlNzViMjZmNmIyYTBjNjM1YzFmNjlhMjg0ZjZhYzUxNDdhNiBsZWdhY3ktdHJ1bmsKKzk4MTkgMDA2OWYzZWJhOWEyNTAyYzlmYzE2Y2FlNGE0MGFkZmNmNzRjMjQwOSBsZWdhY3ktdHJ1bmsKKzk4MjAgOWY3NGY5MjIzYjQzNTU3ODA3NTQ0MmIwM2M1OTk4ZDFlNGE2YWNjNiBsZWdhY3ktdHJ1bmsKKzk4MjEgNGZmY2JjYzVlOGZlMzkzMzM2OWEyMzZkN2MwYjI1MDllYzViODUzOSBsZWdhY3ktdHJ1bmsKKzk4MjIgYmJhMmIyMDVmOGVkZDQ5ZmY0YWRlNmQ3M2I2ZDAzNGM5ODRjYmY3OCBsZWdhY3ktdHJ1bmsKKzk4MjMgMDgwOTY5ZGJmYzdjNTE4OTA1ZjA3MGMwZDJjYmU2OTdiODNkOTcxYiBsZWdhY3ktdHJ1bmsKKzk4MjQgNWE5MjU2YjhjMzM4MmEzZWI4ODNiZTlhMjg0ZGUzNTVlMjYxMDg0ZCBsZWdhY3ktdHJ1bmsKKzk4MjUgZDc2YTRlZmExZjUxZGY5NDUwNjQzODdiOWZlODYxYTVlY2FjZjMxOSBsZWdhY3ktdHJ1bmsKKzk4MjYgN2JhOWNmNGUwYzQwNDA0ZGNhMzIyMzE4MGFmMjlhMTJkNDEyMTlmMCBsZWdhY3ktdHJ1bmsKKzk4MjcgMmJkNWZiZDYwODcwOTlhODU0Y2M0OWJhOTkzYmRiYjdhYzdhNjg1YiBsZWdhY3ktdHJ1bmsKKzk4MjggNGZmNWMxNDk4ZGM4ZGI5YzZmOGZkODEwZDZhMWJmYzk5MDVhZGI1ZSBsZWdhY3ktdHJ1bmsKKzk4MjkgMWJhY2E1ZDJiYTU3YTRlNWIwY2IyYzZhNzlhOGE4ZDgyNjZhYTE5MCBsZWdhY3ktdHJ1bmsKKzk4MzAgMGQzMWM3ZDk2OTdkN2M1ZWM3OWI3YTYzZTA0MGVlYTY4MjY3MGQyMCBsZWdhY3ktdHJ1bmsKKzk4MzEgYTRkN2JiZmY5NWE0YjVmNTY0NWUxZDU4ZDgyMTNiM2M1OTc1YjZmMiBsZWdhY3ktdHJ1bmsKKzk4MzIgZTQzNjdkMjA2YTU1Zjc2MzAyYjNmYjA0YTNhMmQ5MWU4NTgxNDM1MyBsZWdhY3ktdHJ1bmsKKzk4MzMgYjI4NWZiYzI2NDZhNDk4NmE1YzVlYTkzZTFmOWQxNWQ4MDNjZWEwMSBsZWdhY3ktdHJ1bmsKKzk4MzQgYzYzMjUwMjlmN2RjODhjNmRmZWJlMmJjYTQwYzU5MzEyNTM0MzYzMyBsZWdhY3ktdHJ1bmsKKzk4MzUgM2UyN2Y5ZmM3NWEyOTBmNTFmYTIyNzVjYzFmZjQwZmU5YTA4ZmZiMSBsZWdhY3ktdHJ1bmsKKzk4MzYgMTQyMWFjZWFlMzQ2NTA0NWE1Nzg3ZGU3NTExMTc4ZjdhYjc4ZDVkNCBsZWdhY3ktdHJ1bmsKKzk4MzcgZDcwMDg2YjA4YTBmYWYwMWE2ODljOThjMTE2MmI5MDFlMWYwYjcwMCBsZWdhY3ktdHJ1bmsKKzk4MzggMmEwNzI1OGIxZjRlMDg2Y2Y3YjMxOWI2MTE0NTVkMDRmZGYwZDc5YiBsZWdhY3ktdHJ1bmsKKzk4MzkgNjIxNDQwYmI5OGI5YzI2MDg4Yzk4YzEzMTM1MzlkN2ViODM1ZTEzMyBsZWdhY3ktdHJ1bmsKKzk4NDAgODVmZjIwNDZlMzdmODFjZDg0ZTAwMTBhZWEwOTE4NTlhMmNjMzQ5MiBsZWdhY3ktdHJ1bmsKKzk4NDEgZjRhNDcyM2I5NTUzMmFiOTA0YWY2NjAzODRiYzcwNDgxOGVmMjgyMiBsZWdhY3ktdHJ1bmsKKzk4NDIgZjFjODhkMmQxMjViZmQ0MzA2ZGQwNjU4Y2ZmYjg5OWQ0NTAzNDk2YiBsZWdhY3ktdHJ1bmsKKzk4NDMgMTg3Yjg5Njc1ZGRhZTQwYzQwNTA2Yjg2NzM1NDllYjcxOTQ5YTNhNyBsZWdhY3ktdHJ1bmsKKzk4NDQgNzE3YzNkYWNhMDhlOTUzOTM3ODg5OTgyZDkyYzE1YWI1ZGY2MWZiNyBsZWdhY3ktdHJ1bmsKKzk4NDUgMGM3OWNhZmVjNGJjNTUwOGM2ZTZlMzA3MjFkN2IyMjk0YjU2NjA2NCBsZWdhY3ktdHJ1bmsKKzk4NDYgMjE2NTdiYjBiZTM1YjRjNzFkY2M4MzQ0OWYyZjM2ZDIzYTJlYmMwYiBsZWdhY3ktdHJ1bmsKKzk4NDcgZmVkM2NmNzI2ODNkYzE3NDdlYzNjMmM0Yjk2MTU3NjIwNTQ2NTdiYyBsZWdhY3ktdHJ1bmsKKzk4NDggMWY0NjI1ZmU2NmUyY2E4Y2UwYmE4YmYyMzk0ZDI2NzA1MTdjNjExOSBsZWdhY3ktdHJ1bmsKKzk4NDkgZjVhMTg5YWZiY2Y5OTRkZDlhMTQ1ZGI4ZjI0MDU4Y2NkMWIyMTcwZCBsZWdhY3ktdHJ1bmsKKzk4NTAgMWU2NmM0ZTMxZDE1MGFmZDhiMGI5ZTViZjIyZTU2ZTlkYmYxYTdjMSBsZWdhY3ktdHJ1bmsKKzk4NTEgODk1NTllZTg1ZTU0MGQyZWU0ZjA4NWU2YTlhYmJmYzA5ZGEyYmYyNyBsZWdhY3ktdHJ1bmsKKzk4NTIgOGQxMWIzNjcxZTVkNjE4N2Q5MzdlNjg4MzhiODViYzVkMTI3ZmZmYiBsZWdhY3ktdHJ1bmsKKzk4NTMgMDAzMzhhODEzZGNiOGJiZTFjMjdmNTk0NGVhZTQ2OTk0MmI3ZDBiMyBsZWdhY3ktdHJ1bmsKKzk4NTQgZmM2YmU3YWUwMTJmNDRjZDhkMjQwNzUyZDY4MmU5ZmFiMTgyMjlmMiBsZWdhY3ktdHJ1bmsKKzk4NTUgZjc4YWY1YmM3OGVkZGU2NmI4Mzc1ZWQ2NzYwMjMyZTE0NTJlNTZkYiBsZWdhY3ktdHJ1bmsKKzk4NTYgMGUwZTg4ZjhlMWFkNTFmYWZkMzYxYjBkNDljZGI4ZTY0MGRlZjkyYSBsZWdhY3ktdHJ1bmsKKzk4NTcgZTYzZjJhZGZhN2NjODQ1ZTk5MTkwMmQ5YzUxNGIyOWQ0M2UxMjA2MyBsZWdhY3ktdHJ1bmsKKzk4NTggNjJhYzU3ZGU3YWRiZTQ2Y2RlOGVmMDg1OTY2Y2VmMmFjZWIwZTlkMCBsZWdhY3ktdHJ1bmsKKzk4NTkgMTA4NDBjMzczN2E3ZGQxMDkzZDJhYjg2MDA0M2ZlMjg5NTg3MTA2OCBsZWdhY3ktdHJ1bmsKKzk4NjAgNjlhZGQ0ZDc3MzZmMTA2NTY5MDE0ZWNlOTk4NzJmNGU0NDZiMDYxNyBsZWdhY3ktdHJ1bmsKKzk4NjEgZjhhNzcyMjRlYmNhZjUxMzRiZmNjMWY5MzhjOTU3Njg0MjEzZjliYyBsZWdhY3ktdHJ1bmsKKzk4NjIgYjU4YjJlZTY1Zjc1ZjUxOTJhM2Q5MGY0MDg1YWY3NGJiMTU3YzBiOCBsZWdhY3ktdHJ1bmsKKzk4NjMgNmRkNjUxY2FmOWUwNjZlM2VjOTFlODhlZGZkNmM3Mzc4MDdlOTg5MiBsZWdhY3ktdHJ1bmsKKzk4NjQgZjQwNDBmM2JkY2M3MzdiNjY1ZjljMjliYTBhNmQ1MjNmZWM3NjQ3NSBsZWdhY3ktdHJ1bmsKKzk4NjUgNDYxMTlkMWU5NDEzZjdhMGNjZTc4ZmVmZGQyNTUyYjhkZTkwYjIxMyBsZWdhY3ktdHJ1bmsKKzk4NjYgZWRjMGQwMjFlNDI3NmRmYjVmN2VmZjI5Y2Y1ODI1OWFjZDQxZjUwNyBsZWdhY3ktdHJ1bmsKKzk4NjcgNTQzYjJiNGFmNTMyNTkxMTc2NDFkNGM0MWUxNmM1ZjE3NzFjYjFmYyBsZWdhY3ktdHJ1bmsKKzk4NjggMjIzNDMzMDM4YTQ3ZTc4NDg1OGY0NGFjZDgxZTI5NjBlMDdlZGI5MCBsZWdhY3ktdHJ1bmsKKzk4NjkgYjY0YThjZWM4ZDc1YzVhYTkzMjVhODcxZGEyNTdiZWNmZDhiOWRhOSBsZWdhY3ktdHJ1bmsKKzk4NzAgMDMzM2U0YTk1MmY5M2RiZGM4YzMxZWM1YjEyYjllYzA3MzA4OTU4MSBsZWdhY3ktdHJ1bmsKKzk4NzEgMDI4ZjcwZDUwOGMwYjYxNWY2MmY4MzQwODY1MGI1NmE0YTA0ODEwMCBsZWdhY3ktdHJ1bmsKKzk4NzIgNzY3YmY4MDA0Y2ZmZGZlZDIyMzVjMDRmNzNmMjI0MTFhODljYmMzZSBsZWdhY3ktdHJ1bmsKKzk4NzMgNzg2ODc1YzRjNjJjNTBkN2MxZTA0MTA3ODBkMzA1ZGRlODllMTc5MSBsZWdhY3ktdHJ1bmsKKzk4NzQgZmJjNzU1MzVlYTkzY2IzZjJiNTQ4NmIxMGIzM2Q0NjViOGM1NmZjYSBsZWdhY3ktdHJ1bmsKKzk4NzUgNDVkNjViYzhhNTUwZjMzNzlhZWRiOTMxNTVmYTcyM2ZlODMyYzNiYyBsZWdhY3ktdHJ1bmsKKzk4NzYgN2FmYzE1ZjA4ZDgyY2FjMzcyMzljNTAxZWQxMmZhODk1Y2Q1MzI4OSBsZWdhY3ktdHJ1bmsKKzk4NzcgYjhkNzg2NTBmOGRmMWQ1YmM1YTcxYzdhMmY0NzI2ZjJmZjIzNzY1NCBsZWdhY3ktdHJ1bmsKKzk4NzggNjg1YzUxMGUxNGNlZWI1ZDRlMmZjNjdlNDI0ZTQxYWMxZTc2NmUyOCBsZWdhY3ktdHJ1bmsKKzk4NzkgOGMwMWNmZWUxNGJhMTkyNjdiMWEyYjBjMzI3ZGU2OWEzMzk5NDkyNSBsZWdhY3ktdHJ1bmsKKzk4ODAgYzc0NTRjYTdkM2FjYzE0M2UwMmEwYjZmOWJlZTA1MjAwNjBiOWFmMiBsZWdhY3ktdHJ1bmsKKzk4ODEgMTg1YzFkNDdjZTdhMDg3NDlhYzczYTk4OGNmNjcxMWUzMzhmMDIyOSBsZWdhY3ktdHJ1bmsKKzk4ODIgM2E3N2JjYTIyNmI5Mzc3ZmYyYThkYTIzMzc0NWJhYzk0MDBiZTg5NyBsZWdhY3ktdHJ1bmsKKzk4ODMgYzUxZjdiNmQyNTU2ZTQ2OTUwOThkZTJmN2NlN2FlYzgxOThkZWUwYyBsZWdhY3ktdHJ1bmsKKzk4ODQgM2E0OWY1ODg2YWNhZWIwOWU2M2JiODRkZmJkOTFjOGQzMmExZmQ3YyBsZWdhY3ktdHJ1bmsKKzk4ODUgMmM1NDkwMTQ3MWY1ZDkwNGQwYmNhZjZiMzg0NWQyYWQzMDBiOTdlNCBsZWdhY3ktdHJ1bmsKKzk4ODYgZDg4YmY3NjcxNDU4MjVhYjRjNGE2ZGI5ZDBjOGZkZWI3YWJmNTkzMSBsZWdhY3ktdHJ1bmsKKzk4ODcgZGZhMjQ3NzY0MzIzNzAyNDU4YWIwOTk5ZjE2ZjZjYjY2MzI0Y2MxOCBsZWdhY3ktdHJ1bmsKKzk4ODggZDc1ODg0MWE3NjYxYmM3ZjNjODA4Y2JlNzMxNDBjNDczZmI5NWI5MSBsZWdhY3ktdHJ1bmsKKzk4ODkgYWQ4OTFmNmExOWVlYmE0ZDMyNTE4NzIwZDc5YzU4NDIyN2VlNjRmYyBsZWdhY3ktdHJ1bmsKKzk4OTAgMjk3YmVhMjMzZTAzMmZiZGY3OTM3YWI2ZDg0OTM0MTY3ZWRiMDg3NiBsZWdhY3ktdHJ1bmsKKzk4OTEgZGVkY2U5YjY4NzQyNDA1MTg4NDAyNzBmNzhkOTI0MDBhMWFiZWQ5MyBsZWdhY3ktdHJ1bmsKKzk4OTIgNjU4NDhhN2M3N2I5ODI1MzFhNmU3ZGM5NzBmMTFiZjY5YjllNTk1OCBsZWdhY3ktdHJ1bmsKKzk4OTMgYTE0MzVjN2QzMzliN2ZjMjEzNzYzYjNiY2UxMGY0NjE4YzI1ZDA0ZCBsZWdhY3ktdHJ1bmsKKzk4OTQgMTNmMjliNjJhMjA5NTM4ZmQ1NjI4YWMzNjY0MGVhNDI2NzkzMzNjYiBsZWdhY3ktdHJ1bmsKKzk4OTUgNjI1NWRjODYxZmNmMTM1M2ZlMmFkMjYyNTY4YzFhOGFkMmNiMDY0NiBsZWdhY3ktdHJ1bmsKKzk4OTYgYjFmMTk1Yzk3ZWY5OWE0ZmM2ZjI0OWVlZDFhNmNkNzg0NWM0YWEzMCBsZWdhY3ktdHJ1bmsKKzk4OTcgN2NhMmMzZDg3NjYyMDZhZTI1ZjU0NzhiNDAzOWMyZmM1NjFkNTA2MyBsZWdhY3ktdHJ1bmsKKzk4OTggM2Q5ZjUxMDUwYWJjYTQ1YjcyZTk2NzRkNzYyNzQ5NGFjNjljMGJkNCBsZWdhY3ktdHJ1bmsKKzk4OTkgNDM5Mzg5Nzg1MmIyNDQ4NmIyMzkyMWQwZDRjMTk1NDIzZDI0OWUyZiBsZWdhY3ktdHJ1bmsKKzk5MDAgMmQ1MDg4MjJlN2Y2ODg1YTgzZTM5M2U4ZjFhZGFhNWM2NTliNjk4NiBsZWdhY3ktdHJ1bmsKKzk5MDEgNmU3M2Y0MTY4YjA2MmVjYTVmNzdhMDdiNTU4ZjIzYTE3MzEzMDk5MSBsZWdhY3ktdHJ1bmsKKzk5MDIgMTFlOTMzN2NkYTNkMTQ3ZWU2ZDRlMDJhN2RkMmQ2NTgzZTJjNmIzOCBsZWdhY3ktdHJ1bmsKKzk5MDMgMjliZGJlMDM5ZTA1ZWM4NWFkNzk0NWIwMmY2Y2Q0MjEyNTU4NTJhYyBsZWdhY3ktdHJ1bmsKKzk5MDQgYjNlM2RhZTliNjEyMjQ0MmQxNDYyMjFiMDRiMzMyOWFlZjVlOTE2OSBsZWdhY3ktdHJ1bmsKKzk5MDUgNWFmN2QzZGE4N2NmNmFjYjc5MjI2MDJjODA3MmZhMjlhMmRmMmU3MiBsZWdhY3ktdHJ1bmsKKzk5MDYgM2YyMjg0MzQ0YTQxYmEyNGY3NWQwNTZmZDAzY2M4ODZmODYxYTUyMiBsZWdhY3ktdHJ1bmsKKzk5MDcgODNlNzc1OWU3Mjk3ODY5ZGRkYTFjZDE3NzQyZDFlNTY0NWNmNmViNCBsZWdhY3ktdHJ1bmsKKzk5MDggN2RmNmYwNDUzNDY5MTc3Y2QwOGZjYTU4YTdlYjI4YTkwMzAwMDJkMSBsZWdhY3ktdHJ1bmsKKzk5MDkgYTlmYmYyMWFiN2NlOWNlNzkzNmU4YTNjYzU5OTQ1Y2RlMDg0ZmI4ZiBsZWdhY3ktdHJ1bmsKKzk5MTAgMzY1NTI2YzRjZjhiYjMyMzg0NjY1OTRkMDczMjNkY2UyMDU4MmVhZiBsZWdhY3ktdHJ1bmsKKzk5MTEgNGY0NWRjY2RhOTZiMjg3NDdlMzNkNDFlMTU0ZDViZDFjYTRiNDNiNSBsZWdhY3ktdHJ1bmsKKzk5MTIgM2RlMGNiODJlNjFhZTY1MWJlMDgwOGU2MjAxODkwOTVlZGVjZDc2OSBsZWdhY3ktdHJ1bmsKKzk5MTMgY2JhY2QxYmU3Mjc1YzAwZjNjNjNiOTVlYjVhMzg0Y2YyZWIwMDBiMiBsZWdhY3ktdHJ1bmsKKzk5MTQgZDE0NjViNWMwYTA4OTRlMTU1MTFkYzE3YmFiYzNiNDE3MmY0MjBlZSBsZWdhY3ktdHJ1bmsKKzk5MTUgMzc0MGZmMmVlMDUzY2E5M2Q4OTA1YmVjNTUwYWE0NjZiOWEyODllMyBsZWdhY3ktdHJ1bmsKKzk5MTYgY2QxMTY5MGNiMTRiMDcyZTcwZjI1ZThjM2ZkYTc0OGExMWI5ZDE4MSBsZWdhY3ktdHJ1bmsKKzk5MTcgYTY0Yzg5ZGFlMThkNjBlNTRhODJlZWFkZTMyODZhNzRmNmIzMDQxOCBsZWdhY3ktdHJ1bmsKKzk5MTggNTkwZjYyNTRmOWE5YWVhYTQyMDIzZWRiNTY4YmU4ZWIwNzI1ZGE3YSBsZWdhY3ktdHJ1bmsKKzk5MTkgYTgwNTliOTZiYzM1NWFhOGI2MmZlMTY1MzdjZmMyMGU5MzRjZDMxNiBsZWdhY3ktdHJ1bmsKKzk5MjAgMDUxODlmN2NkYmViMTg0MTE4ZDYxNjhhZDMzMWY5NTBjMWE5ZjA2OCBsZWdhY3ktdHJ1bmsKKzk5MjEgOTgxNWIxOGIyM2UzYjY4NWE5YWYyMzU0MmI1M2NiOThkMWIzNjc5MSBsZWdhY3ktdHJ1bmsKKzk5MjIgMzcyMGU5OTZlNTUxMjczOTE0MGRiYTI5OGM5ZDFjYjI1NTAzOTI3MyBsZWdhY3ktdHJ1bmsKKzk5MjMgMTY2ODQ5OTIwNmRjZmJiNTgyZTdlNTJhNjM0OGE1NGQ0MGY1NDM5YSBsZWdhY3ktdHJ1bmsKKzk5MjQgMjkzM2ZiMzRmMzMzZmQ1MmMxNzM5MjBmYTk0ZjA1NDBlMTg5MGI2MiBsZWdhY3ktdHJ1bmsKKzk5MjUgODI2YzcxODAxOTExY2IwYzYzOTdkODk2NGFkNjYxNDhmZjhlNDYzOCBsZWdhY3ktdHJ1bmsKKzk5MjYgYzliNjg1MGM0MzM2YTRjZGFmYTJhM2Y1MDAyZWRlYmFjNGI0ZjE3OSBsZWdhY3ktdHJ1bmsKKzk5MjcgNWVkY2ViOGYxZmFiN2FjNjgwYjE5YTljZDQ5YmQ1NWJjMzAyZjJmMiBsZWdhY3ktdHJ1bmsKKzk5MjggMGQ3Njc2MTRjOTQxZWIxMGY1ZWMyOTMyYzQzYWM3MWJhOWFkYmExOSBsZWdhY3ktdHJ1bmsKKzk5MjkgMGE5NTQxYTg2Njg5MDk0ZGU0MTNmNGVjNmMwMGNkZTJkOGViNTlmMyBsZWdhY3ktdHJ1bmsKKzk5MzAgMjNjYzM0MmVlMTUwYmE4NDAxZmJjM2MzOWJhZmUzNDBhMzVhMDBjYSBsZWdhY3ktdHJ1bmsKKzk5MzEgM2MzOGM4YWQ1NjIzZmI0MGQ0YWZkYTI2MTMzMjVjMzc3YmU5YjAwNCBsZWdhY3ktdHJ1bmsKKzk5MzIgMWI0YTJlMzhhYjVlYzY3YWUzZTUxOTBlN2Y4ZWQwYjI1Mzc2ODYzMCBsZWdhY3ktdHJ1bmsKKzk5MzMgNDgzMjg2ZTIxOWUxZjY0NDQ2M2I0ZDJiZDdiMmYxMjZhNWYxMWFlNCBsZWdhY3ktdHJ1bmsKKzk5MzQgYmQwNWFiNDczMWY3NmIzY2U0NGQ0MzBjNTNlNzcwZDRiNjk0Njg4OCBsZWdhY3ktdHJ1bmsKKzk5MzUgMWE5YjA5YjNjYWY4YWU1ZTI4NWI3MDRkMmQ5YWI3YjRhNGRhYWViNCBsZWdhY3ktdHJ1bmsKKzk5MzYgZWM5NWU4ZGFlNTA0MTQyNWFlNTdjYTU3YzE5NmYwZTRlNDQ4MGU3OSBsZWdhY3ktdHJ1bmsKKzk5MzcgNGFhNDcxMGQ4OTRjODI2OGY0MmU2YTQwODE2OTU2YjZkNWI2Y2Q1OSBsZWdhY3ktdHJ1bmsKKzk5MzggYmQ4MTUzOGQ0ZGRmZDQ3NjE3ZmRiNDViYTM5ODU4YTlmZGE2NGNmMiBsZWdhY3ktdHJ1bmsKKzk5MzkgMDMxZGU4NTQwYTdlYTA1ZGI1NGQwMWZhY2Y1MmY4ZjQyM2ZjZTBjZSBsZWdhY3ktdHJ1bmsKKzk5NDAgOTU0MWI5YjA5MzdkZGYxNGMwYjY0OGIxY2JlYzIzMDQ3MmJhNWY1ZiBsZWdhY3ktdHJ1bmsKKzk5NDEgODI5NDdhMTkyNmY3ODJkZWZiZTBjZDc1Mzk3YzU3NjA5OWU1NmMxMyBsZWdhY3ktdHJ1bmsKKzk5NDIgMDIxMjM3YmE1MDA3NDI1ZTAyMGU3Y2U5NjhkODkwMzk1NTg2MGEyYyBsZWdhY3ktdHJ1bmsKKzk5NDMgN2IyZmQ0ODZlZmVlMWNkOGZkZTIwYWZjYzE2Yjg4Mzc1YmQ2ODAyMyBsZWdhY3ktdHJ1bmsKKzk5NDQgY2IxYTU3N2MwMjM5Y2JiMGQ5Njg3OWJjMDRmZTI5ZTM1NmYzMGJlMSBsZWdhY3ktdHJ1bmsKKzk5NDUgMDM2MGUzZTMwYTJlNDBjNDkyMmY3OGQ1ZDcxODE4MmZhNTU5OTdmMSBsZWdhY3ktdHJ1bmsKKzk5NDYgMTQ5YTU0Nzk4ODk2MWI3YWNlNjI4YWVlYzE2ZWUzYWJkY2M2MTZmNSBsZWdhY3ktdHJ1bmsKKzk5NDcgYWQzZTRlYjM1ZGE3NzIzOTBjNTBjMDI5Mzc4NmI4NmZjOWEwNmUxOSBsZWdhY3ktdHJ1bmsKKzk5NDggNmY4NjllNWQzM2NjYmY3NjM0YjdhMGJlNWVhYTQxMmFmODJlZmUyNiBsZWdhY3ktdHJ1bmsKKzk5NDkgODgxYTVlNjcxNGRjYjcwYTVjZTA3OWY1MjFmZGJlMDcxZDMwZjBlOCBsZWdhY3ktdHJ1bmsKKzk5NTAgNmJiNTA2YWQ5Njg0OGFjMmEyOGNmNTE3MGI3ZjU3YzliZmRmYTJmZiBsZWdhY3ktdHJ1bmsKKzk5NTEgMmNmMWNhZTliNDZlZjM3ZjAyZDVjNzg2NGRjMTg4NTBkMGFjY2JiYiBsZWdhY3ktdHJ1bmsKKzk5NTIgMDc2YjgyZTA0MGE1YzkzNTRlNGI4NWRjY2IyMWUyMzk1NmNkZmZhZCBsZWdhY3ktdHJ1bmsKKzk5NTMgNzg0ZmVmODM3YjUyZGM4ZDYwMTgxZGNhZjUwYzhjMDAyZmYzNDc3YSBsZWdhY3ktdHJ1bmsKKzk5NTQgY2E2NmEyNTM2Y2Q1NDlhNTk3ZDk2YjE4MjU0ZTAzZjQ3ZjQ5NDk4MyBsZWdhY3ktdHJ1bmsKKzk5NTUgYjk0MjFlMTdkZGY3NjMxZDA3ZmQyM2YwYWZkNjFhYzViNmM0Y2Y3YSBsZWdhY3ktdHJ1bmsKKzk5NTYgODA3MzliMGJjMzAyNmM5MmE4ZDIzZDZhNGJhODNlZjhmNmQ4OTU3MSBsZWdhY3ktdHJ1bmsKKzk5NTcgYmZlNTdlZmFkNzUxZmFkZmJlOWIyNjVjZjU2ZTM4NzZiMGRiOTY1MCBsZWdhY3ktdHJ1bmsKKzk5NTggNTVjM2ZkMTg1M2NlYmIyZjRjZTdiOWZiYTNhMDY4MzQ2YzdmNDY4ZSBsZWdhY3ktdHJ1bmsKKzk5NTkgY2NhMzlkNzE5YWJhNmU1YzA0NTk2ZDM5NTQ2MDc1MjhkMGQzMjYxNSBsZWdhY3ktdHJ1bmsKKzk5NjAgZjAxZmYyNmZhY2FlYjg3MzgyYTAxNDVkYTlmZDdlYzZlYTM5YWNhOSBsZWdhY3ktdHJ1bmsKKzk5NjEgYmE0YTAyYzBlOTBjNzkyYWZhN2UxYTdjOTFkMzM0NWU0YzEwYjgxMyBsZWdhY3ktdHJ1bmsKKzk5NjIgNTgwZjZjOTIyNzBiYjg3MDE2OWEwYWVmODc3ZWU2ZjRhM2E1NWIyMiBsZWdhY3ktdHJ1bmsKKzk5NjMgMWRmYzE1ZTMxMTMwNDNkNjAwOGVmZWU4YzI5ZmFkZWYxZDcwYzQ1YiBsZWdhY3ktdHJ1bmsKKzk5NjQgNGNhZTJkZTMwYjU3ZmM1ZTBiYjNkNWNjZDZmYzM3ODMxN2QzMGVlMyBsZWdhY3ktdHJ1bmsKKzk5NjUgMDVkMGI2ZmJlYTliNWRjNjdjZWVhZDM2NTJmZGM0ODI2NzI5MmM0YiBsZWdhY3ktdHJ1bmsKKzk5NjYgOTgzNDVhYTFkNWZlZDMxNjMzZmM4MmVlZDE5ZDkyNzkyMTQ2MGI3NyBsZWdhY3ktdHJ1bmsKKzk5NjcgNDI3YjgxYzI0NTJmZTFkNzJmYTEwMGE0YjcyNTBiZDQwYjRiMWJhZSBsZWdhY3ktdHJ1bmsKKzk5NjggM2RmYzM3NmU2ZjFhOGJlNGNlOWEwMTMxZmM5NTBlNmE4YTcxNGIxMiBsZWdhY3ktdHJ1bmsKKzk5NjkgN2YyODk5N2IyYzEwNmZjZTIzYmVlMmJjMWVkZjI2ZmEyMzc4OTRlMyBsZWdhY3ktdHJ1bmsKKzk5NzAgNTQ0NTZmMDhlYmFkNzU1MTJkNDMxYWVhMWExOGFkY2E3MWE2ZWFhOSBsZWdhY3ktdHJ1bmsKKzk5NzEgNjg1N2FjYmUyZTc0YjAwYWY4NjBhZjJiYTg3MWY1MTI5NzViMzlhZSBsZWdhY3ktdHJ1bmsKKzk5NzIgYzRkNTZmYzYzZDhmMDM4YjRhYjQxNmMxNDc5OWJlM2I2ZTU4YTZhOCBsZWdhY3ktdHJ1bmsKKzk5NzMgNmIwMjY2Njc5Zjk2OTUyNThkN2ZhNDEzOWM3MDlhOWY4NjQ1N2UyNCBsZWdhY3ktdHJ1bmsKKzk5NzQgZWM3OTc2ZDJkNWU5ZTQxM2UyMTg4OTJlOTZkN2U3OWMyYWM4NjgxNiBsZWdhY3ktdHJ1bmsKKzk5NzUgNWUzOTAwNzg0NjBhZThlNDJiM2Y5NWQzNjY4N2MxMzY0ZjliODcxZCBsZWdhY3ktdHJ1bmsKKzk5NzYgMTkwNmE3ZmM3NTA5NGQ2ODI2YTNmY2E1YjJjYjJhNWE4OWQ2MTNhZCBsZWdhY3ktdHJ1bmsKKzk5NzcgZDk1OTFjOWIyYzVmYTRkMTVhNWJlOTI2YTYwNDkyNmJiYjI3N2Y5NyBsZWdhY3ktdHJ1bmsKKzk5NzggOWRlM2NhZDUwOTA1MGMyYWM2YzQ2YmViYjkxM2RhM2UxMjQ5NDIwMyBsZWdhY3ktdHJ1bmsKKzk5NzkgZDE3ZGIzZWJmYmMyMDVkYzE4NTc2NGMzMjk1ODNmYTIyYzU1MjRkNCBsZWdhY3ktdHJ1bmsKKzk5ODAgZjIzZGIzYjY1YzgzODFmYmVkN2VkNzQ0NGY2MDZiZmQ4OWE5NTk4YSBsZWdhY3ktdHJ1bmsKKzk5ODEgNzU0NTg2MDM5YzExYjFmOWNmYTQxMGZkMjdmMjQxOTJmMWU2NDY2ZCBsZWdhY3ktdHJ1bmsKKzk5ODIgODk0Y2ZmZWI4OWJhNTM1MTdkNmFjZTZmYTZjMDYyNzczYWYyMDI0NSBsZWdhY3ktdHJ1bmsKKzk5ODMgZWY5ODBlMTdiNTkzOWNhYmFmNjIxODA0YTgwMzQ3OThkMjM2MWE1NiBsZWdhY3ktdHJ1bmsKKzk5ODQgNjdhMmI5NmYwMTg5NzM0OTQ2YWRjM2UwMjVjMzcwNGU4NjM2ODE1NCBsZWdhY3ktdHJ1bmsKKzk5ODUgNTEwZTUyNDQ2N2NlNjI3M2RlYzJiZjQ0MzgwM2M2OTgxNDc0MTM1MSBsZWdhY3ktdHJ1bmsKKzk5ODYgZWRhMGNhMTM4YjNkODRiYTkxMTk2MzM4ZDBlNWVhOWUwYWMyYTQ0OCBsZWdhY3ktdHJ1bmsKKzk5ODcgYjVkNTJjNDE1YjE1ZTllNGNmMGRkZjhjNWM3ODI0NzI3ZTI0ZDNiYSBsZWdhY3ktdHJ1bmsKKzk5ODggZWM0NzM1Y2UxMzYwODQzZGNjNmU3N2EzMGY3ZjMwMWQ3OGJhNTAzMiBsZWdhY3ktdHJ1bmsKKzk5ODkgMzVhM2NjMjRlZjA0MzI3YTZiYTZkYjYwZTA0MWFjNDllZWEwMWRlOCBsZWdhY3ktdHJ1bmsKKzk5OTAgZTNmMzdhMjYwMmQ1MDQ5MDViYjkyNTg4MWI2Mzc2Mzk2ODM2OTZjZCBsZWdhY3ktdHJ1bmsKKzk5OTEgNDg4OGY0NDg0NTBmMjNkYTAyZTJkNjgyNTVkNjc5MjlhY2RiNGJiOCBsZWdhY3ktdHJ1bmsKKzk5OTIgOTcwZTllMDU4Yjc2MWM0Yzg0N2MxYjQ0N2NkMjJkZmNhMDI5OGY3ZCBsZWdhY3ktdHJ1bmsKKzk5OTMgZWMwZjk5ZjFhMmZkYjBhYjlmNjlkMzBmOTBiODRkNDQ0ZWMwOThlZiBsZWdhY3ktdHJ1bmsKKzk5OTQgYjYwNDI0YTU2Zjc0NGU1ZWU0MmJmZDRmZTE5YWMyY2E0MTI3M2EwMiBsZWdhY3ktdHJ1bmsKKzk5OTUgODNjMmE1YTQ1YTQxYjJmYWRiOTM5YTNjM2I2YTBmZGIyNTM1OGNmYSBsZWdhY3ktdHJ1bmsKKzk5OTYgMzEyY2E5ZmRhY2ZmMjc1YmU5MjA3MDQ0OTZhOTVjMjViNjYyYzZkMCBsZWdhY3ktdHJ1bmsKKzk5OTcgY2NlODk5NGQ1MmNmMGU4YTgzMDA0MzFmZTc2OTZlN2RiODgyZjI3MiBsZWdhY3ktdHJ1bmsKKzk5OTggZjlkYTM0ZjcyNjhiNTFjODcxZjJmMTQzZGE4MDA2NDIyZDRjMzc5NSBsZWdhY3ktdHJ1bmsKKzk5OTkgZmJjODkyMjQzNDc3ZjZjY2I2ZWEyM2FlM2JjZGU1NGEwNjRmOTc5NyBsZWdhY3ktdHJ1bmsKKzEwMDAwIGRjMzc0NzExYzg0OGNkNjYxMzdlOWI2YTZlNmViNGMxN2MwNGZhZTEgbGVnYWN5LXRydW5rCisxMDAwMSA1ZTRjMjg5N2U2MjU3NWU5ZTQ2OWEwYWYwMDU5ZjdmN2NmZGI1NmU2IGxlZ2FjeS10cnVuaworMTAwMDIgZWVhYzM2YmZlMDFhYTNmMWZjOGQxZDFmZDVmZTBlYTg3Mzg0NWQwNCBsZWdhY3ktdHJ1bmsKKzEwMDAzIDg4OTkyNjk2YjllOGQxN2Q1NWE4NGRlMzMyYjU5YjljN2Q3ZDU3NjggbGVnYWN5LXRydW5rCisxMDAwNCA2MGU3YjAwMGYyNzM4NDYyM2RjMTQ3ZDUyYWFjYzMzOTliYzVkMzlhIGxlZ2FjeS10cnVuaworMTAwMDUgMjZhODc3MWE0Y2ZkMDA5Yjk2ZDczYTU4ZWI1NWUwMDcyZThjOWViNCBsZWdhY3ktdHJ1bmsKKzEwMDA2IDNjYWYyMzk3YzUwODE1NTNiMzNjZmI3ZTliZmI1YTllMmU4ZTkwOWUgbGVnYWN5LXRydW5rCisxMDAwNyAwMzQzOTg3MzZlNjRjNDE4Y2JkMzM3Nzg3NTVkZmRiZGUxMWU0NTllIGxlZ2FjeS10cnVuaworMTAwMDggODkxMTA1ZGFjOWI0MTg3MTQ0ODgxNzliZTI4MTllZDFjYTM1YzRlMiBsZWdhY3ktdHJ1bmsKKzEwMDA5IGI0NjYwYWQ3ZGM0MWVhMTc0Zjg5NTk2M2VlNTI4NGFjMDMyZGNmMWYgbGVnYWN5LXRydW5rCisxMDAxMCBiZjIzNmZiZjExZGFhZTNhMjJjMTE0NjdlMGNiNGI3M2EyMTY0M2I5IGxlZ2FjeS10cnVuaworMTAwMTEgZWE4MTg0YmZmMTJkYTVjMGQxZWE1NGJjODE2MjM2YjYzNzEzYjBmMCBsZWdhY3ktdHJ1bmsKKzEwMDEyIGY5MWQ1YTAzMzliZjNhYTM4ZWE5MDRmNzI4NTY0Nzk1NDE4YWFkOGIgbGVnYWN5LXRydW5rCisxMDAxMyAxM2I2MGFiZGI3MGQxOWVhMDY2ZjIyMDNjMTE2M2NlZTRiNzM2ODUxIGxlZ2FjeS10cnVuaworMTAwMTQgZWVkYWM1MGQ3NzQ0M2IwYmJkY2NmOWM2ZDUyODcyMGZjZmUxMWZiZCBsZWdhY3ktdHJ1bmsKKzEwMDE1IDNmZjZiM2QzYzRkNWUyZjNmNWRiN2JjZmE5ZjQxYjFkYzU3MDM2MjUgbGVnYWN5LXRydW5rCisxMDAxNiAwMWE5Zjg0YTI2OWM5ZGEwYTliZTAxZjBhYmMyNzhhYTZlNDlmZDRlIGxlZ2FjeS10cnVuaworMTAwMTcgNzgzMGUxZGU5ODE3NDU3ZWIxZmM0MmRiNzUzYmYzYmQ5MGU5NDZlNyBsZWdhY3ktdHJ1bmsKKzEwMDE4IDlkYWUwYWIzODNhNDk4ZTFiNTcyNjY4NDAxODY5OGE3YjdlOWE1NzcgbGVnYWN5LXRydW5rCisxMDAxOSBjOWY0YWEyYzQ1ZWRkNjdmZDBjNGM0NWI0NDBlM2FhNDg0NDE4NTJkIGxlZ2FjeS10cnVuaworMTAwMjAgY2ExNzBkNzYxZjA4NmUzMDVjOGI1ZGI2YzcwNzU3MWYxMjFmYjMwNCBsZWdhY3ktdHJ1bmsKKzEwMDIxIDQ4ZjdhYzQ1MmQ5OWM5NGI5MzMwMzFkN2I3ZTlkOTZjNGE2OTdkNDEgbGVnYWN5LXRydW5rCisxMDAyMiBkMjAyYzgyZDNjNTcxNjI2ZDM2ZjFjNDQwZjljNWY1MWZjMWM5ZjBhIGxlZ2FjeS10cnVuaworMTAwMjMgYzAxMzFmYWUwNmU5ZTA3MjExYzg0NGE5MGRlYTRkNzJlYzg2MTdlYSBsZWdhY3ktdHJ1bmsKKzEwMDI0IDY0MjFlYTFkZTI4Mjg3YjI0ZGQ2NGNjN2IyNjQ3YmZmYWM5NTMxYmMgbGVnYWN5LXRydW5rCisxMDAyNSBkNGQ4NGI1NGM0NGQ4MTg5ZTIwM2ExNDAzZDM4ZDc4OTlkMDliYTQ4IGxlZ2FjeS10cnVuaworMTAwMjYgN2ViMTliMWNlODRkNzRmMmUyYzk1NWE2MzBjNjlhNTk3YWNjNDhkNSBsZWdhY3ktdHJ1bmsKKzEwMDI3IDRiMTFjYjk2MTA0NmEwYzRkODcyZDVmNjJjY2E1MzA5OWI0MzE0ZjcgbGVnYWN5LXRydW5rCisxMDAyOCA2OTg2MDgyMWNhMWQ1ZGE2NjUxZGQ0NjZmOWIyNGYzNjdkZGNhZTU1IGxlZ2FjeS10cnVuaworMTAwMjkgZDM0ZmUzMGI5NWU4NTY4MjEzODkzY2RmMDdjZjNjMDM5ZThkMzg3YiBsZWdhY3ktdHJ1bmsKKzEwMDMwIGM4ZTVmNzA0NjIzZDg5MDExZjg2ZmZmYzI5NGIwOWUwNTQwNTUyMzEgbGVnYWN5LXRydW5rCisxMDAzMSA4MmViOGIzZGY2ZjgyNjU0M2JiZjk2MWY3MGU1MjU0YzFlOGMxZWIwIGxlZ2FjeS10cnVuaworMTAwMzIgNWRmNjU2Y2QxMGFkZTFkMzViNTc2YzM2M2FkMmMxMjgxMmNhOTA4OCBsZWdhY3ktdHJ1bmsKKzEwMDMzIDVhZWNjMjUwOWU0NmQ5ZjRiYmM4NGVhYjBhN2VjMTJjMjQ4YzE5MzAgbGVnYWN5LXRydW5rCisxMDAzNCA3MzM5NTA4MDRhMGI0MmFmZmEwYmZiN2ZiM2I3MGU4YWQ2MTZhMjY3IGxlZ2FjeS10cnVuaworMTAwMzUgNjU5ODM4NGQ1ZjRjYmVkOWM2ZmRhMDJlNDI0Mjc2N2FkNWM4NjAyMyBsZWdhY3ktdHJ1bmsKKzEwMDM2IDIyZGU1MTE2ODMyZmQ2NWUxOWI5NTcyYzNiMTc0ZThmY2E4YjJmMjAgbGVnYWN5LXRydW5rCisxMDAzNyBjMDJhZjFlNzEzZWRjOGE0NTY0NzNiZWFlMTQ0NzIxYmU1Yzc5NTAzIGxlZ2FjeS10cnVuaworMTAwMzggYTQ0N2IyNjhjNzczMmJkOTA4NjgyYzExNTI3ZmQwNjA1MTkwMWFmMiBsZWdhY3ktdHJ1bmsKKzEwMDM5IGNjN2UxMjZmMDA5ZDM4OWQ4M2IyNTRlNGQ5M2EwOTE3ZjBjMmQ4ZmIgbGVnYWN5LXRydW5rCisxMDA0MCA0M2Y0N2I4ZTM5OGRhNTNkYTk5YTg2NGZiMzFlZDkyZjcwNDk1MjBiIGxlZ2FjeS10cnVuaworMTAwNDEgNTliMWFiMDFjMjg2ZWYzMTdhNThlNjdlZmIyOWFjNTM2OGExYmRmZCBsZWdhY3ktdHJ1bmsKKzEwMDQyIDFhOWY5YTVkZjA0YjE2ZjBiYzU3ZWUxZTRiNGUyNTA1MTM0NmVkYjYgbGVnYWN5LXRydW5rCisxMDA0MyBiYTEwYzQyOTk5YjhiY2EyNjljYjIwYWFlNmRmYjE2ZjEyMGE5Mjc2IGxlZ2FjeS10cnVuaworMTAwNDQgMmZmMmU0NTdhYjg3YWM3YWFlMmJiOWIwNzMzM2IzYmYyMDFhMjc3MCBsZWdhY3ktdHJ1bmsKKzEwMDQ1IDAwYWVlNDc0M2Q3YmE2OWVhYTllODUyMDk4MDI0MDQ2NGE4ZGZmODkgbGVnYWN5LXRydW5rCisxMDA0NiBlMTVlODVkOTg3YWY4OWU2NjYwYTliZjllMjBhNTNlOGI2ODlmZDczIGxlZ2FjeS10cnVuaworMTAwNDcgYjljYmYxNzRjNzIzODkyMDg2N2NmY2ZhNTgyZTRjZDZkOWI0MTFiMSBsZWdhY3ktdHJ1bmsKKzEwMDQ4IDhhZWU1MGE5YTFiMWZhNGM3NGM5NWYxN2Y0OGI4ZmVmMTE2NzUxNzEgbGVnYWN5LXRydW5rCisxMDA0OSA5NjhhYWJhMjgxYzUzZjAyYjNmNDVjMTkxNDk1ZmU5ZGZmYWFiZmI4IGxlZ2FjeS10cnVuaworMTAwNTAgYzlmNDE3MTI0ZTBmNzY2NTRiODhhNmYyNGI4ZGVjMzY1N2ZjODY3ZSBsZWdhY3ktdHJ1bmsKKzEwMDUxIGFhMGU4MTk5Y2MzMTgzYjNkODgxNzc4NmE3ZWY5N2RkODdhNDJmZWMgbGVnYWN5LXRydW5rCisxMDA1MiA3ZTdkNmIxYjhhNGIyYmRkNmE2NDcwNWIwM2E2YWZlOWMwYWYxOTYyIGxlZ2FjeS10cnVuaworMTAwNTMgZTY3MTE0NWFiNTA3ZTFkNjgxNzUyYTY2MzgzOTg0NzkyMDgzNGEzMSBsZWdhY3ktdHJ1bmsKKzEwMDU0IDJhMDU2ZDE5M2RkMzdhN2JkNDkxNTAyMjM3MzJlNDU5MDFkMTgxYjcgbGVnYWN5LXRydW5rCisxMDA1NSA4MjdhZWE1ZjU2MjE5MGQwNTAxMzU4ZTJmYjQyOGQzNDM1MDM0NjI5IGxlZ2FjeS10cnVuaworMTAwNTYgMjA0M2M2OWZmMWQ0NTVkODM5MmJjNjRmNWJiNjgxZWVmMjMxZTUzNCBsZWdhY3ktdHJ1bmsKKzEwMDU3IDQyYTIxODA2YjNkMmZlZTVhYzVmNDZhYzk1NjhhNzljZmY0YjI0YjYgbGVnYWN5LXRydW5rCisxMDA1OCBkNWY4OTU2N2I1YTlmNjdkMGIzMjMwNWEzMTc1MmM3YmUzNjFkMmE1IGxlZ2FjeS10cnVuaworMTAwNTkgMGY1NjVjN2ZlNGJiZmU5YjQ3Y2U5YTVkNTkyMTU3MWIyZjY4Mzc2MCBsZWdhY3ktdHJ1bmsKKzEwMDYwIDBhNGI0NTMzOGFjMjg1MjU2ZGRiYmUyMzIzNWY5YTRlMDIyYzU2ZWYgbGVnYWN5LXRydW5rCisxMDA2MSA5ZGUwZDUwNDljYTFiNjVmNzk4YTQ2MjE4ZThiZDRmNmI3MWFhMzE5IGxlZ2FjeS10cnVuaworMTAwNjIgZDJiNWQ5MzI2ZjA5MTU0NzBmNmZiYWQ5OGRiZDI5OGMyNmZjYzFlMCBsZWdhY3ktdHJ1bmsKKzEwMDYzIDJlZjBhY2E5NmYyZDMzYTU1ZmY0YWU3NWNiYjMzNzI5NzRmN2M4OGYgbGVnYWN5LXRydW5rCisxMDA2NCAwNzY1Yjk1OGNjNjdhMTliZTJhYThmNzQ2ZThkNmJhMGJkZTVmYWJhIGxlZ2FjeS10cnVuaworMTAwNjUgZmM3NjBjNjI2OTUwZGU5Nzc4NmI1Mjc2MzRkYTE4NjM3ZWRhNDM4OSBsZWdhY3ktdHJ1bmsKKzEwMDY2IDRiNjM0ZjAyNDNmOTdkMDMyYzEwYmJlNDZjYWQyM2U2MzgyYjI3MGMgbGVnYWN5LXRydW5rCisxMDA2NyBiZDA4ODZlNzhmM2I3ZTJiNGUxNWI3YzhjY2UzM2ZjODYyZjM0ODg4IGxlZ2FjeS10cnVuaworMTAwNjggYjZkNmE4MzRkYjQ5YWYxNWU0NzYyNzJkYTZmYzRiOWU3NTExYzhiZSBsZWdhY3ktdHJ1bmsKKzEwMDY5IDJmMzIzMjM4MTFjNTM1N2NhOWNjNmU4YjY3ZjUwMTRkOWNkNzVlMTggbGVnYWN5LXRydW5rCisxMDA3MCAwOTQ0MDYwNmFhYzU4OGY0OWM2OWMwM2JhYmU4ZDY3ZjQ0YmYwOTE1IGxlZ2FjeS10cnVuaworMTAwNzEgYTE5MDI5Y2Q3NmM1MTU5ZWY1MDBhYWNlYzc0NWYwNDhkYjdhOWEzZiBsZWdhY3ktdHJ1bmsKKzEwMDcyIDk5Y2VmYWE5YzUwOTcyYzViM2IyNWE2ODUyYjcwNzNhOGM1N2QxYjAgbGVnYWN5LXRydW5rCisxMDA3MyBjNDU2ZWJlMzUzMzc0ZGUxZTU1N2ZiNTBhYTMxYjc0NGQ4N2I5MjFiIGxlZ2FjeS10cnVuaworMTAwNzQgYWFiNzYyMjA1MDVlZmRjNjkyZGY0YTM5MjllZDViZWE0YzA4MDIyYyBsZWdhY3ktdHJ1bmsKKzEwMDc1IDM5Yjg0YTNkY2VhYTUwMzQwYjEwMGVjZGQ3YWQ3MzNkYWUzNWI0OGYgbGVnYWN5LXRydW5rCisxMDA3NiA3MmNhYjk1ZDM1ZTU3MDllZTk5MDZjMTQ4NWY3YzQzMmZhNjRlODU0IGxlZ2FjeS10cnVuaworMTAwNzcgMDk0MTU2ODBiZDRmNmM0ODE0MmI5ZDAxYWMyOWM1MTI1OGViNGMxOSBsZWdhY3ktdHJ1bmsKKzEwMDc4IDZhNDUzNTk1ZTYxOWU5ODA3NjVlN2Y3Yzc4NDM0YTY5NmI1ODg3NTMgbGVnYWN5LXRydW5rCisxMDA3OSBlY2FkMjM0Yzg3ZTQ0ZDhlYWMwYzA0Mjc4YTczYWU2OWZiOTFkNDc1IGxlZ2FjeS10cnVuaworMTAwODAgN2Y0YTUwM2NlNThiMjZmOGFjMmI5ZjMyNTlhOGExZGRjODUxNjRjNiBsZWdhY3ktdHJ1bmsKKzEwMDgxIGMwYmY5YjYwYzI5ODBiMjM4YjRlYThiNzFlOTIwMmZiZTIxYTkwYzYgbGVnYWN5LXRydW5rCisxMDA4MiBhNjNkNTUzZWI2NTgyOTJiOWQwNDhjYjkxZGJhOTNkN2JiNjI5ZTQwIGxlZ2FjeS10cnVuaworMTAwODMgNTk0MDdkNDQ4YjZhY2Q5MjBlM2QxYTM3MDQyOGZlYWYwZmI1MDhkOCBsZWdhY3ktdHJ1bmsKKzEwMDg0IGMwYzAyZTkyNjlmM2NjOTU2OTM0ZDAyNzZlMDhiY2Y3ZGFlYjBiZWQgbGVnYWN5LXRydW5rCisxMDA4NSAwMGFkMzA5YmQ1MDgxMGQ4YmRmOWY5MGQxODJkODE0MDI5YWZjY2NmIGxlZ2FjeS10cnVuaworMTAwODYgODkzYTMyMDk1MjIyNTQxZmRmNjkxOGNlZDliNWYzZTJkZDMwYzlkZCBsZWdhY3ktdHJ1bmsKKzEwMDg3IGFmYmJmZThmNTQ5NjcwNGE3YmExOTZkNWViNzA4NmE5MThjNDdmZDggbGVnYWN5LXRydW5rCisxMDA4OCA3MGJjYmNkZGE3NGY2MWE2ZjM1MTVlODJhNDBlYzMyNzc2NTcxYjA5IGxlZ2FjeS10cnVuaworMTAwODkgY2RmODBmNzQ1OGNhMWE3M2Q2MGUyZWJiZGRjY2ZkMzFjNmVlMjAwNCBsZWdhY3ktdHJ1bmsKKzEwMDkwIDQ2ZjJjNGZjOWUzODFhYmEyNjk5YjJhODg4YWFjNmIzMWIyZTQ3YjkgbGVnYWN5LXRydW5rCisxMDA5MSAxOTJlYTk4ODRlYjY3ZGZjYTY1NGIwODcwZTA3ZTgyNzk4YWQwNDgyIGxlZ2FjeS10cnVuaworMTAwOTIgZjM1YjI5ZWI1MmQxOTdlOWI2ZTY5NzUxYWJlNWFmMDVjODBiNzVhZiBsZWdhY3ktdHJ1bmsKKzEwMDkzIGRlYzY1ZmNlYTIxZWI5MWU2NDBmODYyYzZmMTYzZjU5ZGQ3NGJhODMgbGVnYWN5LXRydW5rCisxMDA5NCAwZTFlNGI0YTA4MjEwMjlmNTkzNTQzN2I3ZTcxZDZkNjFlYmE3NTQ1IGxlZ2FjeS10cnVuaworMTAwOTUgMDY4YTY5NDJmZTFhMTJlYTU0YzlmNmQ0OTg0MmY0NWNlZmFiOWFkOCBsZWdhY3ktdHJ1bmsKKzEwMDk2IGEzYTZlYzI1OTk4NjA1M2E2NWM4ZmJmNmM4ZTk4ODdjNDE0ODNhM2UgbGVnYWN5LXRydW5rCisxMDA5NyAyOTNiMGNiMzQ3MDQwNGMyOWEyN2U0MDBjNWJiODJmZmI2NzViZTY5IGxlZ2FjeS10cnVuaworMTAwOTggZWNlNjA0ZWQ2MjI4MTgzYThjOTFjYzk0MWQzMjA2MTY2ODMwMWI5MCBsZWdhY3ktdHJ1bmsKKzEwMDk5IDljZjZmOTQwOTU5NjUwOTBhNzU3NTBhNmNiMzJkZmM2MDZjNWI1ZWYgbGVnYWN5LXRydW5rCisxMDEwMCAwYTIwY2NlMTczNzE0OThkNDczYjQ0YzBmMDMzZmEwZWNhNDRlMzE5IGxlZ2FjeS10cnVuaworMTAxMDEgYzU0ZjFjY2RlNmE5ZGViNjI5ODg3M2JiNmY0ODBkM2EzYzg3YWM3ZCBsZWdhY3ktdHJ1bmsKKzEwMTAyIGE3ODc0MjllODQwYWViMGJhNmNhY2M5YTVhODA3Y2Q0ZmU0ZDhlNzAgbGVnYWN5LXRydW5rCisxMDEwMyAwY2U2NTkwNDdiYmYzMjI3Y2IyYTFhYTQ4MGVjMzZmYWJmOTIzZjk2IGxlZ2FjeS10cnVuaworMTAxMDQgNWFhNzAzN2ExZTNmYjUwZDkzMjI0ZDZiZTAyMWMzYmRiYWNmMjdkNiBsZWdhY3ktdHJ1bmsKKzEwMTA1IGEwYzdhYTA1MjJkZTEwZDlkN2JjMDIzY2YzYWQ4ZDk1NDQyNTU4Y2QgbGVnYWN5LXRydW5rCisxMDEwNiAxNjU0NTYyODI0MTIwZGNmOTliOGY4MjZiMTRmZmYwZjc3YjQwMjRjIGxlZ2FjeS10cnVuaworMTAxMDcgNzk2MGRhMDU0OWM0NzQzZTI5NjRiOTk2ZDhjNmM2ODJiMmIwNjg2NSBsZWdhY3ktdHJ1bmsKKzEwMTA4IGRiMWU1MTRmMTYyOTczMDJkNDU4YzlkYTg0ZDVmMjQyNDkxY2Y4NWMgbGVnYWN5LXRydW5rCisxMDEwOSA0MjJiYmU4ODVjYmY3MWE2MTJmY2ZlY2UwYTVkYmY4MzdiMGViNGMyIGxlZ2FjeS10cnVuaworMTAxMTAgZDIyY2Y2NjZmYTJjODhjNTA4N2EyZGM4MmNhYjAyNGJjN2Y0YmM1ZSBsZWdhY3ktdHJ1bmsKKzEwMTExIDU1MzQ1ZDZkMmMxNDFjMDJlMjBlMmEyM2ZjNWY2MTkzN2RkZGM2NGUgbGVnYWN5LXRydW5rCisxMDExMiAzZDE1OTBiNWUzZGRmZGVlMmIyNzgyN2Y2YjRkZjkzYjJiZGRiYmE1IGxlZ2FjeS10cnVuaworMTAxMTMgYmJkZDI4ZDM2ZjQyOTc3ZmI2ZjQ5NzJiMjQ1MTQ2OTAyM2RhOGUzZCBsZWdhY3ktdHJ1bmsKKzEwMTE0IDU0NzJhYjYxMGZlOWU0OTk2ZjViMTY2OWVmZTBkMjkyMTlmNjU4ZTggbGVnYWN5LXRydW5rCisxMDExNSBjMTEyNDQzY2FiZTExNmUyMjUxZTAwZjM5ODQ4YTljZTRkN2VmNDRjIGxlZ2FjeS10cnVuaworMTAxMTYgMWMwZjU4Yjc2MDgxYTg3MDI3MDlmOTQwMWRkY2EzMjNkNWQ2YjQ0YiBsZWdhY3ktdHJ1bmsKKzEwMTE3IGM2Mzg3ZTI0MmI3ODBhZmM2ODhjMDZjZjdjZDkzNjAzNDM5MmM1NDkgbGVnYWN5LXRydW5rCisxMDExOCAwOTUwMTI3MTg1ZWFiNjRkNjliODBlMDhhMGYzNGRiMmZlYjNlNjRhIGxlZ2FjeS10cnVuaworMTAxMTkgMmJiZWZlYzE2NTQyMDRiYTVhY2M3YTk5OGJiODg1YTljZjQyMGQ2MCBsZWdhY3ktdHJ1bmsKKzEwMTIwIGY3NzkxNjE3YzJiMjVkOTZkN2ViZDU0NGUzM2FmNDhjMTgyZDBlZmUgbGVnYWN5LXRydW5rCisxMDEyMSBiOTVlNTIzZGNlNmNjZTEwYjE4NjcyMDk1YTM3YmNiZjk3NTQ2ZTA4IGxlZ2FjeS10cnVuaworMTAxMjIgZDhkODg0NDdmM2MxMzE0YzcyMjZhNjRmOGFjMjM0ZjNjNjM0N2JjNyBsZWdhY3ktdHJ1bmsKKzEwMTIzIDdhZDUyMmE0Yzc1M2ExMDRhMWRjNGY3MTU5ZDUxYjVhNWY2NTc1YTYgbGVnYWN5LXRydW5rCisxMDEyNCBkOTJmMTBjNDUxYTEzOGRhNDM0NTFhZjNlNTU1YzA3YTQ4YWE4NGY1IGxlZ2FjeS10cnVuaworMTAxMjUgZGVlNTYwMjVkMzkwYjQxZjNkMGZiNTBjZDg4MjkxYjgwMWMyNjI0YSBsZWdhY3ktdHJ1bmsKKzEwMTI2IDAyYzY2NDI4ZjA0ODQxZGY3MjM3Njc1YWQ1MmRkMTZjMDhlNTQ1NjggbGVnYWN5LXRydW5rCisxMDEyNyA5MzJkZDZiOTBlMTNhNzkyMzBmYjU4YWY1MDVhODRhOTUyNzhmODJjIGxlZ2FjeS10cnVuaworMTAxMjggZWE2ODYxOWZiNTZkNGQ1NDFkM2E2YTQ3OGUwZGQyNTA4YjRmODY0NiBsZWdhY3ktdHJ1bmsKKzEwMTI5IDk1NTJkNGIzZDliNzgxNDI1ZTM4YjJkODBkYzJkNDRkMjc5NjllNTQgbGVnYWN5LXRydW5rCisxMDEzMCBkNjRkYmQxY2QzMmViNDM3OTE4MTYwNTcyNDA2ZGUwNWEzNTU5YjY3IGxlZ2FjeS10cnVuaworMTAxMzEgYjg2NzcxYjBkN2Y5MTg3Y2IxMjFhYTk1NTU5ZGY4ZGUyMWJmNmMyNiBsZWdhY3ktdHJ1bmsKKzEwMTMzIDc1ZDAwNDhjODY0M2RiNWU0YjZlMjUyNjFmYTA1NGM0YWU5ODg0ZWQgbGVnYWN5LXRydW5rCisxMDEzNCA3M2VlYmRhY2ZiNzc2MjNmODMwNWNkNTgwNGNkZmExNWJkYjZmYWM1IGxlZ2FjeS10cnVuaworMTAxMzUgNmIzZDNhMjg1ODFmNGMwZmRkNGVlY2ExYWRjNzg1ZTc5MDg4YzQwNCBsZWdhY3ktdHJ1bmsKKzEwMTM2IGYwMTdjNDg1OGJhOGMzNmFiZjgxOWU3YjcxNGY0YzhlYTAwOGY3ZDQgbGVnYWN5LXRydW5rCisxMDEzNyBmNzVmZjhkNDQzNGQ4N2I1MzUzYjZlZWI0YzZmMGIwYWI0NDgzNjRmIGxlZ2FjeS10cnVuaworMTAxMzggODY5MzczZmEwYmY4Yjg2NGQ0Y2I3OWRmN2QyYTM3MTkyNTZhNTBmNSBsZWdhY3ktdHJ1bmsKKzEwMTM5IGYwM2U2NjVkOWY3Mjg4OWRiZGNmYTYyYzQwODJmMDc0ZTI1NWQ0N2MgbGVnYWN5LXRydW5rCisxMDE0MCA0N2RkZWIwNzk1NzU0NmIzMjA3MzIwNmRmYzI3NjYzNWUwNDVmNDI5IGxlZ2FjeS10cnVuaworMTAxNDEgZWEyZDMyMTdkMGM3MjEzODFlMDkxYjYwMzQwNjk4YzM2ZGY5ZjQwMCBsZWdhY3ktdHJ1bmsKKzEwMTQyIGFjZDM5M2E5M2VkMDQ0YTUyNTU4ZTExYTI1NjczYjZhNzhkMjBlOGQgbGVnYWN5LXRydW5rCisxMDE0MyBmMjg1NWQyYWNiZDM5OTQ0ZjM5MjRiZjI2MjM5Yzg0ODM1NTUzNmJiIGxlZ2FjeS10cnVuaworMTAxNDQgYWJhZTY4YWYzMzRmNjUyYTMyNGE0ZjlmOTQ0YjhmZGE0ODg3YjFhNCBsZWdhY3ktdHJ1bmsKKzEwMTQ1IGM5Mzk0YWVhYWM2YWRjMjdjZmQyYjM2NTdhYTFiODIzOTM4OGE2OGIgbGVnYWN5LXRydW5rCisxMDE0NiAzNWYyOWI3ZGFjZjUxOGM1MmFiNGI2NzU4NmYzYzdjMDI2Zjk2Y2IzIGxlZ2FjeS10cnVuaworMTAxNDcgYWQzNDY3MWNkNGM5NjI5ZTQ2ZmRmMDI0NjFhMmFjNmEzNGYxMjVlMyBsZWdhY3ktdHJ1bmsKKzEwMTQ4IDFmOGM4ZTBiYjVlZjYwMGQ1N2JlMzY3YmE2MjU5MzM2OTljMDY5YjMgbGVnYWN5LXRydW5rCisxMDE0OSA4ZTZhNTgwMTk4ODczZTYwYTBiMDMwZGVlYzEwYjQyMTA2ZTg4MmM2IGxlZ2FjeS10cnVuaworMTAxNTAgMGNmMmZmYWY0YmQ3YzUwZWRiYjQ1NGUyNDg4MzI5MDA5MTY5M2Y0ZSBsZWdhY3ktdHJ1bmsKKzEwMTUxIDFmYjg2OGYyNTQ1OWZlMzZlMjMwNDgwNjQ4YmI5YmI3NzhkYjVhYjEgbGVnYWN5LXRydW5rCisxMDE1MiA1MjhlMmI5NGU4Yjk4NzNhNzYzZDIzN2RiODc5NjdjNGQ2ZWU5NWRjIGxlZ2FjeS10cnVuaworMTAxNTMgMzU3Yjc3ZTM0NWYzNjU2MGYyZWI2ODVlODRmMTljNTE3YjRlYzgwNiBsZWdhY3ktdHJ1bmsKKzEwMTU1IDcxMjJmZjRjNGFiZTY5Y2EyZmEzMmUzMGE0NTFhNzk5YmE1OWE3OWYgbGVnYWN5LXRydW5rCisxMDE1NiBiZGNmNzA4YWU0ZGFlOGNjOTg3YWI1MDYzMmZlMjE3OTAyOTIyNjU1IGxlZ2FjeS10cnVuaworMTAxNTcgNzJmMmFiYWNmMTUxZTQxODQ4ZWU5MThhMjUzNTlhYjI0MmM2MmUxNSBsZWdhY3ktdHJ1bmsKKzEwMTU4IDQwMzAwNTljZjk3YzEzNDEwYTMwYTVmYzc1ZTYzODhiYzMzYjBiZDUgbGVnYWN5LXRydW5rCisxMDE1OSBhNjEwMThhMmE1MDJhNDJmZDk0YTM5NDM2NzMwNDBjNzk3OTJlNzA2IGxlZ2FjeS10cnVuaworMTAxNjAgMmM5YzI0ODU4MWEyMDIzZGVjMmExNDVjYmE4ODBiMjI3NWVmM2RkYSBsZWdhY3ktdHJ1bmsKKzEwMTYxIGUxZTc2NzY2ZDhjYWUxNTYwMjA4MDIzNjBlZWQ1NjE1ZjhkOGE1MzIgbGVnYWN5LXRydW5rCisxMDE2MiA1MzM0ZWVmMTk3NGMwNTVjZTkxZmQ1MDkwYWQwMjM2NWIzYzM2OGM3IGxlZ2FjeS10cnVuaworMTAxNjMgNmJmNzQyNjRiOWMwYzMxNTQ1ZjcxNzc1NWUyNzdhNTNhMjA3NmI5NCBsZWdhY3ktdHJ1bmsKKzEwMTY0IGYwZDMzZmRiMzkyMTkzZjdlYmFlN2E4MzE4ZjE5OWU1ZDc0MjUyYTYgbGVnYWN5LXRydW5rCisxMDE2NSBhZmRjYmVmMTdlYzBmZDA2OTQzNTI5MTQ2NTcxODVmNDJkNjc5ZjVjIGxlZ2FjeS10cnVuaworMTAxNjYgNDgzOTcwMDYyOTE1MTE1YWFjMDQ4ZmU3M2RkNDNmMTc3OWFkZGM1NCBsZWdhY3ktdHJ1bmsKKzEwMTY3IGMyZTFkYjFlMWJiOGZiZDFjYWJlMTQ4MzVmNjY5NmU5Njg5MDI4NGMgbGVnYWN5LXRydW5rCisxMDE2OCAwNGQ3Mzk3OTcwYzIwNjdhN2ZlNGU1YjUzNzg2MDdkMzVkN2E3NzdkIGxlZ2FjeS10cnVuaworMTAxNjkgNTU0ZjJiODc5ZmJiMTFjYjIwZjJmMDk3Y2FkM2MzYzgxMzBlNmQwNSBsZWdhY3ktdHJ1bmsKKzEwMTcwIGY5MjQ3MjdjZDAwYjZhZDk5YTZhZjVlNTlmMDgyZDYxNzE1OWZjMDEgbGVnYWN5LXRydW5rCisxMDE3MSA5YmY4MWQ5M2I5OTViNGMxNWE1NmVkOTJkNmQyNzllOGNmMmFkMjIxIGxlZ2FjeS10cnVuaworMTAxNzIgNTdhNDIxODM4OTdkY2E4NTI1MjI3ZTgwYTIzZThmYzE5MWFlOWRkNSBsZWdhY3ktdHJ1bmsKKzEwMTczIGZmY2RjZjlmZjBlYmM2NmFhNzgyMTEzNGQ1YWY2ZTAwNmUxMGUwOTggbGVnYWN5LXRydW5rCisxMDE3NCA1ZTNjOWQ1MzBiYzFkM2JiNDAyZDRmNjJlNzIwMWVlN2UwOTBhNDFmIGxlZ2FjeS10cnVuaworMTAxNzUgMWNlZDAzNjcxNTc0OWVkODgwN2NjNDdkMzVhODU0ODg5MzBlYzNkNCBsZWdhY3ktdHJ1bmsKKzEwMTc2IGQyM2JmZTA2MTc1ZWVlN2E5ZDYzY2I2NjNjNjNhODQ3ZDdiNjJjM2EgbGVnYWN5LXRydW5rCisxMDE3NyBlNDBmMmE2ZTUyNmRkMmRjMGQzNzVjNDk2YjBlOTlhODQzYjZhYzc2IGxlZ2FjeS10cnVuaworMTAxNzggYWJlN2YxZjQ3NjhiMDFjMGZlZWI0OTA5YTUyY2I0ZGM5ZGRmYTVjYSBsZWdhY3ktdHJ1bmsKKzEwMTc5IDk2YjdjMTMyM2QzMGFlYzljNTkzNGJiYzdmZjlkOGYyZTZmZThmOGYgbGVnYWN5LXRydW5rCisxMDE4MCBhYzg3Nzk2ODU2MmNjZGQxY2I3YzY5OTE4NGFkNTc1YzUzYTU3YzM2IGxlZ2FjeS10cnVuaworMTAxODEgMmNjNGJjMGNkMDM2NzU4ZWQwMDVmMmRkZDczOTdjNGJkMzQ3ZGI1MiBsZWdhY3ktdHJ1bmsKKzEwMTgyIDRiODI5ZTZjMGRjNTU1YTUwMGFjNjkzMGVhMmQwMzZlMzk2NzEyOTcgbGVnYWN5LXRydW5rCisxMDE4MyAyY2QxNDZlMmEzYTBkYjIwNjYzNWIxMTk5NTI1ZGIxZDdiYTIzMDlmIGxlZ2FjeS10cnVuaworMTAxODQgYzlkNTQ2ODA5ZTRmOGUzNzBhNTJiY2ZlMDY4NTE2ZDI1MTUwNzgyMyBsZWdhY3ktdHJ1bmsKKzEwMTg1IGEwMDNlMTRmZWQ4NzcyMzkzMjU0OWYxYzJjM2I0YWVjMGUxZDFlOTcgbGVnYWN5LXRydW5rCisxMDE4NiA1NWUzZjg5MWRiYjVkN2RmMmNmOTJjMjlhYmNiN2ZkNjViMGFhNTY0IGxlZ2FjeS10cnVuaworMTAxODcgMjM2MTQ2NTBlMjliMWRlZWVjYzJmN2UxODliNmU4ZTQ4NDI4NWY2ZSBsZWdhY3ktdHJ1bmsKKzEwMTg4IDQ5OTFhYWFiMTdiZGVmNTUxMmViZTNmMTRiZWRjMDQ2MmJmOWQ0ZGQgbGVnYWN5LXRydW5rCisxMDE4OSBhYmI4MDJjMjE2YWQyNDM2NjUxYWM2YTJjYTMxMjM1NDE2ZTg3YjM0IGxlZ2FjeS10cnVuaworMTAxOTAgNzA2ZTRiOTU0ODYyNDhhN2Y5NTE1ZTdhYmQxYmMwNzRiNmEzNzExYyBsZWdhY3ktdHJ1bmsKKzEwMTkxIDU2ZGNmYzI3NzEwYWI2ZWYzYjNlNjI5OWU1NWZkOTk5Njg4ZTFhZTYgbGVnYWN5LXRydW5rCisxMDE5MiAwY2JjOWRmODgyYjZiZGRmNGRhNDUxNWU5YTRlNzlmYTI4Yzk0ZDQxIGxlZ2FjeS10cnVuaworMTAxOTMgMjRmZjY5YWQ0ZGEyMjM5ZmUyZGY2ZmI0OWZiZjg1ZmJlOTc5YzM1NyBsZWdhY3ktdHJ1bmsKKzEwMTk0IDhkYTcxYzUxNTcxNmFkY2Q2M2NhNzQ4ZGIxNDg0ZDk1NTgwODM3MTggbGVnYWN5LXRydW5rCisxMDE5NSAzODhiMDk3YmRkYjk1NTFhYzc2OGMxYjk3NmIwZWQ5MDdhNTI0NGJiIGxlZ2FjeS10cnVuaworMTAxOTYgOTI3MTM0MGM3ZTBjYzk4OTQwOWI4ZTc5NDMxZWY2MjAwMDM0MDFhMyBsZWdhY3ktdHJ1bmsKKzEwMTk3IDk5NWFlYTA5MjkxNzMzYTY1ODJkMzg3YzlhYWQyNzc3NDM4MjJlYjUgbGVnYWN5LXRydW5rCisxMDE5OCBmODM0MjVjYzdlOTY3NWUxODQwODE1NTNhZDNiZDBiNWMyNjBlMGFjIGxlZ2FjeS10cnVuaworMTAxOTkgZDIxZGM1OWM4NmQ3NGQwYjAxYjQwYWJkOTc2NzNlNTA3ZjgzMDJjOSBsZWdhY3ktdHJ1bmsKKzEwMjAwIDVjN2JjZTA1M2QwMzg4NmVmZDkyZmU1NWU3NjVlZGJhZGExNDdkNWYgbGVnYWN5LXRydW5rCisxMDIwMSBmMDkzZmNmZDU2MjVlMWRiOTQ4YzQyNWU2Y2IyNzZiYzU4MTAxZTY1IGxlZ2FjeS10cnVuaworMTAyMDIgNjczMThkM2ZhNmRjZDY0YTM5ZTMwZGUwOWZlYmQ1MWU0OWUwMzExZCBsZWdhY3ktdHJ1bmsKKzEwMjAzIGQxMDNjMDE4MGIyZGUwNmU1NWU0NGQxMDc1OTdjYzQxNTc2ZGNhN2QgbGVnYWN5LXRydW5rCisxMDIwNCAxYmI5NDNjZDJjMjNkYzdkMzNmYTc2MDY1NDI0ZmEyMDY5NmUxYzFmIGxlZ2FjeS10cnVuaworMTAyMDUgNjYzMzY3Y2ExM2Y4MTY0MDFmY2ZmOGEyYmIyZjQwMjVjOWZiOWE4ZSBsZWdhY3ktdHJ1bmsKKzEwMjA2IDA5NTYzNmI4ZmFiN2U4MTFlNzcyN2MyZGVmOTAwNzFmYmZlZDIzNzEgbGVnYWN5LXRydW5rCisxMDIwNyBjYjI1Njc5ODM0N2ViOTVjNjE5MmM2Y2RhODE2MWIxNzA3NDBmMDJiIGxlZ2FjeS10cnVuaworMTAyMDggNTJkYWE3MGJiMDg0OTM0NTIwNTM3YjVmOWFlMjJkMWE0YjEzNTNjMyBsZWdhY3ktdHJ1bmsKKzEwMjA5IDg5NTgyZmExODI0ZmJhOTk1NTdiMDJlOWM3ZGYwMTYwYTE5NDQwMmIgbGVnYWN5LXRydW5rCisxMDIxMCBjMTA5ZDVjYWQxMDA3NTZmNTA1OTU5NjExYzBiNGY0NGU4M2M1MTJhIGxlZ2FjeS10cnVuaworMTAyMTEgOWMzN2VkODg2OGI5ZWZiYmM5NjhmOWVhNTRmOGQyZTIzMmYyMDQ3NCBsZWdhY3ktdHJ1bmsKKzEwMjEyIGI4ZTFlMTA1NTY0OWQ2Mzc3ODU2ZmQ2MjM2NGE5YTBjYjVhOTE1MGMgbGVnYWN5LXRydW5rCisxMDIxMyAzMGUzMzE0OTY5MzBiNWJhYTk1M2JjZmEyYTEwMTYyNTRmZjU4ZDRiIGxlZ2FjeS10cnVuaworMTAyMTQgNzI1YjM3MGU4NTNmMGUxZjBjZmFmMzU1MTA3MDdhMWE5NjM0NDQyYSBsZWdhY3ktdHJ1bmsKKzEwMjE1IDdhOWFmYWJhODhkODQyY2MzOWU2YjkwYTdjMDY2ODgzODVmMDE2MjUgbGVnYWN5LXRydW5rCisxMDIxNiBlZDMyMDAwMWMyOWE4NzcxZTcwNWYyNDIwOWEwNmRlNTgzNjk5ZTEwIGxlZ2FjeS10cnVuaworMTAyMTcgNWQ3ZTRkMjBjODllZGQ5OThiODBiMDUwYzdkMzExZDM1MDcyOWNmYiBsZWdhY3ktdHJ1bmsKKzEwMjE4IGJiZmQ5NDZiMGIzOGM4ZjE2ZTVlODdjM2UwNjlhOTU0MDk1Mjc0ZGUgbGVnYWN5LXRydW5rCisxMDIxOSAxMDkxYmEyYmFlYTRhMjljYTc5N2IzMzEyNjY0Yjc4ZTJkMzRjZWU0IGxlZ2FjeS10cnVuaworMTAyMjAgNDIzYmU3Y2QwNDc5NTIyYjBjM2M1Y2I1ZmVkZjNjZDFkMzY3OTg5MyBsZWdhY3ktdHJ1bmsKKzEwMjIxIGUyOTAyOTAyOTQxNGIyYTljNWU2ODBjNTVjNjY1YjI3ODVmNjVkMTIgbGVnYWN5LXRydW5rCisxMDIyMiA1YmY2NmFiNGRmYjZmNjljNTIxM2IxNTNjN2I2Mjk2YjZmZjYwMjEyIGxlZ2FjeS10cnVuaworMTAyMjMgMjY5YTMyN2Q2MzA1ZjI3ZDUwZmY0NzFkMjgwMzNlYWY1YjgyNzM4NiBsZWdhY3ktdHJ1bmsKKzEwMjI1IGM0OTg0NTFjNWY1NjQxNjNjMjQxODNlN2U3OTk2OGVkMGIxYThmNmMgbGVnYWN5LXRydW5rCisxMDIyNiA0NWEzZGFiZjBmYTgzYzkwMmVmMTNjNjA0OTk2Y2FlMWEyNGZlYjFlIGxlZ2FjeS10cnVuaworMTAyMjcgNzkyYmZkNDczZjUxNjg4ZGQyNGZiOTM0MmRmMDIwMzBiZGNkMzgzZSBsZWdhY3ktdHJ1bmsKKzEwMjI4IGFlZGQyZDBkY2IzMTU0M2JjNTNlODJjNmNjMDZmY2Y2MDJjZTk2OTQgbGVnYWN5LXRydW5rCisxMDIyOSBhNzNlZjcyMGZiNTY2MzZmNzM2MGM4N2ViNGNjZjY0NDhiNDdhYzhlIGxlZ2FjeS10cnVuaworMTAyMzAgM2MwOGZiOWUxMzRmODJjYzg4ODhlYmYzYWU5ZDQ0ZWJlOWI3NmZiMCBsZWdhY3ktdHJ1bmsKKzEwMjMxIDY5NzJlNTBmMzQ4M2U1MTM1Mjg2YzAzZDNjNjkwNDgyYzM2NmQwMzkgbGVnYWN5LXRydW5rCisxMDIzMiAwYzgzN2RhYjViOWVhYzVkZTQ4NTgxNzIwN2QxZTA2YWE3MzFiZGY1IGxlZ2FjeS10cnVuaworMTAyMzMgYjRiMGU0ZTc1OWM1ODFmMDgxNWRlZWQ1YzYwZjQ5Yzc0YjM4ZTc5YiBsZWdhY3ktdHJ1bmsKKzEwMjM0IDhlZjA2NzU1OWQ1YTM4MmY2YjcwMGVjNTBhNzA2NGE2ZmEwYjc3OTcgbGVnYWN5LXRydW5rCisxMDIzNSAwMzNkYmU5MDkyMTgxNTQxZGE1YTFhNTg3Y2FkZDNiNGJmNGI5NzkzIGxlZ2FjeS10cnVuaworMTAyMzYgZmI0YjRkMDY5Y2M3Y2RiNGI2NjUzMmViNDlkNzdhZDA2ZDI3YmRmZiBsZWdhY3ktdHJ1bmsKKzEwMjM3IGE0MTkzMzRmM2IzOTdiNjRlYTBiYmY4NDgyODM2MTBkNDEwZmNjNjYgbGVnYWN5LXRydW5rCisxMDIzOCA3OGMyN2UzMWFjN2M5ODA2ZWMzMGNjNDg0OGIzZmY3ZDQyMWYxYTk0IGxlZ2FjeS10cnVuaworMTAyMzkgYzMxMjU3YjkyNDQ3ZWNlNWQ3NDc2OGRhOGJhMjJlM2FjODZkZGY1MCBsZWdhY3ktdHJ1bmsKKzEwMjQwIGE1ZTJiZWJlMTc5YWU3NmZiNmEyYjcxMjczZGU5OTI3Njc4ZDI2MzcgbGVnYWN5LXRydW5rCisxMDI0MSA2YmZhNjUwZjMxMWRmNDZlNjcyMjk1MWZmNTZiYWNhM2IzYjgyNjkyIGxlZ2FjeS10cnVuaworMTAyNDIgNDU4YTMzYWJiMzljMWFlYTNhZDQ5NjAwMTIwZDk0ODI0MWVkNTdjNiBsZWdhY3ktdHJ1bmsKKzEwMjQzIGFjZjNiOTUwY2I0MzdkMWI3ZWVkZDExNjE4ZmUzYjQzNjgyMDdmZTEgbGVnYWN5LXRydW5rCisxMDI0NCA5YzAyZTBhMjY1MTFhNGZmMmM4NTNiMDcyNGYwZjhiOTVjMTIwNWU3IGxlZ2FjeS10cnVuaworMTAyNDUgOWQwZGMxMTc3NWE0ZTQ3YWU1NGI5NzQ2ZjU3MjJlNDllNzk3ZTA2ZSBsZWdhY3ktdHJ1bmsKKzEwMjQ2IDhiNzg2NTNiYWYxZmQxMjJiOWU3OWJkOThiYThlMzc0YjE5NjI4YTYgbGVnYWN5LXRydW5rCisxMDI0NyA1ODdkMDE3OGY4ZDM2NmYwMDljM2NmMmU0ZTZmNGQ0NmM5MzdmNzcyIGxlZ2FjeS10cnVuaworMTAyNDggN2ZkNzlkZGZiYjhiODg0ZWY5NjRjYTVhMDY3MGMwNmRiZDZjY2RlYiBsZWdhY3ktdHJ1bmsKKzEwMjQ5IDhmMTc3OTMzYzQxZmFiM2MzMTlmNTdiOGZhNDczMDJlNTUwYzdmNDggbGVnYWN5LXRydW5rCisxMDI1MCA0NjlmNjY5MThkZDZjYmJlNTJmZjZkZTQ1ZDI4ODYxOTJhNThkNzNmIGxlZ2FjeS10cnVuaworMTAyNTEgOWY0NmU3MGViZmJiMmQzNjVhNjY2Y2NkNzhiNTM4Y2M0YWViMThmMyBsZWdhY3ktdHJ1bmsKKzEwMjUyIDcwN2QwNjJjYWU3YmZmMWVkNzg1ODUxOWMyYjZiYzY1NWNkMzBlMWMgbGVnYWN5LXRydW5rCisxMDI1MyA5MTcyOTMxZmQ4MGE0OGFjODcxMGFkYjE4YzAyNzNmNjBmNzM0YTdjIGxlZ2FjeS10cnVuaworMTAyNTQgOGE1Njc0MTJiMjFiYmFlZjczYWJmZTYzNTQ0MWY1ZDQ2YTA5OGVkNyBsZWdhY3ktdHJ1bmsKKzEwMjU1IDVmYjY5ZmYyNGNkZGMxM2NiNzRlMmU3ZmJhYmE1YmQ2YTgyZDI0MTQgbGVnYWN5LXRydW5rCisxMDI1NiA1N2YxMWFiNGUyOTIxYjE0MjAyMjAzYzQ5NzdjNGJlMDFlNmUzZWUxIGxlZ2FjeS10cnVuaworMTAyNTcgZGI5NGIxNWJkNjQwMGJlNTMwZjZjM2Y5NjcyMDA5YmNlN2JkMTU0ZiBsZWdhY3ktdHJ1bmsKKzEwMjU4IDVlMjE1ODk0YzU1NWEyNzI4OWEwYWRjMDkyZjc5MTAzNTRlYWM4ODEgbGVnYWN5LXRydW5rCisxMDI1OSBiMTdkMjAwZWRmNjI3YmRmNTFkNTNhODVlNmE5ZWQ1Yjk3ZjY4MjMxIGxlZ2FjeS10cnVuaworMTAyNjAgMWM0MjA2OTlkNThhM2JhMmUyMmM2NjU3ZDQzZDFmNDk5ZGVkOTdjMSBsZWdhY3ktdHJ1bmsKKzEwMjYxIDNlMTE5OGQyMGY5Y2UxMzM3NTdjNDQzMWVmNThiMjdkZmU4Y2E3ODggbGVnYWN5LXRydW5rCisxMDI2MiAzNmIzYjY4NzZhNTgwZWIwZGZjZjQyYzk4ZDM0MTM5OGYxYTg1YzI1IGxlZ2FjeS10cnVuaworMTAyNjMgN2ZjMzJhNjYyNTVhNzdhY2Y1MGQxZWE0ZWQzNTg2MmNkMTUzMDUzMiBsZWdhY3ktdHJ1bmsKKzEwMjY0IGNmZTZmNThkZDBkOGVmOTIwZTFhZDE4ZThjYWI5YjQxYjZlZDlhYzAgbGVnYWN5LXRydW5rCisxMDI2NSA4MGIyNjc0ODM4MjhlNTgyMDNkMjEzYTJmYjhlMGJlNzU5OWY4MDEyIGxlZ2FjeS10cnVuaworMTAyNjYgMDU2OTJjNjYxNDM0YTE1ZDk1YzgxOTQ0MmU5MmY5ODcwNWI4NGY1ZSBsZWdhY3ktdHJ1bmsKKzEwMjY3IDZhZGY5MTdlZTc3MzBkNzM5ZDA2MTYwZmY2ZWRiZWJlYTY0MWMwMGEgbGVnYWN5LXRydW5rCisxMDI2OCA0NGZjN2ZmZGZjNzdmYmVhN2MzM2U3OGFkNDhiMjY4OThmYWRjMTg3IGxlZ2FjeS10cnVuaworMTAyNjkgYjFjMDkxNTAxNDExMGZiZmM2YWQ5ZmY4YzYyMzZhYjgwOTk4MGJhZSBsZWdhY3ktdHJ1bmsKKzEwMjcwIDg4YzUzOTIxYmY4ODA5ZTY2YzU4MDdkYzIxOGEyZGNjMTdjZGVkMjEgbGVnYWN5LXRydW5rCisxMDI3MSBiOWUzMTEyMGEwYzRlYWU5ZTVjNmU2NTUxNjQxMDJlMzM5ZjZmNjBiIGxlZ2FjeS10cnVuaworMTAyNzIgMjNkMDQ5MDAyNTY4OTUxN2FiMTZkOTY4YjI5Yzc4YjZlNDc4NjJiOCBsZWdhY3ktdHJ1bmsKKzEwMjczIDhkNDE0ODIxM2NjMDJhNmRjMTkzNWY5YzhlZThiNThmMTI0ZDBlYzAgbGVnYWN5LXRydW5rCisxMDI3NCAwNzQ1MzE0MGEwOTU1MDA4OGQxZGRiN2E3NTdmMWRjZTg4NGQwZGZhIGxlZ2FjeS10cnVuaworMTAyNzUgMzc1YTkwMTA2NWMxYjg3N2E1ODc5N2FmMmE1ZDM2OGQzMDA1ZTA0MSBsZWdhY3ktdHJ1bmsKKzEwMjc2IDQzM2MzODFjMzcwMGUzYjAxNjU5ODcwNmY1MmM5YzU2YmU0ZDczYmIgbGVnYWN5LXRydW5rCisxMDI3NyA2OGUyYjBkYmJlYzhlYjYyMGEyYjliMGRmZWQ0NDFjNDNkMjAwN2VmIGxlZ2FjeS10cnVuaworMTAyNzggMDY4YTc3NjJlMjg2MTMxNmNiZWQ2NTk1NmUzNmRmZTlkMjBiN2Q2OCBsZWdhY3ktdHJ1bmsKKzEwMjc5IDQ5ZjExZWI0ZWI5YTMzMjIzM2FhZjc5YzAzN2Y0YTc1MTk3ZTU4NTAgbGVnYWN5LXRydW5rCisxMDI4MCBjZjcyMzk5MWQ3NWZhZDE2YWIyZjNlOGQxMDllYzM1MjAxNGYzY2M0IGxlZ2FjeS10cnVuaworMTAyODEgY2Y0MjAxZWY3M2FhMmM2YWI0ZjQ5ZWJhYTcyOTk5YWM1MTRlMTFiNyBsZWdhY3ktdHJ1bmsKKzEwMjgyIDA0Nzk5NjY2NmM4MTg5OGIwMzQxODhhMmMzMGMxYjRmYjVjY2ZhNGEgbGVnYWN5LXRydW5rCisxMDI4MyBkZmZlMWU0NzBlNmNmM2NmMTE3MjQ4YjcxZWUzNGFjZmM1NzcwYzI0IGxlZ2FjeS10cnVuaworMTAyODQgMDY2MGYxN2FkZTYwM2NhMmE0ZmZkMThiMzY2NmUxNWNkY2YyZGY0OCBsZWdhY3ktdHJ1bmsKKzEwMjg1IDZkMDRlOGM4MTdmYmVmYTYwYTVkZTlkMWMxZTUxMTAxNmQzNWEwN2YgbGVnYWN5LXRydW5rCisxMDI4NiA0YzZkYzA3ZjFiNmE2MGNjYmZjMGMxMWU4MGNkMTVjZGM0MjE4MzI2IGxlZ2FjeS10cnVuaworMTAyODcgODFmOTgxODgwMTJlNDE5ZDA4MTk2ODQ5MmNjYWI1Mzc0ZWJkZTYzYyBsZWdhY3ktdHJ1bmsKKzEwMjg4IDVkMTVmNGZkNmQ2OWZlZWU2MzE0NmM3NDExNGIwZGNjOGEzODk4YWYgbGVnYWN5LXRydW5rCisxMDI4OSA3MGNjYmJjYzEwY2NhZDQxODkxNzgxNWRkYzJjOGIxNGRjZTJjZDk2IGxlZ2FjeS10cnVuaworMTAyOTAgZTU4MGFmYTFjODMzODBiMjQ0MmRlNmZlMDg1ZjEyNmNlMGNmZGJiNCBsZWdhY3ktdHJ1bmsKKzEwMjkxIDk5NjdiZTFmNDAyYjFhMDYxMzQ5ZmUzMzg4YTMxOGFhMmNiMjkxYzAgbGVnYWN5LXRydW5rCisxMDI5MiA0MTJlNmFiMDNjNmZmYWQ5OTA4MzE3MWVhZjZlMzAwMGQ0MTJjNTBiIGxlZ2FjeS10cnVuaworMTAyOTMgYzA0NzA4NDRjN2JjN2M2ZTViNzA4MGU5ODNmNGMyMzk0ZWUxNjBkMiBsZWdhY3ktdHJ1bmsKKzEwMjk0IDY0MzJjYmFkODI4ZGM5YzhiZjNhNDU1NGI1NTVhMGNiMmUzM2Y1NGQgbGVnYWN5LXRydW5rCisxMDI5NSBhNzI3YWU2YmZlNTBjNTg4MDU0ZDA5NjFjYjFhMzZkMDdkOTBiODE0IGxlZ2FjeS10cnVuaworMTAyOTYgY2M0OTQyZjBlYzRjOTRjYmM5N2E5ZTBhNGE5NDA5OTJlNGZmYTQyMyBsZWdhY3ktdHJ1bmsKKzEwMjk3IDUxMzIyNThkYTc4ZThhZjdiZTg5MzM1ODc5MjJhMmM1MTUwMjZmZWMgbGVnYWN5LXRydW5rCisxMDI5OCA0NjE3MzhhYWE1MzNkMmNjYzhiZTlhZDg1ZmI1YTg1NDU4ZTMyY2E2IGxlZ2FjeS10cnVuaworMTAyOTkgYTM1YjU0MTRmZGQ5YmI2Yjk3NTEzMzRkOWYwNmJiZjAxYzQ1ODFiNyBsZWdhY3ktdHJ1bmsKKzEwMzAwIGQ3YWJhZDcwZjY4MTE0ZDQyMWM2NTE0NGY0MzM3YjJkN2Y5OWVlY2UgbGVnYWN5LXRydW5rCisxMDMwMSAyMDkwZjhmOWQ1ZDJkNDk2MzVjNjBkN2YwNjk2ZjIzYWY1ZjQ2MjRlIGxlZ2FjeS10cnVuaworMTAzMDIgZWQ4NTZmY2NmNjM5N2ZmZTk0N2NhYzAwZjY3NWI4MzljZWExYTM2YiBsZWdhY3ktdHJ1bmsKKzEwMzAzIGQxYjIzNTA0YmQ5OWMzYjE0Mzk2YzVkOGQ5ZDMwOGQ5ZjBkZjJkNGQgbGVnYWN5LXRydW5rCisxMDMwNCAwNTc1ZDVhMTcyMTg1NmQyMDFhYjZhMjRhNTk5MDlkN2RkY2Q5NTdhIGxlZ2FjeS10cnVuaworMTAzMDUgYjg1YTY3NWI2NTAzZTU4NTk3OTlhODdiMDg3MDUwNWQ5NGZhMjg0NCBsZWdhY3ktdHJ1bmsKKzEwMzA2IDI5ZGM1ZDE5MjhiZmUxYTIxNGMwNGY0YmNmYThhYTQxMjU2Mzk1YTMgbGVnYWN5LXRydW5rCisxMDMwNyBiNzFkMWJkZDE4N2RlZTZjOTczYWVjZjRmZDdmZGJmNTI2NmE4MTJjIGxlZ2FjeS10cnVuaworMTAzMDggOTg2YTc0YzNhMjJjYTBmYTdlNDMyNGMwNzNlNTQzNTk5OTZmZDkzNCBsZWdhY3ktdHJ1bmsKKzEwMzA5IDhmMGUyOWNlNTllZjQxNzhlN2NhMTUwOGJkYjIxMTliZWNmZWU3YzAgbGVnYWN5LXRydW5rCisxMDMxMCBlMmZiMjU3ODQ1MzA0OWUwOTQ3NzJhZDY2MTNhZGYxOGY1NzY5ZTVhIGxlZ2FjeS10cnVuaworMTAzMTEgMzQyOTllMDk2ZTM1MzkwYTM0MmRjNzhkODZiOWY0MzZhNjQ4ZjZhNyBsZWdhY3ktdHJ1bmsKKzEwMzEyIDFmOGYyMDAyYmZiOWYwNWE1MGE1N2FlZjc5ZTQ2MmZiOWI4ZmE1NmMgbGVnYWN5LXRydW5rCisxMDMxMyBkMTRiNzEyMGM1NTE4ZDFlZGJlMzM0YzcyZWNkM2Y2NGU1ZDJkNzZlIGxlZ2FjeS10cnVuaworMTAzMTQgNjQzZTk3MjhhYTQ5MmU4NDZlNWE5MTY5MjU2OGQzNDA2Yzk3ZmU5NCBsZWdhY3ktdHJ1bmsKKzEwMzE1IDE0N2MxMDY3Y2EzM2QxNGVhOWI1OTVhOWNiNzM3Mzc2YjZkOWRjNTAgbGVnYWN5LXRydW5rCisxMDMxNiBjYTczNWI4NGE5MzlhNWEzNGQxZTAzMjk0NDBkYTVjOTBiZjhiZTE1IGxlZ2FjeS10cnVuaworMTAzMTcgOThmNmVkMTMxYjc1Y2VmNDNmODY3MTg1ZGIzZDQ1YTM5NjFmMTQyNiBsZWdhY3ktdHJ1bmsKKzEwMzE4IDU0ZDhlODVkM2MyODdkYzI1NDA3N2UxZGI3MmFkMDdhNDg2MmQ0MDIgbGVnYWN5LXRydW5rCisxMDMxOSBmYzk1MDQzM2QxNThlNTZmZDE0NWE1NDc3MjlhYWIzNWRlYzExY2I1IGxlZ2FjeS10cnVuaworMTAzMjAgZDRmNTMyMWI5ZDllODU2ZmMyYzZmMDA5N2E3MjIzOWEwMjFlNGMyZSBsZWdhY3ktdHJ1bmsKKzEwMzIxIGFhYTIwNGEwNWY4NDIzMjcxNTFkMjkzYzUxNDA4MjllOWZmNDdkZDAgbGVnYWN5LXRydW5rCisxMDMyMiBjYTE4NTA0ODFlMDJhNDFhMzJiMzg4MzY5YjM4OWVhZDU0YWQzNDQ2IGxlZ2FjeS10cnVuaworMTAzMjMgNDkxZTMwMDVmNTRiNTQ2ODZjYmYyMmZmNzQ5MDkxZmU4MTE3MmJkOCBsZWdhY3ktdHJ1bmsKKzEwMzI0IGFhYzU4NWZlOTQ1MmZiZGVmYzg2ZjRiMDcwOTBjMmJmYzk0ZjdhYWUgbGVnYWN5LXRydW5rCisxMDMyNSA2NzA5YTAyZjY3MTgwMzhkZjEzMmQxZTFjNzUxMTcxZGFjYjAyOTYyIGxlZ2FjeS10cnVuaworMTAzMjYgOTQ5YjU5ODIwMTg1YWY5MTFiODc0ZDkyYjkzNjk4NzQ3MDc1YzNlNiBsZWdhY3ktdHJ1bmsKKzEwMzI3IDZjNmE0OGJjNTgxNzNlNzA0ZjU2Y2Y4ZGVhZTg1ODRiZWQ4NzVmZWYgbGVnYWN5LXRydW5rCisxMDMyOCAzYzRmNzM2ZDVlMDEwY2NkNjI3YzUyYzVkYzNiZjUzNDRlZGIzMjMyIGxlZ2FjeS10cnVuaworMTAzMjkgNGZiZTZjOWM1ZDgxMWZkNGYzZWNjYzQ1Njg1YzI3YWM4OWQ0YTU3OCBsZWdhY3ktdHJ1bmsKKzEwMzMwIDlkM2I0MDFiYWM2ZGUyYzcwOTNkYjg3NmRjNjJmZjc1NzVjNzlhODEgbGVnYWN5LXRydW5rCisxMDMzMSBkYjFlNDlkNTFmZTEyYzI3NThmNzkxMmEwYjc4ODBhOThhNzI5NWE4IGxlZ2FjeS10cnVuaworMTAzMzIgNmU0ZWEwZWRhMjJlY2M5YmQyZjgwM2VkMDc5ZWM1MWVjZDE1YjI0MSBsZWdhY3ktdHJ1bmsKKzEwMzMzIGYzNGE2NThlN2MxNTY1YjYxNmU0ZjkxNmNkMzIzOTMyMjMxYWI2YzQgbGVnYWN5LXRydW5rCisxMDMzNCAyNjFjNjM5Yjk4NDczMjU0ODc1MjU2MGRjYjU2YzBlZjAzMjU3N2E1IGxlZ2FjeS10cnVuaworMTAzMzUgMWYxZjk0OTUwNWFmMDRhMTE4ZWVlOGM3N2JhYWQ3MmU2ZDE3NTJiYSBsZWdhY3ktdHJ1bmsKKzEwMzM2IGI3NWIyZjlkM2NlMTNlOTZhNjhkMzA2OGM1YWE0ZGM5YzJkZDc0NTYgbGVnYWN5LXRydW5rCisxMDMzNyA5NTY3MTllYTVmNWE2ZGJjYTRmZmY5MzJmYmEzNjcwZWUwNGYyMDJlIGxlZ2FjeS10cnVuaworMTAzMzggYjg0Nzg1MDRiNzc5YmIyNzdmY2QzOGUyZjJjYzAwYzc2ODJjODMwMCBsZWdhY3ktdHJ1bmsKKzEwMzM5IDg0MmVkNmJiZDA2NjBhN2FhOTUyNTI1NGRlYmMwYWJhNGM1YWNhMTYgbGVnYWN5LXRydW5rCisxMDM0MCBiMGIzM2EzNTdjNzllZDY0MDE2MmZiNzlkYjVkN2JlNDhhNTQwYWQzIGxlZ2FjeS10cnVuaworMTAzNDEgOWUxMGM4NjJhYmZjMWEyODBiOGJhYWM2ZWZhYTljZTEzNDE4OWM1NiBsZWdhY3ktdHJ1bmsKKzEwMzQyIGU4NWQ2ZGI3YmY5Nzc1MGE0MGI0NGE4OTIyOWFhZGE2OTk5YTZjN2EgbGVnYWN5LXRydW5rCisxMDM0MyBhM2FkYjE2ZjA4OTVmMGIyOTljYjcxMTI2MjcxYTY5NzBlODQ0YWU1IGxlZ2FjeS10cnVuaworMTAzNDQgZDc3M2RiMDYzNTVjMDY5OGQxYWZkNzVjNzBjMDgzZjAwZGI2YWU4ZiBsZWdhY3ktdHJ1bmsKKzEwMzQ1IDIxYTdlM2MzMjRkZjdmYWNlOWZhMDAzY2E5N2MwNGNkM2JlZDQ4ZDYgbGVnYWN5LXRydW5rCisxMDM0NiAxNzZiOTllNjk2NWJlOTMyNjg2MzFlYWY1ZThjM2ZkNDYzZGQ0MGM2IGxlZ2FjeS10cnVuaworMTAzNDcgYjY5ZmE5ZDE0MmNhNWE3OGMzZDZmZWZmMjQwMDg4ODU3OTVkZTRlMSBsZWdhY3ktdHJ1bmsKKzEwMzQ4IGM3NmFkYWY1MTJkNjU1M2FlYmYxZjQwNzUxNzQ5OGI0ODE5MGQwNTMgbGVnYWN5LXRydW5rCisxMDM0OSBhNjFmZGI4YTQ0OWVlMWYwMzYzYmJlYzBlODI4ZjAzMmMwZGU1YzAwIGxlZ2FjeS10cnVuaworMTAzNTAgMzFmYThhMGZkMTc4NzJlNDJmZGFkNzcwOTRkMjE5MDY1NWIyMTEyNiBsZWdhY3ktdHJ1bmsKKzEwMzUxIDZiYzRmODA3MjVkNmUyOGRiNGY2ZDMyZjg3NTQ5MWQ4N2IxOGE2OTAgbGVnYWN5LXRydW5rCisxMDM1MiBkMTUxODFhMGNmYmFiODYyNWExMjg5MmRmNDFkYTQ1YTliYWMzNjYwIGxlZ2FjeS10cnVuaworMTAzNTMgYjVlZGUxMzNkOTIxNmFlZmQ0MjhjODUxM2EzYWJkN2UxMDRkZTEyMyBsZWdhY3ktdHJ1bmsKKzEwMzU0IGQwN2I5N2QyOWE5ZTMyYTEyY2QxNTgzOWEzMDhkNGM1YTVkZjdjYzQgbGVnYWN5LXRydW5rCisxMDM1NSAzOTIzODhjNTJlMjE3MTdlZjIzZTNlOTgwYWNiMGMwNjhjZWY1ZWVhIGxlZ2FjeS10cnVuaworMTAzNTYgOGY0MjVmOGY0YmUyZGY1ZGUwY2I3N2I0Nzc1YzZhZjFmY2E1YmIyYSBsZWdhY3ktdHJ1bmsKKzEwMzU3IDBhODczZjJiNjRmNDE4MmEzYjgyMDdjNTk3YWI4ZmEyNDNiOGYzNjUgbGVnYWN5LXRydW5rCisxMDM1OCA4ZTUyMjM2ODBhOWRhNGM2ODlmYmRiMmNiYzQwNTJhOGVlYWUwY2I1IGxlZ2FjeS10cnVuaworMTAzNTkgYWMyZDFjMWYxOTcxZjJhOTNkZWQyMTdmY2M3NTRhNmRmMjBmOGRhYSBsZWdhY3ktdHJ1bmsKKzEwMzYwIDQyN2E5YjFjOWFiZDhlMTIwZTJiZjBiYzllN2VkNmY3YTZmNDAxY2QgbGVnYWN5LXRydW5rCisxMDM2MSBiZGU2OWRmYzIyNGYwZTczN2I4NjY4MDYzZGNkNTZjNmZkMWM4ZGIxIGxlZ2FjeS10cnVuaworMTAzNjIgNjM3MGYxNTkzYzcyMGI5MmExM2RmNzI3YjlmMzFjZDVlMmNiYjVmMyBsZWdhY3ktdHJ1bmsKKzEwMzYzIGIwZmJlNmI2ZGNiZjExYjFhMTAyMTJjMzk3M2EzNzg0MmQ2OTIyMjQgbGVnYWN5LXRydW5rCisxMDM2NCBlODMzYmVlNWQwNWZiMjRlNzQwMDgyZGNkZDYzYWFkOGRiMmMxZWI2IGxlZ2FjeS10cnVuaworMTAzNjUgZGZjOGRlOGYxZWMzZTY5YjI4MjNjZmZkZmRjNjA5OWU4YmFlODc0OSBsZWdhY3ktdHJ1bmsKKzEwMzY2IDQyZDNmMWY3MWM1NmNmYjk5YjliZWEwMWFjYmRiZGMwYWMwMWMzYTAgbGVnYWN5LXRydW5rCisxMDM2NyBhZTk3NzhjNGZmY2FmNjM2OGU2ZTBlYThlYWZlMjg5NTJmNjRjZjJiIGxlZ2FjeS10cnVuaworMTAzNjggZWZiYjdlNTdlNmY4NmZjMGY2MTAwZTQ0ODQyMmQ4NDU0Mjg0YzE5NCBsZWdhY3ktdHJ1bmsKKzEwMzY5IGY4ZjY2M2I0MzJiNDM1NmE4YmFlMjA3MGE2NjdiYjBlODllZmY3MzUgbGVnYWN5LXRydW5rCisxMDM3MCA0MWM3ZDUyNDNiZTkzMWY4M2ZlZDYxYjZjZjIzOWVkMWU5OTUzMjg1IGxlZ2FjeS10cnVuaworMTAzNzEgOGEzODljOGZlNmVmZDJhMzViYTMyNzk2ZGU5ZDdmNDIzMGU2ZWJhOSBsZWdhY3ktdHJ1bmsKKzEwMzcyIDM3MjM0ZTFiYjc1ZmZkZGViODUzMWI1NGU2OGZjYzRmZGVmOTVkODAgbGVnYWN5LXRydW5rCisxMDM3MyBkYmQyZGUyNmM4ZDIyNWZmZWMwZmFiZmQ5ZTc4ZWE5ZGYwOWFlMGUxIGxlZ2FjeS10cnVuaworMTAzNzQgOGM5MzU0NGI5NWU0YjNjMWMxNTY3NDk4NmYwYjlkOWEyNzBkNjhhMiBsZWdhY3ktdHJ1bmsKKzEwMzc1IDI2NzM4NDg0MzdjMzRkNGVkM2ExMTA0YjY4ZjI2Y2NkZWY0YWFmOTMgbGVnYWN5LXRydW5rCisxMDM3NiBlNjA2NmI4MTNhNzE0ZDE1ZTk2ZTQyMTc1MzMyZjQ5ZjNiMGYzZjk5IGxlZ2FjeS10cnVuaworMTAzNzcgMjlhYjNmNjAyZDAwMjNiNWMxOTM3MzI2YTQ3OGI4ZGI1MWExNzhhZSBsZWdhY3ktdHJ1bmsKKzEwMzc4IGRmNjM2ZGVkMmU3MDJiZGRmZGY4ODIyYWE4YjhjNzI5NjRhYjg2ZDYgbGVnYWN5LXRydW5rCisxMDM3OSA2YTAyOTllYmNjZWY5MGQwM2Q0YzgwMGZlM2FlMTc0YjU0YzZhODlhIGxlZ2FjeS10cnVuaworMTAzODAgOGYzYmIwYjE4YTgyYmNlNDA3MTljOTQ0ZDEzMzBmYThiNDJjYzE3MiBsZWdhY3ktdHJ1bmsKKzEwMzgxIDFlZmVlNTAzMjU5ZTUxYTQ4ZGQwMTY2MTAzYWYzYzk1NTI2NTA5NmYgbGVnYWN5LXRydW5rCisxMDM4MiA5YTI0NmQ3NGZjYjc1MmExNDZkMzRiOWY4YTExOTFjOGE5Y2I3MGE2IGxlZ2FjeS10cnVuaworMTAzODMgYTExMDQyMWQ4NmI3MzE0MDAwZmMxODlmYzBlN2NlYWZlNzRiZWY1ZiBsZWdhY3ktdHJ1bmsKKzEwMzg0IDE3MzY4YzkyYzc2OWE1M2JjNDM5YzAzNDExMDE1ZTk1MmM2NjQwYmIgbGVnYWN5LXRydW5rCisxMDM4NSAzYmQ2NjhkZjZlZmRjMmQ2MzUxM2Y4ZWY2ZWQwMjc5ZDcwYmM5NWI2IGxlZ2FjeS10cnVuaworMTAzODYgODBiMmFjNjFmZTAzOGE4YmI2OWNiMGQzOTQ0MDQ0OWE0OTkxNzY5NCBsZWdhY3ktdHJ1bmsKKzEwMzg3IDRiNTY2NmRmZjVlNjcyNDk2N2E3NTM5YjkyNTFjNjUxMTZmODg1ZjkgbGVnYWN5LXRydW5rCisxMDM4OCAzZjhiNTU2NGYwYzdjMjllMTA3YTU0NDE0NTczOGRiMzg3MDNiMTVhIGxlZ2FjeS10cnVuaworMTAzODkgMWExZDMxNDdiMDI3YzRiNGZlNTc4NzcyNjE5NzY5MjVkZWY1Y2E1ZCBsZWdhY3ktdHJ1bmsKKzEwMzkwIDVlYWZkM2VkYTBhZjRjYWVlMGI2MjI1MjUxM2ZiYmQ3ZTA1YTcwNjEgbGVnYWN5LXRydW5rCisxMDM5MSBiNzFhMTI1Nzc2NGIwMzI1OTJlNjM3MDI1ZWNkNjU3MDI2ODNlOTA2IGxlZ2FjeS10cnVuaworMTAzOTIgMzFmOWUyNjc1MTk5ZTE5NTYyZGQ4ZjE3MTNiY2IzMmVmZGM1ZWEwYSBsZWdhY3ktdHJ1bmsKKzEwMzkzIDU0MThjMDczMGYwMDk2MTYyYTViZGU1ZTAyMWQzZGU5MmYxMTQ2N2MgbGVnYWN5LXRydW5rCisxMDM5NCA2NGYzZTllYmYyMWFjZjMyNjg0MTI1MGU1YmMxMzIzNGY1MzJmMzYwIGxlZ2FjeS10cnVuaworMTAzOTUgMWRhZWNkNjVhN2M1ZWZjOWUwY2QxMjVjNGM0OGI2ZjhlOGFkOGVmOCBsZWdhY3ktdHJ1bmsKKzEwMzk2IGJhOWIxYjRhZWFiOWVlOGFhZTVlN2VhNzg0YmZkZDZhMDJiZTE0NDMgbGVnYWN5LXRydW5rCisxMDM5NyAxMzE4YTQ3NGJhYTA2ZGQ2N2ZhNjEyZWQxYTNiMzdlZjA2MjIxZjc2IGxlZ2FjeS10cnVuaworMTAzOTggMDkwNWY4NjY2ODA3ZjMzODc0M2E3NmY1MzgyMThjMjBjOWZlYzNiYSBsZWdhY3ktdHJ1bmsKKzEwMzk5IDVmYWI1OWViNGZhNWExY2Y0NzE5Zjg1YmJhNzA0ZDI0YzVjYTgzODcgbGVnYWN5LXRydW5rCisxMDQwMCA2YmMwNTM1ZGJmNTI3NzkyZjhkZGFmYWRmMzM3N2Q0MzQ0NGRhMDkyIGxlZ2FjeS10cnVuaworMTA0MDEgZGRlMGRmZmIxYTA4YWFlNDE4OWJiMzYwZTBkNDk1ZGIyNzY0ZWVkYSBsZWdhY3ktdHJ1bmsKKzEwNDAyIDBiZGNlZGNkMTU0OWI3NTk1MWVjM2ViZWMwZjEyZjkwNDdjOWUwYzUgbGVnYWN5LXRydW5rCisxMDQwMyA2YmU3YWIyNDZhMDViNGM4MWIxMjYzYThhYTZkMjAzZDUxODk3MmRjIGxlZ2FjeS10cnVuaworMTA0MDQgMjNjYzZhYzVlYmE2YzA3NjMxYzdjNzZjNGU1OGE4MGFhODRlODNjZiBsZWdhY3ktdHJ1bmsKKzEwNDA1IGRlOTBiYmU4NTAxMzdmZTFlZmI3NGI1YjcwOGNiOWRlMDE4ZTBiZDcgbGVnYWN5LXRydW5rCisxMDQwNiAzMzQwN2MwZWYxNGZmZTU3YzEzYzU1ZTVmMDA0MGEyNmY0OTJiNjg0IGxlZ2FjeS10cnVuaworMTA0MDcgZTI5ZDQzNWFiMTQyZjFlODVkZWNjMzFjOWU5M2Y4Njc3ZjdlOWE0OCBsZWdhY3ktdHJ1bmsKKzEwNDA4IDExMjZlNzJlNWVlOWM5YTQ5YTFiMmQ3Yzg3ZmMzNWIzMDUxY2U5ZTUgbGVnYWN5LXRydW5rCisxMDQwOSBlZjMwMGU2YjBjNzFkYTBiZDVhODFlY2QyMDhiY2I2ZDczYzk5YjY5IGxlZ2FjeS10cnVuaworMTA0MTAgOWQ4YzA2NjZiMGNiYmMxNGY0YmM4NjlhNzA1MjE5MjAyZGRhOTcwMyBsZWdhY3ktdHJ1bmsKKzEwNDExIDg2OGRjODRiYjViMjlhYmUyZjdhMGQ2MTc2OGM2OTAwOTUyZDAzNjQgbGVnYWN5LXRydW5rCisxMDQxMiA3YzdmZjFhMzY1MjE3YjQ1M2FlMTQ1M2Q0MDk0NWYwYWY5YjgwZmMzIGxlZ2FjeS10cnVuaworMTA0MTMgMDUyMmFiMjEwZmNiYjA4YTc2NTFmYmMwYTUwZjI3YzY4ZGE2YWJlMCBsZWdhY3ktdHJ1bmsKKzEwNDE0IGIyYWRjZDczYzE1MGI4MmM1Mzk5Nzc0Zjg4MDQxY2M1ZGQ5ZjY1OTAgbGVnYWN5LXRydW5rCisxMDQxNSA3MDhkZTRjYjk2ZWIyMWJkYWM4YmY2NWRhNDA5NThlMjAwZDNkNzVhIGxlZ2FjeS10cnVuaworMTA0MTYgYWE3ZDY5ZDY3YzgxZDdkYTM5MzNhZTA4NTBjNGZlMmMxYzFmY2E0OCBsZWdhY3ktdHJ1bmsKKzEwNDE3IDFmMzhhMmI1NDhiZjlkMDZhNmEyNTFlODRiMDViZTYwN2ZiNzQ1ZDQgbGVnYWN5LXRydW5rCisxMDQxOCBmMjIzYmY2MWI0ZWUwM2I4ZWY0ZWRmMzllOTliNWU2NTIxMTFmNGMwIGxlZ2FjeS10cnVuaworMTA0MTkgY2E0ZTI1ZWY2MWY4MDY5YmQ2OWE2MjQzY2RjZDQ1ZTNkY2JiODQxNiBsZWdhY3ktdHJ1bmsKKzEwNDIwIGQzZWMyZTUxZjY3YTIxYjhlNTQzMWUxNGMzZmU3MzY1OWNkYTBhYTggbGVnYWN5LXRydW5rCisxMDQyMSAwNTdlNDIyZDJjNjEwOTAwOGUyMDk1MjdkYjBkNDY4ZGI1NTllYTEzIGxlZ2FjeS10cnVuaworMTA0MjIgOTFlY2RhOWQ1MjQ1MWRmNzNlZjZkMDUxMDBjY2E5YTM2M2U4NWM1MSBsZWdhY3ktdHJ1bmsKKzEwNDIzIGVlMmFhYTJmNzIyYTg0N2NjNmRmZjkxMjI2ZmVjYTlmOTAyNzZjMDggbGVnYWN5LXRydW5rCisxMDQyNCBiMzFhYmMxMzFjM2RmOTQzZjAyZjU2NDNiNTU0NWJlMzYzZmNjYWZiIGxlZ2FjeS10cnVuaworMTA0MjUgMTYyZGIzZDBjOTE2N2UwOWQ2ZDc2OWIwN2IxMzNiYjIxMDIwNjZiOCBsZWdhY3ktdHJ1bmsKKzEwNDI2IGRjMTMyY2MzOTU3M2EwZWE2ZGYyZDI2Yzk5OTA5ZWFmYjU4YzVmMmUgbGVnYWN5LXRydW5rCisxMDQyNyBhZDExNDYyMGY4YzI3ODJkNTc3ZGIyZDA0M2MxNDc1MmQxOWU0OGY3IGxlZ2FjeS10cnVuaworMTA0MjggYTJjMWIzZTE3OTUyNmRkMjRkMDJiZGE3NzRiNTJkNDNiZDUxNDQ3NCBsZWdhY3ktdHJ1bmsKKzEwNDI5IGYwNjkxMzgwOGZlMWRhY2U3NWUxMjIwOWI3NjVjYWZmMWMxNzk2ODUgbGVnYWN5LXRydW5rCisxMDQzMCA1OGQ2ODE1YWYwMDJlNjc4ZmViODczYTk1YmU3ODY2NTA3OWFjYjQwIGxlZ2FjeS10cnVuaworMTA0MzEgOWNiY2I1OTMxZDgwM2Q2ODk2MDAxZWVlNTg5Y2ZmYzY2MzM4ZDcwYyBsZWdhY3ktdHJ1bmsKKzEwNDMyIGY0MmI3NTc3NTVlYjMyYWJlYjZkODI0Nzg3MmJjNzQyYjU2MmQ0M2EgbGVnYWN5LXRydW5rCisxMDQzMyA3MmQ5OTYxNTQwZDg1YjIwMDM2OTQ5ZjE0YjRhNDFjMjg0NjJmNjVlIGxlZ2FjeS10cnVuaworMTA0MzQgOTJlMzYxMTZhZjQyMWJjZmVlYzlmOTA2YmZiZGJjNzZkOTk4ZWRhYyBsZWdhY3ktdHJ1bmsKKzEwNDM1IGViZGQ0MGUyODE2MDI1YzlmOTQzMmJhOWEzOWIwOTNlMDhiMjc2ZDYgbGVnYWN5LXRydW5rCisxMDQzNiBjZDllNjY0YTFhOWZhODRiY2M2MWQyYWQ4MWUxZTJkMjdmZDRiZmE4IGxlZ2FjeS10cnVuaworMTA0MzcgZmMwOGRhMmM5YTBmYTdkOTY4MmUxMWQxMGU1Y2QzOWFiNTk3MGEwMyBsZWdhY3ktdHJ1bmsKKzEwNDM4IDhmMzY4ZGYxNzNlNjg4YzQ2NGM5MDYzNjQ3ZGJjNTBiMTkxYmUzZDYgbGVnYWN5LXRydW5rCisxMDQzOSA5ZTExM2FhMzc1OGRhMTA0OGM3YWNlMzMwN2VkMjc3Y2FhYTc4NGNmIGxlZ2FjeS10cnVuaworMTA0NDAgZmVjOGViMmEzODBkZDUxNzFjNjU1MDk2NzY1NTcwN2U1NDcxMGE5NyBsZWdhY3ktdHJ1bmsKKzEwNDQxIDhjYTAxMDgzMTQwY2I5OTJkMTJiNmNlZDUyM2IxNmJmMTM2YjE0NTEgbGVnYWN5LXRydW5rCisxMDQ0MiBjY2QxYzk2M2U1MDk1ZGRlNzQ0ZWM0ZGEwYzQ5ZTIwOTJjMjRlYzI1IGxlZ2FjeS10cnVuaworMTA0NDMgZDZmY2JkMzcxODU1ZTM2NDdmMTg1OTcxYTIyNzEwNGI3Y2RhMzdhYiBsZWdhY3ktdHJ1bmsKKzEwNDQ0IGFmZDU0Zjg5NWRjMzAzMGRkMzBkODA5N2ZmYmI1ZWU1YTYwOWI1ZTQgbGVnYWN5LXRydW5rCisxMDQ0NSBkMWVhMTNjZjQ2ZjdiYzVhY2ZlNGUzYmQyYjAyNWNkYmQ3Y2I2Y2RiIGxlZ2FjeS10cnVuaworMTA0NDYgZThkMGI4N2M4ZDZiMWZiMGEyMmY1NzgyNjNhYmQ5OGY4YTExZWE4MCBsZWdhY3ktdHJ1bmsKKzEwNDQ3IDhjMjY4ZDBlODgyMjA1NGNjYjUzYThjZTI5YWQ3MDI2NDkyNmJhZDggbGVnYWN5LXRydW5rCisxMDQ0OCBiYmQyYjVkOGQwYjZjMjJiY2E0ZjdlMDJiMDRlMWRmYWFkOTg1ZDZjIGxlZ2FjeS10cnVuaworMTA0NDkgMmVmNmUwNDI0MTc5Y2FmZjlhMzZlNzc1OGQwYTcxNzIyYWM5ZTVmNCBsZWdhY3ktdHJ1bmsKKzEwNDUwIDMzOGYxZGVmNDM3MDliZjRmMzJkNWI4ZDAxZjdmNmY2NDZiODNiY2UgbGVnYWN5LXRydW5rCisxMDQ1MSA0Y2VlZTFlZjk5YjAzMjgxMGZiYjYyMzdkZWIwMTg3NzlkZTBiNzMxIGxlZ2FjeS10cnVuaworMTA0NTIgNDY5Mjg4NDk5YzliZGU5ZDUzYmYyZGQ0YjQxMzM0ZmYxYjRlNGIzNyBsZWdhY3ktdHJ1bmsKKzEwNDUzIGZmMTBiMDMyOGZmMzc1MGJiMzAzMzEzNWQwNjMyNjRmOTNhNzlmOTEgbGVnYWN5LXRydW5rCisxMDQ1NCAwOTE0ODFkYmUxM2Q3YzUxMjc5ODA3YjJmZmRiY2E5MjFjMWUyNDVhIGxlZ2FjeS10cnVuaworMTA0NTUgYzEyYzY2MWZkMTRlZjRiNTdmNTMxN2E5NGEyM2MyYmM2ODVmNmJjYyBsZWdhY3ktdHJ1bmsKKzEwNDU2IDNkYzVkMGZjYjE2N2FjMWM4MzViNGEzNDlkMTExZGEzNzg5MWE2ZjcgbGVnYWN5LXRydW5rCisxMDQ1NyA3NTIyMzU4NDYxODA0MTRkZGQ4NmMxNTdlMzcwNGYyNTQ3MjE4MjdkIGxlZ2FjeS10cnVuaworMTA0NTggNTFkMzFmY2FlZWYzYTIxMDI0ODA4M2RmNzlkYmM2NTlkYjhlYmRkZSBsZWdhY3ktdHJ1bmsKKzEwNDU5IDE0M2M1NTZkZWIyZjg1NTlmNTY0ZGUxNDdlMGJkMmJiNjQ1MWIxMWQgbGVnYWN5LXRydW5rCisxMDQ2MCBjYzQ3NzMzYjRkZDIyYzU1ZDI1ODk4N2FmMWEwYjYxYzUwNjVlNTc1IGxlZ2FjeS10cnVuaworMTA0NjEgODVlODg2ZGIxOWIwNTk4YjkyY2QxYjVkNzdkYTNjZGQ0MzViYzA0YyBsZWdhY3ktdHJ1bmsKKzEwNDYyIDA5OTYzYTJhMjRkYjA4OThlNDNiZjMzMWIzMTVhYWM0ZDc4NWQ4MTcgbGVnYWN5LXRydW5rCisxMDQ2MyBhOTA5YTI4NjlhYzU5YTBiZWNjMGY2NzNhNDI2MWQ1MTJmNjIwYzJkIGxlZ2FjeS10cnVuaworMTA0NjQgMDY4MzAzZjkyNWVhODcyYmQxMWNiZTkyZjgyN2E2OWQzNDA2MDJjMiBsZWdhY3ktdHJ1bmsKKzEwNDY1IDFkMGViMmU5NmQ3Njc5ZTlmN2Y0NmUyMGM3OTQ4YjYwZWIxYmZjNzcgbGVnYWN5LXRydW5rCisxMDQ2NiBhYjRmNjQ1NjFmYmEzMjg4MTM0YTc3NWMzNGQ2ZGY5OTFjOTZkMjU3IGxlZ2FjeS10cnVuaworMTA0NjcgOTcxYjViYmQ5MmVjMDIwZWFiYzBjNzM4ZjFiYzc3ZDRjNWFjZTM5YyBsZWdhY3ktdHJ1bmsKKzEwNDY4IDY5N2RmOTNlNWRkYjQ3NjRjYjQxNWY2NzFjMWUxNTkxY2JiZTNiNmMgbGVnYWN5LXRydW5rCisxMDQ2OSAwMjYzZDMzMjRmMGIyZTk4ZWYxZjY1ZjI3NGM3YzJhYWJmOWU3ODcxIGxlZ2FjeS10cnVuaworMTA0NzAgYjllYjgwNTU3OWJhODYzMWI5MTI4NmUzMWNiNzNjNTlhY2UxNjQyOCBsZWdhY3ktdHJ1bmsKKzEwNDcxIGRlMTA1NjZkZWM1Y2QxYzI4NmU1YmQ3NWVkMjhiYzhkZjVlOWI3NjIgbGVnYWN5LXRydW5rCisxMDQ3MiA2ZTUwNzllOGZhNmUwNTMzZDkyOThiZTY3NTExMmY2ZjRlYzM2ODViIGxlZ2FjeS10cnVuaworMTA0NzMgY2YwY2YyMWI0NTQ1NDc3MWM3ZWY1Y2U2ODdkMGM5Zjg5MWI0NThkNSBsZWdhY3ktdHJ1bmsKKzEwNDc0IDZiM2ZkMjRjYzA3NzZmMzJhMThmNGFmMWEyMTU2YjE5YzI0YTEzMDggbGVnYWN5LXRydW5rCisxMDQ3NSBlOGM0YjNkMzg2ZTRmMmQzMzcyZDk1YzIxY2RmOTA5ODdkNDlmZjI2IGxlZ2FjeS10cnVuaworMTA0NzYgZGFmZmRlN2E2ODkxNzdmMWIxMWEyMDg5YjYxMGE5YTRiOTg0YWRiYiBsZWdhY3ktdHJ1bmsKKzEwNDc3IDg5MzU5ZDA3MmU3MjdlNzJhNmQ2NDVmMWY5ZGM3OGU3YmE4NTUwOWUgbGVnYWN5LXRydW5rCisxMDQ3OCAxZDUyNjUwN2NkOWVjNzNlMDA5YmM2OTQyYTkzZjI4YTMzNGZkMGI2IGxlZ2FjeS10cnVuaworMTA0NzkgM2QxZDllMjVlYjIyYzYzMjU3Zjc5YTlhYTY1YjllMjdjYTYyOWY1OCBsZWdhY3ktdHJ1bmsKKzEwNDgwIDA4MzViOGRmNTRmODBkMjM1NDUxZTJlNmE0YjQ2YjQ2NmM4ODU4NDYgbGVnYWN5LXRydW5rCisxMDQ4MSBiZGY1N2M4NGRmNmFiNTFjYzM0YzhmY2M0Y2I3M2MwZDFkMjk3MzQ4IGxlZ2FjeS10cnVuaworMTA0ODIgYzhhMzExMTQ0NzI2N2ExNGMzMzAxOGExYjMxNzRmMjkwZTBiNzc5MiBsZWdhY3ktdHJ1bmsKKzEwNDgzIGI0MjBhZTg1MjEzYzc5ZjA1Y2RjMzY5NTljNzFhMWIwNDc3MGY4ZjkgbGVnYWN5LXRydW5rCisxMDQ4NCA1ZGIzNDZlOWM4ZjU2MGRjZWIxNmJhYWJlNGRhYjBlYzY0MjcxZjg0IGxlZ2FjeS10cnVuaworMTA0ODUgOTAwMzIwNDkxYjkzNmM5ZmNhM2Y3MjM4NDY0ZDAwZmNkNmFjNjNiOSBsZWdhY3ktdHJ1bmsKKzEwNDg2IGU5ODY2ODY4M2JlZDYzNThmOWM1YTczMzllOTQ0MGI3YjRmMDEwNzcgbGVnYWN5LXRydW5rCisxMDQ4NyBhODQyYzllNjMyODBhOTZmNzM5NGMzMWI3MjEwOTJmMzhhZDZmNjBkIGxlZ2FjeS10cnVuaworMTA0ODggZGJjMTFkZDAyZjA5NTkyMzUwYjlmYWZkMzA1MTU5ZGI4YTE0YmI1YyBsZWdhY3ktdHJ1bmsKKzEwNDg5IDRmNGUyYWFkMWUwYWI1YmEwYWJjMmNlODI2ZTA0OTc2YTI5ZDRmZDUgbGVnYWN5LXRydW5rCisxMDQ5MCBiZjZlOTIwYzBlNzk5ZDE2MTI5NDdiOGFhMWVkMDQ3NDIzN2NkMzIxIGxlZ2FjeS10cnVuaworMTA0OTEgY2EwYzcyNTkxMjExY2Q5MjlmM2Y4NzE0N2E0YWI2NDRlZGY1MTg0MCBsZWdhY3ktdHJ1bmsKKzEwNDkyIDgzYmE1MzA5ZmYyMjZlMWM0YmIyMmQyNWQzMWY1YmNkYmExNDlkMDkgbGVnYWN5LXRydW5rCisxMDQ5MyAyYjA5YTVkMjYzNjg4ZDA3NzdmNmI2YjhlY2Q5MmYzMzE0YTJmY2UzIGxlZ2FjeS10cnVuaworMTA0OTQgNTNkZGU0MjMyNWY4YTk5NDEzMDY5NDc1NjFiZWY5OGQ0ODEzZTM3ZCBsZWdhY3ktdHJ1bmsKKzEwNDk1IDZlOGJlNjA5NmU1NjMwMmZhNTc4YzZkODQ1OWM1YzUzZmE1MDUwMTMgbGVnYWN5LXRydW5rCisxMDQ5NiBiYmJkMGIxMDVlMjczNWZlZTc3Yzk4ZjRhODZhYzFlNDZmYWZkMjI2IGxlZ2FjeS10cnVuaworMTA0OTcgNDY5OTlkZmNmYWUzZjA1MDY3ZjZjYjFjZDM1M2Y1N2MwYzBiMDg2NiBsZWdhY3ktdHJ1bmsKKzEwNDk4IDUyNjRjYWM4ZjkwMzVmMmM3NGI1NDUxYjU3ZjllNjQzN2I0NzRmOTYgbGVnYWN5LXRydW5rCisxMDQ5OSAwMTFhZTcxZmVhOTY0OWExN2E0ODdmNzZiODA3Y2VhYzQxZDhhYjJjIGxlZ2FjeS10cnVuaworMTA1MDAgOWI4OTAyMzM4ZTE0YjcwOWYyMzg1YWNlMTUwNzAwN2EyNWQyNWU3ZSBsZWdhY3ktdHJ1bmsKKzEwNTAxIDkyYmE3YTllM2I5ZDk3MTk4MjE5ZWRkNDZjODA2ODMyNjMzYmM5Y2MgbGVnYWN5LXRydW5rCisxMDUwMiAzYjkxYWZmYTMzM2U5ODRhNjA2MTc3ZGNmMTIyZTNkN2U5M2E5ZjBkIGxlZ2FjeS10cnVuaworMTA1MDMgNWQyYmQ2NzM4ZWI2MmU1NTI1YTVlNTI3ZWYzNjA3MDAwNTIxMzcxZiBsZWdhY3ktdHJ1bmsKKzEwNTA0IGQxNTdlZTgyMTc3NWMwOTkzNDUyYzcyMGNkZjRiMDJmOGI4YjllMzIgbGVnYWN5LXRydW5rCisxMDUwNSA0OWYxY2Y0YjE3NGNjNjNmM2MxZDJkYjMyMGQzMWE4ODlmZWQ5NDIzIGxlZ2FjeS10cnVuaworMTA1MDYgZDFjMWIyMDc1NGE4MTdmZmY1MTQ5YTkxYzEwYTdhOTkwZmE2NTBkMyBsZWdhY3ktdHJ1bmsKKzEwNTA3IGQ5OWE5MDUyNmFlMGIxOTJlZWNmYzIxZTgxOGYxZWMxYTE3YmQ0MGEgbGVnYWN5LXRydW5rCisxMDUwOCBmNTMyNmQzNTg2NjJiYjIxMGI4ZjE0YmJkNTU2MmZmNmE5YmE3YWU2IGxlZ2FjeS10cnVuaworMTA1MDkgNWRjZjliNWQzM2U2ZTZmMGEwZDA0NzZhYzUwNDljNzBjYmQwYWMzMSBsZWdhY3ktdHJ1bmsKKzEwNTEwIDk1MTQyYzhhMDljODZhOTA3OTQyZjAxNjMxOGUzZWUwOTU0ZDQ3NGMgbGVnYWN5LXRydW5rCisxMDUxMSAzZjAzNjAzNzZjYTAwMTUxNjc2ZDlkZmMxOWRlYWRjNThlYzVjZDc1IGxlZ2FjeS10cnVuaworMTA1MTIgNzEwZjNiNzgzNTE1M2JiNzZlNzA5NzMwN2ZlYmViNGIwZmM3ZWRjOSBsZWdhY3ktdHJ1bmsKKzEwNTEzIDVjY2U4MWUyMzM0OTk2Yzk5OGQwZjZmMmEyNjExNTBhNDFjZDU4YjQgbGVnYWN5LXRydW5rCisxMDUxNCAzZmZkNDVmMDVlMzk1OGY1OGU1YmNmZTVjYTA3ODk2NjQ4MWE0MzBkIGxlZ2FjeS10cnVuaworMTA1MTUgY2QzMDkyMDY5ZjVhMzkzOTEyYmMxYTIwOGNkNTYyMGMxNjgyMDhmMyBsZWdhY3ktdHJ1bmsKKzEwNTE2IDZjNTk0OTg4NTcyYTdkZTI3MTM2N2U0NmE1NWMxMzQ1MGVjNGE3NTggbGVnYWN5LXRydW5rCisxMDUxNyBlMDkxZTlkNDk1ZDVhOWQwNjdjN2M0M2Q2YmZmMDQ4NzU1NDY2MDJkIGxlZ2FjeS10cnVuaworMTA1MTggNWYzNWUyNzgxMDMyZTIzMGNlMDUxZGQ4N2MwYjRkMjcxMjQxZjg1MCBsZWdhY3ktdHJ1bmsKKzEwNTE5IDQzYmUwYjkwMjcxNzA4ODc0YzBkZjYyYTY2OWRiYmI2OTFjMTk1YTUgbGVnYWN5LXRydW5rCisxMDUyMCBhMzg1NTA2MTNhZjNkOWQ4ZTllZGJjNGY5YmI0OWFmMTQwNmNkNjdkIGxlZ2FjeS10cnVuaworMTA1MjEgZGYwZmE1ZGM1OTlhZTA2NTRkNzljYzI5MGI5ZTA3ZWQ1ZGNhM2E5NiBsZWdhY3ktdHJ1bmsKKzEwNTIyIGUyMzMzOTY5YTJjYWNhM2Y3ODk4ZDhiMTRhOTQyMjAxOWUyYWVjYjAgbGVnYWN5LXRydW5rCisxMDUyMyA0OTE5ZGVlMTg3ODFjMTM3NzFlNWFkM2IwN2JiZDZlMDA4MmFmN2FlIGxlZ2FjeS10cnVuaworMTA1MjQgYjhlOGFjZTc5Y2YwMmNjZGE3MjU3ZTFkNTc0YTBmYmNmOTU4OGFmMyBsZWdhY3ktdHJ1bmsKKzEwNTI1IGJkMzBhYzgzMTIxNzIzNDE4ODE5M2JjY2JhZjRjZTFmMDVjZTI0OGEgbGVnYWN5LXRydW5rCisxMDUyNiAyNTRmYzkxYjZiMGU3MzgwOTU4MDc0ZmViNDRiN2VjMTY3YjM4NjhiIGxlZ2FjeS10cnVuaworMTA1MjcgNjY4Y2UwZWRiNGYxYzU0MjlkM2QwMDJiNjI5OGFhZTVjZDgyYjRmNiBsZWdhY3ktdHJ1bmsKKzEwNTI4IDA3NzMwYjgyYTE0M2YyOGY1MmZjYTQ1ZWM4ZDY1YjQxMDg3ZTM4NWQgbGVnYWN5LXRydW5rCisxMDUyOSBhOTMwNTJhZTBkZWI1YTRkMTYwZDA5NjhhNzAwYWQ0MjBmYmU1MDcwIGxlZ2FjeS10cnVuaworMTA1MzAgNWRjYzVjNGExOGJkYTY0ODVkOThiNzA5NmRhMjc5MDM5OGM2N2Q2MiBsZWdhY3ktdHJ1bmsKKzEwNTMxIDcwOTlkZTgzYjE5MWI5MjQ2ZmM5MDk5MTQ3MzNiNTViZTdlMjgxMGUgbGVnYWN5LXRydW5rCisxMDUzMiA5YjhiNTc0ZWYwMDcxZTFmOTA5ZmU3NTM4ZjJjMzU5ZjI5MTI1OThmIGxlZ2FjeS10cnVuaworMTA1MzMgY2I4ZDczMzgyNDhjZWY3N2M4NzVmYjM2ZWFhODQ2YTA5ZWZkOWM5MyBsZWdhY3ktdHJ1bmsKKzEwNTM0IGEzZDkxMmFmYzkwOWFiY2RkMmE1MzE2MmU0ZmZhNzQwMmM2Y2JiMzAgbGVnYWN5LXRydW5rCisxMDUzNCA0NGFiYTRkMjZiMDFmYmFlMDQwM2VmZTY1NGY5ZmQwMzQ3NjA2NzMyIGxlZ2FjeS10cnVuaworMTA1MzYgYmNhZjQ4Yjk0YmIzMzgzYzRjYTE3YTkxOWVmODJmZWFiM2UyZDRmNCBsZWdhY3ktdHJ1bmsKKzEwNTM3IDQzZTgwMmMxNmE1YjFhZmJiODYwMGU1OGQzMjJkYjYxY2QyYTdlMmYgbGVnYWN5LXRydW5rCisxMDUzOCA1YWFjZGQwOTc5NDEzOTNkNmRhNmVkMzJhMjUyNDFmNDM4NzQ5MThlIGxlZ2FjeS10cnVuaworMTA1MzkgZDlhYzkyNDYxODMyOWNjNDA5OTcyMTFjMzYxMjZmOTQyMzc4MWVhYSBsZWdhY3ktdHJ1bmsKKzEwNTQwIDc3ZDRlNmY2NjJjMWJlZTA3NmI2MjBmNmUwOWViNzliY2UxM2E1ZTYgbGVnYWN5LXRydW5rCisxMDU0MSA0Mjg1ZjhiN2JhMGIyZmIxNzk5NDdiZTI5ZTY1ZGNiODEyZWExMGMxIGxlZ2FjeS10cnVuaworMTA1NDIgMDc2NmRmNTAzZWE1M2RmNDE2ZDhhNWU1ZWIxYWZhYTI5Y2FhOWY1MiBsZWdhY3ktdHJ1bmsKKzEwNTQzIGQ5NzA0OGY4OTFiZjA2YWRkOWFhODc5MTg3M2JiZDU0NDM2YjhjNDAgbGVnYWN5LXRydW5rCisxMDU0NCA5OGVjNDIzY2E2ZmE5OTEyYTgyMGVhYTA1NmY2ZGNmZDc0YzdjY2Q3IGxlZ2FjeS10cnVuaworMTA1NDUgMjI0YjVjMzZhZmVmODU2Yjg5OTZmMGIzMDUxYzg4YzQ4MzEyMTU4MyBsZWdhY3ktdHJ1bmsKKzEwNTQ2IGYwYmQ5ZWU3OGE1MjE3NjMxMTFlZTQ5YTZhNTcyOTllMGViYjNhNmQgbGVnYWN5LXRydW5rCisxMDU0NyBhN2RkMGY1MmYyYjYwOTQ2YWM0NTJkM2I2Yzg4ZDcxNzY0MDJiOGFiIGxlZ2FjeS10cnVuaworMTA1NDggNDhlMjM0OWQxMWM2MDkzNzJiZThlYmYwZTkwZGJhM2Y2ZGRlYjk3ZCBsZWdhY3ktdHJ1bmsKKzEwNTQ5IDlmMTZmYTcwZDA5MGVhZWJlZTAwNDAzYjQ4NzU5NThkN2FhYmRhNmQgbGVnYWN5LXRydW5rCisxMDU1MCA4NmE2MTkzMDQ5YTk2ZjQwNGY5OTdhNzY5YmUyMjcwMjkwNmJiYzk4IGxlZ2FjeS10cnVuaworMTA1NTEgNGEyZjFjNjlmZGU4MWU5NmE1MWE0ZGYyNDQyM2I1Y2JhZDE5MmJkMSBsZWdhY3ktdHJ1bmsKKzEwNTUyIDA1MmU3NzY2NDAzMmUxODA2MGMyYTE5MWI0MjM0Mzc3ZGI4ZTllNGQgbGVnYWN5LXRydW5rCisxMDU1MyBiODE2MmQwODY4NTAwZTkxZmU5OWFiYjk5Y2MyYzNlNjRmZTg2MGYxIGxlZ2FjeS10cnVuaworMTA1NTQgNWE2N2Q5MDUxMDI2MmExN2FlNWY2N2NjY2Q2NDg1NzI0OTEzOTIyYyBsZWdhY3ktdHJ1bmsKKzEwNTU1IGQwZmY0MTc0NmEyNjAwZTRiYWZjZmY4Y2Q2NzI4YzdkZTc4OTM5ZGYgbGVnYWN5LXRydW5rCisxMDU1NiBlMzkxNDVhMTMwOTY4MDJkNGU0ODFjMTFkNjkyNGIwYmNmNDk0NjQ1IGxlZ2FjeS10cnVuaworMTA1NTcgZGUwMjllNmY5ODM4OTFjN2UwZmJkMGFmYWY0MDhmMjE3ZTEyYzFhNCBsZWdhY3ktdHJ1bmsKKzEwNTU4IDViZmYwNDE3MTc5ODU4ZTMyZDhjNjY0Y2YzMzdlYWVkMjhiYjExZjUgbGVnYWN5LXRydW5rCisxMDU1OSAzMzE3ZjcyNzIzYmI2MDk2Yjg5YjcxNjA0NmM1MmUwMGVmMzVkZGJkIGxlZ2FjeS10cnVuaworMTA1NjAgYzE1MzMwZWViMTkyYWQ2NmQxYzRlMTQxNGJkMzg0MzU1NTEyNWQzNSBsZWdhY3ktdHJ1bmsKKzEwNTYxIDY1OGQxODRlOTIwNDFiOWM2OGQ4NzA2YjE2ZDA4ZTExNzJlMTg5MzYgbGVnYWN5LXRydW5rCisxMDU2MiAwYjBiNjlhODhiN2I5NWI2MTMyZjMwYWY1ZWExOTNhN2QwZTBlZjcxIGxlZ2FjeS10cnVuaworMTA1NjMgNmI1OGI3OWE5NThkNzdhNThmNGU1NDc2YTg5ZTcwZDM1NjYxZTg1YyBsZWdhY3ktdHJ1bmsKKzEwNTY0IDdhY2UxNzJjMjUyMWIwMmVhYTFmZDZkY2U4ZTM4MTAyODNhZjcyOTcgbGVnYWN5LXRydW5rCisxMDU2NSBiYjNlYzgxMmVjOTBmMjQ4Nzg4M2U4YjlhNzBlNzA0ZjNlM2VlOTgwIGxlZ2FjeS10cnVuaworMTA1NjYgNWUzYmI0MTU2MDA0MjVmZDlmZjhmMTNjMzU0NDEwYTlkNGU2M2Q5MCBsZWdhY3ktdHJ1bmsKKzEwNTY3IDY5MmJlMTIzZjU0N2YxZDM0NzUxYjRlMWFkNzlmM2E0OTM0NDE1NmMgbGVnYWN5LXRydW5rCisxMDU2OCBlM2RjZTNiOGMyODI1OWM2MTk5N2YxYTgzOTU1YmJiMmQzOTMzMjc4IGxlZ2FjeS10cnVuaworMTA1NjkgMDQ5MzEzN2E4NDE0NjFhYTU4MjhhNThkNDE1NDJiYjlmYWFmODI3NiBsZWdhY3ktdHJ1bmsKKzEwNTcwIGM1ZjkyZWU4NDk4ZjVjOGIyYzQ2YTUwYmNkYTA1NDdjYjA5ODVjMzEgbGVnYWN5LXRydW5rCisxMDU3MSBkZjM3Y2E0MDM4ZjZjMjYxODFlNTFhOWUzYzFhNjhlYzg3OWQ2Y2YzIGxlZ2FjeS10cnVuaworMTA1NzIgOTZhYTU4NzI1YzBlNDA1OGIzNTg4YmNlNjJhOGRlY2JkYWMyNDkyZCBsZWdhY3ktdHJ1bmsKKzEwNTczIDA4ZTFiYjg0MDdlNjUyMDQ0MjBkODhlMjM4MTQxYjQ2NTRhNGM3ZDMgbGVnYWN5LXRydW5rCisxMDU3NCBhZDlhYWQ4MTNhNjFiMWNiZjUzOGY2YTk0ZGQ1NzYzMzY2NGY3NTY2IGxlZ2FjeS10cnVuaworMTA1NzUgNTczYmMwNjQyNjRjYjdlNGFhYTlkZjI0N2QwMjJhYzc5OTExNDNiYiBsZWdhY3ktdHJ1bmsKKzEwNTc2IDQ3YmRmNDVhZmI2ODYwNzA1MTQzMzMyYjUwY2NkMWRmZmZjNGFmMTQgbGVnYWN5LXRydW5rCisxMDU3NyA4YzFmMTYxYzZjOGMwMWVkODBiMzM1MDMxOGU3MWMzZWJmMzkyMWU1IGxlZ2FjeS10cnVuaworMTA1NzggYTZjZTJkZmYyNzM1Yjc3MjViNGQ4M2QyMWZkMzBjOWU0MTI4Yzk4MiBsZWdhY3ktdHJ1bmsKKzEwNTc5IGI1NzY4NDZjOTRiMzhmNTQ0NmViOTMzYzdmMDc0OWFkNjRmNzExYWEgbGVnYWN5LXRydW5rCisxMDU4MCBhNTVjYmE5NjM3NjE2M2UwY2Y2YzFhZmVmYWY3MTkwZThiZmU0ZTJlIGxlZ2FjeS10cnVuaworMTA1ODEgZjJmOTEyODIzZWU3ODU3MWZmZmRjOGUyYWNhNzMwOWIzYzEyNTNmNCBsZWdhY3ktdHJ1bmsKKzEwNTgyIDI2NWMyNzk3NzgxYTA2OGZhNTI0MDU5MzhjMDZlMDIzMzg0NDMzNDMgbGVnYWN5LXRydW5rCisxMDU4MyA0MjdmMzQ4OWU1MmI2YWMwZGI2ZGM1ZmYyMmFhMzRmOWE1OTc4YTZjIGxlZ2FjeS10cnVuaworMTA1ODQgMTFhMWJhZDZkZjY3MzNlMmM2MTkzYzliYThmNmZlNDc4MjNiYTdlNSBsZWdhY3ktdHJ1bmsKKzEwNTg1IDkzMzQ4ZTVhODVhMjQwZDE5NjNhNDJmNjU1NGMxMDc5MGIxNjczNDMgbGVnYWN5LXRydW5rCisxMDU4NiA3OTFlZGE1MmIzZDljYmFlYWVlYjgzOWFjYTVmNTk1YWNkYTczZWNjIGxlZ2FjeS10cnVuaworMTA1ODcgOWIzYjAxMzJjMDIxYzdjNmM4OGFiY2M3YTQ1MTJhZjliYThkNWMwYyBsZWdhY3ktdHJ1bmsKKzEwNTg4IDI4MTBmYzYwOWFlZDA3MjA3NTc4MjdiMTk3N2YxMTFhMDU0NWQ1YmQgbGVnYWN5LXRydW5rCisxMDU4OSBhOTk3M2Y5YjU0MTc3NzI0YWY1YmU5ZDM2ZGUwOWUyYmQxNDMwMzBiIGxlZ2FjeS10cnVuaworMTA1OTAgMmU0OWJjODlmYWZhMGRkM2Y2ZTU2Y2EwM2JhMTE0ZTBjNjA3YjNlMSBsZWdhY3ktdHJ1bmsKKzEwNTkxIGYwNzA3YWUwMDQzMzg0OWFkN2NiMDVkNzcwODRmM2U1YjFkODc5ZDYgbGVnYWN5LXRydW5rCisxMDU5MiA1YzliZTk4ZjUzNDczOTRlMWRmOWU5MGIzMTkyNjA3OWQwMTVjYmI2IGxlZ2FjeS10cnVuaworMTA1OTMgYjZjZTE3MTkzMjNhYzdkZTlmMjFiN2ZmNjMxOWFhNDY2YWYyNTMyMCBsZWdhY3ktdHJ1bmsKKzEwNTk0IGUyZDMzYzA3MzJiZmIxOTE3OGNmYTE4N2VjOTI3YTQwNGU2ZmU5OWUgbGVnYWN5LXRydW5rCisxMDU5NSA1MzBmZjNiOTk3MjJiNmMwZGM1N2ZlNDQ2ZTNhYjY0Y2IyMDAxZTc3IGxlZ2FjeS10cnVuaworMTA1OTYgZDk2MjIzYjc3ZTJmMzcwOTQyZmE4MGRmN2FhYjUyMTQ3YmRkMTdlNCBsZWdhY3ktdHJ1bmsKKzEwNTk3IDU5OTk3ZmRjODFkZjdmMTgzMGFkZmUyYzY3MjE4YWEwMzZiODdmNjQgbGVnYWN5LXRydW5rCisxMDU5OCA5NWVmZWE2OGYxOGQ3ODc4NTc5ZDEwZDAxODg3Yjg0NzI2NTc0OWEwIGxlZ2FjeS10cnVuaworMTA1OTkgN2NmNTE2NTdiMDhjYWFiNDQ3M2E3MDZiZWRmZmU3YTE0YmE0MmVhNiBsZWdhY3ktdHJ1bmsKKzEwNjAwIDVhZWNjMjc3ZTZjYWEwMGNhN2Y1ODQ5ZjJmYTNjMjc0NGMwOTQxY2YgbGVnYWN5LXRydW5rCisxMDYwMSAwNjhmZWExNWNiY2Q4NjRmMzkyOTI3MTdlMWVmMTA5YTZhN2Y1MjI2IGxlZ2FjeS10cnVuaworMTA2MDIgZTkwNGU2ZGZkNzBiMjUyNWZkMmVjYjJjN2Y3MDIxNTNmZjUyZWY4ZSBsZWdhY3ktdHJ1bmsKKzEwNjAzIDhjNTUyZWVkYjFhZmFmMWQwZTA5NGZiNzY4OTNlOTc2YWRkMzgyNGIgbGVnYWN5LXRydW5rCisxMDYwNCAwZGI2ZjY5MzJiNzM1YzcxYzAzYWRlMGM3ZWIwNTg1ZjIxNmM2NTk0IGxlZ2FjeS10cnVuaworMTA2MDUgYmQ3NDRhZjY4NDVmOGIxYTVjNWNiMTkzMTVkZjVhNTJlMDQxYTZmMiBsZWdhY3ktdHJ1bmsKKzEwNjA2IDM2NDA0ZDljYjVlMTVjYmYyZTcxZDliOGMzNTM2YmIwY2FhOTAyYzAgbGVnYWN5LXRydW5rCisxMDYwNyBkYWE1NDEzMTQ1M2I3N2UzOWQ1OTgwYzY3Yzg4ZDk5MDRiNjE4ZDE0IGxlZ2FjeS10cnVuaworMTA2MDggMDQ3NTMzNzg5MzU5Zjc5OTdiNGY1MWUyMjdjYzhmYmNiYjAwYzgyMiBsZWdhY3ktdHJ1bmsKKzEwNjA5IGZkYmE2Mzk3YjcyOWU0NzNhYzNmZjYzZDQ5OGQ5OGMwNTI5NDhlMTUgbGVnYWN5LXRydW5rCisxMDYxMCAxMDk0ZWJiZDNhNDU3NGQyODJjYzhkMzA1OTA0MmUwZWRlODAyZTA4IGxlZ2FjeS10cnVuaworMTA2MTEgMWJjNjU2ODc2MjZiODc5NDY0ZjY4YWNlZDZmMGVjY2JjYzUxNDc2OCBsZWdhY3ktdHJ1bmsKKzEwNjEyIDhiNDljOTE4YTI1ZjM2ODEwYTVlMDEwMWJjYmE5MWQ0NjhiNTk3MzcgbGVnYWN5LXRydW5rCisxMDYxMyA0MzIzYjI0MzM1ODFkOGM4Yzg5MzExZGQ2MDYwZTAwZjVlYTM2OTcxIGxlZ2FjeS10cnVuaworMTA2MTQgNjA4OGQ2NTJiOTMyODQxYWJkYWM1YzNlZTdkMmY2NmQ5N2U4NmM4ZSBsZWdhY3ktdHJ1bmsKKzEwNjE1IGM3ZDk5ZjZkMmUyZjhjMTc5ZTdkMDYwN2Q1MjJjODFjZjUxN2UyYjcgbGVnYWN5LXRydW5rCisxMDYxNiBhYzI4OGRiNWJjOTFjNDQyNTQwZTJiMzdhODcyYjk1M2VhYjhhMmU3IGxlZ2FjeS10cnVuaworMTA2MTcgY2Q2YjlmYzExNGE0MTVmYTRlYjU0MzUwNjhiZDQ2YjQxNDkzOGQzMCBsZWdhY3ktdHJ1bmsKKzEwNjE4IDQ0MzU2ZWU3ZTU3OTA2MzQwNGRhMWIyMzVkNjIwZWMxMGFlOGE1OGUgbGVnYWN5LXRydW5rCisxMDYxOSA5ZDAzMTAxNDM2MDA4Y2UwOGQyYzY0NWYzZGFhYmJjNmVjYWJlYjJkIGxlZ2FjeS10cnVuaworMTA2MjAgYWMzY2E1NjZjYjQxNjFjNDA5ZmFlMWI0YTdmMzgzYzcxMzM2OWYwNCBsZWdhY3ktdHJ1bmsKKzEwNjIxIDIzYTgzNzcyNjIyNjRiNTc2M2MzZjliZWUzOGIyOTk2Y2JkODNjMjEgbGVnYWN5LXRydW5rCisxMDYyMiBiMTQ4ZmExNTI1ZGI5OThlZWMzMWIwOWFmOGM4NWQ2YzNmMmJlZTg3IGxlZ2FjeS10cnVuaworMTA2MjMgZDYwMWFmODA2YTU3MzNiZjM3NTZlMjliN2NlMWEzZjAzNWZmMDU1OSBsZWdhY3ktdHJ1bmsKKzEwNjI0IGFhM2I0ODAwMmY4ODdlMzZhZjJiMjA4NzcwOWRkZjYxYzk4YTZhM2UgbGVnYWN5LXRydW5rCisxMDYyNSBlMDMzZWQ1MGNiMzc2Y2Y2YTVjODVmMDAzM2YyNzFlMzcyOTJiODg5IGxlZ2FjeS10cnVuaworMTA2MjYgY2NkODM3NWRiMjczNmRlOWRhNjUwZjc1OTlkMGIzNTc4MGZhMGZiMSBsZWdhY3ktdHJ1bmsKKzEwNjI3IGMwZTM5NDRiNmE2NGZlMmU3M2Y4Y2RjNWEwM2JmOWY1YTQ2MDBkNGQgbGVnYWN5LXRydW5rCisxMDYyOCBiZGJlMDgyZWUzODNkYThhMDJjNjJlYTNiMGNhOTE4Y2FlZGFmODJiIGxlZ2FjeS10cnVuaworMTA2MjkgOTI3OWVmNjg2OGViYTNhNTUwOTkzOTJlNWE1MDcwOGQ5ZjU4NTQ0OSBsZWdhY3ktdHJ1bmsKKzEwNjMwIDkxYWFlZWY3NWE3MzYyZjg3YjUwYzYxZjRlMDkzYjY5OTQxMTA2YmIgbGVnYWN5LXRydW5rCisxMDYzMSAzYTUyMDI4ZmU5MzYzZGEyZjYxY2VkZmUzNGM5OGRmOTZmNDNhN2JhIGxlZ2FjeS10cnVuaworMTA2MzIgNDY2ODZkNDBiZGZkNmMzMTE3N2I5MmJmNGE0MTVmOTgwNmQ4ZTdhZSBsZWdhY3ktdHJ1bmsKKzEwNjMzIDA1ZmViZjkzMWU5MWI0YmY5NjJlOTkwMzFiODc1Zjg3ZTRjZmI3NDAgbGVnYWN5LXRydW5rCisxMDYzNCA5OTVmYjU1YjNlNmFiZDIxZGRhMGMyY2Y3ZmM2ZWI4OWVhNDE2ZGRkIGxlZ2FjeS10cnVuaworMTA2MzUgMjU1MjMzZTQyOTE4ZjM0OWYxZTMzNDY4YTBiYzJhZDExMTE1MzJhMyBsZWdhY3ktdHJ1bmsKKzEwNjM2IGFkYTQwZTY5ZmQwOTM2ZTM1MTZhMGQyYjcxYTFmYWJlNTcxOGVjMzMgbGVnYWN5LXRydW5rCisxMDYzNyBlNDliMzBjNmE4MGFjMGI3ZjhjNzZiOGEwYWE0MmZhZTQxNzc2M2U2IGxlZ2FjeS10cnVuaworMTA2MzggYmJmZTk5YzI3ODVjOTM3MjMyYjdlM2Y3YjNlYjY1ZjUxNDhmZWNhNCBsZWdhY3ktdHJ1bmsKKzEwNjM5IGIxYjI2ZTBlMGEwYWRhZDNjNzFkYWM4ZDliYjhjMGNiYWI1NGJhN2MgbGVnYWN5LXRydW5rCisxMDY0MCAwNTY1NzJlMDc4MWE2YTIzMTNiMmQzNDk3ZDU2NzFiMTY0ZThkMDhkIGxlZ2FjeS10cnVuaworMTA2NDEgY2U5ZmM2NDUyOGE3OWRkOTEwZTU0NjZjNmU1NmJlOTRkNjk2MWQ0NSBsZWdhY3ktdHJ1bmsKKzEwNjQyIDEyNWJmZDg5Njk2NzE2MzMzY2FlNGU4YzM0N2VmN2M1ZmVlYjhhZDYgbGVnYWN5LXRydW5rCisxMDY0MyAxYmJkZDg0YzdhNDA5OTY1NjM4ZmMyZmFjZDRiM2E0MzM3MmI4N2E3IGxlZ2FjeS10cnVuaworMTA2NDQgYTMxMzRjNjk3MGViYmU4YzRiNWVjN2E2OTY2ODYwYjIxNjMxYWJmMyBsZWdhY3ktdHJ1bmsKKzEwNjQ1IGVhNTliYjkyMTM4MDUxNTEwNTE3OTE5ZDEyYjg4M2JjMGY0ZGNmYTggbGVnYWN5LXRydW5rCisxMDY0NiBmM2M4ZmJjNzkzZmVhNWU3Y2E4NDZlYjhkODBkMTNiMDE4OWVjZTdiIGxlZ2FjeS10cnVuaworMTA2NDcgNmY1YzkzNmFlMmQyMjI4MWQxZmEyM2Q1YWYyOTRlYTM4OGUwZDMyZiBsZWdhY3ktdHJ1bmsKKzEwNjQ4IDE1NDZmYzc2ZDAwZWNkNWVmYjAyMjdlYmVkZWVkNzQ3ZGIyNWQ0OTggbGVnYWN5LXRydW5rCisxMDY0OSBiOWQ5YzBlZWI0N2MyNjA4MzczYmM5NDhhM2VmODBkNTA2Zjc0ZTdlIGxlZ2FjeS10cnVuaworMTA2NTAgYzlkMGQ2MzFhYmFhZTBlMDI3MmUwMmE1MmY3YjQ1ODUxMTc0OTIwNyBsZWdhY3ktdHJ1bmsKKzEwNjUxIDI4NGFkZDc0ZmUzNzA1ZWMxZDVkNzFkNmFkOTBlMTQ5YjUyM2ZlYWMgbGVnYWN5LXRydW5rCisxMDY1MiA1MzZlNDM5YTY1ZjlkMGI1MjNkZjkzM2Q2MmY1NjczNGViZmVmYWJlIGxlZ2FjeS10cnVuaworMTA2NTMgNTczMmVjMjQ4N2M1MGM2ZDM5ZTdkZjI3NzUyZjIxYjcxNzBlZWQ5MSBsZWdhY3ktdHJ1bmsKKzEwNjU0IDViYzhjYTEzY2ZlMDFjMTgxNTU1MmQ5OWIyYTc5MmE0MjFkNGI0ZTcgbGVnYWN5LXRydW5rCisxMDY1NSAyNmM2MjJkMzcxN2QyMmM3MWM3YTA4YjU3OWJiODUxZDQ4MzMzZGY3IGxlZ2FjeS10cnVuaworMTA2NTYgYThkZjA5MGExMmJhZjY4ZjU1MjQ0NDFlMjJmYmZhOTNlNzI4MWM1OCBsZWdhY3ktdHJ1bmsKKzEwNjU3IGEwYTBjMTQzMzhjMDc0ZmQ5NmYxZTcyY2EyNWMyNDA0NmE2YmQ5YWMgbGVnYWN5LXRydW5rCisxMDY1OCBlZTI3ZjNhOTE2NmY4MDEzMzNiZjM4MDExMzNiMTY5NzRhZmE0OGE5IGxlZ2FjeS10cnVuaworMTA2NTkgMzBmYmUzMDJjNTE4ZmY4NGVhNTk1ODhhOTE4ZWU5MWNkOTQxZjdlZSBsZWdhY3ktdHJ1bmsKKzEwNjYwIDRhN2ZmY2RlNDBkYzhmNzAxMWVhMjEwZDVkN2EyZDExNTM2YzM3MzcgbGVnYWN5LXRydW5rCisxMDY2MSA2OGVlOGFiZDk3ODI4YjA1M2QwNzhkYWEyN2M5MDkyOTdhNzlkZmQ3IGxlZ2FjeS10cnVuaworMTA2NjIgYzY5YWQ1NjZhZWIxZTUzMWRiODJiMjc2Y2QwNGNiOTdmZDNlZjBiNCBsZWdhY3ktdHJ1bmsKKzEwNjYzIGRlN2ZjNjZjMGI0ZmRmYWQxNWFhZWM0MDBhZjcxZTI1ZjNhMDRhZWIgbGVnYWN5LXRydW5rCisxMDY2NCA2ZjFkYjUzNGRmYWU0YWRmZDRiMDNmYzE5NzNhOTIxMmVhZWJlYTUxIGxlZ2FjeS10cnVuaworMTA2NjUgMTQyMTY1ZWQ4NGQ4MGJjMDU3MDY2ZDBmNDUzZjhjZDdlMWVjYWJlMSBsZWdhY3ktdHJ1bmsKKzEwNjY2IDkyOWI3ZTZlNzUyMGM1ZGJjMDI1MjI5NTVjOTJiODA0M2Q4NWEzZGQgbGVnYWN5LXRydW5rCisxMDY2NyA3NzU4MDhhMDllNDZiNzczNDFjMWFiNDY3MjE4YWYwZjVmOGY1MjBmIGxlZ2FjeS10cnVuaworMTA2NjggNjczNWVmNjYyZjM5ZDhjY2EzZWI4MmQ2ZDU3NzljNTE3MmM2Y2QyMSBsZWdhY3ktdHJ1bmsKKzEwNjY5IDk5N2Q1YTIwMDBlMDQ1MjZjZjU5ZjEzNDZjNjZmZDczYzg3YTQ2OTMgbGVnYWN5LXRydW5rCisxMDY3MCBjZTJkMTIwYzM5MDNmMjU0YTU4M2Y2Y2M2MDE5NGIwN2RiYmY0NzBiIGxlZ2FjeS10cnVuaworMTA2NzEgMjVjMmFlYTY0NTAxN2NmYjE0MWMxYWE0M2NmNWU1MTk3MDExMTc0NCBsZWdhY3ktdHJ1bmsKKzEwNjcyIDM1YWE2N2ZjNGU2MGY2ZjY5MjdmMzczMzhjNTVjYmRlNTBlODRlMTcgbGVnYWN5LXRydW5rCisxMDY3MyBiODFiZjljYTE3OWQzZWI2ZGNkNzczZTA0ZjRkYWU4MGJlYmM5OGI0IGxlZ2FjeS10cnVuaworMTA2NzQgNDg5NGRkZDQ1MmVlY2MxMjY5NzE3YzY1NzIwNGEyMjJhNzcxODk5YSBsZWdhY3ktdHJ1bmsKKzEwNjc1IGI2Njg2Zjc1Mzc5OGY4MmYxNTdiNjBlYWFlYzAyY2E5ZmQyZWY2MTUgbGVnYWN5LXRydW5rCisxMDY3NiA4MjBkNTEwZDFkZDYwYzAxNmU1ZmE3ZmRiYmFkZDU3MDVhYzhjNTk0IGxlZ2FjeS10cnVuaworMTA2NzcgODg1ZGU0OWI0NDVjNTNjNTc4NzBiMjNhMTJiZDMxMjhlYTlhYWFiZiBsZWdhY3ktdHJ1bmsKKzEwNjc4IDNhNTViNGM1ZTNjNzE5OTVkYjJmMzk0OWZmMDZiNjdjOGM3MmM5ZDEgbGVnYWN5LXRydW5rCisxMDY3OSA4M2E2OTMwNWNiMDZlMTM4YTA5N2I2OGVjN2M2MmU3ZTA1MDA3NzU3IGxlZ2FjeS10cnVuaworMTA2ODAgYzMxYzU5ZjE5MmFmMjIwNDE1ZWJjNDU4ZmVmMTZhNmYzNjg1ZTc2NCBsZWdhY3ktdHJ1bmsKKzEwNjgxIDQ4MmU0YmEzM2MwOGY2YTY4MTJlYjhkYTVmMzIzOWQzZThkNWEyMTggbGVnYWN5LXRydW5rCisxMDY4MiAwNTA5NjA1MmQ4MjU3YTAzNzgwODJkYWQ1MzJkZjk5MjY5ODVmNzI3IGxlZ2FjeS10cnVuaworMTA2ODMgOWYwYmI4N2RkZTYwMGFjOWJjZDkzYTgzYmNiYjkxMDZmYzkyOTRhNiBsZWdhY3ktdHJ1bmsKKzEwNjg0IGMyOGIwNTM4YTQ0NjU0N2ZlNzkxODZmNzhiYjM1ZTkxZjM1ZjRlZWYgbGVnYWN5LXRydW5rCisxMDY4NSBkNmY0YzJhNTMxMmM0ZTFkZDNlMmE5MGMyMzBiYzI5ZmM5NWIxZTAwIGxlZ2FjeS10cnVuaworMTA2ODYgYzQyODliODEzOTI0YjI3NTNjM2I5ZTk4NDM5NzMzMTQ3ZTdkZjY2MSBsZWdhY3ktdHJ1bmsKKzEwNjg3IDdlZDEwN2FmOWZmNDk1MjIwZmRjZDRkZjA0Y2EzZjFmYTQwZDAwYjkgbGVnYWN5LXRydW5rCisxMDY4OCBiNTQ5NDk2OTAwNzc5NzQ0MzNkYzQ3OTAyYjFmZjMxYWU2ZGUzMjIwIGxlZ2FjeS10cnVuaworMTA2ODkgZTI2NTY5M2YwNzkwMjA3NzI0MTIyYjA4N2Q3YmYzMWVhZGFjNGNkYiBsZWdhY3ktdHJ1bmsKKzEwNjkwIDM0Y2NhODMyYTRhZmUzODkxMjYwZDhjMDVjN2MzNjljOGY4YTUwOTAgbGVnYWN5LXRydW5rCisxMDY5MSAwYjdmM2E5MzIwODVjMzQyMjBlOTkzM2Q0MWQwMzEwNWRhMzM3OWFhIGxlZ2FjeS10cnVuaworMTA2OTIgMjAzZTJhYjYzOTM2YTI1ZmUyYjBhMWY2OWYwNWU2N2JjMTlmMjk2OSBsZWdhY3ktdHJ1bmsKKzEwNjkzIDE1ZWExNWUwY2EyYWI4NThlZjQ5NDc1OTQ0MDNlNjdhMGFjYTUyMWQgbGVnYWN5LXRydW5rCisxMDY5NCBhNDQ0Y2Q4MzVjMGUwNDY1NzFlYTAzZTc3NzZmNjk1YzdkZTQzOWU1IGxlZ2FjeS10cnVuaworMTA2OTUgMzBjMjM4NWNhMzg5M2EwYjkyYmFhZDUyMzAyNzBiNDY1MDYzMTU1YiBsZWdhY3ktdHJ1bmsKKzEwNjk2IGJjMmU5YjRlYjhkZDU4NDcyMzY1NGI5OWViYjAxOGRiNTk5M2RkODcgbGVnYWN5LXRydW5rCisxMDY5NyBmMzIwODAwZjBmYTU1YWZlNzg5ZTA0MDIxYWU4YzhiNTgyMzI3Y2VhIGxlZ2FjeS10cnVuaworMTA2OTggYTE5NjYxMDc2NTI5YThhZjFmYzNmZmFkM2ZiNDNlMzk5ZmM3OTJlMSBsZWdhY3ktdHJ1bmsKKzEwNjk5IGYxYzk2MDkzMTQxMzE5MzM4MTVkYWM0NWQ5MjllZDY3ZTQ0OTczODggbGVnYWN5LXRydW5rCisxMDcwMCAzMjhkNDZjNDczZjRlYzBlMmMwZmQwYjMyYmQ5ZjUwMzg1ODliYjRhIGxlZ2FjeS10cnVuaworMTA3MDEgOWQ1NGFhZjAxNjNkYjBlYjUwNWIyMmFhZGNhNmU4YWQ0OTJkMjMxZCBsZWdhY3ktdHJ1bmsKKzEwNzAyIDZhMDg3YWUxODBiYTM1OGEzMWViZDc5MTcwYTNkYzgzMWVlYTU3NDYgbGVnYWN5LXRydW5rCisxMDcwNCBlODM0YWU3M2RlZGRmMmJjMGY3NmY5MGMyYTA1OGZjMjNjMTY1ZDBhIGxlZ2FjeS10cnVuaworMTA3MDUgMTM2MmM5MWVmY2QyN2UyNjUyYWZmZThlZmE0M2Q1ZjJiYTkzYjg4MyBsZWdhY3ktdHJ1bmsKKzEwNzA2IDVlMzk0YTA3YTNhNGYxMDFlOWY0MDlmYzIxYjlkNGNkZDQ4NmQyNzEgbGVnYWN5LXRydW5rCisxMDcwNyA5ZmMyYWY5ZTU4NTlhMGJhMDcwNzgzZmIwN2FhOWYzNWMzOTdhY2M5IGxlZ2FjeS10cnVuaworMTA3MDggNjlmMmUwNWNjMzc4ZWQzNWIxYzRlMDY5MTdhNzNkODk4OGE5NmRjMCBsZWdhY3ktdHJ1bmsKKzEwNzA5IDRhMTNhNGQyNTg4YjMwZGIwNTFmMWM0OThhNGU0OGY0ZmEwYzEwMDcgbGVnYWN5LXRydW5rCisxMDcxMCA5ZDY0MmE3MzVhMTMyN2QxZmZhZDM2MmNlOTA3ZTdkMmJmOWVkMGVmIGxlZ2FjeS10cnVuaworMTA3MTEgZGY3NTJjMDhiNDYyMjA0NDJmYmI3ZmRhZmNkYTRjZDZkNDg1NTI0YSBsZWdhY3ktdHJ1bmsKKzEwNzEyIDg1YThhZTZkZTI3ODU4NDE3MzQ0YmE0ZWI3MDdmZGNiOGM4OTg0YzggbGVnYWN5LXRydW5rCisxMDcxMyBhMTAzY2Y2ZDM4NDViNTU4YWM3ZWVjMzdlZjI3MGQ5ZDVhNDgxZmU3IGxlZ2FjeS10cnVuaworMTA3MTQgZWNkZThhNDVkNDI1MTMxOGRiNzQzNzZhOWQyNjkyOTM4Y2EzODkyOSBsZWdhY3ktdHJ1bmsKKzEwNzE1IDBlYzlkYzlkMjAxZjJmMTQ0NTUyOTkyMmQ4MmVhZjFjZjFmMGVkYTcgbGVnYWN5LXRydW5rCisxMDcxNiA0MDZkZDJiMzY3OTM5NTk3Y2QxYjFlNDFkNTdiMDQxODIwMDI3ZTViIGxlZ2FjeS10cnVuaworMTA3MTcgOTMwNmY1OGNkYmE1YTFkYTI0YzMwNWI1MTY3MjA3Y2EyY2NkZTgzYyBsZWdhY3ktdHJ1bmsKKzEwNzE4IDE0MTE4YjU3NjcxZWM0YWE5Yjk0NGYwZDkwN2NiNWZhOTJjZmY0M2EgbGVnYWN5LXRydW5rCisxMDcxOSAyNDAzZTkyYTRhNmMwOGI5NTMxNzQ2NGRlMGJmODk3NzlmNzQwODQ5IGxlZ2FjeS10cnVuaworMTA3MjAgMDdjMGEzMzFjMjY5MjJiZWYyODE5ZDMwNzYxNjVhZTg1YWUzZTBiZiBsZWdhY3ktdHJ1bmsKKzEwNzIxIDNiZTFhZDlhODU4N2YzNmZhM2NjZTU5OTIyNjE5Zjg2OWU2ZjM5MDIgbGVnYWN5LXRydW5rCisxMDcyMiBkZTJmZjg5ZDZkNGJlZjJiNWY5ZWU4YWRlYzA0YzFkNmQxZWNjNDFlIGxlZ2FjeS10cnVuaworMTA3MjMgNDAzM2ZlYjI2ZGE4OTlhNWUyMjcwZjIzYTRjZDNkNzZkYzRiYzNhNSBsZWdhY3ktdHJ1bmsKKzEwNzI0IDA3OTJkY2RlOGUzMTFkOTZmMThjMTE2OWY1YzA2NzM0MDYxZmRiYzkgbGVnYWN5LXRydW5rCisxMDcyNSA3NGVkZDVjZGE5ZmQ5YzU0OTFlNGQ4YWM4M2NiMTJkNWQyYTYxZDhlIGxlZ2FjeS10cnVuaworMTA3MjYgMTA1MmIwYjJjNmVhMGY1MDY5MGNkNDRhMDk1NTdiMTY5NjQxMTczNCBsZWdhY3ktdHJ1bmsKKzEwNzI3IDJmYWViNzJiYjY0YTE5YzkxNmJmZjQ4OWFhNWY2OTQyYzM3ZDMxZWQgbGVnYWN5LXRydW5rCisxMDcyOCA4NTIzZWNhZjU5YzU2OWE5MjM4ZGMzMzE1ZWVlZDA3MmUyMTI3ZGMwIGxlZ2FjeS10cnVuaworMTA3MjkgNzM1NmQ0ODg4YThiY2E5MzQ0MGUyOWE3OWZiNTk1YWZjZWEyZGMyYyBsZWdhY3ktdHJ1bmsKKzEwNzMwIDI0NmFjYWQ5Yzg5M2RiZDZlNzljZTEwOTczMGM4MjM0N2I1NmY2MjEgbGVnYWN5LXRydW5rCisxMDczMSBhYjBkNWYyNjVkNTRlOThmMDVkOGM3OWMwZmUyYWVhMjllYWJhYjMyIGxlZ2FjeS10cnVuaworMTA3MzIgNTBkMzViZGYyMDQyZGUyMGM2ZTdhYTIxZjFiODhmNDJjODdmYTk1NyBsZWdhY3ktdHJ1bmsKKzEwNzMzIDM3YzNlYzRmM2QzZjlhNzNkNzY4ZWVjMDQ0M2M3NmRlOTg1YzVkMmEgbGVnYWN5LXRydW5rCisxMDczNCBmYzMzNTBhZTVmMmE5NTY3MWY0ODU1NWI0ODZkNzg4YzI5MGQ5NDVhIGxlZ2FjeS10cnVuaworMTA3MzUgYmM1MGY1YzIwYmM5NjE1OWQ4ZDI1OGJhYTA5MzhmYTQxNzg4MzIzMSBsZWdhY3ktdHJ1bmsKKzEwNzM2IDEwMjZkMDMzYzBkZDlhMmE4ZGM3MTJlNWEzNDg2OGVmZTdkOGQ1OGIgbGVnYWN5LXRydW5rCisxMDczNyAxMGM2MDlmZTdkZWJjOGI3ODRlZDk3MWFiZDRhYmVlMTJiMjYxZDBlIGxlZ2FjeS10cnVuaworMTA3MzggYThjMjFhY2NiZWNkYjkyNWQxZTIzMzIzMzIxNjZlYmFhYTA3YmJmZiBsZWdhY3ktdHJ1bmsKKzEwNzM5IDEwN2E4NTI1YmY1ZWI1ZjYwZDUyZjQzZDFhZGY0YzEyNGQ5MmZhYjYgbGVnYWN5LXRydW5rCisxMDc0MCBlYjgzNWVkMWY2ZmU4MzdhODBjMWI1YTU1N2I0YmFkOWQ1ZGNjYzMxIGxlZ2FjeS10cnVuaworMTA3NDEgOWIwN2QyN2EzMWJkNzlhNWQ0ZGM1NjcwMjE5ZmRjMjYwMGZhMzUzZCBsZWdhY3ktdHJ1bmsKKzEwNzQyIGQ4M2YxYmNiYjE1MDVjNmM4YjdjYWI2ZGYwYjBlMjlhOWUxNDA0YmYgbGVnYWN5LXRydW5rCisxMDc0MyBiOGJhODg4N2Q1OWY3ZjZiY2IwZjE1NjMwYmZiZDUwZjEyNDY3OGZhIGxlZ2FjeS10cnVuaworMTA3NDQgOGI4MjIwODM3MjZiMWM2YjM2ZDY5MDA3M2E5Nzg3MWJmMTE2M2I3MyBsZWdhY3ktdHJ1bmsKKzEwNzQ1IGI0ZDNkMWEwOGU0ZGFlNjE5Mzg0YWRlYzhjNWMyN2FhZjg4MmEwZTIgbGVnYWN5LXRydW5rCisxMDc0NiBjZTFlZDdlYjc3NTA3Nzk2ZTE4MmIwMDQ2ZDdiMDliMDc2ODNlMGJlIGxlZ2FjeS10cnVuaworMTA3NDcgMGQzYjczZDk5NTg4OGU5YjljNmMyNThlMGUxMGY5ZDJmN2VlNWQyOSBsZWdhY3ktdHJ1bmsKKzEwNzQ4IGVhNGI3YTU0ZmQ5MmZjNGRhNDQ5YzVhMWZhOTMyYzI1YzJlNTM2M2EgbGVnYWN5LXRydW5rCisxMDc0OSBjMzQ1N2ZiMThhNTEwN2Y2ZDA3ZGQ1MTliOGNmZGUyMjIwZTgzNzBkIGxlZ2FjeS10cnVuaworMTA3NTAgZTE4NGY4M2JiYjc5N2Q0YzA3ZDUzYmY5ODJjMzk0NTFlNjM1Y2U5MyBsZWdhY3ktdHJ1bmsKKzEwNzUxIDNkNjVmNjE2ZjkzZTVlNDUyYzA2ZTE2ODJhMmQ4ZmY0M2RkZWRhNWEgbGVnYWN5LXRydW5rCisxMDc1MiBhYWExYzhiNTI5ZjUyNTgwMTY1OGIwYmVlZjIwZTk2MjRhM2RhMTJiIGxlZ2FjeS10cnVuaworMTA3NTMgNjZhMmVhNjNiNGQ4NTc4YTg0ZDkxNmNkYmIwZDQzYTdjYzM3NDgyMiBsZWdhY3ktdHJ1bmsKKzEwNzU0IGU0NjlhOGFmMDRiMjFkNGZlMTRmYWQwNDA4YTgxN2EyOTk4MWQ1ZjIgbGVnYWN5LXRydW5rCisxMDc1NSAyZGQ4OTBhZjE4N2UxMDQ0Njk3MmUwZGQ4MjY1NDQ1NDBkMTBmODczIGxlZ2FjeS10cnVuaworMTA3NTYgMWRiNDA5OWE3MmNlOGIwNzljMjEwNGQ3ZjdhYzY5YzgzMjdmNDY2NyBsZWdhY3ktdHJ1bmsKKzEwNzU3IDdiMjUwMDY1NzlmNGNmYzI1YzZkMTA5OTkxNzFjMzcwNWY4MDM2NTggbGVnYWN5LXRydW5rCisxMDc1OCA3MDc2NTMxZWZiOGZkYjMzY2U2Y2VmNDUwZjMzNjk3NWNlZGI2NmI5IGxlZ2FjeS10cnVuaworMTA3NTkgZDgxZjMxNjE1NjdiNWZmMTc1Y2E2ODlmMDI5ZTkyNTM0OGYyOTViNCBsZWdhY3ktdHJ1bmsKKzEwNzYwIGM3ZDBiOTcxZTBlMzkyNWEzNDVlZGQ5ODE4NGJhNGRiYmQwZWM3NWIgbGVnYWN5LXRydW5rCisxMDc2MSAzNWQxY2VlZDY5YjllYWVmYTRlNGY5ZTMwMGM3ZmQxMGM4OTY5ZjY1IGxlZ2FjeS10cnVuaworMTA3NjIgNjMxYTE1OWNmMDQwYjFhOWIzMzUwZDk5M2VhMDUzOGNmYjI2NTEzZCBsZWdhY3ktdHJ1bmsKKzEwNzYzIDJiMmQyMWVmYzRkNzE1ZTE5YjA4MGYyOGQ2YWNmMzc5Y2E5MDA2MjggbGVnYWN5LXRydW5rCisxMDc2NCA2NTg4YWRlMGVmYjc3NGU4YmI4ZGQyZGRkOTdiMzliYTcxYTU1YTA3IGxlZ2FjeS10cnVuaworMTA3NjUgMzgxOGExOWY3NDdmMGE4ODRjNGVmMzkwNDk3YTJhNjA3MDhjOTBhZSBsZWdhY3ktdHJ1bmsKKzEwNzY2IGY4MzRlMTk3YmQxNDZkYTcyOGU5NjdkZWE1YzkyNDFiMDQyN2M5MWUgbGVnYWN5LXRydW5rCisxMDc2NyAzMmJjMTdmN2M3N2JjZTdhMzU1NTZhZjk0NTBlMTJjYTVkNzQwNzBhIGxlZ2FjeS10cnVuaworMTA3NjggNGM4OGNjNjJlOWU5MGE4NDM0ZjA3NTBlMzc5ZTZlZDRhNDk2NWNiNSBsZWdhY3ktdHJ1bmsKKzEwNzY5IGQzYmYzYzJhZDc1YTlmZTZlNTk1NjdiYzBhOGVlOGM4YjljNWViZjAgbGVnYWN5LXRydW5rCisxMDc3MCA2ZWQ4YTdmZmM1OTUzNzA0YWI4ZjQ2YmRlOGRhMmRlZjRhY2E0MTg1IGxlZ2FjeS10cnVuaworMTA3NzEgOTI4MWI1ZDM1NjQxYTBjMDVjZDgwZmUwMTRiZDI5MzA0MDY3NDc3YSBsZWdhY3ktdHJ1bmsKKzEwNzcyIDc0YTkxMGI4NmI0NDNkMzUyNTk1ZWYwM2ZmNzdmYTA1ZmU4NjNhNDkgbGVnYWN5LXRydW5rCisxMDc3MyBmOGEzODliMTA0ZjA5MWIyZjYzYTE2YjNjODY2ODBkZTkzMGVkOTUxIGxlZ2FjeS10cnVuaworMTA3NzQgZmY2MzEwN2M5ZmE1ZDc4ZmZjODRjYTQyZjIxMDIxNmZkMjVmNTgzMSBsZWdhY3ktdHJ1bmsKKzEwNzc1IGYyYmI4ZDUxOTViNjY4NzRhNTIzNzJiNmYyYzc4Y2NjMjkyOGNmNTYgbGVnYWN5LXRydW5rCisxMDc3NiAzNWVhMGMwNzNlYTNkMzExNTQ4N2Y2YjczYjA4MTE5MTc3ZTY1NWVlIGxlZ2FjeS10cnVuaworMTA3NzcgYjQzODk4NmIzYzA4ZDgzYzEzM2Q2YWU4NDYxZjczODY4ODA3ZmE3NCBsZWdhY3ktdHJ1bmsKKzEwNzc4IDVkZDZmMWZmNjZiYzA1MDk5NTIwNjFkMzE3Y2FjZDBmMjRiYTYzZjEgbGVnYWN5LXRydW5rCisxMDc3OSBiZjhlODZiOTVjOTIyNmE1NzA5NjExMWIyNzEzNzkzODY5MGEwNmFhIGxlZ2FjeS10cnVuaworMTA3ODAgOWRkNzlkMDEwNGQ5NmY0YTU4OGU2ZjhiMTU1OGZmZmQxZThkOGQyMSBsZWdhY3ktdHJ1bmsKKzEwNzgxIDRjM2MxMmU5NTZhNzU1ODViNzM0ZDA2NjczMWIyNzg1YjNlM2EzMjMgbGVnYWN5LXRydW5rCisxMDc4MiBlM2QyMWM0Y2EzNjJmZDMwOTA3NmZhMzNlZTZiYWI0Yzg5MjgwZTk2IGxlZ2FjeS10cnVuaworMTA3ODMgOGI1MDc1MWYyNzJjODRlZTg0Njk0Njk3Y2I1ZGI0YjYxYjY4YjUyMyBsZWdhY3ktdHJ1bmsKKzEwNzg0IGQzZjNhMDU2OGJkNmEwOGQwODNkN2M0MzcxZjY2ZGU0NGI5YmFjMDUgbGVnYWN5LXRydW5rCisxMDc4NSBiNTliOTk0MmJhYzk2MWVjYTVkYjM3YmU1ZWFmYjI5YWJmMGUyZGFkIGxlZ2FjeS10cnVuaworMTA3ODYgNjIzYzQ1OWY4ZmJlZGViNzZkZjBkNDM1N2VlNmU5ZDEwMjE1MTU3MSBsZWdhY3ktdHJ1bmsKKzEwNzg3IDBkMmQ2MWY1MmI5YzUyZDYxZTk1ZTgyNTljZjAwMjY0ODQ3YjVmMjMgbGVnYWN5LXRydW5rCisxMDc4OCA0Njc0Y2QyZjZmMDcyYmNlOGRkN2FkM2Y1YWIyZTY1NGY5MjQwNzI3IGxlZ2FjeS10cnVuaworMTA3ODkgMDhkZjljYjU3M2FkYWM4MTU2OTAyMjk0NGY2MGJiZjFiODg0NDM5MiBsZWdhY3ktdHJ1bmsKKzEwNzkwIGZlMWZkNTZjYWRhNzAyMDAyZWNhNTBlNjgyMzY3NDFmNGM1ODdhNmEgbGVnYWN5LXRydW5rCisxMDc5MSA0MDcwODU5ZmU2MmVlYTQwODQxZTU3NDY1OWI1ZDg4MGIyMDVjMjc2IGxlZ2FjeS10cnVuaworMTA3OTIgNDE0MjQ3ZDRmZWQ3M2EzYmRiMzJjZGJkZDI3NWY0ZDVmYmM4ODVlYiBsZWdhY3ktdHJ1bmsKKzEwNzkzIGY0ZmM5ZDE4YTUzZDQ3MzM4MTQ4YjkxNDQ5MjY3MWVjYTdkYjhiY2MgbGVnYWN5LXRydW5rCisxMDc5NCBkNjdiZTEzZGEzY2MxOGU0OTQ0ZGZhODc1N2IyMmIwY2QzMzdlOTkzIGxlZ2FjeS10cnVuaworMTA3OTUgYzYyMzYwYWE1ZWE0MGFhYjhiOWFlZTg3ZmE0ZDhhZDMwMTU4YWE3MiBsZWdhY3ktdHJ1bmsKKzEwNzk2IGY5NGQ1YWU2NDJhOWIxY2RlOGZlYjEwNzJmOWRmNWMyZGFhMmZlZDAgbGVnYWN5LXRydW5rCisxMDc5NyBlNDJiOTQyNzU2NTJiOWQ1ODFiYTQ2NjA3ZDVlYjhjMzU4MWY3MTE0IGxlZ2FjeS10cnVuaworMTA3OTggNjNjY2U5ZDc3Nzk3NjIyZTU5NDU3M2E4YzhkMWMyMmE2NmI1NjFkZiBsZWdhY3ktdHJ1bmsKKzEwNzk5IDgxMDU3OTk2ZmYyMWQxYzRhZjJiMTI5OTMxYjg1NTU2NGUyYzk3YzUgbGVnYWN5LXRydW5rCisxMDgwMCBlYzg3YjYyNDY2ZDNhYWQ0YTUxM2YzZTJhNGMzZmVhMWJiMGQzNmZjIGxlZ2FjeS10cnVuaworMTA4MDEgZGY0MDNlZDM1YmRkZTAwYTBlMjdjN2U1NmJlOWQ3NTE0NWVmZWFhOSBsZWdhY3ktdHJ1bmsKKzEwODAyIGMxNGU2OGY1OTFjZTMwNWJkOGRkY2YzODRjNDVmZTJhMGFiMGUzYjkgbGVnYWN5LXRydW5rCisxMDgwMyA5ZGRkNjc5MzE5YTlkODEwMTRjNTM5YmZjYTBlODNjYzQzOTlkZWYzIGxlZ2FjeS10cnVuaworMTA4MDQgZTZlZjBlMzllMzVjZWQ4ZDY5NjJkMzljMTA5NTdkOGJmOWFkOTQ2YSBsZWdhY3ktdHJ1bmsKKzEwODA1IGUxMzkyMTA1MDMyNzgzYzU4NzJiMTQ3ZGJlYzkyOWIxZjkyOWI3ZDYgbGVnYWN5LXRydW5rCisxMDgwNiBjNDljOGY3ZmRmZjE4NmNlMTQzYjIyNGNmNzY0YzQ5ZThmMzI5NzI4IGxlZ2FjeS10cnVuaworMTA4MDcgYWYxMWRiZjM1ZWU1ZTlmYTlhZjQxODBhN2U3N2IyZTJjMzI3MzYzMSBsZWdhY3ktdHJ1bmsKKzEwODA4IGEyM2I3NTEzOGJiMGZiMjNmZmEzNDI0NGIwYzQxMTUyYzBmZTczNDcgbGVnYWN5LXRydW5rCisxMDgwOSAxODk3NzQ3NzM4ZjU5OGZhMzFhZTcxOGQ1MjdiMTcyYmNmMWY3MjJlIGxlZ2FjeS10cnVuaworMTA4MTAgNDgyNDBmNTI1ZWMzYmU1ODNjNTk1YmE5ZGQ2ZTM0MTkyMmE2NWRhNSBsZWdhY3ktdHJ1bmsKKzEwODExIGNkODI4NDYyYWNiYjgyZWMwOWIwMDhkZWJiNGQwYTQxOTQzNTYwYjYgbGVnYWN5LXRydW5rCisxMDgxMiA3YTFlN2RhOTIyZjg3MDU3MmI5ODQzMmI1ODBiMGE1ZGQwZWNiNWNlIGxlZ2FjeS10cnVuaworMTA4MTMgYzU5YjU3MzZmMzA3ZjM1MGUxYTA3YjNjOTVlNzViNmRlNGQwZWZkNCBsZWdhY3ktdHJ1bmsKKzEwODE0IDk2NzllNzdkNDJlM2Q1OGVhZGI4MTkxYzg3MmI1ZjMyZjgwY2M0M2QgbGVnYWN5LXRydW5rCisxMDgxNSBhNGFlNzkyYjliNjgwMmFkMjBlZmIwMzRkZjdmOGJiMWRiZjI1YTU4IGxlZ2FjeS10cnVuaworMTA4MTYgNWJmYjVlZGMzMTNjYjY2MjEzMDI1M2I3ZGVkNjk2ZWVlNDZlODhlMyBsZWdhY3ktdHJ1bmsKKzEwODE3IGJmMTEyNjIwMjZiZGY3NTI0NGM0Y2M1ODZjNzMxNjY3YjAzMDgyNDAgbGVnYWN5LXRydW5rCisxMDgxOCA2YjcwOTViOThlNTRjYTViMTFiNzZlNDQ2MGIxNmVjMWJkYWRkMzY5IGxlZ2FjeS10cnVuaworMTA4MTkgOGQ5MGU3ODFhZGE4YmMwYTliMGRmOTAyYmFmZDM2ZTI3MTRmZjIxMiBsZWdhY3ktdHJ1bmsKKzEwODIwIDc2NThjOGExNDlkMTg1YjM0YmEwYWEwOGJmM2U2YzIxNTlmNjJmYjQgbGVnYWN5LXRydW5rCisxMDgyMSAyOGRhZTkxYzVkMGNjZGZmZDM0MzJkYzAwNWUwMDcwNmQyMDA2ZGViIGxlZ2FjeS10cnVuaworMTA4MjIgYTg0ZjY1OGQ0YmE0Y2VjYjIyYzUyZTg0M2JmMDlkMjFiYjc1ZGI5NSBsZWdhY3ktdHJ1bmsKKzEwODIzIGViZmRlMDZmZGI4ZDhjZDlkZjVlNTNiZjAzMDM2ZDBmYzY4YzczYzkgbGVnYWN5LXRydW5rCisxMDgyNCAyMjgxNWEwYjEyNjc1NmU0MWQ4MTQwM2Y1NTRmZWNiZTA2NTk1M2Q2IGxlZ2FjeS10cnVuaworMTA4MjUgMWI0YTM3ZjM3MzQ1MGFkZTliMjFlMjBmZWRiZjBjZmZjOTVhYzAyNyBsZWdhY3ktdHJ1bmsKKzEwODI2IGQyZDgyZjdiNDE5YTYwMTFkZmIzZjcyMmZlNjZkZGRiOTgyYTZlZTggbGVnYWN5LXRydW5rCisxMDgyNyAwNTE5NmE0ZTU0NDhiZjhjYzViYzU1ZGRmYjBmYTI1YjkxNjAxZDVmIGxlZ2FjeS10cnVuaworMTA4MjggMWIzOTNkYjAwYjFhYjhjYjNlY2YwYmRjODQ0MTM3YWE5ZmE1MjRkNCBsZWdhY3ktdHJ1bmsKKzEwODI5IGU3ZGQ5OTFmYWE0YWYxOTBjMDk3ZjQ2MGNlODBhMmMxZjAwOTMwMzAgbGVnYWN5LXRydW5rCisxMDgzMCA4ZDkzNzNiZDgzODRkZmNjNjdkYjdiYjZhNWFiZTkxZjg5YzRiNmYzIGxlZ2FjeS10cnVuaworMTA4MzEgNDE3MmRhOTE0NDFhYTBmNTY0MmFlOGYxZGM2NTYzNzRmMzJkODYxYSBsZWdhY3ktdHJ1bmsKKzEwODMyIDUyYzMzOTUyNDYwYThmNDQ3YTJkOWE0YTEwOTYwMTBiYjgyZDE1MzcgbGVnYWN5LXRydW5rCisxMDgzMyAyNTNiZmNiNjViNzczNDNhYTFhODYwNmRiNTI3ZmYzYWRiZDMxMDBhIGxlZ2FjeS10cnVuaworMTA4MzQgYzU3MTU1NDEzNGQxNTA1MTcyNjhiMTgwN2UwNTg0MzI0ZDg3ZWY5YyBsZWdhY3ktdHJ1bmsKKzEwODM1IGM4OTE5MWMyZTYzZjAyMDhmOTAxZmNlMmJiY2FiOTIxZjM0NmU5YmYgbGVnYWN5LXRydW5rCisxMDgzNiBmMzA4OTYxYjAzZDdkNTFkZWY5Zjg4ZmUwMzQ3OWI5ZGZkMDIwM2YxIGxlZ2FjeS10cnVuaworMTA4MzcgMWJjMGRmOTZiNGRkYzNlOTA2ZjFkN2JjMWE4MjRhMGYxNDdkMzBiZSBsZWdhY3ktdHJ1bmsKKzEwODM4IGE3NDIzZTY4Y2VlOTQ3NDFmNmE1OTg5YmQ1N2YzYjM3NzUxNzkxMTQgbGVnYWN5LXRydW5rCisxMDgzOSA4MjBmMDZiYjQxYzdmNTZmNWY1NDRhNWU2OWNhMjY0ZmYzZjhlYjMwIGxlZ2FjeS10cnVuaworMTA4NDAgZGE0YmRjZWVhYWQ3YTc2OWQzNmNhNjdhODVmMTdlZTQ5NDc3YjQ4YyBsZWdhY3ktdHJ1bmsKKzEwODQxIDczOWQ1ZmRhZmMzMmViMmE2MDk3ZTZhNWUzYzM1NTM2ZjI1OWZiOTIgbGVnYWN5LXRydW5rCisxMDg0MiBlMDc0NmEwZGE3MzYyYjAzMmRlOTY1ZmE3YzUwZGIxZjRlZjkwODc4IGxlZ2FjeS10cnVuaworMTA4NDMgZTgwZDRjM2RiYjc4N2M4ZTVjOTQ5ZjlmOTUzYjA5NWVjMDVhM2IxNCBsZWdhY3ktdHJ1bmsKKzEwODQ0IGU0MTIxMWE3YWVmM2ZhNTExZTRhODgyNjcxM2E0NmU1Y2ZjY2Q1ZWYgbGVnYWN5LXRydW5rCisxMDg0NSA1MmQ3YTllNzEyMjE1MmE5Zjc3YTNiMDc0YTJjZWM5YjUzYmQyYjZlIGxlZ2FjeS10cnVuaworMTA4NDYgNDU1YjIyOTQ1NDgyZmYwZjQ2NjFjZTVmOWRkOGM4NTRiZmZkNmFiZCBsZWdhY3ktdHJ1bmsKKzEwODQ3IDVmODNmOTdhYWViOGUxOTIzOTBjMTY1MTdlYjA2Y2U4NDBmNWQ2N2QgbGVnYWN5LXRydW5rCisxMDg0OCBlMTdhMDE5ZjkzOTBmN2Y1MGRmZWFiYmViODFlMjY1MmVkMTkwM2YzIGxlZ2FjeS10cnVuaworMTA4NDkgYTQ2NGU5Yzk4NWY4ZTViZjlkYzUxYmVkZWUyYmUzMzYyMjUyZmQ2NSBsZWdhY3ktdHJ1bmsKKzEwODUwIDFjN2E4MmQ0NjllMDY3MTY3YWVmZDZhYTI4YTU0MmU4OGFhZjY4YTUgbGVnYWN5LXRydW5rCisxMDg1MSA2NTBiZDEzYmVjOTJkMTEzZmY0OWM5MjNhYzI5NTQ1YTc3YjA2NDgzIGxlZ2FjeS10cnVuaworMTA4NTIgZjJiMDg1OWZlY2UzYmJlN2Y1OTcwMDJiNjY4ZjUzZGVlMDQ5ZTUxMyBsZWdhY3ktdHJ1bmsKKzEwODUzIGE2NTkzMGY1Y2RkYmNkYjVmNzJlYjExNGZiYjQxZWYwMjI3ZmNmMjkgbGVnYWN5LXRydW5rCisxMDg1NCA2YWQ3YzE2NTZkMThiNjkzNDE5ZmMwOWYxNTFiZTlkNDE3YjNhNmFlIGxlZ2FjeS10cnVuaworMTA4NTUgNmM4MjZlZTNlNTUzOGU0MTE1OGM4ZmJmYmE3NTM4NmRjMTIwNjZiNyBsZWdhY3ktdHJ1bmsKKzEwODU2IGExYmZlNWJjNmQ4ZWE4MWE0NDM4YzA3NTBmMmFhMWQ5NzZiYjM1MjAgbGVnYWN5LXRydW5rCisxMDg1NyAyNDJiM2M5YzViZWMyNzNiYThhZDhlMzM3YTRmYjI2YTlkNjhlMTFkIGxlZ2FjeS10cnVuaworMTA4NTggNzdjMWYxMWQwYThhZmNhZjcwODkwMWQ4NmFmYWViNDJiMjNjOWVmMSBsZWdhY3ktdHJ1bmsKKzEwODU5IDk1ZjdjNTJiNjM5OTQ3N2MyMzQ3ZjgxZTc0OTExOGUwMmJiZTBiZWIgbGVnYWN5LXRydW5rCisxMDg2MCA3YWMxNWYxZTUzMDIxMDhmNDgzMTY1Yjk3OTg4OTY3NGMwNjhmOWVjIGxlZ2FjeS10cnVuaworMTA4NjEgZjVlYmNjN2E1YWIyNmUxZjcxMDU1OTI5ZjE3NTk2N2NiZWE3MjNiMyBsZWdhY3ktdHJ1bmsKKzEwODYyIGNkMmRmZWQwYzQ0YjUzYTQ4YzBmYTUyMWNiMTFhZDQzMjdmZGJiNjYgbGVnYWN5LXRydW5rCisxMDg2MyA4MjJlMDgxMmYyMGMzNTcyZDBlNTY0OTJkNjZhNjdhYzhhYTdkYzAyIGxlZ2FjeS10cnVuaworMTA4NjQgMDU4MTkwYzlhNGYxMjZlODhmNWE0OWE4MGMxMjRmOTdmMTdmYWI5YSBsZWdhY3ktdHJ1bmsKKzEwODY1IDkxYmI1YTgwOTQ4MWEyYjFjOTZmZjVjMDczMmRkNjBhNTNjZGUwODYgbGVnYWN5LXRydW5rCisxMDg2NiA3NTJiOWY1NTU3ODhjMDI3N2MxODEwNzcyMzNjMmU0NGJhY2E3NjE5IGxlZ2FjeS10cnVuaworMTA4NjcgM2EzMTAwMTg0OTQ5OGUzNzRjMDI0MzdmMDY4MjM5NmY1MjhhNzViNSBsZWdhY3ktdHJ1bmsKKzEwODY4IGQ2Yjg2M2QxYmViOTI0NGFjZmI3NWMyZmY1MmQ0MzQxZWMxODE3MjEgbGVnYWN5LXRydW5rCisxMDg2OSA4ZTlkNWU1MTAzZjVkYzE3NWIxYTg2YmY5ZmE3MmMyYjBkODEyZTNhIGxlZ2FjeS10cnVuaworMTA4NzAgNzNhMjU3NzllODM3MmUxMWUwMDAwM2ZmNzViNDc4MTU1M2JhMWI1YyBsZWdhY3ktdHJ1bmsKKzEwODcxIGRlNjhmODNjMTY5Y2E2ODhlNTM4OTIyZjdmNDE3NDk5MDUwODE2YzkgbGVnYWN5LXRydW5rCisxMDg3MiA3NmNkMDM5NzlmY2E0MjNhODcxZjA0OTY1Y2FlNWY3OWFiZWZhMmQyIGxlZ2FjeS10cnVuaworMTA4NzMgYTU4MmQ3MGUzMTJmZWVkOTBhOTA3MzQ5OTBhZjdhZmU3MTA1NThmYiBsZWdhY3ktdHJ1bmsKKzEwODc0IGVmOWI5M2IyYTBmYWEzMzBiNGYzYjc3YmUwMjRhZDQyYmVmNjVhNjQgbGVnYWN5LXRydW5rCisxMDg3NSA3NjY5ZGRmMGU3ZDQ5NTBhN2NhOGYzZTgzZjY1NmRlYzBkNmFiM2JlIGxlZ2FjeS10cnVuaworMTA4NzYgOTNhYTA4Yzc3ZTYwZWIyYmRmZWRlYWUzOWI3YzJkNzc3Mzk5MmQ2NCBsZWdhY3ktdHJ1bmsKKzEwODc3IGQ3YzU2OGU3NzA3YmYxNzk4ZDQ1ZDI2MTA1MzM2YTA1M2YyODNlMDggbGVnYWN5LXRydW5rCisxMDg3OCA3OTA3MWE0ZTBlY2FiNjMxNDNlOTgzZmJiZWVhNGM3ZDk5Mzk1ZDc3IGxlZ2FjeS10cnVuaworMTA4NzkgYzliN2U5MjZmZDg2OTk1ZjE4MTA2MzUyODIyZDBiYmJiNGJlOWM2MSBsZWdhY3ktdHJ1bmsKKzEwODgwIGZmMzFmMjUwMTc0MjUzNTJjMzFmZDgyN2NiYjBkMjg4MzZjNzQ1MjMgbGVnYWN5LXRydW5rCisxMDg4MSA0ZWY3ZDI2MGZlYWM5MzFlYzE4Yjc5ZDFkMzUxZmFiZjZlNWFhNDMzIGxlZ2FjeS10cnVuaworMTA4ODIgNjI3MGM2YmFkODExNmZlMTdhN2VkNGM4MWQ1MjlmMWQwYWI0OTcwYiBsZWdhY3ktdHJ1bmsKKzEwODgzIDcwZjkzZTBjNTgwZWVjYWZiYTI5Mjk3NWE5MDY3NWI2MjVkNzNkNGIgbGVnYWN5LXRydW5rCisxMDg4NCAwY2IwMzk0YzJlZGNmZTE4M2NkNzc3Yzg3YmU4Njk5YjU4YTU5ZTIzIGxlZ2FjeS10cnVuaworMTA4ODUgYzRkZjhiNjYzN2I2OTQ1YjJmOWU4MjM2M2JmNmQxNWM3MDc2MGE5YSBsZWdhY3ktdHJ1bmsKKzEwODg2IDY0Yjg4YTE3ODMyODY5MWNkNGMyNWU3OGRlN2E1ZGZmYjE1Yzk4ZjggbGVnYWN5LXRydW5rCisxMDg4NyAzYzQwYWYyZDFkZTllMTM0YjVlN2RiZDVlM2IxMDcyZmZiYTk2MmVjIGxlZ2FjeS10cnVuaworMTA4ODggNGEzM2JiN2FkZjdkNjFiYjg0NmQyNDlhM2EwMzdlMTBhNDgxZjllMSBsZWdhY3ktdHJ1bmsKKzEwODg5IDA5Njg1N2IwZTRiODVkYmRjZTA3Yzc2OTAyZTFmOTk4NzYzYjk4NTQgbGVnYWN5LXRydW5rCisxMDg5MCA4YTRmZTE5OWI0NWRlZjcyOGNjMmQzMmMxZDgxMzAxZWVkODk1ZWQzIGxlZ2FjeS10cnVuaworMTA4OTEgZjIxODY3ZjgwMzViZDM4OTk1YzJmMWFhZTFjMzdmODA1ZjczOGJkNiBsZWdhY3ktdHJ1bmsKKzEwODkyIGM5ZTNjZThlNzRiNWQ3ZjUxYjRmMDkzYTJhMjY3Y2JlY2JkNmM5Y2EgbGVnYWN5LXRydW5rCisxMDg5MyBkYjhiMTBiN2NjZjIyNDk3NTQ3MTg4MDZmNTA0MTNiMDFhNmU3YWU0IGxlZ2FjeS10cnVuaworMTA4OTQgNDUwNTE2MGE3ZTVjNmNlMTM2ZGYxMTIwMmU5OWE2NjZlOTlkMzFhYiBsZWdhY3ktdHJ1bmsKKzEwODk1IDU1ZmM4ZDkzMzA4NzY2ZjE4OWM5Y2Y2OTEwMGU4MDY0NjE2Y2I5NmMgbGVnYWN5LXRydW5rCisxMDg5NiA0MDY0YjY3Mjk1MzdmMDMxYzA4Nzc5OTc4ZWU2YmE2MzMyMzMyZWY4IGxlZ2FjeS10cnVuaworMTA4OTcgZWNkZDRiNDY4NjI2ODU5MmM4NTNlNzRiNjIwOWE3MGEwZDMyOTFmZSBsZWdhY3ktdHJ1bmsKKzEwODk4IDllYTUwMDMxMTQ5YzIyMDRlN2I1ODg2ZDljMmJmNjMwMDQwYTc1NjkgbGVnYWN5LXRydW5rCisxMDg5OSBmMzk4NDE5ZDUwZjk3NGM1NTVlYjZmMjkyM2RmOTM4NTE0OTJkN2JjIGxlZ2FjeS10cnVuaworMTA5MDAgYjVmZjY2M2VlNzZkOWVjMzA2MzE0MzZhNmUwMGI4MzQ2NjNmZGM0YyBsZWdhY3ktdHJ1bmsKKzEwOTAxIGM4NWUxNDI5M2MyZWUxY2M0NTE2M2Y4NWRlY2ZlMjExNDk0NmNkMDkgbGVnYWN5LXRydW5rCisxMDkwMiAzMDRkNGU0ODg3ZjRjYTYwYTdjNDdmMzM3YjJiYzIyZmE4YzJjMWJlIGxlZ2FjeS10cnVuaworMTA5MDMgZDk2Y2JkYWNiZTcyMjRjOWY5OGI2MjAzMGU5ZDI5OGVjZmJmOGU5OCBsZWdhY3ktdHJ1bmsKKzEwOTA0IDQ3MmU0MjU0MTRkODI0N2ZkOTM3NTdjOWI1NTM1MjExNGM2NzQ4ZjYgbGVnYWN5LXRydW5rCisxMDkwNSAwYTAwZGQ1NzExZTYyMTMxOWY5YWFhZThhYjZlYWUxNmNjOTc0Y2U4IGxlZ2FjeS10cnVuaworMTA5MDYgNzU2ZTJlZjUxYjE5YzYzZmQwNGU4Nzk0OGY1NmFiZTg2NjQ0ZjE0MyBsZWdhY3ktdHJ1bmsKKzEwOTA3IGUyZDQxYmYxYTBmMDRjZWQ3NWQzMzAzZDZlZTE1MzBhZDI3YmQxMjcgbGVnYWN5LXRydW5rCisxMDkwOCAwYjNlNTc3YThkZjQ3YmZmZWY5ZmE1MDU3YzMyY2FkNzgxMjU4YzAxIGxlZ2FjeS10cnVuaworMTA5MDkgZTk2ZTNkMzg3NjExZjAzYTI3Y2JiYjZiYmYzOTY1YmIxMzIyMDAyMyBsZWdhY3ktdHJ1bmsKKzEwOTEwIDNlNjUzZTIwNGFkN2JiZmU5YTQ2YjcwMTdiZjYyMzAwOWNkNGU1NDQgbGVnYWN5LXRydW5rCisxMDkxMSBmN2M1OGVkMjk4MWQxZWIxYmY1MzUzZTY4ZGI0MjRjOTk5MzkzZDA1IGxlZ2FjeS10cnVuaworMTA5MTIgMTJkZGI5YmQwZDMzOTFkNTYzMTRjMDliZDI2MDE3MDkyOGJkNDk0NCBsZWdhY3ktdHJ1bmsKKzEwOTEzIDgyZjAyMWVlY2UyYzc4N2ViYTAyMzNmMTI2ZTY4OWY5OThiYTBjNWIgbGVnYWN5LXRydW5rCisxMDkxNCA5MmMwYzk4YjQyYzUzNjc3OGI1MjNjODg5OTA1NmFiYTkxNTJlNDQ0IGxlZ2FjeS10cnVuaworMTA5MTUgN2NkZmY4YWE4MzE4M2Y3ZjUxZDMxYjYxN2NiZjhlNzU2ZGRlNDk3ZCBsZWdhY3ktdHJ1bmsKKzEwOTE2IGFlNzQ2ZWFiMmE5NjA1NTRhODVlOWU4ODc1NTkxNTEwNzFkYjRmNTUgbGVnYWN5LXRydW5rCisxMDkxNyA3OGViNDBmMDMyODQzY2IxZWFhMTQ0MjBiMDgwNmY0MzEwOWM4OGFjIGxlZ2FjeS10cnVuaworMTA5MTggYTlhNzg4Yzc0ZDZlN2MyNTE1ZTAzYzFlOWY2YWZmNGU3NmI2M2I3NCBsZWdhY3ktdHJ1bmsKKzEwOTE5IGM3YjA0MzEzNmZkYmQ4MTFiMzA4NWM0NDg0MjAwZjk1NmViYTNkNTYgbGVnYWN5LXRydW5rCisxMDkyMCBjMDU5YmJkMTRiMjMyZDNlZmUyNGYxMjVlNDYzYjQxMmIyMGI0ZjZiIGxlZ2FjeS10cnVuaworMTA5MjEgNTM0NjAyNzQ2MDc5ZDEzYzkyOWJmOTE2YjY3MGQzZWU0ZjdjODUzZSBsZWdhY3ktdHJ1bmsKKzEwOTIyIDc3NDljM2UwMzI0YWYwNjZhN2U4Yjg1Y2Y1ZWM0NjE5MGQ2MThlNjMgbGVnYWN5LXRydW5rCisxMDkyMyA5ZTRhZWE1YTY1MmQyMWFkMGI1MWNhMjNkNjBlM2Q4ODNmOWQ5ODBhIGxlZ2FjeS10cnVuaworMTA5MjQgZmQ1Y2VmZGQxZjYxZGNmNGJlNGJiODA0ZGFhZWM2MmJmMzRhZTgxMiBsZWdhY3ktdHJ1bmsKKzEwOTI1IGM1NTBlZTQ5MzViMGM3ODZlZmVkNzc0MGQ4ZDM3Y2I0MmZkYWVkMTUgbGVnYWN5LXRydW5rCisxMDkyNiA2ZjcwY2E3Yzg0ZTY2Y2QzMmQ2M2I5Zjc1YWJhODlmMDJlZGIwMDZiIGxlZ2FjeS10cnVuaworMTA5MjcgMDI0NzE0NTU4NjIwZWJkMzMyZTY3NTBkN2E0ZTdlNTlmYWEzNGE5MCBsZWdhY3ktdHJ1bmsKKzEwOTI4IDU5ZGZhOWViN2MwNzBmZjY1ZWI0YjFkM2UyNDFlNzU1NjAxOGNmMWMgbGVnYWN5LXRydW5rCisxMDkyOSA0ZTY2OGYxYTlkZGRlZjVhMmE0Y2EzZjYzNGM3Y2RjN2VlMGE4YzYxIGxlZ2FjeS10cnVuaworMTA5MzAgYTM0MTYwOTFjMmEyNWEzNjEzMWFlMzgxMDY2MjViMjgzNTJmMzExMyBsZWdhY3ktdHJ1bmsKKzEwOTMxIDM2ZWExM2JhMzEzNjQ0M2Y3MmJlNTI4MzQ2YjJiMDRmZGM1YTIwNjMgbGVnYWN5LXRydW5rCisxMDkzMiA2MTkxMmQ0YWQ1MmY2NzgzZTlmOWIwNWVjMGM1NjY1NzI2NzJiOWY2IGxlZ2FjeS10cnVuaworMTA5MzMgNzU0ZGU2MjFlOGIzMGNlOGNlMmQ1YjE5MWRkOGU3Y2E5MDc4MjMwNCBsZWdhY3ktdHJ1bmsKKzEwOTM0IDg0ZDFiN2NmODE1YTc5ZTkyM2RkZTA0MzA4MjY3YjliODg1NTM1Y2MgbGVnYWN5LXRydW5rCisxMDkzNSA0ZTU5ZDg5MGE0YmRhZDk4YmVlMjEzMzIxNzUxNGMyNTE4YWQ3Y2JiIGxlZ2FjeS10cnVuaworMTA5MzYgMmJkOGQ1MjBmZmFjMDFhNTdlMThiOTU0NDg1MzcxOTVlYzY2NzJjNCBsZWdhY3ktdHJ1bmsKKzEwOTM3IGFmOTI3M2IxMDczYWFhZjg5NzIxYjQyMWY0YjI3ODRmZjY2ZDA2OWIgbGVnYWN5LXRydW5rCisxMDkzOCA5MmM4OGNhNjJkYTdiODEzNjk2ZmViNTdkZWZhNmIxZjVkOWRkYjRlIGxlZ2FjeS10cnVuaworMTA5MzkgYWY0ODg4N2M5NzE3NmI2ZTg1NTMwMDE5NGU5YmQ0YWYwNGM3M2U1ZiBsZWdhY3ktdHJ1bmsKKzEwOTQwIDU3ZGFlMWM3ZWE4NDdiYjk1MTA5MmQ1MTJiYjFkODQyYmE2NGQ1YzkgbGVnYWN5LXRydW5rCisxMDk0MSBmNzUwYjFmZmUzNTI5MmUyZGI3NDVmYmMwZGFmNTI1YTIwNTcxY2ZiIGxlZ2FjeS10cnVuaworMTA5NDIgMjA5NWFlNjkwYWFjYTA0ZDc0MmJmYmE3Yjk0ZmE1ODU2ZjQ3ZDNjMyBsZWdhY3ktdHJ1bmsKKzEwOTQzIDEwMjY3Yzc1NTVhZTY1MTAxNjY4YzY0NmU2ODMwMmZlMjY0NDMyNDMgbGVnYWN5LXRydW5rCisxMDk0NCBkYTA3NjYzZjlmZmY0NmZkMDgxNmQ5YTA2NDE2ODc4N2JlODUwYmMyIGxlZ2FjeS10cnVuaworMTA5NDUgMTMzZjQ1NTRhMjZkNTdjZTU5MzRkODllZmQ2YTVmNzkyM2VjYWI3YSBsZWdhY3ktdHJ1bmsKKzEwOTQ2IDcxNjBlNTI5ZTlhMWViMmFlNmJjYWI5MWE5N2ZmZDVkM2VjNTUyZWEgbGVnYWN5LXRydW5rCisxMDk0NyAwZTZmYmJlM2I2M2MxNDBmNzhjNjk1ZjJiNzE5OGYxNjQ3NTg5NmQ2IGxlZ2FjeS10cnVuaworMTA5NDggNDEyMDlkNWQxZDY0OTBjODA3YmU2Zjk4ZTMwYjRmNDFmNzkzNjE3NCBsZWdhY3ktdHJ1bmsKKzEwOTQ5IDc2MzhlNDU5NDIwNjc1YjZiMDgwNTY3ODE2OGRmMDRiNTA5MDRhNjYgbGVnYWN5LXRydW5rCisxMDk1MCBjMjdjZDVmYzQ2YjUzMmZhZGQ0NDExYWU3ZDJlYzE4ZGIxNTRlNzk2IGxlZ2FjeS10cnVuaworMTA5NTEgOWMzMmNhYzU2MjUwNWQzY2RlMjBlZDlkNGU5NDYxYmIzOTM1MzcwYSBsZWdhY3ktdHJ1bmsKKzEwOTUyIDkzMzg4MmMwZTlmYmEwYTJkZmVkZDA1OGQ5NDA1NmVhM2RhYmM4ZmQgbGVnYWN5LXRydW5rCisxMDk1MyBjODkxODliMDIzNmVjMWYxMzkzOTBkNDljODEyMjc2MTg4OTE0N2IxIGxlZ2FjeS10cnVuaworMTA5NTQgYzU1NWM3MmYwOTBkZDA4NzA1MGM3NGFlMGU2OTViNTkzMDE1N2NhYiBsZWdhY3ktdHJ1bmsKKzEwOTU1IGE5ZDg4YmZhMjRhZjM3MjM4NTAzYWFiZTljZjU5MThlMWM3ZGY3N2YgbGVnYWN5LXRydW5rCisxMDk1NiAwNDlhYTNhOGExNzIwZDE0ZWQzOTg0NGU4ZWQxODNkMDQ0M2Q1M2E1IGxlZ2FjeS10cnVuaworMTA5NTcgZjhjNmNmNWNmYTdkMDE2YzI5Y2UwNDc0ZWE3YmJhMTZmMWY0ZGY4MSBsZWdhY3ktdHJ1bmsKKzEwOTU4IDdmOTViYjJmMTcwNDg5NDM3Yjc0MjE0YmVmMWVmMzFjNzQ1MzIwZGQgbGVnYWN5LXRydW5rCisxMDk1OSAzYTg1YWQ1ZTQxMTZjZDUwNmU1Yzc2NWQyYTRjYTJjYmM3ZWU0OTJiIGxlZ2FjeS10cnVuaworMTA5NjAgNGJhNTg3YWE4YTk4YzljOGI4NGQ5OWYxYjdlMzFlOWZmNGVkNTJmOCBsZWdhY3ktdHJ1bmsKKzEwOTYxIGUyODFkNTAzNjcyNTI5N2Y1MTVjNDUwOWE4ZmZkNmU0NDAyMGU2YzggbGVnYWN5LXRydW5rCisxMDk2MiBkOTNhZTM3NGZiOTk4YWJkYmE2NWM2NjQ3MTQ2NDE2YTg2OTQ1OWU0IGxlZ2FjeS10cnVuaworMTA5NjMgNjE0YTdmZmVlMTEzM2U3MTFjOGMyYmNjNDNkMmZmZjNlNzUzMjQ2MiBsZWdhY3ktdHJ1bmsKKzEwOTY0IDdlM2I3MmQ4YWU5NDYyMDIwNzhjMTYwMzI0OTRlNWNmMjVjMTljNjAgbGVnYWN5LXRydW5rCisxMDk2NSBmNmU5MDBkYTM3ZGI0NTgyNzRmZDE5ZmNmNjNjYjAxMmFmMGFiNTVhIGxlZ2FjeS10cnVuaworMTA5NjYgMmU0ZjE3OGQ3ZTE3NTkzOGM2Mjc3MmJmNTY2NTE3NmExZGY5OTIzZCBsZWdhY3ktdHJ1bmsKKzEwOTY3IDdmOTRiNDk1ODA1NjI5ZWU2ZWI4YzRhMmUzNjg1YzhlNzZmYWRjZjYgbGVnYWN5LXRydW5rCisxMDk2OCA1M2FmY2QyODMyNWVmOTE3Mzc1ZTRmODYyOTZiODlmMjNiODllNGVjIGxlZ2FjeS10cnVuaworMTA5NjkgNTE0NTc3NDBmNWNhZTlkNTdkMjY1YTQ2NjI4ZjczZGU1YTRhZjJjNSBsZWdhY3ktdHJ1bmsKKzEwOTcwIDM2MDQxMzFmOTQyZDY4ZjNhNmYzNThlYTIyZjRmOGMxMzczNWQ3OWIgbGVnYWN5LXRydW5rCisxMDk3MSBiYmI3ZTFkYTQ2ODYyMzUxZDBlNTFmYzM5MGM1ZjZkMjNhMTZjYjhjIGxlZ2FjeS10cnVuaworMTA5NzIgN2QxZGZlNjZmNjRiYzU1MWMwM2I5Yjk1ZThlOTg4MjIwMDQ5Yjk0ZCBsZWdhY3ktdHJ1bmsKKzEwOTczIDAzOGE1YzQzMzU4NjFmZWQ3NTYyYjJmMWNlNmExYzU4MjI2ODNmZmQgbGVnYWN5LXRydW5rCisxMDk3NCBlYjZmNjU5NjZmYjIyYjhmMzcwYjI0YzM4Yzk5N2NkMGZkYTk2NzU4IGxlZ2FjeS10cnVuaworMTA5NzUgMjhmNmIwM2JiNjRmMDU4ZDlhNWQ3ZDgwYTMxYzA5OGY2ZDk5NmMyNSBsZWdhY3ktdHJ1bmsKKzEwOTc2IGZjMjk2MjVkZjUzMjU5MmM1NDhlMDVjYWQ1ZDA1ZmQ0N2RiNTI1YjggbGVnYWN5LXRydW5rCisxMDk3NyAwMzYzZjE5ODg3ZDE1YjJlNjBhZjNmOWZlYWE2ZDM0Njc5Yzc0Yzg5IGxlZ2FjeS10cnVuaworMTA5NzggMWQ4ZGFiNWFhN2QxMGUyOTM5YzU4NGQ1OWIyMjMyMGU0MmNhN2U1MyBsZWdhY3ktdHJ1bmsKKzEwOTc5IDBmOTFjMGJiYWNjNTdjNDQyYmI0MDkyN2NmNmEyMGQ4ZmMzM2M2YjUgbGVnYWN5LXRydW5rCisxMDk4MCA2OWM5YmJiNjlhYWIyNjdmZWY1OThmZmJjMWJhMWMwYWQzZjA3NTdkIGxlZ2FjeS10cnVuaworMTA5ODEgMDQ0N2VmODQ4M2M4Yzc1NGU3M2QxMDQwNzU0ZGE5ZmNlOTFiZWM5MiBsZWdhY3ktdHJ1bmsKKzEwOTgyIDkyY2Y3ZjQyNzcyMzBlOTA5M2ZiNTc3M2RhMjJlZjg4NTdkY2VmZjkgbGVnYWN5LXRydW5rCisxMDk4MyBiYTMxMmU3OTBiMmEyY2I2MzlkYWY2YTJkN2E2ZjA4ODdhYjU4MGU4IGxlZ2FjeS10cnVuaworMTA5ODQgYjhiYmNjMDA5YTZhYjM1ZGZiYTc3MjExMjE2MmYxNTMzZjM4ZWFlYSBsZWdhY3ktdHJ1bmsKKzEwOTg1IDg1ZTY4MjA0ODJmZjgzNWNiMTljYjExODI0ZmY4MTQwNTZmNDkzZGMgbGVnYWN5LXRydW5rCisxMDk4NiBkZTExYTg4YWM0OThlYjRmMTI2ZDVkOTZlYjI4YjE0MWY3NGI5ODllIGxlZ2FjeS10cnVuaworMTA5ODcgZTgyZDAyNzdlNjUzYzA5ODVmNTBmZjE5MzExMTkzZWVhYmJkZDYyMCBsZWdhY3ktdHJ1bmsKKzEwOTg4IDZiZjViODdhZjAyZjlhNjBjODRlMjIxYzU1YmM1YTIwOTg0NTIzYjIgbGVnYWN5LXRydW5rCisxMDk4OSBmNDgwOWZmMWY0ZGE0ZTZhNTJiY2Y3OWFlOGNkMDhkZDQ5Y2M3MzNmIGxlZ2FjeS10cnVuaworMTA5OTAgZGVkNjlkMTJjYzY4MzVlYjA0NzIzMWMyOTQ1MTM3NWEzZDE1MjczMyBsZWdhY3ktdHJ1bmsKKzEwOTkxIDhlODIwNzE2Y2YxMjNlMmMyNWZlNjZkMjY5OTMxMTNmYTJjMTRkZmUgbGVnYWN5LXRydW5rCisxMDk5MiBkZTBmMGMzZWQ0MjRlNmE2NTM1MjA4ZjViYWM0Njc5NTRhMTBiZmVjIGxlZ2FjeS10cnVuaworMTA5OTMgNjk2NjJmMTZhODM4OTY0MzY1MGE1NmI5MjZiOTA1MGYwNzk4YjY3NyBsZWdhY3ktdHJ1bmsKKzEwOTk0IDRkZWQ0MDE4YjBlYjNjZmYzMmMzNGE1NWFmYjdkMzgxZTBiNWU2YmIgbGVnYWN5LXRydW5rCisxMDk5NSBkYTliZjllZWQxZmM3MjIyYWY1N2Q0YjA3NmIzNTU4YTAyNjE2NDIwIGxlZ2FjeS10cnVuaworMTA5OTYgMWVmNDBkNWFjY2UyMmI3NjZlNDBiM2RmZmY1MTQ2ZTVhYWJjYjJlNCBsZWdhY3ktdHJ1bmsKKzEwOTk3IDE2YjNhMTIxZmY3NzJlMjRkZmRmMmIyOTZlNmYwNjU0MWFlYTE2NGQgbGVnYWN5LXRydW5rCisxMDk5OCA4MWUyOTQ3N2QyYTRjMGM3NjJhMzMyZTRlODM4NGMzMmMwMDU5MWU4IGxlZ2FjeS10cnVuaworMTA5OTkgNTBlODdjMDljMjM2NmMzMzM4YmEzYmQyM2U0NzhmYWU2ZTYyNTExMSBsZWdhY3ktdHJ1bmsKKzExMDAwIGI1Njk4MWMwZDYxZWJiMmI4MWZmMzg5MzUwYmEyNmNjZDRmMWU1NmIgbGVnYWN5LXRydW5rCisxMTAwMSA2MWE5YzUyOTQ1NWE5MDgyYmQ5ZTJkYmRiMmYxNmY0Y2RjOWJmNzg3IGxlZ2FjeS10cnVuaworMTEwMDIgYjk0MDE1YzBjODM3YWZlNmQwZTc1NWQ1OTI1MWUwNzYwYTM3YjI1NCBsZWdhY3ktdHJ1bmsKKzExMDAzIDA2NGY4NWVlOWJlNWIwNzk1YTE5ZjkzMTNhYWYxNDM2ZmY4YjUzYzMgbGVnYWN5LXRydW5rCisxMTAwNCA0ZTRmZDk1NGRkYTBmYmNjYzQ5MDIzN2RiMjg3ZDg5NWE5NTAzZGE1IGxlZ2FjeS10cnVuaworMTEwMDUgZDk5OTIwYzBiZmIwMTVlNzFjY2RiNGVhMzliOWYwNjkxYzQzMDViMiBsZWdhY3ktdHJ1bmsKKzExMDA2IDQ3YmYzYmI5NTU2ZTIxZjhjMDZhOGJkYTQzYmUyMmNhOTY1ZTNhN2QgbGVnYWN5LXRydW5rCisxMTAwNyBlYzI2ZDUxNDJlYjQ0MDIxMzQ4Y2QzYzczMDc4NjhiMWVlMjRhZTkwIGxlZ2FjeS10cnVuaworMTEwMDggZDdlMzllZWE3NmY0Y2UzODZkNDY0Zjg4YmI2ZTU3ZTFlMGM0NDQyZCBsZWdhY3ktdHJ1bmsKKzExMDA5IDVmMWU0MzFhMGE4MjY4ZjczYWFiODFhNjNiYjRhZTliOGZlOGNhMjQgbGVnYWN5LXRydW5rCisxMTAxMCAzYzhiMTQ5YjQyZmYzYTY1NmU2OGIzOTIwYmEzZDVjOTJlYjljYjE1IGxlZ2FjeS10cnVuaworMTEwMTEgMDM2NmRhZWZhMjNjMjY5NzBkMjQ3YTViMWMzOWM5NWZjZmJlMjJlMyBsZWdhY3ktdHJ1bmsKKzExMDEyIDQ4MjliOGZhZjJiNDJiNGM4ZTg0ZTNmYTM1N2JmZjMzZjUzYTRkOTcgbGVnYWN5LXRydW5rCisxMTAxMyAxOGE5Mjg5ZGY5OWExZjVkMzhjNDkyMjc5MTBmN2RiZjI5YWFhMTQ3IGxlZ2FjeS10cnVuaworMTEwMTQgMjE2Njg2NmFmOTJiYjE2Yzg1NGEzNDg3ZWFmNjljNmIxNzU2MDcyMyBsZWdhY3ktdHJ1bmsKKzExMDE1IGU1ZDA2YTYwMjQ2OWNkOWRmYmQwNmU3YmE2YmRjMzQyODYwMTJmMGQgbGVnYWN5LXRydW5rCisxMTAxNiA1ZjViNDkyZDE4MDQzYmE2MTRiZGM3MmNkN2QwZmI4ZGZjNGMxNTdlIGxlZ2FjeS10cnVuaworMTEwMTcgZjMxY2U0NjIwMWM5NTYwMTc4ZmQwMDEwNGY4ZDM1NDk0NjVjYjczMyBsZWdhY3ktdHJ1bmsKKzExMDE4IDE4YTRlMDMxZDdjYTBhNjg5ZmFhMjI0MGJiNDc3ZDE1MDhiYTI0MWYgbGVnYWN5LXRydW5rCisxMTAxOSAzYzQwNjNmMGE3OGZhZjI3NjY1Mzk3MmY3NjE3Zjk3OGI3NmNjOWMwIGxlZ2FjeS10cnVuaworMTEwMjAgMjEzNTg3YjNiOWQwYWY3MGU1ZWEyODYwZWMxYzA1YzNjMDRiYjlhMiBsZWdhY3ktdHJ1bmsKKzExMDIxIDUwOTlmNDRiYWYyNTVjMTk3Mzk3MzJjZjJiZTE4OGU3ZWY3ZjMyMWUgbGVnYWN5LXRydW5rCisxMTAyMiBmNGI2MzZkMTVhYmNkOTVjZDdiOGNjZDhlNDJmYzVjM2I5NTU0Y2FjIGxlZ2FjeS10cnVuaworMTEwMjMgY2YwZmFhZjNjMDRiNmRlYmQwNjM5YjAxMTE2YzMwOTA2OTAxNDU0MSBsZWdhY3ktdHJ1bmsKKzExMDI0IDVjMmYxOWQxOTY0M2EyODliYzc2ZGI4Mjg5Mzg5MTBiZTVkNGJmMjQgbGVnYWN5LXRydW5rCisxMTAyNSBlOTUxYmYyZDdkOTNiMjNiMDMyZGRkYWFhNDgwNTNjM2EwODE1NTE1IGxlZ2FjeS10cnVuaworMTEwMjYgMzVhMjE1MWZiMWMzZjYyNDc1YTI1YTUzYjcwMGVmMDYyODVhYzZiZSBsZWdhY3ktdHJ1bmsKKzExMDI3IGU2MzM5M2Y1MzY3MDIzNDgzOTIzNjc5ODVhOTQxMGQ0OGExMDlmOTEgbGVnYWN5LXRydW5rCisxMTAyOCBkYzhkYWE3NDhjNDA5MzQ1MWFjOGE1MmI2ZDBkYWU2ODAwN2IzNjFhIGxlZ2FjeS10cnVuaworMTEwMjkgZDg0ZjEyMDljYmE1Mjk5ODQ2OTM2NzdlZmEyZDQ4N2IzOTI2MDc1YyBsZWdhY3ktdHJ1bmsKKzExMDMwIGZhYzMzNzE2YTIxODM0ZjllNmY0OTU4NTQ0NTFhMGUxMTQ4ZDM5MTAgbGVnYWN5LXRydW5rCisxMTAzMSAxZWExOTViMTQyNDU5OTg0Y2Y5NTBhMTczODUyZGNhM2YzZjczMTFjIGxlZ2FjeS10cnVuaworMTEwMzIgMWU5ZDY1ZjljYTUzY2YzNzljNDAzMzA5NWYzZDYzMGYyNWI2ZDA5YSBsZWdhY3ktdHJ1bmsKKzExMDMzIDU4OWI2NDEzNWVlNjUxMjdmOWQ1MzVlM2UzYThmZjdlOTVmMGE5M2IgbGVnYWN5LXRydW5rCisxMTAzNCAyMmEwNzI0YzZiYWM1MWExYWIzZGMwYjAwYzI0YWRjNzM4NDgyZTg3IGxlZ2FjeS10cnVuaworMTEwMzUgNDM1N2I0ZWI1YzE5YTY2MTAzNDRlZmU5OTVjYzExN2NhNTkzOWU1MiBsZWdhY3ktdHJ1bmsKKzExMDM2IGQ3Y2U5YWUzNjJhOTA0MTgxZmUzNDViNDgzM2U4MWQxODZmMzIzNzEgbGVnYWN5LXRydW5rCisxMTAzNyBmNmQ4MjMzNGNlYjE1NmM2MDNlNGJkMmZiNDM0ZWFmZTEzNWZhZGY0IGxlZ2FjeS10cnVuaworMTEwMzggZDBlZWM5NmI0YzU2MjNkN2FlMGNmN2Y4MTg2OWYxNGQ3NDRiODhkNiBsZWdhY3ktdHJ1bmsKKzExMDM5IGIwMmM0M2EyMDFhZTVkZWMwMzFhOTE4Yzc5MGE3NzE3NGRkZjZlMmMgbGVnYWN5LXRydW5rCisxMTA0MCA4ZTYwZmYwNjQ2MDk5MzQ2ZDNhY2QxN2MxMGVhMjQyZTE3ZTc5ZTEyIGxlZ2FjeS10cnVuaworMTEwNDEgOTIyNjc4MzhmZWI5Y2FlNzJmYmVlNjkxYmMzOGQzNjIwZDUzZGNmOSBsZWdhY3ktdHJ1bmsKKzExMDQyIDQ2ZmQ2MzBkY2U2MzMxY2I1ODFlM2U2MDM1MmFiMTg2ZWUzZTg1MjggbGVnYWN5LXRydW5rCisxMTA0MyA4OTczZTcwODVjZjQ5Y2QzYzg2ODg5M2I4YmZmZjUwMjJmNGIxMWJmIGxlZ2FjeS10cnVuaworMTEwNDQgZmY5YWRiNTdiOGI1MWIyOTkzOGZmMjk2ZWJmNjU1ZTQ1ZWQzNzM1YiBsZWdhY3ktdHJ1bmsKKzExMDQ1IDQxOWVlOTVkZjJkODhmNWQ5MjA2N2FiNmQyZTRkNGRlNDFkM2JiYjEgbGVnYWN5LXRydW5rCisxMTA0NiBlODdkMjJjN2RlM2MzYzk4MzhiMmM2NWViZDhiOTA4NDMyN2VkZWIwIGxlZ2FjeS10cnVuaworMTEwNDcgMTllODAxNmNkMzhjZmU2Y2FiZWVmZGQzNjc0MjhkNzZmMWQyMjRjNyBsZWdhY3ktdHJ1bmsKKzExMDQ4IDZlOGIwZTc1NGE3ZjM3MDliMmQ0NGRkMTIwNGNiMjVjMzI3MmUzODEgbGVnYWN5LXRydW5rCisxMTA0OSBiYzg2MTlhZjA5MjNiZTE2ZjUyNWRkOGEyODYyMjBjZTc4Nzg0MTc5IGxlZ2FjeS10cnVuaworMTEwNTAgODcxNjgxNmUwODU5NGY0MDg5NjFiZGE0NzU1NjgwN2M4YTdlYWQ1MyBsZWdhY3ktdHJ1bmsKKzExMDUxIDQ1MDA3NjA2OGIyMmFlZTRkNGU0M2NjYTM3ZjY0NzVjYTFhZGZmNjggbGVnYWN5LXRydW5rCisxMTA1MiBiZDY5NWRlMThlY2YyM2FkY2JiNWIyZTk3ZmMxNDdiOTk3ODA5ZDU5IGxlZ2FjeS10cnVuaworMTEwNTMgNjdhYTk5N2ZiYjBlMTRiMjEzNzIzMjQ1MTUxYjI1NWVkMjZhMWFiZiBsZWdhY3ktdHJ1bmsKKzExMDU0IGVhOGYwZjVhYjAxNTdlOWNhZTliODc4YzRjNmMwYzFmZDQyN2MxM2UgbGVnYWN5LXRydW5rCisxMTA1NSA2MDUxZjJlNDM1MTc2OThmNDU0MmZlYWM5NGU0ZTg2ZmQxMmNhNzIzIGxlZ2FjeS10cnVuaworMTEwNTYgMTEwZTk3MzM5NzQwZWI0NWY2ZjljOWFiNjE4YTEzYjc3NjJjOGJjOSBsZWdhY3ktdHJ1bmsKKzExMDU3IDk0Y2U3NWY0MzQ1MmY5ZGI1NmYzNjY4ZTFkODVkMTY4NmNmZDJmZDIgbGVnYWN5LXRydW5rCisxMTA1OCBhMzM5MjU0NWQ4NjUyYzhhY2MxZWY2MWVkOTZkYjk2NmQxYzU3MjdlIGxlZ2FjeS10cnVuaworMTEwNTkgZjBmYWFkOGQ1OTM3Y2UzZDlhODUzM2FkZmRjMTZlMTU1NzNjMjU2ZCBsZWdhY3ktdHJ1bmsKKzExMDYwIDJiMDQxMTA1OTYzMDIzYWZlMzVhZjVkNThiMzRlM2Y3YzhhZWFjYWMgbGVnYWN5LXRydW5rCisxMTA2MSBiMWIzNWY1MGYzZmE2YTQwZGQ3MTRhNjNhNGUxZWJjZmY2MTU5ZDg2IGxlZ2FjeS10cnVuaworMTEwNjIgMWNhNjg5NTAyNGQ5ZmVlYjhjY2VmN2NiNTYxOTJkMGY2MjBjM2QwNSBsZWdhY3ktdHJ1bmsKKzExMDYzIDIyMTY2N2Y4OTA2NDg2YzA5NWRiOTUzMmY4M2M3N2FlMWY3YzMzYWMgbGVnYWN5LXRydW5rCisxMTA2NCBjMzQ5NzAyNjUyMGQ3YTA4N2NlNWU0OGM5ZWRiMDJlZDIwNmE1NTVmIGxlZ2FjeS10cnVuaworMTEwNjUgZThhZGViNWNkMmZiN2I3OTcwYmVmMDQyMjg5ZGQ5MmEyYmNlNjhhZCBsZWdhY3ktdHJ1bmsKKzExMDY2IGNiN2ZjZmI1NjI3NTRjN2EzNmE5YTBjNjQ4ODM2ZmVkNWYxMjBkZTEgbGVnYWN5LXRydW5rCisxMTA2NyAxZTVlOWRjNmY5OTM5NDg0YzZlYzEyMWI0MjRiN2QxMjY2ZmQwYTg3IGxlZ2FjeS10cnVuaworMTEwNjggYmRmZWY4ZTczNDU3MjMwOTlkNDQxMGUxNzI0YzAwN2Q4ZWZlMWM2MSBsZWdhY3ktdHJ1bmsKKzExMDY5IDE1ODFjOTMxY2IzNWE2NTQ4YjU3NWE3ZTIxYzYxMjYyZjQ2MDY0ODUgbGVnYWN5LXRydW5rCisxMTA3MCA3NGExMDBjYjdhNjQzYjUxYzkyYjc4NzJlMjAwYWIxMzM1N2IxYzE4IGxlZ2FjeS10cnVuaworMTEwNzEgOTdkYzZhYTUzMmU3MjE0ZDRlMDI5ZmZjMGU5YTMwNzY4NzdiOWE1YiBsZWdhY3ktdHJ1bmsKKzExMDcyIGUxZmUzMGYzMjViOTkxNWQyMGE2ODc3NWRkMWQyZjEwYTQ4NTE3MGIgbGVnYWN5LXRydW5rCisxMTA3MyAyZjQzYjYxYTk4ZGY1YWUxOWYyZWE3YTM2ZjY5NTAzZGUwNTRlMGQwIGxlZ2FjeS10cnVuaworMTEwNzQgZWNmMGQ1MTUyOWFjNTlkNTM0YzFlMjUwZTc0MDA1NGU2OTQ5ZmI4OSBsZWdhY3ktdHJ1bmsKKzExMDc1IGZkMWY0ZWUxYjMyYTYxM2Q1ZjM3YjU4MDZjMWJmODNkNDFmYTAwN2UgbGVnYWN5LXRydW5rCisxMTA3NiA1ZDc3N2JlYTU0MzUxN2NkZGNlY2YyYmQwYjJmYzcyZjU4MDE1OTA5IGxlZ2FjeS10cnVuaworMTEwNzcgNjM1YzNkOTRhOTQ4MjE1OTQ0NTkyMDI4OTljMWI4OGQ4MTgwYWQ5ZCBsZWdhY3ktdHJ1bmsKKzExMDc4IDEyNWYyMWZkZThjNDA2NTVlMTdjODJiYTA3MTFhMGEzNDNmZTYzMWMgbGVnYWN5LXRydW5rCisxMTA3OSA3YmM3MTQxNDRiOThkODRmZjhiZjIzMWM3NGZlMDQxM2Y4MzhhZGM5IGxlZ2FjeS10cnVuaworMTEwODAgZWFiYjgzODFiZmM3NGFlZDhlMDk3MjIwYzM0NTUxOTRmYjlmYTk5OSBsZWdhY3ktdHJ1bmsKKzExMDgxIGQ0YTY4OGNjYjkzNzAxYzMxYjIyYmYyYWE4MmY1OWJhYTg4NTE1MTcgbGVnYWN5LXRydW5rCisxMTA4MiAyODM2MDJmMzAwNDMyNDFkMWM0ZjUxNjEwYjVjMjgwOTc3ZGU3MDI4IGxlZ2FjeS10cnVuaworMTEwODMgMDE5OGIyZjZiMWM4M2JiNTYyNWQxZjE3Njk3MDQ0NTJjMWU5Njg1OSBsZWdhY3ktdHJ1bmsKKzExMDg0IGNlMzYyYjliYTgzNjFmZTc1ZjVmZDA2ZDk3ZmJkMDgxMGYxOTlmNDkgbGVnYWN5LXRydW5rCisxMTA4NSBjMDQ0OTc3MTQ4ZTkwNGRjYTQxYzE4NGQ5ZjkxOTk1YmI1NDk2YmFiIGxlZ2FjeS10cnVuaworMTEwODYgZDFmMzkyY2RmY2VhNmQ3ZmMzNWUxYzQ3ZDkzZTdkMmM3MDYxMWY1NiBsZWdhY3ktdHJ1bmsKKzExMDg3IDNjOTZmYzg0NmI4OGJhM2ExOTQ0NWZkYTJjY2I2Y2UzZjk2NzgyMjIgbGVnYWN5LXRydW5rCisxMTA4OCBlMDE3MzcxYjdlZDFiMzJkYzY1NzQ1NGMwODAwZWI4MmNmMzE5MjA4IGxlZ2FjeS10cnVuaworMTEwODkgY2MwZmRlNGRkZjQ0ZWFlNWVhMmFkNmFjOGY4YTcwZTY3NzllYmFlOSBsZWdhY3ktdHJ1bmsKKzExMDkwIDQ1ZjlkZmZkYmEzZGMwOTMzY2UyYTFmZmIyZjdmMWE3OWM2OTVmNDcgbGVnYWN5LXRydW5rCisxMTA5MSBjZTI5NWJmYWNlZjM3Y2E2M2RhMzgyYjM3ZWE0NTExYTM4OTQxNWQxIGxlZ2FjeS10cnVuaworMTEwOTIgNjZmMDU0MDY1NmEwZTRhNjFmMTVmMWUzZThjZDAzYzdkZTNjNjAzMSBsZWdhY3ktdHJ1bmsKKzExMDkzIDA0ZDU5ODczNzBkZTJlZWVjMDg5NzAxOGVmYTQwMjc0NWMyNGYzMmEgbGVnYWN5LXRydW5rCisxMTA5NCAxYmJmYjkxZjhlODg2ZjI3YjdkMDNlODY5ODEwNmQ1YWExYmY3ODc3IGxlZ2FjeS10cnVuaworMTEwOTUgZTNkM2JiYmQ5M2YzNGMzYzE4ZTM1ZmE2ZjcwOGY3ZjdmYWFkODU4ZiBsZWdhY3ktdHJ1bmsKKzExMDk2IDY0ZjBjMzE4OGU3MDdhZTE1Y2FhZDczYTYwMzI4ZDA0OTM5MDI3MTIgbGVnYWN5LXRydW5rCisxMTA5NyBlNzgyMmI2NGEzM2QzZDNlY2JmMzMyOTZiMzgxOGRkZTU3MmE4MzI3IGxlZ2FjeS10cnVuaworMTEwOTggMjQxN2YxN2ZhM2U1ZmQyYzgwZDViYjdhY2MxOGFjYzA3YjViZjQyOCBsZWdhY3ktdHJ1bmsKKzExMDk5IDQ2YjQ3MmVjYjBmOTBhNTE4YTBlY2ZkZDBjNTczN2E2ZTA1M2U5YTkgbGVnYWN5LXRydW5rCisxMTEwMCBhODA3NTUzMWUyMGQ2MGJhMTJkMzM3NjljMWVhYzMzY2UyNGMyYmFlIGxlZ2FjeS10cnVuaworMTExMDEgNmVkNTAzZDljM2Q1MmNhNmJkZDA5N2IyZjE0N2I0NzFkYjU4MDRhNSBsZWdhY3ktdHJ1bmsKKzExMTAyIDBhM2M4YzIzZTFkYTJhNDkwZWM0ZGE4N2ZkMWYzMzhkZTEzZjk1YTYgbGVnYWN5LXRydW5rCisxMTEwMyA5Zjg0YjkxOTk1MmU1ZGM0ZmY0MGE5ZjgxZGQ2ZDFmYzQ3N2VjMTllIGxlZ2FjeS10cnVuaworMTExMDQgZjA1Nzc1MWNlZjYxOWM3Mzk1YmU3ZjBmYWQ0OTUyNzE2ZjQ2MzM4MCBsZWdhY3ktdHJ1bmsKKzExMTA1IGJkYTVhYzlmNjRlOTRlYmJlMzRiMGM1ZmQ3NzU1MTNjODEzZjk0M2IgbGVnYWN5LXRydW5rCisxMTEwNiAzNzFjMzEyNzY3Y2M5NjA4M2JmMzFmN2U4OWFkYTI0MzkyMGZiNmYxIGxlZ2FjeS10cnVuaworMTExMDcgNTFkY2JmOGEwYjkyYWI2MGRlMDViOGNhZWQyMjlhZGE5ZWI4NjI2OSBsZWdhY3ktdHJ1bmsKKzExMTA4IDI2ZjQ4MmQxNjE0MGJmZDQ2YjgyNTY2MWI1NmM3MDEyNDg2NTU0M2EgbGVnYWN5LXRydW5rCisxMTEwOSA2ZWQyY2MyNzkzNDZmZDcxMDRmOTEyMzYyMWZkZGQyMGM5NjAzN2VkIGxlZ2FjeS10cnVuaworMTExMTAgYWVhNjg0MWFiODk4ZDBiYTJlNTE5MzUwYTg2ZGNjYmZlN2JhYmY4OCBsZWdhY3ktdHJ1bmsKKzExMTExIDIzOTQ5MmIzNGY2ODJkNWNjYWRkYWQ5YmZjZWUxYjg4NjIxOThjNGIgbGVnYWN5LXRydW5rCisxMTExMiBhOTM5ZDRlMTRhOGQzMjQ1MGRlNjdkYWM1YjY0YjhhOWY2M2Q5OTdhIGxlZ2FjeS10cnVuaworMTExMTMgZDg2NzMzNjc2ODE1ODE1MjNjNGEyZTE0ZDk1YzM5N2Q1OTM3OTMyMiBsZWdhY3ktdHJ1bmsKKzExMTE0IDZkNzVhNDQzNDdhMjAyMTUyYmVlMzJlYmMzNmI5M2Q5M2M2NmNlMWYgbGVnYWN5LXRydW5rCisxMTExNSBjY2RlYmI1ZWQzM2EzOWIyYjI0MGU0M2QyMzhkNjMxNGYzMmY1ZjZiIGxlZ2FjeS10cnVuaworMTExMTYgMTE3MTM4MWZhMDFjOGE3NTBjMzIzNWJkZGU5OTNiYTkzNzc3ZjU1NiBsZWdhY3ktdHJ1bmsKKzExMTE3IDU3OThjZTNiZmYzNTRhMmUzZWJjNTE4NjU2MDE1NDc0MGM3Y2NjOTYgbGVnYWN5LXRydW5rCisxMTExOCBkY2VjOTgzNTc2ZDUxNGZjM2ZjMmIyMThmNWZmNzEyYTY4NzQ2MmFmIGxlZ2FjeS10cnVuaworMTExMTkgOWYxZTk1Y2RmYTE3MzE0NWVmOWNhZGE4NTdlN2I3ZmY4NDAwN2ZlMiBsZWdhY3ktdHJ1bmsKKzExMTIwIDFlMTIwYTVkMmU5MzQ1NDVlZGJiNjM2MGJhNjcxOWExNmQ4NzhlZjQgbGVnYWN5LXRydW5rCisxMTEyMSAwMjdhMWRhZDEzNTMyZmI2OTBiZjJjODIxZDg0YmU2ODFjYjcwMjk2IGxlZ2FjeS10cnVuaworMTExMjIgOGU4NmE3OTdlNTk2YzhjOWIxMGFjYjk5YzU5NmVhY2VlZDVhNTJiNyBsZWdhY3ktdHJ1bmsKKzExMTIzIGI0ODBlNmVkYmMwN2JkZjY5Mzg0ZTdiYTc0YzljMzg2NTYyNGNmMWQgbGVnYWN5LXRydW5rCisxMTEyNCAyYmZiMTIzNTViMTAyYTliNjI0NjlkZTVhOWI3ZTRhZTIxODFkZjlhIGxlZ2FjeS10cnVuaworMTExMjUgZDQ5Y2JlYzU5Mzk1YzI4ZGNlMmEzOGQ1M2JkMzEwMTIxM2RkZjQ4OSBsZWdhY3ktdHJ1bmsKKzExMTI2IDlhZTkxZTkzMDdlMGFlY2M1NjhjNTk3ZGY5YTVhMGNhZDlkNGUzMTEgbGVnYWN5LXRydW5rCisxMTEyNyBhZTBiNmMxYzllOGQ2YTNkZmIyMjM0M2ExYzIxNzQ2NjViZGIwOWI4IGxlZ2FjeS10cnVuaworMTExMjggZTgzYjM1M2QwYTFjZGFhZTg0Nzc5ZjRhOTk2NGQ4NWMxYjdhMjc3ZCBsZWdhY3ktdHJ1bmsKKzExMTI5IGEyYmVhZWRmMGFlZWYwYjY5NDUyNWVkZTk0ODAzOTM1MzNhNjIyYzEgbGVnYWN5LXRydW5rCisxMTEzMCA3NzUxODgxNDBmZTFmYWJkYzVmMTYxNTM1MWMzMGZlYjZiMDE1Njg0IGxlZ2FjeS10cnVuaworMTExMzEgOWFmOTVkNzI3MGRmZWY1NWNjNmFmNzhiMTdhNmU3ZDRiYWMyODQ0NiBsZWdhY3ktdHJ1bmsKKzExMTMyIDNiZTkwNjQ2Nzc0MDk1YTNmMWI2MzIxNGVhOTdiNDJmNmM2NDdlYWYgbGVnYWN5LXRydW5rCisxMTEzMyA0YmE5YjcwY2E1NmUyNGY2M2E0OWQ3NmE1YzEyY2MxYjVmNWQzNThkIGxlZ2FjeS10cnVuaworMTExMzQgOTdhMTEwOGIwZWIyODE1OTExMTQ0NDYyNDc1YTljOWEzMGQ1YjI1ZCBsZWdhY3ktdHJ1bmsKKzExMTM1IDJlYjljMjFjMjJmN2U5NTE1NWVlN2RmMjUyMWYwZmZkNWE5NmRjMTIgbGVnYWN5LXRydW5rCisxMTEzNiA3ZDRhMzg2YmVkM2ZjNTM5MmRmYWU4MmUwNGE1ZWNlZDRiMGMzMzhhIGxlZ2FjeS10cnVuaworMTExMzcgZWQwYTM4Y2JjM2U2M2Q3MjhmODBlYjNjOGE4ODIwNmFmYjc2N2NkNCBsZWdhY3ktdHJ1bmsKKzExMTM4IDllNTM2ZGQzZGM5N2YzOTk1N2E0MTllY2Y1MGUyOTEyMTY1YmQwMTMgbGVnYWN5LXRydW5rCisxMTEzOSBhYzQzZTIyNDY2OTViZWM3ZWViNTYzZDVhMTI3NzNhNDlmN2QzODU5IGxlZ2FjeS10cnVuaworMTExNDAgMWU5M2ZhMDIxNDA1NGI5NWNkMzIzNDRlOWUwN2I2NzNkM2FiZTgwZSBsZWdhY3ktdHJ1bmsKKzExMTQxIGNlNTRiNTQ0OGM4NWQ3NWFhNjExYzUyMzgxMDBlMzJmMWE5ZDIyM2EgbGVnYWN5LXRydW5rCisxMTE0MiBkZTc1OWFjYTEwYjI1Mjg5YmZmZDBjNTM1ZmJlZjk3OGVmOTUwNmY4IGxlZ2FjeS10cnVuaworMTExNDMgMzBmYmYxOGFmMjllOGFjOTVjZDc1MTkzMDYyMTAzYTcxYmRhNGYxZSBsZWdhY3ktdHJ1bmsKKzExMTQ0IDc0ZjM4NWVlNDRjYmJlZjgzMThkZGE2MzE5ZjAxOTNhZjU0ZWExMjUgbGVnYWN5LXRydW5rCisxMTE0NSAyZmRkZTc4NGQ4NDlhZTExMTNiY2UzOTI3ZGFmNDkzNjMyYWU3YzUyIGxlZ2FjeS10cnVuaworMTExNDYgODU2OGFhNDk0NGEwMWYxYTlhOTkwNTlkNDFjYWZjODVjNDNmM2RhYyBsZWdhY3ktdHJ1bmsKKzExMTQ3IGY1OTQ3NzhhNTZhZjk1NDVmMmQzYWJkOTRjYTQ2ZDk5MmM3ODZkYjcgbGVnYWN5LXRydW5rCisxMTE0OCA2MjQ1YjgxOWJkZDg1YzIxNWJjNzQ2OGViNmU1NzFkYjExNmJmODRhIGxlZ2FjeS10cnVuaworMTExNDkgM2FkMWJmZmJkYWViNDIwNTkxNjAwNDRiOWI3MGNmMDNhODI1MGQ2NiBsZWdhY3ktdHJ1bmsKKzExMTUwIDgyODExYzZjYjU4ZjViYjI5OGJlZTdmN2ZiNTFjMTI2M2I5MWE2OTcgbGVnYWN5LXRydW5rCisxMTE1MSAyYjJmZjVhODEzOTFhMjY0MDIxOGM4Y2QzMmUzMGMxN2RmNTY0NTA0IGxlZ2FjeS10cnVuaworMTExNTIgMDdlNDczNzBmY2I4YjliZDkyMTQyZDdiZTM1ZWEwYjM0NWEzM2ZjMyBsZWdhY3ktdHJ1bmsKKzExMTUzIDc0NDRmZTM4ZWFkYmQ0ZDk2NWMwMjg4YzczMDQyZWI4NTkzMjRhZGMgbGVnYWN5LXRydW5rCisxMTE1NCBiMWYxYmE0MjliNzNmMDJjMjIwODk1MTQwMTYwMjJlYjViMWI3MjI5IGxlZ2FjeS10cnVuaworMTExNTUgNWE4ZDljZTkwNjMyYjhkNGIwNzZmMmZiZjU1ZjU0MzQ3OTkyMmEwNyBsZWdhY3ktdHJ1bmsKKzExMTU2IGQ2ZjRlNDFiMmM2YWU4NzdiMDk3MDc1Y2NmZGJlZmUxMjZlYjYxY2IgbGVnYWN5LXRydW5rCisxMTE1NyA0NjllOGY0NTMzNjVhMzlmY2VhMjNmZWI3ZThjMDY2NTI4NTllNDg0IGxlZ2FjeS10cnVuaworMTExNTggN2Q5Njg0MjM4M2JiYTlkMTFhNTA5NjczZGI4YzA1NTBhNjJkZjA4MCBsZWdhY3ktdHJ1bmsKKzExMTU5IDYxNzA2ODNlOThlM2IyN2ZjOTY4ZjM5YmM2NGNmZGM5OTk4NGEzNDcgbGVnYWN5LXRydW5rCisxMTE2MCA0OGJjNDcwMzU4ODE1YTE4ZmZiZDk5NjBiNDk3NDQ5MDUxN2IzZjA0IGxlZ2FjeS10cnVuaworMTExNjEgYmE3NDQ0NjJlOTU4MzFkMjgxOWFhMGYzZDc4MmUxMDRmODYwYmUxNCBsZWdhY3ktdHJ1bmsKKzExMTYyIDQ2OGRiMmI3MTBmZDgyMzIwMDY3NzVlYjhhZDhiZjFiOWYwNzcxMDMgbGVnYWN5LXRydW5rCisxMTE2MyBjZTFlNTkxYjMxMjYzODQwYmE1YjVjYmM5YThkMmM3NWYzODE1NzM3IGxlZ2FjeS10cnVuaworMTExNjQgNmVkNzE1OGZmMjdjY2U0Nzc4MWYxMzllYjRkMGM4NGU2OGJhNjBjZiBsZWdhY3ktdHJ1bmsKKzExMTY1IGEwMzI0YTMwNjhlOTUzOWI1YjE0Njk5N2Y5MDA0OGVkODgyMWYxNGQgbGVnYWN5LXRydW5rCisxMTE2NiAxMDA0NDVhZTQ1ZTM2YmQ5MWFlMWFhOTFjZDg1ZWM3YTFkYzQzMDI0IGxlZ2FjeS10cnVuaworMTExNjcgNzgxNzMxOGVjZDNhMmY2OTk3MGFlMGViMDE4MWZiNmY3ZGM1MmFkZCBsZWdhY3ktdHJ1bmsKKzExMTY4IDU1MmU0MmU0MTcwZWU3MTg0ZmFlM2ZjY2YzYWIyZDU4OTFjOWMzNDMgbGVnYWN5LXRydW5rCisxMTE2OSBmZDQ5ZWQ2NWNkMjBiMjAyZWFhNzZhYzhlZmRjNjczNzU2NjQyYzYwIGxlZ2FjeS10cnVuaworMTExNzAgYTM3MjZmZTM0ZDU4ZWMwNDc2NjZlMjlhZWMxMWQxZTAyNDJmZDE4NSBsZWdhY3ktdHJ1bmsKKzExMTcxIGRlNTQwMTY2ZDczMjhjZjU0MzEwYTgyNWNhNzIzOWNjODU5MzJhYzUgbGVnYWN5LXRydW5rCisxMTE3MiBhMDQ3N2JjODIwYjI3MmRmMTcyMTJlM2NlODI2MmVhMzQwOTIwZjI5IGxlZ2FjeS10cnVuaworMTExNzMgMzVlMWExNDBmZTRlMjAwNmM2MDM1MzBmZTc2YWJhOGM1NDhkYjkxNyBsZWdhY3ktdHJ1bmsKKzExMTc0IGM5NTE0ZWIxZmMwNjI3YWMyOTYzY2VmNzE3ZjIwYmI2ZDRhOWJjZTMgbGVnYWN5LXRydW5rCisxMTE3NSA4YWE5ZDEyNmU0NzMzMDcwMDY5NmQ0NzhlMzM0YmUwMDM0Y2Q0MDIzIGxlZ2FjeS10cnVuaworMTExNzYgZjQxNTgwYjRlZWExNTQyN2ZlMjZiNzgxMjlkOTVmODM3Mzc2ZmE2ZiBsZWdhY3ktdHJ1bmsKKzExMTc3IDZkMjE2OGE5NjQxZmU3NTM3N2E1MjU2NTI0MDcyMThlMGEwZTQzMWEgbGVnYWN5LXRydW5rCisxMTE3OCBmN2I0ZGIwYzViMDhkNTdlNGQzNzg2NjliMTM5Y2IxODdhODBmZTBlIGxlZ2FjeS10cnVuaworMTExNzkgZGM4NTgwNGMyYzY0NTY4OWViYjA1NmYwYWRlYTM5NWVmZDQzODgwOSBsZWdhY3ktdHJ1bmsKKzExMTgwIDdkMTQ3N2NkYTgzZDM3ZWFmNzYwZGM1N2IxNWFjNjI0ZWEwN2JjYmMgbGVnYWN5LXRydW5rCisxMTE4MSBmMTBiNDY5Yzk4MTA1NGVhNWMzMTc0NGNjNWM4YjUyYTY5ZDFkY2VhIGxlZ2FjeS10cnVuaworMTExODIgOTVmMzI0MjcyZjU0OTZjMTM5ZTc4MWVjODAzNzdkOTgwNWMxNTRmMiBsZWdhY3ktdHJ1bmsKKzExMTgzIDc4MjE0ZThjOWViNDkwOGE1YTA3ZTJmNTFjM2UwOWVjMThiYTVhZDAgbGVnYWN5LXRydW5rCisxMTE4NCAyZjI5MDU2MDI2M2ZiMGRjZmM2NzRjN2VjNzVkMTYxN2JiZDg0ZGNmIGxlZ2FjeS10cnVuaworMTExODUgNTA3NTc0NjVmYTcwZGVjZGVhM2E3NGM0MTI4ZTc2ZDRiMWVkYmJhNSBsZWdhY3ktdHJ1bmsKKzExMTg2IDgzYzhhZGFhMDg0ZjY4MThmYmJhM2M2NDI3MDMxY2Y5ZDJjZmNmMDQgbGVnYWN5LXRydW5rCisxMTE4NyA4NTcxYzEyNDZmMDkzZDM5NTk2ZTU3MTFlNTM0YjI1MTczZDcyYmRmIGxlZ2FjeS10cnVuaworMTExODggY2ExYzY2OWJiMDQxNjljYTZmNDgzMGQxN2E5YjlhNDg1NmQ0M2E5OCBsZWdhY3ktdHJ1bmsKKzExMTg5IDRlZGYzNDk1YzY5Mjc2YjE4YTE5MTA1NWZkZGRlN2Q1MWI5MWI4NTcgbGVnYWN5LXRydW5rCisxMTE5MCBhY2Y0OWM5ZGVmN2RkYjU0MjUxZGNiMGI0NGNhOGY0ODJkOGFiOTIzIGxlZ2FjeS10cnVuaworMTExOTEgMGUyNTYzYzBlYjBkNGE2YjhmZjY3MWFmNGQ4NjY3ZjBiMDQ3ZWYyMyBsZWdhY3ktdHJ1bmsKKzExMTkyIDIwODQyN2FiNzU2NDViMTM1NWFmYjVkYjg1MWVlYTBiNGUwOTdjYzUgbGVnYWN5LXRydW5rCisxMTE5MyBhZTZiNDFkYzY1MjAxNmFiYTk4NGI5YzhhYTEzYTg0MDhkYjcyMDc0IGxlZ2FjeS10cnVuaworMTExOTQgNzk4M2Q4NmI0OGFmNzMyNjE1ZWZiOTJkZDUwMDAzMDNmYzk1NWE1MiBsZWdhY3ktdHJ1bmsKKzExMTk1IGVkOGY0ZTJlYjExYTFhYTc4YThiMmM5NGRmOWQ3MTVlMTAzOTc2N2QgbGVnYWN5LXRydW5rCisxMTE5NiA5NzMxZDhhNmI0ZjNkZjQ5ZmY0N2RjM2U2ZDdiMjliYzhkM2M2NTc1IGxlZ2FjeS10cnVuaworMTExOTcgYzc1MGM3YTIxZTAzNzg4NGNlZjU1NDMwMzA3MjljNjVmNjA2OGQ2NyBsZWdhY3ktdHJ1bmsKKzExMTk4IDc2MGRjZjE5NzA0ODEyNjhiMzMxY2E2NDcwYThlYTNhY2MxMWViNmUgbGVnYWN5LXRydW5rCisxMTE5OSA5NDZkNjM5NzdmYTQxMWQ1ZjA4MDM5MjFkYzI3Zjg0YjI2MzU0MTQ3IGxlZ2FjeS10cnVuaworMTEyMDAgMDI4ZWFmYmNlOGFjNzIxZDRhMzIwNjk5NTNhYzJlM2Q4NzUyZjRjMSBsZWdhY3ktdHJ1bmsKKzExMjAxIDgxNzVjNmUxZTYxMzFhOTU0NWQ1YjQxMGUzYTFmYmVhMDZmNDMyNGUgbGVnYWN5LXRydW5rCisxMTIwMiBlMGQwNDc0ODQ5ODAwOTc5ZjA4YjY4NTk2ODczNjM3ZjMxMTVjY2QzIGxlZ2FjeS10cnVuaworMTEyMDMgZDdjYTQyOWVmMWFiNWZiYTkyMzk0ZTE1OGU2ODEzMzJkMzViZWIzNyBsZWdhY3ktdHJ1bmsKKzExMjA0IDhhMjk0NzZhNTljNTQzODgzYzMxNjY3MWIyMDRkZDlmMDFjYzFiM2QgbGVnYWN5LXRydW5rCisxMTIwNSA2Nzk0Mjk0ZWIwMTQ5ZTk2ZTY3ZDE0NjBlZWM0MzMxOGU5MjYxM2YzIGxlZ2FjeS10cnVuaworMTEyMDYgNWQ2YmY2MGNiNzM2ZDFlMzVjNDYyNjU0YTU0M2ViYTVlYmFhNGZkMiBsZWdhY3ktdHJ1bmsKKzExMjA3IGY3OTc2ZTAyYjg3MzQzMjczZTQyYjQwMmQzY2I2ODZiYWYzNzZlOTIgbGVnYWN5LXRydW5rCisxMTIwOCA3NGVhNGRmZGE4MmQyNDFmNmQwOThmZjY1MWExNDNjZGI1ODJiNDBhIGxlZ2FjeS10cnVuaworMTEyMDkgNTNiNTJhMzNkNGJhNjQwZGM1OTcxOTk2MGVhYjcyNmJlZDI0YjY2YSBsZWdhY3ktdHJ1bmsKKzExMjEwIGQ1ZjQ4NTFlNzYxMTNiZTI1OWFhNGYyNmY2NDY2NTlkMDgzZWY0NjQgbGVnYWN5LXRydW5rCisxMTIxMSAxOTA3ZDEwYTIzMjhlZTA5ZjVmOWFhOGQzMTM5YWZjZDQ3NzUzYzQzIGxlZ2FjeS10cnVuaworMTEyMTIgOGEzMDZkZmQ5ZjMzM2UwNTI5ODVhYWFkMDM0ZGFlNjQ2ODc3ZTdmZCBsZWdhY3ktdHJ1bmsKKzExMjEzIDc1MTM3Y2ZlZDk1NGY3OTY0NGJlOWJlOTA0MjU2NGY0YTZkNTI5MzIgbGVnYWN5LXRydW5rCisxMTIxNCBhODA0MGI5NDE4NjQ5ZDlmM2VjYjFhOTMzYTFiYjFiMDdjMWQwZDRkIGxlZ2FjeS10cnVuaworMTEyMTUgYWVhZmFmMzgyYTRiZWM0ZGQ3MWQwMzdjZjU4YWQwNTc2MjZhODAxYiBsZWdhY3ktdHJ1bmsKKzExMjE2IGRkYWFjMDZlYzMyNjZmNTM5OGEzZWI3YWY3YjI3NDkzMzQxYzVkYmMgbGVnYWN5LXRydW5rCisxMTIxNyA4MDc3NmVhYmQwMDVmYmI4MTVkNjQyM2NmMTU4MjhhYmMwODkyZWMzIGxlZ2FjeS10cnVuaworMTEyMTggNmMyMGNhNzIzMTgwNDc4N2FmZTY4NjQ4NzdhMTEwZjI2Mjc2YWQ5OCBsZWdhY3ktdHJ1bmsKKzExMjE5IDhkMDU0OTU0NzA4YTJmMDUwYjk0YjJmMWU4ZTk1ZjFkODc0OTI2ZTYgbGVnYWN5LXRydW5rCisxMTIyMCA3ODFhZDMyZTdiMWZmM2M1ZDZmMzk0ZWEzNmVjZjFhMjk3NmUyYWE0IGxlZ2FjeS10cnVuaworMTEyMjEgMWYwMjBmNzk5NjdkOTk1OGQwOGMxZjZmNjgyMTUzZmE5MWRlMDY1OSBsZWdhY3ktdHJ1bmsKKzExMjIyIDc0ZTAzMTNjZDgxMGUzNDVmMDVlMjNmYmVlMjAwODM3ZWZkMTQwYjYgbGVnYWN5LXRydW5rCisxMTIyMyA0MzQ2NGIxYzg4MGVhOTZmMmU3ODA4YmVlYWIwNTI0ODFkYjZkNTVjIGxlZ2FjeS10cnVuaworMTEyMjQgNzNhZmU3N2EzOTQ3YmYyZWEyMjAyMmQ3ZmMwZjQ5MWM3NzIyMWZhZCBsZWdhY3ktdHJ1bmsKKzExMjI1IDJhMzBhODE4OTRhZTBjYzQ5YWIzMmMzN2U1MDJmNzc4NTgyZjY3YjUgbGVnYWN5LXRydW5rCisxMTIyNiAxZDU4MWE2ZGZlZWUxMTY5MTU4NWUzMjhlZGEwYmNhNDA2MmIyY2I2IGxlZ2FjeS10cnVuaworMTEyMjcgZTFiY2YwYmQzNGQ1OTMzOThmNmY1MmFlNjY4M2Q0YzM1YjcyNWJkYSBsZWdhY3ktdHJ1bmsKKzExMjI4IGNhMWI5MDYxNDllNjIwOWM4NTM1OTkzZDQ3NmFmZTQ5ZTZhZTc1MTcgbGVnYWN5LXRydW5rCisxMTIyOSBjZDk5NTIwMzIwYTMxZmQwYmE0NWJiOWQ3Yzc1ZDQyYzYxODEzYmMzIGxlZ2FjeS10cnVuaworMTEyMzAgZWFiZTU3NGRjOTIxYTkxMGI5MDdmZmM4ZTA1NDI5ZTFjZWE5MTdkMiBsZWdhY3ktdHJ1bmsKKzExMjMxIGQ4NGMxMTNlZmVkYmY1YTQ0NTQ4ZTI5MmU5MGNiZWRhNDY4ZWMzNTQgbGVnYWN5LXRydW5rCisxMTIzMiA1ZWM4OTc5YmYxNzY4NTQ3ZTM4YzY2NWRkNDBjNTcwYjJkM2UwNWMyIGxlZ2FjeS10cnVuaworMTEyMzMgOTk3OTMzMDJkMTBkM2UxYWUyZjkxMTE0ZDhhZmMwM2UwNjY4MmVjMyBsZWdhY3ktdHJ1bmsKKzExMjM0IDRlMDVlMzg0NDVjZWIzN2I4NDZkZjlkOTNlODg4Mzc5ZDVlMDY2ZTcgbGVnYWN5LXRydW5rCisxMTIzNSA5ZTA4OTA3MGQ0YzVkMGU4MjRiYWQ4NWY1N2RhNzkyMTc4NTI2NDdkIGxlZ2FjeS10cnVuaworMTEyMzYgZTg4ZDRlNmU0NjIyYjQzODFmNzJjMGY3ZmY0ZWQzNDM4ZDJhY2E4OSBsZWdhY3ktdHJ1bmsKKzExMjM3IDcwMWE4NWIwNDRiMzQ1ZjUwZWZjNjY3ODA2ZDM4YWNjYjY3NmFiNDQgbGVnYWN5LXRydW5rCisxMTIzOCBmYmE4NDU1ZGNiNTRjNDBlMGNhMjIyZDU2MzQ4M2EzNDI3ZjU4NDQ1IGxlZ2FjeS10cnVuaworMTEyMzkgYjhhNzE5YzhhMGE2MDE3YTBlNDBjM2Y3ZmQzN2ZjODgxMDJlZjViZCBsZWdhY3ktdHJ1bmsKKzExMjQwIDY4ZmU2Mzc1MGY4NGY1MGZlZWQ5YzUzYjEzZTU4ZDQ4YjQyYzg4ZTUgbGVnYWN5LXRydW5rCisxMTI0MSA0YWMyZDQzNWNlM2JiNWJmNWJlYzliZDM0OWIxYzc2YTI1YTRhYjc0IGxlZ2FjeS10cnVuaworMTEyNDIgMmIyZWY4MmVkYjVlYjczNGUxMTY0NjIxMTQ2OTYzNjhlYTU4YjgwMiBsZWdhY3ktdHJ1bmsKKzExMjQzIDg2MWNkMjI3ODM0OGE4MzI5YTQ4YTYwNGYwN2VlNWZjMzgwMzQwYmEgbGVnYWN5LXRydW5rCisxMTI0NCA0MTkyYTczY2E0MzBlYmRmMmUyYTA0ZTgzNTI4MTkzMzMxZjE0ZGU4IGxlZ2FjeS10cnVuaworMTEyNDUgNTVmNzkwYTVmNjRiZmI0NTYyYjNiODcxNzJjMmNmY2U5Njg4NzNhOSBsZWdhY3ktdHJ1bmsKKzExMjQ2IDA3NjYzZGQwZmU4NjU0ODZkYmFjMTQ5NzNmOGZjYWYyYWQ5MDI4NDUgbGVnYWN5LXRydW5rCisxMTI0NyA2MmZhYmUyNDc3YzRkZjdiNDRjN2QxZmQwYTBhMTBkZmY2YzE5Y2I5IGxlZ2FjeS10cnVuaworMTEyNDggMDU4NDE3MDcxYjBlNTI2YmMyM2MyMmRkZmJiNDkyYTJlMjc3ZjllZCBsZWdhY3ktdHJ1bmsKKzExMjQ5IDg0MzRlOWQwMGI1YTVlNDRlNzU2NzMwZjMzZGMyNzgxYThiYmQyMzcgbGVnYWN5LXRydW5rCisxMTI1MCBmYzJhNzAwYjEwMDdhNTJmNTIxN2NkOWU5YThkMzFlZTNhZWVhOWEyIGxlZ2FjeS10cnVuaworMTEyNTEgMDZmODBiY2M5NTY5MTFmMzc5NjE5NzI3OTE0ODYxN2RkMTAxYzI1NCBsZWdhY3ktdHJ1bmsKKzExMjUyIDI1NmE4MGYzOWE4OGZkNzk2MjJiZjI3ZTNhNjRlNWM4YTNiMDllODMgbGVnYWN5LXRydW5rCisxMTI1MyAyZjQ2Zjg3YWE4MGFhZjVjZDNjYmYyMDk1ZDYzNTg0N2ZmN2JiNjIxIGxlZ2FjeS10cnVuaworMTEyNTQgNzBiNjMzZmYyZmI3NWM1NjE0Yjk0MzUxZjEzYjFlOGU0NDM0ZmFkNiBsZWdhY3ktdHJ1bmsKKzExMjU1IDQ1YmU0MGVmY2I5NTA0OTJlZTNjNzMzNjNmYzkzZWI1ODYyZTI2NGQgbGVnYWN5LXRydW5rCisxMTI1NiBlZGJmNjMxZmI3ZTllNDEyNjk5YTQyYjg5NmJmNWIzOGQ5MWFlNDIyIGxlZ2FjeS10cnVuaworMTEyNTcgZDM5Njc4ZDIyYjRhMzNkMDNhNTlmMDdhZmFkOWM2YzI2YjBmNzgxMiBsZWdhY3ktdHJ1bmsKKzExMjU4IDA0ODQxZWVkOThlZjkxNjRiMTVkNmM5ZmFhNTQ3YWY4NzVhODdhNTUgbGVnYWN5LXRydW5rCisxMTI1OSAwMDUyNDU1NWVmMTc0MjgzNzYzYjE3MTA5YTY3ODNjZDVmNWQ0MDkzIGxlZ2FjeS10cnVuaworMTEyNjAgM2ExZGQwMTM3NWUwOTQxNmNhZTVkNWVkZmU4YzdlZGZlMTk5NTI0NiBsZWdhY3ktdHJ1bmsKKzExMjYxIDkxMzgyNzJjMWZlNmVjM2IxZDcxZjdkMDBiMmQ4OTM1ODJmODBjZGMgbGVnYWN5LXRydW5rCisxMTI2MiA2ZDYxZDQ4OWQ3Mjg4OTE0M2M5ODAxMjU5YjBiOWI0MTNhNjMzNzMyIGxlZ2FjeS10cnVuaworMTEyNjMgOWUzMTQxNTQzNmY2MmNkOTQ3N2NiMWY5ZDkxNTk0ZDlkYzQ0MWFhNCBsZWdhY3ktdHJ1bmsKKzExMjY0IGFlM2UyZWFlZjliOTUyNWY2NWJhNjMzMjA2NTg0NTQwYTgyY2UyNTMgbGVnYWN5LXRydW5rCisxMTI2NSA4ZTk0Y2U5Mzk0YmYyNDZlMmNiODgzZWUyNjljNGU5YzU3MmM2Y2M5IGxlZ2FjeS10cnVuaworMTEyNjYgYzk5MDkwNDYyNDc2NmVlODdjMWM1NjNhMTBlNGY2ZjViMjE0YjIwNCBsZWdhY3ktdHJ1bmsKKzExMjY3IGM4NWIzOGQ1OGFjZDhjZjA4YTVlZDM4M2QzNTQ0YTRlNTFlNDc1N2IgbGVnYWN5LXRydW5rCisxMTI2OCA3ZDIzMmMwZTRkZDZjOTBiZjMzOWJlYzdlNjczZDRjNzg3OTU3MTdhIGxlZ2FjeS10cnVuaworMTEyNjkgZDJiZmM4NjU0MjgwYTc5YzE3ZGEyNmM1YWNjMDA0YzcyMDQ4ZDJlYyBsZWdhY3ktdHJ1bmsKKzExMjcwIGQ2NDJlNjc0OGQxMmMzYWJmMzc3ZDg1NTBhZjljNDJlODgyNzBjMGIgbGVnYWN5LXRydW5rCisxMTI3MSBkMzJkYmMyMDI2MTNlMjliYWIzOGNjZWY2ZGY5OTdlNTFhZjg4OTA3IGxlZ2FjeS10cnVuaworMTEyNzIgMTA3NmEwMjgzNjVhMmVkNWJkZmM1MTljMmY5NTdmZWIxYjIxZmQ1ZiBsZWdhY3ktdHJ1bmsKKzExMjczIDMzZDU5MzM2ZTdlNmZiYzU2Nzc0ZGJkMzQ5ZDIwNWRmZmQ1YTJkOTcgbGVnYWN5LXRydW5rCisxMTI3NCAwZjVlMGI0MDViYzJmMmFiNzQ1ZjgzNjQwY2U2NGQ5MjdlNTM4YzA5IGxlZ2FjeS10cnVuaworMTEyNzUgMWY4MDRmYWNmNjM1NGZhMmYyZWI4N2ExNThmZTgxOWFkNWM3YWQxZiBsZWdhY3ktdHJ1bmsKKzExMjc2IDBlMzBiMzViOGEzZmZlMzU2MGEwNWRlNTIxMTg2MzM3NzNmMGRhMWYgbGVnYWN5LXRydW5rCisxMTI3NyBiOGQyYmE1OTcxMWMyMjcwMDQzNjhjOWY5MWJmOWU0NzMwMDhmODgwIGxlZ2FjeS10cnVuaworMTEyNzggNmZiYjU2MDdjZGQ2MDRjNDE0MjI3YzIzZDI2MGYwNjQxNTllMzFlNiBsZWdhY3ktdHJ1bmsKKzExMjc5IGQ1MWQxYTYxYjFjZWY0Nzc4M2VhODdkNjUxNWU1NTczNzY4MDY3ODggbGVnYWN5LXRydW5rCisxMTI4MCBjYTFlNWJjNTIwOWQ4NDcxMjczZTkzZjUyZTQ0OGEzZGJkZTRjZWQ3IGxlZ2FjeS10cnVuaworMTEyODEgNDQ3MjZiMDU4NzAwYWQ5M2ZmMjA4M2U5MWQ3MjFjYzUzZWMxMTJkMSBsZWdhY3ktdHJ1bmsKKzExMjgyIGU4YjU2YjM4NzA0NWFlNzRkZDljM2Y5OGQ4ZDRlOTFjY2FhNWZiNmUgbGVnYWN5LXRydW5rCisxMTI4MyA2MTQ2NDAzN2RhNTNjMmQwNTUyMWY5N2ZhZmMyY2VlM2Y4NDNiY2I4IGxlZ2FjeS10cnVuaworMTEyODQgODFjYjk0MDFhMjFiN2M4NjI5ZTgyNDliMmUzMDk4MzNkZTA2ZGEwNyBsZWdhY3ktdHJ1bmsKKzExMjg1IDRkMThlYmQ0Y2Y0MjNlZjg3YmJiYTc5NjRkYzMyYTRlZDFlOGZlN2EgbGVnYWN5LXRydW5rCisxMTI4NiA1ZDVhNWJjOGRlNWNiNjI4OTQ1ZGE5OWM2ZjEyODZiNDM1MmZjNDY1IGxlZ2FjeS10cnVuaworMTEyODcgYzllNDU3MDVlYzllMTI5NDAwM2JiMTkyZWE3YjY3ZTMzMGI0Mzk4MCBsZWdhY3ktdHJ1bmsKKzExMjg4IDhlOWQyMTQ2YWU5MzAyMTVjMTE2NjEzOTVmMzQ2Njc2N2U5OTgxOWIgbGVnYWN5LXRydW5rCisxMTI4OSA2NDVhMzI4ZTdmZDQ5NDljZjZlMjM0Mzg3NzQzYjI0M2ZlNGEyMGRmIGxlZ2FjeS10cnVuaworMTEyOTAgNzg3ODU5ODVhMmFiNTgxYjRlNTU1ZjhjNWRlZWUzNzFlZDUxZDNiZCBsZWdhY3ktdHJ1bmsKKzExMjkxIGM1ZDcyYmNkYTkzMmE4ZDM2Y2EzNjAwNWI0NWFiYWI4ZmI3OWQ3OTEgbGVnYWN5LXRydW5rCisxMTI5MiA0YWE3NjQ4MGQ4MTI1ODkyYzUxNWFlMWJjMzE0ZjkwZDNlMDQ0ZjdhIGxlZ2FjeS10cnVuaworMTEyOTMgZTU4YTYxNGZiOGU0MGVhYTY3MjEyMTI5NjMyMWI5OWQwOGJhNmUxYiBsZWdhY3ktdHJ1bmsKKzExMjk0IDE0MDY5Mzc0NGEzYzg1M2Y3YjQ0Njk0ZjZhMzc1OGI0MWFjYzZmZjQgbGVnYWN5LXRydW5rCisxMTI5NSBkZDY0OTgzN2ViZDQ4OTg0MjU1NzFlYWIyNDYxZDYxZmQzMWY4Y2FjIGxlZ2FjeS10cnVuaworMTEyOTYgNjczOGU1MzgzOTc3NGZhZTI4NmQ3ZTkxMTBiODYzM2YyZGY1YWQ2NCBsZWdhY3ktdHJ1bmsKKzExMjk3IDg0NjBiZGMzZGJmN2I3ZTZkMzNkNzM5MDQzZGE4Y2ExZjhmZDEwNzUgbGVnYWN5LXRydW5rCisxMTI5OCBkOGI0NjE5ODkyMzhkODJmODNkYWViZmY1OTkzMzVmZjg3MGRmZThkIGxlZ2FjeS10cnVuaworMTEyOTkgMGVkZDM4ZGIyMjg4NDU5NWFhY2EzMTE0Yzc0NTE5N2MyMWE3ZWFkZCBsZWdhY3ktdHJ1bmsKKzExMzAwIDcxZmNjNGNhMGU4YWVkYzkxNjE4YjJiMDEzMjAzYjVlMDUyZWJhYTkgbGVnYWN5LXRydW5rCisxMTMwMSBjMjgwMTEwMDBlZDM2OTNkNjNjMjE0ZDMzMGE0ZjdiMTI1NDIyNWY2IGxlZ2FjeS10cnVuaworMTEzMDIgOWIwZGRhOWE1NThiZDVlZWM5NmU5MzQ2MzZlYjVlMzQ1MTkwMTQ3NCBsZWdhY3ktdHJ1bmsKKzExMzA0IGExYzE2YTNmYTdkYjQwYTM3NTU4N2EyMjM1N2QwZDAxZGViY2JkODYgbGVnYWN5LXRydW5rCisxMTMwNSBiZDQ3ZWUwNjhiODNmYjlmMmE4YjZhOTg5YWI0MGYzZjg4YzRmOTY4IGxlZ2FjeS10cnVuaworMTEzMDYgZjJhNGEyYjYwODYwN2IwYWZjODdjNmJkYmViMGRiMTYwMWJhOWNiZSBsZWdhY3ktdHJ1bmsKKzExMzA3IGIwNDA5OGEyNTZkMDA0NmQ5Y2VhNGNjNDZjODhhOWRkYTA5NjIxYjMgbGVnYWN5LXRydW5rCisxMTMwOCAxMjk4NzBlMjE3OWE5MWQyNzhhZGVmN2FjN2E1OTY5OTc4MGJlZjBhIGxlZ2FjeS10cnVuaworMTEzMDkgNGJmYTUzYmQ5N2JjMDY3NjJlN2MzYjEzMTA4M2M0ZmJhYTJjM2M1MSBsZWdhY3ktdHJ1bmsKKzExMzEwIGRmMTYwMmI2YTJhODYyMTY2MTg2ZGFiNDA3NjBhZDU4NjRkNTczOGMgbGVnYWN5LXRydW5rCisxMTMxMSA4NTMyMTQxY2ZmNGMxZjVkZjZkZDVlNjYzZmVlYjVmMjE1MDJlNmFlIGxlZ2FjeS10cnVuaworMTEzMTIgM2NjMmZhZDRlMDIwZTE3ZDgzZWEwYjBhNzVjMzY2ZmJhMjg0YjAxZSBsZWdhY3ktdHJ1bmsKKzExMzEzIGVlYzRkY2ViNDQzNmFhZTYwNTgwZTdhNjlhYjQwMDA2NWQ4MDQ3ZmIgbGVnYWN5LXRydW5rCisxMTMxNCAwMGE2YmI2NWZmMjkzYzBlMGE4ZDYyM2M1ZTI1NDNjOWI1ZDE5ZDJiIGxlZ2FjeS10cnVuaworMTEzMTUgNzQxZDUwNjE4ZWMyY2FhN2M2NTc4ZWYwOWY1OTk4MDVmNzhiOTAwOCBsZWdhY3ktdHJ1bmsKKzExMzE2IDA0NWU5MDBhNDE5OGUwMmFjYTJkMTgxODg5N2MxYmJhZjVmYzg4MDkgbGVnYWN5LXRydW5rCisxMTMxNyAzMzZjYjUwOTg3OWE0OWMyN2MyNTUyZDc3NjE2YjEwYzUzMzRkMTgxIGxlZ2FjeS10cnVuaworMTEzMTggYjA0Zjk1ZmVkZDUwY2ExYWQ1YjM5MmRhZWJiZjQ3YzFmODFkNzZkNCBsZWdhY3ktdHJ1bmsKKzExMzE5IGYxY2E0MTk5NWU2MmU1MTcyOWZhNmI3Yzc4N2IxNDkyN2ZjMmRlZDAgbGVnYWN5LXRydW5rCisxMTMyMCA5MjlkYjgzODViYTRhNTNlMGJhM2IxZWQ2ODRmNDM2ZjFkZWI2MDM3IGxlZ2FjeS10cnVuaworMTEzMjEgZTVhODMxMTY4NGU0YmRhMzcyYmNmZjc3MDY1MDY0ZjhkZTQ5NThiNyBsZWdhY3ktdHJ1bmsKKzExMzIyIGMyZjllNTA1Zjc1YTFkYTkxY2EyMTdiMDdjMDNiMDM5NzQ1OWY5MTUgbGVnYWN5LXRydW5rCisxMTMyMyA0NGJhZWY4YWI1Yzg5ZDM0YjE0ZjkwODNlY2RlMDE5NzJiZjBmZDI4IGxlZ2FjeS10cnVuaworMTEzMjQgYmQ2ZDk3ZDZiMmFlMGI3NzBiYzgyOTUyOWY0MzUwNGNmN2FlNWQwMiBsZWdhY3ktdHJ1bmsKKzExMzI1IDhhMzcwNTI2ZGUwNmFkM2RiMGQxYzMxNDA1OGYwODZjNDY0OGFkM2IgbGVnYWN5LXRydW5rCisxMTMyNiAxYzdkODYwODcxZDlkMTBlZWRlYjlhY2NiMzYxNjNmOTYxMzk1YjFkIGxlZ2FjeS10cnVuaworMTEzMjcgYjY1ZWE4MTI3NzUyNWE5ZTRkZDI3NjcwNDQ1NDNmOWQzMTJmN2Q1NiBsZWdhY3ktdHJ1bmsKKzExMzI4IGI5MzNmNTg0YTI2ZDAzMTI2NDFlNmMzOGIwZTg1MTg1NzM5ZGZlZDggbGVnYWN5LXRydW5rCisxMTMyOSA3NDUzMzQ1NDU4OTgxYmU4ODBkOTYwNDM5YjEzMjA2NTYwMzYzNDg5IGxlZ2FjeS10cnVuaworMTEzMzAgMDg2NzAyMjUwMTUzNGExZjI0ZDAxM2E4ZDhlMmRmNTliNmZmYjcxMSBsZWdhY3ktdHJ1bmsKKzExMzMxIDM3YzY5MThlZmQzYmNhMTJmZDM1NzI2M2E2NTE1MThiYTkyYTU4NzYgbGVnYWN5LXRydW5rCisxMTMzMiA2MWVmODgxODY5NWJkNDM2ZGYwYzhkYWY4MjQ4MGE0NTdkMzA3MGI5IGxlZ2FjeS10cnVuaworMTEzMzMgYzM1MTUyM2ViYzA1ZWViZGM5YzQ0OTc0MTA4NmFmMGY1NmIzYzVhOSBsZWdhY3ktdHJ1bmsKKzExMzM0IDUzNGExYTQzN2FmM2E5YjhlYWY3MzUzMjM4NjFlMjcyODkwZWQwNmYgbGVnYWN5LXRydW5rCisxMTMzNSBjZWYyMGVjNmYyNDljYzQ2MmQ5YzRmMmZmNzlkYjRkZGRlZTE4ZDgxIGxlZ2FjeS10cnVuaworMTEzMzYgYmJlOWQ3MmJjY2RhMjdhOWRhYTMzZTA1ODgyOTAzZmQ5ZjNiZWJlZSBsZWdhY3ktdHJ1bmsKKzExMzM3IDVmOWRmZjY4MTc5N2ZmOTQwNzk0ODQwM2IyOGMwNjc0ODA1MmI5ZDQgbGVnYWN5LXRydW5rCisxMTMzOCAzNTRjZDI0ZTVkZmU0MmEwZjgyZjAzMDFmNzlhYTAwODc2OTA2MDQwIGxlZ2FjeS10cnVuaworMTEzMzkgZDI4MDQ2MDhiZWNkMDhhMWE0YjVlMjllZGEwYjM5MDUwZDRmZWYyYSBsZWdhY3ktdHJ1bmsKKzExMzQwIGY3ZDRhNTg1ZGEwMTg2YzBiNWI4OGI4MDE0ZTdjYTk0ZjMwZjc2MzEgbGVnYWN5LXRydW5rCisxMTM0MSA1Njc2MDcwNzZkOGY0Yzc2YTI5Mjc2N2JiNDQzOGMzYzJhOTQ4MDZhIGxlZ2FjeS10cnVuaworMTEzNDIgODY1M2UxZjIxOWYxYmQyMjYxZTEzN2M5NmY3MGZmZTEzYmE1MGEwMiBsZWdhY3ktdHJ1bmsKKzExMzQzIGQ4MDhlYmE0YjNjNjUzMDQ4ODBmMGUyZTZkNWIxMjM2NjJiZGJjYTggbGVnYWN5LXRydW5rCisxMTM0NCBlMTQ0NThmMTM2Y2NhZTNkN2E2YjQ5YzE4MTYzODFhZTYyZWMxMTk4IGxlZ2FjeS10cnVuaworMTEzNDUgZTAyNGM2OTYyNWUxMmY4ZWQ5NjY2NTZhNWZmNTNkMDVmYzFmMzUxYyBsZWdhY3ktdHJ1bmsKKzExMzQ2IDgwMTFmMTQ2NjlhODE3ZDRiZTljZjE1MmQzNTMwZDU0NGMzMmFiZDcgbGVnYWN5LXRydW5rCisxMTM0NyA1Y2RlY2FhYTliZWIwZDM3ZGQxZTQ0OWE4MTliZGVhNDEyNGUxZWRlIGxlZ2FjeS10cnVuaworMTEzNDggZjQ1NmY1YWE1NzE4NWEyZDMxYzkyMGE5YzM2MmNlMGJjZTMwNDc2YiBsZWdhY3ktdHJ1bmsKKzExMzQ5IGExZWMzZWMyNjAyZWNhNTgyNmViODBkZjYyMTQ5MDg3NTg5M2I2MDUgbGVnYWN5LXRydW5rCisxMTM1MCBiYjc4Y2MyNzQ2OWFiNGJlODczOGEwZWMwNmZhMTE4ODI2MzJhOTY3IGxlZ2FjeS10cnVuaworMTEzNTEgZjhlMmFkNGNkNDViYzNiMWJkMTE2NDUwOGUyMTJhMGQ2YWZhZTA3MyBsZWdhY3ktdHJ1bmsKKzExMzUyIDU3MDg5YWQ0ZDczYzZlMjBiYWY4NTk2YTI5NWE2NjljY2NkOTY2MGYgbGVnYWN5LXRydW5rCisxMTM1MyAzYmMzZjk0ZDYwNjFlNGYyYWYzNTc4ZDVkZTAwYzZlNmMwNDRhMzgwIGxlZ2FjeS10cnVuaworMTEzNTQgMDVjMTEwNGUwODRiMzE0NjM3NGM5Mjg3OWI2ZGIyNDI1NDYwNDc5OCBsZWdhY3ktdHJ1bmsKKzExMzU1IDg2OGEyNWNmNjUzYmYwNWViMzk3NTllOGE3YTBhZmU3ODFkYmRiZmYgbGVnYWN5LXRydW5rCisxMTM1NiBhYWNiZmRmNDk0M2U1Mjk4N2NjMzVhYWE5NDE5YzcyZjlkYWZkMjRjIGxlZ2FjeS10cnVuaworMTEzNTcgMTA3OTBmMTRkMTNhYmQyNmFhMjI4ZjBjMThmM2JkY2Q1NDk2YTNkMCBsZWdhY3ktdHJ1bmsKKzExMzU4IDcyYjY5OGMzMzI0Yjk5MDVhNDM3MDNiMTI4ZWU3ZWMzOWYzZjFiOTEgbGVnYWN5LXRydW5rCisxMTM1OSBkMzQyZWI0NGQ3YmRkNTRmNzUyOTgwMDY3ODMzZTdhNDk5MjVhZWYxIGxlZ2FjeS10cnVuaworMTEzNjAgZWIwNTlhMzNmN2ZmMzFjOTkyODY1ODc3NWY4YzQ5NjhiOTk4ZjA5NiBsZWdhY3ktdHJ1bmsKKzExMzYxIDgxM2Y1MjdmM2JlYzAxY2Q3YzJkZDk5YzJiNGNlYjBkMzQzYWU4Y2MgbGVnYWN5LXRydW5rCisxMTM2MiAyN2VlMzIzMWRmYTliZWM4MGE4MmI0ZTU1M2Q2MmM4N2YxMjM0MmQzIGxlZ2FjeS10cnVuaworMTEzNjMgYTllYjI2NWQyZjU3MGRlYmZkNGQ5NmQ1NDVmMGQyMjdjNjE1MzE2MiBsZWdhY3ktdHJ1bmsKKzExMzY0IGZlYmNhNmIxODI3ZGRkZGEzYTNkMjliZjk2ODI1Y2Q2MzQyMTE5ODIgbGVnYWN5LXRydW5rCisxMTM2NSBiMjhiODRlNmE0Mjk0MDVhMzFkZTcyZTlhNTFmYjMzMDU3MDZjOGY1IGxlZ2FjeS10cnVuaworMTEzNjYgZjg4ZjQwMjQxN2YyOWYzYzQzYWE2YjM3NjRlMmQzMjZlYWIzMjYyOSBsZWdhY3ktdHJ1bmsKKzExMzY3IDg1ZGNlMzJhY2Y5ZDc5Nzg4YTljZmI5YjZjNGZjMDIwN2YxMzE3NmQgbGVnYWN5LXRydW5rCisxMTM2OCBjMGE5ZWQyMWRmYTA1NjAyY2Y3NGE5OTQ4MGI1NmE5MTIwNjlkMmY1IGxlZ2FjeS10cnVuaworMTEzNjkgMDRhNDkyZjExMGRiZGM3MDZjYjZmOGQwM2NmYzZmZGE5ODgzODUzYyBsZWdhY3ktdHJ1bmsKKzExMzcwIDhjMDUyNGE3MTI0NGZkMGVjYThlYjZlYTBmYzJkMjhjZmQ5N2JiOWMgbGVnYWN5LXRydW5rCisxMTM3MSA5YTA3NWEyZWRiMWY1NDJmODg5MWI5NjE0ZDI5NmU3MzAyMzZmYjRlIGxlZ2FjeS10cnVuaworMTEzNzIgMzQwMTIxMmU1NGZjMzgwNWNiNjdjOTk3MDE0MmI1M2MwOWUzYjFmZCBsZWdhY3ktdHJ1bmsKKzExMzczIDMxYzA2MzUxN2MyMmVjMzRjN2UyMGQwMzM0YTVjODE5YmQwNGVkNGEgbGVnYWN5LXRydW5rCisxMTM3NCA2MGI0YTYxMGRjZmNjYWE3M2I3MDY2YTFlNzAyMDhhY2MyY2E1NDU0IGxlZ2FjeS10cnVuaworMTEzNzUgYTcwODMyOTVlYjM4ZWFjMDBiZDFmZTQ5OWZjMTNkYzQzZTFkZjEyZSBsZWdhY3ktdHJ1bmsKKzExMzc2IDA5MDYzZWVkYTJiNzAzZGE4OWMyMmI3NmM2MDdmM2I4ZDMyNWYxN2QgbGVnYWN5LXRydW5rCisxMTM3NyA3NjRkZTczMWM4MDYzZmE0M2M1NjI2OTk3YWNkOTFlMzI1YTJkMTM1IGxlZ2FjeS10cnVuaworMTEzNzggOWI0YmMzYjhiOWQ0Y2QwNWU4MDFjZmY4ZTEzOGUzNDEwOTUxNmRlYSBsZWdhY3ktdHJ1bmsKKzExMzc5IGQyOTVhNTE4NzRhNmFmYTJhZjIxN2ZhYjliMGYyMjdhMzU0NzJkNjcgbGVnYWN5LXRydW5rCisxMTM4MCA5ZGI4YjVlYTZiMjEyMjA2OWQ3YzY2YmIxMDY5MDM5Y2I2NjhlNGFlIGxlZ2FjeS10cnVuaworMTEzODEgNDkyMzYzZDZiYzk0NTExODRjMmVmNDUzMzQwZjFlMWNlN2ZlZDA5ZSBsZWdhY3ktdHJ1bmsKKzExMzgyIDM4NTQ0ZjgyOGQ3NDA4ZTI3ZjllM2Q4OGUwMjRjYTRjMGZhNjU0YzMgbGVnYWN5LXRydW5rCisxMTM4MyA2ZGMwYTlkYzViYmI5MWE1NGMzOTEyMmJkNDU3Y2I5NTE1OGJkN2Y5IGxlZ2FjeS10cnVuaworMTEzODQgZGRmNzEwYjdlNmViNmZmYjUyMDg4MTNiNDE2ZWU0YzY4M2Q0MGZlYiBsZWdhY3ktdHJ1bmsKKzExMzg1IDZmNzNhZTFjZjkzNDZhNzE2OTZiZGQ1ZmE1OTNjMWUyMDM2MmM2NWIgbGVnYWN5LXRydW5rCisxMTM4NiA2ZDhiOTJjYWY4Y2RiNTJlMDY4Y2NjYzdhZWI1NTQ1MmUwMDE3YzZiIGxlZ2FjeS10cnVuaworMTEzODcgZDQxZmY1YjE5MWQxZDExNmI4N2JkZDMwN2RjNTliMTAyZjNmZDVhZSBsZWdhY3ktdHJ1bmsKKzExMzg4IDI5ZDg0N2M0MjhmOWRhNzE5OTBjNDkyYWJlZTdjYWY0OGUzNmJjNDcgbGVnYWN5LXRydW5rCisxMTM4OSA5ODAzNTU2YzFhZTdjM2ZlZWVkYTFjMGVlNGViODg4ZWY0ZWNlYzg5IGxlZ2FjeS10cnVuaworMTEzOTAgYTViNzFhOGExYWI1ODY5NjJjNDY2MGViYWJlODNkN2NiMjg1ODk3YiBsZWdhY3ktdHJ1bmsKKzExMzkxIDdkNjgxMzUyMWY2MTM1OWVjNzZiMjkwYmE3MzUxZWJkN2ZjZWI2OTcgbGVnYWN5LXRydW5rCisxMTM5MiA4OWU2NWE5NmE3ZDNmYTgwNTUzNTUzNGYwYjdkOWU1NDRhZTVmYzgwIGxlZ2FjeS10cnVuaworMTEzOTMgYjFkMWQ4YzAwNzFiYTdjZDczNGI3YjFkNWZjMTQwM2Y5NWUyZGI2NyBsZWdhY3ktdHJ1bmsKKzExMzk0IDlhOTg0Mjc2Y2M1NjVjYTJmZDZmNjViNmIzNGYzNTIzMTk2NGI2YmUgbGVnYWN5LXRydW5rCisxMTM5NSA0NTliZGE5NDBkYWEyNzgxNGY3OTk3YmZhNTQ2MTIzZjA0YjQwMTY3IGxlZ2FjeS10cnVuaworMTEzOTYgZDZiNzM5NjI1MjliYjY2MTRmNjNjMjVlY2VmM2NhNzYxMmJlYzdiOSBsZWdhY3ktdHJ1bmsKKzExMzk3IDlhNDA1NGI4NDg1ZmY0ZWFmNjZjNGYwYjcwMDdkODk3YzQ0Njg0MmIgbGVnYWN5LXRydW5rCisxMTM5OCA1NTJjNmIzYWJhM2RlNTA1NGJiZjQ2OWVlNDZmNDRmNTZiMWI5MWRiIGxlZ2FjeS10cnVuaworMTEzOTkgNmI2MzNkZjQxZTU5NTFhYWNjNGYwYmY4NzU2OTVjYmEwN2MyMjM0MiBsZWdhY3ktdHJ1bmsKKzExNDAwIGU1NWE3OWZmODIyOGY5MjJhOGNjYzZlOGFiOTZiNjkxMzZjNGQwNzggbGVnYWN5LXRydW5rCisxMTQwMSBhY2ZmZmUxNDYyOGU0NDhiZmViMDhiNWE4ZDM5MjExNDlmNDg2YTRjIGxlZ2FjeS10cnVuaworMTE0MDIgNjEwNjgwZTNiOTI5M2ZiNmNkMWQzMWQxZGE2MDUwM2UzOWFjYjBmYyBsZWdhY3ktdHJ1bmsKKzExNDAzIDAyN2YzZWVmNmU1YTc5ZWVjNDQyODYxNTAwMTEzOGQ5NmU3MTNhMmIgbGVnYWN5LXRydW5rCisxMTQwNCBkMGY5M2ViYTliYWFkMGM0YmFiNTlmMzdhYjJjY2Y0OTJkYTUyYjM0IGxlZ2FjeS10cnVuaworMTE0MDUgOGU0MTkwNjg2M2JlN2JiNDdkMTEzZmU3ZWEwYWI0OWZiMmQxNjRjMiBsZWdhY3ktdHJ1bmsKKzExNDA2IDI4YmM1ZDhlOGRjYTM2YjMzZjAxNGYzMjUzMmQwZGUyZTdjNzJhM2QgbGVnYWN5LXRydW5rCisxMTQwNyAwOTU0YWQ0YWNkZmRlNWM4Y2Y1ZDU2M2IwZDA5YzUwMTYyNjczMzQ5IGxlZ2FjeS10cnVuaworMTE0MDggYmU5MzU4NTFkYzUwYzNkZGFmZmZjYzgwOTA2YjRjOTkwYTAzOTIxOSBsZWdhY3ktdHJ1bmsKKzExNDA5IGFmOWJmODRmYmM1ZWE0MmI5YTYxMzg3YWFkOTFhNzUyMTM5MWU2MDQgbGVnYWN5LXRydW5rCisxMTQxMCA3M2Y5YTFlOGFlNTJjMDVhNTQ4N2E2MTE1YmVlNmQxOTUwZGNjMTI0IGxlZ2FjeS10cnVuaworMTE0MTEgYTgyNDlhNmIxYjU4ZTQ3ZGRlODMzMjM5MTM4MzE1Yjc5M2FkODc1MyBsZWdhY3ktdHJ1bmsKKzExNDEyIGJhOGQxYmM5OGIyZDgxNTlkOWZkMGY3YTA3YjQ2NThlNDE2ODU4NmEgbGVnYWN5LXRydW5rCisxMTQxMyBjNDVhMmQ5MTFmMzE1NjZmMzNlM2UxNjdlYWI4Y2QyNGQzY2ViZDM0IGxlZ2FjeS10cnVuaworMTE0MTQgZGFlMmYyZWY5MDE1YWEzZTM4YjcxMGNlZDUwNDg0ZWRmNjU4ODBjMiBsZWdhY3ktdHJ1bmsKKzExNDE1IDBiYTgxYjk5ODhlZWZlZDFkNjEwMTA3ZTJlZGVlNzYxOGE3YWEwYjcgbGVnYWN5LXRydW5rCisxMTQxNiBkYzZlZGZkNGJhZTViZmIzM2U1ZGEyNzA5NjM2ODdlNWJjNGUyZDVjIGxlZ2FjeS10cnVuaworMTE0MTcgMjBiODNjYTA2Y2U4YTE4NzM2M2U0Y2VmZjEwNTM4NTFhODkxZGFkNiBsZWdhY3ktdHJ1bmsKKzExNDE4IDJmOTM2YjdhMDlmOTRmMTgwNGNhY2E3YjcxNGU0ODNjZGQ0NDVkZGEgbGVnYWN5LXRydW5rCisxMTQxOSA1YjczZDViYWJjNzhlOTFhYjU1MDVlYjg2NjZjMTE4MTIyNTk1ZTcyIGxlZ2FjeS10cnVuaworMTE0MjAgMTk3YWM1YWQzMGNkZjM2MDkzODc1MTkzMGExNTE3YWJiYzA3MmUyYSBsZWdhY3ktdHJ1bmsKKzExNDIxIGI0ZTJiMmNiNjViMWJkMTA1ZjdmY2IyOTVhMmFjZTk5MjhmMzZkMDYgbGVnYWN5LXRydW5rCisxMTQyMiAzNDc4ODRlYzUzMTgxMzdjZTJiN2E0ZjhiYmJhNDExNTU1ZDQwN2Q1IGxlZ2FjeS10cnVuaworMTE0MjMgMmQ3NzUzMDg1Mzg1OTJkZWE4ZGRiOTI5Njg5YTIyMTBkOGFlYjYzNyBsZWdhY3ktdHJ1bmsKKzExNDI0IDQwMDg5ZTU1ODMwOTBjYWViYzMwOWU0MzZhN2QwYThjZDNhYjFiN2MgbGVnYWN5LXRydW5rCisxMTQyNSBmZGE0NjNjM2IxNzY3ODk3ZTg1MDcxYTQxNjY0ZGE5NDQ5NjgzYjEwIGxlZ2FjeS10cnVuaworMTE0MjYgMGYzMzE4ODNjYzE1ZjA1M2VlOTdlZDljNDZiNTIxYWYxNjE2ZThhZCBsZWdhY3ktdHJ1bmsKKzExNDI3IDNiMDI5MTY1NWUzMTYzMTJhYmNlZWI3ZWJhY2NkNTVkOTQ4ZjAyYTEgbGVnYWN5LXRydW5rCisxMTQyOCA3NjAxYTdlOTU4M2RlNWRiOTA5M2E4YmIzOGY5NTAwOThiYzY5ZWY3IGxlZ2FjeS10cnVuaworMTE0MjkgNTBhZmEyOGFhNGI5MTljOWU2YzJkNmE3NWZkZDY2ZjRkMmIwN2U4NSBsZWdhY3ktdHJ1bmsKKzExNDMwIGM5MTgwOWNkNjdlNTQxYmU2NGE4MGRhMjJlNDUwMzJiM2UxN2YwMjggbGVnYWN5LXRydW5rCisxMTQzMSA3Y2Q0MmM4NzhmMTYxOWIyZGU0ODZkNmI3ZGFhMzkxN2JjMzdjMzZhIGxlZ2FjeS10cnVuaworMTE0MzIgMGE2ODkyYjFhNGFjMjgyOWNmOWJhYzJmMTdiZTc1OGE0YTEyNzAwOSBsZWdhY3ktdHJ1bmsKKzExNDMzIGNmM2NlYmE3ZWZkZGVkNjI1N2E5NzY3Y2ViYzY1ZDdiOGY3ZDg1NmIgbGVnYWN5LXRydW5rCisxMTQzNCA4YWNjNzJhODEzMTk5OGY4MDU2NzhmM2IxYjVlODg1Y2JmNWUzYmQxIGxlZ2FjeS10cnVuaworMTE0MzUgY2I3YTE1MDY5MTlhZjRmNzdiNzA3M2Q4ZjE2YmMwODhmMzRiMzRiYyBsZWdhY3ktdHJ1bmsKKzExNDM2IDk5MDE1Mzg1M2UzYmIxZTc5Nzk3YWZjMzljNGVhODdhMDc1NTdlOTUgbGVnYWN5LXRydW5rCisxMTQzNyAzODRmZmVkMjUyZTkxZmQ4NDg4OGViZTVlZGVkNDhlZDk2ZmU1MTI1IGxlZ2FjeS10cnVuaworMTE0MzggYzI2NTkwYjFjMzk2YjU3MGVmMjk2YWYzODJlNjAyZGVjYjNiZWRlNyBsZWdhY3ktdHJ1bmsKKzExNDM5IGFjMTg4MWM0YmE2ZDlkMDZhOTZiNzFjMTE2Mzk3YjIxNDYwOTBhZmEgbGVnYWN5LXRydW5rCisxMTQ0MCBjNzlkZWZiNWEzOWMxYmQ3M2MzZDYyYWE3YTBiMmExMWY4OTJhM2I3IGxlZ2FjeS10cnVuaworMTE0NDEgMjQ5Y2Q0NDMzY2YwOGViZjJiODY5NTI4MzIwMTQ3YzViNDJlN2NmZSBsZWdhY3ktdHJ1bmsKKzExNDQyIGExZGVhZjA0Mjc3YmJiOGEwZGE2ZTNjZTc1ZWE2NDM1ODM1MjhlMTAgbGVnYWN5LXRydW5rCisxMTQ0MyA5NjE4YTg2ODc5Y2FlZmFhYTdjYzAzNzZkMTA4ZjU1MGJhZDNlZTBlIGxlZ2FjeS10cnVuaworMTE0NDQgZTc5NThlOGM3NzdhNzg0YjljMGM2NmU2MTljOTUyN2VjNjQ2ZWVhYiBsZWdhY3ktdHJ1bmsKKzExNDQ1IGVjZGQ5NmRkYjAwMzVmN2JhYTcxM2ZjYjQyNjY2NjQ5ZGE1OTM1NjcgbGVnYWN5LXRydW5rCisxMTQ0NiA0YjY0ZjEzMWFhNGQ4NTM0MjNmNDMxMjc2OTkyYTcxY2UwNDQ5NWI0IGxlZ2FjeS10cnVuaworMTE0NDcgOTlmZmUwYTM4YTFjYWQzOGFiZjU5NTViN2Q1MDg0YWM5ZTAwMjhiZSBsZWdhY3ktdHJ1bmsKKzExNDQ4IGJlMjFhYWRmNDkwOGY3ZDllZjBkZjUwODRiMmMzODliMjM3OWY5MWEgbGVnYWN5LXRydW5rCisxMTQ0OSBjNGMzMjhhYWJkODI1YWFlOWRkNDdlZGQwYzllNjA3ZjRjNmJmOWNmIGxlZ2FjeS10cnVuaworMTE0NTAgZGUxNmUxOWZmMWRkOGIwZjhhODg1NTZjZTQ1NjEwMjE1MDgwNGYyNiBsZWdhY3ktdHJ1bmsKKzExNDUxIDE1N2U0ZjIwY2Q3MTYwOTRhN2ZkOTVkNjlkMWUzY2Q0NDdkZThmODEgbGVnYWN5LXRydW5rCisxMTQ1MiA0NTYxNGNmOWU5MTFiMGQ2NDA0MzMyN2NmZWFlNWNkNmY5MjFmOTFkIGxlZ2FjeS10cnVuaworMTE0NTMgNThkNjkwZDRlMzEyODM3NWI0YzY1MTc4OTVhMmE0MTY1NDI5NWQ1NCBsZWdhY3ktdHJ1bmsKKzExNDU0IDc4ODVmMTVkYTA4MDFjOWEzNTc5YjZhYTg2MTg4MjhlMTc5ZjllNzYgbGVnYWN5LXRydW5rCisxMTQ1NSA0NjhjYTg0ZmJjMTRhMjU1Y2EzMGY5OWRmOWQ5MWUxZGQ5YmJiMjdjIGxlZ2FjeS10cnVuaworMTE0NTUgZmVkNjNjY2JlNmRjM2FjNjYzYmZlOTdhMmY3MDA2YjFiMjg1NjhmOSBsZWdhY3ktdHJ1bmsKKzExNDU3IGQ2OWNmYzIzYWE3NjY0MzBjMWQ1MzE4N2RjYTIwYzlhZjI2OWJlNWMgbGVnYWN5LXRydW5rCisxMTQ1OCAzYmNkNjI3OGU2NTgxMDdlZGJiNDY3YTFjNGIzZTEzYmI3MGMyNmQ1IGxlZ2FjeS10cnVuaworMTE0NTkgODJhNDNlMWJmYTRmZGEwNjAyMzdiMDFmMzk3NGI1ZDhlYmZmODlhMiBsZWdhY3ktdHJ1bmsKKzExNDYwIDA3ZDk3ZDE1NDZkNGIzYzQ0Nzk1YmNjZjRjM2Q5YWY2YTg1MTE5NWQgbGVnYWN5LXRydW5rCisxMTQ2MSAwYWZjMzgyNzk3N2UxMmIwZjczYmJiOWEwMzdjYmNkYzk1MmJkODlmIGxlZ2FjeS10cnVuaworMTE0NjIgMjZjMDQxYjE0NWMxOTViNGRmYjgyZGY4YjJjM2U5Y2E1OTZmZTAxOSBsZWdhY3ktdHJ1bmsKKzExNDYzIGYxZTQxZmMyNzgzYzE5ZGQ5NjU3ZTVjMDc4YTkwZWU2Mzk1MDFlNzYgbGVnYWN5LXRydW5rCisxMTQ2NCAwMzk4MDUxZjhmZmFlMTc1MTM3Y2NhNjY2YTliM2EzZjZjM2ZmNjk4IGxlZ2FjeS10cnVuaworMTE0NjUgN2MyYmM3ZGI0OTMzNmNjMTY0ZTI4YjNhODhjMTE0MWMyZjAzNDMxZSBsZWdhY3ktdHJ1bmsKKzExNDY2IDRlZjY0MGFjZjIzNjVhYTcxNTI3OWYxNzlmNjk0MWU1OGMwZTE0MDEgbGVnYWN5LXRydW5rCisxMTQ2NyA2ZDRlYTM3ZDcwYzIyYWZhNTBhYjdlMGUwNjU4MzRhNmNmNDc0NDY1IGxlZ2FjeS10cnVuaworMTE0NjggZDc4NzhiMzg2ZGFmYTgxMWExODljZTlkMGNlYmMyYWMzYTcxYjJlMyBsZWdhY3ktdHJ1bmsKKzExNDcwIGZmNjdmOTNjNGE5YmMwZmYzZTM1ZDhjNWQ4NTczNzg1OGE0M2UyMTAgbGVnYWN5LXRydW5rCisxMTQ3MSAzZTEyN2JjYTg0ZTcyZmJkOTRhMjRhYTNlMWYzNzU4ZDBlNTNjZTg3IGxlZ2FjeS10cnVuaworMTE0NzIgMDcwZGU0ZDM5ZGRkODZhYzk2ZGJhNTZkZTlkYzM5OGQxNDIxNDRiMSBsZWdhY3ktdHJ1bmsKKzExNDczIDVmYjNjNjgzZTg2MjYyMzU2NjZjNjE5NGQ0MDYyZGU1MjQ1Nzk3NTAgbGVnYWN5LXRydW5rCisxMTQ3NCBkMTc4MjI3MTI0MjEwZWNhNDk0OTllODkyMWJkNDNlMjhjOGI0MjE0IGxlZ2FjeS10cnVuaworMTE0NzUgZGIxNmNhNGRlNGM0ODc4MTllNjEyZTQ4OGIzNjljYjVmODgzNmVlMyBsZWdhY3ktdHJ1bmsKKzExNDc2IGVlM2FmOTExYWQ1NmI2ZWQ5YjExNTgyYTE0NzRlMDQwYmE2NTdlMjUgbGVnYWN5LXRydW5rCisxMTQ3NyAwOTE4Mzk0MzE4MmViMzJhODZlOTMzOWQ4MjU4YWYzMGFiZWZmMDUyIGxlZ2FjeS10cnVuaworMTE0NzggOWM5YzRjM2VkZWMyZWQwMDc5N2VlZDVjNjViMTBjODNlNzliMjRiZiBsZWdhY3ktdHJ1bmsKKzExNDc5IGYxNDczOTI2MWEzNGMxODBjYmU3MzczOTEzYzEwMWRlNDM0OTQ1NzMgbGVnYWN5LXRydW5rCisxMTQ4MCAzYmRkMGU3OTBiYzk4NjljMTI2MDg4YzZlNmYwZjcwZDNiM2NmNjkyIGxlZ2FjeS10cnVuaworMTE0ODEgMjllM2IxZWI0NmIxOTBlN2QzOGJlMzE3YTdkODY2MmE5YTdjOTU0MSBsZWdhY3ktdHJ1bmsKKzExNDgyIGY4NjRjOWY2NTYwOTUyYjUxOTk3ODZjNzRhNmM3ZWVkYmQ1Yzg4NjMgbGVnYWN5LXRydW5rCisxMTQ4MyBkZmI3ZjQ2OGI3OGQzNzc1ODk5N2ZiZjZjN2ZmYWZhMmEwMjgwMDg5IGxlZ2FjeS10cnVuaworMTE0ODQgYzJkZDRmMDg2YTQyYmZhNDExZmFmN2RmYTY5YzFiYWE5MjcwMTg1NSBsZWdhY3ktdHJ1bmsKKzExNDg1IDQ0NTA1MDc1NTU4NmI1OTEyMmM1ZmE0YWNkOGNlZGIzOGE1ZWE4NTggbGVnYWN5LXRydW5rCisxMTQ4NiA3MTE2Y2I5NzEyYmNjNzA5OThkZjk0ZGVhNzVmNTViMjM2MzA5YjA3IGxlZ2FjeS10cnVuaworMTE0ODcgZjE2YTZlNjQ4NTliYjhjZjZjOTg2YjU1NDhhM2FkMTM4YmU5MjU3NyBsZWdhY3ktdHJ1bmsKKzExNDg4IDkzYmVjNmE4ZGIyMWIxZjEzNTMyMGRiMmNkZGNkNjg2ZWFlNjYwNDIgbGVnYWN5LXRydW5rCisxMTQ4OSBlYzAxZmU5YzI4NDE3YWJlZTgzMGNjZjBhOGRlMjQ4NWYzNzkxMGJiIGxlZ2FjeS10cnVuaworMTE0OTAgYTlmNmZiMTRhYmQ3Y2EyMDE4YjAwOWExMGVmZGFmNTliNGI3YWU1MiBsZWdhY3ktdHJ1bmsKKzExNDkxIGZmMWE4YTM4ZjhjMTFhZmI1YjlhN2MzNDdlNDMyOTljZDNkYWYzMDUgbGVnYWN5LXRydW5rCisxMTQ5MiBlYWJiZTBlZDM0NjhjY2VjOGI4MGIyMTI1Yzc2Y2JjZGI5ZDBiZjIyIGxlZ2FjeS10cnVuaworMTE0OTMgNTk5MTY3Mjg4NWNiMWFjNGRmY2Q4OTQxYjZmNGE4YTE5NzQzYzYzZiBsZWdhY3ktdHJ1bmsKKzExNDk0IDllMDFiNzRkYWY3N2M3MWM3NzU4MWZmM2U0NGUxOWFkMDAxMDg4ZTkgbGVnYWN5LXRydW5rCisxMTQ5NSBhMTEwYjYwNjk5YjFiNDEyNTUxN2ExNWZhODdkZGU3NTA1ZmRlY2NjIGxlZ2FjeS10cnVuaworMTE0OTYgMzZiZmFmZGRhOGQxNGYzYjlmY2YyOTY0NjE5OGM2OWQ5ZTcwNTlkNyBCQlBZCisxMTQ5NyBiZmQ4NDcyZjY5NmI5YzhmYzY5YTJjNzMxOTAyZWMxNDFkOWE0MDQxIE9TQU0KKzExNDk4IGQ4NWU4MDcwYjE2NGYzNzZmN2U2YzUyZDRiZmJhZTRlM2NkMTM0OTYgUFlUSE9OU0NSSVBUCisxMTUwMCBhOGQ0N2EzNzE4Y2U5ZmQ4YzRmZjc4Mzc2OWYxYWE1OTUzZDlkOWQwIEJCUFkKKzExNTAyIGI0ZDNmOThiZjIyOTcyZDRhMTIxMWU1YmMzZDkyZGNlMzc1M2Q3YTEgUFlUSE9OU0NSSVBUCisxMTUwNCBlMWYzMjNhZTljNGI1MjM3ZGRkZjBlMTg1MDljY2M2ZTMyZTUyMDk3IE9TQU0KKzExNTA1IDExYWJhZTI4NGMwNzFlZGJlZTRlNTE4NDc1ZmEwZGM3Y2Y2YjEyY2QgbGVnYWN5LXRydW5rCisxMTUwNiAxN2NkNmU1ZDI5NGJiM2EwNGJkOTk4Y2Q3YTVlNjM1ZGRhYWEwMjg3IFBZSURFCisxMTUwOCBlOTIxY2RiY2M1ZGQ2M2FmYjYzMzRhZDkzYzc0ZTQ0NTVlYjE3NGE2IFBZSURFCisxMTUwOSBkZmY2ODgxMjQ2NTcyZWM3OTFhNGIxNTkzNjIyMGEwMGQ3MGMyNzY0IGxlZ2FjeS10cnVuaworMTE1MTAgMmNlM2RhNDE5ZTFkMzllNzRlMDA3YTA4ODQ5YTNmZDU4ZGJlZWMwNSBsZWdhY3ktdHJ1bmsKKzExNTExIGRkNWZhMTc1NzU1NmRiNzNmYzYzMDRkNGM0NWJiN2NhYzA5ZGIyYzMgbGVnYWN5LXRydW5rCisxMTUxMiBiOWEwNzA3MzZlYWNiMzExYzdjNzIxODA4YzZjYWI0YzdhMjEwODNhIGxlZ2FjeS10cnVuaworMTE1MTMgODk3Y2UwOTc2Njk2NTIwYTRiMWUzZmI3YjIwMmZmYWQyOGRhOGFiYiBsZWdhY3ktdHJ1bmsKKzExNTE0IGIxNTBlYmY3YjJiNzJjNDhhOTAwZjIyMTU5MTNiY2VkODEyZDM4ZmIgbGVnYWN5LXRydW5rCisxMTUxNSA2NzRmNDUxYzQ4MTVmZjRhMDQwNjJlYWQ3NzU4Yjc3NzY5ODlhYWE2IGxlZ2FjeS10cnVuaworMTE1MTYgOTI4ZmU4YmM5ZWI2ZDY3NTZmZTcxNGE3ZTBmZTQ0YjMxYWNlODE0YSBsZWdhY3ktdHJ1bmsKKzExNTE3IGE5NzI0YzhlNmU2ZmQyYjAzMGMyNmExYjRlZjQxZjIzNWFiYTMzNzEgbGVnYWN5LXRydW5rCisxMTUxOCBiN2U3NzQ3YzE5Njk2OGY3ZWE1OTdkNTMzNTU5OGE2YmE1ZGRiYzlmIGxlZ2FjeS10cnVuaworMTE1MTkgNmEyZTkyNjIxNTQxMWRlMjFkOGQ5YWFhNWNmZTMzYWQ0MDk3N2FjYSBsZWdhY3ktdHJ1bmsKKzExNTIwIGE4N2IyM2Q0Mjg4MTRlMzkwNWMyODFiNmEyZTBiZGE0ZmNjOWE5YTYgbGVnYWN5LXRydW5rCisxMTUyMSAzZGY1YjlkODMzNWI3NzVhOTY0ZGVlNGE2MWJhYWYyNGExNTI2ZDNhIGxlZ2FjeS10cnVuaworMTE1MjIgZmI1YTVlYzJlYTFhYjAxYmY3NDkxMDhmZGRlNTJmOTdhMmI2OWI3MSBsZWdhY3ktdHJ1bmsKKzExNTIzIGQ1MzIzN2JjZjE1Zjc3NDIxNTQxOGY3M2Y4YmZjMmI2MGI3ODU4MmYgbGVnYWN5LXRydW5rCisxMTUyNCA2NTEzOTcxOWI2NTYwNTllNTJjNzY5YjJhNWZjODgwODg2ZGRmNzAyIGxlZ2FjeS10cnVuaworMTE1MjYgYjNlZWNkZTM2NzllZGMxMzMwMzQwMDNkOGZlNDU0Mzc0ZjEzYjgwZCBsZWdhY3ktdHJ1bmsKKzExNTI3IGQzYzA2NzkzNGM2M2NiZjc2ZWY3OTYyY2E2ODgzYmI2NmY5Y2UzMDkgbGVnYWN5LXRydW5rCisxMTUyOCBkMjcyMmE0Y2JkOWM2MTI4YjUyMTY4NjY4ZjhmNWI4ZWRhY2QyNjUxIGxlZ2FjeS10cnVuaworMTE1MjkgYmFmOWE1YTcxZDJkNmRkZjY4ODE1YzRkNWFkN2Y5MzRiMDRiZDRmZiBsZWdhY3ktdHJ1bmsKKzExNTMwIDk5NjI4MzNkNDlmZGRiOTMyNjIxOTdhMTVjMGVkOGQzZWM2NWIzZGUgbGVnYWN5LXRydW5rCisxMTUzMSAxODJjOWNiZGYwNTNkZTNhODMyZDA4MDUxNGI0NTlhMjhlNTZjMTE2IGxlZ2FjeS10cnVuaworMTE1MzIgMTFiNmYwYzllYWM5OThjYThmNmM4M2NlZDNkNDBlN2I1Y2Q1NWRhMCBsZWdhY3ktdHJ1bmsKKzExNTMzIDE4Njk3ZjU5ZmQ0OGI3N2JkNTQ2ZWE5MWY5NmRmYjQzMGU3OWVmOWYgbGVnYWN5LXRydW5rCisxMTUzNCA2MmI5NGNjOThkZTQ1OWU3YTgwMzk3MWQxNDc0MmRhNWQ2MTg1MWJhIGxlZ2FjeS10cnVuaworMTE1MzUgMjRkMGE1N2FlMjM0ZGM4MzU3NjgzZTFlMWM0MzFlNTRiODk1ZGQwOCBsZWdhY3ktdHJ1bmsKKzExNTM2IGYwYzhiOGEzM2YwOGVhZTA4ZDNmZjI5ZDE1ZTBlMjA4N2Q4ZTk3ZTggbGVnYWN5LXRydW5rCisxMTUzNyBlYmMwYzEyZGJkNzhkNjBkOGZlMDhkODkyOTZiMDliMmMxMzk1NWJiIGxlZ2FjeS10cnVuaworMTE1MzggOGQxOGQ0OTZhZjg3MDlmYzNhYWIwY2VlOTYyZmQ2YzAxN2UyYmJlMyBsZWdhY3ktdHJ1bmsKKzExNTM5IDlmZDkxNWQyM2NmYTAzYzAwZDNlODA4MmQyMmMxNWYzNDNiNjNhOTYgbGVnYWN5LXRydW5rCisxMTU0MCBkOGVkZTAyMGRmZWIyOTRiNzVhZTdkYzY5NWFiYTkyMzcwYzJhYjMwIGxlZ2FjeS10cnVuaworMTE1NDEgZDQzN2I2NjgzZTI0MTc2ZWFiNzViM2RhMDdkYjg1OTlkMmI0MzRmNCBsZWdhY3ktdHJ1bmsKKzExNTQyIGFkNmJjMmM1ZDM1M2VlZGNiMDIzNmVkYjY3ZWNhYzk3ZDRlYmMzMjEgbGVnYWN5LXRydW5rCisxMTU0MyA5MWQwODYwNzQ2ZmMyNzMzYmQyMGExNDg2YzkwMTMwNmY0NjZkYzMzIGxlZ2FjeS10cnVuaworMTE1NDQgNmQyZWI1OGYwNDE4NjgwODZkOTg3MWNkMWM0YWY3ZDg4NzNmMzYwMyBsZWdhY3ktdHJ1bmsKKzExNTQ1IDExOGY5ZjczYWJlOTE5ZTkyZWI5YjNkZTYyZmY4NTQ3YzIyNDlkYjIgbGVnYWN5LXRydW5rCisxMTU0NiBjYmY3MmIyMjEwYWVhOWVlNzgzMjYyODc5OWJkN2Q0MzdhODJmOWM0IGxlZ2FjeS10cnVuaworMTE1NDcgZjNlYmRiMjI3NGU0YTgyOWY3ZjdjZDJmYjAxN2RhMzVmODAxMDBiNiBsZWdhY3ktdHJ1bmsKKzExNTQ4IDgzOWM2NjIyZDE1YTA3MjEwYzc2ZDU5N2M1M2MyYWQyNDMxNmZlMTAgbGVnYWN5LXRydW5rCisxMTU0OSA5MDViZmFjMGZhMzJlMDU2OTU3ZGZiN2QyMGRhZjlhNTI1M2NjYmY0IGxlZ2FjeS10cnVuaworMTE1NTAgMTZmODM5N2Q4ZjA0OGRlNjRhMWI4ZDBlMjBhYTkxZGI0ODA4NjUwNSBsZWdhY3ktdHJ1bmsKKzExNTUxIGRhYmIyYjZhM2E4MWViMGZlOGM0NGU0NTYxN2RmMjYxN2YyNjQwNWIgbGVnYWN5LXRydW5rCisxMTU1MiA1YmM2NGVmYzY1ZTAyOTg0MWMzMzVmNzI2NzhkNTU2ZjZhNjE0NzM5IGxlZ2FjeS10cnVuaworMTE1NTMgMDUxODFlMTA0NDIwYWMwM2Y1MDYxNzkyZWU0ODJmYzFkY2RmZTYwYyBsZWdhY3ktdHJ1bmsKKzExNTU0IDAyNmUxMjM2MjQzZTZjYmFlMWNiN2JjZmIwNTRhMjU2ODlhYTJjZjUgbGVnYWN5LXRydW5rCisxMTU1NSAxOWVjNTM0Njk0YWRkZWI4NGRmZWUyMTRkYmI1ZGQ2ZmJkNzlkYjhiIGxlZ2FjeS10cnVuaworMTE1NTYgODY5NTJiZGFiYjIxZTExZmVjOTFjMzFjMTVjOTQ1YzYxODIyYWVhNyBsZWdhY3ktdHJ1bmsKKzExNTU3IDVjMWUxZmIzNzJkZTA2ZWUyODFhNmNmMTBmZTI0ZTNiNGQyMDMwMjcgbGVnYWN5LXRydW5rCisxMTU1OCAwODc2YjZjMjQwMDdkODY2NmRlYTI3NzZkYjI2N2IwZTM2YTY4Mzc4IGxlZ2FjeS10cnVuaworMTE1NTkgMDA4OGFkOWQ5NmMzODZhYzQyYmM1NDYwZmUyY2JhMDA4YjdlYjBlMyBsZWdhY3ktdHJ1bmsKKzExNTYwIDU0MDFjNzE0MjhlZWZiMGU2MmE2ODE3MzdjYzdhM2RhOTc0MjE1MDkgbGVnYWN5LXRydW5rCisxMTU2MSAwNzgxYTQ5OTkwNTE1YzE2Mjk4NmZkYmMyOGY3OTY1OGJkMzdkYWI3IGxlZ2FjeS10cnVuaworMTE1NjIgMjU3MDYzYWFlMDAwZjNmNTk4N2M2MjZhZWM0YmFjOGM0Y2I1N2NiNiBsZWdhY3ktdHJ1bmsKKzExNTYzIDM0MzNhOWViZGY0MzllNmQxOGM5ZjIyZmJhMmZlZTc5NTlkZTllOTcgbGVnYWN5LXRydW5rCisxMTU2NCBhNWUzYzY5NWQyZmJlMzc3ZmVmNGEyOGFkZmE0MzUwZTUxMDhhNmNhIGxlZ2FjeS10cnVuaworMTE1NjUgYjI1ZDVhNjJlMzU3NjNkNTg4M2U5MGQxY2I5ZTNiMTgxMjQ5MDAzZSBsZWdhY3ktdHJ1bmsKKzExNTY2IGViYzhjYjA3NzAzZjg5ZDQ2NTJkNjk0NjdiNTg0NGU3ZTRkNzhmZDEgbGVnYWN5LXRydW5rCisxMTU2NyBjMmNiZTlhY2ZjOGU1ODgzMGNkOWFmN2IyMzkzMzRjNzlkZGU1NzJiIGxlZ2FjeS10cnVuaworMTE1NjggMDE4OGQ2MjU5NjlhYjMxM2ZkNmMyYjQzZGE4MjJmM2M2MzBjOTM1YiBsZWdhY3ktdHJ1bmsKKzExNTY5IDljZWE2YjYxNzgzOGU1NDEyZjUzYWE3MDY1YzJhYmMxMzM5MTVmN2UgbGVnYWN5LXRydW5rCisxMTU3MCA2MThmYjgzMGJlNjU4Y2ZiNDQzNzk5ZDhkMTFkYWU0ODAyMDllOTU5IGxlZ2FjeS10cnVuaworMTE1NzEgYTk4MmIxN2U5MzhmNTI5ZGZhMDRjMzRkODE2NWYzNDY0ZDE4MmMyYSBsZWdhY3ktdHJ1bmsKKzExNTcyIDg1MGFjZjI5OWVhMjNkYmIxY2FkMWVmYjEwNjkxM2EzNTQwZmJkN2UgbGVnYWN5LXRydW5rCisxMTU3MyBjMDYyNzIzODRmMTE4YWZlMGRjNjI5MWVhZDAzY2ZjNjZhODNkM2I2IGxlZ2FjeS10cnVuaworMTE1NzQgYzQ0N2QxYWQ3ODUxN2QzNThmZmY3YmQ3NDBiOTE0MjkzYjE1OWJjNyBsZWdhY3ktdHJ1bmsKKzExNTc1IDE4ZjgxZmFmNGJkOTdiNDFmMTdhYjhmZjA1MWE4Njc4ZjM0YTZiYmMgbGVnYWN5LXRydW5rCisxMTU3NiA0ZDJjYjIxMmM4ZDE1ODU0OTM3NzViODcxZjhhM2JjNzJhOTYwODNmIGxlZ2FjeS10cnVuaworMTE1NzcgZTQ5YjVmZWQ3NDRjNGZmNzcxYzk4YjVlYjcyZDQ5NzhkZTVhYmFiMyBsZWdhY3ktdHJ1bmsKKzExNTc4IGVkYWM4NjBhZDcxMGI1YWEyOTIxMGVlNGM5ZDcyNDBmMDQ4MGE1Y2QgbGVnYWN5LXRydW5rCisxMTU3OSA2Yjg1NDkzMDUyZThhMzZmODJlNTgyNDVjMzgyY2JmY2Y2NDkwNDQxIGxlZ2FjeS10cnVuaworMTE1ODAgYmM0MWU4NmM5MzhjZjRiOWU3MGFlNWE0MmMwNDJkZTU3ODI0MWFjYyBsZWdhY3ktdHJ1bmsKKzExNTgxIDNmNGJlN2UyOGQ1Y2U3ODUxMTRjZGYyYjdkNTk5OTBjZmI3NDFmMDEgbGVnYWN5LXRydW5rCisxMTU4MiBlOTQzZjljMDk5MDFhZDgxOGJlMjNjYWJlYzhjNWQ3NzE2YjA4Mzc2IGxlZ2FjeS10cnVuaworMTE1ODMgZDRlYjM1YzZlNmVmYmU3MGFmZjU0ZjI2MTU5NDE0NDUyNWNlZWRmZCBsZWdhY3ktdHJ1bmsKKzExNTg0IGFjZmIzYTY0OGRjYWFiZmE2MzIyYmFhMGE3NmVmYjk2M2RiMGMxODggbGVnYWN5LXRydW5rCisxMTU4NSA3ZTZjNGY1N2FmNjk5MjBhNThkNGFjY2ZlZjNiOWU4NGZhZTJmYWIyIGxlZ2FjeS10cnVuaworMTE1ODYgZTcxZjgzOTIyMzkyMDRhNDVkNTM4Y2Q1NzI2N2E4NDMyODU2Yjg2NyBsZWdhY3ktdHJ1bmsKKzExNTg3IDI2ZjViZmQ3MTVhNDY1NmU4OWFjZTdmYmU3ZTI0ZDEwMWFmZDI3NmYgbGVnYWN5LXRydW5rCisxMTU4OCA1NTY5MjdkODY4ZDhkODg4MmI2NTIzY2Q2OWVmZWM1MjgzZmI0NzA3IGxlZ2FjeS10cnVuaworMTE1ODkgMmUwN2YxYjI5OGUxNmRiODFmMzU5ZDE1ZjNjZDA3Nzc1Y2Q3MThmZCBsZWdhY3ktdHJ1bmsKKzExNTkwIDQ3MWM2YzIyMTg3OTllZTI3MDBhZDZkMjFkYjA2ZmVhMzcwMDFlMTMgbGVnYWN5LXRydW5rCisxMTU5MSAwMzEwZWUxNjQ5N2E4N2Q3MTkzY2MxNzEwODkxMmQ2Y2I1ZjRjY2JkIGxlZ2FjeS10cnVuaworMTE1OTIgNjM3ZmVjOGE3ZGQzZGFmZjE3YTdmNmI0NzYwMDJhYzdkOGVhY2EyNiBsZWdhY3ktdHJ1bmsKKzExNTkzIDIwODhmODAyNTNkYjA0ZjIxNGI1ZjJiMDU4M2FmYTVhNzRiNDA1ZmEgbGVnYWN5LXRydW5rCisxMTU5NCA0Mjc4NTYxYmQ1ZTg3ZjU5YTEzODc3N2ZmNDY0OTVkZTdhNjVkNWI1IGxlZ2FjeS10cnVuaworMTE1OTUgYjgyNmU1MGU5NTczZjRlMDk0MGM4MmNiZjY0YTExYmJiNjlkMzIzNyBsZWdhY3ktdHJ1bmsKKzExNTk2IDcyOGJiZWI5ZTRmOTY1NDcyZjg5MmIzMGUzZmZhNjAxNjU4NjY2MWQgbGVnYWN5LXRydW5rCisxMTU5NyA2ODdiNjZlNjUzZDYxNWEwOGZjMGEwZTkyMmM2NWIwNDAzN2E4MGRiIGxlZ2FjeS10cnVuaworMTE1OTggMzEzNTMxNmNkNjcwYjA4ZmE4Y2FhMTQ0OTNlN2JjZTM4MWQ0Y2IxOCBsZWdhY3ktdHJ1bmsKKzExNTk5IGYyMzk2ZDQzMDU2YjZjNmQxY2Q5NzY1YTM1Yzk2ZWMwN2M2ZjZhNWEgbGVnYWN5LXRydW5rCisxMTYwMCA3N2E5Yjg1Zjc2MmE3NjQ4YTc4YzI3M2VmZmZlYmU4ZjkyMTk2MDI2IGxlZ2FjeS10cnVuaworMTE2MDEgMmJiN2I2NjBmMDA3YmVmNzQzOWM2MGExMjk3MDQ4NmEzYzY4NTA2MiBsZWdhY3ktdHJ1bmsKKzExNjAyIDllYjJkNmY2ZmQzZjRjNzFjYTY3ZGFhZTE3NzBkYjk4NDllZDAzMjQgbGVnYWN5LXRydW5rCisxMTYwMyBjZTUyZTkyMmZiYjI2ZWJhYjUzOWI5NmYzNTIwOTRlOTFhNjUwNDI5IGxlZ2FjeS10cnVuaworMTE2MDQgMjRjYWQ0ZTBkYjhkZDM5YzMyNTQ5MGM1NWUzNzIyZTcyMTVjYzBhNiBsZWdhY3ktdHJ1bmsKKzExNjA1IGI1Mjg2NGM1ZTljOTQyM2E1M2QwYjJlY2QxZTkyZmU0YjdlNzQ2ZWIgbGVnYWN5LXRydW5rCisxMTYwNiA5ZTE3NDU2NzllNzE1MDAzYjJjY2JiYzA5YWI0NzMyZTlmZThlNTk4IGxlZ2FjeS10cnVuaworMTE2MDcgMDQyMGY1NDM0ZjQ0OTMyYWE2NjdkZmJhYzlmYmU0OTczMzE4ZWMyZSBsZWdhY3ktdHJ1bmsKKzExNjA4IGIwODQ1ZDA5ZmVkZjZmODE2NTIwODQ0NDc1MjQ0ZDRmNzdlZGY5YjIgbGVnYWN5LXRydW5rCisxMTYwOSA4MzY2MGNkYTNlM2YzOTcwMDVmODU2OTcxYWZhMmU2YjU5NDU4MWQwIGxlZ2FjeS10cnVuaworMTE2MTAgZGJhNzExNjI2YjQzMjQxYzVlODFlYzBiMzRiOTNmZjVjNDVlNzZlZSBsZWdhY3ktdHJ1bmsKKzExNjExIGQyMzdjODA4YTAxZTExMzE4ZDI1MTZkZDA5MjI4MGE1NjRkMzBhYWEgbGVnYWN5LXRydW5rCisxMTYxMiAyOTM4MGE0ZmEyMzA4OTAzMTYzYWI1ZmQxY2RhODU2OTZkNjY5MzMwIGxlZ2FjeS10cnVuaworMTE2MTMgZGIxNTQ3ZmQ0MGU0Njc1YjcyOGU1YjZjYTE5YWRmZWZmYzZjZmVmZiBsZWdhY3ktdHJ1bmsKKzExNjE0IDRjYzEwOTA4ZTZmNDVmMDBmZTgyODczODhhNzAxNWRlZDlkYTMyNmYgbGVnYWN5LXRydW5rCisxMTYxNSAxMjEzNjU0MmUxNTU0OWIxZTNmZGEyM2JhNDRhYTNkYThjZTJkN2FhIGxlZ2FjeS10cnVuaworMTE2MTYgNDQ4Njg2MmQ1Y2JkZDBmYzA1ZGVmN2IxZjQ1MjE5OWY0NjdlOGQ4NCBsZWdhY3ktdHJ1bmsKKzExNjE3IDU1YzE4MTFiYjhlZmJhMjliNTMyMjNkNzJkMDhkNmM1OTUyYThjMTIgbGVnYWN5LXRydW5rCisxMTYxOCBmZGVlZjE3N2Y1MzZhZDk2Y2EyYjgwYWU1NzliNTUxZmI0MTczMzJjIGxlZ2FjeS10cnVuaworMTE2MTkgODZiNzEyOWQ4ZDA4YmQ5NzdmMDIwMzY2YmYyYTJhOWJlZTIyMThkNSBsZWdhY3ktdHJ1bmsKKzExNjIwIDE3ZDBjNTFlMDg4NzAxOTI2MTJhN2E0Mjg0YzkxYzk3NDM3ZmIzYjUgbGVnYWN5LXRydW5rCisxMTYyMSBiMTY2MzNiMjJlNmFlMTcwYjhiNzZjYmM3NjRiYjUxOGIyN2EwY2U5IGxlZ2FjeS10cnVuaworMTE2MjIgNmNkOTMzMjJiODEwYjZmNTNmYTE0NjhmZTBiZTEwMzY4NjBlNWIwMiBsZWdhY3ktdHJ1bmsKKzExNjIzIDNkMzBkZDU0NDQ1NjIxZDA3NGVkMWM2MjMyNmJjZjRkOWZhNzhlZTEgbGVnYWN5LXRydW5rCisxMTYyNCBmNDEyOWQ1MmRmYzVhZGYzZjk1YzY4YzNmN2JhYWE1MmUwNzFlNDRkIGxlZ2FjeS10cnVuaworMTE2MjUgYmE0MDA2NWUzOTlmMDQwNDEzOWRlYWYwYzNlZDVmNzcxM2Y3M2JmMiBsZWdhY3ktdHJ1bmsKKzExNjI2IDlmMTAyM2M4OGY1NzA2NTNiMDg5NDU1YWY2MjA2ZGI5ZGZlY2E1YjAgbGVnYWN5LXRydW5rCisxMTYyNyBiMGZhMmZjMTJkZmIyOGNkODUyODJjMWNiOTRkNmYyYjAwZmYwNTBlIGxlZ2FjeS10cnVuaworMTE2MjggNmNiZjA1Njk2MTIwZDA5YjE1MTZkZmQ1ZWM3YmMzM2RmYThiYzU1YiBsZWdhY3ktdHJ1bmsKKzExNjI5IGViYjAxMDg1ODc3MWFhYzdkMjk0NGZkMjRlOTI2Mjc2YjhmODc3NjAgbGVnYWN5LXRydW5rCisxMTYzMCAwNjYwYmU2ZTY3OTE0YjljZjFhNmUzYThmNGU3NzRkNjBhMWM2YWVkIGxlZ2FjeS10cnVuaworMTE2MzEgODhiMjIxMDkwMDdjMWNiOTE4ZDVlY2IyZTM1ODJkNWUzMWJiZjFhYSBsZWdhY3ktdHJ1bmsKKzExNjMyIDVhZjRiMTAyMTQ0YWU1ZDkwNGE0OTk1ZmQ5MmU0ZDc2OTQ3ZGI5ZmEgbGVnYWN5LXRydW5rCisxMTYzMyBlMWI3MTBlMzBhY2Y3M2M1YjU5YThkYjEwZGU5MzQyYjgwMWYzN2VjIGxlZ2FjeS10cnVuaworMTE2MzQgMDMyOWQ0MTllNTA2MTgyZTlhODA4ZWNlMWMzMDdlZWY3MTdkZTUyMCBsZWdhY3ktdHJ1bmsKKzExNjM1IGRlZWIzY2UyMGFjZjFhODViMTBjODYwNzBhY2IxMWI2MjljYzFmN2MgbGVnYWN5LXRydW5rCisxMTYzNiBmNWQyNjVkNWU5ZGMwMmFkYmZjYTE1Zjc2YzA2NDA3MTQyN2NmOTM5IGxlZ2FjeS10cnVuaworMTE2MzcgOGUzYjZkNmFmZTRjYzFiNTUxYzM4YmZkZTk4MzljZjI5M2QxNTU3NiBsZWdhY3ktdHJ1bmsKKzExNjM4IDg4MWI4NjM5OGMyMDQzZjVhMjMzNmU2ZGE3YzNhY2IwNzVhNTVmN2UgbGVnYWN5LXRydW5rCisxMTYzOSA5OGRjNjc1ZDA5MTNiNmIzM2JiODgwZmIxODU5Mzc4NzkxZWFhNjgwIGxlZ2FjeS10cnVuaworMTE2NDAgN2ZhYmJiYjdhZDlhN2ExZDQ3ODc3YWRlNjkwOWMxZGEyZTM0MjdiMiBsZWdhY3ktdHJ1bmsKKzExNjQxIDUyMDU4M2JkZjBiMDI5MGNlOThhMjUyOWYwOGFiMGNkOTU1MmI1YWEgbGVnYWN5LXRydW5rCisxMTY0MiBlNTc4NDM5Yjk4MWY4NTYxNDRiNDMyMzRhMmMwZTU5ZTRhYmEzODQxIGxlZ2FjeS10cnVuaworMTE2NDMgYzQ2MDIyMzY0MDllOGI5ZTA0OTg2MTAxMDBlYzMyYzNhZmI3NTBmYyBsZWdhY3ktdHJ1bmsKKzExNjQ0IDZlY2IyNDhlNjdmZjJjMGE1NDdkMTBkZDgyZDg2ZmVkOTYxMWQxN2YgbGVnYWN5LXRydW5rCisxMTY0NSBlNjAwNTUyMTZiOGY5ZmM5MDNkOTU5ODVmNGI4MDlhNzE0YjBiNmQ3IGxlZ2FjeS10cnVuaworMTE2NDYgMWMyMmNiZmI0YTFlMjA2YTdjYjAxMTk5YTViYWNhZGEyOWE2OWVmOCBsZWdhY3ktdHJ1bmsKKzExNjQ3IDRhZjg3Y2VkOWYzYWFiNmQ5ZmRjMzhhZGQ2NDM0MTRjZjNmMjg5YzQgbGVnYWN5LXRydW5rCisxMTY0OCA0ZmI0YjAwNzU1YjVlMDZkNzdlOGIwMjYzZWZjMzQwZDJjYTJlZWU3IGxlZ2FjeS10cnVuaworMTE2NDkgYTMwNzY1NmM3Nzg4OTc2YzQ0NGZkMWI1MGM3NWRhNDJhZjRiYjkwMCBsZWdhY3ktdHJ1bmsKKzExNjUwIDQ2ODMwZTVhMDM1MWZhZDBkNDEzN2RlYTNlNDU1YzYyODljMTY3ZGQgbGVnYWN5LXRydW5rCisxMTY1MSAxZThmMzEwNzQ1NDc1MTAyNzE3YTM1ZWUzOWM2MjIzZjZmMGJhMjBlIGxlZ2FjeS10cnVuaworMTE2NTIgMzUyOWJiNGNhZWZkNmUwYTVlNWRiMWNmN2MxYjZiM2M0ZDY3NzdjNCBsZWdhY3ktdHJ1bmsKKzExNjUzIGRhZjFkNjFiOTYxMWQ3YTI3MzEyOTcwMjRkY2JiZTI3ODQyNjVjODYgbGVnYWN5LXRydW5rCisxMTY1NCA5ZjcyOTFmNTUwMjZkNGQ1NWM0MjViOTNkMTFkYjIzYjBlZmYzODAwIGxlZ2FjeS10cnVuaworMTE2NTUgYjI2MzBhMjlmZWZkYjhiN2Y0NWQ4YzllOTA0NTUzZDRjYTU3NjcyMCBsZWdhY3ktdHJ1bmsKKzExNjU2IGYyYjk4Y2JjNTAzMDE4OGFhMmU0NWRhZDhlOGZhOWQ3ZWU5Yjg2ZGEgbGVnYWN5LXRydW5rCisxMTY1NyBmMGE5MmMwYTExNWVjZmNkZDU1NWYwZjE5YmMzOTY3MzhlYWUxOTA3IGxlZ2FjeS10cnVuaworMTE2NTggMWU0M2RmN2Q4YmUzZmZlNTdlMDczOGIzMGQxMzgxODI4YTAwYzgyZSBsZWdhY3ktdHJ1bmsKKzExNjU5IGUyZGFhNzgzYmQ0NzI4ZWEwZTgzMzg2MjA5NjVmMzMwY2ZkYjBhMjMgbGVnYWN5LXRydW5rCisxMTY2MCAwYTA4NWQ3MzFjMWM3OWE4ZjMyODU2OTQwY2M1MmZmZWNiMTRjMjhjIGxlZ2FjeS10cnVuaworMTE2NjEgZDA4NjQxNGFkZTZlYzQ5ZTkzNmEzOWMyOWY1MDNmMWYwY2Q4MDFhYyBsZWdhY3ktdHJ1bmsKKzExNjYyIGQzZWY0ZDEwZmI5NTRjOGU4NTEzMzQyNTBmYWM0Y2IzNWI5Y2I0MmQgbGVnYWN5LXRydW5rCisxMTY2MyA2YTU1OWRjNzhjOTEzZjhkNjY5M2U3NTQ1YjA5NmUyNjAzYWE2MjNkIGxlZ2FjeS10cnVuaworMTE2NjQgYjBiYTMxOTY3NzE5NTgyM2Q4NTBmZDcwNDA5NmJjNzZjMjMxZDZiMCBsZWdhY3ktdHJ1bmsKKzExNjY1IDc1YTgwNDdkZmMxMTAzYWZiMDFkN2FjY2VlNTMyZDA4ZTgyMGM1NTAgbGVnYWN5LXRydW5rCisxMTY2NiA2YmUzNDNkYTI5MTQ0YTM5MjA4MjdiMDc5NmI5MmY3ZWFlNmFhOTY4IGxlZ2FjeS10cnVuaworMTE2NjcgYzAwYjI3MzA4NWJlZDcwYWJiYTA3MjVjYmJiZjNmYzYyMTJmNTQ1NCBsZWdhY3ktdHJ1bmsKKzExNjY4IDNjZTUxMWJhNDI0MjI2MTMyMTA3NDIwYjdmMDcyZWZhN2Q5ZTYyMDEgbGVnYWN5LXRydW5rCisxMTY2OSA5ZmQyYmJkNDQ1NGUzNjc4YjFjZDZmMTEwNTgwZDlhOGM4MmFjMmYyIGxlZ2FjeS10cnVuaworMTE2NzAgMzJiMTk0OTFlNzBiNWE3OWQ1NTg5OWY5MTYwYTZmNjg3ZjlkMTcxYiBsZWdhY3ktdHJ1bmsKKzExNjcxIDlhODhmZTIwNGQ5NWNkODU2N2FjYzk5MjgyMzg0YjEwMzBjZGZhMGIgbGVnYWN5LXRydW5rCisxMTY3MiA2OGFhZDhlY2ZkNzBlY2FhYTk0MTVmNGMxNmQ5MGMyYjliNGI0M2Q1IGxlZ2FjeS10cnVuaworMTE2NzMgNmZjOTIwYzkwNjQwOGNjMmU2NzU5MTk5MWNjMGRlMzA0YTQ4M2E3OCBsZWdhY3ktdHJ1bmsKKzExNjc0IDk1OGUxZmFhMzhhOTEwNGZkOGI4ODY1MzE3OTg0ZjUzNTY1OTExMDQgbGVnYWN5LXRydW5rCisxMTY3NSAwNjI1Yjk5NThiMjNiZjYyYWYyODgxODUzMjBlZTBmMzNkNTY0YTI4IGxlZ2FjeS10cnVuaworMTE2NzYgNTNlZDZiY2QwNjQxZGYzN2ViMmY4ZWU4ZTZmMzUyNzA3NThhMzI0YSBsZWdhY3ktdHJ1bmsKKzExNjc3IDI1M2M5OTNlZjkzNmFkNWExZjkzYzc4NTQyZTEzMWE0NjcxNmQ0YjAgbGVnYWN5LXRydW5rCisxMTY3OCBmYTg5M2Q1NTc5NGVjZDk4NjYzODQ4ODEwMDIzOWU4ZDMxYzg2OTc1IGxlZ2FjeS10cnVuaworMTE2NzkgZTc1ZTIyOGY4Mzk1ZTdlYzUwZjZkMDU2YzE1ZmZhYjgxMDFhYzllNyBsZWdhY3ktdHJ1bmsKKzExNjgwIDhlOTUyYmRkMGZhMzcwNDc0OGIwODY2MmQxYjI4ZGFmMGI1ZWVjNDQgbGVnYWN5LXRydW5rCisxMTY4MSBmMjY0ZTU3ZDY1N2RkMzgwNjAzNTYxZDNkMWRkODAwMTBmMmM5ZTIyIGxlZ2FjeS10cnVuaworMTE2ODIgYTg2YTcxYmViZDY0MDdhMmNiOGI3YzkzOTI3YTJhMDM0NzM1ZTBlNSBsZWdhY3ktdHJ1bmsKKzExNjgzIGFhNzNkZWUyMzA5MzA3NTc3NmU0ZWIzZGRjOGE2MzQ5NTI4YjdlZTkgbGVnYWN5LXRydW5rCisxMTY4NCBlMjFkMDc5OGMwMmFhYWRlMjNlMjFkNTQ0YzMwOWI2NWQ4ODkwZDUyIGxlZ2FjeS10cnVuaworMTE2ODUgYTE2NzJlNzc1ZjMzMWVjYzM0NjU2Yjg1Y2Q5ZGFhM2RmNjRiYTBhNyBsZWdhY3ktdHJ1bmsKKzExNjg2IDVmZTRkNTk0YTBmMjE5MjQ2YmFmMjg4NTliYTMyYzliZTQ3MDZmMGIgbGVnYWN5LXRydW5rCisxMTY4NyAzZTBjODdiZGI1ODg5Njk0ODY1YjQ3ZGFkOGIxZTFlMTMwYjZmMGRlIGxlZ2FjeS10cnVuaworMTE2ODggNGZlOGE3NjcwYzBkMmEzMDg3ODIyMGI0NmM4OTFiYWQ2Y2U3NTVhZCBsZWdhY3ktdHJ1bmsKKzExNjg5IGFjNmMyOWQxZjEwYzljMmY5MDNlMDY0YTZjNTBmMWMyYmQzYTc5NTkgbGVnYWN5LXRydW5rCisxMTY5MCAwMmQ4ZjcyMTQwOWFiZjRmYWI4NDExNTNhYzM4YzRmOGJlYWU1MDg3IGxlZ2FjeS10cnVuaworMTE2OTEgNGMyMDQ1NjE1OWViZGJiMjgxMjY3ZjQ0ZmNjYmZkZTgyZDQ3ZGIzMiBsZWdhY3ktdHJ1bmsKKzExNjkyIDE5NWU3NDhjZjY5NmE2OTZmOWZkYWQ2ZTdkOGIyNmEyNmMyMDhmZmMgbGVnYWN5LXRydW5rCisxMTY5MyAzMzk4NDg0MTIxMWQ1YWMxNjAyNDcyY2E3MTdjMGQ1MzNkMDEyODg0IGxlZ2FjeS10cnVuaworMTE2OTQgNDdjY2RiN2ZiNjIzYWU5YWRmYmQyODE3NGQ1ZDM0NDNmZjg2ODZkMCBsZWdhY3ktdHJ1bmsKKzExNjk1IDU4ZWNlZDUzMDlhMDZiNzdkZWE1YzAyNjZmZDUyZjExODViOGY1ZmIgbGVnYWN5LXRydW5rCisxMTY5NiBiMjQwNDY3MjBkNTYwNDVlNDkxMzIzYzk0Njc0MDFlODM3MTc5YjBlIGxlZ2FjeS10cnVuaworMTE2OTcgZDU3OGNkNjQ3OTZkMTI2NTg1ZmEwZjk1NTlmOTZhNTg2YTFkYmQzZSBsZWdhY3ktdHJ1bmsKKzExNjk4IGViODAzZTE5MTg4N2U2ZWQyMGQ0NzQwYmJkYTkwNGE1OTk2ODU3YjcgbGVnYWN5LXRydW5rCisxMTY5OSAxNGFkMDJkMDZlMzJkODg0MjYyMWEwMTAxMGQxOGU2MjA2NjZkY2U4IGxlZ2FjeS10cnVuaworMTE3MDAgMDdkYWU2ZmRhZTc5NDEzZGY5MmJmMzIzMGY5M2VjMTc3NjkwZjQzMSBsZWdhY3ktdHJ1bmsKKzExNzAxIDg4NTA1MjY5YjQwMzdkZWVhMjgzZDdiNmNjM2ZmNzM2NTliZWFmYTAgbGVnYWN5LXRydW5rCisxMTcwMiAwODU4ZjExYzg4ZDcyNThjMTYzMzlmMTViY2I5YTViYjBkNGI2ZGFlIGxlZ2FjeS10cnVuaworMTE3MDMgYzFkYzE5ZjlhZDYwOGU2YjRiMWE4ZGE2MzE3MThmNGEyMTllNjViNCBsZWdhY3ktdHJ1bmsKKzExNzA0IDY3MDk2N2JlNmRiM2NlYjMwZGYyNzFhYzg0MTI3ZmIxNjFhZmRjNmIgbGVnYWN5LXRydW5rCisxMTcwNSA4MTQ4ZDQ0Zjk5MDNkZTJmZDhkMjJhZTlhYzJiN2NkYzBhY2I3NjJlIGxlZ2FjeS10cnVuaworMTE3MDYgZDNhZjMxMGYyMzBjYjE1NmM5NjJiODE4ZGYyODRiNWM2NDNjNjFmZCBsZWdhY3ktdHJ1bmsKKzExNzA3IDcwZTQ5ZjcxNTk1NzJmMTM3OTZhOWNkMzViMDk2OWU4MjZmNmFjNzcgbGVnYWN5LXRydW5rCisxMTcwOCBmMTcyZDQ3NGM1YTkwNGE4ZDUzMWI4YWQwMzE1NjJiZTQwNzJjZTJmIGxlZ2FjeS10cnVuaworMTE3MDkgYmUzZDg0ZmYyOWY5YTk1M2FkMDhmOTdhMWQzYTBiNzYyMGEzODY5YyBsZWdhY3ktdHJ1bmsKKzExNzEwIDg5ZDkxNmRmNDc5YjE1YjExYWM2MjNhYzc0YzM5NWJkNjE1NGMzOWQgbGVnYWN5LXRydW5rCisxMTcxMSBjMjU5YzNjNGQwY2NmOWJjMzllNjA5OWZhY2I2ZGI2OTliYzY2NzI1IGxlZ2FjeS10cnVuaworMTE3MTIgMTk5NWNkYmUzMzg0NmU0NzcwMjRlNjk2Nzk5N2NhYTM2MzQ2NmIzZiBsZWdhY3ktdHJ1bmsKKzExNzEzIDkzNjk5MTc5YTUwZjJmNGFjOTJlZmZhNGQ3ZTUzMmNiYjY3YWMzNGMgbGVnYWN5LXRydW5rCisxMTcxNCA0NGZmMWFjNTI5NWIzN2Q2ZDVkZDYyYmMxYWE3MzAzNGQ1YzhlYjI3IGxlZ2FjeS10cnVuaworMTE3MTUgYTRlODIzMzE1Njk5MDIxODNjNmFkZjRmYzgyMTM5YzdjZjAxMGY1ZCBsZWdhY3ktdHJ1bmsKKzExNzE2IDI5OTlmMWQ5MDQyOTk2Mjg5YTYwZTI1YTQ1YzkwYzY0YTgwMDAzMzIgbGVnYWN5LXRydW5rCisxMTcxNyA1NjIxY2Y5YjA5ZDYzMjBiMzZmMDUyMGVjNDM5NGZmYzQ1OGU3Y2VhIGxlZ2FjeS10cnVuaworMTE3MTggM2M5ZmVjNTdiODU4YTY0ZjA3OWVlNTg2MmNjYzc1NmE3YTI1NjYxZSBsZWdhY3ktdHJ1bmsKKzExNzE5IDk4NDhmNDIzNDNjOTk4ZjRhOTNmMTViYTlmNTlmNDY0YjZhYzQwYmYgbGVnYWN5LXRydW5rCisxMTcyMCBkYzFkNDQ1ZjIzNzE4NGQ1YzZkMTIyYjVlYzY3NjM2ZDhkOTYzNjdjIGxlZ2FjeS10cnVuaworMTE3MjEgNzNkZjI0ZjZiY2NmMzNhZGY3NDg0N2MwNTNmZTVmZWRjMmE1ZGM2OCBsZWdhY3ktdHJ1bmsKKzExNzIyIGNlOGYzY2VmNmFlZDJiZmY1YzQ0MWZmNDU5Mjg4Mjk5N2QyMzJmZTIgbGVnYWN5LXRydW5rCisxMTcyMyAyNWRhMDliNDI3YjQ3NWY0NDY1NDZmMWQxMDFlZDkzZTk3NDViN2FmIGxlZ2FjeS10cnVuaworMTE3MjQgNzk0MDBkMDc4ZjFiMDNmYzVmOTBhNjViN2EzNmM0ZGU5MGNhNTllNCBsZWdhY3ktdHJ1bmsKKzExNzI1IGEwM2M2ZmQ4MWQ0ZDZkMWFiMzQ5ZGUzMWRlYWVhMGE4ZjE3NDU3MjggbGVnYWN5LXRydW5rCisxMTcyNiAyZTM3MTJlODQ3ODFmYjEyNDY2NTFmNTVjZmRmMDU5OWE2ZWJhMWUwIGxlZ2FjeS10cnVuaworMTE3MjcgMzhjMDdiYTRiOGU0MTFmODZjYzJmNGNjNmYwMTlmMDI0MGQ5NGFiMiBsZWdhY3ktdHJ1bmsKKzExNzI4IDA4YjhkYTZkNGNhNmEwNzI5MGVjYmFiZDFiZTkzY2U1YWY1ZjA5M2UgbGVnYWN5LXRydW5rCisxMTcyOSA0YmZkMjlkNTNiOTUwYzE3YTdhMmE2ODE2MDdlMTgxNzYyMTQwM2I0IGxlZ2FjeS10cnVuaworMTE3MzAgYjE4ZDFmOTFkNjY0ODMyNDk2N2Y0NWE0YmM0ZTM3MjVlM2VlNjBlYyBsZWdhY3ktdHJ1bmsKKzExNzMxIDQxZjgzYzcyZTA5ODRjOTE3ODk3ZDFlNjgwNWMzYjA5YTMzNzE1MjYgbGVnYWN5LXRydW5rCisxMTczMiBkNzI1MmE1YjdlMWU3YWQ1ZmE4MjVmZTZhNjkyZDFiM2QwNDI1YWFkIGxlZ2FjeS10cnVuaworMTE3MzMgMzljNDEyMjBmN2VkNDZmMjM2OWM3MWM3MGNlZjVkODVlYjhjNDAyYyBsZWdhY3ktdHJ1bmsKKzExNzM0IGRkODQ0M2JkNDQ3NDBjN2E5ZjkxMmZjYmRkM2FkNjY4MjYyNTAwODggbGVnYWN5LXRydW5rCisxMTczNSA0YzRjZWM1NGJhNjM0ZGVmNDFiNDhjNTM2NTY2MWY5N2ZjMzQ1MDAxIGxlZ2FjeS10cnVuaworMTE3MzYgYjU1ZGIwOGRmZjdiZjI1OTI3YTJlNzhjYjU1OWY4ZGM5ZGNlYTMwOCBsZWdhY3ktdHJ1bmsKKzExNzM3IDIyOTQ3NWQyOTUxZjcwNTkxZTFmMDE3ZTAyZjdhNjUyY2E2YWI2NGQgbGVnYWN5LXRydW5rCisxMTczOCBlMjNlYzI0MDMxNTcyNDdiM2RkNTliOGU5ZDJmMjFmMjA0Yzg2YTdmIGxlZ2FjeS10cnVuaworMTE3MzkgNzEwZGExMGRlZTlkYjM0YTBlNGQxMTE4N2E4Zjk5NTk1MmZlMTk5YSBsZWdhY3ktdHJ1bmsKKzExNzQwIDA0ODAwMmYyN2MxZDhiY2E1YTkzYzFkYWJkOTI3NjQ0MDBkNjRhMTUgbGVnYWN5LXRydW5rCisxMTc0MSAxNTlmOWU3NDY3NTQ5NDcxMDVlN2I3OTE0NmJkMjMzZTcyM2M4NmI4IGxlZ2FjeS10cnVuaworMTE3NDIgOGE4ODVmM2E1ZjQ2YWNlNTQ1NmM2NGU3MDhhMzM2ZDdmNGU3NTljMCBsZWdhY3ktdHJ1bmsKKzExNzQzIDFjNGJhMGUyZjhlNzQzYjYxNmI5ZmQ3NTAyZTdlNjUzYjE3NmMxMGIgbGVnYWN5LXRydW5rCisxMTc0NCBiNDg3MmJjOGQ5ZWY3Mzg2MzRmMGEyNjlhYmI5MmNlZGQyNThhYjEwIGxlZ2FjeS10cnVuaworMTE3NDUgZTE5OTU0YmExYmM0MTM3ODhiMzNiNzU2ZDhhMWExZDZiMDdiNmY1NyBsZWdhY3ktdHJ1bmsKKzExNzQ2IDAyODM3NTk0MDdlMTYxZGYwMTUxOTM4NjVlMjNkNjA5ZmQ1MjhhZjAgbGVnYWN5LXRydW5rCisxMTc0NyBjYTg1ODdkMjE1ZTZmZWNhZTM4YTYzMmQ0N2VlMzZkMzU4NzYyZDQ0IGxlZ2FjeS10cnVuaworMTE3NDggNDMwMDM4ZTE2NDMzN2EzMDAxMTI5OTZiYTc5ZGFkOTllMWNhODY3NCBsZWdhY3ktdHJ1bmsKKzExNzQ5IDU5MGJkOWI0NWJmNjBkMTg3OWI0MmI2MjUyN2YxZWQ5MWFkMGFhNzUgbGVnYWN5LXRydW5rCisxMTc1MCBiZTE0OTMzOTFjNmRkM2JjN2JhZDMxN2U3YzAwYmI0MjFmM2YwNjZmIGxlZ2FjeS10cnVuaworMTE3NTEgOWQzOTNhMGY3MjdjNzU0NGE0YWQxYWJhM2ZlMjIxYzlhOGI4ZmUzOCBsZWdhY3ktdHJ1bmsKKzExNzUyIDA4MDc5OWQwY2YyYjJiZDlhNDc2MGFlNTM1NzljNzA4YWY2YjNiYTQgbGVnYWN5LXRydW5rCisxMTc1MyA4ZDE0OTA2MjkyYzY2Y2MwMDVmNDU1NWUzMWU5YzQwNmFhZDc5NzQ0IGxlZ2FjeS10cnVuaworMTE3NTQgMWUzM2E4YTU2YmNhNWI3YzYzMDg3ZjU2NWU4NmJiMzBjNTE2YzhkMiBsZWdhY3ktdHJ1bmsKKzExNzU1IDI1NzdjMGNjNzQ4MmE4ODg1NGYyMWE0MDA1NDcxNzc5MTZjMmZiNDggbGVnYWN5LXRydW5rCisxMTc1NiA2YjZiZDE0ZDc1MGI4MWI4NDRmZTI3NDQyM2I0NmQ5ZjQ1NzA0Y2Y3IGxlZ2FjeS10cnVuaworMTE3NTcgYTczY2Q3Zjk5Yjk1YmQxMmQwYTA3ODE5YzE4YjQ0Y2NmZDQ0MWY3OSBsZWdhY3ktdHJ1bmsKKzExNzU4IGFjZDgxYzMyMjdkZWI4OTY4OTkxNzdlNjBkMDY1MTkwZTdmYjcwODUgbGVnYWN5LXRydW5rCisxMTc1OSA5ZDJjMTJmMjQwZTYzNjEyZWNhYTRmODdjOGRjYTRiZDZlODk0N2I4IGxlZ2FjeS10cnVuaworMTE3NjAgNjVmMDhjYzU5NTUzNjQwNjQ5MjRmOWJjZDk1M2FlNGQ3NWVjOWNkMSBsZWdhY3ktdHJ1bmsKKzExNzYxIDg2ZGUxZmEwZmJiNzY3MmMwMmM1NjkyZjMwMmQ2NDQ4MGZkZmI1NGUgbGVnYWN5LXRydW5rCisxMTc2MiBjMTE2YmIzZTJhZDE4OGIzMTAxZDRmYWZjNGFkNDlmMmE0MTkyYThhIGxlZ2FjeS10cnVuaworMTE3NjMgYTBmMzMyNWZlZGYxOTFlN2M0ZWViYmU1NWY1YjY2OTcyYjhkNjg5YyBsZWdhY3ktdHJ1bmsKKzExNzY0IDU1MGE0NTZkOGY2MTU4NzZjODBlZTJiOTUzYjJiZGU0MmM5ZWQxNDQgbGVnYWN5LXRydW5rCisxMTc2NSBhY2VlMzU5NWU2MDNlZDJiNGI0N2Y5OWVlNDJjMTI4Y2QyMzU4MzBkIGxlZ2FjeS10cnVuaworMTE3NjYgZmJiNDUwNjBiZTAzMjQzY2Q1M2MxNzgxYmIyYmU1OThiM2Y1ZjE1NyBsZWdhY3ktdHJ1bmsKKzExNzY3IDcyNDQxMTEzMjQzYTg1ZTBhY2FjZGU5M2ZkMWZhMWE5ODM2YjExOTQgbGVnYWN5LXRydW5rCisxMTc2OCA1MGQ5ODUwY2M4YzNiMTRiMzQyZDJiMDI5MGNkOTliYzQxNjhkYWZmIGxlZ2FjeS10cnVuaworMTE3NjkgMmM2ZGQwZmE0ZWI5ODdiNmZkOTc3NDI1NzNlZmE1YThjNTI0ZTM2OCBsZWdhY3ktdHJ1bmsKKzExNzcwIDhmZWQ4Yzg1YzYxYTlhNTdhMGVjMjdlMDI3Nzg4MTI0NTA5YTMyNGEgbGVnYWN5LXRydW5rCisxMTc3MSA4NzkxNDU1NDg1ZTUyY2NkYmQzYTBmMGVmOTFkZjMyMmYzZjgyYWRlIGxlZ2FjeS10cnVuaworMTE3NzIgMmY4OGQ4YWE3MzEwOTNhN2VkZjI0MGMzZWNiNTEyNjdhOTRkY2U3YyBsZWdhY3ktdHJ1bmsKKzExNzczIGYzN2JlMGM4MjJkYzJhZDQxYWRkMGFkNDFlMTY3OGI2ZTU3ZTE2MjEgbGVnYWN5LXRydW5rCisxMTc3NCAyODRiZjk1ZGFiODBhMWY4ODA0ZDFjMjFjNjUwMzM2YWE5OWIzMzRiIGxlZ2FjeS10cnVuaworMTE3NzUgYzM5MjE4YTY4ZGYxZjM3NmQ5MTg1MWE5ZDM4ODM2NTdjYTZlY2ZhNCBsZWdhY3ktdHJ1bmsKKzExNzc2IDUzYWI4ZDBiMGQ2NDRlMTFmZDIwOTM5MGRmNGY2ZmU3OTBhNGI3ZjQgbGVnYWN5LXRydW5rCisxMTc3NyBmZTdjYmQxMzA4NmMzYTQ5MGU4M2FjNTM5YzE3MTM2NTBjZGI4YjM3IGxlZ2FjeS10cnVuaworMTE3NzggODA5ZGNjMWJiYzIxZGNkMzUzZjg4MjcxOTQyOWVkZDdmY2RhYmNiYSBsZWdhY3ktdHJ1bmsKKzExNzc5IDRiOWM0Y2U1OTk5YzkyYjdiMTUzZTQwOGIwN2MwNWIyZTk3ZDQwZDIgbGVnYWN5LXRydW5rCisxMTc4MCAwYTZlZDM4NGFmMDZhNTcyMzAzYjFhMWZlMjdkMTM3MjEzNzczNGY5IGxlZ2FjeS10cnVuaworMTE3ODEgZmFhMzFiMWMwYjU0MDU3MjliYTNmMDE3YzNiYWUyOTgxNDFkZDQ3NSBsZWdhY3ktdHJ1bmsKKzExNzgyIDUxNTZjZjhlNDI2OTFhZTVmYjExZDJhZWY4ZmYyYjQzNTQ0YTI3ZDEgbGVnYWN5LXRydW5rCisxMTc4MyBiYzUxNTA2NTJlZGNhZDcwZTZkNGQwNjY3MTMxYmVlM2ZiYTQyYjc4IGxlZ2FjeS10cnVuaworMTE3ODQgZWMzZDJiMzc1NmQ3NmQ5NWE0ODgxZmI4NTZhMmQ0NDg0M2FlOGNmOSBsZWdhY3ktdHJ1bmsKKzExNzg1IGE2Y2ZmOWMyOTBlNTI2NDVjMTMxMTBjNzY4MzBlNjM3NzQ4NzMxM2UgbGVnYWN5LXRydW5rCisxMTc4NiA1ZDM0NDcxMGZjYzNkNmEyMzc2ZGI0NmJhYWRhOTc1MzA5NmVmNTQzIGxlZ2FjeS10cnVuaworMTE3ODcgMjM0MGY2MTVkYThmNDM5NzA0NmZmNmQyN2ExM2YxNmQxZjM1ZTM5OCBsZWdhY3ktdHJ1bmsKKzExNzg4IGJjMzFkOWY2ZTBhMTRlMzYyMzE1YjNkMjU2OWM4OTA1ZTFhMzUxYWEgbGVnYWN5LXRydW5rCisxMTc4OSAwMmYzNTA0YjM5OGRmNDc2NmE1MDY2YTZlN2E2N2Q5Zjc0YjcxYjY2IGxlZ2FjeS10cnVuaworMTE3OTAgMGE2N2RiNDdlMWQwZTQ2ZWQ3Yjg2NGJlOTgxNzgxMGFiMTJmOTgwNCBsZWdhY3ktdHJ1bmsKKzExNzkxIDBkZTY2MmNlY2FjZmNhYWU5ODUwMTExMzUwOWY0NzFiN2ZhZDc3OTEgbGVnYWN5LXRydW5rCisxMTc5MiBhMWNhMDg1MTY4ZmM4MTE0MGNjMTFkZDY3ZmU3ODM4NmVkZTgyZjRiIGxlZ2FjeS10cnVuaworMTE3OTMgZDY0YjRjYzgxYmE2MmQzMzlmYjVjNTZhYThiYTQwYThjNzIyMTUxYiBsZWdhY3ktdHJ1bmsKKzExNzk0IGQyOGI0OTFmNDU1NTZhYTA1MzdkMGVlZjAzYjYyYmExNDdiN2ZiYjkgbGVnYWN5LXRydW5rCisxMTc5NSBhMjM5NzI1NWE2ZDMzZjVkMjRkNTI1ZTQ2ZDQ4YmVkMWZhZDAxMzI5IGxlZ2FjeS10cnVuaworMTE3OTYgZDY0MjAwODM0YTZiNGFmNDZjOTJhZTgwMGE5ZDcxOTcyNmNlMmVmMyBsZWdhY3ktdHJ1bmsKKzExNzk3IDY5MDM0ODI0MzgwMDFjNTgzMWQ3OWRlYzRkYzUxMjRkZTkzZDc3Y2MgbGVnYWN5LXRydW5rCisxMTc5OCA0MTQxMjhhMTViYmQ5ZjRkZTZmYTZiOWRlYjQ4YWNjZDNmODUzYTM2IGxlZ2FjeS10cnVuaworMTE3OTkgMjQxZDAxMmU4MmRjZTU4ODE4YzMzMDE4MzgwN2MzYjY5NWM4ZGMzNiBsZWdhY3ktdHJ1bmsKKzExODAwIDNiNmM3ZTcwY2FmZmY2YmRmZGY2YjcwYWE1NDY4YjkyYTdlODIxYjQgbGVnYWN5LXRydW5rCisxMTgwMSBjYzNlMTQ4MzczNzk5NjNkNWE5ODZlNjNiZjZjMjBkNjE0MDM1MGFkIGxlZ2FjeS10cnVuaworMTE4MDIgMDgzZWZhMDc2MzY2MTBmODlkODNkYzQ4MjM5YTk4OTY1NDAzOTY3ZCBsZWdhY3ktdHJ1bmsKKzExODAzIDc5NDM5ZTRlOTk3Njk1OGEwZDRjYzgzMTE0ZmNiNGNlNDU5NDlkOTggbGVnYWN5LXRydW5rCisxMTgwNCA5MjhlYTVhNDA5ZTUzNTFkNDY0NTZlYmJkM2E5YmE3YTZjMjljMDUxIGxlZ2FjeS10cnVuaworMTE4MDUgMzRlNDIwMmVkZTIwMWQ3ZDljMDQ0Y2QzMDc0YWNlZjcxZjQ0MjA3YSBsZWdhY3ktdHJ1bmsKKzExODA2IGJkOWQzOGQ2NDM2OTRlYzUyMzdiNTU5YjRhZGYyN2JhOGQzYzJhNDEgbGVnYWN5LXRydW5rCisxMTgwNyA1ZGI2NDdmZWRiYTAzM2NlY2VhMDQ0MGEyODcyY2MzYzM2NTBiOTQ4IGxlZ2FjeS10cnVuaworMTE4MDggNDhjNjE1ZDg0ZGE2NmRhYjg0MjYxZDQxN2MwMjQ3NTVlYWViYzE4MCBsZWdhY3ktdHJ1bmsKKzExODA5IDVlYTg4MzZkOTY3MDBiOTJhZWVhZjE2YjY3MDZjZDI0NTBhODg5NWEgbGVnYWN5LXRydW5rCisxMTgxMCA0NjdkZjYxZmZiZmE5NWZlZTZjMzk3NDA1MDFkMGE4M2E4MDI1ZTI5IGxlZ2FjeS10cnVuaworMTE4MTEgNDE2Yjc3YjgxMWM1YjgzMWIzOTU5ZjcyNDUxN2EzNzk4OTEyYjY2NCBsZWdhY3ktdHJ1bmsKKzExODEyIDc4NDg3ZTcwMTY4NmQ5NDFkMGJjNGJhNjY2OWFlMGJmY2M4Nzg0NmMgbGVnYWN5LXRydW5rCisxMTgxMyBmMzNiMzk0ZTVkN2ZjYmMzODU0MWViOTU4ZWY0OGRhZWE1M2FiZGVmIGxlZ2FjeS10cnVuaworMTE4MTQgMDAzYjQyYzlmMjRkMjEwODI3ZmRmYjBiMTk4YTkwMDMxNTg2MzdkMSBsZWdhY3ktdHJ1bmsKKzExODE1IDhhMjZlNTVlMThiODEyZGJhZWM1ZjEzOGFhN2E2NGRmYjJlNjczM2QgbGVnYWN5LXRydW5rCisxMTgxNiA4OTE4ZTRmNTRlY2E4ZDE2NmE0MGE0Nzk3MmFjYzIxNmQxNmQxYThlIGxlZ2FjeS10cnVuaworMTE4MTcgOGU5ZDk3OWRkZjU1MGIzMDIyNTk5NDNjNzA1NzJkZmMwM2FiOTM4ZCBsZWdhY3ktdHJ1bmsKKzExODE4IDQwZDIxYTViOTk5MDE1NmIwNDhjNzkyOThmNzc0MGQ3M2EwZDg4N2IgbGVnYWN5LXRydW5rCisxMTgxOSA4NGUyMWFjN2QzZWEzNThjZDhmNmZiNDIxMmU0OTI5ZGE0MmM4OWZmIGxlZ2FjeS10cnVuaworMTE4MjAgMTUwOTA3YzJjMmMwODI3OTczMDJjZWM0YWMzZjQ3OTIxODFmOWM2YSBsZWdhY3ktdHJ1bmsKKzExODIxIDk1OGU0ODg5ZWNhYjU2ZTM4M2U5ZDIzMWMzNmQ3YjZjNDJlZmVjZjcgbGVnYWN5LXRydW5rCisxMTgyMiBjYTZlMjI3M2ZiZjYyNzU0ODBhMDRlNTY2ZGIwMDA5ODliMDg3NjUxIGxlZ2FjeS10cnVuaworMTE4MjMgM2I5MTQzMmJhMWE0MTMxNTZiMzdmMjZiMDFlZDRlZDM4YTlkOTMzMyBsZWdhY3ktdHJ1bmsKKzExODI0IGM5MWU0ZDg3ZjY5NDY5NzE1YWY1ZTM4MjJmOTc1YjRjNGQzMzJlMTkgbGVnYWN5LXRydW5rCisxMTgyNSA4MTU3NGU0NjQ2YjQzY2FkZjE4M2MwMDg2ZDU2MmM4MjRjODBmNmRlIGxlZ2FjeS10cnVuaworMTE4MjYgN2YyNDJmMjlhNDVmYThhMDAwN2I4NDk0YmExNDBmOTM3NTI5NzdlZiBsZWdhY3ktdHJ1bmsKKzExODI3IGZkNWE0MzA5YmZkYzJkNGFmODI1NDg2YWVmZjVmZjEwMDI2OTYyZTYgbGVnYWN5LXRydW5rCisxMTgyOCA3NTIzN2NhNTZhZmYzNzU1MmI2ZGFlODAzYTY3ZTU5OGM5YzI1OGRhIGxlZ2FjeS10cnVuaworMTE4MjkgNDYyY2NkMGJiZTUwYWM2OTJmZDNkOGZiYjg1NDcwZmIwNzQxYjIxMyBsZWdhY3ktdHJ1bmsKKzExODMwIDkzNDBjYjJhZDNhODg3NGY5ZGZlZTg5ZGQ1YWNlZmIxNzhlNDNlODggbGVnYWN5LXRydW5rCisxMTgzMSBiNjA1ZjIyYTA5OWFhOWM2OTZkOGM4ZjFkZjM1MTFkYTAwOWUyMDI1IGxlZ2FjeS10cnVuaworMTE4MzIgZjRkY2I5MGFjNDE5ZjY5ZWEyMGZkOWQ3OTkyZjQwN2YwM2E5MDU1YyBsZWdhY3ktdHJ1bmsKKzExODMzIGZiMmU3ZjM4ZTFiYmU2OGFiYTg5OTlkMmU3ZDUzY2JkOTYyMjdkMjcgbGVnYWN5LXRydW5rCisxMTgzNCAwNDFmMjJhNWEzOWRkOWIxZTMyNzMwYTM3YWI3NzYwZjg1ZmNkN2U3IGxlZ2FjeS10cnVuaworMTE4MzUgYmEzMjc3Y2QzMDY4NWY1MmNjOTlkNjMxOGI1NmM5OTc2NTIyYzJkYyBsZWdhY3ktdHJ1bmsKKzExODM2IGQ3NDBjOTYxM2JiYTdhMWFkZGEyNjRhYjY2NTRlM2MyN2Q3ZGE4YjggbGVnYWN5LXRydW5rCisxMTgzNyA3MGIzMmY0MWE3ZmJmYjM4ZWU1NzI5NDYyOTE2MTg0NDA0ODNhNGQ5IGxlZ2FjeS10cnVuaworMTE4MzggNWEzZDIxMzAxYTA1MTQ1YWYxMDAyOTIzYjVhZWI2MzY5ODc5OTFkNSBsZWdhY3ktdHJ1bmsKKzExODM5IGVmNjhmMGU2MDllMTk4YWJlN2E4OGQ3Y2I0MTI3ZjdlZmQxZTBiMWMgbGVnYWN5LXRydW5rCisxMTg0MCA0Zjc4NTA0YTVmODFkYzc2YmZiODU4YTA3NGQyNzIyYTkwYTI5ZTYyIGxlZ2FjeS10cnVuaworMTE4NDEgNTBhMmQ2NDI3NmU0YjEyNmVmZTA4NTIxNjExMzQ0OWVkNDVkYjFlOSBsZWdhY3ktdHJ1bmsKKzExODQyIDIzMzYzYmI4YmQ5MGNmMTlmZTdlNDRlOWZjOGVjNzczYTlmYzUwMzMgbGVnYWN5LXRydW5rCisxMTg0MyBlMTZlMzYzZTM5MWI0MzNhMzg3MTA3YTJkY2I5NjMzOThiZjgwOTMxIGxlZ2FjeS10cnVuaworMTE4NDQgYmM5YWVhNzE4ZTRlMzJlM2Q3MWI5YjMzZmI0NTcwZTljZDIzMWMwZiBsZWdhY3ktdHJ1bmsKKzExODQ1IDY2OTA4MzhiYThkYTYwZTRmNWM0ZjAxODZlZTJmYTI0MTZlNDdiMzUgbGVnYWN5LXRydW5rCisxMTg0NiBiZjg5ZjE0MzViNzI4Y2QwZWUzYmRlMzhlOGQwMDg2YjYyZTAwZjJiIGxlZ2FjeS10cnVuaworMTE4NDcgNDQyMmJhMzg5ZTQxNTcwYjcyODBlOTYzODY1MjA5YjMxNWE5MjIwYSBsZWdhY3ktdHJ1bmsKKzExODQ4IGZkYzNjNDU5ZWQwMGFmYzI4MTRmMDc5ZGQ1Yjg2ZTFkNTk0ZWEwNWMgbGVnYWN5LXRydW5rCisxMTg0OSBjZDE5YTdkYjg3MzU2Y2ZkY2NkNzA2MmVlZDZiYmVjOWEyNDkwNGRiIGxlZ2FjeS10cnVuaworMTE4NTAgNjViMDg4MmE0NGFiY2Q5YWQ2YzVhMmIxZjg4NTkzNTI5ODBjMmRhZSBsZWdhY3ktdHJ1bmsKKzExODUxIDYxZjQ1ZGQ3YzQzYTUzMDQ2ODhjMzQ2ZmVlYzE4MmE1NTg5NGFkYTMgbGVnYWN5LXRydW5rCisxMTg1MiA2YjVmN2U5YTMxY2I5ZTZlMDM3NTM3ZjRkMTZhMWFhMGU0MDFjNzA1IGxlZ2FjeS10cnVuaworMTE4NTMgZjBhM2MxZmM3YjkwMjRlZmZjM2Q5MTlhNzlkNTBmZmNiODE0Nzc3YSBsZWdhY3ktdHJ1bmsKKzExODU0IDZiODg5ZTRjMDc1NGUwMjA5MTRkYmI3N2Q3MDcyZmQzZWZiMDdjNzggbGVnYWN5LXRydW5rCisxMTg1NSAyZmU3YmJlNzFkZDhjMGEwMmIxZWRkMTg3MGJmNTQ0OWQwMTU2YzQ3IGxlZ2FjeS10cnVuaworMTE4NTYgZDFlYWRhOWJiYzNjN2EyN2Q4M2NiOGY2MGFmZDI1NTE5MTU4ZjIxMCBsZWdhY3ktdHJ1bmsKKzExODU3IDRjMjNhZTZjNmU4MmM2MWNlYzdhYTlkNThmMTNkYjk5YTY0OTcyNjAgbGVnYWN5LXRydW5rCisxMTg1OCBiMTAwNGI0N2JhYzBlNzI5NmY1ZDE1YjJhZmUxNjUxZDEyODBhNzIwIGxlZ2FjeS10cnVuaworMTE4NTkgNTBlMDYzMWNmMTE3Mjk4ZGQwYTEzOGFkM2Q1NGFjMWEyZWNkOTNlNyBsZWdhY3ktdHJ1bmsKKzExODYwIGYzNTFjNjRjODJlZGI4NjQ4NjU1MmFmOWIyOTdlM2VhYWY0NTNhYmEgbGVnYWN5LXRydW5rCisxMTg2MSA5ZjEzNWIzZDlhNzgzMTVkOWIzMWU2ZWQzOGJkMzczNzllYWYzNzgxIGxlZ2FjeS10cnVuaworMTE4NjIgYzgwMzIxYzMyOGI1ZDBkOWI0MDFkMzQ1YjdkZmMxN2RiM2RkNTczMSBsZWdhY3ktdHJ1bmsKKzExODYzIDk4MWRkMjBiYzcxMTYyYmYwM2M4OTYwNWJkODJhOWQzNDMwZGZiYjAgbGVnYWN5LXRydW5rCisxMTg2NCBmNjgxOWI5MjZmYjJjNjYxMzFiZTZmMmFmODkxZmI2YjkwZDEwNjE2IGxlZ2FjeS10cnVuaworMTE4NjUgZjA0Mjg4Y2NmNzdiN2IzMmJjYzUzZGYyOWEwODc3MjRkZWE0ODhkMSBsZWdhY3ktdHJ1bmsKKzExODY2IGE2ODA4YmNmOGFjMjliNGNiNWIxOWZiNjExZDM1MDM1YmJkZjgwMzQgbGVnYWN5LXRydW5rCisxMTg2NyA3YzNiZWEwMTE4OTU4ZWEzNjM0NzEyMWExNDQ2MmU4YTk3MWZjODI5IGxlZ2FjeS10cnVuaworMTE4NjggMTA2ZmFmMzY2ZTNmMDdlZmExMWM4YTc4YzllNGI1OWJkZmE1ZTNlNSBsZWdhY3ktdHJ1bmsKKzExODY5IDZmZjA5NDhmZjk1MWM3YWJjODU0NGE4Y2M4ZmI0YzVlZWVjNjQ5OTIgbGVnYWN5LXRydW5rCisxMTg3MCAyMjlmNzNmMmM4NzhmZTNkMjE0OWYwM2EzZjc1ZmNjYWIwZWZjYjU1IGxlZ2FjeS10cnVuaworMTE4NzEgNDgwNTY3MzEwMTk0Y2EwNzY1Njk4MWEyNTFiZjMwZjM0ZDU0Yjk5YSBsZWdhY3ktdHJ1bmsKKzExODcyIDliZjQwZWYyMjdjOTJiNmI0NGM5NmRiZjUyYjM1YzgwNTM3YmU5YTIgbGVnYWN5LXRydW5rCisxMTg3MyA0MmEwN2JlZjYwZTAyYzczYTkzMDA1ZTM2ODM0MDZmZjg2NTkxY2FkIGxlZ2FjeS10cnVuaworMTE4NzQgYTRiNGJhNWM0YWEyMTFiNjdmNjNjN2Q2NDQ0MTMxYzY3YTUxODQ0MyBsZWdhY3ktdHJ1bmsKKzExODc1IGUxODAyNzEzMGJiZTIwZDM0ZTYyZmU2ZTdlZTNlYmQ0NGQ2ZWMwNTIgbGVnYWN5LXRydW5rCisxMTg3NiBiZmE3ZWQwYjFhNmJkMjBlNDQyMGU1MzRkMGZlYWNiNDBlZTNkZjZlIGxlZ2FjeS10cnVuaworMTE4NzcgMDliNWNiNDc1OTJkNDRhYmU3ODRmYTI5NzVhNjZmYWNkZjEwNmRkZSBsZWdhY3ktdHJ1bmsKKzExODc4IGFmZTUwYjY2MTU0OGM4ZDI3NzNkNzVmZTg1Mzc5NzRmNmM4ZmIzZDAgbGVnYWN5LXRydW5rCisxMTg3OSA4YTM0OTMwOWZkZjQzMzE5MGRkNjBjMzYxODhiYzYzY2Y3NWEzYTQzIGxlZ2FjeS10cnVuaworMTE4ODAgMmIzNDQ2MWJhNGEzYWNlYTY2OGJkYjVjMWM3MjdhNDMzZDM3MmUwZSBsZWdhY3ktdHJ1bmsKKzExODgxIDY0Y2ExMTU2ZWRmMTkwNjc2OTQzMzZmZjlkMDNjZTA2YTNiY2Y4ZDQgbGVnYWN5LXRydW5rCisxMTg4MiAwMGIwNmNjNWI5ZGExNzgxMTRjNWY0M2NlYmI0YWZkZjU2Mjg0N2U3IGxlZ2FjeS10cnVuaworMTE4ODMgZjVkMzk3NGQyMDlmMzNiOTJmMTMzZWY2NWQyZTQwZDAyNGRmZjZkMCBsZWdhY3ktdHJ1bmsKKzExODg0IGYxMGM2YTc0MzhmNWNlMTM5YzFiMTM2YmQxNTA5ODU3ZTc2ZGI1MGIgbGVnYWN5LXRydW5rCisxMTg4NSA5ZGQ2ZjQyOTY0NzlmYmY3Y2E3NDUxOWE4YjU3YzM4OTA1MmE1YzlhIGxlZ2FjeS10cnVuaworMTE4ODYgNmNlMGNlNGVhM2MxODQ3ZDVlY2FjMGZkYWY5NmU0Mjc5NDc4NWJkYyBsZWdhY3ktdHJ1bmsKKzExODg3IGE5YWU5OWY5MjE1NDAxODc2MzlkNmE5ZGNiMWVkN2RiNWUwZDljYWQgbGVnYWN5LXRydW5rCisxMTg4OCAyMTFjOWUyODM0NjZmNmU1YjJiYzQ4ZWIyMWY5MjYxY2M0Njk5NjkxIGxlZ2FjeS10cnVuaworMTE4ODkgM2Q5YTBhM2U1OTZiMjhhYmM5M2Y5ZTgzOWE5NzcwOTg3NmU3NGNiYSBsZWdhY3ktdHJ1bmsKKzExODg5IDIxZDcxZjJlMjcyNDhhMGY0ZTM5M2QwZmMzMjFlY2Y5Yjg5MzIxZDIgbGVnYWN5LXRydW5rCisxMTg5MSAwOTRjMzg1YjU2MjQzMTM2YjU5MzJlNTEzMjRkMGViNTRkM2IyNjMzIGxlZ2FjeS10cnVuaworMTE4OTIgOTdhNTQzYmY5ZjlhNjQ0MDFlNTg5ZTNlNGExODlmOTIxOWJlNTE1ZSBsZWdhY3ktdHJ1bmsKKzExODkzIDg3YzgyNWVmNzg3OGRhNmUzNmQ1YzM2NTUyZmYwZjljNTczMjkwOWUgbGVnYWN5LXRydW5rCisxMTg5NCA4Y2IzODhlNzFkZDkwNTA3NWU1ZDVkZjQ4NDQyOWZjYTE3YWZiYmZiIGxlZ2FjeS10cnVuaworMTE4OTUgYjA0NjVhZWIwZWZjZTMwMzBhNjFlNjAxOThhNmI4ODMyNWE3YmE1MCBsZWdhY3ktdHJ1bmsKKzExODk2IGMxOWU5YWMyYjBjOGM5OTc4YjMzNDMyMWI4ZDhiYzJmNjZjZmRkYTMgbGVnYWN5LXRydW5rCisxMTg5NyAzYmZmNjczNjliMTEwODU5ZmU5N2U0ZDQ2YzgyMGQzMTY3ZDRhNGM0IGxlZ2FjeS10cnVuaworMTE4OTggZjM2NzA5MjViMDk4Yzk2NjY3NGQzOWVjYTNlMjJjY2JmMTQ3NjRkYyBsZWdhY3ktdHJ1bmsKKzExODk5IDljY2FlY2QzZGVhMzJiZTY2NDg3MmZkNDk3ZmNkNDBlMzkwNTczZTkgbGVnYWN5LXRydW5rCisxMTkwMCA1OGEzNWU1ZDEzY2M2MjcxNjI0NWZhMTBhNjUyOWExZDQ1MTVkYjZmIGxlZ2FjeS10cnVuaworMTE5MDEgZjUwYjljYzc2YzFlNmQ5MTczNTk5MTdmYjc0MzE2NDRmMWFiMmM3NCBsZWdhY3ktdHJ1bmsKKzExOTAyIDM4ODYxNjVkYmE0MjY3OGM1MmRkZWMwMjUxNzZmN2Y5ZWM5ODZjNjMgbGVnYWN5LXRydW5rCisxMTkwMyA2M2VjZjdhNGMwNzBlYzliMzMwY2VhZDFkMzcyNGY3NGQ1ZGQ0MjU4IGxlZ2FjeS10cnVuaworMTE5MDQgZWU5OTJiMzEyMGQzYWVjZTVmYTM5NjEwYTQyZmUyNWQyNzQ1ZWJhZiBsZWdhY3ktdHJ1bmsKKzExOTA1IDlmOWRhMDE4OWI3YjRkZWUxMzQxZWYxZWVlNDQyNzhhZjNlMWU0NWEgbGVnYWN5LXRydW5rCisxMTkwNiA0NGM1NDY4ZjhkMzY0NTM1NjE3YzNiNWI4MjBhNjAxZDExODE0ZjAwIGxlZ2FjeS10cnVuaworMTE5MDcgNjIwZTAyMjUwYzgwYmM2MDkzMzYyNWJmMzI5NDA1NDg0YzY5NjQ2MSBsZWdhY3ktdHJ1bmsKKzExOTA4IGZiY2E0ODYzMjdjZTFjMTRiMDk4YWUxNTU3ZTAxOTdkOTNlYmUyZTQgbGVnYWN5LXRydW5rCisxMTkwOSAwMzc5ZWI3YmUzMjNlOGU3OWIxMTQxNWNlNDJkNjA1ZmQwMDc3MjMzIGxlZ2FjeS10cnVuaworMTE5MTAgZTcyNTRlMmYyZGMxY2QxMWYyNzVhMTYzYjNjODMyMjQ4NDI0MjhmYyBsZWdhY3ktdHJ1bmsKKzExOTExIGMwM2ZmZmYzODdmOGJkZDQyNDUzYjFmOTlkNDAyMmEwNTBiY2MyMzQgbGVnYWN5LXRydW5rCisxMTkxMiA3YmE3ZmJlYjg4ZWMzYWRlZjI1ZGVhYzZiMzZkMWMyYTMxN2E2MWY3IGxlZ2FjeS10cnVuaworMTE5MTMgMDEyOTk3YjlmMWViZDEyNjU3NmJiZTExZGQyOTdjZDU0NmQxY2FiZCBsZWdhY3ktdHJ1bmsKKzExOTE0IGU2ZWEyYmM5NzRlMjZmYmJmMzc0MTUwNTU2MTkyY2Y1NDk0ZDZiNWQgbGVnYWN5LXRydW5rCisxMTkxNSBmNmY4NmIzN2YxZmMzYjlhNGUwYzE1NTg5YmIyY2I5YWI5ODg4NjlkIGxlZ2FjeS10cnVuaworMTE5MTYgM2I4YjMxZDJjOWNhMzExZmU3MmYzNmRiMWU2Y2IxODU2NjIwZTJkYSBsZWdhY3ktdHJ1bmsKKzExOTE3IDhlNGZkYjBiMGJiOGU1OThlNGE5YWVjNWM0YzY5MTc2YWYyNWYzZTQgbGVnYWN5LXRydW5rCisxMTkxOCAwMmIwYjg0ZGQ1NDVlN2JhNWViNjdiZTkwOGJhNWZiZjc2NTA3MTQ5IGxlZ2FjeS10cnVuaworMTE5MTkgMWE1OWYzNjU0YmMxMTNhMzk5NjAxNzZjNTZjYjVhY2JkMGU1OWRlMCBsZWdhY3ktdHJ1bmsKKzExOTIwIGUxODA2YjI4MGY1MzkzY2RkYWYzYzUxYTQ1NjdkZjk0NzY4ZmY0N2MgbGVnYWN5LXRydW5rCisxMTkyMSA3ZjhmNjA4YWNkYmNkMzcwYTdjMTQyMzMwZDM3M2RmNmFjYjJiY2FlIGxlZ2FjeS10cnVuaworMTE5MjIgNzkyY2Q3YzVmZDg4YWQ2N2Q0MTQ0NDhkNTY3MDNjYWViOTQ2NTVkZiBsZWdhY3ktdHJ1bmsKKzExOTIzIDkwZmJlYzQzNDNkZWM2MmZlYmJmZjc3Yzc2NmU1YjY1Y2M3Nzk4MzMgbGVnYWN5LXRydW5rCisxMTkyNCA3NTY3ZWY0MGRlNzdjYjdiZTk1YTk2NGQxMGYzNTBkMTVjODE0MDZjIGxlZ2FjeS10cnVuaworMTE5MjUgMWM5NGYzNGI0OWUzZjc0YzM1YTA4NTc2NGM0YTk4N2ViYjM2YzJhYSBsZWdhY3ktdHJ1bmsKKzExOTI2IDMzN2FlMTJkODA1MDA3YWQxYzZkZmFjNmFkN2RhYzJiNDU1MTg0NGUgbGVnYWN5LXRydW5rCisxMTkyNyAyMmMzMmRkNjNmZjVkNzdjZDc0MWRkMTdkOTIwZWQwNzcxNTlkM2FlIGxlZ2FjeS10cnVuaworMTE5MjggODdiOTU1NGM1MWQ0YmE2ZWE1NzgwOTIzMDk0ZGJhMzViZDJkZDgxNCBsZWdhY3ktdHJ1bmsKKzExOTI5IGVkZjc1NTNmYjIwZWZlZGVmOWI5MDE5ZDA0Mzk3NGZlNzFiZDU5YzEgbGVnYWN5LXRydW5rCisxMTkzMCA5ZWE1YzQyZGNiZWRiNWMzZTE2NTY0ZjYwMjE5MzBmMjg0MDM0ZjY1IGxlZ2FjeS10cnVuaworMTE5MzEgNGY2ZjczMGQyNTU2ZGJlOTMxZTBlYWI4NzBiNjcyMDgyNmExYWRiZCBsZWdhY3ktdHJ1bmsKKzExOTMyIDYzZmU4NTczNWJkY2Q5NTRkMWEwZjQ0NWJkN2E0NGNhMjEyM2Y0YjMgbGVnYWN5LXRydW5rCisxMTkzMyA0OTYyM2RhM2M2M2YzZjUyZTJkNTc3OWFhMmQ0M2VkMmFjZWU0YjQ1IGxlZ2FjeS10cnVuaworMTE5MzQgYzYzNjY4OTNjZWUxZDk3NjBiNTM2MTZlMzhhYjc3MjBmNzVlYTc3YiBsZWdhY3ktdHJ1bmsKKzExOTM1IGNlYjg3ODc5NjEwODE2OTEzOWQ0ZDM3MWIyOGY2YmFmOThjZDY4MzYgbGVnYWN5LXRydW5rCisxMTkzNiBlMWMzMzA5NDMyMjFlNWQ5OWRmMjNhNDJhMDk1ZDJjYmQ1MDZlMjA1IGxlZ2FjeS10cnVuaworMTE5MzcgZjhkZGQyMzQwMzk4ODlkOWNmZmY5NWM3ZDBhMjFhMGNhYWUyZjE1ZiBsZWdhY3ktdHJ1bmsKKzExOTM4IDkxM2ViMzFiMDMxNzIyMTI2NTFlN2NhYTg0ZDA4YzVmNGJiZGU4MGIgbGVnYWN5LXRydW5rCisxMTkzOSAwZmVhNWQ1YzRmZDlkYThkNzgzMTQ3NjkxNTIzNGUyNGI4NGFmNDE1IGxlZ2FjeS10cnVuaworMTE5NDAgNTYyMTdlYWJjMDdhYjRkNWM1OTgzMmEzMjBhN2M5N2U0ZTUyODY1MiBsZWdhY3ktdHJ1bmsKKzExOTQxIDRiZDUxMjhlNWVkNDM0NGVkMWIxNzg2MGE3NmZjNjBiNDdlYTUyOWEgbGVnYWN5LXRydW5rCisxMTk0MiAxODgwZWFkMzIwMGNkNDVmZTJhOTFlZGQ5ZWNiYjYyNzc2ZjgxMTAzIGxlZ2FjeS10cnVuaworMTE5NDMgNDFjODg0ZGZhZDVlZjRiOTk3ZjZjNjVhYjc0ZjQxMGNiZmQzMzk3NSBsZWdhY3ktdHJ1bmsKKzExOTQ0IDI1YjY5MjlmZmIxM2RlMDA1YTg4NjE4ZjBhNzUzYjUzNWFkM2FiMTggbGVnYWN5LXRydW5rCisxMTk0NSBmMjQyY2QxMGUxNmEyNDhlZWNmZjE2NzU0MDg4OTQ4MGUzMjlhZDljIGxlZ2FjeS10cnVuaworMTE5NDYgZDM5MzlhZDM4MTc2NmFhMzAxOWQ2ZjA2NTMzMzY0YjU4YTg4ODMxOCBsZWdhY3ktdHJ1bmsKKzExOTQ3IGRhNzFhYTFiZTE5MWMwMWMzZTg1ZDc5NDg5YjViMjk4YWU0MWM0N2UgbGVnYWN5LXRydW5rCisxMTk0OCBiMzRmOWU3ZTI2OTE0NjU0ZDQ4NjNjNjdiZjQ4N2U2MDA2Yzk4NmMxIGxlZ2FjeS10cnVuaworMTE5NDkgNGQzZTJmMWQwYWU0N2VkYjc1ZWMxMzE3MmJkMTA3NmJhNTBlNTMwNiBsZWdhY3ktdHJ1bmsKKzExOTUwIDhiYzBhMzJkZGFiNWEyMmJiOTZlMjc3MDg4ZjJkMmNhNjZiNjUyMjYgbGVnYWN5LXRydW5rCisxMTk1MSBlNTk5NjI3OWY1OGM3YjMzMWNhMDgzMzM2ZTFlMTU0NjVlZWY0NDc0IGxlZ2FjeS10cnVuaworMTE5NTIgMTdiY2E0YjNkYTkzNTdjZjlkZDlkYjk1NDA1ODk4OWU4ZGFiMWU1MyBsZWdhY3ktdHJ1bmsKKzExOTUzIDFhZmRjNTU4MDE1NzhjZjFjYTU2NzJkMDNjNWUwYjZiODg0OWEyMDMgbGVnYWN5LXRydW5rCisxMTk1NCA1NDQyMmI0NmY2ZDE4MDJjYzkzYzQ3OWYyMjc4MzY3ZmY0ZWI4ODk0IGxlZ2FjeS10cnVuaworMTE5NTUgZTdkOTg0ZjI2NmNjNjFmNmU2YWZmOTZjODRlYjRlMmMyMmQxMjM5YSBsZWdhY3ktdHJ1bmsKKzExOTU2IDYyZTFiY2M2NmE5M2U0MjU1OTU5YTdjMTgyZDYwY2E1ZGUwOThjNzUgbGVnYWN5LXRydW5rCisxMTk1NyA0ZmE4ODEwZTg1Y2FjZjVjZjBlMmRlYTA0YmZiZmNhM2QzMWNlZGUwIGxlZ2FjeS10cnVuaworMTE5NTggOWZmZDYwNDgwN2MyMTY3M2RhMzBiMTQwOTQ4MjhkYTQzOTExZDRhMSBsZWdhY3ktdHJ1bmsKKzExOTU5IDhkYzBlOTdhNDVlYzc1MjA4YzUyYTFkYzA2NjU3NGI5MmZlYTc1NzQgbGVnYWN5LXRydW5rCisxMTk2MCA3OThiMTA0MWQyNjA2ZjA5NDZlOWM1NGZiMGM0MzFmZDhjNDdjODkyIGxlZ2FjeS10cnVuaworMTE5NjEgYTExNWMzZDQ5MmRiMDgzNDc0Y2NiOTk5YTAwMTMyNmJhOTJmYzY4MSBsZWdhY3ktdHJ1bmsKKzExOTYyIDRkZTA5ZWExMGVlMDhlMDIwYjBlMzY0ZWQ3Njk5MTViOGZlMGFmMjUgbGVnYWN5LXRydW5rCisxMTk2MyA2YTI0NGU2NGIzZTZiMmVjMDc2OTRiZmU5YWNhYjQ0ODU0NTYxZDQzIGxlZ2FjeS10cnVuaworMTE5NjQgZmViNmMzODZhYjc3MjY1ODNlNGYwODMzYWMyN2M3NTYyODJlZjVhYSBsZWdhY3ktdHJ1bmsKKzExOTY1IGQwN2JjOGJmMmQ4NDU5M2VmNzkxMDNlODIyZWUxZTNjZjdhYTU4YjcgbGVnYWN5LXRydW5rCisxMTk2NiAxYWJkOTFmOTcwMzMyNWM3NDM0MTU0ZTliNzJmNTE2ZWYwMjlhMzg0IGxlZ2FjeS10cnVuaworMTE5NjcgYzIxODE1ZmEwNzc4ODY2NTA2MTY3NjI0Mjk4YzY0NDZiMTY1YTMwYyBsZWdhY3ktdHJ1bmsKKzExOTY4IGRlMDA5MzE2OTY0OWJiMzBmNmY4YWVmZTMwOGUyNDM4Yjg3NWQwNGQgbGVnYWN5LXRydW5rCisxMTk2OSBhYmYyY2QyNTFiMjRhOWM0OTFmMzg4YmI5ZDkxZmJkODQ2ZmJhNjc4IGxlZ2FjeS10cnVuaworMTE5NzAgM2Y3MTczNDJmMGEzNmRlOTFkNmRjZjMyZDE5NTdkMjAyNjMyNmY1YSBsZWdhY3ktdHJ1bmsKKzExOTcxIGMxZmQ4MTQ2ZjJlOWE3OWM3N2U1ODc3YWJhY2IxNjIwNTI5MTYzNTUgbGVnYWN5LXRydW5rCisxMTk3MiBmODllYTliZjlhNTI1ZDk4MzJkOGQyMWQyNzcwODE2ZWQyNzQ2OWVhIGxlZ2FjeS10cnVuaworMTE5NzMgMWVhNmQyMzU2ZTUyZGE0MGY5NDdiZDIyOTZiZjcxYWMwOWRmODk3MiBsZWdhY3ktdHJ1bmsKKzExOTc0IGFmYTBjZDIxN2Y0ZWJhNzJkYjQxYzE2NWEzMmFiZTJjZDY5Y2YyMzYgbGVnYWN5LXRydW5rCisxMTk3NSBmNmE4NGExYzdlMDJjZmIyYWVmYzIyMzA4YmNjNGE4OTJmZWMzYzE1IGxlZ2FjeS10cnVuaworMTE5NzYgMzlmZmM1OTY3YjZiYWNiMjQ0N2IwNjQzNDI1NzMxMzM0YTY5YThhMyBsZWdhY3ktdHJ1bmsKKzExOTc3IDRhYmNiMzJmN2VmNTRhMzMyZGM0ZGViM2I0ODAzMGQxM2JlOTAyZGEgbGVnYWN5LXRydW5rCisxMTk3OCBlMWU5YzlkZjRmMTJjOGY1MDFkNmMxMDdiYmQ5MTk4YzUzYjI3N2MzIGxlZ2FjeS10cnVuaworMTE5NzkgNjM4NzZjZDk5ODRjOTI2ODFkZmE4MzRiYThlZjM2N2Q1ODQ2ODY5NCBsZWdhY3ktdHJ1bmsKKzExOTgwIDI1YmUwMGYzMWRhNjE1ZDQzNmVlNTkzZjBiOGMzZTBmNjI3YzYxODEgbGVnYWN5LXRydW5rCisxMTk4MiBkODQ3MTU1MjMwOTVhYzI3ZjdiMzk5Mjk2OGIxYzFmMjZlOWZlYTE4IGxlZ2FjeS10cnVuaworMTE5ODMgNmU2YmU4OTZlYzQ2NmU5NDRiMzlkMzY5M2M4OGQzOWJhNjFjNjg5OSBsZWdhY3ktdHJ1bmsKKzExOTg0IGQzOTI4Yjk4ZTJlMTNlOTIzOGMzMTUzNGU2NTFmM2I3M2I1YjAzNGUgbGVnYWN5LXRydW5rCisxMTk4NSA4ZjNlN2ZlMWQ0Zjc2M2MwYWY1MTE0ZjNhZTVjOTYyNmE3ZTM3Y2QxIGxlZ2FjeS10cnVuaworMTE5ODYgYjBjYTJjYTU4NmIxNThiMWQ0YzEwODI4NjljNTEyOWFiM2RjNzYyMCBsZWdhY3ktdHJ1bmsKKzExOTg3IGRiN2NjYTA5YmVhZmU3YjdjMjIxZTgxM2RiMmRlOGQ0NGNhYWZiODQgbGVnYWN5LXRydW5rCisxMTk4OCBiNzVkOTNlYzhlNWE2ZjdmMWIzZTExM2NmOWYyYjA3ZDMxODE4NjQxIGxlZ2FjeS10cnVuaworMTE5ODkgYTNiY2YxYjM2NTUxN2I1NGE5OWZmN2ZkMjgxMGM3MDBjNjZkZDdiOCBsZWdhY3ktdHJ1bmsKKzExOTkwIDk2NDdjNmFkNmE1MDk4Y2U4OTVhZTJkNzI3YjlhYThlMjQ2M2RlMWQgbGVnYWN5LXRydW5rCisxMTk5MSAxODE1MDdjYzFhNzI1OTVhNWYwMDU1NmFhODI3Nzg4MmJkY2VmYzI4IGxlZ2FjeS10cnVuaworMTE5OTIgNTQ5ODMxNzIzZWY4NTc4YTFhYTJmMTFjZmRlM2ExOTU3NmZmZTlhZiBsZWdhY3ktdHJ1bmsKKzExOTkzIGVhYmViYzE2MTUxODZiMWUyZTRmNmRiMzMxN2U2NTAyMmVjZjIxMDMgbGVnYWN5LXRydW5rCisxMTk5NCA1ZDgxZTQyYzZiYTJlOGUwNTk4ODI4MTA0MzIyZWM3N2RkNmI1ZjlkIGxlZ2FjeS10cnVuaworMTE5OTUgOTZjNzM0YWNmODRmNTVjZjkwM2Q1ZWE3OTZiMmZkOGNiOTU2NGE3NiBsZWdhY3ktdHJ1bmsKKzExOTk2IDc2ZTkzNTkyNGZhZTBiNDhjNzg1MWIyOWE3MWNmYzZjYmNhNTJlYTEgbGVnYWN5LXRydW5rCisxMTk5NyA2M2ExYTg1MTNjMWRjZTcwZmVmZTczNzc0MTY1MjRmNGJmZWZhMzRmIGxlZ2FjeS10cnVuaworMTE5OTggNDQzMWU3YTMxOTc3NWJiNmVkYjQ2YjEyYWQ1NzA3M2I1ZjkyMGUxOSBsZWdhY3ktdHJ1bmsKKzExOTk5IDM3Nzc3ZTBmODBlMzc1NTRlZDJiMDdkY2VhNWM5NDBmMjUwYWI1ZWIgbGVnYWN5LXRydW5rCisxMjAwMCA2MGRmYTIxMWRkZThiYWQ2NDg0ZDhhZTE0NDU0NzEzYjQwMjVkMTk2IGxlZ2FjeS10cnVuaworMTIwMDEgZmVjODYyMzAxZDZlMzNjZWFhMmRkNGIxMWM0NDJjYjU1MjMwN2NjZSBsZWdhY3ktdHJ1bmsKKzEyMDAyIGY1OTY1MThkMDY5MWUwMjViY2FlNmNlNzQ3YzgxNzE2MWRiY2RjZjUgbGVnYWN5LXRydW5rCisxMjAwMyAyNDQ5NzY0M2RjYzkxZDE0ZGY2NTJhZWM4NjE4OGZjZjM1OTk4ODlhIGxlZ2FjeS10cnVuaworMTIwMDQgMDQ0MjYyMjQzMDJhYWRhZTRhMjM3NDRjNTFjZDM5YThjNTE4YjgxMCBsZWdhY3ktdHJ1bmsKKzEyMDA1IGNkNzkwMzEwYmM0ZjA2ZjJhMzEwNTQxMjA2NGZjMTJmZDY2ZDcxYTggbGVnYWN5LXRydW5rCisxMjAwNiA2MGQ5OTBmN2Q3YWI1NmFmYzU5YzU1MjhkNGM4N2RmMzczY2Q1NjYwIGxlZ2FjeS10cnVuaworMTIwMDcgNGE3MzQ0ZDU1YWUxODc5NTI4ZDBhODYzYzM1MThlZjYwYzdhNDIwNiBsZWdhY3ktdHJ1bmsKKzEyMDA4IDg1NDQ0YWYyYmU5NWQwNTViMTIzMzYwNWNmMmFkY2MzYjUyNGZmZmIgbGVnYWN5LXRydW5rCisxMjAwOSBiYmU5MjkzMmEwMDVlNTdlMjI4Y2VjMTQyZGE2MWJiOWRlNWZiZjUzIGxlZ2FjeS10cnVuaworMTIwMTAgYTJlODNiZGMxZmVhZWY3M2JhNTk2YWUxZTRjNDYxY2FkNjcxYzdjNiBsZWdhY3ktdHJ1bmsKKzEyMDExIDM1MGYyNDE4MGRjYjQyMmExNGQ3ZjZlYmEwOGIwZDRlZmEwYTRmZDggbGVnYWN5LXRydW5rCisxMjAxMiBhMTI2MTA3YzQzM2E2ZjlhMDdjN2QzNmFkODk5Y2Y5NTVkNGYwMjRlIGxlZ2FjeS10cnVuaworMTIwMTMgOTgzZjUzZjJiNmY2ODNjYjRmYWY5YTBiN2NkYjZhYTYxZmJiNWM0MiBsZWdhY3ktdHJ1bmsKKzEyMDE0IDU4ZjZkYTdjOGJiODk0MjE0YWYzOWY0ZWUxMmM2NWVhMGFmOGRiYjAgbGVnYWN5LXRydW5rCisxMjAxNSBmZTc4Mzk4NGY5MmVhM2EyNDg4OWFmNTRmMmM0ZTBmZTA1YWFhZTdmIGxlZ2FjeS10cnVuaworMTIwMTYgMjMwOTI1ZmU1YjJkZTlkZDZiMzZiMjFlYzAwYmE3MDU4NzhmM2IzZiBsZWdhY3ktdHJ1bmsKKzEyMDE3IDVhZTFhMjBiYmU3MWViNTY5ZTYyMTFjNGQ0YWNjZDlkNjJkNjJiYzEgbGVnYWN5LXRydW5rCisxMjAxOCAzMTVjYzA2YTgxNjE1NDdkZDQ5ZGU5ZjJiMTJjMzJjODU5Mjk4ZTBjIGxlZ2FjeS10cnVuaworMTIwMTkgMGYyNzI1N2ZiNmNmNGY0MTViZDZiM2E2NDA2NzFiMmVkOTA4ZDg4MCBsZWdhY3ktdHJ1bmsKKzEyMDIwIGExYThkZjczYmZmZjUyM2ZlN2M3ZDhkMzk4Y2NiYzkyY2ViMTliNTYgbGVnYWN5LXRydW5rCisxMjAyMSBlZDZjYWNkZGM2YzY4ZTg3YjkwNjFhY2ZmNDUzNjkzZjI5MWQxNDZjIGxlZ2FjeS10cnVuaworMTIwMjIgYzZhMTEwM2VmYThhZjMxZTZlNzlhNjljMGU1ZTFhNDg1OTE1MGY0OSBsZWdhY3ktdHJ1bmsKKzEyMDIzIDQ4YzcwMDQxMDkzNjNiYjE1MTQ5NTQzZWU2YzZmMjAwNWY1ODkzMTcgbGVnYWN5LXRydW5rCisxMjAyNCA3NTA0ZjIzYzkyNDdkOTEwNmU4OWE1NmZjN2QxZDg0M2ZlNjY5MjFkIGxlZ2FjeS10cnVuaworMTIwMjUgZjkwMmVjYzg2N2QwOGQzNGM5YTBhMzlmMDkwMmY0ODQ0OTRjMWFkNiBsZWdhY3ktdHJ1bmsKKzEyMDI2IGUwNTkwNDliMWE3NjIwYzhlMTUzYjQxNDlmM2MyNTZmNjdmZTE0M2EgbGVnYWN5LXRydW5rCisxMjAyNyBkN2QzOTI2MGZlODJkNWZmZTFkNTdiNmNhNjY2NDZhOTZiNGZkNTczIGxlZ2FjeS10cnVuaworMTIwMjggODNmODNmMDAyZDJlYWU1MWZmYjgyMzY4OWNkYjEzOTQxMTY0Nzk5NyBsZWdhY3ktdHJ1bmsKKzEyMDI5IDY4ODYzZjUxMjc2YzA4NTExMDViYzkyNWMxYWRjNzQ4MTJkMGZhNjUgbGVnYWN5LXRydW5rCisxMjAzMCBkZjA3NzdhYjdjNjM4NTRmODYzMzBhZTlhMzY4OTY0ODAzYjI3NmVkIGxlZ2FjeS10cnVuaworMTIwMzEgNzlhOGExYTc0NjdiMTIyZjQwZTE4MmRhYWZiOGUxYTdhMGI4ZDNmZCBsZWdhY3ktdHJ1bmsKKzEyMDMyIDUzMzI1YjhmOGNlOWIxY2QzZWIyNWY4YTc4MmQ5ZDMyNTFkZmZhY2UgbGVnYWN5LXRydW5rCisxMjAzMyA5M2VjYzUxZjU5ZDEyYWYzODNiNTM0YzJmMzE3NGQxMTczNDFmOTZlIGxlZ2FjeS10cnVuaworMTIwMzQgM2U1MGMxZGRhYjNhM2JjYjExYTJjOTBlMDBmOGZiMDgxNjczNWZjNyBsZWdhY3ktdHJ1bmsKKzEyMDM1IGYxN2NlZGE2ZTY2NjkyNTczZDNlZjFlM2EwNWI1NDcwZjUyNDA1NTkgbGVnYWN5LXRydW5rCisxMjAzNiBmZjM5MmRkN2I5NzA5NzQ0YmM0YzQ4M2ExY2YwNmM5YjBlOTEzMDNmIGxlZ2FjeS10cnVuaworMTIwMzcgODdiYmM3MjFiYTJiOTlkZjU3MWY3OGMyYjQwN2FkMGYwYjhlNDA2MiBsZWdhY3ktdHJ1bmsKKzEyMDM4IGFhMmMxYThmYThjZTExMjQ5NDk0Yjk5ODQwOTgwODNlYzNiNDEyMjAgbGVnYWN5LXRydW5rCisxMjAzOSBiOGVjOTc0YWZkNjk1NmQ2NzI1OTI1ODFmNjI3MzA4OWYxMDc2ZTQyIGxlZ2FjeS10cnVuaworMTIwNDAgMTQzN2MyMzM1YjNiNDZhNWU4YzZjMDQ1MzQ0ZTY5MDVhMWNkZDJlNiBsZWdhY3ktdHJ1bmsKKzEyMDQxIDZiYWQ2OWQzODIxNjI1ZjgyOTM4MTE2YTBmNTIxOTM5ZTkyZWNmYmIgbGVnYWN5LXRydW5rCisxMjA0MiAxNmFmMjU4MmM5NjRjY2M3YzVhNWUwNTViMWM2YjM3NThlMTY2NjczIGxlZ2FjeS10cnVuaworMTIwNDMgZDY0MTVjMjdiM2IxYjRiZjBiZWQwMGZlOTBmZjVlZGUzYTU5MjQ1NyBsZWdhY3ktdHJ1bmsKKzEyMDQ0IGFhOTYxYTQ2YWU5ZTA5NzYzYjMxM2E3NWRkNGRkZDVkYWVkMTRlNGMgbGVnYWN5LXRydW5rCisxMjA0NSA2ZTI0OWIxMzVlZDNiMjFkNjlmMTRjYzA2M2Y4MTVhNGEyYmZmNmEyIGxlZ2FjeS10cnVuaworMTIwNDYgODgxOWRlZjFiMzljNmFjYTA0MDFkYjZmODQ2Y2IxZTU1ODA3OGNhYSBsZWdhY3ktdHJ1bmsKKzEyMDQ3IDQ4NWMwYmRmZThhMGUzOWVmY2U1MDliOWI1MDk3ZGNmYWJkYTFlZjggbGVnYWN5LXRydW5rCisxMjA0OCBkNTk0ZTgzMmE1NmNiYzE5MjMzYzZkMmEzNjgxYzE3MzA5Yjg2NzVlIGxlZ2FjeS10cnVuaworMTIwNDkgZGYzOTg1ZWI1ODczYmM4Zjc2M2E0OTRlOGFiNjViMGU2NDQ3NGU4NiBsZWdhY3ktdHJ1bmsKKzEyMDUwIDlhNGY1YmFhODI0ZTdhYmJkOGIwNDQ3N2ZlM2I5Mjk1ZjljMWQ3NjYgbGVnYWN5LXRydW5rCisxMjA1MSAxNjg3OGE0YzI2MGQyMGE1ZGZlNDhmNGQ0Yjk5YTM4ZTk3M2NmOGU5IGxlZ2FjeS10cnVuaworMTIwNTIgOTE3N2M0MDlkYzQ1MTJhMDliMmNjMDgwNjIyZmNlNmQ2MzI3MjdhZSBsZWdhY3ktdHJ1bmsKKzEyMDUzIDIyMDA5MDRhYmRkYzUxMzY1NDRiMGRkMDhkZDZhN2IxMjQyY2U4ZWUgbGVnYWN5LXRydW5rCisxMjA1NCA4M2JiNjA2YTMyZTZmNDQ4Zjk4MDhjYWI2N2FkNDM5YTJjYjQzZWRiIGxlZ2FjeS10cnVuaworMTIwNTUgZjAyYzY1NDllZDFiNTQxN2I0NjIyMzdmYzU1YzQyOWM3OTZiZmJlZSBsZWdhY3ktdHJ1bmsKKzEyMDU2IGZhODY3ZDhlZTdlYmMwMzkwZWQ0NzlmY2IwMWQwZDAzNGQ2ZGRiOTIgbGVnYWN5LXRydW5rCisxMjA1NyBmZWI4Zjg3NjllZjYyZGM1ZmFjMTA5YzhkMTFkOGVmMWQ5ZDNiODlhIGxlZ2FjeS10cnVuaworMTIwNTggMDY3MTdlNTIwNjhmZmUzMDg1NzNlYjUzMDJiMDlhOGRlYTcwZjMzMCBsZWdhY3ktdHJ1bmsKKzEyMDU5IGFlOGUxNDk0NDQxNDdjYWYyZGI1NWU3MGQ0MWVlZWEzY2M0YmQ1YmUgbGVnYWN5LXRydW5rCisxMjA2MCBiYzllNzcyMWM5MTYyMDNmNTMxYjBjYTVjZjY1MTQ5YjZiNzZjM2I3IGxlZ2FjeS10cnVuaworMTIwNjEgZDg1ZDJkOTk0ZjFmNzg5ZjZmYzNiY2ZiZDIzMTE0NTgzMTcxZGU1ZCBsZWdhY3ktdHJ1bmsKKzEyMDYyIGQxM2E2MGI0NGI0NTg3YzY1YjkwOTRhMGU3N2E3N2Q2NjQ4OWZmMDUgbGVnYWN5LXRydW5rCisxMjA2MyBhMDkxMTg1Y2NmYjZiNDU4ZTBiYzU0ODNhYmQ4MjA1M2U2MWZkZWVmIGxlZ2FjeS10cnVuaworMTIwNjQgYWM3NDI4NjJjYTM2Mjc3ODg0MDA0Y2JkYTI3YmE2MjY5YWE4ZjZjMyBsZWdhY3ktdHJ1bmsKKzEyMDY1IGI3MTU4ZGIzNDdkOWI5ZmVlZGY4OWU3OTJhMmRiOTAwZGIzMDMzNTEgbGVnYWN5LXRydW5rCisxMjA2NiA1NTk5MTE3NjhkY2JhZGIyODUzYmVkNzY3MTcxN2M2Y2E1MTU3MWM3IGxlZ2FjeS10cnVuaworMTIwNjcgYWIyMGY1Y2RkNzlmNmU1NGE1ZGFiNGFjM2ZhZWU3MTExYjk3MmJhYSBsZWdhY3ktdHJ1bmsKKzEyMDY4IDVjZGJkOGMwNDAxNmNjNjQ0ZmM2ZTNkYTgwMjg4NjdlNGM3YjE5YTAgbGVnYWN5LXRydW5rCisxMjA2OSBiMDlhOWM0MTJiYTI5OTRhOTc5ZmZkYTVhYTFiMTQxYTAzOTczZDczIGxlZ2FjeS10cnVuaworMTIwNzAgYjY3NzQzNjc1M2E4NzJiMzQ0ZDgzOGRiYjk0NmQ1MjkxYjRkMjVkNSBsZWdhY3ktdHJ1bmsKKzEyMDcxIDhlNmVhNWYwM2U3MzQwY2I3ZmZjY2UwZjU5ZWVmZDMwYTBkMGIzODYgbGVnYWN5LXRydW5rCisxMjA3MiBhYTFlNDgyODVkN2JjZTAwN2E4ZTUwYzVjNTkzYzgxYjZlMTM4NDQ5IGxlZ2FjeS10cnVuaworMTIwNzMgY2RmNTYxN2MyMDIyZDJiNzcxODAwNThhZGMyYmM3ODhmMTRiNzI5NiBsZWdhY3ktdHJ1bmsKKzEyMDc0IDk4YWQ1N2MzOWQyMGRjMWYxMDVhNWE2NDgyNzJhNDlhYjEyYTA1NDYgbGVnYWN5LXRydW5rCisxMjA3NSA4MWRkN2M3M2Y3YjIxZjQ5YjM4ODcyNGNhYzcxZTYyYTEwZDQzOGUzIGxlZ2FjeS10cnVuaworMTIwNzYgMjk5Mjg0ZWU2NjlkZmZmYjdhNGZjOGJjNzQ0NmMwOWFiZjMxYmY3ZiBsZWdhY3ktdHJ1bmsKKzEyMDc3IGY0ZGE5NDQ5ZjAxMTAxZTJkNTc0NjY2NGNkYTllNWVkNDVhNDAxYWMgbGVnYWN5LXRydW5rCisxMjA3OCA5YThlY2Q3NTllMTM0MTFjMmFlMmYwNTFiOThjYmM5YTg1ZjczMTQ4IGxlZ2FjeS10cnVuaworMTIwNzkgNDU5NWVmNWE5NjhhYzUzNmViNjIwZjEyNzRmOGMzYmNkMzRjNjRhMiBsZWdhY3ktdHJ1bmsKKzEyMDgwIDg4ZDU5MGNjMTExNmU0ZjRmYTBhOWE0MDBlOTU1NDA0NjNiNGYxMmIgbGVnYWN5LXRydW5rCisxMjA4MiA2NDgzZGJlMDlmMDYxODhjZTNmYmUxNmU4YzMxYjQyODJkMDQ5N2Q2IGxlZ2FjeS10cnVuaworMTIwODMgZTY2ZTg4ZjUyNjA2NDNkMzgzN2VlODEwYTg2Nzk0MzQ4NzRlNDBkMyBsZWdhY3ktdHJ1bmsKKzEyMDg0IDNjMjk3YTZhZDRlOGJmOTlhOWMxYzc0YzY0ZmNhNmIwNGY0ODI5ZDAgbGVnYWN5LXRydW5rCisxMjA4NSA2MGZkYjFkYjExNzU2NjViOWQ3NTlmMDJiMWRjYWIxMGQwMDRmNTJhIGxlZ2FjeS10cnVuaworMTIwODYgNWE5Y2EyZTkzN2I1YmQ3MzRkZmNkMmU4YTUwNWMzNzViNjBlODVhZiBsZWdhY3ktdHJ1bmsKKzEyMDg3IDM4MDIzYTQyNWU0ODM4MGJlZDdiNjJiM2I3NTNiMDQ1ZjMzNDU2Y2IgbGVnYWN5LXRydW5rCisxMjA4OCAwMWM4ZmU0NDA2NGIzMmRkMmY2ZTczMDRmMzUyOTc4MDQ2OTc5NDIzIGxlZ2FjeS10cnVuaworMTIwODkgNDViZDZjNDBjMDVhZTA1MmZhMDA1MzZkMDcxYTIwMTAxYzQzYTRlYyBsZWdhY3ktdHJ1bmsKKzEyMDkwIDdmOTA3MzY3MDFhMzUwZTMzOTU1MzAwM2MwZWM1YTI2MDI3NGUwNTUgbGVnYWN5LXRydW5rCisxMjA5MSAyYWFmY2VlMjIwYmMwYjc2ODlmODJmNDZlMDljNGY5ZTAwZWJmN2U0IGxlZ2FjeS10cnVuaworMTIwOTIgZjIyZjc2OWJmM2Q5NDIxYzlhOWFhMTRlNjA2NTRkZTc0YzhlYjA3ZSBsZWdhY3ktdHJ1bmsKKzEyMDkzIDg2YmY3MGE1NWVmZGU0ZGU3NDIyYTE2OGFjODQ1NjEyNmUxNTEzOWUgbGVnYWN5LXRydW5rCisxMjA5NCA2MTZiMTc0ZWViNTQ4MzBkZTg0ZTBkZDIzNjA2OWU2ZjEzZmFmN2VkIGxlZ2FjeS10cnVuaworMTIwOTUgMzYwOWNkZGM3OWRmNjEwM2VlNDg0NTk2MDZkNTQ1NjkzZDFlOTdiZSBsZWdhY3ktdHJ1bmsKKzEyMDk2IDU4MzFiYjNjYTQyYTQ5Zjg4YWQ2NjIxOTVlMGYwYTE3ZWIyZGNiN2YgbGVnYWN5LXRydW5rCisxMjA5NyA1NGFhZmU0MmMwYzNmMjAxZWNmNjg1ZTc3MmJmNjRjNGZkMTZiOGRjIGxlZ2FjeS10cnVuaworMTIwOTggMzA3NmZmZjMwNTM1ZjJkMGI1YWI5ZjRmNjA2NTU4ZWM2MTgxMTRiZCBsZWdhY3ktdHJ1bmsKKzEyMDk5IGZjYmYyMjJlNjg5ODFhYTZmNDZkZWNmMzk0NGI0MTA2M2FkNTA1Y2MgbGVnYWN5LXRydW5rCisxMjEwMCAwZjNmOWUzNjYzNTZjN2I4MTE4ODViMjMzYjhkMzdjODExMzM1YmZhIGxlZ2FjeS10cnVuaworMTIxMDEgZDc5ODZiNGI5MTAwOWMwYTIyYzE0MjMzOWNiMGMxY2EyNTljM2U5NiBsZWdhY3ktdHJ1bmsKKzEyMTAyIGM0ZTJkYTQ3Nzk0OTI5Y2UwNWUwYWZhMzhjNDE4NjIyYzgyM2RmYjEgbGVnYWN5LXRydW5rCisxMjEwMyAxZGMwZWYyNGIxNWQzMjAyZTIyOTkxYjQxNWI5NjAxNjhiYTlkMzBhIGxlZ2FjeS10cnVuaworMTIxMDQgNmI1OWY5YWI1ZGIxYTUxMzg0MTkyYjYwYjRlYjBmOWNjNTQ4MjQ5MiBsZWdhY3ktdHJ1bmsKKzEyMTA1IGNiOWUzZjAwZDZiNjU0NzRkZmU4MDNhNzIwNzVlNmE4NzQ4OWM3YTggbGVnYWN5LXRydW5rCisxMjEwNiA4NDgzOTUzYTkyNDgzZDdlYjk1MDQzMWU1ZDQxNDU1MDE2NjQ3MThiIGxlZ2FjeS10cnVuaworMTIxMDcgNWEzNmJhZDFkMjQ4OWI4N2FiZDc3YTFjYmMyMjE5OWVjZGM1OWZmNiBsZWdhY3ktdHJ1bmsKKzEyMTA4IGMxZjk4ODU3Y2M1YmI3ZjYwNzkwMmQ4MzU3MmVmNWMzOTk4MjcwNjAgbGVnYWN5LXRydW5rCisxMjEwOSAyNjc4ZGJmNGFkNjlhMzMwZDZlNGVhZTNhMWVkNDBlMmI2MzExMmI4IGxlZ2FjeS10cnVuaworMTIxMTAgNTcwZmVkNGFiOGRhZjZmYzk3YjY0NTE0YTNkOWU0NzE2ZTkwNDRjNCBsZWdhY3ktdHJ1bmsKKzEyMTExIGFhODhjZmZjMzVhYjk0YTMyYTgxZTlhMTk0N2UyNzAxM2YzZTk4Y2IgbGVnYWN5LXRydW5rCisxMjExMiA1NDI2YmVmODllYzMzOGQwNGQ4ZmZkZDM0NjE4MmIyNDcwZmYxYzNkIGxlZ2FjeS10cnVuaworMTIxMTMgY2U3OWMwZTc0ZjZmZTFmMjkwYmU0OGY2ZmZlOTI4ZmVlYTE0Y2NjNSBsZWdhY3ktdHJ1bmsKKzEyMTE0IGMwMzc4N2VjOTgxMWM5ODZiNTg2YTBmZjZlZjlmMmU0Y2ZjMTk4ZGUgbGVnYWN5LXRydW5rCisxMjExNSA5YWJlZTYzYzZiYWIzYzQ2ZDdmNmI2YmU0MDg2YzJlNDhlYjI4YWEyIGxlZ2FjeS10cnVuaworMTIxMTYgYzEyZmVlNGNlMzYzZDhmMzFiMGRmM2YwYmI3N2ZhZDhlMzdkN2RhMSBsZWdhY3ktdHJ1bmsKKzEyMTE3IDk5MWJkMzUzY2ZlYmZiZDdhYjY0OWUyZjkzYjM1NTA3MzRiNzE4MjQgbGVnYWN5LXRydW5rCisxMjExOCA5MGZkYjM3NzY0YTIyYjEwNmI0ZjUyNzM3YzNlODQ2OGZlNmFkZGIzIGxlZ2FjeS10cnVuaworMTIxMTkgMTc5ZmI2M2IxNTU0NzQ3M2JiM2RhYTA4YmMyYzcyMTgxYTBjOWViOCBsZWdhY3ktdHJ1bmsKKzEyMTIwIDA3ZWQzOGMyOTZlZThmODViODlkZjdhYjg1MDBiMDkwZjIxMzA0ZmYgbGVnYWN5LXRydW5rCisxMjEyMSA1NjcyZjVmMWRiNDY4NGQxYTc2OWI4MmVmMjc5ZGU4YjBjYzY0NGU3IGxlZ2FjeS10cnVuaworMTIxMjIgZmE4ZjlmZTBhMzNkOTg1MTVhY2E0NDg4ZWY3M2U1MTgyMTIxNzgzZCBsZWdhY3ktdHJ1bmsKKzEyMTIzIGIyZmRkNzFjYTAwNmNiNDYzZTM3ZjI4ZGZiMDM5YzVmMzA5N2NjMjYgbGVnYWN5LXRydW5rCisxMjEyNCAxZmU0ODAwOWQ4ZWE4Y2E1Yjc2NTFjODliZTc4Y2QzYTJlYjFjYThmIGxlZ2FjeS10cnVuaworMTIxMjUgOThhNmZjNjg3N2FlZTJjMjE5NzNhYzAxNThiYTRiY2QzMWYyZmI2ZiBsZWdhY3ktdHJ1bmsKKzEyMTI2IDRmNTBjNzA0NTRhOWIyZDEyMGNhZDZjNGQ2M2FiNGZlZWY5ODNkOTUgbGVnYWN5LXRydW5rCisxMjEyNyA4MjAzMGNhMGZhMmVhMDBjNTRmNWM0ZGU3OTVlNjY0N2ZjYTk2M2E1IGxlZ2FjeS10cnVuaworMTIxMjggY2EyMTI4NGU4NzVkY2Y1N2UwN2Y3OTNhNDgyOGUxNmZhOWJjOTIzMyBsZWdhY3ktdHJ1bmsKKzEyMTI5IGQ2NjcxMDkzOWEzMjU0ODdmNGIyNTI1MTNlMWQ2Y2IwMzdlMjhhOWQgbGVnYWN5LXRydW5rCisxMjEzMCAyYjAwYmI1MDg4MDM2YTQwNTg4ZTIyZjM0YWFmNzQzMzI0YzQzMTlhIGxlZ2FjeS10cnVuaworMTIxMzEgYWM1MzQ1ODE0YmEwOTMzYzNkNWE5MmYyZTNiZDgyNTgyODZhMjMzMSBsZWdhY3ktdHJ1bmsKKzEyMTMyIGUyZGMzY2IwOGM2MGE3Zjk2MDVhZDA2OWIzYjkyYWJiYmJlNjI5ODIgbGVnYWN5LXRydW5rCisxMjEzMyA4NTg2ZDkxMWZiMzkwMjM4YjIzZTdlZGFlN2QyOTNjNzkyOGZhZDRkIGxlZ2FjeS10cnVuaworMTIxMzQgNDQyNjdiODhmYjU5NDEwZWY2OGU0NzE2Njc5YzUzYjg0MzQ4YzlkYyBsZWdhY3ktdHJ1bmsKKzEyMTM1IGU1ODk1N2YwNmExNTM4NGUyZDdkYzI2NWQwZTU4ZDE3ZDI1Njk0MDEgbGVnYWN5LXRydW5rCisxMjEzNiBmNWU1ODZiNWY3OTAwMDQ1YWE0M2U3MzRhMmY2N2Q2YTQ1MzIyNDM1IGxlZ2FjeS10cnVuaworMTIxMzcgZjljYzUyMzc0YzUyYzNlY2VlMmM4OTJlN2M5MmNkZjAwMzBiZjkyZiBsZWdhY3ktdHJ1bmsKKzEyMTM4IGRhMWRkM2U1NGI3YWUyNGEyNjIzZDBjZDVmZGYwMTlmOWNiYWZlZGEgbGVnYWN5LXRydW5rCisxMjEzOSA3MmEyZmJiMGUxZjkwMDM4ZGMwOGZjNTFiYzg0ZTI4MTM0ZWUxZThlIGxlZ2FjeS10cnVuaworMTIxNDAgZDE1MmFkZjNmMDk0Y2IyMmI5MjgyNWE5MDQ2MzE2NmIwNmQyNDJjZiBsZWdhY3ktdHJ1bmsKKzEyMTQxIDA4Mzc5YzdmNWZhOWIzMDFmMjFlZjBhYjJmYTM4MzY2NjE0OGY3MTkgbGVnYWN5LXRydW5rCisxMjE0MiBjMmVjMjFjNjVkMDUwMDVkNjA3NmE1YzU3NTZhNjlmNzQwOWE5MzUyIGxlZ2FjeS10cnVuaworMTIxNDMgMmNkNThhNjFiMDUxNjA3M2M0OGM5MzA1NjdiZmJjOWY4YWM0YjM0MCBsZWdhY3ktdHJ1bmsKKzEyMTQ0IDRlMTVkMTc1ZWVkMGM5YmI0OTFmMzViNjk1N2U4MjdmODVmYjc5MmQgbGVnYWN5LXRydW5rCisxMjE0NSA0NzQyYzUyOWQ5YzhlMWM5ZDY2MTdjZTI5Y2UzNzIxY2VkYWU0YzFlIGxlZ2FjeS10cnVuaworMTIxNDYgYzRlYWVmODlhNGE3NWQ5ODBhY2Q1MjVmODc4YWZmY2NhMzY4YTQ0NCBsZWdhY3ktdHJ1bmsKKzEyMTQ3IGM2NmIwZDM5YTczNmJlNjBlN2VlYmY1ZTZhNjlmZDcwODliMzUzZmEgbGVnYWN5LXRydW5rCisxMjE0OCA0NzAxMmMxM2VmZTQ3YjRkZWJiOTcwODEyOThhZWM1N2VjY2M5NmVjIGxlZ2FjeS10cnVuaworMTIxNDkgYjRjZGEzOTQwYWMzZmM5N2Y0ZjZhZWJhODEzNTFkZTc1YzBkOGQ1NSBsZWdhY3ktdHJ1bmsKKzEyMTUwIGI3N2QzNzM5OTM0MzdhOTljZGU4OWQwZDdjN2JlY2IwZDZmOGRkZjIgbGVnYWN5LXRydW5rCisxMjE1MSBlN2VlMTg4NGZkNTQ5MWNmZThlZGU1OWNiZTJkY2UwMWEyMGQ1N2Q3IGxlZ2FjeS10cnVuaworMTIxNTIgNjk0MWY0M2QzYmI4MDljNzA2MTAyNGE5ZjNmMGQ2NDRiY2JiMjE3MCBsZWdhY3ktdHJ1bmsKKzEyMTUzIDkxNzM1N2MxMjU1MjI2YzlmODhiZGVkYjU1ZTJkNmRjZTQzYTUxYzYgbGVnYWN5LXRydW5rCisxMjE1NCBiZmNlNzNkMzU3NmMzMjA4Y2RjMTJjMDg2NWI4MDExMzljZThhZTZjIGxlZ2FjeS10cnVuaworMTIxNTUgYWQ0OTdjYjVkMmRjMmY5ODlhNzRjMTMxZmYxMmI5ODk4MGVlOGU2NyBsZWdhY3ktdHJ1bmsKKzEyMTU2IDdkZGU0NTAxZjUzYWRhMzRkMTFlNjIwMjFkZWQyNTdhZWE4OTFiOWIgbGVnYWN5LXRydW5rCisxMjE1NyAyMzIzN2JjYjc3NGJmMmVmNjNmOWUyYzdjM2NhN2VmMjY5ZDkyY2Y2IGxlZ2FjeS10cnVuaworMTIxNTggMDRiMGEwZjI5ZjY1ZjMwYWE1NWRjNGMwNTU1MjczYWYwNjc3YjAzYSBsZWdhY3ktdHJ1bmsKKzEyMTU5IGEyMDZjNjFhODk1MDllNWQ0MWMxZDcxYTVmNzAxYzFjMDhmYzRmMWEgbGVnYWN5LXRydW5rCisxMjE2MCA0ODA4YThiNTdhZjNhYmJlNzc3NGEwNWJiYmMwZjE0NWM5MTg5NzVkIGxlZ2FjeS10cnVuaworMTIxNjEgOWJhN2Y1MGI4MjVhZDA4NTFjMzczODYwMGJhYmViMDM1MWUzYTJmZCBsZWdhY3ktdHJ1bmsKKzEyMTYyIDQ0NDk3MDJhMDk2YTRmZDc0N2M2OTI4YTU5Njk2ODE0ZGU3NDgxMGQgbGVnYWN5LXRydW5rCisxMjE2MyA0ZWVlMDYxZGFjNDRjYmNiNDVmNTMzYTUxMWI5YjhmNjRiYzg3Zjg4IGxlZ2FjeS10cnVuaworMTIxNjQgZTExZDc1MDA1YTVhOTY2MmNmMmU0NzdiMzU1MTM3OTBhZTU5N2MwMiBsZWdhY3ktdHJ1bmsKKzEyMTY1IDlkYTAxZTU4YTBiNTViYTk4ZjM2NGIyMTgxZjI4YmRiM2Y0Y2UwMGUgbGVnYWN5LXRydW5rCisxMjE2NiA5MTRmODNlN2ZhMGEwMjg5OWEzN2YyNDg2MGI2MmFiMTdhZDExOGQwIGxlZ2FjeS10cnVuaworMTIxNjcgNDA4NThhYjIzNTY4MjEzOWRhNDc5YzFlMzc1NDcyODFmOGRhNDRhNyBsZWdhY3ktdHJ1bmsKKzEyMTY4IDI3MmVjY2M1NzNlMjQwNmFmZWI5ZWVmY2JiZGJlNmEwMGQxMmZlNWMgbGVnYWN5LXRydW5rCisxMjE2OSAyMTRmMzA0NGQxOGMxMGNmNzFlOWMwMGUzY2YxYjZmMzFmMWVkYWY3IGxlZ2FjeS10cnVuaworMTIxNzAgMWQ0MGJjMjU3MDNhNTdjOWQ0YWViYzdlODFlMGU5YmY5ODI0YzgxNyBsZWdhY3ktdHJ1bmsKKzEyMTcxIGI0ODQzYTA3ZDU3OTFjMTMwMzZiMmVmMGMyZjAyOTJiZGI2NjBmY2EgbGVnYWN5LXRydW5rCisxMjE3MiA5OTE2ZmM4NWIyOGE1OWZiMjRmNzhhODI5ODQyZGJjMGU1YTU0NzQ2IGxlZ2FjeS10cnVuaworMTIxNzMgNTM3NjZmZWQ5ZjhjYjhhZWEwMjI0MzdhMzM3OTE1MTQ3M2RmMGY5YiBsZWdhY3ktdHJ1bmsKKzEyMTc0IGI3ODA0OWZlZmNlYjI5N2M2NjcyMGIxOTZmM2I3ODNhNmU3MDAzYWQgbGVnYWN5LXRydW5rCisxMjE3NSA1ZDRmMTM0NzE1MGVkZWE0NjUyZmE3M2Q1MDIxZjBkMDA2N2EzM2EyIGxlZ2FjeS10cnVuaworMTIxNzYgMDBmZWQ3Njk4MGJjN2Y3MjdlY2EyNGI5N2QzODJlNjViMDg4OTI5ZSBsZWdhY3ktdHJ1bmsKKzEyMTc3IGYzOWExOWExMjI5YWY2ZTFlNWU2NmY1MWUzMzBjOTVjZmU2OWQ2YzkgbGVnYWN5LXRydW5rCisxMjE3OCA4NzdkMjNiZDViZGMyZDMwNGZhMjFjMzQ1Yzk5YmRjZTFmYmYzMTFlIGxlZ2FjeS10cnVuaworMTIxNzkgOGI2MWUxMjczYjRiZGEzNGE3ZmI4OGIyYTc5MjcxYmI4Yjg1MzU5ZSBsZWdhY3ktdHJ1bmsKKzEyMTgwIDYxNTRkMmU2ODYwMzI4NjY5YjRmNjQ3NjUwYzYxYTEzNTIzOGE5ZGMgbGVnYWN5LXRydW5rCisxMjE4MSA1MzQ1ZmQxM2RlM2Q5ZDdhNGZmNTk5NjY3ODYwYTg5NTBmNmQ0OWQyIGxlZ2FjeS10cnVuaworMTIxODIgNWE2YmQ0M2UyZDVhNzU1NDQwYThjY2YwNzg2NzQ2OGQ5M2YxMWIwNiBsZWdhY3ktdHJ1bmsKKzEyMTgzIDEwOTU1YzM5YzBlN2I2YmU2OGQ2NGNlOGIxZWY5MTE0NjU0NzBkZWEgbGVnYWN5LXRydW5rCisxMjE4NCA5M2NiMWFhMjRmN2QxMDY5NzM4YmZmOTNlZTg1OGQ2Y2I0MzgyZDQyIGxlZ2FjeS10cnVuaworMTIxODUgYjBiODE1ZWVlZDJjNDkxYThlNThlYTA5YmRmYzJiMjExMmUzOTY3ZCBsZWdhY3ktdHJ1bmsKKzEyMTg2IGI4ODNlZjNiMmQxOTZiMmQ5YzhlMGI3ODcwNGM5NTEzMjA5ZDIzMWMgbGVnYWN5LXRydW5rCisxMjE4NyBlY2QxMTU0MmVhYmU1MTkzOTAzOWQ3OGMyNGIyMDM3YTFhMDMyNzE5IGxlZ2FjeS10cnVuaworMTIxODggMGEwNDM0ZWZlYmNmZWJjYTkwZjA1NjA1NjJiYjg2NDc1ODM2OTkyNSBsZWdhY3ktdHJ1bmsKKzEyMTg5IDMxNDg5Nzk5YzhjNjBhMzA5MjU1NThiYTQ5YTE2YzY3ODMyMzdlYWUgbGVnYWN5LXRydW5rCisxMjE5MCA4ZDNjMmE4MDgzNGNjMTBiZjEyMTg3ZjUwMWM1ZGYzYWJiMTFlZDc4IGxlZ2FjeS10cnVuaworMTIxOTEgNTM4OWM2ZTMwZTU0YjEzMDc1MGYwZjgxZjY5MzMwMzk0YzNiNWFjMSBsZWdhY3ktdHJ1bmsKKzEyMTkyIDI2MzY1NWM2YjY1NjcxODBkN2I4ZTNhYTE4NGNlMGRjZjE2MDk3OTEgbGVnYWN5LXRydW5rCisxMjE5MyA2MzczMjUyOWY2ZGY3ZTk3NWY3MTQ3ZDhhZmI1ZDRiYTcxYmIxZjQwIGxlZ2FjeS10cnVuaworMTIxOTQgN2E0ZWVlZDU0YjI0NTE0ZTBiMTEwNmVlZDYwZmQxZmU1N2I1MWEwYiBsZWdhY3ktdHJ1bmsKKzEyMTk1IDIyZjNhOGQ4MDNhNTE3ZWMyZDk2MWU1MTIzMTg5N2NjNTg4Zjc2MjkgbGVnYWN5LXRydW5rCisxMjE5NiA5M2M2NmFjNmFmMTg5NmQyNmFkNGE5YzZkZDkwMjJjMDJkYTA4N2ZiIGxlZ2FjeS10cnVuaworMTIxOTcgZjdlODY2ODRjZDRjMmQzNjQyZmE0Yjc5ZTQwNzExNjdhY2RhMWIzOSBsZWdhY3ktdHJ1bmsKKzEyMTk4IDk3M2MyMWRmMmQ2MDFiOWRmMTdmMTliMTIyMGY1ZmQxZjU5MDE5MTIgbGVnYWN5LXRydW5rCisxMjE5OSA5NzAxYzUwYzY5NDYwNzM4YTQ3ODMwNmEwYzg2YWMxYmQ1NzJlYzc0IGxlZ2FjeS10cnVuaworMTIyMDAgNTU1OTAyNTFjZjUyNzNiNjViMTNjYmRlNTljZmQ2NmY3YTk5MDY0MSBsZWdhY3ktdHJ1bmsKKzEyMjAxIDZiYTdiZDU2M2UzYmY3ZmE2YWVmYmM3YWZjZmY2OWE2MzdhMTA1ZTUgbGVnYWN5LXRydW5rCisxMjIwMiBiNWQxYTE2MjVjZDVkYjRmZmRjMGQyZmFjYWNmODI4NjMxMGM3Mzc1IGxlZ2FjeS10cnVuaworMTIyMDMgNDM5NDIxY2RhODllYTc2ZDY3M2MwMGNmZmJjY2Y0ZjQ5M2U4YzAzNCBsZWdhY3ktdHJ1bmsKKzEyMjA0IGMyMmRjMzAxYjM2YTgxZTJhZGRhNzM0NGE1NGNhMDRjZDVhMmM4ZmMgbGVnYWN5LXRydW5rCisxMjIwNSAxMjc3OTQ2MDU0ZThjNmUxNjJhZWNmMWVhMzE0NjRkYWRlZmNiNGVlIGxlZ2FjeS10cnVuaworMTIyMDYgZTBhNGZiMGFiYjc2OWRkZTE4MjUyM2EzMTFkYzM5NmFkZmM3MTFjYyBsZWdhY3ktdHJ1bmsKKzEyMjA3IGYzZjYwMjNmZWI3ODhkOTFhODE5NTc2MTQ5NThkMTNjNjdkMWM3NzMgbGVnYWN5LXRydW5rCisxMjIwOCBkN2RkNzFkMGQxODMxYTY4ZjEzYWIyYWM5Y2QwMTcwYmJmZjhmODkzIGxlZ2FjeS10cnVuaworMTIyMDkgZTc4YmRjY2QyMjRmZmM5MWVkZTg1Zjg3ZjhkZmNiNDQ5NGQ3Mzc4MCBsZWdhY3ktdHJ1bmsKKzEyMjEwIDJiY2RlMzQ3NDZkMWNmMGJkNDFjNDk2NmY3MWIxMzNjOWI0MDE0YWIgbGVnYWN5LXRydW5rCisxMjIxMSBhM2M5Y2UyOTg1ZGVlOTUxYzhiMjBlYjg4NGU2OTZjYWJjZTVmNDMyIGxlZ2FjeS10cnVuaworMTIyMTEgZjA4YzdhMmE1NmY4MDc0MWY1ZjE5MmZkMGViZTBiMDk2N2EyMDNjZiBsZWdhY3ktdHJ1bmsKKzEyMjEzIGNmNjU0ZWQ1OGZmMTZhMDhkYWRhYjhiNDg2Njc2ZjhhYjI3YjNmODMgbGVnYWN5LXRydW5rCisxMjIxNCBkMWRiN2Y2YWI3NTNjOWYzNDUyOWQ4NDk3ZDYwZTQwMjM4ZGY2NDZkIGxlZ2FjeS10cnVuaworMTIyMTUgOGIyNWJhMjQ5NDQ2NTJhNjBiZjIyNzI3ZjBiYmZjNWVhM2I4NjI4ZiBsZWdhY3ktdHJ1bmsKKzEyMjE2IDJhODk1NDNkZDNjYWIwZTg0YzhkZjZkOGU2MDcxZGMwMWU4MTVlNzQgbGVnYWN5LXRydW5rCisxMjIxNyA0ODJlNjNkNzljOWRmZWU0YTllZDM5MTMzOTRlZDdhMTY4NTUyNWNjIGxlZ2FjeS10cnVuaworMTIyMTggMzUxOWRlNDQwZjg5MmMyYzdlMTU5NjVhM2NkNWU3NzlhMjk1ZjUzYSBsZWdhY3ktdHJ1bmsKKzEyMjE5IDI0Y2E2NDEzNDU5NGFkN2YzMzZjZWYxYzcxZjRlYTFhOGZhZGIwNmUgbGVnYWN5LXRydW5rCisxMjIyMCA3MmI3NjFiOTQ4ZTdlOWFiNzkxY2MwM2U4OWMyZWU3NzhkZWYxYzgyIGxlZ2FjeS10cnVuaworMTIyMjEgMzk1NWY3ODdlOWExMWMxNGJjNDRhZTZlNTM0MjlhMGU5OGMzNTUwYiBsZWdhY3ktdHJ1bmsKKzEyMjIyIDA0ZTQ0YzYwNzZlOGYyZjJmMzUwOTIyOTQ1Zjg2ZGYxN2NmNjk2YWUgbGVnYWN5LXRydW5rCisxMjIyMyA1NmYzOGJmM2FmOWYyZDYzMzgyNDA5YjZiMTYyZTlkNjAxYjRjMjMyIGxlZ2FjeS10cnVuaworMTIyMjQgNGIxYjk0MzJiMjZiZmQ4ZjY3OWVkYjc0MTNlODJhOWUzYmIzMDdmNiBsZWdhY3ktdHJ1bmsKKzEyMjI1IDQzMzZhMTkwNTA1YjY2ZTI2MzJjZGE1YTFlYjQ3ZjMzOWRkZWNhZDQgbGVnYWN5LXRydW5rCisxMjIyNiBlYWFiOGZlYjdmYzA3NjRkODljYzJjNDVmMDMxZTBjNWM4ZWQ0ZTc3IGxlZ2FjeS10cnVuaworMTIyMjcgMmNjZjA0NWY1YTIxMWYxMDE0MDE2YzIwODNkOWM2MTZhYTdiZGI5MiBsZWdhY3ktdHJ1bmsKKzEyMjI4IDI2NDY4OTNjYjQ5OTM3NWFhZDAwY2Y5ZWE1NjhmN2IxYWYwYTBlOTkgbGVnYWN5LXRydW5rCisxMjIyOSA2ZjFjYTlkYzk1ZGFiMTc1MWQ0NWI2ZWQ3ZGM1NjY0NDgwNjRhOTA3IGxlZ2FjeS10cnVuaworMTIyMzAgNzJmNTA2MzZkZmVhMWU0NTgzZGNjZTM3YjVkZmZkNjk0N2M1NDgxOCBsZWdhY3ktdHJ1bmsKKzEyMjMxIDEwYWIyYzVmYmQ4ZWU3YzBkN2Y5YWUwMTk1YzlmNjBlOGE2YTY3ZWQgbGVnYWN5LXRydW5rCisxMjIzMiA4NWQ1YjVlY2VkOWVhOTk4NjMzOTBlNWE1M2YxODJlM2QwMTg2MGM5IGxlZ2FjeS10cnVuaworMTIyMzMgNDdkMmU0ZjcxMTQ3OGRkNWYwZTA3NTdmYzQ0NWI3ZDRmZWE1ZTA2ZSBsZWdhY3ktdHJ1bmsKKzEyMjM0IDJlOTkzMWY0NGVmNGY3ODYyY2IwODY0MzViZWMyMjZhYjNkN2Q0MGYgbGVnYWN5LXRydW5rCisxMjIzNSA0N2JiZDBiYThlOGEwNTlmMDlhNmExMTZiM2QxYWIzZjFiY2E3ZGFhIGxlZ2FjeS10cnVuaworMTIyMzYgMzQxNWQxM2Y4YmM4YzAzZDA5YWQ3MzU3OWQ4YjNlOGMzYmUxYzk1OCBsZWdhY3ktdHJ1bmsKKzEyMjM3IDlmY2M5MDJkNzQwZmFhZWE5NGY5MjUwM2QzYzc4OTlhZTAwZTkwMTQgbGVnYWN5LXRydW5rCisxMjIzOCBlNmI2NjJhOWI3MDk2MTE4OWI3NGM2N2U0OTY3MjMxMzc5MTVjZjYzIGxlZ2FjeS10cnVuaworMTIyMzkgZTA2ZWY4N2IzNGNjNGE4ODU4NjRlZDc2MDYwZmMxOGMzYTRhYzY5YSBsZWdhY3ktdHJ1bmsKKzEyMjQwIDA1ZmI0ZDk2NmM3M2ZmYWIwZGFhYjYwODk3MTk2OTcyYmNlYTAzMzYgbGVnYWN5LXRydW5rCisxMjI0MSAyNTA3ZTE1ZWNhNmI5MGM2YmVmMmEyZWQ5NWIxZDllZTFjNDZlOTdhIGxlZ2FjeS10cnVuaworMTIyNDIgMDk5NWE3YTYzNzgyYmJkMGE0ZmYwNjc1OTAxMmI4YmJmMWVjNDRmMSBsZWdhY3ktdHJ1bmsKKzEyMjQzIDg1YWIyODY0NDIwMTQxNDExMzZiNjUwMjQzMTZjOTAzOGQwODhiM2UgbGVnYWN5LXRydW5rCisxMjI0NCA2ZmM1OGQ3OWRhYzVkYzVkMTZlMmUwOGQ4YjYzMTIxOGY0N2U5ZDE4IGxlZ2FjeS10cnVuaworMTIyNDUgOTM0MmM2MGVhYWMwNzVhZDIzODAzN2RiODM2MTgzNjllNzQ4ZDg1MiBsZWdhY3ktdHJ1bmsKKzEyMjQ2IGQ2MzI4ZDc0YjU4MGVmZDkwNDUyNzZlZDYwNjRkMzhmMTA0YzQxNTcgbGVnYWN5LXRydW5rCisxMjI0NyBmY2U2YzExYzgwZmExZGU5YWI0MWQyZDQ5ZTE0OTgxMGMyZDQwNzBlIGxlZ2FjeS10cnVuaworMTIyNDggOTY3YWM1ZTg5MDdhY2E5NGM0NjIwNmQ1NTdmMTYwNDMyMDNkMzYwNCBsZWdhY3ktdHJ1bmsKKzEyMjQ5IDdjZWI5MmJhODZmNzY0OWVjMTU1YmQyMTc4Yzg2OTEyNzFiMTY1MzkgbGVnYWN5LXRydW5rCisxMjI1MCAwOGE5MzczODYwZTgzNmIxZmU2YzliNGUzNGNkNzEyMGFlYzIyMmY5IGxlZ2FjeS10cnVuaworMTIyNTEgZTQ1ZGY2ZjQ1NjA0Yjk1MzBjYzc0NmQyZWNjOTA5NDEzNWQ3NzJmYiBsZWdhY3ktdHJ1bmsKKzEyMjUyIDg4YWY4YTQyODU3ZDMxZjJiNmMyMGIwNTNmOTY0ZDhjZTRiZGU2YTEgbGVnYWN5LXRydW5rCisxMjI1MyA3NjYzY2Y5NWJkMGVhODYyNjgwMjVkZWE2ZDRlNjZlZmU2YjU2MzllIGxlZ2FjeS10cnVuaworMTIyNTQgMzBmMzYzMGI3N2NhOTk0NWNmMzQzNWZkOTU5MjRmMzM2NTQyMTU4MiBsZWdhY3ktdHJ1bmsKKzEyMjU1IDU4NmQxYjA4NjE0ZTI2MTdkYzMwZjhmYzU4YWFiNTkyZjE3ODdlNWIgbGVnYWN5LXRydW5rCisxMjI1NiBjNzA4ZDcwYjEzOWUyMTVlNmNmYjBkZTZhYWVmYmRiMjU1ZTQ5YjgxIGxlZ2FjeS10cnVuaworMTIyNTcgY2QyZTA1ZGFlNGMyOTVmYTRmYWM3YmExNWMwNTdiNmVlNGUwNDkwNiBsZWdhY3ktdHJ1bmsKKzEyMjU4IDllNmY1YmFjMTVhYzI0YTNhMTcwZGE1NGVkYjA2MzU3YzkxY2EzMjUgbGVnYWN5LXRydW5rCisxMjI1OSAzZTdjNDM0NTNlNWU5OTljNzExMTViZmMyZGQ0MTFhYzUzODdmYTFjIGxlZ2FjeS10cnVuaworMTIyNjAgY2ZiOTBkYjM5OTU4YjI0YTNkZDY4YTRiNWE1OTkzMzA4NjU5ZTVmNSBsZWdhY3ktdHJ1bmsKKzEyMjYxIGVkNTIzZWEwNzNkYmEwNDlmOGFmY2ZjMTAxNDQ0YTZjMTljNzM4YjkgbGVnYWN5LXRydW5rCisxMjI2MiAxNmM5YTcxNDg4MGZjMDBmMDhiNjI1N2ZlNzE0ZGRmZDFlMDkyN2NjIGxlZ2FjeS10cnVuaworMTIyNjMgZjc1NTJkZDIzNmIwYWQ2MjdiZmZiMTg2MTMxM2NjMjdlNWNkZmIzZCBsZWdhY3ktdHJ1bmsKKzEyMjY0IDYzMWQ5NmQzY2Y2NjBmZWYzMDBiN2QxMDkxNGMyYjI3ZDBhYzQ1N2IgbGVnYWN5LXRydW5rCisxMjI2NSAwZDg4NzMzNDA4NDYyMjU2ZWE2NTIyNDBlYzRmZDMyOWU2YTFmZDUxIGxlZ2FjeS10cnVuaworMTIyNjYgNjFkZGU3ZWJmYTk1MTY4OGE4NGIwNTkwMGEwNTYyM2JmOTZjM2JmZCBsZWdhY3ktdHJ1bmsKKzEyMjY3IDRhMDdkNjk4NjRmNTc1MTIyMjFmMjc1ZmJiMWE2MWRjMTY5ZWQxNTkgbGVnYWN5LXRydW5rCisxMjI2OCBlMTUwOGY3MmM2MTBiYWQyMTA1YmRmYjgzMzg5ZDZhMGE2YWJjOWM4IGxlZ2FjeS10cnVuaworMTIyNjkgODU0N2QyNzdhMjJmOTYwYzVkYmM5OGJiNjYyOWNhNGNmMzE5MWI0YyBsZWdhY3ktdHJ1bmsKKzEyMjcwIGVhZjkzZDViYjQ2Y2Y2NWI5OWNlODY0MmU2YzUyNDNmMmE5MTFiMzQgbGVnYWN5LXRydW5rCisxMjI3MSA4ODEzNjI3YWFjNDY2YTAxZmQxOTZjNWE1OWE2M2QxYWNmOWNlNDBhIGxlZ2FjeS10cnVuaworMTIyNzIgZTIwOGIyNzRlYjgwOGM2YmQzZTE0MjVlNTI4NGY1NzY4ZjNkNjM2MyBsZWdhY3ktdHJ1bmsKKzEyMjczIDc3MGI0MGZlZDVmN2FiMTA2YzY1MWE3YmFlMGJhOTM5Y2NiOTMxZmUgbGVnYWN5LXRydW5rCisxMjI3NCBiMTE2YWZiODE3MzI4ZWMyZmRkMGQwODM4YWRiZTY0ZmMzZTA4MTUxIGxlZ2FjeS10cnVuaworMTIyNzUgNzcwZDg5NGUyMGJkOGQyM2M5ZTczZjVmMDRlZmQzZTQ5ZDU3ZmNmNyBsZWdhY3ktdHJ1bmsKKzEyMjc2IDhiMDg2MzQ5YTQ4OGNiMWExYmVhZDY0ZmY3YzkwZTRiMDMyOGQzOTcgbGVnYWN5LXRydW5rCisxMjI3NyBkYTk0NDY3OGIwMGUwYjhmMzMxYmM5Y2NjMzUxMTJjYTM1NDkyZTYxIGxlZ2FjeS10cnVuaworMTIyNzggYzQ2OTIwNDZiNDgyMDFiZmY4Y2VjMzIzMjlhY2EzMzJkOGRiZGIwMyBsZWdhY3ktdHJ1bmsKKzEyMjc5IDRiMThmOGVhYTE2YjJiZjhiYjM4NDc3MDExNGFmNDFjY2YwY2MyM2EgbGVnYWN5LXRydW5rCisxMjI4MCBjOTFjZTQ5YjQwNzUwODlhZDFkYzdkZTJiZTFkYzI4M2VjOWIzZTlmIGxlZ2FjeS10cnVuaworMTIyODEgNjY4MGZhY2I0ZDViNWUyN2I5ZGU5OTk2YmM3ZDhkYTljYjlhNTMyMCBsZWdhY3ktdHJ1bmsKKzEyMjgyIGJlMjRiNWI5MGRlY2Q2M2RhNWMwNWFiOGM1M2RiZGVjM2U0ZjhlYmYgbGVnYWN5LXRydW5rCisxMjI4MyA4ZGJhMDgyMjNkZWJhMTY0ZjA0YTk4ZmY1ZmJhODVlMDhiNGIxMjVlIGxlZ2FjeS10cnVuaworMTIyODQgZmFjYjQ1N2I0ZDMyZWQ2ZTIyNGY3Nzc4MzZhNDM1MTA4MTczNjQxOSBsZWdhY3ktdHJ1bmsKKzEyMjg1IDQwZjcyM2FjMjZlODI4MDczNzQ3MzNiNGNiMzEyNWY5MjBkMmI4YzcgbGVnYWN5LXRydW5rCisxMjI4NiAxYmVhZjkxNzkxMjViMjRhZjk5YjEyNDNhOTI3ZWNhMGY3ODM3Y2Y3IGxlZ2FjeS10cnVuaworMTIyODcgZWNiOTEyYmU0MzE4YTYzYzUyM2U0MDlmNzljOWViYmZkMjE5NTM1YiBsZWdhY3ktdHJ1bmsKKzEyMjg4IDA4ZGZiZWUwYTMyYTEzOTdmYjFiMWVhNmQ1ZWQzMTI5NWI0YjFjMjcgbGVnYWN5LXRydW5rCisxMjI4OSA3Y2RjZGY4Njg2YjNjOTFiN2QwM2Y5ZTg2MTM3NWQ2MDU2ZmUzNGMwIGxlZ2FjeS10cnVuaworMTIyOTAgOWU2MTE2NmVjZGQ4MWQ1YjA4MDk3MDU3MDBjYjFiZmYzN2M4NjUzNSBsZWdhY3ktdHJ1bmsKKzEyMjkxIGZlNzAxOTY5YmMyY2Y2Yjc5MTVkNTlhY2E3NTRkMjI0NGE0OTQ2YmEgbGVnYWN5LXRydW5rCisxMjI5MiA3MzdkMDVhOWJiNWU4YTlhZjk0Y2Q4NTY5ZWNkMDJiNjk3MWJlMDRkIGxlZ2FjeS10cnVuaworMTIyOTMgMjA5ZWVkNmEyZWY2NThlZDM4Y2JlMmMyMWFmNmFmMGY1MWM2MjgwZSBsZWdhY3ktdHJ1bmsKKzEyMjk0IDgzNmY5NDA4Yzk1NjVhYTU5YzgwMThkNTI5ZGY1Y2MyODkzZDNjYjUgbGVnYWN5LXRydW5rCisxMjI5NSA3ZWY1YTE1MjBhZTUzZDAxMTVlZmM3YzhjZGEyNDJjMjFmZDY2MmIxIGxlZ2FjeS10cnVuaworMTIyOTYgZGIyOTgyZmI2M2MwNGQ1ZDk0MzM5M2Y0ZWJkYmY4NzZmMmJiNGU2YiBsZWdhY3ktdHJ1bmsKKzEyMjk3IDljZmM1M2U1OTk2ZTBhYTBjOGM1YTQ2OWZiODlmMWEwYzYwNTkzNmUgbGVnYWN5LXRydW5rCisxMjI5OCA5ZDAyYWZhMDIyYzUyZmQ3NGU5NDRhNTczYTc0OWIyZmZlZWJiYjdhIGxlZ2FjeS10cnVuaworMTIyOTkgYzFlYWIxZGM3NTM2M2EzNDExOTFiZDU2NDg0MTAwNjJmNDc5NjM5ZCBsZWdhY3ktdHJ1bmsKKzEyMzAwIDkyOGM5M2QyYzEwNzFkYjlkMGM2ZGRlYmIzMDc1ZDVlMTFlZGM2MjggbGVnYWN5LXRydW5rCisxMjMwMSA1NjY4ZjhhM2E0MzA0ZmJjMTBhNDhlM2QxMTI2ODE4MjFjNWZjZTRkIGxlZ2FjeS10cnVuaworMTIzMDIgODFiM2U2Y2E0YTI5YWZiYjEzOGI2MjRjNzE5YTNmMTgzOWJkYzE4YSBsZWdhY3ktdHJ1bmsKKzEyMzAzIDEwMjcwMTE1Y2Q0YjgwNWNmZjM3ZTEzNjUyMzU5YzViYTA5NjA5NzggbGVnYWN5LXRydW5rCisxMjMwNCA4ZDZmODRjNTk0OGMyODUxYTAwMGRmNTMwZjY3M2Q3NWFlMWRhOWU5IGxlZ2FjeS10cnVuaworMTIzMDUgYTlhYWMwMDJlODQzNWJhMmI2NmE5YWRkNmJiMDM3YjJmODBhZWNiZSBsZWdhY3ktdHJ1bmsKKzEyMzA2IDQxNWI5ODQxMTcwN2YxMjIyZmYyYWMzMjYwMmM0OTg4MDUyN2FiZTkgbGVnYWN5LXRydW5rCisxMjMwNyAwYmZhZmYxMWM1NzM5OTc2YmZhYTQ3MTI5NTIwMmM1MzY0ODNiM2UxIGxlZ2FjeS10cnVuaworMTIzMDggOTNkNzAzMDhiZTE3MWJiNThhNDhhOWQ5ZmQzZmFjZjUzM2MwMDM1ZiBsZWdhY3ktdHJ1bmsKKzEyMzA5IGY5ODFjOWQzNmM4YWY4NTY1MzU2NTQ5ZmUwYWZiM2NkNzU5MjZiMDggbGVnYWN5LXRydW5rCisxMjMxMCAxZWFlYmFlYWEyMmI5YTJhMTYwOTRiN2ZiNWI4NGQ1MGVhZDEwNWQxIGxlZ2FjeS10cnVuaworMTIzMTEgMzBlZTg2MTcyMTY4YTMxYzEzYjQ0ZDNkYzg4OTNmZTk0NDQ0OGRiNiBsZWdhY3ktdHJ1bmsKKzEyMzEyIDg3MDEwOWE0NGUwZWJlMThhMGJiNmI3ZWE2ZjUwMDhkZjI3NjVjMGMgbGVnYWN5LXRydW5rCisxMjMxMyA0ZDA0NDAwNTYxMWU0MGZlYzM2OGEzOWNhMzliMDA0MTNkZWE5NWQyIGxlZ2FjeS10cnVuaworMTIzMTQgNDAxMGU1ZDI0M2Q2NmI4YjIxZWFiNTE0NzMwMzNhY2RiNzZmN2FiMiBsZWdhY3ktdHJ1bmsKKzEyMzE1IDE0MjBmODQwMDkyNDliODZkMTEzNjhkZTRlNGNiYmQyNTNkODc4Y2UgbGVnYWN5LXRydW5rCisxMjMxNiA2NjM3MzcyN2ZhYzg1YjI4MGJlNWJlZDVkY2VlZTkzMzI2OWI5YmNhIGxlZ2FjeS10cnVuaworMTIzMTcgYTNiMjUyNWM5MzcwNDA0Mjk5MTM5NjgxYmQ1M2ZlZDA1NzM4YzU2MCBsZWdhY3ktdHJ1bmsKKzEyMzE4IGJkMWNlNDEyMGU2Zjk1NDZkZWRmODVjYTk3ZThlY2YxYTVhYzIzODggbGVnYWN5LXRydW5rCisxMjMxOSA0NTdjYjg2OGMyNWU0NWE0MWI3YWQyZjNlYzQzM2YwMDg1NGQ0MGU2IGxlZ2FjeS10cnVuaworMTIzMjEgMjhkM2E5ZmNiNTc3ZGZjODU2MmYxODQ5YjRkZGM0ZTRiNjE4OWNhNSBsZWdhY3ktdHJ1bmsKKzEyMzIyIDE3ZTRkODE5NDliOWYxZWMwMzk0YzYxMDZhN2Y5Mjc0OWViMWM0MjIgbGVnYWN5LXRydW5rCisxMjMyMyBiYTYzYzZmNjAyNWI0ZjIzNWIxMGEwMjFhNzQ4NmJmOTJkZjlhZWRhIGxlZ2FjeS10cnVuaworMTIzMjQgNGU5NTA2NWE3MmExYTZmMmQ3M2M5OGU5NjBmMDQyZjUyZTgzNjA4NSBsZWdhY3ktdHJ1bmsKKzEyMzI1IDViZGY5MTY1MTM3NzI2ZWI3N2JlYjZlNDNiMzkxOWQyZDA5MWQ4MmIgbGVnYWN5LXRydW5rCisxMjMyNiBjZTBjMTdjYzc3Y2U1MGZlODM3MTZiZTdjMWU1ODRiMjZiNDhiOGFkIGxlZ2FjeS10cnVuaworMTIzMjcgZWY5N2I0ZjZkMTg3NWZjNmViNTAwYzM1MTM4YzUyMTNmOWYyMTI4NCBsZWdhY3ktdHJ1bmsKKzEyMzI4IDgwMTUwZjljOGM0MWZjZTlkYTJmYzEzYjNmMDcxOTkwOTBmZjNiZjcgbGVnYWN5LXRydW5rCisxMjMyOSAxMzk5YmVmN2FmNjEzNTVkNmVlYmVlMzZhNjE0ODc0MGNjYjNkOTMwIGxlZ2FjeS10cnVuaworMTIzMzAgYWI1NTY5OGJmZjFjYTlhOGEwYjExODBiYTYzOTkyZDhjOWE5MmNkYiBsZWdhY3ktdHJ1bmsKKzEyMzMxIDFkYWJjNzNiN2IwYmNjODJiZGNkYzZhOTdhMTE1NjFhNjAyYTUzNjQgbGVnYWN5LXRydW5rCisxMjMzMiA2MWNhZmE5N2ViNzdhZjA2NjliNzJiN2Y3ZWZmMmVhMmU5MGRhM2RlIGxlZ2FjeS10cnVuaworMTIzMzMgZTVjYjE1N2ZmMDkzMWZmMDVlMzZiZjNlOWJjNGViYzRhZjNjMzkyNSBsZWdhY3ktdHJ1bmsKKzEyMzM0IDgyNDM5ZDk5ODdiMmNmNjdhOTAxYzcxZmViYzdiZTVmZjZhNDdmMTkgbGVnYWN5LXRydW5rCisxMjMzNSBkZDNjN2ZjMGEzNGQ0YjljZmY0OGZjYzU5ZTY0MWQwYTE4YmJmMWEwIGxlZ2FjeS10cnVuaworMTIzMzYgYjA4MjFiMGJjY2YwZmQ1ZTQ0ZDM2ZWYyODBlMWMwYjA4OTU2NTI4NSBsZWdhY3ktdHJ1bmsKKzEyMzM3IGY3NGRlNzdmMDUxMGVmM2FhOWUzNjFkMGI5NzViOWQ2MTgyYmJhNjAgbGVnYWN5LXRydW5rCisxMjMzOCAxM2QwZjYyOGM1NzIyOTBmMmM0ZDg4MTE0MjA1NDZhYTY4N2FhMTZlIGxlZ2FjeS10cnVuaworMTIzMzkgYjhmZWRiMjI2ZjA5YzEwODRiYWI2ZWJhZmNjMDIzNjAyZGY4NGU1YiBsZWdhY3ktdHJ1bmsKKzEyMzQwIGFhYjBmMzQ2M2FmMDZiYzA1YzdiNjE1Y2YxNTYwM2EzNmE3M2I1MDIgbGVnYWN5LXRydW5rCisxMjM0MSBkZGYzZDU1MjIwYjkwZDgyMTU1Y2I1MjQ5YWQ3MDMyY2JlYzQ2MTk0IGxlZ2FjeS10cnVuaworMTIzNDIgODZjYjc3ZmIxOWU4OGFkZjhkMzA2ZDcwZTkyYTllYjJiN2VlNGE5NiBsZWdhY3ktdHJ1bmsKKzEyMzQzIGYzNGJiNDdhYWZhY2FjYWQ0MzE3YjY0OGFiOTMxZDM3YWY3Njc3OGEgbGVnYWN5LXRydW5rCisxMjM0NCA0OTY3MDAzNzRmYzQzOGNiMzQ3MGY5NDBmNzM4NzYyNDk5Y2ExNmUxIGxlZ2FjeS10cnVuaworMTIzNDUgOWEyOTNlNzdjNTU0NmNkN2ExOWYxZGIwZDI1MWFmZjM2NWJhOTk4YiBsZWdhY3ktdHJ1bmsKKzEyMzQ2IGQ2NGNlMjk4MDFjYjE3MDlhZDA2YmE4ZmZkM2UwZTVjM2ZjNDNjZGMgbGVnYWN5LXRydW5rCisxMjM0NyA1YmFjNTZmZmNjYThmODAxNGIxNWM5MzMyNDNiZTVkZTU1NWFhMmM3IGxlZ2FjeS10cnVuaworMTIzNDggZTE5Y2Q4ZWMyMGEyZThmZTczYzZhNjA1MDI4NDRmY2Y4MmI4M2U2YiBsZWdhY3ktdHJ1bmsKKzEyMzQ5IDVlOWVmOWQ4NTc1YmJjYjU3NTQ5YzdmY2EwNTMyNGU3ZDc2NTBjZTggbGVnYWN5LXRydW5rCisxMjM1MCBlYzgwYWQyNWNhODYxMzI4YWY1MDY4MzllOTg1OGYxYjYxMWFkNDUzIGxlZ2FjeS10cnVuaworMTIzNTEgNmM2ZWUzYmIzZmNjMjJkY2RlYjA0NzgzNjEzNjYyMjE2M2Y2YjNmNyBsZWdhY3ktdHJ1bmsKKzEyMzUyIDAxNDc3YjFhNzRmOWMxYzU2NzQxOThkYjlkZGQ1NDg4MjkzZTg4MDEgbGVnYWN5LXRydW5rCisxMjM1MyBiNTMwYmM2MmUzYjk5MWI4MTNkNDBmY2I3ZGZhMzExOWIyMDlkNGMzIGxlZ2FjeS10cnVuaworMTIzNTQgZTZjZDY4M2EyMmY4MTg5ODE3YjA3NDAxOWUzNjNjM2ZhMTRkN2NkNCBsZWdhY3ktdHJ1bmsKKzEyMzU1IDMwYzFjNDBjZDgwZmQzNjlmYzUzZmY4MzBiNzQyYzIyNjM3ZThkYjUgbGVnYWN5LXRydW5rCisxMjM1NiAxZThmZjhhODc5MmVmN2M5OGNjMjcxN2I0NmYzZjk5ZjVlYmE4M2NjIGxlZ2FjeS10cnVuaworMTIzNTcgY2RiNzcyYWFiYmEyNWQ1MDNiZmU5ODU3NDA0N2E4NWM4YWEwY2JhOSBsZWdhY3ktdHJ1bmsKKzEyMzU5IDYwNWVhZjhjYzZkMGVjZWRhMjE3NjgyNmNmMDg0NDRjMzcwZmM2MmMgbGVnYWN5LXRydW5rCisxMjM2MCBhMTU4NWY2OTI1NWRhMDBkMGUxZTQ1OWI2ZGFmYTcwMThmNDgzNTUzIGxlZ2FjeS10cnVuaworMTIzNjEgNTFlODY4ZWYzYjMxZTVhMTk4ZGJmMmY0YmMwZjVmOTU0MjIzOThkMiBsZWdhY3ktdHJ1bmsKKzEyMzYyIGI5M2MzOTBmZDI1ZDVmMTRkZmViNzU0NjM5Zjk4MTMzZmU3N2Y3ZmUgbGVnYWN5LXRydW5rCisxMjM2MyBhN2QxY2Y5NWRhZGM1OWU2NDk0NzkxOGJhMjlhNDRjZWE4ZWZkN2I1IGxlZ2FjeS10cnVuaworMTIzNjQgOGE2NTM2YzFhMGE0NjI2ODA2MTIzNWExZjQ0MDM2N2NhZWM3Y2I5YSBsZWdhY3ktdHJ1bmsKKzEyMzY1IDYwZjQyNTg2ODY2ZWFmMjUzNWY1YjI0YzEwMjkwYzg1YTg1MmI1NGUgbGVnYWN5LXRydW5rCisxMjM2NiAwYWFlYTQ4OTAyZTQzYjI3NjA3MzQ4MjExOGQ1OTE5ZjgxYTQxYTc5IGxlZ2FjeS10cnVuaworMTIzNjcgZjc3Yjk0MWEwZjkzNmRlM2JkMDFmZjczNzEzMzM2NWE3YzdkZmNkMiBsZWdhY3ktdHJ1bmsKKzEyMzY5IGM5NWZmZjhmMTgwYThkN2NjODZlMWNmZGVlOWNlM2UwODkzM2RiODIgbGVnYWN5LXRydW5rCisxMjM3MCBhNThmMzYzNTJjNGYzZmVkY2MzMTRjNzJmMGJiM2I3MjA5ZDQ2MmFhIGxlZ2FjeS10cnVuaworMTIzNzEgMzNjNGJhNzc3YTNhN2QxY2EyMjI0MzM1MjUwODQ5ZTJlZjcwMTQwNCBsZWdhY3ktdHJ1bmsKKzEyMzcyIGVlMzZlMWYxMzBjY2JiNzlmN2ViOTNlZjdlYTUyZTQ5MzM1NmExNjQgbGVnYWN5LXRydW5rCisxMjM3MyBlM2E3OWY5M2QxZDNlNThkOTE0MjllOWIxOGFkOTA3ZjllZGY3YTU0IGxlZ2FjeS10cnVuaworMTIzNzQgZjM1MmVlYTY4MzczNDkzNWM2YTdkNDY3MTI1NTZmYjE1MmQ0ZjBhYyBsZWdhY3ktdHJ1bmsKKzEyMzc1IDlkYTQyNDkzNWY3ODY3Mzg2ODcxOGViMjY3NGMyZjdkZDFkYTQ4ZmYgbGVnYWN5LXRydW5rCisxMjM3NiAyYWIxODk1ODVkMjM4NjU4YzkzZDYzM2Q0ZGM3ZDZlZTJmN2MzYmIxIGxlZ2FjeS10cnVuaworMTIzNzcgNzc4NjI5Nzg0N2FjYTBhNjBjM2E4OGI2MmM3YTQyM2FiNWExYTAzZCBsZWdhY3ktdHJ1bmsKKzEyMzc4IGY3OGZkOWI2NzI4NGFkYzRjYWVmNGUwNTQ4ZDMxZjc4N2E4MDkxYTUgbGVnYWN5LXRydW5rCisxMjM3OSAxYWMzNDg1ZjllM2UzNjc2YjJmZThjZDg3NjUzMWZkZWQ4ODM5OGZlIGxlZ2FjeS10cnVuaworMTIzODAgZTE0ZmVlZTRjNDU2YmM4NmUzZTI5YmE0OGY2MTEwZDAxODBkY2RkMSBsZWdhY3ktdHJ1bmsKKzEyMzgxIGIwZWRjODkyZmM3ODJlOTBiMzdjODkzNzZiNTNmMGQzZjMwM2E0N2IgbGVnYWN5LXRydW5rCisxMjM4MiA2NTkzN2ZmNzE4ZGVmYzVkYWUyOWM3NjJkN2EyMjk2ZmNjZDM5Mjg2IGxlZ2FjeS10cnVuaworMTIzODMgZGU0MWU4ZDgyMTFkZDM1ZGI2YmZhMjM5MTA0YzdjOWFkNzVkZDg4NyBsZWdhY3ktdHJ1bmsKKzEyMzg0IDM1ODljMGU1NmVmMjUxNjYxZDMyNTAyN2NlNjA4OGU3YThiYTZiODkgbGVnYWN5LXRydW5rCisxMjM4NSA3MTk1ZWMyOTZiM2Q5NDQwMzQyZmI4YTc4ODgxNGRiZTEwYmUyMWQwIGxlZ2FjeS10cnVuaworMTIzODYgMTRkY2JiMzRiOWRkM2FlMzFmMzc0MGI1MTVkZmNlYTNkZmVjM2JjOSBsZWdhY3ktdHJ1bmsKKzEyMzg3IDAzMGVlNTBiZDhkMWI0ODU4MDg4NjQzMmM1YWEyNTU4ZDM3MGVjZTMgbGVnYWN5LXRydW5rCisxMjM4OCBmYWU2ZDI0Yjg5N2JjZTY0YWJkOTY3OTg2NmNlYjQ0MGIzMjNkNjI2IGxlZ2FjeS10cnVuaworMTIzODkgYWU5MDhlZjkxY2YwY2M1Njk4ZjFhOGFhMTczZGU4M2UwNmYzZjQwOSBsZWdhY3ktdHJ1bmsKKzEyMzkwIGRkYjgzYjI1MjI2ZWI3MDNiZjAwMDBjYzJiMzI5NGMwZWFkNGEwMDIgbGVnYWN5LXRydW5rCisxMjM5MSA5ZjEzZDczODBiZjg5ODMzMjE5NGJlZjIyMmVhN2M0MjkzYmIzMmExIGxlZ2FjeS10cnVuaworMTIzOTIgMjkxYzJkMGE5NjgzYzRjOGU0Yjg5N2ExOTNlYjdjZWRkNzIyNTcxMCBsZWdhY3ktdHJ1bmsKKzEyMzkzIDViZDZkY2YxNmQ0MWFiZmFiMDI5N2IxY2QxM2UwNWM4MmJhZGUzYTQgbGVnYWN5LXRydW5rCisxMjM5NCBiM2ZiODQxMGY2YWU5OTI1YjliNzJmM2MwNmJlY2QzZTAwZTBjZTRjIGxlZ2FjeS10cnVuaworMTIzOTUgN2UyZTUzZTc0OGM4NTg1YmJlYTlhZGYzNTU3YzEzNGNhMjg0Yjg0ZSBsZWdhY3ktdHJ1bmsKKzEyMzk2IDRkODZiNWE1YmY5ZTI0YTg5MjEzYjMwY2ZkOTNjOTMyMDcyMjhmMDkgbGVnYWN5LXRydW5rCisxMjM5NyBhMmQzMzdiMmUyMWJhNGJmNGRlNDEzNzU2MTE5NjM4YmFlZTQ3ZjJlIGxlZ2FjeS10cnVuaworMTIzOTggZjg4ZDE0YWRlZDc3MDQwYWZkZWViY2VlZmQyOWVkZmNkNTNlYjUzNCBsZWdhY3ktdHJ1bmsKKzEyMzk5IDdiZGVmNGJlZGQ1Y2U2Mjg4MTIxNWFhY2FjNjMwMmJhOTAwOTViOWYgbGVnYWN5LXRydW5rCisxMjQwMCA5MmFlMTE1NTczYWYyOWJlZjA0NmY2NjkxMGNlZGU1NGYxODUyYjI1IGxlZ2FjeS10cnVuaworMTI0MDEgNWFkMWEzNWY1NDBjNjU5MGJlMjJlOTAwOGE5MTEwNjUxMTM4MTNhOSBsZWdhY3ktdHJ1bmsKKzEyNDAyIGJhYzk2NTU1MmY3ZTZjNGRmOTRlMzYyMTQ4MWRkYTJiNDlkM2E2ZTUgbGVnYWN5LXRydW5rCisxMjQwMyA2OTUxMTNjNjUwYmI1OTYyYmEyNDdlZTNiMWZhMzQwMjM3OTNiMjQ2IGxlZ2FjeS10cnVuaworMTI0MDQgN2FhNTE1MzIwMDZhOWUzMzhjZDE2OTllZDZmYmRhOTg5NWQ1YmEyNSBsZWdhY3ktdHJ1bmsKKzEyNDA1IDFjNDY5NzA4MGQwNzE5YWQwZWQ0ZDRmODQ3ZGY1YjZiZTUyN2NmMTggbGVnYWN5LXRydW5rCisxMjQwNiBkOTVhZmU4N2RiNGRjYWI0MjQwYzIzZGU0YzI4NzZmMzMwMWVjMzkzIGxlZ2FjeS10cnVuaworMTI0MDcgNmNmMDFlYWIwNWEzMmFhYmMwOWVkMjNjZjExOWY5ODJiMmQ1NmFmNSBsZWdhY3ktdHJ1bmsKKzEyNDA4IDc4MDU5Y2YwNjdkZWZiYTBlZWUwYTViYmUxMDkyYzYyMDQ2YWE0NWIgbGVnYWN5LXRydW5rCisxMjQwOSAxMTQxNGYwMjNhZDBhMTMzMzEyNGI2YzU5NWJiYjFhYTliMzIwMzcxIGxlZ2FjeS10cnVuaworMTI0MTAgYThhMDcxOTk2YTczZDk3ZmIzMDhhYTQ3YjgxYzBkOTQ1OTIyYzlmMyBsZWdhY3ktdHJ1bmsKKzEyNDExIDM3YzNhZmZiMDViYTIzZWY2ODkwMDdkZDllNjk5OTBlMGI5MGM4OWEgbGVnYWN5LXRydW5rCisxMjQxMiAxOGMwNmQzOWNlMmMyYTg3YzE1Y2Q5NTIwOTk3ZGM2ZTQ0ZjgyYzJjIGxlZ2FjeS10cnVuaworMTI0MTMgMjBkOThjYTNkMzJmYWJhYzBmY2YzYjNiNGY4YTY3N2ExMjVmZjAyOSBsZWdhY3ktdHJ1bmsKKzEyNDE0IDkwMzQ0YzI2MWYyNDUwZjU3ZmIwZjBhZTAyZmIwMjBlMGQ4ZGMyNzEgbGVnYWN5LXRydW5rCisxMjQxNSBiNzRmNTVlN2QyMDhmNzA3NTQwZjQyMzY1YmZiNWZkYThmMjJjYjNiIGxlZ2FjeS10cnVuaworMTI0MTYgOWUyNTU1ZWRjOTRmNDg4N2UwMzY1YWMwYzEyNzI1ODBhY2ZiNjMxOSBsZWdhY3ktdHJ1bmsKKzEyNDE3IDI0ODYxNmQzZWQxMmNkYzllMWM1YmZlY2YzOGUyZjcyZDk2Zjg1YzQgbGVnYWN5LXRydW5rCisxMjQxOCA5YTdlNzhlOGJkZmEyOTIyMzcxNjQ1MTE5YThiMzAyNjg4NzI5ZDgwIGxlZ2FjeS10cnVuaworMTI0MTkgMjg2ODU0NzcxYjExOTExZjhhODUyNzEzYmQwODM4N2MxMzQ3YzBjNiBsZWdhY3ktdHJ1bmsKKzEyNDIwIDM3YWE4NGQyNzhjNTU5OTg0ZjNiZjY1MjEwYmE2OWYyY2M5NWY2OGMgbGVnYWN5LXRydW5rCisxMjQyMSBhNzgxMDAzNzA1MTVjZDEzZmFiZTRjMzU2ZTRmMGY4OWExN2ZmZGMyIGxlZ2FjeS10cnVuaworMTI0MjIgNjMxMjQ4YzljNjJlMTYyMWZmOTVkNDM2Mjg5Y2I0NmM4N2RlNWVkOSBsZWdhY3ktdHJ1bmsKKzEyNDIzIDFhNzk5ZDFkNGI1YTZlMTljMzhlZDE1ZGRmZDM4ODEzZmVlNjEyOTAgbGVnYWN5LXRydW5rCisxMjQyNCA2YzEwNzcyODQwMDFkNjExZDkwNTU0NjAxZDI2NjM2MzhmMmEyY2Q5IGxlZ2FjeS10cnVuaworMTI0MjUgNzZiZGFkMjNmY2RiOGE3NWVlYjI2ZmQyMmNhODY3YzVlMjk0NTkxYiBsZWdhY3ktdHJ1bmsKKzEyNDI2IDViMTc3ZDUxYmEyNzU4MTNhOTEyMzJjZmJmMmJmOGExYjIxOTlkYjAgbGVnYWN5LXRydW5rCisxMjQyNyBhNThkOGU0NGNlMzJmZDQ2NzQwNTA1ZGI3YmIyOGI0Yzk5ZDBhYTBlIGxlZ2FjeS10cnVuaworMTI0MjggMDQ1NTQwMjY3N2E4YWRmMWM3ODQzMTE2ZmE5NzlmZGE3MTQ0ODUwMCBsZWdhY3ktdHJ1bmsKKzEyNDI5IDM1ZjU2ODQ4MDc2NGFmZmIzOTZkYTUwNjVhNjk5YWM5ZjAyMDcyNzEgbGVnYWN5LXRydW5rCisxMjQzMCA0YmRmZTVkODBhNmY1YjkyM2I1ZGJmYWU4NTcyODk3ZDE5OGFkZjViIGxlZ2FjeS10cnVuaworMTI0MzEgNWY0ZDMyYjFhNjU4M2ZmYmYzY2RmMTk4MjlmMzdiZDA5ZmJmMmNhYSBsZWdhY3ktdHJ1bmsKKzEyNDMyIGY4NjdlMTNkYTU3NGNlN2JkZWEwNDI0YWFkZjY0YTcyMzhkODdjYzEgbGVnYWN5LXRydW5rCisxMjQzMyAwMGZjMThhYzZhZWI4ZTdmMzI0NzYxNGFkNmJlYWIyMWNhOWRhODkyIGxlZ2FjeS10cnVuaworMTI0MzQgMWRlM2RiYjI2YzJmYTJlYWFlMmYzNzFkZmUxMTk3MTI2Y2NjZWI1NiBsZWdhY3ktdHJ1bmsKKzEyNDM1IDE4OWYxZWM1YzY4ZjNkZDY3ZTJkYTQ4YjI2OGUzNmY2ZmNlYWE3YmUgbGVnYWN5LXRydW5rCisxMjQzNiAxNWU5NzYxZTU0ZGUxZDU3YWM0ODY1OTU1MzkyNWRiYWJhOTNjZDM1IGxlZ2FjeS10cnVuaworMTI0MzcgYWQ3NDlmYjBiZDRiZDQ1YmE5NDg5NzFhMjU0YTAzNjdhNGM1Y2QyMyBsZWdhY3ktdHJ1bmsKKzEyNDM4IGE2NGE2MTViYjc1NjMzMGY3YjlkNWEzYmYwYjA0NWY3NzE4OTllMTEgbGVnYWN5LXRydW5rCisxMjQzOSBjNTkyYzE3NzFkZmI1ZTYzZmU3ZTlmNGE5ZGEyNTBiNTc0YjEwZDA2IGxlZ2FjeS10cnVuaworMTI0NDAgMzM3ODQzYzZhMTgzNjlkNTc1MGJlYjUwOTA2MGM0ZTM3MDEzNTlkOCBsZWdhY3ktdHJ1bmsKKzEyNDQxIGZhZjM1MWUzMTU3MWQ4OGFlNzY5MDA5ZjlmNzBhMWE5ZjY1ZTNkN2QgbGVnYWN5LXRydW5rCisxMjQ0MiA5M2I5ZWFmZTFmMWRlODJhMWEyMDcxZjg4OTBkZDVhODIyNjlmNWI1IGxlZ2FjeS10cnVuaworMTI0NDMgMDZjN2ZmZjUyNzRhN2JmZDNjOWM2NmM4OTEyMDEyMzMxNjYyODI0MSBsZWdhY3ktdHJ1bmsKKzEyNDQ0IDYyNjMyN2E3OGE4ZWUzNmE5YTRlYjM1OGZkNDgwNjQ3ZTU3MDdmNjggbGVnYWN5LXRydW5rCisxMjQ0NSA0ZGExZmFmMjk3YWI4ZmEzNzQ2NDYxYWU1NTUzMDYyOTRlZmJlOGM1IGxlZ2FjeS10cnVuaworMTI0NDYgMzk2YTM4ZWE5Yjg0ZmFjZWIyNmFkNTM3ZDYwNjc2YjZkNzFkMWYxOSBsZWdhY3ktdHJ1bmsKKzEyNDQ3IGMzOWM0YmM0NWQzOTFlMmRmMWRiOGExY2Y1MTlkZDM5ZGZlY2MzZTUgbGVnYWN5LXRydW5rCisxMjQ0OCBjODc2NjJlZjNmMWRiNThhMjM0M2NhNDM5NjVjOWQwOGFlMGJhZTE3IGxlZ2FjeS10cnVuaworMTI0NDkgN2M5OTZmMzQwNDcyMGEyMzcwYzIzODNjNWFiNGU3ZTNmMzU4MTNlZiBsZWdhY3ktdHJ1bmsKKzEyNDUwIDc1Mzk4NTllOTg1YTE0YTRhYzdhNDRiMGNjNzE3ZmVlMjdjYjU5ZDggbGVnYWN5LXRydW5rCisxMjQ1MSA5OGUzNzM0NzM3OGIwMDZjZTZmY2M0OTIwOGUyMjRhY2M4YzNjMzExIGxlZ2FjeS10cnVuaworMTI0NTIgYWU4M2Y2MWQzY2Q3ZTcxOTlmZDUxYTM0NGI1ZGExOThlYWUxZjBlMCBsZWdhY3ktdHJ1bmsKKzEyNDUzIDQwNDYzZDUxNGYzZWE0YmE0OGEyYzI2ODQ1NTMwMWUxYTBlZWViZDQgbGVnYWN5LXRydW5rCisxMjQ1NCBlNWQwZGY4MjRiZjM4Mjc0OGMxZTBkYmM0ZmMzNmEwNTg2NjVkMTlkIGxlZ2FjeS10cnVuaworMTI0NTUgY2EyNzQ1MjcxMTExNjQwMWMwMjE1MjgwYWU0Y2Q5YzA5Nzk3NzE3YiBsZWdhY3ktdHJ1bmsKKzEyNDU2IGM0MDRhNmIwY2RiMWUyN2E1N2EwMGMwZTM0ZTZmNTFkMWMxNWRhMDQgbGVnYWN5LXRydW5rCisxMjQ1NyA5YTg0MmI4MWQ5YzNlOTRkZTcxYTQxZmRlZGExNTFlMDVjYWZlM2JiIGxlZ2FjeS10cnVuaworMTI0NTggNzE2ZGMxZDFkYmZmODkwMWMyNTkxMDFhODhhZjBiYjkyZWFhY2I0ZCBsZWdhY3ktdHJ1bmsKKzEyNDU5IDU3YmNjNmVjNjM4ZjZlYjljZWQ5MTIyMjhiNTkxNDJlYjk5ZmY2NTYgbGVnYWN5LXRydW5rCisxMjQ2MCAyNzUwZTFkZTY4MjlhZDE3OWJlMjQ3ZjFjYjA5YWMxNzgzY2ViMTQxIGxlZ2FjeS10cnVuaworMTI0NjEgNTcyZTEzMWFlMzY5MGZiNWQyMDQ3OTA0MWI4ZGNlODRjNjg4Mjg4OSBsZWdhY3ktdHJ1bmsKKzEyNDYyIDkyYTI1ZDUxZmYyNmNlMjUxNWQ0MGUxZjhlZGVmOWJkZjdjOTJjMTAgbGVnYWN5LXRydW5rCisxMjQ2MyA4NzllMzQ5MWI2NjFiOGU1YTViZWJhODYyM2E3ZTU2OTE5ZGU0MjZhIGxlZ2FjeS10cnVuaworMTI0NjQgODk0OTYwZmE5MGJjNzU1OWI3YTVlNzkzMmVhZjM1OGFlZjRmZTQ4MyBsZWdhY3ktdHJ1bmsKKzEyNDY1IDBkMjc5MWM3MjA2ZGFmYmFjOWFlOGFkOWM1Njg3ZWMxZmEzOTg3Y2UgbGVnYWN5LXRydW5rCisxMjQ2NiBkNDRjYjg3ZTUwMGRiYmM3YTE4OTViMTMwOGNhMmRiYTZjZWZjZGJiIGxlZ2FjeS10cnVuaworMTI0NjcgYzEwOTFlODJlNWFhYjA2ZGQ0ZDI1NDcyYTE5YjU1ODcyN2ZhZjNjNCBsZWdhY3ktdHJ1bmsKKzEyNDY4IDA3ZDMzMzQ4NWE1ZTA4YjI0ZjcwNzQ5ZDMyM2M1YWNhY2E0NTQ2NzEgbGVnYWN5LXRydW5rCisxMjQ2OSA0NDE0NmMwNmU3ZWQzYzc4N2ViMDExY2U0NzgyN2FiYzAxMjg4NWVkIGxlZ2FjeS10cnVuaworMTI0NzAgNDg1NTAyYzQyZDg5YTVkNjhlNGZmYTkwYjBiYzU3ODhlYTNlZjJjYyBsZWdhY3ktdHJ1bmsKKzEyNDcxIGVlODRmNDQ1ZTZkN2ExY2Y4ZjhlNjljNTg4ZWRhYjllMDE2NWNmYzMgbGVnYWN5LXRydW5rCisxMjQ3MiA4ZWZhMzdhNzcwYzY0N2I2NTg1ZTZmZGEzMzU5MDE1NGMyZjdjZmYzIGxlZ2FjeS10cnVuaworMTI0NzMgMDM5MGFmNmFjZjdmYTk4OTVjZGJmZDg0NjQxYWFiNmNhZjA2ODBmYSBsZWdhY3ktdHJ1bmsKKzEyNDc0IDE5ZmRhZjM2N2Q0NWI2ZGQyNDFmMTFkOWVkYTExMWNlOTZhNjdjYzEgbGVnYWN5LXRydW5rCisxMjQ3NSA0ZWMzYjNjYjA3YzhhMWVhMDI1MmQ3MTU1NmUxYmZiZTdjMmVlMzYxIGxlZ2FjeS10cnVuaworMTI0NzYgNjJmYTAzYTMzM2FhZmVkY2U3MmM4ZWU5ZTM3YjljMGY2YTIzM2U1MSBsZWdhY3ktdHJ1bmsKKzEyNDc3IGYxYTUyMGQyNjMxYThlY2RiZDJjMjQ5ZWMzMDdmMWQxNmNhZWYxMDYgbGVnYWN5LXRydW5rCisxMjQ3OCA0ZTJlZmY5NjhjZjVjNjcxZDEyYTVjZmU0NWRjOWNjODE0MzZjY2FkIGxlZ2FjeS10cnVuaworMTI0NzkgZjhmYzkxYjAxN2ExNDMxNWFmYmRlNWNmMTQ2NDM2OTM0MGZjMGUzOCBsZWdhY3ktdHJ1bmsKKzEyNDgwIGY2YjJmMjBkYTU4MTY3ZGM4NjY2MTZlNmI3MjMwMjgxM2QxM2FlNzkgbGVnYWN5LXRydW5rCisxMjQ4MSA0ODllZjdmNjQwNDEwYjJjZTdmM2U5OGY4YzllYzY1MDBhZDI5M2U4IGxlZ2FjeS10cnVuaworMTI0ODIgZGNiZTcyYTBiMzkyNmI5NDJlNmFjYThhMmE1Y2QyYWEyN2QyODg4NCBsZWdhY3ktdHJ1bmsKKzEyNDgzIDc1OTEyMWUzZDliNmQ2NzI5NWQ4OGMxN2RhYTA5YzFkZTc1MjhkZWIgbGVnYWN5LXRydW5rCisxMjQ4NCBhZGZhY2JjYmQ5MzYxYzkyOWUyZGZlNDQ2MzU5MjY1Y2JhOTEzZDczIGxlZ2FjeS10cnVuaworMTI0ODUgYzg2NmYxNjYzMzFiYjY2NTVmN2Y3NGE3NmIzYmZkZDQxYTk5ODFiMyBsZWdhY3ktdHJ1bmsKKzEyNDg2IDRhZjM4YTQ1ZDI5YzhjOTIwYTg2YmRlOWJkNjFmMDMxZTM1ZjhkNmMgbGVnYWN5LXRydW5rCisxMjQ4NyBhNmNiODhiNTgxNjUyM2YzOTM2MTUyMWIyZmZmYzlhNDZlOWE4Y2U4IGxlZ2FjeS10cnVuaworMTI0ODggZDRiOGRkZDlhNGZkMGZkN2YyMDQyMmE2N2VjM2QxY2I4ZTNhZDQyNyBsZWdhY3ktdHJ1bmsKKzEyNDg5IGI3YmNjMmNkYTFiM2IyNjE4MmYyOGFlZDkwMDViMTEzNzgzZjc3NjQgbGVnYWN5LXRydW5rCisxMjQ5MCBjZmJjYWI4MTUwZGE5MTc0MzA0N2JhMmFlYTZhN2E1NzEzYmUyNTJkIGxlZ2FjeS10cnVuaworMTI0OTEgNzhmZjIwM2VhZDI0NTRkNGYwZjY2ZGNiNGM2ZmVhZDI1NzdkNDZjNCBsZWdhY3ktdHJ1bmsKKzEyNDkyIDEyNGVmNjk0YzI4NDQzZTQyMDZmMTQ4ODljNGFkMjFmZjYzOTVmNzcgbGVnYWN5LXRydW5rCisxMjQ5MyBkZGJiZWQ4Y2I4MzBlZTQ5ZGFjODdjNTJlYTlmNzE2YTA5YWYxMjQzIGxlZ2FjeS10cnVuaworMTI0OTQgMDA5YzliYTlmNjU4YjI1OWM3ZGNjZGU0MGQ4NmQ2YWIxMjg2ZDk4MiBsZWdhY3ktdHJ1bmsKKzEyNDk1IDE2YmQwZmRlMDlhZWNiNzIzNjdmNTVjZTdlNjhkNTIxMDY0MjhhZTcgbGVnYWN5LXRydW5rCisxMjQ5NiBhNzhkMzA1NmFiNjEwNGIzNTAyZjJkMzU5ZDRjYzIzOTQ0ZDUwYWNjIGxlZ2FjeS10cnVuaworMTI0OTcgYmRkZThmYmFlYTU4YzdkY2UyZjZlYjZhNTdkZjczYWRiNWFhNzhiYiBsZWdhY3ktdHJ1bmsKKzEyNDk4IGVlZDBjYWNmNGM2NGQ4ZmYxZWNhMzdmMTVmMzVlZTdmM2MyNDQyZjIgbGVnYWN5LXRydW5rCisxMjQ5OSA4YzZlNzA1YjZiOTcxZDQyMTI2YmEzMDA2MTgyMDYyODEzZjVlZjc3IGxlZ2FjeS10cnVuaworMTI1MDAgYTFiY2YzZjI5ZjY2ZGY1ZDQ2MzMyODY4NDFiYzU5NGZhNzVjNmEyOCBsZWdhY3ktdHJ1bmsKKzEyNTAxIGMwZGFmZmU0MDAzNDY4OWZjZDIyMmY4ZTJjN2E1NDQyYTkxNzI1YmYgbGVnYWN5LXRydW5rCisxMjUwMiA0NDE1MDAwMTlkNTBhY2MyNWM1ZmViNGQxNTE2ZmRlZjQ3ODMwZGVkIGxlZ2FjeS10cnVuaworMTI1MDMgMmIyMzhkMTlhZTg4YTdjYmIzNzNjNjUwNTc1NGMwZmQxYTIwZTczMSBsZWdhY3ktdHJ1bmsKKzEyNTA0IDRhYjVlOWY4MzlkOTc0NmQ5ZjJmZjk1MzA4NTFmYzdhZWU5MWI2ZGYgbGVnYWN5LXRydW5rCisxMjUwNSAwYTU2ZTUwODI2ODBiOWYyNTQxMGMxNjljM2JhNzA3YTVlZmE1NjkxIGxlZ2FjeS10cnVuaworMTI1MDYgM2E0MjA3MTdiYzhhNDJlOTU3NTAxZjA1MDAwYjNiMTkyOWY3ZmZhMyBsZWdhY3ktdHJ1bmsKKzEyNTA3IDc3YTk0NTMxNTI5ZWMyMTJhNzRlOGJhODc0NTJlNjc5NWY1NWViN2IgbGVnYWN5LXRydW5rCisxMjUwOCBmZTBiNTIyZTQ2Y2IzYzg2MTMzNDkzYjQyZDM2NWRjOTI4NjBlOTJjIGxlZ2FjeS10cnVuaworMTI1MDkgZWY1Y2YxYTRlNTJhOWM0ODU0MGM5ZmQzOWMzOTJlZDc3NTM2ZDBiMiBsZWdhY3ktdHJ1bmsKKzEyNTEwIDU1ZjhjNzAxYzlkYWQxMWE1NDFjNzBiMDAzNjEwNzFkNGQ5NGI1YWEgbGVnYWN5LXRydW5rCisxMjUxMSBhYjZkZDcwZjI1MDc2ZjY4OTI0YTg5OWNkMGZmNzQ4YjkyMzljMGExIGxlZ2FjeS10cnVuaworMTI1MTIgNDY3MWFlMTAzNWIzODk1OTkwOTgzN2FiYzZkOGUzNjk0NTlmNDcyZCBsZWdhY3ktdHJ1bmsKKzEyNTEzIDQyYjIyOGQ3OGJlYWQxMmQzM2U3ZDAzMGM0YjM2ODYzNzllOGMyMTIgbGVnYWN5LXRydW5rCisxMjUxNCA0YTI1ZGQ4NWRmNjIyYTVjODYwZGI5ODczZDc4NjU0Njc2NWMzMGFiIGxlZ2FjeS10cnVuaworMTI1MTUgOThmYTUzNWI5YWYxZWY2MGFmMWZlOGU3OWEwZGM4OGNhMzA0ZjBjZSBsZWdhY3ktdHJ1bmsKKzEyNTE2IDYzN2ViOTYxYzExYmY1MjZiOGMzNDAyZWU3OTczNWI5MWM1MmUxMzggbGVnYWN5LXRydW5rCisxMjUxNyAyYTBjZjk2NzcxOTM5ODMzNGNmZGVlMmVlNjY3ODAzYzY0YzRiNjU2IGxlZ2FjeS10cnVuaworMTI1MTggYzY5MTNjNzMyNmYwOTZjMDIzMDQyZjE1NTAzNTAzM2Q4MDNiNjY2ZCBsZWdhY3ktdHJ1bmsKKzEyNTE5IGYyNDU3ZDY5N2EyYTI4ZTEzZTkzOWI5NjVlZmQyMDQ3OTllNDc1NmYgbGVnYWN5LXRydW5rCisxMjUyMCBkNzk3OWY0ZWQyYjYxNjM1NjVlZWIyODQ3NzM0YmYyNDczZWUyZTZkIGxlZ2FjeS10cnVuaworMTI1MjEgODMyNzY2OGNmZDE3MTRkMTJkZGZkODk5NjExNWQ5MjA4MTA1M2MzNSBsZWdhY3ktdHJ1bmsKKzEyNTIyIDk0MTI1YTEzNDNkODE4ZGRkYmEwMjg2ZDhjZjc4NzY1MDZiNDEzZjQgbGVnYWN5LXRydW5rCisxMjUyMyAyMTgzZjUwNmEwOGUxYzhiZTY2YjVlZjZjMDk5M2Y2ZDQyMzIxOWU5IGxlZ2FjeS10cnVuaworMTI1MjQgMjgxOTRmNTFmN2ZlNTRjNDFjZjdiZDA3NzUyOWZjNTIwM2Q1ZjAyMSBsZWdhY3ktdHJ1bmsKKzEyNTI1IDg5ZGNlYTYzYzQ2YmVhMDJiNWMzNTgwMjQ3ZDMzZjRhOTVjNWZhYWUgbGVnYWN5LXRydW5rCisxMjUyNiBjYWYyYzY1YTZiY2YyNWY5NjUwYzM1MzAxY2U4ZTA2MDI5NGJlMTM4IGxlZ2FjeS10cnVuaworMTI1MjcgZjU3MmFlMzZkNWJhYzliNDU2YTM5ZDdhZGE3ZWJjZGIwNTZlNjg5NyBsZWdhY3ktdHJ1bmsKKzEyNTI4IDYyMDY4NWU0YzQ3N2UyMDdhOWUxODc5NDdmNTYyZTMzMTQ3Y2JjMDcgbGVnYWN5LXRydW5rCisxMjUyOSAwODBiZDQ2ZjM4NDg3OTljZGY1MDEwZTk3ZDgyNGIyNDZiMmMwMTllIGxlZ2FjeS10cnVuaworMTI1MzAgMTY3YWRmMzE3ODZkNzM0NjJhN2NjNmZhZTdiNDZjNjVmMGU2NzgwZSBsZWdhY3ktdHJ1bmsKKzEyNTMxIDAzNGI0MmJhNjhhNjk5M2E4YTFmM2FlNGYxNTc2NzVmMDBhZGI5YTMgbGVnYWN5LXRydW5rCisxMjUzMiA3NGQwZDJmM2NiMWRiYThmYzFhODE2MGNhNzgwNWUyOWM2YjM5M2I5IGxlZ2FjeS10cnVuaworMTI1MzMgZGU1NjhlYTBkMDQwZWI2MzBkZWRjNTkyZTY1Njg3YTY4NWE1MzA2YiBsZWdhY3ktdHJ1bmsKKzEyNTM0IDIwZThhMzM0NGEwZmY2MGNkOGM0YzZkMTM1NWZlOWNhNzk3ODU2MmEgbGVnYWN5LXRydW5rCisxMjUzNSAxMDUxZWY5OTQzMWU1ZmVkY2FlMWMwNGU3OWU5MTVlYTk3MzAzOTgzIGxlZ2FjeS10cnVuaworMTI1MzYgYzliMDcwMDc0Yzg1ZDNiY2YyYjMxMTBkMmVjNDU5YmIzMTcyYzgwNSBsZWdhY3ktdHJ1bmsKKzEyNTM3IGI3MmE4YzQ4ZjJkMDA0M2YzZmYwNTgwNTgzN2JhMjA2NTg3MGVjM2YgbGVnYWN5LXRydW5rCisxMjUzOCBmNWRmMjJmZGFkYTg4NTliODAxZDYwYWY1YWRlOThlMDIxNjc1ZWZjIGxlZ2FjeS10cnVuaworMTI1MzkgZjEzMmVjZmRiMjg1NTc3N2Y2MDQyY2Q1MWE1YWQ0N2FkNzU1ZmUzZiBsZWdhY3ktdHJ1bmsKKzEyNTQwIGJhMDNlNjhkZjBmZDRmMDkwZGQ3MDZlMWQ4NjM4NDRiMjhhZDVkYjAgbGVnYWN5LXRydW5rCisxMjU0MSA2ZGZmNzY5NmUzNTgxMTJlMmE1MDhkZWYxNWU1MmEzN2I0Y2E1ZTYyIGxlZ2FjeS10cnVuaworMTI1NDIgM2FkMmIyZTMxZjUzMDhlYTNmYjIyM2Q0YjVlMzYzZTZhMzQzYjEyNiBsZWdhY3ktdHJ1bmsKKzEyNTQzIDMyNjUyZjY5OTZlMzc0M2UxOGM2ZGI2NGY4NGFiZDliN2Q5ZWJiMmUgbGVnYWN5LXRydW5rCisxMjU0NCBmMmMwNzJiMDU0NjY1NGQ2MjE0YTAzYjQ4NTQ4ZDUwOGIwMjZmYzcyIGxlZ2FjeS10cnVuaworMTI1NDUgMGRjNTBkNDNmYjg0NjM0ZGQ5NzhlZDNiOWU4NzEwZTdkMmYxMDU5MiBsZWdhY3ktdHJ1bmsKKzEyNTQ2IDhjZjY2YjFkNDE1NWVjZDFlOTBjMzkxOTFmM2JlOWI0OTU0ZWFjZjEgbGVnYWN5LXRydW5rCisxMjU0NyBlZTlhOGZlMGNmY2E1ZjExMGQ3OGI4OWZmNDgzNjg2NTEwZWQzYTZlIGxlZ2FjeS10cnVuaworMTI1NDggYzA3MzlmNjQxYmQxZDU4MWEyMjkyMjIwMjVlNGU5YmVmYzdhZmI3YiBsZWdhY3ktdHJ1bmsKKzEyNTQ5IGEwYjA2ODkxZDI4NjAwNjZjZWM5N2Y0NDZiODU2Mzg1ZDIxNjQ4MGIgbGVnYWN5LXRydW5rCisxMjU1MCA3Yjg4YzEyYjg3MDFjZGU2NjMxNTM0NGQ1MjY2ZmU4MDBkMTk3ZWU1IGxlZ2FjeS10cnVuaworMTI1NTEgZGNlMTA0ZTFhNzNiYmRjY2FlNjRhYWVlODE1Y2IwMTUxNjk2MTFlZSBsZWdhY3ktdHJ1bmsKKzEyNTUyIDY2ODU4ZmRmNDY3ZWJhMWM1MmQ2MDMyM2Y3MTJkYTQ5OGU4ODc3NWIgbGVnYWN5LXRydW5rCisxMjU1MyBmMDcyMDNjYzI3NDBhOTE5NzEyNzg5OGY1MGNiY2Q3ZjU2NjJlYzAyIGxlZ2FjeS10cnVuaworMTI1NTQgNzk0YTIxYTVhZDM1ZTE5MWFjOTZhMTIxZmZiNDRkMjI5ODc1NGI0MSBsZWdhY3ktdHJ1bmsKKzEyNTU1IGYzM2VkOWUyYTYwN2ZhNGM5Y2Q1ODJhNTk2MzBmN2E4ZGJlNWEwYTUgbGVnYWN5LXRydW5rCisxMjU1NiAyN2NjN2EzMTQ1MDI2NjBhNzcyM2E1MGI5MTcwOTg1Y2UyOWQ4ZTM2IGxlZ2FjeS10cnVuaworMTI1NTcgODBlMGFhYjE3MDVlYmQ1NDIwMmFjMTM0MDM0ODk4OWQ4NGRmNjAyOSBsZWdhY3ktdHJ1bmsKKzEyNTU4IGI4MmE2MWE4ODRjZjI4NzYwN2E3ZTcyY2U0NmNjZGRmOGVjMGViZDEgbGVnYWN5LXRydW5rCisxMjU1OSAwNzVmODcxZDgwYjU1ZWVhYTU0OTM5N2RmZDlmZTE4ZTFiM2Y4NzE4IGxlZ2FjeS10cnVuaworMTI1NjAgZWU2MjU2MDgxMzY2ZDI4MTVjOGFlMWIzNjMzNDhhMTM1M2M1MmIyMiBsZWdhY3ktdHJ1bmsKKzEyNTYxIGM4OGFhOTU5M2EwOGVkMTEwMzBkNmY2MjdlMjhlNzk5ODUwZGEwMzEgbGVnYWN5LXRydW5rCisxMjU2MiAwMTVjYjYyMzFmM2Y4ZTY2ZWNhMWRmMDk0NmZkOGE2NWFmNWZkNzZlIGxlZ2FjeS10cnVuaworMTI1NjMgZGRkYTU4NTRlM2VhZDUyMjBkNmZhMGI4ZjU2NzhkMmEwODIzNGZjNCBsZWdhY3ktdHJ1bmsKKzEyNTY0IGQ1ZTY0YTYxNjMyMDAzYzZjNmE3ZGY2Y2U4MmZlMzc3YzY3ZmQ4MmQgbGVnYWN5LXRydW5rCisxMjU2NSA4ZmZlNDUwNDI4YjFiMzM5MDEwNWMwY2M5NzhiYzA4YmI5YWU0OTM1IGxlZ2FjeS10cnVuaworMTI1NjYgZDliN2EyMDgwOTcxYmEzMDllYjBkZTdmZGM1NDllYzNkYTU1NmEyYSBsZWdhY3ktdHJ1bmsKKzEyNTY3IDZhYmQ4NGFhYjA4YThlNTI5MWEwMmIyOGIwMjM5OGIxNGVjZmFjMTkgbGVnYWN5LXRydW5rCisxMjU2OCBkN2Y0MzRkNzg0YmY5ZTY4OTJjZGZlNWM2YmNlOWJhZmQzNTNjMmIwIGxlZ2FjeS10cnVuaworMTI1NjkgNzEwMjI4OTA0MmQ1ZThlNDQ5MGM0YTI2NjM1ZmNlNjM5ODJlOGEzNSBsZWdhY3ktdHJ1bmsKKzEyNTcwIDZkNmY0MjdhYjZlY2IxODM2M2JmNjJjZGE4NDViMWFkMDE0YTIzNjkgbGVnYWN5LXRydW5rCisxMjU3MSA1ZTAxNjQ1ZWU0MWI4YzIwY2Q2ZjAwMTM1OWFkZjYyYzQ2ZjZmNDNiIGxlZ2FjeS10cnVuaworMTI1NzIgMTM3MTc5MTg2OTI3YTA0MGMwZWE4MmFhNzNmYjNlMzE5NmE4NDBhNyBsZWdhY3ktdHJ1bmsKKzEyNTczIDY3ZWQwNWNmMTcxZDA4ZjUzNWEwYWFhM2JjMGU5MzA4NzQzMThiYWYgbGVnYWN5LXRydW5rCisxMjU3NCBlY2ViY2Q4NGRmMzdiMmFlZjBlMjI1MDc1ZWY5MDc5YTFiMjNhOTIyIGxlZ2FjeS10cnVuaworMTI1NzUgMWUyMWUyMjQ1M2RjM2M0Yzg1OGQyNTg4ZDU5ODM3NzAxZDE4OWNmZCBsZWdhY3ktdHJ1bmsKKzEyNTc2IGQ0ZTk2MzI1MDNkZmRhMzMwNGJlY2FmYjI1MzVhNWVjNDgwOTEyZDkgbGVnYWN5LXRydW5rCisxMjU3NyBkNmJhOGU1ZTU1YWQ0Yzg5YTQ4NzY0ZTdmYWNiNDJhMTYxNDhhODRmIGxlZ2FjeS10cnVuaworMTI1NzggY2JmNTUwM2IzMmQ1NTliNjNiM2MxMTljYTk1MTQ5NDc2ZmRkMDQyMCBsZWdhY3ktdHJ1bmsKKzEyNTc5IDgwYjIxNTI0OWIxN2Q1MWIyNjUwZjliYTBlODhmNzU5MzRiYjFmZjkgbGVnYWN5LXRydW5rCisxMjU4MCBjM2Q1MDY3OTQ5NjdkZjg0MWNjMjFiOTg5ZjNjYzZhOTIzYjY5N2Y1IGxlZ2FjeS10cnVuaworMTI1ODEgYmMzNjAyYTgzYWQzMjk1YjJkNjNmOGE4YjdjYjNhMmUxZmQ1ZjhhNyBsZWdhY3ktdHJ1bmsKKzEyNTgyIDZmNDJjOGZlODc1YjdkZTIyNTg0NzVmMjQ2NWJkY2YxYjY4MDcwYWIgbGVnYWN5LXRydW5rCisxMjU4MyA0OGFmMmM2Yjc0MWU5YzgwY2QzMGNhYTY0Yjc5NTE2MTA3MzhiNDI2IGxlZ2FjeS10cnVuaworMTI1ODQgYjU0NTRkYzIyZGNiODExZjNmMjEyN2NjYzA3ZWE1YTJiMzJmYzk1YSBsZWdhY3ktdHJ1bmsKKzEyNTg1IDQ4OTRkY2VhMTI2YjQwNzlkYzYwZTIwNzlhZDVkNjUyNjI4NGM1NjIgbGVnYWN5LXRydW5rCisxMjU4NiA1ODIzYjYxNWMzMDFlM2JiNjlmZjk5MTdmNDA4MGI2MDQwOWFhMzEzIGxlZ2FjeS10cnVuaworMTI1ODcgZDNlNDRlNjEwZWExNGIyMjdkMDBmMjU1MWVmN2Y4OGI2NzkyMjVjNiBsZWdhY3ktdHJ1bmsKKzEyNTg4IGM3MTQ0ZTdlODQ5NDIwNTA0ZjQyM2Y3MWQyOWQ5YWYxMTA5YWNmYTUgbGVnYWN5LXRydW5rCisxMjU4OSA5ZWZhNDI0NDVlYzlhZmVlZTMyYjliMDFjY2NiZjNhMTJjYTJiMmMzIGxlZ2FjeS10cnVuaworMTI1OTAgZjVhNTVkMzI3NjA4M2ViYzUwMWE0Yzk3YjkwNDU0YjI1OTVjZTY5YSBsZWdhY3ktdHJ1bmsKKzEyNTkxIDJhOWVmMWUwZjU0MWQ5ZGUxODE1M2RmODIxNDhmODFlY2E5YjQzMTUgbGVnYWN5LXRydW5rCisxMjU5MiBhYTAzMzY1MjdjNGU5NTYzMzk0ZGIwNGEyMGE4ZmQ0MmQ0NjFlN2JmIGxlZ2FjeS10cnVuaworMTI1OTMgOTY1ODZkYjM3OWZiYTlkOTg0YzYzNjg2NGI0MGY3YjQ0YTk4OTg3ZiBsZWdhY3ktdHJ1bmsKKzEyNTk0IDU3NDA3NWU5YTI1ZjRkYjdiNTQ2MTk1N2Y1YTNkN2M2ZmE2MDlmYmUgbGVnYWN5LXRydW5rCisxMjU5NSBkOGM0Mzc4ZWI4N2RhYmU5NDgzMzc1MjA1NWJiMDE2N2JiMWFlZjFhIGxlZ2FjeS10cnVuaworMTI1OTYgMWQyOGM3ZTE2NjM2NTczMTVkOGJhMWUxMmIzZGQ4MWYyM2ZlYTE3NCBsZWdhY3ktdHJ1bmsKKzEyNTk3IDdlYWQ0YTA0NDI3ZTg4NDAyYzc1NTZlM2JmNGU5ZTI2MWE1ZTUyM2EgbGVnYWN5LXRydW5rCisxMjU5OCAzYWUwM2I5YjY1ZWRjMmEwOWQ4ZmI0ZGRjYmRkODA0NjU1OGE5MTYzIGxlZ2FjeS10cnVuaworMTI1OTkgZjVmMWI1ZTk4MTRhNDhlYTJlY2NiMWMxNDE5NzVjYmQwNGJiYmEzZiBsZWdhY3ktdHJ1bmsKKzEyNjAwIDNmN2RjM2RlMDYxNzBkNDk4YzE2Y2IwMDFiNTA3NTZhZWI2MTJhNDUgbGVnYWN5LXRydW5rCisxMjYwMSA5YTNhNDY5MjhkYmZlYjhmYjJjMzllZmNhYjJjMjk5MmJmZTM4OTgzIGxlZ2FjeS10cnVuaworMTI2MDIgOTE4NDg2MmJkOGQxZTkyZGMyM2Y3YTZmMGFmNjczOWJkZTIwZjczNCBsZWdhY3ktdHJ1bmsKKzEyNjAzIDZiMjhiNWYxOTdjZmIwNDgyZDA0ZTMwODE1YWNhNDQxZjViMDY1Y2UgbGVnYWN5LXRydW5rCisxMjYwNCBjN2RmZDYxOTM1MGJjN2Y0YTljMzc4OWJjNjRhNzA3ZjBiOGFlZmQ0IGxlZ2FjeS10cnVuaworMTI2MDUgZWZmMDhiZDgxNjVkODJhZmYyZDczMzk3NjU0NDEwNWJhNDk4OGEzMSBsZWdhY3ktdHJ1bmsKKzEyNjA2IDU4ZTdjYzVhMzg0MTMwMGNhNWFiMTI2YTBmNGQ0ZmZmNDg0ODMzMTEgbGVnYWN5LXRydW5rCisxMjYwNyBlNmJiYTAyZmY2MjQ2ODRiYjA3NmNmNzFkNmY4YTU0ZTg5MThkNmFhIGxlZ2FjeS10cnVuaworMTI2MDggMTZhYTczNTg4ZDkzYjY4ZjUwMjAzZDIxYThhZDk2ODc1YjA3ZmQ0MSBsZWdhY3ktdHJ1bmsKKzEyNjA5IDY5N2UwYzlkMDk0MGVjOTUzYzAzNDhlOGJkOWFlOGEwOTkzMzljYmEgbGVnYWN5LXRydW5rCisxMjYxMCA1MmQ1N2NjMDNmNDI5ZTgyZTQ3ZWEyNWI3N2MwOGY4ZWEyMWU3NjVmIGxlZ2FjeS10cnVuaworMTI2MTEgM2Q1ODdlNjUzZjJkNjU4ZDk4ZTExNjE3ODQ4YzA5MDkxZTdjYWY5YSBsZWdhY3ktdHJ1bmsKKzEyNjEyIDMxYzExMjU5NGFiNjM3YWU4YjRjMmY5YWJiZmFkMGZjNmM5Yjg2NzUgbGVnYWN5LXRydW5rCisxMjYxMyAzZjkzODU4N2YyYTNmMDJhMDllZTcwY2RlMDNhNmRhNTc1N2Q1MzM1IGxlZ2FjeS10cnVuaworMTI2MTQgYWJmNDkzMDY0N2UyODIyYjc4MGY3ZDRjMDY1ODI5NGY3YzE0ZTg2OSBsZWdhY3ktdHJ1bmsKKzEyNjE1IGU5ZjU5ODViNmVhNDY0ZjgxY2FkM2IyNDkzYTE1ZGVjZjQzMDZhNTUgbGVnYWN5LXRydW5rCisxMjYxNiA1MDhhNjM5ZDhmZWIzNWFmNjIzZDUzNTNiMzNlYWY2NDA3NTVkNTU4IGxlZ2FjeS10cnVuaworMTI2MTcgYTk5ODg1YWYzOWY4OGM0ZWU4ZTUxMTMzMmU5MmMwODdmMzc3M2IyYyBsZWdhY3ktdHJ1bmsKKzEyNjE4IDQ5ZTdlMjE4NDliM2NjNTFmZGI2NWM1YTQxZTgxNjJiNTc5M2EzNjUgbGVnYWN5LXRydW5rCisxMjYxOSAzMTQ1ZGVmNTgzZTJjYTE0ZTM5OWE5YzcyNGY0MDZiYjFlZDlkMDk5IGxlZ2FjeS10cnVuaworMTI2MjAgYTlmYzczOThjZTdiYmY3ZjY2N2ZkZmYyZjAzMjE0ZWQ4YTJlMTk1ZSBsZWdhY3ktdHJ1bmsKKzEyNjIxIGE2M2M5YzNlOWVjYzAxZDRmNzUzNmJlMjJjMzY1OWFkOWViOTc4NzQgbGVnYWN5LXRydW5rCisxMjYyMiA1YjE1NjQyZTdiZGY0YTI4ZDc3Nzc4ZTg0OTkxYmZjMWZlOWZkZjY4IGxlZ2FjeS10cnVuaworMTI2MjMgYjdkODEyNWMyNDE3ZDg3ZGMzY2IwNGNiZDhiYzczYzVjYTcwMmFhOCBsZWdhY3ktdHJ1bmsKKzEyNjI0IGNiYjNiMmM1NTVkN2E3MGExNjk2NDEyYzg3OTEwYmExNjVkNmM4NWMgbGVnYWN5LXRydW5rCisxMjYyNSBiYzI4N2M2Y2ZhMjMwZjA1NjZlMDRmNjczZDRiYjEwYzI3YmVjNTUwIGxlZ2FjeS10cnVuaworMTI2MjYgZmI5NjY1NjJkYjBlNjFlNjExZWNhMjY2ODEzZTA3YTZjYjdjYTQ2MCBsZWdhY3ktdHJ1bmsKKzEyNjI3IDY0NzI4YTUxY2I1NTFlODZiNDNjZTYxNDAxOGJmMzAzODNmN2Q4OWMgbGVnYWN5LXRydW5rCisxMjYyOCA4OWY2NTU2ZjA1OWViNjgzYzBmMzRkMjI3YTY3ZGYwMTRmZjgwNTM3IGxlZ2FjeS10cnVuaworMTI2MjkgYmFmY2Q3YjYyMzI3NWM3NTNlMmQ1Zjk1NTEyNjk1NmNhYTJiMjQxZSBsZWdhY3ktdHJ1bmsKKzEyNjMwIDBkZDRmYWZlZmQ2YzQ4YTRjMzg2YzgyOGQ2ZWRiNjY5NDRjNTdlOTcgbGVnYWN5LXRydW5rCisxMjYzMSA4YjU1YzUxNTY4M2Q5MjdjYWMzMGIwYmZjOTRhMDE1OTNmMGU2NDIzIGxlZ2FjeS10cnVuaworMTI2MzIgZTU2OWY5YjBkOTY5YTExYjZlYzdkMTllMmYxZTZmNjUzNGNhZTE1ZiBsZWdhY3ktdHJ1bmsKKzEyNjMzIDFhYzJhOGJiN2RjMTA4NjRjMDlhOTcwYTUzMzBiMTNkM2VjZDQyNzYgbGVnYWN5LXRydW5rCisxMjYzNCA2NGU2NGVmMDhkMWM5MTE1NmFiMDc2MzVmMzY2MjcwMThkZDRhZGFiIGxlZ2FjeS10cnVuaworMTI2MzUgNTcxOGU4MzAyMGFlOTVlNTNiYmJkNTExYjNhNzZkY2VhYWY5YmE5MyBsZWdhY3ktdHJ1bmsKKzEyNjM2IDEzOWQ1ZjFhNmY4OTlkN2NiM2YwOWQ3YTVmZDc1YTY4ZDQ3OWI1ZDEgbGVnYWN5LXRydW5rCisxMjYzNyAwYzA3YzBkYmUzMjgyYzA0YjlkMDc1ZTU1MWRjNGFkN2VhZjE1ZTdhIGxlZ2FjeS10cnVuaworMTI2MzggNjU3MzE2OThjNmVkZjRhNzZhZjZlMTQ2ZWIyOTRjODNlZDc4MjU1NCBsZWdhY3ktdHJ1bmsKKzEyNjM5IDQ5Y2YxNDEyNDQ1ZjMyMDk2MGMwM2YxYTQwNDU3ZmNkYjE3YTlhZTAgbGVnYWN5LXRydW5rCisxMjY0MCBiMjE5MTVlNjU4OWUwNGY5OGZjMTM3YWJhMWNkNTEyNmMzNjk0OTkxIGxlZ2FjeS10cnVuaworMTI2NDEgYmMwMzQ3NjQzZWNmYzZjYWI5NWI4MzUxNTQ2MDcxMTQ5MDA2MGFjZSBsZWdhY3ktdHJ1bmsKKzEyNjQyIDkyMzIzNjEyOTRiYjY5MjQ1ZmUxYzVjZjg4MzYzMzE0NGY2MTg3NjUgbGVnYWN5LXRydW5rCisxMjY0MyAwOTkwMmUxMzA1MzczNDRlM2NlYjIxYzE2MjQ2MTI3MjM2MzJjMzQ5IGxlZ2FjeS10cnVuaworMTI2NDQgNWJkYjcyYjE5NTdlMTZlN2FiODg3M2RjMDIwNDgyNGZlM2JiNTgxNSBsZWdhY3ktdHJ1bmsKKzEyNjQ1IDNjNjk4YjUzYmU1OTIxMTZmYjMwZDI4NzY2NDA3MDQ2YjgwODVhYjIgbGVnYWN5LXRydW5rCisxMjY0NiBhYmQzZjA2NmM4N2FjNTM5ZjU0YmMyZjkwNDIxZDZiYTYyZGE5OGZmIGxlZ2FjeS10cnVuaworMTI2NDcgODI4NDkyNzAyNWJlNmZkMmI0YWQ3OWM1MzJhNTY5OTVkZDU5YmQyZSBsZWdhY3ktdHJ1bmsKKzEyNjQ4IGJkNDlmOTFkNTliMmQzMWE0Mjg5NDVjODQzN2UxNmY1OWQ0NmNmNjcgbGVnYWN5LXRydW5rCisxMjY0OSAzYWM3ZjAwNjYzNzVmYzg2MWYzNDliMWQwMTExZTJkZjA0MjY0ZDgxIGxlZ2FjeS10cnVuaworMTI2NTAgZTQwYmNmNmJjMWM4YmEzNjA2ZjQxOGQwM2UyNjc4NDJkMzcxMzkzMyBsZWdhY3ktdHJ1bmsKKzEyNjUxIDk1OWU4MWIzOWI4MTEyMmY2NzMwYTg2OGZiMjVlYTI1NmNlNDVjMmQgbGVnYWN5LXRydW5rCisxMjY1MiA5YTZjM2RjMWRjZDNmMGUxNGVjZWE2ODQzNDdmODI3MWJmNGE4MDc4IGxlZ2FjeS10cnVuaworMTI2NTMgMWQzZmU3Yzg4Y2M4YzQzM2Q4ZTUyYWE1OGMyZDQzMmIwNWYyNjZkNSBsZWdhY3ktdHJ1bmsKKzEyNjU0IDYyZGM5ZmY5Y2Q0YzM5MmNjZGVkMTc1OWZiMDliNGE4OTEyOTJiMjAgbGVnYWN5LXRydW5rCisxMjY1NSA5YWE0MzkwYmUzOGI3YzBhYzI4YWUxZTQzY2JhMzI2M2QzMWQzNDljIGxlZ2FjeS10cnVuaworMTI2NTYgZDM3ZjAzMTI0YzU0ZjgyM2Y0YjJjYWY5NGVjNWVhNjMyNDY1Mzk1MSBsZWdhY3ktdHJ1bmsKKzEyNjU3IDg0NjRlMzEzNzZlZDliZjFhMzBiODczMDBkMmI4YWFlNzJmZjQ5ZDIgbGVnYWN5LXRydW5rCisxMjY1OCAwZjdkNjk0YmMzMzRlZmYwZjFjYzAwMTAzMTE1ZDRhMmM1OTM0MmI2IGxlZ2FjeS10cnVuaworMTI2NTkgMTMyMzliNDhjNDY5YzFhODI5MWMwNWY5MWM3M2IyMjdjZjViNjdjMyBsZWdhY3ktdHJ1bmsKKzEyNjYwIDYyNWI3Y2ViZmRlMmIyZDlkMDNmODkzMjI5Y2I0OTA0MWU5MDdkNzMgbGVnYWN5LXRydW5rCisxMjY2MSAzYjdiNmQ1ZjE5MzE2N2RjOTg0ZGFiMGJjM2EyN2RkZjM1OTJjZjE0IGxlZ2FjeS10cnVuaworMTI2NjIgM2JhMDI1YmE3ZjA5NTA0YjcxOGU5YTBkOTBhYmIxZTRkMDdhYmFjNCBsZWdhY3ktdHJ1bmsKKzEyNjYzIDVjMWViZjIzZjFkNzdiNDNkZTQxNzNhNWIzOWVjMTA3ZmZiMGEyOWMgbGVnYWN5LXRydW5rCisxMjY2NCA1NjRmMDM2MzI5MTYyNWRjY2M0YjM1NmQ3ZGI1YWIyNjhiNzM1MmZiIGxlZ2FjeS10cnVuaworMTI2NjUgZGRmODYxZDg0YmJiOTIyODRiMzQ0ZTM5ZGRkYzhjYmMyMDNhNmE0OSBsZWdhY3ktdHJ1bmsKKzEyNjY2IDE1NGM2NDA4YzNjMmRkY2Q2Y2M0ZjQxNDgxM2I2OGRkMmYxZTgwMDMgbGVnYWN5LXRydW5rCisxMjY2NyA5YzljZjQ1NzJhOTc3ZWY2ZjdiZGY1OWE3OThjNGMxODZlMGU1YWNhIGxlZ2FjeS10cnVuaworMTI2NjggM2YxM2VlNTkyYTQwZjgzZTI5MTJlMDFkZWE3ZWVkMThmMWIzZjQxZCBsZWdhY3ktdHJ1bmsKKzEyNjY5IGJkOGM0M2RhZWY4NWUyMDQxYWQ5OWExYzI5MTRiN2I3ZGVmNmE3N2QgbGVnYWN5LXRydW5rCisxMjY3MCA3NjJjZmU5NmZhZjlkNzFlZGI3YWFjN2JhMGQzZjljZjdhYjExYjdhIGxlZ2FjeS10cnVuaworMTI2NzEgYmEyNWIyZDNkNzg0ZDdkN2U1NjNjNTdjMDdkMWU0MGY0Zjg5ZDE5ZSBsZWdhY3ktdHJ1bmsKKzEyNjcyIDdjZjk3NjU4Y2FlN2UzNmYzOTYzNTQzMDY3NThhOTYwNGU3MjEyOTQgbGVnYWN5LXRydW5rCisxMjY3MyA3M2U1ZTNmNTFiODc0ZmM5NzM5YjAyYWMyNjM3YTAzYjc1NTYxMDNlIGxlZ2FjeS10cnVuaworMTI2NzQgOTY1NTBiNWQwOWUxNGMyZDY4ZjViYjcwMTU3NzUzYTUxMjIwNDczNCBsZWdhY3ktdHJ1bmsKKzEyNjc1IDZhMWNiNmYzN2E1MmM1YjcwYzQzZWNiZTViYzMwM2FjZWY3NzhlM2IgbGVnYWN5LXRydW5rCisxMjY3NiA3NDRkYjg2ZTAzMTFhZmRmNjYzNjRkMDEzODk0NjZiNjEzYzY5MGNmIGxlZ2FjeS10cnVuaworMTI2NzcgNDlkNzc2ZjM4NzhkOGRkNTA0NTdhYzY1NzE1NWRkMzE1NmYwNzQyMyBsZWdhY3ktdHJ1bmsKKzEyNjc4IGE3OWRjZDI3YmRjM2E2YjVmOWZhOTA4MzM2NDEwZDk0ZDFmNTJhNmUgbGVnYWN5LXRydW5rCisxMjY3OSAzNWY5MWNhZWFhOGRhMzc1NDczZjg0NjY3YWFjMzk4NTMxNDBiMDYyIGxlZ2FjeS10cnVuaworMTI2ODAgZjBhNTdjY2YyMzNjYjM1NmQ5N2UzNTEyMjkyODg2MDI1MWFiY2M1NiBsZWdhY3ktdHJ1bmsKKzEyNjgxIDA0Yjg4MDQyYTkyYjhmYzJkYzg1YjBhZWVkYmRkYTg2MzRhMTQxMTYgbGVnYWN5LXRydW5rCisxMjY4MiAwMDViYTQxMmE4ZWNiNTJhNDA2OTUwMmM2YWI5ZGNlMzJjNmI1OWI1IGxlZ2FjeS10cnVuaworMTI2ODMgYjg5MzJhYjQxYWRkNGYyMDFjZjkzYjBiZTdmN2Q5MDY3MGJkZjU5ZSBsZWdhY3ktdHJ1bmsKKzEyNjg0IDU1MzlhZWJmODkzOGE4NjQ1OWQxY2U2NWQxODExM2Q1NWMwMmM2NGIgbGVnYWN5LXRydW5rCisxMjY4NSA2ZGJjZDVhNmU1ZTYxOGI3NTFiMWJhZDM1ZDNkZjZhMzY4YjUyN2QxIGxlZ2FjeS10cnVuaworMTI2ODYgZDg2NDAwNTAwYWEwMzczMTUzNWFlMzdhZjhlYjk1MTdjZmFkOWY0YyBsZWdhY3ktdHJ1bmsKKzEyNjg3IGIyNmUyNTE1ODkyMmVmN2QyMzJlN2MwYzFhZDM1ZmM0YTI5ZTIzMmUgbGVnYWN5LXRydW5rCisxMjY4OCA2MmU2MTA1ODQ4MGEzOTkzMmZkMjRiYTdjM2RiMDhmOGFhNjc3YzA3IGxlZ2FjeS10cnVuaworMTI2ODkgZWUxZDMyZjdhMDU1ZjBiOGQxYjU3ODc4NjNjZTQwMjIzOTdiOWFmMSBsZWdhY3ktdHJ1bmsKKzEyNjkwIDY2MzNjM2ZjYTYyNjNmMzZlYTYxMGJkYTc0MTVhNTdmMzc5MjU2MjkgbGVnYWN5LXRydW5rCisxMjY5MSBiZDMwZDM5Nzk3YTQwOWViZDNiZGFhNjBhYjBlMmU1OGRlM2M0NWZlIGxlZ2FjeS10cnVuaworMTI2OTIgOGY0YWQxNGMzNDA3M2NjOGVjMTQ3NWNkMzA1ZjFmYjgxYjE4NGIxOCBsZWdhY3ktdHJ1bmsKKzEyNjkzIGIwZjA0YjdjOTQwNzFlNzJkOGE5NjFjZDMyNTE2OGMwNDE1NWQxOWEgbGVnYWN5LXRydW5rCisxMjY5NCA0YWY4NGNkY2ZkYjUzZDIwOWI0NmFjMzQzN2MzMzQxNWJhNzMzY2ZjIGxlZ2FjeS10cnVuaworMTI2OTUgNjdmMWQ2YmQ1OGNmYmExMDkzM2VkNTQ4NWRmNjljYjMxMGJmOTMxOSBsZWdhY3ktdHJ1bmsKKzEyNjk2IDFkOTQyNDhmZTJiOTlhMjk5ZTQwMmM0NjRiYTYyNWEyODM1OTQ1ZjIgbGVnYWN5LXRydW5rCisxMjY5NyBhMzY5ODY1NjlhZjE4ZDY4NDFkOTYxNjY1ZmQ3YmM4Mjk0MTQ1NTdjIGxlZ2FjeS10cnVuaworMTI2OTggMWUwZGQyZWYzOTcxYzJhY2IwZDA3NTdlMTRhZThlNDVhY2Q1Y2U0NyBsZWdhY3ktdHJ1bmsKKzEyNjk5IGRlN2MwMDAzNTc4ZjhhYTZlMjlmYWQ3MGE3OGFmYWZhMjI5MzE4MzAgbGVnYWN5LXRydW5rCisxMjcwMCBiNWYwN2E0YTY1NGJmMDcxYzE1Y2NiODM2OTRmNTFmNGMzZmQ2MmFkIGxlZ2FjeS10cnVuaworMTI3MDEgMjc5MDI1NTVmNjcyMWRkM2EwMjExYmUyZjQ2Y2EzYmQ4NWE2MDgzNiBsZWdhY3ktdHJ1bmsKKzEyNzAyIDA0OWM5MTM0M2Y5NTg4YWY1MDQxOWRlZjUzNzZmZTU5NjhhODhiOTggbGVnYWN5LXRydW5rCisxMjcwMyBjMGY2OWNiZTgwNWQxN2U2YTk0M2VkYTQxZGQzYmMyZTUzYTcwYjhlIGxlZ2FjeS10cnVuaworMTI3MDQgZTFkYTI5MGFjYzVmMTBlZGQwMzlhN2M5YmU1ODNkMDNmYWRlNWE3ZCBsZWdhY3ktdHJ1bmsKKzEyNzA1IGRmZGZmODcyNDg4NzVkZjU2YTQxYTNkYzJmZGZjNDZiMjIwMDFmNjEgbGVnYWN5LXRydW5rCisxMjcwNiBiZjQxODQwYzgxNTA3MjJhYTBiOGI4YWI2OWNjZjJiYjNjNmMxOTUwIGxlZ2FjeS10cnVuaworMTI3MDcgMWM1OWE5OWU5OTcwZjA2OTUzNDQ5NTkyNGFiNGZlMzg3ZjE2OGEzZSBsZWdhY3ktdHJ1bmsKKzEyNzA4IDAyYjE3MmE1ZDg5M2Q3YTcxMWNhODYzMGE1MDJjY2RmODlhZGFjMjcgbGVnYWN5LXRydW5rCisxMjcwOSAyOWQxZDNiMDhjYTdkNGY1OTZlMzE0YWI4MTlkNWQ2OGFhZTY3OTYwIGxlZ2FjeS10cnVuaworMTI3MTAgYTg2ZmUxZjNjZjRlNjViMzc1MjZjOWE4YWVmOWJkOTRlODg4MWVlZSBsZWdhY3ktdHJ1bmsKKzEyNzExIGQyODIyNzRmYmI3MjJmZDg1NWM3OTFmNzEyMTRmNzIzNjE5ZGViYmMgbGVnYWN5LXRydW5rCisxMjcxMiBiMWQ0MGZiMTBhZjZjYmQ5ZGU1ODVhZjY4MTUyNzQwYzVhOTA4YTFkIGxlZ2FjeS10cnVuaworMTI3MTMgMzJiNDNlNWQ4OGQzNTgxZGE2MDIxMTk5Njg1YWMzNWQwZGU0OWE3ZiBsZWdhY3ktdHJ1bmsKKzEyNzE0IGUzMzk3YWU4ODEyOTIxZTg1NjM0MjQ2OWNhYTIxZjUyYTBlMjgyZjggbGVnYWN5LXRydW5rCisxMjcxNSAwMmUxMzNlYWJhYzY5NmRmNmE3YmJhMDE4OGMyNGRjNDYzMjZhZjljIGxlZ2FjeS10cnVuaworMTI3MTYgMWZiYzRiYWUyOGNmMDU4NzE3NGIxZDc3ZDZkOTBiZDYxOTc4MDI2ZSBsZWdhY3ktdHJ1bmsKKzEyNzE3IGQxNjg2Y2YwOGQxMTZjNzE3ZTVmMzY4M2JlNmJjMmZiOThiZDQyZTggbGVnYWN5LXRydW5rCisxMjcxOCA2MWVkZDNiODVkNjM2OWQyY2FjNzQ3ZGRiMjlmMTQ3MzdkYjcwM2M0IGxlZ2FjeS10cnVuaworMTI3MTkgY2Q0NzY0NDJlZjcxNWI2MjRlNjk5MWQxNGM5M2Q1ZWQ1MzAwOWZiYyBsZWdhY3ktdHJ1bmsKKzEyNzIwIDQ3N2U5ODEwOWM3ZDY2MTUxODgwZmIyY2MzMzViODcxOWM0MzVkZDIgbGVnYWN5LXRydW5rCisxMjcyMSBhMjkxOTJmMmQ0N2FmY2Y2NDMzMDg1Nzc5YTM5Njk4YWVjNmJmZTQ2IGxlZ2FjeS10cnVuaworMTI3MjIgMGVmMTA3MWNiN2ZlZWQ5MTczNTc3YmVmOTU5NmMwOWNiOWIyMzAwMiBsZWdhY3ktdHJ1bmsKKzEyNzIzIGZlYjQxNTAwODc2NWU0M2VlNjkxMjQyNTllZDhkOTNhNjMwNGRjMDQgbGVnYWN5LXRydW5rCisxMjcyNCBiMzAwNzdjNTczNDg1NDJiZDYxZTZkODFmNjFkZWU0ZmMyNGI5NzcyIGxlZ2FjeS10cnVuaworMTI3MjUgNTUzZWQ2YWU5ZTdhODVmYTRmODg2ZTJjZWNkZDlmNWE3OTk5MTYzYiBsZWdhY3ktdHJ1bmsKKzEyNzI2IGRmNGE5NjdhODE0NjJlYmQyZmMxZmRiOGE2NTAxOTRjNDBkNWE5OGQgbGVnYWN5LXRydW5rCisxMjcyNyA3YmJlNzE2MzFjM2YwMjg4M2JlMzZlNjFhODg1Y2QwMTJlYmU4ZDUxIGxlZ2FjeS10cnVuaworMTI3MjggY2QxMzBjOTU1OGRiMzhiNmVlNjA5YzA4NGRiZjhkODM3YjBlZDQ0NyBsZWdhY3ktdHJ1bmsKKzEyNzI5IGFlNjEzNTI5NzU3NDJmYjkwNjM5MDIzY2FhY2Y5YjJkZDE4ODA2MzUgbGVnYWN5LXRydW5rCisxMjcyOSA4ZmU3ZWM0YjRmYzE1MThmY2FjODllNmJmNjc0ZmJiY2UxNjE1MGE5IGxlZ2FjeS10cnVuaworMTI3MzEgY2U1N2ViMzA5NjhhNWI4OTJjOGQxNzdjYTA4ZTUxZjhhN2ZmZWJjNSBsZWdhY3ktdHJ1bmsKKzEyNzMyIDBlMTQ3YTUxNzRhMTUyMTllMTVkYjZlYzM3NTBmNmIwMTg5ODZkYjIgbGVnYWN5LXRydW5rCisxMjczMyBhNjVmODc1ODQzNTRhZTY2YTIyNGYwNmU3MDVlMzJjYzJkYjMxOTU3IGxlZ2FjeS10cnVuaworMTI3MzQgOGNjY2ZjNmQ2MjcyMzY3NGFiM2ZjNDhmMzYzZmRhOGZhZmU2NDIxYyBsZWdhY3ktdHJ1bmsKKzEyNzM1IDI0OWQ5YTJiNWJjOTY4ZGY0OTI5YTFmZjg1ZmQ1ZjMzNmFlYjY2ZTQgbGVnYWN5LXRydW5rCisxMjczNiA5MmZjZTQxNGYzODIzMDhkNGM2ZDQxMmY1MGVhZmEyNzYyMTIxMTRmIGxlZ2FjeS10cnVuaworMTI3MzcgNTc0NGE2ZGIyZDRmODQxOTU1MDYyNTA1NjVmYjdlZDdjNzVkNTRlNiBsZWdhY3ktdHJ1bmsKKzEyNzM4IGM1ZTgzNDdlYjgwOWMyOGM1NTIxMjNjNTRlNTQ2MzM5MTE0MjFhN2UgbGVnYWN5LXRydW5rCisxMjczOSBmMWNjYmQ2YTk0Y2UzMzNkMmM0ZjEzZjQ3Njg0MWNiOGUxNjZjY2U4IGxlZ2FjeS10cnVuaworMTI3NDAgODY2NDJiN2E3YTYwZjU4NDg4MDVjNTY0ODEyYmMxZTk5NTc1NTcwZSBsZWdhY3ktdHJ1bmsKKzEyNzQxIGMxYmVmZGJkNjRlNTcyMjllNTBjNTY1NTk1Njg1ZTk2OTcwZTI1YWYgbGVnYWN5LXRydW5rCisxMjc0MiAzNTkyNDRmYTZiNTJhYjBlYmJhZjljZjAzMTc2NjUwZThiMGJlYTYwIGxlZ2FjeS10cnVuaworMTI3NDMgZjEzOGJhNzJiZjJkOWYyZTNlOGUxODBlMzk1YzJmN2ZjYTcyZWY3YSBsZWdhY3ktdHJ1bmsKKzEyNzQ0IGI2YjkzMDA2ZDA3Njg0MDA2NzMzMzAzZmI0ZjA4MTNhYzI4NzZkMDkgbGVnYWN5LXRydW5rCisxMjc0NSA1NzVjNGVhMjU0MmJjMGUyZjQ0YjYzYWFjMGFkMTJmOGIyOTUwZmU3IGxlZ2FjeS10cnVuaworMTI3NDcgMzJjNDIwNDc0MmJhZmQ2ZDNjNjIyOWFjYTFjYzM2ZWRiMjQ5MThjYyBsZWdhY3ktdHJ1bmsKKzEyNzQ4IGJkYmZlMGVjOTcwZjg5MmQ2YmI4MjBhNTMwYzVjNWM5MjcxYmM5MmMgbGVnYWN5LXRydW5rCisxMjc0OSBjNWYxMWM1YmY1YjIyMDA2MTQ4MWFjMmFlZTQ5MGY0MzcyYzMwMmQ5IGxlZ2FjeS10cnVuaworMTI3NTAgMWEyYTBhM2U5ZGRiMmUxMjJmY2ZiMTlmMTQ3ODg3YzU5ODMxMjAzNiBsZWdhY3ktdHJ1bmsKKzEyNzUxIDg5NWQ4NjFhMDg3MDFmY2RjOGJiZTJhOWI1NDRjNzFjOGY0YzBjYWYgbGVnYWN5LXRydW5rCisxMjc1MiBlNTljYTVkMzQ2ZjRkZjJjODQ0NmMzYzJhMDIxNWMzYjg3MTUwYWJiIGxlZ2FjeS10cnVuaworMTI3NTMgNDdjMTFlODI3Njk5OWYwMDc4YzA3MWRlMmI5ODM4M2M3NzAyZjk1NiBsZWdhY3ktdHJ1bmsKKzEyNzU0IGQ4MzkzNWQxNDA4NDU2N2Y4ZWE0OWQ2NDhkODM1NjdiMGU2ZGMzZjEgbGVnYWN5LXRydW5rCisxMjc1NSBjMjdjMTBjNmI5ZjI4Mjc0MDFkOGQwM2FlYzgxNDFiNGY3ODdiYmVhIGxlZ2FjeS10cnVuaworMTI3NTYgMTNiNDVjNzRlOTdiNTMwNjYyMjYxYjJkYTM3ZTlhYjVkMzJiNTllMiBsZWdhY3ktdHJ1bmsKKzEyNzU3IDhmZWIyOTUwZGE3YjI2MzIzOGZhMmI0MGZiNDY0ZDljNGUwN2NjODYgbGVnYWN5LXRydW5rCisxMjc1OCAwNjE0ZTdmMTY3NDFmMmExNTg4ZTI0ZDRlMjkwYzQwYTBlNjdiM2U5IGxlZ2FjeS10cnVuaworMTI3NTkgYTQ5MTNiYWU5ZjkzZTdmNDEwMDAwOTgyNTY1OGU2MjdkMjMzYmJjZCBsZWdhY3ktdHJ1bmsKKzEyNzYwIDBjYjhlNWVhODRhOGRhYWMwZTk1ZDQ0NDY5N2NhOTZhOTAyYTZmZTYgbGVnYWN5LXRydW5rCisxMjc2MSAxNjNmZDNkOTVjMTdlNDA0ODIyNGExYzg5MjExZWY4NzFhNDEwZDVjIGxlZ2FjeS10cnVuaworMTI3NjIgMGE1Y2RkN2U1ZmMzZjg1MGE2YmRjMTllZDJkNWM0MzQ2ZTZjODhkOCBsZWdhY3ktdHJ1bmsKKzEyNzYzIDI2YTAyMDYwYmFiMTc0MTZjZjgyNGM3NWY1ZGQ1YWFmOWYzMzU1NDEgbGVnYWN5LXRydW5rCisxMjc2NCBiNjRmMzM1OTRhMzExMDY5OGYwZWJkYzdjYzU0YmM1Y2NmMWM3N2QwIGxlZ2FjeS10cnVuaworMTI3NjUgZTgzZjY3NmQxNWMyODljZWI2ZDdjOTAzYjU1Y2YwYWI0MjFkYTBmOCBsZWdhY3ktdHJ1bmsKKzEyNzY2IDI5NzAxZTI5MDRhYzU0OTcwOTlmZDA0M2QwMzE2MDVmZDNmMTNkMTIgbGVnYWN5LXRydW5rCisxMjc2NyBiOWJiNzVkZWQ4MDRhY2E1N2JlOTYzYWYyZGNkZDQ4NTZhYzkyZjUzIGxlZ2FjeS10cnVuaworMTI3NjggNDg3MDBmOTljNmE2ZDMxZDUyMmQxYzc0ZDNhMTBmMzUyMmUzM2ZkZiBsZWdhY3ktdHJ1bmsKKzEyNzY5IDJmNDI1YTU3ZDlhZmU3MWVmNDRlZGVmOWU5MTAzMDgzYThiMGE5ODMgbGVnYWN5LXRydW5rCisxMjc3MCBhYmFjN2Y2Mjc1N2M4MzExOGY1ZjNmZGNiNWU4MDc5YmQwZWM2YTg5IGxlZ2FjeS10cnVuaworMTI3NzEgMzVkZjRkYzJkMzBkNTQzNjJkNWEyOTE3OGFhYzg4MTVmZGU1YmIxMyBsZWdhY3ktdHJ1bmsKKzEyNzcyIDBlMzU1ZGZkNmY3ZDE1Y2MzMmRmMjcyODA2NGYxYWE2NmM0MjNhYTMgbGVnYWN5LXRydW5rCisxMjc3MyA2NGJjYTNiY2FhMzc0ZjE3NjUwYTE0MjIyZDY4ZDEyNzkyOTQyN2FmIGxlZ2FjeS10cnVuaworMTI3NzQgNjVhMjUzOTcxZWNjZTg2NjUzZTUwMzAwODBjYmZkZTU1Nzc4YWY5YSBsZWdhY3ktdHJ1bmsKKzEyNzc1IGEyYTc2ODFiMjVmMWY1OWJlY2VjYTU4NWUwZmJlMWEzOTNlMjg3ZDggbGVnYWN5LXRydW5rCisxMjc3NiAwOGVhZGM2NTBlZjA5NWM3YTVlZDZmYmFlM2ZlODVkYjliMDM5NGM2IGxlZ2FjeS10cnVuaworMTI3NzcgMTlkNjEyMWZlNGYzNDNjNDYzYmQ0Y2MzOGFkMWM0ZjY3MjA1YTlhYiBsZWdhY3ktdHJ1bmsKKzEyNzc4IDYzMmJkM2E1ZGRlZjViZGQwNWMxOTNhZjU1OTM4YmI3MThhYzIzYmIgbGVnYWN5LXRydW5rCisxMjc3OSBiYTVjNjI5MDgxMjI1YTJhOTNlZWM2Yjc5OWJkY2QyNjM3ODJlYWU4IGxlZ2FjeS10cnVuaworMTI3ODAgODYwMzVhZTUzMDZjMTE3YWY3ZGZkZDI5NTM2NmU1M2Q4YjIwMzk3MiBsZWdhY3ktdHJ1bmsKKzEyNzgxIDQ2YWMxMWI3OGU5Mjc4MDU2YWE5NmU3OTZkYWU3ZmQ4MmViOGMzMDcgbGVnYWN5LXRydW5rCisxMjc4MiA4ODZlYTI1NWYzODFmZjBjNmRiNzBlMjc5MTIyMmIyZWI3MjE4OGMyIGxlZ2FjeS10cnVuaworMTI3ODMgY2M5ZmQ1MDYzMGE2OTljYjAzYzJhZjBiMzI0ZjBiNzQ4MzIxOTFmZiBsZWdhY3ktdHJ1bmsKKzEyNzg0IGNlZjJhMTM0NTY5NWQxOGY4MjEzMGQ2MWQ1NjI2MzZjYzgxZDNkNmUgbGVnYWN5LXRydW5rCisxMjc4NSAwMWRhZmM1NzFhMzAzMjg1MTg2OGMxNTA1ZDdmZmJiODFjODExMjg3IGxlZ2FjeS10cnVuaworMTI3ODYgZDNiZWNlNDY0ODZlMjlkN2EyYzVhNjJmOWZiYzFjNTExZjM5ZGQzYiBsZWdhY3ktdHJ1bmsKKzEyNzg3IDA2ZGEzYmEzYWFkZTJlNDdlZjcyYmM4ZTY1MmE4YmEwNGMyYjNlM2MgbGVnYWN5LXRydW5rCisxMjc4OCBjZDRjNDUxMGFkYmQ0N2U5ODUzMTlkZjFjMDcwY2YxYzU0OGM0NjkwIGxlZ2FjeS10cnVuaworMTI3ODkgM2I4MWE3ZDQxOGNiZWU4ODQ3NjMwMjY4NzVjZTk5ZWJiMzg3ODRjZCBsZWdhY3ktdHJ1bmsKKzEyNzkwIDNlM2MwOWUxNDUwMzFkNDAzOWI4OGM5YWVmZGI3N2IwYzg3MmI2MTAgbGVnYWN5LXRydW5rCisxMjc5MSA1YzBjMDYxZGUyYWViYTZmOGVkNGVjZWQ2MTM1N2ZmNDA3ZGZjMWJiIGxlZ2FjeS10cnVuaworMTI3OTIgMWU3NjZkZTcxNGRlYmIwZDM3MTgyZTU4MTY4MTg4M2FmNjAxYTM3MiBsZWdhY3ktdHJ1bmsKKzEyNzkzIDVjYzcxMjI2NzFhZWFmYThlMzEwMzc2NzRkMjNkMjk2MTk5OGUyNjkgbGVnYWN5LXRydW5rCisxMjc5NCA5YmUyNzI2YzliMjU0Y2Q4YWRhNmExZTdlYTFjMTY1ZmFjMGU5ZTU5IGxlZ2FjeS10cnVuaworMTI3OTUgMWM2YjEwZGVhOWYwNWY4NTY0N2UwYWNhZGI5MzAxNmQzMTMwNTg0MSBsZWdhY3ktdHJ1bmsKKzEyNzk2IDI2ZGIxZTk2Y2FmMzk0NjlmZTk4YTc4ZTZjNjU2OWY3YWFiZTU5MWIgbGVnYWN5LXRydW5rCisxMjc5NyBiNzgxMzViMTBhOGUxZTZiZjMwYzk1NDc3MGM4ODViNDk3YWRjNGQ5IGxlZ2FjeS10cnVuaworMTI3OTggMjRkZWY2YzI1YjBhMDUwYWVlMWZiZWQwZTMzN2Y3NzI1ODAzZGIzMyBsZWdhY3ktdHJ1bmsKKzEyNzk5IDUwMDM2ZDA2ZTk0YWE4NDBkZmY1NDZiYjQ5ZDVkMTlhOGZiMmNiOTYgbGVnYWN5LXRydW5rCisxMjgwMCAzMjQxMWFmOGMwMTI5NzYwMzZiMzFhMDlhMDY4NjlhNDA5NTFjYzNhIGxlZ2FjeS10cnVuaworMTI4MDEgY2MwYzkwNmMyNDE1NjY4ZDMxNTJjM2RlNjM2NTQxMjZmMjZlZmUyMiBsZWdhY3ktdHJ1bmsKKzEyODAyIGE5NWM3ZDJhODNmN2QwMTUxYTA0MWQ4NTgxNzExY2I3YmQ3OTRkZWYgbGVnYWN5LXRydW5rCisxMjgwMyBmZDA5YjNmZDFlZGM0ZGE0Zjk4ZDM3NzE3NmUxYjc3NDRkODA1MmQ3IGxlZ2FjeS10cnVuaworMTI4MDQgNWU4OTg5YzJmODVkZmRmYWVmOTk3MjVkY2NlZmZiNmNiNzJiYzY5OSBsZWdhY3ktdHJ1bmsKKzEyODA1IDg4YTdkODU5OTAwZTNhMTM3N2U4MzJlMDQzZmU5OTJhMTYyMWIxYzYgbGVnYWN5LXRydW5rCisxMjgwNiBmMWY2MzY0YWRkYmRlZGMxOTk0ZGVmMDFjYjU5MWQ1YWZkNTFmMjA4IGxlZ2FjeS10cnVuaworMTI4MDcgYjY0OGY5ZThiM2VkYTI5ZmExMjVjNWE3YmJmMmY1Njg5Mzc1NTg2YyBsZWdhY3ktdHJ1bmsKKzEyODA4IDVkYmNkZGJkZWQwMGIyZDhlODAwYTc4NGI2ZDFmMjM4YmRkNDMxNzkgbGVnYWN5LXRydW5rCisxMjgwOSA0MmM5YThkMTA4MzQ0ZjE3NTgyN2E1NzFjNTNmZjAzMmY2ZDM1ZjAyIGxlZ2FjeS10cnVuaworMTI4MTAgZTdjMDlhNjJiZjFmMWE2MjI2YWY0Yzg0ZWZiMGRhMjNjYzU0ZjJhOCBsZWdhY3ktdHJ1bmsKKzEyODExIGUzMDg5Mzk2MTM5ODI3ZjcyMzM3Mjk3NGQ2NzE2YTRhMjI1MGJmZTMgbGVnYWN5LXRydW5rCisxMjgxMiBkYjMyZGViMTNjOWYwNmUwOWZjNzFhZWNlODZlYTdmN2U3ZmIyOTQxIGxlZ2FjeS10cnVuaworMTI4MTMgYTRkOTk2MDczNDRmMDc4Yjg2YjQ2YzFmYjliNzU5ODk4ZDJhZTBiNSBsZWdhY3ktdHJ1bmsKKzEyODE0IGNkYWU2YzExNDVmNGMzYjhlNzIwZjBjZGE4ZmQxNmRiZTU0MDdjMGMgbGVnYWN5LXRydW5rCisxMjgxNSAxZTU3YWVlNTA1NjU0ZWVlYzVhNzk1MTJjMjVlNzVmNTk2ODAzM2ViIGxlZ2FjeS10cnVuaworMTI4MTYgZmExOGIwZmMwYzE4MWU0M2U5OWFmNmI3ZTJlMDcxYTA4YTFhZTJmOCBsZWdhY3ktdHJ1bmsKKzEyODE3IDkwYzc1MmFlNDRhNmI5MWY5NDg4MzA1MWJlNTIyNGNhODFjODk4ZGQgbGVnYWN5LXRydW5rCisxMjgxOCA0NGEzNzVlMzFhZTJmZTdkODBjZGNkODMzMzhlYjliMmQ5ZWRkNmJhIGxlZ2FjeS10cnVuaworMTI4MTkgNDQ2YjA5NjdmN2Q5NjljZjA2MDBmMTMzYzk5MzIzYjhlMWU0N2IwNSBsZWdhY3ktdHJ1bmsKKzEyODIwIDM5YmQ3Yjg0NzhkYjM1Y2RlODJkYjFhNjY3YTVlOWRmNGMxYzQ1YTEgbGVnYWN5LXRydW5rCisxMjgyMSA0ZGQ3NjhhZTg5NWU2NGNjODEwZWU1MTY1ZGZjZDkzZDZiNTI1MTQ3IGxlZ2FjeS10cnVuaworMTI4MjIgOTAwMmY0YjQ3MDAwYTNmYzdjMzE4NGU2NmE0MmMyYzNmMmFlNDRlYSBsZWdhY3ktdHJ1bmsKKzEyODIzIGU5MzVkODk0N2UzMzk2ZThkMDdhMDczMzU5NmFhN2FmNDk1MmE2ZTAgbGVnYWN5LXRydW5rCisxMjgyNCBiZDA3Njc0YzNjOGIwNzRlZjg0OGE5MGVkZTNkOTk4M2NlMzY0YTRhIGxlZ2FjeS10cnVuaworMTI4MjUgYTg3Y2ZlYTMwYjA0ZDgwYTM3NjRiZGNlZGUzZjg3NTI1MmI3NDIzNyBsZWdhY3ktdHJ1bmsKKzEyODI2IGZlZDY2YmRkY2U2MzgxZWIzNDhkYjM3OWMyNDljYTY1NTVlMjI1NDUgbGVnYWN5LXRydW5rCisxMjgyNyAwZDBlMjIzOWRmZDhjMDY4NThiNDhlM2ZjMWQ0NGNhZTc3OTQxMjkzIGxlZ2FjeS10cnVuaworMTI4MjggNGEzZTYzOTM4NDY5NDExMWU5MWQ1ZTI1YmMyOTE5ZjdiZGE4OGJmMCBsZWdhY3ktdHJ1bmsKKzEyODI5IDRjNGYzNjJmYTBhNmFkODUyMDQ3ZTUwODMyNDMwMmU3ODY5NGNjOTQgbGVnYWN5LXRydW5rCisxMjgzMCA2NmE3ZDYxY2ZkODRhM2RkYTlkMjUxY2IwMWYyYzBhZDJhYjYyYWRhIGxlZ2FjeS10cnVuaworMTI4MzEgZjQzOGM2ZTJiNmMxOGU1N2NkOTI0ZDY2NDRmYjkyOWE5OTMzYjg2MCBsZWdhY3ktdHJ1bmsKKzEyODMyIDIwN2I0MGVjOWE3ZTM5MTRiZmFjYzJkMWE2ZGZiM2ZiMDE4YTczN2MgbGVnYWN5LXRydW5rCisxMjgzMyBiZTA1NjA5NDc4YmVmMDQzOTU1YjQzMzRkMmU5ZWMyYjljODdjNTU4IGxlZ2FjeS10cnVuaworMTI4MzQgYWJkNDIwMjlmYTAxMDFkNTQzZmU2MTE1YmQ3MDZmM2YwYjJhZDliMiBsZWdhY3ktdHJ1bmsKKzEyODM1IGZmZjgyZDJmYjM2OWVmZDJlYzA5YTZiZTBmNjlkZDlkYzZkOGZkY2EgbGVnYWN5LXRydW5rCisxMjgzNiBiNmVkZWMxZWZlNjQyNzg1MWJhMTkwODk0YzBmZjg4MjYyMzc0NWNjIGxlZ2FjeS10cnVuaworMTI4MzcgNjEyMjQ0NTliYjA5MzYxYjExZjM0MGI0OWYzYjI4OWUxMDE1M2YzYyBsZWdhY3ktdHJ1bmsKKzEyODM4IDA5M2ZjMjk4YWZkNmIwZTAyZTQxMWE2NDVkMWMxZWNhODdiYjk3NmMgbGVnYWN5LXRydW5rCisxMjgzOSBkZGJmMWFjYjcxNzAyZGQ1MTkzNGVkZmJmNTUyYjZkMzU4ZDJjYmI1IGxlZ2FjeS10cnVuaworMTI4NDAgYThkYzU5YjY2ZjQ5NjZjYWM4M2ZjYTA1YjlhMTE5OWEzNzNjNTllNyBsZWdhY3ktdHJ1bmsKKzEyODQxIDVjNzBlY2RlZGVmYzMzNjQ5YTdjNTViM2UyZWZmMDk1MWU3M2FmZDggbGVnYWN5LXRydW5rCisxMjg0MiA2ZWUwZWNlYjc3NWYyZDIyZTkwMWMwY2FhOGY1NDdjZjBlODgyN2FkIGxlZ2FjeS10cnVuaworMTI4NDMgNjVhZWQ1MjlhZDhhZGFmMzQ2ZDE2ZDNkOWE3N2NkZWUxMjBlNjQxOSBsZWdhY3ktdHJ1bmsKKzEyODQ0IDA4ZDMxOTRhM2MzZmM4ZDY1MjgzMjEwN2VkZDZlNjQzYmZlNDVlZGQgbGVnYWN5LXRydW5rCisxMjg0NSA4ZDA5MmE2NzJkMDliYjE4ZDg1ZjUwMTI5OTAxNzg1MWZhNmM3ZmNiIGxlZ2FjeS10cnVuaworMTI4NDYgYjlhODBiYmJlNGE1YTY4NWIzODVjMmUxZWUwMTNlZTllZjc3ZmQxNCBsZWdhY3ktdHJ1bmsKKzEyODQ3IDZkYjM1ZWU5MGJmYWMwM2U1YzBmY2UzNjBhMWQwY2Y4YTZhNmY5NTMgbGVnYWN5LXRydW5rCisxMjg0OCBkNzM5ZTFlYjYxNzUxYzE5OTVhMjY3Y2QyZDc2NmNiMGE5ZDJkN2EwIGxlZ2FjeS10cnVuaworMTI4NDkgNGUyZDE4OTczYjk0YTAzNzdmMjViMmE4ZGU2ZGQ0ZjAxN2UxNzczMCBsZWdhY3ktdHJ1bmsKKzEyODUwIDFkODU3YjU5NzU4MjM3ODc2MjYyMjM1YjE2ODdkYmZiY2E5ZGFhNDUgbGVnYWN5LXRydW5rCisxMjg1MSA4OTJkYmE3ZjQwZGVlZmVlZWJlOGJhNzVlYzQ3ODFkMjk2YTU3NjQ1IGxlZ2FjeS10cnVuaworMTI4NTIgN2EzOWM4NzNkYzgxODBjOTc0ZjFlMDRhM2M3NmZmY2M5NWJiZmMzYyBsZWdhY3ktdHJ1bmsKKzEyODUzIDY3ZmY5ZTdkYzhhZmY0YTAwZTVkYWUzYjVkMmE0ZGM5OTFkOTVkYTggbGVnYWN5LXRydW5rCisxMjg1NCBhNzk3ZjBjNmMyZTFkZDEzOWMxNDk1NzM2Y2MyM2EzYmQ5YWQ5ZmIxIGxlZ2FjeS10cnVuaworMTI4NTUgZTZkMzRjYzBjNzljOTYyYzM5ZmU2M2FkZWZkODM3NjZjMmY2YmY0NyBsZWdhY3ktdHJ1bmsKKzEyODU2IDZiNTc5MGNlMjUzNmRjNmU0NjEyN2UxZTIxMDdlYTk1ODA1NjY4MTIgbGVnYWN5LXRydW5rCisxMjg1NyA1MGQzMDk5ZDUwYzIxZDNjNzg2ZTBmOTY4MWY1MmZiYzNmMzFjM2Q0IGxlZ2FjeS10cnVuaworMTI4NTggNDA3MDIyY2YxOTMxYzE1ODc0MGU5ZWEzZGU1N2NhNzlkNzVlMjJmZSBsZWdhY3ktdHJ1bmsKKzEyODU5IDg5MjNhZDdlMTNmMmIwMTU5ZWRlMWFiMDM2Y2NhOTM3ZmFkZjY5YjMgbGVnYWN5LXRydW5rCisxMjg2MCBlOThlMWVhNTFmMTYyNmQ1ZTZmNGQ1ODk2ZTE2YzNkYjEzMjI1NjZhIGxlZ2FjeS10cnVuaworMTI4NjEgZGEwYzEzMzBlNjZlZjJjZDBmYzA1OTMwZWM5NWM1YjIxMWNmMDE1ZiBsZWdhY3ktdHJ1bmsKKzEyODYyIDcwYTNmYjFjZTIzYjQxY2I4MjYwZTA5MjkyMWE5MzJkODE2ZDg3MzUgbGVnYWN5LXRydW5rCisxMjg2MyBlYTBiYmMzYmYxZGZhNjE4YjRjYWExOWUzMDA3YTY2OWY0ZjA0ZjdiIGxlZ2FjeS10cnVuaworMTI4NjQgNTBlNGRkZGI4MjhiMjA3MTJlNTk0OTI5ODg0OTU5OWRiOTVhYzJjYiBsZWdhY3ktdHJ1bmsKKzEyODY1IDE0MDllNzY4N2E5YTAzYjI3OGRmYTRiOTc1YjU4MTBkOWYyYTdmMGYgbGVnYWN5LXRydW5rCisxMjg2NiA0ZGFhYjdhOWY1NjZhZDQyMTU1MjQ2OTI2Zjk1ODdkZDRjYjQ0YWViIGxlZ2FjeS10cnVuaworMTI4NjcgZDUxNjRjNjZhY2M5NjNiYmJmZjIwMjA2MmVhZmVkY2U5MGRjNWE4YSBsZWdhY3ktdHJ1bmsKKzEyODY4IDI1ZDdkNGQ3Mzk5ZjEwY2FhYWZmOTA4MzFlYWNlZjI3OWIxMTA1OTcgbGVnYWN5LXRydW5rCisxMjg2OSA2NWU3MjEyZGYxYmNmMWNjMTdhNGM5NmQ5YTI4NGE4NzMyODYyZGRjIGxlZ2FjeS10cnVuaworMTI4NzAgYzVmNDlkNGUyOWM1MDM5ODNlMTI1OGMxNmJlYTRlYzJkYWM1YjhkZSBsZWdhY3ktdHJ1bmsKKzEyODcxIDc5NWQ1MWFkMjI4YTI0MGRkNDY2NDczZWI2YTI4ZGQxM2EzZWFkYzIgbGVnYWN5LXRydW5rCisxMjg3MiAxMzJmOTQ2NDJjNzRkMjg3MjQzNTNkZjNiMGVlNjkyY2EwY2JjODM4IGxlZ2FjeS10cnVuaworMTI4NzMgOTViOTIyNWE1MmU0NWJiMjU2ZGJhZTE1ZjUxMTQxZjY4MjI4YTg4OCBsZWdhY3ktdHJ1bmsKKzEyODc0IDk2OTEzOTA3YWU2OGQ5NDY5YzUxMmQzZjg0OTA2Y2Q4MDA0NzM0ZGEgbGVnYWN5LXRydW5rCisxMjg3NSBmYjdmYTQ3NjIxMWYzNWQxNTljMjExNGMxNGE0Yjc5YjYyOWFhOWU5IGxlZ2FjeS10cnVuaworMTI4NzYgMDdlZTc5NTc3NGQ4OWI0MWJlYjNiZDU3ZmZmN2Q4OTRlYzJkZWE1MyBsZWdhY3ktdHJ1bmsKKzEyODc3IDQ4MTQxZGE1MThkZmE3Y2FjMjlkN2E2ZWE3MTQwMTU0MjViOGI4ZWIgbGVnYWN5LXRydW5rCisxMjg3OCA0MTdhYTQyNTAxM2FkNzNlYTM4MDJmNWYwMzZlYjNjZjk5YWFiMzMyIGxlZ2FjeS10cnVuaworMTI4NzkgMzM3NzMzY2U5NTkzZmIxZWEwNWQ2OTc2YTc5YTQ5ZTAyNjkwMDY0OSBsZWdhY3ktdHJ1bmsKKzEyODgwIDRjYmIyMTIyYzczNThmNDg1MjJhNDExMjNmOWIxZTYzNWUzYWYyZTYgbGVnYWN5LXRydW5rCisxMjg4MSBkOTgwODVkZTk3ZDFmZTg4YTVjYThkMjE4NDk4NjhkNjYwMDhmOTViIGxlZ2FjeS10cnVuaworMTI4ODIgOWU5Njk1ZTMxNGM5NjA3MDM2MjI2Zjk1NjJiNmUzNjJlMzhlNTM4MiBsZWdhY3ktdHJ1bmsKKzEyODgzIDY5ODk4YWNiMjNmMjgxYmQ2OWNhMmVmNzRkZjk1YzQ4ZGViNDM4NjkgbGVnYWN5LXRydW5rCisxMjg4NCBmYjUxYWE4MjRkZjJkNDcyMTdkNDY3ZjFjNGI0YTMyOTFlNGFiNWIxIGxlZ2FjeS10cnVuaworMTI4ODUgZTJhMDhhODFlNTZmNGVlMjg1Njk1ZTIxYTk4ODMzNDg3MDZhYWJlNSBsZWdhY3ktdHJ1bmsKKzEyODg2IDcwZGQ5MWMyMTUxMzRmYWU0ZWRmY2UxODU2ZTc0N2U3ZDFiZDkyMjkgbGVnYWN5LXRydW5rCisxMjg4NyBkM2RjNjIwMDQ3NzZkZjAyZjQzMDcwZDllNWZlMTFjODgyZTY4YWRhIGxlZ2FjeS10cnVuaworMTI4ODggZTkzMzUyMjg2YWFjNmQxOWU4M2Q1NjA3ZGY1MGYxZDg2MTE5MjJhNSBsZWdhY3ktdHJ1bmsKKzEyODg5IGM1ODkwMjFjNDdjOTMzN2VlZjQ3MjUwMjE2NjY3NzdlMmY1ZmE5MGYgbGVnYWN5LXRydW5rCisxMjg5MCA5YzVkOWJkZjdlNDIzNDE5YmRmYmJkYzk4NDk3MzA1YjA0ZDU4MjNlIGxlZ2FjeS10cnVuaworMTI4OTEgZjRlNjA1YmQ4ZjFiNzZiNjYyZjc2ZTAwMzllMTNkZjdmYTk4YTQ3ZiBsZWdhY3ktdHJ1bmsKKzEyODkyIDAxNzNhNWY0NzIwNmRiZTQxZmEyOTNmYjg2YWFjNDVkYzMyYTJmZjUgbGVnYWN5LXRydW5rCisxMjg5MyBmYjgxNjU5NDg5YTE2NjU2NGExZWJhYzhhOGQ0YmJmMWMxOGQ4MGE2IGxlZ2FjeS10cnVuaworMTI4OTQgN2I4MTBhYTM1YjVjZTg2ZGIxODAwMmFkODUwOWExZTE3YjgyMGU0NCBsZWdhY3ktdHJ1bmsKKzEyODk1IGY1NGJhYzVhZjk4Y2EwMTQ3ZDg1ZGFmYzQxN2M3ODYxMDg0MjgwYjIgbGVnYWN5LXRydW5rCisxMjg5NiA3NDllMWIzZDgxNzNhMzA5M2MzNzBiOTIxMmVlMTAwZDVjYzE1M2NhIGxlZ2FjeS10cnVuaworMTI4OTcgNTIyMDY1MzJkMzg5MWEwOTMzYTJhYzlmOWQzMzQ2MGQ4Njg3MjU2YyBsZWdhY3ktdHJ1bmsKKzEyODk4IGYzNDMzMjk1MDBiZTc5YjEyN2Q2MzY4MmQ5Njc2NjdlMjZiYWEyOTcgbGVnYWN5LXRydW5rCisxMjg5OSBjMDY2ZmQ4NDMzYmE4NGVjMDUzZDNlYmE0YjdjMDdiODVmZGJkMmY3IGxlZ2FjeS10cnVuaworMTI5MDAgZGM5YjBkNDE4YzAwOWJiOGQ2OGE0Y2E2M2FiZDExYjU1MDU2Mjk0YiBsZWdhY3ktdHJ1bmsKKzEyOTAxIDdmMTQ3YzRlNDIxOWIxNmQ2ZTM0ZGEzMzQyODY2YTgyMzQ4YjgzMWUgbGVnYWN5LXRydW5rCisxMjkwMiAyYTRjMTc2ZGU2Y2RkM2M4ODkxNzY2ZDMxMDk4YzE4MTY5YTYzZGY1IGxlZ2FjeS10cnVuaworMTI5MDMgOTRhZDkwZmQyNzEyNmZlNWJmNjg4ODk5NWUyNjkxMzYyNmJlZTlhNiBsZWdhY3ktdHJ1bmsKKzEyOTA0IGY4MWRiNzM4YWJkOTJjMjZiMGQ0MTMwZmE3MWE0M2I0ZDExOTk4ZWEgbGVnYWN5LXRydW5rCisxMjkwNSA5ZDRlZmNlMTFmMDliMTU5ODZhMTEwODRhYjJhMjllMzA5YjViYmQ1IGxlZ2FjeS10cnVuaworMTI5MDYgOWM2ZGEzMGFlNjc1ZGNhNWM2OWRlZDcwNTY4NmRhZjg4ZjFhYmMyOSBsZWdhY3ktdHJ1bmsKKzEyOTA3IDgwZDJiOWFmZDE5Y2M1NTQwZjE2MmFjMTlkMGE4Mzc4OTJjNzQ3YjcgbGVnYWN5LXRydW5rCisxMjkwOCAyYzAzOWMwMTA0Mzc3ZTk0NWZlZTIzYzgwNmNjMmFlYmMwZDljMzZlIGxlZ2FjeS10cnVuaworMTI5MDkgMTU5ZjFjM2FmZTI4NGU5ZWM5YWU1MDRkZTczNGFiZTYwY2UxNjFmOCBsZWdhY3ktdHJ1bmsKKzEyOTEwIGNjZWY1YzBlOGRkYzY4Y2U1MTk3MWFjZDk2ZTNhZTI2YjZlODEzOTMgbGVnYWN5LXRydW5rCisxMjkxMSBhMTU0NGZjNDlhNzYzNDU1YTNlMDdjZWY1YzkzNzhiNmUwYTg4YmRjIGxlZ2FjeS10cnVuaworMTI5MTIgMDUwODMyZDgzOGNhNWVmODZmN2E3MWE2NmFlMWY0YjcyYWVjNTI4NCBsZWdhY3ktdHJ1bmsKKzEyOTEzIDk3ODIzMTg0MjY2YTAxOTAyMDBlYjM5Y2NhOTBkMTg2YjBkNjlmYjUgbGVnYWN5LXRydW5rCisxMjkxNCA5OTUyZjE2YmJlOGNlM2U5NzJmMDA1ZTIxMmE0Y2FjZTE0NmE1NjdmIGxlZ2FjeS10cnVuaworMTI5MTUgZTllNjliMDJkMGYwZDEwZmYzYWVmODYzZmQ3MGZjNWY5YmJjNTZiMCBsZWdhY3ktdHJ1bmsKKzEyOTE2IDQzNjNmYjJkNDM0NTAzZjc1MWE4NTY4YzU0ODE4NDU4MTY1OWJmNzcgbGVnYWN5LXRydW5rCisxMjkxNyBhNjMwZTU0ZTk3ZjI5M2JiYjY4MWY4OTQzYjhlMWQ4M2QzMmU4OWFiIGxlZ2FjeS10cnVuaworMTI5MTggNDhmYmM1NWMwNTUzNDE4ODBmOTUxM2YyOWFkMmI4M2NmNWFlOWNhMyBsZWdhY3ktdHJ1bmsKKzEyOTE5IDUyNDM4Yzg3ZmVkY2MyMjZhNjdhYTUyODc2OWNmZDQ1M2FiMGEwZTYgbGVnYWN5LXRydW5rCisxMjkyMCBkYzUwMmNlNzU3NWEyMDcyMTAxNjk0MDZmYWMxNTAyOThlNTIzYTIwIGxlZ2FjeS10cnVuaworMTI5MjEgYjhlNGRlMWMzNWNkYWQ5MDk2ZGEwNTZlNjBjNDNlMTEzNjUyNmI4MyBsZWdhY3ktdHJ1bmsKKzEyOTIyIGNhYmFiMWY1NTk2ZTI4NTI4YjJiMmU5ZDhiYTY0YWJiNzJlN2Q3MmQgbGVnYWN5LXRydW5rCisxMjkyMyA2ZDU4MjcwZGJjZDQzZDQ0OGIxYThkODMxNzQyYWViZDA5MDgwNGQ5IGxlZ2FjeS10cnVuaworMTI5MjQgMGQ2YmQzOTFhY2Q4MzcwOTc1ZTc0OTFmYjRkNTgyNzE5ZDc5ZmI1ZiBsZWdhY3ktdHJ1bmsKKzEyOTI1IGIzNjQ2OTM5ODI2MjY5ZTNlZWE4OWY3MTdlZWQ4YjcxNTlkYzM3YjQgbGVnYWN5LXRydW5rCisxMjkyNiA5YTRiYWYwYzU3ZWExOTQxOWVkZDc5OWZhYjAwMzM4Y2I0YWZkODUyIGxlZ2FjeS10cnVuaworMTI5MjcgNWNjZDNiODZiMWE2MzdmZDMwMmNiN2NlMGIzOTQ1MjFlYjA1Y2RlMCBsZWdhY3ktdHJ1bmsKKzEyOTI4IDRlOGRlZmVjMDlmODUwNDA3NWM5ZjA2MDAzMTRlYWQ3M2E3ZjM0MzYgbGVnYWN5LXRydW5rCisxMjkyOSBjMTc2OTY4YmM5MWMxMDkzMjhjNGQ5MzE4MTBlYzZlYzFmZjRjNmJmIGxlZ2FjeS10cnVuaworMTI5MzAgZTY3OTlhODU1YWY3OGM1NDdkNGU4YzJkOGU5MzkxZDFiMjQ3MWQ5NyBsZWdhY3ktdHJ1bmsKKzEyOTMxIDM1NzFiNGMxYmMwZTNkMzdjZGRmNzkxNWVmNWNiYzNjOGM3ZWQwOTcgbGVnYWN5LXRydW5rCisxMjkzMiBmOWFkMTQ4Yzk4MGNjZTBiZjcyZmQ5ZTU0OTBkNTVmNTRmODkyMTYwIGxlZ2FjeS10cnVuaworMTI5MzMgZDU5MmZlNWUwOWQ1NzRkMGRmMzU3ZDU2NWE3ZWE0ZDk3YTJhOTdlNSBsZWdhY3ktdHJ1bmsKKzEyOTM0IDA3ODllMGI1NTU4N2JiMjE4MWYzZWNkNmZlMGNiZTY1YmYwODNiNjAgbGVnYWN5LXRydW5rCisxMjkzNSAxY2M1ZDIwZDJlZDg0Mjk2ODFkNWI5NjQ0N2IxMDk1YWE1ZGRjZDljIGxlZ2FjeS10cnVuaworMTI5MzYgMmFiMGVjODQ3MTg0NzY3YzM4MzBjN2YyMzE0ZWM5NWU5NWQzNmEwYiBsZWdhY3ktdHJ1bmsKKzEyOTM3IGE0NzY4MzE1OTQ4ZGMzMTA3Y2QwZmE4YzFkZmExMDRiNGE0NzAzNjEgbGVnYWN5LXRydW5rCisxMjkzOCAzMjQ0NTBlYTU0NTAyYjg5MzYyMjIwNzkxMTZhMGI5N2JlYWVjZGIwIGxlZ2FjeS10cnVuaworMTI5MzkgN2QzYTYwZjRlMGI0NzM0NmVlYTAxYWFlMDY2NTY3MjYwMTMxYjRjOSBsZWdhY3ktdHJ1bmsKKzEyOTQwIDNiYzhmNTMwNDFjMDE1YmRhZjQ4MTU4NjJjZGM2YzU2M2Q0YTg4NjMgbGVnYWN5LXRydW5rCisxMjk0MSBlZTZmYTliODY4ODU0YWMxMzA3NGIxYjE2MGE2YmVlZjcxZmUyZmU3IGxlZ2FjeS10cnVuaworMTI5NDIgOWNlMTQ3NGFiZGRkN2MzNjlkODRkMjZiMTBkZDQzMmUwNmNhMWM2YiBsZWdhY3ktdHJ1bmsKKzEyOTQzIGI5NDE0NGRlMmYzMmI1M2UyZmQ1MTgyNWJkYTkyMDAxMzg5ZGE2ZDIgbGVnYWN5LXRydW5rCisxMjk0NCA5YmE1ZGZmY2NiMWJkYjQzNjM2MjcxOGUyYmJjMjhlZjIxYjBhMzQ4IGxlZ2FjeS10cnVuaworMTI5NDUgOTE4NGM5ZTEwOGY5N2JiNjZjZTEyMzNmOTczOGY5MmRjMmIxZmEyYiBsZWdhY3ktdHJ1bmsKKzEyOTQ2IGYzYTRjNGY0MDQ0Njc4NWU4NTY2ODQ3N2VkMzg0ZjRhYTFiOTEwOWEgbGVnYWN5LXRydW5rCisxMjk0NyAyYTE0OWU5NGVmNGFjMTQ1ZDVkMjFlNjUyMWFjZDc3MTdmMDRhMDYzIGxlZ2FjeS10cnVuaworMTI5NDggMDBjMzdjYjc1YzI4NTQ5ZDA0OTdlYjZmNGJlOGRiMzVlNWQwYzcyNiBsZWdhY3ktdHJ1bmsKKzEyOTQ5IGJmMjZiN2MxZTZkZWMxOWNhN2NhOTkxMDJkYmVkNjA5NzNmYjA2YzIgbGVnYWN5LXRydW5rCisxMjk1MCBkMzc2MjkzM2JmZjg4OWE5MDgzNmRkNTUzMDZkNmNiZmUyMDQwNTM1IGxlZ2FjeS10cnVuaworMTI5NTEgOTdhMDZlYzdjNmY0OWI3MjNiYTU0MjFmNDM0YjRkZjVkYTAwYTdkYSBsZWdhY3ktdHJ1bmsKKzEyOTUyIDdmZWY2MGY4YmM0NTU1ZTYzYjU3Mjk2ZjBkMWUwOGNiMDZiZDdmNTAgbGVnYWN5LXRydW5rCisxMjk1MyA1Y2ZiZDQ4OWE1ZDM0ZDA5ZDllMWY5N2NjNTc0ZjU2YTA3MTk1OTc5IGxlZ2FjeS10cnVuaworMTI5NTQgMmIxZGZjMTM5NTFkZmI2MzBhYTY2ZjZmZDNjMmEyNTY3YjExMzU0YSBsZWdhY3ktdHJ1bmsKKzEyOTU1IGM5ZTEwZWQyNmQ5YWIxMDAwNWViMDZkYzljZmMwNWQ1NThjNTE5OGMgbGVnYWN5LXRydW5rCisxMjk1NiA1YjU0ZmE3NzVlNTUwZWNkOGViMjJmMmJiZjhkZDM5NTYxYmM4MTFiIGxlZ2FjeS10cnVuaworMTI5NTcgZGFkMTRmZmUxYzIyYTA2YjA1ZjU5NmYwMTMxYjAwZmY1NGU3ZDk5YSBsZWdhY3ktdHJ1bmsKKzEyOTU4IDExMTc4YzhkNmJlMmE2YzI5M2E5YmM0NTYwZWRlNDFiMjc1Yjc2YTkgbGVnYWN5LXRydW5rCisxMjk1OSAzZjIxM2E4ZmMwNGUwNmZkZmVhYTFiODcyNWJmYjhlMjBlODljYmY0IGxlZ2FjeS10cnVuaworMTI5NjAgODJhZGM1NGRkMzc3YzQ2NDRmMzRiMGRmOTU5OGYwZjhmODcyMzU3YiBsZWdhY3ktdHJ1bmsKKzEyOTYxIDcwOTEwZTMxMjVhMjc2MzE0MmZiMDhhODk2ODFkZWQ3YjJlODRlZmQgbGVnYWN5LXRydW5rCisxMjk2MiA0YzFiYmVkYWQxNGJlNjNjZDBmNDg1M2Q0NTRlMTkzNWQ5NTA2YTg0IGxlZ2FjeS10cnVuaworMTI5NjMgNjI3ODE5MTRmYWRiODkzY2Q2YWUzZmNhMWJmN2I2M2VlMzU1ZTcyZCBsZWdhY3ktdHJ1bmsKKzEyOTY0IDRhYmM1YWJhZWM5YWI4ODBmNTEyNGExOWVmMjdlODNkODAyYWRlNTkgbGVnYWN5LXRydW5rCisxMjk2NSBhNjQ2NGViOTg3ZThjZWFmMzlmYzFjOGUzNTAwMGM3MTA2Njc4Y2U2IGxlZ2FjeS10cnVuaworMTI5NjYgNTNjMWZhZWMxZDQ2NjZhNTA2NDM1MjBiOTE2MTdjNDU3OTY5YzczZSBsZWdhY3ktdHJ1bmsKKzEyOTY3IGY3NGVmMTk3MWJkMTI2ODA4NGU1NjI3ZDIzZDBlZjg3Y2JlMDhiY2YgbGVnYWN5LXRydW5rCisxMjk2OCA1ODY4ODQ2MjAxZWRlMjAxMzlmMDI2NzYxN2IwZDFiYmYyNWEwOWJhIGxlZ2FjeS10cnVuaworMTI5NjkgMzZiYTRkYmZmNjg2ZTg1M2FiMGM0ZDA2MmU2OTAwZDFmNmEzNTFjOCBsZWdhY3ktdHJ1bmsKKzEyOTcwIDI1NWFiYWIzYzU3NDMwNTA4YmUzMWYzZjUyYjM5NTYyMzU4ZjMxMDkgbGVnYWN5LXRydW5rCisxMjk3MSA5Y2Q0ZmQ5MjZkZjY0NDk5YjNhMDRhNzcyYmM4MDgwM2RlZDM1ZWJjIGxlZ2FjeS10cnVuaworMTI5NzIgNjAxYjRmMmQ1ZmM4NTI0M2EwYmIwNmI3MjhmZjk0ODJjMWI4ZWY1ZCBsZWdhY3ktdHJ1bmsKKzEyOTczIDAyMmIxNzhmZDBlZDU3NzgwNWU0ZjFkZjQxMDRlZjI2ZWZhNGE1MzkgbGVnYWN5LXRydW5rCisxMjk3NCBhYzNhNDY1ZTUwYTY3YmU5MWE3ZTMzY2E2MTAzMGRkMTk3Zjg1YjU1IGxlZ2FjeS10cnVuaworMTI5NzUgNGVlOTAwMDA1ZWQ4OGU2N2FkOGJhYTUyNzBiNzA1MTY0MzliYzJhMyBsZWdhY3ktdHJ1bmsKKzEyOTc2IDYzYzQ2M2E4NTI5MzZlZjQwMGFhYjIxMzJhZDM1ZjRkYWRmYWVhYjggbGVnYWN5LXRydW5rCisxMjk3NyBmODUwZWYzZGE0M2FmNDRkZGU0NDc3MzllYTA3ZWUwMTc2ZmQ5NTQwIGxlZ2FjeS10cnVuaworMTI5NzggYzgyYTg1YmExZGRlZjhlODI4NWJlMGE0Y2RlMTgxMWNkZWVmODlkYSBsZWdhY3ktdHJ1bmsKKzEyOTc5IDU3NzA0ZjBhZDliMDVjMDc0MDE0NzI2MjQ0NmZkZTZkZDRmMDY4MDggbGVnYWN5LXRydW5rCisxMjk4MCA0YjE5NDYxNzgwYjk5YTBjNTk2NDc4ZWU5MTRmNmUxNThmN2IwYjlhIGxlZ2FjeS10cnVuaworMTI5ODEgMDEyNTBiODMyMzc0YWIyYzU2ZmZhYjg4YjY2ZGZkZjI5N2VhOTFkMyBsZWdhY3ktdHJ1bmsKKzEyOTgyIGVlNjEwOTQ5ZjkwMjI2NGVhYzEwMzBmMjEzYmMzMmE0NGVjYjRkZGYgbGVnYWN5LXRydW5rCisxMjk4MyBjMjU1NGJmNjE3YzMyNTY1OTZiZjUxOTJmMmU2ZDFlNjNhMzljY2QxIGxlZ2FjeS10cnVuaworMTI5ODUgYmFlNjUwZjU3YzQxNTBiYjBjNDgxNmVhODcyOTM0MjIxYzUzOWFhMiBsZWdhY3ktdHJ1bmsKKzEyOTg2IDc1NjgzZmQzOWU5MWVhNGNkZmUzYmNmNDg2ODVmNzQ1YTQ0MDlmYjggbGVnYWN5LXRydW5rCisxMjk4NyA3NDc0YWQ3ZTBhNDQ5YWI5MTUwMjI5NWJjYWU4ZDVhZDRhNjk3OTE2IGxlZ2FjeS10cnVuaworMTI5ODggNTAwZjhlYzlkZWQxOGQ2ZGQ0OTg1Y2RjY2Q4NGM0NjhkOTlkYzg3MyBsZWdhY3ktdHJ1bmsKKzEyOTg5IDhkMTE1ZTExMWExNzQwZTkzZTI1NjhjOTRlNjdlMjQzY2ZmZTFmMGIgbGVnYWN5LXRydW5rCisxMjk5MCAzMGM5NGNkNDlhNjg4YTY2MDhiY2UyOGNiMjExNjA2YWNkYTFjZjYxIGxlZ2FjeS10cnVuaworMTI5OTEgMDVlOTdmNmEzNjM4YjM1MGVjMzk1ZTAxZWIxYTQ5OTUxMDQ0ZmMyOSBsZWdhY3ktdHJ1bmsKKzEyOTkyIGVjZGZjZWExMjQzODU2YzYyN2Q2NTAwZWZjMDI3ZmYwZTgwMTA5ZDggbGVnYWN5LXRydW5rCisxMjk5MyA4NzQ5ZTg4YWI0MDY2MGNjMTE4Zjc5MmMyNDlhNDVhNTc5Yzg1MDg5IGxlZ2FjeS10cnVuaworMTI5OTQgMzkwZTRjMTAzYmUyNjg4ZTBhMGNhN2FlZDVlZTYzMWQ0Y2M3NmI2NSBsZWdhY3ktdHJ1bmsKKzEyOTk1IGIyMzU3OTI0YTlhOTI2Y2RjZjM5YjUzZDkzMjA0N2ZjMDIzOGJmYzEgbGVnYWN5LXRydW5rCisxMjk5NiA0MzA1MmQ1Yjk4MDgzNDkyNjFhNzg5NjMxNTUzMDQ1NWVkMzFhYWI5IGxlZ2FjeS10cnVuaworMTI5OTcgZjVkN2M0OTQ1ZDVmNWI0ZGM5MmIxMGE5ZTgxMTgyMmIwNTI4ZTkzZSBsZWdhY3ktdHJ1bmsKKzEyOTk4IGU2NGM4Yjg0ZTI0Yjc5NWZiMDBlOTdmZDMwYTQxZDdmYWEyNDUxOGEgbGVnYWN5LXRydW5rCisxMjk5OSAyNDZiMTM0MTBhMzE3ZTRkMGFjYjQyNTQ0YzBiMjhiNjg1YmMyMGU3IGxlZ2FjeS10cnVuaworMTMwMDAgYmExYTI3ZDczY2RiMGEzM2ZhYmMzNzY4ZGZmOWNiMzkxOWNlMTJjYiBsZWdhY3ktdHJ1bmsKKzEzMDAxIDhkNDBlNmJhNGM5ZTIxNDE2YTI4YmUzOGQ3OTllMmQyODE0MDk4ZDggbGVnYWN5LXRydW5rCisxMzAwMiBmZTg2NDVlNDkzMTQ4MGM1YjdlNzdmODJjNTU4MmNjNWMzODc5ZDI2IGxlZ2FjeS10cnVuaworMTMwMDMgOTkzOTA4Mjg2YWM3MTY1Y2FkYTFkZGExMGExMmQ3NzE3OTQxZGI1NiBsZWdhY3ktdHJ1bmsKKzEzMDA0IGMwZjE0N2Y0ZjEwMGRiOTliOTk5ZDQ1MzdkN2VkOGY4ZTdkZGJiZDYgbGVnYWN5LXRydW5rCisxMzAwNSBlMDhkYTM0YzQ1ODJmZWRhMWVkM2U3YTc3ZTdhMzQzNGJiZDc2NmJmIGxlZ2FjeS10cnVuaworMTMwMDYgZmU4ODFmNDQ2YzVkMjhmZWE5N2VmYTE4NjI1YzI2MzEyNjhkNWRlMSBsZWdhY3ktdHJ1bmsKKzEzMDA3IDUzOTNjZTUyMDdjNzA2NTE2MGNkZGNkMGRkMTQ5OThlYWE4ZDIyZjggbGVnYWN5LXRydW5rCisxMzAwOCA0OGNkZGQwY2M3MzMwNzgyMjBhMjA2NGJkZWNmMWZiMGYzYTBkOWIwIGxlZ2FjeS10cnVuaworMTMwMDkgMjBmZWJhOTY3NDM3MTdiNWQ0NTU1ZWI2M2NmNDdhZjVlYjdjZDliYiBsZWdhY3ktdHJ1bmsKKzEzMDEwIDQ1ZTk5NzVjYjA5Mzk0ODU3NjAyOTBkMmUyY2Q1YjljNTJhMzhiYzAgbGVnYWN5LXRydW5rCisxMzAxMSA3NTNmM2Y5NWM1MGYxNWM4ZDJhYzU5NGIzMjNmMDQzNzY1NDQ4YzA3IGxlZ2FjeS10cnVuaworMTMwMTIgZDc5OTg5YTQzNWQ5MmUzMWI3MjJiYTcwNmVlZDA4ZTNmZjQ1ZWE0ZCBsZWdhY3ktdHJ1bmsKKzEzMDEzIDY1YjNjZmU2ZTY2NjkyNzk3MTA1Y2I3YTY2NmM4MGU1ZDcxZjc5NWMgbGVnYWN5LXRydW5rCisxMzAxNCBjM2VkYzE0YzM4ODBhMzk0ZGUzMTFhYzk3MTQ3NmJkNTQ5Zjg5NDkzIGxlZ2FjeS10cnVuaworMTMwMTUgMjE5OWY3MGIwZWRhNzJjODljMGMwODY0MjdkNGI3NzE4Mzk2MjZiMCBsZWdhY3ktdHJ1bmsKKzEzMDE2IGNhNDRmZjc0ODJjNzc1ZDE2Yjc3NmQyYzkyMGM2ZjE1NjVjN2NhNTUgbGVnYWN5LXRydW5rCisxMzAxNyA4MWY0YTc3ZTczMzczMDFiMzY2NTIwZDhjOTdjZjZjYmQzNDUxYjEyIGxlZ2FjeS10cnVuaworMTMwMTggOTZiZWFlYWQ4NzRmNzZhMDc5MmRiM2VhNGE1YzA0MzNjZDk2ZDhmNyBsZWdhY3ktdHJ1bmsKKzEzMDE5IDU2MTA1NDQ5NzcxYTY4NDMzYjlmYTZmZDczZjkxYTJlOGJiMDYwYTYgbGVnYWN5LXRydW5rCisxMzAyMCBkMzg0ODY4YWQ0NjIyZWJiOTBjODY4MWEyZjEyNWYzOTM3NGM4YzJhIGxlZ2FjeS10cnVuaworMTMwMjEgZTNmNTlhMDY0NzJlM2E1NjQzMzk5N2NjNjU5MzYwYzc0ZDk5YWM2ZiBsZWdhY3ktdHJ1bmsKKzEzMDIyIDlhYTY1ZDQ4ZGQwNTE3NzVkYTEyNmIzNjQ2ODU4OWIxNWZmOThkYWMgbGVnYWN5LXRydW5rCisxMzAyMyBiMTlmMmE5ODIwMzA1ZjkyNTQ0NzNiZWI3NWQ1MDNiOTNjMmRjMjg0IGxlZ2FjeS10cnVuaworMTMwMjQgN2VlMWUzMTM0MTQ3M2Y1MWMyNGRlMDFlODNlYjFiNWFmNmIxZThiNSBsZWdhY3ktdHJ1bmsKKzEzMDI1IGYwMDVhYzczNTg2MzQxM2FkYWVmYTVhYjAxYjU5NThiNDNlM2M2YjcgbGVnYWN5LXRydW5rCisxMzAyNiBiNWRlYTRjNzlkMjRlMGEwYjU2MGJmNjRhODdhMjNlNjA3MjAwODY3IGxlZ2FjeS10cnVuaworMTMwMjcgNDc0YzViODJkN2RlOTlmN2VlMDQyYTBjNmRmYmYxYTAzZjJlN2VhYiBsZWdhY3ktdHJ1bmsKKzEzMDI4IDg3OGE1NGEwNjExN2IzOWI5OTRiOWU4M2RhZjMxODczNGUxOWFjNDkgbGVnYWN5LXRydW5rCisxMzAyOSA2MWJlYzFlNWZhNTkzYTk3NTY3OTM0MjUxYjZhYzNiZTQ3NzRlMjAwIGxlZ2FjeS10cnVuaworMTMwMzAgNDE1N2YzODYyYTA5ZGYxNzE3NDZiMWJkYjdhZTcwM2JiNGUzODNjMiBsZWdhY3ktdHJ1bmsKKzEzMDMxIDNlZWZlNmIwODY2MmY0NTI5YTMyZjFiZWYyMGQ0NjRhZTdhNjRjZGYgbGVnYWN5LXRydW5rCisxMzAzMiBkNGNlOWYxZjYyNjY2ZTRkODhkOGIyYWNjNWRjNDdkOGM3YmRmZDQ1IGxlZ2FjeS10cnVuaworMTMwMzMgNTQwYzgxNzNlNGZkYmZlY2JhMjQ2NTQ3YzdiODFhZjk1MzkwNjEwZCBsZWdhY3ktdHJ1bmsKKzEzMDM0IGQ4MzRlY2RmOGMyNmUwZGY5MjMxODdmMjBiYTQ3YWNhNmVmMmUyMjAgbGVnYWN5LXRydW5rCisxMzAzNSA5ZWM5YWJmZWM3OTRlYzE0MWQ3Y2Q2OWMwZTVkMDZkMjEzNWU1NTRhIGxlZ2FjeS10cnVuaworMTMwMzYgYzA0ZjAzZTgyYTc1NDM4MjA4MDc3MzNhNmZmN2VkZmQ1MGQyMDM3ZCBsZWdhY3ktdHJ1bmsKKzEzMDM3IDMyYmEwOWM4NjkxN2JiNzBmNWE0ODY4YjY0YmQ2NWViYTVlZGUzNjQgbGVnYWN5LXRydW5rCisxMzAzOCBhNGEyNjhiNzI1YjJhNDYyMzZmODBlN2ZjYzFiM2ZiNjYxYjljZTZiIGxlZ2FjeS10cnVuaworMTMwMzkgYjYyNzI0YjA5MzAyZTc0OWNjNTkzZjM4NTE4ZTI4ODBjZmY2ZjlhYSBsZWdhY3ktdHJ1bmsKKzEzMDQwIDkzNDcxOWMyNWFmODJlZGVmMTU4ZWI3ZTJmY2JkMWY3ZGZkN2UyYjkgbGVnYWN5LXRydW5rCisxMzA0MSAzZmU5NWMyYjM3MTM0ZWE2OTZlMGZlMmU2MjI3ODM0YTA3MDY3ZDExIGxlZ2FjeS10cnVuaworMTMwNDIgY2NlZTNjMjhiN2VmZjFiZjVlMWQxMDcxY2VkNzRmNzRiOTBiMmE5OCBsZWdhY3ktdHJ1bmsKKzEzMDQzIDVmNDU0YjcwNjE1NmVhMzFjODhjOWZhZTcwZmM2ZTAxOGM1ZTU0ZWMgbGVnYWN5LXRydW5rCisxMzA0NCAwYmViN2QzNmMxYTk3Njk0NzI2MTEyMDhmMzY0NGE4NzA3MTIzZGZlIGxlZ2FjeS10cnVuaworMTMwNDUgZjI4ZTZhM2I5MTM0ZTE4M2VmMWYxOGNmM2MwZTRmMGVhMDFiNGJlZiBsZWdhY3ktdHJ1bmsKKzEzMDQ2IGVkYzdiMjhkOTA1MjExMzZiNTNkZDQ3NDM3OWE1MzI4OWY1NjcxYWEgbGVnYWN5LXRydW5rCisxMzA0NyA1ZTllYTNlYWI3N2M4MTAyNTMwNzcxNWQ1MTUzMmViZWZlZjNhMmRkIGxlZ2FjeS10cnVuaworMTMwNDggMzQwMGFhMWIwMDczZmM3OGMzNjI4NmQ2ZTIzZTQ1NzAzZTcyOTJiYyBsZWdhY3ktdHJ1bmsKKzEzMDQ5IGMwYTY5ZWNmOTY0NmY2MWE2MGVkMWY2OGIzZjM1MmMzYTA1MDQ1OGQgbGVnYWN5LXRydW5rCisxMzA1MCBlNjhkNTM3ZWI1MGZlYWI3NzA1ZmEyMWE0NDc1ZThjNmJjZjJkYTVlIGxlZ2FjeS10cnVuaworMTMwNTEgNTk4MGJiMDAxZjg2NGVjMDA2NmU0ZjNmZjA4N2Y1OWQwMGIwZDQwMSBsZWdhY3ktdHJ1bmsKKzEzMDUyIDhjMWNmZTk2NWQ5YjJkYzMxZjEwNTNmNDA4YWQ4MzEyZjRiY2M4MzIgbGVnYWN5LXRydW5rCisxMzA1MyBhZTYxYjcwZWZkYjNhOTQ4YmZhODFjOTU5N2QwMmYxMjYxYmVkY2M2IGxlZ2FjeS10cnVuaworMTMwNTQgYzY5YmZlMGVjYmQ4NzA2YTM1Yzc3ZGRlYWFiN2M5MzZiNGEzNWY2ZiBsZWdhY3ktdHJ1bmsKKzEzMDU1IGFmZjA3ZTA0OWFlZWZhMmJlNDMyMDhhZDBkMjZkNzNjNDhiMzNhZDAgbGVnYWN5LXRydW5rCisxMzA1NSAzOWZiMGRjYzgzZGMzNzVjMTU2NWJhNjVkYmNlMGVkNTliMTM1OWM5IGxlZ2FjeS10cnVuaworMTMwNTcgYTgzN2E2YWVkODNlNmRlMmYzNDc3MGViNDRiMjVkMGZmOGYyZDBlMyBsZWdhY3ktdHJ1bmsKKzEzMDU4IDA1Y2ZhMjhlNjVmNjI0NTM3MjIyNDljYjg0ZDk4YjRiYTQ3NDhhZmYgbGVnYWN5LXRydW5rCisxMzA1OSAyNDNjYzZkOWM1YjhmYmUwZWRhMTdmMTU2NzljM2E3MjRkZjE1Y2FjIGxlZ2FjeS10cnVuaworMTMwNjAgZTNlNWQ3NjM2OTU4Njc5YzQxMzZhOTdlODg5NjU3MTAyZmM1ZTk4ZCBsZWdhY3ktdHJ1bmsKKzEzMDYxIDI4NmIyY2U2NTI0ODg2NDkzZDUwM2VlZWQ1MTMyZGZlMmQ4ZTc5ODcgbGVnYWN5LXRydW5rCisxMzA2MiA4ZDJhOGE0OWQ5ODM5MjEyMThiYTRhMDQxNTRhODMyYTVjMTA1N2Q2IGxlZ2FjeS10cnVuaworMTMwNjMgYWZhYTNhYTgzNWY5ODMzNzlhNzc4OTM1OTFiOWIzY2FiMWY0MmMxNCBsZWdhY3ktdHJ1bmsKKzEzMDY0IDk3MGQ2MWJiNmFjZjkzODNiMzU2YmU0ZjFmNWYwYWMzNDljYWViNjAgbGVnYWN5LXRydW5rCisxMzA2NSAzYmUwNTI1YmY0N2YxYWM0MzY4ZTk2NDJkZDg1YmI3NWI3NWZmZDI1IGxlZ2FjeS10cnVuaworMTMwNjYgYTQyODI0Y2YwYjE4MWUyODZiMjUzZDVjMDc3MmNlNWJlZmQzOTFlMCBsZWdhY3ktdHJ1bmsKKzEzMDY3IGY2ZmM2N2Q3MDVkZWFkMmJkNDFlMDg3NTMzNjI1ZDI3NTYwMGM3ZTggbGVnYWN5LXRydW5rCisxMzA2OCAwNGFmYzFhYzFhMGZkOWZjOGIzZTk4ZDliYjlhNGQxNGU5NzE3MmQwIGxlZ2FjeS10cnVuaworMTMwNjkgMTA0YTQ0MWIyYmM4Y2Q5MWQ1MjkwMDI3Mjg3ZTk0OWFmODA0MDEwMiBsZWdhY3ktdHJ1bmsKKzEzMDcwIDdiZjNmNDEyZTEzNzg2MWJmYzY5MTkyN2IyYTg3ZDJkYWNlNWY5NDIgbGVnYWN5LXRydW5rCisxMzA3MSBkYTE1ZWQzMTRlMjQyODE0NzYzZmE0OWEzMjk0ZGI2Mzc4ZjA4OGQyIGxlZ2FjeS10cnVuaworMTMwNzIgYmZmMzM4MmM2ZDJmNTFlZjg4YjE2NzViOTk5YTNiYTNhNWQzOTM1ZCBsZWdhY3ktdHJ1bmsKKzEzMDczIGY1ODA0NjMzOWNiZjM1ZDliNWYwODhjMjZkYmY2OTY4N2JjMGFlMmUgbGVnYWN5LXRydW5rCisxMzA3NCA0ZTBjYzZlMDJhMGRlOWNjNTY2ZjFmMWQ2MmJjZTUyZTc3NThhNTA2IGxlZ2FjeS10cnVuaworMTMwNzUgNGFmZjM5MTc1MTM3MWRhNWY5NTQ4NTRhOWU3ZDIyZWIzZThlMWJiZiBsZWdhY3ktdHJ1bmsKKzEzMDc2IDEwYmQyZmIyYTBkNjdkOWQzZmVkY2JkMTBjYTM4ZDAwN2I5NGMyMjkgbGVnYWN5LXRydW5rCisxMzA3NyBhZjFlODE5YzA0NDU2OWJmYWFkZDFiMjEwZWFkMzgyNDhiYWNkOGJlIGxlZ2FjeS10cnVuaworMTMwNzggZjk2YjI3Mjk4MWJjYTY0YWQyY2NkYjcwZDUxZjU5OWI5MjE2NDhmMCBsZWdhY3ktdHJ1bmsKKzEzMDc5IDU2MTcyZTBlZmI3NTJlYzY1Mzc0OGYyNmIxMTRkZDA1M2UyOTlkMzAgbGVnYWN5LXRydW5rCisxMzA4MCA2ZTdmMTRhZjg5YjcxZmUyNGFkNTgxZGRiMmE2YTI5YjllZmRkODU2IGxlZ2FjeS10cnVuaworMTMwODEgODg1YmU2MDEwNGQ0MjM1NTA4MzAwYmI0Y2I4MzBjNGYyYzNhM2U0NyBsZWdhY3ktdHJ1bmsKKzEzMDgyIDYzNDJjZTRmZjk0NjU0ZjAzOTg0ZmJkYWZhNWE5ZjY2NGEyMGEzMmMgbGVnYWN5LXRydW5rCisxMzA4MyAxZWQxZWI1YmM2ZWMwYWU4MDQyYzM0ZjY1NWRjNGM2ZDE0ZmU4MWM3IGxlZ2FjeS10cnVuaworMTMwODQgNDM5ZmM4NTMyNGNkZDIyMzc0MDZlOTk1ODY0MTRmMzNjZDZlMWRjYiBsZWdhY3ktdHJ1bmsKKzEzMDg1IGJiYjVhZjc4YTI1OTI4OTA4YjhmZjcwZjdkZmJiMGNmNmQxMmI2NjIgbGVnYWN5LXRydW5rCisxMzA4NiBmN2I4Zjg4NmI1MWE3OGM0MGFlMzJiOTA2MzJiMGFlYWE3ZjZiYzRhIGxlZ2FjeS10cnVuaworMTMwODggNDRkYTAzNjUxYmQwMmFkNjRiMmZmMWQwMmM4NjU1ODA5Nzc1ZThkOCBsZWdhY3ktdHJ1bmsKKzEzMDg5IGU0MTExMGZmOGMyZmEwN2IxMzZmNDBlYzVkYmE0MTcxNDg3ZjFlZWMgbGVnYWN5LXRydW5rCisxMzA5MCA3MDBkYWE3NTg0N2E1ZDRiNDI4NjAwYTAzMzQ1OWE4OTEyMzYwZGM0IGxlZ2FjeS10cnVuaworMTMwOTEgOGRhNDZkNmI4YWYzYjI0MTg2NTJhNGI4MjRjYjMyNTQ1MmE1ZGY2ZiBsZWdhY3ktdHJ1bmsKKzEzMDkyIDA0MGI1Mjg2OGZlOGNlMjI2ODE1OTQ2YWZjMGE5NDEyNzdkMGVlZDAgbGVnYWN5LXRydW5rCisxMzA5MyAyNTFiYWEwMzJhZjBjM2NiMmE5MDA1ZDMzYTJjOTQyYmYzM2M0MTQ5IGxlZ2FjeS10cnVuaworMTMwOTQgY2U4NjFiNDNlZjUzNTZmMDk0YWZiNzNhM2YxYzc4YmQ2NzRmYmM2NSBsZWdhY3ktdHJ1bmsKKzEzMDk1IDA5NjVhYTJkZjVjYWQ4YzhjODBmMjQ5OTAwY2FiNGQxMjk2YmRjYWUgbGVnYWN5LXRydW5rCisxMzA5NiA4M2QzOGM0YWQxZGVmYjA4ZTE1ZjYxY2VmZmIwZDljN2UzZDM0N2EzIGxlZ2FjeS10cnVuaworMTMwOTYgNjFjOTFjN2YxMDFiYWIzMTQ5YWRmY2Q1NjQ2YWU0MGUwNDhkZTcxMiBsZWdhY3ktdHJ1bmsKKzEzMDk4IGMzMWI4ODBhZTg0ZjlkMjJiMDM1NDZlYjllYjQ5MWU4ZTcwNzQ1ZjYgbGVnYWN5LXRydW5rCisxMzA5OSAyOWFiYjdkOTZjMjU5NTE4YzEyZGI3OTNlNWVlMTQxZTMwNWM0NzBjIGxlZ2FjeS10cnVuaworMTMxMDAgNGUyNjk0MTRlZWU1MzBhNjdkMTQzODY1ODViODY4OTM5ZGQ2ZWMyOSBsZWdhY3ktdHJ1bmsKKzEzMTAxIDYzYzdhOGFjNGU0Y2Y5Y2QzMDhmY2UyYmE0MTVhZjI1NmFlMTU5ZDcgbGVnYWN5LXRydW5rCisxMzEwMiA1NjZiZDg3ZTAwMzJlNjkyYmRmN2Y4ODNmZGUyNTZmNmRiYjAwM2U5IGxlZ2FjeS10cnVuaworMTMxMDMgYzg3NTliYTgzNTUyYTU2YjlmNjFjMzAwMWU2ODg5ZjcxOTM4ZTViYSBsZWdhY3ktdHJ1bmsKKzEzMTA0IDg3NmQ3ZTc5MjI1MmM1ZTA1MjIyZDM0NGVmYWZjZmNkNDRhYjI5MDkgbGVnYWN5LXRydW5rCisxMzEwNSBkY2RiYjEwMDA2MGYyYTlmOGIwZmFmZTliYTZiYjU5MDkwNGY4YWY1IGxlZ2FjeS10cnVuaworMTMxMDYgOTBiZGY4ZmE3OGE5YjhlYjdhODBlYmQyOGUwMzAwNmI4ZTc2Y2ZkNCBsZWdhY3ktdHJ1bmsKKzEzMTA3IDJhYjk2N2Y4NDg5NWIwZGQ4MmZjZjI2MmEzMmJjNjg5OWVkMGRkNjcgbGVnYWN5LXRydW5rCisxMzEwOCAyOGM0NDM3MmRlMzg0MWUyYTFjMTNmMzcyNjEwZDE0ZmM1OWRjNGEyIGxlZ2FjeS10cnVuaworMTMxMDkgM2RlMDQ0ZTY1MGExYjYzYmVmMzMzNTY4NDNhZjUxNDU3N2IxZGYxZiBsZWdhY3ktdHJ1bmsKKzEzMTEwIDAyNzAxYjk5ZjliYWJiOTY4YWRjNThmZTNmZDg3MTczODhiMWZlMTIgbGVnYWN5LXRydW5rCisxMzExMSBmZTVmY2I3ZTczZjc5YmQ1NTEwMjMxMDc3M2ZmZTNlZTY4N2U2NzM4IGxlZ2FjeS10cnVuaworMTMxMTIgZmNhYWM0MWY2ZjNhMDMzZmI0YmJlOWU2ODY4NGUxYjRjMTNkNTJjZiBsZWdhY3ktdHJ1bmsKKzEzMTEzIGI0ODg5ZjEwNmMzYjE4MDZkY2Y3N2QzZTc4MzZhM2JhMjlmZDRiM2EgbGVnYWN5LXRydW5rCisxMzExNCAyNDE5YTZjOWY2MjgxMDYzZjhmYmQ3YWY4ZDEyMDFiYWZiMWFmMmJlIGxlZ2FjeS10cnVuaworMTMxMTUgM2YxZTcyYzcxYjNhNWNiZDZmNjFlZDNlNmI3YTA4MWZiNzZlOTZjMiBsZWdhY3ktdHJ1bmsKKzEzMTE2IDZmOGNkYzdlMjI1YzkxNzdmNjk0NTNiOGYwNDgwNmU2M2FlOTE2MGMgbGVnYWN5LXRydW5rCisxMzExNyBmNDI1ZTYwYWM3MWE0NmQ4MmMyOTgxMGM3YzI3M2RkYzliYmQzNzJmIGxlZ2FjeS10cnVuaworMTMxMTggZjYxNGY1Y2YyZGVjOWUzZGM4NGY3ZWQ3NjFmYTY0MmJhMzE0MjBjOCBsZWdhY3ktdHJ1bmsKKzEzMTE5IGEwNzdlNWRhNWZhNTczMGEwYTg2YTUzZDI5NThhOGY3ZWRhY2RmZTMgbGVnYWN5LXRydW5rCisxMzEyMCA1NjhlOTQ3MjdhMGNjOGQ5ZmJiZThjZjNhYzc3ODczYzk3MDVhMDI4IGxlZ2FjeS10cnVuaworMTMxMjEgYTZiOWQ0NTAwMzE3NTI4OTA4MGMzMGM0MTRiZDc3MjU1ZjkxOTJlYiBsZWdhY3ktdHJ1bmsKKzEzMTIyIDAxMmQzNjFmZGYyM2E4YTM0N2MzMDE4ZjI4ZjNiNTM3YWRkNTU4MGUgbGVnYWN5LXRydW5rCisxMzEyMyBmN2U5YmM4ZGExM2QyMTYzM2VhYTQyZjIxNGE3OGNjZGNjZTNlMTg0IGxlZ2FjeS10cnVuaworMTMxMjQgZmE0Njg1ZmQ1YWRmZjEzNDQ4YmNlNGRhYTVkMTUzOWZmOTZiZjNiNyBsZWdhY3ktdHJ1bmsKKzEzMTI1IDg5MWQwODlhYmE0MTJiYTYwOTVkYWU5YTBlYzhlNTA2ZGFlYTFmYzkgbGVnYWN5LXRydW5rCisxMzEyNiA1YjE3MGYwZGE5ZmViZDk5MjJjM2Q0NWVlZTM5YmMwYmU5NTcxYWM1IGxlZ2FjeS10cnVuaworMTMxMjcgZGRjZWRkZWY1OGExYzcxYTdjZWNhMThlZTRmNTFmMjk1ZThiYjhkZCBsZWdhY3ktdHJ1bmsKKzEzMTI4IDg0ZDRmMTcyNjY5YTZmZDM3ZDMxZWNiZmUyZTY2MGMzZjA5MDY4OTkgbGVnYWN5LXRydW5rCisxMzEyOSAzNGZkMjUyNDI3MzE5ZjIzMTEzZWEzM2ZhODYxYzYxMjYyM2UyNDgzIGxlZ2FjeS10cnVuaworMTMxMzAgYWQ1NWJkYmE1ZGZmZWQ4Y2EyMGI0NjIwODFhNDg4ZDFjNzFkNzQzZSBsZWdhY3ktdHJ1bmsKKzEzMTMxIDM3ZGQ4YjhiMWQ4NDAzOWEyOGViNGJjN2EzZWViMWYzZjAyNmFiYmUgbGVnYWN5LXRydW5rCisxMzEzMiA3NWYxMjg3MWVlZWE3YjVjOTJkMWE1MzRjYjRjNzU3YWE5ZTA5NmRjIGxlZ2FjeS10cnVuaworMTMxMzMgMThjNzRkNmJjYWU4ODA3NDE0NDE1ZmFhOWUyMzgxMzY5Yjg3NjczZSBsZWdhY3ktdHJ1bmsKKzEzMTM0IDFiZGVhMTdiYzQ3MWYyNWY3YTk3NzE0Nzk5Y2FkMGM1ZDg5ZWNhMjMgbGVnYWN5LXRydW5rCisxMzEzNSBkNzE5N2IzMmZiZmVhMWVjYzE5ZDY4YjRmMzQxMGExMGZjZmFkYTRjIGxlZ2FjeS10cnVuaworMTMxMzYgNjQ3MjcyOGRmMmQwY2YyZDY0MjM2MDYyODcxZjUyZTNmMTg0ZTg1NyBsZWdhY3ktdHJ1bmsKKzEzMTM3IDQ2YTcwOGIwY2EzOGYwMTA2OWMyODUzMjg0ZmEyZGFmYzkzMjQ0ZjggbGVnYWN5LXRydW5rCisxMzEzOCBhYTRlY2I3MTZlNmUxYzhhNmM2OWYyNGFmMDQ5Y2RlZjJhMGUyYzJmIGxlZ2FjeS10cnVuaworMTMxMzkgZTI2NDM5MmUxNTM2MWY5NTY5NzJiYzQzYjAzZTVkMjRjMzE0MGZjYyBsZWdhY3ktdHJ1bmsKKzEzMTQwIDNjMjU5MzcwYWM1N2FiMWVhNTQwZGFjNWZmNDRkMjA4NjVjMWRiMjMgbGVnYWN5LXRydW5rCisxMzE0MSA5ZmQyOTAyMWQxNDdlYWM5ZDI2Y2NmMmQ3ODNkMmQzMzgyOTE1YzE0IGxlZ2FjeS10cnVuaworMTMxNDIgYmVkMTVhMDE1YzFjMzk0ZWM5Yjg2ZjQxMTk3YmE2MTExNzg3MjkzMSBsZWdhY3ktdHJ1bmsKKzEzMTQzIGRmOGExYzI4MWFkN2Q3NGQ0ODk4Y2NhZWM2MGYyZTM0ZDdmMjY2NzMgbGVnYWN5LXRydW5rCisxMzE0NCAzNjA0OTRjMjVlMGU1YTlkODAyZGY4NTNjZjQxMDdiZGY5YWUxNjdiIGxlZ2FjeS10cnVuaworMTMxNDUgZWFjYTM3NzViNDI1ZDdiZDM4NDZmZjY0YjRlM2UyYzkyOWQzMWMyZSBsZWdhY3ktdHJ1bmsKKzEzMTQ2IGY2ZWM0YTljYjBiMzkzZmQyMzdiYTY3NGRlZTkwNWNjMmY1ZmM4YjEgbGVnYWN5LXRydW5rCisxMzE0NyA2MzcyYzJhNGQ0N2JkODE0ZGIyYmVhMjE1M2NmZGJkOWQwZTE0YjRhIGxlZ2FjeS10cnVuaworMTMxNDggZTNhMDg5ODNjZDI1MWY4ZWZlNzIzMWY1MGIxMzFiNTU0YWZmZTYxNyBsZWdhY3ktdHJ1bmsKKzEzMTQ5IGNmNjJhZmYxMDQ2ODdhNGIzYzQxNDM5ZGEzYzhmMzU1ZDVmYzExZGUgbGVnYWN5LXRydW5rCisxMzE1MCA0Njc4OGYxNjY1MGIwN2I4MDQyOTEwYTY0NDVmZDMzZjcwZTFhMzZkIGxlZ2FjeS10cnVuaworMTMxNTEgZTA5ZjE5NDQxMTM2Y2EzOWQ2NzYwNTZmNjk2YTAzMWVkMzc0MjY4OSBsZWdhY3ktdHJ1bmsKKzEzMTUyIGM3NDcwYjE0ZGVjN2MzZGYwODFjMTYxMzRmNDNmZTNiMGIxMWQzNDkgbGVnYWN5LXRydW5rCisxMzE1MyA0OGMzM2QwNTM2N2YyYTVlODI1MTA1ZDYwNDYyZTQyMmZmODI4NDhiIGxlZ2FjeS10cnVuaworMTMxNTQgNDM2OTRkMzUzNDQyMTliYzk1MmJlMTgyMmFkYjNlN2ZlYWVjNWMzZSBsZWdhY3ktdHJ1bmsKKzEzMTU1IGM5OWU2ODdkMWFjNGFjNjUxYTM0M2E1YTRmMjA4MzBkYTFjNzYzYzMgbGVnYWN5LXRydW5rCisxMzE1NiA4YjM4Y2U0MjI4M2VjYmNmZDVlM2NmNjFjYTUzMDE1YzU1MzI5MjFlIGxlZ2FjeS10cnVuaworMTMxNTcgNmMyNjUxMTNlN2U4YzZmYTcxYTcxMGUyOWQ0MzhiZjVkNmMwY2M1MSBsZWdhY3ktdHJ1bmsKKzEzMTU4IDQyZGJmZDQ5ODM4NzY3MzJkZDZhMzIzZWIwYjY1NzhlZTA4YmE4ZDIgbGVnYWN5LXRydW5rCisxMzE1OSA5ODgzZTMwYWNhYzU5Mjg4NjMwYzQ4NzY2YzNiODgyZGQyZDJkYmY5IGxlZ2FjeS10cnVuaworMTMxNjAgMjk5YmY1M2U2ODYxNmVmYmZhODRlOTFjYzMzOWYwMjVhY2NlYTEwZiBsZWdhY3ktdHJ1bmsKKzEzMTYxIDhlNzJmYzU3ZjU1ZmQ0MzFmNGIzZjA5Mzg3OTZiNjJlNmYwZmIwNDMgbGVnYWN5LXRydW5rCisxMzE2MiBkMjAzY2I5ZWNlMzcyNzdkZjE1YTE2MDM1NDYyNGI3ZTQ2YTQxMmJlIGxlZ2FjeS10cnVuaworMTMxNjMgOTk2ODFlZTg2Njk4MmQwNjRkOGQ5MjZjMzdlN2ZiZDk2MDEwMTk4NSBsZWdhY3ktdHJ1bmsKKzEzMTY0IDY5ZmI4MWZhY2IwMzc4NGM1MDUwMWExNjEzZDkzYTFlZmNlODFiMTEgbGVnYWN5LXRydW5rCisxMzE2NSA5NWFjMWM4YzA4NWU1NGNlMmM3OWY2NTczYzI5ZDg5ZTk0ZTViZGNkIGxlZ2FjeS10cnVuaworMTMxNjYgYTcxYzYzNmI4NWQxNGEzNzMwZmIyYjE2MGRkYmY4NmM0NGJmMWUyYiBsZWdhY3ktdHJ1bmsKKzEzMTY3IGFiMDIzMzQ0NTNmOTZkNDcwMmVmZWQ0YWI0MzJiNDZkZDc0MjkyZGIgbGVnYWN5LXRydW5rCisxMzE2OCAzN2EyMjM2ZDQ3MmYyZjRmMTU5NzdmYTY2MzY0MTMwYjkzMDAzZmEzIGxlZ2FjeS10cnVuaworMTMxNjkgOTMzNzMyMDI2ZTljZDQ5ZDg3YzBkODQ4ZjBkZWFiM2ZkMDYxOGUxMiBsZWdhY3ktdHJ1bmsKKzEzMTcwIDdkMDViYjNlMTM1ZjYyNzc2NzFlMjc2YjMxNmE5OWQxNjgxM2RhMWMgbGVnYWN5LXRydW5rCisxMzE3MSBiZWJlOTgzMGIzM2NkYTE5NmI2NTM2MWJmYTJhNWM2OGNmZTVlM2I1IGxlZ2FjeS10cnVuaworMTMxNzIgMDJlYjc0NzQ5MjYyZTU1YjVmMzJjMTI4MGFhYjdkZDg0MWNiYmU0MiBsZWdhY3ktdHJ1bmsKKzEzMTczIDhjNmZmZTY3MDk2M2IwMWVjOTRlMmU0MmQ0YjFjM2FhNWFiMDkwOGQgbGVnYWN5LXRydW5rCisxMzE3NCBlMDVmNmJkYzhiNTIwNDVjMzVhZTk5ZDAzZGE0NzBmZWIyMGVmNjgxIGxlZ2FjeS10cnVuaworMTMxNzUgOGMwYTYwZmI2YWNmNjljZDU2NTlhMDI4OWQzMzdjNTAxYzNkMTkzYyBsZWdhY3ktdHJ1bmsKKzEzMTc2IDc5ODY1NTU1NjQ1NjU1MGRiZWQyNGU0ZWQ4MThhY2NkMWU5OTY2ZjMgbGVnYWN5LXRydW5rCisxMzE3NyBmNjA2MmU1OTIzOGYzZTM1ZWEwMGQ1YzJhN2NjOTNjZDBlYzk3ODRhIGxlZ2FjeS10cnVuaworMTMxNzggZTJhMWM4ZDIzM2RmNzE5MjA3MjcyNDk4YzliMDMyNGI0YWVlOGNmYSBsZWdhY3ktdHJ1bmsKKzEzMTc5IGIyNjA2YThmY2FhYmE5NjdkYjMzNDNjNzI3OGVlNTcyOGQwMzc4YTkgbGVnYWN5LXRydW5rCisxMzE4MCBlZTg2MWQ3YmMwZTkzMGNmYzc4YTMzZmI2OTYyMWU4NTk3MTdiYTJkIGxlZ2FjeS10cnVuaworMTMxODEgNThkZGVlMTI1NmU5NTQwNWU3NzMzMmY2OGYyYzhlNDEzZDY0YzM4YiBsZWdhY3ktdHJ1bmsKKzEzMTgyIDllNGM1NzNlYTQ5YmE2YjMyY2E2MTFkNmJiZjcyMDdlMGMyNGRkMzYgbGVnYWN5LXRydW5rCisxMzE4MyAxOWI0ODcwMGFjZGJiZjc0ZGEzMGVkN2JmMWM5YzczNmJhMGYwN2NlIGxlZ2FjeS10cnVuaworMTMxODQgNGNiODQ5NGFiYTYyMGVmMjdlZWFhNjE0ZDUyOWQzMmFlZTk1NTUwOSBsZWdhY3ktdHJ1bmsKKzEzMTg1IGFlMThlOGVlYmUwNGRhOGQ0ZjRhZDkwMzAwMWM1ZTFmMDIyZTUwMjQgbGVnYWN5LXRydW5rCisxMzE4NiA2MzNkMmY3YTFlNDg4MDVjMGE4YTQ4YTFlY2E2ZTUzMTE4MDg1MWZlIGxlZ2FjeS10cnVuaworMTMxODcgNzEzNzQwMDAzN2UwMTU5MDE1NGNhNmQ2NTA2ZjdlZmFhNWQxODc5NSBsZWdhY3ktdHJ1bmsKKzEzMTg4IDNiYjAyOWM2ZGQzNzgyMmEwOWRjM2VlOTgyZGJiNzFkOTdiNTdiMjQgbGVnYWN5LXRydW5rCisxMzE4OSBmNjcxMTk1YWYwMjBlZDhkYjQ4M2I5ZmNlOTNkYmFiNzdkZDlkMDdhIGxlZ2FjeS10cnVuaworMTMxOTAgODVjZjQ3NjY1N2M1ZGU2MTk4NGU1ZDVmZjBiZDQ3NjVlMWE3ODA4NCBsZWdhY3ktdHJ1bmsKKzEzMTkxIGFlMDMwNmFhYTY4OGUxMWJlNWQ4ZDIyZDM0N2RiMGEwNDBiNWEyZTEgbGVnYWN5LXRydW5rCisxMzE5MiAzYjg3NjJiOGMxNDBkMDE2Y2U0NTI1ODg3ZWJkMWEyMmMxNGVlMTc4IGxlZ2FjeS10cnVuaworMTMxOTMgOTIxZmYzODVmMjU2YTE4YWMyNzE4MDJjMGZkYzdkZWMwZWYxZmU0MyBsZWdhY3ktdHJ1bmsKKzEzMTk0IDliN2Q4ZWM5YjkxMGMzMjI0YjljNDg4NzljNjI5NmMyNTJlNWQwYWEgbGVnYWN5LXRydW5rCisxMzE5NSBhOWQ2MTNhYjVhNzY1ZTMzNTE5ZTA1MTQ4NmRkNDdhYTM2OTZkY2ExIGxlZ2FjeS10cnVuaworMTMxOTYgYWIxMmM2MzFkNzM1ZDQ4ZmY3YzBjNjJlMGFkZDZmZWEwY2MzZDUyYSBsZWdhY3ktdHJ1bmsKKzEzMTk3IGQzMGNjYjAwYmQ3YjgwYjU4Mzc0YjAxYjJmN2IyYjljZGYxYjEyNzcgbGVnYWN5LXRydW5rCisxMzE5OCA5ZTA0MDJlZTM4MTIwNjg5NzcxOTZhYzYyOTc2YjdmODMzNTQyMzIyIGxlZ2FjeS10cnVuaworMTMxOTkgMjVjYzdmMGQ0NWYzOGRhZGM4OWMyZWNhZmExNDE5Nzk2YzJjYWQ3OCBsZWdhY3ktdHJ1bmsKKzEzMjAwIDBiOGJhOTM1MWEwNjM1MTY4NGIzNWQwMzUzZDhhZGNhNTNiZjNkOTkgbGVnYWN5LXRydW5rCisxMzIwMSBlNzAzOTc5ZmY1ZTc0NjkyOGI4NjRhNTQwNjczYmRhMTUyYzU2YzFjIGxlZ2FjeS10cnVuaworMTMyMDIgNjdhNGFjZWQwZDg4ZTUzYTgzYzBiOWQ3MDc3YTNjMzhiODJhNzY1YiBsZWdhY3ktdHJ1bmsKKzEzMjAzIDQ4MjI2MTdiMzlmMTRhNzM3NzljNTkxNTliNmVkYjI4YWRiOWQyOWQgbGVnYWN5LXRydW5rCisxMzIwNCBhYmExY2QwZDEzZWFmYmQ0NTY5ZjZlMDBiMmZkMjIxOWQ1MmFjNDc1IGxlZ2FjeS10cnVuaworMTMyMDUgODFmNTExMDVmNDI4OGQyM2JlY2U1NzNiMjY5MDUwZmQ4ODgwZjViMCBsZWdhY3ktdHJ1bmsKKzEzMjA2IDM0NmU5YTBmMGY4YzdjZTZhNjkwZWJlZTQ2OTZmYTUzYWFmZGQ1YjcgbGVnYWN5LXRydW5rCisxMzIwNyBjOTAzZWNlY2JhNjY5YmIzMGYwZjcxNjA1YThiOThmMGIyOGQ4Y2FiIGxlZ2FjeS10cnVuaworMTMyMDggZTRlODAwYTc4ZDhkZDI3OTk0OWE1YzNhYWMyNDZhMWU1NWFlMzliMiBsZWdhY3ktdHJ1bmsKKzEzMjA5IDU4YjE5MWJhZGI5YThiNWUwM2I1MGRiY2M2YzgyZWY3Mzk1YTZkMzIgbGVnYWN5LXRydW5rCisxMzIxMCA0Nzg4ZmQwNzBhMzBiM2UxZDE0ZjQ1ZThhMzgyMDk5ODg0MTY3YzUzIGxlZ2FjeS10cnVuaworMTMyMTEgODUxMWVmZWM3MzA5YzdlMzU0NmNmZmI5MzVlMmEwZmIxNmY5ZDUxOSBsZWdhY3ktdHJ1bmsKKzEzMjEyIGNhZDdiNTVhMzYzZmY1NDYzYzgwNWU3N2RkOGNkMGYwNjQzYTgyYTQgbGVnYWN5LXRydW5rCisxMzIxMyBiMmFhZTcxOTg3MjM4Njc5NWYzYjEyM2VmZTYzNGNhNGY2NjRjY2Q1IGxlZ2FjeS10cnVuaworMTMyMTQgMTRmNmUwZGM5NjIyOWZjZTFkMmQwOWJhZTk3MDhlZmIzZTMxZjY0NCBsZWdhY3ktdHJ1bmsKKzEzMjE1IGQ4YjJmODJmMzNlZDJkZGU0MTUwODNhYThiYTExM2VjM2Y0MGE0YWIgbGVnYWN5LXRydW5rCisxMzIxNiBjZDAxYmExMGE5NjJjMDlmYzQ1MmM4YWIwZDcyYWRmOTM0MWMxZGIwIGxlZ2FjeS10cnVuaworMTMyMTcgNDkwZWMwYzQwY2M2MDBjYzdmMGIwNTUwMTEzMzU5NTBlZWQ2YjU1MCBsZWdhY3ktdHJ1bmsKKzEzMjE4IGNmZDA5MzJhNTNlNDkxZjgzYWYyNDc5MjM2NDEwZjUyODg4MzlhOGQgbGVnYWN5LXRydW5rCisxMzIxOSA3NjY4YmNkZTljMGFkNjQwODcyMTI4Y2I3MGM1ZWI4ODVhMzY2YTI3IGxlZ2FjeS10cnVuaworMTMyMjAgNjcxMjFhMmM2MmJmOTMxNGNkMWQ5YTRkZDk0YmNjOGRkOTk5NmQwZSBsZWdhY3ktdHJ1bmsKKzEzMjIxIGJhZjY2ZDZlMWJjMTZkMjFmZjAxMjcyMmY5ZTNlZWQ1N2MwYjg0OTIgbGVnYWN5LXRydW5rCisxMzIyMiA4MGQ0ODg1ZWRkNjY0MDhhZTJhYmY5YzhmYzMzYzFjYjkwYTc2ODlmIGxlZ2FjeS10cnVuaworMTMyMjMgZmUxZTk4MTkwYWY2ZWU4M2EzZDQ1MjQ1NGRjYmNmYzUyOTIxYTM2NyBsZWdhY3ktdHJ1bmsKKzEzMjI0IGYwOTUwNzdkMjBiMDJlMmY1N2M4NmQ1MGRjNjRkZjUxZDhkZmI4OWUgbGVnYWN5LXRydW5rCisxMzIyNSBlOTk1YmNjNGNjODIyNGM4ZTg3OTEzYzhkNzZjMDA5NGUxN2QwOGYwIGxlZ2FjeS10cnVuaworMTMyMjYgOWY2OTVhNTQ5ODY1NDhjOTc0ZDkyNTc3Yzg5ZDdjNjk1OGQ2YTg3ZCBsZWdhY3ktdHJ1bmsKKzEzMjI3IGYzMzVmYTFkNmU3MTVlYThjMzNmOWFjM2ZiNDU3ZTY0OTBkM2EyYWEgbGVnYWN5LXRydW5rCisxMzIyOCA0ODAzN2Y0ODE0YjExMGMwYzE0NTgxODk4OWNhYTA3MTJhNjRiM2JmIGxlZ2FjeS10cnVuaworMTMyMjkgZjNjN2ZmN2E2ZTgxYWI1NjQyNThiMjFlYzAwNWY3YTYwNjUyZDc4OCBsZWdhY3ktdHJ1bmsKKzEzMjMwIGI2ZDFhMzJhZWQ3NjM4YmViNzgzM2U2ZmE0MDE4YjkzNDU4ZTIwOTIgbGVnYWN5LXRydW5rCisxMzIzMSA4ZGU3ZDkwYjBiMzRmZTRlZGQzNmI5NmYzZTg4NDE4ODVjMTUyZDNiIGxlZ2FjeS10cnVuaworMTMyMzIgOWU1ZGY0YzQ5YTU2NzU0ZGZjYTljYzQxN2Y4OGI0YWU0YWY1YWQ2YyBsZWdhY3ktdHJ1bmsKKzEzMjMzIGVlYTFhYjAyOGY0MzFlY2M2ZGVmODgyOGQzMTA5MDcwNTdhN2I1YzggbGVnYWN5LXRydW5rCisxMzIzNCBmMzg3NjkzMDg0Mzg2MmUxYzg3ZDljYmJhYTY2MmI5OTJlMzkzMDRmIGxlZ2FjeS10cnVuaworMTMyMzUgYzVmNDQ5YWE0MzQ1OTIxNDE1OWQ1NTRjMTFhMDMxMWZhNTE0MTk1MiBsZWdhY3ktdHJ1bmsKKzEzMjM2IDI0NzVjM2NmZTgzOTAzMjZlODgyYzJkMzk2OWJjOWM0MjBmN2RjM2IgbGVnYWN5LXRydW5rCisxMzIzNyBlMDc1MjcyZjQzZjI2NTY4OGY5ZWVjYTUxMGExMWRlNWJlNzI2Y2ZmIGxlZ2FjeS10cnVuaworMTMyMzggNjEwNTFmZDY1YWFiMDgxMDVhOTU3NzliMjFjZjRjODI4OGVjYmU0OSBsZWdhY3ktdHJ1bmsKKzEzMjM5IDI2NjY0ZDA3OTU5Nzk5NTkyYmJmYWFkMDk1MjY1ZGJlYzkwMjc5OWQgbGVnYWN5LXRydW5rCisxMzI0MCA3NDQyY2NlZGQ1ZmQzYzAyYjkxYzMyN2EzYTAxNmQzMWMyOTZhNjFmIGxlZ2FjeS10cnVuaworMTMyNDEgZWM2NjQyNTRlZjVhYWE5ZTFjMzc3NGZlZmUzYTJmZDkzMzk0MDZjNCBsZWdhY3ktdHJ1bmsKKzEzMjQyIDI3MzcxYjZkNzBjMTExZDZhNmMxNWI3MjY1YTVjZjc5MmU5ZmEwNjYgbGVnYWN5LXRydW5rCisxMzI0MyBkZjE1NGRhMThmMGVhMGRmYzFlZGY3ZGIyMDczMzdmZTY0YWRmMTNlIGxlZ2FjeS10cnVuaworMTMyNDQgZTRlZThlYTRlODM2OGQyZjNkYTQxOGEyMzYyNzg0ZGYzNmYxYWNmNyBsZWdhY3ktdHJ1bmsKKzEzMjQ1IDAzZTc0YzRiMTg5YzlkYTU0OWYyYzUwOTBlMTA5ZDUzOGY5NDkxNGEgbGVnYWN5LXRydW5rCisxMzI0NiAwOWM2YjJjZWJlZTljNjFlODY1YTI3Y2MwMjJiNDk2MjQ3NzYwODViIGxlZ2FjeS10cnVuaworMTMyNDcgNjc2ZGU4YTdhM2NiZDI1YTBmZDlmZmVkZmEzZTFkMmMxOGU5M2RhZiBsZWdhY3ktdHJ1bmsKKzEzMjQ4IDg1NTg4N2EyY2M2MDE3YzZkOGE3OTZmODMyMDBjYTEwNmI0MzFmMjcgbGVnYWN5LXRydW5rCisxMzI0OSA0YzlkZTZmZDI2N2I5M2ZhY2JjYzEyY2I4NDVhNThlNmUzNWVhOTYzIGxlZ2FjeS10cnVuaworMTMyNTAgM2U1YjA1MDM1ZWI5ODQyOWU2YWZkZDNlMzUwYmJkMDM1ZWNiN2ZkOSBsZWdhY3ktdHJ1bmsKKzEzMjUxIDRkYjM2OTFiOWM4NzE1ZmNiZjhkODQ1N2I0MTMwOTY2Y2E3NmNhOGYgbGVnYWN5LXRydW5rCisxMzI1MiBlN2ViY2ZkZTNiNWU0MjcxYWM2MWRjZDc3ZTM3ZTE4ZjE3OWY0ZWExIGxlZ2FjeS10cnVuaworMTMyNTMgZjBhNjE5ZWViZTlhMmEyNzMzMWU1ZDcxMmUxMmFiZGMwZjhiMzI5NCBsZWdhY3ktdHJ1bmsKKzEzMjU0IGEwZDRhOTU3ZmQ5MWMxMWYwN2FhNWU2NzUwZWUxZmFjMDI4N2EyMmMgbGVnYWN5LXRydW5rCisxMzI1NSA4ZjM2NjViYjllM2UwYzgxMmRhZjE3MzQ4MDUxOGQ4YTkzZjE4YzBmIGxlZ2FjeS10cnVuaworMTMyNTYgOGVkYmQ1YWI2MjE3NTcwYmVhZGIwMWJlZjJmMTFiZTYxYzc3MGRiMSBsZWdhY3ktdHJ1bmsKKzEzMjU3IDhlZWY2ZjY3NTY3N2M1N2MwZDQ5ODljMzJiNTZlNzM4M2E2YjdiOWMgbGVnYWN5LXRydW5rCisxMzI1OCA4MWY1NGMwMGUyMjRmZTViMWRmYzQ5YTgxNWM3ZGZjYmIzZDc4ZTk2IGxlZ2FjeS10cnVuaworMTMyNTkgY2RlOWIyZTY0YzAwOTdlMTkwOTRjN2U4NTdlYmY5MjIwYzVlNzgzNSBsZWdhY3ktdHJ1bmsKKzEzMjYwIGJmYTBjNzQzMzQ3YTlkY2M5MjJmMWE4ZTdjN2FlZGYxMmFkYTg4OTcgbGVnYWN5LXRydW5rCisxMzI2MSBmMWIyYmI1MzVlYjM2M2M0MDkxMjhjZmMxYjg4ZGQ0NzE3OTFhMDFiIGxlZ2FjeS10cnVuaworMTMyNjIgM2M0ZGI2YzZlOTc5M2NmZjYxYTNlNDM0NDY4YTBkYjQ4M2JlODg0MCBsZWdhY3ktdHJ1bmsKKzEzMjYzIGVjZTA5OGYzZTFkYzhlZDBiNGVhNDlhMTAwYWRjOTljZWQ4MmQxMGEgbGVnYWN5LXRydW5rCisxMzI2NCBhYWE1Zjk4Y2IyZDZkOWM1ZWU1YmE4NjFmM2JmZWUyMzRjYWZlNjFkIGxlZ2FjeS10cnVuaworMTMyNjUgNmEzOGU2NjdkMzQ5ODA4Y2EzZDFkZDgyMWE1ZWU3OTI1M2I5ZGE5YyBsZWdhY3ktdHJ1bmsKKzEzMjY2IDA1ZDcwMzAxNWRlMTU0ZjliZWQ5NWI5M2E4MWI3NjhiNWNkNDM3Y2YgbGVnYWN5LXRydW5rCisxMzI2NyAzOTNhNmRhZjI4OWRlMzg5NGM2NWY5YjA1OGNlYWY1NjQzNmY5NTMwIGxlZ2FjeS10cnVuaworMTMyNjggMTUwYWMwZDcwOTI5MjI0OTRhZjI2OGI2NjRjZDkxM2JhMTRkMDIxMiBsZWdhY3ktdHJ1bmsKKzEzMjY5IDkyYTkyZGU5NTliOWUyNGJkZjliMmUzMzY5NWEzOGI2ZDM4ZWYxNWMgbGVnYWN5LXRydW5rCisxMzI3MCAzZjBhNmIxNTY5ZTdlNmVhOGU3MWIzZjg0ODk5OTMwYWVkOWY2MzYwIGxlZ2FjeS10cnVuaworMTMyNzEgZGJjYTQ3MGFmOGYyNDg3MTkzNDljNjkwZTMwMTRiYTU1NGQ0YTRiZiBsZWdhY3ktdHJ1bmsKKzEzMjcyIGUzNzA3NGI2ZTc4Y2Y0YWI3MWExYzhmNWVkYTQ1MGMyNzA0NzE3YWEgbGVnYWN5LXRydW5rCisxMzI3MyBjNmE0ZTQ2ZjFiMDlkZGUzMjUwNzUzN2IyMmM2NTIxNjczNWVmM2E4IGxlZ2FjeS10cnVuaworMTMyNzQgMWFmN2ExNDY3MDg4MzhhZTBmMDg0YTRlZWY3NzU4NDY4MGZhNjljZSBsZWdhY3ktdHJ1bmsKKzEzMjc1IGZiMTczM2I2YmVmNWVhYzBlYjNjOTUwNzQzMjZhYmI1MTYzMWM2MzEgbGVnYWN5LXRydW5rCisxMzI3NiAyZjZiMTI3NmU1ZGM2NDI5ZmE0NDI0NTc5M2U3OGJmMWFjNjMzMGE5IGxlZ2FjeS10cnVuaworMTMyNzcgNDQyNDgzZjQ1MzQ1NTg1YTcyYmIyMzk2NDYxMmVhNDExMzIxYmNkZCBsZWdhY3ktdHJ1bmsKKzEzMjc4IDJiMDE2NmQyMjU1MTNlNGQ0MzVmYjU4MjQyMDRmMDc1M2YwYTYyN2YgbGVnYWN5LXRydW5rCisxMzI3OSAxZDdlYmJmMWYwZjI3NTUwODk1NGY1ZDQwNDFjODg3NDc0Y2MxMTc4IGxlZ2FjeS10cnVuaworMTMyODAgZTBlOTNlNDE2NmNlMmQ1MDgyOGJlMzY1ODMzODA3NzhiZDNiZDg0YyBsZWdhY3ktdHJ1bmsKKzEzMjgxIGMxYzcwYjc0M2RmMmU3OGI5ODdmNjhiYmQ3MTE4NDljNjRlNzJmOTMgbGVnYWN5LXRydW5rCisxMzI4MiA5NjY1OTRjNmIxZTI1NmFkYTUxYzFmZTU3NDRmMmE1MDM2MGM3ZDU0IGxlZ2FjeS10cnVuaworMTMyODMgYjcwODk2ZWI4OTQ0MGU5MDdkMTA1MGFhYjY2NDhlNjM0NmMxYWIwZCBsZWdhY3ktdHJ1bmsKKzEzMjg0IDlmMGYxZDhlNmViYWY3ZTczZjkxYjY1OTAxMGM1YWMwOTdmYTQ4ZjMgbGVnYWN5LXRydW5rCisxMzI4NSBiMzlmZTUxMjk5YmU5ZGFlOTRkODVkNDY1ZmIzY2U0NTZiOWE4Y2FmIGxlZ2FjeS10cnVuaworMTMyODYgNDc5YjRkMWMwYjQ3Mjg1ZGY2NmFjYjYyNzA0ZmE2ZDc3MGJmMDFkYSBsZWdhY3ktdHJ1bmsKKzEzMjg3IDU0YTMwZDZiMDFmMTA4YTgwNTQwOGUzNTIyMTAwZTY2NzA4NTY1ZDcgbGVnYWN5LXRydW5rCisxMzI4OCBjMzljMTQwYjA0YmNjOWNmM2EwMzMyY2Q3YWY5ZDIzMjA1YmUyNGJmIGxlZ2FjeS10cnVuaworMTMyODkgMzJlNzhjOWZiNDk2YzM4OGRkMDNhMWJkNGNiOTdiZmE2NGZhYTIzZSBsZWdhY3ktdHJ1bmsKKzEzMjkwIDVkYjJjMDQyN2NhZDM0YTQ5OWMyOWU4NjUwMTUyZjc4YjdmZWFlNWQgbGVnYWN5LXRydW5rCisxMzI5MSBhMzRkNjY1NmY4ZTJkZGZhOTJmN2M0MjcxYWM4NmMzYzQ0N2ZlYjdhIGxlZ2FjeS10cnVuaworMTMyOTIgMWJmYWE1Mzc0ZGY5OTc1OGIxNGE5MTFmYTZlM2EyZDhiMjdiNzAyNSBsZWdhY3ktdHJ1bmsKKzEzMjkzIDMzNWI0YzAyZjEwZGYwZDkwMGJhNDQzNjMzOTBhZTdjNzEyMmM5OWYgbGVnYWN5LXRydW5rCisxMzI5NCA3NjczNTFmNDk0NGFiYWRlNDFjMWU1ZjBkZTJiNDdiNmQ1MWQ1MGIwIGxlZ2FjeS10cnVuaworMTMyOTUgMTA1YmVlZDA2OGY4ZTYyZDI3M2IzZGQ1ZjFlYjA2OGRkMmQzM2Q1ZSBsZWdhY3ktdHJ1bmsKKzEzMjk2IDJkMzZmMDY4OWI4YTNlMDU1OWI3ZWJhMzQ1MzE1ZmJjMjZkMzQ0ZGYgbGVnYWN5LXRydW5rCisxMzI5NyBiMDE1ZDVmMWRhMWI1NzE3OTFmNDQwZjRiZDk1YTJiZjA4NjVjM2ZjIGxlZ2FjeS10cnVuaworMTMyOTggN2M0MGQ3YzFlZWY5NGY3NzAzNWFhYjg3ODkwYWRmYWQwOGEzZmM2ZiBsZWdhY3ktdHJ1bmsKKzEzMjk5IDg4NWFiZTA4ZWEyZGVhYzkzMzUwN2QyMTc5Njc3MGEyNzljZTk2N2MgbGVnYWN5LXRydW5rCisxMzMwMCA5ZWZlMDY3OTQwZWFhODdmOGIxMTkyY2U4NmFiZmQ3MjFmMzdhNmEyIGxlZ2FjeS10cnVuaworMTMzMDEgOTRjN2EzZjFjMDA1ZTY1OTQ3MjFjOWE4NWZiZjE3NWUzMWVmYjI4OSBsZWdhY3ktdHJ1bmsKKzEzMzAyIDhmMzExMDNjODhhOGUwN2U1NWQ5MjMyNjc4MzBhNDkwOTlmOTlkZGUgbGVnYWN5LXRydW5rCisxMzMwMyBkMjBlNGQwYWZiNDM2MmQ4OTI1OTkzN2U0N2IyNDQ3YzJlYzE2NmMzIGxlZ2FjeS10cnVuaworMTMzMDQgMzEyZWI0ODAxYTFjODE2YmJlOTQ2OWNkYWFmN2M2ZDBkOTcwYmNkMSBsZWdhY3ktdHJ1bmsKKzEzMzA1IDNkMmVhNTViYzRlNjhhNDgwZjU5NDg2YjYwMjc0MDkzZjA0Nzc2ZDAgbGVnYWN5LXRydW5rCisxMzMwNiA4NzlkMWFlNWM3YTViY2VkMmUwNDlmZTljYjFmMWNiZjY5YzY2ZjEyIGxlZ2FjeS10cnVuaworMTMzMDcgNzgxMjM4MzYxZjUzMWUzYzUwMTk5NDU4MWFjMjQ2MmViY2FkOTk1OSBsZWdhY3ktdHJ1bmsKKzEzMzA4IGFlYjEzY2I3Yjc4Y2E1ZTgwODRiM2E2MzBmZjM4MWQyN2QzNDFhZTMgbGVnYWN5LXRydW5rCisxMzMwOSBiODhhNjA1MjQyNjkwOWQ2MmI3NmU1M2VkMGExMDg4MGM3ZDI4ZDU1IGxlZ2FjeS10cnVuaworMTMzMTEgN2VhMzg1OTdlNzBmYWJiZGI0NWYyM2JjMzY5NzZiNjNmNjZjMTEwZSBsZWdhY3ktdHJ1bmsKKzEzMzEyIGZmYjJhNDdiNjQ1ZWM3YmYxYTViYmRhZmRlMzBhNDcxMGQ5NmNlODkgbGVnYWN5LXRydW5rCisxMzMxNCBmMTY0ZDkxOTMzNDFjOWI0ZjA4ZTQzNjg0MWRiYzM0NmJlMGViMmQ2IGxlZ2FjeS10cnVuaworMTMzMTUgMGZlOGNmN2FjNmQ1YTM1NjQzOTQxNTE3NmYyZWVkZTQyOWI4Y2QzYiBsZWdhY3ktdHJ1bmsKKzEzMzE2IGRmYmUyNThlMjhjMTgxN2RhMjIyOTEwNzFhMjVmZThjYTdiNGIwMmEgbGVnYWN5LXRydW5rCisxMzMxNyA2ODc5OWEyMDI3NjZhMTQ0MWE3ZjE5YzQ2OTYzNTQ5ZjBkNmE4MDgxIGxlZ2FjeS10cnVuaworMTMzMTggZDczYTMyOTNjNDdiMmNkZjFlODVmN2QwMzhiNmNlOTJmODM1NmM4ZSBsZWdhY3ktdHJ1bmsKKzEzMzE5IDVhZDI3YWVlN2U1ODg2MWY2MjVmZTdlZDg2NzAwNjMzMjA0MWE0OTcgbGVnYWN5LXRydW5rCisxMzMyMCAyZmUwYmI4YjllZWY3OWJiZGFhMWI3NzUzMDFmYTAzMTE5MzcxY2ZmIGxlZ2FjeS10cnVuaworMTMzMjEgOGRlMTNjZWE5NjQxMTIyNjg4OWRhMGU4YjFkNWNiZjExMjQ5OWY0NiBsZWdhY3ktdHJ1bmsKKzEzMzIyIDMzMWM4NWFjYTE5NTcyYzJmNTkzY2IwNTQxODI4YWMzNDYzY2Y1MzAgbGVnYWN5LXRydW5rCisxMzMyMyBjMTJmN2NmMTkyZmIzMzg2MDk4Yjg2MWM1OTljM2UzZTMwNGZkZmI3IGxlZ2FjeS10cnVuaworMTMzMjQgZDI2YTlmOTI1NGYxNGRjMzE3OTY2MDQ2OTE4NTVjNWQ0ZmVhMjQwOCBsZWdhY3ktdHJ1bmsKKzEzMzI1IGViN2E2MmFjZGQxZGM1YjRmODNkZTRkOGQzNGVlMTM4NTQzYTBiM2UgbGVnYWN5LXRydW5rCisxMzMyNiA1ZTAzZWE2OTI3ZjIwNmY1NjAwOTIzNGJkMTJiYzE1YWUxOGM4ZTQ1IGxlZ2FjeS10cnVuaworMTMzMjcgZGZiNWZkYTNiMjczYWQ3NGNhY2ZmZGRlMmMwOGZiNDgyYjkyNjgxYSBsZWdhY3ktdHJ1bmsKKzEzMzI4IGQzYzZlOWExMjZiMjlmYWM2ZDc4ZjI3YjdjNzNkZDI0YmUzYjcwMTkgbGVnYWN5LXRydW5rCisxMzMyOSA0OWEwYjhkY2IzNmE0ZTI2OTI4YTI2ZDE2MGIyZjA5Y2M5MWJjZmZjIGxlZ2FjeS10cnVuaworMTMzMzAgMGJjN2M1MDJlYjRkMmVjYzNhOTY4NmY0Y2U5OWYyODRiMDhhYzFmMyBsZWdhY3ktdHJ1bmsKKzEzMzMxIDk2Mzg5ZjBiNWVmMDg2YjRmMzhmM2NhNzZmYjBiZTI0NzY5ZWVkNTcgbGVnYWN5LXRydW5rCisxMzMzMiBmZTViN2RlYTVhMTBmZmFkYzI3M2RlYWVhODQzMTIyZDMwMWIxY2VmIGxlZ2FjeS10cnVuaworMTMzMzMgZWE4MzJjM2M2ZTZkYTI2M2E0OGNiNDM4MDA5YTY5OGY5ZTBiM2U5MCBsZWdhY3ktdHJ1bmsKKzEzMzM0IDJhMzBlZDkxMTJjNjFkNTljOWEwZGFjMWU5MTY0YjA5MmE4OTY2ZjkgbGVnYWN5LXRydW5rCisxMzMzNSA2OWQ4OWY3ZjUzMGM1Yzc5ZTk1N2YzZjRmNTgxZWY2ZTJjOGEyZWYyIGxlZ2FjeS10cnVuaworMTMzMzYgMzkxYTljYjJiMDcyOWY3MmEwMTU3YmNhODg5ZmJiMjZmZDVjZWMxZCBsZWdhY3ktdHJ1bmsKKzEzMzM3IDAwMzQ0ZGJmMmE2MDUyOTQ5ZWY1ODg4YzdiNDdhNDUwMDkzMTM0NmIgbGVnYWN5LXRydW5rCisxMzMzOCA2NWRiNWUyNjI5OGYyNjZkOGFiNDlhZTAzNGVjNzJjYmNiNzgyMWI3IGxlZ2FjeS10cnVuaworMTMzMzkgYWFlMTRjNjE4MWI5ZDg4ZDVkYzM5ZGQ1YTkzOWU2MGQ1YjJmNmEzNyBsZWdhY3ktdHJ1bmsKKzEzMzQwIDEzNWMxZWM5NjM2YzY4NmEyMGQwM2VkMjc3YTM1MzgyNGM5NzQyNGEgbGVnYWN5LXRydW5rCisxMzM0MSA1NTgxMzA3ZGIyZjczN2U2YTM4ZTJkNWM3MTM0MTRiZTIxMDZlOTFiIGxlZ2FjeS10cnVuaworMTMzNDIgZTY1MjQzNDZkNjZjYzE4NTliOWQ1OTZlNDAwOTM1MDc3ODE5ZmVhZSBsZWdhY3ktdHJ1bmsKKzEzMzQzIGVmZDE1NzNhNGIwM2IyMmRhMmExMDdlZGY3ZjAxMjUzNjQ5M2VjNDUgbGVnYWN5LXRydW5rCisxMzM0NCAwYmYzMDE5NDFlZmQ4YzUzMzU3ZmFjMTRhNDllNzFhNGUyYzkxM2FkIGxlZ2FjeS10cnVuaworMTMzNDUgOGZkYWM0MDI1MDMyNWY4OWJlN2U5NmQyM2QyMGNlYTFjNmJjNmMyMSBsZWdhY3ktdHJ1bmsKKzEzMzQ2IDg0YTRlY2QyY2I5NTM4MjQ4NmRkZTNlYmEwNDU2YWU4ODRiOGVlZWQgbGVnYWN5LXRydW5rCisxMzM0NyBhZWU3NGU5NzdhZGQwZmY3YTBhYmE3MjI5ZDA1NGFlYmE0Y2U1NzI2IGxlZ2FjeS10cnVuaworMTMzNDggZmE2YmUxZDBiODY0NWEzM2ZlNWI1YjMxZmM5NjllMDE5NjM2Y2M2MSBsZWdhY3ktdHJ1bmsKKzEzMzQ5IDM1MmU1ODI0ZWRhNjY2MGE0MTE0OGZjZWRmMzA0NjJiOWM0NjQyZDAgbGVnYWN5LXRydW5rCisxMzM1MCBlMWI4NmVmNDU1N2M1NzU5MmZhYmE5ZTkwNWY3NTM3ZTZkMmQ0ZjQxIGxlZ2FjeS10cnVuaworMTMzNTEgY2RmN2FlNWIzMzY3ZWVlNmU0ZGEyNDRlM2Q2NzA1ODJlYjk3OTc5ZCBsZWdhY3ktdHJ1bmsKKzEzMzUyIDVlZjRiM2NhNTU2NDU3MTJmNTYzZGZjMzJhNGIyNWE2OTMwYWNhNjcgbGVnYWN5LXRydW5rCisxMzM1MyBiNzM3OGRmM2RiNTZkNzA0MzE2MjdjMTdkOWJhYmNhY2JkOTE3ZjJiIGxlZ2FjeS10cnVuaworMTMzNTQgYzdhYTk5NjU4MzgzZjI3ZmIyNDJlNTY1YTI3OTg3YzFlM2MwNzM1MiBsZWdhY3ktdHJ1bmsKKzEzMzU1IGQ3OGNjMjY3NmM1NTFiNjcxODc0MDQzMmVmM2MzNzcxM2M5ZTk1Y2EgbGVnYWN5LXRydW5rCisxMzM1NiA0ZGE3NmY4MzhhNWU0ZWQ1YzNlM2IzMzE2YTNiMzZjNjkwZDI3MDIzIGxlZ2FjeS10cnVuaworMTMzNTcgYTE0MTVlY2VhMjNkNGEzMjFkNzFkYWRjNjU2MjQwOTU0MWJjYjcyNyBsZWdhY3ktdHJ1bmsKKzEzMzU4IGZjYjI1MzM1ZDZhZWRmMmMxZTVlZDlhOWUxNmM5YmZkNjAwYjM3NzUgbGVnYWN5LXRydW5rCisxMzM1OSBiMjdhZDUwOWI0NGIzNTAyNTY2MzljNTI5ODAwYzY3OGZiMzQxN2ZmIGxlZ2FjeS10cnVuaworMTMzNjAgZTJmZTY1ZTg3NzYxYjg4MGM0MGJmYzZlNzZkOTk1ZWM1OGI1MGY1ZCBsZWdhY3ktdHJ1bmsKKzEzMzYxIGYyZTEyM2FmMmFkYTQ0NzEzYTdjNGE2NDgwMWRkMjJjYmZjZGJhM2IgbGVnYWN5LXRydW5rCisxMzM2MiAyODg4N2Y0MGUzNDQyZTBiNTFkNDQ5MGE3MTI1MTY3NDczMTY3MGQzIGxlZ2FjeS10cnVuaworMTMzNjMgYmUwYWM1YWJlODNiN2I2YWI3ODFlZTJjZWJkMWNhZTY2NGYyNjNiZSBsZWdhY3ktdHJ1bmsKKzEzMzY0IDFhYTgwZjViZjlhYzkxZDNjMDEyYmQ2YWFiNzRjOTFjM2NiOTAyOTYgbGVnYWN5LXRydW5rCisxMzM2NSA4MjAyZjVhY2UyNDg0OWFmNzUxZjNiMWU5YTk0MDk5MzVkN2M3NzBmIGxlZ2FjeS10cnVuaworMTMzNjYgZTc1MjUwZTU1NDI0ZjQxZDk0OGI2NjEzMGI1MzQ4NjAyODQ0MTdhOSBsZWdhY3ktdHJ1bmsKKzEzMzY3IGNmZTQ3MjkxMmI3ZjhiMDI4MmU3NGRhOGU0Y2IwN2E0OWQyMzg1ZDAgbGVnYWN5LXRydW5rCisxMzM2OCA5YTNhMDQ2OGY1MWM3Zjk3ZmIzNDIyZTlkYzA3ZDc4ZjdlYmQ5NDBlIGxlZ2FjeS10cnVuaworMTMzNjkgNGY1ZDQ5NDU2MDVjNjdkMzRjNzU5YzdhOWU4MjU3YmUzNTEzYzZmOCBsZWdhY3ktdHJ1bmsKKzEzMzcwIGY3YjQxYjI3MDU1NDgyMTgzZGMyZmRiZmI4NmY0ZmExY2YzZjlhYWYgbGVnYWN5LXRydW5rCisxMzM3MSBjZDJhMjViN2I0Mzg1OGU1ODUzZmFiOWRlNGQ3YmNlZGU3YzFiN2NlIGxlZ2FjeS10cnVuaworMTMzNzIgM2VkYjMyOTgyMzRjZDBiMThlMmM0NDdlNTlkZGY2ZGQ5NzI0NmM3NCBsZWdhY3ktdHJ1bmsKKzEzMzczIDI1MTM4ZGIzNWNlMWVkZTdkN2YxZGZlZGE4ZWEwMzlkZWUyZWYzZTEgbGVnYWN5LXRydW5rCisxMzM3NCBiYmMyYTg3ODk0ZDA4MjkzMWYwN2EyMDE3NjIwN2U4ZGRmYWVmZTJkIGxlZ2FjeS10cnVuaworMTMzNzUgN2QxMTgyZDBjNDE5M2VhMTE4ZWVmYjExZjA2MzZmNjFkYTZmZTQ3OCBsZWdhY3ktdHJ1bmsKKzEzMzc2IGZmZmY2NjVmOGE3YmYyOWVmZjU1NjE2NWEyMzZiODU1OGE3ZThkMGEgbGVnYWN5LXRydW5rCisxMzM3NyA1YzVhZTE2MWYyOGFjMDQwNmI5YjNjZWQxMzM4MTI3YWEyMGExNTg0IGxlZ2FjeS10cnVuaworMTMzNzggNzU1MGEzNWQ4MGY5YmFmZmNiYWFhMjhiOWEyOTk1MWRiYWZjMDIzNSBsZWdhY3ktdHJ1bmsKKzEzMzc5IGE1NjM3OTIwMDA3NzBlMTYwOWIzY2Q3N2ZhZGM1ZTllNDU0ZTkyYzAgbGVnYWN5LXRydW5rCisxMzM4MCA5ODY4YzgwNzczMmQ1ODcwOGQ2NTAzMzYzOTQ2MzI4ZDI4MzkwZTJjIGxlZ2FjeS10cnVuaworMTMzODEgODYzNGVhMmVjNGUyZmRjMmE3MGQ1NGRmMTZmZjc0ODM1YmU0NjRkZCBsZWdhY3ktdHJ1bmsKKzEzMzgyIDE4MjFlNjRlMDhmY2VkYThmYzI4ZTEwZDEyZDhkMGFmOGI0NWRjNDMgbGVnYWN5LXRydW5rCisxMzM4MyAxN2FlMTc4YTMwMzg4YzRjZDFmMDNlNmYwNzQwMTMzNjY0NDYyNTM2IGxlZ2FjeS10cnVuaworMTMzODQgMjY2OWFjN2NkNzZhOTZmODcxMzIwZWJmOTI3ZWY5YjAzNjEyYTQwYSBsZWdhY3ktdHJ1bmsKKzEzMzg1IGI5ZWY0MjQxNjVkNjI1M2QyYmQ1ZmQ0NjA4MzY0YWY3MjlhMjc0MzMgbGVnYWN5LXRydW5rCisxMzM4NiA1MDIwYmZhNzQyZWFhNzUxMWM2MDg1MTU4NmQ2MTgwMGNkZDRmZDMzIGxlZ2FjeS10cnVuaworMTMzODcgZjg4ZDNhNzYzNzIzZDViYTBiZTc1OTljZGEzZmZiY2U2MGI2NmVhYSBsZWdhY3ktdHJ1bmsKKzEzMzg4IDgzOGNiMzRhYmI3OTE5YzM0MmYyNDNhOTYwMzI4YjM2NjBkMGFmZGQgbGVnYWN5LXRydW5rCisxMzM4OSAwNmRlZjgwNDJkOGUxNmZhMDEwNjU1YTA3YmVjMDE2YTUzMzQxYTViIGxlZ2FjeS10cnVuaworMTMzOTAgYzIwOWRkOThiODY5NTI1YTFkZGY5ODhiNjdmMzAzZTE5NjE2OGVhZiBsZWdhY3ktdHJ1bmsKKzEzMzkxIGYwMzE4YTFjOTg5MmNiNTcyN2Y4NmQxMjdlMzk5MmZmMmE2Yzk3MmEgbGVnYWN5LXRydW5rCisxMzM5MiA2MmVkMzJlNzliNWQyOTYyNDYzMzQwN2QwZGNhMzM5NDI0ZWNkYWRhIGxlZ2FjeS10cnVuaworMTMzOTMgODIyYzUyODJjMTQ1Njk3ODk3NTU3ZTc1NGJkZjkwYjI1ZmQ1MTlhOCBsZWdhY3ktdHJ1bmsKKzEzMzk0IGFmMDczODljODUxNzVmYmE1OTQ4MTU3MDJmZDZiZjJiMmRkYmI4MzQgbGVnYWN5LXRydW5rCisxMzM5NSBiYTZkM2FlM2EwMjE0N2EyMTZmYWU4MDcxMzc3ZDljMzA3YmRkODgxIGxlZ2FjeS10cnVuaworMTMzOTYgYTYyOGMzNzA1ODk3YWNlYmE2Zjg0YjEyMDI3MzdjNGU1MzUyY2MxOSBsZWdhY3ktdHJ1bmsKKzEzMzk3IDYzMmI2NzA1YmQ5ZmFkZDYwM2QxNDkwZmFjYjQwNDhhZTNjN2RhMGIgbGVnYWN5LXRydW5rCisxMzM5OCBiODEzNjU2NmNhZjVjMDBlMDc5NWQ4YjNkNWQ1OWU3YTQzNmI1NTdmIGxlZ2FjeS10cnVuaworMTMzOTkgNjc4Mzg0MmMxMDQyNDVjMDM2ZDNkOWJmMTEwODE3YTIxYzRjYjcyMSBsZWdhY3ktdHJ1bmsKKzEzNDAwIGQzOGQzYjhlYTQ2M2JmY2YxZWIwOTRkYzY1YThlNWEzOWI0YjYzZjQgbGVnYWN5LXRydW5rCisxMzQwMSBlMTgzYmMwMDQ5ZGNkZGMwMDM2NWU1OWEwODEzYzhiNDY5NzAzM2ZkIGxlZ2FjeS10cnVuaworMTM0MDIgNzQ4Njc5NmZhZTViOTQ0NWZkYmNjYjc5NTljNmUxYjViNWZlZDU1NCBsZWdhY3ktdHJ1bmsKKzEzNDAzIDgxN2QwNTM4MzUwZDMzNjQ0NzEwMGMzYjFjYzc5NzdhMDAxNmM0M2IgbGVnYWN5LXRydW5rCisxMzQwNCAzZTQxOWFiYzViYWFkY2ZiMTA5M2ZiODgyYmE1NjA1MDZiMDE2ODViIGxlZ2FjeS10cnVuaworMTM0MDUgOTU4MzdlMjczMjU3NTlkMjM0Mjc4YWQyZmVkYzk3MjhmN2Q0MDU3OSBsZWdhY3ktdHJ1bmsKKzEzNDA2IDg1Y2Y0OWE5YjAwYmNlZTczZmExNzQ3NzViNDYyNGI5NjcxOWZjMWYgbGVnYWN5LXRydW5rCisxMzQwNyBhNTllOTVkMmYxODEwYjQzNjY5NzQyN2ViYzdiZDU1M2ZhMjFlOWQ4IGxlZ2FjeS10cnVuaworMTM0MDggMTdjYTJmNjRiNmQ2NzE3Yjc4OGNlZGNiYjI0NDg1ZTA4NGJiYzRlMSBsZWdhY3ktdHJ1bmsKKzEzNDA5IDdlNTZkMzlkMDc0MTE0MzI2YzY5Y2E4MmZjMTAxYWIzYTNjZDgxZmEgbGVnYWN5LXRydW5rCisxMzQxMCBmMGEyMjEzNDQ0YTA0OTQ1ZDVkMzhmOGI1ZDFiNzhhMmFmYjdlOTU5IGxlZ2FjeS10cnVuaworMTM0MTEgOTU3YzMzNTA0Y2MxMjRkYWY3MWFmYmFmZGYyZWZkYmU5OTlkNTk5MCBsZWdhY3ktdHJ1bmsKKzEzNDEyIGQzMTc0MzIwZTNjZWM5YmVhZDU5OTIzYWIzMzBkYjI5NTgwMDU5NzkgbGVnYWN5LXRydW5rCisxMzQxMyBmNGM2Y2U1NTkzYjlkNjBkOGJkZjYyYTZjNDhjMTUyOWIxOGNjYTYxIGxlZ2FjeS10cnVuaworMTM0MTQgYzI0NTE2MTQ2ODVhYzRkOGViNjQ4NmQ4NWVhNTRmYTM1YWQ2YmExOCBsZWdhY3ktdHJ1bmsKKzEzNDE1IDI5ZTk2Mjc1YTQyZGNiNzk1ZDU1ZWU4M2M5NTgwMzIwMjdkYjUyZTAgbGVnYWN5LXRydW5rCisxMzQxNiA4YTMxMDk3NDBjNmFmZjBlNDVhNWMwMzg2N2NmYWE1YjA1ZDhhNWYzIGxlZ2FjeS10cnVuaworMTM0MTcgZDgzYTRhYTcwZWI0MjhkMjJkOTNkY2FiODE2ZTg4NDkyMWYzNDBjZiBsZWdhY3ktdHJ1bmsKKzEzNDE4IGNmYWM4M2Y1YzBlZmE0NzJjMTM2Nzc4YTg1ODNhZjM5OGYzZjk1ODUgbGVnYWN5LXRydW5rCisxMzQxOSBiMWExZWIzMzQ5ZjM3YWQxYjYzOGJlMzRlMGU5MmM1MTRlNzRlYTk0IGxlZ2FjeS10cnVuaworMTM0MjAgZDFiNGZkMDU3YjRhNjM0ZWM0YWFhOGU4NTU2NjVjMjRlOGRmOGFlYiBsZWdhY3ktdHJ1bmsKKzEzNDIxIDNmZGYxYzdkOWY5ODhmOWU5MWIwNDcxOTc0NmZkYmNiMzI1Y2NjMmIgbGVnYWN5LXRydW5rCisxMzQyMiBiYTc5NzE3OWUyYmE2MzkwYTVmYjIxYzRlZmRkNTQ0YTg3ZThjM2UzIGxlZ2FjeS10cnVuaworMTM0MjMgYjc1ZDAxMTllZDUxYTA3YjhjYmI2MDNkMjNmYmQxMWJmNzZiMmFhMiBsZWdhY3ktdHJ1bmsKKzEzNDI0IDZiMWNiODU4MmExZjkyYmNjNjc0M2M2YWU0YmY5YTRkMDRmYzAwYjkgbGVnYWN5LXRydW5rCisxMzQyNSBhOGExZWI5OTM0MWMyMWI4ZTYxMjI5NWI1ZDkzODliNjA1OWZjMjBmIGxlZ2FjeS10cnVuaworMTM0MjYgYmRkNmIwOWEzNzFjNDBkYWRkYTg2ZWE5OGZiNWJiYTk3MGE0ZGJkYiBsZWdhY3ktdHJ1bmsKKzEzNDI3IDNmYWE2MzQzMDkyNDZmNjQzNWU3NmY4ZjNjNGY2ZmZkMjQyMmZjYjIgbGVnYWN5LXRydW5rCisxMzQyOCA5YzQwMzQ4ODc1NTcyOTEzN2ExNjczMzFhZmRlMmVlMTRjYWJkNWUwIGxlZ2FjeS10cnVuaworMTM0MjkgMWM1NTJkY2Q0M2Y5NzVjZDg4YzkxYWJiZGI5NGZkMDljYTI4ZDMzNCBsZWdhY3ktdHJ1bmsKKzEzNDMwIDgyMzRiYjM2ZmI4YzM1ZjkwMzk4ODRmMTNlYmVjNmQwODk2NjU2ZGMgbGVnYWN5LXRydW5rCisxMzQzMSA1MjU5NzAzZjRiNWMwMjAyMjU1NGU0NmM1NTY3MmViMWVhNTIyYjU4IGxlZ2FjeS10cnVuaworMTM0MzIgYjM1YmFiNDU3MzUwYjUwYWE1ZjE5NjkxMTE0MzRkNzFhZWRlNTY4MiBsZWdhY3ktdHJ1bmsKKzEzNDMzIGY5YzAzYjNkMGYxNDZlOTE4MTYyYzg1YTQzYWVhYmZkNjhlMjNiZmQgbGVnYWN5LXRydW5rCisxMzQzNCBlNDEwNDlhYzgyOGI0OWMwNmRhODNmNWZlY2M3ZDdhYmMwZGJhOTQ4IGxlZ2FjeS10cnVuaworMTM0MzUgNWVkOWEyZGQxOGQ5ZTZmOGEwNWVjM2FlYTU3OTNmZTliYjQ3YTQ5MCBsZWdhY3ktdHJ1bmsKKzEzNDM2IDg0ZjFjYmUwMDk0MzM1YWU2ZTVhZDA1MDg1NDMzNTliYzIwMDY0MWMgbGVnYWN5LXRydW5rCisxMzQzNyA0NTFiMDg0OWM5NzcyNWRiZWMxMDc0OGU4ZDA0ZjM1NzJiNjFmY2JhIGxlZ2FjeS10cnVuaworMTM0MzggMThhMjkyMTlmNWUwNmY0ZGNlNWExYTYyMWIwYzllODVmN2QwNDE1NCBsZWdhY3ktdHJ1bmsKKzEzNDM5IDUwYzNiM2MyMTdhMzllNDZhN2FmNTQ3NDRiNGQ4NmIyZmFlZGMwMTAgbGVnYWN5LXRydW5rCisxMzQ0MCBjYzZhYmM5OWQyZGRmMTQxNDE4NGM4ODAwOTE5YzE0MDljYjRhZGQ3IGxlZ2FjeS10cnVuaworMTM0NDEgYzA4OTAyMGE3YTFlNTc2NWZmOThiNThkZjhlNDE1MGI5MjA1N2FlYiBsZWdhY3ktdHJ1bmsKKzEzNDQyIGRjY2JmNWU4Mjk0ZGQ5MWY2ZmUzYTIzYjRkNTFiMDBjOWE4MDQ3MTQgbGVnYWN5LXRydW5rCisxMzQ0MyA4NDE2NTUzYzMzZGYxN2ZmMmJiNzk1MTc1NGJjNTJmN2E4NGNmNzc2IGxlZ2FjeS10cnVuaworMTM0NDQgZThmZjRiMTI5OGMyMzNkMmY1NWQzZTI5ZTNiZjQ3MWM1N2NiOWE1ZiBsZWdhY3ktdHJ1bmsKKzEzNDQ1IGFmNzY1MzhkZDA3OWQyNGYwZDY3ODFiNDE0MGE4MWY3YTA2NzJlMjAgbGVnYWN5LXRydW5rCisxMzQ0NiA3MTI4YzBmZDJiY2Y1MjRlNzQzZjQ1YzFiNzI3MDI1MDhlOTMwNzIyIGxlZ2FjeS10cnVuaworMTM0NDcgOGNjMGM4OThmNmE3NDc4M2QxODMxZTQ4MDJjZTNhNGI5YjA3MDIyNiBsZWdhY3ktdHJ1bmsKKzEzNDQ4IGU3ZWFlNjNlOGI5MDc3OTA0OWU1ZjhlMTNhZjc4ODgwMGM2OGRmZGUgbGVnYWN5LXRydW5rCisxMzQ0OSBkOTc2NDUxYjQ2NWYyMTJiODI0ZGU3MGMwZDQ5N2U2MTM1NzBhNjg2IGxlZ2FjeS10cnVuaworMTM0NTAgNmVlNjZmZTE3OWFkNzJlMGIwNTJiYjM5NGJkNWNiOGJkZTc1NjI4YyBsZWdhY3ktdHJ1bmsKKzEzNDUxIDM1ZDViMDczNjI0MjI2MjFiZTg2NDk1OGFkMjFmOTUzMWU3YzQ4ZGIgbGVnYWN5LXRydW5rCisxMzQ1MiBiZjZhMDk4Mzk1MWRkZGQ5YTFhOTM2OWM5NDQyNGE5OGUyMmFiNjYyIGxlZ2FjeS10cnVuaworMTM0NTMgMWFiYzI3ODViMzQ0NmMwYmY4OGM2NzU3OTU0ZmE3MWNhMzI0ZDQ3MCBsZWdhY3ktdHJ1bmsKKzEzNDU0IDM4NDI1MThjZjgwMzAxMmNlNTBkM2Y5OGFmY2UzYzNmOTZmMjMxNTUgbGVnYWN5LXRydW5rCisxMzQ1NSBiOTI4ZjdiOWRmYTIzZDNmZWQ0NmMzYzIyODYzMDY4YjMwMTA0ODA1IGxlZ2FjeS10cnVuaworMTM0NTYgMDM1MzBlYTIxNDhjODU4NDY1MGE0OGJiYTdmMDJjNTdmYmY3YzJiNSBsZWdhY3ktdHJ1bmsKKzEzNDU3IDBmYzJlODU3ZTgyMjg1MDM4NzAyZDM5NGZiODk5YWIwOGYxMzIxY2YgbGVnYWN5LXRydW5rCisxMzQ1OCBiNmQzZDE3MTk1ZGNiYTg2NTU1NmExMjk1ZTFmMWFmNmY0YjZkOWFkIGxlZ2FjeS10cnVuaworMTM0NTkgMzE3MTFhMDU4NzM4MjM2OGYxZGQ4NGJhZWZjMjhmY2ExNDFiZTA5YyBsZWdhY3ktdHJ1bmsKKzEzNDYwIGUwNTBkNGMwMTMyN2NkOWM2ZjViMTI5NDMzOGU1YzdmMTZlZGExNjUgbGVnYWN5LXRydW5rCisxMzQ2MSA0ZDc2Y2FiYmY5OWU2NTU4MGIxMmNkODUwNGU1ZjU2NDA5MGI4OTJjIGxlZ2FjeS10cnVuaworMTM0NjIgNDI5NDBlZDIyY2ViZDc4YjA3NWUxMmVhZGVhYTcwODI4MzkxMGIzNSBsZWdhY3ktdHJ1bmsKKzEzNDYzIDY2Njg5YjJkYzg5NTRiNWM3M2FhYjIzODUwNDA1MWI0N2YwNmYzYTggbGVnYWN5LXRydW5rCisxMzQ2NCBiZGMxNzAzZmY5MmNlN2Y1MjRiZWQwZTJjZmFiYjgyNDcwNTBlNjA2IGxlZ2FjeS10cnVuaworMTM0NjUgYzc3OTAyNTQxYjEzYTU3ZGMxMDg4NDE2NmUwOTE0Nzc2MDBmZWI5OCBsZWdhY3ktdHJ1bmsKKzEzNDY2IGJiYjAzODY4ZjIxYjYyNzEyN2VmN2MxMWI5YTI3ZmUyOTczZjViMDQgbGVnYWN5LXRydW5rCisxMzQ2NyBhYTMyNzZlNWRjY2Y1YjIyMTEzNjNlYWIxMGI3ZDNhNjM1N2MxODU5IGxlZ2FjeS10cnVuaworMTM0NjggMzZmYTgzNTJkMDM4ODE2NzgwMzQxOGEzZGE3OTkyYjYzNjQ2ZTAwNCBsZWdhY3ktdHJ1bmsKKzEzNDY5IDRkYzllZWUyNjE1NzE0NTY3Y2IxYTFlODcwZGU2NjRiMjNjNTQwZmEgbGVnYWN5LXRydW5rCisxMzQ3MCAyYjlhZjlkN2RhMmQ4YTdlYjQ1YWY4MTVjMzM3ZTRkZjQzNzU1NjI1IGxlZ2FjeS10cnVuaworMTM0NzEgZGEyMzYwNDRjZjZjOGE5ODJmYzI4M2U4MDRhOGU1ZTVkY2JlMTI4NyBsZWdhY3ktdHJ1bmsKKzEzNDcyIDMwOWQ4Y2Y4M2ExMTc5ODJhMTcxM2MyMGRlZTM5YWNkMGNhMWUzODMgbGVnYWN5LXRydW5rCisxMzQ3NCA1MGU3ZWIyMGJiMWQ1MWJhNTY5MjY1MzYxZDQ2ZDU5NzNkZTdlMmE4IHN0cmluZ19tZXRob2RzCisxMzQ3NSAyNTkyMzdiMjViOTM1ZjlkNzg0MzVjMjA5MWY0NjY2YjBhNDA2MmJmIGxlZ2FjeS10cnVuaworMTM0NzYgNzBjZjEzNjA5YWVkNjhhM2VhOWY5NmVkOWM4NDM4MGM2MDNkNDNjZiBsZWdhY3ktdHJ1bmsKKzEzNDc3IGZiYjRlZGI3MjAyY2M1ZTFmZTY1M2FiNWFjMWQwZWFhM2UwYzU0Yzggc3RyaW5nX21ldGhvZHMKKzEzNDc4IDViYTJlNGNlNThjYjRiYWFkMzUyYjI5NThiOTQxMWRmZDE5OTBmMGQgbGVnYWN5LXRydW5rCisxMzQ3OSA1NDgwOTIxYWU3ZjNmZWU2OWQ2NmU1ODQyMDg5YjZjNTk5MjE1MzA1IHN0cmluZ19tZXRob2RzCisxMzQ4MCA5ZDcxYzJjM2E2NzU2ZjI2ZTM0ZjQ2Y2ZjMzJkMTg4M2NmNTY0ZmFiIHN0cmluZ19tZXRob2RzCisxMzQ4MSBlMTQwN2Q2MzIwY2JiN2MxMDJmMzdmMmY5ODM0N2ViMDY2MzJjMDlhIGxlZ2FjeS10cnVuaworMTM0ODIgNmZmYzlkOGRjNWI5ODZhODgyOTExOTRiZDZiNzA4YmQxYjZjODc2OCBsZWdhY3ktdHJ1bmsKKzEzNDgzIDE3YzRkYmQzNmU2Nzc2NDQ4NDVhNTExOGEzZTNlZjc3MjU5ODllZmQgc3RyaW5nX21ldGhvZHMKKzEzNDg0IDc4Y2VmNTY3NmNjZjYxMmVmYTdkYTA3NzQ3YTRmMzg3YTk3N2I5ZDYgc3RyaW5nX21ldGhvZHMKKzEzNDg1IGFlODUwODEzY2I3YjQ4Y2M5NDNkYzYxNDg0MWUxZTJmOWNkZGNkZTMgc3RyaW5nX21ldGhvZHMKKzEzNDg2IGZmMGU1NzZlNzU4YTdiNGU4NWY0NTlmZmE1M2NhYTRhZmQxOTRjOTYgc3RyaW5nX21ldGhvZHMKKzEzNDg3IDFkY2M5NTZmY2U2NDlmNGY0YWVmZmI3YTJmYTQ4NzQwMTU1MzBlNzMgc3RyaW5nX21ldGhvZHMKKzEzNDg4IGVlZDVlYjViOWQ0ZjU5Y2YwMzg2ZjdmNGFkZWJjYjlmMzA2YWIwZTYgc3RyaW5nX21ldGhvZHMKKzEzNDg5IGRkZDIxNjAwM2JkMTg3MWQzNjQ1ZjI1OWEzYzY5NGNiYmQ5YzZlNjkgbGVnYWN5LXRydW5rCisxMzQ5MCBjYmJmMjk3YWVhN2E5Mzc5N2I4ZmQ5YWMxYjRmOTViMGMyYjM3MDMxIGxlZ2FjeS10cnVuaworMTM0OTEgYjJkNjlmNzUxMzgzOWE0NTMyOTlkNWQxMzg0MTkxY2NlM2UzYTA1ZiBsZWdhY3ktdHJ1bmsKKzEzNDkyIGVjNmM4YWQ5ODM0MTA3OTQ2M2FmOWY2Mzg0MDM4MTU0ZGE5MDA5Y2Igc3RyaW5nX21ldGhvZHMKKzEzNDkzIDUxOTY5ZmQ3M2M0YTdlN2NjYjY2MWE1Y2E1Mjc4N2ExY2M5NjY0NWUgbGVnYWN5LXRydW5rCisxMzQ5NCAyZWMwNGZmMmI5YjczMmY5NTI5ZGI4MWU1OTQzNjdhZGMzZmFmYzgwIGxlZ2FjeS10cnVuaworMTM0OTUgY2ZlZDI5NDkzZWQ2NTYxY2JlYWIxNzk2NTkzZTVjNmExYTA2NjIzOCBzdHJpbmdfbWV0aG9kcworMTM0OTYgMGYwYTY2YzFkZWFjYTI2ODhhZTRmNDRlZTY4MjIyOTZmNjk5OTc2NCBsZWdhY3ktdHJ1bmsKKzEzNDk3IDBmMjI5MmY1N2E4MzE3NDM2NjkyMGJhOWM1NzU3ODBiMGU5OTI0MGQgbGVnYWN5LXRydW5rCisxMzQ5OCA5NWQ3ODI4MTU5MDFkOGJhZTU2NTgyMmZmZjcwZmYxYzVjNTBkNWNmIGxlZ2FjeS10cnVuaworMTM0OTkgYjJmYmQ5YTVhMWI1NWMxMzJkNzI2ZDcwZWQyMGYxNmE5YmVkZTc2OCBsZWdhY3ktdHJ1bmsKKzEzNTAwIGFlOTZiMWExMjhmOGMxNjk4YTEyOTUxNmMyYmMzZDc5YmM5ODYyZTEgbGVnYWN5LXRydW5rCisxMzUwMSBmOTBlZDk2NjMxNmU4YzY5NDIzOTdhZmQ5ZjYzMDM2MDYxMDhiYjFlIHN0cmluZ19tZXRob2RzCisxMzUwMiA0Yjk2OTI2NWI5ZDIxYmNjYTg2MmQ0ODZmNWY3ZjBlMmM3NWQ1NWVkIHN0cmluZ19tZXRob2RzCisxMzUwMyA3MTEzODAzNzJiYzkxOGEyZmYwZDY5NTU5YWMwM2FlMmQ2ZmJiNDg5IHN0cmluZ19tZXRob2RzCisxMzUwNCAxN2VjMDkwMmVhZmEwNmNkNzQwY2MzNjIwYzdiZDViOTE1NjA3NzNmIGxlZ2FjeS10cnVuaworMTM1MDUgYmVmNDZlYTVlZjc1YzA0YzRkYzY1ZDM1NjJjYTg4Yzg0MmIzMGVkMSBsZWdhY3ktdHJ1bmsKKzEzNTA2IDM5ZjI0MmJmNDYyMjgzNjg3NmEyNmUzZWRlY2I2ZjFiYzQ0YTk1YjkgbGVnYWN5LXRydW5rCisxMzUwNyAxZGNjYmVlYWY3NmFjZWY0MzZjMTA0MDZlOTk4Yjk3ZTE4OWVhOWE1IGxlZ2FjeS10cnVuaworMTM1MDggNjNiNTMwYzAzMGM1NGIwMWU3N2ZjNTFkMDk4NjdjZjJiYmQwMjk5NCBsZWdhY3ktdHJ1bmsKKzEzNTA5IGM3M2Y1Mzc2MmY5YjBmMmYxMTI1MGU3M2Y3YzFkYzY2YjhkZTQzNzUgbGVnYWN5LXRydW5rCisxMzUxMCBlMzlhOWYxMjkxNjMyNmQ1MmUzZjYxZDJmZTJkZGRiODg2MDZlZWE5IGxlZ2FjeS10cnVuaworMTM1MTEgN2ExMjdmMTk5MmQxOTc1ZGRlYjkwNGNkNzVlMTYwN2Y4MzMxOTIyMiBsZWdhY3ktdHJ1bmsKKzEzNTEyIDZjYWZhM2Q0ZTIyOWU4YjBmZjUwYjQ5ODY0NmNiYjMwZjYyZGQ5OWYgbGVnYWN5LXRydW5rCisxMzUxMyAxMzQ2MmNhNmQ5NDc1NWVhYmViOGVhYjE2ZDFjYmRlYzFjNzU5M2Q3IGxlZ2FjeS10cnVuaworMTM1MTQgNDA1MDk5NWE2NjM5YmI4ODJjZTY3NGE0YmVhMjI3YjNiYTUxN2JkZSBzdHJpbmdfbWV0aG9kcworMTM1MTUgM2MzNTEyNTVmMTczYWE5NzMyMTM0NDc3MjU1ZGQ4MGEyNTk0NjBhNiBzdHJpbmdfbWV0aG9kcworMTM1MTYgNDZhNTYxNzczMjJlYjA2YWE0OWIxOTFiMWJlNjE0MzhmNzUyMzczNyBsZWdhY3ktdHJ1bmsKKzEzNTE3IDg3ZDNmOTFlNDRkNGQ3YzRjZTUxMjYzZWVhYTliY2I4ODIwNTU1MWIgbGVnYWN5LXRydW5rCisxMzUxOCAzZTA1ZmNhYWFlZDIxOTIxOGViYTg2MTI3YTlkZGEyMDZkMzg3ZDU3IGxlZ2FjeS10cnVuaworMTM1MTkgNzA4NjI4YjZjMDRiZjIyZTRlNzAxOGMyYzYzNjdjOTZiYmIwMWZiNiBsZWdhY3ktdHJ1bmsKKzEzNTIwIDBkMTg2YzEwYTcwZTI0YmQ5Y2I0Nzk1NWViMjhiMmRkMzBlNjljNGIgbGVnYWN5LXRydW5rCisxMzUyMSA4NGFiMTRkODU3NjM0MzBjM2RjNTFjMzcyM2NiZWI4MTQ0M2U2ZTAwIGxlZ2FjeS10cnVuaworMTM1MjIgZTY4ZTYwNmMxMzBmNTFhZTkwYWI4NTc1OWQ1Zjc0MDNmNGI0ZTdlNCBsZWdhY3ktdHJ1bmsKKzEzNTIzIDY5NjE1ZDUwZjU4YzAwNWQyZGY1OWYzNGNlNzRjYjFmNGE2OTY4ZTQgbGVnYWN5LXRydW5rCisxMzUyNCA4YTRmYzRkYTc2OGQ4ZWNjZWQ2YTM4MjE1Y2QyNDZkZjk3ZWQ2ZGNjIGxlZ2FjeS10cnVuaworMTM1MjUgZmNhYzY0MzJhN2RmYjNmNTE5NzhiNWUxZGY3Y2Y0MjRkYTdlZjE2NyBsZWdhY3ktdHJ1bmsKKzEzNTI2IDkyNmNiNWE1ZWUzMDkzMzU5N2UwOThhYTgyYTA5ZDExYzZiNWE3YjIgbGVnYWN5LXRydW5rCisxMzUyNyBlNTI3MjNhZjNjZDVlNmYxMGVkOTVkZWY4YjRkOTg0YmQ3OTNmYTFlIGxlZ2FjeS10cnVuaworMTM1MjggMDg2YjJiYzc1NzhmOWVmMmM1YzVjMDM2MDQzZWM5YjQ2NGM0YWIxNCBsZWdhY3ktdHJ1bmsKKzEzNTI5IDhjMTE0ZWRlMDU2ODYxZGQ1ZTI1YmEzMTE5YmY0YjZjM2Y5N2I0MDQgbGVnYWN5LXRydW5rCisxMzUzMCBjOGVkNWExNDQ4OGRlNmQzMjRkMTY3YTE1Y2IxZGNjZmM1MDJiOGQ1IGxlZ2FjeS10cnVuaworMTM1MzEgMDg3MmRhM2YzZjU2MTIxMDlmYzA2MzFmN2UyMGU2ODc1MTI5N2IxMiBsZWdhY3ktdHJ1bmsKKzEzNTMyIGI5ZjU1Y2MxMGFiM2YxMGFhNGI0NTM0ZTlkNzIwOTA2NWNlNDc2OTIgbGVnYWN5LXRydW5rCisxMzUzMyA0ODE4Y2I4ZTExMTAxZGY0MDBkN2I3ZTc3ZDMyYzI2MGIxNWE5ZDY2IGxlZ2FjeS10cnVuaworMTM1MzQgNDkyYTY5NDg5MDI4NmEyYWRjNGEyODZiMWYzNzY5MDViOWYyMDE4MCBsZWdhY3ktdHJ1bmsKKzEzNTM1IGU5NDQyNzM0YmM0OTczZDkyZDllYzQyMjMyM2NkODcyMGI0OTI4OTAgbGVnYWN5LXRydW5rCisxMzUzNiAzYjNjN2I4YWRlN2ZmYzg5NzZmM2I2YWU1MGE4NDQ3YmM3YWZhMGY0IGxlZ2FjeS10cnVuaworMTM1MzcgNDA3N2NhM2IyNjU2MzI4OThiY2RjZjQ3NWE5ZjdjNDU0ZTkwMzVhMSBsZWdhY3ktdHJ1bmsKKzEzNTM4IDJhMmU5OWFmMzgyOTE0ZTYyOTZiZWJiNzA5NjExNjM1ZGUwZmM3OTUgbGVnYWN5LXRydW5rCisxMzUzOSA2YzkyZGIzYTc3Y2YzN2EwM2I4M2RkNjMzZDU1ZjkyNjAyMDcwMmI5IGxlZ2FjeS10cnVuaworMTM1NDAgNDEzODVkNTBhMTBjNzQ2NTI0MzdkOGNlZjRiYTVmODlhYzUyNzAzZSBsZWdhY3ktdHJ1bmsKKzEzNTQxIDc0OTcxMWY4ODVjZDNlNTYwZWFlYThmMDVmYzEzMGZmMDYyYWM0YzMgbGVnYWN5LXRydW5rCisxMzU0MiBmNGM2MzE4NWNlMTEwODc0MTk0YjQwYzI5NGJjNzQyNDdiN2I2MjNhIGxlZ2FjeS10cnVuaworMTM1NDMgMzA4Y2UyMTgzOWQ2M2ZhMDE5OTkzMWRkODJjODFjY2RlOGZkZjAzOSBsZWdhY3ktdHJ1bmsKKzEzNTQ0IDYxMjdiNzM4NThiYzkxZjM1MzE5ODNlZTRmNzY4ODE3M2ZiYjhkNDIgbGVnYWN5LXRydW5rCisxMzU0NSAzYWRjMDM0MmQwOGJkMjVmNjgzZGIwNGE0MjhiMzZkNzc4MWRlZjhlIGxlZ2FjeS10cnVuaworMTM1NDYgMTE5ZTExOWZjZjVhYzBiMzcwNjNhNmE4ODdmOTUxM2ViN2NlYTM2ZCBsZWdhY3ktdHJ1bmsKKzEzNTQ3IDEyNmE5Y2RmMDU3MjllMTVmNDBjNWFkNTFkMzNjMzgxODM3MjU3NDYgbGVnYWN5LXRydW5rCisxMzU0OCBlNmFiZWRiYzc5YzY5ZWU5ZThkNDg5MWE4MjViZmU0ZDdkMGYzNDliIGxlZ2FjeS10cnVuaworMTM1NDkgMjcxYWYyOTdhYTNlYTc5ODUzNGI4ZmI2ZmU4N2I2ZTBmYmRmZWJkNyBsZWdhY3ktdHJ1bmsKKzEzNTUwIDMxZmQ0ZWQ3M2QyOWU1MWVlNDFiYjljZDg0NmFlNTEzMTBiNTg4ODUgbGVnYWN5LXRydW5rCisxMzU1MSA2NDlkYWFkNmNmNTE2N2ZkM2RiYjdiNWFhNzkyYjc2ZDNkNTU5ZWE3IGxlZ2FjeS10cnVuaworMTM1NTIgNzcxYTlhMTAwZDc1YmM4ZDcwOTZlMDM3OGY5OTM3MzAwZDQ2YzM5NiBsZWdhY3ktdHJ1bmsKKzEzNTUzIDM4MTllYjdjODM0YjM1OGU0MWFlMDBmZDAxYjZkNGM3YzczZTA5NjkgbGVnYWN5LXRydW5rCisxMzU1NCBmOWJhODAyMzk3NmQ2NjIwYTkyYTU5NzEzMDUxY2Q2Y2Y5YmM3NTM3IGxlZ2FjeS10cnVuaworMTM1NTUgM2JlOTM1YmUzNzgxZmNkM2Q2ZjAzM2YxMjhmNGFlZjhiNjhhMmE4YiBsZWdhY3ktdHJ1bmsKKzEzNTU2IDhiN2Y2NWIwZGIxOGEzNmM5ODRkNTk2MTNhMDU5N2IzZWE2NDJhODAgbGVnYWN5LXRydW5rCisxMzU1NyAzNjY4NGNlMGQ0MGQ2MzY5MGNlOTFhZGYwN2U3Yjg3MDgzZTQzM2Y5IGxlZ2FjeS10cnVuaworMTM1NTggY2IzNjYzMjExNTJjYjJlNjk3MWViZTQ2ZjI3MTBjYmM0YzViZTJkMiBsZWdhY3ktdHJ1bmsKKzEzNTU5IGI2YTQzOGNjMTk1Yjk5N2JhYzI0NDhhMDBjYTVhNjJjMjEwYjIwY2QgbGVnYWN5LXRydW5rCisxMzU2MCBhZDE1YTAzOTRmNzgyOGZkMWU3YjQ1OWU3MjY4NDRjMjViZDA2NDQwIGxlZ2FjeS10cnVuaworMTM1NjEgNWFkYmIzZjA0Y2JjMmY5Mjc4OGQzMDg2NmE4NDQzODg0YmE0YzE4MiBsZWdhY3ktdHJ1bmsKKzEzNTYyIDEyY2Y5MDk2NjgyMjMwMzYyODFiM2ZlYWQwZGM2YjhkZjc1ZTAzNjkgbGVnYWN5LXRydW5rCisxMzU2MyA1ZmE5NmQwNTAzMTlkODRiYmNjMGEyYWI0ZDNhNDY2MjM4NDRmYzE1IGxlZ2FjeS10cnVuaworMTM1NjQgOTc4OTZjMDllZjFiMzMxZTA5MTRiYzM3OTQxMjI1YmI5NWNhODBmOCBsZWdhY3ktdHJ1bmsKKzEzNTY1IDYyNmNhZWNhNTM1YTI0M2IwYzgxZWQ3NDQ2MzFlZGNlM2YxODRmNGMgbGVnYWN5LXRydW5rCisxMzU2NiAyN2M0OGRmMWNlYjc5NTkxZmIyZWFkYzhmYjRiOTc2OTM0MDE0NTRlIGxlZ2FjeS10cnVuaworMTM1NjcgZjc4ZjE2ZmVhNDU1N2Y0ZDRiYTgwNDc2ODljOWY3M2RjYzU3MDYzNiBsZWdhY3ktdHJ1bmsKKzEzNTY4IGNjMmViMDFhMTZmNDIzYmZiMDQ3MjJkMDgwYmJiYTdkYWUwZjQ3OWYgbGVnYWN5LXRydW5rCisxMzU2OSA4MTQ5OGM0ZTU2OWQzNDk4ZTQxZGI0ZGRjMjNlZTVlYTA1ZDdhOTIwIGxlZ2FjeS10cnVuaworMTM1NzAgNWJiNGY1MGRhNDc0YTViNDU3MjE0ZTJhMmRlNGZiYzg4ZDUzNjQyZSBsZWdhY3ktdHJ1bmsKKzEzNTcxIGZkNTQ2Y2JkZmI1Zjg2NWE5MWVlYTQ3ODM3M2Y0NGJmMWQ0MzE0ZWYgbGVnYWN5LXRydW5rCisxMzU3MiBhZWIxMGNjMjMwMGQ2ZTZhNWM4NDAxN2JkZDJlYTMyMGM4ZmFiMjJhIGxlZ2FjeS10cnVuaworMTM1NzMgMjIyYWVlOTZkYzQyNTEwYThhNzdkMDdiOWRkMmViZTk1YTc4YzIwNyBsZWdhY3ktdHJ1bmsKKzEzNTc0IDRmNTFlOTdhNmVkZjVkNzhhMDlmMmZjZjM3ZGZjZDg1NjIyMGM3MzIgbGVnYWN5LXRydW5rCisxMzU3NSA1YTgyZmI0Zjc4ZTU5NGNkZjhiOGYwM2JlMDcxM2M1MTk3Yzg4MmFiIGxlZ2FjeS10cnVuaworMTM1NzYgMjdmYmIwOGY4YzM4ZGNhZTc0MWZlOTFkNmEyNmFlOTM5ZGZkMjU0OSBsZWdhY3ktdHJ1bmsKKzEzNTc3IDI1Mzk3MGEyYzA1ZDY2NDU1YzkxZjdhYzRlYjc5NjM2NGFiNzQ0ZmIgbGVnYWN5LXRydW5rCisxMzU3OCAyNTZiODc4Njg5ZjNiMWU0YTA4OTk5M2Q0ZDk4MDRiOGExMzM3OWM2IGxlZ2FjeS10cnVuaworMTM1NzkgYjNhY2Q1NjUyMGNkOWZhZjcyMzIxZTM3MzJlMzdlZTBlZTYwMTgyZSBsZWdhY3ktdHJ1bmsKKzEzNTgwIGJjYzBiZTdjYjQwODAxZGIxYTBhYzhlMGY4ZTUzZTQwNzdhZDlhNWYgbGVnYWN5LXRydW5rCisxMzU4MSAxMjA5OGE4YTk1ZWNiOGI1NzM3YzA4YjQ0YTUyYTlkMDUxMzgzYjNiIGxlZ2FjeS10cnVuaworMTM1ODIgNzllZTZkYzkzZDBlOWUzY2JkOWY4NWRiMjk5N2Q5MWQxZWY0MTAxOCBsZWdhY3ktdHJ1bmsKKzEzNTgzIDk2MzFmOTcyNmE3MDViNDkwNzhmNjI5N2QxNzUzMDM1Mzg4NGI0NzcgbGVnYWN5LXRydW5rCisxMzU4NCAwN2IwNzM3NmNhNzI4OGM0OTMxNGViNWRjMjNjYmU5ZGM1MWIxNzAyIGxlZ2FjeS10cnVuaworMTM1ODUgOTAyMzE2YzcyYjQzZjk1M2UwZDNjNDlmZWY5Nzk1ZDE4ZTk1YTA3YiBsZWdhY3ktdHJ1bmsKKzEzNTg2IGUzZGRiODc2MTYzNzFjYmI1N2I3Yzc0OTdlOTdkOTc2MDQ3NDIyMzUgbGVnYWN5LXRydW5rCisxMzU4NyA0OWU4ZGUwYjVlYTc0YTg1NWJiNTQ1NGIwN2Y0ZWY3ODFlNGRlODU2IGxlZ2FjeS10cnVuaworMTM1ODggN2VkNmZiYTgyNjVjYjc5ZjYxMTdlZjdmOTVjYTk5ODFiMjAxZmI5NSBsZWdhY3ktdHJ1bmsKKzEzNTg5IGYxMTE0OGM1ZmJlZGNjZjJiNGFhMzIyN2EwYTc0NDkyM2ZjOWNkNzggbGVnYWN5LXRydW5rCisxMzU5MCBkNmNhOTEwNjNjZWM5M2NiZWJjN2Y4MmY1OTYxM2UzM2UwYTZkMjQ3IGxlZ2FjeS10cnVuaworMTM1OTEgZjUyNmRiOWE2Y2Y4MzZkZjAxYmY4MzdmZWQyZTE0NDJhZDYyYmY0NyBsZWdhY3ktdHJ1bmsKKzEzNTkyIGRmYjVhZGQ2ODRjM2U4MTIxNWQzNWY2OTQ2Y2MxNWNmODI2NzdhNTMgbGVnYWN5LXRydW5rCisxMzU5MyA2MjgyYWNlMjc5NWUwNmNiYzVhMzA2MjRkNDY1NmU4MWJhZDViZmMxIGxlZ2FjeS10cnVuaworMTM1OTQgYmFlM2ZiZTJiNTkxYWY5ZGVhM2I2MTRjODBjZWRmOTliZWE4NjU3ZSBsZWdhY3ktdHJ1bmsKKzEzNTk1IDBiNjU4MzVlMmIyOTA5ZDY1YmUyYmU5YTQwNjJhZDMzNTM2M2U4MDQgc3RyaW5nX21ldGhvZHMKKzEzNTk2IDhlNGRkNmExNjFmZmI3Y2M0NzgwZTE3ZjdjNzhiZTYwMzAyNmFkNzkgc3RyaW5nX21ldGhvZHMKKzEzNTk3IDBkZDUwYTcwYzQ3ZTIyZDYyZjgxMGM2NmZhZWMyZDlkZjk1NWE5ZjIgbGVnYWN5LXRydW5rCisxMzU5OCAyZmQ2NWQwZjNkNDE1MDgzY2MxZjczMGViODJkOGIzMjkzNWI2MTA1IGxlZ2FjeS10cnVuaworMTM1OTkgOWRkODE5ZDk5MzI2MzkyNmMyYTRmNGVhYWY3ZmU3MmJjYzZhYTUwMSBsZWdhY3ktdHJ1bmsKKzEzNjAwIGE4NGY5ZDM5OTlhZTg0NjU5NGExMzQzZGZlOGJiNzJhMDAxYWZmYTYgbGVnYWN5LXRydW5rCisxMzYwMSA2NjEzZGZkNzM5MTcxOGNkYzVmNDE0M2FmNjEzYTA0YTFlMTJhMDcwIGxlZ2FjeS10cnVuaworMTM2MDIgMzZlMjU4YjU3NzUwNjY5M2M0MTIxMTg4NjZjNzg0NzMyY2Y3MTExYyBsZWdhY3ktdHJ1bmsKKzEzNjAzIDRhMWQ2YzdiMDk1MDFmOTNjNzhlNTJiOWJlYTRiOWQ2YmZhNWFkOTcgbGVnYWN5LXRydW5rCisxMzYwNCA2MTkzY2MxNDViOGM3YWQ4ZTFjYzk3ZGU4ZDE5NTkxZDBjOWQ3ODFiIGxlZ2FjeS10cnVuaworMTM2MDUgZDFiNDhlZTE0NjAxZjhhNTQ0NjliNTE2NTU2YTg5YmQ0NzU5MDQ5ZCBsZWdhY3ktdHJ1bmsKKzEzNjA2IDg3YTM5MzVlNjZhYWNkY2IxZDQ4ZjM1N2Q4NDZkYTc3MzAzZDdkMWQgbGVnYWN5LXRydW5rCisxMzYwNyAzZTVmNjk2NGNkMzMxN2IwMmQ0ZTQ2NmVkYTFlZmFiMDc5ZjExZTNjIGxlZ2FjeS10cnVuaworMTM2MDggNzYwMDhmOGEwZTVmNmNkZTE3MTVmZWQxZWQ0NjQyNTg2ZGJlOTUzOSBsZWdhY3ktdHJ1bmsKKzEzNjA5IGQwNDYwOWEzN2RjMTE2NjNiMTYyNDNhYmJiNWZjYTA0ODgzODNhM2MgbGVnYWN5LXRydW5rCisxMzYxMCA1YmU5NDA2YmJiMDVjYTExMDM3NWNjODVhY2Y0MzA2NDEwYWZiOGZhIGxlZ2FjeS10cnVuaworMTM2MTEgZDQ1MWEyMTFjMTZhM2Q2N2Q4ZmZjYjFkOTQ3MjY0OGNhMDkxMGZjNyBsZWdhY3ktdHJ1bmsKKzEzNjEyIDI1NjczODg0YTNkMGYzY2QyNzM4N2Y5MjE1NWNiYjFiZDFkMzRkZDcgbGVnYWN5LXRydW5rCisxMzYxMyA4NDYxMmE1Njg4ZmM5M2MyNGUxZDVmMGQ0NjY2M2ZhZDBhNjQ3MzIwIGxlZ2FjeS10cnVuaworMTM2MTQgZGM2YmUwZWQzOThjZmQzNzY4OGM2N2FiNGQ1ZmY3ZmNiMGVjMjI1MyBsZWdhY3ktdHJ1bmsKKzEzNjE1IDQ0NjNkZDdiYjNlODk1ZjNlMDU5YzdhZGRkOWVjYzNhOTlmMGQ4ZjMgbGVnYWN5LXRydW5rCisxMzYxNiA0YTdiMmI0ZDE2NjlhZWY1ZjBkZTljNzcxNTRlYTgzZjdkNjlkZjNkIGxlZ2FjeS10cnVuaworMTM2MTcgNDdlMDAzYmQzNWVkMDUzYTg5ZjU5ZjNiNGNkNzQzN2Y4OGU2MjhiNyBsZWdhY3ktdHJ1bmsKKzEzNjE4IDRiNTNmNGEwYTk4YWNkMWJmY2RmYzYzMDMzZGY1Yjc1ZTAzZTE3NDUgbGVnYWN5LXRydW5rCisxMzYxOSA3MDI5ZTE4YjRmMTFlNzdjNDk1NzhhZmFiZmM0ZDNlN2E2YzI1N2NlIGxlZ2FjeS10cnVuaworMTM2MjAgMmUwMGI4ODkwMzVmMmY0NjdmOGE0MGY4NDg3NDFmMTk1MjQ2MzNkZCBsZWdhY3ktdHJ1bmsKKzEzNjIxIDcyOGEyNTAwZWE0MmZiNWZhODMxYmZjOTBjNTVlOThmYmQ0N2M0Y2IgbGVnYWN5LXRydW5rCisxMzYyMiAxZDRmNWY0OWRlNGVjZjM4ZjE5NjA5YzhjZTNkOGZjODJhZWYxNjJiIGxlZ2FjeS10cnVuaworMTM2MjMgNzY5YzZiNGM1Yjg4N2MzNGU3NTNmZjU2NmU4OTQ3NGIzOTBlMzA0NSBsZWdhY3ktdHJ1bmsKKzEzNjI0IDRjNzU1OTZlOTJmNGY4YWRlZmJlMDNjYWVjNTM3N2Q5ZDgzZjdhNjggbGVnYWN5LXRydW5rCisxMzYyNSA5YzI5MmFkOGE2ZDQ2M2MwMzRmNTQyZmFlMzA3Y2U5OThmOGRiNTFhIGxlZ2FjeS10cnVuaworMTM2MjYgNzFlZDBhMmMyNzlhNjA1ZjFiZGQ5OGY2NzdiZTU2NzNjZTVjZGEwYSBsZWdhY3ktdHJ1bmsKKzEzNjI3IGZhMmUzZDA2Yzc5MDJlMTZiZDdhMjBlNzNiODUzOGMwNDM0NTQwMDEgbGVnYWN5LXRydW5rCisxMzYyOCA4NzJhODJmZDBlYzQxZDQ4NzRiMjUwZjQwMjQyMGY1MDc3YjI4YWQ5IGxlZ2FjeS10cnVuaworMTM2MjkgYWE2YzVmODZkZjg3YTRlNWViM2NkNmQxNmI2OTllZWNhYzE5NTkwMiBsZWdhY3ktdHJ1bmsKKzEzNjMwIGZiZjQwZDdmZDRkYWMyNjVjMTIxNDM3ODNhN2VkZDU1ZWNkYTJkM2IgbGVnYWN5LXRydW5rCisxMzYzMSA2N2JkMmFhZTI3MzJlYWE1YTFhOWQ2NjE3M2Q3OWJkNzQ0ZjM0ODk3IGxlZ2FjeS10cnVuaworMTM2MzMgMDY4ZmJmNGY1NThhMjMzYzU0NmM2YTM3YTMxNmI4M2ExZWQ1ZTQzYSBsZWdhY3ktdHJ1bmsKKzEzNjM0IDVlODQ4YzNlOWM1YzcxYzQ0ZTQzMmQyYzQ1NTY5NjhhYjY5NTIwMjIgbGVnYWN5LXRydW5rCisxMzYzNSAxNDM3NGJhMzQxYTY3YThmNjU1ODVlYWMyOWJjYTdlNDZhY2NjZmUzIGxlZ2FjeS10cnVuaworMTM2MzYgMWNkZTUyMzBjNTA4MTllM2QyNDczY2MxMGQyNjcxNGJhMWI4YzdmNyBsZWdhY3ktdHJ1bmsKKzEzNjM3IDZiZjYyMDM3NTk3NjM0OWE5NmRlYjE0NjY1NmY4MzcxMzFkNDdiMjMgbGVnYWN5LXRydW5rCisxMzYzOCA5OTI4NmRhYTkwMGRkNDhlNTQwZmI3OTJjYTQ2OWM0MWFjYzg3NDc5IGxlZ2FjeS10cnVuaworMTM2MzkgMTJmMjA4ZGI0MmIwZTkyZmFjNmE4ZjkzNzZmMzI0YjUyMGQ2YmJlMiBsZWdhY3ktdHJ1bmsKKzEzNjQwIDc4ZjViZjE3OTc1MDRhOWU2Njk1MjVmYjBiNTNlYjJmNWFlYzA1ZmEgbGVnYWN5LXRydW5rCisxMzY0MSBiZThlYzgyOGMwNzIzNzI4YzI3MTk4YmY0MTdjMzIyMDMxOTM4Y2JlIGxlZ2FjeS10cnVuaworMTM2NDIgMDEwZTdiNjlkODZiZjBlMGYxYjczODk0YTNlOGEyZjIxMWUzMTZkNCBsZWdhY3ktdHJ1bmsKKzEzNjQzIGRjYzA5MjI4YTNkMjQyMjNjNzkxYTFlZDQ4ZjA1ZDViN2ZjYzk3NjQgbGVnYWN5LXRydW5rCisxMzY0NCA5MzlkOTE0YWY1ODE2ZmZjNDZjZmY3NzI1NTY5MTliNjQyMGY2YjMyIGxlZ2FjeS10cnVuaworMTM2NDUgZGE5YzgzYjVmYjA3NDVlY2FhYzRiYjUyMzQ0YjhiMmJjZGRjNDk3NiBsZWdhY3ktdHJ1bmsKKzEzNjQ2IDNiMTk4MGRiNGFlOTkwNDZjZWQyYTgwYzMxMzE1NGVjZmI3OTBjZGYgbGVnYWN5LXRydW5rCisxMzY0NyAxNjRiNGJjNGRkZGQwZjgyOTU4NjVkY2M2NzIxYTJiMDY5OTBmMDg4IGxlZ2FjeS10cnVuaworMTM2NDggM2EzOWViZTI3NmM4ZjRmOGM4OTc3OGYzMzMwMDBjZTA4YTVhNTk2NSBsZWdhY3ktdHJ1bmsKKzEzNjQ5IGQ0MjNmNTc4NDRiMjZiNzJiODFkMmVhZjI2ODU3ZjQyMTFkM2Y1M2YgbGVnYWN5LXRydW5rCisxMzY1MCAzMDZiNDlkNjgyMzM3Y2I5NTZkMDVlYzJkZjAwOTZiZDhjZmYxYzFhIGxlZ2FjeS10cnVuaworMTM2NTEgMmViMjg3OWQ1NjdmNGIzMTY5ZjJhZGE5YTNjOGZmMDNhNjIyMTM3ZSBsZWdhY3ktdHJ1bmsKKzEzNjUyIDdjMjM5NzExMjIxYTI0NzQ1ZjNiMWU2MGY5MzFmNGI2MDYwZDg0MWYgbGVnYWN5LXRydW5rCisxMzY1MyA0NDJmZmU5YTU4YzEzYzk3MDFjNDdlYTczNjZjZDA5YjQ3MDVlNTYwIGxlZ2FjeS10cnVuaworMTM2NTQgNWU3NmM5OTY1ZmU4MzkwMWUwYjE3NzI1ZmU4YjgwZmI2ZDdiNjI4YiBsZWdhY3ktdHJ1bmsKKzEzNjU1IDlhMjAwMzhmMGI5OTdlZjBkYzIwMGNmZjE1MTBhZmQ2ODZkMWVhNTQgbGVnYWN5LXRydW5rCisxMzY1NiBhNGI3MjQyYTRiNzRjYmY0N2M5YjZjYTYwNDcyZWMwNTFhZjZlZTg5IGxlZ2FjeS10cnVuaworMTM2NTcgMWM2ZmRjOGFkYWIwYTRjNmZkYzVkZDE2ZWM2M2I3MGMwOTBhYTE2ZCBsZWdhY3ktdHJ1bmsKKzEzNjU4IGY3MjliYmM0YTlmMzEwZjlmN2VhNWRmZjk4OWQ1YmJkM2E4YjRhZGMgbGVnYWN5LXRydW5rCisxMzY1OSAwZDg4ZTBkMjE4NGY4OTM5YWJkMGQ3ZDBmMDQwMWNiNWY5M2Y1OTM5IGxlZ2FjeS10cnVuaworMTM2NjAgNDFhNDY5NzhhNDQ0YTcyOWQ3NzJmMTg3NzE3ZDI2MmJlM2YxMWNjNyBsZWdhY3ktdHJ1bmsKKzEzNjYxIDJjNTg1NTI2NDQ3ZTk1ZWI4ZjQzZWY5YzNiYmFjMGZhMzRhNjlhMDcgbGVnYWN5LXRydW5rCisxMzY2MiA4MDQ5ZDJkZTFlNzk0YWFjNDY2M2ZmZmNiMjQ4YmI4ODI0YWU1YzY5IGxlZ2FjeS10cnVuaworMTM2NjMgODRlMzRkODEzOGFjOTA0MzUxZmY4ZDU2N2EyZTNmMWE5Y2I5ZTBmNSBsZWdhY3ktdHJ1bmsKKzEzNjY0IGMyYWM4OTY5MjZjYzRhNzk4NGU4NTI4ZDkzNzU3YTE4ZjJlOTZhMDIgbGVnYWN5LXRydW5rCisxMzY2NSAwYTVhOGY1MTNkMTM2M2E3YTc5MzFjNDk2MGE0ZTBiNjgzMTc3ZDhjIGxlZ2FjeS10cnVuaworMTM2NjYgYjU2YmRhMTkwMGZjMGVkMDBjNzliZDZhYmIzYTRhYTk0ZDBkNDhjZiBsZWdhY3ktdHJ1bmsKKzEzNjY3IDJjM2FmOTBmM2ZhZWI0NTU2YTUzMTdmZDIxYzMzZmJlN2E1YzhhMDEgbGVnYWN5LXRydW5rCisxMzY2OCBjZGZhOWNkNGU3MmJiMjZhN2Q1YzQyNTQ3MTg4NDc0OWIzNDZmZDM4IGxlZ2FjeS10cnVuaworMTM2NjkgYzA5NTQxMTI4YzVhNDFkZTM1NmY5NDBkNjAxZjZiODg2MzFmNjQ2ZCBsZWdhY3ktdHJ1bmsKKzEzNjcwIGM5NWUxZmQ4N2FmMGYwNjk2ZmIyNzk3Y2QwY2M1YTI4OGRmMTNiNGUgbGVnYWN5LXRydW5rCisxMzY3MSAyYjdjNDNkNGI0NjliMGYyMjIwYzk1YTY2YTBmMTFhNGJlNjhhNDJkIGxlZ2FjeS10cnVuaworMTM2NzIgMWRiYzVlNjk3OGY5ZGQyZjU4ODk0MmI0MjFiZjg0MGYwNDE1YzBkMSBzdHJpbmdfbWV0aG9kcworMTM2NzMgNDFmY2I0MGU4NDFmZDZhNjMxM2NlZGYyZWNhYWJkNzU2MWJlNjk5YSBsZWdhY3ktdHJ1bmsKKzEzNjc0IGQ5OTdlMjdlMzMxMmJjMGRjNjZmMjcwOTk1ZDU4NzMxZjg5ZjNjMzEgbGVnYWN5LXRydW5rCisxMzY3NSBmNjJlNDY1YzRkMDE0YjhlMzZiODUyNDhmYTgxMjlkZTA2OTE4YWU3IGxlZ2FjeS10cnVuaworMTM2NzYgYmJkMDM1ZTVhOTcyY2ZhMWVhYTRlZmFjN2Y0NDNjMWUwYzM2OGQ1ZCBsZWdhY3ktdHJ1bmsKKzEzNjc3IGI4YTI5ZGU5ZWQ1NGIyNDNhYmQzNDQ3MDk5NWI5ZTQ2NmJlMGY3MDEgbGVnYWN5LXRydW5rCisxMzY3OCA4NzhhYzBjZDBlNzY4MThlMjU2M2RlZWUzZTJhOTE2M2UyOWI4OGVkIGxlZ2FjeS10cnVuaworMTM2NzkgZjRlZmJhMzIzMjBlYzQzYTgxOTRjMjFiNThhMmNkODkzNWQ1YjEzOSBsZWdhY3ktdHJ1bmsKKzEzNjgwIDgzZjM5ZmM4NTc2M2JlZjQyOWI5ZmYyNWEwOGUxYzU5ZmNhNzNiYjAgbGVnYWN5LXRydW5rCisxMzY4MSAzNmE2NTQ2MmMyNjlkMGNjZDI1YzQxMmVlYmY3ZDZhZTBjODU4NDBjIGxlZ2FjeS10cnVuaworMTM2ODIgMWE2OGM5NzJkMDg0MWUzNWQ0ZTNlMTMwMzkxNTQyMTg3OTA0Njc4MyBsZWdhY3ktdHJ1bmsKKzEzNjgzIDY4NTJmZjAzMDMwODg0YmRmZTc1OWYyZjM0YzQxYTI0YzVjOTc3MWMgbGVnYWN5LXRydW5rCisxMzY4NCAyYzRkNDhlMzFiZDVlNzhhYjcwOTNjMmZhYTM4ZTk1MmQxZDNlODZlIGxlZ2FjeS10cnVuaworMTM2ODUgNDNjY2JjZjQzODRmMTIzMTEzMjAyZDlhYTZhODlkY2U2ZjM2Y2JkYiBsZWdhY3ktdHJ1bmsKKzEzNjg2IDdjZTViYWU3Zjc2NWE0NmVjZTE1NWQwZTQxNjUzYjkyMTJiYWY0ZTYgbGVnYWN5LXRydW5rCisxMzY4NyAyZjEwMjZkYjgyMjgwYmVmZTdmNjhiZDNlYTU5NTkxOTllZjBjY2ZiIGxlZ2FjeS10cnVuaworMTM2ODggYWVkMTlhZjYwZWEzMjUyYzhkZjBjYWVlNjU2ZTRmYzJkY2U5YjYzYyBsZWdhY3ktdHJ1bmsKKzEzNjg5IDBiYWZmMTM1YzRiNGUxYjA4YmEwYWU3OGJkMDY0MWJkM2Q0YmY5YTAgbGVnYWN5LXRydW5rCisxMzY5MCBkMTU0YWU3Y2EwMTRmNzkxMzBlNDYwMjk0NmJhZjczM2EyOWFmNjQ4IGxlZ2FjeS10cnVuaworMTM2OTEgM2M4YzU1NzYxMDljMzU3ZjFmNmI1NDk5OWIzZGM4NDUxZmE3NDFkYyBsZWdhY3ktdHJ1bmsKKzEzNjkyIDZlNmJkYWU4ODA4YTUzMTk0NTRiN2U2ZGRiYzZlM2JmMWM2MjI1NzcgbGVnYWN5LXRydW5rCisxMzY5MyA5OGU1OWM4NGVjMzFhM2ViZGJmODYyODI3OTZlMTg3MjYwNmY3YTlkIGxlZ2FjeS10cnVuaworMTM2OTQgYTRhYmEyMDUwMzhlYjVhMmFiOTkyNjNlMDJmMjMwMWY4NzQzOGZiZCBsZWdhY3ktdHJ1bmsKKzEzNjk1IDNlMGM3ZTY5MzliZDAyYTY3NTUwY2ExMDUyZDgwMmRhMzRiNGQ0ZWUgbGVnYWN5LXRydW5rCisxMzY5NiAxYTI3ZGQwNmNjZTE2OWRhZGMyODFkNmFkYzQ0MTcwMTgwMzMxMmZhIGxlZ2FjeS10cnVuaworMTM2OTcgNjE3ZTEwZmM1ZDhkMzI4ZmEwMDhmZDEzN2M3Yzk0OWMxYThhZTA5YyBsZWdhY3ktdHJ1bmsKKzEzNjk4IDVkYTU3ZWE1ZmM2NDE4MTNiNWYyNTA2MDU3ZmQwMTE3ZDRiNjg5ZmUgbGVnYWN5LXRydW5rCisxMzY5OSAzMjA2NTIyNDJlNmJhMDZjNTE1YTNiNjhlNTA2OTJmZjcyNGU5N2MyIGxlZ2FjeS10cnVuaworMTM3MDAgMDQ5MjlhYmNhZDg2YmNiNTI3NTQ3OGVkMGNkZDVhYzk2OWE1NTA4NiBsZWdhY3ktdHJ1bmsKKzEzNzAxIDhlNzRlZDE1NGY2MDg3ZmVjNzJmNWU2Mzg0YzdjNzYwZjcwNDQ3MjUgbGVnYWN5LXRydW5rCisxMzcwMiBmNzY2ZmI2Zjg1MjY1YTQ5YjgzOGI3ZTNkNjVhNmExYzY4YTgxODI0IGxlZ2FjeS10cnVuaworMTM3MDMgMzQ4NWE3ZTQ2MDBiOWZlZGYxOGU2NTVmYmY4YWU5ZGU1NDY0NjEzZCBsZWdhY3ktdHJ1bmsKKzEzNzA0IGZhYjgxZGY1NjZkMGNmY2U0NjRiZmE4NGM4YjUwNGViMWM1MzA0NTAgbGVnYWN5LXRydW5rCisxMzcwNSA2NGIxNWU5MDkxYTkyYmI2MzU4OTdjZmY5OTg3NTdjMzU1MDRiMjI2IGxlZ2FjeS10cnVuaworMTM3MDYgNWY1ZmMxMDMxOTU3YWE1YTQyZmUxYjYyN2E0M2M4ZTI3MzU2MWRkMiBsZWdhY3ktdHJ1bmsKKzEzNzA3IDI0NWQyYjYwNTAzNmQxNGYxNDk0NjdjODA5YjhjYTM1YTFkMmQzY2YgbGVnYWN5LXRydW5rCisxMzcwOCBkNmFiNzJjYjE2MjU4ZTljMTExMWE1NThiZmE0ZDZlNzUxZDVlYWQ2IGxlZ2FjeS10cnVuaworMTM3MDkgODE3NWJmZGZiZWE5ZTQwZjgxOWYwZjZjZGU2YTlkNzMyZjZhZWFjYSBsZWdhY3ktdHJ1bmsKKzEzNzEwIDZjMTMwOWQ4MmNiMTE0MWZmZTMxYjZjZjQyMTNlZWY4NWJhNWJhYWIgbGVnYWN5LXRydW5rCisxMzcxMSAzNWUwZDAzZjJiMDJmOWY4YzVkZGZiMzEwYWJiOWFiY2ZjNWZjMjA4IGxlZ2FjeS10cnVuaworMTM3MTIgMWUwYjE5NjdiZTdmM2U1ZDk0YjI4YzRjZDRmNTgwNTE2YTAzNDIzNCBsZWdhY3ktdHJ1bmsKKzEzNzEzIDkzOGI0NmZhNjM5NGU4ODhlM2RiZDc4YzA5Mzg3MjU2NjQ3OTRhNDIgbGVnYWN5LXRydW5rCisxMzcxNCBkYmI4MDgzZjBjZTcxYzM5Y2MyMjZkYjI5NjE3ZDBjYWNhNjk0MWIxIGxlZ2FjeS10cnVuaworMTM3MTYgMjRjNWJjNmJmY2FhZmU4ZWU1YjVmNjY5NGQ2NDdjMWQzZGM1NTBlOCBsZWdhY3ktdHJ1bmsKKzEzNzE3IGY2ZTZjZGJhZGJiNTA0ZTBjMzJiZTBhNmY0NjVhNjVjOTM4Y2ZlMzEgbGVnYWN5LXRydW5rCisxMzcxOCAxMjNjMzhkYTZmNDM4M2Y4M2ZkYzY5YzNkNWQzZTY2ZjkwODk1YWFhIGxlZ2FjeS10cnVuaworMTM3MTkgZWNlZTlkZTc5YjFlZjU3MzRmOGYxZGNmY2Q2MGUxY2EzYWFiZTVkNSBsZWdhY3ktdHJ1bmsKKzEzNzIwIDNkNjZhMTk3MTkzNjk4MGE1YzBjOTQxNjA4M2UzYmQ5ZDU5N2Q2M2IgbGVnYWN5LXRydW5rCisxMzcyMSAwMWM1MWIyNjhjMDQ5NjFmZjJjYTVlNmJkZmU0NWFhYTk3MjU2ZDdkIGxlZ2FjeS10cnVuaworMTM3MjIgYzcyMDMxOGUzYzQ5MjA3ODE3ZGZkYjBjMzY5YzEzOTk5NTUyZTE0NiBsZWdhY3ktdHJ1bmsKKzEzNzIzIDg5OTYxYjY4MTNhYzM5MTliNDdhYjkyZWFhNTg4YjAyOTk0MjBmMDQgbGVnYWN5LXRydW5rCisxMzcyNCBjNjI3NzM0ZWFmOTI5YTc5YzYyYTMzNWE5ZGE3ZjZhNDE1MGYxNjhmIGxlZ2FjeS10cnVuaworMTM3MjUgYTgxOTVmYTMyOWFjMzliZmMyYTM5MWZiMmQxYmNhNTU1MzFiNGMxZSBsZWdhY3ktdHJ1bmsKKzEzNzI2IDFjOGU0MjI3ZDk4NzkxYmFhOWQ4MDk5OWNkNGM1ODM1ZDY2NTQ5ZGQgbGVnYWN5LXRydW5rCisxMzcyNyA0ZmRkMzM5MTRlZGFiNDgyMDI5NjVhMjhiOWNlMTE0MGFmYjkyNzViIGxlZ2FjeS10cnVuaworMTM3MjggZThiMjRjZDE3ZGYyM2Q4NzJlMjZlNzU2YmZhMzZhM2VjNjdkNTcxMCBsZWdhY3ktdHJ1bmsKKzEzNzI5IGM1MmZiYzZiZDM4YTkxNzAxNWIzOTJkOWM5ZTAzYTk0ZGU2MDAyMTYgbGVnYWN5LXRydW5rCisxMzczMCBiY2EyZDE0ZjNlMzY1MGY2YjE3ZDQyMzNmOGMxZmNlNTc4OTRjNGUzIGxlZ2FjeS10cnVuaworMTM3MzEgYmY1NjViMThjZmRjNGZiYWQxMGYwN2VkYThmOWEzODJhMWEyMGVhMCBsZWdhY3ktdHJ1bmsKKzEzNzMyIDdlZWViMGQyYjBhNDAxYjE4NzI4MjdiMDVhNTY2MGZiNjY3MzdlMTUgbGVnYWN5LXRydW5rCisxMzczMyA3MWUwYjQ1ZDU1OGMyZjY5ZTRiMjM3MTc1ZmNiYjJjMjkyNDVlNmM3IGxlZ2FjeS10cnVuaworMTM3MzQgOTE1N2M2ZGE3NjE5M2ExNTNhNDZhZmRkZjdkZWI0MTAxNzk1NGU5OSBsZWdhY3ktdHJ1bmsKKzEzNzM1IGRlOGZmZDJlNzFiNWZhZWFkNjcwMjJmMzgwYWY5YWU2N2JjMTZkZDYgbGVnYWN5LXRydW5rCisxMzczNiA5OGQ0NTczODNhMmQzZjRiMDVmYzc3YTZhMTcyNGVjMzdkNzdmYzg2IGxlZ2FjeS10cnVuaworMTM3MzcgYzM4OGYwMGFmZmU3ZGNiM2NhYTFmYmNmMzZjMzdiNWUyM2IzOTYzMSBsZWdhY3ktdHJ1bmsKKzEzNzM4IDVmZTI2M2ZiNjc0YWIxYTAwNjdlNmNhYzA5MGM0NDA2NjVhYTE3ZGEgbGVnYWN5LXRydW5rCisxMzczOSBhOGI1YTViMzkyZmJjNTJjMDk2ODFlMGNhMmM1YTM1Nzg0YTM0MzZlIGxlZ2FjeS10cnVuaworMTM3NDAgY2Y3Y2Q3YjA0ZmE2NTlhNWMyMTNhMjgxOGUwZDc3M2ZiMmZjZDM0MCBsZWdhY3ktdHJ1bmsKKzEzNzQxIGQ1ZjQ2ZjU5OTU4NWJiNjg0NWY3ODJlYzdlOTc0MWVmN2UxNzJjYTMgbGVnYWN5LXRydW5rCisxMzc0MiBkNWIzNzM0NDBmOTlhMzgyNWVjYjg3YTQ4MDU2MDNlNzM4NTY0NTYwIGxlZ2FjeS10cnVuaworMTM3NDMgZWFmOWVlYWIzYmNmZjkxZGNkZGUxOTg5ZmY1MTYxYTNhNmNhMTc2OSBsZWdhY3ktdHJ1bmsKKzEzNzQ0IDk2NTAxY2MzYTY2M2I0Nzg1MzI1NDdjMDBiNmNlZjVhZDg3ZjZmZTMgbGVnYWN5LXRydW5rCisxMzc0NSBiNWJkM2Y5NzlkYzk4YzMxY2FiNjVlNWQwN2Q3YmZhMTk1NjUyOGE3IGxlZ2FjeS10cnVuaworMTM3NDYgNGFhZTVhZmUxZjE0NDQ0MmY1NmVjY2JkMjQwNzcwYzg1NzIyMDI1YyBsZWdhY3ktdHJ1bmsKKzEzNzQ3IGY0MDZlNzhlYzEwYmNkZjZjZWZkOWNhMjVmZDk5ZGIyNDY0ZDA0YTQgbGVnYWN5LXRydW5rCisxMzc0OCA0NDVjYmU4ZGI4ZjZmNDdlNjE3NjJlYmNjNjc5YzFkZDZiNjE3NTg3IGxlZ2FjeS10cnVuaworMTM3NDkgMmQ3MzMxZjRkZmUzNTFiYzlmYjhmYWU4NGI4MWIxYmMxOTEyZDUzZCBsZWdhY3ktdHJ1bmsKKzEzNzUwIDhiYjI3ZjRlYmUxNmU1YTk3NGMwOTUzNmViOTMyYjNmOTg2MTZjZWMgbGVnYWN5LXRydW5rCisxMzc1MSAzMDg5NDYxOTYzYzRiOTU3NjNlNTMwNWMzMDdhMTliNWUzMDYzNTNkIGxlZ2FjeS10cnVuaworMTM3NTIgZWNmZTNkOGNiMGMzNDcxMGQ2YmRlY2VlMWE0MDZmYmIwNDM0YjVjNiBsZWdhY3ktdHJ1bmsKKzEzNzUzIDI4NTZhZDVjNjc5YWU3MzljNjYzMTEyOTc1YmE1YmUzMDY0NjA2NDkgbGVnYWN5LXRydW5rCisxMzc1NCA5YTY2ZTc4MDdjNzczNDE5ZTE1ODY2YjhmNzY2ZTIxODZlZjg0ZjEzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzc1NSBhYTRjOGUyZWY1YjQyOWU5MDg2Y2U4MWY2N2E4ZDE2MWE5M2RmNWUxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzc1NiA5MDUyMjY0NzFiNGM3ZjlmYjE5MDljMjhmZjhjMzM4OTMzYzAyZmFhIGxlZ2FjeS10cnVuaworMTM3NTcgZTAxZjIzNTM5YjZjYThiMzJjNTBjYjgwYTcxYTgxZTBkNmQzYjI2MiBsZWdhY3ktdHJ1bmsKKzEzNzU4IGEwYzUyMGMxZDEyZDQ2YjVlOTQ4MzlhODAyYzljOGRmZWMxOGIzMjUgbGVnYWN5LXRydW5rCisxMzc1OSBlNzczZDJmMDc0MWRjNTg3MjQ5MmVlOGU2NTk5NDhlOTZmMTI4ZGM1IGxlZ2FjeS10cnVuaworMTM3NjAgZTBlNjdjZjJmYzY0NDUxOTgwYjU0MWYyZDI1NzEzNGI2NmQzODMwZSBsZWdhY3ktdHJ1bmsKKzEzNzYxIDEwZWJiMjViMjQyZDdhMDA5NGE1OWE3MDI5YTc3Y2Y5ZDJmYzYyMjcgbGVnYWN5LXRydW5rCisxMzc2MiBiNjk4NTliNjk3NjM5Y2VkZjU2OWU1NzM1MmRmYzViZTFkYmVkNTUyIGxlZ2FjeS10cnVuaworMTM3NjMgNmRjNGNjMzE4YTVjOGExMDMzYjk5ODE4Mzg2MzJjZmVhYWY4MmU2OSBsZWdhY3ktdHJ1bmsKKzEzNzY0IGU3NDY5NDRlOWE0YTY3NmY5YzgzNzIzYjJmM2Y3ZDU4YzUzYzY3YjEgbGVnYWN5LXRydW5rCisxMzc2NSA4MzNmZDIzMzhjNjk4ZGI0NjM0M2Y3NmYwZDc4YjEwYzY3YTE1OWM4IGxlZ2FjeS10cnVuaworMTM3NjYgMDI4N2Y1YjMyMjRjYzc4MTdiM2Q0ZWZmMzA1MTg0NGFmZGE2MzFhNSBsZWdhY3ktdHJ1bmsKKzEzNzY3IDA1ZTBjYjM2OTE0NjI3YTY5MjJiYjAzNTAwNzljMDRiZGMzYmIzMjUgbGVnYWN5LXRydW5rCisxMzc2OCA3ZmIyZjQ1NjJmNzY1N2RhMzQ5YjRmYTFlMzQ5NTc3NWQyMDU4MGNkIGxlZ2FjeS10cnVuaworMTM3NjkgNzc5Y2U0NmUzNDMwYThhZDY1YWQ5MTZjZTJhMzQ2ZGY3ZGZlMGY0NSBsZWdhY3ktdHJ1bmsKKzEzNzcwIDU2ZWY0YzJlMGQ3ZWZiYmQ5MWNhNThjMGQ2ZDNiZmI0NmUzOGQ2OGIgbGVnYWN5LXRydW5rCisxMzc3MSA1NzdlYTI2MWJkZjI1OWFhMzI0MTY3MTBiMDE3MjZhMDk4ODZiNWE1IGxlZ2FjeS10cnVuaworMTM3NzIgNGNjNGJhYTI0YTQwMDZlM2RmMjFiNDNmNjU3MWRlMzYzN2RmYTgxMSBsZWdhY3ktdHJ1bmsKKzEzNzczIDVmMDMyNjg2YTM3MTJkNmNkODNjNjg5MjYzNDFjYjczYmI5NGY2NTQgbGVnYWN5LXRydW5rCisxMzc3NCAwMDYxY2E0ODY1ZDczNGM4ZTg4YjFjYWRhNmNlMjMwOWM2NWEyOGZkIGxlZ2FjeS10cnVuaworMTM3NzUgNmFhYzMxY2QyMTAyNWQ4MjQxZDY2MjU0MGU3NjMxODg2N2Y5NDhiYyBsZWdhY3ktdHJ1bmsKKzEzNzc2IDQzODViMWJjYmMzYjNlYWI5MWY0MzlhMDY3MGEyNjE0ZWY1YzUyYTEgbGVnYWN5LXRydW5rCisxMzc3NyA4NTRiODAxMjUzZjBmZmM2YjdkNzJjMDFmZTlkMzlmZDVlNGY1OTcxIGxlZ2FjeS10cnVuaworMTM3NzggZDEzZGExOTQxOGVjYThkZWYyNzdhYzE4MTY3MzVhODk5MjU0MmM4MCBsZWdhY3ktdHJ1bmsKKzEzNzc5IGM5YzE4ODQyNmU3NmMyZTkzYzMzY2MzMDFhNDE0YTVlNWY2ZThmNTQgbGVnYWN5LXRydW5rCisxMzc4MCBlNjFjNDg2YjM1OGE1MDQ1NDI1NTUwOTM2ZDQzM2I4OGI5ZDE4ZmM5IGxlZ2FjeS10cnVuaworMTM3ODEgYWVkZTdiMmRkNDJmZTBmZTJkMzU4NDZjYzE1ZGU0OWFiOWRjOGI0NyBsZWdhY3ktdHJ1bmsKKzEzNzgyIGIzZjFhYmQzMDI3ZmRiOWZjMTBjMmNjNWYyOWFiZGZlMjE3NGIxMmYgbGVnYWN5LXRydW5rCisxMzc4MyAyZjA3YmM1NmU5N2U3YWM3NWI0YWEwMDIxZmZlOTFkYWU0M2Y3ZjZiIGxlZ2FjeS10cnVuaworMTM3ODQgZWNjODAxOGE0MThjMzQ3NTdhZTA3MjU3YTU1ZTVlMTc3YWZiMTkwYiBsZWdhY3ktdHJ1bmsKKzEzNzg1IGM2YmRmMDMyYjcwNTZlMmE4ZGJhODJlMWYwODcyZWZkODZjMmU3NzUgbGVnYWN5LXRydW5rCisxMzc4NiAwZDczY2U2ZDYyMjY3Y2FlNzQzM2ZlZDY3NDEzNmMzNDQyYjIyMGQ4IGxlZ2FjeS10cnVuaworMTM3ODcgNDI3YzNiNTAwNThlYWIwYzkwYTQ2NzgwMWQ4M2I2NjUwZDlkNDcxOCBsZWdhY3ktdHJ1bmsKKzEzNzg4IDI2ZmJjODBmYWRmMjVhZGMwZTI5MWViNzgyZDAxZTgxOTM5MGU2MjYgbGVnYWN5LXRydW5rCisxMzc4OSAwZDQ0YjBkYmRkOTUxYjE5MDBkZjZkZWUxNThiN2VhNTBkNmJiYjQ3IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzc5MCA3YWQ0ZTM5OGYzZWEzZGMyNDIzODJmZWNhMTI1NWI1NmVmNDFmYTk0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzc5MSA5Mjg2ZDNlMTQ3NGM1NDYzNTk2NTEzNDFiZTliODE1N2JmYWRhNmNhIGxlZ2FjeS10cnVuaworMTM3OTIgMjM0MWJlNzRiNzU4MmY3NjM4YTc0MWRmZDI4NTRiYjcwYTMyZDM3YiBsZWdhY3ktdHJ1bmsKKzEzNzkzIDBhNzBhMmM1ZDllNjk5NzhjZWE0OTJlNjMwM2E5MDYwOWM1ZGMyNDEgbGVnYWN5LXRydW5rCisxMzc5NCBlYWVlYTllNDIzNjk4YTMyNzczODMzOTIzMzVjZjMwYTJjZjJhOTRkIGxlZ2FjeS10cnVuaworMTM3OTUgNjk2OGZkYmIxYTNmZWM5M2QzODcxNWI2NmIzN2RmODMxNGYwYTMzMyBsZWdhY3ktdHJ1bmsKKzEzNzk2IDgxMGMyNWQ1MDQxYzRhNTM0YjJmNTVjZDE3Y2U4MmRkZTBiZWQ0MDggbGVnYWN5LXRydW5rCisxMzc5NyA0NzE3MWYyZDdkNTg1ZDAwOGIyODJlODZhNzc3YWMyY2FmMjI2YjFjIGxlZ2FjeS10cnVuaworMTM3OTggMzFiZWNjNDMyNTIzOWUwZGY0OTQyMDQxOWM2NjFjNmRmMDYzZDlmMSBsZWdhY3ktdHJ1bmsKKzEzNzk5IDgzMzYxODhhM2MxMDA1MjA2NDUzOThiZGUxZWU1ZWZlMDVjZDk1NDcgbGVnYWN5LXRydW5rCisxMzgwMCBjMGI4NmE0NGExMjAzYTQ1NGYwOGYxYzhiNmI2ZmZhNWU5Y2Y0OTExIGxlZ2FjeS10cnVuaworMTM4MDEgMmIyNmU0OGE4NWE2YTI0ZTA1M2ViZWJhOGU2YjdkZWIxZmU4MGQyYSBsZWdhY3ktdHJ1bmsKKzEzODAyIDNmZThkMTMzMjhjODEzMjkzNDcyNTUxNWRhODVlNGZlNzI5OGFkYTIgbGVnYWN5LXRydW5rCisxMzgwMyAyZTA4NzUzOWRhNjA0ZGNiNTk1ZjNiMzQ0Nzg3NDJhMDc3YmMzYmY0IGxlZ2FjeS10cnVuaworMTM4MDQgMmNjNmExMmNkNDExOGUyZGZiNzc0Y2E2MDMyZTQ4NGE0ZDVhYjhjMSBsZWdhY3ktdHJ1bmsKKzEzODA1IDkyZjdhZjQyZWQ5MWM1YWE3NWFlMDM0ODYxNzI1NzgyYTAwYWFlYTQgbGVnYWN5LXRydW5rCisxMzgwNiAyMDFhYzA2OWIwZDBiOGE4ODNmZGI0Nzg1YWJmZTY0Njk2ODEyZDllIGxlZ2FjeS10cnVuaworMTM4MDcgZmZjZGIwNzExNjk1ODRmZjk3ZjExOThlNGRhNTFmMDMzZTQxOTIwNSBsZWdhY3ktdHJ1bmsKKzEzODA4IGVmYTc1YzY5ODU3ZDJiMjgyZmM4ZjhhNDY4NDcxNTc0NjljMzViZDcgbGVnYWN5LXRydW5rCisxMzgwOSA2NzJkYmJjMzliYTA4MzRiOTZjOTFjM2EyYjc2NjYyMDIyYmJlOTQ1IGxlZ2FjeS10cnVuaworMTM4MTAgNDI4ODY1ZDAwZWVlZjU1MmUxMmMwZTNlMTAzYjZkYjUwYTljNTRjMSBsZWdhY3ktdHJ1bmsKKzEzODExIDJlMjBhMGZjMmM1ZjNiMmI5ODk5NDhlMmI5OWM3NWI3ZTlmNGZkODUgbGVnYWN5LXRydW5rCisxMzgxMiAzYjk4MWVhY2FkN2I0MzkzNGU5Njc2YTlhOTJhZmUyOGUzNjNmMWZhIGxlZ2FjeS10cnVuaworMTM4MTMgNzBjY2NjYTZiZGYwNjFlMzlmYzM0NWM0NWJhZDU2ODk2MTlmYjk2NyBsZWdhY3ktdHJ1bmsKKzEzODE0IGE0OTlkMjBhMzVjYTJjZWFkODc2ZDJhMDllYjFmZmQxY2FhYjM5MzcgbGVnYWN5LXRydW5rCisxMzgxNSBjYWU0YjA5MjczYjMwYzc4NmQ1YmQzMTQwODg3NWEzZjA3OTIzMDBhIGxlZ2FjeS10cnVuaworMTM4MTYgYWRmNmQyMWNjZDdmMWFhNDRkOGM2Yzk5OWU5M2Q2ZDAxYWI0MjZhMiBsZWdhY3ktdHJ1bmsKKzEzODE3IGNkZDkyOGQyMjkzYzI4MmVmMGI5ZmNmYjIwNTVkNWZkMDQ0NjMxZTkgbGVnYWN5LXRydW5rCisxMzgxOCBkNDExMmQ0YzViYjE4M2U2NGFiNzdkZmUxMGM5NzliY2QyY2UzMWIyIGxlZ2FjeS10cnVuaworMTM4MTkgOThlMzAzOTM5YjM5ZTIyZWFlMjdiNmYyMTZiZjVkOGNjNWI2NzkyOSBsZWdhY3ktdHJ1bmsKKzEzODIwIDIwMzUwZWNjYTZlNGIxMzI4MTY4NjI1ZGFiOTIyYzUzODNkZjJlNDQgbGVnYWN5LXRydW5rCisxMzgyMSBmNjdjZTE1MjcxOWFhZmU5Y2ExY2ZiMjhlNzUxZThiOGNlNWVjYTI3IGxlZ2FjeS10cnVuaworMTM4MjIgODM3ZmU3NWQ2ZGMxOWUwMzYwMjFjODBhMjYxODcwMmEzODBmNDIxNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4MjMgNTE4OWVhNmU0YmY2ZWU0MjMxMzcxYmNkMjZkNzU3NGJkMmViYTExYyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4MjQgYWRmODdkMTNhMGMxYWFmMTEzZTk0NTNmYzBiOGUyMjVmZjI5NDBlOSBsZWdhY3ktdHJ1bmsKKzEzODI1IGYyYzkyMGQwM2Y0NGNlMzFkMzk3ZDgwN2IwYWVhN2M3YWNkMWEwYmUgbGVnYWN5LXRydW5rCisxMzgyNiBjY2RmNWRjMmFjZjY1MjY0N2I4ODQ0NDU2YzNiODIzMTkwOWRkMzY5IGxlZ2FjeS10cnVuaworMTM4MjcgOTY0MTg2NzQ1ZWE2YTRkMTg1Njk4YjczOTFlNDIzMThjM2JmZTAyYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4MjggZDk3MGFmMGNlY2U5NjIwZDI0NzExYjZmYzI0NmQzYjVkZDA4MzJmOCBsZWdhY3ktdHJ1bmsKKzEzODI5IDMzMWVlNGFmZTliZWQ4NmJkZTkzMTAxZWQ1ZWQ1NWFlNzkzOTcwNTQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzODMwIGI3YWQxODA5YmUwNDlmMDIzOGMxZjdiOGUyYjI0ZjY5YmNkNDBmZjUgbGVnYWN5LXRydW5rCisxMzgzMSA3OGZkYjZjMGMwYTE1MTIzMjgyNzQzNzM2MzA4OWNlZGRjMGZmMDRlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzgzMiBhOWQyOGEwN2EzMjc2Zjg5OTM5ZjNiNmI0MWZkZjIwNmE2ZGY2YzUwIGxlZ2FjeS10cnVuaworMTM4MzMgZDM2OTZiZjA4ZWVlYTg2MWQ4MDU5OTNmN2Q1YzJkMWFlYWU1NTViZSBsZWdhY3ktdHJ1bmsKKzEzODM0IGM2YWEzMmZiM2NmOGZhZjE2MWQzNzU0ZmE0N2Q3NTIwNjkzODA1MjQgbGVnYWN5LXRydW5rCisxMzgzNSAwMDk0YmYxOGU2ODg4NWIwMWNlNWIyMjNhODIwYjI1Yzc5MGZmMGM2IGxlZ2FjeS10cnVuaworMTM4MzYgMjU2MDIzNmVjZWRiYWRhYmI3OTNhM2M1MmMzM2RlZDQxNGY2ZWZiOSBsZWdhY3ktdHJ1bmsKKzEzODM3IDQ4ZjJiMThiYWQ1ZDFmZmExM2Q2Yzg0Yzc5YmQzMmFiZDk4Yjg5OGQgbGVnYWN5LXRydW5rCisxMzgzOCA2ZDY0NmY3ZTFhMWM3ZWY0YjE1NmUxZWEyMGQxMWI2MTg4NWJiZGE2IGxlZ2FjeS10cnVuaworMTM4MzkgOGVjNmQyYzZjNTk4MWVmMjY1YTRmZDZkMGIwZTgzNjkzMjIzOGNkOSBsZWdhY3ktdHJ1bmsKKzEzODQwIDdmMTc1YzMyM2I4ZTQ2YThjNWRkZTkxNzBiZDQwZjY2OGQyNzM3ODkgbGVnYWN5LXRydW5rCisxMzg0MSA4MDI4OTA4YTk4ODk5MTIzNjkyYzY2NmQ3ZmQ2YWE5ZjZlNzliMGI0IGxlZ2FjeS10cnVuaworMTM4NDIgYWRiNWI2ZGRjMWU1ZWY1YzdmMDRkMGVhZDhhYjdlZTQ4MGU1NTMyNiBsZWdhY3ktdHJ1bmsKKzEzODQzIDQyNGIzMWFmNmQ1MTBlMTU1ZDgxNTE3NmY5ZmQ4OTg2ZDRlYzAyNjkgbGVnYWN5LXRydW5rCisxMzg0NCA0NGM4MjJhNGQ5NTAxODY1NjkzODljNzVmM2ZjY2ZiNzI1OWM0M2M3IGxlZ2FjeS10cnVuaworMTM4NDUgMTU4NDlmZWFjM2ZhMDFkYzYxZDA0NTJkN2Y1OTgxNzFkZWVlOTZiZSBsZWdhY3ktdHJ1bmsKKzEzODQ2IGQzYzRjMTNlMDEzOGMyNGNlZjRkMGM3MTFmMjA5MjZhZThkNjc0N2IgbGVnYWN5LXRydW5rCisxMzg0NyA3N2IzMzJkYzIwNjM2NDRlZjE0YTU0MjNhNGQwNGU4NTViYzJkZTEzIGxlZ2FjeS10cnVuaworMTM4NDggZTM0NGMxZmZjZGFmNTM2ZTMzMjg1ZGNiMTk0NmEzN2JjMTRiMjE5YiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4NDkgNDIzMjAzYWFiZWZiNDhjY2Q2NmQ2OGE3Y2NkNWYxNTY0YmUwYTg0YSBsZWdhY3ktdHJ1bmsKKzEzODUwIDU4YjhkMjE2ZDcyMTRjZTNjMmIzZTY4ZDIyOGRiNTBkNWVlZmNlYmUgbGVnYWN5LXRydW5rCisxMzg1MSBlNmU0NWE2MGUxZTAyNzNhZjg4MGI3MzgwZGMxZmM3NTUxNDcwMjEzIGxlZ2FjeS10cnVuaworMTM4NTIgYjQ0MjQwYjI3M2NmYjUzM2RjZDM0NzIzZTZlNDExYzEyN2E0ZjIxMyBsZWdhY3ktdHJ1bmsKKzEzODUzIGIxYmI2ZDdhMzM1ZjRmNTI0NGNjYWFjZWE1ODY1YWQ0NmJiOGYxOGUgbGVnYWN5LXRydW5rCisxMzg1NCAxNTgxMzA3NmNiZWY2YWY1NzE4NzEyMDhjZGU1MjA0ZDdmYjVkMTM4IGxlZ2FjeS10cnVuaworMTM4NTUgZmRjYjg5ZDAwNjk1NGI4ZTkzOTYwMTkzMmViODg5MTA3OTQ1ZTRjOCBsZWdhY3ktdHJ1bmsKKzEzODU2IDAwZDU3N2U0NGQzNDFlODZiMjMwYWMyNzA3YzM3ZDEyZjhjZDVkNGQgbGVnYWN5LXRydW5rCisxMzg1NyBhNTk0ZDFlOGNkMWFhNWE4MjA2ZWNjMTBmYTdlNzhjMjgwZDQ4ZWEzIGxlZ2FjeS10cnVuaworMTM4NTggODNhOTg2MTgwZjQxZDY4N2UwN2E1OTRmYTg1YjFhZWUyNzRmOWZiYyBsZWdhY3ktdHJ1bmsKKzEzODU5IDU1NjY2NGM2MzlmYzI2NGVhM2VhNDQzY2FkZWU0MzkyMWRjMWY3MjcgbGVnYWN5LXRydW5rCisxMzg2MCAzYzQ0MDI4YjkxOWQ0YmVmNjdlZDQ5Y2Y2NWJkY2ZhNDQ5MTVkZTc4IGxlZ2FjeS10cnVuaworMTM4NjEgODk4YzMzZTIxNmJiMzYwN2IxN2VmNjExMWMxNTY4NDJlZWE5YzU3OCBsZWdhY3ktdHJ1bmsKKzEzODYyIGI0ZDJmNTQ2NWIzZjg5OGZkNjg1ZTRjNGVkZTY1MmVhN2JkYjgzNDEgbGVnYWN5LXRydW5rCisxMzg2MyAwNWY2OGQ3ZjkxYWM0MjBjNDQxMjdlZDE2ODVhYTk4YzY2YzdmMGQ3IGxlZ2FjeS10cnVuaworMTM4NjQgNTVhMWVmOWViZDRjZGVjNjllNWFhMWZmYzRjNmQ0ODk2MTI5MWFmNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4NjUgMGFlMjQ0MjBjOGE5ZjI2ZmIwMGNkN2NlNzE3MjM1ZmJkOTIxNDRiYyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4NjYgYzFiNzI1YjFhMTQ0NjJjYjMxMzEwMTQxZGVkYTUxMTVjMGIwM2QxMyBsZWdhY3ktdHJ1bmsKKzEzODY3IGM3MDJhMTJkMzE4ZDY4NmMzNWQzNjI3NzhmZjEwYzdjY2YzZjc2NTQgbGVnYWN5LXRydW5rCisxMzg2OCBlZDFiNDk4MjJmNzA1NWUzODJmOTkzM2Y1YzNhNjIxNmZhMGU1ZWZiIGxlZ2FjeS10cnVuaworMTM4NjkgMDgyZjQyZDVlYWUzMGVjZDI1ZTNmZmE1ZDRhMWI0NTU2MTRhMTFlZCBsZWdhY3ktdHJ1bmsKKzEzODcwIGEyYjk2M2Y3YWM5OTA3MDUxM2M2NjJmY2Y1NWU2YzhkY2I3ZTMyMDggbGVnYWN5LXRydW5rCisxMzg3MSA1OTVjYjI5YTg4NjdlZTJhZTY2OWJlMWM4NDU1OTUxMWM1MWYxMjQxIGxlZ2FjeS10cnVuaworMTM4NzIgYWQ3NTdhZmY4ZDM3OTVjMTFlMDRkNzJiNTRlZmVkZjI2ZmVjNTBiNiBsZWdhY3ktdHJ1bmsKKzEzODczIDRmZGM5YzFlY2FmNmI3Y2NmZmFhNjdiOGIwOGY3MGRmN2QyMzFhNzQgbGVnYWN5LXRydW5rCisxMzg3NCBmYWQ1NWVlYzVkZmNkYTEzZjJiODkzNjg1MjVhYjk2YjZlNTVmNTgxIGxlZ2FjeS10cnVuaworMTM4NzUgZjllZjM2OGI4YzJkM2ZhZGU3Y2RlNThiOTIxNzAzNTQxOTU1MTQ3MSBsZWdhY3ktdHJ1bmsKKzEzODc2IDQ4NzYyMjI4OGY5YzI5OTQ1MDQyYTZlYmUzYmU3ZGNiNTY0ODJiNWQgbGVnYWN5LXRydW5rCisxMzg3NyAzZDE1NGJlODcxNjI5ZWM2YjZjYWE3ZjEyYzQyNGViNjdmMGU2MmNiIGxlZ2FjeS10cnVuaworMTM4NzggNzBhZGNjZDQ1MjNhNDkxZjJlZWYyOGIwM2YzMjU2ZGYzZTI4M2U0YiBsZWdhY3ktdHJ1bmsKKzEzODc5IDMzNDEwMDIxOGE0YjFkZDIwMTY3ZTViOGNhZTNiNDJmMTMxMDI5N2MgbGVnYWN5LXRydW5rCisxMzg4MCA0Mjk0MWUyZWI5ZDg2YTQ4ZjIzZGMyYWEzZDc3MzI3OTk3MWUyMjllIGxlZ2FjeS10cnVuaworMTM4ODEgNmY3NTA3ZWYyYjExNWE1M2JiOWNmNDZiOGYxYTQzOWVlODI4NjgzYSBsZWdhY3ktdHJ1bmsKKzEzODgyIDdhZTVjNDA1MTA0MWU1YTAzZTg3MjA1ZmQ2Yjc2MTZkY2QyYzQ3YzIgbGVnYWN5LXRydW5rCisxMzg4MyA4YjgxNTgwNWYxMGNiNzJiZDhlMGRkOTk1Y2QyNWUzMTFkMzJjYjMwIGxlZ2FjeS10cnVuaworMTM4ODQgZDgzZmExZGQ3Yjc5ODE5OTQ4M2FiN2I0NjFjMDU4YzA4NmMzNjA1YiBsZWdhY3ktdHJ1bmsKKzEzODg1IGNiYzQ2Mjg0YTVhY2I4NGNiNTNmYjIyMjA2YTkzNmEzYTI2OWUwMDMgbGVnYWN5LXRydW5rCisxMzg4NyA0YzZjOGVmZmNiNDJhMTJiZTI1YzhmYjc3MDVkMjg1MjE1NWZiN2Y5IGxlZ2FjeS10cnVuaworMTM4ODggNTNiMjk3NGVkM2QzNmY3MjQyNTc0ZjdkZjY3ODUwYWZmMjQzODgwZSBsZWdhY3ktdHJ1bmsKKzEzODg5IDEwNjY4ZThhMDk3NTZjMTRkZTc4YmQ4OWVjZjVlNzY5ZGNjMTY4OWMgbGVnYWN5LXRydW5rCisxMzg5MCA4MjZlZjhmMjg3ODJjZThkMjcyMTk1Njk2NzJjZWRlZWQ3NDBlZjM2IGxlZ2FjeS10cnVuaworMTM4OTEgY2ZjNjUxNTkzN2E2OTU0YmRiODEyYzVhYTMzNDJlZWEyMjVmZGM2ZiBsZWdhY3ktdHJ1bmsKKzEzODkyIGM1ZWRkODZlMjY5ODBkNGY5OWY0NTk4Y2MxMTg5MDE1ZDhjMzM0ZjYgbGVnYWN5LXRydW5rCisxMzg5MyA2NzhhOWE3OWM3ZTg1YjcyNjIyZTRkY2FhODU0M2NkZmI1MWUyZWNjIGxlZ2FjeS10cnVuaworMTM4OTQgMDNkMWI5OGQxNzhkY2ZlNTU1MGRkNWNhZDcwZmVhZDk2NGU5MjhiNCBsZWdhY3ktdHJ1bmsKKzEzODk1IDkxNWZhZGYyMjk0MTEzOWFjYjNjODFhNDY2NmIxNWI0MDg4NDgyOGUgbGVnYWN5LXRydW5rCisxMzg5NiAzNzFiOTc2MmQ2M2RlNDU1MTQzZDk1OTIyOGFiNDIzNzdmODI5MjdkIGxlZ2FjeS10cnVuaworMTM4OTcgNWQ1N2M2OGIyYjMyMTI3NGI3YzA5ZWI5MmVhNjExMmM0NWFhYTk5MiBsZWdhY3ktdHJ1bmsKKzEzODk4IDA0ZjAyNGQ4NTQxYzhkNTljNzQ5ZThlZjIyOWFkZmFmYzk4NGZjOTUgbGVnYWN5LXRydW5rCisxMzg5OSBlNTU1YmEwNGI5MjI3NmRjODg1MWEwZWUxZWY2NmI5NTY1NzVhZmQ2IGxlZ2FjeS10cnVuaworMTM5MDAgNWY0NmM3Nzg0OTcxNTBlMGFmNzAxZWQ5ZGUxNzBjOWE1YWI0YWJkZiBsZWdhY3ktdHJ1bmsKKzEzOTAxIGJlNjAzZmNiYTAwMWFhZmU3NDI4M2IyMzhhZmQ1Yzg3ZDJmMDkwZjMgbGVnYWN5LXRydW5rCisxMzkwMiBjYTliZjY5MzVjNTJhNjNlNTY5NDBjYmFlNWJiY2JmZjlmMWQzZTY2IGxlZ2FjeS10cnVuaworMTM5MDMgNGM3ZDYwNDNiNDNhMjg5NDQ0MzM2NDg0OWFjYTk3MTViZDU3ZWE2MyBsZWdhY3ktdHJ1bmsKKzEzOTA0IGRmZDJjN2QzNGQ0NDNjNjk5NGM2MDU1NDA3YmU4ODQzMTA4MTNiM2YgbGVnYWN5LXRydW5rCisxMzkwNSBkMzQ1OTk2ZmNiNjUyMWZiYzkzNGQ0MThiMDQzYmI0YzIzODI2OGRhIGxlZ2FjeS10cnVuaworMTM5MDYgMjVjMDIwMmUwMWE2MjYzODFmMWExMTA0ZTdhMTY3YjY1MDdiMTVhZSBsZWdhY3ktdHJ1bmsKKzEzOTA3IDhmZGFjMTY1NDRlMWM3YzY3OGQ5YjViZGVmNjliYTdkYzNmZjNkNjYgbGVnYWN5LXRydW5rCisxMzkwOCAwOWU4YWFlMTZlOTk4MDMyOTcxMTJkZDFmODc0NjA5MWMwNWQ0ZmFhIGxlZ2FjeS10cnVuaworMTM5MDkgMjNmMjc4NjYwY2E5YTkyNTNkNDM5MmM4MWVmNDhkODE2MTIyNjlkMyBsZWdhY3ktdHJ1bmsKKzEzOTEwIDhiNjNhNmY3YTUyM2M0ZTE1ZTVmYTMxNzg2MTViZDY0MjNhOGJhYjUgbGVnYWN5LXRydW5rCisxMzkxMSBiOWJiZTg4ZDk1NTQ3N2EzZjQwYjRhOGNmNzdmNTQ1ZjFlZThjOWE1IGxlZ2FjeS10cnVuaworMTM5MTIgMjljZTk1NmZhN2I3NWU3YWUxMzYyMTE0ZWE0ZDA3NTg2MTcxYjkzNSBsZWdhY3ktdHJ1bmsKKzEzOTEzIDQxOTkwYmNlMDIzYTgxMDM4NmM2ZTk2NzlkMDhiMTAyMGQyMDUyZTIgbGVnYWN5LXRydW5rCisxMzkxNCA4NjE4NDE1ZTdhNjZjNzFiYWQyOWY0MmY4MWUyMTc5NDhiOTAwYThmIGxlZ2FjeS10cnVuaworMTM5MTUgZDkxOWNmOWZkZDg5ZTcyYjExYzRlZjkzNGEwYjBlMTRlN2U5ZmIwNSBsZWdhY3ktdHJ1bmsKKzEzOTE2IDdlMDVhN2QwYjUxMWQ1ZGYwNThjNTIwMzJmYmVjNDkwYzgzZTdjMjkgbGVnYWN5LXRydW5rCisxMzkxNyA2NjIxNmYzMjQwM2QxYTkxYjQ2MjYwNzdjMzY1NmMwNzkzM2UxYmI3IGxlZ2FjeS10cnVuaworMTM5MTggMDQwYjA1ODE2YjE3Zjk4MTEwOTA4ZWFmMjcwN2VjNWI2ZDg3MWE3OCBsZWdhY3ktdHJ1bmsKKzEzOTE5IGExMGRiNWI2ODQzZjI5MGQyYmRjYThjNzA2OTVhMDU4MjVjMzFkY2YgbGVnYWN5LXRydW5rCisxMzkyMCAzMjI5YjEzODEyMWUyYTRjYWJmNDMzN2Y2NGZmNTU1M2M5YjA1M2FiIGxlZ2FjeS10cnVuaworMTM5MjEgZGM5ZjFmOTY0NjkwYmE0MDU4YzE2MzUxMjBhNmM5Y2MzZTBkYWE2MiBsZWdhY3ktdHJ1bmsKKzEzOTIyIDNmYWExMjE4OTUwZWVjZTMzZWEyZGVjOGIyNjZkNDAxYTc2N2VhYWQgbGVnYWN5LXRydW5rCisxMzkyMyAzZTNjNzFmNGQyZGVkMWU0ZjFmZWJhZWI5MDY0MzhjMDM5OWNhNDYxIGxlZ2FjeS10cnVuaworMTM5MjQgNGFkMTRlNGRjN2U1MTYwMGMwOWU5NDVjZjY1Mzg2MGI0Yjc1ZTVkMyBsZWdhY3ktdHJ1bmsKKzEzOTI1IDFlZjE4MDczNzdiZmE5ZWM4YWQzZDY3YjFjZWU1MWM4NWE0ZWE1ZTIgbGVnYWN5LXRydW5rCisxMzkyNiAzMmMwNTNjNzljY2IzYzJjZTAwNzQ4MDZlYWFiNTFjNDhjNjBlOTZlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzkyNyBhY2E3YjVlYWY1ZTgyZjhhMGYwMGI0YzlmOWY0MmMzOTgwMDJhYjA5IGxlZ2FjeS10cnVuaworMTM5MjggYzI0YzI0MTg1MzUxNmZmMmJmMzlkOGYzMzBlZjQ2MDA5MjgwOGEyMiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5MjkgZGFmODhlOGVkYmMwZTUzZGFiZDQyYmFiNDI3ZGFhZWY5NzYxZDRjYSBsZWdhY3ktdHJ1bmsKKzEzOTMwIGMyMDhjNGU5ZTJhYWNmOGZkMjgyNTQ2YzhhODliMjcxYzZlMDk1MTMgbGVnYWN5LXRydW5rCisxMzkzMSAxNDY2MjgwZTZiYjBhM2I0MWQzNDBkZDVkMWM1ZmIwNzRkNWIzYTY5IGxlZ2FjeS10cnVuaworMTM5MzIgYzdlNzIzY2Q2MzQ5N2NiOTM4Mzk0MmJhYTQwMjVkMGFmMjY2NTFiNSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5MzMgMDE5Y2QyMWM4YzlmY2I2NTg0M2M3YTM2NzI3OWY1ZWM1ZDdlOWM1MSBsZWdhY3ktdHJ1bmsKKzEzOTM0IDYxYTBmMDIxNWE5NzZiY2VkZGM0NTEwOGZkZTUyNjM2NDI1MjZjM2QgbGVnYWN5LXRydW5rCisxMzkzNSA4OTUxMDJlZWE0ODUxYTc3OGMwNWFhZWVjZmVjNDU2MmU3NzQ4MTMzIGxlZ2FjeS10cnVuaworMTM5MzYgNmViZjY5MzhjODg3MjAxNzYyMTg4YjUzZjI4NzQ0ZmY4MjZkM2NjOCBsZWdhY3ktdHJ1bmsKKzEzOTM3IDU0ODZkY2YxM2Q3NzRjYWNkMzQ2MzFiZDI3YTgyNmJjMzY0NTA1YTggbGVnYWN5LXRydW5rCisxMzkzOCBhMTRkOTYxNGRhMDA3ZTFhOTMwNmI0MDk1Mjg2MjQ1OTIyZWQ0MDA4IGxlZ2FjeS10cnVuaworMTM5MzkgMGIyZTk5NGVmMTc1YTU5NzcwMzlmMmM0NDc3OTAxZGY1ZDM2NTAyZiBsZWdhY3ktdHJ1bmsKKzEzOTQwIDRjYTdiN2I4YTg0OTE2ZjU0MjBhNzY1NWE5YmUwZmQzZGM4ZGQzMzcgbGVnYWN5LXRydW5rCisxMzk0MSA4YzVlZTNjM2QzODkwMWJkZjRjNTM2MzFlZDg2YmViYjlkNTk1ZTk3IGxlZ2FjeS10cnVuaworMTM5NDIgZTBlY2YxYWVmZTA0ZTJkZWJlMWYwZDRjOTI2ODgyOGMzYTJlYmE3YSBsZWdhY3ktdHJ1bmsKKzEzOTQzIDY1MGU4OWQxNTU3ZjE0NjBmZjA5NzE3NGYxMDkzZGRhOWMwNjE3YmMgbGVnYWN5LXRydW5rCisxMzk0NCA4N2M1ZDBiM2RlNTllYmUwMTkzMDk1OWI1ZDk2MzY0OTFiMDZmYjdkIGxlZ2FjeS10cnVuaworMTM5NDUgNzkxY2Y3MTdjMGJlNGJmMWJiYTYxYmQ1ZjNhODc1N2MyNzk2YTcyNyBsZWdhY3ktdHJ1bmsKKzEzOTQ2IDZjNDUxNzFjMWExZmU3YmM4MjIzZjhiOWI1OGFhMDdlMmYzY2JiMTcgbGVnYWN5LXRydW5rCisxMzk0NyA0ODgyYjJlNTJjYjI0OWE4OTUwNjhmOWVkMTZiYTdhYWRkYzgzMWFkIGxlZ2FjeS10cnVuaworMTM5NDggOTVlOTY5OGZjOTA4YzJkM2VkNDRiOWZhNjA5ZTAzYjk1NWYyNzNlNSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5NDkgYzE2MWQyYjg1MjA3ZmE3OGUwMGY5ZWIzYWY2YzJlYTI4Mjg2MzdjYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5NTAgYTVhNTEzZmVlNWIxZGIzYTYyMTQzZjVlZmUwOWUwYzRkMGZlNmM1OCBsZWdhY3ktdHJ1bmsKKzEzOTUxIDUzZjY5Yjg2NzZmM2MxZTU4ZjFlZTljODhiYWFmYTQwMGQ3ODZlNTUgbGVnYWN5LXRydW5rCisxMzk1MiBiZjM2OGYyZjdjMDA2ZDVlNzczZmUzNDM0MDkzNjMyZjRhMWM2MTRjIGxlZ2FjeS10cnVuaworMTM5NTMgNTI1YjVhOWFjZmQ1ZGRlNTFjOWFiOTViN2Q4YjgwMjRhNTcwZGVjYiBsZWdhY3ktdHJ1bmsKKzEzOTU0IGY0NmM4N2I2NjE1NDIwNGEyNjdkMDg3NmQ4MjJhNGE0ZDIxYWYzYTkgbGVnYWN5LXRydW5rCisxMzk1NiA1MDc1NDZhODdkY2ZkM2JiNTBmZjg4M2UzM2RlOTg5MTYxMWQ4NmMzIGxlZ2FjeS10cnVuaworMTM5NTcgYjU1MTFjMDE3MTMxZmU2MjlhMjRmMDQ4NmUwMDhmN2IxN2E1NDY3ZiBsZWdhY3ktdHJ1bmsKKzEzOTU4IDA2MTE1NjQ1MWQzNmFmODIxZjg5NjQ5Yzg1MDkxMmM4OWIyNTliNGEgbGVnYWN5LXRydW5rCisxMzk1OSAwNjA2NjgyYzdlYmMzNWM0MmYyZTExZTc1OGY4MTgzM2I4NTNmMWFlIGxlZ2FjeS10cnVuaworMTM5NjAgMjQxMzhlYzNmMzk2MjExZTQ2NGMwMDg5MjY2M2MwNDE5YWUzYTM2YyBsZWdhY3ktdHJ1bmsKKzEzOTYxIDNmYWIzNzExYzdkYzY4NzMzMDk0NjEwMmU5M2JmMmIyMDA2ZmVmNDUgbGVnYWN5LXRydW5rCisxMzk2MiBmYmMyYzQ4NThjY2U4YTUwMTdhMGUxMmVhZjMyZjU1OTRlNTcwZTJkIGxlZ2FjeS10cnVuaworMTM5NjMgYzgxNTVkMDVkOWNhNmZhZjhlMTEyYzI1ZjJlMjE0ZGVkZDk5ZjlmNSBsZWdhY3ktdHJ1bmsKKzEzOTY0IDI4ODc0MDc2NTA4OGQzNWQ2YTk0YzFmMTk3NTNkZjFkZDM4NGQ5ZWMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY1IDUzYjJmMjFhZDY3ZjA4MTZkY2I2NmI5YjJhMTZiNWZkNzhlMWNkNjQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY2IDJmOWI2NWIzOGFmMmRmMDc1MTUxMWYyMTgxZDFkMDE2YjFlNWUwM2IgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY3IGM1ODIxYzNiZWZjYWNiY2E5NGMxZmQ1NDA1YjAzODNkZmNlMDZkZmEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY4IGM2ZDA5OWI0ZWI0MmE0NDE5NTYxYTEzYmI2MWRlYzcyYTQxYzQ1YzMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY5IDFlMGZiZTMzNzUxODU3M2NjZWYzOTVhNGJkMDZhMGJjOWRjMjA1OGYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTcwIGE2MGZhNzRhYWVhZmQ5YTVhNDhkMmJhMTA2YzZhODAwMDcyMDYzNGUgbGVnYWN5LXRydW5rCisxMzk3MSBjYTc2OWQ5ODY1MTRiYjI5MDJmYjM2YTkxMTg3YTQ3YzgyZWMyMGQ5IGxlZ2FjeS10cnVuaworMTM5NzIgMWNlNDE5ODlhMDNkMGFlZWI0Mjg0ZTRlMDIxYmM0ZjQyOTVmYjIyNyBsZWdhY3ktdHJ1bmsKKzEzOTczIDQxZTAwNzFkYjUzYTgwMDg0MzUyNmZmZTUxMTg4M2UxYjU5ZWJlZWUgbGVnYWN5LXRydW5rCisxMzk3NCAxMGFkMzcwYmM1YmQxYWE2Y2NjMzcyZGEwNmFhNGFmNmFlOTExZjAwIGxlZ2FjeS10cnVuaworMTM5NzUgN2ExODhhYWJlZjExNWM3NDBjNWU0MmM2NDJmZGFhMzg5MWVmZDdkMCBsZWdhY3ktdHJ1bmsKKzEzOTc2IGE5ODllZTg3Mjk2MWMwNjg3MTM2ZDViOGViYjVkZTE4Y2YzYTMwY2IgbGVnYWN5LXRydW5rCisxMzk3NyA3ZmI4YjBmMTNkYTBhMDk0NzNhOWMwZjMzOTAwZDAxNTBlYzczZjRhIGxlZ2FjeS10cnVuaworMTM5NzggMzMzMGViOGRhMjIyNzRjZTBkZDExZTdlNjIxZWIxODc2YTA1Mzk4ZiBsZWdhY3ktdHJ1bmsKKzEzOTc5IGJjMDg1NjYwZGJjMTMzODNiYTdiNDQ0NDJlOWQ0ZmEwOWZlODk5YTMgbGVnYWN5LXRydW5rCisxMzk4MCBmMzA4NjU0ODQ0NmVjNWIwNzQyYTczYTNjM2I4ZTA3YmE2YjJhZmI5IGxlZ2FjeS10cnVuaworMTM5ODEgOTQwNGE1YjQxNmI1Zjc2OWQ3MWQ4NDNiZDZkMjk2OWQ4ODAyYWRlMCBsZWdhY3ktdHJ1bmsKKzEzOTgyIDk4OTk3YWE0OTE2NDIzNjQyMmJjM2U2MjRmMDFjYjNlN2U1NGUzYzQgbGVnYWN5LXRydW5rCisxMzk4MyA4NGRmZjVjYzcyMTYyMWMxM2U5NWQ5NmZiMTkyYmZhZjU1YjMwNGM5IGxlZ2FjeS10cnVuaworMTM5ODQgNGZiODkzNDQ4YTZiOTVhMTQwY2JkZjM1NjZmY2UyMzFmYzE0YzFkZSBsZWdhY3ktdHJ1bmsKKzEzOTg1IGUzZGM1ODRlOTYyMzBjNGMzNDU3ODg0N2VlMTNhN2Y2MDdiN2Y4YTcgbGVnYWN5LXRydW5rCisxMzk4NiBhMzE2Y2Y5ZjgxYTc2OGY5ZDM3MmRiZGUyYmRkODkyZjBkZWM3ZGM4IGxlZ2FjeS10cnVuaworMTM5ODcgOGVkYjgxZmEwYTVmMjZkODY1MGMzZmM1MjgzMTcwNDU4M2Y0N2NiYiBsZWdhY3ktdHJ1bmsKKzEzOTg4IDA5YzYzZDkxM2FlMDVhZjQxYjg5YmI1MjczZTZkNWIzOTdjM2RmNjIgbGVnYWN5LXRydW5rCisxMzk4OSAzZDZiOTdhNThlOWNhNDBjNGY4ZjNhODllZWY2M2Y4NWE0NDRiOWQ0IGxlZ2FjeS10cnVuaworMTM5OTAgMDY2NzAyNDFhN2IxZGEyMjdlZTZmMjVhOGJjODE2MmFiODI2YzFiZSBsZWdhY3ktdHJ1bmsKKzEzOTkxIGViODQ2YjRkMDM4NTY0ODhlNGExYzAxY2IzNGFhM2E0NTFmNDA5ZTkgbGVnYWN5LXRydW5rCisxMzk5MiAzMmE0ODBkMDgyM2NmYTFjNDNlYTA5MjdiZTI5MTg5YWFiMDYyNzMzIGxlZ2FjeS10cnVuaworMTM5OTMgY2M5MjJhOWE0OGMwMjBiMDVmMWVlNTdkNDdmOGIzNjVlM2NmZDdmYSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5OTQgYmUyNWFhY2ExMWY0NTZmNGMxMTBkMzg3MDJkYjkwZmZiMDBjODRkOSBsZWdhY3ktdHJ1bmsKKzEzOTk1IDMxNmJlMDhjOWVjZGExZDlmZDJmN2UyOTNiMjE2ZWI1ODgwZTlhNjMgbGVnYWN5LXRydW5rCisxMzk5NiA1ZjE4ZTc4NTNkOTI0M2UyYzJmMzU1MjYyZWMxMzM3MzY3ZTRlMmZjIGxlZ2FjeS10cnVuaworMTM5OTcgMWRjMzkzNmU4NGRiMjgxNjFhNjA3MzhmZGM0Y2E1ZDhiMWVmNDFlMyBsZWdhY3ktdHJ1bmsKKzEzOTk4IDAxM2RkMzhhNTAzMWQwYjk4MzcwNDcxMGQ1YWRmNTIzMGY5MTY3ZDggbGVnYWN5LXRydW5rCisxMzk5OSAwYmMyYmExNzUyMzA1ODkxODQ2ZjBmZGZjNmFlNjY0NmM3OTQ4YjZjIGxlZ2FjeS10cnVuaworMTQwMDAgOTBmNDgzMGUyMTIyZjJkYWEwYzFmODE3MjU2YTE4MTY1NTBkNGYyZiBsZWdhY3ktdHJ1bmsKKzE0MDAxIGYwMjlkNDdkZDI5NjRhNmM0OTY5ODJkZmJlMzZhMGQ0OGZlZGZkM2EgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDAyIDViODAyNDM4ZDhmYzhkMjM2MDFmNTJkYTEyZTUzMjcxM2RlNWM0MjYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDAzIDNhNTA2YWIxYzEzODlkMGJlN2Y5ZDc4NjhiYmY0ZmI3NTNjZjAzNmEgbGVnYWN5LXRydW5rCisxNDAwNCBhYWJmYTBkNzIxM2MzZWE4YzgxN2ExN2M4MzRkNmYyMjcyZjA5OTNlIGxlZ2FjeS10cnVuaworMTQwMDUgMjM5Y2E0Nzg4YmVjMGJmYWNiYzA3Yjc0YmZjZWU1ODkxYTI2M2ZhMSBsZWdhY3ktdHJ1bmsKKzE0MDA2IDhhNjg3MWU5NWQ4MGIwZWE1MTg0Y2Y3MTFmYjBkMmU2ZmRkNTI3MzIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDA3IGNjMThiMjRkZWUzZGI3OWY5NzdhYjIyZWM1OGYzOTE4ZDVmYTIwZGMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDA4IDJkNzliNDkxYTUyOWM1NDlhNjQ0ODUyZWU1YWFkYzMwODU1ODMwMzUgbGVnYWN5LXRydW5rCisxNDAwOSBlMGZlNGM3YTllZmYzM2RlYmYwMTE0Y2Q3YjNlNjcwNGU2NTdlM2JiIGxlZ2FjeS10cnVuaworMTQwMTAgMGEzYmI0MDNhNDMwNWExZDA5NTMyNzE0OTM4YjhhNjk0MmNlYjk5MCBsZWdhY3ktdHJ1bmsKKzE0MDExIDM4Yzc0NDRmNjMzYWI4MDJmYTUwNDcyZDgxYzE5YTMyMjIzZGYxNjEgbGVnYWN5LXRydW5rCisxNDAxMiBlMTJiZThmNTE4OGZkNzYyNTM1NDQ2YzczOTgwYzJiZGU0YTc0Mzk0IGxlZ2FjeS10cnVuaworMTQwMTMgYTA1YTA1NjAyOTAyOGE4MDU4M2Q2YWZlY2YyNDgzZWIzYmIyMTUyMSBsZWdhY3ktdHJ1bmsKKzE0MDE0IGU3NGVmMmI1MDU1NTZlZDNkZWU4YWUwMTE5MDQ5OWUzYjJmYmJjNDUgbGVnYWN5LXRydW5rCisxNDAxNSA3ZTQyOWU0Njk2OGEyNDYxYTFkM2U5ZDBiNGRiNDE2ODc4Zjk0NjE3IGxlZ2FjeS10cnVuaworMTQwMTYgNDI2OThmMzQ1YmQzMDQwYzQyNTY5ZjIyNDk4NGE4Y2Y1YTcwZTJhZiBsZWdhY3ktdHJ1bmsKKzE0MDE3IGVmMDNmMTZhZTVlYjI3NTM0ODNjMDZlMjRhZTc3OGY1NTI3OTQ2ZGIgbGVnYWN5LXRydW5rCisxNDAxOCA2YzVlMTJjNWE2MTY0ZDJkMWE4YjQ1MTQ2ZmNhNjdlMTE2YTY4NjY2IGxlZ2FjeS10cnVuaworMTQwMTkgMTJmNDYyZmQyNGY3NTNlZTI1MmFlNmEyN2ZhMDYxYzc1YTdmNTFkOCBsZWdhY3ktdHJ1bmsKKzE0MDIwIGQwZjRhNzliOTg1ZDRkZmRiYmVhNWM2MDE2MTI3Nzc1MjY3OWY0NzQgbGVnYWN5LXRydW5rCisxNDAyMSAyNDU5ZjExNzYxZjA5NTdkODhlOGNjMGUwYzdhZTU2OWU0MDBmMWVjIGxlZ2FjeS10cnVuaworMTQwMjIgOTVhOTgzM2IwMDBlOTdkZmUyYWRjMTIxZmZhMjgwZjM0N2MzMDg4NiBsZWdhY3ktdHJ1bmsKKzE0MDIzIDE3ZTEyMzA1OTczZWFiMGE3YjY1ZWMxNzkwYzU0ODllMGNlMjcwNDAgbGVnYWN5LXRydW5rCisxNDAyNCBhYWFlZTdiMjMzODAyMTVjODZiOTUwYzExZTRhNWEwNDQxYzVjYjlhIGxlZ2FjeS10cnVuaworMTQwMjUgNjk4MGQwNmUzNjA3NTI4M2Y4NTA0NDg4ODkxNTI2MmM5ZGE1MGJkMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQwMjYgNjc1N2U4MGM3NDc4MzI2OWEyMmEwNTg3MjFhYzlmNmY5MGNmYmRhNCBsZWdhY3ktdHJ1bmsKKzE0MDI3IDA3N2ZmNmVmY2EzNWU4NDYxMjk1MWE3MTU0ZjYyNGE0YTVkNGI1OTkgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDI4IGExNzBiN2YwNGM2NDdhMWM0ZDE1ZmVjMDUxMzk4MGQ1MDIxM2UzYjAgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDI5IGFiMmE2ZjkxMGY2NTMxMjA5NjJmZWEyYTExMWVlYTFlODFmZGE3OTUgbGVnYWN5LXRydW5rCisxNDAzMCBhMjY3M2E4YmRjYTI4MjQyNWE5ZjQ3OTlkZGNkZDBlNDE1N2M4YjQxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDAzMSAxNDhmZDQ3NWIzOTNkYzcyYmI4Mjg3NjFkYzY1MWZlZGRkZWY4N2JlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDAzMiBiNGQwN2JlYWMwOWJlZWQ1NzNhZTNiMzU5YzEwMGM3OWRjYjI4M2FkIGxlZ2FjeS10cnVuaworMTQwMzMgMTg1NTEzMWE0ZGNkNDdhMDQwZmJhYzcyNTE3MmY4ZGQyOGRlNmIyNCBsZWdhY3ktdHJ1bmsKKzE0MDM0IGMwNTM2M2NmMWI3M2IwZjI1ZmM3MTY0MjYyNjBkOTk5YTI2ZTVjZDcgbGVnYWN5LXRydW5rCisxNDAzNSA5NmYzZWJhY2E2YWU1ODBmMTEyZTJhNzAxYmFlNDZjNjg3NWY3M2I1IGxlZ2FjeS10cnVuaworMTQwMzYgNGYyNzY4OTMzMzEzYWQ0MTE0YzYwNjY0M2Y2ZjJhYzQzZTNkNTk3YSBsZWdhY3ktdHJ1bmsKKzE0MDM3IDA5ZDM1MTg4MmM1MTBmOTZmOTZhYmRlZDA0MWFjNjA5YTU0MTkyNmQgbGVnYWN5LXRydW5rCisxNDAzOCBhZjExYWRjM2NiZDcxN2M2ZWZlYThmM2Q3NTcwZGJjNmQzMzAzYWY5IGxlZ2FjeS10cnVuaworMTQwMzkgOGI0NmVlMzI1ZGMwM2U2MjhjYWY3NzEyYmYzMDUwNmJkYTM4MmZiYyBsZWdhY3ktdHJ1bmsKKzE0MDQwIGM5Y2Q0YmJlZDhlMjgzZTI2NTcxMWQ5OGU2MWNiNzQyMzJkNjllYTAgbGVnYWN5LXRydW5rCisxNDA0MSBmMjFmMTk4ODZlZTM4ZjVmOGNjYWJhYThhMjUwNzgzNWI2NjQzMzYxIGxlZ2FjeS10cnVuaworMTQwNDIgNWM1YTNhNWNjNzlmY2RlNjJkMWM0OGZkMGFlZjNjNDVjZTcwMTg0YSBsZWdhY3ktdHJ1bmsKKzE0MDQzIGUyNDA4NzQ0ZGM3ZjM5ZTc2OWZiNjkyNjE2YmMzNzczOGFlZjYwYWQgbGVnYWN5LXRydW5rCisxNDA0NCBiYWI0NmFjYTJiZWNlNjYwMzRiODFlNGRkZGM0ZWQyMjY2N2FmMTY2IGxlZ2FjeS10cnVuaworMTQwNDUgYTk3ZTYyNWVkNWQwNGQwNWQxZTBmNmQ4Yzk2MzQ2OTVkYjI3OGZhMSBsZWdhY3ktdHJ1bmsKKzE0MDQ2IDdkYzkyNzIwNGQ2NTgyZTEyZTM5NzY5ZDJkZDUwOGU0MmE3ODEzYTAgbGVnYWN5LXRydW5rCisxNDA0NyAwNjgwZTY3YTBkNDk1NzM3ZDIxMzJjMDdkZGY5NGRiODdmNjg4ZWJkIGxlZ2FjeS10cnVuaworMTQwNDggNmI4Zjc0NmJiZDVhYTAyYTIzYjBjZGMzYmM1YTA1NjcwOWJlNmMzOCBsZWdhY3ktdHJ1bmsKKzE0MDQ5IDM0YjZhOTJmYTA4ODQyZmRjNzcwYWIyMGMwZmNmMTgzYjg3MGU1NGUgbGVnYWN5LXRydW5rCisxNDA1MCA5Y2RmM2ZhZGRhOTI3NmM2MmE1MTRiZDVhNTU4NzMzMzVkNDQ3M2ZkIGxlZ2FjeS10cnVuaworMTQwNTEgNTg1MTNlYmE1NjY0MzAwNjU0MzAxMDhiYjM0MmJkYjBmYzQyYWUxYiBsZWdhY3ktdHJ1bmsKKzE0MDUyIGJkZTA2ZDlkNGNiNGYxNjJmYTgxZjZlMTE3MzJhMDU4MTJkYzY2MDQgbGVnYWN5LXRydW5rCisxNDA1MyBiZGFlNjFhZWJhNTVlODczOGNlM2YzMzk2NTdmZDgxNjc3MmE2MWFkIGxlZ2FjeS10cnVuaworMTQwNTQgNzAzNGI3NWFhZDAzYjcxNDZmZjUxNWU2Njg3NWEyMzlmZWZmNjQxOSBsZWdhY3ktdHJ1bmsKKzE0MDU1IDNiMjBlNTBmMmQ4M2EzMTczZDNhMmZlZGY1ZGJlZTA4N2NkMzU3ZTggbGVnYWN5LXRydW5rCisxNDA1NiBkMDIzZDFjOWFjNDkxNDZmMTE4NzViYTk1NWRlZmIxOWY2ZGE2YWUxIGxlZ2FjeS10cnVuaworMTQwNTcgY2ViMDZkZTIzZmFhOTJlMWU1YTFkODFmMjI5MjZlYjg3NThmYWJkZiBsZWdhY3ktdHJ1bmsKKzE0MDU4IDYxMmI4MjMwYzZlN2ZjNjk3MDFmNDFjODk2MjU2NDBmMjBjMzZiOTcgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDU5IDAyYWUyZTU1NWVmOWQyNmVmZmZkNDc2NjcwNzgwYzJjMTFjNjhmMzcgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDYwIDU5MTE0YmUyMWE3NWY4OTdjZDRiZDg3YTlhOGE3MTQwN2ZiYWFkZDkgbGVnYWN5LXRydW5rCisxNDA2MSBkZmUzNzE5ZDc4ZTlkYzZlZWFjYmUzNjRjNDBkZTZiYWY3NDQ0ZGIxIGxlZ2FjeS10cnVuaworMTQwNjIgMzNmN2IxMmM3NzZjZmI2ZDk0ZjNkZmM1YTE5MmM4ZjAxOTQ0YzZlOSBsZWdhY3ktdHJ1bmsKKzE0MDYzIGNkZTg4MzdjODI1OWFkMDlkMjZmZmM0NmExZTU5NTU1N2Y1NmNmNDMgbGVnYWN5LXRydW5rCisxNDA2NCA5MjNiNDNkYjM4MTQ2MmIyZjc0M2JiZTg4YjA0YTBmZDVhN2ZkMTZmIGxlZ2FjeS10cnVuaworMTQwNjUgMTZiMTFhY2QzZThjM2Q1OGQzZjhjZDhjMWUzZjgxMmNhYjQ2NWIxZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQwNjYgNzU2MzUxNzA3Y2FjYzViY2QwYjllMDFkZDBjOTcwZmY2NGY2MzY3YSBsZWdhY3ktdHJ1bmsKKzE0MDY3IGQ3MTk5YjlmOTA5MTJhYTM3NTQyMDhlNDA3ZTU4YjlmMjYwMWI4N2EgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDY4IDRjNTAzMGQ0MmM2ZmZlY2QzMjdlOTNiYTZiZTRlNTE5N2IyMWFkYTUgbGVnYWN5LXRydW5rCisxNDA2OSBiMDRiZjI3NzRkMDVlZGM3NGU1MTliMzViNzUwODkwNjM1OTk3ODJlIGxlZ2FjeS10cnVuaworMTQwNzAgN2VmZWNjNWEzOTRjNjlhN2ZkMzAwNjRkNDI3NmZhNWFlNTRjMmVhOSBsZWdhY3ktdHJ1bmsKKzE0MDcxIDdlNWY1MWRjMWI0YjlhMTQ5NTcwMzQ2MzQ5MzUxZDE2OTc4MjEyODMgbGVnYWN5LXRydW5rCisxNDA3MiA5NjM2YTUwMmY3OTE3ZDFkMGQyMmM3ZDMwNWVjOWI3NGM2ODNkZjU1IGxlZ2FjeS10cnVuaworMTQwNzMgMzNlOGU3NDA5YjEyMDIwMzFhYTQ5OTU4ZDAzNTBlZTUwMzFkYzI1ZCBsZWdhY3ktdHJ1bmsKKzE0MDc0IGNhODhlNTlhNmViY2EzYjhkMzFiMTcxN2U0MmI1ZWI2MWYyOGE4MmIgbGVnYWN5LXRydW5rCisxNDA3NSAzYjcxY2RmYTAyYzc0MmMyNjJkOGFjMTk2MmQ4NDExNjFhOThhN2JhIGxlZ2FjeS10cnVuaworMTQwNzYgYzdmMGFhNDUxMGUyNjM4ZTA0OTk5ZTE4ZTNlNGUwMzE1ODcyMDRjYiBsZWdhY3ktdHJ1bmsKKzE0MDc3IGRhNmYxNjkzY2Q2NTEzYzAzMjA3NzgzYWFjYmRmNDZmMzJhMjgwM2YgbGVnYWN5LXRydW5rCisxNDA3OCA5ZWFjZDI5ZTYwNjYxODA0MmRlNTI4NGJjMDgzZmZjZTMzNWU5ZTJhIGxlZ2FjeS10cnVuaworMTQwNzkgM2YyNzQ0NzhjNGRhYTk4OWQwNzY3NDgxODc5ZDFhNTliZTU4YWNlZiBsZWdhY3ktdHJ1bmsKKzE0MDgwIDUzZDljMTU2MGZlMTRmM2ZiOTQwNGE1NzljYzAxZWJlYjEyMzNhMmUgbGVnYWN5LXRydW5rCisxNDA4MSA2NjQzODZkNjk2N2NhZWZjY2Q3YWM5YzJhMjQ3OTM2NzQyYTMyMmMyIGxlZ2FjeS10cnVuaworMTQwODIgOWNhMzA0NTNkZDRlNGU0NzYxYmZlZGIyNTMzMGIxMzEyOWFkMzk3ZSBsZWdhY3ktdHJ1bmsKKzE0MDgzIGY5Zjc1YjIxMmRhNDE4OWNmYWYyNzUwYzk2NTVmYTc1Y2IwOWEyNmYgbGVnYWN5LXRydW5rCisxNDA4NCAwMWY3YTEzNmM2NzdmMTE5ODNjMjVlMmUzNzg3OWMzY2FjMWY0MWY4IGxlZ2FjeS10cnVuaworMTQwODUgMTc1ZDdmNjgwNGQ3YTNiNmM5M2FkYTQ2N2QyYjE2ZTA3YWI2NWRjMCBsZWdhY3ktdHJ1bmsKKzE0MDg2IDcxMjgxZmY4YzZhMmJhNTYwOTE2NDQwYWNjMjhiZjE5MWVmOTVjNTIgbGVnYWN5LXRydW5rCisxNDA4NyBjYzQxMmRmZDc5Zjc3YzdkYjA4OGEyYmJjMTRiNTk1NmU1ZWMyMWRiIGxlZ2FjeS10cnVuaworMTQwODggMTZmYzcxN2JlYTNjOWFlYjM4MDYzMDdmMzllZTY1MWI2YzZmNDRhNSBsZWdhY3ktdHJ1bmsKKzE0MDg5IGMwZWI2M2M4ZjFmZWJiOGNhOThmMzBiOTFhYzYxYWI5MWVhN2RlOWMgbGVnYWN5LXRydW5rCisxNDA5MCBiYTA3ZmZmNzI1MTFiMmM5NDgxYzIwZTdmNjdiZTY3MDkxNjU1NmFkIGxlZ2FjeS10cnVuaworMTQwOTEgNGRiYjdjNjA5YWMxZjViNWQwMTM3MzdlYWM5YTgyNmQ1N2VlODIzOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQwOTIgY2JmNThjZDBiYjU3NDI5MjkyOTI2NjRiMWM5Mjc2ZWEzMGFkYzk4ZiBsZWdhY3ktdHJ1bmsKKzE0MDkzIDgyZmIwMmRlNTQyMTEzOTM3YzQzZWQ3YmRjM2IwNjBjNDlmOGQ3MjMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDk0IDVhMmYxM2E3YmQ0NWYwNzkzMTg1MTMwMjEyY2RkOWFhYzFiZTcwYTEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDk1IDgwYWMwNzY4MWFiZWIxMjNiZTE4YWRhMTM2M2FhNDkxOWZmOTRjZGUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDk2IDkwNjZmNjI3ZDM2MmYxMTkzNTQwZTQ1MDQ0MTZjZjQxMjYzMGJlYzYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDk3IGI1YmJjY2I3NWYyZGQ5MzVkNmVkNWJiZTA0YzIyOTRjYzY5ZDg5NmYgbGVnYWN5LXRydW5rCisxNDA5OCBhNDZjOWNiNDIxMjNlOWU5Yzc1MGQxZjVjZTVjN2U1OTM2M2NlMzQyIGxlZ2FjeS10cnVuaworMTQwOTkgYjEyYTExYWUxMjNjZjg1YjA5ZDlmMjQzM2JiMmQyOWYwOTgzZTMyNyBsZWdhY3ktdHJ1bmsKKzE0MTAwIDVjMTM1Y2VhYjIwYzU0NGRkMDBhNThmMTdlOGZkYjlmNTFkOGI2NTggbGVnYWN5LXRydW5rCisxNDEwMSA3NjFkMjVjZmMyNTk0MTJkNThmYmUwOTc1NWM0ODJkYjNlY2U3MzUyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDEwMiBmODg2ZmRlNzY1YTA1NzAwNDQ5MDk5YmY3OTEzN2M2MWIyZmIwOTQzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDEwMyAyOGI4NTg1MzU0ZGU1ODA4OTQzZThlMzkzMjIxZmM4NDYxMjc5ZGY1IGxlZ2FjeS10cnVuaworMTQxMDQgNTM1ZjQwZjlmODdkYzY3OTg4OTc3MjM0NzBkYWIzZGM5NGE2ZjVkYiBsZWdhY3ktdHJ1bmsKKzE0MTA1IGY4M2I3NDI3M2RhMjNhMDA4YzI0NzU1NzM3NDViMjZiOWJlZGYyYTAgbGVnYWN5LXRydW5rCisxNDEwNiA4MDU2OWQ3MjUzMjkxYTAwZTEyYTUzMDUwNjBiYjAwY2EyNTE3MjQ2IGxlZ2FjeS10cnVuaworMTQxMDcgOGNmY2QyNzNmYTVjYTJiNjQ0ZWZmN2I3ZGUxMDk1NWQ4ZDMxNWRiOCBsZWdhY3ktdHJ1bmsKKzE0MTA4IDI5NTFlMmQyNzg1MjJlZDQwMzdjYjg1MjBmZDU0ZWFjZGY4YTYxZjkgbGVnYWN5LXRydW5rCisxNDEwOSBhODNkMmExY2UxOTdhMzlhNzIyZWU4MmNmYmMzNGEyNTFhOWM1MzViIGxlZ2FjeS10cnVuaworMTQxMTAgNjgzNjRiZjAwMmYxMzg5MGIyYThkNTQ1OTRiMWFkMTY1YTgyNmM3YiBsZWdhY3ktdHJ1bmsKKzE0MTExIGJiZDNhOGFkN2NiNzY2NzI5YTZjMTY0YmQ3NGQ2YjM0Yjk0ZDk0YzggbGVnYWN5LXRydW5rCisxNDExMiBiM2U1NWNlMGViZDc1ZjRiMzhhNDg5YzRiOWRiNDY3ZTYwY2YyMGE3IGxlZ2FjeS10cnVuaworMTQxMTMgYWZiOTg3YTg0NGRiYTIxNzgzNDFmNDYxMTRjODllNmIxMzk0ZmJkOCBsZWdhY3ktdHJ1bmsKKzE0MTE0IDI2MGQ0MGYyMDA3NzhmZWY4YzJiMGQ5M2M0Y2RkZmIxNzk4ZmZiYzQgbGVnYWN5LXRydW5rCisxNDExNSA0YzY5M2ViMzIzYzZmMzE3MzJlZjVlZDhjMzZiZWRkMDc0NjE0M2UyIGxlZ2FjeS10cnVuaworMTQxMTYgNTBmN2QzNDVmMTU3YTZlMDc1ZDE3ZDVlNDA4NGUwOWY4ZDlmNWIyYSBsZWdhY3ktdHJ1bmsKKzE0MTE3IGI2MDVjNDY2ZDFjMGU4ZmMxNjYzY2ZiMDY2ZjI1ZDI0MGNlOWVlZDcgbGVnYWN5LXRydW5rCisxNDExOCAxOGZjMDhmYzlmZDQ3OGUyZGM2MjE3ODg3M2UyNGVkZTFkODM0NmRlIGxlZ2FjeS10cnVuaworMTQxMTkgOGQ0Y2E3YmU3Mzc5OGM5NzAwMTk3NjA3YTg0ZjI3YTAxNTYzODFlNyBsZWdhY3ktdHJ1bmsKKzE0MTIwIDkwZmZjMDdmNWQxMGYwMWQ2ZjI0YTE1Mzc0YWVmOTRlODQwYmZmZWEgbGVnYWN5LXRydW5rCisxNDEyMSA3NTU1OTkwZThkYjlhNDEzYTI0NjJlZGQ5MjhjODdhMjc4Y2QxYTY4IGxlZ2FjeS10cnVuaworMTQxMjIgZjcwMWU5MTYzYzc2ZDEzNTI5OWU4MzRiY2FjOTNhZjJiYzBjY2Q0YiBsZWdhY3ktdHJ1bmsKKzE0MTIzIDIzNmQ4NDI4YzRjNTBkYmQxYjI4YWUwZTBlYThkYTE3NjE2NWY3MjggbGVnYWN5LXRydW5rCisxNDEyNCBjMDQyZTQxNDBmMWVlM2M4OWNhNGY2MWNjYjNmMTc2M2VlYzM4NjMzIGxlZ2FjeS10cnVuaworMTQxMjUgNzNlYzY2YWRkOTQ3OGRlY2NkZmM2NWI3ZTA4ZjU1MTQ1MmJkMjVjZiBsZWdhY3ktdHJ1bmsKKzE0MTI2IDgxOThjNTMxYmJjNDdkNTgxOTFiNGJjOTMwNzgyZjA4MzQ1NzViMjEgbGVnYWN5LXRydW5rCisxNDEyNyBlZWFjNTRjYmIxZGNlZDBlYzk3NjFkY2JkMDUzODcyNGFjMTY5MzczIGxlZ2FjeS10cnVuaworMTQxMjggODk0M2I3N2YyMTlhZjE3MjYwMTY5MTU2N2JlM2VhN2E5ODJmZTI3MCBsZWdhY3ktdHJ1bmsKKzE0MTI5IDM5ZDY2YTA2N2QwYmYzODYyMzEzY2NiOThlYTNhYTNlOWYwMWViN2QgbGVnYWN5LXRydW5rCisxNDEzMCBiZWY4NjY4NmI3NTJiN2FhMTgyMjE2MzhhZTVlYTk5NjA3NGViNTEwIGxlZ2FjeS10cnVuaworMTQxMzEgN2E0ZjYyNDljOTc4N2RjNmJhMjkxNjcyYjA5ZWEwNTI1MWZiNDFkMyBsZWdhY3ktdHJ1bmsKKzE0MTMyIGIxN2VmNTRjOTFjNDFmZTJiNDAzY2QyNzFjNTcwYzY1N2MwNzk0MjUgbGVnYWN5LXRydW5rCisxNDEzMyAxNTZiMWJmZWMzYjg5ZDdjMDYxMGVhN2FmNzJhMDM2ZDY5MTZmY2IwIGxlZ2FjeS10cnVuaworMTQxMzQgNDUyMGY2OTNiNzY1ZjY4MzI5M2ZhZWZlMmRjYjcwZTc5ZGMzN2MxMSBsZWdhY3ktdHJ1bmsKKzE0MTM1IDIyZjRjZjE2YjVhMzE2MThiMzMyZDg1MjhlNjc3MjcxZTc2MDJiNTQgbGVnYWN5LXRydW5rCisxNDEzNiAyY2I1NmU5OGNmNTIzYWM1ZThlMzM1NDQyYThjOWJjZmY1OTgxMmNkIGxlZ2FjeS10cnVuaworMTQxMzcgMWU3ZWZjMThhODlkYjQ1MTUwMmFlYzFmNGViZDQ3MmM2NmYxNDBhNyBsZWdhY3ktdHJ1bmsKKzE0MTM4IGM3MTE1NWNlMTIxNTlmYWYyYzBhZDE4MzJkOGYxMzAzMzNiODcxNTMgbGVnYWN5LXRydW5rCisxNDEzOSBjYTE1Y2NjMjZmMGMyZGI1OTJlYmY3ZjI0YjVhMDI2ZWJkZmRkOTM5IGxlZ2FjeS10cnVuaworMTQxNDAgOGVmZWI4NzEyMTViNDhmMWEzY2ZhZjIxNWFjMThmMWY2MWE5NTUxYiBsZWdhY3ktdHJ1bmsKKzE0MTQxIDA0YWZiODdkMTEwM2QxMmZjNjQ3YjBlYmIwNjdmOTNkZGQ5NDY3MjQgbGVnYWN5LXRydW5rCisxNDE0MiBlMjY2MGFmZGMzODFiOGM2NWYxOGVjMmNjYTRhNmRiODlkZDRmMGI4IGxlZ2FjeS10cnVuaworMTQxNDMgNTI1NWQwNTA0MGMyNTIyMjc1ZGQzMzU0ODIxMDdmMmVhZmUwZDM5NyBsZWdhY3ktdHJ1bmsKKzE0MTQ0IGQ0NzMxZTQzZmE2MDUzYTQyYzQzYTA5YjAwMTUzZjA3NDZjNzRiZTMgbGVnYWN5LXRydW5rCisxNDE0NSA2YWJjNTBiYjQ3MDc0ZDM4YmM4YWVjYmEzODQwMTI3MWNkODVkNTk4IGxlZ2FjeS10cnVuaworMTQxNDYgODg1ODIwZmE3ZTMxODc3OGFiNzZiZmZhYWVlNmE2NjFkNDg0ZDVmYiBsZWdhY3ktdHJ1bmsKKzE0MTQ3IDA3ZDJlYTcxYWNkYzY2MDA2MmRkZjk0Y2JjMGRmZDg3YTNkMWEyYmMgbGVnYWN5LXRydW5rCisxNDE0OCAyMmMwM2FiNGZiMTY1MjVkNTMzMmFmY2IzMjFmYTgwMGNjNzNjNTgzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDE0OSA2YWRjM2M1ZmExODVhMTFhOWVjNDM2ZmE4NTExZjFiYjcwY2VlZDY4IGxlZ2FjeS10cnVuaworMTQxNTAgYzVhYmM4MWRkMWVlZDkwMjQ0OGQ1ZjAzNThhYmJiYmVkYmMzYTQ2NCBsZWdhY3ktdHJ1bmsKKzE0MTUxIGZkMGQzMWMzNDZiMmJiNDk4M2FiZDAzODY0NmIxYTZiNWExYWQ2MzggbGVnYWN5LXRydW5rCisxNDE1MiA1NWRmMzcwM2M5NTNiNjdlMDZkNTBjZTViM2Q0MjA4ZDY3MGIzZmNiIGxlZ2FjeS10cnVuaworMTQxNTMgZjU3ZmY0Mjg5ZmM2NGI2YjhkMjZkZTYxNDMxZjdlMGQ2N2Y3OWY0OCBsZWdhY3ktdHJ1bmsKKzE0MTU0IDU3YzE2ODVhY2IxNjczZWVmZTQwMmNhYmZmMDcyMTUxN2FiMzdmMWYgbGVnYWN5LXRydW5rCisxNDE1NSA0YzNlNTVjODI4ZDNiZTNhMmZjN2FjZWFhMDAyNmJlMGYzYTZiMjM5IGxlZ2FjeS10cnVuaworMTQxNTYgNDlkNmQzMDI3N2RhNzdjOWJkZjQ5ZGE0MmFiZGFiMDgyMWJjM2MwNCBsZWdhY3ktdHJ1bmsKKzE0MTU3IDY2YWEyMWY1MGVhMzUxMGNmZTBhYzI5YTVmOTM3MDU5ZTc4MTQxM2QgbGVnYWN5LXRydW5rCisxNDE1OSAzZmUyN2JiMmYxMTkzNDBhMDMxNGRlYmVkMDIyNWZjMmVkZDk2OWUzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDE2MCAyNzNhNWU5YWE2MzNlMzAzZTJjNmI3ZTlmNTcwMTQxMjEzOTU0ZjhlIGxlZ2FjeS10cnVuaworMTQxNjEgODZhMTYzYTUzYjFjYWI3ZTg5NDg0ZjQyZWQzYjBhYTNiZTZjYjhhZCBsZWdhY3ktdHJ1bmsKKzE0MTYyIGYzNjExY2IzYTI2MTczNzQyMWYxOWU5MjdhZWE4ZTZlZjc2MzA0ZTYgbGVnYWN5LXRydW5rCisxNDE2MyAxNzc1OTAwZGIxMDg3NTRmNmY1MGJlZTM5YjM5OTY3NTY0Yjc0MjljIGxlZ2FjeS10cnVuaworMTQxNjQgNTdhYTI3N2Q3YTAwZGU3ZTMxZGVhOGJlMDgzMWM3YTc4NTU5ZmRkMSBsZWdhY3ktdHJ1bmsKKzE0MTY1IGM2MjA1YmM3MTBlZThiMmIxZDJkZDJmM2VkODU1NTg2NDgyMjUzYjUgbGVnYWN5LXRydW5rCisxNDE2NiAzZmZkZjA1ZjU2MzVkZjNiYzQ4ZmIwYjIwM2Y4ODNlOWFiMjE3MzQ4IGxlZ2FjeS10cnVuaworMTQxNjcgYWY1YWQ1ZWRiN2E1ZGExZjAxOGRlNzljYWFlZTliYzVkNTNlMGUzZCBsZWdhY3ktdHJ1bmsKKzE0MTY4IDRiZDRiZDNiNTk3YWJlNjVmOTY2YjdiYzk4YmE3OGU5ZWE4N2Y0MmYgbGVnYWN5LXRydW5rCisxNDE2OSA2NDhkOTdiZDNhYzZjMzc3NWM4ZDQxZGU4MGI0NWFiNjkxNmQzYjlmIGxlZ2FjeS10cnVuaworMTQxNzAgMTEzMWJmYTFhZDk5MzIzNjg5ZGY3YTIzYzJjN2RjZGMxNjE2YTY2ZCBsZWdhY3ktdHJ1bmsKKzE0MTcxIDFiMmUzZTJhMjQzNzkzZjYwZGEwMmRjZjk1YzhkNjAzOWY4ZDM4ZTUgbGVnYWN5LXRydW5rCisxNDE3MiBjYWIzZmY1NTFmNGJjNjI2NTRlMjhlMWFhNzY1ODg0N2E2ZTYwYTNkIGxlZ2FjeS10cnVuaworMTQxNzMgZjI0OTY1ZTc3Yjg1NTZiYWQ1ZGVmMGEwNGU4MTdhNjBlOTNkZTNiMSBsZWdhY3ktdHJ1bmsKKzE0MTc0IGUwZTAxMWU0MDczYzVhNWEyZGIxMzRmM2I1ZWRmMGEwZTkwNGIxODggbGVnYWN5LXRydW5rCisxNDE3NSAxNWU1YmQ4OTM5NWE3ZDUyMDdkMjM4MWY3MmJlMzE4YzJlNzNjYWY5IGxlZ2FjeS10cnVuaworMTQxNzYgMjM4YjQzOTg4MmU1MjNiOGQ1OTA2ZTliYTE2MDA5N2NkNzJkNmUxMiBsZWdhY3ktdHJ1bmsKKzE0MTc3IDAxMTcxYmU0NzY5ZDEzZTQzNzlmNWI3NDdlZmRlODdkM2NhOGZmZmIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MTc4IDc3MDYxOGQ5YTdmY2ZhMGQ3OGUyYWIzNzVmYmZmNTg5MzEyNGQwMzcgbGVnYWN5LXRydW5rCisxNDE3OSA3OGZlODdjZTBkZWQxMDYyMzcwMzYwOTk0ZDM3NzQ0ZDVlM2FkNWJlIGxlZ2FjeS10cnVuaworMTQxODAgMTQ1NjFlODM5NWJiOWRlZmU4NTNlMDY5M2YyMzgxMWMyMjA3OGRiOCBsZWdhY3ktdHJ1bmsKKzE0MTgxIDBiYWQ5ZDhiOTQ1ZjcyMjM5NGVmMGYxNzIyNzk2MDIzMDExMWQxOWIgbGVnYWN5LXRydW5rCisxNDE4MiA1NzM4YWQ3MzcxMTQ0NzM5YTJlZjNjM2E0ZjQyZDgyZDBiYTVjNGQzIGxlZ2FjeS10cnVuaworMTQxODMgMmFhYjQ3NDg0MDEyMjJlNzBiNmQ3ZTE1YjUwMzJlZTkwYzQ0NzVjZSBsZWdhY3ktdHJ1bmsKKzE0MTg0IDFjZmQ4MTc2OGU3MDM1ZDM5ZDMxNDc4MGIyN2EzODRmODUxMzdiZDIgbGVnYWN5LXRydW5rCisxNDE4NSBlY2Q2Njc5OGNmMGJkYmNkOTlmMzliY2RkNjU1MjBkYWM3YzZlYjU3IGxlZ2FjeS10cnVuaworMTQxODYgMTNkYWFkOGE2ZWVlMTA4Yzg0MTkzYzczMGQxYjc0YTQ4NmE5YjRlYyBsZWdhY3ktdHJ1bmsKKzE0MTg3IDY5MjE2YzExYTFiZDdjNjZmMjI0ZDkzNDQyNzg3MGY1ODJjMWM4OGUgbGVnYWN5LXRydW5rCisxNDE4OCA5ZWM3ZDk3ODgwMGQyNjY4ODNmZmU4ZmM0NTdhMjEyZDUwNzhkMjI2IGxlZ2FjeS10cnVuaworMTQxODkgYjM2MDQxMGQ2M2M2NzcxYjgxOGM3Y2M2YmRlN2ZjOTliNDRhYWY5MSBsZWdhY3ktdHJ1bmsKKzE0MTkwIDZkOGNiNjZjZDIzODU2NDVjMDU2N2EwNjhkZDY3YmYyNzY2MTQyNDMgbGVnYWN5LXRydW5rCisxNDE5MSAwODMxM2FjMTdjZjNkYWM2NjI1MjdkMTIzYWJiMjAxYzA0ZDMzOWJhIGxlZ2FjeS10cnVuaworMTQxOTIgNjc1Mjg0NDk3NDQzZTIyOTY5MTA4OWEwMjY0Y2EwYmMwOTE5N2Q2NiBsZWdhY3ktdHJ1bmsKKzE0MTkzIDIwYWYwMmE1N2E1ZjFlMzU4MTQ4OTdhNTQ0NTllMzY2ZTk2MjZiZmUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MTk0IDY4YzI1OWI2ZTZjZGY4Y2QzYTVmZWI3ZTJmMzNmYmJkMTIzNGY1YTMgbGVnYWN5LXRydW5rCisxNDE5NSA1OTAyNzJhYmU2OWM4NWJjM2ZmYzA1ZDJkYjg4MDY3ZTA3MjQxYjNhIGxlZ2FjeS10cnVuaworMTQxOTYgYmIxZjQzZjI1Y2UwOWE1M2I5YmFmZjNkMDU0YTllNDBiMzVmYjE5OSBsZWdhY3ktdHJ1bmsKKzE0MTk3IGE3MGRjNzNhMjhkZTA5MzI0NTBiNDRiOTJmZjY4ZTY0ZGM0YzlhMWMgbGVnYWN5LXRydW5rCisxNDE5OCAxMDdjZTI5YjA0YTQ1ZDg0ODM4MTUwMDU3NjU2MmE2OTQ5NTdkOTQ0IGxlZ2FjeS10cnVuaworMTQxOTkgNTI4NTU5YTBiMmYyNTIwZTk4NzFkOTA0NmNkODNkZjRhZWJiOTY2NyBsZWdhY3ktdHJ1bmsKKzE0MjAwIDkxMjQ1ZGM5NDBlYmFmMDIxZjQzNzhlNmViZWNkMzM4YzE5ZmZmODAgbGVnYWN5LXRydW5rCisxNDIwMSA4Y2Y3YjIzZmI5NTUxNmUwM2NiMTkwMmMyNjMwNWFjZTczMzEwYzI0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDIwMiBjODdiODYxYzZlYzYwNjExYjczMDliY2UwMTIxNzhkYjBjYzY3MDlhIGxlZ2FjeS10cnVuaworMTQyMDMgMGVjODAzY2JkODcyMjVhZTVmMDNmNGU3ZmI4ZDdkNDYwNDZjOTc4ZCBsZWdhY3ktdHJ1bmsKKzE0MjA0IDY1ZGMwODJmNzAwNGExZDNmYTU4OGRhNjgwM2RmMjEzNjU4OGJhOGYgbGVnYWN5LXRydW5rCisxNDIwNSA2ZjIxMTljZDk5ZDI1NmFjNjdlNzgyMzgzNWY1NjcxOWQxNjY1MjljIGxlZ2FjeS10cnVuaworMTQyMDYgM2MyMTNlMzcyYjIyODlmNzg3YTNlNmIyOTQ0ZGE3MTQ3OGUwODE4YSBsZWdhY3ktdHJ1bmsKKzE0MjA3IDkyYzUzYjBiMmVlNWEwZDY5MGM1NTA4YzlkN2Q5Mjg0MjQyNTc3NWIgbGVnYWN5LXRydW5rCisxNDIwOCBjNmUxNDNkZmM1YTMzMmIwNTkwYjBiNWNjNGY4OGYxYWY1M2JlODVjIGxlZ2FjeS10cnVuaworMTQyMDkgZDRlYTEzNjE3MzFiNjM1NjBhODEwYzYwNTY5MGM1NWI4NjJkZGEyYyBsZWdhY3ktdHJ1bmsKKzE0MjEwIDQ3ZjkzYTk2OTM2NmFiYTZlNDAzOTljODRlYTBiNTEwNDg5ZDk3YjIgbGVnYWN5LXRydW5rCisxNDIxMSBkN2U5NmNkZTZiNDdiZGQzZmI1NjY1M2I3YjYzYWNjZTFjMjQ2YmM2IGxlZ2FjeS10cnVuaworMTQyMTIgYzM1ZWVmOGEyMTcxYTUyNWRmYzczZmYzZmEwNjAxMjc0ODU4MzMwNCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQyMTMgNGUzMDk1YzRhZWEwZTc3YmNkYmFhNjEyMjZjYzU4MGM1NDczYWFlZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQyMTQgZGZlMmJmYzgwNTBjYjkyOTM4ZWQ2NGYzN2RkZWJhNGY5MGI0NGU3ZCBsZWdhY3ktdHJ1bmsKKzE0MjE1IGI4MjczZTVkZTM3NGJmYjA3NzEzM2Y3ZGZiYmVhZDQ5N2M3NjkwMDEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjE2IGNmN2EwZjFiN2I0OGI2YzhlZjgwYTg2NGJlN2Y5NTkxNWIxOTNmZDMgbGVnYWN5LXRydW5rCisxNDIxNyA0Y2Y5MjVmY2I1NjE5ZTZiNjc2N2Y0Y2QxNmRmNTA0MmU3YmVkNjBiIGxlZ2FjeS10cnVuaworMTQyMTggZjRjYzYwM2RkNzk5MWIzMWM0MWJkZDMxZmY2Zjc1NmJjMTIxYTllZCBsZWdhY3ktdHJ1bmsKKzE0MjE5IDgxNzU4OTE1NmYyMTYxN2Y4N2RmYTJjMWU0MTNiM2E3NGIxYTM4YTggbGVnYWN5LXRydW5rCisxNDIyMCA3Nzg1NDZkY2JhMDUyYmEwZmJkNWRiYTQ1MWQxZDBmODZjNWI1NDE4IGxlZ2FjeS10cnVuaworMTQyMjEgMzMyMjk4ODAxMGI1ZTE3MmQ0ODMxNDVlNDJjY2ViMDA5NTVmNWZhMiBsZWdhY3ktdHJ1bmsKKzE0MjIyIGE3ZjI3ZjMwMzk5NWRiNTRlMjE0ZjhiYTc4NzU2ZTBiNjlmNjM4YjkgbGVnYWN5LXRydW5rCisxNDIyMyBhOTRjMjk2YTZmY2NjYzgxMTU2ZDdlYjAyZTIwNmIwYjljNjIwOGUyIGxlZ2FjeS10cnVuaworMTQyMjQgY2Y3ZmNiMGM1YmRlMmIxZjUzOTg2NWRkNTRmNTEyZTY4YmVjNWM1MCBsZWdhY3ktdHJ1bmsKKzE0MjI1IDFmYzhlNjY3M2I0OGVkMjYyM2MzZWNjMjE1MDBhNDUwN2FhYjdlZWQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjI2IDg0ZmQzMWRkNGIxMjFiOWE3MjFlYWNlY2U2N2EwZWEyNGVkMjFmZWMgbGVnYWN5LXRydW5rCisxNDIyNyBhN2RmN2Q1MjNkMjkzNWJhNzYyNThhNzVmYjRkZWI5YzQyNzNjOWNmIGxlZ2FjeS10cnVuaworMTQyMjggYmNiMGQ2MzlhY2YyMWJkMjRkMWQ0ZWIzYTc0ZDUyMjZmMDg3MDEzNSBsZWdhY3ktdHJ1bmsKKzE0MjI5IDA2OWExZmQ0MGFiYmQ3NWQ2N2Y5MmFlOTIzOTgxM2Y5NTUyYmExZDEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjMwIDg2ODkwYzA3M2MzYmZiY2FlYmEyM2RjMWJmODA5NTcxMGY4MmI0MjEgbGVnYWN5LXRydW5rCisxNDIzMSAxZGNmOWI3NTkzNzRmMjEzYWE3OWMyODAyZGYyMGY2Y2FkNWE1ZTU0IGxlZ2FjeS10cnVuaworMTQyMzIgNGEzMjQ3ZWRkYzQzODY5Y2YwMmYxNDRhNGEwNDE1YmViYzdmODVlNSBsZWdhY3ktdHJ1bmsKKzE0MjMzIDQ3MmExN2YyY2E5ZmNlMzE3MDJhZmQ1MDQ1ZTZhZGY3Y2RhMTM2ZTMgbGVnYWN5LXRydW5rCisxNDIzNCBjMGQ0ZWU5MzkxYjY4MjI2MTZkZjBkN2M0YmU0NGMzNDI4ZTUzOTI3IGxlZ2FjeS10cnVuaworMTQyMzUgZDA5MzRhODAzOGY2YTk2N2JhZDg5ZDRlNTQxYmY1MmE0ODQwMmZlMSBsZWdhY3ktdHJ1bmsKKzE0MjM2IDg3MDVlYTM5MGRiYTA1MmIwOTRhZTRhMTI3YmMyYWNiZWNlNDNkZWIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjM3IGRlZDk2MzY3ZThjYTcyYmViMmQ0ODVhZGQ5ZTFhYmIzOWRhNDEwOWYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjM4IGQzMzUyMDgyMGZhZmFjNGRhYTlkMTJlMWQ1NzRhYzM5ZDYzMDBmZjUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjM5IGU4Mjc2NzMzZGE4ZmJlOGM4ZDBmNjE1YzE4NzNjZmE3ZTNhOTVhOWMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjQwIDBiMDE5NGQ0MzUyZjMxMjRjOGRlMjViYTY2ODRiZjQ5ZTIyMWRmNDMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjQxIDM4NTYwYTNhMzI0OTEyYzU2OTEzNDhlODU5NzcyN2MwZTgwN2MwYWYgbGVnYWN5LXRydW5rCisxNDI0MiA5OWEwMWNiM2RkYjVlZjVkMTViYzQxYzA3M2FlYmEwZjM3MTVkNjliIGxlZ2FjeS10cnVuaworMTQyNDMgZDg4OTk2ZTQ2Y2IyY2UwMTFmMGVmYmQwMTk3NTc2YTNmODEwMDg4ZCBsZWdhY3ktdHJ1bmsKKzE0MjQ0IDk5YzliMTI2NjkwZGZiMDUwMjM1ODQ3NmIwYTFkNmRjODI3YzYxNjUgbGVnYWN5LXRydW5rCisxNDI0NSA0YzNjYTZjMDViY2IzMjFmOGQ3ZmE5YjQwODJmM2U1MzZjNzZmMGRmIGxlZ2FjeS10cnVuaworMTQyNDYgMGFkMjMzMjQwMTZlNGVkMzEyZmI5N2Q0NjAzZTU2MGQzMWYzNzk5MyBsZWdhY3ktdHJ1bmsKKzE0MjQ3IGZkNWNlYWQ3MzNiNjgyODhkMDkzMTAwZDE1OGMxY2QzZTgyM2E3MjAgbGVnYWN5LXRydW5rCisxNDI0OCBkYjc1NmQzMWU3MjdhM2JiY2Q2ZTdjNWZhMjQyNDliZmEzOTE4ZTBkIGxlZ2FjeS10cnVuaworMTQyNDkgMDIzZWQyNjYzMDc0NjNjZDIwNWZmMWQ4MmRlZTlmMmIxMTJhY2M1YyBsZWdhY3ktdHJ1bmsKKzE0MjUwIDBkMjdlOGQ4ZjA0YzFhMjAyOTY0NGZmYTFlYzNkN2VmNTU2YjQ3OGUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjUxIDY3NjQ2OWY3NWFlNjcyM2Q3MWI2NWM2Y2ExMTIwOGI2ODY0MzEwZDMgbGVnYWN5LXRydW5rCisxNDI1MiBlYTYxMDQ0Zjk4YWVkODYyZjJlOTg3MGQ2MGQzZjI2MGQ2Y2UyZTRkIGxlZ2FjeS10cnVuaworMTQyNTMgYWQ4NTk0MDg0MGNiYjViNTg4YjdjMjgyYWEzYzgzMGUyNGM4YWJlMCBsZWdhY3ktdHJ1bmsKKzE0MjU0IGI4OTZjMTJjMmVlYTVjYTM0OTcwNWQ4ZjdiMTZkNjM0ZGUyNWM5MDUgbGVnYWN5LXRydW5rCisxNDI1NSBjNDM0Zjk0MjdjOWIwM2M1MTljNDdhYWM4N2YwNTA3OWQ5NzE0ODhkIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI1NiAyNGY4MTRkOWUzZmY1NDU0NWJlMjdmN2Q5NDgzMmQ3MzA1ODExZWNjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI1NyAwMDAxNzIyNWYwNzc5NTU1MTNjNzY4MmE1NzAxYWZlZTMyYTBhZDk5IGxlZ2FjeS10cnVuaworMTQyNTggMmFiNzRiMTkzMjg2ZDljOGRiYTYxZGE2ZjdmYTgzNjAxMWNiNGMyNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQyNTkgNTI4ZWYzOGIzZDNhNzY3YTJhODQ1ZWQ3NGI4MDllMmJmOWRiNmIwNiBsZWdhY3ktdHJ1bmsKKzE0MjYwIDdmZGZhYWE2NTgyNzA5NjQzMTUyZjdmMzI4MjJiMjYwY2I2NjQ1NDMgbGVnYWN5LXRydW5rCisxNDI2MSBlOTk4YjM1MGE0YmIxZGExMmJiOGVjZWMxNjg5Y2RlZGVmZTc4YTYzIGxlZ2FjeS10cnVuaworMTQyNjIgODI4MzU1NGYxMzE5YTRkM2FkMGNiZDI0YzE0M2M2YmNkNmEzYTNmMCBsZWdhY3ktdHJ1bmsKKzE0MjYzIDc3MDljOTgzNTM4MjhjMmJiMjNiYWJkZWFkMjcwOGQzMWZlNzY4NmYgbGVnYWN5LXRydW5rCisxNDI2NCBiN2YyNjI4NzNiZTA0YmJlNGFmYzk4NGY2NjI2YjM1MWRkODhkZTAyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI2NSBhMjM4NmI5ZjQ3NGQ4YWIxYTU0N2ZkY2Q2MzcwYjk2ZGRhOWFjNmZjIGxlZ2FjeS10cnVuaworMTQyNjYgOTU1MTFmMzkzMTlhNGExZjc5YTQwMDlkMWFjZDU1ZGQxNTg4NmIzYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQyNjcgYjgwMGUzNmFlZDRlYmRhYmVjY2RkZDI4NWUyMGZjZTExZDJjMjNiNyBsZWdhY3ktdHJ1bmsKKzE0MjY4IDQ0MmQ0Y2I0NDBjODgyMjg4NzgxMDYxMTE0ZWE1Y2FiOTQzN2JiMmMgbGVnYWN5LXRydW5rCisxNDI2OSBkZmY3YTAzZTdkMjRlZGEwOTE3YThmZTIyM2EyNWU2N2IxYjIxYjU1IGxlZ2FjeS10cnVuaworMTQyNzAgOGFmZDZmYjU4OGVlN2I5YzY1M2ZlODIyNTFmNjBiNGJhYWEzNjI1MyBsZWdhY3ktdHJ1bmsKKzE0MjcxIDVlNmU5ZTg5M2FjZGNlZmQ0M2FlYjUzOTZmZWIzMWZiMGQ5ZWU1NTQgbGVnYWN5LXRydW5rCisxNDI3MiBhMTI2ZmI1YzYyZGM3NDc4ODRmODI2OGE4ZjFmOWRmYjAyMzM2NDgyIGxlZ2FjeS10cnVuaworMTQyNzMgNDgzNzBjNjdkZDllNmM3ZmIxOTJkYTMyODBkYzYyZDUyNjVjOTIyZSBsZWdhY3ktdHJ1bmsKKzE0Mjc0IDQ4OTQ4M2I2NWIzYTNlYjFiYjk1MzM4NDM3NDNiZDQwOWE0ZjYxNjkgbGVnYWN5LXRydW5rCisxNDI3NSA2OWM5OTUxNjIyNzA2NDc0MWVmNWU3MGYzNmJjMjA2MzUxOTdjMjNhIGxlZ2FjeS10cnVuaworMTQyNzYgMDc1NmRmZWVjNGVlY2JkODM3N2VkNTE0M2M4ZDBiZTQzNGUxY2ExMiBsZWdhY3ktdHJ1bmsKKzE0Mjc3IDIxNmVmZGFkOWE0YjZmZjY1NDVlYjM3YWE1MGY4ZTE3Y2YzYmFmNWMgbGVnYWN5LXRydW5rCisxNDI3OCBmZjkxOTg1MzYyYzdjYzBkMjViY2ViMDJhNDE3ZWEzZWFjZGRlM2FjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI3OSBmOTRkNjYwMTY5MjFlOWQwZTA2ZTdhM2Y5Njc1YmIyZGUwMzkyMmUzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI4MCA5MTliMzdjNTJhODQyYTI2NWQ2NmZlYTY4MDdjM2FkZjhlODRiZWY2IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI4MSBjYmY0NDEwMmQ0MmFmYzVkYjgyYjg2MWQ0ZDJkM2FlZjg4ODIzMTNlIGxlZ2FjeS10cnVuaworMTQyODIgNmQxZDVmM2NjYTVmYjYyYjk3OGE2OWI1YmJjMDExZjc5NGY3OGQ3MyBsZWdhY3ktdHJ1bmsKKzE0MjgzIDY3YzYyMzljN2JjN2FmYmZhYjUxNWQxYWIxYWRjODU0ZjZhZDg4Y2QgbGVnYWN5LXRydW5rCisxNDI4NCA0N2Y3NWExN2IxMDM3NGIyY2Q0Y2FjNjBkY2JjYTQwMGI2MWY1ZDdiIGxlZ2FjeS10cnVuaworMTQyODUgYTk0NzEzZDZkOWY2YTgzMDA4NDRjMjJhNGViYWFjYmVkNThkODRhZSBsZWdhY3ktdHJ1bmsKKzE0Mjg2IDVlZmI2MmFjZjI2ZWYzZDkzZjdlNjJlYjc3YjdiNGRlYjc2NTFmZDkgbGVnYWN5LXRydW5rCisxNDI4OCBiNWFlYzMzNzkwYzhlNTUyNWRlNDI4MTgyMGRjZjMzYjIxZDM0NzhhIERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0Mjg5IDkzYmVkNjAzNTVlNGU5ZTU4NDg3NmJiZjIyNGUwZDhjYWE3ZGM0YTEgbGVnYWN5LXRydW5rCisxNDI5MCA4YjM0ODE4N2UzMDMzMjZjNDA0MDMzODFlYzhkMTE4Yzg1NzY3NjJhIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI5MSBlZjFlNjNmNzc0NDU5OTBhYmQ0N2JiZDgzMDVhMjM2ZTgzZGJkYTUxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI5MiBmNjgwYWIxMDZlODYxZTA3ZTI2YjUxNTE1MmY0NjBhMzgyMGRmNTNjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI5MyA0N2Q3MGY0ZjYzNWYzMTBlOTFhZjRmM2QzMzE0Mzk2NjUwYmNiOTA2IGxlZ2FjeS10cnVuaworMTQyOTQgMWM0MzU0YmJhNDJiOWExOWJlZGRmMjA3YWI4OTY1Y2M2OWQzODBhZiBsZWdhY3ktdHJ1bmsKKzE0Mjk1IDA5ZGJiNDcwMzRlMGY1MmJmOTBkZjE5Zjk0Nzk3NmRiNzllMzJmNTYgbGVnYWN5LXRydW5rCisxNDI5NiA0YzE2ZjQyNWM3MTJjNDIzNzBmZmUzYjg3MTNhZTA0OGE5ZjBjMTY1IGxlZ2FjeS10cnVuaworMTQyOTcgZTM0OTkxMDIyNTcxNzUxMTJhMDFjYWVjMzEzYmZkYjQzYzNhMmY0MyBsZWdhY3ktdHJ1bmsKKzE0Mjk4IGY0ZjliNmI0NGU5ZTQ3YzczODgxNjIzYzUwMzg3MjRlM2VkOWU3MDUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0Mjk5IDBkZDUyMGY0ZGNlOGRjMWRkZDQ2YjUwYzI4ZTM3YWY0OGZmYzg4OGUgbGVnYWN5LXRydW5rCisxNDMwMCA4Zjg4YjMxODQzYWJjNTI0NDlmMGY0Y2E3ZDgzM2IwMDRhODg1NDMxIGxlZ2FjeS10cnVuaworMTQzMDEgODkwYjExYWEyZWJjNzJmODY4NGUwYjgzMjljYjFiYjYzYzJjZDU0OSBsZWdhY3ktdHJ1bmsKKzE0MzAyIGRlNDRmNTExNzY4YWM2NjcwZGE1NGNmMWQ2ZmY3MDMzNTJkY2MzMjcgbGVnYWN5LXRydW5rCisxNDMwMyBiMGViNDIxZjhhZTliZWI3ZDhhMTc4YWUzZmMzMTVkNmM3YjYwYjg0IGxlZ2FjeS10cnVuaworMTQzMDQgNTg4MzcxM2UyZGEzYTYxZjEzOWE0Y2JlOGU4NTYyZTIzMWU0OTJkZSBsZWdhY3ktdHJ1bmsKKzE0MzA1IGRhY2FhMzRkZmNhNDZmOTQzYzBiOTk3ZmZmY2E4Yjc3YmM0NzExN2MgbGVnYWN5LXRydW5rCisxNDMwNiBkMzZkMzEyY2Y5MGJlZTg2MGRhZTc3YWIxMmU2ZDczZTBlNDk4ZmE3IGxlZ2FjeS10cnVuaworMTQzMDcgZmY3OWVlNDNiOGExZmE3NThlMGQ5OTRiYTIzZDE0ODk3ZGI4Y2I0YyBsZWdhY3ktdHJ1bmsKKzE0MzA4IDg2ZTdlNWVjYWY3OTYwYjE2MzEzODg5ZGQ4ZDY1MDJiZmNiYjI3MGIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MzA5IDQ5N2UwMTFlZjFhMzI1YzA3NWZlMmZmZjI3ODM1NDkwNTcwZWUzMjkgbGVnYWN5LXRydW5rCisxNDMxMCA3ZjI5MzM5ZWMzYTUwYTNhNTM0MjNhMjMzYjZhOGQxYTQyOTU2MjAxIGxlZ2FjeS10cnVuaworMTQzMTEgMzRmNTNjMzZiYTlhMWIxZDBjNTE3ZTUyODJjOGM2YzQxNDFjOTI1NyBsZWdhY3ktdHJ1bmsKKzE0MzEyIDcxNmZiNTk1NDhiZTQ5ZmMzOTY5YTRmYmRjNDgxMGI1NTdlMDNjMWMgbGVnYWN5LXRydW5rCisxNDMxMyBkMTBjMTA4ZDNmZDc2MjEyNTJmOTVkZGIxMzM2NGVlNmNjZWE2YzI5IGxlZ2FjeS10cnVuaworMTQzMTQgYjZmNTJjMWVmNmRhOGE4YWNiMGY3MjY2ZGQxY2Y0ZjY4YTFjZWUyNiBsZWdhY3ktdHJ1bmsKKzE0MzE1IDZmNDE0Njg0NjMzNzg3OGMwYmJmMTQ5ODJiMmMwYjQwMWQ1M2Q4N2UgbGVnYWN5LXRydW5rCisxNDMxNiA0YTIzY2M0OWUyYjA2NGQ5ZDI2ZjNhNDBjNDQ5N2E1M2UwOWRjOGIyIGxlZ2FjeS10cnVuaworMTQzMTcgZDkwMDBlZTk1OWU1MzdlOGQ5Mjg2MzRjMWYyMDcxOWRhN2RlNjI4NyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQzMTggNWQ2MjVhMzY1ZTc2NTdhMjkyODAzZjJjZGEyOWM5ZTg1NWFkYzJkNiBsZWdhY3ktdHJ1bmsKKzE0MzE5IDM4YzRkNjFkYjdlYTFmOTEwODRiMzUxNDQwNjU1NDQ5YTAxMzRmNTkgbGVnYWN5LXRydW5rCisxNDMyMCA2NTQ2ZWEwNmUxNTcwOTkyNTU3MWE0OTMwMmYxYWY3MDg0NWE3Yjg5IGxlZ2FjeS10cnVuaworMTQzMjEgOTI1MGU1ZDNhYTMxZmRkNGY5ZjZmY2ExOTFlMWNlYjYwNzIwOWJlMCBsZWdhY3ktdHJ1bmsKKzE0MzIyIGFiZmExY2IxZWQwNTJhNTQyZDJhODZhOWY5MTQxZTIxMDBjNWUzMzkgbGVnYWN5LXRydW5rCisxNDMyMyBiMzIyM2YwM2M5ZWE4OGRmOTVmNjY1ZWI4ZGEwYWZjYjhlMTdjYTAzIGxlZ2FjeS10cnVuaworMTQzMjQgNjI3YjRkYmExMTkyZTI1YjA5OGIwM2MxZjk0YjRiYzFjNjVlY2M4ZCBsZWdhY3ktdHJ1bmsKKzE0MzI1IGU0MjU1NTZlNjk4ZWJmYTMzNmE5ZjY4ZDQ1YzEwYTE1MWQ4ZDFkMWYgbGVnYWN5LXRydW5rCisxNDMyNiBlOTE2OWIxOWU5ZTVjNDQ3YzY1YWQ5ZWViNTIwZjQ3MzE1YzYzZjdlIGxlZ2FjeS10cnVuaworMTQzMjcgMTE2M2E3YTFjYzY3OWI4MjBhMDIxYmE4OTY2YmY1ZmI4N2E2MjdkNiBsZWdhY3ktdHJ1bmsKKzE0MzI4IDgzOWY4Zjg2Y2NhYTNhYTFlZTMxZDk0MTliZDkxNzBmYjQxOWE4ZGQgbGVnYWN5LXRydW5rCisxNDMyOSBmZGM5ZWViODllMGIzMGU2NjgxYTRhMjRlNjBlMzU0MThkMTIyZjdhIGxlZ2FjeS10cnVuaworMTQzMzAgZWIzODFmZjE3YTMxOThjMjMyNGM2NDRmMzE2NDI2MGE2ZWViYTdlMSBsZWdhY3ktdHJ1bmsKKzE0MzMxIDQyMjMzN2MzMjI5YWRlYTFmNzc2MWEwM2FiZmUzNWViNmM0Y2Q3Y2EgbGVnYWN5LXRydW5rCisxNDMzMiA2NzZlNjQ3YjFiZTZiOTQzYzk4NWVmNTYyYjlhMTg2MDc0MjE3NTYyIGxlZ2FjeS10cnVuaworMTQzMzMgNzFkMDM4ZGIwZGQyM2MyZjEyMDQ1NDJlM2IwZjAxYTRkNTAwNDA1NSBsZWdhY3ktdHJ1bmsKKzE0MzM0IGI3YWViYzg0Y2JjMTY0YTVlMDBjOWRlYzU3ZjhhZWZlNzNiOTliOGQgbGVnYWN5LXRydW5rCisxNDMzNSBhNTMyOTMyYWM0MDgzODdkMTk0YmE1N2JhMjdjZjJlMWQ5NWQyOGMxIGxlZ2FjeS10cnVuaworMTQzMzYgMWU5NTJkOTMzYWJiZWY1ZDNkOWJlMjYyM2U5ZDRiMDI1OWQxMDZmNyBsZWdhY3ktdHJ1bmsKKzE0MzM3IDk4NTcyMzQ5OGIxYmE2NDJjYzI2OTVlNjA5NzFlOGI5YmY4ZTZkMjkgbGVnYWN5LXRydW5rCisxNDMzOCA2MDI1YjA3YzVjMjk2NmU1NmMzNzBjOTAyOGIwNTk0YWVkM2Q5YjgzIGxlZ2FjeS10cnVuaworMTQzMzkgMGI0NmQyNTBlMTk5Y2ZhNmU4YTcxYjMwODJjYmM5MmNkZGJmMDZmYyBsZWdhY3ktdHJ1bmsKKzE0MzQwIDcyZWJmOTFkYWEwNWQ1YTczMGZhMzczOTFiNWFmZjBjNTM3YjZkOWEgbGVnYWN5LXRydW5rCisxNDM0MSBjOTc2ZDY5M2RkZWIzNjQwNWNkOTcxODAzNGFmZjllNmVmYTYxYzE1IGxlZ2FjeS10cnVuaworMTQzNDIgNzhmMDA5ODgxMmI3NGIyNTdiMjVjNTQxYjAyZTA0MDU1MzlkOTcwMiBsZWdhY3ktdHJ1bmsKKzE0MzQzIDZhOTlmZjA2OTQ1N2Q3MThkNDE4OTEwMGFlNWVhYzM3ZDExYzZjM2EgbGVnYWN5LXRydW5rCisxNDM0NCA4OWQzMDhmY2Y2ZjQ1ODM2M2I0ZGZmMDMyYzY5NDVmYzZlOWM5MzE2IGxlZ2FjeS10cnVuaworMTQzNDUgZTE5YTM1MDk5NGI3NWFmYzFiZDQ3OTFjMmMxYjdhMDVmZmVhMmJkMiBsZWdhY3ktdHJ1bmsKKzE0MzQ2IDY1M2E5MzUwYTgxNzMzOTY5YjNlNzAyNzYzZmRhNWUwNGQwN2FiMWIgbGVnYWN5LXRydW5rCisxNDM0NyA4M2QzNTFmOTQ4YWI3NWNlZGM4YTZlNmZiZTMyZGI4ZTRiMTk3NWM3IGxlZ2FjeS10cnVuaworMTQzNDggYTg2YmRmZTQ1NzI1ODRkNmM2YzY2YTJiMjljOGI5ZGNkMGI3YmMxMiBsZWdhY3ktdHJ1bmsKKzE0MzQ5IDIzZTdkOTc4MTAxMzExNTY5M2NkZTAyOTQwMzc5MDkzMDQ2NGUwNjggbGVnYWN5LXRydW5rCisxNDM1MCBkYTdmNWY2YTg0OWQwZWU4YTgyYWU3Njg5Y2YzNGNiODA4MTJhNGRlIGxlZ2FjeS10cnVuaworMTQzNTEgODQwZTE4ZWVjMDdmNGY1NWM4NzM5MDIyYTNiNWY1NmMzNGNmOTIwYyBsZWdhY3ktdHJ1bmsKKzE0MzUyIGM5NzhhMjNhNGRhYjEwNzU5MWU4ZDA3NjlmMDdhYmRjMTdmNDUxNmMgbGVnYWN5LXRydW5rCisxNDM1MyAzYzc3ZDZjNWM4ZTkxODBmMmZiYjlmYmMwOTM2MmQ4Yjc0NjhhZjA4IGxlZ2FjeS10cnVuaworMTQzNTQgNDVjMzViNTM3NmU0YmRiYjViYjNhNjFkYjcwYWI4OGU0YmQ1ZmE5ZSBsZWdhY3ktdHJ1bmsKKzE0MzU1IDc3NDY1ZDhiOWY1ZTI5MGRiYzM0MjdlN2NmMjJiMGZkZTdjZDQ0OWMgbGVnYWN5LXRydW5rCisxNDM1NiA3ZWYzOWUwNzEyMGE3ZGFiNWYzNGY2YmUzYTk0ZTAyZDllY2MxN2FjIGxlZ2FjeS10cnVuaworMTQzNTcgNzZhNjA5YTk0NzMwMjIzOGY1MTQ4YTUzNGI4ZjgyNTFmZDI0MTFmNSBsZWdhY3ktdHJ1bmsKKzE0MzU4IDVjMjc3MDEyNDkwNGVkYjNjMjNiMzExODg0MTQ4MTcwMGEyNDk0NjUgbGVnYWN5LXRydW5rCisxNDM1OSA3N2ZhMzMxNmJmNTgyNTQ3MDcwZmU0MGMwNzYxYjVjYWJiY2IzYzAzIGxlZ2FjeS10cnVuaworMTQzNjEgNGQ5MTIyMTIwOGZmYjBiNDk0MTEyNDBlNDAwMmQyZTgxYjkwYzdlNCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQzNjIgM2YxZGEwNWNlZDU1MzZhMjFhY2EyMTdkYjgwZTZhZmM0M2ZlYjhkNSBsZWdhY3ktdHJ1bmsKKzE0MzYzIDNkY2RkYjQ3OWE3ZTY0NzM5ZTBjOGFkNzhkMjIwZjEyYTc2ZjhkNDkgbGVnYWN5LXRydW5rCisxNDM2NCA2MDU2Y2Q1MDI5N2U0Yzk5MTkxNzhjZmRmNjgwMzcxYjVkOTE1N2IxIGxlZ2FjeS10cnVuaworMTQzNjUgZGZmYmQ5MjFlZWVkNDVjYjMwODRkN2M3YWU5NTQ2NTllYmZhOThjYyBsZWdhY3ktdHJ1bmsKKzE0MzY2IDU3ZmIzNTAxYWIyMmIyZjY0ODk4NDljNjBlNzViMGM1YWYyMDUwYTkgbGVnYWN5LXRydW5rCisxNDM2NyA2MzY3ZDgyOWYzNmJjMjBjOTZhNjU5Nzg4OGE3NzlhOTY5ZmE2Y2IzIGxlZ2FjeS10cnVuaworMTQzNjggZTM2MDZkMzA4ODZmMDM4MzdhYzcyZjIxZmQyOTc0MTAyZmIyMzE0OCBsZWdhY3ktdHJ1bmsKKzE0MzY5IDk0NWNlNjBkOTg3OTE3MzY4YjA5ODZjYWU4NThiODA2Y2M1ZTZmZjMgbGVnYWN5LXRydW5rCisxNDM3MCAwMjA1MjZlNzJlYWNmMjgzNTRjZDU1MWE2ZjcyMTg3YzUxMGQ3YjA3IGxlZ2FjeS10cnVuaworMTQzNzEgOTA5MmQzMGMyYmI3ZDU4NmY3OTA2YjFmMmZiNGZmNzFhZWI2MzlmYyBsZWdhY3ktdHJ1bmsKKzE0MzcyIDYyZmE4ZWM4NTk1ZjAyZWEyZjc4YWE1YzlhZTNjY2Q2MjJjYWMwNzkgbGVnYWN5LXRydW5rCisxNDM3MyBhNGVlZjA4MTNkNGNiZTBiZWY4N2FkYTRkMzg1MmY5MjYyMmJmYjBjIGxlZ2FjeS10cnVuaworMTQzNzQgOTg3NmE2NGMxODFhYWE2MTgyN2RhNzZiNWE5Y2FmMTIzODg2MjE3ZiBsZWdhY3ktdHJ1bmsKKzE0Mzc1IDM1Nzk5NzU1MDlkOTM1Nzk2MjllYTJjMTQ3Njg4NjYwNmIxMjYxNzggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0Mzc2IDRjZjg0ZGRmNTEyOTA0M2QyNjkxYTI3NDVmOWEzOThiYmRiMDg4MjIgbGVnYWN5LXRydW5rCisxNDM3NyAzY2RlMTJiYjNkYTVkNzRjN2I2MWNkNWVjMzk4MmVlNTllMWUxZWExIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDM3OCAwM2JkNThmOGM5ZDAzZTEyYjliYmE1YjRkZjFhZTJhZTdjNzIwMTFiIGxlZ2FjeS10cnVuaworMTQzNzkgYjAzNjllOGRhYTBiZmYzOTY1NDFjZGIwYjZkZjU5ZTg5ZWZjNDY5NSBsZWdhY3ktdHJ1bmsKKzE0MzgwIDFhMjViYzJkMzI3MmFkYzZhMWUxMGY0ODhjMWE3NWFhNGIxODc1OTIgbGVnYWN5LXRydW5rCisxNDM4MSAxMDMzYTI0YzRhNTI5OGYwZDA5NjkxMzZiZmYzZDdjZGViYjU2YzU2IGxlZ2FjeS10cnVuaworMTQzODIgMzZjNjc1MGNmMjI3NTg2M2YzZWNhMTZhZTE4ZjdjYTcxNGRiNTBiOSBsZWdhY3ktdHJ1bmsKKzE0MzgzIDhkNWI5MGViYjkxOWJiMTdiODk3MTkyNzE3OWQ0OWZhNDE2NTY1MjggbGVnYWN5LXRydW5rCisxNDM4NCA3MDdkMTZmMGQzNDVhYTgzNDNlMjhhOTM5NjViNmI0YjBiZDI4MTA4IGxlZ2FjeS10cnVuaworMTQzODUgN2Y1MGY3MWFlN2JmMjU2MTU2ZjdhZjQ3MWRjOWRlM2RlZDEyZGUzNyBsZWdhY3ktdHJ1bmsKKzE0Mzg2IDI4MzlkODRjZmQ5NjY2ZDk2ODg4ODJjNjY3YjhkZmE1ZTg0N2YxZjYgbGVnYWN5LXRydW5rCisxNDM4NyA4YjZlMmIyMzZiYWI1MjM0NDhmYzhjMTczZWE5MzBjM2VhMjNlNDRmIGxlZ2FjeS10cnVuaworMTQzODggNmI4ZGFmMzM3ZDZiYWJjY2YzNDkzZThkNGJiZDJjNjBhZTAzZWUxMiBsZWdhY3ktdHJ1bmsKKzE0Mzg5IGNhZThlOGVkZDNlMmFiMjljYTIwOGRmNjg1MzM1YjkzMGM0NzY5M2IgbGVnYWN5LXRydW5rCisxNDM5MCBkYzE5YjU5MDBkYWViYmRmMTg3M2M5MWNiZTY3OTQ5MmNkNTY5YmUzIGxlZ2FjeS10cnVuaworMTQzOTEgYTc0MjE0NzM5NmVlZTA0ZGJkNGUzZGQ1NWJkZDU5Mjk5MjY2OTM2NCBsZWdhY3ktdHJ1bmsKKzE0MzkyIGUyYmJjM2U0MGNkYjk2NGQ1NzhjYzJjMTcxYTA3MTA1NjhmZjg3NTggbGVnYWN5LXRydW5rCisxNDM5MyBlYzQ2ZmFhODM1OTU2N2RhMzI0NmJhMDI4YzRlOTNmMzVkMTI2ODliIGxlZ2FjeS10cnVuaworMTQzOTQgYjdjZmMyZGJhNTg2YmJhZDExYmQ4ODlkYjQ3NTFkNThiOTYzZTc0MCBsZWdhY3ktdHJ1bmsKKzE0Mzk1IDA0OWFiOGYzNGRmMTY0ZmE1M2EwNTBhYjc4OWU4Y2FiMzY1MzA0NDcgbGVnYWN5LXRydW5rCisxNDM5NiA0MWRjMjRiMjBhMTc1YTQyNDgzMDAwMGJhOTRjMDY4MGQ4NmEyMWMxIGxlZ2FjeS10cnVuaworMTQzOTcgYjZmMTI4N2UxOTcwNzMxZTVlZGM4ODNlYzdkMDY3YmQ3MmQ3MDRmMSBsZWdhY3ktdHJ1bmsKKzE0Mzk4IDVhZjAxNTcxODI4NWUzNTYxNGY1MjEyNTU2NWNiN2QwMGYxZDViOWQgbGVnYWN5LXRydW5rCisxNDM5OSA0ODY3MjFlYzlkZDc0NmZjNTQwZWE1NmZkZTYzMDIyYmZkODM0MjVmIGxlZ2FjeS10cnVuaworMTQ0MDAgYWU4ZGYwN2Q0YjZhMWI2ZWQ2ZDgwNjUwYzkxOWIxNmJhMzU4ZmM0NyBsZWdhY3ktdHJ1bmsKKzE0NDAxIGY4M2NkY2JjYTFiMDhmMTM2OTViMzlhYjUzNDljMGYwYjA5ZGE0MjYgbGVnYWN5LXRydW5rCisxNDQwMiA4NjA1MjQxODJiOWM4Y2FjZDFiZjVmNTQxMWIyYzFiNTUwOGVmMTNiIGxlZ2FjeS10cnVuaworMTQ0MDMgNzI4NDhjNmI2MTFjZWQ0MDRhMDBlNDI3M2UyOGU5NTVmMDlhNDI5OCBsZWdhY3ktdHJ1bmsKKzE0NDA0IGZkNDgxNGI1OWI3M2E2ODBkYzE2Njg1N2FkNWNhMDA0YWZjMjhmNjQgbGVnYWN5LXRydW5rCisxNDQwNSA3ZWIxMjdhZGUwNjk0ZWIyMDNmYzM3Mjk2MzVhODY4OWJiMjczYmNiIGxlZ2FjeS10cnVuaworMTQ0MDYgZDJhYjk1NTNmODcxMmUzZjYyNzQxNjE4ZGI3NWQxMTQ2MjFjZmRmMCBsZWdhY3ktdHJ1bmsKKzE0NDA3IDA5YTNhNjhjZTk2NDA0ZWE4ZDhiMzVhMzAxN2RiZDRkYWE0OGNiZWQgbGVnYWN5LXRydW5rCisxNDQwOSBlOTNhNWE5MDZkNzNhMjhmODRlOGQwMWRmZDQ2MjE0MGEwY2JlODA0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxMCA3MzNlYzZlODY5ZGQzMTczYjc0ZjhkNjg0ZDFlNGYyMDkyMDExNGQ4IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxMSA4YmM4NzEwODE3MjQ3NzhiMDRlZWE0OGM2NTdmMWNlOGQ2NjM0ODU0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxMiBmNDVkOGIyNmJiMjQ1MzRkOTZjMTgxMGJlODRkYjljZTQ5MGZjNjhhIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxMyA3MWVjMzFmOTdmZmM3ZTA0ZTIxOWJhZmY0ZjAyMDU2YTNhZmU3NGNkIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxNCBhNGJiMzg0M2E1ODIyMzE2NTllODU0MjE1OTI1MzVlZWFiMzVjY2JhIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxNSA0NTQxOTYxMTRmZDI0NTM1OWExMzBhMjE2M2YzNzdiMjgxN2E1ZjYzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxNiBjZWQ4ZGQ2MjI3ZGQyZDJjM2I1NTk0NjUyOTcyZDU4YTQ2YjFlMDdkIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxNyA1YWYzYzViNzRjNTQ1ODkzMDE4ZTc1OTVkOWRhZjgzMDZlZDNhM2Q1IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxOCAyOTVmZjNiMTc1MjJhMmVjNmU5ODMxMDM5YWI4MGFlNTczNzk1YTczIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxOSA2M2NlMDlkZjYwN2RlMTlmNTgxMzM5NmQ1NWViNjUxNzdlYWQ5YzI5IGxlZ2FjeS10cnVuaworMTQ0MjAgZjUzZmVjMGM3NDJiZjViNDRiNGJjZTAzYWY0NzZhZWFlYWM0YTdhMyBsZWdhY3ktdHJ1bmsKKzE0NDIxIDI5ZTc0YzcwZGUxOGFmZDUzZDhlMDI4ZDIxZjBmYzRjMTkwMzU1ZmUgbGVnYWN5LXRydW5rCisxNDQyMiA1MGE2YWIzZmEwMzZhMmRkNjM4NjkxNDYzNmRhYTQ5MTI1ZDQzMGJlIGxlZ2FjeS10cnVuaworMTQ0MjMgMzY3OGRkNjg1ODY3MDVkOWI3OTdhMGJmZTNmNjNiYTAxOTY5MDk2MiBsZWdhY3ktdHJ1bmsKKzE0NDI0IDQ0OWIwNzRjMzA1MWIxNzFiZDE1Njk0YTQwM2RhYmM5NmI2N2EzNTEgbGVnYWN5LXRydW5rCisxNDQyNSBmZTk2MGFkM2RiNjViYzI0MDk2YmQyMWM1MGJjN2Y0OGU4MGZiOGJiIGxlZ2FjeS10cnVuaworMTQ0MjYgZTc3YTI4NmQwZWIxMDMwZGQzZDMxYTlmNTMyMTlhZWFmZTY1YzM3OCBsZWdhY3ktdHJ1bmsKKzE0NDI3IGMyMjg2YTFjMmYyOTU4NWI0YTYyZjU1Yjc5NGJhY2FmM2NlZTJhMjIgbGVnYWN5LXRydW5rCisxNDQyOCA1Nzc4OGRhMTY0ODg5Njk0ZjI3Yzk0NjdmYzI0MGEzYjM2Mjc3ODI2IGxlZ2FjeS10cnVuaworMTQ0MjkgZmZiZTBhMjNhMGYxNzU4ZmY5MzA2NTYwYzU0MjRlYWRkZjk2OTc0YSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0MzAgYmQxNjFhOTA4YjNiZGE1YTBjNDNhYjBlYzQzMmM2OWJhZmUwOGUxNyBsZWdhY3ktdHJ1bmsKKzE0NDMxIDU3MTY3NzMxZDEyNDJlMzg3MjQyODc3MTJhYjBiYmRlMGFmNTAzODEgbGVnYWN5LXRydW5rCisxNDQzMiAzMDIyODZiMTYwYTdhMjY4ZTJmY2M1ODc3NGY3MjM0YTkyZmNkNmU3IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQzMyA4ZDBiMmZlZDdkNTU5ODFjMmQwZDU5ZTBmNTUzNWMwM2YyMWM4NTI4IGxlZ2FjeS10cnVuaworMTQ0MzQgY2Y4ZmE5MmViZjNkOTRlNGRhMTBkNzc0OWFkYWY1ZGM5NGFlY2ZlYiBsZWdhY3ktdHJ1bmsKKzE0NDM1IGUyYjYzMzk5MWUwMTM1NDY3OTZlNjQzMmZjMTk5NWU2YjI0MjMwZTMgbGVnYWN5LXRydW5rCisxNDQzNiBmYmMxM2ZiODAzOGNhNTk1ZjRkNWNjNzI4NWRmY2U4NjQzOTk1OWIyIGxlZ2FjeS10cnVuaworMTQ0MzcgMjBjYTcyMzBhZTNmOGE5NTVmOGY5MzdmNTcwOGY2MDVlOWZkMDc0OCBsZWdhY3ktdHJ1bmsKKzE0NDM4IDZlNWVhN2RjZjFmNTViNjM3ZDMyZTBlMzNmZjczNDZhMzYzOGQxN2QgbGVnYWN5LXRydW5rCisxNDQzOSBlYWVkYTQ2MjFmN2RjZDU1NGU2Yzk5ZDViMzRlMGVkNmU1YTQ1M2M0IGxlZ2FjeS10cnVuaworMTQ0NDAgODRmNzdjMTlkMTQzYjRiMTQyZDVlMjIzZTRmMDk4NjFmNTI0YWI1YiBsZWdhY3ktdHJ1bmsKKzE0NDQxIDAzOTAyYmMwMjE0YTE1MWQ1OGM0OGZjNmI2MjFiNTI0NTI2NjRiNmMgbGVnYWN5LXRydW5rCisxNDQ0MiA1MGYxMjg4M2NkZDc5Y2JmNDM3NWYzOWU3NzA3Y2QyMWVkOTY5NGNhIGxlZ2FjeS10cnVuaworMTQ0NDMgNDc2ZWFhMzhlMmQ2YWE3N2U4ZjUyOTdiNTJhNjc2ODcwYjRjOTI5NyBsZWdhY3ktdHJ1bmsKKzE0NDQ0IGI3YmNhMDUwZDdkZWJjZmU2MGQzYWEwMDQ4NzFkNjk2MWQ5N2RiOTYgbGVnYWN5LXRydW5rCisxNDQ0NSBiZjE1MDFjZjVmMDgyZDliNWJkYzViNmU1YzczNTAyZjA4YjI4MzgwIGxlZ2FjeS10cnVuaworMTQ0NDYgYmU5NTAwZTY0NzdmZDMxNjA4NjU1Yjc5ZmI1ODRhNzI5YTExZThmNiBsZWdhY3ktdHJ1bmsKKzE0NDQ3IDE5ZGU2ZDE5NGFjZTk4MzdjYzZhNTUzOWIyMjRhNDViZWUyYjI1ODggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDQ4IGFhMDdjNDdmNmVlODgyODEwNDM3M2NiZWI1NjUzYmM2OGExZjFjYzcgbGVnYWN5LXRydW5rCisxNDQ0OSBjNWZiNjUwNmVlYzQwZTI4YTM0ZWM2ZmU2MzZhYzFkZWYwNzA0ZTgwIGxlZ2FjeS10cnVuaworMTQ0NTAgZmMwZmNlYTE0YmEwNzIzZTZkZjIyYmI2MzM2OTQ5MjQzMjVjNWVhOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0NTEgODg3OGMwOTZmYTE5ZTczOWFmNjA1YWU3NWU2NmEwMDBhOWQ2ZGM0NSBsZWdhY3ktdHJ1bmsKKzE0NDUyIDdjMjU1ZTdhMjFjMmM1NzQ4OTEzYWQ4ZmNlNTFiYjY3MGE5ODI1NTMgbGVnYWN5LXRydW5rCisxNDQ1MyAzNjg0ZDVjNzkwM2MzZWRkZTc1ODU0ZWIyZmRlMmM4NzRlNTZmOTE3IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1NCA3YmVkMWYwZWM2MWFjNTY4YTFmYjhhMGEyMmIxYmU5MTIxYjQ3YTgyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1NSBjNmY4NGNkMWZmNzA1YTBlNTQyNThiZDNiMzg4YWRmMmYwMjQ2ZDAzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1NiAzYjZkOGFkMjQ2OGUzNWEyN2NjMGI3ZDExM2Q5Y2VkZjNlZTM0YzFjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1NyA0ZDVkNWNmYThhNTM5MzFiMTNhMGUzYjJmODdkMzYwZmY3YzQ4MTk3IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1OCBlYjQ4M2Q5YTBmNjJjZjAyODk1ZDk0MzNmMDM4NjU0M2ZkM2JiNGM5IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1OSA0MDgwYzdhMGYxZWQ2YzlmOWQxNzExYWZjNjUxYWQ2M2JkNGQxY2E4IGxlZ2FjeS10cnVuaworMTQ0NjAgMGMwYmZhZGZmNzdhY2EzNDUxYWRkNDJkY2JlOTQyNjc3MjBjYzE4YyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0NjEgYjJkNGIyZTAzYzk5NTNmYjcwOGExMGYwOTc5NTdhN2NmZDFhMTVlMyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0NjIgOTRiNjQyMDc5Mzk4Y2E2NzY1Njg0Y2Q1Y2M3ZmRhOGIxNTQzOGQ5OCBsZWdhY3ktdHJ1bmsKKzE0NDYzIDcxOGQyMmRhMDAxN2Y1ZTI2ZDg1ZTg2NjZkODVhZWNiNzVkODI4OWEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDY0IGUyNTEyZDRmZDQ3MDgzMWZlNzQzNTY3NDE3MTZlMzZhMzNhODI4YTQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDY1IDY4MzQ0M2Q4ZGEzYjlkNDM5ZTU0ZDlhYzQ3MTJkNGZmOGE0M2M0OTQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDY2IGZlNzYzMmZiZDRmNTM2OWI3YzhhNGI3ZDIyZDQ1MTYzZTdlNWJiOGEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDY3IDU5NGE3NmJiOWZmMDMxNTc5Zjg1NmMxNjdmYjcwYzZjMDEwOTJjMzMgbGVnYWN5LXRydW5rCisxNDQ2OCBhMDMxMzAwM2NiMmQ1MjA2N2QwYzYwZGMwZmNhZjJmYmEwMWY4NWE0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ2OSBkZDBhZTEwYjcyMDYwZjU3NDgyOTgzN2YyYmVkM2E0MTg5M2Y5NzU1IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ3MCA5YzU5Y2JhMDRkODU4YWE2YTY3ZTg2OWZkMTJmODcwMGUwYTRhM2UxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ3MSA1MWMyMTc0NTQ5NTNmODIzNGFjNWYzM2Y1Y2FlMTk1NDEzODMyNzFjIGxlZ2FjeS10cnVuaworMTQ0NzIgM2U1MmYzZGJlM2RjZDlmMzZmODc4Yjg1NTQ2MzliNTkwOWUzNjM0NCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0NzMgZWNkYzc4MTQ4ODExODk3MzMyYzFhZTBmZGIyODQ2YmNlZTM0MmFjYyBsZWdhY3ktdHJ1bmsKKzE0NDc0IDE4OWRlZTcwZDMyYTBjYjA3ZDU4ZGJiMTExZDAxNWNjMWExNDI0NzEgbGVnYWN5LXRydW5rCisxNDQ3NSBhMDQ2OTgzY2I1NzYxMmQ5MzhhNzBlOTRhYjE5ODlmMjBkYWY4MDVjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ3NiBiYTIxMTE3NDgwMzhlMDI4NWZiOTZjNWRmMDFmZWM0MTA4Y2U0MGFiIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ3NyAzMjg3Y2NkMGRkMDEzM2VlNzRlZDNhOTMxMmQwOTU5MjcxNjgxNTVmIGxlZ2FjeS10cnVuaworMTQ0NzggZDIyOWJiNzkyNjU5MDAxMDNhOWEyZThmY2QwODM0MWMyOWI1MjkxNSBsZWdhY3ktdHJ1bmsKKzE0NDc5IDFiNzMxZWNkOWVkMzJiZGMyNThlNTdlZGNiMGEzZWFhY2Q3MWM5MDkgbGVnYWN5LXRydW5rCisxNDQ4MCAyYzcyNTZlMzk4OWNmOWIwNmYyODcyOTEwY2Y5MTY0ZDU0ZTU0NzI3IGxlZ2FjeS10cnVuaworMTQ0ODEgNzk3ZDk5NmY3YzZkYTAwOTRiZjdkNGI5MWIyMTMzN2VlZjM5NTUwMSBsZWdhY3ktdHJ1bmsKKzE0NDgyIGIwYzRmMjYxZTQ3MDMyNjM3NTczYzJhY2I5NWFkNmMzMGUxNTFiYTYgbGVnYWN5LXRydW5rCisxNDQ4MyBjYTUzNTM4NjdiZTIzMzIyMGNiMGVjN2Q0MzBkMzczNzU5MDEyZDYyIGxlZ2FjeS10cnVuaworMTQ0ODQgNzI2OTIxNjc0NmQwMmZhZGQ5NjMwOTY0ZTA2NGEzODQ2OGU3YzNhMyBsZWdhY3ktdHJ1bmsKKzE0NDg1IDkxY2ZiNmU2OGNhNDcxOWVhM2QwOWIzZjU4NGM1ODQ2ZjFmY2M1MDMgbGVnYWN5LXRydW5rCisxNDQ4NiAzMmY5NzVjYjlmNWZmMjIwNjU2YTQyMTYzMGRiZDc2NDhkYjc1YzFiIGxlZ2FjeS10cnVuaworMTQ0ODcgYmY2ZjE3NDZiMTBiYTBmZmExYTlhMGM3ZTRjMjc2NzZkMDk4YjRmYiBsZWdhY3ktdHJ1bmsKKzE0NDg4IGUxMTljMDI1MGIyMDkxNWQzMjYzNWU1ODU0YWYwNjMxMjkyM2RkNDYgbGVnYWN5LXRydW5rCisxNDQ4OSBjMDRlMWM3MGYwZjEyNmExMmU1YTFhZGNiNDI2YmVlMDlkOGE4MmViIGxlZ2FjeS10cnVuaworMTQ0OTAgZTEyM2U2NWVmMjU1Yjg0NjliMmIyOGMwZjUwMWE3YzVlMDBiYzNlZSBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDQ5MSAyNTE3NTY5YWExZGQ0MWI4ZWEyZTIzYWY4MjViMzEwN2Y0Y2MwMjI0IERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0NDkyIDEwNDczMTNjZWI1YmM5ODMzNDk5YWU0MTgwMWMyYjM4YjJmOTAyNzYgRGlzdHV0aWxzXzBfMV8zLWJyYW5jaAorMTQ0OTMgMjUzZWM5NWYzOTFlMWM1YTk5ZjI2MzRlMjg3MTQxOTFhOGQyMjNiZiBsZWdhY3ktdHJ1bmsKKzE0NDk0IGU1Njc4MGI3NDM2YTZhNTc0MjU5NjBkZWE5YmQwMGM3YTNjNGFjNTAgbGVnYWN5LXRydW5rCisxNDQ5NSA4YjcwZWFhYWRmNGI0MGQ4NjM0NzBjMzExODEzYjQwOWM0MDMxOGQxIGxlZ2FjeS10cnVuaworMTQ0OTYgZDE1ZDhmNTE0MWE4ODhmYjE2NGE0ZDMzNjBiNTA4YTMwMDQyYTU5MCBsZWdhY3ktdHJ1bmsKKzE0NDk3IDZmOTc5OWExNDVlNTgyZTQ2NWU4ODc5NDU2OWY3ZWUxOWIxNDYyZDQgbGVnYWN5LXRydW5rCisxNDQ5OCBlYzA2MmM3YzM4YTU5ODM2NzEzYTM0Y2YxMGFjOWI0Mjk5YzE0MGE1IGxlZ2FjeS10cnVuaworMTQ0OTkgYjcwZGVlNzE1MzRhNmNhODIxYjdhYmJiZjUxMDliNzE3NWZjMzUzNSBsZWdhY3ktdHJ1bmsKKzE0NTAwIDBjZGU3MmY2ZWFjZWIwYmQ2OTBiNTc5NGUzNmZhZDI1MWVlMTg0MzAgbGVnYWN5LXRydW5rCisxNDUwMSA4OWI1Mjg5NTMxMGM3ZTI0N2I3YzUzMGJiYzYyYzE5NDg4YTZlZTcyIGxlZ2FjeS10cnVuaworMTQ1MDIgOTE5NzFlYjIxNTI3ZmE5NDFlMDg5OGI5ODhjZGYwMGJkZWExZThiMCBsZWdhY3ktdHJ1bmsKKzE0NTAzIGU2OTViNTIyOTVhODZhODFiMGQyYzY3OThlYjJmNjE1NmQyNGZjZTQgbGVnYWN5LXRydW5rCisxNDUwNCA3OWVhMTkwODVmYjZhYjhjODNiNzllZjZjZjBkZmVmNzhkMmRkYjdiIGxlZ2FjeS10cnVuaworMTQ1MDUgMTQ1MTUzOWEyN2VjZjRhZGVlNDVkODcyYjMyZGVhNmVjYmQ0NTc1YiBsZWdhY3ktdHJ1bmsKKzE0NTA2IDc4MWY0ODI5MWEyOTY5M2ZlNTAzZmM0MmJhMzJiODJhMmNjOTMzOWQgbGVnYWN5LXRydW5rCisxNDUwNyBiYmI3NTFmNTVkMDQ4ZWIwMGZhODQzODNlOTY1NDExMTFkMGI0YzIzIGxlZ2FjeS10cnVuaworMTQ1MDggMmQ4NzQwNjQ3ZTk5OGMzZTAzZmJhYWI5MzBlNGFjNTJiMDk3NjYwNyBsZWdhY3ktdHJ1bmsKKzE0NTA5IDk4NmE4NzM2M2E2NjkxMmEzZmY4MzI0NDM3YTIyNWM3MGE3NGNiYjcgbGVnYWN5LXRydW5rCisxNDUxMCBlMDA1OTQzNjZlYzRmNzQ0NjNlODcxOGY5MzIzYzAyYzllYzFhYjNkIGxlZ2FjeS10cnVuaworMTQ1MTEgNWUxZjRmN2Q3OWE3NTQwMDFhMzQ5NGVlNjNkZGFhOTlmZDE5YmI3ZiBsZWdhY3ktdHJ1bmsKKzE0NTEyIDQxYjg1YTI2Y2VlZGFhNGVmYzdlZjJkNWUxZTlkNWExMDNmN2Q5MTQgbGVnYWN5LXRydW5rCisxNDUxMyBjYTM1MGE3MTk4ODczM2VkNzU3ZWFmMTc4ZDdkZTk0ODUxNjQxZGVkIGxlZ2FjeS10cnVuaworMTQ1MTQgMmZhODllNjU3YTRlZGRlZjMxMDc5NDU3NjQxMmQzZjBjMzU5MzJkMCBsZWdhY3ktdHJ1bmsKKzE0NTE1IDA2OWVhNTczNmZmNjA3YTgxZjM4MjM0Yjk2Y2I1MDllM2IyZGQ0MjQgbGVnYWN5LXRydW5rCisxNDUxNiAwNjEwNGJjZjA2YTY0ZmIwODE5MDY2MmQ3NzA2OWI0NWJkNjhhMjA3IGxlZ2FjeS10cnVuaworMTQ1MTcgZDdlNjZlZjM0NWQwN2I5Y2NiYTljYzQzNGQ1Njc0Y2Q3ZmFkMGNiOCBsZWdhY3ktdHJ1bmsKKzE0NTE4IDMyYzU5ZTI4ODljNGNjNGFhMDE4NmMwMjZjMzY2NzE1MGFkYmRhMTEgbGVnYWN5LXRydW5rCisxNDUxOSBkN2VjYTViMDk2MGFiYjAyMWI0ODFlZTEyYTVjYTM5ODc5OGU3NzAyIGxlZ2FjeS10cnVuaworMTQ1MjAgMmZlOTU2OGJkZWYyYjkxYjFiNjA3ODE2Yzk5MTJkMmY3MjE5MDk0NyBsZWdhY3ktdHJ1bmsKKzE0NTIxIGM5MGFjNjk4MjE0ZGI3MzBiNTQ3YzVmZGJlNTViNWIxNWE4NTgwZDMgbGVnYWN5LXRydW5rCisxNDUyMiA0NDRiNzdjZWViZTY5MzEwZTJjZTdjMjZlZGFjMjNiOTlkNmFjOWI4IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDUyMyBiOTFkODQ4YzlhMWFkNGViNDNkYTZlNWRjZTY3ZDgyMmY0YmZjNGNmIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDUyNCA3MTQyMzIwOWQ3ZmMyYzUxZjdlODEwYWYzZjNhMDc3NTc0NTBhYmZlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDUyNSA3ZWQxMDRjNDBkYjMzNjU5OWUyNWYwNTg2MWRkNTQ4ODNhM2MzNWE1IGxlZ2FjeS10cnVuaworMTQ1MjYgY2FiMDcxZTkyZjMyMWY1MmFjNmIzMmM5OTcxNjc5YmNjNGE3YTViYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1MjcgNTJhM2I0NjQ1NzhmMmU4NzIzNGYwN2RkNGE0NjYxNzhlNmNlMGFiOCBsZWdhY3ktdHJ1bmsKKzE0NTI4IDI4NjMwM2YwMDU0NmJjZWY1MDc3NjdiOTk2ZGFiODQ0YzBiZTFjZmQgbGVnYWN5LXRydW5rCisxNDUyOSBjMjdkM2U4YzQ1YzQ2NjY3Y2NhZDk4ZDUyYmNkMTM1Y2E4OGMzY2NhIGxlZ2FjeS10cnVuaworMTQ1MzAgNWQwODc5ZTFmZjM3YzU3ZWEwMjJjM2ZlYWM0ZDNlNTM4YjczZjg1NiBsZWdhY3ktdHJ1bmsKKzE0NTMxIDNkNzNmZmMxMDVkMGE0OGM5OGRjZGJhOWZlNTBmYTJjNGVkM2VjYzcgbGVnYWN5LXRydW5rCisxNDUzMiBhN2Q2MDllYTkwY2M2ODI2NjQwZWJjNTcxNGZmMmNlYzUzZmRmYzQ1IGxlZ2FjeS10cnVuaworMTQ1MzMgZDI3Njg0YWIyMTVhNmE1YWNiNDA3NDc0OTllYTQ5ZDJkMGYyODAxYiBsZWdhY3ktdHJ1bmsKKzE0NTM0IGVmZDYzMTVhZTY3OGQ2MmU1NTk3NDUzYWYyYmVhZmIyNzUxMmRiMWEgbGVnYWN5LXRydW5rCisxNDUzNSBkYzY1YzVmNmFkN2MxNGNhNDQ2OWY2ZWQyOGZmMTM0Y2IwOWVjMDg3IGxlZ2FjeS10cnVuaworMTQ1MzYgZDI0YWQ1NTAzODMxYTdkOTgxOTUwNzlhMDI2NjU0MGRlNmI4OGM5NSBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDUzNyA5YmVkMzM1OTljMzM5YzE1YTI2ZjEwYjM5ZTAzODNmOTJjMjJjYzU2IERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0NTM4IDljOTNmMTBkY2Q2OTY4Y2Q5MDRjYzY0ZGRiOWMzNTliYzliZjk5OTkgRGlzdHV0aWxzXzBfMV8zLWJyYW5jaAorMTQ1MzkgOGVlNzU5ZDc5OTY0NmVkMTE0MjJmZWUxZmQyMDczN2IyZWVmMzY1ZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NDAgMGM0NzI5ZTM4YzNkYjhmNDhkMGRkZTgyNTJkNWM5YjI5ZjJmOWEwMCBsZWdhY3ktdHJ1bmsKKzE0NTQxIDU0Y2YzYmIzYjhiN2NmNGM3MTAxYzE3MjM2OTE0ZTk4NDRjZmRkZjggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTQyIDEwZmJmZDA3ZjM4OTQxYjNkYjNjMDZlNWQzMmVkYzA4MzUyNTZhZTUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTQzIGEzOGZiY2I3ZDMzNTY4MGY2YTU5MWFhZDE0ZWIxMzI5YzViZWU5MGQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTQ0IGUzOTlhYmNjNWRlNjMwZWE4NTVjZGI2MzA3ODUzMTFhYTBiNmMzNzggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTQ1IDc1OGE4N2Y0Y2IyYzllOGQ4YjY3OTQ4M2U4Mzg5YmE0NjU3ZGFiZWIgbGVnYWN5LXRydW5rCisxNDU0NiAzOWJiMDE3NTUwNzkwOTcyM2MyNDMwOGFiNjdkMzZmMTliYjcxMTA3IGxlZ2FjeS10cnVuaworMTQ1NDcgMjcwYTExNDg4YzZjNWMzZDJlYzk4ZTUxNTVlNjFjMzQzY2RkZDZlYiBsZWdhY3ktdHJ1bmsKKzE0NTQ4IDgxZjEwNjllMTU1ODY5OTM5YzczZDEyMzk2YzM1YzExYWQzZGJmMDAgbGVnYWN5LXRydW5rCisxNDU0OSBhNDU3MGY0MDk4NzEwZjRmZDdlYzMxMWJkY2VhODhlYzQwZjA5OTU1IGxlZ2FjeS10cnVuaworMTQ1NTAgMWE0OWI2MTQ0ZjBkZTMyNWI1OTc4ZDEyYzY0ODNlMmUwM2NkMDBjNiBsZWdhY3ktdHJ1bmsKKzE0NTUxIDk0MzJkOGIxNWM5NzE0ZmQyNzg0YzcwYzcxY2E4NmIyNGY5Mzk2ZDEgbGVnYWN5LXRydW5rCisxNDU1MiBlODJhOTYzMzA3OGJjOTI1NWY4YzNkNTUyNTRlZmE0NzZkMjk1ZjI4IGxlZ2FjeS10cnVuaworMTQ1NTMgMDAxNjYzM2ZiZDMyMGExYzU4NjdkMzU5MmFkNjQ2YWExNTQ1MDBlMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NTQgMjMxMDhjY2UxNjliNDVkZmJiM2VkYWM5MjY1YzdiZTAyNjk4ZDNiNCBsZWdhY3ktdHJ1bmsKKzE0NTU1IGVmOGIwNjJiNTc5ODA0NGZmMzMzNGZhZGQxMGE3NTUwODgzY2Q1ZWEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTU2IDYxMGQ3ZDY0MjkxN2U1ZmNiZDEzYjY0Njc5Y2UwMjQ3Yzc3NTUxYjIgbGVnYWN5LXRydW5rCisxNDU1NyA3ODQyZWNmNWI0MjQ4OWYyYjIzMzhlMmZmMzg2YjllMWM3NTAwMGM4IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU1OCBjZmNmYWEzOTUwZDY0MmM5YTIwYjMyOGE0M2Q2M2Y2ODM4MDZhM2UyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU1OSA1OGQxZTc3OTE5ODA1Yjg3ZTdlMDFhNjQwZmIwNjNkOGJkMjE2ZGM2IGxlZ2FjeS10cnVuaworMTQ1NjAgY2Q1N2Y3NzZjMWRmODUxNWY3NzhhMDE1MTdiYjc0Yjk5M2MzMGRhOSBsZWdhY3ktdHJ1bmsKKzE0NTYxIDI4MDJmYjUyZTk5YmM3OWE2NWJkMDM0ZjFlNjczMTA4YmE5YTBmOTYgbGVnYWN5LXRydW5rCisxNDU2MiAwMTdlNTkyYzBmZDJjM2U4NTNjNzQzOTA4MTdlMzE2NzYzNTk2NWJkIGxlZ2FjeS10cnVuaworMTQ1NjMgNDY3OWJjZWY3YTRmNjQ1YWIzOWVmOGI1YjE4MjEzYWRlMTUwZTA3MCBsZWdhY3ktdHJ1bmsKKzE0NTY0IDcyM2VmY2RjY2UxYmRhNWQwNmIyYmFmYzkyM2I5NWEwNTY5MzQzYjcgbGVnYWN5LXRydW5rCisxNDU2NSA2MmViZThjNzE1NjU5YjFmZDI1OTlhOWQ2YzJkMzA3ZGM3MjdiZmNmIGxlZ2FjeS10cnVuaworMTQ1NjYgMDFkNWI3ZDExZmMxMjhlMmNlMTViMDIzNTgyMWI0MzFlYzg3YThmOSBsZWdhY3ktdHJ1bmsKKzE0NTY3IDY5MzJlMThhZmY5OGFkN2YxNmYwOWQ5M2RiNDcwY2ZmYWFiYzg5NTMgbGVnYWN5LXRydW5rCisxNDU2OCBmODUxOGYwNjBiZWRmOGY4ZjVjZmVlZWJmYzZhOGMwOTZkYWUwMzVkIGxlZ2FjeS10cnVuaworMTQ1NjkgYTQwYzJmZWNkNTI2OWYzYWU4MjYxMzg4M2VkYWI2MjhhYWIzMDg0MiBsZWdhY3ktdHJ1bmsKKzE0NTcwIDBhNGJhY2NiZTlmZTkzNGQwMWFhM2JlMDg1YjQ0MzcxYTRjN2RiYzAgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTcxIDQ5YjEwOWI0NTBkYTdkNzZhOTEzMjAxMWIyMDA3MWNkNTU0OThjOTQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTcyIGFiMWVmMWFhNDAyZWE1MjM2YmUyNWFmNDA1Yjc5MTE2NGFiYzdjNTAgbGVnYWN5LXRydW5rCisxNDU3MyBiM2NhM2NhYTM3NGM1MThiYjU4ZGM1Yjg4ZGM0ZTZhODcxMWVkZGU1IGxlZ2FjeS10cnVuaworMTQ1NzQgMTFhZTFlZmVjODcxYTM3YTBjZjdlNTljNTY5M2RlMDcwYjM2MjhkMyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NzUgZDc0ZTEyZDQ2NTgwZDM3YjE3NTU5MjVlNWNmNDJmNTk0NjBjNjRkYSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NzYgMDBhOWVmNzQ0N2JhYTUzOTMyNTlmOGY3M2Q3YTc1MjMyM2FiYjdkMiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NzcgODU1Yzc4ZjViNWRkZDRmYzUzYWY2YjI4YTg1YjVjYWNlOWU3ZmFlMyBsZWdhY3ktdHJ1bmsKKzE0NTc4IDk5NDhmZDUzMmQzYjRjYjJhODQyZGZhNzZlYjllZjlkZjg3Zjk2ODAgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTc5IGI5NzVhMDU2ZGViNjY2NWM3ZDliODMxNWM0ZmJlNjcyMTQ4ZWI1YWQgbGVnYWN5LXRydW5rCisxNDU4MCAwZWNhNTY3ZTUzMmMyODRiNmY1ZDNhZmNlMTExY2RlNjk2OTA1MTIwIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU4MSBmZTQ4NWE1ZDA0M2ZjN2JiN2Y1YjU0NzkxNDdiMWQ0YmI4MTU0NGYyIGxlZ2FjeS10cnVuaworMTQ1ODIgYzBmMThlMTFmNGVmMzI5MjBkODViZGFlZTc4YWY3MzcwNjY4ZWIyNCBsZWdhY3ktdHJ1bmsKKzE0NTgzIGMxNjcxMWZkZDk3MjQ0MzNjN2M5OTAxM2JmNGUzMjI0MGFjM2RkMjAgbGVnYWN5LXRydW5rCisxNDU4NCAxYzhhOWZhYTM1MDFlYzQ3MjkxZmZiNWZjOGUyNjY1MzFjOTEyYjRiIGxlZ2FjeS10cnVuaworMTQ1ODUgYzlkODdhN2E3MGIwYTI5MzI0OTMzNDViYjNhMzNhNWFiMTAxMTM3MCBsZWdhY3ktdHJ1bmsKKzE0NTg2IGE2ZTVmMDI3NGU1MTcyYzVkMDhlMzJhMjMyZTY1ZWU3YWM4NWExZDAgbGVnYWN5LXRydW5rCisxNDU4NyA3OTIyZDA4NDI2Y2FhZTdhM2I3ZDE4NTVjMDEzNTU3MGU5NjczM2RmIGxlZ2FjeS10cnVuaworMTQ1ODggZDEzNTk4MzFlNWYyNjRjOWFiMzg4ODlhMzI1NmJmYjNkZDI2ODk5ZSBsZWdhY3ktdHJ1bmsKKzE0NTg5IDViMDNjNTI3ODMxN2Q2NDlhNDBiNGFkNDk4MGQ3ZmRmZDY1MmM5MGUgbGVnYWN5LXRydW5rCisxNDU5MCAxNWNiYjU3Y2E3NDcyNTdkZTBmYjVjMDRkMDY5OTFhNDlkMDUxOGQwIGxlZ2FjeS10cnVuaworMTQ1OTEgYTg1MWVmMzI2ZDkzMmY3MTQ3OGQ4ZGE2YzJkMmNkY2QxMmI2NGQ5MiBsZWdhY3ktdHJ1bmsKKzE0NTkyIDdjYjQ5MWUzOTllNjE5ZjRlN2Y1NTk1YWM0MGRmMzc3YTc3NzZmYWEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTkzIDI5YzVjNTQxNWRhNzFkZWNiZWJjZDgyNWIzMDhhM2E5MzA2ZGM1MzQgbGVnYWN5LXRydW5rCisxNDU5NCBmODJiOTIzYTdhOTZjMmFmNWQ0MGRmMzliYWQ0YjEwNTA1ZThkNWRlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU5NSBjZTI2OThkOGRmZWJmNmQ4ODUyYTQ2MGQ1MmI1YTQ2MzQ1NGY5NjJlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU5NiAwNmZiMmRkMzhkN2QyOTk5MGFjYjcyY2YyNjc4M2EzY2YxOGI0ZTBiIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU5NyBjZmVjMTFiNGE4YTcyY2JlOGE3MmY3MDdhMzAwZmQ4MzBhNmY5MTkxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU5OCBhYTBkMGIxZjFiZTNlMTFiNjJhMTkwMmRjZDc0MWNiNWIyY2EzMDU3IGxlZ2FjeS10cnVuaworMTQ1OTkgOGNjNDQyOGM3YmFkOTFlNjRmZDlhMjRlOGQ1MDJmYWJiZTU1MWYzYiBsZWdhY3ktdHJ1bmsKKzE0NjAwIGQwOTdiYzVhYTdmMzQ0NDRlNWY0ZTQ5OTZlMmRiYjlhMjAyMDY4YmMgbGVnYWN5LXRydW5rCisxNDYwMSA0YjhiYzlhYjgxNzU1NTZmOWU4NzkzOGU4Y2RiYjc5YzZlZTM3YzQyIGxlZ2FjeS10cnVuaworMTQ2MDIgMmE2MjgwNjc5NjliOTNjYTU2MDRhM2I3ZmYyZjQyOTMyYWY5ZGZjZiBsZWdhY3ktdHJ1bmsKKzE0NjAzIGE0NjlhYThiMzMyYTU4NDYzNTU3NzFlZDFlODg5YTk5YTA2MTZiZmMgbGVnYWN5LXRydW5rCisxNDYwNCA3OWI2YTZhODgyZDllOGQ1NzEzNzA5MWRhYWFkNzA2ZmZhYTNlYTc4IGxlZ2FjeS10cnVuaworMTQ2MDUgYmRiNWY2YTUyNGI1ZTNmNjQxNzkxOTc5ODgzYzI1ZGJlOTAxNzU0OCBsZWdhY3ktdHJ1bmsKKzE0NjA2IDlkOGY0N2Y4NDQ3Zjk3NjIwMTM4ZDE0ZmFjZjZkYTJkNDdkYmUwMzEgbGVnYWN5LXRydW5rCisxNDYwNyAxYjU0YjIxMzQ2ZDI0ZmEyNDY5MGE3NjJjZWYxYjdjYmEyOGRiMzBmIGxlZ2FjeS10cnVuaworMTQ2MDggYWVmNWE3YzYyMjkxZWI2OWVlNDM4ZTg3YzFiYWEzMmMyNGJkZjI1NyBsZWdhY3ktdHJ1bmsKKzE0NjA5IDI1YWRjNWM4ZGQ2ODAwNGUzZmYxNzgwZDYwMDNjMGExYTkxOTIxY2UgbGVnYWN5LXRydW5rCisxNDYxMCA2OGUwZWYwNTI4MTUwNThmMDIyNTQ3OGI0OTM5ZDJlOTY5ZWQyODA5IGxlZ2FjeS10cnVuaworMTQ2MTEgN2JkOTdjM2RkNDMyZmQ5NDU5OGQ4Y2NkYzVkZDMyNGY2MTYwZjlhOCBsZWdhY3ktdHJ1bmsKKzE0NjEyIGM5NDU3MmE1MDk5NTIzMThlYTEzODgzMTQwNmE4ZDU4ZGM0YmZkYjQgbGVnYWN5LXRydW5rCisxNDYxMyBjMGQzNmY5MTZhZmQ4Y2E3MDFkZDU2NTg4ZDY0MWY5MmNhY2RhZTQxIGxlZ2FjeS10cnVuaworMTQ2MTQgZWY5OGVlNmFlYjQyYWUwMWU0Y2MwZjY4Zjk2NTNiZTExYWEzNzJmMCBsZWdhY3ktdHJ1bmsKKzE0NjE1IDA0NTZhOGMyZWJmN2MyYTk3MGYxNjczNjE2MmJiMzE0YmQxOTAyMGEgbGVnYWN5LXRydW5rCisxNDYxNiA3M2RmYmVlMTUwMjcxZjNhN2EwYmRmODE5MjNmNzY5Y2JhNjA4NTE3IGxlZ2FjeS10cnVuaworMTQ2MTcgZGU4NDA0NTczZmU1MTJjN2NkYTY5Y2M2MDRjYzhjOTNjMTUxMTEyNCBsZWdhY3ktdHJ1bmsKKzE0NjE4IGY2ZDFkMGZkYzFjN2M3MjAxYjQ5MGFjNzU5NjA3ODQwNzczN2FjNjcgbGVnYWN5LXRydW5rCisxNDYxOSA0MjFiMTYyMGY1ODJmOWE3YjgzZmMzYjkwY2FhOGVmOTQ5ZmIzMjU0IGxlZ2FjeS10cnVuaworMTQ2MjAgODAyMzcwYTYwZWY3ZTNkNzFmNGFhN2RiYmNiNGZlNmI5Njc1OGE0ZiBsZWdhY3ktdHJ1bmsKKzE0NjIxIDczNGYzYzA3YTZiYjlmM2Q1Y2MyNzkyMmVkMDcyYzY5MjBlNjkwMWIgbGVnYWN5LXRydW5rCisxNDYyMiAxYTU4ZTZmYzNhOTU0ZGY3OWY4NWYzOGQxMzAzMzgwMTI0ODU1OTU1IGxlZ2FjeS10cnVuaworMTQ2MjMgODI2NjkwYmExYWU2OWI4YjU4NGU0ZjY5NDdkNmZlZGM1NWUzM2UyMiBsZWdhY3ktdHJ1bmsKKzE0NjI0IDJhNDBlOWNhZTg1OWRjYTA0ODhmZGNkZTgxNjhjOGY1MDk4NWMyMmQgbGVnYWN5LXRydW5rCisxNDYyNSBkMDQwNDc4MGYwM2JmNGUyZjJhMzIwOGNlZWE2YWFhZGIzNGQ2MmIyIGxlZ2FjeS10cnVuaworMTQ2MjYgNWU0OGQ4M2MwZmNlMTcyMDQxOWJhZWU2MzdhM2QwNDc3MzM1OTBkNiBsZWdhY3ktdHJ1bmsKKzE0NjI3IGEzOTkyYTc4OWUyZTdiYjE1N2U3YjI5OGE1N2U4NzhhNzFlYzQ1NzkgbGVnYWN5LXRydW5rCisxNDYyOCA1YjMzZmNhMDJiNzg1YmI2ZGI3MDE1YzExNTkxNzAyZDU4ZDYwNTRlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDYyOSBhZGRlYTExNTdhYTdmOTA3Mjk4YmFiOWU5OTcwNTIyNGIyNjVkY2UxIGxlZ2FjeS10cnVuaworMTQ2MzAgZTEwNTE1ZTdkMzU2Y2NiYTdkNDc0MTY0YzE3YTRmNTM4NTE4NjM0MyBsZWdhY3ktdHJ1bmsKKzE0NjMxIGY5ZGIzNjU0YTFmZDA4NzY2YTA1NmUzNjAzNzBlYTVmOWM3ZTAwYWQgbGVnYWN5LXRydW5rCisxNDYzMiAzOThhNDU5OWVlZTMzY2U5YjczNGMzY2U5YTg0OTM0MWZjNjNiY2RiIGxlZ2FjeS10cnVuaworMTQ2MzQgNmUzYzgxYmQ4MjkxZWRlYTdmN2Y0ZDc2MDQ1NGVkZTUyNjU0MmViYyBsZWdhY3ktdHJ1bmsKKzE0NjM1IDIzZmQ3ZDEwMDY0ZWIxNjIxZmNlY2JmYTAyZjJiMDE1ZGE5Yzc2ZGUgbGVnYWN5LXRydW5rCisxNDYzNiBkNDY2MmQzODE3NDhhYzZjYTZiNTUwYWUzMTI2OWY1MWRkNzM1Y2EzIGxlZ2FjeS10cnVuaworMTQ2MzcgZjkxNDFiZWJlZDQ4ZjRlNTlhMTFkYjEyY2U2MGNhNTQ1YmEwZTI1YSBsZWdhY3ktdHJ1bmsKKzE0NjM4IDNlNWZiZWY5YjFmNTFjYTYxNGFlYzczZTMzNDJjZmRjN2FiNWFiOTggbGVnYWN5LXRydW5rCisxNDYzOSAyNGMxODdiOTI3NzM4NDg2YWYwYWI0NGUwNmRkMDIzZmQxYzc5NzExIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDY0MCA3NDEwNjkwOTI4MzE5YmQ4MTJkNmMyMGIyNDZiNDczYjg0OTU4ZTk4IGxlZ2FjeS10cnVuaworMTQ2NDEgOWQ1M2ZjODA0M2JhNzlmNTRhMjk2MDFiNDQyZDZmZDEyZTY1MjA3NyBsZWdhY3ktdHJ1bmsKKzE0NjQyIGJlOThlMDU1ZTM5ZDk5MTQ1N2RkNjdjODg4ZmJhZWE0NTE5YTQ5NjAgbGVnYWN5LXRydW5rCisxNDY0MyAyNDE5OWMxYjkxODJhMzZjYzc5M2MyNjQ0NWVhMGJlZTYzYmU5YzA3IGxlZ2FjeS10cnVuaworMTQ2NDQgNDQxMmM3YTMyNDk3ZjkwYzI5NzFiMmQxZDBhMWEwYzc1ZWUxMGFhZSBsZWdhY3ktdHJ1bmsKKzE0NjQ1IDlmMjYxZTk0YjJiMjViMDQxZGJmZmEzZWIyZTUzNTJmNzQ0MTU1ODEgbGVnYWN5LXRydW5rCisxNDY0NiA1MzA1ZjliMDFmYzc1NDU3ODAyYjE3MTYyN2Y0Zjk4ZGJlNmY5MTc0IGxlZ2FjeS10cnVuaworMTQ2NDcgNTA3ODMzYjE4MjEzYjcwYjdjMjIzZWI5Njg2MzdkNTJhYTU1NTk3NSBsZWdhY3ktdHJ1bmsKKzE0NjQ4IDEzYmM2OGZhZWI2NTViNjZkYjY1M2Q0NjFkZTgwZmM3MGExN2Y2MTEgbGVnYWN5LXRydW5rCisxNDY0OSA3NGI3MjEzZmI2MDkyMGEwMWU0MjFjOTQ1MGNlNmU0Njk2ZWY0MGZiIGxlZ2FjeS10cnVuaworMTQ2NTAgZjc2YmY2MWNiMTljNGE3ODNhZmEzZjc4OTg3MGFhNWU5MTU2NzE1NCBsZWdhY3ktdHJ1bmsKKzE0NjUxIDU3NDI4M2RiMmIzZGRkZWYzNjlkZmQwMzY5Y2U4YTg4ZTJiMDJkMjQgbGVnYWN5LXRydW5rCisxNDY1MiBkMGUwNmVmYjMxNjUxZjBlNGNkY2I0M2Y2MDc4Nzc1NTgxOWEwYWEzIGxlZ2FjeS10cnVuaworMTQ2NTMgOGJkYzI1ZDIyOTI1YzIxYTEzNmM1MzMxMDE3OGU5MTNkYmUwNjY5NCBsZWdhY3ktdHJ1bmsKKzE0NjU0IDI4MDAzYWZhMWEyZjA5MWYzMmZmZjMzYWJiMTc1YTJmMmIyOTA4NTMgbGVnYWN5LXRydW5rCisxNDY1NSA4NzZmMzU4MjhlODcwYTJmMmE3Mjg4NmYzMTI1OWYyYTlkZDhkMjRmIGxlZ2FjeS10cnVuaworMTQ2NTYgNTEzMzU0ZDg3YTg1ZTc3ZTMxMTM5N2VlOGY5MDQ2YjM1OTljZjBmZCBsZWdhY3ktdHJ1bmsKKzE0NjU3IDhiODhlMWJjMGUxYjRiMGM4MmVjNDIzYWZhYzRlMzFkY2VlY2IwZDYgbGVnYWN5LXRydW5rCisxNDY1OCAzYzYyMGY2NWVhYTViNWViNjViNGU2ZmM2MWUxMjkxZjNkN2Q2YmMxIGxlZ2FjeS10cnVuaworMTQ2NTkgMzBkOTI0OGUxMWJiYjIzMWY3Mzg3NDNmM2MyZDFlNTViMjA0NDkxMSBsZWdhY3ktdHJ1bmsKKzE0NjYwIGE5YjVhMzFmZjhjYjE5MTM3MDc1ZjkzYWE3ZmE5YjU2YmZmMmI1YTUgbGVnYWN5LXRydW5rCisxNDY2MSBkN2E0YTVhZTJkYWVjNDdkNjc1ZjI2NmMzNjYyNmRiMzg5MDA5NGYwIGxlZ2FjeS10cnVuaworMTQ2NjIgYTEzMjk0YWVmMDJlYTRmZWIzNGI1NmU4ZjhmODg1NWVlMDEwNDVjNyBsZWdhY3ktdHJ1bmsKKzE0NjYzIDRjN2JjODg1ZjQyMGFmYTU4YTY2NmY5NDE2YmEyNDAyNzE3YmI1OTEgbGVnYWN5LXRydW5rCisxNDY2NCBlZmIzYTQ1YzY2ZjMxYWM4OWE4NGQ3YmM0NzkzMzRhZDhlZGM5MjRmIGxlZ2FjeS10cnVuaworMTQ2NjUgODgyMjVkZjM1ZWZiYWM0NmJiNWJjMTc2NWZkYzI4Zjc0MTk0NzdjZiBsZWdhY3ktdHJ1bmsKKzE0NjY2IDMzMDNhNWJhYzZkZGQ0MjAxMzM4MDFlNjk1YzRjY2JhODAxZjNjMDAgbGVnYWN5LXRydW5rCisxNDY2NyAwZmRhYzFmNTRlYzgxMDM1MTE1ZWY2ZmQ3N2MwMDRhN2M1ZDA2ZWZmIGxlZ2FjeS10cnVuaworMTQ2NjggOTNkYWM0MDUzMTg5YzBmNTUwYmY1NjlhNmY4MmY5NmQ3MjYxNTAxMyBsZWdhY3ktdHJ1bmsKKzE0NjY5IGVlNjQ5MmE1ZmRlZTY2YTgzNDIxNWIxNmFiYzg4NjI5NTUxNWRiZGIgbGVnYWN5LXRydW5rCisxNDY3MCBmMTA0MjUxYjZmOGYzN2VmNWZiMDAxMTQ4YmVlNjE3NzEzZDNmMDkyIGxlZ2FjeS10cnVuaworMTQ2NzEgODE3MDJhNzM1NGVjYjUwY2UwNDYzMzRkZDA5ZDhiYmU5ZGVkNWY4YyBsZWdhY3ktdHJ1bmsKKzE0NjcyIDE3ODlmYWU1ZjA3NDFhMDNjOWQ0NTZiNGUzYzM2ZDQ2NzNmNmM2NzQgbGVnYWN5LXRydW5rCisxNDY3MyBiNWU4MTI3MWM0YzhiYmNjNWFmNTZjNWY1Mjk1ZjZlOTkyYzMxOGVmIGxlZ2FjeS10cnVuaworMTQ2NzQgNGI4YjJlMjhiZTM0OTI1OThmYzkxZjFkOWFhYmRlZmY1NDViZGM3OSBsZWdhY3ktdHJ1bmsKKzE0Njc1IDk2ZmE0NmQzNDg5OGFjZGQ3YmM2YWZhYTNjMTk5MTEzZTYzM2VmMGIgbGVnYWN5LXRydW5rCisxNDY3NiAzMjYyN2RjYWZhYmZmNzJmNTNjNTc2NGJmOTQ0ZDYwNzQ0MmJiYTgwIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDY3NyAyM2RjODlhZDA5OTZlODk1NjFiNDBlMzg1YTAzYzU5M2YxYmQ1NGY5IGxlZ2FjeS10cnVuaworMTQ2NzggMzgzMTBlYjA2NTllM2E0YzQxNzM1YzhmZDkzMzc0ZDk5OWYyMjUyNiBsZWdhY3ktdHJ1bmsKKzE0Njc5IGY5NGQxMGI2ZDBmNGQxMzM2NmQ2YzdlZmMyMGM2YjNlNzgxMWI3MTkgbGVnYWN5LXRydW5rCisxNDY4MCBjOTQyNDdiNWMzNTU1NzhmNDYyNmQzZjY3Yjk1ZDllOTAxOTMyZTcxIGxlZ2FjeS10cnVuaworMTQ2ODEgODY1MWYyZGE3YzRjODcwMWU1ZDkyOTNmNGI2NWI5YzVmYjc1ZjlkOSBsZWdhY3ktdHJ1bmsKKzE0NjgyIGUzNjJmMzI2MDQ4Y2EyZDFkOTJmMTExMzQzOGJlOTYxYjlmM2YyZWQgbGVnYWN5LXRydW5rCisxNDY4MyBkNTBmYTM2NzBiNjZhMTdmNTYzMTU5ZjIwY2Q1OTU5Yjk0ZGNmZWQzIGxlZ2FjeS10cnVuaworMTQ2ODQgMTQ4ZGI2MzIyMTYxZmUyODQ5NmE0MDY2YTlmNzFjNmRhZDNmN2NmZCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2ODUgMDFmYTVjYTk4ODEzYjQ1NWM4MGMwNThmMGE4OWY5MzE2YWNiNmY1OSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2ODYgNzVkNmM3YzNlYzU1MDBlNDZhMzFhZTUzOTFkMTU2Y2ZkZjY4MzNkYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2ODcgNzYxMGVlZDNlMDMzMjgzZmZjYTlhYzUxNWQzMzg3ZWI4OWI4OTljOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2ODggZjc4ZjQ3NzI1NjhlYzYxY2FmMWNlMTk0NmYzMWYxOGQzNmFiY2NiYyBsZWdhY3ktdHJ1bmsKKzE0Njg5IDc0ZDk3ZDc5NWM0ZWU3M2NkODc3Mzk0MTY0MzM1ZDQ1MzBiZmVlYmIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NjkwIDNmNTZjZGEzZDJmYzQxNzEzOGFhMGUzNGZiMDU3ZWJkNTNjZTRkZmMgbGVnYWN5LXRydW5rCisxNDY5MSBjNzQ1ODkyM2Y2YTJkMzMwMzQ1ZDExMDllYWMyYWQ5ODgzZWZlNTQxIGxlZ2FjeS10cnVuaworMTQ2OTMgZjI3Y2MxNzM1MTdlMzQyYzMxMjdmMjAwN2RmMzlmOGM5NzA5OGQxMCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTQgMGY2ZWFiMDNmMjg4MDFiNjMxNGY0OWE5YjFiZWI4ZjE5YWY1MmFhZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTUgMzY2YzFlOThmNzA3OGJmODBjNDFjNjVhNWUwNTExYWQ0NmJkZTgwMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTYgMGE3MDYwNzJkNTBhZjBmNmNmNzk5MTgyMjFhNDZhMWNiYmY2ZjUyNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTcgMWM5MzVjYTM3ODVjOGQ4MDU4MDI0NjhmM2UzMDI4OWZiYjdkN2JhYyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTggNDM4YTQ0MGJiMDg1ZTVlOTUyYzlmNTEzYWMxMDFhZjNkYTI0OTZhZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTkgM2Y4NWM0Yjk5ZDMzMjIwNWI1NWRjMzc3ODI5Yjg1NDg0NTY3ZmM5ZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDAgZmFmMGM5ZTliOTJmZWIzOTNlYWUxNWMyYTYzZGE0Y2U2MTk1MmFhMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDEgZjIzODY0ZTRhZDJjYzU1MTI0YzFjZGEwY2M4NTJiN2EzODFjOTQ3ZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDIgZTU3Y2U0ZGY1NzA3YTcyZmE1MjIxMTEwNTE2OTE0NjYwZTAyNzE4ZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDMgNGZiZjY5NjIwODdkNThmM2IxMGQ5OGNmYTJjY2I1ZTdmNzhlZWRiNSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDQgYmRhYjljNTVmMTY4Mjk3ZWNkMDhkMmY2ZDZhNWYzNWUwMjVjMGIzOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDUgYTMzZjJhM2RiODkyN2ViMjU0MjJlYTI2ZTJlOWQzZWYyYzY3ZGQyYyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDYgMmVhYWVkNzU4OWFlNWUwZDk2OTliZmMyMzA1ZjBhOGE3YTZkNTYzOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDcgM2FmM2IxZWI2N2ZlMTRjMWE5MDAwZmY0ZGNhYTQ4YTI4Mzk1NGQyNyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDggMjYxMmI5NmI5OWFjNDRmYmY3MDQzZTIxNjYzMDljOGEyOGZhMDY1YSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDkgMjhjOGNlNjY1YjAzMjBkZTk3YmEzM2FkNWIzNzM1Yzc2NDIxNWE1YiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTAgYjU4ZjJmMGNkNTViM2U0MjgxOWI2YzBkNGQyOTI2ZjYwYzQ5MjA0NiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTEgOTYzNDhiZWI5Mzg0Mzg5ZmJlN2YyZDkwNWQ1YjNiYmEyNjMzMmJmZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTIgMTY5YWRkNmE0ZGMxYjBhMjI5NjMxOTRkYTM2YTkxODQwY2Q3NTY5MSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTMgNTAwMGVhZjA1OGRiNzhjZDc4NDI2YmMyMmE2NjA5YWY2ZjBkNDhmNyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTQgNzAzZGE3ZTk0YjIxNjVkMjU4OTc4NjNhYzQ4NGM2MjFkY2U4Zjg0YiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTUgZDdiODdmMGZmMGQyYTdmNzFmY2E2NjQ1YjAyMmQwNDZhYWQ4MjQ1ZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTYgOWQ3MzU2Mzk0MjlkMTNhZmNiOWFkY2MwNDAxMGQ0ZjFiZGQ3MjVmNCBsZWdhY3ktdHJ1bmsKKzE0NzE3IGUwZmIwNGQxYmQ5MzRiOTBiMzhhNjBiNWZmYTBlZTQ4MGYzYjljYTkgbGVnYWN5LXRydW5rCisxNDcxOCA3NGZiNjAyYjc2YzJmZmIxZGU5Mzc1YmNlNGEzMmI4ZGI5MjJhZjA2IGxlZ2FjeS10cnVuaworMTQ3MTkgMTI3ZjcwZjU5YjAyNjY0M2EyMzJiODllMDU0NWMyMDQyOWMzYzZmZCBsZWdhY3ktdHJ1bmsKKzE0NzIwIDY2MzEyOWYzYWJlMDAxZWJkNzU3MGUyMWFjZTQxMDkzMDNiOTc2OWUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzIxIGI0NzI0OGNlN2I2Yzk0NTA0OWM2ZGZlNWU3YWM4OWJlMjdjN2MzMTEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzIyIDM5NTIzMTg5NTdjZmEzMzY0ZmFlYWE4ZmJlNmRhOWY4OWJjNGY5ZjUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzIzIGJkMTAxNDIxNWY2MjI1NGE2ZDA0YTViODNmZTU2ODI5Y2VhYzI1YzMgbGVnYWN5LXRydW5rCisxNDcyNCA0ZmEyNWEyOTIyNzNiNzU0ZGJhYjBkZGUwNjQ3OTEwNmUwYTMxMGQ3IGxlZ2FjeS10cnVuaworMTQ3MjUgYzJlZmQxN2NlY2JmMWQ2ZjI1ZWZkNzhlYmMyYmQyOTZkOWYxZWYzYSBsZWdhY3ktdHJ1bmsKKzE0NzI2IGU2YzQ2ODE5ZGI5MjcyOTc2YTJkOGZmOGNlYjBiODgxZjQwMTU1OWUgbGVnYWN5LXRydW5rCisxNDcyNyBiYTgwYzkwNjQ0OTE4MDY3ZTZmNzU4Y2E2YzY0OThkOTM3MjVkYTNlIGxlZ2FjeS10cnVuaworMTQ3MjggYTQxMTgzNjcwMzg2ZTYyZmYzODk4ZTE5NjhlN2I4ZmUzNDJjMTYyMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MjkgYzYwM2NkZWRhZTE3NzRlMGVmYzU5YmFhNTVkOGY5MGRjODQxNjhiMiBsZWdhY3ktdHJ1bmsKKzE0NzMwIDEzZmQwZGZlYzU2MGE3ZGQ1NTZhZTA2ODY5YTVhNGZjZWY3NWFlNGYgbGVnYWN5LXRydW5rCisxNDczMSBlNzgyMDM1MmNiODBkMGYzZDdiMGVhYWNjNTFiMWIzZjg3N2M2YjA2IGxlZ2FjeS10cnVuaworMTQ3MzIgMDU2OTcyNTE3MTkxMmU1YjdkN2QxYTU5ODRiM2U5NzkyNzUwN2RhNSBsZWdhY3ktdHJ1bmsKKzE0NzMzIDY5YjBmY2VmNGMwZjIxZDc2OGI3NDc1NWU0ZGJlNDJkMTVlMmRiYzMgbGVnYWN5LXRydW5rCisxNDczNCA3NjUxNjIwNGI2MjBiZWI4NGZjMWRkZTlmYWVkYjg0MzQ0ZTIyZTUyIGxlZ2FjeS10cnVuaworMTQ3MzUgMWUxYWViYjNlNGY2OWU1OGYwYjRkOGQyMDUzNzA0MzM3ZDQ0Nzk2ZiBsZWdhY3ktdHJ1bmsKKzE0NzM2IDg2ZDljZTE1ODA4OThlZjQ3ODY5NzdkM2Y2YTZhNDE0ZDNjOGIxYjQgbGVnYWN5LXRydW5rCisxNDczNyA5MTRlZDUyODg5NmUwZWQ1YTUwYzJkNTZhZDAwOWQxNzMzOTM4OTI0IGxlZ2FjeS10cnVuaworMTQ3MzggYTBhOWM2OWFmOWY3ODc5NDY1M2I2ZjA5YzA3OWQxOWUzMzExN2NiOCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MzkgNmZkMGJiMGMwMzMxZWZiZTdiMWYxNTQ1ZGFiYjFlNzM1MTlmNDk2MiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDAgZjA3YzMzMDU1N2NmZjg2M2Y1ZTMxNWZiOGQ1ZjFkNjEyMDUyM2FmNCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDEgZDc0ZWFhOTJmMGI0NTgzNDQ5MmY0NWUyNDY0YzRhZGM2Mjc5NDExMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDIgNDNkMjI0Nzg2YTU4MWU0NWQzMjZjZTM1MzczY2Q2ZGE1YWMzNzVhNyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDMgNjI4Y2ExZTkwNTkxZTUwZTk1ODk4OThiN2Y1YzFkZDAwMWFkMzhmZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDQgZjIyMGZiYTU3NzQ5ZmI4MDMwNWNmZmU5MWJhMDdkNTZhYWI3NmFlZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDUgMGI5NjMzYTQ1ZDY4ZWI4M2JiYmFjOWU4YjI3OTRiM2NhNzQ1MDQ5YyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDYgY2EwMTdkZTRmMmZkOTRjNjdiYzJlZTIwYmNhMWI1NzAyM2MxYWExNCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDcgMjVkM2RkMGIxY2EyOTM4MDMyOWY0NGFkYWQ2Njg0ODZiMjg0MTgxNSBsZWdhY3ktdHJ1bmsKKzE0NzQ4IDc5OTRkOWRiN2Y0ZDVkZmU1MWViYWQzMDA0NzFkMDFlYmJjMDAyOWIgbGVnYWN5LXRydW5rCisxNDc0OSAwMDlkOGZhZTgxZWFlNmVkYmI3ZmQ3M2YwYjBmOTA3ZWZkNmNlMmE1IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc1MCAwYzQ0N2MyODkxNDY2ZmQxM2ExMmQyM2RlNTRkOTQyYjg3Njg2MDYyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc1MSBkMmEwMDYxMDkyZjgwNTAxNTVkNGNiOWI0NGQyNjljYmFhZGQ5ZmNmIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc1MiBkYWY0ZWZjM2FiYTkxYmMxZTlhOTI1ZDI5ODNmOWQxZjU5NWNiMWU0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc1MyA4ZGMwOTE4YWUyYzJmZmNlN2NhYTRlYTBkMjNhYzZmNDJlYTAxNmFlIGxlZ2FjeS10cnVuaworMTQ3NTQgZjk1NWZiZDUxM2VlNGY2ZDRhNmM5ODY2OGUzNDhhMjdhZTAxYTgyOSBsZWdhY3ktdHJ1bmsKKzE0NzU1IDU1NmMyN2IzYWI2ZWJmNTZkMzM3ODI0NGM4MzcwNGE0NjIyZTJlODYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzU2IGM4ZTAwMTBjMTJlZjMxZWRjYmUzMjkyZGY2NmU2M2QyM2FkZmM3MGEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzU3IDg3YWVlNGVmMjlmNTI4NmFjNmFjODMwMDRhMjRhNGI3YWY5YmIzMGYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzU4IDMyNTkzODMwMGE3ODQxNWM2MWI3Yjg0M2NiMTVlNDhjM2JiMzAyYzggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzU5IDZlN2VjOWEwMGNjZTVjYjA5ZDhkNjU3YTkxNjhkMGI5Y2M3OWZlZTEgbGVnYWN5LXRydW5rCisxNDc2MCAzNjkwYzg3YTliYzY2NGM2NTM0YzMzNjkwNTk0MDg4MmY4YTAwMjI5IGxlZ2FjeS10cnVuaworMTQ3NjEgYWZhYjdiZDcyYzQ3OTVkNDg1NWVhYjNlMzk4NDgyMzY0ZTUxMzFkZCBsZWdhY3ktdHJ1bmsKKzE0NzYyIGEwNWQ4MzM4ZmFjNTczNzQxZWEwYmQzOWU4YTdiY2JhYWYzMjkzYTcgbGVnYWN5LXRydW5rCisxNDc2MyA5Y2FjZDExNjY5ODYyM2NmZGFkOTAzMDkwMTY2MjM5NmNjNjk4NDBjIGxlZ2FjeS10cnVuaworMTQ3NjQgODU2ZGFkZjU2Y2Q5N2IyOGYwM2E4ZjMyYzRiNzJiYjNiMDY2OGRjNCBsZWdhY3ktdHJ1bmsKKzE0NzY1IDIzZmNlOWI5ZjNiYzkzMTdjYzI4MmRhNTY0ZGY5YWY5Y2U3NmIwNjggbGVnYWN5LXRydW5rCisxNDc2NiA2ZjBkMWUzMzQ2Zjk1YTcwMWM4ODBjN2ViNTViNmFhM2NkYzI4OTk3IGxlZ2FjeS10cnVuaworMTQ3NjcgOTQwNDE5NWZmM2ZlZmZhY2JlMjYwOTFjMGUxMGUwYTkyNTkzZDE3MyBsZWdhY3ktdHJ1bmsKKzE0NzY4IGQzZTRhNDU2OTI4YmUxZGE0MTRiNmQ0ZTA0MWIyNmE4ZjVlMmYyNGUgbGVnYWN5LXRydW5rCisxNDc2OSAxOTU2ZWMwNzY3OGU4NmYwNWVhMWRjNDJjODMzMWE4N2I4ZjMxMTFiIGxlZ2FjeS10cnVuaworMTQ3NzAgNzQwZWMwOGU2ZWMxYzU5MjdmNjNlNTFjZGFmNGRiMTNiOTk3YzMzNCBsZWdhY3ktdHJ1bmsKKzE0NzcxIDQxYTcyNWMxMjU1MWY2MWI0YjI4Y2YzNDFlNTAxN2UzM2IzNDFiZGYgbGVnYWN5LXRydW5rCisxNDc3MiBkNmJjM2JkNTI0MjRlNmExYmNhNjFhOTlmZDBjODZkNGVhY2RhN2RjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc3MyBlMTIwNDE3MzIzMDQwOTM1ODllM2RlN2ZmNDAyMzg0NDRkYTFiYjA4IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc3NCBhNGE3ODVhMDEzNjBhZWFlMTlhYzQxODM5NzRkZWQ2NWFjMmZmNjcxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc3NSAwMWE2MGI5M2MyZjUwMGYzNTczMDZiMzlmYTlmMGVlOTU2ODdlYjY2IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc3NiAwMTljMzQyODBmYzIxZjNiNzI5ZmU5MzlhYjU1ODdhZjRmZDMyZDUwIGxlZ2FjeS10cnVuaworMTQ3NzcgYTlhMWU1OTFlYjNhMWIxZWEwNTgwMTQ4NWI2MWNkYTM5YmQ0ZjRlMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NzggODFjMjNiMzg3YmIwODQ4YjBmNWVhZWRiYWQ5YjQ5ODZkYTFmOGQ5NiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NzkgMmUyMWFkMWM2MGZmODY2MzAxMzg2NDBmNWE0YjcwMDM0YWVlNDc5NCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODAgYWY0Nzc4YTEzMDU1NjkxN2RiYWFkZTNmYTQyMTYzMTViYzM5N2JmOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODEgNjM3NGM2NjY5MTQ3OGU2NzJhZTlkNWY1YmEyNjg0NzFmY2Q3YzIyMiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODIgNDJjYmVhNjc3N2I3ZWU5ZmFjYTZiY2Y3NzZiNWZiYWQwNzFlNTg1YiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODMgY2FlNTZmN2U4MGZmZWU3M2E4NGI2MTc3ZDJhNzBiNDViY2Y2YWMwNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODQgZDhiMjJhNzgxOTA1YzE5MTE0ZTEwMWMzOGUzODYwMGQwMjMwM2Q3ZCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODYgNWNhY2NhY2UxZGNmODg0MmQ0YzQ1ODZlZjllYzBlOTUwZjY3MmEzNiBsZWdhY3ktdHJ1bmsKKzE0Nzg3IDE3OGM2ZWZhZWQ4YmFlMzFiM2Q1M2VlYWFmZDM3MDdjODE1ZmVlNTMgbGVnYWN5LXRydW5rCisxNDc4OCAxNDA5MmFiYjhiYjRiZTU0N2M4NGFlOTE0Y2VhNTUxNDQ4YWQwNDM2IGxlZ2FjeS10cnVuaworMTQ3ODkgYjJkNDRiYjc2MWQ0YjVhMTRkY2VkZjQ3ZmI5Njk2ZDg1ZGYyZTg1NyBsZWdhY3ktdHJ1bmsKKzE0NzkwIGEzODRiMGY2OTUxMmY2ZGRlZTYyMzVjZGNkY2Y0ZmFiMmU2Mjk2NGYgbGVnYWN5LXRydW5rCisxNDc5MSBmYTEyYTU2MzM2OGQ1MmYyYTcyN2Q4ODcyYmY5ZDlmMWI4ZTNhZTYwIGxlZ2FjeS10cnVuaworMTQ3OTIgZjg3YjU2ZWViYWNjNzJjM2VhYWE0OTFmNzFkMmUzZTQ5YzE0MThlNCBsZWdhY3ktdHJ1bmsKKzE0NzkzIGRkYTM3OTRjOWNkOTA0OWJhZTU3NGVjZWE5ODJjMjY2MmJkYjM1MDMgbGVnYWN5LXRydW5rCisxNDc5NCBiOTA4ODBjMGU1ZWIyMjVjMThmMDA3MjMxMjA0ZDY5NGFkMDkwM2JhIGxlZ2FjeS10cnVuaworMTQ3OTUgZDg5NTU2YzA0ZWY5OWRiYzlmYTZiMzhiNzg2YjFmODA4NDIyMmJjNCBsZWdhY3ktdHJ1bmsKKzE0Nzk2IDVkMzE2NWUzMGJjZTYzMTNjNDU4M2IxZjQ0ZDUxMDhmYzAzMjFiZTQgbGVnYWN5LXRydW5rCisxNDc5NyA4OGIwYjMyMTA4Y2ZhMmQ0ZTM0ODM0ZjllYjMyMDJjNjhkMTM2OWM3IGxlZ2FjeS10cnVuaworMTQ3OTggMjNhMWM1MjZjNmYwMmM1YmRiMDU2ZWM2ZWRmOTdhOTYwNzk0YTZkNiBsZWdhY3ktdHJ1bmsKKzE0Nzk5IDVkNDVjZmExYmM5MTM4OWE4NmUzZDRjOGY5ZDA2NzA2YzVjMzczZTMgbGVnYWN5LXRydW5rCisxNDgwMCAxZTVjZDcwY2VlMTA3NTZiODg4YTc1NjRkMjAxZWY2YzJkOGI3Nzk2IGxlZ2FjeS10cnVuaworMTQ4MDEgNDJkOGQ3NmRhZTZkMmM1ZDViYzEwOGIzMjJiMTE2NWQ2NzEyOThiOSBsZWdhY3ktdHJ1bmsKKzE0ODAyIGM2Y2IwZDI2NjgzOTMwMmI4YzljNzVlOGE5MWMwYzYzMTVjZmUzOGIgbGVnYWN5LXRydW5rCisxNDgwMyBkZTI5NmE3OGFiZmRjNGU1MDJkYTM2NTdmYmZmMmJkNWEyZGM1YzJjIGxlZ2FjeS10cnVuaworMTQ4MDQgNzc5NTU3M2VjMzU4MWM1MTgxOTU3Mzc3ZThkYzM5YTA3N2Q5ZDg5ZCBsZWdhY3ktdHJ1bmsKKzE0ODA1IDA0OWYwMGJmYjljZWYzNDAyODg2ZTU2OTBhMTcwNDdjYTE0NTg3M2EgbGVnYWN5LXRydW5rCisxNDgwNiBjNDNiMzgwNzkyMjhmMzk5MTU1ODk4NzViMThhMzRiNTAxYzczOTI4IGxlZ2FjeS10cnVuaworMTQ4MDcgY2E4ODgwY2YzNjc0Y2EwZjgyNjM1MGRhYzRjY2Y3ZWFlMzU1OWE1MiBsZWdhY3ktdHJ1bmsKKzE0ODA4IGRiMDNhMjljZjE2YjVjMjJjYmNlNGQxNTVjMzgxMzc4OGZkNjljOGMgbGVnYWN5LXRydW5rCisxNDgwOSBiOTgxYTdhOWI3MzhlOWMxOTM1YjAzYTkxNTI1NTZiZmQwYzIwN2QwIGxlZ2FjeS10cnVuaworMTQ4MTAgODZjZmZlNTBmYjE3MmMwMjUzZDBiMTQwOTg4ZTcwNGNlYjQ5YmJmOSBsZWdhY3ktdHJ1bmsKKzE0ODExIGJjYWIxODlkZGY4NmJkZWNjNjU2MmY1ZjFkMzAxNTBjMGNiYmQ3NTEgbGVnYWN5LXRydW5rCisxNDgxMiBlMjQzNTE5MjZlMTNlYTYwNzUzZDAxYTg2MjdkYTY4ZjBmZjYxOThjIGxlZ2FjeS10cnVuaworMTQ4MTMgMzMyMzEwZmUzZDNhZjM3Mjc0ZTg2OWY1MGVlYWYyOTA2NjA0OTFmMCBsZWdhY3ktdHJ1bmsKKzE0ODE0IGExYmZjOGQ0ZmMwMDZjODE4MDg1OWY5NjI4MmZlYjFhZTc4Yzg1MjQgbGVnYWN5LXRydW5rCisxNDgxNSA5NzUwYWY1ZTcxYjAxMzlhZWNjMGQ0YWNmZDE0ZDY2NjMxMjZjYjZlIGxlZ2FjeS10cnVuaworMTQ4MTYgNjdkNDEyOGRhMjU0M2ExYjQwYTQ0OTUyNTRhYmFhNDA5Mjk3NDc4ZSBsZWdhY3ktdHJ1bmsKKzE0ODE3IGU0OTQzZWJiNWY3ZDIyNTExMDA3ZjllODBkNTI3ZWQwZjI5YzJjYmIgbGVnYWN5LXRydW5rCisxNDgxOCA2NWYzNWI3M2UzNTA1NGQ5NWFmZWFhYmQyODk3MGRkMzg2OTg1NDI2IGxlZ2FjeS10cnVuaworMTQ4MTkgOWVkZWRlNjUxZmIxYTQ4ZTcwY2IwODgwY2EyODI1ZWRmNWY5M2Q4NiBsZWdhY3ktdHJ1bmsKKzE0ODIwIDRhNjFjYzgxZjM2NzM1ZDE2MzU2MTZkODVlYzMzMTNhZWQxOTE1OGYgbGVnYWN5LXRydW5rCisxNDgyMSBmZDJiMDZjNmZmNTNiNzIzNzczMDFjMDNhNGQ1ODcyOTQyYTgwYmZjIGxlZ2FjeS10cnVuaworMTQ4MjIgODk3Y2YwZTVhNDM0YTYwZDE3YTJiYWY0MWNlN2Y1MzU5MmRkZDAxOSBsZWdhY3ktdHJ1bmsKKzE0ODIzIDgzOGRjMzgwZTQ2NzdlZTg4NTcwYTA1YzBhNmM3NzM0NDc4MmJlZTMgbGVnYWN5LXRydW5rCisxNDgyNCA0NGI5NDJmN2ZlYjc2NmViM2U1YmRkNDgzOTBiMmY0Yjc5YTZmZDNmIGxlZ2FjeS10cnVuaworMTQ4MjUgZGM4YWE5NTFkZWY4MDQ1YzEzOGJmMDU5OTYxZGI1ZDRhNDIyOTBmZCBsZWdhY3ktdHJ1bmsKKzE0ODI2IDYwM2RiMGQwYWVkMTQzNDVjOTAwMDQ0YmFkOWU2NWYxYjZjMzMyZTQgbGVnYWN5LXRydW5rCisxNDgyNyA3ZTAwNjM0MmU3OTA3YzY5OTU4YTBlYzQ1ZmIwN2FiZjI0M2FkNmRlIGxlZ2FjeS10cnVuaworMTQ4MjggYTZlNTIyY2I1OTE4NGE1YzBhZjMyNTFmYTExMWI2YTAzYmIwZjM5NSBsZWdhY3ktdHJ1bmsKKzE0ODI5IDI1YjYzMzY3Mzg1ZWIwNjUzYWIyYmMyODRmMjlmMDA2MzE1YWQyOGEgbGVnYWN5LXRydW5rCisxNDgzMCA5NmVhMWE4MDBiMjM5M2M5NjdiYjVmM2M4MmI3YzllMzg4YWVkM2FmIGxlZ2FjeS10cnVuaworMTQ4MzEgZTJkYjg5YTk4Y2IyZjQ5YjQyYzlmMTU3MDE4ZTcwNWRlNTEzYjI1ZiBsZWdhY3ktdHJ1bmsKKzE0ODMyIDM3ODliNjQzZmU4OTgxMjkwYzM1MjA2NDYzMWUyYTY0NDFlYmNhODYgbGVnYWN5LXRydW5rCisxNDgzMyBiYjkwMDQ0OTIwMzA1MzhiZDYxMWZiZDRlZjJiNDYxN2NlMjRkOWEyIGxlZ2FjeS10cnVuaworMTQ4MzQgOTg3N2U5NzgxNzBlYTc1YjI2NjA3MTRkMWNlNWFiMmY4OTE4ZTZiZiBsZWdhY3ktdHJ1bmsKKzE0ODM1IGFlMDY1ZGRiYTBmMTQ2N2NhMjM3M2M0MWJhNDc0NDQ2MDI1ZWM5MDIgbGVnYWN5LXRydW5rCisxNDgzNiAyYTYwZDZmODM0ZmZiNDEyMDIwNzA4NzBhMWE0YTdjZDIyZTc3MGRiIGxlZ2FjeS10cnVuaworMTQ4MzcgZTA5ZDc0MTRkM2VjZjgxNjU3ZjZiZTMyYzIxODc0OWJhM2IzMWRhNCBsZWdhY3ktdHJ1bmsKKzE0ODM4IDhkMWM2OWJkYzRmMmMyYzk1YzE0YjJkMmM4ZWUwMzhkMDQ4MWQ0NGQgbGVnYWN5LXRydW5rCisxNDgzOSA0Mzg3NjA2YTEyODFiNWEwZjlmMzc3ZjlhMGM4YWVlNGZmOWMzZGZiIGxlZ2FjeS10cnVuaworMTQ4NDAgYzBlNGE5MGRjNGZmOWY3Njg4YmJmNGFlYzVkYTdhMGI1YWY0MWUxYyBsZWdhY3ktdHJ1bmsKKzE0ODQxIDdhNTE1ZmMxMGMxZDc3YzM5MjYyODEyMWQ5MjQ4MzM1Mzk3ODMyZmMgbGVnYWN5LXRydW5rCisxNDg0MiA4ODEyNTdkMWU4NTQ0YmY4YWQ1MTVhZTMyZWU5OGIyNWNlODM3NTExIGxlZ2FjeS10cnVuaworMTQ4NDMgNDBhMjY4OWRhZjM3NzY2YzIxZDdmNWZmMmU2NGQ1NTNlNmYyOTkzNyBsZWdhY3ktdHJ1bmsKKzE0ODQ0IDQxY2JkMjk4ZmZjNmMxZDJiNjYyYjhlNTc5ZWNiOTQwMzBmNjhjODIgbGVnYWN5LXRydW5rCisxNDg0NSBmMGUwMmFkYjkxZWJhMTliMzdmNTM1OWZlZjQ2N2U5ZjA5NDRkZDI4IGxlZ2FjeS10cnVuaworMTQ4NDYgZTgxYjEzOWFiOGE0OTU5ZmVhZGIzYTY5MjM5MTZiNzI3ZWM2ZjUwNCBsZWdhY3ktdHJ1bmsKKzE0ODQ3IGQ3MzFjZWY4MTJiMzVlNjE0ZDI2Mzg1MzM3YjQ4OGU0OWVlNDBlM2QgbGVnYWN5LXRydW5rCisxNDg0OCBlOTg3NzBkZTMxNDcyZDM2N2E4ODI4MjBlMzFlNDdiYmEwYzkzMWU2IGxlZ2FjeS10cnVuaworMTQ4NDkgNjZmMTRmZmU4ZWI3MTZmOTZlOGE0ODVkOTZiMWFmZjI2NDcyN2JiZSBsZWdhY3ktdHJ1bmsKKzE0ODUwIDJhOTEwYTc3NTc5YTRkODMyZjZkOWFiODliMWNjMjFkNTQ0MTFkMjggbGVnYWN5LXRydW5rCisxNDg1MSAzMjQwN2MwOGNhZjRkMzU4OWVhZWZmZDIwNWM5MmIyMTEwMzQyODkwIGxlZ2FjeS10cnVuaworMTQ4NTIgNmZkNDM4NjdhYTRmYjA3ZjlmZmViMTM3N2E5ZjNiNDIyMDE2ZTU0ZiBsZWdhY3ktdHJ1bmsKKzE0ODUzIGY3YTBkMjlmYjhiODFlMTQ0NTAyOWMxM2IyNmRjMmZjZDJmMTYxOTMgbGVnYWN5LXRydW5rCisxNDg1NCA5MmVjNzhlMjE3ZDI5YWY4OTkwNGQzZjczNGFjMTJjY2FjNjBjODYzIGxlZ2FjeS10cnVuaworMTQ4NTUgZTJiMDJkNDBhMTQyNWMzYzg1ODJmNjYxOGRmMDk3NjZhY2U5ZTM2YiBsZWdhY3ktdHJ1bmsKKzE0ODU2IGRmZTNiYWYwYWVjZGNlNDgwNDk1YWI5YzdhNTY1N2RlMDBkNGNhYTIgbGVnYWN5LXRydW5rCisxNDg1NyAyZjJmMmIxY2U1NjhkNjFlMWQ2ODcyYTc0ZjA4NGVkNjkyNjQyOGQyIGxlZ2FjeS10cnVuaworMTQ4NTggMjcyMWM3Y2MwYjI3MTVmM2QxYzUxZWI5NTg3NDQ4OTMwOWJhMmI3MCBsZWdhY3ktdHJ1bmsKKzE0ODU5IDYzMzM2ZjIwN2Q1MTI4ZDU1ZDM4ZWVmOGZkNjdiOTAwM2QwZTUyNjkgbGVnYWN5LXRydW5rCisxNDg2MCBlNmFiM2M2MDNmZjkxM2JhNjE3ZWFiNjIxOTU2NjY5ZWE0MzlmZDk3IGxlZ2FjeS10cnVuaworMTQ4NjEgNWYyMjM5NDA2ZGQyMGQzNzQ0OTljYjBlZTI0Y2ViZTYxOTgwNTFiNyBsZWdhY3ktdHJ1bmsKKzE0ODYyIDMwYTQ5ZDE1ZGE5NzVjMjYzN2VlOWMyZDNlNWQ5ZDNmN2UwNzI3NDIgbGVnYWN5LXRydW5rCisxNDg2MyAwNjk5YTdkZmQ3MzdjMjM1MTM5NGVkZDNmZmZmMTM4ZjZiNjgxYTQzIGxlZ2FjeS10cnVuaworMTQ4NjQgZWM1OGI1MDNiNjcwMGM1ZmQ2YjUwNThkNTFkZDAyZjY1NDg3OWExOCBsZWdhY3ktdHJ1bmsKKzE0ODY1IDA3MjdmZjM5ZTY0ZmI5MjY0N2UyZmRkYmQ1YzVmOGNmYjIwOTllMTUgbGVnYWN5LXRydW5rCisxNDg2NiAzZDc4NWMyY2RhODgxNWRiYTY3MzIxZDg3NjM0MTU1NDU4MDE2M2FlIGxlZ2FjeS10cnVuaworMTQ4NjcgYTBlZjhmYTRiMjQ4OGI0MzhkYWVhMTVkZDM1MjU3OTdjNDY3MWM4YyBsZWdhY3ktdHJ1bmsKKzE0ODY4IGVjMzYwYjRlOGY2NmZlN2ViYWQxNjAwN2ZhMzAzYzRiY2M2NGIzMjcgbGVnYWN5LXRydW5rCisxNDg2OSBlMmIzMjgzYzVkYjBhNGQ2ODIwMTliMjk0ZjlmOGFkNDM5MGU4N2U4IGxlZ2FjeS10cnVuaworMTQ4NzAgZTYyMTRhZDJhNjBjYjA3YjFkZDk0OTg4YzY4MjEyN2MwZDkwMjIzZSBsZWdhY3ktdHJ1bmsKKzE0ODcxIGIzYTRlNDUxYzA2Yzg2YTBiMDJmNmQ5NTA4MDdkMjJjNzc1ZDlmNjAgbGVnYWN5LXRydW5rCisxNDg3MiBiNWZjYjUzOTY5OTk0N2NlYjQ3NTM5Yjc3NmRiNGQwNzVlNGM3MjU1IGxlZ2FjeS10cnVuaworMTQ4NzMgMmNkOWM0MzZiZDQyYjM3OWFmMTdhZDRkNWUyMjk0YTVmYzFlYTY5ZCBsZWdhY3ktdHJ1bmsKKzE0ODc0IDEwMzhlNTg2MTA3OThlNGM4MDY3NDIwZGRjMzViYjViZmE2NjdmYTYgbGVnYWN5LXRydW5rCisxNDg3NSBiNDBmNjc5YjEwN2NlNTU4MjljNmI2YWY2YTk0OWIwNzEwNjk5M2FmIGxlZ2FjeS10cnVuaworMTQ4NzYgMWI2OGQwYWQ3ODM1NmMwZmEyMGRkNzQzM2EyOTBiMzI0ZWE1OGYzZCBsZWdhY3ktdHJ1bmsKKzE0ODc3IDcxMTM0MGQ0NDc3NzYzOTE0OTYwODAxNDljZWIyZTliY2UwMTdmMDkgbGVnYWN5LXRydW5rCisxNDg3OCBjMTYwNzQ5YWNmZjg1NzFiNWFjMmM0MTVlYjFlNjJhZGMzYWQ3ZjJlIGxlZ2FjeS10cnVuaworMTQ4NzkgNjY3ODc4Nzc2OTMzNmEzNWZiMTg5MDliODJiNjc4N2EzNDUxNDM5MSBsZWdhY3ktdHJ1bmsKKzE0ODgwIDliOWFiZGUwMzJiMzI0NTUxMThlY2QxNGM0ZTgxYzMxZDdhOTg2ZTEgbGVnYWN5LXRydW5rCisxNDg4MSA1YjU1ODFhZjk1MWM1ZDRkYTgwYzhmYTExOTIyOTM2NmNlYjE4NmY3IGxlZ2FjeS10cnVuaworMTQ4ODIgNTcyMGQxYzE4ZjRkMTMxNWUxYjVlOTA0NmQyZmM1NDgwYjdmMTYyYyBsZWdhY3ktdHJ1bmsKKzE0ODgzIDMzOGUwNTViN2NjMDljODAzOTM5MmI5YjgxNTZkYzVmZTU2OGY1NTQgbGVnYWN5LXRydW5rCisxNDg4NCBkYWRlODJiOWVlMTljZTBmMDg4OWViOWJlYmY5MDA5OGFhNDhhYTIwIGxlZ2FjeS10cnVuaworMTQ4ODUgNGEzZmQyYzEzNzJmMjI4MWUxODM1Zjc0MWNjYWQ3ZTI0ZjAxNTcwOSBsZWdhY3ktdHJ1bmsKKzE0ODg2IDQzYzM2ZjYzZjg2N2M5MzkyMDE1MzJiMjcyYTdmMzkzZWNlMTdmYmQgbGVnYWN5LXRydW5rCisxNDg4NyA5OTlmYzNlZWRhOTlhOTliOGI5NTRiNmJhODQxZGQ4NTEwNmM1MGIxIGxlZ2FjeS10cnVuaworMTQ4ODggNGNhYzM3NjQ4YTdmOTg2MDI0YjUwMmNhNTkzMTVhMGQ3MTU2YmJmYSBsZWdhY3ktdHJ1bmsKKzE0ODg5IDQ5ZTAyN2I0ODYyN2YwNTFiZmQyNzVlNTE1NThkNGM1MzAzNDg2ZTAgbGVnYWN5LXRydW5rCisxNDg5MCBlOGMzMGU2OTY2NmIwZTQyYThiMjc0MWU4NmRjNjA4Mjk0ODVlMjRjIGxlZ2FjeS10cnVuaworMTQ4OTEgMTRlOTNkODlkMzRlYmQxYTVjNzkwMmRiOTg2YmE1MDEzMzRlZmE3NiBsZWdhY3ktdHJ1bmsKKzE0ODkyIDgwNDQzM2YwMTEyYzliODBiMmZmZmI5OTRiNDlkY2VjMzc3ZDdmOTUgbGVnYWN5LXRydW5rCisxNDg5MyAwYWM1NzdlYjgyODJmMDdhYmM0Mjk2NDBlZmJhZThiOTRiZWFmMmIzIGxlZ2FjeS10cnVuaworMTQ4OTQgODFlNWY4MDAwMDk0NGZjNzU0ZTQ1MjQ1MzkzMjRmMTNiNGFiNzYyMiBsZWdhY3ktdHJ1bmsKKzE0ODk1IGNhOTM4ZjM4ZDA4N2RmYjFmMzczOWFlNTc4NDM4NDMxOGE3ZjNkNjUgbGVnYWN5LXRydW5rCisxNDg5NiAyMWE5YmJiNTcyZDczN2I5YTBmODM5MGQzMTNkYWVmMjFhMzE5ZjkwIGxlZ2FjeS10cnVuaworMTQ4OTcgODMwZGQ1ODFlOTM0ZjZjN2I1MTMwYmQ1YmZmZTViN2UwOTFjYWMzYyBsZWdhY3ktdHJ1bmsKKzE0ODk4IDc4ZTM2ZTA2ZTUzNjlkMjBlMjkwNjdiYTg3YmQ0Y2ZmYzEzZWYxYzEgbGVnYWN5LXRydW5rCisxNDg5OSBmZWQ4OWI1NzYzN2E2ZTQyZjAyMTdiZWE1MWI1NzMwYWFkZTU3NmFhIGxlZ2FjeS10cnVuaworMTQ5MDAgZGI1YzAzZmE4YzczZjU1ZDk2NzQzODFlZjhjN2YyNzRjZTdiODFjNyBsZWdhY3ktdHJ1bmsKKzE0OTAxIGJlMmYwMDNkNDdjYzZmMWUxM2Q0MzU5NGZjZTYwNjUzODhjMjVhMGQgbGVnYWN5LXRydW5rCisxNDkwMiA5ZTdhYmIyOGU5MmExNzEyOTQzZTU3ZDFjOGIzYzRlY2Y1YjAwZTRlIGxlZ2FjeS10cnVuaworMTQ5MDMgNzVhZGQ5NjQ0ZmYzNGEyOWYyYzA5OTQxNGJkNjljNzkxODBlNjMyZCBsZWdhY3ktdHJ1bmsKKzE0OTA0IDUyMmVlYWU2YzA2NjMyZTJhOTMxZDMzZjA5ZWE2ZjkwMWEzODQwYzAgbGVnYWN5LXRydW5rCisxNDkwNSAyMzZhYzFlYjE4OGUzZDI2OWZiZmFiN2IzZWZjZjkwYjI2N2FmYWJiIGxlZ2FjeS10cnVuaworMTQ5MDYgOThiMDljNDBkOTdjYzlkOGNhOWFmYTU0ZjFjZmU3MzllYmExN2JlZiBsZWdhY3ktdHJ1bmsKKzE0OTA3IGZlYjlhZjc1MjdhNTdmNWFkZTI1NWUwYTRkZGI1MjQyYTBmMDYyZDQgbGVnYWN5LXRydW5rCisxNDkwOCA0MjM4N2FkZTZhZmJlNTJlMzk4YWNhY2Y1ODk0NjczOTI3NDg1M2IzIGxlZ2FjeS10cnVuaworMTQ5MDkgMzU2YjhlODlmOGUzMDY0NWEzMDBlN2QzODA0N2FmMjhiMGQ5YjhlZSBsZWdhY3ktdHJ1bmsKKzE0OTEwIGM4OGM4YTg1Mjc0NDA1YjQwMmZmNjEwM2UxMzUxNjBhNGEwYTc4MDYgbGVnYWN5LXRydW5rCisxNDkxMSA2ZTY4YzdkZGNkYjU3ZjZmYTgyYzBiYjUxYWUzOGQ0YjJkYjE1YjI0IGxlZ2FjeS10cnVuaworMTQ5MTIgYTJmYmMwZmY3YzJlMDcyZTNkYzM3OTdlNjNkZWZiNmNkYTBhNzRmMiBsZWdhY3ktdHJ1bmsKKzE0OTEzIGZmNmMxYTgyYzMyMmFjYzQ1ZjA1MTNjNjQ2OGE4ZWFlNTdlNjM4ZGEgbGVnYWN5LXRydW5rCisxNDkxNCBmNDA3ZmFiMjczNTg5YTMzZGUyMjJkYzZmYTM1MTRmZDdlOThjN2Q0IGxlZ2FjeS10cnVuaworMTQ5MTUgMjY1M2ZkNTE2ZDRlMmVlMjAxN2ZiN2M1Zjc1YzFhYTRmM2E1NmUwNSBsZWdhY3ktdHJ1bmsKKzE0OTE2IGI3MzAzZjJmZjYxM2EzYTQxYTZiZjBjMGM3MjAzOGY4M2E2YWIzN2MgbGVnYWN5LXRydW5rCisxNDkxNyAwZDNkZTRjMTNjYjcyNGNiZjBlZmI4ZGIzZjNkM2Q2ZTc3ODNkZjZiIGxlZ2FjeS10cnVuaworMTQ5MTggMjc0NWRhZTg3MDVmMTk0MmQ0NDQ4MjMyODdhNjExZjY4ZWJiMTNjZCBsZWdhY3ktdHJ1bmsKKzE0OTE5IDAxNTVhM2IxM2JmMGUwYzliODY5NjU5NzFlYmZiMDAyYjFiZWEwMTAgbGVnYWN5LXRydW5rCisxNDkyMCBkYjgzZTYzYjM4NGI2ZGM3MmYwZmQ1MGY3ZjJlMzdjM2Y1NjBlNjgzIGxlZ2FjeS10cnVuaworMTQ5MjEgZjAzZTJhODE4OGFhMDdjZjVjMDdjY2MxZTAxMTgzMTk1ODc1NjU1ZiBsZWdhY3ktdHJ1bmsKKzE0OTIyIDc3MTkzZThlMDEzNzE5MmVhYjUzOTg0NWNmZjA3MzMxNjY0MjdmYzQgbGVnYWN5LXRydW5rCisxNDkyMyBlNzg5ZTJiZjA1YjNlZWUxYmZjMzdjYThiOTkzOGRkMWJlZGQ0ZDY4IGxlZ2FjeS10cnVuaworMTQ5MjQgYzI5Y2RkZThlYmQ4MDMwODg4Zjg5YTg0ODE5YWIyMDk5YTVmYjNkNiBsZWdhY3ktdHJ1bmsKKzE0OTI1IGI1OGFlZDcxY2Q2M2YzNzdiZjdjNDk0MjM2MDUzYzY5NDk0MmRhNGIgbGVnYWN5LXRydW5rCisxNDkyNiBjODg4NzkyZGU2YTc3MDg4MGE2N2M1MmI5OWQ1YTQ0YWFhNzk1N2ZlIGxlZ2FjeS10cnVuaworMTQ5MjcgMjQyNDU4NTAzYjEzMTFiNWQ2OGM3ODE2NmZmNGU5MjMzNWJjOWY3NSBsZWdhY3ktdHJ1bmsKKzE0OTI4IGY1YTFlOTU0NGM1ZGU2ZWU3NDM1MjQ5OTI2YjcyMzJiOTk3YzQ4OGYgbGVnYWN5LXRydW5rCisxNDkyOSA4MzI1N2YzMzk0YWUzMTBjOWNhZmFhZDAwYTExMGZlNmU1ZTY4NGJjIGxlZ2FjeS10cnVuaworMTQ5MzAgMTcxOWU0MWUyMzMwMzFlZDdhMWYzMWI3ZDcwNGEyNTcwMmFlZmQwNiBsZWdhY3ktdHJ1bmsKKzE0OTMxIDM5YjkxY2I4MGI0MWMxYWJhNDg0NDJmYjIwNDMwZDk5OTJmYmQ3ZTQgbGVnYWN5LXRydW5rCisxNDkzMiBjZGY2OGNlNTg2YzQzOWVjNTUzNzIxMWNiOGVlZTk2ZDI5MjkyNDM0IGxlZ2FjeS10cnVuaworMTQ5MzMgMTUxYjkxM2U3NGExMzc2MjY3OTU0MjExYTMwZjIzZDhhOGFiYjZmNCBsZWdhY3ktdHJ1bmsKKzE0OTM0IDk0YjYwMWZhZWJhY2VhZjJjNGViODBiNTc1OTY1ZWZlMTlhZjc4NmUgbGVnYWN5LXRydW5rCisxNDkzNSBlNzVhYzI5MmVmNGMxZmFhODVmMThiMzg3NWU5NGNmZTM3ZjZiMGUwIGxlZ2FjeS10cnVuaworMTQ5MzYgZjA5ZTlkNjU2YTExNTRlYmRlOWFjOGNlZjU5YzlmNTY3YTIxNmUwMSBsZWdhY3ktdHJ1bmsKKzE0OTM3IGMzZmMyYjQ2MTdmY2Q5NmUyNzk5YWQ4MWRjY2RmYTU4ODBmZGNkZWMgbGVnYWN5LXRydW5rCisxNDkzOCA0ZGQ4YjZhM2I5YzVkZGE4YjRhMzU5OGM1YzQ2M2FhMTZlM2YwOTI0IGxlZ2FjeS10cnVuaworMTQ5MzkgYmM4NjFhZGQ1ZDcxMmExODM1YmJmNmNkZDhiZDAxNzkzY2QzNDI3OSBsZWdhY3ktdHJ1bmsKKzE0OTQwIDZkMTA4ZDUwOTM0NmE4OTIwNGRmM2I5ODgzMWI2YWY2YmEwYWUyYmMgbGVnYWN5LXRydW5rCisxNDk0MSA3ZjE4Zjk3OWE5M2FmYTNjY2RmN2FkNDcwMTNjY2U5OGUyNzIzM2RjIGxlZ2FjeS10cnVuaworMTQ5NDIgNDc2M2EzZDU5YWI5YTI1NTgyMDM3NDNlODU0ODYyMDM1OGRmZDE5OCBsZWdhY3ktdHJ1bmsKKzE0OTQzIGYyOGU5MmRiYjllOGUxNGQ4YjY0MDgwZjQ2ODMwZWM1NjRiOTI5NGEgbGVnYWN5LXRydW5rCisxNDk0NCA0MmYyMWU0N2I0ODYwNzA3MmU5ZmM3NzdkNmI0ODViNWEwZTA5NGQyIGxlZ2FjeS10cnVuaworMTQ5NDUgNDFkZmM3ZDRhMzZiMjI2ZmJmNTIzYjIzNzJkZWZiNTgzYTY0ODM5YiBsZWdhY3ktdHJ1bmsKKzE0OTQ2IDZmZjdmNzZhNmYyZTU4MmUxMGY5YjlkZGExYjhkMzY2NDhmYjNiMzUgbGVnYWN5LXRydW5rCisxNDk0NyBmZTNjYjczNDFiNzA4NDJiNGFmNTEyY2ExMzUyMzQ3ZmY4NjBkNDliIGxlZ2FjeS10cnVuaworMTQ5NDggZjgzZTQwOGFlYjA1ZGYxMjkxZTdkNDYwNzZkODFjNjMyNWQwODg3OCBsZWdhY3ktdHJ1bmsKKzE0OTQ5IDI1M2NkZWVhZjQyZWY2ZTg3ZGQxNzVhNjc5NTlmM2RmNTVlMzk2OWIgbGVnYWN5LXRydW5rCisxNDk0OSA2MDVlYjkzMjZmZmUxZmQxZTQzZjQwZTIzMzhkNjY1MmFiNDQ5ZmRmIGxlZ2FjeS10cnVuaworMTQ5NTEgM2UzZDE1MmE4NTU0NzA0MGYzZmE4NTNiNjM5NTM4NGJjZDkwY2Q3MiBsZWdhY3ktdHJ1bmsKKzE0OTUyIGI3M2M5ZjhjNTM3YzFhZWQxNTNhYWMzZjZhNzI5MDhkZTM1NDZhNjggbGVnYWN5LXRydW5rCisxNDk1MyAwOTA5ZjU2MjNkNGZhMmMyYzA1ZWMxYTYzMjgzYjhhZjZlYjRmOWMyIGxlZ2FjeS10cnVuaworMTQ5NTQgMzdkODIyNzJmMGY0NDViZWYwMzQyYTdjMTFmN2JjZjg2NjcyMWZkOCBsZWdhY3ktdHJ1bmsKKzE0OTU1IDRiZjk4Y2MzOGRiNzFhYzYxNWExMmZhZTVkMDgzNzdjZjM3MDIzODQgbGVnYWN5LXRydW5rCisxNDk1NiAyNjNiZWU0ZWYxM2M1OWE0ZTAyOGFhMTk0YmJhZDIyY2Y1MzY1ZDhhIGxlZ2FjeS10cnVuaworMTQ5NTcgMWRjMGI2MzdlYjFiM2E1OTMxNTkxOWI5Yjc0MTZhYWI2M2NjMGQyMiBsZWdhY3ktdHJ1bmsKKzE0OTU4IGEyMTZmZTc5YWUwMGI0MTdiZGQ0YWRmNDdmMWFkNjU2MTk4NDk4OGIgbGVnYWN5LXRydW5rCisxNDk1OSA3NzQ4MTcyODViOGNhMjAzNTU1MGQ0NTgxYjZmMTUxYzkwOGEwOGFiIGxlZ2FjeS10cnVuaworMTQ5NjAgMzNiZmM1MWRlYzA1Y2YzOTQ3NmZjYTU1NGE4MjhkMWM1ZDRhN2Y1OCBsZWdhY3ktdHJ1bmsKKzE0OTYxIDVlYTc3MzQxMzUzMTk4ZTA3YjI1NzEyYmU0ZThhNzA5ZjkyOGExNTkgbGVnYWN5LXRydW5rCisxNDk2MiBmOTdiYjQyZDQzNDQ4NWMxZDY5ZDEzOTM2N2IzNzE0N2E0OTU3NTA4IGxlZ2FjeS10cnVuaworMTQ5NjMgNTMwY2Q5YWZhODBkNTQzYmFiZGUzYWEwOGFhMDgwZjU4MzMxNzg5NyBsZWdhY3ktdHJ1bmsKKzE0OTY0IDVhNjIwMGZmNzdhYWM0NTQ3YzVjMjgzM2JmZmQ5ZjlmOTg0ODA4NzAgbGVnYWN5LXRydW5rCisxNDk2NSAxN2NlNjYzOTY3ZDg0MDhjNTM1ZWUxYzBmNTI1YjgwNTM3NTUzM2I4IGxlZ2FjeS10cnVuaworMTQ5NjYgM2U5YTFjMWE5ZjU2NzYxZTkyZWNjNTA3MjQ0NWE3ODg5MzEyYTczYyBsZWdhY3ktdHJ1bmsKKzE0OTY3IGU4MmU4MmIzYjlhZDU2NWFjOGRmODEzNWE2N2ZhNjExMzU2ZGJlNjcgbGVnYWN5LXRydW5rCisxNDk2OCAyZGMxYmRiNDA4OGVkNmYxOGQ1NmQyNWQ3M2I0NmY2MTk2Yjk1YTk1IGxlZ2FjeS10cnVuaworMTQ5NjkgYzQwNWRiZGQyNmM5ZWM1ZGNiZTBjNzA4ODdiZjJmZDEyNTE0YjFmNyBsZWdhY3ktdHJ1bmsKKzE0OTcwIGZmZDI0MmZlZDBlMmRjOWRjOTg3Mjc4MGMxOTNjZDA2ZDMxOTE1NTEgbGVnYWN5LXRydW5rCisxNDk3MSAyMzY2MGI2NmJjYTMwYzBlNWVlZDg0MDBiNjhmZTRiOTgzYmQzNGI3IGxlZ2FjeS10cnVuaworMTQ5NzIgNzdiMDJlNTNmNjY2MmY0YzQyNmM2Yzg4MGYwZDdjNDkzYmE3ZDFmNCBsZWdhY3ktdHJ1bmsKKzE0OTczIDc4NTljMGE0YWQ5NTQzMGJhYjUyYTgwZmVhMWQxYjdkYTQyZjY4NjcgbGVnYWN5LXRydW5rCisxNDk3NCA3YmY4YjEwY2UyYWI1YzBkM2IzODA3ODhjMThlNjEzNjVhYzE5NzQ3IGxlZ2FjeS10cnVuaworMTQ5NzUgMDc0YzMwZmYzMjA2ZmQ5ZmZkYjc0ZmMzMzlkMmYxNjQxMThhZWQ4YyBsZWdhY3ktdHJ1bmsKKzE0OTc2IDYzMTM1ZTlkZWYyNDFlNmYwYTBhNTk3MzJhMjcxNzUzYjE3OTNjOWQgbGVnYWN5LXRydW5rCisxNDk3NyBkNDkyMzc3NTIwMjk3NmUzZDE0OTcxNWY4YTY4ZTVmZWJjZDdlZTU0IGxlZ2FjeS10cnVuaworMTQ5NzggMTQ1YzAwNzNkNzg1ODFiNGE0OGQ1YWNhNDViMjg3YTdhMzZiYjcyYiBsZWdhY3ktdHJ1bmsKKzE0OTc5IGNlMjZkNWYzZDNjZTdmYTVjOWQ5MjQ3Yjk3ZTM3OWFhMTEyYWRmZDQgbGVnYWN5LXRydW5rCisxNDk4MCA5MjM1YWM3NjE3NmQ0NTIyODU0MzRhMDBiMzU1MGIwNDYxNDMzMTRkIGxlZ2FjeS10cnVuaworMTQ5ODEgMGNkMjJjODRhNGYxNGQ2ZmJjYmY5YTdmNDU0NzI0MWEyY2FhNDEzOCBsZWdhY3ktdHJ1bmsKKzE0OTgyIGRlMGY5M2Q5MGVlNGQxOTU1M2JiZmY4MzM0YTI1YTVhODU5ODAwMzEgbGVnYWN5LXRydW5rCisxNDk4MyAwODM5ODM4MjcyMjQxZWQ3NWE2NDk3ZjNmNTIwNzU4OWJjMDgyMGMzIGxlZ2FjeS10cnVuaworMTQ5ODQgNzI5ZjMxNTI3NjVjYjhmNTZiZGMwYTliYWI1OTc2Y2E5Yjc5MzI1YiBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDk4NSAxYjdjNDk0NWM2MWMxODlhNDZhOTU0NmQxY2IxZThmYmU5MzI4MGIwIGxlZ2FjeS10cnVuaworMTQ5ODYgN2ZhMzE3NDg0OWJkYmE3YmQyODg0Y2JkNWU1YmM4YjEyMzM0NzliYiBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDk4NyAxOTBhOTI0MmY4M2E4YjAwZDMwMWNkMjA5ODM5YTA0MDk5NmUxOWNhIERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0OTg4IGEwYTI0ZDNjZmQ5NjExYjZkZWUyYzlmNzExM2UxODM5NTFjMzQ1NGYgRGlzdHV0aWxzXzBfMV8zLWJyYW5jaAorMTQ5ODkgMTc2MDUyNDE2NjNjMTljMDUwZDEzNzUzYTJjY2M3YzI1ZTE0NTRkNyBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDk5MCBmYmZmYTdlYjJhNGY3NGY1NmU5NTAzZjhlMjVjZDBhYWE4ODhhNGE5IERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0OTkzIDdlOWE1Y2Y1NWM3Njc2YTU5Njk2MTY4NjUzOTI2ZTgzYTA3ZWE2ZjUgbGVnYWN5LXRydW5rCisxNDk5NCAxYzNmOTE5NTFmNzM3YTAzNzMyZWRlNzM2MjdkMTA2ZTExMTJjMGE4IGxlZ2FjeS10cnVuaworMTQ5OTUgYmUzZTBkMTk3NTIyM2VlNjgxMDA2MGRmNDc1YjIwY2I1MDVlZDZkMCBsZWdhY3ktdHJ1bmsKKzE0OTk2IDNkYWM4NTRlNjExODUwZWRlNzkwZTEyNDU5NDNjZWI4ZTFiYTBiY2MgbGVnYWN5LXRydW5rCisxNDk5NyA2MTJiZTFiYjY1ZmZlMWMxYmQ3ZjI2YjY1MDQ1NmNmYzM2Y2Y4MzIwIGxlZ2FjeS10cnVuaworMTQ5OTggYmRmY2E1NGExNDFjYmMzYmJmMTkzN2IzZWQ5ZDQ2MTQzYjU2MmE5OSBsZWdhY3ktdHJ1bmsKKzE0OTk5IDY5ZDExZGY4NDNjMTU0NGIyZjIwNDgzOTY1ODdhOTNmYzU5OGUxZjkgbGVnYWN5LXRydW5rCisxNTAwMCA3MDE1NGUyZTljODkwZTkzZjFlOWIyNTcwN2UwOWE1NjVjN2QyMjBmIGxlZ2FjeS10cnVuaworMTUwMDEgOWViNzY5ZTE1ZjgxYmMyNDA2N2Y1YjQzYTQwMzhhZWRhZDlhMDcxZSBsZWdhY3ktdHJ1bmsKKzE1MDAyIDBhM2NiMDgyYzVkYmRiNGY5ZTc4OThjZGNhYjRhNDczYTU5ZDY1NzIgbGVnYWN5LXRydW5rCisxNTAwNCA5ZGRlMzE1Y2RlMzk2OWE2MGQxYWM0OGYxM2EwZGQ0YmM4NzYyOTllIGxlZ2FjeS10cnVuaworMTUwMDUgNGRhMDZmZGQzZTYzODFiYmZlYjkxNjU0YTk0MGI0MjVhNWY2NDJjNyBsZWdhY3ktdHJ1bmsKKzE1MDA2IDQxNTg1ZTg1MWY1NWI2MTQ5NDVjMjBhMWY0ZDdiODBhZjYzODAzZDAgbGVnYWN5LXRydW5rCisxNTAwNyA2NjkwM2MzZjE0ZGI0Mjg2ZDQ2ZjkzYTEyNjIxMjVkM2VjNTgwYTUyIGxlZ2FjeS10cnVuaworMTUwMDggYzM0MWU2OGYxOTg4ZTM5M2QwNmI0YjE3NjZkODZjOTVjNzU4YjA0MiBsZWdhY3ktdHJ1bmsKKzE1MDA5IDBiYTg1NzA5YTY3MTI5NTFhNzcwYTFiNWQ1OTczMzhhZGFjNzBhMDAgbGVnYWN5LXRydW5rCisxNTAxMCAyMzI2NjM1MmYxMzhjMDBjZTdhOWZiMGIxNThiZjc0NzhkNTFhYzMzIGxlZ2FjeS10cnVuaworMTUwMTEgNjViYzVlYWY0N2NlOTZlMTJlYjA2ZDhhZjdjN2RjZGE3NDY0OTk0ZiBsZWdhY3ktdHJ1bmsKKzE1MDEyIGQxZDAxNmFjY2U3NGViMjg5YTQxMjJmN2U3MTJjNmQ2ZDJkOTgzNGUgbGVnYWN5LXRydW5rCisxNTAxMyA4YzBmODYzYmE1MGM2N2UzOGJmNzQ3ZTRiN2VkNzFiYjhjMDI2ZDA0IGxlZ2FjeS10cnVuaworMTUwMTQgZmIyMGY2ZmRkMTZkNmQwNDhiYzcxYjFjNDJmYzU5M2ZiMzlhYTFkOSBsZWdhY3ktdHJ1bmsKKzE1MDE1IGFhYzExMmNjYTc5YjUxNmQ5YWUyMTNlYmU2NzgxYTM4ZjkwZTBhMjIgbGVnYWN5LXRydW5rCisxNTAxNiBmZjc1ZTQ3MzRkZDlmZWZkY2E3YjBmNzM4NmU2MThlODBmMDJkZDFkIGxlZ2FjeS10cnVuaworMTUwMTcgNjRmY2FlNzhkNDdhZjYzNTY0N2I5NmU1YjI1OGMwZGZmYjgxZTQ4ZSBsZWdhY3ktdHJ1bmsKKzE1MDE4IDY2ZTljOTdmOWY2NzdjMGJjNjc4YjA4Zjc2YjUwMzljOTZlMDUxNmUgbGVnYWN5LXRydW5rCisxNTAxOSA3NmVkMTM5ZmNlNTk3MzVmYzUwZWQ4ZTE1MGEyYjc1NDhjYWU5N2Y0IGxlZ2FjeS10cnVuaworMTUwMjAgM2ZkYWVjZmZjNGRkZGJjNTI1NDVhY2MxODIyNzVhZWNiZDNjMDBlMiBsZWdhY3ktdHJ1bmsKKzE1MDIxIDllMWY2MDk3NjIwOWYyN2ZjM2Y4ZGFmMjQzZmU1MDA0ZWNmMDRkNTMgbGVnYWN5LXRydW5rCisxNTAyMiAyNjFlODk1NDQwODU0ZjkwZDIxMzQzZDlhMDI0MGY2ZjllYWNmMjQyIGxlZ2FjeS10cnVuaworMTUwMjMgZjZiNThiMDIxZTU2ODkyOTdiMDZlZmU2MjQ1YjBhOWMwYTdlY2FmMCBsZWdhY3ktdHJ1bmsKKzE1MDI0IDhhMWVjOGZjMDBmZWE2NmE2MDMzMDcxODZkOTAzZTdlNjhkMDNhNmUgbGVnYWN5LXRydW5rCisxNTAyNSAwYWM0MGU0N2JkYjVlMWYyMjYwOWZkMTgwM2RhNzQxYmQ2NGUxNDRmIGxlZ2FjeS10cnVuaworMTUwMjYgZmQ3NTYxMTI0MjA3NjRiMGRmYWY2YWZhZWM5MTQ2ZDJhNzFkN2Y5NSBsZWdhY3ktdHJ1bmsKKzE1MDI3IDU1OWIyNWE3OTAzMmFjYmM2ZmRkOWNlNGE3M2FlYzRmZWNhZGUxMmIgbGVnYWN5LXRydW5rCisxNTAyOCBjZjEzMzhiYzIxYzAwMGJmNWVkMjA2YWJkMzRlZTVjNDgxYzE1NWUyIERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE1MDI5IGNhMzFlNjc5MDI0YjVjODhhMzFjNjg5MWJlOGM5OGMyNWJlNWUzNDYgRGlzdHV0aWxzXzBfMV8zLWJyYW5jaAorMTUwMzEgY2JmYTk1YTZhMDNlZTY5YWU3OGViY2JmYTJkZWY4MzQxNjQ1OGYxOCBsZWdhY3ktdHJ1bmsKKzE1MDMyIDhlZjM2NzIzNDI2NDllYTUzOWQzN2Q4MTM5OTYzYTNiNzhkNGRkYjcgbGVnYWN5LXRydW5rCisxNTAzMyA1N2ZkZmEwMGRhOTMzN2E4OGYyZmY1YTFjY2U5MDZhYjMwODZkZWM4IGxlZ2FjeS10cnVuaworMTUwMzQgNjQ3YmY3MTkxMmYwMmMxNDYzOGUzNDk3NDg5OGY0ZjMwYWJjOTY5MyBsZWdhY3ktdHJ1bmsKKzE1MDM1IGFmOGQyMTEzYmMxZDAyNGJjMzRlNTc2MzUyNWZiMmI4MTU0NzUwYzQgbGVnYWN5LXRydW5rCisxNTAzNiBkMDZiNTBiYTgxYTYyY2MxYmYzMWY3ZDQxMGI3Mzk5ODI4Y2Y3NzliIGxlZ2FjeS10cnVuaworMTUwMzcgNTFjMGMzYjZkOTE5ZWZmYzU2MWJhYWUyMTMwZThkNDRlMjk1YjM3ZSBsZWdhY3ktdHJ1bmsKKzE1MDM4IDNhOTRjN2Y4NTU1MWU4OTllZTVmYzcwN2ZlNDc4ZTE0ZTkwOGJjZWIgbGVnYWN5LXRydW5rCisxNTAzOSA5NjAxOTI1MTg4MjliMWVlZTk2MjRhYzg5ZGQwZjZhNjA4NjM2ODVlIGxlZ2FjeS10cnVuaworMTUwNDAgOWM5NmU1ZDQzN2E4MjFiNzQ5OTRlMmQ4OThmY2QzY2ZhMGQ0ZThiNCBsZWdhY3ktdHJ1bmsKKzE1MDQxIDgxODYxNDVjNGEwN2Q2ZTI4NmVlODViYmE3MTMxYTU5ODYxOTU5YWMgbGVnYWN5LXRydW5rCisxNTA0MiA0YzZjMjQ4MTY5M2VkNDA2OTFiNmVjYTQyNDY1MzlmZDY0ZGVjNGY5IGxlZ2FjeS10cnVuaworMTUwNDMgZDFkMjJhMzYyNjhmOTUzNDU5OWNhZDNkYzUyMjdiYmRkNzhiOWJiMyBsZWdhY3ktdHJ1bmsKKzE1MDQ0IDVmMzYyNGJmYTU5NGMzN2NkZWE3YzhiYzdjYTVhZTAyYzBhNTFlN2QgbGVnYWN5LXRydW5rCisxNTA0NSBmYjc1ZThhY2ZiMDU3OTllNjcxMzYyZGU2NDM5NmM3NTg0ZGVmZjA2IGxlZ2FjeS10cnVuaworMTUwNDYgMTVkNDExNDliZjI0Mjk0MjljYWQ0YTFkMzk0MTQ1ZDVkMzU3NGQ1ZiBsZWdhY3ktdHJ1bmsKKzE1MDQ3IGI3ZjJiMjI1ZDBjMDIwNTY5MWFkODgxMzk3MjlkMjM3ZTMxNWNkMzQgbGVnYWN5LXRydW5rCisxNTA0OCAwZDY0Y2U3MzU0Yjk5OWU0NmYxNGI3MDU4MzYwZTQyMTBkNmI0NDhhIGxlZ2FjeS10cnVuaworMTUwNDkgOWFmOTk3MDY1N2ZhZWI4NTM0ZDc1OTljNTkzN2M2MmFhYzliNTg2NCBsZWdhY3ktdHJ1bmsKKzE1MDUwIDM1YTExOWFhMTliNGJlZTMxYjk0OWZhZjUxODZhNDZiYTlkODRlYTAgbGVnYWN5LXRydW5rCisxNTA1MSAyMzQ2YWMwNzgwY2U5MTFiMzMxOTU1YTQxZGNiNjVmMDMwYzBlYjRjIGxlZ2FjeS10cnVuaworMTUwNTIgYjE1NzI1NmRiYTc2OTdjOWJkYjhlYWRmOWJlNzRhMWQ1ODU1ZGY1NyBsZWdhY3ktdHJ1bmsKKzE1MDUzIDE2MzE5ODZkYjEzYTY2NGZmOGMwZmE1ZmQ0ZDJjYmJlNzg4OTViYzAgbGVnYWN5LXRydW5rCisxNTA1NCBkNjQwZTdkNGFlYzQ4YzVkNjFjNDBkYjZkOTk3ZjIxYjhmZWIyNmE0IGxlZ2FjeS10cnVuaworMTUwNTUgOTE3MmVkYWFlZmY1ODY5MTBkYzRiNTBlNGM4YjQ0YzI4YjJmNjlkMCBsZWdhY3ktdHJ1bmsKKzE1MDU2IDE3ZmM5Zjk1OTkwYjQ4ZTE3ODI3Y2VkOTNkN2I2NjYwZTIyN2YzZmUgbGVnYWN5LXRydW5rCisxNTA1NyA0MGU1OGM1YjZmODRmYWRjMjhhNjdiZDExOGQ0MDBkOTNiYjVlMDAyIGxlZ2FjeS10cnVuaworMTUwNTggZmQ5MDViYjJmNmI2MzEwMzJmMDJlNDM5MTUyODgzZDY4Yzg5M2YxZCBsZWdhY3ktdHJ1bmsKKzE1MDU5IDBjNjJkMWM3NmMwNjQ5N2RjMGQzODEyNGJkNjhjYmUzNTIwZmE2NzIgbGVnYWN5LXRydW5rCisxNTA2MCBiYmFhZGE0MWEyMGI2OWRkNDBmNDJhODg2YzAwMmZiZmQ2YzMyNzRlIGxlZ2FjeS10cnVuaworMTUwNjEgMWY3YzMyODAxZGMxMWU4NTAyN2JjYjg3OTEyYTk0ZDhhMWVhNTI2NSBsZWdhY3ktdHJ1bmsKKzE1MDYyIDBhNDViOTUzZjRjMDNlOGRmMjlmNGUxZThmNmZkZjk5YjgxMTAwOTEgbGVnYWN5LXRydW5rCisxNTA2MyBlNTQwOTMwNjQyOTU1YTg3ZjA4YmFiOGY5YmNkM2Q5ZGU5MjY4OWVlIGxlZ2FjeS10cnVuaworMTUwNjQgZGRjNGU2MmIyMTZiMmZjYmM1NmNjYWZhMDFiZTcwNTA5NDUzNWMyZSBsZWdhY3ktdHJ1bmsKKzE1MDY1IGQzMjM5YjdjMDVmZTk4ZGE1MTk5OWY4MWI3Nzg1MmY4MTQ5ZjAwZTcgbGVnYWN5LXRydW5rCisxNTA2NiAzZTcwYzQ1ZjhkNmJiOGViMjljY2U2OWY4MjNjZjc1NTlmNzhjZjBlIGxlZ2FjeS10cnVuaworMTUwNjcgYTNiMDQ2MjM0YzA5MzEyMWE0ZWY4NGUzYjBkMTAwNmViYTc3ZWMyMCBsZWdhY3ktdHJ1bmsKKzE1MDY4IGY3ODI0NDYzOTVkYjJkM2U1OWI5ZGFiOWU2ZGVjOTk0ZjhhYThmMjIgbGVnYWN5LXRydW5rCisxNTA2OSA5MGIyYTNjZDM2NWZlMzBhMTc0MGRlMTFhYzkxYTUwZGVmMDYxMTAxIGxlZ2FjeS10cnVuaworMTUwNzAgMjBhNWNiZjlmY2MwMmM1MWM1OGIwNGE0ZGI0OGY1ODVkZGM0NjNhOSBsZWdhY3ktdHJ1bmsKKzE1MDcxIGYxZjY2NWUwNzVjYTMwNTk5YzU2ZDcxYzUwOGMzMzcyMWQyZTZkY2EgbGVnYWN5LXRydW5rCisxNTA3MiA1NDBmMTA4ODFhNTk3MjlmZTQxMGQyYzljMDFmMjA1MzNlYWZjMTc1IGxlZ2FjeS10cnVuaworMTUwNzMgMjllNzUzNDkzZDhlNWQ3ODk5YjZhZDc5NTQ5OGY0NWZhOTdlNTFiMCBsZWdhY3ktdHJ1bmsKKzE1MDc0IDIwYTM3MGYxYWY4ZGZhOWE2NmY4MDA1YzhiMGM0NGNlNTFjZjFlMTIgbGVnYWN5LXRydW5rCisxNTA3NSA1N2YzNGUxNjJlNjc2MjU4ZDgyYWVjYWYzZjI5ZmY0NjIwOTAyMjBlIGxlZ2FjeS10cnVuaworMTUwNzYgNWRlMGI5MzlmZTYxY2NiZGY3NDIyNDU1YjNjODc2M2Q3YTZlMGM5ZCBsZWdhY3ktdHJ1bmsKKzE1MDc3IGIzMjE2MjczODJiYzE0NTk3ZWJmM2E5MTc4NTJiOGJiYTI2OWMxNTQgbGVnYWN5LXRydW5rCisxNTA3OCBkNzYyOWZhM2IyOWY1ODE3ZWY3MDU4MmEyZDFhZDI0YmIyODliM2RhIGxlZ2FjeS10cnVuaworMTUwNzkgMWEyMDdjNjhlOGI0ZDVmOGNlZjUzYWRlZTljY2I0NTVhYmVmYmQxYSBsZWdhY3ktdHJ1bmsKKzE1MDgwIDcyOTZjZGRlOGE1ZTNiZTkxOGE5OTJkODAzOGI3YzBkZDBjMjE1NjUgbGVnYWN5LXRydW5rCisxNTA4MSBiNWY2YjRiY2VmOTBlY2Y2MzczNzRjOTVmZmQ1YjdmMTA2MDI4YmMxIGxlZ2FjeS10cnVuaworMTUwODIgOTQ4OGU0ZmRhZmU0NmIyNTU4YWMyNDViNzg5MTUzZWZhODExOTE0OCBsZWdhY3ktdHJ1bmsKKzE1MDgzIDY2YjQ5MDZkMGZjNmJlOWVhN2NmZjFiNDM2MTkxNjI5NGE3Mzg2M2YgbGVnYWN5LXRydW5rCisxNTA4NCA0ZjU2NzFhMzEzNDczYzZhZDJiNTQyODZhYjU4MTM3MTRjOTYxYTM4IGxlZ2FjeS10cnVuaworMTUwODUgM2NjNzc4NDhhNjJhZjdiNzA2MTZiMDk2YzFkNDI1N2Q2ZjI4MWU5MSBsZWdhY3ktdHJ1bmsKKzE1MDg2IDc3ZTRmMjFlM2VlNjRhOTVkYmVmODZmNjk0ZWY2NWJkNzJjZjczNmMgbGVnYWN5LXRydW5rCisxNTA4NyBkMTk1ZjE3ZjI5MjczMWU2MWM5MTc5YmM1MjQzYTY3YjE0YjZmZThkIGxlZ2FjeS10cnVuaworMTUwODggNmI0NjY3ZmE0OTM4MWRiZWQwMGUwMTY2ODY1ZjlmNmFkMjBkNTkyZiBsZWdhY3ktdHJ1bmsKKzE1MDg5IDUyNWIyMzU4NzIxZTllOTBmNzU1NTJhMmJiNjZkYzgwN2YwZjc3NDUgbGVnYWN5LXRydW5rCisxNTA5MCAzN2ZkMmU2YzgxYzdkNzBlODg0YjEyODljYjVjNDM0ODMyZThjZWQ3IGxlZ2FjeS10cnVuaworMTUwOTEgZTY5ZWVmNjkyNjEyNTUzMzc2MjAxYzI3YmEwY2Y3NmU2MTk3NjhmYyBsZWdhY3ktdHJ1bmsKKzE1MDkyIGQzMzc0MzEwMmY4YWQzZjIyMWU5MzM2YzhmOTdjNDExZWUxMGRkOWUgbGVnYWN5LXRydW5rCisxNTA5MyA4NTEwYjRhYjNjM2RlYmMzM2ExZDczN2U1YmVjYjc1NWFjNTA1ZjYzIGxlZ2FjeS10cnVuaworMTUwOTQgMTg1ZGU0ZTdjZWYxMGUyYmQ0MDM2MWYwODYwOGQzYjdjNGQ1ZmRmYSBsZWdhY3ktdHJ1bmsKKzE1MDk1IDllOTY2NmY2NzlmNzJjMjU2ODBhOGM2N2JkYjlkMTRiOTBkYTZmMTIgbGVnYWN5LXRydW5rCisxNTA5NiBlMjYyMGFhYjlmMmQ2Y2IxY2U4NWRjYzBhYmJiOGIzNzM0YzY5YTI0IGxlZ2FjeS10cnVuaworMTUwOTcgZmM1NTdmNDMxZTg3ZTBkZGI2MzE4NjVhYTUxZTk5YTczYzk0ZWE1NCBsZWdhY3ktdHJ1bmsKKzE1MDk4IGFhM2IwMmEwMzhhMzdhYWE3ZGEyNTZiNzVlYjI4NzMxNWU0MmFlMTUgbGVnYWN5LXRydW5rCisxNTA5OSBiZTUxMDBhZmExYjdlZDFhOWNkZWZiZjE3OTJjMjRjZDc0MmI2NjVmIGxlZ2FjeS10cnVuaworMTUxMDAgZmNmNTg4ZDg2YjE0MDllZmVmMjdmZGU3Yzc4ZDAyOWE2MGFkMmVhNiBsZWdhY3ktdHJ1bmsKKzE1MTAxIGU5NTJhNGI5MjBhZGYwN2I1MDM0MDQ4MTkxNmZhMzk2MGQ1NjYxM2UgbGVnYWN5LXRydW5rCisxNTEwMiAyNGQ0MTE2ODk3ZGQ0NDdiODFjMjZmYjg5YWM4MTkwNTQ3NGFiMDdhIGxlZ2FjeS10cnVuaworMTUxMDMgZmFjYzEwNWI2NDFiMDFiOWJkZTY4ZGU5NWE4Njg3NWJjMzIyMGYyOCBsZWdhY3ktdHJ1bmsKKzE1MTA0IDE2ODA0YjM3ZDc1MjVjZTkxMGJmNjJlZTZmOTlmYWFjMDBiNzY0ZWEgbGVnYWN5LXRydW5rCisxNTEwNSBlNDM0OWI2MmZkOWI0MTljMzE0ODMyOGM2ZjdmNDJmYzFiYzYyMGQyIGxlZ2FjeS10cnVuaworMTUxMDYgYzU5YmRjN2ZkOGE2MWRjYWNkZTEyMDU5ZDYyYzM2MjE4N2IwOTQwZiBsZWdhY3ktdHJ1bmsKKzE1MTA3IDY3ODU2MTljMzNlMWNiMWM5NWU4MWM3MjI3NjJiZTgyMTM2YzEwMTQgbGVnYWN5LXRydW5rCisxNTEwOCAxNzlhNmUyODUwYWNhNWQwYzc1MTc2ZDNjODhhZjI5ZTQ1MmEzNGVjIGxlZ2FjeS10cnVuaworMTUxMDkgNTRlODBkYjQ5NDIzNzVlYjljMWRjNTlkMGE5OWZiYWM1ZThkMDk3OCBsZWdhY3ktdHJ1bmsKKzE1MTEwIDk5NmViM2IzYjMzZWM1MzIzZjUwNmM0MWY0ZWI1Y2E3YzkwNTYyYzUgbGVnYWN5LXRydW5rCisxNTExMSAwNDgwMmI3ZThhMWYwODQ2ZTcwYTQwMTE2NzA3YTc4MzdmNjQ2YTk5IGxlZ2FjeS10cnVuaworMTUxMTIgMWU3OTFkMmU4ODc1MmUyZWU3NmQ5NjY1MTdlNmIxYjdhZjUyZWNlZiBsZWdhY3ktdHJ1bmsKKzE1MTEzIDViNTllYTQxZGI0ZTg2OTBiMTY3NmU0ZTUwYzVkMGRkNjZiMmIxYjIgbGVnYWN5LXRydW5rCisxNTExNCBmYmM4ZGFmYTQ0ODRjN2UwYjRjYTRjYzYzMWNjNWRjZDc4NGZhZWRhIGxlZ2FjeS10cnVuaworMTUxMTUgMTFlY2I2NjcwZjRmOWU0ODAxNjU2MWUxODMwZWQ1MWFkZDRjZGEyOSBsZWdhY3ktdHJ1bmsKKzE1MTE2IGY3M2JmNDkyNDM4NjgyZjM4Y2ZkODhkYjVmYTZkODk2YjY4ZjM3YjMgbGVnYWN5LXRydW5rCisxNTExNyA3OTFhMTEyYmUzYmNmOGJhY2E4MWMyNjlkOTdlMGJhMGMzNmE4YTNkIGxlZ2FjeS10cnVuaworMTUxMTggODc3OTY5ZWMwOTZmZDRmNjEwNTg2Y2I1YmE5YjZiOTkxMmYwOThkMiBsZWdhY3ktdHJ1bmsKKzE1MTE5IDdmNjUwZGYyNzFjOWUzZWU5ZjNjOWI1MDA4OWRjOGY3M2RjZGRlZWIgbGVnYWN5LXRydW5rCisxNTEyMCBlNjRmYWE2ZTI3MDIyZDMzYjUxYzMxNWRlYmQyMWRkYTM3ZGI3NTk5IGxlZ2FjeS10cnVuaworMTUxMjEgN2ZhNzZjY2RmMmRlNzNmMzY4MjQ0NjkwN2U5N2U2NGVkYzMzNjAwZiBsZWdhY3ktdHJ1bmsKKzE1MTIyIDA0ODEwOTZhMGY0NWJjOTcwODE3ZDZmYjljZjExNDA0ZDQ5YTM3NDMgbGVnYWN5LXRydW5rCisxNTEyMyA2NzdlMjE0NzgyOWE5ZDJjYTBiOWZmNGRjZGE3N2YxODVhM2Y3ODZkIGxlZ2FjeS10cnVuaworMTUxMjQgYzJkMGQ2NzQ0YjNiYjdlNTE0NGI3YjM5ODBhOTAxZWE4MWZiZjIxYSBsZWdhY3ktdHJ1bmsKKzE1MTI1IDY4ZTQ4YmI5NDA3MTFmYjE4YTZjNjdiMDc2ZTMzM2U4Yzc3MzM1OTUgbGVnYWN5LXRydW5rCisxNTEyNiBhZjg3ZmNhZTg4MGZkOWM4ZTQ3NWZkY2ZjZjg4Y2YzZGI2ZjI2NWZkIGxlZ2FjeS10cnVuaworMTUxMjcgNDI5YTM3ZmY5ZGI1Y2MyN2JlOTE2MGQ4Mzc3MjU2N2I2NTI4OTA4YiBsZWdhY3ktdHJ1bmsKKzE1MTI4IDIxNDMwM2QzMmY3NjY0ZDQzZjg0YmRkMGE2NThjYWFkM2QyMzRjNDkgbGVnYWN5LXRydW5rCisxNTEyOSBkNjNiNTdhYzYxN2Q0ZGIyM2JiYTZhNGQ2MzRiZjJjOTg3NDM2NmI3IGxlZ2FjeS10cnVuaworMTUxMzAgZjU3YWYzNjBiN2U1ZWYzN2U2M2E4ODZmY2M4NGE5NzFiOWJlYTJjZSBsZWdhY3ktdHJ1bmsKKzE1MTMwIDAxMWJlZThmZDlmN2Y0ZGE0NTdlYzcxNTk2NDg0ZmIwODgyYzA2MTQgbGVnYWN5LXRydW5rCisxNTEzMiA2Y2U2YzIzYWNkMTQyMWM4NjE0YWRiNGFhNzZkMjczOWIxM2ZjZTJkIGxlZ2FjeS10cnVuaworMTUxMzMgMDUyZmJkOTMxNDkyMWZmN2M3ZTgyZGUxODgyYjMyNTYyOWFlMWRkYiBsZWdhY3ktdHJ1bmsKKzE1MTM0IDYzYWQ3NTRhYTMwZWUyZTY2ZTZlNTAwNWFhNWVkNmYyNjMyZWJhMDEgbGVnYWN5LXRydW5rCisxNTEzNSAzYmUyZjc1NGMwMjM5YjgxYmUxMjM2NDI2NjgwMTI0ZjA3OGRlMDA2IGxlZ2FjeS10cnVuaworMTUxMzYgMzdkOWRlZDVhYjkxNDUwOWY0NDMyZTQzMGE2ZjY3YWNiODUxYWM2NCBsZWdhY3ktdHJ1bmsKKzE1MTM3IDExNmMzYWEzY2NmNzJkMTVkZThjNTZkZDI0NGY3Yjc5Mzk3Mjg2MTMgbGVnYWN5LXRydW5rCisxNTEzOCA1ZjI5ZDdjMDI0MzM4NzE4NThkY2M0NzIxNThhMGRmMGJhNWM2ZjUyIGxlZ2FjeS10cnVuaworMTUxNDAgYmU4MjU3M2U0NDQ0ODJkNTA5M2UwNDVkNjUwM2E3MGUyMjQzYjE4YyBsZWdhY3ktdHJ1bmsKKzE1MTQxIGFhMDEzZjJjZjgwYmU4YmQwMTVhYTg3YmJkYTQ5ODk0NTczZjI2ODYgbGVnYWN5LXRydW5rCisxNTE0MiA2MjcyMjZkZjlmMDE4MWQ5YTc1MTBkYjQ0ZTFhZWZiNWZjZWY2ZGMwIGxlZ2FjeS10cnVuaworMTUxNDMgMzJlOWQwZTc4OTM1MzM0MzY0OWEyNWE5ZTZhNzg1ZWUzODYwZDBlNiBsZWdhY3ktdHJ1bmsKKzE1MTQ0IGVlZjZhMjVmMDljNTMxNmRiOGEyMTkzNTMxYzUyNmUwZmIzZjI1NDMgbGVnYWN5LXRydW5rCisxNTE0NSBjNDgxNzJhZjEzZGMxNTI4Y2FlZTY1YTA2ZTE3MWVlMGY1MDJmMzExIGxlZ2FjeS10cnVuaworMTUxNDYgZTViMGJlYTAzY2ZhNTA1NTZlY2VhMTAwNWFhODU0NzgwZjFmZDQzYiBsZWdhY3ktdHJ1bmsKKzE1MTQ3IDZlZGJhZTZkYmNmNTVhOGI3YjJjNjg3OTI4OTQ1MDczZmI5ZDIzY2IgbGVnYWN5LXRydW5rCisxNTE0OCBhNmYwYjM5OWY2NjU2OTU5MTk4MDk4YjE3YThjZDZlZjIxMDk2NDg3IGxlZ2FjeS10cnVuaworMTUxNDkgOGQ3ZTA3NzM3YjRjNmExNGMyZWZlZjFhOGFhNDQ3YTM0YzMxYjRkNCBsZWdhY3ktdHJ1bmsKKzE1MTUwIGEwNDk4YjE1MjQ0Y2QxMGM4ZGJhYTIwMDYzZDk1MWNmODRmMDMyYjkgbGVnYWN5LXRydW5rCisxNTE1MSA2MGRkOTVjNzU5OTk5MzYyOWM0OTZkZTJjNDYzMTQwM2U2ZTViODQ2IGxlZ2FjeS10cnVuaworMTUxNTIgM2JiMzk4OTk2MjkxZjkzZjIxZjc0ODFiMmQzZjRiMDdkMTM2NjY3ZSBsZWdhY3ktdHJ1bmsKKzE1MTUzIGY4MmIyNTc3ZmEwY2YwNjcyNmY3YTQ4YWUxMjY4NzEzY2I0ZTk3MWUgbGVnYWN5LXRydW5rCisxNTE1NCBmMDcwNWJjZjY3M2IyYzc1M2ExNGJhMDczMzY3NDEyYzA4ZDZjYjBkIGxlZ2FjeS10cnVuaworMTUxNTUgMjM5MmQxMGUyMWYxNjk0ZjY3YTk0NzI0MGMzODg3MjA5ODYwNGEzYSBsZWdhY3ktdHJ1bmsKKzE1MTU2IDhiZjkxMzAyMDYwNGVjZGVkNDc5ODJkNDY0ODUzMDhjYzZlYWQ1OTcgbGVnYWN5LXRydW5rCisxNTE1NyA5ZjJjN2Y3MjcyZmE3MWVkYjBjMWRhOTc3OGY1NzMwNDE1YmU2YjU2IGxlZ2FjeS10cnVuaworMTUxNTggYTU3NDNlMTQ3ODYwYzE2YWE2NWIzYzg1Y2I2OWRmZGE2NDJiNWY5YyBsZWdhY3ktdHJ1bmsKKzE1MTU5IDRjNTFhOTY2ZDJhMzkwZWIzNjE0NGVlNzMzZGU1MGNkZDg3NDkyNTggbGVnYWN5LXRydW5rCisxNTE2MCA4MWM5NjZiMzVjMTI2MjIwMWJmNmNjZTVmYjQ1MzNhZDE5ODBhNTE2IGxlZ2FjeS10cnVuaworMTUxNjEgNjdlOTYxNTc3ZDBlYjhmYTM4ZWQ5Y2E5NjRkZTU0NzAzYjcyOGMxOSBsZWdhY3ktdHJ1bmsKKzE1MTYyIDE1NTU0ZDNhNjhjNzE1YzgzOTVlZDE0NWMyMzE2ZWZiMTMwYWMxZDcgbGVnYWN5LXRydW5rCisxNTE2MyBlYzZiNmNhNWQxMTE2MjNhZjc1YmM2ZmQwNTJkYmJhZjI5NTZmMDJiIGxlZ2FjeS10cnVuaworMTUxNjQgMDFjZmY5ZmUyZDQ1MjEyOTU1OGI0N2RkN2RmN2MxYWYyNjY0MjQ4MSBsZWdhY3ktdHJ1bmsKKzE1MTY1IDJmYjZjNzM5ZDMyNDcxYzExZGRlMWRlNTc0MWRiZTRlNmVlNDJmMjIgbGVnYWN5LXRydW5rCisxNTE2NiBjYjRmMGQ4MTg4MGQ1YjRiNTgzNTkyMmViNTcyYmFmZWUyMjRjNTFlIGxlZ2FjeS10cnVuaworMTUxNjcgNWI4NzBjMGVhN2I2MWEwZjhkYjQwYmJlZTYxNjEyYTQ2NDI3OWVjNSBsZWdhY3ktdHJ1bmsKKzE1MTY4IDRjNWQ2MmU4Njc1YjM4OTEyNGI2MmM5MWQ4OGExMTc0ZTNkZDljZWIgbGVnYWN5LXRydW5rCisxNTE2OSBhZTUyNWFiMjNlZWZjNjFlYzUyZGJlOTc3MWUyNmU0NWIyOGY2OGY1IGxlZ2FjeS10cnVuaworMTUxNzAgN2RlOTAyYzFmNDM5ZTU2ZDFlOTA4ZmY4MTAzYjZmNDQzMGQwMGU3NCBsZWdhY3ktdHJ1bmsKKzE1MTcxIDJmYzUzZGRhMjBlYjYzZTQ1NzBjY2I0MzRhODU3ZWI2NDdhN2ZhMDAgbGVnYWN5LXRydW5rCisxNTE3MiAwYjY4OTkwMDg5ZDIxNDllMDM0MmYwMmM2ZmMxZTU0ZTVhNGI4MzIwIGxlZ2FjeS10cnVuaworMTUxNzMgOTVlMjk2ZTY3YTEyYzAxZGQ2MjlkODhjM2U2ODQ3NzhhNGY4ZjljYyBsZWdhY3ktdHJ1bmsKKzE1MTc0IDI1OWM0YjljNGM4ODk3NmZiMjMxNzFmZmM5YjlkYmNlZWY2NmUyNDAgbGVnYWN5LXRydW5rCisxNTE3NSBhZTEwNjM3OWU3NTZjMjc3NmNhNjljMDQzZTFmY2FmMGQ5NzRiNDFkIGxlZ2FjeS10cnVuaworMTUxNzYgMWM4NWFlNjc2YmE3ZTVkYmI4MjEwNjZmODQ0MDUzOTNiMWZjYTMxYSBsZWdhY3ktdHJ1bmsKKzE1MTc3IDM2MjYyNjExODliNDhkOWIxN2EzNmM3ZTUzMWYwZjczNTgzMWFkMGIgbGVnYWN5LXRydW5rCisxNTE3OCA2OTc5OTY2ZWU5NGRhMTY3YTBlYzE2YWQ1MmM5ZWE4YjBiZTM1NzZjIGxlZ2FjeS10cnVuaworMTUxNzkgNmZiNDBhODVhNTE5NzU4OTk1NGY2MjIzMzZlMDQ4N2JlZDg5MGE3OCBsZWdhY3ktdHJ1bmsKKzE1MTgwIDBkMTNjZTJlMTU1YjkzODI2N2YzZjQxOTlhMDliZDY4NDRhNDVlOWMgbGVnYWN5LXRydW5rCisxNTE4MSAwYWU2MzUyM2Q1MDRiZGZhMzg4YzE2NjliODMzNzc4ZjRlZGIzMGU2IGxlZ2FjeS10cnVuaworMTUxODIgYzBiZjNlZDkzODM1ODBmZmUwNzJlOWY1YmFkNjQzMjg5ZTQxMjlkYSBsZWdhY3ktdHJ1bmsKKzE1MTgzIGU4N2U2YmRmY2JkYzY3Nzg5MWQyMzY1MDNmNmQwYzY2NzU2NTg1M2UgbGVnYWN5LXRydW5rCisxNTE4NCA5NzhjOTY4N2JlZWY0ZmQ2NGRlYjU1NDg0Y2MyZDFkNzk4NjY2ZDU3IGxlZ2FjeS10cnVuaworMTUxODUgNmIyYjlhMjNhNDFmMWY4Y2E1NjQ4Njg1YzRlYzY0M2MwYjUxNWJlYSBsZWdhY3ktdHJ1bmsKKzE1MTg2IGQ5NDAwYzQ3NmI5ZGMyZTVlMzExNjQ3ZGNhYmE0M2M5MGUxY2Y0NjUgbGVnYWN5LXRydW5rCisxNTE4NyBjNjA1OWU3MGJhYjIzYmViZDQ4NjdmOTAyZWM2NGFlNjczNGVkOTViIGxlZ2FjeS10cnVuaworMTUxODggY2E5ODk0MmZlMTAzYjljYzIyMDIxMjgxOGVlNGQ3MWE1YjJlZWMzNiBsZWdhY3ktdHJ1bmsKKzE1MTg5IDNmZDEzMjIyYTg3NmYzYTE4Nzc4OTk5NmM4MmU2Nzk4MDMxNzA2MjUgbGVnYWN5LXRydW5rCisxNTE5MCA4MTYxMzM0OTQyZDRmZjViMzFhNjAxOThhOTZkODBlMmMxOTcwZWJkIGxlZ2FjeS10cnVuaworMTUxOTEgNmE4Y2QwNjgyMDk2MWVhYjkwMGIyNzNlYWYzM2ExNzdmMGQ4NjI2YiBsZWdhY3ktdHJ1bmsKKzE1MTkyIGNhN2I5OWQyN2E0MDcxYTFlMWE5YzU1OTlkODE3YjcyMDhmNDRhMjIgbGVnYWN5LXRydW5rCisxNTE5MyBkZmY3YjI2MTE2ZGViZDNiZjRkZDE0YzVkZmEyMjViZjE4ZGE3YjFlIGxlZ2FjeS10cnVuaworMTUxOTQgODI4OWMwZTU1MWNkMzEyODRmZmI4YmZiY2I5Mjg1MmY5ZGE3YjNjZSBsZWdhY3ktdHJ1bmsKKzE1MTk1IGYwYjcxOTEzYzBhYTdiMDhjYzMwNzM3NGZmZWEwMzdiOWE2NTI5YzcgbGVnYWN5LXRydW5rCisxNTE5NiA0NTY4NjllYWE3ZDU5MWE1ZGRiODdiNWQ1YWFkMjc4ZDgzMmU4MWJmIGxlZ2FjeS10cnVuaworMTUxOTcgZDQ3NDYwYjFhNjc5OTcyNzcwNDNmYzI1MzVmMjYyN2U0ZjFkZjVjMyBsZWdhY3ktdHJ1bmsKKzE1MTk4IGQ3NjMzNDFkMzMxMGJlMGViNDZmNTVjYTgwYjRjOTgwMWQ0MmFmNTEgbGVnYWN5LXRydW5rCisxNTE5OSBjOTliYmE5ZTkyMTJjYjEwZGUzNDUzNjVmZGQ1ZjM1OTllMmM2ZGFiIGxlZ2FjeS10cnVuaworMTUyMDAgZjg3NjE2NGZhMTUxNDk4OWQxZjQzMTcyM2U1NDNlMTM5NWExNDkzYSBsZWdhY3ktdHJ1bmsKKzE1MjAxIDAzYjgxOTEyODM1ZWJlOWI1YzFhZWYxOGM3OTE4MmYxMzk2OTdmMDQgbGVnYWN5LXRydW5rCisxNTIwMiA5YzRhNGU2YmQ1NTVhZWQwYTc2MTNhZjRkZTE4NTVmMmU2OTA5YzFjIGxlZ2FjeS10cnVuaworMTUyMDMgZTM2N2FkM2VhNTlhODYxZDMxYjEwYzhlMWU4YzBmMTg4YzJkZGU1MyBsZWdhY3ktdHJ1bmsKKzE1MjA0IDk1MWQ4NGUxZDU0YmViMDA3NjQ5M2VmMTVlMGMxOTI1NjVkZGVjMjYgbGVnYWN5LXRydW5rCisxNTIwNSBlM2JiMjM5YjJkYmY1ZTA1ZGI3ZTRkODIyYTFhNzNiZTQ4OTQ0YThiIGxlZ2FjeS10cnVuaworMTUyMDYgMTlmNTNkOGJkMjk4MTA2YzI4Njc2NDljYjllMDJkYWU1MzY2ZGM5MiBsZWdhY3ktdHJ1bmsKKzE1MjA3IDE2ZGM4MDczMWMyM2EyMGMxOTAzNGYwN2FiNjllNDEyZjY1ZTg3MmQgbGVnYWN5LXRydW5rCisxNTIwOCAzM2JhMDYyNmVmNzJhOWUxMDNhODVlMzUzODk5YjY5NWFlOWE1NzU1IGxlZ2FjeS10cnVuaworMTUyMDkgMzQ2OWIyZjE3NjI0Zjg2MjcyMTRjMTZiOTlhZTVkZjBkMTZhZWFkNSBsZWdhY3ktdHJ1bmsKKzE1MjExIGQwZjI5MGIzYzBiMjNiYzA1ODRhZDk0YzFjMDk3MDc3MjBjMzZkNmMgbGVnYWN5LXRydW5rCisxNTIxMiA0ODYxNjE4OTQ1MDdmNDA1OGU3ZTRlN2I1NzQ2ODY1ZDVjNzViODAzIGxlZ2FjeS10cnVuaworMTUyMTMgNGNiMzMzNDgyMTYwYzhmODIzMDljY2RhMWU5YzQ2NDFkODRiNGUxYiBsZWdhY3ktdHJ1bmsKKzE1MjE0IGRlMzY1YjY1YzE3YmM4ZDlmMzJmMGNlNjlhNGE4YzRkZTRiYzAzYjYgbGVnYWN5LXRydW5rCisxNTIxNSBkNWZkYzliMWU0NzRjNzIxY2VlZDVmYzYyNTkxZWU2OTJiZjllNzcxIGxlZ2FjeS10cnVuaworMTUyMTYgYzI4ZmEwMWU3MzI5YzNjNDE2YzFmZDVlYWJmZTVmZGE3YzcyODk3YSBsZWdhY3ktdHJ1bmsKKzE1MjE3IGU3NjIzZDAxOTI3YzhjOWZiNWJkOTI5M2U1MTFkODliMmNmZjZhY2YgbGVnYWN5LXRydW5rCisxNTIxOCBlNWIzMWFjYjEwY2ViNmJmMTM4ZDI5ZWZmOGYwZDllNjEyMDIyMjFiIGxlZ2FjeS10cnVuaworMTUyMTkgZmQwZTVkYWVmODZhZTZkYTJlNmY3ZTBiODhkMmFmOTYyOTg3MWE2YSBsZWdhY3ktdHJ1bmsKKzE1MjIwIDE0NGE4OTU3MGEzOWNmMDVjNTE0N2VlYTNjMmM3YTJmYThmZmI3MGMgbGVnYWN5LXRydW5rCisxNTIyMSA3NGQ0ZTQ1M2E3ZjdkYTM5NjVlMTUzOGIwY2VkMzk2MDFjNDY4ZDFlIGxlZ2FjeS10cnVuaworMTUyMjIgMTg5NTFhMDI0ZDExZGYyYTc1ODkwNmJiNjI3ZTU5OWY0NjZhOGQ0YiBsZWdhY3ktdHJ1bmsKKzE1MjIzIDZmNTA5NmE4ZDAzYTIwYjhjNTc1YWM2Yzk5Nzk2MWM4NGQ0YjU3ODEgbGVnYWN5LXRydW5rCisxNTIyNCA0OWIwYjg0NmY2ODM0NzJkMzQzMDYxZWQwMTFlZjNmMGVkMzEwMzliIGxlZ2FjeS10cnVuaworMTUyMjUgMGJmOGFiZDAyYmQ4ZDdjZDFlNjRlNzRhYjE4ZmNhNmQ3MDAyNWE0OCBsZWdhY3ktdHJ1bmsKKzE1MjI2IDE4MWM2Zjk1ZjZmNmE1ZWJiZTNjN2MzZGU5YTc4ODQzZDVkYzM4MmUgbGVnYWN5LXRydW5rCisxNTIyNyA3NjEzZjhiM2MxY2U0Y2Q1MDk4ZGVlMjY3OTFlMjNkMWM3NDIyYzJiIGxlZ2FjeS10cnVuaworMTUyMjggZTM5ZWI5MGIyNTBhMDJhNjI0MWRmYzQ5NjcwNzYyMjY0ODhjNzExNSBsZWdhY3ktdHJ1bmsKKzE1MjI5IDJhMmQ1ZmY5MzMwODA3NzE4NjViOWJhMGVlMGMzY2QzOTY5MmNlZWYgbGVnYWN5LXRydW5rCisxNTIzMCBlNTY3ZTMzZGU2NDViZjcwZDI1ZTZhNGE2MjhhYjA3OWUyZmUzNjg0IGxlZ2FjeS10cnVuaworMTUyMzEgZmNiOTJiOTZmMWFmYjU2MDM5MzEyYzAyMjMwNWRjZjc4N2Y3MTE1ZCBsZWdhY3ktdHJ1bmsKKzE1MjMyIDY5OWRmYjEyNTRjYmY3MjM4YmYyOTJmNDllYjdjMTU3YjAxMTljYjQgbGVnYWN5LXRydW5rCisxNTIzMyBjMjdmNDg0YWVmZmZhN2ZlNDMwNmZmMTQ2NWVhNjY0MDE0M2YwNjc1IGxlZ2FjeS10cnVuaworMTUyMzQgMzUwMGM0MzUwZjYyNmUxMTBjMDg5MjU1NDJlN2U4MzY4ZTFjNTY2YSBsZWdhY3ktdHJ1bmsKKzE1MjM1IGYxYmZmMWVjNzk2YjY0MTA5MzIxMTVjMTY0OGRmNzkzMGU0MjQ4Y2QgbGVnYWN5LXRydW5rCisxNTIzNiA4NjZhZjFkODc5NzA4NGM2NzJhZmM4YTY1MzU3YTEzODc3ZTU3YmNiIGxlZ2FjeS10cnVuaworMTUyMzcgYTNlMWZlY2I0M2M2ZTUxOWRkYWRkMTUwNzBlMDc3MTBmZTBmZjU5ZCBsZWdhY3ktdHJ1bmsKKzE1MjM4IGJlMWQ3NWUxNmNiODE2MjllNGMxOThlNGZkZGZjNGFlOWZkMWI5YzAgbGVnYWN5LXRydW5rCisxNTIzOSBhODg5OGExNzJmZTJmMDc2OTcyNTc1NzVmMzQ2NTkzNGE2OWRjZDczIGxlZ2FjeS10cnVuaworMTUyNDAgYTNjMGI2Y2RkMTY4YTY5NDMxM2ZiYWQ4OWNiOGI3OTU5MzMwMzVkOSBsZWdhY3ktdHJ1bmsKKzE1MjQxIDE5ZTNlOGY4YzU3NGQyMmE2ODZiYTM5MWQyNDkxZjYwMGQzN2U4NzIgbGVnYWN5LXRydW5rCisxNTI0MiBmYzI3Njg3NzVmODIxOTgzOTAyZWJhNTA5MTYxZDI4YjIzN2NmNmIxIGxlZ2FjeS10cnVuaworMTUyNDMgMGRiNWEzNjAyNTI2MWZmOGU2NzFmMDQ3YTZlNzQ4ZGYyMzhiMGJmNSBsZWdhY3ktdHJ1bmsKKzE1MjQ1IDEwYWRiZjgxODNlNjhlMDI3ZDU1OTk5NWYxMDdmMTI4YmQ2ZmI0YjcgbGVnYWN5LXRydW5rCisxNTI0NiBmMWU4NjdhZDdkODVhYzNhMzA0MDJjYzQ5MjNjOWE5NDI2ZDBjMzhiIGxlZ2FjeS10cnVuaworMTUyNDcgOGIzMzBkMTYzODAwNzcxODA1NjU4MDcwNzE3NWNmYThjNTg0MmY0MiBsZWdhY3ktdHJ1bmsKKzE1MjQ4IDE5NTg1NzFkMjVjMTZiY2U0ZGZjYzU5Njg4Mjg1ZWJmMzI1YTk0ZDUgbGVnYWN5LXRydW5rCisxNTI0OSA0Y2VlMmRhM2RhY2ZkNzVkYzdkMTE3MzhiMjk0YWMzZTM1YmM0NTMyIGxlZ2FjeS10cnVuaworMTUyNTAgNzIwZDM1NTZiMTQzODUyMTdmZjM1NjE2YjJiZTU2YjM2NzlmMjAxNSBsZWdhY3ktdHJ1bmsKKzE1MjUxIDE3MjVlODAyZTNlYmQ1MmU3ZGE1YmQ5YTg0Mjc2MGI3YTY1OWM3ZWQgbGVnYWN5LXRydW5rCisxNTI1MiAwNGNmYTEzNDFhNTA5YzE3OTY5ZDkxYTRmMjdlNzlhYjUwNTU2YjUyIGxlZ2FjeS10cnVuaworMTUyNTMgMWNiYTY1ODljZTY2N2NlZjdjNDU2OTk1NDlmZmRlZTA4MzYwNzE2ZCBsZWdhY3ktdHJ1bmsKKzE1MjU0IGJlZjI0ZDQ4YWZjOGM1YjRkMzZhZDE4YzYwNDIyMDY2N2NiZTE5MWMgbGVnYWN5LXRydW5rCisxNTI1NSAyYTUzYTNhNDc5NjJhOGZmMmYwODRlYzM2Y2ZkZWQ3OGNiZWJlZDgyIGxlZ2FjeS10cnVuaworMTUyNTYgZTUwYmJiOGU5OGRhZDJhZThiYzJjODdjNTIxNzdjNGU0NWI4ZDI3MCBsZWdhY3ktdHJ1bmsKKzE1MjU3IDBkNzU1NTVlZDZlYjZkOTcwOTA2ZWFkMGFjYTY1OTIzZWVjNDJiZGYgbGVnYWN5LXRydW5rCisxNTI1OCAwNzgwYWJhOTc4OTg5MzE4YWYyMGZlNGVkNjIzNTZmMTYwOWQwMzY4IGxlZ2FjeS10cnVuaworMTUyNTkgZWI0MzNlZmEyNGRlZWE4NDYyZGYwNTA4NTkwNDlkYjQ4YjI5Y2Y1YSBsZWdhY3ktdHJ1bmsKKzE1MjYwIGJkOTJjNTNiMTY2OTkzMzQ0YTE0YjUyODQ1NDE0MDNiODk3MDViZTkgbGVnYWN5LXRydW5rCisxNTI2MSAyY2UyYTgzMjUzZTgwMzE3YzQyN2JmZmE2NTZiZjY4Y2VjNTg4YjdiIGxlZ2FjeS10cnVuaworMTUyNjIgMjExNDgzYmQwYTUxODJkY2I2MzYwYzNlNjgwMjUzYjdjODY5ODVmYSBsZWdhY3ktdHJ1bmsKKzE1MjYzIDQ0ZTUyMWE5MzY0OGE1MTI3ZWE0ZDcwYThmNWY4ODk0ZmNkNTMxM2QgbGVnYWN5LXRydW5rCisxNTI2NCA1YzNlNTk5OWRhYTE2YjgxMTk2OTNmNzk5NzQyMzU2OGJlYzVkMzA4IGxlZ2FjeS10cnVuaworMTUyNjUgZjRkZDdjODg0OGZjYTQ1ZDhiM2ViMGEzZWRlMmIwNDEwN2MzM2VjMCBsZWdhY3ktdHJ1bmsKKzE1MjY2IDU2NjFmNGY5YTQ3Zjc5ODQ4OGI0OWZhNTk3Y2Q3MjExN2M4N2EyN2MgbGVnYWN5LXRydW5rCisxNTI2NyBiNzZiYWNjY2QzNDYzMTBkNjJhOTc5YmU3ZGE5YjFmNDQxODcxNjZiIGxlZ2FjeS10cnVuaworMTUyNjggZTYzZWNjYmE4NzNiNzY0NzQxYWU1NDI0ZGE0NjMxZGUxMzY0NzlkYyBsZWdhY3ktdHJ1bmsKKzE1MjY5IDEzYTE2NzkzYmIxY2YwODA5OGNiZGFhYzc0ZDBmMDBiOGNhMTVjOGQgbGVnYWN5LXRydW5rCisxNTI3MCA4NzQ3ZjFjOGI1ZmJlYjFmNzhkZjNhMzlmNjdmM2JhNzlmZWEwOWZiIGxlZ2FjeS10cnVuaworMTUyNzEgYTYxMTU3MzI4YjEyMWUxNWRiNjExMTNiYmQ1ZDhhNDUzMjYyZThiOCBsZWdhY3ktdHJ1bmsKKzE1MjcyIGNhMGU5ZDk3ZDU1NGM0ODVhZGQ2YmI4YTg1NTllMjE5MWQ4NTU4YjcgbGVnYWN5LXRydW5rCisxNTI3MyBiYTU0ODYyYzg3ODVjMjBlZjg4N2RmNDk2NTBhN2IzYmU0ZjhmMmIxIGxlZ2FjeS10cnVuaworMTUyNzQgZmI0Nzc1MTExZWQ5ZDUxMmY1MWM4MDQ0ZGQxZTM3MGFmNTE4ZmYwMyBsZWdhY3ktdHJ1bmsKKzE1Mjc1IGU2ZTkxNGQ1YjIwNzJmZTQ2ZWRkNTg2ZGQ0M2Q3NjgzNDU4OTI0MDcgbGVnYWN5LXRydW5rCisxNTI3NiA2ZWJlMGFjYjc3NzY0OTEyY2EzZTA4YWEzMmRhYzg4NmUyZmNjYTI1IGxlZ2FjeS10cnVuaworMTUyNzcgOWU1M2E3MTEyMzk1ZmI0MDlkODA1NmQzODMzYmIyYjY4MWUzNTFlMCBsZWdhY3ktdHJ1bmsKKzE1Mjc4IGFmOWQ2MjNiYWJiMDc3MTc3NTEwYjhjZjAwOGU4ODY2MTRmOTFlOWEgbGVnYWN5LXRydW5rCisxNTI3OSBiNmI3YmQyMGM4NDViNzM3Njg5YjEyOTBjNTEwN2EwYWJiZDQyMTkyIGxlZ2FjeS10cnVuaworMTUyODAgZDM1N2FlOGZiZmU1OTBhYWFiMWNmNWU2Y2E0ZjRhYTg3MWNiNDMwNSBsZWdhY3ktdHJ1bmsKKzE1MjgxIDBjMjhjOWNhYmJkYWViMGZiOTdlZDY1MmRmYjk2MDNmN2MzN2YwZDYgbGVnYWN5LXRydW5rCisxNTI4MiAwMTllYWVmNjM3ZmY1Zjk5Y2U2MTJhMWQ5Zjg4ZDRhZDkzYzIzZTI0IGxlZ2FjeS10cnVuaworMTUyODMgNGFlMTI3MzEyYmJmZDc4NWVkYjdmZDMxNzk4ZTRkOGY0MGJlZmFkMSBsZWdhY3ktdHJ1bmsKKzE1Mjg0IGI0NzZlNGE4Yzg5MTFkMmM0ZWVhYmFkY2YxZDc1MTliM2RlNDQ2YjIgbGVnYWN5LXRydW5rCisxNTI4NSA2ZjczODQ4Yjg0NTIxOTE5M2YwZTBkMmJhZTBjNWViMGFkMTliODY5IGxlZ2FjeS10cnVuaworMTUyODYgNWFlODViZGM1ZjYxNjUwYTU0ZGQ4MWY4MWEzYjM4MDYyMWFjMzMzZSBsZWdhY3ktdHJ1bmsKKzE1Mjg3IGMwYWRiYzljYTU4MTMxOGQ2NDQyOTg2Y2RjMzJhYjRlNDY2MjZkMjAgbGVnYWN5LXRydW5rCisxNTI4OCA1NDBkOWJiMTY0MzlmMDdiYWNlMDdhZjdhMzg2MTQ0MmI2MmU1ZTRjIGxlZ2FjeS10cnVuaworMTUyODkgYzJiYjVlNGIwNGE4OWQ2M2Y3MDI4NDM0MjRiNmZjMzY2MjVkNTJhMSBsZWdhY3ktdHJ1bmsKKzE1MjkwIDg0Y2Q1MmI1NjBlNTcxZWJhMzcxZDcxMzZhYmNjOWM0MmMyN2IwMDIgbGVnYWN5LXRydW5rCisxNTI5MSA4MmNiYjJkZmU4YmRiMjdiZTEyMzcwYmRhODMwYzkyNzU2MDQ4ZDQ0IGxlZ2FjeS10cnVuaworMTUyOTIgNTIzNTY1NmY5ZDBmMGUyMmRjZDExM2E1MDg4NzFmYjYwY2E1MjA5NCBsZWdhY3ktdHJ1bmsKKzE1MjkzIDE4OTI5OGExZmFiNGMyMjMyODZmZGQyNjg3NzkzM2UxMWU0MWU4OTAgbGVnYWN5LXRydW5rCisxNTI5NCA4YTUwMzY1NDQ3Mjc3ODgzNWYxYjVmYjJmY2U3MTMwNDIzYmJiMmRiIGxlZ2FjeS10cnVuaworMTUyOTUgY2MwNWVkY2NjZjUyYmEzN2FmNTJkZTQ4MDY5ZjY4MjM1MmM0MGFlMiBsZWdhY3ktdHJ1bmsKKzE1Mjk2IDdjYzNkZDdjZDMxYWM2YTVjZjgyNmZiMGJjODNkNmRmZmMzOTZjMjEgbGVnYWN5LXRydW5rCisxNTI5NyA4NTllNTAwZjA3NjAwNDYzZDU3ZGJiOWY2Njg3ZTYxMzQ5YTc2NmY1IGxlZ2FjeS10cnVuaworMTUyOTggZDc0ODRhNzQzMzU0MWFhOTc4ZjA0MzcyNmJjNzlmNTIxN2RhMjAwOSBsZWdhY3ktdHJ1bmsKKzE1Mjk5IDgxYTEyMWQyMTM0MDgzZmRiYmYzMjZlNjE3NGYxMzc5N2IzNGEwNGYgbGVnYWN5LXRydW5rCisxNTMwMCBjMzRiYTNlM2NmY2QzODUwZGNjNDE3ZTZiYmE5YzdiNTcyODk5NDRjIGxlZ2FjeS10cnVuaworMTUzMDEgNTllZTE3MTI0NTExNTljOTE4YWQyOTg2NjRlOTdkODFiNGVhMGU0NyBsZWdhY3ktdHJ1bmsKKzE1MzAyIGM4ZGJkNWY3MDI4OGI4NDljN2UwYWY5MzM3ZWM3YTA4NDYzNmM3NTIgbGVnYWN5LXRydW5rCisxNTMwMyA1OTliZmE0ZmZkNDljMTQ1OTRiY2I1NDQyMGMwYjQzMWQxOGE3NzQ1IGxlZ2FjeS10cnVuaworMTUzMDQgNmI2NDdlMDg3OTI1YWI3NzM4ZDQxZDU4MThmYjQ4YmQ0N2M3YjM4NyBsZWdhY3ktdHJ1bmsKKzE1MzA1IDc2OWVkYjJkYThiOTNmZjdhMjE0YTgyYTAxMWJhMjQwNWFmMGFmMDYgbGVnYWN5LXRydW5rCisxNTMwNiAxNzdlNjFjNTU0MjZkYjQxNjY4MmY5YTY3OGNiNDRhYzYxN2VmNjEzIGxlZ2FjeS10cnVuaworMTUzMDcgM2U2ZThmNzZhOTg4MzgzNjM4ZGM4NzU4N2FlNGM4YjMxMDk0YWU2ZCBsZWdhY3ktdHJ1bmsKKzE1MzA4IGVmZDFlNWQyMjg0YWY1NGVhMzNmMzM4MWUwM2E2MDRiYzk4NzI1Y2UgbGVnYWN5LXRydW5rCisxNTMwOSBkYzlkMWI3MWNjMzgwYzZmN2VlNTg1NzJlNTQ2ZWI2OGEwYTgyNWRiIGxlZ2FjeS10cnVuaworMTUzMTAgYmVmNjc1ZGMxMWNjMGJjMTg0NDcyZGY2NzBmNmZkN2NhY2U2MzRhZCBsZWdhY3ktdHJ1bmsKKzE1MzExIDY2ZTQ3ZTg1ZWM1M2I1ZWJhODdiMDBhNWVlMTBjZTdjMWUyNWJjMzggbGVnYWN5LXRydW5rCisxNTMxMiAxMmM3NGIxMDJkMDI3ZDdkYjA2ZTNhMmEwMzAzOWQ1Y2VjY2IzNjEyIGxlZ2FjeS10cnVuaworMTUzMTMgOGY3YjI0YjQwZGU3MzYxNzNhNDNjNDkxMzRhMDU0MTdlNjMyZWU5YSBsZWdhY3ktdHJ1bmsKKzE1MzE0IDA0Y2Y3ODhkODYyYmUwNmFhOWZmZjhkOWYxZjJlNTQ4OGQ5MWQ3MDggbGVnYWN5LXRydW5rCisxNTMxNSA3ODM4MGRmYjJhOTA2ZGFlMjZkZDBjYmQ0ZTllMTNhYTc3OWEwOTNhIGxlZ2FjeS10cnVuaworMTUzMTYgOWE4NDFkNjg0NTNhN2M4ZGVlZjUyMTljZDMyYTY3MGI5MDRiYTNlZSBsZWdhY3ktdHJ1bmsKKzE1MzE3IDRkZjg0NjJhMjU5ZGViODgwZjJhNzhmNGM1ZTQ2N2Q4ZDExNGUwMWIgbGVnYWN5LXRydW5rCisxNTMxOCAzYjhkOWU2M2U0ZTE1N2I3MTVlNzk2OGE4NmZhNGJjNGM5ZDg3Mjk0IGxlZ2FjeS10cnVuaworMTUzMTkgMzhkNWExMWQ5Y2Q0YjAwMGVmNjFhNDE2N2ZhNjY3ODczZWI4ZTg5NiBsZWdhY3ktdHJ1bmsKKzE1MzIwIDdiOGQwYTQ3ZGFhOTdiNjY2MDBkOTI2ZjJlYTc1YmE2NGM3ZjUyNWUgbGVnYWN5LXRydW5rCisxNTMyMSA3YjBlMGI1ODY3ZTJkMzk2NjEwMzNiY2I3NjM1ODMzOTI5NGJmOTZkIGxlZ2FjeS10cnVuaworMTUzMjIgYjg3ZDc1Nzk4ZDgxNmMzMmExNGNjZWZlMTgwYmU2MjhmYmRlNWM0ZiBsZWdhY3ktdHJ1bmsKKzE1MzIzIGIwYTQzNTBkNWMwMzEzNzg4MzQxMmFhZTRiNDI3ZjFjZjU3MWI1NDcgbGVnYWN5LXRydW5rCisxNTMyNCA1MzlhMWE5OWE3OGI0ODIzNmYwMGMyZDYyODNiNjFkZTI2MGFkYWNlIGxlZ2FjeS10cnVuaworMTUzMjUgMTllNjFiOGY0ZTAwNmNkZjJiZjY0OGI1NTE1ZWNlNmViOWVkMzliMyBsZWdhY3ktdHJ1bmsKKzE1MzI2IDFiZTIzMzE1ODhiMjM4YjNkOGZkODAyYzJjMzYxNDNhZjE0ODc4YzMgbGVnYWN5LXRydW5rCisxNTMyNyA2NmRkMjk4ZWFmOGE1ZDRhYTVmODJhNjY4YTJjODhiY2FiMjVjZWIyIGxlZ2FjeS10cnVuaworMTUzMjggOWE5N2E3MTRhMWJlMDMwMWVmYzVhNDliYWJiYWRhYWEyNmU4NTcxNiBsZWdhY3ktdHJ1bmsKKzE1MzI5IDNkYmU0MTM4MDI2NjYwODQzYTZkNmJlZjU0ZGNkMzk5ZjM5MTYxOWUgbGVnYWN5LXRydW5rCisxNTMzMCA4YmNkMTQzMTNjMTFjZGM5MTc2OGMxNjUwMWY3ZGNiZDVhM2MwOWQ4IGxlZ2FjeS10cnVuaworMTUzMzEgMGRmMThmOTQ3MjY3OGM2YzBjMzI0Yzg2MDc3M2M4YmIzNTNjMTc2NSBsZWdhY3ktdHJ1bmsKKzE1MzMyIDU5NTJlZjY3ODZjMjAwODMzZmNjM2IxZmFhNGM3MjkxNzFhMzkyMTkgbGVnYWN5LXRydW5rCisxNTMzMyBhZWU3YzQ0YmI0ZmU1YmVmYmVkZTdhOGY4YTQ2NzYwZjRmZTk2ZjU2IGxlZ2FjeS10cnVuaworMTUzMzQgOGJhOGI1ODU3ZTg5NzU2YzhhYjcxZGY3MzhhNzVjODU5YzVlN2YwNyBsZWdhY3ktdHJ1bmsKKzE1MzM1IGFmODZjZjg4MmQwZmZjMGQ2MWFlMTJjZjVlZjdlZWJlYzU3MTJjZmMgdW5sYWJlbGVkLTEuOTguMgorMTUzMzYgMWM3YzJkZDFiZWIxZjgxMDZhN2FmYTYxZDRiOGJhYmNjODNlMTc1NyBsZWdhY3ktdHJ1bmsKKzE1MzM3IGRjNzg5YjNlMmI5Yjk4ZDg0NjBmMDBlMWYxYzkxNWE0NWQyMjExYTUgdW5sYWJlbGVkLTIuMTA4LjIKKzE1MzM4IDg1ZjAwZjhjZDY3NGJiYzYzN2MxODFmZTVhYzc1YTgxNzBlNWFmNDEgbGVnYWN5LXRydW5rCisxNTMzOSAwNzc0NTZjMzI0YmM1OTg5MDE0OTBiYTBhNDUxNzcwMDVlNWMxMGY5IGxlZ2FjeS10cnVuaworMTUzNDAgOTc4MjUzNTQyMDc2MGNiZWU5NjBiODZjMTNmMzhhZDE3ZDk5YTc5ZCBsZWdhY3ktdHJ1bmsKKzE1MzQxIGUwYTEyMDk1ZmFjMmUxMDhkZDdkYzM0NjYyOGI3MGVkMGY0NWZmMzQgbGVnYWN5LXRydW5rCisxNTM0MiA2YWMzYTJjMDA0MGZjYjFkZmI0Yzg4ZDkyZWNhODZiM2U2ZDljMGE5IGxlZ2FjeS10cnVuaworMTUzNDMgMGJhYjFlMzZhM2E2YzIzZjczNmEwOTUxOTgwOWFlOTEzMjkwZGVhOSBsZWdhY3ktdHJ1bmsKKzE1MzQ0IGRiOTQ1OGMyYjYzMTA3ZjM1MDU2MWRhMmZmZmRjN2IzZDVlOGYxOWMgbGVnYWN5LXRydW5rCisxNTM0NSBjZGU0ZGExOGM0ZmEwOWFhZDgyMTlkNjU5NmYxYmZlMzk5N2IyMDczIGxlZ2FjeS10cnVuaworMTUzNDYgMGI5MWMzYjM4NGQ4Y2MzNmVkZDM0YWE0MzYxMzI4OGUzY2ZkNmQ4OCBsZWdhY3ktdHJ1bmsKKzE1MzQ3IDZjZTIxZTQ1YTk2ZWViYjg4OTVhODI4NmZiYTExMzJjNDhlMmFlMzMgbGVnYWN5LXRydW5rCisxNTM0OCA0ODVkNWVhZjBmNzU3MTA2ZjA0NmI0MmM5NzhlYTc1MjBkYTA5MDllIGxlZ2FjeS10cnVuaworMTUzNDkgNTQyNzRiZWIyNDRkMWQ5YjBjNmUzNGRmMjQzYzk3MzI4NGQzZTE3OCBsZWdhY3ktdHJ1bmsKKzE1MzUwIDJjYzZlNmRmZTliYjc1NjVlMzE3YjVmNmI3Y2FmMTE0ODU3NGUwNGMgbGVnYWN5LXRydW5rCisxNTM1MSBjZWY0NWYxYTc5NDMwNzhjYjA0ZGE1Yzk3MmYzNjU2NDgzYTAyNjE0IGxlZ2FjeS10cnVuaworMTUzNTIgZTQ0MjY2MmIyOGUxODkwMDE3MWViOWVjMzQ3M2M2MDU4OWM1YmEyMiBsZWdhY3ktdHJ1bmsKKzE1MzUzIDc2YjMzOTliMzY0Y2RkNjYxNDk4YzgxZmIwOWFmOGFlYzlhYmQ1NDIgbGVnYWN5LXRydW5rCisxNTM1NCBlYWVlOTI0ZWZiMTkyY2Q5OTQwZTAxOTZhN2JmYmI1OGZlYmFlZjJjIGxlZ2FjeS10cnVuaworMTUzNTUgNTI4Y2ZlODc5NjY1MjA3YTFlNGNlN2QwMjVkOTBhOTEzMjM4MzdjOSBsZWdhY3ktdHJ1bmsKKzE1MzU2IDA1YzA2NzE1NjU3YmNjNGUwOTI2YThjNTJjZWRhNzUwMzdiZTRjZGUgbGVnYWN5LXRydW5rCisxNTM1NyA1NjQyM2I5MzgwZjRmNzZiMzZjMDZjMmQyZGYzZjJhYzUzY2I4NGE0IGxlZ2FjeS10cnVuaworMTUzNTggNjI2Yzk3YWIxMjhjZmU5OTc2ODZkNjNlN2ExM2Y5MTc4ZGI3ODM0MiBsZWdhY3ktdHJ1bmsKKzE1MzU5IDkyZDFkZGMxYzU3ZmRiOWUwNmM2NDBhN2RkMmYyY2VhMWM1NmJhOTAgbGVnYWN5LXRydW5rCisxNTM2MCA2NDU1ZDhmYjc4NzYxZTY5NjdmOTdlZTBjNzY2NzljZTQwNWE1YjcyIGxlZ2FjeS10cnVuaworMTUzNjEgYjU3MGQ0Y2Q2NDBhYzM4ZGZlYmYzZTM2YTllOTY3MGFjZjhiNTU3NSBsZWdhY3ktdHJ1bmsKKzE1MzYyIDgyZjE3NmI3MDY3YjdjZjMyYzY2ZDkyZDk3ZjFjNmFlMjFhODk2MTQgbGVnYWN5LXRydW5rCisxNTM2MyBkZDYwNzhkMjBmN2Y4MmUwNWI5YjE4MzFmNzZkOWFhMDIzNmFmNzdmIGxlZ2FjeS10cnVuaworMTUzNjQgMzVjZGIzZDAzZmQzNTJjNTAwZGVkNTVjYzAxNzlmOTQ5ZTZmMjQxOSBsZWdhY3ktdHJ1bmsKKzE1MzY1IGI1ZjdhYjI3MjIzNzk1MzM0Yzk5NDAzMDBmMzRkZDE0NmI4NmI0MmMgbGVnYWN5LXRydW5rCisxNTM2NiBhMTExMjljZWVjYTVkZjY5ZTQ3YzFiYmM3YmFmZDBlN2ZmODk4NTc4IGxlZ2FjeS10cnVuaworMTUzNjcgNTEyNTNlMDhmNzY3ODgxMGNkZDE0MGQ4YTY3MWU5NWM0YjhjMmY2NCBsZWdhY3ktdHJ1bmsKKzE1MzY4IGE4YWIwOWVmNDhiN2FmNTVmNTc1NDZlOTc1NTI1MTkwNDk0MWIwNDEgbGVnYWN5LXRydW5rCisxNTM2OSAzMmJkNGJhZDEwOGJhOGNjYzRiNDZhNzIwOWFjOWNkMDg3YzUyYzVkIGxlZ2FjeS10cnVuaworMTUzNzAgNzFlNDIwMjk2ZWYxMTI3ZWU1NTE1MDRiMWU0ZDdiMTQyYjZmMjFiNyBsZWdhY3ktdHJ1bmsKKzE1MzcxIGMxOTVmYTE1NzU0MWM2MWNmZjdkODNkYjYxMzk3NzI5NjkxZTIzZDYgbGVnYWN5LXRydW5rCisxNTM3MiBiMzIwY2YzYTk4YjkwNmZkYWY3ZjU3ZjBhNzU2ZDUwMDAxYzhmYjJmIGxlZ2FjeS10cnVuaworMTUzNzMgNTY0OGRmNzQzOTVmOWI0MzdiZDlmYWMyNGM5MDBmNTRhMDk2OTlhZiBsZWdhY3ktdHJ1bmsKKzE1Mzc0IDgyMjhjM2FlOTEzMGFhODgwODNiNGMyNjY3MzY3MGRjMjIzNGYzMGIgbGVnYWN5LXRydW5rCisxNTM3NSA4ZDdhZDM4MThlYTZlNzM4YzVlOWNlODcwOWFjZjU3ZGIyZDJlOTYwIGxlZ2FjeS10cnVuaworMTUzNzYgNjcyMzNkZjEzMDM3M2U3N2UxOTJhMmI2NzNmYmVjY2UxMWQ1NDZkNyBsZWdhY3ktdHJ1bmsKKzE1Mzc3IDgxYmFiYmE1YmQzNGU5OWIzMTAzYTFjOTI4N2IwNGEzOTgyNWE1ODIgbGVnYWN5LXRydW5rCisxNTM3OCBkOWNmYTJlNmY3ODIwODUwNzgxNjdlZDAwYWNjMWNkZTVkM2JlOWYxIGxlZ2FjeS10cnVuaworMTUzNzkgY2M0MzUwYjFiOTFmYzk1MzcyMTdhOGM0MmFiNWQ1MTdiODIxNDFiOCBsZWdhY3ktdHJ1bmsKKzE1MzgwIGViNDkxNDFkNmUxMGYwNzU0NDYxZTM3ZjZkZDhlY2Q4Zjk0NDY1YjQgbGVnYWN5LXRydW5rCisxNTM4MSA5ZWE2YWU4Y2YwNWNiZWNmODliMTg0Yzc4MGNlOWNhZDI1NmI3YWEyIGxlZ2FjeS10cnVuaworMTUzODIgOGE4MmRkYWViYTZhYTE0MGFjMTZmZDczZjNkMmNhY2EwYWU0ZTc3OCBsZWdhY3ktdHJ1bmsKKzE1MzgzIGY3ZjlhNzQwZWQxY2I1ZDIzYjJkOTRhMTE4OTIwODIyNWQ5MDJlNzUgbGVnYWN5LXRydW5rCisxNTM4NCA5YTc3MjVlYTc4ZWIwYjBhNzExNDM2MGY3MjQ1NzBmZWU1NDMzNWJiIGxlZ2FjeS10cnVuaworMTUzODUgNmUwNzNiYTUxNDE0MmQ5OTAwNzUwOTkxNGFhNGRhOGE5MGFkYzc1YiBsZWdhY3ktdHJ1bmsKKzE1Mzg2IDExMWRjOTE2OGU0MzVjMmMyZTdmYTNiNDExZDU4NDc1N2Q3MzIyNjYgbGVnYWN5LXRydW5rCisxNTM4NyBhNmM4NDEzYjNjNGZmNTM4NmI1NTg3YjI4OTRiY2I0NGIzZDc3YzU4IGxlZ2FjeS10cnVuaworMTUzODggODdmNTk0NmM1NmY1NjZiNWZjMzcyMWM5N2U3ZjAwOGFlMzhjZGFmMCBsZWdhY3ktdHJ1bmsKKzE1Mzg5IGU3Yzk4YWYwMjA4NDkxZDljYzFjMzhkMmQ0MmIwZGFkNDY0Y2JlMGYgbGVnYWN5LXRydW5rCisxNTM5MCAzZWZlYWE3NTIxZTQxYjJmYWRkNjhkYjE4MTM5MWVhMTQwOWY1N2JjIGxlZ2FjeS10cnVuaworMTUzOTEgNTdkNGZjODMwOGUzZjE3Y2Y3MzJiMDcyOTY2MWQ5OWVlNDQxNTMwNSBsZWdhY3ktdHJ1bmsKKzE1MzkyIDEzMmUyNzE0OWY5ZjNkNjc4ZTFjYWUxM2ZmNDQ0NGYwNmQyYTAxNzYgbGVnYWN5LXRydW5rCisxNTM5MyAzNGQyYjUwZWZmMmViOTMxZDUxM2IwY2NlODRhMGI5ZDdjMTgzYTEwIGxlZ2FjeS10cnVuaworMTUzOTQgYTU2NzA3YjA3YjgxZGQ0NDE3YTQ2MWU0MTVlYjRlYWUzYjViYzQ2YiBsZWdhY3ktdHJ1bmsKKzE1Mzk1IGRkZjk4NmE5NzFiNTY4YTQyMmIzNWY0YzViY2JjZTgwYTc0NDkxYTMgbGVnYWN5LXRydW5rCisxNTM5NiBiZWEzZDc3MGJlMGFjNGVlYjBlNDVhYjNhMjkyMWE2ZDYwY2FlNWIyIGxlZ2FjeS10cnVuaworMTUzOTcgNzVkYTlkNjM1MzFkMzI1NzkwNDQ4NmVjN2JkZTc2YzQxNjBlYzQ0OSBsZWdhY3ktdHJ1bmsKKzE1Mzk4IDY5NDgxY2RlNTExZDg2NWRmNzE5YWMwZTY2NjIwYmUxZmIxOTFhNTkgbGVnYWN5LXRydW5rCisxNTM5OSBkZWY5NTkzNTI0MjJkMThkN2RiM2Q2MTliZDI4Y2UxOTllNThiYmI0IGxlZ2FjeS10cnVuaworMTU0MDAgOTE3ZDg0NWU2ZTVmMjFlNDk5ZTVlOTdhNTYyNTk5M2FjYmI1NTFjYSBsZWdhY3ktdHJ1bmsKKzE1NDAxIDNmMDZmNDc2NWJhNDIxYjJmZTc4NzU0NWJhNDJiNTFhNjlkMDVhY2QgbGVnYWN5LXRydW5rCisxNTQwMiAwMDRiYjIwZGIxMWUwODY3ZWM1NDAwOTczNmNlZTcwN2FiZDg4M2YxIGxlZ2FjeS10cnVuaworMTU0MDMgOTFiMmVjMjA3NjMzNDllZjQwZWEzMTI5OGNmYWMyMTljYjE2OTIzOSBsZWdhY3ktdHJ1bmsKKzE1NDA0IDA2ZmY5NjZmNjlkNTJmM2IwMzcwODRkNDNjYTVhOTlmMDMyYmM5MzQgbGVnYWN5LXRydW5rCisxNTQwNSAwMGFhNjNkNmQyNmVhMGQ1MDAyMTkyNzU2ODM2ZjViZmIzNWRkNzljIGxlZ2FjeS10cnVuaworMTU0MDYgYzRlYjcwZDI0YTg3M2ZjYzQzY2U1ZTE5MjNmMGQ1MjA0YTZjZjNjMSBsZWdhY3ktdHJ1bmsKKzE1NDA3IDE3ZDFhM2YxZjA4NWQ3YTY0ZTM2ZjUwYmQzMGY1MzRhNGE0OTJmNzAgbGVnYWN5LXRydW5rCisxNTQwOCAwMzVhYmI5MzAzMTdmM2RjODBlZDQ4M2YxYjI3NzM4NDQ4OTczYjM0IGxlZ2FjeS10cnVuaworMTU0MDkgMmE1M2Y1ZGMwNTkwZmRkODBiMDZiOWNjZDJjMGM3MzM5NTg4ZWE5MCBsZWdhY3ktdHJ1bmsKKzE1NDEwIGM5MjY2ODc2NmY1ZGY5YjlhZTM0MzIyN2YwMmY3YjYyM2Y5NjA2OTEgbGVnYWN5LXRydW5rCisxNTQxMSAxYjA4M2ZlZDlhNDhmM2I0ZTU1YTg4NGMxZDk2NDg1MGUwOTlkMDdmIGxlZ2FjeS10cnVuaworMTU0MTIgZmFhOThjOGYzZjQyMjUyNTlmNDA0MDQ5YmE5NzFiODFmZTJiOGQ3NSBsZWdhY3ktdHJ1bmsKKzE1NDEzIDg2NjM2NWI0NGYyMzc0ODU3ZDc5MWU2YzA2NGM4NzY5YjRhNjg2ZjIgbGVnYWN5LXRydW5rCisxNTQxNCAwYTMwODFkZTU1YTE4NTc4N2RiYzQzNjU4YmQ2MjkzOTViZTY4MzFhIGxlZ2FjeS10cnVuaworMTU0MTUgNmIxNDNjYTRmZDdmMjM0ZTA0NzJiZGYxNGM0NWQ0NTBiODdkYjA3MyBsZWdhY3ktdHJ1bmsKKzE1NDE2IDRjYzc0YmY4MGUwYmM3ZmIyODIzNzUxYmIyYjRhNTMyNTcwZDZhYzIgbGVnYWN5LXRydW5rCisxNTQxNyBmN2E4OTk2NDdjYjNmYjBmMDliOWRjMTQwOTViMDNiYjQ2YTYxMzI2IGxlZ2FjeS10cnVuaworMTU0MTggODA1YmI5MGFmMTRkNzEwZjQzZjE4ZmExNTA2YjVjMWY0MzMxNDk1YSBsZWdhY3ktdHJ1bmsKKzE1NDE5IGUyZTQzNmE2Mjg5ODE5MTIyMjkxYTJkZjc3ZGE1YzMzZGQ3ZmUzNTggbGVnYWN5LXRydW5rCisxNTQyMCBiNjU2M2Q5ZGYwNmQwNzJlMzIyOTM0MmU3ZjFlMDYxNmQxZjY3MjdlIGxlZ2FjeS10cnVuaworMTU0MjEgMDU0OTMzZmFmNzdhMTE3ZGRmMzc0NGJmYmY1MDA5OTQ2NmE2MDIxNCBsZWdhY3ktdHJ1bmsKKzE1NDIyIGI5MWZkYzI5YzViZDJjMGEzNmQyNDJkMzJmYzRlMmZlYzdkOWJhODUgbGVnYWN5LXRydW5rCisxNTQyMyBhYTlhNjM1YTZmNDc3YTg3NTk5YjliMmQwYjM1YTQ5NWU2OTZlNzQ1IGxlZ2FjeS10cnVuaworMTU0MjQgMWVhOGNmODg1ZjdiZDkzMWJmOGM1OWRmNjg2MTZkODYxMjE3ZDFmYiBsZWdhY3ktdHJ1bmsKKzE1NDI1IGI3Nzg5MWZhOTNiMGU0M2QwMzRjYzdjMzlkOTUwNTIwOWFkN2MzNWMgbGVnYWN5LXRydW5rCisxNTQyNiAwNTcwOTc3OTYxMjBiODYzY2Q4OGRkOGM2NTFmNmI4MjlkMzE0NmFmIGxlZ2FjeS10cnVuaworMTU0MjcgNGRmNTIzOTk4ZTVkOTQ5NzYzYTMyNzcyNzUyNjk1Y2RkZDFhNWFkNiBsZWdhY3ktdHJ1bmsKKzE1NDI4IDdkMDI1NWJlZTBmOThhODEzZGE1NzA5MGY5MDhhMGU3MzdmZDUwNGMgbGVnYWN5LXRydW5rCisxNTQyOSAwNmEzNDZlYjNjYmYwM2IwNjVmZDExYTE0NGQ3NmZiZDU0MThhMjIyIGxlZ2FjeS10cnVuaworMTU0MzAgMmE2ZGM2NWMwNjBmNThkZDMwMWVhOGQ5OThjM2FhOWI4YWU3ZGFiZiBsZWdhY3ktdHJ1bmsKKzE1NDMxIDJmZWI5NzkwYjQwNDU2ZmVjNzM2NGNiYWRhOTY4MzU5Yzc3MGRhN2UgbGVnYWN5LXRydW5rCisxNTQzMiBhMDJlNmE0M2NhMTViMDk5MWUxN2M1NGJiM2NhYjY4ZDg5YjQ5N2Y4IGxlZ2FjeS10cnVuaworMTU0MzMgNDdiZGI2MzYxNTljODA1YTM1N2UyZWIxOGQwYjAxNjA5MjYwNTgwYSBsZWdhY3ktdHJ1bmsKKzE1NDM0IDU2NDY3NzMzMjBiZWE2ZGFkNjRiNTU0NTA4MDZhMjc1Nzc4MWE5MmMgbGVnYWN5LXRydW5rCisxNTQzNSAxMTZmYzQzMDVhMzliMTMyZWQyZWZmN2NmZGRhZWI0NTU5NDZhYmE5IGxlZ2FjeS10cnVuaworMTU0MzYgZGU0MzVhNTlhNGQ1MzU1NWQxNTFlMDQxMGYxNTA0ZWQ0OTI3MzgyZCBsZWdhY3ktdHJ1bmsKKzE1NDM3IDA3ZGMzZWQxN2RkNWQ5NWI2ZTRlNmFmNTY4MzVjNWM4ZmRjYTVjM2YgbGVnYWN5LXRydW5rCisxNTQzOCAyMzQwNzQ1NDVlYjRlMTk3YTdmOGRlOGIzNTY1NGIzNTJkNDY2ZGEzIGxlZ2FjeS10cnVuaworMTU0MzkgODc1ZTY3NzIzNmE3MTg5ODgyNmJlOTgyMDQ2M2MxMmNjZWZmMGQyNCBsZWdhY3ktdHJ1bmsKKzE1NDQwIDhlODFjNmM1MjRiMjA1YWQ1MTMyNWY1YTQ2YTUyYmEyYzBkOWU1NWMgbGVnYWN5LXRydW5rCisxNTQ0MSBiODlkYTIwMmQxOGQ3NjljM2FhODNmNjk5YTNmYTBmMjk4NWFkNGMzIGxlZ2FjeS10cnVuaworMTU0NDIgYmRhZTZiOTA5MzRmNDZkZDQ2OGEzYzMwODk0OWJkNmMzMDY3MzcyMSBsZWdhY3ktdHJ1bmsKKzE1NDQzIDdjODllZTQwNzMwZjQwZTMwNTQ3ZmYwMzdmYTVkMDExY2VjZmRhMzkgbGVnYWN5LXRydW5rCisxNTQ0NCAyZTFiMDQ4M2IxMDFiMzA3NjQ4MmNkN2NkNDUzZmMyYzA3NDMxOGRiIGxlZ2FjeS10cnVuaworMTU0NDUgMzRmMDkwNmZlODIzNDg0NjE0ZGI5ZmI1YTE2MjlmYjMyYjdiMmJlMSBsZWdhY3ktdHJ1bmsKKzE1NDQ2IGNiZjlkNjdiNWZjMWY1YjBhMzRlOWM0ZGZhZjZmMzhhNzAyMDliMWMgbGVnYWN5LXRydW5rCisxNTQ0NyBiYzk2YzkxMmRjZThjZDU5ZWUwY2Q4NDZkNzg1ODlmYjE2YjViMTM5IGxlZ2FjeS10cnVuaworMTU0NDggNmJhZDE2Nzg5Zjc5YjQ1MjUzM2QyOTE3NjA3YWY5MjI4OGY5YTcxZiBsZWdhY3ktdHJ1bmsKKzE1NDQ5IDljYjk2MDg2MDUyOGYzMzdmZmQ0MTUzZTdjNTg1MzQ4ZTk2OTQ3ODYgbGVnYWN5LXRydW5rCisxNTQ1MCAyMGIzYjk3NjVjZWM2NmJkYWE3Y2E0YmQ1MjQ2ZDgyN2I2MjcyOTEzIGxlZ2FjeS10cnVuaworMTU0NTEgNzI4YzE2MDUzMzY4YWVkYzYwYWQ2ZGI4M2ExMDRjNDBiMzU0MWZkYSBsZWdhY3ktdHJ1bmsKKzE1NDUyIDdiNDY2YTczYzk2MTY2M2U4YjhjMjQ3ZTgzOTg5ZmFiYjkyZDhlODAgbGVnYWN5LXRydW5rCisxNTQ1MyA0MjBmOWFhZjg4MGJkZTMxZGU0ZDEwYzg4ZjJhMWIzMGE1OTg4OWM0IGxlZ2FjeS10cnVuaworMTU0NTQgMWRlZTkzZWI5ZWUzMjE1YTdmNWZmNmFhZGQ2NzEyODU5ZTQ1NDhkNSBsZWdhY3ktdHJ1bmsKKzE1NDU1IGE5NDI2OWJkNjU4NTkxOTRhZDUxZGFlODM0MjQ4YzAwNjFhYzZlNzkgbGVnYWN5LXRydW5rCisxNTQ1NiBhNDhiNjBiNmViNDgzN2RjNjhlMzYxZjg3YzAzNzRmNjUwNTNlZDc2IGxlZ2FjeS10cnVuaworMTU0NTcgYTQ5ZTQ1MDY4OGUyZTBkNjgwNTNkZjBkOWVkZWIxZGZkMjMwODQyYSBsZWdhY3ktdHJ1bmsKKzE1NDU4IDkwMjgwMGQ4ZThiZTExNWU1MmU1YjI0YmIxOTFjY2Q3MTMwYjg2YWEgbGVnYWN5LXRydW5rCisxNTQ1OSBlYjE3MThjNWE1NmMwZGJlYTAzZmVkOTJjYmNlMWNmNGJjNjY3N2ZjIGxlZ2FjeS10cnVuaworMTU0NjAgZWU5NzJjYTY1YzFjMjMxNGFhMWFmNzhkNGYwNzE4MTRhM2U0OTkyZCBsZWdhY3ktdHJ1bmsKKzE1NDYxIDk0ZWRlMDRiOWE5ZWVhZGZhMjRjMTY4ZWUzYjBhNGFlYWFlNTk4MDcgbGVnYWN5LXRydW5rCisxNTQ2MiA5MGM3OTA2YjA5OTliNTFhNzVkOGRhNTFmNzU5ZWIzMDgxYjYyZTg4IGxlZ2FjeS10cnVuaworMTU0NjMgNThhZDYxOTZkODFmMmI0ODk5NTRlMTRmM2ZhYzcyYmYxYjU5ZDhiNyBsZWdhY3ktdHJ1bmsKKzE1NDY0IGY1NTVmZDgwNTA4NTVlYThjMTk5ODRmZGJiNzM4MmE2N2QyZWQ5ZjUgbGVnYWN5LXRydW5rCisxNTQ2NSA2MDU5YTkyNzlkOTk5NGIwNWRhNjBjMjJmNWFiYmY2MGY5ZTM5ZDhmIGxlZ2FjeS10cnVuaworMTU0NjYgN2ZmNWFlMTBhNzcxZDdjNmQ5ZmQ4OGIyZDUwOWRmNmIyYjYxY2M3MCBsZWdhY3ktdHJ1bmsKKzE1NDY3IDI5Nzc1YzI4NzIzNzhmNTQzOGRhN2U0ZTk1ZDhkZjI5YThjYjA5MzAgbGVnYWN5LXRydW5rCisxNTQ2OCA5YWJlZmM1YjFkODlhMmZiNjMxMmI3NGIwYzZhMDI4YmI0YmQ3NTY0IGxlZ2FjeS10cnVuaworMTU0NjkgMzUzMDU5OTE3MTliNTE3ZTI5ZGQ1ZjFhOWFhMTIzZTA4ODZlNzU2ZiBsZWdhY3ktdHJ1bmsKKzE1NDcwIDFiZjcxNGUwYzEwZjVhZGM2ZDI1MmFjZWIxOGZiZjc4Y2RjM2Y5YWYgbGVnYWN5LXRydW5rCisxNTQ3MSA5NDJjZTIyMTEyOGEyODMwMTU1MzBmNjkzNzdmNThjNDMyOWNjZjE5IGxlZ2FjeS10cnVuaworMTU0NzIgYjgxN2YxNjM5OTM5Y2ZkNDRmMzk2ZjZlYjZiMDRkZDU4YWI1MDA5MCBsZWdhY3ktdHJ1bmsKKzE1NDczIGJlNTVmNWRkYzYxNWJkMjE1YzE4NDZjZjUyMTIwODJiODhkZTVjM2IgbGVnYWN5LXRydW5rCisxNTQ3NCA3ZWZiYjRlNmFmY2E4MzBkYjFmZThkYWZkMjQ5MzgyYzZlOTVlOGY4IGxlZ2FjeS10cnVuaworMTU0NzUgOGRjYTU1ODY3OTk4YTU5MmNmMDljM2YzOTQ2OWQ3OWJiMDRhMTM5MSBsZWdhY3ktdHJ1bmsKKzE1NDc2IDZhZDhjZDM0YWQ4YzhmMWFjYjE4ZjJiZjU3YWJjZDkyMzAzNTMxOWYgbGVnYWN5LXRydW5rCisxNTQ3NyBhZWNmMzVmMGMxNmJhM2M5ZTkzOWEyMTIzMzQ1ZGUzZmY1NTI1YWM4IGxlZ2FjeS10cnVuaworMTU0NzggMGE2YWY1OWViZmZkOTNhZDViODliMmQwMTY2NTEyMGQ5OTRiMzBjNCBsZWdhY3ktdHJ1bmsKKzE1NDc5IDUzZTU0YmQ0ZTVmNGFjYjFiYWY1OGU4NGEwMjMyNTQyZjk0ODMxNjMgbGVnYWN5LXRydW5rCisxNTQ4MCBmZjgxYTY1ZTBhOWJiMjIwNjdmYzZhNWY0YzNjY2ZhMDg1ZDRiZDNiIGxlZ2FjeS10cnVuaworMTU0ODEgMmVhOThkOWRjNjY5NDQ5ZjY5MTdiYTk3YWY5MDNjZWRmZGY1NTUyNCBsZWdhY3ktdHJ1bmsKKzE1NDgyIGE1OThhY2UwMTk0MzljNTAzMzk1ZTk1NzhlODMwNDZmNTBjNGI5ZTcgbGVnYWN5LXRydW5rCisxNTQ4MyAwNTJhZmI3NDk1MmVjZmQzMjk4MGQxZTQ4MGMxNWE5NTA3YjNjNzQxIGxlZ2FjeS10cnVuaworMTU0ODQgZDA0MGNlYmQ3NGFjMmYyNTM1MjA3OTRmM2Y3ZDY1MzJkMGFjZTIyZCBsZWdhY3ktdHJ1bmsKKzE1NDg1IDJiNDk4ODM3Y2Q4NTg2ODY3NzFjYzI2YTkxOGMyNTU1YzY1NGE2NGIgbGVnYWN5LXRydW5rCisxNTQ4NiA0MGQ2ZDJmYzljZmZmNDc5NzIxNTZiZDFiZGYyZWFmMzhlODI0NjYyIGxlZ2FjeS10cnVuaworMTU0ODcgNWRkM2IzNWJmZDUyMmY4YTMwYzhmN2M3ODg1NDY0YjgzZDcxMTMxZSBsZWdhY3ktdHJ1bmsKKzE1NDg4IGNlM2RlMjk0MzYyYjhhODUyYmIxMDcxN2JiYzc1Nzk1MWY0M2RjNzUgbGVnYWN5LXRydW5rCisxNTQ4OSA0ZmQ4NDU5MjJjNDlhZTBlNGNlOTIwZTg1NWZkN2UzZmE3NWRmNjhlIGxlZ2FjeS10cnVuaworMTU0OTAgMjRhYjg0ZGM0MmFiZjA5ODQwYTZjNGRlMmNhYjFkMTY0Y2NiY2M5OSBsZWdhY3ktdHJ1bmsKKzE1NDkxIDE0N2QwYjQxNDRlYTE3ZGYwZjgwM2M1NDE5YjBkZGQzZjFkNDdkZDUgbGVnYWN5LXRydW5rCisxNTQ5MiA0MTE4ZjAwMmU3Mzc3MzJlZDA3N2YxZmJkZTdiOWZmMTc2MmYyMmY2IGxlZ2FjeS10cnVuaworMTU0OTMgNzk1NGZmOTNlZTNiYzY5Zjc5Yzk4YzRmZDMwMWFiMDFhOTY3OWI5ZiBsZWdhY3ktdHJ1bmsKKzE1NDk0IDgxMzgzMjIyMDk4YTNkOWQ0MThmYzJiZWRlNTM5NWFlZjBjOTI2NGUgbGVnYWN5LXRydW5rCisxNTQ5NSBjYWIyMmJjYmY1YjZkYzZhM2U5NGU0OGM5YzViZjhkMDEyNTI0ZDNkIGxlZ2FjeS10cnVuaworMTU0OTYgZDJkODY1ZDk1ODYxMjY0M2IwOTBjYmU2NTE4MGY1NGMyYTI1N2RjNiBsZWdhY3ktdHJ1bmsKKzE1NDk3IGQyNTczZGJmNjg1MjU0NDg3ZGM4N2I4ODdlY2RlNmI3MGY3NjRlMDggbGVnYWN5LXRydW5rCisxNTQ5OCA3N2E1YTE0Njk1YjMyYTllMTc3YTI1NDcxZWNkNGQ0ZTRlN2VkOWQ4IGxlZ2FjeS10cnVuaworMTU0OTkgM2QyNmNiMzgwOGE3ZDIyMGRkZjdjZjEyNGE3NWQyZjk3YzM5NmE5YiBsZWdhY3ktdHJ1bmsKKzE1NTAwIDE4YjAzNTY1MDVhNWE0YWMyNjc3ODQ4YmZiNTY0ZTdmZjdiNDk1ODEgbGVnYWN5LXRydW5rCisxNTUwMSA4OWY0MjA5OWM1ZGQ2ZjQyZjQyZTQyZjRiNjBiOWM2ZjRjMjUwN2UzIGxlZ2FjeS10cnVuaworMTU1MDIgYjUwYmY3ZDM5NjFmODdlNTZhMjhhY2JlMGY1OWQ5OTBhMjZlYzc3YSBsZWdhY3ktdHJ1bmsKKzE1NTAzIDU3MGZhY2I3M2UzNjRmNzc3MjU1ZjYyZmU5NDg5OTAxNWRmNmUzMTEgbGVnYWN5LXRydW5rCisxNTUwNCBlODc4YTY0N2UwNmVhZjkxZmM0ZDgzNDQyZDVhMDkwNzQ3ZjRiMjY1IGxlZ2FjeS10cnVuaworMTU1MDUgZWVhZmFiOGM5MjViZTY4NDRmZmI1M2Q4MDFhMWZkYTgxNTgxN2NkMyBsZWdhY3ktdHJ1bmsKKzE1NTA2IGRhZDIwNWQxM2JiNTlkYjYzNDI3OTJkZDBhNDJiYjBjMDBkMGMyNDggbGVnYWN5LXRydW5rCisxNTUwNyAzYzMwZjdiNTEwZDM0MTM2ZmE2YWQzNzZmZGE0OGI1NmY0NWQwODA0IGxlZ2FjeS10cnVuaworMTU1MDggNmM2ODQ0YTJmYTMwNGYwMjAzMGQ1NjgxMjliNGQ5MjI1OTExNjQ0OSBsZWdhY3ktdHJ1bmsKKzE1NTA5IGViNTYyZGYwY2ViZTBlZmVmY2YwZGY2MjBiZDgyMGM0YzhmNmUzYzYgbGVnYWN5LXRydW5rCisxNTUxMCBiY2U0OWE2ZmE4YjllNWJkMjZiMjNlNDU5N2RkOGMyNjQxZGZjNThiIGxlZ2FjeS10cnVuaworMTU1MTEgMjQ5N2UxYzllYmNlZWE3MTg4ZTM4NWJiYTlhNjVjNDNjNzRlMzZkNyBsZWdhY3ktdHJ1bmsKKzE1NTEyIDJjMmI0MGViM2E2NTQ2MzE5MDczMTE0MDc2ZGNjNTNmMjUwZjFjYTQgbGVnYWN5LXRydW5rCisxNTUxMyA3YjQ5MzM0YTYzNjk2YWNjNGM4M2RkMDdkYjkxZTZjMjYxZWE1OWM3IGxlZ2FjeS10cnVuaworMTU1MTQgODZlYzc1ZGFjMjcyYmFmYzdlNmFkZDk5NzM5YWNjYzFjY2NlYjFmOCBsZWdhY3ktdHJ1bmsKKzE1NTE1IDUyMTNhYmZlNTIzMGJlYjAzZmMxOTk2MDEwMTc2NTcwNDg4YWJjNGMgbGVnYWN5LXRydW5rCisxNTUxNiA4ODlmMmNiM2Y3MmFhZjgyMDk2MzU5MTJiNmVmNjdjZGUyOWUwMjU4IGxlZ2FjeS10cnVuaworMTU1MTcgZWNkZGIyZWQ0Yzc1NmE3NWNkYmRmZjRhNzdhNWFhYjg1MGU3OThmMSBsZWdhY3ktdHJ1bmsKKzE1NTE4IGYwZDIyNTNiNjY0ZjU4ZDNjYTQ5OWIyYTJlNTczODkxZjQ3MjI2YWUgbGVnYWN5LXRydW5rCisxNTUxOSA0MDZiMGUyNGQ2MmU3M2Y4YWI4YjRlNTZmNTlkMTM0NzBhZTZiMzFhIGxlZ2FjeS10cnVuaworMTU1MjAgMWRlMDAxN2UxMjI2N2IxMDExOTM2ZjU3MWYzMDZjODBiNzczNzkwOSBsZWdhY3ktdHJ1bmsKKzE1NTIxIDBmMWU0ZTM5MzVkN2M0MDAzOGJmOWQyMDAwMGM5MzkyYzRlYmVkMzEgbGVnYWN5LXRydW5rCisxNTUyMiBkYTAyYTg5MmQ2MTE4NjQ1OTY2OTcxMzY5OWI3YmRmMTNlMTljMjE0IGxlZ2FjeS10cnVuaworMTU1MjMgOWUxYjgwNTBkZTYzYTQ1ZWE0ZDIwODNjOGIxMjdmMTJjNWVhOGU4YiBsZWdhY3ktdHJ1bmsKKzE1NTI0IDNjMTQ5ZDM4YWJmOWZjNDg5Zjk0N2Y5OTU0OThiNjM0NTYyZmFlYmEgbGVnYWN5LXRydW5rCisxNTUyNSBjOGE5ZDE3NjY0NjVjZTVhZmJlZTljMDA5OTFiNzkwOGY2YWIwYTY2IGxlZ2FjeS10cnVuaworMTU1MjYgZTBlZjYyMmY4YzIzY2U5NGVjMjlkYjU5MGM0Y2NkYmExOTkwOTc2OSBsZWdhY3ktdHJ1bmsKKzE1NTI3IDk2NzczMmRkM2Y5NTliYTg2ZjE2ZmVkOGQ5Y2I5ZTU5ZWQ5Njc3NDAgbGVnYWN5LXRydW5rCisxNTUyOCA5Y2JjYWQyZTg3MjM4NDU5MWNhOTZjZmE2M2I5YTljZDg1Y2MyMjM3IGxlZ2FjeS10cnVuaworMTU1MjkgYjVhYjQ3MzY1YmFkNjU4YWMyMGEzYTkxZmE3YjhlYjExYTFmMWExYSBsZWdhY3ktdHJ1bmsKKzE1NTMwIDI2M2NkZjljODQyZWU3NGQ0MWM1MDQ5YTZmNGRhOWRiMTU3ZjQzNjEgbGVnYWN5LXRydW5rCisxNTUzMSBmYjQwMzliMWNmOGQ3NWYxMmJkNWY5Zjg4MGVlOTYxYTc5Y2I0YzA1IGxlZ2FjeS10cnVuaworMTU1MzIgNTJjNmFjMmQxNmE4Y2FlZWI4MDc4NjYxMmU4Y2IyNDY2Mjk5Y2NlZiBsZWdhY3ktdHJ1bmsKKzE1NTMzIDdhNGY2NDAyYzY3Zjg4NzVjNjZkZjgwMjQ5NTljMGM2NjI0NmJiYzMgbGVnYWN5LXRydW5rCisxNTUzNCBiMDY5NGMxYzEyODdkOGI2ZGY5MzlhMzUzZGE3YjFiYWRkMjUxYjQ0IGxlZ2FjeS10cnVuaworMTU1MzUgNDBkYjkwOWNlMmUzMmFhZjZhNzRlODI5YmFhNjU0MDI2NjQzNDljNiBsZWdhY3ktdHJ1bmsKKzE1NTM2IDhlMmIzNWQzODZhYWNhYzc2ZDc5NTRjZDZjYmEzZGUyMTZiZjg0ODYgbGVnYWN5LXRydW5rCisxNTUzNyAzNDI5NDdmMmZiNTE0MzFkODRiNzQzMzQzYTI2MDkzOGI4YjFjODQ0IGxlZ2FjeS10cnVuaworMTU1MzggMzhkYTg2NGEwYzgwNjZhYzVkMjg0OWYxOGVkNDhhNGUyNTRiNGVmMSBsZWdhY3ktdHJ1bmsKKzE1NTM5IDAyNjNhOTlkMGViMjg4OGRjOWE5N2NjZDhmYTNlM2I4MTE5OWQ1ZmIgbGVnYWN5LXRydW5rCisxNTU0MCAwNTcwZGU5YzgyMDJkNWJlMDYzY2VmZDE4ZmYwMDYwOTVhYmY3YmEyIGxlZ2FjeS10cnVuaworMTU1NDEgOTMzNWRhYTlkZGQzYjAzODYyNjE0YjIxZTNkZjFmYzFhMGExYWFlMSBsZWdhY3ktdHJ1bmsKKzE1NTQyIDkzNmVmZGMwMWQ1MjQ2OTBmZTIxODhiMjkxMTNhZmU4MWU2MWUzZDMgbGVnYWN5LXRydW5rCisxNTU0MyA3NzFiM2UxYTc3MWM4Zjg3NzQzNDA1Nzg3ODFhMjIxYzE2Y2M1ODQxIGxlZ2FjeS10cnVuaworMTU1NDQgYjkxYjM1YzFkNGMwMDhlZDhiOTlmOWE5YzA3MTllYjkwZTViNjYwMSBsZWdhY3ktdHJ1bmsKKzE1NTQ1IDUzOThiMThmODMxOWQxZTQ0ZmU1NDI2YTZkZGI3MzFhY2JjNWVmMjggbGVnYWN5LXRydW5rCisxNTU0NiBmNmU3MzBmNjViY2U2MmViZjk1YzgyYTU3YTk5MmJlNmRiMDBlMjdlIGxlZ2FjeS10cnVuaworMTU1NDcgZjc2OGQ0ZGFkOWE2MmEzN2VkYzBmYzc4ODc4NGQ3MjY4OTEwMDRjZSBsZWdhY3ktdHJ1bmsKKzE1NTQ4IDZmN2RmOTg1YTgwYzQ3ZDYwYTNiYjUzYWVlODk5N2JhOGMxOWFmODkgbGVnYWN5LXRydW5rCisxNTU0OSA4MDA0ZDI5Yzc3YjhiZDI5NjI5ZTA3Yzc4YzRjMjMxMTNlMmEwNDdhIGxlZ2FjeS10cnVuaworMTU1NTAgZjBkMDM2ODljMWFlMDA0ZmY3ZWMxNjI5ODNhNGNmOWZhMDA0ODE2MyBsZWdhY3ktdHJ1bmsKKzE1NTUxIGY4YzFjNWI3ZGM5ZjRiOTczNzA0NmNiODc0NjkzYWVlYjdhYWYyMTMgbGVnYWN5LXRydW5rCisxNTU1MiA5MzdmOTg1OWM5ZGUxYjY5Njg4YzQ0ZjZhOTVmNmU2N2NiOTVjOWM1IGxlZ2FjeS10cnVuaworMTU1NTMgNWNlNDJlMDdhZmQ4NWFlOWNmNzhkODQ3NTQ1NDQxODIyMWY0MDA3NiBsZWdhY3ktdHJ1bmsKKzE1NTU0IDUzOTc0NDUxZTMxZjExNjY4ODI4ZGU5NmFjODAyM2MzYjBiZTQ4ZTkgbGVnYWN5LXRydW5rCisxNTU1NSAwNzQ4MTlhZmRjOTVhYjFkMTYzMjQzMGY3NzMyODYzMDE1ZjI1MTI2IGxlZ2FjeS10cnVuaworMTU1NTYgZWUxMTkwNTFkZjc3ZjQxNWRhZWI1YjkxMTE4OTZkZDIyZjgyYjQ3MSBsZWdhY3ktdHJ1bmsKKzE1NTU3IDVjMGVkYjM1MWMwNzI3OTE4ODU0MGM0ODhlNGQ5MDRhZTQ5ZjYzNDIgbGVnYWN5LXRydW5rCisxNTU1OCAwOWY3MGY5MWJkYWUyZThmNWFjOWFlMWIyYWQ3NmRiNDBiZDFmMGY3IGxlZ2FjeS10cnVuaworMTU1NTkgODhkMGIzMzgzZmUyNTU2NDM5ZWUzMDY1MGYzNzZhNGMxMGRmODE4YSBsZWdhY3ktdHJ1bmsKKzE1NTYwIGQ4MWM5NWRkNDAzOWRkYThmNWFkNjk2NTMxZmJjYWIwNjljMzdjMjcgbGVnYWN5LXRydW5rCisxNTU2MSAzYWFiMGM1MTkwMDkwYWY2OTYxNWFkOGNlMzE0NDQxNGU2ZjAxNTFhIGxlZ2FjeS10cnVuaworMTU1NjIgZWVmMmI5MThkMDdhYzg2OTI0ZGIwYWU1MDJjYmI4YTFhODYxYWRlOCBsZWdhY3ktdHJ1bmsKKzE1NTYzIDMzZGRjMTJkZjI2N2Q4NGQxMDgzMTIyZmQ3YzBiODExY2RlNTA4ZjcgbGVnYWN5LXRydW5rCisxNTU2NCBmNmQ3ZTMyODY2MDkyNjExZDQ0M2E2MmM5NzkwYTM3Njc4NDdkMzYxIGxlZ2FjeS10cnVuaworMTU1NjUgM2JlOTJjZWYxOTE3NDQ5OTZmYjAwYmY3NmZjOTgzZjVmMmUyNDYyZSBsZWdhY3ktdHJ1bmsKKzE1NTY2IGUzNmJlN2ZiNzZjY2M3ZmJhZjg0MDJjNDY0NjJmZjFlMzJmOGY4MDQgbGVnYWN5LXRydW5rCisxNTU2NyA1ODNkZWY4Y2VkZjQzMTBkYzFkMTVlNmNlYzdhMWJlOTRmNTI2YmMzIGxlZ2FjeS10cnVuaworMTU1NjggYmNlNTNiMTQ3MjFlOTE5YmM5NTIxZWZjMzc4NTgzMjAyMDU5NzBhNyBsZWdhY3ktdHJ1bmsKKzE1NTY5IGJjMWZlOTU2MjM5OTgzZjIyZWQzNmZhM2RiYTZjNmZkMDdkMDRjMWUgbGVnYWN5LXRydW5rCisxNTU3MCAyNThlZWQ0NTcwY2U4OTBjMTBmNzM0N2Q1ZTA2YTljZDczYjlhZDk3IGxlZ2FjeS10cnVuaworMTU1NzEgNzExYjMyOTYwOTM0N2Q1ZDI3MDY4MWY5NTQzYmI2MzgyMjZlNWIxYSBsZWdhY3ktdHJ1bmsKKzE1NTcyIGIxMmFkYTJlYjMxMmIwNmQwMzllMTQwNzEzMjEzOTczY2M1ZGZlYzAgbGVnYWN5LXRydW5rCisxNTU3MyAwYzIxN2U1ZjA1NWI3NmU0OTBiMTgyM2U0NjEzYTA2YzRkMzdkODNmIGxlZ2FjeS10cnVuaworMTU1NzQgZjFmOWMzMGE0MTU2OTU3NDhiOGQ5YjU0MDQzNzE1OTI1MzFmZDAxZSBsZWdhY3ktdHJ1bmsKKzE1NTc1IGIxYjI2MGEyZGU5ODdlODc4NTM5ODE3NzZhM2RkZGQyODZhZjBiM2UgbGVnYWN5LXRydW5rCisxNTU3NiBmZjBmNzI4MWJmYjg0YmMyNjQ0NDQ4ZjgyYjgwNGZjMjUwN2MxMTcyIGxlZ2FjeS10cnVuaworMTU1NzcgNDI3MmIzNjhiZjY5ZjZjZWFhM2ZlN2Y5YmIxOGJiNWM4NTU2YmViYiBsZWdhY3ktdHJ1bmsKKzE1NTc4IDVmMWY4ZGRjMmEwY2RlNDlhODdlOTM3OGVkMjUxOTkyMzI5MWE3YjMgbGVnYWN5LXRydW5rCisxNTU3OSA2NjY3ODIzMjZkNDJjMGRiMzViMDEzMTJhZTYyYjkwNmQyZTVjODI4IGxlZ2FjeS10cnVuaworMTU1ODAgYTI0ZDlhZDY3ODZkNjYzOTI2NjFhYTI1NmQ2YzU4YWE0ODQ0MjZiZiBsZWdhY3ktdHJ1bmsKKzE1NTgxIDM1ZWE1ZGUxZWU4M2FiNWY1Njc5YzIxNzIwNTBkNThmNGY4YTRlNGUgbGVnYWN5LXRydW5rCisxNTU4MiBmMmRiNjA5NDNkNmI4MzFiOTQyZmYwNTRkZjc2NjAxMzViMjlhMDEwIGxlZ2FjeS10cnVuaworMTU1ODMgNzIzZGYwYzgwMWQxZGM0YTVhNWY3NWY0ZWRlMmFkZTE2YjZkOGE1ZiBsZWdhY3ktdHJ1bmsKKzE1NTg0IDJjN2E0N2M2NGUzMDZlNmNhYTJmZDgyNWM4ZDQwMTBlNTJlN2RjZmMgbGVnYWN5LXRydW5rCisxNTU4NSBiNTMxOWY0MjI1OTEzZjA0MDE2NzU5YzFmMDJlZDNhNWI3ODM2NjQ4IGxlZ2FjeS10cnVuaworMTU1ODYgYzkyOThlYzYzN2M1YTYxMmQ3NDlkMjk5NzlmODYxOTE4MjU0MjczNSBsZWdhY3ktdHJ1bmsKKzE1NTg3IDdkMmEwMDYzZTI2ZGZmZWJlMmQyNTNhMDIyNzllYWEwMDIwOWFkNDEgbGVnYWN5LXRydW5rCisxNTU4OCAwNDc3NGQ2MjJlYTJkZTIxOWJlOWE4NWMyOTE5NTQ5MmVhNDUzZDVlIGxlZ2FjeS10cnVuaworMTU1ODkgNjJhZDM1NzA4YjhjNmY3NzAyMmM5ZDRjZmQ4ZGU2NTAxY2M1YmFmMyBsZWdhY3ktdHJ1bmsKKzE1NTkwIGFmMzhhN2E3YWYxMGI3NmMzYWE4NzVkMzAyYTNkOTI0YWZlOGE4YTYgbGVnYWN5LXRydW5rCisxNTU5MSAyZjYwNjg2N2FiNGU3YjA2MTc5ZGUzMDQ5ZTYxM2M1OTI1N2JkOWJhIGxlZ2FjeS10cnVuaworMTU1OTIgMWY1MzEyMDhiZTExNzNiN2RlMDNiMDQ2MmVlNTc4MTM4OWQxN2EyMCBsZWdhY3ktdHJ1bmsKKzE1NTkzIGI5MGQ2MDFkNGQ1OTNhODJmNDg3YWM4YmU1MDAxMjkzMjQ0YjhjMDcgbGVnYWN5LXRydW5rCisxNTU5NCA0MWMwYzYwZGNhZjVmNTI5NmE2MzVjY2Q1YTM4MDkwNjY2NDIzYmI5IGxlZ2FjeS10cnVuaworMTU1OTUgYzJhMGYyYTgxZmE4YTliNWE5Y2UyMzVkZTk3NTEzYTA2MzNiZGExNyBsZWdhY3ktdHJ1bmsKKzE1NTk2IGJjMzU2NDdmZTQ3MjljMWIzNTY1ZmE1MDg2OGQzZDhlOWRjYjMxYmQgbGVnYWN5LXRydW5rCisxNTU5NyAzZmUzMDQwNTA0MzRlM2EwMDY2ZDc5OWQyNWNhMGM5NDhhNjc2ZmJjIGxlZ2FjeS10cnVuaworMTU1OTggNGU5ZWI4NjZhYWM2YTU4MzVkNzFkZWJhY2NmMjU1NzRiODc3NjgzMCBsZWdhY3ktdHJ1bmsKKzE1NTk5IDE2MTU1OTg5ZmE5MzJhNjIxODFkYTUwYjkxZGRiOGQwZWU5MDg1YmQgbGVnYWN5LXRydW5rCisxNTYwMCBiNGJhMzJiYjc1OGJlYzNjODhkMDg4OGRkNDRkZGJiMzcyOGM3MjFkIGxlZ2FjeS10cnVuaworMTU2MDEgMzkxMmZiNmM2M2Y2MTMzZGJmYjQ2YWNlNTZiYWM2ZjVjNWI4OWE3OCBsZWdhY3ktdHJ1bmsKKzE1NjAyIDY0NWQ1N2VmMTYzOTU2NzNjZjY3ZTFiNThhZDI2OGQ4MDUyZWY2NWMgbGVnYWN5LXRydW5rCisxNTYwMyA0ZTlmNzcyNGFjNTU5NTAyYzU0MDcwMTA4M2IyMDllZGIzNjUwYmM3IGxlZ2FjeS10cnVuaworMTU2MDQgMDQwYzEwOTdjZDM1MjQ0ZTk5ZmU2ODhjNGY0Mjg5M2JkOWY1ODlkMSBsZWdhY3ktdHJ1bmsKKzE1NjA1IGFmZDdjYmUxYzQ5MmY2MzU2ZjlhN2QyNWE1ZjA1YTVmMTU4ZGRkMzQgbGVnYWN5LXRydW5rCisxNTYwNiAyMjlmZDNhNWFmYTA4MWQ0YTI0ZjdhYTU4N2I3NzhlMDI3NzBmOGFkIGxlZ2FjeS10cnVuaworMTU2MDcgYjU4YjkwMzNjNjVhNDJlYzAyNzI2NDc0N2EwNWQyMDVlM2YzNjg2YyBsZWdhY3ktdHJ1bmsKKzE1NjA4IDQ5MTZkNDBkOTY3NzZhOWM4NDRjODAzZjlhMWIzZWVkY2FiNzcwOWEgbGVnYWN5LXRydW5rCisxNTYwOSAwNTdhZDg4YWFlOWE2MzU5NzNjODgyZmE1YjgxYzgxZmU5NTQ0OTRmIGxlZ2FjeS10cnVuaworMTU2MTAgNTk0YzI3Yzg3MGFkZWRmZWRmZTYzYzYyMGMyNjM0NzNkOTgwMWEyNCBsZWdhY3ktdHJ1bmsKKzE1NjExIGE5MmFkYjc4MGY0M2Q5MmU0NTNjNGMzMWQ1NDRjYjNkYjI4YTBjODMgbGVnYWN5LXRydW5rCisxNTYxMiBlNzg3ZjY2NDFhZmI4YzkwYjk4MGY3YTU1N2FmNjkzYjZlNGNiODkxIGxlZ2FjeS10cnVuaworMTU2MTMgMjg5MDllODBmMzZjZjU4ZDZjNzQ2YWY1YjQ0ZDdjZDk1YTg3NTc3ZiBsZWdhY3ktdHJ1bmsKKzE1NjE0IDIxNTUzYmQyZTg3NWYyY2Q2YzNjNzFiZWFkYTlhNjMzMGNiZTc4NjYgbGVnYWN5LXRydW5rCisxNTYxNSA2M2QzOTM1OGRiMDkzNDJlMDdiZjEzNDdhZjkyMGU2Mzg3N2UxODY2IGxlZ2FjeS10cnVuaworMTU2MTYgMGZlMDIxNmY2YzRlNGExM2ViMDRlNDYyODQ3MTE0OTZiMjY4MjRmMSBsZWdhY3ktdHJ1bmsKKzE1NjE3IDBjODg0YzhkMWU3NWNkYTA0N2Y3NWE2YjdhMDk4Y2ZhNWFkODc3YjIgbGVnYWN5LXRydW5rCisxNTYxOCA2YWUwNDZkNGNkMDQyMDNlYTJkNWIwMDhiMGExYjFmODAwZTc3MDc4IGxlZ2FjeS10cnVuaworMTU2MTkgMTRiMWI1ZGI2Y2IyZGViYmUwZGJhZTEzYjFmMmNiNjA2NTBhYzRkNCBsZWdhY3ktdHJ1bmsKKzE1NjIwIDM3OTc5N2YzZWViMjA2MDQ0NTUwNzc0ZWI0ZGVlZjBhZjJhOTgwOWIgbGVnYWN5LXRydW5rCisxNTYyMSA0MzIzZDQ4NTUwNDdiOGM3MjRiNTRkOTI3ZDIwMjhmMzRmNmY4NGY4IGxlZ2FjeS10cnVuaworMTU2MjIgMzk3MWU2YjE0YTA5NzQ5N2Q1MWIwYmRkMzlkZWY2MGQ2ZTBhOTQyYSBsZWdhY3ktdHJ1bmsKKzE1NjIzIGFmMGRlZjA2MzY1ODAzNmNlYWE4MWNjZjUwNjg4ZTlmMjU3NmFhMDMgbGVnYWN5LXRydW5rCisxNTYyNCBjMGZkODhmMmE2NWE5MTY0YWM4MjllNmI5YzRmMWE2NGE0ZTA4ZTgyIGxlZ2FjeS10cnVuaworMTU2MjUgMzFkMDk4OGRhOGE5NzMxNGY2MjZmMGVlMTlmYzBkMjYzYmM1MzlmYyBsZWdhY3ktdHJ1bmsKKzE1NjI2IGU1NDVhMGM0NGZlMTVjYjJmMmUzMGY1MWRjYjAzYWNlZjE3OTRkY2YgbGVnYWN5LXRydW5rCisxNTYyNyA1NDhjYzEwZGY5ZWJhYzgwOGU1YjY0MDU4YjAxY2E3YWQxMjNlMTQ3IGxlZ2FjeS10cnVuaworMTU2MjggZTA0NjQ5YzNjZWQwM2RiMjEzOTA2OGY4YzFiMjAxMjk2OGIxNTQxOSBsZWdhY3ktdHJ1bmsKKzE1NjI5IGY0YjQ4N2UzNTIxNDBjZTQxYmNjODFkMjg2MjQxN2NhYTgxYzRhZDQgbGVnYWN5LXRydW5rCisxNTYzMCA4ODg3Mjc5MTk5OGEwZGExOTYwODAzMTdjM2RkZWNiMGIxZWI2MThkIGxlZ2FjeS10cnVuaworMTU2MzEgNTI3ZjdlM2JiNzZkN2VhODRlZWZiM2M2Y2VjODE5ZGEyY2Q3MTg3OSBsZWdhY3ktdHJ1bmsKKzE1NjMyIGRkYTFjYTUzZWE4YTI2MThlOTZjZjJjMWU3NDdkYjBiMzE2YTUxMmMgbGVnYWN5LXRydW5rCisxNTYzMyBlMDI0ZWQyZGI2MjViOGUzZThkNmY1Njk5Yjc3YjJkNWMzMTJmYmZkIGxlZ2FjeS10cnVuaworMTU2MzQgZWZjNmQ3Nzg5ZDllNmY3MzM5Y2MyMmFkNDdlMDM1NWQzNmE5ZGQwNCBsZWdhY3ktdHJ1bmsKKzE1NjM1IGQ5OGE3NTU3MzI2YTRkODBlYzkwNWI2NDZhZmNkZGU1YWM5MzU0MzUgbGVnYWN5LXRydW5rCisxNTYzNiBhOGNlMTljMzJkYjlhN2NmN2FhYzIzNzlmYzQ1M2NlN2MwNTdmYjgwIGxlZ2FjeS10cnVuaworMTU2MzcgMjQzNTkzZjExZmNmNjhlNjc1ZmJhM2E5M2ZhMTM1Zjg5MjY2MjEwOCBsZWdhY3ktdHJ1bmsKKzE1NjM4IDc4MjMxYmJlNjA1ZGMyZWE3Y2ZhODNhYjU1NTVlYmY1NmI5YmEwODEgbGVnYWN5LXRydW5rCisxNTYzOSA2ZDc5MTQ4ODVkNjNmMWMzOWFmNzk2MTAyZjE4MmM2NDUwODhkMDk2IGxlZ2FjeS10cnVuaworMTU2NDAgMzAxZmYxNGIyYTBlYTYxZmJjMGVjYjkyMWU4ZjU0M2VmMzFlNTQ1MyBsZWdhY3ktdHJ1bmsKKzE1NjQxIDI2ZTIwYTI4ZDA1MWM2Y2VkNGI3NGNhMDdiYWU4NjFjY2ZhMjgzODcgbGVnYWN5LXRydW5rCisxNTY0MiA2ODg5ZGUyOWM1NTg0YjI4ZWE5ZjMwNjBmMTBiMGY5YTYwYTJiZWQyIGxlZ2FjeS10cnVuaworMTU2NDMgMTFlNWJmOGViNDczNjlhZjBkNWViYzMzMDg0OTk5YzBkNjFiNjM2ZSBsZWdhY3ktdHJ1bmsKKzE1NjQ0IDdiYWJmOTFiNmQ3NWM2NjUwMmE1N2UzMGQ3ZThjMmVjOTI2YzA3YWIgbGVnYWN5LXRydW5rCisxNTY0NSAwOTJiYWY2OWQ2YWY4N2Q2MGNiYjM1ZTdhZGQwMDAzYmVkNWJmYTZlIGxlZ2FjeS10cnVuaworMTU2NDYgNWEwZDE1NmM0MjBhYzcxM2IwMTI1ZTExYzRhODk2ZmMyNmNkOTQzYSBsZWdhY3ktdHJ1bmsKKzE1NjQ3IDFhZTAzNWEzMWNiNDgzNWQwMWU5MzI1NjRhNjM4NDMyNDkwY2U0ZWMgbGVnYWN5LXRydW5rCisxNTY0OCAxMWQxMGU5YjUwOGQ4MGIwYTQ4NGNmMDlkYWM1M2NhYzgwMWU5YTFmIGxlZ2FjeS10cnVuaworMTU2NDkgYjU3NTJkZTBjZmE0NjczNTRkMTFmNTI0MzQ2MGE3MDM3ZmM1ZjcyZSBsZWdhY3ktdHJ1bmsKKzE1NjUwIGY1NGMzNjc3YmFlN2Q4NjFhY2I4N2QwM2NjYjEzZTU0YjMzOGNlYWEgbGVnYWN5LXRydW5rCisxNTY1MSAxN2YzNWY2NmVjZDhiYzk1NGY3MTA5N2RkMTU2NTI1YzI0ZDMwZDMyIGxlZ2FjeS10cnVuaworMTU2NTIgMGM4YjlmOTZiMjZhYzczMGJhN2NjMTAzYmYzNzQwNTA4MzBmNWVmYiBsZWdhY3ktdHJ1bmsKKzE1NjUzIDBjMmNkZDdjZjdkYzZjNjI3MmViMDllNDNlODY5ZmMzYmNkZjI3NzMgbGVnYWN5LXRydW5rCisxNTY1NCBmZDU4ODFlMTc0MjdiM2Y2YmMyNTRjMTYyMzE2YzVlZGUwNDFmMTY3IGxlZ2FjeS10cnVuaworMTU2NTUgNjFmNmFjYzRhYTc0OGRkNDBlOGMzODE4YzcyYzcxMWQxNDAxMDgyMiBsZWdhY3ktdHJ1bmsKKzE1NjU2IGYwYThmMTI3MzQ1NjRiYzJiNmIxOTQ5OWQ4ODA0YzljM2MwYTY1MmQgbGVnYWN5LXRydW5rCisxNTY1NyBhZGVmOTdmM2ZlYTBmNTQwN2RlMjUyMWFlN2EzODY3MmY1OGM3OGU4IGxlZ2FjeS10cnVuaworMTU2NTggZTQ3YjFhMGQ2NDg0Nzk3NzExMWQ4Y2UwY2NkYTc1ZDQ5YzEzOTU0YiBsZWdhY3ktdHJ1bmsKKzE1NjU5IGYzMWRjZDFhZDhjNDExODc5YjY3OWIyMWQ1YjFlZDE0YjJiM2FhNmUgbGVnYWN5LXRydW5rCisxNTY2MCA5ZGY5MWY5MWU1Y2M5YTQ0MjQwMGJiNzQ5NzEwZWQ1M2I5NDQ0MzllIGxlZ2FjeS10cnVuaworMTU2NjEgZjgyYjE1N2Y0NWUyOWMxMDZiNjU2ZTFkZmMyMGFhOTExNjQ5ZGI3NSBsZWdhY3ktdHJ1bmsKKzE1NjYyIGVmZjI0MTA2ODVjYzQ2MGY3NTE4OWI0ZDY4M2YwNDIwOWVhMjMzZDMgbGVnYWN5LXRydW5rCisxNTY2MyA5OGViMzA1OWFlNzYwYmNkZjE5ZGU2ZDgzMzVjYWNiYjA5NDQwNmFiIGxlZ2FjeS10cnVuaworMTU2NjQgOWVlMWU1OTQ1NzFkNzE1NWQ4ZTVlMzY5NmM1ZTcxODU0YTEwMTcyOSBsZWdhY3ktdHJ1bmsKKzE1NjY1IDc1MmFhOGRmZjUyMGI5NGVkYzUxNjlmNjRhOGZmZDc3MGIzYjU2MmYgbGVnYWN5LXRydW5rCisxNTY2NiAyNTQzMTk3MjI5NGI0ZjM3Y2Q2N2M2ODA0NTlkMjZjMDY3YjAyNGNhIGxlZ2FjeS10cnVuaworMTU2NjcgZjY5MTAyYzFmNDEzZjFjNjZhNGUzN2Q5MDAwMjA3ZmNmZjVhYmFiZCBsZWdhY3ktdHJ1bmsKKzE1NjY4IGRkZTdlOTFmMmYyZTVjMzE2ZDhkNDBiYmI5NzkxYTNiN2NjZjQ4OTcgbGVnYWN5LXRydW5rCisxNTY2OSAxZTc4NGI4NzkwMzkwZTMzNjYwY2JlOWIyYWY0ODBkYzJlN2JhOTk3IGxlZ2FjeS10cnVuaworMTU2NzAgYmUzNmYxMDNhOTUzOWMzZGRkZGRiZjU1OWY3OTBhZTM3NjBkYzMxYyBsZWdhY3ktdHJ1bmsKKzE1NjcxIDUxMzk4ZjcxZDMwMTIyNzg0MzY0NDJmZDRlZWUxODU5MTI1MDA1MzkgbGVnYWN5LXRydW5rCisxNTY3MiAzY2VlMGQ3NTE5MWUyMzFjMDM2ZmJkZTkyOWZiMGYyMmU4NWZiOGI0IGxlZ2FjeS10cnVuaworMTU2NzMgMzQ0NTJiODgzYTcxZDVmNzBiOGQ4MTYxODY1NjBkZTFhYWMzYzQyYSBsZWdhY3ktdHJ1bmsKKzE1Njc0IGU1YWFjOWRmYWNmODcxNWJkOTJkMmI0ZmRkNzJiZjIyYWQzYTU5MjEgbGVnYWN5LXRydW5rCisxNTY3NSBjOGUxMzUzNWZkYzMxOWFiMjA3MTdhNzViZDM0YjdmNTM4ZjAyZGM1IGxlZ2FjeS10cnVuaworMTU2NzYgNTdlMjk0NTQzNWM5MDA0OWU2NGY2MDgxMTJlN2FmMTE5ZDMyNzNmMSBsZWdhY3ktdHJ1bmsKKzE1Njc3IDAwZjVkMGRmNzBhZDgwZTFkOGU3YmJkZGQ0ODJlMDg2OTIyMzdmNzQgbGVnYWN5LXRydW5rCisxNTY3OCAyYTJjYWFlZTY3OTczYThkYmUxMTlmMmJmOTFmY2RjZGE5NmMzNGFkIGxlZ2FjeS10cnVuaworMTU2NzkgOGEyM2FiMDU3YWY2MTc2Y2UyYmUzN2Q0ODUyYjFkNDc4ZWVmZjYzNSBsZWdhY3ktdHJ1bmsKKzE1NjgwIDMxYzcyNWQ3MGU2NTIxMmQzYjE4NzUzNTM4MWRjNDk3OWM3OWFiOWUgbGVnYWN5LXRydW5rCisxNTY4MSBkZWFmMjVkZjE1ZmUyN2U2NGNiNjUxZGNmMGQwZDUyMzFhMGM1MjVkIGxlZ2FjeS10cnVuaworMTU2ODIgMTJkMGM0NjViMTAzY2ZlOTQwODlkZmMwY2NjZjFhNWJlOWQ4MmY2YSBsZWdhY3ktdHJ1bmsKKzE1NjgzIGE4YWZlZmM0ZmNlZDk5NDdiNmU3OTYwNDUwMDJkZmI3MGM1NGQ1ZWEgbGVnYWN5LXRydW5rCisxNTY4NCAxY2FhZGZiOGNhNzEwYmQ5MWQ4MTQ2ZWNlMjlhNDYzOGE2OGU1M2NkIGxlZ2FjeS10cnVuaworMTU2ODUgMmQwYjk5Nzc4ZWRmMWJhNmNhYmU4NGNlMDU1OTRkN2U2ZGI3NzRlZSBsZWdhY3ktdHJ1bmsKKzE1Njg2IDEyOGU3Yjk5NDUwNTljNjAwYjVhNmNhZTFlNGIwNTFmZTRmOTU0YmEgbGVnYWN5LXRydW5rCisxNTY4NyBkZjY4NjliZWJlMDNjNTdjMzE0OTUwNWYwNmMyZDljOTVmMjczYWYxIGxlZ2FjeS10cnVuaworMTU2ODggMTVkZjNmYTBmZDRkN2RhOGUyMjhmYzBhMTAzN2QwMDY0NDg0Y2QxMSBsZWdhY3ktdHJ1bmsKKzE1Njg5IDU5ZTQ5NGMwODAyZmM5MjU2YTY1YWU2ZDQ2NWY2OTIyNDgwMGNiZGMgbGVnYWN5LXRydW5rCisxNTY5MCAyZWVmNjM2YmExYjYyZjZlMTAwYzYyYzE4MzIyNGFiYjA1MmQ4YWFlIGxlZ2FjeS10cnVuaworMTU2OTEgNjYxODMyNTU3NGNiOTUzZWYyN2U0ZmYxNTM0ZDM2NTQ1NGUyOGRkZSBsZWdhY3ktdHJ1bmsKKzE1NjkyIDBhYTNmODBkYmIyM2FlNTZkNDAyNzc3ZmVhNDgzYmNiZThmYWIzNjUgbGVnYWN5LXRydW5rCisxNTY5MyAxZmE3YzExOWI3YTU2ZjIwYTk4OGQ1YmFjYjhlYmI4NWEzZGRkMjQxIGxlZ2FjeS10cnVuaworMTU2OTQgYjY2MGVjYmVhZWI4ZTMyYWQ4NDM4ZWY2MGMyOGM4ZjY4OTc4NWYwOSBsZWdhY3ktdHJ1bmsKKzE1Njk1IDc1M2Y5MTYzZGYwYmIzZjM3OTMxOTViMmE5Y2E1YmZkODY2YTUzYmEgbGVnYWN5LXRydW5rCisxNTY5NiBhOTgwMDlhNDM5MWU3ODc5MTZmMDZhOGZmMDBmOWJlMGJiMjczNTQ3IGxlZ2FjeS10cnVuaworMTU2OTcgMzQyN2IwZjg1YTdjZTcxYmFiOWNkMmExNjYzYzVhOTcwNDE0NWE3MiBsZWdhY3ktdHJ1bmsKKzE1Njk4IGFiYmNlYjZhMjUzMjRiNWI0NGM1MWJmZDYxYTc1NWVlNzFiNmZkYTEgbGVnYWN5LXRydW5rCisxNTY5OSA3YWI1YjFlZWViZGU5MjgzOTM0ZmE5YmE2NWY0YzgyM2YyYjliOTdkIGxlZ2FjeS10cnVuaworMTU3MDAgODgwMDRmMjVkYzI1YWJiZGIzNTA3Y2UwZjQwZGYxZDY1NjY4MzZiMiBsZWdhY3ktdHJ1bmsKKzE1NzAxIDNmN2EzNTc5OGFjZWExMDliNGU1ZTg0MzcwN2RiZmUxMjVjNGM0YTcgbGVnYWN5LXRydW5rCisxNTcwMiA4Yzk1NTRlZGJlYmJiNDhmNDZkZTY5MTU5M2EyNDIwYjRjNjcwMWQ5IGxlZ2FjeS10cnVuaworMTU3MDMgYTg1MzBkMzYwMjFjNmM4MWU1OTk2NjcyZDcxY2U1NDFkNmVjYmM3MyBsZWdhY3ktdHJ1bmsKKzE1NzA0IDQyOWRkMDIyNzJkNjgwNzkyNmIxYTIzZDJmNzFmZjY3NTdiZGFmOGUgbGVnYWN5LXRydW5rCisxNTcwNSBiMWVjNDliMmM1YzJhOTAzYjNiOTNkZjE3MmMzMzkzYTgyYjQyMzdkIGxlZ2FjeS10cnVuaworMTU3MDYgNWQyZmI2NzQwOGE3Y2M2MzI0Yjg5ZDIxMTY5YWQwNTVlOWYwNzI4NyBsZWdhY3ktdHJ1bmsKKzE1NzA3IDc1NWM5YWM5ZTZhZWJiNWYxNDY4MTMxNzZiNWI4ZmI4NzE5ODg4M2IgbGVnYWN5LXRydW5rCisxNTcwOCA2YjJlY2QxNzIyMDNiNGExMTc3MmNlNWFjOTg2MjI2OWVhOTIzYmI5IGxlZ2FjeS10cnVuaworMTU3MDkgYWNiMDI2MWI2OTQyZjNiZTdiMGJhMzc0ZWRiMWYwMzhiYjkyMzA1OSBsZWdhY3ktdHJ1bmsKKzE1NzEwIDJhNjRmMjI1YTEwNTMxYzI0Yjc1ODI5OWQ5Y2JmMmNlOGQwMDBiNTUgbGVnYWN5LXRydW5rCisxNTcxMSA4OTRlZmVhNzFhY2ZlZTI1ZDcwYmQ0YmU2MWVmMjhiZWM5MGRmY2QxIGxlZ2FjeS10cnVuaworMTU3MTIgN2YwMjJlMjYwYTRkOTMzNzcwOTBhZjM0YTI0MjFmYjA3YTc4ZDVjYyBsZWdhY3ktdHJ1bmsKKzE1NzEzIDUxOTQ5ZGU3NjM2NWIxYjU0MGM5NzQ4YWFiM2YzNGJiNGI5ZjU3YjMgbGVnYWN5LXRydW5rCisxNTcxNCBhM2UxMjg4MWNjM2MyM2UzNzNkMGE4ZTczY2NlZjZjMWM0OThlNTE4IGxlZ2FjeS10cnVuaworMTU3MTUgNDMwOTg1ZDU3ZGEzMTZmNWQzNGM5MWI2MjAyZDEzOWIxZTlkOGI2ZCBsZWdhY3ktdHJ1bmsKKzE1NzE2IGNhYWU3NTAxZGJhNTU2ODUxNTRiOWY4MmUxOWJkNDIyODMzMjI0YTQgbGVnYWN5LXRydW5rCisxNTcxNyBkYzBhMjEyZmIzNTM5MGZkYmRiOTA5YjI3NTY4M2ZiODExNzkwNjQzIGxlZ2FjeS10cnVuaworMTU3MTggOTdkZDZkYzMzNTAzNjdmNGU2MWQ0M2VkOTUxYTdlMTY0NDZmN2Y4ZSBsZWdhY3ktdHJ1bmsKKzE1NzE5IDNjNjY0MWM4MTBkYmEyYjU3NTY0YzljZDBkOGNhOGU2OWY1YmRjZTQgbGVnYWN5LXRydW5rCisxNTcyMCAyNTEzY2Q3NDE0N2M3Mzg5NDFiYjU3NmQ5MDEzNDE4YjI0MDgwMmExIGxlZ2FjeS10cnVuaworMTU3MjEgNDVhYWE3NWYwOGEzNzgwMmZjZDAyODc2NGFhMjg0YTRlZjE2Njg1NiBsZWdhY3ktdHJ1bmsKKzE1NzIyIGViOTExZWNhOWVlOWU4MTljMDAwMjk1MzVjMzE5MDQyNjQzMTM2MjcgbGVnYWN5LXRydW5rCisxNTcyMyBiYWMwNDViODUyNjNmMzU5ZjRkZTYxNDEwNGI1NTVlMzU0YWYxN2Q4IGxlZ2FjeS10cnVuaworMTU3MjQgYWNlMTM3MDFmMzM0ZDg3YmQ5OTI0NjkwYmViYmYzYzU1ZjgzMDAxMyBsZWdhY3ktdHJ1bmsKKzE1NzI1IDkzNjYxZDBlYjVjYzUxZGNhNTY1NTY3YWE0YTFmOTRiMzc1MjE4YTUgbGVnYWN5LXRydW5rCisxNTcyNiAwNGM4OWQ3N2RmZGJmN2Q1NWZkZDU2ZjAyMDQzMDAzNjk1OWI0ZTVmIGxlZ2FjeS10cnVuaworMTU3MjcgNDQ3ZWZiNjRjNzJkZGNiM2FkNTEwOGY1ZDc5NTA3MzUyNTIzNjlhNiBsZWdhY3ktdHJ1bmsKKzE1NzI4IGQxMTVhOTFjYTVmYTdmM2NmYzllNDRlMDQxYmQ4NzQ2N2E0ZTdiYzUgbGVnYWN5LXRydW5rCisxNTcyOSBmMzFmZmIzN2Q3MmNmNzMzNjQ4YmYwYzMwMzE0ZGJhYzE2NTM1ZWNhIGxlZ2FjeS10cnVuaworMTU3MzAgZTZiNDA3YmE0NzE1M2VjYjZmNDllN2M3ZTcxNzNhNzMxNDVhM2ZhMyBsZWdhY3ktdHJ1bmsKKzE1NzMxIDYzNDM2NzE5ZDEyZTAyYmQ5M2QwZGExOGYyY2E5ZDY2OGUwMTkzYzggbGVnYWN5LXRydW5rCisxNTczMiBiYzBkNDk2ODBhYTNkZjZhYWM4YjRkMDQwMTkwMWUyZGNjMTY5OTJlIGxlZ2FjeS10cnVuaworMTU3MzMgZmM3N2UzNGVmMjc0M2Y4Mjk1N2JkYjAyMjcyMmMxZWZiZjM2MDZkZSBsZWdhY3ktdHJ1bmsKKzE1NzM0IDBiNDIyNjRhYzAyMTU0NGJhZjZlNDg5NzcwZDVlYTAxNjA2Y2M2YWIgbGVnYWN5LXRydW5rCisxNTczNSBlNzk5MmQwZDY4MDgyOGNjMjZkNmEwMDA3ZWYxYWU0NThjN2VkZGFiIGxlZ2FjeS10cnVuaworMTU3MzYgZGY2MjdlNjE5MTZlMjBhMTA0ZTFjOTkwZjVmNzkyMjI0OWIzMWU0ZCBsZWdhY3ktdHJ1bmsKKzE1NzM3IGY3OTNjNDdjNTEwZTEzNjczMzRiNjdlMDRjZTBhYjUwYzkxMzljYTQgbGVnYWN5LXRydW5rCisxNTczOCBkYmIxMDNlOWE1NmY1MTNkODBkZjlhZmFjM2JmYTkwMjIwMTYwNjZkIGxlZ2FjeS10cnVuaworMTU3MzkgNzdjNjUxMTMxOTg0YjJlZWIzNzcyNzIxZjJjMGUwNzU4ZGM3MzY2MyBsZWdhY3ktdHJ1bmsKKzE1NzQwIDQwMDM4MjE5MDM2NDk3YzQ0NjU5YWM5ZWIxOGUzNTI3OTM4ZTM4ZGYgbGVnYWN5LXRydW5rCisxNTc0MSBkZmE4ZDlmMWMxMjMxOGU5OGMyY2Q0MjIwMzA4ZmVmYmUxNjk3MjczIGxlZ2FjeS10cnVuaworMTU3NDIgOTU2OWM1NjI1NzY1N2UwNjFlZmZmOGQ2MTVlNWUzOGVhZDA0ZmIxYiBsZWdhY3ktdHJ1bmsKKzE1NzQzIDg5NjAyZjMzMjQ0N2I0ZWYzMmMxYjg4YTdkNjg5MzA0ZjNjZjY2YTUgbGVnYWN5LXRydW5rCisxNTc0NCBiNTQ0Mjk5ZTY4YzVmYTc0ZmE0NTdjZGFiYTE1M2QwOWU5ZDU0NWUzIGxlZ2FjeS10cnVuaworMTU3NDUgNTM2YzYzMTI5OTMyOWIyYmMyMjg1NWMwZThiOTAyY2M2MmY2ZmU4YiBsZWdhY3ktdHJ1bmsKKzE1NzQ2IDU1ZTJmYzRkMzQwZTQ4Mjk5N2U0MGYwYzNlYWUwN2IwMzJkNjU2ZjQgbGVnYWN5LXRydW5rCisxNTc0NyA1Mjc5YTZlMDBkMzY3YjAwZjU0YWY0ZTA3OWVmOWNkZTU1NGUyZmZlIGxlZ2FjeS10cnVuaworMTU3NDggNjU4YzU1YzA4MTM5Y2NmNmIzOTM4OTIxMmRkYTc3ZjAyNTMwYWRiYyBsZWdhY3ktdHJ1bmsKKzE1NzQ5IDBlYjUzMWNlMDhkMThiY2E3ZThmZmMwZTk0NGZiZWY0MmIzNTdkMWQgbGVnYWN5LXRydW5rCisxNTc1MCAyNzJkYjQ2MDViZTQ3YWZhNDZlYTJjODk1ODM3OTc3Mzk0ODFlZGU2IGxlZ2FjeS10cnVuaworMTU3NTEgZTYxNTU5NmM1YzQ3YzAwMTg0MjA3MmNlZmU2MjJlOTk2ZGI5YzRkNyBsZWdhY3ktdHJ1bmsKKzE1NzUyIDFhNDBmMDBhNDhiZjY0OWEwYmZjNjNiNWRjZjJjOWUzOTY1YmNmMzEgbGVnYWN5LXRydW5rCisxNTc1MyAzZjk5MGVmNjY2Njc5ZDdlZWJhMzZlYzZlNzg0MjliNDJmYTY0YzhhIGxlZ2FjeS10cnVuaworMTU3NTQgOGY3OWM1YjY5ZTBhZGEzYzdjMDUzNjRhYTgxYjIzMmEyOGE4ODNmMiBsZWdhY3ktdHJ1bmsKKzE1NzU1IDAxY2U4OWZjNzQ1ZmUxYWVkZTdkNjkyYWYxMTA0NjI2YmI1MzkxOGQgbGVnYWN5LXRydW5rCisxNTc1NiBjOTEwYjlkOWEwYzBlODVlMGMyMWZkMzY5OGFkNDljNGZkYWY0Zjk1IGxlZ2FjeS10cnVuaworMTU3NTcgYzc1NzE4ZmJkODYyNmU4YmVlZWM2NGM4N2FiMjQ3NDQ1ODEwODQyOSBsZWdhY3ktdHJ1bmsKKzE1NzU4IDI3ZjNhMThmZDI5NjU3YjY1ZTIwMzYyNTFlYzc3YzZlMWYyYjVhYTAgbGVnYWN5LXRydW5rCisxNTc1OSA4NmQ0OTg5NDY4NjhjZjVhNjcyMDZiMmYyZTkyZmMzOTAxZjQ2ZmVkIGxlZ2FjeS10cnVuaworMTU3NjAgNzE2MGI1MmNhNzRhMDZiMWIwMDNlNTJhNmI1MDQ2MjQ1OTBiZTg1YSBsZWdhY3ktdHJ1bmsKKzE1NzYxIGJjMTQ3ZTE4OWI3ZjliNDc5MDNlYmFiYmViNmNkYWI5NjVmYzQzYTQgbGVnYWN5LXRydW5rCisxNTc2MiA3Y2QxNTJlMTUzOWM1Y2JjNjlhODgwOTA3NmY1MjZhOTZiZDBjMjBjIGxlZ2FjeS10cnVuaworMTU3NjMgNWYzNjI2ZmU1OGNhOGVkMmExMDljY2UwNjQ0MjA5NmVjNDM1YmYyOCBsZWdhY3ktdHJ1bmsKKzE1NzY0IDU3NzA3ZGJjYzI0NWM4MTE2YmEyNWMwZGM4N2Q0N2ExNTk5Y2Q4ZDQgbGVnYWN5LXRydW5rCisxNTc2NSAzN2JhNzA1NmQ0YWJmYjZkZjBmNjUyNzcwMjdjYjg4NDMzZDM0NzAwIGxlZ2FjeS10cnVuaworMTU3NjYgODIxODFlODIwZGUzYzg4OGNjYmQ4N2NlY2FiMTQ4ODJhNGMyNjYwZiBsZWdhY3ktdHJ1bmsKKzE1NzY3IDg3MDAzODQyZmFlY2E2ZWZjMjliYWIyMzYwMjkyN2E5YzgxODE1OTYgbGVnYWN5LXRydW5rCisxNTc2OCA1ZDhlZjIyYWRjYTUxNDY4MzM3MTBjMWM0ZjM0NzkyMmVlNGQ2YmI5IGxlZ2FjeS10cnVuaworMTU3NjkgNmUxODYxZTBlZDY4NzZiYmY3MDI3ZWViOWRkOTBmOWZjMmM0ZDU5ZSBsZWdhY3ktdHJ1bmsKKzE1NzcwIDdiMzg2NzhiMzY1MjY1ZTJiYjhlODU2OGMxZTBiZTMwYTRiMjRhNzYgbGVnYWN5LXRydW5rCisxNTc3MSBmYmFjZjZkNTVkYzY5MzgzMzYwNjIxOGQxYTI5ZjgwNDg1M2FiZjYzIGxlZ2FjeS10cnVuaworMTU3NzIgMzc0MDFlYzJlOTEwYjBjYmJlZDdjODZkNDQ3ODA0OGYyN2RhYzBhZSBsZWdhY3ktdHJ1bmsKKzE1NzczIDkwNzZlZmFjODQyMGI3NjA4MDYxNWRhODYwYjQ4OTk5ZWJjYjg5ZWUgbGVnYWN5LXRydW5rCisxNTc3NCBkYWRiMGNjNWMyZDI4NWVkZWQ5ODJiYzk4ZDUxOWNiZDI0NTIxZTBkIGxlZ2FjeS10cnVuaworMTU3NzUgNGYxM2MyYjgzMjBiYzNhYTI5MDk1YTY5ZjAwMWYwN2UxOWI1YjVlZiBsZWdhY3ktdHJ1bmsKKzE1Nzc2IGFmZmUxMGMzYjkyZWNlMjMwY2JiYzEwYzBkYmU2MDNkNzRhOTkyZTIgbGVnYWN5LXRydW5rCisxNTc3NyA3YTI5MjU4YzU1ZGRhZGZmZTNmNjNmOGExNDlhOTdhOGQxNTFkYWI2IGxlZ2FjeS10cnVuaworMTU3NzggMzgzZjQwNGI3NmQ3ZmIxNjJiMjcwOWY4YjRmZWVhZWNjMjliM2QxMCBsZWdhY3ktdHJ1bmsKKzE1Nzc5IDJlMmVlMTE3ZDQwZmQ2YjE0NDExY2Q1MGQ2YTIwMDRkN2M4Y2QzNDMgbGVnYWN5LXRydW5rCisxNTc4MCA0YTNlOTg3MWI0MWJiYTBiNTVkOGUyOWE2NmJjMjI4OWJkMWNjMjdmIGxlZ2FjeS10cnVuaworMTU3ODEgMWRhYzg5YmJiY2QyMTczM2Q2ZjEzMmYyZmM1ZjFhYjM1YjA4NzA2YyBsZWdhY3ktdHJ1bmsKKzE1NzgyIDMwYTRlMTM5NTIxMTAzNWJiZmZmMGVjMWM0ZWU3ZDY2NTNhOTllN2YgbGVnYWN5LXRydW5rCisxNTc4MyA4N2VjZTEyN2NiYTJkNjllYmE5MWZiODFmZjI1NmJkZjdmYTIxYTEwIGxlZ2FjeS10cnVuaworMTU3ODQgNDEwMmY3ZWRlOGU5OTljZTEwMWFlYTc5NDA4NTNlZGVkMDU3MzU5MiBsZWdhY3ktdHJ1bmsKKzE1Nzg1IDIzZThhYTQ4NWE3MGQ1NmUyZTE1OGMxY2Q3YTExZWMyMDE2MDIxNzUgbGVnYWN5LXRydW5rCisxNTc4NiA1ODY2MWE1NTdkYzY5MzRkZDRlYmQ0NTE0MzZiZjRmZDk0NGU4YTM1IGxlZ2FjeS10cnVuaworMTU3ODcgY2E5NmQ4Y2UxMmYzZGRlMjdmMjkyMTdjZDk1Yzc2YTAxMzI3NDg4MSBsZWdhY3ktdHJ1bmsKKzE1Nzg4IGJmMmVlODU2NzIwMTU0OGY5NDkzZDg2ZTQ3MDljYWEzM2I5ZDVkMjYgbGVnYWN5LXRydW5rCisxNTc4OSA5NzQ4MWQ3YWM1NDhhZDRjYThjZmFhYWNjYzBhOTJmNDI0MWVjYzAxIGxlZ2FjeS10cnVuaworMTU3OTAgNzBiMTZkYzYxMzdmMjQ5MDBkYTQ1NTFmYTVmN2EyNmNiNTJiYWRjYiBsZWdhY3ktdHJ1bmsKKzE1NzkxIDVkZjAzNDgyNjczNTJhZGQzM2UzYTdlZTk4ZWIyN2FjM2NlODlmZTIgbGVnYWN5LXRydW5rCisxNTc5MiAwMGE5ODExOTRjYTY5ZmYwZjRmYTk5Yjc3ODIyOGQ0MjRiYTVmZjhhIGxlZ2FjeS10cnVuaworMTU3OTMgMTI0MGJjOTk3YzhmYjg2OTQzODA5NWUyNjYxOGNkNzI0YWUwZDQwMSBsZWdhY3ktdHJ1bmsKKzE1Nzk0IGY3YWQ3ZTc5MTVlOTlmNTczYjQ5MDlmZmFhNGJkYzkyNDUyY2I2ZjYgbGVnYWN5LXRydW5rCisxNTc5NSBmMWU0MGFiYmVkYjNlMzFiNTY5MDA5ZmNiNjM0NDBjMTQ3YjhkZGIzIGxlZ2FjeS10cnVuaworMTU3OTYgMWY2MWVmNjQ1M2Q1NGYxMDQ4N2M3MjE0YzQ1ODkyYTk0ZTM2MWVkYyBsZWdhY3ktdHJ1bmsKKzE1Nzk3IGMwOWE1NzBlYjZlYjVmZjc0MGFjMGQxMjViYjIzMDExOTcxZjc1ZDUgbGVnYWN5LXRydW5rCisxNTc5OCAzNjAzMjBkMmZlOTQ0ZDY0ODgwZGE4MWFjODI0ZDNjM2VmZGYyYjhkIGxlZ2FjeS10cnVuaworMTU3OTkgZWFhNGM2ZmFmM2M0YjIzYmU5YWEyNjc4YmEzMjQyYTY0M2I4YWFhNyBsZWdhY3ktdHJ1bmsKKzE1ODAwIDFjOGMxMDFmMmJlMWUzMGRkYTVhNzUxMmU1OTRkZDlhYTZjMzhkZGEgbGVnYWN5LXRydW5rCisxNTgwMSAxMmFjMmMyNjdiOTMyZTVjMzY4ZDJhYjI0YzEwYTZjNDgyMGNjOTk5IGxlZ2FjeS10cnVuaworMTU4MDIgODRjMmE0ZDJkZjlmNGZmMDdlY2EzOGVlOTE0MTNiZGViNmY1YTljNCBsZWdhY3ktdHJ1bmsKKzE1ODAzIDFmMjQ0MTk3OGFiMTQwMDYzNmUwZmY0MGNhZTczOTgxNGVkYTA2ODEgbGVnYWN5LXRydW5rCisxNTgwNCA3ZGY3NDUyZDEzY2Q0MzM5MjQzNTIxYzM4M2JiMmViZWEzYWI2MWViIGxlZ2FjeS10cnVuaworMTU4MDUgMGQzMDlmN2YwMjNmYzRhZWM4YmFiMzkxNGQxYTM4ZGI0YzcxYTQ0NCBsZWdhY3ktdHJ1bmsKKzE1ODA2IDcyMDU4ZGM3ZDU0NWI3N2UxZDE3ZjY3NjViNGIxMDYxNTZmNzg3YjMgbGVnYWN5LXRydW5rCisxNTgwNyAwMWQxZTEwMTg0OTUwZjJhNDM4MWU3NTZlMGZmYjEyYTUzZWQ2ZDhlIGxlZ2FjeS10cnVuaworMTU4MDggZjczNDU4YzVjMzVkMDFkZDkxYzc3OTQ1YmNiOTQ4YzM3NzZmNjVlMyBsZWdhY3ktdHJ1bmsKKzE1ODA5IDcwMDk4NDEwOWNiOTlmZWJlOGJhYWMyOGRkNmU4MDU3MTU2MjU4MjYgbGVnYWN5LXRydW5rCisxNTgxMCAwYmU0YjdiNjUwZTMzZGRhMDgyODlkN2Y2ZWFiZDJjNTQ0NzQ3YWRhIGxlZ2FjeS10cnVuaworMTU4MTEgYTE5NTk2MmUzODljYjJhM2NhMTI2ZDVkZjBjN2YzNDkzY2Q3NWUxNyBsZWdhY3ktdHJ1bmsKKzE1ODEyIGYxMzM4NDEwNTUyODljN2JjNmZjYmY1NWU0ZjhkMDQ3NjIzZTEzMGMgbGVnYWN5LXRydW5rCisxNTgxMyA0ZGJlMTMwMjdjYjMxOWNlMWM4OTUzODNjZDc5MDE5OWUxYWU2MWVhIGxlZ2FjeS10cnVuaworMTU4MTQgYjAwNzQ0MjM3ODc3MGRmZWY3OGM3ZDBjNmM3NDhmY2VjZDg3ZTliMCBsZWdhY3ktdHJ1bmsKKzE1ODE1IDI3N2JhODI2Y2ZjOTdmZmVkMmZhMjVkZWNjMDA3OTdjN2YxZTcyMTIgbGVnYWN5LXRydW5rCisxNTgxNiBjYjgxMDllNzI4NzcxY2Y3NWUxNzJkMTZlYjIyYjQ3OWZjMzNhNThlIGxlZ2FjeS10cnVuaworMTU4MTcgOGEwNzQwMmUyM2RlYWZjNGVlY2EwODU1NDlkNmM1YWVhOTY5NTUyOCBsZWdhY3ktdHJ1bmsKKzE1ODE4IDJiMjFjYzFiYjU2NDkxMmFiOTY0Yjc1MmQxOWFiYTBhYTc2M2I3MDAgbGVnYWN5LXRydW5rCisxNTgxOSA1M2Y0MDIyYzBjZDU4N2M5N2FkNDdhMTU4MDNhNzMxYjY2NTMyZTE3IGxlZ2FjeS10cnVuaworMTU4MjAgZjQwMjA1NzU2MWIzYTFjNmM0NTcwZmMyNzY5YTQyYjY5MjZkZWQ5NCBsZWdhY3ktdHJ1bmsKKzE1ODIxIDRiNDgyMWJmNTNkY2YzMWIwZTdiZDdjMzRjNWJiODQzNmJlZTE2OTMgbGVnYWN5LXRydW5rCisxNTgyMiA5YjJlNzBiNTVjN2YxNWYzNGU3MDBiNGYzNjdjMTgxNzE4MzcxMjMzIGxlZ2FjeS10cnVuaworMTU4MjMgY2JkYjA1NWU3OWQ5MjUwMjQ3MmQ2YzAyMTgyZTk3YzYxOWNkMzg5NCBsZWdhY3ktdHJ1bmsKKzE1ODI0IGViMjQzNDQzYjg4NDBlODJmYWI3ZDMyMzgwYzQ3MzcxYWYyYjBjY2MgbGVnYWN5LXRydW5rCisxNTgyNSBiZDhkYjcxNDIyZjYwODlmNmJmMDYxMGMyZDIyMTM5ZDI4MTgxNDMxIGxlZ2FjeS10cnVuaworMTU4MjYgN2IyNGM4MThlMmNmMmQzMTk3YzlkM2Y5OGFlODBiZDdkZTM2NDY0YyBsZWdhY3ktdHJ1bmsKKzE1ODI3IDViYWJjMGFkZDY0ZjI3OWJmZjJmMDM2YWM3NDJhNTFjMzgxYjRkYjQgbGVnYWN5LXRydW5rCisxNTgyOCBhNjc5YmRiNDNmYWRjOTFlZDRlMmQ3NTkxOTgxMmMxNWRhYjgyZDEwIGxlZ2FjeS10cnVuaworMTU4MjkgNzA1MTMyNjY3ZjdiYTJjZDdiYzcyMzg3MjIzYmM2ODQxNDY4YzU4YiBsZWdhY3ktdHJ1bmsKKzE1ODMwIGI3NmRmNjgwOTlhNWY3OTYzMWJmNmQ4ZGVmYTFjNWIwZjRmMTZhOWQgbGVnYWN5LXRydW5rCisxNTgzMSA3MzkyZTcxZjZjY2UwMjcyYmE3MTM5MzFiZDkwMTM2NWY0OTliMDg1IGxlZ2FjeS10cnVuaworMTU4MzIgYzg3OGRjNjNkN2FlZmFiY2FmYTY2ZTVhODQwNTgyYTQ5YzcxODhmMyBsZWdhY3ktdHJ1bmsKKzE1ODMzIDZhYjhlMWJiMTY3Y2QzMzcyZjhkNWVlY2JlOWU2YWM1MGE3ZDJiMjIgbGVnYWN5LXRydW5rCisxNTgzNCBlZjNkNDk4YWEzM2MyZWU0NzIyNmYwZDk3MzM3MTBjNmFjNTI3NjEwIGxlZ2FjeS10cnVuaworMTU4MzUgNGZmM2NlM2YzY2M2MjFlNGM1OTJiMzZiNWZiOTZmNzNkYTUxNDMyZCBsZWdhY3ktdHJ1bmsKKzE1ODM2IDJjZjk4NzRiNjIxMTRmZmU4NDQ3NjM1YzI1Njk3NjFjNWY0NGE5YmYgbGVnYWN5LXRydW5rCisxNTgzNyA1YTcwODM2OTA4ODRiN2NjMTUxNDAwODQ3NGIyYjc2ZDQ4MDE0ZmUwIGxlZ2FjeS10cnVuaworMTU4MzggMDNiMWNjNDdhODZkMDE0MjI3MzM2M2UxNDA5Mjg0ZmZhNGI0Zjc0ZSBsZWdhY3ktdHJ1bmsKKzE1ODM5IDFkMDQwNzk2MDk1M2E2ZDgwMzI0YWUzNmI5OWUyMzEwYzk5YzkxODggbGVnYWN5LXRydW5rCisxNTg0MCAxODUwMDNkMDllNzY2YzgzYjJiZjYxMmJiZDE1OTc3YzMwZmE4ZWZhIGxlZ2FjeS10cnVuaworMTU4NDEgODdiNDY2YjcwMmQ2MDgzZGJmYjQ3OTgyNGJjOTk3NDVmOGQ4ODU2YiBsZWdhY3ktdHJ1bmsKKzE1ODQyIDBhY2VjMjExYTIwOTBmYzg4NDMxYTMwMGNhNTc4ZTc5YTE4MDdlOWIgbGVnYWN5LXRydW5rCisxNTg0MyA2YjJjNjk2M2M0MGI2OGYxMWU4YjMyZGMwNTc4NGNkNTNkN2I3ODljIGxlZ2FjeS10cnVuaworMTU4NDQgZTBjOTAzMTEyZTRlZDRmNGNhMDg3MDMxYjE1YWNlMjAxMTA5YTIxYSBsZWdhY3ktdHJ1bmsKKzE1ODQ1IDA4MTc0YmYyMzcwMmZjMDg3NDhjZTExYjlmMTQ5YWVkOTkzNGI5ZmYgbGVnYWN5LXRydW5rCisxNTg0NiA5MjQ2OGQ0M2EyM2YwMzQ4NjRlMmIzMzc1ODdkODYyMDMzYjYyYTJkIGxlZ2FjeS10cnVuaworMTU4NDcgZGU0ZTMwOTYyZmFiYTAwNjU5ODlmZTU0NzQ0MTY5ZTY0MGViNjhhNyBsZWdhY3ktdHJ1bmsKKzE1ODQ4IDBmMjE2YTU0ZDM0YjQ5MDNlM2VlNGJjYTQzMDQ5ODhhZmE2MDA0ZmQgbGVnYWN5LXRydW5rCisxNTg0OSBhODgzNDg4YjlkY2JmMjhhY2UyNzUwYThmMTIwYTZhM2ExYTdhMGQzIGxlZ2FjeS10cnVuaworMTU4NTAgYmYxZWJlODY5ODc4MWNmNjU4MDIzYWZmY2I1Y2UyMzI5MmRkODY3OCBsZWdhY3ktdHJ1bmsKKzE1ODUxIGQwNjAxMjk2N2VhYTIyZWM4MmY5M2RjMzEyYmE1NTZmZDZjZGZkM2YgbGVnYWN5LXRydW5rCisxNTg1MiBiOWFiM2IyYWNjOGNlNDBmNzA2ZmVkMWE4YzE2ODA1ODIzZjUyOGQ1IGxlZ2FjeS10cnVuaworMTU4NTMgNTUyZmI0M2FlODIzNzc2NGRiYzI5MmVhZWMzNDg2Mjc1OGQxNmFmYiBsZWdhY3ktdHJ1bmsKKzE1ODU0IGNiZTAyYjhhZWUwNzg5MGZmODc0OWI4NTEyMGNlOGVjN2Q1YTk1ZDcgbGVnYWN5LXRydW5rCisxNTg1NSAwN2E0ZDE2MzdlMDZkZjkzYjAwODY0OTUxZTc3Yjg1NTBiZjhlZGI4IGxlZ2FjeS10cnVuaworMTU4NTYgMjIzMDllOTU3ZmE3M2VlMmQ3NTkxNDJhNWQwZDk0NTQ3MzhjNTdmMiBsZWdhY3ktdHJ1bmsKKzE1ODU3IDhjOGRlNWI3MzZkYzIxZjBlNGQ0MjYwMmY0N2UyZTRhMWYxOWNkNWEgbGVnYWN5LXRydW5rCisxNTg1OCBkODQ5YTBkMjI5MjdhZDM2MjUzY2MxMDZmMjA2YjkxZTZmZWIyMTVhIGxlZ2FjeS10cnVuaworMTU4NTkgN2JlNTQ4MjQyNmQxZWZjNjIxYmViMzEyNjVhY2Q2MmE4NzE4YWQ2MyBsZWdhY3ktdHJ1bmsKKzE1ODYwIDk5Y2VlMGM4N2Y2YTA0ZjA5MWM0YzAzOGMxZjE3NDU1MTk3MjA0NGIgbGVnYWN5LXRydW5rCisxNTg2MSAzNjU4NDRlNzU1ODY2OTM5OWVkMDgxZmI2ZmYzYWMzMTBkMmZhN2E4IGxlZ2FjeS10cnVuaworMTU4NjIgM2NlYTczYTJiYmQ4YzEyNjY3MDQyZTI4NjI0ODA5NjI4OTMxMmQzNyBsZWdhY3ktdHJ1bmsKKzE1ODYzIDQ1OWQxOTdhZGIwOGZjNjdkOTIwMjgzMzk2ZTQ4NmViNmNhM2Y5MmYgbGVnYWN5LXRydW5rCisxNTg2NCBlODM5ZThlOGQzZTljMGExMDZkMGZmM2YwYzgwNmU3OThiMTk0NWU0IGxlZ2FjeS10cnVuaworMTU4NjUgNzk3YWNmM2ZmZDI2NjU3MzFjMThjMTg5MzY1MGMxZDcxZmYyOTc1YSBsZWdhY3ktdHJ1bmsKKzE1ODY2IGZkODQ2N2QxMzc1ZDIwNGE1OThkZmQ0OTZjNGE5MjM2ZGZlYmFhYTQgbGVnYWN5LXRydW5rCisxNTg2NyBhNjcyNWFjZGYzM2IxYjk4ZjQwYTkzMjYwNjVlMzBhZmU3NzdkNzhlIGxlZ2FjeS10cnVuaworMTU4NjggZjYxYjRhOThiOTcyOTJjZDZkOTczNzUwY2U2ZTcxOWZjYWJjY2JjZiBsZWdhY3ktdHJ1bmsKKzE1ODY5IDY4ZTU3YzVkMWJlYzA3Mjg3N2JlMzJiMGVjNTEyNTlkNWQzOTczOTUgbGVnYWN5LXRydW5rCisxNTg3MCBjM2EwMWI2NDJjOTcxODlhZGE0MzJmMGUzZTZmYzBmNGI1YTc3Y2NlIGxlZ2FjeS10cnVuaworMTU4NzEgMzQ2ZjJhMWMwMmEwYTM0YTM3MGRhY2RlNTBjZjQ3MGYzYWU1Yzc0NiBsZWdhY3ktdHJ1bmsKKzE1ODcyIDUyZDVmYjQ3MWUxNzIwZjA1ZjFlYzE3MGY1NTk1MTVjMjExYWZkN2QgbGVnYWN5LXRydW5rCisxNTg3MyBmOGJjN2Y2MmRjMjNhZmRjZTYwOWQ3N2Q0YzM0YjdlYTRlZDZjZmEyIGxlZ2FjeS10cnVuaworMTU4NzQgNWJkMTI3MzNhNjRhYzQ4YjIzYmEwZmZkNDQwYjA3ZjY5MDZmNjBhMiBsZWdhY3ktdHJ1bmsKKzE1ODc1IDkwZWI1ODIyNGU0MzE3MjM3ZjJlY2MwOWJmMjRlMTRjNWU4MDBiY2UgbGVnYWN5LXRydW5rCisxNTg3NiA4MTkzZTA0NTc4N2JmZjA4MTZlMjQ0NmRhM2RhMjU2YzVhMWEyMTcwIGxlZ2FjeS10cnVuaworMTU4NzcgODk0NjEzYjRlYjA3NWE4NTBmZTI1MzUwN2RiNjNlMDJhZWEyNzczNSBsZWdhY3ktdHJ1bmsKKzE1ODc4IDI2ZWMxYjMwZWZhOTNmZGY1ZDRiMzNlOGIwNjNmNDViMWM5NjhmZWYgbGVnYWN5LXRydW5rCisxNTg3OSA3ZmY0MGRhMDhjMmE2NDY1MGVlMzI3MjhjZTJlMDBjZTRhY2Q3ZmJhIGxlZ2FjeS10cnVuaworMTU4ODAgZmQxMmNkOTk2MTU0NDQ0ZmJjMTE4MDQwYTM4YWZkYmUzYmFlNTllNSBsZWdhY3ktdHJ1bmsKKzE1ODgxIDg5NmIzNTlkMWM3ZDZkMjQyMWUzOWZlNDRhNTNiNzdiZjE5NDNiNDMgbGVnYWN5LXRydW5rCisxNTg4MiBmYWVmZmY0M2U1OGE5OWIyZTUzMzlhNTYzNDMzOGM2N2IzYTBkODkzIGxlZ2FjeS10cnVuaworMTU4ODMgNTNkMDBlN2M1ODQ4NDM2N2IwYmMzMWNmMDE0NzAyY2E5NzNhYTJkNyBsZWdhY3ktdHJ1bmsKKzE1ODg0IDQ2MjE3NTgyN2E3NGVlYmY5MDgwNzYzMTdjNmMwZmFiOTNlOWQ2ZTYgbGVnYWN5LXRydW5rCisxNTg4NSA1MDIxZGI2NzQwMTkzMWY2Y2U0OWMzODBmZTA1NWNlNGZmOTBmODAxIGxlZ2FjeS10cnVuaworMTU4ODYgNDI1NThmMWJiZmM0ZGM3MTkzNWE1YTgyY2ZiOGVjOWY3YjI3NmFkMSBsZWdhY3ktdHJ1bmsKKzE1ODg3IDc4YWQ0ZjY0YWRjNWY0MTgyNWVlZGIxYWM2NGFmY2Y5MzdjY2FhYmUgbGVnYWN5LXRydW5rCisxNTg4OCAwNzA0MGQ1NjFmMDkxMjQzOGY5MDc1NzNjMmQ0YTg1OGIyMTk5ODA3IGxlZ2FjeS10cnVuaworMTU4ODkgY2I5MjhkOTI2ZjI3M2RiOTE0Yjc4ZDQ5NGFhZWRjNmM2YjE1YzRmZCBsZWdhY3ktdHJ1bmsKKzE1ODkwIGUwNDJjNGMzODYwNTZhODQzNWE4MmI1NzkxYTJkNjE2ZTE3ZTRhNGIgbGVnYWN5LXRydW5rCisxNTg5MSA3YTc4NzE1MzU3MjcxZTdmN2Y4MjU5NWNmZDE1OGJhMTFlMDkxODM0IGxlZ2FjeS10cnVuaworMTU4OTIgMDVjYzQ1ZDU3YTdmYTE2MGIzYmJlYTA3ODAxNmE0NmU3YjVlOGRjMiBsZWdhY3ktdHJ1bmsKKzE1ODkzIGVhY2E5ZTI1YTA0ODk2MDdkZDUxYTFiMjVhMTdkOGRhZmYyYjdjODIgbGVnYWN5LXRydW5rCisxNTg5NCAxNTY1MTQ5MGFmMzQyZjA2MjU0NDhiMjNiMzdjZmFkNzg1N2E0MzEwIGxlZ2FjeS10cnVuaworMTU4OTUgZjgyNjUyNTRkOGE5ZmNjNTcxODc5MjE0MWJiYzg2YWJhYzhhNzEzOCBsZWdhY3ktdHJ1bmsKKzE1ODk2IGIzMWZmZjU5NjIyYTNkZjM3Y2JjNmQ4ZDEyYTMyZThjNzk5ODEzYTIgbGVnYWN5LXRydW5rCisxNTg5NyBiNmVkOGZhMjY3NWM3N2Q0MWIyY2UxNjEyMjRjNmY4NjdkYWJlN2VhIGxlZ2FjeS10cnVuaworMTU4OTggNzJlM2NkYjMyYTZjNjE0NDdhNjFkZjU2M2UzYzVmMzdmNmZhMzNjYiBsZWdhY3ktdHJ1bmsKKzE1ODk5IDQwNDE1NjA5MmY3ODFiODk3ZjRhZjY1OWNjOWIxMGU0NGVmNWQ0YzMgbGVnYWN5LXRydW5rCisxNTkwMCBjMjIwN2Q2YzAzYTgxOGVmNTNmNTViZDkxYzYxY2EwMDQxMmNjZDQ2IGxlZ2FjeS10cnVuaworMTU5MDEgN2M2YjEyY2VjZWYyNmUzMzhlOWJlMTY5MjZhZjVhMmYyNjUzOTJhZCBsZWdhY3ktdHJ1bmsKKzE1OTAyIGNjYTg0NzQ1ZGEzZTAwY2JmODNhNGY2Y2U0ZGViYjVjM2I0OGIxYTQgbGVnYWN5LXRydW5rCisxNTkwMyBmODZlYTVhNjljNWVhZGI4MDQwZmMxOGY2N2Y1Mjk4NDA4ODJjMzc4IGxlZ2FjeS10cnVuaworMTU5MDQgZjVmMGYwMGY5MjJhMzZhYWFjOGZhMDY5MmJmZjc4ZjJjN2ViMjY2YSBsZWdhY3ktdHJ1bmsKKzE1OTA1IGZmYTRiNGI0MzcwMzFkMzRmMDEwMGFlZmI2M2UzZGZiZGExYWRjNmUgbGVnYWN5LXRydW5rCisxNTkwNiAwYTE0NjNiYTI5MzQ4N2Q2ZWE1NmMwOGIxYjliNjliNjllNzNjZjE3IGxlZ2FjeS10cnVuaworMTU5MDcgNzk1YjMyN2E5NWZlYmRhYmJmYzliZGRhYzAyMDFhOTEzYWRhYmFmOCBsZWdhY3ktdHJ1bmsKKzE1OTA4IDJmM2U0MTg2NWQzZDNiZmJiYzNmOWFiMmY5MDFlMjY2MTBhZDkzZmMgbGVnYWN5LXRydW5rCisxNTkwOSA2MDdlNTI4NDFkZjI3OGZjZTJhNDEwNzk0MWVmMjFiNTY0ZWQ0NGY1IGxlZ2FjeS10cnVuaworMTU5MTAgNjdlNzc0NjYxOWRhN2VkN2NiNzVjYWI2MDJjOTRhYTczZDI1YTgzMiBsZWdhY3ktdHJ1bmsKKzE1OTExIGYxZjRkODIyZTc2MWU3YWNlYTlmY2QyNDUyNTY1MDliNzkxY2NiMjAgbGVnYWN5LXRydW5rCisxNTkxMiAzZjgwNzNjNjMwMzNjMTYzYTc5NDBlNjNiNzk3NWY3MjJkNjIzZGIxIGxlZ2FjeS10cnVuaworMTU5MTMgMmI3MmFhYmE3ODk1MTExNTY0ZWE3M2FiMWEwZDhkZTYxYWYyMzZkZSBsZWdhY3ktdHJ1bmsKKzE1OTE0IDMyODE2Y2U2MGE0OWIwOWFkZTk3NTkxNzI5ZTI4MDMzMTZmZmMzNzIgbGVnYWN5LXRydW5rCisxNTkxNSAzNTdiNzFjNjkzM2I4NTEzZDI1YmY5MWVmOTRhNzUzMDQ2ZmMzOGY3IGxlZ2FjeS10cnVuaworMTU5MTYgOTkxOWQ2NWVkYzc2Y2FmZmJkNmZjMjgwMDBiNjhiZjI3ZmUxMGVjYSBsZWdhY3ktdHJ1bmsKKzE1OTE3IGMzMzlhYzdiNmQ0ZjFlMTEyYjhiZmZlNjFmN2M1MmZiNGY5ODFlNjUgbGVnYWN5LXRydW5rCisxNTkxOCBmYTNkYzIxZDBlMDg4MGU1YzQyZDBkOTYyODQxODQ4NjIxOTYyY2ZjIGxlZ2FjeS10cnVuaworMTU5MTkgMWE0MmE5ZDEwMzU3ZTE0NmFmYWRkZTdiNDIxMGE2NzBjODA3ZTExMCBsZWdhY3ktdHJ1bmsKKzE1OTIwIDUzMzU1ZWQ2MTI4ODkyODE4N2M4NWNiN2U2MWM3NGYyYzJjYzBjNTUgbGVnYWN5LXRydW5rCisxNTkyMSAxMzllYWYyZjk2YWI2NzIxZTMyYTE4YmMyNGRlYmQ3NjFmNTA0YTA1IGxlZ2FjeS10cnVuaworMTU5MjIgY2NlMmM3YTM4YmQ1NmRlMTI2NjM0OTc4MTFjOWY1NjQxZGE2ZWNkNCBsZWdhY3ktdHJ1bmsKKzE1OTIzIGMzNjA4MDZjMDZjNzYzMjYxYWM1ZGRkODI0MTZiNGU4OGI0MzU4OTggbGVnYWN5LXRydW5rCisxNTkyNCBhMDllODYzNTUzNGRlMTJiNDJlMTc5MjY4MmExMjlmNGE1ZDM2NTlkIGxlZ2FjeS10cnVuaworMTU5MjUgNmZhYTQxMWM2MWZiNGFlZGYzMTAyYTIyMzUwNWJmOWZlYmM3ZDBjOCBsZWdhY3ktdHJ1bmsKKzE1OTI2IGM5YjFmMTk4NmM0MDI5NDhkNzIyN2Q4YjNjODJlNGFjMzFhMDQ3MmUgbGVnYWN5LXRydW5rCisxNTkyNyAwMjNhMjAxOGI5NmRlYmE4NGY5Nzc3NzIwMjFlZDE1MDNjYjI5NzAxIGxlZ2FjeS10cnVuaworMTU5MjggZjcyOTQyNDZkMDRmOGQ0YzU2ZDY2YTEwMzFjYTk2NDhlMzQwNWNiMCBsZWdhY3ktdHJ1bmsKKzE1OTI5IDVmNmYwODg2OTA1Y2QzMzE4NTAwZWVlYjE2MTUwNDIxMWIwMjA4NDEgbGVnYWN5LXRydW5rCisxNTkzMCBiNzhiOTk2ZThlYmMyYjA2MzIxY2ZhYmYxOTczYzZhNWU5ZjQ5MTAwIGxlZ2FjeS10cnVuaworMTU5MzEgMjA4MzQ2ZTkyNGNiMDI5MGFkNDA3MTc5NWIyNjQxNzA1NmFlYTUxMCBsZWdhY3ktdHJ1bmsKKzE1OTMyIGMxN2ZkMmNhNjY1OWMwMTQ4YThiNjhiNWVlYjRkYWU1NDIzMjAyMzIgbGVnYWN5LXRydW5rCisxNTkzMyAwNWU0NWM1ZjJkZTViN2NlZmQ2ODBkOGYxNmI3ZDA0NzQ2MjdhNmZiIGxlZ2FjeS10cnVuaworMTU5MzQgMDAyMWYzYzBiMjM4MDMyMzhlY2M1NDIyN2E5Yzk5ZTUwYmU5YzkxNiBsZWdhY3ktdHJ1bmsKKzE1OTM1IDlkOWU1YTdjMTJkYWJkMzkxOThkNzc0YjRjODMwZjMzZDFkZDVkNzIgbGVnYWN5LXRydW5rCisxNTkzNyBkMzdjMDI3ZTNmYWU5N2JkOGM1MGI2OTZlODkwN2Y1ZmExYjUwNjRjIGxlZ2FjeS10cnVuaworMTU5MzggMjhhOGJiNzk0ZjE5ZDU4YzgyMjJhYmI5NTcyMGY1MzA0YTQ5M2ZiZSBsZWdhY3ktdHJ1bmsKKzE1OTM5IDdhOTZlYzAxMDMzM2RjODI2MTIxOTc4N2QyODliZTQ0MmFjN2FhNDIgbGVnYWN5LXRydW5rCisxNTk0MCBkMzczNzQ1NTJhMTVmOWI2ZGMyZjhjNGQwNzVjN2UxYjRhZGY2NDJhIGxlZ2FjeS10cnVuaworMTU5NDEgOTE1ZDk4NTkxOGUyMWQzYTljZGJkN2Q3M2NjZmQ5N2Y2MTQwMzQyNiBsZWdhY3ktdHJ1bmsKKzE1OTQyIGVmMTMyNDJkZTQzM2U3NGQwYzI3N2RlMjk4NGVhNTk2YWUzNzY2NDQgbGVnYWN5LXRydW5rCisxNTk0MyA2ZjQ2Njk4MTQ4ODRhMzEwNjhlYjA4NTNkMTJmOTU0NDlhYjgzM2U0IGxlZ2FjeS10cnVuaworMTU5NDQgMWUzMDJkOTk2ZDU4ZDhjYjRhOTkwMWIzOTk5ZDMyYjBjOWM1ZjJlNSBsZWdhY3ktdHJ1bmsKKzE1OTQ1IDU0YmZmZGRkYzBlZjA4MzE1ZDY1MGU5YWYyZWM5ODQzMDQ1NGVhZGUgbGVnYWN5LXRydW5rCisxNTk0NiBlZmVjYmJmNzI3NjUzZDc3YTYyYWM4MDc2YzkyYTY3Y2FkYWFiNDZkIGxlZ2FjeS10cnVuaworMTU5NDcgZTljMzRjY2EwYzk2ODYyNDM1NTJlNmQ3YzBhZjZmNDQ3OTgzODg4MyBsZWdhY3ktdHJ1bmsKKzE1OTQ4IGM0NWJjMjU4ZjgzM2MxMjkwYTZlMDk2NWViYjNhY2ZlMmVmODQ0ODIgbGVnYWN5LXRydW5rCisxNTk0OSA1OTI5NGRkNGJmZGRmMWUxNDI4MzcxNjhiZGI2NzYwNmZhOGUyZWY3IGxlZ2FjeS10cnVuaworMTU5NTAgOTJiYTkyOGMwOWI4YjhjYzFhNzYyMTEzNTQ0YjdkZDIxMTFlOTIxNiBsZWdhY3ktdHJ1bmsKKzE1OTUxIDdlMjQ1YmM1OThiN2JjMzcxODNhNTVhNjllMzM1MWRiMmMwNTAxOTkgbGVnYWN5LXRydW5rCisxNTk1MiBjN2JlODQ3ODI2YjE3MjQxMGYyZDBlNmE5MWZiYzQ5NjRkYWMyMGI2IGxlZ2FjeS10cnVuaworMTU5NTMgN2U3MTk3NWVhNWYwOTBmZmZjMTQzZTkxNzdjZjQ5NGRmNTRiOTQyNiBsZWdhY3ktdHJ1bmsKKzE1OTU0IDMxMjhjM2NkMThlODZjZWE0NWYyMjA1ZmYxNzQyY2MyM2IzMWJmZGMgbGVnYWN5LXRydW5rCisxNTk1NSA1NDFkYjVmNjI1OWU5NmFjMzRjNzNjZDliMGI3OTc5NWQ0MjkzNzgwIGxlZ2FjeS10cnVuaworMTU5NTYgNzUzYWY2MmFiOGExOWJmOWFlYjMzNjhlMjQ0YWJiMjUxNzVhMTEyZSBsZWdhY3ktdHJ1bmsKKzE1OTU3IDk2MTY3YWY5MGZhMDMxMTRmMTk4ZTMyZGNiNzZlYjAxNDFhMmVmZjQgbGVnYWN5LXRydW5rCisxNTk1OCAxODkyMGVhYTEyMjY0YTdhZmE4ZDc0YWJiOTM0MGI1YmRkZmYxZjAxIGxlZ2FjeS10cnVuaworMTU5NTkgZWRlMThmZDVlZDE1YWU4ZDZmZWZhZjUyYTNmNGE2MzAxNzIxNzFmMSBsZWdhY3ktdHJ1bmsKKzE1OTYwIDRkZWVlZDU4YmY3NjRjZDU2N2I0ODVkY2NkYWM5ZTZjMGRlZTI4NmQgbGVnYWN5LXRydW5rCisxNTk2MSBjNTI3OWMwZjcxNmYwNWIyN2VjMGZjMDJkNmZhYjhmMzgyNzMxOTc1IGxlZ2FjeS10cnVuaworMTU5NjIgZWUxYTM0ZTVlZGIxMjc1Y2NiM2Y1NzU4NzU4YWZmZjY3MzcxZWY2MCBsZWdhY3ktdHJ1bmsKKzE1OTYzIGEwOTNmYWQ5MmNjZjg5NTA0ODhkY2Q2ZDg4MDcxODljZmU2Njk4MTAgbGVnYWN5LXRydW5rCisxNTk2NCA3OWM0YTA1NDI1NzI0NDJmNGY0ZGZkODNmMjg0YTg4ODQ1Y2RiMjVlIGxlZ2FjeS10cnVuaworMTU5NjUgYTYyNWNlMmZiZmJkODU1MmFhYTM0ZTc5Y2E5NWJlZmFlODQxMGI5ZSBsZWdhY3ktdHJ1bmsKKzE1OTY2IDVhNGRmOWQ5YzdiZjU2ZTNiNDdmNmRiYTJlZjUwYmMyOTUyYWMxYTQgbGVnYWN5LXRydW5rCisxNTk2NyBiOWE1NmU1ZTNkMjI3ZmQ5ZDAxZDc5NmNkNWNkZTc2ZjBjZWIwZTcxIGxlZ2FjeS10cnVuaworMTU5NjggZDY2NDM1MzM3ZTFjMmI1NTNiNGNjYjgzYWFjYTA5Nzk0YzcxZGJjYSBsZWdhY3ktdHJ1bmsKKzE1OTY5IGVhNGJiYWJjNzQ5NzMwOWJmZTUwYzJiYWRhOTE1ZTI5MjNiNzg3NWYgbGVnYWN5LXRydW5rCisxNTk3MCA5ZDIwNjg3M2M1YmQ0YjFmYThlODlkZmY3NWRhNGIxYjk1NjczNTNmIGxlZ2FjeS10cnVuaworMTU5NzEgYjExZTBhODk4ZGUwOTU1YmQ0Y2VmYWRlODZhYzg1M2ZmMjUwNjI5ZiBsZWdhY3ktdHJ1bmsKKzE1OTcyIGZmMjQzYjBmMTZlZWI4ODU1OTI3YzEyNjA5NWI1ODVmOWI1YzhhNjAgbGVnYWN5LXRydW5rCisxNTk3MyA4MjdiNTc2ZTI2NWI5NjA4ZDkyNWYzMzNjMGM0YThmMTA4MTgwOTczIGxlZ2FjeS10cnVuaworMTU5NzQgZjI5ZmJhNWM5OGJkZjdiMDgzMzI2MzBlMDU1YmQzODM1OTEyZDZkYSBsZWdhY3ktdHJ1bmsKKzE1OTc1IGMyOTA5ZWM3ZDRjZGNhMDI1Mzg1ZWEyYmM2ZWVjODliMDgyY2U3MzggbGVnYWN5LXRydW5rCisxNTk3NiA1NTViMmUyMmVlODk4MmRhMmRhNmYwZGI5ZmFiYTQ3ZWQxNjM0YTliIGxlZ2FjeS10cnVuaworMTU5NzcgMDk3Njg0YjkzY2E5YzEwNDlhODI2ZjI3NjdmNWI3NmQ1N2ZlMWE3OSBsZWdhY3ktdHJ1bmsKKzE1OTc4IDYzZWJiNjkwNjg3NzQ5ZDgyMDRlYWExYmUxOThiMjkyZjQ0MzMzNjMgbGVnYWN5LXRydW5rCisxNTk3OSBlMmFlZTYxOTBiMTk4NTAwM2UwMmI4YjZmYjMyYWJhYTk1MmE3NzhkIGxlZ2FjeS10cnVuaworMTU5ODAgNzlkYzFlZjVjMjJkMTk2OTE4OTI0NzZjYzcxOTYwNjVlMmFhODk5NSBsZWdhY3ktdHJ1bmsKKzE1OTgxIGE5MmY0M2QyMGVjYjE1ZjgzNzhiNTJhZjlmMWM0YTZkNTJlNmVhNDQgbGVnYWN5LXRydW5rCisxNTk4MiAwNDJiOTZjZGY3ZDc5NDUwMDgyMGM3MGRmNDA3N2Y4NTFlM2FmYmYyIGxlZ2FjeS10cnVuaworMTU5ODMgZDdiNDhjODQ5MTg5NTM0YjUzZjRhMzQzZDQ3MDk5OGE2NGI2YjEwOSBsZWdhY3ktdHJ1bmsKKzE1OTg0IDVkZDM4MWFlYjIzYjI3YTg4YTI0NGNiNGNmZDRlNDQ3OTU1MjI3NDMgbGVnYWN5LXRydW5rCisxNTk4NSAwNWQ1ZDNmOWExOGNiZmFmZGI4MDc1NDc3Mjg0MmMyMWU3ODlkZmQwIGxlZ2FjeS10cnVuaworMTU5ODYgMWNmNTQ0YmEyMzllNTYxNjU4ZGU0YjUzNjQwZTNhMzEyOTBiZjAzNiBsZWdhY3ktdHJ1bmsKKzE1OTg3IDJlYmZmZjEzOTM2YzI0YzBkMWJmZjFkYzVlMTZlMGI4MTMxNGZiYjEgbGVnYWN5LXRydW5rCisxNTk4OCAxMjQzN2RlYjA2ODBhYmFmYzExNzQ3ZGFlMTZhOTAwODkzY2MxYTcwIGxlZ2FjeS10cnVuaworMTU5ODkgYzJkZjVkMjgwMzRkYTU3N2I4OWI1YmVkMGM4MmQyMGEyODkyYmM2ZSBsZWdhY3ktdHJ1bmsKKzE1OTkwIGYxOTVjOTk4MWZhMWE5YTY1MGViZDNiNTA2MWJjNTFhY2VmMmViMDIgbGVnYWN5LXRydW5rCisxNTk5MSAzNDRhYjM0OGYxZTljOWQ4YjAwNzMzMmY4NjA4YzBkZTdhMzU4Zjg0IGxlZ2FjeS10cnVuaworMTU5OTIgNzA2NmJlMmVkYzNiNjlkNWY2OTMxZTUxZjQxOTdkMThjYzFmM2U0OCBsZWdhY3ktdHJ1bmsKKzE1OTkzIDIwOWViNDRjZGJmN2UxMTQ2NjIyNThhMjU0Yzg4YzU4MTNkMzYyYjQgbGVnYWN5LXRydW5rCisxNTk5NCA2OGRkNDAzMDcxNzI2ZTFmOTlhYzQ5YTU2OWU2OTE1Nzc3YzI2NDE5IGxlZ2FjeS10cnVuaworMTU5OTUgODZjOWY2OTFmMzc5MGEzOTBiYjcyMzkwZDAyNDNjOTg3ODRhNWZlNCBsZWdhY3ktdHJ1bmsKKzE1OTk2IDc5ZjhmNmI5NjNjMjY5YTI0OWY0NjgwOTA0YjVlYTJjMWIwNDVmZTYgbGVnYWN5LXRydW5rCisxNTk5NyA3OGJmYzc0MGI2MWNkMWQ5Y2UxZGI2ZWY0YTNjMDA2ODU0ZmU2NTUwIGxlZ2FjeS10cnVuaworMTU5OTggMzFmOWZhNDJkZjYwMGFhY2Y1ZWUwODM3NWJhYjRjNmQ5ZmUxMTBlMiBsZWdhY3ktdHJ1bmsKKzE1OTk5IGFmNzI4MDVlOTk0MmFkMmZkZjVhZmI5MjVjOWQyNTNiNTNhYzI5MTEgbGVnYWN5LXRydW5rCisxNjAwMCAwNDkzOTViMDI2MDJhMzRkMTBiNDVhNjI4ODkwMWQxZjlkNDE1MWQzIGxlZ2FjeS10cnVuaworMTYwMDEgNjUwMTU0MjkyZWUxMTczYTYzMDRlMmI2NmYxMWE0OGM4NzExN2RkYSBsZWdhY3ktdHJ1bmsKKzE2MDAyIDUzYmUyODVjZmQyY2FjNmJiOWI2ODZkYTQ0MzcyYjlhMDA0MDNiOTQgbGVnYWN5LXRydW5rCisxNjAwMyA2MTA0YjYxMjE1ZTY3Y2E2M2Q2Yjg1MzYyMjBlNDdkNWVjNmY1YTdiIGxlZ2FjeS10cnVuaworMTYwMDQgNTQ2NjI3MGRiYzkyNjhhMGNhMWE5N2RkZmI5MjU3ZTM5ZDkwYzFkNyBsZWdhY3ktdHJ1bmsKKzE2MDA1IDFlNDZjMjNiMWRhZGI3NGU2ZWMzMzdlMjY4OWIwZjIyYzkwMmMxODcgbGVnYWN5LXRydW5rCisxNjAwNiBhNzkyYjc0Y2M5ZThjMzUyNjdiOTlhYmQ4ZTk5OTczNTc2YmQ0YTU4IGxlZ2FjeS10cnVuaworMTYwMDcgMDlkOTE3MmZiMWQzNGNkNzIwMGQwNjVhN2E2OTYxYTcwNWI1NzZiMyBsZWdhY3ktdHJ1bmsKKzE2MDA4IDU3ZDZhMzFlZTQwZTAxNDlkMTk4Nzk5MzY5Njg3NTNkYTYxZjVmYzYgbGVnYWN5LXRydW5rCisxNjAwOSA1ODkyMDJjNjQ4ODc5MWQwZTdjNzMyN2M4YWM0OWFiMDkyM2QwMDAyIGxlZ2FjeS10cnVuaworMTYwMTAgOGVkZTRiMDgwM2ZiNzlmZmMzN2NiMmQwNzZkYjE3NzU4NjZhYjFjMiBsZWdhY3ktdHJ1bmsKKzE2MDExIGFjNGQzY2ZiYzFjOWQxODQxOTRjYjljMmU1OWMzYWZkMTI3NzNkZGIgbGVnYWN5LXRydW5rCisxNjAxMiA4ODY0MGVjZjU1MDYxZjMyNWNlZjhiMTIyMmJhNGY4YTk3MTBkYmQ2IGxlZ2FjeS10cnVuaworMTYwMTMgODYxNzdmYjBlZGQ4MzVjY2M0Yjg4ZDc2ZDEyY2M4NDc2YTEwOWViZiBsZWdhY3ktdHJ1bmsKKzE2MDE0IDMxMGQ3Y2JiYTMyOTIzOWM5YmM2N2EyYjczNzk3NTFkMGMwOTI5NTggbGVnYWN5LXRydW5rCisxNjAxNSBhNmE2NGU5YWIyMzhkMGZlNDFjMjY4NGY2ZWEwNWFiOWY5NWVkZTUzIGxlZ2FjeS10cnVuaworMTYwMTYgZmYwOTc0ZTg4MjFiZWVjMzJkNzYxZTAxYzk5MzFmZjUzYzZmNmUxMCBsZWdhY3ktdHJ1bmsKKzE2MDE3IDkxNmZiMDI0Y2U5NDJkMDk3YjA4Y2U1Nzc5NDc0Y2E2ZDZiYTZiNjQgbGVnYWN5LXRydW5rCisxNjAxOCA4N2VlODJlNWM1NmQzMWI3NzFmNzZlZDVjZTMwYWNiNjMzNGY5ZmY0IGxlZ2FjeS10cnVuaworMTYwMTkgMzRhNmU1ZmVjYTE4ZTNlNGIzMmFmNTJkMTYyOTQ0ZGJlMjcxZGM1NCBsZWdhY3ktdHJ1bmsKKzE2MDIwIGJhYmU3YjljYzYxNzQ1NmY0MmQzNTVmMWMyOTllMDUzODViYWUwOTggbGVnYWN5LXRydW5rCisxNjAyMSAzZGE0OTM0MjE5ZTVmNDc3ZTc1YzQ4ODdiOGQ2ZGU4YjQ0NWIyNjJmIGxlZ2FjeS10cnVuaworMTYwMjIgNWZjMThiY2E3ZjU1YWMzM2E1MjkwYzUyNDA5ODA3MTE0YmIzM2Q5NyBsZWdhY3ktdHJ1bmsKKzE2MDIzIDFjNWE1YWRlMDRlMjc2MmM5YjExZTI5ZGI5MTI5YTJmMjY1YWEyZGYgbGVnYWN5LXRydW5rCisxNjAyNCBjNmZkNmZmYmNiMTVjNzgxY2E0ZDRlYjg1MjViNmVkNmZlYWUyNjgzIGxlZ2FjeS10cnVuaworMTYwMjUgODQ4NzlhYjcxYjlmM2ZkOGRhZjk2YmZiNzdiZGYxMWExMjY3ODc4MSBsZWdhY3ktdHJ1bmsKKzE2MDI2IGI5YWRiNzljZGViNjM0MDlmOWY1MWQ0YjQxOGIxZjIzODM2MGY4NWUgbGVnYWN5LXRydW5rCisxNjAyNyBlOGJiMGQ1MzY2MzNhZTc5NTIzMDk4YTI1N2YxOGM0ZDUyMzc0ZDM0IGxlZ2FjeS10cnVuaworMTYwMjggNGM0ZTk1MTQ3MjU4MTExMjU4Mjc0ZjU0NGQ1ZGVlNzU2ZmRkNmRhMiBsZWdhY3ktdHJ1bmsKKzE2MDI5IDRjZTI1NTQ5NWRhMzQwMzA0NDBhNThiN2M3MGY0YTU1YWJiOWJhYzcgbGVnYWN5LXRydW5rCisxNjAzMCA4MzM3N2ZjMjk4ZDgzYzhhZjRlZDdlZmQzZDhmY2RlNmU1OTI5MjFjIGxlZ2FjeS10cnVuaworMTYwMzEgZTcyY2I0MjE3NmJjNzE5M2Q5NTIyMzI0ZDdkMzVjNDVhY2Y0YzU3MCBsZWdhY3ktdHJ1bmsKKzE2MDMyIDYxNTVmNTMyZjFmY2M0ODg3YmZlODlhNTA5MTliYWRjNDUwZDVmZWEgbGVnYWN5LXRydW5rCisxNjAzMyA4OWYwYTY2NGUyODMwYjFjZWJlZDNlOGRiM2ZiOWExZTUwMjdjZmJlIGxlZ2FjeS10cnVuaworMTYwMzQgZmRiNzhjZmQ5ZTc2N2Q5MmE4MjExNjMwMDg1NjlkMmViMDkyOTMxYSBsZWdhY3ktdHJ1bmsKKzE2MDM1IGVmYjRiMGM2NjY4OGU0MzYzMmRjMTM1NWI5YzllYjcwMDc5NWI1YzIgbGVnYWN5LXRydW5rCisxNjAzNiBiNTMyOTBiN2I1NDY4YTE5YjdlOGQwOGY0ODBiZDFhNzk0MDVhZDU4IGxlZ2FjeS10cnVuaworMTYwMzcgMWMyN2IzN2VkMWExYWU3N2YyNWU2NWU2NmI4MjNlNDYxYjY1ODNiMyBsZWdhY3ktdHJ1bmsKKzE2MDM4IGJjNzE0YTdhMDA0Mjg0YmVkYzc0NzhiNDU1YTc1NGFlY2U1MmMwN2UgbGVnYWN5LXRydW5rCisxNjAzOSBlMmIzNjIxZTY1MjEzOTJhZWI2YmI3Y2NjNzVmNTliMzViZjUyNmVlIGxlZ2FjeS10cnVuaworMTYwNDAgMzM3MGVkYWQwOGNlZDVkZjg4OGVhY2JhNzk2ZjlhYWVlYTYwNTc5NiBsZWdhY3ktdHJ1bmsKKzE2MDQxIGUyZWUzOGVhN2YzNWU0ZDRhMDNlMDczY2UxMTQzMDAyM2I0ZGRjMzEgbGVnYWN5LXRydW5rCisxNjA0MiA1MDNhNzM5OTgyMjJjNTMxMjQ2OWM4MWI2YjA5ZDYyYjZjNGNlNmE3IGxlZ2FjeS10cnVuaworMTYwNDMgM2Y1OThiOThkN2Y5MjI0MDZmYzRkMTgzN2JiYjAzYjI0OTkwOWQ3MSBsZWdhY3ktdHJ1bmsKKzE2MDQ0IDkxZGUzZjAzYWU4OTI3YWYyZjc3OTAxMTcyMmQ0NTViMTA3NmIxMjIgbGVnYWN5LXRydW5rCisxNjA0NSAzZTA3YTczMTVhZjUyZmY2ODQ1Zjk4YzQ5MDZhNGRlZmZkNGE1NjVmIGxlZ2FjeS10cnVuaworMTYwNDYgNTEwMmVmZmIwYzRiNGM1ZWI1ZTZjMmRlODVjOTljNmY5ODA4YjZhNSBsZWdhY3ktdHJ1bmsKKzE2MDQ3IGUwZWI0MzFlNDM5M2FjZDdmNjI2YjFjMmJhNzM5NmIyY2RmYzU5YzMgbGVnYWN5LXRydW5rCisxNjA0OCA3Mjk1ZjM2MDI2NGU0N2NjNTFlNmFlMWE2MTA3ZjEwN2YxMTkwMDUwIGxlZ2FjeS10cnVuaworMTYwNDkgNDAxMWFjZmUxNDMzZmE5NjE1YmIyZDY1ZGQ0YWIzZDY5MTE3MTUwZSBsZWdhY3ktdHJ1bmsKKzE2MDUwIGYxMTljMmQ4ZDU2MDNmN2ZmNGMxOTk4ZGJiZjliZjRjNTNmNDg4ZGIgbGVnYWN5LXRydW5rCisxNjA1MSBjYjE4NjQwMjU5OWE3MjdmYWExMDI0MzI5NzI5MDc3OGQ0MDNhNGIyIGxlZ2FjeS10cnVuaworMTYwNTIgN2VkYzQ4MGJiOWYzOThlOWQyNDFlZjU4YTQzZjUzZTQ3OTkzNjQ5YyBsZWdhY3ktdHJ1bmsKKzE2MDUzIGNmYzY0ZmFmMTJjZTU5OTAzOWFlMTlmZGQ0YjllZDQ1MmVlOTIzNDQgbGVnYWN5LXRydW5rCisxNjA1NCAxOGM4MWYxYTBkYTIzNDg5MDM5NGI3MTZmMmNhZTZjMmY5ZGU3NWZkIGxlZ2FjeS10cnVuaworMTYwNTUgZTM4YmU4NzE3ZWMwMzFiNjEyYjhlZjU1NjFiYWUzMjYzNmQzY2JmZSBsZWdhY3ktdHJ1bmsKKzE2MDU2IDgwMGE3NWQwNzg3ZjBhMDFhODg5NWNjNmQ4NmVjYjk5OWIzZWE0YTcgbGVnYWN5LXRydW5rCisxNjA1NyA2ZTRkZjM0MTRhNWZjZjUwMGM1NzhiYTNjMTJiNjBmOWZlYWQ1M2I3IGxlZ2FjeS10cnVuaworMTYwNTggYjkxYjU3NjJiMWNkMTE0YWI3YzAzN2ZkMzY0ZTg5ODVkZGVhZmFmMiBsZWdhY3ktdHJ1bmsKKzE2MDU5IGE1ZTIwZDA3NDcwYzVlN2I4MzE5ZDkwNTRmZDEzZTRjOTkwMzhhNmYgbGVnYWN5LXRydW5rCisxNjA2MCA0NmVlMjcxNWQyOTgzOWJkNjNlYWJhYjI0NjliYjM1OWZjZTNmYmE0IGxlZ2FjeS10cnVuaworMTYwNjEgMmZiM2ZiNjQ2Y2M1OTU5NjMwNGEzNThkNTYzNGNjY2I4MzllMmVkYiBsZWdhY3ktdHJ1bmsKKzE2MDYyIDNkYjYyYzc1ZTY1YjE1NzI5ZmU2NjBlN2IwMmRlMjA0MzBiYjVhMDQgbGVnYWN5LXRydW5rCisxNjA2MyAxY2Y2NzM4MjQ5YWZmNWUzMzM5YmU3OTFmM2I0OWVhZDAzZDZhMjBhIGxlZ2FjeS10cnVuaworMTYwNjQgOTA1NDBjZGY5YzhkOTY0N2E2ZjRlNmM4OGY2ZmE5YzI5ZGY4OGE1OSBsZWdhY3ktdHJ1bmsKKzE2MDY1IDM2MDc0MjIyMTYxYzBiMWI0ZTdmOThhNWQ0NWM2ZmZmYjQzN2MxNTYgbGVnYWN5LXRydW5rCisxNjA2NiA1MGY5NzdlMWUyYWI3MGQyYmU3ODkzZmZkMjliNWRkOWQ0MmNiMDMxIGxlZ2FjeS10cnVuaworMTYwNjcgMzNjZTYzYjA2MzU5MDhmYTNmYzAyMzc3MTYwYWQxNTBiZDc5NDljMSBsZWdhY3ktdHJ1bmsKKzE2MDY4IDM4NGZhOWI5ZTI1M2NhMGY3NDQwN2FjYzNmZDBmNDRjYTBjZTFkZjMgbGVnYWN5LXRydW5rCisxNjA2OSAwODViMDE1YTkyOTFkOWQ1YTEzNjk4ZWMzODA3YzBkNDQyYjc2MTdmIGxlZ2FjeS10cnVuaworMTYwNzAgZmMyYWQ2ZmEwOGVjZTkxMmIzOGQ1MTc2ZTVhMTY3N2U0NzUyOWU5MCBsZWdhY3ktdHJ1bmsKKzE2MDcxIGM3ZWYxNTg1OTgzYzQ2NjU0Y2M0YzdhMjExMDJhMjk5NWMwOGY5MjQgbGVnYWN5LXRydW5rCisxNjA3MiAzYzM1YmY3YjU4MGIwMjJlOGI3YmU3NjAzNGQ4MGZkYjQ3OTBiNDc4IGxlZ2FjeS10cnVuaworMTYwNzMgMDY5NGNlM2JkNDhmNjdiMTE1ZGI1ZTc4OTU0ODA0YzZhYmRkZmRmMyBsZWdhY3ktdHJ1bmsKKzE2MDc0IDQyMGFiNDQzMDIxZTk2NWQzYmNjYjJjMzgxYzI0MjYyMDA4NzRkMGQgbGVnYWN5LXRydW5rCisxNjA3NSBhMmJjOGRmZjU1ZGZmNTQ3NDRhNGMxM2RmMTY0M2NmYmQ0NzBlNzk4IGxlZ2FjeS10cnVuaworMTYwNzYgMDNhYTI2ODE5YWMyNzY1MWQ5Y2Q5MmUwYjk0YTIzMDQ3Y2E4MTYyMSBsZWdhY3ktdHJ1bmsKKzE2MDc3IDU4MTgzNjc5YzkwYTIyMDk4YjYwOWUxZjJiNDBlZTUwMWUyOWU3MDcgbGVnYWN5LXRydW5rCisxNjA3OCBmZDc4YmM1ZjJiMmNjYjFiZjRkMzg0NDExMTc3NzRjODQ0NWEzM2I1IGxlZ2FjeS10cnVuaworMTYwNzkgNjZkNDJjNTFkZjE2YWVmOTJlYWJlNDIwOGVkMmM5MzYxYTY0N2I5MyBsZWdhY3ktdHJ1bmsKKzE2MDgwIGNkOGE0MWJmNGFjMjBiOWE3MmI0ZjBmNzE4MjRiZTdlZjdjODYxZDkgbGVnYWN5LXRydW5rCisxNjA4MSAzOTBlNWQ1MWZmNzMzMmI2NTEyYjhmN2U0MWQ4OTc4ZTdkNTcxMmQ4IGxlZ2FjeS10cnVuaworMTYwODIgNjdhMDQ4MTZlYTUwMTFhMzAwZWUzN2EwNjM2ZWE0NzNiZjM0NGUwOSBsZWdhY3ktdHJ1bmsKKzE2MDgzIGFjMjRkODJkOGUzM2JhYTYzYTllN2VjMTgwZTY2ODY4MjBlMDhlYzggbGVnYWN5LXRydW5rCisxNjA4NCBhZjEwZDliNzQxNDNkMmMzYWIxOGQ4OGNiOGEzZmUyMzk0M2RkYWFmIGxlZ2FjeS10cnVuaworMTYwODUgY2VkODYwZjJkOGQyY2E1ZTBlYzJmYTBjOTRkYWMyOTY4NGU3MjhjYyBsZWdhY3ktdHJ1bmsKKzE2MDg2IDM0MThkNWMwZjk2MDIyY2E4ZWMzY2U1ZTA3N2NlNmFkMjk0NTBhNmQgbGVnYWN5LXRydW5rCisxNjA4NyA3YmFjMTBhOWJiNjFjZjZlYTBiZGExZjA2YzNkZTk1MmMzOTJjYzNiIGxlZ2FjeS10cnVuaworMTYwODggMjQ3MTc0MDVkZDg5OTBmOWIxYTk2MjU4ZjFmOTIzMGIyMDYzZjIwOSBsZWdhY3ktdHJ1bmsKKzE2MDg5IGMxNTViY2NiN2EyMmZiMjQ2OGExZTQwZGY0YjkyNjUxOGI3ZmZkMDggbGVnYWN5LXRydW5rCisxNjA5MCBkOGE0MDc3NzdhNmY0YjdhNGE4MTMxNGM1NDM3MmYzZWQ5Nzg5Mzc5IGxlZ2FjeS10cnVuaworMTYwOTEgNDU0OTQwNDZjMmZiNjFjNTdiZjNhNzk1NGNlMWVkMTUyMjk1Y2NkNSBsZWdhY3ktdHJ1bmsKKzE2MDkyIDYzZDI4ODdiYWYxMTg0MjZkMzJmYzQ5MzRjMzZiY2MxZDUzMmQ4NmEgbGVnYWN5LXRydW5rCisxNjA5MyA3ZTNkNjA0NTU5NThmYzczODYzYjY1ZTQ0YzI5ZDEwYTQyNzQwNzAxIGxlZ2FjeS10cnVuaworMTYwOTQgNTYyNmQ0MjU1ZmNlZDVjYzkzNjE2MDgzOTg3NDNjOWRlY2JlN2NmZCBsZWdhY3ktdHJ1bmsKKzE2MDk1IDg5ZTQ3ZWJhMjc3MTg5YmM4OGY0ZDkxYTgzY2MzZjU2ODliNjk0Y2UgbGVnYWN5LXRydW5rCisxNjA5NiA4N2RmMWFlNGYxMTBjNWQwOTdkMjMyNDE1YTQ1MDk1YjA2NjgxYzNkIGxlZ2FjeS10cnVuaworMTYwOTcgOGQzMjRkOWQ1MThmZGJkNTBlMGM4OTMxNDRhYmZmMTg5MGM4MTlhOCBsZWdhY3ktdHJ1bmsKKzE2MDk4IGYwZDQwMmQ0ODE4MGJlOTQ4OGRiOWRkZTZjMjI5MjBhZTRkY2IxMGEgbGVnYWN5LXRydW5rCisxNjA5OSBlMTAxNjAwYWRlZTQ0YTYzMTJlOWYxMjAyMTZiZTFmY2E1YzU0MzZkIGxlZ2FjeS10cnVuaworMTYxMDAgYTdmNzIwMjJiOTNhYzg5NzIzOGMyNmRjZmNhYjM3OWZkYmRmMjEyMyBsZWdhY3ktdHJ1bmsKKzE2MTAxIGY5OGQ2ZDYzYWQ3MWI2YmMxNDRhMGRmNDdlMWM0N2FiZDFjMDYwYTYgbGVnYWN5LXRydW5rCisxNjEwMiBkZmYyNzdkNWZlYjI1YjBlZTlkY2EyNWFkODMwMjMyMDdlMTEzZTYzIGxlZ2FjeS10cnVuaworMTYxMDMgM2YxYmQ0NzgyNjI4YjZhMmQ1ZjQ3NDYzNDY1MTY0MDk4MzZkZTBlMyBsZWdhY3ktdHJ1bmsKKzE2MTA0IDJhNWEzY2FkNTE3NGE1ZmJhNzU3NzJhYzNmZGNhNGVjZmNiODBlYmUgbGVnYWN5LXRydW5rCisxNjEwNSBhYmVkODBiNTBhMmNjYWJhNDMzMmRhZWRjYzQ5OTY4NjA3YTRmYjQ2IGxlZ2FjeS10cnVuaworMTYxMDYgYzMwMjlmMjc2MDQ3MmNkODU0YjBmOTYyZTJjZmVjNTExZDQzYzdiNSBsZWdhY3ktdHJ1bmsKKzE2MTA3IDRjNDBlZjVkY2Q4MjdhZjlmYWQ4MWZjMjhhZWEzOWRhZDZkOTNkOTcgbGVnYWN5LXRydW5rCisxNjEwOCBmYjMwOTk2MTAxYmM4MzRkMjllOGEzMTZiZWE0YzBiMGM4NzNiMjgxIGxlZ2FjeS10cnVuaworMTYxMDkgMzg0ODM1ZWEwYTVhMTZiMzg1ZTIwOGNiY2FkNDRmNzg5NjZiZDNjNyBsZWdhY3ktdHJ1bmsKKzE2MTEwIDc2Mjg4ODJkY2NjZGU4N2UwNjhlZDQzMWM5M2E0YzU1OTgzNTI3M2MgbGVnYWN5LXRydW5rCisxNjExMSBiMzUzMGRhZTAzYmZiOTdmZDhhMzA3NzIzYzIyZDJmZGRjOTBjNmY0IGxlZ2FjeS10cnVuaworMTYxMTIgZTBkNjc2ZTljYjY2YzE0MGE3N2ViNWQwOTg1Nzg4ODEzMTA1ZThmYyBsZWdhY3ktdHJ1bmsKKzE2MTEzIDU2MTljM2Y3YTQ0YmRjNWFkMTY0MzA3NjE0NmU5Y2QyMGNlNWM4YmMgbGVnYWN5LXRydW5rCisxNjExNCBkODg1MzVjY2FlZTVjMjY5YzY4NDJmOTc1ZTdkNDRkYzE1MWY2M2ExIGxlZ2FjeS10cnVuaworMTYxMTUgMGIyODllMDBkNTJhMjc0NTUyMTNhZWRjZTBiMGQwYjIxY2VjZDRkMCBsZWdhY3ktdHJ1bmsKKzE2MTE2IDk5ZjM0MWE5N2ZkZWI2ZjA3OTI0YWU1ZDgwY2ZlYzQ2OTQ5NTEwOGQgbGVnYWN5LXRydW5rCisxNjExNyBiNGFlZGQ5MGM4NjQyZTlkYTBlYTRjMTYxMmMyNmQ3YTZhOWUxOTM4IGxlZ2FjeS10cnVuaworMTYxMTggOWExYjk2MWUwYzNhZjUwNDFiMDlhNTNkZmQyOTJjZjhmNWQ1NjllMiBsZWdhY3ktdHJ1bmsKKzE2MTE5IGQ4MDM4MTMzNjYxMmQ2MWQ3ZTI4ZjQxNTkwMzk4Yjk1ZDI2MmU4ZjQgbGVnYWN5LXRydW5rCisxNjEyMCBjODcwNmU1YTg4MmZhMjEyZGYzM2MwZTU4ZGFhZjk1NDE3ODI5ZDc4IGxlZ2FjeS10cnVuaworMTYxMjEgNjBhOTcyNmQ4NWY4ZTMwMzQ2YzhmY2EwYmNlYzFlYTE1ZTVmZjRiYiBsZWdhY3ktdHJ1bmsKKzE2MTIyIDQ4NGJmZGU3MGRjY2JmNGNiNmJjODNjNjA4NjlkNDk2YjU0ODY4MWMgbGVnYWN5LXRydW5rCisxNjEyMyBiZWY3YjYyOWFjOTU5YmUxMzVjN2NkZDA1ZDFlOTU5Y2I1NDU3YjY4IGxlZ2FjeS10cnVuaworMTYxMjQgMDJmODcwNWJkYTA1ZTUyMDZmZDg2MTExZTllOGIwODk1NDZkMWUxZSBsZWdhY3ktdHJ1bmsKKzE2MTI1IGYzNjkzNmQ0M2QwMmJiYzYzYmUwMzA5ZjQxYWE2OGJhZTRmZmVhNTIgbGVnYWN5LXRydW5rCisxNjEyNiAzYmUyOTQ0OTU5ZGE3M2M1Nzk3MTc1YmY5MGE0ZmI4MDBkNjgyYmY2IGxlZ2FjeS10cnVuaworMTYxMjcgYjU5NzA2N2UwNTZmNzkxYjM0NTk5MDI4MjJmZWJjYTY3ZTg2ZDhhMSBsZWdhY3ktdHJ1bmsKKzE2MTI4IGExMTEwZGE2NTdlNTBkZGU1M2UwZmE5MzBlYTQ2ODUyMjIyNTFiYTQgbGVnYWN5LXRydW5rCisxNjEyOSBjYmY2NmU0ZmYwOGYwZWU5Y2EwYjEyYTllYjFjZTg2MGZiMzk3OWQ0IGxlZ2FjeS10cnVuaworMTYxMzAgOTQ3OTBiMGM1NWQwNGFjY2NmMzk2Y2Q2MTYzODQzMmYyMzM3Mjc1NCBsZWdhY3ktdHJ1bmsKKzE2MTMxIGYwYzgwYjgzNjRlMjBiM2I0OGQyOGVhZGI2MzcxYmM4ODlmN2EyODEgbGVnYWN5LXRydW5rCisxNjEzMiAzYTAwMDMxZjlkNjBjN2MyZGYyZTFmYzFkODJhZGJhYTkwYzNjOTYxIGxlZ2FjeS10cnVuaworMTYxMzMgY2Q4YjhiYWZiYjMzOTczYjE5NDEwOGY2N2E3NTMyMmViZmNhYjk5ZCBsZWdhY3ktdHJ1bmsKKzE2MTM0IDc0NTE3N2JlMWE3MTdjZjE1MzJhMTUxZjI3YTVjOWNkOTYxMDgxOTkgbGVnYWN5LXRydW5rCisxNjEzNSBkNjc5NzQ1ZDk4NmZkYjQ5MGE3Mjc2YTMxNDRjNGZlMTA0ZWVmZmJkIGxlZ2FjeS10cnVuaworMTYxMzYgOGZiNzMxMWQxMzgxMDg4ZTU4ZDY3MGIxOWJmMGVmMzVhMTM5MTViOCBsZWdhY3ktdHJ1bmsKKzE2MTM3IGNiYmU1MTJkMjRlMDVjZWQzNDdhMGQ2ZjgyMTlhYTFmOTZhYTNhOTggbGVnYWN5LXRydW5rCisxNjEzOCBiZmUyMmNmNmU3NzA4YmE2NDJhNDBhZGQyNmYxZjBiM2IxNDQ4YTFjIGxlZ2FjeS10cnVuaworMTYxMzkgMjAxN2Y1NGIwMzI1YzdhNjliMjdjZTJkYzY3YzA0MjlkYTFlOTNhNyBsZWdhY3ktdHJ1bmsKKzE2MTQwIDExM2Q4MzNlZWE3ZTA3YTkxOGJiNTE2YWI1NDU0OWQ5NDQwNDE4MzkgbGVnYWN5LXRydW5rCisxNjE0MSA2MmUxNDBiYTc4MmRjMDQwMDk0ZDE4ZGY4NWNmN2U0MzU3ZmE3NDZkIGxlZ2FjeS10cnVuaworMTYxNDIgZDE2NmExZTYwNzYwZmQyNmY2MTFhMmMzMzNlOTViMmI0ODEzODFkZCBsZWdhY3ktdHJ1bmsKKzE2MTQzIDg5ZmY1OTE3YmM4YmM3ZjA5Y2RhZTVjMzczZWE5MTdiMDgyMTQ5M2EgbGVnYWN5LXRydW5rCisxNjE0NCBiMmQxMDQwN2FiOWRiY2FjYTZkYzBlN2E0ZThiZTI0OGU2ODg2OGI2IGxlZ2FjeS10cnVuaworMTYxNDUgM2ZmMDIyZTFiOTVkMWFhZjA1YjE4MjJmYWUzNTZlZDc4YzIxYTE4OCBsZWdhY3ktdHJ1bmsKKzE2MTQ2IGVhY2IyZTUxZTE2OTY1MjBiZGM4NWYwMjczZmY3Y2M0YjUxOGEzNDggbGVnYWN5LXRydW5rCisxNjE0NyBhZmYxYzQxNDZjMWMyZjNhODc0Zjk2YjUzNDJkNTNjYWMxNDVkY2RlIGxlZ2FjeS10cnVuaworMTYxNDggM2YwOGJlZGMxYzI2MTUxNmM1MjIzY2JlN2U5ZTIyZDc2M2JhNWMwNCBsZWdhY3ktdHJ1bmsKKzE2MTQ5IDFiZTQ2NjUxOTBmMDY5NTFiMzgyMmIzOGNkZGU4MjhiYTg0YjMyMWIgbGVnYWN5LXRydW5rCisxNjE1MCA4ODA0NGY5ZGY4MzNkNTY0ZDgzZmNjNWM5NzMzODhjMjQ2M2M5OWNkIGxlZ2FjeS10cnVuaworMTYxNTEgMWMwZDM1YmExNmIxYzYyYjIxYzA2MzhkNDI1NWUzYTYyMTM5MmQ4MSBsZWdhY3ktdHJ1bmsKKzE2MTUyIDYyNzU0YjllYzdkZmMwNWY1NjIwZWM2N2Q0YzUwZWY5YTg2YjA5ZjkgbGVnYWN5LXRydW5rCisxNjE1MyAxYjQzNTlhMjk3NmRhYzMzMTY0NzViYjFiZTI0MzBhZDVkYTZhOTczIGxlZ2FjeS10cnVuaworMTYxNTQgYjA1ZGY2ODcyMTVlZjQ0Yzk3ZjVmZTEwZDA4MjFhOGFjN2IzYTI1NCBsZWdhY3ktdHJ1bmsKKzE2MTU1IGJjYjE0NjI3YjhmNDFjYTExMTZkNTA3ZmVmNGM1NzljNWMzZWM3OWIgbGVnYWN5LXRydW5rCisxNjE1NiA4MTA3ZGUyOGJjODIxMzlkMDQ3ODMxMmRhMGFjOWVkYjNjNmY0NzFlIGxlZ2FjeS10cnVuaworMTYxNTcgMzE3ZThlMDljZTg3NzFjNjJjYmM2ZDdjYTI0NGI2MDNkYzI0ZTgwYSBsZWdhY3ktdHJ1bmsKKzE2MTU4IDc1OWY2OTg3NDBjY2YzZDZjZTk2YmY3MzM5OWY4OTA2OGM1ZDBlYTcgbGVnYWN5LXRydW5rCisxNjE1OSA4ZWI1YzM2ZWRlOWU3MTNkNjVlMGZiOGNiMmI4NTY5ODlhMTk4ZjU1IGxlZ2FjeS10cnVuaworMTYxNjAgZThjZTFiYjA1NmFlYzIxY2RkNmZhY2I5OWVkY2I4MGI3NDQyZWZlZCBsZWdhY3ktdHJ1bmsKKzE2MTYxIDIxMTE5MTg5ZWUxODJjYmU4MDkxMmZkZDBhOGE1YjZlZWUwNWI2ZGUgbGVnYWN5LXRydW5rCisxNjE2MiA5OGRiMGMzYzFmYjlkYzAwNDk3M2EwMWFmMDJhODQ5MzcyMDk4MTFiIGxlZ2FjeS10cnVuaworMTYxNjMgOGYxYTJkZWViOWIwMDBkNDgzZTBhNGFjOGE0ODA4YWRlMjU0ODAzNCBsZWdhY3ktdHJ1bmsKKzE2MTY0IDdmYmRiNTgxODM4ZjYzMWJkZDc0YzJjZGIyZTE0ODg3NTE2ZmFiZTUgbGVnYWN5LXRydW5rCisxNjE2NSBlOTVmZjIxMWI5ZDNjN2I4YTAwZjhlMGRjOWViNjFiZDgzZDFlODQ2IGxlZ2FjeS10cnVuaworMTYxNjYgNGNmMjE4NTJmZDUyMTYwMDkxNzYwMmU2MjcyNTNmM2I0OThkNDFlYyBsZWdhY3ktdHJ1bmsKKzE2MTY3IDUzNzE0NzhmNmY1Yjg2ZGUzZTZkMjUxZjVjYTRiMWFkNDM2NDdiNTUgbGVnYWN5LXRydW5rCisxNjE2OCBhNTAzYWY3ZTdmYjdiYTY3YTRlMzBmNTE3OGY2NTE3NWYzYWQ0ZGM0IGxlZ2FjeS10cnVuaworMTYxNjkgZjI2MzNjOTNlMmU1N2U3YTk4Zjg3MDc0MTk0MTVlNTM3ODJlMzYzOCBsZWdhY3ktdHJ1bmsKKzE2MTcwIGY1MjEyYWY5ZTY0MTNmMzE3NGZjYjAxNzExYWY0MmYzYWZlNjlkZjUgbGVnYWN5LXRydW5rCisxNjE3MSBjMzhiYWNkOGVmYWQyZmUyMjgwMDY0ZTk2MTJmMmExNmQxMDY1MGU4IGxlZ2FjeS10cnVuaworMTYxNzIgNTE1N2ViN2JlMjBkNzgwMzJlOWFkZTI2MmM2NTg4M2JjNDdmNTA2NCBsZWdhY3ktdHJ1bmsKKzE2MTczIDlhODM5MTA1NDg0MDkyNzRkMmEwM2E2NGNkNmJmN2U0YmIyMDc3MzYgbGVnYWN5LXRydW5rCisxNjE3NCBlNzEwNmMyZmMyNmNjNDc0M2FiOGNiMDJkZDBiNTM0OGI3NjRjOGI3IGxlZ2FjeS10cnVuaworMTYxNzUgN2ZlYTRhMWFmMDkwOWZlYWE2OWNmMDExMjRjNGRjY2ZjYTMxZmYyMyBsZWdhY3ktdHJ1bmsKKzE2MTc2IDZhNzhlYWQxMzk4NzA0MzY4YjVjZjg0YWZlZmMwNGUyNjliYmM4MTMgbGVnYWN5LXRydW5rCisxNjE3NyAyYmE3NmUzMTUwMTZiMjM2YmQ1M2Q5ZGFkODQ1MmM5MTg2YWViMjJhIGxlZ2FjeS10cnVuaworMTYxNzggZGE2MTA5MzA2MzhiNDc4NTk5NjYxOWM5Y2MyYWYwOGVmYTc5NjU5YSBsZWdhY3ktdHJ1bmsKKzE2MTc5IDcwZTRjYmZjM2IyNDc5YzhlYWUzOTRhMGNhZGMwNWY5NWEzZTQ1Y2MgbGVnYWN5LXRydW5rCisxNjE4MCA4NTUyMGMyMjAwNjdhMjlhYjFhNmJkMWQ1ZTdlYjZlZGY3Mjk4NDZkIGxlZ2FjeS10cnVuaworMTYxODEgZGI5MzkyYTA0YmVkNDIxY2U5ZTAyNjZmMDVkZDQ4NGVlYTFkNWZhZCBsZWdhY3ktdHJ1bmsKKzE2MTgyIGQzZjFlZWZkY2IzYTljYTE2YjEyOTRmYWQwM2FiYTQyZmU0NjljNjcgbGVnYWN5LXRydW5rCisxNjE4MyAzNDZkZjE5MjA4NzM3YWJkZWI2YzkzZGYzZGM3ODQ0MDM1ODQ1NTk3IGxlZ2FjeS10cnVuaworMTYxODQgYWEzZDNiZWNlNzc0NTQ1ZDIyZjYxOGY3M2Q4NzgzYjgzOWI4MDMwOSBsZWdhY3ktdHJ1bmsKKzE2MTg1IGE4NzgwM2ViOWRmYjE0NDdmNTlmZjY1NDFiZjYzYmMwZmZlNTY3MzcgbGVnYWN5LXRydW5rCisxNjE4NiA2NGExNGJhNzQ2NDEzODUzZjAwZDk1ZjY4YzNjMjIxOWNkZDNhNmI3IGxlZ2FjeS10cnVuaworMTYxODcgMjYzYjQ0OTI4NDRhMjA2YTNiOTU0YjcxMzg1ODllNzNjNjIyYmI4NCBsZWdhY3ktdHJ1bmsKKzE2MTg4IDVlYmFkNjg5YjdhNzkyMjRlMDdhNDc0YzA5NmE3NjdlNzM0OGEzODcgbGVnYWN5LXRydW5rCisxNjE4OSA2MThhNzI4MGY2YmU1MGI5NzY3Zjk3NjcyOWM1NzFiYzQzZmI4NDFhIGxlZ2FjeS10cnVuaworMTYxOTAgMGQ2YWYzMDNhODZjYjRkMzY3NzZlOTRkODlhZTlkN2ZkNzg2ZTIxNiBsZWdhY3ktdHJ1bmsKKzE2MTkxIDhhM2Q1MGVkMDZmNzk3YzczNzA2NDQyY2QzMDEwZWVkOWVmNWZkMWIgbGVnYWN5LXRydW5rCisxNjE5MiAwODhjNWYzYjcwOTRjOTU5MjQ5OWRiYTUyODQ2ZjVmYzdiYWRkZmQzIGxlZ2FjeS10cnVuaworMTYxOTMgYzcxMTE4Yjc4MDU5NGJiYmE5MTgwNzE2ZjQwY2Q1OWE3OTA5MGNkZCBsZWdhY3ktdHJ1bmsKKzE2MTk0IGQxNzY2NGJkOWI2NTdlYzU0YmJhNmZjOWIyYmIyYjgyZDAyYWY5ZDMgbGVnYWN5LXRydW5rCisxNjE5NSBmYzc4ZTVhNzgxMmE1MTBhNTk1ODk2NGFlMTYwZTczNjdkMWMyMzA4IGxlZ2FjeS10cnVuaworMTYxOTYgY2RlMjczMThjZjg3YjViZTgyYzE2MjgxNzEyMmQwY2U1YjY4ZGFlMSBsZWdhY3ktdHJ1bmsKKzE2MTk3IDdlM2NkOTQ4MGY2NjM4YWMxNDY0ZTA3MzlmZmMwN2IwMWM2NTk0OWMgbGVnYWN5LXRydW5rCisxNjE5OCBiYzllMjJhZDVjNDYwODExODJiOWIzNjc4MmExMWNlZDc3NTkwMjI1IGxlZ2FjeS10cnVuaworMTYxOTkgOWZkMzMzNjkzMzUwODFkYjc0YjhmZTI1MmZmZTY5NjA5ZDdiYWU4ZSBsZWdhY3ktdHJ1bmsKKzE2MjAwIGRkZjA3NGVjNjUwNjNmODgxYTNkMzFlZjEyNjhkMDg3MzdkNGRlZTkgbGVnYWN5LXRydW5rCisxNjIwMSA5NjhhMDA2ZTU0ODBjMjY4Y2MwODZjZDM3OTY2MjdkMzk2NmUzZjFmIGxlZ2FjeS10cnVuaworMTYyMDIgZjhkMDg0ZTNmOGVjZjFmODNlYTViMjBiZGUyMTMzMWMxMjY0OTcwMiBsZWdhY3ktdHJ1bmsKKzE2MjAzIDVlZGVlNjg3ODk0MzI2MmI3ZDAwNmVjZDBjNDgzNWI4NWJhOTE5MjcgbGVnYWN5LXRydW5rCisxNjIwNCBlZDcyMDY3YWFjMDMyODg0MTMzNTYwZGNiMzQyMzAwNWYyYmRmY2Q2IGxlZ2FjeS10cnVuaworMTYyMDUgN2U1OGMwNjBkNTM0MmQ0ODMyMjI2N2Y0ODg1OTI0Zjk5OTMzMzA2NyBsZWdhY3ktdHJ1bmsKKzE2MjA2IDU3MDlkZGJhNDIzY2M4ZGJmZWRjMTU1OGM4YTZmZjhhZWE5NGQwNjcgbGVnYWN5LXRydW5rCisxNjIwNyAwOTFjYTZiOTM0OGY1MGQ1MThmM2Y2NDVmNzAwNGRiYTZkYjQ0ZDFhIGxlZ2FjeS10cnVuaworMTYyMDggMjNmOTY4OWFjZTUwNjM3N2JjMmU4YjUyZjE3YTY4YzVlMGYxNGJhNCBsZWdhY3ktdHJ1bmsKKzE2MjA5IGE4OWY3ZjI2OGRlNDVmMTE0M2I0ZDliNDFmNjE0NzE1OWM0ZGRiZjMgbGVnYWN5LXRydW5rCisxNjIxMCAzZTEwYWM3YTViZjM2ZmQzYzc2NzM3MzY5NzU2NDhjMTk2ZGIzYWY3IGxlZ2FjeS10cnVuaworMTYyMTEgMDQwOWE5OGNkNTgyZTM2NzVjMzAyNWU4ODlkNzJmZDQzZTVmNzFkNiBsZWdhY3ktdHJ1bmsKKzE2MjEyIDRhZDI2OTY4NjYyYmUwNjI2NjJiNmIyYjdmMmYyZWMyM2Y5NzJhOGUgbGVnYWN5LXRydW5rCisxNjIxMyA4MDhiNDQ2YWY5N2M3NjM2MTFlYTdhODlhYjg2ZWIzM2E5MmE5ZjNiIGxlZ2FjeS10cnVuaworMTYyMTQgZWQ0ZjdhMjJlOTI4Y2FhMjMzY2Q5MjJmNTcyZWU2MzBlZDg5Y2U1YyBsZWdhY3ktdHJ1bmsKKzE2MjE1IGQ2MTk4ZTcwMzYwMmJlMzA3MGIxNjA4Mjc5ZjBkNTBkMTM1YjljODkgbGVnYWN5LXRydW5rCisxNjIxNiBmY2M3NWEzNzQ4ZjU0MTk2NzBmOWQzZGEwODIyYzg0MjQ5NDE4ZTkzIGxlZ2FjeS10cnVuaworMTYyMTcgNDMxNTM4ZmZiM2FkMzIxNDY1YTExZDQ4YTI5Zjg5NTE3MDdiNDI1ZiBsZWdhY3ktdHJ1bmsKKzE2MjE4IDYyMTEzMTVlYjU5MmNlZDJkYTM3OWZiMWNiY2QzOWFhZTJiZDNiMWEgbGVnYWN5LXRydW5rCisxNjIxOSBlZjJlYmIzYjBjNjQ3ZmZhYzFlY2ZlOWU4MjM1MDQ3ZGRkOGQ3NjllIGxlZ2FjeS10cnVuaworMTYyMjAgNzkwOGVjODU1NjY1ZGNiZDRkMjZjNDI0ZjZhNmJlYTJlMzUzZjRkYSBsZWdhY3ktdHJ1bmsKKzE2MjIxIDBmOTVjOTNmMjAwYmRlZWIyZjA1YTk0ZjQxYTk1ZGE4NzY3NmNlYWMgbGVnYWN5LXRydW5rCisxNjIyMiBlNmQxN2YxNWFlNmFlZmFlOTViOWExNDEyMjNkMDlmOTUzMWQxNjc1IGxlZ2FjeS10cnVuaworMTYyMjMgZjZjZGVhYzQ0YTEwNTI4ZGU2MjQyMDM4NThhMDZmOTRjNjE2NzFjMSBsZWdhY3ktdHJ1bmsKKzE2MjI0IDRjZjBkZTI5YzA4YzcxYWJlZTk1YjkxZWY3ZTZiMzBhNDcwNzA1M2UgbGVnYWN5LXRydW5rCisxNjIyNSBiNzA2NmJiNzk1ODEwY2IxOTRmYTEwNTEwM2Q4MWM3YWU5OGQ4OGZlIGxlZ2FjeS10cnVuaworMTYyMjYgZWE4MjM1ZWRmYzk2MTU4MzcyZmE5OWI4Yzg2NDg0YjEzYTE4NTM2NiBsZWdhY3ktdHJ1bmsKKzE2MjI3IDhlOTJkOTQxZTA3ZjUwNDQ5Yzg3YmRiYzU3MTJhNjg2NDhmZGNiZjMgbGVnYWN5LXRydW5rCisxNjIyOCBiZmFkZDM2M2EyMDBhMzFhNjhmMTIxODU4YmI5MTRlZTdmYWRkNDNkIGxlZ2FjeS10cnVuaworMTYyMjkgNjY5MDM3NGExZGMxYTVhMGVhYjgwNGRlNjkwOTVmMThhNTJlMjkwYSBsZWdhY3ktdHJ1bmsKKzE2MjMwIGI5MDdlYmYzYjA1MmI5MzIxNDQ2NGQ4Y2JmNTJjYzkyMjI3N2U4NDggbGVnYWN5LXRydW5rCisxNjIzMSBkZDdlMTM5MTUzMjhmYzlhNTkxNzRiODgxOWUzYzA4NjIyMjU3MDBmIGxlZ2FjeS10cnVuaworMTYyMzIgNzViMGU4Y2IwNzgzMWQzZGZjZmRkY2Q5MjcyYzRlNzdhNDgyNjliMiBsZWdhY3ktdHJ1bmsKKzE2MjMzIGRmMTg5ZjljZDAxMGRlYTBlZmNkODk5ZjIyNDAxOTQwYTA3OTkxNjcgbGVnYWN5LXRydW5rCisxNjIzNCBkYmU4M2ZkMjMzOTNhMjEwOTk5YWFiNDQyMmQwMWE5NjdmYmEyMzJkIGxlZ2FjeS10cnVuaworMTYyMzUgMzFiMWY2OTFhN2Q5MTg5ZTdiNzc5ZWVhMjY4YTUyMmVmMWZiYTcyMSBsZWdhY3ktdHJ1bmsKKzE2MjM2IGUxYjA3MGQ3MTYyYzhkZTc2NmFiYjQzODJjNmQyZGQ3M2JjN2RmMzkgbGVnYWN5LXRydW5rCisxNjIzNyAyZmYyNzg1ZTUyOTE5YzFjYzYxYzVjYzEwZThhM2U1ZjYwZjQ3OWJkIGxlZ2FjeS10cnVuaworMTYyMzggOGY2NmM1ZmZhMjZjODYwNTI1M2M0ZDQ1MWM3OTRlYjc1MGI0NDlmNyBsZWdhY3ktdHJ1bmsKKzE2MjM5IDE2MjJiYjI0ZGE1NTY2NGQzOGQ0NTgyMGViYWMwMmJiODliYzQzNjYgbGVnYWN5LXRydW5rCisxNjI0MCA3MGQzNTFmY2I4ZDU5MDBjODZlYWJmYjI0Yzc1MmM2MGZlNzk3OThlIGxlZ2FjeS10cnVuaworMTYyNDEgOTNhZTM0YWEyMGFiMzYzNTY3YjFhMmUwY2I0M2Q4OGMzZWVkMDkwYyBsZWdhY3ktdHJ1bmsKKzE2MjQyIDYwODRmOGQzYTgyNWMwYTc2NDdiMjQyZjNiOGFkZDVhMzAwN2Y5NTUgbGVnYWN5LXRydW5rCisxNjI0MyAzYWJlY2IzNDczN2ZjYzgwNmVkZDIyZGNjNmI5Mjk0YWVmN2Q2YmEwIGxlZ2FjeS10cnVuaworMTYyNDQgMDAwYTFjN2ViMDlmYmNmYTg4ZmE0M2U2YzJlZTBlNTkzNDg2NjI3YyBsZWdhY3ktdHJ1bmsKKzE2MjQ1IDg3ZjgzOTY4NTFiMmFhNjVmMTRhNTNjYjk1NDU0ZTBmMmU4MDkyYjYgbGVnYWN5LXRydW5rCisxNjI0NiA2N2ZkMTlkNzQ1MjgxOGQ2OTRhYjZiNGI5Njg1OTkyZGJlMDY1MmQ3IGxlZ2FjeS10cnVuaworMTYyNDcgZTRlYzc3ODc5ZGRkMDJlZDg4YTI2NTY1ZjRhMTMzZmFhMjI1NzQ4ZSBsZWdhY3ktdHJ1bmsKKzE2MjQ4IDMyYjY4NmRhM2U1MTkxM2E3NDc0MmFkYjcxYjNlMjRkMTA3YjhjMTEgbGVnYWN5LXRydW5rCisxNjI0OSA4NDI0ZWM0YzRiYjIwMzBjZTM2MTI5YzgxNjVhYTgxYTYyMzBjMzJjIGxlZ2FjeS10cnVuaworMTYyNTAgYjMxMzExYTc4YTVkYTY1MzE3Mjk1MWJmMTE0ODFlZWRmZGUyM2I2NiBsZWdhY3ktdHJ1bmsKKzE2MjUxIGY1MGJkY2IwZGQwZWFlMDFkOTAwNmUxMmZmMmJhYmIwZjQyYjM0ZWYgbGVnYWN5LXRydW5rCisxNjI1MiBjYjUzOTgyNDQ0OGU4NWUyYjUzY2YyYjVmYWM4ZDI1ZjI4OWZjZWMzIGxlZ2FjeS10cnVuaworMTYyNTMgNWRhODQ1NmYyZTRkMzQ0MzdiYzI5ZjBiOWY4YTlhMTI0ZDk3ODc5YSBsZWdhY3ktdHJ1bmsKKzE2MjU0IDUwODdkMWQ0NWYxZGE2NmNlZTdmNTE1MjM5NzZhZTZjZjFjYmJmOTggbGVnYWN5LXRydW5rCisxNjI1NSA4YmFjZjg2MzFhMTFjZWNlNTgwZGUzNmQzMzdmN2YwYzk3MDk0YjI5IGxlZ2FjeS10cnVuaworMTYyNTYgNGFhMTJlNTViZjk1ZDFkZjIyM2I2NDBhYTE2MGYwODI2YTNkYWY2ZiBsZWdhY3ktdHJ1bmsKKzE2MjU3IDQyM2E1Yjk1MGNjOTgzY2EyOTU0MDhiMjViNjc1NjVlODMwNThmNTMgbGVnYWN5LXRydW5rCisxNjI1OCAwM2JjNTFlNDNmN2FmNzU1YmVlMGEyZDcyOTlhMmM4ODZlMDczMmE0IGxlZ2FjeS10cnVuaworMTYyNTkgOTU0NTRiNzNlYTkxZDNkNmJhMmRmNzMxM2MwZWU1MDYzNzQxMjlmYyBsZWdhY3ktdHJ1bmsKKzE2MjYwIGM4MzA4NTRmYTUwN2FkZGE4M2Q1ZjY0YjlkYTc0MWM4ODdjZjMwYjMgbGVnYWN5LXRydW5rCisxNjI2MSAwNDY3OTlhMDgwNTdjMjlmYjlkZjhmMDJmMDdjMjE4YjZkMDY3ODc3IGxlZ2FjeS10cnVuaworMTYyNjIgZDljYzYyMGZmMTg2ZWY4YWFmYjYxYWU1ZTM4Y2I2NWVlZjk1YTkxMCBsZWdhY3ktdHJ1bmsKKzE2MjYzIGNhMzJmZjdhMDY3ZTY5NWMxZDNiMjJmNTlhOGIyYjE3MmVjY2EzY2IgbGVnYWN5LXRydW5rCisxNjI2NCA3MzQ4Y2NlZWU4ZmFhOWQ0Yjg3NTViYjRmMjg2OTM5ZjQ2MWFkMjQxIGxlZ2FjeS10cnVuaworMTYyNjUgNjQ4NDA5OGY0MGZjM2QyNDhkNGQ1ZGIyYTUyNWYwYzY3OGMyNTVkOCBsZWdhY3ktdHJ1bmsKKzE2MjY2IDgyNTZkNjE5OGVjMmY3Yjg5YjI0N2Q5MmZjMDE1MWIyNGFjM2UwOWQgbGVnYWN5LXRydW5rCisxNjI2NyAwZWRlYjRlZmU2ZGJjMzljZTc3OWIzZTMyNzEyYTg2M2NjMzk3YjQxIGxlZ2FjeS10cnVuaworMTYyNjggODZiMzY3ZDJlN2FmYWJjZjA3YmIwZmEwZjJiYmE4Mzg5MjYyMjI0NiBsZWdhY3ktdHJ1bmsKKzE2MjY5IGMwNWViOTAyZTU2MDBkNWU1MGQ1NWQwZTQ2YzgxODZmNTczYmQ0ODEgbGVnYWN5LXRydW5rCisxNjI3MCA3YjBmNDQ4M2MzMzE3NjA0ZDQ5YjM3Y2ViMmM5YTYwMGY3Yjg1MmY4IGxlZ2FjeS10cnVuaworMTYyNzEgZmE3NDE5ODhkYjE3ODVkODMzYTg2YWQ3NzIwMjgyOTZlYjA4M2IzOSBsZWdhY3ktdHJ1bmsKKzE2MjcyIGQwMTg0ODUyNzFmYjRlMDAyYzcyMThlZDE5MjliNzg4ZGY4NzQ2NWIgbGVnYWN5LXRydW5rCisxNjI3MyAxODM5NWNhNWMzMGVmYmI3ZTIxZTFiNDY1MDg1MGQwM2Y0ODk3ZWE3IGxlZ2FjeS10cnVuaworMTYyNzQgOWE0MGYxOGYwNTYxZmZmMmM2NGI0OGI3OWRhMmY5MWJiOGRjMDA3MiBsZWdhY3ktdHJ1bmsKKzE2Mjc1IDYwNTdmNDRiMGI3YWM1Y2M0Nzk5MTQ1ZTY0NTE2OWUzOWE3ZjI2ZTYgbGVnYWN5LXRydW5rCisxNjI3NiA1MzA0Yjg4ZmUzY2NmMDc5ZTU2NDM1ZmI2MTUzMjE3ODgwNzQ4N2NlIGxlZ2FjeS10cnVuaworMTYyNzcgY2Q3YWJiNGZlYjFiYTZmM2Y1YTNhYWMzZmQ3OGZlNjE4YjBjMmE0YiBsZWdhY3ktdHJ1bmsKKzE2Mjc4IGU0NGNhNjFkYjcxNTg0ZjU0YmQwM2QwNDllNGZmNjAyZmM1NTY5YjIgbGVnYWN5LXRydW5rCisxNjI3OSA0ZjExMDQ0MWRiMzkxODJhYTM3MWIyOWIyNDVlMTkzM2U4ZTcxNjI0IGxlZ2FjeS10cnVuaworMTYyODAgODY3MDQ0MzJkMjgzYTVkNGE3ZGM1MDk2M2YyOGUzNzMzZmI5Zjk0MyBsZWdhY3ktdHJ1bmsKKzE2MjgxIDA3MGU0MWYyNjk3YjZjZjk3NmU4MTBjMDM0NmJjZmNiMTcwNzhjNDEgbGVnYWN5LXRydW5rCisxNjI4MiAyN2Q4N2UwNzJiZmIwNTJjOTk3MmNmZDRhYzNlNjk4MjkxNjkzZGYwIGxlZ2FjeS10cnVuaworMTYyODMgNGRiYzc1YzE4OWJjZWQ5Y2UwNjM1ZmQ4Y2I2N2Q2NjNiODQzNWVhMyBsZWdhY3ktdHJ1bmsKKzE2Mjg0IGFjYzQ2MzhmMzdkNTdhNjBlMjVhZTg3NzNmN2Y5NzhjN2Q1NjZlNmIgbGVnYWN5LXRydW5rCisxNjI4NSAwMjQ3NGRmNTQ2ZjYwMGEzZGFmMjc3NWNmMTQ4MWYyOWFjMzEzYWJjIGxlZ2FjeS10cnVuaworMTYyODYgMTZlNDkwNDYyZTZiZjE5OGQxNTE3ODY3ZjBkMDQ4ZDdjZWU0MDdmZiBsZWdhY3ktdHJ1bmsKKzE2Mjg3IGYzMzZhMjY3YTJhMjU2Mjk2NGNiOTdhNWJmODg2NTE5M2JhNThlYjAgbGVnYWN5LXRydW5rCisxNjI4OCAzNjg2ZDEyMzYyYjhjMDk2MGZiOTdkNTQ0YmQ0NTQ4NTNkZTM0ZjZiIGxlZ2FjeS10cnVuaworMTYyODkgMDdjMzExODJmMjM3MWQwNDEyM2NhZDkyY2Y1NWMxMjU5MGI5NzZjMCBsZWdhY3ktdHJ1bmsKKzE2MjkwIGU4NDhkNmVkM2ViOWQwM2M2MjYyMmQxYWY0OTI5N2U2MWNlNzE2OTAgbGVnYWN5LXRydW5rCisxNjI5MSBiYWJhZTkxMGMyZTEzYTM2MjI5ZjhmNjk3NGJmYTJjMTM2YzYyMDkzIGxlZ2FjeS10cnVuaworMTYyOTIgZWQ1NjViMGZlNjQ4NDE3OGIxYjNhODQ3ODcxOWU2YTU5ODlkYzNhYyBsZWdhY3ktdHJ1bmsKKzE2MjkzIDMwNDk1ZDczYjk0MzYxNWE2NDdmZjM1ZTExYmRjNjFhMGRhZTRjYjAgbGVnYWN5LXRydW5rCisxNjI5NCBiMDYzNmE1MjdhODc5OTlhZGY5MzEwMjU0MDFmYTI1MTBmYmUzNmY3IGxlZ2FjeS10cnVuaworMTYyOTUgMWU3YzMyYmRkYjhmNzAwNDM0ZmI1M2Y5ODU2ZTUwZjBjMjcyMjNjMiBsZWdhY3ktdHJ1bmsKKzE2Mjk2IDQ3ZmVjNDhjYTQ5NTk0NjliMWM2ODY5ZTI0OTVjNWYwNjE0YTE1NGEgbGVnYWN5LXRydW5rCisxNjI5NyA4YjEzNDVmZjk4MDEzZjkyZjhlZDg3Y2MzNDU5OWU1YzRlZDUyMzk4IGxlZ2FjeS10cnVuaworMTYyOTggOTdjZDQ3MzYzOTJjMTc3NzliMGM5NzE2ZDg3NzM4NGFiYjk3MjdlMCBsZWdhY3ktdHJ1bmsKKzE2Mjk5IGI5ZjlkYTFhM2ZjNDczZjUxMzA1NzkyNDUxYmNhYWUzNDUxODQxYzYgbGVnYWN5LXRydW5rCisxNjMwMCA0MjI4Nzc1ZDQ1NWVkNTdiMTRhOTliMmFkNjllNjMwODFkMTEyYWI2IGxlZ2FjeS10cnVuaworMTYzMDEgZmVhYjY3NzI2OWUwOGMxNWVjMGZhYTk1ZWY2OTM3ZmJiMzVkZDg5YiBsZWdhY3ktdHJ1bmsKKzE2MzAyIDA2MTVkY2VmMDI0ZGUwNWQzNjEyNzc1NDBiZGFjZTFkNmZjNzljNjAgbGVnYWN5LXRydW5rCisxNjMwMyA5ZGJlZTRiNGMwM2ZkYWM4ZDNiM2U2MmI2ZDUzZGVjMGQ2NzAyNDM1IGxlZ2FjeS10cnVuaworMTYzMDQgZGRkNjEzOGM5ZTZmZTc2MmRiYTFlNzMxY2FmODA3MGEzMzNmMGE1ZSBsZWdhY3ktdHJ1bmsKKzE2MzA1IDdhYTUxZWJmNDgzZjk5MmQzZTQ5MDI2YThiZDc0OWEwNjRkMzcwNDEgbGVnYWN5LXRydW5rCisxNjMwNiAzY2Y0ZjVhZWUwMGUyZmFjM2ZkNDA5NGNiYjYwZmJmZTZiZDdlNWEzIGxlZ2FjeS10cnVuaworMTYzMDcgMWQ2NjMwNzkyMjEyNTkxMWE2M2VjNTBkMjg5MjAyOGM1MmI5YmRlYyBsZWdhY3ktdHJ1bmsKKzE2MzA4IDFmODJhNGJmZDI5NDU1OGU1YTgxOGI3ODE4MTA5Y2U1YTc0MTMyZmEgbGVnYWN5LXRydW5rCisxNjMwOSBkYjk2M2E2MTViYzkzMTJjMWM5NmMzMTM0MTM5MjA5MmUwMmFiZjIyIGxlZ2FjeS10cnVuaworMTYzMTAgZDhiODc0OWRlMDRhYmE2MWQ2OTgxZjhhOTAxY2UzZjkzOTVkYjQyZCBsZWdhY3ktdHJ1bmsKKzE2MzExIDMzMzg4OTI3YWMyZmFhNzkwMWZhNjQ1ZmZkZTA1YmExZjRmZDljMTAgbGVnYWN5LXRydW5rCisxNjMxMiA5NWI5ZGRiMDAzNTIzZTM2N2ViYjY4ZTdjNzI0YmNiMjI3MTRjZjk4IGxlZ2FjeS10cnVuaworMTYzMTMgMTViMThlMGNjM2ZkMjQ4MjkwMDgzODlhNmYzN2IzNGMyN2M1NjhjOSBsZWdhY3ktdHJ1bmsKKzE2MzE0IGRkMmI1MjE4ZTA2OWVhMjllODhiZDMwZTBjNGZiOWM0MmQ3NDcwYTcgbGVnYWN5LXRydW5rCisxNjMxNSA2MzFiNmEwM2MxNjBlYjljMzJhNjA4ZTAzMTkxMDIyYTM1MTJmOTM4IGxlZ2FjeS10cnVuaworMTYzMTYgOTA2ZWZjMWRhMjQ3YTM2MTU3MWZmMWJkZmNjYjg3ZTIxMTRiZjM5ZSBsZWdhY3ktdHJ1bmsKKzE2MzE3IDljNzRiODIzOWZmODBmODcyZDc5NzU3ZTBkN2Y1MWU2ZmM0MTk2MzQgbGVnYWN5LXRydW5rCisxNjMxOCAzN2IxYTM5NjA2Y2U4YmZiNGE3ZTgwMzZkNDNlMjNiZWJjOTM0ZmVhIGxlZ2FjeS10cnVuaworMTYzMTkgYzM5NmI2MDI2MTdkYzQ2MGI3NzlkMTg1MDlmMmUwYTM1Y2IzNmI3OCBsZWdhY3ktdHJ1bmsKKzE2MzIwIDZhNDQzNmQ2OTU4YjBjNjc0OTNlYzM2Mjc0NTE1ZWI4NDhiZmM1MGEgbGVnYWN5LXRydW5rCisxNjMyMSBiNzg2NTM2ZjIxYWNiZjgzODEwMTlkZjRlZjA3MmU0ZmYyMzI2MjMxIGxlZ2FjeS10cnVuaworMTYzMjIgNjk4N2U5NDUwNjE5YjdjYmRlN2ZjNzRlNzlkNDAwNDlhOTVlYTliMSBsZWdhY3ktdHJ1bmsKKzE2MzIzIGVhNzMyNzE5YjNmZDA3YzAxNDMxMmNkMTNjYzU2MzliY2ExNGEyNzMgbGVnYWN5LXRydW5rCisxNjMyNCA5MTlmM2Q1MTcyYTk1ZWYzM2RjNTEwMmY0ZTRhZmNjZmU5ODhlYmVmIGxlZ2FjeS10cnVuaworMTYzMjUgZDFmNmI2NTYxMDNiMmMyMDA4ZmMyNzA4M2U0MmIxNWZlNWRkZDIwNyBsZWdhY3ktdHJ1bmsKKzE2MzI2IDc5OTFhZWIzNTk4ZmViMmVlN2IxYzdkNGY3ZTRmMWM3ZjBiNWI4MzggbGVnYWN5LXRydW5rCisxNjMyNyBlNTU4ZWIyMjhhNDYzZjU0ZGQ1Y2VhOWNkZGU5ZmQwZTFjOTgzMmNkIGxlZ2FjeS10cnVuaworMTYzMjggNDdhOTQ3MTk1NmFmOWJmYWJkMTZlZDFjZWU4Njk2MmExYzgwMTgwZiBsZWdhY3ktdHJ1bmsKKzE2MzI5IGNmYjJhMGQwYTg2OTZmMzc3NDIzNDA4NjQxMmRiNDIzZWNiZmJhMmYgbGVnYWN5LXRydW5rCisxNjMzMCBhYzJiYjc3MDgzMjBkYmU0NzUyYTk5MGM5YmRhMzE5ZmJiZDk3MmMzIGxlZ2FjeS10cnVuaworMTYzMzEgNWQ2MWI2ZjJhZWEzY2RhMWE3MzEzODQzYWVlNGQwNGI0NTQ3YmJjYyBsZWdhY3ktdHJ1bmsKKzE2MzMyIGVmM2VkNzVmMTk1Yzc4MGE3ODhjNGFlODIyNjgwZjQ3MzRjYmQ3ZTggbGVnYWN5LXRydW5rCisxNjMzMyAzYThjNjcwMzA5YTIxZGI0YjE3NjZjNWRkOGRlYjZmMDk5NWE0N2M4IGxlZ2FjeS10cnVuaworMTYzMzQgZTQxN2Q5NTI4ZmQ2MTE1NDRjMWZlMTM0N2MyNjlhNGY4OWU1OTIwYiBsZWdhY3ktdHJ1bmsKKzE2MzM1IDAxYjIzMDcyY2M3Njk2NzYyMjEyNWY0YjI4MmYwY2YwYzVhNmExYzkgbGVnYWN5LXRydW5rCisxNjMzNiBjYjc2ZDdkYTY3MDI3OWUwZTY4OWY4NTRjODQ4YzQ1MWUyZjQ1OGUwIGxlZ2FjeS10cnVuaworMTYzMzcgN2MxMTlmMDUwMjkwZTNhMmQ5ZmNlMTMwODc0Y2Q5NDJiMWY3MTc2NiBsZWdhY3ktdHJ1bmsKKzE2MzM4IDYxZTRjMjlkNTNkOGQyNzdiYzhjMjQ5ZWZhMWI3M2FhZDEwZDYzYjEgbGVnYWN5LXRydW5rCisxNjMzOSAyZTQ1YjdjMjNkYzY4NjVmODE4YWZjNDFjNjQ2NDY4MjlkYjljN2MwIGxlZ2FjeS10cnVuaworMTYzNDAgYTAzMjEwMWVkOTI2NDRjMmU2MmEzNmE1ZTAxMzhhMDQ1MTNhYjg5OCBsZWdhY3ktdHJ1bmsKKzE2MzQxIGZmZDVlOGI2N2M4NDMzMmIyOGZkNDZlYmE1YTk1ZDM2NjcwNTRjOWYgbGVnYWN5LXRydW5rCisxNjM0MiBiNGI2ZjM5NjJiZDEyMzk4YmEwMzg2ZDVhMWNhNzA2ZTYyZmUwYmQwIGxlZ2FjeS10cnVuaworMTYzNDMgZTg3MWJkMDVjNmE3NDRkMjViY2ViODg0ZDJhNDRjYTE2OTkzNjVlMyBsZWdhY3ktdHJ1bmsKKzE2MzQ0IDA4NGE3NTgwNTFlMGUxYzZlMmI2ZGUwNmM2MzVjOTEwMjVlZmZmZmQgbGVnYWN5LXRydW5rCisxNjM0NSBhZDFjODI3MWI2ZjgyODg2MGU1NjZmMTMxMWQxZWExOGJiMjhiMGFkIGxlZ2FjeS10cnVuaworMTYzNDYgMjk3N2ZiYWU0Y2E1MWI0YTA0NDA4ZTBlMzAwMjc4OGNjNmU0ZWY0OSBsZWdhY3ktdHJ1bmsKKzE2MzQ3IDg5ZjkwNTg3MGMwYTkwZGU3YmFjNjc3Nzk3OGRjYzlhZWI5Y2JlYjAgbGVnYWN5LXRydW5rCisxNjM0OCAxNGNlYjE1OWU0NDk5YTM3NjZlMGEzMGYyMDhmNWJjYzczY2QzNWM5IGxlZ2FjeS10cnVuaworMTYzNDkgN2MxMjdhNzlhMzY5ZTU3NGU3YzhiYTQ3ZDFkMGMzZjFhMmJhMjIxZSBsZWdhY3ktdHJ1bmsKKzE2MzUwIDRmYWY4YzIyZGE2MGJlMmEyZDc4MWUzYjFiZGQ5NjM5ZjYxZDE1NjcgbGVnYWN5LXRydW5rCisxNjM1MSA1MDI1MTE1ZDIzY2YyYjFmMGQzMWE4OWY5ZGQ0OWZiN2EyYzg5ZmQ2IGxlZ2FjeS10cnVuaworMTYzNTIgYzUwM2Q4ZTQ3NGIzNzBjMmEzYzkwMWQwNDZkMWMyOTdlMDQzYjU4MyBsZWdhY3ktdHJ1bmsKKzE2MzUzIDIwNzdiZjE0MWIzNzdhNDQyNjg0ZGQ0MDg1Yzk2YjJmMjM2MTYwZjkgbGVnYWN5LXRydW5rCisxNjM1NCA5Y2E1MGUyNDMzZWI0MWVmMjQ5NmMzNDM0OTJiY2YxMTE4ZjNjNDVlIGxlZ2FjeS10cnVuaworMTYzNTUgZGY2NGNjMGU4NGUyYTkyYTc0ZTk2ZTQwNDE4OTNiM2IzODI5NjVmMyBsZWdhY3ktdHJ1bmsKKzE2MzU2IDU5NDliNDc1ODdkOTU1NWJhNDZkYTI1YTYxZjZjZDJhOTQyMTg5YzYgbGVnYWN5LXRydW5rCisxNjM1NyBhMTNjZWE0MzBjMTM2MGU0ZThjMmUxM2M4ZDIzMzlhM2VkOTM2ZThhIGxlZ2FjeS10cnVuaworMTYzNTggOTMwZjRiYmJkOTNhYTZkMTU1OTNmNWFmOTc2OGUzMmMxM2U5ZmU1YSBsZWdhY3ktdHJ1bmsKKzE2MzU5IDI1ODQ2OGEyMGQ3NDU3NmU1ZGQ3YjMxZDYwMjg4OGE3NTlkZTA4YmEgbGVnYWN5LXRydW5rCisxNjM2MCAwN2Q3NDAzY2ViMGYyNWFjYzNjNjRiZTNmOGEzMDA0ZTAyOTQwOWE3IGxlZ2FjeS10cnVuaworMTYzNjEgMzI2MDIyMGFhZWU0M2QyYzU3ZjY4Njc0ZmFmNTBiNDQwNDExY2UzNCBsZWdhY3ktdHJ1bmsKKzE2MzYyIDM5ZjU0YjlhN2Y5Y2I2OTYyMjQzMGUzZDk3OTYzYmM2YTg5OTc1NDUgbGVnYWN5LXRydW5rCisxNjM2MyBlZjhiMjBiOWY2ZjUzNzE4Mjc2MmMwY2M0YzY1MDhjOTVjODk4OWJmIGxlZ2FjeS10cnVuaworMTYzNjQgZDdhZWMxN2NkMGI1MDQ2YjU5NDgwZDZkNTlhNjllMGM3M2UzZWZiMSBsZWdhY3ktdHJ1bmsKKzE2MzY1IDQyYjY3MmEwOWM0YTEwM2U1NTlmZDYxMDMzYjAyZjhiNjhiODRhZTcgbGVnYWN5LXRydW5rCisxNjM2NiA0ODNlNzVlZmMxMTEyMTgwZGZhNGYwY2Q0MzAwZjI1N2RmNWI4MTJmIGxlZ2FjeS10cnVuaworMTYzNjcgZGMxN2VmMWE3NjEzODBjYmVlZTJhZmE0MjBmMTdmMjgyYTQ0ODEwYyBsZWdhY3ktdHJ1bmsKKzE2MzY4IGM5YTRhMTMxNjE3MDgwOTBiMDczZjg0Nzk2ZmIzOGIxYzM0YjA3OGEgbGVnYWN5LXRydW5rCisxNjM2OSA1NTgzY2ZhNmQyYjBmM2NkYjE0M2I0OWFkMDQ4N2E0YzMyODBlNzU3IGxlZ2FjeS10cnVuaworMTYzNzAgYTkwMWMyYzAxNjZiYWE2YTE5NTI4OWJlYzMzNWUzMGMzOTFjYmM0YSBsZWdhY3ktdHJ1bmsKKzE2MzcxIDI5NTk4N2YzZmJkMjIwMTI3NDE5OWE0ZWRlZGMxODhlYWQyNzE0OGYgbGVnYWN5LXRydW5rCisxNjM3MiAyZWNhNDA1MWYwNWNiNWY5NDE1YWY5ZDZiMjkyYzJhNDAwZDAxYzE2IGxlZ2FjeS10cnVuaworMTYzNzMgODhiNGYzYjUwOGRhYTU5ODliNWMyNjk0M2VhOWRhYTg0NzU0MTZhZCBsZWdhY3ktdHJ1bmsKKzE2Mzc0IGYzNDAxZWQxMzJhMTRjZmY0YTYyODNlZjM3MGJjY2VhZmUxNTMwODkgbGVnYWN5LXRydW5rCisxNjM3NSAyNjA3NWMwM2YwMjI3OTU5NWIwMmIyNzU1Zjc4MjM5ODkyNjQwZjdkIGxlZ2FjeS10cnVuaworMTYzNzYgZTc4ZWRjM2NmYWU2ZWFlNzMyMzZkODcwODU2ZDUxNjFjMjVmZGUyNSBsZWdhY3ktdHJ1bmsKKzE2Mzc3IDg3YTQxNmQ5ZDliNmY3NDAxNTRlNmUzYTBlMzg1YmRkOWMzNTg1YWEgbGVnYWN5LXRydW5rCisxNjM3OCBmN2Q5ZTYxODVmNjIyMmMxZWIyZDc0ZmI0ZTZiM2E2OWRjODY4ZmMyIGxlZ2FjeS10cnVuaworMTYzNzkgZmE4OTQ5NjU4NGM2MjdiM2ZkZWMyMzJkMzJkZWU2NWEzNTMwMjdmZiBsZWdhY3ktdHJ1bmsKKzE2MzgwIDA4Njk0N2NkMjAyY2MxMzU2ZWExODNkNzA4ZDM4ZDE0YmJhOWFmZDAgbGVnYWN5LXRydW5rCisxNjM4MSBiNzQ1NDhhOTBhNjNjMDM2OWVkZDI0NzkyOWNmNzVhNTIyZjRhZjJjIGxlZ2FjeS10cnVuaworMTYzODIgNWI3MjdhYjM3MDkyZDU3MmFhNzg5NGY2MzljY2UxMDBjNjg5OGYxMSBsZWdhY3ktdHJ1bmsKKzE2Mzg0IGYxMWM0NzI3NjRhZDM3MTcxN2NhMTllMzE2ODIxNGU5MGVhZWQwNzUgbGVnYWN5LXRydW5rCisxNjM4NSAzNzkxOTY3Y2IzMmVmODZmYzQ5MTQ1MTcwMDIwYTg3NmEzM2RkMzNiIGxlZ2FjeS10cnVuaworMTYzODYgMTY3ZGU0OTUzODEyZmFjYWE2YWQxYmYyMDMwMjQyYmVhZWQwNmE5MyBsZWdhY3ktdHJ1bmsKKzE2Mzg3IDgzYTU5NWU2OTFlNDI2MmI3YzI0MmI2MGNiODVhZGVmZGEzMDdlNWMgbGVnYWN5LXRydW5rCisxNjM4OCBmZGZkMTA0OWYzNmU5NDNlN2Q1OTQ2OGVkOGE0ZTk0ZDM1ZjQ5ZTQ5IGxlZ2FjeS10cnVuaworMTYzODkgZjRkYTQzNTVhY2RlNjJmZTYyY2E2NmRiMzBjOGE3ZjdkMmVhZDdjYiBsZWdhY3ktdHJ1bmsKKzE2MzkwIGY0MDg0ZjQ0M2YzMTlkYTU5OTRhNTcyMjcwYjYxZTc1YzEyNjRiNDQgbGVnYWN5LXRydW5rCisxNjM5MSBkNmQyM2Q1ZTI5NmQ0MmY0YWNhYmY1MTBkNzczMjY2NmZkYWI1ZDZhIGxlZ2FjeS10cnVuaworMTYzOTIgYTFhZDc5MWUxODIxODJlZTZjNzE0MTQ4ZTg4MWRhOTg0MmY2NDYwMyBsZWdhY3ktdHJ1bmsKKzE2MzkzIDczYzY2MWJlMWVhM2RlNjNmNzM4NmRmNzkzODk4MTZmMjNhY2I5MmQgbGVnYWN5LXRydW5rCisxNjM5NCBmZjgyZmQ0MjJmMWMxYTMyOGQyZTNhYjE2NGE5MTgxM2U5ZjViYjUwIGxlZ2FjeS10cnVuaworMTYzOTUgMDg1OTYwN2NhM2U1M2JhYWYzNTFjZDhlYmFkZjNiNTU4YTA5ZTUzYSBsZWdhY3ktdHJ1bmsKKzE2Mzk2IGUxNDY5YjdhMmU2OGRiMjkyNmUyMDkwYjc0MTJiNTllMmNlYWFhYWYgbGVnYWN5LXRydW5rCisxNjM5NyA2ZjBkOTZlNmI1YTUxM2NiN2IxNDA3ZjNjNjEyYzM0ZmFmNzQ0ZDY1IGxlZ2FjeS10cnVuaworMTYzOTggZGZiN2VjZmZmZTNkNWIxYzY2YjY0YjdmMTJhOTU3NjI3NGFkMjg0NyBsZWdhY3ktdHJ1bmsKKzE2Mzk5IGI1MTIwZjU4YzVkYTU4MzEwZjhkZjdjMWNlNmZkNjA1YTRjYjE4YzIgbGVnYWN5LXRydW5rCisxNjQwMCBkOTAxYzQzZTdkNThjZTk5ZjdhZjg0OTBjMmIzNGM4M2ZmZGFlMzdjIGxlZ2FjeS10cnVuaworMTY0MDEgNTgzOThjMGY5NDhiYzg5Njc2Mzc4OTA5YmRhMTQ0OWE0MWM1ODg0NiBsZWdhY3ktdHJ1bmsKKzE2NDAyIGUyZTI1ZWVlNmE0YjE0N2I4Y2QzMzM3OTI3Y2UzMTgxMWQ2ZTc5MmMgbGVnYWN5LXRydW5rCisxNjQwMyAzNzE4ZTUzOThmYWQzNGI3NjgyYTkxNjJjYTdkZmM0ODBmODViNjlmIGxlZ2FjeS10cnVuaworMTY0MDQgMzhlYTI3NDU1Y2JiM2NiODg3NGE4OTg2Mjc2MjUwYTdmYmVjNDc2NSBsZWdhY3ktdHJ1bmsKKzE2NDA1IGRhY2M5ZjE2N2U5NTlmZjcwYjZiZmZmNmRhZDgyMjgyYTQwZmVkMzQgbGVnYWN5LXRydW5rCisxNjQwNiAxNTI4YmMzYWM3M2Q1MDMxOTQ4YzZlNDNjYzg4OGQwZTdiNzQyM2Y1IGxlZ2FjeS10cnVuaworMTY0MDcgMmQ1YWEyMTJhMzIyYjJmOTk1ODMzNzIzMDZlNDNhZTQ2ZmVjMTU4OCBsZWdhY3ktdHJ1bmsKKzE2NDA4IDBjMDhkZmE2MzRjMzRlNDdiYzMzNmM1NTg1Y2ZhYWNjYjNkMjFmMGUgbGVnYWN5LXRydW5rCisxNjQwOSA1MjU5NWI3MGE1Njg0ODhmYTM1Njk1YmE5MWIwNTk5ZDI1ODQzZDA1IGxlZ2FjeS10cnVuaworMTY0MTAgYjJmYmQ5ZmNlMDVlNWU1MDA1YmUyM2Q5M2Q0ZGIzMGU3YjJmMWY2MyBsZWdhY3ktdHJ1bmsKKzE2NDExIDhlZTRhMjA5YTllZjViYWJkMWJmMTA4MDQwOGM2ZGUzZmJlOGUzYTAgbGVnYWN5LXRydW5rCisxNjQxMiBmODA1NzFiYjI5MTNlNzg3NzlhNDQxOTMxZTM2Yzk3YmY3ZGY2NDczIGxlZ2FjeS10cnVuaworMTY0MTMgM2Q2ZDIxOGI2NzNkMGNmMTQ1NWEzMDgyYTljMTBhMWU0NGRkZjhhYyBsZWdhY3ktdHJ1bmsKKzE2NDE0IDhhMDYzNDIzZTBiN2RmOTk3NDg4ZjMxZTZiYjZlYWM1N2M5NzIxMjUgbGVnYWN5LXRydW5rCisxNjQxNSAxMTdkMjA5NjhhMTA0MmQwMDUxODg0NTM3N2FjMTI1YTlmYzE5MmYxIGxlZ2FjeS10cnVuaworMTY0MTYgYTc0YWE0OWIwYzM3ZmFkOWVlNmNhYTBmZGEyYjliMjE2ZDczYmE1ZCBsZWdhY3ktdHJ1bmsKKzE2NDE3IDBiYjQ5YjNkYmRmMGFjYWRiZTM2ZDBlMDBhMDZiMGZlNmU4M2FkNjIgbGVnYWN5LXRydW5rCisxNjQxOCAxMjY1MmRhNmQ2MzJiYTA4ZDI3NTBmZGUxOGM3YWM3NjgyNDI5ODFmIGxlZ2FjeS10cnVuaworMTY0MTkgOTlkZDFjOTMzMTYxNmJkYjg5NzdjZjE0MjQ5ZDkyNTBlNDU4OGY3OSBsZWdhY3ktdHJ1bmsKKzE2NDIwIDZhNTMxNGE2YzJjMjk5ZTMzYzczYzc5NGFmMzFkYTNhM2ExMDJlOGYgbGVnYWN5LXRydW5rCisxNjQyMSBmNzk0MzRlZTQxZmE4NjAxOTIxNjI0MGJhMzJiZTY2MGJjZmM1NDE5IGxlZ2FjeS10cnVuaworMTY0MjIgZTc4MTUzZTE3OWZiY2NhYTUxMjk3YTA5MTE1ZjNmN2E1YWFlNjNjOSBsZWdhY3ktdHJ1bmsKKzE2NDIzIGExY2UwNzIxODc4MTM0YjM2ZDUwZGIxMWZkODJmMDdkODQzZGZlZmMgbGVnYWN5LXRydW5rCisxNjQyNCBlZjI1ZjMyYzQ1MjM5M2YwZDRkMTAxYzMyNzM0N2ExNDNlMDE3ZWQzIGxlZ2FjeS10cnVuaworMTY0MjUgYTM4NTZhYjZiMjA2ZDdkMmNmNmJhNjc2YjBiNTE5OTdjZWFmM2Y2YiBsZWdhY3ktdHJ1bmsKKzE2NDI2IDI5ZGEzNTU0MzgzMzIxNjAzNmQ5NDE1Mjc1Y2MzZWNjNjBjZGI3YzMgbGVnYWN5LXRydW5rCisxNjQyNyBlZTEwODM0ZDY3YTM2YzRmN2IyNjMwODNkN2JhNzNmNmEyYjQ3NDE1IGxlZ2FjeS10cnVuaworMTY0MjggZWFmYjc5OTYzZWE2NGVlOTE1MDRkZGI0ZTI4ODFlMmM3ZDk1YzA0MyBsZWdhY3ktdHJ1bmsKKzE2NDI5IDM2ZGU3YjZhYjdlYjk5NDE3MDEzM2MxY2MzOWQ4ZTA3YjA2YWRjYTggbGVnYWN5LXRydW5rCisxNjQzMCBhNmM3YmZkZDY3Nzc0NjRhYmU5NDc5ZDI4MmI1NTk5YWY5OTk5OWNkIGxlZ2FjeS10cnVuaworMTY0MzEgZDdkODFlYTljODJkZTAxNzcxOWM1M2NmYzgxNzQxM2VmYjlmZjYxNiBsZWdhY3ktdHJ1bmsKKzE2NDMyIGU5NGMwNTM1MWQ0Mzc0YmVhNWQ5YTBiYjRiNjE3ZTUyYmFhZDU2YTcgbGVnYWN5LXRydW5rCisxNjQzMyA0Mzg4MjQ5NTA2ZDE5MGE3NmE0ZGJiYmM3MDI5NGVmNmJhMDY1NmQ1IGxlZ2FjeS10cnVuaworMTY0MzQgMjY2ODViZDJjMDllNjFiZjM4OTY1NWY4M2VmMTRmNDJiNTYwNTVkMyBsZWdhY3ktdHJ1bmsKKzE2NDM1IGJmYzViMmE4YzExZjVlNjI2NjgyYjk4ZDM3NmZhMmVmNjk3MGEzOWQgbGVnYWN5LXRydW5rCisxNjQzNiBjYzBjMGRjOWZlZjBkYzQ0MWI4NTYzYTliNDRjOGQwNDBjMmUwM2I5IGxlZ2FjeS10cnVuaworMTY0MzcgYzkwZDk0ZDI4N2Q3OWI3NDVlNGI1YTBiZDU1MTVjZWRhNzMxNzRlNiBsZWdhY3ktdHJ1bmsKKzE2NDM4IGIxOTU5ZjAwNjU2NjU5MWIzYmUxNDAxYjljZDBmMTY0NTFlYmM2MDAgbGVnYWN5LXRydW5rCisxNjQzOSA1NDIzYjEzMmJjOTdhZjRkMjQwNzZjZWYxNmYyNzNiNjRmYWYwNGQzIGxlZ2FjeS10cnVuaworMTY0NDAgZWRiMWE4ZTZiODU5NTk2MGJiZGQ3OGJiYzYwYWUxZjdkZTc1YmQ5MiBsZWdhY3ktdHJ1bmsKKzE2NDQxIDMxNzdlMjgyOTE2Nzc5N2VhMDgxNmNmNzA3MmU0MDNjZjhjMjdhZTggbGVnYWN5LXRydW5rCisxNjQ0MiA2MWY2NWRlMTllMWU2OGVhYWM5NzVlM2JjNTUyNDcxMTJiZmIwNDJiIGxlZ2FjeS10cnVuaworMTY0NDMgOWY2MTg5ZTg5MjEyMTU5NDY5YTYxNWVhNzI0MTA1OWRkYTgyZjJhMiBsZWdhY3ktdHJ1bmsKKzE2NDQ0IGIwZTgzOTYyZjRkYTcwOGRiNzhlZjE3MGI0NDMxMjNiYWIzYjJkMGYgbGVnYWN5LXRydW5rCisxNjQ0NSA3ZGUxOGYwNGY4NWE3N2ExZDU1YWI2MTkxYmZlM2JjNTk1ZGE3NTVhIGxlZ2FjeS10cnVuaworMTY0NDYgOGNiMjRlMGJlZjliZTU5YzNkZjUwOGZkNjE4M2I1Y2YzODRkOTliYSBsZWdhY3ktdHJ1bmsKKzE2NDQ3IGVjMTlhMGE4Y2Q2ODc3YjE5ZDQyNWU0OGM3YWFmMDg1YzdiNDdiOGYgbGVnYWN5LXRydW5rCisxNjQ0OCAxMjljOTc3NWNjMTkzMjBjZTU4OGUwNGNhODdhMzQ3NzBlYWVkNTk4IGxlZ2FjeS10cnVuaworMTY0NDkgOWE1ODU1ZWEzZTU2YWU1NDM5NDA1NzNmNTdiZjM5ZGVmNDkwNTNjMSBsZWdhY3ktdHJ1bmsKKzE2NDUwIDYzODMyZWRlNTc3ZmM1OWY5YjQ4YWVjOTllYjRmNGVkNWEwZjYzM2YgbGVnYWN5LXRydW5rCisxNjQ1MSA5NTg5NGMzMTA4ZDE5ODVmNjA0ODVlMzQ1YjEwMzY4MWY4MTFhMTM2IGxlZ2FjeS10cnVuaworMTY0NTIgOWRiODZiMjcyNzhmYzkyMzY1YThlNDY5OGY3NjM2NmZhMjdlYWE5NSBsZWdhY3ktdHJ1bmsKKzE2NDUzIGMwOWMwMTcxNDc0ZjBmNDljMWRhYmMwODRkYWQ4NDM5OTZiOTkwZDUgbGVnYWN5LXRydW5rCisxNjQ1NCAwZjFjNjA1M2U4ZDA5MjIzNzI4Y2E3OGFkY2UwNjg3NmUzM2M3YWJlIGxlZ2FjeS10cnVuaworMTY0NTUgNzkzYmJhZDZkMDljZjA4MzhjNTgwYmM2MWUwNDkyNDgxYjJmNDczNiBsZWdhY3ktdHJ1bmsKKzE2NDU2IDI1ZmM2ODA3N2I2NjU0MzQwMmU3MmFmODlhMmJkYzBhYmUzNGYwNmIgbGVnYWN5LXRydW5rCisxNjQ1NyBiNTRmMTFhZGE5MWVhMDEzODg1YTMxNDhhZDViZDA2MGJjYmU2ZWJhIGxlZ2FjeS10cnVuaworMTY0NTggYTI4ZWQ4YzVlNjJlMDI2Y2EyODM1Y2E4NGI3ZTVmMzcxMGVjZDFkMiBsZWdhY3ktdHJ1bmsKKzE2NDU5IGJiMzY0ZDZmOWY2OTI1NjA0MTYwYmUzNmM0MmUyNzg1MDc0MDJjZTggbGVnYWN5LXRydW5rCisxNjQ2MCA1ZTJlOTFmZmFkY2Q4ZTQ4NWVmYTQxM2YyYzhhZmE0ZWNkZTM5YjQzIGxlZ2FjeS10cnVuaworMTY0NjEgY2IyOWQ0YTJjMTdiMGIzZmVmYjRjNjdjMzkzZWUwNzI5ZmM4NTViNiBsZWdhY3ktdHJ1bmsKKzE2NDYyIDAyNmUxMmFjOWY3MWI0MzllY2M3MDZmZWY0NmQzYTNmMzAxNWNhZDggbGVnYWN5LXRydW5rCisxNjQ2MyBkNmRkZWQzYzg1MDc3OGVjMTliZTNjZTg3ODc2NDkzYzEzNTJlODdhIGxlZ2FjeS10cnVuaworMTY0NjQgYzY4MDAzZWZiNzk2YTNhMWQwOGQwY2IxYmRkNzdkOTJiYTYyZWI1NyBsZWdhY3ktdHJ1bmsKKzE2NDY1IGY4NDBiZjZhMzM1MWU2MzhjYTQzMTQwNWE2NjAxMWE3MjM5M2RmNDYgbGVnYWN5LXRydW5rCisxNjQ2NiA5Nzk3MDE2OThjZDI5NzExNWZkYzMzYThhYjVjMGE2ZmUwNjJhNjljIGxlZ2FjeS10cnVuaworMTY0NjcgYzlmZDUyZDdjYTBhZTdjOTQzYzk5Zjk0ZjllYmIxODRlY2I5NzA0MyBsZWdhY3ktdHJ1bmsKKzE2NDY4IDQ2MWY5YjZlZTU1NTc1YmE1NjFhY2E1MTc5NTY1OGFmNDNlMTBiN2YgbGVnYWN5LXRydW5rCisxNjQ2OSAyZTYwM2JkMGMxYTkzZDdjNDcxMjkyNGFmNjE2NTMyM2I3YjgxNjgzIGxlZ2FjeS10cnVuaworMTY0NzAgZGQ5ZmZhMGE2YjExMDdlMDc3NjExMmViNmFhOWJjN2JjY2I3NjNmNCBsZWdhY3ktdHJ1bmsKKzE2NDcxIGZlODllYTFjOTEwODk4YmEzZGJhMTk5NzRkNTkzZmMwMGZmYWQzNDkgbGVnYWN5LXRydW5rCisxNjQ3MiA0ZTJhYWYxZTcyMmE3ODcyNTE3MjcwNjA4Y2YxZTI4NjI4M2Y3MzM3IGxlZ2FjeS10cnVuaworMTY0NzMgNjk3Yzg4Y2M0NzE0ZGZiMDJkNjNlYTIyZmQxMWM4ZTAzNTEzZTY0OCBsZWdhY3ktdHJ1bmsKKzE2NDc0IDQ4ODg2ZmE4MmFkNTBlODZhYTVmODVlY2U1ZjgyZGE5NTVmZDc2ZjAgbGVnYWN5LXRydW5rCisxNjQ3NSAwMDAzMGViODgxMzFmODQwZjNiMmJlZTkyZDAzN2VjNGM5MzYxYTQxIGxlZ2FjeS10cnVuaworMTY0NzYgYzg3YTM3YTNkMmU2NWI3NjE0ZDcxY2RkM2EzNWRiZDE5Mjc1MmFjYSBsZWdhY3ktdHJ1bmsKKzE2NDc3IGM5ZDAzOTE5NmRiNjEwOGIyMmVhZTNiYTZhMDlhNWM1YTc2YTczOWUgbGVnYWN5LXRydW5rCisxNjQ3OCAwNmQ0MjI1OTE5ZDRkMjYzNzI2NzljZTMwNzEwYzZhN2U5ZTZmOWQxIGxlZ2FjeS10cnVuaworMTY0NzkgNjU3OGZhZjQ4Y2QxZDQ5Y2Q5ODk3MDQ1ZTg5OGY4Y2VlNTYzZmI2ZSBsZWdhY3ktdHJ1bmsKKzE2NDgwIDVjM2VlNzZkMjQyZTNlOGYxZWQ2NmRhMTlhYTNiZDc2NzljM2RlMTggbGVnYWN5LXRydW5rCisxNjQ4MSAxNzI5M2YxMmU4ODQwZWIyZTdmODQwMTA4ZTUwY2FhOTM0NzIzMTQyIGxlZ2FjeS10cnVuaworMTY0ODIgNzY3YjJmN2JlNDBlNjNkZmU1NDhlMGQyYmZmNzg1MGJkZGYyNTEyYiBsZWdhY3ktdHJ1bmsKKzE2NDgzIGQzZjY5NDAyMzY0MjViY2Y4OGEwMjI1ZDIzNDE5MDU0OTdjOTkzZWYgbGVnYWN5LXRydW5rCisxNjQ4NCAwNWQ1OWY0NDc2YWQ1MGY2YTk0OTY0ZDJhNmJiZTA3OWYxMzNkY2IyIGxlZ2FjeS10cnVuaworMTY0ODUgYjNlOGQyZTNkYzczYjA0YjBlZDEzZGVjMjRmMmVlNmVjMjY1NjIzOSBsZWdhY3ktdHJ1bmsKKzE2NDg2IGI3YzkzYzY3N2U1NjU4OWU2NjAzN2NlYTFhNzQ3ZDkyZjAzZTgzMTUgbGVnYWN5LXRydW5rCisxNjQ4NyA1N2QwMmY2MzRhMDJiNzc4OTBjNjA5MmRiZmQxN2JmZTAyYWVhMzc5IGxlZ2FjeS10cnVuaworMTY0ODggNDQ5ZGQzYTAwYmQ3MjkyOTg5NmViMTA3MzRjZGY4OWNjNjQ3M2VlNiBsZWdhY3ktdHJ1bmsKKzE2NDg5IGVjYjhhYWNmZjJlM2FlODZmZjUzN2NlMGIwZGI5MmI1MzQ2YzE5ZmQgbGVnYWN5LXRydW5rCisxNjQ5MCAwNTE3N2NkNDQxYTE4ZTc4Njc4ZWQ5N2E2ZjQyYmQyYmQzZjEwYWUzIGxlZ2FjeS10cnVuaworMTY0OTEgYjc2OWUyZGQ2YTUxYmZmZDY2MDdlMGY1Nzc5ZjNkYTAyNTJkMGRhMCBsZWdhY3ktdHJ1bmsKKzE2NDkyIDU0ODYxYmY2NzQ4ZGE2M2Y3ODRmNmRlODI4YWM4NGI3ODBjYzExZmMgbGVnYWN5LXRydW5rCisxNjQ5MyA2ODlmMTkwMDQwNjM1NDM2YjkwMTcyZmNkY2I3MWU1MzU2NGY4OTUwIGxlZ2FjeS10cnVuaworMTY0OTQgOGQ5OTZmOWM1OTAzYmYwY2Q2ZTdiNjhiZTY2ZWMzOWZkYzdmMWUwZSBsZWdhY3ktdHJ1bmsKKzE2NDk1IDljZTNlMDViN2ZkYjI3NGE2YTc1NTk5NTFlMTg1MzIxZDA3ZTg2OTUgbGVnYWN5LXRydW5rCisxNjQ5NiBiYTM2YTljM2Y0NzcxNDIwMzQ2MmQyYzJkZGE4Mzg5OGQ1MDcxYWMwIGxlZ2FjeS10cnVuaworMTY0OTcgM2I2OWE5ZDA0NGYxYzQzMWY3ODMyMjEyMjNmZWQyMTM1OGE2Y2JkYyBsZWdhY3ktdHJ1bmsKKzE2NDk4IGE5NDlhNzJhZjk2OWNiMmZmOTQwMmExZjg0OTVlNGZkMGE1N2RmMmEgbGVnYWN5LXRydW5rCisxNjQ5OSAzMmNlMjU0ZjNiZWE2ZjkwYmE0NjZjMTI5NWI2ODExN2IyODAyNjZjIGxlZ2FjeS10cnVuaworMTY1MDAgYzMxYjEzYjdkYjc0MDc1MTA2OGI2Yzc0YmY0NWViMTA3OGI2ZjZjOSBsZWdhY3ktdHJ1bmsKKzE2NTAxIDE0NzVjMWNjM2JmMWVlOWMwMTU5NWJkODdkNjFjYmEwNmYzNDRhYjcgbGVnYWN5LXRydW5rCisxNjUwMiA4MmQ5YzJmMTMwOThlNWM3NmZmNDlhY2NiZDZlZWZkZGU2YmQxNDM0IGxlZ2FjeS10cnVuaworMTY1MDMgOThkODE2OTU2M2U3MWQ3NGFhZTM2YTMxZDQ5Y2I2YjRkNmJmNGRiYiBsZWdhY3ktdHJ1bmsKKzE2NTA0IGY2NWI4NjczOGQzYjU4YzIxYjEzOTZmNjgxMTdiNmY1M2JkZGZkNmIgbGVnYWN5LXRydW5rCisxNjUwNSBlZThmMDllNDEzOTU0NjFiYWI4YThlMDE4ODA3ZDM2NTg0MWZhYzkzIGxlZ2FjeS10cnVuaworMTY1MDYgYzc2ZTc0YWJiNjViYWYzZGVmNTQ0NWViMzI0MDc1NTljODBiMGI2ZCBsZWdhY3ktdHJ1bmsKKzE2NTA3IDVhMzExNGU4YzAyN2E5NDYzZWE4NDkzODI3ODJlMjY4ZmJjODUwNmMgbGVnYWN5LXRydW5rCisxNjUwOCA1YzA2N2MxYjVlZDBkOGE1ZTY5MWY3OTM2OWQ5MzFlOTcyZDVjNTUzIGxlZ2FjeS10cnVuaworMTY1MDkgYTQ0ZGJiZGU1ZWNmZGE1NzlhOTY1OWI5ZGJiM2E2NmMyOWE0NWRhOSBsZWdhY3ktdHJ1bmsKKzE2NTEwIDdhZTlmYTQwOWI0NmYyNmM1MjMxMDNmNjFiMzgzY2ZmNTQyY2NlZTQgbGVnYWN5LXRydW5rCisxNjUxMSAwODNiNGU1NDcxNzFlZjlhNGRiZTQ1NzJkMWQ1NGYwZjcxNDA0NjNiIGxlZ2FjeS10cnVuaworMTY1MTIgMWU5ZjMwZWVjNDgyNDQ4MWVkYmFhMDMxNDJkM2NmMGUwNmEwZDVhNiBsZWdhY3ktdHJ1bmsKKzE2NTEzIGRmZGI5MTFjYmVjMjUyYzkzNjY1YmJjMWQ3YTlmOGFkYWZiNGI0YjcgbGVnYWN5LXRydW5rCisxNjUxNCA4M2RiYTNmNWY3YjQ2YTAwOGI5MDAxZDk0MGI1NTU3YTBiNzY4MDcwIGxlZ2FjeS10cnVuaworMTY1MTUgOGQxMDc1N2E1NzViMGE2Y2ZlNTFmZDg4YTM0MzI4YjA1OTczYzFmZSBsZWdhY3ktdHJ1bmsKKzE2NTE2IDg0Zjg1NzlhMDc5Y2RhYWJmZGJlZDk1NWE4ZTE0OTUwODVmMmQzZmYgbGVnYWN5LXRydW5rCisxNjUxNyBlOGRjMGEwYmU0YmFjYzA4MTdhMTQ1YTU2NmQ3MjFmNTcwOTBhMTcwIGxlZ2FjeS10cnVuaworMTY1MTggNjMyYmU5OWNjMmNiMTM4NGMwMmM1ZjVkYmQwODNlYTc3ZjMyNDVlMiBsZWdhY3ktdHJ1bmsKKzE2NTE5IDAwZWQ0Yjc0MzAyZmQ3ZTg2NzllMDViMTdmZGQxYzA4YmQ1YTY1ZjQgbGVnYWN5LXRydW5rCisxNjUyMCA2N2I5YjA1Y2U1YTVkZmIyNzUyMTYwM2MwZTY0Mjc1Yzc2M2FkNThlIGxlZ2FjeS10cnVuaworMTY1MjEgYmMzN2U2YTMzNWYyMTVkOWI5Y2E5M2Q1ZjM2YzU0YzMxMGE4ZGNhYyBsZWdhY3ktdHJ1bmsKKzE2NTIyIDQ5M2IxMDY1NzYzZGJmY2JjM2YyNDIwZTg1ZTgwOWNjMzQ3NjAxNmMgbGVnYWN5LXRydW5rCisxNjUyMyAxNmI2MGJkNmMzNzVkYTliZjRmYWU2ODBkNTBhODBlNGRkODgxMzc0IGxlZ2FjeS10cnVuaworMTY1MjQgZDg5ZGExN2I0NmY2MTBhYTVmY2Y5NjIyOTEwM2ZlZDA3YmE4MTZiNiBjbnJpLTE2LXN0YXJ0CisxNjUyNSA2ZjhkMjRiMzMyZDM1ZDU5NWNmNGYyYjJkMWFkZWQ1MDBhNzcxZjRkIGNucmktMTYtc3RhcnQKKzE2NTI2IDU5ZjhjZWRjZjA0OTUxYzMwZmQ4YTBjMmEyOWNhMTNjYjg1MjU0N2YgbGVnYWN5LXRydW5rCisxNjUyNyAyZDAwYmNlZDYwMzg3MGEzMjczNjhhMTY1NjI5Y2VkZDMwYzgxNTdmIGxlZ2FjeS10cnVuaworMTY1MjggYzFmYzQwNjY0NjAzODJmM2QzMzkyMjc2ZWQ4MzM0Mjg3MTJhMDllYSBsZWdhY3ktdHJ1bmsKKzE2NTI5IGZkYmM4NzMwZDM1Njk4OTcwZGRkZTQwZjk1NTNhZWQwZTkyZmM0MGUgbGVnYWN5LXRydW5rCisxNjUzMCBiMWI0NzRjYzg5NjY0MzdkYTRlYTIxNGVlMTY2NTE0NzhjYTczMTY4IGxlZ2FjeS10cnVuaworMTY1MzEgZGFkMDEzMTdiZWQ3MmZhZjcwNWViNTA5NmYxOWQyOWYzMTIyN2IxMSBsZWdhY3ktdHJ1bmsKKzE2NTMyIDhiYmMwZTY0MzJhYjQ4MmJiODc4YmNkOTc4MzYwMzY2MTY2NTIwZWMgbGVnYWN5LXRydW5rCisxNjUzMyAzMjNkZTNhOGZmOGViYzI1YjhmMzZiODU1MjA5NTlmY2UzOGM3M2MwIGxlZ2FjeS10cnVuaworMTY1MzQgZjcxY2QyNDUzNWM0MDYxOWNjOTE2MmQ5ZjMyNDUzZDdlMzJjYjMwMCBsZWdhY3ktdHJ1bmsKKzE2NTM1IGIwOGFiMmNkZjc0MmQxMGFkYzgyZjI0MzE3MmEwOGNjODQwYTEzMjggbGVnYWN5LXRydW5rCisxNjUzNiAyY2ZmY2Q3MWQ1ZTQxNDcxNDgyZDNjY2NhNGJhM2MxMTZlNTU2NDg5IGxlZ2FjeS10cnVuaworMTY1MzcgZWVhNTEyNzVhY2JmYjQ0MmZhZWRhYzQzZmQwM2Y4NWYzYWZhZWYwMCBsZWdhY3ktdHJ1bmsKKzE2NTM4IGI2ZDkzZGJhMTIwZWFiNWQ1NjEwMjIzN2MzZjIzOGE2ZGY1MjhmMjkgbGVnYWN5LXRydW5rCisxNjUzOSBmMWM5N2FmNGM4NDcwOWJlNjJhNzBmNjZiMDRmZjExMzA4MDg3ZGNkIGxlZ2FjeS10cnVuaworMTY1NDAgOWZiY2ZiZjhhMWQyOTJiOGZlZjAzYmQzOGRmYzU2MzRlNTA1ZDY5ZSBsZWdhY3ktdHJ1bmsKKzE2NTQxIDMzZGYzYjUxNjcxMTllMDUzYjBkZTMyMGFkYzM1NjNhMTIxZjllMTUgbGVnYWN5LXRydW5rCisxNjU0MiBiMzkwM2UwNTAxN2YxNjA0MmE2NTA5MTYwZmE2ODRjNDc4ZmI2MGQ1IGxlZ2FjeS10cnVuaworMTY1NDMgZjZlNGE5ZGQ2N2NkZDNlYTRhY2NlZjc2OTY2NjNhZjIzNTVkOTNjZSBsZWdhY3ktdHJ1bmsKKzE2NTQ0IGFiNDJkNDU0MjQyNDg1MmY5MGQ1OWUzZWYyOGJlMjJhNTQwYjI4NjMgbGVnYWN5LXRydW5rCisxNjU0NSBlMjBmZTAwNTI2ODA5NTU0YzA4YjRmNjFiODhlNGEwY2U2YzgxNjhjIGxlZ2FjeS10cnVuaworMTY1NDYgYWQzOTAyNDBlZmIzYjA5NWFjMWE4ZmJjMTI4ZTA2MmI3YjAyODg2MyBsZWdhY3ktdHJ1bmsKKzE2NTQ3IGZmMTExZDI4OTkwNWQ1MjQ3N2MzNTkxMTA5MTY0ZDdjNzk5NTFiODEgbGVnYWN5LXRydW5rCisxNjU0OCBjMjRmNzc1NWIxZjUyNTUxZDA1YmRiZjM5YjVkMzE0YTlmMTA4NGQwIGxlZ2FjeS10cnVuaworMTY1NDkgMWMxODYwMzA2ODgyMjk3MTZjZWUzYWJiMTMzN2JjZWMyNmM1YzZkOCBsZWdhY3ktdHJ1bmsKKzE2NTUwIDQyMDQ1NjRhYmYyMGM1M2ZmZWE2NGM2NTAwYWIxY2Y4MjkwN2QxMGEgbGVnYWN5LXRydW5rCisxNjU1MSA2NjU3OTU2YWYzMWUwYWE2NWZkMDU4ZThmZDUzYjgyZWJiZmEyNGM3IGNucmktMTYtc3RhcnQKKzE2NTUyIGM5MzY4N2Q2YzczMTcxOGY5ZmMyNGM5MmIyZDVlMjc1OTlhNmUwMzMgY25yaS0xNi1zdGFydAorMTY1NTMgZjEyOTBhYmEyOWRhNGEyNzhhYWU4ZmM0MmRhOTg4ZDkzMDYyZjQxYiBsZWdhY3ktdHJ1bmsKKzE2NTU0IDFmOTY2ZjBkNDY3Y2ExZGE3NGJmNjI1NTgxMzJiMDUxNDcwNGI3YzYgbGVnYWN5LXRydW5rCisxNjU1NSBmNjY1MTNhMGRlYTVhNTVlMmFmYTI0ZjgxNDQ4ZjFiYTMxZDkzNWZkIGxlZ2FjeS10cnVuaworMTY1NTYgNGVkZDEzZWI3NTlkMjZjM2Y2MDhhNjg3ZjExN2EyMzYzMWYxNzFjYiBsZWdhY3ktdHJ1bmsKKzE2NTU3IGM2NmU5OTFiNWYyMTdjYmE2OThkN2QwNzg3MGNjZjM0MmE2YzliMzYgbGVnYWN5LXRydW5rCisxNjU1OCAwNjM3NDEzZTU5Mzk3ZTc0ODVjNWE1NjhmNmJlOWRhZDcyNjY1ZmVmIGxlZ2FjeS10cnVuaworMTY1NTkgMWI3ODEzNTc1YWY3ZGM5NDI4ZGZlYTZhZjYwMDllMzE0OGU5MDE5NSB1bmxhYmVsZWQtMS44LjIKKzE2NTYwIDM1Mjk2OGVlNDBlNjI5YWQyNzgzZmZkYTBjYzViNjc5MjkwNzcyZjQgdW5sYWJlbGVkLTEuOC4yCisxNjU2MCA2ZjdhYjc0YjEyOThkYWM1MWEyMTQzYjJmODNiMmI2ODAzZWExMmQ1IGNucmktMTYtc3RhcnQKKzE2NTYxIDhmYmYzMDdiOTBhNmMyZjRlNDdhZmFkNzRiYTU0ZWU4ODdjYmMwOTAgY25yaS0xNi1zdGFydAorMTY1NjIgMTM2ZDNkNzI2NjZhNzk1M2ZjNzQyZTM4ZGUxNzFhNTBiNWQ1NDdiMSBsZWdhY3ktdHJ1bmsKKzE2NTYzIDRjMTBiYzgxMWZlZGFhZDZhMWI5Yjc5MGY3NzZmOTQwMDE1YTA5NTkgbGVnYWN5LXRydW5rCisxNjU2NCBiYTEzODNjOTg3YzhkZTk4ODI4OTY0MGEzMGIyY2FiNTQzMmUxOTc5IGxlZ2FjeS10cnVuaworMTY1NjUgODI5NWY4NTA2ZWFlYTc1OTZmOTNjNzVjZWMwMTYyNWRkYWFiMTkxZSBsZWdhY3ktdHJ1bmsKKzE2NTY2IDQyYTRhNDE3YjQ3NTAzZmQzMWMxMWNmNTg1MTY1ZmMwYjg4MzI3OWMgdW5sYWJlbGVkLTEuMjMuNAorMTY1NjcgMmM3ODY4OTZlNTQ5ZDRlZWI3NWYxYjQ0YmMzNzhjZWMxNDQ3MDg5ZiBsZWdhY3ktdHJ1bmsKKzE2NTY4IGUwMGQzY2U3MWY4OTNhYmNlNWIxNzY3MGFlOGE4YmZhZjE0NzhiNzAgbGVnYWN5LXRydW5rCisxNjU2OSAwMzFkYWUwOGEwYTk4ODAyZGE2ZGFkZWY2OGEwZjg0YTc4NzlmODhhIGxlZ2FjeS10cnVuaworMTY1NzAgYWM0OGQwNzdlYWFjOTdiYzVjZjMyMjk0ODA0OGRhYWVjOGVmMTU4YyBsZWdhY3ktdHJ1bmsKKzE2NTcxIDU0NjYzMjRiYjgxMTRlZjdiYTg4OWZhOGY0NzFmMjQyNTM3NTc4NjcgbGVnYWN5LXRydW5rCisxNjU3MiBmZDQzNzI3ODc2MTFhYTcxZWNjNjk5ZGJkYjZiOWUwN2U0MGM2OTExIGxlZ2FjeS10cnVuaworMTY1NzMgYjFhN2Y2MWFiNzgxMWIxY2UyOGQ3NGI1MmViMGNlMGYxNDk1YThiMCBsZWdhY3ktdHJ1bmsKKzE2NTc0IGU4YjIyYmM4OGQ5NWVhM2Y3ZjFhZTA1YWJjNTkzNmFiNWYzNjM2MGEgbGVnYWN5LXRydW5rCisxNjU3NSBjNzdmODg3M2RhODQxMzI0ODJjMmRmN2U5NTE2YzI3NmU5MDBlZDkyIGxlZ2FjeS10cnVuaworMTY1NzYgMTE2MjU2MzNkMGY2NzAwZmMwMmU4Mjk0ZThmNTNkZWQ2ZjZjOGZhMyBsZWdhY3ktdHJ1bmsKKzE2NTc3IGRlOTA2NjJmMmVhYjE1NDZjY2VlNWFkNDc3MjIwZDY2MmQ0NzI0YjAgbGVnYWN5LXRydW5rCisxNjU3OCBiYThkYjk2ZWE0ZDlmZDQ1Y2RlN2VlODM2NmNmOWQ1NzFmNTA0NWViIGxlZ2FjeS10cnVuaworMTY1NzkgMzc0ZGE1ODJlYzEyZjRkYWE4ZmViMDZiZGRiZjEwMmUwNTAyMzBkNSBsZWdhY3ktdHJ1bmsKKzE2NTgwIGYzOTY4ZGQxNzExYjI1YWI3Yjc1OTBjNGY1Yjg4ZDFjYjk5NmU1OWYgbGVnYWN5LXRydW5rCisxNjU4MSA3NjIzN2MwY2JmMTMzZjZkYjhhNmRjZDk1YTVhZTY5OWVlM2QxYmQ2IGxlZ2FjeS10cnVuaworMTY1ODIgZjM4ZTMyMWJlOGE0MzY0MTYwMWEyODZlMTBjMGZkOWVmNzY0NzE1ZSBsZWdhY3ktdHJ1bmsKKzE2NTgzIDY0ODczY2YyMGIxNmI0MGY5OTExMzhhZTBjODhmMTllN2RkYmI3ZDQgbGVnYWN5LXRydW5rCisxNjU4NCBhY2QwNzU1ZWU3NzI1MTM4ZjcyNTBmYzQ3N2M0ZDgxZDBmYjA0NjM2IGNucmktMTYtc3RhcnQKKzE2NTg1IDRmNzM3ZmIwNDUyOGRiZGIxZWQyNWNiMmY3NWU0MmM5NTVjZjk3MzAgY25yaS0xNi1zdGFydAorMTY1ODYgNDFhZDM2ZmIwMGVlOTM1ZWZkOTZlM2Y3YjYxNDRlNTI2ZmNjODg3MyBsZWdhY3ktdHJ1bmsKKzE2NTg3IDQ1ZDhmMjNkZjIxODJjMWQ3NjY2OWU0OThmYTRkZTBiMTgzNTBhYzEgbGVnYWN5LXRydW5rCisxNjU4OCA1MWYyOWZjYmQ5YmE1YTMwZTM0ZmJiODkxOGIyNWQ1NWNhZTJjOTNjIGxlZ2FjeS10cnVuaworMTY1ODkgMzNmZjRkNGQ5MWFjM2Q4YjM3NzIzNmY1OTUzMWFiZWRkYTcxNGY3NyBjbnJpLTE2LXN0YXJ0CisxNjU5MCBhZmJiZTY3NGQ1OGEwYmFiZmU5YTljNGY3YzkzYWI3ZTQyMzU2NmJiIGxlZ2FjeS10cnVuaworMTY1OTEgM2MwZjc1YTIxOThmZjE5MTIzMzE4ZTQzY2EzYmUxYzE1ODkyMDU5YyBsZWdhY3ktdHJ1bmsKKzE2NTkyIDY2MjJkNzYzMWNjZmYxZjcwZjUwNWRmMTczMjllYThiMmI3NmY5YmIgbGVnYWN5LXRydW5rCisxNjU5MyA5NWVlZTg2ODYxMWVjNjhmN2MyOTAyZTFhY2IzOWE2ZWMyNGE5NjQxIGxlZ2FjeS10cnVuaworMTY1OTQgOGJkODJjZjM2MWFhNDI0MDg1NGNiNDI4NjE4OTg3YjFkNDViODA5ZCBsZWdhY3ktdHJ1bmsKKzE2NTk1IDM1ZTIyNjY4NmMyZWQ4MDBhMzg3NDg2NzFhZGFjOTMzYzk3ZDc5NWEgY25yaS0xNi1zdGFydAorMTY1OTYgZDQzMDA5N2QxYmZkMTg5OWUzMDQ2NzllNGZkMzA2ODZmNzA2YjdiNiBsZWdhY3ktdHJ1bmsKKzE2NTk3IGM1N2I1NzRlNjc2NjRkYzJjOGMwYmQ0MTMwYzViOWVhNWM3NjY2OTMgbGVnYWN5LXRydW5rCisxNjU5OCBlZWVkN2JjOGEyODNkOTVhMzhjOTMzMjgzN2VlOTFlOTY0MDkxOTg0IGxlZ2FjeS10cnVuaworMTY1OTkgMDg0YzYzZDg1ZjkwODI5NTRkNTUxNjUyODMwN2Y2MGJlMzNmYjRlNyBsZWdhY3ktdHJ1bmsKKzE2NjAwIGExMGRjNzIxNWMxZWMxNzViYzMwNDkxYjYyZDczMjlkYTczYTY1YmQgbGVnYWN5LXRydW5rCisxNjYwMSBjNjM4NjNhYmUxYWE5ZGRlYWIxMmQ2MDdhMDM1OTI5NjQ5NmIwNDM0IGxlZ2FjeS10cnVuaworMTY2MDIgNWZkODBjODJhMTVhOTE0MzQ4NzBlYzZhMWI5YTE4OTFlOTMxNmZkZiBsZWdhY3ktdHJ1bmsKKzE2NjAzIDI1NGY4YjdjNGE4MzgxMzY1OWYyMWRhMTAxZjJlMzE1NDhlNTY0YzAgbGVnYWN5LXRydW5rCisxNjYwNCA2MWNjNTRjMzEzZjZjZDE1ODdmZGNlMTRhMzAxYzhhMDUzODA4NGYzIHVubGFiZWxlZC0yLjU0LjIKKzE2NjA1IDAyZTA4MTZlNGIzNzE3YjlmMDE3MWFmZWRjYTY2NjdjYTUyYTI3NWIgbGVnYWN5LXRydW5rCisxNjYwNiBlNGMzODBlZTkwNzlmNzEzNTI3Mzc1NDJjNzkxZjdkYTZmZDE3ZGZjIHVubGFiZWxlZC0yLjU0LjIKKzE2NjA3IDIzYTYyYTg3NTFiNDc2MmI4NTg5NzI0Y2Q5MTUxYTY5MzM5N2ZhMjIgbGVnYWN5LXRydW5rCisxNjYwOCAxNTExNGUwMTc2NTI5NDYwMzg3YWQxYjgyMmU3YWQ3NTBhZDQzZGFlIGNucmktMTYtc3RhcnQKKzE2NjA5IDQwM2M5NzBkMWE1ZTRhYzljYjFhYTY5Njc3ZGRjMmNiYjllZTBjZGQgdW5sYWJlbGVkLTIuMTA4LjIKKzE2NjA5IDlhY2ZkMDM3Y2I5NGRhMTgzNjA2MDI0MzM4MzRhYmRiYzI5YWQ5NGMgY25yaS0xNi1zdGFydAorMTY2MTAgYzM3ODNhMzNmODRiZjAzNTc4ZTkyNmQ2YjQ2YjM4ZTM4OGQ5NTczNyBsZWdhY3ktdHJ1bmsKKzE2NjExIGIwMTZlYzg3MzhmOWQyM2RlOGYyYjgxNWJlOWViMjVjODJlZmU2YzAgbGVnYWN5LXRydW5rCisxNjYxMiA1MTM2ZTM3ZmY1NDhlNjkxMDE3MzIxNDU5YmZkZWM2ZGZiNmE1NzM0IGxlZ2FjeS10cnVuaworMTY2MTMgNGFlYmQwZjJhMDYyNjkyM2Y1YzE3NjU4MGM1MDRmOTJiMjEyMTQzOSBsZWdhY3ktdHJ1bmsKKzE2NjE0IDYzMWI1ZGY0NGRlNjA5NTEzODllZjcwZmI3M2JlYTcyZmJhMjA3OWYgbGVnYWN5LXRydW5rCisxNjYxNSBiMzY4YWE4MjA4ZjNhMWY0ZTZjZjVhZGJiMTE0MmJlNzg5N2FkOWQxIGxlZ2FjeS10cnVuaworMTY2MTYgMTFkODgyMjBmYjUyMjhmZjhjODIyZDk0ODFiNmYwZjBiMjViYTAwMCBjbnJpLTE2LXN0YXJ0CisxNjYxNyAyYmFkYjMyMjM1NWZjZTQ5ODQzNGM2N2ZiZDQ2YmQ0YTYwMjA1NDlkIGxlZ2FjeS10cnVuaworMTY2MTggOTFkOTVhN2I3ODU4Mzc0MDMxMTliMDhlZjYwYzI3MTE1MDVlOGE5MCBsZWdhY3ktdHJ1bmsKKzE2NjE5IDNhZTA2YzU3ZDA5ZWE4Y2I4MWJkZTlhZjVmMTljOTUzODYxMWY4NWIgbGVnYWN5LXRydW5rCisxNjYyMCA0NjUxNDRhYmYwMmEyZWE5OWUwYzA2NjBkNDgzODA1ZGYxOWJlYjAwIGxlZ2FjeS10cnVuaworMTY2MjEgMWU5ZDFjYzJiYzNmN2FjNThhMTJkZDY3ZWIyNjYxYjlhMzRmMWJmYSBsZWdhY3ktdHJ1bmsKKzE2NjIyIDkyNGYwOTgxYmY3NmRjZDkxNGZhYjUxZDRlMWQyMmZiM2RkMDJhNzAgY25yaS0xNi1zdGFydAorMTY2MjMgOTc1NzNjZjkxZTZhZGU5NDc4YmUwZGI0NjVmZTY2MmVmZGQ2OGJhOCBjbnJpLTE2LXN0YXJ0CisxNjYyNCA4NzQ4OGMzMTEzZjI3NmQ2N2RhNDU1ODg4YjVlMmM1NTQyNjY2MDE0IGxlZ2FjeS10cnVuaworMTY2MjUgMDBhNWM4MDZjZjdjYjhhYmE5NDU2M2YxNTMzNWQ4YTYxNzM2Yzk0YSBsZWdhY3ktdHJ1bmsKKzE2NjI2IGIzN2YwODYzNTAyM2YyNjczYWJmYzI2ZTVjMjc5MGFkZWQ2ODE2NTMgbGVnYWN5LXRydW5rCisxNjYyNyBmYzg3M2NhMGM3ZDNmNDhkN2Y3ZDJiYzhiMWU3ODU5YmZkODVkYWE1IGxlZ2FjeS10cnVuaworMTY2MjggMDUyNTg1MWJhMGI3N2FiNzBjMzQyYzM2N2RkM2UxYWU0NDViNzU2YSBsZWdhY3ktdHJ1bmsKKzE2NjI5IGE1NWU0ODgzZjg4NmI5Y2M5NmY3MDIyMGJiZTM5NmE0ZTdhMDFlYTEgbGVnYWN5LXRydW5rCisxNjYzMCBkZDA0MmY1YThmYTIyMTQ0OGVhYmJkOTAxMGM4MjBjMmFmYTU2ODViIGxlZ2FjeS10cnVuaworMTY2MzEgMDk4ODI1ZTc0YTA1YWQ5MmNkZmU3ZmIwNWVlYWJkOTQxMjhjNDI1YyBsZWdhY3ktdHJ1bmsKKzE2NjMyIDM0OGE3YzE4ZTBlNjNhN2YzMjYzMDVhZTE2ZWRhM2ZiMzQ4ODJlNDYgbGVnYWN5LXRydW5rCisxNjYzMyBiNzMxYTIwNjMwMmFlNzBhOWE0MzQ4ZGNmN2UyYmY2NzhiMDA4NGJiIGxlZ2FjeS10cnVuaworMTY2MzQgYzQ4MDUyOTgwN2FiMzMwNmFhNGZhMzExZDNhZjczZjQ3MjIzMzlkYSBsZWdhY3ktdHJ1bmsKKzE2NjM1IDA3Yjg1ZmM3ZWY2ODRmNzc4M2E0NTU5ZTRhMmJlOTcxZjZmOTljNDIgbGVnYWN5LXRydW5rCisxNjYzNiA2NjU4OWIwNmM2MzMwODYxNGZjZGRkZjcwNjg4ZWJiYzA1MDI5ZmUxIGxlZ2FjeS10cnVuaworMTY2MzcgMDRhMzZlOTNkYzNkZDgwNjZmNTA4MWFiOWU2MGJhOWFkMWMwN2YxMCBsZWdhY3ktdHJ1bmsKKzE2NjM4IDQ1ZWRjMzI1ZTg5YTU3NjkwZDg2ZmVmMmNkMTY4YzZjOTdlYTg3YWUgY25yaS0xNi1zdGFydAorMTY2MzkgOTRhZGQ4OGVmMDhjMDZiNTUxODRmNjJmODFjM2UwMDdkNGVjMzQ0YiBsZWdhY3ktdHJ1bmsKKzE2NjQwIDY2ODJmZjNlMzE4ZjVmMjk0MjgzOWFmYWQ4MWQ2MGIxNmRhZWFhZGIgY25yaS0xNi1zdGFydAorMTY2NDEgYTI5NmZmNTUyMjFmNzEyMGI1NmY3ZWU1N2UwMGIxYjcxODdlYjM0YiBsZWdhY3ktdHJ1bmsKKzE2NjQyIDk5ZjA0MTNlZjc5NWYzMTViMjUxZDE3MmI3MmU5YzA5NTg3M2FhNTAgbGVnYWN5LXRydW5rCisxNjY0MyBiZjhkNTZlMjdjN2JiYTU2ZGZmODQ0N2EwZTQ5YzBmZDA0NzBkNzU1IGNucmktMTYtc3RhcnQKKzE2NjQ0IDk0ZjZlYzg3OTMwYWJlNWVkZDRiZmRhMTIxZTI1MzNlOTY1NGUwZTkgbGVnYWN5LXRydW5rCisxNjY0NSBkNzRhNGE0M2Y0NWZiODhhZGM4N2NjMmRiNjYwMzU2YWQ0ODE1YmUwIGxlZ2FjeS10cnVuaworMTY2NDYgNDY4ZGY1YThjZjRhY2ZkMzQyY2ZmYjNlOTE1NjAwODMwY2Y0N2QwNiB1bmxhYmVsZWQtMS4yMy40CisxNjY0NyA5NmFkMzI0OThkYjc4MjE0ODY5MDFiMDJlMmEzZjMzZDAxOWE4N2UyIHVubGFiZWxlZC0yLjU0LjIKKzE2NjQ3IDFjMmFkYWU0NTA2OTdkZmMzMWM2NjUzM2ZiNzJjODA2M2ZiM2JhYzEgY25yaS0xNi1zdGFydAorMTY2NDggZjNkNWY3MWNjYmI0NWU3MzZmOGNjM2NhNGJhN2UzZTFiNTM4ODI4YiBsZWdhY3ktdHJ1bmsKKzE2NjQ5IDRjM2Y5NzdjZTA2Y2ZlN2NiNWJkNDg3OTFhNWQ1MGY5Zjg4MzNhYmYgbGVnYWN5LXRydW5rCisxNjY1MCBhOTRlMzdlY2RiZWI2ZmI2OGQwZGU2ZGFmZWE5M2Y0MjMyNmM1ZjY5IGxlZ2FjeS10cnVuaworMTY2NTEgYzU4MTQ5YzA2NzBhYTk5MWVkNzQ4YTE2ZDVlZGUxMGIwODQ1ODQwMiBsZWdhY3ktdHJ1bmsKKzE2NjUyIGZjNDlhM2IzODYzYjE5NmM1YzEwYjAwNzczMDJiMjhlNWU3OWRiMzEgbGVnYWN5LXRydW5rCisxNjY1MyBkZmRiNjAxY2VlMWNmNTE0MzViYjMzODZhMmU2YjZiMWYzOGM0YzkzIGxlZ2FjeS10cnVuaworMTY2NTQgNTkyYWMyNzI2NDFkMjJkZjM1ZmY3MTQ3ZDVjOTM0MDE2YTU1N2JmNCBjbnJpLTE2LXN0YXJ0CisxNjY1NCBhNjk4NWQ4OTQ2NDM3NmI5MTczYzlhNTc3YzY3MGI3ZDBiNzY3ZDNkIGNucmktMTYtc3RhcnQKKzE2NjU2IGUyNjNhMjczZTMyMWY5NmU5N2FkYWNjNTMwYjliZWU4MDdiYjkyM2QgbGVnYWN5LXRydW5rCisxNjY1NyBlZThjNWNmYWQzMzVlNmJjNmZkZjRhNzRhOGY2MjQzY2NhZWU5MmEzIGxlZ2FjeS10cnVuaworMTY2NTggNGVmNDYxZGYzMmMxOTFlOTEzMGRjOWJjYjdiOTUxZWEwYTExNDg3MiBsZWdhY3ktdHJ1bmsKKzE2NjU5IDU4ZmVmZWY3MGZhY2I3MzAwYTJlNDU2ZmM3NTY3NjIwOTA4MzgzYzQgY25yaS0xNi1zdGFydAorMTY2NjAgZGY3ZGViMmViYTQxNDEwN2VkZmJjYmFiZTk2NTk1NDY4YTlkNjQ5NyBsZWdhY3ktdHJ1bmsKKzE2NjYxIDgzMDc0NDZiYzZhYWQ2NjBkZDUxMTdlNjMxMThmODBlNzgwYjUyYmMgbGVnYWN5LXRydW5rCisxNjY2MiAzNWZjOTUxMWEzNmZmMmM0N2E2YmE2Njc4MmE0MzAwOWM0NDk2ODZlIGxlZ2FjeS10cnVuaworMTY2NjMgZDAxNGM4YWI2YTgyNDM1M2QzMzAwMWEyMzJiMTAxMDZiODQxN2Q0NiBsZWdhY3ktdHJ1bmsKKzE2NjY0IDI2NmUxMWEyMjZmN2NkODM5YzIyNmYzNDAxNzk5MDZhMjA3YWVjZjYgbGVnYWN5LXRydW5rCisxNjY2NSBlYTVlYjUxZWQwZjY5OGM0YjQ2NjJjZDA3OTA4MjU0OTEzNTA4OTNkIHVubGFiZWxlZC0xLjguMgorMTY2NjYgZjkxMTYxOGEwZWEwZmFjNDZjZTk2ZTJjYjY1Y2QzZjAzOTFkMDJhNyBsZWdhY3ktdHJ1bmsKKzE2NjY3IDFjMDBmZWE5YWU0MGMwZjFmYjQyZmVkM2VhYjM4MjE4ZmNiM2Q5NzAgbGVnYWN5LXRydW5rCisxNjY2OCA3NTVlMjEzNWExOTQ4YThkM2MxMzFmMWZiNzYzYmQzMDRiMjRiNTVhIGxlZ2FjeS10cnVuaworMTY2NjkgYWJmYTRlNGIyZjNlOWFjZTJlZjI4MmRlZGZhZDY3OWRjODg0MWRjMyBsZWdhY3ktdHJ1bmsKKzE2NjcwIDBmNjgwMThjY2U1OGY5ZjFmYTlkYjQyNzZiYmZmNzdlZjdhNjEwNGIgbGVnYWN5LXRydW5rCisxNjY3MSBkZDgzMGM5ZTVjMjE4ZmFlNTkxODI2ZTQwMTQ1ZTMyNDU5NGY4MzhlIGxlZ2FjeS10cnVuaworMTY2NzIgYzRlMzIxODM0MjUwM2FjNjI2N2RhMjE1MTU2ZDMxNWMzYzMyZGExOSBsZWdhY3ktdHJ1bmsKKzE2NjczIDg4MWQzOThhNDRlMDcxMGFlMDBmZDcwNjNlMDNmM2U2M2M1NTcxM2QgbGVnYWN5LXRydW5rCisxNjY3NCBiZjcwNjJlOGVlYWNmNDNlM2U3NjcyZDc3ODQ0ODEzZTA5ZGYyNTFlIGNucmktMTYtc3RhcnQKKzE2Njc1IDMxYTdiMDA0NTU4ZmI3YzNhOTEzZTBkYTFmOTgzZmQ1YzE4YmQ1NDggY25yaS0xNi1zdGFydAorMTY2NzYgMzNmZDYwYWJkNDgyMmM0YWFkNTcxYmU5Nzk2N2EwOTViMjQ4ODg2ZiB1bmxhYmVsZWQtMi4xMDguMgorMTY2NzcgMTVhZDQwODhhNzAwYmZiMDViZDMwMGE4NmFmNzBiYzI5YTUwNTI3OSBsZWdhY3ktdHJ1bmsKKzE2Njc4IDhlZWFmZjk2YjRjMjQ0MjJmYWFmMjcxNmYzMWMyYWFjODAwYzBhZjggbGVnYWN5LXRydW5rCisxNjY3OSAwOTU2NTc4NDcxNWUxYzY2NTVlNjk4OTlmNjkyOWEwMDVmY2YyMTkyIHVubGFiZWxlZC0xLjk4LjIKKzE2NjgwIDNhNWE3ZDI3ZjFiNzJiOWRlMWY5ODhhMThjZDA0NDRiODZkOTEwYTYgbGVnYWN5LXRydW5rCisxNjY4MSA2MjQ5NGE5NmRjY2FiNWFhMjM5ZTY3ZWRlOWFmNjFiNjBlZWVmZGVjIGxlZ2FjeS10cnVuaworMTY2ODIgYzBjMTczNDdkYTViYmVjY2JlZmYxYzc1ZDFlYTNmMDFkYTUwNDQzOSBsZWdhY3ktdHJ1bmsKKzE2NjgzIGFhNDlkMDc0ZjcxNjFiMDcyN2M5NjUzY2FjMDk2OThmYmJiYTUxZGQgbGVnYWN5LXRydW5rCisxNjY4NCA5OGYwOGNhZmUxOWIxMjU0MWVhZjNkMWEzY2E2ZmUyM2Y1NjY5YTMyIGxlZ2FjeS10cnVuaworMTY2ODUgOGYwZmMwYjVmNzg0Y2NkMDZhMGM3MTE0NGZiZGYxZTNhODViNDNmMiBsZWdhY3ktdHJ1bmsKKzE2Njg2IDA4ZmViNTM4YzgzNzE2MGViNDg1ZTljMDQ0Y2IxOTk5NWE3N2E4OTcgbGVnYWN5LXRydW5rCisxNjY4NyAyMTkwYjc1OTk4MzczNGEwYzRlOTRkZjBkNTIxZGM4YTEzYzg2NDJhIGxlZ2FjeS10cnVuaworMTY2ODggMWM1YmRiNjYyM2M4YzExNDg1YzI1ODkxOGZjMzNlOGMxMjQwYmQzNSBsZWdhY3ktdHJ1bmsKKzE2Njg5IDc3YjllMDQxYjU5NWNiNTA5ZDBkODIyNTEwNzQyMDBjNDliOTRmYWYgbGVnYWN5LXRydW5rCisxNjY5MCBjMzMyMGQyNGQ3ZGU0NmFkZDBlZTRiNzMzODAwYmY5MmY4YzZjMmZkIGxlZ2FjeS10cnVuaworMTY2OTEgZTJlYTAwNjIwZWQ2ODk5YTRkNDE3NDY5MDYxNjE1NGI4MTI1Zjc0NCBsZWdhY3ktdHJ1bmsKKzE2NjkyIDA0MzBhMTMwOTU5NmM4NzkwZDM3ZDc2ZmQ3OWY3NzUwZTExYTYwMmIgbGVnYWN5LXRydW5rCisxNjY5MyBkM2JmOTdkNTMyYTA4YjRmMTNmMmQzZjUwNzk1NTM2MWRjNWEyMzkxIGxlZ2FjeS10cnVuaworMTY2OTQgMjVkZTcxOTNmOWZjZWE2NTgzNDUwNGE3NmY1OGRmZjJlOTdjYmVhNSBsZWdhY3ktdHJ1bmsKKzE2Njk1IGEwYjM2NTk4YjMxZDBkMjk4OTkxMTc0NTkzZjRhYmYyZmFmZmFiMmQgbGVnYWN5LXRydW5rCisxNjY5NiA5YzY5YmQxYTI4MjJmMGU1MDVmMDhkZDRjMzQwOGFjMzUzM2NlY2NkIGxlZ2FjeS10cnVuaworMTY2OTcgZTMwYTE5NGRjYTAxNDgyYzRkZTIxYzY4ZGI2NDBmMTU4ZTVlMDdmZiBsZWdhY3ktdHJ1bmsKKzE2Njk4IDBlZmRmNDViZjZiYjZiOGQxNjM4NjA4MzE3ZDljYzM1YmY0MDk0ZWQgY25yaS0xNi1zdGFydAorMTY2OTkgMGFjOTE5Y2E4ZTY5NjI0MDU5ZTg3YTVjY2RlNTA1ZWNiZTc4N2M1NCBsZWdhY3ktdHJ1bmsKKzE2NzAwIDk5ZTE5Yzk4MmY5NDQ1ZGY4Y2Y4YzMxY2YyZmI0MTFkZThhNDE2OGUgbGVnYWN5LXRydW5rCisxNjcwMSA5YzFlNjg5ODQwMjczZjk0MjM3ZTIxNzIyZDVjZmY0ZmQ4NDE2NTM0IGxlZ2FjeS10cnVuaworMTY3MDIgYzQ1YWNjYzhlNmQwMzZmZjc1YWRhNWJjNTE1OGE2OGI2YWE1NzAzNiBsZWdhY3ktdHJ1bmsKKzE2NzAzIDQ0NmMzNjE2YzMyM2IwZjQ3YmZmZWE5YzNiMDFmNjljNzQ5MmU4MzIgbGVnYWN5LXRydW5rCisxNjcwNCA1Mjc1N2JhZjAzMGRkYTBmMDgzOTE0OTUyYTUzNmEyODk3NjMyZWJiIGxlZ2FjeS10cnVuaworMTY3MDUgYjM0N2ZjNWRhZWI3MGM3MDA2ZDM1OGY3ZDRhNTg2ODY4Yzk1NDQzMyBsZWdhY3ktdHJ1bmsKKzE2NzA2IGE0MjU5YmZjYTViZmU4YmEyZjJmMDFmZTAzNGEzMmU5NzUwNGYxOTMgbGVnYWN5LXRydW5rCisxNjcwNyA2YmYxMjgxZWM3NjM5YmRlNDE3MTY4Yzg0ZGE0NTkzNWEyMjIyODAxIGxlZ2FjeS10cnVuaworMTY3MDggNjAyNDM5OWI3OGJmYTYyZjkzZGFkOWIwZjA1ZDA2NTZmZWJkOWZmOSBjbnJpLTE2LXN0YXJ0CisxNjcwOSA5NDE0ZDAzMWEyYzNhNGNiZjY0Y2U4MThmNTg0MjE2NWIxMzU0YTRlIGxlZ2FjeS10cnVuaworMTY3MTAgYzhmZjgwY2VhNGY3YmU2MTkxZDVkN2NjOTYwOTRjY2NmZDZhOGQ1YyBsZWdhY3ktdHJ1bmsKKzE2NzExIDhmNDNlNTkyY2Y5YTRmNjhhNWIwZTUyMWUyZDhjNDE2MjMyZGE4MGUgY25yaS0xNi1zdGFydAorMTY3MTIgZDcwYWVjMmUzNDljZWFiNWU5ZjI0YzhkYzVlMmJmZjIxY2YzODQwZiBjbnJpLTE2LXN0YXJ0CisxNjcxMyA0NjZlNWZmMjg5MjYyMGEwMjdjMmY0OTgxZjVlODgzYmVkOWNmOWY0IGNucmktMTYtc3RhcnQKKzE2NzE0IGY0MDVmY2JhYWVmNWE5NzU0ODBjOGI4MTM4YzkwMDg4ODlhN2ZlMTkgY25yaS0xNi1zdGFydAorMTY3MTUgZTZlZmNmY2YxNzRhODdkZGQ0OTFkYWQxNTA3NzU5MTI2YzY1YjJmMyBjbnJpLTE2LXN0YXJ0CisxNjcxNiBjZjUwMzQ1MGYwN2IyNGM2MmQ2NmQzOTE3OWExZTVjMTkyMjdlMzAwIGNucmktMTYtc3RhcnQKKzE2NzE3IGJkNjdhNGQ2ZjRmOGMxZDZkNzVhZTgyOWZmNjQyMWMzYWNhYTE5MzQgY25yaS0xNi1zdGFydAorMTY3MTggMDgwMjNkMjZhMGNlODc1MDllMjQ2OWFhNWQ2MWE5MzViOGE2MzM5MCBjbnJpLTE2LXN0YXJ0CisxNjcxOSA1OWM2ZTk4MzJhMjA0MjUyNmVlMWRkYTNmMzE1ZDliNzQ0NTlhMDAzIGNucmktMTYtc3RhcnQKKzE2NzIwIDY5M2I2MTU4MTc0NjY5MDdjYmY3NDY0MWM3NDg3NmE2YTdiZDI0NGQgbGVnYWN5LXRydW5rCisxNjcyMSA0ZDE2YzhkZDg5OWM0ZWVhMjEwOTQ2OTFhNzkyNmJlNjMxYTk0ZjA5IGxlZ2FjeS10cnVuaworMTY3MjIgYmMwMTUzYTczOWFlZjQ2N2U1YTJjZDMxYTA3YTliMDFkN2RiZTVmYyBsZWdhY3ktdHJ1bmsKKzE2NzIzIDAzZmE0MDUyOGQxNzlmYWI2NTI4MDc5ODc3MjE4NjJhNzgxMWU3MGYgbGVnYWN5LXRydW5rCisxNjcyNCAwODA5MmQxZWIyNmFmOTdjOTZmYjI3MzgyYWQ0MjA1ZjllNWJhNjNjIGxlZ2FjeS10cnVuaworMTY3MjUgMzM5Njk3NTFlMzUxZmQ3OTA0OWY3ZDk0ZWUzYTdlOWI5NTJiYjExMiBsZWdhY3ktdHJ1bmsKKzE2NzI2IDUyZmNkMDk4NTQ3ZTllY2IzNjgxYTY3NjM4Nzg5MjUwODJiNWI0MTcgY25yaS0xNi1zdGFydAorMTY3MjcgZDA1N2NkNTQzZWQ5NjZkZjAzNjEyYTZjNDJlMDcxMWFkYzc2MGExOCBsZWdhY3ktdHJ1bmsKKzE2NzI4IGM3YjNmZTg0MzM1ODY3NWMyYjcxMWYwNGVkZTc0YjkyNjY1ODZkYzUgbGVnYWN5LXRydW5rCisxNjcyOSAxZDE3YzVlNjdlZjU3MjUyNDg4MDA4YTJmOGFlNTY5YTg1MjZjMzk4IGxlZ2FjeS10cnVuaworMTY3MzAgNjU4YjA4NWUxNzViZjg0N2Q3NmQ2ZTFhMTZjZWYxMjYwYWNiZTE5ZCBsZWdhY3ktdHJ1bmsKKzE2NzMxIGRkZjMwMmQ2OTIxMTNlNmU0YjlkYjIxY2M1Mzc2Y2Q2MTRkNWNiMWUgbGVnYWN5LXRydW5rCisxNjczMiAyYTA0ZmJiN2MwN2Q5NjQ3N2RiMDcyNTZhMmQwOGU2YTY5YTFlOGNhIGxlZ2FjeS10cnVuaworMTY3MzMgYjZlMDdjMjcyNDg3OTAwZmRkOTc2OTBmZjIzM2Q1ODM3MmFhZDVjNiBsZWdhY3ktdHJ1bmsKKzE2NzM0IDI2NmZiNjMwMmYzMTE3ZDcxZjhjMTY3Mzk4NzI1MzA0Y2QxN2JhMTkgbGVnYWN5LXRydW5rCisxNjczNSAzOTI3YTRkOWMyZmIwMmRhMjcxOGYzY2Y0M2Q0YmMwOTk0YTZiY2NhIGxlZ2FjeS10cnVuaworMTY3MzYgZjE5NGQ4YjI0ODY1OTEyYmQxNmMxNzU1MzAxZTliZTFhMzg3N2Q3MiBsZWdhY3ktdHJ1bmsKKzE2NzM3IDRlYWE0NjNjMDMxYTFiZGI1ZTc3OTFjMzcwZDA0MTA4ZTA2ODJkZDQgbGVnYWN5LXRydW5rCisxNjczOCA2MGM3Y2RhMzVjZmE0ODc3ZWNjNWExNTQ4ZTkwMzYyMWNhODU4MDhmIGxlZ2FjeS10cnVuaworMTY3MzkgNzE3MmMyZDhiOTJiNjU4ZjJjZGM2ZDJmNGYyMjJjNzA3M2NlZjdkNCBsZWdhY3ktdHJ1bmsKKzE2NzQwIDRkMTRlZWY4ZWEwNzY1NjhiYTc1MjkwNjcyYzUwMThhYjU4MzAyMmEgbGVnYWN5LXRydW5rCisxNjc0MSAyZTBkMWFlYTljMzc0MWUwNGFkZmY4ZGExNTM3NjIwZjRmNTMyYjkxIGxlZ2FjeS10cnVuaworMTY3NDIgNDRiMWI4MThmMjhlOTI1ODMzMWFkYzRiNGVmMzIzYmI2MGE4YmRlOSBsZWdhY3ktdHJ1bmsKKzE2NzQzIDI1ZmQ5ODQ2YmQ1NDJjMzQ0ZjBjZTU4MDczNDEyM2ViOWMyY2FlMjIgbGVnYWN5LXRydW5rCisxNjc0NCA0NjRhMjE5MGQ5YjY3NmE2OTM1N2ViZmNlY2JmOTU2MzQxOTcyZDA3IGxlZ2FjeS10cnVuaworMTY3NDUgODAwODlhNDUwYzM0ZDBiNWJkYTFmNDZiMWUzYTA2MGI5YTQwNjIwOSBsZWdhY3ktdHJ1bmsKKzE2NzQ2IDg3YWYyYzM0MWI3OWJhMGI1NTkxMDZkNjUwNDhmMjNlYTQxMzliMjYgbGVnYWN5LXRydW5rCisxNjc0NyBlY2U3NWIwN2IxMzYwODAxMGNiNWEyOTdmNGUwY2E1NjNhNTIwZTU4IGxlZ2FjeS10cnVuaworMTY3NDggZDU2ZGQxNTMwY2UxMTMyYzI1N2MxZWZhY2YxMTFjOTA1MWMzNDcwYSBsZWdhY3ktdHJ1bmsKKzE2NzQ5IDMxYjI1YWMxZjAxOWFmMzAzYzY2MmJhMTA3MGFhN2ZmMDI3YzNjMzIgbGVnYWN5LXRydW5rCisxNjc1MCA1NzgwYjE5OGFiYzg5OWVhNzg3NTgxYjQ5ZmNlMWQwYjc4MWNlMzI4IGxlZ2FjeS10cnVuaworMTY3NTEgNjQ4YmE0MDQ0NDU1OWZiNGZhNWRmNDJhNjRiY2RmNDA0NDUwYjRiYSBsZWdhY3ktdHJ1bmsKKzE2NzUyIGFmZGIzZjQ4NWQ4ZjkzZTM4N2YxZTQ3Yzg2YjQ2MGQyOTNjNjI5ZDggbGVnYWN5LXRydW5rCisxNjc1MyA3YTk5NDUwZGEyZDY0ZjdiMjUwNWVmYTRjOTg2YzQ0MDZjNTYyOGI3IGxlZ2FjeS10cnVuaworMTY3NTQgMTkxZjIwZTA0NzNlZTFmZmM0MGU4ZDNlM2I2YzQ4YzRlZGM1NTFlNSBsZWdhY3ktdHJ1bmsKKzE2NzU1IDI2ODk4YTk4ZGI2ZWQwYmMxYWQwNTE0ODI2ODBjZGIyMWJiMDk0MDMgbGVnYWN5LXRydW5rCisxNjc1NiAyOGFmYmM1ZTA3NzAwNGFlNzJkN2YxNzgwMjEzMDZiNjRlOTg2NDc1IGxlZ2FjeS10cnVuaworMTY3NTcgMzcwYWRlODhhNTJhNTQ0Y2JkNjQzOTgyZWY5YTJjYjczODNkNDU2ZCBsZWdhY3ktdHJ1bmsKKzE2NzU4IDFiMTU2ZWY4MjgxYjhiZWFiYWJmYjc5MTU1NTg5YzhlYmY4MGYxMGMgbGVnYWN5LXRydW5rCisxNjc1OSA3MGM0N2FiMDFhODVlMmJlY2UzMGM4ODYwOTFiYzM3NTU2OTAxOWJmIGxlZ2FjeS10cnVuaworMTY3NjAgNzQ0NWQ5OWRhOGRkODgyNTUxNDI2NmYzZGQxNjY5NGIxMWQ0NmJlMiBsZWdhY3ktdHJ1bmsKKzE2NzYxIDgyYTIyZDgyOTYwNzEwZWE5NDY3ODA3ZDA1YWE0MGJkOGI4MDQzYTUgbGVnYWN5LXRydW5rCisxNjc2MiA0OTRjZjVmYjhmMTc0ZWYwNDBjNDgyNWViNGNjZDZiNjI2NzlhMzcwIGxlZ2FjeS10cnVuaworMTY3NjMgOGU4YThkZjBmZTczNGYyYjkwYzhhZTMwNTY3ZWYwMGVhMzlmNmVhNCBsZWdhY3ktdHJ1bmsKKzE2NzY0IGI5MDAyZGE0NmY2OTNhYzdmNDcyODM5OGQ3NzNhYzlhOTA0M2I0NWMgbGVnYWN5LXRydW5rCisxNjc2NSAwYmIwYzcxNjdkMWZjN2IwYzQ3MWZjNGE5MWMwMTQ4N2EyZjgzYzkwIGxlZ2FjeS10cnVuaworMTY3NjYgOGJlNzUyNDA4NWQ2MTk0YTYzODI5MDcyNmM3NzRlMzRmNDY2YzBjYiBsZWdhY3ktdHJ1bmsKKzE2NzY3IDdkZGU3NGMxZWJiZTRjZjUyMzg3OTdlNWZhYjE1N2ZiYzllYzQwYTQgbGVnYWN5LXRydW5rCisxNjc2OCBjOWFhNDllODc0OGU3MTViNGQ1MzcyYWEwMzBkODFlMDllMWQ4NzY1IGxlZ2FjeS10cnVuaworMTY3NjkgNzA3OWFhMDViYmQwNThjOTU2NzkwOWY2OTYzN2RhYWNiZDRlMjA3OSBsZWdhY3ktdHJ1bmsKKzE2NzcwIDJlZTBmNDdmMTRkM2IwYTQ0ZDU4ZjZkNmNiZWY2MGE5MDQzYjAxZDkgbGVnYWN5LXRydW5rCisxNjc3MSBhMjU2YzEwMWJmMjc5NWVjMjFlYTI0MmM5MzU1NjNjZTQ4NGNmY2E2IGxlZ2FjeS10cnVuaworMTY3NzIgNTYwMTc1ODAwYTA3ZTcxMmRkODI2ZGY4MDMxMGI4OTNlYzdjZjQwOSBsZWdhY3ktdHJ1bmsKKzE2NzczIDkxZGRlZWQxMmZhNzAzYTZjYzQ4NzIxYmJiNzBhNzFhOWRjNTMwNzIgbGVnYWN5LXRydW5rCisxNjc3NCA3YjdlZTU4OTAxZmIwZjBhN2UwZjJmMDdkMDkyYzdkODkwNmFkMWYzIGxlZ2FjeS10cnVuaworMTY3NzUgODQxY2Y5MDEyYWMzY2JmZmFhMTgyY2JlZTNiOWQ5YmQyOWFiYjRjOCBsZWdhY3ktdHJ1bmsKKzE2Nzc2IDU1ZTM5ODgyMDViMzQ4MGJjZTdlZDA1ZWUwY2FlMTY4ZDRlM2EwNDggbGVnYWN5LXRydW5rCisxNjc3NyBkOTkxODNjZGJiZGM5N2E5YmI5MTgwZmFjZjFhZDc2M2FmZGFlMjdlIGxlZ2FjeS10cnVuaworMTY3NzggNGVhYmQ3ZDM5MjVmYzk4Yzg5NzYwZGQxMmNlYWFiMzVlNWFiYmI0NiBjbnJpLTE2LXN0YXJ0CisxNjc3OSA4MTU1YThiMzA0NDRhNGE0YTZlZjBmNTBhMzk4Nzk4Y2RmZDFhODg2IGNucmktMTYtc3RhcnQKKzE2NzgwIDZlMmMwZDBjM2ZkNTZkNGFlOTc0YTAzNDE5YzAwNWNlYThjNTQ3OTMgY25yaS0xNi1zdGFydAorMTY3ODEgZGUyYmZjMTVmOWVjZTVhNWJlNDUzMjQyZWRlYjRiMDA1ZTYxYWM4NCBjbnJpLTE2LXN0YXJ0CisxNjc4MiBhYTQyMDI3MDIyNTI2MjcxMWVkNmUwMjY3MTBhMThiMjViMGY4OTc3IGxlZ2FjeS10cnVuaworMTY3ODMgYzI1OGYwNWViODVkYzk4YjM4YTM5NDk1ZWJmN2IxNjFkN2MwYmVjYiBsZWdhY3ktdHJ1bmsKKzE2Nzg0IDRlMjhjYTM0NWNmZWU3NmZiZWQ1NTViOTFkY2JlMzk3ZWEwMGZhOTcgbGVnYWN5LXRydW5rCisxNjc4NSAzZTZlM2QwNWQwMGI3ZDVmMTZjYzg3YjZlNmFiM2RmMzBiMDNkNjEyIGxlZ2FjeS10cnVuaworMTY3ODYgMzA3MTNkNTI4OGRmNDljNDQyNTJlOTA3YjFmYTRjYmJhNzJhMDI4OCBsZWdhY3ktdHJ1bmsKKzE2Nzg3IDhhNGExNzk0MTRkNGFhNDg0MWIzNDBlZDA5Y2JmZmFkZTU1YjY2ZTUgYXZlbmRvcgorMTY3ODkgNThhYzgzMDQwMWJkNWM5NDlmZTA1MWIwYjc5OWZlM2NkOGNkYmI5ZiBhdmVuZG9yCisxNjc5MCA1YWRhOWZhNTQ4MDE1YmViNjlhZjUwNzI4ZGI4ZjAzNjUyYTFmNjYxIGxlZ2FjeS10cnVuaworMTY3OTEgZWI5YTM2MTYzYTllYWE5OTQzMWM5ZWQzNDBkODg2M2M1ODRhNDMxOCBsZWdhY3ktdHJ1bmsKKzE2NzkyIGIyY2Q2NmU1ZWE0YzI0YjczZDUzY2Y2YjhkOTMyZDkxZDEwNTk4OTcgbGVnYWN5LXRydW5rCisxNjc5MyA2M2RlN2YwMGI1YmNjYmU5YmE5N2NiYzQwYWVhNGM5YmM4ZDU5ZGFlIGxlZ2FjeS10cnVuaworMTY3OTQgODhmNGU3MmQ3MjQ1MzlkZGQzMGNmNDQzOWRjZjA3MDBiNzY5YTFmZCBsZWdhY3ktdHJ1bmsKKzE2Nzk1IDcyZjY4MmViOWFkYmU0MWIyYTkyZTU0ZDMxODU0YWJjYzczZTc0MmUgbGVnYWN5LXRydW5rCisxNjc5NiA0M2Y0ZjhkMTU5NzFlYTI0MmZiOTRmMzU0NGNiNDdlMmFjYjM1OTUxIGxlZ2FjeS10cnVuaworMTY3OTcgMWIxMDdjOWJhNzAyMTM2NzlhNzFjY2VhMDA0OGI2NDhjZDY3MjI4MCBsZWdhY3ktdHJ1bmsKKzE2Nzk4IDJjNDI0Mzk1OTRiN2U4MDM0OTEzNjY0YjY4ZDU1Zjg2N2QyMWRiODEgbGVnYWN5LXRydW5rCisxNjc5OSA2MTM0N2VjYjliMDEzN2VlOWZkNTg2NjU0MDNiMzU2N2YzNjM1ZDVhIGxlZ2FjeS10cnVuaworMTY4MDAgNDAwYTVlM2FjNzZjOTRhYWJkOTUxNTkwMjgwMjhlMzUwYzIzYzI4NCBsZWdhY3ktdHJ1bmsKKzE2ODAxIGYzYmZjZWU3NDVhNzYzNmNkZGU4YjM4NmEyZWRmYjVjYWUzYjUxNzYgbGVnYWN5LXRydW5rCisxNjgwMiBlNWE3NGNmY2M5NzFjMDVlYjgyMWM2ODNjNDg5NjQ5OTg1MjA5ZWRhIGxlZ2FjeS10cnVuaworMTY4MDMgZjI3OTJlYWQxZjA2ZWU4ODlkZjI3Zjc4ODZkZGI0NjcxNDJlMzhmZSBsZWdhY3ktdHJ1bmsKKzE2ODA0IGE5NTVmZDVkZTAzNTA1NDhkZWM3ZjQwZDVjNmEzYjY0YTM0OTU5OGQgbGVnYWN5LXRydW5rCisxNjgwNiBhMjg0ZWQyMWEwZGRhZTcxZWNkNWE4MGY3NzQ2MDlhMjU0ZGJjN2I4IE5vbmUKKzE2ODA3IDc4MzRhMTEzY2UyNDgwMTBkYWMwNGY4NDhmYTdjMzhkNTg2M2JmOTIgbGVnYWN5LXRydW5rCisxNjgwOCA5N2Y1Mzg4YTZkY2UwNTdhZjA4NTZiYmNjMjQ4YWQ0YTZlN2Y0NzIxIGxlZ2FjeS10cnVuaworMTY4MDkgNzE2ZTFjNGUzZjc4OTQ3MjZmOTIzYTkwNzQzZTI1MzdhNjE0Mjg1MCBsZWdhY3ktdHJ1bmsKKzE2ODEwIDJlODdiYmI4N2FkNDQwNWM2ZDIxMThkZTgyZTA3MjU2YzExODFiODYgbGVnYWN5LXRydW5rCisxNjgxMSA2NWMxYWJmNDUxZGMwNTMwZjcyZjNkNmFlNjU1ODM4ZThlYmI3YzRlIGxlZ2FjeS10cnVuaworMTY4MTIgZDgwNjllZmNkNzZlNDgzNDdjODBmZWM1NzA5ZmRmOTk3NWZkYmM4YiBsZWdhY3ktdHJ1bmsKKzE2ODEzIDE0M2ZmYmY4N2U1MWJiMWIyMGExNWU4YTE1ZjEyY2ZkMWUzOTk3NzkgbGVnYWN5LXRydW5rCisxNjgxNCAzMGRiYjMwZmYwMTkxOWIwZTU1ZWQyZjBlNWU1NDQ1Y2M4ZTYyNGM3IGxlZ2FjeS10cnVuaworMTY4MTUgNDQzZjNjNzdkODhjZWQ2ODc3YTJkOWYzMDQwZGFhMDBiYmFhODE2NyBsZWdhY3ktdHJ1bmsKKzE2ODE2IDU1ZTRmNDI4OWUxODgzM2I1NzAyZjUxNWY3NTczYTdmMjMzOTRlNDQgbGVnYWN5LXRydW5rCisxNjgxNyA3M2Q5NzZhZmE4ZDQzZjQ5ZTljZjE3MTQyYmIxMWU2MGM1OTZjNWU4IGxlZ2FjeS10cnVuaworMTY4MTggNTkxYWZlMmZjODIzMGI2MDk0ZWY3MzFjMGNkNjEwYjY3OTFiYTJhMSBsZWdhY3ktdHJ1bmsKKzE2ODE5IGYzNjkzODg3NGNlNWFiYjk4MTBkNzJmMTMxMWUwNTE4NjlmN2UxMjYgbGVnYWN5LXRydW5rCisxNjgyMCA5YTA1MjY5NmNhMTIzN2JiNzJjZDE2NTQzZDFlMTY0ZjczYzE1ODFhIGxlZ2FjeS10cnVuaworMTY4MjEgOWNkYjZmOTc5ZmE1NTBhZmZiNTZhZDU5ZjhhM2VkOGEzY2JlYzA4NyBsZWdhY3ktdHJ1bmsKKzE2ODIyIGVkMzY5ZjBhYTMyYjM5NjNhYjlhNDNjZDhhMmVjNTM0YmY3ZDFkYjkgbGVnYWN5LXRydW5rCisxNjgyMyBlZGEwOWY4MjRhOWZiOTA4YzZjNTFhOGViODU4MjdhN2QxOTExN2RkIGxlZ2FjeS10cnVuaworMTY4MjQgNmM5MWFkOWMwZTA2YzNjZWI4NTk1MmU4ODQ3M2I0YTk4NzhhNzFhZiBsZWdhY3ktdHJ1bmsKKzE2ODI1IGZhYTk3MGYxNTQwZmY5NGViODc3MWVhMWQwYzIxZTBiZmU5YjgwYjAgbGVnYWN5LXRydW5rCisxNjgyNiA0OWM3YTRkZDlmNjE1ZDc0M2QzMzZkNmNlYjNkZTMzZmVhNmVmZGExIGxlZ2FjeS10cnVuaworMTY4MjcgNDljODMwNTAwNDgwMWVkYzQxYWFiNTliOTNhYTg4MTFhZTVjYjg0NyBsZWdhY3ktdHJ1bmsKKzE2ODI4IDgyZjc5NjE4YjQ0Mjg1MTgwNmM1ZDBhNDQ2MTgzMjY2MTFiYTM3ODggbGVnYWN5LXRydW5rCisxNjgyOSA2YzdmYTUyMzcyNmZjNTU2ZmFhZjEyOThhNzIyNjYxMDkzNWQzMTViIGxlZ2FjeS10cnVuaworMTY4MzAgM2Q2OGQ1YmNjZDQwNmU4OGQ1YjU0N2FiZTk4NWQ1ZTJkM2VmMWY4OSBsZWdhY3ktdHJ1bmsKKzE2ODMxIDliOTQ2MWE2NTZkZGM1NTdhYzM5YTczOWVjNWEyNGJkYzhlNzM3ZWEgbGVnYWN5LXRydW5rCisxNjgzMiA5YTI5MTg4OWFiNWYxNzg4NDY3Y2UyNjUwMWQ5ZDc3MWZjN2FlZTA5IGxlZ2FjeS10cnVuaworMTY4MzMgMTI4ZjY0MTE5MWMzM2M4OTUzMjViYmY4M2E3N2VmYzljNjVkYTQ5MSBsZWdhY3ktdHJ1bmsKKzE2ODM0IDBkODA1ZTIzOWQ4ZjQ0Y2ZlMjNhNmQ4NmM5ZDVmODhlYTM3NmMyOWEgbGVnYWN5LXRydW5rCisxNjgzNSA1OTg0YzNkNzYxZjc4NDQyZTI4MDkwMzRjOTU5ZDg2OGI4MTkzZTRlIGxlZ2FjeS10cnVuaworMTY4MzYgYjRiMjYxMmVhMzMzMGZkN2NiZWNhMWZjNmE0ODY1Y2M1YTg1NmYxNiBsZWdhY3ktdHJ1bmsKKzE2ODM3IDViMzRiNzBlY2YyMmZkYjRhOTNmMDk1MTIwYjJmNTk0OWZhMzUxZDIgbGVnYWN5LXRydW5rCisxNjgzOCBkNDQ2MDNmMmI5Mjg5YjRhNjgyNzllMDUwZDMxNzkyZDA4MTg3M2JmIGxlZ2FjeS10cnVuaworMTY4MzkgNzQwMjkwYTU2MTkwYTEzM2NkM2ZkMjUzM2IyZWJmNjc3YTQwZGE4MiBsZWdhY3ktdHJ1bmsKKzE2ODQwIDA0NjBjY2NlZmU0ZTNiNmU0OGM2ZGYzZjViOTgxOWY5MzVhYWYwMzggbGVnYWN5LXRydW5rCisxNjg0MSBhZTIyOGE2NDI5M2UxMmRjYmMxMjQ2ZGFhMmI2YjFhODQ1Yzc4ZWFjIGxlZ2FjeS10cnVuaworMTY4NDIgMjE5Y2U5NjIyMzUyNTE0ZGJmMjI0MTczNzM5ZWQxMzE4YmE1ZjMzNSBsZWdhY3ktdHJ1bmsKKzE2ODQzIDY3YTU0NDhjOWEwZjI1YTc0MWM2ZjA1ZGYwMWZlNDBlN2RlZDZjMzMgbGVnYWN5LXRydW5rCisxNjg0NCA1YjBmM2M0MDA2MGZjMTgyMDJmYTgyZjUyYTRkNGM2NjI5MGM4MjdjIGxlZ2FjeS10cnVuaworMTY4NDUgZjVkOGU3M2Q3N2I3ZjViYmI2NThhNmU0MmRhZDc2MjAwNWU1MWFmYyBsZWdhY3ktdHJ1bmsKKzE2ODQ2IGE5NmQ3YzQ1ZDk2MWYzMzYyOTNhYWFlY2YyNTQ2ODE5ZDgyYTExZWIgbGVnYWN5LXRydW5rCisxNjg0NyBkMjZjYzViZGQyNDgyMWU2YWE2YjU0YmJlNTA2NGE0MWM4YmRkZjJhIGxlZ2FjeS10cnVuaworMTY4NDggNzdhNjE1YzkyMTdlMTk5ZTkzY2Q2NjQ3MDhlYTFmODZiY2Y0N2ZkNSBsZWdhY3ktdHJ1bmsKKzE2ODQ5IDNkZGZhMmQ2N2JlNDY3Y2MyZjQ1Y2EwYjAxZGJlN2JmMjQxYTViYmMgbGVnYWN5LXRydW5rCisxNjg1MCA5MWM2NTk5NjhhODAxOGUyNjFmZmIzZDhlMjRhNjVhZmVhMjlkZjhkIGxlZ2FjeS10cnVuaworMTY4NTEgNzliZjZiMzhiN2Q1ZWU5NjhiNjQ4OTcxOGQ5NDczMWY5ZDIwOGQxZiBsZWdhY3ktdHJ1bmsKKzE2ODUyIDMyMDQ1ZDQyM2E3ODY5ZjAwMjU3MmIxYjJmYmVhYjM0OTM3YzU5N2UgbGVnYWN5LXRydW5rCisxNjg1MyA5MWY4NDdhNzgzZDJhMDI3ZjVmNWM4MjU4ZmEwY2FmY2NmZTdlZDhhIGxlZ2FjeS10cnVuaworMTY4NTQgMTgzODUxNzJmYWMwYjcwOTliZDJkMjI2NGRmNjE0ZWQ0NDY2ZjA4MyBsZWdhY3ktdHJ1bmsKKzE2ODU1IGEyOWE4Y2Y1ZTY2ZGQzZjdmMTY3N2RlYmI1MzgyOTBmMTYzZDY1NzUgbGVnYWN5LXRydW5rCisxNjg1NiA4MzA4MDUzOWY3YjRiODQ5OTM4YWMxOGFiOWIyNmU2YTRkM2FiOGY0IGxlZ2FjeS10cnVuaworMTY4NTcgNTNhYzNlMjA2MmVmYTk2ODU1ZjkwMzYyZGQxMDRjZGYzNzk3MWQ5OCBsZWdhY3ktdHJ1bmsKKzE2ODU4IDk4ZTMyNTU0ODY3OTAyNjRjMmZkMDZkMzc3Y2I2NjI0NjRmNWYyNjQgbGVnYWN5LXRydW5rCisxNjg1OSAwMjM0NjgxMTc1MTRmNDhlZGU3MmMxNDIxMjQ1NWJkMTA0MTQ1NDZlIGxlZ2FjeS10cnVuaworMTY4NjAgYTkwNWM1YWEwNjkxY2RiOWVhYTZjNDVlYzE3MmY2Y2Q5YjhhODg2YiBsZWdhY3ktdHJ1bmsKKzE2ODYxIGM0NDQ0ZjY4ZWJmOTY3NzNmYmRhYmM5YTA4NzUwZGVhMmJlYmQ3MzYgbGVnYWN5LXRydW5rCisxNjg2MiAxZjk0YTExZDJiODBiZjQ4NzgxNGJiNjdhNjUwOGZlY2VkMWFmMzgzIGxlZ2FjeS10cnVuaworMTY4NjMgMGE4N2M1Yjc1ZmUzZDVlZjRkNjRhOWNkYjIzZjVhMWJlZmRjNjQxMCBsZWdhY3ktdHJ1bmsKKzE2ODY0IDhjZjU2MTQ3ZDdiNWRiZjlmYjQ3NjI0N2QxYTk4NTdmMTU0OTdjZjggbGVnYWN5LXRydW5rCisxNjg2NSBiOTEzMTI1NjE5YzhiYjc0MGY1MTAxNmZkMTA5ZTFmYWE1NzE2OWNiIGxlZ2FjeS10cnVuaworMTY4NjYgNmUyZGJhNDVjODNlNWRlNDEzYzg2YzRjN2JjZDc3MjU0NDk5NzhhOSBsZWdhY3ktdHJ1bmsKKzE2ODY3IGZlZTBmNDAyZWNjYjRlMDg1ODliODcxMWNiMWNiYjc3MzBmOGEyODEgbGVnYWN5LXRydW5rCisxNjg2OCAyNzViYzRmOWQ1MGQxNzU4ODMwY2U5NDYxNmNkMTg3NjVmZWU4NDc1IGxlZ2FjeS10cnVuaworMTY4NjkgODBhNDE5Mjk0MmNlOTVmMjNiNWUzY2I0NjQ5ZDI4NDgyMDE1NzIyMCBsZWdhY3ktdHJ1bmsKKzE2ODcwIGU4MzAxNjEyZTdkODBiOTM3NTcyM2U5YWE3MWYyZmM3MjY2NjYzNTggbGVnYWN5LXRydW5rCisxNjg3MSA3YTZjNTg2OWY0NTY2NjQyZDk0OWNjZGEwZWNjNjYwZmQxNmI1ZTRjIGxlZ2FjeS10cnVuaworMTY4NzIgNjM2NWE4NWJmNGZiMWNlZjM5MDNmODAzMzg1NmI0ZmMyMmI3MmMwYiBsZWdhY3ktdHJ1bmsKKzE2ODczIGNhOGRjMWJhZTY3ZDdkYzk3YTc3ZjFlMjk0YmE5NWIwOTAxMzI2ZWUgbGVnYWN5LXRydW5rCisxNjg3NCBmNjlhMzcyNDA5ZmMwZjAxMmQyNGUzZGY4NTQwYjI5YmRkZDU0YTM1IGxlZ2FjeS10cnVuaworMTY4NzUgZDAzNDhhMjZiMDkzOWViYWJjYTYzMDVhNzhkNGNhNmFlMGYxZTA1MCBsZWdhY3ktdHJ1bmsKKzE2ODc2IGRjMmRlZGNhOTNmNzBlY2IxZmY1NzFjNTYwZWEwNzRjNmU3YTA5MmQgbGVnYWN5LXRydW5rCisxNjg3NyA2NTMxZmIxYzg3OWZlOTE4ODdjZTcxMGMyMjkyYmM4OWE2ZThmMDJkIGxlZ2FjeS10cnVuaworMTY4NzggYzcyMmI0YzQyMjlhNjExNTRjOWJmYzJlZmMxY2NkZGJmNjNkYmNlMCBsZWdhY3ktdHJ1bmsKKzE2ODc5IDE3YjdmYzQ0MDE5NWJkNmEwNzM4ODk1YzY3MmMyOThlNDk0NDkwYTMgbGVnYWN5LXRydW5rCisxNjg4MCBjN2ZlNzU2OWU0ZTE3N2Q3NTZmZmQyNmY0NTQ1ZDcxYzJhZjcwYjZmIGxlZ2FjeS10cnVuaworMTY4ODEgYzUwZmVmZmFlODIyMDk0NjhlNDkzMzU1NTA4ZmIwYzJlY2QzZGJhOSBsZWdhY3ktdHJ1bmsKKzE2ODgyIDI1ZWVhODgwNDdlOWVjZmNjYWMyNzlhZTMzNjA5ZmJlYWFiODFkYzMgbGVnYWN5LXRydW5rCisxNjg4MyBkYzJkYjQ1NjJkMDYwMmQ3ZTg0Y2M0ZDlmMmRhMTQ0OTJkZjFlMjQxIGxlZ2FjeS10cnVuaworMTY4ODQgMDM0MDFhZjM2YjVjMGExMmU3OWI1Mjc2NDAzZTM4ZGM5ZTdjYTE0YSBsZWdhY3ktdHJ1bmsKKzE2ODg1IDkyMGZjMjg2ODU0Mzk2ZmQyYTEzNWNhNWFjNjM0Y2QyYTMxYjNlNzIgbGVnYWN5LXRydW5rCisxNjg4NiAyNjZkN2VhZjA2OWU4ZTcyYjAxMGU2NTE2OWVlZTFkOWVhYmNjYWU2IGxlZ2FjeS10cnVuaworMTY4ODcgMWZjZjdiNDM4Y2FiOWI0OTI4YjNiMmNhMzBhZjljYzU0MDY5MGY2YiBsZWdhY3ktdHJ1bmsKKzE2ODg4IDAwODliMzlmZTQ5Y2JjMzIzODhmMGFhYTFmN2U2MjAyYTExNWJlOTcgbGVnYWN5LXRydW5rCisxNjg4OSAzMTRlYzU5ZTRlMTRjZTJmZTU4ZmJkYzVlZTMzYzFmZmViNDZkYzNhIGxlZ2FjeS10cnVuaworMTY4OTAgNzEzZGQ3NmJlMzdiYWM3ODJhNzYyMWI3ZDUzOGRhYjgzNmJmZTU0YSBsZWdhY3ktdHJ1bmsKKzE2ODkxIGM2NGFjODNkM2YxODIyNWRlNDlhNDlhN2U5ODI4ZWE0MzE5MmFkZjUgbGVnYWN5LXRydW5rCisxNjg5MiBmODg0MzEwMWM5NDNiOGE3YjUzZTEyNDJmMWUxZWQ2ZGJlMmUzNDVlIGxlZ2FjeS10cnVuaworMTY4OTMgYjY3ODQ5MWY3ZTExNmY4NTAzZDM5MDMyZGExOTRjMjdiM2ViNjc0NCBsZWdhY3ktdHJ1bmsKKzE2ODk0IGI2NTJhOWFhOTRmMTMzNTFhMTM2Y2NjYTUxOTY3YTc4NTZkMWVjNTggbGVnYWN5LXRydW5rCisxNjg5NSA1MWMyZWVkNjAxNTkwY2Y4M2IyNWY1NzRlYWEyMjdhMTE2MThkZjhhIGxlZ2FjeS10cnVuaworMTY4OTYgNTc3OGY5M2NmMjJiNGMyMTg1N2VmNTU1NDIwNTgxMzlhZTBkYTM0MCBsZWdhY3ktdHJ1bmsKKzE2ODk3IGRlNzQyMzAzYzQ1NjkxMGQ2ZGUxYjY1YTUzYTFmYzZiMjUyM2FmMGEgbGVnYWN5LXRydW5rCisxNjg5OCBlNjc4ZTU4MDQ5YjRjNTQwZDYxM2Y1NzA5ZjE3MTllOGFmYjM1ZDljIGxlZ2FjeS10cnVuaworMTY4OTkgZjE5YmVhNjgxYjY2N2M0Mzg0ZTg0OWZkZjA1YTk3OTk4NmMzYjIxNSBsZWdhY3ktdHJ1bmsKKzE2OTAwIDAyYWJmNzcxN2M5NmUxNzlkOWMzZDRlNTEwMmQ1YTZiMDVlM2Y5OTAgbGVnYWN5LXRydW5rCisxNjkwMSAwYTYzYjQ3ODlkZmNlNGJlMjBjOWRiNWE2Y2RiNmIwNTM2MDVhZjY2IGxlZ2FjeS10cnVuaworMTY5MDIgMDYxMmExY2ZiYmY2ODk1MmE0ZWUyMTZhYTQ1YWUyMDY1YTA3NGRiZiBsZWdhY3ktdHJ1bmsKKzE2OTAzIDViZjU2MzkyNDE5NDM4MzYzZjcxYmZlMjFiZDU1MjU1ZDFjMTdiMjggbGVnYWN5LXRydW5rCisxNjkwNCBkNjM4ZjUzNWY0MDNjOGUxOGVlZThhODRjMzU3OTRjYjIyMDgwMGJlIGxlZ2FjeS10cnVuaworMTY5MDUgNTc5ZTVjNzAzNWUyZDAwMzlkMmI4OWEyMjQ1MDc5ZjI2MDdhZTRjZSBsZWdhY3ktdHJ1bmsKKzE2OTA2IDk1MzQ2MTlkYWFhMTJmNzVkNjVlMzYzYTAwNGU4OTQzZjMyN2IxN2YgbGVnYWN5LXRydW5rCisxNjkwNyBkM2Y1YjQ1M2FkZTg0ZTFkZWE2YWUyMDU3MjZmYmRmMzgwNTNlNzY5IGxlZ2FjeS10cnVuaworMTY5MDggNDY1YzdjMmU4ZjIxNDZkNzYxZmM0MDY3NjAwYzZiYWQ0NWQ0Yzg2NSBsZWdhY3ktdHJ1bmsKKzE2OTA5IGVjNmEwYjRhNjQ3OWE1NTgxNzU1MTgyZTM2YTdkYjA2NDIwYWExYmEgbGVnYWN5LXRydW5rCisxNjkxMCA2MDY3MTRmYWUxYjUwN2M5MDkxYTY4MTZiYmIxMTU4ZWUzYmZhYjgwIGxlZ2FjeS10cnVuaworMTY5MTEgODhkMTFmNDhhMzg0NWI0N2YxMThlOTI4ZjcyOGE1ZWU0NjJmNDA2MyBsZWdhY3ktdHJ1bmsKKzE2OTEyIDAzZGI3YjIzOTJhZTg4YTQwMmI4MjQwZDkyOGNlMDU5MTlkNjk2OWQgbGVnYWN5LXRydW5rCisxNjkxMyA3NDYzOGQyMGM0ZmQwZjQxNjhmNGVjZWMzNmYxMDU0MzJlZTY5MTRlIGxlZ2FjeS10cnVuaworMTY5MTQgNDRlNjY2Y2M4YzA3YmRlZWMyYmExNDViN2Q5OGNiNjYxYmRmMTNhMCBsZWdhY3ktdHJ1bmsKKzE2OTE1IDQ2ODQ4MTEzNWM0OTBiMWEzMTk0MWY1NTUwYWVlYzk5ZDllYWJiYTMgbGVnYWN5LXRydW5rCisxNjkxNiAyZGUwY2MxNzRjM2JlOTFhZTQ1NTAxOWIwYTk1ZDQyZWRkZDY1MjI3IGxlZ2FjeS10cnVuaworMTY5MTcgZTJlZDY5YjgyZDhkNzE4MTg1MjhlMjFjOWU2MGMwNGY4ZmFmYjk3NSBsZWdhY3ktdHJ1bmsKKzE2OTE4IDI5NjM2ZjAyMGQ0YzdiNGE1YjNhZjM0NGM1ZGNkNDZjYTNhOTFiNGQgbGVnYWN5LXRydW5rCisxNjkxOSBmNjU3ZGM4ZmYyNWU5M2I4NzczMDViYmNmYzQ1ZTM2MDE5MWJiMzI2IGxlZ2FjeS10cnVuaworMTY5MjAgZGE2OWI3ZDFmMjBmMGE2Y2JhNGFmMmYwMzZmMmI3ZjQ5Y2IyMDI5ZiBsZWdhY3ktdHJ1bmsKKzE2OTIxIGQ4MDliOWI3NWI5OTM5MzE5Zjc0ODVlNDZiMjYyMmViOTk1ODBkMDEgbGVnYWN5LXRydW5rCisxNjkyMiA0ZGFjOWUzMTQ5YmVhYzk5MGZmMTBlNDQ2OGExMGY5MmI5ZTY2NTFmIGxlZ2FjeS10cnVuaworMTY5MjMgZTk0MzQyZWVhNGY4OGU0MmQ1ZmQyM2E5M2QyYzNhMzExNjRkZWI4YSBsZWdhY3ktdHJ1bmsKKzE2OTI0IDE3ZDMxMjg0NzhjM2I5M2YxYjlkMjU4ODM4ZGI1NDhkMWVkODkwNDcgbGVnYWN5LXRydW5rCisxNjkyNSAzMTQ4ZWZlNTYwNmZjMTgxOGMzM2NjZTM4MTM1ZjJmNjExMjVlMDg4IGxlZ2FjeS10cnVuaworMTY5MjYgMGFiZmNhMDAzNWRjYzgzMmZhMTVjMGUyZDMyNTBjYzA4MWM4ZmFjYyBsZWdhY3ktdHJ1bmsKKzE2OTI3IDg3YjhmMGVhNTBlOGQxNTYwNjUzNDk2M2I3YmRlYzE4YmI2ZDk2MGEgbGVnYWN5LXRydW5rCisxNjkyOCAzZWEyM2UzYzFiMDZlMmE2NDllMzI2OWQyYTk5YTkyNjQxYjNjYWJlIGxlZ2FjeS10cnVuaworMTY5MjkgNGVhY2MwYzkxMjA5MGJhMGU1NmYwNjBkNjJhMWQwZTAwNTJlYjlhMCBsZWdhY3ktdHJ1bmsKKzE2OTMwIDNhM2FkZmRkYzI5ZDFmMDgyM2U2MTVhYzY3NTdiOWVjYTc2NzMyZjIgbGVnYWN5LXRydW5rCisxNjkzMSAwZjgzNDFkY2MzY2JjNmI0YWY2ODZmYjNkOTg5OTY2ZmYwYzQ1YWRkIGxlZ2FjeS10cnVuaworMTY5MzIgOTI5ODA5MjBkNWVkMTBkZTViNWZlYzcxZjcxMTEwNTE2ZTdmMWY4NCBsZWdhY3ktdHJ1bmsKKzE2OTMzIGFjODgwOTk1OWQwMTY0NDE0MGU3MjFkYzUxNDkyN2UxMTdlYjllYTAgbGVnYWN5LXRydW5rCisxNjkzNCA0NGY0YTg0YTgwYTgyNWQ4YmYwYzA4MzA5NDNkNTY0NDUxNTIzNTJlIGxlZ2FjeS10cnVuaworMTY5MzUgZjYzMzhkNzRkY2ExMDdhYmE4NmU0N2U2Y2U1YTE5ZTU4NmExZmIxOSBsZWdhY3ktdHJ1bmsKKzE2OTM2IDgwZDQ2NjhmMWUxMDM3YjUyZDQ4NmI1ZTk4ZGFmNDUzODQ4ZWYwZmEgbGVnYWN5LXRydW5rCisxNjkzNyBjMTRjYTIwZDFmYzhkOTViNTExYjIyZjBmM2IwZWRhOGUzYTlkYzgwIGNucmktMTYtc3RhcnQKKzE2OTM4IDczYzU2NGU0YTBmMzUyN2FlYmRlNjZiY2ZiNGIyNzNlNDNmYjVlNDUgbGVnYWN5LXRydW5rCisxNjkzOSBlOGFlNzBjM2FiYjQzYTE3OWNkOWQyYjE3NzE0ZmUyODdlYzg5ZjY1IGxlZ2FjeS10cnVuaworMTY5NDAgMjY4OTY3Yzk5MzRhMDU4NjQxNmMzYjQ4NmU3OWJmNTFiOTcxOTYzNSBjbnJpLTE2LXN0YXJ0CisxNjk0MSBkYzVmNjdlOGEyYWYxOTM4OTBlM2JkMDU1ZWE4ZjhmZDAxZTkxYmYzIGxlZ2FjeS10cnVuaworMTY5NDIgY2VmNGRhNDE0N2M4M2Q1ODk4OTM5MmU2ZmM3OGEwZjVjZGUxNDU3NyBsZWdhY3ktdHJ1bmsKKzE2OTQzIGZkM2Y4YWNmMTAzZDFlN2EzZjhmMDJlZWFkOTQ5NDI1MDM1NTdmYjAgbGVnYWN5LXRydW5rCisxNjk0NCA0MWViNzU1ZTRlZDE1M2Y2NThiODYzYTljZTZhYmIxM2MxNTBjMGM1IGxlZ2FjeS10cnVuaworMTY5NDUgMjY3NjhlMjFhY2Y5MGVjZjUwMmQ1ZDVjNjU0OWE0ZjY5M2JjMzZhNCBsZWdhY3ktdHJ1bmsKKzE2OTQ2IDAzOTU4M2MwOTBjNDM0MjRiOWE4NDQzMGMxZTc5NWRjZmQyZTlkZWEgbGVnYWN5LXRydW5rCisxNjk0NyAyYzJhZTg2ZGZlODc3MjU5YWIwOTFlOWM5YzNhNjM1NDE2MDNhYTZmIGxlZ2FjeS10cnVuaworMTY5NDggN2FhZDdkOWI2MTZlOWRkYmRkYmJhMDRmMmZiZWE5OTVhMjA1OWVmZiBsZWdhY3ktdHJ1bmsKKzE2OTQ5IDQ0MWRhMmM1ZGU0M2E5NTNhY2I2NWM2NTk3NjcyOGY4NmI2ODllZGMgbGVnYWN5LXRydW5rCisxNjk1MCA0NDIxMjMzNmQ3MWVhOTdlZmU3YWUyMzc0MzJmOTc0MzAzOGI0NzEyIGxlZ2FjeS10cnVuaworMTY5NTEgM2ViMTM1ZDYyZTJhZWQyYzMxZmRjMzI3Y2QzYzJiMjUwZmE4NmZmOCBsZWdhY3ktdHJ1bmsKKzE2OTUyIDc2ZTczMzg5YzM0MDcwMTIwZTY2MmYyN2ZlNTgyNGJmMWRlNTBlNzAgbGVnYWN5LXRydW5rCisxNjk1MyA5OTZjYzA2NzVkYjY3ODY5ZTk2ZTAyNmJmOTg0YmQ2YmI1YTNkMGQzIGxlZ2FjeS10cnVuaworMTY5NTQgYWFlMzdkYzk5ZjU3NTU3MDhjZDFhMDI5NmU2MmI2ZTIzYzRlYTA5MSBsZWdhY3ktdHJ1bmsKKzE2OTU1IDA3MDhjYWM1OWRlZjNhNjY4NDY4MzNiZjVkODZmNDI2NGU0MDQ0OTQgbGVnYWN5LXRydW5rCisxNjk1NiBmNmU1Y2MyYWY2ZjE5N2E0NDMwMzE1YjBmZWQzOTVmODkxNjVjOGYyIGxlZ2FjeS10cnVuaworMTY5NTcgMzExNmIwYjkxMmU5NzVjNjE4NjlkYTU5ZTQ2MDA0ZjI3MTY1MTA3NSBsZWdhY3ktdHJ1bmsKKzE2OTU4IGY3YThjNDBiMzg4MGM0MTM3MzJhMDExZTRlMDczYTZjNmIzZGUxMDEgbGVnYWN5LXRydW5rCisxNjk1OSA0Mjg3MjlmZjg4MjQ5ZmRlYjUxOTdiNmEwMDFkYTRjZmNkNTc3NTJhIGxlZ2FjeS10cnVuaworMTY5NjAgZjcwNDI0ZWJiMzliNGExZjQ4YzIyNDA1ODhkYjRmZThmMjkyYWU4NSBsZWdhY3ktdHJ1bmsKKzE2OTYxIDIyYjU5MGY4Y2Y1MzgyNDEwZTBjMzVkNDBiMDNmYjBlYTkzOTAzY2YgbGVnYWN5LXRydW5rCisxNjk2MiAzMWNkYTg3ZTlmZjRlYTQ3MzE4YTY4YzQzZjk3ZWRkMjczMWIwZjJmIGxlZ2FjeS10cnVuaworMTY5NjMgNzNlNDg4NDcxMjYzMDhiMjBjNzg5OWY5MjFkYTlhYjA1Mjg2YmUzYiBsZWdhY3ktdHJ1bmsKKzE2OTY0IGY1Zjg3ODRhNGMyN2M4YTUxMGFlM2RkZWZiMjNmNzQ0NzRmZTVhODkgbGVnYWN5LXRydW5rCisxNjk2NSAyMWVjNjlhNTYyMjg4NjNkODlmODdjNmQ0OTdhZDIxNjg5NmE5NWVhIGxlZ2FjeS10cnVuaworMTY5NjYgYjhlNWU5MzM4MDFlMzZhZmJkMzVjNjhjODZmYjAzZTY4NzBhNmZkNiBsZWdhY3ktdHJ1bmsKKzE2OTY3IDhkY2RkY2YxMzMwYTc3ZDU4MmUwYjg4OWZhNTEyMDIzZjQ4NzI5MmUgbGVnYWN5LXRydW5rCisxNjk2OCAzMDJkZmQ1M2IzYzhmYzIyNThhZDg4YjIxNzUyMGFkMzVhOWM2MTc4IGxlZ2FjeS10cnVuaworMTY5NjkgNzJkOGEzYjIwM2IxNGY2YjFkYjZmNDM0Mjk5MDJhNDVlNTRlNzczMCBsZWdhY3ktdHJ1bmsKKzE2OTcwIDNkYTViZjNjNWYxNTc0ODY0ZTE4NDNjMjQxYWU4MTg2YjdlZGFmMWEgbGVnYWN5LXRydW5rCisxNjk3MSA0MDQ0N2I2NzIwNjRiNDIwNDk4ZTk2YTcwM2E1NGIyMzA5ZTBiNTEyIGxlZ2FjeS10cnVuaworMTY5NzIgZWMzZTBmZTE3YjNkNzdhOTljMzk4N2M1NTlmNjRkNDMyMjJkN2VjMCBsZWdhY3ktdHJ1bmsKKzE2OTczIGRhZDU0ZDQ0ZDllY2MyNzM0NDY0NzFiZTEzOGZiOTY3MzhmZTk0M2EgbGVnYWN5LXRydW5rCisxNjk3NCAwNTFkY2Q3Y2QxOTkxZGU5ZTE2ZWQwMzBhYWU2YjFmMDRiYzBlNjExIGxlZ2FjeS10cnVuaworMTY5NzUgZTdjOGI1OThmZjc1ZmEyMzk1MzY2ZmQ1ZjIxZDgwYzc0MTI0ODVmMyBsZWdhY3ktdHJ1bmsKKzE2OTc2IGMxMmU3OTZiYzRiNjc1YjA4NDkwOTUwNjZiMWUwZjYwNGI3ZWRhNmQgbGVnYWN5LXRydW5rCisxNjk3NyA2YmYwNjFhMmZjNzgwMmY3NmFlYzYzYjZlZmQzZjg2YjY3NWY3MDYxIGxlZ2FjeS10cnVuaworMTY5NzggNTQ2OGI2ZTNiOTZhN2QxN2Y1OWIwNTUxZjQ3NTE0ZDA4MThkYjY1NSBsZWdhY3ktdHJ1bmsKKzE2OTc5IDUyZmQ0OTZkMzUzMjA5YzUzZjdhN2FjMDJmYzA2NDc1MzE1N2I4ZDggbGVnYWN5LXRydW5rCisxNjk4MCAyN2Q3ZDg5Yzc3NGIxMDAwM2E4ZTgzMzMwYmM2M2Y2NDQ0ZmYwNjI0IGxlZ2FjeS10cnVuaworMTY5ODEgMWI5ZmQwY2JkOTE0OTQ3Y2M0MjFiYTdlNDVhYTA5M2Q3YmE5YWYwMCBsZWdhY3ktdHJ1bmsKKzE2OTgyIGRiYTRhZWM5NzBlNmNkYjUwZDE3NjUxMmMxYjdmMGJjNjBhYjUyMTYgbGVnYWN5LXRydW5rCisxNjk4MyAwMTg0NjU2OGQxNDdkMTY3MDdlZDk1OTJkODY5YjkwNmNmMWFkZDBmIGxlZ2FjeS10cnVuaworMTY5ODQgZTljMmY4MzBmOWJhNTJiZjU5NjhjYzdjZDI2OGQyY2U3MTc1YTJkZSBsZWdhY3ktdHJ1bmsKKzE2OTg1IDUxYTMzYTNiMmJhOTM1NDU3ZmQ1ZmM4NmNhNzlkZWExNGYwYzdhNzEgbGVnYWN5LXRydW5rCisxNjk4NiA5MWRlYWRmZGFlMzZiYWFlNmEyYWQ3Y2NlMmY5ZjY0MTdjMjIzN2EwIGxlZ2FjeS10cnVuaworMTY5ODcgYjhlYWRlZWQ4ZWQzNTE4MDM2NjRhNmI4NzhmMzk5MWZmNzNhZjM5MCBsZWdhY3ktdHJ1bmsKKzE2OTg4IDAxOTI2NWIzYTg1NjU5YzQyNjlhOWNhZDdmNTM4ODAwY2RmZjZhZjMgbGVnYWN5LXRydW5rCisxNjk4OSBjNTYzNzJhZDkzNDM1ZjFmY2M1Y2RjNTBlYjU5OTBlMTEzNTBhMTViIGxlZ2FjeS10cnVuaworMTY5OTAgMmI2YTYzNzU5Yjk3Y2Y5N2YzZTdhMTg0NWQ1N2YxZmZkNGJjNjhhYyBsZWdhY3ktdHJ1bmsKKzE2OTkxIGY2NmU4NjNhMmE1YjFlNDI3ZDZmYzE3MDUyM2JlYzI0MmNlMmM2OTYgbGVnYWN5LXRydW5rCisxNjk5MiAzNWI3OTg5YmEyMGM4YTE1M2E0N2MwMTQ4YmM2MjRmYzFkMmVmYjA3IGxlZ2FjeS10cnVuaworMTY5OTMgOGQxYTA1OWFlOTlkNDRlMjI2YTNlMjUzMDhiOWNhNGVmODkwMGU3ZiBsZWdhY3ktdHJ1bmsKKzE2OTk0IGFjYzcyODU4ZWI3MmM4MzYwMTY5ZmRiMWM4YTE2OWExMzE2OWI3OTIgbGVnYWN5LXRydW5rCisxNjk5NSBhYmJjMDI3OTVjNGRlZmVjYTI5ZThjNjg1OGExNWVmZmUxODIwY2ExIGxlZ2FjeS10cnVuaworMTY5OTYgZGZmMjJkNGE0OGRhZTM2ZmIwYThhNGRiMjc4MGZmOWJkYjNlNmFjNiBsZWdhY3ktdHJ1bmsKKzE2OTk3IDU3NzJjNDk4M2RkODdkMzgyMDI5MDg3ZGJjNmFhYzQ3N2ExZTJjYWQgbGVnYWN5LXRydW5rCisxNjk5OCBlYTcwNDBhYjcyODZmMjJhY2IxMjYwMWI4NThiMjA4MmY3Y2NlZDM0IGxlZ2FjeS10cnVuaworMTY5OTkgODlmODE1M2ZkMWJhMTYxZjgyM2YxOTYxZTNmNGE4NDFiODU2MjJhZSBsZWdhY3ktdHJ1bmsKKzE3MDAwIGM4NWE4MGRiNjg0NWIwNjJmNTc5OTRiYjVlYWEwY2JjOTBmODcyNDYgbGVnYWN5LXRydW5rCisxNzAwMSAyMzg1ZWE1ODcyZTE5M2JlNTRiYjdhMGRmYThiNTMyNjIxYTEzZjY3IGxlZ2FjeS10cnVuaworMTcwMDIgMjg2M2ZiYjEzNWYxZjljYzZjOTdmZjQ1MTBlNGQ0ZGU2YjY5ZWU4ZSBsZWdhY3ktdHJ1bmsKKzE3MDAzIDkzMDEzZTRiYmUwMmUyNGIwMmNhMDM3NzE1YjM2NDU4MDUxYjY0ZGEgbGVnYWN5LXRydW5rCisxNzAwNCBlOTIxMjI4YWY0MzU2N2VmYzkwMTIzNTg3ZTAxNmU5MTQ1ZjBlYjVmIGxlZ2FjeS10cnVuaworMTcwMDUgNTgxNDYwZmNmMTQyNTYwMGU1MWE5YTQxMjc3OGRhNmIwMGNmNWE1NSBsZWdhY3ktdHJ1bmsKKzE3MDA2IDYyMjMzOTdiZDZhMjY2MTg0MzM2MjIwOWZhNjdlM2I4MTlmZTNlZGMgbGVnYWN5LXRydW5rCisxNzAwNyAyNzdmZGQ5NjQ3ZmUwOGIxYTdhYTI3YjgwYWY1ZWIxNjIzYjQ0NGUyIGxlZ2FjeS10cnVuaworMTcwMDggNGU2NmEzYWI3NTdkYTMyZjY2ODFkZWNlYmVkZjBkMDA1YzM4OWZiZiBsZWdhY3ktdHJ1bmsKKzE3MDA5IGJkM2QxNDExYjY2YzFkNDA1ZDYzNjJkNTQ5YjlmNDgxNzRmYmI4YTUgbGVnYWN5LXRydW5rCisxNzAxMCA5YmYxNTlmZjQ5MTI5MjNlZDJkNDUyMDlhMzFlYTU3YTIxMjcwMDJmIGxlZ2FjeS10cnVuaworMTcwMTEgMjExOTc2MDM0Y2Y3ZWUzOTBjMzBmNzk3NjY3NjE2ZWRkNGE3Yzg1NyBsZWdhY3ktdHJ1bmsKKzE3MDEyIDlkOGNlNmVkNGEyOWFiNDIwMDM1ODAxOWI3MmUxYjY5ODI2NjVjNzggbGVnYWN5LXRydW5rCisxNzAxMyA5OTk2NzFmNjlkZjRkMDVmZjc0ZmYxOTEzNTA5YWZiNWIwYjFmNTg1IGxlZ2FjeS10cnVuaworMTcwMTQgNDEyMzRhZTk1ZDJhMDdlNWRiMDM0MTFhZTQ1MmNmMTBlYWQ5NWZmMiBsZWdhY3ktdHJ1bmsKKzE3MDE1IDI3ODdlOTM4MTdjNmEwYTE4ZGZiZTlhMGYzM2U1NjVmYWVjMTQyMjEgbGVnYWN5LXRydW5rCisxNzAxNiAzNGU3ZGU0YWRhNzBhZjNjYmI2MDc2YTNkZGY1ODJiNzRmOTE1MGU3IGxlZ2FjeS10cnVuaworMTcwMTcgOTAwYTE3NzU0MDIxM2NiZmRhNTRmM2IwMWMzZmE0M2VkOGQ3Nzk2YSBsZWdhY3ktdHJ1bmsKKzE3MDE4IGVjNmEyMWY1NWZhMWNlN2Q3NDVhMmRjOTZhZGQwMDE4NDhhODg3ZjMgbGVnYWN5LXRydW5rCisxNzAxOSBkMjIzNjIwYTgxMTI2ODljOGIxZmM4NDYyYjhmZTNlN2E4YjI1NzExIGxlZ2FjeS10cnVuaworMTcwMjAgMWIwZGFiZmZjNTFjZjA5MDA0MGVhYTk3YTM4ZWUxNmRiOTJlN2UzYiBsZWdhY3ktdHJ1bmsKKzE3MDIxIDFjMzQ0NTM3ODg3OWJhMjZiNDgxYjBjMmQ5NWRhY2FmNjA2NTYwZmUgbGVnYWN5LXRydW5rCisxNzAyMiA2ODE2ZGIyNjUwY2FiZjliMDFkY2UwNWZjYWFlNjg5ODg2ZGNlYzdjIGxlZ2FjeS10cnVuaworMTcwMjMgM2FlMTg1YjhmZjAzMWIxNDhlNTY0YzgyN2E0NTM2YjQyMmViNjA3NyBsZWdhY3ktdHJ1bmsKKzE3MDI0IDRlOTA3YTUxYTdhZmZjMWYzY2MyZGI5ODRiYWRlZjlkYzQ1YzFhNGYgbGVnYWN5LXRydW5rCisxNzAyNSA4YzdkY2QxZWQwOGE1N2Y2M2E3ODFlYjk2OGNhMTE5NzUzYzliYzNjIHVuaXZlcnNhbC0zMworMTcwMjYgYzE2ZjJkYzljMDg5ZTg2YTVjY2MwMDFiYTRiN2ExZjQ5NjM1ODY1OCBsZWdhY3ktdHJ1bmsKKzE3MDI3IDk0ZDcxZjJmYzlhODNjZGRjNzAzNWE4OWZlNTIxZmFiN2IzM2FiNmUgbGVnYWN5LXRydW5rCisxNzAyOCAwYzBlZTg4NmZiMDNiNzkwNTdmMDBiYjUxNzIzNzRhMGU3ODZiOTZmIGxlZ2FjeS10cnVuaworMTcwMzEgMTkxMjZlNTU3Y2U4NDFmNzQ1MzYwYzA2NmJjYWI1OWM4ZTM2MTIwNCBsZWdhY3ktdHJ1bmsKKzE3MDMyIGE4NTZjOTJiMWQ3YmYxYTNkZWMwZTMwMWFmY2UzYWU1YzQ1MTc3NzEgbGVnYWN5LXRydW5rCisxNzAzMyA1ODkxMTJjNDgyNzM0MTAwOGFjOGE5MTJjZTJhOWZjZGE1OGYyZWQ1IGxlZ2FjeS10cnVuaworMTcwMzQgNjNlYTJhMmRmMDZmM2QxOGFlNWQ0YjJlYzZlYzJjYzVlMjE4MGQ3NCBsZWdhY3ktdHJ1bmsKKzE3MDM1IGI1ZmIxNzVhZDUyODI1NDFjNmMyM2Q3MDQyZWE5ODk3ZGU2NTM3ZWQgbGVnYWN5LXRydW5rCisxNzAzNiAwNzk3ZmRiMjVhNzc5ZTE3YThiY2RlZjM0MzhjZWIxNjBlOWQxNmJmIGxlZ2FjeS10cnVuaworMTcwMzcgZDMzMTc5Y2RjNTExMjFkM2I5Mjk1NDhkYTgxZWVjOGFiOTc1MzNmOSBsZWdhY3ktdHJ1bmsKKzE3MDM4IGFlMWVkYzZmZjU0MzVmYWRmOGM2M2ZkNzc0Mzc2ZjdkOWZmNWEzNGQgbGVnYWN5LXRydW5rCisxNzAzOSBlNzlkM2NmNDQ0M2VkOWQ3ZmQ3MWY1Zjk0Y2JhZWNkOTExMjNlOGMzIGxlZ2FjeS10cnVuaworMTcwNDAgMmMzMjgzMDk0MzExNjc5NzNlYjU5M2VjYzJhNmVjM2I4NTM0ZDEyYyBsZWdhY3ktdHJ1bmsKKzE3MDQxIDMwM2MzNmU0ODc2OWY5Mzk1MjdjMmQyOGE0MTBlMDY3NjU4MjhkNDggbGVnYWN5LXRydW5rCisxNzA0MiBlNzVlYjRkOGUzMjliNDdhYjM5YTBjYThiNTQzYmVlNTkzMGQ1OGM1IGxlZ2FjeS10cnVuaworMTcwNDMgZDk3NGNmNTQ1Y2E2YWRiM2MyMjMzNWVlNDUxODlkYzFjYTE2OTIxNCBjbnJpLTE2LXN0YXJ0CisxNzA0NCA4YzUyNjkzMzk3ZDI0YTExZGRjYTI4OGE4Y2MwYzVlMjQ2NzAzNGM4IGxlZ2FjeS10cnVuaworMTcwNDUgYzM5NzMzYmUwZGM4MTFhYThiMTEwOWVmOWNjZDliNWM0MThmMWJjMiBsZWdhY3ktdHJ1bmsKKzE3MDQ2IGE0ZjUzMjhjY2YxOTIyN2JmZGYwZTVlNjM4OGM1NTA4M2EwOWNlNGEgbGVnYWN5LXRydW5rCisxNzA0NyBjYmU5NTkwZDIzNDRjNGI4MjZjY2M5YmFhZmI2NWM2MGVlNWJjOTE4IGxlZ2FjeS10cnVuaworMTcwNDggMTFhMjZlOTYzZGM5MDhmNmQ0MDBhZWQwY2NiMzAwOWQ0MTU1MWZhZSBsZWdhY3ktdHJ1bmsKKzE3MDQ5IDlmOWYzMjgwZGM2OGEwMTc4YjY0YzQzMDljODI4ZWY0MGEyOWRlODggbGVnYWN5LXRydW5rCisxNzA1MCAyMDM3N2YxNWI5NmE3Y2JmMWYxOGMxMGU2YmQ0ZjUyNDcyZjBjNDBiIGxlZ2FjeS10cnVuaworMTcwNTEgYWIwZWJmMTJkNGRlMjIyYzA3NDUxYWY5N2JlZWY4ZDIzZmE3NGZlYyBsZWdhY3ktdHJ1bmsKKzE3MDUyIDMxOTI1YWI0NmIyMzU0MmExYzM0N2UzZmMzMTViMjZhZDI3NTQwZTcgbGVnYWN5LXRydW5rCisxNzA1MyAzOTZiNGFiM2I5YzJhOWNiZGNiMjVkN2FlZmE0NzExYzUzMGU0OGMzIGxlZ2FjeS10cnVuaworMTcwNTQgMWYxYTE1NmVkNWFmOGY3YTUwY2UwNWZjODVmODU0MjNhMjRmMmFhNCBsZWdhY3ktdHJ1bmsKKzE3MDU1IGI5N2U2MjAyZjBiMTk2OGJkOTg5MDMxZjJhMTE4NTkwMjNiNmUyOTQgbGVnYWN5LXRydW5rCisxNzA1NiAzZTVkNmUyMDkzZGZlMWM1YmQ5NjU5YjYxYWRiOWI1ZjlkOGNjMThhIGxlZ2FjeS10cnVuaworMTcwNTcgNjNkODU4OTdjNjlmYTRkNTdjMTcxZTNiODlhZDM1MGE3YjM0ZTY3ZSBsZWdhY3ktdHJ1bmsKKzE3MDU4IDU4ZDc5OTVjZTc5NWY3OWZlYjAyY2ZkOWVjYmY4Y2ZlMDE3YmU3OWEgbGVnYWN5LXRydW5rCisxNzA1OSBkOTY0M2U5YzkwZWIxYTVjYzlkMDFlNzg4MjNlYTFjZDMxOTA3MDQ0IGxlZ2FjeS10cnVuaworMTcwNjAgNzRmN2YyMzdmNzM5ZDhkNmM5MWU0NTM3MTY0M2M3NGYzNGM4YWJlNiBsZWdhY3ktdHJ1bmsKKzE3MDYxIDBlNjZiNzc0MDk0YmZlNTUxNDU0Y2U3YjJjOWIxZDUyNTZiYjRlNjkgbGVnYWN5LXRydW5rCisxNzA2MiAzNDgzYTc4ZDEzNWZkNDYyNDFiYzZmM2E2OGU3Y2RmNThkMDQ1NGQyIGxlZ2FjeS10cnVuaworMTcwNjMgM2ZjYWMzNWM3ZjVlMjFmZmVlMTdiMjViNWNjMjI3YzU3OTMzNDRiMSBsZWdhY3ktdHJ1bmsKKzE3MDY0IDA2NzBjNGY5MDE3MTBmMmQwOWMyMjk0N2Y0MTZkNWJmNDc2MzVjMGQgbGVnYWN5LXRydW5rCisxNzA2NSBiMmE4MjkyYzM5YTlhMmRmM2ZlOTkxOTIwMWZhYWE3MzU1MTZkMjE2IGxlZ2FjeS10cnVuaworMTcwNjYgN2IzMmNjZGYxZDRhMjAyNGZjZjM4ZmNiM2ZmMTZkNmE3MzM2NjcwZSBsZWdhY3ktdHJ1bmsKKzE3MDY3IDU5OTRiYjYxOTE2MzMyYzVmZGU5MTRjNTJmNjgyMjkwYWZjMjQyYTkgbGVnYWN5LXRydW5rCisxNzA2OCA5Y2QyZjc5MGM1MGMzODI4NjRlYTM2YWNkMjdlNmQ3YjBkMDU4ZjVhIGxlZ2FjeS10cnVuaworMTcwNjkgYTE0MmVhMjBmZTk0ZjE4NDZmNDVjODlhMjk4MzRmNjlmN2U3YmQ4MyBsZWdhY3ktdHJ1bmsKKzE3MDcwIDQzODg3MWU3MDUzMmIxN2JlMjcwY2I4ZDVkODJmMjYxNjdkMTFkNGYgY25yaS0xNi1zdGFydAorMTcwNzEgYTFiMmZiMTdiZGU3ZWQ3YWI3Y2FmM2YwNmFlMTA5YWY2ODYzMzdhNCBsZWdhY3ktdHJ1bmsKKzE3MDcyIDRlMzY0MGEwNjg1NzIwNmJmMTY2ZWZmNWFiZjY3OGY3M2RiNWRlYzIgbGVnYWN5LXRydW5rCisxNzA3MyA0YWZiMDg4OWExNjVjMTk3NWI0YTEwNjEzMmI4YzJlN2U5ODlhNDc2IGxlZ2FjeS10cnVuaworMTcwNzQgNThmM2Y5MzYyNzlmZjY4MmM2MDVjODFiNTIzZDI0YTk3N2FmZTViNSBsZWdhY3ktdHJ1bmsKKzE3MDc1IGE5OWZhYjBiYTJkZjg4YzlhOGMxNjYwNzAzYjJlNzZjYzVjNGU3YTIgbGVnYWN5LXRydW5rCisxNzA3NiA3NDU5MTU5YmEyNDlmNDZmZjFkNDMwNWY1YmIxOGJjZTJmYTUxYzQ2IGxlZ2FjeS10cnVuaworMTcwNzcgODMwZGU2OGRlMzMwOTVhYjczZThlMTQ4ZDkwY2Q4MTgwZWM4OTc1ZCBsZWdhY3ktdHJ1bmsKKzE3MDc4IGNkZDk1ZDY3YTcxNDI1ODI5ZGU4Yjg1OTA4NTNiZTg3NzBkOTA3M2YgbGVnYWN5LXRydW5rCisxNzA3OSAxZmMzM2RmY2VjNDQyY2NmZjhlM2NmOTQxODAwZTJmMTZjNzVmZDE3IGxlZ2FjeS10cnVuaworMTcwODAgNWZmZjRmZmViMzVkNWM1YWYxZjdjM2ZkMmJiODRjYmRiMDRkOGYzYyBsZWdhY3ktdHJ1bmsKKzE3MDgxIDYzOTY1MjlhNDIxYzllYTQzMTMyNjVhMDIxMzU1NmJiNWVlZjdiODUgbGVnYWN5LXRydW5rCisxNzA4MiBhZTI3NTY0NDQ1N2I1NTRhY2U0NmJlYWY3YjhjOGNmYWRhYjE3ZWI5IGxlZ2FjeS10cnVuaworMTcwODMgZDg3Y2UyZDJlNDI1NzMxNjU2ODQwZTUxMTA3ODA4ZDE0ZTEzMDhmZSBsZWdhY3ktdHJ1bmsKKzE3MDg0IGFkZjNhMjg0YTJjZjFkNjZlNmFiMDE0MmFlNWJjMTdiM2NjMWZlYTkgbGVnYWN5LXRydW5rCisxNzA4NSA5YjIwYTY5YTUwNWUwZTZmMjg4N2I4NjY3MjI2OTMwYzljZTA5M2RhIGxlZ2FjeS10cnVuaworMTcwODYgMzYzODUxY2NjZjJhZWQyMmE3NWY2YWI2YzY3OWI1MGVlMjYyOTQyNyBsZWdhY3ktdHJ1bmsKKzE3MDg3IDY2MGRiY2MxOGI5ZWM2ZTk2ZmNlMWEwNDg4MzE1NGIzZDQ0YmQ0NWUgbGVnYWN5LXRydW5rCisxNzA4OCAxZjc2ZmM5OGI0YzhkZjAwN2IwODg2NTYwYTZlYjM5NzE0NWMxNWJkIGxlZ2FjeS10cnVuaworMTcwODkgZDNmOTJmM2ZjMGIwOTAyNmQ5M2FlYTVmYWY5ODk1YWZjOWMyOWQzYiBsZWdhY3ktdHJ1bmsKKzE3MDkwIDk4NjA4NDI5Y2E2ZTQyOTI0MzBkMjJhM2M4NGRhNGYyY2U2MjI0NGMgbGVnYWN5LXRydW5rCisxNzA5MSBjZDhiODE1Y2IxOTY1N2EwY2Y1MjFhZjBlYjVkZDRiMmNkN2Y3ZTc5IGxlZ2FjeS10cnVuaworMTcwOTIgOTBjYTZhYjI2OTA5ZWMzNDFlMDUxZGIyNGVmZjAzYmVlNzI1YWI3OCBsZWdhY3ktdHJ1bmsKKzE3MDkzIGRjOWQ5ZWM0NDY3OTM5NWEwZjljNmFmNWIxNzM4YWZhNGJlN2UyMDcgbGVnYWN5LXRydW5rCisxNzA5NCAxNWI2ZmMyNWY2MDUwOTZmOTM2NmM3MzcxMjk3OGMxODBiZmFlYjM3IGxlZ2FjeS10cnVuaworMTcwOTUgMjE1NTdiYTRhZmJjZWRiY2ZkZDQ3NmQwOWY5MTdkZTdhYTVhYTA1NyBsZWdhY3ktdHJ1bmsKKzE3MDk2IGJiZmM0OWE4NDM4OTY0MmU5OTBhOGJiYWQ4YzdjYzk2MDQ5MjIwMTAgbGVnYWN5LXRydW5rCisxNzA5NyAxOGRhMmJjNTA1OGMwZmRmOGI3OGY2NDFkN2NjMzYxNGUzNGYxODk3IGxlZ2FjeS10cnVuaworMTcwOTggYmQ5NTBjNTAxNjdmYTFkODFjMTQ0ZjgyZTcxZWM4YWRjYWQzZjJkMyBsZWdhY3ktdHJ1bmsKKzE3MDk5IGYzYThmNjAzNjU2NzA5OTUzYTRlNWQ0YTJmNDQ1MDE3NGVmMDU3YTAgbGVnYWN5LXRydW5rCisxNzEwMCA5ODRhYmQyMGVlYzI2MGQyNWI0MmU0NzNkOWU1NTdmNThjNTA3ZWE5IGxlZ2FjeS10cnVuaworMTcxMDEgZmI4ZmI1M2EyZWZmMDEzYzU2ZmMxYTllZDFiYTcwYmJhZWZlYjQ5ZSBsZWdhY3ktdHJ1bmsKKzE3MTAyIGIxYTBmZDNkZjFmYzhkNjEwN2NjZDlkZmZiMTQ4NmMzMjFjM2RkYTAgbGVnYWN5LXRydW5rCisxNzEwMyA2OGI2MWFhMWFhNGFhMDk0MDRiOWNiMGY2NDQ3OTg4ZDc1ZGJkYTRlIGxlZ2FjeS10cnVuaworMTcxMDQgOGNmNjYzMTI2NzIzYWRhZmU2NGYzZGU0ZTgxZTA5Y2E4MWQ4ODM1NCBsZWdhY3ktdHJ1bmsKKzE3MTA1IDRkNTY1MDk1YWU5OTMzMDE3MjcyZjk3ODAxMTdlOGM4OTZlNTYzOGEgbGVnYWN5LXRydW5rCisxNzEwNiBkZjg5MjM4YWM3NDc3MTkxODc1OGRlZDQ5YTk1NzM0ODc5ODE4MDllIGxlZ2FjeS10cnVuaworMTcxMDcgZTI1YWE1NmE1MjA3ZGY4YTkwYTU3MWQ2M2JiMTBhZWExYWFmY2I1YiBsZWdhY3ktdHJ1bmsKKzE3MTA4IGQzNTdhZDM2N2YyNjBmYmI5Y2IyYjM3MGYyNDE1ZjY2NzY4ZTZkYWIgbGVnYWN5LXRydW5rCisxNzEwOSBlYTk1ZWVlZTA0ZTcyNDkzNDhlNWRhZjdlM2NiZThjMTg2MDVlMGExIGxlZ2FjeS10cnVuaworMTcxMTAgNmFiNThjNTVlMGEzYzA2ODQwNjUwNzBhN2ZmNGZlYjc2NjU1NDQ4YiBsZWdhY3ktdHJ1bmsKKzE3MTExIDc3ZTI0NDNhYmY5YmRlMzI1MTg5ZmNjY2Y2ZWJmMGY1YTBhOTM1ZDcgbGVnYWN5LXRydW5rCisxNzExMiAyZTJmYmVlNTNlNjlmZTZjY2U2ZjA2YmU3N2FhNmZmZTkxYTk4MzM0IGxlZ2FjeS10cnVuaworMTcxMTMgNTljMTkwNTJhZTRmYjAyMWU4MDM3ZTRkMDI4YTgxZjJkZDIwZTY2YiBsZWdhY3ktdHJ1bmsKKzE3MTE0IGJmZTMwNGZjMDZhYjkxMjI0NDQ4NTc2ZDkzYjVmMzQyNDkxMTZkMTAgbGVnYWN5LXRydW5rCisxNzExNSAxMWE4OTNjYmMxYTAxMmE3ZGY4ODU5NGVkYjQyNDcyMWFlMTk1ZDFhIGxlZ2FjeS10cnVuaworMTcxMTYgMjZkYzYyZGU5YjZlMTVhYTU4OWNlNTk3OWZjMTVlYThhNjc4MTY4YiBsZWdhY3ktdHJ1bmsKKzE3MTE3IDA1MzYyN2U3YWMxNDFlNDhlM2MyNWIyNjNhZjY5ODQ2ZDFmYjU5NTEgbGVnYWN5LXRydW5rCisxNzExOCBlNTI1M2I2OTJlOWZiZTM2NWFiNDM2OWNkNzU5YjI0YjhiODZkNjA5IGxlZ2FjeS10cnVuaworMTcxMTkgODE3MmFjOWQyMTk2NmNmYmE1MDlmYmNkZTIxNWVmMjZlY2FkNGJhMiBsZWdhY3ktdHJ1bmsKKzE3MTIwIGVkYTQ0OWY1NGU0NDllZjIyZTczY2FhZDUzY2UzODBhZmZlMzEwNGMgbGVnYWN5LXRydW5rCisxNzEyMSAxMjA1YjE4MGJhOTAzYzZhYTA0ZDdlZGYzYTM0ZTIwMjY1NDY1M2YwIGxlZ2FjeS10cnVuaworMTcxMjIgYmVjYjFlZjBhNTczNTM5MDc2YTY5YjcxYjI3NDdiM2I0ZmYxZjNiYiBsZWdhY3ktdHJ1bmsKKzE3MTIzIDUxNjdlZDY4MzZmYzRhMWFhMjAxYzYxYzAxYzRhNTIzMjNhM2I0MTggbGVnYWN5LXRydW5rCisxNzEyNCAwMTNjZTdlZTcxNjdjMzlmZjM5ZTQ1YTc4OGZmMTcyMmU1YWE1NTE5IGxlZ2FjeS10cnVuaworMTcxMjUgMzE2NDFlYTg5YTUzNGQ3MDZjMWIwODM0ODcxNTdiNTMxOWU0Nzg4MSBsZWdhY3ktdHJ1bmsKKzE3MTI2IGY4YjIwZDkwYzlhZjI1NDA4MDYwZTZjZmU5NmVmODY4OTUxODI0MmQgbGVnYWN5LXRydW5rCisxNzEyNyAwMTk4ZDIwMjAzOTAzNjgzMTQ1NWFmYzlhZDU1ZGE3N2VlYjk3NDVhIGxlZ2FjeS10cnVuaworMTcxMjggZTM3NzllZTk0MmQwYTAwNWViMzI2YWU5YjYxNjYwOTA0ZGI3NmU3MCBsZWdhY3ktdHJ1bmsKKzE3MTI5IDYyZWMwYmZkOTNmODA4YzY3YTNiMjhmNmU0MDdjYTBjZGJmYmVlY2YgbGVnYWN5LXRydW5rCisxNzEzMCBiMjRkYjc3MGRmZmRkYTljMDhkZmNhZGY5YjRlNThiYjIxOWU1OTRmIGxlZ2FjeS10cnVuaworMTcxMzEgYjhiM2Y3NmZmZDUxZDEyNDFhNjgyZjgyZWQ3MmQwMWY4NTI3N2M5MiBsZWdhY3ktdHJ1bmsKKzE3MTMyIDdkNDBiZDA3YjEyOTY2MzViYTgwZWM2YWI4ZmZkN2U3YTNkMmEzZDggbGVnYWN5LXRydW5rCisxNzEzMyAyZGI4MDdmMzQ1YmNjMDc3NTQ2OTFhYzgxNzc3MDZmY2E3OGE4Njk1IGxlZ2FjeS10cnVuaworMTcxMzQgOTc2NTFmMjhiMDA0YzViNmZiZWJkY2NmNWNiMjE1MDY0MjI5MTU1NyBsZWdhY3ktdHJ1bmsKKzE3MTM1IDRiOThkZmRlZDQ5ZjQwYjA5YTYxNDMwZmRlMzE5YzBjYTE1NDk5MjUgbGVnYWN5LXRydW5rCisxNzEzNiBjMGZlMWE4Yjg3MmMwNDA3MzJhOTUzMTU2ZWZiMTFiYWVjMTllNzBiIGxlZ2FjeS10cnVuaworMTcxMzcgNGQ0OTFhZWI5ODBmZDFkMzNhNzZjZTY1MTE0OTM0YWYzNGMyNGI4MCBsZWdhY3ktdHJ1bmsKKzE3MTM4IDRkZmJkOWIzNDEyYmFhZTM2MzYzYzdmMzFhOGY5YjhjYTEwMGVjZTggbGVnYWN5LXRydW5rCisxNzEzOSA1MTExMjNkZDg0MjQzZDM0MmRjMDZmNmY3YWNkYTFlYjg3Zjg4NjZjIGxlZ2FjeS10cnVuaworMTcxNDAgMmRjZmFkM2IyMTE1ZGViNjU3NmFmZDk0MDhjNzY4YTc5NWI5MjcxOSBsZWdhY3ktdHJ1bmsKKzE3MTQxIDMzYzdkZjBjNTQ5ZDcyZmUzZGFmM2Y1NWZhYmRlNjllMTQ4ODMyZTEgbGVnYWN5LXRydW5rCisxNzE0MiBkZGFlZjQ1NTk1ZTJkNzYyYmUzYTAyZmQ4NDc3ZDIxNzQwY2UwZGRkIGxlZ2FjeS10cnVuaworMTcxNDMgMWZhYjkyODM2NzU4ZjgwNDNiY2NhNjUzYjQxYzlmZWUzMjNjYWQyYiBsZWdhY3ktdHJ1bmsKKzE3MTQ0IGFkYTRlYzRjZmZkNTAxZGJjZGE4OGMwOWYwNDI4OWE1ZDRmYjBhY2QgbGVnYWN5LXRydW5rCisxNzE0NSA1OGYxMDBhY2MzYWMwZWZhMmE1OGZhZGUzZjNjMDE3NWY2NzJjOWMzIGxlZ2FjeS10cnVuaworMTcxNDYgNDYwZmYzY2YzMTk1YmUyZGMxZWQ2NDhjNGFhZThiMzI4ZjZlNDI4YyBsZWdhY3ktdHJ1bmsKKzE3MTQ3IDU4ODQyY2JhOGRiY2QyMzFmNTM0ZDI4ZDU2NmVhZjU5NDhiZmYwNDEgbGVnYWN5LXRydW5rCisxNzE0OSAyMmIyZWJkNzgzNzJmMjU1M2ZlZTg4MDcxOTJmMmQ5MDQ4YjllMTliIGxlZ2FjeS10cnVuaworMTcxNTAgMTRhMmI4ZDRmY2ZmMDhiYmYzZDBlNzZmMGRmZGJjYTgzNjBjMDRlZSBsZWdhY3ktdHJ1bmsKKzE3MTUxIDczZjM5ZWE0ZWZiN2E3NGY2OTEzOTk2MmUwZTMyMDU0NzE0ZGFjY2MgbGVnYWN5LXRydW5rCisxNzE1MiA4ZjJlNjEzNGNlYTAwYTUwNmE5NWNlZjk0MzdiZDg3MjQ1M2Y3ODFhIGxlZ2FjeS10cnVuaworMTcxNTMgYjU3ZTM2MGE2ZDE2MWE5YWM2ZGVmYzM2MjY2NmI1NDYyZjU5MzQxZSBsZWdhY3ktdHJ1bmsKKzE3MTU0IDZkZWUxOTg1YzY4MWMxMGFjNTAyYzJlNmM5MDk2ZGIzNTRhOGU0MTkgbGVnYWN5LXRydW5rCisxNzE1NSBjYmU0MjNiM2JhM2EwNjViYTY1ZDYzOGIzOTQwNjhmYzY5YjZlZDQ3IGxlZ2FjeS10cnVuaworMTcxNTYgZWI3YzI3ZThmZTM3ZWU3ZDRhYzYwMmMwMmM5YTE3ZTFiZjQ0MDBkNSBsZWdhY3ktdHJ1bmsKKzE3MTU3IGY1NWI2NzNkOWFjZDc0MjVjYWY5NWUwZGUxMTg5Y2YxOGUxMjcyNjUgbGVnYWN5LXRydW5rCisxNzE1OCBiZWE4ZjE0ZTdkNjFjZjgwZTUzMjNjMWRjOTlkMjczOGMzMGUxMmZhIGxlZ2FjeS10cnVuaworMTcxNTkgOTUxZWIzYWYzNDk0ODNiZDU3MTYzYTQwN2I1MDhhZDIzMjc4OWEwYyBsZWdhY3ktdHJ1bmsKKzE3MTYwIDAxMTVmNDAzZmFkZDhmYjUwZGQzMDRmYzJjNTFiZjcwMGEwYWY3OWMgbGVnYWN5LXRydW5rCisxNzE2MSAzYjg0YzVmZjg5ZGE4OTNmZDlmYmI0NzZkZmM1ZDhhNDFiMjljZmI1IGxlZ2FjeS10cnVuaworMTcxNjIgMDU3YzdjZWI5MmYwNDQ4NmYyOTdiYmY3Njg2M2U2NGYxNTJlN2Y4NCBsZWdhY3ktdHJ1bmsKKzE3MTYzIGY0OGVkOTQ0ODg0YmZmZjJhNTUxNzM0ZjQ5N2QyZGUxOTkxOTcyZDMgbGVnYWN5LXRydW5rCisxNzE2NCA4MDFhMzA0ZjI0OGZiZmY3NjhjZDRlYzJlMDljMGMyMjM2NTNlZjg1IGxlZ2FjeS10cnVuaworMTcxNjUgYWI2MWMzMzVhMDRkY2QxYmY0OTU1YjZkYmMwYTUxNzI4ZjM0MTUwOSBsZWdhY3ktdHJ1bmsKKzE3MTY2IGQ0MWM0MTM3MWRjMTA4OTA0MGRiNzQ3ZTE1ZDMyODU5NGY3OTlkMTQgbGVnYWN5LXRydW5rCisxNzE2NyA2OTQ5YjUwMzY0ZGQwOGM4MjE4Y2U3YjczNGM2OTYxMDRkOTIzMjc3IGxlZ2FjeS10cnVuaworMTcxNjggN2I1M2VjMjcwNGUwMGEzYTVlNWQ3NDhkM2UwZjgyYTI4ZjcwMjVhZCBsZWdhY3ktdHJ1bmsKKzE3MTY5IDQzMmQzMDhjNDVlOGQ4YjQxZmMxYWM3MjQ3MDI4N2FlZGZkZWUyZWUgbGVnYWN5LXRydW5rCisxNzE3MCA1Mzk3ZmRmODhlYzI1YTFiNTgzN2RlYzlmYzg1MjgzOWFiZTQ0MWUwIGxlZ2FjeS10cnVuaworMTcxNzEgMmRlMWZiNTMwMmVkODdlZDY4ZjJiZDk3ZDBmNTMxZThlYmY5MzlkNSBsZWdhY3ktdHJ1bmsKKzE3MTcyIDZkMGY2NGY3ZGVkZDE4MzU0ZTU4YzkyYjNmYWRlNmE3NDc2OWU1YTkgbGVnYWN5LXRydW5rCisxNzE3MyAyMWJmOWZhOTIyNTU4NTNlZTQyY2FjY2MyNDRlNGU0ZWM1Y2E4Mjk4IGxlZ2FjeS10cnVuaworMTcxNzQgNzM1MmJiMTYzMmJjMDFhNDkxNjEyMjAzY2ZhNWM2MjY5NmNjYmNhYSBsZWdhY3ktdHJ1bmsKKzE3MTc1IGVmOTc4NTIwMDg1ZjEwZTU5NzgyNmIyNTlhYTkwNmIxYjdiOWU2NDYgbGVnYWN5LXRydW5rCisxNzE3NiA5M2RhYmZjM2E4M2ZjOGM1MmJhZDg4MmJjYjUzNzY1M2NiOGNhZTYzIGxlZ2FjeS10cnVuaworMTcxNzcgZGViNzI3NDM1ZjM5MDY0ZTM1ZjY4MjVkNzk0OGQyMGVjODkwMmJlYSBsZWdhY3ktdHJ1bmsKKzE3MTc4IDBmNjgwOWViYTUwYTg4Yzc3M2QxZDcxMThiYzM2OTdhZmI1N2E2MmYgbGVnYWN5LXRydW5rCisxNzE3OSA2MzBjOGFiZmE4ZDdjMDhlNTQ1NjdlNzk0OTE1OTIwOWZjMzgzMzhjIGxlZ2FjeS10cnVuaworMTcxODAgM2IyZGZiYzM0Njg5ZGVkMGIwZTcyNjI2ODIyNjdmYTY3MmE5MmNmMyBsZWdhY3ktdHJ1bmsKKzE3MTgxIGEzOGUxMmU0YWZiNzBjNTlkYmU1ZTY0Nzg0NDFhNGFmNzU1MDAxNTEgbGVnYWN5LXRydW5rCisxNzE4MiAzZWRhMzAxMGJjMGEwZGI4NWQxOTgxODI4Yzk2NmJmYTA2OGYxMzQ5IGxlZ2FjeS10cnVuaworMTcxODMgZWE5ZTYyNWIwMWEyYTA1NmQxZTUyMzU5NThlNmZiYzU3ZmYwOWE1OSBjbnJpLTE2LXN0YXJ0CisxNzE4NCAzNTc2M2JlNzVkZGI3Y2E2ZjcyMjhkNTdmODJjY2E0NjRmMzNjZWQ0IGxlZ2FjeS10cnVuaworMTcxODUgZDFkNWUyZGMyOWRiNTBkNzQ4ZDkyZGEwYzhlNDRkZWJlZjlmZjU1MyBsZWdhY3ktdHJ1bmsKKzE3MTg2IDVjNTFjMDk2ZGUzYmZlNmNjMzZiYTcxOGRiZjBlMzRmNTRkMGM4OWIgbGVnYWN5LXRydW5rCisxNzE4NyBhNjY1YmRjNDkyMmY1ZGZiMGRhZGRiYTkyNmRjN2ZjMjNkOGZjOWFiIGxlZ2FjeS10cnVuaworMTcxODggNWRhNDA2ZWJlZjU1MjA0ZjdkYTFiN2E5YmFmYTk4MGNjMDM0ZGEzNyBsZWdhY3ktdHJ1bmsKKzE3MTg5IDY2NWIxOWU3Nzc2YjUzYjIwMWU1NDI5NmVmYjBhMGQ5NGE0Mjc1OGUgbGVnYWN5LXRydW5rCisxNzE5MCBjN2VkNDEyYTA3NWIwMTlkZDUwZDdjZmE2MDY1YjgzNjU2Y2IzNGVmIGxlZ2FjeS10cnVuaworMTcxOTEgMzZkMGI1YjA5NGU0MjFmYjdlNzk2NmEwYjU0YTUzNjM3NjA4MDExYSBjbnJpLTE2LXN0YXJ0CisxNzE5MiA3YTFmZWNjMDhkNzBhOGNhMDBlMjIwNGU1YjIyYzU2ZWJlYjNkMjIyIGxlZ2FjeS10cnVuaworMTcxOTMgNjQ4YTEyYTc4MGQ5MDgzNDRhYmY3ZGY5NGZlMTZjYmViOWI4YjYwMiBsZWdhY3ktdHJ1bmsKKzE3MTk0IDAzNGJmMTA4MTMwNDc1MDIzOGE0NjU2Njk2YzhhN2I5NWZjMGE2MWMgbGVnYWN5LXRydW5rCisxNzE5NSBjYWM5MzkwNzZjN2RiZWU3MjIwMWJkZTMwYzYwYTMzMDg3MjQ2NDI0IGxlZ2FjeS10cnVuaworMTcxOTYgY2QwNDdhODU4YWNlMTliYmI1MWQ3NjBjOGU5OGJlYTg0ODA5ZDE2ZSBsZWdhY3ktdHJ1bmsKKzE3MTk3IDA5ZGNmZjUxOTMyYzc3ZGRlNTJiYmY2MmE2YzVkMTZmMjk0OWFmNjggbGVnYWN5LXRydW5rCisxNzE5OCA2NGMyNWZkMjlkNmY2NzE3YmRjYWZmNzEwYmM4YzY3NjgwM2I3NDdhIGxlZ2FjeS10cnVuaworMTcxOTkgZWQxNDdhNTM3MDFiODAwNjUyNDc4MTRhNTVhYWM5NWRkNjliMDA3NiBsZWdhY3ktdHJ1bmsKKzE3MjAwIDhkZjE2NmNhMDliMjVhZTkyNWI3MjM2MzE1YTM0Njk5YjkwOGY1MDQgbGVnYWN5LXRydW5rCisxNzIwMSA2ZjZmOTY1YzVlMmRiNjRiOTQ3ZDRmY2M3MzgxZTgzYWEwY2IwNzU2IGxlZ2FjeS10cnVuaworMTcyMDIgZmQ0Nzk5NjBlNWUwYzJjMDc3OGVjNDIwODEyNzZiNDE3YTAyYjU0NiBsZWdhY3ktdHJ1bmsKKzE3MjAzIGRkNDc2NmFhMmZkMmY3N2I3NmE4Mjg3NzgyOTg1YTQ4N2E2YWE5NTkgbGVnYWN5LXRydW5rCisxNzIwNCBjYTczMTZhMDA0NjRlYTQ4ZjE4ZjBlYTg1MTlkZGE5MjVkY2ZmZGVmIGxlZ2FjeS10cnVuaworMTcyMDUgYjA2OWQ3ZDljZThhMDBkZmFmNzEyNDBiOTEyZTNhY2QyM2ViY2ZjZiBsZWdhY3ktdHJ1bmsKKzE3MjA2IGNkMGM0ZGQ0OTA0Yzk2MzQxMmJjMmM2NTM4NTczZWU4NWY0M2NlOGIgY25yaS0xNi1zdGFydAorMTcyMDcgZTk5YjBkYjE2ZGQ3ZDNjOTNjYTg4NTg1ZTI2YzBlNjkwY2E4MjgyNSBsZWdhY3ktdHJ1bmsKKzE3MjA4IDc5NThhODhlZGRhMTc3Mzg5NTI3NTkyYThjMGJiODk4NmZkNmQ2MzkgbGVnYWN5LXRydW5rCisxNzIwOSAyZDZjZjY4YWE2NGE1NWQyZmEyYjJmN2NkM2RkNTMyZjA4NGQ1MDMzIGxlZ2FjeS10cnVuaworMTcyMTAgMzg4YzcyMWMyMGNmYjk1MzQxMGU4MDFlZWMxNmU1ZDUzMzE2ZGE1NCBjbnJpLTE2LXN0YXJ0CisxNzIxMSBjZmQwNzQzMjFhYWQ5ZDFhNTJjZGVhZTdlMDBlZGZkOTdmOGU4NTExIGxlZ2FjeS10cnVuaworMTcyMTIgN2U0N2IzNzBlYjY3NTUxOWI4NzUyODY0NzAyNjYxNjA2NGNlYmQ4NiBjbnJpLTE2LXN0YXJ0CisxNzIxMyA2ZmI2MWI4MzQzNWRhMWI2Zjg3ZDZiYjBhOGZjMzI1NTYwMDA4MTM5IGxlZ2FjeS10cnVuaworMTcyMTQgZDM5NWNhYzc4NmIyMjRiMTg2MWUzMjhjZGRhZjMwNTJlMGVhY2NkYSBjbnJpLTE2LXN0YXJ0CisxNzIxNSAwNTA3ZTU2OWQ3NGFlNjUxNmVhZDY3M2RkYmNkMjU0ZjZkYzM5M2EyIGNucmktMTYtc3RhcnQKKzE3MjE2IDhhOTMzZWM0N2VmNzMzOWNkYjE1ZTEyYWM5MmFiODE2NTE2M2IzYmQgY25yaS0xNi1zdGFydAorMTcyMTcgMzlhYjI4NTcyMzA3ZjgxODhhZTU1MmMyYWNkNmQ4OGNlOWE4ZmZlNSBsZWdhY3ktdHJ1bmsKKzE3MjE4IDU3OWExZTczMWZjODQyNGVlODUxZTJkYTBlNWQwNmE3OThhOGE3ZGYgY25yaS0xNi1zdGFydAorMTcyMTkgMWZkY2EwYWY3MWQzNDNlODhlNmJmNTBmNzk1NDQyMTMxNGM5YmJiZSBsZWdhY3ktdHJ1bmsKKzE3MjIwIGFmZDZmYWU0NjdlNTkyNTk1MWJlOTk5OTM5NWVjYTdhM2ZkNGJiMGYgbGVnYWN5LXRydW5rCisxNzIyMSBlZjI3MTRiYjA3MzBhNzUyNTZlODMyYjcwNzcyYTQ3M2I3YTNhYmM3IGxlZ2FjeS10cnVuaworMTcyMjIgOWYwM2QyZmFmMTU2YWRlOWRjMjk2YjEwNWYwNDlmMjVkMjc2ODg1MyBsZWdhY3ktdHJ1bmsKKzE3MjIzIDFjNDM4ZmQ1YzBlOTM0MDA2ZWI0MmI5YzU2M2FhNTEwZTdhMjMzMDAgY25yaS0xNi1zdGFydAorMTcyMjQgNDRmZjdlNDE2M2FhMWUwY2IyMjUwMmJjMDY4NGI4YzhlYWUxOTk0OCByMTYxLWJyYW5jaAorMTcyMjUgNTU4ZWE5MGY1YjFjYTI4YzNmNjA0MmJjNDZkZTEyYjljNTU4MTdjZiBjbnJpLTE2LXN0YXJ0CisxNzIyNiA5YjFkYWYzZGVlMTRkNGU0MWNkMjQ3Y2M3Mzc2ODkxNWE1Mzg1MTEwIGxlZ2FjeS10cnVuaworMTcyMjcgZjFiZDMwNDQ3ZTMwYjU5YzA4ZjAyMWM1OWYxN2M2OGQ4OGM2ODM5ZCBjbnJpLTE2LXN0YXJ0CisxNzIyOCAxZmQ2NGIzYWY3NjAyMjhiYjVlYjUxMzRhNjI0YWUwODFkNjNjNDM5IGxlZ2FjeS10cnVuaworMTcyMjkgNjNkODI0Njc5YjI4NTMzYmZhYTEwZTM0Y2Y0OTdhMDU2ZDBjNDExZCBsZWdhY3ktdHJ1bmsKKzE3MjMwIDdlNGY2MDJkYzY4NTc2YjJlODg2YjBmNTIyMTkyNmQwOWUxMTczM2QgbGVnYWN5LXRydW5rCisxNzIzMSAyZWViNThiNDNlYjE4ODNiZGY0NDM3MmZmNGM4MTFjN2I4MzFiYmY2IGxlZ2FjeS10cnVuaworMTcyMzIgMDVmMTIxMjhjMzhkYmU0MjRjMjk3YjRmY2FhM2RmODc2NzBiZTczZiBjbnJpLTE2LXN0YXJ0CisxNzIzMyA1MzJjOWNlNmM4N2MxN2Q5YmI1MWIwN2FhMGZjYzRjZTM4MDkwYmNiIGxlZ2FjeS10cnVuaworMTcyMzQgYTEwYWZiM2FkMjc1MGMwZTI2MjQxMzRiMWY1OWJjOTAwOTBiNzI0MyBsZWdhY3ktdHJ1bmsKKzE3MjM1IDU0MmQxMGJkMDRmNDc3YTRiODk5ODdmYjEyNjc1MGZlOWU0ZDIyYTAgY25yaS0xNi1zdGFydAorMTcyMzYgY2Q2ZjcwNWM1NGI4YzQ1M2I5Y2QzNjljOGYxNjcwMWFiMTQwNGQwOSBjbnJpLTE2LXN0YXJ0CisxNzIzNyBmNjI5YWYxZDRiZGFhODJjYjVmZTYwOTkyYjM1ODhlZTg4YjdlYmQzIGNucmktMTYtc3RhcnQKKzE3MjM4IDhkNDcxMDE0MTliODRjYWI5M2RjNWFjZjJkMjAxMTEzMmIxNzJkMWUgbGVnYWN5LXRydW5rCisxNzIzOSBjZDJiZTE1M2YyMjhmN2ZjZTc2OTAzZDFjOGM5YTZmNmYzNmMwMTEyIGxlZ2FjeS10cnVuaworMTcyNDAgMzY3Y2E0OTE5MGJjNTI2NWU2ZDcxZWZmYWJkYzc5NTAyNGQ2ZTE3OSBsZWdhY3ktdHJ1bmsKKzE3MjQxIDMyMDE1ODAyNmE0YmM0ZWU5MTY1MGVkOTA3YmQ0MDgzMmUxNGY3M2IgY25yaS0xNi1zdGFydAorMTcyNDIgODg4NTNjMTAzMDg3OTdjODVjYWM1ODg3NTljZjA5MTA3MWU1YTExNCBsZWdhY3ktdHJ1bmsKKzE3MjQzIDZhNWZiZThjNWFhNmE4ODkzOGY4MTIyZGIyMjA3ODRjZGFhOTdkYzMgbGVnYWN5LXRydW5rCisxNzI0NCAzZTM3Njk4Y2Q3MzdmNGY3Y2FjYzQ0OTM5ZWEwMTcyODc0Zjg3YjcwIGxlZ2FjeS10cnVuaworMTcyNDUgOGI0MDY4NTZiYzMxYzEyYWY0Yjc4MGM1NTU2NzI3NzI3NTdhODliMiBsZWdhY3ktdHJ1bmsKKzE3MjQ2IDA1N2JjMTk3MDM0NTI2YTVkZjEwY2U1ZjFhNWJhNDEzM2UwOWYzZDQgbGVnYWN5LXRydW5rCisxNzI0NyBkNjg5YjhjZTlkMGE5MjhiYTY1MjM5MjY4NTIxYjBkZDNlNDAxZGYxIGNucmktMTYtc3RhcnQKKzE3MjQ4IDg3MjE5MTVhNmFjYjgzMDdhNWVjMTIwYTg3MGVlMjI4YjNhYmNiZTUgY25yaS0xNi1zdGFydAorMTcyNDkgYjE3NTk4ZmYyY2RkNzQwMWQ4Zjg2NjUxZjVmZTAwMGZiYmFhNjgwZCBjbnJpLTE2LXN0YXJ0CisxNzI1MCBkOGQxODEyZGZjZTA2NDZiMmZkZTU1OWJkMjYyYTkxYzgxOTI1YTc5IGNucmktMTYtc3RhcnQKKzE3MjUxIGQ4NDY2ODU1MDI2ZjVlOWJkYWJhYjdhMmJhM2Q2OGNkMDMyNmJjMDcgY25yaS0xNi1zdGFydAorMTcyNTIgNjU2M2Q3MWU3ZDk1YWQwYmY4ZGFhMTZjNDQ3MThmMDdkMTM0ODI4MSBjbnJpLTE2LXN0YXJ0CisxNzI1MiA3ODZhNTdiN2RjNmNjZjU2ZTYzMGViOTFhMjYyMDE2YjlhMTQ5ODJmIGNucmktMTYtc3RhcnQKKzE3MjU0IGJlZWZhODVhMzkyNGMzZTIyYTU4MzdiZDNlYjYxODZkNzZlYzg0OWMgbGVnYWN5LXRydW5rCisxNzI1NSBmYzEwYjIyN2MxN2RkYzJmOTE4OTUyYWJjODczNmU2MDQyZGIwMmE1IGxlZ2FjeS10cnVuaworMTcyNTYgOGQwMzVjMmZjMjM0MDg1ODM1MDljODI1ZmU3NTA3ZDg5Mjk3M2I5ZiBsZWdhY3ktdHJ1bmsKKzE3MjU3IGQxYzM5NWM0NzEwMmExNTZiNDIyYjJiZjVkMzA5OTU1OTI0NzliMDEgbGVnYWN5LXRydW5rCisxNzI1OCBhNzZhYjdjOGZjMjkyMWJiYzFlYzAyNTJhY2MwMjkwMDg5M2U5NzAwIGxlZ2FjeS10cnVuaworMTcyNTkgNDMwNjEwN2IxMzk1NTE4ZDlkMzI5N2UxODMzYWJlYTBhZWZkMzcxNyBsZWdhY3ktdHJ1bmsKKzE3MjYwIGE3MDdhNWYxNzEzOTMyNGE4NGRjMmU2ZTQ1MTAzMGVjZGY2Y2IwMmUgbGVnYWN5LXRydW5rCisxNzI2MSBiMTk0NGNlNTQ5MmIyZjJiYzMyZjBmZGE3YTlhMDE0NzcyODkxNzFiIGxlZ2FjeS10cnVuaworMTcyNjIgODYyNjZmNzYzZDQ0MTk3MTdlZDY0MGYyMDdkNjAzODIyODkzZTNlZiBsZWdhY3ktdHJ1bmsKKzE3MjYzIDkwZjA5NDZmNjRlNzgxZTczMmQ2ZjU2N2NlY2JkNDZlNjM1YTkwMjkgbGVnYWN5LXRydW5rCisxNzI2NCA2MDcyNjRlN2JmNTE0MzQwYjYyMTc5MTEzNTBiZjAwNzZjYWRkOGU2IGxlZ2FjeS10cnVuaworMTcyNjUgNmJlNDQ2ZmZhMmQ5YWJjOTEzYTcyZDNjYzZiOTI4ZTBkZGVmOTU2MCBsZWdhY3ktdHJ1bmsKKzE3MjY2IGQ0MmZjM2M3MTczZTVjNzNjN2I4OWZiMmVlYTYwOTFkNGI3NjBmNmQgbGVnYWN5LXRydW5rCisxNzI2NyAxMGJlOTY4MmIwMDNmMjNjMjI3NmQxMjcxZDI1YjViMzFjMTA2ZTVkIGxlZ2FjeS10cnVuaworMTcyNjggMGRjYWU4NDUwNmJhYTljYjczNTJjMjc3NjRiNzE5Yjc2OWJiMTI4ZCBsZWdhY3ktdHJ1bmsKKzE3MjY5IGJhMjJhNWVkNDY0MTBiY2Q5MWFhMGY1NjZjY2EwN2VmYzZiZjhiNGIgbGVnYWN5LXRydW5rCisxNzI3MCBlMzZhZmY1MmZiNGUwZmMzNjA4YzBkNTkyMjI2Y2RkY2M4OGZiYTMyIGxlZ2FjeS10cnVuaworMTcyNzEgYWNkNDExM2UzMDFhM2M3YmEzZDJhN2EwMmRhNDIxMjQ2YTNiMzJhMCBsZWdhY3ktdHJ1bmsKKzE3MjcyIDI0YmUwNDlkMjAzNzkzNDJhNWUwNjc3YzA5NGIzYjRjODM0YTU1MzUgY25yaS0xNi1zdGFydAorMTcyNzMgZjk0NDhmNDRlNzAxY2FkNTZjN2NmNTgxNTk2ZjE1MDM1NTBjOGY1OSBsZWdhY3ktdHJ1bmsKKzE3Mjc0IDY0NjA0MTFmNDczZWZmY2ZkODYwNjVjNmQwN2M3YTkwNjMwZmIwMDggbGVnYWN5LXRydW5rCisxNzI3NSBjNjE2Yjc5MTA3NDU4ZGZlYjRmYWQ1ZThmMTgxMmE3YzI1MGMwMTAzIGNucmktMTYtc3RhcnQKKzE3Mjc2IGMzODRmYWFlNTA1MmM1ZjM5ZTY4M2JhYmEyMDExZGMyOGRlODY3ZDggY25yaS0xNi1zdGFydAorMTcyNzcgZjhlNjY4NDQ3ZTJhMWQyOTBkNTcxYTQ5OWFiYzE2ZGE4NmQ0YzQzMSBsZWdhY3ktdHJ1bmsKKzE3Mjc4IDQ0OGJkZjQ0MTc5MjNmYWI3YWFjZDhmNTU2Mjc4ODYxODMzNGVkODEgbGVnYWN5LXRydW5rCisxNzI3OSBiYjkwODMzMTJkODE0YzRlYjRkYWNmZjE3ZTFjM2RlYzkwMTA3OWE5IGxlZ2FjeS10cnVuaworMTcyODAgY2NiMzdlMmIyNDYwM2I3YzIyMmQ1OGQwNjllMWY3OWFlNjhmYWRhOCBsZWdhY3ktdHJ1bmsKKzE3MjgxIDlmMWYwYTZiYzE4ZTc1N2Y1Mjc0Y2M3MmRlMzRhZmFjNDQ5ODYzYjggbGVnYWN5LXRydW5rCisxNzI4MiA4Mzc2YWQ2NjQ1ZTNkZGM1OTI4N2I1ZWYxZGFhOTU1NGE4MzMzMDk1IGxlZ2FjeS10cnVuaworMTcyODIgMzVjNGZjMTQxNGE1OTg4ODYxNGI5YmU3ODRhMjVmMjMzYmE2Nzk4NCBsZWdhY3ktdHJ1bmsKKzE3Mjg0IDc3ZThlNTUwYWUxM2Y3NWUxYzY0MzcwMjMwNDc1OWU5NDkxMmM5NDcgdW5pdmVyc2FsLTMzCisxNzI4NSA0ZmUwMTQ4MDg4ODVhNDZmNDdiODEzYTM1MjczODc5OTRhYjU3ZTQxIGxlZ2FjeS10cnVuaworMTcyODYgNzg4NmIzYjZjNDBmN2JkNWVlY2FlNWMzNmNmZmYxOGUyNjc5N2NmNCBsZWdhY3ktdHJ1bmsKKzE3Mjg3IDM0Mzc5MTI3ZWUzYjRkOTFmZjA1ZTMwZTU4M2YyNmExNjQ2ODM1N2YgbGVnYWN5LXRydW5rCisxNzI4OCA5ZmEzYzU3MWRhZmYyMDJlMzc3ZDIzMGJkZTNlODIwOTY3ZDE0MTQyIGxlZ2FjeS10cnVuaworMTcyODkgYzA1MDk5ODk0MDVlYzBlZWJhNzZjYjdmMmYxNTlhOTgxYzI3NzA3OCBsZWdhY3ktdHJ1bmsKKzE3MjkwIGUzNDhlZDk0NmQxZjRjMWIwYmMxOGI4NWZmYjlkYmFmYTk5Nzk2NjIgbGVnYWN5LXRydW5rCisxNzI5MSBhYzM5MTc4ZmE4NWZjOWU0YzI0ZTFkMTY5MTYxOWYyZjg2M2JkOTRlIGxlZ2FjeS10cnVuaworMTcyOTIgM2E5MzJjYzY0MzIzM2ZkY2Q4ZGJhYTkyZWY2MGRjMjg4MzQ2YzQyYSBsZWdhY3ktdHJ1bmsKKzE3MjkzIDE5NDQzNTg1Y2NjYzI1NWU4N2M1N2RhN2VhMThkNjRmMTI4ZDg1YzcgbGVnYWN5LXRydW5rCisxNzI5NCBmN2ZkMDk1YzMxYTZhYWM5OWM5ZTI4M2FlNzM1ZWJiMmZkZjdmOGY2IGxlZ2FjeS10cnVuaworMTcyOTUgYzczODA0MWY5NzVkYmU4M2VhNjRiYzFlMWRmNDU4YTIxZGQ0YjViMyBsZWdhY3ktdHJ1bmsKKzE3Mjk2IGY0YzkyYTI0MjExYmRkZDAzMGNlNTQzNWQ3MGIxNzFmNzc2MDg3NDkgbGVnYWN5LXRydW5rCisxNzI5NyBmMDUxYWM4MzQwZjdiOGExZmMwN2YyM2JkYTIyMDlmOTE0NDMxNTEzIGxlZ2FjeS10cnVuaworMTcyOTggOTNiMWRhYjA5NzY3NmQ5Mjk0NzAzMmFjM2ZjMDVjZjJlOTcxZWQwOSBsZWdhY3ktdHJ1bmsKKzE3Mjk5IDUyMGNlN2VjZTI1Mzk4NWFmMDg5ZTYxN2MxNDMwZTc2OGU1NzZkZTMgbGVnYWN5LXRydW5rCisxNzMwMCA1ZDEyZDk2NjBjMmVhOGQzODc3ZTQ4MmQyNjEyNDEyY2RmZDc0OTA1IGxlZ2FjeS10cnVuaworMTczMDEgYzllZTZmNzQ2NzBkYWY1NWQ1ZWIyYTZhMjQ3ZjcxZTQ4YzZlNzI3YyBsZWdhY3ktdHJ1bmsKKzE3MzAyIDNlMzg3NTA3YTk5MTliMDU1MTMyOGNmMmNiNzMyYmUxMDc3MWIxYzQgbGVnYWN5LXRydW5rCisxNzMwMyBmYzViNDA2MTYyNjIzNzNlZjc0NmJkYWQ3ZWYzMWFkZGJjYzEzODBjIGxlZ2FjeS10cnVuaworMTczMDQgZTVjZGNlMmEyYjE2NDlmNmQ2MmU3Mjk0NTk3ZTc3ZGY1YmMyYTkyYiBsZWdhY3ktdHJ1bmsKKzE3MzA1IDBkMDYxM2I5NTc1OGU3YmNmOWQwOTNiNTJlOGI0ZmQ5MDI3MjQzMjYgbGVnYWN5LXRydW5rCisxNzMwNiAwZDEwMjVhZWZlYmZmMjQ4OGM5MzVkNTMzMjk3OTM5MTgxZWEwMDcyIGxlZ2FjeS10cnVuaworMTczMDcgMDE1YTM0YmZiY2NiYTA5OTJiZGE3NDUxOTc4ZjE0YjNiN2Q5NjljMCBsZWdhY3ktdHJ1bmsKKzE3MzA4IDY5MTlkOGUxNGEzMDM2OTAwNjI4OTNlYmY3ZjM4YWVmMjExMGY4OTAgbGVnYWN5LXRydW5rCisxNzMwOSAyMGFjZWI4ZWRmYTVlNmNhNGZhZGY5YzUyOTg3YzQyNDZjMGVlNTBkIGxlZ2FjeS10cnVuaworMTczMTAgMGI2NmQwMzAwZWViZTljMjA3YjlmYzhjYzEwMzE1NzY1YTI2NDA2OCBsZWdhY3ktdHJ1bmsKKzE3MzExIDk1ZWViMDYxZmM2ZDRkNDU1MWU3ODM3OWFlODJkM2UwMTBjMDE0ZjUgbGVnYWN5LXRydW5rCisxNzMxMiBlZGEyNmYxMjMyMjc0YmY2YmYxOGIwNGE5MWZjN2FlMTg1YjZjMzY0IGxlZ2FjeS10cnVuaworMTczMTMgNWVkZDQ5ZDM0MGVhOWFhMGE0ZGJiNDliNTMwZWM0MDZjOWJjNjVkOCBsZWdhY3ktdHJ1bmsKKzE3MzE0IGRiMDI2MDkyY2I3ZTQ5ZDhlNzY1ZmY1YzUzODJlNzg4YTA4ZDI2NDkgbGVnYWN5LXRydW5rCisxNzMxNSBhYTQ0NTM3ZDgwYjUzZmVkZDU2YzJlNDc5NTZjMGQ0ZTE1ZThiNGFlIGxlZ2FjeS10cnVuaworMTczMTYgZWMxNjVkMDNkNDZjYTg2MTc2YzA0NzhmNWZhNDExNWNkNjRhM2FiZCBsZWdhY3ktdHJ1bmsKKzE3MzE3IDE3Y2VjOTZmNzViYzFkNTYwOWQyMjMxNWY4N2EwMThkZTQxMzI4M2UgbGVnYWN5LXRydW5rCisxNzMxOCBlMTNkZjRlOTA3NmY3NThiYzdkOTA0M2Q4ZTg3NjMxMjliZDM5ODQ3IGxlZ2FjeS10cnVuaworMTczMTkgMDcyMWRmNzg5MjcwZTc5NDM4ZGE4YzJlYzBmOWMyMGRmYzMyZjA5NSBsZWdhY3ktdHJ1bmsKKzE3MzIwIDE0MmNiNGU3MzEwY2RlYTRjNWUwODFkMTQzZTY1MzY4MjhjYzEyMzAgbGVnYWN5LXRydW5rCisxNzMyMSAwZWY2ZWE1ODU5MGI2MGE1YTM2Yzg3MDk4ZGM3N2FkOGZhYzFkNTNiIGxlZ2FjeS10cnVuaworMTczMjIgZjkwYjgyMzIwNWZmMWUxYzY4YmIyZTdkZWMyOThmMjA2MWI2NGFkZiBsZWdhY3ktdHJ1bmsKKzE3MzIzIDM5ZmY2YjNjNDNhZmMzZWIzYWI0ZDg2ZjY2NzFhYTQ3OWU2Yjg2ZTcgbGVnYWN5LXRydW5rCisxNzMyNCBjM2M0OTg1OWU4MGIwOGZkMTEwZGU0YmEyMjU3YTY1MjY0OWM5OGE1IGxlZ2FjeS10cnVuaworMTczMjUgZjZiODZlMmRjNTViYmZmMjZhOGNhMzQ3NTEyYTVkNGZhMzMwNzRlZiBsZWdhY3ktdHJ1bmsKKzE3MzI2IDk1MzdlNzg5M2YzYzNkNDUzYWM1MmY2NDZlZDc5MGFjNjg0M2Y2NTkgbGVnYWN5LXRydW5rCisxNzMyNyBiN2JiNGEzNWMxMjE4OTc3NzlhOGUxZDk5NGE3OGJmMDVlODM4ZjI0IGxlZ2FjeS10cnVuaworMTczMjggZTRjYThjMjEzNzdhM2NiNzNiOTNjMjVlMzU4MDlkMmY1YTMzMmUxMyBsZWdhY3ktdHJ1bmsKKzE3MzI5IDcxNDU2NzgyZDhmZDVhMWYzMGI5NWZkMDEwM2UyZGY2N2IxMTUyODQgbGVnYWN5LXRydW5rCisxNzMzMCA5OTk4YjcwODdlZTYwNDlhYzBmZWMxZmY3ZTBmYjJjZWNjYjM2OThmIGxlZ2FjeS10cnVuaworMTczMzEgY2M2ODNhMGFjNTY4ZWI4NDQ3MDUwODBjYjFmM2EzYmZlMjgxNmU0MyBsZWdhY3ktdHJ1bmsKKzE3MzMyIDg5ZTNiNmE1NGZlOTNjNmRjNTM4MjhjYzk5YjllODJjNGZkZDBkNDYgbGVnYWN5LXRydW5rCisxNzMzMyAwZDE1YzgwNTM3MjZiMjdmNGYyYjAyZmQxOTRhMTMxZjRiYjdlYjczIGxlZ2FjeS10cnVuaworMTczMzQgNTAwNDM0OWVkZTRkZjhlY2E0MTFlZWZiYzQ4ZDgyZGY1MjVkNDZmMCBsZWdhY3ktdHJ1bmsKKzE3MzM1IDhhNjNjNjA0ZWU1OThmYjY0MGYxZWU1MmY5NWUyMzU3MGE3ZDlkMzQgbGVnYWN5LXRydW5rCisxNzMzNiBjMzJmNTQ5MGY1ZTNhYzJlODI5MjgxYjhlNGEzZDNkNzFkN2Y3NWRlIGxlZ2FjeS10cnVuaworMTczMzcgMzRmOWEwMTdjZTYzMmNjZGM4YzE3MjhkMTI1Njg0Njc0NGU0ZDkxYSBsZWdhY3ktdHJ1bmsKKzE3MzM4IGFjMDI0NjU4NmQ1Mjc4MmI1Y2VmZWIxNzk2NzFlZDE3MTQ4MWE2MjggbGVnYWN5LXRydW5rCisxNzMzOSA1MTM2OWE1N2IwYWFiNDgwYTA3OWM2ZThiZDEzZTEzYTkyNzVhNzEyIGxlZ2FjeS10cnVuaworMTczNDAgOGE3MTVkMmRmZWI5ZjlhNjFkN2FjMjYwYWM2M2Y1MzFjNDU1ZWU3ZCBsZWdhY3ktdHJ1bmsKKzE3MzQxIGFiYTdlYjlkOGQ2MTQ1NGY4OWE1ZmQ4N2U5OWRiMzM2MWIzOTEwZjAgbGVnYWN5LXRydW5rCisxNzM0MiA1MmE2MDBiMzhmN2VlNTk4MGMwZWJlNjIwZjk4OWMxZmYzMzIxYzViIGxlZ2FjeS10cnVuaworMTczNDMgZjc4ZjI4N2IzYWRkYmM4ODdjMTk0NGI1Yjg3M2U2OTQxZmUwMTkyZiBsZWdhY3ktdHJ1bmsKKzE3MzQ0IDMzNGQ5YWViYWFmMTBhMDJlZDEzYTI5YjcwZDIxMTY1YTQzOWZhMDkgbGVnYWN5LXRydW5rCisxNzM0NSA3NzI4YjBlYTkzNDQxYzUzMDBhY2FmZWUzMDY4YzY4YzIyMDRlYjAxIGxlZ2FjeS10cnVuaworMTczNDYgMmJhMDhkOTkxYzQzMzBhZjRkN2VlNDY4MTBjMjkxNzZlMTkyODkzOSBsZWdhY3ktdHJ1bmsKKzE3MzQ3IGIxOTg4NmJlYTM3ODdmYWZjMGQyMWI4ZDQ1YWEyYTcwYWVhNGI2OGYgbGVnYWN5LXRydW5rCisxNzM0OCBlNmE5ZDQxMjY1MmQyOGE5Y2U1MWM1NGMyOTliNWNjNzRkYmYwYjY1IGxlZ2FjeS10cnVuaworMTczNDkgYWVkMzdmNWFhNDc1ZTc0NzNmOWU4ZDZhZGNkMjlmYTRjMDhjMWJkOCBsZWdhY3ktdHJ1bmsKKzE3MzUwIGQzMjdmYzQ3ZjhmZGRmYWQ5N2RkOTBkZGQwYzFiOGIzYTg2MWVlODEgbGVnYWN5LXRydW5rCisxNzM1MSAzNzFlODhhZjY0NWYxZTg1NzQ5NWZkYTVlZTNhMDMwNTQ2M2QwNWZmIGxlZ2FjeS10cnVuaworMTczNTIgN2YyM2VjNWNkOWNhODQ1OGM5NmE4ZjFlZmJkM2RjZDZmMGQzODBmYSBsZWdhY3ktdHJ1bmsKKzE3MzUzIDIxZDg0NzY1M2Y1NGI5NTk5MDMyNDAzMTM5YmEzNGEwOTMzN2Q1YWEgbGVnYWN5LXRydW5rCisxNzM1NCA1OGJhOTBlNGU5ODVmMWJhYTljZWZhYWVkMWRjNDdlOWE4ZDMzMjRmIGxlZ2FjeS10cnVuaworMTczNTUgZWVmMjU3MzBlNjRkYWFlNzgyMTI0MjlkZjg4MzdiMzkzZWQ4MTQ4MSBsZWdhY3ktdHJ1bmsKKzE3MzU2IDE1YWNkNWM1OTFmZDRjMDUxOGRmMjRlYjliMzEwOWUwZjhkZWVlMTcgbGVnYWN5LXRydW5rCisxNzM1NyBkZWIzZTk2ODVhMWVkZGMyZTFiYTllY2NlNWNmMDFmNzhmZDQ0MmM3IGxlZ2FjeS10cnVuaworMTczNTggMzgyM2ZjNzIyYjUwYzUzMDlkMTc0ZDU1YzViOWJhMWQ0OWZkNTQ5MiBsZWdhY3ktdHJ1bmsKKzE3MzU5IDI4YWMxNDhkMDEyOWE3ODAyY2M3NThmZmMxOGQ4NmEzZmFlZTQyMWYgbGVnYWN5LXRydW5rCisxNzM2MCBjODcyN2FjYTE0MDRjODlmMzY2YmRlZjBkZjM2YWU0OGJmMzBkOWE3IGxlZ2FjeS10cnVuaworMTczNjEgYzJmN2FkMDcwYjllZmYzMDEzZTg4ZmFlOWUzNmU2ZDc1YjIwMmQwZSBsZWdhY3ktdHJ1bmsKKzE3MzYyIGEwMzkyZjQzODk2MDVmODcwNTA3YjI5ZDMyZGEyMDVhNmQzODRjZjAgbGVnYWN5LXRydW5rCisxNzM2MyA3NWVkNDI2MzQzNjYyOWVhYjQ5NzBkZDJiOTliNTI5ZGFiMWE5OGM2IGxlZ2FjeS10cnVuaworMTczNjQgMjlmYWNiNzhkNmY0MTY3NDA4ZWM2ZjIyODc3OTc1MDRkMDZmN2I5OCBsZWdhY3ktdHJ1bmsKKzE3MzY1IDBkNDlkZDBmMWJjZTMxMzVkMjYxOWI3ODIyODQ3MDUzZWJlOGFkMjEgbGVnYWN5LXRydW5rCisxNzM2NiBiMzQwOTVlNDg4Y2YxYWM4ODE4YjIyMTNjYmRjMjlhYmU4OTQyZTliIGxlZ2FjeS10cnVuaworMTczNjcgM2I2MTkzODVhOTBlNDdjOTY4Y2YwMmNmZGM5ZmI3YjM3ODRlZDg3YiBsZWdhY3ktdHJ1bmsKKzE3MzY4IDFkYjQ1MzI5NmM3NjdiZGFjZWZhY2VmZjA2MGFmNWRlN2FmYWM1NmMgbGVnYWN5LXRydW5rCisxNzM2OSBiODI4MDJiZjdmZmYyZGZjYzRhOWFlNzE5MGYwYTUxMGJiZDM0NGY1IGxlZ2FjeS10cnVuaworMTczNzEgYmY4NDRhYzJjODFhYmYzMDIzMjVjODIxMmIyNGJlZjAzM2I2MDk5ZSBsZWdhY3ktdHJ1bmsKKzE3MzcyIDUxNjdkMjNiZDZiMGJmMDFkYWQyMDhlMDNiNjk0MmZhOGY5MWI3YjAgbGVnYWN5LXRydW5rCisxNzM3MyA3NDM1MzMxYjQ4ZWU2NTg0MDUxMTY1ZTYxMDc0ZjMxYzc4YjBhYzczIGxlZ2FjeS10cnVuaworMTczNzQgYWRkYWJhOTkxMDc3ZDQ4MzhiYmQ2MWY2NDZlNWE4MDZjMDBhYTJlOCBsZWdhY3ktdHJ1bmsKKzE3Mzc1IDlmZWQ0ZWViYzU4NjRmY2Q4ZTRlZWE1MDczOWVjY2M1NTZmYTI3ZWEgbGVnYWN5LXRydW5rCisxNzM3NiAyMzViY2QzZTVmMTc0NDY5M2Y2YThkODM3YzNmZTg0NWU0NWFmNGI2IGxlZ2FjeS10cnVuaworMTczNzcgY2QzZTRkNzNkZjhlNDg2M2Y2MzJjNTNlMGMwMDc5MDM5NmM1MDVmNSBsZWdhY3ktdHJ1bmsKKzE3Mzc4IDkxOWQzNmZkYThjOGQxODU3MTE4NzE4YTc2NjUxMDNlZjMzM2ZlYWEgbGVnYWN5LXRydW5rCisxNzM3OSBmYzU0ZTM5NzE2OWZmNmVhZGJjYjA5ZjY1NGU4ODM1MWQzZGYxZjI1IGxlZ2FjeS10cnVuaworMTczODAgZmY0YWU2OTFiZTliNTBmOWMyZTZlMTJlM2I0NDAyYzZkYTcyODcwNCBsZWdhY3ktdHJ1bmsKKzE3MzgxIDg2ZDQ3ODY3MzRjYTFkZDY1MDBlNGRlMzk0MGRkZGIwMTBkMDlkNDcgbGVnYWN5LXRydW5rCisxNzM4MiA3MzY2YmI5NWYyMTI5OTBhODBiYTdjZjY3M2ZlNDM5NDYwMWMyZDdkIGxlZ2FjeS10cnVuaworMTczODMgYmUxYWIxODczNThjODFmMDk2MmRiYzgyY2FiODAzNTA5ODM3MDk0MyBsZWdhY3ktdHJ1bmsKKzE3Mzg0IDhkMWE0NjhmOGU1OTE1NGI3MDJiOWU0Y2NjNWYzMTc0YjNlYzkxMjQgbGVnYWN5LXRydW5rCisxNzM4NSAzMDY3YWUyNzQ1OGMyNDA1OTJlY2MyZWU1YThjNjI4NDQ0MzJhNDllIGxlZ2FjeS10cnVuaworMTczODYgNzE1MDk3OWY5Njk0MTU2NTUxZWY4ZjY0NDNkZGFiMmY4MGYzZTNjNSBsZWdhY3ktdHJ1bmsKKzE3Mzg4IDYzNWY2OTEyMzM0OTNlNWI3OTM1YTk0Mjg3NGEwMGNjODMyZWY2YzMgbGVnYWN5LXRydW5rCisxNzM4OSBhNWQ2NTQ1OWE3YjY5MjAzMGU1NDUxMTM0YzA2Nzc0YzA4ZGFiNGJmIGxlZ2FjeS10cnVuaworMTczOTAgNjg3OTVjMTNhY2VhMDAxMTZhMTVlMTE2Y2Y0MzRjYjU2N2YzMWRmOCBsZWdhY3ktdHJ1bmsKKzE3MzkxIDQxNzVlZTgwYTA4NThjOTg3NmYwNzMwNmY3MTFjOGI5ZGJmODgyZjAgbGVnYWN5LXRydW5rCisxNzM5MiAwNTJiMTEzYzc1ZDRjYmU2ZWQ5NjAxNDg4OTFjZGYwZGRiZGNiMDE0IGxlZ2FjeS10cnVuaworMTczOTMgMzY5YWMxODUwNTVkMzExYzAxZGEzMDg5MmNkY2FkZmE3NDc4M2Y4OSBsZWdhY3ktdHJ1bmsKKzE3Mzk0IGRjM2JlZjc3MWQwNzMyYzY5MWNlNWRhOTVhOTUwZTI0MjZkY2RhMjAgbGVnYWN5LXRydW5rCisxNzM5NSAzNWFlOGRmZjhlZDA5OWJlYTlkOWE1ZDJiMDcyMzIwYjZhYTJjYTk2IGxlZ2FjeS10cnVuaworMTczOTYgNTYxYzBiMWQ1MTRiMzRmODlhYmNiM2MyY2U0MzYxY2RmYTZmZDA4ZSBsZWdhY3ktdHJ1bmsKKzE3Mzk3IGE0NWNhMWY3ZjI0MTViYjcyNDFlZDk3ODU2OGNhZGI5ZTQ1NDFiMzcgbGVnYWN5LXRydW5rCisxNzM5OCBjMTYzOTY1MTFhYTM1NmFhMWM5ZGI3ZDg4YTNmOWZkYzQ1NTMwYzI2IGxlZ2FjeS10cnVuaworMTczOTkgZmY3MTJkZThiZDgxMzQ1ZDc0OGM0MTJhYzJhMWZkZTEyZTM4NzQ4YyBsZWdhY3ktdHJ1bmsKKzE3NDAwIDEyMjc3NWZmYTM2YzkzZmUwMmRjZDU0MDU0ZDVjZWI3YThmNDFmZDcgbGVnYWN5LXRydW5rCisxNzQwMSBlZmJhMzA3MGNkZGVjOGFmOWJhYzhhNzYxYWIxOWQ2ZTgyOTAxZDEzIGxlZ2FjeS10cnVuaworMTc0MDIgYWVkMTIyNmE3ZmM0ZjM0ZDEwY2MzNGEwNzBjYTZlZGExYjc4OTljMiBsZWdhY3ktdHJ1bmsKKzE3NDAzIGU5YzMxMzc0NTMwMjE3YTY2OGMzODA0ZDRmN2M4ZDMxMDBlZjljYTAgbGVnYWN5LXRydW5rCisxNzQwNCBkNDkwYzJhMTg2ZGFmY2Q5YWYzOGUzZGQ2ZmQwMzI1NzVjZDNjNjI3IGxlZ2FjeS10cnVuaworMTc0MDUgN2ZhNDMwMmE1YTA4NzBmMDQ2MzE5M2EyNTBhYmY0Mzk0YzM3YTgwMSBsZWdhY3ktdHJ1bmsKKzE3NDA2IDI4ZGY0ZjQ1OTY3ZmI2NGViOTJiOGNjZWY1MTllZjBhMDEzOWQ1YjAgbGVnYWN5LXRydW5rCisxNzQwNyBhOGQxYzAzMGIxOWZlNjgwYzcwYjY3Njk1ZTQzNjEzOTU1YjExY2IyIGxlZ2FjeS10cnVuaworMTc0MDggYjNmMTU2MTE2MjcxMjNkOTA5Zjk5ZjUyYzYzZTc3YmRhOGFiMGVmMCBsZWdhY3ktdHJ1bmsKKzE3NDA5IDg3NzQ1ZTU1NDcyNzE0ZGNjMjg4YjM1Zjc0MDhlYmYzYzg1MmM4OGIgbGVnYWN5LXRydW5rCisxNzQxMCAyMTllMDAyMjFjODQzNWNmYjdmZDQ4ZjM2Mzc5NzA3ZjlkY2M4ZWRlIGxlZ2FjeS10cnVuaworMTc0MTEgNGFjMDllOTcwODI4MmRmNTcxYzA1ZWEyNDFjMDMzOTAyYzc3ZmQ0NSBsZWdhY3ktdHJ1bmsKKzE3NDEyIGE3MTM4NWY4YjRkYWJmZDgxZjMzZDFlZGJiZTg4NjM5Yjg5ZTc0N2EgbGVnYWN5LXRydW5rCisxNzQxMyA1ZjJiOWVmM2YyYWVjMWMzODIzYTM5MzNhMDRjMjk2Mjc5NDRlMzQyIGxlZ2FjeS10cnVuaworMTc0MTQgMjhjYWFhM2UyOTJmZmUxYzNiMTA4ODZlNTEwMTVkOWI2MmNhMmIzNiBsZWdhY3ktdHJ1bmsKKzE3NDE1IGVlYjhlZTQ4ODEwNmE3Y2I5YjllYmYzZjliMDFjODMyNjEzNDEwMmQgbGVnYWN5LXRydW5rCisxNzQxNiAwN2EyZGMxYjcyYWVhMmZlZDE0OWVjYjljNDQwYTMxMWE2OGU2NmQ0IGxlZ2FjeS10cnVuaworMTc0MTcgZmU4ZWY0MWMzMjIzZjk5ZjliMTdkYTYwZDUyY2I2MTM2ZDZkZWIzNiBsZWdhY3ktdHJ1bmsKKzE3NDE4IDAzZTYxNTBmZDhkNTI0YTgyZGU1Mjc1ZjY3Y2Y3YzQzMTA1ZTQ1YmYgbGVnYWN5LXRydW5rCisxNzQxOSBiY2YyM2I1MmIwMmZkOWFlYjBhYjY4NWQ5YmFkMTQ3YjY1OThiMzcyIGxlZ2FjeS10cnVuaworMTc0MjAgYWM4MWUwY2FjNWY2Y2Q4YjA5ZjZhMzE4ZTJjMDRmMTY2MWZjNDUwZiBsZWdhY3ktdHJ1bmsKKzE3NDIxIGI3ZWQ1NDNmNGM1NmQyYTYyMWY2YWM1MTRkNzgxMzVmOWVlNWM0OTcgbGVnYWN5LXRydW5rCisxNzQyMiA2Mjk3OWM3YjlhNzE5YjMxMjQzOTJiZTEyNTgwNmQyYTJkZDYxYjY3IGxlZ2FjeS10cnVuaworMTc0MjMgZjQ0NGNmZDRmYTA3NTQxMDkyMTk2NzFlMWRhMGMzMjA3NzE1ZmYyZiBsZWdhY3ktdHJ1bmsKKzE3NDI0IDU1ZDY3MzAyNGU1Zjk2YjdiNDY2OTEzMjVlY2M1YzM3NGExOTZhMjUgbGVnYWN5LXRydW5rCisxNzQyNSBiY2ExZDIwMTM2MjZiOTI0NTgxN2JjOTdlNGRhNTFlOTMxOTI0ODAxIGxlZ2FjeS10cnVuaworMTc0MjYgNjAwNTE1NzQ3YzUxYTM1YTI0ZjI2YjlmODQyOWRkZGQ0YThhZDE4OCBsZWdhY3ktdHJ1bmsKKzE3NDI3IDI1YjdhYzA1Njg5ZTUwOTJkZGVjZjA2NzMwZjY4YmUyMjVlYmE2YzggbGVnYWN5LXRydW5rCisxNzQyOCA4NTczNzZkNjk5YmI5ZGY0MjlhNTA4Yzc3YWQwYWZhY2UyODZiYWFhIGxlZ2FjeS10cnVuaworMTc0MjkgYjRhMzdhYjMyOWRhMjQ4MWI5NWMzYzMxYTZkOWFhYjBkZWY4ZTE5ZCBsZWdhY3ktdHJ1bmsKKzE3NDMwIGJhNTQyMWZmMDI1NjdiMDJlNzM4NjViNjRiZThkNGFiOTdkYzQ4M2EgbGVnYWN5LXRydW5rCisxNzQzMSA4MzY5ZmNkNzlhNjRiY2RmNDhmOThhNmM0ZTg2MWI5ZjI0NTU0MjAwIGxlZ2FjeS10cnVuaworMTc0MzIgMTgzM2QyYmJmNzZhNDljYTEwZmVmZjM3NGNhNDZlMjUzYWU2MWZjYSBsZWdhY3ktdHJ1bmsKKzE3NDMzIDM0NGQyMmI5ZGIzMmFkOTJiODg1M2NmMDZiOGM1MGJmMzE5MzhiNjggbGVnYWN5LXRydW5rCisxNzQzNCAyMGIyMmZkZTFjYjc5ZjhmM2QzYmQ1ODI0ZGRmYzc0ZmMzYTA0NTIyIGxlZ2FjeS10cnVuaworMTc0MzUgNWY4N2VlYzdiNmI4ZjY2ZDJiNmE2MGVhOGU1NThiMmQwODZmMTBjZSBsZWdhY3ktdHJ1bmsKKzE3NDM2IDRkNzQ0NTE1YTczZTRiMmI0MzJlMjY1YjU5ODVmNWY0N2MzZjBiODEgbGVnYWN5LXRydW5rCisxNzQzNyA2NDM1Y2M0N2ZjYzZmZjI0OGIxOTY3NGU3NTYwYjNmYTBmN2U0MGViIGxlZ2FjeS10cnVuaworMTc0MzggMjEzZGJjODgwMTU5OTY3ZmMwMDNjYzE3NzBjNWRiYTQ3ZGY5NzAzNyBsZWdhY3ktdHJ1bmsKKzE3NDM5IDg5Y2U0ODA5NjNmOWJiNDBlNGNlZGZhMDhhYjEzMjM1NTBlNWUxZTAgbGVnYWN5LXRydW5rCisxNzQ0MCBkODRkNTc1OTQ4MTU1NmFhN2E4MjBkMzlmYTkwYWFkMjJjZjY3MzE1IGxlZ2FjeS10cnVuaworMTc0NDEgY2QxYjlkOGQwNDVkZDk0ZGUyZWIzOTFjMzMyMzIyNzdhYjM2NTg1MiBsZWdhY3ktdHJ1bmsKKzE3NDQyIGU4ZDg3NThhZGZkYjYzOGM2MjRkMjMzMTkzYjlmOWE4OGNhNjRkY2MgbGVnYWN5LXRydW5rCisxNzQ0MyBkY2JjMDg0ZDA0NmViYTVkMDI0YjI0MzViOTgzMzQ0NTQzN2Y1MDkyIGxlZ2FjeS10cnVuaworMTc0NDQgOWFiNDE5YTVlMDUyODkxOTg5YTQ3MjllNDY3ZTI2MzA1Zjg1NmY0NyBsZWdhY3ktdHJ1bmsKKzE3NDQ1IGM0MjEwNWJkYjVmYzRlYjFhZTQ2MGRlNmNmYWQwM2U3MjNmNzhiNmQgbGVnYWN5LXRydW5rCisxNzQ0NiAxNmE5YzA1N2RjMTE5ZjJjNTM1N2UyMzgzYzIzZmYyMzc2MTQ1NTRlIGxlZ2FjeS10cnVuaworMTc0NDcgOTBmMDc4OWQ1N2I3MTdkMzBkMjc0ZGQ5ZjZmNGViNmE0ODNjZDYxMCBsZWdhY3ktdHJ1bmsKKzE3NDQ4IDZjMzE3YWRjMThhOWUyYmFkZjFhY2I2YjhkNjk5ZGUzMDM5MGViMjYgbGVnYWN5LXRydW5rCisxNzQ0OSBhMWUyZThkNTVlZjAwNTAwN2EwZmZkNzNiZTQzNGJlZTcxMzA3ZTZhIGxlZ2FjeS10cnVuaworMTc0NTAgMmE0NDE2YWQ4MzdjNDU5NmE0MmY5MzVlOGYxYjU3YzZkNzE3YjEyMCBsZWdhY3ktdHJ1bmsKKzE3NDUxIDI1NmQxYmI2Mzg4ODk0N2ZjNjE2MGQ2MmYwOGQ0NTRiN2NhMTM4YmMgbGVnYWN5LXRydW5rCisxNzQ1MiBmNDg2MTc2ZjU2Zjg3MDg3MGFhNDcxZjlkNTQ3YjNiZmEwNWI1ZWE1IGxlZ2FjeS10cnVuaworMTc0NTMgNjlmOTZiNmNhZDI5MmI0MDYwZjEyYzQzODU4ODdjNDkwMGYxZTRmOSBsZWdhY3ktdHJ1bmsKKzE3NDU0IDQ5YTA0MTMzMDQ2MWNlODRhODQ1ZTBlYWE4ZWZkNGVhMjhiMTFjYWMgbGVnYWN5LXRydW5rCisxNzQ1NSAwMTRjZjZkMjkzOTg3MmRhYWUyYTgxMGU4YTAyYjJlMTkzOGE0ZmEzIGxlZ2FjeS10cnVuaworMTc0NTYgOGU1Y2EzZmJjZGI2NDYzMmI5NTFjMjQyNmI0YWZjNjkwODRiZjBlNiBsZWdhY3ktdHJ1bmsKKzE3NDU3IDI0ZmJiZjEzZGFhNWJkNjc2ZTNmMzE4ZDRlYThjNzMzZWMyZjA1YWMgbGVnYWN5LXRydW5rCisxNzQ1OCA4MGE3ODIwODZhNTdmMTliN2MyZTZhYmNhYWU4ZjhlMTkxMTYxNDMyIGxlZ2FjeS10cnVuaworMTc0NTkgZDI2MDlkNDMwNGVmYzVjYWNmYzczMGQ4NWE4Y2NhOWUwMjQwNTcyZiBsZWdhY3ktdHJ1bmsKKzE3NDYwIDhhZDliZDljYTYwYzAwNGFlY2I3ZWU4YmFiNDk0MGJmYWNkZmVkOTAgbGVnYWN5LXRydW5rCisxNzQ2MSBmMmZjNjZhNjE1M2I0MDU2ZTYyZDlhZWU1ZjEwYzg5NDIxMzYyYzBhIGxlZ2FjeS10cnVuaworMTc0NjIgYWM1ODNlNmEzYzhiNTFhNWYyMGI2MzU4NmIwNjU1OWQ0MmEwM2FmMiBsZWdhY3ktdHJ1bmsKKzE3NDYzIDE0MmE5MGVlYThmNGExODkyMTY5MTQ3YjEzYzkxZGIxMTAzZDUxMTIgbGVnYWN5LXRydW5rCisxNzQ2NCAwYjYzMzMyNThmNTQ3ZDFlOTAwY2RkMjdkNmQ5ZTI3M2Q5YWY5MDdlIGxlZ2FjeS10cnVuaworMTc0NjUgMTNjNzNhMjE5Y2IxMWQ5ZWUzNzc4M2Q0NzE1NTAyNTBmYWMyY2NmNCBsZWdhY3ktdHJ1bmsKKzE3NDY2IGRjYjkyNmU3Mjk2ZWMwYWQyZmM0YmEwM2VjMTQ1NzYwNjNlYzlhN2UgbGVnYWN5LXRydW5rCisxNzQ2NyAxZTZjMDQ0ZDhlNTk4NTE1N2Q2YTBkZjZiYjUwNzc1MzE4NTcxNGU1IGxlZ2FjeS10cnVuaworMTc0NjggNWE1MTJlYzhhN2FkZTI4ZDllOWMxNWJjOGVkNWU5NTI1OTk1NTE5NSBsZWdhY3ktdHJ1bmsKKzE3NDY5IDMzZTJlZjMzOWU1MGQxOTEzZDVmNWNiNGNkMjYzMzIyOThhZWRjZWMgbGVnYWN5LXRydW5rCisxNzQ3MCBjNGQwNTk4NWM2ZjMwNjljOTEyZTYxZjUwNzFmYWYzMTZlZjBhM2RlIGxlZ2FjeS10cnVuaworMTc0NzEgMjg0NTA4YzY1M2M3YzNlOTMxYjFiZTIzYzFjNTU5ZjU2MjMyYzA2NCBsZWdhY3ktdHJ1bmsKKzE3NDcyIDlkNzk4YTc2M2QyNDE3OThkNzBmMDUyZDE2NTM3Y2U1ZDg4OTFhNWQgbGVnYWN5LXRydW5rCisxNzQ3MyBjYjc2MzgzNWIxNzYxZGE3ZTcxZWY3MzFmNzllYmIzNTQ1NGNhOWE4IGxlZ2FjeS10cnVuaworMTc0NzQgNGYwNjlmNWRmYTdiOTc4MGIwYTUyYTY2ZGNmNjZhYTE0NWU4NDAxZiBsZWdhY3ktdHJ1bmsKKzE3NDc1IDRhY2NjNjNkNTZkYzU2Njg2NDgxNTc0MjhlMDBmZDIwMjBkNTE4OGYgbGVnYWN5LXRydW5rCisxNzQ3NiA0MWFmY2QwNjlhNmM1MTg0ZDAzOWU5MGVkNDQyMzQ4YjIxNzFhMDRlIGxlZ2FjeS10cnVuaworMTc0NzcgNDZmNzYyYTYxYjk5NjMwMDUyMTMxMTVhZGU1NTVkMjMxMjhiODIzOSBsZWdhY3ktdHJ1bmsKKzE3NDc4IGFhYTFkYzE2MWNlM2QyZjMwYjFjMzgxNTU2NDA0ZGM5NjA3ZTQ4MzUgbGVnYWN5LXRydW5rCisxNzQ3OSA5NjE4NjBkNmJlYTkzYmE1NGY0MTJlNDUyZTQwNjFmMzE2MmQwZmExIGxlZ2FjeS10cnVuaworMTc0ODAgYWYzNmJhNTA2MWY2ZTg0NTM4OGVmMzI1OWVkMGVlMWFhNzg3NTY2NiBsZWdhY3ktdHJ1bmsKKzE3NDgxIGZlNDdkMjM4YjUwZGUyNTJjMGQ4ODIwNzRhNjczMTRkM2Q3NDFiNjkgbGVnYWN5LXRydW5rCisxNzQ4MiA0MDU5NTAxN2E5OTJlNTUyZTNiY2FlM2U5YTNiYTNhNzNkYzkwZDhlIGxlZ2FjeS10cnVuaworMTc0ODMgNzIxMWZiZTBkYjlkODcwOWI4MmEyMGZjMmM4OTlmZjBmZWJmYjRiMyBsZWdhY3ktdHJ1bmsKKzE3NDg0IDlkOTlhMmRmNjc1ZjQ5NmFiNGIwNzZhZGU5MjgxNzNiMDAxZTJiMTYgbGVnYWN5LXRydW5rCisxNzQ4NSA3ODljNWI2YzBmMDlhMDk3OWM1OTI0ZmUxMTBlYjA3YTZlYjU4MmVhIGxlZ2FjeS10cnVuaworMTc0ODYgM2NkMjE3NGVlMTBkMTE2MjIzNDUzNGMyNWQ0NmM0ODAzYTY3Yjc5MiBsZWdhY3ktdHJ1bmsKKzE3NDg3IDRkNmE1ZTVmZTk4ZGM4OTEwNjhkNGU4MmI0MjEwZjk3OTg4YzVkZTQgbGVnYWN5LXRydW5rCisxNzQ4OCA3ZDBlMzQ1MGVlNDEwNzQ2YTQ2YTY4MjdkNTAxMjg3ZmY5Y2UzNWE2IGxlZ2FjeS10cnVuaworMTc0ODkgOGJkNTM0OWU3YWE4ZTA0YzYxNWMzNzM0NDNiMDI2N2U3YTYwOTgxMiBsZWdhY3ktdHJ1bmsKKzE3NDkwIGRiOWVhNWI1ZjMzN2U3ZjVmMmFlMjZjM2E2YTMyN2QwNThhZDM1NTQgbGVnYWN5LXRydW5rCisxNzQ5MSAwYzMwM2EyMmQ5YTQ5NzExOTExNGQ2MzZlMTQ2NzkxMzExYzk1YmQzIGxlZ2FjeS10cnVuaworMTc0OTIgMzczOTdiZDFmOGE4ZGI0YjE4NmYxMDE1NTI1NDg5MDU5NDk4ZjA5MyBsZWdhY3ktdHJ1bmsKKzE3NDkzIDJlMTcwYzJmNjFlMTM4YjBlN2I1YWU4ZWYyZmY1NzA1MTEyMjVjZWIgbGVnYWN5LXRydW5rCisxNzQ5NCAxMzM2MjRhYmM1MjVhZWNkZWJmM2ViNWUwYTI3OGRkNWNkN2IyZTk1IGxlZ2FjeS10cnVuaworMTc0OTUgM2ZlZmVhZmEzZjRhMGY1YTJhNmU2YjM0NTU5MDhkMDMzOTcwNzI5NyBsZWdhY3ktdHJ1bmsKKzE3NDk2IDhhN2Q0N2QwNzk4MTIyYjRlOTNhNzg4YTBkNGU5YTQxYmZmOWNhY2IgbGVnYWN5LXRydW5rCisxNzQ5NyAwOGUxYzNjNDFlNjA3ZjQ2MWZlYTNhMDAxOWI3ZDI5Y2QyMTkyYjk2IGxlZ2FjeS10cnVuaworMTc0OTggYjk1NGMzM2YwYjRiMGNkNzkzNGYwYTkyMmE3ZjcyYmE3NTExNzIwNSBsZWdhY3ktdHJ1bmsKKzE3NDk5IDY2MzdjMDkxZmY0NGYzNjJiODkzZDFhZmI3ZjdlOGRjM2FlZjQ3MDYgbGVnYWN5LXRydW5rCisxNzUwMCAyZDMwYzM1ZmVlYmU1MDMxYWU4NzU1MWUyZTgxYTAzOTkwZTFjMzFiIGxlZ2FjeS10cnVuaworMTc1MDEgMWI4MDY1NTM5MDlmNWRiYmYyMjQ2ODI2YjgxOWNhOWU2NjBmOTQ5NSBsZWdhY3ktdHJ1bmsKKzE3NTAyIDNiNzBlNjAyOTlhMzE4Nzc1MDYxMjViYjY5YmY1M2FkZjE5ODI4MWQgbGVnYWN5LXRydW5rCisxNzUwMyAxNWNiZTM5OWE5YzNiNTg1YzIwNDM0OGQyODE0YzM4OTBlNTljYWUxIGxlZ2FjeS10cnVuaworMTc1MDQgMWVjNmM2MzM0N2VhMzgzM2UyNzdhNTZjYTJhYmVhNGI1NGVmYWZhOCBsZWdhY3ktdHJ1bmsKKzE3NTA1IGVkZGEzNTNiZGUxMmExZGI2YmU4MjA3NmY4MDViMGIyNTQzYzljODkgbGVnYWN5LXRydW5rCisxNzUwNiA3ZmM0NTY5ZDk2MjUwNzA1MmNkNmIzMzdlODQwZjQ0NGNkMGJjZmY3IGxlZ2FjeS10cnVuaworMTc1MDcgZjRmMzg0MWEyNmVkZDE0YmJjNDY5MzI2NGUxOTdmMDVhNWUzYzgxMiBsZWdhY3ktdHJ1bmsKKzE3NTA4IDNkNmZlNjRiY2QyMThhMGM0Y2U3YjJlZWExYjZiM2FhNjNhNWQ4ZjMgbGVnYWN5LXRydW5rCisxNzUwOSAwYmQ3NDZiYzc2MjdmN2Y0MDdhZjAxNDdiYjAzZjJkYmU1NmY3OWQyIGxlZ2FjeS10cnVuaworMTc1MTAgMDIyODkxNGUwYzVmMGY3MTBiNmRiMjQ0MGUzZjQ2MzczZjYwZmE4ZiBsZWdhY3ktdHJ1bmsKKzE3NTExIDYwMDI5ZTNlMDVlZWE4ZTFmZGEwMDEyOTc2YTk2MjU5OGJlNDVmMTYgbGVnYWN5LXRydW5rCisxNzUxMiA5NDY3MDllODJiZTAyZDcwNjFhMDk2YzZkN2VkNjY4MzAzOGMzYzQxIGxlZ2FjeS10cnVuaworMTc1MTMgNjg2ZDNjY2FlYjRhN2UxYTAzMTI0MTQ2ZGRlZGMxNTJjMmFhNzY4ZiBsZWdhY3ktdHJ1bmsKKzE3NTE0IDY5OWZiYmJhMjlhNzMwYzhhMDgzODE5Y2ZmNmRhNmJjZWYxMDA1NzEgbGVnYWN5LXRydW5rCisxNzUxNSA5ODM1MDJiMmNkNDNhNDNmOGFiN2RhYWVjODczOGZjNzA0N2I5Yjk2IGxlZ2FjeS10cnVuaworMTc1MTYgZTdmNzNkMzVlY2Q4YzJmODJmMWI2NDkyZGJjY2RkZGFhZjIwMGMwNSBsZWdhY3ktdHJ1bmsKKzE3NTE3IDJkNjE4OGMyZWE1NmYxYmFmOWVhOWY3YTljMTVkMjJjMWRmNmRkOTIgbGVnYWN5LXRydW5rCisxNzUxOCBkMWVkMzA4MjU4MWE2MjgxNWY0ZjFmNjk5M2NjMmQ2MjA1M2Q5YjgwIGxlZ2FjeS10cnVuaworMTc1MTkgZjgzODQwOTg2MjY4NDQxZjFiYTljYmExMTE0MWE1YWJmNzI2NjNmNCBsZWdhY3ktdHJ1bmsKKzE3NTIwIDZmY2Y1YTcwNTMzY2YwY2VjZWI5MjAyMmY2ZTc4NmQ2Mzg1NTZhMWEgbGVnYWN5LXRydW5rCisxNzUyMSAxNTcwODU0OTExY2UwNmU3ZmZmZTRlMGVhYjUzMGM4ZjNjZDZhODUwIGxlZ2FjeS10cnVuaworMTc1MjIgMDgwMDU0YjEyMzU2NWE3NGIzYTVmNWNlZWQ5YmM5OWUyNGZkN2U4YSBsZWdhY3ktdHJ1bmsKKzE3NTIzIDQyYzQxZGFkZjI5MzZmZTQwYzYyOWQyMWE4NzQwOTgyN2Y0M2M2OWQgbGVnYWN5LXRydW5rCisxNzUyNCBhNWI0MDI5NWRjMTliYTdlMjg3OGIzZmE4ZDhlODJlMmM2OWUxZTVjIGxlZ2FjeS10cnVuaworMTc1MjUgOGRiODYwNmQ4NGVhYTBhNTZjMjEzZGU1NWY2OTFlYmVlZWZmOGVlZCBsZWdhY3ktdHJ1bmsKKzE3NTI2IDBjNmI5ZGUxOTEwMGY0OTM3MjIxNzBiYmNkNzg3ZGIwNjNlMjMzODggbGVnYWN5LXRydW5rCisxNzUyNyAxYjIwYWQ2ZWI1MDE5NDBkNzMxYzg2NThkZjIzMzY0YTViMTY2OTRiIGxlZ2FjeS10cnVuaworMTc1MjggZGY4ZDU3NWQ5NjdkODhkMDU4MTFiZDZlZDQ2MGJiZmE2NzFkODFkOSBsZWdhY3ktdHJ1bmsKKzE3NTI5IDc1NmM4YzY1MzVmZTJkZGVjMmYwZWRjZjhhMjRkNDlhMDgzOWNmY2EgbGVnYWN5LXRydW5rCisxNzUzMCAyMjAxMWQ5NzY5MTczODRmNjg5OGYxMDliOWJjODA2MTU3MTE2YzFkIGxlZ2FjeS10cnVuaworMTc1MzEgM2M1ODcxNmZhZmRlOGIzZjczZjZhOGFlN2Q2ZjgxOGY2MTQwM2MxOSBsZWdhY3ktdHJ1bmsKKzE3NTMyIGE3ODEzYWQ3M2E0ZWRlZWQwMzJjYjVmOWEzMzAxZGMxOTFkZTMxM2EgbGVnYWN5LXRydW5rCisxNzUzMyA5NGNhODdhM2U1ZWVlMjhjNTgwZmE3ZGVjOTY0YzVjMDBiNWMwZTZmIGxlZ2FjeS10cnVuaworMTc1MzQgMDg4MjMwOTlhZTYyNmUxMTIyYjRiOTQ2MmUzZTk4ZjYyZDFiYjFmMSBsZWdhY3ktdHJ1bmsKKzE3NTM1IGUyZDYyZDc0N2Y3YTgyYzE4M2NlN2YwNGM1MGY5YTlkOGZjODMyODcgbGVnYWN5LXRydW5rCisxNzUzNiBlNDMyYTE4NWY0ZGI4MzMxYjMxZWRhNmMwZWY4NjNiMzFlNzc1ZjMzIGxlZ2FjeS10cnVuaworMTc1MzcgMjk1MTI2NDMzODU2Y2QzMzNhMjNhMDJjMWJiOGY4YTFiNTdlNjYzMiBsZWdhY3ktdHJ1bmsKKzE3NTM4IGVkZjFlMTVjNjcxYTA4NGU1MzhlMTFiYWRhZTg2MWZlMDlhYmM4ZjcgbGVnYWN5LXRydW5rCisxNzUzOSBjNTJmZjAyYmJkNzA0ZmU0N2M5Y2Y1MmI2NDU0ZmY5ZDQzNTU2YTliIGxlZ2FjeS10cnVuaworMTc1NDAgZmFmM2U3MzQyNTRkZDZmNjExYWZjYmI4MDRjNmY4ZTVhMWVhYWIyNCBsZWdhY3ktdHJ1bmsKKzE3NTQxIGUzODRmNTAxNDljOTQwNDQ1MDhhZTkzNTdmMGY3MDlmMmVhZGUxMDkgbGVnYWN5LXRydW5rCisxNzU0MiBlODZmYTdlODUwZjE0MjBiY2I1NDQ4YjkyZjFmYThmMWY0NzM2YTk5IGxlZ2FjeS10cnVuaworMTc1NDMgZDZmZmI2ZDdmZThhZDM2NWZjMWM1NWQ5OTQ3MTFhMDc5MzJjMDAyOSBsZWdhY3ktdHJ1bmsKKzE3NTQ0IGNlYzAwM2JhM2M3Yjk3OWM3NDAzYmYxYjg4ZGUxOTc2Mjk3ODIyNjIgbGVnYWN5LXRydW5rCisxNzU0NSA2N2E0OTEzYzA3N2ZlZmM5MTJlZjdiMzFkY2FmZDJlYzM3Y2UxY2NiIGxlZ2FjeS10cnVuaworMTc1NDYgYmFiNGZhNmMzYzI0MWI2YTlkYTRhM2Q2YzI2MTBkOWZkNzBmOTYxOCBsZWdhY3ktdHJ1bmsKKzE3NTQ3IGM2ZjQzYzYwMzZiYTEwNTEzN2JiNzEyZDQ1MTcyMmRlYTZkZjFmMjggbGVnYWN5LXRydW5rCisxNzU0OCAzNDExMDUzOGIxMTg0NDg1NWQ4YzEyYTE0OGY1NzJmODA2YTA1MjkyIGxlZ2FjeS10cnVuaworMTc1NDkgMmI5YjE1OTY1OTUxNWY4ODllYTU0NmExNmJjYmI5NzNlMGMwNDlhNSBsZWdhY3ktdHJ1bmsKKzE3NTUwIGVmMzcwNzhkMjcyZDY0MmMxMTA1NGVkNWNkZGQwYzJmMWI0OGVkYjggbGVnYWN5LXRydW5rCisxNzU1MSA4NTAzOGEwMjRiMTkxYTg4ODFhZGM2ZmRkZDM0OTY1OTJiYTMwMzllIGxlZ2FjeS10cnVuaworMTc1NTIgOWUzZGM3YzQ3YWZhMjlmMTA3NTlmYTMxYTkxODk1NDdlMzEzM2E4ZiBsZWdhY3ktdHJ1bmsKKzE3NTUzIDQwN2NlMWM5OWU5OGUzMjkxNTY2NmQ0MWU1MTEwNjg4ZDdkYzY2NWIgbGVnYWN5LXRydW5rCisxNzU1NCBmYTgyODIwYmQzZmYzZGQzYzI3YTc3ZWNlNjk5ZGJhYTAwODY4ZTU0IGxlZ2FjeS10cnVuaworMTc1NTUgOTVmZTA4M2M3OGVlNWUwYjQ4MzJkNDQ0YjEwMjdkZGEwZmJmZDUzMyBsZWdhY3ktdHJ1bmsKKzE3NTU2IDU4MWQxZTc3ZTM1ZTc1ZGVkMzM3YmY2Njg1NjcyMDAxMjBiNzc5ZGIgbGVnYWN5LXRydW5rCisxNzU1NyA5MWRkZTdiZmZlN2Q5ZTNjMjA5YWE1NjVjNGQyZmIxNDU2NWMyMTE5IGxlZ2FjeS10cnVuaworMTc1NTggNDM5MzZhMjVlYWYxMDAzNDg5MjYyNGM2NGU3ZGQ0YjVhODU5NmMwZCBsZWdhY3ktdHJ1bmsKKzE3NTU5IDA0YzM5OGU3NDg3ODljN2M0MDE0ZjJkYjQyNmRkNDQzZjZlYWM4ODkgbGVnYWN5LXRydW5rCisxNzU2MCA0NzEyZjViOGYyNzlhZjJhODdmOTUxMTA4ZTQ3YmM4ZTUwMTQ1NTMwIGxlZ2FjeS10cnVuaworMTc1NjEgZmVmOWI4OWFkMTYyMmFlOTdhYzYxZjUxNTE4ZTM0MWYxYTRkZjExMCBsZWdhY3ktdHJ1bmsKKzE3NTYyIDJmY2I5OTBiOTY1Zjg2ZjVmMmFhNTJiNDc1M2ExNTI1ZWU1ZjViNDkgbGVnYWN5LXRydW5rCisxNzU2MyA4OWIyYWVlNDNlMGJkNTI3ZGYyZTZiYTc5ZmI0NmUwNTAyNzM2OGNhIGxlZ2FjeS10cnVuaworMTc1NjQgZTAyNDQzODUyMmRkNzBiYjM3Y2FlZGY1NjRiOTRmNmI4Yjg0YzE2ZCBsZWdhY3ktdHJ1bmsKKzE3NTY1IGFjNmRmMDQ5NGM1ODI2YmJiZjgzYWFkMDJkZjE3MDlhYTU0M2JiYTYgbGVnYWN5LXRydW5rCisxNzU2NiAxOTIyM2JiZjFhYTE5ZTU1MGFlNWEyZTJiYTAzMjM2N2I1ZTZhMmRmIGxlZ2FjeS10cnVuaworMTc1NjcgYTY5NzA0NDlkZjQyNWE1ZjRkYzUzYzc1OGIxMDA5YTk2NWVlOWU3NiBsZWdhY3ktdHJ1bmsKKzE3NTY4IDU4YjgzMmI4NzQ1ZWUyZWU2M2ViNmU3ODgxZWVkZDhmNzk4ZmZiMjMgbGVnYWN5LXRydW5rCisxNzU2OSAyZWM1OWExMWQzYzYxZTMxNmFmMjI1ZjYzZmEwNGM5NTUwNWE0ZGRkIGxlZ2FjeS10cnVuaworMTc1NzAgODMwZThlY2U2NTYzOWI1M2JkZTU2YWQ1MDVmOTQwZWZkYWQwZWUzNSBsZWdhY3ktdHJ1bmsKKzE3NTcxIDVhZTFkOGE5ZjFkZDhlZmZiNzNlNDYyN2E2ODYzOWYxODdmM2JmNDAgbGVnYWN5LXRydW5rCisxNzU3MiBjM2EyN2I2ZWJlMWJjYjFmZTAyNWIwMWVjMjk5YjVlMmFmOTVjYmE3IGxlZ2FjeS10cnVuaworMTc1NzMgNjljYTQ2YWY0MzZhNmMyM2I0ZTRiZjQxYmE3YzNkM2VkNTJjOWJjOCBsZWdhY3ktdHJ1bmsKKzE3NTc0IDg3MDIzNzA4OWJhMjhlNzYzNTA3NTY3NjJlMjljMmU4YjJkMTAwOGYgbGVnYWN5LXRydW5rCisxNzU3NSBkOGI3OWUzOWM0N2UxNDQyZmYwOTlhMTMxNmJiZjIyMDk5YmFlODEzIGxlZ2FjeS10cnVuaworMTc1NzYgN2Y0OWM1ODY0Zjc3NDFiNTBmNjdkNjk5YTQyZDM4NzlmMjRlOWY0NiBsZWdhY3ktdHJ1bmsKKzE3NTc3IDRkMmU5Y2YxZWIyMGI2YmRiYTIwZGFmYTAxZmYxYmNlMTlkOGNkNjQgbGVnYWN5LXRydW5rCisxNzU3OCBjMDRhYWMxODY1NmFiMjk4M2ExOGJhOWFlMzQwZDQ2MTQ2Nzc0NTZiIGxlZ2FjeS10cnVuaworMTc1NzkgYTZmODAxM2JiYzNkMTZmMGE1OTRlYTNjNzNkMmJhODNhNGY5MThlZCBsZWdhY3ktdHJ1bmsKKzE3NTgwIDA2YmI1ZDVkODk5MjdkNTY1MWNmMDE5NzkwMDU5ZjU0MzUwZDgzMTMgbGVnYWN5LXRydW5rCisxNzU4MSAxNzY2NjBmZjBjOTU5NjY5NDg5MDg4YzQyNDQ1MTMzNzI5NzY1ZDU2IGxlZ2FjeS10cnVuaworMTc1ODIgYmY0NmYxODVjNWU0YzBjMTYyNmZkYWM0NzJjNDUzYWQzM2M5NGM5OSBsZWdhY3ktdHJ1bmsKKzE3NTgzIGUyYzAzYzMwYjA2ZGRmYzZmZWFjYzgzZGJmN2ExMTlhYjI4M2E4ZGMgbGVnYWN5LXRydW5rCisxNzU4NCA4NzQ5Y2M4NDc5NzAyMjY1YTEyMDEwNDk2ZWU5ZDYxZjJkNTQ1NDE0IGxlZ2FjeS10cnVuaworMTc1ODUgZmZjMzAwZTlkODY3YmQxZDk4NDA3ZmQwNzE4ODkxYTYzYTcxZjFjNyBsZWdhY3ktdHJ1bmsKKzE3NTg2IGYxYWJlMDNiMmYxNjg0NjcyOThkYjBkMzVmODM3MTk3YmYwMmFlNTUgbGVnYWN5LXRydW5rCisxNzU4NyAzMzZhNjE3OWUwNTk3MjRkZWY4MDJkNTdhY2EzZDhlN2EwNmU4MTg3IGxlZ2FjeS10cnVuaworMTc1ODggODE0ZjQyMWUwMzI2NzMxNmQ3YjdkYTQyNzhiMzAyZDgyOGFkODE4OCBsZWdhY3ktdHJ1bmsKKzE3NTg5IDhhYTExMmY5ZTEzMGMzMmQxN2ZiODkxODQ4ODg4OWEwYzk3NjA5ODkgbGVnYWN5LXRydW5rCisxNzU5MCBkNDZhMDQzNmQ2ZTE5ODE3ZjNmZTA2ZjNhMDdkZGZkN2NkOGE5OGJjIGxlZ2FjeS10cnVuaworMTc1OTEgMmI5YTg5MDE2MmIwNTM4ZTQ3NDJkM2I0ZTA0NzJlNjRjMmFlZmQ5OSBsZWdhY3ktdHJ1bmsKKzE3NTkyIDdlZDA4MGI4Y2RhY2E3NzlhOGY3ZGNhZmRjNzJjZmM2ZmU2ZGM4ZmQgbGVnYWN5LXRydW5rCisxNzU5MyAyMjE0MDYyNjk1ZTc5OWU2OTYzNjVjZTNiY2JhOTkwMGQ1M2Q1NjE4IGxlZ2FjeS10cnVuaworMTc1OTQgNTcwNDM3MzQxYTA5ZDA3ZmZiNjJkNmVhY2QwZWY3N2E2ODVmMjQzMyBsZWdhY3ktdHJ1bmsKKzE3NTk1IDhiYjZkY2E2NmVjZGM0OGE3ZTVhNGI5ZmZiNmY0NzRiMDFmNThlMTEgbGVnYWN5LXRydW5rCisxNzU5NiBjMWRlMmMzZTQ1Y2E2NDY3YTIzYzllMjc4NTkzYzg4YmRjMTljMjMzIGxlZ2FjeS10cnVuaworMTc1OTcgZDczMmEzYTEzOThlYjA4ZmJhOWM3N2RhNmEzZjU2NjQzYzM3M2JhOSBsZWdhY3ktdHJ1bmsKKzE3NTk4IDhkYjA5NmI3ODJmOTczM2QyYmRlZWVlYTE4OWQwNjZiMDBiYWI0NjcgbGVnYWN5LXRydW5rCisxNzU5OSA0Zjk1Y2YxYjI2NjRmN2M3MmI5MWE0ZjZiNDMzNGYwM2YzNDQ5M2U2IGxlZ2FjeS10cnVuaworMTc2MDAgNzA5NDI3NjdkYzgxMGM4YmU1M2YwNWZlNzQzOTVkN2VlZTc5YjAzNCBsZWdhY3ktdHJ1bmsKKzE3NjAxIDAyOWZmNDZjNzk4YzdjMTE2NWIzZWM0ZjAyODU0MzQ2ZDMwZGYyZjMgbGVnYWN5LXRydW5rCisxNzYwMiBlMTU0ZTc5ZjRkMjJiZjk2YmQxNDM1NDdmZWM5OTg2MDdjNmRiNzVlIGxlZ2FjeS10cnVuaworMTc2MDMgOWY4YjIxM2I4NDE1NzcxMmUxNjg1MzE1M2NmOWM5ZjZlNzAzNWY2MiBsZWdhY3ktdHJ1bmsKKzE3NjA0IDZmM2ZkN2EyYTdiY2IzODNiYmEyNjNiMzI5ZWEyZDBhZGE5ODRhZGQgbGVnYWN5LXRydW5rCisxNzYwNSAwMGU4MTcyYWMwY2I5NTRiNTQ4NTZiODRiNzJiYTM3ZDlmMTU1ODRhIGxlZ2FjeS10cnVuaworMTc2MDYgZjg5ODRmMDNkZTIwMjUzMTkxZjVhNDkwMzJiZWEzZjZkM2Y2ZDk0YSBsZWdhY3ktdHJ1bmsKKzE3NjA3IDQ2YTY5OTA3NjlkMTcwYWI1NjYwNmY2MDAzYmRjMjI5YWNjMWY1MWIgbGVnYWN5LXRydW5rCisxNzYwOCA5ZmZjZjc0OWMxNWE5ZmJiYzY1ODgxNWNhZWJkZWVhZWU2YTM1ZWFjIGxlZ2FjeS10cnVuaworMTc2MDkgMmY3N2NiODU0N2ExYzAxNDJmNGExZTZlZTBmNDMzZjVlZTEwOGI2MSBsZWdhY3ktdHJ1bmsKKzE3NjEwIDkzMjA3MDc2ZDYxMjE4ZDBjZTlkOWY2YjBmNDc0MTBjYjU1NGRmYTggbGVnYWN5LXRydW5rCisxNzYxMSA2ZTkzMzFlNjhhM2JkNzhlOWY4NDVlNTJhYzU0M2UyYjRjNTdiN2JlIGxlZ2FjeS10cnVuaworMTc2MTIgYjRlYTU3ODcwZjJhYWM1OWQyMGNmZDAzMzg5M2E2Nzk2NWJmZDUwOSBsZWdhY3ktdHJ1bmsKKzE3NjEzIGE4NjU2OGY1NDM3NWRkYzQ4MjUwNWFmNzQzMTdjZTBmZjNhNTI5YWYgbGVnYWN5LXRydW5rCisxNzYxNCA1YTlkZmZmZjBkYTJiNDZkMDMwMTI5MjBjZDM0MTk5MTI2YjE1NzNiIGxlZ2FjeS10cnVuaworMTc2MTUgYjU0NTFhNjg3MmEyOThhMTc0MGM0YzYyZWMxMDkzYzk5MDk1Mzc1MCBsZWdhY3ktdHJ1bmsKKzE3NjE2IGM1NjZhYzljNTJkNzkyZWNjZDViMGY4MDc4YjdmNDE1YmRjMjUwMTQgbGVnYWN5LXRydW5rCisxNzYxNyA1ZjYzOGEyOTk4ODhjNzA0ZDdlNDJkZWU1OGQ4ODc3YzlkNjM2YWI5IGxlZ2FjeS10cnVuaworMTc2MTggZDI3MDU4NDA0OTgxMDYzNjM3NGE2MWE3MGU5ZDU4MzM5NDA1MDQ1NiBsZWdhY3ktdHJ1bmsKKzE3NjE5IDgyOGVmN2VjZDFmNzZjZDgzM2FjOGVlZWY5MTMwOTllYzE5NjY1NTEgbGVnYWN5LXRydW5rCisxNzYyMCA5ZmU1YzgyYzRjOGEwYjhjNGFlNDdiNmM3YTQzZDE3MTdiMWZkNzg0IGxlZ2FjeS10cnVuaworMTc2MjEgNzI4NjBlZjAzMTcxNDg2NzFmYWU3MGEyZmViZmFjZjYxYWVjNGYwZCBsZWdhY3ktdHJ1bmsKKzE3NjIyIDYwY2UzN2YwNjZkOGNlYTEwODJlYzZlNmQyZGFlYzM1ODVhNjQ4ZmIgbGVnYWN5LXRydW5rCisxNzYyMyA5MmFlZTMxZDc2MTM4YmE3NGRkODgyOGEyMmIyMmQzMzBiZDhlZTBmIGxlZ2FjeS10cnVuaworMTc2MjQgYWExOGU1MjM5YjQ2OWMzYmYyMDFhZTViMTdjYTgxYTdiYzQ0ZmU0MCBsZWdhY3ktdHJ1bmsKKzE3NjI1IDNmZmFjZjFkYzhmMDVmNmU5ZjkwZDJkMDc2NTQ5ZDE3YzUzNWI0NmMgbGVnYWN5LXRydW5rCisxNzYyNiAxMzMwMDc2NDZmYjQ3NzBmNzI0YzhhYmQwNWMxOGFkZjdjYzRjMTViIGxlZ2FjeS10cnVuaworMTc2MjcgNjQ4NjNjNTZjZThlM2U5MDkyNDUyMmNkZWQxYTg1Y2YyODRlOWQ2NCBsZWdhY3ktdHJ1bmsKKzE3NjI4IGM1ZWMwYjExZjhjOTU4MzhmZmYxZDYzNWY1ZTE2OGI2NDMyYjUxZTAgbGVnYWN5LXRydW5rCisxNzYyOSA1MjE3NGIwMDJmMWZmMzdmMzBhZDU1MTBjYmZhYzkxMjU3YjM4OGY2IGxlZ2FjeS10cnVuaworMTc2MzAgNzQ1NmM5N2M5OWVmYTA2ODY0NmQ4YmRiNzgxNDc0YWFlNjczNTE2YyBsZWdhY3ktdHJ1bmsKKzE3NjMxIDE3OTg3NzBjYTM2YjIwYWM3OWVjOGUwZWU3M2ViOGQyY2RkZWJmMGEgbGVnYWN5LXRydW5rCisxNzYzMiA2Yjc3MmM1MjdjYTc0Y2ZlNzBiOTYxYzg1NWFhZTJhZDYwZGQ5MmYwIGxlZ2FjeS10cnVuaworMTc2MzMgOGZhZTNmOTExNjFmOGViNGRiMmQ1NDQ4ZTg4MDIyOTY0ZjdlZDg2OSBsZWdhY3ktdHJ1bmsKKzE3NjM0IDdiYTQ5M2JjMjRhMGMwZjgxZjQ2OWZmYTJhOWQ2NDIwOWRkNGFmMmMgbGVnYWN5LXRydW5rCisxNzYzNSAwNjRlNDM0ZTc0NGYxNzI0M2YwZjI3MTM2NzA2NjJjZDczM2NhZjRmIGxlZ2FjeS10cnVuaworMTc2MzYgMDgxNjcxY2VmN2MxYjZkZmQxODc2MmRmNmZjYTMzYzQ3MzI0NWZiOSBsZWdhY3ktdHJ1bmsKKzE3NjM3IDNjMDFmOTIxYzQ1M2VjMzY4NDY0NzAzMzk1ZDUzOGIxNWQ4ZjBiMTcgbGVnYWN5LXRydW5rCisxNzYzOCA3N2VkZGRkYmI3Y2NmOTQxODc2ODg3ODIzZjViYjA3N2JmNjNjNDFhIGxlZ2FjeS10cnVuaworMTc2MzkgMDk4NWRkZmQ0NDJiZTliMDg4MjYwODEzYzc3ZDE4MGI3NzE4ZTI0YSBsZWdhY3ktdHJ1bmsKKzE3NjQwIGQwYjc3N2VjOWUwMjdhZGMxYmZmNWUyNDQzMzA1MWI2OWQ5NTdjZGIgbGVnYWN5LXRydW5rCisxNzY0MSBhZDBkOTMyY2NlMzJkNzYzZTdkZDk4MTQzOThmMTQ3ZmFjNGJiMjFlIGxlZ2FjeS10cnVuaworMTc2NDIgMWVkYjZiNmUzYjViNTk0MjM3NmU4ODFmNDgzZmJmZGQ3NjE3Y2M5ZSBsZWdhY3ktdHJ1bmsKKzE3NjQzIDE3OWUwOTgyMzhlODA5NjM5YmVlYzcwMzQ4NmZmZTIxMTM4NTZhZGYgbGVnYWN5LXRydW5rCisxNzY0NCBiZTJkZjk5MzVlZGQ4ZmExYmIxMDlkYzY4YTRhMWZlODRkYThjNjE0IGxlZ2FjeS10cnVuaworMTc2NDUgNDMyOTNjZjc1M2MxNWMwMWJmNTlhZGI3NTkxMzc4OTg4NTBiYTBkNSBsZWdhY3ktdHJ1bmsKKzE3NjQ2IGZmODhjNjRjZmYyZTUxOTVhMjFjZDhlMWM0MGZjYTNjMjk0OTg3NGEgbGVnYWN5LXRydW5rCisxNzY0NyBhZmJhZGFjNjBmZjc0YzhmMDE0MTFlZjkzY2QxNTcxNjNmNmM5MjJjIGxlZ2FjeS10cnVuaworMTc2NDggZmZkM2U5ZGE4OWIwZWI4ZjQ0MzE4ZTMxNjRjNWZjNGUxZDBlMDc2ZiBsZWdhY3ktdHJ1bmsKKzE3NjQ5IGMzNjAyYWU0OTg5MDY5ZDNhNTZjNjZjM2RiN2NjMWJmMWNlNzhkZTQgbGVnYWN5LXRydW5rCisxNzY1MCA3YzU3NGJmYTZlMTM4Y2YzZDJkNmE2MGU4MzE2MTZiNTE4MGFlNTBiIGxlZ2FjeS10cnVuaworMTc2NTEgZDY4MjhkZDlhOTI3MDU5NTEzODNlYzk0M2Q0YzJjOTBiZjU2YzgxNiBsZWdhY3ktdHJ1bmsKKzE3NjUyIGE5MGRhYzRiZjg4YTI0YTEwMGIwNmM3ZGQ1MWJjNDNiMzcwOGE1ODMgbGVnYWN5LXRydW5rCisxNzY1MyAzZTNjMmVmYzc5YzczYzAxYzljZWZjNzJkNjIzZTliMzlhMjVlYTY4IGxlZ2FjeS10cnVuaworMTc2NTQgY2Y5ZDhiZjU2ZDE0NTA3NWQ5NDExOTJhYjYzMjllODE4MjA2ZjMxYSBsZWdhY3ktdHJ1bmsKKzE3NjU1IGZjYTVmOGYxYThmNDcxZThkNDdjZGE5MjBmZWVlMDkzMTVmYzlhMGEgbGVnYWN5LXRydW5rCisxNzY1NiAyNTc0Mjk1NTQ1ZmY3YzE2MGQ5Y2EzZjZkODRhNTM2N2FmY2Q4MzhjIGxlZ2FjeS10cnVuaworMTc2NTcgMWQ3ODAzM2E1M2Q3NzJhMjc2ODBlM2MxMGVkMmE0ODQxOWMyOTAxMiBsZWdhY3ktdHJ1bmsKKzE3NjU4IDI5OTAyZjc3NDhmYTY3OGU5YmY0YWJkN2Y1NWQzMGE2OGY4ZDVlOTIgbGVnYWN5LXRydW5rCisxNzY1OSA3ZGEzNmY2ZmQ1NDRiYTc3ZjI1MWRlYTA5YTI3NzNkODEwYmNiNmI2IGxlZ2FjeS10cnVuaworMTc2NjAgNjk4NzNhMzBiN2M5OTczODQwMTU2ZGQ1NTQxMjkyY2VmMDZlZDlkZSBsZWdhY3ktdHJ1bmsKKzE3NjYxIDc0NjFlZGNkMjQ5ZDQ1MTI4NDU3NDc3N2RhMjY3MDgwYjU0YjA5OWQgbGVnYWN5LXRydW5rCisxNzY2MiA2ZGI2OTUyZDg4N2FjOWI1NzdmYzNjYWQzMDNhNDM3ODc2OTI0NmYwIGxlZ2FjeS10cnVuaworMTc2NjMgMDNlZWE3ZWE3ZTVjYmRiMmQyYWQ4MTVkMTIwZWQ0Y2FmODc4YWRjMiBsZWdhY3ktdHJ1bmsKKzE3NjY0IDRkMTBhMTM1NjhhYTNkOTUxMWE2YTI0MmYxZWJlODQzYmQzNzNlMDggbGVnYWN5LXRydW5rCisxNzY2NSA1MjNhMTJlZDMxZjBkZTNjMTc5MWQ3NDQ0ZmJiZjlkOGNlNzBmYTRkIGxlZ2FjeS10cnVuaworMTc2NjYgZjU2NTNhYWUxY2JkN2NjNzIwNTY1MWZlMDA0Mjg4MTc0ZjkwZGY4NCBsZWdhY3ktdHJ1bmsKKzE3NjY3IGQ1NDNkYWExNWQ3MTU4ODZkNmI2NjgyY2E3OWFjOTg0OGNjYzE5ZWEgbGVnYWN5LXRydW5rCisxNzY2OCBiN2ZiMTIxNmY2YjYyMjIyNzNlYjMxZGQxYjc5N2JhNGExZTY2ZGEwIGxlZ2FjeS10cnVuaworMTc2NjkgYjU2YTg4Mjc3ZThjZWY1OWVjMTliNDk5MTM3Mzg1MTY3MDkwYWI2ZSBsZWdhY3ktdHJ1bmsKKzE3NjcwIDRmZjg0ZTczNDU4OGZhY2QxODFlYmMxZGMxOTZmM2E4MWM4MmRjMTYgbGVnYWN5LXRydW5rCisxNzY3MSBiNDEzZTg3ZWVlZDQyMzczOTBhYjJhMzVlYzE4NjUwMjlmZDIxMTg0IGxlZ2FjeS10cnVuaworMTc2NzIgMGRkMjA0ZDkzNmUxNjM1MjI2Njg0YTc5ZTUyOTFlZjE0ZDcyZmYwMCBsZWdhY3ktdHJ1bmsKKzE3NjczIGM5NWM2NzZiMTg0MDcwMDQ1YmVhMTIxMGE5MGZiMzk3OWY5NmE4YTEgbGVnYWN5LXRydW5rCisxNzY3NCAxODJkODI0ZjJiNDczYmUwODM5OTZlZDc2NjIwNzA1MjYzNjBiMzI2IGxlZ2FjeS10cnVuaworMTc2NzUgMDc5NjM0MjFmYWZjYzlmZTU0NDg1MDEyZTFhYWIyM2RlZDQ0ZjQ2OCBsZWdhY3ktdHJ1bmsKKzE3Njc2IGM1MzY5NWYzZDg0MGQxNGFjMzgwZWFjOWVhNjBiZjEyNDE1ZWNiNjkgbGVnYWN5LXRydW5rCisxNzY3NyAzZTM5M2Y5YjEyOTM5MjY4MjA3ZTM5YjMwYTM2NWU5M2QxOWNkMDRjIGxlZ2FjeS10cnVuaworMTc2NzggNDk0NGUzODU5YTg2MDllZDM2MDdkNTM3NTY2YWM5YzkwYTM1ZjNhOCBsZWdhY3ktdHJ1bmsKKzE3Njc5IGExMDMzMjgzYTI1ZGM2MGJkZjU1YjFmY2EwNzczZGNlMDc3M2NlMmQgbGVnYWN5LXRydW5rCisxNzY4MCA5ZmQwMzBhZjJmZTAzOWFjZTRiOGI0NGI1MTM4YTRlNDBhMGFhY2ExIGxlZ2FjeS10cnVuaworMTc2ODEgOTJkY2VhMDg1OTMwNTg3NmZmMTZjMGVlMjhjOWYxMjAzNDA4MTgwYyBsZWdhY3ktdHJ1bmsKKzE3NjgyIGIxYTBmYjU1NDQ1NmNhZTBhMjY3MzYyMzU4NzFiOTBjNDAwNTI2MTcgbGVnYWN5LXRydW5rCisxNzY4MyA5Zjk2YzkyZjAzZTNiZTZjM2IxNjg3YWZiNzIxZTI2NzljYTI1ZmNkIGxlZ2FjeS10cnVuaworMTc2ODQgYjFmMjIwZjYzNmVkZDFlOGNjMDFjYTI4NzdkNGRmZTBlMWRjNTI2NiBsZWdhY3ktdHJ1bmsKKzE3Njg1IDA3Mjg4ZDJkYjU5NjQyNDZhY2EzOTZiNzRmNTZjN2ViY2UzMWIxYjcgbGVnYWN5LXRydW5rCisxNzY4NiAxYTFiNzk1ZjBjOWI5ZWRkMGQ4NDIxZTY5ZTU1ZjdlYWJlYzU2MmViIGxlZ2FjeS10cnVuaworMTc2ODcgNTRhZGI3YjRmOGM4NGRlOGRjN2JiNTNiZDg2NGU3ZDkzYTBiNTJkYiBsZWdhY3ktdHJ1bmsKKzE3Njg4IGVlODEzZTg0M2YzZTU3MGUzNmM3ZTk3NDQwZDAyODJiNmY5MDcyNmIgbGVnYWN5LXRydW5rCisxNzY4OSAxZDYyNzI0MmUyOWEyY2ZiNmFjZGNkZTg2ZDgxNGE5M2MyYTFhZjg5IGxlZ2FjeS10cnVuaworMTc2OTAgOTZkMzFhMTQzODU3Y2Y4YjVmMzU0OTRiNzgzMmFjM2MzMDZkNTVhMCBsZWdhY3ktdHJ1bmsKKzE3NjkxIDY3ZTBmZjRhYTdiOTc3ZjFhYjU2NWExZjVjMDNkNjNkMzA5YmFkZmQgbGVnYWN5LXRydW5rCisxNzY5MiBiNzc4N2E5MDUyZTNkMDgxZDAwZjY5OGYxODc0MzY5NWMxODVlYzc3IGxlZ2FjeS10cnVuaworMTc2OTMgNzZhYWQ1YjA2NTQzYWZjNzQ0NGNiN2E3OTZiY2I3NjljMWU2Mzc4MCBsZWdhY3ktdHJ1bmsKKzE3Njk0IDNiMGNhMGNjMzc1MGUyMjMzYTFiYzg0MGU5MjI4OWNjMzUyOGQ4YjEgbGVnYWN5LXRydW5rCisxNzY5NSA2MjVhOWE2OTU0NjliNWNjNGJlM2M5NTRiYjdkZGM1NTQ3MGRjZGYyIGxlZ2FjeS10cnVuaworMTc2OTYgNjgxODkyODU2NThmMjI4ODBmZjUxZGFjOTlkNjc1N2QxNWQ0ZDkwZSBsZWdhY3ktdHJ1bmsKKzE3Njk3IDQ2MGFiMTlhMzI4OWJiOWY3M2FmY2MxMDFlNWEyYWZmMWQ3NzQwOTggbGVnYWN5LXRydW5rCisxNzY5OCA5NGMyNDZlNjM5OWQyMjAxYTM4ZDFmNjkxYjE3ODQ4NWQ4ZTNhMGVkIGxlZ2FjeS10cnVuaworMTc2OTkgZTdkNjc4OTkwOGQ3MDkzNGIzYzkyZGFhMWExYTZkMTAwZTkxNDNmYSBsZWdhY3ktdHJ1bmsKKzE3NzAwIDg4ZDNhODk3NDQwOWVlNzJjNjI5MjU3ZWQ3ODg4NWQ2Y2JmNGFmZGUgbGVnYWN5LXRydW5rCisxNzcwMSA0NWVjNWRmOWE2MmQzMWVhZDU1MjlmMmM3YTNkNmI4NGIwNWI0MTVlIGxlZ2FjeS10cnVuaworMTc3MDIgZjZlNTAxZmMzMmM3NzFkZmVmNTRlMTE5NWUxYjU5NmY3ZGRlOTU3MiBsZWdhY3ktdHJ1bmsKKzE3NzAzIGU1MmMyNDMxOWFlZjUxOGI0MzBlNzc3MDQ0NTk5YjEyYTc3NGJjNTEgbGVnYWN5LXRydW5rCisxNzcwNCA5MmNkYmMwZjU1ZDUwMzJmNjRmN2FkZDBkMjc2MDA2YWU5Y2VlZjYyIGxlZ2FjeS10cnVuaworMTc3MDUgYzhjYTkzMTA3ZjJlZGM0ZmY4OTg2OTY4Mzc1MjY1OTUwZTliMTc2MyBsZWdhY3ktdHJ1bmsKKzE3NzA2IDU0NDkzMDJjNGQyZTE0OGQ0N2VkMTllZjAzNjMwZjRjMWZkODFjZTQgbGVnYWN5LXRydW5rCisxNzcwNyA0NjNmYWYwMTY4NWU3MTI3MTgzMjU3MWJlNWRlMzM3N2NlYjQxMGFlIGxlZ2FjeS10cnVuaworMTc3MDggMTI5MzQ5MmRmZTYwM2VhNGFiNzdhOTI4ZTM1ZmEzNTY3ZjY4YmY4MCBsZWdhY3ktdHJ1bmsKKzE3NzA5IDg5YmM4NDc1ZmM4NGUxNzBkNjYwNGY4NmY1ZDE1YmVhY2JlZDMxZGEgbGVnYWN5LXRydW5rCisxNzcxMCBhZTEyYjhjM2MzYjMzYWI2ZjA1OGE3ZTQyY2E4MTE0OGIzOWE5MzdiIGxlZ2FjeS10cnVuaworMTc3MTEgODNhZmYxZWE1YjcwZGU2NTI0ZmRhMTE3MWM4ZWFiYTM3ZTkxZTBhMSBsZWdhY3ktdHJ1bmsKKzE3NzEyIDZlZGE2YTFhNjkzYzU0NzI1ZTUxNzFjYmE4NmQ4NzYxYmE2MDdjMDkgbGVnYWN5LXRydW5rCisxNzcxMyAxNjYxMTllYzMxOTU1YjU5ZTU3ZmUzY2IzOTc0YjEyODJjYWZjMTIxIGxlZ2FjeS10cnVuaworMTc3MTQgZTk3NjYwZDFmMWFhZWIxMmUzY2YwYTU2OGVjOTljMTI2NDM3NWMwOSBsZWdhY3ktdHJ1bmsKKzE3NzE1IDE4YjNkZWY2YzRiODI3NjJjMzYwMThmNjlmNzQwNTIzNzQ0MTVkM2IgbGVnYWN5LXRydW5rCisxNzcxNiAwOWMxNGFlNWMyZjU0MzU3OGI4Y2MxOTY1ZWJkNWE3NTcwN2Y0Yzk0IGxlZ2FjeS10cnVuaworMTc3MTcgNWI4Y2RhNmYzYjVmNjllYzI0NzMwNWEwNGU5MGQzZmEwMzViZTY0OCBsZWdhY3ktdHJ1bmsKKzE3NzE4IGMzZjBkNmYxOWY3YmZmYzNkZDYzNDBmZDk3OTk5MjFmYTEyYTA1YmUgbGVnYWN5LXRydW5rCisxNzcxOSA1NmZkYTRlOWVjZTlmN2MyMjg4ODEwNGVlMmMzOTFjMDU4ZDdjNWNkIGxlZ2FjeS10cnVuaworMTc3MjAgNWJhZjdmNzQzOTZmMWRhZmMyZjhhZmE2ZTEwOTZhNmVmY2ZiYjUwYiBsZWdhY3ktdHJ1bmsKKzE3NzIxIDRjMDg5YWQyOWVlYWM0NWE0YTlkZDZhY2Q5NWJiMWQ4MDZkYTVmMTggbGVnYWN5LXRydW5rCisxNzcyMiBjODkyZTZhYTk5OTc2YzgzMDE5M2Y0MGM0YTQ3YWM5Njc4MTExYWIxIGxlZ2FjeS10cnVuaworMTc3MjQgYjY4MDA2YTU2NDcxMTZiMDFjNDI2MTE0OTI4Nzc4YzEzMDQzMzQ5YiBsZWdhY3ktdHJ1bmsKKzE3NzI1IDI1ZGRkM2RjN2E3YTJlNGQ1N2MzMmM0MGU5YjBiMTQ0YjQ5YTdiYzkgbGVnYWN5LXRydW5rCisxNzcyNiBlMzVhM2E3NzJkY2E5ZWZiMjU2ODY1YzJmMDZjZDcxYjA0MTFkNGNmIGxlZ2FjeS10cnVuaworMTc3MjcgZmI2YjUxMDMzYzNiNjBlMTE3NmUxNThkNzNiMGU0YWYxY2Y2NzE0MyBsZWdhY3ktdHJ1bmsKKzE3NzI4IGFjMTRiODZmMGY4YjhmODBlZWE1MmRhMDg1MGM1OTZiNDNjNmY0ZGIgbGVnYWN5LXRydW5rCisxNzcyOSBhOTNiMmYxNzZhNWUyZjE1ZWM5MDFlNGVkMWVjY2I0MWRmOWNkOGE0IGxlZ2FjeS10cnVuaworMTc3MzAgNjQzMWNmNWM4YTAwNGM2NjY1MWM0ZjQ3OTA2MTIwOGE1NTNkZjM2OSBsZWdhY3ktdHJ1bmsKKzE3NzMxIDE3YjVjNDNjMDhhNmM0ZDhhZWYwYzZkNjFmOTc2ZmIyM2RlNjc3ZTIgbGVnYWN5LXRydW5rCisxNzczMiA3M2ZkZTQ0NTYzZDFlZjkyOGQxZWYxYTJjNjBiOGQ2NTkwOTVlZDhmIGxlZ2FjeS10cnVuaworMTc3MzMgNzk4NmE0NTUzOTMwYjI2MzAxZTcwYzBkYzQ4YzNhOGZiYTU2MmU2NyBsZWdhY3ktdHJ1bmsKKzE3NzM0IDY4ZTIzZjFmZjVkYjdhMjg4YzNkNmZlZDZkOWE5YmNhOTE4ODkyMzMgbGVnYWN5LXRydW5rCisxNzczNSAyODA5NjYyYWU5Y2UxODM4NGU3Y2FjNmI3Y2Q3ZDU4ZTc5MjgxYWIwIGxlZ2FjeS10cnVuaworMTc3MzYgM2E1OWEwNzMzZGY4YzE2ZmEzZTE2Yzk5ZTBhYzRlZmEwNGRhNmE4YyBsZWdhY3ktdHJ1bmsKKzE3NzM3IDVkMDg5MDk1ZjQwZjVjZTY1ZGIwY2Q0NjdlNzcxZDFlOGU4N2EyMzggbGVnYWN5LXRydW5rCisxNzczOCA1MjhiNTJiZDRiYzMyZWQyM2ViZWYzNzcwYmY2YjhkNDRlY2EwMWZlIGxlZ2FjeS10cnVuaworMTc3MzkgZDZiZGNiMDg5OWRkYTkwZGYzMTE5YzZiMmY2MmZiNjljYTVmM2UzOCBsZWdhY3ktdHJ1bmsKKzE3NzQwIDk2OGFlNTVmZTZlZWFiMjhkMGZjODgyZDFhNzBjZmZlNjBjZDhiY2UgbGVnYWN5LXRydW5rCisxNzc0MCA1NWJiYTE5N2Q0ODcwY2RhZTYyYWVjYTAwZTIwMjQwYTc1NmI4NGY4IGxlZ2FjeS10cnVuaworMTc3NDIgZjY1NzkzMGZkMjc0YzNiODFmMmRhNTQwOGMwNTA1MjJiZmU5NzJkMSBsZWdhY3ktdHJ1bmsKKzE3NzQzIDRmZGY2NjAwZDhhYTcwMTBjMjlmZTI0NTY2NWNmZDQzNDMwZTdiNGEgbGVnYWN5LXRydW5rCisxNzc0NSA2NTM3NDkwMDNkYjk3NjM5MDJjYzgyMjFjMzY4NTY3MmJjZjc2NzAzIGxlZ2FjeS10cnVuaworMTc3NDYgYzdmNTU1NTFmZTMxYmNjYzBiMWJhMzg3ZGFmM2U5ZWIwMTgzOTk2NCBsZWdhY3ktdHJ1bmsKKzE3NzQ3IGFmZDdlY2UzN2M0Njk1ZWU2OWY1OWNiZTYyMDc5N2E5YzgzNTk0MWQgbGVnYWN5LXRydW5rCisxNzc0OCBlNDY0MWQxOTMyMjBmMzg2YzBkOTdhNzM4NTY3NGQ4OGQxNzdlOGQzIGxlZ2FjeS10cnVuaworMTc3NDkgMTk2N2JlMTM1OWVlNTk4YmE5MzhkMTFiOGYxZTY1Y2E1MzYxODdkNCBsZWdhY3ktdHJ1bmsKKzE3NzUwIDgzNDA2MmY2OTVlMGYyMWM3NGI5MDE3ZWE5MjY2MDA0YTc3NTgzYjggbGVnYWN5LXRydW5rCisxNzc1MSBkZTE4OTJlYWNjZmZhY2FiZWVjMDg4OTA1OWZlODg5MWY3MWI2ZjE3IGxlZ2FjeS10cnVuaworMTc3NTIgNDIwZDNjNTdlZmVjNzM4NzRlZGE3YjJkZjAxOTVhYjU2NjAwOTRjNSBsZWdhY3ktdHJ1bmsKKzE3NzUzIGFkOThjMTM2NDc1ZTdiMjM3MzJiOWJkODg3ZWRjZTkxNzNkNTgwMzYgbGVnYWN5LXRydW5rCisxNzc1NCA0MTExY2YyMmEwYWQ5NDFjYTJlNDUyOGQ5ZWY5NTA0MzQ0ZmM4MDQzIGxlZ2FjeS10cnVuaworMTc3NTUgNGJlYTRmNTljNGU0M2M5YzVjNGE2MjY1M2I4ZmU0MGRmZjdlYWQ4ZSBsZWdhY3ktdHJ1bmsKKzE3NzU2IDYwNmE4MDgzNGE4NjIyMzhjN2NhOTdjZTVhNWJiNDRhOTM2M2JmM2UgbGVnYWN5LXRydW5rCisxNzc1NyBmOTMyYzEyODI3OWJjZjNmYzQ3Nzc2ZjcwOGNkZDQ3ZGRmNGQ5MmJmIGxlZ2FjeS10cnVuaworMTc3NTggMjkxYWJlYmVhNTViMmVkN2M0MDhlMWEwOWQ1NzY0Mjk2OWRiZjA5MCBsZWdhY3ktdHJ1bmsKKzE3NzU5IGVjNzU2ZDU4ZThhNzBlZmE3NzVkYjRmNTM1ZWEyNzYwMjc0ODFlYWEgbGVnYWN5LXRydW5rCisxNzc2MCBmNGExZDNmOGYyNjI4OTc3MDNiMDVmMGU1ZmM3N2I4ZGM2OTAzZWE3IGxlZ2FjeS10cnVuaworMTc3NjEgYjE1ZmNlODY4ZTUwYjc3YTA2OTk0N2VmNjEyZmI4YjllNTVjZDI3MCBsZWdhY3ktdHJ1bmsKKzE3NzYyIDQ1OTY3ZmYxYjZkYzE4ZTU3MTBkMDYwMWY1NGY2ZGZjNzhlN2UxZDMgbGVnYWN5LXRydW5rCisxNzc2MyBhMGExM2YxMGNlNGJmNWNlY2MyNWRjYzBjMDI2YTM1MGM4NjMzMDA0IGxlZ2FjeS10cnVuaworMTc3NjQgZDAxMzk0YjBhYTY5ODgwYTRiNWQ1OWE5YmQ4ZGFhNGNjMDNhMTgxMCBsZWdhY3ktdHJ1bmsKKzE3NzY1IDhmNTliZDk1Nzk1MjU3NzY4ZTljZWYyNjI3MDM3ZmE2ZjdhNmVlOWUgbGVnYWN5LXRydW5rCisxNzc2NiAxMDE4NzI3ZjMyMzE3NmNhZmQwZTJlYzkxYTlhM2QyMTNmZTY1ODYyIGxlZ2FjeS10cnVuaworMTc3NjcgNmZiMmFmNzY2ODkyZWI4N2JiYjNkNmM0MmMwZTIwMjFjYTJlMGZkNCBsZWdhY3ktdHJ1bmsKKzE3NzY4IGFmOGQ3N2FhOTBmODg1ODcwYjdmNGVlOTMyY2U1OWU4NzQ4NjUyZTggbGVnYWN5LXRydW5rCisxNzc2OSAyY2RmN2FjOTE2MmQ5MzUwNGRlMmVkZTY0YTdmNWU4ZjQyY2E0NjEyIGxlZ2FjeS10cnVuaworMTc3NzAgYTA2Mjc0OWI4MGY4YzUwM2VlNGNkZWU3ZWYyODIyMTgwY2I5MDk4YSBsZWdhY3ktdHJ1bmsKKzE3NzcxIDc5Y2RlZWVlZmFmYTU3NTVlOTMxMGJjOTg2ZjBjNWU4YTI0NDU4MDEgbGVnYWN5LXRydW5rCisxNzc3MiBlYTJiYTkxMGU1ZjA1ZmU2Y2FjY2JjMDY2MWIyNDFiMGE4Y2VhM2UyIGxlZ2FjeS10cnVuaworMTc3NzMgYWFkMmI1YTNmN2JmNGMzN2FhMjE3ZTI1ZGU0Yjc2YjI0NDAyODU1OSBsZWdhY3ktdHJ1bmsKKzE3Nzc0IGNlZmIxOTEwYWQwZDdiODRkZmIzZmQ5N2NhZDc0YWY4NTI3OWQ4MmQgbGVnYWN5LXRydW5rCisxNzc3NSA5MTRhZTdmOWM2NGNmN2YwMDYxNGIzOWM3MWFlYzA0ZGI2NzE0ZDhhIGxlZ2FjeS10cnVuaworMTc3NzYgOTViMjAwMTliNzExNDU0YzQ3NTdjN2NkNjViZDU3MTcxZDMyMTgwZiBsZWdhY3ktdHJ1bmsKKzE3Nzc3IGZhZDgyNDdlZjBhNTJkYTczNGM3Mjg4ZjVlYjkwMWU0OWYyZGM1YzMgbGVnYWN5LXRydW5rCisxNzc3OCAzZGI4YjgwMzFhNmE0NzQ0MTg0MDU5ODQ5N2JkYzZjOWI2ZGY3YjZkIGxlZ2FjeS10cnVuaworMTc3NzkgOWE4NzAwZmRjNTJiZTgwNjBmMzdkZjk3YmQ3NjQzYjA5ZWI5ZmNkYSBsZWdhY3ktdHJ1bmsKKzE3NzgwIDc1ZjNkNWU3Yjg5Y2EyZTE4NWFjMDMwMTlmMjk0NTA5ZDMzNmY2ZjUgbGVnYWN5LXRydW5rCisxNzc4MSAxNTM1NDFmODI0YTM2Mzk2NzkyNTc2ZjFlMGM2NjI2NmY4ZDFlMmM5IGxlZ2FjeS10cnVuaworMTc3ODIgYjRmNzQ0ODJmOWFmZTEwNzgwMzA2N2E3ZGQwNjIwOWZkZTNjZWJlYiBsZWdhY3ktdHJ1bmsKKzE3NzgzIDc2YzFlNDBjNWM1ZGU5MDYxZTQ2MGE2YjhhZGNlZmY5ZWRiMmY5OTkgbGVnYWN5LXRydW5rCisxNzc4NCBjOGYyMmYxNTQ5OWY4YjE3ZGU2NDE2MTk4MjBlMTAyOTJjMjk4MTBkIGxlZ2FjeS10cnVuaworMTc3ODUgMmVhMjk3ODY5YjAyNzFlMGViNTE5MjhlNDI3NTI5ZTMwMDZmOTdjZiBsZWdhY3ktdHJ1bmsKKzE3Nzg2IGFmMWRlNGY1MDUwODliMzQ2Y2Q0N2ZjODVhMTMzZWNiNmU0NjViYTEgbGVnYWN5LXRydW5rCisxNzc4NyA1NjEwZWNkMDdkYzAzNmU0YWEyMWI2MWVjYWNlZmRjYTE1Y2VlMGI2IGxlZ2FjeS10cnVuaworMTc3ODggMGM5M2QyZTI3YWMwN2MxMzAzOGRjYzdhMTc4MTdlNDAzYzAxZTJhYSBsZWdhY3ktdHJ1bmsKKzE3Nzg5IDgyN2U5ZDIxYTc4MTY0ZGVmYjNjOGE1ZWY3MjY4NDE5YmFlYzhkZGYgbGVnYWN5LXRydW5rCisxNzc5MCA3MTVhM2U5MjQ3MzcxODI4MDZhOWI1MDcyMTgzM2NlYTM1ZTBiMTZhIGxlZ2FjeS10cnVuaworMTc3OTEgM2RhOTlmMGMxODRmMjZiYTRjYmU5ZmY0ODg0OTlkMjkyMzhhNjUxNiBsZWdhY3ktdHJ1bmsKKzE3NzkyIDEzNDg4NTM5ZjAyYmZlMjhiYmFhZjFiM2Y0N2Y5MGFmYzY2ZTVjNTkgbGVnYWN5LXRydW5rCisxNzc5MyAwMTFkZjI2NDdmNDEzZDJkMTVkZDg0ZDc3M2NiODA0OTIwZjU5NDBjIGxlZ2FjeS10cnVuaworMTc3OTQgZmQ3Zjg3OWFmZjgxYzVhYmNkM2Q1YWJiYzkyYmZlMTE0NGExMThlNCBsZWdhY3ktdHJ1bmsKKzE3Nzk1IGMxMjg3NWRlZmMwZTRlMzk2MDdmMzA0ZThiMTk1YTU3YmJlOTVhMDAgbGVnYWN5LXRydW5rCisxNzc5NiAxNjI5ZWY3MzhiMmYwOTY3ZmIzMzkwNDQ5OTUwOGE2OGRkZjNjZTVmIGxlZ2FjeS10cnVuaworMTc3OTcgOWNlYTRkYjQxZDlmYWZlZWQ0ZmM0M2Y2YzY0OGU3MGRiYjk1MTJmMSBsZWdhY3ktdHJ1bmsKKzE3Nzk4IGY5Y2Y2MTEwOTZiZjUwMmY4ZmQ3OWIyNTk1NWU4NjAwYzMzNTZmYjkgbGVnYWN5LXRydW5rCisxNzc5OSBlMTVlOTdhNmMxNGE4MzQ2NTE4M2Y3YzlkNGNjMTQ0N2IwMjZlYmRkIGxlZ2FjeS10cnVuaworMTc4MDAgMTk5MTllMTQ2ZmY4ZjMxYjVlM2ZiY2E5Y2I3YjZhZWRkZmUyMDE2ZCBsZWdhY3ktdHJ1bmsKKzE3ODAxIDc1OTJmNzIxOWI3YzZjYTFkMTEzNTc1ZjI5MWE4OTJjZmNiM2Y1YWYgbGVnYWN5LXRydW5rCisxNzgwMiBhNTk2MDBhOTc1ZDEyNDcwZDJlZDg2ZmM0NDUyNGU1OTQ2OGJkZjdhIGxlZ2FjeS10cnVuaworMTc4MDMgOWU0NDVkZGNhMmQ3NGEwMDE4MmVhOTI1OTYxYzBiZWM1Y2RmYWU5NSBsZWdhY3ktdHJ1bmsKKzE3ODA0IDczY2VhNTk2NTdiYWJjN2U2M2Q2Y2ZiNmUzZGI5ZjI1MzM4NzkzNzcgbGVnYWN5LXRydW5rCisxNzgwNSA3YWNiOGJiYzIxNWJiNzJhMzMwODg2MzJiZmQ5OTNlNmE4MjBkMGM1IGxlZ2FjeS10cnVuaworMTc4MDYgMTRiNjQ3ZDU1MGQzNzkzMWE5MjEwODVjNDYzOTM2MDMyNTJjYThlYiBsZWdhY3ktdHJ1bmsKKzE3ODA3IGY4YjUyNmZjMzlmNjdmZDI2NDE5MTgyNDNlOWVhZTk3ODFhNjViYWEgbGVnYWN5LXRydW5rCisxNzgwOCAwMDVhMGI0YzM4MmQzNWY0NWRkNmIyYzEyMzU3YjFjNzQ0MjdmNjc3IGxlZ2FjeS10cnVuaworMTc4MDkgNmU3MDUyNDczNzc4NmIzNWUyNjI5YWUzM2E4NTNhMjMyNzk4MzUyZCBsZWdhY3ktdHJ1bmsKKzE3ODEwIGQ5ZTY2YTgzZTQzMzg0YTYzNDFlNzYxYTA2NWRiMTIwZGIyZjdhYWQgbGVnYWN5LXRydW5rCisxNzgxMSAzNDI0OTdhZDhmZWM5NzYzMmQ0MGUyOTY0ZGFiNTM4NTJhYjBkZTE4IGxlZ2FjeS10cnVuaworMTc4MTIgMWY5ZDIzNzc3ZmQwMTc0NDllYjI4OTE5NmRjNTRhYzkxYWExNzkwYSBsZWdhY3ktdHJ1bmsKKzE3ODEzIGM3OGU3NmE1NzFiNjVkYjkzOTJiMjAxMmIwMmJlZjNiNzE1OTZhMzkgbGVnYWN5LXRydW5rCisxNzgxNCBkYjFjY2UxZmZiNjA4MjY4MTE1M2I2MjYzMjZkNDhiOTk4OWY4YmU5IGxlZ2FjeS10cnVuaworMTc4MTUgNTAzODZjNzNiYTIyNWQyOTg1ZmQyNjUwNjQ1OTRiYTllNDlkZDhmMiBsZWdhY3ktdHJ1bmsKKzE3ODE2IGIwMzFhYmNhM2U5MWFiZTA1ZDNlMDYwYjlkNTI4YTBkNGE4NDE4NmYgbGVnYWN5LXRydW5rCisxNzgxNyA1NjkyMTRhNDE4MmM5M2U0ZjNjMjY3MWIzOWI1YWZiYTc1YmZlMWJkIGxlZ2FjeS10cnVuaworMTc4MTggZWJhZWIxOWUwMzgwOWI4ODYxY2JkMmNmMWIxZGVlMWE0NDBkZTY0YyBsZWdhY3ktdHJ1bmsKKzE3ODE5IDljM2FlZmE1Y2Q3ZjU5MzJhZDM0Zjc4MDYzOGNhMjJkZWMyMmQ2ZmEgbGVnYWN5LXRydW5rCisxNzgyMCA3M2QwOTMyMmYyYzM2MDA3NTQ3ZjE1NjBjYTkzMzc4NDE0OWQ0NDcxIGxlZ2FjeS10cnVuaworMTc4MjEgNTRlYzVlYzMyMzUyZjBlYTg3YjNlNDhhYWE4YjQ5MDE0ZDIyNWUxMCBsZWdhY3ktdHJ1bmsKKzE3ODIyIDFhYTM3MDA4ZmQyYzgyNWUxMGFiNzg0MjUyMmQwMzAyYjE0ZTRiNTMgbGVnYWN5LXRydW5rCisxNzgyMyA5MzE0Y2M3OWQ2ZTEyZTdjMWRhZmRlYTY1NDQxYTEyYzY5YzU2YzI4IGxlZ2FjeS10cnVuaworMTc4MjQgMzE0ZWI4ZjdhZTEzNTI5YTU3OGQ2Y2JjZTgxMjA4OTg0N2U3MmIzMiBsZWdhY3ktdHJ1bmsKKzE3ODI1IDUzMzY5NDZiNjQ5NWExNjQwZWJiMmQwYjc5NmQ0OGFjNGQ3ODY5MzIgbGVnYWN5LXRydW5rCisxNzgyNiBiNDExMjM4ZGU5ZDEwZjEyYTE4MmJlNWQzYjVhZjdiMmY2OGY0YWY0IGxlZ2FjeS10cnVuaworMTc4MjcgNmFmOWFhMTU2NDdmOThmNzg3NDcxOWY4YjBlODlhNGI0NmM0MzhhMSBsZWdhY3ktdHJ1bmsKKzE3ODI4IDMyZDI2M2Q0NDdiN2UxM2E3NmI1YmJhMjA4MDMyNjM3N2YwMWU3OTMgbGVnYWN5LXRydW5rCisxNzgyOSAzZWVjZGEyYmE5M2EzODQ2NjYyMDI3NjVhMDRhZjBmNzllMTc0Njc0IGxlZ2FjeS10cnVuaworMTc4MzAgNDhiNDVhMjgxMjc3MDAxNjE4NGRkZjRlZWY1MGU2ZjQwNzk1NTE0OCBsZWdhY3ktdHJ1bmsKKzE3ODMxIGM3OTA3Mzc5YTZiZDIyODUzZDA2NzQ0ZmRkOWZkMWM4ZTQxZDEyNmUgbGVnYWN5LXRydW5rCisxNzgzMiAyN2VhYjgwMzI3NjYyYTdlZTU1ZGZmM2IxMTJkZjk4NmI3NzU1NzA2IGxlZ2FjeS10cnVuaworMTc4MzMgODM5YmEzNWIwYWEzMTQ0Mjg1ZTQxOTIwMjVjNmEwMTE3OGRjMTBkOSBsZWdhY3ktdHJ1bmsKKzE3ODM0IGIwMTJhZWJiYmU1MTc4ZmEwZDkxZWNiMTUwZGU0YzNmY2Q4YWJiODcgbGVnYWN5LXRydW5rCisxNzgzNSAxNzRkMzRlYWM1MTYzYjljOTRjMTIyNzdlZTNlZDQwMWM5YTJmN2JiIGxlZ2FjeS10cnVuaworMTc4MzYgZTc5ZDA3YzI0NTcxZTM4ZTIxOTljN2U5YmYyYjY0MDI5Y2QwN2QwYSBsZWdhY3ktdHJ1bmsKKzE3ODM3IDI2ZDJlNGY1OGFkY2E5NzBiZGRmOTk4NDQyM2NkM2Y0OGRhNTUwYmIgbGVnYWN5LXRydW5rCisxNzgzOCA4MjEyM2NlMDI2ODRmZTI1MDFmZGJhMjViMzEwNzY3NDliYjdhYTkzIGxlZ2FjeS10cnVuaworMTc4MzkgMGZhNThmZWEzMGNmMjE2YzIzN2YyZWYyZWNlOGFlOTFkYjIwYTc1MiBsZWdhY3ktdHJ1bmsKKzE3ODQwIGI2MWNkMWE0ODk2MDNiYzQ3OWY2ZGIyZTc2Y2VkM2ZiNjVhYzQ0ZWQgbGVnYWN5LXRydW5rCisxNzg0MSBlY2U2YzE5ZWRjYzE1NWI0ZmY3YzRiZmU2NWU3NDJkYjU4MGI5Y2ZiIGxlZ2FjeS10cnVuaworMTc4NDIgM2ZjNmM1YWRkZjFlYzFhYzI1NjNmMGJmYzU5NDQ3ODY3ZTQ2NzQyMyBsZWdhY3ktdHJ1bmsKKzE3ODQ0IGE5ZDI0YTUzYzU1MzM0ZGEyMmFhYmNiMDY3ZTE3MmE1NzM3Yjk4ZDYgbGVnYWN5LXRydW5rCisxNzg0NSBiYmUwOWNjY2I0OWJlMDcwNGYwODAwNjFlZjRhM2I4OTljYTAzZGEzIGxlZ2FjeS10cnVuaworMTc4NDYgZTg1NzU0ZmE2OTE3NGZhNzJlYzYxNGIxNzJhY2JhMDljNTJmMDFjOSBsZWdhY3ktdHJ1bmsKKzE3ODQ3IDJiNDIzNjU4MGUwYzRmYmEwZTZmNmY4ODNlYjFhZjFjOTU4YmMwOWYgbGVnYWN5LXRydW5rCisxNzg0OCBiYjZjY2E1N2ViOGIwYzk0YjE2Njk5ZDhjYmU0OWU0NmY1MjljM2ZlIGxlZ2FjeS10cnVuaworMTc4NDkgNWQ0MWNhNDlhMTBhZGMyZThjYjJlOTY4ZmYxMjQ5NGQ5ZGI2N2JkOCBsZWdhY3ktdHJ1bmsKKzE3ODUwIDRjNDkzNGNhODU3OTYyMGUyMWI4MzI3YzBmYzMzMjcyY2NkNDdhNWIgbGVnYWN5LXRydW5rCisxNzg1MSBmYTVjNDgyMzY3YzdhZjUwMzhkZWJlZmY2ZTdjODQ3ZDNmNzkzMmY2IGxlZ2FjeS10cnVuaworMTc4NTIgN2Y0ZTI4MDQ1ZGZiNDU4NDEyNDYyNTgxZTc0OGRjNjliYjk1ZDM3OSBsZWdhY3ktdHJ1bmsKKzE3ODUzIGVlYzJlYjEyMWRhZTBjYzFkMGM4MWY0NjkzOWM1ZjM5MDY0YTdkNjYgbGVnYWN5LXRydW5rCisxNzg1NCA1ZTRlZWQwNjJiNTRhOWU2ZjIzODAwMWMyNzAyZDY2YTJmOTk1MjZkIGxlZ2FjeS10cnVuaworMTc4NTUgMGM1YjAyY2M1NDg5MzkyYTJjZmNiZjkwYjI3OWE1YWQwNDRhMDNmZCBsZWdhY3ktdHJ1bmsKKzE3ODU2IGMxNmJkZjU1NWM3OTc4MTEwODg3OTZjMjIxZGY3MWMwYmUyOWY3MmMgbGVnYWN5LXRydW5rCisxNzg1NyAxYTNiNWM4ZDY3MzBkOTc5NzNkOTAyYzgwMmQwOTNlZGM2ZWY2YjVmIGxlZ2FjeS10cnVuaworMTc4NTggMGE5N2Y1ZGRlM2E3OGRjN2MzNzM5YmY4MmMzODg0OTMyNDk4Y2M5NCBsZWdhY3ktdHJ1bmsKKzE3ODU5IGEzNDliODliZjEwZWU1ZDUxZDdiMmIyNDQ3N2JhMzAzOGFhYjE5N2IgbGVnYWN5LXRydW5rCisxNzg2MCA5ZDUxNDJjOGNmMmRkZGQ5NzM4YmQ0ZjQ1NTY4ZjczZmJjYzU3OWRkIGxlZ2FjeS10cnVuaworMTc4NjEgMDAzMmRmZmViMTYzYjRmYWQ4MjVhODIxNDM5MjNhYzQxNjAwMDM4ZiBsZWdhY3ktdHJ1bmsKKzE3ODYyIGRkYjIwMTkwNTkxZGJiZjE2ZjUyM2VmMDVmOGU2ZTg3NWZmOTEzNzggbGVnYWN5LXRydW5rCisxNzg2MyAwY2Y1MTExYmYwOWNiMWJmMTcwNTBlZmVmMjI5YWVlMThkOGMwYmYwIGxlZ2FjeS10cnVuaworMTc4NjQgOGI2ZmU2Yjk5N2MyZGI3YjRhMzkxMmNmZmY4NzUzNDZmZDMzMWE3MCBsZWdhY3ktdHJ1bmsKKzE3ODY1IGNiNGIyYTE2ZWI4NzEyNTU5ODhlZjE2MzBkZmVjN2VhYTNkZGZmNjggbGVnYWN5LXRydW5rCisxNzg2NiBhYTA1MmE1MmVmODcxMmYwODVmNmVmNTVkZmY4NWY1Y2VhMWE4NDM3IGxlZ2FjeS10cnVuaworMTc4NjcgOTg0N2I0ODZkMTVmYmE4MDlmNDdmMzA0MGZhYTg2OGIzYTUzMGM5ZiBsZWdhY3ktdHJ1bmsKKzE3ODY4IGM1Y2Y2ZmJhNTRkZGI4YjczNjYyNzIzMGYwZjMzZjFlNmNhZWRmZDMgbGVnYWN5LXRydW5rCisxNzg2OSBkYjNhOTU3OGFiMGJlZmNlYmMzOWI0NzRlYzdkMmU3MGYyM2VkZTExIGxlZ2FjeS10cnVuaworMTc4NzAgNmM1MWI1YWYxYmRlMTMwOTYyMGVlY2E5NjNkYmJjMTZjMDVlYThlNCBsZWdhY3ktdHJ1bmsKKzE3ODcxIDI1YmMxNjk1MmEyNGU1NDc3YjliODQ0NTJjMGI3Mjg4ZThmMmUwM2IgbGVnYWN5LXRydW5rCisxNzg3MiBiMGQxZGVjMjM1M2E0MTFhZWNkOWNiMzMzNDk4ZWQ5ODUwYWIzYWMyIGxlZ2FjeS10cnVuaworMTc4NzMgZGEzZThjNTA2NGNhZjNiZDIyYjFkMTNkY2ZjZmE3ZTg4OTUyMDBhMSBsZWdhY3ktdHJ1bmsKKzE3ODc0IGZiN2FjOGE0MGE5N2MyNGUwZGEzYzI3YTVjNTQ2MWVmZjdlOGFhNzkgbGVnYWN5LXRydW5rCisxNzg3NSBjMjg1ZGYxNWEwNTAzODMwMTU5ZGZlNGI3MGU5MmMzNDU4ZmJlYjNiIGxlZ2FjeS10cnVuaworMTc4NzYgOThiMWZhNmMxNjAwMGU3YTRmMzU0ODEzY2M3N2M5MTg4YWM5ODM4ZSBsZWdhY3ktdHJ1bmsKKzE3ODc3IGE2ZDM1Y2M0YmY1ZWU1ZDgzMjE3NGJiMDZhZDRlZWEyNjQ2ZGQ0MDkgbGVnYWN5LXRydW5rCisxNzg3OCA0MDVhZDBhN2Y3YTYxMDk5ZTdiYmQ4YzU3ODdkNmFjZGJmMDI5NWE2IGxlZ2FjeS10cnVuaworMTc4NzkgZjEyZDM1Zjk5NDg4NTVmYzM0Yzk2NTk3ZDRiYTM0YmYyNjkyNGMyMSBsZWdhY3ktdHJ1bmsKKzE3ODgwIDM3YjFjYWVlZDcwNTU3YTU5MDYzMzJmNjJmMWY2ZWQ0NTk4MmUzMGIgbGVnYWN5LXRydW5rCisxNzg4MSBkYjkxMzVmMzgwNjg5YTIzZWEwMDI0MjNmM2U1MWVmZTNiZWMxYzAyIGxlZ2FjeS10cnVuaworMTc4ODIgMGJiMzQ4OTg2ZDUyODFiMmUzZDk2NjljZTc1MGJlMmNlZmM1OWI5NiBsZWdhY3ktdHJ1bmsKKzE3ODgzIDI5YzJkNWU1MjE2MTJiODEyM2I2Yzk0ZjIxOGM4YzM5NTRhNjc1YzUgbGVnYWN5LXRydW5rCisxNzg4NCBiMzY4ZTA2YTNiNjI3NWU5MTQ2NTY5MjJhMzY3NTdjNjVjZTYwNDc4IGxlZ2FjeS10cnVuaworMTc4ODUgNWZmYTUxNWU2MjBlNGQ3NjQ0ODU3MzQyNDU2ZTg2ZWI1ZDQyZDY4NSBsZWdhY3ktdHJ1bmsKKzE3ODg2IDI1ZjEwOTJlY2Q4NmQ1NDgwZjI4OTI0OGViMjQzOWNhZWRlZTA0YzYgbGVnYWN5LXRydW5rCisxNzg4NyA1MmViNDk5ZjI1YjA5ZmQ1N2JlNTA4N2MzMjlkZTc2ZTA4MjM0NmY1IGxlZ2FjeS10cnVuaworMTc4ODggN2E1YzM4NTlhMzYxMzk4ZmExNjJjZmFmMTMwZWYwMjE2ZTQ5MDIxOCBsZWdhY3ktdHJ1bmsKKzE3ODg5IDliYzUyNzA2ZDI4MzRmN2E4YzUzODY5ZTMyOGE5ZDRlNTc4MTg5NjEgbGVnYWN5LXRydW5rCisxNzg5MCBjZTVkZmYzMGE5MzVkMTlmMThlZGViNDJlNGMxOTdiYzM5Y2I3MmZiIGxlZ2FjeS10cnVuaworMTc4OTEgNmM5MWEwNDFjMWQyYjJjOTVmZTZlZmVkYmYwNjA3OWQ0MmY3NTY2MyBsZWdhY3ktdHJ1bmsKKzE3ODkyIDk0YzAzMWQ3ZTljMmU4Mjg5ZTRhMWJmMzM0MTY2N2E5M2UyYmE2MjkgbGVnYWN5LXRydW5rCisxNzg5MyA4OTRkY2EyMjVkMjRhZWMyODU5Y2FlOWQyNWZhM2JiYTJiNTY2YTQ0IGxlZ2FjeS10cnVuaworMTc4OTQgNmU5ZmYwNjBhNzI4ODI5OWY5OTdlMTcyNDNiY2QyM2VkYmY5Y2FjNCBsZWdhY3ktdHJ1bmsKKzE3ODk1IGM3ZDQ2ZWFlOTVkODk4ZDg4MDQ4YTE0ZGZkZWUwZGM4MDBlYzliMjEgbGVnYWN5LXRydW5rCisxNzg5NiBlOTcxM2NiZTJiYThkMzA3ZDQ5NzFmZjc5YzA2NzllZTRlYzJjMzhhIGxlZ2FjeS10cnVuaworMTc4OTcgOTIxYzc0NTk3NzFiNDEyZWNhMjRlZmE4MWMzMDAwZjU2YTg0ZmRjZiBsZWdhY3ktdHJ1bmsKKzE3ODk4IGQxMDZkZmRmZjQ4MGFlYmYxYTM1OWM2OWEzYjliNzJkZjIyNGQ0ZDggbGVnYWN5LXRydW5rCisxNzg5OSA3ZWVmZGU5MGVjMGVlNGI0Y2UxZjQ5MDg0MzgxNTJlYzgyOGU4MDMxIGxlZ2FjeS10cnVuaworMTc5MDAgMjkzY2FmMGU2MzJhMTc0NDhiMjZjMTNiNWExYzE3YWE5Zjc3ZDE4YSBsZWdhY3ktdHJ1bmsKKzE3OTAxIGMwYzI1NGZiZGU1NzZiYzAxOWRkYzhjMTUxNWEzNTI0ODJiZTQ0ZmUgbGVnYWN5LXRydW5rCisxNzkwMiBkYWU3Y2VmNThhYzI2YWRkYzIxMzA1MTA4NWQ2YWNmYmQ4MDBlZjU2IGxlZ2FjeS10cnVuaworMTc5MDMgYzkwYzNhYWJkOGY1MDM2YTVmODE4N2UxNzIwNTFlZDQ4ZjQzNjI3YiBsZWdhY3ktdHJ1bmsKKzE3OTA0IGM2NTRiMjAxODQwMzljODhjNWU3MDcwMGVhM2YyNmI4NjI2ODA2ZTkgbGVnYWN5LXRydW5rCisxNzkwNSA0NTdmMGRmNDZkZDk4MDU1ZWI4ZWFkMDAxZTdhZjYwZWMzZDZmODU0IGxlZ2FjeS10cnVuaworMTc5MDYgMWRkNzJhOTJlOTIyYzM1YWQzZGM1Y2ZhYTJmY2VlMWFhZGM5OTg2YyBsZWdhY3ktdHJ1bmsKKzE3OTA3IDQzYzQ5ZGJkNDU0NmU4ZWNhZDE0OTBjMWQyMjI4MzJmM2FkOTU4MWQgbGVnYWN5LXRydW5rCisxNzkwOCA3OGJjYWU3N2U4YzcwM2U4NjZiYWE5MzRiZGQ4OGZlMjU0NmFhN2QxIGxlZ2FjeS10cnVuaworMTc5MDkgZmNmODVjOTBhMjc0MGJmYzZmYmMxYjY0MTYzMjc2ZWVlZjg1M2E0YSBsZWdhY3ktdHJ1bmsKKzE3OTEwIDI1NTc5Y2Q2Y2RkOTAzODA3ZmU0ODI5OGY5YWM4Mzg3OTFjMGVkMWEgbGVnYWN5LXRydW5rCisxNzkxMSBiZTRmYzhiNmUxY2I4M2EwMzA2Mjg2ZjgxZGMxODNjYTFkZTNmOWM0IGxlZ2FjeS10cnVuaworMTc5MTIgMDhlNmYxMDE5MTcxNDk4YjA0Yjc4MDNmNDkyM2YxNmNhNDI0OTgyYSBsZWdhY3ktdHJ1bmsKKzE3OTEzIDYyN2ZmNTc4ZjEyZjhmODUxOTJmMTczMmI5NGI0NjllNTY5OTA1NTQgbGVnYWN5LXRydW5rCisxNzkxNCA0MWJmYzlhNDBmZTM5NDk2YjgzNGQyMzU1OWQ2YzgxOGVkZThmODMwIGxlZ2FjeS10cnVuaworMTc5MTUgYmYyN2NhYmEzZDBlNDA5MjMxODU5OGM0MzNkMzc1NDQyZWY5ZWE5NiBsZWdhY3ktdHJ1bmsKKzE3OTE2IDNhMDRiZWJiNjY2YWViMGUwYmNlOGZkY2YxMGU3OTU0YjBhMzRjODQgbGVnYWN5LXRydW5rCisxNzkxNyBhY2I4ODYwN2I0YmQ3ZThiYzBkZTQyYTRmOWZiY2JlMmQ3YTBlMjk2IGxlZ2FjeS10cnVuaworMTc5MTggMTc3YWUxYzUyMDM3NjUwMjA2YWNkYjU3ZTM0MTM0Yzk5NjA3NGI3YiBsZWdhY3ktdHJ1bmsKKzE3OTE5IDEwMzYxMjUxNmFhOGQzNWZjZGRlYTBmZGNkOTk5ZWM3ZDhkOTA0NjEgbGVnYWN5LXRydW5rCisxNzkyMCA2NzU3NDgzNzhjODE5OWQ5NzQ5YjU0YTg5MWNlZjcxN2QyNmYzY2UxIGxlZ2FjeS10cnVuaworMTc5MjEgZjc4MDQ2OWE5NTc3Zjk1YzhjOTc1ZjEyMTRjMDMwZTk4ODY5MjFmYSBsZWdhY3ktdHJ1bmsKKzE3OTIyIGMwNThiYzM1NjQwZjc4YWU4ODQwZGI2MTJmMmE5YmI5M2JlZDg3Y2EgbGVnYWN5LXRydW5rCisxNzkyMyAxMThhYzg1YWYzMGEwNWM0YmMxMjE3MWFjYjZjZDhkMzQyODFjOGZjIGxlZ2FjeS10cnVuaworMTc5MjQgMTg3OWE0OGEzMTMzNmE0ZWI0Y2QyNWVkNzkxYWE0MzAxNDY1ZWU4YiBsZWdhY3ktdHJ1bmsKKzE3OTI1IDY5MGI0MWQ0N2MxZDZhZDU2NTg2ZmRhNjY4OWM5M2IwMjAwMmZjNDIgbGVnYWN5LXRydW5rCisxNzkyNiBhNTNmMTZiMjBmMWQ5MWJkOWRiMDMzMzViODkwOTZkZGUxYTMxODQ1IGxlZ2FjeS10cnVuaworMTc5MjcgNTdmZWE4NzA5NzU4ZjFmMzdmZjgwYjE0YmE4MTg0NDJmMzVjNmI2MyBsZWdhY3ktdHJ1bmsKKzE3OTI4IDcxYTRhYWRkZTAxOThiODY2YTQ2MDZmMWM3M2E2MWY1NTcyZTdhNzAgbGVnYWN5LXRydW5rCisxNzkyOSA2M2QyMzdhMjVmNDkxZTI2OGVjYWU3NjI0ZDg0OWM2ZDg4ZTI1MjQ5IGxlZ2FjeS10cnVuaworMTc5MzAgYjI1ZWFiZjY2ZDhkMzc1YzQ1NTUyODIzYjUxYjc1NjQ4ODY0NTg1NyBsZWdhY3ktdHJ1bmsKKzE3OTMxIDdjZTkwNjFmNzk2N2ZmYzczMjUyNTk1NWQzYTQ3ZWNmZjlmZTExNTUgbGVnYWN5LXRydW5rCisxNzkzMiA3N2QxZDc5YTY1ZDc1ZTg0YTg0NzczYzM3ZDgxYzMyZjUwZmZmZWE3IGxlZ2FjeS10cnVuaworMTc5MzMgMzE0MjAyN2I1OTc5ZGFlYWJkNTI2MTc1MTVmNDE4NGI5MTU3NmEyNiBsZWdhY3ktdHJ1bmsKKzE3OTM0IGFkOGVmMTU1Y2EzOTBlOGE2ODEwMjJhZTMxMWQ0MzM4ZDhiYWFiMWIgbGVnYWN5LXRydW5rCisxNzkzNSBkYzRjYWVkYzU5NjExYjE3MWIxNDk3OGMxNmE2YWYxZGI3MDYyNjQxIGxlZ2FjeS10cnVuaworMTc5MzYgNDdlNjgwNzcxMTdlNDIxMTUwOWRjMjgzYTNlNzY3YTEyMzhlNWY1MCBsZWdhY3ktdHJ1bmsKKzE3OTM3IGNkZmVjMzZmMTJjYzlmYTFiOGU5ZGE1ZWFhNTYwYTg2NTc5MmU5YmQgbGVnYWN5LXRydW5rCisxNzkzOCAwZTBlYTU2ZTRiZTg0YzA0ODgyMGIxMDI4NjVjMmEwNmZkZmFiZmM1IGxlZ2FjeS10cnVuaworMTc5MzkgYTExOWUwYzhiODBiMGU0ZDE5NjNiYjMzNGM2M2VhMzgyYjdiYjI5MCBsZWdhY3ktdHJ1bmsKKzE3OTQwIGMyZjEzYzM5NWI5YWU3Zjg4NWZjNDdhODE2YWFiMDZmMzI4OGUxZTEgbGVnYWN5LXRydW5rCisxNzk0MSAwMmFkOWNiNTIyMjI3ODMwNmE1N2Q4NzM3YmRkOTJjNWU4YmMxZGZhIGxlZ2FjeS10cnVuaworMTc5NDIgOWJlNjdjNWE4MjNhYjFkYTFjOTMyMGE2MTFhY2M1MWUzZTczMzQ2ZiBsZWdhY3ktdHJ1bmsKKzE3OTQzIGY5ZDRiZDc5YjQ2NDgwYzE0YWM0YWQ3YTI3NzIzMGUxMTRhM2FjMjAgbGVnYWN5LXRydW5rCisxNzk0NCBmMDlhODRhZjY0YmQ4NjMyMDFiY2I2NWZmZWJmNjA5ZDZjZDFhMTM2IGxlZ2FjeS10cnVuaworMTc5NDUgYTEzYTJhY2JlMjE0ZWY4ZmMwNmJhMzVlMzgwMGEzZWNjMzRiMTU5ZiBsZWdhY3ktdHJ1bmsKKzE3OTQ2IDFhNmY5MTU4NjMwZjFkNmVmYTk1YmVkODcwYjA5MDZlNDA1YmFhNTIgbGVnYWN5LXRydW5rCisxNzk0NyBkMGE2ZDQ0NGQ2YmM3N2IxNmQ4NjYzN2IzNmJhMWU1ZmJiNjUyYThjIGxlZ2FjeS10cnVuaworMTc5NDggNWRhOTYyMmZlZDdiNTQ3NGI1ZGM0ZTkxYmM3YjVlMjg3YzQ3YzBjZCBsZWdhY3ktdHJ1bmsKKzE3OTQ5IDQxYzQyYjFiZDU4MjhiOTQ4ODgwYzk1Y2U3N2RiMjYwNGMwYWI2N2EgbGVnYWN5LXRydW5rCisxNzk1MCA0NGZhMTZmMDFiNGUxMjI5YWNjM2QyNDU2ZWM2N2M2NjQ4OTZhNmVjIGxlZ2FjeS10cnVuaworMTc5NTEgMWIzNGM0NzVkYTg3ZmFlM2VhOGQ1YTU0NjY0NzEzZWFmZDczODc2YiBsZWdhY3ktdHJ1bmsKKzE3OTUyIGVjMWYyMzY1YmMyZDU3YjExZTYwYzI1NTVkZTcyZDc3N2FlNjA2MWEgbGVnYWN5LXRydW5rCisxNzk1MyBjMTk5NDYwY2NkZTkwNjYwM2M5MzI2YjgwMzgxNjA4NTE4OTE2MzkyIGxlZ2FjeS10cnVuaworMTc5NTQgOTViZTQzZDFkMzMyNjU3MTkzNmVkZTU5NzRhOTBlZTIwNzUxYTY2ZSBsZWdhY3ktdHJ1bmsKKzE3OTU1IDVmYjhkYzI4OTgxMmRmOWViNGQ2NDYyMDA5OGU4NGQyMzMwZDIwMzMgbGVnYWN5LXRydW5rCisxNzk1NiA3ZGUwODA4ZjFmZTMyMDdkYmM2NWExMTBmMGM2MDQ2NDNlMmJlZmYzIGxlZ2FjeS10cnVuaworMTc5NTcgMWFjYWM0NzU2YTAzYmViYTQwZmZiZDI0NzcwZDgwMGEwNGFmN2Y4MSBsZWdhY3ktdHJ1bmsKKzE3OTU4IGY4ZTk2MjUwNjA2M2RkYWY1MDgwZDEzNjg2NTgxNzdlNDQzZTI5YjUgbGVnYWN5LXRydW5rCisxNzk1OSBhMDJmOWRhYzIxNmNkOTg5NDI0ZmYwOWNkOWMzM2ZiM2NmNDZmN2IwIGxlZ2FjeS10cnVuaworMTc5NjAgOGJmYTk3MDNhNGU0ZjQwMzcwZTVlOWE0Y2M0NzRiYjY4M2NiZDA0MCBsZWdhY3ktdHJ1bmsKKzE3OTYxIGE1YTljZmMwMDliNWIzYzBhYjhiM2VkYTkxNGRiMjdiMWRjNjQzYTEgbGVnYWN5LXRydW5rCisxNzk2MiAyOTAwNDUyMDI2Y2NkNWVlMjIyNWRkODdkOGYxZGU4MmJiZjRmOGNlIGxlZ2FjeS10cnVuaworMTc5NjMgZjc2YTFlY2Q2YjU5MTZhZmUwZjU2NTZlNjY4NTI0NTg4ZDFhZjZhOCBsZWdhY3ktdHJ1bmsKKzE3OTY0IDY2NjA5MWYwZDcxNDQ3MWFlZDU1ZDg3N2UzMzg5NTYwNTk2YjRiNzcgbGVnYWN5LXRydW5rCisxNzk2NSBkMmMxN2FkZjJmMGM0NTU2OTUyYmE3NDQwZDkzZTc1ZWNkNWIwODAwIGxlZ2FjeS10cnVuaworMTc5NjYgY2UwNjY3OTkxMzNlYTQ3NTA1NWYxM2UzZGUwN2RlNzYwM2EyZWM4OSBsZWdhY3ktdHJ1bmsKKzE3OTY3IDMwODFkNzAxYmU4NjE1ZjMyYzlhODkxMDI3MGQyZGQxZTFiNDA2MTMgbGVnYWN5LXRydW5rCisxNzk2OCAxNTRiNzFlMTY1NjUwM2E2OWU4YjEzZWE5ZjJkZjVmNzEwNWY2M2NjIGxlZ2FjeS10cnVuaworMTc5NjkgYTgwNTQxMjQ1YjY2MzIwMGQxZTJjOGMxODRiZTg2YTFjYTdlOGJjNiBsZWdhY3ktdHJ1bmsKKzE3OTcwIGU5NmQ2NjRkZTI1NmFjYjlkZWQ4NjA3MTM2YjJiZmJiZDQzZGJmOWEgbGVnYWN5LXRydW5rCisxNzk3MSBjNmQ5YWZhNmU2YTA1YzVlN2IzODRkODJkZDI5NTZlMGM0NjYyYTRhIGxlZ2FjeS10cnVuaworMTc5NzIgZmM2ODZkZTg2MDU5Yjg0NTYwZjE0YTg3YjliYzQ4MmQxZDQwMmU1NyBsZWdhY3ktdHJ1bmsKKzE3OTczIDRlMWU5ZjVjMDc5NTA2OGU0M2QyYWU4ZjJlYWU5ZGYwM2ZjNjM5NzQgbGVnYWN5LXRydW5rCisxNzk3NCAxY2QwMjg1ZTNjZmVkODdjMjE4ODc4ZTZiZDdmZDcyMDY1OWMyN2Q0IGxlZ2FjeS10cnVuaworMTc5NzUgZDE2Yjc0MTNkYzY5NmRmNzRmZjllY2NhNGMyYjJhNzQ3NjNmNzc4MyBsZWdhY3ktdHJ1bmsKKzE3OTc2IDY2ZDI0ODMyODk2NzJkNzVlMmM4ZDNiZGNkODkzNWI4YmQyZDY2MzYgbGVnYWN5LXRydW5rCisxNzk3NyBhMzU4YmE3MDdlNGQzNTFlNTQ1ZDRiNDllYjRjYTVlMmU5YjBmYjU5IGxlZ2FjeS10cnVuaworMTc5NzggMGMwZTkwOWI4ZWQyM2FkNDBkNmI4ZDJhOTJjOWNiZDliNDc4Njc1NSBsZWdhY3ktdHJ1bmsKKzE3OTc5IDdkMGFmNGU4MTNkODVkZWVhYmZhODk5ZDMzYmQ0MTdlNzkzNWUyNTAgbGVnYWN5LXRydW5rCisxNzk4MCBlZjFmNDczYWFlZWJlYjNmMmU2NGNiNDJmODdkZjk2YzU0ODk2YzI0IGxlZ2FjeS10cnVuaworMTc5ODEgMzJiOGM1YTQ4MGFkZTM1Y2RiNTVmYjViMzY5M2ZkMmZhYjhkZDI2ZSBsZWdhY3ktdHJ1bmsKKzE3OTgyIDNhZTlkMzEzYmMzM2UwYjRmYTVmYWU2NTVhNzMyM2IzOGMyNDJjNjYgbGVnYWN5LXRydW5rCisxNzk4MyA2ODAzNDI5MjUwZTliZDA4ZmM3NTBhOTE4MjYzNjNkYjBjYTI1OGEyIGxlZ2FjeS10cnVuaworMTc5ODQgZjc3MTQ1M2MzYWY1ODg2NDg4MmZjMzM5NzNkNWE5ZDBmODVjY2M1YyBsZWdhY3ktdHJ1bmsKKzE3OTg1IGViYTMyM2Q3NDA3ZmExMzZlYjJmMjRkMzYzMDIzMzMwZDE4ZDg3YTEgbGVnYWN5LXRydW5rCisxNzk4NiBjZjI2NjFhNDU5OGViYjI3YzY3ZTlkODI2MTFkYTgyYmMzOTE3NDczIGxlZ2FjeS10cnVuaworMTc5ODcgN2U2ZTQwZTQxYzZlNGE3YzM2NDU0NTEzZTkwNWUyYjVlOTRmYjFiOCBsZWdhY3ktdHJ1bmsKKzE3OTg4IGIzOTE3OTQwZTFmYTFjMWEwNGE2OWYxYjk1MjRhZTBmN2VlZTBlYWEgbGVnYWN5LXRydW5rCisxNzk4OSAzNGE2ZTNlYWQxYzA0ODU1NzBmMjJmYjQxNTgyMzg3MDg1MmE0YjBkIGxlZ2FjeS10cnVuaworMTc5OTAgMDU2ODZmOTdmMzhkMjQ2ZGQzNDVmZWFiYmM4ZTM2NTI1MmQxYzlmZCBsZWdhY3ktdHJ1bmsKKzE3OTkxIGE1YzM0NjkyMThlOWM0NTRjYjVhZTI0ZGI2NmNkNmJiZGNjMjVlOTMgbGVnYWN5LXRydW5rCisxNzk5MiA5YWQwNzY0ZjJlODQxYjE2NTliZTc2NzE3MmY0MDgzZDJmODQwN2JlIGxlZ2FjeS10cnVuaworMTc5OTMgOTEyMDFkZTI1ZjM2ZDY0OTAyODQwN2U0ZGQ1OGJjMDQwMDRjOGFkMCBsZWdhY3ktdHJ1bmsKKzE3OTkzIGUyNzYzMjljY2UwMzZhNWY5ZTlkMzQ1MTI1NmRjYTU5ODRlNTQzZGMgbGVnYWN5LXRydW5rCisxNzk5NSBkYTkwNjdiYzk0OTQyOGY2ZDg4NDhiZDUxNjI0Y2JjZGI5N2VlMmQ5IGxlZ2FjeS10cnVuaworMTc5OTYgNTcxOTJmMGFjMTNhN2Q2ZmRmOTNmNTZhODE2MDI4MDVmNTgzNTc3NyBsZWdhY3ktdHJ1bmsKKzE3OTk3IGRkNDlmMjlkOTg3OTVlMjVkMTM0MjZiYzM3ZTMwMjM0NmI3ZWM2Y2MgbGVnYWN5LXRydW5rCisxNzk5OCBmYjk5NTg5MzNiMjU4YjU4MzZlYTM3Y2E2NjE0NmNlNzMxNzJmOWUzIGxlZ2FjeS10cnVuaworMTc5OTkgNDMzMTg3NDY2OTAxNjlkMmI0OTU0NDI1NTc4Y2UyNWViMzFiYTNiYSBsZWdhY3ktdHJ1bmsKKzE4MDAwIDU2M2RlZTU5OGQzYTlmNDYzZDM4MzY0NDI3ZmQzZGU5ZWE4NDNlY2IgbGVnYWN5LXRydW5rCisxODAwMSA3NGMwMjBhZGQ4NDZlYzRiNjZhMjBjOWI4MjljNjBhYjFlYzNhNDQwIGxlZ2FjeS10cnVuaworMTgwMDIgNmIwMWZjMjJlZjZlZjhlZDNkZmUzOTk4YzkwOTUwYjhlMDhmMWM4NCBsZWdhY3ktdHJ1bmsKKzE4MDAzIGExOWIxZDZhNTljZTFjNjhlNjJhYmIzYzY1YjU1MDhlMGM0NWVjNWEgbGVnYWN5LXRydW5rCisxODAwNCA1Y2YwYTAyYTU3NGIxMTk5OWJjZTNjNzM3OGVhYjVkZTc0ZDk2YzdkIGxlZ2FjeS10cnVuaworMTgwMDUgNWU1YjQzMTE4YzUyZGE2ZmM2YmM5YmVlNDdiMDI0YzUyMzAxZDc1ZCBsZWdhY3ktdHJ1bmsKKzE4MDA2IGEyZmNjNDg3YjlkYTE4NTg3NmZkN2U5Y2UwMzFhZWIxNWI2YmQzOTMgbGVnYWN5LXRydW5rCisxODAwNyBmZGMyYWJkZjQ3NzdlYmQyZjhkOWRkMzNhNmY5ZmM5OGRjZTBlZTdiIGxlZ2FjeS10cnVuaworMTgwMDggNDg2ZjNmZjE0ZDk1YWM5NzgyYTUzY2ViZTE5YjM1ZmVhMmVmMWRmOSBsZWdhY3ktdHJ1bmsKKzE4MDA5IGNhOWY2YThlOTg4NTcxM2JjN2Q4MTk4ZjYwMmFjM2QxMjVmM2Y4YWQgbGVnYWN5LXRydW5rCisxODAxMCBlZDQ5YTY3ODY5ZTljMjBmNGI2YzNlNDk5Y2Y2NjYzYzdkZDBiOWE0IGxlZ2FjeS10cnVuaworMTgwMTEgZTE3ZDhjZDA5Njg5ZjAxYWI3Y2FhYzJkZjZiNDYzZjA4N2Y0ZTYzNSBsZWdhY3ktdHJ1bmsKKzE4MDEyIDE3MzA1OTFkNWQ1ZGE4YTI1M2FiZTNjYzBmNzc5NmQwMDZkYTgwZDggbGVnYWN5LXRydW5rCisxODAxMyA3NGYxNjVkYzBiNWFlN2I1YWJmMjA0MDBhNDJmNTMzY2NhZGQ1NTk2IGxlZ2FjeS10cnVuaworMTgwMTQgYmVjZDhhMTIxNDY0ZjM2YTRhYTlkYmQyN2E2NzRlOGE3N2MzNjc2NCBsZWdhY3ktdHJ1bmsKKzE4MDE1IDQ1OTIzMmE5YjgwNGMwYTBjZjY0OTU3YzkyM2FlOTYxN2I4MjY0NDkgbGVnYWN5LXRydW5rCisxODAxNiA3YjA3ZDYyZDJjNzk2MWQ0NTRmNmRlMDc4NzM0NGMxZjMyMGU0ZmU1IGxlZ2FjeS10cnVuaworMTgwMTcgZTcxOTcxYTQwMmQzMTlhZWZjNGUzY2FiMmVjN2EyNzY0YjkzZTY5ZiBsZWdhY3ktdHJ1bmsKKzE4MDE4IDNjMjEwNjRlODIxNGMyN2RkZWU2MjE2YTI4MDM0MmM1MWIyY2I3NGIgbGVnYWN5LXRydW5rCisxODAxOSAwMDdhOTFkNzc3MDNmZWI2YmMyYTU2NGQyMzAwYTMzYjU2OTRmNjU0IGxlZ2FjeS10cnVuaworMTgwMjAgYjA3NTM1OTgwMzAxNjU0MGNmYjk0Mjc3ODQ4ZWFjMDU1MDFiMDRjNCBsZWdhY3ktdHJ1bmsKKzE4MDIxIGE4MDA2YmJiNjIyNTc3OWMzYTBkN2ViYTgwZmU4ODk3NTBhYzhhMTggbGVnYWN5LXRydW5rCisxODAyMiA4OTMwZWMzYmMwMGE5MWI3MjJhMjdmYzRmY2JkMjg4YTFmY2U3NTA3IGxlZ2FjeS10cnVuaworMTgwMjMgMjU3NzUxOWQ1ZWExMzk3NDZhNmUyOTcwZDA0ZTM3ZjI4ZjA4ZDQzOCBsZWdhY3ktdHJ1bmsKKzE4MDI0IGU2MWU2NGQxYjVlYzNiODFjNzQyMjgzODg4ZmJkYmNiZGRmYzJkMjkgbGVnYWN5LXRydW5rCisxODAyNSBlNTgyZjU3MzQzZjRkNWM4Mzc0M2RlY2I3YmE4MDQxZmQzMmJkYmMyIGxlZ2FjeS10cnVuaworMTgwMjYgMmVkZjM2NmY1NjNjOGRiNjg3NmIyMTNhODAxNDBjOTA5NzgwOGJhNiBsZWdhY3ktdHJ1bmsKKzE4MDI3IGY2MTAyYzVkM2Y5YzJjMzJkOTk5ZmIzOGRmNTVmOTMxMjQ1MTYyNTYgbGVnYWN5LXRydW5rCisxODAyOCAwOWM3YWMxODhjZTIxNzhiODdiMDY1MDRiMGU0ZmU1NWIzYmM0ZGI5IGxlZ2FjeS10cnVuaworMTgwMjkgODVhMDJjYzM3NTkwYTZmNDkwZGQ4OGNiZDk4ODYwNjg5NDY1YjhkZiBsZWdhY3ktdHJ1bmsKKzE4MDMwIGQyZjRkNzQ4YzkyMWViZGIwOTBmMzI3OGRjYTE2Yjg0ZjQ4NWVmOWYgbGVnYWN5LXRydW5rCisxODAzMSA3NDRhYTA2MmY0NzAxYTQxNTQwZGQ0NjgyN2FjZTVjMmFhZTkwYjgwIGxlZ2FjeS10cnVuaworMTgwMzIgM2ViODY4N2M5OGM2ZjdjMmM0Y2M3OTEyOTViNWNjYTdjNWYzN2I1NSBsZWdhY3ktdHJ1bmsKKzE4MDMzIGFiMWY5MGRkNTAyZjhhYTg1OTIwMzdkYjY3NzQzZGNmMmM1ZWQ3NDQgbGVnYWN5LXRydW5rCisxODAzNCBlNzgyM2YwY2EyMWEwNjEyYWEwNTk5ZGNjODUxNjVjM2Q1NjY1NDc5IGxlZ2FjeS10cnVuaworMTgwMzUgNTJkMmQzNmI4YmY3Zjc4NTZlZWM3NjUyMzI2ODg0ZTBkNWMzNGUwZSBsZWdhY3ktdHJ1bmsKKzE4MDM2IDFiNzNiMzUxNGI1ODU1ZDVlZDQ3YjcyMzg1YjIzOTU3NWRlMDJhZGEgbGVnYWN5LXRydW5rCisxODAzNyAwMTVkYTEzZjAwMzhjMTY2ZjBlNDZlYjc0YzE2OWI5ZjYwOTE3Mjg0IGxlZ2FjeS10cnVuaworMTgwMzggNTQyNzM4NThlYWQ5YzYyNTEwNTRlOTU0NzdhYTU0Nzk2N2IzMmI5OSBsZWdhY3ktdHJ1bmsKKzE4MDM5IDJlZDM1ODQ0NmYyZmUzMzkwMjM5MWU4ZjQ4MjM1OWZkMjExZThmZTEgbGVnYWN5LXRydW5rCisxODA0MCBiMzM4N2VlYmE2OGRmZTRjYTk4ZDVmOTJhZDJkNGUyMGYzNDBmNWUyIGxlZ2FjeS10cnVuaworMTgwNDEgNGQyMTg3MjY0Y2ZhN2FkMTEzMDBjZTllZDgyNTMzZDA5MWUwYWMwYyBsZWdhY3ktdHJ1bmsKKzE4MDQyIDllOWVlM2M1YTYwNzhmM2FlZmIxM2E1OWU0Y2FkYmYxNjFhZTkwZjMgbGVnYWN5LXRydW5rCisxODA0MyAxMDBiZWViZGU5ZGZmNTRkNDhiNDUwNTU3MTIxYTIxMWI0N2RhZTJlIGxlZ2FjeS10cnVuaworMTgwNDQgYjI4OTJjYmM2M2RiNzM0NDE4MGNiNTI3MDI1OTJlZDU2Yjc5OTUzZiBsZWdhY3ktdHJ1bmsKKzE4MDQ1IDVhYThjNWFhZmZhZGQ2NDI0NWQ0MDk3Mzk2NzBhNjYxMTZkOTdhMjggbGVnYWN5LXRydW5rCisxODA0NiBmMDQ0YjA2ZTMxN2RhYTI0MDJkMzc5ZjY0ODRjN2YxNDkwZDVhOGYwIGxlZ2FjeS10cnVuaworMTgwNDcgMzE5YzZlMzcxODI1MWM5ODM1MzQzNjExZmQyNzMyODBmNDBmYzEzYiBsZWdhY3ktdHJ1bmsKKzE4MDQ4IDY1NmQ0MzQzODhjOGUyMjgzMDIyYWMxNGQ5NmQ0Y2I1MjJjNDJjNGEgbGVnYWN5LXRydW5rCisxODA0OSBkYjRkODBhNjczODlhMjA2MWQxYTFhM2RlMjMwOGMzNDAwMTBmYzA0IGxlZ2FjeS10cnVuaworMTgwNTAgMWM2M2UyMjRmNjE2NjQwYzY4ZWE0NjU5YzViZDg3ZTg0NGU3YWFiMSBsZWdhY3ktdHJ1bmsKKzE4MDUxIGUzZDgzNjVlYTIzMTUxMjZlODAzZDQ5MmQ3ZjlkOGE3MDFiNTg4OWYgbGVnYWN5LXRydW5rCisxODA1MiBhZjAyYWM1ODAwMjhjOWU1ZDFjMDkyZjIwMzUyZjVjYWM0YTJmYmVjIGxlZ2FjeS10cnVuaworMTgwNTMgMzc0M2E2ZGJjNGE3NzJiNWIwOGJkY2QxMTJiMzgyNzVmODZkNjA5MyBsZWdhY3ktdHJ1bmsKKzE4MDU0IDQ4Y2M3N2I2M2FkNWRmNWRlYzBjM2IwNTk3ODI2OTExMzE2YzRmM2UgbGVnYWN5LXRydW5rCisxODA1NSAyM2JmMzA4NThlZjQ1MzFlZjE0MjYyZjkwNjFlMzhlNjE3YTUzNDNjIGxlZ2FjeS10cnVuaworMTgwNTYgZDQ2OWQxNTcyM2QzNWYwNTJmZmI2NGMwNGNkZmJiNGUyMDRmMmNiMCBsZWdhY3ktdHJ1bmsKKzE4MDU3IDc3ZWE4ZmNlZjI0Y2IzNTViMGJlMWZkNjgyMDgzNWUzZjFiMTg0MzYgbGVnYWN5LXRydW5rCisxODA1OCBjNTBiNzg2ZWJjNDg0YjI0ZmI5MDdiZjIwMWQ4N2E5OWFmNTNiYjQ1IGxlZ2FjeS10cnVuaworMTgwNTkgNGVlYjAyODE3YjVkODBlNDEzYjdhNmVhZGM1YjNlNWNmYmYyN2FlZCBsZWdhY3ktdHJ1bmsKKzE4MDYwIDliN2RkZDljYWUzM2UyNzcxZThkMjcyZTYzNDI1OTg5NjFlYjkzNGYgbGVnYWN5LXRydW5rCisxODA2MSA2NDE3Y2U5MTRkYWU4N2VkZDI4NDkxNDhhZDFmNmI0MjA5OWU0MGI3IGxlZ2FjeS10cnVuaworMTgwNjIgZTBhNTgzNWFmODMzNTBhMDc4NjBhYjdlMWE3OWY5NWY0OWQwOGI3ZCBsZWdhY3ktdHJ1bmsKKzE4MDYzIDA0ZTc2ZTA4ZTEwZmY0MWZlMmFlYzhhNTZiZWFlNmZkYTM1MWRiYWEgbGVnYWN5LXRydW5rCisxODA2NCBjOTRmMWM3NzYxNTM2ZWE3MDYzMTY3MWZjMGNlMzljMWUxMDRkZGY1IGxlZ2FjeS10cnVuaworMTgwNjUgNzAxYTU2MWJkZWZhODE2NDg2NGNhYTkyODJhNGFiMmU1YTg1YmFhZCBsZWdhY3ktdHJ1bmsKKzE4MDY2IDc4Mzk2N2IxNjg3OWE4YTg0YmU1OGIxOTJmZTE2Yjk3YWU5MjJhNTkgbGVnYWN5LXRydW5rCisxODA2NyA5ZjMwNzc1MDZkMWExNmJhNDg3YmM1MTBiMDdmZjAxYTE2ZDhkY2JkIGxlZ2FjeS10cnVuaworMTgwNjggZDJjMjA1YzM2ZDhhNDE4ZjcwZGM5MTFmMDhmOTNiNDQ0YmQzNGI2MyBsZWdhY3ktdHJ1bmsKKzE4MDY5IGU0YzliODA1ZjM5ZmJkNzgzYTA5MjUwYTEwOWRjMTc3YjMzN2QxMzYgbGVnYWN5LXRydW5rCisxODA3MCA1MGE4ODhlYzU3YzEyNzExZmQ1MTFhMjkzY2UwNTM2NTkxMjBjYWJkIGxlZ2FjeS10cnVuaworMTgwNzEgODgyY2VmZTIxZGMzNjgxODVkN2ZmZDc5MDk4NjNjYjA2NzU4MjdlOCBsZWdhY3ktdHJ1bmsKKzE4MDcyIDdkNDUyNDliMTQ3N2Q5Yzc4Yjk1NGZhMzk0MDM1OTZiNDViYzA3ZmIgbGVnYWN5LXRydW5rCisxODA3MyA5NTk4NjUwZjJiYzkwMjMyMGI3ZTkyMGNlYzgyYzYwZmQ0OGQwMzFiIGxlZ2FjeS10cnVuaworMTgwNzQgYTM5NzVkMjgxMWYwMDg5ZjUyZGEyY2UzYzU4NmFhN2U3YjZjYTg4YyBsZWdhY3ktdHJ1bmsKKzE4MDc1IGE4MmU0YzI5NWI5MzAwZDMwOGIyNmQxNGJmNDIwOWJiMWYzMDc4NTggbGVnYWN5LXRydW5rCisxODA3NiA1YjU2NTRjYTc1NTViOThiMGUyYjQxY2Y2NjExMDlkNjAzZTQzY2MyIGxlZ2FjeS10cnVuaworMTgwNzcgOTlmMzhjNzU1YWJlYmE0NTUwMTA5OGY2YTJhYjQwNTY2MzU5MDFlNyBsZWdhY3ktdHJ1bmsKKzE4MDc4IDNlNzAxNmM3OWRhYTBlN2FmY2QzZTQ1MmZkZjJkZjcwMGM1ZTMzYzcgbGVnYWN5LXRydW5rCisxODA3OSBkN2M5M2E3OGM5NDkyOGFmYjljMjhjM2I0NGFiOWYxN2Y4OTJlMDQ1IGxlZ2FjeS10cnVuaworMTgwODAgM2Q5MGUxZDc2MDVmNzEyNzIzYzRiNGQ2YmNlMzBiZWNjNGIyNDBkMiBsZWdhY3ktdHJ1bmsKKzE4MDgxIGU0NzBhOTYxOGNhNzJhYmEzNTg2ZDE0YTM0YTNkMjM0NjE0MjcwZmQgbGVnYWN5LXRydW5rCisxODA4MiA3ZTkyYjdhNTA1N2M1MTBmMWQzYmVlMjc5MmUzNDNkZjAzYWNkN2U0IGxlZ2FjeS10cnVuaworMTgwODMgNDg2YTMxZDhhM2IzNWM1ZjkxZmUxNzI3YzU0M2M4ZmE3NmMwNjNmNSBsZWdhY3ktdHJ1bmsKKzE4MDg0IDQ4N2IzNTAyYTQ1YjMxMGZjZGE3MGFhMDlmZGIyZDY1OGNkNWQxYWQgbGVnYWN5LXRydW5rCisxODA4NSBmNzkyODIwZjNjZDRiZWY1NjA1M2NhZGZlOGU0ZGU1ZDAxMjY0NWFkIGxlZ2FjeS10cnVuaworMTgwODYgZDJiOWNjNDQwYjhkZDQyZTAzMTVmMmI4ZDMyNjFmMzEwYzdhMGIwMSBsZWdhY3ktdHJ1bmsKKzE4MDg3IGJkODhkZjIwZGEyZjU5YWI0ZWRkZDU5MmEzOTUzNzYwMjQwY2E1OTEgbGVnYWN5LXRydW5rCisxODA4OCAxMGIzY2JkYmRmZDlmZDkxOTVmNWY1NDAyM2EyZDQzZjcwMTMyMDk3IGxlZ2FjeS10cnVuaworMTgwODkgMzhjNzk1YWZiM2I4MDUzZWI2YThkMmFjZGY2ZTg3YjY5YjZkMmFkMyBsZWdhY3ktdHJ1bmsKKzE4MDkwIDg2NGYxNzE0YWYyODcxYjMwN2NlNDM3MWY5NmE5YWE1NmMwNGNiZGYgbGVnYWN5LXRydW5rCisxODA5MSAwMzcyMGEyNmNmZTczNjU0N2Y4NjdmNDc4MTM4OGQwMmI3Y2RkZGJlIGxlZ2FjeS10cnVuaworMTgwOTIgOGZlMmE3OTgxZDcwYjMyYTk4ZGJhNjQwYTY0NDIwNjJmMDkwN2VkMSBsZWdhY3ktdHJ1bmsKKzE4MDkzIGM5NGMyYWU3NDZmMWNiM2E2NDJhNWZkMTRhODMwM2MwYTdlYmU1OWQgbGVnYWN5LXRydW5rCisxODA5NCBmMWFkZThhYjE4Njk1NTM3Y2NlYzkwZjdjZTMzYTg2ZDY2NTY5NTU3IGxlZ2FjeS10cnVuaworMTgwOTUgNzViZmJlMzdhYjdhNmMwOTAzNGJmYTdjMGEwNmViNzZjNzQ2ZTk5ZSBsZWdhY3ktdHJ1bmsKKzE4MDk2IDlhZjdmY2UzNjM4NDEzMTczYTAwN2ZjZDM0MjI0MmVlZjE5ZjkwODMgbGVnYWN5LXRydW5rCisxODA5NyAwMjI3YjU5NjFlZWY3NGE4NzgyMzBhNjA4ZDBmMWYyYTk5YTViODBmIGxlZ2FjeS10cnVuaworMTgwOTkgZGE0M2IxNjk4NmI2NzcwMWQ4YjcwNDQ1ODdjNzE1ZGMyYzc5MzY2MyBsZWdhY3ktdHJ1bmsKKzE4MTAwIDY1Nzc1MGMxZDc4MzU0ZDg3ODc3M2RjZjJjMzJkOGQ5MjQ4NjRjNzAgbGVnYWN5LXRydW5rCisxODEwMSAyY2RmYzQ2ZTgwNjhkMGQ4YWQ5ODIzYzQ1YzgxMWY0NmM4NGVmZmFiIGxlZ2FjeS10cnVuaworMTgxMDIgZTllODgyNGUzZDhkZmQ5YTNiZmIyZWQ5ZmQ0N2FjMjRiNjg0NDA2MiBsZWdhY3ktdHJ1bmsKKzE4MTAzIDcxZWEyYmIwMTg4OTU3MmY5Njg3ODY2OGQxMTZkMTc2NDE0OWE5ZDAgbGVnYWN5LXRydW5rCisxODEwNCBlNGVhNDRiMTBhYmJlZjI1YWQxMDdlMGZlMTE2NGI5YzllZTRkNjg0IGxlZ2FjeS10cnVuaworMTgxMDUgNjgzNzEzNTA4MWQ0NzI3ZWVmZGU3NDc1NGJkZjJiMDIwYTYxZDMyNyBsZWdhY3ktdHJ1bmsKKzE4MTA2IGRkMGQxOTk2NzRmODJhNGNmNWUzMWY3MTMxOTNjMGY0ZDJmOTcxODMgbGVnYWN5LXRydW5rCisxODEwNyA4Njg2ZjI4NGZhOGQ3NDkwMTNlY2Y0M2Q5Nzk3NjgwZDAzOWVmNGE4IGxlZ2FjeS10cnVuaworMTgxMDggNzM1ZWQ4NTZkZTYwZTQxOGY2NzU3YWM3M2NiYWU0YmEwYzBhNTVjMiBsZWdhY3ktdHJ1bmsKKzE4MTA5IDJhMDVjMWZiZDg5NDdkZDIzMzAxZjhmNDgwZWVmZWRhNTFkYzU5YjIgbGVnYWN5LXRydW5rCisxODExMCBjYzllYjE4N2I3MzAyY2EzNzcwYjExNmE5YWMyY2Q0YWRkYzg4OTQ1IGxlZ2FjeS10cnVuaworMTgxMTEgOTcyMGMyYzZmNDM1ZDNkNmNkZWIzYjkwMmY0YWIyMDJiMmNkNjU2NyBsZWdhY3ktdHJ1bmsKKzE4MTEyIDBmOWZkM2ZkNzc5OWE4YWNjZjFmNTZiYmFjZWZkMTkwOTMxMTEwYzkgbGVnYWN5LXRydW5rCisxODExMyAwODEzMDIwYjI5Nzc1ZTFjZjJjZmEzNDE4MGYzYWFkZTQ3ZTY3ZTQ2IGxlZ2FjeS10cnVuaworMTgxMTMgMmZhNGUzNTA4M2UwMjM0MmNhMDE0YmY1YmZiYTQ2YWVjYjgxNmMzMSBsZWdhY3ktdHJ1bmsKKzE4MTE1IGJkNGNkNzNjYjBkNmQ1Zjg4Y2VkN2RmNzRkMzBkN2QxNGIyMjZiYjcgbGVnYWN5LXRydW5rCisxODExNiA2MWY4MjMwMDkxNDVjYTEzYThmYjVmNjk4N2ExNjI5Mjk5NjYzM2NjIGxlZ2FjeS10cnVuaworMTgxMTcgMzE0MjY5OGQxNzJjODU3YmI5OTE4YzUxMmYxZWI4ZjA1NjYyMjYwYiBsZWdhY3ktdHJ1bmsKKzE4MTE4IGExODdhZDgyYzMzZjQ3MjkzZjQ0YTRjMzQyMzhkM2Q0NGM2MDRhYzAgbGVnYWN5LXRydW5rCisxODExOSBkMmFhMjY2YWU0MWM4OGViN2VjMGUyMTg5MWZlYTA2YzQ1ZDhiYzA3IGxlZ2FjeS10cnVuaworMTgxMjAgYmM0Zjg5ZWVmYjA0ZDQyZWI3ZTFiMWMyM2Y0YTM2NmU4MDMwMDRkYiBsZWdhY3ktdHJ1bmsKKzE4MTIxIDg3NzgwZGJmOGQxNzRiMWJkZTc1M2FmNTBlODYxNTYxM2U4OGFiM2QgbGVnYWN5LXRydW5rCisxODEyMiAwZDNiYWJhYzQzOThmYmUzOGI1ZjQ3MGFkOWE4OGI0ZjAyYTEwMDRkIGxlZ2FjeS10cnVuaworMTgxMjMgYjUxNjI5OTgwYzg4NmMyODRlYjQzYjVkY2I0NDI2YjkxY2EzMTVjOSBsZWdhY3ktdHJ1bmsKKzE4MTI0IDM4N2YzMWFjMzJlNjQ4YzU0Mzc5N2Y0M2EyZmYyMzkwYmQ4ZmZjMjMgbGVnYWN5LXRydW5rCisxODEyNSBjOTRjMWI2NjBkZGIxNTZhN2VmYjRlZDgxZDAwZDg0ZjhjNDEyNWM1IGxlZ2FjeS10cnVuaworMTgxMjYgZDUwMzM1YWM1NTgwM2MwNDkxMWY0YzkxMzUxYzIyNDM5ZWNkNTFiNSBsZWdhY3ktdHJ1bmsKKzE4MTI3IDA4MzI4MTBjNDYxMjQzMzc4YzUzMDU4MWE1ODQ3Y2I1MGEwMDEzY2QgbGVnYWN5LXRydW5rCisxODEyOCBkNTc0MGUxMmVhOGEyOWE5ZGFhNGFkYWI1ZGFlNTlmMzk3YjNlNWY0IGxlZ2FjeS10cnVuaworMTgxMjkgNzRjNjE1M2FiYmMxMGQwZDdkZWQyNDBmYzQ3ZWIyNWJiODc5MDI2OSBsZWdhY3ktdHJ1bmsKKzE4MTMwIDkyOWM5MmM1MGNiMmJiZWM4MzY3YzA1OGJlMDE5MTI0MDlhZjA1N2UgbGVnYWN5LXRydW5rCisxODEzMSAzZTk2ZmQ0NGI5ZDBmNzhmZDQ5MjU5ODFjNDJhZmQ1Y2NiOGQzODA0IGxlZ2FjeS10cnVuaworMTgxMzIgNjM4MWZhOGQ3ZGYzMzcwNGJjMjk2ZDgwNGViN2M3NmUzMGVjOTdlMiBsZWdhY3ktdHJ1bmsKKzE4MTMzIDY4MTU4ZDY0ZTg3NGU5NTA3NGM4OTE2NzBkZGI0NGMwZDI3ZjNmNDQgbGVnYWN5LXRydW5rCisxODEzNCA4NDdkOTllNGYyNGFkM2UyMDdlOWE2YjhkMGFiZTdlMTk0ZDgwNjAxIGxlZ2FjeS10cnVuaworMTgxMzUgNjVkMjY1ZDg5ZDhmNDI1NWM3MzU3Yjk5OGQyMjBlOWY2YzA3ODJjZCBsZWdhY3ktdHJ1bmsKKzE4MTM2IGJhMzY3N2UxZjgxYjY1ZGM3NGM0MWRlZjk1ZWVkNWQ2MDZiYzhkNjEgbGVnYWN5LXRydW5rCisxODEzNyAxMTY3NmRkYWZmMDE1ZTI4N2EwZTc4MWYyN2I5YjY3MGU4NmEyMGQ5IGxlZ2FjeS10cnVuaworMTgxMzggMjU0MTA2MmVkNGRkOThiYWM5Y2IxZmM3MDk0Y2NmMGIyOTUyMmFkNSBsZWdhY3ktdHJ1bmsKKzE4MTM5IGE1Y2E1NDk2OWEzZmZlNzI4YWY1MzYxNmU3NmRjYjgzMzkxMmE3MzkgbGVnYWN5LXRydW5rCisxODE0MCBhZjJhYTgwN2FjZGU3ZmE0Y2EwODg2NDMwNDIyNDkyMWJhNjE2ZTAxIGxlZ2FjeS10cnVuaworMTgxNDEgYmYyMWU0MTdiZWQyMjM0OTIwNTg1YzMyYjM5OWJiOGU0M2M4NmE1MSBsZWdhY3ktdHJ1bmsKKzE4MTQyIDRjN2M3NzliYWQ4NzliOGRlYjcwZGRkMzVjZTdhMmE0NTQ4ZGMyOGIgbGVnYWN5LXRydW5rCisxODE0MyBiOTQwYTBmYzI5ZTMzOTQ5MzY1MDc3YTBmNWExZTg1NzczMzczYmY0IGxlZ2FjeS10cnVuaworMTgxNDQgOGY0NTkyZjU0OTg4ZGJlZDQ2MGE3MmQ5MzE2NGM2MzRiMjFjM2RkZiBsZWdhY3ktdHJ1bmsKKzE4MTQ1IDEzMmU2OTg5MmFhNWQxNWFlNTA4ODBhZDFjNWFhMTExYmZkOWE0ZTAgbGVnYWN5LXRydW5rCisxODE0NiAzYTdhZmQzZTZjOTc4MTRiNDA0ODQ3ODEzMDMxMDNlNzE1MTE4ZDNkIGxlZ2FjeS10cnVuaworMTgxNDcgMWY0YTlhZGUzMGVjYzE3Y2IxYjc4MzQxZDFlMGIwNWI4ZjM5ZmEzMyBsZWdhY3ktdHJ1bmsKKzE4MTQ4IDI3MmMyOTY1MDgxYzY1MTg2MDM2OGQ3NDFjNWM2ZWZjOTE0YzE5Y2IgbGVnYWN5LXRydW5rCisxODE0OSAyM2IxMTA4ZDZjOGI1ZmNhZDcyODI4MDFiMTI3OGQ0ZDFiZjUxOGExIGxlZ2FjeS10cnVuaworMTgxNTAgMWY5ZDVlYjg0YjBiMjBjMGJiNmU4YWJhNmRiMDc2ZWM4NDYzOTY5MSBsZWdhY3ktdHJ1bmsKKzE4MTUxIDlkZDdlYWI4MzZkN2NmYzljNTljM2VlYTZiOTYwNGE3MGNlNDMyM2QgbGVnYWN5LXRydW5rCisxODE1MiAwOWJmNmQzMDAyNGZiMDg4YTUwOGY2OTAyZWVmNTBlNTAzNGVkNzc2IGxlZ2FjeS10cnVuaworMTgxNTMgODQ3ZGM2MWUzMGY1YzhlODhlOTc2OTViNDQ3YTk0NWEwOWM2OTZkYiBsZWdhY3ktdHJ1bmsKKzE4MTU0IDc1N2ZmODhlMTdhYWRiZGEzZDMxY2Y4OGM2YWY0ZjI5MzBkZmIyZjQgbGVnYWN5LXRydW5rCisxODE1NSBlNmExMDg1NzI1YWNmNDc4YTllODFlYjM3NWU0NzMwNWY4Y2QwY2ZlIGxlZ2FjeS10cnVuaworMTgxNTcgZjIwZGVhZWFmOGI5N2MyMWQ2ZmUwMjk1NGJlZGZiN2ZkMDQ1NjgwMyBsZWdhY3ktdHJ1bmsKKzE4MTU4IDg1YTUwOWZhY2NjNzk2ZjMwMmRmZjk2NGRiZmEyOWRiZDNiNTU1MjggbGVnYWN5LXRydW5rCisxODE1OSA2OGJjZTVkODNmN2I5M2E3MWVlMmQ0YTdlM2Q5Y2Q4N2Y2MmE2NTg4IGxlZ2FjeS10cnVuaworMTgxNjAgMGRhNGNjYzdlOGNmMzZlNmZiMmJmNWVjZWJmYjhkNWEzODY1YTNiNSBsZWdhY3ktdHJ1bmsKKzE4MTYxIDJhOWQyNzY1NjI1ZTVhNzc1ZGQ1YmRhNjBkNDM1NTRhNzY3Y2QyMjcgbGVnYWN5LXRydW5rCisxODE2MiBiMjExMDI2Y2VmODRjYTgwM2Q4NmY5ZGFhMmI5NjM2ODBlNTYyYWM4IGxlZ2FjeS10cnVuaworMTgxNjMgMDgyMDk5NGUyZDVlODc2ZjFlMDliZjJjNDc1ZDg3N2RjMWFjMzczYyBsZWdhY3ktdHJ1bmsKKzE4MTY0IGE2ZjNlZjEwODE1ZWNiOGRjMTBkOGQ3YjljYTA5NGFhZGRjYTBmYmMgbGVnYWN5LXRydW5rCisxODE2NSAwN2YyNDI2MWM2ZTZlYmUzZWZjZTQ0OGNlNDk0NmM1MTZmN2ZiMjZhIGxlZ2FjeS10cnVuaworMTgxNjYgYTk5OWQwNThmYWI1NTgxNTgzOGMwMDA2MjM1Yjk4Nzg4OWE0N2FlOCBsZWdhY3ktdHJ1bmsKKzE4MTY3IGY4NzIxZTg0OTQyNDZjYmE0MTgzMDE5MmVkYjdhMjg0N2VjZWJjODkgbGVnYWN5LXRydW5rCisxODE2OCA4NDdhZTQwMDc0ZDRlMDA3MzRiMzBhMGQ0Zjc2YmUyNWFiYTY0OTQ3IGxlZ2FjeS10cnVuaworMTgxNjkgMDc1OGNjYjMzNjNjZmQ2NGU5Zjc2YzQ4ODAxMWNlZDZlNWNjYjg2ZSBsZWdhY3ktdHJ1bmsKKzE4MTcwIDVkMmEyMTg1YzY1MWE0MzM5YmE0ZWE4MTY3ZDYwYTY0YmY1NjBjNjAgbGVnYWN5LXRydW5rCisxODE3MSAzMzMzN2U1YTQzMDBjOThkYWExNTlhY2Q4YzBmMTU4Zjc1MjVlYzM5IGxlZ2FjeS10cnVuaworMTgxNzIgODZkMDY5NDE0MDk5ZmU5ODM2MzU0MjFmOWU1Yjg3MTMyYWIwNzEzZSBsZWdhY3ktdHJ1bmsKKzE4MTczIDQ5NDY4YzAwN2MwY2Q1YWYyOWMzOTcxZWZmNzQ5NjRjNTQxNWIzYjcgbGVnYWN5LXRydW5rCisxODE3NCA4N2I1ZTQ4MDc2MmY4NmIxNzk3MGM1YjNjYTkwMWJhNjQ2ODE3MDE5IGxlZ2FjeS10cnVuaworMTgxNzUgYjQ5ZjUyMmJmODkzZWE1MmFiMDU5OTY4YWY2MjE1ZGFlYWQ1MGY0ZiBsZWdhY3ktdHJ1bmsKKzE4MTc2IDhlODY1ZjVlY2Y3ODQxZmQ0MTkxMmFiMDRlMzBiZDEzZjdjODFmNGUgbGVnYWN5LXRydW5rCisxODE3NyAxMzk3NWFlYzUxNTIxNTYwMTczMzhmYWZmMWUyOTZlM2Y4YjNjZGNjIGxlZ2FjeS10cnVuaworMTgxNzggOGFhOTQ3ZTFlZWU4MmEyZWYyZTJjZjYwZDAwMTFjMDQzOGFmY2JhNSBsZWdhY3ktdHJ1bmsKKzE4MTc5IDA5ZWM4ODJjZGU2MTQ0MjBiOTU1MWEzOGJjMTk3YjBkYTc2YWI2ZGMgbGVnYWN5LXRydW5rCisxODE4MCAzYmQxM2EyZmM4MzgyNDg0ZTAwMmM1MmU3M2NlMWI1YTVhMjM0MjkyIGxlZ2FjeS10cnVuaworMTgxODEgMTFlM2E2ZTE2YTlmMjI1ZmE2MmE4ODE0ZGVjMDRmZTRjMDNlMDZkOCBsZWdhY3ktdHJ1bmsKKzE4MTgyIGQxN2JhMTQxNDgwYWU3YTYzYjc3ODI3MGFjZTQ2ZmUxZDRmOWU1OWQgbGVnYWN5LXRydW5rCisxODE4MyBmZDE3MjE3ZDViYTg2OGFmMGZlYTM0N2M4YThjY2NhOWZiM2M4MGYwIGxlZ2FjeS10cnVuaworMTgxODQgZDhhY2EzYzg5MGY3YTRmYzM1Mjg1NmIyYzFlZTQ4YjU2MjM1MDcyOCBsZWdhY3ktdHJ1bmsKKzE4MTg1IDY1NTk0ZmViNTUyNzU3ZTc2ZWFkOTY3MGU1M2QwYmM0M2ViZjY3MjkgbGVnYWN5LXRydW5rCisxODE4NiBlNWQ0YzQyNGM0NGY5MzZiNzY0ZjhhNTBhM2ZjYWRjZjgzMzIzZGQ3IGxlZ2FjeS10cnVuaworMTgxODcgYzE4NDZkMzMxZGU5ZDFkMzk3NTJkNWU1MTEzMDFmM2JmZWI3OTI0NyBsZWdhY3ktdHJ1bmsKKzE4MTg4IDBkNjNjMGNhN2FlNDIyMzk0NjUzZWMxYjE0NzMzNGVhMDRmNzNkOTQgbGVnYWN5LXRydW5rCisxODE4OSA1ZDU4NmQ0NWNiNWE1MjRhZDhhMDNkODE4OTg1MjcxZTc3OGU5NGY5IGxlZ2FjeS10cnVuaworMTgxOTAgODE4OTA0YTk5Y2EzNzMxN2UxYzIzN2IxN2ViZjhiN2I3MDhlYTE2NSBsZWdhY3ktdHJ1bmsKKzE4MTkxIDc4OGI1MjNkNDgyN2IyNDY5NDZjMDUzYzU1Zjg0OGI2MDRjZjkyZWYgbGVnYWN5LXRydW5rCisxODE5MiAxMmFlYzMzODFjOTQ2YmM3YjE4ODcwZjIzNWQwYWY5YWQwMjc5NzZkIGxlZ2FjeS10cnVuaworMTgxOTMgZDUxNTdjOGJiMTFhNGRkYTEyYzBjN2YxY2ZkOTJiODgzNDM4YjI1ZSBsZWdhY3ktdHJ1bmsKKzE4MTk0IDEwMGM1MzNkOWEzZTYxNTY2ZDNjNTFlYTcwNGJiNmM0MWI4NzdiYjIgbGVnYWN5LXRydW5rCisxODE5NSBlYzc5ODAwZjRjMjc3MDI1ZjAwN2NhZDMzY2Q1YmVhN2UwNDY0NWZhIGxlZ2FjeS10cnVuaworMTgxOTYgYmJjOTkxYWI2ZDMyMjFhNmY1M2Q1MmM1ZWY1MjIxODg2ZmVkZjg4NCBsZWdhY3ktdHJ1bmsKKzE4MTk3IGE4MWY5MjAyODAzZGJkMmU1NTE2MGExNDk1NTk1N2UzMjA0ZWQxYTUgbGVnYWN5LXRydW5rCisxODE5OCBjYTFhZTIxYTMwMzliMzQxZDNlNjY1NWY4NDk2ZGRiOTM3MGMwN2I5IGxlZ2FjeS10cnVuaworMTgxOTkgYzJkNzQ1MWI0MmY2NmM1MjhiNTAzMjZmZGFhNGZlMWMyN2YwMGFiZSBsZWdhY3ktdHJ1bmsKKzE4MjAwIGQ5OWEwZjZjZmNlMjBjOGFlOTk2MjY2NmU2Y2UzOTU1ZDBhMTYxMjkgbGVnYWN5LXRydW5rCisxODIwMSBjMmQxMDI3NGEyMTQ4OTJmNTNmNzIzZTIxNmNiMmI4ZDI5Mzc3OWVkIGxlZ2FjeS10cnVuaworMTgyMDIgY2IxMWZhNWIxMWY0MjNkZmI1MzM4OWFkNGQyMjMxNTk5MGVlNzU1ZiBsZWdhY3ktdHJ1bmsKKzE4MjAzIGFjZjJiMTllNDM0NDMyMzE0YWI2NzAyMTNiNzcyY2RlZDNiODFmODQgbGVnYWN5LXRydW5rCisxODIwNCBlNTlmNTM4YmI4MjkzYWYyODg1MTFkNTkwZWM0NjRiZWZkNjEzMzFkIGxlZ2FjeS10cnVuaworMTgyMDUgMDNkYzc2MWQyY2M0OWU4ODQ4NTZhZDIxMTVhZTY1NTM2ZTc3ZDZjNyBsZWdhY3ktdHJ1bmsKKzE4MjA2IDU2M2RjZmVjMmFlOWU2YzNhZTE5ZmU1YmM3Yzk3NWI5ODU5MWNmYTIgbGVnYWN5LXRydW5rCisxODIwNyAzMDQ4NzFkNmU4NjYyNDQ2Nzg0NzdiZTE5NzM5MjQxYmIzMmQzN2NkIGxlZ2FjeS10cnVuaworMTgyMDggZDRhNDYzMjZmYWY0MzY5NGVhNjczOWVmMjBlNzYwNzM1NDZkYTNmNyBsZWdhY3ktdHJ1bmsKKzE4MjA5IDBjMTk2NzJkNDdiYjFlMTcxMWNkNGJiMjkxMGQ2NzM5ZTUwYTNiMWMgbGVnYWN5LXRydW5rCisxODIxMCBiM2RlYmY2NDdiNTNlYTgzMTJiYjg2MGI3NTI1ODEwMzhiNDM1Yjk2IGxlZ2FjeS10cnVuaworMTgyMTEgYTYyMjRkYTdiNGU0MzVjYmZmMmUxN2E5NGUxYjU4NTg1OTFmOGQ2OSBsZWdhY3ktdHJ1bmsKKzE4MjEyIDNlNTRjZWZjNThjNjAxZThmMjBlMjlkOTc2N2FlOTQwMjNkOGIyZTMgbGVnYWN5LXRydW5rCisxODIxMyBmNDgwZDUyYzA3NjBhZGIxNDkyZTJjMjM1ZGYyNjZhOTZmNWY3NThiIGxlZ2FjeS10cnVuaworMTgyMTQgN2JlOWVkYzRkNWRiMTFiMDI2ZGM3Y2E0OGQ5MjYxZDllYmJhMjA0YSBsZWdhY3ktdHJ1bmsKKzE4MjE1IDJhMzY5NmQzMjcyMWU3MDA5ZDI5Zjg3YzFkMDUxMGYyNmYwNzFjNDggbGVnYWN5LXRydW5rCisxODIxNiA2ZTcwYmFhNDg3ZWQ1MjM0ZDRiM2ZiZDY1ZmJkMjRlYWJlMDdhMmU5IGxlZ2FjeS10cnVuaworMTgyMTcgZWUyNzFjMjBiMDVmM2IyNDlhMGMyMjdlYmUwYzZkZjdkZmRiOGZiZiBsZWdhY3ktdHJ1bmsKKzE4MjE4IGFiMzQzOGNmMWYzZTZiMzZhOTkwY2I4YTI1YWIxMmUyYzk1YmI2MzIgbGVnYWN5LXRydW5rCisxODIxOSAxMmI5MmEzNTY0MWJlMmVlY2JhNjhlZmVhY2FkMGJlZmU0MmQ4MzkxIGxlZ2FjeS10cnVuaworMTgyMjAgNzRlMWQ3OTUyMGZkNGNkZWNjZWFmYWFjZGQzZmExYWU4YmM3YzNjOSBsZWdhY3ktdHJ1bmsKKzE4MjIxIGEzYWYxNDVkMjUzMWUwYzM2NDI3ZmM1MTM3NzRmMDNhM2UzNDU5MjUgbGVnYWN5LXRydW5rCisxODIyMiA5YTE3Y2RjZDMzMjAzNThkYzE2NTMzZDQ2ODQ3MmExYTFiOGJkNDY1IGxlZ2FjeS10cnVuaworMTgyMjMgNDdkOWZiZTY1MzdjODdjZDZkYjkzYzJiYzY3NjdhZjlkNmE2YzIwMiBsZWdhY3ktdHJ1bmsKKzE4MjI0IDA5OTUyZDZlZDM3MjU5ZjE2ZDU2MTY1MmIyMDA1MWI4NTZjNGFjODggbGVnYWN5LXRydW5rCisxODIyNSAxZTRkZTYwMTA1MWMxNjI0MTE4ZGVhMzM2NDM5MWU1NzQ3OGYyOTk1IGxlZ2FjeS10cnVuaworMTgyMjYgM2M2MDgzMjQ3Y2U3NTVjOTYwMDI3NTJlYTljNTkzZTc3NDVmNjQ5OCBsZWdhY3ktdHJ1bmsKKzE4MjI3IDgyNzVkODY0M2U3OTg5MTM0ZWRiMDQ3YTUzYTIzMWI0OTA5ODllZmEgbGVnYWN5LXRydW5rCisxODIyOCA5MDBmMjY2YzVkOGUyYzE5MjcyNDZmNzc0ZDZhYjkyODA0YzQ1MTM5IGxlZ2FjeS10cnVuaworMTgyMjkgM2FiY2I2OTY2NjE3NTkyNjRjYWI2YTU2Mjg2OWVlOGEwZTM5ZjMxMCBsZWdhY3ktdHJ1bmsKKzE4MjMwIDJlMWFiMGM5NDFjMGVjYzI3YWRlYTA5MzNjM2FmMWY3OTkwMzA1NTggbGVnYWN5LXRydW5rCisxODIzMSBjN2Y1ZGQyYmRjN2Q2OWY1M2U5ZWY3OWIwOThjMmU2ZmZjNGY0NTE0IGxlZ2FjeS10cnVuaworMTgyMzIgZjYyMzM5MzhmZjg5YjBlNjQ4ZjZmMzEwMjBlOTgxZTVhZDY5N2M0NiBsZWdhY3ktdHJ1bmsKKzE4MjMzIDAxOTIyYTBmNmY5MmIyZTNmZWIzZjhjODllYTk5ZTIxOTkyNWZjODcgbGVnYWN5LXRydW5rCisxODIzNCBhODI2YTQ2YmFlNTRhYzkwZjBmYTllZDAxZmQyNjUyMGRiYWNlZGQxIGxlZ2FjeS10cnVuaworMTgyMzUgY2VlOTZiMzkxZmZjMjYwNjc1ZWI1Njk4MTJhZDIxNmQ2ZTYxOGJjNCBsZWdhY3ktdHJ1bmsKKzE4MjM2IDQ5M2NhOWU0MjYwZTUyYTIzN2Y0MGRkMzQ3NjViY2E0Yzg4MThhOGQgbGVnYWN5LXRydW5rCisxODIzNyA4M2NkZDQ1NDg1YTU3M2EyYWU1YmY4NzI0YjcxNTE4ZTk2ZjYxNTBiIGxlZ2FjeS10cnVuaworMTgyMzggOWIxYmUxZDg0ODEwNDY3Mzk3NDY4MGFjZmM0YjQ4ZjczMDhjNTcxOSBsZWdhY3ktdHJ1bmsKKzE4MjM5IDdhODJmODQyOTBmN2JiZDMwNDg4YTE1NWE4NmIzOWQyYjgzMWYyZDcgbGVnYWN5LXRydW5rCisxODI0MCBiYjAwNmFkMDBkOWVhYzZjZjk1NzgzN2ExMmQzYmE4M2ZiZjRmODIyIGxlZ2FjeS10cnVuaworMTgyNDEgNTJjMjdiNzExNjg2OTAwNzI0OWI2M2YxNTU1YzJhNGQwNjJlMjk2MyBsZWdhY3ktdHJ1bmsKKzE4MjQyIGMxMDRmMDBjOTkwOWViMTg2MDVkODc4MzkwMjgzY2E5ODdkMTViZmEgbGVnYWN5LXRydW5rCisxODI0MyBlZWI3YzhhNWI3OWY2NDNjMmRiNzdiNDcwOWRiN2M2OTQzMzUzYWZhIGxlZ2FjeS10cnVuaworMTgyNDQgM2NiMTJlMGU3YWNkMTAyZGMzOGI2Y2Y0ZTViNGFiMzAxN2U0NTg2OCBsZWdhY3ktdHJ1bmsKKzE4MjQ1IDIyZGJjZmZjNTRlZjEwZjg4MDNjZWNhNGNhZGQ1ZDEyNDgwYWEyMjEgbGVnYWN5LXRydW5rCisxODI0NiAxNmMxMmQxNjk4ZjZhZDYwZDFkNjlkMmJkNmM1MTFlMmE0YzhhNjI3IGxlZ2FjeS10cnVuaworMTgyNDcgYjM0NjllYjc4YmM2NjgxMTMzZGEyNWRkZTUwYmE3MzI3MGMyNTZhNSBsZWdhY3ktdHJ1bmsKKzE4MjQ5IGYyOTAxYjZhYzVlZDk0NjhjNTYyYzkwNGYyODMyODFiYzA4MTE2MWUgbGVnYWN5LXRydW5rCisxODI1MCA4N2E1YmFlMWI5NDRhOTk5MzFmN2I1YzFiNzc3MmRiOTZiMGUwZGIxIGxlZ2FjeS10cnVuaworMTgyNTEgZjYyZTNlNzg3MWJlOTIzOTJjYjkzZWQyMTRhNjAyMWZlM2RkMTE5YiBsZWdhY3ktdHJ1bmsKKzE4MjUyIDUxOTJiZmQ3YThiYmQ1OTAxNzkzMjRlMDJkYzY5YjdmZTljZjViYzcgbGVnYWN5LXRydW5rCisxODI1MyBmYWU1YjFlNDE0OTFkNjM2YTk0ZGY1MmFjNGNkZmM4MDc2YjYxMWQxIGxlZ2FjeS10cnVuaworMTgyNTQgODZmMDZjMTUzZGRhNGEzYTM0MzZiNzk3MzIxMDFlMjFmYTk1YTVhNiBsZWdhY3ktdHJ1bmsKKzE4MjU1IDk2YzM5NGE0M2I1YmFmYzY3MWViYjA0MGYzZTkxMjAzZDBkM2VlYjUgbGVnYWN5LXRydW5rCisxODI1NiBkMjY1YmY0YWRhN2M5MjEwZjU2ZGYzZDk1Mjk4MzViNzM1OGMxY2Q5IGxlZ2FjeS10cnVuaworMTgyNTcgYjcxNDU5YWVkYTk1NjhkZTc5Y2EzOGI0NGU5ZWZkNjY3M2FjMzFjMiBsZWdhY3ktdHJ1bmsKKzE4MjU4IDVkNWM1MTMwNGY3YzVhYThjNzA1MDI2OTI0ZGRjYjEzYTY5NTA1ZWYgbGVnYWN5LXRydW5rCisxODI1OSAzYWI3ZmFhZTgwM2FmMjRjM2M2NzBjZTAxOGE2NmViNmMyNzgyMTAyIGxlZ2FjeS10cnVuaworMTgyNjAgYWExZWMyNzBmMmQzOGI4NGUwMmMxN2E5ZTZjNDhiOTk3MmVkYmZjMyBsZWdhY3ktdHJ1bmsKKzE4MjYxIDhmODIzMTZmNjlkNDA1MWZiOTgxYmRlZWY3Nzg5MWI3ODI0OWU3ODYgbGVnYWN5LXRydW5rCisxODI2MiBjNDVjNTA4MGM4NDQ4MTBmMmFkMzFjOTE2ZGUzYThjNTczZDU3MDMyIGxlZ2FjeS10cnVuaworMTgyNjMgZmRlZDVjOWVjYzliYmY0YTBkOGQ0M2ZjYjBlMzhiZDUxMGFlOTM2OSBsZWdhY3ktdHJ1bmsKKzE4MjY0IDViNGFiY2VmZjUzZDRkMzk1YWJjMjFhYjc5NzQ3ZWMxYzJkNGQwOTEgbGVnYWN5LXRydW5rCisxODI2NSA5YTY4OTRmOGUxYTA5NzM1ZDk5M2YyNDI5ODA4ZmY2ZTFkZWJmMzA4IGxlZ2FjeS10cnVuaworMTgyNjYgYWYxZTllNjRlZDlkMjQxODkwZGVhNjQ1ZDczYzBmYzI1MDlkYmU5NiBsZWdhY3ktdHJ1bmsKKzE4MjY3IDc3MTcxMzE4ZTMyMTI4NzI5ODQyZTY3MWFkMjY0OThhZjNhYWVhMDUgbGVnYWN5LXRydW5rCisxODI2OCAzNzUyMjljM2FjMGQ5OWVhY2FjOWJlNDFiOTY3ODRmZjQwZTAxMmJmIGxlZ2FjeS10cnVuaworMTgyNjkgZGRkOTAzZmI2YTcxMDgwMzdjZDQ5ODIzOWQ5MGExZjBiZTBiNzA3ZCBsZWdhY3ktdHJ1bmsKKzE4MjcwIDk5Y2E0MTljYTU4YmJiN2UxM2RlMDlkYjEwZmQxODcxY2YyMzRiMzUgbGVnYWN5LXRydW5rCisxODI3MSBiNjQ4Y2IwZDE5ODhmMTdmNDQ1OTg0YjEwMWFkNTUwNjA2NzFmNWEzIGxlZ2FjeS10cnVuaworMTgyNzIgNTZlOTdlNzI3NTY5YzNhMjYzMTA4N2U3NzM4MWU2ZTI0OTJjZGMxYiBsZWdhY3ktdHJ1bmsKKzE4MjczIDg3NmNmN2IzZDNkZmIxYjViOWYxMjRkNzlhZDYxOWRmOTAwMTMwZTkgbGVnYWN5LXRydW5rCisxODI3NCA0YWU0OTI5YjEyZmZlMWQ4NzMxNmU3ZjgwMjdmMGQ4NWQzY2VhYzhjIGxlZ2FjeS10cnVuaworMTgyNzUgODZmNGUxZWY4MWNhYWMwNTViOGRjNjIwMmEyYTdjNzM5MDVmNDgyMyBsZWdhY3ktdHJ1bmsKKzE4Mjc2IDBmMDBiNmM3YjliOTVlMTM2NGQwYjI2NjFiMTgxZjM0NjhlNGUzYzQgbGVnYWN5LXRydW5rCisxODI3NyBjOGQ0ZTZmMWI1ZmU5NzVjMjc2ZjE5NWZhODE0ZDhiMDZiZjhhZjQ0IGxlZ2FjeS10cnVuaworMTgyNzggNmIyNTI0ZTljNjcyZTgwNWQ2MGQ2NTVlODE2MzA4Y2UyZTllNjM0YyBsZWdhY3ktdHJ1bmsKKzE4Mjc5IDA2NDY1ZWQ4MTgyNjMwNWE4ODdkYWEyMTg2ODlmYWQ1ZGEzNDZkN2MgbGVnYWN5LXRydW5rCisxODI4MCBiZDQxZTYyNzNlZDliMzE0NjY5Yzc4MmEzOTk1YzBmNDM5NWNiYWY1IGxlZ2FjeS10cnVuaworMTgyODEgMjdlNGY1NjAxYWE1ODljMjBkZjc2MjhmZjEyZmE1MmRiY2M2YzI0OSBsZWdhY3ktdHJ1bmsKKzE4MjgyIDQ5MTg1MTdlZDZiNGNiNGYwYjNmYWY4MTQ1OWJiNjZlMDdkMGQ5ODUgbGVnYWN5LXRydW5rCisxODI4MyAzOWFiODI3ZTcyYmQ2ZTc3YmRlM2Q5MzQyYTlmNWJjNThjZWIwZmNjIGxlZ2FjeS10cnVuaworMTgyODQgN2ViZGZlNDI1YzgxZWI2MjM2NzYyYjgzN2QyNDZkZGI1OWFiNjBjMyBsZWdhY3ktdHJ1bmsKKzE4Mjg1IDk3ZWEwYjQ5NDIyZmZmMmE4NGFiOWI5ZjJiODQxZWZkNDUyYjY3MmMgbGVnYWN5LXRydW5rCisxODI4NiBiZTMzMDc5MzYwYzY2OTRhY2QwNTcxNzllZGFhZjExN2M4NzgxZGNiIGxlZ2FjeS10cnVuaworMTgyODcgYTkzNTEwNTE5MjNlMGIwNDUxNWEyMzg5NGJjMDMxY2I4OGI1YTM3YiBsZWdhY3ktdHJ1bmsKKzE4Mjg4IGMwZjFlYmQzMjA3MjM5MDA4MzUwNjFmNTUwMTNjOGIwNGRlZDk5NDIgbGVnYWN5LXRydW5rCisxODI4OSBjODMzZGNkYjNhMTU1NDdhOWJkOTExZjY5MzJlNjNjZDkwMzdhNjY5IGxlZ2FjeS10cnVuaworMTgyOTAgNzhhN2Y4YTY0Zjg1YTc0ODE3YjU5YmFmN2U3ZDEzYjUwNWE0ZTAwZSBsZWdhY3ktdHJ1bmsKKzE4MjkxIGQ1YTU0MjhlOTY1YzRkMjUwYmI0NWMxNDVkODU0MWIzZTdlNTA0NDAgbGVnYWN5LXRydW5rCisxODI5MiA4NDk2OTg1NTBiMzJhNjhiOTVmNWQxMzYzNzlmYWYzYjNmMTdlMzE4IGxlZ2FjeS10cnVuaworMTgyOTMgMjA0OWQ1NzBjYTVhN2IwZTQzY2ExNTU3MWQwNTE3N2E2NDViNGIzOSBsZWdhY3ktdHJ1bmsKKzE4Mjk0IGFjNmZiYTBlY2MyOTAyNDI4OGZiZjdhNjhiODNiNGIxZDI1MGU2YzkgbGVnYWN5LXRydW5rCisxODI5NSA1M2M5ZDE1YWQ5OGVkNjkzNGYxMTE0OGIyNDRhZTJhZTlhODI3ODk5IGxlZ2FjeS10cnVuaworMTgyOTYgZmIxMDkzNzA2MGNjYmMzODhkOGRkNjM3YmNlZTJkZjg1N2Y1Mzc4YyBsZWdhY3ktdHJ1bmsKKzE4Mjk3IDRlODU3N2ZiOTQwN2ZmNmU0ZTQwMzE4OWIzMGQ3NTdmM2E4ZTZjOGQgbGVnYWN5LXRydW5rCisxODI5OCBkNWYwNjk2YzM3ZTgxYmFiMmY5MDdiZjljNGY5YzIwYjc2YWQ3YzhjIGxlZ2FjeS10cnVuaworMTgyOTkgNDMzNDU4NjUxZWI0MDI3OTU0ZmI3MzI1YzAzNjljMGRiN2M0MzlhYSBsZWdhY3ktdHJ1bmsKKzE4MzAwIDMyOGZhYzFjYTIxMGZjYjYwMGIzNWJmYTY0MjU2NjRlM2VjZTJmYWIgbGVnYWN5LXRydW5rCisxODMwMSBlZjQ2NmExOWUzYmM2YTI1NmQwMzQzODA5NGRlNzQxZTViNjU2ZjgwIGxlZ2FjeS10cnVuaworMTgzMDIgNGFjNTU1YTg3NmEyM2Y1MDBmNzY0Zjg2NDE3NTM2NGQ2YTc4ZmFiMiBsZWdhY3ktdHJ1bmsKKzE4MzAzIGI4NTVjODhjNmFmNmE0MTZkMjgxMjUxNWJlNTZjMzc4MDc5MDE5NjcgbGVnYWN5LXRydW5rCisxODMwNCA2OGRlOTE4NWI0MWUyYTMxY2UyM2NhNmUzYjhjYzRiNjQ4ZjJjMDU4IGxlZ2FjeS10cnVuaworMTgzMDUgN2U1MTRmMWZlMzFmY2Q0ZmFmYzYwN2JmMGY4MDFlYzQ2ZGVhMzVjMiBsZWdhY3ktdHJ1bmsKKzE4MzA2IGRjZDJiZWJjMTgwZWY0M2I1ZTBhNjU0ZjkwNmVlZTkzZWU3NTkxNGIgbGVnYWN5LXRydW5rCisxODMwNyBmODEzZWRlMTM0YmY2OGQ0NWM3MmNjMDMwYjA0YTc2MDJhNjgyYjZmIGxlZ2FjeS10cnVuaworMTgzMDggZjgyM2I5YWEwYzAzNjE1MTQ5ODQ2Yjc1Mjk1NmE5NDNjZThkMTkyOCBsZWdhY3ktdHJ1bmsKKzE4MzA5IDMxZjcwY2EwNmM2OGY5NGE3NGY0YTRkNmQ3NzY0ODk1ZDI2NzIxYjAgbGVnYWN5LXRydW5rCisxODMxMCA5YWI3YTU5N2VlZmU5MTQyOWVkZDA4ODdiM2MyMmYzZDg3NzU4NGUyIGxlZ2FjeS10cnVuaworMTgzMTEgYWU0OTAwNmIyZDhmYWE2YThiODA4MDViYTM1Y2I3NDJlMDc3ZDZlNyBsZWdhY3ktdHJ1bmsKKzE4MzEyIGRiNmQ5YmI3ZWM5NDUzYjc3NGI5ODhmNDgxZDQzOTBiOGE5NWU3MzggbGVnYWN5LXRydW5rCisxODMxMyBmMmMxNzZkODQ2YTRhNWI5MGNjMWM3YmIyOTc4NDZiOTQxOWNjZjc4IGxlZ2FjeS10cnVuaworMTgzMTQgNzcyMWZiNTA5NDYyMzFkOWY4NjNlMjNjYzg3NmZlMzg2MTc4OWZmZiBsZWdhY3ktdHJ1bmsKKzE4MzE1IGNlNzc3MzhiODFhY2JmNmJkZmY0OTE4MTVkODNjZGE4Y2Y0MjlmOWIgbGVnYWN5LXRydW5rCisxODMxNiBkMDE0NmQxMjg4OTdlNzM1NDY2MWQ5MTQ4ODI5NjhjMGQ3MWZlMTRhIGxlZ2FjeS10cnVuaworMTgzMTcgNTk3MDg5ZGQyNjA5YTVlYTJlMWVkNTdhNTY1MzljOWYxZjFiMzI5MSBsZWdhY3ktdHJ1bmsKKzE4MzE4IGFmMzk3ZjdkYmJkNWViNTA3NTdlOWU1YjU2Njg4ZjRhNGEzOGFiNGIgbGVnYWN5LXRydW5rCisxODMxOSA1ZDc1OGNmNTExMWQ3ZDhjZjg0MDEwZjE0OTFhNDcyNzc2NmU5YzM2IGxlZ2FjeS10cnVuaworMTgzMjAgYTc5ZDM2MjRmODQ1NGE2ZDQyODIxOGI4Y2U0NGU3ZWUzMjlmZjNhMSBsZWdhY3ktdHJ1bmsKKzE4MzIxIGQzOTdmNjY3NzVlOGJjNDFjYTYzYzU1MDY1MTM2YzY5ODcwOGI4NWIgbGVnYWN5LXRydW5rCisxODMyMiA5Zjc3NWUyNDliYTE4MDg0MTk2YjU2MjE5YTdlNGM1NDU5YmUxNDlmIGxlZ2FjeS10cnVuaworMTgzMjMgYmJlOGE2NGUyMTllNThmNWZiNTI5ODQ5ZDVhMWNlNjAyODhmY2QzOCBsZWdhY3ktdHJ1bmsKKzE4MzI0IGFhYTkxZWQzZmNmZDI5ZDU5NDAzMmQxM2M3OGMyNTE4MTY3NmQ4ODcgbGVnYWN5LXRydW5rCisxODMyNSBjN2YyMjVhZTMxNjA1YjIwMTM1MmY1ZjNlYWIxNWU0OTgwY2JhN2UyIGxlZ2FjeS10cnVuaworMTgzMjYgMGI4NGIzMWFhOTc1MTg5N2ZiNGY4NjU3M2EyYmZhZjdmZTk3YzZkOCBsZWdhY3ktdHJ1bmsKKzE4MzI3IDk3MzFiYmI1MmZiNGFjNDliNmUzZTVjN2I2OWI4NDc0NTE0ZjQzMjIgbGVnYWN5LXRydW5rCisxODMyOCBkNzg2NDM0NWIxYzhhOGM0ZTdhYjkyYjU5MmYwZDNjZGYzMWUwMjg5IGxlZ2FjeS10cnVuaworMTgzMjkgMjE5ODZjYzE0YmIyYTdkMGM0NTcxZTI3NThmYTg0NWVlODIzMDhmOCBsZWdhY3ktdHJ1bmsKKzE4MzMwIGFjMjIwYzMxZGRkN2U5YWIwM2QyMDlhMmJmZmQ3ZWQzOTlhNWNiOTEgbGVnYWN5LXRydW5rCisxODMzMSBlMGQ4YTZmMmQwOTExYjI2ZDZmYTVjNTM0M2NiZTg0Yzk2NGI1ZjNkIGxlZ2FjeS10cnVuaworMTgzMzIgODZjZjY0ODBkMmZhNjNiN2U0ZGEzMmIzMTEzYjQ1ZTQ3NTk5OTE0NSBsZWdhY3ktdHJ1bmsKKzE4MzMzIDQ4ODA0ZGFiNzg4Y2E2ZGE1YzBlZGU1MDllNGJkMmRkZTU2MDZiNDggbGVnYWN5LXRydW5rCisxODMzNCAyZWNlOGZhNTY4MDgwNzhiNzQ1NjZmYTNlNmJlNzI0ZTIxYjBlZjU1IGxlZ2FjeS10cnVuaworMTgzMzUgZWY5MTM5MzM3NTQ3NGZhOWQ2ZDM0OTk0MmMzNmViNzc5ZWY0NDczMSBsZWdhY3ktdHJ1bmsKKzE4MzM2IDY1NWY0YzRiYjk0NDliMWRhNjBkNGRiMWNjY2NlYTMxNGJjZmE1NzMgbGVnYWN5LXRydW5rCisxODMzNyAzYmUxZjVjNTIwYWQ1MjVmMmY1NzY5MDI1YmMwMDRjNjhhNWUxYzVkIGxlZ2FjeS10cnVuaworMTgzMzggYTVjZmY4YzFmNGU0YTQyMTRiOGYzOWNlZjNjMDY4NjczMjA2MmRkZSBsZWdhY3ktdHJ1bmsKKzE4MzM5IDg1NmIyYmMyMTZmOWZiMzgyNmNmMjE1MTRhNTQ2MTRjM2ExNTQ2NDggbGVnYWN5LXRydW5rCisxODM0MCBlOTg5NjRiYzI2ODE0MzIzMTQwY2YxOTRlMzM3ZTJlNDg3MGY0YjBlIGxlZ2FjeS10cnVuaworMTgzNDEgM2MzM2YyYzM1N2QzYjZjNzVmNGMzMDY5ZWUxOWFkMWQwYWE3ZDY1NCBsZWdhY3ktdHJ1bmsKKzE4MzQyIDA3YzJlMTM2MjYwYzNlY2U0MDI2NWQ4NTIwZjIyZTFkOTljY2YxY2EgbGVnYWN5LXRydW5rCisxODM0MyA2ODM4ZTcyZjhkZDI3MDdkYTA4ZTIxMDU5NmVlNmQ5YjhkMGQ0NWY2IGxlZ2FjeS10cnVuaworMTgzNDQgMTA1YzI1MDUyZGU5OGVjNmE0NjQ1NjRkMDZlMWY5YzY0NDc5MjRkOSBsZWdhY3ktdHJ1bmsKKzE4MzQ1IDA3NzA1MTc3Y2E2YmVkOTVhODgyNjY0OWQ1NDk5YzEwNGVlN2Y2M2QgbGVnYWN5LXRydW5rCisxODM0NiAxMDkxYWQ5YTAzMDNjZmM4YTI2YTM5YTM1ZmU0OGZlNDNhMTg2N2Q5IGxlZ2FjeS10cnVuaworMTgzNDcgYjMzOThjNDUyZDk1OTFhMjE0NDUwNDA2MDlhYjNhMzAyN2Q3YTQ3MSBsZWdhY3ktdHJ1bmsKKzE4MzQ4IGYwY2E0YzY3OTU3YjU3YTlmMmNjNWFmMDZiOTVhMGNlYWUxY2IyYjUgbGVnYWN5LXRydW5rCisxODM0OSAyZDFiYmJhYzc2ZDMwN2EwZjk4YmVlY2Y1ZGMzNDAzZTI0OGRlYzU3IGxlZ2FjeS10cnVuaworMTgzNTAgMTBmNmUxOTU2NzFkZmU3ZjdhOGI4ZTlhMDVkMjJlMTg1MmNlZGNhYiBsZWdhY3ktdHJ1bmsKKzE4MzUxIDhhNTk2ZDEwYmM3MDg1M2JiZmJhYTkxY2FkYzJmOTA3MjExY2IzMzcgbGVnYWN5LXRydW5rCisxODM1MiA1OGI0YWU0ZWM1NWM2ZThjZTJiMGJhZjI3OTg3MDJmYWY3YTUxMzJkIGxlZ2FjeS10cnVuaworMTgzNTMgZjY0MDM5MDIzZDY0OTIzYTA5ZmJlNDhiODQ4YzQ0NjlmMTFmNDhkOSBsZWdhY3ktdHJ1bmsKKzE4MzU0IGZkODRiMzUyNDE0NTc2MTM4OWQ2Y2JkOGY5OTY5MGNjYmE3ZmI0OGEgbGVnYWN5LXRydW5rCisxODM1NSA4YjU5NjQ1MWYxYzE4ZjE3NGZkY2ZhOWFlYTNlYmEzOTQ5M2VmNjI2IGxlZ2FjeS10cnVuaworMTgzNTYgMzJjNDQwZDJiMGRmZDZkZDFjNzZkZmM0NzE3OWIyZjRlMGIxZDE1NSBsZWdhY3ktdHJ1bmsKKzE4MzU3IDI2ZDQxNGMwYTA5MjAyZTBiZjA1MWRiN2Q4YzkwOTA0YTBhNjEzYTcgbGVnYWN5LXRydW5rCisxODM1OCBmM2JmNWYwODJhM2Y4YTc5ZmYyMTZiNGZjZmQ1NmRlNmIxNDJiZjE4IGxlZ2FjeS10cnVuaworMTgzNTkgNDYyNzU2MTFjZDU5YmU4ODgyNTNkMjFmMmIzYzllMTQzNjAxZDFhZCBsZWdhY3ktdHJ1bmsKKzE4MzYwIDhiZTg4OWU4MTE1YmNiMDRkNGZjOWFhNTg5YmI1NWUwZjY3ZmYyY2MgbGVnYWN5LXRydW5rCisxODM2MSBkMTM3Yjk0ZjNkZGZkMTZlYmUzNTRmM2VmNDFjYTM0ZDk5YjUzNmYyIGxlZ2FjeS10cnVuaworMTgzNjIgNTVmNGE2ZThiNWIzYTdlNDMxYjkzMjliZjQ5YTY5Yjg1NmJkMGQ0YSBsZWdhY3ktdHJ1bmsKKzE4MzYzIGRhYWRkMWU4NTMxNjU4MTg0Yzg2OGQ3OTM2YTQyMjVmNmZhNjI4ZGUgbGVnYWN5LXRydW5rCisxODM2NCAzOTc0MmM5MWFkZDNlNDdlMTEyOGM0MDkxMzdkOTVmZGQyZTY5MTIxIGxlZ2FjeS10cnVuaworMTgzNjUgNGI2NThjMDU5YzIzZDlkZjljYmNiYzQ4YzcyNjg5MmJjNjA0NWFjZSBsZWdhY3ktdHJ1bmsKKzE4MzY2IDVlOWQwMTI3YWNlOWExY2M2MDFhNzA1NGJjMzE0M2YyZGI4OGRhMGEgbGVnYWN5LXRydW5rCisxODM2NyBhYzgzMGM5ZTlhODM3MmEzMWMxYjc1Zjc4NzE3ZjcwOTkwYmNiODc1IGxlZ2FjeS10cnVuaworMTgzNjggMzQwNThhZjk3NmNlY2VlYWRmMTAzMjQwYmVjMjVlNWM5Y2M3MDY0OCBsZWdhY3ktdHJ1bmsKKzE4MzY5IGVjZGU3NzE0MjhmOWViNDcyZTg2NWU5ZDMwZjI2Y2QxYTFlMTA3ZDUgbGVnYWN5LXRydW5rCisxODM3MCAzMDU0NmEyYjk0NTBlNTg5Yzk4MDk1MTIwM2UyZDYwMjMxYzk2OTkwIGxlZ2FjeS10cnVuaworMTgzNzEgZGI3NTcwMjI1ZWY4NDIxOWE5MDBiZmE3YjE4ZmY0MzY4MTJlMWQyNiBsZWdhY3ktdHJ1bmsKKzE4MzcyIDM0ODBlODNlMTdhYmIxZTg0N2FjMjIxNGFlOWE4ZTY4NWJhZjFjMTEgbGVnYWN5LXRydW5rCisxODM3MyBlMTFjMTIzMjNlYmY1YzUwOTI1MWQ5NjJjMTg0ODA3NDk3NDVkYWE2IGxlZ2FjeS10cnVuaworMTgzNzQgZWZjOTZhYWI3MWMyODkxZDA3ZTEwM2ViM2JkMjE4YTE4NDlmZmU3ZiBsZWdhY3ktdHJ1bmsKKzE4Mzc1IDNlOTRjYzJhMDQ3M2ZmNWY4YmQ3NTg2OWVjMDQ1MzMxOTJmMWRiNDIgbGVnYWN5LXRydW5rCisxODM3NiBkZDU4M2MzM2Y0NTVhY2EzNTNlNDhiODI1YzU0OGZhNjY3MmZkMWIwIGxlZ2FjeS10cnVuaworMTgzNzcgYzEzMzM2NTcyZjRmNDFhMDFiYzM4Y2Y1YzkxOTA4YTFmMDMwZWI3ZiBsZWdhY3ktdHJ1bmsKKzE4Mzc4IDVlNDFlYmRmYTlhMDBlNDNmNTZjOGYzOGNhOTlmMTY0MTk2NDJiNmIgbGVnYWN5LXRydW5rCisxODM3OSBjMGFkNGMyZWY0NDQ2MWZjYTI4NmYzNzI3YjlkMjM4MGUyOGUyMzNlIGxlZ2FjeS10cnVuaworMTgzODAgZWQyOWRmN2ViNWM5NjE4NmU3ZDIwMDI3OTFjYWZjZTViOWQ3Y2JjNyBsZWdhY3ktdHJ1bmsKKzE4MzgxIDg4NTRkOWQ1YWRkNWY0NjIxZTJmZTcxOTVmMzdjYzExZjRmNWYwOWYgbGVnYWN5LXRydW5rCisxODM4MiAwNzBlZTMxY2FmMjhiNzBlYzA1MTIyYjFmMjE0NmEzYzA2YjNmYWFlIGxlZ2FjeS10cnVuaworMTgzODMgYWFhNTQ3NTJlNGJhZDAzOTYwNWFjYzgzOWRmMDlmZTk2M2RlNjI3OSBsZWdhY3ktdHJ1bmsKKzE4Mzg0IDEwMjIxYTZjN2MzYzVmNmNlY2FmZjNiMzA4MmE1MTVhYzlhZGQ4YzUgbGVnYWN5LXRydW5rCisxODM4NSBjZjE3NTBjM2Y3ZjdmOThkMDhlZGYwMDBmYWZjNGIwZjc5NTcwNjIzIGxlZ2FjeS10cnVuaworMTgzODYgMzJjNTVmNTc0NmRlZDIwYTIzNTNmNzQ4ZTI5M2Q4MmNlOTc4YWRhZCBsZWdhY3ktdHJ1bmsKKzE4Mzg3IDhkOWZmZmVkMzRmNDA2NGJkYzkwZDJhN2Y1Y2E4MzNlNTY1YjQ2YTcgbGVnYWN5LXRydW5rCisxODM4OCAwNDFkNTdlM2EyYjkwNGJlNWE4ZmZmMGNjNmYyOThmNTA3YTExMWE1IGxlZ2FjeS10cnVuaworMTgzODkgNWZlMmVjNTA0ODM2YzEwZjIwOTk5NDY4ZjY1Njk1MDk1M2VlOGFiYyBsZWdhY3ktdHJ1bmsKKzE4MzkwIGE5M2Q3OWRhNGY4YzVkYmNmM2Y4NGJkYzQwNzA3NjY1NGU5ZDUyNDcgbGVnYWN5LXRydW5rCisxODM5MSA3OWZjZDJiMzE4MDhiZGU2Y2RhMTQ3ODYzMTVlYjYyYWM5ZjUzNTk1IGxlZ2FjeS10cnVuaworMTgzOTIgYWQxNGRkYmQwOWE3MjVlZjZiNDNlZWExNDNiYzcyODFjNjA1N2QwMCBsZWdhY3ktdHJ1bmsKKzE4MzkzIDI5ZjQyNjk0NDAyYjgwY2Q5NDM3NWIwMjhjMjEwNTZkYWNjOWQyNjcgbGVnYWN5LXRydW5rCisxODM5NCA1ZDk4ZDQ5NzEzZjIxYTFjNjkzZGNiMzE0MTgxNDcyNDI4MmIwMWI1IGxlZ2FjeS10cnVuaworMTgzOTUgMGNiNzUxYjU2MzkxNmMzMGU4ZTdhNmViMzU1NWViNWY2Y2EwMDdmZCBsZWdhY3ktdHJ1bmsKKzE4Mzk2IDdlZTM5ZTE0Y2YyYjBmODJjNGJlODVhZTA5ZWIyYzQ3ZmVkMzA2OTIgbGVnYWN5LXRydW5rCisxODM5NyBjNTlmNjQ1ZGFlZGVkMGRkYTRlOGIwMTEyNTllNjA1YzQ2ZmYwNzVhIGxlZ2FjeS10cnVuaworMTgzOTggNTAzNThkNjRkYzQzN2I3ZTVhYjM5MTVjMmRiODJhYTQ0ZTY2Njg5MSBsZWdhY3ktdHJ1bmsKKzE4Mzk5IDNiMDRkMzQyNWZmMGYzMTA4OTRjZTcyNTU4NzIzMjRjYmZkM2Q5MmUgbGVnYWN5LXRydW5rCisxODQwMCA1YWFjNTg3M2FhYWU3ZDA0ZGY3Y2QzOWUyNzZkNmIwZWM4N2Y4OWJmIGxlZ2FjeS10cnVuaworMTg0MDEgOWQ0MzEyOWM4YzU1ZjMzN2E5YmY1OTU2YjE3YjYyNjQ5MTU5MTliOCBsZWdhY3ktdHJ1bmsKKzE4NDAyIDU4YmM5OWUwMTJhODVmYTk5NzcxNWI4ZGZkNjA2ZmRhMDA4NzY1MjEgbGVnYWN5LXRydW5rCisxODQwMyA2MzU5NDgwMTA2ZWNmYTk5YWQ2MTljNGViZDcyYmNhZTAwYzU0NGZkIGxlZ2FjeS10cnVuaworMTg0MDQgNzg1MTU1ZTJjZmNhMjk0OWYwZDc3ZmI2MDYwZTVmODk0NDk4OThiZCBsZWdhY3ktdHJ1bmsKKzE4NDA1IGNiZDRmMzU1YmI5NmY3OThjMzBjMWZlYjdmMzAyNTNmODY3ODY4ZDQgbGVnYWN5LXRydW5rCisxODQwNiBkNjk2MTFjY2U4Nzc2ODNiY2M1OTdkMmUyNTZkZGUyNmJjZDM1Y2U0IGxlZ2FjeS10cnVuaworMTg0MDcgYmI5M2IxZGNhNTcxOThkMTlhZDM4NDI4ZDc1Y2ViNTQ4NGRhN2MyYSBsZWdhY3ktdHJ1bmsKKzE4NDA4IGFmN2M2MjNkOGQzM2JkN2E5MDAzYzEzNWIxMjk5MWU2YmJiODE5M2IgbGVnYWN5LXRydW5rCisxODQwOSBmM2IwNjgyZDI2ZDYwMTFhMzdmNWIxNzcyZmRiYzJjNGNkNjAyNDBkIGxlZ2FjeS10cnVuaworMTg0MTAgMmZkYmNkZWUyZTFmMmVkNjhhNWU5YTZlZGJjNjE5MDVkOTMzYjEzNSBsZWdhY3ktdHJ1bmsKKzE4NDExIDg0NTY0NmIwOWJmODI0NTgyYjg3MWQwOTI3ZmY5NzIwYTRiMmU1MTQgbGVnYWN5LXRydW5rCisxODQxMiBmOWIxODRhNTcyMjM5NTAxNzliMWM2Y2YxMDNkZGMzMjdmMmRiOGMwIGxlZ2FjeS10cnVuaworMTg0MTMgNGQ5YzMxZjMyYzA5YzI0YmZlMjQ0MGNhNjljYTZjZTAwNDMxN2QyNCBsZWdhY3ktdHJ1bmsKKzE4NDE0IDU3NDM5MzM2YzJlMGVlOTZlZjU5MjIwMTJmN2NiMmVmMTU4N2ZhNjYgbGVnYWN5LXRydW5rCisxODQxNSA0MzU0NmM1YWVlY2NlYTdlZDk5OTA4OWM5OWNkNjAwN2RjODgxNzViIGxlZ2FjeS10cnVuaworMTg0MTYgZjcyMzQ1YjQzNjYyMDFjZmU1NjU0ZTFmZDExZTNkNjk0Y2YzMWMyNSBsZWdhY3ktdHJ1bmsKKzE4NDE3IGQzZjZmMzE1NWMyNDA0YmQxYzkxZDY3YTAyY2E0MTdlNDU5YjlkNTAgbGVnYWN5LXRydW5rCisxODQxOCBiMTc1NDAwZThiMjJhZmQzM2M5NDdiMzFmODRhMzFhMzQzYWJhNzgzIGxlZ2FjeS10cnVuaworMTg0MTkgYzgxYmVkMDE2OGEwOTQ5Y2IxOWNhMjQ0OWRhNmZlOGJhYjYxNWZiMSBsZWdhY3ktdHJ1bmsKKzE4NDIwIGQwOGY4Y2ViM2Q1NTZlM2VlNDVmNDYxY2ViZTFiNzFlZDU5MzhhZGYgbGVnYWN5LXRydW5rCisxODQyMSAxNDM2NDZiYWZkMWJlODkwZjZkZmVmYjE1N2IzY2VhZmVmMGMzOTVkIGxlZ2FjeS10cnVuaworMTg0MjIgOTQ1M2Y2ZmFjZWZhNDVlMTc2OWQzNjE5ZDU1ZWE4MjMxNmUwYzgwOCBsZWdhY3ktdHJ1bmsKKzE4NDIzIDc0ZWU2NjE1ODFiNmQ0N2U4NmU1NDRkMmJhNzViMzliN2I0ODAzNDQgbGVnYWN5LXRydW5rCisxODQyNCAzNWU4YTI5ZTU0ODg0ZTAzYmE1MmVmYTQ2NDFmYzgxZjU5YWE5NzJkIGxlZ2FjeS10cnVuaworMTg0MjUgYzEwNDI2ZGE3YmNlMjQyMGQ1OTMwN2Q1Y2E0NzgxZTg2NDQ5YWFjNCBsZWdhY3ktdHJ1bmsKKzE4NDI2IDRjMjAzNzllNjYzZDQ1ODJiZjBhNDIxNmJhZjQ1ODgwMGYyNTU3YzMgbGVnYWN5LXRydW5rCisxODQyNyA5OTQyMmQ2MTBkYjNhZTk2ZjMxMjhiODA0ZGVhYzgyYmU2ZmVhMTlmIGxlZ2FjeS10cnVuaworMTg0MjggZDM4NTE2Y2U2ZjE0MTlkN2UyOTM4NzA4NDQzMjU2YzFkZGY5MWRmNSBsZWdhY3ktdHJ1bmsKKzE4NDI5IGIzNDIwYjAwMmQ1NWNmNzE5MGE0N2EzYzJjY2IzY2UwMWM4ZDY1NWUgbGVnYWN5LXRydW5rCisxODQzMCA1NmFkYzY4ZTA2ZjY5MTNkYzk0NzM5YzU0OTRkZjMyODNjYzQ1NzFjIGxlZ2FjeS10cnVuaworMTg0MzEgZDQxMGY2YWQzYzYwMThlZWEzMTQxMDdhZjFiNjNhOTg1M2E1OTc4NiBsZWdhY3ktdHJ1bmsKKzE4NDMyIDAyN2VlOWE4NzBkMmMyMzNjOGZkMTU1NmU1YTg2MzkyMzcxOTlmZTggbGVnYWN5LXRydW5rCisxODQzMyAyMTc1ZTU2N2JkMDYyOTBkYmJhNzI4MGIyODA4MDk2NDc5NjVhNjMwIGxlZ2FjeS10cnVuaworMTg0MzQgMjQwNzRmOTcyMzVjNDlkM2IzOTNkN2FkMWU2ZmEyNGEwOTY2MGI5MSBsZWdhY3ktdHJ1bmsKKzE4NDM1IDRhOWYxNTUyYmE2OGUwYmYwMzk4NzAzOTY2NTc4NTAzMTcwYzAxYTUgbGVnYWN5LXRydW5rCisxODQzNiAwM2MzMmZhYTFhNDliNGM3YzU0NDJjMmEwN2UyYzBiZTg2MjFmMjYwIGxlZ2FjeS10cnVuaworMTg0MzcgNThmZTkzN2Y3MzRhNDg3OGFmNDQ5YjlhNTk5ZmI5ZmY4ZDQ2ZTViMyBsZWdhY3ktdHJ1bmsKKzE4NDM4IDk2YzNhZTEzZGRjYTgxOGIyMTNjYzE0NmQzZDE3ZDNlNjQxYTkxNjMgbGVnYWN5LXRydW5rCisxODQzOSBlMDc2NWM1NTEyZDcxOTg5N2QwNWFhNGE0M2IyZTQ3NWYxZjVmNjY3IGxlZ2FjeS10cnVuaworMTg0NDAgMzFkNzhmMzYxNTMwY2YwODczZTkzNDE2ZTYyMGFkMDA5NDJjMjIxNSBsZWdhY3ktdHJ1bmsKKzE4NDQxIDY2ODE2NmE1MGM3MDcxYjY1NzYyOTE1ZDUwMzQxY2ZlNDRlYTI3N2QgbGVnYWN5LXRydW5rCisxODQ0MiBhZmI0NWI3ZmEyNTI4Y2VhOTA0NzIyYjZkNjUyZGVjZWFlZTQwZDNjIGxlZ2FjeS10cnVuaworMTg0NDMgNjE3OWQ0YWZhNGU0ZTVjZmYzYzI1NjJhYjY4MGZmMzUyNzhlMmFkZSBsZWdhY3ktdHJ1bmsKKzE4NDQ0IGI4ZjViNzI2N2YxNDk3YzQ1NjM4YTFlMmE4MWViOTUzNWFiMTY3NDcgbGVnYWN5LXRydW5rCisxODQ0NSA2N2MyNGM3NGYxOGNjNDM0NGM0MTRiMjJhNzIzOGMxNzUzMjExYWNiIGxlZ2FjeS10cnVuaworMTg0NDYgYjJhOWJjOTE2NjhhN2YyNDBmNDkzYTg2NjFlZDgyMDQ4NjVhYTM0YiBsZWdhY3ktdHJ1bmsKKzE4NDQ3IGZmODQxMTJkYWJjODk1MjM2MDU4MjJmMGU3YWM1MDY2OTgyNDQ3ODEgbGVnYWN5LXRydW5rCisxODQ0OCBlYmNlOWIyNjdiYjhlYTYxOTJkMTk5ZjFhNjgzYzgzOTExZWRlNGViIGxlZ2FjeS10cnVuaworMTg0NDkgY2U5MjIzMDI4MTY0OGNmZDVjMDVhYzI2MTk3N2Y2Mjk1YjQzYzQwNCBsZWdhY3ktdHJ1bmsKKzE4NDUwIDg1N2E1NDAwYmU4N2VhZGFjZTg3MGZhMzgzMjU4OGViMGY2N2ZlY2UgbGVnYWN5LXRydW5rCisxODQ1MSAxZTc1NmY5M2JmNWRhMWU5N2QzOGYyM2QyYmE2N2JjYWU4NmNkNzY1IGxlZ2FjeS10cnVuaworMTg0NTIgMzYyODY2MzJmZjNhOTNjZjIzZjkyYmRhZDlkOGZhY2IzZjAzMGFhOCBsZWdhY3ktdHJ1bmsKKzE4NDUzIDUyNzU2ZjYxM2MxODJhOGIzMDE0NjU2YTE1ODc5Njk5YTBhNzg2MWIgbGVnYWN5LXRydW5rCisxODQ1NCA5Njk0OTA5ZGJiMGE3OTg4NmM1MjBlZjI4NzE4YzA0OWJjMjZhMjU4IGxlZ2FjeS10cnVuaworMTg0NTUgMTc3OWY4NTc0YTgzYTBmNDdjYjZlNDI2ZWU0MmY2OWUwODFjZjczOSBsZWdhY3ktdHJ1bmsKKzE4NDU2IDBmNDJmNjY2OWU4MDJjMmVmMjQ2YzlkMGM2YWY1Y2NlYTFmNDY0ZWUgbGVnYWN5LXRydW5rCisxODQ1NyA1OWE0NWZhOTUzMThmZWVmNzc5MDg1ZWMxMzhmYTc1MTJjODgwMDEzIGxlZ2FjeS10cnVuaworMTg0NTggM2ZlNTllZDExYWYxMGU1NDEyODZmNmJiOTQyZTBiNzJkMWUxMjU1YSBsZWdhY3ktdHJ1bmsKKzE4NDU5IDE0OGI4YzFiNzEzYTlkYTlhMDhiMDE1Y2Q1ZDQ0Njk4NDdlNzdiODYgbGVnYWN5LXRydW5rCisxODQ2MCBkNWM5ZGQyNGQ5NzdiOGM3MDQ1MmIyOWVlYzUzYWVmNDhlOGRlYjllIGxlZ2FjeS10cnVuaworMTg0NjEgNjYzMGNjYTI5OGNjMGViOWZjZGE3MmE1MDg3YzAzYTgyNGMxMDNiZCBsZWdhY3ktdHJ1bmsKKzE4NDYyIDUzNDIzZWMwYTcyODg0YjA1N2Y0NjEyNGVjZWRlOWMyMDM3ODVmNzYgbGVnYWN5LXRydW5rCisxODQ2MyBlMjNkNWIyZTIyOGM0MmMyMzhiNjM0MzJkMTUyNDcyMmM4ZGFlMjczIGxlZ2FjeS10cnVuaworMTg0NjQgOTg3Yzc0Yzg4NDI4OTdkNmY4MzY2ODllMmI3YTFkODYxYmExNGM3OSBsZWdhY3ktdHJ1bmsKKzE4NDY1IDE1ZTFlYjEwMTliOGEzN2FmNDg4YWNmMzZkZWJmZmI3YmNmNWIxNDcgbGVnYWN5LXRydW5rCisxODQ2NiBlMWYyZTNlYzc2ZDRmZTZhZmJmNDZmYzdkMDJmZmE5NGY1ZjljYjZjIGxlZ2FjeS10cnVuaworMTg0NjcgZjk5YmI2YTkyZTg0Zjc4MWE2N2ViZmNlNjUxMjg3OTQ0ZTgyNmI5MSBsZWdhY3ktdHJ1bmsKKzE4NDY4IDU5YmZiYmU1ODFjMmQwYmE5ZTc2Yzg0YTcxYmI1YmRiMzQ3Y2Q5ODggbGVnYWN5LXRydW5rCisxODQ2OSBmZjA3Njc3NTNkODEzZGMwODBiNDBjYzE2MGFkYWFiNTVmZmMyZTA0IGxlZ2FjeS10cnVuaworMTg0NzAgMDkwNmM4ZTJjOTYxYzNiMDNmMWIzYWFmM2Y4MGM1MzdmMjQ1YmQ0OCBsZWdhY3ktdHJ1bmsKKzE4NDcxIGVkMzE1YjU1ZjE5ZTYyZmFmMzhjZGQwMzc0YjdlZmMzM2EwNDc1NTYgbGVnYWN5LXRydW5rCisxODQ3MiAyZmU3NDI3NTkxZWE5NjdmYzg3YjBkOTFkYzI2OTk5MWM2ZDEwYjI4IGxlZ2FjeS10cnVuaworMTg0NzMgZTU3ZjkzYWU0ZmU5ZjY4NTJjMmNlOWJhOTcwOGUxMTdlNDFiYzUzZSBsZWdhY3ktdHJ1bmsKKzE4NDc0IDM1NzQ5YTU1N2YxZTVkNmQwYmE1YTdmOWIzZWZjNTAyZjEzYmNkOTYgbGVnYWN5LXRydW5rCisxODQ3NSA3YmI3YjcyZmE2NjY2YzE1MmYwNDJhNWExMmVkYmYxNmEzODY0YjY5IGxlZ2FjeS10cnVuaworMTg0NzYgMDc4OWRkMDYyZDZjMDgzM2QwMWZiYjRmZjFiNDIzMjU2Yzg1M2U4NCBsZWdhY3ktdHJ1bmsKKzE4NDc3IGUxMmI2NTBmMGZhY2U2ZDFmODdmZGU5Y2VlOTFhZmY1NDkyMmMwMzEgbGVnYWN5LXRydW5rCisxODQ3OCAwNTJlMzcyY2UxNTFjODQ3NzdmM2ZkZDlhMjhiMGIyMTJmNGU1ZjAwIGxlZ2FjeS10cnVuaworMTg0NzkgZDNlODZmZjg5M2IxMDU2ZDdlMDY1MTdkMWU5ZDg2YTU4NDZiY2M1OSBsZWdhY3ktdHJ1bmsKKzE4NDgwIDUwZDliNTkwNjI3ZDY0ZTM2ZDI5YTA1ODNiYjc0ZDczZTg5ZTUxZWEgbGVnYWN5LXRydW5rCisxODQ4MSAzMGVjODczMzM4YWQxNTY0NGZkZTdmYWVlMjQ2NjFkMGM5ZWE3ZDRiIGxlZ2FjeS10cnVuaworMTg0ODIgODI2MmJmYTUxNGMyYzAwMjkzZTczNmQyNmY1YmE4YzY3NjY2MTM0ZSBsZWdhY3ktdHJ1bmsKKzE4NDgzIGY1OTQ5Mzk3YzhhNTg4ZmY2ZWQwMWQzODBlYTQ2OWRlMTQ1Y2I2MGQgbGVnYWN5LXRydW5rCisxODQ4NCBkYjY5YzA5MmM5MDZkMzk3OTM0YjMwMjNkNjc4MjliODkzMTFjN2U5IGxlZ2FjeS10cnVuaworMTg0ODUgNTBkZTNiMTk4YTYyMDViMDU3MDBjYzJhM2I4MDdlYmRmYWVkYjMzNyBsZWdhY3ktdHJ1bmsKKzE4NDg2IDM4ZjA5ZmIxOGI4MDIwYzc3YTJjNmM5ZDY4YTlmNGRmZjNlYzZjYWMgbGVnYWN5LXRydW5rCisxODQ4NyA1MzgwOTcxOTk3ODM5ODZkMzRiNzVlYWU2ODBjY2Q1ZDNlZjY3MmViIGxlZ2FjeS10cnVuaworMTg0ODggN2UyYmI5OTRjMmQzYWM2ZTU2MzAyZTEyYjhkMzQ4NjQyM2NjZjZiNSBsZWdhY3ktdHJ1bmsKKzE4NDg5IDdmMjJlMzRjZTQwZTNlYWEyY2I5MmVjNTZjZDdmYThkNzg5ZTQyY2MgbGVnYWN5LXRydW5rCisxODQ5MCA1MGJiZWVkYmNlNGE2ODNiYTMwNjNmODNiYjIwMmQ4MjM0MTc4NmZjIGxlZ2FjeS10cnVuaworMTg0OTEgZGI3ZWU1YzYwYWYwYjg3ZDIzMDZjMDIwODY0OWM3NjYxMDhkNjc1MCBsZWdhY3ktdHJ1bmsKKzE4NDkyIDU1MmRiOGQ4M2FjZDg5NmQyMWQ2M2JhZTZkZjBiOWQ2N2QyNTIwZDMgbGVnYWN5LXRydW5rCisxODQ5MyAxOTc1NmI5MTgwNDE2NjI2Zjk1NDhlNzgyYTEzNmVjNjdmZTExYWE5IGxlZ2FjeS10cnVuaworMTg0OTQgMmE2MTJhZTI1MDk1OTJhMmMzODA5OGMzNGFhNTZiMWY3MTFlZWE1YSBsZWdhY3ktdHJ1bmsKKzE4NDk1IDQ0NmYzZjkzOWRmMDM5NzY2NTdlMTkxY2IzYzJiOTAyNmRmMDBiNDYgbGVnYWN5LXRydW5rCisxODQ5NiA4Mzg1NTE4Njk3OTA0ZDg5M2I3MDJjNDA1ZGU0MjQ5YzkyOWQ2ZmFhIGxlZ2FjeS10cnVuaworMTg0OTcgMmQ2ZTc2ODlkYzQyMDU3OTUyYmM2MmYyNzQ1ZGVjNWFhYzc2NjkzYyBsZWdhY3ktdHJ1bmsKKzE4NDk4IDdmYjdjNTFhMmU2MTYyMDA3YzNlYjNjNWFkNzVjMWI5M2FhNGQyZDcgbGVnYWN5LXRydW5rCisxODQ5OSA3NjM5YTk1NTI0NzllMzA5M2RhY2E4MmQzNzBlYzBhZTExNjU2YjhiIGxlZ2FjeS10cnVuaworMTg1MDAgN2ZiNTA5OWJlMjAyNjliYzUwYjcyM2I1NzNhMGI4ZDhiOTAzYWFkYSBsZWdhY3ktdHJ1bmsKKzE4NTAxIGM0YmVjN2M0ZDZmZjY0MTM4ZGNlMmEyYzgwZGY2NGMyYjhlODc0MjggbGVnYWN5LXRydW5rCisxODUwMiBmMGNkYTBkNGI1M2MyMDgyNmE4ZTU4M2FhMDMwMTc1NDc1N2U3MzZhIGxlZ2FjeS10cnVuaworMTg1MDMgMTljOGEyZDM4MDdkNThkYTA0MGVhYTdkM2NlNmYzODhjMWY4NDdhMSBsZWdhY3ktdHJ1bmsKKzE4NTA0IDYzYjgwYjc3ZjViMmRiMzA5Zjk4NzJhNmVhYTUxMTAyNmZjODJkNjQgbGVnYWN5LXRydW5rCisxODUwNSA4Y2ZlMjZlZDcyOGQ5NDJkMGQ1MmYxYTQ1NjMxZGNiY2VkNTBkOWIyIGxlZ2FjeS10cnVuaworMTg1MDYgYzEzZjVhMjBlYTMxMjMzOGExZmQ2OWIzNGRkZTFhNWNlMjhjMTE0NiBsZWdhY3ktdHJ1bmsKKzE4NTA3IDViMTU4ZmMwZWQ1NTVhMWFiMWU4NDI0NTE5MzIzMWEwMTkwMWU2NzIgbGVnYWN5LXRydW5rCisxODUwOCBlOWY0Yjc2Njk5YWEyMzEwZGNmMTk2NWMxMzM4Nzk3ODU1OGMxNzA0IGxlZ2FjeS10cnVuaworMTg1MDkgMWE0YTVhOTM2ZjUwOGNlNWM1NDdmYTAwODQ0NzE4OTA4MjIyYTdhYSBsZWdhY3ktdHJ1bmsKKzE4NTEwIDU2Yzc0NDgzYjA1MGNjMjE2NzBlZjU3NDkzZTBlNDE5MzUyMzE0MTkgbGVnYWN5LXRydW5rCisxODUxMSAyZjE3OGJkZGRjMTYzN2QxYjE1YzI4YmJjZmI5MWE3Njc2NDg2NWEzIGxlZ2FjeS10cnVuaworMTg1MTIgOTI3YmNjMzE1ZTU2ZTgzMDFmMmM1NWU3YjFjZmE0NzU5NjdmOWRhOSBsZWdhY3ktdHJ1bmsKKzE4NTEzIDNlMjU0ZjU2ZWVmMWNkNWM0ZjI3NjVmNDIxOWY4OWRkNDRjMTU1NjkgbGVnYWN5LXRydW5rCisxODUxNCA4MmJlYzM4OGM2MzYyOWFhYzViODQwYThhODFkNDY1NGU4ZjI5ODkxIGxlZ2FjeS10cnVuaworMTg1MTUgNjQwNWYzMGFhMDhjMmNjNTEwOGVjYTZlMzNmN2UzOTM5NGE4MzVhNiBsZWdhY3ktdHJ1bmsKKzE4NTE2IDgzZDU5OTY1MmI2MjJiNTM5YWFiZWRjOGEwZGY4MjA3NTMxMTYyOTkgbGVnYWN5LXRydW5rCisxODUxNyAxNzNkNzBlNzJjOWY2NWFlOGE1YTk2ZDJlZThhNDE3NDExZGI4YzU5IGxlZ2FjeS10cnVuaworMTg1MTggMDI2YTkyMTA1MTQ1MjhjNGRiZWZkZWU3ZTlhNmMyMzViNzcwMmY4ZiBsZWdhY3ktdHJ1bmsKKzE4NTE5IDU2Y2UzOGU1NzUwMjZiYjNjMmIwNjk2NzQ3OTQyOWVkNjZhNDUxM2EgbGVnYWN5LXRydW5rCisxODUyMCA2NTg1ZDNjMDRhMjlkODU2OWFkNjRkNjhiYTBhZjUxY2RmMmQ5Mjc3IGxlZ2FjeS10cnVuaworMTg1MjEgZWFmNWE3OGJkMjgyNzExOGEyNjE2NmIzMDkwM2I0ZDY0YTgxMmQwNyBsZWdhY3ktdHJ1bmsKKzE4NTIyIGFmYWQ2NTk3NWE4MmU1YzQ5OWFjZTMxMDcyMTgzMjEzOGNjMmI3YjcgbGVnYWN5LXRydW5rCisxODUyMyA1ZjNlZTVmMWIzZDc5N2Y5ZWRmNDhjYmUyYjdiYjczNzczNjY3ODQyIGxlZ2FjeS10cnVuaworMTg1MjQgMWU0MTcxNzE3ZTc3Y2NmMTgxZmM2YzFkM2I3MDg5MmU5ZDg0M2FjYyBsZWdhY3ktdHJ1bmsKKzE4NTI1IDE4M2QwYmQyZmQ2NmRjMmVjNTRhMDg2NzZmNDIwZTUyZjg0MTZlNWQgbGVnYWN5LXRydW5rCisxODUyNiAxNjkwNzU1YzU5ODZiYWJkMzQ0MDU1ZjZhOGZkZGM4NmNiNWZlYWU2IGxlZ2FjeS10cnVuaworMTg1MjcgOTBlYTFlM2VlZWIxNGQzNDNkZDkxYTRiMDAxZGIxZWZkMWVhNmQ3MCBsZWdhY3ktdHJ1bmsKKzE4NTI4IDNkNTViZjY1Njk5YWRkYzQ2YTBmZTgyNjEyOTA1YWE1MjgwNzc0NTkgbGVnYWN5LXRydW5rCisxODUyOSA4YjRjYTVkYTdkYzI2NWQ4NzZjYjMxMjM3MTk5ZWE2NzE5NWJhNmZiIGxlZ2FjeS10cnVuaworMTg1MzAgNWM2NWU2NzZmMjk5NmM1MGYwODY0YjRmMDQ4MzgyZmE5OGJmOTk1NCBsZWdhY3ktdHJ1bmsKKzE4NTMxIDUxYjU4OTgwNDA1MTRmODNiZTc0YTczNDMzNzcxNGI5MTAzZmU5OGMgbGVnYWN5LXRydW5rCisxODUzMiBjM2M4YmZhZDA3Y2EzMmMzMjljOGMyZTkzZDZlYzYyYTZmNTQ3ZWNlIGxlZ2FjeS10cnVuaworMTg1MzMgMjc3YTdhMTVlYjk0YjA1MzYxNTJjNTVlYWVkMGM4MjZlN2E2NzEwYyBsZWdhY3ktdHJ1bmsKKzE4NTM0IDY3YjNhYzQzOWY2NDAyMjgwZjk1N2MzMTA5MTVhMzVmMmRlODRjNGQgbGVnYWN5LXRydW5rCisxODUzNSA3NWMzYTY0ODQ3YzQ5YWYyMDc2NTMyZjViZjUzZjEwZDA0NDgzMWIyIGxlZ2FjeS10cnVuaworMTg1MzYgOTNhNTc1YmJhMDlmNmY4NTY4OGE3YjZlYjY3Y2U5OWFiNTQ4YThlZCBsZWdhY3ktdHJ1bmsKKzE4NTM3IDNmMmZmMzhjYzY1NzRlZDk5YzEyMTgwZGFlYWVlZTRlZDllNTAzMTUgbGVnYWN5LXRydW5rCisxODUzOCAyOWEyYTExNGU5YzkzMzJjNjhkMGI0MDE0MTkwZTdkNjY2NjUxYWZkIGxlZ2FjeS10cnVuaworMTg1MzkgMDFhNGRjMzFiNTc5YjI0ZDFiNjY3ZTQ1MjRiMGUwNWQ5YTczYjYyOSBsZWdhY3ktdHJ1bmsKKzE4NTQwIDljNzFhZGQ3ZTE2MDgxOGFlY2NhMjdjYzFiMmFhOTM2ZmQ5ZDA4ZTcgbGVnYWN5LXRydW5rCisxODU0MSBlYTQ4MzJkZWVhYzU5ZjE3YTBiNzUzZTA2NWRjNDg3MWRhMmFlMGUyIGxlZ2FjeS10cnVuaworMTg1NDIgM2NhNzAyY2FhNjFhZWFjYzY5OTVkMGNiZmRhOGE4NjJhNGVlMTBmNSBsZWdhY3ktdHJ1bmsKKzE4NTQzIGE1MTlmMjA3ZWQzNjg3MjNkYzIwOTZjZGI4YjRkMDhhMTY0NjRlZjAgbGVnYWN5LXRydW5rCisxODU0NCAxMDYxMmNiYjQ2MjNhZGVmYjk2Y2Y2OWRlOTgyYmYwYTE3YTU0NjBlIGxlZ2FjeS10cnVuaworMTg1NDUgZWNkYWNmNTE3NTk0NTI1ZGFhNWI4ZThjMjQ0NTE0ZTMwOTMyOGEwMyBsZWdhY3ktdHJ1bmsKKzE4NTQ2IGQ2Zjg2NjE5ZGJjNzM0ZmFlM2MzZGU0NzVlNWE5ZjExMDJjNWM4ZGIgbGVnYWN5LXRydW5rCisxODU0NyA5ODZkMWMzY2NkZGU5MWExNDE2YzkzNWU4OGVlNTNkMjllYjFjMDFmIGxlZ2FjeS10cnVuaworMTg1NDggZThmNWU2MWE4Yjk0MzVhODM2NTk1MTFjYTE0YWEwMTZhYmQ5MmU0ZCBsZWdhY3ktdHJ1bmsKKzE4NTQ5IDg0Y2RjODlhYzU2MWY5ODJhYjdiOThhM2Q0NmQ1NjVhNjBhNzRmOWUgcmVsZWFzZTIwLW1haW50CisxODU1MCAxNzVhM2IxNzIwNjg4MGEyOGQ3ZjQxNmZjMTEwYzhlYTI5ODA1NDljIHJlbGVhc2UyMC1tYWludAorMTg1NTEgNTU2YTRlNTNjMjY5NzczMzkxODgxYzYxNWRmYTE3YTEwZDNlZDI4YSByZWxlYXNlMjAtbWFpbnQKKzE4NTUyIGU2MDU2MjQwMDBiZjE5MTA1MDY5YjA3YTBjNjhiMjQ2YWZiNjdhNTMgbGVnYWN5LXRydW5rCisxODU1MyBmNDE3MDUzMDRhZjQ0MmYzMmNlOTA2ZGQyZjRkODk5MTE0NmNmMDlhIGxlZ2FjeS10cnVuaworMTg1NTQgMjgwYTc4ZWQwMDM1NTI4MDhkYzQ0Y2JiZjdjNTc2MjY2YWUxOWQ0YSBsZWdhY3ktdHJ1bmsKKzE4NTU1IDZmMTQ1M2JiZDU2OTAyZWI0ZmE3NTE3MTEwMTA3MGYxYjQwZjllZjYgbGVnYWN5LXRydW5rCisxODU1NiAxMzk2ODRhOTAwNDFhMGVjYzg5MDc2YTc2NWE0YmY2MWNkNTkzZTUyIGxlZ2FjeS10cnVuaworMTg1NTcgNTdhNDg1NzQzMGZmNWQyNTc3MWQ1Y2YyNDMyNTM3ZjFlNDgzYjk5YyBsZWdhY3ktdHJ1bmsKKzE4NTU4IDM2ZjdjMDljMmQ3ZjI0M2U2YzNhNmY1Y2Y3N2ZjMDk3ZmU1YTAyN2IgbGVnYWN5LXRydW5rCisxODU1OSAwYzIyYWYyY2RkNmZiMzdhNzEwOTg5NGJiNjIxN2IyMWEyNDQ3Zjg4IGxlZ2FjeS10cnVuaworMTg1NjAgOGUwMTQxN2VjMDAxN2FiNGU0ZjI1OTY0N2YzZjY0ZDgzZjk4MzM4OCBsZWdhY3ktdHJ1bmsKKzE4NTYxIDRiMTY4ZWViNjFiM2I3Yzc0YzY4YmRkYmFmMGNlNjIzNDRmNjQxMDYgbGVnYWN5LXRydW5rCisxODU2MiA1YTVlOWU3ZmI2YjIxMjcwOWM0NWFiYmM4ZTY0ZWM0MWI0YmI1YTZmIGxlZ2FjeS10cnVuaworMTg1NjMgMTk5N2RmZWQ4ZDIxZDZkOWY1ZWJkZDRkNWQwYzhlOGVmNDExNjVkNiBsZWdhY3ktdHJ1bmsKKzE4NTY0IGY2ZWUwZDQ2NzJkNjI5NjA2NWQ2Yjg4MTZlYTA4MTVmZTM0YmIzMTAgbGVnYWN5LXRydW5rCisxODU2NSA2MTJmYjc3MjdmYTI5OGUxNmYxY2M5NDRhZjNmOGQ2NjZmOTU4ZTkzIGxlZ2FjeS10cnVuaworMTg1NjYgYjQwOGFjZGNhZjNlZWVjYzVmZjBmMmExYmRjYzgwZGU3ODAwZGJhMyBsZWdhY3ktdHJ1bmsKKzE4NTY3IGJmOWJiMGUzZGQzNDEzZjMwNjc2MmZjYTE5YmU4M2RhODk1MTk2ZWYgbGVnYWN5LXRydW5rCisxODU2OCAzMDc1YTE1M2EwODNlMjI5YmRjYTJmZWJhZjAxOTMwZTFlMDFmNGI4IGxlZ2FjeS10cnVuaworMTg1NjkgZTI5NzhjMGI3Y2JkNjkyMWFmOTZhMzlkMzQxYjBiZjBhOTUyMDdhNyBsZWdhY3ktdHJ1bmsKKzE4NTcwIDE2MTg5MmJmN2MxNWVmZTk4ZWRmNDk5MDNlZmE5MDFlMmI0YjUzMWUgbGVnYWN5LXRydW5rCisxODU3MSBhNjI2ZTM5ZDY4NGRjMjNmYTZmNWY0YWE2MWRlNzk4NmU1ZDlmMGVjIGxlZ2FjeS10cnVuaworMTg1NzIgMjQ4MWI1ZmU4NmQ2ZGNlN2FjNDYwM2MzM2I5NTE1YTZiZjQzMTkxNiBsZWdhY3ktdHJ1bmsKKzE4NTczIDkwMWYzOGY3ZjZmNzU1MDc3NTJkMDM2YTIwNzA0MDdhNWExYjNjZDEgbGVnYWN5LXRydW5rCisxODU3NCAzNjkzYWJkMGVhYzFkNDFhNDcwODdlMDI3NmU3NTRjNTYzZmZjMTg5IGxlZ2FjeS10cnVuaworMTg1NzUgMmEzMDUxMjlkNTY2ZWMxNDNlNDI3MmE4YjA1MGJmMjg1NjE5ZmM5MCBsZWdhY3ktdHJ1bmsKKzE4NTc2IDRkOTc4YWQ4ZmIwNWQ2MDRlYTk3NGEwNjg2NzNiNzJkOGI5MDUxNWEgbGVnYWN5LXRydW5rCisxODU3NyAzNjJlNTNmNDNkZDIzNjFiOTA5ODhmZTY0YzgyODJlZDk0MzhkZThjIGxlZ2FjeS10cnVuaworMTg1NzggYzY1NmYzMDhhYTFmODdmY2ZkZGZhMjNhZGZiODBiNTgwMGI1MjEwOCBsZWdhY3ktdHJ1bmsKKzE4NTc5IDZlMmVjOGY3Yzg3MWY3NGEzYmVjMmVhMWZlNjEyN2YxYWZhOWQ1ZjMgbGVnYWN5LXRydW5rCisxODU4MCAyNjVmNGVmN2Q3YjFkMGQ2MjVhMzQzMDZlYzA2YWQ4ZDkwNjgzZWM3IGxlZ2FjeS10cnVuaworMTg1ODEgMDYxMjUyZjVjNzI5NmNkMzQ2ODQ4ZWNjMzQxYThlZjYyZjQ4ZTU5NiBsZWdhY3ktdHJ1bmsKKzE4NTgyIGVhZDhiNWI5OTRhZDdjZTYxMmNmNjBlYmM0NjAyY2VmNWU0YWEzNzUgbGVnYWN5LXRydW5rCisxODU4MyAzZTg2MmE1MTg2MWZkNmI2ZGNmMTkyZTE3ZDhiZjdkMzUwZGM1YTMyIGxlZ2FjeS10cnVuaworMTg1ODQgYWM3YWUzZWFkODhhNDRhYWEzNTQ5YWYwMGI1ZmU3ZmU4MWJhMzZlNSBsZWdhY3ktdHJ1bmsKKzE4NTg1IDJkY2M0YTg2YTg3NmE3MWY3YzZhOWU3MzdhYzVhNjNmNWMzNjBhMjAgbGVnYWN5LXRydW5rCisxODU4NiA4ZTQwMmFlY2EwYTNkMWNkZjhkYzM0YmZhMGU1ZjQ3OGM3ZTliMjM5IGxlZ2FjeS10cnVuaworMTg1ODcgZGI5ZjE4OTNiZTAxNjgxNjY3NjI1YWEzNDhlM2E4YmM5ZDA1NTQyYSBsZWdhY3ktdHJ1bmsKKzE4NTg4IDY0MWFkNmM4MzNiZTgwNGNhZGY1YWM4MDVlMmFhMzczY2FhMzAyYmQgbGVnYWN5LXRydW5rCisxODU4OSA0ZGQwYjk3YWE2ZTE2NjkyOGIwYzVhNWEyNmI5MGZkOWQ5OWNkMDk5IGxlZ2FjeS10cnVuaworMTg1OTAgMmIzYmMwOGQ0ZDg1M2FlZjQwNDg0ZjEzZDk3YTVhNTgyNWZhMWJiNyBsZWdhY3ktdHJ1bmsKKzE4NTkxIGQzYzdlZDE1Y2UyNTc3OGViOTUxMWZiZjEwNzFhODNkODRmZjY1ZTcgbGVnYWN5LXRydW5rCisxODU5MiBhMDY0MTU5OTRjYjU2YTc4NmY2MWY1ZTEwMzAwOTQ1NzRiZGE3YTAzIGxlZ2FjeS10cnVuaworMTg1OTMgM2FkMzAwNGRmZTZkYjZkOWQ0M2E4NjY4Mjc3NTRmYjIwNjAwZjMyMyBsZWdhY3ktdHJ1bmsKKzE4NTk0IDAwYzY4NTVkNzQyYThkMmE1MTg4M2Y2OGU3OTRlN2NlYjhhOTZhM2IgbGVnYWN5LXRydW5rCisxODU5NSAzMTdjMjAzYWJlZTY4NmNiNmJkYTI4N2FiZmExZDUyZTk5ZjBmZTNmIGxlZ2FjeS10cnVuaworMTg1OTYgODVkYzBjZTAxNjJlNmYzY2U2NTY0NDNlMGE0NjQwZTZiODllN2UxNSBsZWdhY3ktdHJ1bmsKKzE4NTk3IDYxMjRjZWRmODQzOGRjODZhMGY4Mzk1MjQzZmM5NGExNmYzNmJlNjggbGVnYWN5LXRydW5rCisxODU5OCAyNzI5MGViOWM1MjY0YjA3Yjk1YzVjOWRjZGZmY2Q1NDZkOTFmMzA4IGxlZ2FjeS10cnVuaworMTg1OTkgNzZjYWYwODU1ZDFmZmU3ZTk3MWJjMTEwMmNhODkyOTBhOTljZjgzZiBsZWdhY3ktdHJ1bmsKKzE4NjAwIDk3ODIxYTQ2ZTAwMDMwM2E2YjgyYzA5MjMxNjFmZTBiYzA1ZmIwYzggbGVnYWN5LXRydW5rCisxODYwMSAwYTc3MDEzYzUwYWNhMjA0NWIxNDg4NGY1ODMxODA3NWM3N2QzMTkyIGxlZ2FjeS10cnVuaworMTg2MDIgOWQxNWJhZjcxNDVhZmYyZTUwNWMwZjJiM2JmNDVhZWRiYjFkODg5NCBsZWdhY3ktdHJ1bmsKKzE4NjAzIGFiYjk0NjA5MzE4ZTZjNDM0MDQ3N2QwZjIxNmIzYjYyMjNhNDY3OGQgbGVnYWN5LXRydW5rCisxODYwNCBiZjgwODY2ODI0ZWNiNWVmOGE3OGM1OWEzODg4ZWMxMTk3MDBjM2Q5IGxlZ2FjeS10cnVuaworMTg2MDUgNGMwNDNlMjI3YzQ0MDdlYWRiMDlmMWYxYmQzODg5OWZkZjI0ZDRjZiBsZWdhY3ktdHJ1bmsKKzE4NjA2IGY1YzA0MTM0ZjRlMmJkN2FkM2E5ZGM4YzVhYmNhNjdhMDNiMTkyZjQgbGVnYWN5LXRydW5rCisxODYwNyA0ZGJiZjMyMmE5ZGYyY2ZiYjU1ODkwYWM0MTVhNDNiNmNmMmE2Yjc1IGxlZ2FjeS10cnVuaworMTg2MDggZmEzZjUzN2M4MjQ5YzQ0YWFmNjYwNTU2YTVhMWVkMzIyOWUyNzA4MCBsZWdhY3ktdHJ1bmsKKzE4NjA5IDc5ZjllMzMzMzE2ZTZiY2RlMmIwOWFjMWMwN2FlNDU5N2E2NWQ4ZTkgbGVnYWN5LXRydW5rCisxODYxMCA3N2M3NjFjZDEyNzJlOWIwMzA0M2JlNWEyNmFiM2Q2NDM2Mjc5MmUzIGxlZ2FjeS10cnVuaworMTg2MTEgZDY3Y2ZjYzA2ODNlZGE4NGZkMTY0MTU1NWJiOGUwMTk1MmU0Y2Y2MyBsZWdhY3ktdHJ1bmsKKzE4NjEyIDkzOWI4ZmZmYzQ1MmUwNTI1YjM4MDA2MWI2MzI4NjhkMzU1ZTZlOWQgbGVnYWN5LXRydW5rCisxODYxMyBjMDgyMmEwNWU5MjNiNmY1MDA5NGQ4NTkwZDQyNDBlYTgxOWZkOGI1IGxlZ2FjeS10cnVuaworMTg2MTQgOGQwMGY3NTU1ZWVjMjc4MmY4NTBjYTBmY2ZiOTg2NzBmZjNhZmViOCBsZWdhY3ktdHJ1bmsKKzE4NjE1IDdjOGZhYzRhYzMxYWJkNThjOTMxYmFiZTI2ZmUzYzA5ZjAwNDNiMTcgbGVnYWN5LXRydW5rCisxODYxNiBhNDNhOGExZjQ2ZWUxYmI2NWM3NDczYmM5YmU2OWUyYTNmYjUzNjBjIGxlZ2FjeS10cnVuaworMTg2MTcgNDU5NzljZGNkMzY5NzM5Y2JiODU5YTg1ZjVmNmM1ZDY1NWE0OTQ3NSBsZWdhY3ktdHJ1bmsKKzE4NjE4IGE5ZTE1YmNhYjMyY2I2MDEzM2RiNzYxMGYwMWIzZDI2ZTljZTE1MmMgbGVnYWN5LXRydW5rCisxODYxOSBhMWQ4OGFiMDIzYTBiZWNkNWRlZmE1MGI4YzM1MzZmMzRjZTFlNzI5IGxlZ2FjeS10cnVuaworMTg2MjAgYTMxYzM4NjhjODEyZmNlNzY2NmQxMjRiOGNiNTQ0NWY2ZGVkZmFjMSBsZWdhY3ktdHJ1bmsKKzE4NjIxIGE1NmMwMDBlNTc5Y2Y3ZTQzNTY3MWVmY2I4YTc1MjM3MzhmNTI5MDAgbGVnYWN5LXRydW5rCisxODYyMiA5NWVlNzlkZmQ3NDYyMzE4NjdkNzM4NGViMGIwMzdhNGZhNTEwNDgxIGxlZ2FjeS10cnVuaworMTg2MjMgZGVmNDE2Y2Q5MjNkZjIyYThiMWFmZGE0MGM0Y2E2NDlkODY5MGQwYiBsZWdhY3ktdHJ1bmsKKzE4NjI0IDM1ZTA4ZGQzN2RmMTM3ZTE2NTI4NTY4MDVlOTM5NWMyZWE2Y2ZlMjYgbGVnYWN5LXRydW5rCisxODYyNSA3YjNmOGU3NjFhMmQ4MmRiMzc2YzI4MzMwNzhiNDg1OWRlMTM4NWNkIGxlZ2FjeS10cnVuaworMTg2MjYgNmQ4ZjdlMTI0MmMwMjlkODE2Mjg5OGMzMWQ2NjQ2YTA1YjIwM2QyNyBsZWdhY3ktdHJ1bmsKKzE4NjI3IGQ2ZTZhNWNmZWIzZDZiN2QwMWFlNWZlZGU2YzQ2OTdlYzQyODM4MmIgbGVnYWN5LXRydW5rCisxODYyOCA4NzQ1ZmIzYTExOTE3MmFkOGViM2Y4MDRmOWEwNzEwZTBmNWZiZjgzIGxlZ2FjeS10cnVuaworMTg2MjkgZTc5MWY0OTA1ZDI1NjFjMjdmZGExNWRhMzJlMzVhZDcxZjJiNzBjNCBsZWdhY3ktdHJ1bmsKKzE4NjMwIGZiMTQzZmIyMzZkMGFmNGI2NTRmMjEwZmI2ODhhZmViNGJlODNmOWMgbGVnYWN5LXRydW5rCisxODYzMSAxOGE2ZTZkOWI0Zjg4YmVmMzlmNjM0ZDRiZTdjMzUwNmMwMjRlYzI0IGxlZ2FjeS10cnVuaworMTg2MzIgMDg2OGMzNjFhZjVhZmRhMmZmMmFjZTM5MDEzNjc5MzY1NzJlYzFiNyBsZWdhY3ktdHJ1bmsKKzE4NjMzIGVkYjk2NjZjMDdjMDRhOGY5ZTg3OWNjM2E5YzQ1ZTVmMDkyMDRmYzYgbGVnYWN5LXRydW5rCisxODYzNCAwNzZiYjI5YTY1ZGM0YjA5M2NjYWMzMjg3YjAxODQ1YTk0MzlkMGY3IGxlZ2FjeS10cnVuaworMTg2MzUgNWQ2ZmI3ZmY2OGM3OWE2OWZjZTQ0YzA0YjEzY2FjMGNmMTQ3M2MxMiBsZWdhY3ktdHJ1bmsKKzE4NjM2IGU4YWFkODQyNDczYTRhNWRiYzE5ZjVkZTc4MDcxOGVmMjQxOWNiNTcgbGVnYWN5LXRydW5rCisxODYzNyA0MzcwZmMxOTY5N2U0YTk2OTMwZGUwYjljODc5Njg5ZTBlNWNlMGE0IGxlZ2FjeS10cnVuaworMTg2MzggNTA3NjU0NGMzMzhiMTM5ZGI5YTZjYTA4MzljNTBhMWEzOWMzYWQ5YiBsZWdhY3ktdHJ1bmsKKzE4NjM5IGI1YTM3YmY5ZDEyZGE3YTIxMTQ4ZTI1Y2E3YWY2NmNlZmFhMDc4ZjEgbGVnYWN5LXRydW5rCisxODY0MCBjNjY5YzI5ZDFiOGNkZjliZGQ4MGEyODNhZWFiMGI3OTIxNGUyMzIwIGxlZ2FjeS10cnVuaworMTg2NDEgZDY0NmQ2MDY4OTI0MzBkMTYyMjJjNWYwZmY1ODRmYzBlZTAzNmEwOSBsZWdhY3ktdHJ1bmsKKzE4NjQyIGIxYzU3Nzg0ODBhMTlmOTU2MzdiMGVlMTg0M2VhNzVmZDMwYTg5MjIgbGVnYWN5LXRydW5rCisxODY0MyBhYjUzNTI0NDQyMDU3ZWRhMGUyMjhmODJjYWUzMGY0OTc5YWQ2YmM2IGxlZ2FjeS10cnVuaworMTg2NDQgZmNhMmNmODUwZTRhY2YxMjJiNGUxMjAwYTJlZmRjMGIxMzUzYTJjNyBsZWdhY3ktdHJ1bmsKKzE4NjQ1IDc4YzRiNjNiNWI5ZDM1NGY3MmUzZDY5ZjQwOWQ5NjM5ZTYxMzJjZTcgbGVnYWN5LXRydW5rCisxODY0NiBlZmYxMWZhYzVmMzYzOWE5OTFjMjQxMjZhZGU1ZWM2YjQ2NGRlOTRhIGxlZ2FjeS10cnVuaworMTg2NDcgODNlMTQ2OTc0YjcyYTRhOTdmMjg2MGIyMmY1Mzg1YzA2M2Q5OGM5ZiBsZWdhY3ktdHJ1bmsKKzE4NjQ4IGIzMWEwNDZmODhhNzcyNDEyOWVkYTU4M2NhN2Q4NDM5ZGUwYjhiZGMgbGVnYWN5LXRydW5rCisxODY0OSBkZGQzZDhjMmNjYTA1MjhhOGFkNTI5NDdlZmUwZWQxZGJiMWFmOGVmIGxlZ2FjeS10cnVuaworMTg2NTAgOWU5NTU2OTI0YjBhNzQyMWU4Y2JiNDQ2N2JiN2QzZWRkMDhjOTJhMyBsZWdhY3ktdHJ1bmsKKzE4NjUxIDFkYjNjYTk1MzBjMjg2M2RlN2JmYjBiZDA5OWQ3ZGYxYjZmYzUxODQgbGVnYWN5LXRydW5rCisxODY1MiA0ODU0ZWU1ODVlMGRmODgxYzgwMjU2MDg1NmI2OGQwZDI0YmQwYTYwIGxlZ2FjeS10cnVuaworMTg2NTMgMDEzMTc5Mzc2ZmEzNWU1M2UwNjBlZTU3MGY3OWUxMTU1MGNhZDA5ZiBsZWdhY3ktdHJ1bmsKKzE4NjU0IDBmZGZhYWVhNWUyZjkwMzFjZTMwMWE4MThiYTNhMGUxOWNmYmU0MzkgbGVnYWN5LXRydW5rCisxODY1NSBiN2Q1ZjY4YmUwMTdmNGM4MDM5YmI4NTdhZmJkYjE5ZDkyZjJhMTk5IGxlZ2FjeS10cnVuaworMTg2NTYgNjNjMDQ4M2VmZjY4ZmY4ZDIyNzQ0OTY4YzVmZDY4MjhjNmIzZjg4YiBsZWdhY3ktdHJ1bmsKKzE4NjU3IGI1N2UzZTM3NDMxNGUzNTNiNWE4NzBhZWU2ZjdkNzQzN2JhYzU0MjUgbGVnYWN5LXRydW5rCisxODY1OCBlZGQxOTIxN2IzOTY5NWRhOWJhNzY5NzZlYjdjYzg0NmQxMzI5NjUwIGxlZ2FjeS10cnVuaworMTg2NTkgZDAyN2U4NWUyMDlmN2Q4NGQxOWRmYzhkZmQ1MzE0MDY0MWJjMWY2MyBsZWdhY3ktdHJ1bmsKKzE4NjYwIDVhMzA4YTlmOTlhNTY2NDdmZGIzYzJkM2E0MWNmODI0Y2VkNThhMzcgbGVnYWN5LXRydW5rCisxODY2MSAzYTI2MDI3NGJjYzZhMTViNGVjNjcwMmY4YjEwYzMxMzlkN2E5ZmI5IGxlZ2FjeS10cnVuaworMTg2NjIgMjI4ZmZkMzZhMGRkYzczOWUwYjc5M2E0NjA0ODRmYTY2N2EwMGEzZSBsZWdhY3ktdHJ1bmsKKzE4NjYzIGViMTc2N2IwNjhmZWMyMjc2ZjczMmE5MjhlNGQxNmQyNmM0MTE3MDkgbGVnYWN5LXRydW5rCisxODY2NCA5YjY4MTRiZmIyYzBkOWY1MzIyMzk5MjgxY2U5YWNhYjExODM2ZmM4IGxlZ2FjeS10cnVuaworMTg2NjUgMzc4MTlhNzc3ZmMwYzQ5ZWY0MzBlNDdhMGNhM2QzZDc5MTYyNmZhMyBsZWdhY3ktdHJ1bmsKKzE4NjY2IDU0MTU4MDRmYjM0NWM2OTIyNGJmZjE3ZjkxZmFmZDg1YmJhYzM4ZGUgbGVnYWN5LXRydW5rCisxODY2NyAzYjliOGYyZGRmZTc5NmJjZDg3MzA4MDk0ZTk3ODJlZDRiMzhkYWQzIGxlZ2FjeS10cnVuaworMTg2NjggMjJmZWQyYjE1YTU0YjJiNWMxYTU2ODRhYWZhYjc1ZjZlMjM1YjJmNSBsZWdhY3ktdHJ1bmsKKzE4NjY5IDM3ZDEyMDIxZGYwNTExMzQ1OTc0MWI4MmY0NTMzZWJkYjY4MTI0YjUgbGVnYWN5LXRydW5rCisxODY3MCBmOTc3MmY4N2IxM2UzZDBmY2U2ZGE1ZjdiYTI1MDdmZWRkNjhiYjY2IGxlZ2FjeS10cnVuaworMTg2NzEgOTU0NjExZmQzNWUxZTk0MGQ0NmNmMTI2ZWJjMWJhNzFhNGY5MzhiOSBsZWdhY3ktdHJ1bmsKKzE4NjcyIDFhMDBkMjE5MTBjODlmMWIzOGIxMmE4NjUzYzFhMjYyZDZlNTc5OWIgbGVnYWN5LXRydW5rCisxODY3MyBhNTYzZWVjNDZjMWFiZTkxZjZhMTNjMDBhNjE5MDAyMzE2YzE5NjIzIGxlZ2FjeS10cnVuaworMTg2NzQgMDY0MDI2ZGM3NjRlODllNTBlN2E4MGFhN2IxZWZkYWQ0ODMwNWYwOSBsZWdhY3ktdHJ1bmsKKzE4Njc1IGZhYWY5ZjEwZDg0OTQzOWU3OTEzYzlkNDUyODYwZDM0M2MzMjQ3YzEgbGVnYWN5LXRydW5rCisxODY3NiA4NjhkMmFjZjc0NTgwOGM5MDMzZjU3Y2Q1ODI5ZDk3YTY5ZWNmNTZlIGxlZ2FjeS10cnVuaworMTg2NzcgYzY4YjA2MjQ5ZDhhMjE0NjdhN2FlNTNjNWYzYjZjNGJlYmFkOWEwNCBsZWdhY3ktdHJ1bmsKKzE4Njc4IDY0NWY4ZmQ2ZmE5ZGNjNTk5NTFjYzJkMjlkMjY5ODA1Mjg4ZjA3ZTggbGVnYWN5LXRydW5rCisxODY3OSAyZDM5OTA2NTYyNDgwMDQxODI2MGVmN2Y5ZDQzYmNlYzk4NTUyNmMxIGxlZ2FjeS10cnVuaworMTg2ODEgNzk3NzBjYTE1YzVhOWY1MjkxNGIxNjJjYjkwMWU1ZTRiM2VlNzBhMSBsZWdhY3ktdHJ1bmsKKzE4NjgyIDMzYjQ0NGNiYWRiOTkyYTdlNTcyOTFiYjllNzUzOTEzYjg3YTZiZWQgbGVnYWN5LXRydW5rCisxODY4MyAwZjIyZmViOTM5N2RiOWIxYjgwN2ZjZTYwNGQ3Zjg2ZDk0YTA2NzhlIGxlZ2FjeS10cnVuaworMTg2ODQgYzdkZmJhMGRiODc5MGIwMDRkMTFmYmMzYjViYTU1NzFmYmQxNjVmNiBsZWdhY3ktdHJ1bmsKKzE4Njg1IDk4MjE3NzdmOGRhZDZjMGY0NWYzMmRiODM1M2VhOTkwNzFkY2ZmZjggbGVnYWN5LXRydW5rCisxODY4NiA3ZjdlZjk0NDdlNTlmY2E0YjhlMjBhNTJiZGQzMTUzMzU3ZGZlYjA0IGxlZ2FjeS10cnVuaworMTg2ODcgNDMyOGZmZTY0N2JmN2JlYWZjY2RkNzU1ODEzOGVlMmQ4Yjc4Mzk4MyBsZWdhY3ktdHJ1bmsKKzE4Njg4IDE3NDQ5MGU5MjRkNDdmMTkyYmQ5OGZhOGRkMmVlNTNkNjlmNTA3ZjIgbGVnYWN5LXRydW5rCisxODY4OSA4MWRiOTJlODBlYTg4NjNkYjk5OWZjOWVlZWEzNjRmY2Y3MjU1N2Y1IGxlZ2FjeS10cnVuaworMTg2OTAgMDVhZDI5N2UxNDRmZTk3ZGU1MmVlMDJiNzUwNDQ4ODgwYzEyMGNkNyBsZWdhY3ktdHJ1bmsKKzE4NjkxIDkzMDhkYzhjODVlMDM1YzQ0NGI1ZDRmYTdhMjk5MWIxNzQwMTMwN2IgbGVnYWN5LXRydW5rCisxODY5MiBlMDBmNzE4ZTRkOGFiMzk1ZTY4MTk0ZTNkY2NlMTU4ZTdjY2ZiZGE2IGxlZ2FjeS10cnVuaworMTg2OTMgOWEyMzg1ZWUxZDk5NDQ2NDA3NjE3ODU1Yzg0ZDYyNGVlNmJkZDkzMiBsZWdhY3ktdHJ1bmsKKzE4Njk0IDBhZTM4OWU5MzVmYzQxNmViODc0MzdiY2QzNWNlMzkxODgxNDhjM2IgbGVnYWN5LXRydW5rCisxODY5NSA3ZWEzMGExNjM0NjM2ZDhmZWFjMmQ2NGU4YmI1OGMzY2Y5YzJiMTFhIGxlZ2FjeS10cnVuaworMTg2OTYgNmUzMjlmM2UxN2YwZTUzOWE2MjhkODhkMzAzNTZiYTFkNmYyODE1MyBsZWdhY3ktdHJ1bmsKKzE4Njk3IGIxYjBhNzAzZWM0ZTZhM2IwNjczZDEzZDJiM2JmMTU3NDBiNmViNzEgbGVnYWN5LXRydW5rCisxODY5OCAwZTRmNDhjNWZjODRkODgwNjA1M2Q5YzY4NTUzOTA4NjM0N2JkYmRjIGxlZ2FjeS10cnVuaworMTg2OTkgYmIzMDNhNzZhNDc4MzdjZjA0NzI2NmJiNDY3OWU3YjRjYjZkMTU1NiBsZWdhY3ktdHJ1bmsKKzE4NzAwIDY3YzhhYmQyMTAyNWE1NDJmZWE3NjM2Y2M4M2ExNDg4ZTU3MDU3NTUgbGVnYWN5LXRydW5rCisxODcwMSAzYjY0MzY1M2UwNzgyMGJmNTczNWIyNmQ1NmE2NjE3ODUzZWJkODc5IGxlZ2FjeS10cnVuaworMTg3MDIgN2Q1MDI1YmJhMDM3YzZjNGZhNTEwOTFiOTg4ZTU5NWE2NWE5NTUxYiBsZWdhY3ktdHJ1bmsKKzE4NzAzIDE3ZWJhNzQwNDA5OWNlNTNkM2Y1ODYyMTQxYWRiZmUyOTNlMmQxZGQgbGVnYWN5LXRydW5rCisxODcwNCBmNmNkMzY0OThhNTAzZjMxNjUxNjczMTJmZGQ1YWM4NjZhODhjMjkyIGxlZ2FjeS10cnVuaworMTg3MDUgNjAxYzUzYTllNDlkZjFmYjIwYTkyZThmNjQxZjBjNmQyMmUwMzc2ZCBsZWdhY3ktdHJ1bmsKKzE4NzA2IDI4MzM1NmZiNmVmYzc1OWRhYTc5ZDQ1MTU3MTg0NGQwZTIyMjdhNmEgbGVnYWN5LXRydW5rCisxODcwNyAyMTBiYmU1M2I2ZDRhYzc4YmRlYjQ3NDczM2QxYTk0OTNiZTcwODgzIGxlZ2FjeS10cnVuaworMTg3MDggZDQxZjliMGE0MGNhYTYxNDc4OTVlZTRjYTI1NzZhMGVmYjgyYjUxNyBsZWdhY3ktdHJ1bmsKKzE4NzA5IDY3OWQ1MDcwNWUwNjk1ZTExNjZiNDM1MjEyMGJjMWVmNDNjYTc1YzQgbGVnYWN5LXRydW5rCisxODcxMCA0MDVhNTk3MzU4NDE2ZDAyYTQwOTA1ZGY0OTJjYWY2YTQ5YjA0ZTY5IGxlZ2FjeS10cnVuaworMTg3MTEgMTdkM2E2M2UyMmM3NDI4MzkwZjgyMjEyNTdjMmI4N2UzZGZlYzhiMiBsZWdhY3ktdHJ1bmsKKzE4NzEyIGM3MDQyMTQzMzk5ZjMxODQ0YTJkMGEyMjQyMTUzMTIwM2ZjZTQwNmYgbGVnYWN5LXRydW5rCisxODcxMyBhM2MxYTIzNGNlZTcxODQxNGNjMjdjOGNlZWQwZTY4MGJjM2RlZDEwIGxlZ2FjeS10cnVuaworMTg3MTQgMGQ4YjViM2Q5ZDgzZDA2NmNlZDY4MWI5OWUzYTJjZjYyZTZjNzY4ZSBsZWdhY3ktdHJ1bmsKKzE4NzE1IGE4NGI1M2JhOTBjNDFkYmVkY2EzM2NmNDM2MjI3ZWVlYmNlYTZmMDIgbGVnYWN5LXRydW5rCisxODcxNiBmYzc2NTQ2NGIxNzgwMTJjN2NjMmFiOWI0MjQ4MWI3MWJkMGJkNTljIGxlZ2FjeS10cnVuaworMTg3MTcgMTUyZDAwNzE4MDA2MDlkNTBiMGNhNGU5NjJmZWU3YTc3ODUyM2Q5NSBsZWdhY3ktdHJ1bmsKKzE4NzE4IDhjNzE0MDlhYzBjMzk0ZDE5NjY1ODY5OGU4OTU0MWRlNTIyMTVhMTEgbGVnYWN5LXRydW5rCisxODcxOSAwYThkYTZmMzk3Yjc4ZjU4MThkOTA3ODc4NDE3MDlkZWU4YjBkYThhIGxlZ2FjeS10cnVuaworMTg3MjAgODFlM2Q4NjI2YWRmMGY3OTA1NzliYTg5NTExMDQyOTFhYWZlYzJhYiBsZWdhY3ktdHJ1bmsKKzE4NzIxIDMxOTY3YTIzMzYwMDkyYTVjODdmODdkYjA5Zjg0ODJkYmMxYmFhNDggbGVnYWN5LXRydW5rCisxODcyMiAwODNhNWM3NWVkOTA0NTIyMTNiNDg0NjA0NjA4OTYyYjhkMjJjMWE5IGxlZ2FjeS10cnVuaworMTg3MjMgZTdmNmQ1NGMwMTRkMzQxZWU1M2EzNzVjOWY1ZTdhYTEyMjhjMzdkYiBsZWdhY3ktdHJ1bmsKKzE4NzI0IGZjMWU1ODMxZmUxMDc3Yjc4MjFlZTNkNWZmZTA1NThmOTY2NWM2ZWUgbGVnYWN5LXRydW5rCisxODcyNSA3MWIxOWQzNmFhZmE5M2ZlYjAwM2MyMTQwMjc5MDJhNzNkYjcyNTlhIGxlZ2FjeS10cnVuaworMTg3MjYgMWIwM2Y3NmFiMDNlYTc0MjU1ZWI3NTQ1MmI5NmE0OTk1Yjk0YzhlZSBsZWdhY3ktdHJ1bmsKKzE4NzI3IDU1NzhlOWI0MjRkNGFhOGRkY2U1NmVhMGFjZmQyZGMwNGJiZjMyNGUgbGVnYWN5LXRydW5rCisxODcyOCA3MGE1OWUzZmIyNzhiYjUyMGU5NzEzN2JjY2RjNTVhOGQ4OGQ2OWZkIGxlZ2FjeS10cnVuaworMTg3MjkgZjVhM2Q5OGEzNWJjNGJkYzc0YTg0ZmJhNmVlZDg1OWQwZjA3YWQyOSBsZWdhY3ktdHJ1bmsKKzE4NzMwIDMwNjBjYmZhMDFiZTZkZmM2ZmRiODhmMGY1YzEwYjczYmJmYmYwNmQgbGVnYWN5LXRydW5rCisxODczMSAxYTRjMWMwZTE0YTEzZjU5NTI2NWFiNjRjYjE0Y2M0OTEzODY2MWE4IGxlZ2FjeS10cnVuaworMTg3MzIgMDEwZDAzODUzNTQ2NDZmMTU3MDA1MWYxOTM2ZjY1MDc0MzMxZGUwYiBsZWdhY3ktdHJ1bmsKKzE4NzMzIDYyYWVlZmEwMWZkZDU1NGUzMGI1MDVlNWUwMzc3NTRkZTcxYzU0ZTQgbGVnYWN5LXRydW5rCisxODczNCAzNjg1ZWYyYTU1YTQ4ZTNkNmMwMGE5MThlYmFmZjczMGYzYjI0ZGY1IGxlZ2FjeS10cnVuaworMTg3MzUgM2RkMjE3ZmJkZDU5YjFlZDI2ODM3MjE4N2RjODFkOWYxNTgwOWVhYyBsZWdhY3ktdHJ1bmsKKzE4NzM2IDRjMDFlZTBhODA3M2Y5ZGU0OGQyYzBmNTdkOGJhZjhmNWQ2MzcxMTMgbGVnYWN5LXRydW5rCisxODczNyAxOTU1NTdhMGYwNTBiODEyNzJlMmE1YTYxNTdlMTA3MzRhOTIyM2M3IGxlZ2FjeS10cnVuaworMTg3MzggYTMzZGUyM2IzMDY2ZmJjZGJiMjdlOTE2ZjQyZTg0MDg4N2VkODNhZSBsZWdhY3ktdHJ1bmsKKzE4NzM5IDkzZDA1NjdjOWZjOWNiMWYxNGU4MzcyZjExMWYzZjVjYThkMjNlOWIgbGVnYWN5LXRydW5rCisxODc0MCA3NTEyMTVmYTBkYTdmM2MzMTI2NzQ2NWY0Y2QwOTY3NTgxYjJhMDFkIGxlZ2FjeS10cnVuaworMTg3NDEgOTA5OTJjODJkNDZlOWZjZmZjNGY1YWY0NjA4MTE0Y2JmMDQ2ZmIzOSBsZWdhY3ktdHJ1bmsKKzE4NzQyIDNlYTEwZWU5MWU5YzVlNWQ0OTliODRiMDA5OGQxMmE0ZGNlM2ViMWYgbGVnYWN5LXRydW5rCisxODc0MyA0MTU0NjM1MzI1NWM3ZjBhOWI4NDM0NWRmMTBhNDEyOGM1YzRmMTdkIGxlZ2FjeS10cnVuaworMTg3NDQgMTkwZDE0YjcwYzI3YjhmNTUzMjBjNTk5MjQ0MWIxMDFjNDQ3ZTczZiBsZWdhY3ktdHJ1bmsKKzE4NzQ1IGY0N2QxY2JmYmU3MDYzMjRiOWE2ZTNkNjhmM2Y1MjM5ZDIwZWRkZDYgbGVnYWN5LXRydW5rCisxODc0NiA3Y2Q0NmZmODliZmMzYjBlZmZlMThjODk1NGM2ZmM5NmFmZWUyNjg5IGxlZ2FjeS10cnVuaworMTg3NDcgZTZhMGZkNTRiNjA3MmZhODRhMjhlZTU2OTBhMjgwYTNlZTJmYjM2ZSBsZWdhY3ktdHJ1bmsKKzE4NzQ4IGE3MDI1ZjA3MDljNWI5OWY5NTA4YjgyMjZjMTk5OTUwNjE0NGE1ZDMgbGVnYWN5LXRydW5rCisxODc0OSBmODMxMTVlZGYxNmFmNmFkNmI0N2U4N2YwZmVlYzk1YmFjN2JjOWMzIGxlZ2FjeS10cnVuaworMTg3NTAgYjUzMjA2Mjk1YmRmZWY3NTQyNDI5NTJjNGFjMjRmZDkzOTgwMmQwZiBsZWdhY3ktdHJ1bmsKKzE4NzUxIGIwYmE0NmIxNmUwNzUwOTRmYjA0NGM5NWViOTM3ZDU0MmFhNzI0YWYgbGVnYWN5LXRydW5rCisxODc1MiA3Y2JlNDVkNzlhYjVjMGJkMDYyMDcyMTE2ZjE3YjIyZDc5Njg3MzkwIGxlZ2FjeS10cnVuaworMTg3NTMgMThjNGM3Y2E5M2VhMDZhMTljYjMzMTcxYWJlNjFiZjViNTgzYzhiYSBsZWdhY3ktdHJ1bmsKKzE4NzU0IDhlZjMxYTAzOWE5NjQwYTA1NzUxYTEzNjYxMmViZTk4YjU5NjY3MzMgbGVnYWN5LXRydW5rCisxODc1NSA1NTNhMzE1ZjU4ZTkyZmQxMzJkMTRkNmVkOGQ4N2I3Y2M3NThjY2EyIGxlZ2FjeS10cnVuaworMTg3NTYgMWM2YjBkM2E1OGVhZGI1NTY3ZmNjZGRiZDg2MWZjN2Q5NDg0NGM0NSBsZWdhY3ktdHJ1bmsKKzE4NzU3IDg3NjRkZmZiYWYyMzRlMTk2ODdmMjI5ZmM4MWRhNDNiOWQzM2U3NzQgbGVnYWN5LXRydW5rCisxODc1OCBjODdlMmEyZTMzNWQwYTI5MDI2MjViNTJlMWRkZjRmY2YyMTEwZmJmIGxlZ2FjeS10cnVuaworMTg3NTkgYzU2OGJhOWRjMTgwYTJjYTIzMDkyNGY1MTRhMDEyZDk4MzY3ZGNiYyBsZWdhY3ktdHJ1bmsKKzE4NzYwIDgzNjZmY2ZiNjA5MDRjZmI1ZmFmNjgzZDYyNDFjOTUyOGJkMzNhZWEgbGVnYWN5LXRydW5rCisxODc2MSAxNTI4MTRmNmNkMTEzM2U3YjMyYTI3NzZhZmFlNzI0ZTMzNDg4MjJkIGxlZ2FjeS10cnVuaworMTg3NjIgMTEyOWUxNmExMWRmYjM1NzkxN2Q1YTZhOGMxZDE0MjkxOTcxMWUyZSBsZWdhY3ktdHJ1bmsKKzE4NzYzIGNkODNmN2E5Y2RjZDFmMzE1OWU2MzkxYmExNmMxMDZiNjBlYzBhMWIgbGVnYWN5LXRydW5rCisxODc2NCBlZWYzMjFiNmU0MWNlNjYzYzY4NmI3ZmI2Mzk4ZmE2ZmQzOGRlNmU5IGxlZ2FjeS10cnVuaworMTg3NjUgYzlkZGJlMzQwN2ZhNDQwMGRhOWFjY2ZmNGYwN2U3NWUyOWIzODgxYSBsZWdhY3ktdHJ1bmsKKzE4NzY2IDE0OTQ1OGE1NzQwYWYxZjU5NmQ1YWViNzhiOGJmZDE4NWEyM2U2YzQgbGVnYWN5LXRydW5rCisxODc2NyAxM2U1ZWIwMDZlYjMyMWJiZmU0OTM5YzMyYTQxNzRiZGRhYWM1MGFmIGxlZ2FjeS10cnVuaworMTg3NjggNTA4OTBlMzQ1NGM5NTBhODhlYjQzMTNlNTA0YmE2YWU4YTEwNDNiYyBsZWdhY3ktdHJ1bmsKKzE4NzY5IDEzMjViZGU5NDg5NmRkNWRkMzZmODU5ZjE1MTE1MmMzZmQ0MjQ3YTcgbGVnYWN5LXRydW5rCisxODc3MCA5OGU5NWUwZjViZWM3NDVlOWUwMTAyNzlmZTdlMGFmOTY3YmU5NWJiIGxlZ2FjeS10cnVuaworMTg3NzEgOGRiMzE5ZGRmYjM3OWU3Y2Y2YTc3OTgyMTczMTA4NjkxNmVkZTUyOSBsZWdhY3ktdHJ1bmsKKzE4NzcyIGY3ZjNiZTNkMDBiOWM5ZGVkNmM0ZmI2MTAzNGQxZWNlZWM0YjJjYWQgbGVnYWN5LXRydW5rCisxODc3MyBhOGVkYjNmN2Y0ZjgzYjk1YTA1M2JlZDA1NDEzNWMxOTNmMDFmMDZjIGxlZ2FjeS10cnVuaworMTg3NzQgZTgyNDY0NDBhODI1Yzk0ZGVhOWFkMjc5ZmY2ZjZiYmJkMzE0ODM2NiBsZWdhY3ktdHJ1bmsKKzE4Nzc1IGQ3ZDE2NjU1MGM0MzM5ZmFlZjk4YmIyMTk3YWMyM2U4N2MwODYyZWIgbGVnYWN5LXRydW5rCisxODc3NiA4OGExMjY3YTMzOTVlYWYxMzNlMTk4NDkxNWIwMmQ2Y2ZlYzg2NzQ2IGxlZ2FjeS10cnVuaworMTg3NzcgMTg1MTFlMTEyODcwMGQxZWQ1YjhkNjkyZTliZmFmODJhMGJmZWQ1MyBsZWdhY3ktdHJ1bmsKKzE4Nzc4IGFlNjM2YjhhYzQ4MDhkZjRiYmE5Y2ZhYmI5NDgyMTEzMzk2M2ZmMGUgbGVnYWN5LXRydW5rCisxODc3OSBhMzgxOTBmNzFiZjJiNWY1NzdhYjUyMzNkMGZlNTI0ZTUzODFlMzMwIGxlZ2FjeS10cnVuaworMTg3ODAgYmE2ZDRiNTIxODBhNzdmZmRjNjYyMTMwZTJiNTYyODIwYTc3YWJhMCBsZWdhY3ktdHJ1bmsKKzE4NzgxIGJlMjU3YTc1NTNhMjI3MTY2M2ZiZDEwNWQzZjE2NjZkMmU0OWUwNzQgbGVnYWN5LXRydW5rCisxODc4MiAwMDdmN2ZhZjYyYjIwMzE4ZjI3ZGEwZGIxYjQ4NDE5NmQ0MzM1NDVhIGxlZ2FjeS10cnVuaworMTg3ODMgNDg5NjkyZTc5MTUxNDMyMTQxNDgwZTFjYzA0ZWU4NjJmMDBkMzU3NiBsZWdhY3ktdHJ1bmsKKzE4Nzg0IGZkYTlmODZkYzRlODQ0NTVkYjkzOWI1NmI3MDEyMGRiY2M4NDE4YmEgbGVnYWN5LXRydW5rCisxODc4NSBmZjZjMzBlOGNhNzNjODY5Y2ZiZDEyYzQ0MGZjOTBkZTkwYjRmZTQzIGxlZ2FjeS10cnVuaworMTg3ODYgNzAyZWQ5OTY1MjI4YmIwN2I2MGE3ZjdmMGE1MGU2YTYyNmUzMjRhZCBsZWdhY3ktdHJ1bmsKKzE4Nzg3IDlkNWJlZWQwYjkzZmRmMzVhY2YyMTE5NWY1NmE5YmY0ZDRkMzdmMmIgbGVnYWN5LXRydW5rCisxODc4OCBhYzEzY2VmNDIzYzgzM2Y1ZDEyNzk3MjMyMDMxNTEzNjk0MTUyNDc4IGxlZ2FjeS10cnVuaworMTg3ODkgYzk1OWY0YjNlZmExMWFlNDlhMzE3OTZiOGFkYWVlMmIyNzFlZDg1YiBsZWdhY3ktdHJ1bmsKKzE4NzkwIDE4NzJlNjA5YTYzNGMwMmMxNDNiMTg3MDc5YzViNTJjNDQzZTFjZmIgbGVnYWN5LXRydW5rCisxODc5MSBhNDg0NTkzY2Q0MDdlMWM2NjE1NzRhMDcxZmIxZmZhMTg2NzUzZDg0IGxlZ2FjeS10cnVuaworMTg3OTIgMTRhMjdhY2M3NTVhYjQzNDFmYjc3Y2M4YzY2ZDllZTQyMjcxMGEwYiBsZWdhY3ktdHJ1bmsKKzE4NzkzIGRjM2I5YTU4MTY4NmNkOGM0YzRhOTJkYWJiMjFhNDZlMjQ4NzI3NDUgbGVnYWN5LXRydW5rCisxODc5NCAxODgxYjk2ODk4OWI4OGRhNzNkYjg0NjUwNTM3NDU1MDU2ZDZkZDFkIGxlZ2FjeS10cnVuaworMTg3OTUgMzVhNDE5NGY5ZWFkOWI5NmZjNjNmNTIyMDFlZTcyMjU5OWZhNDMzNyBsZWdhY3ktdHJ1bmsKKzE4Nzk2IGIxYTVlZGI4MGY1Y2ZjZWNiNWIzMTZiYTI2MTQxMTg3MjM5YjRlY2IgbGVnYWN5LXRydW5rCisxODc5NyAwYjBmY2UxNGQ0ZTg4MjZiZmM2YmNhYjMxZGM4Yjc3NDkxNTc5ZmVkIGxlZ2FjeS10cnVuaworMTg3OTggYmVjMGY2MWNmY2Q1NmUwNjM0ZGI3ZjdlMzE0OTgyYTQ0ZGM3ODYyOCBsZWdhY3ktdHJ1bmsKKzE4Nzk5IGQ5ZDBkY2I3MzVkN2Y3YWM0NTcyNzVkMWMxNTA3YTAxNGY4ZDZmYmIgbGVnYWN5LXRydW5rCisxODgwMCA4ZmQyMjFhZWQzNTc1OWJmMDlkZWI4MzYyMDQ5YWI3MmNmNGMwODM3IGxlZ2FjeS10cnVuaworMTg4MDEgODY3YTRhNmU3Y2RhODc3Zjg3YjZjZTAwZDM3NWY4MjhjNmI0OWUxYiBsZWdhY3ktdHJ1bmsKKzE4ODAyIGVhNDY0ZWRhNjE1ODRiODk4OTQyMzA1ODVkMWEzNDQ0NmIyNzM0YTggbGVnYWN5LXRydW5rCisxODgwMyA1YWJhZTc5NTc0MmVhOTY5MzdkZmViMWJlZDI2ZTg2M2QwMDUwZTM0IGxlZ2FjeS10cnVuaworMTg4MDQgNjQzOTBjZWFhYzFhZjljZjk2OGZjMDBmZTQzMTY3NWY1OGQ4Zjg1OSBsZWdhY3ktdHJ1bmsKKzE4ODA1IDViMDYzYmFlYmVmOGM2ZDU3Y2Q5NGZkZjFlMDUwZTIwOGViNTIwODkgbGVnYWN5LXRydW5rCisxODgwNiBmNDY0YTAzYmU4NWFlNmQ5MTJhYWJlMGQ1NTM0ZmExYWY4Njc5ZjFkIGxlZ2FjeS10cnVuaworMTg4MDcgMmVkZjVlZDMwNTgzOWIxY2NmMjU0MTE3M2U2MTg0ODdhNDQ3NGQwYyBsZWdhY3ktdHJ1bmsKKzE4ODA4IDRmNjIxNzA4NTE0YjFhYTVmMjFhMDYxMzEwNDEyNTllZmJjMDA5ZGMgbGVnYWN5LXRydW5rCisxODgwOSA2YTg1MjQ4YjQzOWVhYTNkOTA4ZWMxM2M2MmUwOThiMDJlYTZiNTM1IGxlZ2FjeS10cnVuaworMTg4MTAgM2JjMjQ0MDQyN2QzMzFjZmQyMTdhOTBmNjVkNjM2ZmZlNzA0MzhiMCBsZWdhY3ktdHJ1bmsKKzE4ODExIDc2YWQyYTlhM2U1MzRlMWMwNTY0YjQ2MzM1MzM5YWRmNWFkYzIwZDcgbGVnYWN5LXRydW5rCisxODgxMiBmMmUxMzg5NWJkYTdkZjUxODA3NzE2ZmQwYWUwMWNkMGVhNWMwOWJiIGxlZ2FjeS10cnVuaworMTg4MTMgZGIyNmI0M2M5MjRmMzBkY2EwNzRlYmRiNzM1MjQ1Mjc1MzExN2U4NiBsZWdhY3ktdHJ1bmsKKzE4ODE0IDFmOTJkNjNiMjBmMDIzMTA3ZmE1OWVlZjQwNzk5Nzg0ZThmZjYzMjkgbGVnYWN5LXRydW5rCisxODgxNSA4MzQ5YjRkZmM1MWFkZTYzZDI0ZmM5YzBiMjcxZjIxZmYxN2NlNTMwIGxlZ2FjeS10cnVuaworMTg4MTYgMDFlYWU0MDg1N2Q4M2RiZTU5YWVmODM5YTg2ODNmOWVkZjRhNjczOCBsZWdhY3ktdHJ1bmsKKzE4ODE3IDI4M2EwYjJhYWRjNWYyYWE5NGFiZjNmYTZjYzYzYjc0NmVlZWNmZTMgbGVnYWN5LXRydW5rCisxODgxOCA4NTdhYWQ4NDJhZTdkOTlkMTI4MmYzMGRmZjA4Y2VhZmNjMDk4MzNiIGxlZ2FjeS10cnVuaworMTg4MTkgYzFhOGRlYjE1ZjBlMDY2ZWUxYTEwYTE3MzQyNzYwNzBhMGJmMzFjYiBsZWdhY3ktdHJ1bmsKKzE4ODIwIGM4MjA1NTUyZGRlMWViNjhkZTBjOGJiNWY2NTZhOTQxYTkwOThlMDYgbGVnYWN5LXRydW5rCisxODgyMSBmZGEzZmYxOWQxYzRhOTY5ZWE2NDg1NGVmMjQzZGNjNWRiN2IzMjExIGxlZ2FjeS10cnVuaworMTg4MjIgZDczYjIxZGFlMjlhMmVlODk4OTNkMDRhOTY0ZjM5MmFjMGVhNGFhMCBsZWdhY3ktdHJ1bmsKKzE4ODIzIGMwMDAwYmQ2MjUyYzY4MDMyNTA0ZDE0ZjIxNDczNWE4MTYxMGJiNWIgbGVnYWN5LXRydW5rCisxODgyNCBmMTc1MWFiZjc3MWZmYzRhY2I2MTE5OTYzMmMyYTE5NzVlYTk0NWRkIGxlZ2FjeS10cnVuaworMTg4MjUgY2YxN2EzY2U1Mzg3NDNlZDIzYWYzMmFlNmQwY2FhNWE0NzE1ZWU1NyBsZWdhY3ktdHJ1bmsKKzE4ODI2IGRjOGEzMGI4ODg3YzgwNzNiZTVhN2QyMmQ5ZTgzZTc4YzU1M2JlNjQgbGVnYWN5LXRydW5rCisxODgyNyA1YWJiNDczMDRiYzc2ODVlNjkwYzVkZTA4MjlhNWY5OWNhMjMzZGMyIGxlZ2FjeS10cnVuaworMTg4MjggZTU5YjgzNWFkODlhNTJlY2Y5NzFjMjRlNWNjMWYyNjRkZTliMWE4OSBsZWdhY3ktdHJ1bmsKKzE4ODI5IGRjYWUzZTA4ZDg0ODQ4NTczYzJmMmJjOTc0NDRlNzdkOWIzYzdmNGYgbGVnYWN5LXRydW5rCisxODgzMCA1YmJhODVkNDllNWFmOGI2YzI5NGQ0YWExOWZmYmEyYTc5MTA1OGQ5IGxlZ2FjeS10cnVuaworMTg4MzEgZTIxZGE4NGQwYzY1ZjBhMTAyNDI0ZWQ4ZDg2OGM3Nzk1ZDE0ZDRiZiBsZWdhY3ktdHJ1bmsKKzE4ODMyIDc3MDA4ZjA3Y2UyNWRhYTAzYzQ3MjgzN2E1YWFlNjc3YTRiMTM2NjcgbGVnYWN5LXRydW5rCisxODgzMyBmZjljNzliYmMzZWVkMWIyMTU2ZjdhMmU3NzdiNGRjNGQ2MjM3MDE2IGxlZ2FjeS10cnVuaworMTg4MzQgODg5YjdiYWY4YmJiNGIzYzlkZDIwMzZkZDU4ZDRhOWRhNzg0MTc2MyBsZWdhY3ktdHJ1bmsKKzE4ODM1IDcyMTM5MjYzZjhhNzk3NTJkMjMxZThkMzk5YzA0NDZhZDUwMDk5MzYgbGVnYWN5LXRydW5rCisxODgzNiA1YjkxMDNlNjJmYWMzZGE0Y2YyODI1ZjljM2E3YzYzZmFlZGRjOTBiIGxlZ2FjeS10cnVuaworMTg4MzcgNTQyMDU4MjhiMWUxNzNjNmY5MmU4ZjJkOWEzMzQxZGM4MjYwZWYyZSBsZWdhY3ktdHJ1bmsKKzE4ODM4IDUxZmM0NTI3NmE0MzNkN2EwNWI1MzM3Y2RiYTY3OWE5ZWQzMDJmMjYgbGVnYWN5LXRydW5rCisxODgzOSBmMTY1NDVmNTgzNDU2MDhiNWFkY2U4NDM3MzQ5MDdjYzQxMGYxMjM3IGxlZ2FjeS10cnVuaworMTg4NDAgMjRkYWZiYjBkYjU4ZjY2MmU1ZTBlM2I3MjEwYWZlODc2YWI0YzRlMSBsZWdhY3ktdHJ1bmsKKzE4ODQxIGEzNmE0OTMyZTM5OTEzNWMxNTQwNGQ2NTc2YWI5ZmZlNWI4MjVkNmEgbGVnYWN5LXRydW5rCisxODg0MiBhZmFlNDA2OGQyZGQ5ODgyOGYyM2M2NDM5NDZkNTJkMmRkMGNiMjg0IGxlZ2FjeS10cnVuaworMTg4NDMgZDFjYjQxMzhmZDM0YTRhOTY5NzUyMDc0Yjc3MDI4NWVhZGJjZjVjYyBsZWdhY3ktdHJ1bmsKKzE4ODQ0IDkxMzA0YzRjNzI1NmY4M2Q2MDI3NWNhMzhjZTVhODU4NjYwMzA1YjYgbGVnYWN5LXRydW5rCisxODg0NSAyYjI5MzE5YWU2ODE5NDAzZWYwMzNjMThmY2IwMWZmM2RmMzgwYzdjIGxlZ2FjeS10cnVuaworMTg4NDYgNmMxNzUxZjZhZmUyM2UwZGViNDM0YjQ1YWZiNGI1NDAzMjc0OWRlMiBsZWdhY3ktdHJ1bmsKKzE4ODQ3IDE3ZjIzZjhjZDhjNzdmMmQ1OTU4YzUzM2FmYTgwMmMwNDhkYjYwMDQgbGVnYWN5LXRydW5rCisxODg0OCBiZDVhZWU2YjgzOTBkNGRiMjIwZjM5M2M3MWIyNDBkYTNiZWNlYjhkIGxlZ2FjeS10cnVuaworMTg4NDkgNWZiODY1MDc1MTljMDlkOWFkZWNjYzFmYTJjNTU0ZTY5NDcyZjY2OCBsZWdhY3ktdHJ1bmsKKzE4ODUwIGFlMjlhODliNzdjM2ExMjY0ZGU4NTNlMjg3ODNjNmNjYmEwN2JlZjAgbGVnYWN5LXRydW5rCisxODg1MSAxZjFlZmYwODFhMmE3NTEyZTgyMmQ5MDA0ZTM4ZmI4YWY1MDljZjNiIGxlZ2FjeS10cnVuaworMTg4NTIgM2Y0YjYwMDJjMDdkMzEzZGE2MzczYzliNWI5N2UxZGI2YjFiYWQ2MCBsZWdhY3ktdHJ1bmsKKzE4ODUzIDYyMDg0Y2Q5NTdiZDZkNGQyNDgxZjU2N2FiZmFkNmQyNDE0ZGM5ODYgbGVnYWN5LXRydW5rCisxODg1NCBhYWNiYTM3NDc2ZDQyNmVkMmNhNjVkMmI5ODZiMmE3YjAzODU4MjkyIGxlZ2FjeS10cnVuaworMTg4NTUgZWFlMjYxMTc5ODZmYTRiOGIyMjI1ODE5YjQ1ZTc1ZjkxMDYwODcxOSBsZWdhY3ktdHJ1bmsKKzE4ODU2IGY5YTE1YTU4M2M3OWQ5YTYxOTA3NWQyM2FmODg2MGU1N2NlZjM5ZDQgbGVnYWN5LXRydW5rCisxODg1NyA4ODMyNWI3M2E2YTNiMTI5NjZhOGUzY2U4NDZmNzA4NGMzYjk0ZjU0IGxlZ2FjeS10cnVuaworMTg4NTggYzUwM2ZhOWIyNjVlMjJiZTJlNTVhZDRhNWNkZDI5ZWU5NzE0MDYxZCBsZWdhY3ktdHJ1bmsKKzE4ODU5IDY5NjVjMjA1YjYwMzY0ZmU4OGZlYjk1MzZhOGVhODQyZGI1ODgwMWMgbGVnYWN5LXRydW5rCisxODg2MCBmMzkwZjQzYWM0YjY0OWE5YWE4MzNmYmVhMmEyYzU5YjdjMGI1MWMzIGxlZ2FjeS10cnVuaworMTg4NjEgMWRjMDJiMjI5NWE5NzQ2OTVlYzRhNmQ0YWMyZDkzZGIyOGQyZDkxNSBsZWdhY3ktdHJ1bmsKKzE4ODYyIDNmNjFlZjcyYWVmMzUwNmUyN2M0ZWRhMjBiMjVlMmFjYzQ0ZmM2NTEgbGVnYWN5LXRydW5rCisxODg2MyBmMzc0MDY3NGFjNWJmMzI5OWVmZjk1NmFlOGZhMjk3MWE2Mjg3MTZhIGxlZ2FjeS10cnVuaworMTg4NjQgZTFlNzZmZTNjYjUzYjE1MjVlY2I1YzdjMDg0YmI3Y2M5YThkMzM1ZCBsZWdhY3ktdHJ1bmsKKzE4ODY1IGU4ZWUwNzg1Yzg0Njg2OGNkZGQ0ODczYzYxNWVkNzAxOTRiNjM1MGYgbGVnYWN5LXRydW5rCisxODg2NiA5MjUxY2Y3MGVkMWY4YjVlZDViM2MwMmJjZTE3MjBkOWZlMGU1ODQyIGxlZ2FjeS10cnVuaworMTg4NjcgY2VkODA0MWViNGVhN2RhOTU1NDZiZDc0MTM5NzM2YzM0YmQ4NWZmMCBsZWdhY3ktdHJ1bmsKKzE4ODY4IDUxODExZDc4YTlkYWE2NGZlNTlhM2ZhNWE0NmI2YzBmMjc3NWU2NmQgbGVnYWN5LXRydW5rCisxODg2OSAzMjM1MmUxMjBjMzc5NDgyYzE4ODEyZDlhZjI2NDU2MTA1MWJiMTk4IGxlZ2FjeS10cnVuaworMTg4NzAgNGM4NTZhMTgwNDU4N2IwNTE3NzA1NDliOGY0ZGVjMDQ2NTdiODk5NSBsZWdhY3ktdHJ1bmsKKzE4ODcxIDJkZjQ1NzRkOTBmZTZkODg4NDBjZTdiOGNiNDA2OGU3MGZkMzVlMzggbGVnYWN5LXRydW5rCisxODg3MiAzM2Y1ZWU2YTBlYmU3NDlmZjQ1ZGYyZWJmODA2OTQ1NjIyNjk2ODc5IGxlZ2FjeS10cnVuaworMTg4NzMgZDkwZWVhYjVmOWE0MThlZGY4MzEzMjgxNDE5Zjc1YWM2M2FmNzkwNiBsZWdhY3ktdHJ1bmsKKzE4ODc0IDhlNGRmYjY4MTY4OWJhMGMzZjZlZTRkOTc5MTMzMWYxYTU1OWZhYTAgbGVnYWN5LXRydW5rCisxODg3NSA5YmM3NTQ0MTNhOGMyZGEzZGJkMzA1YWNiN2ZjNDVhMDdjMjEwNGJjIGxlZ2FjeS10cnVuaworMTg4NzYgNzU0ZWNkMjFmYmVmNjVlMmVlMTU0OTY1NzVjNDJiOWFhYWVjMjFlYyBsZWdhY3ktdHJ1bmsKKzE4ODc3IGM4MzJlZjcyNDk5ZGIzYmQ1NTI4MWRkYjY4MWMzNGFkYzExNDZjYTYgbGVnYWN5LXRydW5rCisxODg3OCA4Y2E2ZDhjYWZjZDM3Njc0ZjBjMmYxOGY2YTFkNjRkNzBjZmQxODliIGxlZ2FjeS10cnVuaworMTg4NzkgNzIzNGQ3YzNjMjlmOTc1Yzk0MDQwMzgyN2FlMjM4Yzg0MDcyYTQ5ZiBsZWdhY3ktdHJ1bmsKKzE4ODgwIDIxZTdhMThkZWJlNjgxYjU0NTNmYmRiMDY2NjU3MWUwZTI0Yzc2ZTYgbGVnYWN5LXRydW5rCisxODg4MSA0NmY3NzJjNmEyMDAzY2U5MjEyZDdiZDY1MzJiM2EyOWQxODkyMmZkIGxlZ2FjeS10cnVuaworMTg4ODIgN2MxM2JjN2M0ODVmYTdlMWE0NmY3ZTMwYzY5N2VjNzE2NTQwMzY4MiBsZWdhY3ktdHJ1bmsKKzE4ODgzIGNmYWMyMjQ1YTJjNzJlMTFmMDA5YTM0MzE3NmVhMzgxYmFjNjk3Y2QgbGVnYWN5LXRydW5rCisxODg4NCBkN2Y1M2YxMmRiZWUxZmY5MWY3ZGY3NmFjY2NmM2ZlOTZmNmE4Y2FmIGxlZ2FjeS10cnVuaworMTg4ODUgY2UwZTQxY2U3ODdmZmY5M2Q1MGU2NTM1ZTBlZjRiYjEwYTkxODc5YyBsZWdhY3ktdHJ1bmsKKzE4ODg2IDBmODEyNzM2NmEzZjdiZTI3MTc0NWU1MDcyNGZkNmViYTlkZDE1ODEgbGVnYWN5LXRydW5rCisxODg4NyA1ZGMxNzczYzdmN2M5N2UwN2U4MjgzZjdkOTUyM2YyYzY2MmVlNmM4IGxlZ2FjeS10cnVuaworMTg4ODggODY1MjY2MDExZGZhOTJhMmIxYTAwYzFlYTk2MzQzNjU0ZTJmMjVhZSBsZWdhY3ktdHJ1bmsKKzE4ODg5IDU5ODhmNzY0ODBkNmQ5ZmE4NzQwYWFmMWQxMGRmNmI5YTY5NDAzNjggbGVnYWN5LXRydW5rCisxODg5MCA4M2QzM2Y3ZTlmZDQ1NzQ3ODhlYjc2YTk3NzhmZjU5YmQxYzhkYTAyIGxlZ2FjeS10cnVuaworMTg4OTEgNTVkODlhOGZlOTYzZmViMTdiMTFjMzVlMzkwMTA5ZGYwM2U5ZWExNyBsZWdhY3ktdHJ1bmsKKzE4ODkyIDhiYTg5MDlmYjgyMzA0ZWNjOTdlOTZjZDdkMmZkMjdiOTE3ODBhOWQgbGVnYWN5LXRydW5rCisxODg5MyAxYmY1ZDhiNGNlYmU4OGVkMDkyZjE0OTc5ZGRlMmEzOTUyNDM2MGEwIGxlZ2FjeS10cnVuaworMTg4OTQgNWJhNDU5MTZhZmM3ZjA3NWIyZThhMzFhYmQwYzUzMmNmYzdkOGQ0NiBsZWdhY3ktdHJ1bmsKKzE4ODk1IDc2MTU1MTEyMTg3ZTBhZGRiMTVmMzVmZjAxYTc5MTI5YjI3NTEwYWQgbGVnYWN5LXRydW5rCisxODg5NiAxOWVlZTJkYjJiMTZjYjU4NDk5NDNjYjJlMTZkM2Q4MWYyNzk2Nzg3IGxlZ2FjeS10cnVuaworMTg4OTcgMTE0NGFmYjk0MDE5Y2RhMDlmYTkyNWI1NGM5OTkyNzJhOTJmN2U2NSBsZWdhY3ktdHJ1bmsKKzE4ODk4IDczYzQxYjQ5YTliODBlZmVkNDhjZDFlMmQ4ODRlOTFjZTYwZTMzOWMgbGVnYWN5LXRydW5rCisxODg5OSBiYTI5NWUyYzczZWE2MDhiZGUxZDhlNTdkMmM5ZDUwZGRhMjhkNWU5IGxlZ2FjeS10cnVuaworMTg5MDAgYjY4NjNiYTg4OTg5NjJkNTljOWQ4NmJjNmU5YWRmMjdlYjlhYzRiMSBsZWdhY3ktdHJ1bmsKKzE4OTAxIDRhNjY1OGUxOGYzNmYxMDBjNjk0YzFlN2RlN2ZhNjg4OTllZWMyMjYgbGVnYWN5LXRydW5rCisxODkwMiA2M2EwYTZkMThhNjA0MjU2ODQ4YjU1OGRiYTVjNTM0Y2EzMGMzNDRhIGxlZ2FjeS10cnVuaworMTg5MDMgMzBlMzFjMmFiNjBmYTU5YmI4MzBiMGRkN2Y0ODc3MjIyYmQ3Nzg2ZiBsZWdhY3ktdHJ1bmsKKzE4OTA0IDc4YmQ5N2Q4NDEzY2NmN2JmN2I0NDNmMTVlNjBkNDMzMzM5ODI1MTIgbGVnYWN5LXRydW5rCisxODkwNSA4YmFjMDY1OTM5M2ViZGZmZGU0NzY2Yjg1Mzc4ZTNhZjQ1M2JmNzE4IGxlZ2FjeS10cnVuaworMTg5MDYgMzVkZmY0NzEyYzhlNjI1YTZkZDE2NDkzNDRmNzA5ZTI2ZWU4NGEyZiBsZWdhY3ktdHJ1bmsKKzE4OTA3IDNhNTZmNjUwOTlhYTc4ZGRjODQyZWIwZDIzZmQ3ZDkzMGM1MGQ5YjIgbGVnYWN5LXRydW5rCisxODkwOCA3OTM3YmNiYmRkMjRhMDhkOGZhNjQ3ZWIyNDYzMzBkZmVlMjIwYjJlIGxlZ2FjeS10cnVuaworMTg5MDkgZTUwY2ZhNTQ3NWYzNDIwN2NlMTkxZjcxYTdkZWExZDA2NWY1MzZjMCBsZWdhY3ktdHJ1bmsKKzE4OTEwIDcwYmIxMTE5MDQ0YWNlZWViMzA3ZDU5ZTViZTEyMTczZTM5Yzk0Y2IgbGVnYWN5LXRydW5rCisxODkxMSBiYjgwNWNjZWI0MDMwMGE4NDAzZTU3MzJiMzczM2FkMmI4NGViMjFkIGxlZ2FjeS10cnVuaworMTg5MTIgZTYyZDVhZmYwYzNhZjFkMjQ0NjUzOGQ4ZTkxOWViNmI1NTY3NDI0MiBsZWdhY3ktdHJ1bmsKKzE4OTEzIDQ3OThkYzczOWMxOWEzOWY2NDExYmM5ZmM3ZTFjZTZiODAwZDJiZjYgbGVnYWN5LXRydW5rCisxODkxNCA3NWEyMWMyMzBhMjY4MTlmMWU3Nzc4YWQ4ZTNmMTI5ODlmN2VjODA4IGxlZ2FjeS10cnVuaworMTg5MTUgYWNhMDVkNzVkMjMyZjEwMGQ5NjgwMmEyYWQxYjJkYTRkOWI3ZjdlYyBsZWdhY3ktdHJ1bmsKKzE4OTE2IDRjYzlhMWViZWE2MjhlZDE4NDZkMjQ3OTk4OTBiMTM4YmRiNmU4MjggbGVnYWN5LXRydW5rCisxODkxNyA2NGZhYjAwNDdhMTQyOTJhNzIwYTk2ZmE3NWU0NGNlYTgzMjE1N2RjIGxlZ2FjeS10cnVuaworMTg5MTggODgzYzdmNjE1Nzg5MDk5YzY0ZTU3YmZjMTUwNTJkNDQ1MDExZjk1NiBsZWdhY3ktdHJ1bmsKKzE4OTE5IGUzMjU5ZTRiZWM2MDYzOTJkNzQwMzQ2MDM2YmRlYTFhMDhkNDkzZGYgbGVnYWN5LXRydW5rCisxODkyMCA0YzQwZTlkNzRjNWFhNWQyMDQ1YjgwOTUyNzI2YTNhYTdhOTRkMjJmIGxlZ2FjeS10cnVuaworMTg5MjEgNTY0YmMyNDJmZjBmMDgzZWIyYjZiYzcwNTA2N2VmMzVhMDc4NDgzZCBsZWdhY3ktdHJ1bmsKKzE4OTIyIDU5NmVkZjgxMjlhMDc4MGQ1Njg2YjQzNDBiZTVjYjg5MWEwZTY2NjkgbGVnYWN5LXRydW5rCisxODkyMyA2YjY0N2E1ZDViN2UzOTFlZTkyYjE3Y2YwM2ViMzExYTliZDRmYjk5IGxlZ2FjeS10cnVuaworMTg5MjQgYWZjNmYxMTM3ZWE0N2M5MjQyNzA2NDdkYjY4MjQyMzg1NjU2YWU5NCBsZWdhY3ktdHJ1bmsKKzE4OTI1IDgxMjg1ZjU0NWQ1NDY5NjhhYTFlMzNjOTIwNzlkMmU1ZGUyMjYyMGMgbGVnYWN5LXRydW5rCisxODkyNiBhOTdhYTkyMzg3NzExM2MxNjU2MWQ1ODY3MjA0YjJjNDE1ZWY1MDZjIGxlZ2FjeS10cnVuaworMTg5MjcgYzI5ZGEyYzE0NDE3ZDhlMDY5ZWUzZTU1Nzc1NmNhZTA3NjBhYThmZCBsZWdhY3ktdHJ1bmsKKzE4OTI4IGQ5YjY5ZDc4MGExNjBiMDUyYzViYWM4YjNhZDNkZTRkMzJlNzliZmUgbGVnYWN5LXRydW5rCisxODkyOSBmZTM2YWI0YjNlOTczMjU0M2FkMjZmY2YxODE5ZmY0MjU1YjA1YTVlIGxlZ2FjeS10cnVuaworMTg5MzAgNGRiNjY0Mzg5NDE1MjAyZGI5YTkxYWUxYmRiZjZkZDcwMDNkOTVhMCBsZWdhY3ktdHJ1bmsKKzE4OTMxIDY4YTgwM2I0ZDYxODJhYjRjNzJhNWUwYTJmZDEwYzU2NTE3NTYyYjEgbGVnYWN5LXRydW5rCisxODkzMiBiNTM0NWU5OTU5NmJlYTk4NDRiNzA1N2UyNTEwZDEzNTU4M2YzYmE4IGxlZ2FjeS10cnVuaworMTg5MzMgYWY3ZDc5MTRmYmY5OWJjYjI0M2NhYzE3ZGYyMWJjMmQ5MjMzOWFjYSBsZWdhY3ktdHJ1bmsKKzE4OTM0IGJhZTg4OWY0NGNkMWZkZGQyMjUxODZkZTkyYmI5ZjExZWE5NGU3NjQgbGVnYWN5LXRydW5rCisxODkzNSA3MTNlZDZjNmJjYjUzNGZkM2YwZTU0MDhhM2ZkODE4Y2MzMjczMzVkIGxlZ2FjeS10cnVuaworMTg5MzYgN2U1NWZhOTNmNGRiYzI4NzkwZTRhYzAzMGQ2NjljNGI0ZmJhMDM3ZiBsZWdhY3ktdHJ1bmsKKzE4OTM3IDUwYmJlODExYjM0NGM5MDY1MjVmYzRhZmQwYzEwOTI2YWE5NTc4ZDggbGVnYWN5LXRydW5rCisxODkzOCBlYWJkMDA4YjM2ZWU3ZmVjYTdlMmJlODY0ODZmZGYzYTllYzE2MTc2IGxlZ2FjeS10cnVuaworMTg5MzkgMmQzZTYwMTc5ZDdhZmVhZDcxNjBlNGNjMDM3MGJlNjVkOThiMzg0YiBsZWdhY3ktdHJ1bmsKKzE4OTQwIDkxYTYzZGY3ZWVlNDE4ZDE4NzE2Yjg1MWQ1Y2M1MTk4YjE0NDY5ZTUgbGVnYWN5LXRydW5rCisxODk0MSBjNDM1NTkwNWIwNDRkZTEwZDUyOThjODk1YjhmYzRlNjRjYjc3MWNiIGxlZ2FjeS10cnVuaworMTg5NDIgOTNmODM2NDMyYzJiZDJhMDI4ZDEyM2E1OWQ1NjhhMzM5OWFkMzVjMCBsZWdhY3ktdHJ1bmsKKzE4OTQzIDFiNmU0NTdkMDNhYjZjYjVlMzI4M2VmMjY0YTgwODc5NTA5ZjM3MjEgbGVnYWN5LXRydW5rCisxODk0NCBlMmIyYjA0M2FiNGVmOTc1NTExN2JhZDUyOTZjYzBhOGY2ZmY1OWFlIGxlZ2FjeS10cnVuaworMTg5NDUgYWJmYjExZjhlMDUxYTAxM2MzODIyYmI5YzQ1ZjRmMzZlNWMyZDJiMiBsZWdhY3ktdHJ1bmsKKzE4OTQ2IDRjMzA3YTEyZGNiOTc2YTQ3MTY2NmE2NTMxNThlNzc4MGZlMmNkNDggbGVnYWN5LXRydW5rCisxODk0NyBkNTZiNDkyNjUzMTBmZWE0ZGE2NTUxMDcyNDBiYzA3OTU3OGNkYzcyIGxlZ2FjeS10cnVuaworMTg5NDggNDgxYzNkNTBhNGU1NTU3YzViNWM3MTVjZWE0OGY2ODU1ZTI3ZTgyMiBsZWdhY3ktdHJ1bmsKKzE4OTQ5IDI2MzAzNWJlYTNhZjIxMGUyNDQ4OTg5Yzc0MjMwNDRiMGYyOTk0OWEgbGVnYWN5LXRydW5rCisxODk1MCBkYmE4MzgwOWE3NzUwNzcxMzAyMzQxN2UyNGExZmU1NmMxMzkzZTI2IGxlZ2FjeS10cnVuaworMTg5NTEgNmUxNDNhZjg0OTI3YTg2YTE1OGI1ZDMxNDUxNDBmMjkwOGRlZmFlMyBsZWdhY3ktdHJ1bmsKKzE4OTUyIDhhYzQwZDQ4YTU4MTRiZjk3MWJhZmUwMTExMDAzMzAzYmY1ZjQzM2QgbGVnYWN5LXRydW5rCisxODk1MyA0NWMwNjU2NjhlYTVjOGY5OWMxMjgxYjc2ZGZhNGVjN2M1NTg4MTQ3IGxlZ2FjeS10cnVuaworMTg5NTQgZjNmNmI3NTk4YmM1YTA1MjM2MjQ2N2Y5MTNjMjNhMTQ2ZmI4Y2I2NyBsZWdhY3ktdHJ1bmsKKzE4OTU1IDBjMWFjYzE1NDU1ZjBiNGIwZTI5M2NlMTBkZWU4MDM5ZTdjYWM4NjcgbGVnYWN5LXRydW5rCisxODk1NiBjYTQ2ZDM0NTQyNjllNjlkN2FhYTVhOTMwZWQ1YTFhNmM1ZjZlYzQyIGxlZ2FjeS10cnVuaworMTg5NTcgYWIwMmYxNzQxYTI4YzdjYzE3MDdjZGUxNjA3YWUwODY5MjI0MGM4NiBsZWdhY3ktdHJ1bmsKKzE4OTU4IGZiNjcxMjJlNWMxZWRiYWU3YjUxMWY3MzZmMDk2MjYyYjNjZDliMGYgbGVnYWN5LXRydW5rCisxODk1OSBlMzUzNmFhN2FlNGFjNGE0YTFhNWUxYTM2Y2M2MGU4MGFkYWVjNmRlIGxlZ2FjeS10cnVuaworMTg5NjAgZmI3NjdhNDQ5NjFlNzE5MjU5NzlhM2EzZmIyODk2OWVmOWYzOTMxYyBsZWdhY3ktdHJ1bmsKKzE4OTYxIDk2N2FiYmVjYzQwNDFhMjJlMTEzMjY0MjNkOTFkYzE2NzhmNGU3YWEgbGVnYWN5LXRydW5rCisxODk2MiBhZTI5NjIyOWY0MjY5NTdlNjhiNWQ0NGM5ODQxOTE0YzBiMDhiY2U2IGxlZ2FjeS10cnVuaworMTg5NjMgM2ZjZDdmNDY1ZjM0OWZjYjhmNjMyNWJmMGFkYTgwZTFmZjA5YzNiZCBsZWdhY3ktdHJ1bmsKKzE4OTY0IDdjYjk0MGMxNTY0NTFlZTNlNTBlMjY1YTZlZTFlMjBhOTA3NWM3YjMgbGVnYWN5LXRydW5rCisxODk2NSBlMDQxOGIxZjVjYjdjYjE3MGQyMjU5ZjdmYTU4MDdlNzNjNDQ3MWQ3IGxlZ2FjeS10cnVuaworMTg5NjYgYmFlOWFiYWRlZTIyYTQ4ODM4MDdkYjZhMWY2ZGNhODIzYjRhMjU0ZCBsZWdhY3ktdHJ1bmsKKzE4OTY3IGQ2OTU3MWJmNzg0MjY3YmRlZDc0NGY4N2U0Yjg2ZWMwMzJmNTJiZWIgbGVnYWN5LXRydW5rCisxODk2OCAyOGM0MTRkY2IzZTE4ZTU0M2YwMDA5MTY0ODJkYTk0NjdiMDE1NWU1IGxlZ2FjeS10cnVuaworMTg5NjkgZGMxYzU3NzE0YjNkZDRmMjQzZjYwY2ZmZDE0NTJhNzBhZjUzYjI0YyBsZWdhY3ktdHJ1bmsKKzE4OTcwIDI4ZDhjY2JlMjM3ZjY4M2QyMTUxOTY4MWEzZDUwMWNkMjkyYWJlODcgbGVnYWN5LXRydW5rCisxODk3MSA0ZDQ1MWM5MmJjNTBiMmQ2NDQ1YTlmNjE4ZWNjMWFkMGJiOTY1YzkxIGxlZ2FjeS10cnVuaworMTg5NzIgMTQwZDQ1YWEwOWRjMDlkNjAxZTc5NGNjNjI5NTAxNTg5ZjBjNWY4YyBsZWdhY3ktdHJ1bmsKKzE4OTczIGUwODI0YjM1NDRmYmVlODFiMjYzNzcxZGNmYmJjZTQwNTllYjIxNGEgbGVnYWN5LXRydW5rCisxODk3NCBhMDU5ZDEzNjA1YTBlMTc5OWEyYzQwOTAyN2FkNzlmODEyYTFhODMxIGxlZ2FjeS10cnVuaworMTg5NzUgNzA2NjZiMjdjMWIxYWNkZDcxMmYzZmFhZTcxYTVkYjA4YzdlYTU1OCBsZWdhY3ktdHJ1bmsKKzE4OTc2IDQ0ZmQxYTdjYjI3OTM5YWYxZGVhNGY0ODQ3YjE4NzBlZjkyZmUzYjAgbGVnYWN5LXRydW5rCisxODk3NyAzZTEzNTI0ZWQ4NmNjMGVjMzRmYTUxOWQ3YzQwNmI5YTY5ZjkzNDM4IGxlZ2FjeS10cnVuaworMTg5NzggNjBmYWM2MmY2YzE1ZWEwNjAwODZjZTRhZWIzNzU4YjMyYTBkY2U1ZiBsZWdhY3ktdHJ1bmsKKzE4OTc5IDhlMDEyYWU5YTA0MjMyN2E3ZDUxZjk5YTgwZWU1ZGEwNTNhMGE2MWQgbGVnYWN5LXRydW5rCisxODk4MCA2NDU0NWM5ODZiOThiMjZmMGQ0MjI4ZTA4MzI2MTZlNmQ2Zjc4OTg2IGxlZ2FjeS10cnVuaworMTg5ODEgOTJiMjE0YmI0Mjg4NDg1ODQxNmQ1ZDkwZGRjY2Y2MzhmNTE0ZWNiNSBsZWdhY3ktdHJ1bmsKKzE4OTgyIGUwNTIzYTQyYzc4Y2FlOTJlYWFlODY3MDE1MzUxMDhiNTVhMDg3Y2QgbGVnYWN5LXRydW5rCisxODk4MyBmNmQ4YTEzOTI5ZDcyNzA1MjQ0NTE2MzJmZjc2OWI2MDY3OWNjNGI5IGxlZ2FjeS10cnVuaworMTg5ODQgMjM5YzczNzJjM2QzN2Y4Y2U0YjY0OTFiNGM5NjU5MTJhNWQyZTY2MyBsZWdhY3ktdHJ1bmsKKzE4OTg1IGY5OTdkZWQ0ZTIxOWYzMGFkYjBiODk0NGJhNmIzMGE1MmY3NGQyYTQgbGVnYWN5LXRydW5rCisxODk4NiA0NTQwZTQxOGI4M2FiNGYxMDg1MTYzYWUxYzAxNjM5Yjg5NGRmZGVjIGxlZ2FjeS10cnVuaworMTg5ODcgNTQ4ZTdhNTQyOTE4NWZmMGFlZGRhZGNmYmYzZDU3NDAyYzNkYWRlMCBsZWdhY3ktdHJ1bmsKKzE4OTg4IGZiZjA3ZTFmM2NhMDcxZDkyNzBlNzEyYjQzMmY3ZDJlMDIxZTc4Y2UgbGVnYWN5LXRydW5rCisxODk4OSA2ZjFmZDg1MDAzOThjYTkxZDlmZDk2ZDVhOTk5ODZiMDMxMzRlOWMxIGxlZ2FjeS10cnVuaworMTg5OTAgZDA4NjQ5MDJjOGM3ZDg5OTRmZWY0ZTk1MTAxZDA0M2EyZDQyMzk5YiBsZWdhY3ktdHJ1bmsKKzE4OTkxIDU2MzY4ZDM1MDhkZTU2MDI0NDQ5MGY4ODU1ODE1NzAzZGUyMjI1OGQgbGVnYWN5LXRydW5rCisxODk5MiBhOWUzYTUyODE1ZTJiYjNlMGViZTdiZjVjYTE4NmE1Njk1MjVmZDg4IGxlZ2FjeS10cnVuaworMTg5OTMgYWEwM2MyMGU4OWI3YWVmOTJkODViM2I2MWZkNmNjZjRkZDFiZWI5ZiBsZWdhY3ktdHJ1bmsKKzE4OTk0IDhmNjU1MmM3MDMwZDA1NGZhMGVhYzhkZGIyNDU2YTk1ZDUxODYyZTEgbGVnYWN5LXRydW5rCisxODk5NSBkNDgwMThiMzNlMzU3ZjQ5ZmRhYmEwMDYxYjljM2IyNzQzNWI0NGVlIGxlZ2FjeS10cnVuaworMTg5OTYgYTA2YjczYWQzNzFlYTc3NjBmNWM0MzNjMzcyZWUzNDk1NDVjMjQwZCBsZWdhY3ktdHJ1bmsKKzE4OTk3IDUxM2U1OWIzYjlhOTBiNDI1MGY2ZmYyOGNmNGYzYWU2Nzk3MjQzM2UgbGVnYWN5LXRydW5rCisxODk5OCBmYTllZjBlMmRjMDdkYWRlM2U3NWEyZTczYTNmMGQwMDAzMDcyZmY4IGxlZ2FjeS10cnVuaworMTg5OTkgODgzY2IwZTMxYmIyYjNmNTNhMmRhODI1OTc1NWYzMjY4MGJkYzFiYiBsZWdhY3ktdHJ1bmsKKzE5MDAwIDQ5YjdjMWJjNjAwNDI5M2JlMjJlNGEwYTBjYjI4Nzk4OTdmZjRiYTMgbGVnYWN5LXRydW5rCisxOTAwMSBkOTZjZTk3MDhjMDA3YzdkZDI4ZjBmZWQ5NWZjNDMyM2Y0MzI2MWM3IGxlZ2FjeS10cnVuaworMTkwMDIgMzhkY2VjMDY2MTdiZGZhMWY1MmI4YWIwMjhhYmFmNzQwNWJkZTE1OSBsZWdhY3ktdHJ1bmsKKzE5MDAzIDA1OGJkMWJmZjAwODBlNTliMDJjNTFhNTBlMDcxZTk3Y2E3NmQ1OGUgbGVnYWN5LXRydW5rCisxOTAwNCA0OWY5NGEyYjFkZDQwY2Y5MTQ4ODQwMzkxZGRkYWFjMTEwY2U0MDc0IGxlZ2FjeS10cnVuaworMTkwMDUgNmFhOTcyZGY4MGQ1NzYyY2YyNDdhMDAyM2RmYzM4M2U2MWM1ZjIwMyBsZWdhY3ktdHJ1bmsKKzE5MDA2IGQxMmJkZTRiMmFlOTJjZDFlZmRkOWM3MTMzOGMwZGYxOGY4Y2I5ZWYgbGVnYWN5LXRydW5rCisxOTAwNyAyNmU4MzFiYjBkNmVjNjg4YzUwYTlkNDRkMjQxN2EwYWI1Njk0NmE2IGxlZ2FjeS10cnVuaworMTkwMDggY2Q5ZGRkZDg5N2E5NTUzZTJmODZiMjJlOTA1ZDM3YjMyYjNlYzliNyBsZWdhY3ktdHJ1bmsKKzE5MDA5IGZiZjhhYmVjOTNkMTlmYzAzNDdhZTdjZGEwM2UyZDFhMjFhMDI1Y2UgbGVnYWN5LXRydW5rCisxOTAwOSBiNjA4MzFlZWFiNWEwNmRkM2M1ZTgyOTdhOTllMzkyOTdhYTg3OTRiIGxlZ2FjeS10cnVuaworMTkwMTEgN2Q3NjVjMWQ0OWUyZjMxNTdhNmYxODljYzU3ODRkMzY1NTk4NWQ5MCBsZWdhY3ktdHJ1bmsKKzE5MDEyIGNhMDU1NjA2YjNhMTFjMTc1YjM0ZjllNmY4MzM4OGY2ODE4ODM5OTAgbGVnYWN5LXRydW5rCisxOTAxMyA0OTUxZjVjNDgxMDViYmRkZjcyODM0ZWVlMGM3YmVjNzNhYWEyZTZkIGxlZ2FjeS10cnVuaworMTkwMTQgODVlMzVlNjhlM2RiMDU3ODk2ZTQ2ZGQwYjJlZTViZmUyODhlNWVhYSBsZWdhY3ktdHJ1bmsKKzE5MDE1IGRmN2JmYjM0YjJhMmU4ZGQ2ODhmMTMxYzExMGMwYjU4NjNjNDBlM2QgbGVnYWN5LXRydW5rCisxOTAxNiAzZWU1NTg2MzQxNjRkYWY0OTlmNzc2NTcwMzVhZDg0ZDRlNjFmZjgyIGxlZ2FjeS10cnVuaworMTkwMTcgYjJjODc5NWEzNDQ4OWViMjJmNjY4Y2RhNmVmNjgzNzdmOTNjYTQzYiBsZWdhY3ktdHJ1bmsKKzE5MDE4IDgzYzFmMTQ2ODJhMjU2MWFkN2M0ZjVlNzJiN2RmYjZjNmQ1NTdiMGYgbGVnYWN5LXRydW5rCisxOTAxOSA2MmJmNzM5OThjZGIyMWI0OTRjMzZlMTI4OWVkZDYwZmQ5NDg1NDFjIGxlZ2FjeS10cnVuaworMTkwMjAgNjM5NmNjNmIxZjdhMTI3ZWQyMTdhOTEzM2JmODQ0YmE5NWVjZDJkMyBsZWdhY3ktdHJ1bmsKKzE5MDIxIDY4MGQ2YTUwYzJlODQ0ZjExODhhOGNmYWM2MWNlZDE3YmM1ZmY4ZGEgbGVnYWN5LXRydW5rCisxOTAyMiA0NjkyMGI2MGNkMzM0M2YyNjMzNTU0OTQ0YTc3ODhkNDBmYjEzYzVjIGxlZ2FjeS10cnVuaworMTkwMjMgYzBkZTcxMGYzMWMwM2Y4MDE5NDU1ZTFkY2EzNDMyODM4ZGM3OTEwYyBsZWdhY3ktdHJ1bmsKKzE5MDI0IGZkMjc4MDMxZjQ0OWNiODUxNzQ0ZmRiYzQ0NzU2NTA3NTJkMDJlNmMgbGVnYWN5LXRydW5rCisxOTAyNSA1ZjQwZmRiZGQwMmM0MThkMWFlM2UxYzJiZDhhZTI0ZDBhYTBkN2UyIGxlZ2FjeS10cnVuaworMTkwMjYgMjIwOGEwM2QwNWEzYWRkMWYzMmM1OTYwYTEwMzJkNzA2MzA4OTFiNiBsZWdhY3ktdHJ1bmsKKzE5MDI3IDBhNzIwNzBlYWI2ZWJhNjMwYzQ4OGRjNzQ2ZjM4NTljMzE0MGIyODIgbGVnYWN5LXRydW5rCisxOTAyOCAxMDY0NmQwOTJhNTJmYjJkMzYzM2ZmZTJkZDBiMTgyZjViNDY3OWMzIGxlZ2FjeS10cnVuaworMTkwMjkgNzFjZWFiYTNmNjE1MWI0NGY5ZTdjYjgwOGIwNDY2N2NmMmQzNjIxMyBsZWdhY3ktdHJ1bmsKKzE5MDMwIGEwZTUyMDM4Y2M0ZTFjODEzYzY0ZTg0Mjc0N2MzMGM2YjFiNjFjZTYgbGVnYWN5LXRydW5rCisxOTAzMSA3OGNkZGJhNDU4MDUzMmZhYTc3YmI1NTZhMzUzMjVjN2Y0NWRmOWVhIGxlZ2FjeS10cnVuaworMTkwMzIgMmM3ZGY0NTQ5NmE2Mjc2ZTQ2MzliZDI0MjE3MjAzYTIyYzIxNGYyNSBsZWdhY3ktdHJ1bmsKKzE5MDMzIDdhZTZhMDlkNGQwMmRlZGQ1ZWM5ZjYxNTg5MzBkNmI1M2NhMDc4ODAgbGVnYWN5LXRydW5rCisxOTAzNCA3MjViMWJhZjNkYWI5MWMyYjQzMWU1M2I5ZDU5N2RlMDNkZTkxMjFlIGxlZ2FjeS10cnVuaworMTkwMzUgZjc1Yjg2NDg5OWZiMTUzMTVkODEwOGU4NGY4NjM2N2FiZDY1OWQ1MCBsZWdhY3ktdHJ1bmsKKzE5MDM2IDMwYzRjNGU5ZTNkNTY3N2Y0NDgwMjlkNjUxYjkyNGZiOWNlMDlhYjEgbGVnYWN5LXRydW5rCisxOTAzNyA0Mzg0MjhkMWJmMjcwZTY5NzBmMmI0YWU1NjFlNDhlNjlkYjRjNTZkIGxlZ2FjeS10cnVuaworMTkwMzggMmRjYmMxZGZjYTljNTRkZTYzMDcxODY0NmQ3Y2UzNzY4ZTlhNmI1ZCBsZWdhY3ktdHJ1bmsKKzE5MDM5IDI3NzQ5ODE4MzAzMDc0OGEwZDYxOTUyZmRmOTQ2ZjE1NTQ3ZjVjOTYgbGVnYWN5LXRydW5rCisxOTA0MCBkMGU4ZTE5NTljMGJlNDJmMTIwYjlkMzg4NDEwMzNkOWRiZmQzZjY0IGxlZ2FjeS10cnVuaworMTkwNDEgM2EwZWI0NWIyYjVlMDI2ZGZkMzUxNzUzNjQ0NTM0NTU5NjM2NGE2NyBsZWdhY3ktdHJ1bmsKKzE5MDQyIDZmOTI5MjBjMTE1MDA5ZGY0NWEwMjM4ODJmNjMxYjdmNDAyMTgxOTcgbGVnYWN5LXRydW5rCisxOTA0MyBhNTRjMjgyYmZiNjNkYTJiN2E3OGU1ZTZjOWZiNGYxZmFjNTMyNDA0IGxlZ2FjeS10cnVuaworMTkwNDQgYjg4MmY0Yzg1NjY2OGFmMzMyNzQ4NzQyNThlNGZjNDk0Mjc4MzRhMyBsZWdhY3ktdHJ1bmsKKzE5MDQ1IGExMzBkNWY3ZTU4YWViMjE5NjRkY2U2NGE0N2Q5YzRkZWEyZmIxYzAgbGVnYWN5LXRydW5rCisxOTA0NiBlMjZmOGQ2Y2YyODhlZjM2ZTJiYjQ3NGVlY2EyZmZmZWYzNjViZDMzIGxlZ2FjeS10cnVuaworMTkwNDcgMTE1ZmRjNjFhZTkxNGI4MmE5YzhmYjEzNDM4ZDA4MTJmMjdkMTYyNCBsZWdhY3ktdHJ1bmsKKzE5MDQ4IDAxZThhNmQ4ZGE4YmI2NWVmZWY1MTUxNTk5MTExMTdlZDVkMDkyYzkgbGVnYWN5LXRydW5rCisxOTA0OSBkNzIxOGFjOTljMDlhYjJjZWU2ZGE3NGViMDE3YmJlYTJkZmNiZjVhIGxlZ2FjeS10cnVuaworMTkwNTAgNDk5ZTIyOWU2Y2VkYTg5MmVmNTcyMDM1ZWE1OWNkNjZhNGRhMWZiYyBsZWdhY3ktdHJ1bmsKKzE5MDUxIDk5MWExN2Q2MTAzNjI3NjljYTQyNWJjYjQ3ZmViYjY1ZTRmMjkwYTAgbGVnYWN5LXRydW5rCisxOTA1MiBjMTJkODYyM2IyOTQ5MGUxMjBiOTAwZGNhZTUzNDk0OTE1NjhlZDc4IGxlZ2FjeS10cnVuaworMTkwNTMgYzAyYWU3YWUwMTFkNjI4MmFiMjE5M2NhMzhkZTdkZjkzYTlhOWZlMiBsZWdhY3ktdHJ1bmsKKzE5MDU0IDRmZTY5YTlmOGIzMDc2YjllZjE3MWY5NGYxOWYyMzA1YjUzNTBiYjYgbGVnYWN5LXRydW5rCisxOTA1NSAxZmY0Zjg5MDFkOTYwNjA5NTVkMjdiNjllMWY1N2QxNzc4ZTIyMzcwIGxlZ2FjeS10cnVuaworMTkwNTYgZjRhYzA2MGE4NDFiMzk5YzA3MTZkNzZlN2Y0N2Q4ZDkwNjYzYTYzMiBsZWdhY3ktdHJ1bmsKKzE5MDU3IDFhYTgzNDlmNjY5NTU4MDZiMDA1ZDA0N2JhZWVjMDY0NTA4OTI3MGEgbGVnYWN5LXRydW5rCisxOTA1OCA1NzEyNjIwMjk4ODgyYWMwNjk3MWYwOWRjY2Y5YmQxOTBiNTkwZDY1IGxlZ2FjeS10cnVuaworMTkwNTkgMWJiNzY1MTY4M2U3NDEyODRhMTQyYzU3M2Y1ODFjODg1ZWNmYjk3ZiBsZWdhY3ktdHJ1bmsKKzE5MDYwIDMyNzU1YjQ1NjM2OWQ4MjI2OWI0NzNhMWExZjQyODgwZTVkZmI1ZTggbGVnYWN5LXRydW5rCisxOTA2MSAwMWU1ZDNlNTg4MzNhZDllOTkwZGY4N2U0MzJmNmY3YjIwZjY5NjQwIGxlZ2FjeS10cnVuaworMTkwNjIgMzQ4NDY3MGMzN2YyZThkYmYyMDYwMTFjM2Q5OWVmZTRjYmIwY2E5OCBsZWdhY3ktdHJ1bmsKKzE5MDYzIDM4Njc4Y2IwYjNjZGI4ZGQ2MjIwN2VlZTJkYzMzMzgzMGUxM2EzYjggbGVnYWN5LXRydW5rCisxOTA2NCAzOTdhZTUzZjFhNDg5OTA2ZTU2MTUxOTc5ZmUzNjRkNjAwNjNkYzU2IGxlZ2FjeS10cnVuaworMTkwNjUgNzQzZDUyMDc1YmU1ZWZjYmYwNzgxOTJhNmVjOGQyODUzMDMxYTlkMCBsZWdhY3ktdHJ1bmsKKzE5MDY2IDIzYWI1OTkyMTIyZTgxNDA4ZmZlMjM0NTJkNzVhN2Q3NTlkZTFiYjUgbGVnYWN5LXRydW5rCisxOTA2NyBhM2Y1N2VkNzU3ZTUwYTliNTQ5NjQwMmU0ZGQ3MTE3ODZiMjM1N2IwIGxlZ2FjeS10cnVuaworMTkwNjggYTY0NTNjZmI3MzNmMWQ3YWY4MzVmZmZkMmE2ZWEyM2FmNjY3ZjVkYiBsZWdhY3ktdHJ1bmsKKzE5MDY5IDc0M2YxNjMzNjgyNzNiM2I1ZDVmNDAyOTdlNDcxOTQxM2Y0N2Q4MjcgbGVnYWN5LXRydW5rCisxOTA3MCA4ZDRhMjVjODFhOWI5NDMwZmIwMmRhOTBkMGQ1ODgzYjVlZGRjZGE4IGxlZ2FjeS10cnVuaworMTkwNzEgNTVlOGMwMjZlMWUzZmYyMmM1ZTYyNGJlMjUwYWQ5ZjMyN2UzZDM4MyBsZWdhY3ktdHJ1bmsKKzE5MDcyIDFlNDNhMjQ1NmU4ZmU0Y2NlNTFkNTJhNDJiMmZkNDFjN2ZiYWUzMjYgbGVnYWN5LXRydW5rCisxOTA3MyA5OGI2NTQ4NGFkZTZhODRjZTgxMWRhYmI4YjBkMzEzZjVmMWM4NTU3IGxlZ2FjeS10cnVuaworMTkwNzQgMWRmNDBkNzcyNGNjZGU0MDY1N2MzOGM3NDUxOGE5MzY2NDU1MTVlNSBsZWdhY3ktdHJ1bmsKKzE5MDc1IGMwZjYxZDRmNWEwNDg4MTIzNDY5ZmIzY2MzMGM1NTk2ZjdhNzUzODAgbGVnYWN5LXRydW5rCisxOTA3NiA2MzVlOWRjZmVkMmNjNjU4NDg5NWNjYzQyMTcwNGI2ZGMzMzQzNmQ1IGxlZ2FjeS10cnVuaworMTkwNzcgNzI4NjBlZTllYWYwODkwZmQwZTJiNmJhNTkzMDM1MjMxYzBjOWU2ZCBsZWdhY3ktdHJ1bmsKKzE5MDc4IDVhZWExNTgxNTQzYjQ0ODI4NTBhNWIyMWFhMzg1ZDYzODc2ZTA2MTYgbGVnYWN5LXRydW5rCisxOTA3OSAzOTc0OTFhYTIwYTZlYmNhN2M5Mjg5MWI1ZTVkZDcwZjM3ZDg1ODJjIGxlZ2FjeS10cnVuaworMTkwODAgYTRlNTRiZmQzYzI5ZDY1NjkxMWVhYWI4YmNiZGYwOTkyOTA0MGU0ZSBsZWdhY3ktdHJ1bmsKKzE5MDgxIDI1OWY3OWEzNmUyZjM2ZDBiMmRlMWI0YmRhODI1MDY2ZDRmZWIxYmMgbGVnYWN5LXRydW5rCisxOTA4MiAxODVkZmMxNGE5MzQyZmI3NjViZDE1MWI0YWRjNWU5ZThlNjE4ZTEyIGxlZ2FjeS10cnVuaworMTkwODMgNTg4NjkxZjgwNmY0ZDA4MWEzNDQxNjcwMjEzOGMxZmQ4YmYzMGVlMCBsZWdhY3ktdHJ1bmsKKzE5MDg0IGEwZTQ2YzNiZTYzZWYyZGY0ZjQxZDQ1OTcxNzg2MDZhZTQ4YzVlYjYgbGVnYWN5LXRydW5rCisxOTA4NSA1NDUzNDE0ODg3M2U2ZjljMTc5MmNlNmVmZGQyZGMyY2E1NjZhYTgzIGxlZ2FjeS10cnVuaworMTkwODYgZDMyOTJlZTViNmUyNGExNWM1NDVlMGIxYjkxMTJiZTliODJlNzM0OSBsZWdhY3ktdHJ1bmsKKzE5MDg3IGU1NmRkMmRkOTk2MDcyYTc5NDk2ODllNDg3YTM0ZmIxNTA1MTNhYjAgbGVnYWN5LXRydW5rCisxOTA4OCBjN2M0MDRiMzVmMzNhMGQ1NGM4MmY2NzU4OTlmMTkwYzEzZTUwZmQ3IGxlZ2FjeS10cnVuaworMTkwODkgOGM0ZGI4YjlhZjliOTBlNTM2YmZiNTAwZTQ3MGU2MjA2MmUxZjhmMCBsZWdhY3ktdHJ1bmsKKzE5MDkwIGFiYjk0NTA2NjQzNjc1MDgwNDRmOTRmZGViMDJlNGM0MTBhZjMxYmQgbGVnYWN5LXRydW5rCisxOTA5MSBlMzAyNTg2NDUyYTMwODM4MGNiYTQ5ZTYwNjAyZDg4ZTEwN2U3NjY5IGxlZ2FjeS10cnVuaworMTkwOTIgMzlhMTRiYzhhMGY3OTBiODQ4YmVkZmQzYzZkNDg3Yjk5YWNlYTZjZCBsZWdhY3ktdHJ1bmsKKzE5MDkzIDNhMjBkYTI4OTNjNDdmNThiZDZkYTlhYTI2NWRlN2Q0ODc2MmE5YTIgbGVnYWN5LXRydW5rCisxOTA5NCBkZjJlZDU2NjRiZTUxNTIyZTEyZmRmNzg1MzZkN2RhZGMzN2IwM2U2IGxlZ2FjeS10cnVuaworMTkwOTUgOWJmNDM4YzhmNWM3OTM4YTVmNWY1NTE3Y2QzMjk2MDYwYjUwMWEyYiBsZWdhY3ktdHJ1bmsKKzE5MDk2IDQxZWQ0ZDg2ZGI3NzcyNTBjNjJjNDFiYTZlM2QwODcxMmNlZWM1Y2UgbGVnYWN5LXRydW5rCisxOTA5NyA1YzYwMTg0ZjdmNTJhYjFkNTIyMzNlYzllMzk4MzQ5MjBhZmM5NzU3IGxlZ2FjeS10cnVuaworMTkwOTggZTVkNTlhOWRiZmMwMjhjZGVmMGVkMjY3YTIzOWFjMmMwMzUyN2I0ZiBsZWdhY3ktdHJ1bmsKKzE5MDk5IDNmZTc1OTI0ZWFjMTBkY2FhOTczOWE2MzIzNGVlMmI3M2IxOTUzZTMgbGVnYWN5LXRydW5rCisxOTEwMCBiNGQ0ZjIwMjExMTQ0YTljOGUyODAzMWY0OGRmYTJlYTUwYzdkMTEzIGxlZ2FjeS10cnVuaworMTkxMDEgMmZmODI2MzE4ZTg5ZWRmYmQwZDc2ZWE3Y2E1ODI1NGRhMTRjNDM2MSBsZWdhY3ktdHJ1bmsKKzE5MTAyIDdmNjE4YmMxMzk4MTEwOTIyYzU1NTZkNmNiZGUzYjUzZDA5ZDJmYmMgbGVnYWN5LXRydW5rCisxOTEwMyAwNWJlNWY4NWYzYmY2MDhkNmI5ZDkyODU3MWI1YTNkZmQ4ZTlmMTVkIGxlZ2FjeS10cnVuaworMTkxMDQgM2M1ZjA5NDIyYjY5YTlmZDg3MjMwYmU3NGVlOWM1ZjcwMjFjNGJkMyBsZWdhY3ktdHJ1bmsKKzE5MTA1IDlmZDk2ZTI0NTViNjJjNzc1N2YxZTBlMTdkZGU1ZDQ1OTYwYzBmYjUgbGVnYWN5LXRydW5rCisxOTEwNiBmYTIwOWNjODRjYWNlM2VjOGQzYzk4ODM3OWI3ZjE2ODVlNDE3Njg1IGxlZ2FjeS10cnVuaworMTkxMDcgMDk3MzZhZWFiODMxMWZmMjM3ZGJhNWVjMDI0NWE2M2EyMmE3MGE5ZCBsZWdhY3ktdHJ1bmsKKzE5MTA4IGM0MWRkMjIwNGI5YzhlMGIzMDNkMTIyMTgwYzE3Y2Q1ZGEwNTI4ZDggbGVnYWN5LXRydW5rCisxOTEwOSBhNjhjNzAzMmNkZjI5OWYyYjNlZjgxMzhkY2E3ZmE0NTUyM2QyOWY0IGxlZ2FjeS10cnVuaworMTkxMTAgMTQwYzUyODU4ZjY1ZTQwODhhYjE1ZmY1Nzk2YWVkZDk3YTMwM2ZiZSBsZWdhY3ktdHJ1bmsKKzE5MTExIGZhMjcxZDdiMmE2MmJjYWZkZjkzNmY0YzE2Yzk2OWQ4NTIzYjkyNTYgbGVnYWN5LXRydW5rCisxOTExMiBhYWI4NzE2MzVmZmFlNDliODkwOWVmNjYwZWRiMjY0ZjYwMzBhZWQ4IGxlZ2FjeS10cnVuaworMTkxMTMgYmQ4ZDI5OGFmODgwYzJhMWUwMmMxOGVkNzk5ZjIzNDg2YTUwMmUxZiBsZWdhY3ktdHJ1bmsKKzE5MTE0IDNmODllNzI0MDA4NjA1NjgzOTQxM2UzOWYwNGE3YzhiYjVjYzIyMzMgbGVnYWN5LXRydW5rCisxOTExNSA0YjUxZDA2OWJlMzUwZWQ5YTU0MDRmMDI0NzYzOTY5YWNiZjAwMmE2IGxlZ2FjeS10cnVuaworMTkxMTYgYzFjZjVkMmMyNmNhZTcwZTMwYzhjMzVlMjg0NmIxZTFiMDAxMThlNCBsZWdhY3ktdHJ1bmsKKzE5MTE3IGY4MDQ1M2U0NDViNWE0NDE1OGVkOTY4NjJhZDAyYzVhYmViMTBkYWIgbGVnYWN5LXRydW5rCisxOTExOCAwNzA3MTg3MmRlM2UxMTRiMDEyNmMzZTI3YWI3ZTZmN2U5NTA2MjAwIGxlZ2FjeS10cnVuaworMTkxMTkgZmQ4YzcyMDMyNTFmZjM3ZGJiMzk3ZjdkNDIzYWU0MWYxNmEwM2M2OCBsZWdhY3ktdHJ1bmsKKzE5MTIwIGY0OTRjYTBhMmIzNDZmZjY4ZmFhY2NjNjUwOGJlYTI4MDJkYTlhMDggbGVnYWN5LXRydW5rCisxOTEyMSA5Mzg2YjMyYmZmMWRhYjQyNGQwYjU1NGY2OTg2MTliY2I1NDNhOGZhIGxlZ2FjeS10cnVuaworMTkxMjIgMjBlZjg0OWVjODc3YzcyZTU0YjZhNDRiZjU4ZDQ1YWUzYWQ0MzUxYSBsZWdhY3ktdHJ1bmsKKzE5MTIzIGJkZmM2ZjFmYTQ3NWNlNjczMTNkOTNkYzFlMzNhZTJiY2ViYWY1M2QgbGVnYWN5LXRydW5rCisxOTEyNCBhNzA0ZWE1ZWNlYjZiM2QxYWZjMWZhZGNkYzg4NTQ0MWNlZGY3ODRhIGxlZ2FjeS10cnVuaworMTkxMjUgNzYzYTNkNDJiYWVkZjE2N2QyOTI1OTA3NDhhZjNhMDY3MTJkMzJmNiBsZWdhY3ktdHJ1bmsKKzE5MTI2IGUxODg4OWUzOTQ5YzA2OWYxYzM0MWUwZTc3YzJiNjQ2NTNiMWZjYzUgbGVnYWN5LXRydW5rCisxOTEyNyBkNjE0YjZlOWZiNGVkOTRlMWYwMGI3MTA5MGU5NDFjMTM5YzdhY2UyIGxlZ2FjeS10cnVuaworMTkxMjggOTlmMzQ2NzM4NDE1YTA2YjMyZmI3YTRiYjExODkwMTc5Y2QxODkyYiBsZWdhY3ktdHJ1bmsKKzE5MTI5IDYwZWUzMzhmMGQ2NjZmZGVmZTAwMzYwMjE1MzE5NjZmY2M2MWY5MGYgbGVnYWN5LXRydW5rCisxOTEzMCBjMmNlOWIyZTViYjQyM2FhZWVkYjBmMWQ5NTQ5ODhhMTllMTk3YTBiIGxlZ2FjeS10cnVuaworMTkxMzEgNzc5NTgyNjZjN2Q3YWFiZmVjNTM5ZmJiNzFlNDU0MmY2ZDZlMGRlZSBsZWdhY3ktdHJ1bmsKKzE5MTMyIDkwMjU1ZDQ0MWNkNWY2MjFkMDg1YTQ4ZTNiZTE2NzI0ZmVlMzIyOWIgbGVnYWN5LXRydW5rCisxOTEzMyA3ZWYyMzgyZjYxMjNhMDY1ZjkwNzYyMTBkYTdjMTI0NTkzZjllY2YxIGxlZ2FjeS10cnVuaworMTkxMzQgODM1ZTlkZDU0YmZiOGFjNjNmZWFlMzkzZDhlMWY0Y2JmZTFlODg0OSBsZWdhY3ktdHJ1bmsKKzE5MTM1IGM4NWNhOGM2MjEyOWNjODExNGM1M2E3MDQxZjNhY2IxYmE2ZTQ5NzcgbGVnYWN5LXRydW5rCisxOTEzNiAyYWViM2EzNGM3YWNkYjMzZmZhNWY5ODdlNDVmN2IyYmM2YTZhYzM5IGxlZ2FjeS10cnVuaworMTkxMzcgOWNlNTE0OTgyNWY2YWVhYmQwZDdjYjQ2OTBmNjAyZmQ1YjBhODRiZiBsZWdhY3ktdHJ1bmsKKzE5MTM4IGNhODU1NDdmY2I1ZTQyNGY1M2JmNmM0ZDQ0NmVjMGM3OTU5NjYxNzYgbGVnYWN5LXRydW5rCisxOTEzOSAxNmUyMTc3MmNhM2YxNDYyMDJkYWQ3NTk5YWVkMTljNDI1NDliYjAwIGxlZ2FjeS10cnVuaworMTkxNDAgYjQ2Zjk1NmFiY2Y4NTJmNTYwYWU5OTM0MGU0MmZlMWIxZThhYjM3MCBsZWdhY3ktdHJ1bmsKKzE5MTQxIDc4NWNlNjE5Njc5NjE0MjgzNDMwZGY0OTMwZGZmMDYyNGNmZTM3MDQgbGVnYWN5LXRydW5rCisxOTE0MiA4YjgxYTdlNThhMWQxOWM4YmY2Zjk1YWJmNDU4NzgyNzU1ZjdmMzZlIGxlZ2FjeS10cnVuaworMTkxNDMgMmFiY2JlNDQyNzFhYmIwNzYzNDUzNzI4NTljYzUxOGJjMzVmMjMxZSBsZWdhY3ktdHJ1bmsKKzE5MTQ0IGVhNGEyZjNiMjY2ZTAxODY1ZmQ2NGEzMjU4MjY2NGI4Y2ZiNzhiNDkgbGVnYWN5LXRydW5rCisxOTE0NSA2NWM2YTI5OThiMWJkZWQwYzk5NjUzZDYyMjA3MzIyNWZlNzk0MzJkIGxlZ2FjeS10cnVuaworMTkxNDYgYTA1NThlYmY2NjEyNzUzZTAzODhiNmQ3YWUzYzBjMDQ2NTVkYTQ1OCBsZWdhY3ktdHJ1bmsKKzE5MTQ3IDE1ZTBjMTAwOTJiYjRkYjBhZDY3MzI3MmZhMjk3MzEyOGExYzk4NjIgbGVnYWN5LXRydW5rCisxOTE0OCAyMGUzYzBkNWU0NmZkMzQzZTE4ZjExYzYwYzNhZTVmZmRhYTZhMTQ5IGxlZ2FjeS10cnVuaworMTkxNDkgNGI3Mjg4OGM5ZTJmN2VkZDMzNjY5M2Y4NWYyZjY2YTMyY2UzOWNiYiBsZWdhY3ktdHJ1bmsKKzE5MTUwIGMwYTI0NDFhNDQ1NGJkZjMwZGExZDI3ODRkYmMyYTRiMWFlOTNlOGEgbGVnYWN5LXRydW5rCisxOTE1MSA5M2JhMzNkYzMzM2FmMjJjN2FhZGVkYzdiMGIxMWNiMTA2YjgxNWY3IGxlZ2FjeS10cnVuaworMTkxNTIgN2EyNTE0NDBjZTY3ZDY4OTRhYmYyZmJkZThiMzI2YjYyZjYwMmNhMSBsZWdhY3ktdHJ1bmsKKzE5MTUzIDA5NDAzYzVjZGFmYmMwOGE2MGIyNjg1NmYxZDQyODBkZjNiNjZhY2MgbGVnYWN5LXRydW5rCisxOTE1NCAwNTAxYzJhMTAzMTVmYzRmMGQ0YzE0ODUzZWMxMDY0MjYzN2NmMmY2IGxlZ2FjeS10cnVuaworMTkxNTUgMjdhNGExN2FlYzI1MTRjZDg4NjQ2Nzk5NzI5ZTk1NmQxODVmNTNmNyBsZWdhY3ktdHJ1bmsKKzE5MTU2IDI4YzZlYzU4MWFhNjk2ODIyYjk5ZTNjZjI5MmJhYTMxMjUzZDZiNzUgbGVnYWN5LXRydW5rCisxOTE1NyA3YjM0NzZjMTM4MmViY2JmY2E1ZGQ3NzcxNGNkZTA5NWNhZjU2NzIyIGxlZ2FjeS10cnVuaworMTkxNTggYWI5OWJkMzk0NzBjZTM5MWJhYzJmOGNjYzYwNzk5OTk3MTNhMTBkNSBsZWdhY3ktdHJ1bmsKKzE5MTU5IGQwZDhjOWQ1MmYxODQ5OWQwYWFkZWNlYjAxMWE0MDI4MWE0NjZjZGEgbGVnYWN5LXRydW5rCisxOTE2MCAyZGIyOTkzOTU4MGRiYTc4ZDUwNmEzMjFhMDYyYzJhNTI0MDkyZGY0IGxlZ2FjeS10cnVuaworMTkxNjEgZTFlMGU5OTZiMDAzNWRhMjJkOWRiNTZlODRiZjA2MmUwYThlMTdlYSBsZWdhY3ktdHJ1bmsKKzE5MTYyIDI2YzFmZmZkZmZmMmYwOGU3NGM5ZjRjYWJjMDNmMzY0YjcxYzM2YTAgbGVnYWN5LXRydW5rCisxOTE2MyBiZGZiODFkM2M2MTBlYWQ4ZjM5ZGM2YTUzOTY3M2VjNjFhM2I3ODUyIGxlZ2FjeS10cnVuaworMTkxNjQgM2ExZTY1OGU0NDc0NmMwMjE2YzcwYWY2ZmQ1NTI5YTllODc5MjE0OSBsZWdhY3ktdHJ1bmsKKzE5MTY1IGU3ZjQxM2Q0ZWUxNWFiODZkNDY0YTE1YmUzZmM3ZGFkMWQ0MmQ5MDAgbGVnYWN5LXRydW5rCisxOTE2NiBmYzNmNTA1OTQ1ZDRjZDA4MmQ2NTA2Y2FlMzE4NzMyMDYzMTc0YWJlIGxlZ2FjeS10cnVuaworMTkxNjcgZmIwZjU2YmIxNDA1OTk3M2U1NjQ1OTZkODY4OWNkYTg3ZDYyYzMxZCBsZWdhY3ktdHJ1bmsKKzE5MTY4IDhlODczZmE1NDUwZWJmNTZiZTQwNmYxOTZhNThkNGVhODg2NWRhOTcgbGVnYWN5LXRydW5rCisxOTE2OSBmODRmOGQ4MWUzMmNlNzA3MTEyYjM4NjUwOWQ5OTk3M2I0MjYzMTcxIGxlZ2FjeS10cnVuaworMTkxNzAgOGU2NmVhNjAyNjE2ZGE4ZmVlOTE4YWE3MTE5MGQ0ODdjNGE3ODU2OSBsZWdhY3ktdHJ1bmsKKzE5MTcxIDk2NjNkNWViYjY0NmMxMjJjOGMxYjUzOTc3NTQ0NzA3Mzk1ZjU4MjYgbGVnYWN5LXRydW5rCisxOTE3MiA1NGIwYWVmNjUwYzUyOWQwNzZlODc4MDkxZjc3MDY5YTBkNjRlODRiIGxlZ2FjeS10cnVuaworMTkxNzMgOGM0MWYzODYxYWFkZGNjYWYyZDBmMmJhYjE1ZjhlN2Y0OWQ4NzE5MiBsZWdhY3ktdHJ1bmsKKzE5MTc0IGI4MDE4MTQ1ZTJhNWU3OTUyNmI1NjllNzJhMGY3ZDc1NzNlNTcxYjYgbGVnYWN5LXRydW5rCisxOTE3NSA2NjJhZGYwM2U0ZmEyZjY2ZGE2Zjg4MGE4MWMwNzEwMjVjNThhMmVmIGxlZ2FjeS10cnVuaworMTkxNzYgMjRlNDU3YmExZjkyNmM1YjRjNzRjOGMyMjE2NmY4YjA0MzYwNjVlMCBsZWdhY3ktdHJ1bmsKKzE5MTc3IDI4YzYwZWY0OGZhM2ExY2JhMWUxOTM4Mzk4ZmZiZDQyZTJlOGEyMDAgbGVnYWN5LXRydW5rCisxOTE3OCA3OWU3MmNlMjJhNDMwZjAxYTA0YmJmZGE1N2ZkZDIyZjliNWZjMGVmIGxlZ2FjeS10cnVuaworMTkxNzkgODYxYmY4ZGNmYjU4Yjg2NjdkODVlOTZhMjA3MzI4MjM5MDFmZmU4MiBsZWdhY3ktdHJ1bmsKKzE5MTgwIDE3Y2FjNzBjYWU3NjYyMTcwYTJhOTU4ZTQ3ZWNkZWY2MzZlZjZlMzUgbGVnYWN5LXRydW5rCisxOTE4MSBiMzM1ZDRkZDIyM2YzODg0YTY3NmJjNDAwMjZiZTk3OTExNDZiZTVlIGxlZ2FjeS10cnVuaworMTkxODIgMGVmYTZjOTdhNGZhYjU2NTg2YWQ0N2MwMGM5ZWI1NTY5M2M3NWVkNCBsZWdhY3ktdHJ1bmsKKzE5MTgzIGE1OGM5OTNkOTIzNDU3MmY4MjlkODU4YTRlODJiM2Q3NzVlZmFmZDQgbGVnYWN5LXRydW5rCisxOTE4NCA5MjViMjMzZjAyZWEwZGNlMTk0NDY5NjQ3OWRkZjFkNGU2MjM2ZjdkIGxlZ2FjeS10cnVuaworMTkxODUgYWZkMDkzMGY4NjgzOTlhZWIyNTBmZTRkMmQzMTYwYTNiMjU0Y2ZkZCBsZWdhY3ktdHJ1bmsKKzE5MTg2IDlkNTcyMDM4MjA2ZTAyNzYwODk1NjMxM2JmN2U5MWNlYTMwOTRmZTMgbGVnYWN5LXRydW5rCisxOTE4NyAzMzAyMzk1NzVlMWU2NzU3ZmNmZTc3YTY3ZmRmNGFlM2I2ZjJhZTIzIGxlZ2FjeS10cnVuaworMTkxODggZmZkMjUxZGZhYmY0MmFkODJhOTcyMDY0NWYzMjljMTllZWJjMDA5YiBsZWdhY3ktdHJ1bmsKKzE5MTg5IDkzYWZiMmJiMjJlZDA5YmFmOGY5NjA3MDQ4MDM2NTE3MmQ4OGUxYjUgbGVnYWN5LXRydW5rCisxOTE5MCBhYmQzODNmMTkwNWM4MWVjZTkwZjRlMjJjZTNkZTQxOGM1YzViNWNiIGxlZ2FjeS10cnVuaworMTkxOTEgNGQ0MjRkMTM5N2IyZDhiOTg1NDc4MzU3OWViZjMyMGQ1NzEyMTVjMiBsZWdhY3ktdHJ1bmsKKzE5MTkyIGJlMDZiZmNiZTUxYTJlYWM1MDI1OGI3NzJjZjQyNTZhYzI3ZWFmYTMgbGVnYWN5LXRydW5rCisxOTE5MyAyNGU4YzY5Y2QzNGRhNTRhNTgyOTc3MDMzYTAwYjgyYWNlM2I5MGM0IGxlZ2FjeS10cnVuaworMTkxOTQgYmFjYmI0NWZlODQ0OGZlMjM2N2Y0NTIyMTBkNDdhODE3MDI1ZDE3MCBsZWdhY3ktdHJ1bmsKKzE5MTk1IDAxZDViODBhM2MwMzgyMzc1ZGY5NDY0OGE3NDZjY2I4OTM4ZGVmM2MgbGVnYWN5LXRydW5rCisxOTE5NiAzNmRiMTkzNjA4YmVlMTU0NWI3Zjk1OTQxNTg4MTI3Y2RjZmNmM2UxIGxlZ2FjeS10cnVuaworMTkxOTcgMjg1MmVhZGI3ZGFiYTUxMmNiMzFlZGNjNDMyNjYzNTJiZDQ4OGQ2MCBsZWdhY3ktdHJ1bmsKKzE5MTk4IDJkOGUwMjkwMmQ2N2U5ODg5NzE0ZDkwMDNhYWZlOWYyNmEwZmQ2ZjkgbGVnYWN5LXRydW5rCisxOTE5OSBmYTkzYmQxZDg3MDlkOGNiYmRjYmUwNGJiOTdjMDc2YTdiMDkyOGQ2IGxlZ2FjeS10cnVuaworMTkyMDAgNjg3ZjkzZGRmM2Q3MzQzYmEwM2JjYTIzY2RkOTlhOTM4YmQ4MmU0OSBsZWdhY3ktdHJ1bmsKKzE5MjAxIDY1NDk4MmE0NjYwNzc2OWVlYjIwZjVjYWQ0ODIxYzk4NmI4ZjFmMGEgbGVnYWN5LXRydW5rCisxOTIwMiAyMDcwNzQ1ODhiOWZkZTA0ZDFkNmMxZjMwNDU2ZTIwOTRiNGZmZTU4IGxlZ2FjeS10cnVuaworMTkyMDMgYTRiYmEzZWIzNGMxZjE3MzZlMjkzNTY2MzVkZTFhZDM1MDM3ODAzNSBsZWdhY3ktdHJ1bmsKKzE5MjA0IDA1YTkxM2ZmOTdhNmUyMTBmNmEyMDE5ODdiOTU5NDcxZmNhYzQzM2EgbGVnYWN5LXRydW5rCisxOTIwNSBmODdhNDFiOTZlMjhjYzk4ZDEwMTQ0ZTRiMGFlODQ2ZDc2YmNkZjVlIGxlZ2FjeS10cnVuaworMTkyMDYgYThkODg1N2FiMGYxZWNkNWJhYTYwY2U5ZjU1OWIzMDI4YTg0NTMzZSBsZWdhY3ktdHJ1bmsKKzE5MjA3IDBjYjQ3OTU1MzQ0ZTQ0NGUwMTFhYjM3OTI1MGRkY2FjMDc2YWRiZWMgbGVnYWN5LXRydW5rCisxOTIwOCA5MGVkZTUxNjVkMWYzYzE1ZWEwOGEyYjg3ODhiMzI3YTUxNzBhYjA3IGxlZ2FjeS10cnVuaworMTkyMDkgNmYxYzM3ZTgxMTYwNWJmYTA1MTE1Y2NlZjY3ZDI5OWJlODFmMTg4ZiBsZWdhY3ktdHJ1bmsKKzE5MjEwIDZkZjEyNzMyZTI2MmYzYzc4M2IyYzA2OWE3ZGQ2Y2JlYWI4YjhlYjUgbGVnYWN5LXRydW5rCisxOTIxMSA3YzRlYjQwZDRmZjc5MjhlNTBkZTEzZDJkNjBkODc1MDFiMDlkZTE5IGxlZ2FjeS10cnVuaworMTkyMTIgNjZkNGJmNTZlMzJkYmIxODViMmVlMmMzNjFlNDIwMzAzMjY2MWJjMCBsZWdhY3ktdHJ1bmsKKzE5MjEzIGVmMzJiZmE1ZjVjNjgxMzQ4MGI0YTEzOGM2MTRkNTczNTUwMWM4OTIgbGVnYWN5LXRydW5rCisxOTIxNCAwZWViMmVlMjA3OTk5ZGFhZWIxZGI2ZjFhMDU4ZjRmZjk1ODQxM2Y3IGxlZ2FjeS10cnVuaworMTkyMTUgYWUwNGQ2MTRhM2UwMzNiNDBlYmY3ZGFhODY3OTc5Y2I4YTdiNDc5YiBsZWdhY3ktdHJ1bmsKKzE5MjE2IGMzYjc1YTdmYWQzZjc4MDZjNzQ5MDk3NWIyYjdiNzIyMDk3MDRhODcgbGVnYWN5LXRydW5rCisxOTIxNyBlNDQyMGMyNDY4ZjkwYWE2YjFiNjFmZjE3MGIzYmYyMGZhODA1MmYzIGxlZ2FjeS10cnVuaworMTkyMTggNGZmMjg1OGQ3YTg1NTY4NjQ2OTU3NjgxMmZmNTMyZTRhNDFjYjQzYyBsZWdhY3ktdHJ1bmsKKzE5MjE5IDlmMmNhODU1ZmE0NGRiNjRhMTY4Y2I5MmVkZGJmOWU3NWQyODBmOGMgbGVnYWN5LXRydW5rCisxOTIyMCBmYThiZTI4NzMwYzk4NTMyNDNiNDI3ZmMwY2ZmMzczMjQyMGJiYWMwIGxlZ2FjeS10cnVuaworMTkyMjEgMTA5YzZhMjgwZTUxYWEyYzdlZjJjMzVmZDYwMTY2NjU0Njk4YjRlNSBsZWdhY3ktdHJ1bmsKKzE5MjIyIDk1ZGFlNjFjZWQ1MTgzM2Q4ZjE4NTkxZjg3MDE2MGNmZGY3NjhjOTAgbGVnYWN5LXRydW5rCisxOTIyMyA4YzVkOGI2MTc5NzlhYmIxZTZiZGQyNTFmNWY5OGFkYjQ3MDA3ZGRjIGxlZ2FjeS10cnVuaworMTkyMjQgNjU1YWFjY2QxY2FmOGE1NTlmZmMzMmYxNjNkMTAyMjhlNTljNDEyYiBsZWdhY3ktdHJ1bmsKKzE5MjI1IGMyOWNhMTk4MDMwMzhiY2I0YTJmMGFhNDk2OWNlYmJmYTFjZWJjM2IgbGVnYWN5LXRydW5rCisxOTIyNiBmMWUyZjk4ZjAxMjA3ODAzNzFkMjBhYmRhZTE2ZjRiZDZkMjlhYjYwIGxlZ2FjeS10cnVuaworMTkyMjcgNTBmN2RkMWE1MzU3ZDljOTU5MzI3YjliMTY3NzMyMWYyNTM5Y2IyZiBsZWdhY3ktdHJ1bmsKKzE5MjI4IDM4Y2E5Y2M5ZmM0OGExY2YzMDA3YTlhOTA5YmNmMjA4NzJkOTU3NWIgbGVnYWN5LXRydW5rCisxOTIyOSAzYzFiNDI2YjNmZjRjNmVjY2ViMWUxMjZmYmVmYTQ3ZDBmNzM0ZjNlIGxlZ2FjeS10cnVuaworMTkyMzAgYzY5NmE1MmMyNjIxODQ1ODIzMWZkOGY2MzcxZDZiZGI5ZTM3OWI3YSBsZWdhY3ktdHJ1bmsKKzE5MjMxIGMwNGNhNmNiYTFlM2M4ZThiNTJkNWEzNjE1MTE0ODcwNWI3YzEwMjYgbGVnYWN5LXRydW5rCisxOTIzMiA0YjViZWNmYTJlYjNhY2Q0ZjFmNTljZDc5YzMwNjNjNzMwMTM3Y2Y2IGxlZ2FjeS10cnVuaworMTkyMzMgM2ZlODU1NTI2YzU1NjA0OWQ4OWM0NGUwNmIyZjExYmQ2YTVhNjc1NCBsZWdhY3ktdHJ1bmsKKzE5MjM0IDY3MGEwMTk0YThkYTdlOGJlOGQxOTc5MTk2OWY4MmZhNjg5ZTJkZmQgbGVnYWN5LXRydW5rCisxOTIzNSA1ZGZkN2UxNmM2MmYxNzJlNjRhZDRiNGVkODUwMzE3ZDliOWQyZjQ3IGxlZ2FjeS10cnVuaworMTkyMzYgNjMyNWJkMDYzZjBhODgzMzZmYmE1NTA3Yzk0NTY2YzhjNGQ5YTU1MyBsZWdhY3ktdHJ1bmsKKzE5MjM3IDZmZDYzYzVjMTlhOTIxOGIyODk5ZWNlMjk0M2RiZTlhNWYwYzcwNjcgbGVnYWN5LXRydW5rCisxOTIzOCA4YjFhMzgyMjRhZGU5YjU3NWE1NTNiMjU4NTg2OWExMjlkMjMxYTdkIGxlZ2FjeS10cnVuaworMTkyMzkgMGQ0YjZiYTVlZWVjODUwNTIyY2Q5MzU3NzkzYjNjZWU4MWZmMWVmZSBsZWdhY3ktdHJ1bmsKKzE5MjQwIDRjZDU3NDQ2OWZlMWFhOGM5ZGEwZGU4ZjFjYzYyNzQyYTY5YTFlMjkgbGVnYWN5LXRydW5rCisxOTI0MSA1ZjA2ODNhNjllZmM2ODg0YzY0MTczYTAzZDhjZDAzZTU0NjI5NjZhIGxlZ2FjeS10cnVuaworMTkyNDIgM2E0ZDJiZWZiYjc0NzM0MmRmMzMwYThlMzNiYTZkNjc4MGM4YTM4ZCBsZWdhY3ktdHJ1bmsKKzE5MjQzIDQ4YjRhY2Y3M2FkN2FiZDIwM2QzMmQzYzg5NWEwMzZjMmVjZDk0NDIgbGVnYWN5LXRydW5rCisxOTI0NCBlYzhmNDdhMWNjNDgzODg3ODFkODJjNDJjNzcxZTdiYTg2YmNiNTgzIGxlZ2FjeS10cnVuaworMTkyNDUgOThhODhhYmU1OGQ0MmViNzg5MGQ5MTI4ZTIzMmFiMDE0ZWM5OTI3MyBsZWdhY3ktdHJ1bmsKKzE5MjQ2IGM4OThjZWJhMjI2MTg0MGViOWNkNGExMTkxYjQ4Yjc1MWZkNzZjMDUgbGVnYWN5LXRydW5rCisxOTI0NyAxZmI2NjcyYjIwZWYzY2NhZjIxMDQ4Njc4MDFiOTExY2QwYWQ2N2NiIGxlZ2FjeS10cnVuaworMTkyNDggYzI1NTViNGYzOGEzMTQwZjYxMjExOWE4ZDZiZTA0NTE0NDc4Y2VhZCBsZWdhY3ktdHJ1bmsKKzE5MjQ5IDU1Njg4NzI5NmQyYWQ4YWUxYWRkNDE4NmFiMDAwNjc2ODcyOGNkZTAgbGVnYWN5LXRydW5rCisxOTI1MCBmZDRhNjM1NjZiYTFmNGQ5OWEyNzk1OThhMTZjMzA4YjEzNjgwZjQ1IGxlZ2FjeS10cnVuaworMTkyNTEgNDZhOGNmZTlhZmE2MzRkMGMzOGMzZDQxYzFiOWNmMzQzYWViNTEzNSBsZWdhY3ktdHJ1bmsKKzE5MjUyIGQzNGYyNTA0NmFkNGJhNDY5ZDc3ZTdhNDQ0YjdlYTgxMWQwOTJjY2YgbGVnYWN5LXRydW5rCisxOTI1MyAyYWIyOGIyMTNkNzA1ZGNjOWZkMDMzYTI1NDM0YmE0ZGJhNjg2ZmVjIGxlZ2FjeS10cnVuaworMTkyNTQgMmVjY2ViOWQ4N2Y1OWUyMjBmZGI0NmRhZjAxNjZlN2VkMTExZmMyNyBsZWdhY3ktdHJ1bmsKKzE5MjU1IDAzOTQyNzBkNGQwNmQ1YTE4NzI1N2U0OTQ1ZTQxM2VmMjc0NzkyM2QgbGVnYWN5LXRydW5rCisxOTI1NiBmNzAwZTZiOGRlMWZhNjA1OWUyN2ViZDRlMjY3MWIwMTQwMTQyMDAwIGxlZ2FjeS10cnVuaworMTkyNTcgNzRkMTQwYTNmMDM0NjM1NDg0ODI0YTIyOTZjZjVhMGQ2YTBiMTI4MiBsZWdhY3ktdHJ1bmsKKzE5MjU4IGIyMmU0ZGNhNDUxYTM1NzY5N2M2YmJkNTFjNTQ5ZTVjMzAyNzJkMTkgbGVnYWN5LXRydW5rCisxOTI1OSAwYmI1OGNkZmE2ODhmZjFkOTM3ZmFiOWMwZWEyOTAyZmY3NzZiZjYyIGxlZ2FjeS10cnVuaworMTkyNjAgODBjMGIyODBhNGY5MTFlZjZiN2M4MmZlMzJjOWQ0YTBjM2NmZTQyZiBsZWdhY3ktdHJ1bmsKKzE5MjYxIGRjZTdiNGU2ZDQyMWJjYjhjYzcxM2RlNGE0YzMyNjBlN2ExZDYxYTIgbGVnYWN5LXRydW5rCisxOTI2MiAxNjZlODc4MzZlOGU2MDU5MjYwYzlhYTdkMzYxMTZkMjZmODExNDczIGxlZ2FjeS10cnVuaworMTkyNjMgYWJlODVkMjYyMmY5ZmJkZWY1M2NiNTQwZTViOGQyZmQxMDA5MTVkMiBsZWdhY3ktdHJ1bmsKKzE5MjY0IDA4YWM1NTZmMmQxMmRlNTllYmE2NWQzNDVhNDdkOTdhN2Q1ZjY5MzAgbGVnYWN5LXRydW5rCisxOTI2NSBjMjJlODcyNTAxYTBjOTUyZTQ2ZmY0NTk5OTExZDU4YmE0N2E2YWQ5IGxlZ2FjeS10cnVuaworMTkyNjYgMzkwY2E0M2U1Zjc5ZDBmMmZiMDlmZmMxYzBhNThjZGQ0ZDRmYTY2NSBsZWdhY3ktdHJ1bmsKKzE5MjY3IDdhZDk3ODMyYTVjZDA1YjE3YTVlZTIwYTQ1MWIyZTY3Y2YyMTVjMTggbGVnYWN5LXRydW5rCisxOTI2OCAyZDcyZGI5ZjVjYTU0NGNkYmVkMDkyZjkwOTA0YWYzYmI4Y2I3OTAwIGxlZ2FjeS10cnVuaworMTkyNjkgOTllZGUyMTkwODcyNzM2NDE2MmMxNWJlMmFjNjI0YjNhNzY0YWFhZSBsZWdhY3ktdHJ1bmsKKzE5MjcwIGVjNzA5ZWU4ZTZmYTY1MjdiYWRiMDNmZDE0YTczMjBmN2ZkNjUzZDEgbGVnYWN5LXRydW5rCisxOTI3MSA3NDMwZWJhYmRiZGNhZWUzMjljY2IxYzdiYzJkN2FlYzM0OWQzNmUyIGxlZ2FjeS10cnVuaworMTkyNzIgM2Q0YTdjZDBiZjE3OGFkNjNlMzhiZDNjZWVmNTBmMTMyNzI0MDJkYSBsZWdhY3ktdHJ1bmsKKzE5MjczIGFlZGI5M2Y5YzZiODBkNTk5MWMwMmRjOTY1ZThiMGFmOGUwNmFjYjQgbGVnYWN5LXRydW5rCisxOTI3NCAxMGVhNDA2MGM4ZGM1NWJkNTNmOGFmZWIwMWJmMjJhY2NjZmM1YWQ5IGxlZ2FjeS10cnVuaworMTkyNzUgODgxOTg2N2YxNGVmNjU5YmU4ZmY4MDUxYzAxMjRhNGQ5YzVkNDM5ZSBsZWdhY3ktdHJ1bmsKKzE5Mjc2IDE4NWI5MTk2NzE0N2RkMDI3NjYxNWUyOGEzMmYyYjc2MWQyZmI5OTkgbGVnYWN5LXRydW5rCisxOTI3NyAxMmQwMDQ4ZWQ2Y2E1YjY4YzJlNjQ3ZjU2YTJmMzc4ODBhNDU3Y2U5IGxlZ2FjeS10cnVuaworMTkyNzggN2QzOWQ5ZGNmMmQ2MTEzNzhmYWNjNjgwNDA4MDI0YmZiNzU1NGRjZiBsZWdhY3ktdHJ1bmsKKzE5Mjc5IDkwMWI5NDY1NjkyOGIwZDBhZWViNmMwNzI4MGEyOWM4ZjI0Nzk4YzEgbGVnYWN5LXRydW5rCisxOTI4MCAxYWM3ZTYxODZiNmUzZjc3YmE3YjM4NWFlZGRjNDY5MjA0NjVkZTlmIGxlZ2FjeS10cnVuaworMTkyODEgMWVmN2U0MzcxNWY1NDBjMzBiZGQ2MTA3YzVhZmNiMGZjMzhkNjljMCBsZWdhY3ktdHJ1bmsKKzE5MjgyIDM4MjA0MDkzZDljOTI5ZDY0NGVmOWM1NmJiODlkYWY5OTQ1ODdjMGEgbGVnYWN5LXRydW5rCisxOTI4MyBhYTg0NDcxMTQ2M2FhODk0YWZmY2UwOWE4N2JiYWMzZjRjN2UwZTI3IGxlZ2FjeS10cnVuaworMTkyODQgOGIzMThiOGQ3OGM5NDQ2NmRjYmVmNWJhOTEyNWNiNTNiMzk2ZjI5MiBsZWdhY3ktdHJ1bmsKKzE5Mjg1IDVjNDAxMTM0MDljMzI3N2M2NjI0MWM5YmM3ZjNjZTYxZWU5MGFjNzcgbGVnYWN5LXRydW5rCisxOTI4NiAyNWVjNGY4YzYwYWFjZjZhMDI4MzQ5YmM3Mjg3MTI2MWVjZDcyZTIwIGxlZ2FjeS10cnVuaworMTkyODcgM2ZmY2M5YjNiYWI4N2Y3MTQ4ODQzNzMwNmQ3YzAyYmJiMGFmNDFlYyBsZWdhY3ktdHJ1bmsKKzE5Mjg4IDdlYTdhMWM1YThkMjAzYjNmYjI1MDJlNjhlZjE1NWE5ODgwOWRhODEgbGVnYWN5LXRydW5rCisxOTI4OSBjOGVmODY0YmE4NjFmMjM0Y2I1MzVhYWZkOGY4Mzc1ZTZhZmYzYjQ0IGxlZ2FjeS10cnVuaworMTkyOTAgNjQ5Njg0NGM0YTQyODA5MDZiNzUyOWNkMzhkNDkxMjQzZDQ3OTVmMyBsZWdhY3ktdHJ1bmsKKzE5MjkxIDhhNDQwZmYyNzRlY2JjYjFlNTM1NjY0MTliODljZTM0ZTA1Y2Y1YzAgbGVnYWN5LXRydW5rCisxOTI5MiAyYmU3YzkwYzFkZGVkMmU2NDEwYzE3N2Q5NTUxOGQ1ODg0NTNkMTM2IGxlZ2FjeS10cnVuaworMTkyOTMgYzE2ZTA2MWQyM2U4ODZiYjFiMTFjY2JhNDI5NDhkMTY2Mzc3NzIyYyBsZWdhY3ktdHJ1bmsKKzE5Mjk0IDZiNWUyMGY2OWU5ZWU5ZDU2Y2JmNTBjZGUwNDYzNDQ2ZjhjOWE3YmUgbGVnYWN5LXRydW5rCisxOTI5NSAwMDc2ZThkMjhmOWViYTllZmY0NTA4Njk2ZGMzMzczMGFmMmI0MDAxIGxlZ2FjeS10cnVuaworMTkyOTYgNWE0YmRmYzY2MDgzZWNjMzNjM2MyMDBkODE4NGVhZjUyNmU5ZmY4NCBsZWdhY3ktdHJ1bmsKKzE5Mjk3IGE2MjE5OTUwNzY2ZTc4YWYzODZkOWU0ZWU1ZTdhZTJhMDVmMGUzYmUgbGVnYWN5LXRydW5rCisxOTI5NyBiMzgyZjFmMDdlYzZiMmM5NTU1MTY1OGIzMGM2MTM5ZWViMzIwNzdhIGxlZ2FjeS10cnVuaworMTkyOTkgNjc5ZjgyNmIyNGNhMjY5YjhmMThjNDA0M2VjZjVjM2Q1YWQ4N2ZmNiBsZWdhY3ktdHJ1bmsKKzE5MzAwIDI0NmIzYTZhYTdhOTQxMWVhNzc4NjEzNGEzMjVmZDAyMmQ0ZjJmZTEgbGVnYWN5LXRydW5rCisxOTMwMSBkNTU3ZmYwYTJmNmM5N2Q0MmE4MDMyNDM2OTljNTEwMWNlNWIxYjBlIGxlZ2FjeS10cnVuaworMTkzMDIgN2EzOTcwNGE1MDQ3ZTRmNmZjNzMwMTEwOTJiZTJkZTkyMTU4Y2QzMiBsZWdhY3ktdHJ1bmsKKzE5MzAzIGM0NTNmYmYzMGY2MTM3NzgxZjRmNTg0ZDA2OTgxNmQ4N2QxYzViMDMgbGVnYWN5LXRydW5rCisxOTMwNCBiMmM1MTZiYjczNGE3MjllYWYyZGU2Y2M3NjY2ZGVjZTQwYzM0YTI1IGxlZ2FjeS10cnVuaworMTkzMDUgY2U5ODUwMDUxMTIwNDkwZGUzMDg1MmQzZWJjOTdjMGEwZDI1OGVlYyBsZWdhY3ktdHJ1bmsKKzE5MzA2IGI3OGM4ZDhjNTJlNjFmNmExNmM2OTU4MjVlZDczYmJkZGYzZGYwN2EgbGVnYWN5LXRydW5rCisxOTMwNyBmOTNlMjNhODJhNzNkMmYxYmE5YTZlMGIwMjQwOTA3OGQ1NjFkNDljIGxlZ2FjeS10cnVuaworMTkzMDggNTc1ODcyNTg0YjBjZmM2ZGQ1ZjMyNjEwODE2MDg5YTBmMTkyZmVkMSBsZWdhY3ktdHJ1bmsKKzE5MzA5IGFjNTJkMzcyNzg2NzNmY2Y0NzM5NGVlNzcxOTU4ZWRlYzM4YzM3ZTQgbGVnYWN5LXRydW5rCisxOTMxMCAxODc3MDU3YWE5MjYyMDc2MTdiOTVmNmM5ZTg0NmY0ODY1MzRjN2EzIGxlZ2FjeS10cnVuaworMTkzMTEgNjRhMzJkZjVjMDYzNDVkODkwNmViMjVmNzgyM2RkYmVkZmM0MGZlMiBsZWdhY3ktdHJ1bmsKKzE5MzEyIGFmMzlkZTI2MmI5YzliOGYxYjdmODlhYWJjZWY1ZjMxODRmYzBhMTQgbGVnYWN5LXRydW5rCisxOTMxMyA5OWJlZmVhYzg0MDBmZmE4MDYyOTkwYjE2NThhZWU3NWZlZTBiNzA4IGxlZ2FjeS10cnVuaworMTkzMTQgMjg4NWEzMzk2MzVlZGU5YTAyNzFjMjkwZDMyZDM1NTg4Yjk5MzIwMSBsZWdhY3ktdHJ1bmsKKzE5MzE1IDJlM2RkNjJjZWFjNWY4ODQzOWUzOWMzODAxMmEzYjM2YjE4Y2I1OWYgbGVnYWN5LXRydW5rCisxOTMxNiBkZGNlNzE1ZTQ5YmEwNjc3ODdkNWFhMDliYTAwMzRiOGJmOTA4OGRjIGxlZ2FjeS10cnVuaworMTkzMTcgYjMwNWMxNTM2YjdhYTRkNDIwYmRiZDg3ZGZiYjM1Y2YzNzJiNWE1ZSBsZWdhY3ktdHJ1bmsKKzE5MzE4IGE1MDZmM2I3NTY5NDE0OTkzZTgxNGYwNzc1ZjgxMjRjODQzNzI2MTMgbGVnYWN5LXRydW5rCisxOTMxOSAzY2M4NjM1NTg3OTMzZWM1YTkxYWI2MGNiMzZiOTM4MzE4YzBjN2FkIGxlZ2FjeS10cnVuaworMTkzMjAgYzk5ZDZkNWFmZDc1ZDBiY2IwMGViZThhYjliYTU3NjMyMjRiZDJlNSBsZWdhY3ktdHJ1bmsKKzE5MzIxIDVlZjcxY2I2NjQ5NTM2MTQxZmRlZmRkODVlYWI2ZTEzYTk5NmEyN2QgbGVnYWN5LXRydW5rCisxOTMyMiBjMThhYzhjMmYwMzY1YmE3ZDNhNTllNjcyNThkMjAxOTRiMTk2NDYxIGxlZ2FjeS10cnVuaworMTkzMjMgMGJiMTcxMjdiMmY4ZWEzYzI4YTlmYWFkNmM0Y2RjNzNjN2YxMWZkMiBsZWdhY3ktdHJ1bmsKKzE5MzI0IGE0ZjZiNjMzMjMwYzM3MjJkMzdhOGRiNWI2N2FiOWExZjMyOWUzODggbGVnYWN5LXRydW5rCisxOTMyNSAyY2E4NzgzY2U4YTM1YWU3ZTJjZTkyM2MxNGNkOGZlMWZjMjY4YjBiIGxlZ2FjeS10cnVuaworMTkzMjYgMjg2YTlkOTg3Mzc1MzYzZDNlMmE1OTI1ODhlNzE1NmQ5MzQ5NTUwZiBsZWdhY3ktdHJ1bmsKKzE5MzI3IDY1YTcwODk1MDkyMmI2ZjhmODMyNGY5MDhiNTBhNmMwMzJiYzBkNTAgbGVnYWN5LXRydW5rCisxOTMyOCBlYTg4YzJhNzMxNzMwNDRmMTQ4MGE5YmZmMTJhZDhhMzU2MmNjMTlkIGxlZ2FjeS10cnVuaworMTkzMjkgMWM3MWFhN2Q1NTEzMWFiZjJkMDBiYzFhMjBmNjQyOWYyYWNlZjUwNSBsZWdhY3ktdHJ1bmsKKzE5MzMwIGVkNDMzOGM3ZThhNDVjODk3YmY4NDAzZWY1OGRkZDkzNDY1NDJiZTQgbGVnYWN5LXRydW5rCisxOTMzMSBjMGIwZmMxMzI3OWUyMzIxNjQ3YzI0OGRhNzA3ZDY0NGU5NWNmOTNmIGxlZ2FjeS10cnVuaworMTkzMzIgODA3Y2E2OTc2MjBhZWUxOGJjMjZhZTMwZDEwMmUzZDk5YWJmOWVhNSBsZWdhY3ktdHJ1bmsKKzE5MzMzIGFiMDJiYzZhNWFiMmNhZGMwODg1OTZjNjgxODNlZjJlMjdhMjNkN2QgbGVnYWN5LXRydW5rCisxOTMzNCA1NDllOTkzYTQ3NmNkNzBmMjUzNjkzMDMxYTQ0NGFmMTk1NmJjMjIyIGxlZ2FjeS10cnVuaworMTkzMzUgZjViY2JhNWZhNDFjOGIwYzZmMmE5Nzg0YjY1MzQyMDE0Zjc2MWNhZSBsZWdhY3ktdHJ1bmsKKzE5MzM2IDRkNDA2YzI2YzE2ZWE3OWRhN2EzNjk3MzI3MzYwMWQyYzJlNTA0YzYgbGVnYWN5LXRydW5rCisxOTMzNyBiNjMxM2M5MTE0ZWQ2ZDEyYzZhOWNkZjE2MWEzZDFkOGNmNjRjM2MwIGxlZ2FjeS10cnVuaworMTkzMzggZjdiMTY3YzgzMzE4NThkZDc0ODM1ZmQ0YzgxOWM4MjdjMDE0MmRiYiBsZWdhY3ktdHJ1bmsKKzE5MzM5IDU3Y2U5MmExNmIzYzllZWIyOGE2MzBiNzVjMjg5NmNjNjg3OWM5YmUgbGVnYWN5LXRydW5rCisxOTM0MCBlZGMwYzk5YTY5ZDZkMjI1NjIyNzNkYmJiNTljNDVjOWM2YjZhYzAyIGxlZ2FjeS10cnVuaworMTkzNDEgZDU5NjYzZDNlNDMzYTM1OTk3Y2U4NjlkYzMzNDBhYjBhYTI0NjFhYiBsZWdhY3ktdHJ1bmsKKzE5MzQyIGU5NzIxN2Y1YjMyMzE5ZjNhN2Y5ODdlMzIyZWZjYjY3ZmYyZGQ5OWUgbGVnYWN5LXRydW5rCisxOTM0MyA4MTFiMGNjYjYyYWVjZTkzN2QxMDNkYjllYzVhM2ZjNzQxMDhlOWQxIGxlZ2FjeS10cnVuaworMTkzNDQgMWZiN2JlZmI1OWYwNzNiMDFiYTE0NDdkZjM1NjExYTA3ZWVkOTdiYSBsZWdhY3ktdHJ1bmsKKzE5MzQ1IGMyMzNlZmNiNDg5ZTViZjVmNDdjNGU2OTRmZGUxMGQ0OGMzYWZjYzMgbGVnYWN5LXRydW5rCisxOTM0NiBiZjk3ODE4ZGQ5ZTFlMjhiOGFkMWRkYzlhZjU5OGUzMjEyMmQxZThmIGxlZ2FjeS10cnVuaworMTkzNDcgNWYxMmRmODhhMjA4NWFhMjM4OWUwZTI1MmRiMWU5ZGU5YjUxNTRhOSBsZWdhY3ktdHJ1bmsKKzE5MzQ4IDQ2NGRlOGRmYTU5ZTlhNzVkYWQ5ZDQ3MTk4ZjZjODJlZDk1NWIwNjcgbGVnYWN5LXRydW5rCisxOTM0OSA3NzFkYmIxNTU1NzVmYmNmZThkYTVkN2Q4ZGNlNDI4ZTE5MDA1YzY1IGxlZ2FjeS10cnVuaworMTkzNTAgOTJjYmVmZGI2NzRhNjVjZDc4MjFiY2M2N2FlZGRhYTI4OWI2Yzk5MiBsZWdhY3ktdHJ1bmsKKzE5MzUxIGE2ODg4NGRlMTJlYzU0ZTU0YjY4Yzk2ZDczNTUzZmRmYWJkYTBmZDIgbGVnYWN5LXRydW5rCisxOTM1MiA4N2YyYWJiNzMxODQ4YjZmZmEyYmYyNDk2OGFlZmY2NTk2NmE3YzhkIGxlZ2FjeS10cnVuaworMTkzNTMgYTRjNmU0MDFlZTE4NGMzZmZkNTI1ODA0ODMzNDMxM2UyM2IzMDI3NiBsZWdhY3ktdHJ1bmsKKzE5MzU0IGZjNGFjZTAyNDJjYjA5NGI2YjM2ZWQ2MWRiMTY2ODNlNzhjNDczYWUgbGVnYWN5LXRydW5rCisxOTM1NSA2ZTVhYjc4NDBiMDVkMGJjOTRkOWJmZWVjMTkwNWEyY2ZiYzUwYzM1IGxlZ2FjeS10cnVuaworMTkzNTYgZjRkMTVmZGQxNWRkN2IxZWU3NTFjYjc2OTIzN2YyZTkwODZjNjQ2MCBsZWdhY3ktdHJ1bmsKKzE5MzU3IDY5ZjE2MmRjZDhiNGMwOWM1ZWY0ZGRkNGI1N2I5MDdiNzlkNmY4YzkgbGVnYWN5LXRydW5rCisxOTM1OCAxZmY5ZDU3MWJhYzA5YTc4MTU2N2UwNmE5MTdkYTVlMDk5ZjgwZTgyIGxlZ2FjeS10cnVuaworMTkzNTkgZDMyOTYwNjM2MWY4YjNiYzVkZTU4NGQzM2VmMzdkOWQ1MmNlOGU4OSBsZWdhY3ktdHJ1bmsKKzE5MzYwIGY3NTFiOTZkZTYyMWVlNzE0ZTVhYWU1YmJlOGM2ODBlMWM4NjllNzQgbGVnYWN5LXRydW5rCisxOTM2MSA1OGRlMjgyOWNmZGQzYjg5ODEwMjU1M2NmOTdlZGY4MTBjOTRjZWExIGxlZ2FjeS10cnVuaworMTkzNjIgYzk3ZTYxODlhZDk2YTllYWQ1MmFiYTUxZjRiOTM4YzVlMjc5OGI1MyBsZWdhY3ktdHJ1bmsKKzE5MzYzIGIxMTc4MGIwNjhmYTZjMTIyOWNiZWQyOTVkZjNjYmU5NzQwNzVmYWIgbGVnYWN5LXRydW5rCisxOTM2NCBiZjAzMDlkNWZjMGE5MzllOTBhZWIxYjc2M2UxMjhiZjQxNjcyYTVkIGxlZ2FjeS10cnVuaworMTkzNjUgOGQ3NjU1YWM4YmY4NjhhNTM0ZTA0MTM4OTY5MDY2OWNjYWQyMGQ4NyBsZWdhY3ktdHJ1bmsKKzE5MzY2IDZmZmNlOGJlM2UwYjhkZDMxNGM2OTZlNjYxYzY0ODA2ZWRhNGFmNmIgbGVnYWN5LXRydW5rCisxOTM2NyA4OGM4N2M4OWI0MDY4MDA3ODk0YTExOTI1YThiNmNlNjVjNGVjYTIyIGxlZ2FjeS10cnVuaworMTkzNjggYjI2Y2JjMWZlNGUzYjViZjYxOTZiYTY5NTM4OTE2ZDY0YzkzNmQ0NSBsZWdhY3ktdHJ1bmsKKzE5MzY5IGJkZmM2YmY3YjBkYWU3ZDIyOGFhN2ZmZDc1MDlmZDZkYmJkZWVhYmUgbGVnYWN5LXRydW5rCisxOTM3MCA1YzNiZjJlODlkODAxMWFmYjVmZWY2OGI5OGE3MWEyNmIzNzU5YzdmIGxlZ2FjeS10cnVuaworMTkzNzEgNWY1ODhkZDU0MzliZjAwNmExNmRmMGYxNDUxZDBkZjRiOTA5MGYxMSBsZWdhY3ktdHJ1bmsKKzE5MzcyIGM4N2ZkZjdkZTBlNmI4ZjkxNzcwMGQxMDhmMWFlMTcyYTcyZmNiNjIgbGVnYWN5LXRydW5rCisxOTM3MyAxOGVmM2Q1ZWFiNGYyMmNiOTNhN2M3MDAyYTZhYzZmYWE4NDQ3ZDYwIGxlZ2FjeS10cnVuaworMTkzNzQgODkzYTUxNWQzMzFhNzNhYWIzNjdkOWUxYmFmOWFhY2ViZmRmNWM4OCBsZWdhY3ktdHJ1bmsKKzE5Mzc1IDU2NDNlMzdiOTlhZTY5ZWVmNjNiYmVlNWU0YjdjMDk2ODE5MWY3Y2UgbGVnYWN5LXRydW5rCisxOTM3NiA5MGM2MDBhODE5ZTk2ZDQ2MDY5NzllMmQ2OGUzOGRkMTRmZGI0MTEyIGxlZ2FjeS10cnVuaworMTkzNzcgOGJhNmJjOGMyZTA5MzgxZjM3NmYxMTkzOWE5ODljOWQzYzQxMTRjNCBsZWdhY3ktdHJ1bmsKKzE5Mzc4IGFmODg0NjU5OTljN2E2YzAzMzQ2YmIwYjhmNzVkN2U4ZmExZWUyNjAgbGVnYWN5LXRydW5rCisxOTM3OSBlZWU2N2E4NGU1ZmFhZjMwMGExZWYyNjgxYjg5OWUzNjgwMWQyZmY5IGxlZ2FjeS10cnVuaworMTkzODAgYjNkOTIzYTY2MTUyY2Q4ZDUzNjlmNjllY2ZhNGZkMjQ4ZDhlMTE1NSBsZWdhY3ktdHJ1bmsKKzE5MzgxIDYzMWQ0YzhkYjc4NDA4MDI4NjdmOTNiMzk2ZjIyNWE2MWY1N2MzNTcgbGVnYWN5LXRydW5rCisxOTM4MiBjODAyMzg1YTZhYzNlNjQyMjY5MjhhYzAzZTI4YzY4N2Q1ZDQ1M2I4IGxlZ2FjeS10cnVuaworMTkzODMgZTNkNDg4MDc0OGI1YzQ3NWM0YzU4ZThmZjAwM2VlYTUzZDFiNDQ5ZiBsZWdhY3ktdHJ1bmsKKzE5Mzg0IGY0Mjc5OWM2ODkyOWVlNjRjOWM4MjRmNmY5MmFhZDVkZTlhYjgyOTUgbGVnYWN5LXRydW5rCisxOTM4NSA5ZDYyNTMwM2Y5MTRiZTgzMGE5OTI3ZDNhNTRhMjUxMDVkNjE1ODU1IGxlZ2FjeS10cnVuaworMTkzODYgMjRlOTQ2ZTk1MWZhMmEzNWExOGE1OTIxY2E0ZDY5YWE0NTBjMjM1OCBsZWdhY3ktdHJ1bmsKKzE5Mzg3IGMzNjk2N2JkYzlkZDRkYWJiNzhiYzVmNzI0MGNlMzIwOWI3ZDRiMGEgbGVnYWN5LXRydW5rCisxOTM4OCA1N2QyNDhkZGJlMmFiYWI0ZGZmNGFhNjZjNWIwODY4YjgzN2RlOWY2IGxlZ2FjeS10cnVuaworMTkzODkgYThlMTIzZGYyNjhiOWNiZmEwNTAxODcwMGI2ZDFhNmU1OTM0NzIxNyBsZWdhY3ktdHJ1bmsKKzE5MzkwIGYzZTgzZTUxNGRkODlhZmNlZjgwNDk4MGY3ZjQwMWRjZjFiZjFjYmYgbGVnYWN5LXRydW5rCisxOTM5MSA3NTFlOWNjNDc3ZDlkMDM0OTI3NWRhYjkzYWNiYThhNGEyNDYyYzA1IGxlZ2FjeS10cnVuaworMTkzOTIgYTgwZjY3YjcyMzA4ZTlkMDUxNWJkYjQ5YWZmYWRlZmJlYzI1Njg1ZSBsZWdhY3ktdHJ1bmsKKzE5MzkzIDA2ZGQ5NGUyMGYzYjgxYmNjMTQwOGQ1MzcyOGIwMTI2NTQwZDNlZTcgbGVnYWN5LXRydW5rCisxOTM5NCA3ZmM2NGRmMTNkYjBhY2FmYzYzMzkxZDAyZGM0YWEzYjYxNTE2MDc0IGxlZ2FjeS10cnVuaworMTkzOTUgYzQ4YWYzOWNiMjkyZTAxYjdjOTJiNzAwNzQ2ZmNkZjY4ZThhOTgyYyBsZWdhY3ktdHJ1bmsKKzE5Mzk2IGI1OWYzYTFlYjEyMzkxYmMxYWVkYTc1YTY5ZDkyYzMzOTVmMTkwYjUgbGVnYWN5LXRydW5rCisxOTM5NyAwODRiM2RjOWI2ZmYzMTAyYWU4ZDVmOWU5YjdjYjRiNzliNTQ5MmJhIGxlZ2FjeS10cnVuaworMTkzOTggNTRmNzIwOWNjNzFlN2I2OTA5ZDMyZjJjMzZkMTRjOGVmNDE3ZjRkMyBsZWdhY3ktdHJ1bmsKKzE5Mzk5IGY0ZTcxYmFiNzg1M2M5N2I1NTc5NzkwOWMwZWZlOTY2NGNhMWQzZGMgbGVnYWN5LXRydW5rCisxOTQwMCBhNTQwYzZmZDBjZWQxZDg4MWRiZWNhMTdiODIxYjIxMjdlM2Y0MTdjIGxlZ2FjeS10cnVuaworMTk0MDEgYTQ3ZDkzZWYxMDNhNzY3M2JjMjJmM2I2NWU3ZjUyZGNhYjMyYjhkNiBsZWdhY3ktdHJ1bmsKKzE5NDAyIDgyMzZmM2U3NTg1ZTE0ZmM4MDAwYTRhOTI2ZjRlMDU1MTdjNDA2NzYgbGVnYWN5LXRydW5rCisxOTQwMyA4ZWVkMzczYmNlN2ZlNTBhZGUyYTYxZjU3ODRjMDUwYTRmOThhNWFiIGxlZ2FjeS10cnVuaworMTk0MDQgZmVmNGMwMzk3MzNkY2I4MWRjNzc5NGJjMjk1OWNlNDE2YWEwYzNiYSBsZWdhY3ktdHJ1bmsKKzE5NDA1IDEyMTRhYmVhMGM3YjJhODM1MTE3MGQ4ODg0NTVhM2U2ZGQyZTFkNDAgbGVnYWN5LXRydW5rCisxOTQwNiA0NjUyNzIzZWE2NTVjYTgyYThmZTI2OGExZTFjNDY2N2E3MTNlYjZkIGxlZ2FjeS10cnVuaworMTk0MDcgMzhlY2ZkMTFkOWI1M2EyNmM0Y2ViMzFjY2MxN2U0OGViOWFlOGM2NyBsZWdhY3ktdHJ1bmsKKzE5NDA4IDYwYTJlOTljODYzYmU5NzE5ZTMxNDM4OTU2OGRiMzhhOWUwNTFhMGMgbGVnYWN5LXRydW5rCisxOTQwOSBjYzljYjFlOTBiM2QyNGJkNzhkMzQwM2IzN2ZhYmE4NTNkMTU3MmMzIGxlZ2FjeS10cnVuaworMTk0MTAgZGE4NjgxZjE3YjUwMGU2NGUxZGU2NzFkNDRlNDUzYjRmZWI1N2NiMyBsZWdhY3ktdHJ1bmsKKzE5NDExIDdlOWY0MDUxYmE0YWYxM2ZmZDVhNWNjOWYxZTRlYWMwMmNmMzNkMjYgbGVnYWN5LXRydW5rCisxOTQxMiA4ZjcwYjVkZGQ1YzA4ZjY0MDg4ZjY3ODNjYWFjZDVjNTM3ZjdmYjZlIGxlZ2FjeS10cnVuaworMTk0MTMgN2RlNTA0MzgyN2Y3MGZkYzE4NmI2ZGY2ZWVlY2JjMDIxODcxZDRhMSBsZWdhY3ktdHJ1bmsKKzE5NDE0IGU1NTkyZjFlZjQxZjg2NTFmMjdlM2ZiNjVjOGIxMDU1MWQ2YThhZmUgbGVnYWN5LXRydW5rCisxOTQxNSA5YTk1Nzk0ZTBmN2VjNjViNTM2OWRkODQ1ZjdiMGYwMGI4YmI5NjdkIGxlZ2FjeS10cnVuaworMTk0MTYgNDQ0YzBlZWQ1YTY2YzVhYzk1NTIxYjQ3M2QwNzg3NGE0ZjEyNGMzOCBsZWdhY3ktdHJ1bmsKKzE5NDE3IGQzOGFmYjIwYzMzNmE3MjRhZWUyMzI0Mzg5MTc5MzViNDVkNjRhZTYgbGVnYWN5LXRydW5rCisxOTQxOCAyN2ZjZTJkN2ZhY2RiNDI3ZDk3NjhhYjgxYTZjYzJjZTU0ZmQwYjg0IGxlZ2FjeS10cnVuaworMTk0MTkgOWNlOWUwMzQyY2MxZjBmMDJlNTliZWNiZWU3NjBiMTY5ZDc5YmJlZSBsZWdhY3ktdHJ1bmsKKzE5NDIwIDE5MmU5ODU1YzdjMDA2NTU2YWQyNzhlMzBlYmE2N2E5ZDVmNWQ0Y2UgbGVnYWN5LXRydW5rCisxOTQyMSA4YzFjNzg3YmQ2ZjllMmI1YTVkY2QzNWVkMjRkNmUzMThkNTJhYTYxIGxlZ2FjeS10cnVuaworMTk0MjIgZThlNjM2Y2MxYTA5MzNkNmU3N2NjZGYwYzEzMmJmMDIzMzE1NDEzZiBsZWdhY3ktdHJ1bmsKKzE5NDIzIDBkMTMwNWM4M2RlNGM5ZTBkYzU4MWRmM2YwMzE2ZTJiMzYxOGI1MDEgbGVnYWN5LXRydW5rCisxOTQyNCA2MjM0NTY1NzZkNmE4ZTU0ZDVlOTBiNDY4MDY4YmQ4ZmMxMzU1OGQyIGxlZ2FjeS10cnVuaworMTk0MjUgMzBkMzRiYmY4NjIwMWFhOThjOGI0YTg2YTY4ZWYzYThmMTBkM2JmOSBsZWdhY3ktdHJ1bmsKKzE5NDI2IGQzNDg0Y2E0MGI4YTBkN2Y5MTFjYWMxMjQyZDYyZWJhMzY2ZTY5ZDAgbGVnYWN5LXRydW5rCisxOTQyNyAyM2I1ZTdkMDNmNzZmYmI4NTk0MGIwMDIwMDlhZWQxMTI1NmRkNmM4IGxlZ2FjeS10cnVuaworMTk0MjggNGNlZGM4MjZiZWU4YjZkMTk4NjQ4ODg5OTEzOWNjNDg0YWYyMDk2NiBsZWdhY3ktdHJ1bmsKKzE5NDI5IGI0ZmYxY2Y0YTEwZmFmYjg3ODI5NDYxYjdmNTUyOThlNWM0MjFmMjYgbGVnYWN5LXRydW5rCisxOTQzMCA5MTc2MzAxM2MzNmZjZjVjNmUxZTA5YmMwYzJjYzQzMTYyM2RjMGM3IGxlZ2FjeS10cnVuaworMTk0MzEgYzkwNGE0MGUxNGVhOWZmM2U0NzIwMTMyODZiMTVhMjJhMjMwNzdmNCBsZWdhY3ktdHJ1bmsKKzE5NDMyIDg2NTczODRkY2M0YWIyODNlZGQzYTcyZDM3Y2RkM2I4NjNjNzZmMGYgbGVnYWN5LXRydW5rCisxOTQzMyAyYzY0MTdlZjQ2Mjg1MGJkZWY4NjdlYWE2YmEwYzlhMjM4NTA5NjExIGxlZ2FjeS10cnVuaworMTk0MzQgZWUwZGQwYzc5NjRlZGJjYTA2NjNhMjY0ZGE1YTA2NzQ5MjkyNmExNSBsZWdhY3ktdHJ1bmsKKzE5NDM1IDQ3NzJmZTJkYjJjNDZjMjQ1YWUzNDg1YjgzNjkxNWNiZDU3M2I5MWEgbGVnYWN5LXRydW5rCisxOTQzNiBiZjljMjRiZWRhN2Q1NzUzNGU5MzBmNjY5OTU5OGU3MDJmYjdlMzA3IGxlZ2FjeS10cnVuaworMTk0MzcgNWYzYTgzNTA2MTVjOGI5Y2U2Mzg3MjM0NjhhMjliNTMzYzY3NzE1MyBsZWdhY3ktdHJ1bmsKKzE5NDM4IGY2NTQ0NjhiOWFlOGE5YTA1MWFhYTI4ZGNlN2VmMThhNDYzMTJmZjcgbGVnYWN5LXRydW5rCisxOTQzOSAwNjhjYjg0OTRiN2IxZTY2MWZmMDM0MjI2OTk3ZDk3YzM5NmUwODMzIGxlZ2FjeS10cnVuaworMTk0NDAgYjQzOWVlZGEwMDgyOGYzYmYwZDZhZTUwNTFhNzJlZDY0N2M3ZTI4YSBsZWdhY3ktdHJ1bmsKKzE5NDQxIGE2M2RjNTliZTBmOTg2YTI0MmFiM2Y0NDQwODk4M2IwODhjMjMyMjQgbGVnYWN5LXRydW5rCisxOTQ0MiBkYTE1ZTVmNjg2NDRhOTYwZGViMGI2YzcyNTViNTlmZTFhMzlhNzVmIGNucmktMTYtc3RhcnQKKzE5NDQzIGUyYjJmZTdmYWJiODk0MzkwNDFlMWE1YzgyNDczNjc2YmQ4ZGQ4MTcgY25yaS0xNi1zdGFydAorMTk0NDQgOWQwOGMzNzQ3M2NiOTI2YWJmOTYzOWQ2NzY2NWYxOTY3NWRjMmVlNCByZWxlYXNlMjAtbWFpbnQKKzE5NDQ1IGMwY2RmODI1OTllMDNmMzk0Yzg1MjE2ZjBiNmNjZjE3ZGIyNWIxMDAgbGVnYWN5LXRydW5rCisxOTQ0NiA5YThlOTYxYjUwNWYwMzA2OTZkMDJjZjFjOGEyYzMwMjg3MDQxYjUzIGxlZ2FjeS10cnVuaworMTk0NDcgODE3ZGY5ZWZhY2JhZTc0MzAxNmY1OGVmNzcxZDBhZmVmMTBlNzRhOCBsZWdhY3ktdHJ1bmsKKzE5NDQ4IDNmNmMwNWUwNDA4MjZkYzcyMjlkNDNkYjM3NDE0MjQxNmYwMmQ4ZTggbGVnYWN5LXRydW5rCisxOTQ0OSBhYWUyYmI4YWMzNzM5ZTBjNThlNGYyZGY3YmQ1YmRjZTFhMzlhNjRjIGxlZ2FjeS10cnVuaworMTk0NTAgNWZhMjU1NDJiODk2NzVkNDJiMTVkOGRmYTU1YjZmNjYyMzJiM2M0NSBsZWdhY3ktdHJ1bmsKKzE5NDUxIDliYjJiNjk2M2M4MjVhYTkwZTVlZTZiYzBmNzkxMWJhN2NhYzU3ZjggbGVnYWN5LXRydW5rCisxOTQ1MiA1NmE4MTA2YmFmNjM1YWRhMjkwMTk0YjYxOGIwNWMxZDVlOTg4ZGUxIGxlZ2FjeS10cnVuaworMTk0NTMgYmE4NDQ2M2VmYzdiYzVjYmVlZmQyYTczMGE0YjhiOTEyNjhjZDIwMCBsZWdhY3ktdHJ1bmsKKzE5NDU0IGY4MTNlOTg3ZTY1Y2U0MGE4M2Y0ZTkzNjJjZjBlYmI0NTdiZWY2OTAgbGVnYWN5LXRydW5rCisxOTQ1NSBkZjdkNTJhZTIwZTRjZDA1MzYwYzhhMWU3YWEwOGNiOTgzNzlhNWVmIGxlZ2FjeS10cnVuaworMTk0NTYgNzRhZTgwZDkwZmE2Y2MyNjQzNjU5YTg4NjU5YzFmYzEwNDUyZGVjYyBsZWdhY3ktdHJ1bmsKKzE5NDU3IGIzNjI1MTMxNmY2YWVkYTZlM2I5ZmI1MWQ5NjA3ODhhYTEyZDNiMTYgbGVnYWN5LXRydW5rCisxOTQ1OCA5ZWY5NzhjNmYwMzk1NjUwYzk5YjcyYjhhMDExNGQ4MmIwNGQ5YjM0IGxlZ2FjeS10cnVuaworMTk0NTkgZmZkYzcxODViZGFiZDYzZTA0OTMwYjAxNTc2YThmOTI2Nzg5ZDBhYyBsZWdhY3ktdHJ1bmsKKzE5NDYwIDA4NTUxMTkxNjc3NjI2OTZjNmExOGE0YWU1N2NhZmUwODA2NDA0M2IgbGVnYWN5LXRydW5rCisxOTQ2MSAwN2ZmYjBjM2JkNWVlNjdjMThiZWI3YjIyMTQyZjQ1M2Q1NDBhZTMyIGxlZ2FjeS10cnVuaworMTk0NjIgZTEwNDM2NzI1NmYwMjAzNzU0ZDRmZmE1ZjczYjgwNzZlNDlkYzRjMCBsZWdhY3ktdHJ1bmsKKzE5NDYzIDI2MGYwMzNhZTdkZjM4OThiOTMzYjZmMmU3NWNjYWFjZjFkNDBlMGUgbGVnYWN5LXRydW5rCisxOTQ2NCA4ODVkNTQ1MjQ4ZGIzODA3OTMzNzE1MTAzYWMwMjYyYjNkOWY5OGJjIGxlZ2FjeS10cnVuaworMTk0NjUgMGI0NTVhNDI4OTY3Nzg3ZTA0Y2NmOGMzOGM4NDZhNDhjOTcyYzQ5OSBsZWdhY3ktdHJ1bmsKKzE5NDY2IDk2ZDg4NjhhMDAyODRkOTljODhlMzk0MjgyNGE3NjUxOWMyMDYwNjIgbGVnYWN5LXRydW5rCisxOTQ2NyAwY2Q4N2E1ZDFlZjk3NGVhZTdmMDFjMjk4YmVhOTQzYWRjNWZkNDZlIGxlZ2FjeS10cnVuaworMTk0NjggZWYyYmUxMmIxOGZlYTM5NjZhOTdlOGE2MjQ0YjM2NWQ0MDNkYjBlYSBsZWdhY3ktdHJ1bmsKKzE5NDY5IGIwNWI4YjZjMGI0MzA5ODljN2I3YjZkOGM0MzliNTVmZTE4NjhlMjggbGVnYWN5LXRydW5rCisxOTQ3MCA0NGVmNjQ0Y2I1MjZlZWI3ZmRjMmE0NGQ4ZTdkOGEwNGNjYWE0MTA3IGxlZ2FjeS10cnVuaworMTk0NzEgOTQxYTc2ZjM4NzQ3NDI1NjE0MThkYjlkYzQ2N2Y4YzE5ZGEwMWE4ZSBsZWdhY3ktdHJ1bmsKKzE5NDcyIGY0MjVkODUyMzQ4MGIwMWZjMzY0NjEwOTI5NTViN2FlNjhlMTY0YzEgbGVnYWN5LXRydW5rCisxOTQ3MyA3MzMwNjk0OTExOWMwNGQzNThhMTA1NjhhZTBkMjNjNmY1ODQ5NjAxIGxlZ2FjeS10cnVuaworMTk0NzQgZjBmNTcyOWQ2MDNmYjU5ZjhhOTZmNjczNzE1OTgzMTZjNmI2ZWQ5NCBsZWdhY3ktdHJ1bmsKKzE5NDc1IGUzY2ZmYzAzOTRiZmI2YzA0NTJiNTg2NWM4Nzc3MzJkNmQ2MzA2NDUgbGVnYWN5LXRydW5rCisxOTQ3NiA4ZWYyNDY3ZjAxOTFiYjYxMDA0YjMwMDZhZGYwZjlmMDk3ZjdlZDQ5IGxlZ2FjeS10cnVuaworMTk0NzcgZjY4ZGJmZmZmOTI3YmZhNTY2ZmQyYzNhOWU4YWVmYjViNjEzMGFkOSBsZWdhY3ktdHJ1bmsKKzE5NDc4IDIwZTUyZTVhNDA4YTE2ZjAyODY2YTZmYWUyMjg2M2QwNDJhNGExZDYgbGVnYWN5LXRydW5rCisxOTQ3OSA4ZmY0Y2Y0OTI2N2VjNTQ3OTAxYzBkZTZmNjUyMThmYmIxMDBjNmJlIGxlZ2FjeS10cnVuaworMTk0ODAgZTJhNjM1ODQ1NjZmODJkYjkzN2UwYTMzMWExYjNiZGY4YjI1MjdlNiBsZWdhY3ktdHJ1bmsKKzE5NDgxIGUwNTBiOTRmMDRkM2M5NjcyNzkzZWY2YTQ5Y2QxODNlM2ZmOTM3ODggbGVnYWN5LXRydW5rCisxOTQ4MiA1NjkxNDg4NGFhYjYzMDFiNDc2MjRlZmNiMDYwOGQ2YzVjMTcyMzE5IGxlZ2FjeS10cnVuaworMTk0ODMgNGUyZDFjNmYyOTA0ZGE2NGJlZjNjNWQxMjkxZGY5YWQ4MDgzOGNlMyBsZWdhY3ktdHJ1bmsKKzE5NDg0IDFjNmJhOTQ2ZDhmYTBiZTJlNDQwMjEzZmI0Y2QzYTc0NWY1ZDQxOTggbGVnYWN5LXRydW5rCisxOTQ4NSBjOTU4Njc4NzIwZmRhYzQyNDY1NDVmNWE4OTg1NDVkZGIxMzAyZDA2IGxlZ2FjeS10cnVuaworMTk0ODYgOTE3ODBlYWQ4YzI1YjI3MjdjNDIyY2I4ZjdlYTVmYzRlNmUyNjRjOSBsZWdhY3ktdHJ1bmsKKzE5NDg3IDNhNmI0YTAwM2ExN2U0YjlhZjZmZGZiMWQzM2E3MzQ5ZTk5ZjcyMmMgbGVnYWN5LXRydW5rCisxOTQ4OCA2N2EwNjY2ZjExZTMyMzA3MGY1MzI4NTIzMTFmYWQ3NWMzNDE2NjA5IGxlZ2FjeS10cnVuaworMTk0ODkgYzlmMjNmODBmYzkzMGQ4NWZiMjlmYTMzZWM4NDRlYmNhNmE0ZDI5OSBsZWdhY3ktdHJ1bmsKKzE5NDkwIDYxMTc2ODM0OWRkOTBmMzlhZGYxMDljZGNkOWUxYWUwOTNlYjBlMWMgbGVnYWN5LXRydW5rCisxOTQ5MSAwNjNkNWM0ZjZjZTU4YjM0MDg4MTFjOWQ0NzdhZjc1OGE1MjkxMzYyIGxlZ2FjeS10cnVuaworMTk0OTIgYzg3ZTcwMTdkNjZiMzNhODhhYmQ5OWUzOTFmOTU5MzViZDcxYjhlNCBsZWdhY3ktdHJ1bmsKKzE5NDkzIDk2ZTljY2JmMTY1ZjZhNGUyMDE1Zjc5ZDE3MTQ4MmYzYTkwOWIxNTkgbGVnYWN5LXRydW5rCisxOTQ5NCBjOTUwOWQ4NGYzZGY3ZjhlYjBmNjM4YzgyODIzMDFlYjY4NDRhNjZmIGxlZ2FjeS10cnVuaworMTk0OTUgZTM4MTQ1MzA2MjMxMjYzNWE3NDE2MzMxOTY4N2I0YzVhOTk5NmVhMiBsZWdhY3ktdHJ1bmsKKzE5NDk2IDA1NjRiMTM0YjU4NDAzNTUxYmRiYTFkMDk4Y2EyZjQ1MGNmZDk5NDYgbGVnYWN5LXRydW5rCisxOTQ5NyAyMTcyNzc1ODM0NjhkMDU2ODg0ZTRmM2I1YWQ1YjU5ZmZmYzc5ZTIyIGxlZ2FjeS10cnVuaworMTk0OTggZDQ1NTliNzQ1N2EwZTMyYTMxNTI1ZGFhYjQyNjk5ODIxYzFkMGMwZSBsZWdhY3ktdHJ1bmsKKzE5NDk5IDJmYjY0OTgzOTY1ZmYyMjNhZWEyNTIzOTFmZjM0Y2ExYjUzYTRhZTggbGVnYWN5LXRydW5rCisxOTUwMCBlMzBjMTk3NTMyYWExMjZhNmRhYTRiMDdmYzY5ODM2YTA2MWJhYzkyIGxlZ2FjeS10cnVuaworMTk1MDEgNTlmNGY2OTYwMTAxNjhkYTE4YTliYTlhNzkwZDJmNGUyZTNmN2EzZCBsZWdhY3ktdHJ1bmsKKzE5NTAyIDc5NTY4YzBkM2U3N2E2OTM2MmIzNTc5Y2NmNWI0NzUwMzU2NTBhMWYgbGVnYWN5LXRydW5rCisxOTUwMyAxNDZkZmU3ZTAzMzgyY2ViMjE5MGNiMTljZTliN2Q2OTE5ZDMwZTdjIGxlZ2FjeS10cnVuaworMTk1MDQgN2QxZTdiNmVjODM5NDUzNDg2ZGIyYWNlODFlZjFmNjI1OTJjZmU5YyBsZWdhY3ktdHJ1bmsKKzE5NTA1IDM4ZjY5NzJkYzhiNDE3ZmYyYmFiOTg1MzIxNTVlYzhkOTFjYzYxNjQgbGVnYWN5LXRydW5rCisxOTUwNiAxNWYwMDY0Yzg0MDA5NmVmZGM5YWRjNTU2ZjE3MzVjNzU4YWExOTFkIGxlZ2FjeS10cnVuaworMTk1MDcgZjdhOTc3Njc3MWFiMGVmZTFkNjcyMDkyZTkwMDEwYmFhYTVkMjNlNSBsZWdhY3ktdHJ1bmsKKzE5NTA4IDdmMTI3YmUwN2M1MDk1Nzc4MWUxYzM4MWVkZjc3YjM3OTA5NmE2MTAgbGVnYWN5LXRydW5rCisxOTUwOSBkNmQ1YzExZjc1YTkyMmU5NWNlMmI5Mzc0Y2MwZWFiYmQ2MDFmODc4IGxlZ2FjeS10cnVuaworMTk1MTAgYjllNTQ4MWY2NDRjMzBhZjc0NjM0ZDZjN2U1ZDQ5YzEzNmYxNGFlMyBsZWdhY3ktdHJ1bmsKKzE5NTExIDcyOGMxMTU2MjE4NzJmMTcwMWNlZTNkY2ZlN2YzNTNiOGYzY2RjYzIgbGVnYWN5LXRydW5rCisxOTUxMiBhNTFiOTk2MWYzYmJiMGMwNjA1ZGE3ZTEyZDBlOWNiNGVmMDc5NDdhIGxlZ2FjeS10cnVuaworMTk1MTMgOGQ4NTA5NjE3ODc0MWY1OTQwODg3ODg4OGUyOGJkMjBmYTJjODgyYyBsZWdhY3ktdHJ1bmsKKzE5NTE0IGQzZThiODgwNjUxYjdkNDczNTRlOTg5OTFiMTMzZjEyYzRiMzIxOTIgbGVnYWN5LXRydW5rCisxOTUxNSA5MTUyMWM1MmIxZGI1NWFmYzZkNmZjY2E0MjA0ODM5YzM5YWE0ZmRmIGxlZ2FjeS10cnVuaworMTk1MTcgZGE5YTRhMTY5OGYxZjY4NGU3OTY5MWI5NjY0YjdjNjA3YmJlMWM5MiBsZWdhY3ktdHJ1bmsKKzE5NTE4IGI5ZmU4YmQ5ZTVmNGZiYjA2ZDI5OTY3YWIyZmU2YjBjMGRiZDY3ODUgbGVnYWN5LXRydW5rCisxOTUxOSA1OTIxYjEyOWYzNTA0ODQzNWMwNmVjNzQ5ZDlmOGQ0NzA2MTFhZmQ4IGxlZ2FjeS10cnVuaworMTk1MjAgMWQ3YWVkMDc2OTY0ODEyNmE1ZjYwNGM5M2MxODJmNzFkZjhiYjMwNSBsZWdhY3ktdHJ1bmsKKzE5NTIxIDdmOGU4MTdhYzQyM2M0NTY5Zjg5MTU2OGI3ZDEwMWE3ZTIwYzc5ZWMgbGVnYWN5LXRydW5rCisxOTUyMiA3OWQ1MzM5MzRhYzFiMzA5NWUwYzRmOWE0YjczMWUyMWMwZWZmZjI4IGxlZ2FjeS10cnVuaworMTk1MjMgMWE1YTQ0MTc3MmZmNjNhYTlmOTE4YzFiZTllYjU5YmIyYjA2YTFiYyBsZWdhY3ktdHJ1bmsKKzE5NTI0IGRlZWM2ZmE4MDQ3MTA4MzdkMTc2ODEyZGY4ZTk1YWQxOTMyODk1M2UgbGVnYWN5LXRydW5rCisxOTUyNSAwMDQ5Zjc3YjM2YzYyMzIzN2U3MWQyOTY5ZDFiZTE2NzdmZjA5ODdlIGxlZ2FjeS10cnVuaworMTk1MjYgNmFmNDE1ZjBjMDFlYjAwZDIzNzI0OTY1Y2UyMzllNzAyM2U2MTY3OSBsZWdhY3ktdHJ1bmsKKzE5NTI3IDg5YzFjY2VmNWNlODM2MGUzYjQ2NjQwM2EwM2Q3MTA0NWY1MjY2MTggbGVnYWN5LXRydW5rCisxOTUyOCA5NGEzODQ0M2Y5OWJiNTcwNTU1Y2IxNzFkNTQ1YTk5Mjk5YzUzNTVlIGxlZ2FjeS10cnVuaworMTk1MjkgNTc0NmQwYmY1ZjA0ZGY3ZjI1M2I5Y2IyMGY1NDY2MTU2ZjZkMjhjMyBsZWdhY3ktdHJ1bmsKKzE5NTMwIGRlMGU4NzUyZDViNzJjZTc0NTBjZjQ4NTUwYzM4M2IxMWEyZDMyMmUgbGVnYWN5LXRydW5rCisxOTUzMSBlOWZjYjQ2YzFmMmNhY2JjMzk3NDZkNWU3ZjU0ODM2YWRlZjYyMWRiIGxlZ2FjeS10cnVuaworMTk1MzIgNzI1MjM4MjkzODY5Y2M1YWM5ZjY2NWE3MGM3MTQ2M2FlN2VmMzc5OSBsZWdhY3ktdHJ1bmsKKzE5NTMzIDU3YTk3MjJjNTg4ZDRkYTJiOGE1YTBlODkxZjkyYmZkNTdjNWNkNjEgbGVnYWN5LXRydW5rCisxOTUzNCA5OTBmYTI1Y2RlMWNjZjE1NjhjODY5NDMwYThkZTY2M2VlZjIyYjAxIGxlZ2FjeS10cnVuaworMTk1MzUgYThhMDBkZTAyNGU3MzgwYTlmZTg0ZGNiZDcyNWYyYTdjYjU2YjlhZCBsZWdhY3ktdHJ1bmsKKzE5NTM2IDhiY2MxMGRiNTYyZTRmOWZmOGUyMmYyN2MxMzU4ZDBmZDdlMGQxYmEgbGVnYWN5LXRydW5rCisxOTUzNyAwZDNhZThmMDg0OWQ5MmE1Mzk3ZTFlNDhjYTg4ZTdiZDY2OTM0ZjY4IGxlZ2FjeS10cnVuaworMTk1MzggNWJjZjljNDliNmU3OGM0NWZiNmVhMGU3NzJjN2JhZjE5MjFiYjBjOCBsZWdhY3ktdHJ1bmsKKzE5NTM5IGY0ZTk3ZWMxZGM5YWI2MmU2MTUyZWZkY2EyODhjMjc0OWE2OWZmZjcgbGVnYWN5LXRydW5rCisxOTU0MCA5NjNmOTVlYjc2NDZkYWExODgxOGE0OTFmMzEyNjBlZTYyNDQzZDg2IGxlZ2FjeS10cnVuaworMTk1NDEgMjk0YmExNmIwZTg4YTQ3NjNkM2VhMDdiNTgxYTU0ZDRhNWVhODVhYyBsZWdhY3ktdHJ1bmsKKzE5NTQyIGI5NTVlNzQ5NTVkNTRjOTU4YTY5MjIyNzkxNzE4MjJmMGJkMTk4MzMgbGVnYWN5LXRydW5rCisxOTU0MyAwNmFkNTA1M2Y0MGEwNjJjOTA3Nzk3ZTUwM2MwYjEzNWJlNGZmODg5IGxlZ2FjeS10cnVuaworMTk1NDQgZGI0ZmM4MmFhNDRiYTliNTNiNjg0YTY4MGNmYjVhZmFhMTI1NTBjYiBsZWdhY3ktdHJ1bmsKKzE5NTQ1IDE3ZWQ2MWZkNWI2NTQwOTMzZjM1OTZjNzRhMzdjMGIwOGQwYTJhODEgbGVnYWN5LXRydW5rCisxOTU0NiAyNmFjYzI0NDVmMzczNzMyZjE3ZGQ1MTgyYWMwZjJlMWMwNjFhYTI5IGxlZ2FjeS10cnVuaworMTk1NDcgM2NiMDBjYmU3NDU1MDg0ZTcyMWU5MWNjYWE4ZDM1NTNmNjQ5YWMyMCBsZWdhY3ktdHJ1bmsKKzE5NTQ4IGQ5NGZlYTU3ODM0YzMzYTAxZGFiMDBjOTEzOGRjYjc1ODA3NTYxMDUgbGVnYWN5LXRydW5rCisxOTU0OSBmN2FlMGQ5MzdjZDA3NDMxYTMwMGM3MjMzMDlmZTgyNjIwYTM2NDE1IGxlZ2FjeS10cnVuaworMTk1NTAgYTZmMDgwZmU1MjUxMWY5Mjg2YWEzMzUyODcyZThkOTBmMWZmNDYwZSBsZWdhY3ktdHJ1bmsKKzE5NTUxIGEwYmFmNGNkODM1Y2YyZjQwZGI5MTU0NDY5MmNiNjkyYjA1ODRlNWMgbGVnYWN5LXRydW5rCisxOTU1MiAxMDJmZmUxNjExZTBmODQ3NDlkOGZkZmMwMmI4ZjhhZWQyY2EzYjg1IGxlZ2FjeS10cnVuaworMTk1NTMgNmViYjE0YjE0MWFkNTFiOWNjNGI4OGYyMTdiOGRiM2IxODNlZjA4OCBsZWdhY3ktdHJ1bmsKKzE5NTU0IDczNmJjZWVjYTNkYmQ2M2FmODMyODhkYjJiYmIxNzZmNzE3ZGE0ZjUgbGVnYWN5LXRydW5rCisxOTU1NSA0MTM0YjU5NzIyMTljZmJjOWVmZTYzYTc1NzMzYmI4MDU1ZjA5MzU1IGxlZ2FjeS10cnVuaworMTk1NTYgNjYyNjZjNDZjY2ZkY2Q2MmFhOTdhOGVjYjNmMmQ2ODdmNmE2MTJmNSBsZWdhY3ktdHJ1bmsKKzE5NTU3IDJhODZkNTE5ZjgwZTVlODg1MjEzN2NmOWRlYmM4MzU2MzdlNDNmZDMgbGVnYWN5LXRydW5rCisxOTU1OCBkZTVhOGRkMWM2ZjI0NzU2ZmE0M2E0MTYzYTBjN2YzMWNiOWM1ZTgxIGxlZ2FjeS10cnVuaworMTk1NTkgM2JkZDU2NWM3N2JkZGRkMjI4MDRmMDczZTE1OTdlZjJiNzVmZGFhYSBsZWdhY3ktdHJ1bmsKKzE5NTYwIGUxNGM1ZjM0ZmEwNTg1NmE1NDEyY2E4NWQwMzJhNDE5MmIzYTk0ZGEgbGVnYWN5LXRydW5rCisxOTU2MSA1NjQ5MjdjNTU3NDI1ZjhiZjU4Y2RiYWNkMzg2MmRhYjQxNWY5OTRjIGxlZ2FjeS10cnVuaworMTk1NjIgYzAyYTlkYjU2ZmUxNWQ1YjA1MzI2MDNhNDI1Y2Q5YWFmNzIyMWM1YyBsZWdhY3ktdHJ1bmsKKzE5NTYzIDFiNDAwYzg1NGEyYzJmZmU0MTg5ZDI4NGVlNmYyOTNkYjY0ZDhiOTQgbGVnYWN5LXRydW5rCisxOTU2NCA3MzM0YjJjZWRkYThlNzUwYmUyZWI1MzQ4ZDBiN2U3YzE5YzdhMGQzIGxlZ2FjeS10cnVuaworMTk1NjUgZDJhODQxNGExZWFiM2QxZTNkODVkMjhkNmM3NGUzNDJkNDllZmFhNCBsZWdhY3ktdHJ1bmsKKzE5NTY2IDYwYzkwZmY5YzJmNzhhZDZkOGU4MzhiMjM0YTA3MTgxMzQzYTg4YzYgbGVnYWN5LXRydW5rCisxOTU2NyBmOWY0YzIzM2VlMDM3Y2Q1MzRjNTY4Y2UxMDY1NzAyNWE0ODczZDI1IGxlZ2FjeS10cnVuaworMTk1NjggODE3MjkwNmM2ZGM4ZmIzNzg2MTU4OGJiYmMwZWE2ZTZhNWE0N2E5ZCBsZWdhY3ktdHJ1bmsKKzE5NTY5IDA0Njg1OTZlMzAxODc0MDA4ZDA3ZTZhN2E4YTM1ZTAxMGVlOGU4YzYgbGVnYWN5LXRydW5rCisxOTU3MCA5MzJhMWY4ZDkyZjcwOTE3MmMyN2Q2YTlmOGU0YjJjZDcyNThkYmJkIGxlZ2FjeS10cnVuaworMTk1NzEgNjE3Y2I0MGNiNzRiOGY3NDIwMDFkMTY3OTMzYmUyMTIzZWVmZmYzZCBsZWdhY3ktdHJ1bmsKKzE5NTcyIDk2OTZjOTVkMDliNzQyNGNkMTIzZDQwYmU4Zjk5N2FlMWI3YzAwZjEgbGVnYWN5LXRydW5rCisxOTU3MyA1Nzc5OWYwMTNhYWQyNTRhOGY4OWRmNmI2MTRhOGI0YmQ5NjBlODQ0IGxlZ2FjeS10cnVuaworMTk1NzQgMWNmMzZlYjVhMjVjMGY1NjAyZmNlMDczZmM0MzYxYzhjZDk4ZTc2OCBsZWdhY3ktdHJ1bmsKKzE5NTc1IDU4OTA4YmI0N2NjYWNhZDdhNjE3MGRkMGU4MTVkNzYzZWQwZGU4MTYgbGVnYWN5LXRydW5rCisxOTU3NiAyYzFmOGQzYmJhMmY4MWViYjUyN2I2NjRkNTIxOTA5NzYxZTk1OGFjIGxlZ2FjeS10cnVuaworMTk1NzcgNjM0MWY4ZDkwOWFjNWY1NmMxYzJmNzRkNmY5ZGEwNjIzOWI2NGQ5MyBsZWdhY3ktdHJ1bmsKKzE5NTc4IGU0YjQ3YjQzOTNjOGFkNGQ2YWNkMjVlMjhmODFiOTNmODQwMmEyNzcgbGVnYWN5LXRydW5rCisxOTU3OSA2ZDFmZDkyNDRkYWRhYWJlZjJhOWVlZWUyMTZjZTcxMTE2NWZjYjdiIGxlZ2FjeS10cnVuaworMTk1ODAgM2U5Mzk2YWM0YmEwN2U0ZGNkOTg2MDQ1NTlmOTY0YzE1MjQ0Mzc0OCBsZWdhY3ktdHJ1bmsKKzE5NTgxIGVmNjRkYzY4NTIwZmRiOTkyZmFlNTJkZjk0MzQ3ZDZiNWVkZmEwOWMgbGVnYWN5LXRydW5rCisxOTU4MiBhMWQ4YmI2ODY1OWE0NzQzN2VlZjcwZGY3ZGQyMzE0NDljMzA4NWUyIGxlZ2FjeS10cnVuaworMTk1ODMgMDFjMjQ3MGVlYjJlYTAzNDE1ODc2Y2EzN2M1NDZkZGZjM2JmN2Y5YSBsZWdhY3ktdHJ1bmsKKzE5NTg0IDg5YzEyNjg4N2RmMDkzZTBkMzdiNzU0OTAyYWU4M2FmYWI2Njg4NzYgbGVnYWN5LXRydW5rCisxOTU4NSA0MDdkNDAyMmNjOGMwNDI4YjE1NGZlOTZhNThlNTBkMDNlMWRjNDA1IGxlZ2FjeS10cnVuaworMTk1ODYgNGRiMGZkZGI2OTE3OGRiZmNmZDdiYTFhYWYzOTNkNzYwOTA0NzVjMCBsZWdhY3ktdHJ1bmsKKzE5NTg3IGNjMzM4YTVjMTZlNWM0MjAzZTRmZTMxZDE2NTE1ZjMzNWUxMTQ4NmUgbGVnYWN5LXRydW5rCisxOTU4OCA1OWYxYjU3YmM5MDk5OGYwNzQ5NzY4NmNhYzY2YTUyNTcyMjlkZjIzIGxlZ2FjeS10cnVuaworMTk1ODkgMTIwNjIxYmQzM2ZjYTU5YTEwMjZhMTZiNGJkYTViNDE2YjNjNjc1ZiBsZWdhY3ktdHJ1bmsKKzE5NTkwIGQxNzBjMWU3NzJjNTUzYTliNTg5NmI2YTRhMTRkZWY1ZDdlNDkzZDkgbGVnYWN5LXRydW5rCisxOTU5MSA1ODNhODEyYzQ1Yzg4NjEzNDU1NjdhNWNlN2NiOGMxYjc1ZDQzYWJiIGxlZ2FjeS10cnVuaworMTk1OTIgODAwYjAwNGFjYzcxNzgwZTZkOTkzZDMyYmY4MTQzNDNjYTkxNTkyNiBsZWdhY3ktdHJ1bmsKKzE5NTkzIDI1NmUxNTk5ZDhkOTZjM2JiZDc0N2JjMzYxZmY1YTBmMTQ2OWI0YzMgbGVnYWN5LXRydW5rCisxOTU5NCA3NDE0NWFiMWZkYzViZDlkZjUwM2ZhNjc1YjY0OTkyYmM2NjViM2Q1IGxlZ2FjeS10cnVuaworMTk1OTUgZTgxZGRhNWQzN2M0YjFiMDYzMDIwNjM5OGQ2YjUxZjQyNTBlOGUyZSBsZWdhY3ktdHJ1bmsKKzE5NTk2IDg2Yzc2ODNiNjA2YTkwYmVlOWNjOTA4NDBlYWI1ZWI2ODk0MjAyMTkgbGVnYWN5LXRydW5rCisxOTU5NyA4ZjAzNGJjZWU4NTZiYWRmMGY1NDY0ZjcyMzI3NjIyN2RlODA4YjE0IGxlZ2FjeS10cnVuaworMTk1OTggYzk5ZDE5YTk2ZTllYmJlY2Y2MmRjNzcxNTE2NmFlN2ZlZGI5YmMxOCBsZWdhY3ktdHJ1bmsKKzE5NTk5IDA1ZWMxYjA1NGI0ZDkzZmUwNmYyODllN2U4ZDM3M2NmZGQ3ZjZkMWQgbGVnYWN5LXRydW5rCisxOTYwMCA5Zjg2Y2JhNDc2NmI1NGVlOTUxNzAwZGQ4MGY1MGQ1Yjc4N2NiMmUwIGxlZ2FjeS10cnVuaworMTk2MDEgYjMyNzhiZjRmMDkxODIzNzEzY2ZjNDcxMTMzMjBjMmJiY2RhOWU3NCBsZWdhY3ktdHJ1bmsKKzE5NjAyIDM4NmNjNjk4YWVmOTU1NmY2ZGI0MGJiMWM0Mjc5ZWMxZWIyYzEzMDcgbGVnYWN5LXRydW5rCisxOTYwMyA4NDRmZGU2MDBhNjFkMzM4OWFhYjFiZjFkZWQ2ZjZhNDVjZjA2Y2ZjIGxlZ2FjeS10cnVuaworMTk2MDQgZGRhZmRiZjkxNDk4NWI4OTE0Y2Q4YTA0YTU3MDk5NGY2YTYzM2M3OCBsZWdhY3ktdHJ1bmsKKzE5NjA1IGMxMDA1NjEwMGVhNWRkMmZlODRkNTJjMmUzMjcwZDg5YmJlOWVlMGMgbGVnYWN5LXRydW5rCisxOTYwNiA4NDY2YmIzNzI4OWNkNmU3NjEwYWE4OGQzOGZlYTI0NzE0NTY4ZmJmIGxlZ2FjeS10cnVuaworMTk2MDcgZGI2MTg5NGIwZDZmYzNlNDAwZTQwMjQ0YzA1ZjhjOTg2ODQxMDhlZiBsZWdhY3ktdHJ1bmsKKzE5NjA4IDg1ZDJhZjk3MmU2MjMwNGMwYjkyMDYyMDk3NmRmYTNlZjc0YzJhMmQgbGVnYWN5LXRydW5rCisxOTYwOSAzNWY1N2M3MTcwYmQ0MGE3NWQ4ZGMzMmMyMTA1NGVmYjFiZjJhMzE1IGxlZ2FjeS10cnVuaworMTk2MTAgNGNhNjJhZmVjMDA0NTI1ZmMzY2I3MzRmYWFmNTY2MGNhMWU5MTI1MiBsZWdhY3ktdHJ1bmsKKzE5NjExIGI0MmIyMmE5MjI4Y2M4NjA1YTU5ZjkxNmIwNTQ5OWFiZDA4ZjA3MzEgbGVnYWN5LXRydW5rCisxOTYxMiBlMmEwZGI4MzllYjFhNDNiNDUyNjg2MzlkMmU1NWYyOTJjNDY3YzBmIGxlZ2FjeS10cnVuaworMTk2MTMgZTQ0NGE1MjcxMTgxMmNjY2M3MTBhOWFkYzAwMTU0MWM5ZGQzMWZiMiBsZWdhY3ktdHJ1bmsKKzE5NjE0IDk1MTg4OTNjYzhhN2Q2ZjVkMjI2ZWNkNzgwY2VjMjU0MmYzM2QwOWMgY25yaS0xNi1zdGFydAorMTk2MTUgMDZmNmYwZTFlMTA2MTZjOGI2NjM0ZDc3ZDFmOTk2Mzk5MTA1Y2MwMiBjbnJpLTE2LXN0YXJ0CisxOTYxNiAzYzBhMzUwMDIxMDhkMmUxMjA0MzFkNTRkNmMzY2JiZjUxNTdiNWFjIGNucmktMTYtc3RhcnQKKzE5NjE3IDZhNTViNjc3ZjUwOTY0NWYzYzg3YmJlYTk1MGNiMTk4MGVlYTE2MjAgY25yaS0xNi1zdGFydAorMTk2MTggNzgxNTkxOWUyYWY4YjYzZTBlYTc2MTY2ZGQzNWE5MGQwNTYzMWU3YyBsZWdhY3ktdHJ1bmsKKzE5NjE5IDkwZTkwYzkyMTk4YjdkYTYwOWU1NjBmYzNiM2ZjNzY3ZTUzNmNlYzMgbGVnYWN5LXRydW5rCisxOTYyMCBjYTFiZTdkMDA0MTNlOGFhYTVlMzljZjVhZGMzNDE2MGNhY2U3ODBmIGxlZ2FjeS10cnVuaworMTk2MjEgNWMzYWVkYzk2OWRhNDU2NzhjYzliMGVkMjBmMzkzNDg1ZThiMGU0NCBsZWdhY3ktdHJ1bmsKKzE5NjIyIDUxOTc3YWYyMzBmYTQ3YmVlOTQ4MTM3NjMxYzA1YjcxODI5MDcyZWQgbGVnYWN5LXRydW5rCisxOTYyMyAyM2M3YTAxMDhmNTkwY2ZjN2MxYjk4MWIwMmFlY2M1MzUxODU3YmUxIGxlZ2FjeS10cnVuaworMTk2MjQgMmZiNGQ2MjViZDM5ZjAxYTRhMmNiZjg3YmNkODliZTkyZDY1ZjBhMSBsZWdhY3ktdHJ1bmsKKzE5NjI1IDM0NDg1OTFlODI3NWU3YTc1YTQ3MmUwMjk1ZjRlZmM4MTUxN2NjOWIgbGVnYWN5LXRydW5rCisxOTYyNiBlMWZhOThmZDIzOWU3NWExM2YwOGY3NzVhODJhOWQzNTYyODRlNTA5IGxlZ2FjeS10cnVuaworMTk2MjcgODk5NjI4OGE4ODczYjFjNGU3ODE0YmJiMGE4ZWNkYTUyNDVmYjllZiBsZWdhY3ktdHJ1bmsKKzE5NjI4IDZjOTZlODMyOGQ1MzAxYjdiNmQ1YzE0MjFjOThkMTI2YTBiZTQ3ZDEgbGVnYWN5LXRydW5rCisxOTYyOSBhOGU1MWY2YjVjZmMwOTdjNWQ0ZmFiZDgyNDUyMTEzNWM1ZTQyODVmIGxlZ2FjeS10cnVuaworMTk2MzAgZmYxMjJjNDA0ZjY0MzFjNmY0NThhNGIxZmY3NzQ0ZDM5ODVkZmM5NCBsZWdhY3ktdHJ1bmsKKzE5NjMxIGRiNDhkMGIxM2IxZWQwMTIyMzcxOTA1NTgzOTRmMzc3Nzc1MzM0MzkgbGVnYWN5LXRydW5rCisxOTYzMiAyZjU4NWNiZTcxZGE1OWRlMzk3YTc3YzBhODVkNzA4YjVhMzEwMzQ3IGxlZ2FjeS10cnVuaworMTk2MzMgYTdjNTE0ZTE1MDAzNjcwYWFiOTFmY2M1OWQwNzNmZmEzNTMwNjgxMiBsZWdhY3ktdHJ1bmsKKzE5NjM0IGE4MDRjOTFjMTgyZTFjMTVlMTc5NmIxNTFmYzBmMDhjZDI3ZjM2NmYgY25yaS0xNi1zdGFydAorMTk2MzUgMGEzOGY0ZDk2NjdlY2VmZDlhMThmMWY2ODU4MWFiNjM3ZDYxOWUwNyBjbnJpLTE2LXN0YXJ0CisxOTYzNiBmNGYyODYwZDNhNWYzZTA5OThjOGNkM2E2ZmQyZmM2MDA2MjBkZTA3IGNucmktMTYtc3RhcnQKKzE5NjM3IGI0ZTQyZDI5OTYzZGQ0Y2JkMmQyYzU2ZTkwZTgyOTFkYjIyZjJlZmQgcjE2MS1icmFuY2gKKzE5NjM3IDdlZTM3OGQ1YTQxZDJkODMxNmVlMzI2ZjgxODk5MjQxOWE0ODA0ZTIgcjE2MS1icmFuY2gKKzE5NjM5IDYzNDhjZDQ1OWVlNDllM2U1NTdlN2Y1YjUxMjdlMDc4YjMwZjdiMmIgbGVnYWN5LXRydW5rCisxOTY0MCA2ODBjODg1ZGZhY2U5MWI5NDYxNjJlYjU2MjJmY2YzY2U2ZTE1OTVlIGxlZ2FjeS10cnVuaworMTk2NDEgYjZhNTJlNDM4MzQ0MWY1YTMzMTQwMWJiYmQyMmIzZjk5ZGUxMzMzNCBsZWdhY3ktdHJ1bmsKKzE5NjQyIGQ0NDZlNGVjOWI3YjM5NzcwY2ZmN2ZhOTI5ZTRmNjliMzA0NjE4YTUgbGVnYWN5LXRydW5rCisxOTY0MyA5MDUwMTFlODc0MGM1NDU5Y2Y4YmIxYjg3OTIzYTA1ZjRkZDdlYmY5IGxlZ2FjeS10cnVuaworMTk2NDQgMTRhZmZiZDAzNzUwNmM0ZDk4YmM5ODA3NDBlMDJhMDY1NDYxYTlhOCBsZWdhY3ktdHJ1bmsKKzE5NjQ1IGIyMzUxNjBmMTM0NjcwODUxOWNlMjVmNTJhMTAwOGJmNjM1MTA4ZGIgbGVnYWN5LXRydW5rCisxOTY0NiBlNGQ5YmEwYWMwYjJjYTE0Y2IzNDE4ZDI3NmNkNDdjYTcwZmNmNzdlIGxlZ2FjeS10cnVuaworMTk2NDcgNjdlZDhhNjkwNWMzMzlkYThlNWE5YTE4OTFmYzYwNjVhNDRlNWJjMyBsZWdhY3ktdHJ1bmsKKzE5NjQ4IDM4MzlmMGFhMWU3Y2NlY2U4YTEyMDg3MzEzZjQ5MmYzNzc5ZWI3NDkgbGVnYWN5LXRydW5rCisxOTY0OSBhNDE4MmM2NzljNjFjNDQ4MjUyNDBmNjNjNGVhNDJkZmY1M2MzN2FjIGxlZ2FjeS10cnVuaworMTk2NTAgMjkxNWViMDdiZDI1YTM0YjlmZTg0ZWYzYzc5MTBhODE4ZWQwNjQ1OSBsZWdhY3ktdHJ1bmsKKzE5NjUxIGI5ZTVjMTIyMjEyZWYzNDc4NmIxMDliNTI4NDY5ODIxMWI3Y2Y3ZDggbGVnYWN5LXRydW5rCisxOTY1MiA2OGJkOTZlNDI2ZTMyYmIxYjk5MmJhMTFiZjEwMTJhZGZlOWI0Y2Q0IGxlZ2FjeS10cnVuaworMTk2NTMgZWIyOTkyNGEzMzcwZTFmYTgyMGFhYmI4MjJkYWVjNTY5NWM0NzNjMSBsZWdhY3ktdHJ1bmsKKzE5NjU0IGJmOGQyYjkyZWEwZWYzMjUxY2NhYjZjMzNiMGNhYzEwYzkyYjA4ZDYgbGVnYWN5LXRydW5rCisxOTY1NSA1YTEyMzBkZTQzNmE4NjA1N2Y3ZmQ0NTgyODMyMWY2MzFlNjJjODRkIGxlZ2FjeS10cnVuaworMTk2NTYgNTg2NGE5YzU4YzgxYzIyODFhNjE3ODU0ZDE5ZDdjZTRhOTExNjlhNSBsZWdhY3ktdHJ1bmsKKzE5NjU3IDRmZWVhOTliZTc3N2Y5NjI3YjQwZDg2OTgyYTcwYmY4MmFkN2NhNmMgbGVnYWN5LXRydW5rCisxOTY1OCA2MGZkOWQ0NTQyMDZkYTU3ZWY1ZjIzOTkyMjc5ZTM2ZDZhYzJlM2VkIGxlZ2FjeS10cnVuaworMTk2NTkgOTk3NzgwNmI4NjE3NGQ5NmRiNzc2MTMzOGU2N2E0YmM3NDI0NWM5MCBsZWdhY3ktdHJ1bmsKKzE5NjYwIDI2ZDNlOGVhY2VkZmFkZWU2YjkwOWE1ZTE0ZjRkYzRhNDJlNzc2MTMgbGVnYWN5LXRydW5rCisxOTY2MSA5NTE5Y2FkNmJmOWQ0YzUzYjZiMTgzZTM2MGQ0ZDIwYWM3ZjBhMTgyIGxlZ2FjeS10cnVuaworMTk2NjIgMDBmZWE0MTczMGNmNDNjNWNjODE4ODlmMmQ4NzIyZGQzNTUzNDBiZiBsZWdhY3ktdHJ1bmsKKzE5NjYzIGU5OTFkODg0M2FiNDdlOTE2YjljNGI0ZjZhM2E5MmU4MjE0ZWM2MWQgbGVnYWN5LXRydW5rCisxOTY2NCA2N2JhZDlmMjBiMjljMTc5M2VlOWFjNzFmY2ZlOWJiMjUzMzc4NzFlIGxlZ2FjeS10cnVuaworMTk2NjUgYTg5Zjc4M2MxMzNhNTAyODg4ZmU3MGYzMmU3YzE0MzE1Njk2MDZkYyBsZWdhY3ktdHJ1bmsKKzE5NjY2IGRhZTM5ZWJiYzAwNDFjYzE1YmUyY2ZiNWI4NjNhNzY4ZTE5M2JlNTQgbGVnYWN5LXRydW5rCisxOTY2NyA3ZjhmN2JlYmQxZjY0Njc2NzlmNzJlYTI5OGEzOTExYWQxOGZkZjljIGxlZ2FjeS10cnVuaworMTk2NjggMjlhYTgzMmI4Nzg3NDc4NjZkNzhmOTgwMmRjYWRmYzA2NGYzZmJkNyBsZWdhY3ktdHJ1bmsKKzE5NjY5IGI4MDI0M2Y3Zjk3Y2JlNmE3ODY0MDVkYzg5YzU5YTE4NDhlZGY4YzggbGVnYWN5LXRydW5rCisxOTY3MCBhYzE4MGM5ODIyOTUwMDFhN2U0NjYyNTQwY2I4ZTQzYjVjNjE1NGQ2IGxlZ2FjeS10cnVuaworMTk2NzEgM2MyMTQyZjA3NmI0NmZlMmFiMmJkMDQ2NWY5NTVjNGZkYjQ3YWJhNiBsZWdhY3ktdHJ1bmsKKzE5NjcyIDI1OGRjYWZlMmQwYjhkYzZiY2VjMTZlMmEyMzJkOTE4NzdhMDI2OGUgbGVnYWN5LXRydW5rCisxOTY3MyAwOGQ5MzcxMDdmZTZjYzIwOTViMThhNjU0OTNjOGRkMjRkOTI0ZjVkIGxlZ2FjeS10cnVuaworMTk2NzQgZTAwNjJlODlkOGY0MjdhNWZhODhlNTBmZTUxMzVhNmU5MmJmZWQwYSBsZWdhY3ktdHJ1bmsKKzE5Njc1IDJjOTE4NmU0MGIzMDc3OGZkMDcwMWIxNGE3MzQxYjJhYWYxMTYzYWEgbGVnYWN5LXRydW5rCisxOTY3NiBhODY5NTA1MTk1ODYzYzg3YWVmMjAzNzMyY2ZkZWVlYzEzYWY1MDU3IGxlZ2FjeS10cnVuaworMTk2NzcgNDQ0NThmZTk0N2RkYjA1NTQ1Y2Y4YTg0NmZlOGIyNTc4Y2JiNjU5YyBsZWdhY3ktdHJ1bmsKKzE5Njc4IDgxNTY4NzlmZTYwZDFlMmRhYjMwNzk2YjkyNDg5ODZlZDMxOTIwNGEgbGVnYWN5LXRydW5rCisxOTY3OSA4Mzg5NWI0Y2UwYmJmMWVlZjVlNDcwZjNjNmNkYmUzNDZkM2VmZDdhIGxlZ2FjeS10cnVuaworMTk2ODAgYjI1ODVkOGZkYjhiYmY0NDIyNWNmNzJkZjYxZGY4OTUxMTQzZWEzNyBsZWdhY3ktdHJ1bmsKKzE5NjgxIDc0ZmQxOTU5Y2Y0NGVlMmIzZmMwMjE2ZDAyMzcwNmQxNWIzOGZiMmQgbGVnYWN5LXRydW5rCisxOTY4MiBhZTdkNzIwN2RhNDg4MDM2ZTJmNzE4ZmRhYThiZTlmNzZkNzk4N2Q5IGxlZ2FjeS10cnVuaworMTk2ODMgOGJmMGM0OWZjZTEwMWFiYTkxNzk2YjRlMDQxODhhMTA4MjVlYzAzMyBsZWdhY3ktdHJ1bmsKKzE5Njg0IDUwZDkxNTllZGFhYjY3NmJiZmYyZWU3NzRlMmIyNmU0M2Y1ZjM5YzkgbGVnYWN5LXRydW5rCisxOTY4NSAxZDFiZjY4MTNlZTU2OTg3OWRjNTA3NjkzMTlmOWIzZGNlNmM4MGFkIGxlZ2FjeS10cnVuaworMTk2ODYgNTgwYWQ2ODU0NDVmNTE4M2E2MTYxYTVkY2M2MjQ5NDNmM2U3YTUzNyBsZWdhY3ktdHJ1bmsKKzE5Njg3IGMzZmIwNDRkN2U2ZjFhYzhkNjA2MTk2M2E3YmJhYjU1MjI4Yjg2NzAgbGVnYWN5LXRydW5rCisxOTY4OCA0ZWFkZGY0NzhlOTdhNDYzYjc3YTk5MTdhNzNmNmFhMGZhMDllOGY0IGxlZ2FjeS10cnVuaworMTk2ODkgYjJjZmY1NzA1Nzc1ZTI2OTkzOThjZGRjNzkxNjEwNTExMzEyNmZhMyBsZWdhY3ktdHJ1bmsKKzE5NjkwIDc2NTgwMWRlMTUxMjA4M2Q2YTQ5NjBjMGFiYmNkM2ZlYzVlNTkwYTAgbGVnYWN5LXRydW5rCisxOTY5MSBmZmNiM2NmZjk0Mzk0ZDA1MjMyNjMxNTBhNTUyNjRmZDFmZDFmMzMwIGxlZ2FjeS10cnVuaworMTk2OTMgZmQyYTg2OTc2OWIyNDliODc2NzMxMzlkOWUxNjRlZTE3MjAyODU5NCBsZWdhY3ktdHJ1bmsKKzE5Njk0IDUzZThlYmQxMTYyMGQ0NWMwOGE3Mjg0ZDczMTU1ODI1ZGJhNDY1NGMgbGVnYWN5LXRydW5rCisxOTY5NSBmNTRiYWU4NmEyYzZiY2M2MTZiZTBjZTJlZTdjODExZjcwZTdjZDk0IGxlZ2FjeS10cnVuaworMTk2OTYgZjc5NmE4NzcxMTdlNzE1YjM0MWYxYmE3ZTAwZGMwNDI0ZTIwM2YzZSBsZWdhY3ktdHJ1bmsKKzE5Njk3IDBmMGVmYzJkMTJmMTQzYTY4NmVjZTc2NjhjMzVjMTc4NTM5NWFlZjUgbGVnYWN5LXRydW5rCisxOTY5OCBhY2JlNzRmM2E3ODZmMmY0NTc5YzZmNzg0M2M2YzJjN2UzOGQxNmVjIGxlZ2FjeS10cnVuaworMTk2OTkgZDRhMzE1ZTQwOTRjNDg3MWRmNDMzZDBmNmY2NjFiMjFiYjAyMDllNiBsZWdhY3ktdHJ1bmsKKzE5NzAwIDUxY2Y0NTFmYWFlNDYwMTk4Zjk3MDQ2YzBiZjU0MDUwYmMwMWNkZTAgbGVnYWN5LXRydW5rCisxOTcwMSBhOTU2OTM0OTFlY2FhZjcxMmRlYjc4ODY3MmU3ZmEwZWNjM2YyNDQ1IGxlZ2FjeS10cnVuaworMTk3MDIgY2U0NzQ5OGEzMTU4NTk3M2JhN2QzYzk1NWYzMjc5ODA0YmQ5OGFjMyBsZWdhY3ktdHJ1bmsKKzE5NzAzIDNiMDUyMTJjMTYxNjAyNTU3MDM4YWM4ODgwZTY0ZjhiMmQwYzZjZTEgbGVnYWN5LXRydW5rCisxOTcwNCA2NzMyOTA1Njg2ZDQwZTgxY2JmMDgxZDI5ZDhhZTdkM2FmMDFlZTg4IGxlZ2FjeS10cnVuaworMTk3MDUgZjUzNzBlMWUyMzkyZTZlNDJhZDQzOWE5ZDYxYTU5ZTA1ZDFkMWNmNSBsZWdhY3ktdHJ1bmsKKzE5NzA2IDI3ZjA0ZDcxNGVjYmM1MzZjZTdhZmRmMjNlYWUxZmQyNmI1YTNlMTkgbGVnYWN5LXRydW5rCisxOTcwNyBiNDYzYWNkNmRhMjIyOTllZDFhMDcwZmU4ZjJiYmI3Y2NmMjllZDJhIGxlZ2FjeS10cnVuaworMTk3MDggYmJkZWI2ZDRkZWExNTJmYzM2YTUxOGFhMjk2ZjljYzdmMWZkMzEyMiBsZWdhY3ktdHJ1bmsKKzE5NzA5IDUyZmUzNzdmMDdmMmNlMTYwYjAzMjVmMGFlYzIyNDA1NzM2ZThmOGQgbGVnYWN5LXRydW5rCisxOTcxMCA1OTAyYjU3OTRhMTdlYjdmNzMwZmYzODZmMDIwMmNjYjQzZjNmOTM2IGxlZ2FjeS10cnVuaworMTk3MTEgZjI5Yzc2Njg2NGNiNWEzODhmMzQyNzdlNWI5N2NmOGVkMjhhNjA4MSBsZWdhY3ktdHJ1bmsKKzE5NzEyIDBlNmEzZGE0Zjk1NjEzMDUyMTY2NWFiNjBhOGNjYmIxZDk4NmZiYTMgbGVnYWN5LXRydW5rCisxOTcxMyAwOWY2YzEzNzIwNTY5OTM3MDg4NmVmNmM3YzY2ZjFhYzc5YjU2Njc4IGxlZ2FjeS10cnVuaworMTk3MTQgZTFiMWU2OGNiZDhjMTViODFjZTkyMWU0ZGRmNmZlODhkMDMxNDY4MyBsZWdhY3ktdHJ1bmsKKzE5NzE1IDk1MGZjMjI2MWRhNDYxYTEyODg5OWMyZTRlMDFmOWM3NGQyMTM5YTYgbGVnYWN5LXRydW5rCisxOTcxNiAzZDI5NjkwYTI0ZTg5NTUwNjRkMDczOWQ3ZTMyM2NkMjcwODg1MzQxIGxlZ2FjeS10cnVuaworMTk3MTcgNzZhNjg0ZmUzZjdmYzVkODM5MGRhMjRhMDIzNzg3Y2M4OTJhZjhlMyBsZWdhY3ktdHJ1bmsKKzE5NzE4IDMyNmE0ZGNiY2QyMmE3NjZmMzk2ZTQxMDRhYzE3N2FhZjc0ZjVlMDIgbGVnYWN5LXRydW5rCisxOTcxOSA4MTU2ZGViMGU2MmRlNWUxMjE1OTdhODk2YTVhYjgyNTA1OWRhZGM4IGxlZ2FjeS10cnVuaworMTk3MjAgMDlkY2Y1ZWJjZDgwMzJmYzliZTMwNzRjYzk1NzUzYWExZjlhM2NiZiBsZWdhY3ktdHJ1bmsKKzE5NzIxIDJkMmVlMzBmNDNlYWRkNWRjZDJkN2FjMDg3YWVjZDk4YzFlNzUwMzYgbGVnYWN5LXRydW5rCisxOTcyMiA5NWE3YzU4OThmYWExZGE3YTBjNGI2ZDM1M2ExZjgwMjhmYzU5NjYwIGxlZ2FjeS10cnVuaworMTk3MjMgNDg5NGJhM2VkZDBhNTM0NGY0YTE5ZjEyZTFmMzJmOGRjMTFmZTkyYiBsZWdhY3ktdHJ1bmsKKzE5NzI0IGE4NzcxYTUyYWJiMzdmZTA3YzljNWVlY2UxZTViODVmMjU2Y2M1NTkgbGVnYWN5LXRydW5rCisxOTcyNSAyZDRkYTZjZmVlNjE4MjlmODNiNGQ2ZGQ5ZGIzMjcyYTA0YzY3ZDlmIGxlZ2FjeS10cnVuaworMTk3MjYgZTVmMmFiODExZWMzZDgxOGJkNDY3YzY1Y2E4M2NhNmZkZjEwZjk4NSBsZWdhY3ktdHJ1bmsKKzE5NzI3IDg0Nzg0NDI0OGM2ZjkyNzcyOTY4YmU5NGM5ZjMwMzc5ZDEzNzUxN2IgbGVnYWN5LXRydW5rCisxOTcyOCAwNTc4NWJkZjI4OWNkMDYwOGEzMTUyYzFmZDViOTdlZDFhNjJiMDJjIGxlZ2FjeS10cnVuaworMTk3MjkgYmM4OWYxMTYxNjBiOTc0YWMyNjg4ODUzYTkzZDFmZDk4YmY2ODE2OSBsZWdhY3ktdHJ1bmsKKzE5NzMwIGVjOTA4M2FjMjZkZjdkZGMxYTdiYmJmN2I3YWI0N2FkMjMxNDBiM2MgbGVnYWN5LXRydW5rCisxOTczMSAyNmNlNmVmYzk3NDQyNzlhYzY3ZmJjMWJiMTk2ODVkZjk0YWJhMTljIGxlZ2FjeS10cnVuaworMTk3MzIgYzU1NzgwODE1YTZlNWEzNWQzM2FmMGE2NmI2YzA2NDQ4MGMwNWNhMiBsZWdhY3ktdHJ1bmsKKzE5NzMzIGIwYWFmOGY4NWQxMjhlMjQwYTYyZDg5NDEzN2FkMTZjNjZjMzE5M2QgbGVnYWN5LXRydW5rCisxOTczNCA4ZDdmNzJjYzJlY2M4MTQ1NGM0OTFkNjY5YmMwM2I4NThhOWMyODQwIGxlZ2FjeS10cnVuaworMTk3MzUgY2Q0MDg1Y2VlMzA5M2FhNWY0MTAyOTJmMzY4YWFhNmFlZmI3OGY3MCBsZWdhY3ktdHJ1bmsKKzE5NzM2IDlmYTIwMDk4MjU4MzNjODE4NjE4NTQ1ZjU2YmYzYzdmNjVlMmJlZjQgbGVnYWN5LXRydW5rCisxOTczNyA3N2E1NDcwMjk5ZGJlNGQyN2U0M2JhYzUxNDZkYmI3YmFiYjVkOTQ5IGxlZ2FjeS10cnVuaworMTk3MzggMTNjZGJmYjU5MWE0NzQzYTE3NTBiOWYzNGIxM2M0ZDYwMGNkOTE0MCBsZWdhY3ktdHJ1bmsKKzE5NzM5IGQwNTJkZGRiZmQ0NDUwYTExOTM1ZDIwMDA3Njc5ZThiNWFmMjg1M2QgbGVnYWN5LXRydW5rCisxOTc0MCAyNTE0ZmNmYTBmMDgyNTRmZjM0NWNmNWQyNDIwOTNjMzQxNTlmYzYyIGxlZ2FjeS10cnVuaworMTk3NDEgM2E0MTFkNDFlZWI0ZmYwNzA0ZDJlYjJiNDVmMWJlZWYzY2ZjZGU1NSBsZWdhY3ktdHJ1bmsKKzE5NzQyIDc5NzZjZjdmZDE5NjgzYjU4YTQ0ZTRjNjQzMWZhMjk1NmE2OThlYWEgbGVnYWN5LXRydW5rCisxOTc0MyA3ZGM2NmQ1YjEwMGVlYWZmMDljNTI0ZTg4NmY0MGExOTdlOGUxMDZiIGxlZ2FjeS10cnVuaworMTk3NDQgNDEyNjgwM2UxYTg1ZGNhZmRkZWExZWI2ZjU4NjU3MThkYTdkMmNiYiBsZWdhY3ktdHJ1bmsKKzE5NzQ1IGYzOTllNmE4OGY2NTg0OTU4MTYyMWM3NjFlMzgzNmY5OGM0MGIzMjcgbGVnYWN5LXRydW5rCisxOTc0NiBkNjc1ZDc1YWY4Mzk1ZWI4NGFlOGYzMmFiMWNlZDgwOTdkZWUxMzllIGxlZ2FjeS10cnVuaworMTk3NDcgNTI4MGU4NDM5ZDU1NjM4NDI5NDA0NTRiYTE3ZjdkNDlmOTBkMjIzYSBsZWdhY3ktdHJ1bmsKKzE5NzQ4IDlkMDE4YTNkNzk0NmFhNzFkMTk3NTk2MGUwNjBmN2M5NDA1YTY0N2IgbGVnYWN5LXRydW5rCisxOTc0OSA3OWJiZjdhZDBmYzE3OWIyNmM0ZGE0MzZlMDgyM2MxMjVlZGFjMjBiIGxlZ2FjeS10cnVuaworMTk3NTAgMTBiODQwNjBiN2YzOWM2NzVjZjhlZDlkODZiMmM3NDU1ZjNmZDZjMiBsZWdhY3ktdHJ1bmsKKzE5NzUxIDhkNzQ4NmE4ZDY5YWMwYjFhNWJjY2M4OWRlYzMwN2UzNjZhOTFhNzUgbGVnYWN5LXRydW5rCisxOTc1MiAzMGJhODgzNzY0ZWJiNGUxOTU0ZjYxYTcyOWMxZGM4M2RiMmI3YWY2IGxlZ2FjeS10cnVuaworMTk3NTMgMWNmNTI1MzZjMzgxZWQwZGMzMWI1YzZkYWVjNmZmYjZiMjY1OGEyYiBsZWdhY3ktdHJ1bmsKKzE5NzU0IGFiYWVhNDQzZTI4YzJmY2FiOTQxNGE0N2EyNmYxNjY2NTliMmM2YzUgbGVnYWN5LXRydW5rCisxOTc1NSBiZGNkNzk4NzM5MjRjZTY0MmIwYWMzZGJiMzA5NDVjZDk2ODVmNDlkIGxlZ2FjeS10cnVuaworMTk3NTYgODU5ODI5Mzg0NjYzYjM2ZDkwZjk0YjkwYTg4MWU2ZGZlM2ExMThhMCBsZWdhY3ktdHJ1bmsKKzE5NzU3IGFkNzM0MzczN2FlZTllMTJlZTc0NjJlOWEyYmE2ZDE4NjdjMWRiNmUgbGVnYWN5LXRydW5rCisxOTc1OCA3YjViNTc1NmIyY2FkMGUxZjE0ZTIzMzhhZGIwZmYyN2ViMmJhYTdiIGxlZ2FjeS10cnVuaworMTk3NTkgMWNlNzUxZmE2N2Q4MDZlZTdiNTQ5MjcwY2E2ZGY5MzcyNjU5OTIwMSBsZWdhY3ktdHJ1bmsKKzE5NzYwIGQzZjY0NjQwNGE0MzU3MmE1NmIwNDFjNzUxZGU4NzZjYjBjZTZjNzQgbGVnYWN5LXRydW5rCisxOTc2MSA2OGNlMzI4NjE2MjZmOGU2NDMzNTZmYzhlOWIxYzBmNWEzZTIwZTI1IGxlZ2FjeS10cnVuaworMTk3NjIgMTRkYmRlMWVjZGVhYjljMzM2Nzc1ODIwOTZkZTZjOTEwMjIzMjIyYiBsZWdhY3ktdHJ1bmsKKzE5NzYzIGZjZmI0NDJkN2IzNGUyOTY1MzA1OTRkZmMxNDY3ZmFlNmNkYzY3NzMgbGVnYWN5LXRydW5rCisxOTc2NCAwZmViNjM0OTAwOTM1YWE2YjM3NzRhMDRjZjkzYzQ0Yjc1N2ZlMWNmIGxlZ2FjeS10cnVuaworMTk3NjUgZjI4N2M2ODRlMDRjNDVlNjgwMWU5YWIxOWY2N2Y5MmU3ZDI5MWQwYyBsZWdhY3ktdHJ1bmsKKzE5NzY2IDgwNmM2YWUyMzEwMzI0NzU1NTdjMDg3ODc2NDUwODkwNjgxMjU3MmMgbGVnYWN5LXRydW5rCisxOTc2NyBmMjdkMzI5OWRmMzkwNjIwNmE5ZWNmZWYwYThlZjA5Y2EyNzllZjllIGxlZ2FjeS10cnVuaworMTk3NjggZjFjOGVhOTJlZTg1MmVlNGE3YWJjZjE5YzgwZDc1NjMwYjRkNjQ3ZiBsZWdhY3ktdHJ1bmsKKzE5NzY5IGIzZDUwNGJkZDk3OWZhMzZlNDBhNjEyNGI0MGFkZDdlNjQxMjk2YmMgbGVnYWN5LXRydW5rCisxOTc3MCA4YWVjZGIyMjM0ODgxNzMwYTFkODExNDQ4YWJlMjM2MTdlN2M3ZDdhIGxlZ2FjeS10cnVuaworMTk3NzEgZmE4NGY5ZjQxMDkyMzExNmIxY2Q1Nzg3NzFlMDUwODRkOWU5ZDFlZCBsZWdhY3ktdHJ1bmsKKzE5NzcyIDc0YTlkMGE0MjMxYTVlYjBhMWIzODY0YjZlMTQyZjVlMDZiZjFmNDggbGVnYWN5LXRydW5rCisxOTc3MyBkY2VhMDkzODgzMzJjYWI4NTcyOTM0M2E4M2Y3NTI3OTdiYWUwNmUyIGxlZ2FjeS10cnVuaworMTk3NzQgMzIwZmE1MGExYTdkMjU1NjE4M2QxMTg2ZWUwZmExMDBmYjk2NDNiZSBsZWdhY3ktdHJ1bmsKKzE5Nzc1IDhkMWU4NDRmYmIxYWI1YWYwY2IwMTc2OTk1YWNkOTVlZjk2YzJkNzEgbGVnYWN5LXRydW5rCisxOTc3NiA1NzJiNjU0YmY0ZWQ1NGIwN2NlMzA2ZGYzNzIyNTAwYjllYzM0NjhmIGxlZ2FjeS10cnVuaworMTk3NzcgZjU1ZjM1ZGM1MzIwMWE1NDlkNGNjODk3OTYwOGZhZDAzZjk1NWU0NiBsZWdhY3ktdHJ1bmsKKzE5Nzc4IGU4Njg3NWYwNjliMTZlMzRkMDk2YjAzNzNiN2I0OGU4Njc3MjQ0OGIgbGVnYWN5LXRydW5rCisxOTc3OSA0MWYzZjRiMmZlNGE2NzYyYWIwMTA4NWJkZDc1OWRhOGZmNjE0ZTFjIGxlZ2FjeS10cnVuaworMTk3ODAgMGYwNzcwYTc5M2FjZDJmYjg1Yjk4OTRiOTIzY2ExZDZjMTExOTE3ZiBsZWdhY3ktdHJ1bmsKKzE5NzgxIGI3MzI0OWM4ZGUxODAxNjkzZDM2NGQ5OTEzMjZjMDI5ZDQ0ZjExZTggbGVnYWN5LXRydW5rCisxOTc4MiBmMWQ0NWQ2YzEyYTI4YzIyYTM5YThhYzE0ZmM3MzA4OWJjMTYxMWE5IGxlZ2FjeS10cnVuaworMTk3ODMgNmM5M2YxOGQzMjMzNDVlYWY2ZWI3ZjM3NDRkOGZkMTdlOGU1ZmNkMyBsZWdhY3ktdHJ1bmsKKzE5Nzg0IGZhODkwNmVjZGI3MDI0NTk1MGQ4ZWZkNzNlM2E2MGU1NjZmZDg0NWQgbGVnYWN5LXRydW5rCisxOTc4NSAyMDNhZDZmM2VmOGNlMTJlMmJmYTE5MmJjYmRmMzk5YTk5YTZlNGNjIGxlZ2FjeS10cnVuaworMTk3ODYgZGE2MzhjNDg0ZDA4YzYzZDY1NjU2ZWE1OThlNWRhY2NhMGIwMzA5NyBsZWdhY3ktdHJ1bmsKKzE5Nzg3IGE0NmExMzIwMWVlYjg4NDRjMTM5MmQ3MTJmMjBlNjQ1YWEzZTFmOTAgbGVnYWN5LXRydW5rCisxOTc4OCBmMDdmYTdmNTI2MmE5MmZkYzQ1M2U3YmQ4YTZjNjA0ZGY4NTMxYTM3IGxlZ2FjeS10cnVuaworMTk3ODkgZjI5MDI2NTkzNzRhYzg4ZTgyNGIyYjJhMWJiNDg3NWY3YzY5NmMxYiBsZWdhY3ktdHJ1bmsKKzE5NzkwIDQ5MzQxMDIyMjcxOTJlY2I2N2UyMmM3Y2E3OWM3MzUxNjQyMDYwZmUgbGVnYWN5LXRydW5rCisxOTc5MSBiMDQ1NmQzYTBmMWYxZDNlYzYzMmRmMTZiMGIzYWViMGZkZDg5MzM5IGxlZ2FjeS10cnVuaworMTk3OTIgYmIyNWYyYjdiZGFlMDNiOGM0MTYxZmVmYTM3ZjBkOTZhOGMwNTUzOCBsZWdhY3ktdHJ1bmsKKzE5NzkzIDZkNTk4MTdjZjc5MjhlYmViNTM5NmJlNDlmNGJmZDExNmIzOGVjNGUgbGVnYWN5LXRydW5rCisxOTc5NCA0OTFmYjQ5YjQ2ZTZmZGVkOTY1ODU4MmE5YjRmODllYTVmY2RlMmNmIGxlZ2FjeS10cnVuaworMTk3OTUgMDA0OTg1YTVhZDVhODA2M2E1OWE4NTE4MDk4ZDU5NzIyOTE2OTY5YiBsZWdhY3ktdHJ1bmsKKzE5Nzk2IDQxNTIwNWIyY2RiMmRkY2YyNTFhZjhhNDRmOTZiZjQ5ODcxOThmNTYgbGVnYWN5LXRydW5rCisxOTc5NyBiNWRiMjNjN2E4MDRhMTkyYmFiZGIwY2ZlYWYyZWMyY2M3OTk0MGMwIGxlZ2FjeS10cnVuaworMTk3OTggNWFiNGRhNmFkNGZjN2JjODg0MGM2YmRmNDZiNzZhZDRlYzY5ZGI5YiBsZWdhY3ktdHJ1bmsKKzE5Nzk5IGIwYTk4MmM5MWFmMDEzM2YzNjVhZDRmMjYwYWI2NDY3NTg4M2JkMzIgbGVnYWN5LXRydW5rCisxOTgwMCBmYWE3YWFlYjAyMTBkZjkxOGMwY2YyYjhlYTE0ZTMzYTYzYTNlZjc5IGxlZ2FjeS10cnVuaworMTk4MDEgM2M2NWJhYmYzMjJmYjNjNWZhZDM2ZDcyY2ExNjg4NmYzMjhiOTRkNyBsZWdhY3ktdHJ1bmsKKzE5ODAyIDI1NDhkMWE3MDE4MDAyZjVhNjY2MWVkY2Y0MmJmMmIyYzkyZGUyMDUgbGVnYWN5LXRydW5rCisxOTgwMyAwMmUwOTdmNzJkNDdiMGEzYjVjOTM1Mjg0NmE5ZDVmYWQ2MDNiODNkIGxlZ2FjeS10cnVuaworMTk4MDQgM2EyZThhM2VkZTQ4MTkzOTQ2NjU3ZTc4YzNlNDQwYjc3Yjk2ZDRmMSBsZWdhY3ktdHJ1bmsKKzE5ODA1IDljOTIxYThlZDNhNzIzYjg0ZGJmOWQ4ZjkxNzY4ODI5YWRiOWRkZmYgbGVnYWN5LXRydW5rCisxOTgwNiA1MmEzZjgyNjE3YzQwYzdlNGZlMWYxZjVlZjljOTgzNjc3MjUwNGY0IGxlZ2FjeS10cnVuaworMTk4MDcgYWJjOGM2YzAyNWNlODM3MTE5NjQ3MjliZWE2ZGYyZjk4ZTFkYjE2OCBsZWdhY3ktdHJ1bmsKKzE5ODA4IGIwNDZhMzFhZjJlMDZlODNhMTMyNzNlNzcwOGZiNjM1YTQ2MTQxMmYgbGVnYWN5LXRydW5rCisxOTgwOSBlYjRlZDlmMjNkMjA2OThlNTFhNjE1YzZmOGRjZTRmMGZhZjkxZDZjIGxlZ2FjeS10cnVuaworMTk4MTAgOTQ2ODNjODVlYzc2ZTZkMTYwNGMwNjg0YWZkMGY1MzdkN2MzZmQzYyBsZWdhY3ktdHJ1bmsKKzE5ODExIDhjNjRkZGExZDI2ZjMwZGVhYTNmMGU2ZTYzODNhN2U3Y2ZiNjdmNDAgbGVnYWN5LXRydW5rCisxOTgxMiBiODI1OWM3ZmY0OWM5YmRlYjU4ZDYyNmFhYWU1YjM1ZDdhNDc5MDdlIGxlZ2FjeS10cnVuaworMTk4MTMgNWQ3ZTBlYTMxODE4MGNmYjA0YmU5NzE4NzdjYjdlNmU4MjFmZTdiMyBsZWdhY3ktdHJ1bmsKKzE5ODE0IDA5YWVjNjY4ZGYzYWUyOGMyNmZlM2RhOGFiNDViYjU1NzBhZjA0OTIgbGVnYWN5LXRydW5rCisxOTgxNSBjMjhkZmU1Zjg3YTczYmUxOTA4Yzg3ZTE5OTFlNjJhN2E0NWViZTZiIGxlZ2FjeS10cnVuaworMTk4MTYgYTAxNWFlZDNhMWFjMTA5OGZlMzRlNDU5MTY5MTFjMDY0ZjRkMzU0MiBsZWdhY3ktdHJ1bmsKKzE5ODE3IGFmODEwZjA4NDI1YmVmMjU0OGI1ZmZiNTA4NzdhYTgxNjIwM2E1NWYgbGVnYWN5LXRydW5rCisxOTgxOCBlOTQ0NWM1MWZmMjlmNjkyMzE2NjcwNWVjMjYwYTNkZmY0NDZlMjE1IGxlZ2FjeS10cnVuaworMTk4MTkgNGJhYTVhOTU1NTMyYWU1NWE4ODFkNWNiNDUwNDYxMzI0OWRjODE4NSBsZWdhY3ktdHJ1bmsKKzE5ODIwIDhhNDY5NmQ3Zjc0YzBjMjFlNmVmZmZjNjM4MmJkMTc5ZDlmZjUzMDYgbGVnYWN5LXRydW5rCisxOTgyMSAzMWUzMDJlOTRkYTg4MWIyZGUzYjdkYTgyYjhjNzc3MmZkMjU0ZjAxIGxlZ2FjeS10cnVuaworMTk4MjIgYjI1MTMxYmM2ZWM3Yzg4MjU0NzE1Mzk5OWU4ZGVhNGVmNTcwOWRlMCBsZWdhY3ktdHJ1bmsKKzE5ODIzIGZhYTUyZjM4NGFmNjUyNDhkYjRiYzI2MmZiMjA3M2ExODMzMTM4MTUgbGVnYWN5LXRydW5rCisxOTgyNCAwOWJhMTVlZTE5NjFiYTMzNTdkYTkxOTcyYzI0ZTYxNWEzNmQ0NjgyIGxlZ2FjeS10cnVuaworMTk4MjUgYjZjMGNmYjFlZmVhY2NjNjY5NWI2NjM1YmY2YTAyMmIxZTFmNTk4NiBsZWdhY3ktdHJ1bmsKKzE5ODI2IGRmZWIzYWU2OTJjMTExOWVkNzA5MTQwOTAzMjAwYjQzNTM4NjljN2UgbGVnYWN5LXRydW5rCisxOTgyNyA4MzJlNDA5MDllZjQ4NGY0YWRmMTEwODg5OThiYzkzNmY4MGI3Mzc3IGxlZ2FjeS10cnVuaworMTk4MjggOWZkMjBjYWU3Yjc2Njc1NGM1NmM3YjI0ODQyZWZlNzhjNTQ1MDU0OSBsZWdhY3ktdHJ1bmsKKzE5ODI5IGM3YzUzNTM2MTQ2N2Q0OTAxZDE5NWJiOWUwZjkyMmQ2OGNkNzc3YjkgbGVnYWN5LXRydW5rCisxOTgzMCBhY2Q1MDYwODQ3MjdlNzM0ZDg3YjMwMmNjZmI2ZjZjZjhmZmQxOTBlIGxlZ2FjeS10cnVuaworMTk4MzEgYTFiMzQ0NmM3MjBmMWE0ZmY3NThlMmUxNDFhMGYwM2ZiNzgzYWU4ZiBsZWdhY3ktdHJ1bmsKKzE5ODMyIGNkNmU0YmM5OTI5NWI4NTVmZjQ3NWE4YzdmMThlZjcxMjgxNWE4NTEgbGVnYWN5LXRydW5rCisxOTgzMyBlNTNiMzI4NDUyMjRlNzkzMTk1MjE2ZGE4NjZiNjRhZmM1YjQ4NWVjIGxlZ2FjeS10cnVuaworMTk4MzQgOTEyMzFiYmIzODQyZjQ3NmYwOGM2ZTNkOGFiZjBlMGE4NTBlMDk0NSBsZWdhY3ktdHJ1bmsKKzE5ODM1IGI4MzIwYTI2YzA2NTc2ZDczOGE1YzA0NGRhM2Y0OGFmMGE2MWQzMjEgbGVnYWN5LXRydW5rCisxOTgzNiAwZDRlODA2YzQyY2NiZDNlYzJiYTM5MzM1OGVjZmFjOThjYTg5ZTU5IGxlZ2FjeS10cnVuaworMTk4MzcgNjAyZWIwNDZiM2U3ZDM0NDQ3OTcyMjExN2MxZTgxMDE4ZGYzMjQyOCBsZWdhY3ktdHJ1bmsKKzE5ODM4IDJjMjkwZDRjM2IzODJmN2E4N2ZiNTg2M2NkNGY0YTVmMjFkODVmZDggbGVnYWN5LXRydW5rCisxOTgzOSA2ZjQyYzFkNTVlNmFmMDY4NDAxZjFhNDRlMGY1Mzk0MDgxMGM5ZTE0IGxlZ2FjeS10cnVuaworMTk4NDAgZWMyOTg5NWVlNDBjZmQyNjExZjlmNTRhNzA0MjczZTZhMjYzMjIwMCBsZWdhY3ktdHJ1bmsKKzE5ODQxIDM4ZTE3YTA4OTQ5MjkwNjRmMjc1OTgwMWNkZmY3M2QwNTEzMzQ2ODMgbGVnYWN5LXRydW5rCisxOTg0MiA2YmJlMjY4ZjhhZDg0OTE4Y2Y0YWFiYjcyNzI3MDAxOGEzNDdiMzdmIGxlZ2FjeS10cnVuaworMTk4NDIgZDBjODMwZGI1ZTY4ZWRkNGFhYTM0MDEyMTZlNjEwYzlmZjE0NTgyNiBsZWdhY3ktdHJ1bmsKKzE5ODQ0IDlhOWVhZWNmMGZkODI5MjZiZDIzMDBlNjFlYjlkMmNiZWNkNDk5NzAgbGVnYWN5LXRydW5rCisxOTg0NSA3MjNjZjVlMzc4ZTU3ZGJkMmZhZWQ4N2M3YjdiMWQ0NWM1OTY5NmZjIGxlZ2FjeS10cnVuaworMTk4NDYgNjQ1MzJiYTVkY2VkNWRmZjNlNWM1Mjg5NWNkMmZmM2Y1YzgyOGQxZCBsZWdhY3ktdHJ1bmsKKzE5ODQ3IGI4M2EzYjc4MzE0ZWI4OTMxOTkzYTVlZmNkY2MyNThmY2FiZjJkZjYgbGVnYWN5LXRydW5rCisxOTg0OCBkODg4ZGM3YmVhMzJlYmY1MzE4MjY1OWJkOGM0NjFmZTI2MGFlYjJjIGxlZ2FjeS10cnVuaworMTk4NDkgMmRmZWUzMzNhNjUxMDA2Mzc4MDI2ZGZhNmI1MzM4NzgzMTlkMDRjNiBsZWdhY3ktdHJ1bmsKKzE5ODUwIGE3OWViYmE2NDY2YTYzN2JmMzU5ZmI4MTZiM2JlNjFmOTU3MTU3NTcgbGVnYWN5LXRydW5rCisxOTg1MSBlNmM1YmM1YmVhYjNhMDdjNzFhNDVjZTNlNDBiZmQ2YTBlMTA2M2U2IGxlZ2FjeS10cnVuaworMTk4NTIgMGI0YzU3YTI1OTc3ZWRhN2E5NzU2MWVjMWM0MDE2ZTJjZDFjOTljNiBsZWdhY3ktdHJ1bmsKKzE5ODUzIGQ1ZTUzY2Y5ZGU3YzMzMDkzNjJmNGM3ZGUwNjc1MTc1MTc3MjEyYTYgbGVnYWN5LXRydW5rCisxOTg1NCAyYjkzNTRmNDg1MmZhYWIwNWZkODM3M2MyMGE2M2ZmODkzZGI5NDY4IGxlZ2FjeS10cnVuaworMTk4NTUgYzFlMTk0OWYzOWZlYTIxNTJlNWJmZjhhMWVhYTkwYjczZWNhMzM5YyBsZWdhY3ktdHJ1bmsKKzE5ODU2IDY3MDJjMGRmMTZiNjY4YWEwM2RlNzZmODRkM2ZhYzhiNTFlMWE1ZWIgbGVnYWN5LXRydW5rCisxOTg1NyBjNzlkYWI2NTJlYTg0NDEzYzhjMzRiNzVmOTFkNjhmYTNhY2Q2YzYwIGxlZ2FjeS10cnVuaworMTk4NTggZDZlY2U3YzNiMzVlYWY2YTVlOWQ3ODg5NjBmYmZmNjUzNzdkZDk5MiBsZWdhY3ktdHJ1bmsKKzE5ODU5IGY1Y2I2ZDY2YTk3N2JkZTMzMDg3NDRjMDBkMTIxNjI3MjkwMjU2ZWIgbGVnYWN5LXRydW5rCisxOTg2MCAxYTVhMDNlMmRhNzM5NjllMjI2NTVmZWNkNmUwYzUzZGE4ZjQzODFjIGxlZ2FjeS10cnVuaworMTk4NjEgYzVhNDE3ZThkODRjODM2Mzc0YTI5MGMxZjA4N2RlZjgyYjkxY2M0ZiBsZWdhY3ktdHJ1bmsKKzE5ODYyIDYxYzlmYTk0Y2U5ZDlhNGFkOWExODBjYTU4NmJlNDljMGRkMTAxYjEgbGVnYWN5LXRydW5rCisxOTg2MyAxYzk1YjZiMDZhZTMxZDI3YTVhYjQxNTg2OTUyYWQwNzlhNjY4MzBkIGxlZ2FjeS10cnVuaworMTk4NjQgNDE1Mjg1NWVmOWE4YjYzNWE4NDEwMTBkZmUzNDk1N2FmNWUxMWZkOCBsZWdhY3ktdHJ1bmsKKzE5ODY1IGE5NzVmMmMxNTRjMDYwNDU5OTkxM2I2M2NlMWYxYTExZDc2ZWFkNTggbGVnYWN5LXRydW5rCisxOTg2NiA3YzdjY2ZiNWRiM2VmMTM3NWJjNjcwN2Q4YjdmZTZjMmNjMzI0Yjc2IGxlZ2FjeS10cnVuaworMTk4NjcgMWRkYzcwZGQxZDFiYmFkMDMxOTg4YmMzNTM2MTYyMTQ3ZTgwMTE2YyBsZWdhY3ktdHJ1bmsKKzE5ODY4IDg2MzE4NzMzZmU3MDkzNTlmYTcxOTljZGE2YmYxMWFlNjQwZjRkMWUgbGVnYWN5LXRydW5rCisxOTg2OSA0NTljOGVmMGEwMTAzNTk4MzQ5YzA1MzNkY2M1ZmQ1NjMyOTRmZDQ2IGxlZ2FjeS10cnVuaworMTk4NzAgOTEwNGVkMzhhYzA1MWM5ZDUwOTFhZGMyZDE5OWJlOTRmNTc3MDVhZCBsZWdhY3ktdHJ1bmsKKzE5ODcxIDQxYjkyNDllNGQ0ODYzYmQ1YWEyYmFjNzYyYTM1ODc5MTViM2NhMTAgbGVnYWN5LXRydW5rCisxOTg3MiA4NmZkNzIzZjI5Mjg2YTJjM2ZkNzM2NzM3N2Y3MDdiZjg4NTUyMTZmIGxlZ2FjeS10cnVuaworMTk4NzMgNGY5ZGI4MzQ4MjVjYWEwYzNmZDhiMTZlZDY3ZmI3OWFjZTk5MjE1MiBsZWdhY3ktdHJ1bmsKKzE5ODc0IGVlZTdkMGM1YWU1OTJhZjRkZTk1MGZiNzJiMzYyMDk0YzE4YmE1MjMgbGVnYWN5LXRydW5rCisxOTg3NSBlNTllZGE1MjVmYzFlN2I1MmI3NDVlYjNmOGYwYTBmY2RjMGJjZDdjIGxlZ2FjeS10cnVuaworMTk4NzYgMmRjM2NhMWQ4OTBjNzczMTdlNjM0Y2RiNjU1YTAzM2MxOWExNDQ3NSBsZWdhY3ktdHJ1bmsKKzE5ODc3IGYzZmIwNWJmZWVlYjEzNWM2ZTkyNjZmNjEwYmJlMjk2N2EyNWQyNzggbGVnYWN5LXRydW5rCisxOTg3OCA1MzRhOTNkODJlZGNhMWFkZmIwZThlMGNlNjZhODAxOWQ2MjczMDM4IGxlZ2FjeS10cnVuaworMTk4NzkgYjdiMDQ4ZGExNjczNWYwNGMxNjBjMWQ2MTIxODIyYWI2YTE1YzcyOCBsZWdhY3ktdHJ1bmsKKzE5ODgwIDU0ODcxNmUyZjFmMTNjMzhiOGI1ZmFkODJhZTAwZjgzOGUwMzY0NzAgbGVnYWN5LXRydW5rCisxOTg4MSAzYjQ5NGM1YzYyMzRkZWFkMTFhMzViODY3NjEzOTgyNGQ0M2M4YjY5IGxlZ2FjeS10cnVuaworMTk4ODMgNGMxN2NiMmM2MjFlOWJkMDlhYmI3YmIyMDkwNjY2MWRlOWEwYTJlOCBsZWdhY3ktdHJ1bmsKKzE5ODg0IGExZGQwYjA3MDlkMjA2M2ZmM2ZmNmNlN2Q1MDdhYjA1NTkyNDZjYWMgbGVnYWN5LXRydW5rCisxOTg4NSA5OWRlNGJmMmI5ZTU1MTkzYjI4MGE3MGNhOWQwOWIyZWUwYTMyZWZkIGxlZ2FjeS10cnVuaworMTk4ODYgZDU2ZDc3ZjkzNzNiZGVmOTliYjNiZmY4MTA5ZDNmZmIyMjEwMzllMCBsZWdhY3ktdHJ1bmsKKzE5ODg3IGRiNTU2MDQzNTNiM2EyYTRkYTJjOTM2YzIxN2E2MzY2YTk4MTY1NjggbGVnYWN5LXRydW5rCisxOTg4OCA4ZWFmNzRhMTExZWJkOTIwNTk4M2FlODEyYTcxMTkzMzgwMWNmNzQ2IGxlZ2FjeS10cnVuaworMTk4ODkgZDE1YWNlMzIxMTAyNjZmNmUzZDUwMGJhOThiNGYwMjk5NTlmMjZkZiBsZWdhY3ktdHJ1bmsKKzE5ODkwIDZiZGY1NjNjNzYzYjNhNGQwMzM3NzBjOTdhNmE1MTVhM2E5M2RmNjcgbGVnYWN5LXRydW5rCisxOTg5MSAzYzY1MGQ5YzM4ZTc0ZWVhYzNmZTQwZjdiZmM2N2Y4MjdlNDVjNDk0IGxlZ2FjeS10cnVuaworMTk4OTIgMTljMmY1MGU1Mzk1NzFjNGVmOWRhNTcyYzY4NjY5MWI2NTY2YzE1YiBsZWdhY3ktdHJ1bmsKKzE5ODkzIDNmNWE1NGE4YTFmYjUwNTg5NjdhM2YwYjBkZGZkNzgwOWFhYWFjNDggbGVnYWN5LXRydW5rCisxOTg5NCA3YTM2ZjYyMDFjOTQwMDcyZDJmMzYxYWNiODAyYTljNDRiYmNiNGY0IGxlZ2FjeS10cnVuaworMTk4OTUgODk1NDZiZGRjMjJjYzBkZWVmMWI0ZGM2NmMyNjQwMjBjOWUzNDIzZCBsZWdhY3ktdHJ1bmsKKzE5ODk2IDk1M2M1MGYxMjE4NGFhZTJjNDAyMmI0ZGJiZDI2NzRiNDRlMWU1NGQgbGVnYWN5LXRydW5rCisxOTg5NyBmMGVmZGNkMjQ1MTJmYjhkNGI0YjRmMGUwNjAzMDc3OTBhYzRmYWEyIGxlZ2FjeS10cnVuaworMTk4OTggY2Q3YWM0ZDlhZGQwMjA3OWEyOGI5NzI4NjViZjdkYjkzODU5MmE0ZiBsZWdhY3ktdHJ1bmsKKzE5ODk5IGUyMWQ0YzIwNTY1ZDAwY2E0MjQ3MzM0NGE1Mjk4NGEzN2QwNmVlNmMgbGVnYWN5LXRydW5rCisxOTkwMCAzY2ZiYmNiZjcxMzRkMTE3YjgyMTM4MGZiMmI1NTZkYmE5ZGVjYTUzIGxlZ2FjeS10cnVuaworMTk5MDEgOTcxZmY2YjU4ZWRiZmI3ZTY2ZmI1MTRlZTI4MTQ4MTljOGMyZTBmMyBsZWdhY3ktdHJ1bmsKKzE5OTAyIGY0MTQ2Y2EwZjI5MjFlMjBiNGQ3NDJjNThmNzMxZjE4MTI4MDg1MDAgbGVnYWN5LXRydW5rCisxOTkwMyAyYTgwMTkxZDEyMDMwZTgzOTgxYmQwNzlhMDNiYmI1MmYxMzZmZTMxIGxlZ2FjeS10cnVuaworMTk5MDQgNTFjNmEyY2IwM2QxYjQxOWUxZDRhNmE3YTMxYTM4YjkzMzBjYzg0MSBsZWdhY3ktdHJ1bmsKKzE5OTA1IDY1YTYzOGEyNGY3ZTk1NGY0ODA3N2JiZWQzODU3MDc0YjYzMWM5N2EgbGVnYWN5LXRydW5rCisxOTkwNiAzZWM1MDA0MDNmMDEwZDhlZmQ1NDMwNzFjZWVlYTM5ZDFkMDI3YzU4IGxlZ2FjeS10cnVuaworMTk5MDcgYjQwYWIzMTA1NTIxZjE5NDVjZGRiNzVjOTZjYWFjNTMzMTMzMjkxYyBsZWdhY3ktdHJ1bmsKKzE5OTA4IDFlNThkNzgyYzA5YWM5ZjNmYzEzNWI5NTQwYzNjNzVjZDhjNTliOTMgaXRlci1icmFuY2gKKzE5OTA5IGQ1ODExYWY4YWNmM2RkNGUzMjhiZGJkMTZiNzI4MWM3ZGFhZjg0NDkgbGVnYWN5LXRydW5rCisxOTkxMCA1MzNjYzkwN2VkYmQyY2I2MTM3OWRkNzUwNDBmMDVhMDg3MjUwYjMwIGxlZ2FjeS10cnVuaworMTk5MTEgYmE4MWQ3OWRjM2EzMWRhZjU3MDFmN2ZlMjRmMmFmZWUzOWE0OTRkNSBsZWdhY3ktdHJ1bmsKKzE5OTEyIDdlMWU2NzI1NTA5ZTZjNTk3MWM5ZTk0ZDgyZTRkY2Y3OTQyZDQ3ZDQgbGVnYWN5LXRydW5rCisxOTkxMyBhZDc0MTc0NWNiNmMwOTQxNjI2ZmNhNTQwNGIzMmFlZWE0MmJjYTVlIGxlZ2FjeS10cnVuaworMTk5MTQgOGEzNDgzMDgzMTZkNTQ0ZmIwNjgxZWM0OTQ4YWQ4MTMyZDA2YzI3ZSBpdGVyLWJyYW5jaAorMTk5MTUgNDIwYTA3ODFiYjkyZjdjNjAxMWM3ZTg4YTY4MDIxY2MxZjY1NDRjZiBsZWdhY3ktdHJ1bmsKKzE5OTE2IGMxZWRiMTRmMDQzYmJiNzMyYTJlZDI0NzFjMDY5ZWFiZWU3NDJjZmIgaXRlci1icmFuY2gKKzE5OTE3IDQwYWQwYTA3NjFkMjRmYTY1NGIwMTViZWQ4N2IxNDBkN2M2YWYyMjggaXRlci1icmFuY2gKKzE5OTE4IGYzOTRhZjhjNTgwZjA1NTFlNDYwOTNhYWQyZDQ5NTlhNDdlNjkwYzMgaXRlci1icmFuY2gKKzE5OTE5IDYyZjc0YzI1OTc2MmRmZTVlNWVkMDQ4M2JjZDIwYjY0YTkyMTFkNzMgaXRlci1icmFuY2gKKzE5OTIwIDNmNTU4N2MyOGE1MGY5MTNhN2MwZDA1Y2JlZGRkMjg4ZTI4ZWQ2N2IgaXRlci1icmFuY2gKKzE5OTIxIGY0ZDQ5OGE5ZDk4OTAzZmJjMTY4MTAwMmRlMWNlMjhiZjAxMGJlMjcgaXRlci1icmFuY2gKKzE5OTIyIDUyNzk3YjRiMzc1YmM5NDI2Y2QxYjA3NDJlYWJkZDJlZTM5NWQzODMgaXRlci1icmFuY2gKKzE5OTIzIGQyN2Y4NDRmNmNmZTU2MmUyNzNhNThlMDk5NjQ4ZGNlMTY2ZmZmNWQgaXRlci1icmFuY2gKKzE5OTI0IDk4YTJiYjkwNTIwZDZjZjVlMjgzMDg4NzQ4YmI1MWZiODVkMDI4ZjEgaXRlci1icmFuY2gKKzE5OTI1IGFmYjMzZmVmMTRjYjhlMzZlNGNmNGJhODgxODRmMDUxZTJmNmE4YWUgaXRlci1icmFuY2gKKzE5OTI2IDNhODY2NmUxMjlhZGY5ZWI2ZTBjNmIwNDhkN2E0ZWFiYjQxNzkxY2UgaXRlci1icmFuY2gKKzE5OTI3IDIyMGI2MjczOGQ3NDI4MTMzOTAyYzQzZWQyZjUwMGFmNjE1ZjhmNjMgbGVnYWN5LXRydW5rCisxOTkyOCA1ZDY4YWZjNTIyN2M5MWIxYmYzZGYyYWE2OThjMTkyMTUxMTgxNjVkIGxlZ2FjeS10cnVuaworMTk5MjkgMTcyZDJhMjgxNmJmYTNhMGFmZWIxMjZmMGJlMDM1N2Y0Mjg5NDUxMiBpdGVyLWJyYW5jaAorMTk5MzAgMDk1YjgwZDJlNzg1ZDlmOTIwYzllYjI0NGQyYzcyZjY5ZWYzZTgyYyBsZWdhY3ktdHJ1bmsKKzE5OTMxIDJlZDdjNTg5NDNlNjExMmFmMjVmOWJhYTdkY2NmODRhNzFlOGU4YzQgaXRlci1icmFuY2gKKzE5OTMyIGM1N2ExYjY3ODFiMDRmYjQ1MTdkMzFlYTk4N2E2YWYzMDY4N2M0OTcgaXRlci1icmFuY2gKKzE5OTMzIDdiYjEyNTZiNTA2ZGI0NjRkZThhYzk5NDRjZmJiNGIxMWY2NTdiMjUgbGVnYWN5LXRydW5rCisxOTkzNCAzMzc1YTJhOThlNTY2ZmQxM2U0M2MyYmJmNjliZjgzN2FkY2QxNWRkIGxlZ2FjeS10cnVuaworMTk5MzUgZWI0MzY2YjNlMzkxYWE5MGMzYzgzNzEzNTU4ODkwY2E1Mzk1ZTExYyBsZWdhY3ktdHJ1bmsKKzE5OTM2IDZjYTcyZDcxNTM2ZTBjN2YxZGVlYjg0ZjY3ODU3MTgzZDQxMGM5MzUgbGVnYWN5LXRydW5rCisxOTkzNyBmZjc1YzM4MmYwZDMyZTBmNzJkMzkwM2RkYjFhODY5NmUxNDNkNTAyIGxlZ2FjeS10cnVuaworMTk5MzggMWY3MDBhNzIwNmIyZmM0NGZiM2E3MmVjMWQ5NGIxNjIwY2RhYTAxMCBsZWdhY3ktdHJ1bmsKKzE5OTM5IDVlNmFiOTM5YmRiY2M0ZGE2YzRlZGQwNGI5OTc5ZmM5ZThjNzcwOTEgbGVnYWN5LXRydW5rCisxOTk0MCBiZDQwYjEzZmE1YWJmYWI5M2RhNGEzNTVhNjg1M2FmZTEwNmIzOWJlIGxlZ2FjeS10cnVuaworMTk5NDEgN2ViNWE2ZThjOThkNDUwY2NiZDM4YjA5ZGNhZjY3ODVkMDc5ODE2YSBsZWdhY3ktdHJ1bmsKKzE5OTQyIDdhNDE3NWUxMDYyNmNmNzQ5OGMzOTI4ZDQxMWU1NThmODk3MzUxMzQgbGVnYWN5LXRydW5rCisxOTk0MyBkNThlOTNkYWZiOThjMmZkZGRmNTA1MWVmMzY4M2E2ZGEwNzEzYzYyIGxlZ2FjeS10cnVuaworMTk5NDQgNGU2ZjE0ZTc1NTdlOTkwMDU0NzZjNGEwOTBiZmYxMDgxZDQyZGQzYyBsZWdhY3ktdHJ1bmsKKzE5OTQ2IDkwZTQwNjRjYTA0NWVjZThkMWE5ODUwMmQ4MmM3ZjAwNmRlZDRlZGUgcmVsZWFzZTIwLW1haW50CisxOTk0NyA0MTVhMTliYjE2NzVjNDc5NGMxNjhjNjRlYjhkNDI1MmRiZmY1MWE4IHJlbGVhc2UyMC1tYWludAorMTk5NDggNzQzMjk2Y2UwNTJiMTg3YWEwNzQzMGFmZGVhNTQ2MDY4YzkzYTY4MCBsZWdhY3ktdHJ1bmsKKzE5OTQ5IDE0YjdhN2I4ZDU4ZGJiZjJhNGRlMmRiYjE4NGY2MjFlODViNzI0OTIgbGVnYWN5LXRydW5rCisxOTk1MCA3OTdlYmI3MDMzZDcyNmVmMGU5MjhlYzQ4YjlhYWVhNDE0MGY3ZWEwIGxlZ2FjeS10cnVuaworMTk5NTEgYTEwNjZlNWExMDY1Y2FkNDE2ZWY0YzFiYWZmOTg0YzFkZWQzNzAyZSBsZWdhY3ktdHJ1bmsKKzE5OTUyIGRjMGY2MmU3NTg4YjNlODk1Y2RkNGQ4MzQ4YjE2NDc2NmZjN2QyNTYgbGVnYWN5LXRydW5rCisxOTk1MyAzZjUyNzZjYmJjNGRhMjQ0YWFmYzQ4ZjkyOWVjNjVlMjFhYWY5YmNlIGxlZ2FjeS10cnVuaworMTk5NTQgYTU4MTRmNjIwZTg2ZDlhNzAzZDY5N2M5ZjAyY2RkODhjOGMxN2I5ZSBsZWdhY3ktdHJ1bmsKKzE5OTU1IDMzYzg2ODBiM2IzNTQwNDZkMjMyNGE4NmMxN2ZjMmFkOTk5MDUyYTkgbGVnYWN5LXRydW5rCisxOTk1NiBkN2UwMmI5ZWUxNzljMWU0M2FkY2ZkNGE5ZGFjOWQ3OTAyMjUwNzJkIGxlZ2FjeS10cnVuaworMTk5NTcgNTQ2OTIyZmE4ZDk5NDkwYTM0MDIzZDg2ZWY3MWExY2I2MGIyZWNhNCBsZWdhY3ktdHJ1bmsKKzE5OTU4IGRkMDRiYmZkNWE3NmNlZWFhMDUyZDQxMzFhMzJmOGNhYzFmMjg1YzcgbGVnYWN5LXRydW5rCisxOTk1OSAyYzFiZTc5MjRiMDRhZmFmNzRiYWM3YzNjNzdlMTIwNmJlNDU4MzZiIGxlZ2FjeS10cnVuaworMTk5NjAgMjZjZGVkNTljMTcyNTNmOTdjNjVlMTRkM2M3MjQ5MGUyZjNkZmMxMCBsZWdhY3ktdHJ1bmsKKzE5OTYxIGViNGE1ZmYwZjcyY2M4NTM3MjlkYzliZGYzN2ZjMjMzYTVlZDNkZGMgbGVnYWN5LXRydW5rCisxOTk2MiBlZTY3OTNhZTA2YzE0ZTAwMzg3MjhiNjRmM2NjZjdhMWVmZmRlMTIzIGxlZ2FjeS10cnVuaworMTk5NjMgYjY1MGQ3ZGFhNTkzY2M5NmIyMzMwMDZiMTBjMThjN2IzY2M4NjE4MyBsZWdhY3ktdHJ1bmsKKzE5OTY0IGI0NWFlOGM0NjdhYWY0NGQwYWViY2M4MjI3MTAyNDY3MTY1N2Q3NzQgbGVnYWN5LXRydW5rCisxOTk2NSA0MzE3Mjg4OWU4ZTY2YjE4OThjNWVmMjI3NjM0Mjk1MWI3N2JiNmFmIGxlZ2FjeS10cnVuaworMTk5NjYgNDYyYjhkZmU4NzUzOTFlOTYzMTYwOTYyN2NmNzk1Y2IwY2ZhODFkNCBsZWdhY3ktdHJ1bmsKKzE5OTY3IDgzMjNiMDk4YzZjZTBiMWM2MzExZDJhZTUzZDI4Y2MxOGJkNDQ0YWIgbGVnYWN5LXRydW5rCisxOTk2OCA5MDc5ZjcwYTViODNmOWYyMjhlNWRhODI0N2Q2NjA0MGRjYTU3YzBkIGxlZ2FjeS10cnVuaworMTk5NjkgODVkNzRmMDQwNzEyZTY0ZGE1MzA5NDhmZWMwY2FkYWMwNGVlMTg3NSBsZWdhY3ktdHJ1bmsKKzE5OTcwIGY3ZTJjM2Q5YzM4NzkxZDMxNzljYjU0YTM0MTFhMDU2Y2JlOGFlNGQgbGVnYWN5LXRydW5rCisxOTk3MSA3ZTE4MWViYTZiOWJkNGQ4MTRiOTRiMDExZTA5NDEzNWQ2YTEzZDViIGxlZ2FjeS10cnVuaworMTk5NzIgYmMwNTU1YmUyMjEyM2E0ZDVhOGRjMzI0Y2I1Y2MxODg3ZDQ3ODI0MyBsZWdhY3ktdHJ1bmsKKzE5OTczIDUyY2IwYzVmZGYyMzgwOTkyODM5MmQzMjM0NjFhZDFjNmEyMmNlMzMgbGVnYWN5LXRydW5rCisxOTk3NCBmMjcxN2IwMTM3ZDA3Mjc0ZGVhYWZhNTAxZjczNTlhMjFiODA5YzI4IGxlZ2FjeS10cnVuaworMTk5NzUgNjQzNGRjNzc2Y2I5NzVhMmMzNTk1MDY0YTNmN2RiOTAwZmFjZmQxNyBsZWdhY3ktdHJ1bmsKKzE5OTc2IDEzODBhNTJmMWEyMTg2MjkwZjllYTVjYzI1OWEyOWM3ODU3NTI3ZTYgbGVnYWN5LXRydW5rCisxOTk3NyBjZThhYzM3ZGIzMDBhNWE3NDA0OGY4NTdiMzliYjQ1YzQ3ZDM2NDBkIHJlbGVhc2UyMC1tYWludAorMTk5NzggNmE1MjdiZTRjNGQxOTA3ZDg0ZDllYjQzNjIwZTU2ODhmM2M4ZmY5NSBsZWdhY3ktdHJ1bmsKKzE5OTc5IDNmMjI4MWUyNGUyZGM0Y2M5YTYxOTlmNGQ5NTdhNWYwNDUzNDI3MmQgbGVnYWN5LXRydW5rCisxOTk4MCBjMDY0YzBkM2M0OWI5MzYyMjQ5ZjZkMWJjZGI0ZTY2ZWNlNTA2NzNjIGxlZ2FjeS10cnVuaworMTk5ODEgNzQwNDY3ODIwNzJkNjA4YzhhYzBkNzljY2ZmNDk5OGU5YTc4MmM0MSBsZWdhY3ktdHJ1bmsKKzE5OTgyIGIxYWJiMjYyMjk3OTNkZjdjNWZkZGJlOGViOTMzMGNhM2VhNjBkYzggbGVnYWN5LXRydW5rCisxOTk4MyA3ZTkzOGYwZTlhNDk3NTQ4ZTg5OWQ0MmE2ZDU4N2U4YjQ2NDRjNmVhIGxlZ2FjeS10cnVuaworMTk5ODQgNzcxOTY1NTdmZDMxNjdjYWU0MzNkYjgwOWNhNzc1MzFjMWRiNjJkMyBsZWdhY3ktdHJ1bmsKKzE5OTg1IDljZmQ5YzMyOTdkZDQyOTNjNjAyM2M2YjBjNTRlYTg3MTg3YWYwMDEgbGVnYWN5LXRydW5rCisxOTk4NiA0NWFkN2E0NjhiYTJhMzUzYmZjNmQ2ZjI0OGFhYjg1ZWM2YTgzNWQ3IGxlZ2FjeS10cnVuaworMTk5ODcgZGQ1YTFiMjgwNDQwNzljMDYyMmYwNWU3MDNjYWQ2Mjc0NDBkNGMzNiBsZWdhY3ktdHJ1bmsKKzE5OTg4IDU3OWFjOGUzNWY1YjVlODI3Nzg3N2Y1NTVkODM0ZTg5NTFlMDQ0MjAgbGVnYWN5LXRydW5rCisxOTk4OSA4ZjMzOTI2OWUwMjdkNmY4OTE2YzNmM2RlZDZjNWQ5YTAyNWJlYjc0IGxlZ2FjeS10cnVuaworMTk5OTAgYzIxNGYzNzIwNjU4ZTJiODY1MzVmMDg2MmJjOTc0N2RmMDY5ZjQxYyBsZWdhY3ktdHJ1bmsKKzE5OTkxIDk4OWZlZDI4Yjc0ZjMzYTQ0OGUwNGY2MzljZDg0ZjczMWI0NzIwNzYgbGVnYWN5LXRydW5rCisxOTk5MiBkOWVlNTZiNmRiMjZhNTQ3ZmQ3M2Y4YzVlZDY4ZTZlYzc5ZjA5NDFjIGxlZ2FjeS10cnVuaworMTk5OTMgZGNmNzNmMTBmN2NjZjAzZDc5Y2RmMTFiZDQ4OTE1MTUxODA1NjI4NyBsZWdhY3ktdHJ1bmsKKzE5OTk0IDliZjM3NDkzMzg3MjA1YWNmM2RkYmVhN2M4MGE3NDBkZjJhMWYzYTEgbGVnYWN5LXRydW5rCisxOTk5NSBlZGRhNGE0MzIzOWJjYzMwYjUwYzIwMzA0ZTg4YTY3ZWI3ODQyMjRjIGxlZ2FjeS10cnVuaworMTk5OTYgYTM4Y2NlM2Y0MWI0MWRmYzIyMGRhMzU2YzVjZjBhNTA2NTFlZTVhMSBsZWdhY3ktdHJ1bmsKKzE5OTk3IGE0ODhhNjNjYjg2NzRlNmI3MDQyNGM5NjcwMzE4MmU0ZTY5OTk5ZTMgbGVnYWN5LXRydW5rCisxOTk5OCA4ZmYyNGFiZWIzODgxMTBjYjRjNTgyNzU4NWFiY2RkOWVmMzQwZWQxIGxlZ2FjeS10cnVuaworMTk5OTkgMTgyM2ZhMjMxNTIxNWMwNGU4NWUwZDRhMDJkMGUwOWQ4YjFjNDQ2ZiBsZWdhY3ktdHJ1bmsKKzIwMDAwIGFkYzhhNDFiZWU5ZjY5NzY5MTNiMmIyNTE5MWUxOTQ3NzZjZTI4OTUgbGVnYWN5LXRydW5rCisyMDAwMSAzM2Y3NzY5YTIxOGVkN2I1NGY2YjdhODVkOWE1NjI1YjAyODA1Zjc3IGxlZ2FjeS10cnVuaworMjAwMDIgN2ViOGIyNDBkZDZjNGIwMTc3NWZhODliY2I4ZTBmYTM3YzUwZWViYiBsZWdhY3ktdHJ1bmsKKzIwMDAzIDdlZDNlN2EwOGEzMTAxOWRjODM5M2Q3MDI0YTcxZjQzMzI3YjQ3OGQgbGVnYWN5LXRydW5rCisyMDAwNCBiZjY3OGExMWMyMWFlYzdkMTlmYjc0NThlNzBjMzNhM2I4NTEzOWIxIGxlZ2FjeS10cnVuaworMjAwMDUgNzZlYWIyZWJjZTU4YTQ0YjQ4ODBlNWUyY2YzYTAyMjA5ZjY3NmY3NyBsZWdhY3ktdHJ1bmsKKzIwMDA2IDQ4NjNiNTk1YmRhZTg2MDAxMjQ2ZTE0YmYyMTMzM2I1ZDE1OWFmOWIgbGVnYWN5LXRydW5rCisyMDAwNyA2ZmUxM2QwMDhlMjVmN2E5MzJlMzNjZjAxNTBlZGFjOTA2ZTFkMTdlIGxlZ2FjeS10cnVuaworMjAwMDggZTEyMTRmOWUxMmEzY2NmMTg2OGUzZmQ1ZjI1OGZkMDI3NDdjZGFlYyBsZWdhY3ktdHJ1bmsKKzIwMDA5IGQzMWFkZDk5YTg0NjhjYThjYjEzMDA1MmNkZjRkNmFmYTM5YzBlZGEgbGVnYWN5LXRydW5rCisyMDAxMCAzM2Q4ZGQwMmFhOTkxMjkxOWZlNjJiYzc4M2E2M2Y4NjczY2JlZjMxIGxlZ2FjeS10cnVuaworMjAwMTEgZjlhMDdlOTk5MDdlNmViOTc0ZTQ5M2E0NGVjNTI5YWFhN2ZjMWExOCBsZWdhY3ktdHJ1bmsKKzIwMDEyIDNiNmVhNGNmZWVlMDYyZWNiYmMwZjQ2ODY5NGU5NjRjZWZhMjE4ZTggbGVnYWN5LXRydW5rCisyMDAxMyA4NDhmMDg1NTk5MTZkNGE3MzE4OTZkZjMyODNjNDAyNWExNGQxZDE3IGxlZ2FjeS10cnVuaworMjAwMTQgNjQ2ZWMyYTRkN2Y0ZTBjYjI3NjA5MDI4NjEyOTBmNjdjOTlkZjY4YyBsZWdhY3ktdHJ1bmsKKzIwMDE1IDllNmU0ZjVlNTYwNDVmODY0MzUyMjI1ZDllNzBkN2M0YzYzZDVjMmQgbGVnYWN5LXRydW5rCisyMDAxNiBkYTZjNjYyOTgyYjY0NDQzYWFlMTE5ZjlkZDYxNjI1NjY5NDQzMWQzIGxlZ2FjeS10cnVuaworMjAwMTcgYTgzMDFkNGVkMmIxYjk1ODk2ZTBiN2E0OTllOGVmOGMyYjcwNjdjOCBsZWdhY3ktdHJ1bmsKKzIwMDE4IDIwNTRjZWEzODc1NGJkM2JhZGJjYTNmYzQ0MDNjNDNmYmNkNDZhM2MgbGVnYWN5LXRydW5rCisyMDAxOSAxYjg3NDVmYWEyZWQyYzlmMTRiZWFjNWVjYzI1YjM3MzJmNzg3YTU4IGxlZ2FjeS10cnVuaworMjAwMjAgNTRiNmQyOGE2ODc4YzliMTAyYzY4ZWQ0YmYzOTgzNDgxYjJlNWFiZiBsZWdhY3ktdHJ1bmsKKzIwMDIxIDExNDYwNzBmNDdlYzZiN2VhYzQ0NWQ1Yzg2Njg5YWE1NDNlMTk3NTcgbGVnYWN5LXRydW5rCisyMDAyMiAzMmJjYjRlMjEwMDU0ZmYxODJmNGNiNTEyODYzNDUwNzkyMzc1OTg4IGxlZ2FjeS10cnVuaworMjAwMjMgMGIzM2ZjNjdjYTRlNDlkN2UzYWY0NGNkMDE3YjAwZGExNzM2ZjM0ZiBsZWdhY3ktdHJ1bmsKKzIwMDI0IDFjOTBhMWNmNzk1Yzk2ODBiN2U0NzhjMzhmN2NhYzkyZmMxZWUyNDkgbGVnYWN5LXRydW5rCisyMDAyNSA1NTIxOGUwNDk1YmM0Nzg0ZjNiYTdlYTU0NGM4ZDE5NDI4NjEzYmI1IGxlZ2FjeS10cnVuaworMjAwMjYgZDBmZDYwYzU5YWVmYWQwYThlZjhlYmI5OGI5ZjIzNGQ5OWM3ZGY1YyBsZWdhY3ktdHJ1bmsKKzIwMDI3IDBmYTJjMDUxODhhMGI3OWM2ZTkyZTQwNTRlNjI3ZTk1ZjhhNWM3ODIgbGVnYWN5LXRydW5rCisyMDAyOCAyMDZhOWYxOTc4ZTUwMGE4NjljZmEzZjgyMDVmZDYwOWE2N2RmNThiIGxlZ2FjeS10cnVuaworMjAwMjkgMmVkODQ1ZjgxYjBjNWRmODg0ODE2ZGEyZjA5YWRmZTA0NjMzNjExZSBsZWdhY3ktdHJ1bmsKKzIwMDMwIDgxNmQ4NjAwMjY4MzFiMjQwOWRmMDY1MzM3ZGQ3YzA2MzY5YzAyMGYgbGVnYWN5LXRydW5rCisyMDAzMSA3MjQzZGViMDIwZTg3ZTMyYzA3NWJiZDQxNDllNzhiN2NmZTA1Y2IwIGxlZ2FjeS10cnVuaworMjAwMzIgYzliNGVmZjE1ZGNkYWNmNzkwNDg0NWNiOWQ3MDBiNGE1NWYyNWQyMCBsZWdhY3ktdHJ1bmsKKzIwMDMzIGY1OGE2NWQ0Y2MyMzc4MzdlZDU0ZjczYzZiMTQ0NDg5MTUxMTVjODMgbGVnYWN5LXRydW5rCisyMDAzNCBmNDI5ZWU5NDQ4YWFkNGQyZWIzNzY0NTUzYzc1NTRmM2VjNDc2Y2MzIGxlZ2FjeS10cnVuaworMjAwMzUgOGZiMTBhZmZiNjE1N2FjZGU1N2VjZjgyMWZiMTNiOTdlNWEwM2RjMiBsZWdhY3ktdHJ1bmsKKzIwMDM2IGMyZTRiYTNjODVjYzkyY2I4MzkyOTIwNzBhYmJmYjdhNDJlYTE2MGIgbGVnYWN5LXRydW5rCisyMDAzNyBiYmY1ZWEyYTIyZTU1OTdiOWQ3YzRkYTU5ODZlOWJmYWFhMmZkOTlmIGxlZ2FjeS10cnVuaworMjAwMzggODM2ODQwNDM3M2VjY2YyNjM3ZjNmYmUzMDA1MzllNjUyNGUwMzIxYyBsZWdhY3ktdHJ1bmsKKzIwMDM5IGYwN2JjNGY4ZGI5ZTY5ODdjZDJmNjY3NWZmMjMxMzk1Mjc3NmYwNDkgbGVnYWN5LXRydW5rCisyMDA0MCAzNDljODc4ODYwNGUyOTMyNDliOWVlYWQ5MmIzZmYwYzMxYzQyOWY1IGxlZ2FjeS10cnVuaworMjAwNDEgMjA2ODA5ZTI1YjUwZDJkZGUyMzg4YWE4MTkyOWI5ZTU1YjNlMWZiOCBsZWdhY3ktdHJ1bmsKKzIwMDQyIDUwODA3YzQ2NTAzNGI2OWEyM2MyODQ2NmRmNzBhZTg2MWVmNDI0MDcgbGVnYWN5LXRydW5rCisyMDA0MyBjNzRjNGJkY2I0MTEyMmYzODA4M2E5ZGFkZDk5NjgwZDM2MmU2MWQ2IGxlZ2FjeS10cnVuaworMjAwNDQgMjYwODY4Y2FlMWExZDVkZmQ4NzdmYzRmMWVmZTg5NmY0ZTY0ZWU5ZCBsZWdhY3ktdHJ1bmsKKzIwMDQ1IGNlOTBmNTY3ZmE0MjAyYTU5YzRkN2FlMTE3MWI5ZTA3Yzc5NWI1MzQgbGVnYWN5LXRydW5rCisyMDA0NiAwYjhiNmY4NDA2ZGNmYjgwNmQyZWQ4ZjU5MGViZmY4ZjQxZTZmYjAxIGxlZ2FjeS10cnVuaworMjAwNDcgM2I4YTViYmZkMmU1NzIwZDZlOTYxNDBlNGM0MGQ1MGJmNDk1OTFhYSBsZWdhY3ktdHJ1bmsKKzIwMDQ4IDE1NTA4NzIyNDllOWU4NTE5MzEwZjFiZmZjYzliNzg0OWQ5NDA3NmQgbGVnYWN5LXRydW5rCisyMDA0OSAxYmUwZDFjNTc4MzQwMjVkZDVkMWMzMzVkMmIwOTBmZjUwNTcxOWZhIGxlZ2FjeS10cnVuaworMjAwNTAgOGM2ZjIyY2VmODc4MjJkNmUwMGFiNjVlMTFhYTY5ZDJjNTllZmFiZiBsZWdhY3ktdHJ1bmsKKzIwMDUxIGY3MjE3M2M3OTNiNmQ4MzJjYmU0NzdmNjY2NTZmMWMyZGUzNGU5NjggbGVnYWN5LXRydW5rCisyMDA1MiAxMDk0MDU2MWU4OTFjMTAwYzk5MzVhMTlmZTUyODUxMGMwNmI5N2EwIGxlZ2FjeS10cnVuaworMjAwNTMgNzI5MTg5MWNiMGJmNzY4N2NjNWRmMDczYjZlOTIzYmUwNTg5N2E0MSBsZWdhY3ktdHJ1bmsKKzIwMDU0IGUzYjVkMDNlM2Q3ZGI3YzZjZmJiM2Y2MGRlYWM2MmJiMzg2ZTlhYzMgbGVnYWN5LXRydW5rCisyMDA1NSAxNDNlZjg4ZWM4NTYzNGI0NDA2NmU2ZGQ3ZTY3NDU1MmIyNzRhYzUwIGxlZ2FjeS10cnVuaworMjAwNTYgYWQ2ODNmMjBiYjE0MDc1YjFhYzIxMTQxZmYwMzJmZTkxNmZmYmJlNCBsZWdhY3ktdHJ1bmsKKzIwMDU3IGI0NGU3N2ExMjk3ODhkZTViOTA2MjI5YTgyMDlhZmRhN2JlNTI4YWIgbGVnYWN5LXRydW5rCisyMDA1OCBkYzlhMTUxYTBiZDUyYTk2ODJiZDA3NzAwZThkMjI5YjhhMjY5MDIwIGxlZ2FjeS10cnVuaworMjAwNTkgOWRiYWIzZDU0ZGVlZWMzZmEwYzU0NmZlMGFlODliODUyYjBhYzRjNSBsZWdhY3ktdHJ1bmsKKzIwMDYwIDM0NmU5Nzg2MzBhOWMzYmM3ZGUxYmYwNmYwNzY1NzQxMDlmYjA0ZDkgbGVnYWN5LXRydW5rCisyMDA2MSAwZDUyMzU4Y2IyODgzNDE5NTQ4ZDRhN2Y4NTQyNjIyNTE0MDk0OGFhIGxlZ2FjeS10cnVuaworMjAwNjIgZDgwNzQ4OGRmYzdhMTJiN2FlM2ZhYmM5MjFjOTUyNDg5Y2NhMjE0ZCBsZWdhY3ktdHJ1bmsKKzIwMDYzIDk2MjE5NmNlNzIzMTU2M2ZiMDU4NDRmYjYzZTZlOWIxM2Q4ODg2MmEgbGVnYWN5LXRydW5rCisyMDA2NCA0ZjY4ZDNmOGZkYzgyMDA4MDU5Nzc5YTg0NWFkNDg5N2NhZWMyZjlkIGxlZ2FjeS10cnVuaworMjAwNjUgMTA5MDJlY2FiY2E5YzczMGExZGYwZWQwNjE3ZTc5MzgyZjA5M2ZmYiBsZWdhY3ktdHJ1bmsKKzIwMDY2IDczZjQxYjBmZjc3NzVhZmRlNWY0MjZhZjFhMGQwZDBhYTlkNTljM2QgbGVnYWN5LXRydW5rCisyMDA2NyBjZDI0NTVjYjEzZWY1NWM2NWVjNmY1ODQwMWMxZWIwYmVjMGUzZDdkIGxlZ2FjeS10cnVuaworMjAwNjggZTQ5MDc4MTAxYTY4NzQxZDc3YTVmMDRiOGNiNzRhYjUxMjFhN2RlMSBsZWdhY3ktdHJ1bmsKKzIwMDY5IDU5NmVmYTdlN2RmODNjZmFmZDdiYThhNDQxYTMwYTYwNDY5MzlkNzUgbGVnYWN5LXRydW5rCisyMDA3MCA2M2NhY2RlYjgwNDViZDUxOWEyNmQ2ZDZhNzk3MjAwMDE4OTVjYzlkIGxlZ2FjeS10cnVuaworMjAwNzEgNzA3Zjk1ZDA1ZTY5MDc2NGU4OGJkMWNjNGE2N2IyNGRkMDM5NGQyOSBsZWdhY3ktdHJ1bmsKKzIwMDcyIDhkZjBmNjVlMzg2MDM1ODc4MTZkMTk1NzdkYjRiOWYwMWE5OGRhNGYgbGVnYWN5LXRydW5rCisyMDA3MyBhN2JiZjMzZmNlMDVhZTRiYmYwMjI5ZTEyNzk5YmI1ZmEzOTJlODliIGxlZ2FjeS10cnVuaworMjAwNzQgNzkxNmQzMmFhMDgxMjVkOGM5ZGY2ZWRmYzYyZGQyODgzYzhmZjQwNyBsZWdhY3ktdHJ1bmsKKzIwMDc1IDVlZTM1NDNlYTMzZjQyNTBlOTdjODFmZThjODU1NDFmNDZkOTdjZjIgbGVnYWN5LXRydW5rCisyMDA3NiA5ZTY0NjgzNTZhMGIzMzcxNjVmNWIyNWRmMDdkMjU1NmNhYzhkOTYwIGxlZ2FjeS10cnVuaworMjAwNzcgNTZkMTk1ZjIxYjRmZTBkYThlNWFjZGE5ZWVhYjlmNDJkN2VmOWQ0NSBsZWdhY3ktdHJ1bmsKKzIwMDc4IGY5YTMwMDE1ZThiMGZjYjRmY2M3ZjVjZjJjZjc4N2MyZTQxMmU4OWMgbGVnYWN5LXRydW5rCisyMDA3OSBmMmY4ZjNlMmFjMjMxYzFiZjQ5YWNkYzVmMjc0NzY4YzBiMTdiZDFkIGxlZ2FjeS10cnVuaworMjAwODAgZDQ4ZDA5Yzc4N2E4NDlkMTQwNTgyZTc4NWZiYjlhYjQzYWY1OTRkNyBsZWdhY3ktdHJ1bmsKKzIwMDgxIGY1ZDM4YzViMTc1MWUzZDcxNmQ1YzE1NjNhMDg3NDlmODJkZWRkYzcgbGVnYWN5LXRydW5rCisyMDA4MiBkNzE4YzI5M2ExZmZhMmI3ZjRmOTgxOGJjNzA4MjZjMGUxMGViMTA1IGxlZ2FjeS10cnVuaworMjAwODMgYmFjYWM3NWQyMmZkZTllODZhMjRkMGQ2MGE3ODU1MzBkYTMzMGM4YyBsZWdhY3ktdHJ1bmsKKzIwMDg0IGViMDZhMDJlMDUwNzZiZTRjZTE2ZDRhZDk5MDY3N2RiMWEwNDNjMzkgbGVnYWN5LXRydW5rCisyMDA4NSAxMTUzNzk2ZDIxYzI0MDcwNmJkMDkzMTIwZTgzM2YxZDdkNTJmOTk2IGxlZ2FjeS10cnVuaworMjAwODYgNDEyMGViZTA4ZGQwNDE2Y2MzZDdjODdjYWNhY2U1ZDBmMTdiMTA5MiBsZWdhY3ktdHJ1bmsKKzIwMDg3IDM0ZWYwNTQ0MTQxM2YyNmI2NWNiMTU0MDBjYWU4MmEyNzc2NThlMDcgbGVnYWN5LXRydW5rCisyMDA4OCAzOGVmNDY2MzU5NDkyNjU2OTAzYzc0NGViMjRkNmQwNWQxZTA3OWI0IGxlZ2FjeS10cnVuaworMjAwODkgMmU3ZjQ3MzE0YWRhYTMxNzc4MzRiY2YxMmQ0YmZkMWY3ZDRhODNmYiBsZWdhY3ktdHJ1bmsKKzIwMDkwIDU3MDVkNWE4YmNiM2NkOTVlNGZhYjBkMzNjMTJhOWVmMzZkOGE3ZGMgbGVnYWN5LXRydW5rCisyMDA5MSBjNThiNmQ4NjhkMDgxNmY1YTY5NGUxMGE2YmUzNTI0MTI1NGRlZTg5IGxlZ2FjeS10cnVuaworMjAwOTIgN2E0OTQwYTRhY2E2ZjcyOWUyOTA4MGNiOWZkZDkzNmQ3NjBlYjQyOCBsZWdhY3ktdHJ1bmsKKzIwMDkzIDcwNTdiNmFhNDZlYzU1ZmNhMTgwYzVmZGU1OGQ3MGUwYzU2ZGFkN2EgbGVnYWN5LXRydW5rCisyMDA5NCBhYzY1NmM4MzdiNmM3NjRiYWMxMGViOTJkMDk2ZjMzOTcyZWE2YWZhIGxlZ2FjeS10cnVuaworMjAwOTUgNmNmYTNkNjVhYjU0NjliZjA2OGI5MmU1MmM2YWVhZDQ4MWUzZTM1MSBsZWdhY3ktdHJ1bmsKKzIwMDk2IDkwNTQ2ZDZlNTQ0NTRmYzY4NTk0YTIwNWY5MTEyZTY2MTEyMWUxYzggbGVnYWN5LXRydW5rCisyMDA5NyBiNzQyY2FmMGE4NjJhNDVjM2YxNTY1NTcwYThiZTczYjIwNTdlYzg1IGxlZ2FjeS10cnVuaworMjAwOTggNDA3ZDYwYjJmYTQxYTk0YzlkZjRlM2M2NjVjYThjMDdlZDMzZWEwYSBsZWdhY3ktdHJ1bmsKKzIwMDk5IDc4MjIzOTQ4ODA1ODViZjdiNmE1YmEyZDJhZjdlN2IyMWNiYjRlOWYgbGVnYWN5LXRydW5rCisyMDEwMCAxNmYxNDVhYWMyZWMxMmU1ZDYxMjE3ODMyYzQ3NDlhN2I5ZjM2MWY2IGxlZ2FjeS10cnVuaworMjAxMDEgYzg4MTdhOWJiYmRkYmM0YzBjY2RhYmUxYTZiMDZhNzljYjZjNzRiMyBsZWdhY3ktdHJ1bmsKKzIwMTAyIDUyZGEwOTRiNTNlYzM5YmY5NTA1YWVmNjE5NmViOGYwMWQ4NGM3NDcgbGVnYWN5LXRydW5rCisyMDEwMyBkM2Y3YzdmYWRlYzAzOTg5Y2FlZDc5NDkwYmU5Y2QwMjg4MWJlYWJmIGxlZ2FjeS10cnVuaworMjAxMDQgNjQ4NzZiYjhhYWNkYzViMWRmOWQwNjM3NDg0MjViMmNkMjU1YWE1NCBsZWdhY3ktdHJ1bmsKKzIwMTA1IDIxNWRjNzI1ZGI4NDA0OWVkNjhmNTVhNzViOGQ3ZWY1MWI2YjVlZDYgbGVnYWN5LXRydW5rCisyMDEwNiA0ZDZlZTdmMmJlZTY2MDlhMGMzMDY3NmNkYjEyYTg2NzU0MWEyNGJjIGxlZ2FjeS10cnVuaworMjAxMDcgZjFhNDllZWM3YzJiZjFkYjc1ODVkMmVjMjczMTA5NjkxZjBkMTUyMyBsZWdhY3ktdHJ1bmsKKzIwMTA4IGY2ZTFmYTJkYjQ4Y2JiN2E0ZjcyZDI1YmU3ZjkwZjAzZDA0ZmE2MGYgbGVnYWN5LXRydW5rCisyMDEwOSBhMWI5OWQwODhjZWE4Mjk0ZDViOTIxMzI3ZDJiNDM0YTAzMTgzMzg1IGxlZ2FjeS10cnVuaworMjAxMDkgYjU5YTUzNmFlMWVmMzc3NGZkODVjMTdmNjIzZTg5MjZiN2I2YzA5NSBsZWdhY3ktdHJ1bmsKKzIwMTExIGIzZGNlMDY4NjhkNmQzNWY1OTAzNDUyZTZlOTBkN2YwYWM0MTdjMzggbGVnYWN5LXRydW5rCisyMDExMiAzZjkxMmZiOGMxODA4MTg0ZWJhNjMyODY3YjIwYWIxZGJiY2JhMzU4IGxlZ2FjeS10cnVuaworMjAxMTMgYjYwMDk2ZDUwMDFhNmUwZDgzNmEwNjYwZmY5NWM3OWNkMTFlMDE5MSBsZWdhY3ktdHJ1bmsKKzIwMTE0IGUzY2MyMGU5ZWEzNmVjZGQ3ODdiZmI3YmZkNmRmMDIxMWEzZWQ3NDggbGVnYWN5LXRydW5rCisyMDExNSBlZWMzOTFhNTVmODQ0MDE5ZWI0ZjNmOWM2NGMxNmUzM2Q4MjMxYzY0IGxlZ2FjeS10cnVuaworMjAxMTYgYjI5MTgzM2EwZWZiN2UxZDE0NjZkM2U0MTcyZWIwMTM0ZTNhYzFiOSBsZWdhY3ktdHJ1bmsKKzIwMTE3IGY5Mzk1Zjc2MjdjNGI3YmYyNGFmNGI2OTkzOTZkNDVmZTBkYzVkNmMgbGVnYWN5LXRydW5rCisyMDExOCBhYjcwNzIwOTQwOWJiOTU4NTc0YWQzNDYxMDY1YTQxNWE4MTBkMjg3IGxlZ2FjeS10cnVuaworMjAxMTkgMDJhNGIwY2ZjNTdlMTM1NGIwZWY3ZTBhNjZlM2M5NTMyODA5NGFjMiBsZWdhY3ktdHJ1bmsKKzIwMTIwIDNlYjhkNzI1OTk2OTI0YzJhNzU3ZmMwYWM5NjE5NmQ0MGZkNjcxOGUgbGVnYWN5LXRydW5rCisyMDEyMSAzMmZiNjY0M2FkZjFmMDRjYjg3OGViNmZhYjU1NTVjZTZiYzcxNWY4IGxlZ2FjeS10cnVuaworMjAxMjIgOTJiM2UwODMxOTcwMmE0YzczM2I0YmY0MzJjYWUwYzBjOTkyNjZiMiBsZWdhY3ktdHJ1bmsKKzIwMTIzIDQ1Y2RhMWIzOTM1NWJjNzY2MzllM2Y1YWRkOTcxN2Y3MjBjNTIyZGUgbGVnYWN5LXRydW5rCisyMDEyNCBiZjRjYzk5ZDcxMWQwYWM3NGYwMDE0NTlhNWNjMWI1ZWUzZDgzYzE0IGxlZ2FjeS10cnVuaworMjAxMjUgNGUxOWZiOGNmMWZiZDM5ODcwZWNiYWQ2YjZkNzg4MjA3OGU3YmUyNyBsZWdhY3ktdHJ1bmsKKzIwMTI2IGQyYjAxZDRlMTdlOWRjZmQyYjI3NmE5OGNhNzNkNDlkZGQwZjEwZTMgbGVnYWN5LXRydW5rCisyMDEyNyA3MWFmM2I2MGFhNjI5MTIzYTU2NDMyOTRjOWRmZWQ1Yjg2MjFmZWQ1IGxlZ2FjeS10cnVuaworMjAxMjggNWY3MTE4NWVmMmI1YWRkZWRlN2FjMjFiYmRlN2NmMmY4NzMzNWZjNiBsZWdhY3ktdHJ1bmsKKzIwMTI5IDE0MTIzMDk1NjMyNTZlMWU0MzAxNjNmYzdmZmVlYzc2Njg1ZTBlNGYgbGVnYWN5LXRydW5rCisyMDEzMCAzOTBhODMxNWQ2MzQyYjRjMmY3MGY4YTIxYmVhMjQ0ZWM4ZGJlYzc5IGxlZ2FjeS10cnVuaworMjAxMzIgN2MwNDcyOTMyZmJmOTYwYmQ1OWJiMjhkMmM5MmExNzYyMzJlNWVmMyBsZWdhY3ktdHJ1bmsKKzIwMTMzIDIyZDg1MDE3YmVjZTg5ODk5YjcyMTA2MmYzMGIyOWNkZTkyMDE3MjkgbGVnYWN5LXRydW5rCisyMDEzNCA1MzZlOGRkMzU5NTMyNDRkMzAyNmZkZjMxOTZiNmE4NGUyN2M2M2VhIGxlZ2FjeS10cnVuaworMjAxMzUgZWU0ODAzODI2Nzg0Nzk2NjkzNTc4OTdiMDQwNDNmMTc2MTk5MTUyMSBsZWdhY3ktdHJ1bmsKKzIwMTM2IDFiMTJlNjM0MDAzODk0Y2MxOGM4NDEyMTU4ZmQ5ZTdlMWY4ZTlmOGYgbGVnYWN5LXRydW5rCisyMDEzNyBhMzQwYmE0YWFjMjcwZDg0YWY2YjhkMWUwMjJhN2Y3ZDY3MjFmYTA5IGxlZ2FjeS10cnVuaworMjAxMzggMjVlOTNhMDFmODZkOWVmMDVkZTQ4MmZmYTEyYzY3ODAzYjQ5NjBlMCBsZWdhY3ktdHJ1bmsKKzIwMTM5IDAzNzdmOTI3Y2FmYTMzODQ2Mzg2MzQwYjJmZTdkNDQ5YWYwN2ZiZDcgbGVnYWN5LXRydW5rCisyMDE0MCA3NTEwM2JlZjBjMjQ1NWQzMzg2Y2FmMDQ0N2RmYmE0MjNmMzUyNzQwIGxlZ2FjeS10cnVuaworMjAxNDEgNTk0NzJiY2JmYjhlOGE1YWJkNThiMTcyN2QwM2I1NTdhNzFjNWI4NiBsZWdhY3ktdHJ1bmsKKzIwMTQyIDAyY2VjMDBmMjJiYjUzY2Y2MDhkMmUzMDZmMGI4MTIyZjhmZWQxMGMgbGVnYWN5LXRydW5rCisyMDE0MyA2ZDMwNTUyY2I0Zjk5MDg3YTFmMzkwYWZkZWIxMjQzZTkyOTZjYzE1IGxlZ2FjeS10cnVuaworMjAxNDQgNGFhN2FmYmYyOWQ4MjE1N2UyNDljODMwZjFiOTc2ZDgxMzQ0YjJhZSByZWxlYXNlMjAtbWFpbnQKKzIwMTQ1IGZkYzUyMmRjOWRmNTU2Y2NhYmJjYTdmZDk2NzQ4NmRlMWI0MTQzYWQgbGVnYWN5LXRydW5rCisyMDE0NiBiNTUzZmJhYzE0NmRkYmVhZDA2OWI0NjkxOWExMmIyMjgzNGVjYmIzIGxlZ2FjeS10cnVuaworMjAxNDcgODdkNTA5ZDA4NWEwZmMzODg1MmQ3MTk4NTY0ZWZlZjM0ZDY4MTgwMCBsZWdhY3ktdHJ1bmsKKzIwMTQ4IDg3MGRhMjRkNGJhZjI0ZTdhZjA3OGYxNjA1MTI5MDRlYzU1ZTg0MmYgcmVsZWFzZTIwLW1haW50CisyMDE0OSAyMmQzNDk3NDgzODRmODY2NmE4MGE4NmU4NjliNTMzNmIzOWE5M2MwIHJlbGVhc2UyMC1tYWludAorMjAxNTAgYzRhNWJkMDg4NTFiY2ZhYjVmN2FkOGE2MjA2OTY3ZDgxNWJiYjYyMiByZWxlYXNlMjAtbWFpbnQKKzIwMTUxIGVlMjY0NjY5YjY3ODBlOTdlZGU1MDRmNDAyZWJjM2UzMzZmZDM2NTggcmVsZWFzZTIwLW1haW50CisyMDE1MiBhMDAyOTE4ZmMwYzI3NjQ0YzQ3OTkwYzEzNzFiOTg2MzMyY2RhN2QyIHJlbGVhc2UyMC1tYWludAorMjAxNTMgMTJmZWU3ZmIwMTliM2I4NDM1NmIzMjJmY2M3NmJiYzJlYzllN2VmNiByZWxlYXNlMjAtbWFpbnQKKzIwMTU0IGJlYjI5ODJkODVhYTgyMmM0NTRmZWZlNGM5NzA0MmZmYjE1MTBjOWMgcmVsZWFzZTIwLW1haW50CisyMDE1NSAxMWEyMWQ1OTI4MzQ4N2E1ZTNjYTYxNzE4NjllYTRmOGMxNzQzMjA0IHJlbGVhc2UyMC1tYWludAorMjAxNTYgYTYyNmFjYzMwZmMyMzk5YWJkOWFiYjk5Njg5ZWFkNjY0NjllYjkxZiByZWxlYXNlMjAtbWFpbnQKKzIwMTU3IGY0Y2E5M2U4YTJkNDc5NjRjODdkNzhhNmEwZDY4ZTNlNjc0NDIyMTEgcmVsZWFzZTIwLW1haW50CisyMDE1OCA2MzkzZjU1ZGJkN2JlOWRmN2UyNzhjYmU3YjAzYzE5MmNhNWYwNzExIHJlbGVhc2UyMC1tYWludAorMjAxNTkgNWVkNGM3ZThiNGY5OGVjZmRmNDYzNWFjNjc1MGJhMDkzZmUzMmY3ZiByZWxlYXNlMjAtbWFpbnQKKzIwMTYwIDlkZGJiNzZjMzExNDU0MzViZTJmYWZjYjkxNmVhYjM1ZjE1YzRhODUgcmVsZWFzZTIwLW1haW50CisyMDE2MSA0MmIxYTY5OWE1ZGRjMWNkNTAwYjU5NGRlYWVhNjk2ZWUyNDZiOTNmIHJlbGVhc2UyMC1tYWludAorMjAxNjIgZDQ2N2QxODRiNDI5MzA0ZTgzYzFjMDI4YzEwM2ZkYzBmYjEzMTExNiByZWxlYXNlMjAtbWFpbnQKKzIwMTYzIDA5M2U5YTI0ZWU3NjdhMWQ0Y2NkZWYxOTZkMTViZmI5ODU5MjcwOWUgbGVnYWN5LXRydW5rCisyMDE2NCBlMmU5MTQ2ZjRhYjRkOWMyOWJmMzRiMGIxMTA0NDVjOTdlODViOTFiIGxlZ2FjeS10cnVuaworMjAxNjUgMjRkMjJlZWU5NGNmMzcxNTczZDEyMzJiNmNkMDEzZTMyNjRhOTI3MiBsZWdhY3ktdHJ1bmsKKzIwMTY2IDcyZmQyNjU3YmUzNDI4N2Y1OTZmMzRiYjZiN2IxZDU2YjFiMGYzMDIgbGVnYWN5LXRydW5rCisyMDE2NyA1MzZjYzEyNmZiOWY4YTA3MTEyYjA1MGJkMWI3NDJiYWZmMDhlODk3IHJlbGVhc2UyMC1tYWludAorMjAxNjggNmRjNDNlMGM2YmJmNTAzNTM0MzMwMDYyZTczYjcyOWVlMGJlMTkwYyByZWxlYXNlMjAtbWFpbnQKKzIwMTY5IGU1MTBjNGNjNTczNzYzZDNkY2QxNGI2MTJmYzk1YWFlMGUzMjJjMzkgcmVsZWFzZTIwLW1haW50CisyMDE3MCBhNDY5NjRkNzExMWRkZWY0YTJhMjkyMWZkNzRkMGMzYzRkNDY2N2NkIHJlbGVhc2UyMC1tYWludAorMjAxNzEgZDdlMGQyMGNkZGFkYjM2MzJlNWUwMDA2ZjUyMGI5MWEzOGMwZjU5NCByZWxlYXNlMjAtbWFpbnQKKzIwMTcyIGQ5ZmYxMzEwMGUyZjIxMjJjYTIzYTk5NDVmNjU1OTFhNWE2ZTNlNGMgcmVsZWFzZTIwLW1haW50CisyMDE3MyA1Y2YzNTVmNjdhYTM3YjFmNmZjZGQ1MGI4ZjliYWUzYjRjYWE2OTViIHJlbGVhc2UyMC1tYWludAorMjAxNzQgNTczYTkxMzg4NzA1YjUwMGZjYTViNGQ3M2FjMWYzZGYwMDFhYzAzOCByZWxlYXNlMjAtbWFpbnQKKzIwMTc1IGNjZWYwMmRhODhhNjdmOTkxODM3NGU4YTdlYTBjMTg0M2Y0YjE3NTkgcmVsZWFzZTIwLW1haW50CisyMDE3NiAzMTIwM2Q5OTM1ODI3M2NmNzMzYjlmZTFkYzIzZmM2Zjc4N2JlMTE1IHJlbGVhc2UyMC1tYWludAorMjAxNzcgOTk1NmExYzVkNDQwNTRkNjRmNjFmODg1YWViMGY4MWU0ZWNiYzEwMSByZWxlYXNlMjAtbWFpbnQKKzIwMTc4IDE5MmYyNWU0MWZiYmVlOTg4YmYxYjVkOTk1Mzg2ZDRkMWRmMTgyYTkgcmVsZWFzZTIwLW1haW50CisyMDE3OSAyYjU3NjhjMTM1OTkyMDI5M2U1NmUwZTg2MzVhZDJhMzc0NjQzMDQxIHJlbGVhc2UyMC1tYWludAorMjAxODAgOTkyNDYwYzY2OGMxNWJmOTI2NDg0Y2VlMzAzNmM5MDdlMzg4NGQ5NSByZWxlYXNlMjAtbWFpbnQKKzIwMTgxIDhkZWNhNzllYTZhYmI1NWUzM2Y4YjM4MDU3Yzk1NmI4ZmEwZDg3OGMgcmVsZWFzZTIwLW1haW50CisyMDE4MiAwNDM3NzViM2I4YjI5NjYzNDc0OWJmOTIxZjlhYzgwZjhjN2U2NjZiIHJlbGVhc2UyMC1tYWludAorMjAxODMgZjM0YzkwOTg5MTM4MzQ1ZGNmNjczYWQyMzIzNTViNDk2ODVmNjJlYiByZWxlYXNlMjAtbWFpbnQKKzIwMTg0IGQxYzEzNTBhM2E1ZjQyYjU4NWM2OGM0OThhYTI0ZWM4ZDQ3OWRhZDcgcmVsZWFzZTIwLW1haW50CisyMDE4NSA1YTRlMDgzOWNjZTc2Y2YwNmRlMjRmMTM0ZTY2YmVmNDdlYWFlMzExIHJlbGVhc2UyMC1tYWludAorMjAxODYgNWJkNjg2ZTBlY2Q0MWY2MDAxOTg3Mjk0YmZhODdiZmNmMDNlNjZkYyByZWxlYXNlMjAtbWFpbnQKKzIwMTg3IGQxNmVkYzcwNGRhMWY1OGNjNTRkODI4ZjJhYjM4ZGEyZDNmOWRjMTAgcmVsZWFzZTIwLW1haW50CisyMDE4OCBkNTNhOTY3OWE5M2JiOGJlODFhZDk1ZDNlMDNiZWYzZDI1ZDE2OGY1IHJlbGVhc2UyMC1tYWludAorMjAxODkgOTc3NmNmNWRiZmUzOGQwYzc4ODFiNmRlZTJkMWI1NWQ2YmIwYjNmMCByZWxlYXNlMjAtbWFpbnQKKzIwMTkwIDc2Yjg5ZmEzZWYzNDA2MGEzY2MxZDQ2ZTRmOWEzZWE1ZjQ0MjZkZTggcmVsZWFzZTIwLW1haW50CisyMDE5MSBjMDExNGVkZmQzMTM3NmE4ODZjYmQ3Y2FhOGUxMzUzMThkZjA1YjRlIHJlbGVhc2UyMC1tYWludAorMjAxOTIgZWYxMjIzZDg0NDJkYzU2ODFkOWVhNDhlZmExOTU0MzY3MjAyYmM1NSByZWxlYXNlMjAtbWFpbnQKKzIwMTkzIDZiMGZmNTI5ZDYxNTAyNDNiOTBlMDllODZlMWJiNjc0NGRkYTQyNjYgcmVsZWFzZTIwLW1haW50CisyMDE5NCA3ZDA0MjQ1ZWQ3NWYzOWJmMmU0ZmQzNGJjZGE2NzFmYTc1ZTg4NzZmIHJlbGVhc2UyMC1tYWludAorMjAxOTUgZDY1NDdmZjk0MTZiYWI4MTlhYjg5YmRhOWViMDhlMDI3ZmNhMzUzZCBsZWdhY3ktdHJ1bmsKKzIwMTk2IDAzYmEwNjI0NzQ4NjYzMGFhZmE3ZTBmNGVkY2EyMzA4ZTFlZjVlM2MgbGVnYWN5LXRydW5rCisyMDE5NyA4MzZjZGY4ZDEyNDVkNWY5MmIzZDVkMzZhODUzNjlkOTQ5MTJkNGNiIGxlZ2FjeS10cnVuaworMjAxOTggZWEzMjZlYjQ3NzVjYzFjNDBlZTFlMjEyZDVkZDc1OTY4ZTAxNTFlZCBsZWdhY3ktdHJ1bmsKKzIwMTk5IDQ2YTZjMjhkMzVlNWRiOGQxNGE2MTcxYzM0NzY5MmI0ZjQ5M2Q1NjkgbGVnYWN5LXRydW5rCisyMDIwMCAzMTFlNmFlZWY4NThhZDUwNTIzZTA2ZWE2NTEwNTMzMTk1ODkyNGUzIGxlZ2FjeS10cnVuaworMjAyMDEgMjg4ZDgwNWFmMTQyMThmM2Y0OTI5OTViZWJiMjZkYWUwZDY0N2Y0OSBsZWdhY3ktdHJ1bmsKKzIwMjAyIDUwNmEwODBkMzllY2ZjMjI5MjM5ODc0YWZlMGNiZTYxYmIyYTFiYzUgbGVnYWN5LXRydW5rCisyMDIwMyAzN2Q5ZWQ1NTQxNmZmMTlhZDY0ZTRmMjk4ZTMzMzZlMDc0MzY5MzU3IGxlZ2FjeS10cnVuaworMjAyMDQgMGNkZmNjZGI2ODcxMGExMGM1NjY4ZGRkZjMyYWQzNDllOTQ2NWE0MiBsZWdhY3ktdHJ1bmsKKzIwMjA1IGIwYTdmYWY5OGE4ZWRiM2YzYWUwM2FjNDBmM2ZjMzQ3ZWVjOTYxZDggbGVnYWN5LXRydW5rCisyMDIwNiA3NjM1Zjg4MzhjNjg5MmUyOWMxNjBiODM5OGNkMmE0ZDQ5ZTZmZTYxIGxlZ2FjeS10cnVuaworMjAyMDcgYjczNTQ3YmY4YmMyNDg3MjkxYzUwZjVkYjNiZGVmNWM5Nzk3ZjY1YyBsZWdhY3ktdHJ1bmsKKzIwMjA4IDExZWJhNWJiZmExNGFiNTFhMzIyYzNjNDcyMmVkMjE1MWU0OWE5YTUgbGVnYWN5LXRydW5rCisyMDIwOSA2YmU4YmI0ODA4ZTE0ZWY5ZGRmOTg4NmI4ZWM1Njg1OWJiNzJmMTdkIGxlZ2FjeS10cnVuaworMjAyMTAgNTdhNWY2YjAzMzdkMWUxNzM4ODRlYjg1NGE2ZjhkZjIxNmIyOTVhZCBsZWdhY3ktdHJ1bmsKKzIwMjExIDMxMDA2NmI5OTJmMmY4YThlMWI3ODcwZGYyYWU5M2ZiOGI4YTc0YTcgbGVnYWN5LXRydW5rCisyMDIxMiBiMjVhMjQxMzAyMGUyMzU4Y2VkNzk5ZDcxZDJkZDkwOTg5NTFmMjYzIGxlZ2FjeS10cnVuaworMjAyMTMgOTkwNmRiMmExZmZhNzg2MTE0N2M3NzkzMjRiYzQ3YzY5OWE5NThiZCBsZWdhY3ktdHJ1bmsKKzIwMjE0IDkyYjY1ZjEyMWEzZTk3NjcyMDFlYTcxMDZkNjM2YTA1YjkxNWQ5YWEgbGVnYWN5LXRydW5rCisyMDIxNSA5YjhlYTYzODdkYzYwOWZkMGE5M2Y0ZjQ2OWJjNjg4MDgxM2U0N2MwIGxlZ2FjeS10cnVuaworMjAyMTYgYmQxMTBlYWRjMTlhZDQwOTk1MWJmM2FmMzAyYzE0ZDQ5YTQ1ZTc3MCBsZWdhY3ktdHJ1bmsKKzIwMjE3IGU3ZjViNzBiMDYwNmFiYjBkOGI1ZDk4OTNiNWM4OGI1NzYwMjI4OTAgbGVnYWN5LXRydW5rCisyMDIxOCA5MTFlMjExYjg5MzBiOTBlMjRmYmUyMmQxOWRhNWIzYTIwMDczMDhmIGxlZ2FjeS10cnVuaworMjAyMTkgYTNkZWIyMDFlY2RhMTBmODE1ZGFmNGFkOTI2YTE0ODM0YTg3ZDQ5NyBsZWdhY3ktdHJ1bmsKKzIwMjIwIGJiOWUyMTQwMzVlMTI1YjkxMzQ4NWMyNzUzNmUzNjBjNGY1NjM0NzYgbGVnYWN5LXRydW5rCisyMDIyMSA3NjA3NTQ0MThlZTAyNzBhYzRlZGViODVhOWEzOWE2Y2MxODdmNDg0IGxlZ2FjeS10cnVuaworMjAyMjIgMDgwODI4YmY4ZGJkZThmZTE4YjE0NTNiNmE5NmNmNzlhOTkyOTY1YSBsZWdhY3ktdHJ1bmsKKzIwMjIzIDRiMzQ2Y2MzOTg5YmFhOTkzZWE1NzU4ZGM5NGRiMmY0OWI3MmU4ZTIgbGVnYWN5LXRydW5rCisyMDIyNCAxMmY3ZjE2N2FjNTMzZDQ2YTRmZWU0MmNjMWI2MWM1MDZlOTk0NWFkIGxlZ2FjeS10cnVuaworMjAyMjUgZDMyOGNmZWIwYzc1YmMwNDY0ZGVkMDBhZDVjNzhmN2ZhM2QwMDY2MiBsZWdhY3ktdHJ1bmsKKzIwMjI2IDE4MWQwMTMyMGVmNDNlM2Y1NjRlNzZkNDBlOGZhMTBmZDA2MTczOWYgbGVnYWN5LXRydW5rCisyMDIyNyBiM2ZkNDRmZmFiMWU5MTYxMDJlMmY2YWIxM2ZlYjFlOGE0NDQwZTQ0IGxlZ2FjeS10cnVuaworMjAyMjggOTJiNjBkZWU3ZjA4MzVkZjI4OWNjZTU2ODIxNjYxNWI3YjgwNWE1NiBsZWdhY3ktdHJ1bmsKKzIwMjI5IGNjYWU0MTJiYmMzZTIyY2ZhNjI0OWE3MDJhOTdjOGQyN2IyMTA2NDIgbGVnYWN5LXRydW5rCisyMDIzMCAyMTQ2YTczY2UzNWMwYmRkNDQ5OWYzZWU5YjRiMTdiZTg1NGZmMTZlIGxlZ2FjeS10cnVuaworMjAyMzEgOTZlYTBlY2NkYjMxNzM3ODg4MzU4ODE2YjY3NzE2NmZiYTBmMjhjNSBsZWdhY3ktdHJ1bmsKKzIwMjMyIGMzMjc1MmEyODY1MjIxM2UyYzM3ZTY3ODM3YzIxZGIwZDExNTA1MjQgbGVnYWN5LXRydW5rCisyMDIzMyBhNTcxMDU3OGMyZTAyMjE2NjI5MzM0YzFhMWI3Y2UxZTViYWJmODIzIGxlZ2FjeS10cnVuaworMjAyMzQgYWI0ZTRjYjA5NGMxZjY0MzBkNDM4YzkzZjdhZmM3M2FhOWYyODc3MyBsZWdhY3ktdHJ1bmsKKzIwMjM1IDgzZWU2M2JjZjAzNjU5ODcyN2ZiNjI3MDNiYTEyZTBmMjA1M2Y4YzEgbGVnYWN5LXRydW5rCisyMDIzNiA5ODc2ZDZiYWY4NDM4OTYzODFjZmM4NjJlY2RlMDlmYTQxZDUzN2VkIGxlZ2FjeS10cnVuaworMjAyMzcgZGU5ODU4NTMwYTU1M2RjODRlYWFkZGU4MjE2OTZiZDExMGFiOTczMCBsZWdhY3ktdHJ1bmsKKzIwMjM4IGYxZDJlODhmYTExZGUzMjYwNTgzNTkwZTIxOTVlMzFmOGFmZmQ3NzQgbGVnYWN5LXRydW5rCisyMDIzOSA1YWZmZmNhNjZlMmZhZTI2ZjIwNjAyN2ZhYmIwZmMwOWU3MTlhZDYyIGxlZ2FjeS10cnVuaworMjAyNDAgZjhmZGJlYjczNjY3MDhiNzMzOWNmMWQ3ZDhjODQ2NGUyNWE2MGRlYyBsZWdhY3ktdHJ1bmsKKzIwMjQxIDg3Njg2MWYxMzU0MzZjZTdjNzljZjk2ZWMwNWIyOTcwMTY1YWEzZjAgbGVnYWN5LXRydW5rCisyMDI0MiBhOWVmNDRiYmQ5NjgyOTA1OTdiNTY4NjY2OTRmMjMwN2U4Mjc2ODg2IGxlZ2FjeS10cnVuaworMjAyNDMgZTcyMmQ0ODgzZTE5NzE1ZWYyODhhNTJlMTY1M2RmMGNjMDNlNDc3YSBsZWdhY3ktdHJ1bmsKKzIwMjQ0IDMzMDhhZmNhYTEzMTU1ZDczZDYzYjNlYmViM2RkMTgzNzRjYTdmZDMgbGVnYWN5LXRydW5rCisyMDI0NSAyZDMwYTA5OTcwNWYzOWZjZGNlYWFlZDg1ZDYzNDk5NjdlMjdiMWViIGxlZ2FjeS10cnVuaworMjAyNDYgZWQzZTY2ZjMwODM3YzIyMTE2NTE2ZmNjZmQ3ZTNiNWY2MzY5M2E2ZiBsZWdhY3ktdHJ1bmsKKzIwMjQ3IGFlZDZiMTQzNmRiNDc4NzBmNWM4MDA1OTQyMzBhNDQzOTkwYjNkYTAgbGVnYWN5LXRydW5rCisyMDI0OCAxOTQzMzE4ZmFlMzE3N2E1OGVjYmVlYzBmM2M5NGRjODE2NDk5NTI0IGxlZ2FjeS10cnVuaworMjAyNDkgNDQ2OGE4ZGE2N2NhMDEwNDI0ZWFlYTc0YTc4MjhjZGJmMGY2ZjVmOCBsZWdhY3ktdHJ1bmsKKzIwMjUwIDI4Y2YwYTc5NDNjZmQ3YjIzNTMxYmMyZGQ2OGIxNDMwNzMyYTRiZGMgbGVnYWN5LXRydW5rCisyMDI1MSBjYzhhMjFiYTY0NDk5OGNjZWFkNDI5NjkyNDUzZTdiZmQ4ZDI0YTNmIGxlZ2FjeS10cnVuaworMjAyNTIgM2FhZWRiYWM5NWIzMTJiZTVmMTM5MTg4NDk5NDk1NGI2ZmM2MTg2ZSBsZWdhY3ktdHJ1bmsKKzIwMjUzIGExODQwYjliMTRmMTQ1ZjBkMWYxMGQ5NzJjYTZiN2QzZmNlODA5ZjIgbGVnYWN5LXRydW5rCisyMDI1NCA5NjIxZDBmYmMyZTUyZjBkN2Y0OTgxYjczZjk3MGViZjBlN2YzMzY2IGxlZ2FjeS10cnVuaworMjAyNTUgY2E1NjVlM2QzY2M1YzA2OTdmY2EzZDNiZTUxODM5ZGYxNTc2YWNjNyBsZWdhY3ktdHJ1bmsKKzIwMjU2IDZiOGQ5MWVhOWRlMzQzNDBmZGRhNmQ0MmYyMTJiZGRlZTFhZDk4NDUgbGVnYWN5LXRydW5rCisyMDI1NyBkMTA5ZWM2NjdlYzI1ZDhmZWQxMDYyYTM0NzZmMGZlNjhmMTQyMWE4IGxlZ2FjeS10cnVuaworMjAyNTggOGEzYmExMGYxMGY2YTI1NDkxNmFkNDgwZWFiY2ExMjM4NWI3YzFiMCBsZWdhY3ktdHJ1bmsKKzIwMjU5IDExZThiYjRkODQ1ZDJjMGJlNTNmZTAxYWJiZjU2NjM4MTE3ZGMzYTQgbGVnYWN5LXRydW5rCisyMDI2MCA1MDc5ZDZlM2I2MTUwODAwNzg2NjVmY2I0ZDYyZmQyNDdiZDBiMmIyIGxlZ2FjeS10cnVuaworMjAyNjEgZTJiM2U2ZDg1MzQzMGEyMTBmY2JhYWZlZmZhZTNhZDExNTAzMzFlYiBsZWdhY3ktdHJ1bmsKKzIwMjYyIGJiNzVkOTNmNmEzMWM5MzM0ZGVhNmMzNWFlZDgwYmRjNDdhYWRhNzcgbGVnYWN5LXRydW5rCisyMDI2MyBmMzk4ZTU4NTZmYTc0NjUzMDU1YjhiYmMzOGE2MzkzMjkwMDFiMWY1IGxlZ2FjeS10cnVuaworMjAyNjQgNjVmMzYzMjM2ZWNmN2ZhNmE4MzZhYTlmMzVjZGMxZTIzNzQyMTkwMSBsZWdhY3ktdHJ1bmsKKzIwMjY1IGU4NDNlZWU3YTMzZTg2MjViMDYyNmE0OTdmZmE2NDIyMzI5ZjFiNWUgbGVnYWN5LXRydW5rCisyMDI2NiBkMzgyNzkyMjkwOWNhMjU3NTRkYjljNzY1MWUxZDUxNTQ0MTUyY2UyIGxlZ2FjeS10cnVuaworMjAyNjcgZTU0ZTExYzMwZTRiMTU0OTdjM2Y3MmNmZTQ2OWUxODRkMDIwM2EwMiBsZWdhY3ktdHJ1bmsKKzIwMjY4IGNiNDBlNzcwYzkwM2RkOGUwYjk5ODk5MWYyYTEzNGI1ZjkyNDIxYWUgbGVnYWN5LXRydW5rCisyMDI2OSAwYzg3YWM2NzRjZTE4MjA2NzRhOTgzZDRjZjVkMjMxYWU3YTM0NDhkIGxlZ2FjeS10cnVuaworMjAyNzAgYTgwYTg0N2Y1ZjRlYmE1OGJlMTAwOTUwNDQ2ZmJiYzU0ZmQxNjNmNiBsZWdhY3ktdHJ1bmsKKzIwMjcxIDVmNjg3NTRlYjNiNmJjODAwN2MzM2U5NzBmZDBlY2M5MWI4ZDgxZGYgbGVnYWN5LXRydW5rCisyMDI3MiAzMGU1MjcwZGIxMjgzYmY4Y2RhMGFhODZkMTYyNmRmZDg0YzM5MjNkIGxlZ2FjeS10cnVuaworMjAyNzMgMGY2ZDhmZTRhM2E5MWNmZDdjZGM3MDkyN2Y1YTQyYWZlY2RjY2M0OSBsZWdhY3ktdHJ1bmsKKzIwMjc0IDQ2MjJhZjRkYTllMjgyZmIxZGNlNzhhNWFlMzExOWNhMTlkNDRhMWIgbGVnYWN5LXRydW5rCisyMDI3NSA4YTJkZDk3ODczZjI1NzYyZmY0YjdjYjMzOTcwZmE2MjVjYjkzNDg5IGxlZ2FjeS10cnVuaworMjAyNzYgZDM2ODU1MmMyYjcyNjEwMWY5ZmZiODY5YWM2NTY1NTc5YWQ5NjgxZiBsZWdhY3ktdHJ1bmsKKzIwMjc3IDdjNGJhYzJmN2IzYWI3MThlMjM5YjcwMzQ1MWNlODUxNjNjOWQ1OWUgbGVnYWN5LXRydW5rCisyMDI3OCA5YjI5N2FmMThlMmYzMTUwODQ0OWNlNDY2MjNiN2U0ODE4N2M4ZmQ2IGxlZ2FjeS10cnVuaworMjAyNzkgYjYxMmI1MTlkNDFhNTQ2OTg3NmU1MzA5YTllNmM3MTI2ZjRlYzUyMSBsZWdhY3ktdHJ1bmsKKzIwMjgwIGJiY2M5ODM3MzEyZThlNTlmNmJjNTgwOWQ1M2E4MWY3ZTNjY2EzNDggbGVnYWN5LXRydW5rCisyMDI4MSAwZWMwNmI0NzU1ZGI3MjRkNTI2ZWRhMzkyNDNlM2YzNGNjNzRmODEyIGxlZ2FjeS10cnVuaworMjAyODIgZTRhYmU3NGJjOTczMmQ3MjhiMzFhNWY0YTUzOTUxMjkwM2MyZTZlNyBsZWdhY3ktdHJ1bmsKKzIwMjgzIDQ3MWNlMGZhYTc3NTBmNDIwOGU2OTUyMTZlYzc0NGQ3NDFkZmJmY2YgbGVnYWN5LXRydW5rCisyMDI4NCBiMmJjNTYzMzIwNDVhZTAyNTI1YWI5MzFmODgyYzQwN2M1MWU1ZDlhIGxlZ2FjeS10cnVuaworMjAyODUgMTEyYmQ0N2UwNzhkMzE5MzBjNmM1YzgxNzJhNThhMGVjYTY2NzQ3MCBsZWdhY3ktdHJ1bmsKKzIwMjg2IDY4NzM1NDlkNDg0Yzc1ODVkNjBiZDJiZjM0NzRlODhhMmEzMmIwMmMgbGVnYWN5LXRydW5rCisyMDI4NyA0YjA2ZTRkYjAwNzVkYzNiMDU1YmZlZmRjMThlNmNlYTNlNGMzYjQ4IGxlZ2FjeS10cnVuaworMjAyODggNzE3YjBjOGRlNzFlOWExMjY3ZWU2MmNjOGQ4ZmI2ZDdjMmZmZmU0OSBsZWdhY3ktdHJ1bmsKKzIwMjg5IDg2M2U4MDczYzdhYWYzMWYzMTdiZTg3MmZkMWQ3NjU3ZGMzYzA5YWUgbGVnYWN5LXRydW5rCisyMDI5MCBiZWI5ZDJiMDI4NDY1N2JlMjNmYTlmOWIzNDQ5OGUyZGFhODhjODlmIGxlZ2FjeS10cnVuaworMjAyOTEgY2Y4YTU5NWNlYzMzNzQ4YjUyMzYyNDA0ZjczMzUzYTVhNmY4OWI1OCBsZWdhY3ktdHJ1bmsKKzIwMjkyIDAwNGM5YjAzMTkyNDFjNWMwNTQ2YWMxMGNiNTliNTRiOTA0N2I3ZTQgbGVnYWN5LXRydW5rCisyMDI5MyA3MDc2M2M0NzUyZTJmYTNmN2VjNmJhMzkwMTI1MDQ2YmYwMDM5YTg5IGxlZ2FjeS10cnVuaworMjAyOTQgMTM4NTdmYjMzMDE3NzBjZDJjYTQyNzZiMWEwYmYyNTlkNDEwYWZiOSBsZWdhY3ktdHJ1bmsKKzIwMjk1IDg1M2Q2YTk3YjdkOWI0ZDM4NmM3MzVmNmNmMGEyNzBjNmU4NjUzNWIgbGVnYWN5LXRydW5rCisyMDI5NiAzYjkwNWYyOGYyMjU2OThjOGI0ZDNmNTZjNTEzMDQ3ZDk4ZWFmMzkxIGxlZ2FjeS10cnVuaworMjAyOTcgMzRlYzVlMmZhMzU2MWVjYmYwM2FlYWVjYTg1OTlhZmM5YzA2MjBhNCBsZWdhY3ktdHJ1bmsKKzIwMjk4IDAxNzkxYTA5NzQ1NmI2ZmU3NTEyZTYwOGQ3MTExMDQzYTIxMmIwZTkgcmVsZWFzZTIwLW1haW50CisyMDI5OSBhZmJiNjViNjBmYTIwMzgxOTMyNDFiNTA1NjYyNDcwZTkzMjZlYTkzIHJlbGVhc2UyMC1tYWludAorMjAzMDAgYzllMDdiYzMwM2EyM2VkMGM3ODNiOTkwNjFhMzE5MjcwZDY5YzIyZSBsZWdhY3ktdHJ1bmsKKzIwMzAxIDlkNzZkODU1MmMzNjEyNzc0ZDZhYWFmNDc4ZTY0Nzk4NmQwZTBmOTMgbGVnYWN5LXRydW5rCisyMDMwMiA2OTRiOGMzZjI1ZTdjNmQzNzMxZjE0MjU1OWE4NDJhOGM0ODg3ZDI0IGxlZ2FjeS10cnVuaworMjAzMDMgODRhM2Q3MGVjNmY0NGQ2NWZhZWJjNzQ5ZDhlOTIzOTgyNTU5NTVkNiBsZWdhY3ktdHJ1bmsKKzIwMzA0IGY5Njc0ODllZTNiNjRiYWQ4NmU3NDVkMTVmZDg2N2U0ZDI1YmY2ZjMgbGVnYWN5LXRydW5rCisyMDMwNSBiZDg0NGIyMGI5Yzg1NDRmYjkxOTk3NzhhZmU3OWYwODk3MmRlMTRlIGxlZ2FjeS10cnVuaworMjAzMDYgMzcwNGJlM2RiMzAyODYyNjBmNjI4YmJmYjZhYmMxOGVmYWVkZTRmYSBsZWdhY3ktdHJ1bmsKKzIwMzA3IGJhZDJkYWViNzQ0MGMzMzEyMDQyZDU2Zjg2NDBmZWZkMmQyN2NmNmEgbGVnYWN5LXRydW5rCisyMDMwOCA0YzQ5N2M1ZTcyYWRjZTFkYjhkY2I4NWEyNmM0OTIxMzBkMDJmMWQ2IGxlZ2FjeS10cnVuaworMjAzMDkgNjVhOTIyNTFkNmI4NWNhYzIzNTllMjYzZDgzNTg2NmE3YmQxMTg4OSBsZWdhY3ktdHJ1bmsKKzIwMzEwIDlkY2I0YmQ2NTE1NDhlODc2OTlhNjIwZjBiYzZmOTBiM2RhZDk2YzMgbGVnYWN5LXRydW5rCisyMDMxMSBiOGZjZjQ1ZGM2ZmRjNzQzOTIzZGI3NjY0Yzk0MDRhMmI1N2M1NTliIGxlZ2FjeS10cnVuaworMjAzMTIgOTY1ZWViNDRlNDU0NDEyMWMyMjE3NDY5MGMwMjYxM2UxMmUwYzJmYyBsZWdhY3ktdHJ1bmsKKzIwMzEzIDNmYWRjMzdjZmE5MjA5ZWQ0MDY3NmU1YTA5YzI2NDBhMzc3NmM1NmIgbGVnYWN5LXRydW5rCisyMDMxNCA2NDM5NjI0M2MxMTQxZGNmOTA4NzYwZDczYzFkNDA3MDQ1YmJiNDNkIGxlZ2FjeS10cnVuaworMjAzMTUgMzQwMmM3MTY2ZDMwODExNDRjY2E0Y2JmMjQyZWVjMDM2ODU1ODQ2NCBsZWdhY3ktdHJ1bmsKKzIwMzE2IGYzZjk2NDE3NDNhMDdlODhkZjllZmM3OTg2NTI5YWJjZjBkYzY5YjQgbGVnYWN5LXRydW5rCisyMDMxNyA2MzJjNGQ1Yjc1YjdhOTZkZWMzZmNhMzJkM2FhYWFiOWEyYWEyMTIxIGxlZ2FjeS10cnVuaworMjAzMTggN2M2MTcxNTc1MmJlMjAyNmFiYjU4YjA0NTEzODQwNzkwMTA5ZDAxZCBsZWdhY3ktdHJ1bmsKKzIwMzE5IDhlYzdmNjU2ZjgwODMxZTZkYzY2MTJhMjQzZTVlNTYxMDc3OWYwYTAgbGVnYWN5LXRydW5rCisyMDMyMCAyNTdiNTdiY2NkZjNiZTg5NGIyYmQ4ZmQ5NzY3ZWQ3OTIxNjNhNjQ3IGxlZ2FjeS10cnVuaworMjAzMjEgMzE2MGRhNGRkZDg5MWFlMGJlODA2ZmQxZmZlMmViNjdjYTMwNzc5OCBsZWdhY3ktdHJ1bmsKKzIwMzIyIGVjMDc1Y2M4MmJkYjNmNTdjMmVmNWJmNzhmY2RkNDczOGYzN2IyZDIgbGVnYWN5LXRydW5rCisyMDMyMyBjMmZiMmQ0NzZiZDM4Y2RmMjdhYjM4NWMzNDk0ODM2MjgyYmIwMDg1IGxlZ2FjeS10cnVuaworMjAzMjQgZTUwMDkwMjVlNjJmMmMxYWY5OGZjMzQ3MGYzMDE1ZmEwMmRjNmYxNCBsZWdhY3ktdHJ1bmsKKzIwMzI1IGI0YjNjZmZjN2MzNTVmZjIxNGE0YjQ0ZDU3ZjAwZjFhZGNlMGRkODYgbGVnYWN5LXRydW5rCisyMDMyNiBiZmMxMGE4MDU0NWJhYWQ4ODkzYjJiOTMxNDFiOGM0NGQ2ZDhiNzI0IGxlZ2FjeS10cnVuaworMjAzMjcgYjAwNWViOWJjODQyZDk3YTVhMzE1ZDIxZDk1YWMxMWJhMmU4MWYxMyBsZWdhY3ktdHJ1bmsKKzIwMzI4IDJjY2MwZjJjOWUxZjI4MWZhMmNmY2MxYjJmYTA2M2M3NDJkOTE1ODQgbGVnYWN5LXRydW5rCisyMDMyOSAwZjMyYWI1YWZmZjg5ZTY0NGIxNjc3MDYxNGQ4NWFhNjYyNjY1MjRmIGxlZ2FjeS10cnVuaworMjAzMzAgOThmNjkyNDViYjY5Y2QyNDdhZmQ0MzI5ODQ0NmJjZDkzYWJiNzQ2NyBsZWdhY3ktdHJ1bmsKKzIwMzMxIDAyZDY5YTg4NzAzODkxMjE0Yjc4NzI4YzUyYzM0YWFmMWE1NGVhMGMgbGVnYWN5LXRydW5rCisyMDMzMiA0MWE0MjMyOTRjYjUxMzEyODU5YTVlYzYwNjZkYzMyZmMzYjVkYTY4IGxlZ2FjeS10cnVuaworMjAzMzMgZmJjMTJkNmNkMDUxMWI5NGU2NDE0YjA1ZDU3MGUwMzliOWFmZmZlOSBsZWdhY3ktdHJ1bmsKKzIwMzM0IDFjZGZmMjgzOGExNzhlZjQ2MWQ5MjRiYjlmODc5NjQ1NGJhNzA0YjMgbGVnYWN5LXRydW5rCisyMDMzNSA3NGI5ZmIxYzk2MzM5NzkyOGEzZTVjMGVjOGRjOGY5YWU1MTMxYTJkIGxlZ2FjeS10cnVuaworMjAzMzYgMmQ1MjE0MjBkYjhmMWUyOTJiZTJkNGMxY2Q3MTE4ZGUxYWZjM2NkOSBsZWdhY3ktdHJ1bmsKKzIwMzM3IDkyMzdmNThkY2MxOTIyOGYwOTBkNWY2MzJlZDgwYTMwNWQ2YmU1MzEgbGVnYWN5LXRydW5rCisyMDMzOCAxMTE5MDJjOTkxYTkwNGYzY2EyZTE0MDI0ZmE3OGEwZjU0NDU0NDA3IGxlZ2FjeS10cnVuaworMjAzMzkgZjBmMDQ2N2EzMzM0MmRhYzg2NzY5ZWMxN2I5MTAzNzg0MThjMDZmNiBsZWdhY3ktdHJ1bmsKKzIwMzQwIDAxODRjNTBhODc1MTBhZGE4MTdlYjU5OWFlYTU5MzllYjQ0NWFiZGEgbGVnYWN5LXRydW5rCisyMDM0MSAwNDc1YzhiNzIyM2JhNThiODQ3MTlhNjk4NzFhMjFmZjc5MTk3NjdmIGxlZ2FjeS10cnVuaworMjAzNDIgNDVjMTgyNTE5NmVkNjYwM2E3ZDJkYTVkNTllMjBhYTI4OTgxODJhZCBsZWdhY3ktdHJ1bmsKKzIwMzQzIDUxYzhjZTFhMmUyNTk5NTNmMjlkY2YyNmM2YjIwMWI1ZmNlN2Y4N2YgbGVnYWN5LXRydW5rCisyMDM0NCBmNzRmNWFhZmRjN2UyNTBhNWQ1NGQzMzUyMzhmOGY5NDVlNGNhOWE3IGxlZ2FjeS10cnVuaworMjAzNDUgOTk0MWM0NDgxNmMxYzczMDY4OWJkNGY1ZmE5NDFlN2Y3ZjY4NDNjMyBsZWdhY3ktdHJ1bmsKKzIwMzQ2IDFhMmZkNWM0ZGNmNTcwZmQxMGRjZTQ0Mzg1MTMwMGE4N2QxNDZlMzYgbGVnYWN5LXRydW5rCisyMDM0NyBmM2I2YWMxMjhkZTlmMTM3NWI4YTRmOGQwNzQ4Nzc4Zjg5YThkMmY3IGxlZ2FjeS10cnVuaworMjAzNDggZDkxNTc3NzgzMzM1NzY0MTQ2MWU0OGQ5MTZmMzI3YmMxY2JjYzliYiBsZWdhY3ktdHJ1bmsKKzIwMzQ5IDRlZTM0NmIzNTUyNGE4ODVkZGRlZTQwOTljYmFhYTE5MjVlNDRmMzkgbGVnYWN5LXRydW5rCisyMDM1MCAzYmRhNTkwNzEzODk1MTM0MTcwNDFlODgxZTFiOTRjZWJlMDhkZjU0IGxlZ2FjeS10cnVuaworMjAzNTEgNjZhN2M4YzhkZDI3MjM4ZjY0NDMwYjIyZGZjMGYyODZkZjdkNzNiZiBsZWdhY3ktdHJ1bmsKKzIwMzUyIDBkMDU0NmJkODQ0OGFjNTIyMGMwMWZkYjgzYjIwMTg4N2FjZTdlOWUgbGVnYWN5LXRydW5rCisyMDM1MyBlODQ2ZTk2MGU3ZjYzMWZiYjNhYTA2MWFkNTFjM2U1MDBmYTE0MjEzIGxlZ2FjeS10cnVuaworMjAzNTQgOTljNDcxY2VkMTcwMTg1Y2RmY2Q4MmRiZGU2MDRiN2M3N2VkNTFlNyBsZWdhY3ktdHJ1bmsKKzIwMzU1IGEwMDRjNjJlNjk2ZTZlMjI5MTA2ZjdhMzg3ODFjYTE5MzFmYmJkYjUgbGVnYWN5LXRydW5rCisyMDM1NiBlODc0MWRjMzZhZDEzYjkxOTQxOTQ4OTRkNjJhYzIyOTNlYThhMzk5IGxlZ2FjeS10cnVuaworMjAzNTcgYzI5ZWUzNzNmNzE4Zjc4YWI0MjM0NmQ1YWNjMTRlYThjYjYzYjVhYyBsZWdhY3ktdHJ1bmsKKzIwMzU4IGYxZWM1MmVmNzcxYzExYTZiNGJkYzRiNzhiNWExNTZhM2Y3MGE5YmQgbGVnYWN5LXRydW5rCisyMDM1OSBmMjQyNzJlODk2MjE1MjU3ODg1MWRjOTEyOTAzZTNiMjAwNWNlNWE0IGxlZ2FjeS10cnVuaworMjAzNjAgYjg0ZjA4NGIyOTkyYTgxZTZiMDZjMjA5YmIzY2VjMzVmNzA2NzYyMSBsZWdhY3ktdHJ1bmsKKzIwMzYxIDRiOWU2ODRiZWJiODcyZWIzYmUyNWZkNDdlZTVhYzMzZTZjNWIwNTEgbGVnYWN5LXRydW5rCisyMDM2MiA4YWE0ZGUyMDdhZTM2NGI0NGJhYWMyMjg2OGVhOWI4YmUwMzIxZTZiIGxlZ2FjeS10cnVuaworMjAzNjMgOTI2YjY0ZmJhNWU3ZWQ1OWEyZjQwMTNhY2Q2MzQzMTNiOTA1NGQyZiBsZWdhY3ktdHJ1bmsKKzIwMzY0IGI0ZTJiOGU5ZjFlNjg0MjM2OGY5NmZhOTQzOTk1ZjI1OTMxZTI3YTQgbGVnYWN5LXRydW5rCisyMDM2NSAyNGU4MWI0MzA2N2RjNjVmNWFhMjM4MTVkMDk0MGFjNDQ4YTJkODIwIGxlZ2FjeS10cnVuaworMjAzNjYgMjg4OGZjNjBiZjlhY2VhZDY0ZGUxMjgzZDFhNzY2NWJjOWQ5MjBkMCBsZWdhY3ktdHJ1bmsKKzIwMzY3IDMzOWE5M2IwMDg0Yzc1YjNhYzQxNzg2ZDYyMzFmZTU0NTU1ODY3NjggbGVnYWN5LXRydW5rCisyMDM2OCAxNDI1NDVkMmFhZmM4MGE3NzczYTZmOTBmYTc1MDBiY2ZiOGI2NTQwIGxlZ2FjeS10cnVuaworMjAzNjkgNGFiNTg2MjQ2NTNlN2Y1NWFlMWI5MDRhMjgwZjkyMTViOWQzNmY0ZCBsZWdhY3ktdHJ1bmsKKzIwMzcwIDI1ZjU1YjJlMzhhY2M4M2QyYmQyZWExNTRhMTc3ZDlkOWE0YjUxMGQgbGVnYWN5LXRydW5rCisyMDM3MSAwYjY5ZTE3ZTA1NWZhNzRlMjU5N2NmM2U3NmFlMTFkMDE2YTQxMDRhIGxlZ2FjeS10cnVuaworMjAzNzIgNjEzZGNkNTQ3NmI2ZTZkYTliZmZlZTMzYmVmMmYyYjRlNzNkMTBlMCBsZWdhY3ktdHJ1bmsKKzIwMzczIGVkMDdkNmE4NzNlNzM0MGM1ZWQ5Y2EyYTBmOTM5MmJkOGNlOGI0ZjkgbGVnYWN5LXRydW5rCisyMDM3NCAwNGRhZWUzYWI2MjdhMGE2OTJiYWI5MjE5NGQ1MmI5YzZiNDkzNzgzIGxlZ2FjeS10cnVuaworMjAzNzUgOTlhZDAyNTdiOTQyZGVkYzE3YzZiMmRmZGUwYWY4ZTU2MDBkNzhiYiBsZWdhY3ktdHJ1bmsKKzIwMzc2IDIyNjUwMzJlZmM5ZjBmNGJjNjI4ZGIyNGY5ZDNmNjM1NTI5ZTQzN2QgbGVnYWN5LXRydW5rCisyMDM3NyA3MTc1MmE0MWI1N2Y5OGJhNmNjNjVmZDg4YjExMTgyYTRmY2NjYjg3IGxlZ2FjeS10cnVuaworMjAzNzggN2U4MjlkZDAzZjk3YThiNjljZjA5ZmYxYWEyZmM2M2YzMzE5NWNmYyBsZWdhY3ktdHJ1bmsKKzIwMzc5IDY0MGFmZmRmOTllNTA3ZWE1MTQxMmViODcyNzE5ZDE5ZGFjMmUwMWMgbGVnYWN5LXRydW5rCisyMDM4MCA3NGU3ZTkzZWNkNDE0MTlkYTY5NTZhZGJmMmNmN2ExZGM3NzZjMjNiIGxlZ2FjeS10cnVuaworMjAzODEgOTZiZDRhODRmMWE0OTRjMjdlNWM0YWNhYjNkYjVkNDNmNmFkMTViZSBsZWdhY3ktdHJ1bmsKKzIwMzgyIGY3YzEyYmE0MjczNzA4ZWM4YTkyOTJhNzcwMjcwMmU2MDRkMjQyZWUgcmVsZWFzZTIwLW1haW50CisyMDM4MyA1ZjRmY2ZiOGQzZGQzNjY3MDFhY2UzMDgzYjRiODAyZjRmYTA1MDRhIHJlbGVhc2UyMC1tYWludAorMjAzODQgMzUxMzlhOTQ1NGQ0MzgwMTVhZTdiMjBhNzI2MmQ5MjVmM2Y2OTQwYSBsZWdhY3ktdHJ1bmsKKzIwMzg1IDE1Yjc2MDllM2UyYzg5MWQ0ZDYwMjM0ZmU2MGY1YTcyNmJmYzc0MzcgcmVsZWFzZTIwLW1haW50CisyMDM4NiBiNjVkMDg5ZTg4NDE4OTBhMTBmN2I4OGFkOWVhZjdhNmExZWYxZjA3IGxlZ2FjeS10cnVuaworMjAzODcgNmVlYTRjZWI3NTE2NTI4MmUyYjliODI5YzYwY2IyZmU4MjY5MzQ5ZiBsZWdhY3ktdHJ1bmsKKzIwMzg4IGEzNDI5M2NlZDYzYjYxMDlmNDc1ZTY1ZDg4MzY2ZjEyYzFmN2Q0Y2IgbGVnYWN5LXRydW5rCisyMDM4OSBlNTI2ZDkyNDg5NjVmNDdkNDczNWNiNTU0ZWYwOTE1NDhkYTAwYmI2IGxlZ2FjeS10cnVuaworMjAzOTAgMGIwNjBjZjc2MmNlNzM4NTE5ZTkyZTllYTRmYzQ3MmFkODI3MjBmYSBsZWdhY3ktdHJ1bmsKKzIwMzkxIDZhMzc3NjIwMTc1MDc1ZmQzY2I5NzZkZmQwMWViNDVmYTNjN2E3MzQgbGVnYWN5LXRydW5rCisyMDM5MiBmNzJkY2Q2N2NjY2IwOWNiMWE4MDE0OWQ0MWJkNTY0ZTRhNWUwYzFiIGxlZ2FjeS10cnVuaworMjAzOTMgODA2ZmQ4ODAxNWY1M2I3MzkxNjI2NmVhNGE2YTYxNzEyZThmZDYzMiBsZWdhY3ktdHJ1bmsKKzIwMzk0IDVlOTlhMWQwZWE0ZGQ3OTA0NGE3MGMwMTE0ZDI3MTg3ZGJmMWU5NDkgbGVnYWN5LXRydW5rCisyMDM5NSA2MWQ5NTRlN2JlOTkyM2E0MzRlYzk3ODNjNjgwN2UzZTY0NDFhZWU5IGxlZ2FjeS10cnVuaworMjAzOTYgYzViYWI3OTRkY2RlNjQ0OWMyODU3YjBhMmNiNjcyNmE2MjY3MzZmOSBsZWdhY3ktdHJ1bmsKKzIwMzk3IDMyN2VmYjU5ZGJjZGU3YjYwY2JhMzhjM2FjOWMzOGYyYWY3MzE3N2YgbGVnYWN5LXRydW5rCisyMDM5OCA4ZTE0MTVlZjliMjhkODMyNmViZmUyNWJjYmM1YzQxMWM2MjNjNjcwIGxlZ2FjeS10cnVuaworMjAzOTkgMTExNTNjMTQxOTk5MzFhYWE2NDZiMTE2MmM3OWQ3ZmE1OTU0ODFjMyBsZWdhY3ktdHJ1bmsKKzIwNDAwIDU1ZWUxNWM0ZWVlNjgzZjRhYWEyNTBiMDk0ODJmNWU0YjcyZWI0MmQgbGVnYWN5LXRydW5rCisyMDQwMSAwNjhmYjU4YTExZDQ4NjgxYzE1YWU5NzAzYjg1YzIwMjJhZmFjOTcyIGxlZ2FjeS10cnVuaworMjA0MDEgZDYxMTI3NmU5YWQ1M2I1ZDMyZDFlODA2NWUxZDgxMWMzMmY3ZDk2ZiBsZWdhY3ktdHJ1bmsKKzIwNDAzIDdiNjdlYjI2YjM5YWI2OGJmNTYyZjczNjJkYzk1ZGI1ZTRhZTY0MjcgcmVsZWFzZTIwLW1haW50CisyMDQwNCBmZDA2ODNjYjczMDEyZmFhYzA1ZmIzZDBjOTE2NjQ4ZDQyZDEzNmZlIGxlZ2FjeS10cnVuaworMjA0MDUgOTBhZTM3ZmY2MTdmY2ViNjA0MTYzOTI5MDE3MWNmNWQzMzViNzllNyBsZWdhY3ktdHJ1bmsKKzIwNDA2IDc2ZmFlNjE0NTI2Y2VjMWViNmI1NWRhOTViOWM2ZWRlMmM3MDg3YWEgbGVnYWN5LXRydW5rCisyMDQwNyBjNjUxY2ZkMGZmZDQ4OGE1Y2MzN2NjOWQ4ZDk2MGJhZmNmNzU0ZTliIGxlZ2FjeS10cnVuaworMjA0MDggNzczYzY0ZDM4YWM2ODk3Y2U0ZTk5OGFiNGQ2ZWFhNjA1MjM4ZGRmNSBsZWdhY3ktdHJ1bmsKKzIwNDA5IDgxODIzY2ZiNWIxNDY4MjNiMzYyMTcyZGQ4MjhiM2QwM2E4MWE5ZmYgbGVnYWN5LXRydW5rCisyMDQxMCAzM2Q3MWU4MGEwOWM3NzMxOTA5NGRkYWEwNzQyMGY2OTRlMzIxOWQyIGxlZ2FjeS10cnVuaworMjA0MTEgMWUyM2Q5MWMwYTgyMWMwNmRjNjgyNzJiNDAyYWVjMGY2NjVmZDA1ZiBsZWdhY3ktdHJ1bmsKKzIwNDEyIGY5MzljZTUyYTczNGQ1ZDJmNmIwNGMyMDY4MGQ3MGIxM2IxMzZjZWMgbGVnYWN5LXRydW5rCisyMDQxMyBmOWRmZDU4N2MxNDJiNjhkZGJkZmU5Y2NmYzlkYmUzN2M3NTE3YjkxIGxlZ2FjeS10cnVuaworMjA0MTQgMDViYWQyZjA1YmZhNmVjZWYyZjE0ZTQwODczYWY2YmI4ZDdmZGI1ZCBsZWdhY3ktdHJ1bmsKKzIwNDE1IGM5Y2FlNWE3MGI0ODI5NzIxMjUwN2ViYzQ4YmViMTQ3Yjk5MGNlMDcgbGVnYWN5LXRydW5rCisyMDQxNiBiMjg0MGEzYzU2MDFkNzc0MzAwMDI0MWY2ODcxZTQ1ZmJmOTJlNDk1IGxlZ2FjeS10cnVuaworMjA0MTcgODM4OWM0ZGY0ODhkYjA1YjNlMDE1MGJiNzg3M2QwMzViMmUzNjdjYiBsZWdhY3ktdHJ1bmsKKzIwNDE4IDc5ZWZiYzlhMDNkZWZjMzJlMzcwMDllMzlkNmE1YTI3Y2ZhNjMyNDEgbGVnYWN5LXRydW5rCisyMDQxOSA1ZmIwYzQ2NzUzZjk4MzAxMDc3M2MyOTI5ZGYxNzcxZTI1Yjg3YzM0IGxlZ2FjeS10cnVuaworMjA0MjAgMGY1YTI2YWE0ZTRhMzBhZTY0YjNkM2QxZjZkZjc5MmY0MGE0OTU3NCBsZWdhY3ktdHJ1bmsKKzIwNDIxIDAxYmUwODMzMzMwOGVhMzUzYmM0N2Q2YzY0OTBjMjMxOGE0ZjBhMDUgbGVnYWN5LXRydW5rCisyMDQyMiA1MDBkNTM0NjBmNTYwODM1OGIwNjFhYTU4NjIzOTFlZWQ1MGYxYzYxIGxlZ2FjeS10cnVuaworMjA0MjMgYzQ0NDJmYjk5ZDI2NWZiMTQ5OGM5MTM4NWUyNDFjYzk1ODYwOWUyNyBsZWdhY3ktdHJ1bmsKKzIwNDI0IDE3YTcxZDJiODFmN2NmNzg1NDJjYjM1MzhmNzk2OTM4OThlODFmMDggbGVnYWN5LXRydW5rCisyMDQyNSBjNDk3ZmEzZmUzOGEyZTNjODVkOTI2ZmUxY2FmMzlmNTJjZGM0Y2MxIGxlZ2FjeS10cnVuaworMjA0MjYgZGQ2YmU2MjVhOTIzM2Y4NTk1OTAyMTg5NGJlMDkzYjAyNTkzNmYyNyBsZWdhY3ktdHJ1bmsKKzIwNDI3IDFjZmVmOGFkZTI3MDczOTAzNDBlOTcyMmI2MGZlMzRkYzFjZjEzODQgbGVnYWN5LXRydW5rCisyMDQyOCAwMjU5MjljMTUzMWQzZDc2ZjZkZTRjZjdiZjJjZTkxZGNkYzVlZjRkIGxlZ2FjeS10cnVuaworMjA0MjkgODNjN2I0Yjc1NjY4ZmZjZDQ3MjJlZWQ1MTM5YzEwZjhiN2FkMGUyNCBsZWdhY3ktdHJ1bmsKKzIwNDMwIGQyZGE2ODFjY2I1NGRmNGIwYjJlNmUzZGU3NjNjM2MwYzgwYmFhNzcgbGVnYWN5LXRydW5rCisyMDQzMSBlMWM1MDdjZGM2ZjFmN2NmZDc3MDBlOGRlYTQwZjlkM2Y5ZWJmNTQ2IGxlZ2FjeS10cnVuaworMjA0MzIgMTYyZmE2YjEzNjZmM2I0YTQ3YzJjZGFiMGI0OTJhNzk3MzBiOGY4NiBsZWdhY3ktdHJ1bmsKKzIwNDMzIGYxN2E4MzBlMjVlYWIzNGUyMTgwMTU1NzNhOTlhYzBlYTg2NmE1Y2QgbGVnYWN5LXRydW5rCisyMDQzNCA1MmE4ZTM1ZGYxMjc5OTRjMjhiNWU1MTE3MWY4Y2MwZTk2ODQ2MjVkIGxlZ2FjeS10cnVuaworMjA0MzUgZTBhNWE2M2FkNzU2OTYxYmRiNmI0NGIwMDgwNDFkYTRkNjI1M2FiYSBsZWdhY3ktdHJ1bmsKKzIwNDM2IDQ0OTMxOTlkMmI5NTZlYzE4Y2JiYzJiZjMzZTgyMzQwNWQ2OTBlMjYgbGVnYWN5LXRydW5rCisyMDQzNiBmZjA2NWU2NzRhZjZjOWFiODk1YmQ5ZWZmN2Q5ZTkwMzlhMzc2YzdkIGxlZ2FjeS10cnVuaworMjA0MzggNDkwODViYjdiY2Q5OTQxNjk5YzlhMGFmMjk1YWRkZGQ2NTE2YzE0MyBsZWdhY3ktdHJ1bmsKKzIwNDM5IGU1MjJlZDgwZmIzOTMzYTYxYjZhNWFhMGM3YmZjZWU1YjNmYzlhNTcgbGVnYWN5LXRydW5rCisyMDQ0MCBkYTVlYWIzMzE0N2I5NTk1YjA0YzMyNGJkNzgzZDNmMmE1MDU1MGM4IGxlZ2FjeS10cnVuaworMjA0NDEgNjI1MjY5M2FmZDlhZjFjYmQ5ZDZkNjk0NmEzMjM3OWIwNmNkZThjMyBsZWdhY3ktdHJ1bmsKKzIwNDQyIDM1NGE1NzFhMDViNGY0ZTUxMDgxODdjNTNlNDNkZDM1MDI5YzI4ZTggbGVnYWN5LXRydW5rCisyMDQ0MyA2OTNmYTZiNDFkZmE1ZTBiY2U2YTI1Y2Y1NTA4N2NjYmQyMGQ4ZDYyIGxlZ2FjeS10cnVuaworMjA0NDQgODRkNzgzOWJkY2Y2M2RjMGUzNTk0YWM4OWE0OTdjODFkZTcwOWZkNSBsZWdhY3ktdHJ1bmsKKzIwNDQ1IGNiYzlmODg2NTU5NTg5Y2M0ZDQwODk4YjFjMDgxMDFjZjFmYzkzN2EgbGVnYWN5LXRydW5rCisyMDQ0NiAwNTQzNmE3NDAxMmQxYzYwMjZkOTI5MjUxZWFjYWQ2YWNhNzk2MjdjIGxlZ2FjeS10cnVuaworMjA0NDcgMWQ5OTUxZDEyNmY1YzM0NTkwOGUzMjA1MjU0NWQ3OGUzNjgzMGFjOCBsZWdhY3ktdHJ1bmsKKzIwNDQ3IDAyMGU5NWQ4MTgwZDc5NDNmZTU0NzAxZTFkYjBhN2Q3ZDg3ZTJiMWUgbGVnYWN5LXRydW5rCisyMDQ0OSAxOTY4NmE2Mjc5ZjQ3NWViODcxMTc1OGI0Y2EzM2QyNzYzYzI2ZGI2IHJlbGVhc2UyMS1tYWludAorMjA0NTAgZmZmMzAyMjFkMTlhMzRjMGVlYmZkZGRhMzBiNjU5NzVhNjg2YzQ4ZSByZWxlYXNlMjEtbWFpbnQKKzIwNDUxIDczMmRkZWU2ODk1NzIwOGIxZTdlZmEyODA5OTczMzQ5NzUwYzhjNDcgbGVnYWN5LXRydW5rCisyMDQ1MiBkMDZiYmI4YzQ5M2FjMDE2OTdlZWY0MDE0ODRhMWI0Yzg1ZDk0ZGE0IGxlZ2FjeS10cnVuaworMjA0NTMgMjhjMTRhNzlhZDIyNWI1MzIxNWYzY2Y0NDI3OWNlZmEyMGU4NjdhYyBsZWdhY3ktdHJ1bmsKKzIwNDU0IGRiOTI4YTI3N2Y4YjJlODQ4NTMzZDM5OWRiYjI2MjMyNTg3MDU3OGQgbGVnYWN5LXRydW5rCisyMDQ1NSAzNjIzMmY1NDMyMjBlZWRjOGQzYWY3YTExNDkzMzYzNjU3Zjc2ZjZmIGxlZ2FjeS10cnVuaworMjA0NTYgODk1ZmM1Yzk1NzYzZWQxMGQ3YTRkNzRkYjk4MTNjMTFkYTE0NzM4YyBsZWdhY3ktdHJ1bmsKKzIwNDU3IDI4MzY4M2I1ZTc2N2M3OTE0ZTgxODBlZWZlOWEwODBjNmRlMzY3ODggcmVsZWFzZTIxLW1haW50CisyMDQ1OCBiNmYwOGQyNzk1YjVlMjQ0MmM4ZmFhZjA1MWQ5ZjllZDBlZDQ4NzY3IGxlZ2FjeS10cnVuaworMjA0NTkgODhhNWM3NmZmYzhkM2Q4YWVlMzQyNDk2MWM5ZGM3ZTVkMmUyMzI4YSBsZWdhY3ktdHJ1bmsKKzIwNDYwIDQyYmNhZmZhNWQ5YjFhZTc0N2IzYzUyYTY4MGZjNzk3YTE1MDRiYWEgbGVnYWN5LXRydW5rCisyMDQ2MSBkOTQ0NDIzZTZmZmY2ZGMyNjI3NjgzY2QwMmNlODZiMGMxMGFjNDhlIGxlZ2FjeS10cnVuaworMjA0NjIgYTlhZDhkZWFjMTdkNWIyZmIyNmQzOTEzYmI2YmM0M2NhNDZjODkzNyBsZWdhY3ktdHJ1bmsKKzIwNDYzIDA0MDVjNjU3ZDJhYzlmZGRmMmRmZjY3ZDhiYjUzY2UzYzg3NGRjNmYgbGVnYWN5LXRydW5rCisyMDQ2NCA3NWUzMjJkNjA0ZjE2ZTI5ODcyZWUzMWY5ZDAxZjEwNmRhZWQ4NzhmIGxlZ2FjeS10cnVuaworMjA0NjUgM2VhYzIwYWZkNTRhYWFkNzQ3NzI2NmRhY2M5MDQyZjRkOTI2NjUzYiBsZWdhY3ktdHJ1bmsKKzIwNDY2IDUxOGRiNDU0ODYzMDE5YTRlOGZhYmIzYzE0ZTJhZjg5NDU0MGMzYTkgbGVnYWN5LXRydW5rCisyMDQ2NyBkMTEyZjEzNWFmOGQxNDE5ZjM3NjcyZWFmY2NlOTc1NGI4ODdjOTBmIGxlZ2FjeS10cnVuaworMjA0NjggMGRkNWQ2ZDlhOTUyYTZmMTExMDU0NjA4MzQ0NTJhNGFjMjFhMzdlNiByZWxlYXNlMjEtbWFpbnQKKzIwNDY5IDcwNzQzMDM4NDYwMzE5MTdjMjYzMGQzZjk4Y2VlYTg1NmQxM2ViNzUgbGVnYWN5LXRydW5rCisyMDQ3MCBjY2M0NGU1NDNiZWVmMTdlYjg0MTA4YjQ1OTgxZjdjZTNmYzUwMjI3IGxlZ2FjeS10cnVuaworMjA0NzEgM2RkOTg2MGU0ZTJkNGJkM2U3ZDgyNDYyNGMyNmRjZTQ5ZDRjYWZlMiByZWxlYXNlMjEtbWFpbnQKKzIwNDcyIDIyOGY0YjhkMThmMDFhOTkwODczOWI0MWI3MmZiNjU3NTA4MzMzNWMgbGVnYWN5LXRydW5rCisyMDQ3MyA0NTI2NjZjYjI4M2RmOGI5MjQ1YjMzOTA1ZmE4ZDk5MTdmMDMwZDQ2IGxlZ2FjeS10cnVuaworMjA0NzQgYzY1N2EzOTM3OTAyMDc3MjY1ZGUwYWRjNGEwNmViNzFlODU5MDUxZCByZWxlYXNlMjEtbWFpbnQKKzIwNDc1IGMxOTM3ZmFhYmIyMzc0OGE0ZTI4M2U3YzRlOTBjN2QyYWI3N2EwYTIgcmVsZWFzZTIxLW1haW50CisyMDQ3NiAyZmNiM2ZhNjdlM2I2ODc4NjY0YzUyYTM0NzljY2MxYmIzMmE3MGRkIHJlbGVhc2UyMS1tYWludAorMjA0NzcgMGQ3MGRhZWI4OTZlMWVmMzliOTA0MDMyMTlmZjI0YzllNGVmZDAyZiByZWxlYXNlMjEtbWFpbnQKKzIwNDc4IGY5OWRmMmEwZTJjZjljNjIzMTE4YWM2ZTk5MDAxOGYzYmZiMGQyYzggbGVnYWN5LXRydW5rCisyMDQ3OSBkMTZkYzI2ZWM0MjdhYjAwYjk1NDBlOGM4MGMxNjBlMTc4MjVjMmUzIGxlZ2FjeS10cnVuaworMjA0ODAgYzVmNzE5MWNlNjdlOTM0YmQxZjEyYmM1ZGQxN2NlM2E1ODYxYmU4ZCBsZWdhY3ktdHJ1bmsKKzIwNDgxIDdlYjg3Y2YxNmE1MzYwYzE0NGJjNTI5ZjI5ZjAwMzNhYmNjNDYzYWEgcmVsZWFzZTIxLW1haW50CisyMDQ4MiA1YTU4MDVhNDVkYmY0OTQxMTFlMGFhZjhmNDIxZWY2MzFmNzE4NTZkIGxlZ2FjeS10cnVuaworMjA0ODMgOTZmOWI4NmI3YjNkZGQ2NzYwZDBlYTNmNzk2MTFmYzU4MDRkMTgyMSBsZWdhY3ktdHJ1bmsKKzIwNDg0IDFlMzA0MmE0ZTYwZTJlM2NmMTI0N2Y3MDljY2ZiOWFhOWExODA0NzggcmVsZWFzZTIxLW1haW50CisyMDQ4NSA0NGEzYWM1OWMyNjhkZDhlYTUyMGY4ZmFkYjgwODJlODg1ZGViM2I5IGxlZ2FjeS10cnVuaworMjA0ODYgMWYzYTE5NGUyMWYzMWY0NTdmYmRkNDNiN2U2Y2M5MjI5NDNjMmE5YSBsZWdhY3ktdHJ1bmsKKzIwNDg3IDAwYTZiMDYwNTExMzUzNWUzZjMxODgzOGU0ODU3MTY1ODlmNmI2YmIgbGVnYWN5LXRydW5rCisyMDQ4OCA1NmYxYjhiYTVjYTE3ZDFiZDI5NTFhZmM1ODU1ZjQxODQ5NWQxNWUxIGl0ZXItYnJhbmNoCisyMDQ4OSBiZjk0YWYzOTZiMWUxMDdhZDNjZDhmMTE2NzE2YjI3NmVhODEyZGI4IGxlZ2FjeS10cnVuaworMjA0OTAgMWQ3MjZmNWNkNTdhMGZkZmJhNjIyZmFhYTM1ZmVjMmQ2NzZjOWUyYiBsZWdhY3ktdHJ1bmsKKzIwNDkxIDFiNDliMTc3YTEwNWUxM2NjYTFmMWM0ZTdiNDFmZWViYzQ2NWRiMjYgbGVnYWN5LXRydW5rCisyMDQ5MiAzMmU3ZDA4OThlYWI4NWRlODEzNGY5MzI2ODBhODVjNmU3YWJjZWMwIGxlZ2FjeS10cnVuaworMjA0OTMgYzNiYjBmZjM5NmRjYzYzM2NiNjcxOTZhNDM3NzYxMzNmNzAyM2ZmOSBsZWdhY3ktdHJ1bmsKKzIwNDk0IGUxNWFiNGU2NTJhZGNiN2ZhNTU2YTE4MTU0Y2MxMTZkNDljN2I1NjIgbGVnYWN5LXRydW5rCisyMDQ5NSAxZmU4ZTUwZTZlMWI5ODJkN2I3ZGQxZjY4ZTZhOTRkNDA2YTM1YjM1IGxlZ2FjeS10cnVuaworMjA0OTYgYjZkYmZjNDVhYzliZjE5MDM4ZTFjZDMyNThkOWI5YWMyMDg0MmYzOSBsZWdhY3ktdHJ1bmsKKzIwNDk3IGY2M2Y3NDkzNjRlZmZkZDM2ZTBmN2M4NDk5MThkOWI2NzkzMjk1NTQgbGVnYWN5LXRydW5rCisyMDQ5OCBkNjM4ZTQxOWMzMDQ1MmQ5ZDFkN2ZlOWE5ODYxZmQwYjlkNDVlZjNkIGxlZ2FjeS10cnVuaworMjA0OTkgZDMyNGFlMjg5MmZmYTRhYmZiMjE3ZjVhNTk4OWE3ZDJkMDlhOTBlOSByZWxlYXNlMjEtbWFpbnQKKzIwNTAwIDRkN2ZiMjRmZTc5NTNmOTBmODM2NGIyYTFmYWQ5MjZiMmU2YmJhNjUgcmVsZWFzZTIxLW1haW50CisyMDUwMSA0YWJkMDcyYWIzZDViNWJkYTFjZDZhY2JkMGFmNzEyOTIyMTNhZDVhIGxlZ2FjeS10cnVuaworMjA1MDIgMzg3ZTgwZTExYTc5NWZjZTU2NzY3Y2Y0OWZhYzMyMWEzZTdjZGYxZSBsZWdhY3ktdHJ1bmsKKzIwNTAzIDIyYWYxNWY4NDEwYThiMjc3MzQzNGQ5YWZjZGFjMjI4YzA0MjE4NDIgbGVnYWN5LXRydW5rCisyMDUwNCA3OWYwY2QzYTcxYTFlOTk2ZWQ4NDNhMjBjNzE3MGNiOGRjYmM5MmNlIGxlZ2FjeS10cnVuaworMjA1MDUgNjI0ZmM5NzEzZDE4YjExMDE1NmRmYjY2OTJkNmE1ZjI2MWYwYWY4NCBsZWdhY3ktdHJ1bmsKKzIwNTA2IDFlYjAwYTEyM2EwZWNkN2Q2ODE0NjIwOTA0MDM1YjBiYzU5NTFiZDYgbGVnYWN5LXRydW5rCisyMDUwNyBjMTlkNmRiNmU5OWI3YWFjN2NmN2M4ZWM5YTIwZmFjNTU4MDY4MjY0IGxlZ2FjeS10cnVuaworMjA1MDggN2RjZGIxNmJkMDY4Y2NhZWM1OTE3NDc1NmQ3OTljM2I0Mjk3NzQ0MCByZWxlYXNlMjEtbWFpbnQKKzIwNTA5IDE4ODU0MTdmNDVkYTM5ODU1YjhjNDIwMjgzNmEyZjQzYjAwNjdlMGEgcmVsZWFzZTIxLW1haW50CisyMDUxMCBiODMwZGYwODNhOWFkZDA3MDliNjhkMGI1MTkyMzE2YTAxMTE4NTg2IGxlZ2FjeS10cnVuaworMjA1MTEgN2FjYmE3OGUxZTA5MWRiYjdlZWMyOTA4MzAxNmY1YmI5MWMxNzhlNiBsZWdhY3ktdHJ1bmsKKzIwNTEyIGFhYzY1ZjUwZGY2ZmYxNDRiNjcwMWZlNTFhMTYzYjMwYTZiY2QwMmMgbGVnYWN5LXRydW5rCisyMDUxMyBiNDRiYTdjMDEyMTc3NWQ2NDQxMGNmMWM5M2QwMjc1YjVjODJhNGI0IGxlZ2FjeS10cnVuaworMjA1MTQgMWI3MzBiZjNmOGQyYWMxZDE1MjM3ZWM5ZWVlNGQ1MmQyNjdkZmM2ZCBsZWdhY3ktdHJ1bmsKKzIwNTE1IGVmYjVjODE0ZmZiNmFiNDg1NmNlODIyYmYzY2VhNzMxNjMzYmM2ZDEgbGVnYWN5LXRydW5rCisyMDUxNyA5OWU5NDZhODI2OTkyMTcwNjBiOTVkYTQ2MmFiN2Y3YWZiMDA2YjJhIGRlc2NyLWJyYW5jaAorMjA1MTggZTJhZjkwYjYxYjJiZDI2NzliNGVhY2NlM2Y4NGQzNWRjNjY0ZGMxNiBkZXNjci1icmFuY2gKKzIwNTE5IGI3YTcxMzViY2NjOGIzZTFhZDE0ODVlN2Y3NzBlZTZkNDExZGU4YTIgZGVzY3ItYnJhbmNoCisyMDUyMCAwYjVkM2UwMzEyMDE4YWRjY2QwOTAwNzZlYmUxMWYwYThkY2JmYjA3IGRlc2NyLWJyYW5jaAorMjA1MjEgYzk3YjM3MTM2ZDgzZTM1MzAwNTA5YmVhNTJhNDViMTFhZTFlYWJhMyBkZXNjci1icmFuY2gKKzIwNTIyIDY4MTkzMTBkZTgyODQ0N2NkZGZmZjBkNjAxNjUwNjkxYWZkNTU5YmEgZGVzY3ItYnJhbmNoCisyMDUyMyBhMWYwN2ZjYzNkNDEzZjc1MjdmNGZkOTUyMjIwZTNjOWM3MDNlYzEzIGxlZ2FjeS10cnVuaworMjA1MjQgNDRhMGE5YTI3N2VmNjkxYTNjYjNkYjY4NWFmMTA1N2I5Mzg2MDg0NSBsZWdhY3ktdHJ1bmsKKzIwNTI1IDE2ODYwODBhN2M2YzM3NmQzN2IwNWVlMjUyMjk3ZmI5MDQ3OGQ0OTEgbGVnYWN5LXRydW5rCisyMDUyNiBkOTFmYzAyMjY4ZDhkMDEwYjcyNWIxMGYwMGI1NzRjOWUxM2U3Y2FmIGxlZ2FjeS10cnVuaworMjA1MjcgOWMxMTMyZjMwOTVhMDYzYWU0YmU2YzM4N2E2MDcyMmUxNDU0NjgzNiByZWxlYXNlMjAtbWFpbnQKKzIwNTI4IDk1MGYxYzNhOGU2YWExNWYxZDQzN2EyODIyMTkwMzE2ZGIyYTAzNjUgcmVsZWFzZTIxLW1haW50CisyMDUyOSA3ZThlZDZlMzllYmQwZDc1NTkzZjAxYWQzMTM4NzdlOTFkZWJiMDdlIGxlZ2FjeS10cnVuaworMjA1MzAgOTFjYmQwMWI4NWNiZGY5MWFjMzUxZjdkN2QxMGQ2M2M3MTk5MTZmOSBsZWdhY3ktdHJ1bmsKKzIwNTMxIGE5NDg1ZDQwNGYwNWQyNDEwNjM3MTE0NTBhMTk3NzZjYjg4NTQ1OGYgbGVnYWN5LXRydW5rCisyMDUzMiBkYTQ4MDk5NDdhMzIxMDViOGY0ZDJiNzUyNjFjY2YxZTU1NmUyNDAxIGxlZ2FjeS10cnVuaworMjA1MzMgMjQ5MTIzYzFmNGRjMTEzNDBhNGI0MGM3ZGY0NWQyZmMzM2U0NDY3YSBsZWdhY3ktdHJ1bmsKKzIwNTM0IGZjZGRlNjgwMzMxZTVhZWNjNDg0MmIyM2YxMDAzOWQwMTY1ODJmMmYgbGVnYWN5LXRydW5rCisyMDUzNSA3ZjVlM2U2YjJhMzkyMDc1MDBjMjBlMDljN2RiMWZhNWRhNTU0Y2U1IGxlZ2FjeS10cnVuaworMjA1MzYgMGJjMzM3N2QwZDcyMDhiYzIyMzliYWM0MDQ3OGM2MGZlNjYwMzY4OCBsZWdhY3ktdHJ1bmsKKzIwNTM3IGI3ZGY4OGE3OGFkYmFiODFkOWY4N2I2ODA1OTk5NjlmNWFmMGQ2ZDggbGVnYWN5LXRydW5rCisyMDUzOSA5OTIxYTlkMjdmNzI4YzYxOTA1NjEzZWY2MmVhYjAzZjE5Y2UyM2M1IGxlZ2FjeS10cnVuaworMjA1NDAgOGZmNzZjZjMwYThjYzM3Y2Y2ZWVhMzZjZjYwNGI0YmViNzk5Yjg0OCBsZWdhY3ktdHJ1bmsKKzIwNTQxIDdkNjc2YjQyMzdhOTkzMmY5MTNmYjI4MTMxN2RjMmM5MTkxMDEwMzggZGVzY3ItYnJhbmNoCisyMDU0MiAzMmU3MzViZWYwYmMyOWIwNTY5MzY2NDc0ZDExM2NjYjNlYTg4NWI3IGxlZ2FjeS10cnVuaworMjA1NDMgYmQ2NWY4ODkzYmUzYWVmNDA1MDE0YzVhMzI3OWNjYWEzMzNkMTE5YyBkZXNjci1icmFuY2gKKzIwNTQ0IGIxMjU0MTYzOTRmYWNhMzA2NGZmZDdmMjEyODIwZGI0ZWJmNjczNjkgbGVnYWN5LXRydW5rCisyMDU0NSBhMTllNjhlMzY1Yzc1NzFkOTc4NDk0NjEzMWIzODg1N2RjMjFmZmMzIGRlc2NyLWJyYW5jaAorMjA1NDYgOTkzNDIyNWZlMjk3ODI3NDBiZjBiZmVmMDhlMmE2MDBmYjY4NGRjMCBsZWdhY3ktdHJ1bmsKKzIwNTQ3IDliZTc3NThhOGM5NGM4ODk2OTc0MzE5YTYzMzBkZTI0ZGQzMTA4ZTYgbGVnYWN5LXRydW5rCisyMDU0OCBiMjgyMzYzNDlkZTUxNDczNzExMWQzYzVlNjZjNGYxMTEyMmFiMzc4IGRlc2NyLWJyYW5jaAorMjA1NDkgOWU4MWQzOTFiNzY1ODlkODZmYWNjNDVkYWMyYWQzNTVjMzcwMDU2NyBkZXNjci1icmFuY2gKKzIwNTUwIDk4N2NlYjllYzAyMzMzZGMwYjFkMDM1MzY1NGRiN2Q3ODVkMjhjOTggZGVzY3ItYnJhbmNoCisyMDU1MSA4ODdiNTI5NzY1MmEzYzZmYWZhZjBkMmVlNGFiYjYyYjA3Y2ExNGMzIGRlc2NyLWJyYW5jaAorMjA1NTIgZTA2YzM2YzEzZjEyODYyNDNlZDA4NWRmMDUwNTU0MzU3ODFlNDkxNCBsZWdhY3ktdHJ1bmsKKzIwNTUzIDUzZWUwZmE2NzY2MTdhOTE3YzlhODJhOWU3MTFkYzI2ZTRhZjAwZjAgZGVzY3ItYnJhbmNoCisyMDU1NCAwMTNkZWI1ZTE3MmJmNWM5NGExMzZlMTE3ZmEwNTE1ZTc3ZDBiN2M1IGRlc2NyLWJyYW5jaAorMjA1NTUgNzAzN2QxZjZlNzlhZWI0Njk0MDAxZjdmOTYxMDg0NjZmNTJjZjUyNCBkZXNjci1icmFuY2gKKzIwNTU2IDU4N2RhMjlkNjlkNWQwY2U5NzE0MzU0MTQxNDc5NmQ2YmU3OTNjMTAgZGVzY3ItYnJhbmNoCisyMDU1NyAxNzIxMjYyYWJhYTgyYTMzN2RiYWViNDU3M2YyMWY5ODE3NzRmZTljIGRlc2NyLWJyYW5jaAorMjA1NTggNGI4MTFhNzFiZTVjMmZhZDk3YWU1YzlmYTIyMGFiMjljZjFjNzBiYSBkZXNjci1icmFuY2gKKzIwNTU5IGFlMDc1OTlhZGYzM2Y3YTg2ZGJkNzVlNWNmYjdlZjY3MjgxMWY3NzUgZGVzY3ItYnJhbmNoCisyMDU2MCBlMmRhZWYwNjg0OTZiYzEzNmI2MTMxNzRjNzQ1MDA4MzdiYTRlMWQ2IGRlc2NyLWJyYW5jaAorMjA1NjEgNTZjNTQ0NWVjODM1ODZlNWY3NzdhYWZjYTVkMDZhNjMzZjM2ZTU4ZiBsZWdhY3ktdHJ1bmsKKzIwNTYyIGFhNzA4N2FjNmQ5NTU5YmM5OTFmOGRkMDlmNGRlY2Q0Yjc0NjcwMDUgZGVzY3ItYnJhbmNoCisyMDU2MyBiZDMxM2E1ZTIwZDc4OGZmOTBkMTEwNTA1N2YzNmY5ZjQxZGY2NDBmIGRlc2NyLWJyYW5jaAorMjA1NjQgNWRiZmU4MzE2MjM2Mzg5Y2U3YTNkOWU2MGJkODgzMzk4YzRhMWY3NSBsZWdhY3ktdHJ1bmsKKzIwNTY1IGI1ZjU4M2VlY2IyMDNjNGMyODRiMjBjYzM0M2IwNGM3NTIwMDExNzAgbGVnYWN5LXRydW5rCisyMDU2NiBkMWVjNjc5YmFhM2RiODJhYjg1YWRjODA3YzJhZDE5ZDBlMTUwYzQzIGxlZ2FjeS10cnVuaworMjA1NjcgNTU3YWFkM2U3NGJhNjM0YjAyZmViODA3NmQxM2I3NWIyYTI5NDNmMCBsZWdhY3ktdHJ1bmsKKzIwNTY4IDZjODIyNzdlNzdmMzU3ZDc0YTM1NzE4MDQ3NmQ0YzQwNTgwYmUwNmUgbGVnYWN5LXRydW5rCisyMDU2OSBkZDI0YWJjYjIzMzFjNzhjZDY4ZDVlYTRkNzI5MjkxNWU4Y2M5NDE3IGxlZ2FjeS10cnVuaworMjA1NzAgMTExODFjZDM4OTdkYzFiODAxY2MxZDE5NzY0YmMzMWE3MDVjZjVhOSBkZXNjci1icmFuY2gKKzIwNTcxIDdhMzY3YWQ0M2YzNTIzOGQ0NjY0Y2NmYjk4YWY0ZTAxOTRhYzczNzkgbGVnYWN5LXRydW5rCisyMDU3MiBmYTgzMjZjYzc2MWNiM2FmZmQ2ODAyZWUwM2UxM2IzNWE1ZjA0YTc0IGxlZ2FjeS10cnVuaworMjA1NzMgZWJjMjRhMTA0MTMyOWM1ZWVmMmU1MGFlOWM5ZjZhNjQ4NjI4OGVkNyBsZWdhY3ktdHJ1bmsKKzIwNTc0IGE4NDg3NDY4N2NiMWNkZTM4NzE3ODA5ODY1YzU1Nzg4YTA3N2I1MTEgbGVnYWN5LXRydW5rCisyMDU3NSBhOTdlMThlNDk5YTljZjdiMWJiNGMwYTlhMjNkNGM5MTU2ZjA1ODQ1IGxlZ2FjeS10cnVuaworMjA1NzYgMDQ3MGJhYmRhZTQ5ZmVlODMzNjQ4NGU0ZDEyMzk3ODdkY2VlOGVkOCBsZWdhY3ktdHJ1bmsKKzIwNTc3IGE2Njk4YTAxNmFmZTIwNjFmNzc3NDViMTcyYjhlMDI2MjQxNGY3MDAgbGVnYWN5LXRydW5rCisyMDU3OCAwODVmNDYwYjBlM2I1OTk0YTI0YmQ4NDBiMDIyOWFlYWY2MGRiY2I3IGxlZ2FjeS10cnVuaworMjA1NzkgZDY0OThiMWVmNTBkMWNkOTNmMGQ3MjY0MjkzYjhlZjUzMDFmYTNjMiBsZWdhY3ktdHJ1bmsKKzIwNTgwIGRlYjhhNWUxNTFhMzQ2Y2Q1NGE2NGIwNDY3Y2RmZjBhMWRlMjg2YjkgbGVnYWN5LXRydW5rCisyMDU4MSAzMGQ3NTE4ZTE3ZTViZmE5MzUyZDI1Njk4NWFjNjRjNzA2MGU0NWZkIGxlZ2FjeS10cnVuaworMjA1ODIgMGZmNGNkZjM0ZmMxYTUwZjNlMGI2ZjQ1YTdkNzRhZGVmMWQwNmE1ZiBsZWdhY3ktdHJ1bmsKKzIwNTgzIDY0NTIzMzA3Nzk0ZTkzNTQ3YzU4NTYyNWEwNmI0YjcxZjNmYmZjMzcgZGVzY3ItYnJhbmNoCisyMDU4NCA1YjZkNTk2MWM5ZTM4ZTBmNjJmMTk0OGRiYjM2MzMzYzYwZjZiZTc0IGxlZ2FjeS10cnVuaworMjA1ODUgZDc2NjQ5YmQzOGQwMWM5NmU1ZGUyNmMxY2RmNmIwMGJjM2MxOTE0ZiBsZWdhY3ktdHJ1bmsKKzIwNTg2IGI5MDc2ZDg3MThhYjFkMmRiYWQwYTBjNDRkYWEwOGZkOTdmMDE3ZTIgbGVnYWN5LXRydW5rCisyMDU4NyA0YzI5YjA0ZTRkNmZjMTg2YzUxZmRmMTQyMmU4YTEyNjliNzUxNzQ1IGxlZ2FjeS10cnVuaworMjA1ODggMTJjODBiNTcwZDAwYTBlY2I5MjliOGNiZTY3YWZiZDQ1Y2MxMTI0NiBsZWdhY3ktdHJ1bmsKKzIwNTg5IDc2ZWU4YjYyZWUyYTgyZDYyM2M2YzRlMDkxYTRjOGNmZjEwZWRjNjYgbGVnYWN5LXRydW5rCisyMDU5MCAxNWNjZTNkODBkMGZkOGQzYmIxYTc2ZDMwNDA3YWE5NjI0OGI1MmE1IGxlZ2FjeS10cnVuaworMjA1OTEgZDdkMDUxMDNjMDIzZmM2NDU5OWNjYWUzNGYxZmQxMjQzN2IxMDJlNiBsZWdhY3ktdHJ1bmsKKzIwNTkyIDhkOWViNWE0ZWJjZDk4ZGRiNTg0ZTk0ODcwYWQyYWNhYjRlZTc1ODIgbGVnYWN5LXRydW5rCisyMDU5MyA5OWIwNmE2NDliMTQ3Yjc1MGM3ZDhhZGY1ZTYxMzZiODkyOTkyYzA2IGxlZ2FjeS10cnVuaworMjA1OTQgNzk0OGNkNGY3NjYzNzQyNDNmY2ExNDg3Y2I2ZTRhYWU3ZTQ3ZmNiMSByZWxlYXNlMjEtbWFpbnQKKzIwNTk1IDg2NDNlNmRlMTNkZmE3MDM1YTRlOGRlNDNiMjNiN2RhMzg0ZWIwYjcgZGVzY3ItYnJhbmNoCisyMDU5NiBlNmU4MWRjZWJmZGU1ZDllNGMyNTYzYTgxMGMwMmY5ZTBlNGNmNTRjIGxlZ2FjeS10cnVuaworMjA1OTcgOThmMzRjNDY0M2U5ODAwMTI0Y2JlNGRkZjBmNjRmODdjNDFmZjJhOCByZWxlYXNlMjEtbWFpbnQKKzIwNTk4IDBiZTI3NzAzOWQ5M2I0MmYzNmRhN2NmOTM1MWZlMzJjOGU3M2JlYzUgbGVnYWN5LXRydW5rCisyMDU5OSBkODA1MDAwNzZlOWZiOTVjZmY4MmI4MGUyNDI5ZDhmYjU1NzE2NDhiIGxlZ2FjeS10cnVuaworMjA2MDAgYmY3ZjE2NmQzYzk3NDYwZGIwZTg5MjJlMGE1NzkxN2VhNDQ2NGJkMCBsZWdhY3ktdHJ1bmsKKzIwNjAxIDU1ZTMyMDE4OTUwODdiM2VkMTE1MTUzMmY5NTg2MGI1ZjI5NmI1YzUgbGVnYWN5LXRydW5rCisyMDYwMiAxYzJkMjZlZWY3ZWQxYjU5Yzk4MmQ3NTVhMTRkODRlNDYzOTgwMzhiIGxlZ2FjeS10cnVuaworMjA2MDMgYmI2YzU5YTg1Y2ExNDdkZDE0ZDc3YzdjOWViZWQzN2JlYTBiMDdhYSBkZXNjci1icmFuY2gKKzIwNjA0IDhiMGMwYzQ4MmE1NWZkMDZkOWVjZTlkMzdkN2MwZjY2N2Y0ODFkMGYgZGVzY3ItYnJhbmNoCisyMDYwNSA4MzlmNmYyY2Q2NmYzY2ZkYTI2MTk5NjgxNWFlMGViOWY4ZWFjYWZlIGRlc2NyLWJyYW5jaAorMjA2MDYgMzA5MWZiODNkNTI3MWNjZDM5MTI3N2FiNTNhNzgwZjY2ZDM2NWU2NiBkZXNjci1icmFuY2gKKzIwNjA3IDhmYzdiZWNmNzgzOTQ3MjkyN2ZmNjQ4Y2RmNmY5YmQ5ODJlZTE4ZmUgZGVzY3ItYnJhbmNoCisyMDYwOCAwYTllM2FhNzFkYjlmMjMwYjg1N2U4OWQ4Mzg0M2VkNWE5OGMzOGJkIGRlc2NyLWJyYW5jaAorMjA2MDkgODJmOGEyYjFiNzljYzMyZGIxNmE3Njk4ZjJjNmFmYmEyMGMyZTNhMSBkZXNjci1icmFuY2gKKzIwNjEwIGZjNjU4YWRjZWRjOGU5YjRiYzI4NmU5NWZlNWJmMmM5NTU2MzJiNWEgZGVzY3ItYnJhbmNoCisyMDYxMSBmODllODUxNTNkMDQ3NTM5YzRmNDc0MzQ0YTBjOTY4MDJiNWZjMGY1IGRlc2NyLWJyYW5jaAorMjA2MTIgMzljYWJkMGFhZTFlYmQyODUzZTVjYzU4Y2YzNjZjN2IxZDM0ZGIzYiBsZWdhY3ktdHJ1bmsKKzIwNjEzIDlkMWUzMDRlY2IxOGE1OGRiNGZkYWNjMzA4MWFkMmE3NTU4NGQ1MjkgcmVsZWFzZTIwLW1haW50CisyMDYxNCA1NTI3ZDYyZmFmZTA1ZTZiNjZhNWU4MGE5ZjZlMGZiMWFmZGRjNTk0IHJlbGVhc2UyMS1tYWludAorMjA2MTUgNmY4ZWZkYmRmZjQ4MjNiY2FmZWRlMjFjMzhhNmVhOGExYzFiNTZlMCBkZXNjci1icmFuY2gKKzIwNjE2IDE2MmI5NGM4ZDJkMWE5NGFlNmI4YzQ1Zjc1MTA4ZWFjYWU3NjI5YTkgZGVzY3ItYnJhbmNoCisyMDYxOCBlOWE0ZTI3ZThkNGUxNmUxNGIzMmFiMjY2OTUzMDM3ZWEyNDY4MTE1IGxlZ2FjeS10cnVuaworMjA2MTkgMzk5ZDk5NjAxYjJkYzBkMmU3YmI0YjU1MGQ4NDIxOGMzNzczZDE5NSBsZWdhY3ktdHJ1bmsKKzIwNjIwIDBjOTg3NzEyMGYzODE3ODNmNzUwM2JkY2FiNGQ1NjAwNTA2OTNmNmIgbGVnYWN5LXRydW5rCisyMDYyMSAzY2Q0YWY2NjZkZTZiM2U2ZjAwYzgxMjIyMjBiMWFkOWY5NzU3YzM5IGxlZ2FjeS10cnVuaworMjA2MjIgOWUwOTNiZjhmNmE5M2YyYzMzZDdjZmFiMDkxNjZiZTZkMTk2OGU1OSBsZWdhY3ktdHJ1bmsKKzIwNjIzIDFlYmI0ZTU2NjI1N2FhODlkZWQwZjNkNmYwMTA4MzRmNWFhMDE0YWYgbGVnYWN5LXRydW5rCisyMDYyNCA0OWQ5YmE1NTU4OGI2N2I2Y2M2MTFiYzMxNGZiOWFhYTYzOWI0ODExIGxlZ2FjeS10cnVuaworMjA2MjUgZWU0ZDE3ODYyYjYxODBiMTQwNzU4MGZmNTc2OTM3NzQ2NTQ4M2QzMiBsZWdhY3ktdHJ1bmsKKzIwNjI2IDAwMmVjNzMzYjVkYzViNjM4ZDVjZGQ1MDA0N2FhODQwNDc0ZWU0MjkgZGVzY3ItYnJhbmNoCisyMDYyOCBkNGQwNjUyOWMyMTgxMWQzMGVjYjcyYWUyYzIxMTIyNDdlZjgyMTA0IGRlc2NyLWJyYW5jaAorMjA2MjkgOWU1M2E1ZDcxZjFkYTFlZjMxMDQ1ZjVmMzNhMzY5NjYzZWRkMWQ5MCBsZWdhY3ktdHJ1bmsKKzIwNjMwIDE4MTI0NzZiN2ZlNDU3MDIxOGUzZDZjNTNhZmU5NWRkOGZhNjg0NjggbGVnYWN5LXRydW5rCisyMDYzMSA2OGU3MWU5YmMyMDQ1NDJhOWEyY2RkYWQxNWIyODUwMGIxN2I3NTBmIGxlZ2FjeS10cnVuaworMjA2MzIgYWFiNmMxZjE5Mjg5ZGNmZGJkYmEyYzE5ODY2MWNlOTcxMThjNzAzMCBsZWdhY3ktdHJ1bmsKKzIwNjMzIDMwNjRiNzNhZGMxYWQ3NzA0YTE5ZWU3YzIxNDY2ZDM1MjViZmNhYjkgZGVzY3ItYnJhbmNoCisyMDYzNCA0NDI0ZTA2ZDQxNTk1NGZhMTIyNzdiM2I2YjI3MWZjZjQzMzUzNzQzIGRlc2NyLWJyYW5jaAorMjA2MzUgMWU5MDJmYzczNjQ1MTg1NDczZDc0NTQxMDI4YzhiNDZkMjIxZDcxNCBsZWdhY3ktdHJ1bmsKKzIwNjM2IGZmYzI5MjNiYWQxYTk2NDU4YmM2YTg5OGIyYTJkODAxMGRiNzYyOGQgbGVnYWN5LXRydW5rCisyMDYzNyBmOTcwMTk1MTk2YzRmYmU3NjMxMmNkZmY1ODRmOThjMTlkODZiZWNjIGxlZ2FjeS10cnVuaworMjA2MzggYWFkMGFkZjgwNmFkYzgyZGIyNmFmMTQ3MmExMjk4ZjgwZTlkNDUyMSBsZWdhY3ktdHJ1bmsKKzIwNjM5IDM3OWZlODg3NjQ0ZmI4MGM2M2Q3OTI3MjkxYzE3MGZjMzdmYjJiYTEgZGVzY3ItYnJhbmNoCisyMDY0MCA1NDYyMzYyNmRhNGUzYTFmZTkxOGJlYjFlZTM3MGYwZTQ4NGU0M2NhIGxlZ2FjeS10cnVuaworMjA2NDEgNDMzMDEzYWY0NTk4NzhhOGIwYzQ0NWIzYjVmZjAzOGUyZjQxZjg5ZiBsZWdhY3ktdHJ1bmsKKzIwNjQyIGRlZDQxYmU4NGRhNGZhY2MxNWQ5ZmMwNzJkODM3YmY0OGZhNWEzNjggbGVnYWN5LXRydW5rCisyMDY0MyBlM2YwZmQzOGMyNGI3MGIwOWI1OTE2ZDM2OWE4MWE1ZDdmZjRlZTE4IGxlZ2FjeS10cnVuaworMjA2NDQgZjNiODc4NWJkMDIyMmE2MWZlMmJiYTM4MDMyNGRjN2I4YWMzOThkMyBsZWdhY3ktdHJ1bmsKKzIwNjQ1IGI0MWY2ZWY2ZWE4Zjc4ZjE2YWNhYmM4MDgwYmE2OGE3ZDUzN2JlODggbGVnYWN5LXRydW5rCisyMDY0NiAyZjE2MDYyYTFiN2M3NWNmYmU2NjBhOWY4ZWE3N2VlZWFjZjg5MzY5IGxlZ2FjeS10cnVuaworMjA2NDcgYWQyNWJmY2M0Mzc3MTVmNzBjZmQzNzdkOWVmYWE5OGJlYTI5YTMxZiBsZWdhY3ktdHJ1bmsKKzIwNjQ4IGZlNGMxMDM0YjQ4MDEzYjRmMjJkYzc3MThkMzE1YzFlZjlkMWFlMWQgbGVnYWN5LXRydW5rCisyMDY0OSBiYThmOGU0ZDQyYjA0NzkyNWY4MTYxNjA5ZjEwYjY4NzRhNGVhNjU5IGxlZ2FjeS10cnVuaworMjA2NTAgMWM4NmM4ZDFjOWM3NjJhNzIyYTY2ZWE2YzRhYjdhY2I3MDU3MjZhZiByZWxlYXNlMjAtbWFpbnQKKzIwNjUxIDYxOTllNWJkMzcwYjU2MGM0NTMzODg1MmMxYzE3ZjJjMzZjOGI4MDQgbGVnYWN5LXRydW5rCisyMDY1MiAzNTBiZTE5Y2E2YTVmODlkZGNhNmI2MjhhNWJiYzA2YmZlMWE1NzRkIGxlZ2FjeS10cnVuaworMjA2NTMgMmE3Y2ZjMTcyYTY4NGEwYTJkNzQyMDE2OWI4NWM2OWM0NDZjNzJhZCBsZWdhY3ktdHJ1bmsKKzIwNjU0IDVlM2JhYjhhZWY3YjBmYWEyN2MxZGFlZDU4MGNkNjhjYmFjNmEyY2QgbGVnYWN5LXRydW5rCisyMDY1NSA2NDkzZDVlOTQxYzJhODBmZmVhNTgyZmMyNzQxYWI0YTg4YzY5Mjg2IGxlZ2FjeS10cnVuaworMjA2NTYgZmY4MTBmYjU5NTEzMjE5YWNkMmNlZDY5MjRjZDkzMGIzMTc5N2JmNiByZWxlYXNlMjEtbWFpbnQKKzIwNjU3IDc1ZTc4MTQwNDFkYWNiOGViZDNmOTQzMmU3NzMzOTdjY2VlOWVlYzUgbGVnYWN5LXRydW5rCisyMDY1OCBhNmEzOTlhY2Y2MjA2NGY5YWMyZmE0MTJjNjUzMDQ0NzVmZTJhMGM5IHJlbGVhc2UyMS1tYWludAorMjA2NTkgOTk0OWM4NzBlMTQ0MjBhMjY4MjY3YjRhOGQ2MDYwOGY5MTY1NmJmNSBsZWdhY3ktdHJ1bmsKKzIwNjYwIGJiMDk1MzQwYWM5ODc1OTNlYzE5NGUyNGE4ZmMwMGVmZjY2ZmUyNzggcmVsZWFzZTIxLW1haW50CisyMDY2MSBlZGUyOWFkNjQ0MGFjMDI4YjgzNzA4YjQwZjU1ZjU4NWQ3ODZlODYwIGxlZ2FjeS10cnVuaworMjA2NjIgMWRlYTQzMWZiMGEwNDExMjMxNzg3MjRhMzBmMThiYWUwMjM2OTczNCBsZWdhY3ktdHJ1bmsKKzIwNjYzIGNkOTJjMGQ3ZWFjNDdmOWQ0NzU2NjdiMTE2YjEyZTcxMzEwYjdiYzMgbGVnYWN5LXRydW5rCisyMDY2NCA5ZjZjZmRmNzFkNTA2OWFhNDMzMjRjNTk5NjcwNDI3OTk3NzI5NTg1IGxlZ2FjeS10cnVuaworMjA2NjUgNmRjMzYwNzhmNTNlMWU4Njg3ZWEzYjEwZDE3YjNlMjIwN2ZhNWRiZiBsZWdhY3ktdHJ1bmsKKzIwNjY2IDFiMWYwY2IyODVjMjU4MzZhNjIyZjE3OGMyYjY0NDJiY2NkM2MwZTEgbGVnYWN5LXRydW5rCisyMDY2NyBiZGVkNmQzMTg2YzBkMjk4YWQ2N2U5MGJjZjg3OWVkYTQ5Zjk5ZDFmIHJlbGVhc2UyMS1tYWludAorMjA2NjggNDg5NjYzMDU5MzQxMzIyZDI3M2QwOWM0YjA5MGFmYTUyMzRhNDQxMSByZWxlYXNlMjEtbWFpbnQKKzIwNjY5IGE2MjZmYTBlM2Q3NTA0ZDZjZTcwOWM1YjE0MDk5MDQwOWQwM2QzMDggbGVnYWN5LXRydW5rCisyMDY3MCAwY2ZhZGQ3NjA3ZDUxZTI1NGQyMjU5YmM5N2FlYWUyMGRlNTI1MWE2IGxlZ2FjeS10cnVuaworMjA2NzEgMDZkN2RhODE0MDlkZTFjMGZjNGYzMzI5NDNiNjZlMGFiY2RmN2I5YSBsZWdhY3ktdHJ1bmsKKzIwNjcyIGUxM2VlZGQwNGE0YTgxYzc1YzEzNWZiOTBhNjA0NjZlN2YyMTQ2MGYgcmVsZWFzZTIxLW1haW50CisyMDY3MyBlNzg1ZDdiZDc1OThmYTQ5ZjBlZjUwODdjOWVjYjYyMDNhZGNlMjA0IGxlZ2FjeS10cnVuaworMjA2NzQgNjBmOGMxNWMwMjU1ZGI5ODdlM2I3NjYwNzVkOWMyZTA4OGY2NWMwMCByZWxlYXNlMjEtbWFpbnQKKzIwNjc1IDM5YmYxZjZjZjBmOWJkNWY4MjA2ODE1YWY2YWYxZWZmNjFlZjUwYzYgbGVnYWN5LXRydW5rCisyMDY3NiAxNDc2MzJhZDFiY2MzYTNkNzMzMzIzNzNmMjMzZTYxZGE5OThlNTZiIGxlZ2FjeS10cnVuaworMjA2NzcgNDM3NDgyZmU1NWU2NDc3YzU1MjMzODE1ZjIwZGZlYmNhOGRkNzQ0ZSBsZWdhY3ktdHJ1bmsKKzIwNjc4IDBlYmZlOWExZWI0M2U5NWM0NGJjZDBmYTkwNzkwN2RlZmE5YjU0MjEgbGVnYWN5LXRydW5rCisyMDY3OSA4MjBlNWEwYzMxMTJmY2YzZDc5YjdkOWJlYjM2NjQ0MWEzYzFlYTQxIHJlbGVhc2UyMS1tYWludAorMjA2ODAgZjk3MWYyNTJkOWI4N2E2NTYyN2ZiZDY1YzIwMmM4YTI4MDRmOTU0OSBsZWdhY3ktdHJ1bmsKKzIwNjgxIGQwNWRiZjNmMzZmNjcyOTQyOGNiOWVlNjUxMWYyYWRhNjIwNTRkNjUgcmVsZWFzZTIxLW1haW50CisyMDY4MiBlZDc3MWI1ZGI1YWFmM2E3NzY3MDRlMDE2MTNhZWQ5ZjMzMGYxM2UwIGxlZ2FjeS10cnVuaworMjA2ODMgMWEyMWRkMTNlNjBhNmU3NDJlYTFiMGJkNTk4NzZmMDBiYWU3MzJmNSBsZWdhY3ktdHJ1bmsKKzIwNjg0IDNlZTlhM2Y2MGJjNzk2NGExNzIxZDE1YmQ0MDI2ZDRlNzU3YWVjNzkgbGVnYWN5LXRydW5rCisyMDY4NSA1M2JiZWIyNWJkZTcxOWY0NmFiNmI4YzZhOTNmYWRmNDM5MTc2Y2U4IGxlZ2FjeS10cnVuaworMjA2ODYgYjE2ZmM4OWMxOTRmNmEzNTRmMTVjNDE3OGI4ZGM3ZmFiOWZmNTNhZiBsZWdhY3ktdHJ1bmsKKzIwNjg3IGI3NmQxYjVlODg2MDBkNmVlZmUzN2JlMWE4NzEyYWE0YTg5NjQzODIgbGVnYWN5LXRydW5rCisyMDY4OCBjNTdjZTc1ZGNkZTBjODJmMTc2ZDhjMWUyZmY0ZjQ2N2Q1YmE3MzY1IGxlZ2FjeS10cnVuaworMjA2ODkgMjYxMTk2YmQxNmQ3ZWYyMmNmYzk5N2ViYjljZDc4NjE5NjdhNmE0OCBsZWdhY3ktdHJ1bmsKKzIwNjkwIGY0NjVjYWUzMDFlZTYxNWQzMDE4OGRiNDBiMzViODQ0YTA2ZTI1Y2MgbGVnYWN5LXRydW5rCisyMDY5MSBiMzkyNjZmNzQ4NGM0NDgwNTRlMzY5ZmE4YTYxZWQ1ZjhhMmE4NzBmIGxlZ2FjeS10cnVuaworMjA2OTIgYzg4NmNkMWMyMTg0NzNkMmNmZmY3NjM2ZTI0MzA0NjgxNTBmNTgxOCBsZWdhY3ktdHJ1bmsKKzIwNjkzIGY0Mzc0ZDc5MzFiYTlmZmJlYjUzNWE0MTRmOTE2YWNiOWY0NzUxNWEgbGVnYWN5LXRydW5rCisyMDY5NCBjNDdjYzlhOTg2NGM0ZTQyMWEwNGY4N2ZlOTMxYTJhNGY3MjVmMTlhIGxlZ2FjeS10cnVuaworMjA2OTUgZWY2ZjNlMTgxODc4NjYzM2I0YWJhMjVmYmYzYzZhNWI5ODM4MDkwMSBsZWdhY3ktdHJ1bmsKKzIwNjk2IDQ3ZDE4NjAyZDVlYTQ1NTEwNmU0MmVkYTk2YjJkNmMwMzNlODFjZWEgbGVnYWN5LXRydW5rCisyMDY5NyBhMDZhNzA0MjYwZTk2YTFkNWZlNWY0NTQ3YTA3ZDJiYTc5OTQ5Nzk4IGxlZ2FjeS10cnVuaworMjA2OTggYTk4N2NmMTgxNDM0OTBkYThhZGI5NDdjOGFjZjRlMzZlM2Y2MDJlNiBsZWdhY3ktdHJ1bmsKKzIwNjk5IDVlMGVjMzljNGNlY2M0YzQ4NGU2MzRlNjRmMDcyZjFiYzE3MTk5NjkgbGVnYWN5LXRydW5rCisyMDcwMSAwODBhMTI5MWJmNmM5ZjgxZjc2MTJjNDExNjIwYmU2YWZiNzk4M2NlIGxlZ2FjeS10cnVuaworMjA3MDIgMzMyNjk3ZGU4ZGI4ZTJkNTI5NGE3YzNiZGI1ODQxNWY2ZGQzMTczMSBsZWdhY3ktdHJ1bmsKKzIwNzAzIGI1MzRmMTA3Mzk4N2NkMzYwMzA2ODZiNzNjYTY3ZDVlZGQ5OWU1MTkgcmVsZWFzZTIxLW1haW50CisyMDcwNCAwOThkNmY4NjlhOWRlODU1MTc0ZDVmN2YwYWUzMmE0N2VmMDJjZjlkIHJlbGVhc2UyMS1tYWludAorMjA3MDUgNjg2MDU0ZTAzYWM1OWM1YmQyMGM2MDRmMmRkMDFhNDYxYjU1N2FhMiBkZXNjci1icmFuY2gKKzIwNzA2IGVmNjViY2VlNzJjYTIyMzZjYTdiM2NhMGU4MTA0M2U4NjY3OTdjMzggZGVzY3ItYnJhbmNoCisyMDcwNyA2NWUyNjExM2IzZmIyZTExZjliNjExZGFlMzBkOGE0ZDRjMzQ0MTMwIGxlZ2FjeS10cnVuaworMjA3MDggNGVmMWI2YTgzYTQ3OTRlMTQ0YjY4ZTRiZjY1OTc1NWUyYjc4NTNjOSBsZWdhY3ktdHJ1bmsKKzIwNzA5IDJmMGRmOWYwYjA4ODc4MmQ4NjdmZGM4ZTc3NzU4MTNjZTQ3NzZkZWEgbGVnYWN5LXRydW5rCisyMDcxMCA2NThjMDc3ZGQzNTEzMTM1YzQ5ZjIxNDdkNmQ4Zjg1OTg2OWMwZDM1IGxlZ2FjeS10cnVuaworMjA3MTEgNTFhYTQyNTAyOTc1NTBkYjFlYWFiNWUwYjc2ZmE2NTMxNDJlNDI3NyBkZXNjci1icmFuY2gKKzIwNzEyIDQ3ZDQ0ZDg1NDJiN2IyZmI2NTEyMjhiZTA0NTMzN2RiMWFjMTFiZjMgZGVzY3ItYnJhbmNoCisyMDcxMyBkZDZmOGM5Y2FmZjBlYzVlMDQ1ZWQ1NjExNjBmOTk3MmRhYWNhYjM0IGRlc2NyLWJyYW5jaAorMjA3MTQgN2E5ZjZjMDk3OTFhOGVlZDI2NGE0ODQyZGE5NWExODFkZTg2M2MwMCBkZXNjci1icmFuY2gKKzIwNzE1IDQ3ZjRkMDU2OGM3Y2I3MzI3NGRjZThmNDE2MmE0N2Y3YTExMWMwOTcgbGVnYWN5LXRydW5rCisyMDcxNiBjMTg4MGY2YjMxODljZjg0YzM0ZWYyZTAzODA0NDdmZDRkZDY3YWUxIGxlZ2FjeS10cnVuaworMjA3MTcgY2UzNzM0MmY2ZjZlM2YzMGU2MzZhMDdlMWU2YmRhNzYzNDI0ZGJlYSByZWxlYXNlMjEtbWFpbnQKKzIwNzE4IGNjOGQxNDhjMzk2YWU5MDhjOWI0MzM0NmFkODhlZGMxOGY1ZTM0ZTAgbGVnYWN5LXRydW5rCisyMDcxOSBmYjEwM2UzZGEyYWVhZmYzYzlmZTE5YzIyYzk2MDZlMTc0ZDYzOWM2IGxlZ2FjeS10cnVuaworMjA3MjAgMDFiNTA0M2E0NTA5ZjcwNDQ0MzQwODcxYTE0MDhkZWE0NDYxNDUxOSBsZWdhY3ktdHJ1bmsKKzIwNzIxIDY2OTYwNGQ5MzQzZjA1ZDE3Y2E4MzViN2FhNTU5YWZiZDI1N2U1OWEgbGVnYWN5LXRydW5rCisyMDcyMiA0YjJmZGFlYmJmZTVkZTMxYzg3MGIzNGYwNmNkZDRhYTE4ZGI3YmQ2IGxlZ2FjeS10cnVuaworMjA3MjMgMGVhMDkxM2Y4MjRkYWIzZmUxYjViMDEzNzdlOTJiYzMzYzkwOTNhNSBkZXNjci1icmFuY2gKKzIwNzI0IGQ3Y2NiOTMxY2E3OTU1NWVmODY3ODI0NjE3NTViMTJjYWVlMTdmMGQgZGVzY3ItYnJhbmNoCisyMDcyNSA3YTJhMTIyYzk5N2MyMDYzNzViZDEzMDE0NDdlZGMwNjc4NTI2MThlIGRlc2NyLWJyYW5jaAorMjA3MjYgZGNlMWY1MzQ1MWE1YWY0NjkyZTVkMzhhNmZlOTViNjNjYzczNDM4YSBsZWdhY3ktdHJ1bmsKKzIwNzI3IDU5NjA0ZjViNGRkMTI5MGUxZWM0ZmQxYWJjNjdmYTI5NDc4MWRhNTAgZGVzY3ItYnJhbmNoCisyMDcyOCA0MTllYmM2NzNlZDhkZjljNmY5ODEwYjhmNjAwYTU2NGRlNDEwYjdhIGxlZ2FjeS10cnVuaworMjA3MjkgMGViYjkxNTIxYWU2YmNlZGJiYzA1ZWVjN2I5MjYxOTJiMjEyOGI2YiBsZWdhY3ktdHJ1bmsKKzIwNzMwIGI0YjM2NTdjYjFmYWE0NTczYTRkNTRkZTc0ZDY5NzI4NjQ5ODc5ZDEgbGVnYWN5LXRydW5rCisyMDczMSA5OTNmYjE4MDFmNDFiMjRhNmFjMDgwOGVkYWViNmM0YmRjNTdmNTU1IGxlZ2FjeS10cnVuaworMjA3MzIgYTE1NzVkYmY3ZDgxMmIxOWU4NjU3YjAwMzkyNmY0YjhiN2FkMmE1MSBsZWdhY3ktdHJ1bmsKKzIwNzMzIGFiMTdiOGI4ODY5NjJkOTEwMGFlNjBiYmIxNmYwOGM5ZTM2NDNiNDAgbGVnYWN5LXRydW5rCisyMDczNCA1Mzg3Y2I3NjcwNTk0YTJmOWVmZDZjNGYzYzQ2N2Y0ZTYyMTc3ZTIxIGxlZ2FjeS10cnVuaworMjA3MzUgMWRhY2QwZDYwNjM3Yzg3M2M5MzcxZmQ0ZTAzOTgwNTRmMTEyMDYzZSBsZWdhY3ktdHJ1bmsKKzIwNzM2IDEyOTZlODYzMDRlZjU4ZjRmMmJlNWM1N2U1ZGRkYjM2YmRkYmYxMDEgbGVnYWN5LXRydW5rCisyMDczNyAwZWQ4YzVmM2Y1MzA2MjQxMjUyMWM0MzBjMzA2Y2IzZTNmMmQ0YTA1IGxlZ2FjeS10cnVuaworMjA3MzggOTljNDlmMDA5Mzg4ZTUyY2I0ODI0OWQyZWEzYTY2NTFlNTYxYWFmNiBsZWdhY3ktdHJ1bmsKKzIwNzM5IDg5OWYzNjdlYmE1NmI1MGM5MmUxMDZhNGU3ZDM4NDJlYjNiOWY2NTYgbGVnYWN5LXRydW5rCisyMDc0MCA0NzllYTY5ZWM4NWIzMjBiOWJiNjBiMzM3ZDI3MzA3ZDcxNGNjYWM0IGxlZ2FjeS10cnVuaworMjA3NDEgMjJhMGIyZTMyOTFmMDJhODg5ZTRkZWM4NTRhMzExNDZmMzNjMTdlNiByZWxlYXNlMjEtbWFpbnQKKzIwNzQyIDc4YzY0YzBmNjYxY2JjNGY1M2E4ODU0ZjUyY2MwOTEwOGU1NDIyM2UgcmVsZWFzZTIxLW1haW50CisyMDc0MyA4MDQyNWIyYzFlNGM3MDIzY2Q1ZWIxN2ZjYmVmMjdjZTJiZWE5MTJkIHJlbGVhc2UyMS1tYWludAorMjA3NDQgMmUwMTVmOGExYWMyMDFiMTJmMjI1MzRmNDFlYjBhMmI2NjIwMTk0ZSBsZWdhY3ktdHJ1bmsKKzIwNzQ1IDFjNjA0YmM2YjkxZTU0ZmRmMTYxNjdhYmU5MWRiZjVhMmQzOTg0MDIgbGVnYWN5LXRydW5rCisyMDc0NiAxZmIzZWNhODk2OWVhOGNmZTcwMDA3NWFiODIxZmY4YWEzMzNmODlkIGxlZ2FjeS10cnVuaworMjA3NDcgNmUwMDhjNjE5ODU1Mzg1NmYxMTc3NzhiODYxYTJmY2ViY2ZlNGUyZiBsZWdhY3ktdHJ1bmsKKzIwNzQ4IDNiNWJlYjkyNzdlMDQ3YmUzMzExYjk2ZjkzNDBhOTc5MjMzZTVkODggbGVnYWN5LXRydW5rCisyMDc0OSBhOGZhOWMwZjFlMGJiNWNjZDc4OTJiYTc3OTBkNjkwZTBkMTAzMWEyIGxlZ2FjeS10cnVuaworMjA3NTAgOGFlZTUzOTUwNTgzMDkyNTMzODRhY2ZjYjJhM2U1YzIwZTUxYmI3YyBsZWdhY3ktdHJ1bmsKKzIwNzUxIGEyYjY1NmE1MjI5NDNhMTkxOTNjMTJhNDkxZjdlZGQ0NGNiOWEwNGEgbGVnYWN5LXRydW5rCisyMDc1MiBjMTk5ODBjMDNlMmRlMTVmNDc4NzZiZTcwODJhNDA5NDdiNDg5N2U3IGxlZ2FjeS10cnVuaworMjA3NTMgNTU5N2Q0YmNkZTA3NTg1YjM5MzE1Nzg5ZWNlYTM2YjQ2MTk3M2Q3MiBsZWdhY3ktdHJ1bmsKKzIwNzU0IDdlYjMyODhjODFlMzU1YmNmN2U3OGVlMjM1MWM5OGE2MWRiODA2ODggbGVnYWN5LXRydW5rCisyMDc1NSA1M2ZjY2Y0ZDZhNDE0MTM1NzI3ZWUyNGQzZDBjYzQ3MjQ1YTRlMjE5IGxlZ2FjeS10cnVuaworMjA3NTYgNDllNzFhODNmNzkwZmEyMjRhMTdhNTU4OTdmZDM5YmY1MGY1ZDhhNyBsZWdhY3ktdHJ1bmsKKzIwNzU3IGJmNzBkMWY0ZjYxZjZjZDE1MTc0M2VlYmYzMzI3NTNlZTUwMjI1ZDggbGVnYWN5LXRydW5rCisyMDc1OCBjZThjMzU2NTQyYWI3Y2U2NmJjMmJkNDIxYTMxNDY2ZDA2NDk0YmVhIGRlc2NyLWJyYW5jaAorMjA3NTkgZGQ1ZmIzOWU2NWVmMzY1M2YyZGYwMDY3NTM1NmRmNTE2NjA4N2YzMCBkZXNjci1icmFuY2gKKzIwNzYwIDMzODAyNzk2MTJhMzNjOGJjN2IzOTNiODI0MDA0ZDBhMDI4ZWEyYzUgbGVnYWN5LXRydW5rCisyMDc2MSBmZjlhODMzOWFkMWI0YjI5NTliNmM2NTg3MjIxNGI0NDdkOTk1MWY3IGRlc2NyLWJyYW5jaAorMjA3NjIgOWY1NTk3ZWE5NmZjMTRlZDE3ZmUxZThmMDk5M2RkZDM3MzQ2NmRhNSBkZXNjci1icmFuY2gKKzIwNzYzIDdmMGY1ZWNlNDU2MjhiZTljNDIzZTI4NjMzMmExZTk5NDE4NzAwMTQgZGVzY3ItYnJhbmNoCisyMDc2NCAxNGZkNGJiNzc5OWFjMTVmNzg5ODM5M2I3N2NmNGU1YWM3ZDA5MGViIGRlc2NyLWJyYW5jaAorMjA3NjUgMTU3OWQzMDk2NzZlMzUwN2NhOTlhNjNkYzU4ODQ4ZjQ2NTllNThiMyBsZWdhY3ktdHJ1bmsKKzIwNzY2IDU0ZDM5NTQyNWU5MjkzNDY3ZDYxYmY3N2FhM2M4Y2I2YzcwOWYwMDYgbGVnYWN5LXRydW5rCisyMDc2NyBjMzRjYWI4N2Q3MjE5ZmJmODBmZmE4MWUzNjQ0ZDc1ZWUzMTZhY2Y0IGxlZ2FjeS10cnVuaworMjA3NjggYzgzNjIzMDNlYzNiMWUzMzIyM2IyZTY2ZjIzYjhmYzJkOTM1YzRkNSBsZWdhY3ktdHJ1bmsKKzIwNzY5IDIyMjc2N2ViMjhmNzVjZWUwYTFhOGM2Y2YzMWJhYzIzOTg3OTRjZTkgbGVnYWN5LXRydW5rCisyMDc3MCA0ZjIwNDk1YjhiZWRjNTk5ZWQ3NDFlN2UzNTMzNmY4YTcyYmI1ZWY4IGRlc2NyLWJyYW5jaAorMjA3NzEgNGFmODY1YjIyMWVkZjBjMjE5ODQ4MmFmNDE2OGEwMmNmMjkzM2I1NyBkZXNjci1icmFuY2gKKzIwNzcyIGI4ODFkYzNiY2ZiM2QzYjMyMjVkNWY5YTZjMzA2M2JhZDhmNmI0MDYgZGVzY3ItYnJhbmNoCisyMDc3MyA0YjA4ZmQwODdkMzY0M2U0OGJhNDc1NjZkM2RlNWQzMTg1ODNhMWM1IGxlZ2FjeS10cnVuaworMjA3NzQgOGNkODc0MWViZWMwZDQ0ODMxY2Q5YWViODE2MWU3ZGQzN2M4NjhiYSBsZWdhY3ktdHJ1bmsKKzIwNzc1IDIyMTFjODk5NWE1ZjhkODVhY2ZjZjhhYTE4OWUxOTgzMDljZjIxMDYgbGVnYWN5LXRydW5rCisyMDc3NiBkNmRmOGQzNzFiNjc0Njc4YWY5MGI1MzVjMzM0OTVlYTk0NzBlNTBhIGxlZ2FjeS10cnVuaworMjA3NzcgOGY1Y2U1ODExOWUwNTRhYjcyMzY1OGVmZGUyNWEyMTUzOGE4ZjI0NiBsZWdhY3ktdHJ1bmsKKzIwNzc4IGY3YzM4NTIyNmY2NWE4NTM1ZWQ1MjIyOWQzNDM2Mzg0NjliZTg0OWIgbGVnYWN5LXRydW5rCisyMDc3OSAyOWQ4NGY5MjBkNWI5NzMxYjA3NGNiZjU1YWMyYzcyZGY0YzM4MjgwIGxlZ2FjeS10cnVuaworMjA3ODAgMTlhNDQ4ZmRlZGY3MjRiNjE0YmNmODY4ODgxOWRkNjU5YzA2ZDVkMyBsZWdhY3ktdHJ1bmsKKzIwNzgxIDRiY2Y4OGU0YWJmZjIwOTljNDVhNjBjOWMxMjA1MmI5ZDdhZWJjMTUgbGVnYWN5LXRydW5rCisyMDc4MiA3ODAyNDhjZDFkOWFmYTViNzA2N2MwOWM1MTE5NzY3OTdiOThkZWUwIGxlZ2FjeS10cnVuaworMjA3ODMgNTAzNzZkNDcwNjQ4MjE3Nzg3ODFkZTVlYzIwNTI4YzE2NDFmNGNjNCBsZWdhY3ktdHJ1bmsKKzIwNzg0IGYxMjM5NmM1MWFlYWY0ZDQ5ZDJlNmNmYzE3Njg2OGU2YTQwMGEwMWEgbGVnYWN5LXRydW5rCisyMDc4NSAwYWRmYmUzMjg5ZDVhZTNjYjBlMzUyODIwYjhlODg4MmM3NTg3N2FiIGxlZ2FjeS10cnVuaworMjA3ODYgMGJlMTZkMGVjZjY0YTc5NzEyMzM4NzE5ZTE3ODI2NzZjYzMzYTJlMCBsZWdhY3ktdHJ1bmsKKzIwNzg3IDA3YTg3NTIwMDFiYWNiOWMxNWQxNDA4YWQ4ODZkMDg2NTE5NzU3ODIgcmVsZWFzZTIxLW1haW50CisyMDc4OCAwYjNkYTk5ODI0YzdkNWRmY2FhMzIyODliYjA2M2RhMDdkNGIxN2E0IGxlZ2FjeS10cnVuaworMjA3ODkgMjY3NDUwNTNmODQwNTk2YWMzNGQ5MTFkY2E2YzA1ZmM5NjgxMjc1MiBsZWdhY3ktdHJ1bmsKKzIwNzkwIGI1NGRiZWYxZjhkMzY1NjRmZmVjZjA4ZTBhYTY2ZWQ3YmYxMjU2YzkgbGVnYWN5LXRydW5rCisyMDc5MSBkODkwYTIxYmViZGEyYjhhMTRmMzE5MjQ2YTIzMGNmNmYxOWM4ZGU2IGxlZ2FjeS10cnVuaworMjA3OTIgY2VmNWI2MDBmYTE2Mjg0NmZhZWJkZmU4MWVjZjBiMTA1MTI4YzExMSBkZXNjci1icmFuY2gKKzIwNzkzIDc1MDllYTA3MmNjYjQyMmQxY2Y3M2E3N2NkMDE4NDc3MTQzZTExYzYgZGVzY3ItYnJhbmNoCisyMDc5NCA1YzA2YTk1OTZmYmZmZGQxMWQzYjViZDFkMjE1YjVkYWQ3ZTUwMTNjIGxlZ2FjeS10cnVuaworMjA3OTUgMWJlY2Y0NDJkNzM1NTliYzU2NmI4ZWQ1MGJhOWExZTMxMzcyYzlkZSBsZWdhY3ktdHJ1bmsKKzIwNzk2IGMzZmY1NzIyNjNkMzMyZjg1MTVhY2IwZTMxOGFhNTUwMTI5OGY4ZWEgbGVnYWN5LXRydW5rCisyMDc5NyBlZDFlOGI2ZTI2ZWNiMWM3M2ZmM2U3OGMwY2IzNjNlZTM5MDRkN2JlIGxlZ2FjeS10cnVuaworMjA3OTggOWVhODdjMGE3YzA0Mzc4MGQ1NjliNjNhNzFkMjI0NGQ4NjZmZDg4YyBsZWdhY3ktdHJ1bmsKKzIwNzk5IGFkNTAwYjUyNjczYzYzOTg2ZDY0YmQwNWU1ZTU2MDI4MjY3NTA4YjQgbGVnYWN5LXRydW5rCisyMDgwMCAyODkyYWEyNjA3ZDVmNWU3NDc4YWQ4M2M0MDc2ZjE2YzZlMmJkNWQyIGxlZ2FjeS10cnVuaworMjA4MDEgZGIwNzRhYmE5ZTM2NGNhNzYyNzVjYjE2MzkyOWYwNGFkOTEwNTllMSBsZWdhY3ktdHJ1bmsKKzIwODAyIDNkZDQ5NTQyYzRkMDFhMTYxYzllMjkzMDI4YWVjNDFmZmZlYjYzMGYgZGVzY3ItYnJhbmNoCisyMDgwMyBjODcyZmRmMTAxMzBmNDY5ZTkyZjhhMDg4MjFhM2FmODZhODYxMjBkIGxlZ2FjeS10cnVuaworMjA4MDQgZjE4ZTgwOGMwMjMwZDAzODdhZDZjMjJkZTM2ZTkyNDEwZWJmZGQwOCBsZWdhY3ktdHJ1bmsKKzIwODA1IDJiNWE5YmZmMWIxMWU5MzgyZDVhOWFmODJhYmQ1MmIwZTY2ZmMxMmMgbGVnYWN5LXRydW5rCisyMDgwNiA3ZWQwY2FlYmRkODYxY2UyZGFhMmYyNTQyMjU5MTJiMWQ2ZTczMmM4IGxlZ2FjeS10cnVuaworMjA4MDcgM2UyNTZmOWQ5OWFkZTBhOTE1Mjg5N2EzMDRkM2Q2ODk0OThhNDI0OSBsZWdhY3ktdHJ1bmsKKzIwODA4IGFkYTNiZDFiODcxMzQ3Y2NiMmEwZWZkOTlmYTUyMmYxOWE1NjhlZGMgbGVnYWN5LXRydW5rCisyMDgwOSBmYjMxYzMzNzYxYzk2NWYwYzA4YjFhMjg1NTllMTNlZGMxMWI2ZDVmIGxlZ2FjeS10cnVuaworMjA4MTAgOWZmMzVmNzY2MWJkNzNlZDYwMWI1NDI0MjYyNzAwM2U5Nzg4ZjM0MiBsZWdhY3ktdHJ1bmsKKzIwODExIDdmNDU1NGExY2FlMjI4ZjAyOTE5NzZjOWU5MzRmYTNiNzhlZjc4M2EgbGVnYWN5LXRydW5rCisyMDgxMiA2OTYwYjJiYmJmY2FhMjExYmJmMGIxMDg5ZDM3YjdiMzQ1YjE0YzU3IGxlZ2FjeS10cnVuaworMjA4MTMgMDE3YTY0YTRiZGM3YTk4YzYwMThjNGQ3NzRjODBkZGM1MmZiODQzNCBsZWdhY3ktdHJ1bmsKKzIwODE0IDI5NWEyZjQ5MjdhYjY5YTVjYWNhMGQzOTNlZjcyOWY5MTNmMzYzYzMgbGVnYWN5LXRydW5rCisyMDgxNSBhMGQwOGM0MmU3MTAyYmFlYWIzMzFhMTQ5MWZkOTY5ZjEwYWQwNzlhIGxlZ2FjeS10cnVuaworMjA4MTYgYmE5NzExMWE2YWQ5Zjk5N2YwMTA4ODY1ZTIzMzJjYzJmMzk2YTM5MSBsZWdhY3ktdHJ1bmsKKzIwODE3IDA1NWZjMDQ2ZTA4MGVjMGUyZGE0YTE4ZmQwZmFhMjAxMDY5MDMyZmUgbGVnYWN5LXRydW5rCisyMDgxOCAwMjhhMWQzOWVmYjY1YzRiMzhmYTg1NGNlYTQyNDljMTYzNzYwZTEyIGxlZ2FjeS10cnVuaworMjA4MTkgZDJkM2Y4ODY2MWEzZTk5NGFmNzE3ODI1NjBmZDJmYzYwNGRjYzM2ZCBsZWdhY3ktdHJ1bmsKKzIwODIwIDI4MDc5NDllMGJhNTkxZjE0ZmYxZDIzMDFkYTViMTk5ODgzMTkzNzEgbGVnYWN5LXRydW5rCisyMDgyMSA3OWFlZTQ5OGEyYmU1MWJmODg5YTE4NjY1YTdjMTgyYjU4MzU3ZGIyIGxlZ2FjeS10cnVuaworMjA4MjIgNzc2MzU0OWNjYTQ1NjRhNGU1MTMxZTVlNTZkYzRjNDI4NTJmMzdlYyBsZWdhY3ktdHJ1bmsKKzIwODIzIGI3N2M0ODg4ZDdjY2FkZDZmNzQ3NmJmY2YzMjU2ZjQzMGYzZjQzOTEgbGVnYWN5LXRydW5rCisyMDgyNCBiNTNiNjBmMWVkNDU5Njc4N2ZmMWE0YWMzNGMyM2Q5NDlmMzVhMzM3IGxlZ2FjeS10cnVuaworMjA4MjUgMzM1ZmJkZWU3Y2Y4M2MyN2JmYWNiYTMzNTI0MmY3NWJiNmJjNDEyOCBsZWdhY3ktdHJ1bmsKKzIwODI2IDk3ZWNlOTMyMWM1MzY0ZmU4NzllOGVjNjExNGJiODU5MzBiYTMzMzcgbGVnYWN5LXRydW5rCisyMDgyNyAwZTg2YmRlYjBiOTI2MTdlYjcwODJjZTk0ZGYwNDg3ZDc3ZTI1MjcyIGxlZ2FjeS10cnVuaworMjA4MjggYmU5NjllNzE3YjkxYjBhMjhiZjUyYzBjZGFlY2E5MTJiYWYyMDk5ZSBsZWdhY3ktdHJ1bmsKKzIwODI5IGZkZTU1MDhlODJkZTZjZDlkOGRkNzcwZGE2ODg5YjIzNzJjYzhmNWMgbGVnYWN5LXRydW5rCisyMDgzMCAwNDJkY2ExZDQ1MjZlMTU5MWNjZDk2NWUzZDVlN2RlY2Y5NzdmMmEyIGxlZ2FjeS10cnVuaworMjA4MzEgY2NiNmQ3NjYzM2JlNGQ5ZGEyN2VhOGU2YTQzYTQ0YmZmM2Q3NjFmYSBsZWdhY3ktdHJ1bmsKKzIwODMyIDY4YmYwN2U3YmNjYzk0ZGQ2ZTJkYWI4YTdkNTBjOWRkNzYzNGU3NDMgbGVnYWN5LXRydW5rCisyMDgzMyBiODIzYTMzMTgzZmM2NGJiZjk2Y2I3NjcxZTgwMDc0YjllMGY3MjU5IGxlZ2FjeS10cnVuaworMjA4MzQgMDk0Y2VlNjg5OGMxMDI2YzRhOTg2N2Y3OTVmNmVjY2Y2Mzk4Zjc2MCBsZWdhY3ktdHJ1bmsKKzIwODM1IDQzYjdlZTcxOGY1M2ZmYTkxYzNlNmE2NDJlZWYwNTYzMTZkOWYxYmEgbGVnYWN5LXRydW5rCisyMDgzNiAyMDBmM2E1ZGUxYzlhZGIyZWU4Y2FkNzJjM2ZhMWZkZjNjMzM4NzYyIHJlbGVhc2UyMS1tYWludAorMjA4MzcgMWViMTIyNTlmZWVhNjQ3OTg0ODI2Nzg2NzVlZWIzOTJkYTFhODJmOSBsZWdhY3ktdHJ1bmsKKzIwODM4IGViMDNjNmZjMzFlNWJkOWZiNTMxMGUwODE1OTUwNzJkN2Y2ZGZkZTUgbGVnYWN5LXRydW5rCisyMDgzOSAxNTFhMmZhMjk2ZmU0MmFmYTQxZmRjZTVlN2NlODU4NWEyYjExN2FhIGxlZ2FjeS10cnVuaworMjA4NDAgY2IxMWM1OWMxOGRkM2JmZmFjZmUxYmU2Mjk1NTI5NDM5ODM4N2UxOCByZWxlYXNlMjEtbWFpbnQKKzIwODQxIDEzYmRiNWIyMDdkMjZkOTM2OTY1OTQ2ZmZkMDkzZmUwYjRlNWZmNDIgbGVnYWN5LXRydW5rCisyMDg0MiA1MjRlMGYzYzE2OWIyNzA3YmFhNWU5NTEyOTc2NjM3MWRmMjBjMTNhIHJlbGVhc2UyMS1tYWludAorMjA4NDMgMTdjMjAwYTdkYjg1YWQ2ZDQ4ZTVhZDhlYTY1ZDc0YzRjNWZlZTk4MSBsZWdhY3ktdHJ1bmsKKzIwODQ0IDQzYWI5ZjgyNGQ4OTBkNTVjYjNhODRhYzljMzIyNDJlMTVhNTdkOGYgcmVsZWFzZTIxLW1haW50CisyMDg0NSBkNTY2NjZkZWI5NTM4ZmYzYWUwMzk1OTA0NjdkZmM4YWQxNmMwN2ZjIGxlZ2FjeS10cnVuaworMjA4NDYgNjAyN2QzY2Y4MDVjZjcwN2EzYjU5OGFkODk5M2Y3MDlhZTdhOTE2ZiBsZWdhY3ktdHJ1bmsKKzIwODQ3IDIwNjBlZTBhN2Q5MmM0MWYzZDJiMDlkOTU5MGIwMWY0ZThhMDg5MzMgbGVnYWN5LXRydW5rCisyMDg0OCAyMTM1ZDdkZTg2YWRiMmFhNWQ4NzExYTFjM2EzZjY1ZjFjMmI3OWRkIGxlZ2FjeS10cnVuaworMjA4NDkgYTkzZGFhZmJkMTNkNzQ4Y2U5NWQxNmFjOWVkY2FiY2RhNWJkYzEyNyBsZWdhY3ktdHJ1bmsKKzIwODUwIDBhZjgyNGM4ODIwMzA2MWU0MDRlYWQwNWJjM2YxZjljYTdiYjhlM2IgbGVnYWN5LXRydW5rCisyMDg1MSBmZDVmODMxODg3Nzg2ZDMxMmMzOGIzNmY3YWJkYmFmMWE5NmMzOThkIGxlZ2FjeS10cnVuaworMjA4NTIgOTNiNTkwNzI5YmRjODk5MGVlZjcxY2E1NDUxZWJiMWMzYWFkNjZiNiBsZWdhY3ktdHJ1bmsKKzIwODUzIGZkMTJlODJiNzcyN2ZiMjgyZjVlZDdkZDQxMDdiZjA5NjIyZDlkMjYgbGVnYWN5LXRydW5rCisyMDg1NCBhMWRkYzQwODBjYzU3MjE5N2VjZTg2Nzk4Zjg5OWEzNmY5NzcwZDQ3IGxlZ2FjeS10cnVuaworMjA4NTUgZjk1YmFkYTUyNzNlMjg5OTBjY2NjMzZmMzZiMzRlZjA2NDI3MzVmZCBsZWdhY3ktdHJ1bmsKKzIwODU2IDkzOWUzZGE1OWM2MTIyMTI2MzBhMTRmYzk1NzEwMGE2YjdhNWU3OWMgbGVnYWN5LXRydW5rCisyMDg1NyA1YjA5N2Y2MTcxNzM1Mzg5MmQwOGY0N2JmYTJhNTRlZDY1NTBlMjA3IGxlZ2FjeS10cnVuaworMjA4NTggOGRhOTQ3M2YwNzM2YjA0OGJhNGNhZTE0Zjg1MzRiMzJlZGM0NTdjMyBkZXNjci1icmFuY2gKKzIwODU5IDE0ZGE1MzE0NjY0ZDk0ODJjZGEyMTA2ZTA0OTUxODRkZjhlYWVlMjEgbGVnYWN5LXRydW5rCisyMDg2MCBjNGY1NTQwMWU4YWVkNTcwMWUxNDEyMzJhZDU3NWNjN2NmM2ZlNDIxIGRlc2NyLWJyYW5jaAorMjA4NjEgZTIwODBkYjcxYjFiMGNiYWFiNjZmZWM5Nzc2YzQ4Y2E2ODgyNGViYiBkZXNjci1icmFuY2gKKzIwODYyIGMxMGI0MTg1NTIwMjhhZDdiZmMxMWJlZDUzNGM2ZGI2MjBkZTAwZmMgbGVnYWN5LXRydW5rCisyMDg2MyBmMGMzZGUyMmNhZWRkZWEyMjRiNzgxMzQ1NGYyYmE3NGIzMGJmZGRkIGxlZ2FjeS10cnVuaworMjA4NjQgY2M5ODRlZDI2NTg2YWMwNmM2ZWM4OWQ2ZjQ3NzBkZWQ3YjNkNTNkNyBsZWdhY3ktdHJ1bmsKKzIwODY1IDVkNTBkMWZhZTA3ODdmNTkyZDU3ZGRiMTczZDBkZGYwNzJiOGI4YmIgbGVnYWN5LXRydW5rCisyMDg2NiAzOGZkZjk4ZGE5OWZkZDE2MmUyZGJmM2FmZjRjN2Q2YTljNWY2M2JmIGxlZ2FjeS10cnVuaworMjA4NjcgMzRiMTUwNGU2NjQ0YzdlOGRhMTBkYTIzNGIwYjFkNGY3YjQ0NDE1MiByZWxlYXNlMjEtbWFpbnQKKzIwODY4IGFlOGM0ZjQ3MGEwZTQ0NzI3YzczOTI0MDM1ZmExMDA4MDllMDQ2OWQgbGVnYWN5LXRydW5rCisyMDg2OSA1M2RlMGVlYTRkMjVjODZlOTk4ZWVjNTdhMzcyM2I4ZDU1NGFkNDkyIGxlZ2FjeS10cnVuaworMjA4NzAgNjk3MzdkN2Y0Nzc2ZmQ2YzMyOTQzZDUwYmQ2MjFjYTIxMzhkNmQyNSBsZWdhY3ktdHJ1bmsKKzIwODcxIGE0NmYxZjdhOWM4NjlhMmM3NTQ5ZTFiNTc2MWI1M2Q1ZTUzYTk0NTEgcmVsZWFzZTIxLW1haW50CisyMDg3MiAwYTdhZjBlNTM4ZDRhYmRjYzBiNTdmYTMzNmQ2Nzc1YWVjMTQxMWE3IGxlZ2FjeS10cnVuaworMjA4NzMgOWFmODA2YjI4NmM2MTY1NDc2NmQzZTMwYzE0OGMxNTA0OWMwYjExNyBsZWdhY3ktdHJ1bmsKKzIwODc0IDdiOTc3MWY2ODU2YjMwOWRkMzMyY2E5YTZkMmViYzY0MjRlMTE3OGIgbGVnYWN5LXRydW5rCisyMDg3NSBkODg0MjM1ZmU3NWMzZjRmNjUxMzEzNDAzZDE5MjA3MGVjZTZlMWU2IGxlZ2FjeS10cnVuaworMjA4NzYgNzc4NzFjNDk5MjE1ZmIxOWM3NDY3NGZjZTMyNmI3YzMyMTM4NjFlNCBsZWdhY3ktdHJ1bmsKKzIwODc3IDYxOWZkOGUwNjdkYWVjZjA3NzA4M2Q5NzY1ZmE0NDVmMTk3NDgwNjIgbGVnYWN5LXRydW5rCisyMDg3OCBmYmZmYjZkZTI1ZGRjYjNiODNlZGMyZjhlZDE3ZGFmNzllZjcxMGMxIGxlZ2FjeS10cnVuaworMjA4NzkgNDIxYjFkNjYwNDk1MDg4NjlmMWM3ZTcyOGUyOTY0ZGUyYzVlMDNiZCBsZWdhY3ktdHJ1bmsKKzIwODgwIDg0ZmYxOTc3ZDc3MjVmYjUyNDA1N2VkNzNlYmY5YWM3NGM1YWVhODMgZGVzY3ItYnJhbmNoCisyMDg4MSA0NjkwOWYyMjE3MGMzZTg2ODI2MDJkNjY3ZDBlYTVmYmExMjYwZGMxIGxlZ2FjeS10cnVuaworMjA4ODIgZmY2YTZkMzQ3MTk1YWQ0ZDI0MjNkODdjNmJjYzZkNWNjY2QwMGVjYyBsZWdhY3ktdHJ1bmsKKzIwODgzIDFiZTZkNjhhZTEyY2U3YjFhNGZjMzRhYjM2NjkxNmI4Y2NiYmZhODggbGVnYWN5LXRydW5rCisyMDg4NCA2YzVhODAwZGE3OTFmNDI1OWNkMWUxZDNmODY2ZGUwMjE3ZmY1OGE0IGRlc2NyLWJyYW5jaAorMjA4ODUgYTY0M2E4N2E0YjJjYWE0NjMxYzgzMjI0ZTczNWU5YTllYzA3ZjFkMyBkZXNjci1icmFuY2gKKzIwODg2IDcwY2Q5YTQxOTA3Njk0Mjc0MDQyN2ZkODgzNDI1YTMwYmU0ZTVhY2QgbGVnYWN5LXRydW5rCisyMDg4NyBiZDUzNDliNDExZjYxYTY5ZjFhZjUwMWZkNmVmMzU0NTljMjBkZWU5IGxlZ2FjeS10cnVuaworMjA4ODggZDQyNjk0MzdlOGIzZGMxZmM1ZjE3ZDU3NzQ5MWExZThjOTlkNDc2OCBsZWdhY3ktdHJ1bmsKKzIwODg5IGNlNjlmYjljOGQ1NjE3MDhiODkyOWUzYTkyN2VmMmNiNDUxNjY2YzkgbGVnYWN5LXRydW5rCisyMDg5MCAxNjAwNWIyODU1NzYyZGYxZGEwMGIxM2RlNzRjZTA4OGZkYTczODQzIGxlZ2FjeS10cnVuaworMjA4OTEgYTFmY2ZkY2IzNDc5NjY4MTUzMmRmZGIyYmUzN2U0YmFmYjc3MDA2YiBsZWdhY3ktdHJ1bmsKKzIwODkyIDVhYmMyMzI5OTIyZmVkNmEzMjYwZGU4MTZlZjAzYzFiN2IzMTA1NDEgbGVnYWN5LXRydW5rCisyMDg5MyBhODk1ZDdkNzM5YWQ0MTZiNzRlMmY4ZDU2ZGVhNTM2NWQ2NDhkMWVhIGxlZ2FjeS10cnVuaworMjA4OTQgNDc0ZTNkZTAwYjA1MGVjYmJiMDUxMmUzNGQ3ODBiODg5Nzk1OThlMyBsZWdhY3ktdHJ1bmsKKzIwODk1IDI5N2EyNjZhYzRlZTE3MmJkZDVmZjJlYWVmZjA0OTNkOTgwNjk3NWEgbGVnYWN5LXRydW5rCisyMDg5NiBkZWEwYmFkZTY1NmQ0OTE1MTBmMDhhYmViNGZlZmE2YWJiOWZmMmE1IGxlZ2FjeS10cnVuaworMjA4OTcgNjk0YzlmMGNkODE0Mjk3OTM0OGQ2YjM0MTJjZWU1MzkwYjJhYmJhMSBsZWdhY3ktdHJ1bmsKKzIwODk4IDgzMWMyN2Y4NzZhYzlkYmNkOWI3N2FiNzY2MzAwYWZiNjRhMGJlMzUgbGVnYWN5LXRydW5rCisyMDg5OSBiYmY3MDIwNDllYzZiMWJmMWY5YjM2MGQwMmY5NjE5MzdkYmZiODY3IGxlZ2FjeS10cnVuaworMjA5MDAgZTRlODUzZDU1Njc1YTI5NmJlM2U2YjdiZWVkZGFjZGEwMjJiOTNmMyBsZWdhY3ktdHJ1bmsKKzIwOTAxIGVhMGNhZDkyY2ZkMjdiN2Y2ZGNjYTczZTAyZWQ0NDUzNjE3NTY3YTggbGVnYWN5LXRydW5rCisyMDkwMiBjZTdmMGUzODA4MzA0ODdiZDkzZDhlMGYxZDY3ZjgwZDRhNDUyNGJkIGxlZ2FjeS10cnVuaworMjA5MDMgNTYyMTc2MTkxZTYwNDk4NzU5ZGI2YTAwYjJiYzc4ZjI1MmQwZjU3YSBsZWdhY3ktdHJ1bmsKKzIwOTA0IGUxNGI0MWZkMmFiMjUxNTIxODg2NzIzNGYyNzE4MTc0NTRiMGE0NzUgbGVnYWN5LXRydW5rCisyMDkwNSBjZmUwODFjOTU1M2VjNzg0NzZmZDc1NGFjODkzYmMxNzFiMzY3N2MwIGxlZ2FjeS10cnVuaworMjA5MDYgM2U2OWQ3ZGI1ZjhkNTBmYjU1MzllNDdmODk3YTg0ZTM1MjQyMTVhNiBsZWdhY3ktdHJ1bmsKKzIwOTA3IGE0MjkxMGI1NDQyYThmZDc3NGFmNmU0M2RjNzU3MmQzMGUzYmU3MWUgbGVnYWN5LXRydW5rCisyMDkwOCAyMmI1MTUyZDIzZmMyYmVlMDgwZmYyNjkxMzZhZDIzODBiMzczNDI4IHJlbGVhc2UyMS1tYWludAorMjA5MDkgMjIzNDQxNTQwNDQzMTY2NzhiNzc3YTFjOGI2ODNjNWQ5YjliMTQ3YiByZWxlYXNlMjEtbWFpbnQKKzIwOTEwIGI4NmVlZWRkYWUyMTM0NmU0YmNmZDJmNmUwNmQ0NGUyNzNhZjI0MzcgcmVsZWFzZTIxLW1haW50CisyMDkxMSBkYjQzYmUxOWQzZTMzYjAwMDE1OTE3MTQzNTg4YjEzYmQ2OTZkZWJkIHJlbGVhc2UyMS1tYWludAorMjA5MTIgMDk2MDcyZDg4Nzk4NjhhY2IwZGMyYmQ4ZmJhMjRkZjVjZjk5MjQwOSByZWxlYXNlMjEtbWFpbnQKKzIwOTEzIGQwNzk4YjNhMzhjMTU2ZWYxN2IyODg0ZTM3OGI0NTVmYjk3YjNmNjUgcmVsZWFzZTIxLW1haW50CisyMDkxNCAyZWRhYThlOWYzODE1MTVjYjBhNzg3ZTczZDllZmRjODJiOGIxOWQ4IHJlbGVhc2UyMS1tYWludAorMjA5MTUgMDcxMWYzY2Q0NGQwNzcwNzAzOTQzZjY2ZmQ1ZDQ4OWUyZjQ4OGUzZCByZWxlYXNlMjEtbWFpbnQKKzIwOTE2IGUxODE2ZjY0OWZmOGUxMjM2NDk4MTE3MjdmZDZiZmE5M2VjMTE0NjUgcmVsZWFzZTIxLW1haW50CisyMDkxNyA1ZDg5NGE1ZmNlMzhjMmM5NWRlMDA2NzY3NjVjMzhhMjY2ZTVkMDY1IHJlbGVhc2UyMS1tYWludAorMjA5MTggYjM4ZmQyYmQ2OGMwYTE5ZTQ1MjQwN2Y0ZTJmYjU2N2IwZWVhZDU2MSByZWxlYXNlMjEtbWFpbnQKKzIwOTE5IDE0NThiNTk2YTQzNGFjOGMzY2QwNDc5MDc2YTc0ZmQ3OWY1NDJhOTYgcmVsZWFzZTIxLW1haW50CisyMDkyMCA3OTNiNzU1NDNmMTNmNWI1YjNiODJmM2E1YjU1MTA4ZjJmOGE0ZWI1IGxlZ2FjeS10cnVuaworMjA5MjEgOGM0N2Q5ZGEzMGRlMjZkYzg4ODliYzliZDIyNTVjODM5MWExMTA4YSByZWxlYXNlMjEtbWFpbnQKKzIwOTIyIDlkZmQyMmU4ZTliNzZkZDE5NzEwMjg2NjgwNWQ4NmM5YjIyMzE1NzUgcmVsZWFzZTIxLW1haW50CisyMDkyMyBhNDI5ZGE3ZGI3MDY5NTQ2N2NkNjJjZTVmODZkYjdkZDFmOTIwYzFmIHJlbGVhc2UyMS1tYWludAorMjA5MjQgMjQ4NDE4Y2JkMDA1MjdkNDdlNTVmNTg3NmZiNDVkODMyNjBhOGYzNyByZWxlYXNlMjEtbWFpbnQKKzIwOTI1IDRlZDY1N2QzN2NlYTdiZDhjM2RhODBlNGRhMTJiNjdkYjVjYzg2ZGYgcmVsZWFzZTIxLW1haW50CisyMDkyNiA1Njk2ZGRkYTNlNDBmOTcxZmJhMTczZGEyNGY5NDQxMjljMmVkNTU4IHJlbGVhc2UyMS1tYWludAorMjA5MjcgZmM2OGY2ZWQ3MDE0MjA0NTVmNjdkMDhiNDg4ZWQ4OWI0ZjQ3MGIwOSByZWxlYXNlMjEtbWFpbnQKKzIwOTI4IDRhZDdhMmFiNDJiNDJlOGM1MGM5OGU5ZGE3MTUzNDA5MzQxNGIyYmUgcmVsZWFzZTIxLW1haW50CisyMDkyOSBlNWJhMGQyYjQ3ZTI5NDI1MmUxZWFiNGVmMzUxZWM1MmEzZTJlMjg4IHJlbGVhc2UyMS1tYWludAorMjA5MzAgMTAzMTExYWQ5OWYxZjBlMmViYTUwNDMxNjM2OWRkZWNkYmUwMjE1NyBsZWdhY3ktdHJ1bmsKKzIwOTMxIGFmNDg5NTg3NTA5ZGNkZGU2M2MwOTJlODAzZGNjYWRlYzlhMWY4YzkgbGVnYWN5LXRydW5rCisyMDkzMiBkODZiMjQ1ZTA4NTgwMWMyNGM3MjQxNDM4ZDI4ZGU1Yjk1ZDNjNjhhIGxlZ2FjeS10cnVuaworMjA5MzMgOTViYWEzMzNlZTQzY2I4MDE3ODc1YWRhZjI4ODdjOGZkZDU5N2YyMiBsZWdhY3ktdHJ1bmsKKzIwOTM0IDVlMTE0MTE1N2Q1M2ZkOTVlNzY4Y2EwY2VjMDY3NGYyNmViOWI3MGMgbGVnYWN5LXRydW5rCisyMDkzNSA3OGY2NzA3MWM5NDllYjJjOTJjM2ZlZTlkZDJhMzc3MGNkOWY0YmM4IGxlZ2FjeS10cnVuaworMjA5MzYgMTc4YmVkZjk1MzZkOGNlMWMwZmM2NjY2ZWUzMTA4NTVjNzA3MWUyYSBsZWdhY3ktdHJ1bmsKKzIwOTM3IDA1YWIwYTcxNGU0Y2FlYTk3NDBjZTI1ODljZDQ3NTkxMmVjM2EwMGEgbGVnYWN5LXRydW5rCisyMDkzOCBiMjAxOGU1ZDIxNDJiOTQxZDIxNzEyMDhkYjY4N2NhN2MxYjVmNGQyIHJlbGVhc2UyMS1tYWludAorMjA5MzkgZWQ4Yjc5YzZjYjRiMmNkYWFjNDNmNzZhYjk4ZDFhYThiOTJlNjVjZCBsZWdhY3ktdHJ1bmsKKzIwOTQwIGY5YTM0YWMxNGM4YmU5OTYyMjIyYjI0MWI3Njg3NDhlZDJjM2U2MTMgbGVnYWN5LXRydW5rCisyMDk0MSA3M2ZjYzRmNGExODIyOTBlZDE1MzA0YjlkODA4NTNhZmE5NjZhYjM2IGxlZ2FjeS10cnVuaworMjA5NDIgNDAxY2NmY2YyOGMzODg0MGVhN2U3NzJkZTIxMDBkYzg3MzM1MWI2OCBsZWdhY3ktdHJ1bmsKKzIwOTQzIDJmMmVlNWRhYTYwZGI2NTc5NzBjZjU2ZTc1ODE5ZGZlN2ZlMjk4ZjUgbGVnYWN5LXRydW5rCisyMDk0NCBiMGI0NmQ3NzM0ZTBlZDNlNDhjNGJmNTJhNGM0MjhjZWJkM2ViMjcxIHJlbGVhc2UyMS1tYWludAorMjA5NDUgNTI3ZDBmZmRmMDk5MDE2MTFiZjYzNjFjMzM4YmJmMmMzMzU2YjYyYyBsZWdhY3ktdHJ1bmsKKzIwOTQ2IGQ1NzlhNWQ4YjNmZWE4MWMxMTVjZmZjNjc0YTAwZTM4MDg0MDJjZjUgbGVnYWN5LXRydW5rCisyMDk0NyAyYTk0YmYyMzVkYWFjZmFlZjRlNzkzNzdlMDkxYjc4ZWYwZTdkNTM2IGxlZ2FjeS10cnVuaworMjA5NDggNWU4N2EwOGFiYjA1N2ExNWNhOTJjZDJhYzliYjBhYTA1ZTMzMDU5MyBsZWdhY3ktdHJ1bmsKKzIwOTQ5IDE5MmQzNjg2OTQ0NTU4YTNmMzU5N2RjZjRkYjljNmIxM2MwZmE5MGIgbGVnYWN5LXRydW5rCisyMDk1MCBkYjEzZmI1Yzg1OGE1MTkzMTExNmIyNDRmZTY3YjNlOWY2MDAwNjRhIHJlbGVhc2UyMS1tYWludAorMjA5NTEgYTJiOTk2YzcxNmExYzUwNDQ1OTkxYmY1NGQxMGJhYWZiNDc3YTA0OCBsZWdhY3ktdHJ1bmsKKzIwOTUyIDYyZWVjMjkzNmNkM2Y5ZTFiNjAwNTg1ZmE5MWEzNWZjNmIwZjI5NzUgbGVnYWN5LXRydW5rCisyMDk1MyA5NTI2ZjBlZDA2NmEwNDdlNGM0ZThmZDA1NGRlZDVlOTc3MjI0ODkzIGxlZ2FjeS10cnVuaworMjA5NTQgNDdjN2MxZWI5NTc0ZDE5OWNlNTRlNWUzMjJiNDNiNDY5ODc5NjkyOSBsZWdhY3ktdHJ1bmsKKzIwOTU1IDcwNmJiNmM5NDVkZmY1ODMzN2E3ZjkzNGY0NjY1MDM2YjI0MGJhNDIgcmVsZWFzZTIxLW1haW50CisyMDk1NiA4NTg1MDQxYmE1N2IxYmVjZTFkZjdkMzk0NGQ2MDdlYmJmNDBlYjM3IGxlZ2FjeS10cnVuaworMjA5NTcgYWUwOGEwMWYyZjJkZDJmNTg3ZmE2OTdkY2M1YzMwMDcyY2MyM2QwNSByZWxlYXNlMjEtbWFpbnQKKzIwOTU4IGU4MTljYzBhOWVmNmRjMGJlZGYxOWY1M2JlNDUzOTVlM2YzMzk5ZjQgbGVnYWN5LXRydW5rCisyMDk1OSA4MzYxNGQwZTAwZjE1ZTc0NWYwZTI0Yzk5OGFlMmE5MjQ2NzM3NDE1IHJlbGVhc2UyMS1tYWludAorMjA5NjAgY2RmODhiYTJkOTY4YjkzYjBiYWM1ZTQzODA5Y2Y4NGIxOTU0MWI3NyBsZWdhY3ktdHJ1bmsKKzIwOTYxIDA3NjllMTFkOWQ1ZjQ4ZjNlMzYxYTU0YTk1NjNlMTBlYjcwNDM3MzYgbGVnYWN5LXRydW5rCisyMDk2MiA5ZWUyMTgyNDgxYWY5YTE0NzNhNmFiNzBiODJkOWJlNTQxOTc2Y2VmIGxlZ2FjeS10cnVuaworMjA5NjMgNDQ3ZWE2NTE4MWMyODVjMDY3NDc5ODJiYTQ3ZDdlZDE3YzEwZThhZSBsZWdhY3ktdHJ1bmsKKzIwOTY0IDI5OGZiMjlkYWE4MWMyNzM0MzYyYzY3YWZlMDhlZjViZTc1NGE2YTAgbGVnYWN5LXRydW5rCisyMDk2NSA4Mzc4MjVhNzc5YzE2ZWEzMjFjNTMyNjYxODRiMjA0M2ZmMDZjOTYxIGxlZ2FjeS10cnVuaworMjA5NjYgNWE5ZGViYjE0NDQwZTI1MmUzMzU1ZjMzYmE0OTViYzE0Yjk2YjliNCBsZWdhY3ktdHJ1bmsKKzIwOTY3IDI3ZjI0MjJlYTMzNTc4MGE3NzBmZTE0NzI4NmY2YmMyNjk0YWM4YWUgbGVnYWN5LXRydW5rCisyMDk2OCBjOGNiNzk3NzIzNjRlNDg2MGFiMWNhZjQwYzMyYjg4YmIzZDE4NjRmIGxlZ2FjeS10cnVuaworMjA5NjkgZmY2NDRlNjA4NTI4Y2Y2YzQ3NWNhMDNjOTVhZTcyMThjNDM3YjFjNSByZWxlYXNlMjEtbWFpbnQKKzIwOTcwIGVjOTM0M2FkMWU2MDlhN2M1YmE1ZGU4NGMyZjQzYWQzMzI0ZDY2MTUgbGVnYWN5LXRydW5rCisyMDk3MSA5NzgwNmE1OTljN2ViNWE2OTc2N2NjM2IzODkxNTBiMTMwZDA3ZGViIHJlbGVhc2UyMS1tYWludAorMjA5NzIgNDViYWRmYmZiMDBlZjYxMzZmMDU3M2YxZTYxMTZhZmFjYjA3ZDI1OSBsZWdhY3ktdHJ1bmsKKzIwOTczIDI3ZWRlOGIwOTVkNmRmMWQxNGUxOWRhMmFkYTU1Y2Q0NzNlOWU5ZDkgbGVnYWN5LXRydW5rCisyMDk3NCA2NGUxZWEzNGI1NTMwMGQzZjJlNTU5NGY3NGUwY2IzZWUxOWQ4NWYzIGxlZ2FjeS10cnVuaworMjA5NzUgYmFmMjEzN2U5Njc2Y2I0NDZjOWY3ZDRiZDFhOTMyZTI0YWEwZTZlMSBsZWdhY3ktdHJ1bmsKKzIwOTc2IGU2MGZjMDE3NjJhMGY5MDE3NzQ2NjQ0ODc0M2NhZmVhNzg2ZmYyNjYgbGVnYWN5LXRydW5rCisyMDk3NyA2YTJlMjU0OGU2Y2YzOWExZDlmMWQzNTc0YjFlYWJlMmNjMDliOTRkIGxlZ2FjeS10cnVuaworMjA5NzggYTQzMDE0MzFiMmFjOGU3NWVmYzM4YzkyNjlkNzRjZjU2OTgxYzk2YSByZWxlYXNlMjEtbWFpbnQKKzIwOTc5IDUwZTMzODBiMDg2YTFkNDc2MjFlM2Y5ODg1ZjFlYzY2MWFjZWZhNmQgbGVnYWN5LXRydW5rCisyMDk4MCA1M2IwZjY1YTBhMDVkNzVkZjEzYWRlNDVmMzI2MmVlN2FiM2NhZmUzIHJlbGVhc2UyMS1tYWludAorMjA5ODEgMTgwNzEwOTExZjE1ZDdkYzY3ZDRhNDA4Njc5NmRlNmRkNjg5NDMzZSByZWxlYXNlMjEtbWFpbnQKKzIwOTgyIDU4Mjg0NWUxNGU1Y2MxNWNjMDhjZDE4ODdmMmI3MDJkODJmNDY4NmQgbGVnYWN5LXRydW5rCisyMDk4MyA5OWFlYTZmNWNlYmQyOGVmNTE5YzgxMGFmMmRlNjQ2ZDIzZjJlMzUyIGxlZ2FjeS10cnVuaworMjA5ODQgOWY5NzE2N2YxNjQzMDE2NzNjZWVjYjk2YTdlZmE3NDQwMTEwNzNjZiBsZWdhY3ktdHJ1bmsKKzIwOTg1IDBjMWEwNGU5ODEzNDJmZDViOTRkMWNhM2FjOGU1ODY4NmY4NWY0N2UgbGVnYWN5LXRydW5rCisyMDk4NiAwZDZmNzYwYjZlZjFhNjQ0MzZiMThmYTcxMTc3ODkxNTBlODliYzJkIGxlZ2FjeS10cnVuaworMjA5ODcgZmFjZmY1ZjUwZmNjYWYyOGU5ZGQ5MDA2YTRhZjU2NGJlY2I1ZjdkNyBsZWdhY3ktdHJ1bmsKKzIwOTg4IDAzOGUyZjc0ODAwZDk3ODMwMWVlNDBjZDgxZGI1MTJiZDM5NDJhZjMgbGVnYWN5LXRydW5rCisyMDk4OSBjYTdlMmUxYWU4ZGY5NmU1ODY2OTAyZDQyZjYzNzMyMjJlOGI3NGNjIGxlZ2FjeS10cnVuaworMjA5OTAgZTg2ZDMzMDgxYmJhOTRiZTlkNzg2ZTY2ODVmOTNmOWI1NWM3NGRkZiBsZWdhY3ktdHJ1bmsKKzIwOTkxIGM5ODdkY2Q4ODJiOWM3MzE4ZDg1MWY3NmRkZGEwMGMxYjgwYjc0NjMgcmVsZWFzZTIxLW1haW50CisyMDk5MiBiZDFjNGZlOTc3Y2JkYzc1NzMyZjVmMDFjYmQxYTJmY2FjYTFmNjg5IGxlZ2FjeS10cnVuaworMjA5OTMgOGQyYmJiYmYyY2I5ZmRjMmZhODdiYTNiODNiZGZkYmMzMzIwYzQ5NyBsZWdhY3ktdHJ1bmsKKzIwOTk0IDE5YjUwNGZiOWQxNTZlN2IxN2Y5ODkyMjFkMTVkNmNhODNlMGZiNDggbGVnYWN5LXRydW5rCisyMDk5NSA1MTE1ODdhYjJkZDJlNmYyODJkNmZhZGU4MDkyZTA4OGUzYjI1Y2Q5IGxlZ2FjeS10cnVuaworMjA5OTYgMDI0MjY3NDQxNzYxZTk0NGJmYWFmM2RjYWM4M2Q2MzE1NWRhNjI1MyBsZWdhY3ktdHJ1bmsKKzIwOTk3IDUzOTFiOWQwMjJhYzEyNzU3MTUxZjc4N2IzNDFmY2I0MGJiMGNhODYgbGVnYWN5LXRydW5rCisyMDk5OCBlZTVmMDE2NWU0ZTNlYjFkYjBkMDk0NGNjYmZmYjVhNmZkYTQ5ODFmIHJlbGVhc2UyMS1tYWludAorMjA5OTkgNGQ2MmEyZmVjOTMwYTJhODg0MDE3N2Q3Y2Q1ZDVmNzU0MTMyMzUwNSBsZWdhY3ktdHJ1bmsKKzIxMDAwIDZhZTYxMjI5MTJkMmVkYjlkNDI1MTBiOGY2OGZlZTMwZjhkYTNkZDkgcmVsZWFzZTIwLW1haW50CisyMTAwMSA5ZWJlODVlNzE1NTA0MTA0YzAwYmNkYjNkZjZlNjlhMWQ2ZmNjZDAxIHJlbGVhc2UyMC1tYWludAorMjEwMDIgYjk5OTc5ZDBmOWU3YzA4MDRkYjQ5Yjc1YzFhNjk2NDUyNTRmNjkxMiBsZWdhY3ktdHJ1bmsKKzIxMDAzIGJkOTdhNGZkYjZmM2M1ZjgyNmQ2NjZlZGNiZGI3NDM1NzM0OTQwNDMgbGVnYWN5LXRydW5rCisyMTAwNCBjMDAzNzMxNzdiYmI2ZDZhODY4YTQ2YWIzNzhjMDI3ZTJiOGM4Y2I5IGxlZ2FjeS10cnVuaworMjEwMDUgZmEyMjU1ZDMxNTAwZTkyZDQ0NzYyZDM2ODAxY2UyOWZjNDhlN2ZmMSByZWxlYXNlMjEtbWFpbnQKKzIxMDA2IGEwMjA4NTg3MWMzZmU0ZmM2NjVhM2QxMTY2NjFlZmE1Y2U0NjE4NmEgbGVnYWN5LXRydW5rCisyMTAwNyBkZjFjNTNhODE1MDI5MTI2NWQ2NzljZDQzZWM1NzNhMTUyNDk2NjBjIGxlZ2FjeS10cnVuaworMjEwMDggYTZmOGIyZmEyZTIwMTgzZTUxMTE5NDJmZWE3YzY3NmJiMjdhMjlmOCBsZWdhY3ktdHJ1bmsKKzIxMDA5IDkxNjE5ZDdkZjU4YjliMDdhZTk0ODFkYmNkZWViMTE1MTJjN2E1YzggbGVnYWN5LXRydW5rCisyMTAxMCA2ZmRjZTc2ZDQwNjY1ZTBkZDYyMzI1MmMwZDI3MDQzM2E3NTc2ZDI1IGRlc2NyLWJyYW5jaAorMjEwMTEgYmYxNmMzY2E1ODBlYzY0Nzc0YmU5ZmZhY2Y0OWYyYmU1OTA4ZWU3YyBkZXNjci1icmFuY2gKKzIxMDEyIDczYTFlOWY3YzgzZjIxNjYxOTYzZTQwM2JjNTRmYTE5ZDI5MTJhY2YgZGVzY3ItYnJhbmNoCisyMTAxMyA4YzQ1YTY0ZWU4MzFiNzg5MmJmYjdiOTA2OTM2MzZlMDAwZjFkMzM2IGRlc2NyLWJyYW5jaAorMjEwMTQgZTkxOTQ3MzE3NmM4MjM0ZGNiNTgxODUyMzUxM2UzNTIxMDY5MTdmMCBkZXNjci1icmFuY2gKKzIxMDE1IGVkNDI1MmJmMDgwYzk3ZTFkODY3OTBlNTAzYzY3MGQwMjcxYjUzZmEgZGVzY3ItYnJhbmNoCisyMTAxNiA0OWYwZmY2ZWI0ZWIxMzVkYzJhNWVjNTQyNmEyMzgyZWVjM2QyODU1IGRlc2NyLWJyYW5jaAorMjEwMTcgYzA3NDMwMjViMjNkYjM4ZjFmMzAzODJkOTkyODU0MTYwY2NlMjhkYSBkZXNjci1icmFuY2gKKzIxMDE4IDU0NjZjY2JiMmY5NzQ5OGViYmIwZjc1OGZhMmRiYzRjMDg1MDMyNmMgZGVzY3ItYnJhbmNoCisyMTAxOSA1YjUwNTZjZjE0ODhjNzVjYzRjM2EzZDhmMzYxOWIwMjQ0NDVmMjY1IGRlc2NyLWJyYW5jaAorMjEwMjAgZmI5M2RmYmQ4MDUyMzU3ZThkODU4NGVmZjg5N2JjZGZlZmYwOWYzZiBsZWdhY3ktdHJ1bmsKKzIxMDIxIGMyZDQ5YTczMjE2NmRiYjFkOTJlOTFkYWI4MmZiZGJlM2I1NTM3ODEgbGVnYWN5LXRydW5rCisyMTAyMiA5NTdmOTQyODY2MGYyMjk2NGQ1MmZhYzE2MGYwYzdhZDAzMjAyY2UxIGxlZ2FjeS10cnVuaworMjEwMjMgM2NiYjg1NzI2ZjZlZDIxNDI2M2Q5ZjNjOGUxMTE1ZDBjMWRiNjhjZSBkZXNjci1icmFuY2gKKzIxMDI0IGUwZjBmN2JjNWRhNzY5NGJhYzcwNWFiMmFlOWJhMGJmOWRlYTgyNDUgZGVzY3ItYnJhbmNoCisyMTAyNSAzYWI2YzQzNGE5Yzg3NTNjMjRhYmZlNTJmZDFlNzAwZjI5MTlkMjlhIGRlc2NyLWJyYW5jaAorMjEwMjYgNjUzMjIxMDM5NTVhMDRkMDkwZjA4N2U5MDE3ZDhlOGNmY2QwMjEwMyBkZXNjci1icmFuY2gKKzIxMDI3IDBkNDZiN2M3MTA1ZTJlM2VlMTE0YmZlMmU5ZjJlMWM2NTE0OGExMDggZGVzY3ItYnJhbmNoCisyMTAyOCBhNzgyNjg0MjQ4NjhhMTkxYWJiNGFiNGMzMGM1M2NkY2Y1NWRkMmFkIGRlc2NyLWJyYW5jaAorMjEwMjkgMGU1MThhNTNlYzViZWFkOWFkYmZjYjhkOTFiODY5NTJjNGZjNGZkOSBsZWdhY3ktdHJ1bmsKKzIxMDMwIGRjYjFjM2JkOGUwZTg5NzY2ZGZlY2U0NzMxOGVkODk5OGFmNjk3NmYgbGVnYWN5LXRydW5rCisyMTAzMSA5NmQxMTIxNTAxM2FiMjMzMGU5OWVkY2MwZmNlOWNmODIzZjNhMDA0IHJlbGVhc2UyMS1tYWludAorMjEwMzIgOTYzMzBjY2M4NzBhOTQ0NDEzMDE0NDI3M2QwZDJhYTczNDk5MmMxNSByZWxlYXNlMjEtbWFpbnQKKzIxMDMzIGVhODMwOGZkMDZmMjNkOWEzOTg4NTRjZTNjY2QwZGFiNDZlMzdiYTggZGVzY3ItYnJhbmNoCisyMTAzNCA4NTkzYjdlMGI2NDU0MTYzZmUzMDgyYzQzNmQ4Yzk4NDNkNTcyZTk0IGRlc2NyLWJyYW5jaAorMjEwMzUgNjU2OWM4NDk5YjE3MGZhN2I1MWQwYjY2NjVkZjE5YzcyYTBiYmJkMiBkZXNjci1icmFuY2gKKzIxMDM2IGU3OWJiNWI4YTVkMGU5YWE1MjRmZDExYTYyMWI3ZTc0ZjBjMjY2NDQgbGVnYWN5LXRydW5rCisyMTAzNyAxYjkyNzAxYTBlZDJkZDVmYjQ3MjNmYTljMjgzYzQxOTMyZWY3YThjIGRlc2NyLWJyYW5jaAorMjEwMzggYjczYzI4MTdjYzFhYzAyMWNjNzIwZjZmODQ5MmJhODJkYTMwZjQ5NyBkZXNjci1icmFuY2gKKzIxMDM5IDE0ZGM3NWE1NjAwYWM1YWJhMjhiZTY2MDFkMWQ4ZGJiM2E3YjNjNjAgbGVnYWN5LXRydW5rCisyMTA0MCA4MWE4ZDE4MzBiNjNhYmM5ODFkYmQyNjNjYzZjOTE5OTE0YzhkMzkxIGxlZ2FjeS10cnVuaworMjEwNDEgNjVhMmUzZThiZjU2ZDEwOTdmNDMwNWU2ODJjMGU4YmU1NzkyYjNhNyBsZWdhY3ktdHJ1bmsKKzIxMDQyIDU4NmZkNzllZjRkOTdjOGQ3NDkxN2QyY2I0ZjBkMTZjODZkZDhiMDIgZGVzY3ItYnJhbmNoCisyMTA0MyAxM2E4ZGNhNGIwNDBhZjg4MDlkYjA4ZjY1NDE2MmQ1OGExMGE3MTcxIGRlc2NyLWJyYW5jaAorMjEwNDQgYjBmYzgzNmYyY2VhZDBiMjBhODBkZDhkZDJmZTcyODAzZGZmMGVhYyBkZXNjci1icmFuY2gKKzIxMDQ1IGU4OTc1NTBiNDc0ODQwZjc2MTZiNTAzZTFhZmIxMWEyZjQzMTQxYzcgbGVnYWN5LXRydW5rCisyMTA0NiBmODQ3NWZhNmJhMzZkYTVjNWJhOGVlODE3MGIzN2RlNTVlY2E0N2EyIGRlc2NyLWJyYW5jaAorMjEwNDcgYzQwMTZhYmQ2YjdmM2VhMWRkNTA1ZDU2Zjg3MTljOTcxZjk2MjE0MSBsZWdhY3ktdHJ1bmsKKzIxMDQ4IGEzYzMyOWY2OWUzYTYwYmU0M2E2MmE4MzAwMTE2Y2FmOTg0ODRmNmUgZGVzY3ItYnJhbmNoCisyMTA0OSAyYjAxN2IyYzhmN2NiNTJmYTZhODU0NjhhNDBlZjg1MmI2NjYyOWI0IGxlZ2FjeS10cnVuaworMjEwNTAgZTY2Y2Y5ZDZhZDQzZWQwNTVmYzkzMTY3MDdkZjU1ZmJmYjI4NzZiNSBsZWdhY3ktdHJ1bmsKKzIxMDUxIDlhMjY4MzJkYTBmOWU2NTc3NTk4NzIzZmNjMmUyODRhNDE4ODhhOGUgZGVzY3ItYnJhbmNoCisyMTA1MiBhMWYzNTc2OTYyNjRiM2NiZWZhZjg1M2E0N2Q2NTM4NzFlYjA3Y2E0IGRlc2NyLWJyYW5jaAorMjEwNTMgOGNhZjIxOTcxZjM3ODc5ZWNlMjhmNTA4NzI2YWJiMDY3NDFkZGQ2NCBkZXNjci1icmFuY2gKKzIxMDU0IDdkZTdkMDY5NGJhODdhNGZmYjRjMzNlNGI1MmY0ZjYwZGI1NWUyNjggbGVnYWN5LXRydW5rCisyMTA1NSBhMjMyYTZjM2ZjOGM3ZGZhODNlMTJmNjczOTNhZDBiOGVhZjI3YmMzIGxlZ2FjeS10cnVuaworMjEwNTYgMTVmNDM4MWNmZjBmMGM2OGJmNGUzN2I0NDBhMGFjZTUwOWVjYmUwMCBsZWdhY3ktdHJ1bmsKKzIxMDU3IGQ5M2I0OTI5OGFmZDZmMTIxZjkyYTljN2U3ZGFjYmUyMjczMjFhZmMgbGVnYWN5LXRydW5rCisyMTA1OCAyZWMwOGQ2YzdkMTIwNDY5NTQ3YTEwODc3ODJiNTEwODYyZTIxOGRjIGxlZ2FjeS10cnVuaworMjEwNTkgOTk5YjEzZGUzOWE0MmRjNzdiNzg0OTUzYzY5NTE5ZDI2NDk0ZjA1ZCBsZWdhY3ktdHJ1bmsKKzIxMDYwIDFjMTgzYWU1YzkzNDkyYmM4ZjJhM2RlZWZmMWVmZTFjZDU2OWU3OTMgbGVnYWN5LXRydW5rCisyMTA2MSA1YTZiODNmNDE1MjdiNzgwYjA2ZjQyOGM3ZTY5MWFkMDk0OTliZjg2IGxlZ2FjeS10cnVuaworMjEwNjIgYmJhYzJhNmE1ZDE2ZmMyNzJiMWE3Y2E2MDdhZDA2NzM3ZjFhMWU5MyBsZWdhY3ktdHJ1bmsKKzIxMDYzIGFjNTQ4OWEyNTQ4ZGU0NjM1N2IwZmQ3NzUxZjA5YzExMmU3YTkxOGEgbGVnYWN5LXRydW5rCisyMTA2NCA4ODlkYjZkNTU1MDYwMWM1MzJiM2VhYjQwYzc0YTMyYTEyNjE4ZDAzIGxlZ2FjeS10cnVuaworMjEwNjUgYmRlMWNmNTc0MGVjNjlmOGI3NDY4Y2RlY2FmMGQyNTAwMTlkNWYxOCBsZWdhY3ktdHJ1bmsKKzIxMDY2IDEwOTkyMTk4YzlkNjdhYTVkZWQyNDY3OWUxMGUzMWY4ZTNkZDViMTQgbGVnYWN5LXRydW5rCisyMTA2NyA2MjQ3MjY1NjgwN2VhOThlNGU2YTBhODc1MzY2ODBjM2U4NWQ5NTg4IGxlZ2FjeS10cnVuaworMjEwNjggOGUxODc3NDBhYTk2YTY4MzEzY2U1YzVhM2MzMzA4OGRmOGQ2NWY3YyBsZWdhY3ktdHJ1bmsKKzIxMDY5IGY5MDFhN2RjNWZiNGNiOGYxNjdlMTc2YjBiMjExZjFhMTdkMDZmZjUgbGVnYWN5LXRydW5rCisyMTA3MCAxZjgzZTQxNTVmY2QxNzJiNDczOTc4MTk0NDQ5YWIyYTU1ODZiMGMxIGxlZ2FjeS10cnVuaworMjEwNzEgN2RlNWQzNzg1NzhjZGUxZDAwNzZiMGEwZWJjNzJiY2QyZTE5NGQzNCByZWxlYXNlMjEtbWFpbnQKKzIxMDcyIGU4NDk0ODg2NzRkYTI2NjE4ZDU0YTdhMmM0ODEyZmVlNzcwYTQyOGEgcmVsZWFzZTIxLW1haW50CisyMTA3MyA0MTBiYmY1ZDk4Zjk3YWEyMzU4MWY4MDI1M2UxM2I5YThmOGYwMWJkIGxlZ2FjeS10cnVuaworMjEwNzQgNzJiMTU3MzFhODc2OWEzZGU0NmU5ZGY3MDdlOWZlODU5MDkzYjM3NiByZWxlYXNlMjEtbWFpbnQKKzIxMDc1IDkwMTkzNzUwY2M4Mzc2YmYzYzgwMWQ1OTBhZmU1ZTkwZmZiMjA2NmUgbGVnYWN5LXRydW5rCisyMTA3NiBmM2JhYjkyOWQ3MGVlMDc3MGY1ZDY4ZmM0N2QzYTJiNmE0NjNkYWZiIGRlc2NyLWJyYW5jaAorMjEwNzcgNjIyODY3ZTRkODMyZmIwM2ExYTFkMjQwNDgxYzZmMmYyNGM1YmEzOSBsZWdhY3ktdHJ1bmsKKzIxMDc4IGFkZDA5NTYzOTg1MzBkZTQ5ZTM1NjU3Mzg5ODc2YzY1OWY5ZTEwMDAgbGVnYWN5LXRydW5rCisyMTA3OSBiYzA1YjBiNWUwNTc4MTMyZGFiNjUyNzRiOGJjOGFkOTE5OGU2YjU5IGxlZ2FjeS10cnVuaworMjEwODAgZmYyZDdjMTgzNzE1MmI2OWUxOTY4MmUwYmQzMzZlMWI1NWZjNTk0MyBsZWdhY3ktdHJ1bmsKKzIxMDgxIDRjY2JiOGU1ZmIyNGNiYzczOTVmZmUxODk0YWFkMjI3MmFjYTJlYjIgcmVsZWFzZTIxLW1haW50CisyMTA4MiBiOGZiZmE1NjljMzQ4MDNiNmM1MGUxMjU3NzYwNTE0MzQ3ZGE2MjdhIGRlc2NyLWJyYW5jaAorMjEwODMgNmI2ZTBiMGRiNGY3NTUxMWM3ZjZmMWVmZTBiNjIxYzY2MGY2ZTllZCBkZXNjci1icmFuY2gKKzIxMDg0IGM5MGJkZThiNjdiOGRjODc1N2JiOTY3ZjRmYmRmZGMwOWJjOGJmNTkgZGVzY3ItYnJhbmNoCisyMTA4NSBkYWJlNzEwMGIyMWYzMDdkOWMxNzBlNzQxZjQ4YTUxYmU0ZjQzM2NmIGRlc2NyLWJyYW5jaAorMjEwODYgNGNjMmFmOGEyZjRlNjYzMGQxZGFkNjVjMDkyZWFhMDk0NTBiNDY3MSBkZXNjci1icmFuY2gKKzIxMDg3IDZmZTU2YTliMzAyMThmOTIwNGQ5NDhjZWQyNTlkNTdjZjJkOTJkYmUgZGVzY3ItYnJhbmNoCisyMTA4OCBkZDA5ZjExZmE0MGRjOTVkZjg1ZjBiNjliMDE5N2ExYzdlMjVmZGQxIGxlZ2FjeS10cnVuaworMjEwODkgNWZjNmQwMjdlODYxMThlZWM3MTFkY2U5Y2FhMzc0NWY3Y2Q1ZjBlMCBsZWdhY3ktdHJ1bmsKKzIxMDkwIGJiY2RiZDhmNDQ2OTk1MWFjMDVlMDA5MmE5MzkyZjU4N2I2OWEwOGYgbGVnYWN5LXRydW5rCisyMTA5MSA3ZTQ1OWZiM2MzMzI5YmUyZWVlYjkzMTNjOTM3ZDQyNzdiYTllODYxIGxlZ2FjeS10cnVuaworMjEwOTIgNTkyMTA5ZjJhNmZkNjk2MDY5ZmVkNjNkMmNkMGM3ZjhjZTVkYmU1NyBsZWdhY3ktdHJ1bmsKKzIxMDkzIDYyNTQ3MzdjYjYyOTY4MDEzMzk5NjVkMzRiYTI4ODA3N2FkMjg5ZmYgbGVnYWN5LXRydW5rCisyMTA5NCA4NmNjZjkzY2M5NTIyODIyZDQ0MWU3ZDdmOTg0MjI2NmUxOTZkNmEzIGxlZ2FjeS10cnVuaworMjEwOTUgMThhMWUwOTM5N2RhYzk1YzZlZmU4YzczNTQ3ODUzMTU3ZWYyMjM4YiByZWxlYXNlMjEtbWFpbnQKKzIxMDk2IDQxMDE2Njc1MDAyZmU0ZDk5ZjI0MGQ5MzhhNjc5MjcxMWFiMjA0MzMgbGVnYWN5LXRydW5rCisyMTA5NyBhMDAxZmNiNzYxNzc5ZGU0NTljZGE4MjM2ZmQ1N2NmYzFmMWE5NzcxIGxlZ2FjeS10cnVuaworMjEwOTggYmQwMDU2ZWUxYTZlNDkwNWYzOTJkMzNjZmEwZWVmMmZiOTAyYWQ0NCBsZWdhY3ktdHJ1bmsKKzIxMDk5IDZlYTM2NmEyYjJhNjM0ZjRjMTUxNjk1NmUxYzJkYTRhYTIwNGQzMGQgbGVnYWN5LXRydW5rCisyMTEwMCAyMzY3YjdhMDAxYTdlN2U2OWE5ZjRhZjY4N2NkODQwOGVkMmQ3ZTM4IGxlZ2FjeS10cnVuaworMjExMDEgN2E5YTY5MjcyOWI0MDM5Y2Y3NDAzMWZlMTZiM2FkOWY2NjI5NGUxNSBsZWdhY3ktdHJ1bmsKKzIxMTAyIGMyZmNhNzdiYmYzYWI4ZDZmYzI3YjFkMmVkZTkzNTNiYjE0MzdmMjQgbGVnYWN5LXRydW5rCisyMTEwMyBkZTdmOWFhMGE2M2E1MjNiZjI3MTY0Yjg0M2E1NThlZmU1MTc2MGJmIHJlbGVhc2UyMC1tYWludAorMjExMDQgZjc0ZTkyYzhlYWMxYTY5ZTk4ZjE3MWU4MjhiNzJiNDMwNzY4ZDA5ZiByZWxlYXNlMjAtbWFpbnQKKzIxMTA1IDAzNzM4NmEyYjI0N2NiZTkzMjBmMDM4N2M2ZGQ4MmM2MjEyOTc5YjEgcmVsZWFzZTIwLW1haW50CisyMTEwNiAxNDIxMjllOWE5ODU2NDkwNjA3NmQ1MDgyYTQzMGNjMWNhYmNkZmIxIHJlbGVhc2UyMC1tYWludAorMjExMDcgOWRkYTBjMTFlMDA2OTlhOTQ0MDI4ZmMxYzAxN2Y2ZGNjMjZlYTViMyBsZWdhY3ktdHJ1bmsKKzIxMTA4IGEzYzliNDE0MGNjNWVjNWJmZjdhM2IzZTFkMTRhN2ZjZDA4MDkwNDYgcmVsZWFzZTIwLW1haW50CisyMTEwOSAwMjI0ODczYzBhYzc0YjAxYjAxMzdkY2QxNTU4MTY0Zjg0ZTk2MWQ5IGxlZ2FjeS10cnVuaworMjExMTAgNWQ2ZmMxOGM0MDA5ODVkYWQ3NDkxNmJhZDQ5ODA2ODQzMjQ4NWQ3NyByZWxlYXNlMjAtbWFpbnQKKzIxMTExIDE1YzA0ZmUyNGQ4NTg2NjJkZjUzMmZlMjBjNTcyMWIzYTNiZjMyNDEgcmVsZWFzZTIwLW1haW50CisyMTExMSA4MzQ1OWNjMTkxYzFjOWM4Y2M2YjA4YWRhOTljMDJmMGFmNmFkNTRmIHJlbGVhc2UyMC1tYWludAorMjExMTMgYzU3OGI3NWFkNjJmZGVkNzBiNjRhYjczNTFmZDRhMjg4Njk1OTdkYSBsZWdhY3ktdHJ1bmsKKzIxMTE0IDhjZjcyYjE4N2IzYWI5ODY2ZThkODQxZGY5MmYxODRhNzYwZTUyODIgbGVnYWN5LXRydW5rCisyMTExNSBiZTJkZGIyNWI2OThiMzlhODc5YzQ2NDUxNjE2YWVjYTliYjJiMWZiIGxlZ2FjeS10cnVuaworMjExMTYgZTIxY2Q0MTM1ZjNkYjFhZjIzYjNlNWY3MTBiMDdkNjM4MDMzZGJhNCBsZWdhY3ktdHJ1bmsKKzIxMTE3IDA5OWFlNDkxODA2OWE1YmI5NTA4MzY0NDg3NjhjMWM1MGNiNGQyMjEgbGVnYWN5LXRydW5rCisyMTExOCA3ZjVkODA0NGY5OTRjMWY1MTQwNjk1M2Q1ODc5M2UyYzA3MTU5YWIyIGRlc2NyLWJyYW5jaAorMjExMTkgYjE0MGI3OGYxNzg1Y2JhODg0ZDViYTVjYjExZmM4ZTAzZTlkYzhiZSBkZXNjci1icmFuY2gKKzIxMTIwIGE2MjMxZjI0ZGJiNmUwYTQ3NGU0ODNmZWUxNWQwMDg1OTczODhiZDMgZGVzY3ItYnJhbmNoCisyMTEyMSA5ZWI0NjlhNDMxNDQxNzY4ZGU4MTExMjEwNWEzNmYxZjYxYmQyOGIzIGxlZ2FjeS10cnVuaworMjExMjIgZTY0YzcwMzFkOTRmY2I3MmE0NDUyYzMyMGMxYjkxYWU1Mjc2YjY4ZSBkZXNjci1icmFuY2gKKzIxMTIzIGE0NzYzYmZlZDlmMGU5MzA3NTUzYjhjMjVjYmVmNTMzZjlmOWEwZDcgbGVnYWN5LXRydW5rCisyMTEyNCAzMWNkMGRiMGYwOWZjZDk5NWQxOTg1ODE0OTA5MjFmOWM2NGIxYzViIGxlZ2FjeS10cnVuaworMjExMjUgMmVjYWY5ZTIxYTA0NmQ2ZmU5MTg0OWI4ZWNkNjUxYWI3YTBjMjllOSBsZWdhY3ktdHJ1bmsKKzIxMTI2IDc1MTdmY2EzMjI2MmNiYWZkMzg5YzljMDIyNDIyMjdmZTg1Yzg2ZTYgcmVsZWFzZTIwLW1haW50CisyMTEyNyA2OTkxMDE5NDk1OTk0NDg0MDEzOGZjMjBjYzk0OWVjNWM3N2U4YzUwIGxlZ2FjeS10cnVuaworMjExMjggYzA2MTZlMDk2NDMwZjIwZDcxMWM0NDlmNjM4NDM1ZDRlYWI0ZTYwNCByZWxlYXNlMjEtbWFpbnQKKzIxMTI5IGU0MDY4MTU3ODJhZmQ0NzFiOGE0YTc1ODg3YzQ0MTk4NjY4YmRlNDkgcmVsZWFzZTIwLW1haW50CisyMTEzMCA0MGQ3OTRiNTA0MWRmMDQxNDcwNTFhMTY3NGMyZjgxMWQ0ZDIyMjQ4IGRlc2NyLWJyYW5jaAorMjExMzEgMDI1MzA3NzdiNTIxOGQ0MWI5Njk2MGZjOWY5NmVhZWZkODEwYWQ5YSBkZXNjci1icmFuY2gKKzIxMTMyIDA1MDU0YmQ3OTU5YjY0NTE1ODlkN2RjMDNmMDRhYjA0NGY4YTQzOGQgZGVzY3ItYnJhbmNoCisyMTEzMyBjNjE2NjU1NzgyZjFhZmMxOTA4NzkwNWY2MTQxYjZhMjE3YjYzYjY4IGRlc2NyLWJyYW5jaAorMjExMzQgYzI5ZjMxMzVhMjBjYjA0NDQ5NTZjYjE1NGVjNTdlYzQ5ZDU3OWFlNSBsZWdhY3ktdHJ1bmsKKzIxMTM1IDMzM2EyYzZlYjc0MzhhNTE3MTVlNWFjODMyYTI4OGJhODg0ZWNkNjYgZGVzY3ItYnJhbmNoCisyMTEzNiAxNjZiN2IzNjU4NTE5M2NhNzg2ZDNmN2Q3NGRlMTViYjUwNzRjMjVkIGxlZ2FjeS10cnVuaworMjExMzcgOTUyMjk3NmQxZTk5NmNjY2IzNTQxMzlmN2YwM2QxMzQ0MmU4OWU2NiBsZWdhY3ktdHJ1bmsKKzIxMTM4IGFjN2RjZjBlNTEwNGFmYTE0MGY0MzdiZTA1YTE2NTRiYzNkMjFjMjAgcmVsZWFzZTIxLW1haW50CisyMTEzOSAxZjEzNjQ4MDY1OTljYTMxZWU4YmQ1MGIxZWYyNTk4ODc4YzQ3YmQyIGxlZ2FjeS10cnVuaworMjExNDAgOWU5ZWRkYWMyNWI4NThmNmZjMGExZWQ5ZGMwMTEzNTZhMWRiNzRlYyBnZW4tYnJhbmNoCisyMTE0MSAyN2RkOWVjMzE2MmNkOGNhYjk0YmQ3MzQwOTRlMjA0NTcwMzUxZWIzIGxlZ2FjeS10cnVuaworMjExNDIgMGFmNmVhZjlmODllZWY0YTlkYWVkMTRkM2YzNTkyZWRjOWI4MzI2YSByZWxlYXNlMjAtbWFpbnQKKzIxMTQzIDM2NDI0NDI2OTUwNjNhOTgxMDkyZWE0ZTk3NzZiOWU1ZGYyMjE2OWEgZ2VuLWJyYW5jaAorMjExNDQgNmFjYmE5ZTQ3NThjYjAxODkwYmUwNjkxNzFmOGRlZmJmY2ExNjYzNyBnZW4tYnJhbmNoCisyMTE0NSBlMzI4MjE4NTQ2YjU5OGJmZTQ2ZjY4OTQ1MmFhM2JmMjhmYTg2MWNjIGxlZ2FjeS10cnVuaworMjExNDYgYjdmMmUyMzEyNjEwZWM0ZmIzNTFkN2RlZjQzYzEwODNjODJiMDAxYyBsZWdhY3ktdHJ1bmsKKzIxMTQ3IDlkNTMzYWU1NzRkMjBkMTRjM2RjYWQyYjZiYzA0MzZiNjQ3MDBmNjMgbGVnYWN5LXRydW5rCisyMTE0OCA4ZWVhMmVmYjM0Y2QxZjE2ZTZjYmY3MTI3Mjc1YzllNTE3MWEyOTY4IGxlZ2FjeS10cnVuaworMjExNDkgODVlM2ZhMWViODM2Yzg4MjIwZWZmNGEwYjc1YWE5NzE3N2QyY2MyNyBsZWdhY3ktdHJ1bmsKKzIxMTUwIGU4ODdkNjg2MmY3N2I0MDgzMGQ3NDdmMWEwNWExNmI0NjkwYWNhM2UgbGVnYWN5LXRydW5rCisyMTE1MSBiNDk5NDVlODA0NGE4MDZmYjJiYTI4YzUwMTY4OGQ1ZmZiZmNkY2JmIGxlZ2FjeS10cnVuaworMjExNTIgZWZmOGRhN2MzZGNiOWJlYjBlODViYmZmODA4NTcyOTJjNzg1MDk0NyBsZWdhY3ktdHJ1bmsKKzIxMTUzIGNhYzIwN2IzYTQzZmQ4YTg5NDY0ZGQyY2UwY2FlNGMzZDIzZmQ4OTkgZGVzY3ItYnJhbmNoCisyMTE1NCA3YTMzOGY1MzdlNDJiYjJhM2QxYWI0YzYwZDEwYTQwMGEzNjUxOTFkIGRlc2NyLWJyYW5jaAorMjExNTUgYTQ0N2ZjOTQ3Mjk5OWExNjM4ODAyNjRmMzU0MThjOTg5YTg1ZDk4NyBkZXNjci1icmFuY2gKKzIxMTU2IDI4YzRiNjZlY2JjNThkYWI0YTM5MTZhNzljYWQ1OWZjZDVmOTgzNDMgZGVzY3ItYnJhbmNoCisyMTE1NyBhN2MyZmZlYmJkMjY2ZmFmYjAxNGU4MTI0OTFkZjUxMWYzOTYwNTYyIHJlbGVhc2UyMS1tYWludAorMjExNTggNGNiMzQzMTRiZDk3MDljMDA1NmY3MzNlYTczMjQ5OTI5OGY2ZDE1NiBsZWdhY3ktdHJ1bmsKKzIxMTU5IDU0MWUwOTVhNmVkNjUxNjkyNWU2NjFmOGI5YmM4YzdmNzFlZTc2YzAgbGVnYWN5LXRydW5rCisyMTE2MCA0MThjYWJjYjc2M2YwYWMyZDU1YjBmYTVkNzZjODE4M2UyZDk4ZWRmIGxlZ2FjeS10cnVuaworMjExNjEgMzU0YTRkZjA5ZTM4NWI4NDkzZTAyZDgzMGU5NWE3YTVjN2E5ZjAwNSBsZWdhY3ktdHJ1bmsKKzIxMTYyIDMxY2I1ZDE3MzExYWI1Mjg5MDkxMWY3MjVlYWE1MWRlMmMyMjFiM2QgbGVnYWN5LXRydW5rCisyMTE2MyAwMTE2ZTQ1OWRhZDJjYmRlNmU5MjI2NGRmMTc3ZGMwNjU2ZjFkODIxIGRlc2NyLWJyYW5jaAorMjExNjQgNGUzMDE5ZGE5MWE5MzY1ZWJhNTE1NzIyYjI4ZDBlODE0MjBiYTFkNiBkZXNjci1icmFuY2gKKzIxMTY1IDIyZmViYTk2NTljZTc5MjBkZDYxMmNkODUzNjJlYzk0MmYzNDFhOTkgZGVzY3ItYnJhbmNoCisyMTE2NiAxMWFjMDJjMDM2OTBkNDE0NGEwYmZlZjUyNWE3ZDQ0ZjVjMzRkNDU5IGRlc2NyLWJyYW5jaAorMjExNjcgOTdhMjA4MjkxY2Q4YmIwODQ5YmQ1NWY4OTU3MWE2OTQ4M2M2NTQ1NiBsZWdhY3ktdHJ1bmsKKzIxMTY4IDQ3YzlkMGNiNmUzMTRkYmI3OTZkOTgxM2IzNDcxMDgwYjYwNjdhMjQgbGVnYWN5LXRydW5rCisyMTE2OSA3NjdjNGIyODIxMGFkZWI0ZWUyOGMzZGFiNmZhNmJlYmMwYTUwYzUxIHJlbGVhc2UyMS1tYWludAorMjExNzAgZGJlODJhOWM2ZjdkNzNmNTk5M2M0NTEwNjM2ODljYjc5OTIzYzliNiBkZXNjci1icmFuY2gKKzIxMTcxIDgwNjQ3YjgyZTFiMmQ4NzQ2YzdjZmI3MWFjYjBlMWVkNTUyYzExMjAgZGVzY3ItYnJhbmNoCisyMTE3MiAwZTdjYWQ1MWNmNjY1MzBlOGE0YWQ3YTc3MWZiNGM4MjFlYTlmNWM5IGxlZ2FjeS10cnVuaworMjExNzMgYTcxZmVlODRiNGU0OTAxYjk1NzI0NDIwYjVlMTg4YmY1NzIzMWE0OSBkZXNjci1icmFuY2gKKzIxMTc0IDhjZDRhM2YwMTk1MjFkOWE3ZDQ3NTYwNjQxMjYyMWEyYzBmOWZiN2EgbGVnYWN5LXRydW5rCisyMTE3NSBiNTFiNGMyYmY1ZjllYWZhODk4ZjAwZTgzYzE5MjgyYjhmM2IyZDhlIGxlZ2FjeS10cnVuaworMjExNzYgMTdiM2VlOWNjNDNmYTJmOTEzNTk4YzNmYmRlMTNkYjAzNzBmZDRjOCBkZXNjci1icmFuY2gKKzIxMTc3IGUxYjMwNjI1YTQ2NzQwODkzM2Q0OGIwNjU0ZDhiZWNkNDY3ZDYyMDcgZGVzY3ItYnJhbmNoCisyMTE3OCAyY2U3MGE4ODNhZjZhN2MwNjBlM2U3NTc5YjkwMGIzY2VlZTAwYTZhIHJlbGVhc2UyMS1tYWludAorMjExNzkgMzFjMTFhYjFhM2U4NTc0ZWE0MmIyZWQ2NGZmNWM1MjFmYjUzYjQ2OSBkZXNjci1icmFuY2gKKzIxMTgwIDA0NjNiOWU1NzA0ZWIyODc4NTdlOGNjMzI2ZDNlZDdmZTlhNzEwOWYgZGVzY3ItYnJhbmNoCisyMTE4MSA3YmM0NzNiMmM2NTQyNDMwNDI3ODRiOGFjYTI2NGNjMDI1Y2NkYzg5IGxlZ2FjeS10cnVuaworMjExODIgMWJjZThiYjQxZGJkM2YwOWQ3MGUwMmY5MGNkODIzMTZmMDk5Yjk2YiBkZXNjci1icmFuY2gKKzIxMTgzIDJlNGM2YmE3ZDA5YzE0ZDEwYjgxNDg3N2M0OGVlOWEwYTZhYmRmMWUgbGVnYWN5LXRydW5rCisyMTE4NCA5Y2U4YTk5NWJmMTJlNTgzZDQ3NDRhNDMzZTJhOGVlYjZiZmIzZWYxIGxlZ2FjeS10cnVuaworMjExODUgMDY3NmVhMmZmODY3YTk4ZGE0MmQ5ZTVkOGZkY2Q0YWFmZDk5MGFkNSBsZWdhY3ktdHJ1bmsKKzIxMTg2IDU0Zjc2MjkzZDkyNjk4NTE1ZDUwMzM3Yzg5MjVkMzQ3OGE5MjVhNzQgbGVnYWN5LXRydW5rCisyMTE4NyA4ZWY4NGI4M2VjMWZhNDM1NTE0Y2IxNWUwZjhlMGI3YWI1NTkxNjljIGxlZ2FjeS10cnVuaworMjExODggMTI2YTY2YjM0MTNjZDJiYmZmNDJhNjdlYjZmODIyYjhmMjE2ZGU5YyBkZXNjci1icmFuY2gKKzIxMTg5IGIxZjYzMjgwYjJjMjk4ZWM5MTE1MThmZWM4NTgxZThhZmNjOGFkNjYgZGVzY3ItYnJhbmNoCisyMTE5MCA2NTFjNjY0MDZiZjgyMTFjMGMxMGJkMGM1ZThlNGYyYWViNGI4MzEzIGRlc2NyLWJyYW5jaAorMjExOTEgZDYzOWExZTFmMWY0OGY4OGZlNDNjMDcxZjE1MDdmYzE2NjA3ZmFiOSBsZWdhY3ktdHJ1bmsKKzIxMTkyIDdjMzQ4OTlhZDUwNjIzZTJjM2I1MWQ3MTBjM2I1NmQ5OGJiOTY3MjQgbGVnYWN5LXRydW5rCisyMTE5MyAwZWMwM2UxYmU1NTg4ZWI3ZWFjZjJjMGQ4OGJkYzU2ODdhYTQ5NTdhIGxlZ2FjeS10cnVuaworMjExOTQgNGQxYzc4NDkzMjIxYWJhYTMyMWE2ZDkwMzRmMTQyYTg3MjI3YTk0MyBsZWdhY3ktdHJ1bmsKKzIxMTk1IGU1YjI3M2U5NWY3NGI4NDk4YzgzYzhhYzM3OWJmYTk1YmEzNDQzNDQgbGVnYWN5LXRydW5rCisyMTE5NiAzMWJkMjVhMmQ4YzViOGQ3YWY3MTg5NTVkMTZjMmFmYmYwNGZiNzMxIGxlZ2FjeS10cnVuaworMjExOTcgNmZiYzVmMjAxYTFmODc2MGNlN2ExNTFlNzNlOWU1OGNkNzA5NmVlMSBsZWdhY3ktdHJ1bmsKKzIxMTk4IGE2NjU3MmFjNzFlN2RjNzg0Yjk1MWE3OTI3MTc3NmNmYzg3YTEyNzAgbGVnYWN5LXRydW5rCisyMTE5OSAwMmFhMTMzZGViNTM4ZTRlODdmMmY0MTBkMmY5OWNmOWNjOWExZDcxIGxlZ2FjeS10cnVuaworMjEyMDAgZjkyNmViMWY1NzcwMWMyMzAxMDcyZDEwN2I5YWVmZGMzOWJhZDBmYyBsZWdhY3ktdHJ1bmsKKzIxMjAxIGVmYjUwNjljYzc0ZmU3MDhjMzhiZjU2MWQzN2FkMGMyZDllOTQ4ZGQgbGVnYWN5LXRydW5rCisyMTIwMiAwYmFkNDJlNTYzMjA0MTVjMmQxMjc1MmIxYjY3ZGMwNGFjODEwN2M4IGxlZ2FjeS10cnVuaworMjEyMDMgY2Y2YTg2NDM4N2QzNzg4MWFkNzI4NTg2NDNmNmZhZmE5N2Y0ZWU4OCBsZWdhY3ktdHJ1bmsKKzIxMjA0IGM1YWM2ZjA1NWM2MjM1YzI0N2EwNGRiMzQ4OTE2Y2JkMmNkMDE3YTggbGVnYWN5LXRydW5rCisyMTIwNSBkM2U0Mzk5ZmUyZjk0MzE2MTVhZGJhYmY2YTQzYjdkZjY0ZWI4ZTc2IGxlZ2FjeS10cnVuaworMjEyMDYgYzYzOGE3YTJmZTc3YjkzMjIyZjA3ZmMwZGZiMjgwZDZmMWQ1MjlmYSBsZWdhY3ktdHJ1bmsKKzIxMjA3IDY3NzFkYWIxZmUzMmZmMzkwODBjNmJlNDQ4NTdlZmRmOGEzZjFiMmMgbGVnYWN5LXRydW5rCisyMTIwOCAzNDBlOTMwMWU4NWIzMjRmYzVjMTU1ODExYmIwZmM5N2M4NDVhMjNmIGxlZ2FjeS10cnVuaworMjEyMDkgMTJkN2Q0ZGI2OWYyZjZmMDUxNmFmZTBiMmQ1MWIxMGQ2OTM1Yjk4YSBsZWdhY3ktdHJ1bmsKKzIxMjEwIDA5YTA4YTFlNDdkNjhhYTc2ZmNmZjZiMDRmMTA3YWExNWM1OTdiMjggcmVsZWFzZTIwLW1haW50CisyMTIxMSBlN2Y3ZWVmMThjOTg2M2NjM2E3NmNjMTg2Njk1Yjk0YzQwMmVjZTBjIHJlbGVhc2UyMC1tYWludAorMjEyMTIgYjczMjQxZTUwNTU2NzBlZTRmNDkyOGJlNDYzMThiMTc5YjAzZjhlNSBsZWdhY3ktdHJ1bmsKKzIxMjEzIGNjNzYzMWZiZjdmOTJlMTNkNGQ0YTRhZTdiYjk2OWE5NTI3OGM5YTkgbGVnYWN5LXRydW5rCisyMTIxNCA4MjYwMDBhNDA4NjY1MjI4YzY3NTAwZGRkNzBiNzMwMGRkNTA2OWY0IGxlZ2FjeS10cnVuaworMjEyMTUgMmYyMWZlYmY2ZDQ2MmI3Zjc0YjVkNjc5YmVjMzk2NDhjNjM2NzgwMyBsZWdhY3ktdHJ1bmsKKzIxMjE2IGY1YWIzNDc5YWNkNGQ1MzJhODJmZWQ4YzgyMzQwMjc1ZjUzZjRiMjQgbGVnYWN5LXRydW5rCisyMTIxNyBjMjU4NzZhNTFmMWI1OTYzMGZkYzBmMDk5ODdkYWFhZDhjYWIxMmQxIGxlZ2FjeS10cnVuaworMjEyMTggYTJlNmZmZjQ3MWIwMjUzMjAwOTY3ZGFkY2ExNDg5OWE4YThlZjllMiBsZWdhY3ktdHJ1bmsKKzIxMjE5IDE1YTI0ZTBiZjk0ZjIyZDEyYTVmODU4YmQxNWI1NTkzY2Q5YzYzNzIgbGVnYWN5LXRydW5rCisyMTIyMCBkMTIyMWZiZGQ4NWQ4Y2RmOTRjZGE1NmQyODU4MDVkZjdkOWQ4YzhhIGxlZ2FjeS10cnVuaworMjEyMjEgYmQzOTkzYzQ5NGExYmVlYTFhN2I2ZWI0MzUxNDIxNjFhMjc5MjYxYSBsZWdhY3ktdHJ1bmsKKzIxMjIyIGQzYjE5NTZlM2RlMGMxM2VjMDRkNmE4NTdhYjg5ZWVmY2FlNjg5YjEgbGVnYWN5LXRydW5rCisyMTIyMyBhZTBmMDljN2MxZTkxMTYwNDhjN2M3Y2MxNTJiOWViZmIzODkyM2M2IGxlZ2FjeS10cnVuaworMjEyMjQgM2E1ODAyN2NhZTRlN2RkZjdkNDYzOTM4NmE2YTQ4MDk4ODhiODdiMCBsZWdhY3ktdHJ1bmsKKzIxMjI1IGE3ODI1NDQxY2FhNGE3NzdhN2VjMDM0Yzg0YzUwYWQ2YzA3Mjg4Y2EgbGVnYWN5LXRydW5rCisyMTIyNiBhNDM4YWJhMmQxMzdiN2E1OTEzMjczNmI1OTdhNTQzYzBkNGVlZDZiIGxlZ2FjeS10cnVuaworMjEyMjcgYWVkYzNlOTIwZGViY2FkYThkMmY4ZTEzZmM4ZmNlMzIxY2QyM2IzNiByZWxlYXNlMjAtbWFpbnQKKzIxMjI4IDhlNWI1MzdmODdhMTkxOGNjMjc1M2E4NjIxZDM5YTlkZDkxMTY1NDAgbGVnYWN5LXRydW5rCisyMTIyOSAxOWJjNjNhODQ0MzkwZTRhODJiNzkxYmU1MjRhMDBiNjkzMTA3YmJmIGxlZ2FjeS10cnVuaworMjEyMzAgNTk2NTMzOTQyOWM5Y2QyMmZlNWIwNTMwMGE2NDZjMzEwM2NhY2IyYSBsZWdhY3ktdHJ1bmsKKzIxMjMxIDk5MGI3M2ZhMDc0Y2RhNGNhYjMxMmViODRlNjY1OWU4MDZlNzc2NzggbGVnYWN5LXRydW5rCisyMTIzMiAzNmU4MjU2NjBhMjQ1MWFjYzhiNmU1NTFlNWM4YmRkOTU5MGY1YzBlIGxlZ2FjeS10cnVuaworMjEyMzMgOWE0Y2FjMmI4YjhmYzk4NjcwMzEyYzhhZDZkODM1M2VlNjQxNWMxMCBsZWdhY3ktdHJ1bmsKKzIxMjM0IDFhNmI4ZjY5ZmVkNjIxODRmYTE3NTZhNzc3ZDhmNDEwYzAzMjQ2OWYgbGVnYWN5LXRydW5rCisyMTIzNSA1ZTQzNTczZjBkZjFmMTlhNzM4OTY0N2QxMDE2YzRjYjFlZDcwNjNlIGxlZ2FjeS10cnVuaworMjEyMzYgZWQzNzQ1ZGE3NDE5MjgwODZjNzRiOTY0NmQyNjBiMDNhMGVkY2YyNCByZWxlYXNlMjAtbWFpbnQKKzIxMjM3IGJlNDJjZTI5NWVkYjUzYTM1OTQ4N2UwNGRhYmNlNTA4NmMxMzkxZDYgcmVsZWFzZTIwLW1haW50CisyMTIzOCA1ODczNmNhOTE0M2MwZjZmNzVmY2QzYjg5MDAzM2M4OGI1MmRhNjRkIHJlbGVhc2UyMS1tYWludAorMjEyMzkgOTAwNTk0M2M3NTRlZTkyMGEwYjY4MmY1NjY3NmFlOWNiMDQxNDFlYSByZWxlYXNlMjEtbWFpbnQKKzIxMjQwIDRhODcyNjc3OWJiYWY3M2EzNmYyYWMxYTMxODZmNGJhMjlmOTdkYTEgcmVsZWFzZTIxLW1haW50CisyMTI0MSAyNTY0MDZiNWNmMGM0ZjRiOGZkMTM4YmIzYmRmZDQ0MmZmZDFmYjExIHJlbGVhc2UyMS1tYWludAorMjEyNDIgNzZjM2ZmNTdlYjZkMDY2ZjIxNDkwNDA0YWQ4Yzc1NGM4MGIxOGY3NCByZWxlYXNlMjAtbWFpbnQKKzIxMjQzIDYyNTNkMTI4YTc4YmY5MmM3NjdmNTBkNzMzOWU4ZDRjYjkzOTQzZDYgbGVnYWN5LXRydW5rCisyMTI0NCBlMzcwOGNiMWUwZDA3Y2I5YzVjY2MxZDAxMGIyMWUyMDcwODQyYzNhIHJlbGVhc2UyMC1tYWludAorMjEyNDUgODI2OTk0OTliMzhlYzFkMzA0MjljOGQyOThjMTFhMWMyYTM4ZWU3YSBsZWdhY3ktdHJ1bmsKKzIxMjQ2IDU0NmM3ODUyYmFjNTVjZDkyMjY3N2EzNzVkM2I5YTlkMTFkYjNhMGQgcmVsZWFzZTIwLW1haW50CisyMTI0NyAwZDRhZDg5ZWQzMmQ4N2VjYWVkYjNlOGE1ZGMxM2IyMDk5MDFkNzI3IHJlbGVhc2UyMC1tYWludAorMjEyNDcgNzNkZTk0YTcyMmQyMDZhNDVjMGI0OWQzMDExYzYyOWVhZDRkNjJiMSByZWxlYXNlMjAtbWFpbnQKKzIxMjQ5IDA3NTdiNmM5OTMwNDE0MzdkMWZiMzAwODQ0NmFiZDU0ODQzYTBlYjEgbGVnYWN5LXRydW5rCisyMTI1MCBmOWQxMjdhYjMyZWM5YWFkMzM3Mjg4MDYwNjRlZTNhMDM2NWFhNjhjIHJlbGVhc2UyMS1tYWludAorMjEyNTEgYjY2NGIwMmMzZTkxY2Y0OWUyZTEyZWVmMGVjODczOTBhMDYyZTMxYSByZWxlYXNlMjEtbWFpbnQKKzIxMjUyIDQwOWFiZjIyNTE4NWQyMWQzNzA0YjkzMTNiZjA0ZTBiNDYxMDliN2QgcmVsZWFzZTIxLW1haW50CisyMTI1MyAwODYxOWJmMTgyOTkwNDIzN2U3YTBjYzlkYThhN2Y5MmVjYzg5MzU2IHJlbGVhc2UyMS1tYWludAorMjEyNTQgZTFkZDQ2MzBlZjNiOTFiYWQ3ZjIxZDU4MWQzOWFlNjk0ODc5ZDE3ZiBsZWdhY3ktdHJ1bmsKKzIxMjU1IDY5OTFkZGFmZTM4MjhhMmRjMThmZWQ1ZDJmOGEzYWQzYThkY2ZlMTMgbGVnYWN5LXRydW5rCisyMTI1NiA2ZWVmMjFlNTIzYjY0NTY5NDkxNDI3ODJiMWY4YzUzZjFlMzY1NjllIGxlZ2FjeS10cnVuaworMjEyNTcgM2E4NzMyYzY3ODk4YzZkYWE0Y2ZhMGFhNWQ0OWUwNDNkYjVhYzc0OSBsZWdhY3ktdHJ1bmsKKzIxMjU4IGFjZDNkYTVkNTYzY2M4MmNmYjA3NDBhNTVjODQ0YzZlYjZhMDI4NDMgcmVsZWFzZTIxLW1haW50CisyMTI1OSA0OTc1MTczZTFhMDJkODJhZWQ4ODljMDczM2Y2YTVlNmNjNzY4OTdhIHJlbGVhc2UyMS1tYWludAorMjEyNjAgMjIwNDA1YzA3MjMyNTkzYTRjZDlhNzEyNzRjMzI4ZGIyZWZiZmYwYSBsZWdhY3ktdHJ1bmsKKzIxMjYxIDgzYzQ3NDhiOTM5MGU4Y2U0MjQ0MGZhMDU4ZjAzMThjOWE3NGM1ZmQgbGVnYWN5LXRydW5rCisyMTI2MiBhYThlMjM4YWIwYWQ3NjM0ZTdkZGQ2N2RhOWYxY2E3OGFhMzM0MWFhIGxlZ2FjeS10cnVuaworMjEyNjMgYTRkYzIxYjQ3NzRkYzk5N2UwNzAzOWUxYmViYWQ3OTExMWFiMzhlNSByZWxlYXNlMjEtbWFpbnQKKzIxMjY0IDdkMmU2ZTFkNjBjZTU4YmE0ZjlkZmYwOWVhZDFlNmI3MGM4MzVjYzEgbGVnYWN5LXRydW5rCisyMTI2NSA0ZWJkMjkyYzk3NWY4MDk4ZjFmNWFiNGE5Y2IyNzU5Yzg3MmE2OGZjIGxlZ2FjeS10cnVuaworMjEyNjYgZjAzNjE4MzczMjNkNmQ2YTQ4Mjc0MzEyYzRiYTFkODNlYjI1NmQxNSBsZWdhY3ktdHJ1bmsKKzIxMjY3IGI4OTNkMTIwNDVjYjQ2MDllYTIyMTM1ZjU3YzJkYjY1ZWJmMTg1OGMgbGVnYWN5LXRydW5rCisyMTI2OCBmOTI2MTkwNGNlYmJjNTU5YTRjZTA0ZWFjNjIyNzE2NmY2NGNhM2IyIGxlZ2FjeS10cnVuaworMjEyNjkgZDkyM2IzYzhiMTUyNjlhY2YyN2M3ZDEwMDE4OGViYzc5MjQ5YjY1MyBsZWdhY3ktdHJ1bmsKKzIxMjcwIGVhZTY2YmYyNDg3ODg4YmQ0NjkxNjYyOGNjZjNkMzU3MGFlNTI3MjYgbGVnYWN5LXRydW5rCisyMTI3MSBmZTQwNzFiZWZmNDE4NjhmOGMwZjQ2OTA0Y2RlMzQzMWM4N2JlYjU5IGxlZ2FjeS10cnVuaworMjEyNzIgZWI1MjQzMjJhMWMzMWM2MzUyOTc5ZDI1NWE1MjE1MjMyNjdhYWU2MyBsZWdhY3ktdHJ1bmsKKzIxMjczIGY4Mjg3ZDg0Yjc1NTE3MTZmNWFjOGMyMWUzNWFkNTUyZDhjZGVlZDYgbGVnYWN5LXRydW5rCisyMTI3NCBmMDI2MDViOGZkYzFlNTk3MTU2MjFmODgxZjVkYjllMDgxZThjYzViIGxlZ2FjeS10cnVuaworMjEyNzUgMDM3YzhiZTUwNWUwNTlkNzc0Yzg3MzQ1ZjUxMTVmMTU4Y2JkMjNmYiBsZWdhY3ktdHJ1bmsKKzIxMjc2IGExZWY0M2E2ZDZlMTMxM2Y0OWE5MTdkYTY2MWY5YmJiY2YwYjg0ZTQgbGVnYWN5LXRydW5rCisyMTI3NyAwNDM5YzgyYThmZjQ3NTYxMzA2NWFiZjY0NGZkNjljNTRlYTY3Yjk3IGxlZ2FjeS10cnVuaworMjEyNzggNDUxNzA5M2ViOTllYWNiYThhZDA4YjEyZWYzZjBmMGE5NTFmNGIzMCBsZWdhY3ktdHJ1bmsKKzIxMjc5IGU0ZDY1NWFlOTE0MGUzMTNmOTk1MzM5M2Q5YmY5NzRkOWI0ZTI2YzMgbGVnYWN5LXRydW5rCisyMTI4MCA0NzcxN2U1NjY3ZWIxNWYxODRlMGE3NzJkMzJiNWQ3YzhhZjVmZjU4IGxlZ2FjeS10cnVuaworMjEyODEgMjRjMjliMzcxNTEwMmNkYjM1NjlmMGI2YTQ4YzBjMmMyYjBlZTE2MSBsZWdhY3ktdHJ1bmsKKzIxMjgyIDlmYTU0YmQ3YTdjYjU2ZWM4ZTk0ZGQ0NDAzMDhkZjIyMzQxNzQxNmMgbGVnYWN5LXRydW5rCisyMTI4MyBjNGRiMDliODc0MjQyMzBkMjJlOWZmZWVmZGYzZTVjNGJiN2IzMDk5IGxlZ2FjeS10cnVuaworMjEyODQgZTNjZjMzNDhmZWNhNTMwYWY0ODNkZWRjNzRhNzQ1OGQxZjg4YTJjMSBsZWdhY3ktdHJ1bmsKKzIxMjg1IGYxYjVmYmVlY2MwZTk5MjE3MTQ3MmQ5ZThlZmUxMjdiZGY1ZjhkMmQgbGVnYWN5LXRydW5rCisyMTI4NiA0ODI2YTZjZGFmYzQwZGUyMmFjYmVjZTQzN2QwMGYzOGZmNjZmMTY2IGxlZ2FjeS10cnVuaworMjEyODcgNDVkZTFhYzJhMzc2N2I2ODVjYTBiYTEwOGQ1OGU0YThmNzU5NTMxMiBsZWdhY3ktdHJ1bmsKKzIxMjg4IDVkM2U3Zjk5Y2Y1MmNmNDZkZmM5YTU4MWJmZDc4YWQ0YmM5YmZmNjQgbGVnYWN5LXRydW5rCisyMTI4OSAwNjViMTdmYzBkMmVlMDZmNjUxMjhiNWFiZWIyNjIxY2QzZWVmMTcwIGxlZ2FjeS10cnVuaworMjEyOTAgOWYxZGZhNzg2YmE2NTVlZGExMjdmMWZlNWM2Mjg4OWY2YTQ4ZGU5MiBsZWdhY3ktdHJ1bmsKKzIxMjkxIDA1MTRiMTZjMWE2ODNmM2JkNTQ3YWNkOWZhMGQ0NjYzYzFiZWI3MTEgbGVnYWN5LXRydW5rCisyMTI5MiBmYjdjNDRhZTRhNjI3N2Q0MmI2NjMxZmU2MGY2YWFiNjZhN2Y0NGI5IGxlZ2FjeS10cnVuaworMjEyOTMgZDUwZDRmODFhYTRjNWE3YzAwZWRmOTA0NTMzYzU4OTVkYWYwMDE0ZiBsZWdhY3ktdHJ1bmsKKzIxMjk0IDM1OGNiNzRjMDg2NGY5YThiNzkzYTY3MWRmMmEzNmFhNDFkNmUzYTUgbGVnYWN5LXRydW5rCisyMTI5NSA1N2RkMTNiNmM4MDMxMGQ0NDNiMjBmZjU1Y2NmZDYzZjI4YjM4ZjQwIGxlZ2FjeS10cnVuaworMjEyOTYgMzA5ZmIwMjZjODRlY2Q1N2ZkMjU3MDk1ZTdjODM1ZGIwMjI5NzM4ZiBsZWdhY3ktdHJ1bmsKKzIxMjk3IDFhMmE5MTRiMjQ2YzIyYzZmMTMxZWJjYTA0ZjRlOGQxOTIxNThiMmMgbGVnYWN5LXRydW5rCisyMTI5OCBjODhmNDE0ODYwNWZkNTJjZTBlYjIwNjI2MzRkNzk4OTQxZjYyOWE5IGxlZ2FjeS10cnVuaworMjEyOTkgNmIwYTgxNTdiZTNiNjgwNmYxM2UwYTMyYjA0ZmVlYWMwYjdkN2FiNiBsZWdhY3ktdHJ1bmsKKzIxMzAwIDQxNDkxZDE5Njc0OGNkNGRmZjkwMzIyOWYwZDY1MTFkMjU3NmU0N2EgbGVnYWN5LXRydW5rCisyMTMwMSAzZDkxNjRkOTVlNzg5ZjcxOGQ2NzlkODI2MTgxMTc4MjdmNWYzNDY2IGxlZ2FjeS10cnVuaworMjEzMDIgYTQ2ZTM1YWNmOWMxYzY0YmE5MDE2M2JhYzBlZDRlY2Q5YjZmMTg1NyBsZWdhY3ktdHJ1bmsKKzIxMzAzIDE2ZTRlYjQyNzc5NzhmNjZiZThiNDY2Y2VlNTQ4Y2U5NTNlNzUzODIgbGVnYWN5LXRydW5rCisyMTMwNCA3OGJmYmUyZTcxOWNiM2JkOTAzNTRkNDg0OTc2NmQxMGU5NDcyYTk3IGxlZ2FjeS10cnVuaworMjEzMDUgNDI2ZTBjNzIxYmJmNmViMjBhNTI5N2NiZTA3NGNkMTgxOTQxZDBmOSBsZWdhY3ktdHJ1bmsKKzIxMzA2IGViZjYxYjViNWFlYmJjYTcxMWNjNmNhNzU0ZmRhMjExNTBjNGFlYzYgdW5sYWJlbGVkLTEuMS4xCisyMTMwOCBmZDgzMjEyZWI4ZjI0ZWZkNjQ5NGM4OWE0MzI2MjVjNTg1N2VmNDA1IGxlZ2FjeS10cnVuaworMjEzMDkgZGVlNDk4OTYxYmZlM2M5MGZjNzU5ZTAyYWI0YzRhOGRkOGQzZDdmMiBsZWdhY3ktdHJ1bmsKKzIxMzEwIDRhZDg0MmY5ZDQzMTQ3YTgwMThiYzBmOGIxZDdkOWEzMTllZTdjNzcgcmVsZWFzZTIxLW1haW50CisyMTMxMSA0NDEyMmU3YjQ5Y2YyYzk0NzNlNjhkYTIxM2RjYTg5MjVmYzQ5YzAyIGxlZ2FjeS10cnVuaworMjEzMTIgOWUzMjZjOWU2YmU1OTQyMTAxYzEwM2Q2YThjNjdkNTU0NTZkZmEyNSBsZWdhY3ktdHJ1bmsKKzIxMzEzIDg2ZGFiMGQ0M2I3MzEyZjBiODg3ZTU3NjkxYzRmZTc4ZDU4N2U3MzggbGVnYWN5LXRydW5rCisyMTMxNCA5NzM0Zjg5NWY0ZmJlZDk4YjQ3ZmE2MmRkMTI2Njk4ZjBmNDdkOTJhIGxlZ2FjeS10cnVuaworMjEzMTUgZDJjOTUwMDMyMzkzMDAxZjdiZDIzMmZjOGE4ZmU0NWQxYjI2NTY1NCBsZWdhY3ktdHJ1bmsKKzIxMzE2IDdjOGRhZDVmMmQ5NjZkYzIxZGJkZGQ3MGRkYjkwZjkxZTI5YjdkMDYgbGVnYWN5LXRydW5rCisyMTMxNyBiNTY1OGEyMzBlMWE1Mjc2MDQ1ZTI3YmQ0NmEzZTlhYzEzZmY4ZjM1IGxlZ2FjeS10cnVuaworMjEzMTggOGI3ZmY0NGI0NjY5NTk3YTY0N2Y0ODA2MjNkMzVkYThmNjg3YWM5MCBsZWdhY3ktdHJ1bmsKKzIxMzE5IDA2MzJkY2Q2OWVhM2FmMTlhNjk4MzU2NzRiNGQ2NDVhNzE0NmI2NDIgbGVnYWN5LXRydW5rCisyMTMyMCBlM2JhMzczOTg1NWFkMWZmNzdkODg0YmQ3ZjU3YmRjMDg5ZmMzZTQ5IGxlZ2FjeS10cnVuaworMjEzMjEgZjM4OTIzY2UzYzZiMGY0YWRiYTMxNjdiZjI0OTI1ODQ2N2Y3Zjg1YiBsZWdhY3ktdHJ1bmsKKzIxMzIyIDFmMWQyYzUwYjNjNzg0ODExYzc0YTEzYTRjNjZjZDY1ODg4MzQ4OTggbGVnYWN5LXRydW5rCisyMTMyMyBmN2MwMWI5MzhhMTczOGFkNzUyNWYxNDExMjVhMGYxODZhYTA5NDA5IGxlZ2FjeS10cnVuaworMjEzMjQgMDQzZTIwMDE3NGYxYjdlOWMzNGY0ZWQ2MWYxZDJjOGVlYzY5ODJjOSBsZWdhY3ktdHJ1bmsKKzIxMzI1IGUzMWEzNDkxNjZmNGUwY2QxZTI1ZTE5OTgwZWZhMjdjMzAxM2I0MmQgZGVzY3ItYnJhbmNoCisyMTMyNiBiYzA1YTk1MjQyYTM3ODAzYTUxYmRlNTI5MmExZDliZGJkMTkzMjVkIGxlZ2FjeS10cnVuaworMjEzMjcgZjYwNzhhMzBmNzBhMjgwZWE2ZWI1ODRlMjMzYjllYzgzNmE2ODc2ZCBsZWdhY3ktdHJ1bmsKKzIxMzI4IDY4MDBiY2NlMDQ1NTViOWZhM2ZlMjRmMzQwNTA5NWFlNjUyNzZhYzUgbGVnYWN5LXRydW5rCisyMTMyOSA0ZmEzMWVjYTNiZTRhNTRkOGU5MTdkMzUwODBiNDFjY2QzMTM2ZDA5IGxlZ2FjeS10cnVuaworMjEzMzAgMjk1YWNjMDc1NWYwYzdmZWM4YTFkOWFkZWM1MDJhMWZlYTM5ZTFiYiBsZWdhY3ktdHJ1bmsKKzIxMzMxIDU1ZjNhMDRlMDY0MTFlY2ZmMjc2NWQwN2YwM2NkOWE3MDQzOWFkODEgbGVnYWN5LXRydW5rCisyMTMzMiBmZmJiOWM5MThhYzA0NmIwY2U2YzViYjZiN2IxNDQwYjM0ODY2ZjcwIGxlZ2FjeS10cnVuaworMjEzMzMgMDM0NGU0YWM3MGIwYzhmOTU1ZTIxNWYwM2Q2NjRkNTJkYzlkNmRiNSBsZWdhY3ktdHJ1bmsKKzIxMzM0IGIxNDUyMWZkOGUzOTE2MjFhMzFkMGZiZmNiMTM1ZmVkMWUxMWM4MGEgbGVnYWN5LXRydW5rCisyMTMzNSAyMGUzYTZlMTBjMjQ4ZmUwM2NjYmNkZjQ1MmNkN2Q3MDdhZjcwNWM1IGxlZ2FjeS10cnVuaworMjEzMzYgMjJmODVjNmE2NTIwYTY5NThiM2E5MTE4NWM4Y2Q5NWU1YjAyMzllYiBsZWdhY3ktdHJ1bmsKKzIxMzM3IDkzMjkwM2M3ZDA1NGIwMmJiODk3MGNlMmYyMjE0Zjk3MTI2MDE4ZWQgbGVnYWN5LXRydW5rCisyMTMzOCA5ODIxNjNjNGU5ZDJiZTBhMDMyZjZlNjE4NTFjODM4OWUwMjJiMzA5IGxlZ2FjeS10cnVuaworMjEzMzkgNjhjMTJkNTU1NmRmNzE2YmQwNDZjZGY4ODMxNTAwNzM0NjJmYWQ3YSBsZWdhY3ktdHJ1bmsKKzIxMzQwIDBmZjc2ZDc4MWQyYzYxMThkNjk4MjE5ODljNGRlNDk0OWIyNmYxZDIgcmVsZWFzZTIxLW1haW50CisyMTM0MSBmZjhlMTgzYWU1OGY5NDFlZTI2OTY2NTI2MTI0ZTQ0ZmNlMjRhOTVhIHJlbGVhc2UyMS1tYWludAorMjEzNDIgN2NkNmU1MTVmZDMwYTY5MTYxNzk0MWFjNmUxMWY0YTZiYTY0Y2NiNSByZWxlYXNlMjEtbWFpbnQKKzIxMzQzIDMxNDg0MmRjZDUyZTk0ZTc0MWVjNzljZTkyMmVhMmE2YWZlNzM4NzIgcmVsZWFzZTIxLW1haW50CisyMTM0NCA4OTNiYTFmMDM3OGExZjY0NGJjMDVhZDRjNDhiNjBiNDhmM2RkNzE0IHJlbGVhc2UyMS1tYWludAorMjEzNDUgNjdjODQxZDgyMWUwNzRhOWI3ZjRjZTcxNDAxYjU1ZDEzNTIyZDA1NyByZWxlYXNlMjEtbWFpbnQKKzIxMzQ2IDkwOTg0MTU5NzFkMDE3MDFiYzNmMmE5OWNjMjcyNDFkMjJiOWM3ODggcmVsZWFzZTIxLW1haW50CisyMTM0NyBiZTk2NzFlNjFmNGE2MDg2N2E0ZmYxMWQwMWE4YmVlYzJhZjdkMzBmIHJlbGVhc2UyMS1tYWludAorMjEzNDggM2E2YTJlNTlkZTAzYzM3MWZmMzlmODAyNjM4MjI5YWFkZjExNjliNSByZWxlYXNlMjEtbWFpbnQKKzIxMzQ5IGFjMDAyN2UyYjNiN2E0ZmQzZjJiMDA0ZjU1ZWU3NmUzY2U0OTViMjUgcmVsZWFzZTIxLW1haW50CisyMTM1MCBlODY1MGQ3NWU1YTQ1NGM4OGM1MDZkYjI2NTYyYjk1ZTRmMGI1MzA1IHJlbGVhc2UyMS1tYWludAorMjEzNTEgNzVjMWY5YzNmMGQxZjdiODMwNmE4NjczNWZjY2ExMDA5NjNjY2IyNyBsZWdhY3ktdHJ1bmsKKzIxMzUyIDljMmJjM2U0ZGY3MzgzNzFmYTk3NDBmODdkZTU5MjM2NDJjYTM4N2IgcmVsZWFzZTIxLW1haW50CisyMTM1MyBkNTJlNjM1ZTIwNWY4NzYzNDM0YWJlNzU4ODJlNDUzZTE5MDNiYTE3IHJlbGVhc2UyMS1tYWludAorMjEzNTQgNmNlYzc2MWRmMmMzNGFlMTk4YTU5NDM1ZjIzMjIzZGFiYjU2OWQ5YSByZWxlYXNlMjEtbWFpbnQKKzIxMzU1IGZhNGE3N2U0MjRkZGIzNWU4OTMxMTM3NDVmZWYyYjM4NTQyMDNlMDQgcmVsZWFzZTIxLW1haW50CisyMTM1NiAwNzFjOTU3MjIxZWNjNTlkODU1NDVhMjA5NjBjMmU3ZDUwMTZlMDk1IHJlbGVhc2UyMS1tYWludAorMjEzNTcgYzgyM2VjNDdkZjQ5NWU1OGNmMTczODUxM2YwMzA0NTdhZDc3ZTQwNSByZWxlYXNlMjEtbWFpbnQKKzIxMzU4IDFhYTU5MWU0MTgxNTQ1YzNiZGM4NTA5ODM0MWU1NDdjMjQ0MzU5NmYgcmVsZWFzZTIxLW1haW50CisyMTM1OSAxNDBjYjI0NmI4NjRhZWEwM2Y1YWI2N2UxZWEwNjg3MDc0NThlNzI3IHJlbGVhc2UyMS1tYWludAorMjEzNjAgMTU5YWJmYzhiMWJjNTFiZmM5MmQxNmEwYmRkNjhhMDU3NjUwOTRjZSByZWxlYXNlMjEtbWFpbnQKKzIxMzYxIDBjOTc4NzI4ZWJhZmVjODczMmQ4ODljNDNmMGVkYTdmNWM5ZmExMDMgcmVsZWFzZTIxLW1haW50CisyMTM2MiAwZDI4NzQzNDE0NGI1OWMyYzFlNzZmNGNiZDJjNDA1OTE3NzkwNzgwIHJlbGVhc2UyMS1tYWludAorMjEzNjMgY2RhNmNhOWRmZDU5MGQ0OWY4MTllMWZhN2NlMzc0NmE4YWE5OTVlZCBsZWdhY3ktdHJ1bmsKKzIxMzY0IDNiYTdhMzU4Y2UwMjg4NWFmNGQ1YTNiNWIyZWQ2NTgyNDhkM2U0OTMgbGVnYWN5LXRydW5rCisyMTM2NSBmYjM1YjNhMjI2MDQ2MjIxZjdiN2QzNGEyYjY2NWI0M2JhMzYyOTFhIGxlZ2FjeS10cnVuaworMjEzNjYgZTQyN2FmYjU2MzdmMDhjMWMyNDBlZmVhZTE5NTJiMzI5MDlhMGZkZSBsZWdhY3ktdHJ1bmsKKzIxMzY3IDkzYmRjNWVjZTFiZjY5ODdiNjE3Yjg5Y2FiNGNmMjU5YTZhZDc3YjAgbGVnYWN5LXRydW5rCisyMTM2OCBlNDUyN2Q0NWU5NDJkMWM5NWY2MjBlZTE5NjFiZDM1YjJiYWY4MzY2IGxlZ2FjeS10cnVuaworMjEzNjkgZjk5NWM0ZjI1MTIwMDhiM2E1YTY0Yzk5YzlkNGUzY2IzMmNmZmQ4NiBsZWdhY3ktdHJ1bmsKKzIxMzcwIGQwMTRiNTIyNjkwMGQ3MzMyMTE5YjY4ZmEzODdjYmVhYWM3YTIzNTIgbGVnYWN5LXRydW5rCisyMTM3MSBiZjkzNmM1Mjk2MzUzYzI2OTRjYTNlZmM1Y2RjNzAyMDM4MzRmYzlkIGxlZ2FjeS10cnVuaworMjEzNzIgNDlhY2M4YWM2MGMyMzI0MTVkOWJkNTdkYmNiZWI0NjIyMWI4N2JmNyBsZWdhY3ktdHJ1bmsKKzIxMzczIDQxMjQzY2I0ZWEwNWQ3NzcxMmE1NDZjODk2NDUxODA1NDU0ODRjNTYgbGVnYWN5LXRydW5rCisyMTM3NCA5NzZiMGFlNGY1MjdjMWExZTc1YzViNWFjNDM1MTIzMWRhZWJlZTEyIGRlc2NyLWJyYW5jaAorMjEzNzUgM2YwYmRkNGFlNjg0MDBmNjQ4ODdjMDg2NmMzM2I2NWEwMThkYjVhOSBkZXNjci1icmFuY2gKKzIxMzc2IDc1NGRlYjg2ODIwZTVmNWNhOGNmYmE2MGYyNGYyYTM5OTUwYzA2YmQgZGVzY3ItYnJhbmNoCisyMTM3NyA2Y2EzZGQ4MmNiMDdlZDQzNTVhYjViMjMyMmRhYWQ1OGI0ZDNmMDM3IGRlc2NyLWJyYW5jaAorMjEzNzggMDRhNjRkMmQ4YjJkMjA1Nzg5MDVjNTdkY2VjNDYzMGFkNDUyYjM1OCBkZXNjci1icmFuY2gKKzIxMzc5IDAyMjZkMDZlM2VmZjU5Mjc0OTBlYTdjZTY3NThjMDQ2YjlkNTc4ZmYgZGVzY3ItYnJhbmNoCisyMTM4MCA3ZWY2NjJhZWQ5ZGU0ZTBhNjdhNTljYzI0MzhjNjFhNzc1NzM1ODcwIGRlc2NyLWJyYW5jaAorMjEzODEgZjczMDI5YzcxYjBkZjA5ZWUwNzk1NTkyMTFiNGE0MDZhOTRlZjc3OSBkZXNjci1icmFuY2gKKzIxMzgyIDJkMGI2OWE2N2Y2OTRjNjViMzliNWYzN2UyZTBmMDliMjA4MTQzMDYgZGVzY3ItYnJhbmNoCisyMTM4MyA0MDVlYWJhMzZiMmZjODYyZWMyYmE3YTRkN2VhZjllYjI4Y2NhMjJmIGRlc2NyLWJyYW5jaAorMjEzODQgMjc4MzliYTdlYzIyZWQ0OWUyYzMxNGY5MTYzYWJkNjlhNTk0YmM1MyBkZXNjci1icmFuY2gKKzIxMzg1IDg1ZGI5ODlmNmE3M2M2Y2NjNTZhYzQzOWRiNjhiNGU4ZjVhOTMyYTIgbGVnYWN5LXRydW5rCisyMTM4NiA2YTE2MzAxMTc4MDUxNjdlYWI5YzA4ZDQ2Y2QzYTlmOTc0NTA4OGY3IGxlZ2FjeS10cnVuaworMjEzODcgNzk0NTgyZmMwNjIzZTNiOTU4NzdhZDhmZDVkZWFmMTUzNTIxY2IzMCBsZWdhY3ktdHJ1bmsKKzIxMzg4IGMyYTYwZGU5MWQyYzcxMzgxM2YzY2QyMjEyNzVlZThlMDI0ZWIwNTcgbGVnYWN5LXRydW5rCisyMTM4OSBlZGFkZmEyODM1OWY4NTI1MzAwZGFjYjQzMDQ0MDFhMGZkMjg5NDE3IGRlc2NyLWJyYW5jaAorMjEzOTAgNTg0NjkyMDJlZThkOGIxYjVjOTdkMWQ1ZDg1YmFlNmY0MDEyYWJjZiBkZXNjci1icmFuY2gKKzIxMzkxIGZlNjMzNTM0ZjQ0Nzg2Mzc1NDdhMjc0NzhiOWMzNjk2NjYzNTIxMzAgZGVzY3ItYnJhbmNoCisyMTM5MiBhMTJlYzg4NzY1MTVjMzdlNzYzOTZiNmFjNTdhYzU3NmQ3ZjQyZjk5IGRlc2NyLWJyYW5jaAorMjEzOTMgNTY2OGE4NTUwYmU0NTQ1YjRiZTRkMjE1M2NkODllMjk3M2JlNjk4MCBsZWdhY3ktdHJ1bmsKKzIxMzk0IGU5MGZjMzRkNzNkMDBmYTIyYTFiNTJhYWY1OTVhZDMzOTlhMjY4NjIgcmVsZWFzZTIxLW1haW50CisyMTM5NSBlOGRjNzMzODY3MDYyYTE0OWFhMTI3NzMyODBmOTU3YWI3NzRiYjM5IHJlbGVhc2UyMS1tYWludAorMjEzOTYgMGZkYzI3NzllOGQ0M2M0Y2Q3ZWZjMmIyNmI2YWNmZTMyOTlmNzBiMiBkZXNjci1icmFuY2gKKzIxMzk3IDhkYjk0MzY3ZmFlMWM4MDgwNzBiMWMxZmMyMTE5ZjU0MDA3YjU5ODUgZGVzY3ItYnJhbmNoCisyMTM5OCBiM2JhMGY0OGFkYzRjZTgwNWI1MTZlM2RmY2RmODdmYmNiMTQ0N2RkIGRlc2NyLWJyYW5jaAorMjEzOTkgMTE2NjAxMWE5Y2ZjYTk4MmUwMzAyODNkNTJmNjIzMmZlOWNiYmUwMSBkZXNjci1icmFuY2gKKzIxNDAwIGY3MGIyZDYzZjMwOWE4ZTI2MTFmNjUxYWI4MjdkYjY0OGEzNzY0MTAgbGVnYWN5LXRydW5rCisyMTQwMSBkMzJmZTQ4ZmJiOTY4ZDcwYzEwMGU2ZGViN2MyZWYzODc1MjkyYjIwIHJlbGVhc2UyMS1tYWludAorMjE0MDIgMjY0ZWQ1NWRlYzZlMWFkMzU0MTljZjlkZDBiYjEzNjQ2YjM0MDVhNyByZWxlYXNlMjEtbWFpbnQKKzIxNDAzIDQ0OWRhODU3ZGNlNTk0NDFhOTFmZDI3ZTIwZjdlMzNmZGRmNjU2ZjkgbGVnYWN5LXRydW5rCisyMTQwNCBjMDI5Yjc0MzMyZDJhYWZjYmJjMGNkODA3MWQ1NDJmYjZiMTE1YzU1IGRlc2NyLWJyYW5jaAorMjE0MDUgZDJjOTk2M2U0MjkxNTU1NjgxN2MxYmRjNmI2ZWI1OWQ3YTlkYTZjYSBkZXNjci1icmFuY2gKKzIxNDA2IDFkYTcyNGNlZTIyZDNmNjU1OWNkYmEwMWQxMjdlZGU5MWMwZDNiNzggZGVzY3ItYnJhbmNoCisyMTQwNyA1YTc4NDEzNDBkYzdjMWM5MzBkMWQ1OTg0MzVmMjI5Y2I4MjllODQ0IGRlc2NyLWJyYW5jaAorMjE0MDggMDhhMmMyZTc5NGVmZGU2Yzk0MWM4YTYxNTNmMTlmZjkxMWNiMzZlZiBkZXNjci1icmFuY2gKKzIxNDA5IDAyMDBjZDIyNDkyZWMyNjA5Y2YxNGZkNDA2MzA0MjM5OGNkMTJmZjIgbGVnYWN5LXRydW5rCisyMTQxMCA0YmFiOWVjZjNlMDVlMmY2NjhmZjBiZmZiMGZlZjEwNmE3YTlmYzU2IHJlbGVhc2UyMS1tYWludAorMjE0MTEgMTczMzA0MjljZGZlYjU4MDhiMDgxYjgzY2VlYjk3N2YyYzJmNDM1MSByZWxlYXNlMjEtbWFpbnQKKzIxNDEyIDc5OGI1ZTZiNDkxNWYwZGU5NGVhNjI4MzE5OTMxM2FhYjYzYTQyYmQgbGVnYWN5LXRydW5rCisyMTQxMyA1NTk2NTA0YWQ0OWFmYjBhNWNmYTAzNzU2N2M5ZWY2OWE0NWFjZjI2IGRlc2NyLWJyYW5jaAorMjE0MTQgZTU4Nzk5ZWVmYTM5NzgxYzAxYjg4ZGJjYWI5MjA0MTA3OWViOTFhNyBkZXNjci1icmFuY2gKKzIxNDE1IDI3Yjg2NjUxNGM5ZWJkY2ZkMmEwNjgwODUwN2U4NDM0MDA0MjQyMDIgbGVnYWN5LXRydW5rCisyMTQxNiAyNTEzYmMxZGIxMmZlZGFhNDMwOTgyYzI4ZjFiNTE4ZTU1MDVmOTRlIHJlbGVhc2UyMS1tYWludAorMjE0MTcgNTIwZTFmNDAxMDFhYTAxZDM4MWI0MjA4MDZhNDEzMzM1OTVmZDFiNiBkZXNjci1icmFuY2gKKzIxNDE4IDg5MzdkMjM0YjJhOGQ2NTJmYzk1YjYwM2UzYTUzZjI1NTA4NGQxYzkgZGVzY3ItYnJhbmNoCisyMTQxOSBjNjcyM2NkNTU0NThiMjQ4ZGE3ODBjNTFjMTJjNzEzYTA0Zjc4Y2FjIGRlc2NyLWJyYW5jaAorMjE0MjAgNjUwZjcwMDRlNmQzOWFhMzM2Mjc0NmQzZmE2ZDQwNDU0MTI3MWZmYyBkZXNjci1icmFuY2gKKzIxNDIxIDIzYmIzZjQ5Y2I5NDI0OTgzYmRiYWFmYzM5YmE5YTNmZjg4M2JkMDYgZGVzY3ItYnJhbmNoCisyMTQyMiA0NGE4N2MzMDBmMmJhNGYzYTBmODRjYjQzYTE4MjIxMzY2MzdiNjgxIGxlZ2FjeS10cnVuaworMjE0MjMgM2VkYTYyMzFlMWMyNTg0OTA4YTQ4MTQxYTBlMTdlMmZjODgyMmQzNCBsZWdhY3ktdHJ1bmsKKzIxNDI0IGQyM2Y5OTMxYjAzMzU5YTg1ZmNmMmMyOTdjOGUzM2ZmODIwODQ0NjcgZGVzY3ItYnJhbmNoCisyMTQyNSA0ZTI2YjQxZDJmM2RiY2I2ZTc0YzQ0ODgwYzcyNDVhYzJlZWM3YjFiIGRlc2NyLWJyYW5jaAorMjE0MjYgOWRlNjU2MDA0MjBiNjA3MTgzNDFmYmI5Y2FjMzRlNzM2MmY2N2Q2YSBkZXNjci1icmFuY2gKKzIxNDI3IDljNThkZGM0NzE5NWFkODMzMTE4MWU5ZTk3MjRkNjMwZmI2YTYwYmMgbGVnYWN5LXRydW5rCisyMTQyOCBiZTA5NmJiNGUzZjIyN2E3NDQ0MzNhMzQyYjJkMzVkZDY3NDUzZTlmIGxlZ2FjeS10cnVuaworMjE0MjkgOTg1NTZjZGZlNzE2OTRlYjVjMGVhOGI3MDMwNmVjY2IwMDljMTAyNSBsZWdhY3ktdHJ1bmsKKzIxNDMwIGE4MGUwZDM5ZjEwYjI3ZmE4YWQ0ZTk1MWM2MGRhM2QwMjkyYWI0NDQgbGVnYWN5LXRydW5rCisyMTQzMSBmYTNhNDIwN2Q5NTcwODQ3NTJjZDVhZDNkM2NmOTJjNTEwMDU5ODEzIHJlbGVhc2UyMS1tYWludAorMjE0MzIgNTY2NTJlNjg0NzM3YjlkYjJmYzUyZTBkZTBkZjUzZmJjMmZhY2M1YyBsZWdhY3ktdHJ1bmsKKzIxNDMzIDkwMzIxMjYxMjc3MTI5MGE0OWY2MDdiNjYyNGIyNWE0ZjJjZDk3N2EgbGVnYWN5LXRydW5rCisyMTQzNCAxMTczNzFhZjU0NGIwOTBhNTQwOGIzMDAyYjVhNzI5YmZlNGJlZGQ3IHJlbGVhc2UyMS1tYWludAorMjE0MzUgY2FhOGZmYzNjZDFjNzBlMDdiNzY3ZjQ0MmU1MTZlMTAyM2JmNTdlNSByZWxlYXNlMjEtbWFpbnQKKzIxNDM2IDc3ZjQxNjM4NzkyMmVhNzgxOGIyNjQ1ZmE4MzNiYTJmZDE4NDNjNGYgbGVnYWN5LXRydW5rCisyMTQzNyBjMDI4ODY3MDIzMGU5MzI1YmY0NjNlNDZlMjkzNzhlYjAwNzljM2JlIGxlZ2FjeS10cnVuaworMjE0MzggMmUxYWRiZTg5ZTRhNTg0NDFlYjdlMTI5YmJhYzgyNTBlZjYyNjVjYyBsZWdhY3ktdHJ1bmsKKzIxNDM5IDgxMTg0MmRhY2QzOWUxZTljNzk5MWUxYjlmNDA1N2RiY2YzMGY2NTggcmVsZWFzZTIxLW1haW50CisyMTQ0MCA0NTFjMGFiYmY4YTlmNTQ1MjhlMWMwYmQ5NWYxMTVkNTRjYzM3YWM3IGxlZ2FjeS10cnVuaworMjE0NDEgZWFhYmNhMTMxNzRlMDNmYzRkZjY5ZWEyYjJjOWNiNWE5MzIwMWNiNCBsZWdhY3ktdHJ1bmsKKzIxNDQyIDNmZGUxZDIwMzMxZWFmNjFkZjEwZDAzMjQyYWY1NzNiMTZmZDEyZWUgZGVzY3ItYnJhbmNoCisyMTQ0MyA0NzJlZjY4MzE4YThiZjhmZDI3MTkyMDNhYzkzMjNlZDlhODE1NDFjIGxlZ2FjeS10cnVuaworMjE0NDQgNGQzN2I3MmFlMmQyNjA0MDA1NjZjNmMxMjEwNTU4NDQxNDNkZjQwNSBkZXNjci1icmFuY2gKKzIxNDQ1IGYyNGVjMjNjZDQ3ZWRmZjc2YjQyZDJiNjhhZjI2OWM4MDgxZGUzNDYgbGVnYWN5LXRydW5rCisyMTQ0NiBjNzZkYWQwNjQ2MWI4ODg0MDIwNzEwM2FmYjNkZDg3YTcyZWE1MjkwIGxlZ2FjeS10cnVuaworMjE0NDcgZmJlMGRlZDVlNGMxYmYwMjkxZTQ3ZGIzOWMyNGMyNTNjZDQ3YjE5YSByZWxlYXNlMjEtbWFpbnQKKzIxNDQ4IGZiOTZhNzhlNzJhYzZmNTQ4N2QyODNjNjUzYjQ1NzMyN2I4ZWQ5NTQgZGVzY3ItYnJhbmNoCisyMTQ0OSA3NjQ0OTJhOGY2YTc1OTM3M2U2YWJlMTM0YzVjOWUxNTVhMjA3ODdjIGRlc2NyLWJyYW5jaAorMjE0NTAgZTNlYWMyMWUxZDMwNGJjMzc2YzM3MWQ0OWZlNmUzMTE2OGI2NzVkZSBkZXNjci1icmFuY2gKKzIxNDUxIDlkNmQxMTE2YmYyY2NlOGM0MzI5ZDkwOWFlNTg2NmJkNGFiZjE3YWIgZGVzY3ItYnJhbmNoCisyMTQ1MiAxNjk0YWI4N2YxZDdjMzMzOTVlOTkzYWJkYmFlYjI2MmI4NDcyMTVjIGRlc2NyLWJyYW5jaAorMjE0NTMgZjM5OWU2YmM1MGFmZDVmM2RlNDIyNGUxODFkNTNkNzRmNGE0NTYxMCBkZXNjci1icmFuY2gKKzIxNDU0IDAxYjkyMGVhNTJmMTZmZGVkNDU3OTA3NWI1OWM3NmY4NzZmYTE3ZjkgZGVzY3ItYnJhbmNoCisyMTQ1NSAyZTMxNjY1YmJkYzI1NTMxNDg5ZTA2M2I1NWM5YjJhNjljYzkwMDQwIGRlc2NyLWJyYW5jaAorMjE0NTYgYmZlZDIxMjNiMTRkN2M0NTA2Nzk2ZTBjYjI5ODMxMmVmZDg3Mzk5MCBkZXNjci1icmFuY2gKKzIxNDU3IDBiZDY3YzhhOTY5ZTA1MThkYTk4OTRjMjdmYTBkYzBmMjhiNjM5MDMgbGVnYWN5LXRydW5rCisyMTQ1OCBiNjFmM2I2Y2UxZmY5MGQyNDNjODZlYjEzZjcyNGRkNDY0NTQyMDM3IGxlZ2FjeS10cnVuaworMjE0NTkgM2IyOTVjZTI3MDVmNjdhYzZmMTJiNTRhYzJkZDYxMmVjMWE2NzkxMSBsZWdhY3ktdHJ1bmsKKzIxNDYwIGUxMDBjMDVkNDQ0ZWU5MDE2NWNjOWQzY2YwOWJhZWQzZTkwZmUxNDQgZGVzY3ItYnJhbmNoCisyMTQ2MSAyNGEwZjg0YWQ3NDY1ZTdiMjEzMGNlZjMyNGI0MGRkYjU3YjEyMDVhIGRlc2NyLWJyYW5jaAorMjE0NjIgMzM4YWFhMTRjNGU1YWVlYmUzMWE3ZmFmODgzNmZhMTQ5YzBlOGRhZSBkZXNjci1icmFuY2gKKzIxNDYzIGIyMWU3MGM2ZDA5ZDRhMzAzN2Y1OTI1OGRmZTUwOGE4MTllZmZlZTEgZGVzY3ItYnJhbmNoCisyMTQ2NCA2MzBjODZkMzMzMGJkNDk3Y2E2MmU0N2ViNWYwNzk3ZjYyZjk3MTc5IGxlZ2FjeS10cnVuaworMjE0NjUgYmFmMDRjZGY2NWEzMDBkZTZhNDQ2M2UyZTJkYmEwMTE2MTFiMWViNyBsZWdhY3ktdHJ1bmsKKzIxNDY3IGZkYzNiMTYyMTVjNzVmMzJkYTJkMDczZGUyYjI5ZmE3YjFiNWI3NzggcmVsZWFzZTIxLW1haW50CisyMTQ2OCBmNjkyNWFkMmQxOTExYjM4ZTg3MjdlOTIzYjBkNDM1YjcyNGUxNzMyIGxlZ2FjeS10cnVuaworMjE0NjkgNDBkMTlmOTA3ZTEyMDE1NDYwMDhlOTU5OWQyMjI1MzA4NmYwNWE1MSBsZWdhY3ktdHJ1bmsKKzIxNDcwIGQxYzYwYjA3MjE3ZjhjNjJkZjY0OGE1ZGE2MWZjZGMzMTU2NmY4YTIgbGVnYWN5LXRydW5rCisyMTQ3MSBkYzc0ODIzYjQ5ZWE1NzBkZWM0ZDk5YWZkNmEyN2ExZDIyZjgzOWM3IGxlZ2FjeS10cnVuaworMjE0NzIgZjZiM2E3YTkwZDgzZmMwYmEwMjRlMDNhMGMxYjNkNTNmYjliYTIwZSBsZWdhY3ktdHJ1bmsKKzIxNDczIDA4MDEwMDY0NzM5NmM4ZDAzNGZjNmUzMDZkNzdmNDhlMGNiNTUxYmQgbGVnYWN5LXRydW5rCisyMTQ3NCA5NWUzOTQ3Y2EzY2VhMTk0NTA4NzhmZDhiNWQ3NWQ4NjZkNDQxNWRjIGxlZ2FjeS10cnVuaworMjE0NzUgODM0NzkyNTIzMDk0ODkxMjJmOGU4OTAyOTk1ZjRlOWE2Y2RlYjVkMyBsZWdhY3ktdHJ1bmsKKzIxNDc2IDhjZGZmNTQ1Y2JkZTUwZTI5NTZmZjBlMWY2NmQzNTZkYTMxNWUxODYgbGVnYWN5LXRydW5rCisyMTQ3NyA5YzZhOGRjZDcyMmQ1NTUzMTA2YWFhYzlmNTc3Yzc5ZTliZTJkMmEwIGxlZ2FjeS10cnVuaworMjE0NzggMDYzMzJiM2M0MzM1ZDQzMzAwYjJkNDQyZTJlNzE3MjBhM2ZjY2ZmMyBsZWdhY3ktdHJ1bmsKKzIxNDc5IDYxMzVjMTJlODQ0ODY3MmIxM2RjNGJjOGY0YjhiMGZlM2QzMzU2YjUgbGVnYWN5LXRydW5rCisyMTQ4MCAxZTAyZTIwMTRlMzZhNDA5ZDQ2NTZjY2JjZTdkYzVlZDVlYWY4ZDBkIGxlZ2FjeS10cnVuaworMjE0ODEgYWFkZDk5ODMwNTMxYWY1MDY1MzhhMWQ5ZTA5OGE1Mzg1MGE5MzA4MCBsZWdhY3ktdHJ1bmsKKzIxNDgyIDc0YjNjNGUzZjQ4NjExMGE0OGFhM2ExYTg3YjMyYzMxYTc1MDE4NzYgbGVnYWN5LXRydW5rCisyMTQ4MyBmODBmNmU5MjI4ZGU2ZGU0M2YwMGE5ZGQ2ZTY4YzY0YzY2NTIzNmQxIGxlZ2FjeS10cnVuaworMjE0ODQgMTE2NTMyMTQxYWRlZTM4MDQzODQzODgwNDgxNTc1ZmYxZmRmOTMwMiBsZWdhY3ktdHJ1bmsKKzIxNDg1IDFkMGQzZTZhMzIwMWEwMTM2NzVmNWQ0YzJkNDE3ZjFlM2U4MTU2YzMgbGVnYWN5LXRydW5rCisyMTQ4NiA3MjZlNWYyY2QzNmVkMGQ3ZGViYTgzOTBlOGU5NDY5ZDhjNDc4Y2Y3IGRlc2NyLWJyYW5jaAorMjE0ODcgN2RlNWMzNzYyMzJjYjRhMzgwNjYxOTdjYzUwMzllYzMxYzVjYjY3NSBsZWdhY3ktdHJ1bmsKKzIxNDg4IDgyNGQ2MTExM2E3MTIyMGNjOTMzY2YyZjg1ZTg0M2Q1NTgzZTgzNzMgbGVnYWN5LXRydW5rCisyMTQ4OSBjODY2MjU0M2NhNmE2ODVkNDE2N2U4ZGM3Y2RjM2QwMDJkZmVjMzYxIHJlbGVhc2UyMS1tYWludAorMjE0OTAgY2FkYzE4OTQyYTM0NDU3OTExZmVkNjNiZjg4MzY5OWI2Mzc4YWE3NyBsZWdhY3ktdHJ1bmsKKzIxNDkxIDdmODNlZTM3OTdhMjY0NjZkZmY0Yzk5M2Y1NWYwNzg1M2MxMDg5ZjkgbGVnYWN5LXRydW5rCisyMTQ5MiA3YjAzYzE1MDc1NGEwOWQ0MmZjOWNhNWY4NjAzZDFjZjQyMTRhMzFmIGxlZ2FjeS10cnVuaworMjE0OTQgYWZkYTVmZmY1MDI3MWJkNDJjNGMwNmNmMTlhZDU1YjIzYzJhNTkzMiByZWxlYXNlMjEtbWFpbnQKKzIxNDk1IDgyZjk1MjRjYzg0NDEyYWFiNDEzMjQwNzg3NTYwNTljMjAwMTg1YzggZGVzY3ItYnJhbmNoCisyMTQ5NiBiNGFmMDkxZTMxYzRhNDYxNzNmNGNmNDcyMjk0M2Y1OWU5N2IwZDk2IGRlc2NyLWJyYW5jaAorMjE0OTcgMmU2ZmI2ZTY0MjhmYTA5N2RjZjVlMmI2OGI1OTk5OWMwOThiMDdhNCBkZXNjci1icmFuY2gKKzIxNDk4IGQ5NGY4YjMyMTNlOGNkZmVkZTU5NTA1MzBmYjA2NDExZGM0ZjdjZjkgZGVzY3ItYnJhbmNoCisyMTQ5OSBhNDU3NzYyNzBjOGUxMWFjYzgyOGE4NjRkOTllYzkyMzBjZGZiYWIzIGRlc2NyLWJyYW5jaAorMjE1MDAgMjMyMDhmMzAyN2Y2ODMxYTNjYjk0ODNlYWQxODgxYjlhODhkMzZhMiBkZXNjci1icmFuY2gKKzIxNTAxIGEzMTg5MWNiYWQ0NDI3YjQ4NzJjODJhY2MxMTYyNGFlMDAwMGE0YjggZGVzY3ItYnJhbmNoCisyMTUwMiA2OWI4OGQzNGU3MjJkZTlmMjg2NzgwMWExNzZjN2UyNDJmNjYzNjkwIGRlc2NyLWJyYW5jaAorMjE1MDMgNDdiYjA2MDIzZTgwNTkzYTk0Nzg4Y2QyYzcyNDVjNTYxZWI2NTIxZSBsZWdhY3ktdHJ1bmsKKzIxNTA0IGY0MDMyYmVkNDcwZjM4ZjJkZmYwODIyMGMwM2UxYmQ2OGJkZjg1ZTcgZGVzY3ItYnJhbmNoCisyMTUwNSBjNWU0NjYzNGM3ZDk3OGU0NzFiZTg3ZTRhODUyYjE2Y2UxNmIwY2Q2IGRlc2NyLWJyYW5jaAorMjE1MDYgNTNkNGU3MmJiNDQzYjBiMzU4YjgxMDZjNTI0Yjg3ZjUyMzY2N2UwOSBkZXNjci1icmFuY2gKKzIxNTA3IGZmODFlNzM1ZTE4NGZlMzUxZWRmOWY3M2RmYWRkMjYyNDVmOTJlYjcgZGVzY3ItYnJhbmNoCisyMTUwOCAyMzkyNzY2NGM3Mjk1ZTg2ZWY2M2FhM2UzMzc4Y2FkMDIyYzViMmE3IGRlc2NyLWJyYW5jaAorMjE1MDkgZWI4MGI0OWM3YjE1ZmZjNmQ2ZGE1Zjg3MTE0YWZhMmIwZDAwZTIzOCBkZXNjci1icmFuY2gKKzIxNTEwIGU2ZGVmZTI0Y2U4NTU2NWQ4ZDAwOGYxOWUwMTEwNzRhMzQ2NzA5MGUgbGVnYWN5LXRydW5rCisyMTUxMSBiNjg5NDBjZjIwMTcyMTA0YjhhM2NiMDZjMjU3YjA2YTY1OTNiN2EwIHJlbGVhc2UyMS1tYWludAorMjE1MTIgMTE2NWQzZjdlYWYzY2E1ZmQwNGU3ZGRhMjY4ZmYxY2VkZWUzNTMwZCBsZWdhY3ktdHJ1bmsKKzIxNTEzIDk1MTI3NDdhZmU5ZTk0MmE3OWM0NDljY2M3MTZhOTgyZjY0MGY4YjcgcmVsZWFzZTIxLW1haW50CisyMTUxNCA1NjgyZjk2ZjI1ZGUyNDM4OWExYTlkZTgwZjZhNGFjN2RiZmQ2ZDQxIGxlZ2FjeS10cnVuaworMjE1MTUgMjgzNmIyNjg2MTgwNmM2OTU1NTRhMGE5NDBkMmFlZTM5OGI3MjQ5MCBsZWdhY3ktdHJ1bmsKKzIxNTE2IGZjMTY4MGZjOWQyMzY4OWNjMjQxM2VlZDc4ZTNhN2Y5Y2NhYWU4OTkgcmVsZWFzZTIxLW1haW50CisyMTUxOCBiY2JiYzUxZjBiYjNkOTZjYmEzYzY1YzU0NWZhMmMzZGFhZjVmZDI5IGRlc2NyLWJyYW5jaAorMjE1MTkgYjBmOTg0NzU5MTdkNGU1ZTEwMDRhYjVjMjViNDliMTU3Yjg2ZjAwNSBkZXNjci1icmFuY2gKKzIxNTIwIDM3ZDlkMmE3Y2E1MGRmYWJjOWMwYjI4MjU5YTFlNzgzNDBhZTExYmMgZGVzY3ItYnJhbmNoCisyMTUyMSBlZWIyZTc3YzViYWQyYWEyZDZjOWQwYWUwMTVkOTk1NjM2NmEzNjE0IGxlZ2FjeS10cnVuaworMjE1MjIgN2FiMDlmYmI4NjlhMGU1Yzc5ZmYzOGQ0ZGU0NzhlYzYxNmExMWM1ZiBkZXNjci1icmFuY2gKKzIxNTIzIGEyOWJlZjQ1N2VkOGYwMmJjY2M1MDU0NjUwODg0MDg3ZTJhOWIwZjEgbGVnYWN5LXRydW5rCisyMTUyNCBjMWU0MTNlZjk4MTc3NjUxNGNkNzZkNmVmZjJhOGU0MDM5MTdmMDkyIGxlZ2FjeS10cnVuaworMjE1MjUgZGZjYzAzOGMyZDRjYTY5OThmZTE0YzQzOGIwNzA5MWU4ZGUxZTZjNSBsZWdhY3ktdHJ1bmsKKzIxNTI2IGQ4NDE0ZjUxZDRmNThlZjc5YzM2YmRjYzM0MTc2NmNhOTNkNzY2MzQgbGVnYWN5LXRydW5rCisyMTUyNyAzM2I0MzU3YWViYjhjM2IxYjJiYjMzYzk2MzdmZGMzMjBmYzI0OTZhIGxlZ2FjeS10cnVuaworMjE1MjggNGU1ZTk3N2JkM2UyYTc0MGYyNTQzMTk2ZmNmNGViYjRkN2NjNzkxMyBsZWdhY3ktdHJ1bmsKKzIxNTI5IDA5MjM1YmU3NDY0OTM3NTE4NjExMWI2MzAwODRjYTZmZTNmMDM5OWQgbGVnYWN5LXRydW5rCisyMTUzMCBkNTZlY2FlNTdlMGMyNTI5M2Q5ZTY2Nzk2ZDFkOWFiY2Q5NTkxMjBiIGxlZ2FjeS10cnVuaworMjE1MzEgYjZjZWJiZWIwN2QxYjI5MjI0ZWE2YmU0MDZlMmVkZjY4M2E0YWRiYSBsZWdhY3ktdHJ1bmsKKzIxNTMyIGY4M2JkZDA3NTM2MWIxZjk4YTI1MzQxMjBmNDQyODA2MzU4MzA0NWEgZGVzY3ItYnJhbmNoCisyMTUzMyA5ZjAxM2QxM2EyOGIxZGFmMTg1ZjI5ZWM1YzFiNWE5YmZiZGVmZWRiIGRlc2NyLWJyYW5jaAorMjE1MzQgYjQ0MTFkZTAxNjYyZjdmOTI0NThmM2Y0OGJkNDUyOTk2MDFmOGVhZCBsZWdhY3ktdHJ1bmsKKzIxNTM1IDc2MzYwYWZkYjk3MDI3ZjAzZmFmNjY5NzJlMzU2OTA2YzgyNjBiMmEgZGVzY3ItYnJhbmNoCisyMTUzNiBmYTFlODhlYjE5OTRhNmJkZDJiMDFkMGJkOTFjYzUyMTdlYTZiNDQ4IGRlc2NyLWJyYW5jaAorMjE1MzcgMTQxN2NmNDcwYWU5ZTVkZjQ3MTg5ZTU2NjhlMmE3YjgxZTIwMDE4ZSBkZXNjci1icmFuY2gKKzIxNTM4IGQyZWIyMzYzNmNjNjI3ZWM5OTU1MmRmNDgwZWQ5M2Q2MzdkM2JmNjUgZGVzY3ItYnJhbmNoCisyMTUzOSA0NjgyNWVkMjM1MjhhMmMzYmEwMGJmZGU5MjJlYzc5OGNkNWExMTIwIGxlZ2FjeS10cnVuaworMjE1NDAgZjMxNWY1Njc0Yjk1ZjYyYmE2MzI5MjZhODkyZDBlZjFhMjc5NTFkNiBsZWdhY3ktdHJ1bmsKKzIxNTQxIGE5NzMzNDk3MWE4MTg2YjRhNzljNDQ4MDg2ZDE2MGFlMTgzYmZhOGUgbGVnYWN5LXRydW5rCisyMTU0MiAyZmQxMzc3ZWM0OGMwZDJiMWE2YjNjMTMwYjc5MzU4YWM5NzM3ZjExIGxlZ2FjeS10cnVuaworMjE1NDMgYTgzZmY3NzM5OTkyOWY1Y2ZmY2RhYjEzZWYwYmQ5ZmY3NzFlNjgwMSBsZWdhY3ktdHJ1bmsKKzIxNTQ0IDZhNWVmMTk5NDE1MzZlMWJkNGQyOTU1OWUzZGM1ZTRlNGIxYjkyZTIgbGVnYWN5LXRydW5rCisyMTU0NSA5OWM4YjViMGM4OTYzODQ1OGFiN2JiNjU4ODMzNWZjZmM4NzY5YWE1IGxlZ2FjeS10cnVuaworMjE1NDYgOWMzNTRlNjlhNDg5ZTg1OTFiYmM2ZTUyMWFhMDhmZjIzZDllNDljMCBsZWdhY3ktdHJ1bmsKKzIxNTQ3IDBiNDA2MWVlYzY4ZTAzOThjMGJiYzNmNWJkYjVmN2MxOGM4ZWNkNTUgbGVnYWN5LXRydW5rCisyMTU0OCA0NTkxNzMyMzc5MTUwM2Q4Y2E3Njk3MDZhYTA0ZTU1ZDhkNGY0OTE3IGxlZ2FjeS10cnVuaworMjE1NDkgNzFmMTYxZThhMWQ3MTY4NjdlOGQ4MTFlMjdkMWExYzg2NWFlZjY5MCBsZWdhY3ktdHJ1bmsKKzIxNTUwIDQwZTBmNWEzMzJlOTBhNjZhZTA0MGRkYWNiZGI0ZjFjNDhiOTMyZWQgZGVzY3ItYnJhbmNoCisyMTU1MSBkOTA1MmNkOWUwYTc2M2UxYzE5NzQ2YTkzOGFhZWVjYmIzZDExYjU1IGRlc2NyLWJyYW5jaAorMjE1NTIgZjA0YTFkZGQ3NDFhMzQ4NjU0ZWI3MDM5NzJjYmUxZTk3M2ZlM2NlMCBkZXNjci1icmFuY2gKKzIxNTUzIGJhOGE1NjJiZTM4MzU4Y2Y1ZDRlOTEyMzA0Y2RlMGI5ZDg2NmI0MTYgZGVzY3ItYnJhbmNoCisyMTU1NCA2YTVmZTFhOTQzY2NkNWMxNWQ1NWRlZTAwZjZlNzc1ZWRhYmY3MTA0IGRlc2NyLWJyYW5jaAorMjE1NTUgZWFjYjc4ZDljYjhlZGIwY2NmN2FiZmU0NTlhOTA5NDIzMjYyYmM1ZiBkZXNjci1icmFuY2gKKzIxNTU2IDY2MzcwMTZkZjZlMjhmNjZmOTQyNmYxZWFjMjA3ZmU1MjIzYzkyNDAgZGVzY3ItYnJhbmNoCisyMTU1NyAxNzNiYzcyNGQxMTBlMjk4MDM2MWYzZGY4MTk4YzY0NDA4ZWQyNjlhIGRlc2NyLWJyYW5jaAorMjE1NTggM2RhZTI1MWI1ZGY1YTMyNzVkY2FmNzYxNTk5YmExMWQyYThkMjM0OSBkZXNjci1icmFuY2gKKzIxNTU5IDVjOTc2OTAxNjczZTVkMDZmNDJkNTQ5YWQ2MTQyMDQxZjE2M2M2ZTMgbGVnYWN5LXRydW5rCisyMTU2MCBmN2RlOWUwNDg3Y2YxNGMyZTE0NDYyNDU0ZTFkYjRiMDFmMDZiNmIwIGRlc2NyLWJyYW5jaAorMjE1NjEgODhlZTk2NjVkZTA1NDNkYmZmNjNlYjMwNjVjZTE2NTM3MDRhN2FiOSBkZXNjci1icmFuY2gKKzIxNTYyIGY3ZjA3NmJmY2FlOWM4YzJkMjhlMzlmNmQ3MjBlY2I5MTI3OTUyYmUgbGVnYWN5LXRydW5rCisyMTU2MyBiNjZhNjUyZTNjM2ZlN2I4YTcxZjAzZWQ0NzJhNTEyM2NkYzFmZGViIGRlc2NyLWJyYW5jaAorMjE1NjQgYWE3NmMxN2E1ZjA4Y2Q5OTlmODg5MTg4YWI4N2M3ZGExMDYwY2RiZCBkZXNjci1icmFuY2gKKzIxNTY1IGRlODU2MGM2OGM2ZmRjZDY2NzFhNTY0OGZkOWVjOWUwYjlmYjU0NGQgZGVzY3ItYnJhbmNoCisyMTU2NiBlOGM2NjFkZjMwMzgxNGFlZDljY2Y2ODM3NTE2Y2M4YmFlNTY1NzNhIGRlc2NyLWJyYW5jaAorMjE1NjcgYzE1YWNmMmUwMTEwOGNhZDNiZjIzNjNmYTUyYzNkNTNjNjZkNWUyZCBkZXNjci1icmFuY2gKKzIxNTY4IGViMDRhMDU2NGE4MTg2MDdiMTA5ZDc0YjA4ZjQ3NDRhMjM2OGMyZGYgbGVnYWN5LXRydW5rCisyMTU2OSA5NjUzMjcyZjAzNmY0MGEzMzY4MWVlZTE3NTI2NGRkODExYWQ1ZmQ5IGxlZ2FjeS10cnVuaworMjE1NzAgNjg0YjAwOTkwMzJkNDYyYzhhMmEzYWU5YjYzMzM1NjBlYTAxNTlhYyByZWxlYXNlMjEtbWFpbnQKKzIxNTcxIDA1YzQ5MzQ2YjY4YjhkZjZlOTA2MmFiMjlkZTE0MmJjYTRlZjg3MmIgbGVnYWN5LXRydW5rCisyMTU3MiAzMTExOWQwYTE4ZTZmYzI5M2YwOThkOWZmMTM4N2Q2OGRiMGVjMDk0IGxlZ2FjeS10cnVuaworMjE1NzMgMTAzMDI4NzI1MjUzYjM4N2Q3M2VlYjRlMjk1MGVlZDI2OWE2YTJhZiBsZWdhY3ktdHJ1bmsKKzIxNTc0IDUxYzUwMWM2ODYwOGM1M2FmMDY3ZDliYjFlYzZjM2FkYmMzMWU5ZDUgZGVzY3ItYnJhbmNoCisyMTU3NSA2NWM5Mjg3YWJmODViYTg4ZTAwOTdlNmYyOGRmZWFiOGYwOWI4YjM0IGxlZ2FjeS10cnVuaworMjE1NzYgZWU3YTg2Zjg3MzgzNWZjNTdiNmJkMTM3MjE2MDIzZDQxN2FiODlmZCBkZXNjci1icmFuY2gKKzIxNTc3IGE0ZmJjMmYwMTM5YTgyZDdlZDdiMmQ1NjhlNmE4YWEzZDY2MTk0YjQgbGVnYWN5LXRydW5rCisyMTU3OCA5YzA0ZTIzZjhkNDNiMzkxODZlMjM0NGE1ZGQyN2Q2MTYwZTQ1YmViIGxlZ2FjeS10cnVuaworMjE1NzkgZDQ1YWI3MTQ2YjM3Y2Y4NzY4ZDQwZmQ1OTdlZGI2OWQ5MWJkNTdkZSBsZWdhY3ktdHJ1bmsKKzIxNTgwIDZkYTg2MjMzOWEwZTk5ZGI1ZDk3ZTVkMzYxNDNhYjhlMzVjNjc3OTMgcmVsZWFzZTIxLW1haW50CisyMTU4MSAyOTMzYWU0OTIxNmYyNjM4MmMyYWY1MDI3YjlkYmY2ZDRlNjI0OTJmIGxlZ2FjeS10cnVuaworMjE1ODIgY2EyZWE3NWRmM2YyNTJiMDcyODg2MTM2YTMzYmZiODg2NTc5YjM2MiBsZWdhY3ktdHJ1bmsKKzIxNTgzIDk0NmI4MTZhZDVjYjhmZGY4M2Q3MjViY2JjNmMyODdkMmQ2ZjM5OWIgcmVsZWFzZTIxLW1haW50CisyMTU4NCA5YWQ0ZGI5N2UyZDliNmVkMjkxMDkzNzkxZWNiY2M5NDI3ODI3NjljIGxlZ2FjeS10cnVuaworMjE1ODUgZDRmYjk0MTUzYjMwODIwOWU1ZjliMGM3MTg5ODZmY2VmNTRmYzZkNCByZWxlYXNlMjEtbWFpbnQKKzIxNTg2IGZiY2NmMThhYTU3YmZlYjBjM2Q3ZmUwYTE3ZTQ4NDljMzA1N2EyZjUgcmVsZWFzZTIxLW1haW50CisyMTU4NyBhNzhmNGJkNTllMTBhMGIzZWYzZDNkZTMwZGVlYzg0MDQwMzY5YjM0IGRlc2NyLWJyYW5jaAorMjE1ODggYWJjNGEzYjdkMThlMDFjNzkxYjE4YWZmMDFkMDA3YjkwNDRhMmNkZiBkZXNjci1icmFuY2gKKzIxNTg5IDJmMWI0Y2RjYmIwNmM0NDIyMjliYjYyZmVkYTczNDY4NTk1YTU4ZTkgbGVnYWN5LXRydW5rCisyMTU5MCBlNzhhNTEyNjhjODFkZmM3NTcwN2ZiYjcwNGEyNDk5MjcwNzdjOGQ2IGxlZ2FjeS10cnVuaworMjE1OTEgOGMzODQ0OWRmNzQ2MDk0MTFjMTM0YTRiZGJiYjQwNzVjM2JlY2EwOSBkZXNjci1icmFuY2gKKzIxNTkyIGZlZTViNTcxN2RiYmI4OTBkNGY5NGFkN2RiMGRjM2VkOWJmM2NiNTIgbGVnYWN5LXRydW5rCisyMTU5MyBjNmQ4NjQ1ZDRjODg1ZmZmOTlhMDMyODliNmI4ZTRmZThkYWM1NjE5IGxlZ2FjeS10cnVuaworMjE1OTQgNzBhZjRhMTczYTk1NjRmMDg4MDllNjk2NzI3MDJmZDZlM2E3ZjljYiBsZWdhY3ktdHJ1bmsKKzIxNTk1IGNiMmVhZjQ1NzM4NmI3ODY5MDE0NDQ3ODdlNDUyN2Q2MDkyMGI1ODcgbGVnYWN5LXRydW5rCisyMTU5NiA2YjkzMWJmNmJkZjY3ZjliN2U4ODY5Mzg3YzBmNGU5NjZkOTBhODYyIGxlZ2FjeS10cnVuaworMjE1OTcgY2Y4MTQ5Y2VkY2NkMjFhZjJlZjZjNDI2MTI4NmM2ZTRkY2JkZWNmYiBsZWdhY3ktdHJ1bmsKKzIxNTk4IDAwOTM0ZDYyZTc4MTY3MjMyZGMzNWE4YjY5NTEyZmRlNmY1NWRlZWEgbGVnYWN5LXRydW5rCisyMTU5OSAzZGI5MjFmM2VkZTBiYTU1YzhiNjE5NmQ1Mjc0ZjQ5Y2JiMTdmMGFlIGxlZ2FjeS10cnVuaworMjE2MDAgZWQwZjBkOTY3NTBjZGU2NTY2NDk0ZTU2YWM4MTg0NDUwMWI3YWQwMSBsZWdhY3ktdHJ1bmsKKzIxNjAxIDkzOWJiYzUxY2QyMTkzZDJkYzIxZDM0NTQ1Njc4ODkzMjI3NzM0ZTIgbGVnYWN5LXRydW5rCisyMTYwMiBjMWE1ZTUxNzU5MDdiMTI2MWQ2NGI5NmE1YzJiY2QzYTM2ZTA4ZDQzIGxlZ2FjeS10cnVuaworMjE2MDMgY2RhMTYzODNiYzZiYWEyZWJkNzVlNGU5NGJlNWM3NTY5NzhjYzdjMiBkZXNjci1icmFuY2gKKzIxNjA0IDNiMTNiMjY5NWI3YTZiNzYwM2EyYmE0ZGQ3ZmRlOGFjY2NhZmYzZTcgZGVzY3ItYnJhbmNoCisyMTYwNSBiNzNlMWY0MjJlYThiZmFhM2IyNGM2MjdjYWRlNzYwMmI3ZGQyM2MzIHB5LWN2cy12ZW5kb3ItYnJhbmNoCisyMTYwNiA0MDRjNjBlMDAzNDQ3MDY3M2I5MTJjZTEyY2NjMGQxMGIwYmYyZjlmIHB5LWN2cy12ZW5kb3ItYnJhbmNoCisyMTYwOCA4ZDZiNGFjMDQ0MGI0YzBjMjE3N2VhZmMyZGIwYWRhNGMyMzFmODg5IGxlZ2FjeS10cnVuaworMjE2MDkgZmVlYTNkMmYzNTYzZjBiZmFmNTg2ZTFiN2FmMWFjNDAwM2EwMjhlMyBweS1jdnMtdmVuZG9yLWJyYW5jaAorMjE2MTAgMTFkOWU0NmYxNDcwNTE3MTlmMzg4YTdiYzJjMjJjYjZhYjNiMWE5MCBweS1jdnMtdmVuZG9yLWJyYW5jaAorMjE2MTIgOGI5M2QwNGZhN2E5YjlmNTBhNTg2ZjBhOGNhYWJhN2EwOWY3MDhjOSBsZWdhY3ktdHJ1bmsKKzIxNjEzIDlmNzQ5NjVlMGYzNTg1NWM4NjBjOGYxODRlY2IwYmVlOGQwNTI2MjUgbGVnYWN5LXRydW5rCisyMTYxNCAzNGQ1ZTQ4YzFlZDI2MjU3YzVhZGY1Nzk4YjVkNjhhNmE5ODYwY2E2IGxlZ2FjeS10cnVuaworMjE2MTUgNmM1MDFkODkyMDAzMGE5MmFkZDk2YTRjZjcyMTRiOGExODAzY2Q1OCByZWxlYXNlMjEtbWFpbnQKKzIxNjE2IDQ5OGQ3ZGQ5OWRhNDFlOTI2NjM4OWYxZTMxODYxMzI1MmQ5YTA1Y2IgcmVsZWFzZTIxLW1haW50CisyMTYxNyA5OWFkNmZkMjc5ZTliZjVhNjA5YTEwZTU0YThmMTQzOGMxNDYzMDRmIHJlbGVhc2UyMS1tYWludAorMjE2MTggYjFhMWRlMThmOTFmYmNkMDc0NjQ1ODE5ODM2ODE5M2VjMTkyZTVhYyByZWxlYXNlMjEtbWFpbnQKKzIxNjE5IDg3ZWUxYzNmZDBjODIyNzU1ODVlN2IwN2E3YTRmOGFkNmZiMzljM2MgcmVsZWFzZTIxLW1haW50CisyMTYyMCA4MmEzNDkzMmVhMjJkNjI5ZDE0Y2UyZjg3ZjM4NzI2NmE2MjFjYjg1IHJlbGVhc2UyMS1tYWludAorMjE2MjEgYzk5MTI5YTBhNDdkOTA3YmI3ZDRmMzI1ZjAwOGRjZmNmNzQ2YjY4YiByZWxlYXNlMjEtbWFpbnQKKzIxNjIyIDA0ZTI1YzAxODQ5YjQ0YmI0NGZlMjk0NzRiNDY3OTU5MGNjYzg1OWUgbGVnYWN5LXRydW5rCisyMTYyMyBjMzk3ZDRjZDgzN2QyMDZmNWExMGEzMWQ5YzJkM2JhY2UwMDVhNThlIGxlZ2FjeS10cnVuaworMjE2MjQgYTRkMzUwOGFlZmMwZjk1OGE5OTAwOGNjMDk0NDFhMDkxMzNkY2ZkMiBsZWdhY3ktdHJ1bmsKKzIxNjI1IGRmYjc3NDIyYzYwNzQyOTY3MDIwNzQxYjJkMzAxMjQ3MzJmYjUyNmQgcmVsZWFzZTIxLW1haW50CisyMTYyNiAxMDZjOTk5NWRiNjhhZTVjOGY3Njk4MzBjNzI2MWIwNDg3MTQ3OWE5IGxlZ2FjeS10cnVuaworMjE2MjcgNzk1YWE0NTkwMjExMGE5OTg2MWQ3M2ZiODczNmFiZmEyMDZhZWJkMCBsZWdhY3ktdHJ1bmsKKzIxNjI4IDJlMmVmNDcxMTRmNzcyNDBkMDY4YjFjMzczZTM2ODJhNjVmMzdmNDggcmVsZWFzZTIxLW1haW50CisyMTYyOSAyZmJiMjVjMzA3MmViNmQ0N2U2NjgxMTM0OTYwMTdlZDgxNDczZTVjIGxlZ2FjeS10cnVuaworMjE2MzAgZTA2MTE1NWY5OWU4ZWIwNzcwNDNmMjA0MDljZDBhOWM5YjM4MGNmOCBsZWdhY3ktdHJ1bmsKKzIxNjMxIDk4YmRlNmU1ZTc0MzJkYzdkNzc2N2VmNzRjZTliMjc5ODk5NGE1MWEgcmVsZWFzZTIxLW1haW50CisyMTYzMiAyNmZjOTA1ZGRjMTJlNTViN2I3ODFjZGI0M2Y2MDQzMzE5MWNmZmRmIGxlZ2FjeS10cnVuaworMjE2MzMgNmY4YTI0MDJmNmZhNGIzZjkxZTUwZGVjMzFmNDQ3NzU2MWQ0YTA5YyBsZWdhY3ktdHJ1bmsKKzIxNjM0IDk5NzdjZjIwNjUzMmIxNDZmMzE5MjcyYWE4MjMwYmI5Y2RkNGI4ZjEgbGVnYWN5LXRydW5rCisyMTYzNSA0YzMzZGMzNDU5MDJhOTE1N2ZmMDM5NDE4NmE3YjU2ZTVlM2NmZDc0IGxlZ2FjeS10cnVuaworMjE2MzYgYzdhMjRkM2IzNTk3Mzk2OTcyOTdiZjBkNTFlOTNjZDEzNDNlNGZhYSBsZWdhY3ktdHJ1bmsKKzIxNjM3IDRiN2ZkM2FlMWQ5MzBiOTIyNThlNGY5N2NmMDZlODkyMWJiMWZlNDUgbGVnYWN5LXRydW5rCisyMTYzOCBmNDA5MmE1ZjdiYmM3MTQwYjFkNDA5NzE2M2QyMDg2Yzk4Y2U4NjJhIGxlZ2FjeS10cnVuaworMjE2MzkgMDY5YjgxNTE5YmU3ODUwYmI0MGFhM2NlNjRkYjQzYjMyZGU0MTZjYSBsZWdhY3ktdHJ1bmsKKzIxNjQwIDU4NDZjMjU4Yjg4OTYzNjk2ZDhlNTVlYzhmYmFiODM0Nzk3ZGM2ZGMgbGVnYWN5LXRydW5rCisyMTY0MSBjNGY3NTg1NzUwMmE2ZDNmNjcxOGYwNzZhYmY2MzlkMDVhNjg3ZmFlIGxlZ2FjeS10cnVuaworMjE2NDIgYmExZjNkZTEwMDg1NDM0ZjExZWY5NzExNzM1ZjFlMDViNWM4OGU0NSBsZWdhY3ktdHJ1bmsKKzIxNjQzIDQyNzQxZTY3NzMzODQxZjI5M2Q4YmRhNDg5MTBiOGZkYmUyMjgxMGUgbGVnYWN5LXRydW5rCisyMTY0NCBlYTdjNzdmZTUwYWU5OWRhYTRkMDVlOTAxOWJmZmE4NzJjNjkzODc1IGxlZ2FjeS10cnVuaworMjE2NDUgMmJiNzVhMWYzMTg0MTkyODVjZDhjMjg3ODlkOWQ0ZTcwOTY3MDI0OCBsZWdhY3ktdHJ1bmsKKzIxNjQ2IGU2ZWNkOGEwN2VhODhmMjdiZjU1MDQ4YWU2YmMyOTUwODg1NTE0YTkgbGVnYWN5LXRydW5rCisyMTY0NyA0NmRkODczZDI2ZjY0NGY0OTgzMWM2Zjg0ZjRjYjVhN2E4NmEzMmE5IGxlZ2FjeS10cnVuaworMjE2NDggMjAyZGRkYjdjOTc0NzRjYTcwNmY2NzY2NGNmMThjNGI3ZDJhNTVlZCBsZWdhY3ktdHJ1bmsKKzIxNjQ5IDg2MjYxNzFiMmM3MjUyODU1MmMxNjBhZTZjNjM1OTUwYzU2OTVkMjEgcmVsZWFzZTIxLW1haW50CisyMTY1MCBjYzI0ODY3NTdjOGJmM2UyMmJiOTRjNmIzMzUyYmMwMjdmZjYzYmRjIHJlbGVhc2UyMS1tYWludAorMjE2NTEgYzViNTA1NTJkNTZkMWY2MjczYzMxYzYzYzZiYjEzZDUwOGE2YjI1OSByZWxlYXNlMjEtbWFpbnQKKzIxNjUyIDMyY2IyOTVkMDg2MmMyMmExYjA3ZTgxNDU5MTc2ZWEwZjdlOTcyNTggbGVnYWN5LXRydW5rCisyMTY1MyA4NmIxYzgyMTYwZWE5OGQ1N2EwZjlmNDFhMmQwYmI4OWU4YmIyMTZjIGxlZ2FjeS10cnVuaworMjE2NTQgOGRlOTEwNDIxNzNmN2Y0ZTEwMWZhNDgyN2RjMDkyYWY4YWI3NGVlYiBsZWdhY3ktdHJ1bmsKKzIxNjU1IDI1NGE0YTlhZjBmYmM2ZTg1ODBlNDliYTJjNWI3MjFiNWRhZDEzM2MgbGVnYWN5LXRydW5rCisyMTY1NiBmNGVhMjFhMGY5NTQyZDM3ZmQzOGE0YWM1NjYzNzYzNGYzZDBkNTcxIGxlZ2FjeS10cnVuaworMjE2NTcgZDIxMTcwOWYyNWYxZWVjYjQxN2FjNTIxOTEwZWUxODBiYzIzODY0YyBsZWdhY3ktdHJ1bmsKKzIxNjU4IGIyYmY4OGUwNmZjNTk5N2I1ZmRkZjYyZDQxMDljM2E0YzFmZjgxMzggbGVnYWN5LXRydW5rCisyMTY1OSA2NWFmYWM4NGQ0ZjczMjM2ZWNhMTNlNzgzNjQwNGU4NzE3NjhjNGJjIGxlZ2FjeS10cnVuaworMjE2NjAgNzMyOGM4Y2Q5MTdkOWVmNjBlZWIxODZkMGFjM2FmYzA4YWY5MjkwYSByZWxlYXNlMjEtbWFpbnQKKzIxNjYxIGE1OWNhODQ0NmY5MmI2ZWRiNzdhMTljMzFiMzk5Mjk0YTc5NmM5ODAgbGVnYWN5LXRydW5rCisyMTY2MiA0ODYxMzczOTU5MTc2YzU4Y2QyNjdhMTFiNDEzNzQ5YzRkNzZkNDAzIHJlbGVhc2UyMS1tYWludAorMjE2NjMgZjcyYmNlY2RkMWY3ZTJmY2IxZDFhMWMyMmI5MTIwNGRjY2VkMWM4YSByZWxlYXNlMjEtbWFpbnQKKzIxNjY0IGQ5N2M4MmNiZDc2NjkxY2NjMDM2YmIxNWRiYTk1Y2Q0ZTZjZjY3NTMgbGVnYWN5LXRydW5rCisyMTY2NSBkNTAyNjZiNWRjNDhjNWFlMWNmMDY0NGQ1NzliOTkwYTQ0NTBlYTM3IGxlZ2FjeS10cnVuaworMjE2NjYgZWFlOTI3MjkwMzU3MWEyNzdjYjA4ZGQ0YjlhNDc4ODc5ZDZhZmEzMCBsZWdhY3ktdHJ1bmsKKzIxNjY3IGIxZDZhZTMyOWRkMDU4ZmQ1YTU2NTViNGViMzMzOTJjNjE0ZjZjMzcgbGVnYWN5LXRydW5rCisyMTY2OCBmZDk0NjEzNzNjYWIzMDA4YjgyOTJhNTUxMzljYTViZjQzMDcxNjg4IGxlZ2FjeS10cnVuaworMjE2NjkgMjFiNWIyZWFlYjNkNDFlNjI4MjNhMTMzZTg0YTYxNmU5MTVhM2IzYSBsZWdhY3ktdHJ1bmsKKzIxNjcwIDFmYmNmNTQ5YzFjNDUzNWYzYmU4MDNhMTg0NGQ4MDY4NDBjNzIyNGYgbGVnYWN5LXRydW5rCisyMTY3MSA2NGZhNzJhODQzNDc0OTAwMzkwNWY4MGQ1YWNlNGJmMGE4YTg3NjAxIGxlZ2FjeS10cnVuaworMjE2NzIgMjNkOGViMjllNGZhMGZmZTY4M2YyYzAxYzhhOTE3ZTQxODI5NWQxNiBsZWdhY3ktdHJ1bmsKKzIxNjczIGU0ZDZhNzM5OTk3ZDk2MWQyZDQ4MjA2ZDMwMmQ2MGM3ZDFmNmZkMGYgbGVnYWN5LXRydW5rCisyMTY3NCAzN2VlOWNkNTRhMTEzZmNiMjUyNTJiYzMxNzVhNDQ3OTJjMjcyNDNjIGxlZ2FjeS10cnVuaworMjE2NzUgZTA2NGY1MjZhNmVmZTgxOTJhMmFjYzNhOWY5ZGFjNTI2YTE2ZGU3NyBsZWdhY3ktdHJ1bmsKKzIxNjc2IGZjNWEzZWMwNzQ1ZTFkNmI4N2Y1OTBhMDU3MWZjYjk3MDU1OWRlOTUgbGVnYWN5LXRydW5rCisyMTY3NyBlYzlhYTBkYzhiNzM2MDZhNzE2ZWIxZWEwZjljMzI3MDA0NTI2MWJlIGxlZ2FjeS10cnVuaworMjE2NzggYmY1NjI0MThkZmI4MWUwZjY2YTNhNGJhYjA1NGNhMjRiY2JkZWVlYiBsZWdhY3ktdHJ1bmsKKzIxNjc5IGNkM2I0ZGQzZTRjYTE5MTc5NGVmZWIzMDM1MmFhMTRiZjYwODU3NmYgbGVnYWN5LXRydW5rCisyMTY4MCBlYTI2YzliNjZmYmQ5ZDJlYWIzNTNmZGNjMzdkY2NhZDBmYmUzYWY2IGxlZ2FjeS10cnVuaworMjE2ODEgMGM3MDEzNTM4OTk4M2NjNDVjNTQyYTEzNzIzYWFlZWVmN2ZmMTQxMyBsZWdhY3ktdHJ1bmsKKzIxNjgyIGIyODdmMjkyN2RiMzhhM2U1MWQwZGMwNWM4OTExNGVhMTE0OTU4OTQgbGVnYWN5LXRydW5rCisyMTY4MyAzZmNmOThjYTZjNGExNDZmNWFmN2M4ZmEzMDlkNGFjYTJmMTc2ZTJiIGxlZ2FjeS10cnVuaworMjE2ODQgOTA2MGMwNmJlZGJjNDMxODQ0NGFiMjBhOGE5MTkzN2NlYjZhZmE5YyBsZWdhY3ktdHJ1bmsKKzIxNjg1IGM0OTMwMTMxZjVlM2FjNzI3NWE2N2M0ZDM1MjYxOWNmOGEzZjZjNDQgbGVnYWN5LXRydW5rCisyMTY4NiBjMWVjODdmMTA0NGE0OWNkMTc4NmU4MGU5ZWFiMGRiNTBkYTdiYmY2IGxlZ2FjeS10cnVuaworMjE2ODcgNzA0NjFmMmQyMTA5OGQxYzUyOTI4NDMwMjYwZDllMmYzMTk0NmQ1NCBsZWdhY3ktdHJ1bmsKKzIxNjg4IGU2NzVmZjU3NDhmMDVmMjc5YWM0NjlmNDQzZWMxNjJkMDAzZjNkNGUgcmVsZWFzZTIxLW1haW50CisyMTY4OCAyMmJlZDJkZDFiMjg2NTY0ZGVhNGQ5YTY3ZDRlZDgwZGMzMjI1MTkzIHJlbGVhc2UyMS1tYWludAorMjE2OTAgMTM3ODNlMGEzNDIzN2Q1MGQ1MmFhOTIwZDA3NTU5ZDBlYTEyNTBjMSByZWxlYXNlMjEtbWFpbnQKKzIxNjkxIDZkNGM4YTI5YmU3MDg3ZjkwNmVlMmY0NjljODk0YTY1YWNkNTRiMWUgbGVnYWN5LXRydW5rCisyMTY5MiAwNDdkN2M0ODA2OGFkZDdhMzUwNGQ0MTJkNjcyZjU0YjMzZjVjNDIwIGxlZ2FjeS10cnVuaworMjE2OTMgZjUzZDhjNTJjODFmOGQ5ZTM0ZDJmMThjMDY5YjRiZTc5OWQ5MDFiZCBsZWdhY3ktdHJ1bmsKKzIxNjk0IGY2MGU4NTM4NGI3OTgxYTZlZjhlOGExMWViZTE1OWJjMTJiMmNjMTIgbGVnYWN5LXRydW5rCisyMTY5NSAwMDIzYTc4YzFjODJjNzE1MjBkNDUzNTdhYTdjYWY3YmUwZDMyMTk1IGxlZ2FjeS10cnVuaworMjE2OTYgMDlhNWZlMmE3NDI2NzM4ODljMTliMTIzNDhhMDM1YTI0YjU2YTQ1MiBsZWdhY3ktdHJ1bmsKKzIxNjk3IDcyOTM5YTIyMzBkM2JmMTcwODlhM2QyNTJjZmZmMzhmMjIyNTM1NjEgbGVnYWN5LXRydW5rCisyMTY5OCBiZmFhOTdhMTliMzA4M2YzNGY4N2FjYjQ5ZWUxYzlhZGQxZDAwMDJiIGxlZ2FjeS10cnVuaworMjE2OTkgMjliZTg3MWJkODc2ODU2NjNkYjg1MjI3YTk2NThlZDJhNTExNzVhOSBsZWdhY3ktdHJ1bmsKKzIxNzAwIDY0MTdkNTg4MTZjZmRkNWI5NjU0MDkwNjE3YjkyYzk2YWY0M2M0YzUgbGVnYWN5LXRydW5rCisyMTcwMSBhMDY4MzFiMzU0MDc2MWIwODViZGNkYzkzMTVhNTMwMmMwNjliYWQxIGxlZ2FjeS10cnVuaworMjE3MDIgZmQ4OTZiN2NhYmI3NDIyNTMyYzJlZTQ1MDZmNDNiN2Y3YjdiNWQ5MyBsZWdhY3ktdHJ1bmsKKzIxNzAzIDc0NjEzNDhkOTlkYTQ0MzZmZmQyODY2Yzk4NjY5NDc5MTBhYzcwNzEgbGVnYWN5LXRydW5rCisyMTcwNCBlYWUxN2M1NzY3Mjc0MjU5N2EwNmNmYTc0NmRlM2NkZWFmYTlhNGU1IGRlc2NyLWJyYW5jaAorMjE3MDUgY2ZlNTNhNjIwY2ZmZTgxMjczNjhlNjliMDBhYmRhZDJmM2IwZTc2NSBkZXNjci1icmFuY2gKKzIxNzA2IDQ5YzA3YWNjNmU4M2U3YjdiNjcxYmY3MTllNWM2NmY1Y2EyOTgyNzUgZGVzY3ItYnJhbmNoCisyMTcwNyBjOTQwMjg3ZGJhNzliZGY1NjM5MGFhZDkzZTVmYTYzODY4NmFiMmM1IGRlc2NyLWJyYW5jaAorMjE3MDggNjQ2ZTA1MmUwNWJlZDUxZWYyZDQzMDFlYTQ1YzE3YzdiYWYyZTA1ZiBsZWdhY3ktdHJ1bmsKKzIxNzA5IDU4ZWI1MDUyODY5MmM4ZTZjNDM4MTcyYjhlY2VjYmQwMWYxOTdlNzMgbGVnYWN5LXRydW5rCisyMTcxMSAxMmU3YWQxMDgyMjkxNjA1ZGU1NTRiN2Y0OTIwOWQ0YjY3NjE2NGY3IGxlZ2FjeS10cnVuaworMjE3MTIgOWI0MmRmNGI3NGQ0NTYzZWE0ZjliM2ZhZWZjMzM1MjBhM2UwZjc1ZCBsZWdhY3ktdHJ1bmsKKzIxNzEzIGY0MDE0MDU4OGIxZTgzYTc1ZmFhNTVlM2JiMzljNGVkNmQ1MmI2NzIgbGVnYWN5LXRydW5rCisyMTcxNCBlNzYwZWVkNWY2ODgyY2Q0NzYwYzUwNzA4MTUwMjU1ZTdjNDIyNjE2IGxlZ2FjeS10cnVuaworMjE3MTUgYWEzNDQzNjE0NWQwMzNkYmIwMjQxNDBjNmMyNzNhZGVlMmUwOGJiYiBsZWdhY3ktdHJ1bmsKKzIxNzE2IDVkMzk2NGU2MjJhODUyY2MzYjllOTY3NDRmYjYxYTY4YTM1MjJjMTAgZGVzY3ItYnJhbmNoCisyMTcxNyA2MzhkOTA0NGZiZTIxZWI4ZmE2MzhkNWIwZWM4Nzc0OTQ1NzE3NjZhIGxlZ2FjeS10cnVuaworMjE3MTggYTc1Y2EyMTdmNzM3NzdkNGRmZjY2NWY2ZTUwMDA3MGNlZTk3MGY1ZCBsZWdhY3ktdHJ1bmsKKzIxNzIwIGFjZTcwZTMyNzkyOWNhYmJkZTVkOTE5YTVkNTJkMTA1ODBmNTkwYjcgbGVnYWN5LXRydW5rCisyMTcyMSA1NTUxMWNhYTI0ZWViNTk2ZWM2Zjc4MjYzMWI1YzVjMTA4NDJhNzE3IGxlZ2FjeS10cnVuaworMjE3MjIgNWUxYTE0ZDk5M2IzNWI5MjM1NjI5OGI1M2FhYTlkYjJlNzUxMDAwZSBsZWdhY3ktdHJ1bmsKKzIxNzIzIDk5YjVkMzM0ZGUxZTQzMWZkYjZmMDBkMDVlY2VlMTE5MjkzZDdmOTIgbGVnYWN5LXRydW5rCisyMTcyNCAxNDRhMzAwNWI1YmFlM2RhNTFjMmE0ZjNlYzg3NjVhNjc3NWU5NTRhIGxlZ2FjeS10cnVuaworMjE3MjUgOWI4NTY0ZjZlMzRkNTFjYWUyOTU4MmRiYTJjYWQ4ZmYwMGJiNjkyOSBsZWdhY3ktdHJ1bmsKKzIxNzI2IGM0MDQxMDcyZDEwMTAxMGRiMmQzYzg1NDlmOTc3ODVmMjU5M2MwYzUgbGVnYWN5LXRydW5rCisyMTcyNyAzNDZkY2FmYzg3OGI0NjZlNmUwODFmMjk3Y2U3YjFlOTNkYzc0OWVjIGxlZ2FjeS10cnVuaworMjE3MjggNjcwNDY0Yzk0YjkyYTY4MjMyMGQxNzk0OTMxMzVjOWIwYzNhOGEzYiBsZWdhY3ktdHJ1bmsKKzIxNzI5IDdkNzc2MTRmZDBiN2ZkNzAxYzc4NjE4M2JhYTY5M2YzMjA3ODkwNGUgbGVnYWN5LXRydW5rCisyMTczMCBjNmMzMGU0NWFiNWJhNjYyYjU4NWYzNDkzM2NkNjljNjQzODdlOTAwIHJlbGVhc2UyMS1tYWludAorMjE3MzEgNDM4NGY5MTliNDQ4NTQxZmYxMjhjZThjMzAwY2I5NjI2NDY4YjNmNSBsZWdhY3ktdHJ1bmsKKzIxNzMyIDhkNjJkZGU3NjI3Y2VmN2NmMGU0Zjg4YzAzZmMzYzY0MWYxZWJhMWQgbGVnYWN5LXRydW5rCisyMTczMyAxMzJhMDZhZDk2ZWVjMWE1ZTg5ZDliNmYzMjJhZDBlZjI0YjU1N2M5IGxlZ2FjeS10cnVuaworMjE3MzQgYTg2MTk1ZTZjN2UzMzJhNTdiNjhiYWIwYzNlZDJmODE0ZGVmMTI2NyBweS1jdnMtdmVuZG9yLWJyYW5jaAorMjE3MzYgNmI2MGQwZDk3NGMzMWQ1YjlkYzk2ZTk3YjllODI1MTMxZDdjOGE3YyByZWxlYXNlMjEtbWFpbnQKKzIxNzM3IDI4ODE4NzY2YTY0Y2E1Zjk1YmJkMWY2OGU2ZDNhOGUyZTIwN2ZjNjAgbGVnYWN5LXRydW5rCisyMTczOCA2MWU1MGQwYWE1OWExZDg5NjlkOWQ4OTdlNzM0MWViOWMyOTg1ZDk2IGxlZ2FjeS10cnVuaworMjE3MzkgNDA1MzUyZWE1MGEwN2QzMWY2NWQ3YjFiZDA1MzEyODBjMWFkMjJjMiBsZWdhY3ktdHJ1bmsKKzIxNzQwIDQyNDdiNGIyYzQ4ZTY5MTQ3YTk4YjFlMWEzNzIyYWU4ODIzYWVhMzUgbGVnYWN5LXRydW5rCisyMTc0MSBmZTQ0NDI4Zjk3NzRkZjg0NWJiZjM3MzVjZmE4YWE1YTM5NmQxNjI1IGxlZ2FjeS10cnVuaworMjE3NDIgMzA0MTRiNDFmYWM5Nzg0YjZmMTM1YmE3NWIxZWEyOTQxMzAzYjNhMSBsZWdhY3ktdHJ1bmsKKzIxNzQzIGU5OTU0NTY3YzU0YjAyZjcwNGE5Y2ZkMGExMjVkZDVkZjBkZDc0YjggbGVnYWN5LXRydW5rCisyMTc0NCAyMWEwNGQxNWUzOGMyNmQ4MzNkMWUwMWI5NjlkZmUzYmEyZTc4NDEzIGxlZ2FjeS10cnVuaworMjE3NDUgNWI4MjBkN2EzZTdjMTNlMjlmM2YzNDJjYzk0NjZkOGFiNGNmZjkxMSBsZWdhY3ktdHJ1bmsKKzIxNzQ3IDI3ODMxODMwNDM1NzkxOTJkZjUwMzQ5N2NiODkyMjA0MjI3MzY0ODAgbGVnYWN5LXRydW5rCisyMTc0OCBjN2JlZjZhYTZmOTI2NzI3ZDExOTlmYmFjYTdhNWU1NmFjMDcyZDdhIGxlZ2FjeS10cnVuaworMjE3NDkgMjFjNTQ5YjY2NzAyNDExYzhlNjI4NzE1MzEzN2M0ZjI1OTEyOTEyZSBkZXNjci1icmFuY2gKKzIxNzUwIDExNTM4ODA1OTdjYzcyYThjZWNiZDFlYjNlODM1MjAzMTllNzA0NjYgZGVzY3ItYnJhbmNoCisyMTc1MSA5YTM3M2ExNDNhMTMwZjJhYmM4NjM0MDBiODIzMWEwM2UyMzFmOWRhIGxlZ2FjeS10cnVuaworMjE3NTIgMTkyNTBmOTE4MWRjNDRlMWE5NTZhOTM5NTdmNmRiNmI4NDJjODIwOCBsZWdhY3ktdHJ1bmsKKzIxNzUzIDIzZTZiYmE4OGQ2YTdmYzdmNWI5Yzk4NjIxMDY5NmI2M2Y2MDU5ODcgbGVnYWN5LXRydW5rCisyMTc1NCAyOGI2MjkxZTJhNWNmN2Y1NTJkM2RiOTlmYjdlOTAwNmNiNzZkNTFhIGxlZ2FjeS10cnVuaworMjE3NTUgM2YyODNjOThlODE1MDc5YjU0Y2RmZDNhMDczZDA2MzljY2QzY2IxMyBsZWdhY3ktdHJ1bmsKKzIxNzU2IDExNTFhYjhhMmNkZmU1OGUyNTBiNTA1NjFkZGJkMWI1ZTkxMWM4NzAgbGVnYWN5LXRydW5rCisyMTc1NyA3ZmRiNDE2MDNlOWEzYzNjMzEwY2E5N2E3NGUwMDQ0Nzg0ODY4NGUyIGxlZ2FjeS10cnVuaworMjE3NTggODU5NTA1MjI0ODUwMjBlZmIwMWY4YjIzOGZjZTg1ZGYzNWEyYWU5OSBsZWdhY3ktdHJ1bmsKKzIxNzU5IDcyMWYxYTg5M2ZiYmMyNDhjYzA3MWZlMzIzZjU4Y2MzZWUyNTVlNGYgbGVnYWN5LXRydW5rCisyMTc2MCA5ZjQzZTNhOWJiNmVlMjUyNmUyODljOTI2ZDU5YmE4MjY3NDQ5NWQ2IGxlZ2FjeS10cnVuaworMjE3NjEgYjlkNDdkMDgzZDJjYWYzNDI4N2I1ZDg5NzdmNDMyNzlmNThlNzQ3YSBsZWdhY3ktdHJ1bmsKKzIxNzYyIDI3NWFmYjVhNzY3ZTJiZDkxMTEwYjk3OTU2MDNlYzBiYzk3ZDhiNTggbGVnYWN5LXRydW5rCisyMTc2MyBmODRhY2M5ZGZkMGI1Y2RjYmFkOWNmMzE0MDJlNzAwNWVkMmY1MjliIGRlc2NyLWJyYW5jaAorMjE3NjQgMDg1N2ZiNDg5ZmEzYTYzMTA3N2E5NzMxZDhlNjE1ZjcwMzkzOWU2ZiBsZWdhY3ktdHJ1bmsKKzIxNzY1IDczMGFiMGJlZDZhYjQ2ZjBhMTcwODc4Y2YxYjQ4Yzk3NTQ3MmFlNTMgbGVnYWN5LXRydW5rCisyMTc2NiBmYWY3ZjE3MWE5ZjMyMjQwOWI1MThlMDE2ZmMzNTVlOGRhMGU3ZTQ0IGxlZ2FjeS10cnVuaworMjE3NjcgZGNkMWEwYWFhZWNiNDljYTc5N2NhNmNlYTdlNWI4NmZkN2U3NjMzMiBsZWdhY3ktdHJ1bmsKKzIxNzY5IDIxZDdiYWU5ZGMyZGI2YzJjYjNkNzJkOWUzZjczZDkyYTkzYTgwODUgZGVzY3ItYnJhbmNoCisyMTc3MCA1OTQ0NmQwZjgzNDFkZDE3MzBmMTYxZTAzZTFkNzI5NjIxNTc0MDljIGxlZ2FjeS10cnVuaworMjE3NzEgMWY5YzdiNGNlZTc3YWZlOWZhOGE0YTVlNGRlZTExMDAwNzc2YjUyYyBsZWdhY3ktdHJ1bmsKKzIxNzcyIGZkYjM2YTBjN2U2ZTk4ZTYyMGJmZjFmYTA2NDg4NjU2MTBlNjgxMzUgbGVnYWN5LXRydW5rCisyMTc3MyA0YWM5OGZlN2FiZDJiNTE2NzYyNjk4Njc0NmRlNDJjNDY0NTMxNDQzIGxlZ2FjeS10cnVuaworMjE3NzQgNjIzOGEyMjJiN2NkNjU4YWI0MzM5ZWE2YzNhNmJhNDc3NWNhODg5YyBsZWdhY3ktdHJ1bmsKKzIxNzc1IDM4NGE2MWZhNmY1YTIwNDdkYzRmMzllZjZmYjM1OWQ2Nzc3Y2IxNDMgbGVnYWN5LXRydW5rCisyMTc3NiAwYTkwZTVlYzYxYjY5ODFlNjU2ZTdlYzhkNDlhMjk2NGY4Mzc1ODc3IGxlZ2FjeS10cnVuaworMjE3NzcgMDFmYzk4YmEzOTlmMWE4YWYxZjM5ZDRmNzQzNDRiZTQwZjIxNGUzNCBsZWdhY3ktdHJ1bmsKKzIxNzc4IDE5ZGNmYjkzNWY2MGU0ZTBmOGFjZjg2MTI4YmMzMDQyOGQ0Y2M3NzEgbGVnYWN5LXRydW5rCisyMTc3OSAyNzEwNjRkYTFkNTJjY2VjOThmZTE4NTMxMDBiODU4MzRjOGNmNWRmIGxlZ2FjeS10cnVuaworMjE3ODAgMWYzZDc2NmRhZDkxZTVlZTI2OTI4ZTU5MjU5NGMyMWNkNWNmZGJiMSBsZWdhY3ktdHJ1bmsKKzIxNzgxIDkxNTkyMjJlNjQ2M2ZkNTk0NTA0OGI2N2QzYzlkNzYyYmI2YTVhZDkgbGVnYWN5LXRydW5rCisyMTc4MiAxMDcxN2Y4YTZkOTY4NGMyOTdlMTUwOWJhY2ZlNDg1YWY0YjAzZDJlIGxlZ2FjeS10cnVuaworMjE3ODMgOThkODFjYmU4YmJkN2ZkYjM5NjE3NDA1YTJhMGVhNzMyM2FhYzczNCBsZWdhY3ktdHJ1bmsKKzIxNzg0IDM1ZmVjNDg3YmNlZjc3NzM4ZDVmYjNmZmE5ZDgzOGM3MmQxNGFhMDMgbGVnYWN5LXRydW5rCisyMTc4NSBlNWU1YmI1NDgyZDNiNzJjNjcxMTI2YTg5NzEzOGNiNDE4N2U3YTAwIHJlbGVhc2UyMS1tYWludAorMjE3ODYgOTIwZWU3ZjJhNTkyMmU2ODVlYThjNTQzMjA3ZDkzZWM2NWM2MTdlZiByZWxlYXNlMjEtbWFpbnQKKzIxNzg3IDJiNWU3MzgzYzc3YTE2ZjM0ZWRlNDg3NmUzZmY4MWY4ZDdmNWY0YjAgbGVnYWN5LXRydW5rCisyMTc4OCAyOTU1MThlNmZjZWFiZTE5MDc2MjVkODU0YmVkOTkwMjJhZmUwZmVlIHJlbGVhc2UyMS1tYWludAorMjE3ODkgYzA2ZDgxNzllOWUzYjMzNjg5NmE1NmQ5ZDIwOGQzODZkMTc4NTk4NyByZWxlYXNlMjEtbWFpbnQKKzIxNzkwIDkxNDk0MDk0NmUyZWExZmNjYWUwMDNmYzAxMDNkYmM4MDkwZWNiODMgcmVsZWFzZTIxLW1haW50CisyMTc5MSBjOWI0YzhhZTYxNzkyMzA1MWE2MWZmMjYzMjdiOGM4MWVhZjgxMTYzIGxlZ2FjeS10cnVuaworMjE3OTIgNDAzMGM5MDE5MDY3YzVjMjA2N2U4ODMwYTMyZjAxYjBjNjg0ZTI1NCBsZWdhY3ktdHJ1bmsKKzIxNzkzIGZkZGU5ZmFjYmI2ZWE3ZDE1NWQwZDRkZTI4YWM2Y2MxZWQ2ZTA4NmUgbGVnYWN5LXRydW5rCisyMTc5NCA3N2M4MjgyNGRmNDEyOWYzN2JkYTYxMTk3N2FiMThkMzg4MTQ0MGZmIGxlZ2FjeS10cnVuaworMjE3OTUgZDU5YTg0NzZhZmFiOWRmNTRhYTA0MThlZDVjZTA0M2M3YTM3MmUyMSBsZWdhY3ktdHJ1bmsKKzIxNzk2IGM4ZTQ3MjhkMmFiMGYzY2E4YTBkMmIyMTY5ZGZmYTRjMDVjZWY1NTUgbGVnYWN5LXRydW5rCisyMTc5NyAxZDNjNTdjYzhkMDg1Yzg2ODdiNzhkODllNjk4YWQwYzMzNmRkMjU4IGxlZ2FjeS10cnVuaworMjE3OTkgOTgzYWNhYzU2NDY2YjNiY2ZjZGRkMmM0MzE4MjkwZWE3Yzk1MzZkYyBkZXNjci1icmFuY2gKKzIxODAwIDA1Y2Y2YjNlNjNkZTU1NGUxN2I5MzU2NjUzNDQwZDZiYzUzZGJhNDMgbGVnYWN5LXRydW5rCisyMTgwMSBlNTNiY2JjMzE2NWUzOTY3OWFmNjM4OTkzZWUyNWJiNDUwNzU2Y2NmIGxlZ2FjeS10cnVuaworMjE4MDIgZDNjMjViMDZiN2U1YjQ0ZGM1MzAxZmRmY2MyNjQ4ODAwOTY2NWRmMiBsZWdhY3ktdHJ1bmsKKzIxODAzIDU3ZTU5NTI1ZDIxN2RmY2UzNWQxOGE0NmViOGQyNDhlYmFiOGNlZWQgbGVnYWN5LXRydW5rCisyMTgwNCBmZGY4ZDA4MzEyNzg5NTNhMjg1NzljMWRjYTAzMmI3MGQ3MDVkNTM0IGxlZ2FjeS10cnVuaworMjE4MDUgZjcxOTY0ODZmNDJkMTgwOWQ1ZThhNGE2ZWRkN2MxY2NhZmQ1MzUyYSBsZWdhY3ktdHJ1bmsKKzIxODA2IDZhNTA5MTBjYTMwM2FkMDRhMzdjZjlkOGFlZmU5OWMzZWE2YzhjZmUgZGVzY3ItYnJhbmNoCisyMTgwNyA1NTcxN2RjMjI3ZjRkZTEwYjQ5MGM4ZjVmNjMzYjVkNjVjYmMxZWEyIGRlc2NyLWJyYW5jaAorMjE4MDggOTRmYmNmMTk2NTQ5NTU3YjhlMjcxZmI2ZDllYWY2N2U4ZDlkYTU3ZiBkZXNjci1icmFuY2gKKzIxODA5IDA3NzJlYWExNzYzMTlhYjRmZmM1OTQ4ZTY4MDM4ZmVlMDQ1MDc3ODUgbGVnYWN5LXRydW5rCisyMTgxMCA3MzM1YWM3YzUzMTU3ZmMwMGQ5YzFkZTM4YTUyMGFhMzg4ZmJhMDdkIGxlZ2FjeS10cnVuaworMjE4MTEgY2I1ZWE0ZDhlOGJmOTgxMWQ2NjZkZjQ0YzNiNDBhMGM3Njk0NDNhOSBsZWdhY3ktdHJ1bmsKKzIxODEyIGU1YTJlODkxNmUwYjRlNjRjM2YyNzgwYmJlMjUwNDY2MWUzN2IxN2EgZGVzY3ItYnJhbmNoCisyMTgxMyBjNDNmZTIxM2VlMTA4ZjUzNTMzOWI5YjI5M2I1NTc5Y2U2YjRiYWU0IGxlZ2FjeS10cnVuaworMjE4MTQgYWQ4MmNhZmU0NWFjZjQ5MWY4OTg2MTVkYWY5MmEzYzJkMjc0Mzk0MyBsZWdhY3ktdHJ1bmsKKzIxODE1IDMzODE4ZWM2Mzk1YmFkOTBhOGRjYzMyOGZkYmE1ZjMyMTQ3NWZkZjMgbGVnYWN5LXRydW5rCisyMTgxNyAxZjFjNzhiYTU3ZmY0NTdmNjAwYTI0YzU0NjM1NjI5Mzg2NDVkNjExIGRlc2NyLWJyYW5jaAorMjE4MTggZDYyMzNmN2I3NGMxOGZlNWNhZjY0NDU3NTYxNTdmMTc2MjNlZjM2YSBkZXNjci1icmFuY2gKKzIxODE5IDhhYTYzYWVhNzI2OTU5OGE3MTNiZTQ0NzQ4NmFjNTZlODhhODIwMTcgbGVnYWN5LXRydW5rCisyMTgyMCBjYjY2YTk4MzA5NmY3Y2YzOTUxNWI0YzMzYWU0YWVlMTU2NmM1MGM1IGxlZ2FjeS10cnVuaworMjE4MjEgM2I4ODg4NTlkNTJiM2E2MDdiYzg1YjU5ZDZhOGM4OTQwZGVhZTBjMyBsZWdhY3ktdHJ1bmsKKzIxODIyIGNhOGE0OGFiYTIyZWNlMjliZDY3NzA5ZDU1ZWFiOWQ1OGRmZTFjZTUgbGVnYWN5LXRydW5rCisyMTgyMyA1ZWJlZTVjMDYwZDBlN2RiMjE4YzdjMWJmZTIxMDhkYTVhN2I2NGQyIGxlZ2FjeS10cnVuaworMjE4MjQgNzQ4ZjZiM2E4YmY2Mjc0ODFmMjk3NjJkZWIyMjU0MzhjMmNjOWYwNiBsZWdhY3ktdHJ1bmsKKzIxODI1IGFjMTFhZjdkODYwYTM1ZjVjZTc2Njk0NzYxNGRlM2ZjNTM4NTUxMmYgbGVnYWN5LXRydW5rCisyMTgyNiBmY2RiOGM5NGI1ZDhmMzNkZWI4YjQ2NzBiNmYyN2NlZmNjN2I5ZTk4IGRlc2NyLWJyYW5jaAorMjE4MjcgY2Q2MzlhOTQ3MWI4Zjc5MDVlZjU4MWVjOTQ2YTkwYWMwZmMxMzdlYSBsZWdhY3ktdHJ1bmsKKzIxODI4IGU2MzhmMTIwNmVlMGJkOTlhOWE5MWYyNDUyZDg5MzhkMGE1M2EyYTQgbGVnYWN5LXRydW5rCisyMTgyOSA3MDI3NTAzN2YxMmQ4ZGVkNmFkMjJiY2FmOTNhZDc0MzIzYzBmYjhlIGxlZ2FjeS10cnVuaworMjE4MzAgNzQ2MjNiMDc2ZDFiZTllMzNkMDhmY2RmNjVlMTFkN2VmYjZlYzk2NSBsZWdhY3ktdHJ1bmsKKzIxODMxIDk1ZGRjZDQ0NGQzOTJmYmIxMzZjNzY3YjFhM2EyMzdhYTE0ODJhMTYgZGVzY3ItYnJhbmNoCisyMTgzMiBkODllOTM2ZTFiMTA2NWM1ZjU3MGMwMjU5ZTczMzAyZGQ2NDNjNWRhIGRlc2NyLWJyYW5jaAorMjE4MzMgNzA3MTFhOThkOTg5N2M4OTM3OWJhZDA0YWZlNDM5YzMxNWRjOWY4YiBkZXNjci1icmFuY2gKKzIxODM0IGUwOWJlZTliNTcyOTJkNzYxM2VlNzYyNDRiZTg0MjRhNTY3NDdhZTIgbGVnYWN5LXRydW5rCisyMTgzNSA1ODRiZTBiYmQ5NDJiNjQ1NWMzOTkyZmFiNDg2Y2YxNjE2YzkwZTljIGxlZ2FjeS10cnVuaworMjE4MzYgZjY1Y2U1OTkwNTQ3ZDUxMDRjYWRhZmEwMDk2NTJjNmVmOGI2MDExOCBsZWdhY3ktdHJ1bmsKKzIxODM3IGI3Nzc1ZWJiZjQ0OTA5OWE0ZTFiMDU0OTgyNTg1MTVjZjBlNjNmNWIgbGVnYWN5LXRydW5rCisyMTgzOCBmMTQ4MDAyMjk2NzdkZWEwYWFiNmU4ZjVhN2RiMmY0ZmI5NThmZDg4IGxlZ2FjeS10cnVuaworMjE4MzkgOTI2MjZmNDJlMDQzM2NlZjY2ZjVkZTY2MGRlZThhNDhiNjUyODU2ZiBsZWdhY3ktdHJ1bmsKKzIxODQwIDVmYzJiYTFjM2YyNDIzZWU5MzkzMDMzMjhiZGE2NmE1ODFlMDZiZTMgbGVnYWN5LXRydW5rCisyMTg0MSBhMDI3NzlmZDliOTIwZWI3ZmE5NWI3OWM1YzQxMzJiOWU1OTI4N2VmIGxlZ2FjeS10cnVuaworMjE4NDIgMWY5NzQzYTFlZDdiMGIwOGFhOTQxOGI4ZTczZDcyYjIyYzE1NTIyZiBsZWdhY3ktdHJ1bmsKKzIxODQzIDZkNGE1MzBmZTdjMTYyMjExMTY4OTgwZDZlMGE5MTE5ZDRmYWIxOTQgbGVnYWN5LXRydW5rCisyMTg0NCAzODRiOTExM2EyZTBjNjlhZGZiNDJkNWE3MWQ5MjAzMmExZDJhN2QwIGxlZ2FjeS10cnVuaworMjE4NDUgNzkyN2U4Y2Y0NjE1MGFjNGQxMmFlMDg3MjJjN2Y3NWE5MzhjOWVlOCBkZXNjci1icmFuY2gKKzIxODQ2IDM4MjA2ZjI5YjBmYzFjNTQ3NWQ3NzE4NWFhYmE1M2YyMjJjZjFiYjkgbGVnYWN5LXRydW5rCisyMTg0NyBjZmI1N2RiNGMzODhlNzU1ZjlkZTFhMDVkNzJlYWNjZTYwYjYzODgxIGxlZ2FjeS10cnVuaworMjE4NDggNDkyYTFiZDRkMGM1ZmUxYTJkZmM2ZGJjMTIxNTdmNWFlNWIzZDliZiBsZWdhY3ktdHJ1bmsKKzIxODQ5IDllZThmMTZiMGUyNzJmNjllYTQ0MGFmNThmMjg5NTdiODUwNjU4NDYgbGVnYWN5LXRydW5rCisyMTg1MCBmN2JlN2U5YTZmMjAyODFjYmJlNTY4M2EwZDE4MDU4NTFiYjkyYWJjIGxlZ2FjeS10cnVuaworMjE4NTEgZDNiYzgyZDFjNWE5Mjg1NWMwNDA4NzQ0M2NkMWU5MmM5Yjc4NDZmNCBsZWdhY3ktdHJ1bmsKKzIxODUyIGU0MjFhYTQ1MDQwY2QwODY5MWNhMzgyMjQ5NTVmMjU3M2IyYWMwYzYgbGVnYWN5LXRydW5rCisyMTg1MyBhN2JjMzM5ZWUyZjM1MDg5N2NhNTc1MWNhM2MxMTYzMWNmMmZhMWU4IGxlZ2FjeS10cnVuaworMjE4NTQgMmJhMWQ5ZDk5NmEzODNlZTIxMjRkYzNiNzcxNjFlN2Y4NjM2YTVmYyBsZWdhY3ktdHJ1bmsKKzIxODU1IDA1MDVkOWRjODMzZDc0MDM1OTUyODM1MzMxZGEyY2Q0Y2U2YWY2ZWUgbGVnYWN5LXRydW5rCisyMTg1NiBjNjU5ZDRjMDA5Y2JmYjM3ZjE0NGNkOGYwNmQ4Njk5OWVkNzExNzNhIGxlZ2FjeS10cnVuaworMjE4NTcgYWQyZjUyNmYwMDE5ZDQxOTgxZTk5MjA4MDQyNzUyN2VhYmU0MDk5MSBsZWdhY3ktdHJ1bmsKKzIxODU4IDhjYTcwYzljMTk3MTM3NmU1NGI1NTU1OTY0Yjk4MGZhMWViZmJiZjUgbGVnYWN5LXRydW5rCisyMTg1OSA0NzkzMmQ4MmI4ZWIxZmY2MDE4YWQxYzhhYmQzMWU2ZDcwMWM0NjU2IGxlZ2FjeS10cnVuaworMjE4NjAgYTM4ZTc3MjQwYTY3Mzk4MGVlOGQ5ODE4MTQ2MTVmMzEyNzJkMjQ0MiBsZWdhY3ktdHJ1bmsKKzIxODYxIDU0ZDA0NTljOGUwZmRiZDYzYzI0YmVhM2I0NWE1ODc2NTAxNTc4ZDkgbGVnYWN5LXRydW5rCisyMTg2MiBmZDc0Y2I1Yjk1NzMyYzg5ZjRmOTBmNjgzYTJhNTUwMTY0OGJkODFmIGxlZ2FjeS10cnVuaworMjE4NjQgMDljNmZlN2RiYjFjNTNjZDdhZTFlODViZDQxMjU2MTg1ZTZiMWUzOSBkZXNjci1icmFuY2gKKzIxODY1IDQ1ZjUzZmU0NGMwZTZkNWNhNmM1MmY0NzRiNDQyNGIxZjY1ZWIxODYgZGVzY3ItYnJhbmNoCisyMTg2NiA2MmUyNGJjNDdiNjIwNzJkMzE1NzQxM2U0MjQyMDJkZDM5YTJjYTVkIGRlc2NyLWJyYW5jaAorMjE4NjcgYjIxZGYwOTFmYmJmZDZkN2M3ZmZlODY4MTZjODRiZTQxZTQxMmJjMSBkZXNjci1icmFuY2gKKzIxODY3IGQyNTA5NTkxMzNiNWE5OTZiMWVkZjhhNDc3MmZhMDJlNThhM2E5NzIgZGVzY3ItYnJhbmNoCisyMTg2OSA0YzU5ZTkzNGU3NjVkZTUwM2JlOTM2OTg5OGU2OTExNjY5ZmY3ZTkyIGxlZ2FjeS10cnVuaworMjE4NzAgMDY0ZGU4NDM4NWNhZWEwZDI3ZDdlNTlkMDRlNmE5Y2ZhMjM4OTM3YyBsZWdhY3ktdHJ1bmsKKzIxODcxIDUxYzM4MmQ1ODUxYjkxOTJmODZkMWM0NWM2MTgyZTc5NGE1YjhhZDQgbGVnYWN5LXRydW5rCisyMTg3MiAwNzkxN2YxNDM0ODg2MjE2MDNlYzU2NzE5ZDc5OWI3NDBkMjEzZjIyIGxlZ2FjeS10cnVuaworMjE4NzMgMDA2OTU1NTFkNzIxMjExNzA1ZGQ3M2EyMjUxNjMyZjIxZDg2YmQ5NSBsZWdhY3ktdHJ1bmsKKzIxODc0IDQzODE0NjFjY2U1ZGY5MmNlMTM1ZDVhNGQ0YmMzZjBmMjZlN2YxNWYgbGVnYWN5LXRydW5rCisyMTg3NSA5MjE4ZmE2NTIzOTFmM2E4OTFjNzI0YzRiOThkMzdmODZiN2NjNDc1IGxlZ2FjeS10cnVuaworMjE4NzYgMjUyNDRiZGIxNjNkOTIxZTIxMzBjZTZhZTBlMDJlMmFmM2Y2MWE0NyBsZWdhY3ktdHJ1bmsKKzIxODc3IDFjMmRhNzhiODM5YjliMDU4ZDY2YjY3MzVhMjhlNTBmMDY1MGNiMjkgbGVnYWN5LXRydW5rCisyMTg3OCA2Nzk0ZGNhZTVkMGNkOTg0ZTBkMGQ3NDgzYWE1YWU4MjQ4ZDBiYjM2IGxlZ2FjeS10cnVuaworMjE4NzkgYzc2Njc1NmQ4NGQzMzc1ODMzOGU5NDlmNGFlN2ViZDJkN2M1ZjcwMCByZWxlYXNlMjEtbWFpbnQKKzIxODgwIGRhZWE5NGYwNjQyOTYwOWY0YmZiZGQ5YmZiNjQwY2U3OTM2MWI4MzggcmVsZWFzZTIxLW1haW50CisyMTg4MSBhMWYxOWVlMDFhYWUwZDVlZTNjMzJiOTdlZmJjM2MzZjFiNTMxZjU0IHJlbGVhc2UyMS1tYWludAorMjE4ODIgNTM1NDVjMzcxZmUzODQwZDEyMDk0N2M1OTFjNDBjM2Q4MmUxNjlkMCByZWxlYXNlMjEtbWFpbnQKKzIxODgzIDNjZDMwODFkZjYwMWMyMGE5MmY4MWFmNDI1MTg4YWIxN2MwNzIzYjEgbGVnYWN5LXRydW5rCisyMTg4NCA5NWVhNjEwZjNmNTRkNzJhYzg2NmUzNDk3YjgxNmI4MTI1ZTdkZDYxIHJlbGVhc2UyMS1tYWludAorMjE4ODUgMzZjNTYxZWU5NmI1MzI5ZjUwYjAzMGNkYjkzZjVhOWJiZWYwMzNmZSBsZWdhY3ktdHJ1bmsKKzIxODg2IDhkZjc3NDE1YTYxZDU2NGM4NjM5NTY4MjM1OWI0Y2MxYjhjZjZmYWEgbGVnYWN5LXRydW5rCisyMTg4NyAwM2MyMGU3Y2NlNmFjZDRkMjgwNDQ4MGRiNGI3YmNiZTFkZDkzNWY2IGxlZ2FjeS10cnVuaworMjE4ODggNzBlMTg1OGFkNzAzMjIxYTYyNjA4MzdlY2FiOTI5OGZjOGY4OGQ1MiBsZWdhY3ktdHJ1bmsKKzIxODg5IDIzNzM2ODY0NGMxM2Q1MzdjN2MyY2M4NzNhNTkzMzE1ZjQ0MzI1MDkgbGVnYWN5LXRydW5rCisyMTg5MCA3MjZmNGQwNmJkNGJkMzg4MDI5MWVjYTE2MzdjYTllMjA1NTFiMTUyIHJlbGVhc2UyMS1tYWludAorMjE4OTEgMjRkMDA1NTdmYmM5NWFhN2ZkMWZkYTMzODEyZjhiN2UxMDBjMjlhZCByZWxlYXNlMjEtbWFpbnQKKzIxODkyIGIwOTQ5NjU5NjBhZjkxZDBhOTMxNjdhMjg5ZmQxNDU5ZWViNGQzNTMgcmVsZWFzZTIxLW1haW50CisyMTg5MyA0YzBhZGI4YTViYzY1MzkzNDI4ZjY0NTFhNDA0N2M4YjQ3MzMyMTMxIHJlbGVhc2UyMS1tYWludAorMjE4OTQgOGNmNTNkMGY4NWM4NzRlN2ExZTdmN2MwMTVmZTJhMjRkM2I1ZGVkZiByZWxlYXNlMjEtbWFpbnQKKzIxODk1IDVjNzM2MjFjOTU1OWI1OGZiZmNjMDU2OWNmN2Q4M2UwN2E1OTcxOWMgcmVsZWFzZTIxLW1haW50CisyMTg5NiA1YjA3NDcwMjM5ZGI4OTI0Yjg3MzY0M2JmNDY3MzMzNGU5NzliNjEwIGxlZ2FjeS10cnVuaworMjE4OTcgNGNhOWFjZWQ1NTAzN2NmMzE2NTcxOTk3MWM4NDM2MmNhZWVhMjQ3MSBsZWdhY3ktdHJ1bmsKKzIxODk4IDU1MzIwZDYyOTFjOWY1YWI4ZThkNjFlZTQ1MGJlYmE2MWY3NGI3MjIgbGVnYWN5LXRydW5rCisyMTg5OSAzYzA1MGQxZTM1YjEwMmE5NmNkMTMxMDVkZDFiODM4ZmZkZGY5YjY3IGxlZ2FjeS10cnVuaworMjE5MDAgMTFmNGNkNDVhODBjMDc4MzdkMDg0OTVkY2RlZDhkMDRmZGZmODY4NyBsZWdhY3ktdHJ1bmsKKzIxOTAxIGJhYWFjOTRmZWM1NDc1MjBhZmU3MTY2NDZkZjUyNGU0NmU2OGI1NzUgcmVsZWFzZTIxLW1haW50CisyMTkwMiBlZTliNDU4MDQzMzc3MGI0MjdkZTZmMmVlMWQyNzMyOWY2YzVmMGE5IGxlZ2FjeS10cnVuaworMjE5MDMgY2E5ZDdhNjM3OTRmMDE1YjhiOGM3ODVlNWQxMzllNTdhNGFjODhhMSByZWxlYXNlMjEtbWFpbnQKKzIxOTA0IDkxNzE2OGZiZmQ5NGIzZGY3ZmU2YTNlOGViMzFkZTgyMDlmYjIxODQgbGVnYWN5LXRydW5rCisyMTkwNSBhNTU3ZTk1YjkyZjBiZGYyZWUxZTU3MTliMjhkYmY2MjliM2ZlZGI4IHJlbGVhc2UyMS1tYWludAorMjE5MDYgYWU2NzZjZjE0OTVkNGZjZmYzN2U3ODhjY2RhNTI4ODg3NTJhOTQ3MyBsZWdhY3ktdHJ1bmsKKzIxOTA3IGM3ODBjNjFiMzVjZWM5OGRiOTJlOTNiNGY1YmZlMjg3YTgzMjRmMDggcmVsZWFzZTIxLW1haW50CisyMTkwOCBhZDZjNWMyN2VjYmU2M2U4NjE2YTIzZjM2OGVhMTllMDlkYzgxN2NhIHJlbGVhc2UyMS1tYWludAorMjE5MDkgZjhlMjg2OTk3NmIwZTUwNzUwOTE0NTIyMGFhNmI4NTIyNDhhNWQ4MiByZWxlYXNlMjEtbWFpbnQKKzIxOTEwIGQ1MWIyZDkzMzgxNDc4NjE5YzI3Y2ZhNGQzMGJkZjVlOTA0ZTEyZGEgbGVnYWN5LXRydW5rCisyMTkxMSAzMzVlNzViY2I1MWFkODZlMDBiYjc1OGU0MjVlNTI0MjY4YzA5YzYxIGxlZ2FjeS10cnVuaworMjE5MTIgMmNlNmE5YjBhNTFkNjg0Nzc5MjA3NTA0YTljOTIyNDZhMWY0MjAwYSByZWxlYXNlMjEtbWFpbnQKKzIxOTEzIDE0MGI3MjkxMzBkMGM1ZjBiZTMyOGRkZjU3MjNiZjM0NDQ0ODk4NzggcmVsZWFzZTIxLW1haW50CisyMTkxNCBiMDMyOTY0OWI4Y2ZjZmE1YmEzNjFmYTE2MmFlOTQ3NmZlZDVkNjYxIGxlZ2FjeS10cnVuaworMjE5MTUgYzI1ZjJjMTNkMzgwNmY0YzM4NzY1N2VjYWIzOWU1NjY4OTI0ZDE0MCBkZXNjci1icmFuY2gKKzIxOTE2IGRmNGI2YjVlYTliODVjNWM3OGI4ZGZlODcwZTk0YTQ1N2I5NWE0ODYgcmVsZWFzZTIxLW1haW50CisyMTkxNyA1OWQxNGM4ODY1MWNiNDQ0Y2EwZTkyNTc1YWJhMTI1YjQxMTc1Y2YwIGxlZ2FjeS10cnVuaworMjE5MTggZmVjOGY0MDM1ZmIyODY2YWU0NWU4MTQ4MjNkZTY5MWM5YWFlNzY1NSBsZWdhY3ktdHJ1bmsKKzIxOTE5IGRlNmYxNTg5Njg2MTk4MGNhOGQ3MmYzZjgxZDNhNzdmOTBjMDA1MmQgbGVnYWN5LXRydW5rCisyMTkyMCBiMjZmZjE2NDMyMTFmMTRjMmM2MGQ0YTM4ZTkxMWM5Y2QyMTFlMmRlIGxlZ2FjeS10cnVuaworMjE5MjEgNzA0NDg2NjQyMDc5ZmU2MzEzN2MzYTEzODVlNjFiNjJkMWQ5MzM4NCBsZWdhY3ktdHJ1bmsKKzIxOTIyIDFhYTdlMjE5ZjUyZGM4MmE5ZDU2YzY4MDQ4MmVjYzk2ZDNhNTk5ZGEgbGVnYWN5LXRydW5rCisyMTkyMyBjN2NiMWM5ZTlkOWM1N2RiNTI2MTc1YjdmM2ZmY2QyODUyYjU5MjRlIGRlc2NyLWJyYW5jaAorMjE5MjQgYzcxMmIxNmZmYWNkNjNiNWQ2MjgyYjEzMzlkMDEyNmRiYmE0MjZhYSBkZXNjci1icmFuY2gKKzIxOTI1IGIxNDJiNTE3MzA5Yzc1MmQxMTFhNTQ1NTI0MGVlYTg0MTFhMWUwODYgcmVsZWFzZTIxLW1haW50CisyMTkyNiA5MjBlMDM2MWRkNmUzZTc0MmNkNTAzMmM0Y2U3MDQ1NmVjODQxMGY4IGxlZ2FjeS10cnVuaworMjE5MjcgMTMzZTU3MDE1MTAxNGY5ZGYwN2EyMjA2ZGMyMjYxNDYzMWI2ZmQ2OCBsZWdhY3ktdHJ1bmsKKzIxOTI4IDhjYTJlZjY2M2FkMjBjYmQ5ZTgyMDNiODJkZjg5ZjY5NmQzNTQyYzggbGVnYWN5LXRydW5rCisyMTkyOSAyNzZiZjU5NmU4ZDE4MDg2MTU4ZTBlYjg2MjFjODhiZTg3ZGMyYjcwIGxlZ2FjeS10cnVuaworMjE5MzAgZGY5YzRjNTRlZjNlZjlkNjM0MjU4NTczZWJhMmZmNWZjNjU4YTQ3ZiBsZWdhY3ktdHJ1bmsKKzIxOTMxIDc0YjdiOGE5NjI4YjY2MjAwZjAxNDIyNzAwMzlkMzRiMjZkNmRiNTUgbGVnYWN5LXRydW5rCisyMTkzMiBlNWJhZmRkZDFkYTA0MmU5YzQwZjBhNDFkMGRhMWNiOTRiY2ZkY2JlIGxlZ2FjeS10cnVuaworMjE5MzMgZDA5MzhiYzEyYTExZTY3YjNiZTA4ZTFlYmM2MDM1NTMxNTA0NDdhNCBkZXNjci1icmFuY2gKKzIxOTM0IGM2ZWY3MWU5NDNkZDY0MGI0ZmQyMWVlM2JiOTJmZDYzZmFlYTgzNjMgbGVnYWN5LXRydW5rCisyMTkzNSBhYWM2MmFhYTg0NmRlZmFkMGJjNDU1NDljYTMzNDVmZWYyN2Q0ZjJkIGxlZ2FjeS10cnVuaworMjE5MzYgZGI2NDdmN2M4MzFiYzU4YTIzMDI2ZGFmYmFlNzQzOGVmMDYyYzEzYSByZWxlYXNlMjEtbWFpbnQKKzIxOTM3IDkyZjgxNDQ5ZTE2YzIxZTdmOGY5NGE0NWM0YTE4YTExMTIxOGZmODggbGVnYWN5LXRydW5rCisyMTkzOCAwMTY5MmJmMDJmOTc4NTA1NTdhNmU0NGM4ODY2MmUzMTliZGYxM2Y3IGxlZ2FjeS10cnVuaworMjE5MzkgM2NkMDNhNjRjMzM4YzAwMzQzOThhMzI0NjIxZDhiZTE2MzFmZGU3OSBsZWdhY3ktdHJ1bmsKKzIxOTQwIGY4YmQxNGFlZjRkNmZiNWRkZjRlOWQ3YzcyNmYyZmQ4Njg5YzQ5N2MgbGVnYWN5LXRydW5rCisyMTk0MSBhZjlhZDkwYTQ0NDU4YjZlMmQ0OGNjZDhkZGUxYzMxNDM4MmQ2NWY3IGxlZ2FjeS10cnVuaworMjE5NDIgNGQ0NmExYjMzYzYyMTNiZTAwZTdlN2M5NDU5ZTRjZDNkMGUzMzg0ZiBsZWdhY3ktdHJ1bmsKKzIxOTQzIGU3MDkyOWUxMDY2M2NlZGRhODBiNmI0MGM0YTc0M2I4ZTU1NzhiOGYgbGVnYWN5LXRydW5rCisyMTk0NCA4MDJhODRlODRlYTk0MmY2MDY0MDhkMWQ0NjY3MjM0YmI1NjFmMzYxIGxlZ2FjeS10cnVuaworMjE5NDUgMjllMDliOTZlZDM2MzVhOTNjMzljZGVkY2Y3ZjU1ZDYxMzg1MTMzNCBsZWdhY3ktdHJ1bmsKKzIxOTQ2IDc0ZGZlMzIwMDQyM2RkMzZjM2NhYTBkZmJmYmM0YzYyMDg4NDczNDMgcmVsZWFzZTIxLW1haW50CisyMTk0NyAxZDUwODNlNmQxN2U2Y2NlNTdlNmE5YTAwYzJiODNiZjgzODJkMTExIGxlZ2FjeS10cnVuaworMjE5NDggNmJlZjA5ZGE5YjkzMjRmMjgyZDlhZDZiMzNmMzY0Mjk3NWY3YWY1OCBsZWdhY3ktdHJ1bmsKKzIxOTQ5IDBlYmZiMjU5ZWNjNjVlOGNjMjcxNWU2YTRlOTU5ODQwZTA5NzlmZDMgbGVnYWN5LXRydW5rCisyMTk1MCBjYmQyMmM5MDI3YjJiM2QzZjM0OTY2NjVmOWEwMWU0NjQyY2FiYWQyIGxlZ2FjeS10cnVuaworMjE5NTEgZmY4ZTBjZTFkOTg2OTgwNmZjNjhkNjUyNmFkNWIwMDZjYTVhYjYxMSByZWxlYXNlMjEtbWFpbnQKKzIxOTUyIDE0MWJkNzBlMGI3MjMwNTljNmRkNTQ4ZmJjNzk3ZDRlYzQwYWU2ODQgbGVnYWN5LXRydW5rCisyMTk1MyAyZTE3M2RhMTFkMmQxNDZjOGJiODIzYTcyZmZjNTlmM2Q2ODcxYmZmIGxlZ2FjeS10cnVuaworMjE5NTQgODI0MjkwN2M4OTU3M2Y4ZWViMzZhY2UyMWI0YzA5MjkxNTM3N2ZmNyByZWxlYXNlMjEtbWFpbnQKKzIxOTU0IDU3MjUzM2EzMDM4ZDE4MzJjOGEyMDBmYjg3MTgxMTJkZDgzNzU4ZTkgcmVsZWFzZTIxLW1haW50CisyMTk1NiA3OWQzMDRlM2JhMjU3YzkwY2E5MTRhOTg1MmZmMTRiNTFkNWI1ZDFiIGxlZ2FjeS10cnVuaworMjE5NTcgYjEwZmYzMzc4OTZiZTU3N2VkN2MzZWY0MDFiM2Q5YWI2M2RiNTZkMCBsZWdhY3ktdHJ1bmsKKzIxOTU4IDVkZTIzYTYzOGFkNjRlOWY1OTVkY2FkOTc3NGNkMDJmMzdhOWE5YjMgZGVzY3ItYnJhbmNoCisyMTk1OSA3NDNmOGUxZDk1M2NiYzFiZWY2ODk0YWVjMDZlMDhhYjJhOGVhN2ExIGxlZ2FjeS10cnVuaworMjE5NjAgNTc2ODRkM2NlZmNlOTFjMDM5MTliMWM1MWRiNDNkOGRjNWY1NGNhYyBsZWdhY3ktdHJ1bmsKKzIxOTYxIDJkNjg2MjYxNDNhNzljOWZhZjcxYjA5ZTdiYzRjNWNjMDQxMDk5YmIgbGVnYWN5LXRydW5rCisyMTk2MiAyMmIyZjRiNDM2YWZmODM5MDI1YTUzNzdjOTZkMzEzMGNmYjg5NWNmIGxlZ2FjeS10cnVuaworMjE5NjMgNGQzM2FjYmRjNTA4ZjRiZDc5NmJmMWI4ZjJjYmIwNGQ4Mzc2NWVhMiBsZWdhY3ktdHJ1bmsKKzIxOTY0IDIzYWU0N2UwMDExOWYzYzY5NjJlYjc0ODg2MTkwNTM4MTY0YzM3YjggbGVnYWN5LXRydW5rCisyMTk2NSA0NDE1NTEyMWYwMmIxZTI4Mzc0MWY1NjJiMjI0M2FiNmI1MGZjYTUwIGxlZ2FjeS10cnVuaworMjE5NjYgNWViNDYwYTY1ZmY3MGEzNGU1ZjQ1ODg1ZTljMDc5YzY0NWQ1OTYwNyBsZWdhY3ktdHJ1bmsKKzIxOTY3IDAxYWU5NjJkZjg4NWU0ZTZlN2JjY2M4ZjI1NTQ2MTAyMzhjYzMxNzQgbGVnYWN5LXRydW5rCisyMTk2OCA5ODQ4NGVmMjI1ZjkyODlmNjIxODE1OWNhN2YzYjg0ZjcxNmM4MDA3IGxlZ2FjeS10cnVuaworMjE5NjkgYWMxM2E2Y2UxM2UyNGNkMGRhYTE4Y2Y0MDJjODhjMzc0NTk0ZmM1NiBsZWdhY3ktdHJ1bmsKKzIxOTcwIDAxYzYzOTk3MWJmZjEzYmZkNTRmODQ0OTZlODJiZWM5NjA1MDIxOTggbGVnYWN5LXRydW5rCisyMTk3MSBiNDY1Y2Q1MGNmMzY0YTk2MjM1YWIyMzdjNDU0ZDk5Njk3YWVmMTc5IGxlZ2FjeS10cnVuaworMjE5NzIgMGUyMjMxMmM0NzMzNGJiZDg5Y2I5ZGUzMjFiNTNjZDU1ZGUwNmM3YyBsZWdhY3ktdHJ1bmsKKzIxOTczIGY5OTlkMzYwOWY3NDY2ZGM2NDUyNzMyZmI3YTViZDU3M2YwMTU4MDQgbGVnYWN5LXRydW5rCisyMTk3NCAyNDAyMDcwZWUwMjRjMzJlMjFiYTVjMDc3OGYwMjc1NjRjZjA3ZTliIGxlZ2FjeS10cnVuaworMjE5NzUgMThkZjA5NzhkZTVkMmUxMTIyODc2ZGZkYzlkMjA1NmFlMjg2NjAyNiBsZWdhY3ktdHJ1bmsKKzIxOTc3IGIzMDdlNWE4YjRkOGQ1OTFmOWZlOTQ2MTg5MmMyZTNkNjFkY2E2MTcgZGVzY3ItYnJhbmNoCisyMTk3OCAwMTQ2MzlkYzY1ZjhjNzY0ZDkxNjRiYTRiNDg0ZmMyMzg1ZmQ3NzlmIGRlc2NyLWJyYW5jaAorMjE5NzkgN2NkMjJiZjU2ZDdiYzIxODFjNDMyZGU2NzdmNTA5YTdjYWE4YjIxMiBsZWdhY3ktdHJ1bmsKKzIxOTgwIGQxMTE5NjMzYTczZTljZGRhNmI3ZDFkZmM0MWNkNWM1OTBhZDVhYjIgbGVnYWN5LXRydW5rCisyMTk4MSAwMmI4MWRmMDQ4YmM1OWY2N2ZjNjlhNWMxMDZmMjNlNDJlZTY2ODY2IGxlZ2FjeS10cnVuaworMjE5ODMgYzJmYmI1OTQxZWU1NmZiOGE5ODU2ZTkzYjMwM2Q0NDdmMDljMmZkZiBsZWdhY3ktdHJ1bmsKKzIxOTg0IDRkMGVhNGMyMzg2ZDVkODhjNDMzNzE5MWYwYjE3NzBhOWI3NzgwZjIgbGVnYWN5LXRydW5rCisyMTk4NSAzZDUzYjU5ZjQ4ZTY2YzgzNWQwMjg2MzljODY4OGU2M2JhOTEwYTRlIGxlZ2FjeS10cnVuaworMjE5ODYgNjA0NzkwZDQ5M2ZhNzM1OWQ2NmU4MmY5ZDA4ZjkyOGZjZGIyZmE4YyBsZWdhY3ktdHJ1bmsKKzIxOTg3IDE4YTNlMGQ4ODA4ZTBmNzU1NjRiMTNjOTFlOGJjMTMwY2E3ZGJmOTkgcmVsZWFzZTIxLW1haW50CisyMTk4OCBkNTkxYTk2YWVkMDY0M2Q1OWVlNjc1NGJiZWZhNmNjY2JjZDUxYmY1IGxlZ2FjeS10cnVuaworMjE5ODkgOTY0NTVmNGFiYWRkMzNlN2JhNDExMDRmMGI0MjIyZTk2NzY3NTE5YiBsZWdhY3ktdHJ1bmsKKzIxOTkwIDRhNDMxOTUyNjc2YjU3YjAyZWJiMTdiMjI4Mzc5MDU3NTg1Yjc2Y2QgbGVnYWN5LXRydW5rCisyMTk5MSA2ZDk4NzRiYjk3OGZiZjVjNWZkOWY2MmVlOGUzN2FkMzVkNmE2ZGY4IGxlZ2FjeS10cnVuaworMjE5OTIgOTk4ZjgwNTE0YTEzMTI5ODhiMzU0NDk1ODBkNDQ0YzdiMDVmZDY0NiBsZWdhY3ktdHJ1bmsKKzIxOTkzIDc2M2JiNmZhZTI4MGZmNzAyN2VkNzRmZTAwZTdlNDU2NmRlYzI5NzMgbGVnYWN5LXRydW5rCisyMTk5NCA3MGI5YjZmNGU3OWMyYTgyOTY0Y2Y5N2U4OGU3YzI0MmQ0MTJmYzM1IGxlZ2FjeS10cnVuaworMjE5OTUgNDQ2MmM1N2Y2Yzk0OGRkZDhkMDI2YmNlNmNlNWQxNmRmY2E3MDZjYiBsZWdhY3ktdHJ1bmsKKzIxOTk2IDc0ZjA1MGY3YzM2NGRlZmI1OGMxOWE1NzhiNmY3NDVmMjZjNTNkODQgbGVnYWN5LXRydW5rCisyMTk5NyAxYjY4NjhlODlhMjNlOGYwYTBlMDdjYWIxZDhjZWVjMjc5NDJiMmY4IGxlZ2FjeS10cnVuaworMjE5OTggYThiMWFjYzdhMjFmNTRkM2Q1MmQ0ZWZlZjRlMDczYjg2NGM1ZGVmMCBsZWdhY3ktdHJ1bmsKKzIxOTk5IDgxMzE1YjZmOTQ2OTUxMDIwNzRmNGIxYzA0NzdmMzJjMzNhOGUwZGEgbGVnYWN5LXRydW5rCisyMjAwMCA0MTAwN2Q1MGNjYjczZDI3NTYwM2RjZTY0MDYzZjliZjE4ODRjYmIzIGxlZ2FjeS10cnVuaworMjIwMDEgMjllNjYxYzUyYzBiNTVlOWI1OGJiYjE3ZjAyNTZhN2ViNGZlZTlmNiBsZWdhY3ktdHJ1bmsKKzIyMDAyIDBjM2FkNTAzYWQ2YzQ5MjAyODFlMzZjZjllMzk4NTM5ZjlmMTk0MmIgbGVnYWN5LXRydW5rCisyMjAwMyBjMzA3MWJkNmE3MTMzMThjYjBhYjc5ZWY5NjlmYzMzZmQ1YzMwMDYxIGxlZ2FjeS10cnVuaworMjIwMDQgMTA3MzI2NTE1NDI1ZGI3OWE5Mjk0MmIwNTY5MDViODE2YTg0ZTc1YSBsZWdhY3ktdHJ1bmsKKzIyMDA1IDY5M2IzOTgzMWY3MTgxMDcyNTU3NDZlMjAxNDViNTQ2NDRjZDkxOTcgbGVnYWN5LXRydW5rCisyMjAwNiA1MDAwNGJlZDRlNjVhOTE2YjNiNTE1MjM0YTdhZjliOTUzM2NhZWNiIGxlZ2FjeS10cnVuaworMjIwMDcgMzE1YjNjYjEyN2MwNjIyMWQ4NDJlZWFlZGI1YjAwMDE4NDIxMTBjMCBsZWdhY3ktdHJ1bmsKKzIyMDA4IGNlYmI0ZTE4NzQ0OTlkNDgzMDU3NzAxMTU1MDJiODYyMmM2NGFlM2MgbGVnYWN5LXRydW5rCisyMjAwOSBkYzliYWY4MGM0NWFmZDkyNjc2NzlhNjU2NjNkOWUxYWE0N2RkYjEwIGxlZ2FjeS10cnVuaworMjIwMTAgNDY3N2QyZmYzMTUwOGY1ZmE2YWFiNjQwYzU4MzRmNTU5MDYzM2Y0OSBsZWdhY3ktdHJ1bmsKKzIyMDExIGE2MzYxYzJlNTA0NGFjZDQ0NzFhYTg1NDljM2FkMDRjZTEwZTk5NzggbGVnYWN5LXRydW5rCisyMjAxMiAzM2Y4MjA4MDU1OWUxNjk4ZDQwNzkyMzkyMmM0MGMxN2FlNmFhNjk2IGxlZ2FjeS10cnVuaworMjIwMTMgM2FhODdmMzRjYWIwMWI2NDRkMjYyMmEwMzkwZjEyNjFkM2M5NDk5ZiBsZWdhY3ktdHJ1bmsKKzIyMDE0IDZmOTI0MmQ4NzA1OWU4NGZhOGE4YWE2N2VhZTQ5YmNmZGVkNjI2NjcgbGVnYWN5LXRydW5rCisyMjAxNSA0MDkwMDYyMDI5M2U2ZDZkY2MwMWNkNWRhY2ZlMjI5NjAzOWYxMWYzIGxlZ2FjeS10cnVuaworMjIwMTYgYjgwYWM4ZTMxYTgwMmVmZTc0OTYwZDMzODc1MjgxMjQzMzAzNzU3MyBsZWdhY3ktdHJ1bmsKKzIyMDE3IDdjOTI4MTE2YmFhMDBkZTBmM2QxYzI0NjUwNWViNGEzZWY4OWU4YWUgbGVnYWN5LXRydW5rCisyMjAxOCAwODFkOTZmYmNmNDMyY2JiNzUxOGRmZTc2MGQ1N2MwZjFiNjVlODBkIGxlZ2FjeS10cnVuaworMjIwMTkgMWJjMWZkZjE0ODJiMDZjNzdmYWNhNTYwYTVjMmM2YjZjYjZjNWFhNSBsZWdhY3ktdHJ1bmsKKzIyMDIwIGZkYjM4OGYyZGY0ZWFhNzMxOTBiNDI1MDE4NDU0ZTBlOTFkNGZlYjYgbGVnYWN5LXRydW5rCisyMjAyMSAxMzJjNGJmZGJhNzQ4MDE4Y2QwNjYwZTBjOTIzNDljMjc4OTM5ZjI4IGxlZ2FjeS10cnVuaworMjIwMjIgMTMxYTlmNzVlMjU4MmRkNTRlZjZjMTNkYTk2NTY1NzBjZTVmMmQ0OCByZWxlYXNlMjEtbWFpbnQKKzIyMDIzIDNjYzY2NzUwNjg3ZDVjZTgzNGU2NTE4ZGQ2ZjNmNTFhMGQ5NWRiZmUgbGVnYWN5LXRydW5rCisyMjAyNCA3ZTUyYmY1MmFlMzM0ODdkYzQ3NWYyMDM0NjM4ZmM1YmM5MDc5YzZlIGxlZ2FjeS10cnVuaworMjIwMjUgMmRlYTQwZTQwZDlkNTczZTUwNjdhNWM3NjBlOTkwYTM3NTI0ZDBjNyBsZWdhY3ktdHJ1bmsKKzIyMDI2IDAzMzA1NjAyYmE5Yjg1YjNiZmE4MWEzMzdiMjZkNDVlNGNiOGE0NDggbGVnYWN5LXRydW5rCisyMjAyNyA1ZTBhNDBjY2I5ZGE0Y2ZjOTVhNzI3ZTU0MGEwYjNlZGM0OWYwNmZkIGxlZ2FjeS10cnVuaworMjIwMjggYTg1NzVmMzU4YjlmZGY3ZDcwYTU0YzEzNTRlOWFhZTgwZjBhZDdhZCBsZWdhY3ktdHJ1bmsKKzIyMDI5IGFiOGFhNDMwMjEwOTkxMzIyNmUzMTdmMDdhNzkxNjVkZTMzZWM3YmEgbGVnYWN5LXRydW5rCisyMjAzMCBjMDMyYWFmNmM4MTIzMjBkZjIxMjE4NTA4ZGZkMzk2ODA3OTk3MDQwIHJlbGVhc2UyMS1tYWludAorMjIwMzEgYTFmNmZkMDEyMDVmMDIyY2NlZTMwMjZkZjBlNWJhOGYwZGMwMWE2YiByZWxlYXNlMjEtbWFpbnQKKzIyMDMyIGU2NmQ2NDdiNzMyZjIzZjc1YjQxYTdlYmVlODU3OTY3YjFiNjY5Y2EgcmVsZWFzZTIxLW1haW50CisyMjAzMyAxYzVkMjU2YjEyNWE0YzQ4YTA5ODNjZDI4ODBlZGFmYmRlNGNiZWY3IHJlbGVhc2UyMS1tYWludAorMjIwMzQgMDQ1ZjU1MTM1YWQwMDRhNGNiYjFmZWQ3ZTU1MzU4ZGFjNWNkYzA1ZCBsZWdhY3ktdHJ1bmsKKzIyMDM1IDg3NmFlY2VmNjQ4M2YzNGUzOTUyM2NjODkyYTgzMmMwNzkzMzJjNWIgbGVnYWN5LXRydW5rCisyMjAzNiAzZTVjZTk5NDU5ODYyYTIyMjc2OTY4NDJmNTFlZWI3ZGM4NWZkZTFjIGxlZ2FjeS10cnVuaworMjIwMzcgZTE0NjQxNDNjNDYzMzA2MjQ0NjRiZGVmOWFjMTQ0NzgyMDc0Zjk4ZiBsZWdhY3ktdHJ1bmsKKzIyMDM4IDEyY2JjOTQyZjU0OWQ1MzhlZmZmMDVkOTc2Y2ZhNjcwNzAwOTY4MTYgbGVnYWN5LXRydW5rCisyMjAzOSA3N2ZkMjBiY2M3NjYxYTcwYjg0YjViMTRkNDNiYWNmOGEyYTliNDJhIGxlZ2FjeS10cnVuaworMjIwNDAgNDNhYzE4MDRkMmFhY2JkZGNiNWM5Mzk4Yjg5OGU1MTMwZDQ3NmMwNCByZWxlYXNlMjEtbWFpbnQKKzIyMDQxIGVmMjAzMWM1NDg3NTc2MzI0ZDY3ZjM2NzFiOWQ1MWI4NDNmMDU4NmUgbGVnYWN5LXRydW5rCisyMjA0MiA1MzMxZjQ3MDU4YTE5OTEyMzIwMWEyMWZmZGMyNzQ3MmJlZmJjNDJkIGxlZ2FjeS10cnVuaworMjIwNDQgMmIxNjUyNmEzNWE0ZGUxMjFlYjdmMWEyZjZlNWY2YzY4YzUxMWMyNSBkZXNjci1icmFuY2gKKzIyMDQ1IGY1MmMwODNiNTU4ODE2ZTEzYjYzNTlmZjhlNzQ3NDQ3MDdiZjIzMWUgZGVzY3ItYnJhbmNoCisyMjA0NiAzMTQ3ZWZlMzFlYjg5ODIxNTM2OWNiNzFkMWE4MTBiNjlhZWJjNTI2IGRlc2NyLWJyYW5jaAorMjIwNDcgZDk3MmNlYjRkYzA2NDBjZjA1MTliNWQzODI2NzVjYzkzNDhjMmQ3NSBsZWdhY3ktdHJ1bmsKKzIyMDQ4IGQ2NDYyOGNjOGZmYzhhODZkZmY3M2ZjMTNiNjc1ZjNkNTNhY2E0NjIgbGVnYWN5LXRydW5rCisyMjA0OSA2ZjMwMWIzY2YzMjNlYzkzNTQ5YzY4ODZmMDFiMDViODI5ZTc1ODc0IGxlZ2FjeS10cnVuaworMjIwNTAgNGVlMWZlZTFkNGFkYjc0MzA0MGJlNWM5YzY0YzhkNDU3ZDcxYjFlZSBsZWdhY3ktdHJ1bmsKKzIyMDUxIGQxNjY5YWY5ZDBlYzUyZDM3Yjc0OTVlMTNjMzUzMGQ2MTNlZTUxZWIgbGVnYWN5LXRydW5rCisyMjA1MiA3MzQzNjIyZjJiODVkMTQxMjRhNGMzYjc4ZTk4MGU2MGM1YjliOGU1IGxlZ2FjeS10cnVuaworMjIwNTMgZDNkOWNlYTIzMTU2NjlhMjFlNzRlNGU4Y2EyMmE2ZGMwMWYwNTE0MyBsZWdhY3ktdHJ1bmsKKzIyMDU0IGFlMTljNjk5MDc0OTYyMGIwYWU5MThhNzg3ZTcyMDQ2MmMzNmRhYmUgbGVnYWN5LXRydW5rCisyMjA1NSA5YWMxZDM1ZjgxMzY2Y2UyYjI1NGU4MjJiNWFmODhlYmJjMmUxYTE2IGxlZ2FjeS10cnVuaworMjIwNTYgZWE4ZTk2M2Q5ZTY3MjQ0NjlkY2Y2MzYxNjAxYmE2ZjFjMjc5OWRhMSBsZWdhY3ktdHJ1bmsKKzIyMDU3IDZmNTkwMzJhZjE1OGYxODU2MTQ2MDVlOTNhMGU5NjM1MzA5YzdlYzMgbGVnYWN5LXRydW5rCisyMjA1OCA4MTMzN2ZiYTdkZGJlMDU5YjA5MTgyZjE1ZjhkZjE1Mjc5OTlkNDQzIGxlZ2FjeS10cnVuaworMjIwNTkgYzA3NjU1ZjcyNjQ3YjBkZmQ5NDQyZGY2MDJkYzJiMmVhYjliMTgwMSBsZWdhY3ktdHJ1bmsKKzIyMDYwIGE1YWFmNjhmZmNkYWFhYmM5MTg3ZGRhYWFlNGEyNzg2OTNjYjJkM2QgbGVnYWN5LXRydW5rCisyMjA2MSA5ZWNjZjc4ZmVhMWFjMDNlYjU4OWJjNzkwNjFmYjhhNjNjNGI5ZjBkIGxlZ2FjeS10cnVuaworMjIwNjIgNDMyNDU3ZjAyMjg3ODQxMDk2YmJmZjQxZDVhZGFkYmQ3MzJhMmY2NSBsZWdhY3ktdHJ1bmsKKzIyMDYzIGNiNzYxMTdjMWI0YmI4MDA5YjM5ZTRkODE4MTE2ZmIxZWU3NDczOTUgcmVsZWFzZTIxLW1haW50CisyMjA2NCAyNzYzNmM5MWNiMjdjNWExMDU0NDg3NGE2NTFhZTIzNmVlMDM3YmYxIGxlZ2FjeS10cnVuaworMjIwNjUgMWIwOWE5Y2IwNmQ1OWY1MDAwZTMyN2RkMzdhZGEyN2FlZDZhM2I1MCBsZWdhY3ktdHJ1bmsKKzIyMDY2IDNjMTJlZWU3YmJkNDIzNjQ3NmJhYzQ0MWE3Yzc0YTM1YTAxOGIyMTIgcmVsZWFzZTIxLW1haW50CisyMjA2NyBhMzU2NmVlNWIxZjk0ODQ0NGQ5ZjRiNmEwNDA1Mzc1MTY0ZjQ4N2MyIHJlbGVhc2UyMS1tYWludAorMjIwNjggMTExMTJiNzM2YzdiNWFjMGUyN2FhZTdlNDA0MWQxYzc0Yjc3ZThjOCBsZWdhY3ktdHJ1bmsKKzIyMDcwIDEyYjRiYzRhODA0ODhlNTgzYTMwMDE2N2VjZGE0MDNkNTRiZDJkNmYgZGVzY3ItYnJhbmNoCisyMjA3MSA0MDgxYjU2ZjIwZmY1OWJmYjExMzU2NDRhOGJhMmVlYTEwNjQyZDJjIGxlZ2FjeS10cnVuaworMjIwNzIgMmRmZmEzZDNkOTRmZjFhZGEyYjdkZjAwYzUwNWQ4ODNjZjE1Nzk5NyByZWxlYXNlMjEtbWFpbnQKKzIyMDczIDBlMjEyZTg4ZDMzZDA5MmQ5ZDQ3MTY3ZWU2YTc0MTYyMmIwNDU0NTkgbGVnYWN5LXRydW5rCisyMjA3NCA0ZDllYmVlZGJkMDQ1ZmUxOGE5N2RjNDZhNTFkMGViMjZjYWVmODFiIGxlZ2FjeS10cnVuaworMjIwNzUgOGM0MDJhZGVlY2NiYjViMDNhYWU2ZGU2ZjNmY2MwMDBjNjdjMjkyZSBsZWdhY3ktdHJ1bmsKKzIyMDc2IDBiOWNlYTYzYmNmY2RjYzMzYzk4NDI5OTQzNzQ2ZWM2OTkwZjVmNTkgcmVsZWFzZTIxLW1haW50CisyMjA3NyBmNWUyNWZlNDY2YTQxOTFkZDVkMGQ2MjMxNzc5OTI0NDZlZWY3MWVmIHJlbGVhc2UyMS1tYWludAorMjIwNzggOTJlZjM4YjAxMzQ2M2IyNjNlMzc5YjU1MGUwZjVjNDljMGQzMGUwYiByZWxlYXNlMjEtbWFpbnQKKzIyMDc5IDBjZTM1ZTdkNmUzMzY2MzUzNmNjY2I5OWEwNGVkZDU0N2VkY2VjNDkgbGVnYWN5LXRydW5rCisyMjA4MCA2NDM0M2ExMjcyMDgzYzA1MGNjMmVjNmI2OGE1ZjY1YWMxOTRjMjg4IGxlZ2FjeS10cnVuaworMjIwODEgMjI0NTZkMGVlNzM3OThjNDcyMjY2M2Y2Nzc0ZjFiOWRkODYwNDQ4ZSBsZWdhY3ktdHJ1bmsKKzIyMDgyIGM3YmI5NTYzYjE0OTgwMzdjM2EwMmJmZWVlYjczMzMzYTUyM2EwMTIgbGVnYWN5LXRydW5rCisyMjA4MyA5YjI5MWNhNjU0NmM0YjRmOTI0ZmU2ZmMxYjJlYzlmZjI1MzZkY2M2IGxlZ2FjeS10cnVuaworMjIwODQgZjEyZTFhNzY2YTE0MmQ1NDc1NTQ3ZGQ0MzU3ZDcyMTYyNTI5NmEzNyBsZWdhY3ktdHJ1bmsKKzIyMDg1IGFhYWZjODUyYzJkNTNmOGQyOTI1MmY3N2U4OTM4ODQ3YTUyMzA2OTIgbGVnYWN5LXRydW5rCisyMjA4NiBmYjgzN2M1YWU1ZDNmMzZiMTg2OWVmMzA5MGE1NTkwODUwYzVkMDgwIGxlZ2FjeS10cnVuaworMjIwODcgNWJkYmU2MWEwYzI4YmIyYzNmOTYwNTg1MGZkYmQxMGQyYzI3MjQ4YSBsZWdhY3ktdHJ1bmsKKzIyMDg4IDU5YjdlOGVjZmI5NjY3MzIxZDI5ZjRhMzM3NmJjYjY1MTQ0YTI3NWYgbGVnYWN5LXRydW5rCisyMjA4OSA3MWZlYWU3YmY1NjA5NGJmMzQwMTcxOTRjZjBhNmM5OTkxYTIxYzAyIGxlZ2FjeS10cnVuaworMjIwOTAgYmRiYjdjNGRjNjNhZGM1Nzc2NzUwYTE1ZDJkZDZiNjMxMDFkZTZmMyBsZWdhY3ktdHJ1bmsKKzIyMDkxIDIyMTU1YTcxODI1NDE1ZTczYmY4NWFhOWUyZTE0Nzc2MDgwNTYyZjMgbGVnYWN5LXRydW5rCisyMjA5MiBkZWFkOWZhYmJlZmI3YjU3YTAxOWVjZWM0ZTk1NTQwZjAxYTBjNWY1IGxlZ2FjeS10cnVuaworMjIwOTMgMGIxNjI1YTllODlhNzJjZmVjNjdjZjdjZWEyODJjZjcwZTVlMTM0YSBsZWdhY3ktdHJ1bmsKKzIyMDk0IGQyMGE0Y2EwNzA1YzFlYWQ5MzA5ZDM2YTI2NGEyYWE5NGUxMGJhODUgbGVnYWN5LXRydW5rCisyMjA5NSAwMTMyYWY2MzUwNmI5Y2RlMGQ3ZDc2YzcxZDkyNGZhYWQ3ZjJmZmRhIGxlZ2FjeS10cnVuaworMjIwOTYgODU4NDIxN2RkYzhkNmQyMDgyMWZhMjc5ODc3YzNjOTFjODc3MDM0YyBsZWdhY3ktdHJ1bmsKKzIyMDk3IGNiYWJlNTIyYjhmMTY3NmU1ZjdhODFlMjcxYWE4MjNkMTIxMTU0YmMgbGVnYWN5LXRydW5rCisyMjA5OCAyMmU4MjMxNDYzYmE2YjIzZTE1ZTRkZGExNDVjNmRjOWFiYzZjZjY1IGRlc2NyLWJyYW5jaAorMjIwOTkgZWRmMDU4YjE2ZGRmM2ZhZDNmMjI1NTBkNDVkNTZiYjI0YTQzY2YzOCBsZWdhY3ktdHJ1bmsKKzIyMTAwIGNiZmRmNjIzYzI2NmY2OTNmZGEyOWU1NTFjY2ViMTRiODdlNWI0NjMgbGVnYWN5LXRydW5rCisyMjEwMSA1YWYxZWU0MjI1NzUyN2I1MjRhZDZhZDljM2VmNzFhMGFjMzlkNDYxIGxlZ2FjeS10cnVuaworMjIxMDIgNzYyOGFhODE2YWRhOWRhOTY4YTI0YzM1MzRkMTBiZTliMzIzZmJmMCBsZWdhY3ktdHJ1bmsKKzIyMTAzIDI5MTA0MTczYTA3MmViZDYzYzFjZGZlNjcyY2RmY2FhMzA4NzUwMWQgbGVnYWN5LXRydW5rCisyMjEwNCA0NDNhODYyMmU4NTFhYmNmNjJlMjg2NWZhY2MyNTkxN2ZhMDI4NzY0IGxlZ2FjeS10cnVuaworMjIxMDUgNzljNjc2ZjliMzRhOTE0MGI5ODQ3ZTc5YzA1ODE5YTA1MGIxZGI4MyBsZWdhY3ktdHJ1bmsKKzIyMTA2IDk3NTNiMDI2OWYzYWMwZGQ2ODQwZWM4YTIxOTQzZmYyZWJmNDk2YzIgbGVnYWN5LXRydW5rCisyMjEwNyAzNGYwMWM2Y2M4MTg2MTM3MmVmOTg5ODBhYWNkMzgzNzk2YmJkOGNmIGxlZ2FjeS10cnVuaworMjIxMDggNTViNDViNDdmYzQ4NzhmYmY0NTQ0OGRjNzM3OTM4Njg5YzJiNGM1MiBsZWdhY3ktdHJ1bmsKKzIyMTA5IDM2ZTdkMWVhYmQ5MjFhYjA0MzRlNzUyMGRhZmFjMWQzMTk3YjRjNDggbGVnYWN5LXRydW5rCisyMjExMCA5MTQxMjJmYmVhZDJkYzJkZGJhOTk4YjNkZDFhYzQ1MzRlMGMzODliIGxlZ2FjeS10cnVuaworMjIxMTEgZjYxZGY4ZjBjYjQzOGE2NzUzOTRlNzA5OWFhOTQzZGUyNTkwZGQ2NSBsZWdhY3ktdHJ1bmsKKzIyMTEyIGRlYWY3YjEzOWJjOGY0YmJjMGM2Y2QzZWExODUyZjczYWU3ZGY0OGUgZGVzY3ItYnJhbmNoCisyMjExMyBmMDgyMTg5YTQ0NDI5NGI0Njg5OGY2NWU1YTlkNmRkNWI1MzYxODM5IGRlc2NyLWJyYW5jaAorMjIxMTQgNTEwZjdmNmE4NzdlY2Y3NGI1NjNmZWZkODZlNDljNDBiMTQ2ZWQ0ZiBsZWdhY3ktdHJ1bmsKKzIyMTE1IDJiYzY0ODkzMmQ0NGZiMTUzM2RjNDY2Yjg3MGFmNDBkNDQ5ODQ3N2UgbGVnYWN5LXRydW5rCisyMjExNiBiNzMyNjkwZjU2MWM2ZTc2NWI1MDM3NThhMGUwZTk1NmQzYmM1OTlkIGxlZ2FjeS10cnVuaworMjIxMTcgZTdjM2M5YmY1MmIyN2Q1OGVhYjZjOWJiZjFhMTU1MGRiM2Y3NDFkYyBsZWdhY3ktdHJ1bmsKKzIyMTE4IDQyZGQ2MjUxY2MzY2M0ZjAxYmQ0MTFlYjA5MTMxOWMzMzc0Mjg0NTIgbGVnYWN5LXRydW5rCisyMjExOSA3MmEzNjkxZjEwNzFmYWYyZTI2MTFiZTliYzFkN2JhMmI0YmZlNDdhIGxlZ2FjeS10cnVuaworMjIxMjAgNTJiZDllMWRiM2Q5MGE1MjE2OWVlMWEyN2UwNmFkN2JmZjAzMjRmNyBkZXNjci1icmFuY2gKKzIyMTIxIDUyZTkyY2ZhYjIzNzZhM2Q0NTBhMDhkOTg0ODgxYWExZGQyMzQyNzQgbGVnYWN5LXRydW5rCisyMjEyMiAyZjI3ODM4ZDhmYzU5NDI3NTg2MjQ4NmYwMzM1MDUwMTM4ZTA1NzQ4IGxlZ2FjeS10cnVuaworMjIxMjMgMmU0OWYwZTkyYmM1YWE1YzhiODZmZGU5YmNmMmVkM2JlMzJlYjBlNyBsZWdhY3ktdHJ1bmsKKzIyMTI0IDFlZmQ2OWJmMTg0YzM5MDg1MjNiMzkxODU3NzVhNWIxMmRjYjBiMmQgbGVnYWN5LXRydW5rCisyMjEyNSBmYTAyZjc5YmI0OTFjYzcxMTBmODc0YTUwNWFiMjI4YmI2MzZhYTMxIGxlZ2FjeS10cnVuaworMjIxMjYgMGFhMTkxNmNmMTAzNDkxZGM3YjZkNGVjZDg5YmJhZjVkNmYzNTg3YyBsZWdhY3ktdHJ1bmsKKzIyMTI3IDhlMmY2Mjk2ZmQ3YjRhNjc1ZDVjMGJhNmFjMDBhZTJmNmFjY2ZlYWYgbGVnYWN5LXRydW5rCisyMjEyOCBmNDlhMTJlN2UyNGE0MGEwZjQ3NDUzNDc4MjQyOTE4ZmZiMjQ2OGQyIGxlZ2FjeS10cnVuaworMjIxMjkgNGJmZDhhNWRhMGIxZGYxYjdmNzc4OWQ2NDE0NGFkMTNhNWQ2ZWZmNCBkZXNjci1icmFuY2gKKzIyMTMwIDIzZjU1YjlmNGJjNzQ0YjExMGY1YjU1NWY0NDE0ZDk0NTI4NzBiZjIgbGVnYWN5LXRydW5rCisyMjEzMSA0YThkZWQwODcyNjJmMmM1NjZlMDdhZGQzMGI2MWMxMGQ0NWM1NmEzIGxlZ2FjeS10cnVuaworMjIxMzIgMGRlZGFlN2JlM2FhMTA0NzFiYWMwZWU5N2M5NmU2ZGUwNjY1OWEzMyBkZXNjci1icmFuY2gKKzIyMTMzIDBmZGM1ZWViZTQyZDFjNTE4N2I5NjRjNmI1MTBiNzYxMTllMGM5YTEgZGVzY3ItYnJhbmNoCisyMjEzNCA2YzAxODVkZjcxNDdjMzk4MzA0NTJmNmM1ZmMzNDk2NmI4YTQwNmFjIGxlZ2FjeS10cnVuaworMjIxMzUgZGFiOTVjYThhY2ZjMmE0YTcwNjUyMDQ1Yzc1OWFhZjkzMzQzMTRlYiBsZWdhY3ktdHJ1bmsKKzIyMTM3IDQxOTA4NjkzNzc0Njc1YWI2YTAxZTg3OGJlYTlmM2JiMmM2NTQ4MjggZGVzY3ItYnJhbmNoCisyMjEzOCA2NTA5NzNlMjkyNmNhMWY0MDc4MmQxYTczMTJiZDA4MWNiNDE3NmQyIGRlc2NyLWJyYW5jaAorMjIxMzkgMDlkZjMyNTRiNDlkN2M5MzA2NTg1MzAyZmU4MTVhYjBiZGI1MzQzOSBsZWdhY3ktdHJ1bmsKKzIyMTQxIDE1NDFkNWM2YThmMTgxMjA4YWE3Mzc2ZTU3OGIwN2EwNzJjOWVlZGIgbGVnYWN5LXRydW5rCisyMjE0MiA5MDBlMzg1MjRiZjI5MWIxY2Q2YWVlMmUxM2IwOTg1OTZkZjM2NDdiIGxlZ2FjeS10cnVuaworMjIxNDMgNzE0OTE3M2U4ZWRjZGFjNmJmYjI2YWU1NTNjMGQwM2JhOTkyMjQ2MyBsZWdhY3ktdHJ1bmsKKzIyMTQ0IGY4NThmOTg3ZTc3MmEyOTIwMDZlOGY0NjJjZmQwNDVjOTU0YWM2YTkgbGVnYWN5LXRydW5rCisyMjE0NSA2YzIxZTkzOTRiNDRmNGZlMWVkODhkNjhiN2M5YTJhN2MxMzZkYjY3IGxlZ2FjeS10cnVuaworMjIxNDYgZmUzYmM0YTRhZDg0MzZlOWFlMWQ4YzUzMDkwN2MzMzAwNGZiM2M2YiBsZWdhY3ktdHJ1bmsKKzIyMTQ3IGE1ZTRkNGEzMGM5ODM4NTM2NzY5OWMxZDJjMzczMGUxNGFhNjIwZTcgbGVnYWN5LXRydW5rCisyMjE0OCAwMTNjZmZjZmQ4YTNiNDAxOWFhNjMyZDBjNTI1MjFkMTQ5Y2E4YWNiIGxlZ2FjeS10cnVuaworMjIxNDkgOTBkMDZjYmNlMjZhNGIwMTQ1Nzg5NTNjZGMyMTI3MjgwZTFkNDY4NSBsZWdhY3ktdHJ1bmsKKzIyMTUwIGUwMWQyOTYzOWQ4ZTVkM2M3YTU3ZTM3YzI3ZjVmNTUxOTRiNDY3ZGMgbGVnYWN5LXRydW5rCisyMjE1MSBhMDgxOTcwOGZlOWM3MmQ1OGI0ZmU2MTc1MDhhZjUxMDMxYTRiMjVjIGxlZ2FjeS10cnVuaworMjIxNTIgZjhmZGQ1MDgzYWYzNjU5MzgwZmQ1NTkxNGYwNWI1MjA5NmM2OGY2ZSBsZWdhY3ktdHJ1bmsKKzIyMTUzIDJiMTRmMTMwODI3NTUyN2QyYjRkNGVhMmU2NmEyM2I3ZjI2MjIwYzYgbGVnYWN5LXRydW5rCisyMjE1NCAxMzQ2ZWNmMzE4ZjI3N2QwYmU1MmNhYzA5NzVjNDNlYTMwOWRmNjFlIGxlZ2FjeS10cnVuaworMjIxNTUgOTMwNmRhZGRjMjZmZGFiNzg1ODBjZTA2OGM4OTFkZmVkNjFjNGIzZCBsZWdhY3ktdHJ1bmsKKzIyMTU2IDM4OGRmNDljMWMzODIyODI4YzM1M2FiMTkxNGU2ZDk2OTQ0NmViMzAgcmVsZWFzZTIxLW1haW50CisyMjE1NyA0ZGRjNWFiOWJlYzQxOWY2MzBjM2I0ZTc0ODRhYzc4M2JiZDQ0YzJkIHJlbGVhc2UyMS1tYWludAorMjIxNTggZjcyZDYxYjEyNDZlZTAxYzEzMTg2OGEyOWVlODkxNzJiZjllMmJjYyBsZWdhY3ktdHJ1bmsKKzIyMTU5IGU5MGE2NThhNThkNGY2MzNhZmExNjM4YjljMGMwNzNjYWY1YTE1ZDcgbGVnYWN5LXRydW5rCisyMjE2MCA0OGUwZmIwNTVjMzNjYWJhMjQ5ZTM3NWU0YjcyOTZjOTVlODg3NDlkIGxlZ2FjeS10cnVuaworMjIxNjEgZmVmY2MxZTgwY2VlMzU2MGFiNWE3MTI0Y2RjMTY3MmM3MGQ5NDAxYiBsZWdhY3ktdHJ1bmsKKzIyMTYyIDFkYjY5MDBhMDc4MzVhM2Y1YzNlOWVhODk0OTUyNzc0MjdkZmY3YTggbGVnYWN5LXRydW5rCisyMjE2MyBiNzYyMjIwYTYxNTlmYzMzY2MyZTc3MjE5ZmQyNGE4N2RhM2RmZTVmIGxlZ2FjeS10cnVuaworMjIxNjQgZjI4ODViMGRkYmFlYjYwYWNiMDYwOGViYjRhYTE4MjkzM2JjNjQzNCBsZWdhY3ktdHJ1bmsKKzIyMTY1IDQ3ODljMTJhODlmMWJmNDQzMjNiYjA3ZjNkODliOGRhZmNhZjQ2ZTkgbGVnYWN5LXRydW5rCisyMjE2NiBjZjkyNTQyMTAwMTVkYjZmOTY2NDFmYmJjOWJhMmU0NjlhMWRiYzlmIGxlZ2FjeS10cnVuaworMjIxNjcgOWFhNWQ2NmNkMTNkY2ZhM2QyMmU1ZGI2ZDgwODgwYjIyNjNhNGFkNCBsZWdhY3ktdHJ1bmsKKzIyMTY4IGVlZDhhOGE4ZjYyMmM4ZDk5ZDM5Y2M4ODI2YTAxNGM2MTQwYjlmMTcgbGVnYWN5LXRydW5rCisyMjE2OSBkNzU5MDEyMmY5YTI2MTM3MzExMzNhM2I2MmU2ZDRmNmQwOWM0OGI1IGxlZ2FjeS10cnVuaworMjIxNzAgOTMxM2I0OGYxMWMzZjhjNjdiZDI3Mjg1ZjkwNTExMDdmODU1NTI2OSBsZWdhY3ktdHJ1bmsKKzIyMTcxIDkxOWU2MGQ3NzMzNDJjYTRhYWJhMzkxYTQ5OWU1NWM2MjkyYzIxZjggbGVnYWN5LXRydW5rCisyMjE3MiBmOTQ2YjdmN2Q4MzE4ZWYzMDRkM2Y1NjVlNTJkOWRiMjk4N2MwYjliIGxlZ2FjeS10cnVuaworMjIxNzMgZWQ2MmFkMzA4MzRlYjBiNTM1NThkYTcxMWFkZjUyMTc2NjI5MTYzMiBsZWdhY3ktdHJ1bmsKKzIyMTc0IDFhZTcxODk3NmFjNmRjMTE4ZWIyNGJmMzQ3N2RlNGFiMmFkMjg1YjUgbGVnYWN5LXRydW5rCisyMjE3NSAwYzMwN2ZhMzQ0YjVjYTYzNTYzMTkxYTQ2ODY4N2RiMjM3MmNkZmUxIGxlZ2FjeS10cnVuaworMjIxNzYgYjAwZTdiMzhmNzdmMjc1MWY0ZDc1MGE3MjZjOWQ4ZGNlYjNjYTkzMSBsZWdhY3ktdHJ1bmsKKzIyMTc3IGJkOTcyZmE4NDFjNWZlYjZhY2Q0NzQwNWE2ODY0NDk0NTQ4M2RmMDAgbGVnYWN5LXRydW5rCisyMjE3OCA5YzNkNTM5NWUzZmQ5MzA5MzkyYmM2ZmQzYjNmMmViMWQzYTM5NDI1IGxlZ2FjeS10cnVuaworMjIxNzkgZDE0NGM4MWVhZjQ0NjgwZjk1MDc2YzgyNTMwNWRjZTJhYzE5ZWI5NSBsZWdhY3ktdHJ1bmsKKzIyMTgwIGRjNGJlN2JkNjc0NjEwNDFlMDAxNjhjMjU0MjYyMzU0ZTRmOWUxOWEgbGVnYWN5LXRydW5rCisyMjE4MSA2NTFlNjM5NDIwOGM4ZDkxZDgzMmJjYjVlYTg4Y2ZiOGU4YWVmMTNiIGxlZ2FjeS10cnVuaworMjIxODIgMWU2ODZiMDg5OGEyZjY4NzNlZjNlMWJiOWZlNjMxMGUzMzM3NjllYiBsZWdhY3ktdHJ1bmsKKzIyMTgzIDQ3MWE5MDE4MTI5YzNmZDE5MTkxZDY3N2VmNzUwOTUwN2Q5Mzg2ZjAgbGVnYWN5LXRydW5rCisyMjE4NCBmMWNmMmE0NDQxNzQ5ZmIyMDAyMzI5ZWFkZmM3MWJhMDI4ZGM5NDRjIGxlZ2FjeS10cnVuaworMjIxODUgMzQyODQyMTYyMDFiZWE5OTM1YjQxODIzYzFlOWQxOTM1ZWFiNmMwYyBsZWdhY3ktdHJ1bmsKKzIyMTg2IDNkZDhlNjRmNTEyZTg0YWZjNGMzODhiZjQ2NTRiODdiNGNmYjc3MTkgbGVnYWN5LXRydW5rCisyMjE4NyA5ZTRjMTI2NzNmYWI0NGZiZTUyNmVkYmM2YmJjZTA5MmQ0YzliZTAzIGxlZ2FjeS10cnVuaworMjIxODggZGFjOWNjYTQ5MDEyMWMxYWI2MGE1MWJhZmNhZjcyYjBkN2Q4MDlkZCBsZWdhY3ktdHJ1bmsKKzIyMTg5IDhiOWQ4N2FmNjFlYmRiZjY5NTNiZmEwYThhZTVlYzQzNDUyYTkzYmYgbGVnYWN5LXRydW5rCisyMjE5MCAxMTNmMGI1NzQ0YzQwYzkxZjA5MDUxMDQ1ZjQxMTJhNjBmNDlkMjE3IGxlZ2FjeS10cnVuaworMjIxOTEgMDA5MzUwMzFiMzczYzU0OTA4NmUyZDAzNmRjNzYzN2RmZDQ4Y2Y4NSBsZWdhY3ktdHJ1bmsKKzIyMTkyIGJhOWU0ZjU1MTMzZjkzYmUzNjQxMmIxYzM5NmFiZGRjMmVmY2M5ZjcgbGVnYWN5LXRydW5rCisyMjE5MyA5Zjc4NzU5YTUxYjBmNzNjODM4Zjg2YzUzNTA5MGIyZjgwZmFkZDI4IGxlZ2FjeS10cnVuaworMjIxOTQgNGY0ZDgzMDNkZTYwY2Y2YzA2ZmRlNGY4OTgyZDdiNWUyZWEzMjFiMSBsZWdhY3ktdHJ1bmsKKzIyMTk1IDA4Y2Q4MWNkZmZhOWRkMmY0ZDY2OTM5MjhlMzY3Zjc2ZDA4YzM4NWEgbGVnYWN5LXRydW5rCisyMjE5NiBhY2NmMTkyNTQzMWM3NzBlODMxZjE2YjU3NGQ1ZGRlN2JiMWVjYjViIGxlZ2FjeS10cnVuaworMjIxOTcgMmIxMWQxNjZiMDdiNzFhMGM1MDc0NTYzOWY5ZTllZjJmZDg3MzI5MSBsZWdhY3ktdHJ1bmsKKzIyMTk4IDM2MGNlY2U3NjEyMzU1ZTNmYWU0YmY0YWMyOGJiNmQxMWEyMjBlYWIgbGVnYWN5LXRydW5rCisyMjE5OSA3ZmExZjg3Y2E2YjJkM2Y2MmFiOGE4NzhjZmQxZDQyMDBhZDgxNjYzIGxlZ2FjeS10cnVuaworMjIyMDAgYjBhYWY3ODBiY2E2NmM3ZGY0MWM4ZWQ3OTIzMzkyMmFiYTg2NTc2YyBsZWdhY3ktdHJ1bmsKKzIyMjAxIDExNGE5MGE0M2RiN2U5ZTgwN2JmZDQxNTI0ODFmY2Y4NjRiMzE2Y2UgbGVnYWN5LXRydW5rCisyMjIwMiA4MDUwOTBjZTMyOGEwMDE3YzhlZTA5Mjk3MGM3OTFhZTI0ZmEyY2E0IGxlZ2FjeS10cnVuaworMjIyMDMgOTA1OWU3YzFkOGIwMThiN2QxNzE1ZjdlNWQ4MjFmNTY2MWVkYjRjNSBsZWdhY3ktdHJ1bmsKKzIyMjA0IDlmYzRhNWFiYjM2OTQzYWZmM2UzMzRmYzdiYzljN2M0NzdkMWU4YmIgbGVnYWN5LXRydW5rCisyMjIwNSBhZTQzZjk5YjQ3ZTFlMjc2NmJkMjk4ODY3NTNjZWVjYWYyZjY2ZDI0IGxlZ2FjeS10cnVuaworMjIyMDYgYTJiMzU4N2Y1OTJhOGY1ZGRlOWRlN2M2NGQxYmMxNzNkNTkwYzQ5YyBsZWdhY3ktdHJ1bmsKKzIyMjA3IDhlYTYwZTJiMGYyMTllNDIzM2JmYmE1YmVhMTY4MTQwZTEwODU3ZDggbGVnYWN5LXRydW5rCisyMjIwOCAyOGYwZWE4ZDYyNzgxYjRhYzJjNTRlOGZiYWFjZTQ5ZjAwNzdiYjMwIGxlZ2FjeS10cnVuaworMjIyMDkgMmFlMzdjZmIxODlmOWU5YWI0OGIyMjUzZjVlZDk0YzY5MjY0YzgyMCBsZWdhY3ktdHJ1bmsKKzIyMjEwIDE5YTNjNmFmNDM3NDQ2NGUwMTcyYzE2ZDY0OTVhNGVkYWM2Yzk4YmEgbGVnYWN5LXRydW5rCisyMjIxMSBiMTZmOGQwMWM1MWUzYTMzYTgzNTgxNjVlNWZhZTQyZGQ1NmM0OGQ0IGxlZ2FjeS10cnVuaworMjIyMTIgYzk0MmE5ODIxZDA5OTczODZiNGU0YTVjNjlkOWZkZGZmZWUzNDAwMiBsZWdhY3ktdHJ1bmsKKzIyMjEzIDgxMTE0MjA5ZWU4ZWVlODlhNjM5NjI4ZGQ1OTE1OTY3M2E4OGM3NTIgbGVnYWN5LXRydW5rCisyMjIxNCBjZWZkY2Q2MGE4YjJiMDE2NDRjZWM3ZGY2MmU0ZTE0MTNkZGJlMTllIGxlZ2FjeS10cnVuaworMjIyMTUgZjViN2ExZWM0YjlmMmIxZDQ2N2Q1MTY0OWE4MTlhYzUwOTVmMmU2YiBsZWdhY3ktdHJ1bmsKKzIyMjE2IDFiYzY3Y2Y1N2QwYWI2YTZiNzMxNjM4ODA2ZDZkOTNiMDZhMTVhZDggbGVnYWN5LXRydW5rCisyMjIxNyBmZTIwZDFjZmVjM2Q5YTNjMzllMWZiMWUwOGQ2YmZjY2U1NGY3M2E2IGxlZ2FjeS10cnVuaworMjIyMTggYzFkYWE5NGMyMWQ4MzBlMzJlOGFjMTg1ZjU5ZGEzY2EzOGM1MzFjOCBsZWdhY3ktdHJ1bmsKKzIyMjE5IGJiODVjY2JkNGZlZTU1NDNkZTkyZWY4YWViZDlmOWY0NzRjNzFjMDcgbGVnYWN5LXRydW5rCisyMjIyMCA3ZDI3ZTM4OGVjNmM5ZWQwMjM1MTU5ODZhOGExODZkNTJkMzZjYTgyIGxlZ2FjeS10cnVuaworMjIyMjEgZWM2NzZlMTQwNzNkN2ZjZmE1MjFjZDg4MWJmZDQ1OGU3NzE2OWUyNyBsZWdhY3ktdHJ1bmsKKzIyMjIyIDUwZGE2MzczNDFhZTUyMmZiYTJhY2I1MjVhZWMwMWYwZDUzZWVlMzYgbGVnYWN5LXRydW5rCisyMjIyMyAwMzg0OTk0NjY3MjcyOGYxYTdjMmFiMDdkYTJmMDJlNWJkNjFlOWE1IGxlZ2FjeS10cnVuaworMjIyMjQgMDc4YzE5NjFlMTc1MTQ2MDBkNjVmYThjNTIxMmM2NGFiMTg0ZDBhNSBsZWdhY3ktdHJ1bmsKKzIyMjI1IDgyMWUzNTcwNmMwNzE1OWY1YjExMjIzMWJlOGIzNzQ3ZDFjNmI3NzEgbGVnYWN5LXRydW5rCisyMjIyNiAzMGFlM2FmZjAzYmQ5ODQ4OTlmNWE3MTAyOTVlNDNjOWQ1MWZiNzhlIGxlZ2FjeS10cnVuaworMjIyMjcgNjAwYWM1ZGJjNjY2NGY1NGI2MzE1NjMyNzIwNGI5NjQ2ZmVlMDAwNiBsZWdhY3ktdHJ1bmsKKzIyMjI4IGU1NzU0ZjA0OGYwYmMzNWZiYzAwZTQ1ZmY1MTQyZjJkMzMzYjRkNDcgbGVnYWN5LXRydW5rCisyMjIyOSBiYWQ0MDhjN2Q5ZDc4NTQwNmNkNWE5YjY4MzI2YmY5MjNkMzgwNzA2IGxlZ2FjeS10cnVuaworMjIyMzAgN2IxYTA4MDQxNjFlZWQ4NzI0NWRiZWVmYmNiMTgxODc3ODM2OTAwMyBsZWdhY3ktdHJ1bmsKKzIyMjMxIDBhYjhmOTM3ZmY2NjViODU4ZGFkYmI5NzI5OTcxMzQ5YjRkZDlhODkgbGVnYWN5LXRydW5rCisyMjIzMiAyMzg3NmUyZDg0YjZmMWU1MTIyNTAxMGVlNWYzNTY1YzMyOWIxMmM5IGxlZ2FjeS10cnVuaworMjIyMzMgNjBhNzUwMDJhNzRjZmQwMmI1N2I3OWRiMWJkMzFmYmRlY2FmOGQwYiBsZWdhY3ktdHJ1bmsKKzIyMjM0IDk4MzE1ZjBlMWQyNmQ3NDI3ZjY3YjYwMWU2NWU0OGQyZWUyYTE5YjAgbGVnYWN5LXRydW5rCisyMjIzNSA2YjhiNjVmY2NiMDNkOWYxZmM4MzZiMWZhMTgxOTZmNThlOWU2OTlhIGxlZ2FjeS10cnVuaworMjIyMzYgMjYzZGNhZjAwZWVkY2UwY2YyYjZjYjRkMTkyNWRkY2MwODE5MzdiZiBsZWdhY3ktdHJ1bmsKKzIyMjM3IGU0YjY3MDVkYzg0ZjkwZGQxODUwMDUyNTg3YWY4NDNlNjk1N2Q1NmMgbGVnYWN5LXRydW5rCisyMjIzOCA5ZTU3OGZjYjhkZGFiNzNmZDEzMGNjMmFlMjA5NzY3Yjc5YWQ5ZDBiIGxlZ2FjeS10cnVuaworMjIyMzkgZDMyNjhkNjJlNDYyMjFkMjZkZGY4ZDk3N2M4MTJhOWQxMDA1NGM1OCBsZWdhY3ktdHJ1bmsKKzIyMjQwIGQ5MTVhMGVkYjJlYTMxMTFkNzM2YWQyMGRhYTdjMzIxZDEzODhlYWUgbGVnYWN5LXRydW5rCisyMjI0MSBiMTUzMDdkMjliZTdiYzRmZGVjODgzNjQyYjFiZTRmZjMyNjAwNWUzIGxlZ2FjeS10cnVuaworMjIyNDIgYzE3MjljZGMwNzM0MGNlNjIwZDRiZThkZTcyZDI4MGZhN2FmYmQzOCBsZWdhY3ktdHJ1bmsKKzIyMjQzIDNhN2Q2N2VlMTAxMTNlOGZiMjU2ZGM0NzE5MWQ0ZWIyNzI3ODQzYzkgbGVnYWN5LXRydW5rCisyMjI0NCA4MDNhN2ExNDQ4YjJkMWZhZmExNTQwMDc5MzJkZTg1MDc2NzBhNzNmIGxlZ2FjeS10cnVuaworMjIyNDUgMmQwYTA0ZTI3NTgxZThhZGJkY2YxYTA0OWU1MDNjMGFmNDU5MjhjNSBsZWdhY3ktdHJ1bmsKKzIyMjQ2IGY2NmNjZjJjNjNlYjNhOTNlMDJhZGZjOTBiYmM0NDhlODc3MmNkZTUgbGVnYWN5LXRydW5rCisyMjI0NyA0ZGY3MmVhNzhhZTgwNjI4MGMyZTdjNzY5MjRmZmM0ZDIxMWQzY2RjIGxlZ2FjeS10cnVuaworMjIyNDggOWE4OGU1MGJmMTE0NTZlMThlNWUwMDQwZGRiYzBkY2JiMDlkYTIwYyBsZWdhY3ktdHJ1bmsKKzIyMjQ5IGFkMmI4MDc1NWQyZDRjNmJkYmU0NzBiZjk4N2QyYTZhMmE3YjViZmEgbGVnYWN5LXRydW5rCisyMjI1MCA4ZDQ3YTIxZDk1ZTA0MjA3Y2M3NGI5NTQ4ZWYyMDgzOWVmMzNlMzdkIGxlZ2FjeS10cnVuaworMjIyNTEgOGU2MGYzMDAzN2ExZmNmOThkODU2YTIzYTVlMThmYjI4MWU2NGQ0MSBsZWdhY3ktdHJ1bmsKKzIyMjUyIDc0NTc3NGRiZWQ1OGU3NWY4YmFkNjIyYWZmYjg0NjdjYmY1ODc4ZTQgbGVnYWN5LXRydW5rCisyMjI1MyA3ZGI1YjU0MjNjY2Y5OTAzZGMxYjJmZDNmNWM4MzE2NzZmYjM3ZGNjIGxlZ2FjeS10cnVuaworMjIyNTQgMzUwNTBkMTg4YTZhYzFjMWM0OWZkN2Y5YzQ3OTU0YzdmZmU5OTQ0ZSBsZWdhY3ktdHJ1bmsKKzIyMjU1IGUyODJkNmIyYjc1OGU2NGYzNGQyNTIyN2NjNTQ5NTFkN2MyZWI4OTUgbGVnYWN5LXRydW5rCisyMjI1NiAyOGI2NDNiYWQ3NGQyYjY4NTA3ZWMzZWE2NmIyY2YzNzQzODIyM2MxIGxlZ2FjeS10cnVuaworMjIyNTcgMGM1ZTUxNjk0YjBmN2VmNGRmZjY0MDdhMzE2ZDVhMjllYzU4MzY4ZCBsZWdhY3ktdHJ1bmsKKzIyMjU4IGYyMDcyN2NjM2QwZjJmM2JmMTI0ZGFlMTg4ZjBiOWFjNWYyMzkxNzggbGVnYWN5LXRydW5rCisyMjI1OSAzOTY5ZmNiZjk1MDA4NmY0ZTY3MmUwOGY3YTUxNmZiZTVhNjRiZmZhIGxlZ2FjeS10cnVuaworMjIyNjAgMmJiMjQyZGM2OWQ4ZTQ5YTc2ZGJjMDE0YTBhZGIyN2VmZDYyYzE2NSBsZWdhY3ktdHJ1bmsKKzIyMjYxIDExYmJhMzBlOWMyODQwZTA0MzFlNDVmNzZiM2Q3YjFiNTNmMDg2YTQgbGVnYWN5LXRydW5rCisyMjI2MiBjOTBmMDAzNjEwOWQ0YmFhNzFhYzYyMWYwYjdlMTA4MTA0MmE4YTUzIGxlZ2FjeS10cnVuaworMjIyNjMgYTMwNzdmOTZkNDc4OTU5ZjJkMTRlNWNmYzkxYzBiYmIyODE3YzY0OCBsZWdhY3ktdHJ1bmsKKzIyMjY0IDY1ZmU2YjA3MjQ3YjAwNzA3YjVjODk0YTQ3YTg3Mjk4ZDI4MzBhMDcgbGVnYWN5LXRydW5rCisyMjI2NSBmOTQ5NDEzNWI1NzkwOTVkMGJjYmQyZWQ3Yjg2NmFkMWM5N2U0MzU5IGxlZ2FjeS10cnVuaworMjIyNjYgYzk3OTYyNWZlYjQ5Njg5MWU1NDI5N2ZmNjY5OTcyNDA1MWJjNTM2MSBsZWdhY3ktdHJ1bmsKKzIyMjY3IDhiZDA2ZTMyNDliYjVlMGMxYjk4YTA4NGFlYjhiMThmNDQyNjY3NmQgbGVnYWN5LXRydW5rCisyMjI2OCBmNTFiMTNiZjVkNTRmOWYyYThlMGRhYTQwZWE0ZTBkOWJhNDNmY2JlIGxlZ2FjeS10cnVuaworMjIyNjkgZTQyNjIzMGVhNTczMWM5ZjE2MTE1NjJhMmU5ZjlmMWVlZGRiY2Q1YyBsZWdhY3ktdHJ1bmsKKzIyMjcwIDljYzY3YWFmZWM2YzE4ODAwMmJmOTRkYWRlOTg4NzkzZTdkYTM2MWMgbGVnYWN5LXRydW5rCisyMjI3MSBlNTdhNDYxNDQ2OWU2ZjRjYjAzN2JjYzk5N2MxOTQ4NjI2NTY4YzdiIGxlZ2FjeS10cnVuaworMjIyNzIgYWIyZjgwOTVjNGZjYzZkMDJiODNhNDlhOWJiNTUxYzkyY2VjNDk4NSBsZWdhY3ktdHJ1bmsKKzIyMjczIGExYjRmM2ExZWUwNzk2NTVjYmViNWNiYTkzODRjYmUwNTg0MTYyNzkgbGVnYWN5LXRydW5rCisyMjI3NCBkNzk4NjVjMGY4MDQ1ODlkOGI3YmExY2NmZDMyNWUwZTBiOGEzYzk5IGxlZ2FjeS10cnVuaworMjIyNzUgZDAwODAyYzc0YmE0ZGM0MTkwMjQxZTMwNDRmZDA1Yjk4Mjk1MzVlMSBsZWdhY3ktdHJ1bmsKKzIyMjc2IGI2MmM4MGQ1OGQxZWMzYmU1ZDA3Nzc3YjQ1ZTNlODZhZWY3N2E4OTQgbGVnYWN5LXRydW5rCisyMjI3NyAzOWE3M2M2NzczZjEyZWQ5OWJiYjBkYjZlOTE4YzgxOWY3YjcwZTdiIGxlZ2FjeS10cnVuaworMjIyNzggNzY0OTIzZDk4NWE3NjgxNGU0YTdjOTJiZTk0ZDdmY2QzZTNkNGZmMyBsZWdhY3ktdHJ1bmsKKzIyMjc5IDMxMGE5MTcwYWFkNDc2ZGFlMTJkNmM0OThmMDNkZTVlYTQ2ZDQzNGUgbGVnYWN5LXRydW5rCisyMjI4MCBlZmRkY2Y3MTlmZjJlZmM3MmEyNWZkNzE0ZDdkNTMxOGMxYWY5MDc0IGxlZ2FjeS10cnVuaworMjIyODEgOTRjYThlYmE3ZTRmMDk3YmExNjIwZDI0NWVlNjg4ZjM2MmQwMDc0NCBsZWdhY3ktdHJ1bmsKKzIyMjgyIGUyZTU4OWZlYWQzMGYxYWQ4ZmU3NGMyMTdkMDM1YmQ3OTZkYzYwODUgbGVnYWN5LXRydW5rCisyMjI4MyBmNzUxMjVlYWQwYTIzYjk2MzQ4MDZhYWMxZTg2YmM1YjYwYzkwNWMwIGxlZ2FjeS10cnVuaworMjIyODQgYzNlOGY0N2ZlN2M4NGRmNTVjNmM3MzMyNzMzNWUwODVjZDM0NDZjMCBsZWdhY3ktdHJ1bmsKKzIyMjg1IDBhOWNlODFkZTM5OTkxNmE3MWNhY2M0Yjk5YzMzNmQwYWU1YTVmYzUgbGVnYWN5LXRydW5rCisyMjI4NiBjYjhmZGNlOWU2NWE2ZDI5Yzk5OWE1NmIzZTE4ZWI4ZDNiMWQzYmVjIGxlZ2FjeS10cnVuaworMjIyODcgMjdiNGRiZDQyOGZlN2Q1YjAwNjZlOWJjY2Y4ZTdmYzE5NWVjMzIwYiBsZWdhY3ktdHJ1bmsKKzIyMjg4IDM2Y2EzNzZlNTg2NDY1ZWRlMDg4Zjg3NjExNWNkMDQxY2RhMWRhY2MgbGVnYWN5LXRydW5rCisyMjI4OSA4OGQxMjRjNzQ3NjYwNmY2ZDJjMzIyMGZiYzUxODBlYWNjNjkzOTlmIGxlZ2FjeS10cnVuaworMjIyOTAgNWMyN2YwZTRmNTBmNzM2ZWY4NWU2MTY3YTdlNzFjMDA5ZWU0YjE0YyBsZWdhY3ktdHJ1bmsKKzIyMjkxIDlmNzg1MDczZTQ4YmRmM2M0OWRmNDNhMmJjZGE3NDZhMDM0ZWVhNTAgbGVnYWN5LXRydW5rCisyMjI5MiA2ZTk1OGQ1ZTk4OGJkMDVjMzQ2YzczNTJkNTMwN2Q5MzhkMDA4YWU5IGxlZ2FjeS10cnVuaworMjIyOTMgZjNlMjc4YmM0MzllMjcwOGExYWQwNzQyMmM5YzIwYzYwMmU0ZTlmMCBsZWdhY3ktdHJ1bmsKKzIyMjk0IDk2ZWJmMmI4ODZmNzY4MjliNGY5NzlhOTc2M2E4MWNjYWJhYmMzNDIgbGVnYWN5LXRydW5rCisyMjI5NSAxOTYwY2VlYzFhMDBiYTU2MjM5MTRhMGFmNDMwY2UyM2MwZjg4NmQ2IGxlZ2FjeS10cnVuaworMjIyOTYgYzRiMzFiZTdlMDgwYjk1YmM5NmVlMWIxOWE5YTBlZDg1NDhlNDc0ZCBsZWdhY3ktdHJ1bmsKKzIyMjk3IGU0MTFiZmI5ZGI1NzY0YWJiNDVlMzc1ZWE4MzU3NzRmYjQzMmRlZWYgbGVnYWN5LXRydW5rCisyMjI5OCA2ZmFlZDYxNWIwNThkZmMwMmEyOWE2NWIzMGJlMWFkNGVkYjhkNzM2IGxlZ2FjeS10cnVuaworMjIyOTkgZTc5ZmQzOTM0ZjYxMDI3ZmYwNDQ5M2FlYTlkNWQ3NWI4ZmE2YWJjYSBsZWdhY3ktdHJ1bmsKKzIyMzAwIDk3ZGU4NjhhZDBmNDAyODQzYzU2YzExNTY3ODlmYjFmMDZlNGQzOTQgbGVnYWN5LXRydW5rCisyMjMwMSA4ZWJmNzFlMWVkMjk4ZWE5MjFiNjgyMWNhYjY1ZTk4MmMyNmM5ODMyIGxlZ2FjeS10cnVuaworMjIzMDIgMTFhOTc2N2U1ZDhhNTNmMjVlNGMxNTU3YmM4YTMxNzc2OGYwYjMyNSBsZWdhY3ktdHJ1bmsKKzIyMzAzIDQ1Y2NmM2I4ODliNTAzNjhkZDAxNWZhOTBhYWM3Nzc5MDNiMjBkNDkgbGVnYWN5LXRydW5rCisyMjMwNCA5ZTZmNzgwNGVmMTQ1ZGQ4YzM3NTYzZjU3YjMzYTYyODE0NzljMjY2IGxlZ2FjeS10cnVuaworMjIzMDUgYzk1ZjBhMTJiNTFhNTlkMDZhNzUxYmY3NjA5ZDBhMDdlMGY3NmM0MSBsZWdhY3ktdHJ1bmsKKzIyMzA2IGRlNWQ3YTk0MjhlZjkwY2I3ZjM5NGFhNTE2NjUzMWIxYjM0OGUxOGYgbGVnYWN5LXRydW5rCisyMjMwNyBjMjM4NzQ1ZTBhYWU2YzA2NmNlMjIwODM5NTIyOWZhNzdmODI3YzY5IGxlZ2FjeS10cnVuaworMjIzMDggNjM1MGJiYWE2MzJhNzU1ZDgzOWMzZDY2Y2EwZDg0NGZmMTA1ZGY5ZSBsZWdhY3ktdHJ1bmsKKzIyMzA5IDllYzU2MTFjZmU5YzAzMzAzNDMyYmE3NTkwYzlhMTNkMWZmZDJlMDUgbGVnYWN5LXRydW5rCisyMjMxMCAzNDIwYzllNmFmMTEyOWU1YmE2NDU4MGY3Y2Q3MTliMTY0NjRhMDlhIGxlZ2FjeS10cnVuaworMjIzMTEgODc1YWM4ZTkzNTQyNGJkNmIwMzUzMjg0MTRiMTcyZGNiYmY4ODFhOCBsZWdhY3ktdHJ1bmsKKzIyMzEyIGVlYThkZmJiZWU4NjAyOTBmNzgzMWZiOWUyYTdlN2U2YjQwNzY4NDAgbGVnYWN5LXRydW5rCisyMjMxMyAxMGVjMzk2ODQyOGRjODNjODVjMjExZGY2MDAzYWRjODRhODI4MWM2IGxlZ2FjeS10cnVuaworMjIzMTQgMTMxYTAxYjZmNmM3MTRlNTkxOGJlZWU1ZDUwYTg4YzA2ZDcyNjg2NCBsZWdhY3ktdHJ1bmsKKzIyMzE1IGI3OTg0YzliYmYyY2RlMDM4YjQzYTAwNmE1YzU3MGJjMGFhNzU3YWEgbGVnYWN5LXRydW5rCisyMjMxNiAzNzNjYzU5NDE1OTAwYjQ0YjU5YmUyNzM2Y2EwNzQ1M2YwY2UzNDFiIGxlZ2FjeS10cnVuaworMjIzMTcgMDIwMWJiNWUzYjgzNmIzN2I2ZmE1Y2M0YjdjZmNjY2ZhYmNhMjhkZiBsZWdhY3ktdHJ1bmsKKzIyMzE4IDZiYTQ0MTUwNzIyMDRhNjFiYzI3YjE4ZTI5Y2NlYjcwMGI5NDRjYjkgbGVnYWN5LXRydW5rCisyMjMxOSBiNTU0NzhiZDkxNjVjNGZlMzlmNDI2NjJmN2Y4NDI4ZWExOWVhNDhjIGxlZ2FjeS10cnVuaworMjIzMjAgYjM1NTM3NmQwNzMxMjc4YWVjNWZhZDFlOTM5OTJiYTg3ODk3ZDkzMiBsZWdhY3ktdHJ1bmsKKzIyMzIxIDc4MjZjYzM3YTIzNGI4YjEwYmZhNWU1YWQ4NTk3OGY2M2MzOTkxNmEgbGVnYWN5LXRydW5rCisyMjMyMiAxNzUyNWI2YzUzMmM1OTI0ZTYxZjgyYzFjMzcxNGM1OTcxYmU5NzhhIGxlZ2FjeS10cnVuaworMjIzMjMgMTNkMGYzNGI2YTE2MDk5OWZlYzExYmY3NTE5Zjg5NjQwMDc3NzA0MiBsZWdhY3ktdHJ1bmsKKzIyMzI0IDhjYmY5ODRjOWMxM2Y0NzVhNmMwOGYwYTc5NjRmODA0YzU4OTQ1YmYgbGVnYWN5LXRydW5rCisyMjMyNSA5MTI5OTQxOGI3MmRjOWE4YmZjYjJlNjEyNjEyYjJlNzA1MTUyOTljIGxlZ2FjeS10cnVuaworMjIzMjYgNjAwYTlhMmI3YTE4MzEzMGYwYjY0ZmRlMmMwZjEyZWNjYWJlOGQ2YyBsZWdhY3ktdHJ1bmsKKzIyMzI3IDk1NTE1YzZiNjk0YWI1Y2ZhZGRjNjVlNGU1MzIyODdjMjgwMGRkNTggcmVsZWFzZTIxLW1haW50CisyMjMyOCA3N2U0MDVmM2E5NDJhOTE3ZmYxZTQ1OGM2MTA3M2FiMWY4ZTk4MWY5IGxlZ2FjeS10cnVuaworMjIzMjkgNjcyOWJmMzBkM2FlNWIxOGRmNjU2NTI2ZTUxNDAzNGU4MjQ0YTdmZiBsZWdhY3ktdHJ1bmsKKzIyMzMwIGUwODQ3YmExZDZmNGViMDZhM2U4NjgxNDc0ZjRhYTgxZDhjNDM0OGYgbGVnYWN5LXRydW5rCisyMjMzMSBhZjQ4MjA1NWQ1Y2U0OTBhMGRjY2JkZjZiY2Q1MzEwMGM2NjBlNDczIGxlZ2FjeS10cnVuaworMjIzMzIgZjhiNTFjOGNhMDgyNjMxOGM2ZjI4N2EwM2FlZWJhZTU4NGRjOTc4OSBsZWdhY3ktdHJ1bmsKKzIyMzMzIDY3YmUzYTY4ZmRlNDkyNDE0YmEyMjM3MmVmNDMzNTA4ZWE5Mzk0NWYgbGVnYWN5LXRydW5rCisyMjMzNCA3ODc1MmVhZTEzMmUxYjJjYTlkMTczMWFhZjljNzVlMzIwMWYxYTBjIGxlZ2FjeS10cnVuaworMjIzMzUgNDkwMWE5MzU0OTBkZDg2YmI0MDcyZWFmZDE0OTYxYTU2MTcxNjc2ZiBsZWdhY3ktdHJ1bmsKKzIyMzM2IGMzOTU5ZjZlNDA0NDc4YmQ1NjMzOWEzZTE2YzAzMWE2MmEwMjE2ZmQgbGVnYWN5LXRydW5rCisyMjMzNyA5NTdkZDY0NmI1Yjc0MzRmZDg5YTMwNjE3NDA3N2IzMTJiNjUyMmJkIGxlZ2FjeS10cnVuaworMjIzMzggNjc2OThkNjg5MjAzMjBmYThlMjFhZWUzZWZlZmIwMTRhNmI4MmEzZiBsZWdhY3ktdHJ1bmsKKzIyMzM5IDQwYTE3ZDk1MDBhOGI2ZWU3ZjI5NGY2M2IyNDZjZDMyYmFhN2M1MjggbGVnYWN5LXRydW5rCisyMjM0MCA5OGJiYTk4M2JmZDM3Y2ZmOTkwOTJkYjcwMjQ5ZjQ4OTRhNWMzYmE2IGxlZ2FjeS10cnVuaworMjIzNDEgZDk4MTIxOTMwZTcwNjFmNGNiZjcyNTJmMDdmN2M0MGFkNWE0NzI4ZCBsZWdhY3ktdHJ1bmsKKzIyMzQyIDNmOGE1NmY1MmNkNjFiYmE1NWM5ODBlYmQ5NGM1ZTkxNDc5YmIwMzAgbGVnYWN5LXRydW5rCisyMjM0MyA2NDYzY2Q5ZGIyZmNlZWNmNThjMmU2OGQ0Mzk1OTMyMDhkNWRlMDE1IGxlZ2FjeS10cnVuaworMjIzNDQgZmIxMmVhOTI5MGIyZDIxNzI5MTZhYTM1YzMyYTczMWMxZjkwMmUwNSBsZWdhY3ktdHJ1bmsKKzIyMzQ1IDgxNWU3ODEyNTM1N2FmNzk4ZDU4Mjg1NTVlNTE5MGU1NmUyMjI1MGMgbGVnYWN5LXRydW5rCisyMjM0NiA0YThhYjY3NzczYTljNmM1M2E1MzA1Y2RkNjE4YjcwNmI1MGU2M2I4IGxlZ2FjeS10cnVuaworMjIzNDcgOGMzNzhmOTA4NmNkNzNiNTRiZmJiMjFiYmRlMDY2ODAyYzAzY2QzYyBsZWdhY3ktdHJ1bmsKKzIyMzQ4IGUwMDFhOWNkZTZiYWY2YzhhY2RiNmU1YTJkZTkzN2RlZDlkOGJmNjUgbGVnYWN5LXRydW5rCisyMjM0OSAyZDY3ZDIzOGQ0ZTkxOGJhYmVjMWIzNGEyNjBlYzExNWFjMmQzZDM1IGxlZ2FjeS10cnVuaworMjIzNTAgODUyOTJkOTU5ZTFiODc3ZTk1NzgzOWViNTE2NWZlYzMzYjczZGQwYSBsZWdhY3ktdHJ1bmsKKzIyMzUxIDA4Y2ZkOGU5OTgwNjYyODQxOTkyM2NiZGJiZTBkODc5M2RhMDEzNGEgbGVnYWN5LXRydW5rCisyMjM1MiBmMGQ1MmE4ZmRlNWZlOGQ5OTM4OWQxNWIxZjUxZTU1YmI0NWEyZjFmIGxlZ2FjeS10cnVuaworMjIzNTMgZWRmOGQyZDFhOTBiNjk4OTNkNWFlNmI1OGUwNDNmOGJhYThjMzlkZSBsZWdhY3ktdHJ1bmsKKzIyMzU0IDJmM2IxODMwOWNjZTY3OGM0NmZjZGVjYjY2ODQ1NGM1NjRmMDJiMTMgbGVnYWN5LXRydW5rCisyMjM1NSA4MDlhZWM2NGE3OGViYTJmODEwMjljMmFiNGU5MjlhNzhhY2IxZDgwIGxlZ2FjeS10cnVuaworMjIzNTYgNDgxYjgxZDMwMGRmODJlOTRlOTgwZjQ1YmMxMTM5NmRmYzU1OGM5YiBsZWdhY3ktdHJ1bmsKKzIyMzU3IDNmMzRmNzI0ZjAxNDg5YmNiZDYxOTNlODhhZDA2NjVhMDNjZGFmODMgbGVnYWN5LXRydW5rCisyMjM1OCBjZDQ0MjU0MzYwYjZlYTk0YzdmNGQxN2RjMjIyNmVjZWYxYmY1ZTUxIGxlZ2FjeS10cnVuaworMjIzNTkgMWU2ZjRiYjY1MDY5ZDIzZTI0YzYwMDNiZDYwYWY2Yjk2YjZiOTFlMSBsZWdhY3ktdHJ1bmsKKzIyMzYwIDY0ZDRhZDczYTg4NzVlMGU4MTgyMTMwZDQwYWQwOWNjYmU3OTZiY2YgbGVnYWN5LXRydW5rCisyMjM2MSA3YTFlZjY3NWQ4YWNmMDQ0YWQwMWNhNDA4YmM3N2JhYTA1Y2U0MDkzIGxlZ2FjeS10cnVuaworMjIzNjIgMmY0MWM5NTJiZWIwNThlZDM4ZjY5MzNmZWJmNWEwMTNkMDQ3MGE0MiBsZWdhY3ktdHJ1bmsKKzIyMzYzIDc3NjYyOGVlYThmNzM2NzQ2MGZhZDA5ZDUzYWRkNGM2OTVmNzg1NTYgbGVnYWN5LXRydW5rCisyMjM2NCBiNzY1OGU2NjVkMmVjN2EzOTg3NGQ4ZmZjNzdiYTEzYTE4OTFmMGEzIGxlZ2FjeS10cnVuaworMjIzNjUgOTdhM2QzZDcwMjlmOGZiMjZiMjQ0NTBkZWRjNTQ3ZmFlMTllNDU3MiBsZWdhY3ktdHJ1bmsKKzIyMzY2IDM1MzcwNjJiM2RjMWJlMDgxZDRiOGU0NjgyNzE0ZTRkNWMxZmE4ZmYgbGVnYWN5LXRydW5rCisyMjM2NyA5ZDAyNGFlMDU4MzdjOTRiZTg2NTNlY2QxMjNlODY5YzY0YjhhNTRjIGxlZ2FjeS10cnVuaworMjIzNjggZDY0ZTA1OWNkMTk5ZGEzOGVhMTJmNjQzN2E0YzIwZGNhOGIxNTFkZCBsZWdhY3ktdHJ1bmsKKzIyMzY5IGIwNmQ5ZGJkYWY4ZmJlNzViYjMxMzE4Y2I1MzQwYWY5OTA0MWJhYzggbGVnYWN5LXRydW5rCisyMjM3MCBiMTYwZmE2M2Y0MGM1N2E0NDEzNjg0MDRmNTFiNWVkMWIwM2I5YTExIGxlZ2FjeS10cnVuaworMjIzNzEgNWQ2YjJjMTdlYTJjZDdhODcxODEyMDA2OGYzNjVjNjk5Y2RjODUxMyBsZWdhY3ktdHJ1bmsKKzIyMzcyIDAzOWUzZDI2ZWEzNWNhNjEzMzhhYTI1MTA5NjlkZTg2MzlmZTY3MDkgbGVnYWN5LXRydW5rCisyMjM3MyA2N2YzNTRkNDM0N2Q1ODIyODIzNmI2YWE4ZGY1ZjVlYmFjMDg4ZTk4IGxlZ2FjeS10cnVuaworMjIzNzQgMzA4NjBiZTNhZTdiZTlmNGRkZjVmMTdjNjBiN2RhZTUyYjQ3NTRiMSBsZWdhY3ktdHJ1bmsKKzIyMzc1IDgwMmM0Zjk0MGE0ZWEzMWEwOTkzNjFiM2E2YzAwM2MyNDlhMWEyM2UgbGVnYWN5LXRydW5rCisyMjM3NiA5NjYxMDkzZDNlMmFmZmMzZjc2OTMwMzcwZmVjNTI5MWRhNzc5NTUwIGxlZ2FjeS10cnVuaworMjIzNzcgODFmNGNkZjg2ODU1NzIyNjJiMmI5ODFlOWQ1YzU1NTlhZDk3N2VmYyBsZWdhY3ktdHJ1bmsKKzIyMzc4IDJmNjU5M2JmNThhZmJmOTNmZGE0NmQ2YjUwNDVhMDY3NDBkNzgzNjQgbGVnYWN5LXRydW5rCisyMjM3OSBjYjM0NmJhZWRhZDZjNGE0MThiY2JjZDgwNjIxNDBhNWIxYTVlOTRlIGxlZ2FjeS10cnVuaworMjIzODAgZjBkYjM0NTYyMWJhN2VmY2FmMmQwMjc1M2MxMTQ0YjgyOTViN2I2OCBsZWdhY3ktdHJ1bmsKKzIyMzgxIDcwNGFkODM0ZGUyNzY5NmJlNWE1MGU5MWVkZGJlNjg3MzA1YjliNTQgcmVsZWFzZTIxLW1haW50CisyMjM4MiBiMDAwMmQ3YzIyYjFmMGNkY2E5NmVhNTUxMTgyNWZiMDAzZGJkMTIyIGxlZ2FjeS10cnVuaworMjIzODMgZmZmNmM2NjI4NTlkOWMwYTA5Yjg4MWE3ZGJjMDNiMTYxNWViMjk0ZiBsZWdhY3ktdHJ1bmsKKzIyMzg0IDUwZjg4ZWU3MWQ0NWEzZDdmMjgwNzIwNjliYjQxOGQzNzM2ZGEyOGUgbGVnYWN5LXRydW5rCisyMjM4NSBjYTEyZTFlMzMzZWExMDQwMzYwMjg5MTM5ZWUzN2I4ODVjNDhkMjQ2IGxlZ2FjeS10cnVuaworMjIzODYgNjM3MGEwZjk4OGYwZDNmNjVhMjE3OWM5YWY2OWY2ZTkxNmFiYzIzOSBsZWdhY3ktdHJ1bmsKKzIyMzg3IGZkZTNiMGY3MmUzODkwMmVlY2U1NzhjZDhhNDM1NWUxM2U0NzU2MGQgbGVnYWN5LXRydW5rCisyMjM4OCAxZDQ2MmI3Mzc4MTBkYzgyMGQ5OTdmMmU4MTM0NjNiMTVlYmJjNTUyIGxlZ2FjeS10cnVuaworMjIzODkgZmMzOWMyMmI1YTdhZDE1YjQ3NDhlYzVlMTAwNzhlZGE0ZDk2Y2M3YyBsZWdhY3ktdHJ1bmsKKzIyMzkwIGIxNDk1MWNkMjU2NzNhNjAxNjZjNzBlOGE0OTE0NzU2ZTFhMTZjMWQgbGVnYWN5LXRydW5rCisyMjM5MiAyOTY3Y2E5NmQwN2VlN2VlMDk5N2JiNjgwODM5MTU1NzQ2YzVjOWY0IGxlZ2FjeS10cnVuaworMjIzOTMgNzhkMDBmNzAyM2EyMTZmMWI3NzU4MjEzNjhiZmUxZjBhMWY2ZGFhMCBsZWdhY3ktdHJ1bmsKKzIyMzk0IGNkZDBjN2E0NTU3NWEyOTExZjk1YjkwY2NmMzliNGZmZjlkZWM5YzIgbGVnYWN5LXRydW5rCisyMjM5NSAzMGY4YjY1NGMyZTViZmYzY2RhZjEyYTliMTgxMDFjZDVkZjVjMDE2IGxlZ2FjeS10cnVuaworMjIzOTYgYmNmZTMwY2QxZjBkZTE2YzllZDk1ODJjNGM4NzA3ZGI4NGU4ODRlZiBsZWdhY3ktdHJ1bmsKKzIyMzk3IDExNWU0MDk5ZjNkOTc5ZmIwZGViNDRjOWI2YjNiMzk2ZmZmMjEwZDcgbGVnYWN5LXRydW5rCisyMjM5OCBiZWU3NTU3MjEzYjIyOTkzMjk2NDYzZDg4OTAzMjM5ZTJjOTZjN2Y5IGxlZ2FjeS10cnVuaworMjIzOTkgYTk3YzgwNjRjOWQ4M2E0MTU4YTdhZTY5MmVkOTg4YjFmMzcxMzUzYiBsZWdhY3ktdHJ1bmsKKzIyNDAwIDY4MDIzMmZiNjFmMzAyMDdmMWRjN2ZmZDI3NGY4ZDQ2OWFhNTlmY2YgbGVnYWN5LXRydW5rCisyMjQwMSAwOTVjODlhODI1YTkwYTFiZjk3ZDg4MTE1YjA1NTY2MDgxM2I3YWM1IGxlZ2FjeS10cnVuaworMjI0MDIgN2U5ZjVjNTllOWYyN2YwMjY0ZGEyNjU3MDQ3NGY5YWQzNWFmNGVlZSBsZWdhY3ktdHJ1bmsKKzIyNDAzIDdlNDQ4NzNkYWY3YmRjMzdiYTFlZmM5M2IxZjIyMzE4OWRiZGMxZDcgbGVnYWN5LXRydW5rCisyMjQwNCAzMDFiY2IwMWI1MDM0NWYxYWQ2MDM3NDlkZjg2Yjc4YWQ5NGZjYTJlIGxlZ2FjeS10cnVuaworMjI0MDUgMDFhOWI3ODA3MTYwYjE4MTA4YTM4OTQyYjdmMzEyMDNmYjY4ZjdjYyBsZWdhY3ktdHJ1bmsKKzIyNDA2IDNjMWM5OTQ4ZmY2NTU3Y2VkYzBjYzQyZjRjYjI4OGI1ZGM5MDZiZjYgbGVnYWN5LXRydW5rCisyMjQwNyAzODM3ZGNjZDExY2FkMzUyNzUwMGRhMTI0YWZmMzgwYTg0NzU3Yzg1IGxlZ2FjeS10cnVuaworMjI0MDggNTBmYjQ2ODNhNDYxODYzNzlmZDU3YjMxOGRjY2U3NDMzZDMxMGVmYiBsZWdhY3ktdHJ1bmsKKzIyNDA5IDJjNGMyY2FhYmNmY2Q5M2IzNGJmMjM5Y2QyZWI3M2ZkZTM0MThlOGYgbGVnYWN5LXRydW5rCisyMjQxMCA0N2E0NWRhMDNiMDlhYzgxMjVmYzUwNzVjZTI3OTk1MzA5Mjc3YTQyIGxlZ2FjeS10cnVuaworMjI0MTEgY2QxMzEwZTg3ZmUyMTU1ZjM0M2M1YTU3ODkzOGJhYTg4NWY2NzhjZiBsZWdhY3ktdHJ1bmsKKzIyNDEyIDY3ZGNmMDRmYTc1NDE4NTRjNWFhYWU4MThmOTZkZjY2Njc3NzA4ZmMgbGVnYWN5LXRydW5rCisyMjQxMyBhY2MwZmZhYjA3NzFjOTAzNzQzOGRmYmU5NTQ3OTgzZDVkMDc0NTg5IGxlZ2FjeS10cnVuaworMjI0MTQgZGUxYzJkNGQ3MmJhMTc3YTJhOGZlM2EwNmRmZjQ5MzIxMzRkYTA0MyBsZWdhY3ktdHJ1bmsKKzIyNDE1IGZiMTUzZTMwNjE1Mjg4NmUzNDBkNWJkMWRhYTQ3NWU0NDVlYzM3MDkgbGVnYWN5LXRydW5rCisyMjQxNiA3YjUzZmIzYmEwMTE5MmJlYTA0OTMxMTM1NmE0MGNkZmEwMDZiNzRiIGxlZ2FjeS10cnVuaworMjI0MTcgODY5MTQ4NGM1YmVmNTMzZGRhMDRjYWRiZmQ1NTUyMmQyMTgxZjNlZCBsZWdhY3ktdHJ1bmsKKzIyNDE4IGI0ODRiMjA3ZTk2NDE5ZTgwYzViM2M0NjJkYjE2NDk1MzA1NDM2YzAgbGVnYWN5LXRydW5rCisyMjQxOSA0ZGQzOGQ5MzAxNTczYzkwY2NkOTRlODg1MmZiMmY4ZDAzYzU2M2YzIGxlZ2FjeS10cnVuaworMjI0MjAgYzlhNGU2ZDFiYzMwYjE5OGViZmZhZjExMDQ3YjI3MjRlM2M4NTNlNCBsZWdhY3ktdHJ1bmsKKzIyNDIxIGMwYTE2YjRjOWVkYjdlMWEwOWJiNmEzMzFhNTZkY2I2YThlZTcxOTkgbGVnYWN5LXRydW5rCisyMjQyMiBkMzdlMTc2NTgwNDhkYWI4ZWQzZTk4MGUwOGMwYjhiNzkwNmQwMjVlIGxlZ2FjeS10cnVuaworMjI0MjMgZjUxM2M2YzdkMTY3MGJjY2VkNTk2M2ExMjViYzhhMTczMGMxMTU3OSBsZWdhY3ktdHJ1bmsKKzIyNDI0IGU4YmU0MGM3NWEzZjcxN2M3ZTU1YzRjODFkY2ZhOGNjZTM5MjAwYjkgbGVnYWN5LXRydW5rCisyMjQyNSA3NzY0MGMzODg0N2JhMjU3YjM5YTk4YmMwMTVjOGI1YTFhMjljYzMwIGxlZ2FjeS10cnVuaworMjI0MjYgZDE2YTNhNWM4YTg2YjEzMGIyOWQyY2ExMGEyZWRmMWQ3ZmNiNTdhOCBsZWdhY3ktdHJ1bmsKKzIyNDI3IDM3M2I2YWJhZGM1MDBmY2M4Y2ZjYzY2MTM2ZjYyNGZiMTE4ODJjN2UgbGVnYWN5LXRydW5rCisyMjQyOCAyNDJhYzQyN2YwZDBmMGQzZDZmOTE3YmJlMDk1M2ZkODFhM2E3NzUzIGxlZ2FjeS10cnVuaworMjI0MjkgM2M3YWQ1MDM3YWIxYmM1YTIyM2E5NDZjOWQzOTExMWUyNTI0YjM4YSBsZWdhY3ktdHJ1bmsKKzIyNDMwIDQxNzg1NzkzYThhMzc1ZTBiZTFmZjhhZmMwMGY0MzlmYmQ5ZjgzY2EgbGVnYWN5LXRydW5rCisyMjQzMSBjZDFjMjc4N2ViYjRhOTMwMTk0YjJhNGMzZGFjOGE2MDAyMzczNzU4IGxlZ2FjeS10cnVuaworMjI0MzIgNmU0NmM3Y2QzNzQ5MGUxNDE0NDkwZDMwYTQyMGFkODg1NzAyNWU1NSBsZWdhY3ktdHJ1bmsKKzIyNDMzIDcxZjA1ZmQzMGU3M2Q1Y2I3ODI3NTQzNjVjYzRlZTk0NjM0ZGQ3OGEgbGVnYWN5LXRydW5rCisyMjQzNCAyNTU5MjY2OTg2OTJkNDZjOTFhMTBmYTQwZDcwZDFjMDU4ZjVhNWM3IGxlZ2FjeS10cnVuaworMjI0MzUgODRiNjAyMTMxNTliMDIyMzY4MDkyNWFkM2E5MzY5MTFkZmYwOGZlNiBsZWdhY3ktdHJ1bmsKKzIyNDM2IDBmNjEyZDY4N2ViY2Q3NzQ3NGVkOTEzMjFiNzliYzE3MWJhMDFlNWQgbGVnYWN5LXRydW5rCisyMjQzNyA1M2YzOTk1OTg3OTk5ZWMzZjYxMjZhNDU5YzdiMjIyNmQyZThjMTQ2IGxlZ2FjeS10cnVuaworMjI0MzggYWNiMThjOWZiMjBmNmE1MTkwOGFiMWRlM2NjZDE1NjExNWI1MjIzMSBsZWdhY3ktdHJ1bmsKKzIyNDM5IGUyOWJhOGYxZTdmODBhMmU2MjI1ZWM1MjgzMzQ3ZjUzNDAzNTlhOGEgbGVnYWN5LXRydW5rCisyMjQ0MCA2NTg4NWVhNzZjMzc3MTY0MThkZDEyZDZjYWRkZTkwZTFmOTQxZGExIGxlZ2FjeS10cnVuaworMjI0NDEgY2I3ZmI1NjVjODliOTRmYzgzMWY0OWQzM2FkM2U4MDAyY2IzNTdkYyBsZWdhY3ktdHJ1bmsKKzIyNDQyIGMzMzYzZTRkNmQxZDYwYWQ0YWVlYTJhY2JmZTYzNjIzOTVhN2FkMmQgbGVnYWN5LXRydW5rCisyMjQ0MyBjNjEyOTQyOGUwNTNjY2FkMDFiZDdlNjFjZGZiZmNkNWM4ZmZkYjQzIGxlZ2FjeS10cnVuaworMjI0NDQgMzhiNTkwNmZmMDMxZDNjZjkzYzEyNjhkNWQwOTUxMTI0ZDA4MWJkOCBsZWdhY3ktdHJ1bmsKKzIyNDQ1IGUxMTBjZDRmYzNjNjI1MGQxNjBkZjM2MjY1M2U3NTk4ZDg3MjYyOTQgbGVnYWN5LXRydW5rCisyMjQ0NiA1Yjg3ZWU0NDAwMGJhYTA2Yjg1YjQ5M2IzOGVkOTU1N2I2MmM0NmRlIGxlZ2FjeS10cnVuaworMjI0NDcgYTA4ZDBlNTg2MWNjZjI1OGFiM2Q0OGY5NTU2MzYzZDNmMDk1NWQzMSBsZWdhY3ktdHJ1bmsKKzIyNDQ4IGFjNmQ5Yzc0Mjg2NDMyNTMxNmQ4ZjY4ZjgwZGRlYjgzZmU1YWM2MDAgbGVnYWN5LXRydW5rCisyMjQ0OSBkM2RkMGYyZmIxZjQ0MWE4NjU0ZmJjN2Y5NDMxYTRlYTFkODQzY2IwIGxlZ2FjeS10cnVuaworMjI0NTAgZDk5YzEyNDBkMGFjM2VlOTliNGVjNDM2ZDBmNWM4NmZjNjVlMTZmOSBsZWdhY3ktdHJ1bmsKKzIyNDUxIDc4OGExNjM1MWUxODk0Mzg4Njk1MmY2ZmU1OGVmNGI1MTY4NDE0OTggbGVnYWN5LXRydW5rCisyMjQ1MiBmYmUyMDc0YzVmYTVhMjE5MTQyM2U5NDg5MWJkNTM4YjQ0MmM0ZWE3IGxlZ2FjeS10cnVuaworMjI0NTMgM2I5OGNmMTY5MmQ0MTU1Y2Y5MmZjZDE1OTRhNWI0Mzk2M2Y1ZTVmYyBsZWdhY3ktdHJ1bmsKKzIyNDU0IGJlMDI0YzI3NGUwMmNmOWEyN2M0M2ZmNDg1YTg2ODZhZmM4NGNmYWMgbGVnYWN5LXRydW5rCisyMjQ1NSAzODhiY2RlZTUxMjlhM2RmYWRjNWQwNTYwMTU0Njk1OTQyOGZhZDc3IGxlZ2FjeS10cnVuaworMjI0NTYgOWY4MGM3MGE3YTUxZWJmNzAxMjMyNjU4ZmJlZDk1NTNiOWE2ZjFiZiBsZWdhY3ktdHJ1bmsKKzIyNDU3IDA2ZjkwMjcxNDFmZjlhYjkyMjgwZGIyMzM5M2FlMmY3NDQ3YTQwYTkgbGVnYWN5LXRydW5rCisyMjQ1OCAyZmY1NzAyYWRiNTZkYWI4NDI5YzAzMGM2NDAzZmIzNzI1ZDhiM2Q5IGxlZ2FjeS10cnVuaworMjI0NTkgMzk1NmIyMmQ1ZTI5MzRmNjJlYmQ3MWUzNGQ0NDFhNzU3MDJmZjVkOCBsZWdhY3ktdHJ1bmsKKzIyNDYwIGZiZjFhZTc2OTMwNjYwMTVjZmZkNTM5YmI5NjliNDhjZmY2ZmRlZTAgbGVnYWN5LXRydW5rCisyMjQ2MSA5NjhkMTY5NTAxZjI3NjZhYmQwYjJlNTEzNmFhMmNjZGE3Y2MxYjY1IGxlZ2FjeS10cnVuaworMjI0NjIgNjYxNzAzMGM1MWUzYWQ4NTAzMGM3ZGUxZDUzMjc1NDRjNWRmNjdjZSBsZWdhY3ktdHJ1bmsKKzIyNDYzIGFmMWM2ODkzMjRmNTMxNmFmNjVlMTUwNTdhYWM1ZGZlY2U2NTZhZDEgbGVnYWN5LXRydW5rCisyMjQ2NCBmZWRiYTg2ODY1ZTI5NGM5NGIwZmM5Y2U1Yzg2NDBlMGQ0YWExODU2IGxlZ2FjeS10cnVuaworMjI0NjUgMWMzOWI5NmQyOWMzMjVmYWQxMTUyOTU3OGQ1MGNkYWQ5MjEzZTJkYSBsZWdhY3ktdHJ1bmsKKzIyNDY2IDE0Zjc4MmJhNDBmOTEyZjc1ODhjNjA4ZTYzYmQ5MjVjZWU3OTUwMTAgbGVnYWN5LXRydW5rCisyMjQ2NyAwNDY0M2ExODQ1NDZhMTE2N2Y5ZmJmY2ZlOTQ2ZGQyMDBlOGRjMjJjIGxlZ2FjeS10cnVuaworMjI0NjggNDlmZDcyNDM1MWY0YTg1NGI3YjIyYjJmMjVlMjVhOGMxNWNjZTIxNCBsZWdhY3ktdHJ1bmsKKzIyNDY5IGNhN2RiYWNiYmUxODY2YjZkYTc0ZDcwN2JkNTkwYzdiN2I1MTM1NTIgbGVnYWN5LXRydW5rCisyMjQ3MCBjM2M4N2NlNGFmZGNhNmIzNzhiZWIzZDFiZmM0MDg0OGRmMDBlNzhmIGxlZ2FjeS10cnVuaworMjI0NzEgNzg2MWVlOTUxYTkxYzRlOWY1ZmY3MTQwMmMyNGMyZWU0ZGNkMjQ0NiBsZWdhY3ktdHJ1bmsKKzIyNDcyIGViNWUyYjY4MzU0ZjVkZWJmMjNkMzAyMGY4YWVjMjQzNGU3MGRkOTIgbGVnYWN5LXRydW5rCisyMjQ3MyBiZDhjYjY2NWI1ZTEwOGIyZjk0Y2YwNGQ0OGM1ZWY2ZjI3MzQzMDRjIGxlZ2FjeS10cnVuaworMjI0NzQgZTlhOTdiMDI4ODliMDgwZjgzYzlkZjQ5MzllNzRjZTk5YzgxZGI0ZCBsZWdhY3ktdHJ1bmsKKzIyNDc1IGE5ZmYwZjZmZjI2MGVhNDEzNjExOTlhYjhkNjkyYjY0ZWM4MzRiNzYgbGVnYWN5LXRydW5rCisyMjQ3NiBkZDgyY2Q0ODZkOGExZDE5YTI0NzhjZjAxYzBkYzcwYTg1N2YxNjljIGxlZ2FjeS10cnVuaworMjI0NzcgMzVjNjVkOWFhODZhMjZmODc5YmJlZjYwZjhkN2M5ZDkxODZmYzEzMSBsZWdhY3ktdHJ1bmsKKzIyNDc4IGI2NTMxMjIzOGMwYjY2NGFhZDMyZGVjOGVhZjg3ZWZiMjc1MmEyZTkgbGVnYWN5LXRydW5rCisyMjQ3OSAxY2U1YTkwZmIxOTJiODQ2OTgyY2ZhZjI3NDU4MjA5YWI4OGNlYWQxIGxlZ2FjeS10cnVuaworMjI0ODAgZDg5OWJmYmZmYmJhMTc5NDc1N2NmMDE3NmYzZDU1MjNmNjMxMzg3ZCBsZWdhY3ktdHJ1bmsKKzIyNDgxIGMzNGJiZjE3Mzg1ZTRkNGQwYzg1YzQ2NDM3NjNhY2MzNGQyOGY3ZmEgbGVnYWN5LXRydW5rCisyMjQ4MiA1NTAxOTU4ZWRjMzYxZDE0YzgxZTBkZDcyMDMyOGU1YjRlZDY2ZGY2IGxlZ2FjeS10cnVuaworMjI0ODMgNGM4ZDc4NjhhOGU3NjEwMDM1M2M0YTY3MzBkNWNkNTIwM2M1M2YxMiBsZWdhY3ktdHJ1bmsKKzIyNDg0IDlmYjQ5Y2UyNDBkMTllYmU0ZWNkOTFjYTBlZTBkNjEyZTJjNmEzMmMgbGVnYWN5LXRydW5rCisyMjQ4NSBiOTUwMmQxYTI3YTdhNTk3OGE4YmFjZjcxY2FkZWRlMmUzOWU0OGVkIGxlZ2FjeS10cnVuaworMjI0ODYgMWFmYzMxMTZjNjAyMzViYTMwZGU5MmZmZGRlNDI2ZjNkNWRmZDhlNCBsZWdhY3ktdHJ1bmsKKzIyNDg3IDFiYTllMzY4NGQzNTQ4MmI3M2EzNzRmZjU3NDJiNTY0Y2UzNmRkZmIgbGVnYWN5LXRydW5rCisyMjQ4OCBmMTBiNjhlY2VlZmMxYWFmZTI5NDVlZWI5ZjMxZTMzYzUzOGE2ODlhIGxlZ2FjeS10cnVuaworMjI0ODkgYmU4NWY2ODZhZDk3YmJiZTIwZmM0ZTA1ZWJjZjNiMjZlNjAzZTBkNCBsZWdhY3ktdHJ1bmsKKzIyNDkwIDZmNmFjYmY3ODkzOTQzZjgzNGI1YzQyM2M5ZTM5MDgxYjIwZjc5MTcgbGVnYWN5LXRydW5rCisyMjQ5MSBiODY1Y2Q1YzE5MjUwMzZkYWVhYjNkOGIyYWRmYzNiNmEzNWU1MGM2IGxlZ2FjeS10cnVuaworMjI0OTIgYTVhOTMyYzIxNTgzMGUwOTUwNTdkNmMyNjY1OWVjZjIyNzNlNTFkZiBsZWdhY3ktdHJ1bmsKKzIyNDkzIGJhOGM2MmU1ZjkyZDY5ZGZhMzFjYmViMDJkOGZmYzVkNmI2NGFjOTAgbGVnYWN5LXRydW5rCisyMjQ5NCAxNGU2MDUxZDVmMWYwN2E4YjQ0MGEyN2NjMDUzY2U4MzRhYzBhNGJjIGxlZ2FjeS10cnVuaworMjI0OTUgM2FhMDYwNjQ0OTAzMTY2ZTkxZDc1YWM3YTEyNDNhYTQxZjhlODk0OSBsZWdhY3ktdHJ1bmsKKzIyNDk2IDVhZDcxZmRiMjA1YjM1NjdhYjJiMGIwNzc0Y2NhNmJmZjE5YTIyZjkgbGVnYWN5LXRydW5rCisyMjQ5NyA1YzJiZjZjZGUxMjMwM2IxYzJhYzIyM2E5YjI3YTI3ZjA2MmE4ZGQ3IGxlZ2FjeS10cnVuaworMjI0OTggZjdhMjEzMGEyNTYzNjc3NDRkZTczODQzZGRmNjkyOGQ3Zjk1ODcwOCBsZWdhY3ktdHJ1bmsKKzIyNDk5IDM3NTU4ZTg2NWVhZDU0YzI3OWM5NjE1N2RkYTU1N2IyNTZjNDdiYWEgbGVnYWN5LXRydW5rCisyMjUwMCBjM2Q1M2QzNGFiNDRkZWJjNjk0YjMwYjM2ZGUzZWI5NmQwNWRkOGMyIGxlZ2FjeS10cnVuaworMjI1MDEgMWU4N2RiMGNhMjQ4MmUxYzhlNTMxMzZjN2M2OTcyMmU4NzA0MjFiYyBsZWdhY3ktdHJ1bmsKKzIyNTAyIDE0NTZlYzczNTA4NzJkNjdhOTUyYjk1MmYwZTU5NGQyNjc2OTVkYzIgbGVnYWN5LXRydW5rCisyMjUwMyAxNTdiYmI4OTYxOThiOThjMWZmOWM5YTM1MzFjYjU2ODMwNDY0YTc5IGxlZ2FjeS10cnVuaworMjI1MDQgMTA2OTA5MGIxMjRlZjg3ZjNlNWNkM2YzN2U4Nzk5YzU3Njk4ZjA1NSBsZWdhY3ktdHJ1bmsKKzIyNTA1IDNkZGIyMTA5MzJjYTZkZDFjOGMzNGY2NTIzYWUyMmUxYzc4MDA5ZjIgbGVnYWN5LXRydW5rCisyMjUwNiA2YzRhODczMDY2M2FkZTBlOGUzODQ3ZTk4OTk1ZWQwMTk5MzJhMWM1IGxlZ2FjeS10cnVuaworMjI1MDcgNjMwMzAyNjY2NDY2MmI5ZmQwYjk0M2U3ZjVlODc4M2M4NzY3YjE5MSBsZWdhY3ktdHJ1bmsKKzIyNTA4IDgxNDQwZGQzMjZiYmUxNzUyZWFmZDEwNjg1ZGU4NWYyMjllYjkwOWQgbGVnYWN5LXRydW5rCisyMjUwOSBiOTcwMTUzOGY4Mjc2YTY5NGM1ZmFiNWE3YzVmNmNkOWRmNTg0Mjc2IGxlZ2FjeS10cnVuaworMjI1MTAgZWQ5YWJhYjk3MTA3OGNkYWZiMTFkOGJjZThmYjcxMmM0NjlhYTcyYiBsZWdhY3ktdHJ1bmsKKzIyNTExIGNlYTk0NTc2NGRiMjE5ZmQ5NGI2Njk5YmM4NjJkN2EyNmUzMjQ2MDggbGVnYWN5LXRydW5rCisyMjUxMiAxMTkwM2ViMDA5ZjY3MDIxYzliZDY0MzlmNWE1NDY2ZTFjODZkZWFjIGxlZ2FjeS10cnVuaworMjI1MTMgZmE3ODZmOGE3NTcwYTViM2MyNjI4OWIwMjNlOGFhZjUyYjE4MGNhYyBsZWdhY3ktdHJ1bmsKKzIyNTE0IGE3YmJhYzY5YzhlZjIyNjYwNjdlNjkxOGNlZWMxZmUyYmU1YzI2ZjUgbGVnYWN5LXRydW5rCisyMjUxNSBiMGQyZGU4Y2UyNGY0YzI1NzMzNGNiZDY2YzI2NTcyNDExODNkZTg3IGxlZ2FjeS10cnVuaworMjI1MTYgYWYwMDE4YmI4Y2ZjMzE5ZWNiYjk2MTMyMzI3NzVhYTE3YTZiMjAyNiBsZWdhY3ktdHJ1bmsKKzIyNTE3IDBjMmI0MzkxZGY3ZGQwYzRlNWFkZWZiNDdhNWIzNjA5NzY4MDkxMTEgbGVnYWN5LXRydW5rCisyMjUxOCA2Y2I5ZjUzOGRjZTQ5ODdkMGYyYmRhZDMzNmRjZmI4OWQzMzQ2MWQ5IGxlZ2FjeS10cnVuaworMjI1MTkgZmM3NjE3MzEyMTgyODNmN2IxYjZlMTc2NTg5MjdjODA5YjY2MTc1ZSBsZWdhY3ktdHJ1bmsKKzIyNTIwIGE2M2E2OTMzNTU0Zjk1MGQ4MmUzOTE0YmYyZmJiNDk2ZTRkMDA4ZDAgbGVnYWN5LXRydW5rCisyMjUyMSA2ZjYyZjVhNjJhMmM2YmQwNmE5MWVkNzRhYTkzOTA5MGRkYmJmMDIyIGxlZ2FjeS10cnVuaworMjI1MjIgMmQ4OGRlYTQ2NDE3N2NhNTdjMjcyZGRlZjNjNjRhMTA2OGRiYzNlMyBsZWdhY3ktdHJ1bmsKKzIyNTIzIDFmNGViOGM5MjVkNTE4ZTU5YmNhODAyNmE0MjQyYmE0MWVlNDRhNTQgbGVnYWN5LXRydW5rCisyMjUyNCBmN2RjMjFjYjE2NjFkYzM3OGIyMzkzNDVkOGQyMWJjNDViMzgzMzEwIGxlZ2FjeS10cnVuaworMjI1MjUgM2VhMjkwOWUwNTFmZmI2Njc3MThkNTE0NzZlM2M3YjgzOTg1OWUzMyBsZWdhY3ktdHJ1bmsKKzIyNTI2IGNiYWE1NDVjNzg4ZGFhOTc5MjEwNDYwNjgxNTRmMmI3ZmJiODE4N2EgbGVnYWN5LXRydW5rCisyMjUyNyBkMzcwYTU4ZmI3ZmQ4ZjNkZDA1OTJmYWRhNGFkMzQ2MDMzYTdlNzhkIGxlZ2FjeS10cnVuaworMjI1MjggNzk1N2IzZjVkNDYyZDdkZDAxNWEzMGFjZmUzNTczNDZiNmFjOTdiYiBsZWdhY3ktdHJ1bmsKKzIyNTI5IDQyMjQ2YjhjNThiYmE4OTYwYjNjYjc0NDJkMDcyZDgwNDU2N2Q4NjEgbGVnYWN5LXRydW5rCisyMjUzMCAxZmVjMDMwMTIzNDY3ODk1NGMwM2MyZDY4MzVmN2E2MmRhNjJlOTdjIGxlZ2FjeS10cnVuaworMjI1MzEgMjYxZTI4ZTdmYTAxZmFhMTI1ZTM0YmIyYjQ3YzBkMjlmOWQ2NDBmMCBsZWdhY3ktdHJ1bmsKKzIyNTMyIGI1MjVlNjAyZjZjMmE0Mjg1OTY0OWNkYzk3NDE4ZjNmMmY2ZWUyNGIgbGVnYWN5LXRydW5rCisyMjUzMyBkYjQ4OGNjOWYyNTk4ODZlNjZlNzFkODUxZWU2M2MzOTgyNzYwYjlmIGxlZ2FjeS10cnVuaworMjI1MzQgZWZkY2Y0MmY4ODUyNzJlYmRkOGE5MWEyYmZiMDc4NTcyODg2Yjk1NSBsZWdhY3ktdHJ1bmsKKzIyNTM1IDczZjY4NWRiOGMwYzc5Mjk3ZjhiNzVmMmNhMjQyYzY1MjlmZmRiMjIgbGVnYWN5LXRydW5rCisyMjUzNiBiNDE2MzhhMTFlNGU0MzllZmRiZWZiMDA1YWFjZjVkMjhlZTI4N2E4IGxlZ2FjeS10cnVuaworMjI1MzcgZjkzYzE2YzEwYTU1YzBlOWRkYTM3MzBiZGNhM2FhMDZhMmNiODEzMSBsZWdhY3ktdHJ1bmsKKzIyNTM4IGVhOWNmYzM4ZTExYmQ4MGUxODdjZDkxMzI2YWQzMTM0OTEwYTcwZjIgbGVnYWN5LXRydW5rCisyMjUzOSBiYTg3YzI0NGZiNTliZTY1NGI3ZmJhZGVkNzE2NjdhMWMwNzllYTMzIGxlZ2FjeS10cnVuaworMjI1NDAgMDYxM2ZhNTdhZTZkOWM3MzU0ZmVmODRiNWUyNTY4MDAyY2YwNmFjYSBsZWdhY3ktdHJ1bmsKKzIyNTQxIDA1YzlhMzVmMjE0ZjI4YjQ5ZjU3NWZlZDdjZTBkNzMwMjM0YjYwYzEgbGVnYWN5LXRydW5rCisyMjU0MiA2MDI2NGQxZTEwMGU5ZDY0ZTkyMWY0NGI5MjZlZGZmYzQ0MzA0OTU4IGxlZ2FjeS10cnVuaworMjI1NDMgZDZiMDg0YzI1YmE4YmQxMTc0ZjBmNDJiOWUyOTA4ZTkyZTUyYmJlNyBsZWdhY3ktdHJ1bmsKKzIyNTQ0IGViZmI3NGNlN2U1NjgxMzQ3NzQ5MjEyYjI3NTgwMGIxODc3Y2Q0NjMgbGVnYWN5LXRydW5rCisyMjU0NSBiMTExMmEyYzM1NGZmM2I0ZDVmNDkwMzY4YTNkZGE5NGFlNDczODQ2IGxlZ2FjeS10cnVuaworMjI1NDYgNzg2YWNlZDkzN2M1Mzg5YjFjNWY5MTg1MTE3YzFlZjFhOWVmOTBhYiBsZWdhY3ktdHJ1bmsKKzIyNTQ3IDYxMzBkZWViNGNjNjE1YjRjMDJjMGU2NTFlNGIwOGZjM2Y2ZTA1ZWYgbGVnYWN5LXRydW5rCisyMjU0OCA4NmNkNTdmOWRiOWI5NmYwZWQ2Y2Y5NTk5NjNmYjNkMGUxM2UyODRkIGxlZ2FjeS10cnVuaworMjI1NDkgZDQ2NjgyYmRhODJmZjVjZDgwMmE2MWFkZjQ5MzIxOGIxM2RlMjdhYyBsZWdhY3ktdHJ1bmsKKzIyNTUwIDgxNDQ3MjJkYzA3NjVlZjkyYTNmMDdmZWU3NmJiOTRjYjYwYzI2N2QgbGVnYWN5LXRydW5rCisyMjU1MSA3MjU3ZTg3ZTA3MjAxNmEzNzgwMGUxNmNjNzY5NzYxNzAyYWQwMjlmIGxlZ2FjeS10cnVuaworMjI1NTIgZGI5NzYyNTI5ZjQ1NDY2NjY0MmIwZTA0OTc0MWZlZGNhZjAwZGEzZCBsZWdhY3ktdHJ1bmsKKzIyNTUzIDM4YmUxNzdiZDQ5M2EwOGYxMjU3NGMyMDllYWI1MWMyYmRhMWVkNDAgbGVnYWN5LXRydW5rCisyMjU1NCBhNDhhM2Q3NTQ3NWVjZjJmMDM1ZDVjNDA0OTlhMjg1ZTQ1NTM0NjJlIGxlZ2FjeS10cnVuaworMjI1NTUgM2Q5N2E0YjVjNmFhNWU0NzNhOTA4OGQ4NmFmZDkzYzIxODVlOTU4YSBsZWdhY3ktdHJ1bmsKKzIyNTU2IDEzZjRiYTA1NTY4N2Y0N2U3MTg5MjU0Mjg3MjJjZGQ2ZGFjNzc2NmMgbGVnYWN5LXRydW5rCisyMjU1NyA5YjVhMmMxYTAyZjNjMGI5ZDU3ODY0NmUyMTFjNWVlMmI4MTVmMmFkIGxlZ2FjeS10cnVuaworMjI1NTggNWI2YTZkN2Q0NGFlZDJiMjAxYjdlNDI1NGE2YzAxYzIwYjg4N2E1ZCBsZWdhY3ktdHJ1bmsKKzIyNTU5IGY5MjBkZGI3N2Q4YjNmODQwN2E5YTlkOWQ4YjM2NmExY2Q1ODc0MzYgbGVnYWN5LXRydW5rCisyMjU2MCA5NDkwNWViNzJmNGZjYjViMjM1ODk5MWRmN2JiMjk3ZTJkZDE4ZmRhIGxlZ2FjeS10cnVuaworMjI1NjEgMDUxZDhlMzgwZjM4MmZlZDFhNDZmZGMxZWQyYWE3NGVlNGY3MWVhMyBsZWdhY3ktdHJ1bmsKKzIyNTYyIGU5M2Y1YzM4NWZmNDQzNGMzNGIxMDg4N2EzMDhmM2IyNWI4OWIxOGEgbGVnYWN5LXRydW5rCisyMjU2MyBkNWFjZmYxNzhhZDVlNjY0M2ZlZTJlMjE2NzZhNzZlN2YzMTFmY2QxIGxlZ2FjeS10cnVuaworMjI1NjQgYzBlZTEwZTBlMTNlMzVlNTQyODI4ZjA0YmQ1MDg3ZDIwNjBmNjQ1NiBsZWdhY3ktdHJ1bmsKKzIyNTY1IGJlOWI1MDcwNGU0YzBhODAzMTQ5YzU4MGM0MWUwZmZiNzg3ZjQ4MGIgbGVnYWN5LXRydW5rCisyMjU2NiAwZGFkMGRjNzE0OWIyYjdjMWRiMDdkMmRlN2QzYzMzZmNkM2JhZDdjIGxlZ2FjeS10cnVuaworMjI1NjcgZWZmOGNhNjc5YmY2YWVjYTY3M2QwYWU0NWNjZDhiNmEyMmY5OTI3NiBsZWdhY3ktdHJ1bmsKKzIyNTY4IGVhMTMxZmYxZDhjZDgyZjk5OTA4OTgzMWRlZjFiYWYwODU4MjMwNmEgbGVnYWN5LXRydW5rCisyMjU2OSA5MjIyYjZlM2IzNjg3ZWYwMjkyNWMyMjY4YWI4NTQyNzZjMWRlMWQ3IGxlZ2FjeS10cnVuaworMjI1NzAgNzhkYWNiNTQzODg3ZWZiODFiNWVkY2Q5NDY3YmE0MmYzNTgxMDUzMSBsZWdhY3ktdHJ1bmsKKzIyNTcxIGYxOTlkMGFhOWY4MTBmN2NhNWVhNDFiMjlhMzg5YmIzOWUxN2JlOWYgbGVnYWN5LXRydW5rCisyMjU3MiBiNzM4NDI4MjM4ZjE5NTAwY2IxMGFkNTBjMGZlMzFkOWQzMjU1ZjM3IGxlZ2FjeS10cnVuaworMjI1NzMgYTFhZGJmMDc1NjU3NzNjOTcxMGY1ZmVlN2NjNTQ5YjlkYzc4ZDQ4MyBsZWdhY3ktdHJ1bmsKKzIyNTc0IDYzYjliMTc3ZTM1MGZkNjZkNTM2NDA3NDllMjZkYzFlNWE0NzRjNjcgbGVnYWN5LXRydW5rCisyMjU3NSAxNzgwMjA3N2U3N2NmNTlmZDE0N2M5MmI0MGE1ZjdiM2E0NDA0NWE4IGxlZ2FjeS10cnVuaworMjI1NzYgM2IzMDc5Yjg1NzI3NDM1MjBhNzdhNzA5N2Y0NTQ2Zjg3ZDQ5MTIyYiBsZWdhY3ktdHJ1bmsKKzIyNTc3IDhjMmEyOWI3NTQ4ZWQ2MjQyZTE1ZDM1MDIwY2UyOTUxZTIxM2ZhNzggbGVnYWN5LXRydW5rCisyMjU3OCBiYWZiZTVjYzk0MWZmMWFjNzIwN2Q1N2E1ZmYxOWRiYTYxMjQ0MjYzIGxlZ2FjeS10cnVuaworMjI1NzkgMmJmMjY5MDk2NmZmZDMyMWFjNjUzYTFlMWY2NjdkNjNjZTlhNDU3YSBsZWdhY3ktdHJ1bmsKKzIyNTgwIDM2ZmE4ZTliYzJkYTllODI1NDM5MGE5NGQyNWIwZTY0NjYzZDk5NjQgbGVnYWN5LXRydW5rCisyMjU4MSAwMzM0NjJkZjE3YmY1OGI3YjdkYjc3OWQ2ZTNjMTViNTA2MWM5NWYzIGxlZ2FjeS10cnVuaworMjI1ODIgYzRiMmE2YjA0ZDBiOTBjMTA0MzA0YTRkZTFmZTBiYjk5MTU4NDA0YiBsZWdhY3ktdHJ1bmsKKzIyNTg0IGZjYWIzNmM5MzMyN2NhNWE1NmZjMGEwNjcwYmFmZjQ1NGEyMjJiYjUgcjIyYTItYnJhbmNoCisyMjU4NSA0ODRjMDVkYzQ5OTg0MTc3ZDE1ZmVkZGI5NjIxZjNlNzJkMzVkNzljIHIyMmEyLWJyYW5jaAorMjI1ODYgMjk0YTU2YmY3MzE1ZjAwMDRiZmQ1YTFkNzg4Y2JjYWM1NTI0NjZmOSByMjJhMi1icmFuY2gKKzIyNTg3IGZkMTE5ODk5MDQ1YzgzODRjY2VlZDg2MzYwZWU0MGUyMjFkNjJiNTYgbGVnYWN5LXRydW5rCisyMjU4OCA5ZTRmNzM5ZTlhODQ4NjhlYTA1ZjYwZTRlMWZmODExYWJlYjM5MzE0IGxlZ2FjeS10cnVuaworMjI1ODkgNjM4NmYwMWYyNDAxNjJkOTdhMDhiOWVlMmI4Njc2MzllNGY4MmQ2NCBsZWdhY3ktdHJ1bmsKKzIyNTkwIDVmMWU3NTcxYjEyOWNiMDdiOTJhNTUxZTNhYzg2MDc4MGNkN2FiM2IgcjIyYTItYnJhbmNoCisyMjU5MSA4YTZjZGExNzU1ZWI5OTFkMjQzNDY3ZDdkOTA2MWI5NDQzMjRlNTM5IHIyMmEyLWJyYW5jaAorMjI1OTIgNzM0MDY2ZjIxNjRmMzZlNDJiMjY1MWMwMTcwMTlmMTEzYmJhZGUxYyByMjJhMi1icmFuY2gKKzIyNTkzIDVjOGRlNjhiM2NkY2JjNDYzZGFhNTMzNTk0YjdlMjQyYjczZmJmOWMgcjIyYTItYnJhbmNoCisyMjU5NCBhZjA1OGQ2OWVhZWRkNzkyMmJmMTJiZDZlYjUxMjk3M2ZlYmM0ZTU1IGxlZ2FjeS10cnVuaworMjI1OTUgZDc2NGQ1NTY5MmExNGY0MWM2NTNmZjlkN2E2MTBkZjFjNDNkYmY0ZSByMjJhMi1icmFuY2gKKzIyNTk2IDQ3OWI1NjBkZWNhNzAxNzE3YWE5ZjIyMDk1MzRmYTk4MzM3ODFhM2QgcjIyYTItYnJhbmNoCisyMjU5NyA5MzVhYTA3NGNkYjg2YWJjOTE1MzJiYjU2YmQ2NGIwNzM2NTVlZTBhIHIyMmEyLWJyYW5jaAorMjI1OTggMmEwODNlMDUwNjE3YjU5MjFkMjIyYmNiYTY4YzIyOGI1YTc0MTE1MCBsZWdhY3ktdHJ1bmsKKzIyNTk5IDUwZDNiMzY2ZThjOGE5MGQ2ZjMwZGM3MmUxNDE5ODE4YTg2NDM3YTcgcjIyYTItYnJhbmNoCisyMjYwMCA4ODQyMjA4MTA5NWFmNDA4ZWNiODg2OGRhM2M4YTU3Mzg2YTE4MzVmIHIyMmEyLWJyYW5jaAorMjI2MDEgZTliNzk1ZDRjMDYwY2Q3MjIwNDNkNzIyOTM3NzQ2Mjk2NTg3YzM2OSByMjJhMi1icmFuY2gKKzIyNjAyIDdiNTUzYjFjM2U4YmQxNGQwYzhiNDE2OWM0YmMyMzZhYTM0YWQ5YWYgbGVnYWN5LXRydW5rCisyMjYwMyA2MGQ1Y2JiZWFkYzNiODY4ZjZlZWY1ZWZjNmJlZmRhMTVkYzZiNDExIGxlZ2FjeS10cnVuaworMjI2MDQgZmI0N2RiODU0MTBlNDlmODU1ODMwMDg3ZjFkY2ZkNWZiZmY2NWUzZiBsZWdhY3ktdHJ1bmsKKzIyNjA1IGMyZGIxOGMwNzBmZWNkYTE2YzRkZjQ1MTUyMDg0ZGRlZjhmMGIzOWIgbGVnYWN5LXRydW5rCisyMjYwNiA1ZWJkYzNhZDg4Nzc5ZmU4YWRlZTlkMmVhN2U0YWRlNzYyZDA5YmNhIGxlZ2FjeS10cnVuaworMjI2MDcgY2U2ZWE0NDQ5ZTk3Y2IxZWEyOTkwMzZiYmI4NjAxZTJjMTRhOTYxOSBsZWdhY3ktdHJ1bmsKKzIyNjA4IGI5Y2FmOGNiMTJhMmVjMzhmNjFmM2ExYjhiZGMyNTMwNTEzMzc3MGQgbGVnYWN5LXRydW5rCisyMjYwOSBiNDUwODQ3MzA5MTZkOTllMDEyMDI3NGNhZTAxMjVjZGUwZGE3MjNjIGxlZ2FjeS10cnVuaworMjI2MTAgNzdmNDk1ZTgyMmMxNTgyMDFhZjllYWJlNTM4MGZiYTQyMWNlNmNlMiBsZWdhY3ktdHJ1bmsKKzIyNjExIDBlN2FlZDUzYjU4MzMzMmJkYmI2NzlhYzdlZGRkYjRmZTU4MmQyOWQgbGVnYWN5LXRydW5rCisyMjYxMiAzYTJmZTc0NWEwYmJmYWZmNzU1OWM4MjgxZjQ1NDgwYjIyNWFkYTEyIGxlZ2FjeS10cnVuaworMjI2MTMgYjIyNjU4YTQ2OGNmYWFkNDM2NTQyYzAxYzcyMjk3NjM4NmE1N2MwYyBsZWdhY3ktdHJ1bmsKKzIyNjE0IDYyMTg0OTlhZWJkYTJiOTk5MjYyNDE2MDMwMDY1ODk3YzhlMGQ4OTQgbGVnYWN5LXRydW5rCisyMjYxNSAwZjg3M2QwNmFjMTNmYmUxNTMxNzM4MjUyZmNiYzdjNmJlMDZlNWE1IGxlZ2FjeS10cnVuaworMjI2MTYgZmIzMTllOWNjMmFkZmVkM2ZhNTg3YzIwMWYxZWFhYjQ2NWZhMGE3YSBsZWdhY3ktdHJ1bmsKKzIyNjE3IDc3NjFhYzhiZWI4MTllMmNhYmNjZTliYTFiMzY0NzYwMmI3ZmYwMWEgbGVnYWN5LXRydW5rCisyMjYxOCAwYzZjNmU4NzgzODhiOWFjNDljYWRiYmM1MzQ4MTY2ZjcwY2E2ODYyIHIyMmEyLWJyYW5jaAorMjI2MTkgODhiMWVjZDA0OGZiYzIzYzUwN2U5MDkyZTg0MTQ2NzlhMjlhZjlkYyByMjJhMi1icmFuY2gKKzIyNjIwIDhiYzdiY2EzMmE5NTY4YzZhYzJkNjM4MzEyODE3NTI4MjA1YTU5YzIgbGVnYWN5LXRydW5rCisyMjYyMSAyZmMxMDJiODM4ZWQ4MjBmNzY4MTZhNDVmZmNjOTE5MWJiNDczZjA1IGxlZ2FjeS10cnVuaworMjI2MjIgOTYyNjNjZmIyYzk2NjI5OTliYzZhYTdhMjQzNTgyZDdlZWRmNDA1NCBsZWdhY3ktdHJ1bmsKKzIyNjIzIGU4NTFlNjE0OGFkOGQ5ZTU2NWZmMzhmZjgzNTQ4ZmU4NjIzMTA3N2YgbGVnYWN5LXRydW5rCisyMjYyNCAxMDBkY2M5ZTZmMmYzYWFkOTAwMjkxZDY2MzA3NzI5MjQ2OGVkMGYyIHIyMmEyLWJyYW5jaAorMjI2MjUgYjk0Y2U3ZDcwY2ZjYTkwNjU1ZGJlNmRmOGI2NzcwYzIxZDhlZTZmZiByMjJhMi1icmFuY2gKKzIyNjI2IDYwYzBjZmY1ZDU3ZWNiZTBlOWNmMWI3NWRjY2RmZDM4ZWE0ZGMyYjMgcjIyYTItYnJhbmNoCisyMjYyNyA4NTNkYmUxMmJiZTY4YTY2MmFlYzc2YjUyNGMwYjI5YzEzMGU0Yjk3IHIyMmEyLWJyYW5jaAorMjI2MjggYmU1YmU5ODljYWZmZWEwNDZiYTBlMzMwY2ZjN2U1ODU2ZjJhMTZkZiBsZWdhY3ktdHJ1bmsKKzIyNjI5IDg2MDdiYzg5MGIxZjAyNWQyZGRlZmM4ZjBjYzFmMzE0YjE1MzFjN2MgbGVnYWN5LXRydW5rCisyMjYzMCBhMDM4OTkzODkwYjIzZTZjMzJjZGU5NDU4MDE0OTY1MWZmYmM3Nzk2IHIyMmEyLWJyYW5jaAorMjI2MzEgNTU0NDUwNDA5YTczOGUyMWY5ODAwOTM3MGEwZjgwNTczZTY5NzU0ZiBsZWdhY3ktdHJ1bmsKKzIyNjMyIGQ5ZWE5OWE2ZjZiNDQ2Njg2ZTdjODdlZDYxMGM4M2MwZjY3YmE2MmQgcjIyYTItYnJhbmNoCisyMjYzMyA1YmNiYzU5MGY0YTcxMTYwY2U4NjExMTE2MDQ2MzgwMjdlMzA3Y2M2IHIyMmEyLWJyYW5jaAorMjI2MzQgODk5NmRjNTIwYjU3YmI3MjRhOTNmYmM2YTFmNzVjNjUzNGM2YTVmYyByMjJhMi1icmFuY2gKKzIyNjM1IGFjNmJmYTU1ZmNlYmY0YjgwMTA2YjUxNjM3OTI1NjFjOGY4ODdkYjEgbGVnYWN5LXRydW5rCisyMjYzNiA2MTI1ZDlmOTI0NDFkYzMyYTUzZDYxMTVjODgyOTFjNDZlYzdlMzc4IGxlZ2FjeS10cnVuaworMjI2MzcgOWRlODNkZGE5ZjA5YTNkMTZiYWUyOWE5Y2E0MzE1NTk1N2M1Yjk1NCBsZWdhY3ktdHJ1bmsKKzIyNjM4IDkzMDZmODI4ZmJiNzczNGZiMTJkNTc3ZjRmMDk1Zjc2MTA5NWYzNjkgbGVnYWN5LXRydW5rCisyMjYzOSAwMWU2Njc4MGFmNjE2MzFiZWI3NjgxNjZkYTVlODMzY2ZmMWI0OWI2IHIyMmEyLWJyYW5jaAorMjI2NDAgODFjNzU2NWE1NmFjY2U4NThlNmVkZmNlYWU4NjMzNWM3NzZhYjM0ZSBsZWdhY3ktdHJ1bmsKKzIyNjQxIDdlNWU5NzRiM2QzNzZkNGJiNWVmYTEzMTk4YWJmMmFjOWRiNzQ1NzcgbGVnYWN5LXRydW5rCisyMjY0MiBiYzljOGNlYmMyZWZjODA3ODYwNTE0YTllZWYwYzhjZTVkMDNiZjI1IGxlZ2FjeS10cnVuaworMjI2NDMgYzQwM2FmMDAzODg0ZTZhZGI1ZjUyM2Q5MWY3NmZkZjg0ZTljMWFkOSBsZWdhY3ktdHJ1bmsKKzIyNjQ0IDBkMWJiZTY1YTFkODc3Yjg1NzUwNGU4MzJiMzRhNTRmZjMxNTc3MjkgbGVnYWN5LXRydW5rCisyMjY0NSBkNGJhNmUyYWFhZTM0YWMzZTBiYjAzOTExNzlmNDdiZjFkZWQ1MzgwIGxlZ2FjeS10cnVuaworMjI2NDcgY2NjNGFmNjg3Y2FjNmNkMjE4ZWMwMTM5NWJhMWFiOWRhYWQ4OTc4NCBsZWdhY3ktdHJ1bmsKKzIyNjQ4IDVmNzMxMTE1ZTM1MjZiZGE3OGEzMWFjZjlhOTcwM2YwMzYwYmZlYjIgbGVnYWN5LXRydW5rCisyMjY0OSA0NzYzM2I3OWVjMTlmM2FlNjZlZGRkZmI2MWNmNjY5Nzc2MDMyODI1IHIyMmEyLWJyYW5jaAorMjI2NTAgYjJkYWQ0ZDE3Y2E5YWUxZGZmM2ZiNWMyMzhmMDVkZTczOThjZmEyYiByMjJhMi1icmFuY2gKKzIyNjUxIDA5MjhjZDYyZGRlYTVkMjBjMWFjODAyNDA3ODMyY2ZiNjNkODMzMzQgbGVnYWN5LXRydW5rCisyMjY1MiBhNmNlMmQxNmQ3MzlmNzJiMjRiNzE5ZDhmYTA5NTI5ZTFmNzFmNzdiIGxlZ2FjeS10cnVuaworMjI2NTMgMGIxMWYwOWNmMWU0MGQzY2MwNTE3YzhmNzYwNDkyZmZiZTJmMDRhNCBsZWdhY3ktdHJ1bmsKKzIyNjU0IDI5M2E0MTJjOWZkOTdkOTUyNGJlNTllYzY2MTE3OGMxNmQxNzNjODkgbGVnYWN5LXRydW5rCisyMjY1NSAxMjU3ODVmMWUxMmZlN2I4MmE1MTg4MmU1MGI2NTlhZDcxNzg2ZDFkIGxlZ2FjeS10cnVuaworMjI2NTYgODExZjI4OTYzN2FkMjRlZjFlMmYyNGNjZGYxZGM4OTkzMWJmZjc1MCByMjJhMi1icmFuY2gKKzIyNjU3IGIxNTljZTMzMTVjYjhkYTY4YzBiZWQ1MGI4Yzc1NWRkMjM1YjgxYWMgcjIyYTItYnJhbmNoCisyMjY1OCAzNGE3NGI4MWM5YjJmYTY4NTY0MDA4MmIyMTgzYzBkNGVmODIzZmIzIHIyMmEyLWJyYW5jaAorMjI2NTkgNzMwZGNkNmQ1OTBiMmJiZTFjYThlYWQyYWE3YmQ5ZWJiMTg2YzE4MCByMjJhMi1icmFuY2gKKzIyNjYwIGY1MmZhMmI3MDNkNzJjNmRkMDE5ZjI1ZGRmNjc0YzE1ZWUyZjczM2MgbGVnYWN5LXRydW5rCisyMjY2MSBlNzZmN2M4M2ViMGQ1NjA5Nzk3YTY0OGJjNTBkYTU3NjgxYzM3YWIyIGxlZ2FjeS10cnVuaworMjI2NjIgNWMwMzU4NGNmM2NjMWM2NWRkYjE5NmE1MzhkNzAwNjk4ZmY2MWExZiBsZWdhY3ktdHJ1bmsKKzIyNjYzIDJiN2MwYmVkZmZkYmQzOTQyOTQ2MzA1Y2YwMTY0NWY1NTY1ZThlMTcgbGVnYWN5LXRydW5rCisyMjY2NCA4NTg2MjhjZjZlMjU2OTQ1NDcyYWNjOTY5ZGViNmM3NzI5NzdmNTMzIHIyMmEyLWJyYW5jaAorMjI2NjUgMTdlN2IxYTMzMWYzNWRmZWYwMmRiODlkZjQ4OWIwMWU0MWJjMjRlNiByMjJhMi1icmFuY2gKKzIyNjY2IGZhMzlmMDBkZDVjMzMzYmRhY2NhZDhkN2VhMDBlYjE3ZTk0OGNlMWEgcjIyYTItYnJhbmNoCisyMjY2NyBmZmVmNGU0MWYwNmVkYzQxZmQ4MmFkYzFjNTQ1MjRmMzRiY2FlYWM5IGxlZ2FjeS10cnVuaworMjI2NjggYzYzN2YyOWM4MTk4YWUwMzcyYzU4MmQwMjY2OTJjNGRlYjFlNzBiYSByMjJhMi1icmFuY2gKKzIyNjY4IGQ3ZjQyYzlkZTk0NDBkN2E2YTI1MmM1MGYzZGNiMDVjOTdlYmVjYzQgcjIyYTItYnJhbmNoCisyMjY3MCBkZTJmYmM1MmMxZWI5ZjRkODE5YjI3ZDIxNjdiZmQxZDEzMjc3ZTE3IGxlZ2FjeS10cnVuaworMjI2NzEgNzUyNjlhYjI2ZDAzMTM3N2IxNzAyNjE0YzlmMmU0Y2QwOTI1OWU5YyBsZWdhY3ktdHJ1bmsKKzIyNjcyIDhkNjQwNDQ1MzQ0ODU3ZTQ4ZDVhMzQ5NzJhZWZiYzQzMTY2MmQ3NmQgbGVnYWN5LXRydW5rCisyMjY3MyBjNzI2MTZkNjE0M2MyYzg5NzI3MmFmMTA4MGE0MjI3NDQxNmVjOTkzIGxlZ2FjeS10cnVuaworMjI2NzQgOWNmNjY5NTgxMTEwMzRiZTYzMjgxMDdmYWI0OTM1ZGUwZTVmNTg3NCBsZWdhY3ktdHJ1bmsKKzIyNjc1IDUwMGMzNTkwMzhjN2IyMzVmOTkxN2ZhMDhkMjM5ODJlYWMxYTJhM2IgbGVnYWN5LXRydW5rCisyMjY3NiBiMTM5YmRiNmQ0OGE0YmNkNTA5OWNjOGZlMzdmODQyYWFkMDFlOTExIGxlZ2FjeS10cnVuaworMjI2NzcgOTk5ZGU1NGFjNmE2MjFlNmU3ZmJmMmY5ODk1OWJmOGE4MWEwOTg2ZCBsZWdhY3ktdHJ1bmsKKzIyNjc4IDVkODFjNmJmZjMwNmU1YWYwYTY1ODAxNjJmOWVmZjZiNWEyY2E0ZmMgbGVnYWN5LXRydW5rCisyMjY3OSBjMTQwYmQ3ZDNiZGNmZmNlZmVlMGU4OTliNGY5OTY3M2Q2M2FmNWRmIGxlZ2FjeS10cnVuaworMjI2ODAgZGFkMzIwOWNlOTczMzJhOWRhMjU1OWU2YjlmNWU5MTA5YmM4ODliYyBsZWdhY3ktdHJ1bmsKKzIyNjgxIGUxNmFkNWY3ZjM4NzIyMWJmN2VlMGJlN2NiZTNmY2I3NjY3YzUwYWQgbGVnYWN5LXRydW5rCisyMjY4MiA1ZmVjMWM5YTIxZWFkZjRlOTU1ZTAyYjRjNjhkYzhiMWRmNTg4MWUzIGxlZ2FjeS10cnVuaworMjI2ODMgN2JlNGM3M2JhYzUzZTE0OTM3YTRiODhiOGQwODNlZWIyM2Q5NTRkMCBsZWdhY3ktdHJ1bmsKKzIyNjg0IGRlNzQ4MzQ3YTQwNDgwZmY0MjQwMjlmYzc4ZGU3YjJhOGU4NjY2NTYgbGVnYWN5LXRydW5rCisyMjY4NSBjYTFiOGNjMWJhMmJkNjViZGVlYzAyNmZkYzA1NjJlNzAxODUwM2UwIGxlZ2FjeS10cnVuaworMjI2ODYgMDc1NzA5ODM1MGMyODU3ZDUwNmY0ZjAzMGM5NzQ4ODhmZGU2NTAzZCBsZWdhY3ktdHJ1bmsKKzIyNjg3IDRkNjlkNzQyZGIyZjQ0YmQ4NjRlMDhhNWFjYTNmZjczMTM5NWI2NzIgbGVnYWN5LXRydW5rCisyMjY4OCAwOTIyZDYwOWFjZDEyNTJhNzdlYTA5NWQ5Yzc2YmQyNDdiNWRmNmI0IGxlZ2FjeS10cnVuaworMjI2ODkgNzEzNzJhMGY1MGUxYjRkNTBkODA0MTFhN2MxMzYyNTdiYzExYzNmZCBsZWdhY3ktdHJ1bmsKKzIyNjkwIDJhZWEzOTRmNDdkZDQwZTFmMmM2NGM3NDFhMDZiYTFjNjJlMWQ5NTkgbGVnYWN5LXRydW5rCisyMjY5MSBmNWQ4N2M0MWY2NWIyMDI3YjYwOTBhYWU1N2ZlNjEzMDg2NjkzM2IyIGxlZ2FjeS10cnVuaworMjI2OTIgM2JmY2RjYWJhNzAzNDI1NDRjYjVjNTE5ODZjM2VlYTVlZmM3MWZhMCBsZWdhY3ktdHJ1bmsKKzIyNjkzIDI1ZDJmNjQ4MzM4NDE5ZmI1YTBhOTNkMjNkY2E2OTk5OGYzYTdkNzMgbGVnYWN5LXRydW5rCisyMjY5NCBmOTRjNGJiNzg4OGIyYzc4Mjc5YTMxYjQ1Y2U2ZWNkMjcyZDhlODQ3IGxlZ2FjeS10cnVuaworMjI2OTUgY2VlMWRlY2M0ZmYyMDlhM2Y0MmVmMzdlNWM0M2Y0YzRhZTZiYjc4MCBsZWdhY3ktdHJ1bmsKKzIyNjk2IDI4MTdmMWQzYWRiZTMwM2YwYWEwNTRhMWM4Nzk0YTU3ZTZiOTUxZDkgbGVnYWN5LXRydW5rCisyMjY5NyAxMGI0NGUzYjM5MDU0N2ExNzZmYTQwYWM1NDQzNjg0MTAxMmJiZWViIGxlZ2FjeS10cnVuaworMjI2OTggN2ZiNWYxNTY4NWRkMDZhOTI2OGFiOTRlZDVjNWUwOTEzZGVmNDI3YiBsZWdhY3ktdHJ1bmsKKzIyNjk5IDlhZmQ5ZDVmYjk3YTBiNjBlNmMxNDA2MjA5MzY5NDc4MzVhYmFlZDEgbGVnYWN5LXRydW5rCisyMjcwMCAyNWI5YjYzNGQ5ZTNkMWVhZmY1NzA1MzExOTVjNzE3ZDM5MTAxYmViIGxlZ2FjeS10cnVuaworMjI3MDEgM2I1ZjM0YzViYzZjOTNhMTcwMDgwZDViNDc1NWIyNDg5YzQ1NDNhYiBsZWdhY3ktdHJ1bmsKKzIyNzAyIDZjMmI3YjYyNGVmMjNmMjJkMjg0Nzg1ODc5OGM3ZmI1MDY1MjM4YjEgbGVnYWN5LXRydW5rCisyMjcwMyA4ZjkwZTFmNTBjMTE4MzhmY2FkMDNiZjgwMmZlZTFiOGZjMzQ3NzQxIGxlZ2FjeS10cnVuaworMjI3MDQgNTAwMTljYjc4NGUwZGNlZWIzZGRhMTU0ZjZhYjkwMjM5NzA3NzhiOCBsZWdhY3ktdHJ1bmsKKzIyNzA1IDc1MzM0MTJkYzU4Y2Q2YTlmY2ViZmI2OTkzZDlhNzRkZmM4NGVjZjIgbGVnYWN5LXRydW5rCisyMjcwNiBmN2FhZjcyMWE4MWIzY2ZiNzVjODViYzU2ZjlkOTU5ODc2ZTA0NjM1IGxlZ2FjeS10cnVuaworMjI3MDcgMTM0ZTEzM2Q4YzQ0NWNjNmRhZmM2NTkxZDdiNTdiM2RhM2VmODA3ZCBsZWdhY3ktdHJ1bmsKKzIyNzA4IDBiNjQyZDIyMGIwMmUyZDBkZjg5M2FjMjM4OGRkNzY5YTUxZmI2YWUgbGVnYWN5LXRydW5rCisyMjcwOSA0NWQwZTExNDIxMmU5ODA1MTY0OGJjMWM2OGU5NzgwNmVkNzNkN2ZkIGxlZ2FjeS10cnVuaworMjI3MTAgNGEzMGVjNzk4ZTZjMmViODU4YTA3MGI4NTI0NmE2ODQ0NDE2ZmMzMSBsZWdhY3ktdHJ1bmsKKzIyNzExIDYxZDUzYzA1M2U0MzRlOWVhMDY2MmM1MTNjMjBkMWYyM2M0YmRlZmEgbGVnYWN5LXRydW5rCisyMjcxMiA2ZTZmYzdiNmEzNjAxYmRlNmVmNDgzNzM4YWRmYjYyNGMyNjA4ZDI5IGxlZ2FjeS10cnVuaworMjI3MTMgMGRjZWU5YmNkODEzZTg2MTYwNTI3OGVkOTZlYzE3NDE2N2EwODNmMSBsZWdhY3ktdHJ1bmsKKzIyNzE0IGIzYzkyZjAxMzg2OWYwNjg5ZWZmZDUyY2I1YTAxOTlhYTc5ZDVjOWYgbGVnYWN5LXRydW5rCisyMjcxNSA0NWVhM2I1ZmNiZTU3ODdiMDVjYmVjNjU3NjFmNjVkOGFmYmVhNjA3IGxlZ2FjeS10cnVuaworMjI3MTYgOGQyYjJjYjJmZWJjZjA0ZTk1MTIxZDhhNjhlYmE4YzNmNDAzZjM5MCBsZWdhY3ktdHJ1bmsKKzIyNzE3IDU1M2Q2ODg0MzhjNDM0NTZlYTc0NWU1NDhjZmEyMzQ4MTMyNTkxNDUgbGVnYWN5LXRydW5rCisyMjcxOCBjMzkyYzNlNDlkZDU2ZWQxNDJmZWM2ZWJhY2FhMzE1MDFkMjI2ZmZlIGxlZ2FjeS10cnVuaworMjI3MTkgZjlmNGJkY2JjMjVhYWUzYjg1MmRiNGMxMmM0ODlhMjg3YTAyMTdhMSBsZWdhY3ktdHJ1bmsKKzIyNzIwIGJjNjNhZmM3MDFlZjcwZGE2NWUwZjdkNjk4NmZjMzI4NmI5Y2RlZGEgbGVnYWN5LXRydW5rCisyMjcyMSAwZTcwZGY5ODQyNGVkY2MzNmI4ODgxZmNiMGRhMmZmNDMzYjdiMWE0IGxlZ2FjeS10cnVuaworMjI3MjIgZTFjOTFhYzU1Y2NhODA0Y2U3ZDEyOTIzYjQ1ODM2N2U0MjNlNDRkNiBsZWdhY3ktdHJ1bmsKKzIyNzIzIDY3YjMyNWNlMDIyNmQ0MGFmMTAxMjRkYmEzOTU2ZmZlMWQyMzA3MjcgbGVnYWN5LXRydW5rCisyMjcyNCA0Nzk2YTY3YTk5OGI5OTBjYjgyMzM3OGI4ZDdlMWUxY2RjZjFlZDM1IGxlZ2FjeS10cnVuaworMjI3MjUgOTg0ZmZhMTI0NjA2MDliOTkyN2MxYjk3NzE1MzIyNDM3ODYzNzIyNSBsZWdhY3ktdHJ1bmsKKzIyNzI2IDc3ZmVhOGZhMWYxNjQzMWMzOWZlZTcyZGZjNDdiZGFjYzFlZmFjYjkgbGVnYWN5LXRydW5rCisyMjcyNyA5M2NiNWVjNDQwMTc5OGQ1MjNhNjgxZjJhYmQ2NTBmZjAzMWEyNzY4IGxlZ2FjeS10cnVuaworMjI3MjggYzE3MWIwN2JmNmE5ZThkZWVmY2Q5N2FjZmE2Yzk5NmFhYThjMDBlNyBsZWdhY3ktdHJ1bmsKKzIyNzI5IGRlOTc3ZDc2MjdlYmZmYzE5MTcxMjA2Y2E0MTUwMmVlYzY1MWJjZjIgbGVnYWN5LXRydW5rCisyMjczMCAwMDNhMGZlOWMzNTAzZWVkMDZhZTU4OWE0NzUzNGE2YWViYzhjZmJjIGxlZ2FjeS10cnVuaworMjI3MzEgNWM4NTlkMmNiMzdiZGM1MDY5NjUyY2E4MzQwYjMzYjBhNDg3Y2ZhZSBsZWdhY3ktdHJ1bmsKKzIyNzMyIDNlNjhlMWEwMmFkMjA4YWRkOGYzM2JhY2MyZDcwMjBiZjRjNjIwMTggbGVnYWN5LXRydW5rCisyMjczMyA0MmIyZjE5MzYyNTQ2ZWQzYjgxNTE3ZmJkYjczODFkMjYwNmViMjBlIGxlZ2FjeS10cnVuaworMjI3MzQgM2U3NDMxOGExYjc2M2JkYjRiMTRiMzg4MjY2MDEzNmI3ZGIwOThmZiBsZWdhY3ktdHJ1bmsKKzIyNzM1IGM2Mzg1MDM4ZGUzOWFmZTVjNzEyNjI2YmQxODE0YjcwNmU4MWU1OGEgbGVnYWN5LXRydW5rCisyMjczNiBjMWFjNWY4MjdiYzI2MzAwM2M2YzJmNThlNGNhYjMzNmJhYzBiMDMzIGxlZ2FjeS10cnVuaworMjI3MzcgZDc5YjUxODY3Y2RiNTE5MDFhNWVkMTI0ZjkzZWNmYzAzZTU0NjRhMCBsZWdhY3ktdHJ1bmsKKzIyNzM4IDU2YjUwZTRkNjg3ZWJhNTEyM2RkOTAxNDliODQwOWZhNmUxNDQwMzIgbGVnYWN5LXRydW5rCisyMjczOSA2NzM0YzgwNjUxMTQ4ZjVhMDg1NWFmNjhkN2U3ZGRkODM2YjUxYzE1IGxlZ2FjeS10cnVuaworMjI3NDAgNDM1NGJhNDczNWEwOTY3NzYxNDRjODY3OTIxYmUyNzVhZGJlOTg0NSBsZWdhY3ktdHJ1bmsKKzIyNzQxIDYxNzU1NTU3OTYxMWZhM2JiMjU3Njk5MGZlNzMyYTE4OWI0MjNhM2YgbGVnYWN5LXRydW5rCisyMjc0MiA1NDdiNmVmMTEwOGM4NDk0NzlkOTA2YTM0YmFkZmIxZWNmYWE0MTUwIGxlZ2FjeS10cnVuaworMjI3NDMgZmM1Yzc1ODA3ZTE5NTJjYjZkZTk2MjIyYjAyN2NkOWY4NTk2MTVjZCBsZWdhY3ktdHJ1bmsKKzIyNzQ0IDA3ODI5MmJmOTRjYzcyMTBhNzVhZWVkMDRkNDI4NDA4YjViZmE1MGEgbGVnYWN5LXRydW5rCisyMjc0NSBkMGNlMDQ2MGY0YTdjNjFhZGQ0ODRiYjVlYmE3YmEwYWE3OWQ4ZDI2IGxlZ2FjeS10cnVuaworMjI3NDYgY2U0ZjFlOThiYTdlNDM2OWIzZWM5MDZlOTNhNzgzZjhhYzY2MzdjYyBsZWdhY3ktdHJ1bmsKKzIyNzQ3IDYyYmY5NDAxYTFhY2ZkZGZiOWVjOWU0ZTUzM2M4MGJiZDFmNWZmMTggbGVnYWN5LXRydW5rCisyMjc0OCAxN2IyYWZiYTdhNmZiMDRhMzEyMWUyNDE2Yzk5OWU3MGViZDk0YWM0IGxlZ2FjeS10cnVuaworMjI3NDkgNTk5MzFkYjU3MmIyNDQ5YTg4MjczNTRiMGZkMWJiZGMzYjlhYTdhMSBsZWdhY3ktdHJ1bmsKKzIyNzUwIGZlZmU5NTMxOWYyNGIwZDIyMjIwZjAyM2M4NDViMjIwY2IzNjk3MzYgbGVnYWN5LXRydW5rCisyMjc1MSA4NzYyODAzMGFkNzVkNjg3YmZkZTQ5Njg1YjU5ZDk3OTgzNWEwYzc3IGxlZ2FjeS10cnVuaworMjI3NTIgMDc2YWI4Y2I0NTFlYTAyMzc2OWNjMGE2MzFlZjhjNmZlNjE5OGE2OSBsZWdhY3ktdHJ1bmsKKzIyNzUzIGRiYmEyY2E3ZGMxZTVkNGQzNmVkYjk5ZGFjZDVlYWM0MDU1NjAwNGEgbGVnYWN5LXRydW5rCisyMjc1NCAzMzRmNDE3ODQ3N2FhNzc3MjE2OTFjNDRjMzAyYzdkZWE3MzI2NzU0IGxlZ2FjeS10cnVuaworMjI3NTUgY2UzMTliODJhOGU0ZGQ5ZDMyZmMyNjUyNmVlZTdkOWE3ZDA5YmQ4YSBsZWdhY3ktdHJ1bmsKKzIyNzU2IDVjZjkyNDFkMzViMDlhOWIwZGRmYzNkOTI5ZWRlN2M3M2EyZGNiOGYgbGVnYWN5LXRydW5rCisyMjc1NyBjYzAyMzQxZGVkZTQ3ZTA1OGQ1ZDY0NzcxNDJkZTdmZmI3MGFmYTRhIGxlZ2FjeS10cnVuaworMjI3NTggMjQ0ODBhNmQyN2M0ZDQ3OTM1Yzk0NGNkMTA5YzM1YzcwMGZlZDc1MyBsZWdhY3ktdHJ1bmsKKzIyNzU5IGIxYWNiY2Y3ZDU4Njg0MjZjZWNmYjQwZjg5NjhlNTE2OTQ3NTVlNjkgbGVnYWN5LXRydW5rCisyMjc2MCA1NDZlZjMxOGJhNWRjZDRhNzNiOWQ3N2E4Yjg1MzZjYmI0MDk2MGViIGxlZ2FjeS10cnVuaworMjI3NjEgNGFlYzljYjdmZTVkOWQ1ODMzMjAwNWNiNTU4MDllNDdkNzVlYmM2NiBsZWdhY3ktdHJ1bmsKKzIyNzYyIDFhNmNmMzI1MTQxZTBkOTU1ZjIwZmZlZTIyNWI0ODFjNTkxMTQzNGQgbGVnYWN5LXRydW5rCisyMjc2MyBmYmIzNTI2OGZlZDRmODc4YjFlY2E4MjM0Yzc5ZDA1YTZhN2JlMGM4IGxlZ2FjeS10cnVuaworMjI3NjQgOTllOTUzYzY3MDljZWVmNDcxOGIzZTIxNzI3NTQ3NTNlYzg2MGY3ZiBsZWdhY3ktdHJ1bmsKKzIyNzY1IGMwYzVmZTc5MDJjZjI3MWMyNjE0Yzc0NGViOTIwZWQ5ZGQwZjc0ZWUgbGVnYWN5LXRydW5rCisyMjc2NiA0MTJkMGViNWQ0YmE1MjE0MjZkODI0YTRlMTliOTRhNDc4ZGYzMTE0IGxlZ2FjeS10cnVuaworMjI3NjcgYTA4NDdiN2E4OTAyOGM3NjYxNWY4MGIxYjI5ZTdjNjYzMjVkODYwZSBsZWdhY3ktdHJ1bmsKKzIyNzY4IDNhOTAyMTFhMDI5NThmZWFlNDg3ZTMwM2U5NWRhZDllMjZiNTFkYjIgbGVnYWN5LXRydW5rCisyMjc2OSBhYjE5NGYxZjA1M2I2NmZkZjg2Y2ZjYmFmZjgzY2I3OWUxZTNiZmIxIGxlZ2FjeS10cnVuaworMjI3NzAgZjNlYzU0ODg5MDhiM2M0OTlkODYwMDIwMzcyMmRiYmRiYTgwZjBkOSBsZWdhY3ktdHJ1bmsKKzIyNzcxIDQ0MzNlYmE3MzllN2YxNmE3YzBkZjAxMjMwMjlmOWQ1NWNhNDgwM2YgbGVnYWN5LXRydW5rCisyMjc3MiBlYzUxZTEwYTYyMjljNmVjMTYyOTdkZTJmNWVkNTE4MmU1ODMyMmY5IGxlZ2FjeS10cnVuaworMjI3NzMgOTZhMGJiM2E4NTIxYTFiNmI1OTgyMzdlNDg3ZDA5NzA2YWVkNGE4MSBsZWdhY3ktdHJ1bmsKKzIyNzc0IGRkOGQ2MTUzYThjNjVkYjhlMWM0NzVjNTQ0OTg4ZmQ4MWM3MWMxZmEgbGVnYWN5LXRydW5rCisyMjc3NSBlZGU3ZmNiOGIwYjIzNzcxZjcxODBmYThjZDM4Yjk3NmJkYWVmMjk3IGxlZ2FjeS10cnVuaworMjI3NzYgZGVhY2Q2MDI3MmJlMzI0N2JmMDg2ZDdkMDVmMmIyN2RiYzVmZjRkMCBsZWdhY3ktdHJ1bmsKKzIyNzc3IDIwMmQ4ZGQ2NWViNWIyZmY0ZjcwYzk3ZjMwZTRhNDc3YTk2NTQ3ZDcgbGVnYWN5LXRydW5rCisyMjc3OCAzZTc4OTc4MjI0NTk3ZjQxNjEzMDk4NjE1NWY1YWEyODNlZGRlMzE5IGxlZ2FjeS10cnVuaworMjI3NzkgZGUxMDE1MWE3ZjYzZWRiZDE5ZjQ4NWFhNWFmMGYzYTQ0NTMzYjEzZCBsZWdhY3ktdHJ1bmsKKzIyNzgwIDk3NTM2MDhlMmQ1N2EzZDNjODA3MmMxYzQzMDViYTNhY2RjZGUxOTUgbGVnYWN5LXRydW5rCisyMjc4MSBjZjllMzQxODg3NjNjMDIxNDUyM2M3OTA4OWZiZTIzMzgzMjBlMDVkIGxlZ2FjeS10cnVuaworMjI3ODIgNDdmYTRhYzA0MmQ3ZjBlMzJlODEyOTZjYWU2MWQzZGRhODRlN2Y5YyBsZWdhY3ktdHJ1bmsKKzIyNzgzIGI0YTNmYzE0NzkyOTRiNDM5M2M0MWE1ZTE1YWI1ODE3Nzk0MjE1NzcgbGVnYWN5LXRydW5rCisyMjc4NCA3MmQ5YjdjMGQyMTFkYjc2OTViMzc3YjdiNzMyNjM2MTg4NjYxZThhIGxlZ2FjeS10cnVuaworMjI3ODUgZTE0MWIzOTJiNjFkZDJiNDNlNTY1N2Y3ZmQyYjgxOTE5ODQ5OTc2MiBsZWdhY3ktdHJ1bmsKKzIyNzg2IDNlMTBjMDg3NDAxY2ZjY2ViNWQwZTAwY2VmMTAwNzIwNTNkM2YxNDYgbGVnYWN5LXRydW5rCisyMjc4NyAyZDI1MTZlMzcyOTkzMTJjYTc0NjRjZmQ5NWMwZjlhMjdkZjBiMTNhIGxlZ2FjeS10cnVuaworMjI3ODggMWNkODc2NDIzNTljYTU5NTI5Zjg5MzVmMTk0YjM5YmRiODJhZDkyNCBsZWdhY3ktdHJ1bmsKKzIyNzg5IGQ3MTFlODJlY2UyMzMyZjEwMTk5NWVmN2MwODc5MTlhODI0NDQ2OGIgbGVnYWN5LXRydW5rCisyMjc5MCA4NTYwNWM5MzY1MmI1YTRlMDNhYjIwZWYwNGNkZTI1M2VkMGY4ZTYxIGxlZ2FjeS10cnVuaworMjI3OTEgNDc3YjZkZGQ0MjQyNWY2MmQwODM2ZTY2N2Q0NDZiOTExNzNlMDkxZiBsZWdhY3ktdHJ1bmsKKzIyNzkyIDdlNjI4ZjYwMjQ1ZTliMmQzYjBlZmRjNDc2MDIyZmYyNzBiOTQzZDggbGVnYWN5LXRydW5rCisyMjc5MyBkYTVlZWJiZmU0MWRhNWY3NThiZmQ0ZDNlZWZjZDkzODUwMjY1MTNmIGxlZ2FjeS10cnVuaworMjI3OTQgMTFhNzU4YzU2MDI3OTBmNjkzNGEzMDI3ZmEwZmE1NTM0MjE1NTBlOSBsZWdhY3ktdHJ1bmsKKzIyNzk1IDE5ZDI3MWYyOTdkYzc1OGNlMzdlNzUwNjZlZjA5MmQ1ZTE2Mjg3Y2QgbGVnYWN5LXRydW5rCisyMjc5NiAwMWE2OTAxY2QzMDVlMjllYWM3MmU1MmUyYTc3NjFhYTNlOTdiZGQ5IGxlZ2FjeS10cnVuaworMjI3OTcgNmMzMGQyMGQyN2YyY2NhOGFhYTVlOTI1YmE4ZTUyMTljOTY3MmE4YiBsZWdhY3ktdHJ1bmsKKzIyNzk4IDdiMzlkOTE0MjRhMmFmMGM5ZjEyZjY1MDcwZjgxZTM4OWViY2Y4NDQgbGVnYWN5LXRydW5rCisyMjc5OSBkZGM0YzJmNWVmYmM5NTk4YzVhODFkODdlZjAyYjYxMmViNjVhM2MxIGxlZ2FjeS10cnVuaworMjI4MDAgZWE3NmRlYTY0NDBmOTc4NTc2OWJjNDQzZTEzYTcyODcyZmQ1Nzk4NCBsZWdhY3ktdHJ1bmsKKzIyODAxIDM3ZTBiMGZjY2E1NDBmNjdiMzgxNjllNWFkNTRlYWE3ODllZTUzYmEgbGVnYWN5LXRydW5rCisyMjgwMiAyYzJjYzMxYmRmMTUzYWM2NzA1YzJjZTQ0NTljMmFjMzUxMDllZmVlIGxlZ2FjeS10cnVuaworMjI4MDMgMDIyNTFiMDQ4YmJiZjE5MmNiMDY2MDdlNDQwNGQ4N2U3NjgwODUwMSBsZWdhY3ktdHJ1bmsKKzIyODA0IDE4NDlmNDlhYTZmODY2NWZiOThlN2YxMDI4OGZkYzQ0MDIyYWMxY2IgbGVnYWN5LXRydW5rCisyMjgwNSAwNzM4OGE2YTU1MjZiOTVhNDQyM2ZhMDNkZDczMzQ5NDQ2N2NiOTQwIGxlZ2FjeS10cnVuaworMjI4MDYgODExNjhlZjRjYjY1OGJmNWNmZjQ3OWIxMzRlMGI2OWFlOWU0OTBkOSBsZWdhY3ktdHJ1bmsKKzIyODA3IDQ5YmI0MWE2OWRmYzM4ZWJjNmM0YTc4MDkwMzAwMDkzY2Q3MzJlM2IgbGVnYWN5LXRydW5rCisyMjgwOCBkOWVjYjIxNzAzNTRmNTYyZGZhNmJjYmRlOGU5MjM2NmViMWYyZmE5IGxlZ2FjeS10cnVuaworMjI4MDkgMzgxMTU4MGZkYzM3M2NjZDcyZDhlY2ZjOTRmNDRlZjUxN2U2OTI4NCBsZWdhY3ktdHJ1bmsKKzIyODEwIDNmYTI5Y2Y3MzE5ZDQ4NDUwNTY4ZGQ5ZjVjMjliZjMwMWI2OThiNjUgbGVnYWN5LXRydW5rCisyMjgxMSA4NTZlM2ZhMTRjYmE2OGZmODQzZDA2ZDk4MzljZWEwMjliZDY3ZTM4IGxlZ2FjeS10cnVuaworMjI4MTIgYjk4ZTQzNDYyNTdiZmJjMzdjMThmODMxMDliMGE5Yzc2NzUwNmQ5OCBsZWdhY3ktdHJ1bmsKKzIyODEzIGIwZjUyNzhhMmFiNDM3ZjJkMTE2NzlmZTUxODRiYzMyNTY3ZjFiNjEgbGVnYWN5LXRydW5rCisyMjgxNCBjZWE3ZmVhMTc0MmI0MDM4NDE2MzU0YjAyZjM0YjcxNjEyZjE5NjcyIGxlZ2FjeS10cnVuaworMjI4MTUgOWRhNjhjMDM3OWFiYjliYmViNWIxZmRiOTFhZTUyZDAxNzQxNTMzYiBsZWdhY3ktdHJ1bmsKKzIyODE2IGM0ODVkNzczNzZmYTQwNzUwNjA4ZjM1M2M1NzdmMzQ1ODJlYWU3MTMgbGVnYWN5LXRydW5rCisyMjgxNyA0NzZlYjdkY2VlZWMyNDk3ZDRiMTdmMmIwZTBiNzI2MjRjMzhiMTEwIGxlZ2FjeS10cnVuaworMjI4MTggNzI1NzYyY2EyNzc0OWFkNmVhOTdjMzc1OWE4NDkyYWQ5N2FmMWRmZCBsZWdhY3ktdHJ1bmsKKzIyODE5IDI2NTg4ZDcwMzUzMDhmMTBjMzk1NDBmNDMyOGM2YThkNTYxZTU2NmQgbGVnYWN5LXRydW5rCisyMjgyMCA3ZWRjMmZjZTFmODgxNTc0ODI4ZWQ4ZGVhYWZkNGJkNGZjZGM5YjJjIGxlZ2FjeS10cnVuaworMjI4MjEgYjY3MzA5NDA3Y2ZjODg1NGMxMzQwZjAwYzI0NThkMTZmN2NmZmZjZiBsZWdhY3ktdHJ1bmsKKzIyODIyIGZiZDQ5ZDE3MTdjNGMyODM4YWRjZWFhMzVhZmZjZmM5ZmFlNjFhYmYgbGVnYWN5LXRydW5rCisyMjgyMyBmNmY5MzQxOWJmYjY4MDIzY2MyNGI4MGZlZTBmMGZlMzQwNzczODhmIGxlZ2FjeS10cnVuaworMjI4MjQgNDNkZGM0NmM1YTk5Njc4Yzc5MDJlMjZlODNkZGE1MjY5NjM3MGNlZCBsZWdhY3ktdHJ1bmsKKzIyODI1IGRjMjc4MzljMGI4MGZhYjFlZjBhMzA3OGFmZjcyZTU0MzgwZDg4NDkgbGVnYWN5LXRydW5rCisyMjgyNiBmZDQ4YTU1YWMzNjRmZTMwN2ZhYzI2YTc4NmJhODQxM2I0MWJkZDk3IGxlZ2FjeS10cnVuaworMjI4MjcgMTNhOTNhNWRjYjFkZTY3ZTcyYjYyYjQyYWJjZmY0ZGQ4MDlhYmQ4MCBsZWdhY3ktdHJ1bmsKKzIyODI4IDQ0YTYyZTNiNzA2ZjkyN2YyYWIzMDE2YjQ5YjI0ZWVkMmRjN2ZiNjggbGVnYWN5LXRydW5rCisyMjgyOSBjMGNmMWEyNGZjMTNkZDlkOTMxNDQ3ZTMyMmJmMjZmZDVjMmI4YjM2IGxlZ2FjeS10cnVuaworMjI4MzAgYzQzZDdhOGYwMGE0NTk1YWEwMDJmZTYyY2U0ZWI2ZDM0YmFlNjkwNCBsZWdhY3ktdHJ1bmsKKzIyODMxIGM1OWYwNmYzOGE0NjhmOTgwM2UwZTdhMWRkZTM2NDliNzNkMTY4MjQgbGVnYWN5LXRydW5rCisyMjgzMiA1MDA5ZmE2ZGRmZWIzMjI4Njc1YjU2MWI1NTg3ZjE3OWExYjUwMmU4IGxlZ2FjeS10cnVuaworMjI4MzMgMmZlMDg5MThmYWM2NjdjOWYwZTBhMTFmNmQ3YzcyNmYxNGQ4ZDcxZiBsZWdhY3ktdHJ1bmsKKzIyODM0IDg0NDU1MzQ3M2ZhNDY2OGYwMzRhOWQ4MTJkY2E0ZTI5Mjc1Y2VjMDIgbGVnYWN5LXRydW5rCisyMjgzNSBiZjJjNzc4NDBmMWNjNmZmYjA4NzJhMTk1ODhhNjcxNjJmMTc0YTkxIGxlZ2FjeS10cnVuaworMjI4MzYgNDdlMGMwZmRkNGM4YTAwNzk3YmM3YTdmZTVmZTI1YzlhMjIyYmQwNiBsZWdhY3ktdHJ1bmsKKzIyODM3IDg1NzY1ZTYxZGViMGMzMWQ4M2Q0MGRkNTkwMjJjMGEyMjdhNzA2N2UgbGVnYWN5LXRydW5rCisyMjgzOCBhODBiNGIwMDZlYjdjZjMzZjgzODJiMjFiM2IzNjkxNTFiN2IxMDYwIGxlZ2FjeS10cnVuaworMjI4MzkgYzQ4NjU0OTU5ZGM0NmZkMDE0OWU5MTNiZGJlMGVjMGIyMWJkZDUxOCBsZWdhY3ktdHJ1bmsKKzIyODQwIGRiMzZlMzk2ZjA0MzE3MjJhYTZiMDAzMmFlOWUyNzA2NjM2ZTlkNzkgbGVnYWN5LXRydW5rCisyMjg0MSAxYmUxOGVmODY5YTQ3ODg5MzczZGEzMjE5OWI0NGNmYzc5NzE3NThhIGxlZ2FjeS10cnVuaworMjI4NDIgYmJkZjg2ZjM1OGU5NTU4ODhiNDA0ZDdkNTFkNTQwYzc5MTllMGU0YiBsZWdhY3ktdHJ1bmsKKzIyODQzIDA2NjMxNTQ0Nzk0MTZiMDk3YjRmZDUyYWRkMjZhZDJkYjgzMDZlMjkgbGVnYWN5LXRydW5rCisyMjg0NCAwMGRlNzE5YWU4MzE5Nzc5NGI1NWZiOWM1YWYwMjQ4ZDE1M2JjMmVjIGxlZ2FjeS10cnVuaworMjI4NDUgMWNlY2U3NDNhNzA4NDNhYzMzMWZiYmI2ZGFkYzVmZWRkN2UyYzgzZiBsZWdhY3ktdHJ1bmsKKzIyODQ2IDA0ZmQzODY5YzZiYmViMjA1ZDExOTFkNzExZGQ5NmM3NWJmMmUyYzEgbGVnYWN5LXRydW5rCisyMjg0NyA5MDRiMmY5ODExYTI5MTJlZGQ1YWY1NTZhMTkxMzU1NDRjZDBkZThmIGxlZ2FjeS10cnVuaworMjI4NDggNWQ5NzM0NDhlNjkxZGYzMzg1NGViNDZjZjIxZTdhZTIxZWE1ZTFjZiBsZWdhY3ktdHJ1bmsKKzIyODQ5IDRhYzlhNDRjN2U0NzhjOWY5YjhmMWZhYTk2MmE5MDM3MGYzYTkxNzEgbGVnYWN5LXRydW5rCisyMjg1MCAxMGJmNGJlZDUwOTZmODRiMTczMTRkZTA1MGE3YWU5NjZiOTVjOTY2IGxlZ2FjeS10cnVuaworMjI4NTEgNmQ1YWMzYzQzNDE2MzRmNjE0NmQyYWI5ZDIyYjdmYzcxMzY1NzIzZiBsZWdhY3ktdHJ1bmsKKzIyODUyIDQzZmU5Mzc3ZTJjZjYwMzY1NmQ1MTRiMzljMmIyODljNmNlMWY4MTkgbGVnYWN5LXRydW5rCisyMjg1MyA2YmViYThiNmY2MGFkZDk2YjBhNmVkODk1M2QwYTAzYTg0NjFlOWVhIGxlZ2FjeS10cnVuaworMjI4NTQgYjRlOTE4NjEyZGM5NzUwYmVlMzhkMWExNzk3NmE3Njc0NDFlNzIyYiBsZWdhY3ktdHJ1bmsKKzIyODU1IGM3NzNkYWE0NDg0MDZlOGM5NGRkOWRiNGFmNjZkZmYzMjlmMzI4MWEgbGVnYWN5LXRydW5rCisyMjg1NiA4ZjAzNTgwMGEzNzNkNzZjOTk2NmZkNzJmZjA3NmMzYzY4YmZjMmNkIGxlZ2FjeS10cnVuaworMjI4NTcgYzM5NmFmZWYxYWE5MjMyOWE0MWU3MDgzMWQ0ZTlkMjMzNWUyNDUwZSBsZWdhY3ktdHJ1bmsKKzIyODU4IGY3Y2Y4OTYxYzY2NzhlNDBlM2Q1NGUzMGQ0ZjZjNjkyNzE2Yjc2NTQgbGVnYWN5LXRydW5rCisyMjg1OSBmNGE4OTllN2VjOTNhZjA1NjhiNmIyNjI3YTdlNmE3NzZjZTE1ODI4IGxlZ2FjeS10cnVuaworMjI4NjAgMjUzYWFhMWVkY2JkMTgwNTNiMmFiMTRjYjJjMGI4ZDY4ZmNhOWRkZSBsZWdhY3ktdHJ1bmsKKzIyODYxIDMzN2I1MzY3OWM3MzQ4OWQ5NTI4ZTExNGExNmQ2ODhlNjI0ODMyZWUgbGVnYWN5LXRydW5rCisyMjg2MiBiNzMwMTA3ZGJkMTM3NTJhMGZjOTc3MzAxNTBmZDAwNTA4YzI5ODEyIGxlZ2FjeS10cnVuaworMjI4NjMgYTg4NWQ4NzYxYmQyOTA1MDBmNGFhZmQ0N2Q3YWQ5ZDg4YjU0Mzg5YyBsZWdhY3ktdHJ1bmsKKzIyODY0IDU2NjNiODgzZWE1ZDk5OWI2MTg0NzZlOGI4MGI3YTAzY2E4M2UxOTcgbGVnYWN5LXRydW5rCisyMjg2NSBiNzA2YzAyN2MzYzBjYTE0MjVkNDkxNjIxMDkzY2QzODNkMGIwZDI5IGxlZ2FjeS10cnVuaworMjI4NjYgMGJlYzY5OTc4M2QwMDliZGMyYTM0ZjgyYjY2MWFmNTU1OWZkODc1YSBsZWdhY3ktdHJ1bmsKKzIyODY3IDFhYzExMGU5MDVjMmYyNWU0YTQ5NWE5Y2JhMDBiMGI0MDNiYjYyZDcgbGVnYWN5LXRydW5rCisyMjg2OCAzOGE2ZGRmZjg2NmYxNzg2ZTU2NDRlMjA1NTM4YzA0YmMwZjAzNmFlIGxlZ2FjeS10cnVuaworMjI4NjkgMGY1MTQ2NWY5ZjMzNDBjNjlkMTI2NDMzNTEzNTU0MjYwN2UwZjkyZSBsZWdhY3ktdHJ1bmsKKzIyODcwIGQxMDY1M2U3MWNmZTA0MjIwNWMzNjgwYmIyODdiY2VkYWQwYmQ2MzIgbGVnYWN5LXRydW5rCisyMjg3MSBmMDliZTY0MWM3YTNhMWIxOTJkZGQyYWNlN2NmMDFiYzZmZjk1ODg2IGxlZ2FjeS10cnVuaworMjI4NzIgNTQ1MDgwZTMwNjI3Y2RjYjBlY2VjMDQwMTM4MDIyODJmMjkxYjc4YiBsZWdhY3ktdHJ1bmsKKzIyODczIGVmMmNmOTk0M2FjZGE3ZWVkMmM0MmM3ZDBiYzc5MjcwNTFmMjQ4NzcgbGVnYWN5LXRydW5rCisyMjg3NCA0M2NkMGI0ZTcyNjFmZDgxMGY4ZjNiOTkxZDM2ZTI0YTA4M2YyN2M2IGxlZ2FjeS10cnVuaworMjI4NzUgYWUwNTZmMTE0OTc0OTY1NTNlODg5N2QzYmIyMjk4ZmQ0MDIyMzAwMCBsZWdhY3ktdHJ1bmsKKzIyODc2IGFkMGNjZTRhNWRlMWY3OGEyMDkzZmFiY2NiZjNlMTkzNmZhZmEzNmQgbGVnYWN5LXRydW5rCisyMjg3NyAyMGZiNzU5MWY4ODU1OWMwYTY5NjU1MjAyMDQ5MjYyNDllZGU1YWMxIGxlZ2FjeS10cnVuaworMjI4NzggYzBhNDQ4MjliY2Q1ZmYyNjExNWYxYjk1YTc3N2NiNDAxZDdlMmYzMCBsZWdhY3ktdHJ1bmsKKzIyODc5IGNmMTkxOWVhOTRjMjhhMmYxZDNkOTg0MGM4NmI2NDdjODczYzEyNjggbGVnYWN5LXRydW5rCisyMjg4MCBmNWNkZTdlZWI2ZDc3ZGE2OWZiZjU4NzNjNTYwMDNjY2I4MGI1MDM5IGxlZ2FjeS10cnVuaworMjI4ODEgNzFkNDVmMzE0ZDkwYWUzNTJlZjE2ZTM4MjliMzNhOGQzMDk1NGEyMSBsZWdhY3ktdHJ1bmsKKzIyODgyIDA4YWJlZTJhMzk4ZWZhNTRlZjQ2YTk4ZDQ2MTk1NTk2NTVkMGMxNDQgbGVnYWN5LXRydW5rCisyMjg4MyA0MGZlYWVkYjc4NjdlMzRjNzc4ZjZmN2JjYmYwZDhiZjIyYmRjNGJkIGxlZ2FjeS10cnVuaworMjI4ODQgNjBmMjkwYTdlYWU4YzE0ODliM2Y3ZDgyNmE5NjgxMmUyY2VhNWM5NiBsZWdhY3ktdHJ1bmsKKzIyODg1IGY0YWYyN2NiMjYzMjQwYTBhMjFlMmUyNzQ3NWVkODQ3ZTFjYWNjMjMgbGVnYWN5LXRydW5rCisyMjg4NiBjOTY0N2ZhNzhmMDUyZjNlZjBiNTNiYWVlZjM1MDFmMDU2MTAxMjM2IGxlZ2FjeS10cnVuaworMjI4ODcgZTAzY2UyZDY1NTg1NTdhMjk0MmRhZTI2MjgwODY5Y2UyZGUxZGM5YyBsZWdhY3ktdHJ1bmsKKzIyODg4IGIxYjA0NzljOTEwNmQ1ZWQ3M2FmZmZjNTFiZTZhMTU5NGMyY2M5YjYgbGVnYWN5LXRydW5rCisyMjg4OSA5MmRmNjg0NTEyMGQ2NDYxODM3OWVmYzlkNjc3NTRkZmE4ZDU0NGExIGxlZ2FjeS10cnVuaworMjI4OTAgZDU1Yjc1YWMyZmI0ODgzMTY1ZjQ4NTAwMTk3NWZjZjU4ZWRhNGRkZCBsZWdhY3ktdHJ1bmsKKzIyODkxIDc5NzQwOWQ5NzAyMjQ1YTM5YjM3YzQxNWE4OGFkZWZjNjc1NjBiMTEgbGVnYWN5LXRydW5rCisyMjg5MiAwMWRhZThhMDNmODYzNzYyMDZjODRmZDZiZWFkYTZmYWYxMTM3OGQyIGxlZ2FjeS10cnVuaworMjI4OTMgYTNjMDQ1ZmE0OWY1MGNhOTU3ZTM4NTlhYjA3NzVkOWIwNzhkOWNjMiBsZWdhY3ktdHJ1bmsKKzIyODk0IGE0ZmVlZmNlMGNlODQ5NjlhYzQ5NTc0ZjFlNzIxMDcyMzNmZjYxZWEgbGVnYWN5LXRydW5rCisyMjg5NSBkNGIzYjhlMjM1NDRiOGY0ZGVmODJiNzZhOWI4OTBjNGY0NmEwOGRjIGxlZ2FjeS10cnVuaworMjI4OTYgYjM5ZTU2ZGZlMzVkMmI5OTQ0ZTQyMWZmMWRmNjhlOGIxMmNlYjYyMSBsZWdhY3ktdHJ1bmsKKzIyODk3IGRlMGYwMzUyMDVlZjlhMzQ3YzNiNDY3NmM4ODU3OGRlMmNhYzU5MzggbGVnYWN5LXRydW5rCisyMjg5OCA3OWUyMzI3ZTUxZDYxMzZkOGQyMmY2ZWYzNWRlZmEyOGM5NWNmZTBhIGxlZ2FjeS10cnVuaworMjI4OTkgNmI4MWY5ZTlkODYwMGEyODRmZWEzYzJlODM4ZTFlZWQzZjAzYmFkOCBsZWdhY3ktdHJ1bmsKKzIyOTAwIDkyZDBmYWM4YTE2OTM0ZjU5ZTIyMjU4N2M1MWIzMzI2ZTY4YzIxNGUgbGVnYWN5LXRydW5rCisyMjkwMSA1NzVmNTBjZWNlYmExODMxYTk4OTIwZjQyMzdmYzgwMWQyNDU0OWRkIGxlZ2FjeS10cnVuaworMjI5MDIgOTM3OTY1NTE2YjU0NzJmMjlmNGY0NTY4Yjk4MmQ5YmQwZTQ1NTU4OCBsZWdhY3ktdHJ1bmsKKzIyOTAzIDJmYTYxNWRmYzQ2NGM4MGUyNjM0MGE2NGJhODhiNjBkNmRjMWRkMzggbGVnYWN5LXRydW5rCisyMjkwNCA4MGJlYmM1Mzg5ZmQwZDE4YmY1NzE1YzExYmM0YjY0NzNhMDI5ODZkIGxlZ2FjeS10cnVuaworMjI5MDUgYjRlZGNlOWQ2ZTk5MGVjNGU5MTU2M2ZkYTZmNjE4YTlkNTc2Mzk2ZiBsZWdhY3ktdHJ1bmsKKzIyOTA2IDg0YmUwY2FiNjNhODg0YjQ2YjBhMjc2ZmU3Y2FkZGYyODU1ZmRmZWUgbGVnYWN5LXRydW5rCisyMjkwNyA3ODBlNzQxNTg1ZTEwZTI2YzU2ZDExZjhiZmMxYmIzNjdhZjg2ODMxIGxlZ2FjeS10cnVuaworMjI5MDggOGY4ZTk3MTEzMmI4NjczODQ2NTQyNzE0MzBhNDcyNjRlZTI5ZDE5MSBsZWdhY3ktdHJ1bmsKKzIyOTA5IGVjN2EyYTZjZGJlOWM0ODZhN2E2ODkxNGI4MzBmNjViMGYwMDM1N2EgbGVnYWN5LXRydW5rCisyMjkxMCAwOGMzYzllZGQ5OWJiMGJhMWU0ODA4MWFiYzQwZmU4YzA3NDdmMmFmIGxlZ2FjeS10cnVuaworMjI5MTEgY2Y2NWViZjg3NTYwOTEzMWU4YzkzZTYzMmM2NWQxMzhhODVkNTVkOSBsZWdhY3ktdHJ1bmsKKzIyOTEyIDhkMzU4YzI0ZGNmYmIxMDQzYTk3MGE4ZmExMWI3ZGRjMTZlZmI5ODMgbGVnYWN5LXRydW5rCisyMjkxMyBjYzYwNGI3MTAzNmM0ZmY4YzJkMjEzYjQ4ZWJjYzg2Mjc1OTA5Yzc4IGxlZ2FjeS10cnVuaworMjI5MTQgODdlOGZjMGE5ODYyYjU1MzljN2YyYTZmMjdiMTYxM2M0ZjQ5Njc3OSBsZWdhY3ktdHJ1bmsKKzIyOTE1IDc4Y2ZiOTkzZjI3NDE5MDZkNzQxODdmMGYzNjUyODRkOTE3YzY5MmQgbGVnYWN5LXRydW5rCisyMjkxNiA3ZGYzMDBkMjg0YzZhYTAyM2YzYjNmZjI1MDgzMDg1Y2UwNjg4YWY2IGxlZ2FjeS10cnVuaworMjI5MTcgMzU4NDU1MGE2MjJhZDU5YTY5MmVhZTgyOTJhZTE5Y2JiYzdmZDQwYSBsZWdhY3ktdHJ1bmsKKzIyOTE4IGIzMjcxMjk3Yjk4NGVhNDliNjkzNjE0ZGVhY2I4NGI1Nzc4Y2JiYzcgbGVnYWN5LXRydW5rCisyMjkxOSA3MTUyNDQxMDhmYWEwZjc3MThiZTliNTg2MGZjYjJkZWYyYjVjNjllIGxlZ2FjeS10cnVuaworMjI5MjAgNjg1ZGNhZTVjMTIzNzAyOTgzNmI5ZWIzOWUxMzY3NDU3YTIwOTI4OSBsZWdhY3ktdHJ1bmsKKzIyOTIxIGM3NjhkMzE5MWRmMWMxZWJlYTViOWQxODc2YWZmMTY4ZDFiZTZmZjYgbGVnYWN5LXRydW5rCisyMjkyMiA5MTUzMzY3NWQ2Y2JmMGFkNWYyNzUxNzUxZDE1NzAwNTU0NWU1NDY3IGxlZ2FjeS10cnVuaworMjI5MjMgODJkYjlhOTAwNmFjNWVlM2NlYmYzNzNhYWFmYTVkNjRhZTc4ZGQyYyBsZWdhY3ktdHJ1bmsKKzIyOTI0IDY5NTg3ODRiMWNlZjAxNWNkZGZlMjMyYjg4NTZhODhmYjk5NWM0NGEgbGVnYWN5LXRydW5rCisyMjkyNSAzZjg0YjIwMDBmNjJiNDE0OGZmN2E0ZmY2MjI3NDA2ODAxM2ExNGM3IGxlZ2FjeS10cnVuaworMjI5MjYgN2RlNGU2YjhkMTk5YzBlNGE0NTJkY2VkZDE4M2RkYTkwZDczMzQwZCBsZWdhY3ktdHJ1bmsKKzIyOTI3IDhkZmIxM2E0ZTE3NWMwZjM1MTU2MTM2ZGExZDNjNTg0ZTBkZTU3NzAgbGVnYWN5LXRydW5rCisyMjkyOCA4Y2JjNzRmNTU4NmI1MDc2N2QzMGQ2MmVmM2VkNmU3MjVlYjE5ODVmIGxlZ2FjeS10cnVuaworMjI5MjkgNzE0YWVlY2MyMzE2MmY3NDdiYWQxYWZmN2UyZWVkY2M5ZjYzZGVmZCBsZWdhY3ktdHJ1bmsKKzIyOTMwIDZlYmMyNjMzM2U2ZDdjYzFlYWVlMzhhZTU2ZGE0YTk2NTZmNmY0MjUgbGVnYWN5LXRydW5rCisyMjkzMSA3NDllNDljOTQ3YzA3MWJlOTAzMGE4ZDg1MGJmZDAzOGNlMzA1OWZkIGxlZ2FjeS10cnVuaworMjI5MzIgMzczMWFkMWQ5MDMzM2VkMTFiMzgzODczNThiMzc3ZTdmMWNlMDJlZCBsZWdhY3ktdHJ1bmsKKzIyOTMzIDMxYTY2YzBjN2QzMDFlNmEzYWUyNTdhZjEwNzg3NThkNWQ0ODc5ZmIgbGVnYWN5LXRydW5rCisyMjkzNCBjZmM1ZTUxNjBjZjVkZjgyNjUwMjFiNzM5MjQyNjVkZmJiNzQ5MTRhIGxlZ2FjeS10cnVuaworMjI5MzUgNmI4Mjg1M2RmMmVkYjc4Njc3N2ZiMmRjZjM1Zjk3YjZmZDQwNTQ5NCBsZWdhY3ktdHJ1bmsKKzIyOTM2IDkzM2U4MTI5NzRjM2VhOTBkOTNlMmUwMjA0NTc2NjcxNjRjYzBjMTAgbGVnYWN5LXRydW5rCisyMjkzNyAwNDIxOGU4NWIxNTZmZDY1OGY0NzAwYzAxMDA0MzAwZjRiNzBlZGMwIGxlZ2FjeS10cnVuaworMjI5MzggNjE3ZjVlNzJiMGVjODMzMmQ5MmZkOTVhMTY0YzI0MzFhMjI4YmI4NiBsZWdhY3ktdHJ1bmsKKzIyOTM5IDM3MTZiMTE2ZmIzMTMyMjU1YjQ1NzRjYjE1OTA5ZmVhZTMxZDRkMWUgbGVnYWN5LXRydW5rCisyMjk0MCA5ODMwZDAwYjg4N2RmYTQyNmQwZDk5MjA2YmZkYTQ4OGU3ZGI0Mjc5IGxlZ2FjeS10cnVuaworMjI5NDEgODQzZGE5Nzk1MzgxMzA3ZjAxNTI0N2IxZmMxOWZjYmU5ZDczNDY0OSBsZWdhY3ktdHJ1bmsKKzIyOTQyIGJjNmJkMzVmNTk5OGRmNDlmNWRjNGYyMjEwMTk0MTZjNmJlNzczZmIgbGVnYWN5LXRydW5rCisyMjk0MyAzNzJkOGMxZDJiNjRlMjg4ZDYxMDIwNzBjZTYxZThmNTU2MWQxZGI0IGxlZ2FjeS10cnVuaworMjI5NDQgMmE0ZTNjOTI4NWI1NGZiZTg2YmM4N2MxMmJhMWU2NzQyMTkwOWQ2ZCBsZWdhY3ktdHJ1bmsKKzIyOTQ1IGZiYWY0ZTU1MjYzZjkxMDM5M2Y5Zjg3YTNmMGRjZTgzMTQ5MmRiZjMgbGVnYWN5LXRydW5rCisyMjk0NiA0NTY1NzM3NmI5YjhjYzkzNDYzNWJmZjY4ZjIzY2E2M2EyZWY3NzM2IGxlZ2FjeS10cnVuaworMjI5NDcgZDZlMWIxMDkxNjA5NzFiMzcyNDhhYzFkYzYyZTNjMDczNDYzZTJjOCBsZWdhY3ktdHJ1bmsKKzIyOTQ4IGUyMDJhNzVkODgxZTE0Nzk5NWJiNDM2NTU2ZjZlNzg2OWQ2ZWRhNjkgbGVnYWN5LXRydW5rCisyMjk0OSAxOTAxZjg3NWI3ZDNkMWQ4ZDRmMzAyZDEyNzk4YjYyYjFkYjgzZmJhIGxlZ2FjeS10cnVuaworMjI5NTAgYjdmNmZiYzA4N2E3N2VhYTcwNzY3MWIyNmJhMGVlMTMzYmJlODQzYSBsZWdhY3ktdHJ1bmsKKzIyOTUxIDUwMDU1NDViNjQ4N2YwNmE3ZWQ2OWFmZmIzZDMyMDQ1MWFmMjQ0NzkgbGVnYWN5LXRydW5rCisyMjk1MiAxMWIzNzNiMDBmMmFmZTFhZWYwNTdlOGNmMjMwZjgwOTQ3NGQ5ZjdhIGxlZ2FjeS10cnVuaworMjI5NTMgNmVhZmM0YTYzNTlhODBhOGVlMTU0MWUwNzg2NWFlNDY4YjgxMTFlMSBsZWdhY3ktdHJ1bmsKKzIyOTU0IDBiMGM4NDA3OGY5MTYwZGEyNjE1ZWQ4MGY3MGMzYjQ3OWM5MGM0NGEgbGVnYWN5LXRydW5rCisyMjk1NSAxYzhhOTUwZDY5NzAwZTc1YjE0NDNlODE4YjQ3OGVmMDExMGQyMjA5IGxlZ2FjeS10cnVuaworMjI5NTYgYmQyNTJiMTgzMmEyZGJhMTg5MDgwMmVhMGMzNjE2YzU2NWQwMDkwMiBsZWdhY3ktdHJ1bmsKKzIyOTU3IGI0NTIxNDM2ZThmOGY5OWQyODE3MjdhMzc3Njc4M2E1N2RiYTUzZmIgbGVnYWN5LXRydW5rCisyMjk1OCA5NDMzZGQzYzE5N2VmNGIxZjZhM2Q1YTU5OTJiNjQxYjUwOTYwNWY1IGxlZ2FjeS10cnVuaworMjI5NTkgNDUwZTVhMGU5MjZiOTQwZGI4OTM5YTE0NzJiODc1Nzg0YzcyNDA2YiBsZWdhY3ktdHJ1bmsKKzIyOTYwIDBkOTYxNDVjNDRiODlmNmEwZmQzYjgxZDcyODYzNWU2MTkyYjYyMGMgbGVnYWN5LXRydW5rCisyMjk2MSBmYjJkODNhYWZmNjg2NDVmZTdmNmYyYTEwZjZjMTg1NGJiMTk2NjUwIGxlZ2FjeS10cnVuaworMjI5NjIgMDFkZTBhNzAzMDY5OGM3NGMzMjhlNTE0ZjUzYmYyYmEyZTY1NjY2NiBsZWdhY3ktdHJ1bmsKKzIyOTYzIGQxOTY0OGNhODc0OWNjYzFhNDI0OWIxNDU3NTI1OWRiMjViOGI1ZWMgbGVnYWN5LXRydW5rCisyMjk2NCBjZGZkZDUzNTk0MTFhMDk3NDI5MGI0MDQyOTc3YjcyZWVmNDdhMDhlIGxlZ2FjeS10cnVuaworMjI5NjUgYTY4NGI0YzEwMTI4NDNlOTMxYmUzMDIyN2E2NGFiNDU3OTcxMzU1OSBsZWdhY3ktdHJ1bmsKKzIyOTY2IDc3NjZlYTcyNDMyMDk0Zjc5ZjNhYmYzNDkzOGQ5NjI4ZjQ0MjRmNTUgbGVnYWN5LXRydW5rCisyMjk2NyAyMWQyYjllZWRjMmRlMTc5OTYwNDNjNDU5ZWY1YTIwNDZlYTMyNjYwIGxlZ2FjeS10cnVuaworMjI5NjggMmE5YmJkYmVmYmIxYzk0ZjFkMmZlMjA5NjMxNmU3OTcxNjYxMmM2NiBsZWdhY3ktdHJ1bmsKKzIyOTY5IGJhOWFhYmNkODllM2RlY2VhMmVlOTJlMWVjZDU3Nzc5OTZkMmZiNDEgbGVnYWN5LXRydW5rCisyMjk3MCAyMjZkNWVlZmE0NGFmZDZiNWNiYzU2Yjg2Njg4N2E2MDBkOTk2M2FjIGxlZ2FjeS10cnVuaworMjI5NzEgNTQ4N2Q5ZDUzYTBlMWU1NTIxMjFiYzkwMGRiNzMzMzM3NTA5NjNmZiBsZWdhY3ktdHJ1bmsKKzIyOTcyIGYzMDM2ZDRlM2MyMmFmODEyZjA4OWFhZTE0MTM1ZmUxZjc5MGNmMjkgbGVnYWN5LXRydW5rCisyMjk3MyA0ZDJjYjZlYWE0MTEzOGM5YTAwNDJiMjUzZWI4ZDFkNWViNWMwNWNkIGxlZ2FjeS10cnVuaworMjI5NzQgZGViMDhhZjg5YTM1ZDY5ODg0NjEyZDMyZWYxMTQyODlkMDY2MzA5YiBsZWdhY3ktdHJ1bmsKKzIyOTc1IDJlNmRhMmRkMmFiODIwNzBiNDExMWY1OWFiNDRmYWY1MzU0NzdhNDggbGVnYWN5LXRydW5rCisyMjk3NiA4NWViMWM5MTFhZTVjMGM3NjZjMGY3ODhlYmY1Y2UzOGY4MDJjZDE5IGxlZ2FjeS10cnVuaworMjI5NzcgYjdkYzUxNTk0NDhmNDhhNzczMjJiOTJkZWZkYmQ5YTM0MjgzYjU2MiBsZWdhY3ktdHJ1bmsKKzIyOTc4IDJjMWE5ODMwOThhMDY0YjQ4ZDkyNWEyOTM4ZjRmY2ZiMmM0ZjllNTYgbGVnYWN5LXRydW5rCisyMjk3OSBkOWRhYTRhNjdiZTI2MjM4OWExMGM0ZjYyMjExMGQ0YWExNDM0NjMyIGxlZ2FjeS10cnVuaworMjI5ODAgZjU2YzkxODIwZmFlMmQyY2E4M2JkM2ZhODIxZDU2YjBhODYyN2NmYSBsZWdhY3ktdHJ1bmsKKzIyOTgxIDBlNDY0NmJmODA0MTEwZTMzN2VlMzg0OTRhN2UxZTQ5YTk4MTJhNDcgbGVnYWN5LXRydW5rCisyMjk4MiA1NmM1NDlhMjUzYTZlOTRjNmZjOWE2YTExYTQ3OTNhOGU5YjI5MzI2IGxlZ2FjeS10cnVuaworMjI5ODMgNWRkMjhhYTJiZTZiZmQwMDQwNDMxMmMwYzY2NDIxNTkyMDA5ZDUxZSBsZWdhY3ktdHJ1bmsKKzIyOTg0IDhkMmM3NDM2YjlkMjdmN2YzMjVjZTY0OWI0MzI3MDJjZDM4NGVhMDkgbGVnYWN5LXRydW5rCisyMjk4NSA4ZTZlMjQ4ZGZkZDg2NWJiOGI2YzMyMDI4YjViNDI2MTcyNjg5YTEzIGxlZ2FjeS10cnVuaworMjI5ODYgYTVlZWIxZTcwZjQxZjJmZTg2ZGQ4NTI3NjEyODI4NjdmZDk5YzNiZSBsZWdhY3ktdHJ1bmsKKzIyOTg3IDJhNDY1YjBlYjU0ZTQyMGFhM2RmMjQ3OTZkYmYyZTNmMGVlYTIwMDQgbGVnYWN5LXRydW5rCisyMjk4OCA4NTQxODc4Y2YyZTEzZDI1NjA0ZmE5NTAzOGI0YmY4ZjRjM2I4NzBhIGxlZ2FjeS10cnVuaworMjI5ODkgZjE0MzBlMzM4MmJiZTRiYWY4MjQyYjhiNTg1OTk4MTY5M2MxNzU5YyBsZWdhY3ktdHJ1bmsKKzIyOTkwIGRjMDU5YmZiNTNiMjJlY2Q2NTEyMjg3ZTlmMGJiZDIyNTU3OGUyMmUgbGVnYWN5LXRydW5rCisyMjk5MSA5ODg1NmE0YWVkMTAxNzI2YWU2ZDI0YjVhZDA2N2QwMWQ4NzEyY2MxIGxlZ2FjeS10cnVuaworMjI5OTIgN2ZhNDA1OTdkYTdlN2Y5MmUzNDgwZmM2N2JhMjBjNTc1NTQzYjJkMCBsZWdhY3ktdHJ1bmsKKzIyOTkzIGM5M2Q3ZDA4NTdhMjc2ZGJjYjFhMTI0MzFkMTE1MmNlNDM0YjVjMTggbGVnYWN5LXRydW5rCisyMjk5NCBmYTA2MjFlNGFkOGFjN2Y3ZjhkNTc0YzRmYWUzNGM1MzFhZTM2OWM2IGxlZ2FjeS10cnVuaworMjI5OTUgMzViNmExZDBiMWUwNTRiNGQ2NGUyMDU4OWFmOGQyNGZkOGNhMTU2YyBsZWdhY3ktdHJ1bmsKKzIyOTk2IDNkNzZkZmMzNGM1N2U2Mzc1NTI4ZDgxNzZlMDFiZjhkNTQyMWJjODIgbGVnYWN5LXRydW5rCisyMjk5NyBkYmI5ZDgyYzdjZTM3ZmY0Mjg1NzMwNDlhNGYyOGFjYmI3OTM0ODAzIGxlZ2FjeS10cnVuaworMjI5OTggYzA1ODBkOGMxOTNlM2UzM2ZjYjc4YzU3OTRiM2FhNjQ4ZDI0NTU4ZiBsZWdhY3ktdHJ1bmsKKzIyOTk5IGUxZjFlOWViZjA1MDEzYTcwNmU2ZjA3OTEzYzYzMjE1NGNjOWZkYjEgbGVnYWN5LXRydW5rCisyMzAwMCA1YTdhYzhjMDYzY2NjZmMwYzZlYzI3YTMwNGNkZDlmNWUzNGMwZmM0IGxlZ2FjeS10cnVuaworMjMwMDEgYTFkMzk3MDg4NWJkYmViYmU3MDZhZGI2NDlmMWU4YTJiNzA3MDA1NiBsZWdhY3ktdHJ1bmsKKzIzMDAyIGNhN2Y3NTc2ZDgyM2U4YzcwYjg2ZDAyYTVmODg4MmRlZjA1MTcyNWUgbGVnYWN5LXRydW5rCisyMzAwMyA2NGJjZWYxNzAyYWQ5N2FlMDE3ZmVmNmMwNzlmYjcxOGExYjZjZTlhIGxlZ2FjeS10cnVuaworMjMwMDQgOGU4N2NkZGVkOTZmYmZlN2Y1YTZlNWMyYzRlMzM0OWQ1ZTc2MTZiMyBsZWdhY3ktdHJ1bmsKKzIzMDA1IDk2ZGE5ODVjZGU5ODQyNmFhYzRkM2ExYjVkNGRhNDkzYTkwNmFjMjAgbGVnYWN5LXRydW5rCisyMzAwNiA0NDE3NWJiMGI3YmZjODA3ZWVjNmRkYTkyOTYwZGJhOTgwZDRhMTRkIGxlZ2FjeS10cnVuaworMjMwMDcgZDA5MjY4ZDBlYTUyOWI2NDkxM2NlMDRiOWJiYmZiYzUzYjBhNzJiOSBsZWdhY3ktdHJ1bmsKKzIzMDA4IDk0ZDBmMmVlYTA0N2UyZThiMTIzZTMxOTc1MWRmNGYxMDcwZjU2ZDUgbGVnYWN5LXRydW5rCisyMzAwOSA1NzhlZjM2ZjhmZGUwYTQyYjZjYmRkNGE0YmJlOGU5OGQ4NGMzMjg3IGxlZ2FjeS10cnVuaworMjMwMTAgNWZjZDBkNDFhNDQ2YmQ2NTI1MDcwOTRlMDBmNGE4YWU0MTQ3ZDdiYiBsZWdhY3ktdHJ1bmsKKzIzMDExIDJiY2NlOGJhYjhiYmU4ZGJkMzc4MjNjODI2NTc3YTQwZWEzMzBlYzkgbGVnYWN5LXRydW5rCisyMzAxMiBkNTQzNzhkMzMzNGZkNDI4ZTBhYWVjOTE5NDIyODBjYzRmNTBkMTA5IGxlZ2FjeS10cnVuaworMjMwMTMgZDRmNTNiMWZiNDI0MGRmYzJiMzg3Y2RlZTBkMjZjY2ZkZTk1YjU3OSBsZWdhY3ktdHJ1bmsKKzIzMDE0IGE1ZWFlZjQ3YTliMzM2MGZmNDIyYzdkM2E2YTQyODMwMmM5MDQzZDkgbGVnYWN5LXRydW5rCisyMzAxNSA0MmQwYmRlNzM1MzNlMTI0NWM2MzUzMTQyNmM2ZmNiMjVmMWVmNDQwIGxlZ2FjeS10cnVuaworMjMwMTYgNDMyNTkxMzI4NDEwMjQ1YmQ4YjUwNjYxN2YxNDFiMDE4YmE2Y2RkZSBsZWdhY3ktdHJ1bmsKKzIzMDE3IDMzNWJmM2VhYjlmMWFkZDlkOWE1ZjAzYTg5NjczNzQ4OTAxNmY1ZmIgbGVnYWN5LXRydW5rCisyMzAxOCA2YzdkZDliM2U1MGI1ZjMzNjhkNDEzMmNiMjMzMDAzOTMzMjhjY2ZhIGxlZ2FjeS10cnVuaworMjMwMTkgYzU1MjNiMGY4OWQ1ODNkZWRlZDFlYTcwZTJlMDFiMzg3MzIyNmRkZCBsZWdhY3ktdHJ1bmsKKzIzMDIwIGVlMTJjMzhlNDZhNmZjMDM1Yzg3YWMwMjNlNDlmZTk0MTYwNjc3OTEgbGVnYWN5LXRydW5rCisyMzAyMSBiMjMyMzg2NDZkMTU2YjJkMTcwOTU0MWRhYWFhZmViODc1Yzk4Yzc3IGxlZ2FjeS10cnVuaworMjMwMjIgZTcxNDcxNTZlZjMzZTc0YTQ3N2JjMDcxM2ExYmE0MDk5MDI3ZmYyZSBsZWdhY3ktdHJ1bmsKKzIzMDIzIDFjNjJiNGE1OTdmNmU3MmIwNWM3M2RmMmZjMTJmYjVmMzdjNWVlODEgbGVnYWN5LXRydW5rCisyMzAyNCAwN2JiMDlkZjMzMjRmMTAyMDFjODgyOTI5OTc5OGRkNmE0NjczNzg4IGxlZ2FjeS10cnVuaworMjMwMjUgMWNjODRkZmNkNmJkMjc0ZjNiNTdmNGIzNDY2ZWY4OWMwY2FjMjVkMiBsZWdhY3ktdHJ1bmsKKzIzMDI2IDdiNzIyYjZjYzc3YjMxYzI4OWYyNjU4MDFhZTdhYjMwMjNiYzc4NjIgbGVnYWN5LXRydW5rCisyMzAyNyA5ZGUyZjdlMWI2ZThiOWJlMzgxYmExMGFmMTA2OTUzNjM5N2JjOThjIGxlZ2FjeS10cnVuaworMjMwMjggMTNiNjU0Y2U2M2E0NzdiZjZkNjg1YTVhMThkY2JiMWQyM2RhNDkwOSBsZWdhY3ktdHJ1bmsKKzIzMDI5IDE3MzEyMmU1ZWRlNDE3MmM0MTFhMWU4YjY4MGFkNzA2YjQ2ODA5NWMgbGVnYWN5LXRydW5rCisyMzAzMCBjNzM3ZDEzZGE5MmQyYWUwYTA2MDMwYTZhOTA4YjIxODkxNTU1N2UzIGxlZ2FjeS10cnVuaworMjMwMzIgNGFiZmMxNzY2ODVjMzAyYTIxYzE2MDNjNTdlNGM3YmNjNDMwOTZmNCBsZWdhY3ktdHJ1bmsKKzIzMDMzIGY4MTRlYTZiYjY2NzZiODI0MTk1YzUxMjA4ZGQ2NjNhN2M5ZmVhZTIgbGVnYWN5LXRydW5rCisyMzAzNCBjYWQ5MzNhNDU0ZmU2MWQ0ZGYxODBhYTJiZTI5MzhmMjdlOGRjNjZiIGxlZ2FjeS10cnVuaworMjMwMzUgOTRlMTQxZTIwZDYxOGU4ZTEzMWY5MGJmN2NkYWMyNjExYmFhODhjYSBsZWdhY3ktdHJ1bmsKKzIzMDM2IDBiNTc3MjkyODRkZmI0ZTZjMjM5ZjE2YWIzNDk0MWUxOTQyNmUwOTggbGVnYWN5LXRydW5rCisyMzAzNyA5MDc5NzEwZWMyMTY5NmUzOTg0Njc5ODJjYmM2MWM4YzkxYjY5NmM2IHIyMmEzLWJyYW5jaAorMjMwMzkgOTYwNDc0ZDEyOWFlZDczNjVlYzc5YWFlYjBhMjZiY2E0ZGZlODY0MyByMjJhMy1icmFuY2gKKzIzMDQwIGM5N2RkYTIzOGIzNjI2NjFiYWI3N2JiYTlkMGFjM2E3OWM1MmEyMTkgbGVnYWN5LXRydW5rCisyMzA0MSAzZjYyMTQ4OWJlNzIxZGE2ZTRhZTUyYmNlNDQ2NzI5ZGQ3MDViNzI3IHIyMmEzLWJyYW5jaAorMjMwNDIgYjM1YTJiZjBjOTgwYWI0NTNiNGRhYTQzMWRkMWE0YTlkYzI3ZGYzNyBsZWdhY3ktdHJ1bmsKKzIzMDQzIGUyZTlmMTcyMmM0ZmEyOWYwY2ZjZTBmY2RkODM5NDE5NTg3MmUwMGQgbGVnYWN5LXRydW5rCisyMzA0NCA5NWVhNjYxMjIzMjU2ODhlMjRiN2ViMTcxNGFmMzIyMzg1ZmY1NzNhIGxlZ2FjeS10cnVuaworMjMwNDUgOWM1NGExNmFjOGI5ZWRjNTM0ZGE4YTZkMzIxNWY0NmMyODZlMDJhMSBsZWdhY3ktdHJ1bmsKKzIzMDQ2IDcwMGZlZmRjMDNkMjg1ZjMyNGZhY2UzM2IzYTg3ODVmYTJiODJjZmIgbGVnYWN5LXRydW5rCisyMzA0NyBjMGY5NGJjNWZmZTgwNmU3Nzg2MWY2OTJiYmQxNjE0NGExMzhkODc5IHIyMmEzLWJyYW5jaAorMjMwNDggNzcwOTdhNTVlOTczMWYwNWUwNGY3OGQ1YTUzMjU2OWQzOWU5YmZlOSByMjJhMy1icmFuY2gKKzIzMDQ5IDAzMDgwZTM5NWM5ZWQwZmVhODU4MzU2ZmU5MDM3NWFlYmVmZTdhOGYgcjIyYTMtYnJhbmNoCisyMzA1MCA3OGU3M2I4NTFhYTlkYmEzNjRmZTkxZmZiNjM3ZDM0Nzk2OGFjODk5IHIyMmEzLWJyYW5jaAorMjMwNTEgMjg1Yjc0MGI4NDQxOTJjNjdmODQzODIwYzYyNmQ2NGVkYWNjNjZhMyByMjJhMy1icmFuY2gKKzIzMDUyIDQzZGM4MjdkZDcxN2NhZmJhZDViNGE0NDVhN2YyNjUzZjUxZTgxMzUgbGVnYWN5LXRydW5rCisyMzA1MyAwOTFjMDFkMDdkOTgxNDI3Y2ExNGMxMjA4NGQyMmY5OThmOWVjOWRkIGxlZ2FjeS10cnVuaworMjMwNTQgZDQ4MDE0ZGJiODVmNmE5YTViNmQyZWMwNDQwY2Y1YzMwNjI5MmMwOSBsZWdhY3ktdHJ1bmsKKzIzMDU1IGVkNTQ5NDNjZTI0ZTBmZTQ0Njg4OGY5NWY4MDZkMThkOTZjYzQ3NjEgbGVnYWN5LXRydW5rCisyMzA1NiBmZTIyOTcyN2E0MGNmZDQ5ZGI0MTk2M2JjNTFhYWUzMmNmNjM3N2E5IGxlZ2FjeS10cnVuaworMjMwNTcgYjQ3ZDI5Njk5Y2QyOThiMWIyYjQzMjZmODQ1NTNiZTY5NWRhMzkxOCBsZWdhY3ktdHJ1bmsKKzIzMDU4IDMyY2ZjZTRkODNkYzA2MDQ4MGI5MWZiNDhhNDdiYzQ4YmVhM2U4NDIgbGVnYWN5LXRydW5rCisyMzA1OSA5MDMxYWFiMjdlYWVkZDJhNTBiNGIzZjQzNTFlMDNkMGY3ODhjNWM5IGxlZ2FjeS10cnVuaworMjMwNjAgNTYwMTU1ZTc1MDg3OGMyZGYwMDBkOWFmNTc1MDY5MWVlZTAyYTNmZSBsZWdhY3ktdHJ1bmsKKzIzMDYxIDhjYWM1ZWI3MDNmZDg0NjVkYzI0MDllZmNhOTY2ZTQ1NTVhNWMyOGYgbGVnYWN5LXRydW5rCisyMzA2MiAwODZmZmFmYWVkNTUyNTk5MGY1NDg3NWEwYWRhM2UwNDdhMjAwNTA5IGxlZ2FjeS10cnVuaworMjMwNjMgMDU4NGM5MTMyNTI1YTU4OGUwNTQ0NjJjNzRmZDhhNmViMDJmOTg5YSBsZWdhY3ktdHJ1bmsKKzIzMDY0IDc5YTMxYmE4NzNhMzQzZGQ5NzUzOGFlMDRlMmJmNDJiY2NjYzFkNWMgbGVnYWN5LXRydW5rCisyMzA2NSBjZTU3ZmZmOTM5NjI5ZDBjYWJlODEzMWVhMTMwODUwODllZGMzMzZjIGxlZ2FjeS10cnVuaworMjMwNjYgMzhjMTJmYWY2MTJhYTU4OWM4MDk5MDRlZTQwNzg3NTExMTU2MTg1MyBsZWdhY3ktdHJ1bmsKKzIzMDY2IDA4Nzk2YTEzN2YxYWRhMjQ2MmY3YTMxNzczMDZkZjVmNjdhNzY3ZTEgbGVnYWN5LXRydW5rCisyMzA2OCA3MDQxMWViYTIyNWIxYTUxZjdjYzNhN2YyNjhlZTk2ZjVmNzUzYmVjIGxlZ2FjeS10cnVuaworMjMwNjkgZGM4N2Q5MWQwZGZkNjg1ZTg1NDRlMWU2MmU0N2RkYjQ3NDdiN2U4NSBsZWdhY3ktdHJ1bmsKKzIzMDcwIDhkNTg1ZDgyMmY5ZDBkYjFjYzkxMGE4MmQ1NWEyYzAzMGY0OGU3M2UgbGVnYWN5LXRydW5rCisyMzA3MSAwY2JiMDYwZGEyYzM0YmNkMDk0ZWY1YTFiYjE5MmQwOTk4YzM1YWZmIGxlZ2FjeS10cnVuaworMjMwNzIgYjczOTYyODdjZjY1Yjk3MjZjMjQ4NTE5NzkyNzlmNWQ3NzBhMDFhYyBsZWdhY3ktdHJ1bmsKKzIzMDczIDZiMWJlMTRkNzY1MDMyNDkwMzc1ZDIwMGU4NDQ0ZWMxYzFkYTM5MDIgbGVnYWN5LXRydW5rCisyMzA3NCA1M2UwY2FlM2NmNmNkMDkzMWI2ZTdkN2U4Yjc4MjY2MWNlNjQ1YjBiIGxlZ2FjeS10cnVuaworMjMwNzUgZmU1ZWMxYTNhN2UwZjczMGIwN2ExZDY1OWNjMmJhNGVkMmNmOWU2MCBsZWdhY3ktdHJ1bmsKKzIzMDc2IDNmNzNhOGJmNzZmN2M5OWJhOTZmMTY4ZTQ2Y2FiMWUyN2Y5NTQyOTMgbGVnYWN5LXRydW5rCisyMzA3NyAzZGMzMTU0MDk5NjgxNDJjMGQ2ZDU2ZDUxMWJlM2RkYWI1NDNjMzc2IGxlZ2FjeS10cnVuaworMjMwNzggNmU1N2RjMzA1NTUxMDhhNmZjMTgzMzRhMWEyZDgwMTZjZGMwMmU4NiBsZWdhY3ktdHJ1bmsKKzIzMDc5IDM3MjE0OTc3OTI0MDY2OWY4NDc1MzEyYmJiODg5ZDNkOWQ1YmUzMTcgbGVnYWN5LXRydW5rCisyMzA4MCA5MTk1MzJjNTBhMTc1OWI4OTRkYjk1ZjAxMDU1MzRiNDFkMWI1YTAxIGxlZ2FjeS10cnVuaworMjMwODEgOGVmNDU2OTQ5Yjc2MjQ2YWVlODRjNjg1NTJkOTVlNDM1YzNlMTdiOCBsZWdhY3ktdHJ1bmsKKzIzMDgyIDM5ZWVhYjY4OWQwNjdiMDljYTVmZGIzODA5YjFkYTczMTk0YzE3NTggbGVnYWN5LXRydW5rCisyMzA4MyA1YjI4ZDdkYzMwMDYyNWI1ODNmMmRmMTYyZDg4MzMxOGRmMzg1N2IxIGxlZ2FjeS10cnVuaworMjMwODQgYmJhZWE1M2FjMDg3ZjU4NjU3ODJkNTA1ODBmNTkyZjk0YmRjZjljOCBsZWdhY3ktdHJ1bmsKKzIzMDg1IGU0MTkwNjBlMTNjOGQ0NDEzZjBkN2E2ZGE0YzJjZmFmNTlhMDM5MDQgbGVnYWN5LXRydW5rCisyMzA4NiAxMzU5ZmFjNjE3ZjFiYjQ3Yjg2NmYwNmE1OTU0Y2YwOTVjYTU0Y2RkIGxlZ2FjeS10cnVuaworMjMwODcgMDBkODA5NDdkODE3OWY4ODlhMGM3ODJhOGI2MzEwMjM1YWYwMDk4ZSBsZWdhY3ktdHJ1bmsKKzIzMDg4IGY0NDYwNmIyNDJjNTkxMTE0MDc5MTYxNDI2OTg5NmE4NWYyZTE5ODUgbGVnYWN5LXRydW5rCisyMzA4OSA1MzI1MGNiMTA2ZWI0NzFiNzQ0ODNhYjY4MWU2NmQ4MjI1ZjEzNDkxIGxlZ2FjeS10cnVuaworMjMwOTAgOWNmMTMzOGZkOGQ5ODUwMDIyMjlkYmViMTRiMzYxOWJjMzVkOTNjMyBsZWdhY3ktdHJ1bmsKKzIzMDkxIDU0MjBlN2QzNDhhNDRjNjMxYjhjMzVlYzliYjU1NjQzNDAxZmJkZDIgbGVnYWN5LXRydW5rCisyMzA5MiA1MTU4ZTQ3ODk0NTkyMTgxMGUwZDY2OTM2Y2YxMjY5OWNiMDZhNzlhIGxlZ2FjeS10cnVuaworMjMwOTMgYzE1OTIwYzJjZjZjY2I5ZmU5ODg0NDg0ZDQwMjNmNmQ0MmM4ZWQxMyBsZWdhY3ktdHJ1bmsKKzIzMDk0IDEwZjU5MjdkYmYwNWQwODlkYzZiNmIzMDI2MDZmNWM1NWU0NDEzZTcgbGVnYWN5LXRydW5rCisyMzA5NSAzNzc3NDZhMzg5NzIxOTk4YzQxYjlkYjQ5NDc5ODcxOGZjOTk2ZmEwIGxlZ2FjeS10cnVuaworMjMwOTYgZDhkZDc1ZTNiMzA0NjVmYjFlNTczYjY5MDhiZGZmYThiMDU1ZmU2YyBsZWdhY3ktdHJ1bmsKKzIzMDk3IDIwOTI0YTcwZmExYmJjNjQ3M2E4MmE3NzI0Njc2MGJkOGE2NDg0OTYgbGVnYWN5LXRydW5rCisyMzA5OCA2ZmY3ZWU4NGQ1YTE1ODM1ZDljNjE0YmM3ZTBhOTdkYjE4NmIzZjZjIGxlZ2FjeS10cnVuaworMjMwOTkgOWU0ZDFhNjMwN2Y2Mzg1NTUyNWIzMGI3MDllMzBmOGYwYzNlM2Q3NCBsZWdhY3ktdHJ1bmsKKzIzMTAwIDdhOTgwYzk4YzhhZWZmZDNmMjJlM2M5MDE3Yzg0MmM3YjQwZmQ5NzUgbGVnYWN5LXRydW5rCisyMzEwMSA2NjJlMjJmOTk2MzlmNTA3NGUyYzg0ZTg0NGNlMjljYWZhODBkMzEyIGxlZ2FjeS10cnVuaworMjMxMDIgYzVjMjQxYmVmODhkM2IwNjZmNGI4ZmExZmEwOTdjMmMyZDA4OTViNCBsZWdhY3ktdHJ1bmsKKzIzMTAzIDhhZjc0ZjAzNThhYzM5YTliY2QwOTViMDFiNGE2MmU0Mjk0NmU1MjcgbGVnYWN5LXRydW5rCisyMzEwNCBiZjAyMDJkYWM0NDE3MTYwYmViNzU1MWZlN2VmZDI0OWRmMjRiNmM4IGxlZ2FjeS10cnVuaworMjMxMDUgMmI1ODFmNGM2OWI0ZjIwOTRlM2YxMGUyMzhmMzE3MjRlMjNiZjkwMCBsZWdhY3ktdHJ1bmsKKzIzMTA2IGYzZjY5NDExMWVhMDgxNjBiNDdhMzYxMjRkOTFlOGIwOGQ5MzlkMzAgbGVnYWN5LXRydW5rCisyMzEwNyA1ZTc5YmVkMzQyNmY5M2RmMzM2ZmQ2YTc3ZWUwZDE5YTkwNzkxYTkwIGxlZ2FjeS10cnVuaworMjMxMDggOTgzMDMyM2Y1ZjhlYjJlNThiYTZlYTVhNjc4YmQ2MzM5MzI3MzNhMCBsZWdhY3ktdHJ1bmsKKzIzMTA5IDQzZWQ4YTM0NWY0ZDgzMzkxZDM4NWU1Y2Q3ZjI4ZjM3MDRjOWM3MGMgbGVnYWN5LXRydW5rCisyMzExMCA1NTY4YjMyMDkxNGY2ZGI5NTc0MjMwN2Y4MzcyMTMzYmU0MTBlM2U3IGxlZ2FjeS10cnVuaworMjMxMTEgNDE0MTNjNzgzODM2NzkzNzM5NjIwZTZkOGZhZWFkMzQyYmEwZTc3OSBsZWdhY3ktdHJ1bmsKKzIzMTEyIDlhNWJiZjg0NWM2MzNlYzdhMWU2NWM1OGNlZjE2MWExMGM0NDc4Y2QgbGVnYWN5LXRydW5rCisyMzExMyA4NzNiZThlMzQ2MmJlZTY3YmFiNTNjN2Y4YmY4MjllYzE1OGNhNTZlIGxlZ2FjeS10cnVuaworMjMxMTQgNTg3MWUwYWEwMjFiODUwY2NkOWVjOWRjY2ExOWIxMjM2MTBhNmU2MCBsZWdhY3ktdHJ1bmsKKzIzMTE1IDJhODA5YjNkMDNlOTRiZmY2MDY2ZDNkMmE2ZWU3YzljYmExMzk4MzkgbGVnYWN5LXRydW5rCisyMzExNiBkOTk3MGQ2MzE4NzgwYjk4OGY1MzU0ZTM5MGFhZjkwZDIwNzBjN2U4IGxlZ2FjeS10cnVuaworMjMxMTcgMzZjYTE2ZGMzNWI5ZDk5OWRmMDRhY2VhMzAxNTc4MGI1MzE2MjQwZiBsZWdhY3ktdHJ1bmsKKzIzMTE4IDY3NjI5OGMwYzc2Mjk2MzQ4ODc4YzBmZTA3MmZkNGNkMTUwOGMxM2MgbGVnYWN5LXRydW5rCisyMzExOSAzMDQ2NTJmZmM2YWM2MDM1NGY5ZGM3M2ExMzNlNDgwODA0MWM1ODE1IGxlZ2FjeS10cnVuaworMjMxMjAgZjJhMzAwOWI1MjhlOTNlNWMwNjNjYTU0NmUyZTc1YTNiYjg4ZGU2MiBsZWdhY3ktdHJ1bmsKKzIzMTIxIGEzNDk5MWI5MTAwODYxOWNiYzdlMDVmMDViYjhlZjBiYmY4MjA0YzAgbGVnYWN5LXRydW5rCisyMzEyMiA1NzgwNzI0NDcwZWViNGU3YTBiZDc3ZTFlMDNmNmJiMDFlNDIxZTZkIGxlZ2FjeS10cnVuaworMjMxMjMgYWY5ODI4MmU5Mjc3YjdjZGNhODYxOWI3NjljYjllNmY0YTQ4OTRiNiBsZWdhY3ktdHJ1bmsKKzIzMTI0IGRmNDkzNjQ2ZWM0ZGNkOWU4NmIxMzNlMjNhOTg2YTBmNzA4NjViNTMgbGVnYWN5LXRydW5rCisyMzEyNSBlOTFiOTkxMzg5ODVhZTk1MTU4ZmI4YTQxMzFlZmY4NDBlYjY5NjU4IGxlZ2FjeS10cnVuaworMjMxMjYgMTgwODZjOTEzZWQ1YzUxMzFiMjRhZTA5MzI2ZWZjOTRiZDhlNDhlYiBsZWdhY3ktdHJ1bmsKKzIzMTI3IDUxMzYzMzQ4ZGNmYWI3YjAyZjdkMGY0NGJiNzM1NTUwZDg1NjBiZmUgbGVnYWN5LXRydW5rCisyMzEyOCBhMTllZWE0MTY2OGZjZmZhMDBlZjEyYmI0MDgwNWNiN2JiMTkxMTNjIGxlZ2FjeS10cnVuaworMjMxMjkgZWQzZTUyOWZiZTQ3OTFjOGFiZTlkNDJmODA2NTZiODg1MzgzYzQ1NCBsZWdhY3ktdHJ1bmsKKzIzMTMwIDcwYmRmODQ4NjJhZDFjYjMzNDNmOGY1M2E0NDRlYjg2N2JmY2Y2MmYgbGVnYWN5LXRydW5rCisyMzEzMSBiODdjMDU4NjI4MTU1OTY3MmVjNGRiODk3ZWE4NTVmMjY0OGFlMDhkIGxlZ2FjeS10cnVuaworMjMxMzIgNjJkMzFlYzQzZGY2NjM0OTdkNDJjOGQ3M2IxZjFmMWUyNmIwOTQ5ZiBsZWdhY3ktdHJ1bmsKKzIzMTMzIGNjMTQ2ZWU1Mjg5NzViNTI3M2FjZDg2YzFmNTdmMDg1NWQ1YWMwNGIgbGVnYWN5LXRydW5rCisyMzEzNCBiYzUwNTgxYjNkN2NkZTI3OGZkY2MwNTBjYmJiYmFmYTFlZjZmMzk2IGxlZ2FjeS10cnVuaworMjMxMzUgZDFjZDRjZDcyMjcxZTA3YTc1N2ZmOTAwNGQ0ODAwZGY0YTNlYmQyYSBsZWdhY3ktdHJ1bmsKKzIzMTM2IDE2ZTRkMDk2Zjc4N2QxYTk1MjQ4OTJiYjkxZjE0N2EzNGRjYzU0MWEgbGVnYWN5LXRydW5rCisyMzEzNyA5NmY1M2Y4ODMxZWVlNGQyOTA5ZjY4ZjhiODY3MjM1YmM2YTVhOTZlIGxlZ2FjeS10cnVuaworMjMxMzggYzhmZWNlMzdmMDIwYjBlOTYyNjIzZjI4OTAxZGU5YzM2MTlmOTQxMyBsZWdhY3ktdHJ1bmsKKzIzMTM5IGRmNjZiNGRkMGIwZGJiNDQ4OGJhY2Y2YTNmNmJhNzdhMGQ3ZjZjODUgbGVnYWN5LXRydW5rCisyMzE0MCA3MmU2ZWI2NTMzMTIwN2I4MTZlM2ViYTViMDgyYjQ0OTE0NDJhZjUyIGxlZ2FjeS10cnVuaworMjMxNDEgM2IwZGExM2FjZTQ4NTcyMmVkMmU0Njg5MTUwYTAyMmM2YWQ0N2UyMSBsZWdhY3ktdHJ1bmsKKzIzMTQyIGIyOGZjOGMzNmUzZGU3OGY3ZTE1MTE5M2M4OTA0NDRiM2JlZDFjMzUgbGVnYWN5LXRydW5rCisyMzE0MyAyZGE2NmNlN2VlMjI5NTE3NDcyMDkzNDEzMTJjOTY0ZTE1ZDliYmM0IGxlZ2FjeS10cnVuaworMjMxNDQgNzMzMzE0ZmNmZGFhMGE5NWVmNmJiNzhkN2ZlZWQyNDgyYzJlZmY3OSBsZWdhY3ktdHJ1bmsKKzIzMTQ1IDMxZmU4YjNlMjc2YmFhZGU0NTAxZjc1ZDU4ZjA3Yjg0Y2Q4MTBhYTQgbGVnYWN5LXRydW5rCisyMzE0NiBjMzNhODU1YzEyNzQ1ZjgyYTljOGQ1MmRjZjhkOWJmMjcyZGUyODAwIGxlZ2FjeS10cnVuaworMjMxNDcgZTkxM2Q3NTcxM2U2NDMyNTE3MzlhZDYyMWI4NjY0NTVhMGZlYTBjYiBsZWdhY3ktdHJ1bmsKKzIzMTQ4IDNhZjAwNjUwMzY3OGE3YzRlYTYyNTVhYjA1ZjVlZTIzNDU2OTBmMDkgbGVnYWN5LXRydW5rCisyMzE0OSA1MWNjODI2MDVkMzJkYjdiMTQyZjU1MzY2ZTkxZGU2YjFkYTQxZmVmIGxlZ2FjeS10cnVuaworMjMxNTAgMWM0MWZiZDA5ZDkzYTY4NjExYzIwZWNhN2IwOGQ0NzhjYzAwNjdjMCBsZWdhY3ktdHJ1bmsKKzIzMTUxIDA0OTFlYTYxMWJjNGI3NzNjMWJiOWZjYTViNTBjZmM2MDNmZGE1ZTcgbGVnYWN5LXRydW5rCisyMzE1MiA4NDM3NjM1NmZmODkwZTkwMjc5MjBkZDIyNDZmMGQ2ZGRhNGVhZTBlIGxlZ2FjeS10cnVuaworMjMxNTMgZmM0MGQwYjU0MDQzN2U5ODg3MzQyODM2ZTFjMzM5YTJjZmZkNjRkZCBsZWdhY3ktdHJ1bmsKKzIzMTU0IDFmNjE1MjYzMDdjMDBiNjc4OGExYTY5OGJjODlmNDcwODU2OTY4MTUgbGVnYWN5LXRydW5rCisyMzE1NSBmZjM3NzQ3MmVhYzk0MGIyNWRhMTMxMjQ0NjllMjc0YzY4MjgwZjFkIGxlZ2FjeS10cnVuaworMjMxNTYgMDc4MThjYmNkMzAyNjg4Y2ExMjQxNzU2ZmM5OWVmN2MxOWVlZTZjYSBsZWdhY3ktdHJ1bmsKKzIzMTU3IGRlMzk5NTZiNTQ1ODA0MzY1ZjE2MjRhNTJlNTJkMjdiNDlkMTI4ZDEgbGVnYWN5LXRydW5rCisyMzE1OCBjMDgyOTcxODIzY2U5MTMwODhhMTk4ZGY5YThlYmMxOWQ1Y2Q2OGE0IGxlZ2FjeS10cnVuaworMjMxNTkgNThkNTAwOTRiZjgwODQ3NDAxMWY4Yjc0ZGQzODE5YTg2MzlhYTc5MSBsZWdhY3ktdHJ1bmsKKzIzMTYwIGE3YmEwMGUzYjBkZTJmZDRiZGM3MjlkMzAzNTNlZGJlYzdmMTViYmYgbGVnYWN5LXRydW5rCisyMzE2MSBmMzlhOWJlN2M5YWY3NDY4NWM0MTFlYTU3ODMyOTIzYTBjYTdmYmNkIGxlZ2FjeS10cnVuaworMjMxNjIgZDY4Y2ZkODVlNmRiOWI1ZmJiYzgzMmY2ZDJjNTMxYTBjOTczM2JiMSBsZWdhY3ktdHJ1bmsKKzIzMTYzIGQ1N2E2YzgxMzY1OGNjMDMwMGY1ZjRkMzY5YWVlNzAzZDNjZWQ1YjYgbGVnYWN5LXRydW5rCisyMzE2NCBhMjg4YTU1ZjkyOTE1MWJiYWQ1ZWEyZTZhOGY0NjQzMGU2YTc3ODAzIGxlZ2FjeS10cnVuaworMjMxNjUgNDliN2UzOTgwODUzYmMyZDU1MzQ3YzFiY2Q3ZTZkYTJhYzFiODU0MyBsZWdhY3ktdHJ1bmsKKzIzMTY2IGNiYTQ0OWFiNTkxNTc5Yzk0ZmNkMmQ3YzBiNWZhNzdmNTk2ZDM2ODIgbGVnYWN5LXRydW5rCisyMzE2NyA3MWM4NTNkZWRiMDcyOTFkZWYwYmNlOGM0NjBhZmMyNDY4ODc3MjNjIGxlZ2FjeS10cnVuaworMjMxNjggY2EwZjU0ZGFjZGQ4YzQ1ZmU1ZmJkMGM2MDA4NGVlMGIwNGVlZDkzNyBsZWdhY3ktdHJ1bmsKKzIzMTY5IDIwMjdkYzEyNGVkZGFkYmM5ZTgwNGVjNmNmMGEyZjY0MjZjZjJlOWYgbGVnYWN5LXRydW5rCisyMzE3MCAyMjYzY2I0M2VhYWJiZWEwY2ZkNWViMWNlMzEyNTQ3YmI2ZTIyNjEzIGxlZ2FjeS10cnVuaworMjMxNzEgMWI1NWQ3OWM2OWQ1ZmUwNDlkMzUzYTc1MzAzM2FkYWMxYTZmNDYxYSBsZWdhY3ktdHJ1bmsKKzIzMTcyIDI5NGEzOGExOWI1YTk3ZWU1YWFkZTFiODRjZWRiZjA5NTQ1Yjk2N2EgbGVnYWN5LXRydW5rCisyMzE3MyBkOTZjZGJiNGQyN2JjMWUxNWM3YjVmZGY4YmVmOTY3ZDgzZGJhYTEwIGxlZ2FjeS10cnVuaworMjMxNzQgOGU0ZDM1YmM2NzNmZmFkOWRiM2MyYjk3NGI4NzgzZDllMWUxZGZiZiBsZWdhY3ktdHJ1bmsKKzIzMTc1IDYzOTMwMTU5Y2EzYzcyYThiOGY0NDNmMzQzOTczZmFhOGMyMjAwNTcgbGVnYWN5LXRydW5rCisyMzE3NiAxNmY2NGQ3ZGE4ZTMyMWMyMWRhMDc1NmZiZDdkMTA2NWUzMjk0NTBkIGxlZ2FjeS10cnVuaworMjMxNzcgOTdjZjZkY2QwYWVkMjdhNmJkZmJlYTJhZWZlYTE4ODQ2M2JkNDNjNyBsZWdhY3ktdHJ1bmsKKzIzMTc4IGNiMzVkMGY3MDRkZTBiNzBiMDZiMWJiZmUxMDEyYjAzY2M2MWNlMjYgbGVnYWN5LXRydW5rCisyMzE3OSAwMWY2NmY1ZGIzMjYxODUzMTgyZGM0Zjk4ZTk4MmU3MjQ2YmJkODI4IGxlZ2FjeS10cnVuaworMjMxODAgZGY0MDk4NDRiNjU5NzkzZjM2OWZhYWRiODVhY2E5NjhlNjkzZGQ0MSBsZWdhY3ktdHJ1bmsKKzIzMTgxIGNlNDE0YTZkMzBiNDZlODM2ZWNlNjYxZDI5NzMwMGI0ODBmNDc0NzIgbGVnYWN5LXRydW5rCisyMzE4MiAyODk0NDU4ODc3YzgyOTkzNzEyOTA5MWEyYjU0NjMwNzdjYmM1M2RhIGxlZ2FjeS10cnVuaworMjMxODMgNjA0NmU5NTQ2YTcwMmI2MTUzMjM2MWE5MWM2ZmNjOTc0YzA0OTZkNSBsZWdhY3ktdHJ1bmsKKzIzMTg0IDliYzc2ZTM2YmE1N2VjOGY1YTNmYmNjMzE0OGRmZTNiODUyMmYxYjEgbGVnYWN5LXRydW5rCisyMzE4NSAzNmMwN2ExNzE4ZTk4OTI5OGU2MGQ4ZjBmNDU3ZThhYWI1N2UzNzliIGxlZ2FjeS10cnVuaworMjMxODYgYzMyN2E4YWM5ZjJiNWZkMTAwZjA1ZmE0MjYwYWU3ZDgyODVkYWJlZCBsZWdhY3ktdHJ1bmsKKzIzMTg3IDYyMWVkMTM0NDVkZTU1Zjc5YTdhMTAxNzk2YjlkMjNhNTllYWRhZDAgbGVnYWN5LXRydW5rCisyMzE4OCBiNmNmMmYyN2U0NGZhYTUzZGFlZDI1MzM5ZDI0MzA3ZDdiZDQ3OTA1IGxlZ2FjeS10cnVuaworMjMxODkgZjJmMjVhNzM4ZjdmMDkzYjQ0YzUyOTJkNTc2OTY2ZGNlOGJjYzk3MSBsZWdhY3ktdHJ1bmsKKzIzMTkwIDYxOWEyZDZiNWVhOTIxOWQxNzY0MTUyZTNjNTZhMWU5OWY2MDUyOGYgbGVnYWN5LXRydW5rCisyMzE5MSA2OTQ0ZjViOWRlMDNkYjllODYwYThiOTFjOGQ0N2RhOTEzZDdkZGVmIGxlZ2FjeS10cnVuaworMjMxOTIgODk2ZjJkMWUyZjQ2ZDc2YzE3MzQzMzM0MTlkOTk0M2E5Y2ZmMjQxYyBsZWdhY3ktdHJ1bmsKKzIzMTkzIGZkN2E3ZjgzMjI1OGQ3YTk3MjM4YTljMzM4MmQ0ZTE2YmM1ZDA4OWMgbGVnYWN5LXRydW5rCisyMzE5NCBhYWNhNGQzY2Y2MmI2NzViZTA3MGM2NzdhMjMwZjg0MTQzODNmOGRlIGxlZ2FjeS10cnVuaworMjMxOTUgM2JmNjIyYmMyNzkyMTgxOTNkZjE4ODE3MTU1NDU2OTNhMDIwZTU2MCBsZWdhY3ktdHJ1bmsKKzIzMTk2IDBkNTM1Yzg2YmU1ZjUyZjBhODQxMWM4ZGMxYTlhMTkyMmZhNGVjYzMgbGVnYWN5LXRydW5rCisyMzE5NyA4NTIyYjAyMmY4MGEyOTM1ZjY2MDJhYzBlODQ2M2JjNTUyZWRiOWVkIGxlZ2FjeS10cnVuaworMjMxOTggNjc3M2RjZmUzNGEzNjkxZjU4MGYxOWUyNjI1MjJjNGVmYzFiNmE1MiBsZWdhY3ktdHJ1bmsKKzIzMTk5IGQ5NDBhZjUyNTg0MDhlZDQ4ZDBiZDlmYzI0M2EzMzAzYzlhZjczYTEgbGVnYWN5LXRydW5rCisyMzIwMCBiZTRiYWFmYTRjNTI4ZDA2MjM1NjRlM2VhNzU0NTkwZTFmZjliNmU3IGxlZ2FjeS10cnVuaworMjMyMDEgNDE3OTliNzBhOTZjMWUzY2MxMTllYTkzM2M2MmY5YTUwOGQ5MWI1OSBsZWdhY3ktdHJ1bmsKKzIzMjAyIDNmMTkyMjk5MDkwMzQ5MjQwY2EzMmRhMDljY2ZhYzQ1ODdjMTU3MDAgbGVnYWN5LXRydW5rCisyMzIwMyBlYWYxMjAzYjg1Y2ZkMDg0ZTAyN2JiNGU0YTlhN2Y4YjkzZTZmNGE0IGxlZ2FjeS10cnVuaworMjMyMDQgMDRjZTJhNDhjMGE4MzFhODRiMWEyMmI1NjA5OWU4NGIwNmFkMWI4NiBsZWdhY3ktdHJ1bmsKKzIzMjA1IDc2MTMzYTQ2NWUwMzk2ZjQ4Y2RmM2NjOTVkMmM1NDYyNjc1ZmIyNWMgbGVnYWN5LXRydW5rCisyMzIwNiA3ODk0NmE3ODQzNTEyMDJkMDUyZDJmYWIzOWJmNGZjYThkNTJjNjMyIGxlZ2FjeS10cnVuaworMjMyMDcgOTZjNGEzZjA4ZGNlMjRkYmRmNWY3MDUxZTE5OTAwY2JmZWU5OGJmMSBsZWdhY3ktdHJ1bmsKKzIzMjA4IDBmOWRmNTYzYjY1ZGU0ZTE0ODIyMzFhM2U0ZDQ4NGJiMTdlMjE2MWUgbGVnYWN5LXRydW5rCisyMzIwOSA4NGFmMWRkMDExZWUzM2Y3YWNkZjlkZTY2NjVlZGQwODcyYjc3OTE3IGxlZ2FjeS10cnVuaworMjMyMTAgZjM2YTJkNDBhMWRmNjhhZjM0MjIzMzE3MTEwNDZhN2M4NGZmMjMzMiBsZWdhY3ktdHJ1bmsKKzIzMjExIDMzNjY5Yzg5MTRiNGFlMTIzYzNjOTU4NDI3YTkwZDljYmY1NDE0NTEgbGVnYWN5LXRydW5rCisyMzIxMiA5MDk4YTMwOGE1N2IwNzhjYTAyNjc0M2E1NzBiNzI5OWI4YTViYzA4IGxlZ2FjeS10cnVuaworMjMyMTMgNjA4MWQ3MzYxNjdiMGU2OTNmMDViMzc5ZWZjMDc1ZjZkMDE1NTExYiBsZWdhY3ktdHJ1bmsKKzIzMjE0IDAzZjNhYjBjNzI4NmRjYTFhZWJkMTM2YWRhN2I2NGQxN2Q0MjhiNjUgbGVnYWN5LXRydW5rCisyMzIxNSBjYWUzZmYzMWJkOTEyYzE0MzdkYWI0NmM4MjEzYThjM2I1OWY4M2ZjIGxlZ2FjeS10cnVuaworMjMyMTYgMDgzNzRhODUyNmUyMTAzZmQ2YzBiNmNkNDIwYjIwZDIxZGMwN2EyZSBsZWdhY3ktdHJ1bmsKKzIzMjE3IGNjNTJiMDVhYzk3OTU0NDJhNzQ3N2RmODFjZGY4MTFjMzVhOGMxN2UgbGVnYWN5LXRydW5rCisyMzIxOCA5NjllMzA2YjYyZmRlOWJkYTY3ODQ4NjM3MGI5M2M3NTE4MjBhZmY0IGxlZ2FjeS10cnVuaworMjMyMTkgNDNlNWZkNTRmOGM5OGQ5YTdkZjVmMjllNWQ2ZDkzZGQ4Y2Y4NjhlZSBsZWdhY3ktdHJ1bmsKKzIzMjIwIDgxNzc0NWU1YWRmYjM3NmQxNjU3MThjZDRiOGMyNDFkZTE5ODg2ZTEgbGVnYWN5LXRydW5rCisyMzIyMSA0ODY4OTM0NmU4YmJkNjY3MDJiNGIxNzRjNmUxNGMzNWE1MmUzMDIxIGxlZ2FjeS10cnVuaworMjMyMjIgMGI1MWU2MDdmMzMzN2Y5NDU3MDI0NGQ5NjlhZDU1NWY4M2YxNDMxNCBsZWdhY3ktdHJ1bmsKKzIzMjIzIGU5MTI4ZWE0NWNkYTgyM2U3NzhlNTkwMjA1MTYwOTQwNWU0ZjFjZDcgbGVnYWN5LXRydW5rCisyMzIyNCBiMTQwOGEyOGQ4YmUyYjZmMTY3ODllMzFjNTE5NDJiNDVjZjM2YjUyIGxlZ2FjeS10cnVuaworMjMyMjUgZjc2MWNhYjI4YzFjMTBmNDk1ZTlkMTMyNmZmYWI5YjNiZjhlZmE3MCBsZWdhY3ktdHJ1bmsKKzIzMjI2IGQ0Yzk2NTMxNjYxMDRmNjlkZmU0YjM3MWMxNDE4MmNhNDIwMGVhODYgbGVnYWN5LXRydW5rCisyMzIyNyAyMGFkZmVjNjE0NjdkNWJjNGRjMmEyM2Y3MjM3ODVhYTAyMWExYzI3IGxlZ2FjeS10cnVuaworMjMyMjggMDVmNmIwOTg5OTUzMmE2NjE3YjU2Y2MyOWI5ZGQwZDJhZWI5Yjk4YyBsZWdhY3ktdHJ1bmsKKzIzMjI5IDhlZGM0NGJkMGFjN2YxNDNhMzkwN2U1M2Y4NThkMDAyYjY2M2M4YjQgbGVnYWN5LXRydW5rCisyMzIzMCA0ZTQ0NWEzZTA3YzZiNTM1OGI5ZmUxZmY4ZWJmNDJmMmIyNDRhMjNmIGxlZ2FjeS10cnVuaworMjMyMzEgZGEwMDE4OGQ1MjcwOWFmNjg5YTM1M2Q5MDlmZWMxMzIyODk1NGU5ZSBsZWdhY3ktdHJ1bmsKKzIzMjMyIDYzMTNmYTM4ZTkwZWFkYTM0ZDY0MDkyMjk3ODBhOTcxZWJhZGZiZmUgbGVnYWN5LXRydW5rCisyMzIzMyBhOTYwZTY3MzA3N2ZjNWIyODM1NWUzMWYxZjU0MmFmNzJhZmJjOGY3IGxlZ2FjeS10cnVuaworMjMyMzQgOGRjZmFmMGU2NTU5YmI2ZGNiNDFiYTY5NGNiODJiMmFiZWM2MDg5NCBsZWdhY3ktdHJ1bmsKKzIzMjM1IDlhYjZhZjY4MTVhZmNiNmRhMDYwNWNmZWJjOGM4YjA5MmQ5ZTEzOGQgbGVnYWN5LXRydW5rCisyMzIzNiAwZmQ5NTIwMGFiNmVjNGQ3YTA0OTE2MmY1MzI5NDQyZjFkMDVkMjgyIGxlZ2FjeS10cnVuaworMjMyMzcgYmY0YjFiMDhhMmM2ZjIyOWE5OGZkY2I4MzcyZDI4M2JjYjk5ODdkYyBsZWdhY3ktdHJ1bmsKKzIzMjM4IGQ1NjQ2YzBjNTEzMGNjMmY5MmRlMDcxYWMxMzhiOGJlODc4MzY5YWMgbGVnYWN5LXRydW5rCisyMzIzOSA5ODgxMmQyMjEwNzUxODA2Y2U3MmY2MzYyODMxMjEwNGJiZTE0YWIxIGxlZ2FjeS10cnVuaworMjMyNDAgNzEyYWZkYWUxMTIzOTRjMGE5ODlmMGYxNGE1Y2M5NThjOTA4ZDI3OCBsZWdhY3ktdHJ1bmsKKzIzMjQxIGY0MmY4OWI1YjhmOWJiNDZhMmM0NWIxNTBmM2ZhMzkyYjRjMmI4YmUgbGVnYWN5LXRydW5rCisyMzI0MiBkYjE2ZTI2YTA3MWI4MzQzYzM5YjkwNGM5ZTkxYzBlMjYxOTFhMjQ0IGxlZ2FjeS10cnVuaworMjMyNDMgZmNiODc3MDY5ZmFhNzExNzMyYzA5YmYyMDgzODBlMjc4NGYyZjU4MiBsZWdhY3ktdHJ1bmsKKzIzMjQ0IGNlYzllMjVhZjEyMWIxNjU3MWY4MTA3YjEyMjNkNzIyY2IxYzFkZTYgbGVnYWN5LXRydW5rCisyMzI0NSBmZmExYTg3YWM0M2E4ODZlZjI1NDgyMjAyMzU4NmE5NWI4ZDAxMTFmIGxlZ2FjeS10cnVuaworMjMyNDYgODcxMzRjN2YyYmM3N2I4MzY0NTRiNmQ2YTk3MzkxNzkyMTM1NzFlZCBsZWdhY3ktdHJ1bmsKKzIzMjQ3IDlkN2NhNTkxNGQxY2ViNTYzYjUwYjgzZGVmNzg0NzhlNTI2NWE4MTMgbGVnYWN5LXRydW5rCisyMzI0OCAyOGVmMjJhMjU5OGU1YWEzMWIxN2ViZTVhMmU0N2JkMGI2ZTZiZGYzIGxlZ2FjeS10cnVuaworMjMyNDkgYWI2YzE0ODIyZGUxYmY2NWVjMTBkYzBlNzY2YmVjN2ZhMTYxMjg3MSBsZWdhY3ktdHJ1bmsKKzIzMjUwIGIwN2NiNTFkNzMxYzg3MTE1YTE2MjE1NzBmM2M5ZjgxY2NjNjgyZmQgbGVnYWN5LXRydW5rCisyMzI1MSA2NDZlMjQ3Mjg4NTIzYjhlYzkwYTBhNzRlMjlmMjI3YzJiMWRmMDRhIGxlZ2FjeS10cnVuaworMjMyNTIgOTQxYzI4Njg2MDM5Njg0ZjAyMThjNzkwNDdiNGZiMDNhODZiYTNjOSBsZWdhY3ktdHJ1bmsKKzIzMjUzIDhhMGM5NzQ1M2RmNDgzNWQyZmJjZmJhMzI0ZDkyMjgyNjk3ZTExYTEgbGVnYWN5LXRydW5rCisyMzI1NCAxZjRlMjYyN2I2MjcwMTFkNDNiMTAyNDNmY2ExZjY3MDZkNDQ1ODU5IGxlZ2FjeS10cnVuaworMjMyNTUgMzRhZjE5ZGNlZjU5M2YxY2FkMGU2N2U5OTMzZTkzNGY4MTMyNTZjMiBsZWdhY3ktdHJ1bmsKKzIzMjU2IDdmZmUyNzZhNjg1NGM4MzIyN2QyNGQ1ODAzYmYxZDFiZjYyYTYzMDIgbGVnYWN5LXRydW5rCisyMzI1NyBiMGFmYjY5MTM0MDFhYTc0YWViYzk2MmFjYmE1ZjA4NzViZjFjNTY2IGxlZ2FjeS10cnVuaworMjMyNTggYzdjYWY3OWY1MTQzM2Q4NmJjNGI5NTE4YmVkMGZmZDQ0ZTY0YWYyZCBsZWdhY3ktdHJ1bmsKKzIzMjU5IDM4MTVjOGFkMDJkMDMzNDA5MWUyMDdhODZkMDk5ZDZiYmZhMjcxMjEgbGVnYWN5LXRydW5rCisyMzI2MCA5YzhiMTk2MTUwMzQxMzQzNTYwNGZhYzJlNDY3NmU3ZmM4NGRmZTg0IGxlZ2FjeS10cnVuaworMjMyNjEgMmE3YjRkNDQ2MGQzZWJlODZiMmQ5M2VkMWY5Nzc4MDBhM2Y1NGY2ZSBsZWdhY3ktdHJ1bmsKKzIzMjYyIDU2ZmZlZTFlZWVlYzRmOTkwZGExMmZlYTRiZjEzOWI3YjkwNzIwZmEgbGVnYWN5LXRydW5rCisyMzI2MyBlZDE4ZDQ0MzlmMDg0ZjI5ZWQ5NjJhOGI5MDIxYTY5ZDU5ODU4ZDdmIGxlZ2FjeS10cnVuaworMjMyNjQgMGZlMzE4YTc4OTkwNDE0OWZjMDI4NTVhMmM5MjM3ODRiNjNhZDk4MCBsZWdhY3ktdHJ1bmsKKzIzMjY1IGQwM2MxOWRiMzA5NDc3YmViNDRlOTNlNWQ3Mjc1ZGVkMGNlMjBhYWQgbGVnYWN5LXRydW5rCisyMzI2NiA3NWI3ZThiZGIyMWVmNjA1NDVjOTZlYTgxYzAzMWY5ZjYxOTkzNWUxIGxlZ2FjeS10cnVuaworMjMyNjcgM2ZhYWJmNTRiOGI4M2QxMjVkZmNlY2Q1YmE5NzUyNDA2YzA0YmYzMyBsZWdhY3ktdHJ1bmsKKzIzMjY4IGUzMTg0ZTQ2MzAzYjU0OTgyOWRlNjgwYTU1NjIxZGM4MDhkMDNkYjUgbGVnYWN5LXRydW5rCisyMzI2OSBmMDIwZGE3ODFiOTE1Y2M2YWJhM2RhNjczMDQyY2JmNmIzZjFjMDViIGxlZ2FjeS10cnVuaworMjMyNzAgY2E3YWYyYTVkOTE1YjljNjRmM2EzMzhlNTk0Mjk0OGYzZmExNTU5MyBsZWdhY3ktdHJ1bmsKKzIzMjcxIDcxODk1ZGQyNjhlMmQwNjM4NDc4NjE1ZmI3OTZiYjYwYzg5N2RmZjEgbGVnYWN5LXRydW5rCisyMzI3MiAwODQ0NmE5ODZhNTYyZDJhYTkwZWYzNTllMTk3NTBkNTdhNGFhNGYwIGxlZ2FjeS10cnVuaworMjMyNzMgOGFhMWFkYTMzZjY0ZTIwMjdiYzRjOTkzMGYyNjRjZmFmMWQ1NmZiMSBsZWdhY3ktdHJ1bmsKKzIzMjc0IDBmZDEyZjkyY2U4ZjBjNjBjNjU3MmNlZjAyMDc0NThjMDc3NmMyNDMgbGVnYWN5LXRydW5rCisyMzI3NSBiNzBjMDg4MTNiYTk3YzI0YWEwNzMwYTNkMGU2OTY0YTE1MTMyMTEyIGxlZ2FjeS10cnVuaworMjMyNzYgNDBjYzY2MjFlZGRjYTA3MjFiZDE5OWU3ZTc5ZGUyZjRmY2E4NGJlNSBsZWdhY3ktdHJ1bmsKKzIzMjc3IDEwOWRlZjRhNWY2ZTk4NTJhNjIyMWIyM2Q1YTk2NThlYzc2YmM3OWEgbGVnYWN5LXRydW5rCisyMzI3OCA3MjlmZGYwNDU0OTQxZTk2MGI5MjNkOWI3ZWFmYjgwNThmMTk1NWMzIGxlZ2FjeS10cnVuaworMjMyNzkgNGY3NDcxNDJlODRjODM5OTI2MGEzMzljZDg1MzkwMThjMDMzYzc4NCBsZWdhY3ktdHJ1bmsKKzIzMjgwIGI3ZWM5ODVkODVjNjE5NmUyMjBiNTIwNDNmZmU2Y2QxMzFmYWY5M2EgbGVnYWN5LXRydW5rCisyMzI4MSA3YzVjZDY4NWMxZGUwMmQ5NzVmMzllMGNlNzRhY2Q3YTFhZWIyNGY3IGxlZ2FjeS10cnVuaworMjMyODIgZTYzZjk3NTYyYTYyOTE0MTZmZWJiNGQ0YzA4YWMwMGFkZTk3NzRlOCBsZWdhY3ktdHJ1bmsKKzIzMjgzIGRmMWI4M2ZkMGViYmRiYjdhZGFmN2QwOWNlMmU2YmY5YTBiZDgzYTkgbGVnYWN5LXRydW5rCisyMzI4NCA0YmJiNGQ5YjRkNzc2NDFkMGQ1OWE5MmNjY2EyOGFmZmNlN2YxZWVhIGxlZ2FjeS10cnVuaworMjMyODUgNjM3OGNiMTE3YjczYmIzMmFlOWQ1MGQ5YzQ1MDRkMjkyYmE1MDVmMSBsZWdhY3ktdHJ1bmsKKzIzMjg2IGU1YTNmOWQ3NzY2YjdkMGY0Yjk0MDFlYzZjNzg4YWY1YzNiYWRlMmUgbGVnYWN5LXRydW5rCisyMzI4NyA1YzlhOTU1ZWYxN2NkYTExNzMwMTJjZGU2MjllMTcxYTNmMTRhOTJiIGxlZ2FjeS10cnVuaworMjMyODggMTA0YjVjOWI4OGVhZTk3ZGRiOGM1OTE2MjM5NGUyMTY5OThlOGM1ZiBsZWdhY3ktdHJ1bmsKKzIzMjg5IDA2MmFjOWFhZmU0N2I4MzBiMzQ5YTRiY2M1ODE5Nzg4MmFiN2EyYTIgbGVnYWN5LXRydW5rCisyMzI5MCAwOTk2ZjA3ZDA0YTNhY2YwZDYwYzE0ZTA1ZmI3ODQxYjExOGI4MGVlIGxlZ2FjeS10cnVuaworMjMyOTEgYWI2MmQxNDdiYTkwZjM1OTc1Mzg4OGQzNTc1M2YyZTE2ZjJjMzJkZiBsZWdhY3ktdHJ1bmsKKzIzMjkyIGU1MjFmYzM3MGJlMjA1MGY0NTNhNmExZTk4MGJkNDQ3MGUwMGRmNGEgbGVnYWN5LXRydW5rCisyMzI5MyA4YTZmMmVlNmVhYmEzMWE0Y2E0NjhhZDdmNGEyYTFhNzJhYjRlOWEzIGxlZ2FjeS10cnVuaworMjMyOTQgM2E0YTAwMzllZGYzMmJmNjkyNThkOWQwZjk5ZGQ1MjlkMmVkNzI2NyBsZWdhY3ktdHJ1bmsKKzIzMjk1IDU5ODgyZTdhYWI4OWM5MTI0NDBkZDdiMTUwOWQzNzJjNzRhZWQxM2IgbGVnYWN5LXRydW5rCisyMzI5NiBjZDcyYjY0YWVjOTc4OWNlZGZlN2YwNzI5ZWU0MTI0NGYxZmVkMmQyIGxlZ2FjeS10cnVuaworMjMyOTcgZTA4ZjQyM2Y5MTY1YzA1Y2VlZDM0MDMxNjkxYTRkMWJjNjU2OWRhYSBsZWdhY3ktdHJ1bmsKKzIzMjk4IDY2YmIxMGVlNDk2MTJiOTE2MGRiN2Q5YWFiMjVhZTU3Mjg1ZWFmNjQgbGVnYWN5LXRydW5rCisyMzI5OSAxOTI5ZmM2OTZhMDQ4NDFjM2Q2MWRlZjk5ZjkwNzVkYjZhZmVjNWVkIGxlZ2FjeS10cnVuaworMjMzMDAgN2I4YzExNzM5NzE0ZDI3MDA2NDZmNjNjYjJiN2MwMWFlZWYwMzMxMSBsZWdhY3ktdHJ1bmsKKzIzMzAxIDliODE4YWYwZDczMGU5YmMwYTU3NjhiYmU4Y2FjNWMyNGVhODY2NjQgbGVnYWN5LXRydW5rCisyMzMwMiA0YzVjZDNkMWNmNGI1YmMzYzgxZDI3Y2JlOWE4ZmU4NTc1N2VhZDMyIGxlZ2FjeS10cnVuaworMjMzMDMgNjMxMDgzN2NhNTM0MzkxNzdhYTQ2N2ZmOTA0YmVhYjQ3YzkzM2EzYiBsZWdhY3ktdHJ1bmsKKzIzMzA0IDFhNThjNzQ2NjJlOTNkNjRkODY2OWU2N2UzYjI2MzJiMzUyZGU4MDQgbGVnYWN5LXRydW5rCisyMzMwNSA2ZTkzYTE1ODY4MDBhNzlhNWVmNmIwZmQ0YjdiOThiOGFiOTAwMGIzIGxlZ2FjeS10cnVuaworMjMzMDYgNDk2NmNmNzkzYjQ0YzA2MjM5NmY5Y2IyMzFjZjljNjI3OGU2MjVjZCBsZWdhY3ktdHJ1bmsKKzIzMzA3IDBlZTg5MDNkM2ZlZDAxNzEyN2NkMTQyYjg2MjBhMWY4NGJiYWQyZTggbGVnYWN5LXRydW5rCisyMzMwOCBiZmQ0ZTAzYWQyMTJkMjQ5ZGY0OTdmZGY1ZjgxZmUxZWNmNWVhZmQzIGxlZ2FjeS10cnVuaworMjMzMDkgOTIwYzYzY2ZjYTBjZGUzMjgyYWQ1ZmRiZWM1NmRlYzQwYzQ4YzZlMSBsZWdhY3ktdHJ1bmsKKzIzMzEwIDg4YTAzZWE1NzcxNGY4ZjE1NWRmYTdlNjI0MWUyZWEwZTIzMWIwOWYgbGVnYWN5LXRydW5rCisyMzMxMSAzM2VkYzk5ODYxYjkwZDRkM2Y1YTQxMDRhOGYzMWVmYjM3YWM3YjJjIGxlZ2FjeS10cnVuaworMjMzMTIgNWIxYWQ3YWNhYmI1YmM1NGNlZGQ5NDRmODI4NjVlZTc0MmZjZmI1NSBsZWdhY3ktdHJ1bmsKKzIzMzEzIGMyYmYwYjEzMzgwZTMwNGYwZDY2MDk3NjllOTQ2ODNmNTJhNDkzZjMgbGVnYWN5LXRydW5rCisyMzMxNCBkMmQ4MzViMzVkNDc1ZTViNzVkMmY0YTMxMDZkZjBjNGQxYzU1M2VkIGxlZ2FjeS10cnVuaworMjMzMTUgY2NlYzAyYmZlOWEwNThmNjQ0OTY4ZWFkYWM1ODY2YTU2MGJlNjBiMCBsZWdhY3ktdHJ1bmsKKzIzMzE2IDJjYWRkYjgyZmZlYTJmNTNiYjk4YWYzNTQ3NGVhNmQ1ZjUwNWU0OWQgbGVnYWN5LXRydW5rCisyMzMxNyA2MzkwMTM5YWQwODI1ZGNiMWRhZGI3MmVjYmMxMzUyYjY5NGEyZWFjIGxlZ2FjeS10cnVuaworMjMzMTggOWE1OTliMWQ5ZDFjODRhNzc3OGNlZGU1NzMyZDE0YzliYzE4OTJhNCBsZWdhY3ktdHJ1bmsKKzIzMzE5IGVmMzAzNGE2MGEzZWMyZWYyOWRiYjIwZTQzMDNhNDI1ZmJlYWVhMTMgbGVnYWN5LXRydW5rCisyMzMyMCBmODQ2OTFiMTE0MDI3YTlhOTkxOTcyYmQ3M2I5OGQyYjQxNDc3MzFlIGxlZ2FjeS10cnVuaworMjMzMjEgMTRjODNjZjdmMzM4MmUyZmMwZjBiMTk1MGU1NjliNWNjODliZDc1NCBsZWdhY3ktdHJ1bmsKKzIzMzIyIDI5OWY1ZmNiMGJhODBlY2RkNmQwYmE2ZWRjYzY2OTBhYWU2YjMzYzAgbGVnYWN5LXRydW5rCisyMzMyMyA2OWU4MjA2MjRjYmMzMTZhMzllMTg5NWUwZWQwYTNkOWQ5ZGEzODEzIGxlZ2FjeS10cnVuaworMjMzMjQgOTBhNGYyM2FiZGE3ZGNmMDYyZDFlMzVjYTQxMjJlM2NhZTU0YzgwMCBsZWdhY3ktdHJ1bmsKKzIzMzI1IDkzOTc3ZjE3NTUyZDU4ZTgzOTNjZWMwMDM2N2VkOTQwY2MwZjZkNjQgbGVnYWN5LXRydW5rCisyMzMyNiBlMDFkZThiYzU4MTM3NzhhZjhjNTc2YzlmZjJhMzIwYWEwYjdhNjcwIGxlZ2FjeS10cnVuaworMjMzMjcgMzk5ZDc3N2FmMDQ4NTEyNjdkZDA3MDQ0ZTIwYTFiMzlhYjk1ZjBjMSBsZWdhY3ktdHJ1bmsKKzIzMzI4IGQ4YWJmOWNlMzIyNTMyNTY3OWNjMzg0N2FkZWM5Y2NkMjFkMzhlZjkgbGVnYWN5LXRydW5rCisyMzMyOSA1MTE3NzZkNmQ3ZDg2ODVhODZhNDI5NzE1MGJlMzA2YWE5NGEwZmIwIGxlZ2FjeS10cnVuaworMjMzMzAgYWFlNWNmN2U1ODYxNWM0N2NiMTVmYzg1OGQ3MWJkNGEzZDczMjc3MiBsZWdhY3ktdHJ1bmsKKzIzMzMxIGQ5MjUwZDViNzlhNzU5MjZjYjFiNjUyMjZiYzNkYzg2MTBhNTYzMmIgbGVnYWN5LXRydW5rCisyMzMzMiA4ZjE5YjJhOGM2M2M2Nzc5NzBkMjc0OTY3YzBkMjE1MmQ4MmIzNDRjIGxlZ2FjeS10cnVuaworMjMzMzMgMDA0Y2RlZmI3MGQxZjlkYmNmMmQyOTU3ZDI0OWU2Y2YyM2E1N2U0NiBsZWdhY3ktdHJ1bmsKKzIzMzM0IDkyOThmZWU0NDZiNzc0MGFkM2ZjNmNhZjM0ODA5MGVkY2Q0OGYxYTcgbGVnYWN5LXRydW5rCisyMzMzNSBmNDhhNDFjOTcwMjE1Njk0MjI1YTI5NjVhNDliZTFjZWI1Y2NjZDJjIGxlZ2FjeS10cnVuaworMjMzMzYgNDM5N2ZhNTE1MmZhNDE2NjgxYjY1MjZlMWFmYzIzMzU2ZjY1ZjZkMCBsZWdhY3ktdHJ1bmsKKzIzMzM3IDE4ZGYzMmY2Y2VhMTNlM2UyN2ZkZjRkYTE0Y2YwMDIyNmU0ZWE3ZmMgbGVnYWN5LXRydW5rCisyMzMzOCBmZGZjMThkNTU2MTUzMDg5ZDExZTUwOWRiYTM3OGI3M2ZiMWZmYjkyIGxlZ2FjeS10cnVuaworMjMzMzkgNDhlOTNlZjNjNWI3MGI4ZTQ0M2I3ZDBjZTYxNmQwN2IxODUxNTA1NyBsZWdhY3ktdHJ1bmsKKzIzMzQwIDMxOTJhMzJmZDQ4ZjZjNGM5ODliZDE3MGE0MjBjZTVmZTkwMzE4MjAgbGVnYWN5LXRydW5rCisyMzM0MSBkYWQ5NGNhNDdlMjEzOTE0ZTQxMWFkNDUyOTljZmM3ZTdmZjUyNzhmIGxlZ2FjeS10cnVuaworMjMzNDIgYjQxNjFjZTU4NWU2NGNhMWM5ZDIxZWQxYWI5YWE0ZDgyZmVlY2U4NCBsZWdhY3ktdHJ1bmsKKzIzMzQzIDM4NmZiMjZlMDg3NDdlYmY1NWVmMjBiZWI4ZGFmNDJlNWVjYzI3MTggbGVnYWN5LXRydW5rCisyMzM0NCAzNzE5YmE1ZWU4NDQ2YTZkZDIzMWRlYTdlNGVmNTNhYWMwYzE3NDRjIGxlZ2FjeS10cnVuaworMjMzNDUgOTMzYmY2OGUyNjUwM2E4YzJiMzZjMTgyM2MxYzc3ZWMyZDdhN2ZmYSBsZWdhY3ktdHJ1bmsKKzIzMzQ2IDQwZDRkMWNkNmM4NGE0MTYxNjZmNmNlMjk5OGQ0ZTRhM2UzNjQwZmMgbGVnYWN5LXRydW5rCisyMzM0NyBiNTJhNjMwNTIzMDY4NjliMmY1ZjU2OWQ0OTI1YTU1MTYzZjMyOGRmIGxlZ2FjeS10cnVuaworMjMzNDggYjI4YzA3YTFiNDBkZjk5ZTUxMzMyM2MyZTJiZWNmNzc4YTc0YTBmYiBsZWdhY3ktdHJ1bmsKKzIzMzQ5IGQ2NThhMTVhOTBhZDk1OTI4NmE2MjcyZWY4MDVkNjBhZTFjYmYzOTcgbGVnYWN5LXRydW5rCisyMzM1MCAyODljMWE3MDAyODY0Yjk1YzNmNTllY2EzNDYwZjIxNTM0OTZiNzQ5IGxlZ2FjeS10cnVuaworMjMzNTEgMTlhYmMzMzlkM2ZjZjJmMWJhOTJkYTMwMjczOTZjNzcwMTc5ZWMxOSBsZWdhY3ktdHJ1bmsKKzIzMzUyIGEzODFhYjBmOWQyODNiYmFiMjY2Yzg4ODRjYTFhMzM2MTM5NWEyYjkgbGVnYWN5LXRydW5rCisyMzM1MyA1NmJkZDkwYzlmZDZkZDg2NjZmNzQyNzNhOGIwMDI1YmI0MTM5N2MyIGxlZ2FjeS10cnVuaworMjMzNTQgODE5YjZmZjdlNTZhNmI1ZmM2MDE4NDZmYWEyZTUzN2RjN2YzOGE3OCBsZWdhY3ktdHJ1bmsKKzIzMzU1IDJhNjhjNmUxZjljNTRhOWRhYWMyNjdkN2RjOTcxNWQ2NjkxYmY0NzcgbGVnYWN5LXRydW5rCisyMzM1NiBhYjFhZjFjYTAzMGM1YzViYzQwZGE0YjBiYmNmMGI0ZTFmYWI3MzllIGxlZ2FjeS10cnVuaworMjMzNTcgNjAwOWQ4NTlmYjU3M2VjYjBiYWYyYzBkOGZmZjZlMjM5MzY1NGE3NiBsZWdhY3ktdHJ1bmsKKzIzMzU4IGQxOTEwMjIzYjI0N2RmM2QzMDFlMzM4Y2VjMWRjNmU3YTQ4ZmQwYWUgbGVnYWN5LXRydW5rCisyMzM1OSA4YTE2MTRjZWIzNzc3ZWMwYmFlMGM1YTE5NGJkYjdhOWFmNmYyNTYzIGxlZ2FjeS10cnVuaworMjMzNjAgM2RmNGI4Y2RiOGM2ODc5YzBiZWJkMDA3YTgxMzAyODdkZTBhZDIyZSBsZWdhY3ktdHJ1bmsKKzIzMzYxIDhmMjVlYzAxMDE4YjVhODY1ZDY1NzQ5NDVlMjZiNWZkNWY0NjE3YzcgbGVnYWN5LXRydW5rCisyMzM2MiA4MzIxNmNhNjdlYmVhMWIzNDBlZjYzNzc0MjRmY2QwZDM5ZmU1MDNiIGxlZ2FjeS10cnVuaworMjMzNjMgMzM0YmYwYmFlZWI3ZWI5MWEwZTU5NTY0MzFmNmYzZGU4NDNlMWE1OCBsZWdhY3ktdHJ1bmsKKzIzMzY0IGQ3ZDg0ZWFlOTJiYTBhMTI5YjE2NzExMzQ5ODYxNGY3ZTk0YTEzZDUgbGVnYWN5LXRydW5rCisyMzM2NSBiZWZhNzI1OGMyMDBmMzhlODllMTVhM2VlNmY1NWNiMGM4YzY0NDc2IGxlZ2FjeS10cnVuaworMjMzNjYgODBlMzZkYWIyMTExN2E0NDBiMWZkN2E5Mzg0MmYzNTI2OThkMmM3ZSBsZWdhY3ktdHJ1bmsKKzIzMzY3IGU4YTI5ZDIzYzcwYThkM2NiY2ZiMDAzMjNjYWQyZTdkNjBmZWVlNjcgbGVnYWN5LXRydW5rCisyMzM2OCAxMmE3ODdmYjcxZGYzNTI2ZTAxODdlZmRiYzM3ODM5ZDIyMjE1YTU4IGxlZ2FjeS10cnVuaworMjMzNjkgMjMzZjk2MDZiYThlMjRlMDMyMTc0ZjE3ODBiOTNkMTFhNTE4ZDViNiBsZWdhY3ktdHJ1bmsKKzIzMzcwIDhlYzk1Y2U3ODczNTgzNjZhYmJmZWRiYzZiNzZkMmQ0MjQzYWU3MGEgbGVnYWN5LXRydW5rCisyMzM3MSA1NTg3NGQ4ZTBkZmJhOGEwZDZjYTU4YTJmNWM2NjBjMTNiOTFmZDFhIGxlZ2FjeS10cnVuaworMjMzNzIgZTAyNmY1MTdmNjU1YjQ1MDk2MDJkZDAwNzI4Mjg1ZTYyMzQyNzE1OSBsZWdhY3ktdHJ1bmsKKzIzMzczIDhjMzcxNDM1ZjY5M2MwZmJlNmQ4ZmE4NzQ3ZGI5ZWM5NzNlZDBlOTQgbGVnYWN5LXRydW5rCisyMzM3NCBiOWY2MGI4MjUyNjFhMGY5NWQ2MzA4NDA2MzNmZWEyYmI0Y2EwNTNiIGxlZ2FjeS10cnVuaworMjMzNzUgMDE3NmY2MWFmODQ1ZDRjOGNmMmJkMmE1MGY0OTQ3MGRjZGQwNTRjZSBsZWdhY3ktdHJ1bmsKKzIzMzc2IGY4MjJiMzU2YzNkOWRmYTgwYTViNmRiNDk0NmE3NzNmMzNjNWUwMjIgbGVnYWN5LXRydW5rCisyMzM3NyAwOTgxODY2MTNiMDU3ZDgxY2FhMGVmODQzZjUxZDgyODk0ZjYxMGI1IGxlZ2FjeS10cnVuaworMjMzNzggYWVkNjIxMThkNjMyZTg4ZDM1YmJmNmQyNzc2YzQ0Yzc0OTExNGZlMyBsZWdhY3ktdHJ1bmsKKzIzMzc5IDljMmI5Yjc2YTA4ZTNlY2Q5OTY4MjZjZjRmZDhlN2Q1YWQxYzE3MGMgbGVnYWN5LXRydW5rCisyMzM4MCAzYmNkYjUxOWFiZjg4MTEyOTI5ZDIwZjYyNjQ3ODc5YjBmZTRiYmI5IGxlZ2FjeS10cnVuaworMjMzODEgM2ZiMjkzZmExN2M1NDY4NDg5ZmVhY2IzYjYyNzkwYjNhMDM3YmU5OCBsZWdhY3ktdHJ1bmsKKzIzMzgyIDY5NzIwNmU3NDc2MzliMThhYTk0YTc4ZGVlODBiNTA2ODUwNTZiY2EgbGVnYWN5LXRydW5rCisyMzM4MyBmZGZjZmZjMjE1MmM2MGVhYjYyMzdlZWViYWZhNWVlMTNhMTk5OWZiIGxlZ2FjeS10cnVuaworMjMzODQgZTNhMmU2MDc2YmM1MjY1MGEwMmI3YWFkMTgwMmJmNzE2ODczYzVlYiBsZWdhY3ktdHJ1bmsKKzIzMzg1IDczZmJjYzk1ODI5NWYzOTU2OWUzYjUwNTNiMDk1NjEwZmUzZDQxMGYgbGVnYWN5LXRydW5rCisyMzM4NiBhMjc2YWU1ZmU4YzMwMjliMmQyOThlNzkxMTY3MDhmOGY0MTZjZmJiIGxlZ2FjeS10cnVuaworMjMzODcgYmEzNzE0MTkxYTdhMmYzZWViZGEyYjdhMDQxYTRhNGRjMDVjZDU2NyBsZWdhY3ktdHJ1bmsKKzIzMzg4IDQ0MWIyZTE1NTgyNmMxOGVmNzI2OTAzYTQ2ZTZiNGNhNjNhMGFjNzggbGVnYWN5LXRydW5rCisyMzM5MCBjZTI3ZDljMGMzNTgyMzE1NGFlZTlhZDZjYWZiNzE2NzU1ZWFiNzQxIHIyMmE0LWJyYW5jaAorMjMzOTEgYzI3ODJjMzVlNzJkNzQ1YjM1ZmMzZjBjOWJiODliNjc3MzZhODYxYiByMjJhNC1icmFuY2gKKzIzMzkyIDNhYWM5MTZjMTUwNWM3ZGI3NmY4ZGIwNmExNTkwODMxYzNhMWU5ZjcgbGVnYWN5LXRydW5rCisyMzM5MyBhOTdmYmM1YjE4YjZmYzExYzk4MGM0OGQyNzZiYzBiYjgyYTE1YTNlIGxlZ2FjeS10cnVuaworMjMzOTQgZmNjMjE2YzU4Yzg3ZmEyYzYyMDE1YWMzNjI4MDIyMDdjYWQwOTYxNyBsZWdhY3ktdHJ1bmsKKzIzMzk1IDcyN2I5NWRkODY4ODYxMTVhMTVjYjk1MjlmNjU3ZGEzYzFjYjQ1ODcgcjIyYTQtYnJhbmNoCisyMzM5NiAxYzUyOTEyODA1NGM4YzIwY2UxYTU5Y2QyOTJhOTljMDhlM2I5NzgxIGxlZ2FjeS10cnVuaworMjMzOTcgODMyNTZiZWYwZDc1ZTMxMzVlNDg3MTRhNjlkNjY3ZmU1ZjAyMWFkNiBsZWdhY3ktdHJ1bmsKKzIzMzk4IDcwZTU3Zjc1OTQwMjdkMjhmOGZjZDQ0YWIxNTE4ZWE2NjkzM2RiNWMgbGVnYWN5LXRydW5rCisyMzM5OSBlYzJkNGY5OWJhZGM0YjcxM2NkMWViMjFjNmJlMTA4OGM0ZjJiMjZmIHIyMmE0LWJyYW5jaAorMjM0MDAgNjg5MDA3MTg3N2RjODYwY2RkOTYzYTRkYTc0NWUxYWU4Zjk5YWE4ZiByMjJhNC1icmFuY2gKKzIzNDAxIDIyNWYxN2VjODkzMjNhOGIxN2I4OTUwY2U5OTFjNDRiOWVhYzVlYTAgbGVnYWN5LXRydW5rCisyMzQwMiA5NTYwZjg2YzRmYTRhN2YzMGQzNDkzN2M2NjM3MWJjNDdkMjQ5YWM1IHIyMmE0LWJyYW5jaAorMjM0MDMgY2E5NWJjZTVhMzNlZmZmN2I4YjNjYThhZjUzNTYxODJhMTg4MjA3MyBsZWdhY3ktdHJ1bmsKKzIzNDA0IGJkZTlkZWI1OWQxYmMwOTU3MzFlYjdiZDZiNzllYzU5Nzk0MTAzY2EgcjIyYTQtYnJhbmNoCisyMzQwNCAyYWM2YzMyZmMyMDZkZjkxNGRjMmY5ZDQ1NmU3OWM1OTY1MzcyOGI2IHIyMmE0LWJyYW5jaAorMjM0MDYgODllNWYxMGM5Zjk5NDAwZjI4NzBlZDg3MGI4NmI5M2E0M2Y1Y2I3MCBsZWdhY3ktdHJ1bmsKKzIzNDA3IGI5NGJjN2VjN2JlODUxZWJlZjRkZjM0NDRmYzI5ZWY1Njc2NGZmZTMgbGVnYWN5LXRydW5rCisyMzQwOCBlNzhjOGY0ZTJiOGM5NDM1NTMzMDRlMmJmMmIxZGJjN2EzNWQwYTEyIGxlZ2FjeS10cnVuaworMjM0MDkgYzZmYzg3ODEwNTUxNDNjMDQzZWQzZjllY2YzZGQ1MDNkYTU5MzI2ZiBsZWdhY3ktdHJ1bmsKKzIzNDEwIGI1Y2M1ODZhYzI1YWVkMGQ4MmYwNjAxZDVjOWEwYTIyY2IyNTNmYTcgbGVnYWN5LXRydW5rCisyMzQxMSA4OGRhMzhhNWYwYmY1YTg1MjYyZjY0ZmZhZmNjNzJkMGM0YTY3NDJjIGxlZ2FjeS10cnVuaworMjM0MTIgMjA2YjI1ZmViZGUzY2VhMDAwNDQ0NWUyNmViYzU1ZmIwNzM3ODVjNiBsZWdhY3ktdHJ1bmsKKzIzNDEzIDFmNGQ5OWU3YjFlNzU0OTljYzM1M2JlNWE4ZGM3MWY5ZWJhZGEzOTQgbGVnYWN5LXRydW5rCisyMzQxNCA1NzA3ZGE5MDA5MzYyOWJmZjZiMWJmZmZmZjUxNzMwYTMxMTUzNzJkIGxlZ2FjeS10cnVuaworMjM0MTUgYzhmYjAwZjVlYjVlNWRhOGU5YjQwOWQ5NTBjNGNlN2ZkZDhmZjBjOSBsZWdhY3ktdHJ1bmsKKzIzNDE2IDcyYTUzNDdkMmY5YWQ5OWU4ZDkwNGQwNDg4NTYzZjNjZDgxYTQ1M2IgbGVnYWN5LXRydW5rCisyMzQxNyBjNjhlZjQ3YjE3MDlkYWU2NmRhM2FjZmRjNzUzZTI1NmVjY2FkOTlhIGxlZ2FjeS10cnVuaworMjM0MTggZDVkMDAwODYyYTY2OWE5ODQ2NDYwYzdlMTIwMzcxZDUxMTc5MmIxMSBsZWdhY3ktdHJ1bmsKKzIzNDE5IGJiYjM1M2QzMWUyNTQyNWM4ZWNkNmEzNGM0YjBkYWFhMGFhMTIwMWIgbGVnYWN5LXRydW5rCisyMzQyMCA0MTZmMGJjMjI4ZThiOTQ1OTc5ZDg5NDE1YjY4Njk3ZDFhMWVkNGM4IGxlZ2FjeS10cnVuaworMjM0MjEgOGJhMzI4NzE4M2UwNWJlMWFkNjE4OWI5MjljMDBmZmI4NzVmNmQ4ZCBsZWdhY3ktdHJ1bmsKKzIzNDIyIDJjOGE1YTE3MmY0N2JiMzVhODVhMTBkNDVkYTgyYWQ0YWFlNTIzZDIgbGVnYWN5LXRydW5rCisyMzQyMyA2ZmY1MzE0MzViMzRkYzcxOTg0ZmFkZTAyMTc1OGQyMjJjNzE2ZGM2IGxlZ2FjeS10cnVuaworMjM0MjQgYmVhNjg2NDQ5NTk1NjM1NDgyYjA0YmJlYjhmYTQ2OGNiMzI0NDcxNiBsZWdhY3ktdHJ1bmsKKzIzNDI1IGVkYjBiODA1ZTU0OTg4OTBhYjAwYWE1MmY0MGFhOWU5M2Q5ZTlmZWEgbGVnYWN5LXRydW5rCisyMzQyNiAzYjM1NmY3NzkyMmQ4ZGI1ZDEzMzgzZTczZDAxZjY5NjA2NjM4OGE5IGxlZ2FjeS10cnVuaworMjM0MjcgNDcwYzFjNzJhMGE3YTVmMGI5YmEwNDkwYTRiYTQ0N2MzNjM2MTRiMSBsZWdhY3ktdHJ1bmsKKzIzNDI4IDViNGY3MzIxZDljYmY4MWI2YmQ0NTFhNjVhYWNhZTk0ZTY0MmUzOGEgbGVnYWN5LXRydW5rCisyMzQyOSBkYjgyYzBiNDBkZmM0MGZlZTFiZWRkYjVmZGUzNmY2MTI2ZjgyOGQ5IGxlZ2FjeS10cnVuaworMjM0MzAgNjUwOGFkYmQwYmIxYmIyNjYzNzRkN2I0OTcyMzg3YzdlNWQyNjEyNyBsZWdhY3ktdHJ1bmsKKzIzNDMxIDAwNmNmYWFjMDI5YTc2ODRiYzdiYjE4OTM0NjQxZDllZjI2ZjU2MGYgbGVnYWN5LXRydW5rCisyMzQzMiAwOTFlOWUzY2VlYWYwN2I0MjlmYjE1MTFjNGVlY2E1MDUxMzQ0Y2YzIGxlZ2FjeS10cnVuaworMjM0MzMgYWJkNmEwOGIyYzMyNzFhZmQ4ZjA0NGIyMTkyNzJkMzQyMGE3NzBmZSBsZWdhY3ktdHJ1bmsKKzIzNDM0IDVmYjA2OTFmYjY5MDM5MWUzN2MyMTdjMTlhOWIxMjQyMDMwZDA2NGUgbGVnYWN5LXRydW5rCisyMzQzNSA4MzEwNjYzM2Y5MzMzNGY1NzI4Njc0YTdlMzhkMmJmOTIxNDMyOWM0IGxlZ2FjeS10cnVuaworMjM0MzYgZGUzZTg1MTgxOGE0MzI3ZmI5OWNkMGM1ZjNiN2Y5MTE3MDNkNWQyNiBsZWdhY3ktdHJ1bmsKKzIzNDM3IGYxMDA3OTNjYTlhZmM3MGZjM2ZiOTgwYjgxYjkyODY0MWVkNDNjNWYgbGVnYWN5LXRydW5rCisyMzQzOCA4Zjc5ZmE1MzdiZDI0YjMwYTM4YzE5NzVjYTY5MDVkNjM2NjY2Zjk3IGxlZ2FjeS10cnVuaworMjM0MzkgZmVmMjg5ZDY2ZThlMTU4MjMxMjlhN2M3NzVlNDU1ZmJlYjNmMzUyNiBsZWdhY3ktdHJ1bmsKKzIzNDQwIDc1NGI4MTYyODRkMTM4ZWVjZjY3ODdjY2JhZjgzZDc5NDYxNWY0MWQgbGVnYWN5LXRydW5rCisyMzQ0MSA4Nzk5ZGZhMGY3NmFjNDdjNTEyYWY5YzJlNWRiZmMwMmRkNTk2Y2YyIGxlZ2FjeS10cnVuaworMjM0NDIgMDFhNWM0M2YxODk0Y2RmMWMxMzZmOTc3NjU3OTMzMDk3ZWJkYTVkOSBsZWdhY3ktdHJ1bmsKKzIzNDQzIDVlY2MwMmMxZWRhYzNhYzY3OTYwZGI5YzA2ZWUzZGZlNjM3ZTQzMDMgbGVnYWN5LXRydW5rCisyMzQ0NCA3ODRlMjFiZGQ5YTJmOWRkYTM0ZmU2YzM2MjEyMDYzNTNmN2EyZTdmIGxlZ2FjeS10cnVuaworMjM0NDUgOWRlMjkxNjk0YjFlMWJkMWNmY2NkZWE3YjJjZWU2MDBlOGM4OGUzMSBsZWdhY3ktdHJ1bmsKKzIzNDQ2IDZkNzNiNTRkOTIwNTIwMTRlMjMxYmE5NzljYjM5YjY1MzU1MDczOTggbGVnYWN5LXRydW5rCisyMzQ0NyBjNmI2MTg5YTgzOTc2MDhjNjQyNGRjODQ5ZWIwYzVkZmI5YzQ1ZTUzIGxlZ2FjeS10cnVuaworMjM0NDggNGM2OTIyZjI2NmYwNzk0ZmE4MDE1NTJiOTQwZjc1ZDM1ZjZiNDFkOSBsZWdhY3ktdHJ1bmsKKzIzNDQ5IDhkNzlkYjAxYjJiYTI1ZGI4ZWUxYjkyM2Q5YThhNDUwNzA1MGQ4OTAgbGVnYWN5LXRydW5rCisyMzQ1MCBjNzgxN2I2MDc0YjU4MDQ0Y2E2OGI3YzkzYzFiMDIyNGZlMTkzNzlmIGxlZ2FjeS10cnVuaworMjM0NTEgOGU0ZTQ5MTA1NTk1NGJiZjY3YjA0OGE3Yjc0NTgzZDdlMzE1ZjAzNyBsZWdhY3ktdHJ1bmsKKzIzNDUyIDZkZGE0OThjY2NjNDg1NWEyMmRmMDMyNTJiMzFlNWY2NTk0ODU5NmQgbGVnYWN5LXRydW5rCisyMzQ1MyA1OGI0Y2ZhNTQ4NzE5MWMxZmIyZjgyZjBlOGJhMDE5OTkzZDZiODQ1IGxlZ2FjeS10cnVuaworMjM0NTQgNTY0MmQzN2YxYjE2MWQ1NTUzNTg0N2M5MTMyOTUzMTA0OTQxN2E4OCBsZWdhY3ktdHJ1bmsKKzIzNDU1IGU5NDZjNWQyZmUxNTFmNWIxYjI3NTFkODNiMGE5MGZmOWYzZGZkYzQgbGVnYWN5LXRydW5rCisyMzQ1NiA0OWExM2U2ZTkzNWRiMjk2NmEyNWVkMTAzNDQxN2UwYzY3MTQ4MWFlIGxlZ2FjeS10cnVuaworMjM0NTcgYmU1NDhkNGJlODg4ZjQ3ZWVjODY1OTBjOGJjODIxOTIyY2NmZmUyOCBsZWdhY3ktdHJ1bmsKKzIzNDU4IDIxMDYwMzE4ZjUzOWFmMDk5YWE0YzcxNzYxODI5ODM1NWNmNTdlYjYgbGVnYWN5LXRydW5rCisyMzQ1OSAzNDA4ZDkyOWJiOTQwYWQ2MTBkMmI2OTRkNjZjNzkzOTAzNTAxNTM1IGxlZ2FjeS10cnVuaworMjM0NjAgNmRlNGVlNDc3OTQ5ZjhkNzg2Mzc0MWYzOTQxODUyYzIwMzEzMDRkNiBsZWdhY3ktdHJ1bmsKKzIzNDYxIGI0ZjBmMTBhNmM1ZjRkMzcyMTI1MThjNjJmMmFhNDI1M2Q4ZGFkM2EgbGVnYWN5LXRydW5rCisyMzQ2MiA1NzhjMWJiNzI4Mzk5MjU2NTk2NGEwOGIxZTRjODk2MmY4NTczNzk0IGxlZ2FjeS10cnVuaworMjM0NjMgNzJlZTU3MzQ3YWVhNjUzMzQxYWM2Zjc1YzczYTEyZTFiOWU5ZTc4YyBsZWdhY3ktdHJ1bmsKKzIzNDY0IGY1ZDc5MWMyYWNjOTUwZWViOGVmZWM4NTVmZjIzMTU0YjczMmUxMDEgbGVnYWN5LXRydW5rCisyMzQ2NSA3ZDVhZTdkN2M3YTk2MzZlYWM3YzJiZGQwZWU0YWM0MjJkYzNkNTE4IGxlZ2FjeS10cnVuaworMjM0NjYgZTVjM2NhN2I1MDk5MjRiNWM0NTgyMTcyMDEyZmUzM2JmNTFjZDEzZSBsZWdhY3ktdHJ1bmsKKzIzNDY3IDk4NzNjOTljNDNmNzUzNjc4NzQzYzRjMzM5ZmY2ZWQ4YjY5NzQyMTQgbGVnYWN5LXRydW5rCisyMzQ2OCA4ZTZmNjA0YjA3OTkzN2JhODc0YzE3ZTc1MmRjMmQ4YTIyNmQ2OTM1IGxlZ2FjeS10cnVuaworMjM0NjkgMDAxNTJlNjg3NDVhNTE4ZGZlMmU1MmY2NTg5YzEzNGY0YTc1ZjEyNSBsZWdhY3ktdHJ1bmsKKzIzNDcwIDIwYmE0MmNjYjM2ZjY3NjU0OTJiODg2ODAyZTI0NWFiMzM2OWI0MTcgbGVnYWN5LXRydW5rCisyMzQ3MSBlMmRhOWE5MjlhY2FiNTUyOTBlOWU3NjgyNWJkYzJkNmZjODZmODM1IGxlZ2FjeS10cnVuaworMjM0NzIgYmE1YWFhNmJjMWU1NmI1YmQ3NjExZmRlMDFlOTU2OGQ4MzY3YzNlYiBsZWdhY3ktdHJ1bmsKKzIzNDczIGU3ZWY4ODEzODk0MTlhNjg2NzcwODkyMDIxOWIxN2I0YWY1OGY1MGYgbGVnYWN5LXRydW5rCisyMzQ3NCA2OWI5NDFkMTMxNzY3NTM1Zjg5MWIxMGM5YTAzYWZiYzc3ZTEyZGJmIGxlZ2FjeS10cnVuaworMjM0NzUgYjJmOTU3ZjljNmY0MTNiY2YzOTc5ZjAyMTFjYmE3ZWFlN2Q2Nzg4ZCBsZWdhY3ktdHJ1bmsKKzIzNDc2IGUzZDc1Nzc4NjE5ZTNkYzZiN2VmNjI5YTVmNjU5N2E3M2Y1ZTZiZjcgbGVnYWN5LXRydW5rCisyMzQ3NyBkMDUzNzI2ZmIwMWJkYzY0YWE1OGJhNzQzMDJkOTZmOTNjMWQ4M2M3IGxlZ2FjeS10cnVuaworMjM0NzggOTY5OGI3MWIwMDMxNWFiOWFiNzM4OTViYzRkNjc0MzQyZGI5Y2IxNSBsZWdhY3ktdHJ1bmsKKzIzNDc5IGZhY2UxZWFhNjhjYTliNWFlZWVmZTY4MjY5NTgwMTZjZGE2MDFjNDUgbGVnYWN5LXRydW5rCisyMzQ4MCBhNWEzMzA2NDZjMTMyYWMyZjQzZGU1MGVhYzhhYzNhM2VmMGVlYjhmIGxlZ2FjeS10cnVuaworMjM0ODEgYzBhNmY1Mzc3M2UzNTNjZTkyYTJmYTgxMTM0MjZhNmYzNTBmZWIxOSBsZWdhY3ktdHJ1bmsKKzIzNDgyIGJmNTU3NGY0ZjQxZjc2ZmQ2NGUwYWIzYzFmNzRjY2IwYTE5MmYwY2QgbGVnYWN5LXRydW5rCisyMzQ4MyA1YWNkMmE4MWQ2ZmE3MTQ2NzdhODdlMDIwNTRmMTMxYzE4NWQ1YzczIGxlZ2FjeS10cnVuaworMjM0ODQgMGI5OTE3NGQ2YjE3ODQ1ODc2YmU3ODkzNTVhNzZjZjU0MjM0YzJhNyBsZWdhY3ktdHJ1bmsKKzIzNDg1IGFiYWY5ZWEyZTU2MDcyOTk1MDk2MmM3ZTE3MzdkNGRjZmVjNTVkYWIgbGVnYWN5LXRydW5rCisyMzQ4NiBhNGVmMDNiNWE5Mjg2ZDlkYzkxYjUxMWIwMGQxOWYwODczMGY4NTUwIGxlZ2FjeS10cnVuaworMjM0ODcgYTgxZGIxMjk1YTllMjI3OGVjZmVhMjBiOTc3ZDVjZWRmZmJiMGQ0NSBsZWdhY3ktdHJ1bmsKKzIzNDg4IGQ2ZWFlNjRmZGI1YWMxODYwZjdhZjliNTEzOGFmMDYyYjJjN2IyYzQgbGVnYWN5LXRydW5rCisyMzQ4OSBhYTE4YzBlY2M0ZmI2Nzg0N2VlNDU0NzM5YWM1ZDlkMWI2ZThjYmM0IGxlZ2FjeS10cnVuaworMjM0OTAgYWI1MDQyMDU4YjZmMWVmZWE0MGU2OTUyZDM3ZGQ2NzY1ZWQ5MDhiNCBsZWdhY3ktdHJ1bmsKKzIzNDkxIDkyZjg2NDM2YjZiZTYzM2RhMzBhMzg4ODYwZWQ0YjFmNjIyNGMwMWQgbGVnYWN5LXRydW5rCisyMzQ5MiAxYmVlNDliYzhkOWM1NWVkOWU2MTc1Yzk2MGJjZjdkZjljOWJjYjYxIGxlZ2FjeS10cnVuaworMjM0OTMgOGJhZDU1ZWRmZGYzOTM4MWE2NmFmZmE3Yjc4NGUzMzg1NDQzY2JmMiBsZWdhY3ktdHJ1bmsKKzIzNDk0IDVhMmU3Yzc4ZDQzMzQ1ZWI2YzgyN2M5ZjZkYTc5MTY2NmVkODg3NmQgbGVnYWN5LXRydW5rCisyMzQ5NSA0NjRmOWEwOWE5MTAzOGE5ZGNjODQxMDkxODFjZDA4NDJhYzVjMWIyIGxlZ2FjeS10cnVuaworMjM0OTYgZDQ3ODI0OTRhMWUzYzI5ZWQzMjRlZTU0NjI5YzU0NmQ5OGI2ZWJmMiBsZWdhY3ktdHJ1bmsKKzIzNDk3IDgxMzg2YTcxZWNjZTg2NWM4ODJjN2Q3YTc1MDNjN2M5YWVkYzRmMGUgbGVnYWN5LXRydW5rCisyMzQ5OCA3ZWE2MWRhODc4YWYxMDczZTFlODI1OGQxOTg0OTRlNzZhMzkyMDE1IGxlZ2FjeS10cnVuaworMjM0OTkgYWNmYjI3ODY2MmM2MmMzMjAyMjU5NTA1N2U4MjBlOTQ1ZjFlMzYyNiBsZWdhY3ktdHJ1bmsKKzIzNTAwIDllZTZhOThmMDMyYzMxM2U4ZjA4OWZhNGVlNTUyY2Y3YjhlZjBjOWEgbGVnYWN5LXRydW5rCisyMzUwMSBkMTY3MWRkZWFjZTBiNjQ0MTY2NGZjZGEwODhlOTUxZTFjMTRjNDEyIGxlZ2FjeS10cnVuaworMjM1MDIgZTdhY2EyYTMwMmNkNzEzNDg0NGY5OTFjM2FkNTRiYzBkZmEwM2I1OSBsZWdhY3ktdHJ1bmsKKzIzNTAzIDI3NDVjM2RjMjRhZjI5Y2U0MzA5NmQwNDJiN2JlZGU4ZDBiODBlMWUgbGVnYWN5LXRydW5rCisyMzUwNCA1YzQyNjFlNzQ0NzgwY2YwMDMxMWNhNjgyMWRlZTk4ZTZlZDQyM2VlIGxlZ2FjeS10cnVuaworMjM1MDUgYWZmNmZjZDI2YzE1YzQ3MTMwMWI2ZGE5YzExYWFhNWRjZDk3ZDFmOSBsZWdhY3ktdHJ1bmsKKzIzNTA2IDdjZWRiYWFhMTJlNDc0ZmM1NjgyNzkzMGEzMGFiYjI2M2QxZDlhYzMgbGVnYWN5LXRydW5rCisyMzUwNyAwZTk0MGRhODQ1YmY4Mzc5MDgyYjI0MzYzNTY3YzVjN2Y5MzBiOTU0IGxlZ2FjeS10cnVuaworMjM1MDggMTY2NThkZjg0NTZhNjYyODFiNWZjMGY1NzA3MTJiZjZjOGE5NTg2YiBsZWdhY3ktdHJ1bmsKKzIzNTA5IDcxNjBkNzk1NDczZTkxODNlNzRkZGMxYjI4M2Y5Y2VlZDkxOTBiNDkgbGVnYWN5LXRydW5rCisyMzUxMCBmM2IzZmQ1YWJmYTYxNmRmYTNjNzBlMDM3M2MyODhlYzczNzVhZDIxIGxlZ2FjeS10cnVuaworMjM1MTEgYTRkMzI4ZDUwODk3NTliY2Q4MTg1ZWYyZTUxOWUwNzdkOGY0NjgyYyBsZWdhY3ktdHJ1bmsKKzIzNTEyIDEwYjk3YWU2OTAyNWM2NTRhNzM1YzYzYzM2ODAwZTk5NzNjNjU0OWIgbGVnYWN5LXRydW5rCisyMzUxMyAxYWNlY2M5MDhlZTg2YjRmM2QxMDdjMTllYjdkYzVmODk0MDQ2YjRmIGxlZ2FjeS10cnVuaworMjM1MTQgMWRiNWFhNjc2NWMwMWIxNDVkMWEzYzY5YWE0MzAyNGMzYmQzMGVmZSBsZWdhY3ktdHJ1bmsKKzIzNTE1IGIwY2U5MjU2MWUwNzViZDVhYjM3Mzg1NDA0N2RhZTNiZWRiMmMzZmIgbGVnYWN5LXRydW5rCisyMzUxNiBiODVjZDE2M2NkNWNkMGU3ZDE1NjVmMTY4MDRjM2VkNzhhNDQ2ZjBjIGxlZ2FjeS10cnVuaworMjM1MTcgZDk2Y2QzOGEzZmVjNzI5NDI2MDdkYWMxNDIxY2ZmOGQ5MTI1MTMyZCBsZWdhY3ktdHJ1bmsKKzIzNTE4IGM2OGYzNjQxYmFjZDgyNzIzZDMwYTUxNWE3NGI5ZTc2Y2Y1NjBhOGYgbGVnYWN5LXRydW5rCisyMzUxOSA2NjkyODU1OTIyODg0YjUxYzg4YWJlYjJlMjlhOWRlNWI2NzQ3OTBiIGxlZ2FjeS10cnVuaworMjM1MjAgNmYwMjU2OWNjNDZmZGE1MjE3ZmNiNzc0ZDM3MDQ0MzM2ZGJmZTk1ZiBsZWdhY3ktdHJ1bmsKKzIzNTIxIGUzZjYzYTk1NDU1ZjdjMDI0ODJmOThiZDVmZmZjZjNmY2JlODA3OTggbGVnYWN5LXRydW5rCisyMzUyMiAzMTg1ODk0MDRiOTU3Mjc4MzBiZWI1MzkyYTAyZTc5NDFjOTNjZjdlIGxlZ2FjeS10cnVuaworMjM1MjMgNjE1MmY4MmVhODIzODAzMGRjNTdhYzkwZTQ1NzIwNzRlNDQ4MjI5YSBsZWdhY3ktdHJ1bmsKKzIzNTI0IDFlYTViYmJhYjdkNzcxZGNhOTg5YzY3YTIzZmI4MDY2ZWFhYTM5MTEgbGVnYWN5LXRydW5rCisyMzUyNSA1NmYxNzgxMDUzNGMyZDNiNTU4ZDk4YjgyMGNiNjAzYzljODY1MWExIGxlZ2FjeS10cnVuaworMjM1MjYgZGUyOWM4ZTRkZTliMzE0YTg3NTY0OWY2MWJmMzYyYjVhOTJkMTJkOCBsZWdhY3ktdHJ1bmsKKzIzNTI3IDg3M2Q1ODRjMTIyMTM5MGI5OWYxNWM2YjQ1MDM3MDg0ODVhNWUxYmMgbGVnYWN5LXRydW5rCisyMzUyOCBkMDkyYWJjZjljNGI3NmVmMjgyY2JkYjViYWM3OWVlYTQ1MDAxZTk5IGxlZ2FjeS10cnVuaworMjM1MjkgZTRlNzQ5YzQyZjQ2MTdmZTY0MGVkMTQ2OTJmMTQwMDM3NmU2YTdmMSBsZWdhY3ktdHJ1bmsKKzIzNTMwIDI0MWVmOGE5MjNjNzYzOWEzZjE4N2E1OWVhZThmOTRmODM0OTE4YjIgbGVnYWN5LXRydW5rCisyMzUzMSA1OTM0YWVlYjM5N2YwZWZlNWU5YmJkZjBiMmJkMWU3MDIyYWFkMmFhIGxlZ2FjeS10cnVuaworMjM1MzIgMDUyNTA0NzYxNThhNjU1YTU5MDI0OTlhMmNkNDU4MmZkZDJmZGU1OCBsZWdhY3ktdHJ1bmsKKzIzNTMzIDdlYTA0MDI5ZDFhZWFkN2EyOTMyMTkzYzg3YmZiMmI3MjMyNmRjZjggbGVnYWN5LXRydW5rCisyMzUzNCBjZTRhN2U0YWQ2YzQ4YzlmMDE2ZjRiZWIyMjViYTk4MzIxNWI3ZmVjIGxlZ2FjeS10cnVuaworMjM1MzUgNjEyZTg2YTRjZDlmNmVjM2E1MTQwMjYxZWE0MGRjYjQwZTJlM2YxMiBsZWdhY3ktdHJ1bmsKKzIzNTM2IGYwOTE2YTZkY2VmMjc1ZmZlMmNhNDkwNTcyZmRmMTZkY2M2NTc0OWIgbGVnYWN5LXRydW5rCisyMzUzNyAyMjY5Y2IzNzFlMDVmYzBjYjVjZjRmNTQ4MGRhM2Q3YWI2ODk5N2NhIGxlZ2FjeS10cnVuaworMjM1MzggZDdkOTU2YjQ3ZDI0MmUyYjdlNjBkNDk1ZjliYjIzMWJjMzFhYTgwYiBsZWdhY3ktdHJ1bmsKKzIzNTM5IDE2N2U3Zjk4YjUxZmIzN2QwMTY0MDUwODcwMzU5OTdmMGExMGYxNzcgbGVnYWN5LXRydW5rCisyMzU0MCA2NmE1NmEyMGNmYTNmNmNlMjI2OTUwNTU4N2NlZGUzNTY0NTBmYjNkIGxlZ2FjeS10cnVuaworMjM1NDEgMjk4M2I1NDI1NmM3MjI1ZTYxZGVjYmIyYmQ1ZTU5ZGQyNzRmNTg5OSBsZWdhY3ktdHJ1bmsKKzIzNTQyIGEyNjVkOGJkMmYyNzc3YzFlNTk2ZDMzYjZkOTk0MjQ2MTllNTZiYzggbGVnYWN5LXRydW5rCisyMzU0MyA4YjNlYTczMzVjMWJkYzY1MzIwM2QzMWMwMjUyNDg5YjgxYzQyMmFmIGxlZ2FjeS10cnVuaworMjM1NDQgOTdjZmE0NjFkNzkzZDM1ZGU3OWY1YmE1ZWQ0NjAwZDQ2ZWU0NjVmOCBsZWdhY3ktdHJ1bmsKKzIzNTQ1IDM4MGQ0YjRlZTYwMjQzYzIyM2FlMDVhMjA3ZTFjMzZiNWE1OTRiOWEgbGVnYWN5LXRydW5rCisyMzU0NiBlMzc1MWFmMGYxZGQxNzhjMjQwNTg2MmQxZWY5YTkzYzcxNmY4ZjM1IGxlZ2FjeS10cnVuaworMjM1NDcgMDRmMjk2ZjcxMWRmMDIzYWZkMWYyMWM5MTkxOGZmOTA0MDdkZDY4YyBsZWdhY3ktdHJ1bmsKKzIzNTQ4IGZiNWYxMjExNzAzNjAzNTA5NjI1YWRjMzJmZWQ1NWFmZTYwODU5MDIgbGVnYWN5LXRydW5rCisyMzU0OSBjY2I3YWJjNzE0ZWRkYTdlOTQ5ZDgxMjdiODJmZTdhYTA0ZGQyYzM4IGxlZ2FjeS10cnVuaworMjM1NTAgYzg1M2QyNDZmM2M4ZjcwMDQxMDY1NDcxOWQ1YTI1MWFjMWYyZDhiMSBsZWdhY3ktdHJ1bmsKKzIzNTUxIGY0ODc4MjIzN2Y4NTMyODgwMjdiMjg4NjY3ZmU1ZjhlNmIyNDQ1ZGUgbGVnYWN5LXRydW5rCisyMzU1MiA1Y2NmZTA0NDkyYWM5YjczNDZiZmI0ZjM1YmMwMWZlY2ViZDhhMWVmIGxlZ2FjeS10cnVuaworMjM1NTMgNmU3ZDVhZTI4MDBmYzk0NzQxNDBlYzhiYzgxNjMyYzliY2E5YmJkNSBsZWdhY3ktdHJ1bmsKKzIzNTU0IGFjZDgzNzgyMTZjMzFmMWNjMmI2NjA3YmI3Y2FhMjhlMThmODA3N2EgbGVnYWN5LXRydW5rCisyMzU1NSAxNzhiYTMzZjY3ZTRlOGQxZTQ2N2RlZDRiNzAzNTM5NmZhMzQ5OTA3IGxlZ2FjeS10cnVuaworMjM1NTYgYTQzY2I2YzU5MDcwZjgwZTUwYzY3YjdkOTZmYWFhNThkMTA3NWNhOCBsZWdhY3ktdHJ1bmsKKzIzNTU3IGIyODVkZWNmMDQyMWVjNjY5OTE0MDAzNDkwZjU2NDEwYzIzNGUyYjAgbGVnYWN5LXRydW5rCisyMzU1OCA0MjZiMzc5YTEzOGI0MWI3MWFiNzZhNzVkOWY0MTgzY2QwODc3NWM0IGxlZ2FjeS10cnVuaworMjM1NTkgNWQyZDFlMmVjNDczYjEwMjUwYjE4OTQ1MDRjOTVkYjMxOWIwZjE2YSBsZWdhY3ktdHJ1bmsKKzIzNTYwIDZjYzBiNDgwNDllYzRiNTllYmQ3NWVlZjZjNWJkNjQ2N2E1NGI5OTMgbGVnYWN5LXRydW5rCisyMzU2MSA3OTM5MmFiMmMwMmE5ZTJkZDliZjkzMWZjYTIxNjEwZjY1OWFmZGM0IGxlZ2FjeS10cnVuaworMjM1NjIgNjIxMTY4NGVkOWRkZjA3NzM2MDEyNmFjOTU0M2VjZDc4MjQ5NjRiOCBsZWdhY3ktdHJ1bmsKKzIzNTYzIDQyYjUyNzkzNzQwYzBkZjE3MDVhMWZjMjlkYjM3ODIxMjQ3OTE1Y2IgbGVnYWN5LXRydW5rCisyMzU2NCA4NzRiYjE3MDc0YjBkNGRmOGYzMGNhNjlhZTI1NzAyNTdmNzVlYTFmIGxlZ2FjeS10cnVuaworMjM1NjUgM2IzZWU5NzYzM2MxMWRiMDQ5ZTdhMmZmOWFkYTE3MjRmZjA1NDRmMiBsZWdhY3ktdHJ1bmsKKzIzNTY2IGM1MzQ1YzBhYmQ3MDYxOTMwNjQwNTlhNzZkMjdkZjhiNjMyYzRjNWMgbGVnYWN5LXRydW5rCisyMzU2NyBmYWVjNjljMTE2NDAzNjFhMWFlOGMxOWY3OThlNTQ2ZWQ4MGViNDAzIGxlZ2FjeS10cnVuaworMjM1NjggZTQ0Y2RlZjc5MWVlODQwNTVhODJlNWIxY2NkYjNkZDdjMGJjOGY0NSBsZWdhY3ktdHJ1bmsKKzIzNTY5IDA4Mjk1ZWM1OGVhOTdkZGUxNjViZGU5YmRkZTkzYjVhZTg5ZTJiN2QgbGVnYWN5LXRydW5rCisyMzU3MCAxY2EyMjhlMjFhOTg3YTcyMmYxNDQ2YzgyZWM3OWNmYTZhNGE0NTVkIGxlZ2FjeS10cnVuaworMjM1NzEgYWE2ODEzNDViZmFiMTMzNzNkMmFmMjlhNWFiNDE1NTg2NDNiMzc4MyBsZWdhY3ktdHJ1bmsKKzIzNTcyIGNhMmJjNWNkYWE4ZTllZDIxZDQ2MmUzM2RjYjhlZjVlYjFhYTg5OWQgbGVnYWN5LXRydW5rCisyMzU3MyAzMjZlNWE3MmM2NjAyOGUyYmE3ZDBiMjYyYzU5NGI2NDUyYTkyNGEwIGxlZ2FjeS10cnVuaworMjM1NzQgYjQ0NDdiYjVhYTBlYWRlYzk1NmE5NWI3OTAzZDZhM2YwN2U2OWU0NSBsZWdhY3ktdHJ1bmsKKzIzNTc1IDEyMzUzYjEzMTIyNGM2YWNjODU5OTY2OWNjNGUyZThiNzJiMDc4NzggbGVnYWN5LXRydW5rCisyMzU3NiAzMzkzZDZmODA3ZjVkN2I1YmEzMWVhMWQ5Y2UyOWI5ZjZhMWU0NjJlIGxlZ2FjeS10cnVuaworMjM1NzcgZWExOTEwZDJjNzgxZGQwYTlkZGI4MGI0MzBmYmEyNzM5ZWVkM2Y1ZSBsZWdhY3ktdHJ1bmsKKzIzNTc4IDI4NGVhYmUzYjU1MmNkYTNmY2RkMDY4YTU2NjhmMjgxNjBlOTg4ZjEgbGVnYWN5LXRydW5rCisyMzU3OSA3YjQxZjdhMmU1Mjg1NGYyOWJjY2EwNzhkODI2M2MyOGZmMTUwYjk2IGxlZ2FjeS10cnVuaworMjM1ODAgMmUwNzNiYzcyNjg2OTUxYTJhYTkzNjA5ZTZkNTg2MjMzNjBkYWM2YyBsZWdhY3ktdHJ1bmsKKzIzNTgxIDRlZjdlYjkwYjY5YWM3NGRjN2Y0NjAxOTExZWVmZDY4YjE0ODU2ZTIgbGVnYWN5LXRydW5rCisyMzU4MiBmOWE2NmIyNGJmZmZiYTJlMmY2MDk2OTQwOGE0MGU1MjY0NjUwMTdhIGxlZ2FjeS10cnVuaworMjM1ODMgMTI1MzU1M2ZjM2NjOGVjMmIzMTkwZjRmNDM4M2RlMjc4N2MzMmUzMCBsZWdhY3ktdHJ1bmsKKzIzNTg0IGYyOWI4ZWEwYjY5NTQ0OWNiOGIyYzQ5MDZiODUwMjU4M2JhMzIyYWYgbGVnYWN5LXRydW5rCisyMzU4NSAyNjdjNmZlMGFiYzJlZWI4YjdkYjEyOGRmZTM1OGM0ZGMwNjZjODM3IGxlZ2FjeS10cnVuaworMjM1ODYgNWE5ODgwMTU2ZDcxMjUzN2U1NGFmNjRmY2JiYjFhYzk2ZTJiYTNmZSBsZWdhY3ktdHJ1bmsKKzIzNTg3IGJkYTI3NGRkZTI3ZTEwMjY0YjEwZTUzOGUyMDJhNWFkMTVmYzE2MDEgbGVnYWN5LXRydW5rCisyMzU4OCA0MjlhMDhlMmZjNzgyYzNjNmI2Y2U4OTAyZDE5YWY1ZjhmMjdjNDg0IGxlZ2FjeS10cnVuaworMjM1ODkgODU4NTUzNWU0MDRiY2FiOWRiNGQxNDgzNWQxOTg0NDAzNzljYmJlNiBsZWdhY3ktdHJ1bmsKKzIzNTkwIGIzMmQ2NmE0YjVlNmFkNDJiOGI1NmNjZmE3ZWQ2Yjc5MmZjYTkzYjcgbGVnYWN5LXRydW5rCisyMzU5MSA1NGYwNWI5YjFmYzRiYmJhOTJmNmNmZTk1MGM3ZTg3ODI3ZjBkNjg3IGxlZ2FjeS10cnVuaworMjM1OTIgMjZiNWY4Yjk0ODcyYjdhZmY3MmFkNzQ3MWExNWE5ZmQwNzdlMmQ2OCBsZWdhY3ktdHJ1bmsKKzIzNTkzIGE5NzYzNjc1Yjc0YzdhNWZiZDJiNTQ0N2YwNTM1ZDJhMTQxNTAzZTcgbGVnYWN5LXRydW5rCisyMzU5NCA3OWZiY2ZmZjU3OTcwYmUxNmE5YzNiYzA4YmM0Y2FiZTE4MDU1YTI3IGxlZ2FjeS10cnVuaworMjM1OTUgYzUyNDdhMzY2ZmY1N2JlZDg4OGRkNDk0ZDJkY2VkODdiMjhlNjM1OSBsZWdhY3ktdHJ1bmsKKzIzNTk2IDA0ZmVlNzBmZWQ4ZmVhYjk0YzIzOWQ1YTRmMzdmZTAyMzlmYmJiYjUgbGVnYWN5LXRydW5rCisyMzU5NyA4Njg5NmI1ZjFlYmMyZjgxYjIxMzhhYjRiMGZhZjk3NDdjYzdkMGZiIGxlZ2FjeS10cnVuaworMjM1OTggYzcwYTJiNTdhNGRkMjUxZWFjMjQ1ZjFhNWE2ODk2MzI3MTA3ZTA4ZSBsZWdhY3ktdHJ1bmsKKzIzNTk5IDgzODM3YWM1YmI0MGY0ZDVhNTE0MDg3ODc2NTEzZTRlNzNlYzViNjkgbGVnYWN5LXRydW5rCisyMzYwMCAxYjNmZmRmMTIxNTA5YmY2NDQxNDFkZmI5MDFkNDc4ZWRkYWJiMTViIGxlZ2FjeS10cnVuaworMjM2MDEgNGJmM2ZjZTNmNmNlZGY1ZWJmZTc5MzIyYTZiNmYyZTZhYzQxYmIyMSBsZWdhY3ktdHJ1bmsKKzIzNjAyIDcwOTZlNDRjZDFiZDI5ZWUxMGY5YzVlZThhNmJmYjkzYzZkY2U4Y2YgbGVnYWN5LXRydW5rCisyMzYwMyA4NTIyNmRmOWE1YmU5MWUxNzhhODNjOGI0MWJjYmIyNjE1MTA3Njg0IGxlZ2FjeS10cnVuaworMjM2MDQgNTNhOTU3MmI2MjM3NzdlMDFhNzliZmY2MDdkOGM3NTFkMWVmNmZiOSBsZWdhY3ktdHJ1bmsKKzIzNjA1IDE0ZTBmZTE1MjcxMWZhMjQ2N2RkOTBmMDczN2YwMDQxYWY5NWM4MzAgbGVnYWN5LXRydW5rCisyMzYwNiA0NGJlZDI1NGQ4MzczY2VjZmNmYmMwZDg5OTc0NzNkYTgzNWNhYmEwIGxlZ2FjeS10cnVuaworMjM2MDcgN2JkMTIyNzBkYzNlNzdjZGM5ZjRmOGIyM2IyMjVlNDI2ZDIwNTMyNyBsZWdhY3ktdHJ1bmsKKzIzNjA4IDM2ZDE0ODIxNGQ4ZTI3ZGZmNDI1ODkzNjE2M2Q0MmIxMWExYzVlMGQgbGVnYWN5LXRydW5rCisyMzYwOSA2N2E3YTk5ZjJkNWFjMzhjNjM2ZGJjMDMyYmQ0MTVkNzk3OTE0NDg1IGxlZ2FjeS10cnVuaworMjM2MTAgMzJlMTJmOGQ3NWQ4MzI2YjM0Njc0OTA0OTZkMjg5YzYxOGEyMGNlOSBsZWdhY3ktdHJ1bmsKKzIzNjExIGI3OWZmZDNmY2EyOGM4ZmY1YTlkYThiZWVkZTRlNGUzN2I4NzE1YWQgbGVnYWN5LXRydW5rCisyMzYxMiA0MjVjNmM1NThmYWMxYWE5OWM0NTk1NDhiMDRjZDU5ZDNlMGZjYmY1IGxlZ2FjeS10cnVuaworMjM2MTMgMzNkYWM2MTgxYmU1N2M4ZTkyOGYwMTNiMWVhODVmNTEwZGIwYjIyMyBsZWdhY3ktdHJ1bmsKKzIzNjE0IDBhOTE1YjIyZTAwNmFhMWNiYjAwZWVmZWM5MWQ0MTQxMmRhYTYxZjMgbGVnYWN5LXRydW5rCisyMzYxNSA2NmU3NzU4NWI0YmQ5NTk0Mzc1MjM5MGU5Yjk1ZTUwZDY2NjNkMjE1IGxlZ2FjeS10cnVuaworMjM2MTYgOWU3YTBhZjRjMGEzYjZhNzFjNDc3NGQ4YjU2MjllM2EzYjYxOWE5YSBsZWdhY3ktdHJ1bmsKKzIzNjE3IGQxYzdiM2VkZTQ4MTU5MjYyMDI0ZDZkZjJmOGIwNTVmMjBmZDU3OWQgbGVnYWN5LXRydW5rCisyMzYxOCBmZGMxOTE0NDA2ZTI2ZTI3MmZmYjQ2OWQ4YzIzNTZjNTlkMjZmNzc4IGxlZ2FjeS10cnVuaworMjM2MTkgNGRiYjUwNTgxZDkwM2E0NDI4YjQxNThjZTc4MTkyYWVkZjYwOWVkMiBsZWdhY3ktdHJ1bmsKKzIzNjIwIGMwZDY2Mjk2NjI3Mjc0NjQ3YzljZWIyMWY1MWM3MmRmM2U0OWFjZjUgbGVnYWN5LXRydW5rCisyMzYyMSA5MmQ1NmFlNjNlZDNmN2QwZGM1MzBmYmE0MDZhZmM1Y2U0NDJjZjkwIGxlZ2FjeS10cnVuaworMjM2MjIgOThmNTk3YTE3YzkwN2Y5NjJkODMyYmNhMTAyNGU1ZGU0MDA2MDljNSBsZWdhY3ktdHJ1bmsKKzIzNjIzIGUxOTFjZWVlNjcyZmZlMTU1ZjVjNDg5MTg2MmQ2ZDc2ZWNiMGU4MjcgbGVnYWN5LXRydW5rCisyMzYyNCA4YTA5Yzg1NWY5NTczMDQxMDVkYjhiNjEyZGE2YzAyYzQxYTVhMTAyIGxlZ2FjeS10cnVuaworMjM2MjUgYzQwODMzM2QzN2YwNjE1NTYwMmViNTczMDI1MjE1YjMxMmZhM2JiMSBsZWdhY3ktdHJ1bmsKKzIzNjI2IGI5OTdhYzcwZTQ0NWVkYmEzZmI1MTc2M2ZkMzEyZjg0OTEwY2NhNTEgbGVnYWN5LXRydW5rCisyMzYyNyA2YjFkOGNiOTkwNGFjMDFkNDEyNmYyZDIwZjg4NGFlMTNjMjlkMDNiIGxlZ2FjeS10cnVuaworMjM2MjggYjBkODMwNmMwOWM1MWIwYjY5ZGNhODZjMzYwZDY0NTA1ODBiZTcyZCBsZWdhY3ktdHJ1bmsKKzIzNjI5IGU0NmY2OWY1Nzk4YjY4OGMxYjAyY2JjODA5NmVlZWI0ZGU2NGIzNmUgbGVnYWN5LXRydW5rCisyMzYzMCA3YmNhY2E2NTMzODgyNGQ2NDYyNzMyZGJmYmM4ODgxYzAzYmJhMjk1IGxlZ2FjeS10cnVuaworMjM2MzEgMzAwYjFkOGJmYTRkZTFkMzUxMzFkZWE4NjViNjk3ODI5ZjZjOGE5NSBsZWdhY3ktdHJ1bmsKKzIzNjMyIDllNzJiY2ViNTQwYjU0NzQwZjRkZWExNDRkYjJhZDliOTk0NTY0MWIgbGVnYWN5LXRydW5rCisyMzYzMyA4ODMwYmUzMjA5YTJhZDFiZmQzYTQxNjcwMTU2NmI5YWUyZmIyNTdhIGxlZ2FjeS10cnVuaworMjM2MzQgYWJmZDE3MDAxZThmNWVmZTFhNzM5Y2JmM2YyNjNhN2VhMDhkOGY2YiBsZWdhY3ktdHJ1bmsKKzIzNjM1IDhlZjNlOTUxODJjMzZkYzEzZDViNTJmYzE1ZDU0ZjgwNTRkODk0YmIgbGVnYWN5LXRydW5rCisyMzYzNiBkYmVjODYzZDMzZDdlYTM1MDE1YzQwZTA1ZmVmOWU5NDg5MWNiYmNkIGxlZ2FjeS10cnVuaworMjM2MzcgNGJjYzIzMWMxYTQxYTRlMjkzZDNlNmUyMmI0ZDQ2OWI0YzFlODJlYiBsZWdhY3ktdHJ1bmsKKzIzNjM4IDk0OTgzOTQyYzk0YjliN2VhYmUzMWU5MjlhN2JjY2I4YzhiNzhhNTIgbGVnYWN5LXRydW5rCisyMzYzOSAzYWIzYjUzNWRhZjI0OTVmNmVhMDlkMmRjYzZmY2M5MDc5MDUyYzkxIGxlZ2FjeS10cnVuaworMjM2NDAgMDYxZGEyMmY0MjAzOWNjYWRhYmQxZDM0ZWM1N2U3ZDdhZDYzZmFhYSBsZWdhY3ktdHJ1bmsKKzIzNjQxIDljMmQ0NDQ2NzRkMDkwMWY1OTRmNWUyODM2Y2Y0Yzg1ODg5ZGE4ZjcgbGVnYWN5LXRydW5rCisyMzY0MiAyZjg5YjM0NGZkYjNkZDVjODRjMjdkYzU5ZmI4YWJmNjVjNmYxN2RmIGxlZ2FjeS10cnVuaworMjM2NDMgYWZmOGQxNGIyOGFkYTNkNzllZjBiNjVhNTJhZjg5NWUzYTQyNTg4NyBsZWdhY3ktdHJ1bmsKKzIzNjQ0IDNhZGMzYTE0Y2RlNDEyN2FjMWY0YWU0ZGY5YjQwZDdkYmZhMjc2MTggbGVnYWN5LXRydW5rCisyMzY0NSBiNGY4Mjk5NDFmM2RmNDExZTExNDNhMTFjZGM3ZGQxODA4MmU2NzA1IGxlZ2FjeS10cnVuaworMjM2NDYgYmUwODczNGIwYWZkMjEwMTY5MmFkODlhMjI0NWQ5MTE2YTg2YzU5NyBsZWdhY3ktdHJ1bmsKKzIzNjQ3IDNiNDVjMDRhNDgzM2JlOTBjZTdjNGQ1NGI4YzgzMGM4NzIwZWU2MTUgbGVnYWN5LXRydW5rCisyMzY0OCAyYmE0MDE4ZGUyZTMxMDY0ODA5YjVjNmQ1M2UyNGI5Zjc3NDQ1NzdlIGxlZ2FjeS10cnVuaworMjM2NDkgYmU1OGVlZTY5YTk0OTQ0M2IwYTllZWY4ODk0NjhmYmI1MjAyYjQ5ZCBsZWdhY3ktdHJ1bmsKKzIzNjUwIDNjMDFjMzRkMDdmNjhlYzE2Y2E0Yzk1MmM3MmE4ODdhOGQ1YWQ1YjcgbGVnYWN5LXRydW5rCisyMzY1MSBmOTA4YjA2M2YyOGI3OTc1ZTVlZjg4NWJkNmU5NjJjNzJkODFkYzhmIGxlZ2FjeS10cnVuaworMjM2NTIgYmU4Y2JhNWEzYjdiZTg3OTkzMGNkYTNkZTM3NjJjYTAwZDk2ZmNiYiBsZWdhY3ktdHJ1bmsKKzIzNjUzIGI0NzE2ODE3OGQ4NzljYmUzMjkzODBkN2Q3MGI3MTcyNzRkZjk3YTggbGVnYWN5LXRydW5rCisyMzY1NCA5NDZiZWJkMDAxMzJjM2JiZDQwMzc4MjBiY2FiYTAwZGU3YTIxMjhmIGxlZ2FjeS10cnVuaworMjM2NTUgNzczYTEzMGIzMzBlYmVhY2VjOTNiMTQ0NzA0ZmFjZjYyYzYzODk5NyBsZWdhY3ktdHJ1bmsKKzIzNjU2IDg1M2MyNjhiZjI0Nzk1ZTdhMjViZWFjYjc0M2FhMzE1NDZjMTA4YjMgbGVnYWN5LXRydW5rCisyMzY1NyBjMjdjZjkxM2IxZDY5MTAzMGQ3ZTJkMzNlNzE0MDJmZDg4ZDIyMzIzIGxlZ2FjeS10cnVuaworMjM2NTggYWQxZjA4MTI4MGFhMDA5ZjVlMzJmYWM1MzllODkxZDg3Yjg4ZWZkMiBsZWdhY3ktdHJ1bmsKKzIzNjU5IDIwNTA4NzdjMGMzNjNhYzE4MTFhYjVjYTMxMDU1MTdmNjE0MDVmMzYgbGVnYWN5LXRydW5rCisyMzY2MCA3Mjk0OTMyZDc0ZWNhZWY1YzUzYzk1NmQ1OGE0NmMyYWVlNmZhNDgxIGxlZ2FjeS10cnVuaworMjM2NjEgOWZlOTc1NDhkOTUyMWZkOGVhODQ5N2IyOGJiZjRjNjk0NzM3YmEzOCBsZWdhY3ktdHJ1bmsKKzIzNjYyIGM5YTIxMjMyOWRhNmYwY2ExYmM3ZTFmMzhhYTJlZTY4NjRmYWFlZTAgbGVnYWN5LXRydW5rCisyMzY2MyA2NWY2MGQzZmNkZDc3ZTAyZTczMDI1YTQ0ZmYyMjBjN2MyMzAwNDUyIGxlZ2FjeS10cnVuaworMjM2NjQgNjU3OTA1NjIwMzNjMTNjYmM4MmIwZmQ0YzE4ZWU3YWMyN2E3OGM0NiBsZWdhY3ktdHJ1bmsKKzIzNjY1IGI3NDYxMGM5MmQ4YjgyNmQwYjNiZGViZWIyN2VjMjEwZjI0MTMzNjAgbGVnYWN5LXRydW5rCisyMzY2NiBmNTdmMTdjYjQxMDg2NTQyYmNhYjBhMjIwOGM4ZjkyMDNhM2RjZDY2IGxlZ2FjeS10cnVuaworMjM2NjcgZWQyZWVhYjgwMmQyYzQ5YmQxNTQ5NDAyNzM4ZjA1ZmQ5NjcxN2YwMiBsZWdhY3ktdHJ1bmsKKzIzNjY4IDlhZTc4ZWY4NThlMmNhOWJiZWE2ZmIwMmIwOWI2MzJlMWYxYmM2NzQgbGVnYWN5LXRydW5rCisyMzY2OSBiNmE1ZmVjYmVjM2NiZWE2ZjhjY2NjMGMwOTYyOGZiZjE4NWQ2YTM5IGxlZ2FjeS10cnVuaworMjM2NzAgYzNhOTM3Y2Y2MGE1ZjVjZGE3ZDY1YmIzMTUxNDFhYWJhYjIzOTg0MSBsZWdhY3ktdHJ1bmsKKzIzNjcxIDZiMTA0MDgzZjVmMzNhOTBiOGU3Y2YxN2I2YTgxMDJlNTU0OTA1M2MgbGVnYWN5LXRydW5rCisyMzY3MiA0NjlhOGUxZjdlZGY1MTM3ZjBjMzIyMTRjYjgyNDgzNzBjMjdhZWM1IGxlZ2FjeS10cnVuaworMjM2NzMgYjk4MTg1Yzg4MmU0ZTc2ZmExOTI5YThjMWE1ODVkZGY0YTliZjY5MCBsZWdhY3ktdHJ1bmsKKzIzNjc0IDJhNGJiN2QxOWI2MDNmZTg1NmQ0ODVmZmMzYzU1NDM0NTg2MDY0ZDYgbGVnYWN5LXRydW5rCisyMzY3NSA0ZGFiNjFmNDg0NTgxNzIxZmIwOWRjYmU2Mjc3OTdiNmQ1ZmRjOWZkIGxlZ2FjeS10cnVuaworMjM2NzYgNjk4YmY3YzIyYmZlYmE2MmNlZWNlNzljNGFlOTg3ODQ4YTUyODg1ZCBsZWdhY3ktdHJ1bmsKKzIzNjc3IDFjYTYyN2M0YzEwNWYyMWZiZDJjMjdlOTU1ZDM5Nzg4MzVjZjViMTggbGVnYWN5LXRydW5rCisyMzY3OCBlNGQwYjFmOTRlY2E4ZDZiMjMyNDU3MjU0NjNkYjhlYzMxYWM3YmE2IGxlZ2FjeS10cnVuaworMjM2NzkgNjIxYzc3MDNlOGI3NTI4ZTlkZjliYTM3MzhiZWJhY2FhNjg2NjNiYiBsZWdhY3ktdHJ1bmsKKzIzNjgwIDU5MDBhOWQ4MDg0ODA5MjY5YzU1YmJiYmM4OTRkMGJlMTU1OTViN2YgbGVnYWN5LXRydW5rCisyMzY4MSBjMTY4ZWRhNzM2ZTQ0YTdjOGI0Y2RhZTM0YjIxNmM3MTE0MTg2Yjg1IGxlZ2FjeS10cnVuaworMjM2ODIgOTAzMjIxODUyYzNhNTljMzE3MDczNmVhMjQzYWUyYTEzOGRlNjAzYSBsZWdhY3ktdHJ1bmsKKzIzNjgzIDRmM2QxMjQwODMwZTZmNTMwMzhhODAyZWRkYTA0MDgwNGQ1YjVhMWYgbGVnYWN5LXRydW5rCisyMzY4NCAzYTE4MTMzZjk5MDY0MzUwNGI0OGUwMDA0YmM1OTE4NGQyYjJmMjM0IGxlZ2FjeS10cnVuaworMjM2ODUgZWU4OTU2N2JjYWI0NDUwYTUxYWRlODg0MTFhNzhhNTI4MTEyYzhhNCBsZWdhY3ktdHJ1bmsKKzIzNjg2IGY2MTg2MDdlOGY5ODQyMGQ2ODg4YzRlNDc3NzJiZTgyMjhhOWE4MDAgbGVnYWN5LXRydW5rCisyMzY4NyA0Njk4YTNlYzVmYThjZmFkOWI0ZDc5NTEzOWU0ZGFkYmI2NDZmNTk2IGxlZ2FjeS10cnVuaworMjM2ODggNmRhMDM3MThjMTMzMGMzYzIyMTE4Nzg3M2FhOWM5Nzg4MTllMmEwYiBsZWdhY3ktdHJ1bmsKKzIzNjg5IDdkMWY0OTBiNmNiMTcyODI0ZjlkZGViMDczZWE0ZGY1MTUyNDlmMDggbGVnYWN5LXRydW5rCisyMzY5MCA1MThlMzBmOTBkMWY3ZDg4NDRlMjcxODhkYWE1OWNjYTU2YzQ2ODJmIGxlZ2FjeS10cnVuaworMjM2OTEgNDcxMmJiNjJjYzI1ZDA1YjJkMGM3NmE5M2NiM2JmNThhZWU4ODkxYSBsZWdhY3ktdHJ1bmsKKzIzNjkyIDYzMmI5ZDNhOGQxYTdiMjkwNmY3YzgyYjE3NDFmY2Q2YjE5NjQyYWEgbGVnYWN5LXRydW5rCisyMzY5MyBiMDI5ODZlOWE2YmU0NzIyNjY0MmI3ZTVlZDY1N2RlMThiYWQ4ZTU0IGxlZ2FjeS10cnVuaworMjM2OTQgNWQ1YWQ5NTFhNmQ2ZTE3MGQ0ZjMzYjY0MjlhNjhlY2NhOGJhOTA5NiBsZWdhY3ktdHJ1bmsKKzIzNjk1IGNlZTBmZTVmY2UxMTVkYTU5NTk4YTg0ZmE5ZThjMjdiM2NlMDVmM2MgbGVnYWN5LXRydW5rCisyMzY5NiA1NjE0MWI4NmE3ZjJjOTVhMTJmNjZkZWVhNDk4MmY3NGE1MzU5Y2IzIGxlZ2FjeS10cnVuaworMjM2OTcgN2Y1MWE0YjdkZWI0NDBlZTJmZDVkNmM0NzNjNGNmMTAxZDE2M2Q1YSBsZWdhY3ktdHJ1bmsKKzIzNjk4IGJhMjg1MDQwOGYwYTI2MGQ1OGQ5NDM2Y2EyNDM0YTRlZjRiZDQ3ZDIgbGVnYWN5LXRydW5rCisyMzY5OSA1MDAwYjVkNGMzMjY1ZjU0MTBlNzc4YjMzYWQ3YzJlMjUzODdiZDRhIGxlZ2FjeS10cnVuaworMjM3MDAgMjAxMThmNDEyOWRlZmRmZTMxOWZlMDg3OTc4MTA3N2ZkY2Q1MGJiNSBsZWdhY3ktdHJ1bmsKKzIzNzAxIDM1ODM5N2I5MDcwZjZhN2VlOTVmZTM5MzQwOTdhMGZkZjFiOTc5YzQgbGVnYWN5LXRydW5rCisyMzcwMiAwOGQ3YTY3NTZiZmVkOTJhODg4YTgwYjNhZjRlYzk3YzQ1NjY3OTFhIGxlZ2FjeS10cnVuaworMjM3MDMgODU1NzFkNWY2NTQ1YjY3YmE2ZWJmODA4N2FmN2E2NDBlYWY4MGUxZCBsZWdhY3ktdHJ1bmsKKzIzNzA0IDliZTJjYzZiOTk1OWQ4MzFjNTFhYjA2ZTA0YjAxMzRjNjk5ZjIyNDYgbGVnYWN5LXRydW5rCisyMzcwNSA1NjI4MzRlZDhiYWJkZjdhZTMxY2I2YjkzMTgxODlmNGY5MTQ0MWFkIGxlZ2FjeS10cnVuaworMjM3MDYgNDY3YWM0NTNjY2MzMmM3ZWI2M2QyYjlkZWRhNWYyODQ3YWNiZjdiMiBsZWdhY3ktdHJ1bmsKKzIzNzA3IDAzNjI0ZDc0ODRmYTA2MDBlMGM0OGZkZWNhNzRhMTg0MjE3ZTc1ZTkgbGVnYWN5LXRydW5rCisyMzcwOCBiYzkwNWExMWMxNDhhNDhiY2I1ZmQ0MGIxMzM1YTUyZDlkNjQ5ZjMwIGxlZ2FjeS10cnVuaworMjM3MDkgMjdhYjAzMjdiMmZjM2E5ZTdhN2JkMDNhOGU4NjNjMzM0NWZmNDkxMiBsZWdhY3ktdHJ1bmsKKzIzNzEwIDg1NTI0NWJiNGQ0Mjc2Y2VmNzhhMmNjZWRkOWVmNmU2M2I1NDY2NjcgbGVnYWN5LXRydW5rCisyMzcxMSAzNTNhM2U5Zjg1MTZjMTU5OWI3OGZkYWEzZTM2ODM0OGNlNTBjYTViIGxlZ2FjeS10cnVuaworMjM3MTIgYjFhODYxNmYxM2U0Y2Q3MjZiZTU1ODAzOThmNzQ0ZTA0YWU5ZDM4ZSBsZWdhY3ktdHJ1bmsKKzIzNzEzIDY5ZTY1ZTczOTFiODE3YmMwNDg0NmI3ZThhMWJmNzA5ODVmNDAyNzAgbGVnYWN5LXRydW5rCisyMzcxNCBiNzI1NjhhMmMxN2NlYzIzMDg5MTE0Y2ExZDI1NGQzZGFkNDVlNmJmIGxlZ2FjeS10cnVuaworMjM3MTUgOTliMmJkMjViYjEyZDQ3YTAxZmMxNDMxNDQ1OTU1NWFlNjE2ZWYyNCBsZWdhY3ktdHJ1bmsKKzIzNzE2IDQxYmVkMWY2ZDI2Y2ViM2E3NTdiM2VhMjEzMzk4YzJmODE1NmYyYmIgbGVnYWN5LXRydW5rCisyMzcxNyA2NGY0YWM2MDZhZTUzMTNkNDI1ZWQ4YTNjMDA4NmNmYWNiMTJhY2M0IGxlZ2FjeS10cnVuaworMjM3MTggNTk4YzAyYWIwNjJkNDNmZmNjNjZmMWRlOTRiNDdjMGMxNjNiNWJkNCBsZWdhY3ktdHJ1bmsKKzIzNzE5IGVjOTU5NjY4NzI5Mjk2M2UzNmU0YmFkNGI3OWQxODg0Mjg1Zjc1ZTYgbGVnYWN5LXRydW5rCisyMzcyMCBiZmY2YzJkNzZmMzM2YzUyZDZkZWI0OGM2NzkxNDMzZWE3YTAzZmJhIGxlZ2FjeS10cnVuaworMjM3MjEgNGY3MWRjZmQwYTkzNzBlZjdiZTQyNmI0Mzk4NzI3NjgxODI3YzcyZSBsZWdhY3ktdHJ1bmsKKzIzNzIyIGE5NjIzNWIyY2E2MjViMzBhNjg2NDZhNjM4NGVhZWFjM2M2OGQ5N2YgbGVnYWN5LXRydW5rCisyMzcyMyBjNjhkMTg1NWRhYTllYTI0ODUxYWFiYzFmMzA5Yzg3NWI5Nzk0ODdiIGxlZ2FjeS10cnVuaworMjM3MjQgZmZiZjk0ZmQ5Y2VmOGUyZjZlODUzMWRhY2UwM2UzMWVlMmFiMDA2MyBsZWdhY3ktdHJ1bmsKKzIzNzI1IDdlNzFlZWJhYjRlYTM5ZTk5ZDYyNmQ3MmNiYjM5NWFhNWU5NzZhNWEgbGVnYWN5LXRydW5rCisyMzcyNiAyZjBjNWFmNGQ1ZWEwN2ZiNTZhMDViNmU2ZDE1YmE0YmRiMWRkNGU0IGxlZ2FjeS10cnVuaworMjM3MjcgY2UxMmJiMTA5N2E0MTY3NTM0ZTQzYzQ2NGY3ZjFlNzY1MWM1M2ZjZSBsZWdhY3ktdHJ1bmsKKzIzNzI4IDk4ZGYwMTE1ZWNmOTAxMmM0NmNlYzk5OWFhOTZjMzdjMWQ2NTMyNWIgbGVnYWN5LXRydW5rCisyMzcyOSBjNzI5MTVkOGFhYzcyODlmODZjZGM4YjMyNDAxNGE0ZmE2ZTVmNDNhIGxlZ2FjeS10cnVuaworMjM3MzAgNjBlMTJmODNkMmQyMjVlM2IxYTg5MmVmMDRmMWI5NmE4NjQ2ZDNlYiBsZWdhY3ktdHJ1bmsKKzIzNzMxIDViNWMxNWEwOTVjYzdhYmI1MTVmNDg3MTU0ZTQ0NGI5ZTk2MjMyMTAgbGVnYWN5LXRydW5rCisyMzczMiBlYmZkODdlODc4ODRlMDZmODAyZTEwZGFhYjJlOTMxODllY2RiZjczIGxlZ2FjeS10cnVuaworMjM3MzMgYzQ2ZTk0ZmQ2OTg2YjZlMGVhNjZmNzhjMDQ0MzUxZTEzODM3ZmJlNCBsZWdhY3ktdHJ1bmsKKzIzNzM0IDg5NjRlZjg0YzkyZjRkMjE3OGJiMzhmZTQxZDFmOWZhMzRjNThlNGIgbGVnYWN5LXRydW5rCisyMzczNSBiYmRjMGFiZmJiMTM5N2ZmNTFiYTk3MzQ3NzJiY2NlNWVmMmQ5OWFlIGxlZ2FjeS10cnVuaworMjM3MzYgZGM3MjA0ZGQyNjg2ZWEzZWNmYjkyOGFkOGVmMDY5NTQzZDI1MjA4OSBsZWdhY3ktdHJ1bmsKKzIzNzM3IDhkNWMwMDBlMGU1YjQ0Mzg4ZjUzMzM5MmJlMjYwOTdjYTM4NWYzYWYgbGVnYWN5LXRydW5rCisyMzczOCBhNWEzMGJhMjg5OWY1N2U5ZGVmNjFmYzc5YjNjNWMyNGM0NmJiNjExIGxlZ2FjeS10cnVuaworMjM3MzkgMmYwOTVjM2UwMDdkZDc3NmQ0NzQ0OWNkODFhNWJjNjZmY2QwOWI2OSBsZWdhY3ktdHJ1bmsKKzIzNzQwIDBjYjI4N2NkNzU0N2E4NDdjNjI0M2VlZDY1NjE0NTVmMjIyNTA1YjYgbGVnYWN5LXRydW5rCisyMzc0MSBjMjM5ODllMjJmZmE1MDExNGZiMTVmZjg4MmRmMzg1MGZiNjMyYzRjIGxlZ2FjeS10cnVuaworMjM3NDIgMDcxY2ZlZThkOGViOWFjMjk2ODNhYWY4MDA0MzdlNDZhODA0MTUxNCBsZWdhY3ktdHJ1bmsKKzIzNzQzIDc2OWRmODVkNzBiYzEzZmYwZGM0MjVlNDNmNDZkNGNlNzRlNzFjNGYgbGVnYWN5LXRydW5rCisyMzc0NCBkZDBjZGQzZGVmZDgzOWY4OGM2YmZlZmExYmIwMGI0ZTA4ZjE3NWQwIGxlZ2FjeS10cnVuaworMjM3NDUgY2Q5NmM0YjAxZmYwZjBhODMxM2VjMDMxZmJkMzYwNGE2ODJiMDFhMCBsZWdhY3ktdHJ1bmsKKzIzNzQ2IDhmNDczMTc5YjA3MzAwOTRmMmE1ODA4OGY0YzBjMmU3YmViNGU0NzkgbGVnYWN5LXRydW5rCisyMzc0NyA1ZDY3ODM1NmM4OTQyOWIyZTRiOTNjYTlmYzRhZjEwYzQ0NjNlZmNkIGxlZ2FjeS10cnVuaworMjM3NDggMWE5NDk0ZjllZGIyNzAyMTdkNjgwMDg0ODgyMDlhMjI1ZmRkOWI5ZSBsZWdhY3ktdHJ1bmsKKzIzNzQ5IDRhZjhkMjRmYTY5MWVlYTFhMGU2YTFmNTAwMTVlZDNlYTlhZTQ0ZDAgbGVnYWN5LXRydW5rCisyMzc1MCA0YmZkYmM4MjMxMGYxYmMzNWE2ZDBiNmU0YWQyYTUyMDQwZjQ5YTY3IGxlZ2FjeS10cnVuaworMjM3NTEgYjY5MjczYmVlMDk1MGNkN2M5MGIyMjMyMDVlZTNjNmU2ZWZiZGQ3NiBsZWdhY3ktdHJ1bmsKKzIzNzUyIGJlNjdiNjZlNWZlZDBmNzI2NmNlZTc5M2QxNmY5ZGFiMGI4NGNjMjUgbGVnYWN5LXRydW5rCisyMzc1MyBlMDlmYjQ4NDg3NjUzNTI4ZmU2NDEyYzNjMzM0NjFhODViMjQ0OGRkIGxlZ2FjeS10cnVuaworMjM3NTQgN2NiZDQwN2JlNmU3ZDNkMTZkNzc4NjQyZWYxMjJhNzAwNjAyMWIyNSBsZWdhY3ktdHJ1bmsKKzIzNzU1IDE0OWE2NWZhNDI3YzM0OTU5YjYyMWRmZmFkNzI1ODZmN2VkY2E4MGMgbGVnYWN5LXRydW5rCisyMzc1NiBiZjRmZjA1ZWFiNTIwN2FkMDY2ZWViMjA1MzE0MTJhOTk1OWQ1ZGUwIGxlZ2FjeS10cnVuaworMjM3NTcgMWQ5ZTY5ZmNmMGY4ZDRmNTE2MjdlZWYyMWU5ZWRjZGQxYmFkMzY4NyBsZWdhY3ktdHJ1bmsKKzIzNzU4IGM4YjBlOTk0NTE1OTlmNWM3NzE3OGIxNjJlYWQ2MzQ1MjNjMWU1ZDAgbGVnYWN5LXRydW5rCisyMzc1OSA2OGZlZmE5ODJjNWMyOTFlOTc5YzdjMjYyNjU2YTVjNTFkMGIwZGYzIGxlZ2FjeS10cnVuaworMjM3NjAgN2NiZDI4ODdmNjBmY2UzZTRhOTQ2OTJhMDkwNTRmZTNmYjE0ODkxNyBsZWdhY3ktdHJ1bmsKKzIzNzYxIGE5YjE5ZGIxODBhMjYwMGIwMjFiM2M2ODFlNmJmYzlkNDM1MzY5ZDMgbGVnYWN5LXRydW5rCisyMzc2MiAyYmM0MTgzZmI1N2U2OWZhMTYwZGMyNDFkNDhlYzg5NGE1MDNmNDk2IGxlZ2FjeS10cnVuaworMjM3NjMgYTBjOGMyZTVhNDRkMDg3MmFjNTIzZjhkOGI5OGY3NTY3NDE0ZjNlYyBsZWdhY3ktdHJ1bmsKKzIzNzY0IGZkZGFjZWZlZWIzNmRmYTI2YjE1MTJhNTcxZWRhMTY4ODgzZmVjYzkgbGVnYWN5LXRydW5rCisyMzc2NSA3MzNjYjI2OGFkMmZiMGI3NDA3Y2NjZjVkODVhMjc5ZmUzNzRiODBjIGxlZ2FjeS10cnVuaworMjM3NjYgNjQyNmE1YWRiZjc3NTNiZjA2YzdjNzVkZDQwYTE2ZGVjZGU0NzdmMCBsZWdhY3ktdHJ1bmsKKzIzNzY3IDg0MzMxYzhkOThhNDFhZGQ5MGQ3YjY3MTRmZjQzZjk4ZjlmZTViYzUgbGVnYWN5LXRydW5rCisyMzc2OCBlMDg2NGFhYzliNmIyNWQyN2ZjMTVkYWY5YzY4OWFlYTk3MzU1MGZkIGxlZ2FjeS10cnVuaworMjM3NjkgOTM4NDFjNWY0NzViMTAwYThjMjU0ZmRmZGE2Mzk3ZDA3NGMyNDU1MSBsZWdhY3ktdHJ1bmsKKzIzNzcwIDk3Yzc1Zjk4MWE5ZTYyNzNkNzNjNmYyZGMxN2IyMjMwYmZmMTA3NWIgbGVnYWN5LXRydW5rCisyMzc3MSAzNjRjMjM4YTY4NzEwZmQ5NDYzMmJkNTA4NjBlMWQ4ZmI1M2E0YjUwIGxlZ2FjeS10cnVuaworMjM3NzIgOGUwYzMxODQ5YzY0OGU3ZDM2ZWZiYmQxY2U3NTgxYmM1ZDQxOWI2MSBsZWdhY3ktdHJ1bmsKKzIzNzczIGRmYzlmMjNjODY1NTM0NTMzMjMxNWRkNzI0YjNhZWE1NzA3NGQzNzMgbGVnYWN5LXRydW5rCisyMzc3NCBiZGM0ODZjNjZkZjA0YmEwZDc0NDkxOTFhNzZlYzk3NmU4YWIzN2RiIGxlZ2FjeS10cnVuaworMjM3NzUgYzEzYTQ3M2NlMWI3ZWRkYmIwOGRmMDhiNjNjZDA0Zjg4OTUwMDU0MiBsZWdhY3ktdHJ1bmsKKzIzNzc2IGRmYjJlZmE1NTk2NzJiODdlZWEwZjU3YjVlNTk2ODUwNjZiNTUwMWEgbGVnYWN5LXRydW5rCisyMzc3NyA2MmIyMDc1ODg4NjZjYzZmNTBlNTUwOGYzYWFmMzFiZTk1YzljYzA5IGxlZ2FjeS10cnVuaworMjM3NzggZjkzOGNkMWJhOTRlYzRlMzI3MzAwNTQwNGUwOWFhYTg1MDAwNmI5ZiBsZWdhY3ktdHJ1bmsKKzIzNzc5IDA2ZjEyNTRkMjI4MDhlYWQxODIwMjNhYTVjNjY0OWQwMDgxYjdlNmIgbGVnYWN5LXRydW5rCisyMzc4MCBkMjExNjBhOTIxNzkxMzg5YzEyODU2ZmIxM2U1MGYzNDliNWMzZmU0IGxlZ2FjeS10cnVuaworMjM3ODEgZDUxZmU1MjBlNWZkYzAyMGMzMjc1ZGJhNDAwMjEwMmJiMjg3NmUxOCBsZWdhY3ktdHJ1bmsKKzIzNzgyIDIzZGM3YmIwYmU0ZmI3Nzg2OGUwNTM5NmYxNTEwMWM5NWUwZTk0ODkgbGVnYWN5LXRydW5rCisyMzc4MyBkMDFjNWYyOTkxNWEyOGM4MzhhNDcyNTI3NTNlMjNmODVmNzg1YjE5IGxlZ2FjeS10cnVuaworMjM3ODQgYmMzYzg0MTk4NzRjNmUxZjM4OWNmNWM4Nzk3ZjIwMTgwMDc3YWFkMCBsZWdhY3ktdHJ1bmsKKzIzNzg1IGNiODdiZDk3Zjc0MGYxNzUxYWZmZTQ4MDFlMjUxYjI5ZDA5MzFmN2YgbGVnYWN5LXRydW5rCisyMzc4NiAzZDEzNDE3YTYzZTBmZDczNWE4NWUyZDFiMDZjOGVlMDcxN2M4ZjAxIGxlZ2FjeS10cnVuaworMjM3ODcgNTRhODM5NjA0NTQwM2MwZTI4N2YyZWNmZDFiMzhhNzBmZDBlMjgxNiBsZWdhY3ktdHJ1bmsKKzIzNzg4IGZkNTYxNDRhOTZlOGZhNjQ0YzVlMjkxODliNjUzOTFlNmE1ZTU5M2YgbGVnYWN5LXRydW5rCisyMzc4OSBjOTQ4YmNiMDQxNWUwYzMyZWE0MTM4NmJmODQ0M2ZkZDA0Y2M5MTkyIGxlZ2FjeS10cnVuaworMjM3OTAgMWYzYzFlODMxZjIxNmE0OWJlNmMwODMyM2E3MzA2MjljZjdlMDk1NyBsZWdhY3ktdHJ1bmsKKzIzNzkxIDNkM2I2YjRjYjc5ZjM5OWIyMmUyMTQ5YTc3MDcyYTkyNjE3M2YyMTUgbGVnYWN5LXRydW5rCisyMzc5MiBjYjMzNGE4YzhkZDIzYTU2NmZkYWQwYmY3YjA0NDVjMTI5ZGFlMmM3IGxlZ2FjeS10cnVuaworMjM3OTMgZGJmZWQzYmYxNjBlZWRhMDNkM2EzMjAxNzk5YTMxYTM1MzVlODQzNiBsZWdhY3ktdHJ1bmsKKzIzNzk0IGYwZTMzYzU3ZTQ2ZTgwMTAxNGQ5NzhkMTBiY2FjY2I0NTZkOWY5MmIgbGVnYWN5LXRydW5rCisyMzc5NSA5Yjg0ZWZiZjZiMGQwYjc3NjczMzJkMjM0YzNlN2U0NmRmNDEyNjMxIGxlZ2FjeS10cnVuaworMjM3OTYgYmMxMzhiYzczY2RkMWMzNTRmNzE5ZTc2MzM2N2E3OTZjMDFhZDMxMSBsZWdhY3ktdHJ1bmsKKzIzNzk3IDRmN2JlZmVjMzViMDE5N2Y0Yjc5MDcyYTU4YTE4OWFlNDI4NzZiZjIgbGVnYWN5LXRydW5rCisyMzc5OCBjMjAwNWJiODc5YjQ2N2Q1NDc5ZmYzMmFjYzI3ZjU4NjQ0Y2M3MzU4IGxlZ2FjeS10cnVuaworMjM3OTkgODBiOGJmYTA0NDA2YmYzZjQ5MTVmN2JhYTJiYzZjNDBmNzEzNDgxNCBsZWdhY3ktdHJ1bmsKKzIzODAwIDRiMTYxNWJmNmViMDlkMzFjNzYyMWM2NWE5ZWY5MTM0MTNlOTM5YjggbGVnYWN5LXRydW5rCisyMzgwMiAwMWFmOTFhZWNjZDQ0NzI1NDI0MTc5ZTI3YWY2ODMxZjM5MzY4OTU5IGxlZ2FjeS10cnVuaworMjM4MDMgZmUxYjZjZTRlYjkzNjM1OTg5MmM0NzBmYzc5NTIyOTc2YTk0NDBlYiBsZWdhY3ktdHJ1bmsKKzIzODA0IDJkNTk5YTM2YjY3YThjMzBjYjk4YTQzZGVmNDljN2VkZjM3ZWQ5YWEgbGVnYWN5LXRydW5rCisyMzgwNSBhZDI2NjIwOTVkNzcyNDY5MWQwYzQ4NGFmZjQ2YzJiZDI5NmQ0ODgwIGxlZ2FjeS10cnVuaworMjM4MDYgZjU2N2I0NTczN2MwZTM0ODBlMjhkMTJmMTEwMjg4M2UwNTIxNmNiOCBsZWdhY3ktdHJ1bmsKKzIzODA3IDI5NDkwMWFiODYzMGI1ZGMwOTcwM2NmYzA3NzA4YTI0NmZhZTRhZTAgbGVnYWN5LXRydW5rCisyMzgwOCBhODk5NWE2ZGU4ZDAwNWU2NjM2NmU3MzE1YzYwZjgzMDk4YWFkNDAyIGxlZ2FjeS10cnVuaworMjM4MDkgNGJhNDU0OGJhOTQxNzk0MGRlMmJiODMzOTdjMTJmM2M5YTYzMTM5NiBsZWdhY3ktdHJ1bmsKKzIzODEwIDM2NzE0Yjk4ZmU1MTIwZTY1MjcxZDgwMzFlN2RhZWM5ZmU1OThjYzggbGVnYWN5LXRydW5rCisyMzgxMSA3M2ExMzk1YTIzNTE2NDkwOTY5YTA0MzFmNmQzMzlkZjE4MTRmNDMyIGxlZ2FjeS10cnVuaworMjM4MTIgYTEyY2NkYmNlOGRhOTNlYmE2NWI4ZmE0ZTQyOWM1MTQ2Nzg5N2M2OCBsZWdhY3ktdHJ1bmsKKzIzODEzIGE1NjQyN2U1YzVlMTcyODRjMjJmOTI3ZWYxY2IzNDJlM2UyMTdlZTQgbGVnYWN5LXRydW5rCisyMzgxNCBkODgyNTQ3NWI4MDA3MmU4ZWE5Yjk4N2ZlODZjYjgzMGI5N2UwMzgyIGxlZ2FjeS10cnVuaworMjM4MTUgNmE1YTEwYTViNTI2NWRkMTNlNjY1MDhiZmEwMWZhMWFjZmU1ZWUxOCBsZWdhY3ktdHJ1bmsKKzIzODE2IGM5NjA4Yzc5MGY2ZjVmYTg1MTM5MTRhMzQ5ZTRlZWE1YzdlOTcxMzQgbGVnYWN5LXRydW5rCisyMzgxNyA2NWRkNjE1N2Y5OTkzNGJhNDEwNzBmODZjOGY2M2VhYzkwZDIwMzRjIGxlZ2FjeS10cnVuaworMjM4MTggNzIyYmIxZmQzMWVhMDk2ZmNlYmYwY2MwMWQxZjg2ZTlkYTNiYjVmMSBsZWdhY3ktdHJ1bmsKKzIzODE5IDAzMzZlZTViNDZkNDIyMmVjMzA3YTRiZGU2ZjdmYjVjMmQ5YWViZDQgbGVnYWN5LXRydW5rCisyMzgyMCA5NDliYTQ3ZThmMzBjYTdmM2Q2MzgyMTljNTM5ZmQxN2NkN2VlMGRmIGxlZ2FjeS10cnVuaworMjM4MjEgODdlNWZlMDU2ZDI5OWY1ZWEyYWFjNTJkOGE3ODkwZDYxNDJlYTc3MSBsZWdhY3ktdHJ1bmsKKzIzODIyIGFlNTA3Y2Y2N2ZiZmM0M2QyZjE5MTg5OTIwMDgxZmM0NzBkMjdkNzkgbGVnYWN5LXRydW5rCisyMzgyMyA0YTI1N2E1OGJlOGJmYjczMzFhZjc2YTZiOTAyOTQ4ZDFmOGQ0MzU5IGxlZ2FjeS10cnVuaworMjM4MjQgZGE4MTEyNWIyYWY4ZWFmMTBiZDEzMmZhYjMwYWU3NjU3MmJkNjM2YSBsZWdhY3ktdHJ1bmsKKzIzODI1IDQ3M2FkYmY1MjE3MTg0OGQyMTczMzE2MTQ4M2EzMGU1NTYwMjg3MjQgbGVnYWN5LXRydW5rCisyMzgyNiBlYzcyYjYzZDI2OWFlYjlhMzI5Mjg0YjAwZDdlNmFiNWVjYzdhNjRjIGxlZ2FjeS10cnVuaworMjM4MjcgZDA2MjFhNjY5YzU2OTBkMDZiZGUyODUwZTZiMzZkNjk1ZDMzNGM0YSByMjJiMS1icmFuY2gKKzIzODI5IGVjMDVhZmFmZTEzYjk1ZDdmNjRhYTUxMmFhYjc2ZTdlMDdjNzgwZjUgcjIyYjEtYnJhbmNoCisyMzgzMCAzNzdiMDlhYzcyNmU3ZWEyZTI2NTg0MjcxYjdhM2RhOGQ2ZmZmYWQzIHJlbGVhc2UyMS1tYWludAorMjM4MzEgOTA1OGU0OWM2YzU3ZDIzN2I5MGJhYzY0MGU4YzUwNGU4MGNjMDJiNCBsZWdhY3ktdHJ1bmsKKzIzODMyIGNlMmEzZjE1NjE1ZjZiYTNhZjcyNzNlYzEzNTMyMjRjYmViOTlhYmIgcjIyYjEtYnJhbmNoCisyMzgzMyA4ZGRkZmZmYjlmMmJiN2U0YzhmN2MxYzkyZTViZjI3NmUyMTUzNjFmIGxlZ2FjeS10cnVuaworMjM4MzQgNmY5OTAyYWNlMThkOGViNmYwYjgwMmJlNjkyNmEzZTM2ODhiZmM2NiBsZWdhY3ktdHJ1bmsKKzIzODM1IDA4ZjE2NWYxMzVhOGE2NDM2MGU0ZDgyMzU5Zjg0NDI1ZGI4NjUzZGYgcmVsZWFzZTIxLW1haW50CisyMzgzNiBjYjhlOGI0MmNkZmJlYjVlMTc0MzA0YzQxZjlhNGY5Y2I4NDc4ZTYxIHIyMmIxLWJyYW5jaAorMjM4MzYgZTlmYWQ1NWVmNzA0ZGJlYmNkZTVlMTRjYjhkYjk2YWY4NGMyMmU1NSByMjJiMS1icmFuY2gKKzIzODM4IDYxODA5YzUxNGFkODA2OWVmMjQzMjM2MjBkNjNjNGVkMmNkNGVjMGYgcmVsZWFzZTIxLW1haW50CisyMzgzOSA4MDVmMTg0YjZkZTA5YTUyOWNhMjAzN2MxNjNkZWE1NzY0ZmZmMmJmIHJlbGVhc2UyMS1tYWludAorMjM4NDAgZDA2NDQ2ZDRlNzhkYTIzNDA4YmY1ODU1YjIzMDhjZjkzOGJhNjViMiByZWxlYXNlMjEtbWFpbnQKKzIzODQxIDcxMTEzNWNlMWU1NGY1ZTc2OTExNTAxMmQxYzlkM2ZkZGMzN2QzMTkgcmVsZWFzZTIxLW1haW50CisyMzg0MiA1NDFmODI1YzdkNjM3Y2VjOWRjZmVjZDI0YmM2ODU2YTkxNjU0N2VkIGxlZ2FjeS10cnVuaworMjM4NDMgYTliYWJhMTZlYmYzOWQxYzk5ODcwMDBkNzdjOGZkZmVlM2ViMWFiNiByZWxlYXNlMjEtbWFpbnQKKzIzODQ0IDVmNDk1MGRkMzdjOGE5YjczYzQyMTZiYTc3OGU0MmExMzE1ZGZhNzUgbGVnYWN5LXRydW5rCisyMzg0NSA1YWY2Yzg5YzhjYjc1ZjMzN2QzMDVlOTc2ODc5MjkwMDM5YjNmNGQ5IGxlZ2FjeS10cnVuaworMjM4NDYgMTUxZTQ1ZTk4YzExZDM1NjMwMTk1N2EzMDBlNTIzZjgxYTIzZDM4YyBsZWdhY3ktdHJ1bmsKKzIzODQ3IDJjYjMyZjdmNzhjMmQxZTRmZDZlZjgxYjI2Y2IyNDdlYTgzZGMwYTIgbGVnYWN5LXRydW5rCisyMzg0OCBjZTg4ZWI0NjVjZTc2YzEzYWQwOWQ5MTFiMGFiMWRkOTFhN2YzOGJhIGxlZ2FjeS10cnVuaworMjM4NDkgOTA1OGJjY2U2OWUzMThjODBkNDRmYTAzYWYyMmVhNWMyYjAyNmY2MCBsZWdhY3ktdHJ1bmsKKzIzODUwIDg0YTU4NmFjZGMwMjM3MzNhYWUzZmUxZGE4ZWUzMTMzYjM3Y2E1M2UgbGVnYWN5LXRydW5rCisyMzg1MSAzNzZlZTE3NGVjZDA3NzQyMTE2OWI4OTAzM2MwNDc3NGU0YjQ1N2JiIGxlZ2FjeS10cnVuaworMjM4NTIgYmYwM2I4ZTNlZjkzYWYxMTUwOTA5ZDhjOTVjYzMzM2NiNDYwMzdlOCBsZWdhY3ktdHJ1bmsKKzIzODUzIDgwYmNjOGI3ZDYxOTBlYjczZTBhMTFmNDFmNjQwNGUzZWFjNDdhNWQgbGVnYWN5LXRydW5rCisyMzg1NCBiNWNhMDY4N2JhNmE4MDk2YjExYmJmOGQ2ZTZlOTVlMGJhY2JmYWFlIGxlZ2FjeS10cnVuaworMjM4NTUgODg3YTkzZjlkNWQ1ZDljYmZhMzhjNGJlYmQyMzI1MDljZjM0ZmUwYSBsZWdhY3ktdHJ1bmsKKzIzODU2IDdkMTI1NzQ4NWFlZjJlN2I4MGY3MWQ3ZmVmYjhiMTBlMDFiYTI4YTQgbGVnYWN5LXRydW5rCisyMzg1NyA5YmQ2MDNkNDM0ZjU1MmFiODMzYjAzMzE1NTU3NTUwODFmN2FhZWMyIGxlZ2FjeS10cnVuaworMjM4NTggMzI1ZDUxM2E1MGJiYThlOTAwYmI2ZmE0MmVhYjI2MDRjYWRlMjJlNCByZWxlYXNlMjEtbWFpbnQKKzIzODU5IGFhZDc2MjUwM2QxMWU4YzI0NDMyNjVmYTk1NDMyZTMwMDNjNzNmYmIgbGVnYWN5LXRydW5rCisyMzg2MCBkMzI5ODQzNWQ4NWI1ODRiNjUwOWZiMDhiYmNjMjc3M2VjZGFmNzYzIGxlZ2FjeS10cnVuaworMjM4NjEgMDUwZWQ4YTIxY2RlNWRkZjNlZmI1YWQ1ZjMzMmU4ZGViNjE0ZTAyMiBsZWdhY3ktdHJ1bmsKKzIzODYyIDkyNDZiNmM3ZTc0MjJiYzZlOTIzNTczYzAyYTIzMzc1NjE5Njk2ODAgbGVnYWN5LXRydW5rCisyMzg2MyA4MmJjZmFjODk2NDI1Y2M4YWZmZDVjNzM2ZDE2ZTgxMmVjMjVjODY3IGxlZ2FjeS10cnVuaworMjM4NjQgMjVkNzY0ZDg4MTQ5MWM3M2QxMDE5OGU0ODI4NGUxZWUyMGE0ZjU1YyBsZWdhY3ktdHJ1bmsKKzIzODY1IDBkNWU2ZmMwNDgxZDYxNGFjZmM5MDI0ZWQzN2RiYzE1YzAzMGE1MDUgbGVnYWN5LXRydW5rCisyMzg2NiBjNGQ5ZDg2NzQ1MDYyZWExZTMyNGIxOTQ3YjE3NzlhODFhNGE5OTBmIGxlZ2FjeS10cnVuaworMjM4NjcgY2E1ZjJmZjgzOTc5MmFjODJlOTViOTlhM2U4ZTUxYjhkMDIzZTIyYSBsZWdhY3ktdHJ1bmsKKzIzODY4IGI0N2UxNWZhNDNlODUxYzM2MDcyYjhmNjg4OGZmMDUxN2NiMmVkNjEgbGVnYWN5LXRydW5rCisyMzg2OSBlYjZiOTUzZWNmN2NhN2VmMzUzYzgyMjk1MzFjMmE3YjkwMTg4MjZkIGxlZ2FjeS10cnVuaworMjM4NzAgZmY1N2ExYTM3MGIzNTAxZjI1MjI2ZTJhZDI2YjZjNzJkYzRjYTQyMCBsZWdhY3ktdHJ1bmsKKzIzODcxIGVlYmRkZDNiOTRhNTMwY2E5MTUwM2E0NWE4ZTZiMjVmMDJlZGYwMDkgbGVnYWN5LXRydW5rCisyMzg3MiA1YzFkZmQ5Mjg3N2Q0NTdkNzUxMWE1Y2Y3ZjQ4YTkyNjFlNzE0ZGIzIGxlZ2FjeS10cnVuaworMjM4NzMgOTAwOWMyNTY5NGQxZmMxYmJjZTU1YTBkYTBkNjBhNzkxMGJiODc0YSBsZWdhY3ktdHJ1bmsKKzIzODc0IDRiNzlkN2Q5MWI0ZjlhMmEzZTkzZWUyOTM4ZDk1NGVkY2I3ZWE2OGYgbGVnYWN5LXRydW5rCisyMzg3NSA3OTQ1NjM5ZGYyNjUwMGNhY2RkZDA0MTY4YWE4ZWM0NGI3YzIxYjc1IGxlZ2FjeS10cnVuaworMjM4NzYgNzM3MDJkN2YxM2IxYjE1OWEzOGVlZTllNzBmZWViOTdmZmQ5NjFhNyBsZWdhY3ktdHJ1bmsKKzIzODc3IDJkOGRiZWJmODFlMDZhMTdjZWY0YmM4ZmRmZjQzZjM2ZDg1NzExY2EgbGVnYWN5LXRydW5rCisyMzg3OCA3ZjNkMGNjMjE4ODk5NmZmMDMxZGI3YTNiZjcyYTk5ODk5OWFmN2NkIGxlZ2FjeS10cnVuaworMjM4NzkgNjg5ZDBiYmM5MWIxMzkyNTkyNzNmNGFjYWJiYWMxMDEzNjc5ZDZhZSByZWxlYXNlMjEtbWFpbnQKKzIzODgwIDgyOGNiMGMyYzQ4MDVkZTMxNGRiMzIwNDQ1NDNkNTM5YjU4ZDI0YjMgbGVnYWN5LXRydW5rCisyMzg4MSA3ZGNjOGEyODEzM2EyMmIwOTQzZTg1MWI1OGJhYjdmOTdhZWU0MmNjIGxlZ2FjeS10cnVuaworMjM4ODIgNzE2YTQwNmU5YjRmYjNkNWE3NDcwOTVmMGRlNGViZDhlOGZjOWQ1YyBsZWdhY3ktdHJ1bmsKKzIzODgzIGJlYTk0MDRjZTYyY2QyNDgzYWNiZDdmMzgxNWViMWJlMDEyZTNkYTAgbGVnYWN5LXRydW5rCisyMzg4NCBiZjRiMzc1MThjMTQ3NzJlYTIzZWFhY2JmMzAwMjczMzM0OTcxYTYyIGxlZ2FjeS10cnVuaworMjM4ODUgNDAzZGQ1OWNhN2Q1ZGYwMTIwMzhkZWM3YjM0OTUwOGVjYWRhYWQ0MSBsZWdhY3ktdHJ1bmsKKzIzODg2IDMwMmExYzAyNWRjNzkyZWE4ODJiOTQwNzAzNGY4NDY4MzQ0YWY4N2EgbGVnYWN5LXRydW5rCisyMzg4NyBhM2Q2YjMxZThiYjlmZGNkZWM0MGQ4MjQ1MDBlZGI1OTBhNTRiYzZlIGxlZ2FjeS10cnVuaworMjM4ODggYjk3NDUyMjliZDEzMmM3MjQ5YTlhZWRkMjI5OTcwZmQ2M2FjZGEzYSBsZWdhY3ktdHJ1bmsKKzIzODg5IDU3YjUxOTY2YTRmMWYwNmYzMDcyZTY5MWQ5OGM3OGM3MDQyNjUxOTUgbGVnYWN5LXRydW5rCisyMzg5MCAwYjFjMTM5NGJlYzYxMTkzYTAyZGE5YjA1NjdmODRhNWYzMzYyYWM4IGxlZ2FjeS10cnVuaworMjM4OTEgZTRmNTEzODI5MmU2NTliZTI2NWZkNzAwYjRhMDk2YTI4NWRkZTlmOSBsZWdhY3ktdHJ1bmsKKzIzODkyIGI2ZjgxOTdmNGRmNzg0YWFhYmE2OGUyOGZlYTNiNDA0ZDY5Y2MwYjMgbGVnYWN5LXRydW5rCisyMzg5MyBhYTU2NDc1NjllZTJhYjM0MTVmYjJkMDgzNmRhMzMxYTMwMzZlOWRiIGxlZ2FjeS10cnVuaworMjM4OTQgNGZiNzcyN2U0ZjQ3NWJlYWMwODQwZWY1YTQxZGE2ZGE1ZTM3MmUwNiBsZWdhY3ktdHJ1bmsKKzIzODk1IDdjMzgxZGQwNzc5Y2E3NmM5ZmIwNjE1NjUyZTg3OTY5YjU2NDJjZGEgbGVnYWN5LXRydW5rCisyMzg5NiAyYzFhNDU4NGE3MDQzMzVlMDU2OWU5OTA1MDY4NjQ0Y2UwOWZlMWU3IGxlZ2FjeS10cnVuaworMjM4OTcgM2QyOTliMTU2NTExMThjYzk4ZmVmMjkzNjg1YjNjOTYyNTliODUyYyBsZWdhY3ktdHJ1bmsKKzIzODk4IDk3YjE4YzA5ZDIyYTJhMzQ2NDE3YTFjMTA3ZjI1ZDg1N2RlNzc1ZmUgbGVnYWN5LXRydW5rCisyMzg5OSAxNTk4NTg4ZWYxYWRiN2U0ZjhkOTQxNmNkNjI1MWU5YTZlNWY3MmE3IGxlZ2FjeS10cnVuaworMjM5MDAgYWNjN2UzYjRkMDQyZmVlNWE3NzQyMzM5ODE0Y2U4N2JhMmM5ZTU2ZiBsZWdhY3ktdHJ1bmsKKzIzOTAxIGU0OTZiODUyMjljNzliZDAyYTljNzZjOTIzNzg4NzdjYTFiYzY4YzcgbGVnYWN5LXRydW5rCisyMzkwMiBkNWIzMWVmMjNjZWJlMzFmMzZiNzEwZWU0NTAzZjRlMjdhNzY1NWUyIGxlZ2FjeS10cnVuaworMjM5MDMgNmM4NGQ1NWFiYjU4YTEzNTdhNzBjODhhZWNjMzlhZjA3NTc2NTVkMCBsZWdhY3ktdHJ1bmsKKzIzOTA0IGZlZDhhMTg4OTRmNWY5YmJkNGM4NWY1MGUzMDUxNTdiZDQxZWRjMWIgbGVnYWN5LXRydW5rCisyMzkwNSA4OTliZWJjODkwNDdlNTA4MGIzMjA5YjQyZDIwODk2ZDVmNTEzNmUwIGxlZ2FjeS10cnVuaworMjM5MDYgMDRmMjgwMWQ5OTc3MGY1OTM0N2NhNWVlNWUxZDlmY2U3MWE5MzljOCBsZWdhY3ktdHJ1bmsKKzIzOTA3IDNmODBjOTFiNWMzY2ZkYjU0ZThhMGY3YmU2ZWFmZjFkN2Q0YjhkZjQgbGVnYWN5LXRydW5rCisyMzkwOCA4YjllMmZiY2FlMWZmY2ZiY2MyNGQ3NTk2MDFiYjVmOGFhYjkwNDAyIGxlZ2FjeS10cnVuaworMjM5MDkgNmYyY2IxODA2OGRkZjkwNjUyZTc0OTk3Njc4M2NjOTIyMmZkNDEzNCBsZWdhY3ktdHJ1bmsKKzIzOTEwIGFhNDZjNjYxODhkMzZjOTU1MDIzZDEyYmQwZGNiOTUyNWZjNzFjMmIgbGVnYWN5LXRydW5rCisyMzkxMSA3MWE5YjA1M2FiNDJiMmNkMmJiNTA3OTg0Y2QwOWI0NWIzYTdkYmRlIGxlZ2FjeS10cnVuaworMjM5MTIgYzgwZGFmY2UxYjc0YTZhZGY5NDMyMzI3YWNlMDlmNTBiNTNiY2M2YSBsZWdhY3ktdHJ1bmsKKzIzOTEzIGFiODMzZDlhMDliOTgwYWYwZGZiOTc3MTcwMDY4NTlmMWIyNTllZjkgbGVnYWN5LXRydW5rCisyMzkxNCBlZjc4ZWM2MDJhNDA2MzgwN2QwOWNmNGZlMDkxYmQ2NGFlMzZlNzE2IGxlZ2FjeS10cnVuaworMjM5MTUgN2M0MWM0ZmJmOWM3M2MyYTc1ZjQzMWUzNzg1NTc1MmY3ODZiYTlmZiBsZWdhY3ktdHJ1bmsKKzIzOTE2IGIwNzg5OTFjYjU2YTNkMDNmMDRjNWQyNDBhMjVlNDcxYWIwMzU3OGYgbGVnYWN5LXRydW5rCisyMzkxNyBjYWJiNTY4YTU1OGIxZTYzNGNlNWUzZjUwMTEyYjU5NzQ4Mjg2ZTUxIGxlZ2FjeS10cnVuaworMjM5MTggZGQ3OGIxYTcxZjNlYWY3MzEyMTVkMjQ4M2VlNWFhNDRlNzA0ZTlkOSBsZWdhY3ktdHJ1bmsKKzIzOTE5IGZlYzk1MGQ4YzI1ZDdiNGZhYjJjOTMxNDhiMjQ2NDhjZWEzMzFlOTUgbGVnYWN5LXRydW5rCisyMzkyMCA1Mjk1N2EyZGZhZmU2OTA0NTk4OTYzMjQyMDNiNGJmYmVkMWMzMGM1IGxlZ2FjeS10cnVuaworMjM5MjEgZWIwMDRjYzAwOGQyNzc2YzhhODEwMTcwYTEzN2I1MzU0ZWIxMWYzMSByZWxlYXNlMjEtbWFpbnQKKzIzOTIyIDhkZWIzYjVmZDdjMTc4OWZiNmQyOWM5ODNhNDhmODQ1MjllYzgzNTIgbGVnYWN5LXRydW5rCisyMzkyMyAyZDNjZWU5ZjE2MzMyMGFjMzQ2MDc4NWQwMzFlZGEzODE2NTRlYmEzIGxlZ2FjeS10cnVuaworMjM5MjQgNzU3YmNmYTIwMWRjMTk4YTQ2Mjc4MjI3YjM5ZDQzMjAyOGRhNzAwOCBsZWdhY3ktdHJ1bmsKKzIzOTI1IGVkZDlkMGIzYzQ3ZWZhZTdmYjIwMTBlMTMzMjkwYjU2ZWFhZjBiN2YgbGVnYWN5LXRydW5rCisyMzkyNiA3MzQ0Njg3YmYyYzBhYjhmZGQ5ZDUwZDcxNzE5OGY3ZjE3NGQ3ZWNjIGxlZ2FjeS10cnVuaworMjM5MjcgZDBlYjIwMzZlY2NhZjI2NGU5NWZhNWFhODdhZjRmZDkyZDRmN2Q0ZSBsZWdhY3ktdHJ1bmsKKzIzOTI4IDM5MzU1NmFkYjI5NTBhMzc3MmI0MWE2NWZjZDg2ZWFiZjFiZGM5YTggbGVnYWN5LXRydW5rCisyMzkyOSBkY2FhMmM4OTQzMGU3OGZlYzExYTdmYWZiODNiOTdhN2E5MjBjZWEyIGxlZ2FjeS10cnVuaworMjM5MzAgY2UxM2FhMzFlMTg5YTA5ODFkYzQ1YzJmMjU2NmMwN2IxNDVhZDIxZSBsZWdhY3ktdHJ1bmsKKzIzOTMxIGMwNWQ0ODk1MjM0YzEwZWI5ZGYxZTMxYTkyODAxMmM2OWRlNzhhNDYgbGVnYWN5LXRydW5rCisyMzkzMiBmNzAwOTE2N2RkNjdjMzhkZDA0YWQyNTYzMDk3NzM2ZDgwOGE4MTE5IGxlZ2FjeS10cnVuaworMjM5MzMgYzQ3OGE1MDkxZjNmZmZiZDVhOTg5MjNjZjk4YmFhYzIxOGJkNzM3NiBsZWdhY3ktdHJ1bmsKKzIzOTM0IDVjZDhjODdhODhhZWQ4MWI0NzRhMGVhZjI3MDE4M2I1MTM2NGYwM2YgbGVnYWN5LXRydW5rCisyMzkzNSAwMzk3YTc1YTViZmRkNWZjZmQyYjE0YmRiYTVhOGE0ZmY1Y2Q1OWRlIGxlZ2FjeS10cnVuaworMjM5MzYgM2NlMDNlMmYwMWVmN2YwMTZmMjQxOGYyZTI3NzQ5MWQ3OGUzOGQxNSBsZWdhY3ktdHJ1bmsKKzIzOTM3IDg4YTI0MmJmYjIzYWIwYTE1ZDk0YWI4MDBkMTc2MjFlOWZjZTAwMTYgbGVnYWN5LXRydW5rCisyMzkzOCA5OGU1ZDkwMWJmZGZkOTIwODgzNDQzM2ZlZjlkMjgwNWE4N2Q4MTA5IGxlZ2FjeS10cnVuaworMjM5MzkgM2U5Yjg1ZGU0NDdiOWE2MDdjNmNlMjk3NGFmY2RkOTliMDkxZjk4NCBsZWdhY3ktdHJ1bmsKKzIzOTQwIDUzNWRjMzY1MGJlY2Y1M2RlYWVjOGNmMDBmY2NkNDZmZTRjMWVhMzcgbGVnYWN5LXRydW5rCisyMzk0MSAzY2ZkNTc4ZjY0OGIyNDhlZGYyMDc4YmRjMWQyNGViMGIyOTA0ZDY3IHJlbGVhc2UyMS1tYWludAorMjM5NDIgM2ZiNDAzZWFlZGUxZTYyN2FlMmYzYzY3YTE5NzA2ZGQ3MTBhYjQ5OSBsZWdhY3ktdHJ1bmsKKzIzOTQzIGQ5NTFjMmRlMDk1Y2FlYzQ5NmViODhkZjUxZDI1MGQ5MmU0YTU5MzkgbGVnYWN5LXRydW5rCisyMzk0NCBhZjlmMjkwMjY0YWZkZDc5M2I0N2MzNzBhNjllMzk3NTdjZDI3YjhmIGxlZ2FjeS10cnVuaworMjM5NDUgYWJhN2E0ODk1ZTRkYWU0OTFjZWIwNDE4MTYyYzkyY2ZiMTI4ZGJiYSBsZWdhY3ktdHJ1bmsKKzIzOTQ2IDc0MThlMGQ1ZmMwMTBmYTE4NzlkMDY2MDc5NTY4YWFmNTg2YjE2ZjMgbGVnYWN5LXRydW5rCisyMzk0NyBhZTk0YjVmN2RkMzBmNTU0MTAxOWNiMWM4NThiNDkyNWJlM2UyMzQ3IGxlZ2FjeS10cnVuaworMjM5NDggZjYxNDgyNWQzMjZhYzI3OGIzYjc5NmQyMTE0YzAwMzMyYTNmNWEzMCBsZWdhY3ktdHJ1bmsKKzIzOTQ5IDYxZThmMDFkZTgyMTI1ODU2M2U0NDdkOWNiYjEyZTdiYWJjYTQyNmYgbGVnYWN5LXRydW5rCisyMzk1MCBlODljMjVjYTZiMjlmNjA1MDY3NmUxZjZiN2NlY2E1M2I1ODM5ZTBjIGxlZ2FjeS10cnVuaworMjM5NTEgZTNjMjRmYzIwYThkYmMwNmM0NDk0Mjg0OGQwY2VlNjkxZDU2NGI3NyBsZWdhY3ktdHJ1bmsKKzIzOTUyIGEwZjFjMmQyYWM5ZTRhMjMwMzMyMzQ5YzQ3ZDcyNTUwYzUzYzVjNGQgbGVnYWN5LXRydW5rCisyMzk1MyBmMzFiMTJhNDI5NTFjZDc1N2YyMmIyMDEwMjVmNWNjNTNiYWIzNzNlIGxlZ2FjeS10cnVuaworMjM5NTQgNTA1ZGQzNGUwZWViZjlmODI4OTM2YjU5NTJhZjdmZjg1Zjg5YWYyZiBsZWdhY3ktdHJ1bmsKKzIzOTU1IDQzM2FlNDgzODcwMzVmMTk2NzNmMWRjNzFkNTcwZDQ1M2NlNGNkOTYgbGVnYWN5LXRydW5rCisyMzk1NiA5OWFkMmE5ZDIwZTFjMTI3OGYwYWNmYTg2OTYyMDYxYTkyYmExOTZhIGxlZ2FjeS10cnVuaworMjM5NTcgMzExYTJhYmVhOGE0N2FjMzJhMzUzNGIxZTU5ZjNiYzc5YTdjNTQwNyBsZWdhY3ktdHJ1bmsKKzIzOTU4IDM2N2NkOGU1ZGY0Nzk0OTRlN2NlMDc1YmMxZjVhNDU0M2YxMDcyNGUgbGVnYWN5LXRydW5rCisyMzk1OSA5OWVlNzE5MTk3YmE3ZWMwYTQwZDM1NzFmOGRkOWQxOWEwOTE3NjQ0IGxlZ2FjeS10cnVuaworMjM5NjAgYTAzMzJhZTg0OGUyNmZiOTZhYzYwMzc5ZWI2MzFkYjNmYmEyYzBhOSBsZWdhY3ktdHJ1bmsKKzIzOTYxIDg2ZmIxOGZhMzQ2ZjhhOGE2OTc4NzQ0ZjI3NmI1ZDQ4ZTVmYjE3NjYgbGVnYWN5LXRydW5rCisyMzk2MiBjM2UwYmQyMDc3NWNjNDlmNDM0NGI1NmMyYTUyYmE0MTNmY2UyYjQzIGxlZ2FjeS10cnVuaworMjM5NjMgMzgzODBkNWYyN2Q0MGIyY2I0NmRjMTViODA0YmU3NDQzMjg2NWFiMiBsZWdhY3ktdHJ1bmsKKzIzOTY0IDY5MDM0MjBmMGE4MjVhY2NlZWY0OThhYzljOGFjNWI5MDc1ZTMwNDEgbGVnYWN5LXRydW5rCisyMzk2NSBkMDIwNjhkMTYzY2ZjZWRlYzEwNjI3OWVhZDI3YjlmYjBhMzhkYjMwIGxlZ2FjeS10cnVuaworMjM5NjYgYWRmNTY1ZjBmOGFlNjA4NWVlODBjYmJlNjBhN2ZhMGFjOGE4NzBjOSBsZWdhY3ktdHJ1bmsKKzIzOTY3IDM5ODEzNWU0MDBjN2Y4M2I1MmQ5NzZhN2I2NGY3ZjNmOWUxYWI1YjEgbGVnYWN5LXRydW5rCisyMzk2OCA2NDhiYzc0YzQ3YWI3MjYyZTNmODFkZDNhOTQ2MTBhZWNkMjJkZTQyIGxlZ2FjeS10cnVuaworMjM5NjkgYjIyOTIwOGEyYTcyNzM4Yjk4ZWZkZDA5MTI0OTZkYmMyYjZiNThmOSBsZWdhY3ktdHJ1bmsKKzIzOTcwIGZhMGJmNmM3OWUwNDJhMDJhZjMzZDgyOGMwODlhMzQ3MDkyOGEzNDYgbGVnYWN5LXRydW5rCisyMzk3MSA1ZGUzYTU5NDcyNTdiYmIxNDQ2NDhkMTM2M2Y0YTNjMDI2MGJhYTBkIGxlZ2FjeS10cnVuaworMjM5NzIgNWY2ODUwZDFmOWU4NTIzOTIxZGRhMWE0OGI5MDk2NDY2ZGMzNzdlYSBsZWdhY3ktdHJ1bmsKKzIzOTczIDRiM2VmYzc1MDEzOTZmYzIwMWQ2Mzg2NDVkNDg4ZGZlYzdkYmRiOWIgbGVnYWN5LXRydW5rCisyMzk3NCBiM2EwMGQzMTY1YmVlMjMwOGUxMjU5MzUyZWI0YzljZWRiYTdhYjJiIGxlZ2FjeS10cnVuaworMjM5NzUgMjkyNWUyN2EyODFjNTIxYTNiZjFhYTE0MzFiNjNkYzk5YWEzOTg3MSBsZWdhY3ktdHJ1bmsKKzIzOTc2IDc5OGY2MTk5N2MwOGQ1ZDJkMDQxZWRiZmQxNzRiYTUxZTgxZjIyMzAgbGVnYWN5LXRydW5rCisyMzk3NyA0MTMzYWJlZjVhYmJkMWEwZmM5YWQ4MzJlNDUyMTVjMTRlMjU5MmQ2IGxlZ2FjeS10cnVuaworMjM5NzkgMTg0YjhiOWEyNjU0Y2JkZmNmY2Y1N2M0NmI3MzY5MjA2YzcyMjQxNCBsZWdhY3ktdHJ1bmsKKzIzOTgwIGU5MTJiNjgzZWQzZTE1MzZmMGI0YzlmNWU2ZTFkM2I1NmEyMGY1NDQgbGVnYWN5LXRydW5rCisyMzk4MSAzMTA0NTBlNzRmMmY1N2RkZmRiYWIyYWU2OGE5MmJiMzVlNDc3NDY1IGxlZ2FjeS10cnVuaworMjM5ODIgYTQ0Y2MwYzIxY2ZlMzE1NDI1ZTM4MGU2NDZjMDFhZDJkMWUzMzMzNyBsZWdhY3ktdHJ1bmsKKzIzOTgzIDI4OTA3NjliMWU2OTY2MjRmNmY5M2QwYTk4MWRjNDFiYmJjNGRlMzUgbGVnYWN5LXRydW5rCisyMzk4NCBhNmE0YmQyZjA2ZDBmOWZlMjg0NzEwODQ0OTc4ZjQ1NmEzZmJmNGFhIGxlZ2FjeS10cnVuaworMjM5ODUgN2Y0MDg5NTE5OTI2ZTVjNWExNDMzMTcyNDRjYjRhZGJkZjNjMTUyNCBsZWdhY3ktdHJ1bmsKKzIzOTg2IDA5MWY5NjU2ZDc5YjM1OTE4ZjkwNDJjYWI2NzhlYWEyMTgyNTFjYTcgbGVnYWN5LXRydW5rCisyMzk4NyA1ZTZmODE4N2JkNDg5M2YzOTU0NTBiMmYxYzM4NDg1ZWY3ODMwN2M3IGxlZ2FjeS10cnVuaworMjM5ODggZGNmNzY5YzEyZDhiNDEyZmJkYjcxNTc5NTIyOTQ1NDRiZGVjZWI1MCBsZWdhY3ktdHJ1bmsKKzIzOTg5IDg0NzE1ZDUyZDk1NGU5ZDUwNzk0N2I1NjViZDAwMGQwYjkzNGViZjYgbGVnYWN5LXRydW5rCisyMzk5MCBjNjM4NDU5MWQ4NDZjZTZhMWIzZDY2YzcyNGExNzM3ZTM1MjM2NGQ5IGxlZ2FjeS10cnVuaworMjM5OTEgNWUzNDdlNGUwNWJmNWVjYzhiMGRhNDIzZmQ0OTM0ZDVhNjhkY2VlNyBsZWdhY3ktdHJ1bmsKKzIzOTkyIGFhZWZjMmYyMWJhZWYxY2UzOWU4MmQwYjM0OTRmY2FhZDYxZjFmYjIgbGVnYWN5LXRydW5rCisyMzk5MyBhY2I4NTRiODk3YmI2MTU0Zjg0OWEzOTBhNjg0MmVhM2RjYjk3MjQwIGxlZ2FjeS10cnVuaworMjM5OTQgNjc2ZjEwNmE1MDAyM2Q0MTBmMjVhMDAzNjFiN2Q0MTIzOGYxMDJmZiBsZWdhY3ktdHJ1bmsKKzIzOTk1IDZhYzQ1MjQ0YzQxZTBhZTdjZDU3NzBjNTg0NDI1MzNmY2QzYzBiZjkgbGVnYWN5LXRydW5rCisyMzk5NiBmMjI0NjMyZDAyNjAzZjFiNjg0MzZlZjQyNjdiOTQ2NWI0NWRjYjhmIGxlZ2FjeS10cnVuaworMjM5OTcgNzEzMDc1MGE2MjIyMmU0NGZjNGIxZWMxYzQ4NGRlMjQ2NzFhOTljYSBsZWdhY3ktdHJ1bmsKKzIzOTk4IDU4N2I3NDg1NGY4YzA1MDQ5MmJlM2E5ZmVlNjA5MTE4YjJjZDFhMTIgbGVnYWN5LXRydW5rCisyMzk5OSBhYmQ3MWU4OTg0MGY3Nzg0MWYwNTQ4ZjZjMmRhZTlhMThmMjcwNDRmIGxlZ2FjeS10cnVuaworMjQwMDAgY2Q4MzVjYWE1MDZjMDkyYjEwNGExZjI2NmZmNTg2MTY0ZWFiN2UzMiBsZWdhY3ktdHJ1bmsKKzI0MDAxIGNkNjAwMDM5YTEyM2UwZjdiNTU3M2FlYTBiMmVkYWY1ZWM5YTMwZTYgbGVnYWN5LXRydW5rCisyNDAwMiA3M2NhYmU2NjRjMTFlYjZiYTdiYjJiNDIxN2Y0YzcwYzZkNTE1ZjliIGxlZ2FjeS10cnVuaworMjQwMDMgODM1OWMxMTg5ZjczMDI1MDQ5ZGY5MWUwZGQwYzYyZWFiNTVkNjJjYyBsZWdhY3ktdHJ1bmsKKzI0MDA0IGIzYjJmYTc2YTM5MjllY2VmMDZjMWI3OTM4MDFlM2E3ZTI4NjY5OGEgbGVnYWN5LXRydW5rCisyNDAwNSA2MzVmYTE0ZWRhNTA5YTgxZWIzNTQyYzk0MGUwNDlmNTE5MDVjNDMzIGxlZ2FjeS10cnVuaworMjQwMDYgYjA2MjgwNDNlNTM3ZGFkNzg0YTUwMWJmMmY2MjY5MGQ5ZjRkZDg3ZiBsZWdhY3ktdHJ1bmsKKzI0MDA3IGZhYTI3MjZkZWEzNzE1NzgzN2M4YjkyOTYyYjIwNmNjMjEzNjAxOGYgbGVnYWN5LXRydW5rCisyNDAwOCBhNzg4NGU3ZWVjYzliMjU4OTM5OTE3MWM5MTU4N2NiMmViMTFjZGM1IGxlZ2FjeS10cnVuaworMjQwMDkgMDBhNTgxYmRlZGViYWYwMjQyZjUxYzlkYWI3ODgwMWU5NWZmNTQ0OCBsZWdhY3ktdHJ1bmsKKzI0MDEwIGM3YWFjNzhlMjNiNDljMzFiZTE5NDczZGRiOWRjYTQxZjg4MTEzYzMgbGVnYWN5LXRydW5rCisyNDAxMSAzYjg3NzQwZDFiYmM4NWE2Mjg4NDQ1NmRkOWUwNDY4MjcyYmJiOWI2IGxlZ2FjeS10cnVuaworMjQwMTIgYWQ0NWQyMmIxOTVkMTNhODI5ZjUyYTQxNDcyOTMzNDFkYWMzNzZlYSBsZWdhY3ktdHJ1bmsKKzI0MDEzIDNlNDYyNTgxOGY1ZmY1OTY0Y2E4ZTljMGFmOGU5MjJkZmVmYzEwNmMgbGVnYWN5LXRydW5rCisyNDAxNCBkNWY2YjRkNTgzODBlYWE1ZDY0YjdlZDkyYmE3OTAxNWMyOTlmYTJmIGxlZ2FjeS10cnVuaworMjQwMTUgN2RhNDE3OTk5NTExMTMwOGY2NTk3ZmYxM2JiNzc3ZTZhNmVmOTRmMCBsZWdhY3ktdHJ1bmsKKzI0MDE2IDIzZDIzMGVmNDE1YmE1NmEzMmIyM2UyZmY2NzIzNTg4ZDBjY2Q0ZTAgbGVnYWN5LXRydW5rCisyNDAxNyA4MzYwZDY0MzI3MDdjNWI4NzQ0M2UwM2QxMzI1NzNjZTYzOTgzODdkIGxlZ2FjeS10cnVuaworMjQwMTggNDYxN2QzZDc3MGM1OTkwZmJiMzBkMDY4Y2NlMTNlODFlNTMwODNlZiBsZWdhY3ktdHJ1bmsKKzI0MDIwIDlmNjI5NTVkZTRjM2ExZTcyYjBkMjEyNDJkMDg0OWNkMDEyOGQwMWYgbGVnYWN5LXRydW5rCisyNDAyMSAwOGRmZDNjMjJmNDFkY2UzYTE0OGI2YzBhMmI4MjI3ZjVjYjU0YWYwIGxlZ2FjeS10cnVuaworMjQwMjIgNzc1OTI2YmNmMDY5MjVmNzFlYjc4MTg2OGU4ZmU1MGYwYmMxNmRiYSBsZWdhY3ktdHJ1bmsKKzI0MDIzIGM4YmEyZGIxYzNjMjRiY2FmMDFkNzU0OTg3M2Y3YmJlNjZhYWUxOGQgbGVnYWN5LXRydW5rCisyNDAyNCA4NTEwOWE2MDk5YjVlMWYyN2I0MzM3NjZiM2QwMmI2MjljMGMwOWJkIGxlZ2FjeS10cnVuaworMjQwMjUgZjJhZjQyY2Y4MjdhYjdlMzk2MTFkYjZkNzY3NDMzMGFkMjdkNTc1NiBsZWdhY3ktdHJ1bmsKKzI0MDI2IGVjZDY0OTMxNDgyYzlmMmU3NTUxNmM5NzZlYjcxNThmZTQ2MzgxYjAgbGVnYWN5LXRydW5rCisyNDAyNyAyNzIzMzY2NDhkMWZmMWUyY2ExZTFkZjc1N2UxOGNiNDE0ZDcyYTVhIGxlZ2FjeS10cnVuaworMjQwMjggMTdmN2M5YzFkNjZhNTE0YWJkODgyMzJkNzcxOWM0YTE3NTQ4ZmZhZiBsZWdhY3ktdHJ1bmsKKzI0MDI5IDgyOGJmMzE3ODgwYTIwNWU5ZTc0MzIwNTdhYWNjMzdmZGJmNGVlY2MgbGVnYWN5LXRydW5rCisyNDAzMCAwNTBmYzUyYWIzZDQxNTI3MjBhMTZkYThjNjQ5ZjIxZGMwZmQwNmU0IGxlZ2FjeS10cnVuaworMjQwMzEgYTRiZjNjNWNjNDVhMmJhMjNjNDdhODg5OTk0OWFlZTBhMGIxOTE0MiBsZWdhY3ktdHJ1bmsKKzI0MDMyIDViMjM2ZjM3N2EyNTg4NzFmZGU2MDZmMjcwMzU3ZjhkMzVlMTE2ZTIgbGVnYWN5LXRydW5rCisyNDAzMyA2YWVhYjM4MDI5MmVkNDY5OWM4MmZmOWFiMGZjMWU2NjE1OWI0NGIwIGxlZ2FjeS10cnVuaworMjQwMzQgMDgzNDEzNjIyNTk1OTdiYTRmZjNjMTI5ZmZjZjFmODliNWIzNDhmMCBsZWdhY3ktdHJ1bmsKKzI0MDM1IDZiMTRkMjllNTMwODk3MDJmMGIxMzU4YTc5OGY4NWJhZmE5NWE4ZTYgbGVnYWN5LXRydW5rCisyNDAzNiA3ODFhZTE3NmJhYzJjMjUyMDA4ZjRlNTFjZTJlN2E5MzI5OGE3OTQ3IGxlZ2FjeS10cnVuaworMjQwMzcgMzdiOGQ5MmUxMmY1MThkYzcwZmExOGJkY2RjN2U2NGNhZjRiM2FhZiBsZWdhY3ktdHJ1bmsKKzI0MDM4IDNhMDdiZDJiMDM4NmUxZjNiMGZmZTg0NGZiODFjMWU5ODNhMmY1NDQgbGVnYWN5LXRydW5rCisyNDAzOSBhNmFmMDA5MzQ3ZTEzMTI4ODY5YzVlZjVkNDg3MDkyN2M4ZWI5OTAyIGxlZ2FjeS10cnVuaworMjQwNDAgYjNmNDhjNWQ2ZTE2NzQ4MjZiM2EzNTk5NWNmYzM2NDE1NTYyNmU4MyBsZWdhY3ktdHJ1bmsKKzI0MDQxIDdiMDU0NmVlNDc4OWVkZDY1NzA1YTBiZjlhOTQyYzA2MDA4ZGMxNWQgbGVnYWN5LXRydW5rCisyNDA0MiA1MjNlYzcwMjE4ZTQ5MGE2ZThiODJlN2NhMGUyMmJjZDJiN2UyNzc2IGxlZ2FjeS10cnVuaworMjQwNDMgZWJhNjNkZDBjMmY1YTkyZGZlNTA0NmM4OTk1NDVjNjgyYmUwMDczZCBsZWdhY3ktdHJ1bmsKKzI0MDQ0IDEyNDRlZTE4YmFlYzMzZjQ2ZjZhMGRlZGUwOTRlZjI4YTlkOGNkNzQgbGVnYWN5LXRydW5rCisyNDA0NSA3NDQxMmU1OWJmZjgyNjEwMDBiNWY2ODQ1NTRhZjkzZjZhODljOGMyIGxlZ2FjeS10cnVuaworMjQwNDYgNzZhODU3NTJkNDUyNGMyNDQ4MGIxZTczNTdiMDMyZWE5MGVjMDcyMSBsZWdhY3ktdHJ1bmsKKzI0MDQ3IDEwNDNlMTBiZTc4MDA5MTIxMDQxMTIxOTgzMDFhNzQ3ZTNjNjIwYjcgbGVnYWN5LXRydW5rCisyNDA0OCA3NDRhMTkyMjBhM2NiNzZmZTMzMGRmMjJhZTA1YWY3MTUxODkxNjllIGxlZ2FjeS10cnVuaworMjQwNDkgYTZiYmEzMWIzY2Q3NzU4MTQyMWRlMGMxNDEzMTUyNGJjOGY0YTJkMiBsZWdhY3ktdHJ1bmsKKzI0MDUwIDU3YzYxYzYyMjRhMmY0YjYwYzcyNzhlNmEzYWEzNWE1MDdhMTQ4NDUgbGVnYWN5LXRydW5rCisyNDA1MiA0YmI2NzUzZTdkNTNlZTU3ZDZkNTY5NTM1ZTFkZmExZGIyMmFlNTA1IGxlZ2FjeS10cnVuaworMjQwNTMgNjExMjNiODYwYjQ1NTZhNGFhN2Q2Y2VkMzkyOTZhMjgyZjNlZTFhMSBsZWdhY3ktdHJ1bmsKKzI0MDU1IGFiMmUzMTU4NDlhN2I2YzdhYTMxNWJmYzg1MWZjZjI1NTM5MWEwMjcgbGVnYWN5LXRydW5rCisyNDA1NiA2MTIyNmRkYWRjOTc1NzIzNjg0YzUzY2ZkMzcxNDU2YmYxZmZjODEwIGxlZ2FjeS10cnVuaworMjQwNTcgYjFkOTAyOWUwOWQxNGQ1MTc3NThiZDAwN2FjYjAyNjdkNWQ3Mjg1YiBsZWdhY3ktdHJ1bmsKKzI0MDU4IGEyYjExZDAwYjY5NzQ2NmMyNzZiOTAzZTg5ZDk5ZTgwMjNhNTMwYTggbGVnYWN5LXRydW5rCisyNDA1OSBhOTAwMmZiMGE3ZDc5ZDNiNGNkY2MxMzE0YTEzYTY2ZTM5YzEwYjNjIGxlZ2FjeS10cnVuaworMjQwNjAgNGRmNjUyN2I3ODgyMjA3ODg4OGY3MGI3NTQxMjU4N2RkMjU4NjRjZCBsZWdhY3ktdHJ1bmsKKzI0MDYxIGZlYjgwNTA5ZmIyMTUwNjE4MzZkYThjZTJjNmVhZDUwMDg1MDI2ZjUgbGVnYWN5LXRydW5rCisyNDA2MiAyNWZlZDFkMDk2MDUzNWUzMTA4NTU1ZWE3ZDk3OTEzMWNjMWJjN2RiIGxlZ2FjeS10cnVuaworMjQwNjMgNDBkZTg0YmM2MmFkMDIxNDhmMDJhYzI2MTdjMTgyNTJjMzlkMGJmNSBsZWdhY3ktdHJ1bmsKKzI0MDY0IDk2MWIyNGY4ZTFkODI5OGY3ZjM1ZDg1YTk2ZTY2N2E0Nzc1MzhjZDIgbGVnYWN5LXRydW5rCisyNDA2NSBjOTFmMTdhNGRjN2JmMjJlOTdhYjAyYjhiYzZkZTE2NTUxMjY2ZTVlIGxlZ2FjeS10cnVuaworMjQwNjYgMmY3YjY5MjZlMzhkZDEyNTU2NDhlOTY5Yjg2N2IwOTIxYWIyN2FkZSBsZWdhY3ktdHJ1bmsKKzI0MDY3IGUwYWYyODJmNWRmYWM0YWI5YzNjNWJmNmVhYjVkNmQ1Y2MyN2M3NjcgbGVnYWN5LXRydW5rCisyNDA2OSA3OWZjYmMzMWEwM2VjOWRlNDM5NWVhNDAzYTQ0YjdiNjE5OWQ3YTU4IGxlZ2FjeS10cnVuaworMjQwNzAgODNhM2UyMWE3Y2MzZjQ3YWIzYjNkYzZjYjFjYWY1N2Y2MmM5ZmNiYiBsZWdhY3ktdHJ1bmsKKzI0MDcxIDczYWJlMGFmN2UwNzBlYWMxNzg3Njg3MTJiZDQxYTQ4Zjk5ZGFhNzcgbGVnYWN5LXRydW5rCisyNDA3MiA5YzIzYWJhYjk2MmRhNTBhZjA2MjE3ZDUxZTNjYjM4ZjlmNGY5ODJiIGxlZ2FjeS10cnVuaworMjQwNzMgZmE5N2M5OTcyZDFiMzhlYjc5MWM0MzUyYzBmZWVhZDYwMGYyM2FkZiBsZWdhY3ktdHJ1bmsKKzI0MDc0IDYxMGE2NDRmZDRjM2FiZjQyYWUyZDNmYzUzMGM5MzcxNTk0NDMyMjQgcmVsZWFzZTIxLW1haW50CisyNDA3NSBlZjhiZDhiZTk4YmViMGI1YTI0MTNkYTYwNWRkZGMxOTcxOTAzNDU2IHJlbGVhc2UyMS1tYWludAorMjQwNzYgZWU3MGZhYzk1MzViNDUwOWI1N2I3ZjMyOWNmMDQzYmFlYzgzNDI2ZCByZWxlYXNlMjEtbWFpbnQKKzI0MDc3IDc1NmI5ZWRmMjU0ZmMyMTNkNGYyMzFhMDllY2Y4YTkzOWNmZGY3ZGEgcmVsZWFzZTIxLW1haW50CisyNDA3OCA1MWVhY2FkYzgxNWEyOTYwNWZlOGQ4MzQzMmU5M2IwMjMzZTk1ODA1IHJlbGVhc2UyMS1tYWludAorMjQwNzkgMTA0MjIzYjMyMjZhNDBhYjNiNzFkNGY0ZWIxNDA4NTdhNGJiMDI4ZiByZWxlYXNlMjEtbWFpbnQKKzI0MDgwIDA2Mjk2NjZlNjVjNTNmOGQ0Y2I0NDgzODFkMTk5MGU5ODMxZmQ1NDIgcmVsZWFzZTIxLW1haW50CisyNDA4MSAwNzZlNWU0OWUyN2QzOTQ2MjdhNmUxYWYwZjQwMTNkMDZhN2Y3MDRjIHJlbGVhc2UyMS1tYWludAorMjQwODIgNDJmMjJlYTZhMGYxMzYxMzczZWViYWQ2NTM5MWNhNTA2ZmE2MWI5YSBsZWdhY3ktdHJ1bmsKKzI0MDgzIDAyNmJmMGFiNjhhNTE1YjRkNzlhMzlmNzc5M2Y0MDBmYzdjZmIzYmYgcmVsZWFzZTIxLW1haW50CisyNDA4NCA0NjRkMjEzZGE4ODhjN2YyZjExNjJjMjFlZTk2NjI3NTI3OWUzODliIHJlbGVhc2UyMS1tYWludAorMjQwODUgODIxZTE0MmUxOWZhNGNkODFiMGEzZWY1NGQzZjRhNWFlNmE0ZjA5OSByZWxlYXNlMjEtbWFpbnQKKzI0MDg2IDZkMzhmYmEwNWYzNTc0ZTgyNzAxYzc0Y2ZhZjY0OGE1ZmVkYjIxYzMgbGVnYWN5LXRydW5rCisyNDA4NyA4ZDRiNjY0MmE2MDRhMDAxYjdjMmM1OWZkZTc0NjdmNGMzZGRlNzU4IHJlbGVhc2UyMS1tYWludAorMjQwODggMTk2NTExNmQxYWVjYTk0NGIxZWI1YjVmMTAyNjE0YzU2ZGQ4NzY0MCByZWxlYXNlMjEtbWFpbnQKKzI0MDg5IGY0ZWZmMzI0N2M2NmFjOWY4MDk4NDBmOGUyNzhkNjU3MTdkMmFkMmIgcmVsZWFzZTIxLW1haW50CisyNDA5MCBlZjFlOWM4YWEzZGRmZGI2ODA0OTE2MjZiNTEzOTk3M2ZhMzlmN2NlIHJlbGVhc2UyMS1tYWludAorMjQwOTEgNTdhYjY1YzJmMTcwNzkxZDZlMGFjNDFiZDlmODU3ZTZlMDA5MTg2YiBsZWdhY3ktdHJ1bmsKKzI0MDkyIDNlMDk4YTk2MzU2MWQ3NzAzNzkyMDg2OWRkZjE2ZTRkNDM2ZDE1NjMgcmVsZWFzZTIxLW1haW50CisyNDA5MyAzYTc0OGNhYTAzYjkxYTE1MGM1YWZiMDgyMWFjYzE3NDhlMzJmMjg5IHJlbGVhc2UyMS1tYWludAorMjQwOTQgOWFkZWQ2MjM1ZDg5MGU5MGEyMzczOGRmZDlkODViMDI5NTg3OWFkZCBsZWdhY3ktdHJ1bmsKKzI0MDk1IDI2MWE3MGMwYWE3OTJjM2I2ODZlNzQ2YmUyMDlkNjc0NjUxMjNmOGMgbGVnYWN5LXRydW5rCisyNDA5NiA1MzQ2YjY5MDZkMWFmODVlOTFhM2Y3MjAzZGJjMzg5YjljZTk3YTg4IGxlZ2FjeS10cnVuaworMjQwOTcgY2E0MThhNWZhNDcxY2I4ZDI1OTczZWFjOWJiMDgzYTRkZTE3YTBkNSBsZWdhY3ktdHJ1bmsKKzI0MDk4IDY1NmMzYzg0ZGViZWY0ZWY3YjljNDc3ZDA1ODllMjk0NWE1MDE5M2QgcmVsZWFzZTIxLW1haW50CisyNDA5OSBjN2FhMzMyYTJmZmFmYjczNDA0ZDU3YzRkMjJlMjc1ZTE4N2FlMDBjIGxlZ2FjeS10cnVuaworMjQxMDAgYjNkOGQyNjE1YjIzYmY0ZjBkYjNiMDhmN2E4NGQyOGE0Mzg1NGVjNCBsZWdhY3ktdHJ1bmsKKzI0MTAxIGRlZjJhMTE5ZDVjZGEzMWE0NmJlYmI2ZWRjNWZiNjVjYzVjYTI0ZWUgbGVnYWN5LXRydW5rCisyNDEwMiAzNzUxMzY2YzJmMzkzMWNhOWRiMjgxMTNkNjdlZDU1YWVmZWU3ZDcxIGxlZ2FjeS10cnVuaworMjQxMDMgOTUyMDExNTMyNTFjYmIwYmY5MzQ1ZmM0ZmI3OWQ3N2ZmZWM1MDU4MSBsZWdhY3ktdHJ1bmsKKzI0MTA0IDZmMjU5ZjdiYmVkODBlNGE1Y2E5ZjMyZDYyZjBhMGJlZGFhMTNjN2IgbGVnYWN5LXRydW5rCisyNDEwNSAxNGRjNjkzYWY1MzIxOTU2OTlhODAzNTgyNGYxOWFhMTNkZjZjMjRlIGxlZ2FjeS10cnVuaworMjQxMDYgNWYyNGIyMGUxMDNkMjMyZDk4NDc5NWM0YmVjMTQzNzU5MGRlNmU4MSBsZWdhY3ktdHJ1bmsKKzI0MTA3IGRhYjUyZGJkMTJhYTE0NDRiZTk3NzM4ZGI4NGU5MjE5ZWFiMzIwZjIgbGVnYWN5LXRydW5rCisyNDEwOCBkMTM5ZWM0OWQyMDRkNzA3ODlmODQyZmU3MWQ3MjEzZWY4ZGNjZTU5IGxlZ2FjeS10cnVuaworMjQxMDkgODYwNDcyODc3ZGRhMTUxMTFiODExYjRkYTQzMGRjOThjYjY4NjgyMSBsZWdhY3ktdHJ1bmsKKzI0MTEwIGIwYzMxMGNkYjk4NjlhZjY5M2UwYmIyZmI2N2NiNjczOWIzZGMwZWYgbGVnYWN5LXRydW5rCisyNDExMSAzZmJkMjUzZGVhNWQ0YTljNmY4NTNmMmI0YmRhNDM3OTg4MzhlMTYwIGxlZ2FjeS10cnVuaworMjQxMTIgYzFlYmMwMjg1YTVlN2QxYjE5YzgwNzkwODBiNmJiYzczNjQyYmEzMyBsZWdhY3ktdHJ1bmsKKzI0MTEzIDk4MWU1NDY4YzliNTMxZmVkNDlkMDAyMzM1YmI1NmMyOTllNDUwODggbGVnYWN5LXRydW5rCisyNDExNCBmMTg3ZDI0MDU2ZjQ4ZDg1NmZhYzQ3YTQyOThjMmE2MjFjYTUwZDllIHJlbGVhc2UyMS1tYWludAorMjQxMTUgZjZjNzQ2MGNjYWY4OTlmMTIzODhmZjhkNDhiMDI4ZWRkNjYyMGE3ZiBsZWdhY3ktdHJ1bmsKKzI0MTE2IDM4MDNhZjlkODc5NjNmOGMyOTdiNDcyNDZmNjFmYjBhZjg1MDFmOTYgbGVnYWN5LXRydW5rCisyNDExNyBlYWNmODFkZjZjNDI3NTZkZmJjMWQ3MzYyOTc5MWU0OGQyMDVhYjdjIGxlZ2FjeS10cnVuaworMjQxMTggOTE2ZjE5MWZjZmY0M2YwNWI2NDk1ZDQwNDU4Y2VkY2JiM2ZjZGY4YyBsZWdhY3ktdHJ1bmsKKzI0MTE5IDhkMTRmNTM0YTVjMjc2ZjY5YzVmYjkwM2E1ZDk2ZTI0MzM0ZDEwNmIgbGVnYWN5LXRydW5rCisyNDEyMCA2OTkwZmU5YzQwZjZhN2EyOGIwZTkwYTI0OTkxM2MyY2ZjMDYzMDAxIGxlZ2FjeS10cnVuaworMjQxMjEgNGFkZTc2YTZiMjQ1YmE3OGRiZWU4NThiZTkwMzdmM2IyYTVkYTIwOCBsZWdhY3ktdHJ1bmsKKzI0MTIyIGUxMGQ5MDcwZTEwNzMyYzExZWMzYWI1M2M0ZWZhZGM0NzE2OWYzNTIgbGVnYWN5LXRydW5rCisyNDEyMyBlYzYzMmE0MWVlMzVkOWI2NDYxMzRkY2FhMThhNTk1MmViODkzMGNhIGxlZ2FjeS10cnVuaworMjQxMjQgZDlhOWQ5MjYyNGRiOTc0MjhhMzRjMmFlZGJkZGU0ZDBmOTU2Zjk3YSBsZWdhY3ktdHJ1bmsKKzI0MTI1IDQwNGFlZWNhNTFlOWM0NTFhMTBiY2MzYTFhZmZiMDU0NDcwMDkyNTggbGVnYWN5LXRydW5rCisyNDEyNiAyOTYyZjAxOTI0Yzk5N2EzNWNmOTJlZWY0Y2FlNjQwZGQ2ZDBkZGU5IGxlZ2FjeS10cnVuaworMjQxMjcgZjM0YThkZjhiYmE0NjAwODhiMWVlOTM0MWM0MzVhOGU3NTQ5OGZmNyBsZWdhY3ktdHJ1bmsKKzI0MTI4IDA1M2RiZDliNThkZjAzYzAwMjMxOTdkODMwOTViYmYwODZlYmM1MWYgbGVnYWN5LXRydW5rCisyNDEyOSA3N2JiMmFlMDY3YzI1OGNkNGE3ZDY2Y2FhOTNkMWEyNzFjZDczYmJmIGxlZ2FjeS10cnVuaworMjQxMzAgMDQ0NGY1NzZjOTJiMTllODFjMjQ1NWRjNjIwNWIxMDQzYzc1NDY4NCBsZWdhY3ktdHJ1bmsKKzI0MTMxIDYzOThkMTA1NWZjZmI5ZGUyY2RkODY1YzhhNzQyMDlhODJlMGM2OTUgbGVnYWN5LXRydW5rCisyNDEzMiA4Y2YxZDkyNjY5MTEzMjhlODNkNmU0ODY5OTJkYWRjZTAwZjk2NzFmIGxlZ2FjeS10cnVuaworMjQxMzMgZDFiM2NhODlkNzhiNDlkYmRjZmNiNWIwOTJkZThlM2YyZjQ5OTdlMyBsZWdhY3ktdHJ1bmsKKzI0MTM0IDI0MTA1ZTk4OWYxNzhmMmY2MDhlNTFkMWRmMGE3ZGJmOTkwMmYyZDQgbGVnYWN5LXRydW5rCisyNDEzNSAxNWM5MjRhMTFhZWNjNGRlNGE2NzhkOTQzOTg3MWNlODRlODA4MGM3IGxlZ2FjeS10cnVuaworMjQxMzYgMGNhZWE1ZmVmYTVjMWM3ZGRlNjhiMTcyNTk4M2FlYWZjNDc4ZjcxMCBsZWdhY3ktdHJ1bmsKKzI0MTM3IDVhNDdiNThhNDRiYjRlNGFiMTNjMWE1NWI2MzgzOTcyZDllYmQ2NTAgbGVnYWN5LXRydW5rCisyNDEzOCBkOWI5YjViNDgxNWI2MjFkY2YzMmIwYzQ2NmE5M2I5YThlZGZjNzhiIGxlZ2FjeS10cnVuaworMjQxMzkgZDZmZjFkYWFlMzk4MTc2NDZlNzhhODRiNDA3Y2U5ODE2ODE0ZTE1NyBsZWdhY3ktdHJ1bmsKKzI0MTQwIDg5NTczNDFmOThmODQ3ZDZmNGQ2M2RlMGQ0NjA3ZTZmNWRlZThhNWEgbGVnYWN5LXRydW5rCisyNDE0MSBmNTQ4MjhlYjhlMDc2ODlhMWY1ZGQ1OTYwYjAxMGY5NzgzZTgxYTg4IGxlZ2FjeS10cnVuaworMjQxNDIgZWJiZGMzOGViMTFjOGE4YmY5ZjE2NWU5NTY4ZWVhMDFjOWI3Yzg2ZCBsZWdhY3ktdHJ1bmsKKzI0MTQzIDQwYTg4OTg5ZDZjYmE0NGU4NTNhZTJlYTA5NTA4NjRhYWMyNTc0NzMgbGVnYWN5LXRydW5rCisyNDE0NCAyZDllNDFhNzJhNjhiMzkyNGE1ZWE3Nzk4NmNjOWIxZTBmZTEwZDc1IGxlZ2FjeS10cnVuaworMjQxNDUgN2JiMzFmYjQ4M2JjODY3YjQ0NzkyYTM5NTk4YzU4NjkzMzI4ODgwYiBsZWdhY3ktdHJ1bmsKKzI0MTQ2IGE4YTY2MTIwYmFkZWRiYWRiZjhiYzE4YjkzNTk2MmZlN2U3YWUyZmYgbGVnYWN5LXRydW5rCisyNDE0NyBmNTc2ZmZkNTc5NjZiNTdkYWJkNjVkNjUyYjcxMjM5YTYyMjliNTY1IGxlZ2FjeS10cnVuaworMjQxNDggN2U4Y2RlNDY0ZGI0MGU5OTI4ZmM4Y2I0MzI1YjY0MGNkYmU2NTdiMyBsZWdhY3ktdHJ1bmsKKzI0MTQ5IDdlMjQ3ZjA4MzdlMjY5NTQ0ZDJiYTg1ODZmODU1NGNkYTZmNjZiN2EgbGVnYWN5LXRydW5rCisyNDE1MCA4MTFhY2UzYzQwZDAxYzJhZWViMGU0M2JlOGY2YjNlYmIxMTkwZmM2IGxlZ2FjeS10cnVuaworMjQxNTEgMTc5Y2QzNzBiNjIxZmEyNGZjMzZjODNjZjI2N2U0N2Q5ZDJiYjgyYyBsZWdhY3ktdHJ1bmsKKzI0MTUyIDI3ODc0Yzg2MDI2ODM3MzExOTE4ZGM2NDFjYzRjYjUwMmRiODRjOTUgbGVnYWN5LXRydW5rCisyNDE1MyBkNTRlMjk0NDg0YjJiZmRiM2IyNzFhMDRjOGIwODYxY2YyM2NmMTAxIGxlZ2FjeS10cnVuaworMjQxNTQgNzMyZWEyMmViNTE4MmZkMzBhMGViMjdmM2MwOGRmZGI2MTZkNTdiZCBsZWdhY3ktdHJ1bmsKKzI0MTU1IDhhNzJlZjZiODExOGQ3YzVhYzc3YTQxZThlNTY5MTE5NjUwMmI3MGUgbGVnYWN5LXRydW5rCisyNDE1NiBlZWY5YmQ4N2ZjYzA3OGQ4ODk2MTFkZjI1OWI3OGUwZjk2MzA5MDgyIGxlZ2FjeS10cnVuaworMjQxNTcgMTk4MTdhNGZhMmI2Y2ZiYmI1NTBhZjdkZGEwODZhMGE3ZjcwZDE5NyBsZWdhY3ktdHJ1bmsKKzI0MTU4IDg5ZDE3MWY2YmM3ZDYzMDU4MjU3MDQ4NzE4NmJkNTE0OTQwMzM3OTkgbGVnYWN5LXRydW5rCisyNDE1OSA2ZWUxOWMxOWIyYzM3M2E4MzYzYjdjNWYwZjBjYTE0MDdlYjg4YzE2IGxlZ2FjeS10cnVuaworMjQxNjAgNWM0MzViNWI1OWRmOTBlZjE1MmZjYjk5Yzc2NDM0YzBlNzY1Zjk5ZSBsZWdhY3ktdHJ1bmsKKzI0MTYxIGE2MGMxZThiMGJiYmViYThmMDgyNWYwOGQxYTY5ZmU5NTFhZGNhZmQgbGVnYWN5LXRydW5rCisyNDE2MiA3ZjU2MWZlOWVkZmMyMjgzYzQ5MmYyYTliODVmNzdhNTY4MGExNmFhIGxlZ2FjeS10cnVuaworMjQxNjMgMGMxNzUxNWIwNWRiOGI3YTJlNDZjZjZhYjIxNzE1YTljNjcyZGVhOSBsZWdhY3ktdHJ1bmsKKzI0MTY0IDJjZDJhZTRkZTMwZDkyMWFiMmY0ZjRjMjQ0ZWM1ZmJhNDVmYTY3MGUgbGVnYWN5LXRydW5rCisyNDE2NSA2NDBmMDI4NGUzMGFiMjk0Y2NhYzU4MzUyNDY4MmJhNzRhODM3ZmNmIGxlZ2FjeS10cnVuaworMjQxNjYgZTIzMTQwZjZmYjkwMzk2ZTMzNDc2YTkyM2E4NDlkMDYxMTNkYjFjZSBsZWdhY3ktdHJ1bmsKKzI0MTY3IDQxZDJkMDBhMzFmMTVkOTE1OGRlNTZkZWNjZGYxYmM0OGRhMDAzY2QgbGVnYWN5LXRydW5rCisyNDE2OCBmNDY3OWY2YTk1OGY5NTRlOTZjZGZkZjk1NjA0MGZjYjg4NTc0NDkwIGxlZ2FjeS10cnVuaworMjQxNjkgZGU0ZjZiMTRkMzgwYWNkMTM1ZmQxN2YyYjM4OTM3NjBmYWZjYTk2YSBsZWdhY3ktdHJ1bmsKKzI0MTcwIDViNjFhMmZmNjk2ZDBmNWE4NjRhNDY0OGUyMmRmN2FhN2EzMDJlZmEgbGVnYWN5LXRydW5rCisyNDE3MSBiNWZlOWE5NDE0ZmNhNjZiOTZmNTcyM2JmNzliODBiNjMwNDk2ZWU3IGxlZ2FjeS10cnVuaworMjQxNzIgYWYzNjczODEyZTMzNjEyYTFhYmJmNWY4ODRjMWNmZDBhYjRhOGFhNiBsZWdhY3ktdHJ1bmsKKzI0MTczIGUxODRiYmQ3MTY3YzNmMDQ3ZjliZDI0MWNmMTA0YjNkOGJjZDI5YjEgbGVnYWN5LXRydW5rCisyNDE3NCBjM2QzZGM4Mjc2NGM5ZjRhMTllMTExMWJjZjM1NDdiYTY5Y2E5MThkIGxlZ2FjeS10cnVuaworMjQxNzUgODcyMmIwYWJlYWM2Mjc4ZWZmYzhlNzYxZjk2N2M3YzI5YmY0MWUzZCBsZWdhY3ktdHJ1bmsKKzI0MTc2IDBiNjMzMmMyYWJhMDFjYWNlNjc2YzQzNmU1YjE5ZTg4NzdhZDA1MDggbGVnYWN5LXRydW5rCisyNDE3NyAzNTg2NDg4NzNhZGVhMmRiZTBiZDZmOTFjMjBhNDc3ZTAzNmE3YTdjIGxlZ2FjeS10cnVuaworMjQxNzggZDNmM2QyMWFjMDRiYzkzNjMyOGQ5MDc2MDgwY2VhNTY5Y2M3Y2QwZiBsZWdhY3ktdHJ1bmsKKzI0MTc5IGJmY2MyZWQ5Y2FiYTI3ZWQ0MDFmMzAzYzVmOWI1Yzg2YmU5N2ZjY2EgbGVnYWN5LXRydW5rCisyNDE4MCBmMmM3ODhhZGJkYmJhZjNiNDU4MTRmMDgyMmFhNWU3NDFhMjZhOWY2IGxlZ2FjeS10cnVuaworMjQxODEgYjBhNmRiYzkwMDQ3MDYzOTg3NGNmMmQ4NGY2MjA4ZGZiNjIwNWYzYyBsZWdhY3ktdHJ1bmsKKzI0MTgyIDYwMjdmZGYxZWJkYTNhYzA5OWFlZTUzZWQ0MDUxMDRjNTQ5YTMxZDkgbGVnYWN5LXRydW5rCisyNDE4MyAzMTZmZmZkODBiMTYxYzhkMjNmNDkxYTMxNzRjYjM4YTdmYWRhOTFlIGxlZ2FjeS10cnVuaworMjQxODQgODBiYWEyN2JmMGVjMzE2NTI3OWY0NTgxNjI1MDY4OTQxZDQ0NDViMCBsZWdhY3ktdHJ1bmsKKzI0MTg1IDY2OWVkZGY0NzBiYWRkNmU3Nzg3M2IyY2NlNjVmMzMxN2FhZTYwYWQgbGVnYWN5LXRydW5rCisyNDE4NiA4MzQ2MjU1Y2NhN2M3YTkxMmY4ZGZmNjk0MGQ1NGQ1ZDNkNGNmMWNkIGxlZ2FjeS10cnVuaworMjQxODcgNTVhMDYwZjQxNzNmNzIwNjZkNjljODA0NDc5YmQyMTA5MjBlNzRkNyBsZWdhY3ktdHJ1bmsKKzI0MTg4IDA2ZDk1YjY4NzdjNDVhYWY5OTBkY2M5YjgwM2RmYTI2NmE2NDU1ODkgbGVnYWN5LXRydW5rCisyNDE4OSBkODhkZDVjMmIyODJiOTUwNjE0NWZhNmU1NmU1MzAyNDU0ZDUzYjZiIGxlZ2FjeS10cnVuaworMjQxOTAgOTMyNTNjNjVkODYzMTE1Y2VmNTU1MDBmYjNhNDkyOWYyZjVkNTMxZCBsZWdhY3ktdHJ1bmsKKzI0MTkxIDIzYTIwOTQ4NGYwMjhlNjYxZTg0ZTM4MjkxNjhjOTg3ODYxMzdhZDUgbGVnYWN5LXRydW5rCisyNDE5MiBiOTg1MGM0NDc1NmIzYzc4YzBiOWFlZWQ1N2U1ZjNjNGNhNzE5OGZhIGxlZ2FjeS10cnVuaworMjQxOTMgMjAwMTQ3MTY1NTZiNmJiYmFhNjgyMzE4YzdlNDI5MzE0NjhiNjY1OCBsZWdhY3ktdHJ1bmsKKzI0MTk0IDdiNTg2NDk0N2JhZjZjYzkzNDg5NTM2NDFhZWM3YzU1MDEyY2IzMDggbGVnYWN5LXRydW5rCisyNDE5NSBiMjFiNDIzMzBlNDAyMTk4OThiNzcxNDRiMTgzZGIzOTU5MTAyYmZhIGxlZ2FjeS10cnVuaworMjQxOTYgOTA4NzFmYTQzZjRlMGFlMDExNDdiNDE3ZTk4NjJhYTAyYTRjZmYxNCBsZWdhY3ktdHJ1bmsKKzI0MTk3IDllODg4NWJiZGJjOTUzMzFiYzRkZDg3MGYxMjYwNzA3NjI1NmYwYTEgbGVnYWN5LXRydW5rCisyNDE5OCA3YTk5MWQwMTJjZDYzMWNhMTIwNDAxZjk5YmJjYjM1NTAyOWFmNjc4IGxlZ2FjeS10cnVuaworMjQxOTkgOThkYmIwNzljNWQ0OGMxYzljN2M5YThkNDIzZjQ3NDVhODRkNTUxNSBsZWdhY3ktdHJ1bmsKKzI0MjAwIDIxZmE3NTc5MDgyMjIzYzc2NTE0YjI5ZmEwMmRlMmJjYzBlNjdlMzYgbGVnYWN5LXRydW5rCisyNDIwMSBlZTE0MzdmNWRlMDMzMjg4OWQ1ZTgzNGVlN2Y0MDVmMGU4NjQxNWE2IGxlZ2FjeS10cnVuaworMjQyMDIgN2NlZGJmYWM3NDZiOTc3M2QyNDk5ZDU3NDdiYTI3M2Y1ZjE5MWQ2MyBsZWdhY3ktdHJ1bmsKKzI0MjAzIDVjMDJkMjE1YTM4ZGI5MDI2ODQxY2FlMTUzMDA5ZWM5NDIzN2VhZmYgbGVnYWN5LXRydW5rCisyNDIwNCAyYjVkMzMyOWQ3ZTJhNGJlOTNjOTIyN2U2NjdlYzRmNDkwYjkzYzhhIGxlZ2FjeS10cnVuaworMjQyMDUgOWFlZDc0NTI4NjYxZjcyNTM3NmFjNDAyNjNkMGJiZjMwNzQ5ZTI5NSBsZWdhY3ktdHJ1bmsKKzI0MjA2IGZhN2UwZDAwYzgyOGU0NWU0NmU5YTc1OTgwZWNjMTA1M2I2ZGYxODUgbGVnYWN5LXRydW5rCisyNDIwNyBjZDYwNmE1ODQ5MDNlNDgxNWVmYmRiNTA1MjkzMWQ3ZTI4ZWIwNjQ3IGxlZ2FjeS10cnVuaworMjQyMDggMTk3NTA1ZTY3NTJhMjU0ZGE4YjU0MzAwZjVmYzlmYmUzZTEyYTg0OCBsZWdhY3ktdHJ1bmsKKzI0MjA5IGVjY2U1ZDdkYTYwN2RlNGFmMjkzY2U0ZTM5NWYxMjE2YzBlOWZlMmIgbGVnYWN5LXRydW5rCisyNDIxMCBiYTk0NTVmYzRjOGIwZTI1YjJkYTY0OTUzMzY4ZDgyNjgwMzE5MmZhIGxlZ2FjeS10cnVuaworMjQyMTEgMGI2NDUyMGMyMDBjODhjN2Q0ZTQ1YzAzOTkwZGQ2NmU1Zjg3YThjYiBsZWdhY3ktdHJ1bmsKKzI0MjEyIGUwNTNlNDRmOTY2NmZmOGRhNDY3ZDk5NDM5ZDJjZTE0OWM1OTI3ZjggbGVnYWN5LXRydW5rCisyNDIxMyAxM2ExOGNiZmZkOWM3MGJjYmRjMWQyMDNkMDFmMWJlMTM2N2UwYjg0IGxlZ2FjeS10cnVuaworMjQyMTQgNTQwZTUzMjVmYzZiMDhkYjIyMDQzMTQ1ZTJjNmFiMGU4YzYxZjI1OSBsZWdhY3ktdHJ1bmsKKzI0MjE1IDEzZGY4YjZjMmI4MGM3NTI4MTYyMmRiY2MwMzMzZjY5ZjExNDk5MWQgbGVnYWN5LXRydW5rCisyNDIxNiA0NWM5NTJkMmE2MTEzNTIzM2YyMTc0ZGIwYzg2ZjMzZDJmOTRiYjQwIGxlZ2FjeS10cnVuaworMjQyMTcgNWU3MzVmMTk3Y2E2N2RiZjg2Yzc4Mzk1NzA2M2M1NTI1MzJjMzQ3OSBsZWdhY3ktdHJ1bmsKKzI0MjE4IGQzZGQwYzJhMTc3MWQ4NWZlZmFiNmQ5MmUzOTFlNjc4MTM5MGRkYmIgbGVnYWN5LXRydW5rCisyNDIxOSBlNGQzODBmNWYyOTc2NjQxYjZiNjJmNDg2NjhlMDYzM2U0NjFmODBhIGxlZ2FjeS10cnVuaworMjQyMjAgYzNiMzNlYWQzNTQ2ZWY0MWI5NzQxZmM3ZjMzYjRlYjZlM2Q4MDllMCBsZWdhY3ktdHJ1bmsKKzI0MjIxIDNjNWQwZWVhMWFlMmIyMjhjYTdhOGM4Y2Y2OWQxNDM3NGQ0ZTIxMTcgbGVnYWN5LXRydW5rCisyNDIyMiBlZjEyYzlkZGVmYTcwNTYwM2I5MDM0ZTVhNjczNjI3Yzc3ZDcyYjFlIGxlZ2FjeS10cnVuaworMjQyMjMgYzU1NWYxZTdjNGJlNGQ5M2QzOTg2YTI5ZDI3YzczZTEyODE0ZTQwNyBsZWdhY3ktdHJ1bmsKKzI0MjI0IDliZmMzMWNhODBmMzQyZmEyNDY3ZWExNmEzZDY2OTI2NTVjM2Q1YTQgbGVnYWN5LXRydW5rCisyNDIyNSBkMjdjZThmZTQzZjgzOTkxZjMxNDcyZTRlNzMzZThiZTkzYjM3ZTkwIGxlZ2FjeS10cnVuaworMjQyMjYgYzNiMDgzMTk5NTljNGNhMDlkMmQzNTBjNTk4Y2I5OWUzNjViZjQxOCBsZWdhY3ktdHJ1bmsKKzI0MjI3IDBkMTc2Nzg0NGM0YjcwN2EyNGIwYWY4ZmYxNDFkOGQyMGJkMTY1ZTUgbGVnYWN5LXRydW5rCisyNDIyOCA3NzFiMDI5YmRiOGExODM2Y2NmMGU1YzAyYmY4YjRlOGM0OGJiNDIwIGxlZ2FjeS10cnVuaworMjQyMjkgOWVkZTRkNmNjOWRlOGQ1ZWRmMjAwOWY4NTJhY2VmMTQxMzdjMzY4YyBsZWdhY3ktdHJ1bmsKKzI0MjMwIGMzYjNlMmU0MDAzNWVhMGU3ZTI5ZmFlN2IzZDViMTAyMmY5MzBmZTUgbGVnYWN5LXRydW5rCisyNDIzMSA2MTVhNGY1NjAyNjg1MTA2ODczMmMxNjQxN2VmZjhhMzdhMzQzYTcxIGxlZ2FjeS10cnVuaworMjQyMzIgZjc5Y2ZkMDU0ZjIxYjgxYzllMjM3ZTVlZDA1YmI5ZjI2NDM1NzQ3MiBsZWdhY3ktdHJ1bmsKKzI0MjMzIGNhOGJlYzRiMzM4Mzc0MmNmM2FiZTM4YjExMzc4ZmE1NDdlOTIxZTQgbGVnYWN5LXRydW5rCisyNDIzNCBhMTNkN2NkMGVmN2YyNzUxMWQxNGNmNmIzMjMyOGUxNGQ1MGFjMTk2IGxlZ2FjeS10cnVuaworMjQyMzUgZGE1ZmJjMWViMWQwNWZmOTFjNjE2NGEyNDM0OWQ0NjJhMmE0MTQ2YSBsZWdhY3ktdHJ1bmsKKzI0MjM2IDNkNTIyY2JiN2E4MWYxOTY1YjI3N2I3NTQ4ZTM1YzZhZTUxMGNlZWMgbGVnYWN5LXRydW5rCisyNDIzNyAzMDBiNjhkNjNiOWY0YzI1YmI1YjA2MjNhNzIzNTVjNjg4ZDhiNzliIGxlZ2FjeS10cnVuaworMjQyMzggYTNjNTdlNTliNWE4MTNiZmRmYjRjYTcxNzE1MzVjZjZkZWEzMjk5YiBsZWdhY3ktdHJ1bmsKKzI0MjM5IDNlOWQ2ZTlmYmU1OGY2YTYzNmRjZTk0NzA2NmM5MjAyNTExODRmYWUgbGVnYWN5LXRydW5rCisyNDI0MCA5Y2E3ZTQ2ZmFhMjRiYzI5ODRhOGRmZGRkMTUxNjZjNjg2OGQ3Mjg2IGxlZ2FjeS10cnVuaworMjQyNDEgNTU0NTgxOGY1ODFhODJmNmQ2MzNiMWM2ZTdkOWVjMmQzNjFlODM3MSBsZWdhY3ktdHJ1bmsKKzI0MjQyIDkwYTBmMDk1MThjOGY2ZWYyYjUxZmE0OWRmODU2NzlhYzE0Y2RjY2UgbGVnYWN5LXRydW5rCisyNDI0MyBiYjg3MTYwOTVhODFhNWNkNTU2NTJhY2JjNjFmZWMwZWNhNWRlMGMyIGxlZ2FjeS10cnVuaworMjQyNDQgZjFjZmRjYTczZjg2OTU4NzdjOGJlOWVmOGViMGViNDlhMThmMTRmNSBsZWdhY3ktdHJ1bmsKKzI0MjQ1IGMxZWNhZmQxNTU2MGI1MTliMWU2NDQxOWU1MWVjZWM0YTYxYzI2ZjIgbGVnYWN5LXRydW5rCisyNDI0NiBlMTY3YjgyYzY0NDQwZDgwYzBkY2E3ZjdiNzgyNDZiNDA1ZTU0OTU3IGxlZ2FjeS10cnVuaworMjQyNDcgZWJhOGM3NzFkYjY0Y2I1MDk4YTJhN2IxZjVlOGE2MWM3MDU4MGUwZCBsZWdhY3ktdHJ1bmsKKzI0MjQ4IGNlNjlkNGVlMmZhMDBlMTdhZjY1Y2M4NTcyODk5YzQ2OWY3NjY4ODAgbGVnYWN5LXRydW5rCisyNDI0OSBhYzUxOTE2YmZkYTA3ZTJkODkwYzA5MjkzMWJlMmY0NTQzNDg1ZWE2IGxlZ2FjeS10cnVuaworMjQyNTAgZjE2NzFhNjEwMDc5OTM5NjBhZTNkZTQ3MDA2YmNlNzI0ZmUzZTM3NSBsZWdhY3ktdHJ1bmsKKzI0MjUxIGU3MWNjZmJmMzZiYjhkZWQ2Mjg0NjJkYWY1NDc0OWM5MzU2N2YxMTggbGVnYWN5LXRydW5rCisyNDI1MiAwN2YxZDJjNWRkMDQxYzhkODQxMThmNGI2YTY2Y2E0MGJkOGRhMGZlIGxlZ2FjeS10cnVuaworMjQyNTMgOTVlMzU4NGFiZTQ1NzZlMWRjNDgyYjYyNzQ3ZDFiNzU2MmY3N2IwYiBsZWdhY3ktdHJ1bmsKKzI0MjU0IDQ0ZjNmNWE1YmZlMjQ1ZDc0YWE3ZDA4NmRkNTU5YWEyN2E2ZjAzM2QgbGVnYWN5LXRydW5rCisyNDI1NSA2M2MxNDY2OTUyN2U0OTdkOTA0MWEyZjE5YjEyZjE4ZmRiOGUyNGMyIGxlZ2FjeS10cnVuaworMjQyNTYgNGI5ZTYzY2YwMmE2ZjgyOGM5ZDBjOTAzMWMyZGM1NjU3Y2RkM2QwNSBsZWdhY3ktdHJ1bmsKKzI0MjU3IGIwZGYxZmQ4MThmYzFmNTY1YjFhMjQ1ZTE4YWNiOTBhYTU3NDE3ODIgbGVnYWN5LXRydW5rCisyNDI1OCBiMTYzZTc4NmFjNzRlNGE1NjdlNDEwOGI5MDUxODdjNDBiNzQ5YTJiIGxlZ2FjeS10cnVuaworMjQyNTkgZjcxMWNmNDU4NTI1ZWVkN2NiZjhhMmMwZDE2ZDQ1YWI4ZmY4ZWNhNSBsZWdhY3ktdHJ1bmsKKzI0MjYwIGFhY2U0ZmFmZjE3ZGQ5MjQ1ZWRmYjdmYjUxNGYyZmVmMzI0NDBhMjMgbGVnYWN5LXRydW5rCisyNDI2MSBmOTZlODkxY2YwZTRlZTUyZGI5YjQ0ZDBhZWYxNzhhOTg0NjlhZWRjIGxlZ2FjeS10cnVuaworMjQyNjIgYWMyYmMwN2U4Njk3Zjc2NWVhNTk0OWE2Mzk0ODFjYjAzOWFmZjRjYSBsZWdhY3ktdHJ1bmsKKzI0MjYzIGE4NWEzYzEwYmE0ZGE0YWQ5MGNiMzgxMDk0NzE3Y2UxYTQ1NDE5NjIgbGVnYWN5LXRydW5rCisyNDI2NCAwMWU0N2NlOTYyMDEwZjZjMTRhYWUwYmFhMTJiZWIxZGQwYzI0NWMzIGxlZ2FjeS10cnVuaworMjQyNjUgODE2MjY0YmRhMTM2Y2U2MjE3Zjg1OWYwZjBjODdhZTFmZDdlYzRmZSBsZWdhY3ktdHJ1bmsKKzI0MjY2IDBkMWRlYjQwMjE5ZjlmYzAyODdmY2RmYTE3MTVmMjU1ZGIxYzY3MGEgbGVnYWN5LXRydW5rCisyNDI2NyA1YjU3OGQ0ZDg5MDJiOTViNTIxZGRiZTBiNDg4YTBjYTRjY2U4MDExIGxlZ2FjeS10cnVuaworMjQyNjggZDliNzg1M2EwNDMxYjM2ODQ4ODYzZWVhMmQxNWYwMzg5ZTVjMjhiZSBsZWdhY3ktdHJ1bmsKKzI0MjY5IDNhNTQzYWYxOWM3OTVmYTE5M2Y0ODUyYTI2MjFiZDFlYzAwZDIzNGIgbGVnYWN5LXRydW5rCisyNDI3MCAyMmRmM2VkMTFlMjE5NmRjMmIzOGY0MGU4N2UyYzRlYWIyZTFmMzIxIHIyMmIyLWJyYW5jaAorMjQyNzIgMDkyNDRjNDY4MzBmN2I4OTA4NmJiOGMyZjc0ZDI2Mjk0OGM3OGFjMiBsZWdhY3ktdHJ1bmsKKzI0MjczIDE3NGNjYjAzNWIzZDg1ODkzYmI4MGJhZjg4NTFhZjA5Y2Y4MjY1YzggbGVnYWN5LXRydW5rCisyNDI3NCA1NzBhNTRiYjFhNTk4ODgyYzEwNWI3ZTFjMmRkYjRiMjY5YzExZjg1IHIyMmIyLWJyYW5jaAorMjQyNzUgYzMyOWI4MTFlZTU0OTZiZDU5YzQ4NDkyNDA0NzA0YWUzOGEzNjgyYSByMjJiMi1icmFuY2gKKzI0Mjc2IGYwYjU3NWQ2ZmVhYTcwZGY0MzM5ZTQwNDdjYTc3MzA3ZTliMmMyOGMgbGVnYWN5LXRydW5rCisyNDI3NyA1NTVhOWUwMDE5YTc3OTk2YjkzOWJkOWU3N2M5NmM5ZWJhMDdiNDUwIHIyMmIyLWJyYW5jaAorMjQyNzggNmJmZmQyZTIzMjZhMzE0MTgwNjlmZDI1ODA3N2E4YTg5ZWE1OGRiYiByMjJiMi1icmFuY2gKKzI0Mjc5IDg0YmNhMWVmMTE2OGJjOTdhODJlNTRmN2Q0Nzc0NGRkZDU4ZDVkZGUgbGVnYWN5LXRydW5rCisyNDI4MCAzZTBjY2NjYzRkY2IxZTc3YWFiMWU5NWQ1ZDE4NzM5NzU2ZGJiYjk5IHIyMmIyLWJyYW5jaAorMjQyODEgNDY1YmFiMDdkMmE4ODQ4MDhmNjAwNWQ0OGNkNjM1MjI1OTYxNTMyZCByMjJiMi1icmFuY2gKKzI0MjgxIGY3MTU4MWNlN2EzY2VkNjljMWJiZTVhYjkxMzk5MGE1YzhjNDE2OTQgcjIyYjItYnJhbmNoCisyNDI4MyA5MmQ2ZjZmOTdjNzBjOTRmNjg4N2E1YzMyMzRjODFkYzRlZjQ1ZWU1IGxlZ2FjeS10cnVuaworMjQyODQgMzBlMTNmMGVhNzZiMjFjN2EyNTJjZTQyMzQ2YmEwMjMyMmFjOGIzZCBsZWdhY3ktdHJ1bmsKKzI0Mjg1IDQzNjUzMWIwYWNmODFhMTQ3YmEwN2U2MjcwNDRlZWU4ZWExMzQ1YTMgbGVnYWN5LXRydW5rCisyNDI4NiBmN2I2MTAwNTkzZGNmMTc2OTVjM2RjMzMzNzVkMTI4OGRhNzllMDBjIGxlZ2FjeS10cnVuaworMjQyODcgYmVhOTJjM2Q3N2EzMmE0MTZlNjNiMGVjYjYwNzg5ODEzZGQyOGM4MiBsZWdhY3ktdHJ1bmsKKzI0Mjg4IDM5NGRhNGVmZmJlYzY4ODI4NGMyOGYzMTNmNzRhZDljMDg3MmJiMWQgbGVnYWN5LXRydW5rCisyNDI4OSBkOTE0ZTBmMzlmODM3OGUzMTkzNzYzMGE1NTY2Y2FiY2ExZmUwZDRkIGxlZ2FjeS10cnVuaworMjQyOTAgMWI0ZTJhNzk3NTk2MWEwODlkYTk0MGFiMDkxMDdlMGZmMmQzYjlmMSBsZWdhY3ktdHJ1bmsKKzI0MjkxIDZlMTBhMTQ5OWUyNDIzZDJiNDdkNGY0Y2QyNGI2ZWM3OWZkNmQ0MzQgbGVnYWN5LXRydW5rCisyNDI5MiA5NGZlMTdjNjc3MTU0MDgwMjc5MDYyZTdiNDUxNWE0ZDZiNWIwYTM2IGxlZ2FjeS10cnVuaworMjQyOTMgNjFhMmRmNTY3NDZlZWUzZmRhMWY5OGY4NjljZDIxNzgzZDM0NmQ2MiBsZWdhY3ktdHJ1bmsKKzI0Mjk0IDIyY2VkZWRhMmE3M2NjNTk2YzZmYTdhODMzMDEyOGIzN2FhYjdlODMgcjIyYjItYnJhbmNoCisyNDI5NSBiNWMyZjc5NGQ4MDU5MzcxN2UyZTg3N2Y2MTgwNDk3NGQ5NDc0NzBlIHIyMmIyLWJyYW5jaAorMjQyOTYgMWZkYjg5YThiNjIxOTliYThlNjI4ODE3OWQzZTQ1NGJlOTdjYTBjNiByMjJiMi1icmFuY2gKKzI0Mjk3IDQ0Yzc3ODFkM2YwY2NkNDhjMTE5N2M0OWJhOGE1Njk2ZWM5ZDRiY2IgcjIyYjItYnJhbmNoCisyNDI5OCA0MWVmOTgyYTY0YjFiMWQxOWQ3YWE5OTNlZmRjMGQ2M2ZhMTU2OGY1IHIyMmIyLWJyYW5jaAorMjQyOTkgMTI2ODk1YTM5MmJhNzNmYjk3ODM1N2MzYmRlZWYxY2VhMmY5NWIzZiByMjJiMi1icmFuY2gKKzI0MzAwIDE0NWZhZjI5OGNkY2MxMzI0Y2VjYmViZDVkYjIzNjE1Y2Y2YjQ3ZDggcjIyYjItYnJhbmNoCisyNDMwMSA5NGM4NThmZWFlN2Y4ODYxMGNmM2UzMjdjMDcyNjQxYTg3YjMxNzQxIHIyMmIyLWJyYW5jaAorMjQzMDIgYzUyYmI4NjJkMGY3NzM1NGRhN2M0ZGFmNDdjOTM4MDZmYTUwOTkwYiByMjJiMi1icmFuY2gKKzI0MzAzIDMwYTQwODBiYzMwYjU5MWRjY2JhODMxM2RiYWRhYWY3NDcwM2JjYjYgbGVnYWN5LXRydW5rCisyNDMwNCA0YTlhOWNjMDQxZGVjZTZhMTllMWQwOGIwMGM4Y2YwNzQxZWZjZmM5IGxlZ2FjeS10cnVuaworMjQzMDUgZmUyOTMyN2U0NzFjZTJlNmY0ZjFjNTRkMWYxNTFlN2E4NjcxZDc3MyBsZWdhY3ktdHJ1bmsKKzI0MzA2IDhjMzIxOWE0ZGNkNmRlYjYxOWE4NWM2YjcwNzQ3MTg1OGM2OGJlMTIgbGVnYWN5LXRydW5rCisyNDMwNyA0MWI4ZDY2NzMwZDYxZjRhMWE2MGVhOTk1YjQ0MTkwMTJjZmJlODNhIGxlZ2FjeS10cnVuaworMjQzMDggMzNlYjYzYjg2YTE5MzZlZTQ3NDhjZWEyZmM3MjE1YjUyNWIwNDcwYSBsZWdhY3ktdHJ1bmsKKzI0MzA5IDQ5ZGMxNDRhMTU1NTdjMTdlNmE5MTU3M2M5NGRiMTZmZjY3MDMxYTMgbGVnYWN5LXRydW5rCisyNDMxMCA1N2M3OTFhNWY4MWM3NTg3MmJlZGJlNGJkMDMxOWY3MWVmMzA1Njc3IGxlZ2FjeS10cnVuaworMjQzMTEgMmI2NTBjMjFhNTYzOGQ1OGZhZGU4NzA0YjY3Mjc4ZWNjNTVjY2NiMyBsZWdhY3ktdHJ1bmsKKzI0MzEyIDQyMzY1YjcwZTlkOGI4ZTRlYjUwNGIzMDUwZjQwNjc0NjIwZDliZjQgbGVnYWN5LXRydW5rCisyNDMxMyBmNGQ5ZmEyMDdlNDBlNWIwZWJhZGVlNzI2NDhhMGQzNTFlNTk1ODc0IHIyMmIyLWJyYW5jaAorMjQzMTQgNjJjNjNiYTkwZGYyMTBiYTM2MGE4Zjk3NWY2NjE4MTVlODNlOTc3ZiByZWxlYXNlMjEtbWFpbnQKKzI0MzE1IDBmNDA4MjYxYjNjOGI3YWFiYWMxZDM5YjI1NWQ2OWQ1OWYwZDI4OWYgbGVnYWN5LXRydW5rCisyNDMxNiBhOTY1MzgxMTczMWEwMDNiYTQ4MDFjY2EyZDcwM2JjOTEzMGRlYzIwIGxlZ2FjeS10cnVuaworMjQzMTcgOWY2NmFhZGRmOGQ0MGJmMWEzODIxZjJhZDE5MWY5ZGMzODdmOGU2YyBsZWdhY3ktdHJ1bmsKKzI0MzE4IDdlYmMzZTI5ODNkMTFiMmQ1ZmEzY2M1NjU0OWQ5ZmE5ODBjNTk4ZTMgbGVnYWN5LXRydW5rCisyNDMxOSAxZGFlYmZmMTc3ZWYxMzc3ZTFjYjk5MGUzMmZiZDAxZjlmY2U5NTg4IGxlZ2FjeS10cnVuaworMjQzMjAgZjk1N2QzOTZjODRlNzFkZjIyN2JlZjczMGM2MjEyOGUyYWFlNThlZSBsZWdhY3ktdHJ1bmsKKzI0MzIxIGU3OWZjMjU3YmNhMGU2ZWQxMDc4MWIwN2JhODM3NzY2MTZjYTY0ZWEgbGVnYWN5LXRydW5rCisyNDMyMiBkZWUwZTg2NjY1M2U2ZTQxYjVmNjUxYTIwOTIyMzkwZWJkZDk4YjBkIGxlZ2FjeS10cnVuaworMjQzMjMgM2RmYmJmNDJiZjE2YWU5N2ZiYmQyYTQ2ZWYxM2IxOWIwZmYwYzVlYiBsZWdhY3ktdHJ1bmsKKzI0MzI0IDFlZTc1YmQ0ZWUzNDY4ZDUxN2JjNTE3NWJjN2RmNjE1ODhmN2E4MzYgcjIyYjItYnJhbmNoCisyNDMyNSAxMDllZDY5NjQ4MzJhZGY4N2M5YjA0ZGM0NTYwNjJmNzFlMDFjNGVjIHIyMmIyLWJyYW5jaAorMjQzMjYgYmQyZTg5ZDc3ZDQ1YWRmMTdiZTA3ZjhkNTEyODEyZjM3YWU0YjYxNSByMjJiMi1icmFuY2gKKzI0MzI3IDRjODMyODc4ZGU3NGViNzIxYTVmNmNlZmRjMTZiOWFiNGQ0MjVkMGIgcjIyYjItYnJhbmNoCisyNDMyOCBlM2UzY2Q0N2JhZDVmZDM4M2JjNThiYjIyNTg5MjU4MjhhZjc0MTI4IHIyMmIyLWJyYW5jaAorMjQzMjkgZDIxMDI4ZDVjYzg1MjhjNDY1ZDc4ZDY2ZTI2ZWNmNDRiMTAxODczMSByMjJiMi1icmFuY2gKKzI0MzMwIDQ4MjYwYjBiNTI2ZjY5YTE1YTFkNDcwZDdkYzc2ZDFlZmVhNTc3YjQgcjIyYjItYnJhbmNoCisyNDMzMSBlZTI0YmQwY2FkMjkwM2IxMDg0YWYwYjE4MzM2OTQ0M2Y3MzllNjdmIHJlbGVhc2UyMS1tYWludAorMjQzMzIgYzdlODMzYjNjZDljNWFhYTJmZWY1ZGQyY2I1MjNiMzZkODlmZjE3OCByZWxlYXNlMjEtbWFpbnQKKzI0MzMzIDk3NDYyMTk4MTNmOTk3OTI3ZWVkYzI3YWRlZWM1NTBlNjU4OTJjMWUgcmVsZWFzZTIxLW1haW50CisyNDMzNCAxMWNiM2RlMDgyM2RhOGVjMjhiOGUyNTY0MmQ1NzE1OTU4NzlkMjIyIHJlbGVhc2UyMS1tYWludAorMjQzMzUgMjIzOTUzMDY5YTFhMDlmMDI5NmFmMmE5ZGFmMTBlZDM2OTEwNDAyOSByZWxlYXNlMjEtbWFpbnQKKzI0MzM2IDNmYzA2YzExNDlhNDNkYjJmODY2YTc1MzllZTdhZjljYjBiOTNhYzMgcmVsZWFzZTIxLW1haW50CisyNDMzNyBjNDQ5OTU5NmIxYTQwZmQ4YmNmMWQ4OTY3ODg3MDg4Mjc0YjhkYjYxIGxlZ2FjeS10cnVuaworMjQzMzggMWNmNzdkZjk1ZjQ1MjUzODk3NjU5M2U0ZjliN2VlODFjMzI3ZGM4YSBsZWdhY3ktdHJ1bmsKKzI0MzM5IDU5ODFkZmRkYTg1NzBiNjE3MjNlZDg4Zjk5MTk4OTMyMzA5YmM2N2YgcmVsZWFzZTIxLW1haW50CisyNDM0MCBhZmI3ODlhYWRhMTZmZDhkYTZmZDQyZDkzZTRiZDZlYWU4MWNmNjEzIGxlZ2FjeS10cnVuaworMjQzNDEgNzc4ZTZhODBmY2VlNGY1NWZmNDM2NmQ4OGFkY2ZkYzMyOTU2YjQxNiBsZWdhY3ktdHJ1bmsKKzI0MzQyIGMzZTZlNjNkOWJhMmQ4MjlmMDFjYzY4NjM5NGExOGJiOGZmNjkxNjUgbGVnYWN5LXRydW5rCisyNDM0MyBlNWNmNzRmNzkxNjc5YmFlMTVlYTM0MzQyNjdlMTRkZDMxNDgzNGU2IGxlZ2FjeS10cnVuaworMjQzNDQgMDg0NmI0ZTI1MTdkZjAyOGJjYTJhNGI2ZDJhMDAyZThmZTExOTI1NiBsZWdhY3ktdHJ1bmsKKzI0MzQ1IDcwYjQzMDZmNDg4ZGIxNDYwZWExMDA5N2FmNzgxZTRmNWIxZjJkYjkgbGVnYWN5LXRydW5rCisyNDM0NiBiM2Q2MjdlZTJiNzNmZTFjMDVmNzA2MWEzMmI5NjVhOGZkNzZmNjMyIGxlZ2FjeS10cnVuaworMjQzNDcgZTZlYWY5NTdlYTI2ZjcxNjRkZmI2ZDBhZDA0YzA2MjQ2ZTg4OGI3NCBsZWdhY3ktdHJ1bmsKKzI0MzQ4IGIxMTRiMTAwNzQxOGVlMmUxMGQxNDE2YzBmMWEyMGQ3NjNjZTRiOTUgbGVnYWN5LXRydW5rCisyNDM0OSA4ODFmNDliZWZjYTNjMDFhMDRiYTk4Y2M2ZDA3YTFkMmE0NTIwMjhkIGxlZ2FjeS10cnVuaworMjQzNTAgY2QwYjc1YjE5ZGY3ZDgyNjI3ODJhYTU1NzE1OGNhYjAzNTFmMDA0MSBsZWdhY3ktdHJ1bmsKKzI0MzUxIGZlZDUwNzFkYTk1NzVkNGQ2OTQ0NWY0OGMzMDIxZTQxMWU2YWYyNDYgbGVnYWN5LXRydW5rCisyNDM1MiA3Y2E1YTQ4MWMwZDE3OTU1Njk2M2NkMmRlYzU1NmVmNTdhYzg0N2E5IGxlZ2FjeS10cnVuaworMjQzNTMgMWFlMmFmZTY3NWZkYTdiY2M1MTBjZDk2Y2NmOWVjNTA0Yzc2MzE2NCBsZWdhY3ktdHJ1bmsKKzI0MzU0IGRhMzg4ZTFkNDA0YmZiODNmNTkxMDNiZjI4YzY2MmVkY2MzNzcwYjkgbGVnYWN5LXRydW5rCisyNDM1NSBiN2YzOGU3NjUxNDc5MzM5MzVhYWRlYzZhMDVhZWNkYWRhZjc0MmQ2IGxlZ2FjeS10cnVuaworMjQzNTYgYmNiZGE2MDZkOGM3NTcxOGI0MDI4M2M3YzVmOTgxYzE2MGRjY2I2YSBsZWdhY3ktdHJ1bmsKKzI0MzU3IGQ0NTY5MWE2OTg3ZmU5NjdhMDVmYmJjZjFiN2YwOTdjNDkwY2YzMzggbGVnYWN5LXRydW5rCisyNDM1OCBiYWM5NDJlNjg1ZmFkMmRiYmQyMGQ5ZjYzYWU4MTliMDQyYzgzN2RhIHIyMmIyLWJyYW5jaAorMjQzNTkgMzZjODk3YmNmNGQ3ZTY5NDI0MDExMzg2MjNlZjNjMzlmOTkxMmViYSByMjJiMi1icmFuY2gKKzI0MzYwIGY4ZmRiZmE4ZDVmM2I4MmZlYTk5Zjk1ZWI3OTlmODdkODcyZDg2MzYgbGVnYWN5LXRydW5rCisyNDM2MSAyYzBhOWE1MDg2ZTEwYjk5ZjA0MWQwYjBhY2EyZGI2Y2MxZGRkNDczIGxlZ2FjeS10cnVuaworMjQzNjIgOWRmODJjMTNjNjc1ZjA3NDAwMmQwMjgzMmJmYWQ5OTEzNTk3NjZkZSBsZWdhY3ktdHJ1bmsKKzI0MzYzIGU3NjMwNmVlYTM3MDk3NTBkYjU3NjgzNWVhYzViNjdkMjFjNDJmZmIgbGVnYWN5LXRydW5rCisyNDM2NCA1OTdkMTBjZjc5MzhlOWJiMjY1OTdlMzM2ZjVhZWYyNmQzZDZlMTY4IGxlZ2FjeS10cnVuaworMjQzNjUgMTgwMmE5ZWRiNGVlZjRkOGU2MGVmZDhlMTc1OWM5NDAwYWViMDcyNyBsZWdhY3ktdHJ1bmsKKzI0MzY2IGJjMDJjM2IwOTYyNmEwNDVmNjZiNDc5MGQyYzlmNzdjNjZkZTQ5OWUgbGVnYWN5LXRydW5rCisyNDM2NyBmMTg3NDk2ZmZhZWY5ZDIxZmMyNjM4OTBlOWE1OTdlODkzZTljNzkzIGxlZ2FjeS10cnVuaworMjQzNjggYTJkNzhlMjFhNzg1N2UxNmVjMDdlNDA2OTcxMDEwNDI1YzAyYmI2MSBsZWdhY3ktdHJ1bmsKKzI0MzY5IDUwY2ZiZGRjNjAzN2U5NzUxZThlMTk3ZWE0NzlhN2MxNjJkZDMzMGMgbGVnYWN5LXRydW5rCisyNDM3MCAyMjVjN2RkMTdlMzcyNjc5NDNkM2Q3M2FjZTQ0MDI3YmMzYTlhODBhIGxlZ2FjeS10cnVuaworMjQzNzEgYzljNGM1MjNkY2JmMTI4ZDdhNjVhYjc5YWJkNzJiMmQxNGU3Y2M4ZCBsZWdhY3ktdHJ1bmsKKzI0MzcyIDliMDU5ZjFiMmExZjA1Njk5OGY5OTg2NTEyN2MzMTAyZGMwMWEyZDQgbGVnYWN5LXRydW5rCisyNDM3MyA3ZDNhMjExZWYyMzM2OTlmZWRhZjQ5YWQ5MDk3MjRkODg2MmFhMTljIGxlZ2FjeS10cnVuaworMjQzNzQgYmE2N2I5Yzk3YjY5NmJmNjI1NWQ1YjM5YjBjMmY1YTA3NWE1OWFlNSBsZWdhY3ktdHJ1bmsKKzI0Mzc1IDYzOTJmMDMyMjJlMDEwZTgwMzM4NjcyOGE3OWZkYTg2OGYzNzU4MmUgbGVnYWN5LXRydW5rCisyNDM3NiA2MzljMGEzYWU4ZGNiNDVkYTE2MWYyZDgwZWNkOGQyNzkxMDE2ZDZiIGxlZ2FjeS10cnVuaworMjQzNzcgMzA0YjM0MDIzODc2OTIwZjU3MDQ2NWMyODYyYmVkNDA2ZjQyYzZjMCBsZWdhY3ktdHJ1bmsKKzI0Mzc4IDQ3ZWE3M2ZkN2U2YmEzMGNiOTg2YjAxMzc5MTRkNzM3OTAyYTYwM2EgbGVnYWN5LXRydW5rCisyNDM3OSBkYzY0MWUxMjU2ZjljNGRlODA3MjdlZjZkMjVkYzMwMDIwOWU4MGY5IGxlZ2FjeS10cnVuaworMjQzODAgYzVmYmU5MmUwMmQzYTE1NzAwYzlmNDljNGVkOGEyOWIzNmRmOGE0ZSBsZWdhY3ktdHJ1bmsKKzI0MzgxIDM3OWZjNjZmNGM5NmQwYTFmN2MxNzZmOWJlZGQxMGNkNzM1YjZkMmYgbGVnYWN5LXRydW5rCisyNDM4MiAwMjVhZDI3ZDQyMjRmNDU3MjQ1MTM0ZmNjOWJhZWUwYjM4NmNlNmE1IGxlZ2FjeS10cnVuaworMjQzODMgOGNlZjc1Y2FjYjAxNjA0Y2RmMDAwMGFkZmViNjY4YzY3MWQ0OTg1YSBsZWdhY3ktdHJ1bmsKKzI0Mzg0IDViNDU5Njc3ZmM0NDRmYzliMGMwM2JiYjk2ZGQ1MGFiMThhMGQxOTkgbGVnYWN5LXRydW5rCisyNDM4NSA5NGY1YTlmYTM1ODM0NzUwODE0ZDE2MjlkNjdkNDNkYWViZDk0MGIzIGxlZ2FjeS10cnVuaworMjQzODYgYzhkNzc1YjlmZjkyYTliYjkzOTVkNTBiNmFmNmZhMjE2ODZkYTQzMCBsZWdhY3ktdHJ1bmsKKzI0Mzg3IGQzYjY0MDFjYTI3M2I1ZTRjOGVjZGEzYWE5Mzc3NTg5ZmI4MDQzMzEgbGVnYWN5LXRydW5rCisyNDM4OCA1MmNlODg3ZGIzYzkzMWE2MzhlMWFmNWZjYTVjMjNlOGY3OTc4ZjNkIGxlZ2FjeS10cnVuaworMjQzODkgM2ViMjRmNGM4OGQ1YjE5Y2ZlYTRmOGRlZWM5YmYxNDQ0YWVmYjNiNSBsZWdhY3ktdHJ1bmsKKzI0MzkwIGVhNWIwZjBiNzE2ZjI1NDg0MzI2OGE5MjdhMjg0Yzc0NzY0NGQxYjggbGVnYWN5LXRydW5rCisyNDM5MSA0MWVhMmFiYjc0ZmIzOWMxYmM3NzdiNmVmN2E4YWIxOTY4ZTU3ZDkyIGxlZ2FjeS10cnVuaworMjQzOTIgMzQ3ZWE2OTMwMDJkNTJiODllMzEwZDBiNDU4NjBmM2IxM2ZiNGI1MyBsZWdhY3ktdHJ1bmsKKzI0MzkzIGQ5NWE0ZWM2ODVlMGUzOGEzOTc0ZWVjYmE2OWQ1MDVhMjE2YTQ5OTEgbGVnYWN5LXRydW5rCisyNDM5NCA1ZTI1YzY2OTc0MWNmOTExYTFkYWE5MTE2MWI1NTdiNGYzN2MyYTkzIGxlZ2FjeS10cnVuaworMjQzOTUgNDdmNjUzMzY3NGZkYTJkYjYyNmJkZmI2Mzc0MzM3MzU4NWE5M2NiYiBsZWdhY3ktdHJ1bmsKKzI0Mzk2IDUzMjcwZDI4MWJmMDgzYmQ4ZDE2NGUyODc2ZDQ0NjRmYTYwOWFlNWIgbGVnYWN5LXRydW5rCisyNDM5NyA3ZGUxMzNjYmJhZjE4ZTg2ODNhMDQ4MTMyOTExMmE0NTY0YjQ1YzgwIGxlZ2FjeS10cnVuaworMjQzOTggYzIxNTAzMTNkOWQxM2U2YjUyNmVlY2IxZjUyYTQwZTQ5ZDNiMTg2NSBsZWdhY3ktdHJ1bmsKKzI0Mzk5IGIxMjgwY2JhNzliNTlhYzNmNmI5Y2Q0ZGYxZmM0MzRiNDdkMDkzZTcgbGVnYWN5LXRydW5rCisyNDQwMCBjZGI3MGJmODhkYjFhOGQwYmE2MDBmNDAyNDYyZGExMzNiYTA2MDBkIGxlZ2FjeS10cnVuaworMjQ0MDEgOWJhM2M4Mjk0NmI4OTYxYzE3Njc5ZTZlMDNlYjY5N2VjZjg3ZTRkMCBsZWdhY3ktdHJ1bmsKKzI0NDAyIDgyZDg0MTM2MzZlNzc5MGQ1NWY5ZjhmYjgzYjQ0NzVmZTNmYjhlZTAgbGVnYWN5LXRydW5rCisyNDQwMyA4M2ZjODgzNTBmODBhMjJiOWVjYWM1NzViZGQxMTExNzc0Njk1ZGI3IGxlZ2FjeS10cnVuaworMjQ0MDQgMGZlYWM0NWVlNjYyZWZkMDllNzMwYzY0ODAwYzNmZTUyZTUyNzRmZiBsZWdhY3ktdHJ1bmsKKzI0NDA1IDE4M2YyODU5OTczNjYzMWQ1MDkyMzAzOThmYjI3MTAyNTIxZjkxMTkgbGVnYWN5LXRydW5rCisyNDQwNiBkNmMxODNjYTA5M2M4MDNiNDZlZTg2YjcwNGE5NjNiOWExYTJiZmY2IGxlZ2FjeS10cnVuaworMjQ0MDcgY2VjODAwOTMxYTM3MGQyNWM5NGE5ZmFlMzNhOGZmMzRmNmUyOTEyNSBsZWdhY3ktdHJ1bmsKKzI0NDA4IGU0MjIwMzFiOGZkNzA4NjJlMDU3NzRhMDM2OTg5NTQ2NTdiOGVkZGEgbGVnYWN5LXRydW5rCisyNDQwOSA2NzQ3MTA3MGI5NjY4M2MxZjJlNWYwZjNmYjVmZTA3ZWMyMjk0ODc5IHIyMmIyLWJyYW5jaAorMjQ0MTAgMTE0NzVkZDQ2ZmE3NjEzMjcwNDcyM2UzM2U4ODJiMTY0ZjQ1NDNiMyByMjJiMi1icmFuY2gKKzI0NDExIDM0ZmM1MjM4MzEwZDMzYzQwODUzNGVlZmE4ZjcyMDIxOWRjNzRlOWYgcjIyYjItYnJhbmNoCisyNDQxMiBlOWEwMWUyNGE0YTk3NGY1NGMwYjRiOGRjMWIzNTQ2OThkY2E3OWNiIHIyMmIyLWJyYW5jaAorMjQ0MTMgNjE4NWE2N2IzMDEyODQwOWU5NTM4MTdjZDlkZTE4ZDUyZDA1YjUzMyByMjJiMi1icmFuY2gKKzI0NDE0IDAzYWVhNzU3NWFmYmE2YmY5ODIwZDFiYzQzMjMwOTA5MDA4MmFkYjAgcjIyYjItYnJhbmNoCisyNDQxNSBhNzE4YmE5OTJmMTA0YWYzZDlhYmU3YTllYTk0NWI2Yjk0ZDU1MWQwIHIyMmIyLWJyYW5jaAorMjQ0MTYgYmUzOWZhNTU1OGM1NDVkYTMzZTljODMzZTQ1NzVlMWFjOTdkZjA1MCByMjJiMi1icmFuY2gKKzI0NDE4IGQxOTUxM2UyODkzYzk5ZWZlNWViY2JmMTVlNTE3NmM1MDRiYzBiYzEgbGVnYWN5LXRydW5rCisyNDQxOSAzODI3ZjEzNmUwZDZlNmEwYTE5NTRhYTM5MjViZTk4MjliYmFiMmZhIGxlZ2FjeS10cnVuaworMjQ0MjAgMjcxMWY4ZGIxNjRjZmFiNWU3ZDk0ZGRlZjRjZTIzYzllZTNhM2UzMiBsZWdhY3ktdHJ1bmsKKzI0NDIxIDEyNjY4ZDBhZjhmN2Y1NGY3OTI3ZTg2OWEyY2QwMjg5OTUwM2ZlMmMgbGVnYWN5LXRydW5rCisyNDQyMiAwNTA5NTM5OGY5MzkyZTJlODc0YTNhZWM2OWI5ZGI1NTcyNjNiNjBkIGxlZ2FjeS10cnVuaworMjQ0MjMgYWYxYzVmYjZhNzAzOTJiMzBlYzYxYTFmMWE2MzEzMWFjNGNlMTkwZSBsZWdhY3ktdHJ1bmsKKzI0NDI0IDhkMGMxMDZkOTA5OTI2ODExZTMzYTAzN2ViMzNmMTE2YjM0YjA2MjEgbGVnYWN5LXRydW5rCisyNDQyNSAzOGQwYmQwZmE3ZjJlN2I3MGJiNTNlOWM5ZTk0NTMzOTVhNTlkNjQyIGxlZ2FjeS10cnVuaworMjQ0MjYgZWQzZGNlMTdmYzc5YjdhNmM2ZmZjY2M2YTI5ZGNjNTU1MWJlMDZjNiBsZWdhY3ktdHJ1bmsKKzI0NDI3IGY3ZGIyYzBhMzBmY2U4ZDU5NzNjMjBlOGIxODRkZDllMGM3MTM3YjcgbGVnYWN5LXRydW5rCisyNDQyOCAwZWQ2ZmM3YzFjMDkzZDA2Y2QwOGQ1OGY0NDNhODlmYjZiMzMyMjdlIGxlZ2FjeS10cnVuaworMjQ0MjkgMGE2NzQ2M2Y4YjdkMjI1OWM4ZmYyZmUxZTYxNmU0ZTVlODhjYTVhOSBsZWdhY3ktdHJ1bmsKKzI0NDMwIGNmNzk3MDMzNDA0MThmZDc0ZDk0M2M3ZDgwZjMzNmFiOTY3ZjZhMzMgbGVnYWN5LXRydW5rCisyNDQzMSAyZTZjZTNhNTYyODRiZmVjYTViOGY3YTVhNjAwYzM0NGQ4NzhiMjE2IGxlZ2FjeS10cnVuaworMjQ0MzIgNDkzZjkzMmQ1ODI5YjFkYzhjMTgwMmMxMTgyNDBmZmM2Y2VlZmIyZiBsZWdhY3ktdHJ1bmsKKzI0NDMzIDQ2ODUzMDczODRlYjBkN2ZkMzFhMDg2MGE4YzY1ZDAxNjgwNWRjMDMgbGVnYWN5LXRydW5rCisyNDQzNCA2NzFhODQ4NjZhYzk5OTYzOGVjZjBlYmQ4YTY2MmU4Nzg2YWEyZTAzIGxlZ2FjeS10cnVuaworMjQ0MzUgNjg3YjhjNzE5MmExYTE2NmMwNmQ0N2FiNzBlYzlmZTFjYjBiOTUwMSBsZWdhY3ktdHJ1bmsKKzI0NDM2IDIxODIwNzMyYTExNzFiZmM2NzQ2YjcyYWQzZjlmZjQwNzE3ODJlNGQgbGVnYWN5LXRydW5rCisyNDQzNyAyMWJiNGM0YjdlMjZmNTA4NzA2ZWI3OGI0ZmU1NDhjZDVhYTlhYTM0IGxlZ2FjeS10cnVuaworMjQ0MzggMTdlODdhYTM3Nzk2MmM1ODY0ZDZhZDA5ZjcyNDBmYjgxMDE1ZjczNCBsZWdhY3ktdHJ1bmsKKzI0NDM5IDZiNmE5Y2FlMjU2ZWUzMWMzNGNkODY1ZGViMzAyMTgwOGRjMjRhYTIgbGVnYWN5LXRydW5rCisyNDQ0MCBkZDI4YTRlY2IzN2Y2MDkzOTQ5NTEwZTliZTRlMzg5ZjZkYzJhYWE3IGxlZ2FjeS10cnVuaworMjQ0NDEgMTVmZjUwNDYzMmVkNmE4ZTgxZDc3ZjkwMWUzYTlkZWQ1NDFlMzEzNyBsZWdhY3ktdHJ1bmsKKzI0NDQyIGExM2E0MzkzZjQ1YzAxZWFlYjBjMDI1MTM2ZjE0YzUwN2RhYjMyM2UgbGVnYWN5LXRydW5rCisyNDQ0MyA2ZTM0MTUxYWVmZTY2MzA1M2YxYmNkMjhmZGUwMWFjM2ZkOTc3MjIzIGxlZ2FjeS10cnVuaworMjQ0NDQgNjBlMzZkNTE4NzU4ZjFlMjk0ZmMxNzJiOWNkMmE2NmZjMGU1NjEzMyBsZWdhY3ktdHJ1bmsKKzI0NDQ1IGE5YTg3MzQxYTllN2IwNmVjZDA0OGZkNDA3MDRkNWRkNTU5NDdmY2QgbGVnYWN5LXRydW5rCisyNDQ0NiBlYzg4ZmM0MzAxMjc2MTFlNmE4ODBlYmNhOWY2MGU1Zjc1NDFkZjY0IGxlZ2FjeS10cnVuaworMjQ0NDcgYWJlMTRhYzYyMDI0MjEzNzU1Mzg3ZDYyYzFkMDkwOTY0ODY1Y2FjMyBsZWdhY3ktdHJ1bmsKKzI0NDQ4IDk0MzYzOWI5NDRhYjRlZTMyYjMzZDk0ZmIxNWUwYjdkOGQ4ODMyODQgbGVnYWN5LXRydW5rCisyNDQ0OSAxOTdhOTA0ODliZWVkOWM1ZGFkNTQ3MGZmMTVjNWYwYzhhZjAxYTY1IGxlZ2FjeS10cnVuaworMjQ0NTAgNWI4ZjA3ZTYzOTljMWU2NzAyZTlkYTQyMzUxNTlmMTY4YmFhOTc3ZCBsZWdhY3ktdHJ1bmsKKzI0NDUxIGEyZDAzY2ViYTgwZWJmYTYyNWNjMmE0NTdlOGYxMDQ1MDdmM2ViMDUgbGVnYWN5LXRydW5rCisyNDQ1MiA2NzUwOGEzNTFhYTJiZmJiNjI3OTA0MGJmMDc4Zjk3ZDExYjIwOTJhIGxlZ2FjeS10cnVuaworMjQ0NTMgMWM2YzAyN2ZkMTEwYmY5YjVlM2Y0ZjQ5YTI5MmVmNDhiYzY1MGU4ZiBsZWdhY3ktdHJ1bmsKKzI0NDU0IDUxYjQ1NzJjZjAxM2QxYTZjOGM3OTZiMThlMjBmNTZiODU5ZTczNTAgbGVnYWN5LXRydW5rCisyNDQ1NSA4NDJiMjgwNDIxYmE2MWVjZDRhMTlhZGJmYzA5MWI3MDZkMmU3NjQwIGxlZ2FjeS10cnVuaworMjQ0NTYgNzI5NjZjOWRmOWE5OTg3ZWNjNjMxNDNiMjI5OGE0NTk1OTdmNGIwMSBsZWdhY3ktdHJ1bmsKKzI0NDU3IDk2YTA4ZmQzOGVmODEyNTk4ZDQ1OGZmOGEzNzQxODRmMzViYjkxOWMgbGVnYWN5LXRydW5rCisyNDQ1OCA4N2ZhNmU5YmQ3N2VjM2M3YmQ2MTgxM2RkNmM1MzJjN2IyNTZjYzAxIGxlZ2FjeS10cnVuaworMjQ0NTkgMzRmZTc0MzM1MjZiYTQ3ODViYTZlMjA2ZjAyODQ4ZmFiNzI4MWU0MSBsZWdhY3ktdHJ1bmsKKzI0NDYwIDkwYTBkODAwMzNiNGY3MDM0NmJmZjk2MGZlNzdiMGViOTk2OWVjODUgbGVnYWN5LXRydW5rCisyNDQ2MSBkNDUwOWNmOTNmNTBmOTJjMGE2NzJiMzE4N2QzY2Y4YTQxODhlZmU0IGxlZ2FjeS10cnVuaworMjQ0NjIgOGU3MjQ1NDYwZDMwYmZmNDllOGQ3NTFlMTZhNWZhMjRmZGVjZTUwNCBsZWdhY3ktdHJ1bmsKKzI0NDYzIDBkZDE2ZmQzNmVlOGU1YzRiOTE1NTVjNzZmNDU3MGNjZWQwYmJkZDUgbGVnYWN5LXRydW5rCisyNDQ2NCA5MThiNTczNTRkODc0OGI5NzM0ZDEzYzJhNDQyODU0YTJkMGU5OTQ2IGxlZ2FjeS10cnVuaworMjQ0NjUgYmU1ZjUyOTYyYWRiMzRkMmQ1M2NhMWEwYjI3ZGJlNmUwYjc2Yjk2MSBsZWdhY3ktdHJ1bmsKKzI0NDY2IDExYTk2OWUyZmE1MDUzNTZiMGYwNmQzZDBkY2ZkMGI0Y2EzOTMxNjEgbGVnYWN5LXRydW5rCisyNDQ2NyBhMjBiMzcyZmI5MzljMjIwODQxMDhlYTVhMDIxY2M5YjQzMGNmNTJhIGxlZ2FjeS10cnVuaworMjQ0NjggYmNhNTNhMzdhOGE1YWZlMjQ5OTg2ZTA5Mjk2NjBkMjZlN2U5MjUxZSBsZWdhY3ktdHJ1bmsKKzI0NDY5IDlmZWNiYTUyNjkzNjdhZWI5M2NhNzU1YWY4MWE4NWM5MDQ1MTRlYjcgbGVnYWN5LXRydW5rCisyNDQ3MCBlNTkyNDcyZDU1YTM4ZjBiZGQ0ODhkYTFlZDM5NWU5MzQxYzA1MjE4IGxlZ2FjeS10cnVuaworMjQ0NzEgMWFjYzRiYTczYjlkMTYxNzdjMzZkNzE3NWVjYzBmN2NlZDkwOGQ5NCBsZWdhY3ktdHJ1bmsKKzI0NDcyIDZmYTk2YjMyOWUxNWVlMWMwNWRmNzkzYjZkZWVjMDQwNzM3N2QzZGEgbGVnYWN5LXRydW5rCisyNDQ3MyA3MzM4NGUxM2JkMmFlMTEyYmU0NmRjYTVhOGIxMWZlODljMDgwNDg3IGxlZ2FjeS10cnVuaworMjQ0NzQgOTQzY2E4MWFkMWRmM2Y1Mzk5NzMzM2Y4YjVkYTNjMDg1OTU2YTMwZCBsZWdhY3ktdHJ1bmsKKzI0NDc1IGUxYTY3YmU2YzZlNDBhM2UwYjY1ZjI0YmNmM2ExZDRhNjIxNGMzMDEgbGVnYWN5LXRydW5rCisyNDQ3NiA3YjY4Nzk3MTRiNzQ2NmU0NDlmMTdhMjczMzZlYmNjZGJmNDdlZjRlIGxlZ2FjeS10cnVuaworMjQ0NzcgMjFhYzU1ZmIyZGQ4YzgyYWQyMGZjZjZjMWNhOGNkOTNkODQ4MTcwZSBsZWdhY3ktdHJ1bmsKKzI0NDc4IGNmZTQwN2U0ZDhjMDE1ZGE2NGIxODc4ZWE2YjI5YmM5NGU4ZGYyYTYgbGVnYWN5LXRydW5rCisyNDQ3OSAwYjRhZWI0MTNkN2RmNzMwYTg4MTZlZTgzNjBiMGExODAyZjFhZWY5IGxlZ2FjeS10cnVuaworMjQ0ODAgZmQ0MmVhY2U1MGVhNWRhYjQ2NzYzNGJmMWY3ODVmNWFlYTg3Mjc3YyBsZWdhY3ktdHJ1bmsKKzI0NDgxIDQ3NWM4MjcxZTA1N2U5ZmU4YTY2ODRlNGU3ZTBkODIwOTMwNmE5ZGIgbGVnYWN5LXRydW5rCisyNDQ4MiA4OTA1ZTY3MjVjYTFiM2E4MzA4MTdiZjA1YjM3OTA4ZWQxYzc0NzQ4IGxlZ2FjeS10cnVuaworMjQ0ODMgMmRmYzYwMGY5OWNlZTZkNjIxYTc5ZGZmMjFhMTVmMWFmN2YzMTFhOCBsZWdhY3ktdHJ1bmsKKzI0NDg0IDI0NThjYmNjMWRkMzc2NWU2ZjZjZTViODMyYzlhNzJkNmZkYjRjNzAgbGVnYWN5LXRydW5rCisyNDQ4NSBkZjJmZmIwY2Q2YmJhNjBiMjJjYjhiODUwNWM4OTMwNDRmMWFkNzYyIGxlZ2FjeS10cnVuaworMjQ0ODYgMGI2YTE4YzZlNTllYzQ1MDg1NmFjNmQxYmI1OWY4ZWM2OTE1YzkxNSBsZWdhY3ktdHJ1bmsKKzI0NDg3IDc4OTI5MmNmMDkxNGM0MzYzZDQxNDZlNGM2YjEwOTcyMTVmMmY1NmMgbGVnYWN5LXRydW5rCisyNDQ4OCBjOWE3OTY0MDBhNTFjNTE0ODdjMjcxZTMzNTQxOTU2YzdlOGYxYTc5IGxlZ2FjeS10cnVuaworMjQ0ODkgZDRjYzA1ZjZlMTgzOWQzMGY0ZGIwYmE5ODE5YjUxNzcwYTlkMjg4ZSBsZWdhY3ktdHJ1bmsKKzI0NDkwIDdkMWVhYzQxY2UzZWNmZTBhZTJjZmQ0OTI3MTJjOGY4ZjU0YTczNmIgbGVnYWN5LXRydW5rCisyNDQ5MSBiYzUxZGU2NDNiNWU1OGNhY2YzZWIxNjdjY2U5NDcxNGVjZmFjODBjIGxlZ2FjeS10cnVuaworMjQ0OTIgNDg1NDIyOTAwZWYwNzljMjE3ZmM3NWRmYjNmYjcxN2Y1OTllNjE2MCBsZWdhY3ktdHJ1bmsKKzI0NDkzIDBmYmM5Mjg5YTRjN2NlNDAzOWJjNGYxMmNkNDgwYzhjN2Y1MmFlNGQgbGVnYWN5LXRydW5rCisyNDQ5NCA5NDRkNmUwMmYzNTkxNzc4M2I0Y2I4YjM2NTVkNmMwZTM0NzljYTM4IGxlZ2FjeS10cnVuaworMjQ0OTUgNDczZjI5NDExZjNiMmVkMjM4NzM1NmQ3MTYyOTQ5ODNmZWE4M2E3ZiBsZWdhY3ktdHJ1bmsKKzI0NDk2IGFjMTM1N2ZkMWFlYTFmOGExMjRjZDgyMjY1ZWNlN2FmZTk0YmQxNjkgbGVnYWN5LXRydW5rCisyNDQ5NyBjMmJmZmE2NzJiNzU5YmY5YWYzNzUzMzMxZjdkZWU2ZTk4MTJiOTZiIGxlZ2FjeS10cnVuaworMjQ0OTggYWViY2U0ODViNTZiOWNiNTA1OWFhNjhhYmMxYTcxODllMGZlYTJkNyBsZWdhY3ktdHJ1bmsKKzI0NDk5IDAxODkxODZmNGVkOTE4MjI5MWZlNzQwNzdkNzhjZGI5MTE1OTBjMWQgbGVnYWN5LXRydW5rCisyNDUwMCBlZjZmNjkyYzc2ZTIyYTliZWYxZTc4M2QzYTlhOTA0ZDE5NjhiYWI2IGxlZ2FjeS10cnVuaworMjQ1MDEgMDhmMjFhNTM3NGQ5YTlmYjljOWFiMjRlYmNiOTRjM2FlMjNkNjJkNSBsZWdhY3ktdHJ1bmsKKzI0NTAyIGE2MjNmOWNmOTUzNTQyMzFhMmRjYmJjMjViMGMwZDI3M2FjODRkOWYgbGVnYWN5LXRydW5rCisyNDUwMyA2YTczZDU4ZTE3NDcyMmYyOWY4ZTE0YWM4YmUzZDAwZjJhOTk3ZTY4IGxlZ2FjeS10cnVuaworMjQ1MDQgMzNjOGQzMzVhMmM0Mzc3NjJlOGE3YzFhMDcxYjRiZWViMzMzN2E1MCBsZWdhY3ktdHJ1bmsKKzI0NTA1IGMxOGFkNTJkZWNlMzVjMzgxY2RjOGRhYzQ4YzAzOWJjMWE2ZTdjMzAgbGVnYWN5LXRydW5rCisyNDUwNiA0MjZjMGQyNGRlYmQ4YTU4ZWU3YjYxNmQwNTE3ZDNmNzJiMjZlYTVjIGxlZ2FjeS10cnVuaworMjQ1MDcgMTUxOWQ2ZmFhYjE1OTQwNDVlZGE1N2UzN2M1NzAxOTVmMzRiNDI2MCBsZWdhY3ktdHJ1bmsKKzI0NTA4IDViM2IyOTI0NzU3MzVhOThmZGNmMThlNzBmZjY0MGJjMDlhZjUwM2QgbGVnYWN5LXRydW5rCisyNDUwOSA5MjA5MDJmNWE4ODRjMDlmNDVhOGQwMTJmNDllNWRmZmExNjA0OGQxIGxlZ2FjeS10cnVuaworMjQ1MTAgYWQ3YjQ0MjRhYWI2ZjNiMzNiNGEzNDg3NGI3ZDY0MTU0YTdiNzFhNyBsZWdhY3ktdHJ1bmsKKzI0NTExIGYxN2EzN2RlNjI4NWFhNTFkZGVhYTkzYWM1OGI2OGMxMDQ4ZDc2NGUgbGVnYWN5LXRydW5rCisyNDUxMiA2MDQxNWJmNWY4ZjJhNDY2MWUwOWY5ZmE1YmM1ODRlMDc5YWNlN2MyIGxlZ2FjeS10cnVuaworMjQ1MTMgOTQ3OTMxMzkyNjk0ZWQzOWEzMmE5ZmIzNWYzN2UyZTFkOTBlMmU3MCBsZWdhY3ktdHJ1bmsKKzI0NTE0IGRiOWI1OTc2ODI5ZTQ0N2MzYTM2ZjNmYTk3YTJlZGMzZTM2NTZkNTcgbGVnYWN5LXRydW5rCisyNDUxNSBjODRkZjg0ODYxNjM2NmY3YWZiODc2NDEwODhlYjhiNzYxYzI1N2Q3IGxlZ2FjeS10cnVuaworMjQ1MTYgZDk1ZWI3ZWM0NTUzNTQyYjU4ZWFhMmMxNTI1Y2M0ZjdjZThlNWZhOCBsZWdhY3ktdHJ1bmsKKzI0NTE3IGY3OWU0NzE5ZGI5NjQ1ZjVjMzgwODU5NmVlNDhhMmNhMTk5OTc4NjAgbGVnYWN5LXRydW5rCisyNDUxOCA4NjRjYzU5M2JkZGEyNzdkZjk3OTlmNDAxOTMyZTc4M2U3MGU2ZWYyIGxlZ2FjeS10cnVuaworMjQ1MTkgODE5MjhjOWQ3MDExN2VlZDZkM2EyYzQyMDJhM2Y3YTMzMWQ0ZGM0ZiBsZWdhY3ktdHJ1bmsKKzI0NTIwIGJjZjY2NmU4ODMxMjFkMmI3ZTM3ZTcxNTNkYzBjMGUxNzY2MTNmN2EgbGVnYWN5LXRydW5rCisyNDUyMSBlYWQxZmEyNjk1MDJhMWNlNmZiNGZkM2I1OGQxOGQ1N2U4ZjBhOGE1IHJlbGVhc2UyMS1tYWludAorMjQ1MjIgZDgyNjVhMGMzY2YwMjg4YTZkMjFlOWVkYjljNTA1NTVmMzdjZDU3OSByZWxlYXNlMjEtbWFpbnQKKzI0NTIzIDJkMjE2NTBmNDZmODlkMmVhMGZjNWJkYTY2YjdiYWQ1NzFkNDUxNWQgcmVsZWFzZTIxLW1haW50CisyNDUyNCAxNTFiNjk2N2JkMjEwYjJjMTJjZTViMWQ3ZjhkOWYyODFkNjg1YjAxIHJlbGVhc2UyMS1tYWludAorMjQ1MjUgNjcwOWFkNGZlNzVlYzhlNTU4YzZlZWE5ZjFiY2Y5NTM0NDc1OGRkZSByZWxlYXNlMjEtbWFpbnQKKzI0NTI2IDNiMDllYTcyM2VjZTcyMmU5MWM4MDM5MjlkZTFkNjUxZjAyZjcwZTkgbGVnYWN5LXRydW5rCisyNDUyNyBkMjZlNjU5NTA3NDAyYzM3NmQyOGM1ZTNhYzc0ZDUwNDNkZjU4MTUwIHJlbGVhc2UyMS1tYWludAorMjQ1MjggMTk4YWViZTEyMzk5OGQ5NjVkN2FhYWZiNTE2MjE4ZWQxN2U0ZjIzNCBsZWdhY3ktdHJ1bmsKKzI0NTI5IGEzOWFmODAwYjlhM2VkOWY0N2U1MTRmNjBkMGJkZjljMmM4MzljOTggcmVsZWFzZTIxLW1haW50CisyNDUzMCAxNDhmZmQ5NTc2MThkMzJlYWUwOTRiZDk5OGRkNDM1NmFiMDlhYjIzIHJlbGVhc2UyMS1tYWludAorMjQ1MzEgNjU2YzRjZjUxNjVmYTgwZGMzNWE2NzY3ODRjYmNlNzQ5MDhkZjNjYiBsZWdhY3ktdHJ1bmsKKzI0NTMyIDkyMDVjZmI3NzA5NDY2NTAwNDE4MDgyZDliMDFhN2ZiY2U0NTFiYWIgcmVsZWFzZTIxLW1haW50CisyNDUzMyBkMjI5MGU5N2RlMTg3ZDNkZDk2NGQzYmFiYWEzNTM2YzY5ODQyMTQ2IHJlbGVhc2UyMS1tYWludAorMjQ1MzQgMzQzMjdjZjQ1Mjk5NGE4ZjA1YjM4NmFkOThkMjQ2NDI0NDlmNDY0YiByZWxlYXNlMjEtbWFpbnQKKzI0NTM1IDIyZDgyMTY3M2U1MjY3YTEzMzVkODhlMjNjYTI4ODIxNTNhMDk2ZjYgcmVsZWFzZTIxLW1haW50CisyNDUzNiAwMmQwMTcwMzk3ODg1YzZkZTc2NTc4ZDc1NDAwMGI4YTIxYjM0OGFhIHJlbGVhc2UyMS1tYWludAorMjQ1MzcgNGFmMzE4NmU2NjMxNTE4ODE3MGIwN2IwYmYyYjk3MWVlMjQ1M2U4YiBsZWdhY3ktdHJ1bmsKKzI0NTM4IDVhYjBkYzdmMmViMDQ2MmZmZTM0NTFlNzgwZjE4OTY2YzA0YzkwZTYgcmVsZWFzZTIxLW1haW50CisyNDUzOSA5NWI0MmYxMDU1YzI0ZTcwYzE5NGJmYWIwYWM2NzI1MzczNzkwNjM2IHJlbGVhc2UyMS1tYWludAorMjQ1NDAgMGJjODgzODQwN2JiNTc5NmU4OWFiYWZhZDZlYjEzODZiZGYwZGJmOSBsZWdhY3ktdHJ1bmsKKzI0NTQxIGFjY2JlNTY4NGFjNjE0ZDVlYjMzZDk5YzM5ZjgwZjExYjJhMjE3ZmUgcmVsZWFzZTIxLW1haW50CisyNDU0MiAwMGVjZmUxOWE4ZDI5ZmVhNDRlZGQyOTM4NmM5YWE4MzAxN2FlOWExIHJlbGVhc2UyMS1tYWludAorMjQ1NDMgMDYwYzM3NTg3OTUxYjFhODQxYzUxYTQyYWI5YWFhODBkNjRlNjg0MCByZWxlYXNlMjEtbWFpbnQKKzI0NTQ0IGEzZDAxYTIyNTMyOTczZGI2MTMxY2JlMTU3ZmNhYWFhMDZiMDg0NTkgcmVsZWFzZTIxLW1haW50CisyNDU0NSA0OTMwMTk4ZjkyZGJmMzYzNDFjMDIwMjc4ZGFlNmQyZGQ5OTUwMjU5IGxlZ2FjeS10cnVuaworMjQ1NDYgODAzY2NiZTNlZTdjYWI1YzIxODI4YTBjZGI1OGNlNDczZThjYTFiMyBsZWdhY3ktdHJ1bmsKKzI0NTQ3IDlkYzg3ZTYxYjVhMmUyMmVlMjI5ZTAyY2M5OWY3MWNiOWJkZTZiNzUgbGVnYWN5LXRydW5rCisyNDU0OCBiNzgyNDkwZGE3ZjA4MjE4NDI2MTQwZTBiMjVjMDgxOGVjNzM0YzBkIGxlZ2FjeS10cnVuaworMjQ1NDkgODlhNWMxMTA2YjgyZjE4MDg3MjBmYjc5NThjZGU1MzlkOWZkYzJiNiBsZWdhY3ktdHJ1bmsKKzI0NTUwIDQyZDA4MTk1NDZkNjA5ZmI4MmI5YmMyNjM1ODU4NGM3YjNmZWQ5ZDQgbGVnYWN5LXRydW5rCisyNDU1MSAzZTg0NjBmYjJmYmU0OWY4MDc2ZmU1MzE4ZTcwNTc0NWVlMGE1NzdjIGxlZ2FjeS10cnVuaworMjQ1NTIgOWQ2ZmJjYjk1MGY5YjM0YTRkYzFkYmMxZTQ1NTg3MTE2M2JlZDZhZSBsZWdhY3ktdHJ1bmsKKzI0NTUzIDU0ZGRjMzc5ZDRmYzI4OTgwMjg5YzAwMDQwYmZmOTQ5MDU0YjdiZGEgbGVnYWN5LXRydW5rCisyNDU1NCBhZDg3Njc0ZGUzYTFiM2M0ZWZlZTI1NjNhZDI1NzQyZWVlZmQ2ZGVlIGxlZ2FjeS10cnVuaworMjQ1NTUgNWMwYmE2ZWJjNjJkMGNkYjkzMjUzNjM0NTBiNjFjMWEwYTJiMDAwNyBsZWdhY3ktdHJ1bmsKKzI0NTU2IDIwMzQ5MDJiMGYxYWM4NGFmYmI1ZWU5N2MxOWY4MmRhZGIxZWM3YzUgbGVnYWN5LXRydW5rCisyNDU1NyAxMjg5YTA1NTllNWE0NGRkMWQwYzdlMDdhNTRiYzc1YTQxNjU0YjhmIGxlZ2FjeS10cnVuaworMjQ1NTggYmE2YTdhNWMzMmU4NzE3MzFiZmM3ZDU2MzBiYWVjNmQ5MDA4MTg3NiBsZWdhY3ktdHJ1bmsKKzI0NTU5IGNiOTIxZDQ4M2UwMDk0MmU0NGZjMTI2M2MxOTliYzRjOGQ1YmFlMTcgbGVnYWN5LXRydW5rCisyNDU2MCBiYTE2ODU2YmZiYWJkOGQ0ZGVhMDEyMGY2ZDkwMGU5ZDA2ZWQ3MjJkIGxlZ2FjeS10cnVuaworMjQ1NjEgMDYyYzZmNDcxMDZmYmUxYWNmNGM4MDhmYzMxNDAyZGE0YjYyYWYwMyBsZWdhY3ktdHJ1bmsKKzI0NTYyIDIyNGVkYmFmNjMwMTkxNTQ0MjUxYmEyODc1MDcxZTc4ZTMzYjMyOTYgbGVnYWN5LXRydW5rCisyNDU2MyBiMjZkNThiOTgxMGNhZDdlODMxNmMyMDYxODczOGYwMzdmNjhkZTUxIGxlZ2FjeS10cnVuaworMjQ1NjQgNDVlMTE3NzQyNGUxYzc5OTY4NzJmNWJiZWUxMGI3M2VlNzVkN2ZlYSBsZWdhY3ktdHJ1bmsKKzI0NTY1IGUzODZmNmUyNmE0MmUzODFmNzg0ZTllMTkxNWY1MGJjMzBmYWJjYWQgbGVnYWN5LXRydW5rCisyNDU2NiBkMDI0YTVjNzJjYjU2M2M0YjQzNDQ2OWM0ODNkYzk4YmFmODJkZDg2IGxlZ2FjeS10cnVuaworMjQ1NjcgMTkxODZiMTdkMjVhYTM5MDBkN2JhYTBhODgzZjBlMDkzNTYwNzJmZCBsZWdhY3ktdHJ1bmsKKzI0NTY4IDE0NTA3NjcxYzAyY2M5OTg5ZDI5OWFjMTMyZGE2YWZmOGI2NDI2ODIgbGVnYWN5LXRydW5rCisyNDU2OSBmYmY2OGM1OWQ2NmNjZDI2MDcxYTc0YTg3YWQzNzUzMGQ3YWFkNzM5IGxlZ2FjeS10cnVuaworMjQ1NzAgMDhkYmY2YjNjMzE2NDMxOGViYjI1NzBkYmE4N2FmMTQ3NWE1YjA2NyBsZWdhY3ktdHJ1bmsKKzI0NTcxIGU1ZDI5NTU0MmM3ZmI5NjYxMTY5YzE3YTg4MDE1ZGJiZjkwMDcxMTEgbGVnYWN5LXRydW5rCisyNDU3MiAxMDJkMThlYTAyY2ZhYzM5YTIxMzhlYWI3MjllYTI1OTFjODhiMDNkIGxlZ2FjeS10cnVuaworMjQ1NzMgYzUwNmJmN2IyNmI4YTBmMWY5OGYyY2U5YWYwY2NkMzk2YjdjODY1MiBsZWdhY3ktdHJ1bmsKKzI0NTc0IDQyNzFkYTcwZWQ5ZTEzNjIxZjNlNTc1NWJjMGViMjQ2NGI5MmQzZTMgbGVnYWN5LXRydW5rCisyNDU3NSBlOGZlYTk1YTgyYTQwMzYwNzgwYWRiMzAwYmFiNGY0NzI3NGFiNTM1IGxlZ2FjeS10cnVuaworMjQ1NzYgMmYyYWJlZWVmZDg3OGJlZjMzN2M3MTZiZTg5ZTAyMjU5ZDUzMjVhZCBsZWdhY3ktdHJ1bmsKKzI0NTc3IDI2NTY3ZjI4Njc3ZTE0YWZiNDVlZDlkNWVmM2E4MzhmNjg1YTA2YmMgbGVnYWN5LXRydW5rCisyNDU3NyBhYmVjNGUzYjA4MWYyZjgwMmMwZjI3YmMxZWE3MGVkNzUyYWJkODRjIHJlbGVhc2UyMS1tYWludAorMjQ1NzggNGRhZTg0MmFhN2M1OGZmZGU0YjQ3YmY5NTAyODNmNzA3ZDM3OTM0NSBsZWdhY3ktdHJ1bmsKKzI0NTc5IDdhN2Y1NTdiNGQ1NDE4ZWIzNzAyZGE1MmU5NWRjOWM4M2RlOTZlMmIgbGVnYWN5LXRydW5rCisyNDU4MCBkMjk2ZTZiYjE3ZTU0Y2YwN2NmMDFlMWFhZmNmYmFmYjc0OTBjOWRlIGxlZ2FjeS10cnVuaworMjQ1ODEgMmI1ZGM2Yzc3YzNkZTZkZmI1ZjMxNWY5NTliOWEzYzc0NTdlNWEwNyBsZWdhY3ktdHJ1bmsKKzI0NTgyIDk3NzA5ZmQ4ZmRhMDI2YmVlOGFhM2Q3ZThlYWI1M2IzYjMxODZmOTcgbGVnYWN5LXRydW5rCisyNDU4MyBhYzNmZGQxNDEyZDllYWE4M2M3Y2MwMTU5MTQ5NTZkNjUwNjYzMDY5IGxlZ2FjeS10cnVuaworMjQ1ODQgZDY0ZGZiZGM1ZjhjNDQ4MDZjMDI0M2MyNjAyYjMyYzIwMTA2MWM0YiBsZWdhY3ktdHJ1bmsKKzI0NTg1IGVjYmJlY2NkZTA3ZGQzYjk2MDVlNGNiMDg1YTc5MjkzZTg2M2MwZWYgbGVnYWN5LXRydW5rCisyNDU4NiBjZmJlMzhhMDNlOGMxOTA3YzBjYjJlNjk5YTMzMzY2Zjg0MDJhNzk2IGxlZ2FjeS10cnVuaworMjQ1ODcgYjAxMzIzYmZjZjZjZTkzMjlmNDkyZmUyYTg4NDAyYmI4ZTY2OTZmYyBsZWdhY3ktdHJ1bmsKKzI0NTg4IDI4ZjRjZWEyMDlkNzhlYTg2YTUyNzlkZjg2N2Y5MDUxOWMwZTI2MDUgbGVnYWN5LXRydW5rCisyNDU4OSBmNzAyZmYzOTBlNGRjNzczZDJjMWYyNTZhNThhNWExMjhjM2NiMjVkIGxlZ2FjeS10cnVuaworMjQ1OTAgMDNmMzE1NWNiNmViZTE3ZmM2N2Q2ZTU4YWFmYzc3ODViOGY2NjY2YiBsZWdhY3ktdHJ1bmsKKzI0NTkxIDY0MzI0NGY3ZjQ2NzA4ZDFlNzE5NGQxMzgxYzk3YjIzMjBiN2QyYzggbGVnYWN5LXRydW5rCisyNDU5MiAzNjU3YmVmYWJhNGYwYTgxZGExYmUxZWViYmVmNDIyMjk1NWM1MDg0IGxlZ2FjeS10cnVuaworMjQ1OTMgOTkxYjE3MGNmNDM4NWQxMDI1NzFkYTNhOTI2ZWIwMjNmMDM1YTQ1NCBsZWdhY3ktdHJ1bmsKKzI0NTk0IGQzNWE1NzcxYzRjNjlmNGUzYjc4NjMwNzIxNzgxODAwNTRkNWM4M2UgbGVnYWN5LXRydW5rCisyNDU5NSBkNDkwN2NkY2MyOTk0NTQzNjY2MzQ1ZjhjMGJkOGQwYjhjNmU0NTAyIGxlZ2FjeS10cnVuaworMjQ1OTcgNDNiOGE5NjJhMzJhZWVjZWUyM2QyYjZiNGYyMDk5NGU5YWQ3MDhhYyBsZWdhY3ktdHJ1bmsKKzI0NTk4IDUwZjI4ZWQ4MDQ0ZmZjMWM0NDVmYzczYzBmZDFhOGQxNzc5YTE5NjYgbGVnYWN5LXRydW5rCisyNDU5OSAxZTdjMGI4NDk1ODRkN2ZmN2ZmYmQ3M2ZhMjBmZjYwYTE1ODI2Yzg0IGxlZ2FjeS10cnVuaworMjQ2MDAgZDUxZjIxNThmYTc5MDcwYTRhZDE1MzU4MTgwMGE1MGJmNGFhM2YwZCBsZWdhY3ktdHJ1bmsKKzI0NjAxIGQwYzIwNDBmZWRlN2Q0ZmFkODVmM2E5MTAwZDk3OTJhNDRlMWQ2ODEgbGVnYWN5LXRydW5rCisyNDYwMiA3NzZkZDJlNzY3OGUwNDNkNjVlODRjMWQ0MDg5MWNhYTIzZGJhZTM4IGxlZ2FjeS10cnVuaworMjQ2MDMgOTgzNWJhYjI4NzZlNDJmODNkNmJlYzU0YTBiNzgyYTYwODA4ZTMxNCBsZWdhY3ktdHJ1bmsKKzI0NjA0IDIzNzVkMmRmYjViM2E2MmI4NmNkYThmM2JiYzI5NDRiZGFlOGZiMzkgbGVnYWN5LXRydW5rCisyNDYwNSBlOGRkYWIxMzczMmFiYWQwYjI5NDljOGI5Y2JjNjNhZGVkNzBlMzYyIGxlZ2FjeS10cnVuaworMjQ2MDYgYjgxMGMzMGI0YWExYTdhZDkwZTA3ZGJhOTZkMDQ3NWM0ZjdmNWJjMSBsZWdhY3ktdHJ1bmsKKzI0NjA3IDI0YTZjM2ZkMGU1OGJjMGExOTQzNmQwYWU3Y2Y1NTQ1YzgwMmVhODQgbGVnYWN5LXRydW5rCisyNDYwOCA1OTg5NDQ5NmI1YzczNjJkZDRlYzljZmE2NTY0MzFmNDE5ZDVhMzEyIGxlZ2FjeS10cnVuaworMjQ2MDkgYmI3OGE1MmI4ZmZjZTI3MDVkZTgzYTk1MTA2MDI2ZTUyYzE2Y2JmNCBsZWdhY3ktdHJ1bmsKKzI0NjEwIDExOTQyMjQzMGU4ZmNiZTFmMjBjOTA4OThhNzVmMTVlNGExOTkzN2IgbGVnYWN5LXRydW5rCisyNDYxMSA5YTI0M2VlMzU0YTEzNGNjNWQzZmFiNzczNmI1N2Q1NzM0NjE2NjVjIGxlZ2FjeS10cnVuaworMjQ2MTIgNjJlYTMxN2RmYzdmNGEwYTU4ZTVmMDI2ZWY2ZDViNmQ1NWYwMjU2MSByZWxlYXNlMjEtbWFpbnQKKzI0NjEzIGY1NTMyY2MxNTE0YjdkYjYzNWIwNjY0ZTc4NjYwZTk0ODE4MjdmNTIgbGVnYWN5LXRydW5rCisyNDYxNCAxMmMwOTRhMjMyNzM0NmU2YjliM2E0OTEzYTNmOWM4ZDQwY2ZiZWNkIGxlZ2FjeS10cnVuaworMjQ2MTUgZGU3NjQ2NjNjMzI1YzA0NjdhNDQwMmY2YTZlMTNhYTg4MmMzZDlmMCBsZWdhY3ktdHJ1bmsKKzI0NjE2IGI2ZjU5MmVlYzI0MWQ2ZWNjY2IyNmQ5Yzk4YjNiNzIyZjM0YzNkZTUgcmVsZWFzZTIxLW1haW50CisyNDYxNyBkOTgwZWJjYzY5NmEyODgyOTVhODQ0N2NjY2NjNWQzNjhiZGE2MGRmIGxlZ2FjeS10cnVuaworMjQ2MTggZDg2ZDZlMGQxNThjNWM4MjQwNzQxMmNjMTIzZTA3Yzc0YzM4NjhmNSBsZWdhY3ktdHJ1bmsKKzI0NjE5IDBkMmVlZjYzNmQxMjljNTc1ZDkyZDk4NTg1YWE2NzY2MmU4OTBiZGEgbGVnYWN5LXRydW5rCisyNDYyMCA4OThjODI1ZTA4YWNjY2Q2NDUwNWYzZDJlNjI3OWZhZTU1ZDc4N2I1IGxlZ2FjeS10cnVuaworMjQ2MjEgY2I2MjAzZmYyOWU1YTFlM2I1ODgwMDcwNmZjNTI2NDRhNTRmY2M0OSBsZWdhY3ktdHJ1bmsKKzI0NjIyIDI2MDc0MzNiMTNlOWU4MWVjYTI4MmQzMmEzNjAyYTQyNjgzODk5YTEgbGVnYWN5LXRydW5rCisyNDYyMyA5MDgwNGEzNDg5MjNkYzdmMjc2OGJkMDM3OTM2MDYyNTFjN2U0ZWZhIGxlZ2FjeS10cnVuaworMjQ2MjQgYmZhNWY3YjRlNzg4NTk4YmVmZjFmMjBmYzg1N2VjMDNkNWJiZmQwZiBsZWdhY3ktdHJ1bmsKKzI0NjI1IDAxMDI2OTI0MTdhZjBmZTNlMTJlMWIyMTdlYzFmOTU1YTMwY2U2YTggbGVnYWN5LXRydW5rCisyNDYyNiA5MWRkMjIzODI5YzZlMDM1NjAxMWJlMmM2YzFmNGJiNDc5YjE2NWE4IGxlZ2FjeS10cnVuaworMjQ2MjggNGQ1MDk4Y2ZhNzgxYmZlM2E3YmYzM2VhNjY0YmIyYTE1OWMyZjFhZSBsZWdhY3ktdHJ1bmsKKzI0NjI5IDliMmQxZjhmNGJlMzQ5ODNiODQwOWYyOTEwM2YwOTBlNThhYzVlZmQgbGVnYWN5LXRydW5rCisyNDYzMCAwYzJlYTIzM2FkMjQ5M2I1MDQ5YjBjMmQ4MmVlYmMxMGZlOGE1NWI0IGxlZ2FjeS10cnVuaworMjQ2MzEgYjU4M2NhZjFiZTg4MmIzMjk4MDliMTkwM2Y5OWU2MDBlZWNjYjgyMCBsZWdhY3ktdHJ1bmsKKzI0NjMyIGJiNTY2ZjUyNWYxMmNmODhlZGNiYTAwN2I5ODdjZjgzMjg1NTM1MjMgbGVnYWN5LXRydW5rCisyNDYzMyA0YmNmYjlkYzU3ZTAzZGNiMzUwODgyZTc2MDc0NmQ3MzEwYWZhNjgxIGxlZ2FjeS10cnVuaworMjQ2MzQgNjBkZjJiZjg1NGFjZTQxN2I3MTAwOGE1NDYwMThhZDEyYzIzOTVhNyBsZWdhY3ktdHJ1bmsKKzI0NjM1IDNhMmNmNWU0NTY1NmE5OGE3NTcyOTQzNWEzNjNkNmM5YzBhZjBhOWIgbGVnYWN5LXRydW5rCisyNDYzNiAxODUyY2FiYTcwMTRiNDE1NDk3YjM5OGIyZmIyMDk1ZjFkN2ZkNDY1IGxlZ2FjeS10cnVuaworMjQ2MzcgNjQ0ODg1MTE4ZmU3Nzk4NzZjNzM5OWJhYWIzNGJmNTZkZGU3M2E3MCBsZWdhY3ktdHJ1bmsKKzI0NjM4IDc1MmZhNDg1YzRhYmE1ZjQ3MmExMTI1YWY3NjkxYWVkOTJmNTk5NTAgbGVnYWN5LXRydW5rCisyNDYzOSA4YTI2YmIzNjlmNTM3N2Q2OGEzOTcxMGZjYTQ1NGVmNzZkOWEyY2NiIGxlZ2FjeS10cnVuaworMjQ2NDAgYzlhZGFjZTNjODIzZWZkZjU3ZDRhZmQ5OWEzZTYwMjI0MTVmNzBkMCBsZWdhY3ktdHJ1bmsKKzI0NjQxIDM0YTFhNTBlNmFiNmY4MTkxYTE2YzZlMmZmM2JmNjRiZDhkZWVkMDMgbGVnYWN5LXRydW5rCisyNDY0MiA3ODRjOGJjMGIzMDM0YTU0ODVhM2ZkNzlhODJhMzZmZTAyNjgyNWZhIGxlZ2FjeS10cnVuaworMjQ2NDMgODQ4ZjY5ODg4MjlmMWEyZTU0MGQ0ZmZmNzdmOGE3NTIwNjVjMzFlYyBsZWdhY3ktdHJ1bmsKKzI0NjQ0IDQ0MjBhNGJkOTZhNDRjMWEzMGM1YTA5Y2I3NjQyNmRlZWM3OTFjNjEgbGVnYWN5LXRydW5rCisyNDY0NSAyYTdkNWZmZWNlMWM5Yjg3YmY0NDNiOGE1YzgzNjE3OTM5OGQ1NmFjIGxlZ2FjeS10cnVuaworMjQ2NDYgZmJiZDhhNGNhN2E2ZmNjNWI5ODk4YTliN2VjNmQwNDdiODQyY2JmNSBsZWdhY3ktdHJ1bmsKKzI0NjQ3IDZkODc0YTkxYjU4YjgxYjg4M2EwYzllM2ZhM2M2ZGY0NTFjODJiNTYgbGVnYWN5LXRydW5rCisyNDY0OCBjZjJmYjIwYTZjZTdlYjNiMDJlZDI5ZWJhYTYzYmFkNjEwMTcxNGUzIGxlZ2FjeS10cnVuaworMjQ2NDkgMThmNjA4MTBiOTRhM2YwMTBmZTRkODE0NWUzZGUzNTdmZjdiZWY3ZCBsZWdhY3ktdHJ1bmsKKzI0NjUwIDdjNmRmOTY0YjA0YmI0MTRhYjQ1YjliYTU2MmIyMGI1YzVjMWIxZTAgbGVnYWN5LXRydW5rCisyNDY1MSA5M2Y1NDA1OGVmNDhmNWRjYmZkOWNhMDUyMmM1NjM5MjM0MmM0NDUwIGxlZ2FjeS10cnVuaworMjQ2NTIgNjgwNDBkYjA4NGI2YWE1N2FjZDVlNmYyMjY3ZTVmOTAyOTA2NzUzMSBsZWdhY3ktdHJ1bmsKKzI0NjUzIDUyNWM3NzM2OGNkMDU3ZGYzNTk3NmNlN2JhODg0ODdlMmZhM2UzMGQgbGVnYWN5LXRydW5rCisyNDY1NCAzZDY4ZTMxMTBlMWZlNThlZTZlNmU1MzIxY2JlNDdjZDM0MTM3NTc3IGxlZ2FjeS10cnVuaworMjQ2NTUgMGIxZmFmMTE2ZjYzZWE4YzU2ZDE3ZjI0Nzk1MDEyYWE5ZDQxNzBhZiBsZWdhY3ktdHJ1bmsKKzI0NjU2IGEzOTJlMWZhZTYxZGQyMmZlOTEyMjgxNDVlZWUzY2UwOTlkMjIyMGEgbGVnYWN5LXRydW5rCisyNDY1NyA3YTU4Y2QzMzdjZjQ0MGExYzExMGQxMmM5ZTEyNTA1MzVkODIzZjg5IGxlZ2FjeS10cnVuaworMjQ2NTggZjdlYWVlYWM5YzY1ZTdiZTRiODFjODczNmQ4NWIyYzNlNmU5YWIyNCBsZWdhY3ktdHJ1bmsKKzI0NjYwIGQxZjkzOGVlZTcwMGEyNjI5MTc3OGFkOTA4NTE5ZjczMGU3ODBmNzggbGVnYWN5LXRydW5rCisyNDY2MSA4YThmNTdkY2Y5ZmU3MzYzOTdmNDk5YjMyNTMzODdhNjM1ZGE0NDY0IGxlZ2FjeS10cnVuaworMjQ2NjIgZjU5YzZiNWRkMTIyMmIyZmNiMjJkNTRmYWZlNmU3MjI4ZDc0OWVkNSBsZWdhY3ktdHJ1bmsKKzI0NjYzIDEyMzEwZDY0M2Q4ZDcyOTc2NWQxMTMyYzQxOTZlMzJiYjA5MmNjYmMgbGVnYWN5LXRydW5rCisyNDY2NCA5MzhiNWJmNzRmYjk0ZjViZjg1NWY3ODMyZDBhMjMzZDZhNDg2MTk2IGxlZ2FjeS10cnVuaworMjQ2NjUgYTUxNDZmODQzMDEwMDYyNzUwYjM0MWU2N2I5NzMzMWY3NzU0OWI3OSBsZWdhY3ktdHJ1bmsKKzI0NjY2IGJlOTkwZTcwM2QwZjE0NzJjZmRjNzQyNGY5MTE4ZWY2NDZiMjZjMDIgbGVnYWN5LXRydW5rCisyNDY2NyBiZTMyODNlZDhmOTc1ODg0MzkzMDRjODU5NDAwZTI3NjcxNmRhYjhlIGxlZ2FjeS10cnVuaworMjQ2NjggMjU3YzkzODkwMGE2ZTVlM2Q0ZTc4MDFmZThhOGY5ZDAxMTlkZDk4ZSBsZWdhY3ktdHJ1bmsKKzI0NjY5IGZiZGRiNjRkMjFjMmNiM2Q5OGVjYmZiMGM5NTE1MjE2NmZiODM4NzUgbGVnYWN5LXRydW5rCisyNDY3MCAwMDNkYzU3M2IyOTUwY2ViNGU3ODMxNTI2MjYxZDQ1OGU1YTU2ZTdhIGxlZ2FjeS10cnVuaworMjQ2NzEgYzY3MDQ2ZWY1Mzg1NjdiY2Q0YWM5NTcyOWMyNzBlNTBiNTM1NDgyZSBsZWdhY3ktdHJ1bmsKKzI0NjcyIGRlM2M4OGI1Zjg4OTYyYmQ3ZmUxYTNmNjQ1NGE5MDk2YTBjMWE2NzMgbGVnYWN5LXRydW5rCisyNDY3MyAyZWIyNWVmMzQzODZjMzk3NWRkMmRjZjJlYjNkNzBhN2FlMzk4ZDJjIGxlZ2FjeS10cnVuaworMjQ2NzQgMmMyMDhkYmYwY2IwMzg3NTcwN2JkMTA3Y2Q3MWU1Y2EzYmY1ODc1OSBsZWdhY3ktdHJ1bmsKKzI0Njc1IDI5MDcyZThlOGQ5ODJiMWFmYmE0MjY3OTFhYjNlNzE5OTdlY2NjYWYgbGVnYWN5LXRydW5rCisyNDY3NiBlOGIwOThmZTNkZjg3OGY4YzQxYmRkYTM4M2UwM2NlYWU4ODc3MWU1IGxlZ2FjeS10cnVuaworMjQ2NzcgMzAxMmY2MjZkZjdjYjM1ZTEzMGNlZGEwOWI2MDJmNzNjODA0YjMyYSBsZWdhY3ktdHJ1bmsKKzI0Njc4IDcxZTVlZWNkNTg5ZTU1YzMzNTZlY2JjY2YwYWQyYzgwMmY3ZjhmNWUgbGVnYWN5LXRydW5rCisyNDY3OSAwNDAyMzBjMTU4OTA0N2E3ZTJjYzJmNWVhOTM4N2ZiYjU1OWE3ZjEwIGxlZ2FjeS10cnVuaworMjQ2ODAgNWFiOWE2NWUyMzQ2NjE0NjE1MzViMWE0NDcxZmM2ZjA3YWM2ZmViYyBsZWdhY3ktdHJ1bmsKKzI0NjgxIGY1Nzc2N2Q3NmRlNmRiN2Y0ZjRkZjUwYTQzOWEzNzM0NWRiNzRjMzEgbGVnYWN5LXRydW5rCisyNDY4MiA4YTg5ZmYxZTA2NjJkYjRkYTA0ZTU5ZTZiN2VhOGUzZmM4NmZiZmExIGxlZ2FjeS10cnVuaworMjQ2ODMgZDg3Y2E5MzJlNzBmY2QwYmE1MDBhYTg3MDhlY2NhNTEzNjQ3OTQ1YSBsZWdhY3ktdHJ1bmsKKzI0Njg0IGFmNTE2MDRkMDBkYjI3MTQ0OWI3N2YxM2I2ODE2YTUwNjdiN2ZiYzIgbGVnYWN5LXRydW5rCisyNDY4NSA4YTAzNTA4N2ViNzI5Nzc2YjI3ZGVkMmRhZWJmMTk0ZmU3MDUxZTA2IGxlZ2FjeS10cnVuaworMjQ2ODYgNzM0NjZhNzZmMjVlMmU3MTcyNTI5MDQ4N2FkYzdlYTJmZTE0NDMxZSBsZWdhY3ktdHJ1bmsKKzI0Njg3IGMyOTY2YTdiZDExMzUxNDk4MzlkNDNlMGIxZmRjZTBkNjk4MTJmYTIgbGVnYWN5LXRydW5rCisyNDY4OCBjNTkzOWQwYzc0N2E0OTJjMjUyZWZjNDcyOGMzY2ViYzM2MWFlMTY5IGxlZ2FjeS10cnVuaworMjQ2ODkgNDk3NzJkMzE4NDQwYjhiNDk1NmJhYWQzMDY0Y2E5ZjUwNjYwMDU3YiBsZWdhY3ktdHJ1bmsKKzI0NjkwIDdlMGQyZDU5YmJjZTliN2VjNDg3NTkxYmQ3NjY2MjVkZTljYTY4OTAgbGVnYWN5LXRydW5rCisyNDY5MSA1MGQwMzY2ZThmMDU4MjJmOWNlYjgxMzRjZDEzNDg5MTFkMDcwZmU3IGxlZ2FjeS10cnVuaworMjQ2OTIgNWY1NzEzNDRjODljY2YwMzI2NzBiMGRkNzE4NjJlYjc5YjMyYjNlZCBsZWdhY3ktdHJ1bmsKKzI0NjkzIDExNmFmMmYwMTQ0MmE5MDBiMDg4ZGU3ZTYxNzkwYTI1NGJkMGRhNWEgbGVnYWN5LXRydW5rCisyNDY5NCA3NDNmNjdiZWZiNTdlOTUzMjY4YzcyN2U1ZmNhMTNjMmE1ODNiYjk5IGxlZ2FjeS10cnVuaworMjQ2OTUgNDRlYmVhYjI2OWM1YTc3ZWZlMjA4MDAyZmM4Yzk3OGNmZWU3YjVkMiBsZWdhY3ktdHJ1bmsKKzI0Njk2IDkxMzQ1OGVhZWY5MDBiOWMxNjlmYTRiNzU2Zjg0YzdlOGFjZDJlNTEgbGVnYWN5LXRydW5rCisyNDY5NyBkMTZiMzI3MTgxYThkNmIxNjEzZDIyNjc1MWJlNTZlZmQyY2MzMzBhIGxlZ2FjeS10cnVuaworMjQ2OTggYWJjZDJmNTJmMzE2ZGEwN2YzMjRkNWE0YzE5MTRhNDEzMTA5OGZlZiBsZWdhY3ktdHJ1bmsKKzI0Njk5IGM0NGM5MTE2MDZhNDRjZjcxM2EwMjBmZTA0YTgwYTNhNmYxZGE4OGYgbGVnYWN5LXRydW5rCisyNDcwMCBlYjc4ZjAzZGNkZWM2ODMwMjgzZjNhMWU3MDllNDYwYWJlMGUzMmEyIGxlZ2FjeS10cnVuaworMjQ3MDEgODFhNTc4ZWI3MzQ2Mzk1Y2ZkNzcyZWZiNmVhOTA3ZjE2ZWRkZjk0ZiBsZWdhY3ktdHJ1bmsKKzI0NzAyIDQyY2Q1MDU5NGQwZDk3ODJkMWM3YjYwM2FiYjIxMGY3MzJhZDg1MTMgbGVnYWN5LXRydW5rCisyNDcwMyBkZmFjYzczM2NiZjRiNWM5NDU2YzI3ZDJmZTVkM2YxMzA0Yzg1NTQ3IGxlZ2FjeS10cnVuaworMjQ3MDQgNzUwMzdkODZiMTEzNjMxODE3MGY4ZWM3ZTllZDAyYzI5ZmMzMjQ1MSBsZWdhY3ktdHJ1bmsKKzI0NzA1IDk2YmJiM2QwYzZhMDQ0ZjAxNjI1ZTFhYmU3ZWM0NTdmNDVlMWVlNmQgbGVnYWN5LXRydW5rCisyNDcwNiAyYzMyZmM1ZjIzYzAzNzA0M2YyZTVlMWJlYjczMWRiMzM3YjZlNzFmIGxlZ2FjeS10cnVuaworMjQ3MDcgNjU3OGM3ZGMzMjhiMWU3Mjc2OWY5OWJlNGQ2MjQ1ZDkyYTljMTY2OSBsZWdhY3ktdHJ1bmsKKzI0NzA4IDNmM2VmMDc0MzUzN2IyN2E0MDg3MGViZTdkOWZmMzgwYTAyMjFhMGYgbGVnYWN5LXRydW5rCisyNDcwOSA4MmFmNTRiNDM4MTc3NTFjZTNlNGY0MTA0YmQ0NDUwMjcwNWQwNWM1IGxlZ2FjeS10cnVuaworMjQ3MTAgNTYwMjIyZTlkNDcxMGIwYTRmNjI3NWYyYmQ3NTNhYTI2NWQ0ZmYzMCBsZWdhY3ktdHJ1bmsKKzI0NzExIGVjMzJlNTlkZjQwMGJiNzY3ZDQwNzJkZTZjMmVmYjJmOTQwMDEzMDQgbGVnYWN5LXRydW5rCisyNDcxMiA1YzliYTI0MTgzOTAxYmY1OTI0Mzc4YzkxZTkyZWYyMjc4ODg4MmYzIGxlZ2FjeS10cnVuaworMjQ3MTQgZGUxMjU3OTJiZmFhZGRkMDgyYTc5MDZiOTI1NmMwMjRmY2FiNWFkMyBsZWdhY3ktdHJ1bmsKKzI0NzE1IDMzZDU5ZTE4YjY4ZDQ0NGEzNWQ1NzdjNmZmYTkwNTQxYmY4ZGZiOGIgbGVnYWN5LXRydW5rCisyNDcxNiBjYjA4YmM2OTg2ODU5ZTc0ZDY1YTY5YWMwNDc5NDc1YmQwODNhYzIxIGxlZ2FjeS10cnVuaworMjQ3MTcgNmRhNjA5MWEzMWVlZjIwOWE2MTE0N2MxOWJkM2U4OGJmMTQxNGU1ZCBsZWdhY3ktdHJ1bmsKKzI0NzE4IDA1YmM1OTA1MjI0OTM0ZWZhNDM2NDA4MDMzMmIzM2M2MTFiYzQwMGMgcjIycmMxLWJyYW5jaAorMjQ3MTkgMjJjOTg4Y2MxNTJkMTIyYjI0NzE3ZTc2ZGM2NDA4MzdlOTUyZDkyYSByMjJyYzEtYnJhbmNoCisyNDcyMCAzZDk3YTA1NGY5ZDRhZmU1YTZhNzg2ZDNiNmU4MTdjZGYwYTEzN2E2IGxlZ2FjeS10cnVuaworMjQ3MjEgNjk4YjZlZWI5YTg2ZDg5MzgxYmIzMzU5YTgyNDhjMWIzOWEzZTc0OSByMjJyYzEtYnJhbmNoCisyNDcyMiBlYmY4YTAzNjE1MWQ0NjVjMjU5NmVhODJjZjBhMjExYTkwZjNkZTdhIHIyMnJjMS1icmFuY2gKKzI0NzIzIDIwNGQxZDViMDhkNjhhOGM3OGY1NzA4Mzg1ZGJiYTI2ZTk1MWM2ZTggcjIycmMxLWJyYW5jaAorMjQ3MjQgZmJkNTdlZTViNzdkNzgyNTAwOTI5MWNlNzVhMWQ1ZDg2YTIyMDkzNiBsZWdhY3ktdHJ1bmsKKzI0NzI1IDNjZTg3MWEwNDU1YjUyZDVkYjQ0MjFhYjkwZmQ1NmE5YmZlMTMxYzYgcjIycmMxLWJyYW5jaAorMjQ3MjYgMzYzYjJmNzUyOTM1MWVkY2FiYjA1ZTliYmQzOWYxMjYzNTE3ODIxYSByMjJyYzEtYnJhbmNoCisyNDcyNyA2ZWE3MTkzYmRjMmVhZmQxOTQzZTVhZDgzNTdhOTIyODA2YjZmZWUyIHIyMnJjMS1icmFuY2gKKzI0NzI4IDA2NDMxMTE0OWNiNGQzZGZjNDhiZWUyZmM0ZWM5MTdjMDdlYzZhYzEgbGVnYWN5LXRydW5rCisyNDcyOSAyYWZlNDJmMjQ1NTkwOGYwZDAwZTQzZGJmYWFmMmNlODIzZjA0ZDAzIGxlZ2FjeS10cnVuaworMjQ3MzAgOWM4MGI1YWY4MTIxYTc0YmRhMjcwOGVmYTNhZjhjMWY2MGViNTE3NCBsZWdhY3ktdHJ1bmsKKzI0NzMxIGZlMThlYjA1NTEwNzQwODI2OWI1Mjk2YmRjZTAwMjAzNWQ3YmQ3OGQgcjIycmMxLWJyYW5jaAorMjQ3MzIgY2VkYjUwMzkxNTVhNjU1MzMxNGEyZjc0M2ZmNjM5N2M0ODc2NjQzYSBsZWdhY3ktdHJ1bmsKKzI0NzMzIDMxYTI0OWEzNDBmODE3YWQyOTFiN2JiYjdiNzVjN2M1ZThiY2FkMWYgbGVnYWN5LXRydW5rCisyNDczNCA4NTA4NmYzZTcwZjM0Nzg4OTNmNGM2Y2VkZDcyYTk0YmU4MjAyZTFjIHIyMnJjMS1icmFuY2gKKzI0NzM1IGZkYzBjZjU2YmE5Y2ZkNWYwMjRlZTQyZTdhOTBkNWIxNjBkZmZkYmMgbGVnYWN5LXRydW5rCisyNDczNiAyNzY2OGRhYjc3Zjg4YWNmMmVlYTA1ZjdmMGQ1OGQ2MTljMWNiZDEzIGxlZ2FjeS10cnVuaworMjQ3MzcgMDQwNzI5NDAyMWEwYTZhMDE4YTE2ODIzNDUxZmZmZGQ0NWQ5MjVkMCBsZWdhY3ktdHJ1bmsKKzI0NzM4IDFkODlkYTgyNWY5NTc4ODZlYmRiMmNhMTMxOGZmNTI2MTNhYmQ1YzMgcjIycmMxLWJyYW5jaAorMjQ3MzkgMGE5NDhjZTQ3ZTdhMDZhMzUyNjc1N2Y3YjNmYWZlOTM1M2VjMWRkYyByMjJyYzEtYnJhbmNoCisyNDc0MCBlNjNmNDY2OGM5NWQwODcwOTNlYjY2NGE3ZTI0MWY1NTkyMTY4Zjc0IHIyMnJjMS1icmFuY2gKKzI0NzQxIGZmMWI1NzFhY2E3MTBmNDAzOTE5OThkNjljNWIwNDllMGEzZGNjMzEgcjIycmMxLWJyYW5jaAorMjQ3NDIgOGZiMGMyNGY0ZDQ1MGQ5NDBiNGU1Y2Y2MzMzYzYxY2E2M2M1YzgyYSByMjJyYzEtYnJhbmNoCisyNDc0MyBiMTE3NzRjY2QxMDFmNzMwZTkyNzEzMGNlZjEwYzgxODYxYjAzOGMyIHIyMnJjMS1icmFuY2gKKzI0NzQzIDdmNDY3OGVlZmFmYjE0MzkzNWMzOWMwMzY0ZTBiNTNiMzNkMjg4MjAgcjIycmMxLWJyYW5jaAorMjQ3NDUgNDIxNmVmMTk2MjBiYmRlZGU0Y2IzYjFmMzA1ZjU5NmE4ZTM3ZWU2MyBsZWdhY3ktdHJ1bmsKKzI0NzQ2IDhiMmJkMDc4MDkyNWY5ZDVmMWM2Yjc3NzBlY2E4ODJkMzEyNDQ0NjcgbGVnYWN5LXRydW5rCisyNDc0NyBmNTM2Zjg1Mjk1Yjg2MzdjYmYxNWE3NWUzYTU3MjcxZmYyMjJiNDZkIGxlZ2FjeS10cnVuaworMjQ3NDggM2ZjYjIyNDhiYmU4ZDkwN2U4ZTZjY2UxODg1YzZiMTE4MmJmOGUyMiBsZWdhY3ktdHJ1bmsKKzI0NzQ5IDZiMzBjM2Y0Mzc4ZDQzMDRjZTFlN2Y2ODY0MjY3NTFhZGM1ZWEzZTQgbGVnYWN5LXRydW5rCisyNDc1MCBjMzkyMGM0MzUzMzMxODg0ZjJmMjI4ZGFmZTUyY2FmZjdiZTk2N2U0IGxlZ2FjeS10cnVuaworMjQ3NTEgNTcxZDViN2I3NDZjODJhZDgxMThkNDJjM2I2YTJhZmVjZWFlMDZlZCBsZWdhY3ktdHJ1bmsKKzI0NzUyIDgxMzQ5ZTUxNjU5YjUxYzVmY2RlMmFlYTJjZDFiYTQ5OTZlNzBjZmUgbGVnYWN5LXRydW5rCisyNDc1MyA0Y2IyMjNlZjg2OWJhMDUzN2M3YzkxYmNiNzAzOGRhNzUzODU4NjYwIGxlZ2FjeS10cnVuaworMjQ3NTQgYWE0NzUzZjk0NTcyMjE0MTYyMTYwOWI5OTdkMWYwYmE4MzdiMmFjMiBsZWdhY3ktdHJ1bmsKKzI0NzU1IDU1OTIxMjU1ZWM5M2QyMzQzODRhZjFhNjc2ZTQ3ODE0MTAzNTY0ZTAgbGVnYWN5LXRydW5rCisyNDc1NiAyNzRhYTkxYjQxN2MxM2Y1MDk5MDIyZjIwZmQ5NjMyN2EzM2I3ZDgzIGxlZ2FjeS10cnVuaworMjQ3NTcgZTBlMmI2MTYxYzdmZDZiZGVhZTdhYThjMTQyNDZjYzU1MDI2MzUwMSBsZWdhY3ktdHJ1bmsKKzI0NzU4IGE5NjU2Y2UwMTViMGQ4ZjEyOWQ3OWE4NzcwY2E0MDQ3NWZhMmU3OWIgbGVnYWN5LXRydW5rCisyNDc1OSAwNjNmOGEzMWI2YjhiNzI5ZTJjOGY4N2UxOTM0OWY2MjI3YWI2NGVjIGxlZ2FjeS10cnVuaworMjQ3NjAgYTYyMGVmODRiMGZiMjYyMzE4NTE4Mjg0M2RmY2ZjZjUzNTBiN2M3MSBsZWdhY3ktdHJ1bmsKKzI0NzYxIDNmY2MyZTI5OTJkNGQ1ZTU3YjQ3N2I5NDU1ZTAwOGYxN2YxNGI4ZDggbGVnYWN5LXRydW5rCisyNDc2MiBiMmQzMzkxMzY0YmJiNzMxNmNmMDMwNDgyODk2YmJkNzkwNzM0MjE5IGxlZ2FjeS10cnVuaworMjQ3NjMgZGJkNmE3NjEyMTU5NmJlMDNiM2NjYWE3M2RjYzRmYmY0YzI5NDE0MyByMjJyYzEtYnJhbmNoCisyNDc2NCBhMDI5ZTM0ODMwNGM4ZTdjYTU5MTM4ZjA5NDY1ZWJmMmE4YjkzMjExIGxlZ2FjeS10cnVuaworMjQ3NjUgZmQ5ZDdhZTNmOTRhNzAyNWRlNjVkNTIxOGYzNGIzODhkZDc2NTEyYyBsZWdhY3ktdHJ1bmsKKzI0NzY2IDNkMmNjODU3NzEyN2U1NjNlOGZiMmNjYjRhMDRhMmE1MGI1OThmMjUgbGVnYWN5LXRydW5rCisyNDc2NyAxNDUwZWU2YjhiOWVjZDdkYTk3YWQ2MDI2NjI0MzkwZGJlMmUwMzdkIGxlZ2FjeS10cnVuaworMjQ3NjggYzY1ZmFjN2MyODQzM2U2ZTg2MTRmNWNmODZlODkzNDJmNTkzZGY4YiByZWxlYXNlMjEtbWFpbnQKKzI0NzY5IDk3ZDg1Nzg4MWM4MmFmM2QyZGU5N2I4N2VlZGI2NGVjYjIwOWJjNTEgcmVsZWFzZTIxLW1haW50CisyNDc3MCBmNTQ2NjIzZWYwYzY1NjVkY2ZiNGU5MTRhZTM4YzlkZDdlZmM1NDMwIGxlZ2FjeS10cnVuaworMjQ3NzEgNWE1OTBmMTk2ZWM1ODNhNzE4MGFlN2NhNTU4ZGQyZDZiMWQ5YjQ5YSBsZWdhY3ktdHJ1bmsKKzI0NzcyIDlhNjM0ZDYwNTQyYWU3MTY0NDYyNzMwYzU1NDY3ZWMwMzk2NTFiMzYgbGVnYWN5LXRydW5rCisyNDc3MyBkN2E5ZWJhNzRmZTI2MTFjZmEwZWIwZjEwNzIxZTEwZGIzYzkzNTA1IGxlZ2FjeS10cnVuaworMjQ3NzQgMzBlZmU0NmY4ZTNjYWE1YWIxZmU0NDBhMThiMzE3MzlmYjdlYTQ2NCBsZWdhY3ktdHJ1bmsKKzI0Nzc1IDA1YWQ3YTY5ZDkzMzExYzdkZjFhOWQzYWM1YjM1NDkwODZlNTI1MmYgbGVnYWN5LXRydW5rCisyNDc3NiBkN2QyNWVjMDJkNDEyOWJlY2UzZWYwZWM2Y2ViMDJiNGI3Mjg0MzY3IGxlZ2FjeS10cnVuaworMjQ3NzcgNGY2MjFiYWM3NTI2NWRhMjdlZDQyYjMzYThmMjExYzk0ZTgxMDFkZCBsZWdhY3ktdHJ1bmsKKzI0Nzc4IDUxOTMyOTBhZWYwYTViNGMxZTMzODY4MmU3NTQxODgwYWYzZmRkYjIgbGVnYWN5LXRydW5rCisyNDc3OSA0MGM1NmZlZmExNzcyYjYyOTQwNjlhYTI1M2FkNTMxYjUxNTFjNjY5IGxlZ2FjeS10cnVuaworMjQ3ODAgNzdjNzQ3NmY0MWJkZTc2NzQxMjgzYTA1OTA3YzdkOWMyMmYyYjY5OCBsZWdhY3ktdHJ1bmsKKzI0NzgxIDdlNzQ1NTg5MGZkNmViMWE1OWM2ZmI1NTQ0MTZiMmVhMDMzNDEwYWYgbGVnYWN5LXRydW5rCisyNDc4MiA5N2YwOTk2NzFiYmNkZGU4ZjAyYjhkZTAzYzZiYjMxNTNjODNmNjEzIGxlZ2FjeS10cnVuaworMjQ3ODMgM2FiZjAwMjE1YzFjY2UwNjMwM2I1MjAyZDdlMjlmMTUwZTVkNWZmZCBsZWdhY3ktdHJ1bmsKKzI0Nzg0IGZhMGJkZTNjODZiMjc4Yjk1ZDBkZWRhZGJkN2Y0ZGQwYWQ5YzkyZGUgbGVnYWN5LXRydW5rCisyNDc4NSBiZTVjYTBiMjViZmRjN2JkYjI2MzE4MzBhNWQyZTFhYWQwODBmMzk1IGxlZ2FjeS10cnVuaworMjQ3ODYgZmI2YjNmYzRlMGMxYWFiMTM0NjgwYzllYmYwZjg3NDY3MzcwYTJhZiBsZWdhY3ktdHJ1bmsKKzI0Nzg3IGJkMTJiNTk3M2RhYTk5NjUyNGUxOTVhNjQ2Zjc2N2I5NjlmODUyZjQgbGVnYWN5LXRydW5rCisyNDc4OCA3YWY0NWFmZmQzNTMyYTBiMDhjZjdiYTg0YzZiNzViNWQ2OGIwZDdkIGxlZ2FjeS10cnVuaworMjQ3ODkgOTg0NjQzOTRjY2UzMzY4M2JhZWUxNmZmYjhiMmNhODQ2M2M1MDQ1YiByZWxlYXNlMjEtbWFpbnQKKzI0NzkwIGUzYzJmZDE3N2E2ZTRlMmVlNzg5ODkzNmE4MGM1Y2VlNTI4ZWM0ZjEgcmVsZWFzZTIxLW1haW50CisyNDc5MSBjNTc5N2EwMDgzZDhmYTJhMGQ1MzZlNmQ4NGQ1OWZhOTFmYWY5ZWEwIHJlbGVhc2UyMS1tYWludAorMjQ3OTIgNDY1YzkzMjVhZjY5ZjQxODY0ZDI2Y2U4NzcwZWRjNjliNTJlOWYzZCByZWxlYXNlMjEtbWFpbnQKKzI0NzkzIGY2ODVmMDcwNGJiZDNhOTg1Y2QyY2U3ZWI3N2I4ZmUwMTAwODQ3ZmYgcmVsZWFzZTIxLW1haW50CisyNDc5NCAwZjc0ZGI3NGE4ZjQwODAzMDdiYzQ4YTdiZGQwYjVkZWM5NmM2MjhhIGxlZ2FjeS10cnVuaworMjQ3OTUgMzMwM2YyZDkyY2VmOWM4ZDM0ODkyZWNjNzQwNDc5ZTcwMWQ5YTM3OCBsZWdhY3ktdHJ1bmsKKzI0Nzk2IDY2NGFjODIyN2NjNTNmM2UzNGFjOWRmZTkwNmI5YmFlMmRkZDg2NmEgbGVnYWN5LXRydW5rCisyNDc5NyBkZjc3MGRkMGJlYzRhNzZmZWZiYTRiMTdlMjE3YmJlODE4YmJmOGExIHJlbGVhc2UyMS1tYWludAorMjQ3OTggYjI3NTk5YWJjYzQ5YTExN2U4MWRkZTU3OTk3ZmFkZjQ5YTJjZjk2YSBsZWdhY3ktdHJ1bmsKKzI0Nzk5IDk0MjMyNDU1MTRhODg1ZWM5ZTc3YmQ5YjdjZmE4YTFjZWRhNzA1NTQgbGVnYWN5LXRydW5rCisyNDgwMCAzYTkzMTQ1YjZhOTYzMmRiMjY5NDZkYTliOTdhZjIzYWU3MDViZjhkIGxlZ2FjeS10cnVuaworMjQ4MDEgNGUzNWZhNWQ1NzA4ZGM1NTcwY2JlYTMxNzkyZDZhNzRjM2IxYzJmZCBsZWdhY3ktdHJ1bmsKKzI0ODAyIDgzNDhlODQ0MWVhZjc1YmU4OGViYmU5Nzc5MmMzMDgyMWI0MmI1NzEgbGVnYWN5LXRydW5rCisyNDgwMyBmMThjZmRlMmU4MDQ5ZThlMGQyOTZmY2RkZDRmM2NiY2E2ZDhlMzFjIGxlZ2FjeS10cnVuaworMjQ4MDQgOTU5YTJlZDU3MzVjZDA4NTliZGJlOWRkNmZjMTliYTVmOTExYzcxZSBsZWdhY3ktdHJ1bmsKKzI0ODA1IDgwM2FhMGMyYjEzMGY5MmQ1ZDQyNTc5NmM0OGYzNWM4NmY0ZDFjODYgbGVnYWN5LXRydW5rCisyNDgwNiA2NzNiYmYxMTU1MDg5MjI1ZjRlOWJhYjI2MGY4MzQ5ODY2ZTZkNDI2IGxlZ2FjeS10cnVuaworMjQ4MDcgZTFmM2ZlNTY3N2RhM2Q4ZWU1ZWU4YTRhMDhiZDhmZTUzMmQ0Mzk4OCBsZWdhY3ktdHJ1bmsKKzI0ODA4IGEzYjA2NzNiYTJjYTVmYTQzYzM5ODU1Njc3ZjRlNDVkNDU3YTEyNmYgbGVnYWN5LXRydW5rCisyNDgwOSBhYWMyMzMzMWEyNWQ3ODMwZWZjZmI2M2E5ZDMwYzczYzM1ZjAyY2M1IGxlZ2FjeS10cnVuaworMjQ4MTAgYWYyNjIzYmI1ZDBiYzNkOGRhNGIyZWQxZGVkOTA3ZjEyNGQ4ZTYyYiBsZWdhY3ktdHJ1bmsKKzI0ODExIGNjYjI2YTExODg2N2U4MjA0Yzc0YTc2ZGU4ODBhNzQ2MjUwNzM0ODQgbGVnYWN5LXRydW5rCisyNDgxMiBiNDg5MTBhOTU3OTcxYTc5ZTlhMzk3NGVjYjc5M2E4ODZlZjQ1MDNmIGxlZ2FjeS10cnVuaworMjQ4MTMgNGM4MmM4ZWQ2ZGY0ZDRjNDdkNDc1NWE5OTQzZTBjZjJhNzA0ODIwMiBsZWdhY3ktdHJ1bmsKKzI0ODE0IDIxYzdkNzU2NTk3N2NlYTY5NjY3ZmQ4NDYzNDM5M2U2OGQxM2U3MmYgbGVnYWN5LXRydW5rCisyNDgxNSAwMGIzYWQxY2U0MDRkNmZmZDMzYWI2NGVlZmMzNTZkMGExMDhiYzlkIHIyMnJjMS1icmFuY2gKKzI0ODE3IDAwM2E5ODVjYWI5NWJiYjZhOTliNjM2MThiMGFmZDIzYTQzYzYyYzIgbGVnYWN5LXRydW5rCisyNDgxOCA3NjIyNTQzNGE2ZmVkNzQ0YTFjMmQ0ZTlkZWRlZTAxNDdlYmU4N2Y2IGxlZ2FjeS10cnVuaworMjQ4MTkgODczMjkxYTQ4ODllYzkyZTZlYjA4ZjQ3NjA1YzYzODM0MWNjNGZkZCBsZWdhY3ktdHJ1bmsKKzI0ODIwIDJkMzc2ZDkyNmRhODJhOTAyMWZhODE0MmI0ZDVlZjQ2MDIwODEzOGEgbGVnYWN5LXRydW5rCisyNDgyMSA5ZDk1YzFhODljZmNiMGEzMzk3YTk2OGJlNzRhMzBmZTM2YzI0OGMzIGxlZ2FjeS10cnVuaworMjQ4MjIgNWUwNmY4ZmUzOGVlNGFmZjgzN2UxMTZkMWE0M2RiODM4YTY4ZGQ0NyBsZWdhY3ktdHJ1bmsKKzI0ODIzIGExOTkyNjk0YzgyNDI1ZTBjNDI1YzRlMzEzMTEyM2Y0YWVkN2Q1OTEgbGVnYWN5LXRydW5rCisyNDgyNCBiYjE2OGRlNTBhMDMyYjczOThjOGU0NTBmMWFiMzYyNjE5YmRkM2RmIGxlZ2FjeS10cnVuaworMjQ4MjUgMWQxYzQ2ODI0ZmMzZTdlZDUwMGFhNzRhNTRiZjQ3ZTJiMWE1YmY0ZCBsZWdhY3ktdHJ1bmsKKzI0ODI2IGJmNjQ0OGYwMjI3Mzc0ZWRhOTE4OWVlZTViZGFjNTgyNzZjYmQxNjMgcmVsZWFzZTIxLW1haW50CisyNDgyNyBjYTQ1MGU0ZGZmOWE2MjY0ODQwNTIxN2M0ZTQ0MDdkZWZkOGM4ZWQ2IGxlZ2FjeS10cnVuaworMjQ4MjggMDQ0NjMwMTYxMDkzYzkxNzQ0YzUzOWU2ZjUwYjllZDQwYjYzYWRhNiByZWxlYXNlMjEtbWFpbnQKKzI0ODI5IDE2MjEwNmIxNmU0NDRjMWE0NzViNjA4NGQwZGZmYTQ0YjMxNGRmYjIgbGVnYWN5LXRydW5rCisyNDgzMCA0NGM0NzlmODRlMzY4YzBiNWYzZDg1MzU4NGJjODg5YWYzMjY4MTI4IGxlZ2FjeS10cnVuaworMjQ4MzEgMjQ3NDQxNGQ0MzQyOTI0YjA2ZmJiOWRjMThiYjA2NDQ2ZmFmODRmMSBsZWdhY3ktdHJ1bmsKKzI0ODMyIDdjMmY5NWRlY2NhZDVlMjQ4NDg1YzA1MDE3Mzg3MDE3MDM2YjdhODEgcjIycmMxLWJyYW5jaAorMjQ4MzQgNjVmNDA5NGY0M2Y0NmZkNTI5YTY4NGZlMjlhNzhjMTUyMjAyMTNiZiByZWxlYXNlMjEtbWFpbnQKKzI0ODM1IDgxNGNlMDkyOTUzZWMyM2YzOTgxNGZjOGRjMGQ0MGJmZDc4NWU3NWEgbGVnYWN5LXRydW5rCisyNDgzNiBlOTIwMmZlMzJmMGI4ZmY2ZWFiODU5OWQyYzM0Zjc2OGJjOGJkNmZkIGxlZ2FjeS10cnVuaworMjQ4MzcgODhiYWE0YzRlZWUxMDViNmU0NzlhZjRlNWJkMTM3NjY5MzBhOGM3ZiBsZWdhY3ktdHJ1bmsKKzI0ODM4IGNjYTU2YTk3NmNiMjVjYjA2MDI0ODUxZTgxZmExMmYyMGIyYTZiNDYgbGVnYWN5LXRydW5rCisyNDgzOSA0YTM0ODYyYTM5OTQyM2Y0NzAyNTkzOWQzNDRmYzM4ZjBhZDgzNTcwIGxlZ2FjeS10cnVuaworMjQ4NDAgNjUyZTE4Mjc5NTgzYzE0NmE5Mjk2NDg1ZDE3Y2RkOWU0YWFmZjE0YiBsZWdhY3ktdHJ1bmsKKzI0ODQxIDVhNTA0MTAyYTA5YzUwMjQ3YTEyM2E3N2Q5MWQyYWNmMzMxOWRiYWMgbGVnYWN5LXRydW5rCisyNDg0MiBhMDNiMTNiZTJmNjhmOTViZDQ2ZGJkZTFiMmNhODYxYmZjZmE0OTlhIGxlZ2FjeS10cnVuaworMjQ4NDMgMzgxNWE5NTk4MTljNDY5MzgzYjVlN2YxM2ZmODgxMWNhYTRjNDQxYSBsZWdhY3ktdHJ1bmsKKzI0ODQ0IDNjOWYzOTFkN2UwMzM4NDIwY2MyYmY4OTU5YWZlYjA1MGQ5YjJjYmQgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NDYgMzI0OGVhZDcxOTI4NzlkOGNiZDBjNDA0NzRmMTMzNDA3ZmVjMWQ2OSByZWxlYXNlMjItYnJhbmNoCisyNDg0NyBkNmE0NGZkMWY0YzE0MzcwOTA2NzkyNzYyMTlmNGQ2NzY2NjFmYzg5IGxlZ2FjeS10cnVuaworMjQ4NDggZTNkZTM4YWE2NDYyMzE0ODFhZDAzNjRlNDlkMDA3Yzg0NDA2N2RhZiBsZWdhY3ktdHJ1bmsKKzI0ODQ5IDA5N2RkOTUzZTExOTYyNGYwMTlmODkwNWVjMzhiZjc1NTMzNmQ2ZmYgcmVsZWFzZTIxLW1haW50CisyNDg1MCA1NjhjNzVkZDUwNzgyYTliNDAzMTE3MTZjMjNiOThjYjBmZTNiMGNmIHJlbGVhc2UyMS1tYWludAorMjQ4NTEgODVlNjk0ZTliOWZjMTQ2NDRkMjU1MWIwMzQxZDJkMGFmZGVkZTk5NyByZWxlYXNlMjEtbWFpbnQKKzI0ODUyIGUzYWE1YWFiMjg3NmRmYmUxZDlhZDFhZjllZTViZGZkMDdhY2VkMTIgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NTMgODJhYzgzNDc0NDYyOTExMjVhZTFjZWNmY2ZhODNjNjhiNzYwZmRiNiByZWxlYXNlMjEtbWFpbnQKKzI0ODU0IDI1YmFiZDQzMmIyNGY0YmIxMjVkYWUxZTJjYmVlOGYxNzYwMDZmZmYgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NTUgMzI2ZDk5NzJmNmY2MTAwMzZmOWE0ZThiYmVlMjFhMWE2YTdmNjQwNyBsZWdhY3ktdHJ1bmsKKzI0ODU2IGU4ZDM2YzE4MzEzNzU3Mzc0ZmJjMjg2NWJkMjAwZTQ3MjQ1ZTlkYjYgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NTcgMDQ2MTJkYzMyM2RmMzA4MjBjNDhlOGU4ZThkMjE3MDU0ZGM3M2NmZiBsZWdhY3ktdHJ1bmsKKzI0ODU4IDc2N2QyNDVmZDhkY2ZiNjllZjZiNGYzM2I0YjliMjgxZjBmMzdlZTUgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NTkgMDk1MThjNGM2ODUwOGI0MmQwOGY3MDg5YTQ0Yjg5YWQ5MDBhMjU2NCBsZWdhY3ktdHJ1bmsKKzI0ODYwIDQ4ZjMyMTk4Y2ViOTFmNDlkZDhhMDBhNDBkOTJkZDRhNTVmZTA1N2QgcmVsZWFzZTIxLW1haW50CisyNDg2MSAwODI1ZWIxZGJlYjgxY2FiNzYwMTdmNWY0ZWEzN2ZiYTAwOGFkODI3IGxlZ2FjeS10cnVuaworMjQ4NjIgMTc5OTc4MjA5NzFkMGMyOWJlNTdkY2M1YTFkOWY5OGE5MjNkMTRlMyByZWxlYXNlMjItYnJhbmNoCisyNDg2MyBmYzllMjcxMTcxNGRlZTk5NTk2YWQzNjQxM2QwMmEyYmNmZmU4N2JkIHJlbGVhc2UyMi1icmFuY2gKKzI0ODY0IDZjMjNhM2ZiMGIwNDk4NzJhNTM3NzRhZWIxNzUwNjcyNTA2YjNhMmUgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NjUgNjA2MzU0NDAxMzk2ZjU0MDZiZmEwMTk5ZDcyZmE0YWIxZjcwNjNmZiByZWxlYXNlMjItYnJhbmNoCisyNDg2NiAzZmZlZWRhMDIwZGNhZTEwZDY4MjIzMmU3YzVhYjNhOGI0MDBlNGRiIHJlbGVhc2UyMi1icmFuY2gKKzI0ODY3IDQ3OWNmODgyYmRiNWU2NjJjYjcxOGZkM2JlMzNhMDUwNzJiNDVkMDIgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NjggMTEwMDNiNjY1NTQ1ZDYxZjE0OGJlN2MwODUwMDljMmVjNTA3ZDUwZSByZWxlYXNlMjItYnJhbmNoCisyNDg2OSAzMjQ2ODRhZGI0ODM1MjQxMDUzMDEzY2U4NzAwYTU2NDA2MDgwMDVjIGxlZ2FjeS10cnVuaworMjQ4NzAgNzRjNWRjYzE1YjczNTU2NTQ5MjY4OGE1YmU2MGFlODY1YTcxNjg1MyByZWxlYXNlMjItYnJhbmNoCisyNDg3MSBlOTNmMTQ0ODYyZGU5NzJiMWIxMTdlNDZhMWZjYTMyZmZlMjA0NDY3IHJlbGVhc2UyMi1icmFuY2gKKzI0ODcyIDhhZjg2YTk1MmIyY2EzZmEyMGI3ODNmZThkOGRlMDM0MWQ3MmNlN2UgbGVnYWN5LXRydW5rCisyNDg3MyA0Zjg5MzIxMzRkY2EzYjNmZDdhNDgxMDIxMjNiYjY3NDhlYTQ0MTA5IHJlbGVhc2UyMi1icmFuY2gKKzI0ODczIGRjYThiNTg3NDY0MzlhOWY3ZGYyMTJmNjQzZWU0ZDQwZWI4ZGYyNGIgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NzUgOTM1Yjg2MDJjYWQ5ODM2NzA0YTNhYTE3Y2JiZDhlNGVjOTgyNDA5MiBsZWdhY3ktdHJ1bmsKKzI0ODc2IDkwMjUxOTdhOGVhMGM0YmJjNzZhMGQwOGIyNDRlNGE3ZGQ4YjAyMzIgcmVsZWFzZTIxLW1haW50CisyNDg3NyBlMGE1ZDE2YTljYjk1MTk2Y2ExODYxNDQyMzA5M2JlYjIyMWUzOWQwIGxlZ2FjeS10cnVuaworMjQ4NzggY2I1NWYxNWIyNzMwMTA1ZmQ5YjU5M2UyMWE5OTA3MjRjOWI5NDVhNyBsZWdhY3ktdHJ1bmsKKzI0ODc5IGI0ODRhYTYxY2FiNGE2YWVlNmZmMDdmMTg5MmY5NWE0NWE5YjdlYTEgbGVnYWN5LXRydW5rCisyNDg4MCA5ZDQ4MGQwZmU2OTA1NzFjZmJhZTUyMGIyZDcxZDY1YmMxZWFlMDIyIGxlZ2FjeS10cnVuaworMjQ4ODEgMjY4YjU3ZDlkYWVkMThhM2M4ZTc2YjVkNDNiMGZhOGE1ZDkwYzkzNCBsZWdhY3ktdHJ1bmsKKzI0ODgyIGZjODEzMTY0Y2U5Zjk4MTNlNjcyMDBiNDY3YmM4ZTlmODU4YmRkY2IgcmVsZWFzZTIyLWJyYW5jaAorMjQ4ODQgMzQ5ZDY2Y2Q4NzRjMzM1ZGM0NjU2MDk0YmQzYmM0NzZmMWFiOTUyZCBsZWdhY3ktdHJ1bmsKKzI0ODg1IDdjMjhlOTU2ZjliMGJhZDZiYzZhMTQ5ZTNlZWVjYmUwMWYyN2VjMDYgbGVnYWN5LXRydW5rCisyNDg4NiBhYzNjZTFmYWVjNjhlYTNjNzExNGExY2YwZGU0Y2ZjMjY2MGY3YTM0IGxlZ2FjeS10cnVuaworMjQ4ODcgNDIzMmQyNTdlNGZmMjJlYjg3ZjdiMzM1MDE4NzQ3YTlkNzZiMzBhNyByZWxlYXNlMjEtbWFpbnQKKzI0ODg4IDQxZmY0Nzc3OTI2ZWI1MTkxOTlhNWRiOTcxZWU1NWQ5ZWFjZGZjYTUgcmVsZWFzZTIxLW1haW50CisyNDg4OSAxMzM5YjZkMzJlOTUzZGI4YjhiNmI0MDY3Njg3OTk0NzgyMjM0NGRlIHJlbGVhc2UyMS1tYWludAorMjQ4OTAgZTY5YjIxZjI1MjllZTZjNDU5YWEyZmI3MjY4ZmU5NDgzZmEzNTVkYSByZWxlYXNlMjEtbWFpbnQKKzI0ODkxIDRhMmMzYWUwOWUwYzRlZmRlYTJhNTYzY2M4MzcwNmNiMWUzZGRjMDIgcmVsZWFzZTIxLW1haW50CisyNDg5MiAyYTc4NWI2NjhhMTYwOTI1NGVkYzdmNjBiM2Q2ODYzZmIwYTcyY2RlIHJlbGVhc2UyMS1tYWludAorMjQ4OTMgMDA2YzU1YmRmN2UxNTZmYzJlNTc1NmVkZGM0MGY1MjdlZjY5OTJiYSByZWxlYXNlMjEtbWFpbnQKKzI0ODk0IGM0OGQ4YjM2MmFjZWUxY2RlMmIwNzQwNmJhYzEzYzA4ZDQyNmJjNDkgbGVnYWN5LXRydW5rCisyNDg5NSBjYTI3ZDgyYWM4OWI0NmUzZDNlOWVhM2UwN2EzMzQ4OTJjOWQ3NzA4IGxlZ2FjeS10cnVuaworMjQ4OTYgZThjYjIzNmFhZDI3OTYyNmZhYWY3ZWJhNmM0Zjg2YjU4MTUzYzYxYiBsZWdhY3ktdHJ1bmsKKzI0ODk3IDdiZGU5Y2E5MDU1NDkzNGUxMmVkYTZkNGQ2ZDkxYmNkYTQ4ZGU3MTkgbGVnYWN5LXRydW5rCisyNDg5OCAwYWY5YWM4N2ZmYmMxZDllMzI1NjZmODIxNTMxMTE2NTAxYTBiZThmIGxlZ2FjeS10cnVuaworMjQ4OTkgYmY1MTkzMjFlNzk2N2UyZDIwNmMxOTBiODJjYjc4MDE1ZGFkYzdiNCBsZWdhY3ktdHJ1bmsKKzI0OTAwIDVkNDEzNTYwOWVmYzFhODQwODNkZmViMWYxY2ZkNTIxOTlmMGNhOWQgbGVnYWN5LXRydW5rCisyNDkwMSA5YzMyZTkyMDBhYmVlOTFlMjE3MDkyNzI3NWM5MWNkYzBhNDM3NjhjIHJlbGVhc2UyMS1tYWludAorMjQ5MDIgNWYzMjEzNjU1ZDk1NWY0MTdiNTEwMWI4N2M0YWQzNTU4NmY2ODIxYyByZWxlYXNlMjEtbWFpbnQKKzI0OTAzIDExNGE2YmNmZTg2YmI4NGYxZmNhNjdiY2VjNTFiMWExYzAyOGZiOGEgbGVnYWN5LXRydW5rCisyNDkwNCBmNzIyNDRjZjg1YTliNzYyMmI0N2JhZDZkNzRlYjA4ZDY5YTZlMTZkIGxlZ2FjeS10cnVuaworMjQ5MDUgYWQxMjZjMDYzNjU0OGQzNWJlNDc1YTExZDYxNmNlNmU3N2JjYjYzMyByZWxlYXNlMjItYnJhbmNoCisyNDkwNiBhNjBmY2RjNzUzNDZiM2UzNjhhNDQ4NDA5OWZlMWU1N2JjN2E3MzQ0IHJlbGVhc2UyMi1icmFuY2gKKzI0OTA4IGQ1OTg2OGJhZmViMTBiMmNlZDhjMmFiMjZiZDQ2MzhiMDY2ODllOTAgcmVsZWFzZTIxLW1haW50CisyNDkwOSA1OGE4MmE0YmU4YjE3M2U1MmU5ZmNjZTFmZWUzM2I2ZmRjNWEzYjAwIGxlZ2FjeS10cnVuaworMjQ5MTAgNjg4NDJkMjk1ZDJjY2NkZjg2YjkwY2NiOWMxYzg0NjQ1NTZhNzE1OCBsZWdhY3ktdHJ1bmsKKzI0OTExIDgyY2IxNzQ5OGZjMWZiN2RlYjczYjJmM2I5OTI2MzhkYzU0ODM0NmIgbGVnYWN5LXRydW5rCisyNDkxMiAzYjM5YmEyYjgwMGVkZDdkOWEyNDU0N2YwNWYzMGQ1OWYzODNmYzZjIGxlZ2FjeS10cnVuaworMjQ5MTMgMTg5NDc5NmU5MzBjMTQ1NzRiZDMzNGRiZGU1Mjg2ZTUxODU0ZTk4OSBsZWdhY3ktdHJ1bmsKKzI0OTE0IDQ1NTQwNzJlNzZiNGYwOWFiNmZlYzk5M2I4Y2U5MDgwNGVhMWEyNDEgbGVnYWN5LXRydW5rCisyNDkxNSBiMmU3OWNhYTY4ZTBiMWM5YmM4NWNlMzlkY2IzM2JhMTFhYjRmMmMxIGxlZ2FjeS10cnVuaworMjQ5MTYgZTZhN2FkNmMzNjUyZGEzYTM4ZDRiZmEyNjU5N2M4ZGI1ZmNkMDc3NiByZWxlYXNlMjEtbWFpbnQKKzI0OTE3IDU4Yjc3ZWY0NzJkNGMyYTMzMjBmNjVjNDk4Yjc2ZTc0YjBhOGRiMDkgbGVnYWN5LXRydW5rCisyNDkxOCA1MjA1M2FmY2FkMzI1YzYzODY3YTljNTZlMDgxNTBiY2NjOTk4NjEzIHJlbGVhc2UyMS1tYWludAorMjQ5MTkgMWVjMzRhMGQwMmE3N2NlNDNhYjI5YmVkYjU1M2Q4OGVjYThhOTM1NSByZWxlYXNlMjEtbWFpbnQKKzI0OTIwIDQzYjY0MjQ1ZjFhYTdiOWUxM2M3N2U3OTY5Y2E5OTk3ODliOWQxZmYgcmVsZWFzZTIxLW1haW50CisyNDkyMSBhYjkyZWFhMTQwZWY5NGU3NWNkMmY2MzliOTVlNGY2ZWVhZDZiYWU5IGxlZ2FjeS10cnVuaworMjQ5MjIgODQ3NDI1ZDViY2E4MDc5MzliNzZkOTE4NjkxMDgxZjY4NDM3YjNlOSBsZWdhY3ktdHJ1bmsKKzI0OTIzIGY4NDc1MTM1YWMxMzQzNmYwNjJjMzVlZTE5ZjhjNmM3Yzg4ZjI1ZTggbGVnYWN5LXRydW5rCisyNDkyNCBmY2I2NDliMTAwNGRlMzdlOThkMWYyNzdkNGZiMTdhMzgwNDFkYWJjIHJlbGVhc2UyMi1tYWludAorMjQ5MjUgNWQ3NzgyNWJiYzEwNjU4ZjIxMTUxMzM1NWU4N2JhY2ZiYWRmMGY5OSByZWxlYXNlMjItbWFpbnQKKzI0OTI2IDllMDIzM2MwZTAwM2M5MThjNzUyNDM5OGQwZjAyMDg2NjdiMTBmYjcgcmVsZWFzZTIyLW1haW50CisyNDkyNyBhYzhkODVkYTZkMGRiYmU0ODczN2MwZTEwNzFlNWMyZmM2Zjc4MjhkIHJlbGVhc2UyMi1tYWludAorMjQ5MjggZTIwNDdhZjBiMmU2ZTZmZDJiNTI1ZWMxOTBhZDE2ZDI0ZDVmNjVlMyByZWxlYXNlMjItbWFpbnQKKzI0OTI5IDEyZTBkNThlNDRiZGJhMTRjYTQ2NmEzZDc3ZDQzOGEyNmU0NWVhMGUgcmVsZWFzZTIyLW1haW50CisyNDkzMCAxOGRiOTFjMGE3OGYxY2U3ZjIwYjQyODI3ZWExMmQ4NTc0MWM1NzM2IHJlbGVhc2UyMi1tYWludAorMjQ5MzEgZWZkMDRkMWYzMDg1ZTFmYTYxNDJkZjIyMzgyZDZjMjFlYzZhN2M1MCByZWxlYXNlMjItbWFpbnQKKzI0OTMyIGNkNzdhYTExZWRkYzE5ZjZjOGEzZjVmMjUxZjJjYTVmZDlmZWM2OWMgcmVsZWFzZTIyLW1haW50CisyNDkzMyA4MTJkMTU0M2JhMDg5YWExMDNmNDY1NmIzYjg5ZjdlODEyZmI1M2IzIHJlbGVhc2UyMi1tYWludAorMjQ5MzQgZDA4OWQxZTg0MTFjY2M0MzQ5YjUxYzUzNDVjZDk3OTgyMTJhNGJmZSByZWxlYXNlMjItbWFpbnQKKzI0OTM1IGY3Nzc1OGM4NzJmYjUxMWY2M2IwMDFiZGEwYzcxYTIwOGY3ZTllYTYgcmVsZWFzZTIyLW1haW50CisyNDkzNiA4ZDUxYzc1Mzk3MTliMTljNTQxNWI4NjI1ZDgxZjY5MjNjZDRlNTQ2IHJlbGVhc2UyMi1tYWludAorMjQ5MzcgOWNjZWFkNWZkMjk3MTE3OGE2ZDE2NGI3OGU2MGQ1MWVkYTc1OWZmZiByZWxlYXNlMjItbWFpbnQKKzI0OTM4IDM5NzdhZDNiMDgyNTdkNTBhNjQ3YWI4NjYyZDhhZTQ4OThhMDU2NzQgcmVsZWFzZTIyLW1haW50CisyNDkzOSBiOTM3MWYzMjQxYjg1MDA3ZTJiOGE1ZjZkNTA1NWZiOWJlMjgxYWEwIHJlbGVhc2UyMi1tYWludAorMjQ5NDAgYWM0YjFjNGMzYjEyZjI4NGRmMzcxYTBmZWM3ZmQ0ZmJlNDBhMDg3NyByZWxlYXNlMjItbWFpbnQKKzI0OTQxIDdiMmQ3MDFlYzQwNGQ3MzlhODgwNjYyYzIyZWEzMDE2ODY3NzI3NDIgcmVsZWFzZTIyLW1haW50CisyNDk0MiBhOTRlNDgyMTM5OGRhMjljNTgyMDE3ZDkwMjNkMWNiM2U5MTczNTdkIHJlbGVhc2UyMi1tYWludAorMjQ5NDMgYTJlYWI0ZGU1NTA1Mzk5YjIwMTQ1NzNhYjk4Y2NmMGZmYjE2NWFhNiBsZWdhY3ktdHJ1bmsKKzI0OTQ0IGVjNjIzMDQ3MDczYTJiZTQxNzI4NDQ5OTVmYzBjZDVkZDY0YzRjZjggbGVnYWN5LXRydW5rCisyNDk0NSAxNmE4MjQyM2I4NjAyMDQ1N2E0ZjRlODE5YzgwNGI0YmZmMjI3ZTljIGxlZ2FjeS10cnVuaworMjQ5NDYgZmRjMzllMjdhNDk0ZThiNmE3NGIyZTUwMzcyMTcxNmNjOThhMjhlZCBsZWdhY3ktdHJ1bmsKKzI0OTQ3IDI5YzFhNThkZGE1M2ZhZjM1OTllY2U2ZjhhMWFkOTQ0MjI1MzAzNWMgcmVsZWFzZTIyLW1haW50CisyNDk0OCAwOTdhZTBhZGY0N2ZiYzQxNmNjZGZkNDAwYWVhNzkxMTM4MTc0NzBjIGxlZ2FjeS10cnVuaworMjQ5NDkgNmU5YTRmOWE1NWE0MWIzNGE2ZjljNmYzYjNkYjg3YzE1YTU0N2Y2OSBsZWdhY3ktdHJ1bmsKKzI0OTUwIGQwNGViOGQ2NjRlMmRmMzBjNmZiZTA0YWRlZTBkY2UzZWRmY2Y4MjkgbGVnYWN5LXRydW5rCisyNDk1MSA5MmRhNzRjOGU1ZThjMDJiN2Q3YTE5NTU3OTBjZWE1ZmM1ODM0MzkwIGxlZ2FjeS10cnVuaworMjQ5NTIgNWI3YjM4NmNiMGQ0NTM1NzZhN2I4NTE5NjhiOGQxZmI3OTE3NGNmZiBsZWdhY3ktdHJ1bmsKKzI0OTUzIDdkZDM5NTk4ODI3NTgxY2IxNWNmNmY2ZTlmYjc2ZjQ3ZWJlN2I2ZWUgbGVnYWN5LXRydW5rCisyNDk1NCBmZjcwZTU2MzRhZTkxMjdhNzkxZmIxYjM3ZWJlZGE5NDYyZjc2MjBiIGxlZ2FjeS10cnVuaworMjQ5NTUgMThhNzBhODJhZjE1OTc4ODYxNDYyZjdiOTZmZWRiYjY5NDU5ZDk4YyBsZWdhY3ktdHJ1bmsKKzI0OTU2IGU1NjA0N2RiNjUzODQ3MjM1MzIyYjQ1MDIwMjIyY2EzYjM0YTNlODAgbGVnYWN5LXRydW5rCisyNDk1NyA1ZmY4YmIyNTAzMWM4MjMwOGM4MWExYTE5YWZiMmJlODJhZDZhMmZlIGxlZ2FjeS10cnVuaworMjQ5NTggODU3ODM1NWQyM2QzNDk1YTA0YTMwOGM3OWM1OTJlMDA1MjNlYzY5MiBsZWdhY3ktdHJ1bmsKKzI0OTU5IGNhYzkzMWFkM2NjNWE2NzJkMGUyNjYzNTkxNmJkZDkwMDFlZjYwYjQgbGVnYWN5LXRydW5rCisyNDk2MCA2OTcwNTFmNjdlOTc2YTUwM2E2ODM2MTJmOGZiODA3Nzg4OGM1ZmYzIGxlZ2FjeS10cnVuaworMjQ5NjEgZmU1NGU4ZDkzY2I0OGMyMGQxZjg1MDA2ZTA3MTQ3NGZiYTViOWJmMiBsZWdhY3ktdHJ1bmsKKzI0OTYyIDUyYjNiODQ2ZjExZjU0ZGNiNWQ2N2EwMzYyZmMyMmYwMDczMGEyNjAgbGVnYWN5LXRydW5rCisyNDk2MyBhNTBkZjY1YWNhN2E5YjgxNTAwNGNjY2JjNDNhNjkzMTFhNTQ3NWU0IGxlZ2FjeS10cnVuaworMjQ5NjQgMmY0MDczMjY5ZGFmZDMzODdiYTE4MWFhZGY5OWQzYmQyZTBmZjc4YiBsZWdhY3ktdHJ1bmsKKzI0OTY1IDY0ZDBjOTQ5ZjMzZTJmZWJkYTdiYzFlNDYzZmE4ZDY3NjQwYjU2MzggbGVnYWN5LXRydW5rCisyNDk2NiAwMzVkOWM5NmFhZWNmYzg4NDBkNTgyNDQwYjVmMWQ3YmNiNzM2MzY5IGxlZ2FjeS10cnVuaworMjQ5NjcgNjdkYTExMjkzNDA2Y2Q0Zjc0NGZjMzE4Njc3NTI1NTAzMDU4MjI2NiBsZWdhY3ktdHJ1bmsKKzI0OTY4IGJlMjEzZjFjZDQ2MmUxYjU4YWFmY2FmMWQyNDAyZWZiNDdmZmIwODUgbGVnYWN5LXRydW5rCisyNDk2OSBmYjM0ZjU1YTAzZmFiZjQwMjE3ZjIxNzRkZWExYzIzMzA0OTA3YjYzIGxlZ2FjeS10cnVuaworMjQ5NzAgM2JhMGYxYjIwMzIwYzk3NGZiMGJjMDk1YzQxMWIzOTgxMjNiMjIxMyBsZWdhY3ktdHJ1bmsKKzI0OTcxIGE5ZTA2ZmZhZjdmYmU5ZDhjNzlhOTg4ZTY4NGU2ODE0YmZhYmRkNzYgbGVnYWN5LXRydW5rCisyNDk3MiA5MzdjYzEwY2QzOWRmMDE3N2MxZTJjZjk3MTg3ODgxZWI1YTBhZWYzIGxlZ2FjeS10cnVuaworMjQ5NzMgZGE4Yjk5NzQ2OWU3ZGMwZmI1ODE4MWIxNWE3M2MzNjY4M2M0NGNmNSBsZWdhY3ktdHJ1bmsKKzI0OTc0IDhkZmJmYmM5MzFiNGE2N2I4OTFmNDIxZDg4NGZiOWM1OGFjMTc3MjAgbGVnYWN5LXRydW5rCisyNDk3NSAwOTVjZmYyMTk1NmNiZjkxNGU1NzFlOWViZTJlMjBmNGQ1NmEyMTE2IGxlZ2FjeS10cnVuaworMjQ5NzYgZWE4NWVlYTZiMmI5NDlmZGE2MmI1NjUwYWJjOTU2ZGI0NTE1NzBhZCBsZWdhY3ktdHJ1bmsKKzI0OTc3IDNiNDNmNDBhZjI3YTk4NGExYTY2MDkxMGZkMzAwMGZjNjdiZmIwY2EgbGVnYWN5LXRydW5rCisyNDk3OCBjY2VhODc4MmI4NDcyMzFlMGNlODRjYzNhYjc4NGQ0YzJiYjgxMWQ1IGxlZ2FjeS10cnVuaworMjQ5NzkgM2M4YTllZjNiOTU0Mzk2MmViN2RiMGI4NWMyNGU0MTE2YTBkOTU3MSBsZWdhY3ktdHJ1bmsKKzI0OTgwIDVkMDA5ZTVlMTNmNzk5ZWVkODU0NDgwYzBiY2Q5ZmQ4NjVlODVmMTEgbGVnYWN5LXRydW5rCisyNDk4MSA3MjQ2ZmU1ZTVhMjgyN2UyZDRlOTkwYjhjNmE5MGUxODViZTA0NzMwIGxlZ2FjeS10cnVuaworMjQ5ODIgZDU5NGE1OGI0NDZkNWYzY2U0YmJlY2RkZjE4ZWYxZDAwMWQ4ZThkZCBsZWdhY3ktdHJ1bmsKKzI0OTgzIDE0OTFmMTEzN2UwZWE1NzBlNThhYjQ5YzIxODcwNGM0MTVhZjM3ZDkgbGVnYWN5LXRydW5rCisyNDk4NCBiZTg2OTdjNzBlN2MyZTU1NDQ5YTU2MjEzYjliYjEwOTkyYjU0MGIyIGxlZ2FjeS10cnVuaworMjQ5ODUgYTMzYmI3MzI0NjgzOWRiOGNkOTNjNDcxMDY0ZTdiY2IzNDYyMjA0NyBsZWdhY3ktdHJ1bmsKKzI0OTg2IDc1ODMzOWRiZGFlYTc4MmQ1ZmUwMTU4ODMxMTcwMDYyOTRjNDUxMDQgbGVnYWN5LXRydW5rCisyNDk4NyBkZTFlYmNlZjdkMzEwN2U0YjMwODIyZjkyZGVhNTM3NzMxNzA1YTAyIGxlZ2FjeS10cnVuaworMjQ5ODggMDUxZjNiNjVkZGFiODQ5NWJjZjFiMDY2NjgyY2EyNGVjNDhkNTYzOSBsZWdhY3ktdHJ1bmsKKzI0OTg5IDZkNDI4OGU4OTE4YjI2NzRiODdjZjQzOGIyZDM3MTc3MGUxYjU3YjYgcmVsZWFzZTIyLW1haW50CisyNDk5MCBkY2NjYjljZWEwNTkzMWEyNTQyNDcyY2Q1NDljNTY4ZmM5YjIwNGJkIHJlbGVhc2UyMi1tYWludAorMjQ5OTEgZGZjOTcwNDA5ZjdlZDAyMzQxZjdlMjJiNjcwZmZjNTI2Zjc2MzM2YiBsZWdhY3ktdHJ1bmsKKzI0OTkyIDY2ZTAwODBjNmRjYzkwMWIwYjg0Y2M4ODAzYjRhN2E4ODc0MjRhOGEgbGVnYWN5LXRydW5rCisyNDk5MyA1ODYxODg1NTc3ZTk5NzA1MWEyOTIzNTU3ZDgwMWIyZTU4NDE1NDJhIGxlZ2FjeS10cnVuaworMjQ5OTQgNmY2ZjBlMTAzNTY2ZGM5Yzk1MWY2ZjMyOTkwNmZjYmI2MjRjNjA2YyBsZWdhY3ktdHJ1bmsKKzI0OTk1IDYzYTJmYWMyMTA0YzlhN2EyZGM1MTBiM2ZlNGFiNjI1ZDFkYjVlMzIgbGVnYWN5LXRydW5rCisyNDk5NiA2YWU4NWQ4Mzg0NjZhMjU3Y2Y1M2MzZTYxZjAzYTdkOThiYzBjNjE3IGxlZ2FjeS10cnVuaworMjQ5OTcgOWM3ZGEyNzJjOWI5NGU4ODE2MjdjN2I4YTYwZmVhMWVmZDNiZjRhOSByZWxlYXNlMjEtbWFpbnQKKzI0OTk4IGNkMDdlODQyMzVlNmRiMDM1M2UxYWNmYzAzOWZkODY3MDFiYWY3MzIgcmVsZWFzZTIyLW1haW50CisyNDk5OSAyYjc0NjU0M2FiM2Q3MjhkZTQ3NjgzZTJhNDE4ZjdkNTU5ZTY1N2NhIGxlZ2FjeS10cnVuaworMjUwMDAgNjIyMTllZDIxNTk5YmNlNGQ5MzBiZGI1MWRiZjgyYzk4Yzc5N2M1ZSBsZWdhY3ktdHJ1bmsKKzI1MDAxIDg1MWU0YmYzMDM1OGVmOGQwM2UwNDZjZDA5M2MxN2QzMzZlZTRlMWEgcmVsZWFzZTIyLW1haW50CisyNTAwMiBiNzJkYTA3ODBlN2E1OTJhMmU1YzQwOWViZmFmMmMzNWRmYTYyOGUyIGxlZ2FjeS10cnVuaworMjUwMDMgM2E0YTM0ZmRmYTgxYTA5NmJjYThiMWRkNjhhYmFhMjFhNTk2Zjc0MyByZWxlYXNlMjItbWFpbnQKKzI1MDA0IDM1ZTNmMjQxOGIyZGE5ZjZmMjk4YzZjNDE0MTI2ZmFlYjRkMzI4ZDkgcmVsZWFzZTIxLW1haW50CisyNTAwNSAzYzBiZDJmMzdhNzg4YTFmZjA0YmY5ZDQ1MTdkOTJhZTVhYTU3NmMzIGxlZ2FjeS10cnVuaworMjUwMDYgYTNhNjJlNDQwZjJhNjkyZDBmZjc1MzgwYjMxMDk0YThkM2U4NDIwZCByZWxlYXNlMjItbWFpbnQKKzI1MDA3IDdlMmEzYTJiYWMzM2ZjOTg4ZmU2MTQ2NmJjZjIxMjNmYjllZWRjNWIgbGVnYWN5LXRydW5rCisyNTAwOCBhNWJlMDc2NWM1NzEzNjExOWY1NGU0YWUyNThkZTg0NTNlYjg0ZjFjIHJlbGVhc2UyMi1tYWludAorMjUwMDkgOTkxMmE5NmMxZmIzOTRmMGMxMTc3MGNmNzBlNmFhZWM1Mzc2MmE1NSBsZWdhY3ktdHJ1bmsKKzI1MDEwIDE5NTkxN2I3YTYwMjQyZmI0ZDA2ZWYxMzA2NWIwZDc3YzE3NmQ1NTYgbGVnYWN5LXRydW5rCisyNTAxMSBlYjA1MTlhNDY3YWJhMjRmZDA3M2Q4ZGZhYTU2YzFmMjU2ODY0ZmNmIHJlbGVhc2UyMi1tYWludAorMjUwMTIgZWM0OGY5NmM5Mjk1ZGRlMDgwZWYyN2VmNDlmNTRiMWNiMzk0MGFmNCBsZWdhY3ktdHJ1bmsKKzI1MDEzIGMzYzZkZTE0NTMwOTk2YTY2YmFjYTI3Njg5N2JjN2FmYzJmZTdjMzQgcmVsZWFzZTIyLW1haW50CisyNTAxNCA2ODgzNGE2OTc0NmE4NWY3Y2JiYzBkM2VmMzg1YjFmMzI4MjEyYjI1IGxlZ2FjeS10cnVuaworMjUwMTUgMjliM2RjOTBiZTk1Y2I0OGFhNWU1YmI4ZDk2Yzk1YjQ1MTBiNmRjMCBsZWdhY3ktdHJ1bmsKKzI1MDE2IDlhMjY4Mjk4MjZlOTc5MmI4MTc0ZjM3YjNmMTlkNzljOTEwNDFhZmEgbGVnYWN5LXRydW5rCisyNTAxNyA2YjBlMTZjYjY1ZDU5MjllZGM4ZGY3NzgxMjdmNjI0ZWVhOWRmYjNkIGxlZ2FjeS10cnVuaworMjUwMTggMzRlZGRjYTFmZGE3OWE1NTQwYzI3OWU0N2UwY2I2MGY3YTdjMWZlZCBsZWdhY3ktdHJ1bmsKKzI1MDE5IDdjNTgyZDFiOWNmODFlMWE0YWJiMzZmMWJhNDE1MDgxNmE4NGEyNzcgbGVnYWN5LXRydW5rCisyNTAyMCAyMmRhZDlmZTA5Y2ExM2RjZjk5YWQxMWUyOThmMDMxNmMyNzA5ZDE1IHJlbGVhc2UyMS1tYWludAorMjUwMjEgMzYyOTE1YjM4NzI0NDRjYzk5NDA3ODMwMjU3OTk2YzZjOGZmZjY5YiBsZWdhY3ktdHJ1bmsKKzI1MDIyIDlkZTM1MGE2NTQyZWRmMWE4NzE5MzQ3NGIzZTY0YjJmY2FjMzY3MjkgbGVnYWN5LXRydW5rCisyNTAyMyBiNTY4NDNjMTUyNDliMzk4OWVlNDU2ZDMxODM4Yjk0NGU2ZmM0MTkxIHJlbGVhc2UyMi1tYWludAorMjUwMjQgYTkxMTkzNDEyNmZkODY2ZGMxMGZjOWE1MGYxZjE1MDJiMjM2NzdlNCByZWxlYXNlMjEtbWFpbnQKKzI1MDI1IDcyNDhjMzc1MTNmMzc1ZGQzMDMwNTZiOGQ5NTI1MTY0Y2VlZGQ1YzYgbGVnYWN5LXRydW5rCisyNTAyNiA4MjM5MTI5ZTc1ZDBhMGFhNTI1YzIyN2Y5NWYwYjU5ZGE2YzRhYWY2IGxlZ2FjeS10cnVuaworMjUwMjcgNzJiYjcwZTk2NDBlNDgwNGIxMjZjYmQ3NTFlNGQ1OTQ5MGRkNWU2NiBsZWdhY3ktdHJ1bmsKKzI1MDI4IDBkM2JiNjhlM2EyOGEzMmUxMjYwNmFlZjRlM2RiNTNjNmY4ZGFlODggbGVnYWN5LXRydW5rCisyNTAyOSA1NDRlMjYyMDYxYTM2MmNjZDIwNTgxY2YxZTcyMTkwYjIyZTU1YWI3IGxlZ2FjeS10cnVuaworMjUwMzAgNjQ2ZjhjMDg4ZjVkODQ3ZWI4NzBkZmFjOThmZTk5NGQ3ZDljMTk5YSBsZWdhY3ktdHJ1bmsKKzI1MDMxIDg5NzBlNzQ2NjgxMTMzYTg0MmE1YTA5N2EwOGM0ZTI0YzViMmJlNzggbGVnYWN5LXRydW5rCisyNTAzMiBmZmFiYWM1MDk3M2RmYzYxOTM5NGQwYThjNjNlYWVlNmI1Y2FkNmEzIHJlbGVhc2UyMS1tYWludAorMjUwMzMgYTFjMzI4MzM3YzhlODQ4ODYyMjA3YzBiNWFmZTNjMjIxZjBmMDFmMiByZWxlYXNlMjEtbWFpbnQKKzI1MDM0IDg4YzQ2M2Y4NzllZjI3NTViYjMxNGI1MmU0MDM1M2I5YzU3MGE1MDAgcmVsZWFzZTIxLW1haW50CisyNTAzNSAwNjhlODczZjA5MzJhYWJhYjM3ODQ2ZGQzODNlNGMyNjU4MDMxMjRjIHJlbGVhc2UyMS1tYWludAorMjUwMzYgMDhhM2FhOTUxMmU5ODJiMjBhYjg0MGNjNmRiNDhhMDMxNWY0NTRlMCByZWxlYXNlMjEtbWFpbnQKKzI1MDM3IDI5OTk2OGMyNzliOTgwZDczMTA2ZDFjOTIxOGY1NGNiNzkwMmEwODQgcmVsZWFzZTIxLW1haW50CisyNTAzOCAzYTU1MTUwNTBiNDM2YmM1MjNmNjkzYzE3MTUxNmM4YWRkY2ZjNjdlIHJlbGVhc2UyMS1tYWludAorMjUwMzkgYTFkNmNkOTdlMzE5NjNjZTJlZjZhYjkzMTIwYTcwMGUyNjhmODJjNCByZWxlYXNlMjEtbWFpbnQKKzI1MDQwIGVkYzM1MzJmYjJiOGZkMGZmZDYxMDYxOWU0ODZmZGFhMGMwYTgzYTQgcmVsZWFzZTIxLW1haW50CisyNTA0MSBjNGZlOTVmZWEzZTZmZmFmZjAyZDJjOWM3OWYyYjdiMWM4OGJlZjQzIGxlZ2FjeS10cnVuaworMjUwNDIgZDA1ZWJiZDk2NWEzNzEyNWY3NDcxNTg0NmY4NjZlYjliOGYwM2NjMSByZWxlYXNlMjItbWFpbnQKKzI1MDQzIDExNmUzMjE4YTdjYTYwN2E4ZTI3N2M3NzFhZTA0ZWFiZjg0M2UzY2UgcmVsZWFzZTIxLW1haW50CisyNTA0NCA4YjI0NTI5N2MxNjZlNmNjMjU2Y2MyZjAzZTM4ZGNhODgyMTA4NmMzIHJlbGVhc2UyMS1tYWludAorMjUwNDUgNTkxNWQ0NWI4MDk4NDE2Zjk4ZTFmYjcyNDkwNDM1OTIxYjlkMTUxZSByZWxlYXNlMjEtbWFpbnQKKzI1MDQ2IGE0OWE2NWE5NWUzNWNkMzY5Y2M4ZTZhM2RmYTI5MGZlMTFkMjUzYmUgcmVsZWFzZTIxLW1haW50CisyNTA0NyAxZWRmNWVkMWFmMDgxYTAyNTVkMGU4MWY1YjkzY2E4ODAzOTIyNjFjIHJlbGVhc2UyMS1tYWludAorMjUwNDcgZjc2YTQyNWIxNGU0ZWU4YWRlNWU5MjM5NTk4NTM4NTM0YjNhOTBhNCByZWxlYXNlMjEtbWFpbnQKKzI1MDQ5IDNlNzhiZjBlMmJlOGQyZGRmMTkyNmJkZGMzYzIzODQ1ZmZiYmNmMTEgbGVnYWN5LXRydW5rCisyNTA1MCBkYjJjMTI4MTI1ZjQ1NjlhYjliZGRiZjBhYmE4YWQ4ZjJiYjljNTZmIHJlbGVhc2UyMS1tYWludAorMjUwNTEgMTBkMWQ3ZDYzNWQ0MjJlZjc0YTRkNjNiZTk1OTI3MjE3NWMzZTFhYiByZWxlYXNlMjEtbWFpbnQKKzI1MDUyIDJmMzY0ODYwMGU2MDFmZGQ5OTU5YzdhNDUzOWI2NGZlY2E2OGEwODUgcmVsZWFzZTIxLW1haW50CisyNTA1MyA3ZmUzZTYxYWJjZTNlYTgyYzJkM2I0OWFhZjI2ZTFhYTE4NWY4YTkwIHJlbGVhc2UyMS1tYWludAorMjUwNTQgNWM2MmVmYmNlNGZhMDYxZGRkYzg4NjE5M2MyZTY2Njk1NzgyYjEwZSByZWxlYXNlMjEtbWFpbnQKKzI1MDU1IGQ3NGRjNDA2NjQxNjg5MjQ5MDI3ZWM3YWFjNzNjMjIwZTE0OGUxYzQgcmVsZWFzZTIxLW1haW50CisyNTA1NiBhZWRkODUxODc0OTY0ODdlYjkxYzc0YjFhMTcyNGIyNTQwZDA2MmI5IHJlbGVhc2UyMS1tYWludAorMjUwNTcgY2UzNWU1NzBmZmEyMWViZGIwNzQ3YzZjNDlmYjEzOWRhNzYxNzQ3NSByZWxlYXNlMjEtbWFpbnQKKzI1MDU4IGEwYjM1MmU3Njg2MmRmMGM4OTk1YmRiOWU1NzVlODBhMjdlZDMxZjggcmVsZWFzZTIxLW1haW50CisyNTA1OSBlYTE3NTVkNzNlOTIxYWM5MGE2MDNmYzJlMmY2Yzc4MDgzYmEzNTk5IHJlbGVhc2UyMS1tYWludAorMjUwNjAgMmUyMjg0NjFhMzkxYjE4ZDc5NjVjNTkzYzRjOWM2YTgyYTQzZjQxYyByZWxlYXNlMjEtbWFpbnQKKzI1MDYxIDMyYzFjMGFmY2Y5OGRjNGM3ZDc4NTY0MWI2YTBmMWNjODc3YjFkYTUgcmVsZWFzZTIxLW1haW50CisyNTA2MiAzYjU0YzQ0NTI0ZWI2MjQzNDM5NjYzMzlhNTdlZjI1N2JiN2FkNjU4IHJlbGVhc2UyMS1tYWludAorMjUwNjMgNDhlY2Q2MDYxZTg4ZDBkYmU5MDJjZTY3M2M3MTQzZDkxYjUzNDUzZSBsZWdhY3ktdHJ1bmsKKzI1MDY0IDQwMjczNjFlNzk1NmEyMWVmZjlmMDRiMTA4MDg0NTQ4ZjE4NjU0MzYgcmVsZWFzZTIyLW1haW50CisyNTA2NSA3NTMxY2M1OTJlNDYzYTFmODQwZWRkNTc2NDhhMGUzYTY3OGUyOWRmIGxlZ2FjeS10cnVuaworMjUwNjYgNGE1YTAxMGM4ZjQ0NDI5OTc5NmFkZTVkZTA1ZGJhNzI5ODRiNzI2NSByZWxlYXNlMjEtbWFpbnQKKzI1MDY3IGFhODNmZTZlOWM0ZjVkZGM0ZmU0MWI3M2ExMThhY2U0NmE1NDkyZDQgbGVnYWN5LXRydW5rCisyNTA2OCAzYjczMzI1YjMyZTU5NDNmYjQxN2Q1Njg2NjFkYTg3N2Q0MWRiZjliIGxlZ2FjeS10cnVuaworMjUwNjkgYTZhMzFjNTVhMTZkMDUwMDg4ZDM3Yzc1NTRhYmFhYzY5MzM4Y2I4ZiBsZWdhY3ktdHJ1bmsKKzI1MDcwIDg2NjYxNWYwYWUyYTcyNThkNmIwNDUxZmVmZDRjYjgxYTk3ZGZmNGUgbGVnYWN5LXRydW5rCisyNTA3MSAzYmU0MGQzYWZmOTQ1ZjZhOTAzOGEzNmY2M2FkY2JhMzgxNmJlM2Q2IGxlZ2FjeS10cnVuaworMjUwNzIgNDM3MzkzZTc4MGNiZmYzZDMyZWE5NDQwMjQxYzQwYThlYzQ3ZjA3MiBsZWdhY3ktdHJ1bmsKKzI1MDczIGM2NGZjNTZmNjA3MjVmODkyODI4MWZjZDI0ZmZhMGI5OWMwY2NmMjggbGVnYWN5LXRydW5rCisyNTA3NCBlMjIzMzk3YjI2ZmE1YTI2NWZkZjM0OTJmZmFjY2VmODBjZWE0MTUyIHJlbGVhc2UyMi1tYWludAorMjUwNzUgNjMwMjkzYmUxMDM1NmUxYjA2MjczNTZhNGU3NjIzNjk3NmNkMmZhZSBsZWdhY3ktdHJ1bmsKKzI1MDc2IDRjNmMxM2FhOGE5OTc1MjlmNzA2MjhjNWZmNmJjYTc1NTAxZmQ2NTQgbGVnYWN5LXRydW5rCisyNTA3NyA0ZWFlNjZiZTFkMjkxYmEyNzQ1OWFiNjE4NzZkMjhhYmM5YTM5NDk1IGxlZ2FjeS10cnVuaworMjUwNzggMWQ5MTgyMDEyOGExYzk5Y2EwODQ0OGUxOTY4OTIwMDY2ZDAzMzdhNiBsZWdhY3ktdHJ1bmsKKzI1MDc5IDgxYTgzYTY1MjQ2ZDMwMDZjOTY3YTRjNTI0N2NkZGU3OGUzOGY1MzggbGVnYWN5LXRydW5rCisyNTA4MCBlYzZiNjdkMjgwM2QyZmEyMmRjMWMyZTVmOGI3MzQwNDMwMTcyY2Y5IGxlZ2FjeS10cnVuaworMjUwODEgZTk5MTk4MjM0ZDk2ZDI0ZDU0YjQ5MzBjZjkwNzExYjM4Y2NkYTRkYyBsZWdhY3ktdHJ1bmsKKzI1MDgyIDI1ZTQ0YTAxMjVlNDU3YzZhZjY2ZDc0NTQ2ZjViNjZlNDdmZTY0YTQgcmVsZWFzZTIxLW1haW50CisyNTA4MyA5ZTE3M2NiMzViNmRmZGQ3M2VkMzViMGQxZGQ2MzQyZTRiOTNkOTUwIHJlbGVhc2UyMi1tYWludAorMjUwODQgZWJlNmJkNTc2ZjY1ZDliOGFlZTA4YzI4OTE0M2UzY2QyODg2NjVhZCBsZWdhY3ktdHJ1bmsKKzI1MDg1IDg4NGU1N2JmM2FkYTQxMDczYjZlNmQ3OTE4YWI4YWUyMzIwODkzZTMgbGVnYWN5LXRydW5rCisyNTA4NiA1ZDJiZmJkNDdmMWJlMmEwMmFmYjAyMDUyN2QyY2FjYTE5ZDZiYTI4IGxlZ2FjeS10cnVuaworMjUwODcgNjc3NjFkNWI0YWU2YTJlZjE1NzFkZjdkNDY5YTUyZDBmZTU0MmMyYyByZWxlYXNlMjEtbWFpbnQKKzI1MDg4IDVhMzI5YTI1NzE5N2Y5NTJjNmRkZjZkYTdjNDZkY2E4NjVlM2IwNjEgbGVnYWN5LXRydW5rCisyNTA4OSA1NGVjY2M1ZDIyZGQyNzQxZWY4OWY4MGUwMDU2ODUzZTlhOGU2MjI2IHJlbGVhc2UyMS1tYWludAorMjUwOTAgZTY1NDc1YjRmM2NmOGI1OGU2OTk0YTRjMGE5YWFhZjY3OWU3ODIzNyByZWxlYXNlMjEtbWFpbnQKKzI1MDkxIDNlMjZmNWRhY2JiZTY2MmYxMGI1OWNmOGNjNjFmNDNmMjZjNjNhOWIgcmVsZWFzZTIxLW1haW50CisyNTA5MiBkOTYzMTg0MzgxMTg3Mjg4ZGY4OTc4NDFmMDY2ZmY2NzU5YTZhZjUzIHJlbGVhc2UyMS1tYWludAorMjUwOTMgMzFiMjUwMTQxNzRiZDZjODQ4MjQzY2ZhZGNlOTQ2Njk0NWUyZDc3OSByZWxlYXNlMjEtbWFpbnQKKzI1MDk0IGRjY2JkN2JiNWJkNWM4NTE1MzMzZWNkOTY5NzRmOGYwOWNlZTkyOTcgbGVnYWN5LXRydW5rCisyNTA5NSBjM2E4NjQ4YmYwOTdhYjcwMTI4YjRmYjFmZWE5NjNkYzdmNzViMDQ3IHJlbGVhc2UyMS1tYWludAorMjUwOTUgY2YzMWIxMGU0NWI0ODYxNTA5NGNhZTkwZTNjNWJkMDcyNTg3ZDhlNiByZWxlYXNlMjEtbWFpbnQKKzI1MDk3IGJhOGRiOTBlZWY0ZWNhYThhMWZjYmU0MDNhNmUzYTQ4YjA4NDVkZGIgbGVnYWN5LXRydW5rCisyNTA5OCAzMGE4MTcwMzhhZjBmNGJkNmRiNjg5ZGQzMGQ2NjUyMzlkMjg4NDE5IGxlZ2FjeS10cnVuaworMjUwOTkgY2ExYjY3ZjVhM2VjZDhmNDdiNjNhNDc3Y2M1Y2UwMmU5ZGU0ZDQ2ZSBsZWdhY3ktdHJ1bmsKKzI1MTAwIDJiNTZhZjY5ZjY3ZGVkOWY2ODRmYTMzNmRiNmRmNjM4M2RiOGU4N2EgbGVnYWN5LXRydW5rCisyNTEwMSA4ZjRjYzgyMWFmYWE3MjgzYTVlOGU4MTNmYjI1NzVkOTUzZjQzZjI4IGxlZ2FjeS10cnVuaworMjUxMDIgZWE4Yzg0MDBhNGM4ZDAwZTc0ZTc0YWI0ZTE4M2UxY2Y2MGRmNWFiOSBsZWdhY3ktdHJ1bmsKKzI1MTAzIDlkNWFkZmY4N2YzMDAyMGFhMmJkOGMzNGIzNzU0N2FjODUwYzNhMGEgbGVnYWN5LXRydW5rCisyNTEwNCAzNGY4NWEwYTdmYWFkY2I3ZGNmZDhkZDhlYzZhZjIwYWJjNjllMGM1IGxlZ2FjeS10cnVuaworMjUxMDUgNTNmYzZlYzhhODM3NjA1YjMxZmM4MDk4NzM3ZTczZWIxMDUwYzkzNyBsZWdhY3ktdHJ1bmsKKzI1MTA2IDFiN2VjMzk1ZDM5MjRmOGYyOWY1NGRlNDdhMzcxMDJjZmIzZDkyOWIgbGVnYWN5LXRydW5rCisyNTEwNyA0NDJlZmYyOWI0OWY3YjMzNjM4ZjgzMDViMWU4ZTc5ZTM2YjFjZTc4IHJlbGVhc2UyMS1tYWludAorMjUxMDcgZDgyM2ZjMTM1ZTkwZTdiYjg0NTkxNWNlYzkwMjc3ZWJmY2QyYzhkMyByZWxlYXNlMjItbWFpbnQKKzI1MTA4IDc0MjQ2YTJkOTk2MjIzZWMxZWUxZGVjOWE3NDZhODdjOTcxZTkyNTMgbGVnYWN5LXRydW5rCisyNTEwOSA2NjA1ZjA3NmY5NWEyZDA1NmMyM2MwYzhlZDExZTg3NzUyYWRhZDdjIGxlZ2FjeS10cnVuaworMjUxMTAgYzRmNzJiNDcyMmRhNjM0ZDBjNTE3ZTA0ZGU0MzRiYjJkZTZjM2E5MiBsZWdhY3ktdHJ1bmsKKzI1MTExIDljMGEwYzg5NzczZjE4MmIwMDY1OTdlZTlmNDhhZGNmZTEwZDZlYmEgcmVsZWFzZTIyLW1haW50CisyNTExMiA5ZDc3MDhkZGNmYjk5OGUyOTQ5MDI1NDJlYmMwNWUzNDM2Y2Y2OTc4IHJlbGVhc2UyMS1tYWludAorMjUxMTMgMTlkNjY4NzUxYjFlYWYwMzQzMDA4MDY2YzVlM2NiODM5NTllNGY0NCByZWxlYXNlMjEtbWFpbnQKKzI1MTE0IGNmYmRlODUxOWU1MDBlMTIzMGEzZTY3NGIzZDAzZWFlMzE5MzJlNTEgcmVsZWFzZTIyLW1haW50CisyNTExNSAwZWZmOTYxYTE1YjUzODhlZWI1MzFlNDdiOWQzOTNkZGZlMmE5ODZhIGxlZ2FjeS10cnVuaworMjUxMTYgZDYwMzUwZDcxYjYwNTgyOGU1YjYwNDRmZjcxOGIxYWM5OTczYWE4MyBsZWdhY3ktdHJ1bmsKKzI1MTE3IDQwNjMxYWU3NGIxN2JiYTIwNTFjODc0Yjk1OTJkZWU3ZjVjNDMzMGIgbGVnYWN5LXRydW5rCisyNTExOCBjYjQwYWNhNDE4ODljZTc3Mzg1ZjZmNDY4ZWI5MzllZjBkMjFmYWFmIGxlZ2FjeS10cnVuaworMjUxMTkgNzIzM2I4NmJlNjU2ZTM5Zjk0ZWE5MmY2MGIwM2ExNDI3YjFiNTlmOSBsZWdhY3ktdHJ1bmsKKzI1MTIwIGRiYjcwM2ViNmIzZDliNGUwYTNlZmM4ZDE3ZGE5NjIxYjJlMGZiNDEgbGVnYWN5LXRydW5rCisyNTEyMSAxYTI2ZGNkZmI2Y2M5ZGVlM2Q4ZDMwOTU3NTllYzJiZTkwNDM5YTMzIGxlZ2FjeS10cnVuaworMjUxMjIgYTFiMDY1ODI5M2E3MDk5MTNiODEzOTRkOTY1MjI1Y2JiZTkzMjA1YSBsZWdhY3ktdHJ1bmsKKzI1MTIzIDY1MmRjNTFiNWY4MzIxODdjYmFkMDczNGZmODQwYWUxNjUxYzgyY2IgbGVnYWN5LXRydW5rCisyNTEyNCAwMTEwYTA5ODNlNjE5MzBjYzEwNWQxYzQ2MTc4NGRmNmY3YjQ4NTExIGxlZ2FjeS10cnVuaworMjUxMjUgMzY4NTYxNWQyMWIzMjdmNTgxMWU2OGQxMjNmMDI5N2VjMTRhMzY2NCBsZWdhY3ktdHJ1bmsKKzI1MTI2IDhiMTE2YTg0NDliZDVlZWRmYzgyY2ZlNzYzZDJhMmQzMjdjNzIyOWMgbGVnYWN5LXRydW5rCisyNTEyNyA4YTJjZDFjMGMxMzU0ZWM4ZmFkNmIzOGYyMzM1YzAwYjg4ZmEwNDZmIGxlZ2FjeS10cnVuaworMjUxMjggZTIyN2M4ZDAzZDZkOGMyNGQ0NTRjNTNhNzE2MzFkYTRmY2QwOTcyNyBsZWdhY3ktdHJ1bmsKKzI1MTI5IGU2ZDVjNGM3NDViYzAxM2M0ZmM2MzEwODhjNTNmYjMxNzQ0NWE3YjkgcmVsZWFzZTIyLW1haW50CisyNTEzMCA1Nzg3ZmM0OGMyYjU1YTUwNzE4YWE0MDZkZjRhMzkxYjYxOGUwN2YyIHJlbGVhc2UyMS1tYWludAorMjUxMzEgOGU2N2Q5MDM1YjY5OWFiYmEyMTE4MTJjNTUzYjY1ZTJkOWRhMTk1YiBsZWdhY3ktdHJ1bmsKKzI1MTMyIGVjNzUwZTM3NjcxYmUzZWI1MjVlZDg4ZWQxN2U5ZDRhOWQ1ODIwMWUgbGVnYWN5LXRydW5rCisyNTEzMyBkNWEzOGEzMmY3OGI1MGNjODU4OGVjYzI0NDVhNDIzNjdjNGU1NWZhIGxlZ2FjeS10cnVuaworMjUxMzQgMWVkMjY4ZWEyZDI2MzAzOTMzNjUxYzZmMWMxMDIxZTVlNjk4YzE0ZSBsZWdhY3ktdHJ1bmsKKzI1MTM1IDE2Y2M1Mzg0MDFiM2YwODJkZGQ4ZmQ1NjdlN2Q1YTIzZDFmOWRiMWIgbGVnYWN5LXRydW5rCisyNTEzNiA5YmVjMTgzZmVmZmY2MWNlZDNjY2FkMWMwNWQ2ZDNmMTYwYjM5OWVlIGxlZ2FjeS10cnVuaworMjUxMzcgNjMzZTY0NTY0ZWRmYTFhYmM1Y2EyYTY1Njg2MDhmZWIxNzliOWYwYSBsZWdhY3ktdHJ1bmsKKzI1MTM4IGY4ODczNjI1ZDhmNjA0YjZmYmY1ODNkMWUzMzMzOWNmMGUxOWM1YjMgbGVnYWN5LXRydW5rCisyNTEzOSA2Zjk1OGY0OTliNDI5NTcwNTM2NGU1Y2VmYmY1YzE0ZjBlZGNhMjAwIGxlZ2FjeS10cnVuaworMjUxNDAgMGZlODc1ODY2ZDRlZjU2ODYyNTUzODFkNmJiYTU4NjQzYTU4ZmM4MiBsZWdhY3ktdHJ1bmsKKzI1MTQxIGRhMTdhMTBlMmYyMzFjOTIwNzY1OTQyZWI1YjI3YTEwNjFhNGNiMjUgbGVnYWN5LXRydW5rCisyNTE0MiAzZTBkYjk4NGJkM2UzMDRjNzdhZTE5YjNhMmNkZjhmZWM4N2JlZDQyIGxlZ2FjeS10cnVuaworMjUxNDMgMmM2NjE3ZjI3MGUyYzkyZGJiY2YwMWYwZDIxYzdkYjY0MjJjZWY2YiBsZWdhY3ktdHJ1bmsKKzI1MTQ0IDVhNWQ5NGM0OTk3NTBlM2QzY2E4YzU5NDM2OGY1ZGViNDZiMTZmMWEgbGVnYWN5LXRydW5rCisyNTE0NSA2YzVjMTEyZDQ1MzM5YmQ3NzI4NTNiZjg5OTk5Y2QxZDg5ZmE2MTI2IGxlZ2FjeS10cnVuaworMjUxNDYgMTM4M2U2ZjdiMTFmOTlkNzQzNjllZWNiOTAzYjI5M2I1MDJiZjZjMCBsZWdhY3ktdHJ1bmsKKzI1MTQ3IDNlZjdiZWQwMDdmNmVkMzdjMjk2OTlmNjRjZWMwM2Q4Njc3ZGE0MDAgbGVnYWN5LXRydW5rCisyNTE0OCAwNWZhYmQ4ZjRlN2Y4ZDY1ZjNkMWIwYWE1MzE1YWY5NDJhNGUyMDYyIGxlZ2FjeS10cnVuaworMjUxNDkgMTllMGE5MmUzMjc3N2VkNmZhNWRjMjdjZmJmOWU4ODcxYTc1ZWRmYiBsZWdhY3ktdHJ1bmsKKzI1MTUwIDZhOGM0NmQ4MjEyYmM2N2IyOTJlNjk4MmU3NTQxNDY3MTFmMjlhYjEgbGVnYWN5LXRydW5rCisyNTE1MSA5NTc2MGFiMTE4NzU1ZjU3MWZiMWRjOWU0MjNiOTc4YzhhYWQ0NTk3IHJlbGVhc2UyMi1tYWludAorMjUxNTIgYTY4YmE3NTVkNzAwZTVlMzFhY2ZlZjQxOGZmMjNmZTUzYzI4ZGUyYiBsZWdhY3ktdHJ1bmsKKzI1MTUzIGNlMTBhN2Y5NjdlNWE3YmRiNjI0ZWM3M2Q2NDA4YTVkMTM1NTliNGQgbGVnYWN5LXRydW5rCisyNTE1NCA0ODNmNWYyNzJkZWZjNmY0N2U0OTljM2Y2OWI3NjZiYzFlMTc0NjAzIGxlZ2FjeS10cnVuaworMjUxNTUgYzg4ODYyMGU4MDYyYzdjN2QwZjUwOGIwMjE4YjMzOWEzN2NhNzBiYSBsZWdhY3ktdHJ1bmsKKzI1MTU2IDI2YTU0ZDNmNTVlNDdmZjM1NDczNGZhMDY1YzU5YzNlZmNhN2M1NzAgbGVnYWN5LXRydW5rCisyNTE1NyBlN2Q4YTlkYTNiMTgwNDBiN2YzMTJkYjM2ZDg4ZmQ0ZGYyM2EzODM1IGxlZ2FjeS10cnVuaworMjUxNTggMDNhMmJhNzQxNzliOWYxNWYwZGFjNzNiYjc0YTBiMWE1MmEwODIxYyBsZWdhY3ktdHJ1bmsKKzI1MTU5IGFkY2MxNDE0MjQzMmU4MTRlMjA3NTVhYzhkM2FlZjA1NGMzZGQyYzUgbGVnYWN5LXRydW5rCisyNTE2MCAyNDA5OGY0ZjY4MmVkMTZmZWYxNmRmYTIyOTUyYmZlNzVkN2ZhYTBiIGxlZ2FjeS10cnVuaworMjUxNjEgZmEzMDUxZTBmZDkzMjEyMDlmN2VhNDY3YzU3NDk4MDgyOGNhYjE0OCBsZWdhY3ktdHJ1bmsKKzI1MTYyIDJjOGIwM2VkMzkwNjNhNGUzMGZlMDU1NGZlNzY4NDNhYTQ1N2Y2OGEgcmVsZWFzZTIyLW1haW50CisyNTE2MyBlMGRiZDE3NTRhYTkwOGMxN2MxNWY4ZTM3NWI4YjZhYTEyYzljMDY3IHJlbGVhc2UyMi1tYWludAorMjUxNjQgYWFlOTc3Y2E1OGEzYTdiMWUxM2UxNDAyMzc2YjhiYjdlMjQzMDNiMSByZWxlYXNlMjEtbWFpbnQKKzI1MTY1IDM0NWI5MmVkMmEzZmI3YWEyZmM5YTU0MWQ0ZGM5NDU2ZmI1ODM1ZTMgcmVsZWFzZTIxLW1haW50CisyNTE2NiA5MjYwZjY5NDMyYTkzYzlhN2Q0YWZkMjJlNGIxOTVjMzI0YzYxMzQ4IGxlZ2FjeS10cnVuaworMjUxNjcgNTlkMDliYTFmNzgyYzhmOGVhZjNhZTE3YjYwNDVmZmI4NzE1NjFhMSBsZWdhY3ktdHJ1bmsKKzI1MTY4IDYzY2JhNDIzZmEwNDBiZjEwNWYyYzg4YzhiMThlNTMwNzJkMTlkYzUgbGVnYWN5LXRydW5rCisyNTE2OSA3NDQxNTMzYWNhM2JiOWJmNjA1M2ZlOGJmOTFkOTM2YzUxNzg5NDJiIGxlZ2FjeS10cnVuaworMjUxNzAgN2ExMWJmYzY2MjE0MzE3MTM3ZjM1NjE4ZWUwZDY0NTU5ZjFjYzNmZiBsZWdhY3ktdHJ1bmsKKzI1MTcxIDQ0NDU5MWFmZmQwZTAzY2MzMDZjNmM2NjM0OWM2N2Y0ZmM1YmQzODggbGVnYWN5LXRydW5rCisyNTE3MiBmZmM0MTE2ZWMxMTlmOGFiY2Q5YmY5ZWZiNmI3MGMwM2FkNDE3ODVmIGxlZ2FjeS10cnVuaworMjUxNzMgZjNiMGUzY2IzNDBiMzAyMTg5MTA5MzNjOWI5Y2ExODA2MmFjOGI5MSBsZWdhY3ktdHJ1bmsKKzI1MTc0IDA1ZTYzMTExYzMxMDZlMGQ5YmEzYjk4NTg4ZjM2MzM2MTU0MTc0MjggbGVnYWN5LXRydW5rCisyNTE3NSA5MDUyMTNlMjg2Nzc1NzEzY2ZmM2U2YmFhNWNlZDgzMTI1ZmIyODAzIGxlZ2FjeS10cnVuaworMjUxNzYgOTY5Y2UwMTdiZDNhMTc1YjU1MDU0NTYyMTk5NWViYWIzNmE0NDM3MyBsZWdhY3ktdHJ1bmsKKzI1MTc3IDNhNzA3NTIwZGUzMDkzZTdmODFhOWY4MDAwY2QzYmMxYzAwNGM1N2MgbGVnYWN5LXRydW5rCisyNTE3OCA5MGMxZjNmMzdkYWU0NmE4NWZlNzJmNmIxMGJmZjYxNzFkZjZiODI5IHJlbGVhc2UyMi1tYWludAorMjUxNzkgYjEyZGNkMjc2ZGIwZmQyM2U5ZWU5YTA3OTgxM2EwYjIxZGUyNGZiMyByZWxlYXNlMjItbWFpbnQKKzI1MTgwIGE0ZTQ3MzY3OTliMThmMzY5ZjdmY2IyM2ViZTA5ZTU0ZjEyYzNmZWQgcmVsZWFzZTIyLW1haW50CisyNTE4MSAxZDg2Y2RiMTcyOTE2MDllZDBlZGMzMTEwZjUzMjMyNWM0ZmQ3ZDkwIHJlbGVhc2UyMi1tYWludAorMjUxODIgMTRkYTdkZDM3Yzk0ZTZhNjQ4YjI4Mzc5MWJlZjZlZmYyNDkxMzQ1YSByZWxlYXNlMjItbWFpbnQKKzI1MTgzIGRmZjIyOGFkMTdiOTgzNTI1YTM3NjU4ZGZjZTgxMjllY2FlMWI0MjEgcmVsZWFzZTIyLW1haW50CisyNTE4NCA2ZjQ1NWQ0OTE4NzE1ZjM3MTllZjdkODNkNjIxOWMwMTE1Yjc5ZDE1IHJlbGVhc2UyMi1tYWludAorMjUxODUgMDZmOGE4MjFiNjgzY2QxMzU1NWM4ZTU4YmMxZjgwYTlmZGMzMzczMiByZWxlYXNlMjItbWFpbnQKKzI1MTg2IDdlNzk2NGM2ODJiNTYyMzhmY2JkMzMzODk3N2Q2MjUyZWQxNjFkYTcgcmVsZWFzZTIyLW1haW50CisyNTE4NyA3YmEyYThjMTYyZmEyNjdhNzczYTE1MWIzMTIwNTVjOTA1MzRmODA0IHJlbGVhc2UyMi1tYWludAorMjUxODggOWI0MTRkZjQ4ZTE0N2U5NTc0NDQyMWM2MTg2NTZjNWVjZjhjNzczZSByZWxlYXNlMjItbWFpbnQKKzI1MTg5IDczMWJlYjY3ZmVjOTAxN2E5MjZiMjZmOWE2ZjJiNTkwNDM3NDhlMGYgcmVsZWFzZTIyLW1haW50CisyNTE5MCA1Y2FlYTJiMTMyY2ExODVlMDdlMGJmZjUwZDkzYTczNmFmOTE5NjI1IHJlbGVhc2UyMi1tYWludAorMjUxOTEgNGY1NGU5YTI5NzZlNmMyMjFjZDYwNmJmYTk2YzcwMTBhOGZjM2Y5NSByZWxlYXNlMjItbWFpbnQKKzI1MTkyIGFhNzEzYzRjNDk4ZGVkZjNkYjIwZmE1NzE3ZDAyN2RhYTU5Zjk3NjQgbGVnYWN5LXRydW5rCisyNTE5MyAwNzBkMzkyMDQyZTNlZWY2NzAyYzUxODc4YmNlZjMzNzJlZGI4YTI1IGxlZ2FjeS10cnVuaworMjUxOTQgYzFkNTVhNjI3ODk3NzQwMzc3Y2YxZTdmMGMwOWVhMTRjY2RkN2IzNyBsZWdhY3ktdHJ1bmsKKzI1MTk1IGYzNzliYzBjNWUzZmM5NzI0NzNjNjNlMjliMWU1YzFkNDk2OGM0NGUgbGVnYWN5LXRydW5rCisyNTE5NiA2YTFlNzRhZGY4ZDZjZWM0ZDJjMTEyNjY3OTY2NTgxOTg3YTkwMDhjIGxlZ2FjeS10cnVuaworMjUxOTcgMTFjYzA1OTg1NzRkODE4NDVmMThjMmRiZmNlYTAzMjNmZmZmNTNhYiBsZWdhY3ktdHJ1bmsKKzI1MTk4IGZjMTBlNzAyMThkM2JlM2MyNWZjYTMzODllMzc0NGM1YWQ5MWY2MzAgcmVsZWFzZTIyLW1haW50CisyNTE5OSA1ZTY3YWQ3NmM3MmZkYWRiYzhhNzE0ODA5OTk0NGFmN2JjNzY2NTdmIGxlZ2FjeS10cnVuaworMjUyMDAgZmQ0MTg0ZGEwOTgzMGY2ZGNiMGI1MWY2YTE0MzI2MjFlZWIxNjE5ZSBsZWdhY3ktdHJ1bmsKKzI1MjAxIDRiM2IwNmRlMDJhMzExNWJjMDQwOGU1YWY1NWMzNjc2NDhlZDMxOTUgbGVnYWN5LXRydW5rCisyNTIwMiBmZTJiNjRmYzU3YTBhMGU0MGZjYWU4NjBlNGEyYjhjMDM3ZGI0NTY1IGxlZ2FjeS10cnVuaworMjUyMDMgNDNkOWMyZjlhMmY2YmMwMjE3MzVkOTA2MjNiYmFlOGU3NDYzODY1YyBsZWdhY3ktdHJ1bmsKKzI1MjA0IDQ4YjU5ZmE2ZjY0NzIyZDVlY2ZjNzU4YTFjNGZjNTE0MTFmMjY4ODMgbGVnYWN5LXRydW5rCisyNTIwNSBhOTNhN2JjYmMzODZmZDY4NzhhZGE0MGJiMjZkOWE1ZDU2NzBjZWM4IGxlZ2FjeS10cnVuaworMjUyMDYgMjZiNzU4YzAwZmI2MDY0NTMxMTE2YzExMmNiODFkZWY0ODdjZjk1MiBsZWdhY3ktdHJ1bmsKKzI1MjA3IDQ1NzMxZjEzNjBlZWNlMjY1YjkyZmYzNTk2ODVkNWZjOGVkMTQzMDEgbGVnYWN5LXRydW5rCisyNTIwOCBmZDQyNGY1MTlhOGViZTgzZTg2MDM4M2UxNDk1ZmQ1NzUwNTVlNGExIHJlbGVhc2UyMi1tYWludAorMjUyMDkgZmFhYWViNTM1ZDM5MmU3ZTBkYmFmYmUzNmQ0NmE1Yzg2ODc2YjIxMCByZWxlYXNlMjEtbWFpbnQKKzI1MjEwIDBkMDhjYjg0OTUxMTgwOGEzOWRlYmZkZWRlNzdmOGQzNjRmYjY0YjAgbGVnYWN5LXRydW5rCisyNTIxMSBlMGZjMjg2ZDU3YTQ2Y2Q2YTc4N2FhNWI5MWUxOWZmYjJhNjRhZWY2IGxlZ2FjeS10cnVuaworMjUyMTIgOWUzODRmMTAzMDQ3MjEwODdlZjc1YjFkMWY5NTY4MzJiNjkyNWE5ZiBsZWdhY3ktdHJ1bmsKKzI1MjEzIDY1ODNjOTVjZjY5MjI0MmRiMTM5ZmNkMGRhYmQ5YjA4Yjg1OTBkM2IgbGVnYWN5LXRydW5rCisyNTIxNCBjNDMzZGUxN2MxNTgzYWFhNzgyOGVjOGQ2YTA1OGM5Njg0NzYxYjc2IGxlZ2FjeS10cnVuaworMjUyMTUgMWYyZTkyODUwMTg4NzM4ODg5YWMzYjBkOTA1ZWZhMDI2YzJlODM1ZiBsZWdhY3ktdHJ1bmsKKzI1MjE2IDJmNjE2NDc0ZWFlYzdkZjVhYjE4YzU3MzM2MjljYzJkMDg5ZjZjY2QgbGVnYWN5LXRydW5rCisyNTIxNyA5Y2ZmODkwYjRmYjA3NmE4MzUxZjNkY2FmMGNlNjcwNjg0ZDZlMzMwIGxlZ2FjeS10cnVuaworMjUyMTggZDUyMWNmMDg5OWM4MDNiNTJiMGRhZWQ0OWI3ZTlkODU4N2I3MjE1NSBsZWdhY3ktdHJ1bmsKKzI1MjE5IDc2NjA3YTBjNjk1NjA4ZjU3NjMwNDQzMzg2YzQ2ODQxZDM0ZWExYTUgbGVnYWN5LXRydW5rCisyNTIyMCAyMGJjNGZmMTIxNWMwZmU3MGM4NzQwMTQwYmNmYjQ3NDI5NGRkMDY3IGxlZ2FjeS10cnVuaworMjUyMjEgZjVhYWI4ZWI4MTI0MTU3YjJkZmM5OGE1MmFhY2FiNmQwMjE0MGJjZSBsZWdhY3ktdHJ1bmsKKzI1MjIyIDUzYWM4Mjg0MjE3YWZkMWZhNzMzY2YyMjk1ZTMzNTE3MTE4MTEzMjcgbGVnYWN5LXRydW5rCisyNTIyMyBjYmY0MTkyNWRkM2U5MzE3MWIwZGQ5MTYxYTNmZjYwZGJhYjg2ZjdjIGxlZ2FjeS10cnVuaworMjUyMjQgZjcwOGE5MDdkYzY5MWE3YWNiMzg3NDQxNjQwZDM0YTZhYzM2YWYxNCBsZWdhY3ktdHJ1bmsKKzI1MjI1IDUzZmVjYzhkZDRjOTA1Y2NjNzc1YWUzNGJkYWM1ODM3MjQ3MDllZTQgbGVnYWN5LXRydW5rCisyNTIyNiA2ZjYyZDUxYzljMTI4MTlhZDMzODg4Njg5YjM5YmEwYzkzZmRmOTI0IGxlZ2FjeS10cnVuaworMjUyMjcgZGEwMDhiNWM1MDM1ZWMwNWRiNTI4OTExM2E0MzI1ZGM3ZWNiYzhlZCBsZWdhY3ktdHJ1bmsKKzI1MjI4IDNjZDBiNGJiNWUzNGQyNDlhYWMzODE3OTM1NzMxOWM0YzE5ZDc5YWEgbGVnYWN5LXRydW5rCisyNTIyOSBiNWQwMDJlOTA4MjdlMDZmZTdkYjFiYjUwOTMyMDA5MTY4ODhiNjFjIGxlZ2FjeS10cnVuaworMjUyMzAgMDQyZGIwMzgyY2QzYjgzMmY1ZWNlYWNlZGU2YzM2MzMxNTg2ZGQ5YiBsZWdhY3ktdHJ1bmsKKzI1MjMxIDUwNDNiNzM4YjA3MjBjM2YwZTA0YzI3NTI2ODBlN2YyNDQ5ZWJjNzIgbGVnYWN5LXRydW5rCisyNTIzMiBlZDg2MWUwZDRhNzFkNDg2NmNlNjE1MDMwOGE0MWI3MzQwZmM3NjhkIGxlZ2FjeS10cnVuaworMjUyMzMgODQ0ZmU3MjViMWNkNDMxMjhmZjVmZmZmZWJiMmY1NDY5ZjM2NTY4ZiByZWxlYXNlMjItbWFpbnQKKzI1MjM0IDRkNzIxMzU3YmRkYjVhOGFmNTY5OWU2Y2Q5NDJlZTZmMzU2MWFhNTYgcmVsZWFzZTIxLW1haW50CisyNTIzNSA3ZmFmMGZkZGY3ZTY4YWFmYzlkMmM2Mjc2MjUzYTdlNTI2ZjJhNTE3IGxlZ2FjeS10cnVuaworMjUyMzYgNzhlMzZmMDUyM2E4Yzg1OGEzYmQ3MzE3MDgxZDU2ZmQyYTlmODU1OSBsZWdhY3ktdHJ1bmsKKzI1MjM3IGU0ODg0NjcxN2MyNmYzYzM2OGJjNzk3YTYxYjUzZDQ3ZDZiZGNlZGMgbGVnYWN5LXRydW5rCisyNTIzOCA0OWQ5MzY4OTQwMmI1NGUwMTA0YmMzMGY2NDQyZDczN2NlMmRmODNiIGxlZ2FjeS10cnVuaworMjUyMzkgOGRhZmU0YTc4Y2FjNDY1MTVhNjNmNTQwMzQzNzA0NjQ4ZmFkMzE3MiByZWxlYXNlMjItbWFpbnQKKzI1MjQwIDM1Zjg0ODkzYWNmNzY5YzhkMmYwMGEwOTEwOWFhNWIxYmM0MWIwOTcgcmVsZWFzZTIyLW1haW50CisyNTI0MSAxYzc2OTIxN2MxMDU5ZjNmZTMzNTdlMGNlODk1NjU0MzY3NTM2MGYxIHJlbGVhc2UyMi1tYWludAorMjUyNDIgOTRiYWM4OGYxNTBmMDAxMDJmNTQwMjZiYTRmMjFhYTk0Njg2M2I0NCBsZWdhY3ktdHJ1bmsKKzI1MjQzIDBhODEzYTNkZGI5MmRkOWNhZjlhNWIxYzJiMjNlOGIyZWE1OGI2NTcgbGVnYWN5LXRydW5rCisyNTI0NCAwNGNmNGUxM2U1YzlmYjM0ZWQ3NDEzMGQ1ZDE5YWJmOTJjMTVlNjBlIGxlZ2FjeS10cnVuaworMjUyNDUgYzgyODZjYzcwMmM5OTI0ZjFlMmIyMTNjZmVlYWUyMjAyZmRkMDQwMiBsZWdhY3ktdHJ1bmsKKzI1MjQ2IGFiZWRiMjQxOGY2MjMxYWRmMjQyMDUwOTJhNTk5OTZmMWYxZTRjMDIgbGVnYWN5LXRydW5rCisyNTI0NyBlMTA4Njk3MjZjZDQxYjcyYThiMWY5MWRjMGFmM2IzM2Y0ZmM3NDU1IGxlZ2FjeS10cnVuaworMjUyNDggODM2YzFkYmYyM2EwZWE5ODFjZGY2M2IzZjcxZDM1NDI2NGJjYmYxZSBsZWdhY3ktdHJ1bmsKKzI1MjQ5IDE5ODM0Y2QxMDFkOTFiNWYzMjZlNDUxZDkxNDJlOTExNGFhZWZkMDcgbGVnYWN5LXRydW5rCisyNTI1MCA2NGU1YTM5ZjFmZjA5NjE1ODJmNjFhMzk1NjI3YTViYjVkNDI1ZjRlIGxlZ2FjeS10cnVuaworMjUyNTEgMTdhNTZlMWM2ZmY4ZTI3ZDJkM2RkOTY1M2U0YjFkMDZjMWY4OTI1YSBsZWdhY3ktdHJ1bmsKKzI1MjUyIDhlZDdjNjFiNWYxYmEzNWIxNWExYTRiNTE5MzExMjY2MjFiY2JlNTQgcmVsZWFzZTIyLW1haW50CisyNTI1MyA4NjEzZGYxN2YxOWJiZDM4ZTU5MTQxOGM4NGRkMWYyM2FjMTE4MDA3IHJlbGVhc2UyMi1tYWludAorMjUyNTQgZjI0NTk1NWIzZmJlN2Y0YTJjMWFhYWIyMjUwYTVkYjZmYjU3OGQxYiBsZWdhY3ktdHJ1bmsKKzI1MjU1IDIxZjU5ZDllZDE2OWY0ZGIwNzYzYjgzY2UwMDQ3YzBkZDgxZWE1MDMgbGVnYWN5LXRydW5rCisyNTI1NiA5MzczNDhlZjE4Yjg1NjA0MjNhODllNjkyNTgxNDBiNDY5YTIxNzNmIGxlZ2FjeS10cnVuaworMjUyNTcgOThlOTJhNjRlNzNjMmZmNzUxZWJhYjI1NWMxZjhkMTQ1MWMzZTZlMSByZWxlYXNlMjItbWFpbnQKKzI1MjU4IDg2ZmNkOTQzOGNiZWJkNzE4Mzc4ZTU0ZTY0YjIyYjllYzIyNWVhOWEgcmVsZWFzZTIyLW1haW50CisyNTI1OSA0YjVjMjhhNjJkMTZlNGE0Zjc4YzNiNGQzYTEyN2YwYmEzNzExODU0IHJlbGVhc2UyMS1tYWludAorMjUyNjAgNTdlYWE1ZDY5YWMzNWY1MGQ4MGE3ZGMwZDBmYzQ4MzBmMWZiOWU1YiBsZWdhY3ktdHJ1bmsKKzI1MjYxIDRjMWNjZjM2MDI1Y2Q5N2FhZGQwZWExMzE2N2ZhZmNkNDAxYzkwMDQgbGVnYWN5LXRydW5rCisyNTI2MiAxZjZiYzQ5OGU2ZTU2ZTJmYzU1ZTVlZjNkMDQ0MGJmYTI3YTdkODNlIGxlZ2FjeS10cnVuaworMjUyNjMgYzA1MThhZDcyYjkyZTBhYTljYWRhNTEwNjcwNTZiN2Y3MGVlMDAxMCBsZWdhY3ktdHJ1bmsKKzI1MjY0IGYwMDc4MWQ2NjRhOWE0YjQzMWViYjA3ZTQzZmExNjhkNmQ3NDc1YjggbGVnYWN5LXRydW5rCisyNTI2NSBkY2MwNzc4ZWI3ZDNiNDFjMTc4MmFjYmQzNjdkMTAxMjM2NTUxNWViIGxlZ2FjeS10cnVuaworMjUyNjYgZjg4MWUwNjE4ZGYwYWY2NjUwZDExZDY3NjVhNGYzMTRlYTc3YzQ1OSBsZWdhY3ktdHJ1bmsKKzI1MjY3IDdmNjUyM2IzMjE3OTI2MjNhNjFjMjZmMGIzMjUyNzZkNDJlMTlmMTEgbGVnYWN5LXRydW5rCisyNTI2OCAxNmZhZjY4NzUwMDQ1MmY5ZDJiMzMxMTgzYzRlYTZhZWJlMTZjYmQ1IGxlZ2FjeS10cnVuaworMjUyNjkgN2MzMGNiMTdjMmY2NTZkN2EwNTM2ZWI5ZWNjMzI3ZWYyMDhkY2YyYyBsZWdhY3ktdHJ1bmsKKzI1MjcwIDE2YzJhZTM2OWQ3MTVlMmU5ZjY3ZjA2ZjIxNTI4ZjNlOWNiZTMyMDAgbGVnYWN5LXRydW5rCisyNTI3MSA3OTRmZTM3Y2E1ZjRlOGI1OTk2M2IxOGQ3N2E2YWYzYmY4YzYzNjAzIGxlZ2FjeS10cnVuaworMjUyNzIgMTUxN2I0NTQ3Yjg3NjZjYTM4NzUwNTNmNTkwZDgxOTU5NjIxYjQwMyBsZWdhY3ktdHJ1bmsKKzI1MjczIDlkMmFlODUzMTk0NDA0NTg4MDZlNGZkOWFhMTAzOGE0ODkxOGYyOGEgbGVnYWN5LXRydW5rCisyNTI3NCAwYzY5OTkyY2NlMDk5NDZkMzg5NzVmMjM0MTNkNjAxZjQ3NzBhOGYxIGxlZ2FjeS10cnVuaworMjUyNzUgZTE2MzcxM2I0N2NmMjFiMTNjZDliODU5MWE2ZGMxNWFmNjgyZWYyYyBsZWdhY3ktdHJ1bmsKKzI1Mjc2IDE1YzBlN2FlZjY2NmQxODgzYzJkN2U1ZjcyYzliOGE0MGRmZGNjZTkgbGVnYWN5LXRydW5rCisyNTI3NyBiOTgxNWY0ZDhiZTM1ODU0OTU2ZmYyZjc3YThlNjYyY2M4MTlhM2QyIGxlZ2FjeS10cnVuaworMjUyNzggMDc2ZTlkYzc3YWFkYjM4NTcwMjM2NTVmNWVmNTEwZDg4OTg5YjdjNyBsZWdhY3ktdHJ1bmsKKzI1Mjc5IGMzNzYzOTc2MTEyZDVhZmZiYjllNDU1OWY5MDEwMjE4NWQ5NTM2YjcgbGVnYWN5LXRydW5rCisyNTI4MCA1OWJiNDNiNmViMTFmMjVmYzljNDIwZGYyM2UyOTg2OTdkODZhOTE2IGxlZ2FjeS10cnVuaworMjUyODEgMGY1ZGZhMzNmOWVlODRlMGQ2YzA3ODc2NTRjYWVjMGUyYmFiNDExNiBsZWdhY3ktdHJ1bmsKKzI1MjgyIGY3YWEzMjdmZjBmZWI5MjcxZTNlZmZhMmE2NDllNjllMWY4ZjhkMDAgbGVnYWN5LXRydW5rCisyNTI4MyBlZmI2ZTYxN2FlYTM5ZGQxYWFhN2YxY2M4YzkwZWE0MjE1NmFjOTBmIGxlZ2FjeS10cnVuaworMjUyODQgODdhZmY2NDhkOTk0ZTIzN2RjMjZlZjY2ZDQ0ODJhNWFmZDUyYThkYSBsZWdhY3ktdHJ1bmsKKzI1Mjg1IDEwOTdmNzMwMjk0YjJjOTBhOWM3YWJmNjI1NTNjYmNkNzViZWE1M2IgbGVnYWN5LXRydW5rCisyNTI4NiA5ZjZlMGNmMWFiMzA5N2ExNTVlNzVmZjJmMTNmODg3YzEwOTI1NmRmIGxlZ2FjeS10cnVuaworMjUyODcgMjQ0ODI5MjFhNzhhOWI5MmQ0YTU5NWQ5NTY2NTRkZjQ3YjY0YjMxYyBsZWdhY3ktdHJ1bmsKKzI1Mjg4IGExM2JmMmY3MjYyOWFiNjhhNzEzMDc1NGM3YTVjZDE2NjA4ZDc0MTUgbGVnYWN5LXRydW5rCisyNTI4OSA3ZTcxNTljMDI4MzA5MWY4ZmViN2IwZWViZjYwZDVjZjEyZWIyMmI0IGxlZ2FjeS10cnVuaworMjUyOTAgODhlMjE3ZTUwNTNmZTQ0N2RmZGQwNzhmNTBiMGU0YWY0N2RlMmYyOCBsZWdhY3ktdHJ1bmsKKzI1MjkxIDc3ODI0MTU4MWQ0YTM1NmM2MDM4M2VlZDZkYjYwNzYwM2RkMGYyOWMgU291cmNlRm9yZ2UKKzI1MjkzIDdmMzViYjkyZmJmNzUzNDgwMmI4OWQ3ZWU5Nzg3ODljNjAzNmJkZDAgU291cmNlRm9yZ2UKKzI1Mjk0IDdkNWIyYzY3OWYzYmNkMTNkNmY2OGEwN2ZlYWY3YzExMGQ3YjYwNTUgbGVnYWN5LXRydW5rCisyNTI5NSBhYjY4YWQ0M2Q1MTQzNWQ2MTAzYTU1NTRiNGUzMjg4NDA5YjBiMWY4IGxlZ2FjeS10cnVuaworMjUyOTYgYjM4NjI5YjkxNTQ1MTJiYWNkMzFkMTQzNGY1MWI3NjVlMTE5MDg2NyBsZWdhY3ktdHJ1bmsKKzI1Mjk3IDcxZmZjOWZiNTk4NmY1OTUzMWEwODU5Y2UwMDJiYzhlOTlmOTg2YTQgbGVnYWN5LXRydW5rCisyNTI5OCBlMjBkMTJiNWRhZDFjMGZjNjIzYWVmZTYwODUwZmQ0YjA4MDZjZjBmIGxlZ2FjeS10cnVuaworMjUyOTkgZDc0Mjc5OGNkNGI0YTQ2YjhjNDdhNzE5ZGNmODAxM2JhOWI2NjZkNyBsZWdhY3ktdHJ1bmsKKzI1MzAwIDgyOThlOWM1MzVkYTg0ZjE5MzVmYjUyZjI2M2VlMTVlMDYyZjhlZGIgbGVnYWN5LXRydW5rCisyNTMwMSA0YWIyOWIwNmE3NmNiYTBlMjJjNDhhMjNhMTUzMjVmYjY2MjRhNGUwIGxlZ2FjeS10cnVuaworMjUzMDIgNmJkZmM5ZjZmMDU5MDMyZDVlZmZjODA4YjRiMWFlNjEwMTRmMzYyMSBsZWdhY3ktdHJ1bmsKKzI1MzAzIDMyZDBlZjZmMTk1NTcwNjJjMmIwMzBhNjA4M2JkZjljMDAxZjIxMTcgbGVnYWN5LXRydW5rCisyNTMwNCBmNzQ1N2ZhYjc2ZjBkYmJjNzBiMjc5ZDE4NzRjYzNhMDkxMDA2NTA1IGxlZ2FjeS10cnVuaworMjUzMDUgOWQ0NGU3NTJkNjE3ZWM1NDA5YjRhZGZmOGY1ZjU5YmZkZDMyMTk3ZCBsZWdhY3ktdHJ1bmsKKzI1MzA2IDljODMyM2FiZjFkYmQyN2Q5Y2EwY2Q3ZDcyNTQ5OWU5YTU5NjkxNzYgbGVnYWN5LXRydW5rCisyNTMwNyBmMzkyMTM0MDVlMDVjNDhiNjM5ZjNjN2NhMmNiZTBlNjgyYmQ0M2MwIGxlZ2FjeS10cnVuaworMjUzMDggY2JmMWRiY2ExZjYzMGNjMzcwMmZjYmRlMGI3MWJkNjI4YTQ2Y2RkZCBsZWdhY3ktdHJ1bmsKKzI1MzA5IDc2NmM1OTM3YTYxZWM2NzdhOWQ4Mjc2NjEyMzlhZmZmMTAyZTYxMjkgbGVnYWN5LXRydW5rCisyNTMxMCA5MWE2ZGI2ZWZhMTQ5YTI1MTVjZWRhY2Q5ZTQ2ZWI1MzY1MTkwMWUzIHJlbGVhc2UyMi1tYWludAorMjUzMTEgZDI0NDExMDVhOWJmZjEwOGNlYzkwMzJkMjM1Y2RlMzBkODc3MTlhYyByZWxlYXNlMjEtbWFpbnQKKzI1MzEyIDE3Zjg0NjlmMDlkMjA3YWViMzUyMGI5NDYxN2YyNmEzM2NjM2RhMDMgbGVnYWN5LXRydW5rCisyNTMxMyA4MWMyYmRhNWQzNzc4ODg2NGQyMzhlZDFlYmI2ZWM4YzllNjcyZTM5IHJlbGVhc2UyMi1tYWludAorMjUzMTQgNDg2NDQ0NDUyMGQ5MmJjYTBkY2YwNzg2YzFlMjUwYjQ5NGFjYTMyYiBsZWdhY3ktdHJ1bmsKKzI1MzE1IDY3NmRiMDMwMGYwNjc3ODVmYmQ5Mjg0YjAxZTQ2N2EzNzE5YjhiMWIgcmVsZWFzZTIyLW1haW50CisyNTMxNiAwYzllYmNmMTdlYmZkNTkyOTZlMTY5YTRhOTk1MmE1YWVlYjg0MDdjIGxlZ2FjeS10cnVuaworMjUzMTcgOTdmNDllZGNiZGU3MjBhMDczNDhiNDUxYmY4Yzc2YTY4NjBkMzQxZSBsZWdhY3ktdHJ1bmsKKzI1MzE4IGI1NWYyZmY4YjI1ZjYxN2U0NGYzOTc5Yjk2NzFkMTE3YzgwNWMwYTUgcmVsZWFzZTIyLW1haW50CisyNTMxOSAyZTllMWIwMmI3ZDdiNjJiMjgyMmQ4MDc0NWNiYjE1M2IzYzc3ZWM1IHJlbGVhc2UyMS1tYWludAorMjUzMjAgOWZhNWQ0MGNjNzIyMmQ2ZjE3ZDU5MTk0ZjA4ZmIwNDMwMDNkN2IwYiBsZWdhY3ktdHJ1bmsKKzI1MzIxIDVlZDc4MmJkYmIyYWEwMDc5YTZkMWMzNTUwYjM4YzVhZDQ4OWQ3NTggbGVnYWN5LXRydW5rCisyNTMyMiAzOTU3ZDE1NWY4YzU1MDE5NGE4ZTVkMzhlYTYzOTM5ZjU2OGE0MDk0IGxlZ2FjeS10cnVuaworMjUzMjMgN2E5MTdhZDhmNDQyNGY1MmZkNDk2YjEwYWM5ZjdlZmQ1YzczMTUxYiBsZWdhY3ktdHJ1bmsKKzI1MzI0IGVhMjNlNmU0OTI5MDNkMTAzZTYzNjYzNWIzOTdjNTkwZGFmNTIxNDAgbGVnYWN5LXRydW5rCisyNTMyNSBkM2IxZjJjMGViY2ZjM2UzZjk5MDU1ZGM0NjQ4ZjBhYjY4NDM3ZjYzIGxlZ2FjeS10cnVuaworMjUzMjYgMmZhYTIzZmFjZWY3MmRmMjRlZjhiMzZhMmVhMzk4YWU1ZDE2MmI1YSByZWxlYXNlMjItbWFpbnQKKzI1MzI3IDk0YjkwY2RkNmUwZmU1ZTNmN2EyOTM5YmI1YTc0YTc4ODcwZGRhNzggbGVnYWN5LXRydW5rCisyNTMyOCBjNWQzZTQ1ODc0OWU3ODFlOGNkMzA2ZWQyNGZjYzRkN2NmYzE1ODZkIGxlZ2FjeS10cnVuaworMjUzMjkgOWM0MDI1MjNmOGY1YWI1N2Q0NTg4NzhhNGI0NWI3MjM0N2JjZjIwMSBsZWdhY3ktdHJ1bmsKKzI1MzMwIDRkNTU0NzAwYzRkMTcyMzI2OGE5ODY0M2Y4YjMyN2VlN2VhMDk0YjQgbGVnYWN5LXRydW5rCisyNTMzMSA2Mjc0MWIyNWVkNjUxNzg2NDg1MjU1OTNlZmZjNjc1NTE4OGMxMmVjIHJlbGVhc2UyMi1tYWludAorMjUzMzIgNzJjOTU0NDhlZTRiM2MwYjVjNGQ4MmY4ZWZjZGZmN2MzMTdhZGFmYyBsZWdhY3ktdHJ1bmsKKzI1MzMzIGIxYTg3MWRjNTE5NjJkNWI4MTM3ZjNmMjg2NGRmYzNmN2RjYmU1OWQgbGVnYWN5LXRydW5rCisyNTMzNCBmY2U3Mjc4ZDQ2YjBhODQ5MGU0NjliNWZjMzlkMDA2NzIyOGNmYzI1IGxlZ2FjeS10cnVuaworMjUzMzUgNGExMzM3OTA2NjA4ZmI3NmEzZTk0MDExNjgyZmIzNzlmN2Q4YjkyMSBsZWdhY3ktdHJ1bmsKKzI1MzM2IGVhOGRiNmY1ZDFjNTc5MjZjZTU3MTNkYzhkYjQ2NzE0ODhkMTcyMGYgbGVnYWN5LXRydW5rCisyNTMzNyAwNTJlZmMwNjUyMGEyMWRiZjY4YzFjODZjYmJlYWExMDc2NjMyOTk2IGxlZ2FjeS10cnVuaworMjUzMzggOGUwYzNiNzVlZmY1OGIxNWE5ODY2YmY4MGNjNGU5YjQ5OWViODEwZSBsZWdhY3ktdHJ1bmsKKzI1MzM5IGU5NjRlMGZjNGJmZTcxYmIzZDAzMjdlMDhhNjA1MGQxZTViY2FiODkgbGVnYWN5LXRydW5rCisyNTM0MCBhMGFkNjljMGJjMzY3ZjM0MTNkNTg3ZTRkODA5NTI5Nzk3MmJjZGQ3IGxlZ2FjeS10cnVuaworMjUzNDEgMTllM2Y4NjU5ZWVjZTJjNTBjM2YzNmM3YWJjNTI0NTVhMTQwZWJkYyByZWxlYXNlMjItbWFpbnQKKzI1MzQyIDg4YThmY2FkMDJkMGRjY2JjNGZmNzk3YTY3OGYyNGM2ZmMzYTA3ZTggbGVnYWN5LXRydW5rCisyNTM0MyBjODBmNTYwMTBiMjg1YzgzYmVlZGUzMWY2OTg0YjYxYTM4MzMxMmJiIGxlZ2FjeS10cnVuaworMjUzNDQgNGU5Y2MyNmUwM2ZkZTkwMzhjOWZiMWE2MTkxYWYyZDI2ZDFmNDM3MCByZWxlYXNlMjItbWFpbnQKKzI1MzQ1IGUwOGFiMzQ3ZDEyZThiM2ZhZmUyYWFlM2E0OWI4MDBjYjMzNTNhNDAgbGVnYWN5LXRydW5rCisyNTM0NiA0YzMzODdiYTExOWQwMTg3YjIyYTE1OGU0YjQyMWZkMTk4MzAyMDQ2IHJlbGVhc2UyMi1tYWludAorMjUzNDcgMThiNWM3ZjY0YzgwNWMxNWU0ZjZjZGEzY2E1MWI2MDQ1MTgyYjQyZiByZWxlYXNlMjItbWFpbnQKKzI1MzQ4IDliNDVhNTg3NGMwOTkxOWFjMGM0YWU2YzYwNThmYWVmYWE0MjM3ZDIgbGVnYWN5LXRydW5rCisyNTM0OSAzNWQ5ZjU2OTM2MWFmZTZjYTNkMDk2NTQxOTBhYTBjMWQxYmU2Y2FlIHJlbGVhc2UyMi1tYWludAorMjUzNTAgMGY2MzExMWJmNGM1ZDc3NWY5MjY2OTdkM2RhODg0M2FjNmRhYjgxMCBsZWdhY3ktdHJ1bmsKKzI1MzUxIGY5MmU4NjhlYjQ0MGI3NjA5OTQ4YTU1NzYyZGNiYzlhZWY2YzljZTcgbGVnYWN5LXRydW5rCisyNTM1MiBjODQzYmU1ZDU4YTlkYzhjN2RjMmJmNTRhNWE3NmM5OTM5MTM5MTk1IGxlZ2FjeS10cnVuaworMjUzNTMgMDlhYjljZTFmNTJhNjAyNGVlYjUyZTcxNTJlY2MzODBmODJhN2Q1YSByZWxlYXNlMjItbWFpbnQKKzI1MzU0IDA4YzViMGM3ZDlkODE4ZTdjYWVjOWM3NTEzN2Y3MTI5YjViY2FkODUgcmVsZWFzZTIyLW1haW50CisyNTM1NSBhN2ZiZGU2ZTM0YTUwZjQ1OGZkYmVlMWMzNGE2YWVhYjYzYTQ5NjljIHJlbGVhc2UyMi1tYWludAorMjUzNTYgNGU5OTYzMTRmOGZiNDQxMzlkMzgxYjg2MjZkM2ExZTc1NDc2MDkxMiByZWxlYXNlMjItbWFpbnQKKzI1MzU3IDFhYTBjZTYwZjZhODUyNzBjMTUyNDY4YjIxOWQ2MWM4OGI2NWU4ZTkgcmVsZWFzZTIyLW1haW50CisyNTM1OCAyNzE0NzM5ZDQ4M2I2MjdkNzEyODkwYzliZGFhZjYxMTRhNGI0NWE3IHJlbGVhc2UyMi1tYWludAorMjUzNTkgMGIxNWNmMTE0MzFlNGQxNzZlMGZmYzFhODY3NTQ3YjhkNDk5OWNkMSByZWxlYXNlMjItbWFpbnQKKzI1MzYwIGNiNWI0YTU0ZmYxMmE0Y2Q4MzAxZjYyNDZhYjM4OTk4M2UyYTM2NzAgcmVsZWFzZTIyLW1haW50CisyNTM2MSBkZWZkMmIxYTg0MjY4OGJmMTYzOTA5NjNlMWNiNzE1YjU0ZWEwZGE0IHJlbGVhc2UyMi1tYWludAorMjUzNjIgN2FlZTBmOGFmYWM1MDhjZTZmYzE4ZTBkNzFmMzRhNWY5NzExOWU4MSByZWxlYXNlMjItbWFpbnQKKzI1MzYzIGJjNWJmNzJmYjVkNDVkNGMwZDZhZWY2YTM1MjRmYjBkZTZjN2U0ODYgcmVsZWFzZTIyLW1haW50CisyNTM2NCA5NjU4NzQyNzllZTJkMjY2NTk2MTA1ZTNlNmZkNTNkZjIxYzBkOTM0IGxlZ2FjeS10cnVuaworMjUzNjUgNWU5NWYzZWU3N2VjMTQzYzdlMjNmMGU2NjVjNTcxNmYzYTQ4YjYxYiByZWxlYXNlMjItbWFpbnQKKzI1MzY2IGE2YTViMWZjYzJhN2U4ZjU0ZWEwMGNiMjJjNDJlNmU4MmQ3OGQxYjYgcmVsZWFzZTIxLW1haW50CisyNTM2NyA1MTI2NmIyYjQzNjBkNGU2ZDA5OTY5OTM1MGQ4YjllYjUxNTZmMWIzIGxlZ2FjeS10cnVuaworMjUzNjggNTJhYTNlM2U1NzdmMTIwYzU5MmM4ZmVjMGE3NzM3OWIyMGUxYjU0MCByZWxlYXNlMjItbWFpbnQKKzI1MzY5IDRjZGFmZmM5ZTE4Y2MwZjBiZTUzODIwM2U0NjU4NjY4YWJmY2M4MjEgbGVnYWN5LXRydW5rCisyNTM3MCA4YTc5MTMzMGZjMjAzYjZjMjUwNzQ1MzU3NzUyMWU5OTY0MjBiY2I0IHJlbGVhc2UyMi1tYWludAorMjUzNzEgZDI0YWFkZmUzYzA2YTlhOGJjMTczN2QwOWY0MzNlYzExZGIxZGFiOCByZWxlYXNlMjItbWFpbnQKKzI1MzcyIDhjZTE3ZGE5OGU4Y2JhZmNiOThlMGIxODIxODc0OTA0NWFmZjAyOWIgbGVnYWN5LXRydW5rCisyNTM3MyA4MmZiMGY5OWUyZGFkMzE4ZGU0MDNhNGRkOThiYmM1YzAyOWUxZjc2IGxlZ2FjeS10cnVuaworMjUzNzQgOTYzNjc1ZmU5N2U3ODkxZTIzOGZiZmQ5Yjc3MmFiZDg4YTgxMjY5MCBsZWdhY3ktdHJ1bmsKKzI1Mzc1IGU3OTk0OTg4MzZiOTRlYzlmZDQ1ZmIwYzYxZDU0N2ExYjFhOGQ2MDYgbGVnYWN5LXRydW5rCisyNTM3NiA5ODg1ZGEzZmVlZWNkMWIxMzBhYzNlNDBlOWMwODY4NjhiZjgxMzM2IGxlZ2FjeS10cnVuaworMjUzNzcgZTNmYjhkMTZhNTFhY2E1N2QzZjlhZjJhOGZkMzg4YzA0YTA0OGEwMCBsZWdhY3ktdHJ1bmsKKzI1Mzc4IDRlYjgxODY5ZjYxOTdiNWIyNWFlZGQwMzcyZDlkZGNmODk3NTk2ZDEgbGVnYWN5LXRydW5rCisyNTM3OSA0ODFlOWE0NmQ2ODAxMWIzMjM3OGJlZmYwYTZmYjliYWYzNjc1NWVmIGxlZ2FjeS10cnVuaworMjUzODAgODBhMDRjYmNkMGM4MDExYTYwMmVjMTA2NjYxM2U0NjkxNzQ0ZmY5MyByZWxlYXNlMjItbWFpbnQKKzI1MzgxIDQ0ZWRiZTBmMjE3NDhlOGUyZTNjZDUwMDEyYmFhODc1MGRkNTE4N2EgcmVsZWFzZTIyLW1haW50CisyNTM4MiAzMmQyNGY4ZDY0ZjdiMzZkYTc0NDI5MTY0NDZiYzYwMTFlMTQ3NWI1IHJlbGVhc2UyMi1tYWludAorMjUzODMgOWY1ZTM1Nzg2NzUyNTI3YmRiZTk2NjBhZGFiZDNlYjllYjE0NzcxMiByZWxlYXNlMjItbWFpbnQKKzI1Mzg0IDcxZjI1Zjk1ZTkwMjU5ZDUyMTA2ZDc0ZTVkMmNiZDVlNjQ4ZTZjMjEgcmVsZWFzZTIyLW1haW50CisyNTM4NSBiODY5MTYwMWQyYTAyODgyOTdhNTZkMTk5ZTE5ZjAwNjQ0ZjVmZDJjIHJlbGVhc2UyMi1tYWludAorMjUzODYgZTA2ODQ0MGUxMTZmOTM5NmU4NWZlZjE0MjgxMmZhYTcxNjNmNDZiMiByZWxlYXNlMjItbWFpbnQKKzI1Mzg3IDk1ZGMzMDI0OTI3Yzk4OGViZjE2MmRhNjU3NWRiMWRkOGE1NDA4OTcgcmVsZWFzZTIyLW1haW50CisyNTM4OCAwMmE3YzY0ZTMzMzFmOTk3ZGM1MDMyMDc4N2IyNDc2ODFiMzA2N2E0IHJlbGVhc2UyMi1tYWludAorMjUzODkgZmJlODIwZTBjNjAxZDY2NTc5ZjFiMDEzMGNiNjZkZmFmODAxOTY3OSByZWxlYXNlMjItbWFpbnQKKzI1MzkwIDdmYmVmZTNlM2RlZTJkNzIyYTVkY2RjNWY1ZWUzMmJhYWEzMmMwYWYgcmVsZWFzZTIyLW1haW50CisyNTM5MSA1NTZmYjdmMWI2MDY3NDNlMTg2NTRkZTNiZjU0OWYxY2Q3YjZjOTA4IHJlbGVhc2UyMi1tYWludAorMjUzOTIgYTViMjVhODE2YTZkNjhjMmU5M2NjODY0ZGMyNTlmYTg2NzVjODZkZSByZWxlYXNlMjItbWFpbnQKKzI1MzkzIDk5MzQxZTg1MDE3ZWE0NmJkZTgwY2RkY2QzNDU2NTZmOTg3OWNiNDMgcmVsZWFzZTIyLW1haW50CisyNTM5NCA3NjEwNzUyODBhOTVlNjBiZTFhNTZkZjU0NjI1NzhhZTdjMzkyOTM5IHJlbGVhc2UyMi1tYWludAorMjUzOTUgYjEyZTk3MTQzNjY4ZDg3ZDhiNmRiM2E1ODJkNDA1NTdkOWRiY2ViYiByZWxlYXNlMjItbWFpbnQKKzI1Mzk2IGZkYWFmYWE4OTU4N2Q3OTkwYzRlY2VlYWEwZDA4ODNhNzNhMjU2YTkgcmVsZWFzZTIyLW1haW50CisyNTM5NyBhZTQ4ZDU0MWY2NWFjMzlhYTY1ZWJhOGQxMmY0NmE1MGJiMWQ4MmZhIHJlbGVhc2UyMi1tYWludAorMjUzOTggMjI5M2UwZDdiNWM0NTA2ZmUxMzU4M2U3NmRmOWYwNWFlYjBmMWNlNiByZWxlYXNlMjItbWFpbnQKKzI1Mzk5IDIyOWI2MjRjNmI1NGM5MTYwYjM5MjM0M2JiYTY0YTU2NWUzMjc0NmMgcmVsZWFzZTIyLW1haW50CisyNTQwMCA3MjIzYzU0YjA3Mjc2ZDk4MGRkZTg5MzNhNWRiMDI5OTAyM2E1YmFiIHJlbGVhc2UyMi1tYWludAorMjU0MDEgZTZkNDRjZjI5ZGJmOTc2YTUxZTRmNWFjZGNiYWJmMDQ4NTZlZjAwMyByZWxlYXNlMjItbWFpbnQKKzI1NDAyIDEzMzljYmU5NGNlZTU1NDVhMzJiYjJmZWU0MWM0ZDM1OThkYTc4N2QgcmVsZWFzZTIyLW1haW50CisyNTQwMyA4NzVmYjViNzI5MTBjMzUxZjhhMjQzZDAzMDNiYzFmYWRiZTU2Nzg5IHJlbGVhc2UyMi1tYWludAorMjU0MDQgZTBhMjg4ZGIwMjJkZTFiMTFjY2JmY2E2NGFiZjU1OTYyZjE4OWU4NiBsZWdhY3ktdHJ1bmsKKzI1NDA1IGYzODYzMzAzYTlmNGZhNTVmMGJlYWM3NzkwYWRmNzBjYmI2ZmU3ZmUgcmVsZWFzZTIyLW1haW50CisyNTQwNiA0N2FhMTA4MWFmMjgwOTgwMDdlMWRmZjg4NTlmYTY0YWI0ZDUzMDUzIGxlZ2FjeS10cnVuaworMjU0MDcgMTQ5OGM2ZTRiNDNhMWY2ZGI5MTBlYmZlZmNkNGJlMzllMDdhZGQ4ZiByZWxlYXNlMjItbWFpbnQKKzI1NDA4IGNhMmNiYTEwYjQ0ODdhYWYwZmZmMjk1ZWYwZTU2Y2YwMDgzZGNiNTcgbGVnYWN5LXRydW5rCisyNTQwOSAyNzYyZDIyNTFlODVkYzY0YTc2MjEwYTExYTVmMGU0ZDNjZWYxNWQ5IGxlZ2FjeS10cnVuaworMjU0MTAgZWZhMjNkMjZmYTM1ZDQ2ZTRmZWNjNDc0NGY1MTFiODFkMTdmOGVhMyByZWxlYXNlMjEtbWFpbnQKKzI1NDExIDZiZTY1OTIzYzAyZDZkYzQ2NTUxZjk5Yjc4NzA0ZGM5ZmE3YmY3MWIgcmVsZWFzZTIyLW1haW50CisyNTQxMiA5YjFjYzk5ZjU5MzJhODQ5NzhjMjM4ZTM1NDQ5YWNhNmIzMmU2MjMxIGxlZ2FjeS10cnVuaworMjU0MTMgZWNmZjQwNDYxOTdkYTE4MDhiN2EyMWQ4MGEzMzIxY2VlNzBhOGZmMyBsZWdhY3ktdHJ1bmsKKzI1NDE0IGUzMWFkNGRkMzBkOTk4ODMzMzhkYjc1MzM3NzliMGNjNGI3ODVlYWMgbGVnYWN5LXRydW5rCisyNTQxNSAwOGQ1Y2Y1OTZiMDEwNzFjMGRjNjNjNDA3NGVjNjEwMzcxMjcxZDY5IGxlZ2FjeS10cnVuaworMjU0MTYgNDkxOTdmZDc2MzYyYjJmNzRmZWViYjM1Y2JiMjE4MGZhZWE0Y2U1MSBsZWdhY3ktdHJ1bmsKKzI1NDE3IDVjYmNmZGUzYWQ1NTA3NjdkZjg4YTE5NTE0NTQ2N2EzZWQ2ZTNkZTcgbGVnYWN5LXRydW5rCisyNTQxOCA4NmQwZjdmODY1NTA1ODdhMTkxNDU3ZmY4NWQ0NWE3NmQ5MGQyZDk4IHJlbGVhc2UyMi1tYWludAorMjU0MTkgOWYxZWI4ZmYxNzk1NmFkOGUyODE3NjU1MjRmZGRlYTU5ZjJkZWM0NCBsZWdhY3ktdHJ1bmsKKzI1NDIwIDQzODU0MzExNjRkYTU5ZmM2NWM3Njk2YjdjOTI5YjllY2E5MWY1NzUgbGVnYWN5LXRydW5rCisyNTQyMSBjYThhMjg0OWRkNTZlYzEzN2M1ZWY2ZjFiNTE1ZTM4NDA1ZjBlZWRjIHJlbGVhc2UyMi1tYWludAorMjU0MjIgNDZiY2VlMTFiNDgwNTBkMTE1OTVmMmQwM2FhMzQ1YzM1MzdkZTY0MyBsZWdhY3ktdHJ1bmsKKzI1NDIzIDUxZWUzYmRkYjcyY2U2ZTQxMzRjNzEyZGI0M2ExYmVjNjMwODhhOWMgcmVsZWFzZTIyLW1haW50CisyNTQyNCA1Y2I2Y2M0NmNkNDJjZTRkNjQ4NTgwZTVmYTdjZDYyMzNjNTU1MzU4IHJlbGVhc2UyMi1tYWludAorMjU0MjUgMTA4N2NhNTE5ZWI5YWU3ZjI1ZTM2M2YzYTg4M2NhYTliYWFhNjE0NyByZWxlYXNlMjItbWFpbnQKKzI1NDI2IGE1MGJhYTEyNmM3NWU2ZThkNmNmOGRkNTRiZDA1MzJmMDg2YWM4YzggcmVsZWFzZTIyLW1haW50CisyNTQyNyBiODM3NGRlODRlMmFlNzM1MTUxY2JhNDYxYzM1NzI3ZDA0NjkzZmEzIHJlbGVhc2UyMi1tYWludAorMjU0MjggOTcyMjRhOWNjODNjNjUxMmE3MGRmYjZhOTg3Y2U3Nzc2YWFmZWVjMiByZWxlYXNlMjItbWFpbnQKKzI1NDI5IGY1NzZkOTAwMDI2ZjM2Yjk1OTkzZjY0OTVlZjU4MDQ4OTM5N2Y1NWEgcmVsZWFzZTIyLW1haW50CisyNTQzMCA1YzE0OGY1ZTFjMTE0MjAwMjU5YmJjNzg0ZTViNDcwZTMwMTY5N2EzIHJlbGVhc2UyMi1tYWludAorMjU0MzEgM2MzYWNhYzg2NzM0NTQ5ZmEyNTAzMzI4YTllM2MyZWMyMWQwZmZkYSByZWxlYXNlMjItbWFpbnQKKzI1NDMyIDUwMzJlYzg5MWU3NDU2M2U4ZDJiMTM2MzdiZjMzZDgyNmVkYzFmZjIgcmVsZWFzZTIyLW1haW50CisyNTQzMyA0YmJhY2FlZGM2ZTJkNzQxNWJiMDI1YzQ2YTVjMGU4NWVmYTc0MTNjIHJlbGVhc2UyMi1tYWludAorMjU0MzQgYzJmOTBjZTU5NzU1Mzk4MzEzN2FiMDc3Mjg3YmY1ZmM2NDBlMWQ3NiByZWxlYXNlMjItbWFpbnQKKzI1NDM1IDUyMTA2MjkwZDM5MmM5NGFlNGVkNGI0MmU1YTVjODk4OWJjZGQ2MzAgcmVsZWFzZTIyLW1haW50CisyNTQzNiBlY2U0MzE1YzEyMDZmN2Q0MmI0NDFiOTgyNzM1ZWRkYzNhOGY4ZjQ4IHJlbGVhc2UyMi1tYWludAorMjU0MzcgNjU5MjZhOTcwYTE3MWM4MWUzMmQwMzgzNjA2ZGRlYWMyZDQwYjZkYyByZWxlYXNlMjItbWFpbnQKKzI1NDM4IDVkMWIyMjAzYjZlY2Y3Y2QyNTZiM2Y3ODYzZjkzMDc4NjIzMjUzMmQgcmVsZWFzZTIyLW1haW50CisyNTQzOSBiMzgzYzNmZjNiMWVjYmUyNmYxNjM0Y2EzMzhmZTYyOTBjN2JjNTYyIHJlbGVhc2UyMi1tYWludAorMjU0NDAgMjg1MmI0Y2I3ZjZhYmYwODY0NWQ1NTcwMGFiMjk5Yzg0YTkxYzVlZiByZWxlYXNlMjItbWFpbnQKKzI1NDQxIGI3MDIxMWMxZDI1Njc5ZTRlNGEzY2NjMTE2YTU4MDczOTZjNjdhZmIgcmVsZWFzZTIyLW1haW50CisyNTQ0MiBiNWI3NzM1MGEwMDQ0MDNkNzA0ZTdlMDc0MDEyODQwNmFhNzQ0NWU4IGxlZ2FjeS10cnVuaworMjU0NDMgOGQ1ZGMxYTdlZTE4N2JjYTEwMmUwMGU1NzM4ZjY0NTkxZTY2NWI2OCBsZWdhY3ktdHJ1bmsKKzI1NDQ0IDYwNzJmYTQxMGRjYzk0YTRjM2M5YzAzY2U5ZWIzYjFhOGU2NGJlOTMgcmVsZWFzZTIyLW1haW50CisyNTQ0NSA1NWM0ZDA4M2MzMDlhMGVhNzcyYTcwYzUxMDk0OTg4OGI0ODgxNjAwIGxlZ2FjeS10cnVuaworMjU0NDYgZGZlYWMwMzM0NTc0Zjc5ZTA2YjkzNGMzZjA5NThkNDVkMGViMDE0OSByZWxlYXNlMjItbWFpbnQKKzI1NDQ3IGFkM2Q1OTYxMjM0NWEyNDEyOGI4NmM4OTlhMmQzYTlmY2YwOGIwMWUgcmVsZWFzZTIyLW1haW50CisyNTQ0OCA2OGE2YTlkZDQyZjgwMTFjZmZjNTFiNjVmN2UyZDMwOTJkMGEyNjI5IHJlbGVhc2UyMi1tYWludAorMjU0NDkgYTlhZjg5ODY4Njg5YTA1OGZmMGZiYzNlZWIyOWYzNTZhMmE4YjhkOSByZWxlYXNlMjItbWFpbnQKKzI1NDUwIDViMjRhNmFlMmRjNGYwZDhkZmVlYjJhYTg0N2NlM2ZlNGRlNzMxOWMgbGVnYWN5LXRydW5rCisyNTQ1MSA3MzZmYjVhZWM5YjNiN2MxZTU3NzZmZGE4Mjg4YTAzOTlmNmNlZDUyIGxlZ2FjeS10cnVuaworMjU0NTIgNDAwOWMwODQwMmIxNDU2MDU1MjBlNjc0OGNkNDU0MmM4ZTJlMGQ5NiBsZWdhY3ktdHJ1bmsKKzI1NDUzIDkwZDNjZTNlYjE5Y2I1OWFjOTE2NjI3ZDBlOWI3NWNlNjIzYmIyZDMgbGVnYWN5LXRydW5rCisyNTQ1NCA3MDY1MTM1ZjkyMDJmMzhjZTg4ZGExYTRjZDc1YTI5MDUwYzM5NDdiIGxlZ2FjeS10cnVuaworMjU0NTUgN2EzZTAzYjU0MWZmYjEyNzgxMmFlZWM3MzQ4ZDBmMjQ1NjQwNDFlMyBsZWdhY3ktdHJ1bmsKKzI1NDU2IGNjOGI3ZjcxMTI3ZDg0ZDBmYTUzOGQ4YjgwMTczOWM0Y2Q2Y2M3MGQgcmVsZWFzZTIyLW1haW50CisyNTQ1NyA2NmM3NDVhN2FiYjFmZTgyMWVhYjU0YzUyNmFhNDUxM2U3ZmJiMTQ4IGxlZ2FjeS10cnVuaworMjU0NTggNTk1NWUwZTI5NzZkM2U5MTUxNDc2ZjdmNmIxYWJiN2QzODM4ZGM0MyBsZWdhY3ktdHJ1bmsKKzI1NDU5IDllNWZmNjc0NzQzN2Y5ZmU0Mzk2YTlhMTkyN2QwMjQzZTYzYWNmYTIgbGVnYWN5LXRydW5rCisyNTQ2MCAyZWZkNDNjYTAzM2Y2NDlkZTEzNTI1NzkxZDFlOGViODY5ZjdlOTNkIHJlbGVhc2UyMi1tYWludAorMjU0NjEgOTY2NzI1MDk1ODU0NmRmMmNlZDk5YmQ5NzEyODhlOTNhMDBjNjViZCBsZWdhY3ktdHJ1bmsKKzI1NDYyIGQwYWNiM2NiMDExZGE1NWViNzU2MzExNzRkNGY3OWIwZTlmZTU2N2EgbGVnYWN5LXRydW5rCisyNTQ2MyA0MjNiYzliNTFhN2U0MTMzYzVkYjQ1NWQ5ZjdiYTQ4OGI0NjVhNWM0IGxlZ2FjeS10cnVuaworMjU0NjQgYzgxZThlYTBjNGJhN2M3MzY1Nzk2NDhiY2I5NDJkOGE4YzUyYmNiMyBsZWdhY3ktdHJ1bmsKKzI1NDY1IGZjZjBjMjQ0ZTI4N2U5MmQ2YzYwMDZhYmRjZGFiMGRmM2MwYWE0NTkgcmVsZWFzZTIyLW1haW50CisyNTQ2NiA2NDQyZmJlNWRkMDQyNDBhMTY1NzUwZWNjOTA1NTQ5ZDRlZWUwZDdkIGxlZ2FjeS10cnVuaworMjU0NjcgY2QwY2U0NzBjMTUzYzk0OGFhYWY4ZmM0YzUzOWQyOTFhYzc2NGQwOSBsZWdhY3ktdHJ1bmsKKzI1NDY4IGQzODQ1ODA1MjQ0MmZmMTUyY2RhNDlhYjk4N2QwNzcxZTQ0ZWI4NmYgbGVnYWN5LXRydW5rCisyNTQ2OSA5M2ViNGI2MWY2ODdiYmRiNDA2NDI0NGNjNWZkOTEyMDVhZDcwZjg1IGxlZ2FjeS10cnVuaworMjU0NzAgMTNhYzI3ZmEwNzA0ODM5NDEwZmQ1YmVkY2ViYjM0NDdjN2ViZDRmYSBsZWdhY3ktdHJ1bmsKKzI1NDcxIDM1NGNkZTdmOTBhMTUyN2FhZmI2OGY4MTk3MzI4ZmJiZTA2MTliN2IgbGVnYWN5LXRydW5rCisyNTQ3MiA1OGYyYzI5OWI2NTQ0MzM4YjA3NjcyZWJiOTg5NDI5MTY5ZDg4NDJhIGxlZ2FjeS10cnVuaworMjU0NzMgYWQ3OTY5ZThmNThkZmFjMzk1MTk4NjQyOTQ1YmJjZTY1YTBjZDYwZCBsZWdhY3ktdHJ1bmsKKzI1NDc0IGM0OTQwODRkYzZkODg5MDgzMWQzMmRlYzNmZmI4OTVlYjUwODFlNzggbGVnYWN5LXRydW5rCisyNTQ3NSA4YjEwNGE4NWI5OWM3YTI3Nzc3NGExZmU2MDkyYzkxMWE4MmE5MGFiIGxlZ2FjeS10cnVuaworMjU0NzYgNzlmMjkyZGJhYmNlYTI5NWRiNmE2MTBjOTQyYjUzMTE1OTFhZWYwMiBsZWdhY3ktdHJ1bmsKKzI1NDc3IGM0NTRiNzZkNTFlN2I5MDA3MTVjZmU0MjI5ZDBlYzU1YzQ4MjAyM2EgbGVnYWN5LXRydW5rCisyNTQ3OCBkMTA0YmI1MGExOTRkMzJhZWNkNTAxNTVlZWRjYjEzZGFjMDc2YmIzIGxlZ2FjeS10cnVuaworMjU0NzkgMGM0MjMwMjY5ZWQzZWZiOThjOTdlNGI2ODQwMmIwYjQzNTliNTdmNSBsZWdhY3ktdHJ1bmsKKzI1NDgwIDEwNDY5NjQ4OTZhMWE0ZTM5NjY0NjU4NTJkYWM0YjQ5ZmI5ZGY4NjcgbGVnYWN5LXRydW5rCisyNTQ4MSBjYmMwOGIxNzJkMWZkNjE3NWJlZDliNjQwNjM0OTUxMTYyMjRkNzMyIGxlZ2FjeS10cnVuaworMjU0ODIgMDg1OWU3NjQ1MDllNmE5NjI2MTQ0Mjc1NDI0YjNhMmQxMGM0ZWVlYyByZWxlYXNlMjItbWFpbnQKKzI1NDgzIGIyYTJjYzBjMmE2MzczMGI4NTMwY2MzNWQ5NzNhNmFiMGUwMDkxNjkgbGVnYWN5LXRydW5rCisyNTQ4NCBkNDQwNmZiZmNiNGU1NGU5YjQxNTM0ZTkwOTc4NDQ0NWM4MmYyMjA4IHJlbGVhc2UyMi1tYWludAorMjU0ODUgMDc0YjdlM2U1NDhkOGU3MzExMWU5YWQ5MmZlYThhMGNkZGMxNjBiNiBsZWdhY3ktdHJ1bmsKKzI1NDg2IDNhMDZlMTlkZjQ2YjkwM2IyOTdhZWUzODM0YWRmMTRlNjg0OGNhYmIgbGVnYWN5LXRydW5rCisyNTQ4NyBlZGYwNWM2OWJiZjNiYmJlNTAzNWZiZmM0NjgwYzA2OTBkMTg1YjVhIGxlZ2FjeS10cnVuaworMjU0ODggNzRmMTZmN2E2MzY5NjY5N2M2MTllNmRlMTJmMjAzYTBiZjk5MTdmOCBsZWdhY3ktdHJ1bmsKKzI1NDg5IDk4NmViMWQ0ZWJlZjUzYWY0NTY4MzZhMzBiOTk5ZGY1NjMxMTAzY2UgbGVnYWN5LXRydW5rCisyNTQ5MCA1OTk0NDQwZTVkZDUyYjg2YzUzN2RhMzBiMDcwYTViZmU0ZmU1OTJiIGxlZ2FjeS10cnVuaworMjU0OTEgMmJmZDEzN2E5NzZmNTk4M2U0ZTdjMTY5MWQyN2RjOTUzMDEzYTk3OCBsZWdhY3ktdHJ1bmsKKzI1NDkyIGUxM2FhNGM2NzJhOTQ5YmE4NzBjOGQ4Yzg2NTcyNjc5ZWRlMzdlNWIgbGVnYWN5LXRydW5rCisyNTQ5MyBlODFiMzA3NmE2YzMwZDljYTQyN2M2NWRiOTIxZGM5NjVhODJhYWYyIGxlZ2FjeS10cnVuaworMjU0OTQgY2NhOTg4ZjNmNjRmMjA0N2EzZjRmM2UxNDJjNmJhZDQzMjdjMThjNyBsZWdhY3ktdHJ1bmsKKzI1NDk1IDk5ZTYwODE3Y2U2ZWNlMjUzMTk2ZjE5NDIzNGFjM2QxOGY3ZjY1NWUgcmVsZWFzZTIyLW1haW50CisyNTQ5NiA1NDkzMjA1NGY2YTk0MWU1ZWJhOGM4YjI3NWJkODM4MDI5NmViZWNmIHJlbGVhc2UyMi1tYWludAorMjU0OTcgZTU5OWU3YjhhYmY3MDI1M2JkZTViZDRkZWI0ZTdlZmI2NDI1ZmExNSByZWxlYXNlMjItbWFpbnQKKzI1NDk4IDlmZGRlOGNjZGNhNjVlNDRiODY3M2YwYTIzMzE0ZWQyMTk4OWYxMTggcmVsZWFzZTIyLW1haW50CisyNTQ5OSA3ZTE4ODE0MGI2MTgxYzI3OTMwOWVhZTIzOTg1YTZjOWRkMDUzZGUxIHJlbGVhc2UyMi1tYWludAorMjU1MDAgMWE1MTEwYjRiZDcyYTJlMDZiOTYyMzYzMzlmNWJlMTA3MGU2MmVlNCByZWxlYXNlMjItbWFpbnQKKzI1NTAxIGVkMmExN2EzNzZkMGM2YmVlNmUzNGJjMWJiMGRiZTI4ODRjZjYyZGYgcmVsZWFzZTIyLW1haW50CisyNTUwMiAzNDc3MDMwMzI3YTYwZTMwZmFhZDI4YzhjYjZkMDIyMzdhZDM0ZjIxIHJlbGVhc2UyMi1tYWludAorMjU1MDMgMWU4YmU3NGEzNzRiYmFkZDYyMjY1NjRlMWJkNmY2YmU0YjVjOTdhMyByZWxlYXNlMjItbWFpbnQKKzI1NTA0IDRmZjlmOGE3NGM4MjdlZjNlYTJiMzEyNWRlOGU1YzliMGRmNWI5MGMgcmVsZWFzZTIyLW1haW50CisyNTUwNSBjMjVkNmQ3ODBiMWI0NzJkOGI1YTYzNTI3NWIzNmUzZWU5YWYwOTJkIHJlbGVhc2UyMi1tYWludAorMjU1MDYgZmQwZWUwYTA3MDQ3ZDE3ZWM3MThmMTQyNDg5OWVkZGI2MTQ0N2NjNSByZWxlYXNlMjItbWFpbnQKKzI1NTA3IDhlYjU5MWRkNzY4MjY4ZDBmYWI5MTZiYjljMzRjMDM0M2VmODBiY2QgcmVsZWFzZTIyLW1haW50CisyNTUwOCBiZWY0NGQxMDhlNTc2MTM4MGYyMGRiM2Q3M2IwOWZkYTcxMDc0YmI3IHJlbGVhc2UyMi1tYWludAorMjU1MDkgZGIwNDA5MzhkYzY2M2IzZDZlZWRkNjE1NWUxZWY3MmU1MGNiZDkyMyByZWxlYXNlMjItbWFpbnQKKzI1NTEwIDFkMWEwMWQ5NTZhMmVmMGU4NDlmMDhkNjhlNjVjMTY2MDk2YjA4NjYgcmVsZWFzZTIyLW1haW50CisyNTUxMSBlYTliZTJlNWQ5NTQ0NTQ0MWJmNzNmMDIyZDFjNTFkZmNhM2RlM2RkIGxlZ2FjeS10cnVuaworMjU1MTIgMWU2MGIxZTE4MTQ1ZGRlMjgyY2E5NGNiMTJiODkxOWJkMWYxMWJmOSByZWxlYXNlMjItbWFpbnQKKzI1NTEzIGU0ZDdlNTEyOWU0YzE2N2QwY2JmOWEyNmQ5ZjRkODEyY2Y5OGZlMTUgbGVnYWN5LXRydW5rCisyNTUxNCA0YjM0NTk1MWE1YzUxY2ZkZmQ1MzVhNzk2ZDQyMmMxYzdiMTYxZmExIGxlZ2FjeS10cnVuaworMjU1MTUgYTUzNzMwY2QyOWMxNDc0YTVkN2NjOGJlM2M4OTI5YjdmYTc4NmQ5MSByZWxlYXNlMjItbWFpbnQKKzI1NTE2IDUxMzEwMzI0OTQ2MmQ3YzViM2Y3YmEwYjBiOGZiNDI4ZGRmZDg5ZTYgbGVnYWN5LXRydW5rCisyNTUxNyBlODFhNGU5OWVjZmEzYzZiMTIxMzViMzlhYzVkZmJjZDUwMDVjODY3IGxlZ2FjeS10cnVuaworMjU1MTggMzQ1ZGVmMzdiMGQ3YTU4N2U3NTBhNDZiNmZlMDM4MmY5ZTY2M2ViMSBsZWdhY3ktdHJ1bmsKKzI1NTE5IGUzMDE2MmIxYjMwNDY4ZGJmYzYxOTRmNjc3MmYwNWZjYjNlODExNTQgcmVsZWFzZTIyLW1haW50CisyNTUyMCAyYjNmNDM4MDY3M2Y4MTYyZmYxMjhkMmNjYjg5MmIxYmZiMDBmMzk4IHJlbGVhc2UyMi1tYWludAorMjU1MjEgYjFkNTczYTJhNzc0NWIzNzkzZmRhZGU0Njg0M2ZjYTg3MzQ3YTRhMSByZWxlYXNlMjItbWFpbnQKKzI1NTIyIDcxOTAyZTFjZmJlZjMwYjE3NmI4YjZlODlmZDljZWE0OGRjYjQ1ZDEgbGVnYWN5LXRydW5rCisyNTUyMyBkNjk3ZDg4ZDI1YjQwY2FlYWNjNTBhNDFmNzk4ZGYxMGIzOGJkZGYzIGxlZ2FjeS10cnVuaworMjU1MjQgYWY1MmJmOGUyYjg5ZjQzNTVhMGFhZDI2MWU0MWE5NjY4NmJmZWU4ZCByZWxlYXNlMjItbWFpbnQKKzI1NTI1IDgxZGZhMmRiNGM2MWIzMGVjYjg4M2VmNWY4NGE4NzUxMTVhNDIxY2IgcmVsZWFzZTIyLW1haW50CisyNTUyNiA0Mjg2MjE2OTU0MWZiOWQ1MDMwYTU5YTA1NWYwMDgwNzFlNmEyMDIzIHJlbGVhc2UyMi1tYWludAorMjU1MjcgYWY2MTIyZGYyOGUwN2U0MmNhNTY5ODA4NWYyMmE1NTRmYThiMjZjNiByZWxlYXNlMjItbWFpbnQKKzI1NTI4IDIyYzY2NTg3YzQ1MmUyNDk5OGNjMjM5ZmMxZDdlZmY5Mzk1YTFkMDMgcmVsZWFzZTIyLW1haW50CisyNTUyOSA4Mzc5NTFlY2RjZTk1NzU0Yzk5OWU4NTVkMWRhOWY2ZmQ1ZWU0ZmViIHJlbGVhc2UyMi1tYWludAorMjU1MzAgODU3OWQzZDMwMWQ0OGQ0ODUwYWVkNjQ0NGQwNjMyZGUxYjRjZWE3NCBsZWdhY3ktdHJ1bmsKKzI1NTMxIDY4ODMxYWM1NDk1YmIwMTNmZDAzZjg5MDQyMGY0ZTgyZDRkMDAzZjkgcmVsZWFzZTIyLW1haW50CisyNTUzMiA0ZDViZWNjNjkwMmJjY2YzZjZjYmY0Yzc4MzY5MDAwNDBiYTlhM2VlIGxlZ2FjeS10cnVuaworMjU1MzMgMzJhMWI0ODRhMmYzYTUyYThjNGU4ZTA5ZjNmNzdhM2FjYTZhYzVlYSBsZWdhY3ktdHJ1bmsKKzI1NTM0IDEwM2M0YzRjY2NmYjdiNzk0YmUzNTM3ZjBlOWNjNWFlMmQwMjE3MzIgcmVsZWFzZTIyLW1haW50CisyNTUzNSBjYThiZDk5N2U0MTlkNDE4OTY5Yzg2YjkxMWZiYzYzMmMzYzA4NGQ1IHJlbGVhc2UyMS1tYWludAorMjU1MzYgYzVjOWUzNmMzOTA5OWY5MzkzNzFlODQ5ZDc4ZDFkMjk1ZTgyYTIyZSBsZWdhY3ktdHJ1bmsKKzI1NTM3IDBlM2U2OWUwMWVjZDY0N2Q5YmYzNTdiMDVjYjJiODlmMTY2NWM3NGQgbGVnYWN5LXRydW5rCisyNTUzOCBjZGEzMDZiMjMyMWY2ZDYyYjU1YjY0MzRhZTExYmQ5Y2U5MjI2ZjY1IGxlZ2FjeS10cnVuaworMjU1MzkgZTIxOTZiYTM0MzMwZmNmZDlhNjg2NTI3YTI4YzcyZGVmMTEyOGRiNSBsZWdhY3ktdHJ1bmsKKzI1NTQwIGVlMzNiYmFmMzM4MTkzNGY2YjdmYWI3ODEyYWRjNjdhOTU4ZDkzZGIgbGVnYWN5LXRydW5rCisyNTU0MSA2ZmE1NmM0M2ExYmFlNDhjOGEwMTljOTVhOGYwMThmYTc4MDE1NmM1IGxlZ2FjeS10cnVuaworMjU1NDIgZGFmMDRkYjFhNjk5OGQ3OTJjMDQ1ZDZiZTljMGY5YWE3N2FiMjY2ZiByZWxlYXNlMjItbWFpbnQKKzI1NTQzIDI2NjMzNGE1YzRjYTI2YzY1ZTYzMjNmOTZkY2RhMjZlMjE0MzNiYWUgcmVsZWFzZTIyLW1haW50CisyNTU0NCBkMmE3NmY3ZGQ2NTEwNjZkNjc3YmQ0ZTUwMDNjNTIyZmQxZTA4MzdiIHJlbGVhc2UyMi1tYWludAorMjU1NDUgZjhhOWRiNjdmYTViNDVlOWRlYmJiMTUzYjcwMjczMzYxMzY3M2U4NyByZWxlYXNlMjItbWFpbnQKKzI1NTQ2IDUzNGU3OTA1OWJlMTAwODc2ODRkZjkwNjYwMWVlODI1OGI2NDY5ZjIgbGVnYWN5LXRydW5rCisyNTU0NyA4MWE4ZGIxNWZiOTg4YmVhNDA5MzRkZWQ0ZmFlMjEzZjkzMTc5NGVkIHJlbGVhc2UyMi1tYWludAorMjU1NDggYWMxMTMxZjczZDFmZDcwOWRiNzY4ODNhZjkzNDM2YmE4ZTE1ZjRmOSBsZWdhY3ktdHJ1bmsKKzI1NTQ5IGM2Mjg5ZWM4ZGEwYTc5Y2MxOGRlZGVjZDlkODdlYjZjZGU3OGY4NTYgbGVnYWN5LXRydW5rCisyNTU1MCAyYzVmODAzNzEyNjFlZGZhOWRmZjNhMjRlYmFjZGQ5MzMwMTIwZGZhIGxlZ2FjeS10cnVuaworMjU1NTEgYzZhNjYwZjg5ZmZlODU2OGVmZDlkMGIyMThkZjU4MDA0ODQxZjg4NyBsZWdhY3ktdHJ1bmsKKzI1NTUyIDFjYTJlYjY1MGUxMzc3YjU1ZjdjOWE3NDBmNDIwYTljNWE1MDIwZDYgbGVnYWN5LXRydW5rCisyNTU1MyA5NWU4NjQzMDk4MmJlN2Q5MjAwNjdmMjM5ZDBjMjFjZTBmNTc5ODcxIGxlZ2FjeS10cnVuaworMjU1NTQgY2I0ZWRkMTA4NzdkOTE3YzhlZGY3YWYzNDdkZDU0ZWM1Zjc1NGUxYyBsZWdhY3ktdHJ1bmsKKzI1NTU1IDA0NGY5ZTcxMzIwZjYyY2VjNjAyMmQzNWY5YzNiOTBlNmEwMzUyMGEgbGVnYWN5LXRydW5rCisyNTU1NiA5OGEzZmE1ZjY4N2NhYWVmYzE1OWZkMWU1NmE2MWJkOWQ5MDJlNGQxIGxlZ2FjeS10cnVuaworMjU1NTcgZmM2ZGMyZWEyNWNmNzdiOGMwNzAzZjY2MjFiODg2YTYwNDAxYjJkZSBsZWdhY3ktdHJ1bmsKKzI1NTU4IDI0YmE2OTNlOWM3MzllNjc2ZWYyMjQ1MDA4M2E5MWRiOTYwMWRhOGYgbGVnYWN5LXRydW5rCisyNTU1OSAwMWQ0NTgyNjk3NTAyZDY1MDFhYmJlNzYwOTQ1OGExZjE5ODAzODI3IGxlZ2FjeS10cnVuaworMjU1NjAgZDdmM2Y4M2I5NjU4OGMyYzBlNTBmZDViNzJhNGE5ZDhjNDg0OWYyMyBsZWdhY3ktdHJ1bmsKKzI1NTYxIDI2ZTNiNTYzZTI2MTMyZGFiOGIxNGZlNzQ5MWMxODZlY2UyMWMyMDggcmVsZWFzZTIyLW1haW50CisyNTU2MiA0ZWJhY2FlZTMwMDllMjY3ZGRmZGI1OWU3MGUwYjIxNTViZjY3ZTk5IHJlbGVhc2UyMS1tYWludAorMjU1NjMgZGFiMDVhYjAzNDdiOTNiNzE3ZTA2MDJiNmE5MjkxODUxYWFhMmNjYiBsZWdhY3ktdHJ1bmsKKzI1NTY0IGFkODFmOGZiNGVlNDc1MTQzOGE3NTEyZWQwY2Y4MzYwYmEzNThiMDIgbGVnYWN5LXRydW5rCisyNTU2NSA1ZjJjMGY2ZjBhZjczNDljNzUxZDBkODM1MjEwZGE2M2VkNmY4NjI3IGxlZ2FjeS10cnVuaworMjU1NjYgNDA5YWMwZjY4OThmNDFiMmQ3MjQ2YTcwNDhhMWE2Njc5OWJjNzMyMCBsZWdhY3ktdHJ1bmsKKzI1NTY3IDkyOGMxMjgyZTVlMmI1Y2ZjOGJmN2EzM2Q2Y2E0OGY3MTJiNDI1OTkgbGVnYWN5LXRydW5rCisyNTU2OCBmNDQ4NzM1MGM1Mzc4N2E4ZjRiYzQ5ZTI5MmFhZGEzYzNkMjQyMzEwIGxlZ2FjeS10cnVuaworMjU1NjkgYjg5OGMwZmViNzU0ZTQ4OWZjNDM1M2ZkOWZhMjllZmM2ZTcxNWVjNSBsZWdhY3ktdHJ1bmsKKzI1NTcwIGYwYWUzNzYyNTE4OTVjODBiYjE5Y2IwOWQ2MzNhZTY1OWY0NDFkZDIgbGVnYWN5LXRydW5rCisyNTU3MSA3ZmVmMzU2ZGFkNzVmOTFiYjdjMjQ2YjYzNWZmZWI2M2Y4Nzc0OTg3IGxlZ2FjeS10cnVuaworMjU1NzIgMGIwOGVlZmI2ZmMwNzdlZGRlNmQ3NTc4ZTJlZGVlNDUyN2Y3NTA5YyBsZWdhY3ktdHJ1bmsKKzI1NTczIDBkYzEwZDU1NzA2MjM4ZDQ3N2Y5Y2ExZmVhOGM2M2U2OWZhOWQ5OWEgbGVnYWN5LXRydW5rCisyNTU3NCAyMzkyNjljOTY1MTQ0M2RkMmRhYmIyNThiMDY4MDY1OTM0YWIxZDZjIHJlbGVhc2UyMi1tYWludAorMjU1NzUgMjM2MDZiNDlhZjc0MzA0NjQzYTkwN2FlMDZkNTBlNTU3ZTk4MzI5YiByZWxlYXNlMjItbWFpbnQKKzI1NTc2IDI2YmViZjIwODkxZTc1OWJiMjBhMDQxZGEzZmM0YzljY2NkYzcxYzUgbGVnYWN5LXRydW5rCisyNTU3NyBlMjRiYTA0ZDAxYjA4ZTcxY2ZlNjZmM2EyYTljODNhNjVhMzQ1OThmIGxlZ2FjeS10cnVuaworMjU1NzggOTA3ODMyZWU3MTczNzEzOTQzYzAzMmM4YzhiMjBjODc5NDk2MmNkNiBsZWdhY3ktdHJ1bmsKKzI1NTc5IDY0YzczMWQxODBlOTFlMWRkMjY3ODQxOTllMjZmZDA2YjdkODhjNGMgbGVnYWN5LXRydW5rCisyNTU4MCBkYTUxOGZjNzgwNjY3NDMyNjg0N2M2Zjk4ODU4MzQ2Y2JiOTc5M2M1IGxlZ2FjeS10cnVuaworMjU1ODEgNTQ0MGU0YjE3YWZmYjJlZTNhMmEyMzc4NGEyOGQwNGZmNmUzNjU2YiByZWxlYXNlMjItbWFpbnQKKzI1NTgyIDc4YmRmYmI2ZTU5ZTEzNWRlOWJhMTFiNzVhYTJhYzAyYjY0MDI4N2IgcmVsZWFzZTIyLW1haW50CisyNTU4MyA4MTI1NWI1YmUyMTlmYTM2MWYzOTdlNTViMGRjZTA0YzcwYWYzOTU5IHJlbGVhc2UyMi1tYWludAorMjU1ODQgZDZkMTJlMjFkNDRmNTI3MGI2ZDVhMjk5YWQyODhmOTdmZjllMDI3YiByZWxlYXNlMjItbWFpbnQKKzI1NTg1IGU2MWQyOTgyZmMxMzVkNDE1YzdlMzdkODRlYWIxNDM3NmRiYjcwZmUgcmVsZWFzZTIyLW1haW50CisyNTU4NiAwMWE1NWMzZDUwNWMwZDdhYWQ3OTViNzg4NWQ4YzE1MjBlMTMyNzA2IHJlbGVhc2UyMi1tYWludAorMjU1ODcgYTc2MmVkYjA0NjFhN2JlYzQ3MGEwY2NhYWE2Nzk0MDg2N2FhMTU1NSByZWxlYXNlMjItbWFpbnQKKzI1NTg4IDY3YTVlMjVkYzg4YmM3NGViMWM5MGYxMGZkZTAxYzhkOGQwMmRjMWEgcmVsZWFzZTIyLW1haW50CisyNTU4OSA3ZjRkMTVkODc4Y2NkNjA1MmMxMmNmMDgxMWVlNWE3Mjg2MTI1YTU0IHJlbGVhc2UyMi1tYWludAorMjU1OTAgMmY0OGFlNWM4YTk0NzBkMTlkMjRiY2JhYzAxY2I0NmY0YTgwNTE1ZiByZWxlYXNlMjItbWFpbnQKKzI1NTkxIDRiNmVkYTdkMGM4ZjU0Y2VjZDFhOGQ4MGRhMzk2MGQzNjI2Zjc0MjggcmVsZWFzZTIyLW1haW50CisyNTU5MiA5OTY4ZDhkZGRkNTNkZDYyOTZjY2MxZTcwMWM5NWQyNjM0Y2FlYTdhIHJlbGVhc2UyMi1tYWludAorMjU1OTMgZmM0MDU2YjljZjE4YzE3MTY4YTc2ZTA5NWRlMzYwMzhhYWQxMmY4OCByZWxlYXNlMjItbWFpbnQKKzI1NTk0IDQ1MmNjMGYzYWUzY2E4Zjc5ZjNhMTA1NzE4NzRmNzA2ZGNiMDlkNTEgcmVsZWFzZTIyLW1haW50CisyNTU5NSA2NDFmMjYzZjRmNDRiYjhlNDk0ZGVkYjA0MDg0OGQ0YTAyMjhmZWU5IHJlbGVhc2UyMi1tYWludAorMjU1OTYgMTgyZjAxNzNhOGVlZjViYzE1NTJhODg2NjA5NDdlNTc3ZDNmYjQ0NCBsZWdhY3ktdHJ1bmsKKzI1NTk3IDIyZmM4YjgyMmQ0MGQyYjA2MTFlMTM5MGU3ODQ4MjJlMGI5MGIwOTggbGVnYWN5LXRydW5rCisyNTU5OCAyOTg4NzlhOWY5ZjRiYjQ1YmYwMGZkNWI4N2I1M2FkZTI3YWNjYzgzIGxlZ2FjeS10cnVuaworMjU1OTkgNTBjNjY2NmZjNDU2NzAzOWE2ODA4ZjM4MDA0YzZmM2I3MDcyYTNlNCBsZWdhY3ktdHJ1bmsKKzI1NjAwIDQyN2UzMzFiNDFhMmUxY2U0Mjk0YzJkYzdmZWM3NzM4ODQyOTMyMWUgcmVsZWFzZTIyLW1haW50CisyNTYwMSBhZTU3OGM4YzZjZWQzODA3ODY1NGNlMWViMzMwZTMyZGRmYjc3ZjFlIGxlZ2FjeS10cnVuaworMjU2MDIgZTU0ZjVjNTBlZjA5YjlkYWVhZjE2ZWZkM2NmYjBjMGI4Yzk2YjZkYyBsZWdhY3ktdHJ1bmsKKzI1NjAzIDIzNmFlNTNkNjQ2NjIyNDYzMTE3YmU5NzUwNGU3ZDdhYzYwNDMxYjEgbGVnYWN5LXRydW5rCisyNTYwNCA3NTg0YjZmMWFmZGU0MjRkZDQwNTJlN2U2YTE2NWUwZmE3ZmNmMWNhIGxlZ2FjeS10cnVuaworMjU2MDUgMTYzZGU3MWYxOTQyOTM4YWMyYTVjZjkxYzkwMGQxNmViZTliNDQxYiBsZWdhY3ktdHJ1bmsKKzI1NjA2IDZhMjc5ZTE3MmQyMjNlNmZmMjlkZTFiMDMyNDg5MGU5ZmZjMjlhMTEgcmVsZWFzZTIyLW1haW50CisyNTYwNyA3MmZkYTY0YjJhMmU4Y2RiNGNjMzgwYzM3YWNmMjRhOGJhYzdjNzA2IGxlZ2FjeS10cnVuaworMjU2MDggZThlNDY1ZTZkNDVmOWYwOTMxYTEzMzY3YmExYWRjOGI0Njc5OWJlMyBsZWdhY3ktdHJ1bmsKKzI1NjA5IDI3YTBmYjAxOTU5OTEyNGJhMzYxOTU0NjU2Mzc0ZWMxNDkxOGQ0ZDAgbGVnYWN5LXRydW5rCisyNTYxMCBhYmNlZDU1ODFjMTg1MGE0YWMyMzExZjk5OGI3MjM1YjQ4YzRjODI0IGxlZ2FjeS10cnVuaworMjU2MTEgMWU3Y2M4ZTRiYWFiOTVhNGFiNjc2YzJkMDkwYjRiY2U0ZTY5MDg4ZiByZWxlYXNlMjItbWFpbnQKKzI1NjEyIDI3MmY5NjUzODVjNzEzYzc4YzMwZmE4ZmQyNWRmOWVhMTVjY2MxZjMgcmVsZWFzZTIxLW1haW50CisyNTYxMyBlZGFiYWQwMjVlZjFhNWI1ZTUxNzJhNTkzMDUxYTcwMGZmYTk5ZGI1IGxlZ2FjeS10cnVuaworMjU2MTQgOWYxMTkxMzJmZmJjNDYzZTk3OTBkYTVmOWI0ZmU0NDVjZjUyYmQzNSByZWxlYXNlMjEtbWFpbnQKKzI1NjE0IDcwZWRkMjkyYzc1N2FmNjhjYTIyNTkwY2VlOGM3ZDEzMTljOTllZTQgcmVsZWFzZTIyLW1haW50CisyNTYxNSAzN2I2OTgxNWFmMjJmZDU2ZjYzZGZmNGY4NGI1ODIzYWVjZjg5MzU2IGxlZ2FjeS10cnVuaworMjU2MTYgOTNkYjcyM2Q1ZTQ3ODkxMjBhMTgzMjI3NDFiM2ZjMTkxZTYwMjliZCBsZWdhY3ktdHJ1bmsKKzI1NjE3IDA5Mzk0MmJhZTFhNjM5YWYwMzgxMWE1NDhiNTBhNWE1MGM5MWI3NmIgcmVsZWFzZTIyLW1haW50CisyNTYxOCA1NGI2MzYxNjBhY2RmZTY0NmQ1MjJhY2FiZjJhMTBjOGZjYjUzZjhiIGxlZ2FjeS10cnVuaworMjU2MTkgYWEzYmY1MjVmNDgyY2I5OGQ1NzcyN2E0MGQ1MmUwNDMxMmExOTRjZCBsZWdhY3ktdHJ1bmsKKzI1NjIwIDIxNmNjZGEyODRkODU4NWU1YmZkYzI2ZTViNDYyMzE3Mzg1MzdiMzYgbGVnYWN5LXRydW5rCisyNTYyMSAwNzUwNWE0NTEwMTc2YmYzODA0YmQzMzFlODRjYTg3Yzk2OWYxOWMwIGxlZ2FjeS10cnVuaworMjU2MjIgZDMwNzk3ZTVjYzFhYjg1NTM1OTM4OTcxNDJlMTIwZDM3N2RkYzAzYyByZWxlYXNlMjItbWFpbnQKKzI1NjIzIDZjMzRjZDNhOThhOTNlMDI4ZmVlN2VkOWQyY2IyNWFkZDYzZDkyMzkgcmVsZWFzZTIxLW1haW50CisyNTYyNCBhZmYyMTQ1M2JlZmZmMWEzMzFhMjVmODYwNTgxODNjYjhhMDFmNzcxIGxlZ2FjeS10cnVuaworMjU2MjUgMTdlOGEzYzkzMTBjYzM5MDJmNGM3YTZlOGVkNTBiYTY2MmE5ZWI4YiBsZWdhY3ktdHJ1bmsKKzI1NjI2IDhlOTlkNTY4MTk4NDZlZjQwODVmNTM4NThjZjI0ZGQxZjg3NGQyNzUgcmVsZWFzZTIyLW1haW50CisyNTYyNyAxNTBhMmE5YzU1Yjg3Y2FlZjI0NzMxNjY4ZWFkZDVhN2E5NmUyN2FiIGxlZ2FjeS10cnVuaworMjU2MjggNjQ4NWQxYmE3MzVjYzVlYzVhNjgzMDAzNGY2ZTllOGYxODQ4YzYzZSByZWxlYXNlMjItbWFpbnQKKzI1NjI5IGY5YTVhOGZjMzE3Nzk2ZTAxYzYwYzhkMzNmM2ZiYjM2YWYzNjAzNTUgcmVsZWFzZTIxLW1haW50CisyNTYzMCAyYThiZjNkMGJkODY1ZWI3MGMxOWU1MmM4NmExMjk0YTZkMzZhNzE3IHJlbGVhc2UyMS1tYWludAorMjU2MzEgMTAwMDdhYTc4YTVlOTU0NjI4ZDk1NzJiM2UwMGY5ZmJhZTJkMzVlOSBsZWdhY3ktdHJ1bmsKKzI1NjMyIDY5YWQyYTFhZDY4OWUxNDYwZjAxOWU3ZTc0MDNkZTQ3NTU4MDcyNTEgcmVsZWFzZTIyLW1haW50CisyNTYzMyAwYmIxN2QzYjUxOTdkMTZiMDJkNmM4YzE5YzA1ODU5NjQyMWU0MGJlIHJlbGVhc2UyMi1tYWludAorMjU2MzQgMjgzODE2NTI5ZTcyNTBmZmVjNTQ0Mjc4OWEyYjY0MzY0NDcwZmU5NyByZWxlYXNlMjItbWFpbnQKKzI1NjM1IDc2M2Q1YWU4OWU5ZWQ4N2MwNGQwOWFmZDE4M2UyZmZiNjBiNTJjZWMgbGVnYWN5LXRydW5rCisyNTYzNiAxN2NhMjkwN2QxMzU5ZDEzMjJlODkzZTAzNzI1ZGI2ZWFlZmUwMjkxIGxlZ2FjeS10cnVuaworMjU2MzcgM2M2ODVjMDM3Nzk0ZmE4MmRkODE4NGYzMGFkY2NjODc3YzhmZDM4OSByZWxlYXNlMjItbWFpbnQKKzI1NjM4IGYyZGEyNThhYWMyMDk2ODU2NmJlNGE2NDhiNjc1NjU0Zjc0NjBmYWEgcmVsZWFzZTIyLW1haW50CisyNTYzOSA5ODkxOTU4ZmM0YjI5NmI3MTE0MmNmZGEzMjFkODZkYWZlMGUwYzE3IHJlbGVhc2UyMi1tYWludAorMjU2NDAgYWE0NGQzNzk5YjQ3YmJiMzUyYWM2YzEyZThjYzgxOTM5Y2UxYzVhNyByZWxlYXNlMjItbWFpbnQKKzI1NjQxIDZkNGUwNWQyNTc1OTZmNGU2MzU4ZTEwNmI5ZTAzYWJiNTJmMTQ0YjEgbGVnYWN5LXRydW5rCisyNTY0MiAyMmUwZGFkYTU2ZDdiODY0YmIzZWQ1MjQ4ZmE3YzVmNjA3YmE2OTE0IHJlbGVhc2UyMi1tYWludAorMjU2NDMgNmEzNDhhMzkwMGNkZjgzNjA1MDBiZjI1NTRmZTUzMjgyNDNjMWM2YiBsZWdhY3ktdHJ1bmsKKzI1NjQ0IGYwMzQ2ZDkzMDc3MDE2ZTJjNmExMzE3YjAyMmJlODYwN2VjYThiMzggbGVnYWN5LXRydW5rCisyNTY0NSA1YWRlN2U4MjA0ZTUyMDJmNjExNTE0NzVlZWExZDkzNGM0N2UzYmZlIGxlZ2FjeS10cnVuaworMjU2NDYgMTYwZTMzNWZiZTZmZGQyYjQxZGVkMTYzNjI5YzVmM2FlMzYwNjk3MyBsZWdhY3ktdHJ1bmsKKzI1NjQ3IDU2ZjRkZmNjYTlkODFmYzE1MmI1MjRkZjg5YTg3Njg1ZjlmZTE0NjMgbGVnYWN5LXRydW5rCisyNTY0OCBjYjZjODVkODM5MWY1ZWQ1MTcyNTI3YzRjODAyMGM5MmIyMDg1NTgxIHJlbGVhc2UyMi1tYWludAorMjU2NDkgZTRlNTRmYzVmYjNkMzk1Mjg4YWExZDA0ZDY2NmQwZmQ4ZmQyZmIzOCBsZWdhY3ktdHJ1bmsKKzI1NjUwIDkwNzhmMjk3NmJjY2EzYzA0NGU4OGRkYTVmNjYzYTE0ZTI0MzRlMjUgbGVnYWN5LXRydW5rCisyNTY1MSAxODczODMzYzYxNmRmNDMzYjE3ZGFjMWY5NzZiMzM5OWIyNzhlYjNiIGxlZ2FjeS10cnVuaworMjU2NTIgYTc5NTg5NzFkZTFjNzJkYzNjZWVhOGM0OTRmNjE4MzcxNjQ3ZWU5OSBsZWdhY3ktdHJ1bmsKKzI1NjUzIDEyNTc3YWU5NTk1NjIzMjY2Y2M5OWZlZTg4YzI4MjBkNDUwMDE4MjkgbGVnYWN5LXRydW5rCisyNTY1NCA0OWVkYmVlOWRhZTIyMjQ4YzVkMzFjODY0N2EzMjA5ZTI3NDY3ZmU0IGxlZ2FjeS10cnVuaworMjU2NTUgMjRhZjg0MjAzMGEwYjQ3ODc4NjNhNDk5ZmFjYjk4ZmQ1YjRjMDZlNiByZWxlYXNlMjItbWFpbnQKKzI1NjU2IGM2YzFhNWZiYjZjMWYzZWRlZWY5Zjc3Y2RmNjlhYTUzMGI0MmJkMWEgcmVsZWFzZTIyLW1haW50CisyNTY1NyAzYzc0YTFiMTI4N2FmYWNjZTJiODdhN2E4OTA2ODMxODgwZGYxYTc5IHJlbGVhc2UyMi1tYWludAorMjU2NTggOWEwOTFkNzIxMzZhYzA1ZjE1ZTg0NzYyYjY4MTk3Nzc3YWY3ZDcxOSByZWxlYXNlMjItbWFpbnQKKzI1NjU5IDU0M2IyYTQ4NDY3YjY0Y2RiZTM2NDY2OTI1MDIxODhhYzI5MmU3NDUgcmVsZWFzZTIyLW1haW50CisyNTY2MCA2MzNhOTZhNjUwMDkxNDhlY2U5M2VjOGFmODQzMzk3MmNmNWYwNmE3IHJlbGVhc2UyMi1tYWludAorMjU2NjEgNDFiNTE1M2Q3MDVlNWY3YzBhNjgxYmY1NTFlYjIzMGMzNjE4YzFiMSByZWxlYXNlMjItbWFpbnQKKzI1NjYyIDU0YmNjNWVjM2E1MTI1NTcyZDA5MDE1YmEzOTA1MzIyZGU0MWFjMzcgcmVsZWFzZTIyLW1haW50CisyNTY2MyBhMzQ2MGNiMjNmMTk0NTE1NDg3ZWQyODk0MjJjMjU5YmYwYjU5MTRjIHJlbGVhc2UyMi1tYWludAorMjU2NjQgYTBjYzUyNzM1ZTZlNDY4ZDk0ZmYyMGVmNjQ0NjE5NGNjMjc5M2FmNSBsZWdhY3ktdHJ1bmsKKzI1NjY1IGM0MDM2MzMzNTU4NTUxOTY2NjhhZjU3MzcwNmRiMmNmZmQ4YWI3YTggbGVnYWN5LXRydW5rCisyNTY2NiA5YzQzNWIxYjU5YTU2YzA0NGFmYzlmMDdjMDI0NjlhN2ViNDM2N2FkIGxlZ2FjeS10cnVuaworMjU2NjcgZWEzYjE4Nzc0NmY3ZDUzOWU3YzIyMzgzMTNiODYxNTg3ZTlmYTRiYiBsZWdhY3ktdHJ1bmsKKzI1NjY4IDA4OWFiNWJhOTQ2NmI0NmVkYTYwMzIzOTJlMjY2MWQ5YTRjZmVlZGQgbGVnYWN5LXRydW5rCisyNTY2OSA5OWUxZmVjMjZiNDA1YWJiNDRiNjIxMGRhM2RjYjA1MWMwYWVlNDkyIGxlZ2FjeS10cnVuaworMjU2NzAgYjU1ZDdiYzA1ZWM4ODY3NmIyZjEwOGY0ODk2NWUzMzYwNGIyNzIyMyByZWxlYXNlMjItbWFpbnQKKzI1NjcxIDEzNGNiNDE4Njk0NjZhYmNmNDJmODA4ZWI1YmExYWRjN2RmZTBmNGMgbGVnYWN5LXRydW5rCisyNTY3MiAwNDk3MzljYTBjMTM1ZDFhNTFjMWU1MTI5Mjg5YmE5OTVkZjQ5MjZiIHJlbGVhc2UyMi1tYWludAorMjU2NzMgMzVjOWJlNjkzODg4ZTAwYmRhZjg1MGFhMGZkOGIwZDk4NTYwOTdhZiBsZWdhY3ktdHJ1bmsKKzI1Njc0IDE5ZDFkMzUwMjBiZDQzN2QzYmRiNDYxMjQwY2VmMGQyMDZhNGQzOGEgbGVnYWN5LXRydW5rCisyNTY3NSAzZjZkZGVhYzQ4NTZiNTI4OGZlMDcwM2YyYzU0ZjFhMDk3ZDdkYmJiIHJlbGVhc2UyMi1tYWludAorMjU2NzYgYTQxNWNhM2U4OTAzODYwMTRiNzgwMTJlNWUyZTg0Yjg2Y2Y5ZTY3ZSByZWxlYXNlMjItbWFpbnQKKzI1Njc3IDA0MDhlY2Q4NGFhMmEyNjA0OWYyZTkxZGQ0ZjZiZTY2ZmU1YzMyNTMgbGVnYWN5LXRydW5rCisyNTY3OCBjYzc4OGIzYjIxYjYyMjRiMzZkNzY5OTViMzhlY2VkZGZkZmY3MjQ0IHJlbGVhc2UyMi1tYWludAorMjU2NzkgZGM4MGNlMTFmYWUzOTA5YTMxNDE3NTU4MGI0YjMyNGEwYjRhMzFmOCBsZWdhY3ktdHJ1bmsKKzI1NjgwIDVmNGZmYmZlNmJlNjgxYjVmOTYwYjZiMTlmNDM5MGZmMDNhYmE2YjkgbGVnYWN5LXRydW5rCisyNTY4MSBhYjc0ZmY4MGY5ZDBhYzUzYjIzMjJjZjVmYmU2Mzg5NjllNTQwZTZlIGxlZ2FjeS10cnVuaworMjU2ODIgZGM2MDU0ZTViNjQyY2QzYzNmMWY2MTdkN2Q0MzI5MGUyNGMyZDBmMCByZWxlYXNlMjItbWFpbnQKKzI1NjgzIDA5NmI3NTEyMGU3MmI0NGZlNGEzMmRlMjkzY2Y4Y2IyMDBlYTZiMjEgcmVsZWFzZTIyLW1haW50CisyNTY4NCA1YTc3OGFlMTg1MTIzODkxY2VlYWEwZDYxOWFjNGEyZmE1Zjg3Y2IzIGxlZ2FjeS10cnVuaworMjU2ODUgYWM5NzZkMzY3MDhkM2Q3ODFjMGY3YTYwNjY4YzcxNGVmNDgwNmJiYiByZWxlYXNlMjEtbWFpbnQKKzI1Njg2IDMxZDlkMTFhMjk0Y2E5N2Q1YmNmYjkxY2ZmOWVjNjBiMjQzYzFkZGQgcmVsZWFzZTIyLW1haW50CisyNTY4NyBkZmYwYTQ0YjIzNjhlNDE0YTQ0NTY4ZWFmNzJhMTM1ZmY5NjBiNGIyIGxlZ2FjeS10cnVuaworMjU2ODggMTZmMGRlZmE0NWMyMGRmMjYwNDE2MGFmMzgxM2NjMjkxMDIyYWE2OSByZWxlYXNlMjItbWFpbnQKKzI1Njg5IDM5OTI1NDRkYzE0NWZiZWJmYjEzNzM1MDI4NjZjYzQ5NDg4MDljNmIgcmVsZWFzZTIxLW1haW50CisyNTY5MCA2ZDA4YTI5NTViYjYyNTE4NzI3OTIxZjE0MDg4MTJlZTc1ZDgzMDcwIGxlZ2FjeS10cnVuaworMjU2OTEgYTYxOTNhODdmNTAwZTI3NzdiM2YxOTY4MzhlNjAyYjZiZjdmYjg1NCByZWxlYXNlMjItbWFpbnQKKzI1NjkyIDFhNzUwZmI5M2IxNjkzNjFjYmIwZWY4ZDA0NjFmNTA2MGYyZTk2ZmUgcmVsZWFzZTIyLW1haW50CisyNTY5MyBmMmViOTVmYjQ1MjllMjc2OTU2ZjA2YWRlYWE3YjMyMmIxNTQwODVmIHJlbGVhc2UyMi1tYWludAorMjU2OTQgMjhlMzc5MDViZWU0NTgyOTM0ODU5NzNiYjBjMTc0Y2QyODk4ZTM4ZCByZWxlYXNlMjItbWFpbnQKKzI1Njk1IDc5ODU2YWQ3NDlhYjdkYzczOTg2YTkzMTIzMjA2YjUxY2M3NWQzZjIgcmVsZWFzZTIyLW1haW50CisyNTY5NiBkZWJiMDA1ZjE2NzNhMDM5MmY3M2QwNzg5OTBlYjgwMWExZDIxMzYwIHJlbGVhc2UyMi1tYWludAorMjU2OTcgMGZkMzgzMWNmMmEwNzU3YTNmNjM3MDc1ZGE2MjRmOGMyOWZmMDJkZSByZWxlYXNlMjItbWFpbnQKKzI1Njk4IDAyOWU0Y2JkMjMxMjk5YjFiZDFjY2EyYWFmNmZkZDQ0ZWUxMzRjZTIgcmVsZWFzZTIyLW1haW50CisyNTY5OSBjOTAxZDE1OGFkNjg5MzZlOWMxMTUxNmYyM2FkMjg4YTEzYjA2YmQ5IHJlbGVhc2UyMi1tYWludAorMjU3MDAgYTM0ZjkxOTVmNjExZTczZjYzMjVmZWY0ZGEzYjAxMTgwNzIwODA5NSByZWxlYXNlMjItbWFpbnQKKzI1NzAxIDZjM2UzMjM1N2Q5MTA4YzMyNzYxNmFiYWEyZTFiYmRhZjM2YWJjOWEgbGVnYWN5LXRydW5rCisyNTcwMiA3ZWNjNDkxMTdkN2U4OGI2NzI1MGY0YzM0MzdmMjYzYjdmN2Q5OWIxIHJlbGVhc2UyMi1tYWludAorMjU3MDMgMjU0OGUyZjMyM2ZhN2U5Y2UzZjA4NjRiMzcyNGNlMDQ5MGQ3M2NiZiBsZWdhY3ktdHJ1bmsKKzI1NzA0IDEyZDIwNGQ5M2FmMzY1MzQ1MmZjZjFjMTY4MmNjNmE0NTI5NzQ2NWYgcmVsZWFzZTIyLW1haW50CisyNTcwNSA2NDFmYjRiNDcyMGU3NjljZWI4MWZjZDQ2MjFhNTc1YjgzMDEyYzc4IHJlbGVhc2UyMi1tYWludAorMjU3MDYgZjk3NmZhYTMzMGVhMTY3ZDgyYWQ1ZWZiYWRkODQ1NDhmYTJlMTk4MiByZWxlYXNlMjItbWFpbnQKKzI1NzA3IDFmNzMyNTFjNjI1YWM2MjIwOWRmNjZjNjI5OGFmMTg2OGJiMzRjYWMgbGVnYWN5LXRydW5rCisyNTcwOCAyN2YzNmY0YmY1MjU4YmVjNDUwMzMzMTRmYmZkNTA4MjgyMzRlMGU0IGxlZ2FjeS10cnVuaworMjU3MDkgYjg3OWU2ODUxYmUzYjk4ZjFiMWMwYTUxMGM5MmEyNWNiMjc2ZWI0OCBsZWdhY3ktdHJ1bmsKKzI1NzEwIDUxYWE5ZWIyNGQ4MWY2MjdiMGQ5Y2YyN2I3ZjUzYzNiZWVjNjJmNzUgcmVsZWFzZTIyLW1haW50CisyNTcxMSBmYjlhMDA4MjFjMGQ1MGQzM2Y4MGRjNmRjMTJiY2Y0Yjc0MzhkNDZhIHJlbGVhc2UyMi1tYWludAorMjU3MTIgNGNlNTE3YjNlMzAxZjZjYzUyZDY0ZGE4OGQxMWNhMWM5YmMxOGU5NiByZWxlYXNlMjItbWFpbnQKKzI1NzEzIGEyNzMzZmVmZmIzNjY5N2ExYzE0ZGJiNWFmODY0OWM5MDcyOTViNzggcmVsZWFzZTIyLW1haW50CisyNTcxNCAxYmI0ZDJiYWJjMTQ1YzZmMmI1ZTdhYzMwYzBmMjhiYzIzNzE1OTI4IHJlbGVhc2UyMi1tYWludAorMjU3MTUgNWE5ZGFkYTdjYmFjMzdkNTVkNzI0MjY4OTBhNTViMGMwM2FiNDMxYSByZWxlYXNlMjItbWFpbnQKKzI1NzE2IGRjYTRhN2MzNmViOTljYzlhNWI0M2U4YmE2MzljMDM4YmExMDdkZWUgcmVsZWFzZTIyLW1haW50CisyNTcxNyAzNTEzYTlkMDkwYTlhOTVlM2ZlNGNkMjE1Y2UzNjI4NjBmN2JhYTAzIHJlbGVhc2UyMi1tYWludAorMjU3MTggOTJlYmU0OWQyMmM1M2JkMTU4YTljZjYxNDg4OGUwZTlhY2MzM2I1YiByZWxlYXNlMjItbWFpbnQKKzI1NzE5IDg0ZjJjNzc4M2QzMTAxNjViN2JmZDg0ZjgwODYxNWRiNTc2MjhkMmEgcmVsZWFzZTIyLW1haW50CisyNTcyMCBkZDE3YWFkZTNiZWI4YTU1MjQ1ZWZiYTY3ZThiYmIzN2Y0MTAxNTdmIGxlZ2FjeS10cnVuaworMjU3MjEgZGY5NzliZGQ2YWVmZDJiZWRiMjQ1MzcwMDg4MDQyMjJlZmM4NTRmYyBsZWdhY3ktdHJ1bmsKKzI1NzIyIGM4YTZlYTAwYTllMWFkY2JiMTlhNjJjMDFlY2VkMDQyNTFiZjBiMjcgbGVnYWN5LXRydW5rCisyNTcyMyAxN2Q1NjEyNDNmZjgxMmRkMTJhZjZlZDgwNTc1YmFhY2RkNTYyZWY3IGxlZ2FjeS10cnVuaworMjU3MjQgOGVkNjQ3ZDMxZjQ0ZWY0ZmE5NWIxNWM2ZmUxMjM1ODQyYmUwMGMxNCBsZWdhY3ktdHJ1bmsKKzI1NzI1IDZhYzQxNTBjNGU4ODQxYTI5YjIxYjZjYTI2NmYzYmVmODkxOWEyOTcgbGVnYWN5LXRydW5rCisyNTcyNiAzNGNiZWZkMmMzZmU5NjY3NjU1ODU3MDA1MTdlNDE4ZjdjOGM1OTQzIGxlZ2FjeS10cnVuaworMjU3MjcgYzg1NGI2ZDBiMmMwNGJiNzE5NzdmYzFjNGYyNDg5NzNkNDQ4YWJlNiByZWxlYXNlMjItbWFpbnQKKzI1NzI4IDEyMWUxOThmNmRkYTllOGI5NTNkNzQ2ZjAxNDJlODI0NDEyYTA0ZDMgbGVnYWN5LXRydW5rCisyNTcyOSBmMmI2Y2NjMDA4MDg1MTRjYTM0YzFiYmVkMzUzODk0MjBiNzU3ZjI4IGxlZ2FjeS10cnVuaworMjU3MzAgNzE1ZDYzMWVlYTJmNDI2MjNhY2ZjYzhhZmZiNTE0MTJkM2EwNjg1NCBsZWdhY3ktdHJ1bmsKKzI1NzMxIDdmMGQzOTAxNGUyZTE1ZWE5ZmIzZGFhMTAwYTkyNmM5MjQyZDgyNzEgbGVnYWN5LXRydW5rCisyNTczMiBjMjEwNTYyZTE1NTgwYzYyNjUxN2NmMmI5MmZjNjU3NWM2YTMzNGJmIGxlZ2FjeS10cnVuaworMjU3MzMgYjM1N2RmMzAxZjVmMjU2ZjJmMzRhZDI5ZjMzODdhYjUzMDRiNzUzYyBsZWdhY3ktdHJ1bmsKKzI1NzM0IDA3MWY1MDNlNWY0ZjRhZWMzNTNiNGY5ZDI5OTJhY2EzYTA2YmI0YTQgcmVsZWFzZTIyLW1haW50CisyNTczNSAwYTk2ZGFiNzBhMTU3NGViOGEwYmQ1YzQxZmI3ZDA4N2U1NzdmZDQ1IHJlbGVhc2UyMi1tYWludAorMjU3MzYgMjQxNzY5NDMyNGVmMDhkMTMwZmYzZmZiZWU5YmVjOGYxYjljODQyNSBsZWdhY3ktdHJ1bmsKKzI1NzM3IDg2MDBkYmE0ZjU5ZDNkMjUyMTcyMmNkN2RhYTEyMzc3Mzg5ZTViMDkgcmVsZWFzZTIyLW1haW50CisyNTczOCBjZjlmMWI2ZGJhM2I0Nzg3ZGViOWZiNWU5YzE5ZDliY2ViYmNlYmEzIHJlbGVhc2UyMi1tYWludAorMjU3MzkgNzc1ZGE2MTc4ZTg2NTU3ZjAxYzI3YWRiNjE2MmMxOGU2OWVkN2Q5OSByZWxlYXNlMjItbWFpbnQKKzI1NzQwIDQ2NjhkMWM5MjZjZGYwNDljZjU4Y2Y5YTdhYTkzYTJkYTA4MzcwN2MgcmVsZWFzZTIyLW1haW50CisyNTc0MSA1NTUxMmZlMWQ2ZjE0YTQxNzJlNTRlNzUxOTM3OGVkOTRmM2FhYzdmIGxlZ2FjeS10cnVuaworMjU3NDIgYjkwMDRiODM2OTk0ZDk0M2M5NGNhMGQ0ZmMzNjM4Y2JhMzQ0MjM4MCByZWxlYXNlMjItbWFpbnQKKzI1NzQzIDY4ZTdlOGRmYzVmNTAyYmQ2M2U0NzJmMGQ0YTg2NDljNmI5ZTFhODEgcmVsZWFzZTIyLW1haW50CisyNTc0NCAxNjVlMjBhYzBhYjEyYTdjMjk0MzkzNTk0NDVkOWZlYTA3MDYyN2IxIHJlbGVhc2UyMi1tYWludAorMjU3NDUgZDVmNjNlN2NhYjMxYmQ0YjY1M2VkNjFiZmYyYzEwZmM3ODMxYmM2MiBsZWdhY3ktdHJ1bmsKKzI1NzQ2IDQyZTZjM2NkYzA5NTgyNzZjNjIyNjAxOTg4MDViNTE3MGE1ZWUzMWQgbGVnYWN5LXRydW5rCisyNTc0NyA4ZmM5YTU3NmZiZmZjNDFkYTUxMGMwZmNmMjExN2MzY2Q1N2Q0MTIzIHJlbGVhc2UyMi1tYWludAorMjU3NDggMDkyOTg5NGNkZjk1ZmMwNTYxYWYyMGIxOTM4N2QwNTY5YjhjYWVhNCBsZWdhY3ktdHJ1bmsKKzI1NzQ5IGI1OWU4YThkZjU3ZTg2N2IyYjU1OGQ5YmMxMzJlMTc2NDEwOTg0ZTIgcmVsZWFzZTIyLW1haW50CisyNTc1MCBjNzNjNmE1YjZhODA0NGJlMzc5NWZlMDA1MDRjYzU2YmFjZTk3NjlhIHJlbGVhc2UyMi1tYWludAorMjU3NTEgZmQwNTBhYzFlMGNlNWIyOGRmN2VhZWRiYTA5ZGJlMzljMDdhMmU1MCBsZWdhY3ktdHJ1bmsKKzI1NzUyIGFmODg0MWFjMjk4OWRiYWJlMmZkY2M0NjY0NDg2ZWUwNTUyNmU4NjAgbGVnYWN5LXRydW5rCisyNTc1MyAxMWY2ZjhjMWNlNzM0Zjk4NTc3YWFlYTk4YTVlZTU5MWQ2Y2E4NTYzIHJlbGVhc2UyMi1tYWludAorMjU3NTMgNzY1NDM0ZTdhYTAxOWMxYmI4MmY5ODEzYjgwMjU4MzA4NjdjYmRjMCByZWxlYXNlMjItbWFpbnQKKzI1NzU1IGU4OGQ1ZTI2ODdlZTQ3MzA2NmVmYjgwMzZjZDc5MzhiOTRkOTBlZDAgbGVnYWN5LXRydW5rCisyNTc1NiBhYjY2MTZlNmNlYmZkMWZiOWM3OGUyYzQ5YWYwOGE2MDg5NGZjY2JmIGxlZ2FjeS10cnVuaworMjU3NTcgMGM4YTM4NWZjOGEwMTMwYTEwYzNjODBmYzg3YzU5YzY4NGZjMjM3OCBsZWdhY3ktdHJ1bmsKKzI1NzU4IDY3MDZiODNkMWJkMTVjMzlhYjk1ZGY0Mzc5ZjRjMzc5ZGZjODViYmEgbGVnYWN5LXRydW5rCisyNTc1OSAxMzJhMDY0ZGE2NTZlNTIzZTZmMDVjZTg1ZjEzMjdjMjRkYjgwMDBmIGxlZ2FjeS10cnVuaworMjU3NjAgOTYzZTgxNGU2OWNjZjVmZTYwMmM0YmMwYzI2NGEwNTlmMzE3NDhjOSBsZWdhY3ktdHJ1bmsKKzI1NzYxIDk4NGViOTk1ZmI5ZWRjM2M1Y2MxZTg4MjMwZGIyNjcyMWNjOGRlNmQgbGVnYWN5LXRydW5rCisyNTc2MiA3MTg1N2YxNjIyMzExNTU2MzFiZjE2YjIxNTQ5NWI1NTNhODBiMTYzIGxlZ2FjeS10cnVuaworMjU3NjMgOGJmY2Y2ODI3MjQ4MmJhYjczMTA0NzRiMjEzMjc5ZjUxOTlmYTgwMSBsZWdhY3ktdHJ1bmsKKzI1NzY0IGE2YmI4MDAyOGFjZjJkY2JiNjQyY2VkNzhiYjYzNDFjYmZmODc4NGQgcmVsZWFzZTIyLW1haW50CisyNTc2NSAzNTFmOWI0ZDgwYzVkMjcwYzViZDNlZjRjNWFmOTMxMWU1MGE3NGQwIGxlZ2FjeS10cnVuaworMjU3NjYgY2VjZGE0ZWNjMDkwY2E2OTg4ZGI4ZGQ2Mjc3MmJlOTE4MTdiMmY2ZCBsZWdhY3ktdHJ1bmsKKzI1NzY3IGUxNTAxMDlkMmI5YzYwYzlhZDgzOGUyNzRiMDA1NDhjOTA1YzA4YmUgcmVsZWFzZTIyLW1haW50CisyNTc2OCAwNzNkYjY4YTJjMmJiZWZmYTFiN2MxNDY3ZmU5ZjhlM2IxMDlhYWEwIHJlbGVhc2UyMi1tYWludAorMjU3NjkgMGM4ZWQzODQxYTY0ZjhmODI2YmZkNTc4OGJiNzkwMzAxNzRhMGNiYiBsZWdhY3ktdHJ1bmsKKzI1NzcwIGEzZWU3MTMyMDM2YWYwNWQxMWVjNjIyYWIxZTY4OGM2ZDYzMTc4ZWUgcmVsZWFzZTIyLW1haW50CisyNTc3MSA0ZTgyM2JmMjUxMmNlZTg3Zjk2OTE3NjM0YzA5ZTJlNmIwYjFlNGRhIHJlbGVhc2UyMi1tYWludAorMjU3NzIgNDU3YmYxODRlN2JhOGI1NzhlMmFlNGEwYWE3N2Y2ZWNlNzBlZjllMyByZWxlYXNlMjItbWFpbnQKKzI1NzczIDRhNDU5N2JjNGVhMjIyNzg0MDE0ZTBjYzRhMzhhZjZlZGQyZDUzYWUgcmVsZWFzZTIyLW1haW50CisyNTc3NCAzNmM1MmNmYmQwYjc1ZTYwNTRkMmUwZmVlODg2ODUyNjk0M2I3ZjIxIGxlZ2FjeS10cnVuaworMjU3NzUgOTI3YmQ0ZjZlMzViMmVlOGU2MjUyYTcwNDRjYmE2ZGI0NTNkMzA0OSBsZWdhY3ktdHJ1bmsKKzI1Nzc2IDUzYTFmMjFiMDQ1MTQ4OTNjNWQ3ZGVjNTUxOGE5YTEyZWFlYmQzMzkgbGVnYWN5LXRydW5rCisyNTc3NyA3MDEzNDBjODc3MjMxOWJjNmU0ZTQwOWI0ODhhN2ZhZmM4N2ViZjEwIGxlZ2FjeS10cnVuaworMjU3NzggYzc4ZmZiZmMzNmQ5MzY2MGRkZmE4YzdkMDExM2YwM2ViM2JkNGMxNSBsZWdhY3ktdHJ1bmsKKzI1Nzc5IGRmMzU2NTZlN2Q5OTcxOGZmN2E3ZGRlY2ZhZGQ1ODJkYTQ4Y2E2M2EgbGVnYWN5LXRydW5rCisyNTc4MCBlNjIxNzRjN2Q4ZTUxNzY4NmY4ODRlZmQwMGI3YzlhY2M5MjAwM2Q1IHJlbGVhc2UyMi1tYWludAorMjU3ODEgYjE0OGUxOGFlNzdhYjAzOTFiMjcyOWIzYTg1Y2E0ZGM4MzgwNTdiMSBsZWdhY3ktdHJ1bmsKKzI1NzgyIDdhZmJiZTI4OGFmM2RhNmNkOWM4YjlkZmE5Y2UxYTZmYmI1NWNhYWIgbGVnYWN5LXRydW5rCisyNTc4MyBmNjRhMTE5N2E1MmE0NzgxNjViYWEzOTg1NjRkNzQ0OGJjYzc3OWUxIGxlZ2FjeS10cnVuaworMjU3ODQgOTg5NWUyZTMzNmMzYTEwZjZiZGMxYzc1YjgzYzBhZWM1ZmVmMGQ3MiBsZWdhY3ktdHJ1bmsKKzI1Nzg1IGI1MjNhNDcwYTBjZTk4YmU5NGNhMGFhNjQ0ZDRmN2I0YjMwYThhMjAgbGVnYWN5LXRydW5rCisyNTc4NiA1YzNhMjU5MjM4Y2ZmNTNjNDY3N2IwY2JhNTU3YjE4M2I3YjYwODQ5IGxlZ2FjeS10cnVuaworMjU3ODcgYmU0OTJkZjgzZDAzMDA4YmE1N2NhZTEyNmRiOTE1NDQyOTVmOTI1YyBsZWdhY3ktdHJ1bmsKKzI1Nzg4IGY1MmQ2YTY3NWY1Zjc4NzYzMTQ2YzhjYTFiYzk4MDg0Y2FiZWM1YTcgcmVsZWFzZTIyLW1haW50CisyNTc4OSBlYWM1NjBjYzAzOTlkN2YzMzhiMDM3YWRmZWFhOGFiNjA2OGQ4Y2RkIGxlZ2FjeS10cnVuaworMjU3OTAgYzEwNjhiMDkyODc5ZmNlNjFiOTY5YmFhNzEyNTljOTg2MWYwNGM0ZCBsZWdhY3ktdHJ1bmsKKzI1NzkxIGY0ZTI0YWIwZDEyNGFlZGI1ODk0OTk0OTUwM2MxMmI1NjVlZTEwZGYgcmVsZWFzZTIyLW1haW50CisyNTc5MiA3MDAyZjI0ZjgxOGZiMmM3ZTA5YTdjOGZkYmMwODVlMWQ2ZmM4YjAwIGxlZ2FjeS10cnVuaworMjU3OTMgNTAzYjkyZTY2YThjNzY1ZWVjZjU5YzBmMGNhYmViMzNhYTMzNmIzNSBsZWdhY3ktdHJ1bmsKKzI1Nzk0IDgzMjA1OGYyMWFhMjc0NDU1ZTIzZjVhODhlM2NjY2Q4MzE4ZWY5Y2IgbGVnYWN5LXRydW5rCisyNTc5NSAyMzdhZDQzZjg5YThmOTQ1MDJmZGQwNDAzZjY0NjQzYzA1ZjAyNDAzIGxlZ2FjeS10cnVuaworMjU3OTYgYzBhZTZmNDZmMjMxNTc0MzIyZWNhYjA2ZWYyYTAwMDVhZTRjOTg4MyBsZWdhY3ktdHJ1bmsKKzI1Nzk3IGQ4ZDk4MWQwYTQ3ZTVmMmE5ZWRmNTkyMDk5NmUwZGVkODIzMGMxOWMgbGVnYWN5LXRydW5rCisyNTc5OCA4ODhmY2Q5Yjg1OGRjZTMzMTczODBjOThiZjdiMzUyMTRhYzU3ZDFiIGxlZ2FjeS10cnVuaworMjU3OTkgZDJlNDU3YzQ0YmYyNzU3NTI5ZmI1YWMxZWYxZTcxNjY3ZGIyNjI4OSBsZWdhY3ktdHJ1bmsKKzI1ODAwIDA4Zjc0MmRmOTkzN2EyY2NiM2M5ZGM1NzJjMzE4MzkzMzI4YzRjMTYgbGVnYWN5LXRydW5rCisyNTgwMSAyNzNlZWUzODcxMmNmZmVhMWIzYTdmNWIxODRkM2Q2OTY5NWMxZjczIGxlZ2FjeS10cnVuaworMjU4MDIgMTA4NDZmMWUxNTkyZjk5YWJiZDBiNzBmMWFlM2Q0OTUyOTk1NjQ0NCBsZWdhY3ktdHJ1bmsKKzI1ODAzIGIxODM2Y2NjOTUxYzk3ZjUwMTVjNmZjNTI0MGU2YjllYmE5YjM2ZmQgcmVsZWFzZTIyLW1haW50CisyNTgwNCA5YWZlYWY5OTc5YTBhMmJhMWY4NTc3YmViNTM0N2FkOWYxNTQ4ODU3IGxlZ2FjeS10cnVuaworMjU4MDUgZDFhZWNmNjYzMTY3OTBlNWU4MWY4NjdiZTU2MGFjNWE5ZDA5ODM4ZCBsZWdhY3ktdHJ1bmsKKzI1ODA2IDcyZmQ4NDE2OTg0YjgwODUwOGQ0NmFiYTZlMjJiYTFhZTE4NmRjMjYgbGVnYWN5LXRydW5rCisyNTgwNyBlYzFhNWEwMjlmNzRjNTdmZTI4MjkzNmM1MDdmN2ViNzExMmViODk0IGxlZ2FjeS10cnVuaworMjU4MDggZDVhYWQ2YzU4MWM5YWU0NzNlOTJjNWQyYzc0OTYxMDkwYzJkNmQzZCBsZWdhY3ktdHJ1bmsKKzI1ODA5IGVmNmUyZmVmODFkMmE4YjhiYThlMTIwNWJiMDljMzU5N2U3ZTk3NzEgbGVnYWN5LXRydW5rCisyNTgxMCA5ZThhYTI5NTIzZjA5Nzk3NjJiZmRlMGViNWE1MTMzZmQ5ODY2YzU0IGxlZ2FjeS10cnVuaworMjU4MTEgODgxYjY0ODRmMGRmYWE2MWIyN2UzODI3ZjBlZjBmNmJlNTExODNmMSBsZWdhY3ktdHJ1bmsKKzI1ODEyIDUyMjA4ZmU0YWM0NzExNDhjYzcxZjc0OGI0YzVkMDlhYzMxYjM4YjEgcmVsZWFzZTIyLW1haW50CisyNTgxMyBkODY0ZTJiZDkxYTZlMTE0M2ZlOWRmYjgxY2ZkNjIzYTFlZjRjZTAyIHJlbGVhc2UyMi1tYWludAorMjU4MTQgMjM5MjVkZjRlMzcxMzA2OGZlZDg5ZTUwYjg4YmY0MjIxM2JmNjFjOCByZWxlYXNlMjItbWFpbnQKKzI1ODE1IDdiNWQ2ZjFmMWM2ZWM3NjUzYjM5ODIyMjFlZWZmNmI5NGRhMDMyZGYgcmVsZWFzZTIyLW1haW50CisyNTgxNiAyYTdmNzFhOWJkMmUzMGNlYWZjYWRkYjVlM2U1ZDc4Yjk1Yzg2N2Q4IHJlbGVhc2UyMi1tYWludAorMjU4MTcgMWZlMzgwMjMzNmEzNTZjYWRlODdlZjYwYzZmM2FjNDlmYmQ4Y2U3OSBsZWdhY3ktdHJ1bmsKKzI1ODE4IGEzNjdiYzYxZDViNjA3ZTlmMWVkOWIyODA3MTMxMjA0YzYwNzcyZGMgbGVnYWN5LXRydW5rCisyNTgxOSBmNmU2ZmRiOTM1ZDIxNDIxOTM0YTUzNGYwNWU5YTc0M2I2MzQxZjRkIHJlbGVhc2UyMi1tYWludAorMjU4MjAgNjhmZTJiMzkxMTU5NDcyZWEwZjQ2MDAzNTUwNTk3YTYxMDYyYmJkMSBsZWdhY3ktdHJ1bmsKKzI1ODIxIGJlYTAxZGMyZjAwZTJiZjNlMmU3Yjg0ZTU4OTgxMThjNzVhOWU0ZjcgbGVnYWN5LXRydW5rCisyNTgyMiBjM2UwZWEwOTczNzM2NmRiOTk0YzJjOWM2MGI0NjgxZTcyZTQ1YmRjIGxlZ2FjeS10cnVuaworMjU4MjMgOWJhOWQxMjM4ODA0ZjQ1ODcwOGVmNGRlOTUxMzQwNGQ2M2Q0MDQ4ZSBsZWdhY3ktdHJ1bmsKKzI1ODI0IDg1YmQ1MzRjYmQxOWY2OTMzMTU4ODQ1ODAyMDRkM2QzMWVlYTY4ODQgbGVnYWN5LXRydW5rCisyNTgyNSBmNTUxYWY5MjY2MGViMjJmMDZiNTQxZTk1MDFjNzdmMjhhNDBjODY4IGxlZ2FjeS10cnVuaworMjU4MjYgYWI5OGEwZGVmOWQ3NjMzMzdmMDFiNjY1NTcyYjFiZWYyZmUwYjZiYiBsZWdhY3ktdHJ1bmsKKzI1ODI3IGFiMjRlZjJjOTMyMzg5YWZkNzU1NzM5ZTRjODc2NjA2NTg0MTQ3M2MgbGVnYWN5LXRydW5rCisyNTgyOCAxZGIxNTEwYWJlMjE4N2I2NTZlYjI0N2Q5ZDk2YzU0NjJjNGRiNGM4IGxlZ2FjeS10cnVuaworMjU4MjkgYWFmNWVlM2I4ZjkzNTU2NDhlNWZlNjUxNDczNzE3ZjRmNjRkYzUyMCBsZWdhY3ktdHJ1bmsKKzI1ODMwIGVlYmFlNGY2MGQwNWNhMzQ0Mjc3M2Q3ODRkNTljNjM2YTBkYTA1YzQgbGVnYWN5LXRydW5rCisyNTgzMSA4ZDAwNjE0OTNjNTdkMjI3YmVjOWM5YjliZTU1ZDc1MTE5YjFiMWM1IGxlZ2FjeS10cnVuaworMjU4MzIgMGU0NzU4Y2NmZTJiZTY5MGVjM2ZmYzhmNWMyY2IxNWMxMzRlMTNhYyBsZWdhY3ktdHJ1bmsKKzI1ODMzIGFjZjVlY2Q4MDZhZmM3OWZhNTE4N2Y0ZTc1Yzg5NmJhNDY3YmY2MjIgbGVnYWN5LXRydW5rCisyNTgzNCBhZDM4MjVkMDRkZWNkNjIyNjQ4OTFkMWIwM2IyZmQ1Nzg3NTNmZmRhIGxlZ2FjeS10cnVuaworMjU4MzUgYmM4OGYxYjQ3NjQ4ZGU2ZTZlNTdiMWZhYWUzMWNjMDVmZGZiNjNmYyBsZWdhY3ktdHJ1bmsKKzI1ODM2IDdhZGVkNmQwNjk2ZTM0NTg0Y2I5OWUyOGFkYWIxYWRhM2I3YmRjZGEgbGVnYWN5LXRydW5rCisyNTgzNyBlNGQxMGJkMzk3M2YxNjQ4M2UzNjY4YzljY2IyZDg0MmE1YWUwZTMwIGxlZ2FjeS10cnVuaworMjU4MzggZDc3ZTc0ODg2NWZmOWI4OWJhOTNjOGMzOWUyY2M4OTlkYmRmMjE0NSBsZWdhY3ktdHJ1bmsKKzI1ODM5IDgwNWJlN2MwZTI2YzUzMDlmMzVlYzk2OGVmZjdlZDkxYTFlNTIwYmMgbGVnYWN5LXRydW5rCisyNTg0MCA2NDA4Mzg0YzgxMzdiMjQ4YjU3MTU4NGMxYzQzZTU5YmE4MTA3Y2Q5IGxlZ2FjeS10cnVuaworMjU4NDEgZmI0NTc5MTE1MGQxOTc3NzczOTZiOTkzNThhZTIxOGEzYTJjY2M4NSBsZWdhY3ktdHJ1bmsKKzI1ODQyIDE1NzAyZTFiOTYxZWJiNmNmZWFhNGFhNjYwMzM4MmVmMDdhN2Y2NDYgbGVnYWN5LXRydW5rCisyNTg0MyA3ZGUzYzliNThkYjhmZWZlZjQ4NzQ3NTM0ODRhOGM3ZmE2YWIwNmM3IGxlZ2FjeS10cnVuaworMjU4NDQgMjNiOWFlNmIzZjdhZmViNWEwNGIzNDYxMTUxNjc1ZWU1ZjlkOTE4NiBsZWdhY3ktdHJ1bmsKKzI1ODQ1IDBmMWFlMzdjZDhlYjAyN2U5Mzc1N2E4MjAwZGI2NGI4ZWI0ZmU4MzkgbGVnYWN5LXRydW5rCisyNTg0NiBmZmNiMmZkMjk0N2UxMjhhNzgxMmFlNjk2NTczNGY3NjEwMTU3YTg5IGxlZ2FjeS10cnVuaworMjU4NDcgYjM2MGE2NTBhMGRiZTQ5ZWQzMTliNWIzNDJmYzNmNzk5MjBkMTg4NSBsZWdhY3ktdHJ1bmsKKzI1ODQ4IDhlY2QxYmFkMjQwODFiNWM5NTIxODQwNWExZWU3N2FjYmVmZDc5OWMgbGVnYWN5LXRydW5rCisyNTg0OSBmMDJjZGIyYmMxN2E3M2ZiOWQ0MTI5NmY4ZmMyZTBjMDQ2ZDA3M2Q3IGxlZ2FjeS10cnVuaworMjU4NTAgMTM2MWY3YmIzZjE5OTM3MTZiZDQ5MDJhMTYwZmE1YTZkMmJkZjdkYyBsZWdhY3ktdHJ1bmsKKzI1ODUxIDYwMzkyNTRhYWFkYzQ4NzI3OTc4YmU5NDc3ZGFhNDkwYzZmNDE5NGQgbGVnYWN5LXRydW5rCisyNTg1MiBkNGY1NDE0NjdiNmQ1MmU1ODhmZjBjNDIzMjY0NTk5ZTFhNjE2ODE4IGxlZ2FjeS10cnVuaworMjU4NTMgZmY5YWI3ZDMwYmJmYmQyMWI2YjcxNjFkNGRiYzM1NTJkMzdhNTcwZiBsZWdhY3ktdHJ1bmsKKzI1ODU0IDQyMjUxM2Y0MjBjZjM5ZmMyNzFiNDU2YWIxNGNiNTczNjAwMmQxMTQgbGVnYWN5LXRydW5rCisyNTg1NSA2NmFkYjU1MWNkMzhmM2QyYjBmYTU4YzYwNzEyNzlmODE3YWYyNGYzIGxlZ2FjeS10cnVuaworMjU4NTYgNzIyNGExZGY0ODA5ZmI0NzFhZjM0YjJkZDBmMzJhOTM3YzkyZWI1ZSBsZWdhY3ktdHJ1bmsKKzI1ODU3IDkxZjlhMjQ4ODdjYjVlNTgwOGVlMDUzYTdhZjBjYmUzMzIxNjljN2IgbGVnYWN5LXRydW5rCisyNTg1OCBlY2QxODFiMDJhOGE5NjZhZTFkN2FiOTFmMTBmZDIxZTFkYmI3OGM3IGxlZ2FjeS10cnVuaworMjU4NTkgMzkzYjBjM2Q5NzczMjQ3YTZmZjMxM2VkMGY5M2NmOGNjMmM3YzNmNSBsZWdhY3ktdHJ1bmsKKzI1ODYwIDU0YmNlM2NhYmNjZDU3YzdjMzhmNmU0MzBhNmNhNjk4ODU4M2ZmMzkgbGVnYWN5LXRydW5rCisyNTg2MSAzYTNkZTY1NjdmMWE1ZDIxNTk3MmU2NTZhZmI2OTk1NTEzNzcyNDk1IGxlZ2FjeS10cnVuaworMjU4NjIgODJiZGJjYTAyYzA3NTFhY2EzOTM3YTNlOWVjMzVlYWVlNTRmNzU3YyBsZWdhY3ktdHJ1bmsKKzI1ODYzIDllM2Q2YjVjZWUwNzYyZDY2MDUzOTYyYTBiZWFjOGI5MDdjODAxY2QgbGVnYWN5LXRydW5rCisyNTg2NCA1YjhiZTg2MTFkOGNkODkxZDEyMmM4OThkM2FlNWY1ZGQzNzA4NTQwIGxlZ2FjeS10cnVuaworMjU4NjUgYzgxNjU3NThhNmRlN2MyYTA1YWNjOTU3OTVhNmRlZDU3ZTI3NWQzYiBsZWdhY3ktdHJ1bmsKKzI1ODY2IDI1ZTJiNTgwYjJjZmJiY2IxYmExNTQ4MjJkMGU3NjY3MTE5MjQzNWQgbGVnYWN5LXRydW5rCisyNTg2NyBhMzJjN2IzZjFmMTEwNmM5Yzg4ZDgwMmVjNDFhZDFkMGU5ZDU2MTU2IGxlZ2FjeS10cnVuaworMjU4NjggZTk0ZWRkZWNmMzMwYTA0MDQyOTQ5OGZhN2ZkOTJhOGVkMjU3MTBkZiBsZWdhY3ktdHJ1bmsKKzI1ODY5IGU3Nzc0NTI2NDgzMDZlZTYyMTRhNWNlOGFhMzcwMDkwNjQ5ZDBkMzYgbGVnYWN5LXRydW5rCisyNTg3MCAzYmQyMmJkMTg3YzMyYjUzYzJmZDZiODliMTYzYjY4YjI2ZDUxN2Q0IGxlZ2FjeS10cnVuaworMjU4NzEgNTRjMDVhOTQ3YmNiYzU4ZDg5NTAxNzE0NTdjMzM5MjRlNjNhODlhYSBsZWdhY3ktdHJ1bmsKKzI1ODcyIDBlZGEzZjgyYjZmM2Y0MjgxNGY3OThmMWE0OGVmMzhiZmU0MzJhYmMgbGVnYWN5LXRydW5rCisyNTg3MyAyMDVjMTA2MzJmMDg3ZjM5ZTE4YjQxZTUyMGRjM2U3MjdiY2Y1MjFhIHJlbGVhc2UyMi1tYWludAorMjU4NzQgNjU4ZWEwMjY2MzRjNGMyMjAxM2RjODFkYTk1MzhkOWU5NTYwOTgxZCByZWxlYXNlMjItbWFpbnQKKzI1ODc1IDBkZDJmOWI1N2NmZjVhYzkxOGU4NzViMjdmNjQ2NTJhZmFkMTkyY2MgcmVsZWFzZTIyLW1haW50CisyNTg3NiBhNDA1NDNiM2UzYmYzMjY0M2JiMzVkOWNkZDUyZDgwYTFiY2RmMThhIHJlbGVhc2UyMi1tYWludAorMjU4NzcgODE0MzI5YTY0MjZjZDc3ZDk2MDZmMTNjOGIwMzVlMmUxY2EzMGMwNiByZWxlYXNlMjItbWFpbnQKKzI1ODc4IDRlZjM2OTNmMWEyNmFhZDkwMzdkZWU5NTEzZDJlZjE5ODIzYjljYzAgcmVsZWFzZTIyLW1haW50CisyNTg3OSA2NjU3OTFkNTNjNDM1NmEyMjY2NTdiOThjMTU2YWY1MmI1OWMxODI0IHJlbGVhc2UyMi1tYWludAorMjU4ODAgMTYyNDVhOWNiZmExZGYzNzBkYTdmMTQyZmJjZmQ5ZjI4MWVmMDdhMiByZWxlYXNlMjItbWFpbnQKKzI1ODgxIDdjN2M5MGZjNzAwNWE3ZWZjNzlmNzA4NGFmMzBlYTA3YjM5MzM0YzkgcmVsZWFzZTIyLW1haW50CisyNTg4MiBjM2RmOWI3YTZhY2FiMTg5YzRjYWY0NWRmMzMyOTMxZDc3M2JmNDI0IHJlbGVhc2UyMi1tYWludAorMjU4ODMgNzk1YmRkNjkyMTc2MDI1YTRhOTFhYzZjZWY4NTI4MTIwMmYwYzRkYyBsZWdhY3ktdHJ1bmsKKzI1ODg0IDhiZmM5MTg0OTI0MmMzMDg5OGRjYWRkOTk4OTQ3NDQ1ZjJlOGMyYWYgcmVsZWFzZTIyLW1haW50CisyNTg4NSA2NGE2ODM2MTg0OGNkNDAyNmZkZmRhMWI3MTQ1ZWE2OTNiMGRlYzM2IHJlbGVhc2UyMi1tYWludAorMjU4ODYgMGFhZTA5OTg2ZmM5OGY1NmQ3OWMzMmJlMDQxY2FkMWRhYjQzMjM1ZSByZWxlYXNlMjItbWFpbnQKKzI1ODg3IDRmZjM3YzU4YWI4OTM5M2FkOTI3YTIxNjAzMjg4OTI1NjFkY2VhZDMgcmVsZWFzZTIyLW1haW50CisyNTg4OCAwYzE5MTJmOWQxY2U4M2RlZmU0NzFmN2QwZjlmNmIwZTU3YWVmYTU0IHJlbGVhc2UyMi1tYWludAorMjU4ODkgYTJmZTBlY2QwY2UyYWJkMGNkYTY2OTlmNWY4Y2QyNWZmMmY2NzI2MCByZWxlYXNlMjItbWFpbnQKKzI1ODkwIDJmOWM2Y2JlYWE2MjhkNWUzZGRiZDVjNjU1ZTA0NWIwMjNmYzgxYWQgcmVsZWFzZTIyLW1haW50CisyNTg5MSBkNjZlNGU3YzllOWE3MGM1NjAzZTQ1OThmZDkyMTNlNzAwNjI3OTEyIHJlbGVhc2UyMi1tYWludAorMjU4OTIgNDU3MjFjMDIxNjA2NjRmY2I1ZGM1N2Y2MjJhMGYwNmMyYWQ4ZWUzYSByZWxlYXNlMjItbWFpbnQKKzI1ODkzIGVmMzE0YjM3ZTI2MGNlZGJiYzU3MWI2ZmM1MjAzNzE4MDE1ZTliYjkgcmVsZWFzZTIyLW1haW50CisyNTg5NCA5MTk4ZmIwNDM1ZmJhYWNlYTkwNzE4ODVjYzFjZGM4NTVjZGQ0MDNkIHJlbGVhc2UyMi1tYWludAorMjU4OTUgMjkxMjAxNWExZTdiNzZiODVlNWUzYzJhNzQ2YWE0YmFhOTA2YzVhMyByZWxlYXNlMjItbWFpbnQKKzI1ODk2IDgwOTBkMGQ2M2VlMWE1OTE3ZTBkY2I5NWU4ODI4OTQ4ZjhmNjJmOWEgcmVsZWFzZTIyLW1haW50CisyNTg5NyBmNmE3ZmRiZDMwZDRmMjE2ZjYxZGE2MDZlOTg4OWNlZDUxZTNkM2RkIHJlbGVhc2UyMi1tYWludAorMjU4OTggMjFlODk3MmQzN2U0NjgxZWNiNGU5OWE0M2Q4ODcwZjE0MGU3YWY2MyByZWxlYXNlMjItbWFpbnQKKzI1ODk5IDFhZmJjNTYxODhiMDA3NDhjYjlhMTA3NzhmMTQ5YjBhMWUwOGM0OGEgcmVsZWFzZTIyLW1haW50CisyNTkwMCBkYTlhZGVjNjZlMmIyMTlhMTQ3MTU4Yjg5ZDQ5NTY2MjM4YWU2NWMwIHJlbGVhc2UyMi1tYWludAorMjU5MDEgZTJjYmU5YzMzNDExYTBiMGI1Nzg0ZWE1NThmMzQwZjA4ZDIxYmZlNSByZWxlYXNlMjItbWFpbnQKKzI1OTAyIDc1ZWYxZjE2NzI1ZWY0ZWNhYmRjZWQ5NjAyYjMxNDU0NDhjYjZlZmYgcmVsZWFzZTIyLW1haW50CisyNTkwMyBiNzI2ZTZiM2E4NTIzY2E0NTIyNDI5Nzc1YTMzNTcwMzU0NjkwNjQ4IHJlbGVhc2UyMi1tYWludAorMjU5MDQgMTZlNTQyYWYyYzQ1YmMwNzkwM2FhMzBjYmVkMWJhNmNhNTY4ODg3OCByZWxlYXNlMjItbWFpbnQKKzI1OTA1IGM1YzEzMjYxNjZiOTIxYTQ3OTY0YzBkOTU5ODlkODE2NjY4NjY3ZTggcmVsZWFzZTIyLW1haW50CisyNTkwNiA3NTY2MTg3YTIwMWNmMjE0NTk4NmY3Mzg5YjI1YWI1OWY1OWE1ZGQwIHJlbGVhc2UyMi1tYWludAorMjU5MDcgMTQyZmQzZTEwNzNkMWUwNzU4NDIwMmRmMzhiNjE2N2NkMjVjYWE4NyBsZWdhY3ktdHJ1bmsKKzI1OTA4IDZiM2U5OWIyZmY5MWM0NTcxYTBkNmIyNjliMmNiZDUzOWUyYTFmZDQgcmVsZWFzZTIyLW1haW50CisyNTkwOSAwOTIyYzkxOWNlZGJlMzdjMGQ1OTcwZjIzOTAwODRhNTY5MWI4ZmViIGxlZ2FjeS10cnVuaworMjU5MTAgNjNmYmNhODk4ZWFjMjZhYzQ0ODQ4NWQzODBjZjc3ZGY1ZGZjNDcxZCBsZWdhY3ktdHJ1bmsKKzI1OTExIGZhZDA3MWZiNDE0MWZlNjA5YmE2NzZmZjc1ODVhNDVhOWY0ZTdmZjMgcmVsZWFzZTIyLW1haW50CisyNTkxMiBhZDE1YjM5YWQ4ZjcxMjQwNDAxMWEyOTM1MzMzNDQwZWY5YTk4YmEyIGxlZ2FjeS10cnVuaworMjU5MTMgOGI2MzZmY2I4NjE1ZWEyOTIwZWNkYjk3N2Y1ZDI2MWE0MmE0ODM3OCByZWxlYXNlMjItbWFpbnQKKzI1OTE0IDllYjRlNjIzMDliMGUyMzJlMDdjZWZkNDA3Y2ZlNzMxYWI2YjFhMTggbGVnYWN5LXRydW5rCisyNTkxNSAyNWI1OTlmMzYwYmMyMWQxODM1NzRmYmI5OWMzZGE0NGZlZmFkNjBjIGxlZ2FjeS10cnVuaworMjU5MTYgNmRlMWExOWY0N2E0MjVmZTExZjI5MWJhYzZiYTQyMGEyYjJiNGIwZiByZWxlYXNlMjItbWFpbnQKKzI1OTE3IGY5ZDk2ZGVkZDFmNDY2YjQ3ZDEwNDdhNjMzYWU5MDIzMjJmMjVjYzEgcmVsZWFzZTIyLW1haW50CisyNTkxOCBmMmEzYWY0ZmE0ZmZlZWYzNGI3ZWM3MGU4YTE0NjViOTViZWQ1MzAxIGxlZ2FjeS10cnVuaworMjU5MTkgYjY4YWY0YTgwMDBiYTEyYTYxYWRmZjhjZDU2MjlhMjQ0NGRlZmQyNSByZWxlYXNlMjItbWFpbnQKKzI1OTIwIDNmNDIxNjM0YzM3Y2M2YzVlMmY1NTAyODU3YjU3YmI4NjRhZjcwZjMgcmVsZWFzZTIyLW1haW50CisyNTkyMSBiNTlhZDRiOTdhNDI2ZTE0ZmI1ZjAzNDI5YzhmOGY1YWU4YjlhMGI1IHJlbGVhc2UyMi1tYWludAorMjU5MjIgN2E0Y2I0ZTk3OTc2NmFhNjBlZDU3NDM1NTY5ZTc3MjY4N2FiY2Y5ZCBsZWdhY3ktdHJ1bmsKKzI1OTIzIDA0M2FkN2FkYzg5NmY0YTQ4ZmUzMzQ1MmM1ZWYwMmY5ZWM5MmZlZDIgbGVnYWN5LXRydW5rCisyNTkyNCAzMDNiNmFkMTNhMzJkOTk1MTEyYzlhMzEzZjA3ZGJjNTY3YzdkOGVjIGxlZ2FjeS10cnVuaworMjU5MjUgM2JmMmI1YWNhNjFlYzE4NTBkNTAyNjk4MjI0MjZkMThlNmJiY2YwOCBsZWdhY3ktdHJ1bmsKKzI1OTI2IDliYjQ1MDM2NWRmNzg3MWMwZTQ5YzNlMjQ4MjgzODU3Mzk3MzZmOTMgbGVnYWN5LXRydW5rCisyNTkyNyA5MDZhZDM2Y2I3YmNjZTc1ZDVjODg1MTA4Y2RmYWFjZTAwNzVmM2YzIGxlZ2FjeS10cnVuaworMjU5MjggMzllNDJkNmY1ZGEyZDA3MDRhNTI2MmJiM2I5ZGZiMGJmYTNiY2VkNCBsZWdhY3ktdHJ1bmsKKzI1OTI5IGFlZGRhMGFiZDMxM2UwMGVhYTQ3Y2QyNTg3ZDhmZWFkNWEzOTMzMGUgbGVnYWN5LXRydW5rCisyNTkzMCA2YTFjODc1MmE2NWZiMDcxZmRkNDUxMmE5NTNkYWUxNjBmZTNjMjA2IGxlZ2FjeS10cnVuaworMjU5MzEgZWU0YjU5YjVmZWI3MmY3YmViMDJkMjcwOWE0MGIxZDk5ODUzYThhNCBsZWdhY3ktdHJ1bmsKKzI1OTMyIDQ3MGU5ZGEyMWM0YWU0ZmY1MWYzNjI3ODI1MDczYWRmNzMxNGVmMGEgcmVsZWFzZTIyLW1haW50CisyNTkzMyBkMTkwYjJkMzAzYzI4MWQ3YmQyYzE5NmQ0ODE0MjBhYmJlMDRiZWI2IHJlbGVhc2UyMi1tYWludAorMjU5MzQgNWEzMGQ0YjNkYTM3YTEwYzYwMTRhNzgxNDYwMmU5NjFlMjQwZDFjOSByZWxlYXNlMjItbWFpbnQKKzI1OTM1IDI5ODgwMmFiZDM4ZGZmZmE3OWI0NzJjMmY1ZGRjMzM3MGViMjRmZmMgbGVnYWN5LXRydW5rCisyNTkzNiAwNmE4MTU2ZTNiY2Y3M2JmY2I2NDU3ZDA4NmJiMjVjY2Q2MjI0ZjZiIHJlbGVhc2UyMi1tYWludAorMjU5MzcgYmMyMGJhYWFlM2VlMTE5ZTM5YTlmMmUyYTJmNmEyNDNkMTlkYjA0OCBsZWdhY3ktdHJ1bmsKKzI1OTM4IGQ3MWQzYjcxNWIxM2VhMjk0YWQ4M2Y1MmZkZmJmMWRiYmIwMzFhMTQgcmVsZWFzZTIyLW1haW50CisyNTkzOSBlNmM2YmFiY2VlZTUzNjBmM2RiNzM4NGQ3YTQ4Y2FjMWE5NTllMjc4IHJlbGVhc2UyMi1tYWludAorMjU5NDAgM2EyMWRiZTFiNmZlNDY4OWE4ZTg1ZDYwZGM1MWJjMTc3MzRkYWYxOSByZWxlYXNlMjItbWFpbnQKKzI1OTQxIDY0YTEwNDlmZTUzYjk2MWE1MWI4OTkwZDU0OTBhOWJkMTQwMmI3ZGMgcmVsZWFzZTIyLW1haW50CisyNTk0MiBmMGVmOGI0MjZkOGQ5YjA3Y2FiM2ZhYzdiYmEzNGM5YmYyODg0ZDg3IHJlbGVhc2UyMi1tYWludAorMjU5NDMgMmQzM2NmZDZjMTdmMDc3OWJmN2NkM2Q0MDI0MWIwMGI4OGE2OTU3MCByZWxlYXNlMjItbWFpbnQKKzI1OTQ0IDlhMTdiM2EzYWYwOTg5YzBkNDFmNGFkMzE0YWUzZGExZmY0MTNlMTggcmVsZWFzZTIyLW1haW50CisyNTk0NCAxMWM5NTJjN2Q0YmU2NjM4MDQwNzY0OTEwYmU4MGJkOWMzYzE3ZGU2IHJlbGVhc2UyMi1tYWludAorMjU5NDYgYmNkMWZkZjEzYWNmZTM2NzFhZjY4NjY0MTIwYTRmZTg4Y2ZkNGJjNSBsZWdhY3ktdHJ1bmsKKzI1OTQ3IDkzZGFhNGZkZTA4N2VkZGFjODNkNTEyNWExOTliNGExNzg5YjY2YWQgbGVnYWN5LXRydW5rCisyNTk0OCAzZDY4MDg1ZjQ5NWY5ZTU4ZTM2NTI0N2RlMzIxNDk2ODZiYjBlMTk1IGxlZ2FjeS10cnVuaworMjU5NDkgOTFlYWI3NDU4MTBmMTEzYzQwNWZlNmYyNDc2YTUyNmFlNGQ2MTljMCBsZWdhY3ktdHJ1bmsKKzI1OTUwIGYxZGJlY2I3ZTQxNjBkMjc0ZTJmYWQ0MmI0NGQ4MGQ5M2UzNjc5M2YgbGVnYWN5LXRydW5rCisyNTk1MSA2NmU4NWE3MzJkZGRlMTkyNTg2Y2E0YTAyYjQwMjk1ZjQxYjRhOGRhIGxlZ2FjeS10cnVuaworMjU5NTIgYzE4ZmU0ODcyNTcxNjBmZDY4MzczYjA0MDJiMjc1OTVmOWEyMWJjNiBsZWdhY3ktdHJ1bmsKKzI1OTUzIDdiY2U0NzUxYmZiMzQwZjJmMTgyOGVkMWYzNzdmNmNmMjJlMDdmNTcgbGVnYWN5LXRydW5rCisyNTk1NCA3ZDBmMGJiOTQ0OGIwMTAwNjI2ZDgzOGFhNzI3NmYxN2MxN2ZkOWE0IGxlZ2FjeS10cnVuaworMjU5NTUgYTc1OGQ0YzQwMWUwOGVhYWRjODIwNWFjZjM2Yzc3MDgwMzY2YzU4MSBsZWdhY3ktdHJ1bmsKKzI1OTU2IDliNTMxMGNmYTJlMGRkYjE2MGM3M2Y3YjdkYjViYmE3NjVhYzdjZmIgbGVnYWN5LXRydW5rCisyNTk1NyAyMDRkNDZmYzU0ZjY4ZTAzMzRmZDcxNjkzNjBkZDgwOWEyOTBjMWE1IGxlZ2FjeS10cnVuaworMjU5NTggMGEzYmYyMmFlY2E0YTJlNGI4NWY0ZWU3MjFhMTdiZDU1NDFlMzRjMiBsZWdhY3ktdHJ1bmsKKzI1OTU5IDFjNzIwN2FkNWRiODE1NzgyMzM4ZWRjZTU3ZjVjYTE0ZjliMjY4ZjUgcmVsZWFzZTIyLW1haW50CisyNTk2MCA4MDgyMWE2NWZkNDk4MTgxOGQ0ZTcyOGI5YzhlNzQzN2E1ZmRmZDAwIHJlbGVhc2UyMi1tYWludAorMjU5NjEgMTk0ZWQ1ZTBkYzhmZjBkZTEzMGU5YjI1ZTY4OTMyMDQxNmIzNmY4YiBsZWdhY3ktdHJ1bmsKKzI1OTYyIDBjNWM2NGI3NWQ1ZDBhMTgxMmRlOWViM2EwNzU1NTFiNmM0OTc0MDQgbGVnYWN5LXRydW5rCisyNTk2MyBhMzMxYzYxNmJiMGFkNWNjNTRlYTlmNzkzZWRmZmQ2NjhjY2MzNGY2IGxlZ2FjeS10cnVuaworMjU5NjQgZjNhOTEzZTY0ZWI4ZWQ0ZGI5MjZiMTAwOTBhOWRkMWFlODAyYWNmZSBsZWdhY3ktdHJ1bmsKKzI1OTY1IDI4NjhlOWE5ZTI4MGI2OGEzOTY1MmUyNjk3ZTUyYjdhNTQ0MmE2ODQgbGVnYWN5LXRydW5rCisyNTk2NiAzZjRiMmY5M2U4YjViNTQyNmU4ODhjNDliNDQ5YjdjNWY4M2RkYTk5IGxlZ2FjeS10cnVuaworMjU5NjcgZGExNjQ1ZmQ5YzI0MzhhZmViZTc0YzA5MzIwN2RiOGJmNjVhOTljNCBsZWdhY3ktdHJ1bmsKKzI1OTY4IDFjODM4YmU2ZDAwNGJiODg2MDYyZjNlZGM5OGE2MDQ4ZjA5M2U2MDIgcmVsZWFzZTIyLW1haW50CisyNTk2OSBhYzI0YzJjOWJjYWY4M2Q4Y2RmNWVjZGZkYWI4MDE2NmU2YmZmYTUzIGxlZ2FjeS10cnVuaworMjU5NzAgODM3NzZiYTU4MGVmMjBhNWM0MzVkZTQyYjdkNmM4NzUyY2I4ODQwMSBsZWdhY3ktdHJ1bmsKKzI1OTcxIDRjN2JiMGI0ZDM1NGJkMjQ3NjEzYmZmYmExM2I5NmU0NjZjMGQzMTcgbGVnYWN5LXRydW5rCisyNTk3MiBjOWI3MzI2MjhlNmM2MDYzZjE4ZjBiMmQwNWZjNjk1ZTQ1ZGVmNzM3IGxlZ2FjeS10cnVuaworMjU5NzMgMjY3ODVmZTYzY2JiZTJkNGM2NTkxYWRiODY5OGQ2MzI2YjM0Nzk2YyBsZWdhY3ktdHJ1bmsKKzI1OTc0IGY2MmJmYjBiMDk0NmNkNmMxMzcyNzU5MzcxY2EwZmE1MTU3ODdlZGUgbGVnYWN5LXRydW5rCisyNTk3NSBkZGM5NTQzYzc2YTAzMWM5Y2IyZDIzNzhkM2IxMjUzMjkyMDIxNWI5IGxlZ2FjeS10cnVuaworMjU5NzYgZjI5NGZkZDE4YjViMDhhNGMwNzMxZmE5MDVhNGVjYjA3NjcyNzYxYSBsZWdhY3ktdHJ1bmsKKzI1OTc3IGQ2ZjUwNjRmMjY3MzcxM2ZhNjVlOTNmZTE0ODcyYzBlZjRjZjkwNmIgbGVnYWN5LXRydW5rCisyNTk3OCAzMjk5YjdhYmE4ZWJlNzAzMjljMWVjMWMwNGZlY2VhOTQ1OTE0ZjBlIGxlZ2FjeS10cnVuaworMjU5NzkgNjc5NmRkMzBhNjAyNDc5NGJkMGExMGI3ZDRhNjk2ZTYwYmEyOWJkNiBsZWdhY3ktdHJ1bmsKKzI1OTgwIDE5ZDRlODM2YmQwNzVlZWRlYTIxMTUyMGMyNmFkYjEwMGJkNjk1M2YgbGVnYWN5LXRydW5rCisyNTk4MSBlYzZlY2JiMzRiMDZiOWUwNDViODhlNjYyZDVkZDg3MDFiZTIzMWQzIGxlZ2FjeS10cnVuaworMjU5ODIgNmE4NTA0NDhmYzhlOGUzYWM5YjM2ZWE5NzA3NTQ5NDNmZjExODI3NyByZWxlYXNlMjItbWFpbnQKKzI1OTgzIDgzMGM4MjlhN2ViMmFlZDU1MjJhN2E0Nzk3ODk2OWRhODZmNGVjZmYgbGVnYWN5LXRydW5rCisyNTk4NCBhNmJiM2NjOTE5Yjk2NTZkNjdlNzdkODg1OWNjNDBiMjJiYzY0YTFjIHJlbGVhc2UyMi1tYWludAorMjU5ODUgZDlmMzAzMDNjODYwZDAyMThjMWQ1ODA0MjYzZjE0MmUxNzhkMGI0NyBsZWdhY3ktdHJ1bmsKKzI1OTg2IDg4MGQzMTA2NDk5YmFiNWJlZjRiOTc2YTM3ZGQyYmVhY2ExMjVlN2QgcmVsZWFzZTIxLW1haW50CisyNTk4NyA4OThjMzkyNDc3ZDkxZDEyODY1MmM1NzQxODUxODRlNzI2NTJiOTkwIGxlZ2FjeS10cnVuaworMjU5ODggMDQ0NmVlYjc4N2I3ZjkyZGFkMjFhNTZkYWJkMmFjNzMxNGViZGM1NCByZWxlYXNlMjItbWFpbnQKKzI1OTg5IDUxYjFjNWVhMGZiYjQ1NjE3NGU1NDBiODhmNzNhNDVhMzdhZTAwMTMgcmVsZWFzZTIxLW1haW50CisyNTk5MCA4NDY4NGZjMDJkYTAwNGY0OGMzZWM5NWYwYTVjNTc4NjZlMTZlOTdhIGxlZ2FjeS10cnVuaworMjU5OTEgNzIzMGUwMWMzYzQ5NGVkNGMzMzIwNThhOTI0ZjhjMDQyOTM4NjgwZSBsZWdhY3ktdHJ1bmsKKzI1OTkyIGU2ZmNjZGU2MTA4NjZkMWIyZmEyNjdiNGQ3MTE1N2YxODUyNTNkOTggbGVnYWN5LXRydW5rCisyNTk5MyA3ODcwZmFjMDQ5ZjcyMTNhNzc4NjFlNTA5NzQ0MTMyYjExZTQ3MzczIGxlZ2FjeS10cnVuaworMjU5OTQgMzQ5NDA0NDI2ZmFhYzM3ZTI0NWM1ZDcyZDU4OTEyYzU4MjQ1MWI5YiBsZWdhY3ktdHJ1bmsKKzI1OTk1IGY4YzY1OTg0OGFkNmY3ODJiNzhiMGFkM2EwYmFhNzI4YzZjZjQwZjUgbGVnYWN5LXRydW5rCisyNTk5NiBiOWNlOTY5MjgxY2I3MzgyMTM1MWY2OWU5OGM1NjRkMGRmYzAwZDU0IGxlZ2FjeS10cnVuaworMjU5OTcgNzI2Yzk2MWYzZGI1MWE3NTBmZWVlYzE1Zjk5ZDlkNjZjNmRlNmZiNSBsZWdhY3ktdHJ1bmsKKzI1OTk4IDBmODAxNjI2YzJkMzc5YzhjOGI0YTQ5MjMwNzA0ODg1MGExZTZmNzIgbGVnYWN5LXRydW5rCisyNTk5OSBkNzc4ZWE5ZGU3ODBmYWMwZjg3ODYzMzE1NDYyMTk0NmM3NDVmOGI4IGxlZ2FjeS10cnVuaworMjYwMDAgYzE2NjYxMDRiNTU0ZjlhNmNlY2UzYjRhMWYzNDYxZDAxNTgzM2I5NyBsZWdhY3ktdHJ1bmsKKzI2MDAxIDljMmNhMzdiZGVlYzU4MTU2ZTRhYTI4ZGVmYTVmNDRiMjAxYjdhMTMgbGVnYWN5LXRydW5rCisyNjAwMiBlYzEwNDNmNmQwNWVmY2U3Nzc4YTZjZmI4NmU0YjMyNzI4NTZjOGU3IGxlZ2FjeS10cnVuaworMjYwMDMgY2VjZjMxZGI4YjBkYjU3MzQzODBjMjhhYzM1YzY0NmVjYjgzNDAyYSByZWxlYXNlMjItbWFpbnQKKzI2MDA0IDk2YjEzNmI2MTE3ODQ1NDhlYmEwNzMyMzE5ZGU2MWU1NTgyMWRmNTkgbGVnYWN5LXRydW5rCisyNjAwNSBkMjkxMTlkMjQzZTllMzdhNGE0MDVkZWUxN2ZkNTE1ZTdjMGVhMmRjIGxlZ2FjeS10cnVuaworMjYwMDYgYjE3MmVlOTNjMTNjNmM5MzJkZGIwZmU2ZmI2OWEwMGE5NjViODQ2OSBsZWdhY3ktdHJ1bmsKKzI2MDA3IDE1MGYwMzQwN2QwZDI2OTcyNDNkMTZhYTNiZmJmZjI1ZGU4NGJjNzAgcmVsZWFzZTIyLW1haW50CisyNjAwOCA4NmEyN2JhMWJlZTc1ZjAyMmJkZTIyZGUxMmEwOTZkOGQ5ZjZlZDVjIHJlbGVhc2UyMS1tYWludAorMjYwMDkgNTY1NWJmYjYwN2NhNzIyNGFkOTdjYzk1YmJjMzcxZjM5ZmIxZGQxOCBsZWdhY3ktdHJ1bmsKKzI2MDEwIDhhODM2ZDBiNTk3NDE2NWZmMGI4NDdmYzMxYjRiMjFjYjA1MWU0NDIgbGVnYWN5LXRydW5rCisyNjAxMSAxNjE2YmQ4YjMxYmMwNDgwODczNTQwOTc5ODY3NGE1YjQxOGQxZGQ5IGxlZ2FjeS10cnVuaworMjYwMTIgMjI4OGM3MjRmZTJiYWQwMTQwZmE2OTljNjRjMjAwZDA0Y2ZmZGE5NSBsZWdhY3ktdHJ1bmsKKzI2MDEzIGYzYTQxNmIxNzhjNDIzY2YwOWM0MGY0MWRlZDk2ZjAxMTBjZDVmZWIgbGVnYWN5LXRydW5rCisyNjAxNCBlOTcxNDc1YzA0NzE5MzFjZWViNjNlN2JlYTZjZDFiZmJkZmY4ZjNlIGxlZ2FjeS10cnVuaworMjYwMTUgMmRhMTEzNzYwMGFlN2U5ZWFhMWQ1Mzg5OWRhZTJkMGIwNTM5OTkyMSBsZWdhY3ktdHJ1bmsKKzI2MDE2IGE4MmNlMTk4ZmU2OThjMmU1NzZkNDJlMmY5NWY5YjdhMWRiYmExYjIgbGVnYWN5LXRydW5rCisyNjAxNyAxMDcwMjNjMGM0NTZkZjNjMmM4MzI0OTQ1NTk4ZmEwN2VmZjZkZTI2IGxlZ2FjeS10cnVuaworMjYwMTggM2FhZGUxNTBlNzE3MjQ3YjM5YWVlMDQ2ODdkNmQ4OWYxMzEwZmFhOSBsZWdhY3ktdHJ1bmsKKzI2MDE5IGFmNzE5MTRkOGJkZjBkZmU1ZGI0N2Q5OTVmZDBhMDBhYmI4MzdkYmMgbGVnYWN5LXRydW5rCisyNjAyMCA0MDkzMTFjNzgzODM2NTNkNjgxMDk5MzE0YzA0ZDk5ZTFiNzdhZWNjIHJlbGVhc2UyMi1tYWludAorMjYwMjEgYmNjZDQ2MTNjNDk2YTMwYmIxYmFkNjQxOWNhNzg0OWJmNTllZjZkOSBsZWdhY3ktdHJ1bmsKKzI2MDIyIDQ2NDA3ZDBhNjAwMGY1ZWUyODhiNWFkOTQ4ZTQzMjBjY2E2YWU3MzEgbGVnYWN5LXRydW5rCisyNjAyMyBjMTZiZWE3OWY0ZGIzYjRlN2M1MWE1MTMzZTczMzk3NWFlMjQzY2M4IGxlZ2FjeS10cnVuaworMjYwMjQgMWFlYTdhZjA5MjYwZTdmMjE0ZjNmY2U1NGQyMmYyMDFjMmYxZjkxMSBsZWdhY3ktdHJ1bmsKKzI2MDI1IDlkMmE4ZjZiMDZiNmZiOWM0NWQ3NzZkZGRmNDE4Yjc3N2RlNTI1ZDIgbGVnYWN5LXRydW5rCisyNjAyNiBmNjNmMmJjOGJkYmE2ZjBkNWQ4ZTQyYTNlZGU3YjUwMzRiMzU3Mjg3IGxlZ2FjeS10cnVuaworMjYwMjcgNDVkYmZjZjBmYTE5ZmJjYjgwN2E1NmIxOWVlNzE1NWNjMWNlMDU1ZCBsZWdhY3ktdHJ1bmsKKzI2MDI4IDUzMmMyN2E3MzViN2I5MjViNjY4ZGQ5ODEzYWE5Y2M5NGU5ZjM0OTQgbGVnYWN5LXRydW5rCisyNjAyOSBkOTcxZDFlYjcyZjZlMjRmZmFkOWI5YTlmNmE5MDI0ZGJmYTdiZTI5IGxlZ2FjeS10cnVuaworMjYwMzAgM2UwZGE4NDkzOWQwYjMzNDA2YmNlYTA4MzYyYzYwZGRhN2EyZTRmOSBsZWdhY3ktdHJ1bmsKKzI2MDMxIGJmM2IwN2M2MmNmN2JlMjRlNDY5ZTNjNDE4YmE2NTQ3NGY2OGJhNjAgbGVnYWN5LXRydW5rCisyNjAzMiBmYzJlN2UzOTdiYzY2YmY5N2E4NjA5MDE3ZGViNDNkM2I5MjIwNWMwIHJlbGVhc2UyMi1tYWludAorMjYwMzIgNDA0NWU2ZTkyZmFmYWJhZDQyZjZjOTk4OWI2NzA3NmZiYWQ0NTJjYSByZWxlYXNlMjItbWFpbnQKKzI2MDM0IDg2Y2U5ZWUxNDA0NTBlMTZhNWJhYmZlMTRkMDNhNTdiNTZjNDAwYjYgbGVnYWN5LXRydW5rCisyNjAzNSBiOTY3NDBjNDJlODA3MGI3MmQ0MzE1NjQ1NjA4OTQ1OTEyODM2NTVmIGxlZ2FjeS10cnVuaworMjYwMzYgOTExZmUwNzkzMDUwNDY4MTMxYWE3ZDkyYzdkODY2YWNkNzc5Zjc0ZCByZWxlYXNlMjItbWFpbnQKKzI2MDM3IDU3ODExYzM1NWYzYWJjZWU1N2IzMzMwNzE4ZTY0MmM5ZTExYmY1MjEgbGVnYWN5LXRydW5rCisyNjAzOCAwYjU4ZWEwNzQ5NWNiMDdlYjhmZmNkOGZhZTRlODc4MmVlM2M2YjhmIGxlZ2FjeS10cnVuaworMjYwMzkgODgxYTZjMmQ1ZGIyYjhjZDZmYWJlOGZjYmJiMTkzNTZiOTdjOWEwZiBsZWdhY3ktdHJ1bmsKKzI2MDQwIDE4Y2ZlZjAxMWFiZTdlNjhhZjVlMGZiZGZjY2NkOGY4MWNjOTM0Y2MgbGVnYWN5LXRydW5rCisyNjA0MSA0ODhiOWIzZjU5OWFkNDEwZGIxYzEyNjc1OTdjODVmYTliZTQwYzkwIGxlZ2FjeS10cnVuaworMjYwNDIgN2MwY2NhYzk3ZjhlZmQ3ZDg1NjgxM2NlNGM4NTRkM2VmMzNmMTg2MSBsZWdhY3ktdHJ1bmsKKzI2MDQzIDEyMGU0YmEwNTUwYmQ3MDk3OTc5MjkxYjg5NzE5NWRkOWRlMmY4ZDcgbGVnYWN5LXRydW5rCisyNjA0NCA0NGJlNWU3NGYxNzI3YmU0NTU5MGNmMjIxZGJlYjg4YmY5NGNkYjI4IGxlZ2FjeS10cnVuaworMjYwNDUgNmYyZjFiMDRlODJlMGRjOTZkNzA1MTg5NzczYzQ4OGJjYzNkNDg4ZiBsZWdhY3ktdHJ1bmsKKzI2MDQ2IGZkMWI4ZWJlNGVhZTQ4YjZkNDdhMTg4MDMyNTM5YzIwZjYyMGJlYmEgbGVnYWN5LXRydW5rCisyNjA0NyBiNDU3NjM2NTM5ZTgwZDUxMTExYjBkOGY1NTY2MDJjOTViMDVlN2MyIGxlZ2FjeS10cnVuaworMjYwNDggZjhiZDkzMDY0NGFhMzQ0ZTU5NjllZmViOTRjYzYzNmM3MzE0NjBmNiBsZWdhY3ktdHJ1bmsKKzI2MDQ5IGVlZTMzNzJjMmY5NjJkNDg1NTI5MmFhNTRkNDcxNThmZTgwMDVhOGQgbGVnYWN5LXRydW5rCisyNjA1MCBjMDU5NmY4NGE4ZmIxNDliMzc4MzcwOWQ5NTE2MjhjZDZlYjE1MGI2IGxlZ2FjeS10cnVuaworMjYwNTEgNjE0MTY3ZGYyMDk2MGE2MmJjZGNmY2Y2MGZhZDlkZTk2ZjM0MWU1ZCBsZWdhY3ktdHJ1bmsKKzI2MDUyIDAwYjI5NzJhYjRhNGIxYTFiM2U5OGE2OTVmMmYwOTU1NWJlYmJkOWMgbGVnYWN5LXRydW5rCisyNjA1MyA1YWUzYzMxNjczZTRkZDY2MjFhN2ZmNzAzOGJkZjZlYWIxYzI5MWMyIGxlZ2FjeS10cnVuaworMjYwNTQgMmMwMmNmMjc4ZjAyODJmMTdlYzk1OWFkNmQ5ZmMxMzA2NTRkZDcxZiBsZWdhY3ktdHJ1bmsKKzI2MDU1IDU5NjE2NzY0N2JjZjU3ZGE0NjI1OWFmNjNjYjM1MDU0MzkwNTkwZGMgbGVnYWN5LXRydW5rCisyNjA1NiAxNzM4NzEyOTMwMzQ0YWEyNGM0MzEzOWNkMjk1MzNiZTVmM2UwNTFiIGxlZ2FjeS10cnVuaworMjYwNTcgZjA1ODNiMWU5M2FiMGY4YTUyNjNmNGQ2MzlhYzJjNDI4NjdhYjM3YyBsZWdhY3ktdHJ1bmsKKzI2MDU4IGZhMGYzNWY5NDRiNTYzMDBkNGFmYTk4MzBmM2IzYWJkNWYwNjdhMDIgbGVnYWN5LXRydW5rCisyNjA1OSA2YmI0Mzg2YjExMTEwMzM0NGNlODgzM2IzNzIxY2YyNzNiYmVkYWMxIGxlZ2FjeS10cnVuaworMjYwNjAgYTRhMWU2ZjU1NTMxOGFlMDIzNjMzMzU3ODkyMjA3MzFkMGQ4NWZiZiBsZWdhY3ktdHJ1bmsKKzI2MDYxIDM1ZjU4YzI5Nzg5OTY0NGNjMzc5MTZiNjFlNjkzN2U0YTkxMzY1ZjQgbGVnYWN5LXRydW5rCisyNjA2MiAwZWVjZTczYzEzYzA4ZGVhZDc0YTA5NWU0ZjgyZDFiZTFmZTBjYjI4IGxlZ2FjeS10cnVuaworMjYwNjMgY2YxYTA1Yzg2NTk1YzEwY2IyMGE0ZmIxNTMwNmNlYTlhZGE2NzU0ZiBsZWdhY3ktdHJ1bmsKKzI2MDY0IGYwN2NhOTk3MjMwNDA4OTI5ZDI0MzFkNTRjOWM2OGFjNjIzMzhhZGUgbGVnYWN5LXRydW5rCisyNjA2NSBlMGVlMDA5NDE3ZGYwNzNlZDFlNDBjNzllYzBlYjljZDAzY2NlYzM1IGxlZ2FjeS10cnVuaworMjYwNjYgMThkY2NkZjJjNDZkODAyNzRlYmJkZDljM2I5ZTM1NjVlNDU3MWY2MyBsZWdhY3ktdHJ1bmsKKzI2MDY3IDg3MDNkMjA1MjMzOTk4NjZmMjkxN2M1N2VjMjUwZjIxZGM3Y2NjYTYgbGVnYWN5LXRydW5rCisyNjA2OCAxNGViZDc2MTA5MDI2Y2FjYzdmM2QzNDc3MmE1MmE5NjA0ZDM3OGUwIGxlZ2FjeS10cnVuaworMjYwNjkgZGMyZjc0NWZjYzY3ZTgyYzdkZTQ0Y2VkZmQ0MmZjZjVjYWI5Mjg1ZSBsZWdhY3ktdHJ1bmsKKzI2MDcwIGFlYTZkZmVhYWFiODQxNjkyYzAyODhkMDBmNWNiMzEzZDczMmU3MTAgbGVnYWN5LXRydW5rCisyNjA3MSAzYWE0YmY3YWMzMWU5ODVmMzUxM2E4NjdhNDcxNzE1MDU5YzU3YTFmIGxlZ2FjeS10cnVuaworMjYwNzIgOGEyMjViZDg3NjNhZDBmZDYwYmRkMzc4OWFlZjllYTRlZDhjOTE4ZCBsZWdhY3ktdHJ1bmsKKzI2MDczIGNhNDY1ZTRkODhiYzFmNzJiYzM2OTM0ZWEzOTVmOTczNDUxMTkxZjMgbGVnYWN5LXRydW5rCisyNjA3NCBiMzgzZGZlMzZlZWU3ZGVhMzZmYjMyYTYyM2U5NWIxYTgwZjIxMDQ0IGxlZ2FjeS10cnVuaworMjYwNzUgY2M4YjczMDQwZTgzN2Q2YmVlMzA3MTE4N2UyZTg2ZDY5NTRhMDMwMSBsZWdhY3ktdHJ1bmsKKzI2MDc2IGNlY2E2Y2M0NDQyMDhjMTA4Y2Q2OTg3ZTI4NDI4MmQ1MDE4MjZlYWYgbGVnYWN5LXRydW5rCisyNjA3NyBlMGVkZmVlYTUxODNiNDYzMDE3MzcyNjgzYWY5MDgyNzUzYjYxNzZiIGxlZ2FjeS10cnVuaworMjYwNzggMjJmZGI0MTZiYTJmMWI0MjlmZWE3NjIwM2Q2YmZjMTEyMmJlYzkxNSBsZWdhY3ktdHJ1bmsKKzI2MDc5IDBiZGQ0MTNhMzQxNjliNDY5NDk2MWIwOTM5MjJhNjE5OGRmNTQyYzMgbGVnYWN5LXRydW5rCisyNjA4MCBjM2Q2MzczMDg5NTRhMzEyM2RjYTg3YWZhMzlhNTMyZTcwOTVhYzZlIGxlZ2FjeS10cnVuaworMjYwODEgZmEwYWM4NDU5MjliMjFlMGVjZTY1YTBhNmI3MzMwOWZiNmE5NWViZiBsZWdhY3ktdHJ1bmsKKzI2MDgyIDZjNGIxOTMwMTZjNjc1YzFjNTAzMGMzMTc2NzlkYWE5MDRkNDgwYWYgbGVnYWN5LXRydW5rCisyNjA4MyAyNTNkZTU4OGYyZmI2NWUyZjE3NGNkZGQ5MjNhZWY4MjU2YjY3Yjc5IGxlZ2FjeS10cnVuaworMjYwODQgYmE2OGRkYTE1ZGYwNjg3ZWNjYTEyMmU3NmIxMDNkYTZiZjBmZTI0MyBsZWdhY3ktdHJ1bmsKKzI2MDg1IDFlMzA2MmU2OWYyY2MxMTAzNTlkMTU0ZTYyYzJlYTdkNDE2OTRiYzcgbGVnYWN5LXRydW5rCisyNjA4NiA5YmFhOGM5YTFlODQzYTk4MTM5YmVjYjY5NTkwODVkOTM4YmFjNmFjIGxlZ2FjeS10cnVuaworMjYwODcgZmE5NTU5YzViMTAzNzE1MzI2NDM2YmEwZjU0Njc2MmQ1Y2Y5YjJkZSBsZWdhY3ktdHJ1bmsKKzI2MDg4IGM4NDExMGYwNWRjMzZjNDcxOTc2MDFmNjllZTYyM2M5Y2I1ZjViM2UgbGVnYWN5LXRydW5rCisyNjA4OSAwOTczNjkzZTRhZDIxZDY4OGIzYTQ3NzcxOWI2YWY1N2U1MGVhMTE3IGxlZ2FjeS10cnVuaworMjYwOTAgMTRiNzk4NmE5MmUxMDM4ZmE5MDJjNDA2OTE2M2U3MGFkYTZjYmExNCBsZWdhY3ktdHJ1bmsKKzI2MDkxIGNkZmYzYzdjMWE3NjQzNzkxMGY0MTljZTA0MzVjYjlhZjFjZjc4MmMgbGVnYWN5LXRydW5rCisyNjA5MiA2OTMxZGJkMmVkYjQyMWRiNTIzZTJiOWNlNmIwNzkzZGZkOWRhYWI0IHJlbGVhc2UyMi1tYWludAorMjYwOTMgMGI2NDU1MGE3NDYxMTVjNDdlYjZlODM0MmZmMmMzYWI4ODRiMGE3NSByZWxlYXNlMjEtbWFpbnQKKzI2MDk0IDAwMTU0YTBmZGU2MTc1YTRjODU0ZGY2Yjc1N2IzNDgwN2M1NjRjMmEgbGVnYWN5LXRydW5rCisyNjA5NSBkMjQ2NzAzODRjMzljZDI2MGM0MGVmZmZiYzM2N2NhMzNlZDVkNGYwIGxlZ2FjeS10cnVuaworMjYwOTYgMWFlNDIzMjYyZmM5ODY4MTVlZDk2OGFjMTljNjc4OTA0YmRjNjQ4ZCBsZWdhY3ktdHJ1bmsKKzI2MDk3IGYwMmVhOGU4MjRiMGMxMzc4OGUxZTE0M2JkNzYxMjI4NTNjM2Q3ZjAgbGVnYWN5LXRydW5rCisyNjA5OCA3M2U4MjcyMmIwM2MzOTJmMTU2YTFhYjA1OTdkNjNiNTlkZDRiN2U5IGxlZ2FjeS10cnVuaworMjYwOTkgODEwYzE0ZjI0MzczNmQ5MjJiNzIwMzNhZDFkOThlYjAwZGQwNzRjYyByZWxlYXNlMjItbWFpbnQKKzI2MTAwIDgyNmJjMTUyMmQyMjEyYzNmNGViMzAwMDc5MWJhNDZkNDBkYTc0YjEgbGVnYWN5LXRydW5rCisyNjEwMSBlNDQ5YzgxYzFjMDFmNGUwMmM1MGU4YmMxNTZjMWUxM2UzOWNiYmQwIGxlZ2FjeS10cnVuaworMjYxMDIgMjcxZDYyMWYwZTlmZGYyMmRhODNhODI4Y2MxOTU1MWJkZTQ4NjAwYSBsZWdhY3ktdHJ1bmsKKzI2MTAzIDc3MWIyYThkNDQ1ZGMzMjFhZDU3M2Y3OWIzY2Q4ZGI3ZDIyYWVmZjkgbGVnYWN5LXRydW5rCisyNjEwNCBmNTFiNzc4ODQwMTI4N2VmZTNlZjZlNjdkNmNlYzc5NGY2Y2Q0ZWFjIGxlZ2FjeS10cnVuaworMjYxMDUgNzM2MWVjODgxODhhOTFlMWExZThjNGJkNGZlM2Q1ZGRiZTU1Yzk2ZiBsZWdhY3ktdHJ1bmsKKzI2MTA2IDI4MGU3YTIwZTMxYTVjODY4MzRhYmU0YWE5YzIzMDliMWY5NGM5ZDcgcmVsZWFzZTIxLW1haW50CisyNjEwNyBjMTE4ZDA5NWJkZGViNWRiMTczNmNkYWZmZDIyZDVjNzhjM2ZjNzVjIHJlbGVhc2UyMi1tYWludAorMjYxMDggZmVlMmY2NmYzYzE2NWVmMGMxNjE5MTRmYzJiYWUzOWVmNjUzMDI2OSBsZWdhY3ktdHJ1bmsKKzI2MTA5IDFiZGYyMTdiYWQ5MzA5Yjc2NjkxNmE0OGZhMGU3ZGZmY2JjMTBlY2QgbGVnYWN5LXRydW5rCisyNjExMCAyMjI0YWZjNjNhNWJiOTYzZmYzNTE0NDRkZDI0NGQxMDA2OTdiNDRkIGxlZ2FjeS10cnVuaworMjYxMTEgNTNlZDlkZDZiY2Q1ZDQ5MDllNzk5NDM2MGYxZDgxMDdiNTRiMzk2NyBsZWdhY3ktdHJ1bmsKKzI2MTEyIDUyMjQwNWFiMzVjMWFkMmM2MjI4YzA1NjI2ZDZmYzhmYmZhYThjYWEgbGVnYWN5LXRydW5rCisyNjExMyA0YzEwZjE2OTI1MjMyNjQ1NzlkMTYwYmZiNjdkNDllNDIzOGE2NmYwIGxlZ2FjeS10cnVuaworMjYxMTQgNDA4MWVmZjkzMmZlMjg3OTI2YjNjYzkyMTIyNTk2NWRlYzI5NTlkOCBsZWdhY3ktdHJ1bmsKKzI2MTE1IDJhYTk0OWQwMmQ0MDUzMjhkMzEwNGM0MjU3MjM4Njk5MDE4OTFkNjAgbGVnYWN5LXRydW5rCisyNjExNiBjYjVmY2EzY2U3OWE5ZmE3OGM2YTcyYTc5MDg4ZjA3ZDVhMWNkZmQ1IGxlZ2FjeS10cnVuaworMjYxMTcgZmQ0NDk5OWU3ZWFkNDIxN2ZkNTEzZjUwODVkYWRmNTkwNjIxNTRkZiBsZWdhY3ktdHJ1bmsKKzI2MTE4IDY4NzFlNjc0NWFhNTQyMTBhOWIxMDJjZThjYTNjNDc1NDhiZTNmMjggbGVnYWN5LXRydW5rCisyNjExOSA2ZmE0NmMyMTc2NmQ5MjMxZGRhYThkYzdjYWFmZGE3NDFiZjYxNDg5IHJlbGVhc2UyMi1tYWludAorMjYxMjAgZTcwYzliN2FhZjNkNjg5NjRlMWZjM2M5NjJlMjU0NzU0ZTVhNGRmMiByZWxlYXNlMjItbWFpbnQKKzI2MTIxIDg3MTk4NjYwMTRhYjM2YTkwOWY3NTYwYjI4ZTQ2NDJhYTYyMTBjNjMgbGVnYWN5LXRydW5rCisyNjEyMiA5OTMxZjE1NGJlOTg4ZjVkODhkNGU5ZWQwYTg2NWRlOWQ3MTcyYTlmIGxlZ2FjeS10cnVuaworMjYxMjMgODE3YjQ5NGM5YjVlNDk3YjRmZDAwMzc5NzBhYzBhNGUyYTJhYjdhNCByZWxlYXNlMjEtbWFpbnQKKzI2MTIzIDViNTQ2NDBlNzJiNjZiOGMwODU3OTVlMjhlZjc1NmQ1OGI5NTVjNmMgcmVsZWFzZTIyLW1haW50CisyNjEyNCBhNzg4NGQ3ZDJkNDg5MDBmOTVkMmQwZDQ2YWY5MzRkNDQ5MzE5MTI4IHJlbGVhc2UyMi1tYWludAorMjYxMjUgMzQyODIyOWYxMmJiMTlhMjg2OWMzM2ZiNDJlMDllODUzNDJjNzQ1ZSBsZWdhY3ktdHJ1bmsKKzI2MTI2IGFkM2NlNzMwMTZiZmFhMWJjNmNjNWU2Njc3YzllNzY3MzYzYWQxYzAgbGVnYWN5LXRydW5rCisyNjEyNyBkMjZkODU3NWFjNjIxY2YyZmM4ZWQ2Yjk4MmVhYjMyOWJlNGU4Zjg0IGxlZ2FjeS10cnVuaworMjYxMjggNTRlYThhOTNlY2Q3ZTYyMTk3YjNiNmYzMzJkZWNhZjhlYzIzYjM2YSBsZWdhY3ktdHJ1bmsKKzI2MTI5IDNhNTA2NTAwNWZjZmQxMjExMmFhMmIzMmNkMzY1YTU4OGE1NTk1MTQgbGVnYWN5LXRydW5rCisyNjEzMCA5ZjUwOWU0OTBmY2M3OWNmZmVkZGIyZDRmNWYzZDYxZWI2YmYzMDhlIGxlZ2FjeS10cnVuaworMjYxMzEgMzE0ZTE0MTZhYTVkNWY1ZGNjZTYwMWI0YTU2NmUxOWE2NDJjNThiOSBsZWdhY3ktdHJ1bmsKKzI2MTMyIDI2MGExNzIwZjYyOWM0ZmYzNzAxYWI0YTRkNjYyMzY2ZDY1YWUxNTggbGVnYWN5LXRydW5rCisyNjEzMyA1OWQzOTEzYTI5YzQ0MzkzMjNjNzQxMGE3YmI2NDhjOWVlYzI0ZmM5IGxlZ2FjeS10cnVuaworMjYxMzQgYTZmOGUxMjg2YjE1NTZlZGVlYmQ1MTIzYWUwNGQ2NmQ3NzJhM2I2OCBsZWdhY3ktdHJ1bmsKKzI2MTM1IDAyZmRkZjdjMjVjMmRlM2UzMmJmMDc4MTgzMzI3YjM1MDNhMGYzYjkgbGVnYWN5LXRydW5rCisyNjEzNiA3NGRlODY0MTgyODQxMGUyNTYyZGI1N2Y3MjY0NmNmNWQyYjE2YzE4IHJlbGVhc2UyMi1tYWludAorMjYxMzcgZDZlZjk1N2JmMjkwZmM2ZTY1ZjcxZmQ3MjM0MmM2OTQxNjFjYTJlYSBsZWdhY3ktdHJ1bmsKKzI2MTM4IGE2YThjNjllYzBlN2M1OGUxM2I5MGNiNWJhZWVjZWZhNjNjYzUzNjcgbGVnYWN5LXRydW5rCisyNjEzOSAzNjE4NmFmM2MxMjUxNjRhNzBlYTFmYWQyYTU3YTk3MjcwZTZiOGNhIHJlbGVhc2UyMS1tYWludAorMjYxNDAgMTQ5ZmJiYjAzOTE1NzViNWY4ODViN2M5MmUwNzI5ZDk2YWNlZmE4NSByZWxlYXNlMjItbWFpbnQKKzI2MTQxIDVmN2Q3MGFiNzRlZWZmZGZjZGRlNzIxY2RhNWZhZWI3MTVjNGFlZTggbGVnYWN5LXRydW5rCisyNjE0MiBlYzY3ZmNlM2ZhM2NlZDRhM2M4ZDhjYzQ4Yjk2NTcwZmYyZmNkZmJmIGxlZ2FjeS10cnVuaworMjYxNDMgZDk5YTFkZGY5NTE4MDUxNzhkOGYxODVhN2YzMjZhODJiM2ZhMWJlMSBsZWdhY3ktdHJ1bmsKKzI2MTQ0IDAxYzVhZTZmYzViYmJhM2E3ZTFhYTE1N2M2NmQxZTU1ZTkzZjMwZGUgbGVnYWN5LXRydW5rCisyNjE0NSAwYjJjMDg3NTQyYmNiZmYzNzA0NjIyMzQ5YWJiOWQ5YzViNWIwNmJjIGxlZ2FjeS10cnVuaworMjYxNDYgYWE4ZDU5ODIzYWRkMWE4ZTdmN2U4YTdmZThjN2Y3MTBhOTdlM2M4YiBsZWdhY3ktdHJ1bmsKKzI2MTQ3IGE4Yzc1Y2Y3NGRjMTQxMTJjMGVjODBjMmMyZGJmNjVhZmM3MzlkYTggbGVnYWN5LXRydW5rCisyNjE0OCAwMjhlYmM4ZmIzOTA4YThjZGI3YTk0MGJlMWExYzQ1YzQ0MTcyODY4IGxlZ2FjeS10cnVuaworMjYxNDkgMjIzOTZmNzdjMzU2YWEzMDlmYjhmMDIwYTY4OWQ4NDM5YTQzM2I5MSBsZWdhY3ktdHJ1bmsKKzI2MTUwIDk3YTM0NjQzZTU0NGE5NzA1ZGRkZDQ4NzgxZDgyMTgzMjEwNTExMmYgbGVnYWN5LXRydW5rCisyNjE1MSAwNjY2OGQ4ZDkzNDNmNDY0ZDkxMDhkM2QyY2FiYWU0ZjU4YjM5YjY1IHJlbGVhc2UyMi1tYWludAorMjYxNTIgOWFjYWI3NmIwMDE3OGQ2NDg3ZDY0Y2IwMGQyZWE4NTAwM2EzYTM0YSBsZWdhY3ktdHJ1bmsKKzI2MTUzIDE5MjI5MTVjYjczZDdhOGFjY2M1MWZmOTVkNTQ4ODA4MTllZjZmNjIgcmVsZWFzZTIyLW1haW50CisyNjE1NCAzYzg3ODE0OTJkMWZkYjhiYTM5NTBlMmU5NGE0Zjc1ZWViMmU0YTdiIHJlbGVhc2UyMS1tYWludAorMjYxNTUgZjY2M2ZmYmU5ZTVjNDBkNGEyYWM1OWU4YTg4ZDVmMDhlYTkyYjhhZCBsZWdhY3ktdHJ1bmsKKzI2MTU2IDRlZDA2ZjhhYWRkMzc4NjMyODhlMzZkYWE2ZWUzMTZlNGJlOWJhZjIgbGVnYWN5LXRydW5rCisyNjE1NyBhYzVlMWQ5MDI5Yjc5NDUyNmM3ZDMyMDgyYzdlMzA4MGQ5YWU4ZTExIGxlZ2FjeS10cnVuaworMjYxNTggNjkzZTAwMTY0MDgxYWVkY2NjOGNmNDc1MDJmODg0OGU4Y2I2ZjE1NSByZWxlYXNlMjItbWFpbnQKKzI2MTU5IDBlYjgzYWFjZTA3MTY2N2RhOTVhODMyZmRlYWFhODZmMzZhZjM4ZWMgbGVnYWN5LXRydW5rCisyNjE2MCA1OGIyZjQ2MjZiNjRkNzhhMWYxODQ1ODc2MjQ3MWY4NDU1ZGQxODlhIGxlZ2FjeS10cnVuaworMjYxNjEgMjEwMDg4N2I0N2NiYjliZTJjZmVjMWYzYzhiNmFjZGRmODFmMDg1ZiBsZWdhY3ktdHJ1bmsKKzI2MTYyIGYwMjc3MTQ2YWExNmRiNjQ5ZjdkM2Y5YTcyZjliNWFhNDQ4ODVmOTMgbGVnYWN5LXRydW5rCisyNjE2MyAxN2ExNzUxYWQxZDkwMjFmZWE4NGExOTYwNWMzODk5YjdkZmRmNzdkIHJlbGVhc2UyMS1tYWludAorMjYxNjQgMjFmMzUzMTI0MTQ1YzQzYTM5MjFjODIyNWU5ZTU1NzMwNWNmOWFmZiBsZWdhY3ktdHJ1bmsKKzI2MTY1IDc3MzQzYWEwM2UyZjM2M2M3YjQxMDQxNjEwZjc4YzgzMzRjYjYxZjUgbGVnYWN5LXRydW5rCisyNjE2NiBmMWFmOGFkMTEwMDBhMDg5YmUwZjlmZGI1YmEzNzJjMTk4MmMxN2EzIGxlZ2FjeS10cnVuaworMjYxNjcgYzgxNWUwMDNkYmNkOGJkNWMwY2U0NTg0NDExNGY2MTdmNjU2YmU0YyBsZWdhY3ktdHJ1bmsKKzI2MTY4IDg4MmVhNWNjNzY4N2FiYmU4ZjRjNzBjMDI0ZDg4YThlM2FkNDMyOTcgcmVsZWFzZTIyLW1haW50CisyNjE2OSAzMzM3YzQxYzEzMmIxMTRhOTRjNTJiNTBjMTg0ZmQ5ZjJjODAyNDJhIHJlbGVhc2UyMS1tYWludAorMjYxNzAgMmI3MDI1YTIzMmUxZjdmNDk0Y2M5OWIzM2NmYjU4OTMyYTZkM2UyNCByZWxlYXNlMjEtbWFpbnQKKzI2MTcxIGEzYmYyYzk3ZTgwOGU0MTY0OGQ2NGIxYTVmYTY5M2YxMWI4OGY3MTMgcmVsZWFzZTIyLW1haW50CisyNjE3MiBkZDg5ODhjYTRiMTQ2NmQzNjdhMThmY2MwZmVhODYwNTYxNDUwNmRhIGxlZ2FjeS10cnVuaworMjYxNzMgMTJiMDAzYmU1ZDk2YzUzODk3NzA0N2EzMmY2ZTVhMWZhZTdjMmNkMSBsZWdhY3ktdHJ1bmsKKzI2MTc0IDUzM2NkNTE5NzU3NWRhNzdjMDdmMTFhNjZhNWQzNjIzYjA1OWZlNzAgcmVsZWFzZTIyLW1haW50CisyNjE3NSA0M2VlNzM3YTFiN2YxMGFhYTBhOWJkNTkyMjhmMzdiNjg5ZGYzY2Q3IHJlbGVhc2UyMS1tYWludAorMjYxNzYgMzUxNTc2NzEyM2Q4YzhjZTUzOGZhMmUzNTFmNmQ4NmVmYWExN2IzMCByZWxlYXNlMjItbWFpbnQKKzI2MTc3IDM1Yjc5ODQzODUyN2ViNjJmZDc2MmI2YjQ1ZjViOTg2MDdhNGFkZmIgbGVnYWN5LXRydW5rCisyNjE3OCA2YWZmZmZmMWZmZjFlZWE1N2ZlZDAzMjI2YTQ1OTUxNDZlMGZhNzg1IHJlbGVhc2UyMi1tYWludAorMjYxNzkgNDNjZWUxODE4MjQyMGExY2M2ODUzYzYwMzI5Yjk1NDRmNTRmZTYwOCByZWxlYXNlMjEtbWFpbnQKKzI2MTgwIGMxYWVjNjMyNGFkNTRlMGE4ZTUyNjJmZTNjZTNiMWE2YTI3NDg2MWEgbGVnYWN5LXRydW5rCisyNjE4MSAwYWNmNjgyMGQ5ZTM1MTAzMzU3M2I2NDg4ZWE3NmU2M2EzZTA3MzIwIGxlZ2FjeS10cnVuaworMjYxODIgNDJjYzg3YzQwMTAzNmIxZjMwNjdiOTVmNTU4ZmJhYWRhYTVjY2Y5YSBsZWdhY3ktdHJ1bmsKKzI2MTgzIGM1NmVhYWQzYTBiMzlmMmFlMGY1MzgyNjUwNDJlNjJiYmU1ZjQxM2EgbGVnYWN5LXRydW5rCisyNjE4NCBmODlmMjAxMDg3ZWE2NzVhNTExYjg5YjJhYjI2Yzc3NWZhZmIyYzIyIGxlZ2FjeS10cnVuaworMjYxODUgZjY4ZGRmN2YyMWY4NGE1YjVlMGUyNDJlZDczYTc0NzVjOGYwODE2MiBsZWdhY3ktdHJ1bmsKKzI2MTg2IDhiYTQ5OWVjYzZjOTEyNGM2MDQzYWViNmZlMzI1Mzk0MmQ5OWFiMTggbGVnYWN5LXRydW5rCisyNjE4NyAyOTU1MWY3NDdjMGVkOWQ0NjcxOGQ4NDRiOGVjYzlhYWFjOTZmNzY5IHJlbGVhc2UyMi1tYWludAorMjYxODggM2I2ZjQ4YjU0NjY2ZWNmYTEyMWVhMTY5NjZhNGI3MzQwZjczMmQ5MyBsZWdhY3ktdHJ1bmsKKzI2MTg5IGFhZjU3MmUzMzRjM2M4YmEzOTQ5ZGFhMTM2YWNiM2I0ZmJmMjM1YzYgcmVsZWFzZTIyLW1haW50CisyNjE5MCBkM2NmMzgzZGYwOTZjMmM4Y2U2NTQ1YzA4NDM3MjMwZTM1NzMzOWZmIHJlbGVhc2UyMi1tYWludAorMjYxOTEgYTlkZDVlNmQ2ODA1NjNlMDc4NjNkNzRmN2Q1OGMyODAzMTE3NWYwMyBsZWdhY3ktdHJ1bmsKKzI2MTkyIDNhZjhhYjFiMDVmYzdmMTI5MDIzNjZmMTNiN2VhNTg2MTdhNzNiYzUgbGVnYWN5LXRydW5rCisyNjE5MyA1ZWRhN2RiMDA3ZDZkNzhlNjgxMTkxNmUzMDVjODM2YzA1NWM0YWUxIGxlZ2FjeS10cnVuaworMjYxOTQgYzg2NWNmOGJlZTQwZDY5NTFiMDMyMWQyNjBjZjEzMjg3ZDMzZmRkMCBsZWdhY3ktdHJ1bmsKKzI2MTk1IDA5MDg3MjllOTRlMGYxNWYxZDZkODcwMDE1OTc4ZTY5ZjM5YWI2ZmYgbGVnYWN5LXRydW5rCisyNjE5NiA3M2QxNDViZmQ4ZTQ1ZTBiMGNjMTg5OTZmNGY0MWY4OGY1YmRhMmY0IGxlZ2FjeS10cnVuaworMjYxOTcgZjFmNTdiZjA5MDkyZWJlNmMyNjk5MzNjODc1OTUwZTE4NzkzMjliMSBsZWdhY3ktdHJ1bmsKKzI2MTk4IGVmMmZiY2U3MTczNjlkZmNlMDgwNzUwY2VlMjNmNGU4ODgxYjY3ZjIgbGVnYWN5LXRydW5rCisyNjE5OSBkNzUzMTMwNzQzNTU1MWEwZGI1ZjU4NzIwYTcwYjQ5ZjAxZGFhYTBhIGxlZ2FjeS10cnVuaworMjYyMDAgMmVkZGNlNDRiM2JlZGJjNzEyMDUxMjg1YmZkY2U5ODg1OTVjMzlkMyBsZWdhY3ktdHJ1bmsKKzI2MjAxIDE4Njk2ZmMzNTA2MmY2MmFhNDBjMTM4NDkwNDFkZGMwNzI0NWYxMDkgbGVnYWN5LXRydW5rCisyNjIwMiAzOWVhMDlmZjU3MzRlY2NkZjFjNjI3MmU1ZjE1MmIzZmRkYWM4ZmZiIHJlbGVhc2UyMi1tYWludAorMjYyMDMgMDc5YWJlMDVlOGJjODFjM2Q4YjkyNmVhNWJhZWMxMTkwNzdkMzFmYyByZWxlYXNlMjItbWFpbnQKKzI2MjA0IDM4Mjc5MWRkY2UxYzE4MzJmMDUwZjVlNmRiY2ZmOTA2YmUxNzY2YTIgcmVsZWFzZTIyLW1haW50CisyNjIwNSAyMTZkYWQ3MjA5YmM3MDEzMmNhMjI5YjkyMGQ5NGFiMjQ0OGViNzIwIHJlbGVhc2UyMi1tYWludAorMjYyMDYgZDcwMjk2Nzk0MzVmN2VjMjkwNjBjZTE4MDU3ZTE0M2U5NDU1YmRlMCByZWxlYXNlMjItbWFpbnQKKzI2MjA3IDY4MDcxYTcyNjk3MDZiODFiYTU3OTUxNjY0NGMwMzFhZGI0YWNlZDIgcmVsZWFzZTIyLW1haW50CisyNjIwOCBmNjA5M2JhYzlmYjY0ZmUzNGYyNWI2ODRmNzVlNjRhZjc3NjRlODc1IGxlZ2FjeS10cnVuaworMjYyMDkgZTU4OWU0NzNmMjMyZmJmNzdmODllODQxOTc4MDFkZDc5OTVkNDBiYyBsZWdhY3ktdHJ1bmsKKzI2MjEwIGQ2ZDY0MjM5YWEwNTE1OGEyZjc4MzYyYjZjOGI2MjY4MzBkMTY5OGIgbGVnYWN5LXRydW5rCisyNjIxMSBmNjYwMGIwZGI2ODhhNzc2ODBjMDAxZmYwZjdlNTBmNzQ3NzQ4Y2M4IGxlZ2FjeS10cnVuaworMjYyMTIgZWQwMzgwNmQ4OGNkYzk3MjllZjAwNWI5MGQ0Y2ExZjI4MGI2MzRlNiBsZWdhY3ktdHJ1bmsKKzI2MjEzIDZlOWMwZDliZGQ3ZmQ0YTYyNDE3ODdmNDRjZWZlNGE3ZmU1YzJhMWMgbGVnYWN5LXRydW5rCisyNjIxNCAxODhiMGZhMjgwMDdlODZhOThlNTEzNWMxZjAyNWJiNDQ5MjYzMjZlIGxlZ2FjeS10cnVuaworMjYyMTUgMzJlZWM2ZDc5YzkzZjJhYjUxMjYyODE1MGQ0MzZlYjg5ZmRiYjMyNyBsZWdhY3ktdHJ1bmsKKzI2MjE2IDQxNmRiOGQ5NjIxNmI5MTFlYzhhOTU1NGY3NWVjMzNhYTQyNWFjMzEgcmVsZWFzZTIyLW1haW50CisyNjIxNyAyNzNmNTFmNTIwMDAxOTE3ODQ2ZDQ1ZDJlYzgyZjFiZTEwNTBhMzNkIHJlbGVhc2UyMi1tYWludAorMjYyMTggZTI0YjhkMGI2NDcwNGIxMGNlM2IxNTA0MDhiMjE0ZTNkZGJmNzE3NyBsZWdhY3ktdHJ1bmsKKzI2MjE5IDIyZjdlZjdiYTcyYmE0NWNlNTY5MTU5ZGVmNzdkM2Q0NTYxODJmNjggbGVnYWN5LXRydW5rCisyNjIyMCBiYmYwNWFmM2MxOTEzOGQzNTcxNzI1Mjk0Y2Y2ZDIzZGE1ZGE2NzQ0IGxlZ2FjeS10cnVuaworMjYyMjEgMDQzNjdjZmY4Njg5NWY2Y2NiNTgwZjcyZTIwMWNhOTcxYjkwOTg1ZiBsZWdhY3ktdHJ1bmsKKzI2MjIyIGE2NTI3ZDFlZTQ3NDI4YWI2MjI1NjlmMTc3YWJlZDI1ODZlZDQ5NzEgbGVnYWN5LXRydW5rCisyNjIyMyBmOTIzNmNhZDY5ZTYyODBmYTg3NzI0YjdjNGNmZjQ0NjU4NTg4NGY0IGxlZ2FjeS10cnVuaworMjYyMjQgNmY4YTVhZDM5ZTZmZTcyZTFmMGUxMDg1ZDBjMmU1YTdkNDE1ODRjNyBsZWdhY3ktdHJ1bmsKKzI2MjI1IDY4MDRlNDhhMDAzM2I0NjY0NWI4NzhjZDFhNDkxZWM2NjE3NDVmMDQgbGVnYWN5LXRydW5rCisyNjIyNiA3MDE0OTIxODIwYTUxY2QxYWVlYWQzZDFkYTQzODI0NWFkMjM4ZjUxIGxlZ2FjeS10cnVuaworMjYyMjcgYTU2MWZmMWI0ZmZhMWZiYTk3OWUzMzEyZDE3Y2Q3ZDU5YWJkYmE1ZSBsZWdhY3ktdHJ1bmsKKzI2MjI4IGUyZjIxODdjM2QyYzFjYTc5OGVhZjk2OGFiOTUxMzYyNTI1MDRkZDkgbGVnYWN5LXRydW5rCisyNjIyOSAwMGU2NDBlNjgwYmQyOThkYzc3MDk3YzhlZTdkNzc0MTBjOTAzNjU2IGxlZ2FjeS10cnVuaworMjYyMzAgYjFmYTkwZjhiNmMyMTIwM2QwYmYwMzZkYjYyYTc0ZjBlZTk5Y2Y2MiByZWxlYXNlMjItbWFpbnQKKzI2MjMxIGM5MTYyNmQxZjQxMWYwY2JmYTI3NGFmYTE1YjBjMWM3NDVkMzAzNzAgcmVsZWFzZTIyLW1haW50CisyNjIzMiAyNTI0MzhiYjA1ZDk3YTg0YWQxZDg4MWNhNTJiYmFkNjg1NjlkZjEwIGxlZ2FjeS10cnVuaworMjYyMzMgZDQ2MmM3OTBjYzViZDc2OTc4N2Y5YjgxYjc0M2NiMzNlN2JiNzdmMyByZWxlYXNlMjItbWFpbnQKKzI2MjM0IDhkMzM3YjNiNjU1YTNhYTYxNzhhMjY1YjkxZWFjZDk0OGE3NmU5MGQgbGVnYWN5LXRydW5rCisyNjIzNSBjM2U5YTA1MmUyNjhhMDA3MGRhN2IyYTYyOWI3Y2E5ZDU3N2UxNDExIHJlbGVhc2UyMi1tYWludAorMjYyMzYgZTNkZTlkMTlmYWFhZmM2Y2Y4YTE4NDYyMTY2MmVjNmRmYzIyMDRjNiByZWxlYXNlMjEtbWFpbnQKKzI2MjM3IDFhM2IwODY2M2ViZTAxZTdiZjc5YTE2NjA1YzI3MmE0YjE5NDhhYjEgcmVsZWFzZTIxLW1haW50CisyNjIzOCBhNDFhMWUwMDUxYzVkNmUyMDJkZjI5ZDk1NGFlOTFkNzFkNGYwMjlkIHJlbGVhc2UyMS1tYWludAorMjYyMzkgM2E2NzE4YjliNjVhODM4YjI4NzZkNjlkMTExMWZkOWI2ODNmZmFhYiBsZWdhY3ktdHJ1bmsKKzI2MjQwIGUxNDIzZWM5ZTZlYzM2MmQwOTY3YTc1NDQ3N2M0YjdlYmI2MWQ5ZmMgcmVsZWFzZTIyLW1haW50CisyNjI0MSAzODlkNDI5YWRhNzJjNmQ0N2UyM2ZmMzczMmFmOWJmNjIxYTY2N2E4IHJlbGVhc2UyMS1tYWludAorMjYyNDIgNzkyODc1MWJmZGVlNTE4N2FiMzliNmI4OGE0YmIzODUwYTIwOWI4MyByZWxlYXNlMjEtbWFpbnQKKzI2MjQzIDViZTA2NzdkODEwZDAyNmE3OTU1NmQxYWQzOTc4MmQ3Njk2ZmQ4YjIgcmVsZWFzZTIxLW1haW50CisyNjI0NCBkOGJjNjhjYjE3ZTAzNzAxMjhiOWRlNGYzNTBmNDE0YTIwMjAwODA5IGxlZ2FjeS10cnVuaworMjYyNDUgNWQzODMwMDZkMzZiOWQzNjRhNTI0MmMwNjk0MmUyNjQ5ZjUyZTNkOSByZWxlYXNlMjItbWFpbnQKKzI2MjQ2IDI4OWVhMWQ1YzVhY2NjZGMxOWRmYTZlNzc2Nzc2MjRhYThhNjBiYTQgbGVnYWN5LXRydW5rCisyNjI0NyBjMGRkOGJiZGRlNjA0MDgzNDc5NWQ2NWEyZWE2YTQwM2EyOTE2OTZjIHJlbGVhc2UyMi1tYWludAorMjYyNDggZjk3NDczYjM0MGE1ODAzY2IwZGNjZjc2NGU0MzUwNzQyZWJjZDdjMiByZWxlYXNlMjEtbWFpbnQKKzI2MjQ5IDJiM2E2YTg0NGJmZmRiYjllOGRlODUzZmVlNTM1ODY0NjQ5MTExODQgbGVnYWN5LXRydW5rCisyNjI1MCAxNzBmYjViOTQ3M2Y4YTM0MjRkMmE2MGJkNjcyNDQzMTcxYzAwY2Y2IHJlbGVhc2UyMS1tYWludAorMjYyNTEgYWY3MmQyY2YyYzU1ZWI4ODQ5MDA2ZDBlMDAwNjVhODEwYWM1MWQwOCByZWxlYXNlMjEtbWFpbnQKKzI2MjUyIGI4MWQwZTg5MDQxMmNjMWFmMmM0NTIwMmEyODkxM2Y4NDM3MWFkMGIgcmVsZWFzZTIxLW1haW50CisyNjI1MyAzM2IyYTg5YmY0YTZhNWIyNjdiNWQxODNlMjU4NTM2NTcwODZmZGEzIHJlbGVhc2UyMS1tYWludAorMjYyNTQgMWEzNzU2NjFjYzk3MzI5NTAxMDRkMjA1ZTRjNzg4MWJhMGM0Zjc5NyByZWxlYXNlMjEtbWFpbnQKKzI2MjU1IDU3MGE3ODAyNzlkMWE0NjFiZTY0MmUzYjc0YTExY2JhMThmOWVlOWEgcmVsZWFzZTIxLW1haW50CisyNjI1NiBiNWFhZGU5N2Q3MjNmYThhNjNlN2IxOWJiMTYzMGRjNjFmZTJjNzBmIHJlbGVhc2UyMS1tYWludAorMjYyNTcgN2Q0MGI2OTFkYmE3NjM3Y2NiZjc3YTEyOTNkZDIzOGUzNzJlOWJhNCBsZWdhY3ktdHJ1bmsKKzI2MjU4IDhiYWNhNGVjZTY0NTUzNTI3MDdhYjZmYWYxMTEzZDBhZDUyNjlkMGEgcmVsZWFzZTIxLW1haW50CisyNjI1OSBlYTQzNTIzYjViZTc2MjdmNGJhNjIyYjc4YTk4NzhhZWYzNWNjMmQ4IHJlbGVhc2UyMS1tYWludAorMjYyNjAgYzBkN2I1Nzg4Y2JlNjNiYWFjMDI0NDk1MjEwNzM5ZDA2NzdkODk3NCBsZWdhY3ktdHJ1bmsKKzI2MjYxIDg5MTNkZmExMTAyN2VkYWE3YWExMTVjY2ViNzAxNmNlYTliZTlmMTMgbGVnYWN5LXRydW5rCisyNjI2MiAxMWNmZTgzODNjZjg4NzUxZmFkM2Q3OWUxZTZiMmJkMzEyMmQwMDY2IHJlbGVhc2UyMi1tYWludAorMjYyNjMgZmJkZDQwYjkyYjg3MGI3ZmY3YmQ0ZWRkNjIzNmIwNjdiOGI0YWRhOSByZWxlYXNlMjItbWFpbnQKKzI2MjY0IDdlODRkYTljOThlYmE2YjgwODFmYzNjM2NjMWE2N2ViMjNhZWU1N2MgbGVnYWN5LXRydW5rCisyNjI2NSA5ZDI2ZDU2OGRiYjMwNzYzYzVlZTJhYjMwNGIzYTJjYWFhZDkxYjFkIHJlbGVhc2UyMS1tYWludAorMjYyNjYgYjYwODQ0NWIyNWYwMjliMmRhZGM4NWZmMGFmMzFjZWI3MjNmM2NhMCByZWxlYXNlMjEtbWFpbnQKKzI2MjY3IGFjOTliZWQyNGI3ZDEwNmNhNTFiNjA0NGM1MGQ3Y2ExNjk1ODYwZmQgcmVsZWFzZTIxLW1haW50CisyNjI2NyA3ZDE1MDRjODBmYTA3MmI0YmE4NmVkZGExM2ExM2IwYTA1YWU4ZWFiIHJlbGVhc2UyMS1tYWludAorMjYyNjkgNWFiM2U4ZjE0ZDQ2NjM5ZDZjNDBjOWNiNjJkMGQ3Y2Y4Yjg3Njg3MyByZWxlYXNlMjItbWFpbnQKKzI2MjY5IDM5NDc5MDMxNmFhMzgwZDIyZTRkNjcwYmM2OWE2MzllNzI1ZjAzMDAgcmVsZWFzZTIyLW1haW50CisyNjI3MSA5OTAwMWZkOTVlNDhkYjgxNWE4ZmQwMWIzZGQwMTc3OWUxZWU3OGU1IGxlZ2FjeS10cnVuaworMjYyNzIgMDc3M2QyMzIyNGQyYWE2YjU1MDUxY2ZkMDc2OWFlZjNhYzZmZGY3ZiBsZWdhY3ktdHJ1bmsKKzI2MjczIGMyNmFmMWFiYzJjNjIxMzAxMmFkNTkwZjk0MWQ5YTg5ZWFkZmExOTAgbGVnYWN5LXRydW5rCisyNjI3NCAxMjEzM2M4YjgzY2Y1ZjRlZTMyNGNlNzQzYjQwYmZkYWI0OTVlY2VlIHJlbGVhc2UyMi1tYWludAorMjYyNzUgNzI4MWEwNmUzYjU3ZjNiZWJjNTc1MjE0MWViMDNhY2Y1YmI2NTJmYSByZWxlYXNlMjItbWFpbnQKKzI2Mjc2IGZlYjZkMWJjZGQxZDYyZTE4OWRlMjMwNWRjNThlMmNiNTc3M2MxMGEgbGVnYWN5LXRydW5rCisyNjI3NyA5MDgxYzkyYTBjYzg1ZTQ0ZmM2N2VjM2ZjYTczNDQ5YmZmZTg3ODFkIHJlbGVhc2UyMi1tYWludAorMjYyNzggOGEwMmMzM2VkMmMxOGJiMzg0MGIwOWIxZTBmNWU0N2ZjNjViMDFlMCBsZWdhY3ktdHJ1bmsKKzI2Mjc5IDE1YzE4YmM5ZDcxNTY1ZmU3ODc5NDhmZGU2YTAxZjBlYTMwNjljYWUgbGVnYWN5LXRydW5rCisyNjI4MCA1NDIyOWMzNTEzMmU3NzUxZjFiZDA2NzQwYTJmOTQwYThiZGU1NmIzIGxlZ2FjeS10cnVuaworMjYyODEgMjM5MmFmMDVmMDUyNmI1NjAzMDAwYjc4Y2U1YjhmNjFiOWFmMmE2NiBsZWdhY3ktdHJ1bmsKKzI2MjgyIDNjODc2ZmYyOWE4M2VkOWVmZGU0OTI1YTE4Nzc2YWI1NWJiYTBiNjcgbGVnYWN5LXRydW5rCisyNjI4MyAzZjIxZTRlMzkyNjgxMDNmMjE1NDM1MDkyMjliOTVlZmNjYzVlMDgxIGxlZ2FjeS10cnVuaworMjYyODQgYTVlZWIyODhlMDIwZjczMGM5MGQ2ODQ5ODExOWE0MmVmNWEzZDQwOCBsZWdhY3ktdHJ1bmsKKzI2Mjg1IDA3N2NlOGI1ZDgzYjU5YjczZTczYzdhYTVkMTAzYjQ1M2YyYmVkYTkgbGVnYWN5LXRydW5rCisyNjI4NiA0YzQ5OTQ0N2NjNDlmODg3M2VlMTg1ZGE4ODlhOGU5NDVkYjIwMzgwIHJlbGVhc2UyMi1tYWludAorMjYyODcgMzMyM2YzZjQyMmRiMDlhMTIyNGNlMGI5M2ZlZDc5ZjQzM2RlNDQ0YiBsZWdhY3ktdHJ1bmsKKzI2Mjg4IGUyMzM4MWZhNDc1MDM4MDJjZDE0M2JmMmFmYTkzYzllNDQ2OGZhZmQgbGVnYWN5LXRydW5rCisyNjI4OSBlMmRlYzNjZGYzYzI2ODBmZmQ3ZTg2MmRiYzgyYmZhMWFjYTY3MTY5IGxlZ2FjeS10cnVuaworMjYyOTAgZTMwN2E5NGRkNzdiZmRjZDViN2RlN2RiMjQwNWFhYTUzZTg3Njk3NiBsZWdhY3ktdHJ1bmsKKzI2MjkxIDI2N2I5NzMyYmY0NjU1MDBiMmEwNDg2OTkwNGY2ZjZmMTE3YmY1MWQgbGVnYWN5LXRydW5rCisyNjI5MiBhOTZlN2U1ZjM0MDc3MTVhNzAyMzJmMmE1ZmM3OGNmODZhMTE1MmI0IGxlZ2FjeS10cnVuaworMjYyOTMgZjc2Y2E5ZmJjN2E0NzYyYzQ4ZDYzMDc4YmM0NzMwNDMzNjE0NDQxMyBsZWdhY3ktdHJ1bmsKKzI2Mjk0IDMyYTliMTlkYmExZGQ2NzAwYWUzYjdlOWJiYmIyYTI2ZTIyMzI1YmQgbGVnYWN5LXRydW5rCisyNjI5NSA0NGVlNjhhYzVlN2Y5NjFiNmZjMzk5MTQ3ZjBjMTdjMjQyZTg2YjJlIGxlZ2FjeS10cnVuaworMjYyOTYgZDRmOWUxOWI4YzBiNDI3NjBhMzg3YTdmNDgwZDU4OWY0NzRkNzI5ZSBsZWdhY3ktdHJ1bmsKKzI2Mjk3IGYxNGU0NTUwYjJmM2NlYThjOTNiNzdhNDRkY2Q3ZWJiNDE2MDZjYTEgcmVsZWFzZTIyLW1haW50CisyNjI5OCBhNTRiMjNiMmYxNzIwYzMzNzI3MWI4ODdmOTBkZWNhYmQwNWJlYmJlIHJlbGVhc2UyMS1tYWludAorMjYyOTkgNWM1NTM3NzJjYTU0YzNmZDRkZTlmMGJiNGU5YTg0YzA4NmE5MTZjNyBsZWdhY3ktdHJ1bmsKKzI2MzAwIDUzNGFhYjViY2NlYTQ1YjNjNmViZjA2NDQ5ODIyZTJkNjYxZDYzMGYgbGVnYWN5LXRydW5rCisyNjMwMSBhYjY3OTkzMWFlMGQxNzE3MGZiZmEwOTAyYTgzOGNjZGVjYzk2OWZkIHJlbGVhc2UyMi1tYWludAorMjYzMDIgMDU3YzVkNzljOTg4YWRkYjc3OTc2ZGQ3Yzk4ZjU4M2U3YjM3NmM5ZCByZWxlYXNlMjItbWFpbnQKKzI2MzAzIDk3OTM5ODM0YTY3MzUyMjAxYTRkMmM1YTU4NThjNzZhNDgwMGQ4MDkgbGVnYWN5LXRydW5rCisyNjMwNCBjODc1MGQ2M2RjMzU1ODQyNjRkM2NmNzFjMTNkYThkMDFlMDRkMDMxIGxlZ2FjeS10cnVuaworMjYzMDUgNTBjOWMyNDE0NjNkMjFhZWFmMTZiZTA4MjA4ZGIzNmZiNmE0MjhlMyBsZWdhY3ktdHJ1bmsKKzI2MzA2IGMwNDkwNmZhMTc4Yzg4YmIwMjRmNDdhNjQwNjdkZjRjN2EwMDdmYjYgbGVnYWN5LXRydW5rCisyNjMwNyBjYzUwYTA5MWY1NzNhZmZjMzExMmRjY2VjZjNkYjg0NDg2NDhiZjk5IGxlZ2FjeS10cnVuaworMjYzMDggMWE4YTc0OThiMGJiMzcxYWNlMjJkZGZjMmQzYTU0NDM1NDZmNDIxNCBsZWdhY3ktdHJ1bmsKKzI2MzA5IDZjYjUyODI5ZGExYTJhYWM2NzY5NmMwYjQzOGM3YzIwYTk2ZWVjYmYgbGVnYWN5LXRydW5rCisyNjMxMCA1ZjU0NTRhNDhiNWFiOTZmZTM5MzM0ZDBmZDc2NWRiYzcyZDhjZjZkIGxlZ2FjeS10cnVuaworMjYzMTEgMjFmMzE5MzlkYzJmNzQ4ZjJmZjkwZTgzOGJmMzljMjQ2ODk5YTgwOSBsZWdhY3ktdHJ1bmsKKzI2MzEyIDZhMzYxMTJhM2RjZTA2NzViYjJiYTU2N2RmNTY0ZDlmNjlhOWY5YzQgbGVnYWN5LXRydW5rCisyNjMxMyBjOGMxZGMwNzI3Y2Q1MGNkZTdkY2M2YjNhMWZmNWIzZmZhNGUxZjZmIGxlZ2FjeS10cnVuaworMjYzMTQgYmZhMzMwYjg1MjA1MDdkOTkxMjdkZmM4MmI4Y2EwNzBmMjM4NzZjMyBsZWdhY3ktdHJ1bmsKKzI2MzE1IDlhNThlOTdkYjQ0N2MzZjQ5NmE5Njg1NDE4OWM5ZjA2NzAxNjg3NGUgbGVnYWN5LXRydW5rCisyNjMxNiBjZWE4NTJmOGFhNDc2MzAzN2YwMTVlMjMwNzk3OTVjODZkNmQ3YmFkIGxlZ2FjeS10cnVuaworMjYzMTcgMDNhODMzNDBjOTE0YTkyYzZmYjc4MzcxZGU4ZjU4OTU3NmIwY2EwMCBsZWdhY3ktdHJ1bmsKKzI2MzE4IDRmOWQ1ZWE0ZjM3ZDljMTIxYjgwYTg1N2YwNjAwZWRiNDhmY2M5ZjEgbGVnYWN5LXRydW5rCisyNjMxOSA1ZjJkY2RkMDkzMjkzNmM1ZDJiZjRiYTQ3ZjQxMGZlYWE4OTU5NTlkIGxlZ2FjeS10cnVuaworMjYzMjAgZjgxNzAxYjcxMjE2NGY2NjIyZWE4YTA1NGMwNjNjYTA0MDBmYThjYSBsZWdhY3ktdHJ1bmsKKzI2MzIxIGEwYmI1ZmExYWIyZGNkZTBlZjBjMzM5N2QyNDEzNTU2Yzg1ZmYxN2UgbGVnYWN5LXRydW5rCisyNjMyMiAzZjIzZDcyZWY0MTBmNjY2ZTA0ZThiMjkwMWFmZGViYjBiM2ExMTI2IGxlZ2FjeS10cnVuaworMjYzMjMgNmQ3MzFiNjQ2NzBiNjkwZDI0YjM4ODViZTRlZjlhNzg1ZTg4ZDI5YyBsZWdhY3ktdHJ1bmsKKzI2MzI0IDk1NjNjOTY2NGEwYmI4YTJlY2U2ODlmMzViNGEyMDQwMjI1ZGMxMDcgbGVnYWN5LXRydW5rCisyNjMyNSBhMDA0NzNmMzMxN2I5M2Y3NTQ4NDViMTY5NGM3ODUzM2M1MjM0MjJkIGxlZ2FjeS10cnVuaworMjYzMjYgYjM3MzE0ZmNiY2M5Zjc1MjA3NDdlMmQwYTQ4OWY4ZTExYWFkMjg0YyBsZWdhY3ktdHJ1bmsKKzI2MzI3IDA4NGFiNzM3NzdhMzQxNzRkZTdkODk4MzA5ZTQwNzFjYmZiMWJiYzggbGVnYWN5LXRydW5rCisyNjMyOCA1NDk1YjZkZjBjNjVkMzBmN2RiM2Q1MWM0OGM4ODA3MmZlNDAyMTUyIGxlZ2FjeS10cnVuaworMjYzMjkgYmEwMjM2Zjg0MzE4YzIzOWVkODNhOGJmNTZlYThmZDUzYWQwOGIwMSBsZWdhY3ktdHJ1bmsKKzI2MzMwIDMxMDBiYTI2OTEzYzdkNWJhYTExMzFmZGE3NGY1MGMxMzZkNDI0ZWIgbGVnYWN5LXRydW5rCisyNjMzMSBmOTNhMjZkMWJmYTBlOWRkODMxODExODA2YzQyNzVjN2MxZWU3MTk4IGxlZ2FjeS10cnVuaworMjYzMzIgOTBiODM0Y2U1NzA3N2ZlZGE1ZmMxOWEwNWMzMjg0MzJhN2QyZjkzMCBsZWdhY3ktdHJ1bmsKKzI2MzMzIDk1ODE5ZjdmMGJjZDJjZGM4ZmU1Y2EyOWIwNDAxNTg1OTY0ZGY4MjAgbGVnYWN5LXRydW5rCisyNjMzNCA2OTljYzEzOWQyZDI0ODY2YTEwYmExYWRjOTYzMmNiZWNlMDMxYTc0IGxlZ2FjeS10cnVuaworMjYzMzUgNzI3NzhlYzk0ZGVjNjY3NjM4MjczMzExMDBiYjhmMThhMDNiY2E1NSBsZWdhY3ktdHJ1bmsKKzI2MzM2IDI5ZTZjYjgzMjQ5N2I1ZmU4YWQyZTczMzY4YmJkZjAzYjk0YjBiZDkgbGVnYWN5LXRydW5rCisyNjMzNyBhOWU0MDI0ZDhhMzc3MDE5NTYwNTI5YmFkZTA1ODcxMmRiNTBiZmU1IGxlZ2FjeS10cnVuaworMjYzMzggNGJhMDkxY2M3MGI4OWIxNjY0NGFhNzVlMTczN2RmZGQyNGQ0MDBkNiBsZWdhY3ktdHJ1bmsKKzI2MzM5IDM2M2M3ZmMxNzRhYzhiZGI3YjgzMTk4MWI4OWM2M2MzMjEzNDcxYTIgbGVnYWN5LXRydW5rCisyNjM0MCA5ZmU5NGMwMWVhZjFmZmY1MDA3YzAzODQyNTVlNDE4MWJkMGRjZDc1IGxlZ2FjeS10cnVuaworMjYzNDEgOWY5NDkwMjdkN2JhMTkzYmQ2MTQzZjJhYTY0NGI5MDM3MDQ2N2QyOCBsZWdhY3ktdHJ1bmsKKzI2MzQyIGRjMWZiMTlkOTkwZDY5MmYxN2NkMWUwY2U3NzEwNWNjMzJjNTQ1ODAgbGVnYWN5LXRydW5rCisyNjM0MyBkMDk3NDBiMmUwM2RlMWY4NWNhMDg0MzU2YTQ1ZDAxYWMwMmVjY2E0IGxlZ2FjeS10cnVuaworMjYzNDQgMWMyNmEzMTA2NjUzMTBmNjNmZTU3NTc4NzczZmQwMzMxYTJiZTM1MiBsZWdhY3ktdHJ1bmsKKzI2MzQ1IGM1YTY3ZjUwNTMyZTkxNDcxMWQwY2ZmNTk3YmEzZWM5NDZiNGU0MDEgbGVnYWN5LXRydW5rCisyNjM0NiBkOWQ4MmMxZWY4NjQ1MGRmMjMzNTUwMGU5YmUzYmI3M2JhYjdjNmZiIGxlZ2FjeS10cnVuaworMjYzNDcgMjk4YTdjNTFkMmMwMWRlZGQ1YTA4MGM0NjllNmMwNzE0Y2VlMjBkNSBsZWdhY3ktdHJ1bmsKKzI2MzQ4IGM4ZDYxZmYxYzBkNmI3NDk1NDkwYWE5OWQ0MDNmMmZkOGUzMzQ3OGUgbGVnYWN5LXRydW5rCisyNjM0OSBiZTU0NDY1YTM5YzQ1NGE1OGIyYjE3YzM0ZWE5Yjk1YWIwZTcyZDE3IGxlZ2FjeS10cnVuaworMjYzNTAgNjE2NjE1ODNhMTJmYWIyYWYwY2ZkMGM1MDgzYzNiMzJhZTEzMWExZSBsZWdhY3ktdHJ1bmsKKzI2MzUxIDI0NjYzYjg2Yjk3NTA1ZWNhNjA3MjE5MTdkNDczZTJiMjMzOWQ3OWMgbGVnYWN5LXRydW5rCisyNjM1MiAxZTFjNzIxNDMzZDhlNGEzYjA4NzUzY2U0ODFhZWU1YmJmNzk1ZDAyIGxlZ2FjeS10cnVuaworMjYzNTMgYmViMzIxODkwNWEyZmU5YjE0YjYzNGUyMGIyZDlmOTRhMjQzYTE1YSBsZWdhY3ktdHJ1bmsKKzI2MzU0IDBhMTlmMDE2YTk5NDY0N2VhMTI4OWNiNDEzMjBjMmJkM2ExMGE1NGEgbGVnYWN5LXRydW5rCisyNjM1NSAxOTZkZmE3ZWQzNDhkYmZlOTYxNTc2MjY4MTk0NWRiMjEwODZiOTQxIGxlZ2FjeS10cnVuaworMjYzNTYgNjkwZDcxMmUyODA3YzNlMWM4Y2M1MTIwYjdhNTliMzQ0NzJiZjIyYSBsZWdhY3ktdHJ1bmsKKzI2MzU3IGI5YWQxZTlmNTlhODVlYTA3OWU4NzBlOGUxNjU2NDdlZTY2MTAwNWEgbGVnYWN5LXRydW5rCisyNjM1OCAyZGQwZjg0YWYwNzE2OTI5MDE2MWVhMzUzMzVhNGY4YTJkY2E1NjBiIGxlZ2FjeS10cnVuaworMjYzNTkgYTljYjkxOWU0OWUzMzFiYmU4YmU5MTFkNmY3OWM3NzBmYTY3Y2E3YiBsZWdhY3ktdHJ1bmsKKzI2MzYwIDI1YTZlMzljMzFhMjA3MGUxNTFmZThmNmFmZTZkYWIwNjQ0MTI2NTUgbGVnYWN5LXRydW5rCisyNjM2MSAwYjFlMjBjMzRjOGVhNmMxOWU0YzUzMTU1NzU5OTBiOWQyZGQ4ZjEyIGxlZ2FjeS10cnVuaworMjYzNjIgYTA1NjFjZjQ5MTYzNGRiMTRjNzZlMzIzOWFkZjY2YWYwY2MwYjQ0MSBsZWdhY3ktdHJ1bmsKKzI2MzYzIDhmOThjYjNhMGYzNjhjYTQzZjFmNTAzMzBjMDQxMGNhOGE0YTE0YTIgbGVnYWN5LXRydW5rCisyNjM2NCA0ZjA2M2I4MDMwOGQ5OTIzZDA1YTY3MWU0N2E0OTJkMDk5MmFmZThlIGxlZ2FjeS10cnVuaworMjYzNjUgMWY3YWY0ZmIzYTUxNTJjYTE0OGUxZTBhYzJmNjYzZTQ4NTZlYTEyOCBsZWdhY3ktdHJ1bmsKKzI2MzY2IGU1NGI5YzM4NDhiN2EzNDkyMDgwYTQ4OWYzNDVkNzE3MzA0MTNlZGUgbGVnYWN5LXRydW5rCisyNjM2NyAxY2VhZjdmODA1NWQ2ZjMwYWZhN2RhZmE1ZDc4MmFhN2VmZTliNDI2IGxlZ2FjeS10cnVuaworMjYzNjggZGIwMDNiOGE5YmI5NTQ2MDA5MDk1YjAzMGE3N2RkMTdmYzU3OWM3OCBsZWdhY3ktdHJ1bmsKKzI2MzY5IGQ1MDQ4ZjliOGI4MjU3YjFjMWJkZGNhYjkxOWNiNTRhZGY3YzI4YmEgbGVnYWN5LXRydW5rCisyNjM3MCA4YmU2MjM4NzQ4YzRkMGFmM2NjNzBhMGJiNjYzYWQ3MTdhODQ5Yzc1IGxlZ2FjeS10cnVuaworMjYzNzEgOTMxZDQ0ODgyMGFlZWYzOGRiNjIyMDNiYjA5YmRlYzEyMzVhZjAwNyBsZWdhY3ktdHJ1bmsKKzI2MzcyIDk4OTM3N2NkZjA1MzJkNzc3NmNiNjY3YzZjNTYzN2ZkM2M3YThlNmIgbGVnYWN5LXRydW5rCisyNjM3MyAwOGFiMGE2YmYxZWJiMTRhOTBmNGNiOTMyOGNkMGY2ZGJiOWEzYTNjIGxlZ2FjeS10cnVuaworMjYzNzQgZDYzMjI5ODMwNjllMDZhYTI0YzkzZGU5OGZlYzk1OTg1YmU3MmI4NiBsZWdhY3ktdHJ1bmsKKzI2Mzc1IDNiMDgzYjI2Mjk2YThlODEyNzY0ZDI4ZTEzNmIyN2JhMjI1ODY4MTYgbGVnYWN5LXRydW5rCisyNjM3NiAyMDJhZTViNzVjY2EyNDM4MjcyNDg3M2JmZjk5OGZhMDIzNDYxNDNkIGxlZ2FjeS10cnVuaworMjYzNzcgYjVmOWY3YThmNTY2NmU0ODlmYmI1NWQyYjAzOTJhZDFmOTM2YjM2OCBsZWdhY3ktdHJ1bmsKKzI2Mzc4IDQ0NjM3YmQ3ZjU5YjY0Mjk4YzJkMmMyNDkyYjRiM2I1ODVmYzAwMTcgbGVnYWN5LXRydW5rCisyNjM3OSBiMWFiNGJjNTIyNDNkMDBkOTA3NDBjODgyMzJmMzM5YzY4NDYxZGVjIGxlZ2FjeS10cnVuaworMjYzODAgYzYwMDNkZTczOTc1NTdiOWM4NGQzNWViMzcwY2Y2ODI3OTcyYWE1MyByZWxlYXNlMjItbWFpbnQKKzI2MzgxIGUyODQ4NjE4YmQxOTU5YWQxNDZhOWIxYTFlZjllNWE4Y2VkMDkxNGIgbGVnYWN5LXRydW5rCisyNjM4MiAyNDcxODMyNzAwOTU4Zjc0YzkyMzZhYWIzODYxODg2ODE1YjNkOGQ2IGxlZ2FjeS10cnVuaworMjYzODMgZWJlM2NlNmNiZmQ3ODYxNTIyOGJlY2NmOTBlM2I3ZTFjNzg1ZjdjMCBsZWdhY3ktdHJ1bmsKKzI2Mzg0IDg5OTAwMmE4ODJhMDhhNTA5ZmY2YjJlYzI0M2ExZmU0N2Q3ZDIzZWQgbGVnYWN5LXRydW5rCisyNjM4NSA0ZTU4YTM4ZTNjMDYxYWFjMWQ3ZGU3ZDRlYWVlOGVlN2RiZWNlYzI2IGxlZ2FjeS10cnVuaworMjYzODYgM2U4OTI1ODJhODUwYmM4YjYxMThmZDdlNzA4MmJlYTQzYzg5NzlkNSBsZWdhY3ktdHJ1bmsKKzI2Mzg3IGYzZmM5N2RhNjhhOTg1OGMzZjlhOGY5MDMwNGU4ZWRmZTE1Yjg0YjMgbGVnYWN5LXRydW5rCisyNjM4OCAwM2MzOTY0MGQ4MWE4OTQyZGNmYzQ1YTEzZWE5YWU3YzNhMWY0ZDVhIGxlZ2FjeS10cnVuaworMjYzODkgYTlhNmMxMThkZmJhNzU0M2IyZjYxZWVmODc1ZmFmNzRjNjEzMDJiNyBsZWdhY3ktdHJ1bmsKKzI2MzkwIDgyOTE0NzNmZGUzZWIzMmM1MTdjMDc1MTZkZjhhOTljYjI5NjBkZTMgbGVnYWN5LXRydW5rCisyNjM5MSAxODYyMzc0YWIyNTM5OWQ1NWY4Njk4Nzc5YzUyNzdiYTMyNDY4N2FiIGxlZ2FjeS10cnVuaworMjYzOTIgNWJkYTU0NmViZTI0YWNmOWVhYjE3MGJmMjFjNmM4MDc1MTZhZTVjOSBsZWdhY3ktdHJ1bmsKKzI2MzkzIDFkYjNhMDI5NjVlNjU1ZWY0ZWY4NTFhNThmZDhhOTc1OWQyZTgzYWQgbGVnYWN5LXRydW5rCisyNjM5NCA4YjkyNjBlOTIwMTBiNTRlOGFiNWU4ZTM0ZmQ2ZThiNTQ2OWIyZjk0IGxlZ2FjeS10cnVuaworMjYzOTUgNTNiYTkxMTBhMWYxNzc5N2M3NTNlYzNkNzExN2U2YmQ0NDBlMzc0OSBsZWdhY3ktdHJ1bmsKKzI2Mzk2IGIxZWU0MzIxYTUwYTdiMmM1OWJhZDEzMDE0NjhhM2IyNzAyZDQyMzUgbGVnYWN5LXRydW5rCisyNjM5NyA4ZjY0NTE4MDUzNGQ1M2Y2YmY2MzczNTUxNTllYWEzNmFhZjY5NTg0IGxlZ2FjeS10cnVuaworMjYzOTggODlkYjllM2YzNWE3NDhiMTlkOTViMzRhOTY1MjVlOGQ1MjA2NGMzYSBsZWdhY3ktdHJ1bmsKKzI2Mzk5IDlkMzUyNjY3ZDcxNWVlYzA3ODM0OGM4ZDk1NGY2MDBhN2FhMGJhZGYgbGVnYWN5LXRydW5rCisyNjQwMCA0NTQzNTFlZjUwZjFkMTk3MGNlNGI5YzNiZDMwY2E1ODgxMjNkNjU2IGxlZ2FjeS10cnVuaworMjY0MDEgY2QyMDJlZjY3MjZlMzQ1N2Y1M2I2NWNkNTQ3MDM3MmEzYTYxZWY1ZiBsZWdhY3ktdHJ1bmsKKzI2NDAyIGYxYWExOGM4Yzk2YjgyMWM5NWIyMGI1NGYyMTAxNTdmZmQ3M2UxMTggbGVnYWN5LXRydW5rCisyNjQwMyBlMWY4ZTI5NTQ3NDk5ZjQ5NzNmZjliYWJkYjMzZjNiOGZhMGI5YjMzIGxlZ2FjeS10cnVuaworMjY0MDQgN2ZlY2Q2ZDU4ZjM4ZWYxNzRkM2FiMzQyNGJmZTllYzQzNDJjZDUwZSBsZWdhY3ktdHJ1bmsKKzI2NDA1IDBmMzdjYjVhN2U5ZThjZDViMDgyZDdmNTE2OTU1MDBkNDFmMzRlNjcgbGVnYWN5LXRydW5rCisyNjQwNiA4YjEyNjhiYzM3MWE2NGZmNWJiY2YzNzc5Y2NjMTBmNDE1OTI1MWM2IGxlZ2FjeS10cnVuaworMjY0MDcgNzY5ZTBhNTM4ZTU0M2QxNWNkODc4NmJiN2FmYzRmYmZhMzZiYWM3OCBsZWdhY3ktdHJ1bmsKKzI2NDA4IDc1MTI4OWNkMWFiNzEyZDllNzYyYTE4NDllODI1MGI5MmRlZmU1NTkgbGVnYWN5LXRydW5rCisyNjQwOSBjMTY2OGE4MTkyNDJjNTEzYTJhZWMxOTNjNDVkZDJmMDg4OGRhMmI3IGxlZ2FjeS10cnVuaworMjY0MTAgOWU2ZmY3ODcyODBhOTVkZDRjMDhmZDBhZDUxNDgwMDE2YzlmNzRiNyBsZWdhY3ktdHJ1bmsKKzI2NDExIDhhOGFmZmNjZjQ2M2JiNWM1NzgwZGU3MGY5ODk5OTczOTc3Zjk1MjEgbGVnYWN5LXRydW5rCisyNjQxMiAxOWVhMDBmZWRhMzM2Y2QxMWQ5OTQ2OTE4MDBkNTVmZGJlMDgyZGQzIGxlZ2FjeS10cnVuaworMjY0MTMgOGViNmRkM2Q4MzIyZWZiZDRmOGJjNDIyYzg4MTIzYTEwOWEwOWViMSBsZWdhY3ktdHJ1bmsKKzI2NDE0IDA0ZmJmNjVjNzNlZjZmYzZhNzg4ZmM0ODhjNzY1ZTcwNTU5YTYxM2EgbGVnYWN5LXRydW5rCisyNjQxNSA3MWJlNWJhODhhYTdhNzJjN2FjMDBlNjI4MjhlMzhhODc0OTNlYzQ1IGxlZ2FjeS10cnVuaworMjY0MTYgM2FmMmNhZGNjZDZhYzY1MjNlOWIwZTljNjIzNTZiYzdiNjQ2NjlhMSBsZWdhY3ktdHJ1bmsKKzI2NDE3IGExMzU5ODBkZDRlOWI2YjliZjEyZWJlM2QxOTI3MDdhMTg4YzYwZDggbGVnYWN5LXRydW5rCisyNjQxOCA2YmUyODNkMTQ4ZjdlMzg4MjU1OTQ5NDQxNTk0ZDMwZjkxYTZkNGRjIGxlZ2FjeS10cnVuaworMjY0MTkgODAwNWZjMWFlZjM5YzhmMDYyNGU0MTVjNjkxMmY3MGVhZjViMjlkNiBsZWdhY3ktdHJ1bmsKKzI2NDIwIDRjMGFiNWQ2YTYzYzQxZWFjMjljYTI4N2M3ZDdjNjE1MjYyNjVlNjIgbGVnYWN5LXRydW5rCisyNjQyMSBjMzI4ZDcyNTBlOTI2NjAwMzZjOWJhOGFkNWNjNGRmMDJhMzRiNmI5IHJlbGVhc2UyMi1tYWludAorMjY0MjIgZGJkMGVlN2Y2MGUwNTY5NzBhNmEwNzMxYjRkNTkwYTIzNzhmYjU4MyBsZWdhY3ktdHJ1bmsKKzI2NDIzIGMzNzFiYjNlODUyOTFiOWUzMzRmYzUzNDc1YzRmNmQyNDI5YWRlZWQgbGVnYWN5LXRydW5rCisyNjQyNCA1MzBhYmEzMTE2YTQwZDA4NWU0YTEwODk3OWY2MDNlMjliZWJmM2Y4IGxlZ2FjeS10cnVuaworMjY0MjUgZGMwYzEyMTNjNzlhYmRkYTA5MzViMzgwNjRhM2ZmMjBhZjNjMmJiOCBsZWdhY3ktdHJ1bmsKKzI2NDI2IDkzOGZmM2NiNTFjMjZiZmU0MTllYjY1Y2ViN2FlY2UzN2I5ZDYxOGYgbGVnYWN5LXRydW5rCisyNjQyNyAwM2ZmMzU2OWJhMDRjYWY2YzU2ODFkMjgwZWU2YWRkZDNmMGMxNjlkIGxlZ2FjeS10cnVuaworMjY0MjggZjM2Nzc0MTRiYzNkZWY2YTA5MDU1ZmM2ZWE3NDk0ZDJiNjMzNmViZCBsZWdhY3ktdHJ1bmsKKzI2NDI5IDQyYzk5NzI4YjZjY2EyZjllYzJiNzgzZTUzZjE0Y2M3NjcyOTQ4MTAgcmVsZWFzZTIyLW1haW50CisyNjQzMCBiYmFiM2ExN2I0Y2Y0ZTNjN2NkM2Y0ZjRjNWI3MTJmYTU1MDA5MTdhIGxlZ2FjeS10cnVuaworMjY0MzEgOTdiOTQ4MGJiZWVjNzVlNjE1OWM1NDA5NzEzNzcwNzM0NWRlMzg5YSBsZWdhY3ktdHJ1bmsKKzI2NDMyIGZkYTczYmZmMjFmZmE1NmQ1YTllY2UyZjI0OWNmMWM4Y2JjOGNiMzIgbGVnYWN5LXRydW5rCisyNjQzMyBkODllNTU3M2RkMjM3ZTEzYjA2MjQ3YWQyMDUzZGI5ZjNkZDJjMWUwIGxlZ2FjeS10cnVuaworMjY0MzQgMjFkMjUyMDI4NDA0YzgwZGQ4MjI5ZWY5MmM2OGVkOWE4MmUwMTRkMiBsZWdhY3ktdHJ1bmsKKzI2NDM1IDRmZjkwYzk5YzMwMmFhNmJkNDNjNGQyMjgxZWMzZmUxZmVmYjc3MjIgbGVnYWN5LXRydW5rCisyNjQzNiBiN2U4NzczMmY2YWI5NDEzZDU0ZmRjZGFhOWVjOTlmZjM0YjZlMTY5IGxlZ2FjeS10cnVuaworMjY0MzcgMGZjZTU1Njc1Y2JjYjM4MGMyNDJmMzlkZWY3M2I4ZTM4ODMxNDhhNCBsZWdhY3ktdHJ1bmsKKzI2NDM4IDNiZDMzNmI2Y2IwM2E2N2Y3M2U3MTBlZjE2NjQwYWQzMTdmNWEzY2UgbGVnYWN5LXRydW5rCisyNjQzOSA0YWRkZjRjZWFmYzU0N2Y0N2JmZTA0OGM1N2IyZWM2ODFlYTI0NTA0IGxlZ2FjeS10cnVuaworMjY0NDAgOTY5YzFkMTE4Yzk3ZGViZmQzZmE2YThmZjZhMTJjYWI0OTJlNTI0YSByZWxlYXNlMjItbWFpbnQKKzI2NDQxIDEwZTAxMjJiNWZlZDVmODhkNzIxZGE5ZGQ5YWQ3ZjU5NTU3OGY4MWQgcmVsZWFzZTIxLW1haW50CisyNjQ0MiAzYmY3NjJlMGUwNmVkMDlhOTFlM2UyNjY0NDE0MmZhMWI5ZWViYTNmIGxlZ2FjeS10cnVuaworMjY0NDMgMzkzZTlhMjE2YTg4YjUwMDEwOWYwMzE4MzZlYTZjZmYyY2QwZDA3ZCBsZWdhY3ktdHJ1bmsKKzI2NDQ0IGU0ODRmMzBkYWM3N2E2MTcxYTI3Yjk3ZWUzNjU2MDFhYWU4Yzg3OWYgbGVnYWN5LXRydW5rCisyNjQ0NSA4YzNkZDFjMmVmNDc5ZWU2ZWM0ZTYwZTE5YmFhOGVkMzU3ZTI3MmRlIGxlZ2FjeS10cnVuaworMjY0NDYgNDIzYTM2NzhiYzdjNzE3NmVhNjBhYjFlMjE3N2E5YjZmYTE5ZWFkZCBsZWdhY3ktdHJ1bmsKKzI2NDQ3IDRlODI1MjI4NDdkMGRlODFlMDAzNzc1MDYzYzVlYWI1OTJkOTRiMTIgbGVnYWN5LXRydW5rCisyNjQ0OCAwOWRiM2Y1ZDBiZDBlYTBiZjNiYjJhNWY1OWExNjRkM2RiM2RhZjIyIGxlZ2FjeS10cnVuaworMjY0NDkgOGM3YTM5ZDBmZWZkODAxZjZkZGM4OWNlMGZkZmFhMTI2ZjM5MGNlNyBsZWdhY3ktdHJ1bmsKKzI2NDUwIDMxNGY5MmEyNDI5M2IyYWJiY2YwN2NlYTNlN2Q1N2M0MDE2NDVjMTkgbGVnYWN5LXRydW5rCisyNjQ1MSBiMzk1NDc3ZDg0ZDBkNzY5OTczMDdkNGRhNjg4YTAzNzgzYWU3YmU3IGxlZ2FjeS10cnVuaworMjY0NTIgOTk3NTc1NjJiZmI5NTdmZDRiNTk0OTc5ZjMwOWVjZTkyOTc3MmI4ZSBsZWdhY3ktdHJ1bmsKKzI2NDUzIDllYmE2MGFjZTJkYWUwYzI1YzQ4OWVjNmY1YTA1OWRjMjZhNzU5NWIgbGVnYWN5LXRydW5rCisyNjQ1NCA5MTFmOWYxNGUyZDU3ZTliNjI0MmM2YTJhZWMyOTQ1NmQ1YWRiN2JjIGxlZ2FjeS10cnVuaworMjY0NTUgMmE1NDI3ODQwNjJmNWE5M2Q1YzNjMDkwNWM2MjhmOTkzMWUyNTZkZiBsZWdhY3ktdHJ1bmsKKzI2NDU2IGI1YWFlMmE2NWY2ZDEyMmEwZjczNWZhMmU1ZTliODQ2MjYzZDcyZjEgbGVnYWN5LXRydW5rCisyNjQ1NyBmODY3OWY2Nzk4YmY2N2I5MTRmMzcxZTE3NGMxY2I3NjcxODA4NDg3IGxlZ2FjeS10cnVuaworMjY0NTggMDNhYmZhN2RiNDQ5OGM1Y2I5Y2VkYjBmOWQ1ODljMmVhZTg5YzBlZCByZWxlYXNlMjItbWFpbnQKKzI2NDU5IDcxNzJjZWYyM2IwNTQ5ZWJmZTY5M2Y4YmI5Zjg2YzljMzZlNTE3YWMgcmVsZWFzZTIxLW1haW50CisyNjQ2MCA3Mzg5NWM5OWZjYzViYmVlYzc1ZTFjNzNiMmE4NWE5OTAxODc5YmZmIHJlbGVhc2UyMS1tYWludAorMjY0NjEgYjZmNDMyYjMyMTQzOGNhY2I1NGNiODg3NWRiYzAzYjBhMGI2ZjljZiByZWxlYXNlMjItbWFpbnQKKzI2NDYyIDU2OWUzODNiZTBkYTlhNmQ2YzdlM2ZjNmM2OWZmYTM3MDY4YWVkMTUgbGVnYWN5LXRydW5rCisyNjQ2MyBkNDQ1NDVjNGE0N2E4MmYzMjBlNTA1YjAyMjZhY2IxOGM0Njk3YzY5IGxlZ2FjeS10cnVuaworMjY0NjQgZDI3ZTk3YjhhODY2ZTZkYzRmYmNjYzI4YzUwNmM2YzU0NTYxZDc5NSByZWxlYXNlMjItbWFpbnQKKzI2NDY1IDI2ZTNmZThhODhmNTdiNzFjY2FmYmMyZGEyMzhlNzFkOGZkMzZkZmYgbGVnYWN5LXRydW5rCisyNjQ2NiAwMWY3M2ZkNjYzMTA5ZmIxMjI0M2Q4YmU1NTllY2YzMTYwMTgzYzRhIHJlbGVhc2UyMi1tYWludAorMjY0NjcgOTc4MzZmNjE5M2RjMzA3MTViODIwZmMxMTBiOGYwZGJjNmIxNDM3NSByZWxlYXNlMjEtbWFpbnQKKzI2NDY4IGY1ZWRmNzAyNTI2NzY4NWUzMTcyOTUyZWJiNmNlZmFmMWY3NjRlYzcgcmVsZWFzZTIxLW1haW50CisyNjQ2OSBkZjQ1YWRmNzdkMzZkZmRlNGQ4YjYxNGZjMmNjNzM0NjJmZWQ3ODUyIHJlbGVhc2UyMi1tYWludAorMjY0NzAgN2IwMGRhYjk4OGNmNDQwNzg2ZTM5Y2E1ODk5NTc4NTBlYzBhNzdlMyBsZWdhY3ktdHJ1bmsKKzI2NDcxIDJkM2EyYmViM2Q0ZDcwMjlmM2VlOThkNTdlZDViNzM5YzQ0NmI2NmUgcmVsZWFzZTIyLW1haW50CisyNjQ3MiA0MDc5ZTljMjNmYzE3Mjc2M2JlYjZkOGY5ZjRiZjlhMTdkYWM4MzMwIGxlZ2FjeS10cnVuaworMjY0NzMgYTNjOTgyZDQxMmI0NmUxY2Y5NGNmNDRjNzIzMzM4ZDcwZjlkZTRmYSBsZWdhY3ktdHJ1bmsKKzI2NDc0IGU3NTEzZTE0MmM3MGVkZmJjOTIzNDEwNjlmYjI0ODY3NWM2NzAxZWEgbGVnYWN5LXRydW5rCisyNjQ3NSAxZGEwMmJiYTYyNzY3M2FjZmM0M2IwM2NiNDFlMDJjZGIzN2YyNTE4IGxlZ2FjeS10cnVuaworMjY0NzYgNzEyMWQ3ZDU3MmQwMWFmMzBiNjIyNmQ4NTBmYTc3MWU1Y2JiZTExYSBsZWdhY3ktdHJ1bmsKKzI2NDc3IGZkZTg3OGJjMGUzYmU1ZTQ5ODE3OGYxNWMyZGFmZDBlZDJkN2Q1OTUgbGVnYWN5LXRydW5rCisyNjQ3OCAwZmZiNTRiMWMzZWE1Y2ExZTg4Nzk0Y2YxOWVkMzEyYmM4NTgyNzUyIGxlZ2FjeS10cnVuaworMjY0NzkgZjkxN2U3YTZlOTExYjc3MWUxZDYxNDU4ZGRmMzdiYWZhMmU1MGZhMyBsZWdhY3ktdHJ1bmsKKzI2NDgwIGZhNDFmMjQxMDY4ODczMTJiNWY2MjJjYjEyOTk0ZjE2MzVkZWNhZGIgbGVnYWN5LXRydW5rCisyNjQ4MSA3MzdmNDQ1OGU1ZGUwMTFlMDNjMzE5ZTA4ZTM5NTM2OGZlNzk2N2I4IHJlbGVhc2UyMi1tYWludAorMjY0ODIgYjBlNTlmMWU0OTVhYzZkYjk1NjZmODg3ZGM4MjJhMzcyNTdmZjQ0YiByZWxlYXNlMjItbWFpbnQKKzI2NDgzIDYyN2I3Y2E1MjIxYWMwYzkxZWExOTM5MWE3MjNmZWU4YmM1MGNlYWIgbGVnYWN5LXRydW5rCisyNjQ4NCAyMmRhMjYwODI4NWNmZTc3YTRlYWJjNjY1ZmNlN2I1MjM1NjUwM2E1IHJlbGVhc2UyMi1tYWludAorMjY0ODUgMGJhMjMzNDFlNWNmZjRlOGU1ZWQxYjc2NzZmZTU3NjlmN2FhZTc4NSByZWxlYXNlMjItbWFpbnQKKzI2NDg2IDkwODA1ZmNjNmM3MDI1NzNmMTE4ZWI5OWRiYzdkYTI2ZGQzNzUxZjQgcmVsZWFzZTIyLW1haW50CisyNjQ4NyAzNjhlODA4MWU3M2M0ZGJkMjgwNDNlYmUxYzhiYWEzZTY3OGRmMWNiIHJlbGVhc2UyMi1tYWludAorMjY0ODggNzA2NTBhZTFhMmNmMDAyM2YxNzM4MWJlMjhkZWZiNzg0MTA0MjBlOCBsZWdhY3ktdHJ1bmsKKzI2NDg5IDVhYWYzZDdiOGQ4YzA4OTNiMTUwZWYwZGI3NzllZDBmYmU0NDg2ZGYgbGVnYWN5LXRydW5rCisyNjQ5MCBhZDQ0YmYxMTc5ZWIyNTRiNWNhOTdjNzU1ZmNjYmZlMmJjNTU5YWNkIHJlbGVhc2UyMi1tYWludAorMjY0OTEgZGUwOWI4NzRmMDdhNjg4Y2NjNjYyNzBiNzgzZTdhYjA1ZDI4ODEzYyByZWxlYXNlMjItbWFpbnQKKzI2NDkyIDkwYWRiY2Y2MjAxMzYxYzdkYmI4Y2M4MzUzOWFkOTc3NTAyYzQ0NTMgcmVsZWFzZTIyLW1haW50CisyNjQ5MyA2NzU3OGE4MzBkODFjYTM5MjZlYmU2OTZjOTE5ZTAzOWI1ZjAzNTI4IHJlbGVhc2UyMi1tYWludAorMjY0OTQgNmRhMWY5OTE3ZTliM2U1MzM1ZmI1NWFiMzgxYmQ0MmE1OTdmN2Y0OCByZWxlYXNlMjItbWFpbnQKKzI2NDk1IDQ2OTRhMGRmMTc0ZTQ4Yjk1MWJhZWU3YjliYzVjY2VkMWNmMzA2M2MgcmVsZWFzZTIxLW1haW50CisyNjQ5NiBhMDQ3ZjE2ZmI4YjNlNzIyMGM5MjE1YjQ4ZDI3NTI0ZTY4MTllODA3IHJlbGVhc2UyMi1tYWludAorMjY0OTcgZDliNzFmNjI4MTRmOGQxYTVmZTZkOTUxOWY0MWI4OWNjNWNhMjljOCByZWxlYXNlMjItbWFpbnQKKzI2NDk4IDkxYTIyMjhmMzAyMWI3OTJkMGRkOGQyMjNlOTYxNDk1Yjg0MmIwNjIgcmVsZWFzZTIyLW1haW50CisyNjQ5OSBhYjUxMjMyNzRjY2ZmM2Y2ZjBlYjk0NzhlMWNkYmNmZjI2YWFiODk1IHJlbGVhc2UyMS1tYWludAorMjY1MDAgMmExMTE0NGY4ZjBjMDc3ODM2NjE5OThhNGI2N2ZjY2NjMTdjMDVkNSByZWxlYXNlMjItbWFpbnQKKzI2NTAxIDQ2ZmZiMTQ5ZWE3M2E0NDE0NDI2NWIyZWRhYWFmOTk2NzgyYzMxNzEgcmVsZWFzZTIyLW1haW50CisyNjUwMiA4YmEzMGUyZDhhZTY1NmQyZTI3NmQ1MWM4Y2E3NWRkNGMxOGUyN2NjIHJlbGVhc2UyMS1tYWludAorMjY1MDMgYjdmOTUwNmU2MGM5NGZlMDFmZjZmZDk2YmI5NzM2NWUzODgyNzZmYiByZWxlYXNlMjItbWFpbnQKKzI2NTA0IGE1NzVlNmVlODVkOTk2OTU1MTRkMWE5MDU1Njc0MGJhMGNlYmMxM2YgcmVsZWFzZTIyLW1haW50CisyNjUwNSBhMzZmOWZiMmM0MDQyYWYyNjQ1Mjg2NDY2ZTI3NmEyMzYwMjdlMzU0IHJlbGVhc2UyMi1tYWludAorMjY1MDYgMGVjZWY4YmZiZDRiMDIwMDI1OTc3NDZjYTRhNDk4MWU3ZmMwYmEzNSByZWxlYXNlMjItbWFpbnQKKzI2NTA3IDYxY2MwODc0NWQzMTU5MzYwYWIzNGE4YWUwYzlmYzZiMDgzYmRlNmMgcmVsZWFzZTIyLW1haW50CisyNjUwOCBkYmYwMTNjYzNkZWVlMGE0NWZlYzk0NmRmMTMwMWM0ZDc2MjRlMDgzIHJlbGVhc2UyMi1tYWludAorMjY1MDkgYzQ2MDljYTE3ZTNlYTBkMDc4NTNiZmIzY2RmMDIyOTVmMTE4Y2NkMSByZWxlYXNlMjItbWFpbnQKKzI2NTEwIDYyZmFiYmQ0NTdiZTZiNGI0OWNiZWRhZGUwODkxMjE0OTU0OWI5MWYgcmVsZWFzZTIyLW1haW50CisyNjUxMSA1MjI1N2FmZmUwYzllYTNhYTUzMjc3ODA2NzhjZjIyMDkwMmFlOWY1IHJlbGVhc2UyMi1tYWludAorMjY1MTIgZjc2OWI0OTU4ZTY2NjM5ZmJmNmMyMzdiNmU3YmM0MzkxZTA1YTU1MCBsZWdhY3ktdHJ1bmsKKzI2NTEzIDk1MDUyNzE1NjUxYjYwMGQ2MDRlZjU5NzRiOTZhMDU5YjUxYjU1OGMgcmVsZWFzZTIyLW1haW50CisyNjUxNCA5MzY4NTY3YTEwNDdjZTc4Yjk4YjkyZTdhZDg2OTkzYWVjOWM1ZjUwIHJlbGVhc2UyMS1tYWludAorMjY1MTUgMWViNDJmYzY4YjVmODVlOGYyOWNhYjZhZjMwMzBmZTg2M2ZkODc4ZSBsZWdhY3ktdHJ1bmsKKzI2NTE2IDYxZWI3MTgyNTM1ZWYwODUwOWNlMDZmOGY4YTg5MjI1OTgzM2RjNjggbGVnYWN5LXRydW5rCisyNjUxNyBhYWU4MTRmOTRiYWRkZmFkMDg4OTcyYmUyYWY0MTdlNjllNjM3NGI2IGxlZ2FjeS10cnVuaworMjY1MTggNTRhZjQ0OTY3NjA0NTVmNTVkMTllZGRjNDcwZjA5OTAzNGZiZWU4MCBsZWdhY3ktdHJ1bmsKKzI2NTE5IDRhYjIxZTM1NDQwM2UwNWJmYTFjYzVlZGQ1Njc4NDZiZWVhMWZiYTggbGVnYWN5LXRydW5rCisyNjUyMCBmY2EzNzljMzA5MDZlMWQ2ZmFjOWJjYjRhODVlYmQ5MzE0YmUyZTA3IGxlZ2FjeS10cnVuaworMjY1MjEgYzU0OGU3MjZiM2JjOGJlNmM3ZGEwYmVjZDZlYWE4NTIxODc1YTlkZCBsZWdhY3ktdHJ1bmsKKzI2NTIyIDM2MmMxYjgxZWU5Yzc5ZWI2ZTZhZjNlMTc3MDhiYzlkZGNkM2U3NWIgcmVsZWFzZTIxLW1haW50CisyNjUyMyBkZDQxNjM3NGFiMzg2MmUyZWFkOTBkM2NhNmZhMWZmNjU4ODIxMzY3IHJlbGVhc2UyMi1tYWludAorMjY1MjQgOGMxNDQyNDViMzE1Y2Y0NDRjYWUzNzNhMjViYzk1MmZlNWJjOTkwMSBsZWdhY3ktdHJ1bmsKKzI2NTI1IDg4M2Q2OWRlNTYwYmZmOTExZjczMmZiOTA0Mjg4N2M2YmI0NDVmNjEgcmVsZWFzZTIyLW1haW50CisyNjUyNiAxOTVmZTVmZjUwYWI5MDBiMWMyNTJkNGMzODhmZmRjODJhYjczNjllIGxlZ2FjeS10cnVuaworMjY1MjcgZjBkYzk3YmI5YzBkZmE1NzI2ZWViZTI3OTI1MTZiMzYzZmQwZTA2MyBsZWdhY3ktdHJ1bmsKKzI2NTI4IDBhYjI0NWRlN2RkYTc0Y2RjNDRkNTMyY2Y2YmI5OGMxOGZmYzI5YmQgbGVnYWN5LXRydW5rCisyNjUyOSBiNjNmNGExOWViZGQyN2Y4NzI2NGEwYzllNWRhNWUxNGRjZjExNjVjIGxlZ2FjeS10cnVuaworMjY1MzAgNzEzZmY4ODlkMDk0ODU5ZDQxM2Y0ZTFiMjE5NDdjZmMwZGYyZTA2MiBsZWdhY3ktdHJ1bmsKKzI2NTMxIDNhMGEyZjA3N2I4ZjAxMDlkNGIwYTAxYmU0NzI0NDg0YTIwNjIxN2EgbGVnYWN5LXRydW5rCisyNjUzMiBkNWNlN2ZmNTMxYmQxNmJlZDAxNjFjN2E1MzI2ZDE0ODBmOGE1M2VlIHJlbGVhc2UyMi1tYWludAorMjY1MzMgZjAzNTcyMDg0ODUxYjQ5ZWY4ZmEwZDlhMDNkMzRlMGQ3Yzg0YjUwZCBsZWdhY3ktdHJ1bmsKKzI2NTM0IDJmYzk0YmE1ZGJmZjEzMjkyN2RjZTdmNTU5NTRkYTdkZWRhMTM5MmIgbGVnYWN5LXRydW5rCisyNjUzNSBlMWQwZDdjNjk5OWE1MTY3MzhkNzZkNTkwNDQyZWNkYjMzMTMxYjM2IGxlZ2FjeS10cnVuaworMjY1MzYgMTYzMjg3NjFlYWJmNTk0Y2QyM2EzYjk0OTQ3NjE1MmNmNTE5Yzc2MiBsZWdhY3ktdHJ1bmsKKzI2NTM3IDY4ZDcwYjQxMDA5ZWQ5NjQxMGNmODQyZGQ0OTNkNmNiM2UyZmQxODIgbGVnYWN5LXRydW5rCisyNjUzOCBlZjczZmY3YTk4OWU3ZjBlNTk2NDlkZWI4MWY0NDUyZjRiNjk0Nzc5IGxlZ2FjeS10cnVuaworMjY1MzkgOGNmMWVmODE0ZWU0M2E4YjhjYzhkNTYxOGFkMTBiZmQwNTBiODYwMiByZWxlYXNlMjItbWFpbnQKKzI2NTQwIDYyMTg4MjhiMGExMTJiZGVhODY2Y2IwZTRlYWIyNDFhMmI2MjAwODMgbGVnYWN5LXRydW5rCisyNjU0MSAxYTYxODE5NmUxNWE5YzU3MzAzNWRiOTYzM2U5YmI0MTFkZDIxMGFmIHJlbGVhc2UyMi1tYWludAorMjY1NDIgMWRmOTMxOGIyYjhlMDZlM2YwMWE5YTI2M2NlZGE1YmIyNDU4M2JmOCBsZWdhY3ktdHJ1bmsKKzI2NTQzIDFhNzdhZjYxMTEwNTlmYmQ3NGQ3MmFhOTJhMzBhYTBiOTY1MDc2NWIgbGVnYWN5LXRydW5rCisyNjU0NCA5OThjYzQ4NDY0ZmVmYWI3ZjAyZmYxNDZiYTgzYjAwZWM5ZTY2N2JkIGxlZ2FjeS10cnVuaworMjY1NDUgYzI3N2ViYzNjZTBmMTkxM2JhMmVjMTU5YjhiMjg0YzRiNTAxZTJkMyBsZWdhY3ktdHJ1bmsKKzI2NTQ2IGU3Nzk5OTE2NTk2ZDM5ZTU5NjVjYTE5ZDIxZjUwZGRmYzRjMmU0MTAgbGVnYWN5LXRydW5rCisyNjU0NyBiNDM1MmY1YTM0NTIyMTI0NjhkNThhYjk2YjMxN2Y2ZjI0NzVjYjZhIGxlZ2FjeS10cnVuaworMjY1NDggN2MwZThkYmNmNTdhNTk0ZWVkZmE0MTY4ZGY0NWM0OTE4NDRiZmU1MiBsZWdhY3ktdHJ1bmsKKzI2NTQ5IDJmZDYzZDc1ZTkyZjk1Mjg1NGNmOTdlZjRmMzhhMmQyOGM0OGY1OGIgcmVsZWFzZTIyLW1haW50CisyNjU1MCAzNzQzNWY5ZjA0ZDY0NTUyZmEwMDQ4NmVjODFiMzkyZDc0N2MzYTNlIHJlbGVhc2UyMi1tYWludAorMjY1NTEgMGJjM2E0MWQ0ZTQwYTI2YjY3MTc3NWQxMWViODMxMjE4NDNiYjViMyBsZWdhY3ktdHJ1bmsKKzI2NTUyIGQ0NzhmOGFmYzM2ZGQ1MTg0YzhkZDczZmFiOGZkODRmYjdkOTQyMDQgbGVnYWN5LXRydW5rCisyNjU1MyBmMWQ2MTQyMTI4ZDNlNDkzOTkyN2E5OWI4MGZmMWFiN2QwNjliODU4IGxlZ2FjeS10cnVuaworMjY1NTQgNTA4ZmQ5NTJjOWU5ZjIzZTQzZTkwNDAyNWNlODk4MWFkNmEyNzE2ZCBsZWdhY3ktdHJ1bmsKKzI2NTU1IDBjOGU3NjJhNjc3YzQ4MWNiZTI5MTU4ZWM5OTZlN2Y3NDdhYjg3MmEgcmVsZWFzZTIxLW1haW50CisyNjU1NiBmM2JlMDVlNjJhZDFhOGQ2OGQwODhhNGY3MjNiMmZhNjcyZGUyZDg1IGxlZ2FjeS10cnVuaworMjY1NTcgNjBmMjQyNTg5YzMyN2E5Mzk1MDExZDE3MmY5ZDRkZDI5YzI2ZjBlYyBsZWdhY3ktdHJ1bmsKKzI2NTU4IDY3NTliZTA4OGQ2OGJkZTY3Y2IzNDE4ZjY4NmU2ZTgzNzkwMzM0MWYgbGVnYWN5LXRydW5rCisyNjU1OSA5NTBhMjJlYjhjYzhhZGVmNWFkNjkyMmI2OGY0N2VjZmYxODhmNDE1IGxlZ2FjeS10cnVuaworMjY1NjAgMjE3ZWVhOWQ2NjE1OTU4MTI0YjdmZjU4OWM0ZGYxMDY0NjYzMWViNSBsZWdhY3ktdHJ1bmsKKzI2NTYxIGQwNzhmODQ4YWMzYjg4MGY1YzFjODc1OTllNTQzMTRjOTU1OGI0MzIgbGVnYWN5LXRydW5rCisyNjU2MiBjNDA4ZThiMjY3NWFhMmVhZTcyMTE4YWM0MWVjMjdlODkxNGE5MjhhIGxlZ2FjeS10cnVuaworMjY1NjMgNDliZjVhOGZhMTUxN2UxYmY5MWEwNTdhOWFmNDQyZjA4YTIzMjkxNCBsZWdhY3ktdHJ1bmsKKzI2NTY0IDU4M2MyMjZhZmRlNmNiMjA0YTJiZGNiN2IyNjNmOTIxYzBhZGEwODggbGVnYWN5LXRydW5rCisyNjU2NSA2ZTU2OGVlMzFhOWNlYzA4MzBhNWQ5YjBiMDg5ZjkwMzAzY2UyNzJlIGxlZ2FjeS10cnVuaworMjY1NjYgOGY5YWQyYzA1ZGFkZWE5ZTVjM2U0MTRiMDcwMDk3YmNmOWUzYjA2ZCBsZWdhY3ktdHJ1bmsKKzI2NTY3IGZkNjA5ZDJjMTY2OTFmMDIxMDJmODc5NTVmODViOWU4MWUxNDExZTcgbGVnYWN5LXRydW5rCisyNjU2OCA1YzMwMTc3NTY2NWQ5Y2ZhZDg1ZjlkZjdjMzkzM2U1MTYxNDE2NmIwIGxlZ2FjeS10cnVuaworMjY1NjkgMzgyZTM3YWMzNzRkYTJjYTc1NGQ3NjZiZjllY2E4ODI1YjEyMTUzMiBsZWdhY3ktdHJ1bmsKKzI2NTcwIDZiMmFmNmRhZmU3YzczZjU2OGEyZjRjMGRlNTlhNWUxNDRiYzhkY2QgbGVnYWN5LXRydW5rCisyNjU3MSAwZTQ0OTdmYjJkZThkNGExMDk0ODFmZmQyMWZmZmM3NzM4NDI3MDAxIGxlZ2FjeS10cnVuaworMjY1NzIgZTE2ZGJmODc1MzAzNzM4M2JlODVjMTY5YzFlMjRlMTgyNGU3ZDMzNCBsZWdhY3ktdHJ1bmsKKzI2NTczIGVmOTE5ZDI5NWExMjBkNjU4NWE4YjA0ODk4YjBlNzc5N2M1MDU2M2UgbGVnYWN5LXRydW5rCisyNjU3NCAxOWY1M2FhNGUxZTUxNDc3MzI4OTQzYmY5ODVmMDg3OGEwMWQ2MzIxIGxlZ2FjeS10cnVuaworMjY1NzUgZDhlOWY2ZjU3ZjEzMzY1MzM5ZmI0OGM5ZDRhMTI4ZjJjOWQ4NGE1YSByZWxlYXNlMjItbWFpbnQKKzI2NTc2IGIxOWE1YWRiNjk5MDA0OTNhNmI2YmMzMDNmMzc1OWYwNTc4NzJhMTkgcmVsZWFzZTIyLW1haW50CisyNjU3NyBiYTg4OTk4OWE3ZWIwMWZhZGYwYTZkYjEzNjkyOTkxMTc0YjM1OGFjIGxlZ2FjeS10cnVuaworMjY1NzggZDYxNGFlOTQ4YmMzYWUzYjViZWIxZjdmMjZiYTRhYzFmODI1NjJkMSBsZWdhY3ktdHJ1bmsKKzI2NTc5IGIyMzZkMjA4MzBmZTUzZDU4ZjI0YmVhYzc5YmQ1MzhiMWUzYTc0OGIgbGVnYWN5LXRydW5rCisyNjU4MCBiMDhiNTFkY2UyNjRlM2Y2NDE4OGU3NGRkOWQwYjk1YjY4Njk3Y2EyIHJlbGVhc2UyMi1tYWludAorMjY1ODEgYmQwOGM2OTU1ZTliZGQxNjQ0NTA5ZjhiZWM1ZDQ1M2VmODBlNWUwYiBsZWdhY3ktdHJ1bmsKKzI2NTgyIDU1NGYyMTk3YTdhNzZjOGY3MzkxMzM1YTRlN2JjMWFjMzQ3OGJlYjcgbGVnYWN5LXRydW5rCisyNjU4MyBhYjRmYTc4YWZkZGY2MTlhMjZjN2ZjY2JmZWRlNjkyOWU3ZGYzOWQzIGxlZ2FjeS10cnVuaworMjY1ODQgZjVhZWVhYWYwMzk3NGUxZTdlNWVmN2EwYmE2MjIzYjg3NWRlYmQxZSBsZWdhY3ktdHJ1bmsKKzI2NTg1IGVkNWQ3NTkxMmQ2MGRhOTFkNWI5M2YyMzY2MTAxNzRkM2ZhYTRkYWEgbGVnYWN5LXRydW5rCisyNjU4NiBlNjM5ZTM0ZWY5MDExZThmM2FmMzhiN2M1YzFhZWQxMWJkYTA5NTU3IGxlZ2FjeS10cnVuaworMjY1ODcgZGQzNTBiNjM5MzA5OTk0NjhkMzhkMGNjYzI3ZTIxYzZkYmU4MWJjOSByZWxlYXNlMjItbWFpbnQKKzI2NTg4IGE0MzE4OTIzYzdhYTMzNDg2NGQxYjZjOGIzNTZjYTUxOTQ0MzU3MzUgbGVnYWN5LXRydW5rCisyNjU4OSA2ZGI2ZTNkYzgzNjZiZWM2NjY0MjVlNjdjZTAyYjdhMzRkMTQ4MTU0IGxlZ2FjeS10cnVuaworMjY1OTAgMmI0N2QwZGNmYTY2NmE4ZDU4MWMzNGIwYTZhYmI3MzhkNTE1OTVlZSBsZWdhY3ktdHJ1bmsKKzI2NTkxIDg2MzEyNTU0NTMwMTU5MzA2YjRmZGM4NDRlZmQ0NjBjYWRhNTE2MzUgbGVnYWN5LXRydW5rCisyNjU5MiA4YmI5MGU4YmYzNjNkM2QwZjRkZWZiMTczMjczZTUzZTc2ZWQxMThhIHJlbGVhc2UyMS1tYWludAorMjY1OTMgZDMyNTQzMzM3YTIxNzVlNWJkZTczODk5MzkwZDFiMjEwNDJhMWM4NCByZWxlYXNlMjEtbWFpbnQKKzI2NTk0IDQwYTE4ODA1NTM2OTFmY2M5OWIzZTVhY2I4NDVjMjU2OTJhYWYyN2IgbGVnYWN5LXRydW5rCisyNjU5NSBhZWYyNDhjMTY0NWEyNDJiYmM3MTVlMDYzMWNlOTA2YTRlMTBiYWUwIHJlbGVhc2UyMS1tYWludAorMjY1OTYgNzcwYzJkMmY1NDcyOTliZDUxMjMwNjAxNWVkYzUxMjI0YTQyMDRkNSBsZWdhY3ktdHJ1bmsKKzI2NTk3IGY1MWQxYTJkNGE0YTFmYWQxYWEzYmE0NmRlNGI0ZGI1YzA0MmEwNjYgcmVsZWFzZTIyLW1haW50CisyNjU5OCA1ZDEzNWU0MTRjNzY0MzJkZDNlMjE0MjE5OTFjMmYyOWUxNGRiZDc5IGxlZ2FjeS10cnVuaworMjY1OTkgZDMyOGU1YmI4YTg4MGY2NDgyNThiMjhiMTUxMWE4N2U1OTQzOGE2YiByZWxlYXNlMjItbWFpbnQKKzI2NjAwIGRhYmIwYTNmNDdhNTU0MjAyMDUxZmI4ZDVkNjc4YmRkYjJiMmQ2ZGMgbGVnYWN5LXRydW5rCisyNjYwMSA3NmM0NTAzNzExM2ZkYTM2M2MyMDk1ZjJiMmU0NWM4ZWY1MDRkYjc1IGxlZ2FjeS10cnVuaworMjY2MDIgMzA0NThhMTFiNWUwOTNhZDUzMGFmZjllODQ1NDNhZWY4NzcyMDFjZCBsZWdhY3ktdHJ1bmsKKzI2NjAzIDRlMjM0Yjg3MTcwYjA4ZWUyNmE1ZGFkOWE5YjdjOGI0NmQ4YjMyMmUgbGVnYWN5LXRydW5rCisyNjYwNCAyNGIzZWFkODljYWU4NzgzNjBlNDNiOWUzZTJjZWYzYWUxZWRlNjUyIGxlZ2FjeS10cnVuaworMjY2MDUgOGZlYzExMGU5ZDAyMDg0OTBkYzkwYWQyZjZmYTc2MDZmN2Y4MWI5OSBsZWdhY3ktdHJ1bmsKKzI2NjA2IGUwNDcwZjJkZDQxMGU4YmI3NTIxZjQzODNlZThjMDA1YmUzMWZmNjggbGVnYWN5LXRydW5rCisyNjYwNyA1ZmRhZGM5NDI2NjUwMmQ3MjY3M2RkMmYzZmYxMjU0MzQ4ODA1NzgzIGxlZ2FjeS10cnVuaworMjY2MDggYjBiNjMyMTA2ZmQ3NjVkMWNhYmQ5Y2Y4MThjNTRlNmU3M2QzODYwNyBsZWdhY3ktdHJ1bmsKKzI2NjA5IDk3NjUwZWRmNThiYjE3ZGIzOTYwMjI1ZThlZDFhZjFiZTY5MGU1ZmQgbGVnYWN5LXRydW5rCisyNjYxMCA1ZTgwYWQzNmQ4ZmZiYzQ0YjE0MmI3ZmI0OGY1ZjE1YTJlOTlkNjE5IGxlZ2FjeS10cnVuaworMjY2MTEgMjg0Y2ZjYTc0ZGY0MGQ2MTM1NmQ0MWZiYTBjYjZmMTA5ZWYwYWNjYiBsZWdhY3ktdHJ1bmsKKzI2NjEyIDQwNWIyOTFjMzIxZGEwZTkxYzExM2FmYjA0OWM3NGFiYzZmZmI0NDAgbGVnYWN5LXRydW5rCisyNjYxMyA0ZjMzNWNhM2YxMWNjMTg0NDE4MWMzMjZkMDE5YzU1YmUyNjM0ZTQ0IGxlZ2FjeS10cnVuaworMjY2MTQgNzJjYTBmZDRkY2E2YmY1NjU4YTIwZWY2NTMzYzFkZDNkZTBhNDI5ZiBsZWdhY3ktdHJ1bmsKKzI2NjE1IDliMTc1MDE4ZmRlZjc4NWNhMmM5ZjdlOTUyMGNiNTY2MjExZWM0NTMgbGVnYWN5LXRydW5rCisyNjYxNiAyOTIyMTEzMjE3Njk3YzFiMDcxY2I3OTM0ZDhkYjVlZjRkMGIyNzAyIHJlbGVhc2UyMS1tYWludAorMjY2MTcgYTgzOWE2YmU4NTc4OGQ1MDM3MDRhZjRmNDZjN2YyOTYzNTM0ZWNjYyByZWxlYXNlMjItbWFpbnQKKzI2NjE4IDY2N2IwMjZhODlkOTBlMmU0OGMxZjIwMTg5MjYwZTNjMDI2NGFkYzcgbGVnYWN5LXRydW5rCisyNjYxOSA5YTliZWMxMGFhOGM2Y2QyOGI3MjllYzAwMDBmNGU2MTY2NzFmNzM4IGxlZ2FjeS10cnVuaworMjY2MjAgMWNmODg1OTMxNjY5MzkwNzI4YmY3OWI3YzM5NmRlNzA2NzBiYTUzOSBsZWdhY3ktdHJ1bmsKKzI2NjIxIDllMzUzMmI3NTQ3MWU2OGY2Y2NmNjk4OTZkOTEzYmY4Nzg1ZTk1OGYgbGVnYWN5LXRydW5rCisyNjYyMiBlNTI0OWE2Y2MxZDg3ZmU2YzNlMzI5NDY4ODQ0OTc2MDNhMDk4YzQwIGxlZ2FjeS10cnVuaworMjY2MjMgNzM1Mzk3N2Q2YjY0YWNmMjBiZjI1NWY3YmNmMWRhYzE0NzMzZTI1YyBsZWdhY3ktdHJ1bmsKKzI2NjI0IDM3ODEyZjJiYTFhYWJlYjU4YWI0MTgzY2UxZTRlMTc0YjU2MGNhMDggbGVnYWN5LXRydW5rCisyNjYyNSBiNTcyZjdhMGJiNTYzNWM1NmY0ZGY3ZGI5NTRiOTgwN2IzN2JlMDI4IGxlZ2FjeS10cnVuaworMjY2MjYgOGQ0YjI1Y2VlZWZlOWY5MThlY2Y1ZWYxNTdjYTBlZWQxZWJiZjgyMCBsZWdhY3ktdHJ1bmsKKzI2NjI3IDdiNjZjZDE1ZGNlOTkwMzFhOTdhNDA2YzE0NGE3YzIzMzc5MzM2YmEgbGVnYWN5LXRydW5rCisyNjYyOCAyMWNlNWQ1ZTBlYzcxNGE5NmNiNjcyNzUwMDMxNzE3YmY3ODM4Nzk2IGxlZ2FjeS10cnVuaworMjY2MjkgNDkzMjA2YjcwMWRiNTE3NDE5Y2QyZjg3ZTM0MTc1MGY0YzZiMzczZiByZWxlYXNlMjItbWFpbnQKKzI2NjMwIGVjMmE1NTU5ZTc2OTViYmQ2ZTc1NmZlNWZiNjFlYjJlZmFkNjM2NjQgcmVsZWFzZTIyLW1haW50CisyNjYzMSBmOTcwNTg4ZTg5YjEwZDMyZWVjMDlkNzJmOTA3ZTEzMWNjYzUzYWIyIGxlZ2FjeS10cnVuaworMjY2MzIgODAzZTZhNjk1MzA2NGMzOTllMzM3OGIzYTVhM2ZhMmI3MmY1OTliNiBsZWdhY3ktdHJ1bmsKKzI2NjMzIDU4Mjg1NWY2ZDM1YmVkZmIwYjE2N2NhY2IyY2RiMWZkYTZhZDdkOTEgbGVnYWN5LXRydW5rCisyNjYzNCA3MGEwODk3MjIzOTM1YmYyMWNhMmYwNDQwNDgwNjg0NGMxN2ZhM2IzIGxlZ2FjeS10cnVuaworMjY2MzUgMjljYTllMTJiZjEwMTlhMmM5YjdlOWVkMDVhNjE5OGEyN2E1YTAzZSBsZWdhY3ktdHJ1bmsKKzI2NjM2IGQ0NzI5MGRkMmQ1N2U2NTE2NTYxNGRmNGIxZjllZThjOGUwYTZlZGQgbGVnYWN5LXRydW5rCisyNjYzNyA0NjQ1MGYxN2EwNzA1NjFjNmY1YWM4NzIxMjBmMjc2NDVmZDg4ZDkxIGxlZ2FjeS10cnVuaworMjY2MzggMzE0ZTA4ZTgwOTBmYjRkOTBhNmZiNGM1YjExOTUyYTI0ZjI1YWYzYSBsZWdhY3ktdHJ1bmsKKzI2NjM5IDVmNWNlYTI3MmI0NjIzMWMwOGUxMGU2MmNjMmUzMjdmYWRiOTQzZmMgbGVnYWN5LXRydW5rCisyNjY0MCAyMDA1NTlmY2M2NjRmN2I2NmI5MzgyODI1MWUyY2Q4MWIyM2E1YTdiIGxlZ2FjeS10cnVuaworMjY2NDEgOWUyMmE4NzAyZGUyZDg0ZDQ4Y2VkYTg3MGRkYjBmNzE4YTYwMzBkMiBsZWdhY3ktdHJ1bmsKKzI2NjQyIGY1ZmQ3ZTI5NTg5NzU5NWNmMTI3NmQzNWJmZTM1MjczMmI2NmE5NmUgbGVnYWN5LXRydW5rCisyNjY0MyBhNGU3NWQ1M2QzMmI0ZjU3N2I1NjFhZDVmYTA0YTQ2YWVkOTI2ZDk3IGxlZ2FjeS10cnVuaworMjY2NDQgM2VkZGQ5ZDY4YWY3ZGJjMDQ1ZjFkNjlhOGYzMDJiN2QxMjJiMjViYSByZWxlYXNlMjItbWFpbnQKKzI2NjQ1IDAwZjY2MzYwYmUxOTg2MDY1MjM0M2JhYjc5ZWExNjIxMTIwYmU2NjMgbGVnYWN5LXRydW5rCisyNjY0NiBhZmUyNjM2NzJmZDg0YmFiYmQzNTM4NWE0MjhjZmQ1MjE0MTFmZTc0IGxlZ2FjeS10cnVuaworMjY2NDcgZTExNDcxYTA2MjZjMTIyZDQ1YTkxODg3NDgyOTFkZWIzN2NjNjJlOSBsZWdhY3ktdHJ1bmsKKzI2NjQ4IGI2MGI3M2Q0MWViNGE4M2RlNGYxYWQ2MTg5OGY2OGQxNjlmNWE1NTAgbGVnYWN5LXRydW5rCisyNjY0OSA0NzI4YmVkZjRiNzg5YTcwNTE4ZTgxMmZlYjM2ODFiMTcxMzZjZDZiIHJlbGVhc2UyMi1tYWludAorMjY2NTAgN2M2MDk0YjE4ZDE2MTAwYWU5ZDQyZDQ3OGI0NzNhMzYxYTE4N2IwOCBsZWdhY3ktdHJ1bmsKKzI2NjUxIDVkZDUyYTliMDQzOGE4Njk1ZmMyODQzNzRjYTVmYTUyZTBlY2Y4MDcgcmVsZWFzZTIxLW1haW50CisyNjY1MiA2NTYxMGJjNGU2YTU3M2YwNDdjNTRkMmRkOTk1MDkxMTNkNDRhOGQ4IGxlZ2FjeS10cnVuaworMjY2NTMgYjkzZWQxYTRlNDlmMWE4NjkyZTAxOGEwOWRhNTE2NDNjZGIxNGFlMyByZWxlYXNlMjItbWFpbnQKKzI2NjU0IDhmMWIzNzFmZmJhZjYxZDdhYjI5M2RiNDcwNzI4NWQ4NTI5OTkzMGYgbGVnYWN5LXRydW5rCisyNjY1NSBiNzM1ZTg5Y2NkYTc0ZjgwZDcwMmYzM2IyZjZjMjdkYTRkYzFjNTQ2IGxlZ2FjeS10cnVuaworMjY2NTYgNmZhNzZiNGU1OWZlZmU4MWM1MTExOThjN2Y4OTY1ZDAyYTI3OTM3NCBsZWdhY3ktdHJ1bmsKKzI2NjU3IDE3Y2FmZTgwNWYwNDVmNjUyYTY1MjM0OWQ5Zjg1M2M4ODA0ZmNmOTAgbGVnYWN5LXRydW5rCisyNjY1OCAwOGU2Zjk0ZjNhYjAwNzk4NDYyMjVjYzNjNmU4ODQzMjA1Mjk2NGY2IGxlZ2FjeS10cnVuaworMjY2NTkgNWE2YmU4ZmE4ZGUyNGU2YzdhZmEzNzk3ZDUzNzE1OTBmMmZiNGRkOCBsZWdhY3ktdHJ1bmsKKzI2NjYwIDAxNDc4YTEzMjkwODliODAyOWNlMWNlYTgzN2JjMzM0ZWYzMDk1MDQgbGVnYWN5LXRydW5rCisyNjY2MSBiNWY2ZTlmNmU3ZjRiNzk4ZGUwODYwNzZiNTIwMmUzYThjMGM2OWU2IGxlZ2FjeS10cnVuaworMjY2NjIgNTczMmE5Y2M5MWM3YTk0MmIwYmZmYTM3ODhkMDZhZWJiN2I5YmU4MCBsZWdhY3ktdHJ1bmsKKzI2NjYzIDUzZWJhZTc4MjNkOTc0MmYzNTE0YmNkZDE4NTk4ZWFhMzcyMDcxYzAgbGVnYWN5LXRydW5rCisyNjY2NCBhMjE1MzI4NTY1MjQ2MDA5Njk2MmQzZmM0ZmIxZmIyZTQxNzUxNjc5IGxlZ2FjeS10cnVuaworMjY2NjUgMjBhN2IyY2YzYzFmZTM5NWU3ZTViNzNhOWNkMjkxNGYxMTc1MDYzNCBsZWdhY3ktdHJ1bmsKKzI2NjY2IGVmNmUzMWYwY2VlMTI3NjE2YjdiNzBhZWE0MWJiNDI3NzkwNGQwNGIgbGVnYWN5LXRydW5rCisyNjY2NyBjZjk2NDBiZTZmOGE5NTIwZTNmMjFjZDFjNmFhZWMwYWQwYzI3NWQwIGxlZ2FjeS10cnVuaworMjY2NjggOGFlN2I0MGFjNmQwN2ViZWQ2NTcwZDQwNWRhZDcxZTBlYWVlNzY4ZiByZWxlYXNlMjItbWFpbnQKKzI2NjY5IGQwNTMyYWUwNWVkNzJhYzJjNzFhOTNkMmIwOTQyNDkzNTQxNzc3ZWQgcmVsZWFzZTIyLW1haW50CisyNjY3MCA0Y2U2MTE2NTBkMGNlODdlMjM3MDMwMmI5NmIzZTk1NDFkMWFiODc4IHJlbGVhc2UyMi1tYWludAorMjY2NzEgMDE3NjVkMzA1MzJlMjlkNDZmYmI5NDRkYWM4NDhlYzA5MDFkMDg2OSByZWxlYXNlMjItbWFpbnQKKzI2NjcyIGJhNjcyMWFlNGI4MDkzM2NiNWI4MmUwMzVkNzBiNzgxYzQzZDJmOTkgcmVsZWFzZTIxLW1haW50CisyNjY3MyA1ZGJjNzllZTA4ODViZDU2M2MzNGZiM2FkYTAxNGUwMTI3ZWFlMGVlIHJlbGVhc2UyMS1tYWludAorMjY2NzQgMGIwODljOGFjMDc3MzAxMmVjNjBmNjkzZWNmZGYwMzU3ZTE1NDI1YiByZWxlYXNlMjItbWFpbnQKKzI2Njc1IGFhYjQyNzNhN2NmNzE2NzM5YWQ2YWU2NmZlNmI4NDY4YzE3ZWNiOTYgcmVsZWFzZTIyLW1haW50CisyNjY3NiA0YzhmNWE4OTBmOThiZWVlZjM3NmJhYWJiM2ExYjZmYjE0MDhjY2EwIGxlZ2FjeS10cnVuaworMjY2NzcgMTMzNzYzMzMyNzY3MzQwM2FmOGMwYzJmM2YzZTdjYWI3ZjIxNGRkZiBsZWdhY3ktdHJ1bmsKKzI2Njc4IGFmMWZmNDFiZTQ3Yjg0NTMwNmM2ZWJmN2QyZmQ0Njc0MTgxNDhhYjQgbGVnYWN5LXRydW5rCisyNjY3OSA0NmNmYjg1ZjBhYWU3NjA0MDdlMzRiM2I0Yjc1Mjg4NDBmNWYzMmQ2IHJlbGVhc2UyMS1tYWludAorMjY2ODAgYTQ0M2U1ZTVlY2U3ZjYxYzJjYWJjYWEyZTZjNzBiNTQzMDZkNDgyOSByZWxlYXNlMjItbWFpbnQKKzI2NjgxIDIzYmY2ODc3OGEyYTg1YzI5MWFiYWYxZmQxN2RlYzI5NmYyYTE5YmMgbGVnYWN5LXRydW5rCisyNjY4MiAzODg0NDkzNzA5NDYyNDdmMDdlNzdhODdlM2M5YjUyNGIxMjdiOTQwIGxlZ2FjeS10cnVuaworMjY2ODMgMTc0YmEwM2M4OWZiNDgxM2E0YThmYWNiNGM4ZWFmZDFlZjdjYjMxMCBsZWdhY3ktdHJ1bmsKKzI2Njg0IGFmNDk5YjUwYTA5NDY0M2M3N2Y3YjZkMTI3NzcxMzJmZTdjNzhkMzQgbGVnYWN5LXRydW5rCisyNjY4NSAzYzdiMjJkMTEyZDM1ZTNjZjIzZWU3M2MzZTI5NTk2ZWQ2YjkzZTdhIHJlbGVhc2UyMS1tYWludAorMjY2ODYgMTgwNmQwMmMwOGM0NDdhNTJmYWMxOTQ2ODU1MDljNDE1MzA3ZGI5YSByZWxlYXNlMjItbWFpbnQKKzI2Njg3IDY4OTI2ZDBhYWQ0MDNiZjhhNGRhYmRmMDMxYzNiOTRmOTA3NTU3YTMgbGVnYWN5LXRydW5rCisyNjY4OCBiYTI5MDEyODdjYjdjYTg2YmZjZDMxOTE5MTJmODZiMTgxOGNhNDkzIGxlZ2FjeS10cnVuaworMjY2ODkgOGI1OTI2MDMyYjU2YTIwNWE0Y2FlZjNlZTEzZjYzYmY2Y2UxZDUyYiByZWxlYXNlMjItbWFpbnQKKzI2NjkwIGZmZDVkODZlOTZjZWIwZjkyNDExZmFkYzM3NjVjMGZjZThlZTM4MWEgcmVsZWFzZTIxLW1haW50CisyNjY5MSBjMzMwNzdkYzBjODNiOWMxOWRhNjI3OTQxYzA1MGE5ZWVjYTNkYWViIGxlZ2FjeS10cnVuaworMjY2OTIgYWFlNmRjNmIyYTU4OThlMzJjMTAwYzdmNDU4MTA2MmM1ZmRjY2ZhNSBsZWdhY3ktdHJ1bmsKKzI2NjkzIGMxZDFhZTE1ZGU5MmM5YWY1NDY2OWYyZDk3NGIzMDBlOGZhMzg4NmUgbGVnYWN5LXRydW5rCisyNjY5NCBjZDAyYTM2NzA0ZmVmMjNhYmE1MzkxMTE4Nzk1ZjY1OWMyMjMwN2FkIGxlZ2FjeS10cnVuaworMjY2OTUgYzkxN2ZlOWJjNjU0ZmU5NjYwNjE3NzBkYzQwZDRkYjVkYzQ4NTljOSBsZWdhY3ktdHJ1bmsKKzI2Njk2IDNkZWJjOGMzNGNjOTEwYzgyMzcwOGRkYmM1YWUyYjUwZTk4YTBjYmUgbGVnYWN5LXRydW5rCisyNjY5NyA4N2M5OGFmNjFmYzRhYjk1Y2YwMzRmZmJjZmY5NmRmZWY4OTU5MDY2IHJlbGVhc2UyMi1tYWludAorMjY2OTggODM4NDI3ZjBhZjIzMmQxNGRhNDY5ZTFlMWEzMDIyZmFmODM0MDQ3OSByZWxlYXNlMjItbWFpbnQKKzI2Njk5IDk3ZTBiNTA0YzAwMDk4ODFhZWI5NGVhYmI5NTY4NTIwMTA1NzllODUgcmVsZWFzZTIxLW1haW50CisyNjcwMCAwMmQ1MjgzYjFlMjFmYzYyZTZlOWFjMTliODZmODU2YTkwNjFkZmE2IHJlbGVhc2UyMS1tYWludAorMjY3MDEgMzY5N2EzMzY0MDBmYWJjMjYxNDA2NDY2YTY3MDE3ZWJhMGYzMWEzOCBsZWdhY3ktdHJ1bmsKKzI2NzAyIDU1NDIzYzFhYmNkMTQ5ZGU4ODMwZTVmYTY4ZjdiM2RiZDdlZDBkZWQgcmVsZWFzZTIyLW1haW50CisyNjcwMyAxMzA1NmI2MjY3YTI1ZjE2ZWNhMGVhYmY5YzY2YTdjNzZmZWVjYTBmIHJlbGVhc2UyMS1tYWludAorMjY3MDQgMDNiMWU5ODliMWQ5Nzc0NThkNzdiYzZkMzk2NTE2YjBkZDA1Y2RhMCBsZWdhY3ktdHJ1bmsKKzI2NzA1IGJmZmM3MjM2YzRiYTI4OTE0N2RlOGRkOGFhYjdhMzcwOWM4MTU0ZGIgbGVnYWN5LXRydW5rCisyNjcwNiBkOTNmNTM3YTc1MmI4ODZlZGVhNjRhZGZiZTE4Y2Q5Yzg4YjU0ZDczIGxlZ2FjeS10cnVuaworMjY3MDcgODdjNzE2YjI4YTNlY2YwYjBmYjcwZGY0ZjdhMmIxNTg1MTA1MjkxYSBsZWdhY3ktdHJ1bmsKKzI2NzA4IDJkMmZhYTUxZGNmZGFlOGNlM2UwMTI5MDQ0NGUyNjg4YzQ0MDYyMjIgbGVnYWN5LXRydW5rCisyNjcwOSBhYTA4NTU0ZDFhOWI0MWFiOWEyMzI0NzZjMGQwY2I0NjY2OWJiYzk3IGxlZ2FjeS10cnVuaworMjY3MTAgMWM5Y2UzNGQ1MjlkYzM4ZjI5NjA3YzRkY2E2NzU5MzBkYTQ4OTU4MiByZWxlYXNlMjItbWFpbnQKKzI2NzExIGI0OTFhYjc4NzdkMmQyYTI1YTk3OTM0YmJiMGYyOTAyMDI0ODY5YzggbGVnYWN5LXRydW5rCisyNjcxMiAyMzhkZmVjOWM4OTllOGUzM2RjNDc4MTBiNTdjOTE1NzlmY2RhMzdhIHJlbGVhc2UyMi1tYWludAorMjY3MTMgOTgxYzZiNmZmMmYxNzIwMTlhOWQ0MDA5YmViM2JhYzI5YTIwOGYzZCByZWxlYXNlMjEtbWFpbnQKKzI2NzE0IDljOWUwNzM1OWQ2ZTY0MDQ3YTljZmFlZWU3NzZiMjVjZDAxODI2MjUgcmVsZWFzZTIxLW1haW50CisyNjcxNSBkNDY2YmMxOWY3MzEyYWU1NzcwYmVhMTQyMjVhODRhZTk4ZjQyYzBhIGxlZ2FjeS10cnVuaworMjY3MTYgNjdiY2I0ZjUyMzdmMjQ1MjYwNzljZTVlZjMyMGFjMGRiZjYyNWVlMyByZWxlYXNlMjItbWFpbnQKKzI2NzE3IDBhNGQ2YjI0MGFiMjQ4NzdiZGVlODQxZjE3YmZjZmVlY2JjOWI2MmYgbGVnYWN5LXRydW5rCisyNjcxOCAwNjZkODI3NWFkNjQzYWJlYmY4M2JkMWFmODNhY2U4NDRhZDAzMmJmIGxlZ2FjeS10cnVuaworMjY3MTkgZmQ2OWYzZWU3N2VhYzFmNjJhMjY3NDIxMzQ2ZGQ4M2I4MmJiN2Q2MSByZWxlYXNlMjItbWFpbnQKKzI2NzIwIGVjZjA3MGMzNDk5OWU2NTYzN2FjOWFkMzgxZWZjYzgwN2ZmYmYwZWMgcmVsZWFzZTIyLW1haW50CisyNjcyMSA3YmY3Y2YzYTM1YjkwNDRjZGFjMzBkM2UyOGRlMGNmZWNhNWFkYzRkIGxlZ2FjeS10cnVuaworMjY3MjIgYWVlOGYxNmYyNzc0MWQxNjgyMDg1NDEyOGFhY2M5NWM5MDA0MzExMyBsZWdhY3ktdHJ1bmsKKzI2NzIzIDE4ZjhhN2I1NmY4OTAwMjNlYjBlYWUwOTZiYTY1YTk2ZDY4Y2U3MjcgbGVnYWN5LXRydW5rCisyNjcyNCAzNjg0MGE5ODk3MjJkN2U4NDQzZTg2ZTg5YTJkZTFjOGEyZmQ4OWRiIGxlZ2FjeS10cnVuaworMjY3MjUgYmVjMTU3ZGJlZTJlMDhhNmIyNTY2M2RiOTk0NGQ0YzJhMmMyN2NlOCBsZWdhY3ktdHJ1bmsKKzI2NzI2IDNlZmQzNGZlNjY2ODA2NGFhNDNmM2ExMTlkYmU3ZGRmYWYzMThmZmQgbGVnYWN5LXRydW5rCisyNjcyNyAzYjMyM2RmOTQ1YmI2YmYxOWNmYWUzNjViZGQ5ZGY5ZTY0ZDYzNmNlIGxlZ2FjeS10cnVuaworMjY3MjggYjI3ZjM2Y2YzZDNlMDIzZGNlYWE2ZTc3MGFhNzc4OWM4MmQwY2U3ZSBsZWdhY3ktdHJ1bmsKKzI2NzI5IGQzZDg1N2E4ODJmMGY4MzliNzcxYjVjN2NjZGIwY2Y3YWZiYjljNzkgbGVnYWN5LXRydW5rCisyNjczMCA3ZWQ0OWFmMDQ4YmEwOTNlNDczODRlNzQ2NGY3NjRmOGNiYzI5ODBjIGxlZ2FjeS10cnVuaworMjY3MzEgMTA1YmU5MzZiNWMzNmQ2Mzc4ZTcxN2E1MzI4MDZjZGNkODcxZjg5ZSBsZWdhY3ktdHJ1bmsKKzI2NzMyIGFkOTdmY2U5ZGNmZTI1ZWM2OGE2NDYzZjBiMGYxMTQ1MjViMTRmZmUgbGVnYWN5LXRydW5rCisyNjczMyBjNTY4ODhkMTcwOTg0ZTEzMmYzZmVjODhiZGY4MTg0OTJiYTcyMWM0IHJlbGVhc2UyMS1tYWludAorMjY3MzQgNGFmNjY5ZjljNDJlMDgyYjFhZTdlZjU5OWFkMmNkNjU0MzQyYTgyMiBsZWdhY3ktdHJ1bmsKKzI2NzM1IDY3NTFlOGJjZmQyOTNmY2FiMDc2NDBkM2ZlMjQ2OTAwYTUzZDcyYjQgcmVsZWFzZTIyLW1haW50CisyNjczNiAzYjgyNTY3NWQxMTk0NDcyNGFmYWI4N2Q0YmFiMTNiNDJiNjNmODI3IHJlbGVhc2UyMi1tYWludAorMjY3MzcgY2JiZTI4OWU3YzJlOTI4NWYzOGNlNGZhNzBhYzNlYmQ2NzFkYjA4NCBsZWdhY3ktdHJ1bmsKKzI2NzM4IDJmN2Q4NjlkYWQ0ZGY3YmJkZjY3MTE5MWZlNmRlZWFjMDFhZDkwZmUgbGVnYWN5LXRydW5rCisyNjczOSA0ZDZiZWFiNzY2ZTI3NGQ5ZjlmZTMyMTY5ZGJkMmQxMzUzMDA0NDU3IGxlZ2FjeS10cnVuaworMjY3NDAgZTVkZjA4NmVkNDU1MTg1MGVhYjlhOTY5NTI2NjkwNzg0ZjY4ODMyNSBsZWdhY3ktdHJ1bmsKKzI2NzQxIDliZTAxYjdiNmM4MGFiZGM5ZDMxZGMwMDY5NDNlMmU4ZmQzNmY0YjggbGVnYWN5LXRydW5rCisyNjc0MiA4MmE4NTBkYjdlYzU3N2U4MjcwMDgwN2E4NTdmNWNkZTVjOWVkMGFjIGxlZ2FjeS10cnVuaworMjY3NDMgMTMwM2RjMDcyM2ZjYzEyM2M5Y2YwNTg2OTQ2MWZiN2E1NGFlNGU3OCBsZWdhY3ktdHJ1bmsKKzI2NzQ0IGNhOTA3ZjI4ZTJkNTU4MmFjZTE2MmNjNzU4NDI3NWZhZjRlYzU1MTcgbGVnYWN5LXRydW5rCisyNjc0NSAwNzE5YTM3N2E2MTZjMTM5ZmJkMGQ4N2Y0YzMwYzgxYTg1YmYyYjE2IHJlbGVhc2UyMi1tYWludAorMjY3NDYgNDIyNzg0NzA5MzgwYWE0ZWE3ZmI0ZDM2NGI2ZjBiNDVhMWM5ZWUxMyByZWxlYXNlMjEtbWFpbnQKKzI2NzQ3IGY4ZmY5ZmFiOTJjZWU0NTRmYzkzMWJhYTljMTY2NzIxMGVkMGIxZjEgbGVnYWN5LXRydW5rCisyNjc0OCBhOWM5ODE4M2ZmODdmZTY2NThkZDdkOWRjM2QwMzZlOTJjNjE3YjI1IGxlZ2FjeS10cnVuaworMjY3NDkgNmE3YjI2YmRlMGU4YjljODYxZDRkZGNhNDRjYzk2YjU4NDkyMWZiYyByZWxlYXNlMjItbWFpbnQKKzI2NzUwIGM3OGI1MmRhYzk2MzBjMDQzYzZhZWUzM2NlMWJiOGI2YTQ3YTQ2ZDQgbGVnYWN5LXRydW5rCisyNjc1MSA0MGZlMTgzYTg5MjIwMmQ1YzY0NzdkNGVjYzJhOWU4OTYxNmI5NGY2IGxlZ2FjeS10cnVuaworMjY3NTIgZmE3MzIwY2IzN2Q5NWVjNGZmODU5MDA3NTA3OGMwYTBmYzliMmVmYSBsZWdhY3ktdHJ1bmsKKzI2NzUzIDIzMDA3MzQxNDUwNDBiY2E4MWFlYmJkOGNiNmQ4MGU1ZTQ2M2Y2NmMgbGVnYWN5LXRydW5rCisyNjc1NCBkZmQ5OGU5NTIxYjM3ZWY5MDlhMDdlYjMyMWM5NmQ0ZjQ1NDZjYjFhIGxlZ2FjeS10cnVuaworMjY3NTUgNDRmZWNjMzM4ODlkOGMwMGRkMTFkZmY4OGI0YjRmMjljMTAwMDJjMCBsZWdhY3ktdHJ1bmsKKzI2NzU2IGJmZTkxZTFlMzFiMjAwNjI3NjkzYzNmMGQyNTk4ZDQ5MWNhNDgzYjkgbGVnYWN5LXRydW5rCisyNjc1NyAzODg0MWJlYTI0ZmRkZGU5NTNjY2E4NzUwZDczYTlhMzcyYmRjMWYyIGxlZ2FjeS10cnVuaworMjY3NTggMGQ4NzQwMDk0YmVjYTI2ZDcwZWU2NWRlNDIzY2ExM2E3NDcwYTE1ZSBsZWdhY3ktdHJ1bmsKKzI2NzU5IDk1NmQwMzhiMWRkMjZmNTZjMTU3YzY0MDI3M2RmMzA3N2M0MzlhZjYgbGVnYWN5LXRydW5rCisyNjc2MCBhODY4YmFlYmU5NTY0NjU2ZTM1OGJkZmIyNWQ0ZGE3YzY3YjVkZTA3IGxlZ2FjeS10cnVuaworMjY3NjEgOTM1NDJlZmFjMDY2NjliYWFhODRhNzkwNTNiMjhkMzE3ZDQyNDBhMyBsZWdhY3ktdHJ1bmsKKzI2NzYyIDRlNzgxNWM5NWQzZWFhOTRkMzAzMWU0YjU5NmQxZDMzZmExOWQ1NDEgbGVnYWN5LXRydW5rCisyNjc2MyBiOTcyNmJhNzFhYTNmNWU3YjJjNzViNzQyYWRiYmVhZjMwZWZkMDUxIGxlZ2FjeS10cnVuaworMjY3NjQgYzVjMmIyNGRiOGE3MTE5NTA4OTlhZjM0ZDBjNjEyMzFlMjQ1ODJlMSBsZWdhY3ktdHJ1bmsKKzI2NzY1IGIyYWEyNjQ4ZGYyN2IwYWU2ZDY5ZmEwNmFkYjg1ODE3MjI1MGVmZjUgbGVnYWN5LXRydW5rCisyNjc2NiA5NzdlNTM0ZmM2Yzc3NDIyMGNkMjU4YmJlZDZmYTNlMGYzY2JkYzFjIGxlZ2FjeS10cnVuaworMjY3NjcgZTBlZDY4YWRiYTMzMjc1NmY0MjNhMzJlNjJkYjhjMjYxNTBmYzFlMyBsZWdhY3ktdHJ1bmsKKzI2NzY4IGVlMjkyYTUzZTVmY2U4OTRmMDVhNWQwYTY0YmMxOTY3ODgyMTU1MzIgcmVsZWFzZTIyLW1haW50CisyNjc2OSBjNWM0YzExMjEwODc3OTdkZWExMGYzYjQyMTI5OTkxNjdhNzA3ZTU5IGxlZ2FjeS10cnVuaworMjY3NzAgMTBhZTJkNjExYWU5NDE3ZDY4YmEyZTE4MWMwNGU2ZjQ0OGViMjFiNyBsZWdhY3ktdHJ1bmsKKzI2NzcxIDQ3MzM4NWZjYTI5OTI4ODNmYmU5NDY0ODVlMjkzMWIxMzI2MDg2NWUgbGVnYWN5LXRydW5rCisyNjc3MiA5NGJmNmFjZWZmNzg4YmVmYWRmYjU4NDQ5ODkwMTYwZTgyYmYwYTgyIGxlZ2FjeS10cnVuaworMjY3NzMgMjMzOWRkZTZiYWJlY2Y4ZjEyOTJlNDg0ZTdkZjMwMjE1ZTdjMGVlZSBsZWdhY3ktdHJ1bmsKKzI2Nzc0IDYwZDg2YjJlYWIwZmFmYTIyODkyZTQwODQzYzVhZTBkOGQ3MzQ0YzYgbGVnYWN5LXRydW5rCisyNjc3NSBlNWVmMTY2ZmMyMmY2MjNlOGM2MGZmYzE2ZWU4MTU4YzI0MzYzMmI4IGxlZ2FjeS10cnVuaworMjY3NzYgMjExYjE2YWMwNjZhNzA0ODM0NzIxMTI4NzRiNzhjOTdjNmVhNTdjOSBsZWdhY3ktdHJ1bmsKKzI2Nzc3IDU4Y2FjNzA2MDJhYTY5OTM1OTA5NDY5YjdkNmI3Zjk0Zjc4NGExOWEgcmVsZWFzZTIyLW1haW50CisyNjc3OCAzOWU1YzBkNmMxODIyYTgwZTdiZjljODhiNmVlYWRlZTAxZTdiYzYzIHJlbGVhc2UyMS1tYWludAorMjY3NzkgODFkMDY3MjA1Yjg2ZjJiN2QwNTFlZWViMzAxNWE5ZWY1ZmE3ZThmYSBsZWdhY3ktdHJ1bmsKKzI2NzgwIDRmNjdlNTY2ODZlNThkOWFlZGNlNjk4YzA4ODE5NWFhMTcxN2ZjNjcgbGVnYWN5LXRydW5rCisyNjc4MSA5MGVmYTFjYWIzYmMyYzc1NjFkOGQ4NzFiOWM3NGI2NGRmYmY5MjUyIGxlZ2FjeS10cnVuaworMjY3ODIgNjQyYTQ1M2U3YTJlOTIzZTA1OTAwZTYyNTkyMWU4N2MyMGY4NzQ2NyBsZWdhY3ktdHJ1bmsKKzI2NzgzIGYzOGJkYjJmY2FlMDJkMDU1N2M3ZTJmMDFjZWI4OTkyYTQ0NDE3NzYgcmVsZWFzZTIyLW1haW50CisyNjc4NCBjMzc1YzViMjY2MzEyZTEzMDM1OTg0NDIyNTk5NzhkYzE0YmU2MTk2IGxlZ2FjeS10cnVuaworMjY3ODUgNjM4OTBiYzI5YTdjYmY0Zjg5NjZiMjA4MDE2MjliYWE3Zjg3YWUyYSBsZWdhY3ktdHJ1bmsKKzI2Nzg2IDYyNDAzYjkzZjQ3MGIyMmUwOTgyOGEyODlmN2YxY2VkMDRkNmMxZmUgbGVnYWN5LXRydW5rCisyNjc4NyAxMTU3MjgxZjAwYTAyYjEzNzdmOGY3ZDFlYjE4MWQ1YWRhMmJjYzk0IGxlZ2FjeS10cnVuaworMjY3ODggYTRkNjc1YjhiNTNjMDI0MDc5M2JlOTI1MjQ1OGIxMDMwYWNlOWU0MSBsZWdhY3ktdHJ1bmsKKzI2Nzg5IDhlYmE0YzkyZGYyYjRlNGU1NjE3ZTVkZjQ5MjlkNjVhZWJlNjczYjIgbGVnYWN5LXRydW5rCisyNjc5MCBlMTFlOTUwYWNjMjM1MTYxMDUxZmJmYjg3MTkwN2RhNTI1Y2NkMzIwIHJlbGVhc2UyMi1tYWludAorMjY3OTEgMWJlNmU3OWIxZDQ2MDUwODM5NmE1M2IzMTcxNDcyMWZmNGQwMjJmYiBsZWdhY3ktdHJ1bmsKKzI2NzkyIGFiNTIzMTJmODJjNzkxODg2NDBiYzFhOTE4NTIzNTU1YzZmMzJmMDkgcmVsZWFzZTIyLW1haW50CisyNjc5MyA1NjI0MGJjZGE4OGM5MWYwYjEzMWM5ZmM2MzZkNWM4MGI1Y2MzZGY5IGxlZ2FjeS10cnVuaworMjY3OTQgZmI2NGYyMTE3NmFmYWVhZGUzNTQ5OWQ4ZjQwYWUyNmJmMDRmZDk0MSBsZWdhY3ktdHJ1bmsKKzI2Nzk1IDk5M2M3NzU4N2RjYTIzOTIzMmNkN2IxZmZmNjc1NTg0Y2M1ZjQxNDYgbGVnYWN5LXRydW5rCisyNjc5NiAyNWZkNGE4ZjllMDkyMjc0Y2QzZTMyM2U5YjEyYWFlMTczYWY4YzI5IGxlZ2FjeS10cnVuaworMjY3OTcgZjlkNWUxZmIyYWE2OTczY2FhNDJmN2VlZGJiNDlmY2U0NGEwMGJlZCBsZWdhY3ktdHJ1bmsKKzI2Nzk4IDgyNDYwZmRhNGY3NjcxMGI2M2EyMTJjYWVhNTA4ZGQ2ZTRiZjI0MTkgcmVsZWFzZTIyLW1haW50CisyNjc5OSAwOGQ2YzhiNzgwZDk2OTlkMjk4ZDY5ZThjZGI0Y2I1YjZlYzMwZGY0IGxlZ2FjeS10cnVuaworMjY4MDAgZGUwYWMwM2U1ZTcyZDhjODU2ZmZmOGFjZmMyZTBmZWQ0YzdlOGIzMyBsZWdhY3ktdHJ1bmsKKzI2ODAxIDI4ZjcxYzRiZDE2YmI1OTNhZDUwNDE0MTUxNjFiZjhiODU5YWMyNGMgcmVsZWFzZTIyLW1haW50CisyNjgwMiA2YjJiYTNiN2VkMzI2YmU0YWE0ODc5MzBkODJlYWY0YjM0ZmE4YjQ5IGxlZ2FjeS10cnVuaworMjY4MDMgYjE1ODk2MDUzOTMzMzRhMzA0MDcwYTlmMTY0MjcxYTZkODlkMjMwZSBsZWdhY3ktdHJ1bmsKKzI2ODA0IDAzZGZlN2QzNDNkYmFjM2Y4MGI1OGE5NDE2ZGMyOWNiZjg1ZWYxYjcgcmVsZWFzZTIyLW1haW50CisyNjgwNSBmMTIxOTMwNTkyMzlkYjJhNDk0MTg4MjVkYTZiZDZmYzFkYzI0MDNmIHJlbGVhc2UyMi1tYWludAorMjY4MDYgZDNmMjc1YmQyYzYwYTFkMGY4NjEwZGEzYmQxMDA1OGIzNTY1Y2Q5YiBsZWdhY3ktdHJ1bmsKKzI2ODA3IDE5YTk0OTI1Mzc4MTJmYTIxMTgyMGM1Njg3MWRiNTQ4ZjA5OGViYmUgbGVnYWN5LXRydW5rCisyNjgwOCAwOGNjYjBmM2UyZDQ5NmM3YmU3NmFiM2IzZDMxNjI2ZWVhZjRkZGIyIGxlZ2FjeS10cnVuaworMjY4MDkgNDUzZTU5YTQ3MmIyMWEyOGY5YjE0NzBiYzMyMDNlZTM0NDM1YTQ3ZiByZWxlYXNlMjItbWFpbnQKKzI2ODEwIDcyZjBjMWEyNDVmOGRmOTRmMGYxNjdhMmYzOWQwYjIyM2EyZGY2NjggbGVnYWN5LXRydW5rCisyNjgxMSAxY2M5M2Q1MDFiNDVmMDZiODRiYmVjN2NmYjQ3MGVhYmRkYWI1MWFlIHJlbGVhc2UyMi1tYWludAorMjY4MTIgMjczZGQyNTA4YzU3ZTFiNjU3ZDY2YjhmMmM0NzgxNjVmOTUzNzk3NCBsZWdhY3ktdHJ1bmsKKzI2ODEzIDZiYWUwYzMxYmJmYjI2MTA0ZmEwZmY4ODRjYWJhZDc1N2Y4YTI0ZDcgbGVnYWN5LXRydW5rCisyNjgxNCAyNGUyMzM0ZTdiYjJmOGFmYjZmMTg1YmY3ZjMxZjg2OWE4MThmZWU4IGxlZ2FjeS10cnVuaworMjY4MTUgMjZiOTI0YWQyNjZjZmI1NmFmN2FhNzdmYjQxMjE2YzlmMzUwYjIyYSBsZWdhY3ktdHJ1bmsKKzI2ODE2IGY5OGEyN2NiOTI4MjM5NDJlNTJjNjU0OWFkNTEyMDE5NjY0YjgwMGIgRFNfUlBDX0JSQU5DSAorMjY4MTggNjhjNzc2YmE1ZWE1YWQxYzVkZmJlZDVjNDliMTgxOGFjNTIwN2NkMiBsZWdhY3ktdHJ1bmsKKzI2ODE5IDY0ZWIxMTliODE2ZDVhZDVmNTE4MmJlOTZiOTAwN2RmMDg5MmQwN2YgcmVsZWFzZTIyLW1haW50CisyNjgyMCBkZGI0MWU4N2Q2NTE0Zjc2MGUyNzg2ZTNkOWQ2NmE4ZWMyNTVkY2FkIGxlZ2FjeS10cnVuaworMjY4MjEgOGE0NWJmZDZiNDcxN2MxYjQyNWE1YzhhNDU4MzgzNTdlMjMzOWU5ZCBsZWdhY3ktdHJ1bmsKKzI2ODIyIDdlNTE0MWI2OGM1ZjFkMDRkYzBiNzc0MTA3ZGY3ZTk5ZmFkYWMyZWUgbGVnYWN5LXRydW5rCisyNjgyMyBkOWJiNGVjM2U3NWIzMjc4ODJiMDAyMDM5N2MyYmUzZmY2ZTVmMTcwIGxlZ2FjeS10cnVuaworMjY4MjQgZTQzYWFmZmZiMDNjNjc2ZjFhNjFhOWVhNDhkZWZiNzU5NmVlZjliYSByZWxlYXNlMjItbWFpbnQKKzI2ODI1IDYxMzQ4YWEyZmY5ODZkNWJmZDZjZjdkOTk4NzdjOWViOWJjMzZmZGYgbGVnYWN5LXRydW5rCisyNjgyNiA4MTgzODU5ZGNmY2QyMTUxNTVjZmU4MTJkMTBjZDk1MmRkM2YzMWExIHJlbGVhc2UyMi1tYWludAorMjY4MjcgYmU1NGJhNGIyYzQ0MGU4ZWM5NzIzMTM2YmJkY2M5N2E4YTUwM2I1ZCBsZWdhY3ktdHJ1bmsKKzI2ODI4IGMyNTU2ZTMwZmNiNDgyYWRkMGVhMjAxZGM0YjA3Y2M5MTk1MDUxMTAgcmVsZWFzZTIyLW1haW50CisyNjgyOSBhYjIzNDEwN2UyNjczMjdjNTMxNjliZGZlNjkyYWM3M2U5MmI2NjNjIGxlZ2FjeS10cnVuaworMjY4MzAgM2FiZmYxMWY4MmIzNTM3NTY5YjgwZDJjYTE3NTdmZGZhNzFhODAyOSByZWxlYXNlMjItbWFpbnQKKzI2ODMxIDEwYzgyMDA4M2MyZGMxNjQ0YzgyZDBjODgxNDMxMTVkMDI2MmQ4ZGYgcmVsZWFzZTIyLW1haW50CisyNjgzMiAxMmI0NjU3NTg3MjlkYTI5MDA0NGM3ZDk0ZGFlMmQ2ODE2ZGRlMDU5IGxlZ2FjeS10cnVuaworMjY4MzMgYmQxYzRiNjVkYjc5MTA0ZDQ1ZWZjN2ZiMWZiZjgyNDc5MjE2YmM2ZCBsZWdhY3ktdHJ1bmsKKzI2ODM0IGEyMTk4ZjcyZDVlYmVhMDA3ZjNkZjVmMWVmNWE3ZDNlMjQ4YzVmMzIgbGVnYWN5LXRydW5rCisyNjgzNSBiZTBiYzU1ZWNmNGEwZjYxOGZiMDg1YjgzZjQ3MTQ0NzQ1YzZmZmZmIGxlZ2FjeS10cnVuaworMjY4MzYgMDc3ZDQ0YjA0MDViZTZiMjBjYzg1MzNlZmNjNjVjMTIxNmM2NzAxYyBsZWdhY3ktdHJ1bmsKKzI2ODM3IDM0NGFlNTMxZTZhNzNlMjI3MTE3MTc5YmVhMDRhZTMzZDVhMmM5YjQgbGVnYWN5LXRydW5rCisyNjgzOCA3Y2UwMTg4Mzc4ZWYzYThkODY3NjFhOGJmMTY1MTUwZDc5ODhlNjkwIGxlZ2FjeS10cnVuaworMjY4MzkgNTBhOTdhOTYyOTk4N2EwMmNiNzEzNjk5OWYzMjAxYzY1M2ViYWYxMiBsZWdhY3ktdHJ1bmsKKzI2ODQwIGQzZTAyNWVmMWZiMmRmOThjMDg2MWExOTc5ZGQ0MDA0NmMyMGQ3ZGIgbGVnYWN5LXRydW5rCisyNjg0MSBkMzViOWZmZjgxZTA5YjI1ZmUzN2I1ZDU5ZTkzZTljY2Q4M2UzNjI1IGxlZ2FjeS10cnVuaworMjY4NDIgNzMyNDlhYmVkNjgzNzYwZGIyMThiNmQ2MmRmMjZmYThhNTgwOWMwNSBsZWdhY3ktdHJ1bmsKKzI2ODQzIDVkNzNhMmM3ZmFlNjNmZTYxMzI2NjZiYWNjNmM5YjViZTMzZDkxZTcgbGVnYWN5LXRydW5rCisyNjg0NCBkOTE3ODU3ZmQzMzRlYTllOGQ1Mzk5MDU0YTVhNDFiY2I3MDEyYWZjIGxlZ2FjeS10cnVuaworMjY4NDUgNWJkMzBhMzY4OTdiMWU0NzYwZGM0NzlkMGYxMTFiMTkzODg1ZTJiMiBsZWdhY3ktdHJ1bmsKKzI2ODQ2IDE3NTYyMTA2YzJhMDQ2NjgyZDcyNjg3YmFmMzIwNTIzYjMwY2RkN2EgbGVnYWN5LXRydW5rCisyNjg0NyBjZGQ1Yzc1MTgyM2NkOTI4ODVlNWExNzZmYTExNWVmOTE0MjZmZGE5IGxlZ2FjeS10cnVuaworMjY4NDggYzc2ZTVjMWM2ZTQ1NDViNTc0MGI0NDNiNmM5MWFmZjg1NzJkYmI5OCBsZWdhY3ktdHJ1bmsKKzI2ODQ5IGJiNTc5MGM2Y2RhYTE0NzM3NDVlYmFlMjY1MWFiOWMwYzAwOTkwMjcgbGVnYWN5LXRydW5rCisyNjg1MCA5YjFlM2I3YmQ3ZjEyNDI2OWJjMzY4YjkzYzI5NjQzNzcxZWFhODdkIGxlZ2FjeS10cnVuaworMjY4NTEgYmU2NTM2ZjJlYmVmYjE2MzMyMjViYmE2NmIzNjMwMTM3ZmExODYzMyByZWxlYXNlMjItbWFpbnQKKzI2ODUyIDI2N2FlNTllZGRiNGM0YjVlNTZiMTU2OGU4YzVkOGE0ZWRmMGRlYzggbGVnYWN5LXRydW5rCisyNjg1MyA2ODRlZGQxNmJiZDgxZmM0ODdiMmNmMzgwNmI0MGUyZjVhOTE2MWM2IGxlZ2FjeS10cnVuaworMjY4NTQgODY3M2MyZWRmMjFjYmU0MDRhNTcxY2RiNDMyZTAyYWYzMGEwZmNiNCBsZWdhY3ktdHJ1bmsKKzI2ODU1IGJkYTk4YmFjNjk1NjAxYzJiYmRjNDdlMjZlMzViMzk0M2E2NGI5YTUgcmVsZWFzZTIyLW1haW50CisyNjg1NiAwYzQyY2VlNDc1ZGZmMzVkNjJiMTEzYzRmNDViZmNjYWU0YWZiNGM2IHJlbGVhc2UyMS1tYWludAorMjY4NTcgNzZmMzc2YmVhNWU1YTlhOTE4ODUzNmQxMWQ1Yzc1MTZjOGMwOWVlOSBsZWdhY3ktdHJ1bmsKKzI2ODU4IDY4ZTNmM2RkNGQ0ODg0OTE5ZDk1ZGMwOGQ0MjkyYmYxM2I1OTliZjAgbGVnYWN5LXRydW5rCisyNjg1OSBmNDMxODg4NWNlOWE2MzI4OGIxMDA5ZWEwOTdjOWMxZjBjZDY5MjhjIGxlZ2FjeS10cnVuaworMjY4NjAgOTg5YTdhZGY4NGVmYjM1N2M1MTc1ZGNjYzE4NDRkZmY0Y2RiMTZiNSBsZWdhY3ktdHJ1bmsKKzI2ODYxIDg1NjE1ZWE2NWIxYmY4MGFmOTY1YzY3ODY4NzQwNjRkNmU1Yjg3ZjMgbGVnYWN5LXRydW5rCisyNjg2MiBkYmE0ZjUxNzY0OTJmNDU0MWU1NmI0Y2QzMGEzMTI1ZWM0YjcyOGRkIGxlZ2FjeS10cnVuaworMjY4NjMgYWQ5MDRkYjczNDRhOWY5NDFlYTBmZmEyYTM4NTFjZjlkNjhiYzhmNyBsZWdhY3ktdHJ1bmsKKzI2ODY0IDYyNjg4ZDZhYzM4NzljMGNkN2U1ZTRjMzNiMDRlYTM2MmQ0ZTY3MWIgbGVnYWN5LXRydW5rCisyNjg2NSBkYzNhN2Y5OGQ0ZWQxMmYzZTg2MmJiNTIyYmFhMDI0YWMxMWU3YzI5IGxlZ2FjeS10cnVuaworMjY4NjYgNjMxZjkyODY2NzMyOWJiNmM2ZDI4YWRkMWFmZjliMzA4NjE0YzNjNSBsZWdhY3ktdHJ1bmsKKzI2ODY3IDE3MmI2MjUwZDUyNjAzYmY3NzU4ZTMzNGMyN2RmYjJlNjc2ODVkNDYgbGVnYWN5LXRydW5rCisyNjg2OCA3NmVmNGI5NDJiMTMxYmQ4ODNjZTFiNTdjNmY2YjMwM2I3ODNkZmQ5IGxlZ2FjeS10cnVuaworMjY4NzAgN2FiOGMzODExNzIzOTcxNGVlNjVkOTcyOTgyYmNiZDUyNzAzZDk5NiByZWxlYXNlMjItbWFpbnQKKzI2ODcxIGM0NGIyMWZjZDM4YWQzMmU2Nzg1MzRiOWJhZjRmNWU3MjUxZDYzMzEgbGVnYWN5LXRydW5rCisyNjg3MiBiMWQ4NjgzNTIxZWM0ZjM3NGZhOTJhNzc0YWMyOWVhZTg0YzViZWUwIGxlZ2FjeS10cnVuaworMjY4NzMgZmJhMDUzNDdiYjMwYWQ3YWEyNmNhNmJlYWFiNWJiMGM5YmI4ZjUwYSBsZWdhY3ktdHJ1bmsKKzI2ODc0IDgyMzA5YzczMjVlZmUzNjg2YzgxYTA4OTY2ZmJkOGJhMTcxODQ1OTEgbGVnYWN5LXRydW5rCisyNjg3NSA3YmMzMWFkOTQ3N2NmNWY2NWUwMjY2NzQ0NmE4ZjhlNjNlMzcwZjdkIGxlZ2FjeS10cnVuaworMjY4NzYgMjY3NWIxNThiZjY3N2RmZDkzMDllOWZiNDI2YzQyZWQ1YjNlOTIyNyBsZWdhY3ktdHJ1bmsKKzI2ODc3IDM1ZjAxYmYzNGQ2MDQzNzZlOTM0MjRlZGU3ZTg2YjU1ZTc4YWY4OTkgbGVnYWN5LXRydW5rCisyNjg3OCA5ZWVhNWVkZDg1N2Y2YWU0ZTNjMTM5YjAzYzdkNTY1ZTY3YjEwMTc4IGxlZ2FjeS10cnVuaworMjY4NzkgYjM4OThkMzI2NTE5ZWUyMzkwNjQ2Yjg1Njg0ZTdmYTY3M2IzZjY4OSBsZWdhY3ktdHJ1bmsKKzI2ODgwIGJmZWExNGY4ZmYzNTNjNWZmMjgwMTVjYjAxYmJjNGU0NWFjMzZiNjcgbGVnYWN5LXRydW5rCisyNjg4MSA3M2MwMWIxY2JkYjJjMDE2MWUzMWQzZDI0YzVjMDY5MWI0ZThjMTE1IGxlZ2FjeS10cnVuaworMjY4ODIgYzAzZTg4OTlkNGIxOTA0NDJmZDc3MTc2YWY2OThjOWYxNjVhYmYxYSBsZWdhY3ktdHJ1bmsKKzI2ODgzIDAwMTQzODdmZDYwNDRkMTEyNTQwM2JmZTI1N2QwNDJkOWNhYzBjNDggbGVnYWN5LXRydW5rCisyNjg4NCBiODcyOGQ1OGU5YzMzM2ViMGU4NTY4NjIwYmRlYjQzMDMyYmRmZGM1IHJlbGVhc2UyMi1tYWludAorMjY4ODUgYTkwZmFhNWY5NDE3MWM3MDcxMTUzYTcxMzlmYzAzYTY2OWM0YWFiNSBsZWdhY3ktdHJ1bmsKKzI2ODg2IDJhZmYxMmUyYTk0ZjVjOWRlMzU2OTcxMTdhZmMxMmYxMTc4NDBkMGYgbGVnYWN5LXRydW5rCisyNjg4NyBiNjAyZjIyOTFiNWZkM2ZlNDg3ZTg1YjcwMGFhMGJhNWIwMmU0ZmJlIGxlZ2FjeS10cnVuaworMjY4ODggMGUxNzcxZmMwMTJmMjZkZDczYzQ4YTRmNWY3ODNmMWVkMmEyMmI2NyBsZWdhY3ktdHJ1bmsKKzI2ODg5IGM3OWIxZTU1NTJlODQ5NTlhZjI0ZWFjODkxMDUxY2I3OGE0ZTg2NTUgbGVnYWN5LXRydW5rCisyNjg5MCA5ODgyN2E5ZDYyYzMyZWFjNmI5NjE4ZWI4MzQ4ZmYzNTRmODczZTdmIGxlZ2FjeS10cnVuaworMjY4OTEgYjIxYjY5NjU4NjYyODliMGQzMzkxMGZjMTY0ODUyZjdhNGJhNzkwMyBsZWdhY3ktdHJ1bmsKKzI2ODkyIDhhNDlhMTNmYjI4ZGY3MGUzMzQ3YjczYjc3ZWUwYzhmNTRjOWFjNWEgbGVnYWN5LXRydW5rCisyNjg5MyBjZWNhMjgxNjc4MDA4YTNkMTM0ZGQxMzVlZmI2MDVmYzJiYmQyYjg3IHJlbGVhc2UyMi1tYWludAorMjY4OTQgZWNlZjY1ZTU3Y2M2YmQ5OWI0ZmNlMDJmOTFkYThmMGI4Mjc3MTAxYSBsZWdhY3ktdHJ1bmsKKzI2ODk1IGE5OGU5M2VhZmVmN2UwM2VlMGMzM2EzZjBmMzU2Yjk0ZTJjMjliYzMgbGVnYWN5LXRydW5rCisyNjg5NiAyNjAwY2Y3ZDMzYWY4MjNjYjZiOTQzYzJmNTZjZGQ1Y2NjYjM5ZTVlIGxlZ2FjeS10cnVuaworMjY4OTcgYTRlZmI1OWY4NzY3MTgzMjU0MGQzNjNkM2RjZDYxZjhiYjdhNTgwZSBsZWdhY3ktdHJ1bmsKKzI2ODk4IDcwYjVlMTExY2NiMDkwMmY3MjBiNjE5ZTBjMTc0ZTcyZDI5YWNlMzcgbGVnYWN5LXRydW5rCisyNjg5OSA4ZDk0NmM5MzM5ZTgyMTAxZWJhYjdlYTcxODM5MmVhMWEzZDE2YzhhIGxlZ2FjeS10cnVuaworMjY5MDAgMGE0YzkyNTU5YTBiNDE2NjRmMjFhYzA0ZTcyYzUxMWRkMzQ0MjU3YyBsZWdhY3ktdHJ1bmsKKzI2OTAxIGZhOGZlMmU5ODA2MjVhZTY4YmI1ZDNmNDNjNDdlOWNmMDVhMjY2OGYgbGVnYWN5LXRydW5rCisyNjkwMiA5ZTY3YTBkNTcwNWZiYWI5ZmI2YWFmM2FjMjY5NmJjZjg3MTcyNDAzIGxlZ2FjeS10cnVuaworMjY5MDMgYjQ5MGZmMTcwNmQ5NjQ2MmYzMjlkOTE0ZjExNzNhMjU5MWE0ZmRhZSBsZWdhY3ktdHJ1bmsKKzI2OTA0IGJkNTg5NDZhYTUyMWIyZWNmN2VlNGY1NWQzOTgxMjJmNzFhM2U0NjYgbGVnYWN5LXRydW5rCisyNjkwNSBmNmRlZDZlZmFiY2YzMDkwMjYwYjNlZDkyMTcwZTcyYzIzOTBjZDU0IGxlZ2FjeS10cnVuaworMjY5MDYgMjIwYjk4ZjA2NDE1NjRhMDU5N2I0Njg0YzNiN2IyZDExMjUwNWI4OSBsZWdhY3ktdHJ1bmsKKzI2OTA3IDQwYTAzMTE1NTg5N2Y5YmViNzJmZjdkMGE4ZjNlMjY5MWNmYmMxZTUgbGVnYWN5LXRydW5rCisyNjkwOCAxYmYzNGY0Mzk0YzUxN2U0MzQ0NjAxMzI1ODczNGEwYmY2NDk5MDAzIGxlZ2FjeS10cnVuaworMjY5MDkgY2UxZGEyZjk3ODA3NmU0YzY5YjI5YzQxODcxYThkZmExMTViM2ZlYyByZWxlYXNlMjItbWFpbnQKKzI2OTEwIDg4OTAzODUzZjE4MGVlNmJiMmUwYzFlODA4N2NiZDI4OGIwMjQyNGYgbGVnYWN5LXRydW5rCisyNjkxMSBiNzRhZmRkMDcyZWIwYTE4OTlmY2Q0ZjE2NjVmOGE4MjBmYThiOWExIGxlZ2FjeS10cnVuaworMjY5MTIgMzAzZDgxZTE1ZTcwYzNhMjQyN2E3MmFlNjgyZWYwNzY5NWJjMjhmNyBsZWdhY3ktdHJ1bmsKKzI2OTEzIDQ0NmIyZjJjMDFkOGFhY2EzMjU3YWIzYzFjMmMxMzg1M2Y0OGFmNGMgbGVnYWN5LXRydW5rCisyNjkxNCBiM2M1MGY2OWYzOGJmMjM4YmRkNTYwZjdkMWFlNTg4ZTU4YTNkMjUwIGxlZ2FjeS10cnVuaworMjY5MTUgYTY3MjQ4ZmQyMzcwMTBmODJhNTczNGY5ZTdmMTg5MTEyNWI5ZGZkMCBsZWdhY3ktdHJ1bmsKKzI2OTE2IDNiMmE3ZWUwODY2NzYxZGQ4NDAzZGU4N2U4ZDU1NDZiODIwNTc0OGMgbGVnYWN5LXRydW5rCisyNjkxNyAzYWVjZGJhNDU1Mjg1YTBlNmRiNDc0NGZjNGI0N2FhM2I4N2RiYjc3IGxlZ2FjeS10cnVuaworMjY5MTggZTUyNDJmNThhNWI2ZjkwZDg2ZGNkYTczMDI0MTAxNGQ0M2M5YmMxMSBsZWdhY3ktdHJ1bmsKKzI2OTE5IGM0ZmEzN2Y4OTc4Mzk5MzIxZTQ4NjYyYTk5NDYwZTNiNzdhNzQzNWYgbGVnYWN5LXRydW5rCisyNjkyMCBmZWNjZTAxNzMyNTRmN2VhMmRjZWEyYWE4Mzc1MDIwZjkxZjczZGM3IGxlZ2FjeS10cnVuaworMjY5MjEgYTM5OWQ4YjEzYzJmNDU4YjQ5NTEwYWQ4MDU0NmY3ZTJmYTU1YjcwYSBsZWdhY3ktdHJ1bmsKKzI2OTIyIDVkMDk1ODk4ZGFlNjU5YmZkMWFmYzdkZmFiZDU0MjhkNDI5NTk5YjUgcmVsZWFzZTIyLW1haW50CisyNjkyMyA1M2M2MTQyODhlYWI5NGY2YjBlZGY4YTQ1NzA4NGM0YWZhNTQxNzBhIHJlbGVhc2UyMS1tYWludAorMjY5MjQgM2E0NzkzNTc1ZWNkN2VmNjhjZWRhZWUyNTdlMDllYjk2Njk5OTYwYyBsZWdhY3ktdHJ1bmsKKzI2OTI1IGM1ZThmODlmZDM1ODY4ZDUxZmMyNjVjNDlhNTQwMWUwNDFhNjZmNjAgbGVnYWN5LXRydW5rCisyNjkyNiBlYWNhNjI3ZjJhNTQ2Y2U4ZThmYzU0MmU2ZjliNzIyZWRhY2RmMzQ4IGxlZ2FjeS10cnVuaworMjY5MjcgNTA4OTY1Y2U1ZTQ3MmY5NmQ5MjZhYzcxMmUwYjI3YWJhNDU4Y2YxYSBsZWdhY3ktdHJ1bmsKKzI2OTI4IDNmMjQyY2RkMDkwNGVlMTE1YzVmNDY1ZTUwYmNmY2ZhMTAxYThjMWIgbGVnYWN5LXRydW5rCisyNjkyOSAxYTY3ZmJjN2EwNjY4MjMxYjk4ZTQ5Mjk5ZDQ0ZGFiMWE4ZDc3ZDNkIGxlZ2FjeS10cnVuaworMjY5MzAgY2FmNjJlZWY3NzIzZTRjODc4NDRmZDdhNjBhNWQzZDQzYjdhMzhkYyBsZWdhY3ktdHJ1bmsKKzI2OTMxIDNkODNmYWJlZjBhNDBlZTVkMWYwZGNjNDliNzZhMzNlYzEyZWRlZmEgbGVnYWN5LXRydW5rCisyNjkzMiBhZTBhM2IxNGQyZThiZTc4MDE0ZmVkNTNjOGRlMmRkYmJjMGY0ZTMyIGxlZ2FjeS10cnVuaworMjY5MzMgZGMyNjIzZTAyNDNlMjhiZjc3ZmFlOWNlZjUwODI1YjJlMTYxNmMwZiByZWxlYXNlMjItbWFpbnQKKzI2OTM0IGI2YzMyYmViNGRiY2M5YzgwMjkwOWYzN2NiMjVmYTg0OGEwZjI5MDkgbGVnYWN5LXRydW5rCisyNjkzNSBkNWFlNmY3MTRjZDUxY2M3ZDJhZjk3MjQ2MGZjYmYwMGIxZWMwYTQwIGxlZ2FjeS10cnVuaworMjY5MzYgNGQ4ODRhZDgwZGRhNTU0ZTk5ZTg3ODg1MTAyYzM0NGUxMmNkYzVlYiBsZWdhY3ktdHJ1bmsKKzI2OTM3IDBhYzY1M2Y0NjlmMDcwZDQ0YmE1YWJiOWJiNjU2NjU0MGZhNzAyYTUgcmVsZWFzZTIyLW1haW50CisyNjkzOCA2NjhjNWNhNGUwZDQ4YzYxNzJhNWNhYzEyYTY5MjFkMTZhMTQxMzVkIHJlbGVhc2UyMi1tYWludAorMjY5MzkgOTlkZjI1NzE0MmY2NDM4ZGE3ZTFjNTEyNGExZTIzNWU5YjI5Y2Q3MCByZWxlYXNlMjItbWFpbnQKKzI2OTQwIDdkNGM1ZTRhMGNjYzI2Zjk5ODUwYWU2M2NjMjQ3N2Y3YTgyYTQzMWMgcmVsZWFzZTIyLW1haW50CisyNjk0MSA4ZjdiNzljZGEwZDMyMWQ3ZTgzZWFkNjM1MTYwY2Y3ZmIwYzM2NmIwIHJlbGVhc2UyMi1tYWludAorMjY5NDIgYzM2NzYwN2JiNWY3ZDIwNDg5ODY1YjBhNDgwZTFkNmUxMmU0OWI3YiBsZWdhY3ktdHJ1bmsKKzI2OTQzIDRlM2VhNTVmN2UxMThjYTZlMjdiOGU4NWE3ZGUyMjM3ODA4YTRiMjcgbGVnYWN5LXRydW5rCisyNjk0NCA3ZGJhODBkNThmZmQ2NjQ0MzY4OTA5YzZmMzg2NmM4YzAzOGRiNWJmIGxlZ2FjeS10cnVuaworMjY5NDUgYmViNTI3MTU4Y2JjZGU3MmMxOTg1N2Y0MzgwNzJkMzM1MTczMjA2OCBsZWdhY3ktdHJ1bmsKKzI2OTQ2IDE5MGI2YmMxOTEyYTVkNWQ2MmQ3OWJjOThlNWE2MmYxNzY2MDBhOGQgbGVnYWN5LXRydW5rCisyNjk0NyAwNjAyYzdlNmI5NGQ3MjEzYTRlZDI3NzZhZTBjYzkwNjJjMWEyYTE2IGxlZ2FjeS10cnVuaworMjY5NDggYzZhZjU3NGJkYTI5MjhmMWNkZDE4ZjM2M2Q5M2M5ODdkZjUzMDBiNCBsZWdhY3ktdHJ1bmsKKzI2OTQ5IDBlODM3MGU3MDg4ODYzY2QzZDE1NWEwMjc2N2E2ZThkZDM2NTEyYTUgbGVnYWN5LXRydW5rCisyNjk1MCBmYmE1N2U0MGY1NDdkMGJkNjM5ODFkZWFmNTE5MDQ5MmFkOTRhZjNmIGxlZ2FjeS10cnVuaworMjY5NTEgZjEyNDkxMTcxNjM4NjAzODIxYjhiODI2YmM1M2MwMWYzMzhlYmFjNSBsZWdhY3ktdHJ1bmsKKzI2OTUyIGFiOTRlYzRhZjk4YTkzNGY2ZDljN2ZlNjRiMDE4ZTMwODM1MDEzN2QgbGVnYWN5LXRydW5rCisyNjk1MyBiMDY1OGZlZWY5MzllMTZjMjRhMTY1YjIyNjYwMzZlZTYxYWRmOGY4IGxlZ2FjeS10cnVuaworMjY5NTQgYTRiYjE4MjEyYjQ4MGViOTNkMWJiNzU4YTgzZDUyZGI1MjkwMzg0MiBsZWdhY3ktdHJ1bmsKKzI2OTU1IGFjYmU4ZTdmOTlkOTNiN2ZmMzRkYzJkZmJlODIwNjY1NGZlMWFhYWUgbGVnYWN5LXRydW5rCisyNjk1NiBkNjdmMWUzYTlmMWFiZjU4ZjJiM2FlMmRkMzNiM2JhMmU4ZWMxYzM0IGxlZ2FjeS10cnVuaworMjY5NTcgYzg0NGZjYzNjOTUyM2ZmYTdjN2IzNjgzMTZkMGExYmI4M2JmZDBmYiBsZWdhY3ktdHJ1bmsKKzI2OTU4IGMzYTY3Y2U1ODI0NWY0MjU0YTA5NGM4N2Y1Zjc0NThmMjQ3M2ZjMjQgbGVnYWN5LXRydW5rCisyNjk1OSA0MzgwYTdhYTE4ZGM2Y2RlYzhkODg5NDU4YzVmM2ViOTk3ZDFhY2JkIGxlZ2FjeS10cnVuaworMjY5NjAgYzJiYzJlZDE0NWY3MjdjNWMxYjQzNmIwOTQ0MWNmM2Q3ZmQ4NTIwYyByZWxlYXNlMjItbWFpbnQKKzI2OTYxIGVkMDA3ZTQ3YjNhMTM5OTg5MGIyMmFiMWFmMGU3NGYyOTczMmFjNTMgbGVnYWN5LXRydW5rCisyNjk2MiAyYjFkNjE3ODFkNjM3NDg5NzEzMjdiNmRlMDkxZDllZTJhNjhkOWYwIGxlZ2FjeS10cnVuaworMjY5NjMgMTk3ZmIzMDVmYzVjY2NmYzgyMzQyY2Q0NzIxMDMwM2IyOWJjMGM3MCBsZWdhY3ktdHJ1bmsKKzI2OTY0IDkwZWU1NWI5ZDcyYWQxYzM3Yzc5MGMyOWIwMTVmMmE1MGE2YzgzNTcgbGVnYWN5LXRydW5rCisyNjk2NSA3ZTQwMDU4Mzc1NWZmNDgwNmNkZGNlMGQ0NWMzMmY4YmVhNzgzNGI0IGxlZ2FjeS10cnVuaworMjY5NjYgZGJhYmIxZjdlZDNhNDRjYjc4ZGI3ZDVhYTg4NzVhNjdkMjgzNjkwZCBsZWdhY3ktdHJ1bmsKKzI2OTY3IGNmZmQwOTFmNTZkMGVmMDVhYWFhZjhlNWY3ZGRkNWVhMTk1MDIyYjQgbGVnYWN5LXRydW5rCisyNjk2OCBlZjhkNDU2MDY3ZmQyOGM3NjI4NWEyNzliNTExNzI2MTEzNzQ1NWQ5IHJlbGVhc2UyMi1tYWludAorMjY5NjkgNzEyMDYyMGY0MzJiZDA5MGE2MWVmODA4YWEwMWRkMGI1MjM2NjBlOCByZWxlYXNlMjEtbWFpbnQKKzI2OTcwIDVlZGVhNzUyYTQyMTlkYzJhZDk1OGQ2YmU4ZGRiODVkMDA1MzNhNjYgbGVnYWN5LXRydW5rCisyNjk3MSBhNjhmYWEyNjg1M2NlNzM5YWVlYTFjMDA3ODA2NTM1M2M2MWY3ZmU1IGxlZ2FjeS10cnVuaworMjY5NzIgZWMyN2FjMTlmOWUzYzFjOWYwOTgzYzBiNTRmMTc4YmIyNzExOTg0MiBsZWdhY3ktdHJ1bmsKKzI2OTczIDQ1NmQ1ODQ1MWZlZWE3NDdjZTExZTg3YjE5MDg1Y2NlMjFmMzY4OGEgbGVnYWN5LXRydW5rCisyNjk3NCAwYTI4MThjYzM0MmNlNGQ0MjE2Y2Y2OTFlNjM3NDIyYTdmZDVlZjBjIGxlZ2FjeS10cnVuaworMjY5NzUgMjFiMWQ3NDJlNGE3MDA5Y2RhMDY1MWRkNmY4ZmE2YTZhMzIwNDFmYSBsZWdhY3ktdHJ1bmsKKzI2OTc2IDNjYWVlMjk1ODM4N2NkOTJmM2RlNDYwYjNiMmRmOWE2MWNhZGYxNWEgbGVnYWN5LXRydW5rCisyNjk3NyA0YTFmNWJkNDg2ZmY5ZjgwZWJiZWZiMTE3MWQxNWFmOGMxMzQ0MmU4IGxlZ2FjeS10cnVuaworMjY5NzggZjRlYWIyNjhlNjE3ZTkwNDkyNjFmYjQ4ZGUxMzFiZjZiNjM5MWIxNyBsZWdhY3ktdHJ1bmsKKzI2OTc5IGE2NzE1YWQ0MTZlNWRhMmVlZjBkMGZhYjNlMThhODI5ZjdhNjJlMDkgbGVnYWN5LXRydW5rCisyNjk4MCA5ZGE4NTgzN2ZmMjUwODRiM2UzODhhMjNkNzA4ZjZiZTA0MTRjNzMzIGxlZ2FjeS10cnVuaworMjY5ODEgM2UzYjNjMTc3MGFjMTFiNTlmY2NkNTkzMTcxZTZiOTAwNTFmNjFhMyBsZWdhY3ktdHJ1bmsKKzI2OTgyIDU0NDgzYmMyMTg3MWVmODViYzdhMzJjOGQzM2Q3NjFmYjlkOTc0NmEgbGVnYWN5LXRydW5rCisyNjk4MyA5MjYyNmU1YWIwNjczNTRkZDFiOWRiMTJhNzNkZTllMWU4NmNhZWZmIGxlZ2FjeS10cnVuaworMjY5ODQgYTFkZTBiYWI1NDc1MDkzZjkwNWEyMjVmNmEyNjMzMDA0NWNjMWJmYyBsZWdhY3ktdHJ1bmsKKzI2OTg1IDg3ZjQwMzc3Y2Y1NDM4YjUxMDYxOWRiYzc4M2Q0OTE4MTFlMzMyMmUgbGVnYWN5LXRydW5rCisyNjk4NiA1ZWRkODA3MjZkOTY2ZmRhMmU5MGRkNWJmZTRiMjdjNGIzYjJlNWE1IGxlZ2FjeS10cnVuaworMjY5ODcgYzAwZmViYmUwOTI5NWUzMDBkMTgxNjc2NjUwNTc4MjM1MGRjZGNkMSByZWxlYXNlMjItbWFpbnQKKzI2OTg4IGFlZDM5Y2FmOTg2MGRkNjA4YmIyYzg0ZjgxZTM1NzdjZmI1NTIyZjkgcmVsZWFzZTIxLW1haW50CisyNjk4OSA2NWNmNDc4OTUwZmY1YzNhODgxYTVlYmRkYTg3NTMzOTZhYmU1N2VhIGxlZ2FjeS10cnVuaworMjY5OTAgNjNkMTQxNDFkZDEwZDAyNTVjY2ZiNmMwYzRjNzc3NmEyM2NhZTgzZCBsZWdhY3ktdHJ1bmsKKzI2OTkxIGE2YTc2NWM3ZDMzYjRkNzFhNzYzYjk2YTBkNmZhZmQzMWViMDZhODYgbGVnYWN5LXRydW5rCisyNjk5MiBlYTk3OWM1MjA2YjdlNmI4NzU1ZDkwNzE0MWQzNzk0MzRhN2JlYjY0IGxlZ2FjeS10cnVuaworMjY5OTMgNGE0ZDEyMGIyYjBlMDlhOGY1NmIwNTMyYzg4MzI1N2I1OWQ1YmNmZiByZWxlYXNlMjItbWFpbnQKKzI2OTk0IGFmZTk0NjkxODI2N2ExYzUwNjNkMTIxNjczMTAwZjUyZWRmNjM2ODQgbGVnYWN5LXRydW5rCisyNjk5NSAxYTUyMTYyMzU2MDI4ZDRmM2Y0YmM3OWVmYzkwNGY0MmU4OWY4NTkyIGxlZ2FjeS10cnVuaworMjY5OTYgMTE2NjAxM2ZhYjc3OTUzNmY2NTUzM2E2YTQxODkxNTBlZjMxNTg0ZSBsZWdhY3ktdHJ1bmsKKzI2OTk3IDBlZThlZjdjYTA5YzYzMmUzNzIyYTRkYTZmZTZkMDlmMmExNWJlYmEgcmVsZWFzZTIyLW1haW50CisyNjk5OCBkYmVlMmY2MjhhOTA2NzIyZmM0MzBlMGUzNDJjODI5NWM4YTFhZDBlIGxlZ2FjeS10cnVuaworMjY5OTkgMWU2MGI1ZDQxNDE3YjEzODRhMDk3OGU0OGJlYjdlMzdmNTI1MGRhMiBsZWdhY3ktdHJ1bmsKKzI3MDAwIDg1NTFlNjQyNzI3YzIzNWUxNTczMjljM2I5ZGNlZDY3MjM3YmVkZjggbGVnYWN5LXRydW5rCisyNzAwMSAwYjdmZTBmYTlkYzZiMWMzYTllODJmZDQwMTFjZDRhMTA3NWQzMjc0IGxlZ2FjeS10cnVuaworMjcwMDIgOGMyMTVkZGZkM2QxYTE4NWNmY2I1ZmJkYjFiMTljNzYzYjIxODQ4YSBsZWdhY3ktdHJ1bmsKKzI3MDAzIDk0MGZlZjMyNGViY2I1ZjhjMzEzNDYxZTdjMzgxNTAzZjIxMmQxZWUgbGVnYWN5LXRydW5rCisyNzAwNCBhMjUwODBmNjkwMWZlNmM4ZTkzM2I2YzQzOGQ4YzBmMGJjZTMyYjVhIGxlZ2FjeS10cnVuaworMjcwMDUgMDRhNGEwZTcxYThkY2Y3MDFjODg3NGYwOTM1NThjYjI4ZTk1NjAzMCBsZWdhY3ktdHJ1bmsKKzI3MDA2IGM2NDYzYWZkOWYwODYwYjg0M2JhZWYwMWUyMGM5NTNiYjgyYWVhZmUgbGVnYWN5LXRydW5rCisyNzAwNyA3MGQ3NjgzMzU1MGIwZDkzNTk1ODk0NTgwOGZkOTY0YTZkMjQ1ZGZiIGxlZ2FjeS10cnVuaworMjcwMDkgM2ViZDM3NmFhNGNiNmI3OTc1MjUxYTkxZjA5ZGEzN2IzNWZkMzNiNCBsZWdhY3ktdHJ1bmsKKzI3MDEwIGUxZTkwYjBmMWY0NTAwYmI1NWNiZTMwMjk4ODYwM2MxY2ViYzg2MzggbGVnYWN5LXRydW5rCisyNzAxMSAyMjBlZDdmZWJiMDAxOWNhNmZhNjc2ZWZmOWZjZmE1NzQyYmVlNzdiIGxlZ2FjeS10cnVuaworMjcwMTIgZWM4OTQ5ZTRlNDZkNzgyNDYyNWQwNmZlZWIyZjMwYmUzY2FjZWI5OCBsZWdhY3ktdHJ1bmsKKzI3MDEzIGI5NGFjYzE4NzQwZTdlNjg2MmVhNzRmMjNjZjdlZTllY2EzZjQ3NzEgbGVnYWN5LXRydW5rCisyNzAxNCBiOTIxOGVmYWU4ZjU1YzhmYmJhYWUyNjIwZjk4NmM5ZTUyNjlmNmUwIGxlZ2FjeS10cnVuaworMjcwMTUgYTM0NTIzMTIxY2Y0NDE0ZTkxYzFjZGFjNWU0M2Y3ZWZhNjQ4ZDUyNyByZWxlYXNlMjItbWFpbnQKKzI3MDE2IGYwY2EzOTM1ZDAxMWRkYTcyZjM4ZGUwNGExNDhmMGM2MWUyNWQ5ZDggbGVnYWN5LXRydW5rCisyNzAxNyBiNDAxNjVhNGVmZTlhZDJiZGIzNmJiMzZkMTBlY2ZkMjg1YmNjYWY5IGxlZ2FjeS10cnVuaworMjcwMTggZWI2YTE2NTFjY2RhMDM3MmY2N2MyZWQ5Y2EzYTYwOTMzN2JhNWMzOCBsZWdhY3ktdHJ1bmsKKzI3MDE5IGI4NmVhZWIwZDdkZDQyYTc3ZTljZWI1NmZmM2EzNjZmZTVjOWYzYmQgbGVnYWN5LXRydW5rCisyNzAyMCBlZTc3MmY2ZTg4MWJiMjM0MjBhMzc3YzZiOTFiMWE2ZWFkZDExNDY5IGxlZ2FjeS10cnVuaworMjcwMjEgYmZkYmUyNWE0NWIwNjg2OGYxNzdlMDhlOGQ3ZWRjODQ2ZjM2N2Q3NCBsZWdhY3ktdHJ1bmsKKzI3MDIyIDVmOTc4MTk2ZmQzZDAyZmYxN2RiOGQ3NjFhZjJmNzA2YjljYzk1ZDIgbGVnYWN5LXRydW5rCisyNzAyMyA5NGFhNGViOWJiN2Q5NDJkMDVmNDIyYmMwY2JhYTRhNWMxMmQyNzcwIGxlZ2FjeS10cnVuaworMjcwMjQgNWM1ZmZmNWRlMjUwZDczYjcwZWYzZTJmNWViYzAxMGIyZDIyZDE4MCBsZWdhY3ktdHJ1bmsKKzI3MDI1IDE4ZDU4ZGUyMDNkNmU4ZGUzMGRmM2NiMzgxYjJhZGRiMjQ2NGEzNzcgbGVnYWN5LXRydW5rCisyNzAyNiBiNWMzZjEwY2U2Mzk3OWQ2NzY3ZjI4YWIyMTJmMjAzZGM0ZDQ0MDM5IHJlbGVhc2UyMi1tYWludAorMjcwMjcgMjdlMjEyMGNiNDc2MzEzZjkyN2I3ZmFmOTRkMjZhZGFhODE4MWM4YiBsZWdhY3ktdHJ1bmsKKzI3MDI4IGU0MTkwNjZmNDA4ZjJkNDJlN2E3MDU3MDJkMDM0YTE2YzU2MzQ2MzcgbGVnYWN5LXRydW5rCisyNzAyOSA4MTBkY2Y5ZDgxYzk4ZGNjZmM2YzExN2UwY2I2MWY4MGIwMTBmMDg5IGxlZ2FjeS10cnVuaworMjcwMzAgNmRjZDRiNmVlNWRhOWU5NGQ5NThjOTcwYzg1ODI4ZTdjNzhhYmFhMyBsZWdhY3ktdHJ1bmsKKzI3MDMxIDJiZWNiNTc5M2FjZDFjOTg2ZmQxZjQyOGI3ZDM5YWQ4YzQ4NGQ2YjggbGVnYWN5LXRydW5rCisyNzAzMiBkYzdkNWMyZDU4NDVhOWMxNmQ4N2MyNTFlMWEyNDA1MjA1ZmZmNzg4IGxlZ2FjeS10cnVuaworMjcwMzMgY2E4NzExOTI1NWViMTc3ZmU3ZDZlNGRlNWRiNWEyZDA2Y2IzMjAyOCBsZWdhY3ktdHJ1bmsKKzI3MDM0IGUzMjE1MmFmZGU0YWJjY2E4OTI2ZDdhMzdmYzc1ODRhNjc4ZWM2OWUgbGVnYWN5LXRydW5rCisyNzAzNSBjM2RiYTkxYWZhNmQxNDJlMzlmOWFkZmUzYmFhODNiMmYxYWY3ZDk5IGxlZ2FjeS10cnVuaworMjcwMzYgOGVmYTUyZTBhODQ0ODU5MzlhMjRhNTQwOTY3OGRhOTkxMGYwOTU2YiBsZWdhY3ktdHJ1bmsKKzI3MDM3IGVkYzQyMzk0MGNkNjYzOWU0NGMxZjFiNWE4ZGM2ZGE1MWZhNTMxMmEgbGVnYWN5LXRydW5rCisyNzAzOCBiOTJmODE5Mzg4NDNmOWI2Zjk3Y2Y3NTBkYTU1OWFmNmUwYTNiYzBjIGxlZ2FjeS10cnVuaworMjcwMzkgMmZjYzZkNGU0Y2QyNjFmMjY1ODY0YTZiNmQ5MTJmNmFhZWRlZDgwZSBsZWdhY3ktdHJ1bmsKKzI3MDQwIGYzNWU3NTFmNWZmMjU4NDY2MTM0YzU5YzAzNWUxYTZiMzkwZTBkMDggbGVnYWN5LXRydW5rCisyNzA0MSAzYTFhYzExZWJlNTBjM2UyMDZmMTU4Y2Q2ZDc2ZmY1NDBjMTI4NGVkIGxlZ2FjeS10cnVuaworMjcwNDIgNzMyYjY5MzE4MTY4YzJjODExOTM0MGUzN2ZmNTA3MjRkNWMxM2Y4YiBsZWdhY3ktdHJ1bmsKKzI3MDQzIDVjNTkwMmRlNWE1NDIxNGYyYmU1MDVkMDkxZWI3ZmIwNjE3MDAyOTggbGVnYWN5LXRydW5rCisyNzA0NCBiMTgzNDhiZGNhMDgzZTMzZTVmNjNjMzEwOTNlOWNhNDVmODk2ZTFmIGxlZ2FjeS10cnVuaworMjcwNDUgZjE1OWVhOTU1ZTgwZWEyYmU0YTMyZmViNDBhN2I1MWYxZmQxNmE0NiBsZWdhY3ktdHJ1bmsKKzI3MDQ2IGUzYTg0MGZhNTg0Y2I4YmU5YzY3Y2FmMmI0OTk5NDI5MjI5MDQ3MjcgbGVnYWN5LXRydW5rCisyNzA0NyBkNTA3YWQ4NjIzNDIzMjM3NjY3OWQyZTZjYmY4N2FhOWUwMGIzZjE4IGxlZ2FjeS10cnVuaworMjcwNDggNjEzNThmODAwYjYxNjkwMjc5YWQxNGY4NGU1MWVkZjRjODBiYjk2YyBsZWdhY3ktdHJ1bmsKKzI3MDQ5IDMyNWJiYjQ5MzdjNWRjOWYzZjQ3MmE1MDk3MjUwNTgzYzBjMzk0ZGYgbGVnYWN5LXRydW5rCisyNzA1MCA4YTlhM2FmZjMyZmM1OGQ0MWQ4OWE5YzU3MzdmZjI5ZjI1Y2EyNjdmIGxlZ2FjeS10cnVuaworMjcwNTEgMTQ5MzhlNzYyNzZhMWE2OTY2MGM5OTM3MjllMTRhNzE4ODU5OGNlMSBsZWdhY3ktdHJ1bmsKKzI3MDUyIGM0ZDJkMzA1ZmQ5ODJhN2RjZTkwMGZmYjk3ZGUxNDQyZGY0ZGIzOGEgcmVsZWFzZTIyLW1haW50CisyNzA1MyBkN2JkN2I3MzI5YTdlY2Q3Mzk1OGI3MjQ1Mzg3NzM0MTQ3MmE3NTVjIGxlZ2FjeS10cnVuaworMjcwNTQgZDZmYWExMzc5NDhkZWZjZDNmNDBjNjQwNzhmZGM0YTA1ZGQzODA1MyBsZWdhY3ktdHJ1bmsKKzI3MDU1IDM5OWFmY2U4NmViMGQ4MDgyNjcwZWYyMDFmN2NiNzAyZTU3ODY4OWYgbGVnYWN5LXRydW5rCisyNzA1NiAzYmRmYzQ1ZDkwOTY4YzljOTllMzZhN2I3ZDQ1Y2E3YzM4ZDUyYzgxIGxlZ2FjeS10cnVuaworMjcwNTcgM2EyYTZhZjkwOTkyODNiZDk5ZjYxZWVjYTAyMTg4MWQyMmVmYzJkZSByZWxlYXNlMjItbWFpbnQKKzI3MDU4IDg5ODMxNThlOWYxMTM0NmVjZWZkZDIwZWMxNWY3ZGMxNzVjN2FlYjMgbGVnYWN5LXRydW5rCisyNzA1OSAwODA1N2E5ODc5MTBiM2Y5NGExYTU3YjZiMTk0MWVkYjY3ZjJmMDA2IERTX1JQQ19CUkFOQ0gKKzI3MDYwIGE1NmY4YzMwYWY3MWM4OTVhZGNjODg2YTBmNTYxYWVlODI3ZTVlMDQgRFNfUlBDX0JSQU5DSAorMjcwNjEgOGI5ZDkxMzA4MjBlZjdlZDg0ZDM2NGMyOTgyMGUxNmFiMjZhODQ3YiBsZWdhY3ktdHJ1bmsKKzI3MDYyIDYyNjZmMWJkMWFiOTNlZmRmMTY4YjQ0ZDI4MzQ5YjNhNzIwYzRmOWQgbGVnYWN5LXRydW5rCisyNzA2MyAwMTk5YWEyNzRjN2JmZmRlODYzNGI3ZmNkOWU2YTFkMWNkNWYxMmNkIGxlZ2FjeS10cnVuaworMjcwNjQgY2NlYWY3OGI4NWRjNzJlMDFjMTBlZmMzYzVhNGQ3NmVlYmVjMGY5YiBEU19SUENfQlJBTkNICisyNzA2NSAwZjU3MGJlNjczNmViZTJlZjRjYjZlNTkyMDI4ODhlZmFmZDA5MmU1IERTX1JQQ19CUkFOQ0gKKzI3MDY2IGMwZThjMDdhZTFkNmNiNTVlMThjMmU5MzllNmUyZTgzZDFhNjlkZGEgbGVnYWN5LXRydW5rCisyNzA2NyA3NzE4YjI3NGFkOGIxMmNkMDJhMGU0OGQzOTljZWExN2RhZGJlZWFlIGxlZ2FjeS10cnVuaworMjcwNjggMThkZGMwMmNlMzZmMzU4MmU5MjA5NDFhNjFhYzJhMDE1MGU4MzNmMyBsZWdhY3ktdHJ1bmsKKzI3MDY5IDY3YjlmNTNhNzgwMTRjYWRjNTE3MGMxNGQxY2YxYWY2OTQxZTUxN2UgbGVnYWN5LXRydW5rCisyNzA3MCA5YTVjNDg1Nzk2MzM5ZWQ2YTBmMGU3MzljZWNmYmI5YTdjMzMwZjRhIGxlZ2FjeS10cnVuaworMjcwNzEgZDRmNmUyYWRkZTQ4NDZjMjA3ZTI5MWExNjJkODczMDRjODNmZWMyMyBsZWdhY3ktdHJ1bmsKKzI3MDcyIGFiZTFiYjc2ZWU0NDc0NDk0YjY2MDlmMGIyYzE0ZDcyZDE0ZjIzMzMgbGVnYWN5LXRydW5rCisyNzA3MyBlNGFkZDdiYjVmMTQ4ZGI1MWNkNzBiY2IzYTFkZTlhNDZjYzdjYTg5IGxlZ2FjeS10cnVuaworMjcwNzQgZjg1ZjQ1MzFjM2MxNjQ0ODkyNjYwMTcyN2RiYmRkYzhlZmYwMTAyNCBsZWdhY3ktdHJ1bmsKKzI3MDc1IGUzN2YxYzBmOWExZTkzNmZhNzYzOGVlNzAxZGZjZmY4ZTkwM2Y0M2IgbGVnYWN5LXRydW5rCisyNzA3NiAwNThiZDJkNTBlMzMzOWY2MTRkZTBjNzljY2JkZjAzMTlhMGQxZmFjIHJlbGVhc2UyMi1tYWludAorMjcwNzcgNTZhNGQzYTUwYjc2Yjg2ZGJkNTJkNjVlZDE1OTQ5MTk4ZDVmNzY5MSBsZWdhY3ktdHJ1bmsKKzI3MDc4IDNiMzc5YWUzNTY5ZDkzMTBjNGYzNWQxMzUwMWViOTg1MjNlMjVkZjQgbGVnYWN5LXRydW5rCisyNzA3OSA0NGI5OTc3ZDQ4NDg3ZGVkYTU1MjUxMDI0OWI2YTE2YzBmNmIxOTMyIGxlZ2FjeS10cnVuaworMjcwODAgNTY1MDMyYjQ4ZjUwOWM1MzMzOGViMjkyZTUxMzA1YjZhMTNkODhiOSBsZWdhY3ktdHJ1bmsKKzI3MDgxIDI4Yjk5NzFmMDY4ZjdjZDRiNGM0ZDk0ODM3NTRjODM4ZGM5ODVhYjcgcmVsZWFzZTIyLW1haW50CisyNzA4MiAyYjEyMTlhNzJlZmNhNmVjNzY2ZmFmMTc4N2JiMDRjN2Y0ZTgxODk3IHJlbGVhc2UyMi1tYWludAorMjcwODMgOTY5YmQ1OTdmOTIzOGM3OTY2NmVjYTJkZTZjMzA1ZDI1ZmVjYzQ5YSBsZWdhY3ktdHJ1bmsKKzI3MDg0IGMyNzMzZThmNjYxMmI5YjI1ZWE4Yzc0NmIwNzYyMjdjYTE4NDExNzEgbGVnYWN5LXRydW5rCisyNzA4NSBmYzUzNjFlMDI4ZjNkN2Q2ZjcwZTVlMDY2NDg1Y2VkMDg0ZjZkMGMwIGxlZ2FjeS10cnVuaworMjcwODYgNzcxNTRjZWYyOWQxOWY0MGYzNWM4YTYyZDE1MjkxZjUwMmFkNjQ5NyBsZWdhY3ktdHJ1bmsKKzI3MDg3IDQ0NDk1NGM1NDM0YzFlZjdkODE0ZjhmMjhmYWViNGE2YTI2ZmNkYTEgbGVnYWN5LXRydW5rCisyNzA4OCAyMzdjYmQyYTkxZTliYmZjYjI2ZTYzMTU0ODU5YjA5NTAwNWI5MmRkIGxlZ2FjeS10cnVuaworMjcwODkgYjA2MjA4NWMxZmYyYjgwYTY1NzJiMzUzMWJiYjY3N2YzZWU3ZjczYiBsZWdhY3ktdHJ1bmsKKzI3MDkwIDQ4ZTkzN2UxYjNmZTNkMTBjMjZhYTBkMzk1MTlmMzM2Y2UwOGU0OWIgbGVnYWN5LXRydW5rCisyNzA5MSA3NWM1MTk5OWM4ZDU0Zjk1YWQxYjU4ODAxMzFlNGJiZGQ4NjQ1MGY1IGxlZ2FjeS10cnVuaworMjcwOTIgMmY2Zjg3MDhlM2U5NDVhNzE2OTJiYzliNzY5NjRlNzYwYzk3MGY1MyBsZWdhY3ktdHJ1bmsKKzI3MDkzIGRiMjM5ZWMzMDdlMDc0NzFjMmU4YmExZjMwMDJlZmUyZTI3MDhlZWQgbGVnYWN5LXRydW5rCisyNzA5NCAxMjM1YTk1ZmVkY2Q2Y2FmMmY0Zjk0ZDY2NzYwY2IxYTFjZWNjYjA5IGxlZ2FjeS10cnVuaworMjcwOTUgMmNkNmVkMWMxYjU4M2JhMjc4NzUwOTgwMDBhNmJhY2ZlODAzNjA5NyBsZWdhY3ktdHJ1bmsKKzI3MDk2IDlkMTFmNTE4NjBkZDNlMWZkM2YzZmZjMmJmZDk1Yzg4MGZkOGVkZTkgbGVnYWN5LXRydW5rCisyNzA5NyA1NTYyYTQ5OWZiN2Y4NDUxY2ZlOWNkZDE1NWZmNWM1YWYyZDhmZjMwIGxlZ2FjeS10cnVuaworMjcwOTggNWY4NWNhZTI1ZTE4NTU0MTlmMmViMzQyM2U4OTZmYTQwZTgyMDQ4NyBsZWdhY3ktdHJ1bmsKKzI3MDk5IGFmOGQ0MGU0YzM3NzczMjA3MWFhMjg2OTM0NTc3MGZkMWUyNDk0ZjQgbGVnYWN5LXRydW5rCisyNzEwMCBlMGE5MWM2NzM4OGY0ZmQwYWE1MGQ3NjJiNTY2MjM1NDgzYWQ5MmFmIGxlZ2FjeS10cnVuaworMjcxMDEgYmQyNmMxMjA1OTFhNTc4ZTliMTQwY2I1MTZiYjI2MzI5YmE5YzQyNCBsZWdhY3ktdHJ1bmsKKzI3MTAyIDdlYWFiZTc3ZDVjYmQ5ZjdmYjNlNmEzMGM0MzhjNmQyYmJlZTk2MTEgbGVnYWN5LXRydW5rCisyNzEwMyAzMDgxMjJiNjk5NmU0NGRjMThlZTk1ODNjNTRlNDczMzVhMzYzZjUyIGxlZ2FjeS10cnVuaworMjcxMDQgNjU1ZjQ4NjI4NDM2OWNkNGM4Mzc1MzI5MWUyNTU4N2RhMGQ2Njg5ZSBsZWdhY3ktdHJ1bmsKKzI3MTA1IDE4NDJkYjZhMTM5NDg1NDZjMWQ2YWJkNGNkZjNkOWRkMzg5ZjUyM2UgbGVnYWN5LXRydW5rCisyNzEwNiBkZjFhMjc1ZmY0ZjI1YjU0YTM1NDJkYjkzNWFmZGQ5NGZiZDMwODA1IGxlZ2FjeS10cnVuaworMjcxMDcgYTY4ZDI0NjZkOTRiZjU1NDkyMDhiZmFlNGRkY2Y2ZjQwOTAzZDVmOCBsZWdhY3ktdHJ1bmsKKzI3MTA4IDI3ZjQ4MzE0YmE5ZDBlMWVjMzM2NGY2NGExMTYwNWE5NDUyOGE4MTAgbGVnYWN5LXRydW5rCisyNzEwOSBhMjEzNmFlOWQ0Zjc2ZTcyNTA5MDc0MzIzM2I3MjI2MDhkYThjNWZmIGxlZ2FjeS10cnVuaworMjcxMTAgNjg5NTIwMGQ2MmIxOWNlOWQ4YjRjMWZlMzdlZmJjNjhkMTMzZDdjYiBsZWdhY3ktdHJ1bmsKKzI3MTExIGZlNzY5YjA3MTUwMzUzZmUyMWM0NzYzOWUyN2M3NzliNTQ0MDgzNDQgbGVnYWN5LXRydW5rCisyNzExMiAyZTFkZWY0MTdlY2I4OTdjOTRlZjc2ZjExODQwMmY1MjU2NDhkZDJlIGxlZ2FjeS10cnVuaworMjcxMTMgZWEwMzU0OTBmNjI0NWMyODkxNDgyMWRiYzQzOTFiNDgyNGQzMmQ1OSBsZWdhY3ktdHJ1bmsKKzI3MTE0IDM4ODMyMDAwZjdlOTQ1YmU1YzQ0YTY3NjYwNGU1MDdmNjY0ZTI1MGMgbGVnYWN5LXRydW5rCisyNzExNSA0M2RkY2RjZDNjNzFmZTRlZjc0MTJjNjk0MGQyZTZjNjRiOGQyNTJkIGxlZ2FjeS10cnVuaworMjcxMTYgNGQ1OTMyNTRiYTkzOTI1ZGVlZGQwMGFhY2U5NzU2MTRmOTg5MTYzMCBsZWdhY3ktdHJ1bmsKKzI3MTE3IDJkNjdhMGJhOTAyMGQyOGU4OTJkOGQ2NWMzYTRiMjMxNzNlMzQwZTUgbGVnYWN5LXRydW5rCisyNzExOCAzNjY4NzdlZGQ0ODc2M2NjYThhMTc0NmQ1MzMzNzBkOTIzMWQ0Nzc1IGxlZ2FjeS10cnVuaworMjcxMTkgN2JjNDgwMjllYWE5Y2IzZDkwYmJlODI3ZGRmNzY3MmU5YjQ3ZWE0MSBsZWdhY3ktdHJ1bmsKKzI3MTIwIGExNjhiMmY2ZDdkYWFkNmY1ODI2ZWY5ZWU5NTYzNzk2NzE4OTBmYWYgbGVnYWN5LXRydW5rCisyNzEyMSA0NzFhNTdiZjJkYWUxODVkNDgwYWUzZDhjYmEwNDk2YTMxNTE5ZDRlIGxlZ2FjeS10cnVuaworMjcxMjIgNDEwOTdlOTJmNTYwZjk5OTM0YmIyYWNmY2QyODE2NDhjYjFmOTExZSBsZWdhY3ktdHJ1bmsKKzI3MTIzIDJjOGVhN2Y5YTNjZWRjMzdmZjFhNjUzOWZmYjVkMzkyOTFjMDdhOTAgcmVsZWFzZTIyLW1haW50CisyNzEyNCAwMjc5MDQwYWUwM2NiYTRkODliZTEwYWQ1NDI2MzY1MTMwZjY3NzE4IGxlZ2FjeS10cnVuaworMjcxMjUgOGU1ZjI2Nzk2NjIwMGIwMzM3MjI3M2Y3OWNhNGNkYjI3MjBmZTIwMCBsZWdhY3ktdHJ1bmsKKzI3MTI2IDA3NzFmOTM4MmQxZTMyZGU4OTU2MGJmZWU1MmZiMzExZTNmYzQ4MmYgbGVnYWN5LXRydW5rCisyNzEyNyBjN2U4MDc4MTcxNTkxY2NkN2NlYmQ3ZWY1NDVlMWUxN2Y3YTJiZTFmIHJlbGVhc2UyMi1tYWludAorMjcxMjggOTEzMTczMDFkZDA5OGNhMzNiN2YyMTAyMWI3NTY2OGY3NTExYTM5YyBsZWdhY3ktdHJ1bmsKKzI3MTI5IGU2NDBkODliNDkwNzQxNWEwODQwODYyMGZmMzIyZWZkYzJmOWE4NDYgbGVnYWN5LXRydW5rCisyNzEzMCA5NGQwZGM5ZDZlNDRlZjEwNzQyM2JlNmI5MzBlZjhiZWQ2NmE4MDc0IGxlZ2FjeS10cnVuaworMjcxMzEgYmFkYmM1MzM0NDg4NjEyMmFhODk4MjUzMWRjYmFiZWUwYTRlYmUwZSBsZWdhY3ktdHJ1bmsKKzI3MTMyIGYxNmY2ZGE0ZjVmZmRiNmQ1ZGRjNzBhMjEwZGNkODI5NjZhMGM2NGEgbGVnYWN5LXRydW5rCisyNzEzMyBkNThmYjU0NDUxMTg4OGU2ZmI1OTE4NjNlYzg1OWU2NjY2N2FhOTM4IGxlZ2FjeS10cnVuaworMjcxMzQgYTdjZWFkYjAzZWRjOTE3NDU0NGE1OTJiNTYxMTY0ZjgyNjgxZDI3NSBsZWdhY3ktdHJ1bmsKKzI3MTM1IDFjYmNkZGNhMzNiMDI4M2MzODQ2ZTgwMmMzOWEzY2JjYmNiZGVjYmQgbGVnYWN5LXRydW5rCisyNzEzNiA1ZmIwOGQ4MzJlYWM5YzkwODM3ZDRmMjNjZjhmZTlkNWRiNzIxZWVkIGxlZ2FjeS10cnVuaworMjcxMzcgNDY4MGVmNGZlOTBhZDQ1MzNkMzRiYjY0NjA3NDk1M2UyYTcwNDk5NiBsZWdhY3ktdHJ1bmsKKzI3MTM4IDM1YjYyOTA4NTVmYzFlODc0Mzg4MzVmY2E5MTUzN2FhOTAzYmEyZGMgcmVsZWFzZTIyLW1haW50CisyNzEzOSBmNmIyNzE5ZmJmMTE5ODk3ZWFkMjUwNzFjZmRjMmFkNTlkMzVhMGE2IGxlZ2FjeS10cnVuaworMjcxNDAgMDZkYmQwODk4YjM5ZTI0M2RhMzFkNDdlNzFhZmQ2ZjAzOGQxZjE4ZiBsZWdhY3ktdHJ1bmsKKzI3MTQxIGE1NTM0ZmFlNTExMDE2ODY3NzIyOTExNzAwM2MxODM3YzJkYTBiMzAgcmVsZWFzZTIyLW1haW50CisyNzE0MiAwYzY1ZjQxZmQ5MjE5ZWQ4ZmQyM2JkYzQ2YjkxYzVkMzliNWY5ZjhlIGxlZ2FjeS10cnVuaworMjcxNDMgNTAwNjMwMTZkMDQ2OTlkMTE4NmZlMjhkMTdlY2E3YzY4MWUxN2M0ZCByZWxlYXNlMjItbWFpbnQKKzI3MTQ0IDVmODZjMjFiZDlmYzg5MDU2NTZhMmE0NGY3YjdiZmY0NDlkMzJjMGEgcmVsZWFzZTIxLW1haW50CisyNzE0NSA3MWRiNDI4ZjZlMDhhNDU5YWU0YzQyYjFlODZlNDViYzk2NzNhMzM2IGxlZ2FjeS10cnVuaworMjcxNDYgYmVjMWI5NDJlMGJjM2NkNzFlNzY5YTAxNzIzMTFmNTY5MjMwYmJiOCBsZWdhY3ktdHJ1bmsKKzI3MTQ3IDI0NTIyNGQxYjhjOTIwMWEyYWU4NDNlZTEyMTdlM2JlM2U3NTE2NDQgbGVnYWN5LXRydW5rCisyNzE0OCA1NWM5MjI2Njk5MTMxMzQxZTI3ZjQ4YTRlZTgzN2I5ZmFjNTExYzcwIGxlZ2FjeS10cnVuaworMjcxNDkgYzdjZGE2M2EwMDdlNDRmNjE2ZDA1YTRiMDk2YmRkNjM3ZjhiNTlhOCBsZWdhY3ktdHJ1bmsKKzI3MTUwIDczMDQ5MGZmMjVlYTM5YmQ2NTAyMWE5ZTRlZTBhODgzNjI4YWM3YmQgbGVnYWN5LXRydW5rCisyNzE1MSA1NGY2Zjg5MTM5ZGI1M2Q5MThlNTU2MWM3NTU5NzNmMjMwNWE1MjZjIGxlZ2FjeS10cnVuaworMjcxNTIgMGRhYjhiYTFkMjk4MDc5ZjljMDQ1OWU2ZTE1ZWU1ZDZlYjJjNmMzYiBsZWdhY3ktdHJ1bmsKKzI3MTUzIDI0YjBmNmQ2OTNlMzRiMzdjNTJkZjA1OTA4ZTJiN2M1ZGQ4M2Q2ZWEgbGVnYWN5LXRydW5rCisyNzE1NCA3YTMyYzIzNTZlNTY3Y2Y4OTlhMjY4NDYyM2Y1NGYwMGE1YjIxNDk3IGxlZ2FjeS10cnVuaworMjcxNTUgZTBmYmY5YzRkNDZjMmQyYmU4ZDc4NTM3ZGQyZmI0ZWI3NzU3M2FlZCByZWxlYXNlMjItbWFpbnQKKzI3MTU2IDkzMjk3NzA2MzdhODU4NTIxOTRmNmViNjk0ZDE0NzUzOTAyZDI1NzUgbGVnYWN5LXRydW5rCisyNzE1NyA5ZGEyZDhjMTMyMDkwOTQ4MzU4Yjg2M2I1YTBiN2UzYTMxMGEwZjdhIHJlbGVhc2UyMi1tYWludAorMjcxNTggYzAxYzFiNGE4MTcxNmQxZTIzN2Q0MTBiYzNiZTE5OTY4YzRkYzY0MCBsZWdhY3ktdHJ1bmsKKzI3MTU5IDQ4NmY0MDQ1ZDEzZGY2MDg5NmFlZjliYzIxZDk2MTZmMzVjZmU5NDcgbGVnYWN5LXRydW5rCisyNzE2MCBjZGU2NjA4NzM5YzQyZDQ1YTFmNmIwODUwN2Y3NTU3YzQ4OWM0NTEwIGxlZ2FjeS10cnVuaworMjcxNjEgN2RkNDMyZTFkZTI2NjY0MDJlZjZiNTkwZmYzMjAwNTllMmFjNmYyMCBsZWdhY3ktdHJ1bmsKKzI3MTYyIDdjZGM1MzFlNmE1MDRhMDlkNzgzN2Y3ZmJiYmE1M2MyOTA2MzBlYWUgbGVnYWN5LXRydW5rCisyNzE2MyAxZjFhNmY3ZGQ2MDAxNGRiMDZjZDhiYWVlZDg4OWUxNDc5YTNmOTUyIGxlZ2FjeS10cnVuaworMjcxNjQgODBkNDUwZTU1MmY2OTljZTY3YTBmNzgxZTdiYTFjNzhjZjkyNjA4YiBsZWdhY3ktdHJ1bmsKKzI3MTY1IGZjYzM2ZWUxOTI0YjMxNmRhOTc2NDZlOGU5MjI0NzM0NTk3ZTBjYmYgbGVnYWN5LXRydW5rCisyNzE2NiBiYTI5NDg1ZDA3MjBiZWVhOGYwMTY1N2U0MmEyZDVlM2NmMmU4OTg0IGxlZ2FjeS10cnVuaworMjcxNjcgMWRhNmQ2N2Y0YTA1YzVlMzBmM2Y1NDJmNmJkYTUyYWNkNDYxNTUwMiBsZWdhY3ktdHJ1bmsKKzI3MTY4IDJhZDEzZWU2ZDg1MDVjMmMyNDEwMDg2YzE5NjA1MWY4NTE4ODMwNTcgbGVnYWN5LXRydW5rCisyNzE2OSBiZjE1NTVhOTI3MTE3ZGIxOGQzZWM2MjkzZGE4OTRhZmE4ZmM0NjE3IGxlZ2FjeS10cnVuaworMjcxNzAgYjJiMWYxZmY1YzcxY2RhN2MyZGY3NDU4ZmM5ZGY5ZmViYTZiNTU1NSBsZWdhY3ktdHJ1bmsKKzI3MTcxIDRlYzU4YzI3MGYzZWMwYzBjOWVlZjg5ODk1MTM3NjY2MzFiZDQyY2EgcmVsZWFzZTIyLW1haW50CisyNzE3MiA3ZWFkMmQ5ZGY3Zjk2OGNkNTRjY2NmNmIxYjcwNjU3YTcwNDczZjQ0IHJlbGVhc2UyMS1tYWludAorMjcxNzMgMGIxMmFmYzQwMTJhODA2Y2JhNDVlNjM1NDRiMGI3OTVhYzg3N2Q3MyBsZWdhY3ktdHJ1bmsKKzI3MTc0IDA2MDFlY2M3ZjRiZjczOWRkMzk3ODIxN2MyYzNmMzQ3MGNlMDc3Y2YgbGVnYWN5LXRydW5rCisyNzE3NSBjNzRkODZkYzQwMTc3NGRjOThlZTQwNTE0ZmM2Y2VkNjc5ODJkZWFiIGxlZ2FjeS10cnVuaworMjcxNzYgY2M2NWI1YmNmYzM4MzY5YjhkOWI2NTc2YTQ3OWFmNjFjMTY5NjU3YyBsZWdhY3ktdHJ1bmsKKzI3MTc3IDc5ZGNkNTdmMjcyZGVjNDkzMzMzNTZjOTA0NWM3NjRmOTY3NjYyMDYgcmVsZWFzZTIxLW1haW50CisyNzE3NyBiYjViMzcwNDkyZDZhMzc2OWU3ZTNhYTUwYmY0NTcwNmMyZDM0MmZhIHJlbGVhc2UyMi1tYWludAorMjcxNzggMDFlNGI2OThmZjdlZmUwYjFmMzI5N2ExYjY5Y2I3ZGRiMjRhYzZhOSBsZWdhY3ktdHJ1bmsKKzI3MTc5IGUzZTAxOWJjNGUxZWNlNDE0NWVlMTc1NzUxY2Q2YzZiODQ3MDFjNTUgbGVnYWN5LXRydW5rCisyNzE4MCA4OWE3ZmE5MThjM2I3ZjY4OWFmNDM0YmY1NzhiMzZmMzY3YmE0ZjljIGxlZ2FjeS10cnVuaworMjcxODEgZjZjMjZkMDgzYmY2YzhkZjMwODkzZWU2ZGFiZjRmYzk4NjE4NmY1YSBsZWdhY3ktdHJ1bmsKKzI3MTgyIGM3ZDdkMjMxOWIzYTFjN2JiNTNiMWRlZjFhNjg3YzE3MzBiODFkMzMgbGVnYWN5LXRydW5rCisyNzE4MyAyMDNkMTQxMmE3ZTgyNmQzYzA0Mjk2MmVmNWZiMjUxOWY1MWYzNmNjIGxlZ2FjeS10cnVuaworMjcxODQgZTRkNTU3ZDQ2Yjk2ZmQ2NTQyMmRiZTM3NjY1YTQ3M2RmNzMwM2FkNCBsZWdhY3ktdHJ1bmsKKzI3MTg1IDJkOTdiYzJiYTUwZDI3OGQwYmViNjJmNjNkZjQzZWQwNjY2Yjc1YjAgbGVnYWN5LXRydW5rCisyNzE4NiA4YTBhMTRlMzcyNWUzNzYzZjE1Njc3NzZmYWEwYjk3MWUxZGYyOTIwIGxlZ2FjeS10cnVuaworMjcxODcgNDNkNjU4ZGM4ZGQzNmU0NDczNmQzYjUxNmJjZWNjOTNmZGVmMzEyOCBsZWdhY3ktdHJ1bmsKKzI3MTg4IDEzMGZmZjQ4NmZhNjRlZjgyMDA2ZDI3MDU1ZDI0NzYxZTQ1MDNiODUgbGVnYWN5LXRydW5rCisyNzE4OSAzMTI2YzQyNjI5NjI5Yjc5NWFjM2RjMDRjNjQ3YzE3YWUzNzA5N2U2IGxlZ2FjeS10cnVuaworMjcxOTAgOTlkMjI3MjMyNTJmNTkwODk5NWRkODZhMzY1NzZiMjc1MjgwYmVlMCBsZWdhY3ktdHJ1bmsKKzI3MTkxIGM0OGJmNWRmNjE0YWMwNGE3ZDI1NTY4N2E5YjBkNzU1MDg2NTIyMWEgbGVnYWN5LXRydW5rCisyNzE5MiA4ZmY2OTFkYzdmMjkxZGRkMGM3YjUyNjg3YWRiYjU4ZmZhMTdkYzg2IGxlZ2FjeS10cnVuaworMjcxOTMgOWYwMDA5Y2E5N2I5YTVjMmQ3Yzg3ZWQ4ZGE4ZDNjMDUxMTJjZWZjMCBsZWdhY3ktdHJ1bmsKKzI3MTk0IGFiY2ZhNDk5NTJjNDMyNjI3ZTZkMTE0YzZmMDBjOGY4MThkY2RlZDMgbGVnYWN5LXRydW5rCisyNzE5NSBkNWU4OGMwYzllMDllZTU1YWIzODE1OTAwM2UzM2RhOWVhMjFmODk5IHJlbGVhc2UyMi1tYWludAorMjcxOTYgNDFjNGRkYWIzNmYyZTIxZTJjMTM3NDIxOGUyYWUwZGRmNmE1MTY2OCByZWxlYXNlMjEtbWFpbnQKKzI3MTk3IGU0MjcyYWQxYTYzNjk0YTIwZDFiMTUzMmNlYmU0NDlhZjc3M2YzODAgbGVnYWN5LXRydW5rCisyNzE5OCBhZGUxZDU2MTA5YTgyZjk1MGI1OTg5MjAzMDFkNzZhMzJiM2JkYzkwIGxlZ2FjeS10cnVuaworMjcxOTkgZjczMDZhZTg2NjJkYjU4ODIwY2ZlZGIyODQ2NWY5ZDQ5N2VhZGI1MSBsZWdhY3ktdHJ1bmsKKzI3MjAwIGVkMWJhMzdhNDZiNzNmMGM1YjI3MTI0NTU1NGMyZGM3YmU0N2EzMmYgbGVnYWN5LXRydW5rCisyNzIwMSA5ZjBhZDBlYjYxZjA4NmNjZDdhN2YyYTY2MmViZTA4ZDM0M2Y0MDc5IGxlZ2FjeS10cnVuaworMjcyMDIgOGFlMjZkOWJlMWI0ZmMxM2Y0ZGY1OTExYmMxNGE4YzU5ZDVjMWFhZSBsZWdhY3ktdHJ1bmsKKzI3MjAzIDFjZjFmOTgxMjIxOTc5ODk0MzMxNGYxM2FmMjVhMDA4M2JmYmE1YTAgbGVnYWN5LXRydW5rCisyNzIwNCAwNjVhN2YyM2JlMmZkNDRhYzdhYjA5ZTZlM2M3NTQ3Zjg1NTQ5NDg3IGxlZ2FjeS10cnVuaworMjcyMDUgMzU5YTU3ZTk2ZDVlYjYzYmRjNTc3ZTIyZThkNjcwYTM3MDNhZDFiYyBsZWdhY3ktdHJ1bmsKKzI3MjA2IDk1MjYzY2NlYzgxOWNjYzUyZmMxZGViNTgyNDhjYTM2OGZkYzVjYzIgbGVnYWN5LXRydW5rCisyNzIwNyBjODgxNWJkMDFmZjU3OGU1OWE1NjU0NjJiYTBkNTVhYTA5MjkyMTBhIGxlZ2FjeS10cnVuaworMjcyMDggOTAzMTEyYzFjODg3NjA4OGI5N2ZmMTE3NzkzNjIzYWY0YWQ0ZjE0YiByZWxlYXNlMjItbWFpbnQKKzI3MjA5IDNmMTk2YjRkYzRjMTA2ZWMzNjY4YjdmNjllYmZhOTEyN2IyY2YxMmIgcmVsZWFzZTIyLW1haW50CisyNzIxMCA2YzYxOWMxNjFiODdmOGRmZDgxMTI2NTZiMDc2MGY3MmQ2MDk2ZDFlIGxlZ2FjeS10cnVuaworMjcyMTEgODVhNGU3MjdiMTZiYTFlNzNhY2E0ZDViMTI4YjFkM2IxOWU1Y2JmYSBsZWdhY3ktdHJ1bmsKKzI3MjEyIGJkMzdlYjRkYWYzYjY3NDgyOGQ2MGM0OWNhNDg3ZTlkMjE5ZjA3MTcgbGVnYWN5LXRydW5rCisyNzIxMyBiNDgxYmE5NjdhZDgzNzEwZDM2OWFhYTU5NmYxNDNlNTA5MjljZDcwIGxlZ2FjeS10cnVuaworMjcyMTQgYmViNjk5ZTEwYjI5Y2UyMjRlMDEwZTU5ODk0MGVjODI5ODJiMDZkOCBsZWdhY3ktdHJ1bmsKKzI3MjE1IGY2YzJjMDg5ZmRmMmFlMDNlMzc5YjY5OWM0NjMyM2RjMzEzZTg3YzYgbGVnYWN5LXRydW5rCisyNzIxNiA3MjUyYjg2N2Q4MWUyOGVmY2Y2MjllMTA5YTQ5NmZjZTQ4ZThhNGQ1IGxlZ2FjeS10cnVuaworMjcyMTcgYzljOGY1MjNmZjFiNTY2N2ZmZGRkNmMyODE4ZjkzNmNjZWNmZDY4NiByZWxlYXNlMjItbWFpbnQKKzI3MjE4IDg1NDU4M2NkNjNjN2NlNTczYjdiODcyOTJkMGJlNDBjYWFkNDE5ZmQgbGVnYWN5LXRydW5rCisyNzIxOSBkNmFlNTQ0YWNkMjRhMWY3MmNlMDA1MzRmZWQ0NjRmZGU5MWVlNTA0IGxlZ2FjeS10cnVuaworMjcyMjAgNDYyNzVmOWU3NDA3MTBkOWIwZTVhMGFmMjY0YmQ0MmQ5NjcxN2I3NyBsZWdhY3ktdHJ1bmsKKzI3MjIxIDhhNDc2OTI0ZWNmZWExOTRmNDdjMGMyNjYwY2QwNmRiMWQ4MGEzNWEgbGVnYWN5LXRydW5rCisyNzIyMiA4YmM0ZTViYTFmNjUxN2E3ODg3ZTg5MmE4YmM3MmYzMTU1YTgwMjYxIHJlbGVhc2UyMi1tYWludAorMjcyMjMgMmIwNzEzMzcyMDVjMDFjMjY4NWIxYmJmMjJhZmYzYTVmMDU0ZjUyZCBsZWdhY3ktdHJ1bmsKKzI3MjI0IDg2OGNmYmRjYTkwOTY5OWIwYzU2OTMwMGExZTAyNzRkMjc1YThkYWUgbGVnYWN5LXRydW5rCisyNzIyNSA1MDI3ZTdjMTJhMTYwMDNhMDZmYjAzYTBhNDQxZmZjYmVkOGRjOTUxIHJlbGVhc2UyMi1tYWludAorMjcyMjYgNTk4NmRiZDAwOTRmYzNiM2Y0MzI0MWUwMWE5ZThiY2NjYWJlZGJhZiBsZWdhY3ktdHJ1bmsKKzI3MjI3IDZkMDA4YTRlMjYzMzM1ZWZmN2VlMzZkNzUxNGI0N2U5ZDBhZTJjYWYgcmVsZWFzZTIyLW1haW50CisyNzIyOCA2M2VlMzFiYjI1ZjMyNTYwMjkzNzdmNmI3NDAzNjdjOGE4ZTA1MmQ3IGxlZ2FjeS10cnVuaworMjcyMjkgZDdiMzA3YzM3OWM4ZGMxZGQ1ZDAzNmZmYzQ3OWRhNzM0M2I5OTM3MCBsZWdhY3ktdHJ1bmsKKzI3MjMwIGI3OWQ0MzMwNWM3MmQ5NDczZjU4NTM2Y2VhMTkzMWZmOTNhNzNlNjQgbGVnYWN5LXRydW5rCisyNzIzMSBkZmE2ODY2OGQwMGVjZGI1NmFmYmZkYmU0NWQ4NmM1MzYzMDViNjc1IGxlZ2FjeS10cnVuaworMjcyMzIgNmMxYTBkYzg1MWI2YzFjYzM5NWM4NmYxN2FmNjcyOWFlMThjMjM2ZCBsZWdhY3ktdHJ1bmsKKzI3MjMzIDFhNzZlM2M0NTA4ZjM2MzUzYjJlM2RiNjVjZTJmZTdkNmZjY2JiNDMgbGVnYWN5LXRydW5rCisyNzIzNCA0ODdhNmI5OWY3ODExYjBlODEwNmMwM2RkZjIxZTFhNGViMzdkMmY0IHJlbGVhc2UyMi1tYWludAorMjcyMzUgNDVkNjc2OTMzODgyOGY3ZjFiZGEzMDhlMTdhZTQxNzU4NmMyM2VmMiBsZWdhY3ktdHJ1bmsKKzI3MjM2IDhlNjc2MGJmMTg4NGU3Y2I0MDA4N2ExYmY2ZTQ5MzU0NGRiNWI1MTIgbGVnYWN5LXRydW5rCisyNzIzNyA4YWQ4MWIzNzk1NTIwMDU4YWUxYzc4NDNmMDEwMzBkNjJlZjUyYWE3IGxlZ2FjeS10cnVuaworMjcyMzggNjNkMWUzMjYzZjQ1NjJmMzk1NDU5MjYxMzY0MTZiZTE0MjRmOTRlYSBsZWdhY3ktdHJ1bmsKKzI3MjM5IDk1ZTdiYmJkMDk1NDk0NWVkYTk4N2NlNzAxZWEzNzM2NTE1ZTQxNzkgbGVnYWN5LXRydW5rCisyNzI0MCBjMDJkMWM5YTY2MmU2NjVhNDA3ZDUwOTk0YTQ0NGYyMjE0MzE1MzNhIGxlZ2FjeS10cnVuaworMjcyNDEgNDU4OGI2ODIwYTExZTU0YmJkNDA5ZmJlZmNjNTcxOTBiYTViYzU0MiBsZWdhY3ktdHJ1bmsKKzI3MjQyIDE1YWIyOTM5Mzc3OWYxOWFhODNhMmFiZjRjOWRmM2I3Yjc1MDExZDYgbGVnYWN5LXRydW5rCisyNzI0MyA1YWZkMTRhMmE4YmM2Yzg3NjAxNDgxYTY1MmQ4ODFmOTE2Y2U0NzlkIGxlZ2FjeS10cnVuaworMjcyNDQgODMyZjA1MDExNDhiYjc4ZWNmMmVlNDNlMjlkM2IyNjk1YzRlZDE3ZiBsZWdhY3ktdHJ1bmsKKzI3MjQ1IDA0OTlkZjU4ODRkMmY1NGZmYzQzZjA0ZjY3MzFlNDY2NzI2ODUxZDggbGVnYWN5LXRydW5rCisyNzI0NiA0ZjZkMzFkYWNkNWU2N2U0OWM1MmM1NzczOWJlMmNkMDBlZjg5MzE0IGxlZ2FjeS10cnVuaworMjcyNDcgMDg0NzVjODdkMjRmNTBkMjdiODQzZTEyZThlMTA3NjU5ZmQ3NzdjYyBsZWdhY3ktdHJ1bmsKKzI3MjQ4IGJiYWVhZjI3MTljNGJiZTY1NjJlODdjZTBhMGNlOTE4NjU3NmE3YmIgbGVnYWN5LXRydW5rCisyNzI0OSA4YjdkODdlYTQ4OTRlMWQ2MDk2MGJiMDg2ZmQyODUzYjdmNzZhYWQ2IGxlZ2FjeS10cnVuaworMjcyNTAgM2RiYTg2NmU4NjJlOWZmYTYxYmE0NTFiNGI2Zjk3MWQ1MDMwMDIzNiBsZWdhY3ktdHJ1bmsKKzI3MjUxIDAwMGFiNTg0ZTc3YTYxYjQyODhhZWIxYjYzYmNkMGU3NWNjYTU3ZjAgbGVnYWN5LXRydW5rCisyNzI1MiBlYTdlNzE3ZGVlMjcyM2I0MTY0OTk3NjBkNTU1NDdmMDk4MDg2MDIyIGxlZ2FjeS10cnVuaworMjcyNTMgNGM2N2RkNDJhMWQ5ZWEzOGM1OTljOTczNDhmZWNjY2NjN2Q0MWJkOSByZWxlYXNlMjItbWFpbnQKKzI3MjU0IGFiNTM1NWQ4NzNkZDU4N2MxYmVlNDcwMGRkMjAzZjNlOGFhZDdjYzkgcmVsZWFzZTIxLW1haW50CisyNzI1NSAxY2VmNjFkNTk0Nzg2NzFlMDViYjMyNTRhMTZkOGNiMmU2MmU1Y2ZjIHJlbGVhc2UyMi1tYWludAorMjcyNTYgN2I2NmYwMDM0MjMzYTc2Njc0MWMzMzZlNDk2MDFiZjNiNjdkYmMxMiBsZWdhY3ktdHJ1bmsKKzI3MjU3IDQxYWI1MzJkNGY2MDFjY2E0NGNjNjk5NWIwMDM3YjVhOWIzOGRjZTEgbGVnYWN5LXRydW5rCisyNzI1OCBjMTQ1ZmRkZWEzNDA4NGZmNjNhMTkwYmEzNjEyMzRmYzAwODBmMzdlIHJlbGVhc2UyMi1tYWludAorMjcyNTkgZWE5ZDMzM2Y5MDM0ZTFkNTIzNzQ2MmJiODMwMDMyODgzZmVlYWU0MCBsZWdhY3ktdHJ1bmsKKzI3MjYwIGE0NGYzODc3YTM4NmJmMjczODc1NGUxOWM1MzE3OGJkZDg4MGQ0NzcgbGVnYWN5LXRydW5rCisyNzI2MSA4M2U0NThhNjNjM2ZiYWM0Mzc2ZTQyZDk0YjIyZGQ2MzgxMzMzZmQwIHJlbGVhc2UyMi1tYWludAorMjcyNjIgMzI0YzcyNjc1YzhkMDRiNGIyMjUzYzBjYTQyOGI2OGQ0NGRiMmVmYyByZWxlYXNlMjEtbWFpbnQKKzI3MjYzIDAyYzUwNDVkNWI0ZTBhMzI3ZjhmZTg4OTI3NzBiODZlY2E4MzI0ODEgbGVnYWN5LXRydW5rCisyNzI2NCBhZDFkODYyZmI2MzI2NGRmMGEzZjgyMmNjNDg2YTg1NjRlMTE3OTQ3IGxlZ2FjeS10cnVuaworMjcyNjUgODMwNWExOTU4NGJjODhhZTE2ZTY4YThlY2Y1NWVhZDEyMDY2NjAyOCBsZWdhY3ktdHJ1bmsKKzI3MjY2IGY1MDMwYTI5OTM1ZGNhYjNhMzJjZGEwYTg2YjEwMTBhZmY4ZWE3NjEgcmVsZWFzZTIyLW1haW50CisyNzI2NyAyODU3MDJmMDgyNGE2MzdlNzNjOGU1ZjFiYTVmNGJhZmM0MjUyZDEyIHJlbGVhc2UyMS1tYWludAorMjcyNjggMDg5OTQwOWEwY2I2ZDFlMWUzYTg2MzY5ODdjYzM5YzZmZWE1NjQyOSBsZWdhY3ktdHJ1bmsKKzI3MjY5IDAxY2RkMzhkMzVmYTBkMGMyMGIxZTNmMzNmYTlmMWEzOGFkZGQ1NzMgcmVsZWFzZTIyLW1haW50CisyNzI3MCBhMDdiYzMwM2E2MGQ4YWUzYjc0ZTU5NWMxNjBjM2M4OGZhZjU1MTY4IHJlbGVhc2UyMS1tYWludAorMjcyNzEgMDY2Zjg5MzgwNzFhNTUwODhkZGY3ZGZjY2I2OTIyODFhZmJjM2E5MCBsZWdhY3ktdHJ1bmsKKzI3MjcyIDRmMDYwNmNlZWVmOGM5NDM5NGViMmJjZjI5M2UxZGU1MDVlMzU3MDIgcmVsZWFzZTIyLW1haW50CisyNzI3MyBlOGJhZTI1Mzc4NGIzZWRjYmNlMTMyNjQyNzRjYmU0NzM3MjJiNzdkIGxlZ2FjeS10cnVuaworMjcyNzQgOWNlNzFiMWNjMTdmNzE4ZTljYjkyNTBjYjIwZGYyN2MxZWQzZWE3MSByZWxlYXNlMjEtbWFpbnQKKzI3Mjc1IDczY2Y0ZDg0NzU3MGVjYWFiNTQ4NTI0M2RhODdiZWE0MTU5MTA5N2MgbGVnYWN5LXRydW5rCisyNzI3NiA5MmYyODljMmY3YzYzZDk3N2IxNTkxOWU4YjM4ZGFmZTQ5ZDM1OWJiIGxlZ2FjeS10cnVuaworMjcyNzcgYjE2ZDRiZTZhMjMyZWUxODExMTg0NzVlMzBkMGFiOTFlNGU0NTFhYiBsZWdhY3ktdHJ1bmsKKzI3Mjc4IDkyMTA2NGMyNjI5N2IyNWViMjNiYTk2ZDRjYzFiZWIxNzQzYTU4Y2YgbGVnYWN5LXRydW5rCisyNzI3OSA2ODkzY2VlYzg2MTBlOWM1NDg0MzQ2MWQ0OTM4ZDc5NWYyZmE0YmE3IGxlZ2FjeS10cnVuaworMjcyODAgMDc1Zjc1NWE2NWRhMTZiZGVmZmYzNzA5MDBhODM5MjJhMDU0MTYzNCBsZWdhY3ktdHJ1bmsKKzI3MjgxIDEyOThlOTdmYjM0M2FkYjE2YjJkZDFlZGJkM2M0NmNlNmM3NWRiYTEgbGVnYWN5LXRydW5rCisyNzI4MiA3ZTNlYWM1ZDMyOTk3OWNkOTYyMGY4ZTBiMWZlMzRhNTg0N2NhMGRlIGxlZ2FjeS10cnVuaworMjcyODMgNjIwYjY5OTY4NWZmMDQyOGQyOTU2MGM5OTc5YWMzMmQzZTNkZmExZCByZWxlYXNlMjItbWFpbnQKKzI3Mjg0IGZmMGNkNjg3OGJkZGU1ZmJmMjM2NTc1NzExYTA4NWQzNGI1NzA3NmYgcmVsZWFzZTIxLW1haW50CisyNzI4NSBjZTE2M2YzNDBjZGZmNWMzNjIyZjk2MjI4ZWI4MWJlMzE0MmE2ZTkwIGxlZ2FjeS10cnVuaworMjcyODYgMGJjZWYzY2EyMWMwNmEzNzIzODdkMTkxOGU5NzU4ZWQ3YTM5YzcxNyBsZWdhY3ktdHJ1bmsKKzI3Mjg3IDVmNjlkNmYxN2FhMzEwOTJkNzA3N2FmMmY4Y2RiODc1OGMyYTMwYzcgcmVsZWFzZTIyLW1haW50CisyNzI4OCA4MTVkMDI4MDBkOTgwYmYwMjEyMDg0NDk1NWZmZDA4MjgxNDVjOGY2IHJlbGVhc2UyMS1tYWludAorMjcyODkgYmFlOTk2YmI3ZDgyY2UyZGVlOTI0MTc3MWY0YTJhZTVjYzI1OTc2NiBsZWdhY3ktdHJ1bmsKKzI3MjkwIDM3NTYwZjQzNGY2YTJiZWFlMGRhNmQyYTc1Y2IxNDFjMTg3Y2RmNmYgcmVsZWFzZTIyLW1haW50CisyNzI5MSAxMmY0OWZhOGY0N2YyYWJhMjQ2NmJmMjA0YzFjNDE5ZTE4ZWIwN2YzIHJlbGVhc2UyMS1tYWludAorMjcyOTIgOTIxMWJjNzI0OWEwN2ViMzQ0MmQ0Y2NkMDUyMjYzYWU1OTU3MDUxNiBsZWdhY3ktdHJ1bmsKKzI3MjkzIGZiYTdkMTAzNWZlZDVlZmMxYWE0MDMzMWExMGM0N2I1YzNmY2U0ODggcmVsZWFzZTIyLW1haW50CisyNzI5NCA1NTg2ZjIwODU4MTU4NmI1ZjkxYjhkOTMwN2MzNDQzZWVlYmI3MzQyIHJlbGVhc2UyMS1tYWludAorMjcyOTUgOTcwYWE5NzEyODEzMWFlNDk3N2U3OTkyNzA2MWQwNGQ4ZTI5MmFiYSBsZWdhY3ktdHJ1bmsKKzI3Mjk2IDdkZmU0OGM3YWE2NWUwYzZjZWNkMTVlOTgxYWZjMGFhODRiMDg2YTcgbGVnYWN5LXRydW5rCisyNzI5NyAyNmJhMTdiNzU4YjllZGQ5OWJiZGNjZTk0NTg2NTU1OTZmNWRhNDdmIGxlZ2FjeS10cnVuaworMjcyOTggOGViMmYzMWVlYTllYjNlYWUyYWEyYzY0Mzg2ZjI4OWMwNDFhMDViMyBsZWdhY3ktdHJ1bmsKKzI3Mjk5IGU1NThhNDBiNmI1MjMxMTYxMGQ4YjA5MWU0ZjM4YzA4YjJhYTMxYmEgbGVnYWN5LXRydW5rCisyNzMwMCBlYWI4ZWNhOWVjNTFkMmI5MmY3MjlkYTIzYTUwM2ZkMjk4ZGNhNGU4IGxlZ2FjeS10cnVuaworMjczMDEgNWEyMzAyZjc5NzI0OWU5YTE2NmMwNjkxMDg5YjlhZDQ1Yjk1YTk1NSBsZWdhY3ktdHJ1bmsKKzI3MzAyIDMwNDJkYWQxNDlhZTczZTczY2QyYzU0OTI1N2IxODlmMGVmZjQwYWIgcmVsZWFzZTIyLW1haW50CisyNzMwMyBiNWJkZTc3ZGEyMGUwN2NmOTE3ZGE4ZmZjYjI4MmI4MjE5MDg2MjE2IGxlZ2FjeS10cnVuaworMjczMDQgZDNiNWZhZmVjYjI5ZGY4ZmFlMWY2YzY2OTJiMWI3OWZiZGYxYzBkYyBsZWdhY3ktdHJ1bmsKKzI3MzA1IDM1MDBkYTY2NmMwYzNkNjk2ZTE3NzllOGQzMWFlYmI0MWVmYWNiY2EgbGVnYWN5LXRydW5rCisyNzMwNiBkNjJlNjg0NTQyYjliYmY1MzY2Y2ViZWQzZGFjMzExZWE3ZWM5YjBhIGxlZ2FjeS10cnVuaworMjczMDcgODRmMDkyYjEwNmVmYjkwZmRhNjAyOTExMTZkNjYxODAzMjVhN2QwMSBsZWdhY3ktdHJ1bmsKKzI3MzA4IDgzMzU0YzJjYTM5MDNkMTZiNDE1OWQ4ZDNlYjIwODUzZmJjOWM1YjEgbGVnYWN5LXRydW5rCisyNzMwOSBhNjBhM2Q5YzZmZDlhNmU4NjNhODM4ZTMyMDgxYmNlMDU3M2MyMmQ2IGxlZ2FjeS10cnVuaworMjczMTAgNmUyYTNjNTcwMGFjOWM3YTExZGJhNjc1YjQwNTZkZjM4NjY0OTRlZiBsZWdhY3ktdHJ1bmsKKzI3MzExIGRlNjI1NTE3YWRlODAyZDRkMzNmODRmOGNiZDdkNTgxMThiZDU1YmUgcmVsZWFzZTIyLW1haW50CisyNzMxMiBhZWE4ZmIzZTNmM2Q3ZGI4MzVkZTdhMzEzODg4ODhlOWVjMzdhMjdjIHJlbGVhc2UyMS1tYWludAorMjczMTMgODVlMTIwNGI2NjE3MWJjZjdhOTgyYTBjMGQ3MGRlMTFiYjRkYjEzMyBsZWdhY3ktdHJ1bmsKKzI3MzE0IDY1MmYxYjMxOGU1YTA4MWU3ZDVjZDE0NjI4MzllZGUzMzY0YzczMGIgcmVsZWFzZTIyLW1haW50CisyNzMxNSAzNzExOGI2ZTVmNDYxMjRjYTQ0NjBiNzJiMDI1MTdiNjBiZTU5NzM5IGxlZ2FjeS10cnVuaworMjczMTYgODNhYTk5ZGVkYTc0ZGUxNThiNWQ5OTI0MDU3MjkwODkxMjBlNjZiNyBsZWdhY3ktdHJ1bmsKKzI3MzE3IGVkNjJjMDRiMTlmNTIwZTM1OWI2ODE1YzBlM2JmZGIyMmY5N2RlOGEgcmVsZWFzZTIyLW1haW50CisyNzMxOCBmN2NlNjk2OTc5ZTE4YjAxMWE3ZTQwNzc5NWYxZDk4YWEyMzI0YzQzIGxlZ2FjeS10cnVuaworMjczMTkgZDRiZDY2MDE3MDFkMzVkYzk3OWZkN2E5OTU2ODVlOWY3Zjc0ODFjYiBsZWdhY3ktdHJ1bmsKKzI3MzIxIDM4MzRjYjBlN2JlNjVjNWNjYzg1MDMwOWQxNmViYTU2NDlkNjE3YmMgbGVnYWN5LXRydW5rCisyNzMyMiBjYjA4Y2E1N2UyYTk2NjI4ODcxODA3ZGRlYTI0ZjQ0YmEzYjUxMzkyIGxlZ2FjeS10cnVuaworMjczMjMgMTFhNmQ5YjVmOTkwNjU5NmExMWE4ZTNhMmFlOTI4MjgxOGVhZWMxNiBsZWdhY3ktdHJ1bmsKKzI3MzI0IGFhMjM4NzcwZDgwOGY1M2VlZTY2MWVmNThmZDMzNTNmOWZhN2I2M2IgbGVnYWN5LXRydW5rCisyNzMyNSAxYTJiNTM0NGQxY2NmM2U2MTQ4ZDA2MWU5OTY0ZWQwOGI3Mzg3MGJhIHJlbGVhc2UyMi1tYWludAorMjczMjYgMDNiYmE3MjgyODUyY2JkMmFjNGExYzhkODQ2M2RiYjQwNzNmYmNmYiBsZWdhY3ktdHJ1bmsKKzI3MzI3IDMxMzgxNjcyMDFhYWNkNzhjYzNlZTJmNTY5OTA1N2RiYjQxNTYyMGUgbGVnYWN5LXRydW5rCisyNzMyOCA0ZWVkNTFhZDQ5M2Q0ZWYzYTVmM2M5MWU0MzhmMGQyM2MxMDk5Mjg0IHJlbGVhc2UyMi1tYWludAorMjczMjkgMDk2YjQ3NWUxYmVmMDI1ODM3MzkwY2M1OWY4ZjhmNDRjMjJlODc1MyBsZWdhY3ktdHJ1bmsKKzI3MzMwIDdkOGM2Yjg4OWI1NGUzMDFkZGZhOGM2MDc0MmY0NDYzNDU0ODVkMjYgbGVnYWN5LXRydW5rCisyNzMzMSAxMTFjMWU1OWFkNzJlYTAyNjUxNTNiMDIyNDIxYmVhZGNkMjcyMDBhIGxlZ2FjeS10cnVuaworMjczMzIgZjU0MDVjNmVjNGFjZDM2OWQzZTI5MzY2ZmUxYTA5MzU5ODc3ZmU1NCBsZWdhY3ktdHJ1bmsKKzI3MzMzIGY3ZTE5MWM4ZGIyM2YzMjY2ZmEwNTkxYzExMzAwZWUzN2ExNGM1ODcgbGVnYWN5LXRydW5rCisyNzMzNCAxZmUwMDVjNDI4MzY4N2JjNWE1ZDYxZTE2M2MyNDU4NmVhOGM5YjI0IHJlbGVhc2UyMi1tYWludAorMjczMzUgMjViMGFmMjdkZGM4NTcyZDEwMDFjZTZkMDA1NWZjMDI1YzFlYWJkMSByZWxlYXNlMjEtbWFpbnQKKzI3MzM2IDFhODA5NmJiNGM0ODI4MGM0OGMyNDJmOGEwMzZiZDk1NTgxNTcwM2QgbGVnYWN5LXRydW5rCisyNzMzNyBlMmZhNzQxYzU0N2Y1MTUxMGRhZjZkNTdhYTQ4N2RjMDVjYTk1MmNjIHJlbGVhc2UyMi1tYWludAorMjczMzggZWRkN2MwMTQ2YWM4MjRmNWI0ZTRjOWNjNTVmMmFkYjkzZDNhZmJlOSBsZWdhY3ktdHJ1bmsKKzI3MzM5IGE3Mjk5N2Y3ZGI0YzcwMThmNWI5NTQ0ZDcwNzYxYzVmMzg4YWEwODkgbGVnYWN5LXRydW5rCisyNzM0MCA3ZWJkMmNkM2FlZjAxYjczOTZiODEzNjM4ZmZjOTA4OTdlNmZmMDY5IGxlZ2FjeS10cnVuaworMjczNDEgODE0OWQ5NzhiMDA2Zjc3MGE5MWE3OTk4Njk2YjYwNDFlZmZkMjQyZiBsZWdhY3ktdHJ1bmsKKzI3MzQyIGZlOWM3MTMyYTg2N2U4ZTdhMmE4NTQ0NjJkZDg5OWJiZTAzYTU4OWMgbGVnYWN5LXRydW5rCisyNzM0MyBjNjlkYzQzYjcwMGE5N2Y5NWY4NWZjNTA1YTEyYjQyNmNiZTgzOTQzIGxlZ2FjeS10cnVuaworMjczNDQgNDgxZTRhNGI4ZGUwNjljMTU3ZDBkNzM5Y2M2YWRlNGMwYWZmZTRhNSByZWxlYXNlMjItbWFpbnQKKzI3MzQ1IDM2MDBkOGQwNzM1ODMyOWQ3N2VlNDZlOWNmZmYxNDJkZmNkMWVjZjIgbGVnYWN5LXRydW5rCisyNzM0NiBhN2IxNjllZjgzZWFjYzFjZjgzMjIyYTgwYjkzMGNkNjE5MmUyZmZmIGxlZ2FjeS10cnVuaworMjczNDcgMjZhMGQwZGExMzEyYzNjMGNmYzY2ODBmMjJkYWVlOGZiOTRjMWFmMiByZWxlYXNlMjItbWFpbnQKKzI3MzQ4IDA4MjViZDdiNWI1NThlMDFlOWE0NDRhMGUzYjQ4ZDhjZDQwMTQ4MmIgbGVnYWN5LXRydW5rCisyNzM0OSAzNWM5ODk0ZjA2Yjk2MGNlMTA1YzM2MjlhYzdkMmU3Zjk0YTFhOWFhIGxlZ2FjeS10cnVuaworMjczNTAgMzI0NjNlOGU1ZTFhZTZjZDk4MzRjMTE2N2M1Nzc5MzdmNTc4NWZlMSByZWxlYXNlMjItbWFpbnQKKzI3MzUxIGExODFjY2NhMTMxMjgzMmRjMmIzYTAzMmVlY2ZmMmVjOWE1YjM0MWMgcmVsZWFzZTIyLW1haW50CisyNzM1MiBkN2E2MjA0MmU3ZWZhNTk1MGQwZjViMjU3NmVmOTA0YWZhOGJkYjA5IGxlZ2FjeS10cnVuaworMjczNTMgMjEyZWU2MzY1YmZmOTgzZDkxZDg1MTk4NDJlMzRjYzYyMDg2M2Q2NiByZWxlYXNlMjItbWFpbnQKKzI3MzU0IDdkOGExNTA0OTZhOGYwNmQwNmEzNzAyNTg4ZWQyOTYyZjhlYzMyODYgcmVsZWFzZTIyLW1haW50CisyNzM1NSBkN2Y4NTEyZGE0MjM2YzlmYzFkNTk3MzBmYTZjOTE3NjExZDYwZjI1IGxlZ2FjeS10cnVuaworMjczNTYgYTU2MjkyNzMyNTY2ZGQ0NzgyNGEwZWEyYTdiMmZiZGE5YjFjNWUwOCBsZWdhY3ktdHJ1bmsKKzI3MzU3IDg4NjMwNzZlMmRmOTMwNzc3ODYyNWM0ZDk5ZDkyNTZlYzJlZDE1OGIgbGVnYWN5LXRydW5rCisyNzM1OCAzM2VhNTIyZGQzZDIyZWE5OTEzY2UyN2ZjZGZmMDQ3MDViNTU3MDE5IGxlZ2FjeS10cnVuaworMjczNTkgYjc3MTg1N2VkNzg4OGRlMzNiOTY4YWJlYWEzODczOGJkOWFlNmVhZCByZWxlYXNlMjItbWFpbnQKKzI3MzYwIDRhYjlkZjI0MTZmOTM2ZGMyYWYzN2ZiMDQ3MWUzNDMwMTNjMjM5OTggbGVnYWN5LXRydW5rCisyNzM2MSA5NWRhOTkxODdjNTc1NDIwOTM3ZDdlNWYyMTE0YTUwNjlhZDQ2ZDM0IGxlZ2FjeS10cnVuaworMjczNjIgYWQ2ZmExYzA0ZTQ3NDc3MDhkZGFiMjIzZTVmMmFjZTdlYmUwMTg3OSBsZWdhY3ktdHJ1bmsKKzI3MzYzIDQ4YWQ0NzBjMWY4ZTE2YTQyYWQxOTM5NWEyODZiZmRkMWRjZTJkZWIgbGVnYWN5LXRydW5rCisyNzM2NCA0MTQ2OGY5MzUzY2U5YTg5MzMzM2MxNzIwMzI4NjE1NWYwNDY0YjRiIGxlZ2FjeS10cnVuaworMjczNjUgNzAzZTYzYWUwZjAxZmM0ZGYwMGNlYmMyNDhkODI2NDJiYjQzOTMwMSBsZWdhY3ktdHJ1bmsKKzI3MzY2IDFmNjUxMDA1MWM4YWU4NjJkOTJhNGU0YTI3ZmUyODIzZDdiZDUzMzEgbGVnYWN5LXRydW5rCisyNzM2NyBkYWI4NzAxYmQzZmEyNGI0MTVlOGMzY2ZjZjFhNTAzYThlY2VjYWY3IGxlZ2FjeS10cnVuaworMjczNjggNGU2M2U5NzcxZjMwYzUwOTg0OTYxNmQ4ZWU3OWRmYjJmN2E1MTY1NiBsZWdhY3ktdHJ1bmsKKzI3MzY5IGI4ODc1ZjE2YTRiZTU0NWYyYjc5MDQ0ZmY0ODE3MjA3YjUwZWUxMjkgcmVsZWFzZTIyLW1haW50CisyNzM3MCA0NWI5ZTEyMmMzM2E3YTFlZGYxODIyYTM3ZGIzZWQ2ZWRmZTI4ZjQ3IGxlZ2FjeS10cnVuaworMjczNzEgYjcxZTBmOTZkZTIzMzU3YWYzMjA4MzNmMmFiYWUwN2ExMGZiODBlMCBsZWdhY3ktdHJ1bmsKKzI3MzcyIGVhMTg3NzhkZjZjMzcwMDhjMjE5YWQ2OTJiYjNlNTJjODZhN2NhY2MgbGVnYWN5LXRydW5rCisyNzM3MyAxNGUyZWI5ZTVlZjJiZWE2MGFiZDhiMTQ5YTVmYzMxYzk0ZDRjNDZmIGxlZ2FjeS10cnVuaworMjczNzQgMTlhNjA5NTE3YWI4YTZiZjUyYjNjOWU0M2Y5MzU4YzgwNzRiMmZhYSBsZWdhY3ktdHJ1bmsKKzI3Mzc1IDE0ZDhlZTFlOGRlNWNjZDE0YzUxMDgwMjQ3NGYwZmE2NGJiNmMxOGEgbGVnYWN5LXRydW5rCisyNzM3NiAwMGU1NzhmNzhjYWFhMmE4NzYzZWQwYzUyN2U1ODNmMzJkZjQ4MDg1IGxlZ2FjeS10cnVuaworMjczNzcgNDRmN2ZjMzA3NjczNjgzODQwNDhlMjA3NTU5ZDk4ZTRlYzUzZTdkMCBsZWdhY3ktdHJ1bmsKKzI3Mzc4IGM4ODI5MDQ2MDc5MTljYTMxZGE3NGRhYjFjNzM5NTkwOWRlNzNhNzQgbGVnYWN5LXRydW5rCisyNzM3OSBkYzg3MmEyZjUxM2I0NDIxYWMwZTk0Y2YxMzlkZTQ5MzE4Y2Y5MTAzIGxlZ2FjeS10cnVuaworMjczODAgOWQ4OWE5YTA1NGUwNDA5ZWYxMzdlNWVmMjU4NmE1NmI0N2U2OTViYiBsZWdhY3ktdHJ1bmsKKzI3MzgxIGU4YTI2M2RiMWJlMDMzYWI1OWNiZjRmZjMzODk5MWMxNjk4ZDNiNzYgbGVnYWN5LXRydW5rCisyNzM4MiA3MWYxM2NmNGY5ZTJkOTMyYjVkOTg5MDRmNDY3YjZiODE0MDY1M2Y0IGxlZ2FjeS10cnVuaworMjczODMgMmU1YTFlOGMwYjQ4MWQ2NGEzOGZmZGU1ZGVmNWI3YzA1OTBlYzRhOSBsZWdhY3ktdHJ1bmsKKzI3Mzg0IGVkZjk1MGJmNDIzMjU4YzZmYTYyNjQzOWNlNGY0ODcxMzRmNGRiM2MgbGVnYWN5LXRydW5rCisyNzM4NSA1ODQzM2I2NmY1ODM4OTgwNmQ3MTc3ODU5ZjkwYjVlYTk4M2RiNTQ2IGxlZ2FjeS10cnVuaworMjczODYgN2Y4M2IyMTI0YjRlZDM5MzZlY2U5OTViM2I4NmY3Zjc2ZWRlYTUxZSBsZWdhY3ktdHJ1bmsKKzI3Mzg3IGQ4ZGU5YjVmNTYxZWVlOGVmMjQ0NjU2MTQ2NWE0YTQ3MjNkYTRhMmUgcmVsZWFzZTIyLW1haW50CisyNzM4OCAzODQ4YWEzZWRhZmM2Yzc3MzQ3OTliNzcwODY4YjViYzJjNzBjMjAyIGxlZ2FjeS10cnVuaworMjczODggNzRkNWNkNjk4YmJmNzFjZDliNGI5NjQxOWQ5MGMwOTA4ODM1YzRhZCByZWxlYXNlMjItbWFpbnQKKzI3Mzg5IGZjZjJlMDFjNjE2YTYwNGVhZjBmNTM1YTVlODhmZTI3NDMwYjhjZmQgbGVnYWN5LXRydW5rCisyNzM5MCA5MTM1NzBhYjA3Mzc0MzM3NzkzNjJlODE2MjM4ZDNhNzRiYTc0ZTUzIGxlZ2FjeS10cnVuaworMjczOTEgOWE5ZDZjZTVlZDRlMjI1ZmM1Y2YzZjc2ZmEwZjM5NzFkM2I1ZWE2YyBsZWdhY3ktdHJ1bmsKKzI3MzkyIGJiZmVmOTQ4YzQzZTgwMDQxYzUxZmZmODhjM2FiNzJkZGMxOGUyYjUgcmVsZWFzZTIyLW1haW50CisyNzM5MyA3NDM2ODk4N2Y3ZjBhMDNkZTE5NDVlOGY3Y2RiZmIxYjA1YmM3ZTQ2IGxlZ2FjeS10cnVuaworMjczOTQgYmJjZWU3NDc4ZmNiODQwNDg5NzVkZDQ0YTFhNzk4ZjFhNzQ0ZTNiMiBsZWdhY3ktdHJ1bmsKKzI3Mzk1IDM0YjhjZGJiZDhmZTMzOTRlNTRlYjU4N2M4ZmFhZWJjYjhlZTY0YzAgbGVnYWN5LXRydW5rCisyNzM5NiA5YjZkMjU5YzI1ZWI3ZWE2MDFlZTRmY2I5MWE2ZGQ1Y2NiMWQwYjUyIGxlZ2FjeS10cnVuaworMjczOTcgNWI1MDhjZTA0OWY1ZDA4NWIzNjE5ZGU2NWNiYTc4M2ExYmQwMTVlMiBsZWdhY3ktdHJ1bmsKKzI3Mzk4IGM0ZDY4ZjgyYTZkZGI4MTY4Yjg5MGUzM2M3MzBiODA1ZDUwN2M2ZWIgbGVnYWN5LXRydW5rCisyNzM5OSBkMTBmMWM2ZDllZTk0MzA2ODI5NWUwMWE1ZjUwMGEyMDU5MWExODY1IGxlZ2FjeS10cnVuaworMjc0MDAgYzEwYzA5MTkyYzEyYmNhMWUxYzkwODUzMWViZjY0ODk0NDRhNjk0ZSBsZWdhY3ktdHJ1bmsKKzI3NDAxIDA3ZTc0OTkzNTczYzViNWVkNWNhNjVjYWUyYWRjZDE2ZTkzZWRmZjYgbGVnYWN5LXRydW5rCisyNzQwMiAyNzVkMDRhMzU1NDIyNjRiZDIyYjNjZDg1YWNkNjhkMjBjZmIwMDg4IGxlZ2FjeS10cnVuaworMjc0MDMgNzdhOTZhYzRkZGU0YzA4MDVhYTYxNmZhOWJkNzEzMzEwMjc2ODcwZSBsZWdhY3ktdHJ1bmsKKzI3NDA0IGVhZTQ5NmVmYTQ2MDEzMjc0NmM1MTNlMWQ4YWMyNjUxOTZmMWJkYmIgbGVnYWN5LXRydW5rCisyNzQwNSAyYzIyNDVhYWNlZjg4ZmM4NWU5NWQwYTQ5OGUxOTE4MjZmNjQxMDZjIGxlZ2FjeS10cnVuaworMjc0MDYgOTM3NzE1ODY1MmRkMGQ0Yjg2YTFlYzJiMmZjMGI1MWFkNTBmOGY0ZiBsZWdhY3ktdHJ1bmsKKzI3NDA3IGEzZDYxMjhhZmIyZTU1MzFjOTJkMDE1MDc2M2Y2ZGQ3YzMyOTg3NTkgbGVnYWN5LXRydW5rCisyNzQwOCBhNzhkNDFlZTk0NzRmNzYxNzRhMWNjMmMxNDVlMjUwMjk2ZGIzMzJlIGxlZ2FjeS10cnVuaworMjc0MDkgYWYwNTMyZjIzYWIzZmZmZjllNzAwNDE3NmFkNTM5ZWIwYjdhZTQ1YyBsZWdhY3ktdHJ1bmsKKzI3NDEwIDYzZmJiZWQxMDcxNGFhNTQ2ODBkYjhmNjU2NWJmMDVkNDM0ZjdlMzYgbGVnYWN5LXRydW5rCisyNzQxMSBmZWYzOTdiMWI4NWMzZDg5ZjdhZDRjY2UyZDYxNjBiNWFjZTlhZTliIGxlZ2FjeS10cnVuaworMjc0MTIgOTBjY2E4NTdkMjAzMjJhMWIyN2U3ZmE5ZTY4YTJiNGQ2MTJiOTE2NyBsZWdhY3ktdHJ1bmsKKzI3NDEzIDQwNDYyODJjYjMzOGNmN2U1MzZhYTEyNDZiZmNmMjUzNjhmMGQ5MzkgbGVnYWN5LXRydW5rCisyNzQxNCA4ZWE4NjU2NGZiMzI2NDM5ZmVlZjZjMGE3OWJhOTNlZjZkNDQ1NzQ3IGxlZ2FjeS10cnVuaworMjc0MTUgYmM2YWFlNzRkZGZlNWM0MGIzZTc1MzY2MWU5MzRmMTRlNjdlYmRhOCBsZWdhY3ktdHJ1bmsKKzI3NDE2IDJjNzliMWE4ZDYxNjUzOTE1MWY2ZmY5ZWE4MjMyZjk1YmJjOTcwMGMgbGVnYWN5LXRydW5rCisyNzQxNyBkOTNmMzQyMDE1MDM4YTc5OGY2Nzk1OGQzZGFiMDc3NWUyZWE4YzkyIGxlZ2FjeS10cnVuaworMjc0MTggNzE4NDBhMWJkODJmYzdjNDY0N2I0M2IxMWI0MjY4MTlhM2UyZGMzZSBsZWdhY3ktdHJ1bmsKKzI3NDE5IGE5MjIxMTJkNzgwYzU4OTdmZjQ0NTcwYzgzNGEwNGY5OGM4NzYyYTcgbGVnYWN5LXRydW5rCisyNzQyMCBjYjE2OTk1YWE3ZTgwOWVlMjRlNzNmYWRmNmRkZTQ0NzMzY2JkMjYxIGxlZ2FjeS10cnVuaworMjc0MjEgOTkxM2NmN2M0MDg2MWZmNDk0NGM5OGNmZWZjYTJjMjQ4YzhkOGY4ZiBsZWdhY3ktdHJ1bmsKKzI3NDIyIDY3ZjJiNDBiYWI3MDcwYTJkYTA1NWMwMWViM2NmZTVlNmViYWNlY2MgbGVnYWN5LXRydW5rCisyNzQyMyBlOWE2YTBjNGIzM2YzYzhkZmRkZTE3ZmYxNGU5YTJhMGRmMDgwYTZmIGxlZ2FjeS10cnVuaworMjc0MjQgZGNjMmI3NWQ3YTc4YzBmNGQwNDFiOWQzMjM2ZDYwYmNlYWE2ODM1MSBsZWdhY3ktdHJ1bmsKKzI3NDI1IDE4NzE3MzM1MjQzNTQ5NjVjZmU5YjJkZTdjZDY5ZjM2MWQ1MDU4YjYgcmVsZWFzZTIyLW1haW50CisyNzQyNiAzN2ZmY2UyZDljM2NlMDUzNmYwZjU5Yjk0YmE2OTEyYmZhNmYzYWZiIGxlZ2FjeS10cnVuaworMjc0MjcgZDI0YzhjOTQ2NzQxYmZiNzk3MzMxYzkxNjc3YWEwZmUxMjFhMzkzNyBsZWdhY3ktdHJ1bmsKKzI3NDI4IGRkOWQyZWM5NmVhZDBjZTcyNGEzNThmZjY2NmJlODg2MWZlMDc1MTMgcmVsZWFzZTIyLW1haW50CisyNzQyOSBiOWUwYzU3NTMyMzgwODRiNjVjYjgxZWVjMjYxMzVjZWZhZDhlZTAwIGxlZ2FjeS10cnVuaworMjc0MzAgM2U4NjNhNjViMWE0NDJjZGM0NmIzNjE0NmIwMTRlOTliMzNiODZlNCByZWxlYXNlMjItbWFpbnQKKzI3NDMxIGU4Nzg5NzUxYTVjY2MzNjY1MTQ4YmYxYjk5M2UwNzI5MTE3MTMzZmMgbGVnYWN5LXRydW5rCisyNzQzMiA5MjgzNGEyNDhjMTVjYmY3ZWYzZmMxNGQ4NDE4YjhhODAzMmFlNDhlIGxlZ2FjeS10cnVuaworMjc0MzMgNjBlNDFhNTRlN2IxMDliMjBiZjAxMzAzOTVlMDlhYTkzMTMyNzI3YyBsZWdhY3ktdHJ1bmsKKzI3NDM0IDJjNmY5MzFkOGRkMjUxNDFiYmE2MGU3YjQzNjc5ZmNjMzhiN2M5ZmEgbGVnYWN5LXRydW5rCisyNzQzNSBjNzk0MzJmZWI4NjIxNTRhYTg2ZmY3ODI4MGY0NzRiZWQ2MWYxOWNjIGxlZ2FjeS10cnVuaworMjc0MzYgNWFmOTA4MWE2Y2Q0MDllNGFlYjEwOGEzMTFmMmJhYmM2ZDMwMDM4NSBsZWdhY3ktdHJ1bmsKKzI3NDM3IDBkOTcxNmMzYjhlY2YzNWM5OTI0ZmZlMzA0ODRhMzY2ZjJjNmUwYWYgbGVnYWN5LXRydW5rCisyNzQzOCBiMTI4MjU1YzJiZWE3MDc3ZGIzMjg5ZWRhMjhlNDQ0OTNhODQ1MDY4IGxlZ2FjeS10cnVuaworMjc0MzkgODE0MmY4ZDY2OGEwZjRhYjdhYWZlZTkwYmVjOWJiYjMxNzI3Y2UwNyBsZWdhY3ktdHJ1bmsKKzI3NDQwIDg2YjM3NjBkMjg1ZDYwZjZkYzkyMjZkYTdjOGRiZTI3ZjVlZjAzYzYgbGVnYWN5LXRydW5rCisyNzQ0MSAxMzE0NjQyY2EwOTc2YmJmMGViYzU2M2JiY2E4NDZjZjUyYTg5YTg1IHJlbGVhc2UyMi1tYWludAorMjc0NDIgYTE4MDVhNTQ2NjZmYmJmZDkxYTBjNmYzMjhiNThlMjEzMmRmMDc3MiBsZWdhY3ktdHJ1bmsKKzI3NDQzIDMyZGIwNzVkZWYzZjU2NGI1YjZiMWQwMTI3YWQ0YzVkNTAyMWY4M2EgbGVnYWN5LXRydW5rCisyNzQ0NCA5NWNjZDViYmRjODZkNGYyNWNkOGY5ZTlkNDk2YjM4NzRmMDU0OTY3IGxlZ2FjeS10cnVuaworMjc0NDUgYTUxNjJmZDY1YzNkNWJiMGQ5ODYyYjgzMzk1OWY0YWE5YjY2MjQxMyBsZWdhY3ktdHJ1bmsKKzI3NDQ2IDcwMmE1OTAwZGY3ZDY1ZjlkNDA2OGIyNTEwMDg5ODc1YzY4YzY5NjMgbGVnYWN5LXRydW5rCisyNzQ0NyAxODNlYmEyZDIyMTQwYzFlMWViYTVjNjNjMWUyZGZkYjZlNTk3YTQ0IGxlZ2FjeS10cnVuaworMjc0NDggMTU0NDdhNTU3M2JkMTE0ODkyNzNlNTE0MWUzMDBkZTIzMDAyMTQxYyBsZWdhY3ktdHJ1bmsKKzI3NDQ5IDgwMDkxMmY3ZGYyZTM5MmEwNDhkMTZmYmJkOWRjYTMyMjU0Yzg3YmYgbGVnYWN5LXRydW5rCisyNzQ1MCBlNjZjZWQ0ODFjNzdhNGJjYjI1NTQ5ZDllMzA5YWFlODVlYzJiMDBiIGxlZ2FjeS10cnVuaworMjc0NTEgZDcxMjZjMzQxMjhhOWQ5YmQxMzM2NmYwOTE2MGZiODRmMTllZjU3ZSByZWxlYXNlMjItbWFpbnQKKzI3NDUyIDZmZWQxMzQyMmJiMWFhZmQxMjM5NjE5Y2ZjMzVlMWY3M2IxZWYxYjUgbGVnYWN5LXRydW5rCisyNzQ1MyAyMmQyZjAzN2FmOWQzYzRjZWI0M2M2ZWM1MzRmZDUwYmIyZmM1MmZkIGxlZ2FjeS10cnVuaworMjc0NTQgODZkZmI5NmExODMxZmQyN2VhYTNhMGMzMzQ1ZDJmMGNmMTUyOWNjMCBsZWdhY3ktdHJ1bmsKKzI3NDU1IDM1NWU0NmNjMTI0ZmYxMTE2ZTQ1Y2YwMzNlMmYxNGJjZWE4MDk0OTMgcmVsZWFzZTIxLW1haW50CisyNzQ1NiBiNzRkNGE1OTc5M2FhZDQ0N2I1MTVjMjFjOWQ3MDk2ZWI3MGRiMjUzIGxlZ2FjeS10cnVuaworMjc0NTcgYjE4NWM4NTk1MmZlODM4ZDcwOWEzNjA1Y2I3ZDZiZjJhZjNiOGMwYiBsZWdhY3ktdHJ1bmsKKzI3NDU4IGJjMDBlZWVmMGFjN2JhY2MwNDMwMTUzNmEwMmVjYmM3NjcxODYwZWUgbGVnYWN5LXRydW5rCisyNzQ1OSA0Mjk4ZTI2OWJkNjcyMDEwNDM4Y2EzY2Y4OTU1YzIyN2E5ZDY4MWJhIGxlZ2FjeS10cnVuaworMjc0NjAgNDAyNjU2NWZhN2ViZGZmMTkwYjJjNTI5MTgxZTU1ZTg4OTgwM2YwNCByZWxlYXNlMjItbWFpbnQKKzI3NDYxIGEyYjY3N2FmN2IyODlkNjVhMGMxMTUwOTEyODg0Yjc2NDczNmRjZWYgcmVsZWFzZTIxLW1haW50CisyNzQ2MiA2ODk5NWU4NTRhODhlM2Q1ZDdmN2JkYTc3NzY0M2UxNzA2MGRmOGIzIGxlZ2FjeS10cnVuaworMjc0NjMgZGJiMTRmODVhZTdiNjBkZDMyOGZmMWE2ZTNhNGRhODliMzc3N2M5MiBsZWdhY3ktdHJ1bmsKKzI3NDY0IDJhMjA1NzQ0MDBhZmI2MDg4MGE0NWE5OGM4NjJhOGM0NmEzZjUwN2MgbGVnYWN5LXRydW5rCisyNzQ2NSBmN2FiYmQxNWI0ZjQ4MTliMTdkMGM4NGIyMjAwNzc5YWM5MDU3YjAwIGxlZ2FjeS10cnVuaworMjc0NjYgY2ZjZmI1ZGY2ZTYxY2M0YjUwZmUzYzUyYjA3NTg0OWQ4NjY0YmI4ZSBsZWdhY3ktdHJ1bmsKKzI3NDY3IDUxNDgxYjM5Y2Q4NjVjMWU3ZWU0YjMyMWVhODAyOGZiNjk1NDNhZWEgbGVnYWN5LXRydW5rCisyNzQ2OCAwYTE4ZWY1Y2IzZTdlZDc3MTk4YzczMGYyZTlmNDBjMjYzNjJjZjA4IHJlbGVhc2UyMi1tYWludAorMjc0NjkgZjhkNDFlMjY0OWI3ZTVkZTc3YjY2OTEyNzE3ZWI2ODg4MmRlZGQ3NSBsZWdhY3ktdHJ1bmsKKzI3NDcwIDI4ZjJiYWUxMDMxYmYzZjA4NTU2YTM5ZTI4ZjcxMDkyMWU5ZjhmYmMgcmVsZWFzZTIyLW1haW50CisyNzQ3MSA0NmE4NGQyZmY0ZTJhYzdhMDI4ZGM0YzMxZGYxYTQzODIyYWZmYzEwIGxlZ2FjeS10cnVuaworMjc0NzIgNjY3NjYyM2IzYjc0MjE5MTZlNzk1NDlmZTc0YmQ0MzNhMGE4NzBjMSBsZWdhY3ktdHJ1bmsKKzI3NDczIDhjZWVlNjYzMDMyMmM1NzU0NTQzNmMzNzZiMDYxMGY0YTg1ZmMzNmUgbGVnYWN5LXRydW5rCisyNzQ3NCBmN2MwZDY4NzFiMDdmMDMxMWZkNjk2OTY0MGE5MzIwMGE4MTVkZTE3IGxlZ2FjeS10cnVuaworMjc0NzUgNzMzNmY1MWZhYTQ2Y2I3ZTFiNTIyMDM0M2E5NTVlNDI4MDk3ZGY1MiBsZWdhY3ktdHJ1bmsKKzI3NDc2IDZjZDkzMmZmMGYwOWQ4Y2ZlNzNkNmRkMGYxNWI3MzhmOTk4MTI4ODQgbGVnYWN5LXRydW5rCisyNzQ3NyA4MDE2MmRiZDQ3ZjAxMzJmYTU5YzhmZGYyMGM2Y2FiM2RlYjZlODQ5IGxlZ2FjeS10cnVuaworMjc0NzggODA1YzIyOGNmNzdiNmZmZjkyMGI5ODdhNGU2NDUzMjI4NzZiNDdjNCBsZWdhY3ktdHJ1bmsKKzI3NDc5IDM0ZDcxMzcwOThhNzUxOTQ3ODU4MWU0YzFiMDU4ZDJjZTEyOTYxZjMgbGVnYWN5LXRydW5rCisyNzQ4MCBjYmRiYjkyZWZkMzY5Zjg0OTdlYThhODIzNDEyZmQ5YjYxNWU4N2IwIGxlZ2FjeS10cnVuaworMjc0ODEgZjM1ZTI5YWEwZDkyNGM0MjQ1YmU0MWIxNWNhZDIyMzlkMzI4NzY3ZiBsZWdhY3ktdHJ1bmsKKzI3NDgyIGZmNjg3M2QyOGExNDY4M2U1YzBmYjg0NjdjOTY2OTBjZjg3YjE4MWUgbGVnYWN5LXRydW5rCisyNzQ4MyBmYTZiZTllZTZjOWM0ZWI3ZmRiMzk1ZWM0MjIxYzIyZDY4ZDZmZmExIGxlZ2FjeS10cnVuaworMjc0ODQgMTMyNDBiOGY4Y2EwMTQxYTJlYWZkODkwMjYyZjc3NTc3YjhlYmY5NyBsZWdhY3ktdHJ1bmsKKzI3NDg1IDFlMGFjYjQ1Y2E4ZjBmY2UxYzVmNjVhZDIxZWE1YmQyMGZkMGMzZWYgbGVnYWN5LXRydW5rCisyNzQ4NiBmMzZmYTEwZWJmYTBjMjYwNTdlY2UzZjdlNzEyOThhY2UwMmZiNTM2IGxlZ2FjeS10cnVuaworMjc0ODcgZjMzYmI5YzEzMWY4Y2NlNTY0NDg0OWRlMTVkMGQwMTZiYjdhY2UwZiBsZWdhY3ktdHJ1bmsKKzI3NDg4IGI1MWE1NzhmNTc2OWI1ZjE5OTk5OThhY2Y1MDFiNjFkMmM5NzVmMjEgbGVnYWN5LXRydW5rCisyNzQ4OSBiZjM0MjFhMjg3NDQ2Y2QyMTY4Mjk4MmYzYmYyN2IwYzYwNjVlZTY1IGxlZ2FjeS10cnVuaworMjc0OTAgZDMzMjQ4NGUzOTRhODBiNDZmMGZmMGY2NGI1MGI3YzY0YTA2MTE1MSBsZWdhY3ktdHJ1bmsKKzI3NDkxIGFhNjIxN2JmOTc3NjQzYWM0NzhkZDEwOGNlMWE4MzBlNDQzMTUyZjYgbGVnYWN5LXRydW5rCisyNzQ5MiA1ZGE2MDVkMmI1NDc3YTQxMTk3NGZlZTI2ZDg0MGRkYmRhYWFiZmFjIGxlZ2FjeS10cnVuaworMjc0OTMgZjM4MTEyYjg4Mzg4ZTc4ZmIzOGI2OGQ5NGRiZDk0ZWQ5ZDhmM2FiZiBsZWdhY3ktdHJ1bmsKKzI3NDk0IDdkY2VmMmY4NzA2ODIyNmRjN2RiYTliMmNiZGFhMGMyODk0MTkxYTYgYXN0LWJyYW5jaAorMjc0OTUgZTMzMzkzY2U0YzUxM2FkN2MyZWMwNzQ1YWZiYTE0MjhmYWU0YzE5MSBhc3QtYnJhbmNoCisyNzQ5NiAzMGM3Y2M1ZjI1ODczZWY4NzNiYWZmMGEwOWM1NjI3OTRhYTUxMWEyIGFzdC1icmFuY2gKKzI3NDk3IDMzZjIxZWFiYzE1NTA2ZGQ1YmQ5MWI2MDE1N2FiNzY1MDVmNDY3MDcgYXN0LWJyYW5jaAorMjc0OTggYzk2ZTU4NDM4YTlmMTY1MzM4ZjcyZDRmMmRkNmRlYjY2MDBhZjBkNyBhc3QtYnJhbmNoCisyNzQ5OSBmNzRmM2MzMTkwOTkzZGEyNDk2ZjY0Y2EyMTRjZDg5YTNjMGVjNGIwIGFzdC1icmFuY2gKKzI3NTAwIGM0MjYzNjMwNmU5NmI2ZDA4N2QwNjk4Y2Y1ZTkyMzliOTJkOTNkN2MgYXN0LWJyYW5jaAorMjc1MDEgMmE2ZWM5OTIyMjhiYTdhMzVmMDRmMjE0ZmRmMjVmZTBlZmQzNjI4ZSBhc3QtYnJhbmNoCisyNzUwMiA4NDRmMTI5ZmExMjg1Mjg1NTc3Y2U0NTU5MDM5MTFkOGQwNDZiNWMwIGFzdC1icmFuY2gKKzI3NTAzIGZkZjgwZTA0ZTRiYmQxMmExYzE2YjMzZGIwNzczOTMyNTFhZjk4OWUgbGVnYWN5LXRydW5rCisyNzUwNCAzMTEzNzU0NjRmYWMzMzJhY2MzMjI0N2M4ZjAxODQ3NDQ2ODZiMDIxIGFzdC1icmFuY2gKKzI3NTA1IDllNjNiMGY0MDlkNGIzNjA2N2I3YzM2MTc1NmUzMWZkNmZhNDEyZWYgbGVnYWN5LXRydW5rCisyNzUwNiA3NmU5YTE0ZmI3YzVhMGFmM2I5Njc5ZmU4OGY0ZWIyMzc3MGRkY2Q1IGxlZ2FjeS10cnVuaworMjc1MDcgMzk5YjA5YTI3YWYzMTRiNDcwYjMxNjM3OTVmMjliYjNlOWZlNjczYiBsZWdhY3ktdHJ1bmsKKzI3NTA4IDcwN2M2ZjAyNjE0MmE0MGQ2YjVkODZkMTZkMmZkOTRhMDk5ZTlhYzcgbGVnYWN5LXRydW5rCisyNzUwOSBlNWVjZWY1YTEyM2FkODkwZjM1MTIxNmFjNzJmYWM3ZjU0MjgxMWEzIGxlZ2FjeS10cnVuaworMjc1MTAgMTJmMmJlODVkYTI1OWE1MjYzMDE5Yjk0ZjNlYTRmMTdmNWNjNDJlZCBsZWdhY3ktdHJ1bmsKKzI3NTExIDhkZmFjYjA2YzNkMWE0ZjEwMmFiMWM2ODIyMGJmNWYxMDY5ZTk5ZmIgbGVnYWN5LXRydW5rCisyNzUxMiA4NjVhNzdjZTQwYTlmODYzZDc0NDMyYjZhMDE5OTEzZDNlYzVmMTNlIGxlZ2FjeS10cnVuaworMjc1MTMgN2MxYTc2Yjc4NzEyMjJjMmExOWJkMmFlODg0MWIwOGZmNDJlZWQ3YSBsZWdhY3ktdHJ1bmsKKzI3NTE0IGE0ODNjNWRkYjdmMWI1ZTcxMTBmYmQ5YjBlZjE5NDc2MjQxZTNmNWMgcmVsZWFzZTIyLW1haW50CisyNzUxNSAxNzZhZDcwNmFmYmM1NmJiNzM3ZDM3MzJlMWVmMjRhYWFhNDI2NmQ1IGxlZ2FjeS10cnVuaworMjc1MTYgYzM2YmU3OWZkYmVhMTcxNjAzYzQ1MTlhNzkxZjk2YTYwY2RlZTBmMyByZWxlYXNlMjItbWFpbnQKKzI3NTE3IGFiZWRjNWNlY2M2NDlkNzNjOTRmZDEwMThiMDkwMzQ2ODZjMGVjNDUgcmVsZWFzZTIyLW1haW50CisyNzUxOCAzOWMwYmYyMDFkYjljNDMxZWE5ZDg0MjNiYTc3NjY4MDllYTE4YjI0IGxlZ2FjeS10cnVuaworMjc1MTkgNDBiZGEzZTA5MGY2N2JhNjg0YjNmNmY3NmQ0MzY1MGEyMzJjMTA3NyBsZWdhY3ktdHJ1bmsKKzI3NTIwIDIxYmQ4NmUwMGJjZWMxYjMzNDYzNTgwNTNiMTQ5MmFiMWI5MGRlNTAgcmVsZWFzZTIyLW1haW50CisyNzUyMSBlOWU2MTExYmVlYzE3MTllOGZkZDU5NGQ0ZTEyMzEzMTg0OTliNGFjIGxlZ2FjeS10cnVuaworMjc1MjIgZDdkODE2ZTFmNTIyNjRhYTg0OTgyYjExZjNhMTgzMDQwZTUwOTE5YSBsZWdhY3ktdHJ1bmsKKzI3NTIzIDcxODkwOTEyMTczNzFiZjRiZDc4ODIyMmM5ZWRiYTM0NTZlNzg2YjMgcmVsZWFzZTIyLW1haW50CisyNzUyNCA2OWZkODI2NThiZmIzMjc0ODE5NTY3MzY0YWU2YzAxZWZjMTE0OGJmIGxlZ2FjeS10cnVuaworMjc1MjUgYmUwMmQ1MTRiOWE2Njk2YzIwYzdiZmIzZTE3YzllMTVhODY0OTFkMiBsZWdhY3ktdHJ1bmsKKzI3NTI2IDQ4MTA4MGY3MTQzOWFiMzJiZWNiOTA2YmEwYjhjZjBkMGU5ZWZkMTIgbGVnYWN5LXRydW5rCisyNzUyNyA3YmNkODE3NzYyOGYzNWFhNmEzOTY4YTgzZDAxODZjNjk5MjMxOTFiIGxlZ2FjeS10cnVuaworMjc1MjggZWEwMzg0Mzc1NGMwMDI0ZTc0M2VkOTI1Mjg0MDY2NzdlMjczYmY4NyBsZWdhY3ktdHJ1bmsKKzI3NTI5IDU2MmQ3ZjhhODJhMTliYjMyZTFkYTgzZjE0NDMyNTUwYzRjYmEyZDAgbGVnYWN5LXRydW5rCisyNzUzMCBiYjdjMzk2ZGUzYWJhNzgwYTEwYTIzOTY4ZGI1NzYzNmQzNGFiMDg1IGxlZ2FjeS10cnVuaworMjc1MzEgYTU5ZGYyZmE0ZWM4YWZmNDY2ODM5MDM4YTY1NzI5OGU3ZDMyMGM1YyBsZWdhY3ktdHJ1bmsKKzI3NTMyIDIwOGZiMWQ2MTE0ODRlNzExYzA0ZmYyNWM3ZGZhMDAwYWY0MTA5ODcgbGVnYWN5LXRydW5rCisyNzUzMyA5NDU2YTJjY2RhNjEwYTFkYTRkY2VmZGE0NzI5NzYyZjdhZjVmZGFkIGxlZ2FjeS10cnVuaworMjc1MzQgNDRjMTk2OTlmYTdlZjlkZDNmMzI5MmM5ZDY4ZDA5MjQwNzI0NTk5MiBsZWdhY3ktdHJ1bmsKKzI3NTM1IDlkZGVkNmYxODgxOTFkMDg3NDQ0MzJkNGQ4NDM0OGIyYzdiNGNmZGIgbGVnYWN5LXRydW5rCisyNzUzNiAyMzNhNTBlMTBlNjZiYTRjZjAzNWRmZGY3OTYyZTgzMjBiYTFjYjQ1IHJlbGVhc2UyMi1tYWludAorMjc1MzcgY2I3MjgxNDFhZTEyYTI1M2NkNmU1YjQxM2M1MTBmMWRjNTBjNGRhYiBsZWdhY3ktdHJ1bmsKKzI3NTM4IDYzN2RmY2Q5NjNiOTgzMmE0Yjg1MWRkNzgwNTBkNjYyMzU0NzdhMTEgYXN0LWJyYW5jaAorMjc1MzkgZDRkNWMzNDBlMDU0MzgyYjA3OGVkMjhiZTcwMDNmMzcyYmI4NDM3MiBhc3QtYnJhbmNoCisyNzU0MCAyMmIyMTJkZDg2YzFkYTNjNWRiZDY2OGZkYmFmMTU5MGFhMTE5MjVjIGFzdC1icmFuY2gKKzI3NTQxIGZkMTczOTRmNmRjZWUxYjhmMjc4MGUwNDQwYTU2NDVjNjBhMDY4ZjQgbGVnYWN5LXRydW5rCisyNzU0MiBlNjg1ZjMyZDgwNjg4ZDE4YTlhZDNjMzBlYTkzNjhiYTQwMjU4NTQzIGxlZ2FjeS10cnVuaworMjc1NDQgOGVlMmFiNGYyYTJkNDk4ZTJhMjA3YmU0ODYyMTkzNWRhZDQ1ZWVhMCBsZWdhY3ktdHJ1bmsKKzI3NTQ1IGEzODdkNGU1MzljMmQ4MmU3ZGJhZTNiYTc5NWJkNDAyZGRiOWZlNzQgbGVnYWN5LXRydW5rCisyNzU0NiA3OGFiMDg2YTM1NDg0NmZjYTg4NTQ3ZDg2YmU5ZDY1NzY2NGE3Mjg5IGxlZ2FjeS10cnVuaworMjc1NDcgMDk1NDI2YWY0YTQyNDA2NjQ2OTIyMzUyNzJmM2ZhMGQ4MGE5YTgyNiBsZWdhY3ktdHJ1bmsKKzI3NTQ4IDgwZGE5NTFjODlmYmUxNDFlMTc0MjAxOTM1MjEwMjc5Y2FkYTM2YjYgbGVnYWN5LXRydW5rCisyNzU0OSBkM2U0OTBhNTE0MDhiODhmYjg4OWE0NWYzZGEzY2E0MDg5N2ZiN2Q2IGxlZ2FjeS10cnVuaworMjc1NTAgZmRkODM2NTc1MjQ4Zjg2OWRmODNjMzhiY2RjYWIzNWMyMGQxZTNjZCBsZWdhY3ktdHJ1bmsKKzI3NTUxIGMzMWFmZWE4ODkzNGUwNjQ2ODIxMzkyYmQyNjdiMmQ1MTVjZGUyODMgbGVnYWN5LXRydW5rCisyNzU1MiAwY2FiNGU0ZmRjZjM4MGM2MWExZDk5MmQ0ZDA3YmE0ZjcwZTEyYjM1IGxlZ2FjeS10cnVuaworMjc1NTMgNWU0YjhkMWU5ZmQ2YjJiOTdkMGJlNDBmNTczNDMzYTNhZjZiNmYzNiBsZWdhY3ktdHJ1bmsKKzI3NTU0IDM3MTk1NDc4NTczOWY1NzQ2M2Q4NjNjN2Y5OThiODU0OWMwZmQwYjIgbGVnYWN5LXRydW5rCisyNzU1NSAyYWJmOWU5NDAyNzRmMDhmYzQ1ZWE4ZTExYWU2ZDFmMzI5YzJmZGRmIGxlZ2FjeS10cnVuaworMjc1NTYgNDNmYmM2NzM3NGE1N2I2ZWY2NjAzNzQ3ZTViYTdhNGRkZjJmMDNiMiByZWxlYXNlMjItbWFpbnQKKzI3NTU3IDI1ZmUzYTBhODBmYjg2MjM4Y2FkYWM3MDI5ODVlMjI3ZWNlOGE4MWYgbGVnYWN5LXRydW5rCisyNzU1OCA5OGFkNzcyZGVmYWFiYmMyMDZjMzhlYjlkNmI4YWZmMDZmM2I0YjRlIHJlbGVhc2UyMi1tYWludAorMjc1NTkgYTAzOGFiZDA4ZTRhYjUyYjBiYjRiMmFiMGM4NjRmNWE0OGI1YWI1NCBsZWdhY3ktdHJ1bmsKKzI3NTYwIGM4OWQzMzNmZTBmZTM0NjcxNjU3NWQ4MGE0NzIyOTJjM2I2NWRmNmEgbGVnYWN5LXRydW5rCisyNzU2MSBiOTkzZTY1MWViNzQ1Zjc4NDZhMDJiYzI3ODA1NGYwNzVlOWM1MmUwIGxlZ2FjeS10cnVuaworMjc1NjIgY2I3M2U4OTFkM2VlM2Y2MGIyOTU2YTkwYmI5ZTEwZDA4ZDNmMDA0NiBsZWdhY3ktdHJ1bmsKKzI3NTYzIDYzYTg4N2Q4YTFlM2E1MTkzYTI3Zjk3MzIxMDI3NjU4NGNlNGQ1YjkgbGVnYWN5LXRydW5rCisyNzU2NCA1YzE1MWQ5NThmYzE0NDIxMTNjNTIxZDIyNGQ2YTZkM2FiMzA2MGNhIGxlZ2FjeS10cnVuaworMjc1NjUgMTcyM2JjZGMxZTg1NGU4OTFiNzlkNTcxNTE1NzU3ZGQ1MTBhNGJmMCBsZWdhY3ktdHJ1bmsKKzI3NTY2IGM0ZGNiODBmNDhlYTE1OGVlMDU1NDRhNDkxNzQ1NzZmOWY2NzkxM2YgbGVnYWN5LXRydW5rCisyNzU2NyBhMzNmMmRkNDY0NDRiNjdkMDljYWQ1MjE2YTFiYjhhNDhiNmI3ZTY2IGxlZ2FjeS10cnVuaworMjc1NjggYmVjNWI2NjEwNjIyOWM3MGE4OTUwNjlmYTM0ZDgxNjY3MDIyNmNmNyByZWxlYXNlMjItbWFpbnQKKzI3NTY5IDk4MmE5MGE0ZDY3YjgzZTM4YmEyYmNlMzc3MzQ4Mjc1ZGNhZmY2YWIgbGVnYWN5LXRydW5rCisyNzU3MCBkYzIwYzdlYjQzNGY1MjFhZTY3YWM5ZmQ4YmJiOWY3NzI3NzI0YzVlIHJlbGVhc2UyMi1tYWludAorMjc1NzEgY2NlOTMxNmE2MmY4ODY3OGM1MDFlM2UwZjE1M2FlYmUxZjUwYTgyMyBsZWdhY3ktdHJ1bmsKKzI3NTcyIGEyYmNiMDBkY2JkNTk1YjExNDk1YzEzN2Y4NmY0M2E5MjUwN2ZiMzIgbGVnYWN5LXRydW5rCisyNzU3MyA3YjVlNjEzNzNmNmVkYzliZDUwMDU5OGIzNDU3NWM1MjAwYmJlNmRmIGxlZ2FjeS10cnVuaworMjc1NzQgYjlmMjNlMjI1M2Y4ODdjMjg4NTA0NjI5OGIxYjdkZWU1YzMzYWNiYiByZWxlYXNlMjItbWFpbnQKKzI3NTc1IDZlYjc0ZTgzYTZmMTFhNDgzOTUwOTgzNjA1NzQ2NDgxMDIyYzM5NjQgbGVnYWN5LXRydW5rCisyNzU3NiAwNzgwOWY2YTc5NjhiMjdkYWZmNTA2NzQ1ZmRiNmU2MTNmNmU0OGZmIGxlZ2FjeS10cnVuaworMjc1NzcgYmY2NDAxOGE2NGZmNGM3NTRjZTEwM2YwYWJiNTg0MjdhNDk4NzdhOCByZWxlYXNlMjItbWFpbnQKKzI3NTc4IDVjY2FhYWQ0ZjMzYjFiYWZjOGQ2MzFmZmI5NWVjYWJjM2ZkNzQ5ZTAgbGVnYWN5LXRydW5rCisyNzU3OSAzZDFmM2I3YWRlMDczNDMzOTYzNzVhZDZmNDFlZmIwNTc4NzEyNTg4IGxlZ2FjeS10cnVuaworMjc1ODAgZjAyNTk5ZWM1Y2I5MzEwNmYzYzMyMjdhMzBhMmE3ZDcwYjA0N2U5NiBsZWdhY3ktdHJ1bmsKKzI3NTgxIDk5MGZjMDRjZjBkNDAwMTQxNTUxNWU5YTU2NjRhMzY4YmRlZDZiNTcgbGVnYWN5LXRydW5rCisyNzU4MiAwYjZhMmFlNzA2ZTIxYTg3NjFhNjRkM2Y1NDc0OTI0ZjcyNDg5NGIxIGxlZ2FjeS10cnVuaworMjc1ODMgNzc0ZGMwN2YxYzE2ZTIzOTZlMDk0MzMxZGM2YzEwMWEzM2Q3OWEwMSBsZWdhY3ktdHJ1bmsKKzI3NTg0IDlkZWJhMzVlNjI0Y2JmOTUyMmI2NjdhZjNmNGExNDgzNzU3NTc2ZWMgbGVnYWN5LXRydW5rCisyNzU4NSAwODIwMjNjMjBjZWYyMjUwNThlMGE1YTdmZjgzMWZjYzA4ZDQzYzJiIGxlZ2FjeS10cnVuaworMjc1ODYgZTQ4YTRiMGJkYmI1NWRhNDk2ZGQ1ZjRhMDMyYjZlODVlNzI0Y2U3NSBsZWdhY3ktdHJ1bmsKKzI3NTg3IGYyMDEyZGIxNjE2YzNlNTY5MjQ3MjE1NGViOGFjOGUzODcwNTM1OGUgbGVnYWN5LXRydW5rCisyNzU4OCBmYTlhZjI0NWNlYjRlYWQyNTY1ZTNmZTlkNDFjZGEyYWJmN2MwNjZlIGxlZ2FjeS10cnVuaworMjc1ODkgNTYxZTMzYTZhMzEzODQxN2M2ZDk4MTdhOGEzNjBlZWVjMmMwOGI3NyBsZWdhY3ktdHJ1bmsKKzI3NTkwIGVmYWJjMTUxMWRjMjcxZWMwOTdiNDY5ZGNmZGNkNzEwNjgyOGI2YzQgbGVnYWN5LXRydW5rCisyNzU5MSBhNTQ2NTkzOTY4ZDY0ZGY0NjU5ZDc2Mjc1MzhjNDc5YmFmOGE2ZmRmIGxlZ2FjeS10cnVuaworMjc1OTIgMjUzNjdjN2M0MGE0YzZkZTU0MDgxOTA4OTJhZGMyMzQ0NWQyMTRkZCBsZWdhY3ktdHJ1bmsKKzI3NTkzIDA2ZWU4NjJkOTgxNTQzNDQ5NTI5NjM0ODY3MDg4N2M3OWZiMzVkYTIgbGVnYWN5LXRydW5rCisyNzU5NCAyOTZkZDMyNDI1ZDZhNzNmNDg5ZDQ5ZTQ3OTNlZDVlZDdmZTBjMDA4IGxlZ2FjeS10cnVuaworMjc1OTUgMDg2N2RhNWU4NTQ4OWFjODU1Zjk3MTdhZTFkOTI3NGY3MTJjMTEyNSBsZWdhY3ktdHJ1bmsKKzI3NTk2IGYwYTJlYzc4YmQwNWMzNzU3YWUwNDNjYWM1MTNhODI5ZWU0YzcwNjYgcmVsZWFzZTIyLW1haW50CisyNzU5NyAxNjMxNGZmNThlZjQ4MDUyYzVjMzJlNjkwYTFhNTRkYzU3ZTM5YjI0IGxlZ2FjeS10cnVuaworMjc1OTggYzhhMTlhNDI4MzU4NGJiOWJjZWFlYTBlMjcxODZiYjI2N2ZiMzU3YyBsZWdhY3ktdHJ1bmsKKzI3NTk5IDQ5NGE4YmViNDU4MjY1YTFkYmE1NTBhYWUyYWMyY2I4NGE5N2ZkMDIgcmVsZWFzZTIyLW1haW50CisyNzYwMCBkZmQ4NWU5MDIzZmNiYzQ5NmI5YmU0ZWU0ZDk1ZTBlNGIwZDNkZWMyIGxlZ2FjeS10cnVuaworMjc2MDEgZGFhNWIxNDQ5MmVlOTA5ZGEyZWQxYTI5MjI4N2VlNzU0NzZmZTg2MCBsZWdhY3ktdHJ1bmsKKzI3NjAyIDc2YWY4YjMwODk0YTdjZjlmMDUzNGU1MTE3NDk5MGRjNzgyMDkzZWQgcmVsZWFzZTIxLW1haW50CisyNzYwMyBhZDVmM2EwNTI2ZDFmNDNlNzgxNDBmYjBjMDhkZDBjM2Y0YzRkNmE3IGxlZ2FjeS10cnVuaworMjc2MDQgNTY1NzgxZWExMzdiZTJiZGM1MjhjMzZiNWI5NWJjYmJmNzViMzg1NSByZWxlYXNlMjItbWFpbnQKKzI3NjA1IDQyZWQwMmFmYTYzYmY3NmI2ZmI0ZGQ1NTZiNzhjMWEyZGI3OTM3NmMgbGVnYWN5LXRydW5rCisyNzYwNiBiMzQ3MjMzNzgzZWUzOTNiY2VjNWJiZTg3NjNmYWE2NDc2NTI2NzRiIHJlbGVhc2UyMi1tYWludAorMjc2MDcgOWJlYTJjMGM4MzhlNmM2Nzc4NDY0YzhhYTNjYjBmZWQyY2MwMGM1MyByZWxlYXNlMjEtbWFpbnQKKzI3NjA4IDYyZDhmOTc0ODExZjFhNDYyNmU5NzgxZTc5NGJlMWZiMjMzMjZkMDcgbGVnYWN5LXRydW5rCisyNzYwOSA4YTY3ZjI4YTQyYTVkYzE4Y2Y1MDE2YjlmMmUyZjc1MzZmM2NiZWMyIGxlZ2FjeS10cnVuaworMjc2MTAgNWI2NmU2M2Q3YWJiNzBkNDg0ZjM4Y2U5MDU0YjBiNTA2ODU0MjUwYSByZWxlYXNlMjItbWFpbnQKKzI3NjExIDQwZDk2NDkzYTQyOTUxYmY5YjI2NjVmMWE3NDJiZjJkMWMzN2FjNDQgbGVnYWN5LXRydW5rCisyNzYxMiAyODYwYmUyNDQyNjNlNDA0OTc0YzdkNzk0OTlkZjQzMDMzNWE5MDBiIGxlZ2FjeS10cnVuaworMjc2MTMgYjYyMTM4NDNkOGJlZDAwZWQwMjYzMWMyMTNhMWVkZmRiNWUyNWViNiBsZWdhY3ktdHJ1bmsKKzI3NjE0IGUwNmIxYWIwYmRiODBjMzQ4NGMxZjg0ODFmMGU0ZDAyNGI0ODJmYTIgbGVnYWN5LXRydW5rCisyNzYxNSAxMWM0MjUzNjk4ZGM3M2RjYTRmNTA4NmM4ZWYxMDVjYjdmNzZmZmQ0IGxlZ2FjeS10cnVuaworMjc2MTYgYzg5MTdiNTljMDY1OWFhMzhmNTNkODYyNzA3Nzc4MzA4MDAxZGU2MiBsZWdhY3ktdHJ1bmsKKzI3NjE3IDczYTg4NDQ4N2E3NjY4MGFiM2EyNmE4NmJkMDNiOWFhOTk0YzIwODkgbGVnYWN5LXRydW5rCisyNzYxOCAyYmU2M2UyMGE0OTgyZDVhYjc0OTFlOGYyY2VmYmU2ZmI1NDI1Y2NlIGxlZ2FjeS10cnVuaworMjc2MTkgMDU5NzdjNWY4ODBjZjhhMWNjYzkwZjQ2MDM3NGFjNDhhMzg1MTkyNyBsZWdhY3ktdHJ1bmsKKzI3NjIwIDM4OTViNzhkM2VlMGNlY2Y1ZDgyZTg2NGRjMjhhMzFjMjc1MTBjMjkgbGVnYWN5LXRydW5rCisyNzYyMSA1MWNkYTZlODc2NGE2ZTIyZDU3MzJjNmMwYjJkYWI0ODEzNjMxNTNkIGxlZ2FjeS10cnVuaworMjc2MjIgOWVhZmI0Y2VhNDdhNWM5MDAzZjZiYjA4ZGFiYzhhMTgxMTUzNzVmMiBsZWdhY3ktdHJ1bmsKKzI3NjIzIGZjMjdmZmUyMDM2YWExMGZlNzJlYmM2NmVlZDg1MmNjYzIyNWM2ZjUgbGVnYWN5LXRydW5rCisyNzYyNCBhM2ZjMWQ4ZTBhZTgxZTRhM2ZkMjBlZjhiZmRkMDFiMDM3MzcyNGI2IGxlZ2FjeS10cnVuaworMjc2MjUgYzQyM2E4OGIyMmNlZDM0NmE4YzRjMzc4ZmY3YTJkZGZlODI5ZTEyNCBsZWdhY3ktdHJ1bmsKKzI3NjI2IGRhNGM3MTIwMTQzZjA4ZDkzMzg1MTI0MzlmZWE4ZWZiMmQ0MzNlZGEgbGVnYWN5LXRydW5rCisyNzYyNyA1MDQ0MzEyN2IyMWRjNDk3MTgyMzRjMjRhZGI4NTU1MmViZmM4MWM5IGxlZ2FjeS10cnVuaworMjc2MjggOWE1OGQ2NGY4ZmMzZmQ1MjY0YzY4MGFhMDBjYjM3MWIxMjk1MWM0OSBsZWdhY3ktdHJ1bmsKKzI3NjI5IDVkM2VjMjhlOWE3YWQzZTgwY2EyNDI2ZmUwNjkyMWZlOGJjN2FmZDMgbGVnYWN5LXRydW5rCisyNzYzMCAzMDU0MjJkNjlkMzEzMzJkYTk5MzFkNTRhMmNlM2IyMTM1MjUxMWY1IGxlZ2FjeS10cnVuaworMjc2MzEgNGE3YjNiYWMzODEyODdiMjQxNmNmNjEzNzQ2NGU5YTIyNjYzMzY3MSBsZWdhY3ktdHJ1bmsKKzI3NjMyIDgwNGVhNTFjZmNlNmUyYzAzMjEyYjUzZjhlODQ3MjRhNDU2MzgzZDcgbGVnYWN5LXRydW5rCisyNzYzMyA3ZDA5ODIwNTZmNzJiNTdkODdhOTM1YWNiNTdjM2RmZjJjODM3YmU0IHJlbGVhc2UyMi1tYWludAorMjc2MzQgNTU0MmJmMGJiY2UyM2NiOGJhMmQyMzFkMzhlZTBmNGUzZGIxZjVmYyBsZWdhY3ktdHJ1bmsKKzI3NjM1IDYyZjRiNDViMDVmZGRhMTNiOTQ0MDE5NGQ3NmExNmMyMGYxYjA4YzUgbGVnYWN5LXRydW5rCisyNzYzNiA4MzEyMGY1YTQ4YzIxMzllZWRiZWM4MTQ1Y2ViOWVlNTkzY2VhYmE1IHJlbGVhc2UyMi1tYWludAorMjc2MzcgNDFjNTRiMzdlMDMwODg0NzJhYjdhZjAxNTg0MzczMTk3MjUyOTMxNyBsZWdhY3ktdHJ1bmsKKzI3NjM4IDg4Y2QyN2RiNzliOTNmMjg1NWYwZWZlYjg1ODM2ODEyNjJlZWIzYzYgcmVsZWFzZTIyLW1haW50CisyNzYzOSBhNjcxNzI3NTE5NWM5MjkwM2JjZTYwYzhmNmVjMjhlYTFlZDZmMGRhIGxlZ2FjeS10cnVuaworMjc2NDAgZWFjNTRhODMyNzJmNDIwMGU5ZGFlMWYyYTU1ZDdhMDFkM2VkZjQwNyBsZWdhY3ktdHJ1bmsKKzI3NjQxIDJmNjBmOTBjZTMwOTNkYmIxNTk3MTM3NjQ2NGFhNzA5M2JkZGRmMTIgbGVnYWN5LXRydW5rCisyNzY0MiA2YWEyZDA5ZTMyYzEzZmI1NmM5NjgxYmVmMjE2MDQ3NDJkYmE4M2QwIGxlZ2FjeS10cnVuaworMjc2NDMgMjdlOTRjYWNiNDNiZDZjMzRmYWY1NjAwY2YwNzUwZTEzYTViNzcwYyBsZWdhY3ktdHJ1bmsKKzI3NjQ0IDNiNTcxZTMyYTZlNDVmYjgyNWJiYjY5YTk2MWZiMjBkMmU1MTBhZWMgbGVnYWN5LXRydW5rCisyNzY0NSBlNjAzMzI1NGRmMjE0NTViOGZjNDE0NTg1MjkzZTUyNmU0NjNjZjBmIGxlZ2FjeS10cnVuaworMjc2NDYgMThjMWIyOTBlNDg0Mjk3NDcyM2YzMTI2Y2Q0ZmNlZmYyNWEyMjI3YSBsZWdhY3ktdHJ1bmsKKzI3NjQ3IDRhNWM2ZjY5NDQ3ZDZiOWZmNzc3OGIyMGE1Y2UwMmNjYzU5MDJkODYgbGVnYWN5LXRydW5rCisyNzY0OCBkOThiMGNkZjdlNTFiNmExOTBmYTQwMzQzYjNhOGI3OWMxMjI0YzkwIGxlZ2FjeS10cnVuaworMjc2NDkgNzZjZDI4NmU3ZGU1ZTc3OTViOTE5MzA1ZDliYjZmM2VkOTc0ZWFhZCBsZWdhY3ktdHJ1bmsKKzI3NjUwIDNhM2UwNzFkODRmOTg1ZmRjMjM5OTU2MDdkNzljYWU2YTBmZTRmYTggcmVsZWFzZTIyLW1haW50CisyNzY1MSBkNzIzNzAzN2YzNzk0ZDkyNDc0MWZmOThlMzg0OGY3MzAxZDhhZTU5IGxlZ2FjeS10cnVuaworMjc2NTIgYTRmNGNlNWU4YWE5OTE0ZTMyMzA3ZjU4OGY3ODA1ZWIwY2M1Mjk1MiBsZWdhY3ktdHJ1bmsKKzI3NjUzIGQxYjJiZmQ5M2EyNzA4OTUwY2EwY2U2ZDZiM2Y3MzViMzlkZmI3MDAgcmVsZWFzZTIyLW1haW50CisyNzY1NCBjM2NmMjIzMzhlMWNlOTQ3MjhmZmQ3YzQ4OTRhZTU0MTY2MTgzOGRhIGxlZ2FjeS10cnVuaworMjc2NTUgYzMyMGEwN2YwMTQ2NzFhM2UzMGE4ZDNjMDEzMjg5YTBjYzYzNDc3NiBsZWdhY3ktdHJ1bmsKKzI3NjU2IDFjZWJjZTUwZmU3MTIyNGQxMDk0YzY1ZGEwYTM0OTU5N2ViZjg5YjIgbGVnYWN5LXRydW5rCisyNzY1NyA5OWRhOTM2ODNlYTViMjU0ODYwZTE2MTNmMTkwYTA0OTRkMGUzNmM5IGxlZ2FjeS10cnVuaworMjc2NTggMzUyOWFkMjEzOTU1OTQzZDM0NThhMTAyOTIyNzZiNjVhZTdmNTE1MSBsZWdhY3ktdHJ1bmsKKzI3NjU5IGViMDRmMTdjYzAwOGNhNzUzM2Q3NDhkMzdhNTNkYjBmOTdlOThhNjAgbGVnYWN5LXRydW5rCisyNzY2MCA3MWYxZjM1YzAzNTczNDc2ZWEzOTgzMTM1NDY3ZjA0MDdkZjBkMDFmIGxlZ2FjeS10cnVuaworMjc2NjEgMWE3MDNmOWJiZGMwZmVkY2FjZTQ3OWY3NTRmYTMxOTI4NzZkZjMyNSBsZWdhY3ktdHJ1bmsKKzI3NjYyIDE1OThhMWU0NzNlMjQ3OThmZDU5YWNkYjE0M2JjNjE2NzY4MzE0NTkgbGVnYWN5LXRydW5rCisyNzY2MyA4MTljODAzMzcwNWI5NTRmNTU2ZTcyZmVhYzIzNWY3YTEwZDhjMjY1IGxlZ2FjeS10cnVuaworMjc2NjQgOTcwNzg2ZDAyZTgwNWRmMTdkNGQ5YjY0NzA3N2M0Y2ExZGJmNjRlOSBsZWdhY3ktdHJ1bmsKKzI3NjY1IGMwYTY3YTFjYWIwOWM5NzM3YzIxZTdhMDc0MzM0ZTVmZTBlNDA4YjcgbGVnYWN5LXRydW5rCisyNzY2NiBkODkwOTc5MjAwNWFiODJlZDFiYzJiMTMxMGZkZGFmNmNkMTg0YjJiIGxlZ2FjeS10cnVuaworMjc2NjcgNDQ1MjJhNzVkZWVjZWE5NDRjODMyZWZlNGQzOWQ2NzExMWIyMTkwMiBsZWdhY3ktdHJ1bmsKKzI3NjY4IDRlODUzMDZhOWJiZmE4MWVjNWJlNWYzODZiMTQzMjgxZDJlYzg2MjkgbGVnYWN5LXRydW5rCisyNzY2OSAxNTc2YTJkZmYwMWY4ZTk4YTI1NWExZTg3ZjU2MjUzZjRkNTUzNDdlIGxlZ2FjeS10cnVuaworMjc2NzAgZDgxNGE3MzE5MjRhMzE1ZWE1OTdlZTJkYzRkZjRkMzljYWFiMTgxNyBsZWdhY3ktdHJ1bmsKKzI3NjcxIGI1OTYyYjU4N2NjMDkyOWVhMWNmZjRkNWVlYWRjMDI3YjE2ZDAxN2UgbGVnYWN5LXRydW5rCisyNzY3MiAwOWU0ZGU1ZGNiM2JhYjFlY2Q0OGVjNTQ4YjQ3OTM4Y2Y2ZjVmYjY1IGxlZ2FjeS10cnVuaworMjc2NzMgM2NhY2VmMjQ5ZWI1NTBiMjYzMDI2YzlhZGY2NzE1NjgzMzhmMjRiNSBsZWdhY3ktdHJ1bmsKKzI3Njc0IDJkNDA3NDg0YTRlNjMzOGVmZjU0NmMxZGVjNGYwNWI5MDRkZmZjYzggbGVnYWN5LXRydW5rCisyNzY3NSA2NDAzNzBmMDhlMmFmMjk5NjdiYWI4OGFmYzQxNGE2YTRkNWNhYmNjIGxlZ2FjeS10cnVuaworMjc2NzYgMGEwOGVkMDViZDQyNWMwYTE2YWY3MjUxYzNiYzE4MGEzZDYxZGJkYyBsZWdhY3ktdHJ1bmsKKzI3Njc3IGEyNmNhOGFiMjdmMmIyMDE1MTJhOTg1MTRmMmVkZGFhM2ZmZTc3NmQgbGVnYWN5LXRydW5rCisyNzY3OCA4N2UyNTM0ZTlkNjRiMzcwNTBjMjcwN2Y4ODI5ZGM1NWY4N2Y0ZWIyIGxlZ2FjeS10cnVuaworMjc2NzkgZTY2MjIyNjIxMWU1MzljYWVkZmQxNGM5Y2UyM2JmYjg0MmM4N2YwMSBsZWdhY3ktdHJ1bmsKKzI3NjgwIDM3OWIwMWUwNzQyMjE5OTA2OTYzYjgyZjlkZDBmYjNjMDM5NjM5MjAgbGVnYWN5LXRydW5rCisyNzY4MSBhMDMyOThhM2FjYWQxNDM5MDkyZTBmNDk4MzBlMGFjOGZiZTIyOTJjIGxlZ2FjeS10cnVuaworMjc2ODIgNTJiMDk3NmU0OGExZDZlNDlkNDA1M2I5ODM3ZDlkYjRhNzc4YTIwYSBsZWdhY3ktdHJ1bmsKKzI3NjgzIDljMDE3ODRjZTdjYWI1MTQzMWQ4YjlkNDUwZWFlZmNiY2M3MzBiNjIgbGVnYWN5LXRydW5rCisyNzY4NCBjNGJmNDVjYTRkNTU2NzY5ZjAxMjdjZmU2Njk2OGQwMTE5ZTdjNTU4IGxlZ2FjeS10cnVuaworMjc2ODUgOTM0MzRiYzA4OTlkOWZkNTRhNzliOGU3NTExOTViNDQyZTRkMDdjMCBsZWdhY3ktdHJ1bmsKKzI3Njg2IGM5MWI3ZjM0NjI2YjljZDNlNTg3M2NkMmI1NGM3OTM0NzlmNTRkZTMgbGVnYWN5LXRydW5rCisyNzY4NyA0MjhjYmJmMDU2MzkwNjk4NTMwODljOTA2YzdhZjRmMTdkZGE3YTZkIGxlZ2FjeS10cnVuaworMjc2ODggMTMyNTc3ZjY5M2IxY2MxNTk3MzE4MTk0YjFlODI0NTM3NzgxZDVhMiBsZWdhY3ktdHJ1bmsKKzI3Njg5IDQxNjY1NGUyN2Q4ODkzMzU2M2YyYmI0MjU0ZDc0YzAyNDkyNGNkZjggbGVnYWN5LXRydW5rCisyNzY5MCA2OTEzNGM2MWY4N2MwNmJjMWFkMzgxMTQzM2JjMjAwZTI2MTU5ZTZjIGxlZ2FjeS10cnVuaworMjc2OTEgMDhkMzA3Y2JjY2Q5NTEyMGFlZDljNjdiODNlY2I2NTBhZmQ2MzY0ZCBsZWdhY3ktdHJ1bmsKKzI3NjkyIDVlZGU5YmNjNjUxZWIyZjAxOWE0Y2E2ZTNlNjI5ZGU3NjU1YWMzYmQgbGVnYWN5LXRydW5rCisyNzY5MyBhMzUzZDZhNDUyNzY5ZWEwMmJiMjkxYjg3ZDUxMGVjMDBhZGNhMjEwIGxlZ2FjeS10cnVuaworMjc2OTQgYzRiM2EyYjI0N2FjMzdhMzcxMjVmOTdlMjg1ZjdlMGQxNzFlYjI0YSBsZWdhY3ktdHJ1bmsKKzI3Njk1IDY1OGUxMmNjMDMzNjJkNWE2NDI3Nzc3YzhjMTZjM2RiYjM1YWJmZWUgbGVnYWN5LXRydW5rCisyNzY5NiA3NGY5YTIwNmQ0ZjA4ZGUxMzIzZTI0NTNhYWE0YmJkMjczMzZiMDYzIGxlZ2FjeS10cnVuaworMjc2OTcgYThkZjBjMGJlMjQyM2FlYjZkNjFmZWFiMzZlNDJjOGY5NjJiNmQxMCBsZWdhY3ktdHJ1bmsKKzI3Njk4IGRkMzgyOTFiODlmYjU0MDA3NWI5ZGMxYmE1YjFkNTI0NzkyZTg5YjEgbGVnYWN5LXRydW5rCisyNzY5OSAyOWFlOGU4OTE1M2JkNmU1NTdiZGQ5OWJkMGUyN2Q2M2Y4OGQ0OTAyIGxlZ2FjeS10cnVuaworMjc3MDAgMTI4MTVkMDUwODBjZjY5YzJjOWE5OTNlNGVlYzE5NjA3MDQwMjM5OCBsZWdhY3ktdHJ1bmsKKzI3NzAxIGM0MzQ2NmY3ZGFlODQxNjQ1N2U3MDgxYTZiNDI5MmI2NGI4NDA0ZDEgbGVnYWN5LXRydW5rCisyNzcwMiA0NzhhMmQ2NGFjNTgzMDhmYWJmNGU0Y2Q3NTdhNzI2NGZlOTczYzdjIGxlZ2FjeS10cnVuaworMjc3MDMgMzEyMjczNTNjYmJjYzAxMGI1ZDgyNjk2MGUzMDY3NDZkOTgxNzUxZiBsZWdhY3ktdHJ1bmsKKzI3NzA0IGFmZTQ3OWE2MjM1ZWMwODQxNWU3NDY1M2JiYjAzMzYyZDAyNDRjZTQgbGVnYWN5LXRydW5rCisyNzcwNSBhYjE4NzdhN2IyNjI1YmQ2YzQ2ZWZiMzE0OTBjNTZhNWVmZTM5MjlhIGxlZ2FjeS10cnVuaworMjc3MDYgZDlhZGQ0MGY5MmZmMzJmMTk4NDdkZTMyNWI1YmYzZWZhMGRhM2JhMyBsZWdhY3ktdHJ1bmsKKzI3NzA3IDE3ZDUyNjI5Nzc1NTdmN2U2MTgwY2U3YWIxNzllZWMxNmFlNTBhYmQgbGVnYWN5LXRydW5rCisyNzcwOCBhYTRiOWE3YjM4MTdhMTllNWZhNTg0OTFhOWEwM2FjYzIxNmU5ODYxIGxlZ2FjeS10cnVuaworMjc3MDkgZWIzOWJhNjBkYWUwY2ZjMjk1YmM4M2NlOGQwZDRkYTY1ZDBkMWU4NyBsZWdhY3ktdHJ1bmsKKzI3NzEwIGQ0OTdmNTIzYjgyZWQ3NGFjYTEyNjM5OTUxNmUzM2ExY2ZkODA4YWEgbGVnYWN5LXRydW5rCisyNzcxMSBlMzc1MWZjMDNlNmM4NzgyZTk3NmJjZjUwZWEzZmIxZjk2ZmMxZmJkIGxlZ2FjeS10cnVuaworMjc3MTIgNTNiMzIyNzFlOGUxZjE2ZGY0ZDkzOGNiY2JkNzQ3ZjM2ZmQ4YmEyMyBsZWdhY3ktdHJ1bmsKKzI3NzEzIDY5Nzc3N2NjODNjYzBmZjA2MzU4NTEyZmE0ZmZlNmZmZDcxY2M3NTcgbGVnYWN5LXRydW5rCisyNzcxNCA4YjRhMTY1YmFhZWVkZjY5ODRlNGFjMGViZjAxNWE3MTc1MzU4NmUyIGxlZ2FjeS10cnVuaworMjc3MTUgZGRmNjcxNjMzNDY1ZTUwNmY1YjdjOTY3YWUxYzFmNmY5NjIwN2FkMSBsZWdhY3ktdHJ1bmsKKzI3NzE2IDIxMzFiYjc5MGFmOTU4YzY1MTM0MTc4NTc1MDRiNjAwYTE0ODRlZDggbGVnYWN5LXRydW5rCisyNzcxNyAwNmI5YThkYWQ3MjFiMTkwNmUwZjliZGMwZjFmMjE3MTM1ODU4MDdkIGxlZ2FjeS10cnVuaworMjc3MTggMmY2MDM0NGE0OWU4OGNlNGVkOTk3NDM1MTA5MzE5NTEzZjA1NDkzYiBsZWdhY3ktdHJ1bmsKKzI3NzE5IDQ5YTNlODMzNDdkZGVkMGIwOTk3ODQ5Y2U3MDU4YjkwYWE4NzZjOTEgbGVnYWN5LXRydW5rCisyNzcyMCA2N2VhYWJiMDE3ZTBlMGQwMWI4OWFkMGUxZTZiN2QxNDhmMDkyMTFkIGxlZ2FjeS10cnVuaworMjc3MjEgYTliODA5YzhiOWRiYWEzZTQxNWUxNjVkNjE2YjM0Mzk3MTg4NmQyNyBsZWdhY3ktdHJ1bmsKKzI3NzIyIDEzOTg1OTAxNmI0NGJiOWQwNjcyNGIxMGU4OGU2NDI2M2Q2ZDVlOWIgbGVnYWN5LXRydW5rCisyNzcyMyAzZWYwMTljYWFkMWU1MTUwOGQ0OWI2OGYwOWZjYThjYzE5ZTg4ZWQ3IGxlZ2FjeS10cnVuaworMjc3MjQgMmFlMDE0NTkzMWYxZjMwOGQzZGRiMjkyOGVlZDhlODJlYTMzYzA0NiBsZWdhY3ktdHJ1bmsKKzI3NzI1IGYwOWNmOGViYTdlMjM3OTBmZDM2NTU2NThmYmZlOTZlZjI2MzI1MmEgbGVnYWN5LXRydW5rCisyNzcyNiBiYjA2OTJlMzBmYzZiMDFkM2ExNTBjZTBiMWNkMzUxYmNjZmMzZWNmIGxlZ2FjeS10cnVuaworMjc3MjcgMjMyYWIwZDY2Mzc1MmJhMmVhNmExMWUxMzQ2ZTE0Zjg3MTRmMjVlNiBsZWdhY3ktdHJ1bmsKKzI3NzI4IDJkYzIzZjBmMzQyMTVkNmY0NmEzNzk0MzU5MDQyMjJhMGUxMGJhMzYgbGVnYWN5LXRydW5rCisyNzcyOSA0ODkzMGIwMDQzYjc3MmI4YTYwMjkxMzRjNGUxZGU2ZmQyZjM3ODM0IERTX1JQQ19CUkFOQ0gKKzI3NzMwIDE4N2M0ZmFkZTNkYjNlYjVmOTExYTVkNTY1OTlkMTkxNzU2NjQwNjUgRFNfUlBDX0JSQU5DSAorMjc3MzEgMzBkMGQ4ZGJmMjQ0NThlYjE2ODRkOGIwNmU5ZjIzMjg2MTg0NWExOSBEU19SUENfQlJBTkNICisyNzczMiA3ZmVkMzUxM2FiZmE3MTNkZWMxNjZkZTk4YmNhZDZjNTEzMzQ2ODJmIERTX1JQQ19CUkFOQ0gKKzI3NzMzIDNhM2JjN2Q5ZjFmNWU2MTYxYzIwOGYwOTgzOGY2OTliY2E5NjA0OTcgRFNfUlBDX0JSQU5DSAorMjc3MzQgNGY2ZTU2YzQ0NzM5ZmU2Yjk0ZmJjN2RmM2JlODU3ZDBkYWQ4NzAxYiBEU19SUENfQlJBTkNICisyNzczNSBkMmQ4MWQ1M2Q0YTEyZGYzMGFjZDYxZWQwM2RiZGE1ZTRhNWE1OWM3IGxlZ2FjeS10cnVuaworMjc3MzYgODA4YjRmZTUxODRmY2FkNzY1ZjFlYjlhZmEzOTQ5NzAyMjg3ZTBmMCBsZWdhY3ktdHJ1bmsKKzI3NzM3IGFhNWM5OWI2MWRmNzc3NDFhZDY5YjJlNjlmZDMxZTNlMGYyYmQ3OTIgbGVnYWN5LXRydW5rCisyNzczOCAxMzdmZGRlNzAwMDYwMTAyZjI0YzQyOTNkOWExZTRmZmIzOGVkODU3IGxlZ2FjeS10cnVuaworMjc3MzkgMTU3YmJmYjE3ZjQ0Y2U5MmRiZjZiNThmNzgyMmJiYjRiYzVkYzVlMCBsZWdhY3ktdHJ1bmsKKzI3NzQwIDU1ZWFiMTBlNDcyZDM5ZjM4NDYyMmJmN2RhNWJjZjUxMWJjZDc4OGMgbGVnYWN5LXRydW5rCisyNzc0MSBmZGE1MTNiNjcxYjZjOWY2MmJlNjc5OTc0NGEwMDkzYzZlY2M3YTRmIGxlZ2FjeS10cnVuaworMjc3NDIgNGVhZGY3ZGZjZGI0YThlZWQ0ZGEzYTE5ZTc1ZjQwYWFmMDNkZDI3MyBsZWdhY3ktdHJ1bmsKKzI3NzQzIDE5NDE0MGM4MzI3NjA0OWRmNTU1NjJmYTQ2NTdkMzg5NzRiNDM0NWMgbGVnYWN5LXRydW5rCisyNzc0NCBhMzU3MTQzNjgzN2MxYTI0NWQyMzA5MmM4ZTVjYjEzYTM2ODgzZGI5IGxlZ2FjeS10cnVuaworMjc3NDUgMTdlOTRlNjIzNTNjNzM4ZDM3NWU3NjVmZTc3YzFhOWQyMWU4NGYxNSBsZWdhY3ktdHJ1bmsKKzI3NzQ2IDMzMDhhOTZiOTc2ZjZlODk1MGQ3Zjc2ZWYyNDY1OThkYTZmYWY3ZjAgcmVsZWFzZTIyLW1haW50CisyNzc0NyBmM2M4ZTNhZjdiNmJmNjI2NzhiMmE2ZjcwNTIzYjRkMTUzNzVlMjNlIGxlZ2FjeS10cnVuaworMjc3NDggMDIwZDk2NjI1MzU3ODY3Y2Y2MGY1NzE3OTUyOTA4ZTliOGJjMTlhNSBsZWdhY3ktdHJ1bmsKKzI3NzQ5IGU4ZmQ1Y2FiMGRiM2VhNzI2MDc1ZDQ5OGFlOWViMjA3ZTk0ZTU4NmMgbGVnYWN5LXRydW5rCisyNzc1MCA3MTNhZDdlMDQwNmFhNjJhZTMxMGVmY2IwOTZjMGM4MzMzNjlkZjFjIGxlZ2FjeS10cnVuaworMjc3NTEgOTc5ZmY1ZDBhZTA3YWY1NDNhNzczNzM2NDdlZGZkNWUwOWY5MzljMyBsZWdhY3ktdHJ1bmsKKzI3NzUyIGFhMGQyZDUxZmJkZWMxMTJhZjMwNDMzMjE2NzE3ZGNkZGU1ZmQxNjkgbGVnYWN5LXRydW5rCisyNzc1MyBhNzE4NmJiOTE0MmM5MjllZTFkMDA1YThhZTZkM2U4YjIxN2Y5ZDQ2IGxlZ2FjeS10cnVuaworMjc3NTQgMTAxMjkwNmU4YWRmMGZjNTEwMWE2NDY1YzBhOWU1MTAwNmIxM2E5NiBsZWdhY3ktdHJ1bmsKKzI3NzU1IDhkMjNiZmEyMGNkYmNkYjBhYWNhMDQ4ZTRjMmQ3YTdkNzI5MzQwOWUgbGVnYWN5LXRydW5rCisyNzc1NiA0YWI0ZGFjNDYyZmZkYzk5NWYzZDkyNjY5ZDhjYTc1YjAyMjVmMjhiIGxlZ2FjeS10cnVuaworMjc3NTcgZTM2MDVlYjJmODY2YjNiNTMzZjljNWQxZjdiMWI3Yjk3MDAwMjg0ZCBsZWdhY3ktdHJ1bmsKKzI3NzU5IGY2ZWFhOWQ5OTZlYzI0MmM2NWI2ZDg2N2MxZWYwNzMwOWRjZjRjMTUgbGVnYWN5LXRydW5rCisyNzc2MCA0MGUwMTQwMTgxY2Y4NTAwMGMwNWExMTQ1NmE2MDBkNWEzNDc3MzZjIGxlZ2FjeS10cnVuaworMjc3NjEgNDNlZTFjMDc1MGEyMzU1NGJkZTU1NGZmNzNhNzMzMDNkYjkzOThjMiBsZWdhY3ktdHJ1bmsKKzI3NzYyIGRmZTU0YWYyOWE0NzNmZmU4ZTM3OTgyM2QzMGIzNTc2YWY1NzZkNDQgRFNfUlBDX0JSQU5DSAorMjc3NjMgOWQ2NDFjZTY2YWYzNTgyMWNhODJjNWYwODg2YWE4ZWNlODhkYzNjNyBEU19SUENfQlJBTkNICisyNzc2NCBmNzljN2FhZTY2MjBkOGIyYjNmNzg3OTkzMDA2MTdmMmZhNGRjNDUxIGxlZ2FjeS10cnVuaworMjc3NjUgMzA3MGI3MTdmYzNkODMzMjY2YjhmZThhMzVlYTRhOTY2NzQ1MDFkYyBsZWdhY3ktdHJ1bmsKKzI3NzY2IDg5Y2U2MjEyNjY2NGYyNGI2NDBiZjljOTQ2MmI4MmFjZjE4NGM5NTIgbGVnYWN5LXRydW5rCisyNzc2NyBhYTllMDU0MjcwYTJhOWZlZmE2NmI5ZWVhYjI3OWRmM2Q1MzU3NzdiIGxlZ2FjeS10cnVuaworMjc3NjggZWMyYzg1NGJkMTk2ZDNhY2FjNDc0YzMzMDVjZDZiZTExNTdlZWMyYiBsZWdhY3ktdHJ1bmsKKzI3NzY5IGM5ZGU1NWZiYjJiMWRlYTdjZWZkMTNlZDZkY2M0MmUyNzYxYmYyZmMgbGVnYWN5LXRydW5rCisyNzc3MCBlMmQ0NjFiZWZjN2E4YzViMjE3NGFmNzcwZTM5ZDFmNWJiNDA0NjkyIGxlZ2FjeS10cnVuaworMjc3NzEgNjcyODQzZWU0YjYxZmIzOTFhMDhmM2FhNWVjNWU2OTc5ZDlhODVhMiBsZWdhY3ktdHJ1bmsKKzI3NzcyIGQ4YTY4MmQ0YzY5MjQwNDcwMDZjOWIyNDhjYjMzZWQyM2IyMzZmNzcgbGVnYWN5LXRydW5rCisyNzc3MyA0MTU2YmY5YjAwNDNjMGI3OGI5ZmEwNDQzZGYwNmNjNWJmNzhmYjRjIGxlZ2FjeS10cnVuaworMjc3NzQgM2M0NWRjZDAxMDFkZWViZWU5NGUwZjg4YzA0MTQyMWIzYmVkNTVkNyBsZWdhY3ktdHJ1bmsKKzI3Nzc1IDY2NzMxNzFmYzM3ZWJmMWJlMTg1OGI4ZDBlYzJmNWY2MWUzOTZkM2UgbGVnYWN5LXRydW5rCisyNzc3NiBkYmRhZGE5NjY4NTgyZGYxNGRjY2U3MzU1NzQ1ODMyMzdhYmFlYWNlIHJlbGVhc2UyMi1tYWludAorMjc3NzcgMGUyN2I2NzI0N2RhYTRiMGYwZWE0ODRjNDQyOWUwYWNmNWJlNGI3MiBsZWdhY3ktdHJ1bmsKKzI3Nzc4IGI0NWQxYjMwNDBhZWYwMGY3NWM5NjI1NzUzMzRkNDY4Y2FmYWI2MmYgbGVnYWN5LXRydW5rCisyNzc3OSAzYWFhZDlkZjcxMWU0M2U0ZmU5MjRlYTM5ZmUyNzg1Nzk1YTkzYzc2IGxlZ2FjeS10cnVuaworMjc3ODAgZWI3NTlkYTA2NGFhODVkYjg2M2I2OTMzNTM3YWEzMGMyMjM2ZDg3ZCBsZWdhY3ktdHJ1bmsKKzI3NzgxIGFjNDliMjgwN2I3NTBkNDc5NzhmMDg5MjQ1OTkwZDZmNGJmZGYyMTUgcmVsZWFzZTIyLW1haW50CisyNzc4MiBiOGUzNTk2Y2ViZDdkMzQ0YzA3OTIwYzJlNTExY2RiMWM0MzkxMWZlIHJlbGVhc2UyMi1tYWludAorMjc3ODMgMGEzMjdiNzY4ODY4NzRhYmRiZjE5NzAxODkyODM0MzllZGMzNDlkNiBsZWdhY3ktdHJ1bmsKKzI3Nzg0IDA3ZGQyZmM2YWM5Yjc3YWJjYTM4NWJiN2MwMjI3YWM0OWZkYjM4MDkgbGVnYWN5LXRydW5rCisyNzc4NSBiYjY0YTg2MTRmNjY4MTc0ZTQzYzAzODliNzIzMjllYWNmNzBkNDllIGxlZ2FjeS10cnVuaworMjc3ODYgNDc3Yzc0ZDAwNjZmMDYyNzY4MGVjOTJlNmU2OGNiZmU4YTM5MjM0OSBsZWdhY3ktdHJ1bmsKKzI3Nzg3IGVkOThjODhiMjM1M2JlNDA5M2IwNzA1M2E5OTYyZDdhNWM1MzBmOTcgbGVnYWN5LXRydW5rCisyNzc4OCBmNjA1MmFlYjEzNGZjYTFlODE2ZmYyMmJmZmYwODA5Y2YwZTAwYTIzIGxlZ2FjeS10cnVuaworMjc3ODkgYzdlZDkyNWM3NWIzMTBhOWFlYjhmYTMzMThmMjA5NmI4ODA2ZjhjYyBsZWdhY3ktdHJ1bmsKKzI3NzkwIDYwODczNWRkMmViYzdkNmU1MWM4MjA2ZGQxOGEyMGU2Y2I1MTcyNjIgcmVsZWFzZTIyLW1haW50CisyNzc5MSA4MWNhNmNhNWMzMDc0YjM0M2NlYmE3ZjlmMWE1MDY3OWEzMTZmMWEwIGxlZ2FjeS10cnVuaworMjc3OTIgYmQzNjY1YmQyZjc4MzMyNDA5NmU5MzgzYTYzMTFmZWY3ODAyY2JiZiBsZWdhY3ktdHJ1bmsKKzI3NzkzIDhjNmE5OTIyNDU1NzlmMzgxMmE5NTljYzlhYTNiNTExNTQwZjJkNDQgbGVnYWN5LXRydW5rCisyNzc5NCBlYjU1NGFhMzYxZTljZTgyMDZlN2NlYjNjNGQ3NzQyNTI1NWRjNzgwIGxlZ2FjeS10cnVuaworMjc3OTUgY2E1YWM5NjdjN2M0Y2NjYTEzZGNiOWQ4NWM3MDJkOGUwNWMwZTdlNSByZWxlYXNlMjItbWFpbnQKKzI3Nzk2IDgwMTI5ZDRhOGNlYzE3NTMxZTNlNjNlYTdlODlkMjYzYjA0ZjAyZTQgbGVnYWN5LXRydW5rCisyNzc5NyAzMDQ0MDg3MWM2ZTU2NDBjNmQ1NmU1MDFmMzk0N2I0MzVlZDBlZmUyIGxlZ2FjeS10cnVuaworMjc3OTggZDA0OWZkNThlNGRkYzRkZGVlYzc0ODJkZTI0YzliZWU4ODE0ZjFiYiByZWxlYXNlMjItbWFpbnQKKzI3Nzk5IDRkZTVjN2U2MjMxZTVkMzY5MDVmNzRjN2RhMWY0Yjc0Y2UwYWJiOGIgbGVnYWN5LXRydW5rCisyNzgwMCBkNmVjNGRhYjkyN2U2N2QyMjg1NzRhNWY5M2M3YWFkNjdlY2YzNTczIGxlZ2FjeS10cnVuaworMjc4MDEgMzFhNzExOWJkOGQ0ZGVmNzEzNzQyMTE5NjFlM2JlZGJhZWMwM2UyNSBsZWdhY3ktdHJ1bmsKKzI3ODAyIDhlMjY2ZDBhY2QxMGEwODIxZDUxMjZmZmQ3MThkNzg2MzAwODEyZDYgbGVnYWN5LXRydW5rCisyNzgwMyA0NzA4YzA5ZjAzNTBmOTU0NjQwNjM0YTA4MDA5OWMxNmM1YWVmZDg1IHJlbGVhc2UyMi1tYWludAorMjc4MDQgMDg5MjZjYzVmMmFmZDA0MTZmMGE3M2ZiMTkzMGNhNDAzY2QzYzEzNyBsZWdhY3ktdHJ1bmsKKzI3ODA1IGEwODhjZDA4ZGFkZTc2NjI1MGQxODY2MDY5ZDc5ZDdjNDc5MDdiNmQgbGVnYWN5LXRydW5rCisyNzgwNiBmNWNmYTBlZTAyY2YzZjY2YTJhYjczYjRlMmE2ZDgxZDY2YzBiZjQyIGxlZ2FjeS10cnVuaworMjc4MDcgZGQ2YTk3MTFiNDNjZDkwNmYwZTQyMWI2OTIzZjhmYWNmZTQzNTAwNSBsZWdhY3ktdHJ1bmsKKzI3ODA4IGEwYTU5ZTUyYmFlYzVkZDBjOGVhNjA1YzgwYjcwZjYzZGNiZWQ4YTEgbGVnYWN5LXRydW5rCisyNzgwOSA1MTVlODcyM2NhZWZmNjU5NjM0ZjA5Mzk0ZjlhY2M2MGJiMmM3OGI1IGxlZ2FjeS10cnVuaworMjc4MTAgMjc1NjkzYmNlZTc0MDJiMzBiNmM4Mzc3YjYxMjkwZDA4NzA3MTE1ZiBsZWdhY3ktdHJ1bmsKKzI3ODExIDM2ZTJmZDNmMDhmNzU4MGRlZTQ2YWQ4YjA2OWU5Mzg5N2U3M2JjODUgbGVnYWN5LXRydW5rCisyNzgxMiA1YmU5NjFhOGU5ZGIzZTE4MGY4NjNkZjQyMmViYmE5OGYwZjBmYmQxIHJlbGVhc2UyMi1tYWludAorMjc4MTMgYmQ2MjY4YjE3Yjc1NzdjOTE3YWJkMmRiOTk3NmRiY2U0MmU0NDYzNiBsZWdhY3ktdHJ1bmsKKzI3ODE0IDNkYjI2MWE5M2E1YjlmNzNhMzdlNjM1Mjk4M2VhODk3OWVmNmE3YzMgbGVnYWN5LXRydW5rCisyNzgxNSBmNGNkNzhiM2I3NzRjZmI5NGE3MmFhNmZmNWE0NTY0ODA3MWFlZDA5IGxlZ2FjeS10cnVuaworMjc4MTYgZWQ4OTI0MTFlZTBkMDBiNWVhODRlNDhiYjkyMGQwZGJjMzExZmJiNCBsZWdhY3ktdHJ1bmsKKzI3ODE3IDlhZmFjMGRkNmI2ZTRlYTBlNjMyZTA1MDhkYzI5NThlOWE5OTJmMzUgbGVnYWN5LXRydW5rCisyNzgxOCBlYTQ4MjE5NjQwNDMyNGMzYjBmOTlkNDJjNTE0Y2M5YmM2YzBiMzM3IGxlZ2FjeS10cnVuaworMjc4MTkgMTVlZTQ0NWFmMDdmN2E4NTI2OTkxY2QxYzgyMDYzZjgyZjU2MTk5YyByZWxlYXNlMjItbWFpbnQKKzI3ODIwIGY1NWQ1OGVlNGVhM2ZjYzAwZTI2MDQ0ZDdiZGZhYTMwOGU3OTI2MmYgbGVnYWN5LXRydW5rCisyNzgyMSAxNGJkNWFiMGNkYjY2YzY1ZjU3NThjZWEzNzI4NjFiYmRhMTliNTEzIGxlZ2FjeS10cnVuaworMjc4MjIgZjQ0MzZlMWIxODY4ZmVmMmYxMmRjNzI2OTllNTJjZTU4MzQ4YjllMCByZWxlYXNlMjItbWFpbnQKKzI3ODIzIDczODNlNjc0ZmNkNTFiOTMwMGU3NTk4NTk3N2UzYjVlZTdiOWNjNzAgbGVnYWN5LXRydW5rCisyNzgyNCBmZTIyNTBmNDVhYzA4NDUzMGI5MWM3MzQ4ODYxYzNkZmY5NjhiZDlkIGxlZ2FjeS10cnVuaworMjc4MjUgOWVmODIzNzc2NjlkNTNhOWJiNWMxYjgyMmY5ZDdlNmE3YzgyYzc1MSBsZWdhY3ktdHJ1bmsKKzI3ODI2IDdkYzNmNDA3N2U1OTU1M2VjN2Y5NTkzZGYyNDNmM2EwNTZkNmRhZDQgbGVnYWN5LXRydW5rCisyNzgyNyBkOThmOGUwM2ZhMzEyYTNiNDYwNTIyMzVhYjM0NDQ1YjUwMGRjYjMxIGxlZ2FjeS10cnVuaworMjc4MjggMzAxZGQ1NDY1YjhlMmIyODYwZDhmYmY1MDAyNWQ0MDU1NmNjZjFlOSBsZWdhY3ktdHJ1bmsKKzI3ODI5IDY2OTg5NjY4MzhjOGU0OTAyYWMzNTYyYzc4OWRjNmQ5Mjk0NjUzOTEgbGVnYWN5LXRydW5rCisyNzgzMCBmZTAzYWI1ODBmOTU1YjkyYjY4NDgxODY5OTM5MTFiMDVkZDM5OWM5IHJlbGVhc2UyMi1tYWludAorMjc4MzEgMmNkNTFiMDUyZGRmNzdiOTM1YjcxNDA1Y2FjMzI5MzEyZWU2NDg2OCBsZWdhY3ktdHJ1bmsKKzI3ODMyIDZkNjExMjZhY2U2OTViMzg3NTkyZWJhNDIyMjY2NzUzYzY5MDJlMzQgbGVnYWN5LXRydW5rCisyNzgzMyAyMjZiYTM0YmQ5OThiNWVlM2ZkMGFhYzllYTZlMGU4MjlhMzQxZmVhIGxlZ2FjeS10cnVuaworMjc4MzQgOWQ0NzNkNGQxMWE2OTNlN2RjYzA2OTU4YTRhNGEzZGMzOGEzZGJjMCBsZWdhY3ktdHJ1bmsKKzI3ODM1IDMyZGRlMzdjOGQ5NTk3NDBmZWIxZjUzZjhmZDBjZDZmMWVmMzJiNmEgbGVnYWN5LXRydW5rCisyNzgzNiBjM2Q5ZTAxYzYxMjQwOTdlYjNiYzI3NDhjYWFhOGY1YjViMzFjNzI5IGxlZ2FjeS10cnVuaworMjc4MzcgNmY4MjRkNmYxMjg2MjkxMjRiNzExOTQxMzQ5OTRjYzdlZjZhOGJkOCByZWxlYXNlMjItbWFpbnQKKzI3ODM4IGRkZDZmZjA2OTNjNGYwMGRkN2IxZWY3M2JhYzYzMTI3Y2UxODNjMjMgbGVnYWN5LXRydW5rCisyNzgzOSAzNTQzMjMzNzFlMzg0OGQ1YmEzYjUxOGZiNWY3YmQzODEyYzkyMzIyIGxlZ2FjeS10cnVuaworMjc4NDAgMmFkZDI3YjU1ODY0YWIwMGQ5YjZkN2M5MDQ2YmUyMjIzOTI3ZDcyZiBsZWdhY3ktdHJ1bmsKKzI3ODQxIDc0N2ZhNjVhOWI0NzVhOTJlNDBjNGM5YzEyYWU4YzI1NjliZjM2YWUgbGVnYWN5LXRydW5rCisyNzg0MiAyMjU3MGU3NmNjYTE2MjFlNmRjM2YwOTZmNTkyOGQ4ZmNkZWViNTFhIGxlZ2FjeS10cnVuaworMjc4NDMgYTVlYTRkZDE3ODgzYTdhYWE2MTI5ZWVmMDhjZjkzNWJmYmUyMGIxOSBsZWdhY3ktdHJ1bmsKKzI3ODQ0IGYwZDEzOTlhMjQ0NWQwZGM5YjU0OGI3OTExYjIwMTJjNmU2ZjM2YWIgbGVnYWN5LXRydW5rCisyNzg0NSBmODI4ZjMyMjA2YmE1MmI0ZTM0NGI3ZGMwZGUxNDdiNDBhMTM4ZjI3IGxlZ2FjeS10cnVuaworMjc4NDYgZDk3MWI4NzAzNTA4MTIxY2JmYWZlNGNiNWVlNGMwYmM1NDJiNTkzOCBsZWdhY3ktdHJ1bmsKKzI3ODQ3IGQyMTZlNjdhYzIyMWMyMjBhMDk5Zjc2OWRhZDJjMzQ0ZWQyYTVkOGQgbGVnYWN5LXRydW5rCisyNzg0OCAyNzgyNWQyNjgzMTdhMTExNjA0NGNiMThiMzdmYTQwMGJmYTFkNzY1IGxlZ2FjeS10cnVuaworMjc4NDkgNWYxNDlhZGU5YWYxOTE2MTZiNzFhYzk0NWNlOThlMmE3YTBiNjEzZCBsZWdhY3ktdHJ1bmsKKzI3ODUwIDE4OWViNmZhOWRlZDg1MzFmZmFkMmIxYjEwZTAwYTVkN2EyMzllMDMgbGVnYWN5LXRydW5rCisyNzg1MSAyZDc3YmU0MWVlNWZiMDdlNThhOWQyNDlmZWQzNTYxNDczYzdhMDAyIGxlZ2FjeS10cnVuaworMjc4NTIgN2ZjMmNlYzRkYzgyOGQ0OWVjOWIyZDQzMGIxZWYzYzVmYWJmOGMzMyBsZWdhY3ktdHJ1bmsKKzI3ODUzIGExYmRkZjZhMzJjYWJmNmRhMTMzODk3ZmM2YjQyYjAxMjJiZGZkZWYgbGVnYWN5LXRydW5rCisyNzg1NCBlYmM4NjY3ZjMyNWFkYmJjNzBiOGJkNzIwNTU2NjQxZjNmYzhlZTIwIHJlbGVhc2UyMi1tYWludAorMjc4NTUgZTMzNGRkNGU1MTBmZjE3MjdmOTNlNTQwYWMwMDdmYzJkYjBjODRlNyByZWxlYXNlMjItbWFpbnQKKzI3ODU2IDRhNjZiZWYxNWMzYmI2N2RhMDM3NDUyMGQzZTFhMzBlMDBkOTQ3YjIgbGVnYWN5LXRydW5rCisyNzg1NyAxNjFhNWVmMDIzMGUzOTA2OWVhY2MwZThjMTJjZjkzMWIyMWE1MGRjIGxlZ2FjeS10cnVuaworMjc4NTggOWIyNDk3ZTI5Nzk1M2E5OWY4ZTFkOGRjZWM2NmRlMzkxNjVkYjRmNSBsZWdhY3ktdHJ1bmsKKzI3ODU5IGU1NjI5OGRjMGY4YWU4MjE0NDJlNDE5Y2JkZmViZGQ1MzI4NDFjNWQgcmVsZWFzZTIyLW1haW50CisyNzg2MCA3OWYxMjliMDczZGViZTNiZGMwYTgyYzUxYzk1OTM1NDBkZmM4NTY5IGxlZ2FjeS10cnVuaworMjc4NjEgYjZhODJmODE4NTQwNmM0Y2VjZWYzNzk5MjQzM2QwNWVlY2FhYWIzZSBsZWdhY3ktdHJ1bmsKKzI3ODYyIGY2NmIzYTM1MDljNzBjYTA2YjM2NTg3MjAwZmNlNTI2NGQyNTIyZjMgbGVnYWN5LXRydW5rCisyNzg2MyA0NWI0ZmM2M2JmNjcxOTM2NTRiMGVmNDc3Mjg2MGU4YTI4YmY0MmQyIGxlZ2FjeS10cnVuaworMjc4NjQgOTBiNDk2NjhkMGFjM2Y5OGE5NmJmNjI1YzUyOTM2YjY2Y2RkNDk2MiBsZWdhY3ktdHJ1bmsKKzI3ODY1IDVkYmNjZTIxZGZlZWE2NzIyMDQxNmRjMmE5ZGY3ZmVmYTM0MDkyYWYgbGVnYWN5LXRydW5rCisyNzg2NiBlMTQwOWFiMGZlNjk4NzM1ZDJjZmVhZGQ5MDYzN2EzZmY3NjAxMTcxIGxlZ2FjeS10cnVuaworMjc4NjcgYWQ0ZDIzZjFiZjZlNmEyYmM3Mzg2ZDQ2ODU2N2M5ZDBkNDA2NWY3ZSBsZWdhY3ktdHJ1bmsKKzI3ODY4IGIzODc1NGYxY2I2MTEyMmVhZWNiMmRhZDNkNzViNzJmZTk5ZjcxMjMgbGVnYWN5LXRydW5rCisyNzg2OSBiNmU1MWIwODZjZjRkNmNjNWE5ZTM2NzkzN2QzZmM3YmQ3MDFiY2ZkIGxlZ2FjeS10cnVuaworMjc4NzAgNTY0NjI5ZDFmMWFjNGEyMGZlMTBmZWY4NzYyMDViYzc1YzQ5YTU3YSBsZWdhY3ktdHJ1bmsKKzI3ODcxIDAzZDg1ZDE5NzA1MmE5MTJjNmVmZjkxOTU0Y2RkN2IzMzZkZTMwMjAgbGVnYWN5LXRydW5rCisyNzg3MiA4NjkxZWRhNGMwNTczMzQ3OWEzNTY5MWQ1NjFhODQ2Njc5MDY3ZDgxIGxlZ2FjeS10cnVuaworMjc4NzMgNzg5OWZkMmFmOTEyNWY4NjUxNTM5M2Y3NjY2ZWVhYmM3OWYwM2RlZiBsZWdhY3ktdHJ1bmsKKzI3ODc0IDcxYmEyZTk2OWMxMTQxNWQ0MGQxNzZjNzRmMzM4MDUzNzdiOWFjNjQgbGVnYWN5LXRydW5rCisyNzg3NSBlMDEyOGQ2MTZmODc5NTlmODZhZGVhN2Q3OWYxMjM3ODZkZjFlYjdjIGxlZ2FjeS10cnVuaworMjc4NzYgZjA1YTMxMWQ3OTg4NjI1N2UyN2IyOTQxOTJlN2E1MzFkMzMyMGE1OCBsZWdhY3ktdHJ1bmsKKzI3ODc3IDEyYWFmOGQ1YWQyYmU3MDc1NzI4NjI2MDY2MDc5MDU2ZWU0NGIyNTIgbGVnYWN5LXRydW5rCisyNzg3OCA0ZTYyN2Q4Y2Y5ZjRkMmE4NDk2ZjRhMzc5ZmRhZmU4NWYyMDdmZDEwIGxlZ2FjeS10cnVuaworMjc4NzkgZGYwNjI4NjYyYjQ4MWUzODU0OTQ1Mzk2YTY2YWY2MDFmOTQ4ZWQ3YSBsZWdhY3ktdHJ1bmsKKzI3ODgwIGJjYzM1YTBmMWE3OGU4Y2ZiMTllMGZmODM5Y2I5OTAzODY4MDQ5MzIgbGVnYWN5LXRydW5rCisyNzg4MSAwODU0NTI0ZWNlMDA4NDBkYTU0MjMyNmQ0MmI2ZjcxZThkM2M0ODcyIGxlZ2FjeS10cnVuaworMjc4ODIgNGJmYzhjNTE5YjZkZDU0YTk1ZDliZGI2ZWM5MTdjNTMxY2Q5YjAyZSBsZWdhY3ktdHJ1bmsKKzI3ODgzIGZiMDY5MWYxMGQ5MTJiNDlmNDNiODdlNWM1MGJhZGY4M2Y1MTA4OGYgYXN0LWJyYW5jaAorMjc4ODQgM2RkYWNlMWQxMmE5ZmU1MGM2Y2VmNGM5MDhjM2NhMDRiMTNhMzdlYiBsZWdhY3ktdHJ1bmsKKzI3ODg1IDgwOTFhNGEzYjhhZWMyZWYzMmUxN2Y4YjI4ZWFkZjk1MzBiYmRmMzUgbGVnYWN5LXRydW5rCisyNzg4NiBlYzFhMmQ3YWMwMmJjMDQ5MjM5OTJkNjM1OTg5NTFiYjc2OTFiZWUyIGxlZ2FjeS10cnVuaworMjc4ODcgMzAzMzVjNjhiNzg3ZjkxZmUwNjE4ZmNjZDZmMWM4MGNjODNhNzg4NyBsZWdhY3ktdHJ1bmsKKzI3ODg4IDI2NzBhNWRiNjg0MzE1Y2ZlNDU3M2RjMTMzYmE3NWFmNDlhMzllOGIgbGVnYWN5LXRydW5rCisyNzg4OSBkYWY3NTc5YzIyNDgyMTkyY2NlOTg1NDViZGU3ZjVlZTQ2NjRkNWRiIGxlZ2FjeS10cnVuaworMjc4OTAgNmRjZjEyOGQ3ZTAzMDhhY2Y4NWY2YzA2NjBkY2ZjNGE4YzM1MmM3NiBsZWdhY3ktdHJ1bmsKKzI3ODkxIGFjNzYyODc2OWJhNTNlMWJjNTY0YThmYjVkZjM5MzMxZDI5YjRiOGMgbGVnYWN5LXRydW5rCisyNzg5MiAxN2E4Yjc0YmJlNWNmMDRjNjhjMGU5NDQ2MDI0Nzg1NTk4ZDhiYWJlIGxlZ2FjeS10cnVuaworMjc4OTMgZGZlNjg4NGI1OWUwZTdlNDBiZWY2NmI3ZDMwNTgxYTZjZmEyYTY0YiBsZWdhY3ktdHJ1bmsKKzI3ODk0IGZlMmNmY2U0ZTY1ODYzZWQzMTcyYjViMTM0NTRiOWNlNDBlN2IxOTYgcmVsZWFzZTIyLW1haW50CisyNzg5NSA0ODk3ZTI5ZTE5Y2MwNjdjNmI5MzBmMGZlMjMwM2NlMGM0MDc1YjQzIGxlZ2FjeS10cnVuaworMjc4OTYgODdmODI4NzI2ZmU2ZWFiNjE5NTk4ZmVkNjE4YTExY2I5NzhjZTMzNiBsZWdhY3ktdHJ1bmsKKzI3ODk3IDMyNGIyZTdhZjY4MzU3YTBiNzNmOTMyODAxOGUzNWYwNWUwYmQzMzMgbGVnYWN5LXRydW5rCisyNzg5OCBmYTMyZTdhNjVhN2U4ZjhiZWEzM2M5YTVjMjgzNzdjNDBkODJjYTlmIGxlZ2FjeS10cnVuaworMjc4OTkgZGZlNWE2ODk5NzliYTgyM2NmYmVkNzUwZWEyMTUxZTA1YmRmZjUyNiBsZWdhY3ktdHJ1bmsKKzI3OTAwIGFiYjUyZDU2YmE1YWFiYzVmMjA5N2MyYTk3MDFmOGNlNGU2MTJlOGMgbGVnYWN5LXRydW5rCisyNzkwMSAxMmQ4NWI3ODUyNjM2MzRlN2EyNjlkYTcxMTgzMWRkYTUxYmY1NmRlIGxlZ2FjeS10cnVuaworMjc5MDIgN2VjYjZlYjFmZTc3Mzk3NDU3MzY1NmUyYmI0ZjEwN2EyOGYzYjYwZiBsZWdhY3ktdHJ1bmsKKzI3OTAzIDdmYWMxMzNkNTM5ZmZhY2IwYTI1N2E4YjVjNDU0MjY3NGFlODAyM2YgbGVnYWN5LXRydW5rCisyNzkwNCA1NmNlNGM4ZjRmMTY5ZjIxYzljMTc4ZDUxYTAwYjljOWViZGM1ODBmIGxlZ2FjeS10cnVuaworMjc5MDUgNzAyZTExM2QzOWIwZDU1YmRiOGQ4ZWI1YzE2OWFhOTllMGE3OTU3OCBsZWdhY3ktdHJ1bmsKKzI3OTA2IGQ4YmEzNzNiZjJiM2M3MjdiNDE2MzNiMzQzZTcwMTcyNTU1YTMwNmYgbGVnYWN5LXRydW5rCisyNzkwNyA5NGZmMDc0MzgzNzdiODdkNDhiNjU4YjQ2MDdiMjBjNTA5NGJiMzcwIGxlZ2FjeS10cnVuaworMjc5MDggYWUyZmI4ZGEzODYzZTk5NjQyNTlkZTQ4MTdhZTcxYjZiMDZkZTc3MSBsZWdhY3ktdHJ1bmsKKzI3OTA5IDc1ZmQ4NjI5MDFkODNlN2YwMzM2NWFjMmY0ZmRiMzg3ZDY2NDJkZjQgbGVnYWN5LXRydW5rCisyNzkxMCA4YTEwYTcyMWI4NGJjZWVjY2JlYmVhYjM2N2EwYmRkN2QwMjQ3NTRhIGxlZ2FjeS10cnVuaworMjc5MTEgMGNmNGUwNTM5Y2MxZjU4MGMzZjZiZDZhNjQ4MTc0MjUzMjgzMzE4YSBsZWdhY3ktdHJ1bmsKKzI3OTEyIDE3NWNkMGUwODhhYWNjZjkzZDRhMDAwNTZiMzk0NTQzNjljNTM2ZjYgbGVnYWN5LXRydW5rCisyNzkxMyBhZGYwYjIxNWE1MmFlMjU5MDRmZDI4ZDBiNzZlOTczOWViMzg3YmFiIGxlZ2FjeS10cnVuaworMjc5MTQgNWJkMGYyNDFlYzVhZGJiOTI4YTVmMTU3MmUyYzljZDM5YjE0MDcxMyBsZWdhY3ktdHJ1bmsKKzI3OTE1IGE3M2E1ODk4YmY0OTJhNTYxMmJhMWVhZWFjYWU5ZTRhY2EwZjVjOTcgbGVnYWN5LXRydW5rCisyNzkxNiBhNTMyNGIwOTQ5NDJlMzI4NTY3NDRjMDA1Y2RkM2QxYTE1M2U2N2ZmIGxlZ2FjeS10cnVuaworMjc5MTcgM2NiMDU1YWFlNzM5NTdkODAyMjM1MzdiOGIyYzY2NTVlMWYwNjA2YyBsZWdhY3ktdHJ1bmsKKzI3OTE4IDFmMDE3ODcwNTUyZTY1M2JiOGRhMTQxOWJhM2JiODEzNDkxZjY5MTggbGVnYWN5LXRydW5rCisyNzkxOSAzMmY5MmQ3NjZiODEzNmFhYjQzYjYyYjcxNTY4ZDYxOTZmY2UwOWM4IGxlZ2FjeS10cnVuaworMjc5MjAgNjJmNmJhYmVjZTFmYzMyNDU3NGRjMmJlNTI2NmU5YTAzNDUxYmMzZCBsZWdhY3ktdHJ1bmsKKzI3OTIxIDM0NDQwMDViNjUyNzAzZDJmYjQxZGJjOTFhN2E5YjVkNmVlZjE3OWUgbGVnYWN5LXRydW5rCisyNzkyMiA5NWRmODdkNDQ5MjNiZmQ0Y2VmYWEwZDlhNGI1ODU0ODZmZmRhZmYwIGxlZ2FjeS10cnVuaworMjc5MjMgOTUwYzVhMDlhZDk5ODk0MTlkZmFhZmY0YWYzOTAxYzM0ZGE2MmE0NiBsZWdhY3ktdHJ1bmsKKzI3OTI0IDgyYzQ4NjUzODYxYjU2ZThiYzBjMzg2YWEwY2U0NzhmMWU3Y2U1NGMgbGVnYWN5LXRydW5rCisyNzkyNSAxYzI2ZWI3NjgyOTM2ZDAxOTA3NjJhODE0ZTVmY2IxZjg0ZjNkMjhkIGxlZ2FjeS10cnVuaworMjc5MjYgYWYxZmI0ZmVjMmI0NGQ0MjYwZjQwNjlhNzYxNTllYTk4MmIzYTM2MyByZWxlYXNlMjItbWFpbnQKKzI3OTI3IDQxODk1NjA5ZDA4NGNkYTc1MDgzYWM5NjViNmJmNjAwMTNkNmEzMDMgbGVnYWN5LXRydW5rCisyNzkyOCBlOTYxY2QyZjIyZTQyOGE0MWUyNWM3NTExOTk3NDY2MjZiOTliYjBlIGxlZ2FjeS10cnVuaworMjc5MjkgMjhhNWM4YWZhMDU2ZTUyY2ViNzBkZTBhMmRiMWNiMTJjMDFmYjJkMCBsZWdhY3ktdHJ1bmsKKzI3OTMwIDhkNWUwZTNmNjQ0NTAwZjI2ZWY4YjI5NDdkYTE2M2Q2ZDQ3YWQyNTcgbGVnYWN5LXRydW5rCisyNzkzMSAwNmYxZTJmZDA1YmNhYWUxNmYzY2Q4M2ZkMzE2Yzk0YWMyOWY3NGM4IGxlZ2FjeS10cnVuaworMjc5MzIgNjE0MzU4ZTNjNGY2YWVmZjJiMGQ5ODg2Y2RmOTFmZmRlOWIzNjMxYSBsZWdhY3ktdHJ1bmsKKzI3OTMzIGZmOWVmYTY5MjU5NGZiYjgzZmViODVmNzU1NjE3OTQwZDJkZjk0YjAgbGVnYWN5LXRydW5rCisyNzkzNCBkMGQzZjc2MGQwNjc1ZGUzNzcwNjU0MTkxZjI3MmQwYTYzYTYxZTVlIGxlZ2FjeS10cnVuaworMjc5MzUgYzAwZGYyM2U4NTZlNWUyYmQxZGJiMTQ5NDQyMzNkOWM3MzRhOTVhYyBsZWdhY3ktdHJ1bmsKKzI3OTM2IDBiZDUyMWViNzE0ZWFjYTg2ZjhjYTI0NTNhZTRmYjUzNjRiZTFiZTMgbGVnYWN5LXRydW5rCisyNzkzNyBkZDk5M2QwMWU3NDA0MTE4ODM4NDQzY2Q1YzMxZDNhYTQ4Mzk0MWQwIGFzdC1icmFuY2gKKzI3OTM4IGI1YjliMDMzNDQ2OWM0NzZmZWZmMGZiZjZkMmM3NjljMjAyNTI5NDcgYXN0LWJyYW5jaAorMjc5MzkgZDJmNDFjOGE4MWYwZDk1MzhjYTUyYTMyMGNkYTJlMzM4OGVjNjE2OCBsZWdhY3ktdHJ1bmsKKzI3OTQwIDk2ZmRlOTgwOGUxNWM3YTAzM2RhNzNmZWE0Y2FlYjM1YmUzY2M1MmIgYXN0LWJyYW5jaAorMjc5NDEgNDIyODZkMmU0ZDJmZjc1YTYxODI4ZDAxYzRiYWM1YTA5YTJhODJiNiBhc3QtYnJhbmNoCisyNzk0MiA1M2YyMWY0MzQ5NTY2NTZhYzk3OTc5ZmQ0ODlkMjUzZTdiZGZkNjExIGxlZ2FjeS10cnVuaworMjc5NDMgNGYwMDEzNGI1NjFkYjUzNGEzMmY1ZmQ0M2JmYWUyMDc1NmQ5N2ViYSBsZWdhY3ktdHJ1bmsKKzI3OTQ0IGYyMDI1YzY3NmUyNDE1NzI1ZjZkM2ZjYzNmNDMwZTk1ZmJjN2FhNWMgbGVnYWN5LXRydW5rCisyNzk0NSBkODc1MDg5N2M4OTdjYWFiMTE0MzZmOWZkNTAzNzMwMjIxMDk0MTg1IGxlZ2FjeS10cnVuaworMjc5NDYgYTZhNGE5NTFjNjE2Y2U3YTkzZmNmNTdkMjQ1NTEzNTA4ZDdhZmM4NCBsZWdhY3ktdHJ1bmsKKzI3OTQ3IGUyMTM4MWZkODc1NjQxMGFkZDNlNzlkZDZhYWE2ZDA5NDYyMWNiZmMgbGVnYWN5LXRydW5rCisyNzk0OCBjOTgwOGY1MjEyMGFmYjllMjZkNGQ4ZGY2MzgzYzNkOThkOTg1NWNhIGxlZ2FjeS10cnVuaworMjc5NDkgZDVmMTdkODVmNmEwNjU4M2I2YmY3YWM2NmFiMjNiNzkyNmFjMWFhYiBsZWdhY3ktdHJ1bmsKKzI3OTUwIGRmNGE5ZDNhYmM1NmExMmE3YWIwOGQ4NDg0ZWUyZjk4MjkyMDc5YTQgbGVnYWN5LXRydW5rCisyNzk1MSA1ZDZlNDcwY2UwNWNkNWIxODBlMjFmYjQxOTRmZjIzOGM5OWY2NmMzIGxlZ2FjeS10cnVuaworMjc5NTIgYmJhYzRlM2NjYjYyNTIzNjZiOWNiZDkzMGQ0ZjMzYzY2YjFlNDgyMSBsZWdhY3ktdHJ1bmsKKzI3OTUzIDRiZjk0MTQ5ZDIxYzdlNDYzYmE4ZGFiYTFkYjE5MTQ5ZjMwYzY3ODUgbGVnYWN5LXRydW5rCisyNzk1NCBkMjZiNjJmMGM2ZGJjMzUyZjBjMjUwZjViNzQ1MDc0YzkzYmM4MmU5IGxlZ2FjeS10cnVuaworMjc5NTUgZjA1OWQ1NDM1ZDY1MzJlZGU3MDU4Mzg0M2U5MjIzODE3MTk4NzNiMiBsZWdhY3ktdHJ1bmsKKzI3OTU2IGI0MjY5ZmE2N2MzZTljYzRhMGUxZjQ3MzlmMzQyZmFmNjU5OTc1M2IgbGVnYWN5LXRydW5rCisyNzk1NyBiMjVjMzFlMDA4YzhjN2QyMTQ5N2UzZjU2YmFhNjYxZDdlZWQ5OGQ1IGxlZ2FjeS10cnVuaworMjc5NTggOTM0OGZhMjBmMjE0OTIwZDFhZWNiZDNmYmUzMGJjMmFjN2ZjMmY2OSByZWxlYXNlMjItbWFpbnQKKzI3OTU5IDQ3OWY4ZjRlZTRhZDQ1NWFjMzUxZTJjNzIzNWJhMjU0NGVkZGY5MGYgbGVnYWN5LXRydW5rCisyNzk2MCAwYmIzOTg2Y2Y2NTNhNjA1ZWRlZDg2YjlhNTFjYTU5OTM4YzJjMzk4IGxlZ2FjeS10cnVuaworMjc5NjEgYzhkNjk0YjY0MWYxOTI0OWQ5Y2RiYzk5NGFjZTVlMWUwOWIwZTI5OCBsZWdhY3ktdHJ1bmsKKzI3OTYyIGFhYmM5NzkwMmUxMDQ2YWJjYmU1MjM0NTUwOTlkNzU5YTcyYTZlZWUgbGVnYWN5LXRydW5rCisyNzk2MyA3Y2E0NmUwODIwMGRmZWU1M2UyMTZiMTdiZTMxODQ2YTYyZjI1OWY1IHJlbGVhc2UyMi1tYWludAorMjc5NjQgNDU3YTA0NzgzMTgzZjU2ZjcwMTYxOGFlNGQ1OGJhZDVmYmFiNzBkYSBsZWdhY3ktdHJ1bmsKKzI3OTY1IDhjMzhlYTA5MmYyMDdlYmY0NzA5YzBiZWNiNTc5YjEyZjg1MjYwZWMgbGVnYWN5LXRydW5rCisyNzk2NiAxMGRiZGU2OTg3NjY5MjRkZmNkMzc3YTI4NzlkZDJlOGRhOWQ4NjY1IGxlZ2FjeS10cnVuaworMjc5NjcgODFjNTZjYmMxZDVmZjQ4NWU2NDJhN2NhZDg1NWI0ZDU3MDNhMDMyZSBsZWdhY3ktdHJ1bmsKKzI3OTY4IDAwNDg4Y2E5ZTA0Zjc1NGI4NjcxMjEzMjFkY2EzNTgyMTdkZTU1YWUgbGVnYWN5LXRydW5rCisyNzk2OSA4NTExMjFlY2MxMTExN2E0NzgyNTg5M2M1MDk1YzM3ZTNmMDA1NjcyIGxlZ2FjeS10cnVuaworMjc5NzAgODBmZDBkMzYxZTE3ZjYwNGFkYWY2ZjFhNzYwMzBmYWIzMGRmNTZjZCBsZWdhY3ktdHJ1bmsKKzI3OTcxIDkyMGFkMDk5MzBkYzUwOWM5N2RkMmQ2NGRhOGMxYTZkY2QyY2U3MjMgbGVnYWN5LXRydW5rCisyNzk3MiAzZTcxOGMzZDUxZWZhYmQxMzhhMWQxNzJiMDExYTc0ZWQ0MDIzNWE3IGxlZ2FjeS10cnVuaworMjc5NzMgYTMyY2ZmMGM3NWRjYzdlZmI1ZGJlMmRhOWY3YWEzNzNjOGIxZjhjYyBsZWdhY3ktdHJ1bmsKKzI3OTc0IGNjY2JjMmM3OGMwOThiMzc5ZmExMjhjNmU3M2EzNWExZTVhYWU3MDIgbGVnYWN5LXRydW5rCisyNzk3NSAyNDQxMTdhZWJiZDU4NWJlZTllZWFmNWNhMDA0Mzc1ZjZlOTM2ZWYyIGxlZ2FjeS10cnVuaworMjc5NzYgY2EyMGJlMjQzODFmYjMwNWYzMjkxMmY3OTRjY2JlMmRjODc5NmM1YSBsZWdhY3ktdHJ1bmsKKzI3OTc3IDQzODJiMjM3NDM5MDFkZTcyNGVjNTg4YmE5YzdkZWQ1NTQwYWZiNzkgbGVnYWN5LXRydW5rCisyNzk3OCA5YjFiMmI1OGM4NjY2MjM2NzBjYTY0MGI1MTk5ZWRhODUzZDczYzJjIGxlZ2FjeS10cnVuaworMjc5NzkgMDBmOGRkYTE3ZWUyYjUyYWZhZGU5NTE0OGMxMDc5ZTBlZmYxNGRmMiBsZWdhY3ktdHJ1bmsKKzI3OTgwIGVjMmUyODMwMGI3NjU5YzY3OTczM2IwZTcxYThkYTcwNDhiM2Y0NTUgbGVnYWN5LXRydW5rCisyNzk4MSAyNWQ2N2M5NGE2ZDFhMGM3MzM1YzlmZDY4NzU3ZDNmYjk5MTBmODVhIGxlZ2FjeS10cnVuaworMjc5ODIgYzM5YWVkNDVkYmU5OWRjOWEzNDc4YTNkNTk3NDBkMTkwODJjYTkxOSBsZWdhY3ktdHJ1bmsKKzI3OTgzIDlkYmExMjE2N2RiNmY3ZDIyNmZhOTQ1MmVmMzlmNWVhNjZkOTNjNmIgbGVnYWN5LXRydW5rCisyNzk4NCBjYjMwOGExM2ExZmQyMDQ2ODdlYmM0NmYzZGJjYmVhZWExNWI1YWRlIGxlZ2FjeS10cnVuaworMjc5ODUgZmQwNWMyZDM1ZmU3MTkxZjJkYWVkOGVkYmVhODBmYzhhNzk1MzA1NCByZWxlYXNlMjItbWFpbnQKKzI3OTg2IDgzOTMxNWRlMGNhMTBlMmNiNDk4NTEzMTYyNzZjMjBkMjhmMGE0NzMgRFNfUlBDX0JSQU5DSAorMjc5ODcgMWVhNTY5ZWE1MWZkOWRlODAwODc0MTk1MjY4Y2E5YjIxOGRmZWI5YSBEU19SUENfQlJBTkNICisyNzk4OCBlN2I2YmMyYjM1ZTJlNDJiZTg3N2E0ZDMxNmIxN2EzNDk0NDY5NGFjIERTX1JQQ19CUkFOQ0gKKzI3OTg5IDMwNzMzMmYzN2I3ZDkzN2Q0ZmUzYjUxNjU0OWYyMjY4YzJlNjkyMjEgRFNfUlBDX0JSQU5DSAorMjc5OTAgMzI1N2VmZGE0NTEzMzFlN2JjZDNiNjBkMDE3NDA2NTczNWM4MmIzNiBsZWdhY3ktdHJ1bmsKKzI3OTkxIGU0YThlM2U0MjEwZDk3N2U3ZTc5NzY2YzRjNjczNTc0MTE4NDQwMWIgbGVnYWN5LXRydW5rCisyNzk5MiBkYTg4ZTk5MGY5MmNjZDJlNzE4M2Q2Mzc3MWIzNjRjOTlhMTg4N2QzIGxlZ2FjeS10cnVuaworMjc5OTMgNmUwZGVlZWI5Nzg3ZDNiM2Q3ZmI3Mjk3MTU2M2VjNGFiNzFlMTdkNCBsZWdhY3ktdHJ1bmsKKzI3OTk0IGY5MjhmN2VlYTJkNjk4NTg2ZDMwNGZkNTRiNzhhZDlmZjAwZDk5YWMgbGVnYWN5LXRydW5rCisyNzk5NSBhNTA2YWI5YmI0YTQxNDcwNDllZDdkNzQwNWU1OTMyYjE4ZTE3YTRhIGxlZ2FjeS10cnVuaworMjc5OTYgYTAyYWJhNzJjYmIyNDk5ZTVhMzAxNzc2NmQ4NzJmM2IyZGM0MjlkZiBsZWdhY3ktdHJ1bmsKKzI3OTk3IDAwMTY3YjJlY2FjYzVlYmMzNzliNmZmYjUwN2FjNTA1NWM2NDc5MGEgbGVnYWN5LXRydW5rCisyNzk5OCAxMmUxNDYxNzFmM2RjOTA2YjkxYmFlMGM2YzlmNGQxZmJlNGFhNjliIGxlZ2FjeS10cnVuaworMjc5OTkgZDdjYTBhMmNlMDc0NmI4NmIzMTIyNzU2NTc5YmE4MmQ4ZDUxNjUyZCBsZWdhY3ktdHJ1bmsKKzI4MDAwIDU5ZDUzMzU4MGU3MmQ2MTUzYzhjZTRkNjMxN2RhMDU5YzNlYmUxNTAgbGVnYWN5LXRydW5rCisyODAwMSAyNjJhZDE2YjRkZTA5YTMyYjFjMTM0YmMyNTAwMWY3YTAxNzk1NzQxIGxlZ2FjeS10cnVuaworMjgwMDIgZjVlMjljNzMzNmRkODhlYmUxNjBlNDNlNTJhMTZkZTQyMzllMmQyMSBsZWdhY3ktdHJ1bmsKKzI4MDAzIDczYjMwOWNmMDIxMzU1MjljOTlkODRiY2MzZjM0Zjk4NjNiZDE1MTMgbGVnYWN5LXRydW5rCisyODAwNCAyYjA3NjZhZmFhMjIyZDBhYjA3MWViMDdjYThmODI0YjNjYjBhM2M3IGxlZ2FjeS10cnVuaworMjgwMDUgZmQ0NTc1YjU2YTRkZTAxOGU2NzhjZTQ3MzY2ZTI0ZTg4NGY5OGFhZiBsZWdhY3ktdHJ1bmsKKzI4MDA2IDk0MGM0ZjU0NmU3ZjE3ZTc0ODNjZTlkNDQ3OTY1N2MxNjQ4ZjYyM2UgbGVnYWN5LXRydW5rCisyODAwNyAzZTRkNDMyODcyZWE3OTE4ZjM3MzJkMjg1MWVhOGZkMzUxOGEzNDE2IGxlZ2FjeS10cnVuaworMjgwMDggYjY3MDdlMTU5OTA5YTY1Zjg4YzhjN2ZkYzI2Mzk4NWVmMDZlNjhiOCBsZWdhY3ktdHJ1bmsKKzI4MDA5IDQzNGVjNTIzZjMyYzdkNjA2ZGYyODYzMGE4MDQ2NzQwNjY1YmI4ZTMgbGVnYWN5LXRydW5rCisyODAxMCAxM2RlMmY2ZjA3ZGRkYzk4MTkwM2IzNTY4YzQ4NmI0ODRlM2YxYzk0IHJlbGVhc2UyMi1tYWludAorMjgwMTEgNjU0MmRmYTQwZTc3Yzc2MWQwMTQ4MDk2ODZhMjI3YTY5MDFiYWMzYiBsZWdhY3ktdHJ1bmsKKzI4MDEyIDhhNzRmMzM1Y2ZiYWI5ZTEyNzc1NDE3Yjk3MjZlMzk4NWEzNzQ4NTMgbGVnYWN5LXRydW5rCisyODAxMyA3OTFiYmVkYmJiZTllMzc2Y2Y4YmQ0OTRiMjRiODJlNzNhYzc2N2MzIGxlZ2FjeS10cnVuaworMjgwMTQgNDBlYjgwZGM0MjUwMGU5ODBlMThjYWNkM2Y2ODM5YjMxMGY0ODQyYyBsZWdhY3ktdHJ1bmsKKzI4MDE1IDhhMWMwODZhZDIxM2E3NjVkNDFlZTYwOTgwZjUyMmEzMGZhZTE1YWMgbGVnYWN5LXRydW5rCisyODAxNiAzNWRiYTYwMDdhYzM3ZDJmNGQ0ZDhjMjZlZGQ5NDlmN2FmNTkxOTYxIGxlZ2FjeS10cnVuaworMjgwMTcgZGJjMGYyZjExNDE0MjBjZGYyOTc4YjU0MjZlMDQ1ZjJjNmRlM2FkNSBsZWdhY3ktdHJ1bmsKKzI4MDE4IDY0MmRkY2ZlODY0YTRmZWFmYTg4ZWY2YmNmMDEyYjU1ZWE3YjQ5NDggbGVnYWN5LXRydW5rCisyODAxOSBiNjRkYjU1MDk3MmMxNDBmNDRhMWZmZGE5ZWU5Y2Y2NTc5NWNkODZhIGxlZ2FjeS10cnVuaworMjgwMjAgNzM1NDQxZmRhYjdlNDc0ZmU0NTBhMTZkOGE2NmI0NDU3OTVlMDdhNyBsZWdhY3ktdHJ1bmsKKzI4MDIxIDgwYjEyOTQ0YTQyYjBhZjcxNTA1NzUyMjg2Yjg4ODg5MDFiY2U5M2YgcmVsZWFzZTIyLW1haW50CisyODAyMiBjOWQyNDI4YTZhODVlZTg4NWVlZTRhODI4OWEyMWE2ODkwZGYyODQ3IGxlZ2FjeS10cnVuaworMjgwMjMgMTFiMjYyZmVkNTgwOWNjYzQ1NDg1MmY3ZDU0YmM2ZWY3MGE5MGI4NCBEU19SUENfQlJBTkNICisyODAyNCBmYjQ1OTFjMDQ3MGUyODAwZmM4ODc1NzRlMWRmZTUwNWFiZWYzNWYxIERTX1JQQ19CUkFOQ0gKKzI4MDI1IGQ2ZTVlOWExYmNhMDhkNWM0MjcyMmZmYzM1ODU4YmEyNzI3ZjEzNGQgRFNfUlBDX0JSQU5DSAorMjgwMjYgYjQ3YTZhMmExZTU2MGMyOTExZTYwZDc4MjZiNzU4NjljMWQ2NmZlNCBEU19SUENfQlJBTkNICisyODAyNyAxODY5Y2VjZDM5MzM0OTIxMDRkZmMzODMzMTc2NzJjMmRkM2U3OGUyIERTX1JQQ19CUkFOQ0gKKzI4MDI4IGY3MzI1OTc2ODQyNjdhOWJiYjRmOTBkMDM2YjgyMzFiOGNmYjljN2QgbGVnYWN5LXRydW5rCisyODAyOSA2NDQ1ZTQ0ZmNiNzgzNjBkNzI1ZTljODBhNWYzZDQwYmY1MmEwZWU2IGxlZ2FjeS10cnVuaworMjgwMzAgNDgyYzk0MWQ1OTNmODYxYzRmZjUxYWE1OWE0ZTI5M2UzZjc3ZjY1MCBsZWdhY3ktdHJ1bmsKKzI4MDMxIGYzZTY5YjlhY2M0MDZiM2UxZGYwZDE0MzIwNDIzMjEyMjAyM2E1MjQgbGVnYWN5LXRydW5rCisyODAzMiBkZGNiOWNlMDQ1NDY0OTYzMmRiMjhmYjY2NDY0MzM0N2E3NmFjNWJlIGxlZ2FjeS10cnVuaworMjgwMzMgMGRmOWE5YzA4YzEzOWU5NjFkM2YyMjA4ZDJlMTMxNjA4NDA5Njg5OCBsZWdhY3ktdHJ1bmsKKzI4MDM0IDdmODk2N2Y1OWNmODJmMGYyMjBkN2RlM2RjY2U3OGM3YWYxMTFhNzAgbGVnYWN5LXRydW5rCisyODAzNSA0M2NhYTIxMmI5NTljZjdiMGE5YTg1NzA0Y2NiZmIzMjQ1MTU5MjEwIGxlZ2FjeS10cnVuaworMjgwMzYgMTEwYzZlZGFmNjJmMzg1OGU0ZDYxMWE2ZTgyYTk0NDg5NDdlZTdkYSBsZWdhY3ktdHJ1bmsKKzI4MDM3IGY2YTk3Y2QzYmEyNGI0NTU3ZTA3M2VlMGJhMGUwYjY5ZWJlOWVjMmUgcmVsZWFzZTIyLW1haW50CisyODAzOCAxZWJjMTI4ZTQ4NDJjMjg0YTJjNGM0YjRmNzc3Y2I2NGIzNjVjYTU3IGxlZ2FjeS10cnVuaworMjgwMzkgNzc4MDkzNTMzYTQ2Mzk5YWJiM2IxMDdmOGI0OTE0MDZhNzlhNGY2OCBsZWdhY3ktdHJ1bmsKKzI4MDQwIDdhZTNkNzQ4NjgwMWU3ZmJlZmNjZDc3NGJiODM0NjBkNjFjMzk2MzcgbGVnYWN5LXRydW5rCisyODA0MSBkYTkwNjUzZmMyYzZlYmNlYjBjMmQ0ZWY4NzBiNmJjNGNjZmUzZDA3IHJlbGVhc2UyMi1tYWludAorMjgwNDIgZjMzYzAxY2M0MTRjODk3NTQ1NjQyMDk0ZTliZDQ2ZWVjMDdiOWU5MSBsZWdhY3ktdHJ1bmsKKzI4MDQzIGE5ZjI1NjdjMmY4Mzc2NTgyMTdlNmRjYTMyNzU3ZWIxYWY5OTYxYmMgbGVnYWN5LXRydW5rCisyODA0NCBmYjFkMGU1NWIxNTIxZDZiYWJkYzY5OGIxOGIyMzk2ZTBhZGZjNTU2IGxlZ2FjeS10cnVuaworMjgwNDUgYmVlZDFjMWU3YzZkZjY3NzE3MzNmZjJlMjQ5YTI4YzAyMmM1ZTgwNSByZWxlYXNlMjItbWFpbnQKKzI4MDQ2IDBkOTg2NjBlMzY1Mzk1ZGRkOTQ1Y2IxNzYzYTlkZWVkYmZlYzY3ZTAgbGVnYWN5LXRydW5rCisyODA0NyBhMGViOGUzODJkNzRjYjEyMmI3YjFjYTQ3MDAyYzNjYjU4MmFiNzk5IGxlZ2FjeS10cnVuaworMjgwNDggMjdkYTJiODFhNDk2YTkyNWUxMTFiNDViOGU3ZjM2NzhlOGY3YzAyYSByZWxlYXNlMjItbWFpbnQKKzI4MDQ5IDdiYTNlNWZiYWFkODBjMzMwYWRkYzdjNWY2Njg3ZjQzZGI0NWMyYWQgbGVnYWN5LXRydW5rCisyODA1MCA4Y2YwMDMzOGI3MjhkMzg3ZGNjYzEwOWUxMzRmYzgxZGU5MzczYmIxIGxlZ2FjeS10cnVuaworMjgwNTEgNGIzNDJlZDMwOWUwMmNmOWI2YmIyMmE3N2QzNmU5MDgzZmE2ZDU1MCBsZWdhY3ktdHJ1bmsKKzI4MDUyIDY5N2QyMjNhMmY3NjY2MDM2NmQzMjUyZDdmYzZmNWQ3Mjg4NjNkYzEgbGVnYWN5LXRydW5rCisyODA1MyBlZGY3NTcyMTNhOTJkYjAzY2Y4OGU3MTA5YWZlMGM5YmRlZDdhNTRmIGxlZ2FjeS10cnVuaworMjgwNTQgMjI0YzUxNmJjMTFmMWUxNDQ2ZWM3M2Q0YjkzMzhiMjAwZGYzZjA4ZSBsZWdhY3ktdHJ1bmsKKzI4MDU1IDlkODRhNWJkNzY3ZmE4ZDA2NTg2MWYyNDhlNDA5ZTQ1MjgxN2IzOTcgbGVnYWN5LXRydW5rCisyODA1NiBhYjVlZWEyZGQzYzAwYzA4ZDE0MTRkYmFmMThjYjBkMmRmZDg0ZDQ3IGxlZ2FjeS10cnVuaworMjgwNTcgZmQxYjVlZmEwY2UzZWFjYzg5MzJjODUwNzIxZDQ0ZDExMjBlMjZkYSByZWxlYXNlMjItbWFpbnQKKzI4MDU4IDFhYjI3YzE3NzBkZjViODY5YjdkZTdjYTA1MGIwMTAxMWI1OWYwZmIgbGVnYWN5LXRydW5rCisyODA1OSBmNjcyZTFkYmFkOTIyNDExYjQzMmM4MjgyMTEzNmExYzg1NWZlZDMzIGxlZ2FjeS10cnVuaworMjgwNjAgMThjYTRlNzgzZjk4N2JkMzNhNmM1MmRkMmVmNTdkY2I2MGExZmZhOCBsZWdhY3ktdHJ1bmsKKzI4MDYxIGU2MWIxMThlOWNhYjI5MjZjYjU0ZWJmZTIwYTRkZDljMjk0YjkyYTQgbGVnYWN5LXRydW5rCisyODA2MiA5NTU5MTRiMGE0ZDY0NmU3OGIxYWI4MGQ3Y2QwNmUyMjYwNWNkNDU2IGxlZ2FjeS10cnVuaworMjgwNjMgOGJjMjY1YjA4NGQ5N2MxZjdjZmYzYmZlNGIyMTE4ZjFlYTQ5YjM3MCBsZWdhY3ktdHJ1bmsKKzI4MDY0IDU5ZDkyMjg3NzhhZDYzZThiZDc2OGYwMmE2NWQ3ZmIxY2M0NTA2NjYgbGVnYWN5LXRydW5rCisyODA2NSA3MjkyODdmN2ZjMmU1ZmFiMDA0MTUyOWQ5NWJkNDBkYzA1Nzg2MDZmIHJlbGVhc2UyMi1tYWludAorMjgwNjYgMmY0MTFmMmQ3OTFhZGU3Njk2NTAwZGZhNzk2NGMxYThlMjc0NjA1OSBsZWdhY3ktdHJ1bmsKKzI4MDY3IGE2MTg5M2Q3Y2VmMjUwY2QzNGRjMjE0OGMwZmY4ODkxOGQ4ZTA1YzUgbGVnYWN5LXRydW5rCisyODA2OCBiMjY1ZTc2YmFiODgzMjkzNDFiYTg0NDdhNTJlOWM5ODNiODc2NTNlIGxlZ2FjeS10cnVuaworMjgwNjkgNmE2ZDAyYmUzMjFjY2QxMDE4MjM3M2M1MGI5MmUwNTJiNmE3YzYyOCBsZWdhY3ktdHJ1bmsKKzI4MDcwIGQyNWNmOTRkMjBiMWVhZWViMDg4OGRjNjIxYzIyNzA5NGMxMzhmNGYgbGVnYWN5LXRydW5rCisyODA3MSA0ZmJmNTM0MjExYjk3Yzg4MmMwOTg0NGJjMDA0YjE2ODBhZjExZWM5IGxlZ2FjeS10cnVuaworMjgwNzIgNTc5ZjA5YzBmZGJjZDkyYWRkODY2M2M0MmI3NjAzMWM2MDMyZjU1MiByZWxlYXNlMjItbWFpbnQKKzI4MDczIGJkYmE3MmZmZDIxYmY5ZDYyNjc0YmIxMDYzYmI3ZDdmNjFkNjZhNGIgcmVsZWFzZTIxLW1haW50CisyODA3NCA5NWM0NjIzZjgxODUwOGYyZmI5NDRmMGE3MmYzMGE1MGQyYTc0MDJlIGxlZ2FjeS10cnVuaworMjgwNzUgNzBiNjc1MzExN2NjMDFiZDdmNzc0MjQ3NmEzOGJlMGNkOWJhMDRiOCByZWxlYXNlMjEtbWFpbnQKKzI4MDc2IDY0N2Y5MzY3NzUwZTg3NDAxMzFjNDRkMWNhZWQ2YTk4ZDg1Zjc4N2UgcmVsZWFzZTIyLW1haW50CisyODA3NyA2ODhlZWZiYTA4NjliYjVkM2YyYzgxNmE1MDBlYWMyMDM1MjAwNTBkIHJlbGVhc2UyMS1tYWludAorMjgwNzggMzc5NmQzOWYwYjgwYzgxYzg1ZWRjOTdjNmQ0YjBhOWI5ZmM5NTdlNCBsZWdhY3ktdHJ1bmsKKzI4MDc5IDMyNjliZGQ2NTk4OGVmZjg5NzYzNzA4NGE4MzFhY2ViNWJlNDNhOTkgbGVnYWN5LXRydW5rCisyODA4MCBmZWMwYjBhZWYxNGJhNDg3ZTA2Njg2NGE4NmY0ZWIzOTVmODM4MTAzIGxlZ2FjeS10cnVuaworMjgwODEgOTgwNzY3YzZjZDk3NWI2MTdlM2EwN2NmMWI2ZmQ4ZmEzYTA1ZDljMiBsZWdhY3ktdHJ1bmsKKzI4MDgyIDQ3OWNiNWZmMmU2MDljNWEyMTdhODI5NDBiZmY5MzkzYWI3YzIzMTkgbGVnYWN5LXRydW5rCisyODA4MyA3MWRjYTdjNzZmYTIyNzkyYmU5M2ZiOTBjNGM0YmU3ZTkwOTI1YzFjIGxlZ2FjeS10cnVuaworMjgwODQgN2IxMGU3ZmY3OTRkYzUwMDBmYWVjYTFmMzA2MDJmZTFlZDgxYjI3MCBsZWdhY3ktdHJ1bmsKKzI4MDg1IDZkMjZkNGI5YzVhMzZjMThlNTUwNzM5M2IwZTg3ODJlZGI1MjYzYWEgbGVnYWN5LXRydW5rCisyODA4NiBhZWUxOGVhM2QyODQ3NjUzNTA3ZjJiMWFiMTY5ZTQxOGEzZGY0MTFhIGxlZ2FjeS10cnVuaworMjgwODcgMDQ5MmFkMWFjNjIzNWQxZmFmM2E4NDM5MjgwNWNjYzJhZWU1MTg1MyBsZWdhY3ktdHJ1bmsKKzI4MDg4IDU2NzcwNGJmYTU5NWE1YWI3YjRjZTcxYTk2YzQxNjJiMjQwMTc0MjMgbGVnYWN5LXRydW5rCisyODA4OSAyNzRlNDJhNjkxZTBjODQzNjUzZmY4YjJhMjRjOWM2YjJjOTQ5Y2QwIGxlZ2FjeS10cnVuaworMjgwOTAgMzY0OTNhN2M2MjUzOWJjYTk5NWE5M2IxMzY3MWY0YzRjZjkzMDUzNiBsZWdhY3ktdHJ1bmsKKzI4MDkxIGJlNDdkYjM4MzA3ZTE4MzFhNmI0ZjQ3YzZhZTYyODFlNWJhODExMTEgbGVnYWN5LXRydW5rCisyODA5MiA4YjQ3MDI4MTY0NWU2MDFkZjMyZGQwZGQ4NjVlN2QwMWMyMDBiZjRkIGxlZ2FjeS10cnVuaworMjgwOTMgNzM0Zjg5YzE5NGRkOWYxMDNlYzMwNGJhY2Q5ZWY4OGM0MzVlZjljZSByZWxlYXNlMjItbWFpbnQKKzI4MDk0IGRlYmNmNzIwNjdmMDU5NjdiNWQ3NTY0N2Q2MzQ0ZDFmMDk4MGJmMDYgbGVnYWN5LXRydW5rCisyODA5NSA5YzZmMGUxOTk5MDM1YTRmMTQ3NTUyNjI3MjE1ZDc1ZGZhNzRkNjhhIGxlZ2FjeS10cnVuaworMjgwOTYgMGNkYjZlOWJjYjUyMTRkYjM4NzBlNWI4YTZhMTQ1MmVkMDhjMzdhZSBsZWdhY3ktdHJ1bmsKKzI4MDk3IGEyOGM5YzMzNmFiNzExOTE3MWRiN2U1ZDZjYzM0NTkwMzVjOWQ1YTggbGVnYWN5LXRydW5rCisyODA5OCBlNzFiYmJhMGEwYjk3NjY4Yzc2ODQwZjRkNmEzMGRlOWJkYjNkNGE2IGxlZ2FjeS10cnVuaworMjgwOTkgODJlM2ZkYjI4MTY0NTBjMmNiNWVkZWQwZmM2ODBjOGQ1Mjk5YzAxMCBsZWdhY3ktdHJ1bmsKKzI4MTAwIGE5ODlhMmVhYTJhYzEwOTI1NTg0YjBkMjNmZjc4MzdkYzE0MDcyMTkgbGVnYWN5LXRydW5rCisyODEwMSBiYTMwMzhhMjdjMWUzOWI3NTVmNDhhZGViYTZjMTU2MzJiZGU5NTFhIGxlZ2FjeS10cnVuaworMjgxMDIgZWVmNzNlODgyM2Q1YWVmOTFkNDliN2VjMWM3MDFmOTc4NzNkOTMyNyBsZWdhY3ktdHJ1bmsKKzI4MTAzIDMxYjlkMzY5ODYxZDg0OTk3ZDk1YmQxYmE0NTQwMmI3NTFiZTNjMWYgbGVnYWN5LXRydW5rCisyODEwNCA4MGM3YTgyZDYxNDQ4OWU5NDUwNGYxNjhiYWQ2OGZmZjE4MGQ2MDNmIGxlZ2FjeS10cnVuaworMjgxMDUgMzQxMjhjY2YyZWU2MTkzYjJmZjQ3ZWFiOGZhNGVmM2U3MTIxZTllZiBsZWdhY3ktdHJ1bmsKKzI4MTA2IGEyZjliYjU0MjMxYjEzYTliYzczN2Y1YTEwNjA1ZTg5ZTI1MmEwMTUgbGVnYWN5LXRydW5rCisyODEwNyA2ZWI5NTg3MTZkOTdjODQwY2VkMmJlY2Q0OTM0MzM1MjgxMDdkYjNmIGxlZ2FjeS10cnVuaworMjgxMDggNDE4MWUzYTQyZDBhMjNkYWJkYTBmN2NmODlhMDlkMTQxMmIwNTBjNiBsZWdhY3ktdHJ1bmsKKzI4MTA5IDU2NGFiYjk4ZGViODljNGUyOWQ5YTdjNjlmYWI1NWIyODNiN2I4MzUgcmVsZWFzZTIyLW1haW50CisyODExMCBlNWJjNDcwZDFkMWUxZmUwNzY2Njg2YzI0NDk1YTBhNjZjYWY0YTllIGxlZ2FjeS10cnVuaworMjgxMTEgMGQ0NmU0Yjg5Y2FlN2E0ZWExZTNlZDRiMmFjOWVkMDZkNTE2YWQ0NSByZWxlYXNlMjItbWFpbnQKKzI4MTEyIDJkY2Q0ZDkyODE0NzAzZjk5MWRmNGVhNjhmZjJiMWQ4ZGQ3ZTE0MzggbGVnYWN5LXRydW5rCisyODExMyBhYThiZDBkYzRmOGExMDZmMDY4NDBhMzdhZTlhNTk0MjdlNGY3YzA4IGxlZ2FjeS10cnVuaworMjgxMTQgNmM5NjU4N2ExOTdmOWNkYTQzMmI4ZjUyNTRiZmVlMGJhNWI0ZDlmNSBsZWdhY3ktdHJ1bmsKKzI4MTE1IDExYzcwMTAzODgwNTY1MTkzZWE0YzVmMDc5ZTdiMjM2NmRkMmYxZTkgbGVnYWN5LXRydW5rCisyODExNiA0MDY3ODhjYWVmNmYyNmVjZjBkNTA3MWJmOTlmZWJlYzE2NDc0YTg0IGxlZ2FjeS10cnVuaworMjgxMTcgOTQyOWMzY2Y0MmE3MTJiZjQwYTBiOGYxNjhmYWQwZTg1ZjE4N2ZmYyBsZWdhY3ktdHJ1bmsKKzI4MTE4IGRiMjdhNDJjY2Y0OGFjMzBlYWExNzJiMTQyZGYyNjg4Mjk5MmFlNWYgbGVnYWN5LXRydW5rCisyODExOSA3NDE0M2RiNmFlMmY5N2ZiNmE1NDBhZjc1OGVhNjA1N2RkZTI2NGRjIGxlZ2FjeS10cnVuaworMjgxMjAgNGM3NDZiYTI0ZGUyMWM4MTBiNTBhNzlhYmYwNTdjZTMxNjg0ZWVlOSBsZWdhY3ktdHJ1bmsKKzI4MTIxIDM0M2U2NGM5MmViMjhlMDliNWUwYzc0OTQzOTYyMjM5YmYwY2ZjNDQgbGVnYWN5LXRydW5rCisyODEyMiAxZDNkOTgwYTMxODYwNDFjMDYyMzk2YjljZDU3Zjk5MjZhYTdiOWRlIGxlZ2FjeS10cnVuaworMjgxMjMgMTI5ZDhkMmUxOTA0YzcyNjk0NGMxZDU5YzcxY2MyZTZlMDdhNWM3NiBsZWdhY3ktdHJ1bmsKKzI4MTI0IDVjNzczMTZiMjFmNzBkNzU4Y2RiNjVjNWQ4OGEyMGZmMjNjODVkMTggbGVnYWN5LXRydW5rCisyODEyNSAzNzRmODc5YzVkOGJkOTdmMGFjNGJiZjljYzc1MWJhNDQ2YTE0NmQ1IGxlZ2FjeS10cnVuaworMjgxMjYgMmQzYzRhN2FlYzBhNzA2ZGY1MjUyYjY0NTQ4M2I0YjM4OWMxMjE5OSBsZWdhY3ktdHJ1bmsKKzI4MTI3IDUxMGU3M2FlM2U5ZTlkMTIzZWEzMzYwMmVlZjE0OTM3NjEzZmU2MTggbGVnYWN5LXRydW5rCisyODEyOCA5ZTJmNTM5NjM0ZTgwYTFlZDYzY2M4NjFlMDkxMmEwODBkNGVlMGJiIHJlbGVhc2UyMi1tYWludAorMjgxMjkgMTEyNWQ5NDg5ZGZhNDAwN2JlNjdhYmY3Nzk4ODg4NWFlNzUzZThiYiBsZWdhY3ktdHJ1bmsKKzI4MTMwIDY5MDc5YWM3YzUxMmU1NjBhODFjZTQwNzJhYjYzZWI2Y2IzMDRiMzUgbGVnYWN5LXRydW5rCisyODEzMSBiYmQ1ZjhhZjU4OGFjMTBjZjE0ZDMwYWY3MDk2OTQwZmE1ZDk2NzNkIGxlZ2FjeS10cnVuaworMjgxMzIgYjU2NDBlNzRhYTVjMjhiZWZjMTliY2ZmY2JiNDQ2YTg5MTUyNzU3ZSBsZWdhY3ktdHJ1bmsKKzI4MTMzIDNiOGE3MDdiNDFjNDYyZjBkOTBlNmZlMDliMGQzZGVjN2QwNjk1Y2IgbGVnYWN5LXRydW5rCisyODEzNCBiMmY3ZGY0Njc3MjIxY2NhZGFkYzU5MzY1YWVhY2RmMGU4NWRmNDcyIGxlZ2FjeS10cnVuaworMjgxMzUgOGQ4NTBkNThmMTA5YzdmNTdlZDQ3YWMyYzg3MDE1OGNjMGM1ZGU5NSBsZWdhY3ktdHJ1bmsKKzI4MTM2IGQ3MTVjYTlkYjNhYWEyZDE0YzA4NmEyOTUxZmYyYWM4MzNjOGRmNjEgbGVnYWN5LXRydW5rCisyODEzNyAwOWZmMGVkMzNlZmNiOTE5N2VhODRiN2U0Y2ZkOWIyODJlNjcwZjYxIGxlZ2FjeS10cnVuaworMjgxMzggYjAyNzNmMzk3Y2YxMjJkYmEyMzJhOWMzMjlmZWQwYTMxZTIxMDQ1ZiBsZWdhY3ktdHJ1bmsKKzI4MTM5IDQ5MjMxNjBlMDcwN2Y3YzNlNGZlMDFjNTk2ZDVlNTRmM2IwMWMwMWMgbGVnYWN5LXRydW5rCisyODE0MCBiMGQ1ZmI1NzdhYjYwMWNkYTM4YmFlZjQyNGZhYWY5ODk0ZTI1YjM2IGxlZ2FjeS10cnVuaworMjgxNDEgZmYwNWVlZjNhNmQxZWIwZDBhYzUwMzhkMWU4ZjEwNjEzMzY0YTgyMyBsZWdhY3ktdHJ1bmsKKzI4MTQyIGVhYTg3NjMyYjFlOGVkZjhlMmJlODNmMzNlOTAyZDI0MmRkZTZkYzcgbGVnYWN5LXRydW5rCisyODE0MyA1NjU2MDliYjhkODk4ZDNjMzc1YjYxZTU4Mzg5ODQzOWVjZjMwNjM4IGxlZ2FjeS10cnVuaworMjgxNDQgZWVjNjgzMjgxOGEzNzAwOWU4ZDcwYjNiYjkzYjRhMDRmNTUzYTI5ZSBsZWdhY3ktdHJ1bmsKKzI4MTQ1IDEwMzkxZDU4ZDE4NDExZTM3NjQwMjQyNjgwY2YwZGI4ZWYwMmMwM2MgbGVnYWN5LXRydW5rCisyODE0NiBlNzU2ODY3YWNlODEwYzhmYmNmNTk5NTkwYzI3N2UyNmMxZWEwMWYzIHJlbGVhc2UyMi1tYWludAorMjgxNDcgYzY1OWYwNGVlNDk5MzY4ZDU0NjM2MDE1ZDBjZWRhM2ViNTQzMWZiMCBsZWdhY3ktdHJ1bmsKKzI4MTQ4IDZkOTk3NGI0NWZlYTEzMzM5NDlkYWQ2NjZmNTY5Y2ViYzYxODllZGUgbGVnYWN5LXRydW5rCisyODE0OSAxYTMyNzBlMjZjMTYyZjQ5OWEwZjE2NDM1M2Y4NjkyMmYxZjkyMmE2IHJlbGVhc2UyMi1tYWludAorMjgxNTAgYmEwMzVmNGI0N2MxNTYwMmYxMTU0MDdjNDY1Mzc2NzhjYWFhMGMzZSBsZWdhY3ktdHJ1bmsKKzI4MTUxIDQ5MTY5ZDAwYWIxODIyNDNjOTRlYzlmN2QwYmVmMjZkYmE0OGYxNjcgbGVnYWN5LXRydW5rCisyODE1MiAxOWUwMTBmNzkyYTM4M2UyZWNiNzM1OWRlMDE4MTg5OGJmNzcyMTMzIGxlZ2FjeS10cnVuaworMjgxNTMgMThjMzViYjVmZTA3NDNmZjU3MWM4MDI2ZDRlN2I5YTcxOTlhYTg1NCBsZWdhY3ktdHJ1bmsKKzI4MTU0IGE0MzUxOTg4N2IxNzk0ZDcwMTdlMWE3MTc4YmNhZTc5YWJiOTA0ODYgbGVnYWN5LXRydW5rCisyODE1NSBjMjQ4YmVlNTJkYzZhNzhlOWQ4YWEwNjEzOTk1Y2U0ZGIzOWUzZTdkIGxlZ2FjeS10cnVuaworMjgxNTYgZGJmNmU1NjMwMjNiOWQ0ZjY3NTViN2VmZWM2ZGQyYTU2NTA0NmU1MiBsZWdhY3ktdHJ1bmsKKzI4MTU3IGMxZWI2Njg1MjVlMTFjZTQ3ZmE5NDdiMTAwOTkwZDM0YjAzYzQ4OWEgbGVnYWN5LXRydW5rCisyODE1OCAyN2FlOTc4YmVlNTg1NzM0MjlhOTc2NjIxMGQwZDUzODljMGU5ODAyIGxlZ2FjeS10cnVuaworMjgxNTkgOGFiMzAzMzc1YjMwNWU4Mzg4NTQ3ZTFkNGM3ZWNhODQ2ODdkZTc1NCBsZWdhY3ktdHJ1bmsKKzI4MTYwIGM4OGQwODQ4YzVjOTMwYzI2YzAwZGJiMTFmNTgzMTE4MjBjOWY3YzEgbGVnYWN5LXRydW5rCisyODE2MSA5YzI1YWExM2MzNmUxYzkyYjkwNGVmMDMwYjc4YmQ2NTc3Yzg3MDZlIGxlZ2FjeS10cnVuaworMjgxNjIgYjUwNDgzNTY4NWMzNGVhNzNlNzIwZTY2ODAwMzhhOGRiODkyZDgyZCBsZWdhY3ktdHJ1bmsKKzI4MTYzIDI3ZWNhNDc2NjkzN2FlZjRjYmUyZmI5ZWRkOTliNTYyMzQ4OWQwNGIgbGVnYWN5LXRydW5rCisyODE2NCAzZDIzMzUwOTRiODhjMTdmYTZiNWY2ZDA4NTQ5ZGNjNDJiMjVmYjhkIGxlZ2FjeS10cnVuaworMjgxNjUgZGNmYWJlNjVjMjJlNWIyYjY4Y2UxNTUzYWUwNzI0OWU1ZTlmOGJjMyBsZWdhY3ktdHJ1bmsKKzI4MTY2IGUwNDMxZDljNDQ3NDIwMjdmNzI4YjVjMzI2MGViYjliODQ5NGM1YjIgbGVnYWN5LXRydW5rCisyODE2NyBjY2Y2NmExYWEwYjg0NDI5ZDU1NDhkMmI1M2Y2MDE5ZDUxNzJhZDgwIGxlZ2FjeS10cnVuaworMjgxNjggNWVkN2M5NzdkMmE5NmRiNmQ0MDBjZjlmYTVkNmU0ODdkMWVlM2MyMiBsZWdhY3ktdHJ1bmsKKzI4MTY5IGYwYmQ1Y2Q0YjE3MDZiMzM5ZjBhMTM3ZTRhZWYyOWU2YzYwOTBjMWIgbGVnYWN5LXRydW5rCisyODE3MCA0Y2FmZDlkYmM4YjQ3OTE2ZTkyMzU2NDIzOGFhOTM2ZWJhMzA5MDllIGxlZ2FjeS10cnVuaworMjgxNzEgNThlYTQyMGRkYzVlZWFkZTBlMmZmYmNiYTA0YmMyNGEwZjMzZjQ1NyBsZWdhY3ktdHJ1bmsKKzI4MTcyIDI3MjIwNTdmZmU4NjAxMDk5NzQ2MTBhYzYxNmM2YjQzNjI2MmI5ZWEgbGVnYWN5LXRydW5rCisyODE3MyBhY2IyNTg1NDVhNWMxMjU0NmI0NTE5YzAzNDU0NDM2OTI5NjdhZDQzIHJlbGVhc2UyMi1tYWludAorMjgxNzQgMGFmYWNmNWRjNDJlYWJmOGIwYzI5OWQwMTdlMjA4YTkyMzAzZTY1ZSBsZWdhY3ktdHJ1bmsKKzI4MTc1IGQ3NWJkOWU1YzRkOWMzZDg0ZDUzMTg1MDE4ZDhjZTRhMTY4NTE1MTQgbGVnYWN5LXRydW5rCisyODE3NiAxODI0OTgzZmQ5NGE3NDQ4NDhhMzJkNDJjOWEwYTNmNTMzZTUxZmVlIGxlZ2FjeS10cnVuaworMjgxNzcgYzYwZTg5NWQxMTI1YjM0ZGIyODEzMzRjODVjMWU5ZGRlZDExNjk4OSBsZWdhY3ktdHJ1bmsKKzI4MTc4IDgwMWE0NGFiMmFhZTY3MjE4OWRjNzhlNDNlM2UzYzY1YzlhZmIxYmYgbGVnYWN5LXRydW5rCisyODE3OSA5ZTdlYzJmNWExYmQzNzNlYmI4MWJjYjgyYjBlMTU2MTBiZmI0YjYzIGxlZ2FjeS10cnVuaworMjgxODAgNmM2ZGY2OTIzNmIxZDI5NWE4NjZjYzllMjdlZGJhMDYzM2IzODdmZiBsZWdhY3ktdHJ1bmsKKzI4MTgxIGZlMzQ3MmYyZjhlYjcyMmQ1ZWUxMzg5MWYwZmY4ZDlkODlkNzNmZDIgbGVnYWN5LXRydW5rCisyODE4MiA2OTZhMjg0NTY5ZTY0Y2I4YTEwZjZkMzdmOWEzNjc3YzVlYWRlMTkxIGxlZ2FjeS10cnVuaworMjgxODMgZjFkMThmY2Q1NmU2OTYyODU5OTJkZDI2MWRkMjc2MmMxYjUwZDIzNCBsZWdhY3ktdHJ1bmsKKzI4MTg0IDUzY2I3MTYzODg0MWU2ZGQ4ODM5NTI2ZDc1ZTgyNTg5ZGY1MjkyNWUgbGVnYWN5LXRydW5rCisyODE4NSAxZmUwNjY1NWM1MGM5NTllM2VlYWQ0ODE0M2ViNjg1ZTFjYmUxZWVkIGxlZ2FjeS10cnVuaworMjgxODYgZmFlMzg2ZDVlMzU0NTZlNWFiMTllMTlkMzE4ZjliMWExNWQ2YWE0ZSByZWxlYXNlMjItbWFpbnQKKzI4MTg3IGMyMzg1M2Y3ZWJlYjllMDVjZWIzNThjYmVhMTFhYTAwYzFhNmUwNmQgbGVnYWN5LXRydW5rCisyODE4OCAwMWQ2YzUxNDZmZjlhZWNhMmZmMzEwNzRjZGRlZjBlYjViZTgwMzcyIGxlZ2FjeS10cnVuaworMjgxODkgY2VjNDFlMzc2MWFjM2U0MzQ4YzVjZmQ4MzcxZDY1MmFkNjNhMWEzMCBsZWdhY3ktdHJ1bmsKKzI4MTkwIDRkZTlhYzBlNDE3MzY2MWJlMWYxZGUzMjExNDY5Y2IwZmZlMWEzNDYgbGVnYWN5LXRydW5rCisyODE5MSBmMGQ2M2FhMWRmYzdlOTA5YTJkMDNhYTI2YTcwOGRmM2U0YjYzZGJmIGxlZ2FjeS10cnVuaworMjgxOTIgMGY2MWUwNzQxNDdmYjFhYWZjYTI0NzgzNWE3NzBkMjAwZGE2NjQxMiByZWxlYXNlMjItbWFpbnQKKzI4MTkzIDFmZDM4OTAwZjUzYjg2MTBlZTlmMjBmZmIzNmFhNDAxZjhjNThkMzUgbGVnYWN5LXRydW5rCisyODE5NCBmY2JkZTIyNjU0NWNjMzhjMjYzYjVjMzc1NDE1MDMzNjVjNDQ3ZjVjIGxlZ2FjeS10cnVuaworMjgxOTUgODI1OTQ4YzIxZjBkYzEzODg1Y2I4MTBlYjMyMTQzNjU2NTQzYjYzYiBsZWdhY3ktdHJ1bmsKKzI4MTk2IGRiZjRjYzU2MDg5ODgzZTA3OWM3MDhlM2U2OGQ2NzdkZjJlMzYyNzkgbGVnYWN5LXRydW5rCisyODE5NyA0YzQ2YjNlZGFhNTg3YzBlMWY3NTBiMzk0YjkwMTJkOTgzM2Q5ZDcwIGxlZ2FjeS10cnVuaworMjgxOTggMTk1MWIyYzY2MDQ0MzhiMTMyZmIxODM3OGY4ZjIwMmYwZTgzOWZmMyBsZWdhY3ktdHJ1bmsKKzI4MTk5IDFjNjNkMzA4MjY1NjllYTE3NDY1YjkwNWUxODg2OWNiN2IxMmQxYTAgbGVnYWN5LXRydW5rCisyODIwMCA0NTJkNmE5MTYxOTYyNDYzZjU2NWVjZDkxYTRjNjI3Zjg1Y2U4Y2I3IGxlZ2FjeS10cnVuaworMjgyMDEgZGU3MWU2ZmU2NGIwNTI1OTQ5ZDMyOTU5OWMyYmZkY2U2NzJlMmY0MCBsZWdhY3ktdHJ1bmsKKzI4MjAyIDZhOWVhMGMyMmNlYTFmOWFiMTA4OWFhODUwOTUzZDNlZTE0YjQ2YzMgbGVnYWN5LXRydW5rCisyODIwMyA0NjFhZmRiNWNiOWVkZjYzMDZkM2VlODdhZTMyNzgwNmRkNmQ0YzM2IGxlZ2FjeS10cnVuaworMjgyMDQgZDlmZjk3Y2U3NWJiZWQxZTc2NzM5NzhhMTM3MGZjN2FkMTQ2NjM3MSBsZWdhY3ktdHJ1bmsKKzI4MjA1IDkzMWZiMzcwMGQwYmE5MWI5MDVlY2QxMjhhNzhlMTcwYTk1Njc4YTAgbGVnYWN5LXRydW5rCisyODIwNiA4NjI2OTViOTIwZmRkODhmOGE2YjM3N2UwMjNiOGQ3MzE4ZjlkNGYxIGxlZ2FjeS10cnVuaworMjgyMDcgYTYyY2VlNGVlZDk2NmYxZmMyZDNkOTJjOWRjNGU1MTQ0Y2RmMDAxNiBsZWdhY3ktdHJ1bmsKKzI4MjA4IDE4Y2JhZGQ4MDcxMjVhZWQ0MmIxOGExZTdiYmE2MDNiY2Q1MzViZWYgbGVnYWN5LXRydW5rCisyODIwOSAzMGNmZjljMWJmNjkzYzA4Y2VhMmE5NmVkM2UxOTE3ZjQ3MjE2NjgzIGxlZ2FjeS10cnVuaworMjgyMTAgZjE0N2I1OTQ0MjQ0NjdmMTQyNzkzOTQ4NTdhNDhlZTU4NGUzODMxMyBsZWdhY3ktdHJ1bmsKKzI4MjExIDliMDZmNDRiZDRhMzRkODczZDZkNWMzNTQ4NjQxOGY3MmY3OTljNzggbGVnYWN5LXRydW5rCisyODIxMiA2ODVjZDUyYzRjNDM4YzNmZjU1NDcwNzAyNTc1MGFhMWJjYjBlNDlhIGxlZ2FjeS10cnVuaworMjgyMTMgYWI2M2FmM2VjMzQ5NWNiYzdjODkwM2EzMWM3NGI4MGMzZDYyYTJjNSBsZWdhY3ktdHJ1bmsKKzI4MjE0IGM3NWNkYzQ3MWIyMjQ0YThiM2E3YzVlMWNlOTRhMWFhM2U1ZjBiOWMgbGVnYWN5LXRydW5rCisyODIxNSA3Y2U4MmU5ZDA4Yzc4YTUwNTkwYmY4MGZhMjIxOWFhNDk0YjY3NTkzIGxlZ2FjeS10cnVuaworMjgyMTYgNTg2MjNjZTk0ZDQwNmM0OTE0ZDU5ZGU1MDVlNzg5Y2FjYTk2YTU2OSBsZWdhY3ktdHJ1bmsKKzI4MjE3IDc0ZWQ0NTcyMDhjMWEwZjUzNDg5N2NjZjg2M2E1NDM0YWNmZjBhZmUgbGVnYWN5LXRydW5rCisyODIxOCA3YjdkODgyMGFlMzgwZjA5ZTYwYmI2YWNlZTE5M2RjMWY2ZDMxOTc4IGxlZ2FjeS10cnVuaworMjgyMTkgNjQyMGI5N2ViNTlmMTdjMTFhYmNhNGI0Nzk3YThjMjgzNzQyNDkxZCBsZWdhY3ktdHJ1bmsKKzI4MjIwIDUwZmFhNjgzNWRkYzQxNzk5NDIxMDIyMTk3YjgxYWU4NzY4OGU1ZWQgcmVsZWFzZTIyLW1haW50CisyODIyMSBjNDU2NDJlMWRjYTkzYzUzNWYyZjU2NzBlMzI5YzUxZTQzY2RjN2MxIGxlZ2FjeS10cnVuaworMjgyMjIgM2FlOGUzZmY3ZTNmMzQzN2NjNmU5MWNiOGJiMmRlZjgyNGIxZTFhOSBsZWdhY3ktdHJ1bmsKKzI4MjIzIDMxZDI4NjAwODllNjAwYjZmNGIyMWQ1ODk2MTI5ZDgzYjQ1NGVjMWMgbGVnYWN5LXRydW5rCisyODIyNCA0ZTQ0ZmFiZTBmYTAxN2JiODViMjUwMWM0MjE2ODIxMGQ4YjNlZGYyIGxlZ2FjeS10cnVuaworMjgyMjUgMDExMTM4YjVmMzg5YTI4NDhlMjVlYjYyMTNjZTU3ZmQzNGJlODlkZCBsZWdhY3ktdHJ1bmsKKzI4MjI2IGFlOWM5ZjkwYjRiMDFiZmEwYjE5MTFiNTk3N2QyNWQ2Yzk4Yzg3M2EgbGVnYWN5LXRydW5rCisyODIyNyBkM2Q3ZGU3MDNhMjJkYWFjOGQ5ZDk3MjdkNjZmOWFlYWEyODZkMTliIGxlZ2FjeS10cnVuaworMjgyMjggNTg4ZDE0NWM0NGRkOWU2Yzk2MTdkOWU3MjAzNmY3OTMxZmY0NjA2NCBsZWdhY3ktdHJ1bmsKKzI4MjI5IDdjOTFkMzAzYzU2M2ViZTg2YTgxZDk1ZWE2ZTZmNGNlODVhOGFjOTQgbGVnYWN5LXRydW5rCisyODIzMCBjMDAxZTVhMTUzNjlmMzdhN2JhMTIxZTIwOTdmNmFlODYyODA4Mjk1IGxlZ2FjeS10cnVuaworMjgyMzEgYTdkYmU0ZTdmNWRlZGNjMmYwZmMzODUzYzA3MGVlZjQyNjNiZThmYyByZWxlYXNlMjItbWFpbnQKKzI4MjMyIGU1YTA3Y2M4MTU1OTA1ODRjNWFjYTNmMWFiZmQ0YmU5MmY1ZmRjZjkgbGVnYWN5LXRydW5rCisyODIzMyA0Y2Y1MDI3MTZkMTVkNTNmZWZlNWNkYWFhYjJjODBjZTMxY2Y4MDQ0IGxlZ2FjeS10cnVuaworMjgyMzQgMzFlZTMyYzIzZDI5YzU5ZjlmMzEwMzNmYjdlMzViNTExNDIzZDZkYSBsZWdhY3ktdHJ1bmsKKzI4MjM1IDhlM2UwZTExZjE0Y2FjYTMzMzU0N2FiZWQzZmJhNGQzNmU3OWJlMTQgbGVnYWN5LXRydW5rCisyODIzNiBhNjAyZTQ4NzhiNGVjZDBjYWFiMzk0NTljNDJkZjQ5ZGJjZmE5ZmZlIGxlZ2FjeS10cnVuaworMjgyMzcgNDUzYzg4Zjk2M2VjMzI2Mzg4ZTg1ZjM1ZDVmYjM4ZjBlZWExOGJmZCBsZWdhY3ktdHJ1bmsKKzI4MjM4IGNhNThmNWE0NTU4YjhmYTkyOGMzZDJlMGJhMzY5MTRiNzQzZmFkMWYgbGVnYWN5LXRydW5rCisyODIzOSA2NGY0ZGQ3NzBjNjdkYTY1MDlhOTIxODQxOGY4NGNlMjc0ZmQ1YmNkIGxlZ2FjeS10cnVuaworMjgyNDAgZTM5OWQwYTg3NWI3ZTFmZjM4OTI0Y2RkZDhlNDczYjg4ODM2YTY0MiBsZWdhY3ktdHJ1bmsKKzI4MjQxIGMwMDRiMmJjZDU0MjFjNDQ0N2UzNDVlZjllZTQ5ZGYxZWVlYzkwM2IgbGVnYWN5LXRydW5rCisyODI0MiAxOWYyNWJjZjVhMDAyZWQxYmU3YmZlYzE5NDEzMWZkNTVmYzM0YjA0IGxlZ2FjeS10cnVuaworMjgyNDMgYWVhNjhjYjM2ODU5NjEzNGNjMmE1MWEyMzFlZTY1YmE5YjE3YWEwMSBsZWdhY3ktdHJ1bmsKKzI4MjQ0IDE3ZTk1Y2MwNmY2OTNiMDZjOGRjZjgxMmMxZjY0YzFkN2ZjZjI4YmIgbGVnYWN5LXRydW5rCisyODI0NSAyZmY0MjY4ZjI1ZGM3MzhhOTg5NjAyMDU2NmVlZjFiMmFiNDQ3MTMyIGxlZ2FjeS10cnVuaworMjgyNDYgM2FmOGQ4MWQ3Zjg2ZTQ4YWY5YzgzZDE1OTMyMWNiNjgzZTE2YjQyMCBsZWdhY3ktdHJ1bmsKKzI4MjQ3IGM5YWY4NzUwNDhlNzI5NmI1MGY0YjcxYjdmYWQ3MjBiNTJiYzMwNjEgbGVnYWN5LXRydW5rCisyODI0OCAxMWMxY2M5N2I4N2EzMWY2ZjYzNWRmYTUxM2VhMjgyZTI5MDc1YjdkIGxlZ2FjeS10cnVuaworMjgyNDkgY2Y1OTI4ZmFiMTA4ZGU5ZmJlMDI2MzJkMDcxNzZjNzE3YzJiM2FhNyBsZWdhY3ktdHJ1bmsKKzI4MjUwIDY5MzlkNzIxODJlNmM0OTkxY2M3NGU1NGM3NGNlNTAzNDk3MzhiNWUgbGVnYWN5LXRydW5rCisyODI1MSAxMGE0ZWM0NTU0OWQwZDg5NDkxMGRkYTk4MThiOTc4ODE5MzU0NWUyIGxlZ2FjeS10cnVuaworMjgyNTIgODczZjEyZjY4ZTNiMTAxNDliY2Q3ZjNkOThkMjk1ZjZmZmI5OWNlNyBsZWdhY3ktdHJ1bmsKKzI4MjUzIGRhY2QxMGQ0NmU1Mjk0MDViOGNmODRlOWNkZGZlMDkwMmY0NmNmOWUgbGVnYWN5LXRydW5rCisyODI1NCAzYzljNTZkOTdlNTVlNzIzYjZlNzNiODNiMTdkZmFjZTVhYjJiOGRmIGxlZ2FjeS10cnVuaworMjgyNTUgOGFiNDZkZjMxODJlNzk0MzNjZmIyOWU3MTA4MmExZWNmN2MxYWQwZCBsZWdhY3ktdHJ1bmsKKzI4MjU2IDM0Y2M5ODg5MmU4OTJlNjczN2VlMWIzMTQzODgwMmU0MmM3MWUxZjUgbGVnYWN5LXRydW5rCisyODI1NyBhZDM2MWUxZDU0YmJhM2UyZjRiMTI1MDNhNmRmZGM0YTQwMTRkZmE3IHJlbGVhc2UyMi1tYWludAorMjgyNTggZTlkZDNlOTFlNjUzMTBiNzA3ODlmMDlhZjgwNzVjM2E3MTYyOGQ4NyByZWxlYXNlMjItbWFpbnQKKzI4MjU5IDEzNmI4NTM2MjJjYzkyMzQ3Njk2MDc3YWUzMmQ5NDcwZDg5ZmUxOGYgbGVnYWN5LXRydW5rCisyODI2MCBiZWQ1ZDVlNTM2YmMwY2VjMmJhZWM0MWMzZjdjNGRmZGU4NTFmMTRhIGxlZ2FjeS10cnVuaworMjgyNjEgODc0NDhhMjI4Y2NhMmJlY2IyNzJiMzg1NjY5M2NmN2ViOWEyMjNjNiBsZWdhY3ktdHJ1bmsKKzI4MjYyIDBlZjZjMmFkMDc2YjEzMzkwZDY5Yjg1ZjE4YWFiMDM4YjZmZmI2ZTMgbGVnYWN5LXRydW5rCisyODI2MyA1OTI0MDZlMGM5YjAxOWI2NjQyYWM0YjAyZDZkOThiYjliYTNlZjk1IGxlZ2FjeS10cnVuaworMjgyNjQgZjI0NDc2ODZlYzVlYmU3ZjE5OWQ3ZWUwOTYwY2Y4Y2Y3YmNkNWU0MyBsZWdhY3ktdHJ1bmsKKzI4MjY1IGU0NWQxNjExZTg2OWQ2NDBkZDUxMzdlOTJkMzhhZmFlMzEzMjlhYjggbGVnYWN5LXRydW5rCisyODI2NiA0ZTc5NWZlOWY1NGIyMWI4ZmU0MDNlMzFmZDlhNTBlZjJmZDgzZTBjIGxlZ2FjeS10cnVuaworMjgyNjcgNWI2NTZjM2UxMzJiODY3NDFjZTZjNWEyMzMyNmNjN2E1MTI3NzFiNyBsZWdhY3ktdHJ1bmsKKzI4MjY4IGEzZWJkMTIzM2MwMGVhYmY5MDliZTgyMjIzZmZiZDVmMThmYTkyNWUgbGVnYWN5LXRydW5rCisyODI2OSBlNTAxNGFjOTdiYTE4NzlhNmU0OTQ2NTk4MzQ0NjU0NWJlYjk0YmJmIGxlZ2FjeS10cnVuaworMjgyNzAgYjU0Y2ZhOThiNjZiOWIzNGM2MzQ3MjViOGZmMzUwMDlhMDI0MDBmNyBsZWdhY3ktdHJ1bmsKKzI4MjcxIGYwZGJkNWI0OWQ4YTAxZjUxOTdkMTA2YzQxZGVkOGM5NzM0MGQ0MjAgbGVnYWN5LXRydW5rCisyODI3MiAyNTVkMWQzZTY2YTNhZDliMmQzYmIxYTE2MDZkYmYxYWFjNDlkNGUxIGxlZ2FjeS10cnVuaworMjgyNzMgMjMwNjAwMWY2ZWFhMzUwZmEwNTk3MjMxYjY4YmRlNDBjNGQ4YzQyMSBsZWdhY3ktdHJ1bmsKKzI4Mjc0IDljYTg5NjQyMzM3NDMyY2QzOGFjM2M3YjZlYzZlYWYyYmE5ODQwMDQgbGVnYWN5LXRydW5rCisyODI3NSBkZjIzMjZhNDg5NGRlZTc0M2FhYjk0YTdlYWY5MDU1MDkxODQ0MGViIGxlZ2FjeS10cnVuaworMjgyNzYgMjU4ZTBiMTM0N2MyYWQ4NjhkM2I2Nzg0MzhmODdmOTQ1MzIyMTI4OSBsZWdhY3ktdHJ1bmsKKzI4Mjc3IDliZWNmZWY2ZTMxYTZiZDcwN2VlZWJjNzY2NzNmNmNjNTQ4Y2ZmODIgYXN0LWJyYW5jaAorMjgyNzggNGYxM2U1OWZkMGEwM2Y5NjUwYWY3ZjZkOWQyMzJhOTdkMmVjYWUwYyBhc3QtYnJhbmNoCisyODI3OSBjZjU2MWU2MTIzNzhjMWEzYWZjOWRkMjRlYzFkZGZlZGE4NjM2MmM0IGxlZ2FjeS10cnVuaworMjgyODAgOTlmNWQxOGJlNTg4MDM4NmRhNjQyNzUzMGI5ZDhiNzUxNTgyNzE3MyBsZWdhY3ktdHJ1bmsKKzI4MjgxIGI1MTdkOTI5MmNlN2MwZjFmMjYzMmEyM2Q5Y2ExNzI1ODY2NGI3NWIgbGVnYWN5LXRydW5rCisyODI4MiA4MDg5YmEzOTc0ODBlNDBjY2RiYjY1NTI1OGU2NGRmODA5OWYxNmU0IGxlZ2FjeS10cnVuaworMjgyODMgNzI1MzM3YjY4Y2EwMmIzYzFhODA3OTlmODM4ZTgxY2Y0MmFlZTM1NiBsZWdhY3ktdHJ1bmsKKzI4Mjg0IGZjNzQwM2UxMTg3ODMzMGMzYWQ0Zjg1N2RmYWE1ZWNhM2NhY2QxZGMgbGVnYWN5LXRydW5rCisyODI4NSBmNDg1MTA0ZTRlZTg1MmI0YzI5MWVjOWRkNjRkMjNmOTkzNWJiODc0IGxlZ2FjeS10cnVuaworMjgyODYgMjM5YmRhYmI2M2FmOWQ3MTdmZGQ5YzcyZjQ4NTM5YzVkZTQzYjNlNSBsZWdhY3ktdHJ1bmsKKzI4Mjg3IDcxMGJlYmUyMTgyY2IxNDRhMTk5ZDJkOWYwMTdjM2RjZGUyYjQ5ZGYgbGVnYWN5LXRydW5rCisyODI4OCBkMzU0MWQ5MGQ1ZTA2ZTViZGIwNjQxN2Y3ZjY2ODU3ZDIyZjBmYWZiIHJlbGVhc2UyMi1tYWludAorMjgyODkgYWFhZTY5MzIxNzcxNzE4MzhiZGY5Mzc3MzA5NTVhY2IyOGNmYjU2OSBsZWdhY3ktdHJ1bmsKKzI4MjkwIDVmZjNkOGFhYThmOGEwNmIxODI5YTAzNDNjN2M3NmEwY2IzMjk0ZjEgbGVnYWN5LXRydW5rCisyODI5MSBjNGU1NTA3MDJhMjlhMzQ1OWRlZDEyNmZlNDA4YzJkY2Y5NmRiODBkIGxlZ2FjeS10cnVuaworMjgyOTIgODc5MTE5M2IwOWQ2NDE3YmU0ZmQ2MGViZTI4YjJmOGMzOGEzNTJkNCByZWxlYXNlMjItbWFpbnQKKzI4MjkzIDAyYjJmMDg4NWM1MjEwMjQwZGMyZmIxMzkxNDBiMjU3NjAyMDY0MWEgcmVsZWFzZTIyLW1haW50CisyODI5NCBkNzk3Y2ZhOGNhMGQwNDVkNWQzYWEwZTBiMTkwOTgwMWUwZjIyYTM0IGxlZ2FjeS10cnVuaworMjgyOTUgMjRmMWQ4NDVjZGI1NzMzMWFhZjVhNGQ3MTVlNjU1NmYwZDg1NzZmNCBsZWdhY3ktdHJ1bmsKKzI4Mjk2IDQ5MmFkZGI4MTJlZjExNzgwODFhOWYzMmRmZDFkNDRjNmE1YWI1MWEgbGVnYWN5LXRydW5rCisyODI5NyBkN2VmMmJhMWI2ZjVlZjBhYzFmNTk2MjhkZmU1NTZkYTk5M2Q2NmY0IGxlZ2FjeS10cnVuaworMjgyOTggYWViZjhjNTJhODQyZDQxZDkyYThlNjMwMDRjZWIwMGFjMzVkNzlmYiBsZWdhY3ktdHJ1bmsKKzI4Mjk5IDRlNGEzNDRjOWI2Y2U3YjBjNzFjYjUyODAwZTYwNDA4ZjhmMTQ4YWEgbGVnYWN5LXRydW5rCisyODMwMCA0NGQxZDBiNjIzYTlhZjc5NDJmZjdiMTU4NjIxNThkZmVjMTQzOGE3IGxlZ2FjeS10cnVuaworMjgzMDEgODg2MmJjNTk2ODVhY2Q2MzdmNWFmNDY2NGNiZjZiZmIwZGQ3ZDlkZiBsZWdhY3ktdHJ1bmsKKzI4MzAyIGM4ZDk1OTJjOWU3NDk3YTIxN2EyMDIwMDQ4NzE0OGVjNGI0ZDhkYWUgbGVnYWN5LXRydW5rCisyODMwMyAyN2YwZGVlYmYyNjQ4YWZhNTU3ZDZhNTRkMTM2NDllYmE5MjRiYWMyIGxlZ2FjeS10cnVuaworMjgzMDQgNjMxMGE0YTIxZWI4OTJjZTNmYjhhYjc0MTkyODE3MTRhNjVlYTkxNSBsZWdhY3ktdHJ1bmsKKzI4MzA1IGE4NjlkMmRlNTM2ZjhkMzBjYzZlN2M2ZmQzNTAxZjRiMjZlOWQ3N2IgbGVnYWN5LXRydW5rCisyODMwNiA4ZjhmZTk5MGU4MmMzMzRmNTBjYzZhNWZlOWRlZTEyYzQyYjhiNmNlIGxlZ2FjeS10cnVuaworMjgzMDcgMmNkZjNkMGRmYWJkNTAxMGE2OWE3ZGJkNjE3OGI3OTBmZTI2YWI3ZSBsZWdhY3ktdHJ1bmsKKzI4MzA4IGJjNjYwZjczNzk1Y2Q3Y2UwNzA5Y2RjODhhNzZhY2ZhZjEzOTgwNjkgbGVnYWN5LXRydW5rCisyODMwOSBmNTdkNmRiNDIzZjJkYmRiNDczYjhjNWU3NTE5YTQ5ODM5MDljMWMyIGxlZ2FjeS10cnVuaworMjgzMTAgZWNkNGFkYTI1MmJjMDlhZDlhODVmNDg5MWQwYWNkMzkzOTZmMWUyMiByZWxlYXNlMjItbWFpbnQKKzI4MzExIDY0MTc4NmJlYTEzZTJiNWE2MWE3ZjhlYTQyOWIyMGQ5NjVkNzU0NmIgbGVnYWN5LXRydW5rCisyODMxMiBhYWI3ZGViYzczYTg4ZTIxMzVkYzcxOGVjZDcyMjdmNzFmZjdkMDYxIGxlZ2FjeS10cnVuaworMjgzMTMgMzExNDVkNjY3YjE0YTVlNjY0ZDc0MWVjZjM4NWZlMzg2Mjc2N2U0ZCBsZWdhY3ktdHJ1bmsKKzI4MzE0IGIzZWZiZGNjZjdjNjRjMGJkNTdmNDZjMmI1MDQ0ZmM2MTA5ODkzNjMgbGVnYWN5LXRydW5rCisyODMxNSBjNmFkNjAzYmQyNjQ1YWVjOGJlNjUwOWYyZGY4MjhlZDZjMGIzNzA2IGxlZ2FjeS10cnVuaworMjgzMTYgNWFjYWU3MTljYjhhYmE1YzQ0ZWE4MzUzM2E2MTk0NDdlOTU1Zjg4MCByZWxlYXNlMjItbWFpbnQKKzI4MzE3IDVjMzg0NTdmNmIzYjg1YjZjMWI3NDE0ODMwNDZkOWQ0MDYyMTZjYjggbGVnYWN5LXRydW5rCisyODMxOCAzNWZlNWUzY2Y4ODVmNjQ2YTY5ZTEwYzA5MjRmN2MxMWExNzMwNDZlIGxlZ2FjeS10cnVuaworMjgzMTkgMGVlNDhhZWZhNDc0OWU3M2Q5MTczYmI5OWU3ZTYyZjYwYWI3NDg0ZCBsZWdhY3ktdHJ1bmsKKzI4MzIwIDU5YWNkNTAyODgwNDQ3ZjQwZTJkZDBkMzhiZmM0OGM3NjdhNmRhODMgbGVnYWN5LXRydW5rCisyODMyMSA2ODRhYjA2NDBlMDRmYTBmZmE4OTNjODVkYTNjMTNiNjI5NGIzYWIxIGxlZ2FjeS10cnVuaworMjgzMjIgMDFlMWQ2YWJjNTAxMjJmMjhlYmMxNDUzZTU4ZGE4MjliNTE4NmRkNiBsZWdhY3ktdHJ1bmsKKzI4MzIzIGUzZDk2ZTAwZGM2YzFjMzMzOWYzOWVmZTM0ZjVkNmRhMzczNDVjOGMgbGVnYWN5LXRydW5rCisyODMyNCA4ODY2ODZmYzkyYTk5Y2ZkMWQzMTQwOTA0ZTdmYWIyMGQ0MjczYTA0IHJlbGVhc2UyMi1tYWludAorMjgzMjUgMGQ1ZDhlMWNkYzIyY2ExNjcwNmRjMWNlNTAyZDI5NGRiZTY1MTI4YiBsZWdhY3ktdHJ1bmsKKzI4MzI2IDRjYjI1M2M1NTZiMTBhM2Q0YjlmNDFmNzMxZmNiNTkyZWJmZjg3ODcgbGVnYWN5LXRydW5rCisyODMyNyA3MTQ3OTcxNTZjNTEyYjk0ZGVlNDJmNDFiYzAxNmMyNGFlYjZmOWQ1IGxlZ2FjeS10cnVuaworMjgzMjggOGVlZjAzODUwZjU3NzY3ZmFjNzAwNDFkNWRkODM3NjkxZThlN2U1NyBsZWdhY3ktdHJ1bmsKKzI4MzI5IDVmYzQ2MDk4MTU4OTIwNTc1Y2RhNmI3NDk2NjZkMDc2NjhlZTFlMTggbGVnYWN5LXRydW5rCisyODMzMCA1MWMyNjk5NGQ4ZWM2OWE3MzA3OTg5MjMwZjM3NTkyNjg2ZDAwMjIzIGxlZ2FjeS10cnVuaworMjgzMzEgYTExNDMyMjRlZTBkMGY3Njk0YTk0NjhhYTE1NmIxZGM2MWE1MGFiZSBsZWdhY3ktdHJ1bmsKKzI4MzMyIDk0MDYwNWQ0MTU1ZmRjNjc5M2MxMDQ0M2VlODQ5NDhkYWUxZGVkZjIgbGVnYWN5LXRydW5rCisyODMzMyBkMmViMDA3NDQ4YTNlNjU4YWQ2NzI0MGE0ZmRmNjk5M2MyNWI2MTk2IHJlbGVhc2UyMi1tYWludAorMjgzMzQgYzRhNGI3NDJhZDZjNjVkYjNlMTdlM2M2ZmNjMDBhODdiMmYzMzM0MiBsZWdhY3ktdHJ1bmsKKzI4MzM1IDBkZDViY2MxZWUwYmQzZTk5ODhmMWY3ZjYyOWI2NGU0NWIwMGUwZDIgbGVnYWN5LXRydW5rCisyODMzNiA0MTlkNDdjNzcxNDM0MjhlZmQ2ZWMwNTViNmY5ZDA4YTMwMzFmZTRhIGxlZ2FjeS10cnVuaworMjgzMzcgZThmNzczMDdkOWM2YTI4ZDAxN2Y3ZjUxNWZjMzc4MGUxNjc0NTBlOSBsZWdhY3ktdHJ1bmsKKzI4MzM4IGMwZTk4MGFiNTRkYjNiZDk1MGE2M2QyNWVmMTExOTVkN2QwMTcwMzcgbGVnYWN5LXRydW5rCisyODMzOSA2MTdiZDU1YjRhNmVkYmMyNGY0Y2U1ZTdlYjIzNzg5M2Q0MGNkM2ZkIGxlZ2FjeS10cnVuaworMjgzNDAgOWVlNGY0Y2I5NzcwNjk5ODFhNDFiNDllNTk4MTNjYjZiNzVlMzI4OCBsZWdhY3ktdHJ1bmsKKzI4MzQxIDYwNjBjZjY2ODJjMDI1Njk4MzQyYjk1NDYzN2Y1NTFmNzVhNmI5YWIgbGVnYWN5LXRydW5rCisyODM0MiA2NDUwOGEzN2E4ZDViNTBjODFjMWUxOGU4YmUzNThiZDdjMWI2NTA1IGxlZ2FjeS10cnVuaworMjgzNDMgMjk0ZjdiZTI2MTlhNjAzMWVkOWNmMzc4YTZhMGFjNWQ1NWY0ZWVmNCByZWxlYXNlMjItbWFpbnQKKzI4MzQ0IDIxOWU3MDM4OTA3MjY3OTk3Y2RhNzM5MTk3N2JkMDJmZWQwNTRjOWQgbGVnYWN5LXRydW5rCisyODM0NSBlOTUwMDcwOWQ0OWM5OGE4NmQwNWMyZjZmZDNjZjViYTNjNzA3NGFiIGxlZ2FjeS10cnVuaworMjgzNDYgMmI2NmFkZGUwMjMwNjY5MjQyNmEzYzQ3ZDRkMDZiOTA4Y2U5ZGNiNSBsZWdhY3ktdHJ1bmsKKzI4MzQ3IGJiNmE3MWQzZmRjYjc1NWY4NzQ3YmMxNDFlY2U4OTQ4NDY0OWNlZTMgcmVsZWFzZTIyLW1haW50CisyODM0OCA2NzA0ODQ1NGFhMWU3NDY3OTM5ZDcyY2MwODY1YTg5YzMwNWJhNjMyIGxlZ2FjeS10cnVuaworMjgzNDkgZDEzNTUxY2Q2NjNlNTc3MmU4ZTMyOWJjYTlmOTQ4OGI0MTliMzI2OSBsZWdhY3ktdHJ1bmsKKzI4MzUwIDUzMDY0MDg2NTdmYzY2NGFhYzAyOTllZWVhNTAxZDkzYzg0MTFiZTAgbGVnYWN5LXRydW5rCisyODM1MSA1NGI2MDFkM2IyYTZkZDkxZjI2NWU0NjNjMjJlYmYzNjdmMTIyZTg0IGxlZ2FjeS10cnVuaworMjgzNTIgNzQxN2E2ZGM3MzY2NjJkM2ExYmFkN2E5MTE1YWY1ZTQzOGMyMjQ4OSBsZWdhY3ktdHJ1bmsKKzI4MzUzIDBjMjAxNTQ4ZDNkNGZlNTM5NWMyNjJhMDVlMTg4MzMzNjI0Zjc5YzMgbGVnYWN5LXRydW5rCisyODM1NCA1NDRhMzI2YmFmN2YyOWYxMjYzYjBjZTUzMDFmZGNmZDEwMTlhZmY5IGxlZ2FjeS10cnVuaworMjgzNTUgOGFkY2E1ZjliZmZkODZmZWM2MzJmNGVlYjk4OWY5ZTIwNDIxZDA0ZCBsZWdhY3ktdHJ1bmsKKzI4MzU2IDlmMjZlMGMwYzY5MjcxMDRiY2ZiNjJkMGIwMzM4MTliZDM0MmZjNmIgbGVnYWN5LXRydW5rCisyODM1NyAxMzM4OGNhZmMxNmU5NjMzYjNmMWQ1MjMwYjAwNmUxMzMwZDUzOTk0IGxlZ2FjeS10cnVuaworMjgzNTggMWJjYWZiYzY5Yzk2NzI3NWRkN2M0NzBhZTVjNmQ5ODgyZjhiODUyYyBsZWdhY3ktdHJ1bmsKKzI4MzU5IDZhMThiNGU4MzhlYWYzZjljNzUzMjI5MjNlMGI3MTFhZDJlYTQ3NGYgbGVnYWN5LXRydW5rCisyODM2MCAzMzBmNmU0MjI3NGY4Mzg3YzA4ZDU3MjRiNzhmMmViMjIxMjhkMGFlIGxlZ2FjeS10cnVuaworMjgzNjEgMDVkYTk1YmNkNzI0ZGZmN2U3OGU0N2U0NzM4MTE0MzY4NTdjOGU0MiBsZWdhY3ktdHJ1bmsKKzI4MzYyIGM1NWU4ZDZjMDkxZjAzM2NmN2VlYjYzNmRlNDM3YjU4ZGNlMjFmMWIgbGVnYWN5LXRydW5rCisyODM2MyA2MjgxMGJlYjlhZjQ3NzczMGJjZjA3ZmRjNzg2ZWM2NjRhMjA2NmYwIGxlZ2FjeS10cnVuaworMjgzNjQgZGM2NmViNGNkMTdhYzJhMDAwZmYxOTA2MGU4YTM4NDQxYTkyYTY5YyBsZWdhY3ktdHJ1bmsKKzI4MzY1IDZlNzhhNTRiYWMzYzg0MDQxYmFmZTNjMDAzMDNmNTQ1ZDhlZjA4OWYgbGVnYWN5LXRydW5rCisyODM2NiA4YjZiZjViYzUxMjI2YjcyMjhmYTMxNmM2NzdmOGQ1MGJkMjJmY2ExIGxlZ2FjeS10cnVuaworMjgzNjcgYjkzM2QxOWFlODUxMmNiYTAxZTcyNjRjYTQ1ZDFlYTAwMDE4MTM2NyBsZWdhY3ktdHJ1bmsKKzI4MzY4IDA0M2ViYTUxOGM2ODljYmRkYjM3MWU1YjcwZmZlOTkwNGM1ZDkyMDUgbGVnYWN5LXRydW5rCisyODM2OSBjMWY2ODJiZWViZWExY2YxZTFlOGVhZTcyNzk5NzIzY2QzY2ZjYzMzIGxlZ2FjeS10cnVuaworMjgzNzAgNzNmYmNmMjFiMmMwZmJhY2M5ZjcyZDQ0Nzg5NmRkMDkzNGEzYTQ0OSBsZWdhY3ktdHJ1bmsKKzI4MzcxIGQ5MGE2YWRkN2NhMzk4Mjg3YzBmOTQ2OGZhODhkYWRhNjdlM2YxMWIgbGVnYWN5LXRydW5rCisyODM3MiAxYjRlZjljZDE4OTc0MmJjODBhZWJhZmJlNWY0ZGRkZDY0MzIwNjg5IGxlZ2FjeS10cnVuaworMjgzNzMgYzQ1YjI4NjU4ODA1ZmE2Njk0ZTM5MzY1MmViMDE5MjkzNThiMmFlMyBsZWdhY3ktdHJ1bmsKKzI4Mzc0IDgwZjY1YzYzZTg2MGMyNmRkNWIyNzMyYTg2MzU3MmExYTY0ZjhjNDAgbGVnYWN5LXRydW5rCisyODM3NSA5NTE4NjU5MWNiY2ZlZWUxNDY3MDZlZmYwOGUzYzU3Mzg3YzJiZGI3IGxlZ2FjeS10cnVuaworMjgzNzYgODE2NzllYmVjMDdkNzE5YmE2Y2NhNTllMmQ1Yjc2ODA2MjVmNGE2MyBsZWdhY3ktdHJ1bmsKKzI4Mzc3IGY2NTgxMjk5YmMwM2I1MThiYTdkY2MxNTE5OGY4NzY3YTc5NjlkYzEgbGVnYWN5LXRydW5rCisyODM3OCA0MjYzNjM4YTQ2OWY4ZGI4NjdkYjA5OGNhMzBjZmZiYWM3MmEwMjNiIGxlZ2FjeS10cnVuaworMjgzNzkgOGVhMTE3ZWJiMmYzNDlkZTVlOGUzZDQ0MTlmNzhhYThlNDE3ZmZhYSBsZWdhY3ktdHJ1bmsKKzI4MzgwIDY2OGVlYWQxM2E3YzU3ZWU2NWRiNjBmZjE4Y2U5Mzc1NDg0OGI2YmQgbGVnYWN5LXRydW5rCisyODM4MSA3MTkwMzQ4ZDQ2NmRmZjVkNjYwNTZjYWEyMjczYTI4OTA2NDBmMWJkIGxlZ2FjeS10cnVuaworMjgzODIgN2JlYjE2OTIzYjcxYmI3MGZlOTVhZjM2YTY1OGU2OTg2ZjkyOGRkYyBsZWdhY3ktdHJ1bmsKKzI4MzgzIDA2M2YyMDMxNjYwYzNlMjU4ZjM2ODgwZjVkMDhkNDMxODliMzI3N2EgbGVnYWN5LXRydW5rCisyODM4NCAyNWY2OTU0ZmVmMzQyM2QwN2I4ZjNhZjhlNzc1ODVkNzM4NjZlMjRkIGxlZ2FjeS10cnVuaworMjgzODUgYjFhYjRlOGQ3ZDljNWEwYjI4OWYzZDQzNjhjODljMmI0NGM3Y2RiZSBsZWdhY3ktdHJ1bmsKKzI4Mzg2IDgwYWM4NjE5NGExMmJiOTRhZDYyMWU3YzIxZTM2ZDVlZjY5ZTliZjEgbGVnYWN5LXRydW5rCisyODM4NyA5ZTExYmI4M2Q5NTNiYTNhYjYxZTNiOTYzZTU0N2M1N2NlZGYxNTU2IGxlZ2FjeS10cnVuaworMjgzODggZWU5OWQyMjI1NzBhOTQ2MDBkZjA3MDAzOGVmNzNkNDRmY2ZhOGVkNiByZWxlYXNlMjItbWFpbnQKKzI4Mzg5IDIyYjcwYzM5ODNiNTM4Y2FlNTc0YWM4Y2Q3YmY5NDEwOTg4MjEzNTEgbGVnYWN5LXRydW5rCisyODM5MCA0YmI3NzZhMDJlNmU4NGY4YTdhMDgyYzVjMjBlOTY0MDYxZTlhOTUxIHJlbGVhc2UyMi1tYWludAorMjgzOTEgODBkMDM1YzQ1MTQ5M2RkZWM3NGZjYjBiMjQ0ZTQ5YjRlYmIxNzM0ZiByZWxlYXNlMjItbWFpbnQKKzI4MzkyIDE0NjFiOTQ2MDZjNTQxNGViMjliMTY1N2FjYTc3ZDFkMzRkODJiZDcgcmVsZWFzZTIyLW1haW50CisyODM5MyAwMGYxMWVlZGQ2MDMzNDVjYmE5OTIzYTM2ZGJhZjA1NjUzNDUxNmNkIHJlbGVhc2UyMi1tYWludAorMjgzOTQgOTEzMGVhNjY5M2RhN2VlOTlhM2M0ZTNiN2Q1M2JkMDVlYzdhYzFjOSByZWxlYXNlMjItbWFpbnQKKzI4Mzk1IDBkNjYxN2E5Y2I2MTBkMjcyMmFhMjUyMzcwZDUxMzJhM2VmMzRjNDAgcmVsZWFzZTIyLW1haW50CisyODM5NiBmNGJiMGZmMzEwZDM0ODljMjNmNzQ4NjQyMDUzZTNkZWQ2Y2JmMzk5IHJlbGVhc2UyMi1tYWludAorMjgzOTcgYmM4MWVlMjA2MjhmM2NjOWQ1MDEwY2Q0MTg5NzhmNWFlMmRkNmE0YiByZWxlYXNlMjItbWFpbnQKKzI4Mzk4IDY0NjFhY2RlYjU4YzkwODJhZmVlOGU1NjRmMGJjZWFiY2RlZTYxMDQgcmVsZWFzZTIyLW1haW50CisyODM5OSBjNTQxN2YwZWU1ZjA4MDJiMTg3Mzg5YjcxOGIxMmQzMWI5NDU1NDcxIHJlbGVhc2UyMi1tYWludAorMjg0MDAgZmQwNjZkMTk0Y2ZmNDFjMmJiZjdhNGE1YTNhN2ZkZWQ1NmM0NWNkYyByZWxlYXNlMjItbWFpbnQKKzI4NDAxIDVlNGVhZGYxOTAzYTAyOGU2NTVhYjU4MjlmZjUxMDBlOTAyZTU4NmIgcmVsZWFzZTIyLW1haW50CisyODQwMiA4NmFhMmMyZGE0MGU0YjUyY2M2ZGVlMTAzZjUzMzdjNmU2NmJmN2IxIHJlbGVhc2UyMi1tYWludAorMjg0MDMgYzUxMmE5NDMzZWFmM2IzZjE2MGJiYTY5MDVkYzU1NTM1YWU3Mzg0MSByZWxlYXNlMjItbWFpbnQKKzI4NDA0IGEwZGM2ZjUwNDk3Mjg1YTE0NmIxMjBmOTNhMWU1OGRjNDY1NWY4M2UgcmVsZWFzZTIyLW1haW50CisyODQwNSBhYzQ2OGUyMGI0Y2VkOGJjYTA2ZWE0YjhlYjA1OWU1Y2U0NmQ0OThjIGxlZ2FjeS10cnVuaworMjg0MDYgM2E3NDk5NDMxZGNjZjNjZmZkMWZmNDhkYzI3ZjMyYmNiOTAwZjJiZSBsZWdhY3ktdHJ1bmsKKzI4NDA3IGY5NWMwYjg5NGYyNzY2ZTkyZGU4MTVmOTQ4ZTgxOWE5YWE4YmI2MGQgbGVnYWN5LXRydW5rCisyODQwOCAyY2NjZjgyNDIwMDliYWM1NTk4YjI2MmIzOTNjZDExYTZhNGE1OWQ2IGFzdC1icmFuY2gKKzI4NDA5IGZjYjUyMDFjNjllZDg2NzUyYTU4NDY2M2E0NTZhM2E1M2RhMDU5MTUgbGVnYWN5LXRydW5rCisyODQxMCA0ODEzODM3MzcwOWI0NzAwNDA0M2M0MzkwYjBhZjA0MmE0MDhhZmRkIGFzdC1icmFuY2gKKzI4NDExIGJiYWViZTZiN2MxYWRmZWJlN2RhNTljNWJhZWFmMzAyNzI2MGQ2MTEgYXN0LWJyYW5jaAorMjg0MTIgMGI3MjY0OTZjZjQ0ZjE3YWRmZTNiN2NiZmE0NjI3NmU0Y2NlNDEzNyBsZWdhY3ktdHJ1bmsKKzI4NDEzIDU5YjdmNGU5ZmQ2MTQ3MGRiZGRhZDBhNmU1MDVhZTcwOGE1MDQ0OTAgYXN0LWJyYW5jaAorMjg0MTQgYzc0NDE0NGM0MDQ5ZGY2NzM3YWRkZTdiYjBkNjA5NmNlYjhlMDUyYSBsZWdhY3ktdHJ1bmsKKzI4NDE1IDk0YWRmNjk5NjE4ZmVkNWFkNDdjNzAyMDE5OGM3ODhkMGJjYjhkYTIgYXN0LWJyYW5jaAorMjg0MTYgOGZkYjA4NzdkMzUyMzgzODcwYWIwOWI0OWE5MDcwZjkwODYxNmU2MCBhc3QtYnJhbmNoCisyODQxNyA3NjJkZDA5ZWRiODM0MmZiMDQ4NDM5ZmFiNmVhODFkNjJjMTMxZDY0IGxlZ2FjeS10cnVuaworMjg0MTggYjQzOTg2ZjczZmM5ZjhhMjhhZDlkZjY3MDMzMDc4ZGQwN2U2MTcyYyBhc3QtYnJhbmNoCisyODQxOSBmODI0NzVkNzg0MTUyNWM4NmY1OGViZDgyYWE1MDQ0MjQxNjJmZmZlIGFzdC1icmFuY2gKKzI4NDIwIDEyYmI2ZjBjNjBmOGM2MzhjMTJjYmRiOGE0ZjQ2OTJmNGI3MWVlMTQgbGVnYWN5LXRydW5rCisyODQyMSAwODU3YWFkYzYxMmEzMzU4ZWEyNGNiMTQ0Y2JiZTRmYmYwNGYwNmM1IGxlZ2FjeS10cnVuaworMjg0MjIgYjViNzBlNDEwZjEyNGY4ZWI5NTkzNmVjNzMxNjQ3NTA2OGVjMjE2MSBsZWdhY3ktdHJ1bmsKKzI4NDIzIGFjZWNkYzRmNzMzMzYzYzRlN2UxNDUyYWJkZWQ2OTM3NzEzYTViYTQgbGVnYWN5LXRydW5rCisyODQyNCBjNjgzMTFlZmQzNDZlZDlmNDA2Nzc4OTIzMzQ2NGEwMWQ1YTIyOWQ2IHJlbGVhc2UyMi1tYWludAorMjg0MjUgZDQyMWJiYzk5NjFjOGNmZTBhYTI2NTliMjBjODBjNjg3NGUxOWFmOCBhc3QtYnJhbmNoCisyODQyNiAzNTc0OWRiMTA4MDkzMDU2MTAwNTBmYmY2MWI1ZDg1NWNkMmI0ZTFkIGxlZ2FjeS10cnVuaworMjg0MjcgZjM2ZTE2Y2E4ZjUwNTgwZjUyODVlZDgzZTMyMTJmMDYwZWQxYzU2MSBsZWdhY3ktdHJ1bmsKKzI4NDI4IGYyZDc1NzQ5ZTYxYzVlMzIyNDkyYTFlMjhjZmRjZGMwNzlkMzAzMTggbGVnYWN5LXRydW5rCisyODQyOSA2ODYyN2UwYWNkMTViYWI4NWJhZWZiM2RhMmFkYTllZGI2YmFlMzhhIGxlZ2FjeS10cnVuaworMjg0MzAgZmVlYjBiMDJiOGYyNTI5ZTVlNDBjOTdhYTNmZGM1NjhlOWE4N2ViOCBsZWdhY3ktdHJ1bmsKKzI4NDMxIDI0ZTgwZDk2YmQwYjZlOTI2YWI5ODUxNGEwNDQ0ZWY2OGViNTdmNTUgbGVnYWN5LXRydW5rCisyODQzMiAwZWJlYzgzZWIzZGRmYzFjNWI1YTJhZmQxMmRlNzYyYWRlM2FhYjM0IGxlZ2FjeS10cnVuaworMjg0MzMgYWE0NTAzNTU2MzM5ZWRjZTAzNzQ5MzJhYmIyNWQ5YTQ0YTdlODliMiBsZWdhY3ktdHJ1bmsKKzI4NDM0IDgxYmU2MTA1NjcxN2Y4ODEzNjA2MmZiNzI4ODlmNzY3OGI1MTJmYTggbGVnYWN5LXRydW5rCisyODQzNSBiYjI4YmJjMjhjMzIzYWIyOWQ1MDY1NWUyNjc4ODg5MGM0NmM2Yzc2IGxlZ2FjeS10cnVuaworMjg0MzYgZTQxMDU4ODQ1Yjc5MmVkNjYyN2U5ODRmMGNjYjEyZDRjMDFkMjZmNiBsZWdhY3ktdHJ1bmsKKzI4NDM3IDkwYjEzZDk5OTgyNzEwZmY2YzM5ZTA5MmJlY2E2N2E3MzkxZDMyZGUgbGVnYWN5LXRydW5rCisyODQzOCA4MWFjYmUxNjgwYTMzMDhiYjgxOGFlMDYzMmY3N2Y5MTVjMWIwYzUwIHJlbGVhc2UyMi1tYWludAorMjg0MzkgYTZkZTUwYzBkNDU3ZWI2MWNmZWI1OTkyZDc1MTFjMGNjODFkNzNmZCBsZWdhY3ktdHJ1bmsKKzI4NDQwIDA0OTA5NmVmYTJjM2NhODc2YjE5YzM3YjI0NjhkNzM4NDVmZDk2MGEgbGVnYWN5LXRydW5rCisyODQ0MSA4ZmE3NTNhOTcwNzdiYTA5YWQ1YzQyMWMwMDcwN2NhZGMwOTAzNmY3IGxlZ2FjeS10cnVuaworMjg0NDIgMmMyYjg0YmRhMTQxYjdhNGM4YzU5MzFlYWY3YTBmNmEyYjI3MmJkNSBsZWdhY3ktdHJ1bmsKKzI4NDQzIDM0ODQzMDk1NzNmMjFjODM5Yzc3NTM5MmI1Y2JlZGVjMTEyM2YxODAgbGVnYWN5LXRydW5rCisyODQ0NCBhZDI4OWZiYjZiNDhkNzJiNzgzOGU4M2ZlMGYzMGI3Zjg3ZjM2ZmE5IGxlZ2FjeS10cnVuaworMjg0NDUgYWZmMDY3YmE4ZDA3ODhmMGE5MzdlOWJlM2RlZjYyNTBiNzM4YTU4NyBsZWdhY3ktdHJ1bmsKKzI4NDQ2IDhjNjFjOTIwMjViNmM3N2I4M2U5MmJjNzg5MzA3NGIwNDdjMWRjNjQgbGVnYWN5LXRydW5rCisyODQ0NyA0MGU5Y2ZkZTFjNTA4ODBhMWYxOGUwYTRiZWUxMzEzY2RmNDkxODdlIGxlZ2FjeS10cnVuaworMjg0NDggN2ZiMzc1OWQzODY2ZDUwODRlNGEyMjI1OTJmMGRjNzY3OTVlODQ4YiBsZWdhY3ktdHJ1bmsKKzI4NDQ5IDhjODA1MjM3ODAxN2NiNDUzYjBmMjMxNTUwZWQ3M2FlNTc2MDUyOTggbGVnYWN5LXRydW5rCisyODQ1MCA0ZTk5NmU5NTllYzE4N2M3MTM3ODE3Nzc3ZTcxYzEwNGVkMDFkMjg3IGxlZ2FjeS10cnVuaworMjg0NTEgZDVlYmQ2MTZhM2U2ZjRiY2Q1ODA5M2JjNTVjMzhhMzY1OTZjMTE4MyBsZWdhY3ktdHJ1bmsKKzI4NDUyIDBlMDFiODVhZGQ4MTI2ZTZhYzczNzg1N2NlOTllYjZmMDNiMWRiMzMgbGVnYWN5LXRydW5rCisyODQ1MyA3ZDNmODMwNmEwMWVkNWFlNTQzZWI4NDhhZmM1OWZkZjg0ZGI3MGM2IGxlZ2FjeS10cnVuaworMjg0NTQgMGI5NzkyY2JlOTAwNDJiMTc3MDFlZDMyNDM5M2MxNmU2NjdkMzhhZiBsZWdhY3ktdHJ1bmsKKzI4NDU1IDM2NDdiMzBhYTlkZTA5YWM1NmIyZGI3MmY3NGExNmU0ZWUyNjQ5ODMgbGVnYWN5LXRydW5rCisyODQ1NiBkYjQ5ZWU3NmI3ZDBlM2Y3NmRjZjA1YmEyYjMyNGM4MzkxMDcwM2VjIGxlZ2FjeS10cnVuaworMjg0NTcgZWQwYjAyNjcyZjA5MDVkZDBhOWEzZmE2MGYyZmIwNWI4ZjIwMWFiMCBsZWdhY3ktdHJ1bmsKKzI4NDU4IDExODlmNzdjZGY4NDVkMmNlNzllOWNlZDAyZjg2ZTIxMDcwMzJmYzQgbGVnYWN5LXRydW5rCisyODQ1OSA4Y2YyMDU4OTJmNjYyODk2MDZjYzI2YTM4OGI1M2VjZDMzNDUxYWJjIHJlbGVhc2UyMS1tYWludAorMjg0NjAgYmQyYWEwMjQ3YWRhYWQ4YzQ2YTk3ZDk3NDcyNDQwYzk5ZWY2NzY1ZSByZWxlYXNlMjItbWFpbnQKKzI4NDYxIDc2Y2Y4OGU4OTM3NmRjMjU0YWQ3ZmY2MTIwZTZmODMxYzA5NDZjZTMgbGVnYWN5LXRydW5rCisyODQ2MiA0MzRiYzFkZWE0ZjhiYTdlNzdkNjU4NmIzM2VkNGVmN2JkMTFmMDNjIGxlZ2FjeS10cnVuaworMjg0NjMgZWMzNzM2OTZjMTdiYzM3ODYyNjVjOTcyMWM3Zjk5ZmUxZTY0YmU3NyByZWxlYXNlMjEtbWFpbnQKKzI4NDY0IGQwNDEzZGUxNDNlYzI0NWFiMGUxMjVmY2UzZDMzMDg1ZjEzODRiOTkgcmVsZWFzZTIxLW1haW50CisyODQ2NSBkODNjMTRhZTY0N2RkMDMxMGMxYWEwZmUwNWYwZmVjNDZkM2I1ZWEyIGxlZ2FjeS10cnVuaworMjg0NjYgNDAyOWQ2N2NkYmQ1ZmRiZDQyMjVmZDc3Yjg4NDdlMGIwMzgzZGQ1MSBsZWdhY3ktdHJ1bmsKKzI4NDY3IGNiZWUyZWQ2Y2Q3NTVhNzcyN2IzYjhlYTAyNmM4NmNhZGE1MzQ0NjQgbGVnYWN5LXRydW5rCisyODQ2OCBhN2E2MGIxNDFkMWRhNjgzOGRjOWUxZTFjMzM0OTk5OTVlNmI3NTMxIHJlbGVhc2UyMi1tYWludAorMjg0NjkgNjNjYTEyYWJhMDc5MzRhNTlhNWY0NWM3MzdlZTZmN2Y4Y2I2ZGRhZSBsZWdhY3ktdHJ1bmsKKzI4NDcwIDhlOGQzZTRhZjRmNDY4OTRiNzgyYzlhN2QyMDk3M2IxMmUyMmY2Y2MgcmVsZWFzZTIyLW1haW50CisyODQ3MSAxYWEwODE1ZmFkNGIxMTY3MWM1ODEzNTI0OWE5ZjllZmNkMDQxZmI0IGxlZ2FjeS10cnVuaworMjg0NzIgZTBiODU1YWFkMjMwMjA5MmUzMzZkYWQwMTY3YjBlM2YzMWE4YTUxNiBsZWdhY3ktdHJ1bmsKKzI4NDczIGUyMDQyYzc2YWYwNjU2MGNjYTJiZTZhNDMxZGE5NWQ4ZWI2YmEzOTkgbGVnYWN5LXRydW5rCisyODQ3NCBiODA2N2RkYzExZjg3YTk3ZDQ1ZjNmZTcyNzU5YjNhZTFjYmMzNGUzIGxlZ2FjeS10cnVuaworMjg0NzUgYWQzYmU0NzFiMzk5MjE5MzMwNjg1ZDQxZmI5YjJmNWRmODIxMmJmZSBsZWdhY3ktdHJ1bmsKKzI4NDc2IDBkNDkyOTAyODk0YTU1ODg3MGU3NTNjNDZlYWM0OTA4MmQ1YzM5YTEgbGVnYWN5LXRydW5rCisyODQ3NyA3Yzc2YzBmYzJlOTJhMDk3YmY4ZTkwMDU4M2IxZDVhMjRlMGE1ZTY0IGxlZ2FjeS10cnVuaworMjg0NzggMTAwZjE1NDk4MmM4YmJlMDljYTUxOGFkMGY5M2RjZDRiNDlmOGM2YyBsZWdhY3ktdHJ1bmsKKzI4NDc5IDdkYzdhYjVkYjkwOTllODQ2NDliNGMzNTRiMWQ0ZDExODAxNjlmMjAgbGVnYWN5LXRydW5rCisyODQ4MCA4MWEzNmQyYTJkMTM3ZDEyMDliNTQxODIzZmVkZTRkMzdhYTgyMzIwIGxlZ2FjeS10cnVuaworMjg0ODEgNWE4OGYxNzRiNjg0Y2JiZjgwYzFjN2I3MTY0ZWQ4MDIzMDhjMzhlYyBsZWdhY3ktdHJ1bmsKKzI4NDgyIGFiMTc2ZTE2NGVhYjY5NDhiMjc5MjVlNGYyMWFkZTZmMmQwYWMyZjggbGVnYWN5LXRydW5rCisyODQ4MyA0NmIwNTA0NTU1MzM2ODNiZDhkZDIyNzA2ZWZjMTZjNzAwMjg1MmU0IGxlZ2FjeS10cnVuaworMjg0ODQgMDNlYWRjNTdkNDI5OWM0MTRhMWRlOTkxMmQ2M2E5MjY3Mjg3YjNiNSBsZWdhY3ktdHJ1bmsKKzI4NDg1IDgyMzFmODZjODYyOGE0NjM5YzE5MDE0MGNhNzlmZjQ5MDljZTVhMTIgbGVnYWN5LXRydW5rCisyODQ4NiAyNzRmYTBiMzRjYTdlNmIzZDQ0YTExNWRkNzI2OGFhMjE1MTRkYTEwIGxlZ2FjeS10cnVuaworMjg0ODcgMDViMTVjZTI4ZTMxZmE0Zjk0YTg1Mjk0OGM0MGQzYzgyMTQ1ZTBjYiBsZWdhY3ktdHJ1bmsKKzI4NDg4IDVmYjZmNWJiNzY5OGZiOGY5OTExZTJmOThmMGYyMDIwZTZkNDc2MjYgcmVsZWFzZTIxLW1haW50CisyODQ4OSBlZmMxMjhhMzM0YTU1ZjI3NGEzYmQxYzMxYzk2MjNmMjEyNzJlZWMwIGxlZ2FjeS10cnVuaworMjg0OTAgODI1ZmM4NTUyMzI1N2Q5ZTkwYzY3MjI4YTljYzgwM2MzYjVlNDU3OCBsZWdhY3ktdHJ1bmsKKzI4NDkxIDMxYTc3NGE2ZjYwNGI1NzBmOTE3MTZlNTU4ZTdkYWY0YTQxZDMyNDQgbGVnYWN5LXRydW5rCisyODQ5MiA2YTIyMTgzNGVkN2RmNDJlODBjMjAxYTExNDI2MDc3ZGQ0ZTYyOTAwIGxlZ2FjeS10cnVuaworMjg0OTMgYTU0YzVjZmEzZjhmYjIxNGNkMzVmNDFiOWExZjhjYzQ3M2U1MjZkNiBsZWdhY3ktdHJ1bmsKKzI4NDk0IGJlMjg2OGE2M2VkNTNkMWYyNGU0YzA3MWY0ODkwNmU1YTEzOTI4YzIgbGVnYWN5LXRydW5rCisyODQ5NSAwMDRkZTFhYzIzYzQ0MjMzZDlhYjQyMDFmZWFjM2E2MTgxZWFmMzU0IGxlZ2FjeS10cnVuaworMjg0OTYgNGFlYWNmOWY5ODU4ZTQ1ZmQwMjAwNDE0YmU4MzIwMWQxNjYwMDM5NiBhc3QtYnJhbmNoCisyODQ5NyAyNmM1MGYzMjI2MjIwMDIyODBiZGYzMmM4ZWE3OTliZDJhNzY2ZGI5IGFzdC1icmFuY2gKKzI4NDk4IDAyZTBlNmQzODEzZTllYjM0MmY1ZDM2YTg0ZjQyYzYwMTkyMDQ5YzAgYXN0LWJyYW5jaAorMjg0OTkgOGU0NzM2MWM0YjViMDM5NDliZTkyNzFmYzE0ZTZmNTQ0NWI3YzkwMSBhc3QtYnJhbmNoCisyODUwMCAxM2U5MGUzYzRjOTkzMWJmZjViMDU3YjgwYTdiOWZhN2IyY2JiMGI2IGFzdC1icmFuY2gKKzI4NTAxIGM1NTY5MDY0Nzk2MTMwMTI5MzY5NDJjOTcyYjMzMjRjYTY0ZDBjMzUgYXN0LWJyYW5jaAorMjg1MDIgODk0MjE1MDVkYjU5MDMyOTNkYmVhMGFlYTAyMjVlM2IzZDhiMTk2OCBhc3QtYnJhbmNoCisyODUwMyAwYzU0NDg4YTc0ODIxOWZmZGE4YmU2ZmY4Yzg1NDZkNWYzZjYyZmRiIGFzdC1icmFuY2gKKzI4NTA0IGVkMmE4YzU0OGM0NDRkOGI5Zjk1Y2JkMzY1ZTAxNTRjNDQ2YmFjOTkgYXN0LWJyYW5jaAorMjg1MDUgNWExMDE2YjJjNDQwY2RjMWE0MmU4NDJlOGFiM2JkNmY0NGU1YTA1NSBhc3QtYnJhbmNoCisyODUwNiA1YTQxYTcwYmM1ZDE3Y2UxNDNlZjY5YjExYmRjMWM0ODEwNmFhNjAyIGFzdC1icmFuY2gKKzI4NTA3IDJiZTk2OWQyOTUxMGJhOWM0Y2FmYmVkZmVkMmMwMzhhNDY0OTFiMDkgbGVnYWN5LXRydW5rCisyODUwOCA5YTJkZTM5ZThkYTc1ZmJiZmVlZTRiMjYwZGQ0YTdmN2E0MzMyMDI0IGxlZ2FjeS10cnVuaworMjg1MDkgNzA2MDNmNDg0MDI5NDZhMjM4N2UwZTM1YzM4ODIxMjk5ZmZiODc5MSBsZWdhY3ktdHJ1bmsKKzI4NTEwIDRjNGY5MmIwYWY5MDM2OTU0MzIwZmI1MmUyYjdiZjZjMTFmZjQ3YzUgbGVnYWN5LXRydW5rCisyODUxMSBiMzM3ZWYxNmMwZDJkOGJjMzEzMGQ3MzU0NGM3NzU3MzFhNjYxYTM3IGxlZ2FjeS10cnVuaworMjg1MTIgNWZlNGQ5M2RmNDI5MTM0ZWY4Njk1YzEyZTU5ZmY5NjJmZjhiNzNkMiBsZWdhY3ktdHJ1bmsKKzI4NTEzIDg0YmZiOGE4MDVmYzlmZjY2YjM4MWVlMWUxNjQ2YzFkMzIxMmEzNDYgbGVnYWN5LXRydW5rCisyODUxNCA5YTE3OGFkYjRlMmRiMDA4NzJkY2M1ZmM1NzkzMDFkY2VhYzRiZjU2IGxlZ2FjeS10cnVuaworMjg1MTUgMTk5ODJjNWViNDkzYWYwOWEyMmY1MDdhNWJlNTAyYWQ1N2UyMWRhNCBsZWdhY3ktdHJ1bmsKKzI4NTE2IDg3NzE5ODcwNWM5MmFkYjAyOGRhYTJlMDZhZWM5OTRlYWIyYzE0ZTQgbGVnYWN5LXRydW5rCisyODUxNyBjMTQ5ZDM5MzE0MzQ0NzQwZjQ2OTZjOTUwNjVhZGFmY2Q0YjRlYTg0IGxlZ2FjeS10cnVuaworMjg1MTggMDMzN2RhZDg0MDNlMTBhNzM1OGJlNTY3NWYzMjY2Mzk0MGVmM2QwMyBsZWdhY3ktdHJ1bmsKKzI4NTE5IDQyN2VmYzM1YjViZWI2ZGViOWJkMjlmMDIzMWJlNTc2ODNkMzIwNTggbGVnYWN5LXRydW5rCisyODUyMCBhZTE0NjllNDY4YTA0OTA4OTZiYjFhYjkxZmVjYjljZTA5NDk0MjA3IGxlZ2FjeS10cnVuaworMjg1MjEgNmE4NWExYzlkMzNkOGYzYWYzMmU3NDQ2MWYwMzdhMDM3NTJkNGU0NyBsZWdhY3ktdHJ1bmsKKzI4NTIyIDFiODBlMGZkNWE0ODE0NTk4ZjQ0YTU1NzA2OGU2YmM4YTA1ZWZjMDMgbGVnYWN5LXRydW5rCisyODUyMyA5OGRkYzQyOTdmMzYxZGU1ZGJlOWJjYjMzNDUyZjYzNTc1MDNlNmM0IGxlZ2FjeS10cnVuaworMjg1MjUgNTY3MmIxNTczODU1YTUxNWFhMzYzZmQ3ZjhlN2RhZTJiNDI3MGI5ZCBsZWdhY3ktdHJ1bmsKKzI4NTI2IDczYjJjYmFlOWQ5MDE3ODA0MzcwY2U1YmViNWZhOTljNzBiMjY2NWEgRFNfUlBDX0JSQU5DSAorMjg1MjcgYzAyYTY2ODQ4OGQwODJjNGQwZGI4YjM4NzI3NzdlNjhjMWEyYzJkNiBsZWdhY3ktdHJ1bmsKKzI4NTI4IGE2OWExMjQ4NGQ2OWFhODY2ZTY3MjY4ZjdhNzYxNDUyZDAzYTI3NTIgbGVnYWN5LXRydW5rCisyODUyOSBiYzU5MGJlYWRmMGJkMTc2MzRiYjBlMWY2NDJkYjY2NzdhZDdkMzhiIGxlZ2FjeS10cnVuaworMjg1MzAgMzIzMzFkMjZkN2NmMTkxMTRmMWY4MGIzZWViNTlhNTU3OWY0OGU5NSBsZWdhY3ktdHJ1bmsKKzI4NTMxIDhhMTZkZTBiZTExMTc4MDkyYmJlYTA1MDY1MDE0YzdhZDRiNDdlZmUgbGVnYWN5LXRydW5rCisyODUzMiBmOWU0MjQzZmY3OTJlNzk0MTFjMTg4YTUxMTZkZTI1YzY4NmYxNmY4IHJlbGVhc2UyMi1tYWludAorMjg1MzMgNGI1ODBhNDYyNTA4MGNkYmViMjJkYjhmMTQwYTVhMDVlYzViNGI3OCBsZWdhY3ktdHJ1bmsKKzI4NTM0IDM5ZTA5ZjMwZjdlZjI4NDZhN2YxYWI1OTYyMzBlMWY0NGM0ZTZkM2IgbGVnYWN5LXRydW5rCisyODUzNSBjMGQ1ZmY4NTU1YWRlYTQ3MDVkNDU1NmZmYjA5OTU0N2FjOGJiYjY1IGxlZ2FjeS10cnVuaworMjg1MzYgMGVjYjNjYWJmNDBiOWE4NmU2MzZjYjk5Nzg3NmI1ZDY3MWZmMzM1NyBsZWdhY3ktdHJ1bmsKKzI4NTM3IDNhMjZlMzUyZjBhNmQyNzVmZjFlMDc3YzgwYWFhOGNhZDIxMjlkZTEgbGVnYWN5LXRydW5rCisyODUzOCAwMGI2ZGQ0MTRiODA0NjFmYjc4MDFhNGU4YzFkNmQzZTFjMWI4NzFiIGxlZ2FjeS10cnVuaworMjg1MzkgMDQwMWEwZWFkMWViMzM0N2QxMjBkMmEwODE0ZGNhNTIyZjEyYjgxMyBsZWdhY3ktdHJ1bmsKKzI4NTQwIGI0NzBiNDE3ODM5ZDhjYjQ2ZGYzMWEzNDUyNzBiN2UzMmUzNmVmZTEgbGVnYWN5LXRydW5rCisyODU0MSBmMGZmMDYwY2QxOTRlNTE3ODcyNWU1YzkyODIxNzY2OTQwMzgyYzM0IGxlZ2FjeS10cnVuaworMjg1NDIgZmIzMzRiMWE1NmE2NWMwNzEwOGFiMzhiZTgxOTMwNzA3MTkzM2U1ZSBsZWdhY3ktdHJ1bmsKKzI4NTQzIGEyYjFmM2MxMTM4N2E2NDcwOGM4NWVkZTA4OGNiMWQxZDBiNTBkYjcgbGVnYWN5LXRydW5rCisyODU0NCA4ODM0Mzg1ZjI5YmY1NDEwZDlmNzI4YWEwZDM3YTZkNzZjNTc4ODk0IGFzdC1icmFuY2gKKzI4NTQ1IDc1OTYxY2IzNzQ3ZjlkYjliZjQwMWNmZDFhOTRmZGIxNDAzMTEyN2MgYXN0LWJyYW5jaAorMjg1NDYgNjkyOTNiODQ5ZDg1ODA3YjRkNmUxODFiYjI0NmI1NTBhYTJmY2FlOCBhc3QtYnJhbmNoCisyODU0NyA3YzczMzM4MDI3MTQ5YjIwYzg2OWE5ZjQwZGE1MjMzZWI2ODdjMzVlIGFzdC1icmFuY2gKKzI4NTQ4IDRlYTA4MTEwMDMwNTI5YjhiOGIyOGRmOTViMDljODI1MDUyNTdkYjAgbGVnYWN5LXRydW5rCisyODU0OSBlZmMwZWRjMzBmZWE0MzUwZmVjMGMwNWJkZjllMzNjNTYzMmYzZTBiIHJlbGVhc2UyMS1tYWludAorMjg1NTAgMzAxNWM2NzhmODFkZGY4NTBkZjEwMGU1YTg2ZTMxM2RjMDc1MDAwNiByZWxlYXNlMjItbWFpbnQKKzI4NTUxIDBjZTI3MjJhM2UxNTRkMDkzNGJiYjliNTUyNmVkYzVlOTM4ZjgyODQgbGVnYWN5LXRydW5rCisyODU1MiA0YzgxNjNhMjc2NDAyOTdhNmIxY2JjOTlmNWQ0NWRmNWQyZDg5OThjIHJlbGVhc2UyMi1tYWludAorMjg1NTMgOTUzZWJlMGMwYzI1ZWVhYWUzYjNlZjc4ZTU0YTE4YmUwOTgwOGY4ZSBsZWdhY3ktdHJ1bmsKKzI4NTU0IGM3MzEwZjM0OGM3OGUyYWZjYWZiNmFjYjFiZWFhYTk2M2UxZjk4YTMgbGVnYWN5LXRydW5rCisyODU1NSBlNTAwZjE4ZjMxMzEyODJhOTdlN2M2ZmMzZjVhNDZlYzMxNWJiYTJlIGxlZ2FjeS10cnVuaworMjg1NTYgNmI2N2QyNjA3OWYyNTU2OTBlY2ZjYzIyZGUyYjIwNzU3NjYyYmVmNSBsZWdhY3ktdHJ1bmsKKzI4NTU3IDI3YzcxOGM4MmVmZGUxNDZjNGY4OWMxNzQ0NjhmYjYxMTRkNmNiNmQgRFNfUlBDX0JSQU5DSAorMjg1NTggNDhkMTA4ZTViODg0MWEwZTg5Mzg5ZjAxZjhjMDNlMGU5ODRjNTk4MSBsZWdhY3ktdHJ1bmsKKzI4NTU5IDE3Mjg0NWMwOWFmZWNmNTQyNTNhNGY4NDNjYTRhZTdlZTM1ZDEwNGUgbGVnYWN5LXRydW5rCisyODU2MCA1NmY5ZjVhYjZlYzExZjhhOWZjM2I2OGE0YTFmOGMyZGZiMmIwMjFjIGxlZ2FjeS10cnVuaworMjg1NjEgNTE2NWEwZWU4NGM2MjBhNmY2ZWNkMDNkNTNhZGNkZDk0MmM2N2E0NyBsZWdhY3ktdHJ1bmsKKzI4NTYyIGYxYzY5YzMyYzQyYjJiZWFlNjQ5MzNjZjNiYTM1NmIzNjM4NTUwYTYgbGVnYWN5LXRydW5rCisyODU2MyA5NjRkNjg4OGEyMzY4ZTllMWMwYzEyZTRjNDM0NmEyMzBiZTg1NWI0IGxlZ2FjeS10cnVuaworMjg1NjQgMzY4YmMzYTQ5MTllMzA1YzVjODM3MmZiMzUwNmZmZWI5MGIwODY3YiBsZWdhY3ktdHJ1bmsKKzI4NTY1IDg1MjllNTU4ZjcxZDc0MmZlNWJmNzY4M2Y5MTIwNmRkMTc3MWE0YzAgcmVsZWFzZTIyLW1haW50CisyODU2NiBiODllYmQ1N2NlYjRhOTVmMmNiMzgwNGFkMzRmZmQxOTYzYzM1ZGE3IGxlZ2FjeS10cnVuaworMjg1NjcgMzhmYTc0YTIwNWVhNTZkODU2NmY0NjlmNWQ0MDRhNDcwNDQ1MDk2MSBsZWdhY3ktdHJ1bmsKKzI4NTY4IGNjNTNkZGI2NDI0ZjNiNDE1MjVmOTA4ZTczZDdjZTZkNGU5NTdiNDYgbGVnYWN5LXRydW5rCisyODU2OSAwZjAwMTY2MzJiZTQ5ZjlmMDlhMDUwMjkwZDRhYmNmODE3YmY1YjM2IGxlZ2FjeS10cnVuaworMjg1NzAgMGQ5MmViNjNkYjg5YWU4OTRiOGIwNDg4YWE3YjFjZThiMWI4OGE3ZCBsZWdhY3ktdHJ1bmsKKzI4NTcxIGRkYWQzNjdiODBjM2Q0NjgxMmRhMmRjNWI4ZTM4OWQxNmFhNDdiNDAgbGVnYWN5LXRydW5rCisyODU3MiA4MDYzNGNhMDJkYmY5MzY0YzIxMjIxOTJmOTFjMzBkNGMwOWFjY2QxIGxlZ2FjeS10cnVuaworMjg1NzMgZDQ0NmI1MTUxMzE2ZWE4MmU3ODA1M2EwMTVmZWNjYmQ0ZWFlZDNiZCBsZWdhY3ktdHJ1bmsKKzI4NTc0IGFmNjk0NWYzM2IwODYwZmYxMGMwNjAwMjQ3MzVlYmIxYjllMmVmNTEgbGVnYWN5LXRydW5rCisyODU3NSBiZTI1ZDIzNmYyODZkZDRlNzFhYTExZDlhNzJhMGEwMDNmYTU0OGY4IHJlbGVhc2UyMi1tYWludAorMjg1NzYgZGViNjRkZmM4NDE2NmNhNTE1Njc1MjMzYjEzNjBjODZkYzdlMjQ3MyByZWxlYXNlMjItbWFpbnQKKzI4NTc3IDY1ZTBmMmUzOTVhYzgzNzY2MDI2YmRmZWZhNmFiMmUwMjNlYmZhYjcgbGVnYWN5LXRydW5rCisyODU3OCBhZGFiZGI5OWVjYzRlZTc0NmQyOGNjNTMyZjEyYWE5ODUwNzliMmMyIGxlZ2FjeS10cnVuaworMjg1NzkgNGIxNTRmMTlkMWFmMmY0ZjBlZGMzZDNmNGM5OTAzZTVmOGJiZWIwNyBsZWdhY3ktdHJ1bmsKKzI4NTgwIDBlMjM2Njg3OTI4OWUyMjYwY2EyOTMwYmY4NTVkOWY3MTJmZDMwNzQgbGVnYWN5LXRydW5rCisyODU4MSA0YjIwNWUwZmI0NmJjMWY4NjEyMmY2N2NhYjZmMzhlYmE5NDA5OTgyIGxlZ2FjeS10cnVuaworMjg1ODIgNWMyNDMzOGYzYWU1ZjQyMmI2OWI0MzlmNzMxYjFlNjE5NDg2Y2M3ZiBsZWdhY3ktdHJ1bmsKKzI4NTgzIDEwZjk4ODg4NTNjYzYwNDEyYmNmYmVlNzZjMWE4NGY5N2JmOTg0MjIgbGVnYWN5LXRydW5rCisyODU4NCBhYzc0MTU4N2U2NmI5MjM0NzQ4ZDZkZWI0ZDFjOThkOTI2MTYxMTA2IGxlZ2FjeS10cnVuaworMjg1ODUgNWNiOGQ1NzJiNGRlZjAxYWMzYzIyZDUxYzJiZjRlZTY2MWIwN2U2NCBsZWdhY3ktdHJ1bmsKKzI4NTg2IDBjOWRmZDVhMDZkNDQ3MGMwMDA0Mjk5YWM0NWIwNmE0MTFiYjY3OGEgbGVnYWN5LXRydW5rCisyODU4NyA3NDFlZGQxY2EyM2E4YmU5YmY0ZDYxODdmNWQxMWY2MWE4ZmYyYzJlIGxlZ2FjeS10cnVuaworMjg1ODggZTU2NmFmOTQ2NDhiYTY2MzIwOTQ1MjFjOGM0MDdhYmYwNDNkZTRlNyBsZWdhY3ktdHJ1bmsKKzI4NTg5IDY0NWRjMzNjZDQ4MTI0MGYwODU5N2I1ZDM2ZmRkZWNmN2FlNjFhMjcgbGVnYWN5LXRydW5rCisyODU5MCBiZjkwZmI3MWFhNzZkOTNhMzYxMzEyNmNkNWM5MzkyY2EzNTk5MGRlIGxlZ2FjeS10cnVuaworMjg1OTEgYzFjYTAzZWU1MTZlMTNkYzZiZGIwODhjZWI2ZjdiZTExM2IzYWQ2YyBsZWdhY3ktdHJ1bmsKKzI4NTkyIDBmMGQzNDc0ZjNmNjg5ZGZlMjEzN2Q1M2Y4YWFjNDFjNjllMmYyNjQgbGVnYWN5LXRydW5rCisyODU5MyAxM2E1ZjMyNjI4MzIxMjU3YmVjN2QwM2JjMDY4ZDMxNmViZjc4MmY5IGxlZ2FjeS10cnVuaworMjg1OTQgZTE2MTcxNTZmOTNmZGM5YTczOGJmNGIyZjY5YmEwMjA2M2FlNjVkMiBsZWdhY3ktdHJ1bmsKKzI4NTk1IGMyMTNlOWI4MDAyNjI5OTc5ZTU5MTkxZmIwN2FiM2ExZGRmYWFiZGUgbGVnYWN5LXRydW5rCisyODU5NiBhMzdjZmMxYzk3MTZjN2E2NTgzNGY5M2FhMzk2MGJkYWZhNTFjZmIxIHJlbGVhc2UyMi1tYWludAorMjg1OTcgMmFjMTBkOTMyZDdmNTU5MTcyYjM2Yjk4OWY0NGNjZGY4YmI1MmQwZSBsZWdhY3ktdHJ1bmsKKzI4NTk4IDYxMDQ4YWRhMDViY2M5NTQ5MzI3ZDhhNWI2MTI2M2FhN2U0OGVkM2QgcmVsZWFzZTIyLW1haW50CisyODU5OSBiNmJmYWE2Y2E4NGQwNTRhODE4OWRjYjVmNzAwZDQ5NzQyNDFkMjNhIGxlZ2FjeS10cnVuaworMjg2MDAgYjhiOTJiM2Y1YjE3YzZlY2Y5Yjc5MGU5OWJjMTc3YTE1Y2UxNWYzMyBsZWdhY3ktdHJ1bmsKKzI4NjAxIDk4ZDhiYjJlZTRjMzM4NDgxY2ExYTdhMWFlMmIxYmQ2MmRiMjE3NWYgbGVnYWN5LXRydW5rCisyODYwMiA0MGMzNTE5MTM5ZGU4YjZjMDIwM2NlOTI2YjQyMWI2NTIxY2QwYzM5IGxlZ2FjeS10cnVuaworMjg2MDMgOWVlMmZiMjdkMzNhNzIxODRjODdiMjMyZGMxZTliMjBiYjRkM2RmMSByZWxlYXNlMjItbWFpbnQKKzI4NjA0IDEzZDA2ZTVjOGE1YzNlZjRiOTU1MGRlNjI1ZjQ3OGQ3NDg1MWUyODUgbGVnYWN5LXRydW5rCisyODYwNSAxYzAxOTdmNDljNTljMDM3NzY1ZDU4YTIyMTMxMjAxNjgzNDg0OWQ4IGxlZ2FjeS10cnVuaworMjg2MDYgNWExN2YwOTc4MzI2MDA5YzA2YTEwNmJmZjk2ODVlZjk5N2RhMGNkMiBsZWdhY3ktdHJ1bmsKKzI4NjA3IGY0ZTlmMDlkZjRmMjM5ODNjNjM4YjAxODY1MjJhN2JjYjM5MTkwZGYgbGVnYWN5LXRydW5rCisyODYwOCAyOWVmYzJkODNhZGU2MTlhMGEzNmM2YTI3NjJhMjQ1MTk2N2UwYzU3IGxlZ2FjeS10cnVuaworMjg2MDkgNGY0MDAzMDQzYjUwMTMxZWQ3ZGFiY2QwMDBkMWE4OTUzZmM3Mjc5ZSBsZWdhY3ktdHJ1bmsKKzI4NjEwIDAzODcxMWFlMTNlMGUxODM0OGE1MzEwMThiNDA4YzRhODMxNzBiNWUgbGVnYWN5LXRydW5rCisyODYxMSBiY2RiNjBkZjRlM2VmYjMzMDhiOWU4NTE1YjllNDEwNWQ2Y2U2YjllIGxlZ2FjeS10cnVuaworMjg2MTIgM2VmYmQxOTQzYjhjMWU4ODhjZGNjZjZlM2QzYTJlNjVlNzllMGYwZCBsZWdhY3ktdHJ1bmsKKzI4NjEzIDExNTA1NjBjMTAwMzEwOGYyNjYxZGNjNjkxNDYyYTRmMjljMDYyYWIgcmVsZWFzZTIyLW1haW50CisyODYxNCAyNGZlMmFjNWFkY2MxOWM5ODkyNDgwOWQ5NjA4YzljYTBjODAxNmUzIGxlZ2FjeS10cnVuaworMjg2MTUgOGE2ZjU0Yjc2MzQzNDA3NmM5MmU2ZmY0NWU0NTZjNzE3MDk4MGNkYSBsZWdhY3ktdHJ1bmsKKzI4NjE2IDRiOTg0NDE4OGQwNGU3MGQyN2UwZjU2OTUwMmE5OGNjNzRjNTM4NjMgbGVnYWN5LXRydW5rCisyODYxNyAxODE2MGNiNjM2NTA5Y2ZlNGRjZjYyNTY5Y2M5YTIxNmM5Y2FkZDdhIGxlZ2FjeS10cnVuaworMjg2MTggYTBiZTE4MjYzMWNjM2JhYmQyYjc0NDRjYWQ2ZjUyZDg2YzI4M2EyYSBsZWdhY3ktdHJ1bmsKKzI4NjE5IDQ2YWMzNjUzOTZhNDk3ODRjYjIwMWQ5ZDE1MmZjODBlMGM4ZWE3ODMgbGVnYWN5LXRydW5rCisyODYyMCAyYmYwOTg5MjRiYTQwOTUyZDM0NmJkZWZmMDE5MDI0NmY2YjQ4OGRjIGxlZ2FjeS10cnVuaworMjg2MjEgZjE4ODViOTlhMzljZGFjNjdjNmFmZTBmMDhiNWZhM2ZhMTc2ZGM2MSBsZWdhY3ktdHJ1bmsKKzI4NjIyIGIzYzQ1OGUzYzI4MGY4ZmQ2MWQyNDlhMmUyMDRkMThiNzczZTQ4YjggbGVnYWN5LXRydW5rCisyODYyMyA0NmU3MmE3MDg4NTc4NDRiODJmYTA1YTAxOGJjNDQ3MWY5MDIwYWE2IGxlZ2FjeS10cnVuaworMjg2MjQgOTA5NjBmN2Y0ZjMxNDRkZTFhN2I3MDA4YmZlODU2YmZhYjcwZmVjNiBsZWdhY3ktdHJ1bmsKKzI4NjI1IDQ1ZGYyZGUzNGNkMzliZjdjYmUyNjRlNzA5MmExYzA0NjM1MjhlMGYgbGVnYWN5LXRydW5rCisyODYyNiA1ZDIwN2U1N2QwNDAxNDBjZTNiNTJhNzZlZTI2MDFkNzIzZGY5ZDk1IGxlZ2FjeS10cnVuaworMjg2MjcgNTUwOGUwNGQ0OTdjNjg1MTZmYWRlZWI5MDgzNjRjZjYxZWI1MDU4ZSBsZWdhY3ktdHJ1bmsKKzI4NjI4IDk2ZGQ5OTI3ZTAxMWQ4YjE1YTVhNDNjZWU5OTI3ODFlNDczYTZmOTEgbGVnYWN5LXRydW5rCisyODYyOSA0YjMyYmU2NjE3Nzg1ZDM1MDA1NGI1ZDRlZjk4ZTRjZGE4OGE1M2Y0IGxlZ2FjeS10cnVuaworMjg2MzAgNDcwODFhNzUzZWNjNDgyNjRjNmQ5MjhiMTdhNzhlMWRjMzc3YjJlNCBsZWdhY3ktdHJ1bmsKKzI4NjMxIDY0ZDEwNWRkMDgyM2JhOWI4ODRhMGRiMmQwZDg5YjUzMmEzMThhN2EgcmVsZWFzZTIyLW1haW50CisyODYzMiA4ZGQ2ZjU1ZmQ0YjdlN2VkOWM1YTdmYTA4NjhlODQ4MzczMjJiMjc0IGxlZ2FjeS10cnVuaworMjg2MzMgYzE4NGU0MTY4ZDE0YzhlOTc5Y2Y1ODVhM2ZiMTkwZTA2ZjZjODM0NyBsZWdhY3ktdHJ1bmsKKzI4NjM0IGNiYjZjYzc5ZDMzNjUwNzU0NTAwOWM2YjdiZjc3YzVlNWYyZmY1MDMgbGVnYWN5LXRydW5rCisyODYzNSAyN2Y4MzU0ZjQxYjZlNzI0NjhlZjkyNzhhMmMxMjM5ZmYyNzc0ODVmIGxlZ2FjeS10cnVuaworMjg2MzYgYWZkMDAzMGU0YzM4YzYwZmQ5YTY2NThkYmRmMjYyNmM2ZGZkZjRmMiBsZWdhY3ktdHJ1bmsKKzI4NjM3IGFiZDYyNTQxN2E1MzU5YTA1MzkwYjhjMmZlNTBkYzAzYjI4NzQ2OWYgbGVnYWN5LXRydW5rCisyODYzOSAyZTdmZTU1YzBlMTFhY2U3Njc1NWM1OWQ1ZmQ3MmE5YmM1NjYwNGE3IGxlZ2FjeS10cnVuaworMjg2NDAgMmQxM2Y5ZDk4MTM1NzdkZjVlN2Y4NmRhOTA1MTFjODA4MGVjNGE0MyBsZWdhY3ktdHJ1bmsKKzI4NjQxIGJmNzVmM2E0NTkyN2ZmYjMwYTM1MzBiNDBmOThhZWQ1YTk2MDg1NWUgbGVnYWN5LXRydW5rCisyODY0MiAxZTQ2ZGExZTY1MjI2ZDA3ZWE1MTAzZjI0YmVmMTM0YTg3MjE3ZWYyIGxlZ2FjeS10cnVuaworMjg2NDMgMjQ5MGNmN2U2OGE0NGFlMWVhNTQ3ZWMyYmQxZGY5MTVmMzE0NTE2MCBsZWdhY3ktdHJ1bmsKKzI4NjQ0IDlmM2VhMzdkYzQzY2I3ODU4ZjQwN2U0ODY3OTgyODcyYjgwZDYzOGIgbGVnYWN5LXRydW5rCisyODY0NSA3Njc2OGFkYjZmMjMyOGIyZTFlMTE4MDhjNjg4MzBmNjkzNTc1YmZhIGxlZ2FjeS10cnVuaworMjg2NDYgY2JjZDczZjU4N2FkN2E0OTg4MGJhZDkwNzkzNWQ3N2Q3YTNmNGI2OSByZWxlYXNlMjItbWFpbnQKKzI4NjQ3IDEyOTQ5ZWNlZDU1ZmY3ZDljNDRmOWNhZmUzN2RlYWE1NDZiYmEyNDQgbGVnYWN5LXRydW5rCisyODY0OCA3NWNkNGMyMDNkOGYzYmRmMzQ3NWJmNDQwNDNiNmVlYzFkZWY4NzFlIGxlZ2FjeS10cnVuaworMjg2NDkgNTMzMGMwNjIwODEwZTVkYWFhOGE3YmMzOGVmN2JmNWMxN2MyMGZjMyBsZWdhY3ktdHJ1bmsKKzI4NjUwIDAyMjBiMDA3NWEzNWQ0OTg1YTgyYzE1Y2JiYTk2MmU4MGY4NzdhNDkgbGVnYWN5LXRydW5rCisyODY1MSA5NTFmNWYyOGYyZmViMzNhMzk0YmZhMTE2N2EwMzFjZjk2OWYyYjY0IGxlZ2FjeS10cnVuaworMjg2NTIgY2RhZDZiMDkyMWQ1NzgyNTMxMTU5OTBjYWJiY2I4YzQyNzE3YzgxNSBsZWdhY3ktdHJ1bmsKKzI4NjUzIDRmZDBiNzZjNzQ5ZWViNjFjN2I3NWQ5MzQ2ODZiMDk0MWJlNjVlN2UgbGVnYWN5LXRydW5rCisyODY1NCA4YTdhMmYxZjg4ZjA2NTM0YzZiZDM5MDJjODFiNzkzN2M1ZDQzYWI2IGxlZ2FjeS10cnVuaworMjg2NTUgYWMwZTFlOTMxZjM5MDBjOWVkNjBhNjIxYjY2NTRmMTk5YmE5MTdjOCBsZWdhY3ktdHJ1bmsKKzI4NjU2IDQwZTViMmRhOWYyODQzY2IyYmMzOGY1ODcyYWFjNTU0ZjZmNDVlMGEgbGVnYWN5LXRydW5rCisyODY1NyA1ZjVmMWM4MjU3ODQ0MDAwYzVmZmM0MWM3MTI4MGZmNjJlOGRiZGNlIHJlbGVhc2UyMi1tYWludAorMjg2NTggMmIxNzAxY2Q0NTY2MjE0ZjY2YTRkYzQzNmVmYmE2NWMzYzJlZDJlNCBsZWdhY3ktdHJ1bmsKKzI4NjU5IGU3MDlhM2M4YmZlY2M1ZGZkY2JmMTgwMjMxY2JiZjhjMTA2MWIyZWMgbGVnYWN5LXRydW5rCisyODY2MCAyM2EyYmFkOGQ4MmNlNjQxN2ViZmYwYmMzODYwOWJjZGNjYzgxMmFhIERTX1JQQ19CUkFOQ0gKKzI4NjYxIGZkOGFhN2FlZDRkNTFlNmNmNzg2ZWFiMzlhMjI1ZWNhMmYxNzczZDMgbGVnYWN5LXRydW5rCisyODY2MyAxOTkwNDc1MGMzNjU3Yzc1NzM2MzMwNjBmOGYzZTczZmIyNTc5MTQxIGxlZ2FjeS10cnVuaworMjg2NjQgODA5YzE0ZjExMDFhOTViOTA2M2JhNzM2MTE5OGRhNDEyNzRjNDBlMCBsZWdhY3ktdHJ1bmsKKzI4NjY1IDFhNzg5NWY5N2IzMGQxMzg3M2FkZTk3NzI5NTA1MDU1N2MzYTA2NzIgbGVnYWN5LXRydW5rCisyODY2NiA4Nzc1ZGVlNjBkODlhNTU5YWFjOWI3OTA5NTk3ZmQyMGViOWU3NTVmIGxlZ2FjeS10cnVuaworMjg2NjcgMjk3MGU1ZTc2MDFmZjI2YmU0Mjc5NjVkNmE2MGExNGRiODM2MjU3NyByZWxlYXNlMjItbWFpbnQKKzI4NjY4IDhmZDRlMjJlNzhmMDFjNWM4NzI5NDRiYzljMWY1ZWU2OTQ0MmIyNTUgbGVnYWN5LXRydW5rCisyODY2OSBhYWMxZWU5NjZmNTZhNGQ2MGEyOTI0OTlhMWU2YzY4ZWE3MzNhODEwIGxlZ2FjeS10cnVuaworMjg2NzAgOGQ3NTFiNjJlY2M0MjViNGUwN2ZmNDM0NTc0MDA5NDM1ZmZhYTVkZSBsZWdhY3ktdHJ1bmsKKzI4NjcxIDk2YjJmZmI3N2IwMTc0MzdlNTBkNDkxM2FkMWYzM2FmNmY0M2Q1MjMgbGVnYWN5LXRydW5rCisyODY3MiAyOTMwZmFmMTI1Y2E5ZjNmZDQ1YzE1M2IzNmRkYTcyN2FlZGI1OGQ2IGxlZ2FjeS10cnVuaworMjg2NzMgNzAwOGU1MzU3OWViZDc1OGZmNzhmOTdlYWQ0N2IyZjVkNWM2OGZlNCBsZWdhY3ktdHJ1bmsKKzI4Njc0IGEwZjY0MTljYjEzZmU2YWNkYzVjZWQwYTEwMjc1ZTE0M2U1YTlmODYgbGVnYWN5LXRydW5rCisyODY3NSA3NzhmNzIyMWY5NTUxMTU1MjEyNDcyM2VkNGM4YmJiNThiNTU3M2VkIGxlZ2FjeS10cnVuaworMjg2NzYgY2MzNWQ3Yjg3ODUyZjQxODhhYjljNmEwOTAxMmE4MDQ3ZGFmNmI0NSBsZWdhY3ktdHJ1bmsKKzI4Njc3IGM4MDQ0MTIzZDExMGI2ZGFhYTE5N2IxOWI1MWMzNzJjMjM0MGE5YzYgbGVnYWN5LXRydW5rCisyODY3OCAwYmY5NjhlZTE1Yzc2NTRlZjc3NzUzZmQ2ZDEzOTFhM2ExYTBlMmYzIGxlZ2FjeS10cnVuaworMjg2NzkgMWJiZWRmNTQ4MWM4YmI5ZDhjODA0Y2Y0YWIzZmY3NTA4M2VhM2UzNCBsZWdhY3ktdHJ1bmsKKzI4NjgwIGUxYmE0MWRjOTc4NDI4MTY4MmNlMjQxNjdmMzMzODFlNDc4YmJkZTEgbGVnYWN5LXRydW5rCisyODY4MSBkYmYzY2MxZjQ3MzNjNWVhOWJjNDVlNDA3ZmUwNDU3ZDU0MjdjMzRmIGxlZ2FjeS10cnVuaworMjg2ODMgMTM4NWQxNzlhMTdhZGE0MjExNDFlZDhlMGU3YWJmMDBlNjQ1Y2ExNyBsZWdhY3ktdHJ1bmsKKzI4Njg0IGIxMjhlOGExMWUyOTVhZTIzZTk5ODY2NWExYzNmYjhkYzBmNTU5OWQgbGVnYWN5LXRydW5rCisyODY4NSA0ODBjYWY3YzBhMTRlMDQ1ZWMyOGMwMWVmYzlkNzdmMzY4NGE4NTFlIGxlZ2FjeS10cnVuaworMjg2ODYgZmMyYjczODAyZjdiOWQ5NzFkODVkNDZlNmZkYmQ1YzE3NjE1ZDNmMiBsZWdhY3ktdHJ1bmsKKzI4Njg3IDFkZDdlNTFmZTBiZTdjYWI2YzliOGE0NjBiOTE2ZTcwM2IwYTgwZmIgbGVnYWN5LXRydW5rCisyODY4OCA0NjkwY2E3NTViZWM2MzlmYmJiY2I2ZjFiZTI0M2RiM2RmM2MwYzRiIGFzdC1icmFuY2gKKzI4Njg5IDZiMGU4NDZiOGQzN2U1NDE1N2FlNzZmZWViOWIxMGE0MjZlODYyMzcgbGVnYWN5LXRydW5rCisyODY5MCA5ZmNiNzdiMDRmOTdmYjMwOTcwYWNlNTI3ZTg0NDI3NTFiZTQ4ZmVkIHJlbGVhc2UyMi1tYWludAorMjg2OTEgNmViOGRiNTNmN2ZjYWM0ODBhMDQxNTMwNWUxOWQxNzQxZTY0OTM1MSBhc3QtYnJhbmNoCisyODY5MiBlMjA1YzdkZTVhNWE0NTRhM2MzNzExMmQzOTc1Yjk2ZmU5MDgxMzFjIERTX1JQQ19CUkFOQ0gKKzI4Njk0IDI5NTU5ZTIxY2Q1MzA0OTNmYjQ1Y2RhZGZhOTA1YWIyNzVlMTc3MjcgbGVnYWN5LXRydW5rCisyODY5NSAxYmQwODliMWRiN2ZkYWFjOTViNjBhZDc2ZDM2OTY2YTgyMDhjMTdhIGxlZ2FjeS10cnVuaworMjg2OTYgM2RiMDNjMGQxNTMxMGFhNGMxNzk3MWMzMjY4OTY0N2IzNjg4YTNlOSBsZWdhY3ktdHJ1bmsKKzI4Njk3IGU1N2U0YmI1MzJiYWI0ODkwMjE2ZjVmOTZmNDU5YWExOWI4OWYwODkgbGVnYWN5LXRydW5rCisyODY5OCAwNGE1NDFlNjg5NjQ0MmE2MTY2NmZmOGVjZTg0N2FmZDQ4ZWM0YzAzIGxlZ2FjeS10cnVuaworMjg2OTkgYWQ2NTI4NjkxYzMwOWFhODc5MmVhZGI2NGVmMGE2ZTIxNzU5Zjc0YyBsZWdhY3ktdHJ1bmsKKzI4NzAwIDBlYzQ3NTNjY2IwZmI2MmUxNTQzNGI4NDYwN2ViZWY4NGE4ZWFlMDUgbGVnYWN5LXRydW5rCisyODcwMSA1MjcyYjc2M2MyOWM5YmE3ZjRmYzJiMDA5YmI2ZmE1OTcwYTc3NDMyIGxlZ2FjeS10cnVuaworMjg3MDIgNjE1OGZjYTViY2JmMjJhOWY2MTgxNWEyYzAzMmY2N2RjYTY0OThlZSBsZWdhY3ktdHJ1bmsKKzI4NzAzIDRiNjE4NTEyODgxNGMxNDNjYzkxOGIwOGIxOThlZjZhYTlkZDZjOWIgbGVnYWN5LXRydW5rCisyODcwNCBmZGE0OGRkOTRiMDcwNDkzMWU1MmFlMmRkN2E4NmMzYWEyNjRjM2VkIGxlZ2FjeS10cnVuaworMjg3MDUgNzM0MjljYTc0OGNlYmJhZTJlNDlkOWZlMDhmOWUyOTRkYWRhY2RlZSBsZWdhY3ktdHJ1bmsKKzI4NzA2IGU5YTYzZTQ4MzEwOWNlOGM5YjU5NTBlY2E0Y2FlMTZkMjE2ZjY0OWUgbGVnYWN5LXRydW5rCisyODcwNyA4NWQ4MWUwOWUyZjdkNzk1NGEyYTQ2ODY1ZDY1NGMxNDU0ZWQ1MGI0IGxlZ2FjeS10cnVuaworMjg3MDggNmVjMTU0Njg0MGFlNjYyZmY4NWFmOGEzNjk5ZDEwMGQ5OWNjNjFhNiBsZWdhY3ktdHJ1bmsKKzI4NzA5IGEwM2Y3Nzg2OWIyZjU0OTYwMmYxZGFmNWYyOTk3OGVmMjMwYmIxOWQgbGVnYWN5LXRydW5rCisyODcxMSA5NzNmNWZmMjA3Y2M1OGE1Yjk1MmQ4MTk3OTNjNTdkMzIwNjFkOTM5IGxlZ2FjeS10cnVuaworMjg3MTIgNWVhODJjYjU1NjgyM2Q1YmM4YTEwMTc1YTZiNjA3NDlhZTgyNmI4YSBsZWdhY3ktdHJ1bmsKKzI4NzEzIDg1NGRkNzY5NmViMmJlYWNhMjdjZjU3NDgzYWZiZTg4YzQ3NTkyMjQgbGVnYWN5LXRydW5rCisyODcxNCA1N2QzYjk2NjUxYjZlYzg2MzUwODQ3OWQ3OThiYzc5NjhmZTgwY2M2IGxlZ2FjeS10cnVuaworMjg3MTUgOGNlNGJhODUzOTY5MTlkMWYyNGYyOThlZDUzNGEwMGIxYzVmOTFjZiBsZWdhY3ktdHJ1bmsKKzI4NzE2IGM2ZGU2OGNjOGUyYmJjZTk3MGMzZDM3ZWQ0OTQ0OThkYzI0ZGI0MzggcHktY3ZzLXZlbmRvci1icmFuY2gKKzI4NzE3IDkzZTI1NDU3N2NmYTUzMWI5ODhkOGZhMjgzYmE3OWEyMGIwNDBkZjcgcHktY3ZzLXZlbmRvci1icmFuY2gKKzI4NzE5IDk4ZTEyYWE4YzU0NzVmNTdiNDMyNzkyMWQwZDRhOTY1ZTY5NzIwZWQgbGVnYWN5LXRydW5rCisyODcyMCBmYjAwZmQ5MzE4OGE3NjU5ZjgzZGFmY2VkZjhlMWViNzJkODMxMWE4IHJlbGVhc2UyMi1tYWludAorMjg3MjEgYzc3MjY0MGQ1MzVlMDQ0MThhNzRmZWQyMzkyNGJmNDFlMjQ4MTQ0NiByZWxlYXNlMjEtbWFpbnQKKzI4NzIyIDZjMjFlOTVhNDg4MTc3NTZkNmFkMGUxNzE5YTlkOWQwOWJlZWUwNjEgbGVnYWN5LXRydW5rCisyODcyMyA5Yjg5MjRiZDViNWNjZGRkMTRhNjZjZTEzNzBkY2I0YmI0MmQ1OTEyIGxlZ2FjeS10cnVuaworMjg3MjQgZjNkODhlZTA1OTI4ZDUwNjFjMGRmNDE0N2FmNDc2ZTYyMDI4ODA0NyBsZWdhY3ktdHJ1bmsKKzI4NzI1IDQ2OTJjNDg3ZWU5MTFlYWM1OGRjYWM1ZWI1MGI2MjM3OTM1NTJlZGQgbGVnYWN5LXRydW5rCisyODcyNiAxYmJmOGU1NWE4YmI5YjBlZTQ0NWM5NDljYTZhNzA4NTZlY2EwNTBmIGxlZ2FjeS10cnVuaworMjg3MjcgYWVjMGY5NDRmNmEwMTc2MWYzMDNhNDQwMzFkYjc0Y2U1NWNlZDU3YiBsZWdhY3ktdHJ1bmsKKzI4NzI4IDYwOWYzZDMxZDFjMjRhNzMwODhmNWMzNWY0N2VjMGY3ZmJjNGJlZjkgbGVnYWN5LXRydW5rCisyODcyOSBjZDcwYzg4MDNlYjVjMGQwYTRhYmFiNGQyYmZmY2FmYTViYWVhMTFkIGxlZ2FjeS10cnVuaworMjg3MzAgYzk3YTRjZTNjNThlZGFiZTY4NzE4NzhkNzA5ZWMwNjBhNWRmOTRmOSBsZWdhY3ktdHJ1bmsKKzI4NzMxIDRkNmY4MjA0MjM0YThkNjljZWQyYTM1YzMwZWJjOWNmNDEzZmVmYWQgbGVnYWN5LXRydW5rCisyODczMiBiNjRmYzZhMTA0OWU5YjcxNTdmOWZjNzFkMzk2NDBhNGI2OTJiMTIxIGxlZ2FjeS10cnVuaworMjg3MzMgYzQ1NTY0NzY4ZjUyNmVkZjlhNmJlMTkyOGNkZGRmOWI4OGMzZjIyMCBsZWdhY3ktdHJ1bmsKKzI4NzM0IDA1NWY3ZmFlODE1MDkxMzRmZTM5ZWMxYWM2YjQxYWYwZmI3NjI4YzYgbGVnYWN5LXRydW5rCisyODczNSA3NTJmNjg5NWNjNjMwYThmZjRkYjdhZmIwODM4N2NjOTU4ZDMxYTM4IGxlZ2FjeS10cnVuaworMjg3MzYgZjVlYzA4ZDQ1ODU5Mjg3NGM0OWRlYzI4MzFiNzVjNjM5MzFjOWE4NyBsZWdhY3ktdHJ1bmsKKzI4NzM3IGRhNGU1ZTQ2YWUzZmI5ZWQ2OTgxYmIwOGFiZTVkMWMzYTY2MWUzMWYgbGVnYWN5LXRydW5rCisyODczOCA2Nzc3ODExOTYxNTI2MDc3ZmE4ZGJlNzk5NDI1N2EyYzJmYzA3MDk2IGxlZ2FjeS10cnVuaworMjg3MzkgNjFjMjUwNmVjMmU4ZWE0ZDBjZjlkNTM1NTRhMjRjMmZjNGFhODNmNSBsZWdhY3ktdHJ1bmsKKzI4NzQwIGRiZjkyYzU1ZmJiOGI3ODkyMmM2NDFiNmUzZTVlMjEwZDU0OTgwNDggbGVnYWN5LXRydW5rCisyODc0MSA0MDE0OWI1MDAyMGNiYjY4NmVjNzc4NDU1OGY3M2ZmNTJmNjhjMGU4IGxlZ2FjeS10cnVuaworMjg3NDIgMWIwZWE0NzI3OWM2OGFkOGY0MGQ0MGZhMjM1MTM1YTVlMmIxYTE4NyBsZWdhY3ktdHJ1bmsKKzI4NzQzIDdiZTI2NTQ0YmU0ZTM1ZTRmZTViYzdlN2Q1NDFkYjYwM2U2ZjQ2N2EgbGVnYWN5LXRydW5rCisyODc0NCBjNjcwOTQ1Yzg2OTUyMjg4OWMyMDU4OThjMzYwYmYwMTZlYjhiNTdkIGxlZ2FjeS10cnVuaworMjg3NDUgMjJkMTk4OTEwYjIwOGE2MDY3NDI2NmNjMjEyNjc1YWIxMDA2NDQ0NyBsZWdhY3ktdHJ1bmsKKzI4NzQ2IDFjN2VlMjNkYzQ5ZTE2OThhZTc5NTA1Yzc2MGM1ZDM5MmM5YmUyYjYgbGVnYWN5LXRydW5rCisyODc0NyBlZmU2MzkxNTFiZmVjNWJlMjFhZjUyMTA2MjkxMDM5Mzk1MTAxY2MyIGxlZ2FjeS10cnVuaworMjg3NDggZWIyOGRjZGRkMzRkYmJjMjZlN2UyMGY5NjUxYmJhYTA0NTVjY2Y1MSBsZWdhY3ktdHJ1bmsKKzI4NzQ5IGRmMDNmY2M2NjEwNDM2MTgzODczNTM1MzAxNGMzMTE2YmIzMmRjN2MgbGVnYWN5LXRydW5rCisyODc1MCA3MTc3OWI4MzllMDk4NzRkOWJhNDkzOTc3NWEwMDMxNWFmNWViMmE3IGxlZ2FjeS10cnVuaworMjg3NTEgMDM5OWM4YWVhN2IyODYxZDE3ZDgyZjFiOTljZjc5YjM3OTY5MzE5MSBsZWdhY3ktdHJ1bmsKKzI4NzUyIGJkNjUxMGM1Y2FiYzQ3ZDk1ZjVmNmZmMDk0M2NjYjcxNTMwZjJiOTQgbGVnYWN5LXRydW5rCisyODc1MyA0NjhjM2JlNmMzZTJjZDEyNDg5YWViZDEyNjc3YTUzMzAwMDU5NzUyIGxlZ2FjeS10cnVuaworMjg3NTQgYWJiNzY4YjQxN2ExMzMwZDZmNDNlZGQ2ODQ2N2I4ZjVjYmQ5NTQzMCBsZWdhY3ktdHJ1bmsKKzI4NzU1IDg2ZmY5NWIxYzYzNmQ1ZTE1OWUwYjQ1OGY5ZmE2YzMwMGI2YWUxYjEgbGVnYWN5LXRydW5rCisyODc1NiBlYjdiN2I3MTllZTU2NDlkZTkzNjQ0ZTUyMmMzNWQ4N2QzNzFmMzgzIGxlZ2FjeS10cnVuaworMjg3NTcgYmQzYjkyZGM5NDBhNjQ5ZWM3ZWYwZDJkMWExNjZiNzY1ODRjZjNjYiBsZWdhY3ktdHJ1bmsKKzI4NzU4IDhlZGExNjZiMTA0ZWNhOTA0ZGEyZDg2MTEzOWE3OWU3NjAxOGFjN2UgbGVnYWN5LXRydW5rCisyODc1OSA5MmEzZDg5N2U4MTkzZWQyMzhkMzRmMTY2NzAwMjE4YjY0ZjUzNGUwIGxlZ2FjeS10cnVuaworMjg3NjAgNTNlMmM0NDhiMTY5YTMyNzUyNDAxYWE2ZDgxYjEzM2U0YWIzYzY4ZSBsZWdhY3ktdHJ1bmsKKzI4NzYxIGI5NjhmMDM4MjM1ZWExYTU1MTM0ZTgxNzdjY2NhMWU5NDNhNmJhN2EgbGVnYWN5LXRydW5rCisyODc2MiBkZjBmZjViMTdlMWFhMTVkZGI5ZDgwNzZhMDMwNWRkMzEyZDJiZGUzIGxlZ2FjeS10cnVuaworMjg3NjMgZTllNzRjYzU1NDBhZDhiYTBmMWIzZGUyOGFjMjg1OWY4YWJmMTgwMyBsZWdhY3ktdHJ1bmsKKzI4NzY0IGJkYzNkZWYzZDA4NWRkYWQxZmI4YTllM2I5ODJjYzVlODhlZTBkZjIgbGVnYWN5LXRydW5rCisyODc2NSA4MjNmMDJhMjIyMTBkOGE2YTRhZGE3NDI3MDQwZWVmNzNkZTEyY2NlIGxlZ2FjeS10cnVuaworMjg3NjYgMTRhZDU2MGY0YTk3ZjgxYjY5ZjVmZDZhOWQ2Njc1Y2JhMTliYmUwMSBsZWdhY3ktdHJ1bmsKKzI4NzY3IGYxNzU4MjcyNzY0YzcwYzUyOTMwNTAwMjBkMGJjMDkxYzRiOGQ5MzkgbGVnYWN5LXRydW5rCisyODc2OCA3ZGU4OGNmMDc4M2UyY2MzYzIyZDU2YzdkYThlYmFiMWRiMTFkZjZkIGxlZ2FjeS10cnVuaworMjg3NzAgOWM3YTA2YWM4YjI3NzJlOTQxY2Q0MmYwZjA1MDNiZDQzOWFhODA3ZCBsZWdhY3ktdHJ1bmsKKzI4NzcxIDI0ZTc4OWI2Y2NiNjQxNmQwNDNmNjRjOWFmMmUyNDk4MmM1NTU3ODMgbGVnYWN5LXRydW5rCisyODc3MiA2YjYyYWI4NDg1ZWI4MTk2NDdjYzQ3MTZiNWI1NDE5ZTc2ZmU2NGViIGxlZ2FjeS10cnVuaworMjg3NzMgMDczOTA0NmEwYzNhNTE0ODM0ZGZiMmFiOTI3YjUzNGI1OTIyNDNlMCBsZWdhY3ktdHJ1bmsKKzI4Nzc0IDMzN2ZjYzI0OTg1YjM0NGFiNmI4ODM4YzM3ZGU1ODhkYWU0MzZkMTkgbGVnYWN5LXRydW5rCisyODc3NSBhM2IyOTU5MThjNWZkNWE1M2NmMTBhYzYyNGQ2YjIwYWE3YmQyMTc5IGxlZ2FjeS10cnVuaworMjg3NzYgMzNiMjQ5YWY0MzY0ZGM4NGI4YWUyMWNmNTQ0NGU2ZTdmZTRhZGUzMCBsZWdhY3ktdHJ1bmsKKzI4Nzc3IDljOTU0ZTY0ZDE3YTk0YTBiMTQzMGVkYWE1NjhjYjBkOWJhNTdkYjYgbGVnYWN5LXRydW5rCisyODc3OCBhMzAyMzA4ODE5ZjA1ZGE4NzkxNzczNTlmY2RmZmZkZDdlODE3MTkzIGxlZ2FjeS10cnVuaworMjg3NzkgMmY0NGE5MGZmZjA3N2VlYWZiN2MyYzk2MjlhMmY0NjhmODAzNjkxYSBsZWdhY3ktdHJ1bmsKKzI4NzgwIDJhZTJhMjAzZjQ3YWMyYTZlYTU5ZjUyMGJhOTg3ODhkNDdjMTg5OGYgbGVnYWN5LXRydW5rCisyODc4MSA5ZjYxNzEwNjI4YzRmMjk1YmI1MTZkNTMzYzFkZWQ0OTBhMjRhOWFlIGxlZ2FjeS10cnVuaworMjg3ODIgMmMzYjUzOTdjM2Y5ZWMxMTY4OTZhYjhmMGJlMmVlZjQ3ZWQ3MDUxMiBsZWdhY3ktdHJ1bmsKKzI4NzgzIGJkMjRjMjU5OGE0MjlkNzZmMTUxMGI4NzkwZWNjYzA3N2ZiNzliZDggcmVsZWFzZTIyLW1haW50CisyODc4NCBiNTI5YWMyZjlhYjY0YjkwYmQwMTUzYWRiOTMyODRlOTFiN2U1ZjljIGxlZ2FjeS10cnVuaworMjg3ODUgNDlhM2ViZTlkZjE0NzY2NTUzYTExMWU3ZjQ1ZGEzMWEzZTk3NWFiZiByZWxlYXNlMjItbWFpbnQKKzI4Nzg2IDZlYTg5ODdjNzQ2ZmI1NWU3Njk0MGU5MWUwYzczNzUyZGUxNzYzZDUgcmVsZWFzZTIyLW1haW50CisyODc4NyAyN2ZmNjk0YzhjMDUwYjQ1ZjFhOTdjOTk0MDM3YmQ4NWNjZmE4MTc4IGxlZ2FjeS10cnVuaworMjg3ODggM2FlY2E2YzUwZjM4MDBjYWU4YjUyOWViZmY4YWNlZmU2YzMxODQwNyByZWxlYXNlMjItbWFpbnQKKzI4Nzg5IDgwMjU4M2Y4OGFlMGQ4MjU5MjlmZmQxYTVhMDFjYmZiM2YzOGNhMjkgbGVnYWN5LXRydW5rCisyODc5MCBjOGNiODk3OTA2MmNlN2Q2MTZiNDYxYTA1MWJkOTI1Y2NhYzk1M2ViIGxlZ2FjeS10cnVuaworMjg3OTEgMGViODgyMDY4YTdjZWUzNmJmMWM5MjliMjAzNjk2OTRmOWEwYTAzZiBsZWdhY3ktdHJ1bmsKKzI4NzkyIDg2NjIwYWZiMjIxMjRiZGIxNWQ4OGEwYTRiNjQxY2EwM2RiODJmOTUgbGVnYWN5LXRydW5rCisyODc5MyA2ZGVjNzRmNDQyNDIwOWRmM2E4OTU5YTkwZDgwMWZmMmRlOTUxNDRlIGxlZ2FjeS10cnVuaworMjg3OTQgMzdmYzZhODNhMTM0ZWE3MmQ5NWQ2MDRhNjQwZjQ4NDgxY2Q0MGMwOCByZWxlYXNlMjItbWFpbnQKKzI4Nzk1IDU4NmZhMjQ0NTk4MjQ3MzJiNDVjZGNhZDQ5ODQxYjQzYmU1ZjYxMWQgcmVsZWFzZTIyLW1haW50CisyODc5NiBjNDNjNDI4MzkwMTE4ZTE1NDM4Y2QyMGMxMjkzN2FjYTVjNGZmNzE3IHJlbGVhc2UyMi1tYWludAorMjg3OTcgZTdkYjFjOWExMGZjYjg3MTEyMjg2ZjhlYWE4NjAwMzFlMDE2OGI4ZCByZWxlYXNlMjItbWFpbnQKKzI4Nzk4IDAzM2FkY2JiNGNiMmE3NDRhOWIzNDI1NzRhYTVmYTVjZDY1ZTk1MzkgbGVnYWN5LXRydW5rCisyODc5OSAyYmE4MGE0MzEyZmY1MDIwN2I1MjNiNzc2NTU5ZmI3NTMzYmVlMzhlIHJlbGVhc2UyMi1tYWludAorMjg4MDAgODVhYjQ2NTBkZmFhNmE0MzEyZmM3YzU5Njg5YmZmYjIxYjgzNTVkOCByZWxlYXNlMjItbWFpbnQKKzI4ODAxIDk2ZTJlZmZlYzk0ZDFiZWE1OTBhNjM3MDQ0NzY5ZjdlNWQ5N2Y2MmEgcmVsZWFzZTIyLW1haW50CisyODgwMiA5ODhmNDI1ZDE3NjY1ZTdkY2NlNTAyMGZiOTQyMTU4MTdkNDM5OTgxIHJlbGVhc2UyMi1tYWludAorMjg4MDMgNDYxNzBlNTYwZTAxZTE4YzdkMmE4MzkzNGQwMTVmODc5MWQ2YTI0OSByZWxlYXNlMjItbWFpbnQKKzI4ODA0IDFmOWU5Nzk4MzAyYmZmYzBiMTcxYjhhYWI4NDAxMjg3N2FjYjFkY2EgcmVsZWFzZTIyLW1haW50CisyODgwNSAwZmJiNzZiNTA3NGI3ZTkxZmY0Y2NkYjJiNGQzNTBlYmZlMTUyYTlhIHJlbGVhc2UyMi1tYWludAorMjg4MDYgM2Y1MDQxMjk1NDQ4Yzg2YmU1YjliMDY3OGM4ODk4MzNmNTJlYjdhYiByZWxlYXNlMjItbWFpbnQKKzI4ODA3IDUyNTViNDVmZGRjMjU5YWI3OGIxZDgyZDlkZmZmOTIzZGFmMjczZmYgbGVnYWN5LXRydW5rCisyODgwOCBmM2MzZTczMmQxMmU2OTRiZTFjY2Y0NTAyYmUzYzM3NzdkZWNmYmUxIGxlZ2FjeS10cnVuaworMjg4MDkgNTI0MjBmZTY3Yzk2OTAwNDdkYTNjODA5NzkxMTgyNWVlMzQ1YWUzZiBsZWdhY3ktdHJ1bmsKKzI4ODEwIGM2MzEyMzYwYzg2MTcxZmRjYTllZDIyN2QwZWYwNzM2MTc3Zjg5NmMgcmVsZWFzZTIyLW1haW50CisyODgxMSAzN2Q4OGI0MmVkMTFhOGEwOTIzNzlkYzhjMzJmNmUyN2YxNmEyNjFmIHJlbGVhc2UyMi1tYWludAorMjg4MTIgNjUxMzQ2NmJiNzc0N2EwNzM0ZjlmZmM3YTI3NWNiMmI4NjY3ZWFhYiByZWxlYXNlMjItbWFpbnQKKzI4ODEzIDBiNjhkODEwYThiZWNmMmI4Nzc5OGM0MjAxNDQ2M2Q5M2NhZDczMmIgcmVsZWFzZTIyLW1haW50CisyODgxNCA5ZGQyMWMxZmFkOWE0MDA3MDMwMDkxMTRkMDk3OGQ5OGEyNjdkZjlkIHJlbGVhc2UyMi1tYWludAorMjg4MTUgNzg2ZTBlOWE1ZjdmOTI4MjdlMmQ1N2RjZTFlZWIwYzFhYTg1NzkwMCByZWxlYXNlMjItbWFpbnQKKzI4ODE2IDExNmIwODU4ZDRiMGJkYjAyNDRkZjRkYTMyYTExMzM4M2EyMWZkN2QgcmVsZWFzZTIyLW1haW50CisyODgxNyA2NTFhYmNmNjNmZTEzZDNlMjZmMDg4Mzg4NzBjYzE2MDgyMDg2MGEyIHJlbGVhc2UyMi1tYWludAorMjg4MTggMmJmZTQ0YzRkYWNiZjM3OGQ0Mjg1OTY2ZTAwMmZjNzhkZjJkOWEyMiByZWxlYXNlMjItbWFpbnQKKzI4ODE5IGNhYTNhMmZjNmEyMDg2NTlkYjE1ODIwMzgxNDE4NGE3ZWI2NTZhY2UgbGVnYWN5LXRydW5rCisyODgyMCBjMDY2ZGMzZWExNTIxNjk4ZTZjMGNiYmE0MzVkYWNjZTVkYTY5MzQ1IHJlbGVhc2UyMi1tYWludAorMjg4MjEgZTg0ZDMyNGFjNjZhNDg4NjVjNDhmYzIyZjg3OGI4OTc5ZTQxYmJiMSByZWxlYXNlMjItbWFpbnQKKzI4ODIyIDRkZjBlNjkxZjRkYWU4NmIwN2NlZWQyNTMzOGZmZjFmNThjYmRkMTMgbGVnYWN5LXRydW5rCisyODgyMyAyZGNiYmJiMDA3YzJhYjc3YzBkZWU5OWFkNTlmNmMwY2JhNDkxNGIxIHJlbGVhc2UyMi1tYWludAorMjg4MjQgNGQxMGMzMTc5ZWFkMGY1NjI4MTM2MDVlYzNiMzI4YTdmMzc2M2JkZiByZWxlYXNlMjItbWFpbnQKKzI4ODI1IGZiYzgyMGQ3MDFiY2E5OGNiYzQwNGZmZmFhNTA0OTNiODMzMTc1ZDggcmVsZWFzZTIyLW1haW50CisyODgyNiA1ZTRlOGMxYWI3MDQwMDEzMTJlMDc5MjFhMGEwZjQxMzdiMjYwMTM2IHJlbGVhc2UyMi1tYWludAorMjg4MjcgNGRmODA3YWRmZjg3M2Q1MGIxM2FhM2M5YmUzN2I0ODBiYTVjNjFjOSByZWxlYXNlMjItbWFpbnQKKzI4ODI4IDEwNzY3YThjMmUyZDY1Y2Q5ZTM1YjIxYjAyNDE5ZmEzMWUxNTUwOTQgcmVsZWFzZTIyLW1haW50CisyODgyOSAwYzQ0ZmEwNGY1MzM1ZWZkZDhlMzMwMmY4ZmQxZWEzYjQyYWQyNDMwIHJlbGVhc2UyMi1tYWludAorMjg4MzAgZTUzNzg3YjFhZDg1ODE4MDZjMjVlYTZhYzRhYjg5OGExMDA4Mjg4MCByZWxlYXNlMjItbWFpbnQKKzI4ODMxIDcyNWY4NzU5N2FkOWUyN2NjNDc4YjFlZTI1MWQ2OGEzNDBkN2Y4NWMgcmVsZWFzZTIyLW1haW50CisyODgzMiBlODg5MWU2OTUyZWI2MDE1Y2MwNjAwOGZkYzdiNzA3ZTdmYzY4NmI3IHJlbGVhc2UyMi1tYWludAorMjg4MzMgNDYyYzM1YjlhYzFmYTRhNDYyNWMwMWU3YTkzYzg2NmE0M2EwNDM2MiByZWxlYXNlMjItbWFpbnQKKzI4ODM0IDgwY2UzODRkNDA4YTZmOWU5NDZlMzliMjkxNWVhMTM3ZDVjYWNhNzkgcmVsZWFzZTIyLW1haW50CisyODgzNSA5MTExMDc4Mjk5MDNiOGFlMzBiNzIzMDdkNTkzODQxN2E1ZGE5NjI3IGxlZ2FjeS10cnVuaworMjg4MzYgZTVlMDU3YTZkMjgxZjMxNWZkMmE3MDk0NjFkMmUxYTZmMGZjYzAzZCByZWxlYXNlMjItbWFpbnQKKzI4ODM3IGRlMjFlOTNiYWRmNjM2NTgzM2M2Zjc5M2VhNGU2YmE4MDI2Y2YxZjkgcmVsZWFzZTIyLW1haW50CisyODgzOCA3OTI5ZDc1NjZhOTQyODkxOTc4MDE0OWE5YmY0OGE2NTY3MjliY2ZhIHJlbGVhc2UyMi1tYWludAorMjg4MzkgYmIyMDMzYzhiOTJmZGRjNDE5ZTNmMTliMjdkMDg2ZDdjNGNlYzY0ZSByZWxlYXNlMjItbWFpbnQKKzI4ODQwIGY1NTllOTdhNDFiZTRkMGI0NmQ5N2FmMWU3NThlY2Y0NjZjZDk0ZTIgbGVnYWN5LXRydW5rCisyODg0MSAzMGJmNTU0OTFlNzllZGQ5Njk4YWQzOGM5YTQzYjI1ZjE1ODI3MTZjIHJlbGVhc2UyMi1tYWludAorMjg4NDIgOWNhNjA5ZjhiZGYyMjYxN2M0Nzg2Y2RlNzMzMDYzYzBiYTdiNmIxOSBsZWdhY3ktdHJ1bmsKKzI4ODQzIDg4ZDBmNmQ2YjAzZWMxYmE1OWYwYjIwMzE0M2NhNGQ1MmUxZWUxZGEgcmVsZWFzZTIyLW1haW50CisyODg0NCBiNDZjN2RhMDY0MTBlNzFmOTdjNDk3NzNhMmRlN2YzMzc3MDdmNDU0IHJlbGVhc2UyMi1tYWludAorMjg4NDUgZGMzMTY2OGE3YzA5ZGNiYjE1NzI3OTNkZTNjY2FmMGU5MjdiM2RmYyBsZWdhY3ktdHJ1bmsKKzI4ODQ2IDk3NDI0Yjk5ZGY5MWM1OGYyMTUxNjM1MDE3MTIzMjUyMTIwYzE3MjkgbGVnYWN5LXRydW5rCisyODg0NyBkNGZmOTg0MTQxN2FlMDZmMjUyZjM5ZWUzMjZjZmYzOGNiMzk4NzVmIGxlZ2FjeS10cnVuaworMjg4NDggMDIyNmYxNjU2ZDgxNTFmNzhhZmQ5MzQ4YjhmZjY3MjI0YThmM2QxYyByZWxlYXNlMjItbWFpbnQKKzI4ODQ5IDcxMDM1NDgzM2JkMTk4MDk4ZjU2NmFlNDUwZmU0ZDg1MTk5ZjAwYjMgcmVsZWFzZTIyLW1haW50CisyODg1MCA1MWNkZjQ3MGY5NzQ0MDlmNWIwMTdiYmYxZTZhZDNiNDJjYzIwZjJlIHJlbGVhc2UyMi1tYWludAorMjg4NTEgNzVjNGE2N2RjYjhjMzYwMzIxYWJiNTFmYzZiNDI4NTBjOTlmNjI4OCBsZWdhY3ktdHJ1bmsKKzI4ODUyIDQxMGY2ZWFiYmMwYjg4NDRhMGExZjIwZmY0YzFjY2FhYThkODc5MDYgcmVsZWFzZTIyLW1haW50CisyODg1MyA2ZmMwYjcxNmMwMzg5YTA4ZDM3MWUyNDJmMDk0NDdjNGIxOTJkNjY2IHJlbGVhc2UyMi1tYWludAorMjg4NTQgNDA4MDFkZjg1OTEyMWE0ZTYwYTA5NzhmNjQxODI0NzQ2ZGM4OGJlZSByZWxlYXNlMjItbWFpbnQKKzI4ODU1IGI0OGEyMzZiOGM3Yjc3ZDgxMGJhODA1YjQ2NGIzNGJiNDkzYzIwY2YgbGVnYWN5LXRydW5rCisyODg1NiBkOTM1YTFkNzAyMzBiOTE4ZmU2MmU5ZjA4ODg4NTIyNTE5MWJkYjQxIGxlZ2FjeS10cnVuaworMjg4NTcgNGQ3ZTllNDBkM2U0YWM5ODI3MWZkMmY0ZmU2ZDIzMGMyNmRlMmI1YiByZWxlYXNlMjItbWFpbnQKKzI4ODU4IGQyZGJlYTE3ZmM2ZmU4YzBkMDY5ODNmOWQxOTU2NDA0YjExNjI4MDcgbGVnYWN5LXRydW5rCisyODg1OSA5NDMxNWE5N2IzOWU2NmVjYzVjMTUwMmU1MzQxOGQyZGVlZWM3NjFhIHJlbGVhc2UyMi1tYWludAorMjg4NjAgN2QwYzRkN2UwYThjNzE5MWQyYjg5OGU2NmRjNzBjZWE3MmYxNGM2NiByZWxlYXNlMjItbWFpbnQKKzI4ODYxIDQ1YTIxNGYxYmYwYjQ1NGFmZjkzYzg3NzA5YWEyMTA1Yzk5NmRjMzcgcmVsZWFzZTIyLW1haW50CisyODg2MiA4MzIwODRhMzAyODA5NmMzN2UwZWVmNzhmNWYyYTlhNTkxZmM4N2Y1IGxlZ2FjeS10cnVuaworMjg4NjMgMDQ4OTY4Y2EyNjY4ZDQyMzUyMjUwNTIwYjVkN2Q1NzdhN2JjYzJmYyByZWxlYXNlMjItbWFpbnQKKzI4ODY0IDI1M2UzOTdkZjY3YjFlMzc0M2Y5MWNlNjkzZjQwN2VhMzA0OGRlYjIgbGVnYWN5LXRydW5rCisyODg2NSAwYTA5NWEyNTc0MjQ1MDAzOTJkY2RjYWY3NGUzZjc2ZmZjODAwMjExIHJlbGVhc2UyMi1tYWludAorMjg4NjYgMTg0OWUyMzU1MmRmYmMxZTE2YTljMzhmZWVmOTRjMGRmZTQ2ZGE2YiBsZWdhY3ktdHJ1bmsKKzI4ODY3IDU2Y2I5MmRiYmFhZmMwNWJkZWVjMTAzNDM1M2RiMzZlNjE4OTRiZDAgbGVnYWN5LXRydW5rCisyODg2OCBhYTMwNDhlYmQxOWEwYTVhNmQ4NDkwOGYzYTE4NDQzMzZiYWM4ZjY3IHJlbGVhc2UyMi1tYWludAorMjg4NjkgZjc0OWQ1MGRjY2RjNWViZmU1MDQ5YTkyYTQxM2I1YzM3ZWZiZjBmMCByZWxlYXNlMjItbWFpbnQKKzI4ODcwIDkxYjRmN2FiZWJhOGQ1NTJjYjIyYjliMGZlMGFlYjRkZWU1YjVkYWEgcmVsZWFzZTIyLW1haW50CisyODg3MSBmYjBmN2NjNWE2OWY2YmY0YTU2ZmE4OTdjZDgzYTJiYTAzODBmYzAyIGxlZ2FjeS10cnVuaworMjg4NzIgNjIzN2JlMjdhNTk3MzViZjZlNzAyMTZlMGU5NGZiY2FjNzQ2N2IxNCBsZWdhY3ktdHJ1bmsKKzI4ODczIDU1NGY5NzUwNzNhMDM4MGVmNzE4OTVjNmJhOGI4ZDdkMzIwMmI1OWMgcmVsZWFzZTIyLW1haW50CisyODg3NCAyOWY2MTYwZWMwYmQ5M2M4MDlhNDM0ZWMyMjRiZDNmMTNjNDIwYmZjIGxlZ2FjeS10cnVuaworMjg4NzUgZmU2MjExYmY5MGJiOGY1NDk4ZDY5NmUyNzIwMWZkOWRiYjRkODU2MCByZWxlYXNlMjItbWFpbnQKKzI4ODc2IGM2ZjMwNzJkNTk1ZDU0ZjUxMzEyNzZhY2Q2ODZhOTM2MDllZWY1OGQgbGVnYWN5LXRydW5rCisyODg3NyBlYjI1MmIzNzRlY2ZjODVlNmI3NzJlZGViMjU4OTE4MmJiZjdmZmEwIHJlbGVhc2UyMi1tYWludAorMjg4NzggMWY5YjNjYjY2ZTA5OGUwM2M0ZGFhMjJmZWJmODdlNWU5YWQzYzdjYyBsZWdhY3ktdHJ1bmsKKzI4ODc5IDExMDg4YzUzNDY3YTE3NjhkNmFiOWI0NDZkMjI4ODNlYWE5Nzk1YzEgcmVsZWFzZTIyLW1haW50CisyODg4MCA3MmQ1NmI0NDYwY2I5ZGYzY2E1MTlkNzUxMzEwMGFjY2I0YmVlNGFmIGxlZ2FjeS10cnVuaworMjg4ODEgYjYyNTE0YzIxNzYyOWUyMDNlNDNhNmNlNmZiM2UyYmUzYmVkZjNlYiBsZWdhY3ktdHJ1bmsKKzI4ODgyIDNjM2I4OTQ2ZGM2M2M1ZGI2OTI4YTVjYzc2NzEwNWI3MGI5MjI0ODMgbGVnYWN5LXRydW5rCisyODg4MyAwYzc3OTQ5MmNkODA3Nzg4OWY5MzU3MWYyZGU5ZGM2YTdjZmQ2NDAwIHJlbGVhc2UyMi1tYWludAorMjg4ODQgODU0NTM0YzYwN2ExNmNkNGRmYTk0MDViNTM2MDMzMDE2OWFmN2RmMiBsZWdhY3ktdHJ1bmsKKzI4ODg1IGRmYjc0ZDYxMTgzZDczNzg5MDIwOWZjM2RhYzA1NmQ1OTE1ODRkM2UgcmVsZWFzZTIyLW1haW50CisyODg4NiBjZDgzN2VjYjFkNzA5NTNlNWE1YWE4NjhhZWNiMjk4ZGU5YTBmZjRmIHJlbGVhc2UyMi1tYWludAorMjg4ODcgYmRlMGQyNjI2YjIwNWRjYjM4NjUxYTQ4ZmUyOTkyZjk5NjhiZjZkMyByZWxlYXNlMjItbWFpbnQKKzI4ODg4IGQzMjU4OGM4ODYzMzI5NDY4Y2M0ZjZkOTk3NThjYmQ1ZTk5MDNjNDQgbGVnYWN5LXRydW5rCisyODg4OSA4OTgzMDRmNmRhMjNiNWM5NzE1YzVjMGZiY2E2N2EwMDUxNTFmODliIHJlbGVhc2UyMi1tYWludAorMjg4OTAgYjYxMTIzMjcxMjRiNDZhMjc0MWVlMDVlZjVkNDY2OTRmZTcxYjhiNCBsZWdhY3ktdHJ1bmsKKzI4ODkxIGFhMzFjNjhkYTg0ZGY2ZjI4ZDc3ZWRlZjhiMmU3ZDY3NGQ1NjdjNmQgcmVsZWFzZTIyLW1haW50CisyODg5MiBkYjVmMWRiN2IzNGUxOGM0YmE2YjU3ZjdlMzA1ZjY3MjdlZjI0Y2Q4IGxlZ2FjeS10cnVuaworMjg4OTMgOWJhMDExMTM4ODMxOGE0YzNiZjBiZWY2ODRmNjU1YWMwNDg1MDVhOCByZWxlYXNlMjItbWFpbnQKKzI4ODk0IGU4Y2RlYTQ0ZjdhYmNlYzZhMTU4MzY1OGQ0MjE1ODgyYjFjNzRlMmYgbGVnYWN5LXRydW5rCisyODg5NSA2YTJkZjQ0YjhiZmQ0OTZmYWUwNzUxZTliMGYwM2I5YzQ3MmNhZWMwIGxlZ2FjeS10cnVuaworMjg4OTYgN2NkNmY1NDkwNzU4YzYzYjYxNjgzMDc2OWY1ZDYxYzdiMzM5ZmIyMyBsZWdhY3ktdHJ1bmsKKzI4ODk3IGY4MTgwYTc0YjBmYTVjNmVjNzViNWQ2MzQwMmY4ZDc3NTg3ZmYyYmQgcmVsZWFzZTIyLW1haW50CisyODg5OCAwNWZmZTIwMWU5MDJkODBmODg3MDNhMDNhN2IzMjI3N2NiMzY4MjkzIHJlbGVhc2UyMi1tYWludAorMjg4OTkgMmViNGVlZDUzOGM2ZDNlZmQ1ZGEyYzVmNTAxZGZjMWIzZTgyZThkYyBsZWdhY3ktdHJ1bmsKKzI4OTAwIGQwYWFkNTE5ZTcxMzBkYTNkMDEyMmJjMjNkMmIyYjdjNDE5MjUxZDYgcmVsZWFzZTIyLW1haW50CisyODkwMSA0ZDM2Nzg3MmZjYzY2NWJmYzI0ZmU2YWMxOWU5NTNmZmY5OWRjYjZhIGxlZ2FjeS10cnVuaworMjg5MDIgNzZjY2Q1YmY5ZmYyNjI5ZmU0M2IxNTQ0NTJkNjNjZTA1ZWM2NTBkNiByZWxlYXNlMjItbWFpbnQKKzI4OTAzIDQxZWIyNGI3NDdjMDJjZGNmNWE5MDJiMGVjNjAyOGZlNTQ4NmQwZDQgbGVnYWN5LXRydW5rCisyODkwNCBkY2FmZDk5Yzg1YjY4YTg4MzA3MzkxMjk0NTEwYTgyOGFiNTVlOGFkIGxlZ2FjeS10cnVuaworMjg5MDUgYTc3MjU0Y2JkNGYwNmIxZTgyNWI5NWE1YWJiOTYwNmRjNTcyNWY0ZCByZWxlYXNlMjItbWFpbnQKKzI4OTA2IGQwN2Y4ZGIzZGI0MWU0Yjk0OTc4MmE2MGNiZDM3MzMzODE1MzVkNjYgbGVnYWN5LXRydW5rCisyODkwNyBiNWE5YWFjNGIxMGZmZjc4M2M5NDRlODhlODIzZTA0ZWM3ODcxODIzIGxlZ2FjeS10cnVuaworMjg5MDggMDk1NTFjNmRhMjk5ZjgxOGNiOWZkZmY3MWQyYjg2YmMxODRiZTJhNiBsZWdhY3ktdHJ1bmsKKzI4OTA5IDE2ZTY2MTk3MDkzMDcwYzg4NzZiNmVlNzk1OTYwZjUwODUwMjY3YTAgbGVnYWN5LXRydW5rCisyODkxMCAxZDkxZWRmZDc1ZjJiNDVkNmU0ZTg5YzNhZTdkZmFlNjRmMTI3MTU1IHJlbGVhc2UyMi1tYWludAorMjg5MTEgNGRhOGE0ZGUwN2MyMzNkMDdiM2RjMDdmMDA0NTYxOTRhMmQzNjFkNSBhc3QtYnJhbmNoCisyODkxMiAyODMwZjk2MTQyOTQwNWZjY2FlNzgxNTc1ZTcwOTA4MDE2NGM4NWRiIGFzdC1icmFuY2gKKzI4OTEzIGQ4ZjQ5ODBiOTY1Y2ViYTAxYTkyNDg5YTMyZDlhMjAyNWY5OGI4YmIgYXN0LWJyYW5jaAorMjg5MTQgZGZmNDhjNDE3OTgwMjE0ZGU1YjYxMjgzZGFiNmRmOTQyYzdkYTBlOSBsZWdhY3ktdHJ1bmsKKzI4OTE1IDk2OTYwZDY3MzllMDk3MmM5ZWYwZmU5YTljMjNjOTE1MTM4N2QxYzMgbGVnYWN5LXRydW5rCisyODkxNiAxZjJiMWU2ODQ4NTAzNmI4MzQzZDg4NjRjNzkxNWJkYjA4YWU0YjRjIGxlZ2FjeS10cnVuaworMjg5MTcgNzg0M2I1MzAwOWQwNjkyMjllYzhlNjM3YWRlNzhhNTM5NDhhODg0NCBsZWdhY3ktdHJ1bmsKKzI4OTE4IGI2ODZkZGIyNWM2OWI0YjY2MWVlMzBkZDQ3YmZkOTk2MmJkMjRhNmUgbGVnYWN5LXRydW5rCisyODkxOSA1NWYwOTBiMzhiODhkMzhmMzM4M2Y2ZGE3ZjlkZjlhNTkwZjM1ZDBjIGxlZ2FjeS10cnVuaworMjg5MjAgMGZiYmU3OWI0ZWRiNWIwYTRlYmQ1OTEzY2RmNDhjMjI0NWUyZWRmNCBsZWdhY3ktdHJ1bmsKKzI4OTIxIDE4ZTY3OWJlMjExOTM2ODlhN2Q2MzJmNjJjNDI0OTc5NmVmYTg5YjIgbGVnYWN5LXRydW5rCisyODkyMiA4YTZlZWIwYzc5MzQxNDRlNmU2YmVlNzQxN2Y2ODcxODA4ZmE3OWZjIGxlZ2FjeS10cnVuaworMjg5MjMgMmE3NjNlN2I3ZGViZDA3ZGNjNWJkYWM0NzU2NTEzYzQ3ZTMzNDhjZiBsZWdhY3ktdHJ1bmsKKzI4OTI0IDI1NjU0YjgxMTYxNmIwZjA1N2FlOTBlZjFjNjNiZjY3NzI1ZWQ5MDggbGVnYWN5LXRydW5rCisyODkyNSA1N2VjMTY0MzE4OGM5MDMxZmNhNjVjZWViOGFhNTNhODM3YjlkZjlmIGxlZ2FjeS10cnVuaworMjg5MjYgZTJmNjVhNDljYTM0M2UxOTE1ZTZmNjcyODc1ZjE0ZTM2MzFjMzIxMSBsZWdhY3ktdHJ1bmsKKzI4OTI3IDdkMjY5YmMxMjU4N2RkNTczNzMxZTEyNjVhNmM5OTA3MzZlY2Q3MWIgbGVnYWN5LXRydW5rCisyODkyOCA4Yzk1NDg2MzAxYjNmNzQ5YzZjYzU4Yzg5YTUwZmY2YzZhMmNhNTEyIGxlZ2FjeS10cnVuaworMjg5MjkgYmJmOGNmNWVlOWY5NDIyODRlYjY5M2RjMzkxMDY3ZTlkYjBmMTc2NiBsZWdhY3ktdHJ1bmsKKzI4OTMwIDlkNTBiYzgzMWJjYTA0YzZiNmI5MTZjZjRjM2MzNDg0YWQyNDFkZDIgbGVnYWN5LXRydW5rCisyODkzMSAyMTQ0NGJkY2IwOWMwNDg5MWQwNjg3ZWZlNjljMTk3MzdkNjc5MjRlIGxlZ2FjeS10cnVuaworMjg5MzIgODBmNjczODVmNTk5ZGMxNzMzYTE3OWQ5MTg1YjIwOTkxMWFjYjJjYiByZWxlYXNlMjItbWFpbnQKKzI4OTMzIGZjNTM0ZDFjOWMyODM5NjdhMWE5MTg3NWMyZGM1YzA1NzFkOWFkMTEgcmVsZWFzZTIyLW1haW50CisyODkzNCBjYWMxYjAzNGI5MDM3NmJhOWRiY2YzOGVlYTA2ODFkMzIzNjBhNGYxIHJlbGVhc2UyMi1tYWludAorMjg5MzUgZTQ3NTJmMzE2MDUzZmEzNjhiZmEwYzk4ZTAzNjBlZjBjOTI4YzNhYSByZWxlYXNlMjItbWFpbnQKKzI4OTM2IGNlN2JiZjNkOTQ5MzUyMTMyODYyMDE0MDM2MWIxZTg1ZDNiNjg0OTEgbGVnYWN5LXRydW5rCisyODkzNyA4NzdhMzkxNGRmMjI0Mzg0YzY5NDA3ZDBjYWNiNzA3M2I1NmIxYWE4IHJlbGVhc2UyMi1tYWludAorMjg5MzggNzY2YmZjOTNlY2JhNjZiNmQ2NmQyNjQzODA4M2Y5Njc2NGNhM2I3YiByZWxlYXNlMjItbWFpbnQKKzI4OTM5IDc1YjA4ZTZlOTdjNjBkNmViMWVkZTc5ZmUxMzI3YTI5OTQ5YmYwZDYgcmVsZWFzZTIyLW1haW50CisyODk0MCAyMGQ3YTU0NTU5MDc4M2I0Nzc2MzdkOWI1YmE3MzIwMjRlOGQ0OGM4IGxlZ2FjeS10cnVuaworMjg5NDEgNmQ1ODcxNTQzMGE3YmI4MDQ0ZDVmYmNhZDZlMzlkYTI1MzRmNTNiYyBsZWdhY3ktdHJ1bmsKKzI4OTQyIDJhYzdiMDk2NGM3YmE5NzY3MzM5YWMxYTIwYWJlZTIxNGU3N2IzM2QgbGVnYWN5LXRydW5rCisyODk0MyA0ZTA1YWFiNjBiZGZhYTVmYzdjNGExOTEzM2YzZWI0NTZmYzkyYTQxIGxlZ2FjeS10cnVuaworMjg5NDQgYzNlZWFhZmU2MjY1ZTNiNDViNDhjODAzOTdmNzhiOTEwZmYzNTEwNiBsZWdhY3ktdHJ1bmsKKzI4OTQ1IDVmNWZkMmM0ZmNmMjI3ZThhMzcwYWMxMGIxMGFhZTg3MzFkODI5ZjkgcmVsZWFzZTIyLW1haW50CisyODk0NiBkMGU1NzQzMjZkMThiM2IzOGJhYzJmMjM0YWEyNDQ4YmYzOTdjOGJlIHJlbGVhc2UyMi1tYWludAorMjg5NDcgYjUyNmUxMmI5NDFiN2ZkYjZlYTExZTNlYTBkZjA0ZTJiMDAyMTBmNyBsZWdhY3ktdHJ1bmsKKzI4OTQ4IGM1NzM4NDhjNzVjMzMyYWJhOWI3YzIwMTM5ZjJmNmZlOWUxZDAzY2YgbGVnYWN5LXRydW5rCisyODk0OSAwYWE2NGVlYmQ0OTMyY2Y5YzY1MzE2ZDFhYTcxZGIyMzk0ZTI4ODM1IGxlZ2FjeS10cnVuaworMjg5NTAgZGVhNjE5YjU4ODJkMGM5NjQ1ZWNmN2ZmYjM1MzQ3MDRmYWY3MDg4MSBhc3QtYnJhbmNoCisyODk1MSAxOTU4MzNhM2YxMGRhZjBkMmI3MjNkMWE5NzIwZjg2ODM4NTMyODIyIGFzdC1icmFuY2gKKzI4OTUyIGM0NjI4ZDlhY2M5YTE1NzBkNTA0ZGFkOGU5MTA0NjJiNWNjZDNiY2MgbGVnYWN5LXRydW5rCisyODk1MyBkYjlmZWUzNzNiMzAzYjAwZGI4ZWM5OWFhYmY0Njg0YzBiMWQyYTBhIGxlZ2FjeS10cnVuaworMjg5NTQgNzQyOWYyMjQ3M2NjN2MwNGM0M2Q5NjM4NjNmYzg3ZmJhZWU5MzNkOSBhc3QtYnJhbmNoCisyODk1NSA1NmRkODZiNGNiODc3N2UxN2YzNTViMzkyYWM4YTI0NGRkYmUyYmNjIGxlZ2FjeS10cnVuaworMjg5NTYgMmM5OGViMWMzMTYyZDhmZGRkNTcxYTg0OWNhMTUwZDQyOWYyYTUxYSBhc3QtYnJhbmNoCisyODk1NyAyN2Y4MzU1MTlhNWU3ZGViZTg3ZTM3OTYxOWY1YWU3NWVhYTI5ZDc1IGxlZ2FjeS10cnVuaworMjg5NTggOTE2NzQ5MGIwZGU5NGJjMjMwYzVkYWRmOWQ2ZTVlODc2YjBlODk4ZCBsZWdhY3ktdHJ1bmsKKzI4OTU5IDJiYzJlMDJmZDZkZDEyZGI0NWVlMjQ0YmYyNmQwZDk1ODcyYmY1YzkgYXN0LWJyYW5jaAorMjg5NjAgNDU1NzdlMTg1NmQwZTkzODY0OWNmZDQyNGFhZmE2ZGE0YjZiMDM0NCBhc3QtYnJhbmNoCisyODk2MSA3ZmQyZGEyMDE4MjNkMWNlN2RkYzU2MDkzZDAzMGIzYmZlYjhlMWI0IGFzdC1icmFuY2gKKzI4OTYyIDI0YzVhMWM4N2YzYmYxMjI5ZTUwNmY4NzU5M2Q0YzFiMTM4NTU5NTcgbGVnYWN5LXRydW5rCisyODk2MyA2Njk0ZjBjY2Y4ZWE0YmU3NTY3NGYxNTcyMGJjMzQ2MmU2MDA0ZjZhIGxlZ2FjeS10cnVuaworMjg5NjQgYmMwOTc4NDU5ZmZiNzgwY2YzODM2ZDQ3ZDc0NGE1ZjVmNjM3M2Y4YSBsZWdhY3ktdHJ1bmsKKzI4OTY1IGIzYTk4ZWVhMzRjODQxYzIzZjhjNzM2NGVhY2JmMGIwNGFjZDUyMjMgbGVnYWN5LXRydW5rCisyODk2NiAyZDgwYmY2NWNkMDk3OWQ5MDJhNDM3Y2E0MmE4N2EzZmJiNTRkY2ZlIGxlZ2FjeS10cnVuaworMjg5NjcgZTFhNzMyODg1YmUwOTYxNThlNmY0ZjUwZmQ4OTBlMjRkNWE5YmM4NiBsZWdhY3ktdHJ1bmsKKzI4OTY4IGQxYjZiMmNhOWQ5Yjg1MWQyMzY0OTIyY2MwMGMzOGJkNDhjNmJlNGQgbGVnYWN5LXRydW5rCisyODk2OSBkMTI0ZmIwODc3Nzg1NWRmZjJhNzU3OGQyOTFjODg2NmJkNzY3NGU5IGxlZ2FjeS10cnVuaworMjg5NzAgYmQwNGUyYmQ0MzdmYzVkMzlkZDJlNjI3NDBhMzhlOTcxZWJiZDgxMCBsZWdhY3ktdHJ1bmsKKzI4OTcxIDU5ZjgyZDk2NjgyZTlhODA4NWRjNGRkN2UxMGRmODMxNTZmMWJmNWMgbGVnYWN5LXRydW5rCisyODk3MiAzNzdkNjRjYjUzNDcwYjA2NjI5YmVkZGExMzgwOTQzNTdiMzE0YjMxIGxlZ2FjeS10cnVuaworMjg5NzMgZDcyMmJiNTIwNWFkNzAyOWRkYjE2ZjUwNTJjMGM4MTVmYTFiY2NiNyBsZWdhY3ktdHJ1bmsKKzI4OTc0IDQwNTk0ZWYzNGIzMDljNGVkZTMxMTRjODcwZGJlNDJhMTA5OTg3OGUgbGVnYWN5LXRydW5rCisyODk3NSBhZTJmMjM0ODgyYjIxNjg2M2UyNDc5MTE1MjA0ODRlZGZhY2IwMWI1IGxlZ2FjeS10cnVuaworMjg5NzYgYTM2NDdkMTFjYjcxMzQ3OTA5YTk1ZWQxMGVlMjRlY2E0NjA4NGU0OCBsZWdhY3ktdHJ1bmsKKzI4OTc3IDU4YmZhN2RkYzk5OWFjOTY0MmVmOGZhNjY4MmIyNjgxNmRkNDM4YTAgbGVnYWN5LXRydW5rCisyODk3OCBiNWQwNWYxMGQwYTViYzJjMzQ4OTEzZjJmZWFiYzEyZDBlNTU1ZTBiIGxlZ2FjeS10cnVuaworMjg5NzkgMWVhNmUzNTQ3NjEwMzgwZjg4MDYwZTFjOTAzMGViOGNiM2Y2MWM5YSBsZWdhY3ktdHJ1bmsKKzI4OTgwIDMwZWU5OWE4YjBhZTM1YTliOGNiMWY3MzIyZTBiZWJiYWRmNjFjM2YgbGVnYWN5LXRydW5rCisyODk4MSBjMTJhNGY3YTAwYjc0YWYxOWY1MTBiNTZlN2FjNTRhNjcwZWQ2NGI0IGxlZ2FjeS10cnVuaworMjg5ODIgMmUxNDA3MDBmYjZjMGM1M2JhZjQwMTFjZWI2Yzk1MWFjMzY1MjU1NSBsZWdhY3ktdHJ1bmsKKzI4OTgzIGQ3YmJhN2ViMGVhZDBjNzEzZjEyNzRkNWQ4ZTVlZGFlMDE4MzVmNjIgbGVnYWN5LXRydW5rCisyODk4NSA1NDIwOTY5ZGRkNzBiYTg1YmIyYWE0NTFlOGU3MzE4ZTI4Mzg4NTVlIGxlZ2FjeS10cnVuaworMjg5ODYgNjM2YzBmOGIzOTg3OTM2ODk0NGIyN2FkNDQzOTg5MjhkMjAyOWExMSBsZWdhY3ktdHJ1bmsKKzI4OTg3IDE5NWQyZjI1NzZlNDJjYTQ4NmRhM2VjNmZjMTRmMTU3OGFkYmQ0YzIgbGVnYWN5LXRydW5rCisyODk4OCAxMTU3MzZkZGVkN2QwOGNlNDhhNmFmNWU1NjlhNWM3ZjlhMTNjYjgxIGFzdC1icmFuY2gKKzI4OTg5IGI5MjMzZWNkOWQ0MTk0NzMyM2Y3MDFiYzEwZmQxNzcyZTllYjdiNWYgYXN0LWJyYW5jaAorMjg5OTAgNzBkOTNiNjIzNzBiN2JiYTk0OTUyYWQxMWI1NmZkYTQ4ZDEzZDhhNiBsZWdhY3ktdHJ1bmsKKzI4OTkxIGI5NmI4MjY0ZDZhZDJmZmQ5ZTIxODNlOGFkNDUwNzk5MzE5NjY2MjAgYXN0LWJyYW5jaAorMjg5OTIgOWU4MTVmMmMwZTg0ZjAzNzQ5ZjkyMTQ2Mzg4MmUzYmM2YjlhMThkYiBhc3QtYnJhbmNoCisyODk5MyAxMDk0YzZlMDM2NWU1YjA1NzBjYTg1MmMyMjkyZTVjYTcyZmRlZjI4IGFzdC1icmFuY2gKKzI4OTk0IGZlOTVjZmM2ZWJhN2RjMzRkNTU5NWM4NzAzYzY0ODE1YzZmYjI1MDEgYXN0LWJyYW5jaAorMjg5OTUgOGU0Y2FiYjJlMDAzZDI5YjlhOWRjNjRhOGUzMmUyZDZhOTg3MTk0NiByZWxlYXNlMjItbWFpbnQKKzI4OTk2IGNhMDFmNGI4NTg1M2U0NGIzNmY0MjRjMTNhNDM2OTQ1ZGM2ODg5NGQgbGVnYWN5LXRydW5rCisyODk5NyA3NWU1YTJhNzE3Mjk1YWMyMDlkNDUyNmI3ZTkwNzM3OTBkZDIxYTI5IHJlbGVhc2UyMi1tYWludAorMjg5OTggMDgxNDhlOTE2ZDM4NTFmMjhiN2U3OTlmN2VmZWE1ZjI3N2IyZTVjZCBsZWdhY3ktdHJ1bmsKKzI4OTk5IDg2MTA2NTI1NjQ4NzBhODMwYjk3Y2I0ZGM4MGU0MGRlYWViODZjOTYgbGVnYWN5LXRydW5rCisyOTAwMCA5M2VmNzQ1NTU1ZDdjMGI1MjI0NWMzMmEwZjQ3MTY3MmI4YzQ0MWE3IGxlZ2FjeS10cnVuaworMjkwMDEgNjFkNjI0ZjVjMTA3YTdlODc3MzVjMDc5NjM2YjBlODAzZThlYWRlNyBsZWdhY3ktdHJ1bmsKKzI5MDAyIDJjMGUwZjBkY2E2ZjUxMmY0NWRmMjJiYjYyMjhhOWE3Y2UyNTE1YWIgbGVnYWN5LXRydW5rCisyOTAwMyA1ZmUwN2NkNGIyYmZkNzExNDUyMTQ4NjcyMjc0YzQ3NTA0MjUxZGViIGxlZ2FjeS10cnVuaworMjkwMDQgMmRjMGRhNTM3MmI0NzAyYmU1NWYyNTQwODg3ZGQyOGIwZDFlMWRjYiByZWxlYXNlMjItbWFpbnQKKzI5MDA1IDQ3YWE5ZmM3NGRhOGNmNTMwZmEwYzRkYWYzYThlODUyNmEyNTViNjEgcmVsZWFzZTIyLW1haW50CisyOTAwNiA5OGU1OGQzYzVmY2ZhNDg5ZmRjYjQwNzY4OGQzN2M4MzZlMmZmNmI4IGxlZ2FjeS10cnVuaworMjkwMDcgZGZlZWMzYjM0ZmFlYzI0NTVkNDA1OWNlZmM0ZDNlNDE3ZDZlMjI2NCBsZWdhY3ktdHJ1bmsKKzI5MDA4IDJmYTU1OWZiNmVjNTIyOTliODcxNzFlOWI4ZjFlMTRkY2Q4M2I4MjggbGVnYWN5LXRydW5rCisyOTAwOSAzNzMxYmUyOGUxYTMyNjRjODk0ZDJiNWFkY2FiY2VmZjhhMjdlYTNlIGxlZ2FjeS10cnVuaworMjkwMTAgYzdiOWRhODU5YjU1ZjgzNjUxOGNiNGE0MTA3YjMxZWUzN2JmNDgzNyBsZWdhY3ktdHJ1bmsKKzI5MDExIDYxODIyZDJiNWU4ODZhNzVlNDc1NjY1NGUwOTdlNDI4NTQxZTJiZDEgcmVsZWFzZTIyLW1haW50CisyOTAxMiAwZWQ4Mjk0NzU3MTc0OGQwMDZjN2E5ZGFmZjBiZjI3NjA0NDMwZjYxIGxlZ2FjeS10cnVuaworMjkwMTMgMGU5Mjg4MDc1MzZjMTZhMjEzMzhkMDQ4NzczM2E0MWU2MzdlMmUxYiBsZWdhY3ktdHJ1bmsKKzI5MDE0IDFkYTVlMTdiZmU2M2EyMDgxMzRkZGQzODA1NWU1N2VkNTU2NjYwNjEgbGVnYWN5LXRydW5rCisyOTAxNSA0MWUxZDhjMjI0ZGYyZTNhYWU3ODE1ODI4ZTE5MjdmOTA5OTk4ZTcxIGxlZ2FjeS10cnVuaworMjkwMTYgNTU1MjM0ZDRmMGQwMDkxNGM2OGNmYTU4NTdlODBmZGFhZjg2NDdjMCBsZWdhY3ktdHJ1bmsKKzI5MDE3IGY2MWQxZDJiOWNlM2IyMmRhNGE2MmIyZGE0ZTk1YjkzZTZmN2Q4MjkgcmVsZWFzZTIyLW1haW50CisyOTAxOCAzNjEyNDE1N2IzMTdhZGJhYjgzNWZiNjM5ODE4OGQ2YTg4ZWVlMGE0IGxlZ2FjeS10cnVuaworMjkwMTkgNDg4Mjk1ZDFiYTExZWIyMTY3NDQ0Y2VhYWU1NDkxMmMxZWI2NjdjOSByZWxlYXNlMjItbWFpbnQKKzI5MDIwIDhjYjA3NDBkYTFmZDU5OTJlYmVhMDc1N2I1ZjhjY2M0ZDVjODc0YTggbGVnYWN5LXRydW5rCisyOTAyMSBmYzcwMjkwODEwOTMwNjhmNDczZmIyYWVmNjQwNjYwMWI2MDFmNGFiIGxlZ2FjeS10cnVuaworMjkwMjIgMTRjNGM4MzNjZGE5Y2E0ZTRlZGQ3MWYxYjdiYjY3NzlmOWE5OWMxZSByZWxlYXNlMjItbWFpbnQKKzI5MDIzIDEzZmI0ZDE2ZjYwNDJiYWUwMjMwZTAxNzk2NzgyM2Y3ZDNjMTA2ZDUgcmVsZWFzZTIyLW1haW50CisyOTAyNCBmYjBjZTc3YTMxOGFiZDM4NDBlNTQwODZhMmNjZjhjMjkzNzU3ODhlIHJlbGVhc2UyMi1tYWludAorMjkwMjUgMDcwNWNhMjlhYjk2NmZkMTMyYzcwMjA2OTA4ODEzMDNlNzcxNzFhYSByZWxlYXNlMjItbWFpbnQKKzI5MDI2IDQ0NDQ3ZjMxNWFlOTExNWQ5ZDRkMWRjYTM1NjU4MzBjMzU5YzcwOGYgcmVsZWFzZTIyLW1haW50CisyOTAyNyA3NzliYjZkZGRlNGI4YjI0MjQ2MGY3NTY5ZWNmNjI0Nzg3MzVkMTJlIGxlZ2FjeS10cnVuaworMjkwMjggNmRjZDA2NjRiMDllMmNkOTI0NTZjMjRkZDUyZWIxNDFjYzkwNzZmZiByZWxlYXNlMjItbWFpbnQKKzI5MDI5IGQwNzI4YjRiMDdjMzNiMTdkNmY0MGVjMjc1ZTE1ODY1MGI1YjA5MGQgcmVsZWFzZTIyLW1haW50CisyOTAzMCBiMTk5MDJhZDE4NWZiZDhiMzhkYjI0NDVlMzIxZjg0MWE2NGRkODc1IGxlZ2FjeS10cnVuaworMjkwMzEgYjExYmMyMTRlNGYyZjc2ZDk5ZmI5MGIxNDc1MzMxZThkZmI3NDcxMiBsZWdhY3ktdHJ1bmsKKzI5MDMyIGM0MmM5ODhiMmI5OWNhOTBhMmZhYzQwODRlNjg3ZGY3ODk1OGZmOTkgcmVsZWFzZTIyLW1haW50CisyOTAzMyBhYWU4Yjk0Mzg1ZDZiNThhOWJhNTJkYmYyMGI0MjgzZWUwOTQyZTcxIGxlZ2FjeS10cnVuaworMjkwMzQgZGUzNzBlNjUwM2RmNjhhMjNlYTgzYzI3YWIxMDFkMDFjZmE3ZGFjNiBsZWdhY3ktdHJ1bmsKKzI5MDM1IGM4NWQ3Y2RkOTgzZjMyODU2YjJhOTAxZjQ3NDZhMzNmNGIwOTkxZTcgbGVnYWN5LXRydW5rCisyOTAzNiA0MzY3MWUwMTE2ZDUyZjA1MzgxMmNmMDFlNmM2NmE1ZmM0NTI4ZGQ5IGxlZ2FjeS10cnVuaworMjkwMzcgMDIzMWNjNTRmODdlYWM0ODQ0YWE2N2ZiOGRmN2U2ZDI0MDg5MjY3ZiBsZWdhY3ktdHJ1bmsKKzI5MDM4IDgyNDE2MmViNzk3NzM3MGZmMDM4NTgwZGIxYjVhOWM1NGEyNTJmODIgcmVsZWFzZTIyLW1haW50CisyOTAzOSBjNWE4MWMzYmRhZGFiYzU3ODYxZWQwZDc3YmQ0YzZlZTAxOThkZmQ0IHJlbGVhc2UyMi1tYWludAorMjkwNDAgNDA1YTViNGY0NTNiZWM0NzA1ZTIxYmM5NjUyMjFjMjFiMTE4MmVjNSByZWxlYXNlMjItbWFpbnQKKzI5MDQxIDZjY2E2MTRiNWUwMzNhNzk2ZmVjY2M4M2RmZjMyNWFiMjM4OWQ0NmMgcmVsZWFzZTIyLW1haW50CisyOTA0MiAxMDBkYWEzNjE5OGRkODU4ZTM4OGJmNTQzMjNlNDIxM2IyODU0ODRjIHJlbGVhc2UyMi1tYWludAorMjkwNDMgODNmNjRjMDRmMDAyNjkwZjI3YzJjMjRkMmIwMmJmM2JhODc1N2RjOSByZWxlYXNlMjItbWFpbnQKKzI5MDQ0IDM2NzljNGZjNjhiYzA0ODY2ZTlhNjFlY2M0ZmNhMzk3ZGM1MTFiMzEgbGVnYWN5LXRydW5rCisyOTA0NSAyNzZiNmM0NTI5OTk0Y2UzNWFiNjZkYjVjYTcyMjNjMGJiODYyZjBhIHJlbGVhc2UyMi1tYWludAorMjkwNDYgZDQ5ZjE2NGU2YTk3NGQ3NGYwZWZkMTY0MzUxNTQyZmM4MzkzOTU0ZiByZWxlYXNlMjItbWFpbnQKKzI5MDQ3IGMxYTZmNDRlMjUzNGQ4M2I4ZmM0ZDhmNjlkOTFiNTEwOWEwZjIxYzMgcmVsZWFzZTIyLW1haW50CisyOTA0OCBhNTI2OTViNzFlN2RhYjVjYmZjNzUzNzM1MzYyYWE4MTBkNWYxNTRiIHJlbGVhc2UyMi1tYWludAorMjkwNDkgZGFlMjI4MmJjNzZiNDI3MjdkMWNkOGZiMzBiOWNkNjVhYTY1ZGNiYiByZWxlYXNlMjItbWFpbnQKKzI5MDUwIGIyODdiZGFjZGUzOWZhZjM2YzAyNGNiODNmZTU3NjM2NjI3MzU1ZmUgcmVsZWFzZTIyLW1haW50CisyOTA1MSA2MDAzOTkxNzMxYTk5MDZjOGNjYzkyODRlMzU2YjU4YTg1ODAyNGM5IHJlbGVhc2UyMi1tYWludAorMjkwNTIgMjM0N2Y5MDE4NDMxNTNkOTM0ZWJmZTQzYjM4OGZiOTgzYmU0NWZmZiByZWxlYXNlMjItbWFpbnQKKzI5MDUzIDQ0OTJkNzczMjdjNWVlMDlmNzNjMDdhY2YzYTYzNWY0NDkwZmJkMDQgbGVnYWN5LXRydW5rCisyOTA1NCAyOTExZWIzNzcyNjZkOTc1YTk4ODkwMTRhMzI1NzUwMTkwNTNlYmU5IHJlbGVhc2UyMi1tYWludAorMjkwNTUgYjMyNTY0ODdhZWU4ODg2MzY0ZGZhZjJmOWU3OWNmOGY5YjBlYjM5OCByZWxlYXNlMjItbWFpbnQKKzI5MDU2IDc3NDc3MWM1MGIxODdjZjYzMTBmZjZjYTU2NTE1ODNhNjllNGJlYmMgbGVnYWN5LXRydW5rCisyOTA1NyAyYTk0MmExYzQyZTg0OWZkYzU0YjdmOWFmZmY3MWNiOGIxM2NlYzMzIHJlbGVhc2UyMi1tYWludAorMjkwNTggZmVkN2M0MWNhYWFlZjU1MzIxZWMyYTY2YTI0MmZhYTRjNDNlZjU4YiByZWxlYXNlMjItbWFpbnQKKzI5MDU5IGM2MmZiNjNkY2ZkMWI1M2QxNzkyZDcwOTE0YmQwMmQ3MzZmMTQ4MzEgcmVsZWFzZTIyLW1haW50CisyOTA2MCA2YjFkNDY0M2EwZmQ1MGU4MDg0OTZlY2M1ZDljMzczZmZiNmM1MDA3IHJlbGVhc2UyMi1tYWludAorMjkwNjEgZTg0ZTA4MzcyZWZhMWVjNTA1M2FhMWFhODBlNjMyNjAzNDRiOTYyMyByZWxlYXNlMjItbWFpbnQKKzI5MDYyIDUyM2ZkODkwMzU5ODc4YWRlYmQ1ZmE3ZTQyNDQxMWQ0OTI3YWNmNGEgcmVsZWFzZTIyLW1haW50CisyOTA2MyAxZTM1OWRjYjRmYjNiNzIyNDRmODdjZTUwNTk5MmIyY2MyN2FiZjU4IHJlbGVhc2UyMi1tYWludAorMjkwNjQgMzkzOGU5YTA5Njg5NGM2Yzg2NmFlNDRjOGQ1MjZhMTlmNmQxZWQ3NyByZWxlYXNlMjItbWFpbnQKKzI5MDY1IDg2ZjY2MDYxMDAzYzA2Y2I5NzQzN2UwNGZlMzEzZjdhZGYwY2Y5MWUgcmVsZWFzZTIyLW1haW50CisyOTA2NiBhZDM3YjkzZTdhMmU2ZjEzNDEyNGRlMDFkMDM3MGQ4OGZkNGE3NzAxIHJlbGVhc2UyMi1tYWludAorMjkwNjcgYTY3YjlhMTk1MjY1YjVlYjBlNDFkZDQ1NDZmNGQ1MWUyM2E0OTgwNCByZWxlYXNlMjItbWFpbnQKKzI5MDY4IGE2ZWRjMWIzZmQ1NjYxNmM0NmIzM2YwNTRhMzFmMDQwODMwMDRiZjggcmVsZWFzZTIyLW1haW50CisyOTA2OSBjMWY3YWY0MmE3ZjE3Njc5MzRjN2E2OWE5OTY3NTMxMzAzMmJjOWMxIHJlbGVhc2UyMi1tYWludAorMjkwNzAgMWI4Njk3ZDYwNTY4YzQ3Yjc0YjQ0MDc5NTgwMzRmY2VlYjRkMmZiNSByZWxlYXNlMjItbWFpbnQKKzI5MDcxIDFkYWVhYmIzNjI0NDMwZWUyMmM3MjQxZjg4NzA4YmNiNDU1YWIxNjIgbGVnYWN5LXRydW5rCisyOTA3MiA5NzdmYTEzNTkwNmQxYTE0Yjg0NWI4ZWZiOGY0MDQ3MDgzOTQ1YTA3IHJlbGVhc2UyMi1tYWludAorMjkwNzMgMjg4YzFmZmQ2MDZlYWJiZjViNGQ1YzkwZjNjOTUzMDI0NWY5M2NiNyByZWxlYXNlMjItbWFpbnQKKzI5MDc0IGYzN2EzNGMyNTZjNGIwNDNlMzFhMmNhZTUzMTI5ZWE2MGZiMDQ4MTEgcmVsZWFzZTIyLW1haW50CisyOTA3NSBmOTkwNmU2MjYxYzVmMGQ0NzE4ZGQxZjdjZDYxYjRkMDExOGQxMzg0IGxlZ2FjeS10cnVuaworMjkwNzYgM2VlZTcyOTMxZDE3ODNlNTBlYTk5MGUzMzhmMWIxM2Q5M2ZhNjI4MiBsZWdhY3ktdHJ1bmsKKzI5MDc3IGYzZTcwY2MyNjQyMmQwZDEzOTUxMDk4MGIzNWU1ODAwMTVmMzVjYmQgcmVsZWFzZTIyLW1haW50CisyOTA3OCBjNGMwOTNlMjNjNmRkMWM4MDU4Nzk1MGZlNzlmNjYyMTIwZmUwOGQwIHJlbGVhc2UyMi1tYWludAorMjkwNzkgMzhhMWU1NmI5YmYzNTI0OTVhYTM0ZTE2YzlhMDk4MDBlMGQ2ZWRjNCBsZWdhY3ktdHJ1bmsKKzI5MDgwIDYzNzlhNTUxNDA2NWM5NTZjMTI1ZGE1NzMwN2I2YTJmOTA3Y2FhOTEgcmVsZWFzZTIyLW1haW50CisyOTA4MSA1ZjJjNmFjMjE1Yzc5OTVlZGQ3OTRiMTZjZjI4ZGZjZjg3YzRjOTgwIGxlZ2FjeS10cnVuaworMjkwODIgYjVkZWMwYTU1NGIzODBmZmMyN2Q0NWMxNGY3MjNhNjM5ODQ0YjZiYiByZWxlYXNlMjItbWFpbnQKKzI5MDgzIGRmMjc2YjczZmU0YjU3OTQ4MGNkZDIyYmUyZjQ1NDE2ZTJjMmQ4ZTAgcmVsZWFzZTIyLW1haW50CisyOTA4NCAyZGNkZTkwMzkxYWFlMzQ3NThhZWQwMmUxOWQ1NmNiOWM3NDM3Mzk2IHJlbGVhc2UyMi1tYWludAorMjkwODUgODdkYWE1NjU0NDJkYjgwMThhOGRmYmE5MjAwZmM4YjFmY2RhMGRjMSByZWxlYXNlMjItbWFpbnQKKzI5MDg2IGEwMDA1ZDI2NzczZDAyYzEwNTNlZmE3MzE4NTZmYmY3Y2Q1M2VkOTYgcmVsZWFzZTIyLW1haW50CisyOTA4NyBiOThmODVkYzJkODgxNTU4YjExMzQ2M2U1ZWZlMThmYWQ2OTEyZTQxIHJlbGVhc2UyMi1tYWludAorMjkwODggOGE3NTk3MzM2NzZmYmE5YWFlNmI2MzNkZGVjZGFmNjJjZTljMjhhYiByZWxlYXNlMjItbWFpbnQKKzI5MDg5IDRiYjkxOGVhNjRkMWUyYmM1ZGJiMGM5YWZhMDFlNTE1ZjQ2OGI5MWMgcmVsZWFzZTIyLW1haW50CisyOTA5MCBmODY3Y2E2YzdkNjk4ZTVlYmYyMWU2OTVkM2Q1OWM0NmE0NzRjOTIzIHJlbGVhc2UyMi1tYWludAorMjkwOTEgM2I2MDk1MjA0M2NkMDUwOTNkNTUzNzhlZmNkMTZlMTM2ZWEyMjNkOSBsZWdhY3ktdHJ1bmsKKzI5MDkyIDViYjJjMDU3ZmQ0MGI4OGEyZGQ2YzdjNzM1ZmQwNjEyN2VkODUwMjIgbGVnYWN5LXRydW5rCisyOTA5MyA0NDZiODM1ZmMxOWIyY2ZlZDc5MzgwYjdlOGZlODNjZDQ4YTVjYTFmIHJlbGVhc2UyMi1tYWludAorMjkwOTQgMjVkMWY0ZjkxNDg3ZTBkYWJjNzcyMzc4NjY2OGIxN2M4MTIwN2ZlZCBsZWdhY3ktdHJ1bmsKKzI5MDk1IDg1MDYyYTEyYzI0ZjhmYjQ1NDQ3OTZhMzM4Yjc4ZmM4NWE5MGQ4OGIgcmVsZWFzZTIyLW1haW50CisyOTA5NiA0Y2EzMmU0Zjc4MzkzYTI3YWU4MDZlNjQ3YmIwOWU3ZWE3NDM2MDUxIHJlbGVhc2UyMi1tYWludAorMjkwOTcgZWZhOWE4NjQ2NGQzNDJjZjFlNjNhMGQ1ODgwOTEwMjQ4MDZlYzFhOSByZWxlYXNlMjItbWFpbnQKKzI5MDk4IDg1NTM5Mjc5MDk0ZDE1ZTcxMTU4NWZlMjg5M2MyNGM0MGQ0Yzg0MDggcmVsZWFzZTIyLW1haW50CisyOTA5OSBhOTRmMjcyZTYwMGQ5MDk5NGMyNDVlNDRjZDVmZDdkMGRkMWM1MjE4IHJlbGVhc2UyMi1tYWludAorMjkxMDAgZWI4NDk5NzNiOTQxOGRlMzY4ZTA1MzJhM2FjYWM1YTRiZmU5YzA3MSByZWxlYXNlMjItbWFpbnQKKzI5MTAxIDQyMTM5YWJmZGJlNWJlYjVkNjNlMTFmM2MzZWMwNmFjYzAwODkwODkgcmVsZWFzZTIyLW1haW50CisyOTEwMiAyOWQ0MGVhZTg3MzZiM2YzYmNmZmJhNzM5NmI3ZTEzZmI4OGNjY2ZmIHJlbGVhc2UyMi1tYWludAorMjkxMDMgMGU2ZjBhMjJjNmE5MjNjODVmMzdmMDFhN2QwMDM5MDcwZmQ3MTc3NSByZWxlYXNlMjItbWFpbnQKKzI5MTA0IDVjZjMzZGI1NTBkNzVjZWJjOGY5YTlkMjM2MjY2NjFkNWU1NzhmYjUgcmVsZWFzZTIyLW1haW50CisyOTEwNSAxMzQzODU4NmRhYTYzNzNjZGI0YzE2NGU5NmYwZjdiMTU4OWYwMmI0IGxlZ2FjeS10cnVuaworMjkxMDYgYmYyOGQwZjc4YmQ1YjI5YjQzNmEzYzY3NmQ4MDczNjRiNmU0YTk1NSByZWxlYXNlMjItbWFpbnQKKzI5MTA3IDVjNmZhYzk1YTk0YjRmY2M5NjVhMWQzMzY0ZDQ5MzBhYWYxYmJjOWEgbGVnYWN5LXRydW5rCisyOTEwOCAxOTlmMGY2YThhMzYzMjA2ZDc0OTM1NDc4NzdiN2Y0ZGQ2NWZmMmEzIHJlbGVhc2UyMi1tYWludAorMjkxMDkgODhjMWM0ZDc4OTE2NmRjZTMzZGQ2MjhmYzAyYzg0YTUzNzNkM2M1YyByZWxlYXNlMjItbWFpbnQKKzI5MTEwIDMzYmQ2NDQ1YjdlOTM5NGMzNjdkZDdhMTczZmIwNjljODI0OGRiZGMgbGVnYWN5LXRydW5rCisyOTExMSBlMjE4NDc1MzE2NzQzODRjNDQyMDNjMTRjZmM3ZWM4MGUzNjU5NGNkIHJlbGVhc2UyMi1tYWludAorMjkxMTIgMTVlZTI5OWQzOWU2NzFkOTIwYzgxOGFmNWFkZmVhOGM0YjI0MjAzNiByZWxlYXNlMjItbWFpbnQKKzI5MTEzIDVkOGJiMDBmZWUxODk5Yzc2YTllNTY5NTNjYmM1NGI2ZTA1NjIyMmQgcmVsZWFzZTIyLW1haW50CisyOTExNCA0OTkyN2I2YjVmNDBmYTQzZTVhMWEzNDFmOTJiNDc2NmQxNzM4YTA1IHJlbGVhc2UyMi1tYWludAorMjkxMTUgM2ZhNTQ0YTNjNWVkYWFlZDdlZjYwOTFkZDBlOTJiMmU4NjhkZGZiNiByZWxlYXNlMjItbWFpbnQKKzI5MTE2IDExNTdjNDAwMzE2YjFlNmM5NmM0MzUyMDE5MzkyMTFmZTliYWE4MmEgbGVnYWN5LXRydW5rCisyOTExNyAyMTAzODQ2ZWVmNzNhZjU0ODlmNzg2NTM5YmI0NWJkYzJjMjE4NjE1IGxlZ2FjeS10cnVuaworMjkxMTggYzU4MDQxZTZhNzk5NzRlNGM4Y2I0OGJmMzg5ZTU3N2YxYmQwOTQxZiBsZWdhY3ktdHJ1bmsKKzI5MTE5IDBhMWMxYzVlMWFiNGYyOWUwZjk3ZWIwMDBjYjE3ODdmMzUzNDMzYTEgbGVnYWN5LXRydW5rCisyOTEyMSA0YmU5N2VkYTQzNmJiNjMzMDllYTI0ODgzMTQxMzZhMmY2NTM0MTlhIGxlZ2FjeS10cnVuaworMjkxMjIgMDY5MGVhNmQxMTUzNTcyYjMyYzllNzdhZDEwZjg3ZTJhMDI0NDdkZCByZWxlYXNlMjItbWFpbnQKKzI5MTIzIGY1MDk5YTUzMGQ2N2FmODBhZWYwMjM1MWI3MzBjZGNiYjUzZGUyNjYgcmVsZWFzZTIyLW1haW50CisyOTEyNCBjYjljMWY5NDIyMGI5OWVhYWVlYTVjODY4YTc5NDRmNDlkNzQzMDVmIGxlZ2FjeS10cnVuaworMjkxMjUgMDAwZDE1NTgxYTc2ODZkOTVlZTAwYTE1Mjk1ZGNlOGJjYTczMGU4OCByZWxlYXNlMjItbWFpbnQKKzI5MTI2IDkwMjc0YmEwNDQyNGQ3NjEwNWUyNmExMTIxZDFhNzllYzBlNzYzOGYgbGVnYWN5LXRydW5rCisyOTEyNyAxNGI2OGY1OTI5NWUzOTU2YjdmMTM1YmVkN2Y4ZGE4YzAyMGJkYTczIGxlZ2FjeS10cnVuaworMjkxMjggMzdjMDQ0NWJkYzkwZDk3ZDU0YjhkZjRmN2JiZjc2YjBmYTQxYzkxYiByZWxlYXNlMjItbWFpbnQKKzI5MTI4IDAxMjgzMTNjMjg1NWQ3MTc1M2YwMGZjY2M2MGJiMzllZDkyYTBjNTQgcmVsZWFzZTIyLW1haW50CisyOTEzMCBkZGJmNjlhYmI5NWNjODg2YWMxYmNkMmExYjIwNGU3MjA5Zjc1ZWEyIHJlbGVhc2UyMi1tYWludAorMjkxMzEgNGE4MjViOTAyMzEwZThkY2Y0ODhjNDMwZjhkZDgzYTQ0ZGQwYzhmOCBsZWdhY3ktdHJ1bmsKKzI5MTMyIGI2NTlhYjQ5NDU3MWVhN2U3YjI4Y2E3MGZhMzU3MzEwMzhjMzA3M2EgcmVsZWFzZTIyLW1haW50CisyOTEzMyA2M2M2ZjQ1ZTk0N2RlNDkyOTRkZjE2OTQ0ZTg2NmVjMTc3NmJhODU0IHJlbGVhc2UyMi1tYWludAorMjkxMzQgY2Y5MjY2MGUxZTNjZTNmNGVlOThkOWFiY2MyMDI2M2EwM2NkOWY1NCByZWxlYXNlMjItbWFpbnQKKzI5MTM2IGM1ZDkxNzkxZTU3YjI5NjM0ZDZhOTViNDQzNTYwMTM2OTc5MDhmYzAgcmVsZWFzZTIyLW1haW50CisyOTEzNyA4ODk3YTBiMWNiMDc1NDE4YTBkMjVkMWE4OTEyOGFhNDA4MzZiNTQ3IHJlbGVhc2UyMi1tYWludAorMjkxMzggMWE3OWI5ZTM5ZTcyNTJiNjA4MWFjOTE3OGQ2ZjEzZGYxMWJlY2FiZiBsZWdhY3ktdHJ1bmsKKzI5MTM5IDljZDZlZDk1NDA2NWRiNjIwZWZjMjM3OGVlMWZkODI3ZjY0YTIwMTQgcmVsZWFzZTIyLW1haW50CisyOTE0MCA2Mjg1MzE5NWJlNjhkMWZkMjUyNmI4OTUxNDdkMWY1NjM1N2NmNzEzIGxlZ2FjeS10cnVuaworMjkxNDEgNDFlODI4MGEzNjg1YTcwMjdlMDg2NTRiMGRmODE4N2EwMTc3ZGIwNiByZWxlYXNlMjItbWFpbnQKKzI5MTQyIGJhYzVhNDkzMjkwNTk5YThjYTkzNDNmMGMyOTZhNTIyZDczYzNiYjQgbGVnYWN5LXRydW5rCisyOTE0MyA2ODk2Y2VlZDQ2YTZiMmQyZWQzNzUyZDEyOTFmZmYxNGFjMGI4NjRkIGxlZ2FjeS10cnVuaworMjkxNDQgYzUyMTY1ZjJjZGY0MzkxZmJiNjRjM2M0MDE1MjJmN2U3NjE4NzEyYiBsZWdhY3ktdHJ1bmsKKzI5MTQ1IDM4NmU2ZmUyYzhkMmM5YTA2YzA1MzhlYjQ5ZjNkNzg4NjliYjk2YWIgcmVsZWFzZTIyLW1haW50CisyOTE0NiA2NWRmZmM5YzBhMTY5ZTdiZWJhM2Q3NGIzMjgzMjc1ODY5Yjk2YzE1IGxlZ2FjeS10cnVuaworMjkxNDcgYmE1MjJjNzRhOTMxMDFjNDM1YWVmZmU3ZWVhZWYyOWIwZTYwN2JiNCBsZWdhY3ktdHJ1bmsKKzI5MTQ4IGNlNDlmMTJhMTc2OWU2YTk3YzlkYzY0ZDdlNzdmNzkxMjRjYWYwNzUgbGVnYWN5LXRydW5rCisyOTE0OSAzODg0M2QzNWI2NDY2MDJhNDZiYjU2YTVlZDEyNjdkNmViOTcxMGY4IGxlZ2FjeS10cnVuaworMjkxNTAgYzdkNTgwMWJiYWU4YmNkYzU4OTU1Y2RkYzgxZWNhYmVmNDczM2M4NiBsZWdhY3ktdHJ1bmsKKzI5MTUxIDY5NWFkOGY4NzcwOTUxMTMzOWZhYzJkODhjYmVmNmFjZmExZGI5NTEgbGVnYWN5LXRydW5rCisyOTE1MiAwODA5ZGM1OThmZTIzYTJiMzJjNzAxOGUxOTk3YjU5YzE1ZmY3ZTEwIGxlZ2FjeS10cnVuaworMjkxNTMgZjRhYTY1NjcxMGYwMzlmMzc3ZjRhMGU3MGVhMGNiN2YyYzBlYjVkYSBsZWdhY3ktdHJ1bmsKKzI5MTU0IDU2YzBiYTIwMzI5YjRkZWQ0MjVmMWQ3NzdiZmUxZTdjYzkzM2Q2M2MgcmVsZWFzZTIyLW1haW50CisyOTE1NSBiMmU4MzdmMmQxNDFjNmZiZjlkNzFmZjJmMjcxNzgwMmYwZjBlNTk1IGxlZ2FjeS10cnVuaworMjkxNTYgZDhlYzk4Yjc0ZmE3OGI1NTRiYTljMWYxNGY3ZmJlOWNmZmRjMWQzOSByZWxlYXNlMjItbWFpbnQKKzI5MTU3IGIzOWJkMDNhOGRhYjY2OTIzODhkOWMxNjg0NGRjZTVjODVjYTBhZDIgbGVnYWN5LXRydW5rCisyOTE1OCAxM2Q2MzlhNGFmZDdiODNhOThjM2FmMDMxNDZhNWE3ZjIzMGQ1ODdlIGxlZ2FjeS10cnVuaworMjkxNTkgYTk2MjFiYTdlM2RiZDEzNDBiMGQwODdhNzZjZTQ0YzM0ODQyNzU1YyBsZWdhY3ktdHJ1bmsKKzI5MTYwIGU5ZTdmMTYwYWFjOTkwZTIxNWJhZmRmYTBmZDhiM2ZkZGQxOTQyOWYgbGVnYWN5LXRydW5rCisyOTE2MSA1MDAxM2QxYzZhNDNlYTFiZWVmNTI2ZjEzYzA2N2I1M2ViYTI2ODQ5IGxlZ2FjeS10cnVuaworMjkxNjIgYjc4ZjVjN2U1NzkwMjE5MDgzNTNhNjIwODcwMmFlOTcwYWNiYmJkZiBsZWdhY3ktdHJ1bmsKKzI5MTYzIDJmYjkxMGIxMzljMmUyNWQ1NmNlYjE0NDc1NDdiYjRkYzhjMzVkZjQgbGVnYWN5LXRydW5rCisyOTE2NCBmZWI4ODYzYjZmYzQ2NzRiZDdiOWQ0NzkxZGI1OTA1NzY3N2NiNjJiIGxlZ2FjeS10cnVuaworMjkxNjUgNmFlNmYyMDYwZTI4ZDM2NDM1YTkyOTlhMTg0ZmVjYzdkYWVlNmQ3OSBsZWdhY3ktdHJ1bmsKKzI5MTY2IGM2MjFmNzFiYzcwMjU2MDlmMDliOGQxODhjZjU1MTQwZThhNDBkN2IgbGVnYWN5LXRydW5rCisyOTE2OCA4MTIwNGUyMGNmZTU5ZTM3MmE3YTYwMTFmYTZiZjU2NTA0NWE3N2YwIGxlZ2FjeS10cnVuaworMjkxNjkgMGE3YWE4NzRjNDUwYmRkYTU5OTlhMzJjMGIyZGE1ZTJjMjRmMzU2ZCBsZWdhY3ktdHJ1bmsKKzI5MTcwIGU5NTkxNzJjYWY0OTMyMTg4MGY4M2M5OGRmYzM2ZTNhOTM4Y2I4NDIgcmVsZWFzZTIyLW1haW50CisyOTE3MSA0NDc3NjJlYmIxMWQyZDcyYTE1MTg4OWI5YjJlNDYxODVhODc3MmIwIGxlZ2FjeS10cnVuaworMjkxNzIgZWU3NTZhYjZhMTNlMGRmNzM4ZmI3OWJlYzE4ZDFlNzNkMTE2YjlkNCBsZWdhY3ktdHJ1bmsKKzI5MTczIDBmNTA1MzZhMTBiYjc3NjRlN2Q3NzIyZmMwZjA2N2Q0YmYwNDIxZDYgcmVsZWFzZTIyLW1haW50CisyOTE3NCAxZmUxYTU3ZDhlYjFiMjdiOGUzODdiZGFkZDc5ZTcwZGM5OWJhZmY4IGxlZ2FjeS10cnVuaworMjkxNzUgNzMzZGYyZDFlYmE5NzFiZjUwYTQ3MTBkNTgwNmE3NzhiZDA2MzY1NiBsZWdhY3ktdHJ1bmsKKzI5MTc2IDFhOWY0Nzg4NTI2MDRhN2QwY2NjMzgwMWJhMzZhZmNkNzM2MjM2NjEgbGVnYWN5LXRydW5rCisyOTE3NyBiYWQ5Njk5NTc2ZDlkOWJkNTYwZDgyZDRiMjc4ZDA4ZThkZWJkN2NkIHJlbGVhc2UyMi1tYWludAorMjkxNzggYWU2ODYzZTg3NzI0MzdiYzFjNzI1NmNkMTNlNDA5NGNhZGI2YzkzYyByZWxlYXNlMjItbWFpbnQKKzI5MTc5IDA2ZjYxNzNiODBmYjQxNzFkMDc5N2I2OTQ5YTA2ZmEzN2U2NmVjNDggcmVsZWFzZTIyLW1haW50CisyOTE4MCBlMDY3NDNmYWI0Nzc1Y2E4NDMzOWIzYzVjMGM3OGU3ZDdiNmQwM2I3IHJlbGVhc2UyMi1tYWludAorMjkxODEgNDFjNTkyMTIyZjYyOWZkNWQ5ZDYwOWE0N2JkNmRmN2Y5MzExNmM1YyByZWxlYXNlMjItbWFpbnQKKzI5MTgyIDJhZGFkYzE5OTIzY2UxMmYzMDkzMTIzODk1MzM2ZjJlMzdmNTg3ZDggbGVnYWN5LXRydW5rCisyOTE4MyAyOTBlYTBjNmRlNmE1YTFhY2YyYTNjMDZiMjIxNjcxNjIxZDMyMGM1IGxlZ2FjeS10cnVuaworMjkxODQgNTViMTgzOTQxMjNiN2FjNjI1NzU4ZGVjNzdkNGM4NTljZTliMmY1NSByZWxlYXNlMjItbWFpbnQKKzI5MTg1IGUzNzRlYTdhYzRjZTQ4YTA0NDkyOTU0ODI4MGFkZTE5ZmNjYWZkZTAgcmVsZWFzZTIyLW1haW50CisyOTE4NiBmNTMyZTliNjk1NTFjMmU3ZTc4NGFiYjFlNWNmMDJlYzk4ODI0MDNjIGxlZ2FjeS10cnVuaworMjkxODcgM2MyNmFlNjFlOTUyM2ViZGYzNTA1YzFkYmRlOTc4NWMwMDJlNDRjYSByZWxlYXNlMjItbWFpbnQKKzI5MTg4IDhiMjBiMjZmMTE4Njk5ODAyMzljYjEwNjc4ZDcxNWQ4ZDIyYzk0YTggbGVnYWN5LXRydW5rCisyOTE4OSBmNmVkYjFlZjJlM2Y4MDBmNjVjNmUwNjVmZWJmNGZjYWQxYjQ0ZTdjIGxlZ2FjeS10cnVuaworMjkxOTAgNjFlNmI1N2ViYmUxZDgwZWVhMjgyMGJjNzIwZDczNWI3MmRjNWEyZSBsZWdhY3ktdHJ1bmsKKzI5MTkxIGQ2MzRmYmQ1ZTQyMzJkZDdjMDkxNzA3ZTQyOGVlMjllMTlkMjVkYmEgbGVnYWN5LXRydW5rCisyOTE5MiA4ZTkyYmU2NWRlZDM2NjhmZTZhYWFhOGQ0ZjE3NTQ1MjNlMDdiODZiIHJlbGVhc2UyMi1tYWludAorMjkxOTMgNjVmYTE5M2VhMTA5MGNlN2Q5Y2Y5NjRmNDFhZjdmZWY4M2VhYjVhYyBsZWdhY3ktdHJ1bmsKKzI5MTk0IGY0NjE4MjdkYzdkZTZjM2YzZjM1ZjkxY2U5MDNmNzA0MjZlYjM0NWYgbGVnYWN5LXRydW5rCisyOTE5NSBmYTE3MzcxOWFjOGMwZWE2MTFiOGE2NmFlNGRhNjM3OTBmOGNiYzI2IGxlZ2FjeS10cnVuaworMjkxOTYgYjU5ZDFhMTE5MzkzMmRiMzZkMzNmNjFjOWI0MzZlMzc5N2UwNWIwMiBsZWdhY3ktdHJ1bmsKKzI5MTk3IGFjZTgyZGEzYjQ1MGU0YTI5YWJmMWNmMzBjZGYxY2UxMjhjZWI2ZjkgbGVnYWN5LXRydW5rCisyOTE5OCA3ODdmZWNkMGFhMWJiMTA3Njg2OWY1MTMwMDZjYWI5OTlmZTVkZDY5IGxlZ2FjeS10cnVuaworMjkxOTkgYzU5Y2U1MTNkZWY2MjViZWE2YTA1ODA5Mzg3MTZlNmFmY2E3NmUzMSBsZWdhY3ktdHJ1bmsKKzI5MjAwIDNhM2Q1YWVjN2E2YWZmMWRmZWU0ZjUzOGQ3OWZiY2Y2NTdiYWI3NGYgbGVnYWN5LXRydW5rCisyOTIwMSA3MDA1ZjRiNmNjMTIyY2NkOWZmYjkxMWJhODlhNmUyZTVkYmVhMjRmIHJlbGVhc2UyMi1tYWludAorMjkyMDIgNmQyMTM4Mzg5NjY3MjU2MjA1N2YzYjc1Y2FmYTk0Y2JmMDk5NDYxNSByZWxlYXNlMjItbWFpbnQKKzI5MjAzIDkyYThhMzUyZTAyNDMwNjMzYThlY2ZkZjYxNGMwNTI3MDYwZGVmNjQgcmVsZWFzZTIyLW1haW50CisyOTIwNCBiMGZhNWY2YThiYjk3ZGU3YTU1Nzg5ZjM0ODMwOTQ4ZmRmZWVkY2E0IGxlZ2FjeS10cnVuaworMjkyMDUgZWVlZDdjOGIyMzFhZWQxNjc2N2UzNzBlNzdmMmMxMjNlMDU2OGI2MCByZWxlYXNlMjItbWFpbnQKKzI5MjA2IDk3MDAyYjI1MDQyNTY3OWQxODYyNmE2N2M3ODJlY2U3YTY4OTFjNjcgcmVsZWFzZTIyLW1haW50CisyOTIwNyA3MGY5MDI2YTJiMTZmZDM4ZDg3YzI3MjRkNTZmMDNiMzhjMWM5MWY3IGxlZ2FjeS10cnVuaworMjkyMDggMjFhYjJhNjc0YzBhMTQ2NGVhMDZiZGQyYzllYjBiNDRlNGQ3ZDRjMSBsZWdhY3ktdHJ1bmsKKzI5MjA5IDM5NmM4YTI0ODgwYzgyNWQ1NDI0ZjBlNmNmMmM0YmY5Y2UxN2YxOTcgcmVsZWFzZTIyLW1haW50CisyOTIxMCA4NmJmODQwYzJhMWNhOGJlNGZkZDQwMjU3NzAyZTMwMTU3YmNlODM1IGxlZ2FjeS10cnVuaworMjkyMTEgNTRlYmYwODVkMjZmYTk2NGNhZjYyZGY2N2M2YTc0MWM4MWZiMzE1YSByZWxlYXNlMjItbWFpbnQKKzI5MjEyIGY3Y2NmNDk5MTU2NWMzZmIzMzIwMjhhMWQzYzJhNmFjM2ZmMWE2ZDUgbGVnYWN5LXRydW5rCisyOTIxMyA3MzQwYjY0YTQ5MDgyMjNlYmJmM2UwMmFlN2U4ZGRhMWQ0NjNmZDgzIHJlbGVhc2UyMi1tYWludAorMjkyMTQgNDg5MGYxYmRlYWE2NDJlMjBjN2U0Zjg3NjkxY2MyNTQzNzk2NmYzNyBsZWdhY3ktdHJ1bmsKKzI5MjE1IGY3YTQ2YjBkM2MwN2FhMzBlNjVhZTFjMjYzMzNhZWZiMTY3NWQxNjcgbGVnYWN5LXRydW5rCisyOTIxNiBkNDNlODJiOGQ3OWQ1Njg5ZThiYzliYjc2NmRiODRjM2M0OTY4ZDJjIHJlbGVhc2UyMi1tYWludAorMjkyMTcgZWMwYTQ4YWU4ZWI0N2VhMTZmNzM3ODQ4MTY1ZWNlOGQ0OTlmYjllYyBsZWdhY3ktdHJ1bmsKKzI5MjE4IDliZDJmOTc5MmVmYmE2N2ZmNTRmZGFmYWNjOTgyZmMwOGEzYTMxOTAgcmVsZWFzZTIyLW1haW50CisyOTIxOSAzYzk1ZTA5NzY4NDQ4ZWNhMzQyM2RjMDJlMGFiZjYwNTAwNDE5NjA2IGxlZ2FjeS10cnVuaworMjkyMjAgMmQxN2UzY2I3NzRlODM2M2Q5MTU0NDRjNGUxY2QyNTU2M2FlMzQxMiBsZWdhY3ktdHJ1bmsKKzI5MjIxIDc1Y2JlYzQwZGI3ZDVmYzU0MWNmZDBmZGJlM2JiZTUwM2U2MmNjZTYgbGVnYWN5LXRydW5rCisyOTIyMiA2ZDM1ZDQyOTJkZWM0NmQyMTgzOTI2MmM1ZmFlYjIzYTFkMTJlMzc5IGxlZ2FjeS10cnVuaworMjkyMjMgNjMyMjU4MTE0OThkNTExZDMxYjFjM2IwNDJhZGZhNmRmNDlkZWIwZiBsZWdhY3ktdHJ1bmsKKzI5MjI0IDA4MzhjNDI0NzkxNzgzZmVjOGE1ZTNkZGI2ZDFkNDBkMDQ1YjE4MTggbGVnYWN5LXRydW5rCisyOTIyNSBmNDQ5ZmI1YmJhYjhhZDY5YTUzYjI1NDJjNGQxOTYzNGMyOTMyZDUwIHJlbGVhc2UyMi1tYWludAorMjkyMjYgNTYzMjg0MWEzMmE0MDU5ZWJlYTM3NTdmNWMzNmJmN2YxMDUxOWQ0MyBsZWdhY3ktdHJ1bmsKKzI5MjI3IDZlZDBiYmRhYmRjODE5ZWMwYTI1YTFhMDdkMDUwYTFmMjIwNzJmYTQgcmVsZWFzZTIyLW1haW50CisyOTIyOCA2OWFhNjBkNzcxZDFmMzE5OWNjZDM2MzE0ZDUwYTZjNDJjMzQ4YmE3IHJlbGVhc2UyMi1tYWludAorMjkyMjkgYjRlZDlmOTMxOWNkZTQxMTVkYTFmMTU5NGU4ZWMwNzA0MDJhMDZhMyByZWxlYXNlMjItbWFpbnQKKzI5MjMwIGY0NDdiNjk2MDFiOTE1NmUxZDVhYTIwZjEwNTk1NzVhM2JlNWRlMjggbGVnYWN5LXRydW5rCisyOTIzMSBjYTk4OWE3MWI2YzdkZDdkY2QxMTVmYmYxZjllMjcwNjMxZmJhM2EwIHJlbGVhc2UyMi1tYWludAorMjkyMzIgNzFlM2E4ZTlkODg0MDYxYzFkNTdmOTZiOTlhMjQxZjgxNDllMzk1NCByZWxlYXNlMjItbWFpbnQKKzI5MjMzIDQ0NzI5ZmJiM2Q1YmJjMWFmYzZjN2VhNzBlY2MzNmRjMjJhMTIwZDQgbGVnYWN5LXRydW5rCisyOTIzNCA4YWU5YzBiMGFhMGYxNTRkY2M0OGRmMTVhMWQzY2NiYmI0NjVmMzE0IGxlZ2FjeS10cnVuaworMjkyMzUgN2E1N2RkZjcyNzk0ZWY5ZjEzOWE2NGYwYzBlOGJlOTQ4YzNkZGZhNiByZWxlYXNlMjItbWFpbnQKKzI5MjM2IDAzN2RmYmEwNzBhYzc4YzM4YTYwMmQyZGE5OWY3OTQzYzc1ZDQ1ZjIgcmVsZWFzZTIyLW1haW50CisyOTIzNyA1Njk4ZjBmZTJlYTAwOTAwNjA4ZWI3NGJiMzNhZGU2MzBmMzcxNmZhIGxlZ2FjeS10cnVuaworMjkyMzggOTUxZTNmZTdlZDNhZDNhNTZlNGI2Y2I3N2M4MWQ3ZDNhOGMyMDkxOCBsZWdhY3ktdHJ1bmsKKzI5MjM5IDNhODc5ZjJmY2EwNjZhZDI2ODI0ODYwZTQxOTZlZTViYWM4ZjgxODAgbGVnYWN5LXRydW5rCisyOTI0MCBkNTg3MWQ2ZTczNWQ3NGRmYzcxNWFlYWE2ODkxM2JiMGRmNzI4ZGM4IGxlZ2FjeS10cnVuaworMjkyNDEgMzYyMzAxYThjM2U0Mjg5ODZkNDA1MjNjMjRlOWNkM2UzNTE5NTI3ZCByZWxlYXNlMjItbWFpbnQKKzI5MjQyIDkxZWJmNDg4YjVhMTg3YmIzY2IzMTIzOWUxMzYwYTRlNTQ4ZjkxYmUgbGVnYWN5LXRydW5rCisyOTI0MyBjMzU1ZmQzN2Q2NDA3YjE0MmZjMmRmMTc4Y2ZkODU0MjA4Mzc5OWYxIHJlbGVhc2UyMi1tYWludAorMjkyNDQgODRlZTVhNDk5NzQzMDEwNjg4NmY5ZDY4OWUzNGY2ZTcyNjgyYmIxYyBsZWdhY3ktdHJ1bmsKKzI5MjQ2IGVkZjVlN2U1NWQxNDBhNzcxNzVlNzAyYWY1NmRlYzcxMWFkOTZlZmQgcmVsZWFzZTIyLW1haW50CisyOTI0NyBhZGU4YWYxYWEzYzY4ZjQzM2I2NzJmOGQxNzkxZWU5ZDYzYTNiODBkIHJlbGVhc2UyMi1tYWludAorMjkyNDggMWRhY2I2YWMzOGU5Y2VlNTMwYTdmOTUwYjQ3OGI4OWJhZDFlNWNmOCByZWxlYXNlMjItbWFpbnQKKzI5MjQ5IGNjNDFiOWNhY2FlODQ3ZTUxM2Y2ZmM1MTM0ODRiZTJhNDU3ODYzODkgbGVnYWN5LXRydW5rCisyOTI1MCBmMGE3NGFlMDlhZDczZTQ4YTM1MTk1NWQ2MDlhODg1YzcwMGY5MjhhIHJlbGVhc2UyMi1tYWludAorMjkyNTEgMmVmNzFmMzUxYzc0YTJlMWY1MGYxMzZlMjZkYWZkYWEwZWI0YjI1YyBsZWdhY3ktdHJ1bmsKKzI5MjUyIDQyM2FhNWVmOTI0N2JkNGY1ZGZlYmZjNDgxYjkwMDc1MjQwMTk3MWYgcmVsZWFzZTIyLW1haW50CisyOTI1MyBjZjE4Y2EwZWVhODkyZDU1YjQ5Mzk0OGJmMTJmY2ZmMTQ4YTJkODRiIGxlZ2FjeS10cnVuaworMjkyNTQgYWYyMGFlYWFhOTgyMDRhMDQ2MjdkMjdiZmM5Y2YyNmM3NmI4ZGY5YyBsZWdhY3ktdHJ1bmsKKzI5MjU1IGJmMzg0MTExYjNiMzhmN2Y4MjE3ZTFkYjAyODZlZmI1MjExOTQ1NmYgcmVsZWFzZTIyLW1haW50CisyOTI1NiBlYTFhNGNlYmM1MzBhNWIzZGU3ZWJkZThmZTg4YTQzMGFkYWQ2MjZkIHJlbGVhc2UyMi1tYWludAorMjkyNTYgNjFkNTMxNTMzYTg2MjI0YTFjMjY5MTdjMTgwMTNkOTFmNTkyZmJmYiByZWxlYXNlMjItbWFpbnQKKzI5MjU4IDgzODI4NTgzZDkxNzM4ZjZiYTg2ZTU2ODg4OGZjNWY3NTA2NjFmMzkgbGVnYWN5LXRydW5rCisyOTI1OSAzMWIyZmI0NDg1MTQ2MzJhNTUxOWRiNzY3ZjllN2Y3MmZhZDM1M2MzIGxlZ2FjeS10cnVuaworMjkyNjAgYTNkNjEyZjA1NjNmMTY0MzZkYjdlMGNhNjU0ZDkxMjJmZGY3NjU0MyBsZWdhY3ktdHJ1bmsKKzI5MjYxIGI4NThmNGM4ODNkZGRlNGQwODRjOWI4ZTRiZDRiZWIzOGJmOWRmMzcgbGVnYWN5LXRydW5rCisyOTI2MiAwMDFiNzg5ZjFmODRjMDA3OGNjYzUxZjlkNmRlY2IwZmMxMjJjOTMzIGxlZ2FjeS10cnVuaworMjkyNjMgYWMxNDMxN2E5YWU4YjMxNmU0YmE1MjdjNzA3NDkyY2Y3NzRmNmRmNSBsZWdhY3ktdHJ1bmsKKzI5MjY0IDNlYWZiZGU1NmIyMTlmMWRhYTVlMmM4NTJlYWUwOWFjMWJmYzVkYzEgbGVnYWN5LXRydW5rCisyOTI2NSA2NmUzZTVmMDkzY2ExMTM3NDg3ZGM4MDg2OTNmYmNmM2JkNDI2ZThhIGxlZ2FjeS10cnVuaworMjkyNjYgODVjODdiM2FjOTZiYzI2ZTU3NGY5NTRlMzFiNzZiZjk0YTVjYjg3NSBsZWdhY3ktdHJ1bmsKKzI5MjY3IDZjOTMwZTI1NmExNmQyNDg5ODZhZWQ3OTAzZDc0NTNlY2YwOTBmNWQgbGVnYWN5LXRydW5rCisyOTI2OCBiYzgxZDUzMWM2MjkzMjI1MmE3MjU4ZTM2YjgyMTFmN2RmYTliYzVjIGxlZ2FjeS10cnVuaworMjkyNjkgMzQyODQ4MjVkOWNkODFjMjkzMzNmZWQ4OWEzZjE5NGRlZDVmZmExZCBsZWdhY3ktdHJ1bmsKKzI5MjcwIGM3N2Q4MzU3MGIzZmNhZmY2YTM2Yjc4MjA0ODQ2ZTVmOWUwNGM4NmEgbGVnYWN5LXRydW5rCisyOTI3MSBhYjlkNDAxNmI1ODdkNWFlOWE3ZDVlOTQyZjIxNGFkZWJhM2E4OThhIGxlZ2FjeS10cnVuaworMjkyNzIgNjAwMTI2NWVjNjg2MTU2YzdhN2E0ZDE5MmUzMDVhY2FhMzAwNWYyZiBsZWdhY3ktdHJ1bmsKKzI5MjczIGI5NzY5ZjcxMzNjNjBhYzJiNDI2YTI0MWY3ZWQzYzIxNGVjMjI2ZGEgbGVnYWN5LXRydW5rCisyOTI3NCAwYmJlYTRkY2Q5YmVkNmQ4MWM5Mjc0NWNmNjhlODg4YjE2ZmJjZjk2IGxlZ2FjeS10cnVuaworMjkyNzUgMzdiZDJhOTAxYzEwMGE5ZmNmYzBiYmM1NTQ0YmU3YTE5OGQ3ZTEyOSBsZWdhY3ktdHJ1bmsKKzI5Mjc2IGZkY2E4N2M0MjM0ZWE0NmE1NDJhZmMxNzhiNzIwMGU1ZTc0MTQxZTQgbGVnYWN5LXRydW5rCisyOTI3NyBjZGNiMTAyZjhlNTZjMmNmNGE5MGE4NzNmNDNmNWJiNWJhN2RkYmFlIGxlZ2FjeS10cnVuaworMjkyNzggOTE1MTEyNjcxMTUyZjQzZmE5ZDdkY2I2ZWZhMzA2NjVhODYxZDkxNyBsZWdhY3ktdHJ1bmsKKzI5Mjc5IDU0ODM0MzYzY2NmMGRhNjlmMzQwZDBmYjc0MTdkZWEyZTU2ZTZkMDAgbGVnYWN5LXRydW5rCisyOTI4MCA1ZDM1MmRlOTQ0MTU4MGM4M2MyZGMwMmE2ZWM0MDY5MTQ2ODE3YjczIGxlZ2FjeS10cnVuaworMjkyODEgNzc3OTk4YTIyN2I3NGQxN2Y0ZGNiMjcxOTJlYmU3YjllOWFlNjljMiBsZWdhY3ktdHJ1bmsKKzI5MjgyIGI4Y2JkYjczNWNmMmIxOTllNTY0Zjk0ZTkxODliNGFmNDIwYjU2OTkgcmVsZWFzZTIyLW1haW50CisyOTI4MyA0YTkyYzdkOWQ0MTU0YjA1ZmJkMjQ1ZmZlMDZkYWQ4YTRlMGQ3MDYwIHJlbGVhc2UyMi1tYWludAorMjkyODQgNzZhYzE2MjkzZTRiNmM3NDA3ZWE5NTE0ZjkzNzJiN2Q4MWEwZjgxYyBsZWdhY3ktdHJ1bmsKKzI5Mjg1IGZmNjdkNWZmMTIzZTU2OWNiMGI1NTVjYzRlNDk4N2U3NDM0NGMzYWQgbGVnYWN5LXRydW5rCisyOTI4NiA3OTQxOTg5N2EzNmZlNzk3NzU1NmI3NGQ2MDA4YjU2NmNmMTIyMzQwIGxlZ2FjeS10cnVuaworMjkyODcgYzQ0MDNhM2VmYTVkNWY4YjhkODRlNDZjZDJiODk4ZGM2YmZkMTUwMyBsZWdhY3ktdHJ1bmsKKzI5Mjg4IDEyMjI3ZDc5ZjZiYTRjNzZkZjA1ZmM2NzFmMTVjNmI3NTE4NmZlYzAgbGVnYWN5LXRydW5rCisyOTI4OSAwZjRlOTk4ZTNlYmI2MzM0Y2IxYmE3YTUyMTM2NWI2ZGUwMzBlZjcxIGxlZ2FjeS10cnVuaworMjkyOTAgMDMyZjE5NjA1OWFhMGI0ZjcxZTBjODBlNGZjYzBmZTk3YTZhYmUxMyBsZWdhY3ktdHJ1bmsKKzI5MjkxIDk5MGIyNzUxNDkzODJiNGU3ZDdkOTRiNGFmNDhhZjkxZGJhNmM0MjkgbGVnYWN5LXRydW5rCisyOTI5MiAxYWZiMjI4ZTQyNjViNWE4NmYwOGMwYzg0ZGI0MDYwNjk0MzE1MDE2IGxlZ2FjeS10cnVuaworMjkyOTMgY2ViZWUyYTllM2NmOTk2MGMwMDU1NTM1ZjM5YTA0YjVlYWZlNTZiOSBsZWdhY3ktdHJ1bmsKKzI5Mjk0IGMyZGQ0MTMwMTg0MTA4YmU1M2I1MWY3ZTM5YTg1ODlmMWZhYzUzMTAgbGVnYWN5LXRydW5rCisyOTI5NSAwOTNmZTViOWY2Zjk0OWFhNWJiZDExNGYwMzVjOTI4YzAxZDU1Yzk1IGxlZ2FjeS10cnVuaworMjkyOTYgN2VhNjc0YWM1OTBlZjU3NDhkM2M0YTFkYjc0MTc2MDc3NGMxNTcxMyBsZWdhY3ktdHJ1bmsKKzI5Mjk3IGRjNDIwZGUxN2E2ZWU2M2NlZTAyMGI1MTk2NDdhMTNmMmEzNDU2MzEgbGVnYWN5LXRydW5rCisyOTI5OCBkZWFiZDA1M2I2ZGUxZjRlZDY1NmFmZDM5Nzk1ZmZlOTg1N2Q3YWM5IGxlZ2FjeS10cnVuaworMjkyOTkgODA1MDE1N2E0NDMwYmI3YmQ4NzIxMzU5OGI3NDM4NGJiMDAwM2E5OCBsZWdhY3ktdHJ1bmsKKzI5MzAwIDA5MGI3MmMwZDJlYjczMDI1OWE5YTc2Mjk1ZGUyNTEyNmQxZmE4NmEgbGVnYWN5LXRydW5rCisyOTMwMSA0NGNjN2M2MmQ5OGRiMzc3NjFjNDMxN2M1NGVjNTJmMmU1MDI3Y2ZmIHJlbGVhc2UyMi1tYWludAorMjkzMDIgMDM1YjhkZWI1MmMxZWY0ZDBlYjUzMDE3Y2E3YTQwMmMxOGVlNzM5NiByZWxlYXNlMjItbWFpbnQKKzI5MzAzIDQ3MDI5MjEyOTdkMTI1NWExMGNjOWM3M2JkMTI4N2IzNWEwNzEwNzEgbGVnYWN5LXRydW5rCisyOTMwNCBhODlkMDE0NTU5ZTA1N2YwMTYyMzI5Y2M0ZDhlNDViOTcwOWVjNjRkIGxlZ2FjeS10cnVuaworMjkzMDUgMmYzNjQ3YjIxYjA3NjMzOTBmMmQxNzg3NTE0MWQ4MzU1NGY0OWZmOCBsZWdhY3ktdHJ1bmsKKzI5MzA2IDg1NDA4ODdiY2VjNmM5YjkwYTJhYWFiNDEwMjI3OTUyMmQxZjdjNTkgcmVsZWFzZTIyLW1haW50CisyOTMwNyAyNDM1MDM5MjZjODFkODBlYzUzZTFhYjA0YjAzNWQzMzViZWRkMDQyIGxlZ2FjeS10cnVuaworMjkzMDggZWVhNDBjNDE3MjA1MzlmYmY3YjM0MzBkMGQwYmEzMzE5OWIxMjc3MiByZWxlYXNlMjItbWFpbnQKKzI5MzA5IDA5ZTNmMGQ4YmUxMGJlYjVhYjBlZmU4NDg0YWRhNDdiNGE3YjIyYzkgcmVsZWFzZTIyLW1haW50CisyOTMxMCBlYWI3OTQwMjc3ZmJiM2MxMzRiZGM0NDExODc2ZDJlOTJjMzRiN2M5IGxlZ2FjeS10cnVuaworMjkzMTEgN2I3Yjk2NTU1ODQyYTk0ZDQ2NzU3M2M0NmMyNWM0NzA1YjMzY2QxYSByZWxlYXNlMjItbWFpbnQKKzI5MzEyIDMxYmRjNjZmYjMwN2YwMTVjZjBlOGMwNzA4YTU4NTk5ZDRhZDM2MWMgbGVnYWN5LXRydW5rCisyOTMxMyA0YWNiNTUwMWI0OTAwYzcxM2QwMjJmMDNkZTc4MTRjNGViOWY1Y2YzIGxlZ2FjeS10cnVuaworMjkzMTQgOGZiMTJhYzc5YzkzN2FhNDM3ODU5NjU2ZmIxYWQ2MTNhYjYxNWI0NyByZWxlYXNlMjItbWFpbnQKKzI5MzE1IGVlZDBmY2Y4NWI2MjI5MDQyOWMyMTE5YzVkZmQ3ZjBjZTA2NzMwOGQgbGVnYWN5LXRydW5rCisyOTMxNiBhNWRiMjQ2ZDk0YTBiOTFhZDk0NDM0YjJjOTc2Zjk1MzAzZmUyOTM3IHJlbGVhc2UyMi1tYWludAorMjkzMTcgMDU3ZGU0MWRhZjQ4OTJkMDFmZmRlOTllMzg2ZmIzNDQ2YjY3ZTc5NiBsZWdhY3ktdHJ1bmsKKzI5MzE4IDY3MzgxZWJkNWY0ZjcyNjA4M2FiODU1ZDdhMjVlNGY3NDgwMThjZGMgbGVnYWN5LXRydW5rCisyOTMxOSA3ODg1ODk5ZmI0M2ViNTBjZDI5OTQyYWZmNzEwNDRhYmI3YjA4MjFhIGxlZ2FjeS10cnVuaworMjkzMjAgMWY1ZjY0ODE4ODZkOWFiMzQ4MTFkZTZlNDVmOTMwNjI1ZjUyZjdkNSBsZWdhY3ktdHJ1bmsKKzI5MzIxIDY4MGJmY2M5Y2EwNjZjNmM2ZGUyN2RjMDNlNDNiYWM3ZGQwYjcyYzUgbGVnYWN5LXRydW5rCisyOTMyMiAyZjliMGEzNWUyMDU3ODhmN2UyM2ExYmY0NzdkMDg4MDQyYTI0ODFhIGxlZ2FjeS10cnVuaworMjkzMjMgYTExY2ZhZTcxZGViMDc4NmU2MjIzMDA3MDQ5ODk0MDBjYTk2NTQwZiByZWxlYXNlMjItbWFpbnQKKzI5MzI0IDg0YTNkZDk5NGNkMTg4MDRmNjMzYjZjODNmNWYyOTZkMGJkMTM1MzUgbGVnYWN5LXRydW5rCisyOTMyNSA1NGYzMmJhNzA0N2NiM2ZiMTg5MjA3MTNlN2JiNGU0YmU1OGM1ZWNmIHJlbGVhc2UyMi1tYWludAorMjkzMjYgOWRkOWM1MzFjYTc4YzRmMTBkYzExNjRjNjEyOTk4MDM1ZDY3MDVjNCBsZWdhY3ktdHJ1bmsKKzI5MzI3IDRjOGE4Yzc0ZjRiZGE5NGZmMzg1ZjY1YzE1ZTRiZjIzN2YwY2ZmMGIgcmVsZWFzZTIyLW1haW50CisyOTMyOCA4MjNlOTQ3ZTI0NTAyNTdmZmM1N2M5ODFkMjVjZGExYmZhZWVhNmNmIGxlZ2FjeS10cnVuaworMjkzMjkgMzVmNDc2ZDY0ODFlZjQyOWRlZGFjMGU2Mjk0MmYzNjI5MDkzYThmYiBsZWdhY3ktdHJ1bmsKKzI5MzMwIDQxZTAzNjFhMjE5MTIyZmFlNzMzYzBmNmQyZDUzMmYxMGEzNGE1NjIgcmVsZWFzZTIyLW1haW50CisyOTMzMSBlNTZiNTJlNzhiYzk3OTBiNTNiNjc4ODUwYTNmMzdkMmYyODFkYzk4IGxlZ2FjeS10cnVuaworMjkzMzIgMTUxYWEzNDM0YWE2NzAyMzk3MmNhNzNhZGRjY2ZjMzc4OTQxN2E5NyBsZWdhY3ktdHJ1bmsKKzI5MzMzIGQxN2ZmYTA1MjJiNzU5ZWU5OGE3M2NkNTFkNjdiOGRkNjk5ZWVhYWUgbGVnYWN5LXRydW5rCisyOTMzNCBiOWFhODcxZjg0NGJmY2ZmY2VjNjI1NmU3MjEyNjUyYmNjMmZiOGE2IGxlZ2FjeS10cnVuaworMjkzMzUgYjdiMDEyZTc4ZGEzNWUzYmM1NTE3YzUyMDExZDVhMWE5NmI5YjM5MCBsZWdhY3ktdHJ1bmsKKzI5MzM2IDJiMTU4MjY3YjAwZTRjMDljMDExMzA3YjA5YzI4YTI2MmU3MmVlYTQgbGVnYWN5LXRydW5rCisyOTMzNyAyYmNiNDE2MTFmYWU5MTkzNTJiNDA3MmIwOWE3ZmJlYTlhMjBiMTkyIGxlZ2FjeS10cnVuaworMjkzMzggNGViOTRjNTZjNDZhNDcxYTQ2ZDNkOWE3ZDBkN2EwODAxMmY3OTE4MSBsZWdhY3ktdHJ1bmsKKzI5MzM5IGNiOTEwYzM5NDkyNzE0OTUzNzUwMTQwMjEzZWEyNWU1NjkwYTM2MjQgbGVnYWN5LXRydW5rCisyOTM0MCBhOWNmZWI0MmUyNDA5OTg2NGEzZmMwNjZjY2QzMTdkOWRiZjM3ZDc3IGxlZ2FjeS10cnVuaworMjkzNDEgNTdmYjNkNWUzZGQzNzYwMWVmZjgyNzllYjA2NWI3YWRkYTE1ZmJkNSBsZWdhY3ktdHJ1bmsKKzI5MzQyIDc5MzA1YTJlZmE4Yzg3OGVjMzdiMWJjOTBmZjlhOWIxMTY4OWJlYTggbGVnYWN5LXRydW5rCisyOTM0MyA5MjUzZmU4NmI5MjJmYTFhMWQxMmIyMGUwMWUxNjFjMzNhOWIzZjBiIGxlZ2FjeS10cnVuaworMjkzNDQgNWY3YTMzNGMwOTI1MTA5OTQzYjVmZWRiZjVlZTg4MDQ3YWZhNWI3ZCBsZWdhY3ktdHJ1bmsKKzI5MzQ1IDE1NjA3ZWM0OWZhZjEwODE4NDdiZGI5MDQ4Mjk3MWNmZDdkODM4N2MgbGVnYWN5LXRydW5rCisyOTM0NiBkNGNmYTQwNDNjMDk0ZDdiYTBiZjA1YzZjNDEyMTQ5OTkzY2E2MmMyIGxlZ2FjeS10cnVuaworMjkzNDcgY2EwMjVlOWZlNWJjMmU5MDRiNDIzZWY3YWFlYWVhMDZiZjdmODdkZSBhc3QtYnJhbmNoCisyOTM0OCA4M2EzMmM1NDdiNDk5M2I2MGY1YTQ4M2E0ODJkZGE3YmU4ZmViZmYwIGFzdC1icmFuY2gKKzI5MzQ5IDA5OGNkYmFkNTVjZjJlNzYwNDJmNjcyNDQ2ZTAxODNiNDgxMjQzZGEgYXN0LWJyYW5jaAorMjkzNTAgMmQ3ZjQyNzcwNzMzMjVjYTg4ZGEzODdmMWE4Y2RmODE3ZTU0NzNjOSBhc3QtYnJhbmNoCisyOTM1MSA0NTg3ZDFhZjJjNDE0M2U1YTQ5MGFmZDYzYTlkMzEwZWJiMGI1NGFhIGFzdC1icmFuY2gKKzI5MzUyIGFhMmVhNWZmNWY0MjcwOWQ3NDhkNjhkOTdkYzgzYzE1OWUyOWU3YjQgYXN0LWJyYW5jaAorMjkzNTMgMDdjNmQzYjkyOTNjMjc1ZGM5NTE5OWU0MzZiYjZjMDNiZDRjYTk0NCBhc3QtYnJhbmNoCisyOTM1NCA0NmI1NjczY2EzODBkYWI4NDVhNWZkOTlhZDJiYjhkZWRiOTAxMjFkIGFzdC1icmFuY2gKKzI5MzU1IGUzNjVlNmJmNDFiYjAxZjY4MzJiZGYyM2JlMTE2ZDc5NGU1ODc3NDQgbGVnYWN5LXRydW5rCisyOTM1NiA0ZDUwMzE4YjNlYjE4MWRiN2Q2Mjg4ZmQ1NWEwMzUwMWViOTZjZTYyIHJlbGVhc2UyMi1tYWludAorMjkzNTcgOGQ0NGQ2MTQ5NDFkNDc3YTY2YmMzMTdmMDQ1NjMzY2RhMjIwYjYwOSBsZWdhY3ktdHJ1bmsKKzI5MzU4IDZmMTg1MDhiZWQzZDI3ODg1Y2JkZmZhZTlhM2RkMThlZDdlZmRmMTYgbGVnYWN5LXRydW5rCisyOTM1OSA3ZTgwZTdkMDVhMTZjODM5YjdkYTI3NWE2OTQ2ODMyYzRjODY2YzhjIGxlZ2FjeS10cnVuaworMjkzNjAgMzRmMTdmYjQ5YzUxMzExMDM5ODZjZTliMjE1ZDExYjRiMGU2MmJjNSBsZWdhY3ktdHJ1bmsKKzI5MzYxIGZlYzE1YmFkMzg2ZDlmMGQzMDcwNWM0ZDZjMzQ1MDQyMzE0YmIwMzcgbGVnYWN5LXRydW5rCisyOTM2MiBhNzBmY2M1ZGJiYTUwNWRkYjU1ODY5N2YxNzZhM2VkMDhhODRjZGYzIHJlbGVhc2UyMi1tYWludAorMjkzNjMgNTI5ZGE1MDVlYWJjNzMxMDM4OTMwYmY4NzExYmRkOWJmNDEyZjA5MiBsZWdhY3ktdHJ1bmsKKzI5MzY0IDE3NTA0MWUzNDU4N2E3NjFlYWJmNmU4NzBhYTkwNGE4ZGM5ODQxZjMgbGVnYWN5LXRydW5rCisyOTM2NSA3ZjAzMGI4ZjkxN2Q5MGIwMmM0ZjM5ZTBiMDJlMTFlYmVmMWM4ZWFhIHJlbGVhc2UyMi1tYWludAorMjkzNjYgZmJlYTcwYTQwMjkxNTQyMTgzMWZhNWNiMmExNDgwYTcxZjkyMmNiYSByZWxlYXNlMjItbWFpbnQKKzI5MzY3IGFjMjM5ZWUwYzllOGI4NzFkYTA4NmQwNGE0YzNkNjdmN2Y2NjZkNDEgcmVsZWFzZTIyLW1haW50CisyOTM2OCBjZjg3OTIwMzUxYWNlOTI3N2E2N2I5MTRjMzU4NTZmM2EyMDNjYmM0IGxlZ2FjeS10cnVuaworMjkzNjkgNDAyZmRhZTY3ZTQ0MGY0ZDg2YTU3MzkxMzc2NDRiZjU4Y2Q0YjFmZSByZWxlYXNlMjItbWFpbnQKKzI5MzcwIDE5NTAwYzliNThjMTYxYmZjNTNhNmU3YzYwMDZmNjU5ZWMzZTY5OWYgbGVnYWN5LXRydW5rCisyOTM3MSA1MDliYjBiNmRmYTNjYmNjOTBiNzM3MjBmYjg2OGU3NjQwNzgyYzc5IGxlZ2FjeS10cnVuaworMjkzNzIgMTI0OTI0NTIxMmU0NDYxNjFjNGY1YTdlZjdiMGNkYTRmZmJhYWM4ZiByZWxlYXNlMjItbWFpbnQKKzI5MzczIDM3ZDg3ZGM4MDNkN2E0YmQ2MmRlNzVmMTEyMmFlZTE3ZGMzNjg4YzkgbGVnYWN5LXRydW5rCisyOTM3NCBkM2I3Mzc3YzhhZmFkZTEyMDlkZjg5MDAwNDg3MjMzMjJlNzU3ODY0IGxlZ2FjeS10cnVuaworMjkzNzUgYzMzOThjMjVkZmVmN2Q5MDY1NmVkM2NkYTEzNzFhMzBjMmM2OTE5NSBsZWdhY3ktdHJ1bmsKKzI5Mzc2IGZiN2M1MmNhOTg0MDUxMGU2ZmYxYjZiMzc5MDEzOTM3NGRjZDc2YjQgcmVsZWFzZTIyLW1haW50CisyOTM3NyAwOTVkYmJlYmE5YzA0ZmQ2NDQzNTNkMzk1MWQ0MDgzY2RmNGFhOWY1IGxlZ2FjeS10cnVuaworMjkzNzggNDg3ZDNjMjQ5MGJjMDM1ODgxMjBlYWQyNWFkOTA3ZmE5ODVmMTBhNSByZWxlYXNlMjItbWFpbnQKKzI5Mzc5IDAzYzNmNjEwZTA1NDEzMDhiNGI1ODRlNmYyZTgzZDE1YjEyZTJlZGMgbGVnYWN5LXRydW5rCisyOTM4MCA1MTgyOGVhNTBiNTljMGU4MWU0Yzc3Y2U1MGE0MWM5ZjQwMjYwODUzIGxlZ2FjeS10cnVuaworMjkzODEgMTc5NDgyODc1Y2ZiYTVjNDBmN2Y4ODcyZjcxODllZTVmYWM4OTg2OSByZWxlYXNlMjItbWFpbnQKKzI5MzgyIDUwOTA1ZGIzNWRhNWIwZjA2OWZkYzRmMjVkNTliMDE2ZmM4YzE4YjcgbGVnYWN5LXRydW5rCisyOTM4MyA2ZWE5ZWVmOTkxMDg0Nzg2MzA4Zjk4NzhlYTYwMjNjZmE4OWY3MmZjIHJlbGVhc2UyMi1tYWludAorMjkzODQgZGYwNTVhOWVmZjljZjkwNzc4YzBkYmU2ZGMzMGE5MTBiMjBkN2MxMiBsZWdhY3ktdHJ1bmsKKzI5Mzg1IDBiYWM2NmUxYjM1NjkwNGVhZTQyZDc4ODBjZTdiM2ZhNDY1NWI2NzIgbGVnYWN5LXRydW5rCisyOTM4NiBhY2NkMmY1NGUxODQ3YWM0NWE5ZWQ4OTAzOTQxODRlMmFmMWViYThiIGxlZ2FjeS10cnVuaworMjkzODcgZDMyYzQ1ZDI3OGIyNDkwZGY1NWU5ZjcwODIzZjIxMWFhODQ4ZWFjNSBsZWdhY3ktdHJ1bmsKKzI5Mzg4IGY3ZGEzM2JjZTFkOTM5OTZjOGU3YmNmMjQ0NjAxNjM5ODJmODI3NjIgbGVnYWN5LXRydW5rCisyOTM4OSBmYmExNmI5YmM5NTE3ZjRiZDlmNTQzYTJmYzM4NjE1ZmYxZTVlODM3IGxlZ2FjeS10cnVuaworMjkzOTAgYjA2MzgzMjllM2I5YTFhOWI2NWJhMWI3MGJlNWMzMTBmYmJlNmViZCByZWxlYXNlMjItbWFpbnQKKzI5MzkxIGYyZGFlM2Q5YTc1YmQzYzNlNTg2ZGUyMmEyOWMxNmM5NDEyNDA3ZjkgcmVsZWFzZTIyLW1haW50CisyOTM5MiA4YmI2MDAzZjdmNTRjNTk2NmVhZWVlNDhlNmQ5MGJmZDUwYmYyMDBiIGxlZ2FjeS10cnVuaworMjkzOTMgNWI2ZDU1YjQ1Mjg3YzQzNGY2MmQxMGM3N2VhNDJmYjcwNzdiZWFkNSBsZWdhY3ktdHJ1bmsKKzI5Mzk0IDk5MDFmZGE3YzM2NjRhN2Y3NTMyMzJlOWVhOGRlOGVmZTAxY2ViNTkgbGVnYWN5LXRydW5rCisyOTM5NSA0ZWY3Njg2YzRjODg5ZjY3MTY2ODYyYjIzZWI0MTZkOTkxYjY3MGYzIGxlZ2FjeS10cnVuaworMjkzOTYgNGY0ZTAyNjBiNzcxMzIzODEzZjM3Y2Q5NWEwYmZmMTVjMTFkZmI1YiByZWxlYXNlMjItbWFpbnQKKzI5Mzk3IGU4ZmM0NTllYzAxNTU4NWJmYjEwMTI5NzE5YmYxNTE5ZmMzNjE5NWMgbGVnYWN5LXRydW5rCisyOTM5OCA2ZTQxNGZiYTQ2ZjY4YzI5YTA4NjVjY2M1Y2U0ZGE5ZGRkNTFlNWEzIGxlZ2FjeS10cnVuaworMjkzOTkgODM0YjBlMDM4OWM1YTliM2E5Mjg5NTQyNWM3NGQ2OTcwNGEzOTc1YyBsZWdhY3ktdHJ1bmsKKzI5NDAwIGRjNGEwMzM2YTJhMzNjYzFjNmE4NDlmNDMxZDUzODM2MjcyMjY2ZGUgbGVnYWN5LXRydW5rCisyOTQwMSA2ZDU1NDJjYTI3N2EzOWE4OTc2NGM2N2EzNzA3ODI1MmFmMzk1NjRkIGxlZ2FjeS10cnVuaworMjk0MDIgNTg5NDFmY2I2ZjViYzE1NmExYjFlYjhjZDQ1MjQ3ZDc0NjI1Mjg1MiBsZWdhY3ktdHJ1bmsKKzI5NDAzIDcwNDkyNjhmMjUyZDI3MjVlNzhkOTU1NmFkYzlkN2M4NDNhZWRjZGMgbGVnYWN5LXRydW5rCisyOTQwNCA3NTc1NmM4NTU4YmQ5MTE3MWNjNTg0MDczNzM2NWRjZTllZDVmNTQ1IGxlZ2FjeS10cnVuaworMjk0MDUgZGVmOTYwOWQ5MzY5Y2E4YWU2ZWUyOWQ3YTNhNWYzNGFmOWViZTQ5MiBsZWdhY3ktdHJ1bmsKKzI5NDA2IDMwNjViNTRlM2FiNzFiZjE3ZGYyNmExYmQzYjBiMDdkN2NjOTdlZmMgbGVnYWN5LXRydW5rCisyOTQwNyAxMWZjY2NjZDM2MDA0NzkxNjc0YTQ1ZmJmMjRjYmUwMmRkOTIyNjZmIGxlZ2FjeS10cnVuaworMjk0MDggNzkwNzI5NDc3NjEwZWE3N2I4MTY3NzNiZDczNjAyNmZkZDVlOTlhZiBsZWdhY3ktdHJ1bmsKKzI5NDA5IDA0Y2MxMmJkY2VkZWFhNzViZDU0YjBlNjI5ZmViMDMxNGM1ODhkYWUgbGVnYWN5LXRydW5rCisyOTQxMCBiZTg4MTYxNDg0OGIyODg2M2ZmMjNkNTdmZTAxMDdlODk2NmZlYTAzIGxlZ2FjeS10cnVuaworMjk0MTEgOTQyNDBhZDUwZGJlMmU3MWI4Y2IzZDY4ZmVhOTUxM2VjN2ZlZDc3NSBsZWdhY3ktdHJ1bmsKKzI5NDEyIGI2ZWU4MDQ3YjI1MGQ0YTk0ZGZjYzk2ZjhhOWU1ZWMyYjAyNzYzYjIgbGVnYWN5LXRydW5rCisyOTQxMyBmYjU3ZDU3NzdhMjQ5MmI3MjczZjA0ZjVjOGEyNDA5M2E2YjQwNjI3IGxlZ2FjeS10cnVuaworMjk0MTQgNDhlNDYxMmY4N2NkOTI4YjllZjdhYzk3YzNlYzZhZjM5ODA4N2ExMyBsZWdhY3ktdHJ1bmsKKzI5NDE1IDQzZjcwMTA5Y2RhNWM1NThiZTI5NjY5YzVmNDkyODkxNmZhNDgwODkgcmVsZWFzZTIyLW1haW50CisyOTQxNiBlMWRiMWY5MGUxN2Y5ZDM3MGYxMjc3ZmFlOTRkNzY2MGExNTRhYzhmIGxlZ2FjeS10cnVuaworMjk0MTcgN2I3NzNhMTI3MWMzZGYzODI0ZjcwOWUwNGM4NWVmNmI3YTk0OGIzZiBsZWdhY3ktdHJ1bmsKKzI5NDE4IDNkYjc3MmQ0NWY5ODg2YzliYzIzMDE2NDJiMGM5Mzc4ZGZlMjY0NGQgbGVnYWN5LXRydW5rCisyOTQxOSAyNmI0NDBjMzdjOTRjODkyNjFjY2Y5OTMzYzZjY2UzZjU2YTJjZTM3IHJlbGVhc2UyMi1tYWludAorMjk0MjAgMjUzZTllZGZkZmMwNjBmZjc3YjQ4OTZmNGFlMmI3NzFjZjA5ODliZSByZWxlYXNlMjItbWFpbnQKKzI5NDIxIGFhZTM3NjRjNGQ1OGQ0OTFmNGM2NWYxYWEyZTAwNGNlMTAyMWI2ZTEgcmVsZWFzZTIyLW1haW50CisyOTQyMiBiOTI0NmY4ZmI4ZmQzMDRjZWM3MzZlZWJhYTFkMjI5YTk4NzBlOGFkIHJlbGVhc2UyMi1tYWludAorMjk0MjMgODA4ZTUxM2EyZjVjMmZjNDg4OTZmODdhNzYyMTNhYTBkZTYwOWNmZCByZWxlYXNlMjItbWFpbnQKKzI5NDI1IDg1ODVmZDlhZWNlZjk1YWRlNjU4NWY4MWQ4Zjc5YTEyZDY0NDlmMjEgbGVnYWN5LXRydW5rCisyOTQyNiAzNmQ0MThiZWE1NTIxOGYwZjBmNjEwNDgzZjI1NmE0OGI2Mzk4YTU3IGxlZ2FjeS10cnVuaworMjk0MjcgNDQ1ZmViMjZhZGZiOWFhNTIwMWYyNjQ1NWViYjMwODA0ZTlkYTYxZiBsZWdhY3ktdHJ1bmsKKzI5NDI4IGY0ZjE3Njc4ZmRkODY1OGRiYTRiZmZkOWU5MjAyMDFkMTBmZjMwN2MgcmVsZWFzZTIyLW1haW50CisyOTQyOSA5NDllZDgzNjVkNThkMzUxYmM3MjA1NTZhMzFlZDBmZTJiYjU0YWEyIGxlZ2FjeS10cnVuaworMjk0MzAgMThlZGYyM2JmNDk5M2Q3MTAyOTQ3ZTM0NDc4OWUzYzEzNWEwNDNlZiBsZWdhY3ktdHJ1bmsKKzI5NDMxIGRiYTYwZDAyNGU0ODQzNjNhMmY4ZTljZDM5NzRlZWNhN2I0NGFiMTkgbGVnYWN5LXRydW5rCisyOTQzMiAwOTY2NDJkN2VjYTI1YmI3ZDJjYjIyNjMyNTg4YzUyMTgwZGM3MmUwIGxlZ2FjeS10cnVuaworMjk0MzMgZmM2YTE5ZjY5YWM3ZTJiNjBlZTc5Y2VmYTJmZmMxNjNlMmQwOWYzNyByZWxlYXNlMjItbWFpbnQKKzI5NDM0IDAxYmY5Yzg4ZDk2MDM2YjY2NjJhMTU5MjdhZGQyNmMyNGM0NTZjZTMgbGVnYWN5LXRydW5rCisyOTQzNSA3MjczNGIzOWY4YWEwYWNmNTI2YWQyM2E2NzlhZWZhNDZhYTAyOGFlIGxlZ2FjeS10cnVuaworMjk0MzYgZDkwZWY0NmQwODM4MjhiYzk1YzBiZDQ2YjkxMWVmZWJjOTJiZTczMSBsZWdhY3ktdHJ1bmsKKzI5NDM3IDRhMjRjNmE2NDI5YTY2NzM1MDdlM2E2Yjc5NTMwNmY1OThkNjc3MTkgbGVnYWN5LXRydW5rCisyOTQzOCA5MWQzZDQ0NTJjNDgyMjBiNDY3OTVjMDMzY2M0Y2JlNGYzMDU3YjE2IGxlZ2FjeS10cnVuaworMjk0MzkgZTM0OWZlMDkzYjM0YTkxODQ5ZDE4OTlhZGE1NWJhM2IyOTliN2QzNCBsZWdhY3ktdHJ1bmsKKzI5NDQwIDMyM2U0YzExNDZkMGM2MDI1ZjZiZmRlNDhjMmYxMDY0MzBlNzIyMGYgbGVnYWN5LXRydW5rCisyOTQ0MSA1NTE3YzM2YWM0OTdkYzM2NDBiMDZiY2RiOTFlZDk0Mzk3YTg5YTc0IHJlbGVhc2UyMi1tYWludAorMjk0NDIgNjg3NWJkN2NiNTcwNTczZWVjMzNjYmU2NzQzNWViMTkwY2NhYWJlYiBsZWdhY3ktdHJ1bmsKKzI5NDQzIDViODI4ZmZlMWIzNWYwMWVlNmNiZTM3MDIxNWU3YjNjN2Q5ZDliNzUgbGVnYWN5LXRydW5rCisyOTQ0NCA0MjUyYjA0ZjNlZWQ2MzRjZTIzY2NkMjA3ZjhlNTU2NDQyZjE5NDg2IGxlZ2FjeS10cnVuaworMjk0NDUgOGU3MzM4MzQ3NGVhZWI3ZWUyOTJmNmQzOWI2MzlkYzU2OTUzYjUwZiBsZWdhY3ktdHJ1bmsKKzI5NDQ2IGQ3ZGEwODBkNzc2MzA0YzhiYzM5ZWQ3NTdkZWIxN2VhZGFhMDlmZjEgbGVnYWN5LXRydW5rCisyOTQ0NyA0NzJhNDJlMjAyNDQwOWFkYzU5NjBhNjMwMTJkMjI5NWY4YjAzOTBlIGxlZ2FjeS10cnVuaworMjk0NDggY2I4Mjk4YTZlZDQ3YzQ0ZGRmMTA2NTFhNmU3MDJhZTQxOTY5MTcxOCBsZWdhY3ktdHJ1bmsKKzI5NDQ5IDY2NjJmOWQ0MjIwYjVjZGEwNjQ1ZTE2YjYzOWIzYWE5ODRmMDgxNmEgbGVnYWN5LXRydW5rCisyOTQ1MCBhNjhjNmQ2MmZlNzg4ZGY0MDA0OTFkOGY2ODhhZWYzOTcyOWM0ZmQyIGxlZ2FjeS10cnVuaworMjk0NTEgMDQwYWY5YzczNmJiMTk4YmU4NTM2MzI3ZmJmMTI3NTNkZTVlYzdjMCBsZWdhY3ktdHJ1bmsKKzI5NDUyIGI2NDc4ZDQ2MzU1NTRiZTE1MjlhZTk1ZGE4OTEyNGVjZDViZDMxNmUgbGVnYWN5LXRydW5rCisyOTQ1MyAyZDgzN2UyMDgzZmFmMzUwOTQyZDZjNDZmNmQ4YjhlNjZhN2U4ZTQ1IGxlZ2FjeS10cnVuaworMjk0NTQgMWQwMmI0MDVlMzFmYjIxOWMwNzUyZDQwMjI5OGY1OWQyMDA1OTU2ZSBsZWdhY3ktdHJ1bmsKKzI5NDU1IDRmMWI3Mzk2YTNjNTQyNjg5NDQ3N2U3MzFlYmI4MDkzMzE2M2NiYTMgbGVnYWN5LXRydW5rCisyOTQ1NiBkODEyYjhhYWVmYjMxYjQ2NjJmYjZiNTZjZDk2OTljN2M3NDRiZGE3IGxlZ2FjeS10cnVuaworMjk0NTcgMDE0N2ViZWY5NDUzYzM2MWY0Mzg0MmE5ZTMzN2E1YmM0MWJiZTFjZiBsZWdhY3ktdHJ1bmsKKzI5NDU4IDA2ZTAwNTY2NmM0MjI5MWY4ZmRkMGI1NjUyZDVkNDYyNGEyYTgyNDAgbGVnYWN5LXRydW5rCisyOTQ1OSBlMWJmNDYwNGMwYTU4NGIxYmIxODA0ODIzOTA2NTU3N2U4MjZlMmE5IGxlZ2FjeS10cnVuaworMjk0NjAgZDMwOGRmODI0ZTJkMTViYzAxMmY5YzE3ZGIyNTczY2YxOTAxZGIyOCByZWxlYXNlMjItbWFpbnQKKzI5NDYxIDE1MjIxOTgwNzE0NDcyZDEyMzRhMDZiYTRiMTk4YzczYjE1YWMyNzQgbGVnYWN5LXRydW5rCisyOTQ2MiAxNDI1YmVhMmVhNjZhMTBjOGRiMzhiYmEwM2E1ZDg3NDAxZDc4NzQ2IHJlbGVhc2UyMi1tYWludAorMjk0NjMgOWNlZDNlNTE4N2VlMWQ2NjU4ZWQ0MGUzMWZkYjEwNzQ0ZTVmZDY3NCBsZWdhY3ktdHJ1bmsKKzI5NDY0IDZlMTFhZTA0YWYxMDk0OWE2MGU1ZGJjYWY3MDhiN2VhMzAyYjcwMjUgbGVnYWN5LXRydW5rCisyOTQ2NSA5MGY0ZWVlZmM1MTZmOWYzZDNlMDdjMTA1YzMxYWRmMzdmMTAwYjgyIGxlZ2FjeS10cnVuaworMjk0NjYgNjExYWY3OWMwZTg5MmI0ZWMzNDNiYTBkOWYyOWM5NTJiZDkxZmRlZSBsZWdhY3ktdHJ1bmsKKzI5NDY3IDI3M2NhZDdmN2RmNzIxOTY3ZGFiYjRjNDRlMWVkNzNhNzQyZTQxYzQgbGVnYWN5LXRydW5rCisyOTQ2OCAxOTc2MmE0OTM2ZmM4NGI0YzA5Y2UwNWY0NmUxOTFhMjYyMGUyZGZhIGxlZ2FjeS10cnVuaworMjk0NjkgMGZkZmNjZGZlYzA2ZjJlZWMyNDViM2FjYmM5MTczZTIzN2M2MmU5NiBsZWdhY3ktdHJ1bmsKKzI5NDcwIDkwYTA5Y2QxNTMwNTkzMWRmNWQwMTc2NDMyOGI2MDk3ZTgzYWI5YTkgbGVnYWN5LXRydW5rCisyOTQ3MSBiYjgxMzM0NmIyMjdlZTFjOTY0NjFmMmMzZTVhMzk4OTRmZTVlN2ExIGxlZ2FjeS10cnVuaworMjk0NzIgMWFhYTEyYzA4YjM1OTQ5Zjk0ZDUyOTY0YTZhZDY2OTdlMDg2ZWEyYSBsZWdhY3ktdHJ1bmsKKzI5NDczIGE3NTM2Y2ViMDZmNjNjYmZlZmMyMDkyYWVhY2NiNmQyNzhhNjM0ODAgbGVnYWN5LXRydW5rCisyOTQ3NCA1NDhlNmZmYmZmNzU3YWI4OTZhY2UwODkyNTA2OTc2MjhmMmFmY2I3IGxlZ2FjeS10cnVuaworMjk0NzUgM2YzYjdhNjA4NmI3M2IzYmViMGM4NzdiODM2ZTdiYjU5ZGE5YzJkOCBsZWdhY3ktdHJ1bmsKKzI5NDc2IDhhODhlOTc3YTcxYmJlNjNlYzBiN2M2NzJmYTcyZDNmMGY0MTJmMDUgcmVsZWFzZTIyLW1haW50CisyOTQ3NyA4M2QyMWVhOTQ1N2RiMmVjZmM2ZDE5MTQ2M2Q5ZjJiZGY5YWUyOWJlIGxlZ2FjeS10cnVuaworMjk0NzggYmRlMzY2MDU0MmNkM2UxOTBhYzk4ZjZiZDVlYWJkNzRiM2I5OGZlMSByZWxlYXNlMjItbWFpbnQKKzI5NDc5IDQxZWNhZWM1YjRmODFlZjgzZGI3ZWNjMzUyMDIwYTNkY2ViZWI2YmUgbGVnYWN5LXRydW5rCisyOTQ4MCA3MjA1N2VmOTAyYWFlZTA3MGQxMWZjZDMzZjM0NDFiZGY3NTY2MTJjIHJlbGVhc2UyMi1tYWludAorMjk0ODEgMjhjZmY2MGE2MDk3MDJkZTc5OTE3MTk2NDBlOTYwNTkxZDY3NmQwMSBsZWdhY3ktdHJ1bmsKKzI5NDgyIDQ5NDZkNGYzN2Q4NGUyYWE0ODg4ZGMwZTFhYWM1NWVmODg5OGE5ZjEgcmVsZWFzZTIyLW1haW50CisyOTQ4MyAzZDYyN2UzZDk1NjEzNjUyMWFhN2I3NDQzM2QzMzcxMzUyMzlhNTE0IGxlZ2FjeS10cnVuaworMjk0ODQgMzFiNTg0OWNhYzQyZmI1ODEzNDE1MmJmMmQxMDQxOTRkOTUyYzIyNCByZWxlYXNlMjItbWFpbnQKKzI5NDg1IGIyOGU5YmYwZjA0NmFlOWEzY2M5ZDEwOGEzNDMwOTZmNDE1Zjc2YjcgbGVnYWN5LXRydW5rCisyOTQ4NiAwMjllNzVmZmU3NTBkMzRjM2FkZTA1MjIxMmUyMzBjZGZkNjk2Y2ZjIGxlZ2FjeS10cnVuaworMjk0ODcgMzZlYTMxYmM5MDc2NTBlMTA0Zjg4NjdlZjM1MThkOTllMjkxMmY1MSBsZWdhY3ktdHJ1bmsKKzI5NDg4IDAzYjAyNzBlMTE2YjM3MmE1YzgxM2Q4ZjA0MWQ5ZTJmZmIzMDFkMWIgbGVnYWN5LXRydW5rCisyOTQ4OSBjNmNhMzliMTU4Y2RmOWIzNjAzZWY4MzE5NTg4YzZlMTAxZTc1MzI3IHJlbGVhc2UyMi1tYWludAorMjk0OTAgMzI2M2FkNGZjZjgxMWExNTdlYTk5MGVjZThiOTM4YzhkYTgyZTlmOCBsZWdhY3ktdHJ1bmsKKzI5NDkxIGQ0MjQ1NThkMjRmOTAzMmE5YWEwZDc1NTRiMzE0YTYyYTNkZmRjNTQgbGVnYWN5LXRydW5rCisyOTQ5MiA1YmU1Yzg0ZGVhMjNmZjcwMjQ4ZDY0MjlhMmEzODJlYjYyNTZjOGY1IGxlZ2FjeS10cnVuaworMjk0OTMgYmQ2NzdjOGU0MDY3MDI0OTQ2YWNkNmYwYjk2MDM5NDI2ZDZiNTdmYiBsZWdhY3ktdHJ1bmsKKzI5NDk0IDM2ZGU1YTczMTI1N2ViYWIxNGVjMTFmZGZjMjhlZjQ2NjRhZTkxYjEgbGVnYWN5LXRydW5rCisyOTQ5NSA5YmZkNDdhOWM4YjM1MDE5NGJmZDU5ODVjMjMyOGVjNDMyMTlhYzM3IGxlZ2FjeS10cnVuaworMjk0OTYgNmZhNWM5NTQwOGViZDg0NDE4ZjgwM2YxYTNmMGExNzA4N2I1YTU2MSBsZWdhY3ktdHJ1bmsKKzI5NDk3IDhlMzI0Njg0Mjc3MzRjOWFhMTZiNTQyMTA2NGJlYmIxNzlhNjgzY2YgbGVnYWN5LXRydW5rCisyOTQ5OCA3NTgzMDFlZTBiYjc2NWM4YWRlNzliZjY0MmExYmQ2ZTE2M2I3MWZiIGxlZ2FjeS10cnVuaworMjk0OTkgZjU0ZTg5MjcyYWRlZDI5NTNiMTlhMjY3MTYzMDljNGZiMmExODhhMSBsZWdhY3ktdHJ1bmsKKzI5NTAwIDliNDczODZiYTViODA1NGM3N2ZlNzc5OWU3ZWZlY2ZiZDg1NGY0MTYgbGVnYWN5LXRydW5rCisyOTUwMSAxMjQ0ZjRjMzgzNGY0OTAyMmZiZTgyYmI0YTE5NWM2ZDQ1YzZjYTI1IHJlbGVhc2UyMi1tYWludAorMjk1MDIgMThlMDk3MjA3MzhmNmZmNTMxZDc3NDY1NTRiOWYwNGFhZjAxNGNiOCBsZWdhY3ktdHJ1bmsKKzI5NTAzIDBiZGEyMGFmZTYyMzNmYjM3ZDI5OTE0M2Y0ZTQ2ZDY1ZjBhNDJhYWUgbGVnYWN5LXRydW5rCisyOTUwNCBkNjhmYzQ5YTcwOTYwMWJjMDA5YjMyYjk2YTVjZDRiODJiODg5MWMzIGxlZ2FjeS10cnVuaworMjk1MDUgNjRhOTZiOTdlMWU5N2NlYjdjZDVjNjNlYjczYmQwZmVmZDZmNjYxYiBsZWdhY3ktdHJ1bmsKKzI5NTA2IDJkZjk4ZmYyY2RkYTFhNjUyNzY0MTFjZTEzYjRkYmFkNGU2OTQxNDEgcmVsZWFzZTIyLW1haW50CisyOTUwNyBhMmYzNjkzNDYzOTMwN2ViZmUwNjhjOTQ3NjA3OWE2OTU1MDNjMDllIGxlZ2FjeS10cnVuaworMjk1MDggZjU0MzlmODEzM2Y4NTdiMzg5ZjY5YTRhZWE1YTExZGQzMTU4ZThiOCBsZWdhY3ktdHJ1bmsKKzI5NTA5IDIyNWVhMWY1MmRlOTVhOTE5NjA1NWViOThmZDFhNmE1ZTBmMDYzYzkgbGVnYWN5LXRydW5rCisyOTUxMCAxZGU3YWM3MjliZmE5MjNhMmUwMGQ2MjU4ODI2M2EzOGExM2JhODU2IHJlbGVhc2UyMi1tYWludAorMjk1MTEgMTgzZmMyMWZiODY2MjMyM2RjYjMyOTgwM2YzM2VlY2E2MmNlMDBlYSBsZWdhY3ktdHJ1bmsKKzI5NTEyIDZlZDJlMjNhYWU0NTY1MjM4MDZlMmZkNzEyZjQ2Nzk3ZWRmZDQ4NGIgbGVnYWN5LXRydW5rCisyOTUxMyA3NzFiNmY1MjFiOTU2MWQ4ZTQyZTkyNGQxYTE1NDMzZTRjNjkzOTIzIGxlZ2FjeS10cnVuaworMjk1MTQgNTIxZTg5YzRmZjQ0NzgyMDkxNzNhNDU4OTg4ZjMwMDYxYjEyYTYzYiBsZWdhY3ktdHJ1bmsKKzI5NTE1IDNhNzYwNmEyMjM3YmI2OTU3MjFjZDA2MzkxNWIzNWE1MDJkZDY5YTYgbGVnYWN5LXRydW5rCisyOTUxNiA1MjVjZGRiNzY4MmFjZWU3ZWQ4YjkzODY0YTU3OGQyMWU4NzIwMWFiIHJlbGVhc2UyMi1tYWludAorMjk1MTcgZTlhYTM5NGM3MTkxNzI3ZmJhYzVmNWU4NWQ4M2VkMjljOGY2Yzk3NiBsZWdhY3ktdHJ1bmsKKzI5NTE4IGNlMzY5Y2Q1NjI2YmU3MTQxYjNiODJhNmY4ZDJkOTZiMDg4YmNjYWMgbGVnYWN5LXRydW5rCisyOTUxOSA0YjgwNDRkMWYxYWMzMjgxOWE2YzBiNjAxMTljNzA2ZjU3ZDkxYjBmIGxlZ2FjeS10cnVuaworMjk1MjAgOWRhMDI2OTM3ZmE1MjgwOTUwYzU4NzliMGQ2OGY1ODA0M2M3OWE1NCBsZWdhY3ktdHJ1bmsKKzI5NTIxIDFjOTlhNWEwYjg3YmRlNjAyZGRhMGZiZWRjZmU0MzVhMTRlNDg1NGIgbGVnYWN5LXRydW5rCisyOTUyMiA2ZWUyZjliNGJmNWM0YjcyZmMxMDc3NDU1NjNiZTk4ZjFjOTJmMzYyIGxlZ2FjeS10cnVuaworMjk1MjMgMWRiYWJjNWJlZmY3ZjU1YTliYmM0MDJiNWJhODNlNzgzYTYwMzhiZiBsZWdhY3ktdHJ1bmsKKzI5NTI0IGE1NTk5NzQwYTZlODBmOTA4MjFhNmU4MTdkOTU5YmRhOGNlNmZjZTMgbGVnYWN5LXRydW5rCisyOTUyNSBiNGE2MjgzYjkxNWJjNjFkNWI2Njk5ZWMzZjQ5NWEyZThiZTkwN2U5IGxlZ2FjeS10cnVuaworMjk1MjYgNTgxOWM0NDM5YmEyNDY0ZTlhMzQ0ZTQ3ZDQ3OWYxZjYyNDEwMjM0ZiBsZWdhY3ktdHJ1bmsKKzI5NTI3IGM1NDcxNmFlZDI2YTA2ZGVhYTZhOWQ1MWUyNDg4YWUzOWYyMzFiNmQgbGVnYWN5LXRydW5rCisyOTUyOCAxYjRjNWU2NmE0YjRhZDE3Y2ExMDViYzQ4ZmM5ZWU2ZDA3MDQ5ZThiIGxlZ2FjeS10cnVuaworMjk1MjkgODEyMTM1OGUzMjE3MDNhNTc0ZTg5ZjA3ZDQ2MzU3MDFmYjYzOGFiMiBsZWdhY3ktdHJ1bmsKKzI5NTMwIDY5Njg2NGFhMDVkMzM0MzEwMjUwNzAyNTYwZmM5YWQ2MTYwNzAxNjEgbGVnYWN5LXRydW5rCisyOTUzMSA2YTQyNTM2ZmI5ZWViYjk5MDBlNGViYmFmMzlhOTE3NjU5MWFkODMxIGxlZ2FjeS10cnVuaworMjk1MzIgYmEyMTk0YWQzYjQyM2MzZWI4M2M4ZDQzODA4MGI0MjYwOTk5OTBkNSBsZWdhY3ktdHJ1bmsKKzI5NTMzIDFhMzBlZDE5ZjY0YWZmOTBjMGUxZTYxMDVhMmYzMTAzNTBlODlkMzIgbGVnYWN5LXRydW5rCisyOTUzNCAxM2IyZWM1MzZlMDcwNWU5ODEzYzNkY2E1NmM3NDM2YmI0ZGE0Mzg0IGxlZ2FjeS10cnVuaworMjk1MzUgOWRkOTM3OWFjNmQ2NzkzYjc3NjhiMWI5YTNjNWNkNGI4Mzg5YTBjYyByZWxlYXNlMjItbWFpbnQKKzI5NTM2IDNjMjNlNGMzZGEwMjA4NmY1YTZmY2I3MmUzNDc2YWYyODg3ZDY5YmQgbGVnYWN5LXRydW5rCisyOTUzNyA5NTFkYWNjMjE4NDdkNzA1MGYyMTg3OTQ4YWY4Y2VkNTFmMDAyNzE2IGxlZ2FjeS10cnVuaworMjk1MzggOWI1YjdkYTM2MmE1YzZmYTVkZWYzMjAxYmI1NTQ3MGM3N2Q2MmM0OCBsZWdhY3ktdHJ1bmsKKzI5NTM5IDBkYmQ2YjczYWJkMjMxZjEzODlmOTZlNjNkZGQ2Y2YxNDc5ZDU0ZTIgbGVnYWN5LXRydW5rCisyOTU0MCBmZTZlOTg5NGMyZDQyYTRiYWVjYmQwNmM4ZDk1YWI5MjliN2UwZjViIGxlZ2FjeS10cnVuaworMjk1NDEgOTUxNDA3OTMyMDAxOWQ2OWQwMTc3ZGQ4MTJlMzFhOGU4NzlhNDA3OCBsZWdhY3ktdHJ1bmsKKzI5NTQyIGQyN2U1Y2FkMzhkNzgyNGU0ZTg4MDlmMWVjMWRiZjExYTMzMjliY2UgbGVnYWN5LXRydW5rCisyOTU0MyBlZjU4OTNiYjc5ZWYzOWM5OWM3NTY0ODE3NDExZWRhNTkxOTYxOTUyIGxlZ2FjeS10cnVuaworMjk1NDQgODdiN2ZhZTEwYTE5MzA3NzdiOTNhMTcyZjFhNzBiMmRhMGU3MmVlZiBsZWdhY3ktdHJ1bmsKKzI5NTQ1IDg2OGZmMGRmYWJkMmNiYjA2NDk0MGEyMDliYzMwODBhZWFmNDVlOGEgbGVnYWN5LXRydW5rCisyOTU0NiBmMmVkNzIyZmYwMDM1MGMyNjA4MWE2YmNjOGU4NGQ5MWEzMWVkOWI3IGxlZ2FjeS10cnVuaworMjk1NDcgODhiYmMzMGIwODQ3OGQxMzI2NzMyYWY5NWM0NzFlN2JjZWVhMmEwMiByZWxlYXNlMjItbWFpbnQKKzI5NTQ4IGIwNjNjNDNmNGRmMDMyY2U4ODFkMTFjNTc4MTJkMDg2ZTZhMTYwZDggbGVnYWN5LXRydW5rCisyOTU0OSBkYWIyYzEyYjY4MmU3ODc1NTg3MWMzN2JhZTk0ZTk5YWIyY2Y1NzU3IHJlbGVhc2UyMi1tYWludAorMjk1NTAgN2ZhOTNiNWRkZmJkNDkyNTdlNDMyMjRhODA5Mzg4MTU1OTY4MGYwNSBsZWdhY3ktdHJ1bmsKKzI5NTUxIGQyYmU3OTZjNGI4MWQ3YjlhNzM3MmJhNjFhNGExY2JlYjA1ZDY5MGYgbGVnYWN5LXRydW5rCisyOTU1MiAxYWZjYTM3NWYyYTllMzZmMjg5OTE1YjA2MjM1MjI4YWQ1NDA5NmFmIGxlZ2FjeS10cnVuaworMjk1NTMgZjNkNDQ5MjZhMWJlZmRlZmQ3ZTBmYTg4NGI0ZGYxN2FjZDIwNTFhNCBsZWdhY3ktdHJ1bmsKKzI5NTU0IDk4MzIyYzA3NWY0ZDk1Mzg4NjI1YzdiMGJjZTFkNTE3N2Q2NDM3ZTAgbGVnYWN5LXRydW5rCisyOTU1NSA1M2EzODIzNDQ4ZDkzYWYyM2Y3ZTljNDI5NGFhMmQ4NWUxZGY4NjM5IGxlZ2FjeS10cnVuaworMjk1NTYgY2FiMTY3NjEzZTQzYjczN2JmOTU0YzgyZDQzZGNmNWEyOTk4YzU3ZiBsZWdhY3ktdHJ1bmsKKzI5NTU3IDEzYWY4MGYwMjA4MDA4ZjEyYTAwMGZhOWE0NjkzZjU3MGJjYWNmY2QgbGVnYWN5LXRydW5rCisyOTU1OCA5OTlhY2NmYTkxYzU2ZGE3YWE4ZWIyMzI2Mzg0YzY4MzMyN2YyZWNlIGxlZ2FjeS10cnVuaworMjk1NTkgZjNhNjQwMzViYThiZjE5NjMyOTUzNGUyNzgwYmRmYzk5YjE3ZDNhYSBsZWdhY3ktdHJ1bmsKKzI5NTYwIDJjMWJiZmMxMjJjMWE2NmZlZDI2NjQwZDJlY2UxMjA3ZDIxM2E4YjIgbGVnYWN5LXRydW5rCisyOTU2MSA0YTI4OGI0OTRjYjJjOWE4MGFkM2UzZDQxOTI3MzRhMGNmMWU1OWRhIGxlZ2FjeS10cnVuaworMjk1NjIgZDY5ZThhOWZlZDExZmNmMzU5ODI0NTA5ZGMxYzJmZjlmM2UxYTg2ZSBsZWdhY3ktdHJ1bmsKKzI5NTYzIDM0ZTcwYjg5YmJiNzIzMjQzYTY5MjBkMGUyZWJmMzkxYjc2YWM0MTAgbGVnYWN5LXRydW5rCisyOTU2NCBiNTY0ZWM0YjdlNWIzMzE5ZTQyYzM3MjY5MGY2NzMwNDU5Yzk4ZDk5IHJlbGVhc2UyMi1tYWludAorMjk1NjUgZjM1MzczMTdiMWIyNWE2ZjFlMDQ0YmY1NTA4MjZjMzE0Nzg5MzFiZCByZWxlYXNlMjItbWFpbnQKKzI5NTY2IDM1MTU4ZmQ2MGIzYmEyMmI3MmQ4YWYzOWM5MTc3OTRjZGY4NzViOGMgcmVsZWFzZTIyLW1haW50CisyOTU2NyA2MmY4OGMwMmM5ODcyOGYzMDZlYjZiZDFlMjdhYzdiODA1OWJlMzVlIGxlZ2FjeS10cnVuaworMjk1NjggZDk0NzRjMDQ0NWJhYmY1NTZhZTQxNzI4YjI1NjVkMDQyZDkyOTcxYyBsZWdhY3ktdHJ1bmsKKzI5NTY5IDUyNjUyZmI4NjQ5ZDczMWFkOWQ3MDlhYTNhZjg2NzY2Mjg2N2ViMDAgbGVnYWN5LXRydW5rCisyOTU3MCBmZjFjNjA0NmYxMGI5NDdmNjFhNmY4YTg3MDY0NjcwMGQzZTNlNzAzIGxlZ2FjeS10cnVuaworMjk1NzEgZjYyZjc3M2JjOWZkZDJhMmQ5YTBmNmEzM2FjOGIwNGEyYjM0MWEyNCBsZWdhY3ktdHJ1bmsKKzI5NTcyIGY0Njc0MjdlMDNmYTlkNWNiYzFkMzIzMmJjYTc4NzVmNTM0NWExNWMgbGVnYWN5LXRydW5rCisyOTU3MyBjYmJmN2YyNDI1ZDllMTA4YTI2NDkzMWE5YWYwNGUyMzVkZmYxZDVhIGxlZ2FjeS10cnVuaworMjk1NzQgZTUyNjM2NWRkY2NkZmQwZWRkMDA5OTliMGM5NGU1NmNkMDRlMDdlYyBsZWdhY3ktdHJ1bmsKKzI5NTc1IDkzM2M2ZDYwOGQwMWIzY2Q0MzA5N2EzMjI2MWZjOTE5YjNjZWQxYjggbGVnYWN5LXRydW5rCisyOTU3NiAxMzVmMDhiNzNiZDVkOGIxZTcxMGExY2Y5NWIwYmYzOTU2NmYxY2ExIGxlZ2FjeS10cnVuaworMjk1NzcgNzU2MzE5YTEzN2I4MzI2ZGYwYTBjODJlNWRmNTUxMjU1NmI2YWY2NyBsZWdhY3ktdHJ1bmsKKzI5NTc4IDA4MjBhZDQ5ODI5ZDgwYjk4NzU4MzRiYzMyN2JiYWQzOGJhMjZmMWUgbGVnYWN5LXRydW5rCisyOTU3OSAxZjM2NWI5OGYxMWNjNTQ1YWIxYzZlOTcxYmVhZjQ3NjRkNWVjNzE5IGxlZ2FjeS10cnVuaworMjk1ODAgMDgxMTkwNDg0YWY2MTYxNmFhMWM3ZWM5NTQwNmFhYjIwNzVjZmQ4YiBsZWdhY3ktdHJ1bmsKKzI5NTgxIDAwODQ4MzQyZDQ5ODRhZTQ3NWMzZDA5OGM4MzdiYTllYjQ2ZWZhYTAgcmVsZWFzZTIyLW1haW50CisyOTU4MiA1M2U5MDQxZWZiZTNmZDZhNDkxOThmNjZjYjBmNDdmNGQ4MzIwM2Y1IGxlZ2FjeS10cnVuaworMjk1ODMgNTQwODgxZWUyZDRhY2M0YzU4ODY3MzkwYTk2N2E3N2I1YTUyOWMyOCByZWxlYXNlMjItbWFpbnQKKzI5NTg0IGVmM2Y2OTI5ZmMwZTE5NTk1NGJkNWE3ZDU2NDFjY2Y4MmI4YjQ3ZGQgbGVnYWN5LXRydW5rCisyOTU4NSAyODMyNjI4ZWU4Y2M4NDA4YTM2NmFhZDliODRkYTFkYjcwMmU0MGY0IHJlbGVhc2UyMi1tYWludAorMjk1ODYgZTYxYjk0NjQ3NGRmYzY5MjgyY2Q5MTdlYjZhMGZjM2MyODk4NjI5MiBsZWdhY3ktdHJ1bmsKKzI5NTg3IDk2NGQ2Yjc5YzIyZTJlOWMzZGZhYTUzODMxMWI3MGQ3ZmNiNGJhYjYgbGVnYWN5LXRydW5rCisyOTU4OCAyNjczNzMyYWQ1ZjE5MWI2NjlhZDk0NjM0ODc2ZGEzZGUwNjU1ODg0IGxlZ2FjeS10cnVuaworMjk1ODkgYWRhYTQ1MGU3ZDcwZGMwMjFhMjE3NGFlOWQ0MjY4YWNlZTk0NzRlNyBsZWdhY3ktdHJ1bmsKKzI5NTkwIDlmZmVhNTBlODMzMDE3NzlhOGQwYjA0ZWIyM2E5NDBiNjNjMjVhZjQgbGVnYWN5LXRydW5rCisyOTU5MSAyZjJhMmZkODQ0YmQ3NGJhOGY2NDBiNDQ5YjY3MWVhZmRjYzRiZjI1IGxlZ2FjeS10cnVuaworMjk1OTIgOTA0ODIwNzk5MmYwMGJiNTNjYTJkZTE1NTdkYmFkNDBiNzFiNTg4OSBsZWdhY3ktdHJ1bmsKKzI5NTkzIDg5NjVhMmI4MDRiNTA0OTViY2Y3MTM3OWQyY2ZhMWNkMTFjYTc3ZWEgbGVnYWN5LXRydW5rCisyOTU5NCBlOWFlYmQ0Y2Y1NmNmNGY4MjY4YjJhZjBmM2RlNTJkMWVmNGM2MDJhIGxlZ2FjeS10cnVuaworMjk1OTUgOWM0YmJiM2JiZDBkZTcyMzZlZTU1MjQzODdhZTliOTMxYWM1M2JmNSBsZWdhY3ktdHJ1bmsKKzI5NTk2IDAwNDIxNmQ3YTFkYWJjMDA5ZjJmMDlmMThkNGU5ZWZiYzg3NDBkOGQgbGVnYWN5LXRydW5rCisyOTU5NyAxZWJiNWRjN2Y2OTZlZjc1Mjc3NjYwNzc4OTU1ZTQ5ZGRkZGNjYmM3IGxlZ2FjeS10cnVuaworMjk1OTggNjQxNjc3NjA5OThjNDMxNDM5YmRlYjg2MWJlMTI5MmE4NzUxZDkwZiBsZWdhY3ktdHJ1bmsKKzI5NTk5IDNhZDRmYWU5ZWQzYWQwYzZjODQ0NTUwNmNlN2UxZGM0ODZmZGExMjUgbGVnYWN5LXRydW5rCisyOTYwMCBjZmIzMTdlNGE3NzAxZDJiZmQ0ZDJlNDc0Yjc1MTlmZWZjZWQ2NzA4IGxlZ2FjeS10cnVuaworMjk2MDEgYTZkMTZlODRmZWMwNTRlOTQyMWQxZDVkMDZjZDdlYjYxNzg1ZjIyNyBsZWdhY3ktdHJ1bmsKKzI5NjAyIDA5OWQzNmNiYmI2MTFhYjVmYjMyNGJiMmY0MjU2M2EwNDEzMDRjOGEgbGVnYWN5LXRydW5rCisyOTYwMyA5OGYzZmQxZWQ0MmYwNTc2NjU1MjJkOTQxZjBlNjg3NzE0YTgzMzZmIGxlZ2FjeS10cnVuaworMjk2MDQgZTIyMjZkNDdlYmYwMTI5N2M5OGExYTkwN2I0YWM1OTEwYmQ0NGRiNiBsZWdhY3ktdHJ1bmsKKzI5NjA1IDIzZWY3YzE2M2ExMjUwMjlmNTEwOWM5ODU1NzE1YjM5OGM3ZTU1ZWEgbGVnYWN5LXRydW5rCisyOTYwNiA0MjAzMDQ3ZTIwMjIzN2U0YzkxYThkZTQyNWIwNTAwY2E3NWY5ZmRhIGxlZ2FjeS10cnVuaworMjk2MDcgYTU2YzkwY2ZjMDBjMGRiYTc1MDcxMDkxNzhlODM5YmE3MWEyZTA0YiBsZWdhY3ktdHJ1bmsKKzI5NjA4IDQyY2YxYjVlNjM5MjZmNmRkYTM2OWVkOTg2YWUxNGQxNDMxODMwYjkgbGVnYWN5LXRydW5rCisyOTYwOSBlOThhMjEzMTAxYjM4YTliOGQ1M2I4YzFjMjEyYTUyODAxNDcxM2NhIGxlZ2FjeS10cnVuaworMjk2MTAgNGI5MDVlMTk4M2I2MTBiMjVhMzUzNWI5NTkyMDcyYTY5ODdlYjdhNCBsZWdhY3ktdHJ1bmsKKzI5NjExIDA3NjUxMmEwYzZjMjJjOTJiNzI4MzIxNGNkODliNDAwYjJmYTZiNjkgbGVnYWN5LXRydW5rCisyOTYxMiBmNDI3OGFmOGVlZmEwMmJhZmE3OTY4NmZkOWVjNGJiMjM4Y2I0OWI0IGxlZ2FjeS10cnVuaworMjk2MTMgNmU0MWNmZDI1YmRmMGZlMjg2YTFkNmQ3MzNkYzU3MGY5OWRhOWFkZiByZWxlYXNlMjItbWFpbnQKKzI5NjE0IGEyYWU2MzVlNDNiNjE4NzExMjU4NTcyMWQ5NzY5Y2QxMzU2ZmZlMGIgbGVnYWN5LXRydW5rCisyOTYxNSA0YWI2YjdjM2YzMTE3ZDI3NjMwMjYyN2U2YjllYjBkMDA0N2UzMmRkIGxlZ2FjeS10cnVuaworMjk2MTYgMTQ0ZDlkNDhiOTZjZmVhODM3YTAwYzllM2U0ZTFjMmMzNjgxZTM5MyBsZWdhY3ktdHJ1bmsKKzI5NjE3IDAwYjRjZmY5MzYxOGU4MDAyZDliMzdhYmU5YmRmOTE5YmI1YTg2Y2MgbGVnYWN5LXRydW5rCisyOTYxOCA2Y2U5MjI4YTNkYTIwMGEyY2QxMTM1YmUxOTM3YzExNzllMDdiZjRlIGxlZ2FjeS10cnVuaworMjk2MTkgYzJlYzc4OWRlZTU2NzZiZWQwMmM2YTZmZTcyNTk5MGJkYWE0OTlmZSBsZWdhY3ktdHJ1bmsKKzI5NjIwIGJkZGU5NGUwMjkxODBiNTRlMzUzMDAxYzkwN2Y0NjcwNmY5YTUxYTAgbGVnYWN5LXRydW5rCisyOTYyMSBhNDhhY2I1YjQwZWZjNDU1Njg1ZDU3YjE0ZmI5ZTVjNGFiOTg3ZjdiIGxlZ2FjeS10cnVuaworMjk2MjIgOTEzOTI3ZDMyNjFlZGIyMTNkZDYyNjc1ODVjMzU1ODlkOWMxZDNjYyBsZWdhY3ktdHJ1bmsKKzI5NjIzIDliYjRhZGZiZmNjODMxMzk3NDg1MjhkYWUxMzZkNzkwMTM3ZTUxNjkgbGVnYWN5LXRydW5rCisyOTYyNCA2NWQ2ZjBiZmE0NjE1MDQwZDRhYjhiMTFjYWMxMmMzNDBjOTlmN2IxIGxlZ2FjeS10cnVuaworMjk2MjUgMGI2MTFlNTBjNWZjM2M0ZGNkZTdlMDc0MGJkZWFjYjhlNmRmNzlhZCBsZWdhY3ktdHJ1bmsKKzI5NjI2IDU4MDgzZDhlYTlhNWFkM2U2MDFiM2EwMGMzNmNiODM1ZjM0ZWYzNDcgbGVnYWN5LXRydW5rCisyOTYyNyAzZTFlOTYxNmY4Yzg2NWEwMjQyOGM1YmMyMDNmZjYwMTIzM2ViMTRjIGxlZ2FjeS10cnVuaworMjk2MjggOTc0OTczMmEwZjZiOWZmZTgwZjlmZDIzMDNmMjczNWNjNmZhOWQ5NCBsZWdhY3ktdHJ1bmsKKzI5NjI5IGVjMzQxNGM1ODg3MjYyOTg0NjE1OTM1NDkzOGQxMWQ0ODg1Y2IzYzQgbGVnYWN5LXRydW5rCisyOTYzMCA2MDc4YWJjNjkwMzZmYzc2ZmJlMGU5YzQ4MzVjNGQ5YjU2Njk0NjdjIGxlZ2FjeS10cnVuaworMjk2MzEgYmI3MTg3ODJlNzM2OWM1YzI1YjdmZmQ1ZTI0MjgwNmM3OTM3ZmM5MyBsZWdhY3ktdHJ1bmsKKzI5NjMyIDhjZWI0NTVmNTU0MTEyY2M3ZjVlMDI1ODk5OGNkYTA4MjI1MTE4YTUgbGVnYWN5LXRydW5rCisyOTYzMyBmNDkyOTI2MjFiMTczYWFmN2Q5OGFhYzEwYWIwMDdjMGJmOGJiZDQ3IGxlZ2FjeS10cnVuaworMjk2MzQgMjRhNTUyMmQwNzg0YjM1OWQyMDlkNDg5YmU3MWE2YjAzMjA5OTk0ZiBsZWdhY3ktdHJ1bmsKKzI5NjM1IGYwZWUzN2U4OTMyZmFjOGQwNTNlNzA2MzE5YWQ1ZjE5NzE2NmU5OGUgcmVsZWFzZTIyLW1haW50CisyOTYzNiAyN2Y2NDMxNGYwZGU3ZWZhYjZiNmU5Yjc1ZGJmOTA4OGJmODE1ZTRlIGxlZ2FjeS10cnVuaworMjk2MzcgZTYyNzc0YjQ0N2MxMDdhODg4YzQ0ZGYzNjMwMzAyZDU0YTc4ZWU1NiByZWxlYXNlMjItbWFpbnQKKzI5NjM4IGRkMTBkOTdkMzI5YTYwZTcwZTEyYTQyNjdmOTE2YmU1ZjY4MDRiNTYgbGVnYWN5LXRydW5rCisyOTYzOSAzYzA4M2Y4ODE2NTVkMzRmNmNjMzAwODVjNjc4MTc0MWYzMTA4MzRlIGxlZ2FjeS10cnVuaworMjk2NDAgYWY1YjQxNzZmNGVmNjg2ZGExZWVjZDg0ZmM3YzcyMDBhYjU5NmUzMiByZWxlYXNlMjItbWFpbnQKKzI5NjQxIDYzYTA4NjM5ZGFlMmEzZWMwZTIzZjcwMzcxNDM4ZTU0OWY5OTFkYTEgbGVnYWN5LXRydW5rCisyOTY0MiAyOWY3ZDFkNWU2ZDYyNDlmZmVhNjI0Zjg2MTQwOWM4NmFjZDQzOGUwIGxlZ2FjeS10cnVuaworMjk2NDMgZTNkMjY5MWZiNmI4YzJmYTBjYzdkYzQ1NTU1MjhiYmE5MTM4MjI1NiByZWxlYXNlMjItbWFpbnQKKzI5NjQ0IDIzZGY0NjU2ZThhMmFhNDc3YzA3YWRmNGIzYzU5Nzc3ZGU1MmQ4YmEgbGVnYWN5LXRydW5rCisyOTY0NSAxYWI2NTdlMDA3NjI3NTg0YzlmOGE3ZGQ1OGJkOGJiMTljN2JiNGNiIHJlbGVhc2UyMi1tYWludAorMjk2NDYgOTVjOWM1NjZiZGQ2ZDhjZWNjZWFhNzk1MGNiYmMzNjMxYmE5MzZkNyBsZWdhY3ktdHJ1bmsKKzI5NjQ3IDRiNmQ4ZjUxNjY5ODE3ZjEzNzA4ZTZjYTMzYTJhYzVmZmQwODQ5OTkgbGVnYWN5LXRydW5rCisyOTY0OCAyNTFlNTUyYzgzNTIxMGU2N2JhMDNkYThiYzc2ZjZiMTRkZjVlMjQ2IGxlZ2FjeS10cnVuaworMjk2NDkgNWI2MmI5ZWE0NjBiMjM5ZTMyZmI2MmMzNmIzYjgwYzNhZTdkOTg1YSBsZWdhY3ktdHJ1bmsKKzI5NjUwIGU3MTc3MGE3ZjU0OWZhOGQzZmJjNjQyM2E0ZGE3ZmE0MTc5ZmMzZjMgbGVnYWN5LXRydW5rCisyOTY1MSAwNGQzZjk1Y2ZkODlmMGMwYjQ4MGZkYjA4NTM2MDMwZmQzM2Q3OGM0IGxlZ2FjeS10cnVuaworMjk2NTIgMDgyOTMwZGZiZWJkZGJlOTZmZDI3YWYxMjI0NjczNjlmNmYxMTZkOCBsZWdhY3ktdHJ1bmsKKzI5NjUzIDFjMDU1MTcxYjg3MTFmYmI5OTg2NGMzZDljN2NmNGQ4ZDdlYWQ1NGEgbGVnYWN5LXRydW5rCisyOTY1NCBmOTZmYTNhNmRkYTQxOGMyNDRjMWVkOGZkNWNhOGFiYTU3NjA3MTdiIHJlbGVhc2UyMi1tYWludAorMjk2NTUgODNhZTRhOTAyZGYwOGY3Mzk5MzIyMjZiYjZmODc4ZDllYTIyYTlkNCBsZWdhY3ktdHJ1bmsKKzI5NjU2IGRiZTI1Njg3YmU2ZTVjMzY5MTczZDc5NDA4NjRmYmRmODdjMzRmMWEgbGVnYWN5LXRydW5rCisyOTY1NyAwYjIzY2RhMDA0MTcwZDlhNjJjMjBhNDkwYjg1MzBkNGQwMTdmNjFkIHJlbGVhc2UyMi1tYWludAorMjk2NTggNDZkMGI0NmE3NTRmZTFiNTdhZmI5YmFkOWI5N2UxNDlkNjAzNmMzMiByZWxlYXNlMjItbWFpbnQKKzI5NjU5IDFhZjQxMGUzM2JlY2Y1ODFkNzRiN2Y0Mjk5YTQ1NDFiOTFkMDY5ZmMgbGVnYWN5LXRydW5rCisyOTY2MCBmNzJiMWY4Njg0YTJiOTgyNmQ0NDA4Y2QzMDI3YTY2NTIyMDhhNzhhIGxlZ2FjeS10cnVuaworMjk2NjEgM2U1OWQ2NzRiOGMzNjQzM2VjZTBjNWEwOWZjODZkNzZiY2JmOGM0NCBsZWdhY3ktdHJ1bmsKKzI5NjYyIDRjMjUzMmMxY2IyZGUyNGQzZDUwMTMzM2Q0ZTRlMGE5ZDhmZDY3YjMgbGVnYWN5LXRydW5rCisyOTY2MyBhZjM5NjQ2NzllMmZiZDliZjk2OTZhZmNhMGQ0MWI4MzZmYTZiMTIyIGxlZ2FjeS10cnVuaworMjk2NjQgYWUxNjlmNWI5NGUwNDgxMzY0ODk0ODU4ODliMzM4NzNkN2E5MzFjNCBsZWdhY3ktdHJ1bmsKKzI5NjY1IDBlMGIzZGNmNzg3ODk4OTQzMWQ5ODg3NTY2NzIwM2NmZWExOGU2ZTAgbGVnYWN5LXRydW5rCisyOTY2NiAzOGQxZjgzZDU3NzEwOGE2ZTMwOWUwNjAwYjgwMTk4YTcxODc3MTQ0IHJlbGVhc2UyMi1tYWludAorMjk2NjcgZDZkYzQ2YjlhZjNjMGUyNjhlYTQ3MGUyN2M3MjYwY2RjODUwMTU1MCBsZWdhY3ktdHJ1bmsKKzI5NjY4IDM5MGJmNWQyZDhlN2RmNjYwMDE5MTlkYTJjYmYwNTBjZTExMzhjZGYgbGVnYWN5LXRydW5rCisyOTY2OSA5YzdhYTQzYjIxYTlhOWIwZWZlY2UwYzgzY2ZmMzc2OTMxYTVlOTAyIHJlbGVhc2UyMi1tYWludAorMjk2NzAgZDU2MzNlOTNmNzA3ZjM0MmI1NDIwMDNkYzllZGYzMTBjOWM0ZmQ1ZSBsZWdhY3ktdHJ1bmsKKzI5NjcxIDkzNzM1Nzg4MjJiNTkwZTA3YTAxMGQ2NWNlNzY0Y2MyZTNlNGRjNTkgcmVsZWFzZTIyLW1haW50CisyOTY3MiBhNDJmNjNhODBjYzg3MzZhN2E2NTBmYzRhMTZlMWNhY2Y0NWY5NTY3IGxlZ2FjeS10cnVuaworMjk2NzMgNzg1YWQwNzQwMjdiZjBlMzNmY2JhNTQ1OTZhMDk2MTBjYTUzMzU5MyBsZWdhY3ktdHJ1bmsKKzI5Njc0IGNiNzFlN2M2MjBlMmY1MGE5N2FlZjI0YzAzZWQ3MmUwM2RmNzU0NDkgbGVnYWN5LXRydW5rCisyOTY3NSAxZGY5OGY2OGQ2MDc1MzBlYWFjODk4YWE1NDdhZTE2NzZlMDg5YmE4IGxlZ2FjeS10cnVuaworMjk2NzYgZDM3ZjEzNzhkOGI4YmY5YWQzNjlhYmQwNjMyYmJiMmUyNDc3Mjg5YyBsZWdhY3ktdHJ1bmsKKzI5Njc3IGUwMjMzYzQ0MjUwMjZlYThiMDljY2EzZDg4OWJlMzQ5ZDNlMTc3YzggbGVnYWN5LXRydW5rCisyOTY3OCA3ZTU4YTE1MDQ4NzI2ZjJiYjA0ZWU5YzlhN2Y1Yjk1NjMwZjFmOTYyIGxlZ2FjeS10cnVuaworMjk2NzkgMWNkODEwNmJjZDIwNzFjOWRmNTZhMTE5NGE1MjRiZDliYzhlYzU0MiBsZWdhY3ktdHJ1bmsKKzI5NjgwIGJhZjg3ZDI2YmEwM2Q1MzdiZWI5M2Y2MDg1ZDlhNWQwM2M1MjQ0MmYgbGVnYWN5LXRydW5rCisyOTY4MSAzZjU3NzNhODg4OGVmZDY2NWJhNzYzNmFhNmZjYzQxOGJmNjFkMzBlIGxlZ2FjeS10cnVuaworMjk2ODIgZDMzMDA1ZjgzODhlNzRlMTk1N2RiYWZlYjM3Y2JlZWJmMTBhNDkxOSBsZWdhY3ktdHJ1bmsKKzI5NjgzIGZmOTJjYzI3ZmQxZmYzMGQ1NDE1YjhkMGUxMTkwYmE3MTZlMTM0YWQgbGVnYWN5LXRydW5rCisyOTY4NCBmZmVjNjc0MDkxNDA1OWJkZWE5MTIyYzMzYmRjNzExMGYxOWZkYjc4IGxlZ2FjeS10cnVuaworMjk2ODUgNThmYmE1OTU3MjZlYWRhZmVmNjFkY2QwMjNhNzVlNmVhZGZmNzQxYiBsZWdhY3ktdHJ1bmsKKzI5Njg2IDM4MzU4NzAyN2M3NGQxYzFiODM3M2RmMDc4ODEyMDUyZDdjOTRkYTggcmVsZWFzZTIyLW1haW50CisyOTY4NyBmNDY1ZDY2OTJiZGUzMzUwMzMxNGMwNTM0ZmQwOTFjNDg3OTU4ZmJiIGxlZ2FjeS10cnVuaworMjk2ODggN2Y4NzA0NjdjMTgyYTc1ZTBkNDQ4NTRmNGE3OGQ1MmFhZGI3ZjI2MCBsZWdhY3ktdHJ1bmsKKzI5Njg5IGI4MzAzNDEzYTU3ZTVhMTVkYzE3YzQ5Yzc0NjhlNjQ2YWU2YTUyMDggbGVnYWN5LXRydW5rCisyOTY5MCBhNWQxZTA4MTQwNjFjNTJhYjJiYzM3ZjYxZDQxZTUxZWUwNjI4MDk2IGxlZ2FjeS10cnVuaworMjk2OTEgZTg5MDU2NzE4MjM1ZGNhODdhMTI2ZTUyMmRiNTM3ZTk2ZmQ3ZjVkMCByZWxlYXNlMjItbWFpbnQKKzI5NjkyIDdjZmI1MmY5ODEzOTZmZWVlODllNzFiM2YyMDc2YjY5OWY4N2Q1OGIgbGVnYWN5LXRydW5rCisyOTY5MyAxMjdlNGJmYWNiYjc1MDQ5YzMxNGU1YjEwN2Q5MjgyY2E3NjMwNTQ4IGxlZ2FjeS10cnVuaworMjk2OTQgNzZmMzJmYmUwM2NjNTRlNTU0ZjIwNDlmYWEwMWVlYjQzMDExMmY0NCBsZWdhY3ktdHJ1bmsKKzI5Njk1IDU3ZmNhY2JkYzg4NWE1NTdjMjIzM2UyMWJhMjRlNWRjM2UxZGYwNTMgbGVnYWN5LXRydW5rCisyOTY5NiAyMGZhNjMyOWI1OGZmODA0MDYyYWE4OWY5NTMyZjliN2I0YzU4ZTEwIGxlZ2FjeS10cnVuaworMjk2OTcgZWIwYzBjODNiOTJhMDlmZjZhZGM0ODQ2ZWQ2ZDM1ZGM5ZTkyMDEyYyBsZWdhY3ktdHJ1bmsKKzI5Njk4IGZmYmVhZDM0ODRlMTAzM2IyYzMwYzM4NjBjZGFhZDZiYjQ0MmZmZGYgbGVnYWN5LXRydW5rCisyOTY5OSBjOTUxOTA1MzJjMGNiNmQ5ZTFlMDQ0ODcwNjMyMTE4YWM0NjFmYTEzIGxlZ2FjeS10cnVuaworMjk3MDAgNTJmNjEzM2UyMGQyMGViNjAzYmJlYjM4Njg0MjNmOTFkMmIxY2MwYSBsZWdhY3ktdHJ1bmsKKzI5NzAxIGFkYjkzZjRlOTc4MDUxZTQ2ZmFhMDBhN2Q4ZGRlMmE5ODI2NDgwMzQgbGVnYWN5LXRydW5rCisyOTcwMiAxOTAzODlmZDgxNTljN2M0NmRkZjk5OGFlMjk3NDFiMmIzYTNkYWE3IHJlbGVhc2UyMi1tYWludAorMjk3MDMgZWNkZmY0NjIwMmMwZmYzNWNiZWYwNTlmYjE0NjhkZWUxNmExNjM0YyBsZWdhY3ktdHJ1bmsKKzI5NzA0IDUyOTcxOWE1MzUwZTc1ZWUzMWYxZDQzOTQzNTRkZDUyOGZhYjhmODEgbGVnYWN5LXRydW5rCisyOTcwNSBjYjI0ODcwNGI3ODRlM2M3Mjc0NTkxOTlkNjdkNjE5YzU0YzJhMmI4IGxlZ2FjeS10cnVuaworMjk3MDYgNzk0MjBmYTIyMmI4NTA1OTVhYzU3ZDQ4OGQzYzJhNjI3OGI5OWYzNiBsZWdhY3ktdHJ1bmsKKzI5NzA3IGUyNmZmNzVkY2Y2OTExYzAxYjIzMWQyYmVhMTY1ZTNkYTM3ZDBhOWYgbGVnYWN5LXRydW5rCisyOTcwOCBjNDJiNjM3Yjk1MTQ2ZDczODZkNDg1YTAxYjE5MzQ0ZjE5OTdmOWNlIGxlZ2FjeS10cnVuaworMjk3MDkgYzg1NDgwNjkyY2FlOWNkOTAwYTUwYTYxZGZjYjRlOWVkMDllYjJlNyBsZWdhY3ktdHJ1bmsKKzI5NzEwIDg3ZTY5YmFkYTE5NWVlZjVmNmNhNWVmOGJjNzZkNWIyNWEyNDcyZjIgbGVnYWN5LXRydW5rCisyOTcxMSA5M2YzMGMzODg5YWE0YjdhODJiMzQxMWYxN2YyYzNhMzUwMWIwNmZiIGxlZ2FjeS10cnVuaworMjk3MTIgM2VlOTUxOWVhYTRjNDc2NzhmNjBlNTkwZTU1MzdlMTZlZGIxYTVkNSBsZWdhY3ktdHJ1bmsKKzI5NzEzIGU5Zjg5ZGJhNTA5M2IwYTM4M2Q5YjcyMWQwMThiMTgwZWViYjQ5YWIgbGVnYWN5LXRydW5rCisyOTcxNCA0NDliMmI1Y2FmNTgyZmRkYzg5MTFlZTdkMzJkNjBjYzdkMjc4NTBmIGxlZ2FjeS10cnVuaworMjk3MTUgZWRkMmViODhmZDZjYTBlY2I0ZDY0N2JjOTc5ZGJjNDk3ZmQ5OTRmNCBsZWdhY3ktdHJ1bmsKKzI5NzE2IGEwZWZhNGM5NTY5ZTMxOTZkZGJiZTRlMGQ1MjZkZjM1M2IxYTI1OWIgcmVsZWFzZTIyLW1haW50CisyOTcxNyBlNDI5OTdhY2M3ZjFlNzU0Njg2NmY3ZTdkY2RkZGJlNmE0ZGY2ZWE3IGxlZ2FjeS10cnVuaworMjk3MTggYTRlMzAyMWVhYTdkNDBiOWVkYjYxNDMxNTc4ODBhZjBlNzkzNjk1NSBsZWdhY3ktdHJ1bmsKKzI5NzE5IGIxMzg4ZjU4YmRiNWQxMGUxNjAzMzJiMGM1OWQxZDhiYmEwNjZhYjYgbGVnYWN5LXRydW5rCisyOTcyMCA0YzA2YmRkN2QwNWMyZjMyYjdmNDEyZmUzOTE0Mzk5ZDQ2YmU4ZGZkIGxlZ2FjeS10cnVuaworMjk3MjEgOGVkNjZlZGZmMzg3YzZkNDgyNDQ3NDcxYjhmNGI1OWMxMGI0ZTFjOSBsZWdhY3ktdHJ1bmsKKzI5NzIyIGZmNzYzOWRkY2FmMjFjYjZjNmZmYzM0MTY2NWEyZDU5YWUwMDM2ZDcgbGVnYWN5LXRydW5rCisyOTcyMyA2MWEwZWY1NDJiNmY1ZTFiNTg1YjBhNDk4ODcwZWE3YjA5NjFiMDY4IGxlZ2FjeS10cnVuaworMjk3MjQgZDYyYzFiYTMzOTY0MDY4NjRkYTVkMDYyZGUzMzVlN2QwYTE2YmZjYSBsZWdhY3ktdHJ1bmsKKzI5NzI1IDNiZTFiZGM3NzllMDZmMDQ5NjBhZDkxZGIyZTFmMjhjNGZjNmRjZGYgbGVnYWN5LXRydW5rCisyOTcyNiAwZTg5OTBlODkyYjZkNmEyYzhjYzM0Y2QxNTVmYmU3YjQzNjAxYzM5IGxlZ2FjeS10cnVuaworMjk3MjcgMDJkNDhlZDQ0N2E4M2IzNGNhZTg4YjM3ZjcyMThjMzNhMjhjNWEwOCBsZWdhY3ktdHJ1bmsKKzI5NzI4IDE0OTE2NWNkZmY3Y2RjNDkzNzE5NTEzYTE0NjM0ZmNlMGNlMDk0M2IgbGVnYWN5LXRydW5rCisyOTcyOSBjZGQyODlhMDY2MTRhM2MzNDk3MjRmYjk5ZjM0MjA1ZThkNGIwMGQxIGxlZ2FjeS10cnVuaworMjk3MzAgNjc5YjJiODI1NGFlNjY2ZDc4ZjZmNTM4MzNkZGNhZjViYjg4YmM4OSBsZWdhY3ktdHJ1bmsKKzI5NzMxIDRiZTM0YmQ3M2RmZjQxZTY3YTljZWUxN2Y2NDkyM2E1NzI0N2I3N2EgbGVnYWN5LXRydW5rCisyOTczMiAyMmQ3MzI1YmE3YWM0OTY5ODIzY2U4Y2VlNmQ1NGQ5YzhlNDQ5ZDc5IGxlZ2FjeS10cnVuaworMjk3MzMgYThkMTMwYTZhNzRkNjhlOWJhMDVhNzk1M2VhOGY1OGVmMmFkODI2MCByZWxlYXNlMjItbWFpbnQKKzI5NzM0IGYyM2MzNWY4MTAzMzk5OWM4NTM5ODc1YzA1NGNhZTE0Njg5OWVjMDIgbGVnYWN5LXRydW5rCisyOTczNSBiMTk0NDNiZGY0NDdlN2Q4MWEwOWM5NzNmNzZhMTE1ZWQ0NzkxOTFlIGxlZ2FjeS10cnVuaworMjk3MzYgNjBkODA5YTI1YmFlYzgxMzkwOTBhNzc0ZWI0OGZjODM0NjM1ZDNhZSBsZWdhY3ktdHJ1bmsKKzI5NzM3IGIzMjdmZmNmZTliN2I5NjE0YWEwMjg2M2QxZmU3MWU0NjE0MTM1OTAgbGVnYWN5LXRydW5rCisyOTczOCAyMDVmYmYxYmQwNzU2MmYyNDI1NjA2YWRmOGY5MTJmZDU5NmI4MDk1IHJlbGVhc2UyMi1tYWludAorMjk3MzkgNzY2MDFmYjA3OGQ0MDE3YzgwNTc5NDJiMjc2MTQ1ODEyMzc0OTc5MCBsZWdhY3ktdHJ1bmsKKzI5NzQwIDI0NGU4ZmJlNGUyMDQ1NDBkM2Y0NGVhZGMzNWE4MTVmNzk0NzI5NDkgbGVnYWN5LXRydW5rCisyOTc0MSA1MzNlYjUzYTdmYmRkMDNlZjU0NmU3YjIwZjU2NTcyMDNlMGI3MmExIGxlZ2FjeS10cnVuaworMjk3NDIgZTM4ZDUwMzM3ZThjZDgzMDI0ZmRkM2FhNGRkYjc5NDFiMmY1MDBkMiBsZWdhY3ktdHJ1bmsKKzI5NzQzIDQyMjc5ZjdkMjQ0ZGY3NGIyNzZiMzA5NTAxNWUwZjVmM2ZkN2EwNTMgbGVnYWN5LXRydW5rCisyOTc0NCAzNGZiYmNiMTA1YTQzYjY2NTYwMmI1ZWI0ZmI3ODlmYzRjOGRjODRhIGxlZ2FjeS10cnVuaworMjk3NDUgODNjY2FhYWIzZTVlNDc3ZDYyZjk3NjUwNDg1YTI5MDlmNDViYjViYyBsZWdhY3ktdHJ1bmsKKzI5NzQ2IDZiNTU2YzU0NWZmYjM4YWRiYjcwZGM0MDkyYzBiYjgwYmQxZGE1OTQgbGVnYWN5LXRydW5rCisyOTc0NyBlMjcwYzBkNDFhMDUwNTdhMzExNjQ3YzYyNGJkMmM5YzhkYTNiZGNmIGxlZ2FjeS10cnVuaworMjk3NDggYzQxOWZjZTE1MjllNTdiZTRhZjAyZjdiZmMxYjBhZjU4OTdmNjFkMCBsZWdhY3ktdHJ1bmsKKzI5NzQ5IGZiY2NlZjhiMzE1MzMxYjE0Mjc3ODJmYzQ4MmZiNDRiOWFlYmRjODIgbGVnYWN5LXRydW5rCisyOTc1MCA1N2M2ZTg0ZjcxY2VjNjZhMGQ3YjgxNTY2YmM2OWQwOTZkNTkxMjJjIGxlZ2FjeS10cnVuaworMjk3NTEgOTU4ZDA3MDg1ZGNmNGFlODA4YzZkYjk2ZWQzZjM1Y2ZmYTIwNTcxZSBsZWdhY3ktdHJ1bmsKKzI5NzUyIDUwYzk1OGY3MDNlMzAyODllMjZhNmMwNjhmMDA5ODY3Yjc0OGI1NjcgbGVnYWN5LXRydW5rCisyOTc1MyBkNjYxMjliNTUxZGI0ZmFlMjA4ZjI3YWM1OWM0NzY2ZmI2YzU1YTMwIGxlZ2FjeS10cnVuaworMjk3NTQgM2FjNDY0YzM3Mzc0YzQzODRmZWYxODE1MDRkY2MzODE5ODc1ZWE5YyBsZWdhY3ktdHJ1bmsKKzI5NzU1IDdjMDhmNmNiOTBlNGY5NmUxMmM5MzFlZDQyODUwNDVmZWY1YWQ2ZjIgbGVnYWN5LXRydW5rCisyOTc1NiBkNDQxMWQ5NTBkNDgzMjU1MDM0NTk2MDVkYTEwNWQ5MjdlNTJlZjA5IGxlZ2FjeS10cnVuaworMjk3NTcgODc1MTQwZDMwZTE3NjU2MGFkZjQyNmRkZjUzNDljMGI4YzE1ZjdkYyBsZWdhY3ktdHJ1bmsKKzI5NzU4IGVlYzk5NzgzNzE2YzNhY2RjNGJkNTQyZmE2MDBmY2EzOTRiNmU1NzEgbGVnYWN5LXRydW5rCisyOTc1OSBjZTY0MGRhYjEwZTQzMmM4Nzk4OWI4MGU0YzU1ZTcxNDg3ZDIwOGNkIGxlZ2FjeS10cnVuaworMjk3NjAgZWZlNThjMTBjY2YxNmQwMDY2YmRhMjEyNDE4NGQ5YTNiNjhmNmY3YSBsZWdhY3ktdHJ1bmsKKzI5NzYxIDRlZDIzMGEwYzkzMWViMGYxY2E1M2RhNWQ5ZmIxNGY0ZTM0MWFlN2YgbGVnYWN5LXRydW5rCisyOTc2MiA0MmJmYzk4ZDI5NWI3ODUxZTE3MDE3N2RlZjcxMGZmMjQ5MjgzNDRhIGxlZ2FjeS10cnVuaworMjk3NjMgOTZiZGI0NDc2M2MzNmRmMTk2NTQxOTI4OTlmNGE4NWJiYjIxN2E4OCBsZWdhY3ktdHJ1bmsKKzI5NzY0IGEyNGJjNmEyZTJjZGZhNjY2M2NhMjUwNzJkZjRjNjliOGM1MTNkMzggbGVnYWN5LXRydW5rCisyOTc2NSBiMGI2MDg1OTgxNzAyMDVmZDE3NDBhNDMzNDViZTc0NDU3MmU3ODFhIGxlZ2FjeS10cnVuaworMjk3NjYgMDkzNGE4YTBiYTBkODU0ZmFkMzQyZGIyNThkMjM2OTc3ZmVhZjRhNCBsZWdhY3ktdHJ1bmsKKzI5NzY3IGU5NjU3NWY3ZTk2YTdlYzJmMDA0YWU3MWNkZTA1MmI4YTJlMzI4ZmYgcmVsZWFzZTIyLW1haW50CisyOTc2OCBkMzFkZGM2NmIxYjU1MWY5OWNmZmU0Zjg2ZmJmM2E0MzliY2EwYjk1IGxlZ2FjeS10cnVuaworMjk3NjkgMzE2ZmRkYmMxZTA3ZWVlYmRhODA2ZTEzNjAyODFkNmM4NTQ3MDZkOSBsZWdhY3ktdHJ1bmsKKzI5NzcwIGZmNWI1MTBlYmE2YjY3OTQ1YmY4MzEyNDY2ZDA3YzA5ZWQzODk1NWYgbGVnYWN5LXRydW5rCisyOTc3MSA2ZDBjZDgwZTI4MDQzMGQ4OGNiMDAyMTk4ODU4N2NlMjgwYmQ5YTJmIGxlZ2FjeS10cnVuaworMjk3NzIgMWJkOWQ5ZjAyYWQxYjQ1NjJjOGIwMzhiNWQwNjRhNjhjN2EzOTRlZCBsZWdhY3ktdHJ1bmsKKzI5NzczIGJlYTk5MWU2NWZmZDM5Yzg5ZTgxMDhjZmQ1ODBkZWRhMzQ5ODNhNTYgbGVnYWN5LXRydW5rCisyOTc3NCBiYWNkNjc4YjNjNGNlZDIzNGMyYzZkOTQzNGFlMjdjYzE2MjgzMDQzIGxlZ2FjeS10cnVuaworMjk3NzUgZjZlNDY1ODViNmIzNGMwZGM2YmU5OTRjM2UzMTQ0MDExMDhkMjc4NiByZWxlYXNlMjItbWFpbnQKKzI5Nzc2IGM3NzQzNWQ4N2MyZTkyMGRjNDA1NjA1YzhiMzgzNDM5OTk3NDMzYjcgbGVnYWN5LXRydW5rCisyOTc3NyBkY2RlMjUzNDdlOTM4OTAxZDUxYTNmZWQ3MzAyMmE4MjkxMmMwMjFmIGxlZ2FjeS10cnVuaworMjk3NzggZTNiOGY3N2E2OTgwMGIyY2IyYjA4ZGQwOTVlZDY0ZGYwY2JjYjViNSBsZWdhY3ktdHJ1bmsKKzI5Nzc5IGZmN2FkMzJjOTU1NGVkZjI4YjlkZDcyZGY2NGE2MGI5MzA5ZjYyN2UgbGVnYWN5LXRydW5rCisyOTc4MCAwYzg5OTM3Y2ViZWQzNzZlNDBkZTY5Zjg2MTQxZjgwOTUyOWUzYmY3IGxlZ2FjeS10cnVuaworMjk3ODEgMDgwODM4ZTM4ZTdjNGFlODRkMjI4MTFlMTg2YmZhNzZiMDJiMjg2ZSByZWxlYXNlMjItbWFpbnQKKzI5NzgyIDMyZGY4ZDU5NjBkMTgyZmQ3YzRhMTFkMmFmMmUyYmMzZmE4ZGUyNDAgbGVnYWN5LXRydW5rCisyOTc4MyAyNTFkZDEzNmJhYzNiYjAzMTU3Yzc5M2QwNzEzMmQ1MDBkYmVkMDYyIHJlbGVhc2UyMi1tYWludAorMjk3ODQgZWYxZTM4MzJhOWVhMjAyMzUyNzBjMmI1M2JiZTcyNDRiMzQ1OWJkZiBsZWdhY3ktdHJ1bmsKKzI5Nzg1IDQwM2RjYmM5MDQzZjY4NzRkMGZmYWRiNGNkMTE0MGYzOTc3MjkzY2UgbGVnYWN5LXRydW5rCisyOTc4NiA3ZmM3MDRjY2ExODEzYmIzYzA3ZmM1MTNlYmNhM2FmMTU0MTljYTkzIHJlbGVhc2UyMi1tYWludAorMjk3ODcgYmFhNDdkN2U4NGUyNTgzNjA5MjYyNmFiMTI4NTkzNzY5MTliNmY3YyBsZWdhY3ktdHJ1bmsKKzI5Nzg4IGYyZmMzOGY4Y2E5ZGUyZThiNTFkMDM2NzQ2MGQ3ZWFlM2IzMjZmYWEgbGVnYWN5LXRydW5rCisyOTc4OSA4YjYzOGJlNzZjYmUyNDBiNTY0ZDQxNDZiZjc0NzYwOTZjNDJkMGU0IGxlZ2FjeS10cnVuaworMjk3OTAgNDFmZjUwYjRkMDk3NDIzYjBmMmE1M2M2ZDliZWE0NDZiYmQ1NDk3OSBsZWdhY3ktdHJ1bmsKKzI5NzkxIDhlNjAxM2JiZTdhN2MzYzRmZTk5ZDBhNTQ3MmFkOTU1MGY3ZDhiNDAgbGVnYWN5LXRydW5rCisyOTc5MiAzZmQ4YzJhZmYzMDUyOTczOTlmZjFmYmYyNTc4ODdlYmVjMTRhYjliIGxlZ2FjeS10cnVuaworMjk3OTMgYTI3YWM5ZDMyZjIzMzhmYWFjNGY4OTUwOWU5ZTIwZjMwYWFmOWFhMCBsZWdhY3ktdHJ1bmsKKzI5Nzk0IGE0ZGJhMDU4ZjcwZWFmZmMzZjhiMzZjZTMxODVkOWI3ZDcwNGI3M2UgbGVnYWN5LXRydW5rCisyOTc5NSA5MTBmYTczOWY0YTRlN2MzNDg1MDljMWY5M2U1ZDFhMWI1M2YzZmZjIGxlZ2FjeS10cnVuaworMjk3OTYgOTBlOWEzZWNkYTQ0OWRjNmJiMWE2YTVkOWFiODc4ODg4ZGZjZTg5YSBsZWdhY3ktdHJ1bmsKKzI5Nzk3IGQ0MWM0Yjk1ZTcxNGRlMThmZjgzMjQ3NDlhMTFhM2UyNzI3YjM4MjcgbGVnYWN5LXRydW5rCisyOTc5OCA2ODAzNjBlNjhhMDYzYTY3OGE4OGE1MDUyNTNhNzkwMjRiYWMzYWMyIGxlZ2FjeS10cnVuaworMjk3OTkgZmFkY2FiNjVhYTg3NGI2NDkyMTY5OGMzMmZiODE0MWUyNWVjNzIyYSBsZWdhY3ktdHJ1bmsKKzI5ODAwIDA2NzU0ZDczYzYzZTQ2ODdiZTY4ZTA3YmI0MzYyNzA3Y2I0OWI2ZmYgbGVnYWN5LXRydW5rCisyOTgwMSAwNWQ2YWRlM2U5MmI0YjFjNTgxNWQ5OWUyODcwNzA1MzFhZmZiNGE2IGxlZ2FjeS10cnVuaworMjk4MDIgODIzODk2Y2UyZTVkMDU2OGNiOWMzNDM3ZmU1ZTAxMjhjM2QyMTUyYSBsZWdhY3ktdHJ1bmsKKzI5ODAzIDJiMGU4MTVjMGIzMDdmZmUzYzVkYzIxMzBmMDVlNDQxM2Q3OTI4MjcgbGVnYWN5LXRydW5rCisyOTgwNCBlYTFkMjA1MGQ3ZGFhZWNmNTYyYWRmNTBmOTA1YzY5N2Y4OGNhZGMyIGxlZ2FjeS10cnVuaworMjk4MDUgZjNhNjkwMzdmZGYwZmFkM2E1OWYwMzc1N2U3MGRmNGJiYzQzZGQ2MiBsZWdhY3ktdHJ1bmsKKzI5ODA2IDQ0ZDdlYWFlMGQ4ZDM4YjIyNjJkMzJjY2JlZWUwYTY3NjVjNGVhNTggbGVnYWN5LXRydW5rCisyOTgwNyAzMDg2ZTExMTc4M2E3OTEwNDFiOGNkOGRkNTAzZWY5ZDMwM2I2N2I5IGxlZ2FjeS10cnVuaworMjk4MDggNjBiZDdhZjAzMjRlODBjYTM3N2M5NDQ1NDQ4MzQzYjk4YWMyZmVkNiBsZWdhY3ktdHJ1bmsKKzI5ODA5IDYwMWI4ZmMxMmZiOTUzYTE4NzBjNzg5Mjc3YmJkZmMyM2EzOTY4YzQgbGVnYWN5LXRydW5rCisyOTgxMCBmMzQwMGVmMDJhNDU5YzQ3YjIwMTk5MjVlYmU4MGQ1MjRhYTI4MTkyIGxlZ2FjeS10cnVuaworMjk4MTEgYzc2NzYyZDY2ZjQyMWMxNzJlNTJjMDBhMjQ1NGJjMjA5NDczYThmZSBsZWdhY3ktdHJ1bmsKKzI5ODEyIDk1N2NhMmM1MTc5MDQ5YTM1ODNlNTQ4Mjg5ODcwYTE2YTRiNmUwOWEgbGVnYWN5LXRydW5rCisyOTgxMyAxMDg3MWY0NGU3ZGIyOWQ2Y2RmNjM4ZTc5ZWE0MWY4YzZkMGExNGFlIGxlZ2FjeS10cnVuaworMjk4MTQgNzMzZTRiOWQ1OTJlYmNlYjA5NGMyOTlkMDk4ZmRkNThhZjExZTM5NiBsZWdhY3ktdHJ1bmsKKzI5ODE1IGFjNzg3MmU1NTQwNTliZDk4OTQwMzQ3YWFlYWExNmU3MmNjYTVhMTIgbGVnYWN5LXRydW5rCisyOTgxNiA2NTg5YzM3YzBkZGQ3MmIzZjNjOGU3Zjg0ODllNzRiNTM2ZjA1MWM4IGxlZ2FjeS10cnVuaworMjk4MTcgNGVjMTkwMmVlNmI3N2NhOGQ5NWM1NzQwMWM5OTc0MjYwZmU4MTEwNyBsZWdhY3ktdHJ1bmsKKzI5ODE4IDU2MTE4NWQxM2Q1Y2M0MWY3NjEyZDY2ODRlY2I2Mzk3ZGZlMTExN2QgbGVnYWN5LXRydW5rCisyOTgxOSBmNzg1MjcwY2VlMTk3ZDE3MTRjODU5ZDM4ZDNkYTYxNTViMDJjZmJjIGxlZ2FjeS10cnVuaworMjk4MjAgM2M2NGVmODdkNWY4OWY1NDY4MDQ0YjI4NzQ0NWRiY2NmYjEyZmM2YSBsZWdhY3ktdHJ1bmsKKzI5ODIxIDA2N2EyZWY2ZDhhOWYxNmYzYjhiYjQ4NzgwZWVkMzgwMmIyNmMwMzYgbGVnYWN5LXRydW5rCisyOTgyMiA5ZjQ2OWRhNTkxYTllN2ZhZjFjNTYwODk4MmI1NTI3NTFhMjI0ZGQwIGxlZ2FjeS10cnVuaworMjk4MjMgNTQ3ZGU0MDdjMTMzNDczZWQzZjIzOWNiNjQyNTQ4OTBiNDJjYzAwYSBsZWdhY3ktdHJ1bmsKKzI5ODI0IDNlMDJlYWQ4ZGUwNTgwMDc5NzlmMGI3NDNiNjJmYjdmYTU2N2YyNTIgbGVnYWN5LXRydW5rCisyOTgyNSA0NmJiOWFkODMxOGYxOGZhNGQ1NGNlOWZjZmQ3MzQwNjZiZTBkZjFhIGxlZ2FjeS10cnVuaworMjk4MjYgN2I5MDk2NTAxZWE4MGQ4MDU5ZWVjYjk4NjBjODE2M2Y4OTBlMTAzNiBsZWdhY3ktdHJ1bmsKKzI5ODI3IGFiZjU2NWNmNWI1NDc0YzgyZTRlOTAxY2UyOTI3MTk1NTEyM2U4YTIgbGVnYWN5LXRydW5rCisyOTgyOCAxM2MxYWExNWUwZmI1ZGE5NDgzNzUxM2Q2MjRlZTIwODMyNGVhMGEwIGxlZ2FjeS10cnVuaworMjk4MjkgZGMzOTllOWNhYjg5ODZlOTI3MmEzODNjZjVkZjI5OTJlZGRiZmIwZCBsZWdhY3ktdHJ1bmsKKzI5ODMwIDMyMmI2NjRhMjAyMmQ4Nzg0YTk2MzM4NDc3NTI2YmNkOTI2NWJmYWUgbGVnYWN5LXRydW5rCisyOTgzMSAzNWYxMjVkNTJjZjVhODFiMTJjMDEwYjNlYTNhMGI1MTZiYmRjNjUxIGxlZ2FjeS10cnVuaworMjk4MzIgOGZlMjk2YWQ1OTM2YjM3MDI4YmVkNmYyNWRiZmZjYjFkZWIwZGJlNiBsZWdhY3ktdHJ1bmsKKzI5ODMzIDc3MDkzZDU3Y2NhOTk3YmU2NDg1YzgyYjBhNjk1YjAwNzNlMTE5OWUgbGVnYWN5LXRydW5rCisyOTgzNCAzZjdhZWE1YjkzYTE4Njc5MjgwMzJhMzdiMzUzYTE1ZGQ3ODQ3N2JjIGxlZ2FjeS10cnVuaworMjk4MzUgNzkxMTg2MzJlMzdlNDAxZTA3OWNiZTAwOGZiNTJiNzY5ZWQxMzBhZiBsZWdhY3ktdHJ1bmsKKzI5ODM2IDU0YTc0YjBkZmUyNmNmYTYyZDk2OWIyMmU1MzRjY2YzMzVlMWMwZGMgbGVnYWN5LXRydW5rCisyOTgzNyA4MjM2ZDUyODg0MTI1NmJjMWVkNzc4YmMwMDYwOTQ3MDc2NWEwM2ZiIGxlZ2FjeS10cnVuaworMjk4MzggODc4ZmVkYzZjN2U3YzRlNTUxNDMwYzMyYmVkZDY0MTRlMzA4ZDZjYyByZWxlYXNlMjItbWFpbnQKKzI5ODM5IDZlMjI4ZTFhZmYzODU4N2UwMWUzMzE4MzdhNGIyNjExOTExYzY3MzIgbGVnYWN5LXRydW5rCisyOTg0MCBiODI0MjhiMTc5NzhmYjBkYjZlMGJmOTA1MmVhNmQ4YTliMDI0ZjUxIGxlZ2FjeS10cnVuaworMjk4NDEgNGYyZDUxNzRiZDRhYzViOGVlYmE4MGYwYzIzYjRhMGU1Nzc4ZmE1OSBsZWdhY3ktdHJ1bmsKKzI5ODQyIGQxZDg5NTliMTM4YWNmZWQ5ZjY0NTMwMjgzYWRmNzQwMjNhZWQyMTMgbGVnYWN5LXRydW5rCisyOTg0MyAwOGI3MjBjZDM4N2UzMzU5NWNiNmE2NWQxZjJjMGQ1NjY5ODQzYzI0IGxlZ2FjeS10cnVuaworMjk4NDQgMGM3Y2IyNzQ2ZDg2NDM0NThlZGEyZGVmMTcwZDRkYTg1OTg0MGJmYyBsZWdhY3ktdHJ1bmsKKzI5ODQ1IGMxY2FhNWJmZjI5MmFmNTJlMGYwMjY4NGJhZDFiMjk1N2QxZDE2MDggbGVnYWN5LXRydW5rCisyOTg0NiBjMjYwNGQ2OWFhNWQ1MmJjMmQ2ODNjYmMzYTI3ODBkYmI1OGYzYjExIGxlZ2FjeS10cnVuaworMjk4NDcgOWU0ODlhMGRmN2I1YWY5ZDY2OGQ2NTM5MGM4YjYyMGE5YmFiZWFjNSBsZWdhY3ktdHJ1bmsKKzI5ODQ4IDNkMGUwMjk3NmJjMzM2NjQ3YTc5NTk1YmRlNTJjYTYwNDg5ZTdjODcgbGVnYWN5LXRydW5rCisyOTg0OSBlMTY4NzYzZTg2MWEyYzQ5MTI3ZmNjODQ3ZmJjNWMxYmM0YTZkN2VkIGxlZ2FjeS10cnVuaworMjk4NTAgZDRjYzk3MWQxOGE2M2UxMGZkZmRjOWZiZGY5MDE2MjJjOTMyYTE5OSBsZWdhY3ktdHJ1bmsKKzI5ODUxIDEzNWJiMTEyMTVhMDk0YmU4NjJhYjY5OTI0Yjg1NzM4ZThiZWU2MzQgbGVnYWN5LXRydW5rCisyOTg1MiBkMGYyZDFmM2ZjODU0MmE2MzA5YzAwOWEzYjA3MGMzN2U4YmQ3YjdiIGxlZ2FjeS10cnVuaworMjk4NTMgMGYyNzY2MzAyYmEwYTlmMzY4ZTc4YjU0NDVkYjdlMGRkNGNiMTBmYiBsZWdhY3ktdHJ1bmsKKzI5ODU0IGQyZmI0MmVjOGJiNDIyZTMxNmRhMzMzNjI3Zjk0ODhmMWEyMDcxYzAgbGVnYWN5LXRydW5rCisyOTg1NSBhYjM3NjNkNDc3Y2M0MDhhNjc4Y2QxM2YxYjFjNDY5YzU0NTI1YjMyIGxlZ2FjeS10cnVuaworMjk4NTYgMTg4NWIyZDYzOTNhOGFjZDcwNGMyODM5OGMxYTkzY2E2N2FlMTBjZCBsZWdhY3ktdHJ1bmsKKzI5ODU3IGY4YTFiYTQ0NjE1ODQ2OWNlYzY4N2JjMjkxN2QzMjNmMzg3ZjUxZjcgbGVnYWN5LXRydW5rCisyOTg1OCAxMTkxOTdmYTYxNDA4ZWQ1YWI4MTAzMWJmZmJhYmU0YmMxYWQzMDJjIGxlZ2FjeS10cnVuaworMjk4NTkgM2Q1MjNkYmM5OWJlZWE0YTc5NDU4YjBkMTNjYjRlNTM2ZjUyMzAwZiBsZWdhY3ktdHJ1bmsKKzI5ODYwIGU3NDg2ZjNlZjc1OWE4YjJlNTQyN2Y0MDBlMmQ5N2EyZGY4MzFjM2QgbGVnYWN5LXRydW5rCisyOTg2MSBkZjU1NmZkZWM2OWQwNWYzNTQ3OGUxZGJjNWM2ZThiNDhiY2I0YjQ5IGxlZ2FjeS10cnVuaworMjk4NjIgMWY4MDAwNTdiNjM3MjhmNTI1N2ExYTY3MzQ3NjgyNjY0NTQ2MWVjMCBsZWdhY3ktdHJ1bmsKKzI5ODYzIGRmNzE5NzM2ZTE1MWI1NzY0NjhjM2MwZjljYjk2ZmU2MGZjNGRjY2EgbGVnYWN5LXRydW5rCisyOTg2NCBmY2Y5NzM0ZTEwMjE0YmUzYzRmMzc3MDc1YTNjYWMyMzJhYjZiNWMzIGxlZ2FjeS10cnVuaworMjk4NjUgMWJhZjFjZGRjMGVjZDk2OWM2NzRjN2JjZjc0YzliNmEzZTIwNDc2MiBsZWdhY3ktdHJ1bmsKKzI5ODY2IDhhMDEwYzI3ZDZjYjlhMzZjZmU1Y2E5ZjU1NDY2ZDQ2MGFiOWU0MzUgbGVnYWN5LXRydW5rCisyOTg2NyBhOGNhZGZiMGZmODMyZjZiY2JjZjBkYWQ3ZjMyZWQ5MDY2YTU4MDk0IGxlZ2FjeS10cnVuaworMjk4NjggZDIwN2QxZDc4YzVkNWExZmJkZDQyOWI3NTViMjQxNmZiZjFjNzIwMyBsZWdhY3ktdHJ1bmsKKzI5ODY5IDQ4MmFlMDU1YmJkNGZhMGFjNWM0Y2FlNWQ1NzY4M2FkMjBjZjcyOGUgbGVnYWN5LXRydW5rCisyOTg3MCBiYjM4ZDdhYmMzZmNkY2Y3OGE5NzNmY2M3MmQxYjRkNDIyNjRlMzA4IGxlZ2FjeS10cnVuaworMjk4NzEgNDkxYmZjNGEwZjViYjYyMjk3YTdjYzdhYWJhNGRlM2M5NzU0ZTViNCBsZWdhY3ktdHJ1bmsKKzI5ODcyIGIwNTVlNzg4M2M4M2ZjNTI3NDY2YmQxMTM5MWU1NWFmNmJlNGFmMGYgbGVnYWN5LXRydW5rCisyOTg3MyBlM2ZhZTdiNmMyMDc4ZjRkOGFjNTZlMTFmNzZlMmNmMDhjZmQ3ZWI2IGxlZ2FjeS10cnVuaworMjk4NzQgYjI3YzFjYWQ3N2VhNzA3NTBlYzRmOTZmZmY4M2QxMGI0YTgwZjczOSBsZWdhY3ktdHJ1bmsKKzI5ODc1IGEwZDc1MmJlNTU3NzMwYmUzMTkwMmE5NGQ5YjM5OGUzOTI2OTUxNTcgbGVnYWN5LXRydW5rCisyOTg3NiAyODEyY2FjZTMwMWFjZDdmZTU5MjUzYzQyY2U2MWNkMDVmMWRjZWM0IGxlZ2FjeS10cnVuaworMjk4NzcgY2M2Mjg1NGY2MzZjZjIxMDdhNzgzNjEwNTg0YzkxYTJkNmZmYjdlZSBsZWdhY3ktdHJ1bmsKKzI5ODc4IDQzODA0MzVmZWY2NjUwNGY0YzFkNDg1ODBhODM3MjQ3ODNmZjFlYmEgbGVnYWN5LXRydW5rCisyOTg3OSBjYmQ4MWQwOGM0MzAxYzRiODBjY2Y5M2RiYjhiNDJiMGQ4M2U5ODFiIGxlZ2FjeS10cnVuaworMjk4ODAgNDg4MTYwMjFmNTg4MjkyMTVmYzVlOWVhMDhhNTdjYTBmZmZjZWZkZSBsZWdhY3ktdHJ1bmsKKzI5ODgxIDFiNDdiNTc2ZTBkNGE2MWQxNWY4ZjBkMDk5ZDEwYmIwZTk0M2FiYmMgbGVnYWN5LXRydW5rCisyOTg4MiBiMzg1MzNlMDFkNjVmYzlmYThiZjlkN2JmZGVhNGZlMzg3ZmJmNDgxIGxlZ2FjeS10cnVuaworMjk4ODMgNzAwZTE4MmIyOTAxOTM0Mjc3YzNhYzI3MDJhYTk2ZWI4ODI3ZDcyYyBsZWdhY3ktdHJ1bmsKKzI5ODg0IGY3MTAxNzAyMmZjZWNjNjJlZmM3NTY3Y2I5Mjc0NjNhOWQ2ZmNjNjQgbGVnYWN5LXRydW5rCisyOTg4NSAzZmE2ZGVkMGExZTk0ODBmZTNiZDgzN2I1ZWQ1YTY5Y2JhNzQ3MjhkIGxlZ2FjeS10cnVuaworMjk4ODYgNTQ0NzI3ZDQxZjU2ODdmZWM5NTc5ZWVhZGEyMzUyODVhMjNiYjI0OCBsZWdhY3ktdHJ1bmsKKzI5ODg3IDI2OTE4ZTJlZmQxNzdhYTdiOGQxOTJmZTkyMjNiOTRjYTZiNWNkMTAgbGVnYWN5LXRydW5rCisyOTg4OCAxYTA5NGVmMGZjODYyYzQ0YmYwYTFhODY2NjMyNDYwMTBjMDMzM2EyIGxlZ2FjeS10cnVuaworMjk4ODkgZGRlOWM2MmE3MmZlMDNhYjMwYzY0YTkwYjJlZjI0MzAxZjRhMzVhOCBsZWdhY3ktdHJ1bmsKKzI5ODkwIDU2OWUxOTNiZjU5ZmNhNzAzNTE5MjIyZjcxYjE5ZDMxNzJiNGNjYzkgbGVnYWN5LXRydW5rCisyOTg5MSBmMjgzNTUzMTA4NjcwNTViNTE4M2FiYzE3ZDM5N2Y4OGU2Y2Q1ZWNkIGxlZ2FjeS10cnVuaworMjk4OTIgZDU4ODI0Y2ViMzVkNTg2NzlkMzIxMDdjYjQ0NmM0ZTcxZGYxZTU4NyBsZWdhY3ktdHJ1bmsKKzI5ODkzIGJkMDllM2EyZDUzNjQwZTgzZGNhYjJmNDhjMmU1ODExOTM2NzY1OTMgbGVnYWN5LXRydW5rCisyOTg5NCAwMzAzNTUyM2IzODVlZTk2M2JiMjMwN2Q4MmMxYTkyZjcxOWVhMTI2IHJlbGVhc2UyMi1tYWludAorMjk4OTUgMzVmNDQ0Y2E1ZTA1YzM3MzcwMTY3N2EwMzMzNDk5NzM5YzlmZDhmOSBsZWdhY3ktdHJ1bmsKKzI5ODk2IDFlNTE0ZTM3NzYxM2UxNzY4MjYwMTkxYmJjOWFmM2I2ZWJkMTkzNTMgbGVnYWN5LXRydW5rCisyOTg5NyBhYjZjN2IyN2E0Y2I5MTRjZDk4YmY2ZjZjN2M2YTUxOThlZmQ1MWMzIGxlZ2FjeS10cnVuaworMjk4OTggOWQ2YWVkMmU2MGUyOGY2Nzc3ZDY1ZTZlYzA4Y2E2Zjc0YjAzMjEyZSBsZWdhY3ktdHJ1bmsKKzI5ODk5IDRkNDcxNTI2YWNlMTI0Yjk5ZDRiZDEyYzNhNzQwN2QxOWE1Y2M5ZDYgbGVnYWN5LXRydW5rCisyOTkwMCAzZDI4NjlkZTIzMzZjYjEyOTNhMTI5MDEyMWNjMzJmYjU1NTg3MWM0IGxlZ2FjeS10cnVuaworMjk5MDEgNTFkMDA1NzgxYzg2OTE0ZjZhMTdkZDZhZGUxNDk2M2YzZjY5N2YxMSBsZWdhY3ktdHJ1bmsKKzI5OTAyIDYwOWI1ZjM3ZjE0ZmUyYmQ5MWY0ZDljNjE2OGRkMzkyNWQ2ZGQ5NjggbGVnYWN5LXRydW5rCisyOTkwMyA0NTc0YjY1OWVjMzdhYmQ4ODdiMjllNDdiNmE0ODljMTViYWUxZTNlIGxlZ2FjeS10cnVuaworMjk5MDQgNjUxMWIxNmZmZTg5ZmZiZWZiOWY3YzFjNDU4NmZiZTkyNWI0OWNlYSBsZWdhY3ktdHJ1bmsKKzI5OTA1IDAxMDNmMGI3NWZlMjYzNDdlODg2MDhlZGVlOGM2NTRjMTM1OWJmMWEgbGVnYWN5LXRydW5rCisyOTkwNiA0YmVlMzM3OTA5NDBjY2RkZjIzMGEwZDQ5ZmYzN2I0M2EzYTRkNmQ3IGxlZ2FjeS10cnVuaworMjk5MDcgYjA0ODlhNjA1OTdmNzQxNDFjOGM4MTJiZWI3NGYxY2NmZTRlOGU0YSBsZWdhY3ktdHJ1bmsKKzI5OTA4IGFkNzVlZmUyZjBhNjZjN2ZkZDFmMDZhODgwYWRkMjQ5YThkZTRjNzggbGVnYWN5LXRydW5rCisyOTkwOSBjNTIyYzhjNzFjYWIwYzEwZTg1NmM1NzNjMDE4NjFiMzJhNmZlOWI5IGxlZ2FjeS10cnVuaworMjk5MTAgYzZmZmQ4ZTYxY2NlNmRiY2MwZjBhMTM4ZjZlNjU5YjFjNzNlNjk3MSByZWxlYXNlMjItbWFpbnQKKzI5OTExIDZkNTkwNjg1M2E3ZDkwN2U2ODM1NTAxYWY0OTUzZDA2ZTFiYzdhOWYgbGVnYWN5LXRydW5rCisyOTkxMiBjMmJlNGRjMjU0MDU1NDM1ODcwODk3ZTk3MjlmMzYwN2M3MzU4YTNkIHJlbGVhc2UyMi1tYWludAorMjk5MTMgNGEwMTIwOTkyNjkxNmQ5YWI1M2UwMDg2MGE0ZTliMzQ3OGVmNzU0MyBsZWdhY3ktdHJ1bmsKKzI5OTE0IDU3ZDAzMzc1YWVhZDc3YTg1OTk1MDI0OWFiNmZkODZhZTIyYmZkYTQgbGVnYWN5LXRydW5rCisyOTkxNSBkNDQ5NDViODFmZmFlMDA3NzVmMTJmYmE4NWYxN2I3M2Q0ODQ1NDYxIGxlZ2FjeS10cnVuaworMjk5MTYgYzViMTMwNTA4MWRmZDEyOTlmY2E5YzU5NWEzYmI1MTU2NTE2MDUxZiBsZWdhY3ktdHJ1bmsKKzI5OTE3IGFhMGUxOWI2ZTFlNzVhMGM1NzRhYjc3M2YxNThhNGNjYzNhOTZhZGQgbGVnYWN5LXRydW5rCisyOTkxOCBhMzUwYTQ4N2VhYzExYjM2NTU5Yzk1NDZkNTBhMWVlMzE5NzFkNmU4IGxlZ2FjeS10cnVuaworMjk5MTkgMzY3MjUyMjE0ZGFmMGYyNzUyOWMwZmI0YTRhYzdmNTZlZWIyNjhhNSBsZWdhY3ktdHJ1bmsKKzI5OTIwIGMxMjU4YjFhMzZjNmY2OGRmNmMwMTllYWQ5NTM1ZmJhNjk1M2ExZWQgbGVnYWN5LXRydW5rCisyOTkyMSA0YWMzOGYyOGNkMTBhMTVjY2M5MjRjOTRjM2NkYjMyNzAxZTJmM2YyIGxlZ2FjeS10cnVuaworMjk5MjIgNzQyMTM2NzI3NGI0NTQ4MWVmMjcxZGE2MjdkZmM2YTdmNTJmNmI0NCBsZWdhY3ktdHJ1bmsKKzI5OTIzIDc3NzdkY2ViNjZlZTE0NGNjYzU2NWZjM2I1NjY3YzA0Nzg1NTNiNjUgbGVnYWN5LXRydW5rCisyOTkyNCA3YTA5YjM2Y2EzNzljMmMwN2Q2ZDc5MThjMGZmNGUwODdmMjQ0MTEwIGxlZ2FjeS10cnVuaworMjk5MjUgYmRkYzQxMzE1MzM2NTBkOGJkZGQ4NTYxNTBmZjJiM2NjMDcyOGFhZSBsZWdhY3ktdHJ1bmsKKzI5OTI2IDhlYTJlMzU5OTdhMDRiMjA1NDMwZTgxNDRjMmU5YzAzNTUxM2FmNTkgbGVnYWN5LXRydW5rCisyOTkyNyA4Yjk4OGEwOWRlOTZkZGE2NjlhYzk3NTBhZmUzNjkyZWUxNzBkY2RkIHJlbGVhc2UyMi1tYWludAorMjk5MjggY2EwMWYzZGU2NjRlOGI2MDkzMTI5MTk1ZDY0NGY1OTdkMDI1Nzk0NSBsZWdhY3ktdHJ1bmsKKzI5OTI5IGNiODVhYWU3ODk4MDJhZDY3YTY1NWVjNzRiZDdjOGUwMTM5MDBjMjUgbGVnYWN5LXRydW5rCisyOTkzMCA2MGU1Nzc5N2I4ZTYxYTMxMWNhYTI5ZWE2NGNiNTY4YmVjNjBjZjg4IGxlZ2FjeS10cnVuaworMjk5MzEgMjcyMDRmMDcxMmEyNmVlOGM0NThjZjkyMWY1NWI5NjhiM2Y5MzA2NCBsZWdhY3ktdHJ1bmsKKzI5OTMyIDVjN2EzYTE3MzEwZDFhMmE4ZDM2ZjczZTMwMzlhY2VkNjZkMTNiM2MgbGVnYWN5LXRydW5rCisyOTkzNCA0OWY0OWFlYmY1YzIwYmUzMmQ4ZTRjYzYyYjkxMGZmNjc3ODcyOTE5IGxlZ2FjeS10cnVuaworMjk5MzUgZTUxY2JkY2EyMDg1YmE5NzJhNzdlZmZiYzgwY2JiNmZjMzIzNjkyZCBsZWdhY3ktdHJ1bmsKKzI5OTM2IDAzYWZkYTlhZDA5MDhhM2ZjMTI4ZTgzZTNiYjIzNjA5NjNlY2UwMzcgbGVnYWN5LXRydW5rCisyOTkzNyBkZDgxN2JiMzY0NmJjYjkyZGRkOTRkZGMwNDNkYTY0NGZhY2RjNjYxIGxlZ2FjeS10cnVuaworMjk5MzggMzdhMTc4YzBmZDU5ZjJmMjQzMmU5OGM1NTdiZTg5MDMwZmZmYTczYiBsZWdhY3ktdHJ1bmsKKzI5OTM5IGRkYmIwNTdlNWFiMzE1YmNlOTQ2MWQxYzA2MjY5MGQ0MzhhMWY0YTEgbGVnYWN5LXRydW5rCisyOTk0MCAxNTk1N2I3ZTQyNDc5ZTI5OTlmZDgwZTQ5ZGYzNzUzYTViZWUzYTBiIGxlZ2FjeS10cnVuaworMjk5NDEgYzg4ZjZmZmYxYzNmMWM3ODE3MzY0ZDMzOWQ5YmE4ZTEzMjFiODZhNiBsZWdhY3ktdHJ1bmsKKzI5OTQyIDE0ZmMxODczMzRjNTgxNWE5OGUzODFkMGJkMWU3YTE4YTRmNWM4NDkgbGVnYWN5LXRydW5rCisyOTk0MyBlMWEzMzEzNmI0ZTI2N2JiZjQ5ODliYzMzMzMzNjI2NjY3Yjg1YjEyIGxlZ2FjeS10cnVuaworMjk5NDQgNDE4YTdlYzkyNTk5MzBmZmY4NzM1NzM0NTUzNTVkM2RhNzQ2Y2RkNyBsZWdhY3ktdHJ1bmsKKzI5OTQ1IGE1NzNhZjVkYjgwNzQ1MmVhYzc0YzcxNmVhMmY5ZWE3ZDlmMDI3ZmQgbGVnYWN5LXRydW5rCisyOTk0NiBmYmIyNGNkNTQ3NjZjZTc3YjkwZTMwNWJhZTUwYzY5YmMzYjA5NGQ5IGxlZ2FjeS10cnVuaworMjk5NDcgZjc5ZWJiYWE0ODMzNGQ1ODJlZGRjZGQ1YWI4MmQyN2FkZGNhMTQzNSBsZWdhY3ktdHJ1bmsKKzI5OTQ4IDk1ZWRiNDhkYmZhMTZmNjNlNjgyYmU4YjBkM2IxODA1NzA3ODNiNjEgbGVnYWN5LXRydW5rCisyOTk0OSA5OWM3OGNmOTU2MTA1MWE5YTAzMGE1Y2VhZGMwNGM2NjE2ZWZlYzg5IGxlZ2FjeS10cnVuaworMjk5NTAgYjhmZmZiYmQ2ODMyNjYzNmRkZDY2MWI0ZTNlOGMxYzhkYTEzNGI2YSBsZWdhY3ktdHJ1bmsKKzI5OTUxIDA2OTBmODFjY2U3OGJlNzRhMTA4MjBjMDk5Y2VkMTVkYjYzZTczMGYgbGVnYWN5LXRydW5rCisyOTk1MiAxMzgzODUzMGY2MTk1NzQ0N2Y5ZDk5YTA0MDA4NDhkNTI2ZDBhZTVhIGxlZ2FjeS10cnVuaworMjk5NTMgNmM0NTk4NWE4ZmRiZmYzYWExNGQ3NjM0NTdiYjg2NjQ2ZTNmYjIyZiBsZWdhY3ktdHJ1bmsKKzI5OTU0IGYyNTViM2Y1ZTkxMzYxYzQ0ZWFjMzJlMWZmZWFjMjI2NjA3ODZhODggbGVnYWN5LXRydW5rCisyOTk1NSBlMDc5NDhkNWNmNjdjNDVkYzdmODgxOThiMjkxMDRiYjhjNGM4NWI5IGxlZ2FjeS10cnVuaworMjk5NTYgNzQ2OGI2OGU5ODI4NmY0ZWMxYWMxN2RlM2JmY2NiNDBmOWNjMGJkZCBsZWdhY3ktdHJ1bmsKKzI5OTU3IGQxYjRlNzAxNmQ4OGE1MmViOGI2MmNkNTQ3Yzk4YWFhZjcxMWQ2MmMgbGVnYWN5LXRydW5rCisyOTk1OCA3YmEwNzJkYjM4MjhmN2QzYWQ5NjI2MGM2YjRhMzg2M2FjZmU4MWQ3IGxlZ2FjeS10cnVuaworMjk5NTkgYjI2OGE2ZTg1OWNiN2IyODY0OWNlZjk4YWE4ZGQzYmQ5YzYyZDg5MSBsZWdhY3ktdHJ1bmsKKzI5OTYwIDI4ZWZlMTZhOGI3ZGY3YWQwZTk2NGRjMjgzNDZjNTRhNWViZDQ2YTIgbGVnYWN5LXRydW5rCisyOTk2MSBlMjZhMjA4ZWE3MWI4MzU3MTZmYTAzYjVlNWYyZDc0ODFlYjQ0NzUzIGxlZ2FjeS10cnVuaworMjk5NjIgMGY4NDhiMDYxNDZmMGM5NzU0NjdkYTAxNDhlNTU0NGRkODAwY2U4ZCBsZWdhY3ktdHJ1bmsKKzI5OTYzIGI0Y2U2YWMxN2Y2MDc5ZTY2ZjM0MjFhOGYwNjViMDdkMDgyZTQyM2QgbGVnYWN5LXRydW5rCisyOTk2NCAyZjQwZmE3OWI1OWE1ZjI3OWMwM2Q3MWFjYzBkMWZkOWRkOGE0M2QwIGxlZ2FjeS10cnVuaworMjk5NjUgYjhhN2M0Y2YzZTZkMjYwMDU5NzIwZWNjYjU4MjA3OWFhYWYzNWNmYiBsZWdhY3ktdHJ1bmsKKzI5OTY2IGMxMzVmYjJiYjgyNWFlODA4NWIyODFmYzY5Mjk2ZjJkMzNhYmU3NzUgbGVnYWN5LXRydW5rCisyOTk2NyBhNTZlMGIyNTE3YmQ4MzU2NGE4MjNkNjliNzIwZjZiMWFkMTMwZmY1IHJlbGVhc2UyMi1tYWludAorMjk5NjggYWY0Njk4ZTU5MWVjYzhlMjk4NWIzZTkxM2MyMGQyZmQ0MGVlYWQyYSByZWxlYXNlMjItbWFpbnQKKzI5OTY5IGUwYjU5NjA2MDMxM2U2MzcwOGY3YTI5NGU1YjAwZmVmYTQ0MTYxNGEgbGVnYWN5LXRydW5rCisyOTk3MCAyMzhjYWM5N2QxNjU4NGJlMzE1NWI3YTRlZDQ0NGM0ZTY2YWY1NDE5IGxlZ2FjeS10cnVuaworMjk5NzEgYjMxYmQwMDRmNDMwYzczMzg4YTA5YzczYjBhODIzZTcxYjYwOGQxOCBsZWdhY3ktdHJ1bmsKKzI5OTcyIDNmODAxOTI3MzU0OWVjZjJhODllOTZlYmRjNmZkZmNmMDM5YmIwMGUgbGVnYWN5LXRydW5rCisyOTk3MyA1NDY3YzZlMWY1NDFiMDRmZWI1MDE3Mzk4NzRlN2ZjMDA2Zjg3NjY0IGxlZ2FjeS10cnVuaworMjk5NzQgMjc3NWRlMzVkZDI5ZDQ5Y2VkNTA2ZDZiNzJkMGFjNzE1YTc2ZmQxYyBsZWdhY3ktdHJ1bmsKKzI5OTc1IGYwNzcyYmQ3Y2M0MDEyYzIwZjg3NGY4MTNkODkzMGM4NDg4NDZmYWQgbGVnYWN5LXRydW5rCisyOTk3NiBmOGQxYzY4MjBiZmFlYzUzODlkNzcxOTY2MTc1MjQzZWRlZTRhNDZkIGxlZ2FjeS10cnVuaworMjk5NzcgNzZmNzliYjM2ZmM3NzNkYzkxYWU0MTM5N2ZkNWU3ZWMzY2FkNTQxOSBsZWdhY3ktdHJ1bmsKKzI5OTc4IGNkMWZlNGI1ZjdmZmNjMjNlZTljOTJiOTYyNDY1YTkyNWUxZGI0OGEgbGVnYWN5LXRydW5rCisyOTk3OSBmODYxMzBmNDViZjc1MGQ4ZjliZDg4ZDVlMjRkYmQ2OWQ2MzkxZWU5IGxlZ2FjeS10cnVuaworMjk5ODAgNjcxMzI3MTk1ZGMzMGVhNWQyYzQ3ZWIyOTQ5NTcyNjA2MzYwNjcyMiBsZWdhY3ktdHJ1bmsKKzI5OTgxIDgyNTQ0NWY5ZDZiOGIwMmM4ZWJjYTIyMjc1YTgxY2YxZGY0YjA1MGYgbGVnYWN5LXRydW5rCisyOTk4MiAwMDE1ZDNmMTg5ZTE0OWEyOWI2NmE1MjE3NWE2ODQwNGQyZGNjNzM3IGxlZ2FjeS10cnVuaworMjk5ODMgZWRhOGU2ODk4ZGQzZWU3YzExZTMyZDBlOTQ4ZDdhNWYzYWFkZDdjZCBsZWdhY3ktdHJ1bmsKKzI5OTg0IGE5YjRiNmFhMTIyMDI3NzRjZTQ4MzNlM2QyZWIwNWRjMDA0OTBhNTAgbGVnYWN5LXRydW5rCisyOTk4NSBmYTQ1MzJlZjk5YzlhOWYwODgzYTJiMTFiZWIxYTliNDg4NjM3YmYyIGxlZ2FjeS10cnVuaworMjk5ODYgZTkyM2Y2ZDNiNGEzMzA5MTc3MTdmZGI2OTczY2UwMDI4ZTU3YTA4YSBsZWdhY3ktdHJ1bmsKKzI5OTg3IDllNGM4MDM0MGZhMWQ5NzU1ZWYyY2Q4M2ZiNThmYjIzMzM5ZDYxMWUgbGVnYWN5LXRydW5rCisyOTk4OCBmNDBhMmQzYTJhYjU1MzcyYTVjZjZmMmQxMjRkMGY4NzAwNTliY2Q1IGxlZ2FjeS10cnVuaworMjk5ODkgMmQ0NGFiZTU3YjQyNjM4NDBkY2Y4MDU4OTQzMmNjZTMzY2Q2MWRjNyBsZWdhY3ktdHJ1bmsKKzI5OTkwIDM3NmJkMzU3YzRkNWFlNmQxNjdhMmZhZDdhN2Q2MjZlNTRlZjA2OTQgbGVnYWN5LXRydW5rCisyOTk5MSA1YTllNzA2NGM5MjM0ZDEyN2QyMDg0N2IwMzk5ZWMzMWQwOWIwNDRlIGxlZ2FjeS10cnVuaworMjk5OTIgNjQzMTAwMTcwYmRlOTFmODY1ZThlYzNlODA0NTYwZTQ0NmJjZGM2YSBsZWdhY3ktdHJ1bmsKKzI5OTkzIDUwYzYzM2E4N2UzNTU0N2YxYjNkOWNhMGEyYzljN2I4YjM4MWI1MDAgbGVnYWN5LXRydW5rCisyOTk5NCBmZDZmYjczZmIyMGZkYTFmYzk4OGU5ZThjY2Y0MDllN2RmNjczYzc4IHJlbGVhc2UyMi1tYWludAorMjk5OTUgODUwNDU5MWU0YzYzMWI0NDc3YWEwMWM1YTBhNTYzZjkwMGQxM2Y5ZCBsZWdhY3ktdHJ1bmsKKzI5OTk2IDk0YzU1M2ViODhjM2E1Nzc5MmNkOWU5ZjdlYTY0MjQ4MTI1MjdkNTIgbGVnYWN5LXRydW5rCisyOTk5NyAwYjY2ZDRlOWY0ZjQ4NTk2NzliNWI0MDU4MGRlMzA0MjIyZDhkMmZmIGxlZ2FjeS10cnVuaworMjk5OTggMTdkMTIzZjMzNjExMDYwMDU4YWE1NGRmZjAzNjUyYzY3ZDNmODhkYSBsZWdhY3ktdHJ1bmsKKzI5OTk5IDc5ZjkwNjNmYjU4ZWNiMjhkYWI5ODRiMDhmMDc4YzdmZjE2MjQ0NzQgcmVsZWFzZTIyLW1haW50CiszMDAwMCA0YzE2NDI4ZmJjZDgzYzVmMTcwMzkwMjY2OGRiZTA5YWM3MjMyYjQwIGxlZ2FjeS10cnVuaworMzAwMDEgYTVhODczNTcxMWU4MTZmODUxZDQyYmRkZTg0MGIyOTBlNzVhZGM0YSBsZWdhY3ktdHJ1bmsKKzMwMDAyIDdhYmE4NTljZWU1NDUzMjdjODhlNTU0ZTVhZTMxYjMxMzViZTA0OGMgbGVnYWN5LXRydW5rCiszMDAwMyBkMmQ3ODE3ZmNjYmJiYWUxM2Q4ZTkxN2U1MjJhN2U5YzYzMDdhMzExIGxlZ2FjeS10cnVuaworMzAwMDQgOWZiOGFhZGU4ODdmODU1Y2ZkMjViMTcwOGM4MDcwMzEwNzllYzgzZSBsZWdhY3ktdHJ1bmsKKzMwMDA1IDE4ZGNmODBlNmY4ZGVkZDRlMWMwOWZjZGFmNWUyNjcyNTgxYjJjOWIgbGVnYWN5LXRydW5rCiszMDAwNiAzOGZlNWViNmFjMjU2NzIxMjYxNzllZTJlMDI3OTNmOWU0NWU1OTIzIGxlZ2FjeS10cnVuaworMzAwMDcgMzk4MWNmMmE1NzMwNTM0ZDg5NmRjNzRkYzNmYmJiY2U1OTM5ZDA1OCBsZWdhY3ktdHJ1bmsKKzMwMDA4IGI1ODM3YjhmM2IyYzRjMmI2YjAwNWVmZjI3NjdjYTEzZjUxZWJiYzQgbGVnYWN5LXRydW5rCiszMDAwOSA4ZTE1NjdkYmNiYTg5M2ZlNjZiM2MwOTMwNzlkM2Q2OWNjYzcwYzBhIGxlZ2FjeS10cnVuaworMzAwMTAgNjE3N2ExM2U0YzE0NWE0MGQxOGYyY2JhMGVmZTRjNGVmZmVkMGFhZCBsZWdhY3ktdHJ1bmsKKzMwMDExIGQ2ZDUyMjJiN2U1NTUyYTkyZTdhMjBhYjU0M2FhZGU3OTI3ZjY3ZmMgbGVnYWN5LXRydW5rCiszMDAxMiBjYTZmYTY5NzExYmI1ZTBlMmRmOTY5ZjNmMDJhN2E5ZDgyOTcyMzc5IGxlZ2FjeS10cnVuaworMzAwMTMgNjFlMmI4Y2VmZDg2NzAwYmYxZGNmMWQwNzNiZTAzY2U3YmJmM2FlMCBsZWdhY3ktdHJ1bmsKKzMwMDE0IDZlYTc4NjUyODM5NWFiNzQ0MDc5N2E5MjNkNDdiMmIwYTNkN2FjNjkgbGVnYWN5LXRydW5rCiszMDAxNSA5OTdmYTAyMjQ0YmFjMmMyYWQwNjVhNjlkODNiMWIyNzY3MzZlYmQyIGxlZ2FjeS10cnVuaworMzAwMTYgMjYyMTk2ODMxOWYwMzQ0YTJmYzE3OWUyZTcyOThhYzQ2NTUxZmI5ZiBsZWdhY3ktdHJ1bmsKKzMwMDE3IDBlNmUzOWZiOWNkNzMyYWQ2ZGQwMWM4ODQwMjFkNDAyNWU2NWQzZjkgbGVnYWN5LXRydW5rCiszMDAxOCA5MTBmYjY2YzNiODFjYmNlM2I2NThjYTJmYjJiNjE5NTFiZDk4YTVkIGxlZ2FjeS10cnVuaworMzAwMTkgZTQyNzMyZTI4OWI5YTQxNmRjYzY2NmY0ZDNlNmQ5YzhhMzRjN2Q4NCBsZWdhY3ktdHJ1bmsKKzMwMDIwIDU4NDQwZDBiOWI0ZWE2YzdjNmJjYzgyZDlkMmVjYjU1MmFlMjlmMDYgbGVnYWN5LXRydW5rCiszMDAyMSA5NzU0ODJkNWViNWNlNzk0ZDUyMTNlNDgyOGI5NTA2OGU1N2VmM2E4IGxlZ2FjeS10cnVuaworMzAwMjIgOTk3MGQ3Nzk4MGEwZTJmYjkzOWM5MDk5YWI3MzQwNTQzOWJjNDQ0MyBsZWdhY3ktdHJ1bmsKKzMwMDIzIDhhNzVjNjZiZmExNGRlNGJhNzJhY2M1YTA0NDllZjlmYTQ2MDBjMjggbGVnYWN5LXRydW5rCiszMDAyNCAwOWM3ZWQxYjdhODczOWQ4Mjc5NjcyMjhjNjAxNGRkNzhkYzc2MTQzIGxlZ2FjeS10cnVuaworMzAwMjUgNjg3YjRiMTY1MjY4Yzc1OWZkNDc3ZTI4OGViODU1MGJiNjIyMGE5NiByZWxlYXNlMjItbWFpbnQKKzMwMDI2IDY3OTEyZDgzNzk5ZjczYzBjZTk1NzE2NGI5MDFkMjRkMDZkYmQ4YWIgbGVnYWN5LXRydW5rCiszMDAyNyA4YjM2MDFhNjIzMzYzMzJkZTI0YjA2YjM0YmZmNDU3ZTk1ODY2ZTI3IGxlZ2FjeS10cnVuaworMzAwMjggYjljOTEyZTJjM2MwMDYzZGM5MGI1NDU1NDA1MWJjY2FhODgxODRkNyBsZWdhY3ktdHJ1bmsKKzMwMDI5IDBjOTk1Y2QwNzAyNjc3MTk2MDNmYTcxM2Q5NWNlYTQ5M2NmZjJjMWYgbGVnYWN5LXRydW5rCiszMDAzMCA0ZTZhYzJmZTY4ZjBiY2E4ZTNmMTkwNjA5YWE4ZjAzNzkxZjg2YjdkIHJlbGVhc2UyMi1tYWludAorMzAwMzEgYzg4NGE2YzQ3ZTA2MGU4YjFmZjAzMDM5ZWU1NGI5NTYwY2RmMzljMiByZWxlYXNlMjItbWFpbnQKKzMwMDMyIDRiZWJmMWExOTMxOWM0MTVjZTkzYzNkZDdjMDE0MzhlNDBmNmQ3N2UgbGVnYWN5LXRydW5rCiszMDAzMyBhMzZkZmZkNzUzMDA5YjhlZjNlZTkyYTNkODEyNzBhNTk3ZTJmODg2IHJlbGVhc2UyMi1tYWludAorMzAwMzQgMjQyYWQ1YzU5MmNjMmFmZGE4NWRhMGJjMjkzYTFlYWQ0MmI5ZGI4NCBsZWdhY3ktdHJ1bmsKKzMwMDM1IDRiZTYyZGM5YTNlN2Q3NDkyNjBjNDMxNDhjNzI3ZGY1NzVkMDc4YWUgbGVnYWN5LXRydW5rCiszMDAzNiA3MDFiNzk3YmJkYzhmYjQ0NjBkMGUzNTMyY2MwYzE0MzEyMmE1NjY5IGxlZ2FjeS10cnVuaworMzAwMzcgMGRiZjk4ZWUxMThlMjY5NTNiNjE3MWM0ZGRiOWE4NGJhNDVlYmM4OSBsZWdhY3ktdHJ1bmsKKzMwMDM4IDhmNzQzZWJlNmM2NjMyYjAwYTNjYjJlZjEzN2NjNjc0MmZkZWQ2YTggcmVsZWFzZTIyLW1haW50CiszMDAzOSAxMmJjNGEzZTQ1YWY4YTI0YzFiOGVjZmViODZkYjg1ZGQ3MmI3MzQ4IGxlZ2FjeS10cnVuaworMzAwNDAgODUxYzYyOTIwNWQyZjNmYWUzMmE4NDQ0OTg5MzQ4ZDZlMDk4OTg1OSBsZWdhY3ktdHJ1bmsKKzMwMDQxIGI1NjZiZThiZmMyM2M3OTAyNjRkZTBjOGJkMjUxZDM1NzFkYTQ0YzYgbGVnYWN5LXRydW5rCiszMDA0MiBmYTY1Zjk0ZGM0Y2RiYzc0NTkwZjU4MDg3NTAxYmQ0MWJkMWUxNTRjIGxlZ2FjeS10cnVuaworMzAwNDMgYTlmNmMwMDZhYTQ1ODg2OTA5NmM0MzhmNTMxZmVmY2NlNGI1ODhkNyBsZWdhY3ktdHJ1bmsKKzMwMDQ0IDcxNWUyODg4ZjM3N2ZiOTJlZDIxM2ZjNDU5Y2FkYmNhZDA2NDg3NjggcmVsZWFzZTIyLW1haW50CiszMDA0NSAwNjAxYTkwNTU4ZmRiYWYzOWVjYmQ3ODZlYWI2OWY4NmI1MTU2MzQ5IGxlZ2FjeS10cnVuaworMzAwNDYgMzQyYzM0YzQzOGEyNjA4YTE1NTQ2NWZhMmFlNDgzNjA0YzZlYTVlOCByZWxlYXNlMjItbWFpbnQKKzMwMDQ3IDgyYjlmNWM3ZDAxYTE0NjYyN2ZlZTY4ZjRhYmE0ZjVhYmFkZjgxYTUgbGVnYWN5LXRydW5rCiszMDA0OCAyYWJhMWFjNDc0NGM5Njc5Mzk1NTJmZWU4ZGJkYjU3ZjAwMjVkZTgwIGxlZ2FjeS10cnVuaworMzAwNDkgY2I4Y2ZhZGY3NWEyN2JmOGI1M2UzYTA2OGIwNzk4YTFlOTU4YTU5MiBsZWdhY3ktdHJ1bmsKKzMwMDUwIGQ3NTVkNDI5MmYzZmZiMTJmYjgxN2M3MDNlMjI2N2ZjNzlkNmUzNTAgbGVnYWN5LXRydW5rCiszMDA1MSAyOWU4ZGU1OTc1NmE0NWI2MmVkZmNiODgyNjhiNTBkOTEwZjdhYzQ5IHJlbGVhc2UyMi1tYWludAorMzAwNTIgMWQ5ZTMwYzA1Y2RlNGNiMjY5YWMxNWRkZWM2MTdhZGUwNGJkN2I3ZSBsZWdhY3ktdHJ1bmsKKzMwMDUzIDkzYjVjYTk0MjNlYjI3OTViZDdhMzE4MTMzMTEzYjk1N2ZkNzBhNTIgbGVnYWN5LXRydW5rCiszMDA1NCA3YWU5YzM2Y2JjYjY2YTcxOWJlY2E4MDM0OTBmMGI4MjcyZWEzZmUyIGxlZ2FjeS10cnVuaworMzAwNTUgNDA1MjM5YTdlMGQ4YmM5NDg4YzdiODZiYzFhYzJiZWIxNjU1MWE1YyBsZWdhY3ktdHJ1bmsKKzMwMDU2IDhjYTgwODQzYTY3MTYxNzU5OTcyOTBlOTZhZGEwMmNhZDk3NDMxY2IgbGVnYWN5LXRydW5rCiszMDA1NyBlODk0MGQ0Y2Q4Y2FlN2FlMzZmY2ZiZmZlNjY0NzNlM2RlYThiMTZlIGxlZ2FjeS10cnVuaworMzAwNTggZDRiNzY4MTdjOWU2M2M2NTEwM2Y3YzQzM2U5MzcxNTczZmFiMjYwYSBsZWdhY3ktdHJ1bmsKKzMwMDU5IDkyMDZiMDA0ZjE1MmM0M2Q1YTFlZGZjMmQyM2IyZjBmNTRhYmFkNTQgbGVnYWN5LXRydW5rCiszMDA2MCA5NTI2ODdlYTljYjEyZDk4ZDY2MDFlNGM4MDJjZDczNWM0YTE2OWE3IGxlZ2FjeS10cnVuaworMzAwNjEgODk5MWY3ODgxN2M3OTAwNGEwYzgxNzNmYzk0Y2IxNjJkNjMxOWMxOSBsZWdhY3ktdHJ1bmsKKzMwMDYyIDRlOTRhYTA3Mjc2ODYyMDU1ZjQ1NDliMmI5NjZjOWQxNmU4NjRkMGYgbGVnYWN5LXRydW5rCiszMDA2MyAzZjQzODNhMDRiNjI1NGIzNmEyZTMzMDJmNzdkOGJkNzc5MDM1M2VlIGxlZ2FjeS10cnVuaworMzAwNjQgZTY0NDI1YmI5NGQ4OWEzMjBjOTAzYmI3ZjExMjkyNzczM2IyZWQ1YiBsZWdhY3ktdHJ1bmsKKzMwMDY1IDgxMDMyZTk3YmEzY2EyMDAyMWQ1YWY5Nzk5ZjFiMTAyMGQ5MjgxMDggbGVnYWN5LXRydW5rCiszMDA2NiBmNWI0ZTE3NzQ5NjE3YTk2MDEwNTc3ODUyNDFjZWU0YTZiZDgwMDdjIGxlZ2FjeS10cnVuaworMzAwNjcgZjlkNTE2YzYxZTdiOTMyY2Y2NWY3ZWE4ZjcwNTk4MTQ5NTE5NTEzOCBsZWdhY3ktdHJ1bmsKKzMwMDY4IDYxNWEyNWE2ZWI1YmFhYzY2NmZiNTQ2NTRiYTUzZTliYTUwNTFjMjcgbGVnYWN5LXRydW5rCiszMDA2OSBjMjM0ZjQ4ZGUxMzhmNDk5YjBkNGQ5ZjM3NGNlNzUxYmUzYjRhNTI5IGxlZ2FjeS10cnVuaworMzAwNzAgMGM2NDZiYWVlYzU4MjMyNWJiMWQ5NDBkM2Q2MDkxMGIxNmVkMzI1ZCBsZWdhY3ktdHJ1bmsKKzMwMDcxIDIxMTAzODUwNWU1NmM0ZWI5NzNhYmI1NmEwMmUxMjNhOWIzNzcyYzQgbGVnYWN5LXRydW5rCiszMDA3MiAwNTYzODc3Njc4MzI1NTk4MDFhYjUwMzk4ZmNkYjNhYTViMzM1NmNhIGxlZ2FjeS10cnVuaworMzAwNzMgYzM1NzY4ZDc4ODNlNDg0N2U5ZWM2MGJkOWIwYjYyZjI4YTI1YTIzNCBsZWdhY3ktdHJ1bmsKKzMwMDc0IDMwODRiZjhiZDExYzBhYTYwYTNmMzYxOGYxMDRjOGMwN2RlZDI0MzQgbGVnYWN5LXRydW5rCiszMDA3NSA3ZGRlYTRkZmE1MTlkM2FkOGU2MDJhOTg0YjFlZjczMjI3NTcxYTY2IGxlZ2FjeS10cnVuaworMzAwNzYgNTZkYmQ5MDc5YTEzZWQ2ZWY3NDFhZjU2NDdhYmIyMzQ2MjAxYWRiMCBsZWdhY3ktdHJ1bmsKKzMwMDc3IGVjZWE4NDEwMTc4ZTA2NWIxMjc0MGZlMzE3MWY2MWY3ZDVkMmYxMDkgbGVnYWN5LXRydW5rCiszMDA3OCA3NWJmYzI0ZmQ3NDg1MGQxN2U5NTIzMjVhYjU1ZGQ1Y2M3NTZhNjAwIGxlZ2FjeS10cnVuaworMzAwNzkgY2MwNWMyYzg2NjBlMGM2OGFjY2JjNTZiZDhlNjg4NzJkZTU1ZjE2OSBsZWdhY3ktdHJ1bmsKKzMwMDgwIGMxNjNlZDE3ZjhiYTM4NWFhODdjMDM0OTJjNTRjZDdhMGU1MTZkY2YgbGVnYWN5LXRydW5rCiszMDA4MSBiZmIyNjY0Y2RiMWJlODdjMDFkNjFkZDQ4YjA4NTIyMWFjZjYxMDM3IGxlZ2FjeS10cnVuaworMzAwODIgYWY1MTE5YmUyMjFmNDM5OTkzZjNjZDQyYmM4MmMzNWVhODJlMTQxOSBsZWdhY3ktdHJ1bmsKKzMwMDgzIDM3OGNlMDIwZDllNjhjNjc1ZjQ2NmUxMmViMmE0ZTU1Y2QwZTI4YmIgbGVnYWN5LXRydW5rCiszMDA4NCA5ZGIzOTZiY2U0ZTc1ZjIwNWI3NDMwMmVmMzhkZmM0MTY0MWExNjIzIGxlZ2FjeS10cnVuaworMzAwODUgZTM5ZTc0YWVhMmZiOGE3MzQxNGQ5ZmRjNWQ2NGUwZTdlNTljZTgxYiBsZWdhY3ktdHJ1bmsKKzMwMDg2IDE0ZjUzYjZkN2Y1OGIyMDRiNmRjMzhiZTU4ZjliZTNiM2E2NTRjM2IgbGVnYWN5LXRydW5rCiszMDA4NyAyZmFiMGI2NDg4YjUxMGFjOTM2MzI5OGY1MmNlMTA1MDU0YjI1YTM1IGxlZ2FjeS10cnVuaworMzAwODggNzRkMWFkNjFmODQzY2IyZmU0ZThlMmJjMDM4Y2I4NzVmZjZiNGEzYSBsZWdhY3ktdHJ1bmsKKzMwMDg5IDg3NzE5OTNjOWFhY2FkYTQwZmI4MTIyYzQwMzU5MmM2OGE1MmRiNGMgbGVnYWN5LXRydW5rCiszMDA5MCA5N2Y4MzU0MmY4ZWVmYWFlMWRmNDFiYzRlOTU3OWRiOTFkNGFmMDEzIGxlZ2FjeS10cnVuaworMzAwOTEgMjhiYzJkM2FmOTFkYjY4OWQ0MDgwMTgyNzVjOGY2MjMyNTY2YjgxNCBsZWdhY3ktdHJ1bmsKKzMwMDkyIDJjN2JkYmI1MGU3NjI4Y2E1MDMxM2RiZDFhMDVkZWVkMDA4ZjI5MGEgbGVnYWN5LXRydW5rCiszMDA5MyAwMjc4NTI0OGUwMGE2ZjQ0YzdmMTU2YjBlZDI5ODExZDJjMTQyMTdkIGxlZ2FjeS10cnVuaworMzAwOTQgMjBlMDc1NWYzNTU0MWQ2OWVlNjQ5NzcxOTEzZTk2MDdiMDkxOGNlMSBsZWdhY3ktdHJ1bmsKKzMwMDk1IDNiZTRmNWQzNzdkOGIyYzU0YTc2NTg5OGJlODU0YjhiMDhjOTVkODQgbGVnYWN5LXRydW5rCiszMDA5NiA5ZTc1MWVlZTgxZjUwNGU0NTI1ZTY0NGI4MjAxNGE4NDk1MWViYWM3IGxlZ2FjeS10cnVuaworMzAwOTcgYjYyOTk4Zjk4OTczZTMzMWQ4MWFjYWI3MTJmNDEzZTIxZjEyZjIxNiBsZWdhY3ktdHJ1bmsKKzMwMDk4IGNiOTNkOTI4N2I0ZWFlYzRkZjMwZTg2NGY0MTI5Mzk5MGEzZDA0ZTggbGVnYWN5LXRydW5rCiszMDA5OSA3ZDE5Mjg3NWExMmY3OTkwMmFiZjM2MTllMGJkYWU4NTY1ZDI2NGRhIGxlZ2FjeS10cnVuaworMzAxMDAgMTk1MDdhMWQwMjU0OGViYTkyZDRkOWE0Y2UxZTkzYjc0MTBiYzZiYSBsZWdhY3ktdHJ1bmsKKzMwMTAxIDgwOTZkY2M3YWY2NWJiYjYxMDNjZjZkZjQ3YjE2MmRlMWMwNjRjZjUgbGVnYWN5LXRydW5rCiszMDEwMiA2MzdiMTBiNTJlMDJlNjdmMzQzNjFkY2IwYWExNDBjYWY3OTQwMjZlIGxlZ2FjeS10cnVuaworMzAxMDMgYmExNTc4YmU1NzA2ZWQ1ZTk1ZGIxNzM0YzhhYzAwYzhiN2U1ZGU1NiBsZWdhY3ktdHJ1bmsKKzMwMTA0IGU0MWVlMmI4ZTczZGVhY2VmNmNmMWU2MTc3NGFlNjViNmUzMjJhOGIgbGVnYWN5LXRydW5rCiszMDEwNSA3YmFiZGFlYTdkMTlkN2YzYTFiMmExZDhiOWUyOTUxMGUwMjUzZWI3IGxlZ2FjeS10cnVuaworMzAxMDYgOGRmYzBmYzRjMTRiNTEwMDEwMjIwYjUxZWY4MjQ1YjU5YTcxNmI0YiBsZWdhY3ktdHJ1bmsKKzMwMTA3IDk4MTY0NjY2ZDJhODk3MmE0NzVmMjkzMWUzN2I2MmE5YWEwNDU2YmMgbGVnYWN5LXRydW5rCiszMDEwOCA1OWRkOTI1N2JjMDMxNmY2YWM3NjVjNWUyMDgxYTRjZTI3NzllOGYyIGxlZ2FjeS10cnVuaworMzAxMDkgZDdkNTI1ZTMwY2MwMjBmNjE1OGRmMDVmYmRlODdhZjZjNWRmY2RkMSBsZWdhY3ktdHJ1bmsKKzMwMTEwIDg5MGFhOTNkZDljMzhlNzMyNjhjNDE4MzQ5ZDViYmU2MDIxZGZhZTAgbGVnYWN5LXRydW5rCiszMDExMSBiMGJmMzYwNDI0NGZkNTljZDNkY2M3YTc2ZGIwMzA4ZDkzZWI3MmQ4IGxlZ2FjeS10cnVuaworMzAxMTIgZmQ0NTVkZjU1YjEzNWJiNTMzZGI4YjhhMTZkMmExZTExYjVkNzMzZSBsZWdhY3ktdHJ1bmsKKzMwMTEzIDk2YjhjOGFlNzI2MmVkZDY4ZWU4ZmI4YmUzOGM4MDM3MjJlZTAyZDcgbGVnYWN5LXRydW5rCiszMDExNCBjNjliOGU2MWU2OTViZDFlODlkOGY0MDQ0M2U5NGY4YmM5NzYzMjFiIGxlZ2FjeS10cnVuaworMzAxMTUgMzQyOTk1NTcyNGIyNzkyMmQ2YTdhZWU1NGVhMmJiODQ3NWIwMTk1MyBsZWdhY3ktdHJ1bmsKKzMwMTE2IGZkNmJlODdlNWMyOTdlNThiYjcwM2Y0MDYwMzBlOThhZjgxMThkNmMgbGVnYWN5LXRydW5rCiszMDExNyAwZmY0NzM2MmJiODExNGEwNDZlNzkwYTQwZjg5ODI1MGQxZTlmMzhkIGxlZ2FjeS10cnVuaworMzAxMTggYmI2ZWEwNzkwOTQ3OWE2M2Q2NzNjNzBjY2JlNDg5YzI3OTQzODU1NyBsZWdhY3ktdHJ1bmsKKzMwMTE5IGU3ODNjZGZhMGI0MTlhMWI0MDRiMGVmYmEzOGE1YTZlZTZiMmYwOTcgbGVnYWN5LXRydW5rCiszMDEyMCBkMjMwMjMzOWE4YWQ3ODQyMzRjYzY1YTZlODlhODgxMGQ1MzdiOWE5IGxlZ2FjeS10cnVuaworMzAxMjEgMDJiYTQ2NjNjYWQyMTI3YTYwYWU2YjBhMmZmOGZhMmM2ZDI2OGY0MCBsZWdhY3ktdHJ1bmsKKzMwMTIyIDQxMTg4ZTM4OWM2MTQ0ZjJjMWU5Mzg4YTMwOTNlZGE4YzQ5YzU2MmYgbGVnYWN5LXRydW5rCiszMDEyMyBkMTc2Y2JmZDM3NjU2MDBlYWEzOTU3NzU5ZjQ1MTgxZDlmNmViYjFhIGxlZ2FjeS10cnVuaworMzAxMjQgOTI2N2RmZmZmMzJkMzFkM2UxNjcwZmIyY2Q1NmZlOWY5YmFmMWY3NyBsZWdhY3ktdHJ1bmsKKzMwMTI1IGY4ODNlZDdiOTNjODY4ZGIxMmVlNzQ0NDM4ODVmYzEzODVmNTRmNGIgbGVnYWN5LXRydW5rCiszMDEyNiA2ZWZhODIxNmRiNmE4OTI4MjdhNjFmYWQ2MjczYjc4ZTIzNDAwYzFhIGxlZ2FjeS10cnVuaworMzAxMjcgN2IxZDEwN2U2M2FlNmY3NmE1ZTUyMDA2ZTdhMzhmZDcxNTM4YTRlYyBsZWdhY3ktdHJ1bmsKKzMwMTI4IGNhYTI0NWFmNzc4NjQxOGQ1M2FmODA1YjQzMDYwMDkwNWQ3YmVlYWYgbGVnYWN5LXRydW5rCiszMDEyOSA2ZTJjMmYxMjIxZTUzNTI4YjZjYmM5ZTQ0N2NiMWEwZmRkMGRiYjZkIGxlZ2FjeS10cnVuaworMzAxMzAgNDgzNGY4MzY4MDM2Mzg2ZDdjZjJkMDNhNDhmZjkxNDZjOWM5MWVmZSBsZWdhY3ktdHJ1bmsKKzMwMTMxIGE4MDAwMTVlN2NmMmE2ZGIwOGI2NzYzM2Y2ZDBjMDIwNTE3Yzg5NzcgbGVnYWN5LXRydW5rCiszMDEzMiA2MWIzZDE3OWY4NjhlNzQxNTY5YzI5NjRhYzFjMWI2YTQwNDEwMWMwIGxlZ2FjeS10cnVuaworMzAxMzMgZjM1NmZjYjcwZWFlNTVkMzczNzFmZWZmMDU5MjMzM2RhNzhmOTc3OSBsZWdhY3ktdHJ1bmsKKzMwMTM0IGI3YmYzOGQ0NDU5OGY1NTg5YzA5NDNlODVhYmQ3YmNiZWY0Yzc1NDcgbGVnYWN5LXRydW5rCiszMDEzNSA2M2Q3YjVlMzk2ZmI4OWQxZWU4Y2ZkNzY4NzYwZGFiNjcxMmRkYmQ4IGxlZ2FjeS10cnVuaworMzAxMzYgNDBmOGI2NDhlNzY1OWI3OTE1NDA3MWQyNjQwMmEyMzNkNzk3NzJmYiBsZWdhY3ktdHJ1bmsKKzMwMTM3IGQ5OWUzOGJiNmRjZDM1YmJhYWJlMjdhMWI3ZWY0ZjNhY2JmMjZiZmQgbGVnYWN5LXRydW5rCiszMDEzOCBmODM4YmM5MDU2Y2MzNzlkNTljMmIyZmZlZTVjMDMwZTEzMTg2MDYxIGxlZ2FjeS10cnVuaworMzAxMzkgYjEyZTMyNmI0ZWEyNDdmNGM1NzUxN2M4MTY3YTEwZjFkYmIyODcyYiBsZWdhY3ktdHJ1bmsKKzMwMTQwIGU4ZGMxYTBkNmY0ZDRkMTBhNDBkZjc1NGI5NWQyOTAyYWE0MmQ3Y2QgbGVnYWN5LXRydW5rCiszMDE0MSAzMzhlMDI1ZmRlOGI1MTZlOGVjOWJiZWQ1MjIyZGVkMzlhNWU5ZTkxIGxlZ2FjeS10cnVuaworMzAxNDIgZmUyZDQyMjM4NWIxZmVlNjZmOTk4N2FiNmUwYTk5MjIxYmMwMTZlNSBsZWdhY3ktdHJ1bmsKKzMwMTQzIGNiMDZiZmM4ODc3YjI0OWIyY2Y5ZmZkOTU2ZWM2M2QwZmUxZmVlOWUgbGVnYWN5LXRydW5rCiszMDE0NCA5OGQxMTg1NWI0NmNjZWVmODM0M2JkN2Y0ZjE1NGIzMzI5ODY4YjIzIGxlZ2FjeS10cnVuaworMzAxNDUgZjc2NzE3NzA3YTZkN2EwOTJjMmY0MDJiMGZlYzZiYmIxOTIzYTZkZSBsZWdhY3ktdHJ1bmsKKzMwMTQ2IDM3M2QwYThlZDZiZTY0YTVkMWYxZmRmNGVlMDllYzg3YTNhMjk0NWIgbGVnYWN5LXRydW5rCiszMDE0NyBlZDI4Yjk3NTJmOGQyYWJmOGRlNTRmNzc0YjJkYWJmYzVhMDM3ZDBlIGxlZ2FjeS10cnVuaworMzAxNDggMTMxMjI5Nzg4N2EzZjdlMDZlYTliM2NlOGNkMWRjN2EyNWQ0N2MzOCBsZWdhY3ktdHJ1bmsKKzMwMTQ5IDMwMGY5MjZmMmIzZWI1OGZkNDlmMDQxZTNjNGQyM2IwMWE3OTZiYWYgbGVnYWN5LXRydW5rCiszMDE1MCA4ZGQyNWE2ZjU5MTM5MDRjN2RhODMyMzZmN2ExNzRkNmU0NDRmOWIxIGxlZ2FjeS10cnVuaworMzAxNTEgNWI3MTVjYWQzNGQwODI1ZGMxODMxOGVhMWRiZDRlOTFmZjc3MDhkNyBsZWdhY3ktdHJ1bmsKKzMwMTUyIGM3ZWM4YWQwMjM0ZmFmNGQyMTk3NTE1MDdiNTUzZGQxZjFlZWJjMzYgbGVnYWN5LXRydW5rCiszMDE1MyBiYzkwNTZkODQ3ZWY3ZDQ2ZmFlNTk1NGRiYTVlZjdlMjk2MGI0ZmRjIGxlZ2FjeS10cnVuaworMzAxNTQgZjdkOGQ0OWU4ZjVkZTI3Y2IzYzFlNzkwMTYyOGMwZTY2ZTUyMzgxOSBsZWdhY3ktdHJ1bmsKKzMwMTU1IDQzYjU0YzJiYzRlNjAyMDVkZTA1YWFkNzcwMjUzMGYwYjJkNDg4Y2MgbGVnYWN5LXRydW5rCiszMDE1NiA3OGQ4NzJjZDA2NGMyZWRjNDkwY2Q5YzY5MGE4N2M1NWUzNDNmMjkwIGxlZ2FjeS10cnVuaworMzAxNTcgYWI1MGEyMWI4N2FlYTEyZGYxODExYTBhZTRmNWFiZDgxMWUzNDVkYSByZWxlYXNlMjItbWFpbnQKKzMwMTU4IGJjNjY2MmJhM2E3NzU1YmJhNTY4ZmEyMmNmZmRkM2UxN2UyOWFiYWYgcmVsZWFzZTIyLW1haW50CiszMDE1OSA1NzkxMDE5YjZlNGU4ZTJiZWVhYzRkNGZhYzE2ZWIwNTRkOWM4YmRlIGxlZ2FjeS10cnVuaworMzAxNjAgYzExYTZlMWNlZGUwZGUxOGUxNWM0MWJhOTY1ZDRmOWIyNjEzZGYyZiBsZWdhY3ktdHJ1bmsKKzMwMTYxIDYwNTllNDFiZDc3YTNlNTc5M2E4NWM3NjM0Y2RmY2Y1N2Q3OTZhOGIgbGVnYWN5LXRydW5rCiszMDE2MiBhOTk3NGE0OGE0ZDZjZjlhY2MwZjUyMmEzYTc0YmY2NWIzNmRkYWIyIGxlZ2FjeS10cnVuaworMzAxNjMgYTIwY2I1YWJhYjZiNzhmNWE1Y2NmYjNhY2FkOGUwNzIxNjQ3ODc0MyBsZWdhY3ktdHJ1bmsKKzMwMTY0IGFkM2Y2NmU3ZmIxMDQyMDEzYTk0MWExZjBmZWM0NWZmMmU0MGY3NDMgbGVnYWN5LXRydW5rCiszMDE2NSA2YjM5MDU0OGM2OTgwMDQwYjgwMjFmZGNlMGUzZTg0ODFiMzAwN2RkIGxlZ2FjeS10cnVuaworMzAxNjYgYzc0YjY5YWI0NzQyYWI4NDg0NzRmY2Y1NzhlY2RjYTkyNjgwYjNlZSBsZWdhY3ktdHJ1bmsKKzMwMTY3IDIzMThmNGJiMGJjNWNkODViZWU3NGRiMGUyNWMyMGU4MjFiY2RiMjggbGVnYWN5LXRydW5rCiszMDE2OCAyZTBkYzllMDgyMjI4OTZhMzQyNTg0MzBhOWFjMDAzZTJlODE1ZWI5IGxlZ2FjeS10cnVuaworMzAxNjkgMzZjZDI2NDFlODI2NzRjZmM0MmE5ZTA4N2IwZjBhODYzN2NhMTUyYyBsZWdhY3ktdHJ1bmsKKzMwMTcwIDQxNzNlNDNlZjQwY2NlNjZmNjNkZGRhY2YxZGMwNzIzZDA4NWVmNGIgbGVnYWN5LXRydW5rCiszMDE3MSA5NzUzMzNkNDBiZjgzMmE0MDJhMDZiZmE5NjYyYTY2YWJhMDk4MDE1IGxlZ2FjeS10cnVuaworMzAxNzIgYzQyODZhNmFiMDBjOWUzNWI5YzZhYzI0Y2VhOTdhMmRhZGE4MjFhZCBsZWdhY3ktdHJ1bmsKKzMwMTczIDQ5Y2VlZTAyNmQ2NjNlMjA4OWE0NDdkMWEyNDMzMzA5YzU0OTU5NTEgbGVnYWN5LXRydW5rCiszMDE3NCA1MWU3NDMyMWFkM2Q2MDczZGIzOWY0MDA5N2NmYmMyODcyZjZlODk4IGxlZ2FjeS10cnVuaworMzAxNzUgYTIyM2UyNTU0MTkwMWNlNzc2OGM2Y2VmNWVkNDMxOWM5NjlhNzIxOCBsZWdhY3ktdHJ1bmsKKzMwMTc2IGFmNjYwY2FiMWNiZTkxMWRlOWNlZmVkYTBiNDdkZDkxYTc2OTJjNDAgbGVnYWN5LXRydW5rCiszMDE3NyBlNDA0YmJlZmYwODM3MWIzNWNjNjFmNTUxN2ZiNjQ2NGZlZjFiMzQzIGxlZ2FjeS10cnVuaworMzAxNzggM2VkNDdiMDc4NTA4MTlkMWRhZjUzM2M3ZmJlMTYwMDk2ZDQ1NDYzZiBsZWdhY3ktdHJ1bmsKKzMwMTc5IDQ1YWIzMTEyN2JmOTIyYjk5YTU0MjllOWNkODE2MzE1NjQ5MzRkMTggbGVnYWN5LXRydW5rCiszMDE4MCAxMDFmZTMyZjU2ZmZlYTU0MDhhODAyOGY3MjJkZDI2NTNkNTcxZmQ5IGxlZ2FjeS10cnVuaworMzAxODEgYmZlMzg5NjFjYTQyYzg4NmQ1MWQzNzE4YWY5OGU5NTExYzEwMTc1MyBsZWdhY3ktdHJ1bmsKKzMwMTgyIGY5MWQ3OGUxOWM4NjZmOWU2OGRhNWVkOGZhZmQxYjE4OTIxZmU0OTYgbGVnYWN5LXRydW5rCiszMDE4MyAyZWQzNGYwMWM4MWNhMTJhN2UzZjcwMGIxYzNhODkwMDc5YzQ2MjA2IGxlZ2FjeS10cnVuaworMzAxODQgZDY0MjE0Njk0MDgzYmViZDRkMjg0ZGM5YzBkN2JkNGI2MzU1ZmIyOCBsZWdhY3ktdHJ1bmsKKzMwMTg1IDFlMTcwYTk1YjY0ZmRlZmI4ZmUxNjFhOWIwMTA0MWJmYTE4NDViYTggbGVnYWN5LXRydW5rCiszMDE4NiAzNTkzZjJiOTFkN2Q2MDVlNWM0NTgwOGU4MzQ4ZTgyYzFiNmRiNTkyIGxlZ2FjeS10cnVuaworMzAxODcgODkzMTdkOTNmNjM5NzM5ZTE2NjJjNjJmY2YyNjQ0YmU0NzUxZDE2ZCBsZWdhY3ktdHJ1bmsKKzMwMTg4IGQzNDhiMTdjZWFhZDY5MzYzZjk4NmNjMGY2MjdhYWI3MThkMmNiZDUgbGVnYWN5LXRydW5rCiszMDE4OSBkOTM5YWRiY2E3NzRmMDBkYjlmNGIyMGM4M2QxMWEyNDQ3NWM3MjViIGxlZ2FjeS10cnVuaworMzAxOTAgMDRiM2E5ZjZiZTQxZjRlNDJlNzAxNDhiMjU3MDkzMGNmY2M0YTZiMyBsZWdhY3ktdHJ1bmsKKzMwMTkxIGVhYjZkN2M4MDM0MTkxNzlkMjAyMTkwYjljYTNiOWE2NGMzYTg2YmIgbGVnYWN5LXRydW5rCiszMDE5MiAyZjUyM2FlOTBlMDYwYzg3YjNlNTZhMmIzNDI0YzRmNjJjMmMzMDkwIGxlZ2FjeS10cnVuaworMzAxOTMgZTgyMzI2OTk2NDgxYjIxMDQwMzhhNjA5MzY0MmIwMzg2ZTBhZjc3ZSBsZWdhY3ktdHJ1bmsKKzMwMTk0IGEzNjAwYzRlY2M4YmYyYzIyYWJlNDljNmMxNDUwMzM5ZGU3NGE0NzQgbGVnYWN5LXRydW5rCiszMDE5NSBmNTVmNWUxZTMwYmM5MjU3NTk3YTMwNDUwOTliZjEzY2FiNTA1NjZmIGxlZ2FjeS10cnVuaworMzAxOTYgZGZjYzIwNTdhNzU1YWU3YzZmOWRjYjgwODBkZWFlM2RlMDUxZTVkMiBsZWdhY3ktdHJ1bmsKKzMwMTk3IDUzODQ0N2M5ZDU0M2RiMmI0MDUzNGYyYTRiZDUzOTU3NTc0ZjJhOTUgbGVnYWN5LXRydW5rCiszMDE5OCBhMTJlMTcyNzg1MGFmOWIwNjE1ZmNkOWZkNDRjZDM1NDAyNzkxNTM3IGxlZ2FjeS10cnVuaworMzAxOTkgY2ZkNWE2ODI5MzdlMGM0MzY0OTg0YWU2YWI1ODM1YWJmMGIzZWI0ZSBsZWdhY3ktdHJ1bmsKKzMwMjAwIDkyNGM0ZjIyYmFjNzk0OTFjYzlhOWY4MjE2YWQxYTc3YzY5Y2QyYjMgbGVnYWN5LXRydW5rCiszMDIwMSBhNTQzNjNlYTY5NDYwNTY5MWEzMzA3NGIyYTFhZTkxMTdjNDlkOGRkIGxlZ2FjeS10cnVuaworMzAyMDIgOTAxZTQ3Y2M4Y2FjYzgyMGYzNTUyM2U1YzE2MTBkZTk1ZWY3MDBkNyBsZWdhY3ktdHJ1bmsKKzMwMjAzIDk2NmI4Mjc5ZDFmYWQ4MTQ0YmUzN2IxYzk1MDM1N2ZjODhiZGUxMmIgbGVnYWN5LXRydW5rCiszMDIwNCA0OTY3NzkwNDcyZGJkM2VjNWZhOGJjMDJlMDJlYThjZDM3OWY1N2YzIGxlZ2FjeS10cnVuaworMzAyMDUgYzdjMmIyMjJiYjhhZThkNGM2ZmY1YzI4MjRjOGYyYzQzMGZhZWEzZSBsZWdhY3ktdHJ1bmsKKzMwMjA2IDVmYmE1MWYzNzI5YjJkZGY1ODVmM2E5OTJlOTEyYjg0YWI5ODhhNmEgbGVnYWN5LXRydW5rCiszMDIwNyA0MWJkMzdiZWYzYzc3M2JlYjUyM2RjMDk3N2U3MTJkN2I4YzM5NzM2IGxlZ2FjeS10cnVuaworMzAyMDggOWI0YzAxNGIzYTIxOGU3NmE5ZDk3NjBjN2Q0NTVmNDQ2YTdmYTQ0NiBsZWdhY3ktdHJ1bmsKKzMwMjA5IDU3M2U0ODJlZGVjMWE1ODM2OTE2YzJlYzFhMGJlOTQ0YzVkMWM4ZWQgbGVnYWN5LXRydW5rCiszMDIxMCBhMDNjZTVkOGYyOTc1NGY3NmM2ZmQ2OGM2NWUzMmMzODI2MTU5NWMyIGxlZ2FjeS10cnVuaworMzAyMTEgNzA5ZjkwNTQxNTg1MjE4NzQ4MDdmNmE3ZTAxMmViYjkxMjE3MmQ1MyBsZWdhY3ktdHJ1bmsKKzMwMjEyIGQ4ZmRhNDgxOGJmZDVmNTZhYTUyMDU3YmViZWY1MDE2MGFlZGIyOTAgbGVnYWN5LXRydW5rCiszMDIxMyAxNmFmZjcwNzdlNGJlZTRhYzA5NzBhYWFkMTQ0YzU4NDAxMjFhZWQ5IGxlZ2FjeS10cnVuaworMzAyMTQgMmI0NmQ3MjkyZjI3NzQzMGNmZmMzOGM0YjM2YWE5NjlkNWVjYzVjYyBsZWdhY3ktdHJ1bmsKKzMwMjE1IDZmMWY4NDIwM2VjZjBiMWE1NjU1MDdiZGQwM2M4ZGE4NWFiY2FjZWUgbGVnYWN5LXRydW5rCiszMDIxNiA3OGU4NTdlOWRkNDc2OTA1NWY0ODgxZDNlOGZiOTkxMzFjNDg2ZDI2IGxlZ2FjeS10cnVuaworMzAyMTcgYzY1ZThjYjkxZjRjMzZkOWRmOGI5ZGZkN2FhOGM3YjRmNjNiNmI4ZiBsZWdhY3ktdHJ1bmsKKzMwMjE4IDcyY2YwODlkNjM0YTE5ODQzNDkxMjczMzYyMjVjMWJiZjRlOTkwMDkgbGVnYWN5LXRydW5rCiszMDIxOSBjYWRmY2U2NmQ4NjE5YTZiYzM1NzlkNmEyMmFmOGI3YTU2YzI0NmY4IGxlZ2FjeS10cnVuaworMzAyMjAgMmYzZDZiNzlmMTFiZDNjNGRiZDEwY2FkY2IzODFmYmQ0NWYxYzk5MyBsZWdhY3ktdHJ1bmsKKzMwMjIxIGQwNTIxMTI3MzFhOGUyNWJmMTcyMWIxZjUxYzFmZTY5YTg1OTQ4ZjAgbGVnYWN5LXRydW5rCiszMDIyMiBiMGFjZjVkZTM0MjFjZTBmNmNhOTA0MWJkNzhlMmNjYWMzOTNlNTE4IGxlZ2FjeS10cnVuaworMzAyMjMgYzFjOGJkYzRlM2RiZGNmMGI5YmQwMjJhOGY4NDg4OGZlNTExYjA3ZCBsZWdhY3ktdHJ1bmsKKzMwMjI0IDA2NTg2NDA0ZWM0Y2RhMzAyMGQyNjllNWM3YjIxM2U3OWY3NjZlYjggbGVnYWN5LXRydW5rCiszMDIyNSAzMzY5Njg4MjFkY2JjZTFhYThkMDZkMDFkNGQ4Nzc3ZGE1OWUxMjRmIGxlZ2FjeS10cnVuaworMzAyMjYgZGI5ZmNhMTQ1MDU4NGI1M2EzZTkwMDA1OTNkZDk0MjcxMDlkODQyOSBsZWdhY3ktdHJ1bmsKKzMwMjI3IDYwYjM4OWE0ZGMwODU1MDFhZTQ1NTY3M2JmOTE5ZjM2NTFlY2FjZjIgbGVnYWN5LXRydW5rCiszMDIyOCBiOWU0NWI4MjhhZTExYTBlNTVjZWJlZGU2YjUwMmE5YjViOGQzNGE1IGxlZ2FjeS10cnVuaworMzAyMjkgNjVhY2VjOWNiZTY5MjI3ZTUyZmQ2YzM3MDA1NTA4YzYxNTU0YWRjNiBsZWdhY3ktdHJ1bmsKKzMwMjMwIDE2Mjg4YjA1NGZjM2YxMzMwZGI3OGE3N2IyNTU3ZThjNTMwZTMzMDggcmVsZWFzZTIyLW1haW50CiszMDIzMSA3YzE1YmY3NzI2YjI0ZTUyMjUwMGU0NmUwMDJlY2UyNTdjYWU2NjA4IGxlZ2FjeS10cnVuaworMzAyMzIgOGMzZWY1MjRmYWEwNjdmZGI4NjM3YWMxNTk1YzExZjI1NWZhYzliZSBsZWdhY3ktdHJ1bmsKKzMwMjMzIDk1YmMwYzA1MjAzNDUwODdkMzA1MjEzODM2YzI0OGE0ZjRlNDQyNTQgbGVnYWN5LXRydW5rCiszMDIzNCBjY2YwYjAyN2I1ODU2ZDU3YmYzNmI4ZDM2MTdlMzFkMzkwNjdkM2I0IGxlZ2FjeS10cnVuaworMzAyMzUgN2ZkMWJmMjBhMGMwZTljYmE1MTdmMmZjZDM2OTBkYjA1YWJjMGQwYiBsZWdhY3ktdHJ1bmsKKzMwMjM2IGMxMjcyZjNmMjhmNTE3OWIyMzNkM2M2ZTM3YzAwMzY0ZTYxNmNjMWMgbGVnYWN5LXRydW5rCiszMDIzNyBlY2MyN2ExYzMzY2E3OTg5NTJlMTJkZWMzMzgwMGMyYTFlZmRjYjM0IGxlZ2FjeS10cnVuaworMzAyMzggNjIwMDk2ZmQ1NTY0YzM2ZDAzNzY2M2VkYmY5NzRkY2I0MGM5ODVlMCBsZWdhY3ktdHJ1bmsKKzMwMjM5IGM2MDljZDQ5MDZmYjRhZWRhYzNjYWE1NDRhMjgyNzEyMmZlMjNlMDggbGVnYWN5LXRydW5rCiszMDI0MCA0OWQwMjJiNWZkNjQwNTE5MGY5NTY2ZjZhYmM1YzZkZDZlYTMzYzgxIGxlZ2FjeS10cnVuaworMzAyNDEgNGM5ZmU0OTA1ZThmYTA2YjI3ZDU5MjU3ZTc5M2Q2NGZlMjIwNDhjNSBsZWdhY3ktdHJ1bmsKKzMwMjQyIDZiMzFiMjZlNDE4ZGRjODQ1OWUyNmU0YTc3NWU4YWE5ODUwZDBiNWYgbGVnYWN5LXRydW5rCiszMDI0MyAwOTU0NDBiOTc1YTFjODcwNThmZjk3M2Y2MTZkOTU2YTQ3MTFkMzliIGxlZ2FjeS10cnVuaworMzAyNDQgYWYyMTdjY2EzYmZjN2MxMzQ4ZDg0ODY5YmQzMjkxOGQ0MjU4NGZkMyBsZWdhY3ktdHJ1bmsKKzMwMjQ1IGFkMjYzZDI2ODI1NTQ4MDI0ODA5ZTg2MmMxYzJkMWQ4MTNiY2E1MjcgbGVnYWN5LXRydW5rCiszMDI0NiAzNDZhMDcyNzBlODdkZDY0OWM4YjNjMjA4YTYyMDliYTNmYWZjMDhiIGxlZ2FjeS10cnVuaworMzAyNDcgYWVmM2EwM2E3OWYxMGUxNzdhZTBkN2NiNTZkMWVjNjRhZjVlMzA1NyBsZWdhY3ktdHJ1bmsKKzMwMjQ4IDhhYTc1NmU1YWNjYzg1ZmNjYzliMTU2ZmE3ZDhjNzRhZjI0NjdkY2YgbGVnYWN5LXRydW5rCiszMDI0OSBmYzdmZGVjM2ZiODYzZDJjOTEyOTNiYWFkNjM5ODJhZTBiY2NlNDAxIGxlZ2FjeS10cnVuaworMzAyNTAgMjQwZmRiZWY4YzYwYzM2YTBiODhhOGQxNjRkZmI2Y2I3YjlhZGRiNyBsZWdhY3ktdHJ1bmsKKzMwMjUxIDBmMTQwNWFjZTQzN2U5MjZjOWI4NDUyMmVmMmRhZDU4Y2MyYjIxOTYgbGVnYWN5LXRydW5rCiszMDI1MiA4OWRkNzRmN2FlMzI2YzBlZTMyZTQyMDRiZWJhZTBhM2ExYTc5NmI3IGxlZ2FjeS10cnVuaworMzAyNTMgZDE2MDgxNmI5MWU1ODNkMjMwZGJjOGQwNDg0YzUyNDU5ZWQ5NjgzOSBsZWdhY3ktdHJ1bmsKKzMwMjU0IGY4NWNiMDg5NTUzNWRlNzY4YTYwZDliY2VlMmYzMzc5OGY5NGIxZDAgbGVnYWN5LXRydW5rCiszMDI1NSBiYjRkZjAwMDBiNmQxYWM0ZTc3MWYzN2E1NTEyMTU1YTYxOWQyYjMxIGxlZ2FjeS10cnVuaworMzAyNTYgNDRkNzQ2OGQ2ZGI2ZTIzMzkxOGJlZGY4MDkwZjE4OTgzMzdkMjYwNSBsZWdhY3ktdHJ1bmsKKzMwMjU3IDkyYTQwNjExNWU3Y2QzNDE2NjZiYTI1MDY1ZjBlZTIyZDg4YmVjNGMgcmVsZWFzZTIyLW1haW50CiszMDI1OCA1ZWZlNmIwYWMwZTZiY2MyMGE1NjBhYjhmMzAwZGY1MGIyNTgyN2FjIHJlbGVhc2UyMi1tYWludAorMzAyNTkgYzU1ZTZlNjAxYjk5OGQ3MmI4OWE1NmI4MGRkYjNiZWJlOTYzZTYxOCBsZWdhY3ktdHJ1bmsKKzMwMjYwIGJjN2Y4OTEzZjVjYTg2NmNhZThhMjFkYmY3MWYyZjljYWVlNGY0NzEgcmVsZWFzZTIyLW1haW50CiszMDI2MSAzMDAxMzQyOWJiODQ1OWUzYjgwNjQwNzM2OWJjYmIxNDAwZWIzZmJmIGxlZ2FjeS10cnVuaworMzAyNjIgOGUyNzUxMmNjMTdkZGNiN2Q0N2I3MTdjNWJjNzRhM2Y2NjMxZGQ5ZCByZWxlYXNlMjItbWFpbnQKKzMwMjYzIDBiMzRmNTFlYWI0ZWE0ODdiYTFjMDFjZTk5NDEzNDZkNmE3MGVlYTEgbGVnYWN5LXRydW5rCiszMDI2NCA3YzUxOTZmMDE1MjRiOWU5N2MxODIyNjhjNjZkNmE3ZWU5NzQ3MTMwIGxlZ2FjeS10cnVuaworMzAyNjUgMmYyODQzNjA2MGM0NTY1NGJiODU4MWZjYzA3NTE0Y2EyYzU5ZTBhNSBsZWdhY3ktdHJ1bmsKKzMwMjY2IDE0MzkyMmE0MGZhYzZmN2RkNTAwNDU0NTg2OTUwYTg1ZTJjMzE5ZGQgbGVnYWN5LXRydW5rCiszMDI2NyBmYmM4NWFhYTI2MGJhMWFjNGQ1ODlhN2E1NGIyNjk3NTUxNWI3MDA4IGxlZ2FjeS10cnVuaworMzAyNjggODljOWM2YzQwNWVmOGM0MTVkZTg3ZjAxMzY2MDZkMDQ1NjBiNjZlOSBsZWdhY3ktdHJ1bmsKKzMwMjY5IDU4YmQ3MTAwZWUxNTdmMTdiODVkOTQ0ODAxYWMxZWMyZmU1NGZjYzEgbGVnYWN5LXRydW5rCiszMDI3MCA4MTZiOGRkY2NmZTE2NTE2MTRkMTY0MDE4OTk5Y2Q2ODNhYzkzOTFlIGxlZ2FjeS10cnVuaworMzAyNzEgZGI5Mzg4ZjM3ZDhjNDcxZjFmZDU0ZDhjMDc2Nzc2ODYxOTVhZjc4NyBsZWdhY3ktdHJ1bmsKKzMwMjcyIDA2ODY4Mzc2YWEyOGQzOWZjNmU5ZWEyODlkOTE1NTZlOTc5N2FjYjQgbGVnYWN5LXRydW5rCiszMDI3MyBhMmQ0MDJlN2NkOGFkZDMyYTc4YmZhZDI1YjIyYWU3M2RmNGU4ZmQ4IGxlZ2FjeS10cnVuaworMzAyNzQgY2Y3MzY2M2NmZjU5ZWE0MTYzZDhmMTI5NTEzM2NlODgwNjIxZGNlMCBsZWdhY3ktdHJ1bmsKKzMwMjc1IDQ3ZTdjNzBlODQxZmUzMzAyN2M0ZWI5YTk2YzY5ZGVkYWRjYzZmZjUgbGVnYWN5LXRydW5rCiszMDI3NiAwZjA2MTU2YzhlMDM3NjZmOWZmNGZkMTg5NzU4ODdlZWNmM2UxZDNiIGxlZ2FjeS10cnVuaworMzAyNzcgNTA3YWE5NmExMjhmZmRhZDk0MTdiYTU0ZTllZWViYzVlMjU0YWVjYSBsZWdhY3ktdHJ1bmsKKzMwMjc4IGIyYjQ3OTcwNTJjNmZkY2RjYmZlZmM2MWI5NDMzYTk0Y2MzMjFiNWEgbGVnYWN5LXRydW5rCiszMDI3OSAyOTk2MjFlY2E5YWQ1MzEyZWU0MmYwM2FmNzUyOTU3ZmZkMDE1NmVkIGxlZ2FjeS10cnVuaworMzAyODAgMzBhNzczODk0MzgxOGI3YWQ1MDIyNmMwYmIwZGU4YTY4NDcxMjZjOCBsZWdhY3ktdHJ1bmsKKzMwMjgxIDgyZDhiNWM2YWM0YTdmYzJlZTdkOWVlMGM4MjkwOTY2YTBhNDJlZDMgbGVnYWN5LXRydW5rCiszMDI4MiAyNTg1ZDQ1OTZkOTAzYjBhMTA4MGU4YWI1YTQzZjY2NmQ0MzgxNGM1IGxlZ2FjeS10cnVuaworMzAyODMgZmZjMWU5ZTVmZjlhNzI0N2NlYTZiNTY3YTUyYmY4OWFhZWE1ODM3NSBsZWdhY3ktdHJ1bmsKKzMwMjg0IGIyMDRiNGE3MmI0ZWU4YmFmMDQ1MGM5YTViMzJmYjM4YzE0Y2IwOWEgbGVnYWN5LXRydW5rCiszMDI4NSAyMzE5ZDEzZDU0ZjU3NTE1NTA1OGY1NzEwMzIwNzMwY2MyNzU5ODA0IGxlZ2FjeS10cnVuaworMzAyODYgN2Y4MWQxNmUyYzVkN2FhMzg0Y2VjMTlmMWUzNzI0OGQyYTEyMDBiMiBsZWdhY3ktdHJ1bmsKKzMwMjg3IDg1OGVlMTE3MTRhNjMyNDI3ZTMzYzg3YmM2ZjgxYTI5MTZhNTgwZjkgbGVnYWN5LXRydW5rCiszMDI4OCA5ZDBlNjJjOWExMjhkN2ExNDcxNjJiM2I1NjdhNmZjMWE2ZTZjMmI4IGxlZ2FjeS10cnVuaworMzAyODkgZWRmMzA0ZTYwY2M2MWVkOWI2ZTQxMWU5MjhkYjgwOTViNTExZTkxYyBsZWdhY3ktdHJ1bmsKKzMwMjkwIDE3ODg0NDk4ODgxMmYyZGYwNjI4YzIzZjIwNWJiZGM2OWQ1M2M5NWIgbGVnYWN5LXRydW5rCiszMDI5MSAyMjUxMTk1YTNkZDFmY2U3MTRmNTFiZjhkYmUxN2M1OGFlZDczMGJmIGxlZ2FjeS10cnVuaworMzAyOTIgN2M4YWYxOTc5ZTc4ODViNzc4OTk1ZTczODQ1MDI5NGQ3N2QyNmU2NyBsZWdhY3ktdHJ1bmsKKzMwMjkzIDhlY2NmYWUwNGJiNGY2ZmU2NjE5NDFjODI3ODRiNTgxYzIwNzg4NmQgbGVnYWN5LXRydW5rCiszMDI5NCA2OTMyNzk0ODE3YzJkMWRmMTE2YTk0ZWY2MzM3YzI0ZjNkNTY0MTdjIGxlZ2FjeS10cnVuaworMzAyOTUgMGM4NWE5NDdlMmMwMDBkNjY3YjkzNGIzMmIyYmNmMGVhMjQ2NGVhNiByZWxlYXNlMjItbWFpbnQKKzMwMjk2IGUwOTRhMDNhODBmZjQ1ZWY2Y2YzNGMxYzJjOGI1OGNiZjhmMDc2MDMgbGVnYWN5LXRydW5rCiszMDI5NyA1N2EwMGRiNzMxZmNmMWYyY2NkMzRkODI3MjE3YmE5MTRhMTcxNWUzIGxlZ2FjeS10cnVuaworMzAyOTggNmJiYmU2N2QxZWFmNzE3MzE5ZGY3ZWVjNmI5Nzk2YmJlZDg5N2FjYyBsZWdhY3ktdHJ1bmsKKzMwMjk5IGQ2ZjQ4M2ZjOWUwMmUzZGVkN2JmZThmZGQwM2E4MmM4MGQzMDI3YzYgbGVnYWN5LXRydW5rCiszMDMwMCBmZWE5MmU3ZWM2N2FlMzUwNTU5MDk3MjYwOWQxZGZiNjgwNTEzZTI0IGxlZ2FjeS10cnVuaworMzAzMDEgMmUyMTk1ZmU2YzI4YTc5NGZmZTljNTZkMzZlYzFjNzUxOTMzMzBlZCBsZWdhY3ktdHJ1bmsKKzMwMzAyIGZiMzZkOWI1MGRmNThjODcxZjk0YWVhMWI5YjdmY2IyYThkOTY0MjcgbGVnYWN5LXRydW5rCiszMDMwMyBlMTUzOTYxZjk2MWYyZjZiYTcxNzc3ZDIyMTAyOTQ1NmFlMTVkOTVhIGxlZ2FjeS10cnVuaworMzAzMDQgM2MzMmE5NGIwYjE3NjI2MjlhYjliMWJjMGFmMmRhNmRkODg4MTg0OCBsZWdhY3ktdHJ1bmsKKzMwMzA1IDEzZDU5ZGJmYjhkNDRhZTY0YmJhZGViYjQwMTE2NWJiNWQyYTQ0NGUgbGVnYWN5LXRydW5rCiszMDMwNiA3ZDdhMDFiZmNhYWZiODY5NzVkYmU2N2QwZDUyODkwOGQyOWY5NDk0IGxlZ2FjeS10cnVuaworMzAzMDcgZjY0Yzk2OTIyNzA4YTUxMDRiZmIwNmU4ZGU3YTRmNmRlNzM5YjNhYSBsZWdhY3ktdHJ1bmsKKzMwMzA4IGY0YjFiZWVkNjQwNTJkMGIzYzUxYjc2ZDI1YWQ4NTRhMzM2OTFkNGQgbGVnYWN5LXRydW5rCiszMDMwOSA5ZTQwOTEwN2FlZWFhMWYzYzMxYjgzMGFhN2ZiYmE0Nzg4NzY4ZDIzIGxlZ2FjeS10cnVuaworMzAzMTAgYmIxNTQ2YjQ2MDFiZDBkMmZiZTE3ZDExMDc3OGJhMWM3MTc3NDU0ZiBsZWdhY3ktdHJ1bmsKKzMwMzExIDU4ZDc1YTNjOGFmZWE3ZWE0ZGYzMTMxNzczZjdlNDYxZjNiYjA3YzEgbGVnYWN5LXRydW5rCiszMDMxMiAzZTFiZDEzN2QzYzJiODhhNTgyNGUxZjVkYTYzYjcxM2IyMWFkYjJkIGxlZ2FjeS10cnVuaworMzAzMTMgNWNjZGU4YTE1MjZhNDBkOTJkYzU0YzhkYjc5YjY3ZWMzZjEwOTljNSBsZWdhY3ktdHJ1bmsKKzMwMzE0IDc5YzlhMDdiMjg5NjU5Mjg2ZjE0MzUxZmRhMzgyNDE4OWRhOTZhODQgbGVnYWN5LXRydW5rCiszMDMxNSAxNWJiNjc2ZjJlOGMwZjJjMmY4ZDg0OGU1NzEyM2UxMzFkYmQ1YWE1IGxlZ2FjeS10cnVuaworMzAzMTYgMDAwNzVmMWVmODY2YmY0NGFjN2Q4MjQwZjRlMWI5MGNiOTUzYzMzNiBsZWdhY3ktdHJ1bmsKKzMwMzE3IGM0NGQ5OTRiMzllNTQyNjk2MjQ0YzU4NmVhYWFkMDVhYmJhMWFhN2MgbGVnYWN5LXRydW5rCiszMDMxOCA3ODY3OThlODY0NjljYjgwOGMzMDA4Y2M1ZTQ2MTlkYTEzNzJlZjhhIGxlZ2FjeS10cnVuaworMzAzMTkgMzdlZjAxNzY0NmM0NjE4YTNmYzBiY2FmYTAwMzI4Y2RlYjk2MWJjNCBsZWdhY3ktdHJ1bmsKKzMwMzIwIGQyYjAzNjI4MTQwMzEzYjg4YTFkMDIzNDZmNjY5MTMzNDI0MDUyZTkgbGVnYWN5LXRydW5rCiszMDMyMSBhOWI1MjJlNTQ1Y2Y2ZjA4M2UwOWNmYjc5YTljODVkZWQ2MTJlYmMwIGxlZ2FjeS10cnVuaworMzAzMjIgNTQxOWVmNGE0ZDcwYjBjNWZkYTI5YTg0OGFlMWFkNzIxZGE5ODczYiBsZWdhY3ktdHJ1bmsKKzMwMzIzIDY3M2RjYjliNTFjZTJiZGYxMmRkYTM1MTJlZGMyMmJmNGZjYjllMDMgbGVnYWN5LXRydW5rCiszMDMyNCBmYzUxNjlhYTQxY2VmODViOTY5N2MzOTQyZmRmOTU1MzI1YjY1NTAxIGxlZ2FjeS10cnVuaworMzAzMjUgZWE3NTkxOWM3NjlkYjY1ZGIyZjQ5YjU5OGUwNDMxN2Y1ZTI2YTg4MyBsZWdhY3ktdHJ1bmsKKzMwMzI2IDg2NWM1OWI1YmZkNzEyODI4ZjM0Y2FkNWEzNzdkOGNlMDA5M2Y1ODUgbGVnYWN5LXRydW5rCiszMDMyNyBiY2E1NDA5Yjc2ZWNmYjkzNDJkMjRiYWExMjMyMWQ5NWM4NjllYjM5IGxlZ2FjeS10cnVuaworMzAzMjggODAzMzAyNTczMTUyN2JlNGFiMzQwOTg4ZThhZmIyZDY5YTQwZDY2MCBsZWdhY3ktdHJ1bmsKKzMwMzI5IDVmNzRlMDQwMDEyZDY5ZWY4MzVlMmM2NmVmNWE3YTczYTY2Y2ZkNTAgbGVnYWN5LXRydW5rCiszMDMzMCAzZWU1NGZiZmU4NDZkODllZGYwZTVhZGQzYTllNGIwMTkyNTllZWY3IGxlZ2FjeS10cnVuaworMzAzMzEgMmNlOGNmMjg0YjE1MGMwODE4MTQ1NDIwOGY0NWY1MjNjYmJhYTQ2MCBsZWdhY3ktdHJ1bmsKKzMwMzMyIGRhYTQ1OGIyODM4NTFiZmQzYzk0ZmVlMTlhOTQ4YjFlYTc0OTRhYzMgbGVnYWN5LXRydW5rCiszMDMzMyA2NjA5OTZhMjhlZThjNGU2YjE2Njk1ZjFlMTc5YThkYzM2NTdiNGI4IGxlZ2FjeS10cnVuaworMzAzMzQgNzA0ODQyZjA1YjA5MWU1OGQzZTkzZjRiZTM1NjlmYjA5MWYxOWVjZSBsZWdhY3ktdHJ1bmsKKzMwMzM1IDZjZjYzNzc2N2NlMjRkMmMzYTgxMWNjZDZiMjBmMDYxODI4MGEzZmUgbGVnYWN5LXRydW5rCiszMDMzNiBiNGNhNWI5YmE5MzM1NTI4YWE2OGJjY2FhYzA5ODI5ZDQxMTE2Y2E0IGxlZ2FjeS10cnVuaworMzAzMzcgMjc1MmU5YWFlOTdiZWQ2MDFkYWU4ZmNmY2ViNWI1MTYxNTI1MjFkNCBsZWdhY3ktdHJ1bmsKKzMwMzM4IDNjZjVhNzg1MmEyZjNmZDRmMGIwYTZkZWUyNjZlZjk5MDY5YmI5OGIgbGVnYWN5LXRydW5rCiszMDMzOSAzYTEzMDA0NzI5MDE2M2EwNTk2NmQzYWRhYzI0MDE0MTc3OTNmYWI5IGxlZ2FjeS10cnVuaworMzAzNDAgMDM2OTE5OWEyNjVhZjg0MWZmYTE2MTRhYjMxNTkxOTdlZjVkNGJjOCBsZWdhY3ktdHJ1bmsKKzMwMzQxIDAyOWVkYTkzN2JiNDc0M2YwZTE3MTYwM2RhNjMwZmE0OGU3ZjI1ODYgbGVnYWN5LXRydW5rCiszMDM0MiA4M2Y4YmQ2YWU4MTE3MjIwZDJiMTJmZDA3ODcxNjM5Y2I1ZGRmYjFhIGxlZ2FjeS10cnVuaworMzAzNDMgYWFjYThhM2IyM2NkMDVkMjIyODMwOThmMDE5NzZmNmNmZjMxZWM1MCBsZWdhY3ktdHJ1bmsKKzMwMzQ0IGE2ZjBiYzZlOGIzOGRlNWY3NzA2MzRjNDA0OWJlNTYxYmFmZTJlNjYgbGVnYWN5LXRydW5rCiszMDM0NSBmMzA1YTU3OGIzOTQwZWM4M2NiODZmNzdlYmViZjc5Zjk3YjhlZWE0IGxlZ2FjeS10cnVuaworMzAzNDYgNDhhZmI4ZTE0MjBiYjg2ZjljOWFlZmQ4ZmFjNGFlY2JhOGJiYTk0YiBsZWdhY3ktdHJ1bmsKKzMwMzQ3IDQyMjc5YTAyMTI1ZTI4NDYxZWE0NzRkNjA2NGZjMDA0NDMwYWFjZDggbGVnYWN5LXRydW5rCiszMDM0OCAyM2E5ODBlYjhhZmJiMzVhMjkzM2UyZThiZWUzNmRiYTY5MjUxZDQ3IGxlZ2FjeS10cnVuaworMzAzNDkgMWVhYjI2ZjcxNzE5OWQ3Y2EyODM2OGQ3YWM0ZmEyNDQzOGM2NmMwZSBsZWdhY3ktdHJ1bmsKKzMwMzUwIGY0ODNlZmNhMjI0YzZjZmRiMzU3ZTBmNTdkNDhjZTc1NjMzZmEzMmMgbGVnYWN5LXRydW5rCiszMDM1MSAzZDEwNjBkYjgwNjI4YmM1ZTk0OWZkMzczZTI4NmNlOWUwYzM3NGUyIGxlZ2FjeS10cnVuaworMzAzNTIgMjZkZjYwMTNiMzAzZDRhYmRlNGRmMzFkNWZhMGVlNjRkNTA2YTc5MCBsZWdhY3ktdHJ1bmsKKzMwMzUzIGQxNzdkZDBjYThmNzBlNDFiZTAxYzdmZmEwZTMzNDVkOWU4NTAwOTQgbGVnYWN5LXRydW5rCiszMDM1NCAzNTQ2OGFkNTAyMmE3NzQ1NjkxZDUwOTUyM2VjNDE5OWU2ZTM4MDFmIGxlZ2FjeS10cnVuaworMzAzNTUgMTIwYWZiYTJkYmY2NDA3Y2Q3N2I1NmMxNWQyOTY4NWU4MTE3MzkwZSBsZWdhY3ktdHJ1bmsKKzMwMzU2IGMyNDk2MDdlZjUzNWYxMTI4NGY3ZDMwNTc3YmZlMThhNDUyMDliMjggbGVnYWN5LXRydW5rCiszMDM1NyAzMWIxYjA0NjAzMDNkODVkNzQ3MGRhODAxOWYyNDdhN2E2NWRlY2JiIGxlZ2FjeS10cnVuaworMzAzNTggOTA5MzRlNGM5MWJhNGJjZDI4NjZlMmVmZjdiM2E2NGU4ZWMyZDdmZiBsZWdhY3ktdHJ1bmsKKzMwMzU5IDZlYzM4NmI0NWUxZmFlZTE2OWNiYmVkN2EzMzI0NmQ4MmI2MWU4YjcgbGVnYWN5LXRydW5rCiszMDM2MCBkMjE5OWZjMTRkMDYyNGFkODBkODYxMjUzM2ZhMzRlMWFjN2M1ODFiIGxlZ2FjeS10cnVuaworMzAzNjEgMjEzM2NmMzU1YmZjOGEyYzkyNTA5NzdhYjAyM2FjMGUxMGU1MjVhNSBsZWdhY3ktdHJ1bmsKKzMwMzYyIGYwZjlhY2NhNDE2NGFiZDc4YjVlMWQ2MDRhNmQ4ZTI5YzNjNjYzMTcgbGVnYWN5LXRydW5rCiszMDM2MyA1NGFhY2I4N2JlZGEzMDM3ZGZhYmZlM2JmM2U2N2Y5MDI4MDA2ZmVkIGxlZ2FjeS10cnVuaworMzAzNjQgYjYyNWYxYmY3MmY5MGQwNGM0OTUwOTNiNDFkMzljNGUzNjhlMTE1ZSBsZWdhY3ktdHJ1bmsKKzMwMzY1IDQ1ZmMwZTRiNTA4NDUyMjc1YjQ2YmFkOTJiMmU1ZTcxYzI0NWE0OGUgbGVnYWN5LXRydW5rCiszMDM2NiBiOWMxNTk3ZDgxMDJlNDVjYTQ1ZDhiM2U2ZWI2ZjIyNmJmZjQ0YmE5IGxlZ2FjeS10cnVuaworMzAzNjcgMTI3NTNlN2IxNWY3ZTg2YmUxNDM1NmU1NGQxMDljZjM2NTc5NzFkNiBsZWdhY3ktdHJ1bmsKKzMwMzY4IDgwNTNiYzBiOGJiNTgxYjRiODY3MGNhNWZkY2M2YjY2NDg3ZjFiNTEgbGVnYWN5LXRydW5rCiszMDM2OSBiYzIwZThiNDZkZTBkMGFlN2FlZjI2OGU0NDg4ZDc4NmUyNjJmYzBiIGxlZ2FjeS10cnVuaworMzAzNzAgOTU1MTBmMGEwNjI0NTg0YjQxYmI3Yjc1ZmFmODg2NWM4OWZjZjUxYyBsZWdhY3ktdHJ1bmsKKzMwMzcxIDJhOTViN2Q1ZmJkZTBkNGNlNzA3NDMxMzAyYjc2NjMxYjBkMDAwYjEgbGVnYWN5LXRydW5rCiszMDM3MiAxNDA2NDRmMjJmNjQ4Y2RmMGIzZDNjYzRjYjVkMGU5OGQ5ZTYwOWZjIGxlZ2FjeS10cnVuaworMzAzNzMgMGEwYzc1OWVkMTY3OTlhYTJlMDZjZTlmM2M5OGJmODRhNDFiMmQ0YiBsZWdhY3ktdHJ1bmsKKzMwMzc0IDRjYmRiYjBiZGQ1ZDRhZWMxMDI1YTZhNjg4NjZjODQ1OWFiZWEzMDIgbGVnYWN5LXRydW5rCiszMDM3NSAzYmMyYWY0MWMwMTY1NzlhOGUxYzJhZjRjM2E3YTQxYzcyMzU5MzRiIGxlZ2FjeS10cnVuaworMzAzNzYgMDk2ZDEyZGIyNjM2NTIzY2U1Yjc1NWZkYzNjYzM4YzViNzA4ZmM3NyBsZWdhY3ktdHJ1bmsKKzMwMzc3IGE0NDc0ZTE0ZmFjOTdiNGE2MjI5YTA1Zjc3NjIzMDM5YWZlMTIxZTggbGVnYWN5LXRydW5rCiszMDM3OCAxOGQ0ZjcxZjVlZDZhOTM2YTRiMDczYjg0NmQwZGM5MDY5MmRjYjRiIGxlZ2FjeS10cnVuaworMzAzNzkgZDVhZDI5YTQ3M2UxZDk5MGEzMDExNDEwZGRiZWUzYzYyYjNlZjBlMSBsZWdhY3ktdHJ1bmsKKzMwMzgwIDJjNTJhYmVlN2QxMDYyYzUwMGVjMjhjYWRhNzE1MDQxYTJmNGQ1MmMgbGVnYWN5LXRydW5rCiszMDM4MSA5N2M1YWE4MmIzZTljMTUyNGJiYWZkZDc0OWNhNjVhNzJhMzIyNjIwIGxlZ2FjeS10cnVuaworMzAzODIgNDBkYjc4MTU5MTc3NjIwZGUxM2FlOWJlMDFkYmQ3MTYwZTczYzE4YSBsZWdhY3ktdHJ1bmsKKzMwMzgzIDdlYTc2MzczNDFkMGExNDdhNGMzNDZlYjU4YjViM2QyNjMzYTFhMmIgbGVnYWN5LXRydW5rCiszMDM4NCA0N2U2YWI4ZDU3NTFkNGEwN2Y4YzY2Njk4NTZkODg5ZjNjMzExOTM4IGxlZ2FjeS10cnVuaworMzAzODUgY2NiYTNiNjZkNjc2NjYxZjZlMTYzZTMxMDk5MThkZWQwNGEzOTczYSBsZWdhY3ktdHJ1bmsKKzMwMzg2IGJjYWNhMzZhNTgzY2M0NTkzYjVkZWQ5MWI3N2YxMGI5Mzk0ZjkwOWUgbGVnYWN5LXRydW5rCiszMDM4NyAwNzQ5MTk3MTUzNTVhYzg2ZTM3M2M4MGE1MzNkN2VlN2Y1YjcxYTk3IGxlZ2FjeS10cnVuaworMzAzODggNjg4ZmE2Y2RhYjk0M2M1ODAwNDA1MjY5NzhkZTgzNjNhNjVkYzJiMiBsZWdhY3ktdHJ1bmsKKzMwMzg5IDg5OTlkNzJjMmU2Y2RlYjFhNjAwZmQxNWQxOTdjYWFkYzQ3YmFhMjEgbGVnYWN5LXRydW5rCiszMDM5MCAwMDMyZGJlZWMzOTFjMTU3MDIyZjhkNGU0N2Y3ZGRmM2Q3ZTRiNTFmIGxlZ2FjeS10cnVuaworMzAzOTEgN2NkYTM2MDM1NjdmOTY3YWFiMmRhNzFlM2FjNmI1OTljNDRlMDIwZCBsZWdhY3ktdHJ1bmsKKzMwMzkyIGMyNWQ3ZDJjMTcxMDQyNmM3NjYxNjkzMzM0MWYxYTMwMTkzNjk1MDMgbGVnYWN5LXRydW5rCiszMDM5MyBmYmNmM2M0YjQyNzJlMjE1ZmMyZDc1ZjVkMzE1N2JkMmE4MzI3ZTE1IGxlZ2FjeS10cnVuaworMzAzOTQgZjUxNjFjYTRkZDY4MGQ0ZmJlMzNhMTlhYWM3OWI2MzQwYTY1NDI3ZSBsZWdhY3ktdHJ1bmsKKzMwMzk1IGE0M2EyYjE4YjVjNDhiZmU2Y2Q3YWUzYTIxMWEwZDJhMTIzZGM4YTAgbGVnYWN5LXRydW5rCiszMDM5NiAwNTAxNmJiOTE3NjZmZTlkMWIxOWIxNmI3MTc1MjdjMjg2OGJjM2ZmIGxlZ2FjeS10cnVuaworMzAzOTcgYjkzODQ1MjI2ZGI2OGQ4MzJjMmFhMTg0NmQ1YTMxNWI5YzVjZDkxMCBsZWdhY3ktdHJ1bmsKKzMwMzk4IDQyZjE5YTZjNjU3MDFjZGYzNjUwMGU0NzBlOWIwZWUwZGIxNGEyNGEgbGVnYWN5LXRydW5rCiszMDM5OSBmYWY5NjVkNzM4MjRiZjI0NGViNjRmMWZlYTAyOGVlMjY5YTBiZDdjIGxlZ2FjeS10cnVuaworMzA0MDAgOWQwNTgwYWNiNDVmZjQ1ZWE3NTcxZDQzMzBjOWZhNmNiZTYxNTdlMCBsZWdhY3ktdHJ1bmsKKzMwNDAxIGRiZmMzZWY3ZDAwMzUwZTA5ZTk1NTNlOTU2NDk3MzY0YjViM2RlOTAgbGVnYWN5LXRydW5rCiszMDQwMiAzMWFkZWE0OWE1NThmNzI4Y2U5MzM5OWJlZmVhOGY1YmNlYjIxNjFlIGxlZ2FjeS10cnVuaworMzA0MDMgOTY0Njg4NzBkMjA2ZDk0ZjFhOGE0ZDljZDA0MzAxODE5NGE3ZDI4MCBsZWdhY3ktdHJ1bmsKKzMwNDA0IDNkYjE2NWYwMjEwNzQzNjNiMTYwOGFhYWIxNWMzNTcwNGVmNjZhNjYgbGVnYWN5LXRydW5rCiszMDQwNSAzM2RjZjRmZDBmZjkwM2ZiZGZlMzA3NmNlODRiODJiZDhiNjk1NGQ4IGxlZ2FjeS10cnVuaworMzA0MDYgMjRjYjYyMjI1MDQwY2ViYjI4MmFiYjI0YWMxYzNhZGMyOWI4ZTAwZCBsZWdhY3ktdHJ1bmsKKzMwNDA3IGZmYTRhYjM3MDM2ZjAxNWZlOTk2NDBkMjE0YTliMDhjOGYxNGExMGUgbGVnYWN5LXRydW5rCiszMDQwOCAzMmU0Yzc3NTM0MTYyYzVmN2FmY2RhNGQ0MWQwMWI4YjAyNzcwY2UyIGxlZ2FjeS10cnVuaworMzA0MDkgNmM1MzVkY2VkYWQzMDNjMTNlNDM0NzJiOWQwZjc4ZDI3ODMxOTczZCBsZWdhY3ktdHJ1bmsKKzMwNDEwIDc5NDY2ZjA0ZjFjNTRiNTJiNzJlZDIxYzlkYTUyNzA5MTU1NWY2NWIgbGVnYWN5LXRydW5rCiszMDQxMSBiOTFkOTVlOWIyNDlhNzkzMzVhNmE2NjA5YzExZTZhYWZmYWRhZjhiIGxlZ2FjeS10cnVuaworMzA0MTIgYTA4NWNjMDQ3NjgxMDk1OWRhY2QwYzA3Nzc4OGZlMGY1NmZkMTdjMSBsZWdhY3ktdHJ1bmsKKzMwNDEzIDg0NjhlM2ZjM2EyYmM3MWNjMmI3MDg4NmQ5NjE0YzFjYzA0MzYzMTggbGVnYWN5LXRydW5rCiszMDQxNCAzZDVhYmQzZDllNGJhODA1MTk0M2Y4NTVjNDViZjBiNTJiMTI0NWI1IGxlZ2FjeS10cnVuaworMzA0MTUgYmMzMDU4NDk1MjJkZjc4NzI5ODJlNzIwYjgwZDM2NTNiOGVmNWJiOSBsZWdhY3ktdHJ1bmsKKzMwNDE2IGE4MmQ5MmY3ODQ3MmM3MDdlNmU3ZTExYzUwZmVlZDQzZDVhYWRhOTcgbGVnYWN5LXRydW5rCiszMDQxNyBiZDBjNDA3MTk1ODM2YmQwZjE5OWZiZDZiY2UyN2M5NmQzODljMGU4IGxlZ2FjeS10cnVuaworMzA0MTggNmU1NDFhNzJhZjFhZTY1NDM3NzQyZDI4NDU2ZTdiOTI0NTMzMDdiNiBsZWdhY3ktdHJ1bmsKKzMwNDE5IDVjYTcwNzIzNjFiZDk1YTAwZDRhZWUxMDk4YWQyMzZiMTkyNTQ2OWMgbGVnYWN5LXRydW5rCiszMDQyMCA3MjM3MjFlYTQwMjU5NmM0MzVlZTY2ZmM3NzU2ZjIxNTU2Mjc2MTdlIGxlZ2FjeS10cnVuaworMzA0MjEgNTUxNDExNDRkYWI1ZTUwOTEyYjEwNzQ0NDBjNWJlN2E0NTRjZTFlNSBsZWdhY3ktdHJ1bmsKKzMwNDIyIGJlZWE0MjE1Mjc4NzQzZGExMWVhZGI1MzliY2JlZWJhNDhhNzAzODEgbGVnYWN5LXRydW5rCiszMDQyMyA1MjY3NDJhNzRkMDY1YjNiM2ZmNDMyNmQ2ZDMzYzc1YjkxNDBmMDc3IGxlZ2FjeS10cnVuaworMzA0MjQgYWNkYjM5YjcxNGIxZWVlNDhkNGRiZWMyMzM4MWI4MzRlMGEwMjM1NSBsZWdhY3ktdHJ1bmsKKzMwNDI1IDAyYzZmZDVjZjc1YmNmNTZmYjRiZWM3NzZiZmUwMTg5MTEwY2UwODcgbGVnYWN5LXRydW5rCiszMDQyNiBiZTczMmUyMTllZDEwMjY3ZDkwMjc4M2JlZTczMTRkYjE0YTI1MmRkIGxlZ2FjeS10cnVuaworMzA0MjcgYTU4Y2VjZjU5YjA2M2Y1NTUxYzhiNGExM2M0NTRjMDdiMDQ3MGEyZSBsZWdhY3ktdHJ1bmsKKzMwNDI4IDdiNWE3Y2ZjMTdhOWU1MDE3Zjc1MDNkMDMyYWU1YWJjODVlMDc0ZGMgbGVnYWN5LXRydW5rCiszMDQyOSA5NGJjODEyYTNjNTI4NTE1OGU2MGZlMTI0NWU0MTc5ZDIxZWI4Zjc1IGxlZ2FjeS10cnVuaworMzA0MzAgMzVmY2FiZWZjOWQyZmQzNTY5NTcyOWVhOWFkNmI0Y2YyYjRhMjM1ZSBsZWdhY3ktdHJ1bmsKKzMwNDMxIGYxNTU5NDYwYjk1MjYyNjkzMmM0NjUxZjcxMWM4NTRhNzFiYjI3YWQgbGVnYWN5LXRydW5rCiszMDQzMiAxNjM1NjNjY2I3ZDYwYWRmODRlOGI1MDYwNGE5YjY1NjNjZWYxMDE5IGxlZ2FjeS10cnVuaworMzA0MzMgMjQwYTI0MDFjNDA0ZGU2YWY5OTgzYzI0Y2QwMDk2MzQzYzQ1ZGMwOCBsZWdhY3ktdHJ1bmsKKzMwNDM0IDM4OTI3ZmQ1NjdiNGU0ZjJmOTI4OGY4ZmRjNzM0ZDMxNzk5MzViNGIgbGVnYWN5LXRydW5rCiszMDQzNSBiODIzNjZiYzU0Mzg0MjhhOWQ5NWQ2YzI0YzhlNzZkYTVlNjliY2RjIGxlZ2FjeS10cnVuaworMzA0MzYgM2MwNDFiMTlmMWQzNjc3YTNjMzkxYWJiZjU1YjhjOTQyMzQ1ZTM3YyBsZWdhY3ktdHJ1bmsKKzMwNDM3IGI4YzcyZTg2YTEyZDQwNzAwYjFiZTA3NDY3MzI5NDVlYjlmYmUxMDMgbGVnYWN5LXRydW5rCiszMDQzOCAxYzU4ZmU1Yzc2OWYzYzA2ZTcxYmUzYjAwMDBjODc4OTA5Y2EwNTJmIGxlZ2FjeS10cnVuaworMzA0MzkgYTVjODc5NzI2YjNhMzIzMzc1MTZiZjViMTBiMWQxYmQyOTQyYWY1ZSBsZWdhY3ktdHJ1bmsKKzMwNDQwIGI5YzQ2MmQyM2YzYzY1MjE0ZDQ3ZDE2YTVjYjU0Y2Y3MmI2NDQyY2YgbGVnYWN5LXRydW5rCiszMDQ0MSBhNTczZmVkZTg4ZTJiMThlNGU3ZDFmMDc4YmZmYWY5OWJmZjA5MGQ3IGxlZ2FjeS10cnVuaworMzA0NDIgNWRmN2EyODRlYWY0ZWQ3NzFmMTc3NGMyYjNiNDY1Y2E3ZGQ1Zjk5NyBsZWdhY3ktdHJ1bmsKKzMwNDQzIGI3OTBkYTA2NzFmN2E3MWU5MDIwZTQxMjgzNDFiNTBhN2I5ZTM2NDQgbGVnYWN5LXRydW5rCiszMDQ0NCA0YjRjZTI0OTBmZTJlZDdlZWM1MTliNmEyY2NmZDg2NDk5OTI4MmE0IGxlZ2FjeS10cnVuaworMzA0NDUgMTAzODk5Y2U4OGIyZmNhM2U3ZjFlNzk2NGJhYTE5ZWQxYjY5MzczMCBsZWdhY3ktdHJ1bmsKKzMwNDQ2IGJmOWUwNDI0MjM3ZjUxNTYyMmQ4MDUwZTFhY2EwZmJiNjQxYjlkMmQgbGVnYWN5LXRydW5rCiszMDQ0NyA3NzZmMjcwYTZlYTljNzBiZmU2N2U0NGU0MTM1NGExMzhlYjM5MmE1IGxlZ2FjeS10cnVuaworMzA0NDggNDQ0OGZmOGIzMjM5MGJmZDkyNWY2OTM1M2Q1ZGRhMTcxNWJlMTAyNyBsZWdhY3ktdHJ1bmsKKzMwNDQ5IDRjMDNhNGZhZDcyZWYyNjE3MDdiODgyZWNlNDMxMGUyZTBlODQxZTcgbGVnYWN5LXRydW5rCiszMDQ1MCA4NDg3OWUxODM3NzM4NDk0OWZhMjliY2E2MjFlYWI1NTBjYzM5OWYzIGxlZ2FjeS10cnVuaworMzA0NTEgOTA5OTgwNzlhMWEyMzg5MzI1NGRiYmY1OTJkMmE0OGU2ZWJkNzhlZiBsZWdhY3ktdHJ1bmsKKzMwNDUyIDY3ZGYyODkzYTUwZWU4MTc3YzEwMjY5N2M0OTQwOWI0YmFkZjg2OWMgbGVnYWN5LXRydW5rCiszMDQ1MyA3MDFiMTAyOWFmNDA3OTA1NTBlZTdkNDk5MWIxZmIxYzJiMjc4YzhlIGxlZ2FjeS10cnVuaworMzA0NTQgNzBmMGYyNWIxMzRlNDI4YzFkMTdmYjgyYjUzNzdlMTIzN2NhMTNkZSBsZWdhY3ktdHJ1bmsKKzMwNDU1IDc3NGY3NTRmZDFmZjE1MDM4ZmJlOTEwN2FjYWRlOTE1NTJmMjI3ZjAgbGVnYWN5LXRydW5rCiszMDQ1NiAzNWU1YjAyMWI3NzQ0NDcyMDNlZTczNDE2YjliMTlkYzJmMDljODViIGxlZ2FjeS10cnVuaworMzA0NTcgNzg0ZTdmZGY4YzUyNDM0NmZlMDNmNTNkYmFiMDVmMWQxNDM2ZjU4MyBsZWdhY3ktdHJ1bmsKKzMwNDU4IDY5ODk2MGQ1NjFmOGRhNTg5OGUwZmRhYTJmYzAzYWVlZTE3MjE4MjMgbGVnYWN5LXRydW5rCiszMDQ1OSA1YjE1NzU5NjhmN2ZhZjgwZTcwMjgzNDFiMWNiOTI2YmYyNGRjNjg3IGxlZ2FjeS10cnVuaworMzA0NjAgNTY3N2U5ODBlMDQ3ZTQyNDhmZmZhMDA1MGI3NzJmNzFkMGE5M2I0NCBsZWdhY3ktdHJ1bmsKKzMwNDYyIDJjNjcxNjlmNmUxM2ZiZGQxN2I0Nzc2ZGM3OWJjNTJhZWUyNWFlNDkgbGVnYWN5LXRydW5rCiszMDQ2MyBlMDJkYWY2MzA3ZmM4YThlYjVlMDAyNmU4YzcwZGVlOWVjMDczODZjIGxlZ2FjeS10cnVuaworMzA0NjQgNTQ5ZDA3ZDBhZWQ3ZWNhMTkwMjdjOTY1Y2I3MDkxMWFkM2FjZjFkNSBsZWdhY3ktdHJ1bmsKKzMwNDY1IGY3MjJhODMwMTQwZmI0MTVlNWUyODczZDRlMTExNGY0ZDFlZTc4ZTQgcjIzYTEtYnJhbmNoCiszMDQ2NyA3ZTIzNTFiYzZlN2E2OWJmNjhkZjcxMjUzNTE4NmJjNWIwNmFjMjcxIGxlZ2FjeS10cnVuaworMzA0NjggMWM2NWZhNWU1MmMzZDgxYWIwMWJhOGVmM2EwYmRlZDRhZjNmNmJkZSByMjNhMS1icmFuY2gKKzMwNDY5IDE1MDE3YTc5YmFjZGRhZDI3YmJhYWQ0ZjM5MmJiNGIwOTExNzczMTggcjIzYTEtYnJhbmNoCiszMDQ3MCBkNmRjZmY0YjM1NzQyMzQ4MGU0N2E1NTVlYTAwYmYzMmYyY2U4ZjMyIHIyM2ExLWJyYW5jaAorMzA0NzEgMmI4MDExNjgxNWI1MzVkZDk4MDJkNmMzNTkxYTZkOWNiZDY0YWI5NyByMjNhMS1icmFuY2gKKzMwNDcyIDkyZTU3MmUzY2E5ZjhjODMzOWY3ZTk2YTk1NmJhOWI3ODJiODgyNmQgbGVnYWN5LXRydW5rCiszMDQ3MyA4YThkZmYyNTBiZTQzNjJmYTFhNjdkMzFhZDQ4ODcwYjYwM2YyNmZjIGxlZ2FjeS10cnVuaworMzA0NzQgYmNiZDk0YzYxMGU4MjNmMjk1ZDFiNzQzOTllYmI2OGI4NzhmYWM1MiBsZWdhY3ktdHJ1bmsKKzMwNDc1IDdjYjczYTczMmY3NzFlYWEyMzZmMmRmNDJiOThmODUyNDJlYjkwYWIgcjIzYTEtYnJhbmNoCiszMDQ3NSAwMTgzMDc3NjVkMzRkY2Y2MmQ2ZDJhZDY2YmQ3ZjdiZGU1MzFlZmEyIHIyM2ExLWJyYW5jaAorMzA0NzcgY2ZhMTNjZTk4M2JhMmI3ODk2NmMwZWM3ODcxMWNkZjdjODIyMzYzZiBsZWdhY3ktdHJ1bmsKKzMwNDc4IDY5OTA1MDU5YzdiZDE4ODU5YjNmOGEyNjNjZTg3ZWVlYjFlYTI3ZTMgbGVnYWN5LXRydW5rCiszMDQ3OSA3NDA3OWJlNmYzZjExNGUxOTIyODMzNTJmOTAyNzFhNzZkMTAwM2Y1IGxlZ2FjeS10cnVuaworMzA0ODAgY2Y4MWY4MjVkYWFjOTI2Y2Q1NDdhMjQyYTBlNTVjYmVjNDE1MTliYyBsZWdhY3ktdHJ1bmsKKzMwNDgyIDRlMDkzMmExMTJmNDJiNTU5YjczMWM5ZWQ4Zjg3ZGQ5YjYzMTZjZWQgbGVnYWN5LXRydW5rCiszMDQ4MyA5NmUxYWI4ZGY4ODM4NGFkYTc4MzAyMmI4NzVjYjk3NDJmZDVhYmE0IGxlZ2FjeS10cnVuaworMzA0ODQgMmE4N2Q5NDg5MTEyZmEyZTM0YWEzZTg3NWI2ZjIzNjBlY2ZkYzJiZSBsZWdhY3ktdHJ1bmsKKzMwNDg1IDAwY2QxZDcxNTljMmI0NTEzMTEyMTFlYzBlZjljOWY5NWY0NDJhYmMgbGVnYWN5LXRydW5rCiszMDQ4NiA2Y2ExYzBkM2VmMTkzMTIyNDQxNDI1MGExMjE3M2VjZDNlNjk1MTE2IGxlZ2FjeS10cnVuaworMzA0ODcgOGVkNDcyZTViY2Q0NGRkMzIxYjQzNWY5YmQxOTkwNTVhMDc5Y2VkMSBsZWdhY3ktdHJ1bmsKKzMwNDg4IDg4ZGYyNjdkYjg1OWUzZjRiODlmZDY4NjRkOTFiZTQ0MzAxNDE5NDcgbGVnYWN5LXRydW5rCiszMDQ4OSBiZGE0MTg1NjcwY2NiNzQ4ZTgzOTlhZjYxOTBjNzc5ZmFmMTliN2VlIGxlZ2FjeS10cnVuaworMzA0OTAgMjkzZWRhM2U2OWY1ZjU4MjE0YWFiMjk5Y2EwMzg5NmRiMTRlZGMwMiBsZWdhY3ktdHJ1bmsKKzMwNDkxIGY1NzA4M2EzNDE5NjY0YWI0OGUwOTRjMGI0ZTdhM2UxODdlMGQxNTQgbGVnYWN5LXRydW5rCiszMDQ5MiAxYzQwNjBkOWU2ODc0YzM1ZmMyYjdmYzNkMGFhZTBiNmI4ZjUxNGEwIGxlZ2FjeS10cnVuaworMzA0OTMgZWE2N2NlYTY3NmU5OTM0NWIwZGZlYTI0NWJjOTQxYWFkOWVlNDhhYiBsZWdhY3ktdHJ1bmsKKzMwNDk0IGQ4NWVhZjQ3ODU1NmVmYzYxM2Y2ZjRmODkwOWIwYjYyNzkzYWQwNWUgbGVnYWN5LXRydW5rCiszMDQ5NSA4MTIwOWMwZjA4YTA1OTI2ZjdiZDBlOWY5MDU1YWNjZWFkYjAyZDA1IGxlZ2FjeS10cnVuaworMzA0OTYgNDU3OWU4M2M2NjNiNzAyZWEyMGJhYjFhNjIzMmExMTFiNWI0YWE3NCBsZWdhY3ktdHJ1bmsKKzMwNDk3IDcyYzNmNzM0N2U4OGM4OTQ0MDZkZWRkYTc4N2ExNmZhY2M1YTljNjEgbGVnYWN5LXRydW5rCiszMDQ5OCAyNjg3YTkwODU0MTFlNzg1N2Y2NTYyZTAyMjcwODYxNTM2MGJkN2FjIGxlZ2FjeS10cnVuaworMzA0OTkgNWM0ZmEwNGM5ZjYyOGQ4OTkyYzI1MDY2YWJiNGZjOWJlYzQ2YmU2NiBsZWdhY3ktdHJ1bmsKKzMwNTAwIDZhNWNmZmM2MjM4N2RkYWEwOTBiYWM1MzNlYzUwYTg3YzlmN2I3ZmQgbGVnYWN5LXRydW5rCiszMDUwMSBjMGIzYmI0ODViY2Y4MDAxNmNlODYwYWRlZjVkYWFkZWRlNGY5MGJhIHJlbGVhc2UyMi1tYWludAorMzA1MDIgOTdkYzUzMGQ5MGViNzg1MjYyZDE1OWY5NTkzZGNhZjkzZTc4MDk2OSBsZWdhY3ktdHJ1bmsKKzMwNTAzIDQ3OTMxMDE0OWIyZWRlMWU3MDk3MjE5N2E0ZWE5ZjU4MjJlZWIyZmMgbGVnYWN5LXRydW5rCiszMDUwNCBmZDlmMjBjZTNiYmExZmM5YzM4YmIzM2M4MzA3MDRmNGI1MjEyM2U0IGxlZ2FjeS10cnVuaworMzA1MDUgNzQxYWE5ZDZkOGJlZDc0MDVmYzMzMWYzN2JiMjMwMGVkMjYzYmYyNyBsZWdhY3ktdHJ1bmsKKzMwNTA2IDBiM2ZjY2ZiZTJhMjg3NjFlZTRjNTc4NjFiMTI1MDIwYzZhYjQwZTQgbGVnYWN5LXRydW5rCiszMDUwNyA5ZWU0ZmQwNWQzY2JjZDVhZDdkYWIzODMzYmJjZjkwYjJkYzBmOGMzIGxlZ2FjeS10cnVuaworMzA1MDggYmZhMzI2MTNkZWM4ZWNhMGU4MTc2MjZmOTg0ZGZkZmY1YzU4YmQ1OCBsZWdhY3ktdHJ1bmsKKzMwNTA5IDcyN2JjYjgxMWM1MGY5NWZkOTQ1YjJmMGVmNDM4OTI4OTU2YTJhNTEgbGVnYWN5LXRydW5rCiszMDUxMCBlMmM4OGM0NTFjMTlhNTQ0NGM5NWJjNzA5ZjMyYmY1MGI1OTMzNDE4IGxlZ2FjeS10cnVuaworMzA1MTEgZjQ0MWM0ZTViMjM0NjU2NTQ1Yzg4ZmU1NDYzMTliN2Q5YmI0YTczNiBsZWdhY3ktdHJ1bmsKKzMwNTEyIDEwOThjY2M4NGQ2M2Y4OTJmNjJmYWNlODIzOTUxZDViN2JmYWI0NzYgbGVnYWN5LXRydW5rCiszMDUxMyA4MDZkMzZlNTZiZmEzZTA4MDExZjQ5YmIwYjNiZTc3MGYzZDRiODBmIHIyM2ExLWJyYW5jaAorMzA1MTQgYWQxMmVhOWM3ZWZkZjQ2YjYzODliZjNjZjY1ZTU1ZGU5ZmRlNWMxNyByMjNhMS1icmFuY2gKKzMwNTE1IDQ0MTQ3MDdkOTM3NjE2YzZhZDRiNjBjMjYwYTMzMWE5YWY4NDk1OTIgbGVnYWN5LXRydW5rCiszMDUxNiBlMzI3MWU4YjE0ZGVlMGZiZTA3ZDFhODUyYzAwZjgyMTNmN2Y3ZmZlIGxlZ2FjeS10cnVuaworMzA1MTcgYzQyOWZlNWRlNDE3MzU2MmQ1MzAzMWMwZjM4NTE2YTRjZGNhNjhjNiBsZWdhY3ktdHJ1bmsKKzMwNTE4IDMzOGFjODZmNDQyZDk5YWMxYWJhNzU0NGM0ZjFmZjhlNGNmOWMxNGEgbGVnYWN5LXRydW5rCiszMDUxOSBkMjc5ZDc2M2Y0NjI1NGVjNWRjMWZhNmQyNWUyMjY3ZWE3MjcyMWE5IGxlZ2FjeS10cnVuaworMzA1MjAgZDU5YjdjYmNlYWMxYzZjOTY1N2QxYjM5MWM0NjlhYWUyMmI2YmIxYyBsZWdhY3ktdHJ1bmsKKzMwNTIxIGIxZTIzYzM1NzA3YmU0YzAxMDJiNzU5OGI1NDk1N2RjOWJiYjc1MjMgbGVnYWN5LXRydW5rCiszMDUyMiBiNjFhNjYwMjJkNWE0MDFmNGY2MzI1MTA3MTMwMzUzOWYxNGYzNTU4IGxlZ2FjeS10cnVuaworMzA1MjMgOGVjZGRmNGFkOGIwMjgxZDY5NDY2ZGI4NTZjZmUyNjZjYjJhODQ5YSBsZWdhY3ktdHJ1bmsKKzMwNTI0IGRjMzNkMDI3NjQ1YTRmM2Q5MGRhNmQzM2ZmYTJiOTJiYjliNTcyOTggbGVnYWN5LXRydW5rCiszMDUyNSA5M2I2YTNmNjEzMmRjODI4NzMyMzMxNzAyZWM2MGRkMzk4ODFkODc3IGxlZ2FjeS10cnVuaworMzA1MjYgNDFmNzcyNmUzZTUxMTdhOTE0NDRkZDQzODA5MTkxOTNkMTU1ODAzMiBsZWdhY3ktdHJ1bmsKKzMwNTI3IGE5ODY3M2JlMjBjMjgwMmVmYTQ1Yzc0ZjVkMTc0MjI2MjcwOGE1MjggcjIzYTEtYnJhbmNoCiszMDUyOCA0MmYzM2JkNjljNzI0Y2Y0ZjVmYTRmMTg1MDI1YjVkMjlhMjU1MWVkIHIyM2ExLWJyYW5jaAorMzA1MjkgZjBiZGY0YzU5MGVjNDBmOTgxZmVhNGEyMzkyMDVhMzdjMDMyNDNhNiByMjNhMS1icmFuY2gKKzMwNTMwIGJlNTExMjAzMTE2ZjA2ZjMwOGM2NzU2ZmM4Mjk3YzQxZDhhOWQzYmIgcjIzYTEtYnJhbmNoCiszMDUzMSAxM2M5MDM4ZmE5Mzc2OTkzOGM2MWQ3ZWQ2MmM2MGIxMmYwNTQ1OTcwIHIyM2ExLWJyYW5jaAorMzA1MzIgZGQ2ZjFkZjUyNGRkYzc0MDI0OTFjNGFiZjg0YjEzODRkNTU2MWFjMiByMjNhMS1icmFuY2gKKzMwNTMzIDY4ZGFmZTFiYzAxNjlhODY2NzlhY2YzMDJmNTA0NzVkMThjNjcyZDQgcjIzYTEtYnJhbmNoCiszMDUzNCAwMjU5ODU2YzFlNDc2MTA4MjdjNTBkNWU5NWU1MGRiMzljYTI3YWY5IHIyM2ExLWJyYW5jaAorMzA1MzUgOTlkZjBlNTJmNjM0MzMyNjVlNTY3ZjI4MDViYmM0OTFlNGQ1NmQwYyBsZWdhY3ktdHJ1bmsKKzMwNTM2IDFhZTc4MjQ5MzEzMmI5YTQwZTkwOGFmYmE0NTJjMmIyMTY5MjczYWQgbGVnYWN5LXRydW5rCiszMDUzNyBiMzBmZTRkY2M2OTc5ODYzYmU2NzZlYzA5YzYyZmM0ZGRkZTdhYmRhIHJlbGVhc2UyMi1tYWludAorMzA1MzggNmUxYTc0MzVkZjI1ZDM1MzE3M2QzNjBkZjIyYzZkYTQxMGNiYzljNSBsZWdhY3ktdHJ1bmsKKzMwNTM5IGU2NWZmY2I0MzY5NTE4ZDcyYTE1ZGM4MWY0Y2MxMGQxMDgxOTdiMmUgcjIzYTEtYnJhbmNoCiszMDU0MCBhZTlkOGY1MGU3NmEzNjAzYzJmNTViZTI2ZjE3YTU2NTc4MzU3NWE2IHIyM2ExLWJyYW5jaAorMzA1NDEgZjlhNTU1N2M5NDQ3YWNhMTZkZDYzODI1MjNiNWJiZWYxNzMxMTlkYSByMjNhMS1icmFuY2gKKzMwNTQyIDA0MWM1MmY0OWRmMjI3OGRmM2I5MmU3ZjJmNDA3NTc0OTVkZjM0NTIgbGVnYWN5LXRydW5rCiszMDU0MyAxODg0MTZmYjdhYzUyZDJlYWE1MThiOTQ2OWUwNmM0MmJmZmY1ODE1IGxlZ2FjeS10cnVuaworMzA1NDQgZWJmNzI2NWFhZTRlYTkyZmNjZWYzMDVlMGU2OGQyZDEzYzdiZDMwOSBsZWdhY3ktdHJ1bmsKKzMwNTQ1IDIzMjgwYTY0Mjg4ZTNlYTE3YTQ0MGI3ODhkNWQwYWYwMjI1YTA0ZWMgbGVnYWN5LXRydW5rCiszMDU0NiA1ZDk5NzI2M2I4NTliOTJmMjc1ZjdlZWMxMWZmMzgzNzhiYTQzNGQzIGxlZ2FjeS10cnVuaworMzA1NDcgMjM3YTE0NjIwNzg1OWI1ZDY3NWY3NzNhOGZmODMzM2ZmY2M1MTU5MCBsZWdhY3ktdHJ1bmsKKzMwNTQ4IDczN2E1NDc2Mzk2YjY0MTY4NDFmMjAyYTMwMTFkN2JkYThjOWY4YjQgbGVnYWN5LXRydW5rCiszMDU0OSAyNjdmNDViZTljMDJjZDQwYmVlZDM3MDQ0OGZmN2MwZWNmY2U2NjNlIHIyM2ExLWJyYW5jaAorMzA1NTAgNTU0MTIxZmNiYjlkY2JmZDYwMzRiNjlkMmE4MDBkY2EwNzhhZjhkNyBsZWdhY3ktdHJ1bmsKKzMwNTUxIDFjZDljODU2NDg3NWI4NWI1MjA3YTRkMDU5NThjMzhjNGQ2MDkyYjcgbGVnYWN5LXRydW5rCiszMDU1MiA3MGQyY2IzNmZhMTdhMzFmZTdhNWQ2ZGNkYTY1MjdlZDIwYWQyOGY2IGxlZ2FjeS10cnVuaworMzA1NTMgNzgyMjc3MDljYTA0NGY3OWU0ZmUxYmQ2NTk2MDQ3ZmEzNDY5ODk4YSBsZWdhY3ktdHJ1bmsKKzMwNTU0IGFmMzU3OTUxMWY4NDY4ZmQyMTAyZDYyYzkzZGRjNDU1NWQ3YzlmZWQgbGVnYWN5LXRydW5rCiszMDU1NSA5ZDA4MjkxY2Q0MTE2NjIxOWViZDFiNTJmZDBkNTg5MGNjM2I4MDk0IGxlZ2FjeS10cnVuaworMzA1NTYgNzE0Y2RmMDgwNmMxNmY3YTQyNjM2MDRiMGNhOTUzNzhkMTYxZTYzZCBsZWdhY3ktdHJ1bmsKKzMwNTU3IGUzODJkMzkzMzMxZDVjMTIxZWM3ZmFmZWQ4OTliM2Y0ODNhZTc1ZjYgbGVnYWN5LXRydW5rCiszMDU1OCA5NGI5Y2Y0Mjc0ZGUxZTA1ZjlmMTYwYTJiZGFmOTNiMzE2MzcwMjljIGxlZ2FjeS10cnVuaworMzA1NTkgZWUzNGI2NDk1MmMwZjhhNjcyYjA3ZWJhOTc1NjgwZTIzOGFlMzZhYiBsZWdhY3ktdHJ1bmsKKzMwNTYwIGNkM2M0ZGYxOWIwMzViNmFlYWEwZDE0ZmEyMmU0MjQ2YTIwMjQ1MGMgbGVnYWN5LXRydW5rCiszMDU2MSBhZmViNzBjODc2YWEzNTE0MjE3YjkxNGQxZjhiNGFkZWI1NTljNjZjIGxlZ2FjeS10cnVuaworMzA1NjIgY2Y5MDMwOWVmZWVlNjIyZGY2NDFhOTY5MDUwMGIwODM5YWQ3NTNiZiBsZWdhY3ktdHJ1bmsKKzMwNTYzIDY5NzdlMzIwYTc1NmM0Njg1ZWJjYmIyMTlkYWUzZjhkZDM3OTAxMzUgbGVnYWN5LXRydW5rCiszMDU2NCBkM2JhN2Y0YTlmODhhZmU1ZDgyNjBkOTAwZTMwNWU2Yzk4NTk4NDQ4IGxlZ2FjeS10cnVuaworMzA1NjUgYWFlOTQ5NTA2ZDJhN2QzMjgzOTMxNmM1OGU2MzhhMjViMmRlMWI2YSBsZWdhY3ktdHJ1bmsKKzMwNTY2IDE1N2E5NWY0MTdmM2Q3YmNjZDAzZjMwZmExZjNhMDRhMmE3M2IyN2YgbGVnYWN5LXRydW5rCiszMDU2NyA3OTAxZmQ5NTAxN2YwOTQ3ODNmMjIxY2VhNzNjMGY2YjFjNjhlNGY3IGxlZ2FjeS10cnVuaworMzA1NjggY2JkZjYwY2NmNTRmNWRmYzdiZWQwMGNhZGM3MDI0NGMxNWRiZGQzOSBsZWdhY3ktdHJ1bmsKKzMwNTY5IGViMzIyZWY2N2M5ZmVjNTAxOTQyZjNhMjBhNTAxNjBkZTU5YjEwNGIgbGVnYWN5LXRydW5rCiszMDU3MCBjYzViMmQwYTRhZDFkODZmZTI2OTc4ZGM5ZjRlOGE3ZmI2ZjdlNjM2IGxlZ2FjeS10cnVuaworMzA1NzEgMDZiM2ZhMjVkOWYxZGUzZmE3NTNlMTcyZjY3OWZiOGNiZjk3MzlkOSByMjNhMS1icmFuY2gKKzMwNTcyIDE3MTJlMjA0YWE5MmYxMjA3ZjJlMTZkN2Y4YmFiMWRlYTE2MzUxZDUgcjIzYTEtYnJhbmNoCiszMDU3MyBlZjUzMTQ4MmJiMzdiMGZiMzhiZjAxNjJhODYyN2NkZTIxZmYzZDMxIGxlZ2FjeS10cnVuaworMzA1NzQgZTkyMDQ0YzBiOGVjZWU4MTc1YWE0NjZlZTUzYTMzY2JhNDUzNWUyNyBsZWdhY3ktdHJ1bmsKKzMwNTc1IGMzMGY5NzI4NzYwMjk0ZjJmODhlZmUzNWQ5ZWIzM2ViMmMyZDIwZTAgbGVnYWN5LXRydW5rCiszMDU3NiAxNTY0YzY4MzllNmIwZWI4MDU5YWU0YzgxY2QwMjE1OWRjMDlkYjI1IGxlZ2FjeS10cnVuaworMzA1NzcgMGJhNDY2MDZmMGY5MTE4ZGVjYmE0MGQzZmYwODI4MGUyNThlNzdhYSBsZWdhY3ktdHJ1bmsKKzMwNTc4IGI4NjU5MjVlZjY4YWI2M2Y3NDhlZWZkNjhjZDQwOWQyMjZiOThjY2MgbGVnYWN5LXRydW5rCiszMDU3OSBjMjlhZGE2YzFjOTA0YTI3NDVkYTVhMDUxODZhOGEyOGIwMGEzMmUxIGxlZ2FjeS10cnVuaworMzA1ODAgNzUzMzA2ZjliMGEwZTMzOGM5YjEzNjIyYjRkZWY1NDU4NjAxZTIwNyBsZWdhY3ktdHJ1bmsKKzMwNTgxIGMxZjRlNTNjNDJkZDBjZTA1YTQ4MzFkYTFkYTU0MDA0MzJiNjQ1NzYgbGVnYWN5LXRydW5rCiszMDU4MiA5NzJmZWMyMWYyMjNiNzEzOGJjOWJkMDc1NWJhYzFjNzA5N2E3YzU5IGxlZ2FjeS10cnVuaworMzA1ODMgYTc0Yzg4ODM4YTU1YjQyMWY4YmJlOTkyNDllNzJmZTA3NDNhZmQyZiBsZWdhY3ktdHJ1bmsKKzMwNTg0IDJhZTFkMTc1NzJkYTZhOGU3NGZjZjVmNzAxMTZjYmU1NWZhNmM0NTEgbGVnYWN5LXRydW5rCiszMDU4NSAzMTk5ZTk3NGY1NWFhM2Y2ZGU1MmY2OTI0ZTIwOGRhYmE5MTYxNTcwIGxlZ2FjeS10cnVuaworMzA1ODYgNjRlOGM2OTg2NjEwYzJiMzc4NjQ4MDY0YmRmZmQxNGRkYzcxZjJhMyBsZWdhY3ktdHJ1bmsKKzMwNTg3IGQ1ZTA5ZDQxMmI1Mzg4MDY3ZWI5M2RjOGZlMTg3ZDBhMmY1YWVmMmEgbGVnYWN5LXRydW5rCiszMDU4OCBmNzIyNjQyMmMxZDBhNGI3MTQxNmJhMzA1MjUyYjM4MGYxMzhhZTRiIGxlZ2FjeS10cnVuaworMzA1ODkgOTAzNTBiNWQzMzk3YzRmZDY4Y2EzZWM0NmNkY2Q5OThjOWFjMWVlNiBsZWdhY3ktdHJ1bmsKKzMwNTkwIDM4MzE5NDA5ZTg5NTY3ZTI0MjhhMTZkMDVjOWUwMWJkYzc5OTEwNTYgcmVsZWFzZTIyLW1haW50CiszMDU5MSA5M2YzMjJmNTYyZjM5OThjZmYyNjUxMjYwMDJjMmQxYjc4M2QyNjgyIGxlZ2FjeS10cnVuaworMzA1OTIgYWJiNWE2OWQ2MGNiZmY5OTQ2MzliZjM0MDg2ZjhiMjE1NTNhMjNjMCBsZWdhY3ktdHJ1bmsKKzMwNTkzIGExMjM3OTNjYTE5M2JlN2Q0OTA1ZDUzYzBiNGZiY2RmMTAzZmUyNmEgbGVnYWN5LXRydW5rCiszMDU5NCAzYTI5NWNlYmE0MDFmNTdhZDZkYTY2NjZlZDdiMDU1YzNlMzc5YzA5IGxlZ2FjeS10cnVuaworMzA1OTUgMzg4ZTU0NzQ3NzQwMGY0NTJmM2IwMWNlNGZmN2U5YmQ3NjhlNDA4NSBsZWdhY3ktdHJ1bmsKKzMwNTk2IDU0ZWY3ZDUyOTZmMTA0MGFhMzhkODFhZWIzNTYxOTBkM2Q1M2QxNTQgcjIzYTEtYnJhbmNoCiszMDU5NyAxYWM5OTk0ZGM2YzI1ODEzMDJhYzk4YTUzNTYzNGVkMDkzNDIxZjYxIHIyM2ExLWJyYW5jaAorMzA1OTggMWEwZWFiYmRhNjU0YWE1NTFlZGM2ZTY3YzQ2YmI2MTNmMGIyZmM3MyByMjNhMS1icmFuY2gKKzMwNTk5IDk3YjVhYjY3YjlmMjkwOWQ4NGQyNDI5NTA2MGMzZGNiNmQ2MTI3YTggcjIzYTEtYnJhbmNoCiszMDYwMCA1MmNlNzEzNThlMzJhMTE2OWRjZjAzY2E3NGMxZjRkZmFiMzFiODZlIHIyM2ExLWJyYW5jaAorMzA2MDEgN2RhYjI3NzMxYmU4MThkMDRiMjI4ZmU1MjdjNTE2MWZlNTVmZjcxZSBsZWdhY3ktdHJ1bmsKKzMwNjAyIGJkNzUwMzc4ZDVjMWZmYzJkMzMwN2M1MDE2MDIxOTdjYzFjNTEyYWMgbGVnYWN5LXRydW5rCiszMDYwMyBlODQxYzg3M2E5MzcwM2NmNDZhMzU0NDNjMzQ0YWE1M2M5YWM4YjEzIGxlZ2FjeS10cnVuaworMzA2MDQgMjdlOWMzY2Q1OGFmZDMzMmYzOTNhNGZjYTViYTI0MmIwZGFhOTQxMiBsZWdhY3ktdHJ1bmsKKzMwNjA1IDZjNGJkNDg3ZmQyNjBiZDkzZGEwYWE5NDI2ZTZmZmUyMmEzNWMwMDkgbGVnYWN5LXRydW5rCiszMDYwNiBhMTY2NGI3ZGE3NmY3OWMyMmE3OGQyMTBkYjI1Y2VjZmY5MTQ1YTdjIGxlZ2FjeS10cnVuaworMzA2MDcgM2UyM2RlODAyYTVkYWNmZjI2YzZhNjkzMDMxYTU0M2Q4NmQzYjJhOSByMjNhMS1icmFuY2gKKzMwNjA4IGI0MjI1NWM4MjJiMWU1NzFkNWM0ZTAzZDk2YTA2Zjg1YmQ1NWUwYTQgcjIzYTEtYnJhbmNoCiszMDYwOSA4ZDdkZGJiMzMwZDMxY2JjZmE1NTkwZDE1MGU1ZTViOGFhNDQ4NzNhIHIyM2ExLWJyYW5jaAorMzA2MTAgNWFiNGI2NDhhNGNmNDdkZmMzMmExOTBiNjg1YjRkNGZlYjhmMzNjZCByMjNhMS1icmFuY2gKKzMwNjExIDk2YThlZmQ5MTk0OGMxZWFjMzU4ZDczZjY3ZjAyODIzZTkwYzlhY2UgcjIzYTEtYnJhbmNoCiszMDYxMiAzM2I0NjEwYTg5MjI1M2MzYjZlYTRjNmYwMzU3YmJkOWMxYzkwMjBmIHIyM2ExLWJyYW5jaAorMzA2MTMgZjlhNWVkMDkyNjYwMDYxMDA4Y2RkZDNlOTFmNGFhMDFkMzU2NTJjOSBsZWdhY3ktdHJ1bmsKKzMwNjE0IGExNmJjNjRmMTE0NWI0NDhmNWUyMjlhMDc2Y2IzMmYwNTNkZmMzMTAgbGVnYWN5LXRydW5rCiszMDYxNSA4MjI2NjU4YTYzYmIyZTNjNTA2MWQ4MzMzMjFmMmEwZjFiOWQ4NzE5IGxlZ2FjeS10cnVuaworMzA2MTYgNmQ3ZGFhNTMyOWM2YWNhZWM5NTYzYmQ2ZGI5NWIxYmYxM2VkY2UxNyBsZWdhY3ktdHJ1bmsKKzMwNjE3IDY5MzMxZmFjNGVmMjViMGQxMDgwMTcwMDY4MzAxMTczY2RkZTk5YWEgbGVnYWN5LXRydW5rCiszMDYxOCA0MzA2YzY2NWY4NTdjY2U4OTYwNjIzMDg0MDc1ZGIxMWMxNzc4OTFhIGxlZ2FjeS10cnVuaworMzA2MTkgMjQ0M2M1NTdjYmMzZDNjOTAwNDA4ZThkMzBiNTNlNTVkNGFjNjJhMiBsZWdhY3ktdHJ1bmsKKzMwNjIwIDgyZWFjMzFlNmUyZGM5OTc2ZDM1ZDU2OTI0Zjk5NmIxOGQ2Yjk3MmEgbGVnYWN5LXRydW5rCiszMDYyMSBhZWU0M2E0ZjM1NzBkNzIzODQxMGE2MGExODQ0MTI3NGU5ZWZkOWFlIGxlZ2FjeS10cnVuaworMzA2MjIgYTBhNmY0ZGQ3MzI4Njg1Njg1Y2ZmNzlmYjNkMGEzOTQ3YmQ0ZGUxZiBsZWdhY3ktdHJ1bmsKKzMwNjIzIGZhYmE2ZTZjODI0ZGY5ZTQ4YmJmNGYyOGFhYzEwMWRjMGMxNWJhN2YgbGVnYWN5LXRydW5rCiszMDYyNCAwNDY0YWNiNWIzZTQ2YjFlNTdiM2I4ZmI1Zjc2ZTJmYjY2MzQ2Nzg3IGxlZ2FjeS10cnVuaworMzA2MjUgNTVkZTJiOTUxODFlOTM5ZjJiZDI3ZWY0MDNkNTdkYmQzNTAzZTE2MiBsZWdhY3ktdHJ1bmsKKzMwNjI2IDAzNjRhYWU1YTVhNDBiYWY4MDdjOTNjZWY1YzQ3NDA3ZjgzY2ViNTYgbGVnYWN5LXRydW5rCiszMDYyNyBlNzE5YWI0NmFkYWJmY2IxYTg3ZDU3N2MxOGIxNjM5ZGI3NmU1M2ZiIGxlZ2FjeS10cnVuaworMzA2MjggZDJmYTFkZGNkZjZkYTZlZGYyYTE0MzY4MWUxZTI5ODc5ZTQ3MGQzNyBsZWdhY3ktdHJ1bmsKKzMwNjI5IGIyZmM0OTQ5NjNiMmVjOTQyNTUyNmU2ZjA3NzY2YWI0YzA3YmY4NTIgbGVnYWN5LXRydW5rCiszMDYzMCA5ZGI0ODgyNjEwZTViODNiYjA2ZGRhOGY0ODIyYjQ1ZDllM2UxOWE3IHJlbGVhc2UyMi1tYWludAorMzA2MzEgYTJmMTdmNGE2YTIyY2ZiOWIzYzRhNThiNGQ1NGMwY2EyOGViMGMyNCBsZWdhY3ktdHJ1bmsKKzMwNjMyIDM3YmViNGQ2MDkyOTgzYmM4M2I4YmI2NTVkYTk1MTQ4ZjdhNjQ3Y2UgbGVnYWN5LXRydW5rCiszMDYzMyBlYjkzNTNiNDNjZDEyYzE3OTJlMzkxOWM5Yjg2MGMyZWQxNWVmMGI1IGxlZ2FjeS10cnVuaworMzA2MzQgYjNjOGQ5YzQ3MmRjOTI2YmJjZTM2MGI0OTA0NGQ5M2FhZDRkYjdjOCBsZWdhY3ktdHJ1bmsKKzMwNjM1IDg2ZTdhMWY3ZjI2NTI3NzA2NjU1ZDhiZDFmYzNkMDBiNjBhYjViYTQgbGVnYWN5LXRydW5rCiszMDYzNiA3ZWM3NzE4OTM0MTAyYTk5YmI2NjMzZTVmNmZkMDUxODkzOThlMmJkIGxlZ2FjeS10cnVuaworMzA2MzcgYzBkNWZlOWEwZjFjM2U0MjM3NjMzNzEwNzBkNmI3ODU2ZGMzZWM1MiBsZWdhY3ktdHJ1bmsKKzMwNjM4IDFiODgxZDVlNGE5MDNlNWM0NjdiZWM1MzA3MWQyODRhZWYyZTQ2MzMgbGVnYWN5LXRydW5rCiszMDYzOSBkMTg1MGEzNmFlNDFmZDlkZjkzYmZhYWI5MDQ3MzhkNzFkZDg5MTQ4IGxlZ2FjeS10cnVuaworMzA2NDAgZTU0ODU1MjU3YTRmOTMwZjMxZDQyMmRhYTlkZDYwYmU1NzU0MGZmNiBsZWdhY3ktdHJ1bmsKKzMwNjQxIGFjYzgwZWFjZTRkYzEzNGUxZTMzMTc5NDI5NWZkNzZmNmE4ZDdhNGEgbGVnYWN5LXRydW5rCiszMDY0MiA0NmE2ZWQ3Y2M0ZmU5NWViODE0MTJhZGMyNjI1NjljMjA3NDZjMTlkIGxlZ2FjeS10cnVuaworMzA2NDMgNDVmMWU2YjEyYTgxM2I0M2IzOTUzMzA0ZTVmM2VmODE0MWMzM2Q3ZSBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMwNjQ0IDA0N2I2ZTE2YWIyZTRkOWY4ZjFkMWE5ZmJhYWM0MTcxMzFlODI4OGQgbGVnYWN5LXRydW5rCiszMDY0NSA2ZGZkYjFjMDMwOGFkMWZlODY0YWVjZjY4Njc4MzJmMTVmNDdhZjI4IGxlZ2FjeS10cnVuaworMzA2NDYgODYxN2MyNTA2YjhlNDU0OWIyZGVjM2JmMDAyMGE3NDNiMzNjNGFiYSBsZWdhY3ktdHJ1bmsKKzMwNjQ3IGU4N2Q1OTBhNWRlMTg3NDdjNzVmYjEwY2U2YzFkMDRmNGQ5M2M4YmYgbGVnYWN5LXRydW5rCiszMDY0OCAyMmQ2NjA0OTRmMjljNGQ3OTFjNDY0OThlNTU3MDdlYWI4MTRmNjZlIGxlZ2FjeS10cnVuaworMzA2NDkgNDliY2ZlY2IyOTYyNzI1NmFlMjg4M2RmMGNjMjI2NTE3MWQyZTc2ZiBsZWdhY3ktdHJ1bmsKKzMwNjUwIDY1N2FlYWZiYmM5YTBjODRmZDY5ODk4MzMxZTZkOWRlZTYzZTc0YTUgbGVnYWN5LXRydW5rCiszMDY1MSBjMjY2M2NhMzFkN2QwZTM4ZGFiMzhlZDc3OGM0YTAwMzI1MzQxNDE1IGxlZ2FjeS10cnVuaworMzA2NTIgM2QyOTYyYjAyNDllNTQ1MWFlMWJmNTgxMzJlNjdhNjAzNzc4M2Y4ZCBsZWdhY3ktdHJ1bmsKKzMwNjUzIDMzMzBhNTA5ZDJiZDgzNWNmZWRjNDAxODAwY2FlODQxNGI3Y2VmODggcmVsZWFzZTIyLW1haW50CiszMDY1NCBhZjhhMzBkZTY2NzI1YTAxYWFhMDMzMDMwOTg2MWYxNTdhMWNjOGM2IGxlZ2FjeS10cnVuaworMzA2NTUgN2JiYjBkZDhkMjMwNjg5N2E0OWE0ZjU1YWM2ZjU0OTVmYjVmZTMwZiBsZWdhY3ktdHJ1bmsKKzMwNjU2IDhlMjFiY2YyMTU4YWM5MTA0N2MxNjM2OWE1NjI3MTE4MWYzZTA2NjggcmVsZWFzZTIyLW1haW50CiszMDY1NyA1ZDRmMzE2ZDg3MWMwZTZjMTViZjgxMmNkZTAxYTBhMjYxNGRiYTM2IHJlbGVhc2UyMi1tYWludAorMzA2NTggODFjZGFiYmQ2M2Q3Y2Q5OTg0NDI4OTI2ZDZkMzQxYTg0NWQ3ZTIyOCBsZWdhY3ktdHJ1bmsKKzMwNjU5IGFjZjFiNTEyMTJjNTlhOWI3ZGRlOWNlZTlkMTJjMDBmNmIxOWI5NWIgbGVnYWN5LXRydW5rCiszMDY2MCBlMjA0ZGZmM2ZjYmY5ZTA0ZDEwY2IzMDcwOTUzZjhlNTFhMWMzMmJjIGxlZ2FjeS10cnVuaworMzA2NjEgOTJlOTIyZTczMjdhZTMyNzM5MzYxZDlkN2Q0Y2I4YWI5ZGQxMGUzNyByZWxlYXNlMjItbWFpbnQKKzMwNjYyIDU3NmUyYjVkOGNmODgyNWE4NTY3ZjI3NmIzNDI3ODkyNTE4ZGE0MWEgbGVnYWN5LXRydW5rCiszMDY2MyAxMzc1YmZjYjY3N2U2MjBlZTEzNWQ1NTdlYzI4NWIwMWQ1YzFiZWIyIHJlbGVhc2UyMi1tYWludAorMzA2NjQgNDc3OTljMjc2NDYxMTdlOTZiMTUxMmIwZjhlZDcwM2VlZjIyYmM1MiByMjNhMS1icmFuY2gKKzMwNjY1IDU2YjhmOTA4ODEzY2IwY2JjNGRiMjhiMzZjZTE5OTBjMzI2M2E2NzcgcjIzYTEtYnJhbmNoCiszMDY2NiA1Y2Y0MTBlNDcyNTE2NjMwNWFiMjU0OWRlNGI1NDFkNWYxYmMzNWMzIHIyM2ExLWJyYW5jaAorMzA2NjcgZTI2NWVmY2JjYmQxNjUyMDcxOWRhMzQzYWQ0NTdlNDQ5M2UwYTdkOCByMjNhMS1icmFuY2gKKzMwNjY4IDIyMjdhZDg2ZDMzYzUyMzgyMzMxMzIyNzE4YzM0MDUzNDhkMWYzNWUgbGVnYWN5LXRydW5rCiszMDY2OSA1ZWQ4MjA2NzBhZjM1YzlkZTc0OTFmODA0YjJhYmY4ZWZlZDExNDIwIGxlZ2FjeS10cnVuaworMzA2NzAgYjk0MzU2MGU1ZjdiNTI1NjcwODRlNWEwNDRjYTllY2M1N2Y2YmFiMiBsZWdhY3ktdHJ1bmsKKzMwNjcxIDI5Zjg5YzcyNTdiZDBjOTgwNmU3Yjc1NjI0NjIzNTVlYjU2NmRiZjYgbGVnYWN5LXRydW5rCiszMDY3MiBlMTgwMDhiNzExYjAyMmZjYjVmMzc3NGExYWYwNzY2Mjg3YzJmOWFhIGxlZ2FjeS10cnVuaworMzA2NzMgYWU4MzhmNzc0ZjZjMWUxZDFmN2ZkODliYWFmNWJkMjgwMTYzYzVmMiBsZWdhY3ktdHJ1bmsKKzMwNjc0IDgwZmNlYWIwNjgzNWU2MTkyOGJlOWJhNGQ3YjU5MDQwMzdjMTc0YjggbGVnYWN5LXRydW5rCiszMDY3NSAzZjRlODBlYmRjYTgzNTRiMGIxZjU4MzA0MjVlNDI5Y2RiNWFjY2ExIGxlZ2FjeS10cnVuaworMzA2NzYgNTg1YTY0NjBmNTc3NmZlYjhmZWJmZmNhYjQ3Yzg0YjcxZGNkNThlZiBsZWdhY3ktdHJ1bmsKKzMwNjc3IGIxZjVmZGJlNjM5NzJmNzkzYmU2NzIyYzQ0OGY5ZjVjNGM3MjZhZjIgbGVnYWN5LXRydW5rCiszMDY3OCBlYjZiMzZiMjZlOGQyYjZhMmZlMDNmMzIyYWI2ZDFhYmVjZGIxMzMxIGxlZ2FjeS10cnVuaworMzA2NzkgMjMyNjAxOTg4ODVhY2YzYjFmOGQ2NWFkZjY1NjU3MGM2ZGFlOTQxOSBsZWdhY3ktdHJ1bmsKKzMwNjgwIGM1ZDAyZDUzNzBkOTM3YmYwMDZjNDZhN2NkZThlZTk0MzA0MjRjYzEgbGVnYWN5LXRydW5rCiszMDY4MSBiNDlhNDBkYjdiNDcyYTI0NWY0MGQwZTgzNTc1YzcxY2I0NzU2ZDk5IGxlZ2FjeS10cnVuaworMzA2ODIgOTEwZTc2ZGQwNGRhZjY1ZWFjMTY2ZTk2ZGMzOGE3ZTgyN2RkZGY5NyBsZWdhY3ktdHJ1bmsKKzMwNjgzIDczNGViZDQ3YmMyYTlkNDMwMzYxM2YyYWVlZmU5MDc3ODhkNjlhZjAgbGVnYWN5LXRydW5rCiszMDY4NCAyZjkzYzIzMWVhZTBlYThjY2NjOTE4MjBiMmYyZDhlMTk3MzIzODFjIGxlZ2FjeS10cnVuaworMzA2ODUgZWY0M2RlNTYyZmQxYjI1MWJiMTU3YzJiYjY0YzZlMzJjOGY2ODg2MCBsZWdhY3ktdHJ1bmsKKzMwNjg2IDBjYWRjMjkxODBlNjE1Y2YwZDE3ZWUwNjNjNjcxNTc4MDBmOWRkYmYgbGVnYWN5LXRydW5rCiszMDY4NyA3ZjA5YjE5OTJjZTlmYzM1ZWFiZTkyYTFiMzhhZjA4NTMzNmE4YzkxIGxlZ2FjeS10cnVuaworMzA2ODggY2NmNTlmMWFiNDMxMjg2NGYzMGIyOWFlZDBiODJlYTA2NmE2YWU5ZiBsZWdhY3ktdHJ1bmsKKzMwNjg5IDBiZDA3MzkxZDkyMWJjYzE1MDY0MTZkYTM0MmI4ZjIyMzFjMDgzZmMgbGVnYWN5LXRydW5rCiszMDY5MCBhZGY0YWIzZWFhNjIxYzQ0MWZhNzdiMmIyZDU3ZmEzYzdhNTczMjFlIGxlZ2FjeS10cnVuaworMzA2OTEgNGI4OWQ3NmZiMjA1YWMwZGQzMzQyNjZiNzQxNDQyMDUyMGNjZmI4MyBsZWdhY3ktdHJ1bmsKKzMwNjkyIGQ1ZDEyZWEzYTU4MDlmZWEyM2M4ZGQ3NWNlZTFkNGI3NTkyMTcxZmEgbGVnYWN5LXRydW5rCiszMDY5MyBiOWY1YmVlOGVjMThlOGZmMDRjOTgyMGQzOWU3NGMwNDI2N2M0YjhiIHJlbGVhc2UyMi1tYWludAorMzA2OTQgMGE5Nzk2YTY0NjhlZjEzZjIzMTU2NmMzMWJiOGFjMjQ4YjY4MDVkOSBsZWdhY3ktdHJ1bmsKKzMwNjk1IDQ3YjEzNGJiNTFjMzAyZDhlYTJlZDAxNDZkNjRjNzI3MzI4NDczNDEgbGVnYWN5LXRydW5rCiszMDY5NiAzMThhYmE5NGMxZTdiMWVjZWQ5NGNmZDM4NDQ2YzNkNTBiZmEyZTY0IGxlZ2FjeS10cnVuaworMzA2OTcgOTI1YTdiMWY5M2VlMDBmOGUwNGUyMWZmOGNhZDI2MmRmYjQxMjJjMiBsZWdhY3ktdHJ1bmsKKzMwNjk4IDA3YzZjMmU5OGExY2RlMWNiNTFlZmYxNmJiNWZjMzlmYTA3NDM1YWUgbGVnYWN5LXRydW5rCiszMDY5OSA2ZmU0OWRiZjAzZmQ0NmZiZjYzNjZlOGVkNWRlYmQ1MGJlODI0MDcxIHJlbGVhc2UyMS1tYWludAorMzA3MDAgYTBlMGNhYjVjOTI3ZmMxYWY5MmVmMGMxYjUxNmJmY2E2OWJjZmU0YiByZWxlYXNlMjEtbWFpbnQKKzMwNzAxIGNkZjFiYTJhYjcxNTI5NDIyNmI4ZTE1YjZhYzgyNWJlMDg2MzdkNTEgcmVsZWFzZTIxLW1haW50CiszMDcwMiA3NzA2YTA2ZjVlNjkyNjk0ZjViYWU3YmZhZjIzNDFlYjA5NjU3MDhkIGxlZ2FjeS10cnVuaworMzA3MDMgMDFkOWZkNTk1Mzc1ZmU1NWRiZDA0ZjhkYjViNDlhYmYxMmYzNjdkNCBsZWdhY3ktdHJ1bmsKKzMwNzA0IDcyODM4M2RjNzM5ZWYwMGYyNTNlZjgyYjkxZTE4M2UwMmI1ZjcyYWQgbGVnYWN5LXRydW5rCiszMDcwNSBjNzk4NjEzYTg3NjU1YmEyNjM1NzgyNzUzZjAzNDY3NzIyZTNjNWIxIGxlZ2FjeS10cnVuaworMzA3MDYgMDRhYTg2ZDQ5ZDkzZTU1NjQ5MGJjZDg5MmQ3OTU5YWE4NzBhYjg3ZSBsZWdhY3ktdHJ1bmsKKzMwNzA3IGZjNGJiMzgyMDQ0OWUzZjBmYWRlOWJiZGU1NjU0NGRkMWMwNDliNzAgbGVnYWN5LXRydW5rCiszMDcwOCBiY2FlMmE3MGUxZWM3YzlmODQ0MDMxMzgwNTI3YTEzMGI4OGVjODY0IGxlZ2FjeS10cnVuaworMzA3MDkgN2VhNDQzMDUyMmRmNDkzYTA4NGRkN2NiYTg5ZjFlN2MzNzI1YjkwZiBsZWdhY3ktdHJ1bmsKKzMwNzEwIGQwM2MxMzAzNDU2MGEzNjJlNGQ4ZDE5MjlkOGRjZmFkYTk2ZGVjNzggbGVnYWN5LXRydW5rCiszMDcxMSBiMjljZmFkNDQwOTdiNThjMmIxNjJhYWRiMWQ4ZTc1ODRlNWJlNzQyIGxlZ2FjeS10cnVuaworMzA3MTIgYjM0NjI3MjU0NGExODJjMTZiZDNlZDAxZDRmYWFkMzViYmQwY2Y0OSBsZWdhY3ktdHJ1bmsKKzMwNzEzIDkzNDczMjc4NzQxOTRiZjhhZTQ2NGJhOWI0OTRjYzk5MGNkMWFlNmQgbGVnYWN5LXRydW5rCiszMDcxNCA1OTMwOWQ0YmY4NDFiNjkyOTYxNzc3NzBiZmVhNmRmOTE5Yjc4ZDQ0IGxlZ2FjeS10cnVuaworMzA3MTUgNjVkYzAxMTBhNzM1YzEwMTI4ZWVmMjA5YzBkMTRmNjk1OGI5ZWZhYyBsZWdhY3ktdHJ1bmsKKzMwNzE2IGQ0YzhhZjkxMTlkMTkxOGZmNjZmNzk1N2IwMjY3YmRkM2ZiYjAwYTUgbGVnYWN5LXRydW5rCiszMDcxNyBhNTFlNWFlMjk4ODJiY2IxYmY1ZTM0MmEyYzNiZGUyY2Y4YmQwNjM2IGxlZ2FjeS10cnVuaworMzA3MTggYjg3MjQzNDFiYjFhYmMzMmY5ZmY2MTVkOGYwMWQzZjg3ZWZkNWYyMyBsZWdhY3ktdHJ1bmsKKzMwNzE5IDc3YjcwYTg4ODRjYjIzYjg2ZmQwMTJlNDFhMDEyOGQyN2RhM2I1NzYgbGVnYWN5LXRydW5rCiszMDcyMCA5MjgxMmY2Y2Q2M2I1YjJjMmJiZDg1NWVjN2JmMDcwZDI1MGZkZTI5IGxlZ2FjeS10cnVuaworMzA3MjEgZGM2ZmI4YTZhZjNkZWYyNzgwZWZmNWU2OTQ4MDM4MjY1NjQzNDAwYiBsZWdhY3ktdHJ1bmsKKzMwNzIyIGFlMTIyNjc1ZGYxZTkwY2U5NjQxNDM2NTY0MmFmN2I0NDdlOTQ5MmYgbGVnYWN5LXRydW5rCiszMDcyMyA4MWRhNzNiOTNjM2M2MmYzYzIyNjc2OGQ3YTJlZTJjNjczZGMxNGIxIGxlZ2FjeS10cnVuaworMzA3MjQgMGEwMzVmOTI5OWE5NzlmNzg5YzFiZTExNmY1NzliMDU2ZTEyNjdhNiBsZWdhY3ktdHJ1bmsKKzMwNzI1IDNjOGQ5MWYzZjRjNjdkZTc4MzE3YTU3NGYzOTFhZTZkYjI2NDc4ZGMgbGVnYWN5LXRydW5rCiszMDcyNiA0ZjE5Yzg1MjRmMWFjN2U0ZTdhY2I0NDE2OWQ3ODkxZDE0NzE5ZTUwIGxlZ2FjeS10cnVuaworMzA3MjcgNmFlMzYxZGY4NzBlZWEzMThmN2JiMDBkYmE0ZDQ5ZmEyODIxZjMyYiByZWxlYXNlMjItbWFpbnQKKzMwNzI4IGIwZDUyODMyN2M0YzFhNmNmNmNjNTM5ZTljZmU0NjZlOGM2NWE3NzAgbGVnYWN5LXRydW5rCiszMDcyOSA4MGVhMDQ4ZmMwZDczNWYxZmRhYTkwYWVmYzdhMDA2YjY0MmUwZGJkIGxlZ2FjeS10cnVuaworMzA3MzAgNDI4ZWVjZGZkNTdmY2FjZTJlN2QxOTFlYTg2OTBlNjMwMThjMzQ5NCBsZWdhY3ktdHJ1bmsKKzMwNzMxIGE0OTRmNWE4NjM5ZjI5MDQ1ZmI3OTcwNzVjMDRiNmMxMjU1YzRlZWUgbGVnYWN5LXRydW5rCiszMDczMiA0YTYyYTk0MWYzYjEyYTMwMzVhY2I3MTliYzVkOGQwOWRjNTQ5OTVmIGxlZ2FjeS10cnVuaworMzA3MzMgZGUyYzk1ZDgxOTg0MTYwZjU5ZWYwMDFhYjVjYWEwMGFjM2UxMDA5NCByZWxlYXNlMjItbWFpbnQKKzMwNzM0IGY5Njc3MmUzMWUyMzNmNzc3ZWQyMWViYjczOGI4Y2Q1ZDM5OTQwNDkgcmVsZWFzZTIyLW1haW50CiszMDczNSAzYjNjZTk2NGFkYzljMTNmMmZhNTY5OGEyYTdmNjc0ZjJlMTVjM2RlIHJlbGVhc2UyMi1tYWludAorMzA3MzYgN2E0ZDc4MjcxNWY0Yzc2NjI0OTRjZTZjY2ZkOGQyMjNlMWI0MjM1ZCByZWxlYXNlMjItbWFpbnQKKzMwNzM3IDEwYjdlNjAyNDViNTY5NDAxYjk2MzYyN2ViNWY4ZDA3MmI4NDc2NjMgbGVnYWN5LXRydW5rCiszMDczOCAzOGQyMjM4Yzc5NWU0NmU5YjE2ZTdhYjM5OTJmMjRjNDAxNTQ1MjQyIGxlZ2FjeS10cnVuaworMzA3MzkgMmVkNTE4YWIyZmQyMGEyZDIyMjk0MDQ0NjQ5YTMxNmYxZDIyNTBlMSBsZWdhY3ktdHJ1bmsKKzMwNzQwIDE3ODc4ZDQ1OGNmMTJmM2RmZDEzZTJhMTA0OTBhZmY3NzhhZWQ3YTQgcmVsZWFzZTIyLW1haW50CiszMDc0MSAxMTE5ZDU4MjYwOWExNGYyNGUwZjRhN2U2ZjIyMDU1MDM4YzUyYzJmIGxlZ2FjeS10cnVuaworMzA3NDIgMjA5ZDY3MjEyODgzZDAxMGMzNmM2ZTU2ZjFkMjczMWEwNmM5MGNjZSByZWxlYXNlMjItbWFpbnQKKzMwNzQzIDIwMWNkZWIzMDVmNjRhMDk0MDNmMmZlZDQ2YzkyOWU2ZTExNmM0MDQgbGVnYWN5LXRydW5rCiszMDc0NCA0MjBlYTIwNWYwMjQxZWU0NTE5NTQwMjZjODJhNGY1ZWFhNTA3ZjU1IGxlZ2FjeS10cnVuaworMzA3NDUgNWQ0MmRiYTQ5ZmU1MDcyNzViOTgwYjRkMWRjNTlkNDAyODI3NjY3MiBsZWdhY3ktdHJ1bmsKKzMwNzQ2IGViZWIwMGI4ZDUwMmEwYzk5NTNiNDFhZDkwY2Y4ODJlYmVhNzdlMGUgcmVsZWFzZTIyLW1haW50CiszMDc0NyAxMWIzNDU2NGEwZmQwNTgyMWRhNDIyMDU2Yzk4MDE5MmIzNDhkZWJjIGxlZ2FjeS10cnVuaworMzA3NDggM2EzM2JkMGY5YzRiZmRjNzU0ZWM4ZmUxZTEzNTIzYzljODA4ZGFiNSBsZWdhY3ktdHJ1bmsKKzMwNzQ5IGYzNGMyODY1MGYxNGUxOGU1ZmYyNTM1Y2M4NDExNWUyZDk5NWQzMWEgbGVnYWN5LXRydW5rCiszMDc1MCA3ZjM3ZWQ1NDI5MjAwM2VhOGYwY2M0OGZkZGUzYWMzNDU1Y2ZjYzYxIGxlZ2FjeS10cnVuaworMzA3NTEgMThmMDcyZDE0MGE5YzdmZTc1ZWU0YjE0NTE0YzZjNzE5OTJmMmQ3YyByZWxlYXNlMjItbWFpbnQKKzMwNzUyIGZkM2IwNzExYjI1ZmIwNTVmYWYwYmJkODM4Mjc3NWNkODJjNWY0MWEgcmVsZWFzZTIyLW1haW50CiszMDc1MyBlZWJjNGZkYWM1OTRlNjkyY2YxZjA4MDBlM2ExZDQ4OGFhNTg3YjNiIHJlbGVhc2UyMi1tYWludAorMzA3NTQgZTlmNDViOGVmZDZiNGQ3Yzg3NmI0MGU1YmYyNGE2NmM2NWZhMzgyZCBsZWdhY3ktdHJ1bmsKKzMwNzU1IDhiZDZiMmFlMjg3NGIwNzlmYjBlNWFmN2JjOTUxZjUxMDFiZWY1ZmMgcmVsZWFzZTIyLW1haW50CiszMDc1NiAzZWRlOTBkNmUxY2YxMjVhMDIwM2I0OWVmM2M3NDk4NDhkOGYxNzVhIGxlZ2FjeS10cnVuaworMzA3NTcgODRhOGU3ZDFkYWE5NzY5ODE1ZDk5ZDZkM2VlNzk1ODUyOWI3NjVjNiByZWxlYXNlMjItbWFpbnQKKzMwNzU4IDNiZmRiYzNkZmJjZTkyOGM5MTcxZGM0OGE4NzE3OGY1NGYxOTJiNDEgbGVnYWN5LXRydW5rCiszMDc1OSAwYTZiODgxOTBiOGIxZDNiZWY1MmE5Y2U0NzM1MjdlY2U1YThhOWUyIHJlbGVhc2UyMi1tYWludAorMzA3NjAgZjU5ZDgwYzdlMWJiNGQxOGY5MDAwZDUwMWQwMzFmYmM5ZGZjZjRlOCBsZWdhY3ktdHJ1bmsKKzMwNzYxIGY5NWU5ZjNjOWZlYTc4ZDRkNzE3ZWRhMDNkMWY1MGQ4NjQ4NzQ2MTAgbGVnYWN5LXRydW5rCiszMDc2MiBhNzcwNmQ0YzY5MGMyMGFlNjFlZTgxNmQyZDkzZDQ1YTRmZDA4YmYxIGxlZ2FjeS10cnVuaworMzA3NjMgM2FmYmQ1NWZiMThmYTRhYjEzYTM4Y2YxYjE0ZDIxNTE2M2U3NzQ0YSBsZWdhY3ktdHJ1bmsKKzMwNzY0IGIzZjEwNTM5OWQyMjgxMWRiYTVkMTk5YTk1NjYwYzQ2NjFmNDQ3MjQgbGVnYWN5LXRydW5rCiszMDc2NSBkM2FiNTMyYjNiNmQ2ZWJiMjBhNzFmNmEyNWYyY2M5NWYxNjc1ZjFlIGxlZ2FjeS10cnVuaworMzA3NjYgYTU2YzNjNTYyODhiOWZlYjI3ZGI1YmE5MDlkZDQ1MmI1NzBkOGQ4OCBsZWdhY3ktdHJ1bmsKKzMwNzY3IDVkZGI5MGY4MTY5YTU4OTM5YWU0NDNiMDc3MjRiN2JkYWIwMmI4MmMgbGVnYWN5LXRydW5rCiszMDc2OCBjNDE1MGY3ZjZhNjk2MTUyNGFlODg4NzIwNzcwMmUyYjc3NTdiNGYxIGxlZ2FjeS10cnVuaworMzA3NjkgN2MzNGU1YmYyZTIyYjFmODU4OWY4Mjc1ZWZlZWVjZWUzMmMxM2YyYiBsZWdhY3ktdHJ1bmsKKzMwNzcwIDE2YTg3Njc0NjI4NTBjNzQ2ZDAyNWMzOGZhYmRkOGFjMGY0NzgyZmQgbGVnYWN5LXRydW5rCiszMDc3MSBjOTk0OTNhYmEwOThkMjUzYzJkYjc4ZDE5NmExNjQ1OTFlYTdmNmUwIGxlZ2FjeS10cnVuaworMzA3NzIgNDBjZDc0NzgyNjAwODExYWQwMjg3ZTc4YzRkODM3MjdmNjVkMTdiYiBsZWdhY3ktdHJ1bmsKKzMwNzczIDFjYTdiMmQ2OTI0MjVkYzY3Yjg0MDkzMzZjYWE1ZDM4YmE0ZjQ0ZmYgbGVnYWN5LXRydW5rCiszMDc3NCAyNjE1NDc3MDM0NDNkYWI0NTQwOTdiNTBkNTE1NTFjMDUyNzRkNmUzIGxlZ2FjeS10cnVuaworMzA3NzUgYmFmZjU2YWRmYmMzMzgyNDhmOTVlYmE3OWY1Nzc1YTQxZWM1ZGNmNiBsZWdhY3ktdHJ1bmsKKzMwNzc2IGFlODliNTU2MDUwYWUwNTcyZjRjNmRlYmQ1NzI5MDA0OTg3M2NhOTEgbGVnYWN5LXRydW5rCiszMDc3NyAzZmJmZmQ3MzZkOWQwNGMyMjA4ODk2ZWQ0NzY5MjNkNmQzZjliYzZhIGxlZ2FjeS10cnVuaworMzA3NzggZThjMWE5NTQyZjY2YTY2OGQ3OGY3ZDJmZmJlNzhjZWIzZjg4NzUxYiBsZWdhY3ktdHJ1bmsKKzMwNzc5IGZhZjI1NmE1OWVjZWIyOTM3NzdmMjc2NDcyNDVlNTRiZTM0NDAzZWEgbGVnYWN5LXRydW5rCiszMDc4MCA0Y2RiNTAxYWI2YTIxNzdhZjNiZGEwODgyMjc2ODU2ZDhkNTdmNDVjIGxlZ2FjeS10cnVuaworMzA3ODEgZjA1NzY0ZDcwODJjYzFhMGExYTJjN2ZiNjE3MmY5MTNiOTViMjkzMCBsZWdhY3ktdHJ1bmsKKzMwNzgyIDc3NDI4ZTgzNWQ2N2VkODA2MzQwOGE0ZjE5ZWNiNTFkOGY5N2NlMzYgbGVnYWN5LXRydW5rCiszMDc4MyA3YWNmNTc0NDBmNGUwOWZlNWJlZmNjYTA4NTU5YzlkYzNkNWU0OGU0IGxlZ2FjeS10cnVuaworMzA3ODQgOGQwZTA3YzI3MGVmOWIzMTE0Nzc0Y2FiZWYzN2UwNTU4OGJkOTk0NyBsZWdhY3ktdHJ1bmsKKzMwNzg1IGFmODExMTcyNzE3ZDBhMzEwMTRlZWRmYWU1NDRkNDdhYjY1NjRhMjEgbGVnYWN5LXRydW5rCiszMDc4NiBhOWRkYWRmNzg5ZWFiOGY2OThkYTM3M2U3YzcyOWE3M2U2MjRmMzRkIGxlZ2FjeS10cnVuaworMzA3ODcgYjc0NDUwOGQ1YjEyNjQ2YWYyMGJjZWMyNTE0YWMzYjExM2VlOWI3YSBsZWdhY3ktdHJ1bmsKKzMwNzg4IGJlM2QxYjdlNjJkYzI2OWNiYjg0N2JkYjQxY2UxMjg3YjQxNGI5YjcgbGVnYWN5LXRydW5rCiszMDc4OSBkYmU0ZjU3ZThiYjI5NTZjYzk4YWU5ZjIxOTczMTIyOTAzNWM0ZjQyIGxlZ2FjeS10cnVuaworMzA3OTAgMzkyZmVlY2QyZjFjNzFlZDhiNzNjYzkyNzFlMDgxNmVkZWUyOGQzYiBsZWdhY3ktdHJ1bmsKKzMwNzkxIDkxZDY3OGE5NGM3MzYzZjUwZGU5ZDlmNjczMDJkYzAwNGYyY2IxYzggbGVnYWN5LXRydW5rCiszMDc5MiA2NGQzZmU5MDRhMGFmOGQ2NzRiMjRlYWUwNDVkZDVkZjM5MzdhY2JhIGxlZ2FjeS10cnVuaworMzA3OTMgY2RhNWFiNjI1Nzc0ZmFkZDUyMDI5Nzk0NWQ5NGUyMmE2NjI2NWNlYyBsZWdhY3ktdHJ1bmsKKzMwNzk0IGQyYWU1YWZmZGUxNGU3OTY0MDEyYTQ2MTc5MGY2N2JjYTZmY2E5NmYgbGVnYWN5LXRydW5rCiszMDc5NSBiZWRiNzVkOTBlMDNjMzk5ZjJlMDE2ZjYxODJlYTM3YWRhYzAzMTM3IGxlZ2FjeS10cnVuaworMzA3OTYgN2ZkZDVkNjJjNjE1YWYyMGFmNjRiOTgxMDJhNWMxOTg4ZmViZTg1ZCBic2RkYi1ic2RkYjMtc2NoaXpvLWJyYW5jaAorMzA3OTcgOWRhNDNjZGU4YTE2NjFlNjhjNDU1ZmFhZThlNDc2ZmU1YjQyYWM4OCBsZWdhY3ktdHJ1bmsKKzMwNzk4IGNiZjM1NWYyOGNhOWY2ODkyODc4OTkxNDljOWEzMzQxMGM3ZTVlMGUgbGVnYWN5LXRydW5rCiszMDc5OSBjODIzNGUyNjExNWM2NmQ0YWM5YjQ4YTJiZWM2ZTYxNjRlMmI2YmFmIGxlZ2FjeS10cnVuaworMzA4MDAgOWRlMDY0YzdhMjQ3ZjExZmMzOGUwNGJjZjlhNzQyMTAwMmVlNTE4MSBsZWdhY3ktdHJ1bmsKKzMwODAxIDg3YjY2YjZmZjVlNzZmNzcwMmVhM2ViNzQ1NTA3M2UzZTU0NGRmNzQgbGVnYWN5LXRydW5rCiszMDgwMiA1YTA1MDIwMGY3MzY1ODZjNWY4ZDUwY2RkZDc3ZmZiZjdjOWU4ODY1IGxlZ2FjeS10cnVuaworMzA4MDMgYzZmNDliNzk3OTYzZWNiZmY5ODVhYTRiZThjN2RhYWVkNmM0MzdlYiBsZWdhY3ktdHJ1bmsKKzMwODA0IDg2Njc1NmY2NzBmZmQ1ODQ1M2QxNWFjZTAwYTdiNGE4NzVkOGYxNTggbGVnYWN5LXRydW5rCiszMDgwNSBkZjI3NTRhY2E3MTcwNGY0YmE0N2U4NDQzYWFjZTQ1YzVmY2U2MmRmIGxlZ2FjeS10cnVuaworMzA4MDYgNDBlNWViOWUwNGUwZTgzNWFiNWNlNWY2NWVjNWMyMTA5ZWI5MDFhMCBsZWdhY3ktdHJ1bmsKKzMwODA3IDA0ZTU2MTBjNWVmZTk3YWY0NThmY2RkNDY2MWVjN2Q3NDY1ZmE1ZWIgbGVnYWN5LXRydW5rCiszMDgwOCA4OGZhYTk4NWQ5OGMzZjM2NjNhMDczNjc2ZDUwM2NmYmMwOWJlODI1IGxlZ2FjeS10cnVuaworMzA4MDkgOTdmNDk0YmY3MzE5MGFkOWJkMDZiMmJiYWU1YmQ4NjcxYjdhNzU2NCBsZWdhY3ktdHJ1bmsKKzMwODEwIDc1ZGE0OTk3NzU3MWE0ZWFiOWExOTJiMDJhNmEyYWI4ZjEzMTNlYjYgbGVnYWN5LXRydW5rCiszMDgxMSBlODNhNDJhOTBkZjE2Mzk2YTdhZmJmODc1ZWQ0MGU4YTVmZDdlOGUzIGxlZ2FjeS10cnVuaworMzA4MTIgNzAzOTM3NTIyNmE3ZjI2MjdhZjBiNTU0NThkYWJhMDEyNTJlNzRiOSBsZWdhY3ktdHJ1bmsKKzMwODEzIGQ3ZjgwMDI4MzAxZGViNzRhMDFmNTg1NTEyNzNmZGQ0MTFkNTkzZTcgbGVnYWN5LXRydW5rCiszMDgxNCBiZmMxNDBjN2UzZDA2NTFmMDNhMzkzOWFlYjEyZGVkOWY0OWYzOGE3IGxlZ2FjeS10cnVuaworMzA4MTUgNzA1NWY0YzFlZGNjMzQxZTdkNGM0NTRkNmExOTRjNjg1MDA3YzI4YiBsZWdhY3ktdHJ1bmsKKzMwODE2IGI4Mzg3NzMwZGQ4ZmY0MTVlNzkyN2Y2ZmEyZDQ0MzgzYTg4MDc2MDkgbGVnYWN5LXRydW5rCiszMDgxNyBjMWM0NTQ3NWYxNzBlNDBlN2U5MmNkZjUyMzlmMDY4N2U4MzNkYzIzIGxlZ2FjeS10cnVuaworMzA4MTggODE1NTFhZGYxMmY2ZDFlY2YyNDVjODk5ODZkZDc3YTczNDZjZThhZSBsZWdhY3ktdHJ1bmsKKzMwODE5IDA1ZmY5MDRlZTRlMDdiNmM2NmNmNzJhNThlMjA4ZGNlNzQ0N2JjZmEgcmVsZWFzZTIyLW1haW50CiszMDgyMCA0ZmE5YWQ4NWMzYjE1ZGMyZGY4YmU4NjU0NWFiN2M5Zjc1NWI4MDNkIHJlbGVhc2UyMi1tYWludAorMzA4MjEgMTM2OWQyNGJjODYxZGNhMjY4NzE1OGRlOWQwMDE0MDVlMzY4MmI5MCBsZWdhY3ktdHJ1bmsKKzMwODIyIDVhOTc1ZTgyZDcwZmI1YmMwNDljZDQ0NjIwZDhlZDdhYWQ1OTQxZjIgbGVnYWN5LXRydW5rCiszMDgyMyBkZTgwMTczM2VjMTg4NzViYzJjYjZkOGQzNjI2N2QxNTI1ODkxMDU4IHJlbGVhc2UyMi1tYWludAorMzA4MjQgMGY4ZDE4OTMxMGI0NWE5ZmRiNjQ1NDNmNTRlOGNlZTkyODBhZjNmZSBsZWdhY3ktdHJ1bmsKKzMwODI1IGE1NTUyMzBiZTNjYjAwNzNiM2U4MmRhY2FiMGJiNzg1N2ZiNTg5YTggbGVnYWN5LXRydW5rCiszMDgyNiA3MDQ2MzlkMjBhNmNkNjI1YmMwYTMxMmI2N2Y1ZWI0ZTQxNDg4NzhiIGxlZ2FjeS10cnVuaworMzA4MjcgZWE3NjgwZWFmOTM3ZGY3MzgyNjQyNTJkNTU2MDczNmQwMGYwYmY3NSBsZWdhY3ktdHJ1bmsKKzMwODI4IGRhZGQxNzhiNjVmYTU2OGFlMGRhNmM4NWUwNzhhMGQyOTg1OGFlMzEgbGVnYWN5LXRydW5rCiszMDgyOSBmZjE3OWJhZGUzZjBkYzM5ZTRiZDBhOTljZTVjMzJkOWRhMzg3ZmU4IGxlZ2FjeS10cnVuaworMzA4MzAgMTg1ODQ3MTQwY2E1ZGJkZGExMWZmOGYyYjFlMzI2M2Q4YzFhZWNjMiByZWxlYXNlMjItbWFpbnQKKzMwODMxIGEyZjg0ZDI4MzVmYWY4MjVkOGUwM2U0YzYxZDQyYTQ3MmI0OWUwMTIgbGVnYWN5LXRydW5rCiszMDgzMiBlYWE2MTJhNDFkZDBkNjllYjBkOWYwOTU3MmJhMzBhZDViZDQ2NGUwIGxlZ2FjeS10cnVuaworMzA4MzMgOTIyMDA5OGYwMzI3ZTliMmMwMTMwYzQ4MGU4N2VmMzY4ZjUzODk3YyBsZWdhY3ktdHJ1bmsKKzMwODM0IGM2ODI5MDc5MGQ1M2Q2ZTAxZGMzMjI3MGRkNDA5NGM4MTEyZmM2Y2EgbGVnYWN5LXRydW5rCiszMDgzNSBjZGFiMmI3NGYzMDdlYWQ2Mzc5NzU2OGU1OTU0M2Y2M2IzOTFkNTgwIGxlZ2FjeS10cnVuaworMzA4MzYgZWZhMmY4YWJiMDJjOWE2MTViMDA0Yjg5MWYzNGU5NDMyOWNmOGNkYSBsZWdhY3ktdHJ1bmsKKzMwODM3IDNjNzAyM2M5ZThlMjY3MWJkY2RkNzY0YmQ5NTY4OTNjNmJjZTc3M2YgbGVnYWN5LXRydW5rCiszMDgzOCBkOTY2YmI1NGIzZGUwZDhlNWQ3NTA0MWY4MTE1ZjJmNDA5OTJmNDg1IGxlZ2FjeS10cnVuaworMzA4MzkgNzA2N2QzNmMzY2Y0NzAxOTU2MTA3NWNjYjU1NzA5MzFhNTVkZjg1YSBsZWdhY3ktdHJ1bmsKKzMwODQwIDc1ZjM4YzQxNWU3ZDRkMDdjODY0YmIwMDEyYmZlYWFkOGI5YzI4ZGMgbGVnYWN5LXRydW5rCiszMDg0MSAxNTYyYzFlMTBiNDk3ZGE5NzE0OGNlZjk2YzIwZDZjYWM5MzA2OWQ5IGxlZ2FjeS10cnVuaworMzA4NDIgMjk5ZWYyZGFiYjUyYzY2MjRjMDM3ZmIzNjMzN2Y5Y2ZkMjE1NjYxMiBsZWdhY3ktdHJ1bmsKKzMwODQzIDg4YmYxMDMxMzU4NGRlNDE2N2YzODY3NDA1OGY5NTc0NjhlNTAyODIgbGVnYWN5LXRydW5rCiszMDg0NCAxYjYyMjlhZGIzZGY5ZGYwMmM0NGE2OWYxZWM0MjlhZTM1YmM0MTBjIGxlZ2FjeS10cnVuaworMzA4NDUgZDVhMzM4NmM3NmY0OTQ1NmNiNTA1YjFmOTgyNzIwODA3ZTI1NmI4NCBsZWdhY3ktdHJ1bmsKKzMwODQ2IGM0MDQ4NzljZjk5OWIwMzMwNWUxMWIxOWFkNDUwZjVkNTc3NDI0MGEgbGVnYWN5LXRydW5rCiszMDg0NyA0NGUzNTJkN2Q1MmZmYmI0NGZhZDEwZDcyMWFmMjUwMTc2YzU1YmZkIGxlZ2FjeS10cnVuaworMzA4NDggZTJkYTBkZjM2MTNkMWNhM2FjNGFiMzg4NzJhMjAzODYxZDU1OTliZCBsZWdhY3ktdHJ1bmsKKzMwODQ5IDY4MzMzOWI4NTJhYmQ0OWI5YmRhNmI2NWJmYTVkYjA3MjRiZjI3YmMgbGVnYWN5LXRydW5rCiszMDg1MCA4NzA0NWE4ZWM1NDcxNzkxNjAzMDcxNzVlOTlhOGYwNDkxYzUzMDU1IGxlZ2FjeS10cnVuaworMzA4NTEgNmNkYTdjNjEyMTU0YTc2ODY4NTc4YzlkZGE5NTJjNTZmNTQyYzIwNCBsZWdhY3ktdHJ1bmsKKzMwODUyIGEwYTkxNDcyM2M0ODBiNzEyNmMxOTlkNmM0MmNiMjgwYTM2ZWQ3ZDMgbGVnYWN5LXRydW5rCiszMDg1MyA1OTdhYTk5NjZlYzZiYjMzMzA3N2E4NzY0Y2YwOGUxZjcyMTVjNDg0IGxlZ2FjeS10cnVuaworMzA4NTQgZjRjNjk0YTAxNDI1NjgzNWI3Y2NhMGFjNmVkNWY0NTRjZjY2MTc2NCBsZWdhY3ktdHJ1bmsKKzMwODU1IDIyZmI3NmM1MzkyNjc1MTZkZDYxYzY1YWU3MjhjZjVjYjVmYWZhM2MgbGVnYWN5LXRydW5rCiszMDg1NiAyYzY0OWM3YWU4ZjNmMmJmN2M0YWUxZDAwYWM2YTExMjg3ODYyZDBjIGxlZ2FjeS10cnVuaworMzA4NTcgY2JjYTBiY2YxYzMxZTllYWNkOTFkNzE5ZDA4Yjc3NGFiMzdhN2RhNSBsZWdhY3ktdHJ1bmsKKzMwODU4IGI0NzBjYTg0ZmQyYjVlYzk5ZWE2OWQ2YWYxZTliZTUzYzIyODgyYTMgbGVnYWN5LXRydW5rCiszMDg1OSBlODA0NTZhZDE5NWI2OGQ4MDZlYjY2MDZiYjYxZDIxMjQxMDdmYzJhIGxlZ2FjeS10cnVuaworMzA4NjAgZDM0ZWYwMGQ5ZGE4YTA4NjA4NjQ0M2Y3MjVmOGE4NjNkN2M0ZDFhOSBsZWdhY3ktdHJ1bmsKKzMwODYxIDhiNTNiMGNlMDZkNDU4ZTdmNDFhZTYwMWFhMjcyNGM0ZGJjYWYyY2IgbGVnYWN5LXRydW5rCiszMDg2MiBiYTYzZDcxN2M3NWYwMDA0YzBiY2VhYzcxMjRlNWI5YTNiM2NhMjIxIGxlZ2FjeS10cnVuaworMzA4NjMgOWZlMzZhZTJhNGEyYjJhODVmNGJiZGFkOGE0OTUzYmMxNGM2MDIwMiBsZWdhY3ktdHJ1bmsKKzMwODY1IDliZTMxNDlmYmVlNzE3YjQ2M2E4OGFkNDcyOTBhYWY5N2ViZGRmYzUgaWRsZWZvcmstbWVyZ2UtYnJhbmNoCiszMDg2NiA0MTJlNjZlMzUzMGVlN2YwYjY3MTI3NDhmZGQ4MGJiYjlmZjRiNWMyIGxlZ2FjeS10cnVuaworMzA4NjcgNGY1OTk4MWY3ODE3ZGFjMTE1OTA4OTA0MjliMzY0OTdlYWY0NTI3MCBsZWdhY3ktdHJ1bmsKKzMwODY4IDE4MDA2N2MyODgwZmVlNWM0ZDQ2Y2M4MjI0ZGMzNGU5OGQ5ZTE3MTYgbGVnYWN5LXRydW5rCiszMDg2OSAyMDU1ZDAzNzI5NWNmMDk5OGMwYzkwYzNjYWRiZmIxMGUzZjcyMWNiIGxlZ2FjeS10cnVuaworMzA4NzAgMzBkYThjOTZmZDI5ZWYzNjViODhmYzk2YWUyOTUwNGMwOGJiYTczZSBsZWdhY3ktdHJ1bmsKKzMwODcxIDVhY2Y2OTY3ZDZkZDM3MTQ4NjBkYzNkYzk2ZjE5MGMwMzlmOGFlOTkgbGVnYWN5LXRydW5rCiszMDg3MiBkZGI1MmY1NjczZGI1YTg1M2U3MjVmZWI2NWY3OGVjMWIxODlkZTg0IGxlZ2FjeS10cnVuaworMzA4NzMgMjI5OTJmYTUxODMxMGZlZjE4YTg1YzE4OTk0MDgxNjJkMzEyNjhiOSBsZWdhY3ktdHJ1bmsKKzMwODc0IGJiZjE0MTg1YmYxZTdlNmI2ZDI5MWUxMTg0YWM1ODhiZTQxMzIxMTYgbGVnYWN5LXRydW5rCiszMDg3NSA0MDY3N2ZlODUwM2QzMGUwZTFjMWI4ZWVlNTJlMWFkMGRlYjkxN2M1IGxlZ2FjeS10cnVuaworMzA4NzYgMjdhZWRjZjQ2YmNjOTJmZjNmMTc5NGRkY2I4MTE3OThlYjAzMjczZiBsZWdhY3ktdHJ1bmsKKzMwODc3IDQyOGM4YTQyMzA0M2VhZGQzNjViNmE4NjMzYTY5YjNhNGUzNTYyMDEgbGVnYWN5LXRydW5rCiszMDg3OCBkYzYxMTYyNzgyNTkzZDhjNzQwZGZlMWQ4ODBiNTMxMzhjYTJlYTI4IGxlZ2FjeS10cnVuaworMzA4NzkgOGRiMmU3NGRkYjBlNWFhNGY0ZjBlY2ZjZWVjOGM4ZjI0NzdiNzA5MyBsZWdhY3ktdHJ1bmsKKzMwODgwIGFmZDFkYzYyZTM1NGRlZTMzYWEzOWNjNDM4YWUyZDhmNTYyOGJhZmIgbGVnYWN5LXRydW5rCiszMDg4MSA1OGJhZDc2OTc3NmU1OTk5ZTRhZDMzMTNmN2UzYTIwMzYyOGQ5ODY0IGxlZ2FjeS10cnVuaworMzA4ODIgMDRlNDU2NTgzMmJkZDM5YzhiNGI2M2E0ZGYxZmZkNDFlOTJhY2YwZCBsZWdhY3ktdHJ1bmsKKzMwODgzIDI3M2IyYjQ5YmZkODY4OTk4NjA0YzRmZTJiNGY2ZjFjYzg2ZDRhMmIgbGVnYWN5LXRydW5rCiszMDg4NCA4OTFlYzRkMjY2ZDE3ODY3ZWIwYzMzYzE4NDg5NjQxYTk1MGU4YTIwIGxlZ2FjeS10cnVuaworMzA4ODUgNGE0OWI1YWE1ZDIxMjcxOGM0MTRmNWUyZjkxN2RjYTYyMTRmMzI3OSBsZWdhY3ktdHJ1bmsKKzMwODg2IGViMWU1MjlmZGZkZjBkNGI5YzJkMjI5MjU4ODZkM2JmZDkzYTA4YzEgbGVnYWN5LXRydW5rCiszMDg4NyBmZGU3OGQ4MGUwOTg5ZDJhMzQwM2FmM2M5NWQ1ZDNkYWQ5M2RiN2ZlIGxlZ2FjeS10cnVuaworMzA4ODggMDBmMjk0YmY4Mjk5ZjYxNzYyMzFlOWY2NTEwOTJjZTNkMmFkY2JkMyBsZWdhY3ktdHJ1bmsKKzMwODg5IDYxNDdiYzE0ZDI3N2I2ZGJkNTZhY2VkZDcwNzFjMGRkNWM3NDg5NDkgbGVnYWN5LXRydW5rCiszMDg5MCBmZjBlMWVkOTk4ZGVkYWIzY2Y3MTZlNWUwYTA5NThhMGZmM2U2MzI5IGxlZ2FjeS10cnVuaworMzA4OTEgYzFkYzUwZGY1NzhjZGNlYmE1ZjI1ZDI0NjFhZWQ3MjBkMTMzOTdiNiByZWxlYXNlMjItbWFpbnQKKzMwODkyIDEzYmVlYTJkMmQyNmFhMWExZjUxYTFhYzg0ZmM0OTQzNDQwMzlmNzIgbGVnYWN5LXRydW5rCiszMDg5MyA5YzRiNDIwN2U5NzlkYzNiZmMwNDYwOWE4NDFmMWUxZmQyOTRmYWEwIGxlZ2FjeS10cnVuaworMzA4OTQgNWIzZmJmZjA1ZmZkYTliM2ZjZTIwOWJlNzBkOWYyYjExMDQ1Njg1MyBsZWdhY3ktdHJ1bmsKKzMwODk1IGI3MjU2NDk2YzliMDFjNzQ2M2ZhMWQxYjk4NDkyZjNmYjk0ZWRiYzggbGVnYWN5LXRydW5rCiszMDg5NiBkMjljNzhkMjdjNWUzYjg4YWQ4ZjE5ZTE3ODY5YjMxOTM1OGFiNDI5IGxlZ2FjeS10cnVuaworMzA4OTcgYmUxNzhhZmQ0MTgxNDUxMWZlYTg4ZTQ0Njc1NDQ4MGZkMjE3YTYyZCBsZWdhY3ktdHJ1bmsKKzMwODk4IGUyZDc5ZmZhMjkyOGM0MGVhZDRlMTVkZGI3ODFlNTE2MGM1ODhjOGEgbGVnYWN5LXRydW5rCiszMDg5OSA4NDBlOWZlZDkwOGExZmI4NWRmZWQ1ZTIxNTU2ZjljZTQ1ZTQ0YzY3IGxlZ2FjeS10cnVuaworMzA5MDAgZjNiYWJhZWRlMTg5YTBiNmEzYTJjZmQ3ZjI3YTkyZGFjMTI5OWM4NCBsZWdhY3ktdHJ1bmsKKzMwOTAxIDgxNTY5Y2NkZTViZGYwMGRmNjVlZjc1ZmRkZTE0YmM4ODRlNzNhOTQgbGVnYWN5LXRydW5rCiszMDkwMiBhNDU3NTMxYzBmZDQ5NTEwNzIxNzY5NTBlMDRmMWMxNzdmMGY3NzM0IGxlZ2FjeS10cnVuaworMzA5MDMgNjI5NjAzZjY0NDEyNmNhMzUyYzExOTk3MGNkZDE3M2JjMzdkODAwOCBsZWdhY3ktdHJ1bmsKKzMwOTA0IDhkODY5ZjkyMWYyMjY0MjEyN2Y5OWYwMjgzNjA0ZjJiMTE5ZTM2MGYgbGVnYWN5LXRydW5rCiszMDkwNSA5YmNmODVkMDEzNWMyZTc0YWZlOGM4MTcyMDM0YWQwNmM5ZWE3ZDk4IGxlZ2FjeS10cnVuaworMzA5MDYgNTE3NGI0YTcxZTZlNGI3NzRmYTk1ZmY2OGYyN2U1NmNiYjhjZTg2NyBsZWdhY3ktdHJ1bmsKKzMwOTA3IGQzNjNmODNjMjg0NmE1MmY1NzIzZTE1NWNkMmE2OGUxM2IwMzBmN2MgbGVnYWN5LXRydW5rCiszMDkwOCA5MWE1NzMyNDNkNWQ3OWVhYTUwODI3OGNhYmFkYTU1OGU5NjkxMzAwIGxlZ2FjeS10cnVuaworMzA5MDkgMDE1NjQ3YzdlMTg0MzM2NGE2NmEzYTBmOWE5NjVhMDdmMzY4NjdhOSBsZWdhY3ktdHJ1bmsKKzMwOTEwIGY5YzQ4ZWQ2N2E5M2FkNmVhNzkwOTUwNDUwZDI2Yzg4NGZlZWFmNzYgbGVnYWN5LXRydW5rCiszMDkxMSBlN2NkYjUwM2QxZTA1YmFlOTE4NGIzNzRkOTNjYmNiZjdjZWIyZmY3IGxlZ2FjeS10cnVuaworMzA5MTIgYWE5NGM4MjBiM2VkMDJkY2Q5YjQ2MmU0Yjc5NWFmZTYwYjUwYzIxNSBsZWdhY3ktdHJ1bmsKKzMwOTEzIDg4MmUzZWVhYzNkZDdhMzA2MDVhMDZhMTZmNDg5YWE3NWFhOTdlMTcgbGVnYWN5LXRydW5rCiszMDkxNCBlN2NkM2NjMTEyZDMwMDEwOTI0MzUzNzc5Nzg5MmNhYzUzM2E2MjAzIGxlZ2FjeS10cnVuaworMzA5MTUgMjhiM2Q5YThlZTFhMzM2YWE5NmIwMjU1YzhiZDg2NWU1NTkxM2VlNCBsZWdhY3ktdHJ1bmsKKzMwOTE2IGU3YmU2ODY4MDMzMjZlNDgwODFmMWM0YWQxOTZjN2QxZjA5YzQzMjQgbGVnYWN5LXRydW5rCiszMDkxNyAxMjM1OWU1Mzc1MTJjMzI4Y2QyM2Y4MjFkZGYxZDk5MTZmNzgyNGE4IGxlZ2FjeS10cnVuaworMzA5MTggMDA2NDA3MTRhNTlhNWQ4OGQ4YzNkNzE2MjM4OTI1ZjYwNWEyMzk1OCBsZWdhY3ktdHJ1bmsKKzMwOTE5IGYxZGQ5MDM1N2RjYmExN2NkODI5Y2EwZDQyNGI4ZWI5NzdiYjQ4MTQgbGVnYWN5LXRydW5rCiszMDkyMCBlYWYzZjgwNzAwYjNkNWQxOWI4OWJmYWI4OTk3OWUyMTY2YTBmODM0IGxlZ2FjeS10cnVuaworMzA5MjEgNDc5NThjOTk0NTJkZTM2ZTJmOGUwM2MzY2NhZTI4ZWY3NzhhOWI3ZiBsZWdhY3ktdHJ1bmsKKzMwOTIyIGQxNmE5Nzc3NDZhMjM3YzYyNGU0OTUzOTBmMzg0ZTI1NGU2MmI3YjEgbGVnYWN5LXRydW5rCiszMDkyMyBkYTBjOTkxMjU1YzJlZjY0ODQzMWQwNGZkMDFlYWRmODg2Yzc2MjA2IGxlZ2FjeS10cnVuaworMzA5MjQgNDE3MmIyODZkNjU4YzdhMWI4YTVlMTY1YjA3NWVlZWIzYTFjYmU3ZSBsZWdhY3ktdHJ1bmsKKzMwOTI1IGU5NDVhMDNlZTU2YzY5ZWY1N2Q4NjlkYWEwZjhmYmU2NWZiNTFmMTEgbGVnYWN5LXRydW5rCiszMDkyNiBhZWQyZWY5NmVkNTRkNzk1OWJjNTMxYmIyMDViYzJiMWJmMmZjMWMyIGxlZ2FjeS10cnVuaworMzA5MjcgNmViNWUxYTA5Yjk1ZDVlNmE5MWE3M2QwNjYxZTEyYjgxMzI5MDhlZSBsZWdhY3ktdHJ1bmsKKzMwOTI4IGFjZWRlY2QyMDEyNmFkZmIzMzdkNDExYzJlOTQ3MGFiYjgwMWY3ZmEgbGVnYWN5LXRydW5rCiszMDkyOSBjYWE2ZGY5ZTA4ODA1ZGNjNzU0YTczZjQwYzA5N2ZkZThhMzY1NWQ3IGxlZ2FjeS10cnVuaworMzA5MzAgZDE5YmMzYjE4MTNjYjUxOGM3NmJkZWEyMjVmNjAyMTExMzk4ZmJmZiBsZWdhY3ktdHJ1bmsKKzMwOTMxIGVhNWVlM2U3YmZiMTBhNzhmYTg4NzE5OTc3MjZkNGRmMDFhOWJjNGYgbGVnYWN5LXRydW5rCiszMDkzMiAxZmQwNGMzNzQwOWFiM2ViNTQ3ZTAwZDVmMWQ5ZDA4NTEyNjA5ZDNmIGxlZ2FjeS10cnVuaworMzA5MzMgYTI0ZmQ0NWFjZWIxOGJmYjIxNGE0OTc5N2MwM2MwZDc3MWI2NmQ2YyBsZWdhY3ktdHJ1bmsKKzMwOTM1IDU2ZDgzZDBjNTViNjBmYzE3ZjliZDY3NDQxNGVjMGFmYWUyZDgzYmYgbGVnYWN5LXRydW5rCiszMDkzNiA1NTBjMTVjNDkxOWIxNjI4M2NjODBiZWI0YTRhZDg1MjBiMjVhMDJjIGxlZ2FjeS10cnVuaworMzA5MzcgNWMxMzNkMTNmMzI1NjJjYzQyZjc2MTgyNDFiNjYwZDg0YmU0Njc1MiBsZWdhY3ktdHJ1bmsKKzMwOTM4IDk5MjRmMjJkNjYwNGU0Mjk0YjMwYjZmOTZmYWI5MDZlMTM2MmQzMmUgbGVnYWN5LXRydW5rCiszMDkzOSAyNzQyZWE5M2FiMjMzYTQ4ODI3NjE0OWZkM2Q2MTk0NzU2ZWNjMzhjIGxlZ2FjeS10cnVuaworMzA5NDAgMjBkZjI0YTEzMzQ5MDI5ZTZhMjU5NWRmMjZjNTlmYWEwZmVkYzAxNSBsZWdhY3ktdHJ1bmsKKzMwOTQxIDllNDMwYWNjY2RiOGY1YzAxZTA2M2I4YTlkMjdlZWEyZWVhMWUyOTEgbGVnYWN5LXRydW5rCiszMDk0MiAwMDlmM2FiYmY3MjYyYTI1YWZlOGNhMWQwMDMyMmFlMDFmYTVjY2U4IGxlZ2FjeS10cnVuaworMzA5NDMgYzc0Y2VhMjQzNzJlOGY1ZjMyMWNhMTNhNjBlNjM5ZmVhZjE5Mjk0NyBsZWdhY3ktdHJ1bmsKKzMwOTQ0IDdkM2M2YWQ0ZTNlZGM5YzJjYWYyOWE4MjNkNDRiMzM4MDhjZTY0MTcgbGVnYWN5LXRydW5rCiszMDk0NSAwYWVhYTNkMWUwZmY3OTQyYzE3YTc2ZWY0MGI3NjdjODgwZTI0YjMzIGxlZ2FjeS10cnVuaworMzA5NDYgMjRjOGZiZWM3NjFmMjMxZDdmMzhmMjI4NDliN2VkMDQwYjA0YzM5NyBsZWdhY3ktdHJ1bmsKKzMwOTQ3IDNjM2U0YzhjNGE5ZGZmMDI2YjJjYzE2YzNjYjA3YzI3MzA5MTdjMzEgbGVnYWN5LXRydW5rCiszMDk0OCA5M2JhNDJjZjRlNTNhY2Y4YjExMmJlY2NhOWQ1YjVjMThlMmYzNWNhIGxlZ2FjeS10cnVuaworMzA5NDkgZmEyNDUzOGY4NjUwYTU2MmM1NTAxNGUwYTIyZGJiYTBhMWQ2ZGE5NyBsZWdhY3ktdHJ1bmsKKzMwOTUwIGUyNmEyZjdmMjI0YjU5YTQyMjM4NjM5ZDc0NGUzMWE3YWI0ODgzMTYgbGVnYWN5LXRydW5rCiszMDk1MSBiZjBiYzg0ODE1MDIxNDNiMWM3ZGIyMTBlYmNmYzk4MTgwMzNhODVkIGxlZ2FjeS10cnVuaworMzA5NTIgM2NkOWRkZDU1NjJlYTA5OWJhMmFiNmI1OGNiY2FjZDJhZDJhYmQ4NyBsZWdhY3ktdHJ1bmsKKzMwOTUzIGI0NjVjOWQyMTk2YTNjYmE4NzkzYmZlM2FiM2ExYjc4YTAzMzE4MDUgbGVnYWN5LXRydW5rCiszMDk1NCAxYWUwYjE0MjM3MGU0MDg0ZWRhNGNiMjIwNDkyZTNmNmJjY2EwMzllIGxlZ2FjeS10cnVuaworMzA5NTUgZjhhOTAwODVhY2M0MWU5YTA2MTJiYWI3OGM4YmFiZDYzMjQ0ZmZmNSBsZWdhY3ktdHJ1bmsKKzMwOTU2IDQwNDc4MjE0MTliNTdhODg1OTBjMTlkOGI3ZTEwYjRiODYzNmMzMzEgbGVnYWN5LXRydW5rCiszMDk1NyAzNTczNjU5MWRjMWU3YTUzMWVjMzJkM2M5OTlkNzRiMDM3YWQ2YjdjIGxlZ2FjeS10cnVuaworMzA5NTggNzExNmNiNWJhYzUwODNkNDliMjJmYjVjZTJmNTljY2RlY2VmNjIxYyBsZWdhY3ktdHJ1bmsKKzMwOTU5IDQzMGVkMWM4ZTA3MWRhYjAxMTU0MGYzZGE5YzI4YzlkMjdmNjBlODQgbGVnYWN5LXRydW5rCiszMDk2MCA2MGZmMWJhNDI4YzNmYTBiMDY0ZGU3ODI5MmI5MDA1MGRkMDc2ZjQyIGxlZ2FjeS10cnVuaworMzA5NjEgOTFhZTI5MmMzYTk3ZjBjZDM4YTAyYmMzYjI5ZmJiNWIxOTc4MjJhNCBsZWdhY3ktdHJ1bmsKKzMwOTYyIDE4ZThlZDgwZThkMTc0OGRmZjVmM2ZiNzQwYTNiMzBjZDQ1ZWJmMmIgbGVnYWN5LXRydW5rCiszMDk2MyBkOWQyNGNlMWNiZjY1OGQwNzMzYWFiZDgzMjkwNjZkYzA3NDM1NzVkIGxlZ2FjeS10cnVuaworMzA5NjQgZTRhNWY3NTM1MDhiYzUwYjAxNTQ0N2ExNGRiNTZiZDkyODhhNjBhNiBsZWdhY3ktdHJ1bmsKKzMwOTY1IDVkYjJjZjNlNzdkYjMzYzk4MGZkMGUxNDljODBmNjc2NmI0N2Q5MWIgbGVnYWN5LXRydW5rCiszMDk2NiA2YjBkYmRlMGZlZDcxNWEyOThjYjc0MjExYWVkMWRmZjU5YzIyZWY1IGxlZ2FjeS10cnVuaworMzA5NjcgOGYxMzcyOWE5NGE5NjZhMWExOGNhNDdkODExZGM0NjU5ODQ0YzM1MCBsZWdhY3ktdHJ1bmsKKzMwOTY4IDFmNjMyNzE0MGZjMjNjZmI4MDdkOWY5MTZlMTM1ZWZiOTE1OTRjZjcgbGVnYWN5LXRydW5rCiszMDk2OSBhMTYyNjJiYzYwOThkZDA4MDE3YzM2MTY4Zjg0ZDQzZTJiZTJkYmQwIGxlZ2FjeS10cnVuaworMzA5NzAgOTI1ZWRmOGUwMDBjYTdkZmFhMjEwZjc4ODZhMzEzNGZjMjlkYWExOCBsZWdhY3ktdHJ1bmsKKzMwOTcxIGQ4YzJjNDBiMzg2YjE5YTBkNjc4NmVlYjg3MTkxMWY0NzFiYTU1NTkgbGVnYWN5LXRydW5rCiszMDk3MiBiM2NiZTdhMDE0MmE3OGQ5Njc1NjllNmJkNzMyYzJhYjYzNGZlODkwIGxlZ2FjeS10cnVuaworMzA5NzMgMGE0N2Q4MzJhNjRiNWI0ZjEzYTIwYWM4ODQyOWNkYmE2NWJmMzYxOSBsZWdhY3ktdHJ1bmsKKzMwOTc0IDQwMTVhMjdhMWQxM2YyYzc0ZDYzYzIyY2YxZWJhMTk0Njk2YWVjMmEgbGVnYWN5LXRydW5rCiszMDk3NSBhMjMwZDEyMDBiYzM1YjNkMjY2NWFmZDNhOTljYjE2OGQwNWI3NGU2IGxlZ2FjeS10cnVuaworMzA5NzYgN2ZiNWU4YTU0MWFiOGZjZTczYWQ2NTlmNGU2ODIxMWMwZTg2OTUyNiBsZWdhY3ktdHJ1bmsKKzMwOTc3IDM1MDlhZDA3ZDE1NmFjYjZlNTY4MmIzYTFjNDRmMWIxZmEzMDkxNjkgbGVnYWN5LXRydW5rCiszMDk3OCA5ZmUzMjE1NGQyODkwMmVlNjVmN2Y5MDA5ZjQ0NTRjMGZmYzMwOGU4IGxlZ2FjeS10cnVuaworMzA5NzkgYjJjZTljNjM3YTJiYzYwMmM4MjkwNDcyNTk2NjVlMTVhZWM3NDEyZSBsZWdhY3ktdHJ1bmsKKzMwOTgwIDExNWVlNDA1MThhODRkY2FkZWJiMWI4ZWUwOGNjYWNkNGFhN2ZlMjcgbGVnYWN5LXRydW5rCiszMDk4MSA2MmM2Njg5M2MyZGJhMmE0NTAzZDQ2NGExYTkzYWY4ZWI2YTY4MDFiIGxlZ2FjeS10cnVuaworMzA5ODIgNGMwM2VmMDZjM2ZmNzA0ZmExZDBiOGMyOGIzNmFkNzUwMjA1MWY1MSBsZWdhY3ktdHJ1bmsKKzMwOTgzIGVhNDgwNDA2Y2M2NTYyMWNmMGVlNjJkNTQ3ZTY0MzhiMzVjZDZhZmEgbGVnYWN5LXRydW5rCiszMDk4NCAwNTU0YjdjNWY2ZDdkMjY5MjAzOWMwMGYyNTJmMTFiYTQyYjJmMmRmIGxlZ2FjeS10cnVuaworMzA5ODUgODgzYWYyOGI5YTBkMDY2MGVmYmIyZjk4NzExYzlhYjljOTQzOTg4MyBsZWdhY3ktdHJ1bmsKKzMwOTg2IDI2YTc5MjAwNzY2NTI1Yjk1MmU2YWZiYjQ3ZDgwZGY0NDk5MjYxMWQgbGVnYWN5LXRydW5rCiszMDk4NyAyZWU5NzQyYWFkZDg5MjE0N2U1NTQzMDIyYzAyYmUyNmYxMzNiNGNjIGxlZ2FjeS10cnVuaworMzA5ODggZWQwZDRhZTZjNmNlNDA5MTg4YzA1ZjFiNmMyYmQ4OTEyMThjMmIzOCBsZWdhY3ktdHJ1bmsKKzMwOTg5IDhkY2U3YTVlNWZjY2QyN2VjNTBkYjIwMTVkNDI0ODJjZjEzOTg3NjAgbGVnYWN5LXRydW5rCiszMDk5MCA3NjRkZjJmZGM5YzYzNjc1ZWM1MGE2ZDJlMDcyYzFlZTg3NzA1OGIwIGxlZ2FjeS10cnVuaworMzA5OTEgZjQ5MTFmN2FhZDAyNTM4NTI0MDZiY2YwMjBmMzQwYjQyY2U0MDkxYSBsZWdhY3ktdHJ1bmsKKzMwOTkyIDZmZmFmY2VmOThmYjM3ZmQ1ZjQyMTU3OTZlNmU4Y2EyMjYyMDc1ZWUgbGVnYWN5LXRydW5rCiszMDk5MyA1Yzc1NDhiZjM3N2IyMjg4YzZmMzg1OGVkMDBiODNlYTA4NGQyYjI5IGxlZ2FjeS10cnVuaworMzA5OTQgMTdkODdjNWJhNmU0YjcxNTIwMDcyZTNkNzU2MjZjYWM4MThkMmIwNCBsZWdhY3ktdHJ1bmsKKzMwOTk1IDA1ZjdlMWM2NWQ3ZTgzODNiNjMxN2Q5MjVjMTg4NTAxMTRmZmNiNjYgbGVnYWN5LXRydW5rCiszMDk5NiBmNGU4YTZkNGFhN2MzN2UxYmY2NDRkNTBiOTliYmJlZGI4YzJjYTUzIGJzZGRiLWJzZGRiMy1zY2hpem8tYnJhbmNoCiszMDk5NyBmOGQyOGU4MmM0Y2M5OWEzYmUxMDJhNTRhZTllNjg4ZDE2Njg5Y2FiIGJzZGRiLWJzZGRiMy1zY2hpem8tYnJhbmNoCiszMDk5OCBkZTQwNjE1ODRjODM5MTU3MjI1ZmQ4Yzk0MTNlNjdlZWYxNDMyZDk3IGxlZ2FjeS10cnVuaworMzA5OTkgZmNjZDllOTQzMjExYWQ2M2IzZTY2NjcxM2UxYmUwYjY0NjViOWFiNSBic2RkYi1ic2RkYjMtc2NoaXpvLWJyYW5jaAorMzEwMDAgYjc5YzFhZmZmMTEyODM1MWE4ODIzMDI4NzhjM2QzMzc0NWJjYmYxZCBic2RkYi1ic2RkYjMtc2NoaXpvLWJyYW5jaAorMzEwMDEgMTU0YmFjMGIyNmE1NGVjMTkwOTI2YzdjOGJiNTU0YjZhNmYzYjczYiBsZWdhY3ktdHJ1bmsKKzMxMDAyIDMxMDE0ZmJlMjBkYmIwODgzMDE0MWU2YTc0ZDc0NDU2NzAyZDk5ZTQgYnNkZGItYnNkZGIzLXNjaGl6by1icmFuY2gKKzMxMDAzIDM4YzdjMmQ0Y2Q1YWNmNDM1ZTNhNTY0NDAzMTliZDgyYzI1OTQ2ZDcgbGVnYWN5LXRydW5rCiszMTAwNCA5MjRhZGU4MDEwNGIxNzM5NjY2YWQ1MTcxNDNjMDljOTA0NjM1ZDE3IGxlZ2FjeS10cnVuaworMzEwMDUgYmE5MzEwZmVmNDlkZDgyOTM4ZGVmODc4YWQ1YjEwY2M3YTI3MTU0OCBsZWdhY3ktdHJ1bmsKKzMxMDA2IDZlODllODBlNmEyNjdjNTE2NDY3ZGIyYWY1YjgwMWFkMGUyY2I1NzEgbGVnYWN5LXRydW5rCiszMTAwNyA3MTJiMDFkNTJlOGNkMmIzZjk1YmE4ZWU5NDRhM2IyNGZhY2Q4OTQzIGxlZ2FjeS10cnVuaworMzEwMDggMTRiMTc1OGRmZGRlZGFjZGEwNWI4NTZmMjg1NDkxNGYwMjgwZTA2YiBsZWdhY3ktdHJ1bmsKKzMxMDA5IDI5ZmQ5ZmRhZjUyYTkwNWE3NTc0NzlmODc5ZTExNzViYjk4ZTE0ODYgbGVnYWN5LXRydW5rCiszMTAxMCBlZTBlNTE1NDA3ZmQ5NzlkZTMxOGIxZjVhOTdmMjRiYzAyMjY1NTE4IGxlZ2FjeS10cnVuaworMzEwMTEgN2M4ZGZkM2Y0YWU5MDZlM2FhMTA3N2UyNzBjMGQzMDFjNzJiNGU5YiBsZWdhY3ktdHJ1bmsKKzMxMDEyIGY5Mjg0YjU3YjQyMjlhZWQ4NmM5MWY0NmZjYmNiYjk1ZjhmOTZlYTEgbGVnYWN5LXRydW5rCiszMTAxMyA1YmE3OTM0YTdiYTAyMTg0YzUyZTNkNTA1N2EyYWU1MzE5N2I4ODRmIGxlZ2FjeS10cnVuaworMzEwMTQgMzZmNzFmZWY1YjEwOGZjODAzMjMwYmZhMzEwZmVmZGJkZDE1ODlmZSByZWxlYXNlMjItbWFpbnQKKzMxMDE1IGU5NTc4NzQ3ZjQzZGZlNjZiNzA2NTQ0OWJmZTZkMmU4YTdmMTZjZjkgbGVnYWN5LXRydW5rCiszMTAxNiAwOTA0ZDg3OGI4ZjE4Nzc3ZGFmNzY1NzkxN2Q2NGI2YzRhZjYyZjUxIGxlZ2FjeS10cnVuaworMzEwMTcgZTljZDIyODEwNGExMzBiZmQ2MTE4NGUyM2EyMWZmYjI5MzgzMDc1NiBsZWdhY3ktdHJ1bmsKKzMxMDE4IDNiYzcxZDIzNGEyOWU5ODk5Mjk4ZTliNmIzYmI1MjJjNDVjYjBlY2YgbGVnYWN5LXRydW5rCiszMTAxOSBiODNmYThmYTEyMWU4NGQ4MzNlNjBhNTlmZmZiZGJlZThiNmU1ZGVjIGxlZ2FjeS10cnVuaworMzEwMjAgNDI0N2U2NDBlMmE2ZWIyYTU4Yzc5ZDAwYmFiYjU4ODU5MWRlMWE2ZSBsZWdhY3ktdHJ1bmsKKzMxMDIxIGE4OWMwNzdlNjQ4YTE4ZmNkMmU0NmI0MmU4NDc2YWZmMDNlYjE5MDEgbGVnYWN5LXRydW5rCiszMTAyMiA3YjdkM2I5MDYzNjMwZTRhZmZkMTRmNDA3NTQ5MzEwMThlZjYwZDhlIGxlZ2FjeS10cnVuaworMzEwMjMgMWYxNmFiZmFmNjNlOWYwZWU0ODhhODllY2U2OTNiN2ZiZTBiOTA4YiBsZWdhY3ktdHJ1bmsKKzMxMDI0IGFkYmMzZmU4YzgxY2MzYTNhMGE5NTFiZThhNDlmZTNjOTgyZDE5ZDEgbGVnYWN5LXRydW5rCiszMTAyNSA1ZTQzNTVkODBkZDE1OTczNDBmYTc2YjE3MDMxZjhlZDBkNTMwOWE5IGxlZ2FjeS10cnVuaworMzEwMjYgZTkwNWIyMmUzOTJiYTU4ZmVmOTM1ZWI2N2JiM2U2MWFiMDk4OWFkNSBsZWdhY3ktdHJ1bmsKKzMxMDI3IGQ4NzUwZTBkM2ZiODg4ODM2YWI3ODM4YTgwNjVlZDdkMmEwYzYyOWEgbGVnYWN5LXRydW5rCiszMTAyOCA0YzM1YTY2ZmNlNGRmMGVkOTVlYjkzOTA0NDdhZmJkYjI1M2E5ZTEzIGxlZ2FjeS10cnVuaworMzEwMjkgYWUzMWZjYjdiNThlNGNjZDg4MTEyMWYwOWYyOWIwMzA0ZjRmZDI3MSBsZWdhY3ktdHJ1bmsKKzMxMDMwIDA5MGE1MGNiMjY5MDBlMDg5ZTQ1MjdmMzQxYWM2YmEzYWJkM2RmMzEgbGVnYWN5LXRydW5rCiszMTAzMSBlNDJlMzAyNWJhZTNiNDlhNTg3NzI1OWQ5Zjc0YTg0MTE2ZmNhNGRlIGxlZ2FjeS10cnVuaworMzEwMzIgNjIwNTM5MTY1ZTUzMDhhYzlhODQ4MGEyZWU3ZGUxMDg4MzY0YWYzMyBsZWdhY3ktdHJ1bmsKKzMxMDMzIDBkZDhkOGE3NjAxNWVmMGRiYjk2YmVmZDkyZWQ3ZmZiZGY1ODYyNjAgbGVnYWN5LXRydW5rCiszMTAzNCBmZTQwZmNmNDllZTU2NmRmYjVmYzI5MTg5MTcwZDE1NjZjMDE2ZTI5IGxlZ2FjeS10cnVuaworMzEwMzUgYjQ4MGE0ZjcwN2Y2MTc4YjIwNjI2ODAxZmVkMDU2YTM0ZTNmMTczNCBsZWdhY3ktdHJ1bmsKKzMxMDM2IGQ5ZDU3ZjVmOThjZGE3MjJiNzg0YWZmOWRlODhjMGVmY2FmMzI4NTcgbGVnYWN5LXRydW5rCiszMTAzNyAxNDI3NmU0M2VjZTYwNDc5ZGFjNjY3MjE0MDJlNDFkOWM5Zjg1NTA3IGxlZ2FjeS10cnVuaworMzEwMzggNDRmNDY1NjgzOTI3YjNjZmM2ZGMzYzNhNmYwMzRhNDBkOTk2MGU1YiBsZWdhY3ktdHJ1bmsKKzMxMDM5IDIwYzU4MWMyM2JjZTMzMzY4NjUyNDM0NzQ5MGQ0OTJkYTU0Y2Y5MWQgbGVnYWN5LXRydW5rCiszMTA0MCAwZGUxNDI1MmQyNmNlNmRkM2MxNDExZmE3YWNhMjAxZTVjODE0Njk5IGxlZ2FjeS10cnVuaworMzEwNDEgYTJkOTZlN2Q5MWExYTlmOWViMDkxNDczNzc1OGY0MzVlNDM5MWZmOSBsZWdhY3ktdHJ1bmsKKzMxMDQyIGIxZDFmZTdmYjUxNGIxNzNhODA4Y2E1ZGI5NjlmNWI0MGVkMjY1MDggbGVnYWN5LXRydW5rCiszMTA0MyBkNjJiZDI0MDcyOTE5YWIwNDUzZTQ3ZmZjYWMyMmNlNDNkMjkzMzQ2IGxlZ2FjeS10cnVuaworMzEwNDQgMGU2ZGNlMWVjMjMxY2Q0N2M0MzBkMmYxZjViMjljNGFmMmU3ZWQyNiBsZWdhY3ktdHJ1bmsKKzMxMDQ1IDVmMzI5NDJhMjI1YWRhOWVhNWI5NWFkZjgwYmZkYjc1YjAwOTlhOGMgbGVnYWN5LXRydW5rCiszMTA0NiA1MWFiYjVlODYyMjYyNTU1ZmNlNTI4ZDNhNDI5ZWE3NDQzMDdiN2M2IGxlZ2FjeS10cnVuaworMzEwNDcgYjJiNTc0MTE4ZmZkYTNmZGY3NGQ2YTJmYmUyYTlmYzg3Njk5OGFhYSBsZWdhY3ktdHJ1bmsKKzMxMDQ4IDgxYTJkMTg4ZWExZjlmNmEzM2ZhOGI0OTVlZTA3OWNjZTUwYjBmZWYgbGVnYWN5LXRydW5rCiszMTA0OSA2Nzg2ZTg2YjhmZjBhZDBiYTI1NzM4MmJkM2ZhYWE1YzhiZjJjZTRjIGxlZ2FjeS10cnVuaworMzEwNTAgMTdiZmQ1ZGJjMGYxNmRjODVjMTZiMjA4OGFjYzQyODA3ZDY5MzIzNSBsZWdhY3ktdHJ1bmsKKzMxMDUxIDBmOWViODQxM2I2MWI0ZTYyNTFlNDlmMDc3NjI1OTQ3YmNiMjJhMmEgbGVnYWN5LXRydW5rCiszMTA1MiBiMTczYTJhMjMwODI1YTQxZmFiMWRhZjhkMGM1NDhlM2I0ZjJiOTc3IGxlZ2FjeS10cnVuaworMzEwNTMgZDVmNDdlMTQ2NWQ2NmRlNTAzMjgyOWFiYmUyNGUzNTBlNzcyZDAxOCBsZWdhY3ktdHJ1bmsKKzMxMDU0IDBiYjE1NGZhODA0N2M4ZjBmYzgwM2JlY2FmNmEzOTVkMTQxYmU2ZmYgbGVnYWN5LXRydW5rCiszMTA1NSBkZGVlOGMxNTgzMDFjNjgzY2ZiOThlNTdmOTZmZDI2OWVmYzkwNTUyIGxlZ2FjeS10cnVuaworMzEwNTYgMmUxOGRiY2Q5ZTA0Y2FiZDY0N2VkYzMyYjlhMGNhNzg4YzNjMmI0ZSBsZWdhY3ktdHJ1bmsKKzMxMDU3IDY4OTI1N2NhNGQwOTJiNmQ3OWQ4NTIwMzQ5YjcwZDVkZjEyMTlkNGEgbGVnYWN5LXRydW5rCiszMTA1OCA2OTZjNDJkYTc4NzUzMzE4MjExMzBlMDg5ZWI0NTE0MmJjN2Y2MDczIGxlZ2FjeS10cnVuaworMzEwNTkgNTc2NWQ1MjRkZTcxZTJhY2RiOWVkYmIwYTNlNTAyZmVkNDU1NmRiYiBsZWdhY3ktdHJ1bmsKKzMxMDYwIGQxMTIyM2RhYWY2MWQzYzUxM2JlY2FhMGFmMTlmOTMyOWQ3M2E2YmUgbGVnYWN5LXRydW5rCiszMTA2MSAwMmYxMzhjNjM5YTA4M2ExMzc0ZTA3NDQ2NmZkN2Q3MjA4OGNmNjZlIGxlZ2FjeS10cnVuaworMzEwNjIgODQyZDZhMjQ0OTdhZTgzYTUzNjkyODFiNWViYWQzYWIwYmFjN2FkMiBsZWdhY3ktdHJ1bmsKKzMxMDYzIDk5MDk5ZGViNjAyNjQwYmI5NTZmNDMxMjY5MmUzOTM2ZGM1YmFiMzcgbGVnYWN5LXRydW5rCiszMTA2NCA3MmIzOGQ1ZmU2MWY5YWZlZWQyYTJjNmZkNGQxNjBlNWE4NTRjYWE4IGxlZ2FjeS10cnVuaworMzEwNjUgY2JjODYwMjhkOWYzYmFiNzBhZDgyNDk3NWIzMWFjYzAwODljZmFkOSBsZWdhY3ktdHJ1bmsKKzMxMDY2IGZkYzUyYjExOTcwOTBlMTMyOTBmOTg0MzhlNTU4MzU2MmE2NDgyMjEgbGVnYWN5LXRydW5rCiszMTA2NyA4Nzk0M2ZhZjRmZDIxNmE2MTAyZTA3ZDQ5OTU0MWM4YWJjNTExOGU2IGxlZ2FjeS10cnVuaworMzEwNjggOTdiMjgxNzA2MzRjY2YxOTJjOWFlZjU2YjU4MDg5Yjk4NjQ2MTI3NCBsZWdhY3ktdHJ1bmsKKzMxMDY5IDJhZGQwMDhiMWI3ZDA3NWQzMzAyNzc0YmE5OWY1NWZlMmZiMjI2OWQgbGVnYWN5LXRydW5rCiszMTA3MCA4OGNlZWVlZDcwYmQxNTFkNWVjMDkwMTExMzliYmVjOWFjMzg0YzlhIGxlZ2FjeS10cnVuaworMzEwNzEgMGM4ODEwMzczYTFhNzcyODY0OTBjOTYxYmI1NDVjZjQwMTQxZDVkZCBsZWdhY3ktdHJ1bmsKKzMxMDcyIGVkMmQyM2QyZmQ0MTJiOWY3ZTc2NWYyNjZhMTcwOWUwNWQwYzkyZWUgbGVnYWN5LXRydW5rCiszMTA3MyBjNDdkZTg4YWU4NWQ3ZTU0N2EyZmQ5MTZjNTM5ZGI1ZmYyMzkxM2MyIGxlZ2FjeS10cnVuaworMzEwNzQgZjk4MjJiMThjZjkxOWM1NmNiYzlmZWE2NWNiNTgzMzk5MWNkOWIzOSBsZWdhY3ktdHJ1bmsKKzMxMDc1IGJkNjNmMjhjZTdhOGJmZGExMDAwNWMzMDc0NzgxYmJiOWZiNDUxNmEgbGVnYWN5LXRydW5rCiszMTA3NiBjZTc0OGFmYmQ2ZWZkMmQ0YTczNDE0YjYyMTkyNzdmZDViM2RkZWQzIGxlZ2FjeS10cnVuaworMzEwNzcgYzQyNWY2NmRiNDU4MjI1MDNkOWVjOWQ0NGUyNDU3Nzc5NmIxYmU0YyByZWxlYXNlMjItbWFpbnQKKzMxMDc4IDdmY2RlZWIxNmVjMGQ2NGViYzJmYzg5Y2RhYjYwNzdkNGQ2MTAyZWUgbGVnYWN5LXRydW5rCiszMTA3OSAzMTgwNzg4MGY1OTk2NTkxNGNjMDFiMWZjZjU1MmZlYTgxY2FhMDBmIGxlZ2FjeS10cnVuaworMzEwODAgZDNhZjFlNzkzMjQzODkyYmRiYzJhMjBhNWIzYTFmNDU4NzUxYjZmYSBsZWdhY3ktdHJ1bmsKKzMxMDgxIDUwYzczNDI1MGUwNTI5YjY2YjU1ZGMyOTdlMGM0YWZlYjVmMjg1ODUgbGVnYWN5LXRydW5rCiszMTA4MiA2NTk3YzA5YjFlNmRjOWQwMGQxZjM1MjhlMjc2OThjMzE2ODAwOTVhIGxlZ2FjeS10cnVuaworMzEwODMgM2FlMGEyZjg3YWEwNmM3NGQ2OWFiNzBmNzlmMDg0MmFlZDYzMzMxZSBsZWdhY3ktdHJ1bmsKKzMxMDg0IGMyNjdmMjg3MjRkZGNjZGViYzUzMTg4ZWRhNWRhOWUwY2E3MjA1YjkgbGVnYWN5LXRydW5rCiszMTA4NSAyNGUzNGFiYzYyOTUwMDk3MzA2NTBhNTBlMTY3YzU2OTIwNjUwYTQwIGxlZ2FjeS10cnVuaworMzEwODYgNWVlZmVjOTRhNzg0ODU0MmI5YTA2ZThjNWYyMWMxZThkZGI4YjcwMSBsZWdhY3ktdHJ1bmsKKzMxMDg3IDhkODM1NzhkYmE4MTQxZDQ2ZmZmZTEwMjZhYWQzNWUxNDY4NWE4NDQgbGVnYWN5LXRydW5rCiszMTA4OCBmYWFiZDk4NjdmYjhkYzQ5OTQwZDM4YzIyOTZkYTdhNmMwYWJiYmViIGxlZ2FjeS10cnVuaworMzEwODkgNGFhNGU2YjNlY2E3MjNmNDM0OWU3NDZmN2I2NjMwZDU2MTcxYTNlMiBsZWdhY3ktdHJ1bmsKKzMxMDkwIDNjODkwNDlmZTYyOGQzNGRhMWVhYTFlNDlhYTY1MDgxMmU1ZGM1YjIgbGVnYWN5LXRydW5rCiszMTA5MSBkNDJkODNlNTY4NmMzYjk2YmVkZWU0ZDNiYzg1ZGM4ODE0OWQ1ODdlIGxlZ2FjeS10cnVuaworMzEwOTIgYWIxNDNhZWQ0OWI5MDZmYjgzMzYwMDAzZDJlNmQ3NmU5YTQ4OGY4MiBsZWdhY3ktdHJ1bmsKKzMxMDkzIDI1Njc4OWFhYWNkNjVjMDMyMzJhYzJmMWUxNDQwMzhkYWMyOWM3ZjUgbGVnYWN5LXRydW5rCiszMTA5NCA2MjBiYjM1NTFiYjY3NDdhNjYwYjRkZWZhZGRlM2YyMDQ1NTI3MTRlIGxlZ2FjeS10cnVuaworMzEwOTUgODc2M2E4ZjZjMGQ1YmVmMmU4MDAyNWMwMDQ5MTJhYjdjNTZiNDgyMCBsZWdhY3ktdHJ1bmsKKzMxMDk2IGMwNzViYTJhYmY3YWJhNmY2ZmRkMzM4MGY3Y2Y1MjNlNTI2MWQ0ZGYgbGVnYWN5LXRydW5rCiszMTA5NyBmMzNlNjQ0ODQ2MjA4MWM3NGNiZGUxYmIxODY5YmNjYmI4YmJjNDQ1IGxlZ2FjeS10cnVuaworMzEwOTggNzZmYThjNzlhODlkMGE2OTBiYzM1ZGU5ZTlkYjc5MjkyZGI3ZTQwOCBsZWdhY3ktdHJ1bmsKKzMxMDk5IGJhNTdjM2RhZjZlOWEzOWQ2ZWIwMmQyNjIwNTY5ZjMzYjMyOWVmMDMgbGVnYWN5LXRydW5rCiszMTEwMCBiZDhlNjIyMmUxNmEzMmEzYWY0MzI2YjAxMDkzMDM3YTJjY2Q2YWViIGxlZ2FjeS10cnVuaworMzExMDEgZjIzNWYxMzVmM2Y4YTI3ODYyOTNhNzY5MzkwMWJhMDQ5Y2Y3ZTA3NyBsZWdhY3ktdHJ1bmsKKzMxMTAyIDY3NGYzZWVjZmZjNTA2OWU3MWNjN2FhYWIyZjgzNmRjMmIxNTg2OGIgbGVnYWN5LXRydW5rCiszMTEwMyAwMTkwODcyZWJjZjNkNzc0ODQwMTYzZmM2NjQ5ZTA2NDBkNTNiODY3IGxlZ2FjeS10cnVuaworMzExMDQgM2I5ZmI1N2ZhYzM0YTI1ZDQ5OGE0ZDU1YjEzY2M0YzIzM2E0NGQzYSBsZWdhY3ktdHJ1bmsKKzMxMTA1IDE2MDg1MDdiY2MzZmY4NDdhZjU2MWI5NmJiNjJmMjEzZjQxOTQ5OTUgbGVnYWN5LXRydW5rCiszMTEwNiA5YmMxYzg0YjIzZTY2MjM2OTMyODMyNjY5OWNkNjBmNzhiMWU4OTdhIGxlZ2FjeS10cnVuaworMzExMDcgMmYyMjdmZjExZjVlM2FlYzE2NGE5NTliMzQ0YWQ0YzVjN2JlMjgyMyBsZWdhY3ktdHJ1bmsKKzMxMTA4IDZmZmI1YzhlNjUzOGVlODViOGEyZTQyMjQwYTNiNzliZGMyNTlmZWUgbGVnYWN5LXRydW5rCiszMTEwOSBmNDdhZjJjZGI5ODNiNDFmNWVhY2JiZWJmMzEzNzI2Njg1Mzk2NjU3IGxlZ2FjeS10cnVuaworMzExMTAgMmQ3YzBjYmM4M2NmM2Y0OWI5YTAwYWExMTUzYjQzM2NhMzc4MjA5MSBsZWdhY3ktdHJ1bmsKKzMxMTExIGQxZWRhYWE5MzhmYmU3NDg1MmZmNTU1MmFmNDUzYzljYTRkZTZlMTcgbGVnYWN5LXRydW5rCiszMTExMiBhMmRiNDM3ZDMxNGI0ODkzN2JhMGJjZTc4OWYwNTU1NWMyNzE2NDIwIGxlZ2FjeS10cnVuaworMzExMTMgNjU2MzVjNzIxMzVlMWFjYzljNjczMzViZGZlNWM3NzZiN2QzMTQwZiBsZWdhY3ktdHJ1bmsKKzMxMTE0IGEwNTgxNDE4NGU4YzZlNTA2MWNmMGJmMzJlMDIxNGQ4NTdhZDljMTIgbGVnYWN5LXRydW5rCiszMTExNSA5ODE5N2ViZTVjY2I3ZGVmNzhlN2I0NDc3OWJmZjkxNjI2NGMzMTAyIGxlZ2FjeS10cnVuaworMzExMTYgNzI4MzE0MGQ0MzE5ODZiMjQzZGFhNzAyYThmM2I5OGE4ZmNmMzMyNiBsZWdhY3ktdHJ1bmsKKzMxMTE3IDNlYjEwYTE0YmEwMGQ5NmIzNDA0NjRjMmVkY2ZiM2I4OWQxNTVmMDkgbGVnYWN5LXRydW5rCiszMTExOCBlM2ZhODM3N2YzMGM1ODBhNTBiNGI5YWVlZGM2NmZkMDVhY2I5M2NjIGxlZ2FjeS10cnVuaworMzExMTkgOTMyMTA1NjRiYjQ2MDc5ZjBkNjJlMTU0NjM1ZjRlNGJlN2MwZGE1ZSBsZWdhY3ktdHJ1bmsKKzMxMTIwIGQ2YjY1ZTM4NTVhMjUwMGQ4ZDE1OWUzYjRkNDM2ZWZiZjgyMTJkOTUgbGVnYWN5LXRydW5rCiszMTEyMSA3OGU0M2IzNmU3ODQ0ZWI4ZDQ1OWU4Yjk0MmM2YzM5YzliMDQ0ZTU0IGxlZ2FjeS10cnVuaworMzExMjIgNTdiZGY0YmFjNDM1YTdlNjZlY2Q1ZmNjMTdmOWU2NjkwN2Y0YjkyNyBsZWdhY3ktdHJ1bmsKKzMxMTIzIGU1ZDE4MTEyMDMwMzQ5MTE1ZWIyNmRkNzMxMGI0NDNjNTA2NmM0NjYgbGVnYWN5LXRydW5rCiszMTEyNCA5MTVkMzI3YTIxNGE5YWZhOWI2ZTg0MDFmOWUxNmVlY2VjZDZlNGUzIGxlZ2FjeS10cnVuaworMzExMjUgNzIyMjhhMjVkYWFhMjU5MjM0OTA5MTFlNjA4OTYzYTcyNjk2OWU5YyBsZWdhY3ktdHJ1bmsKKzMxMTI2IDhlNjBlYzg4ZWNiODRkOTI1MzBkODM0NjQyYTM4OTY5NWZlZThiNmUgbGVnYWN5LXRydW5rCiszMTEyNyBhMzVkZmNhOTMzMThkMWY5ZTgzYzE3ODZjNWM1OTNmZDk3YTJmYTJjIGxlZ2FjeS10cnVuaworMzExMjggZDE1OGQxMGVmNGFlYjAyN2I3NDRmNTZhYWU1ZDNkYWFhZWE0OWEzYiBsZWdhY3ktdHJ1bmsKKzMxMTI5IDMxM2U5NDRhMmM4ODYyMzZhNmUxOTdhZmIxYzVhNzVjNjNmOTQ3MDkgbGVnYWN5LXRydW5rCiszMTEzMCA5YTNiODQ0M2Q1YTYxNjE1ZmZkOWRlM2Y1ZjM4NzA1MzkzMTg5NDc5IGxlZ2FjeS10cnVuaworMzExMzEgYzQyMTRjMjBiMjFkYzAyMGE4MDdmNjBiMTIzZDQyNDk5NDA4ZTFmMyBsZWdhY3ktdHJ1bmsKKzMxMTMyIDgyYThjYTNjOTI4YzBhZGUzM2Q5N2IyMTFiMDBkMzBlYjg1OTZlMmMgcmVsZWFzZTIyLW1haW50CiszMTEzMyAxZmE0NDQxNDk4NTg5ZDUwMTg1NzNmMmE1MDI3ZDJlYzQ0YzYwNzQ4IHJlbGVhc2UyMi1tYWludAorMzExMzQgNDJiNjE3ZmQ5YzY5MjNkNzU3MjI4MmI5YzE3ZGIxNjhlZmRjMWVjYyByZWxlYXNlMjItbWFpbnQKKzMxMTM1IDIyNTUxZTFkMmM2ZTcwZWQ0ZDQ4YmQzYmU4NTkxZWJkZTY0MmEwMjggcmVsZWFzZTIyLW1haW50CiszMTEzNiBjY2ZhY2FlYzA5Njg5MTllYmJmZThiZDk5OTNiMDY2MGUxYmRjNzc2IHJlbGVhc2UyMi1tYWludAorMzExMzcgYmViMjAwOGEzYzMyOTVkN2U1YmYwYTJhYTQ4OTVjMmE1NTVmODdlYyByZWxlYXNlMjItbWFpbnQKKzMxMTM4IGM5Y2NjOWQwYmE5OWE4OGRiZTllYTQ1ZDkxMWFjNGZjNTk0NjU4NGIgcmVsZWFzZTIyLW1haW50CiszMTEzOSAxZDhjODYyMzRkOWMyYmRmMDY0MTAyODgwOGZiNTk0M2YwYjQ5ODZkIHJlbGVhc2UyMi1tYWludAorMzExNDAgMDYwMjA3OGJkY2UxMjNiMDJiMDI5ZmU0OGM2Y2FlNDNlODRlMjk0YSByZWxlYXNlMjItbWFpbnQKKzMxMTQxIDA3MjlmODM5M2IxNjAzZjdlN2UyNDVkNDM4ZmU4MWJiZmYxYzNkOTIgcmVsZWFzZTIyLW1haW50CiszMTE0MiA2NDdjMjkxNDdkNWQyN2VlODRiYjQzYTFmNjc0OGY4YjYzZWIxMGU4IHJlbGVhc2UyMi1tYWludAorMzExNDMgODM3MDFmYWIzMmZlMTE3NTg5NThmNWQ3N2E3YTIxYTI1OTU1ZTllMiByZWxlYXNlMjItbWFpbnQKKzMxMTQ0IDQ1YWQ3N2E0M2Q4N2Y2OWJhZjQwMmIwMDVhOTI4M2NmOGUwODBjNTYgbGVnYWN5LXRydW5rCiszMTE0NSAyYTgxYzFhODgzY2JiNWMzZWNhMjAxMWY0N2IxM2QzZjIwZGIwNmY0IGxlZ2FjeS10cnVuaworMzExNDYgOWNkYzIzM2I3MjI0YjAzN2JkY2Q3Njc0YjYwODBiOWIxOTRjZjhjYyBsZWdhY3ktdHJ1bmsKKzMxMTQ3IDc0ZDk2MDRlOTM1MzE2ZDdhMTY3ZDNmNTc5MzIyMWVlZTE0YTc1OTQgbGVnYWN5LXRydW5rCiszMTE0OCA1NThkMGYzYjYyNTQ4YmY0MzYwZjgzNWNjYjI4YjA4NTNjNDQ3ZTE0IGxlZ2FjeS10cnVuaworMzExNDkgYmJkOGFiYWEwZjMzNTEyODIzZjZjY2I1YjJkZmVlOTM5ZWMxMzczYiBsZWdhY3ktdHJ1bmsKKzMxMTUwIDE5ZDBjOTk5NTU1ZTkxY2JmNzcxMTNhNjc4ZTM4NjJiZjg5NzY2MTMgbGVnYWN5LXRydW5rCiszMTE1MSA2NWZkYmQ3ODFjYTk5YWYxOTlkOGU1ZTkxMjU5OTg1ODA4NTEyYmJmIGxlZ2FjeS10cnVuaworMzExNTIgYTI0NTI4MzE4YmU5NmNiYTNmYjIwMjE1NDQ0ZmVmMTJmMTlhMWZkYiBsZWdhY3ktdHJ1bmsKKzMxMTUzIDgyMDEwMzhiYmYzMGJkNWJkMWU0MTJlYzRiNzBmOGZhOTU4ZGI1ZTUgbGVnYWN5LXRydW5rCiszMTE1NCBlYWFlZjUxNmE2ODUzZGU3MjQ4NDcyYzZmZTZiNDFhY2ZiMDkxZmQ2IGxlZ2FjeS10cnVuaworMzExNTUgNDU5MDYyMjNlZmIyMzZhMTFkMGMyZjM2NDI3ZjAxMjc4YmZhNGZmNSBsZWdhY3ktdHJ1bmsKKzMxMTU2IDRjOWQwMmM1NjU3YjM1YWJlODcwOWRhMDUwZDFjYWJlMzgyNDAxMWMgbGVnYWN5LXRydW5rCiszMTE1NyBhZmM5YTA5NWEyZDU2ZjhmNzg5ZTg0YmYwMzM0YTRlMmNlNzAzMzRjIGxlZ2FjeS10cnVuaworMzExNTggZjdiMzgyNmQwMTNhMWRlZGIyMTNiMzAyZGQ1OTU4N2ViZTllODMwNyBsZWdhY3ktdHJ1bmsKKzMxMTU5IDY1NjdmNDgyOWU3ZWM0ZmYxYTViZmQzZjBhNmI2M2U2ZDdiZGYwMGUgbGVnYWN5LXRydW5rCiszMTE2MCA3YmY3ZGFjNGRjNDk2MTRiOTIwMzZkZTI3MzIyYTE2OGJkMTRkMGM1IGxlZ2FjeS10cnVuaworMzExNjEgNjQwZTUyZGVlMWEwM2QyYTIyNTg3MWIwNjUxNDZlYTQ4NjI5NzNjOCBsZWdhY3ktdHJ1bmsKKzMxMTYyIDQ4MDMzMDE3Yzc4ZjIwMThjYWQyMjU0YmJmZjQzMjhjNjY3YWM0YWUgbGVnYWN5LXRydW5rCiszMTE2MyBjNDBjYjliZmM4ZTdjM2RmMTY1ODliZGUyYmViZmM5ZTdiNzE5ZjBiIGxlZ2FjeS10cnVuaworMzExNjQgZTRlMjZmZTI4NmMwYjg5YzJiYTYxYjkxMmVjMmU0ZWVhYzRkMGFlZiBsZWdhY3ktdHJ1bmsKKzMxMTY1IDk3NGYxOTZhYmI4N2JlY2NlYjg2ZTRkNGIzOWFhZWIwMzc3MzliZTggbGVnYWN5LXRydW5rCiszMTE2NiA2MDE1NDljNjQwMzljODRiYmU4MWU0NjA0OTdiYjk3ZTFmMzU4YTZiIGxlZ2FjeS10cnVuaworMzExNjcgMmNkNGUwZGZmM2E0MzI3NjBhZTk0MjFhZjgyMGVlMTlmYWJlMjljNyBsZWdhY3ktdHJ1bmsKKzMxMTY4IDYyMDVkYTM4M2U0Y2I0MWI2ODUwNjk5OGIzYTIzMDE4ZGUzNGNkY2YgbGVnYWN5LXRydW5rCiszMTE2OSAwMDQyNmM3ZjE0N2QyMDFhNDMyNTZkYWVmODdkMzM0NzM0MDQ5MWY4IGxlZ2FjeS10cnVuaworMzExNzAgZGQ3M2ExMjE4ZjY5YTg5NjRhMGQyYmE1NGNmNTVhODNjYmM1Zjg4MiBsZWdhY3ktdHJ1bmsKKzMxMTcxIDRkMDRmNDVmZjhhMWU2YzU4ZTcwNWVjOWI1ZGRjMTVlYzMxZWZhYmUgbGVnYWN5LXRydW5rCiszMTE3MiA5MzRhMmI0OTdkMWRkMmFkZTUzMzA4ZTk0ODIyNjEwOTU2OThkNTMwIGxlZ2FjeS10cnVuaworMzExNzMgOGExNDdhNDFjM2Y3ZmFlMGJjZjUzMzJlMjZlN2NmNmZiOGMwZDY1MCBsZWdhY3ktdHJ1bmsKKzMxMTc0IGI2NmFjYmUyOTU3NWM0NWQ1YWVmYTY5YWIzNzA1OWQ5OWJhZmE0NzcgbGVnYWN5LXRydW5rCiszMTE3NSBlOTk2MTVkZTc2NDc2M2M5MGUyM2U0MGIxYjA2ODkwODQxNjg4Mjg3IGxlZ2FjeS10cnVuaworMzExNzYgNTJjZTU3Yjc4YzcxYTg2MDEyZjgyZTFmYWVlODI2OWMxYWJlNDM3NCBsZWdhY3ktdHJ1bmsKKzMxMTc3IGRiNzg0ZDI5ZjQ4MWUwNWJiN2UyM2JjNTVlOGI5NjZkNDJhNWYyMjYgbGVnYWN5LXRydW5rCiszMTE3OCBmNjE5ODYxNDA1MDMwYWFhODJlZTU0ZmE0ZjBiZTc4MWUzNmI5ODhmIGxlZ2FjeS10cnVuaworMzExNzkgZjI2MDM0M2VjY2YxMzIyY2I5MzA0YWQ0NGJkMjIyMGMxY2RiMTg3YiBsZWdhY3ktdHJ1bmsKKzMxMTgwIDU5YjRlYmMyOWQ1MzE3YTZiN2ZjMWI2MGQzOWMzY2EzNzFiMGRiN2EgbGVnYWN5LXRydW5rCiszMTE4MSBlZDkxYmY2MDFiMmRlOThhZjA4NGRjOTc3MmM2ZWY1ODk5NGQ3NzI0IGxlZ2FjeS10cnVuaworMzExODIgMTA2YTQ0YTRiOTc1ZGI0ZjFiMDg2YWY0NWNkNDdjZTUyYjZhYTVkNCBsZWdhY3ktdHJ1bmsKKzMxMTgzIGE5ZGQyMTdhOWJiMTAxZTA4YjEyMzI0ZDgzMjM2NjU5NjRiZDAyODQgbGVnYWN5LXRydW5rCiszMTE4NCBlMTFlOTc2ZmVlNzgxMmFiNDExOGM1YmZiYWQzMmUzNDgwN2Q1OTIwIGxlZ2FjeS10cnVuaworMzExODUgYmEzZWFmZjQ5YjdhZTA4OWE4OGZjMDEyODZmMWRhNDFlNjUxNmZmMCBsZWdhY3ktdHJ1bmsKKzMxMTg2IDY3MzE1MDI2ZDZkMzU5OWI2NmNhNTkxNDczMWViYWM4NTIzNjRhZjMgbGVnYWN5LXRydW5rCiszMTE4NyBiNTk1YzQ3MzVmY2NjNmZkMDAzYjNhODc4ZTg4YTQxNTA1OTY5ZDQxIGxlZ2FjeS10cnVuaworMzExODggMGJiYmNhY2MwNWZiOWU3ZThlZTg0NzBkZGM2MzM1ZGNjZDk4ZjY3YiBsZWdhY3ktdHJ1bmsKKzMxMTg5IDZhMTM5NDY2MDI3MDc0MTcwMjU2NmVkODc2YzUyYTI3ZWRkNjhhYmUgbGVnYWN5LXRydW5rCiszMTE5MCAzNTI3OGFhYWU3NzVjZjk3MWMyMGVhZjJjNTUwNDA3NjNiNTU3YTEyIGxlZ2FjeS10cnVuaworMzExOTEgM2E1MjhhYTIyMmI2YzlkNmRmZTIxM2JiZTZjNzFiNTg1OGQ4OGU4MSBsZWdhY3ktdHJ1bmsKKzMxMTkyIGRmMzYzZDFiMzg0Mjg4NTZmYjRiNTQ5MjM4MmZmM2RkNjljODdhNTkgbGVnYWN5LXRydW5rCiszMTE5MyA2NTJkZjQ1NDk3MDg1NTJhMzA2ZmY3MmJlNzRiYjU4NjY3ZTE3YjcwIGxlZ2FjeS10cnVuaworMzExOTQgZDVlYjEyYmNjZDFlOWY1NTQ1YTBkNDY0MDBkM2I0ZDk4NDQxMTg4NiBsZWdhY3ktdHJ1bmsKKzMxMTk1IDVkNzg4OGZiZWEwMDQ4NGI3NTAwMWM1ZTUzZDg1ZTM0MjJjNDI5YzUgbGVnYWN5LXRydW5rCiszMTE5NiBmNjJlYzI0MDVlOWZjYjU1ZWYxZGRkMjA4YzU0ZjU0OTM5Yjc1ODRhIGxlZ2FjeS10cnVuaworMzExOTcgOGU1ZGU0MzUyOWI3NTczY2ZiNDUwYmU4NDIzYmNiY2U0MTYyMzg5MiBsZWdhY3ktdHJ1bmsKKzMxMTk4IDNlOThkMmUyZDg0N2YxNmM0M2MyMTUzZTA3YzIwYzI2NGQ1MTA3NzIgbGVnYWN5LXRydW5rCiszMTE5OSAyMDMzMGUxMzIxMWVhZGZmZTdiNWI0NjcxNWRiMTcyZmRkNGEyZDU2IGxlZ2FjeS10cnVuaworMzEyMDAgM2IwYjM2Y2RkOWNkOTllNzRhZTA1M2E2M2FmNTZlZjVmYjZhNGY2MyByZWxlYXNlMjItbWFpbnQKKzMxMjAxIGM4OTQzZjg3YzY4Yjk5ZjJmMTY1ZmZiZTIwN2QxNmMxMzhiZjJlMDUgbGVnYWN5LXRydW5rCiszMTIwMiA5NjA4MDNmOWY2OTg5OTRmYTNkMGFhZjQ3MDg5MzY3MWQ3YmI5ZmE0IGxlZ2FjeS10cnVuaworMzEyMDMgY2UzZmFhYjA2ZGU3NTNhNmE5MTQzOTU1N2Y3NzgxMDE4OGIxMDBkNCBsZWdhY3ktdHJ1bmsKKzMxMjA0IDhmODQ0OGZiNThkNmY4OTYwNzUyYTM1Mzk2ZWY3YTY4OWI1N2RkYTggbGVnYWN5LXRydW5rCiszMTIwNSA5NWYzYTFjZDAwZTE2MGQ4NWY0ZTg3Mzg4ZWY3NDNkZWExYTA1ZTI1IGxlZ2FjeS10cnVuaworMzEyMDYgNTE5OWY3ZWE2NzQ2ZjM5ODMzNWE3OTNlOTk4YjkwODY4OTcxZmZlOSBsZWdhY3ktdHJ1bmsKKzMxMjA3IDI2MTkxNWE2YzY4NTJjOTg0ZmJjZjNiNzA3MDNhNjJlMDNhNmQzODQgbGVnYWN5LXRydW5rCiszMTIwOCBkNjk4YzU2MjNkYTA2ZjUxZWM1OTdkZGM3MDBkODM1ZTYyYjI2YmIyIGxlZ2FjeS10cnVuaworMzEyMDkgYjE5YWFhZWI2ZDY0MjAzMTYzYWQ5Y2Y5MGRlNjNmMGJkNGYwMTg1MSBsZWdhY3ktdHJ1bmsKKzMxMjEwIGU1NDU0ZmUxYWFmZDBkY2Y5ZjJlYTY4YmFlZjk2YTNiOGRiZGJkNGEgbGVnYWN5LXRydW5rCiszMTIxMSA3NGFhYmQ0NDE5ZDQwZDY1YmM3ZmZiZWVkNGQ0MzlhMjZhYTY3Y2E0IGxlZ2FjeS10cnVuaworMzEyMTIgZWQxZDRlNzk3MTA5NWJmY2M0YTFlYzkzMTM0MjYzY2FhZWM3NjE0ZiBsZWdhY3ktdHJ1bmsKKzMxMjEzIDk2ZmQwMDRhNThiMGQzMmZlZWFkOGY2MjU5YzA5YjY0OTM0YzNkOWEgbGVnYWN5LXRydW5rCiszMTIxNCA5ZTQ3ZjllZDQ5ZjY0NjIyY2I3ODdmZjE5ZjQ3MjZjZGQyZDQ2YTRmIGxlZ2FjeS10cnVuaworMzEyMTUgMzU5OWY2NTkzZmU5MGMwYzk5YWFkNjgzZjYwOWM0OTBlMWZiM2E1MCBsZWdhY3ktdHJ1bmsKKzMxMjE2IDIwYjgwM2NmMjE5ZDA5ODRmZThhNmE5MTNlM2I1ZjcwNmU2MDZhNGUgbGVnYWN5LXRydW5rCiszMTIxNyA0YzdiMWI3ZDdmMzExMTY3ODY2OTBlMTg3YzZiZDNiMDM0NmZlZDRmIGxlZ2FjeS10cnVuaworMzEyMTggMGVjMzg5Njg4NmU2OTZhNzg5ZjBmZmI5MzMwZDM2MmExZWU0ZGNiYiBsZWdhY3ktdHJ1bmsKKzMxMjE5IDhmMzc4MzVjZjRhNDExYjQyZjAxY2RlYmMyZmZiMzI0ZDA4OTIzNDcgbGVnYWN5LXRydW5rCiszMTIyMCA5YWI5NzFjZDE5NjU3MjRhZjBjYTg4MzM1NmU4NDhhYWVkOTA1NzQxIGxlZ2FjeS10cnVuaworMzEyMjEgNjNkNjM0ZWQ5NDVjYzAxZTg4NzA0ZWVlZDY3ZDI1ZmFmMGIxMmFiNyBsZWdhY3ktdHJ1bmsKKzMxMjIyIGFjNDUzYmIzNzBhMmU5YzcxYmE4ODMwNDlmZTdiYmQ0MTg0NWFmYTQgbGVnYWN5LXRydW5rCiszMTIyMyA3YzRkZGEwYzE0NWYwNDAxYjU1ZTBhMWE2YzQ3MTZkN2ZiOGQxMmNlIGxlZ2FjeS10cnVuaworMzEyMjQgMWEzMDBmNDc1MzMyMDVjMDg2NjVkODQxMDBiNzNhMGE0ZmM2ZDNjZSBsZWdhY3ktdHJ1bmsKKzMxMjI1IGViMjg3ODk0MDkwNTg2MDRlNDdjYmI2ZTFiZDYyZmM3OWQ4YmMxNDIgbGVnYWN5LXRydW5rCiszMTIyNiA0MzE0M2Q0ZGQ2YjFkNTEzYjEyZTg4YWIyY2JhMGExMjkxMjg1ZWMzIGxlZ2FjeS10cnVuaworMzEyMjcgMTg2MTMzNWU3OGFhMTE2YzdkMzk4MDI0ZmQ0Y2Y2MGUzZDc0NDhkNCBsZWdhY3ktdHJ1bmsKKzMxMjI4IDBmY2E2NWEwOWYwNjI4MjhjNWU1OWE4MTY4OTMzOTYxOGJjNzdjZTIgbGVnYWN5LXRydW5rCiszMTIyOSA2MTRhYmJhNWI3NjI0ZmMzNTdmODg1NzY2MDlkYzkyYjEyYjRhOGZiIGxlZ2FjeS10cnVuaworMzEyMzAgMzc5OTlmNjkyNGI0ZTU1MzI4ODJmZWI5ZTBjZGVhYzM2Y2YxZWIzZCBsZWdhY3ktdHJ1bmsKKzMxMjMxIDg0ZjJjNDM4YzNmNTJiYTE4ZWYzMmY5M2Y4YmVmNGFlYjNlNjRhMDggbGVnYWN5LXRydW5rCiszMTIzMiAwNDI4ZDU5MDY5YTk4NDEyN2RmNjdiMmU3OTFmMGE5NjA0OTMzYzU0IGxlZ2FjeS10cnVuaworMzEyMzMgYzhjNzgxNmQzYTJkYTZlMzA5NjQ0Y2JlMDFmNzQzYjU5YmQ5OWU4OCBsZWdhY3ktdHJ1bmsKKzMxMjM0IDBmNjczMWQxMjZkZWIxOGMzN2VkNzY5YWYwNWM0NjM1YTRmOTViNzcgbGVnYWN5LXRydW5rCiszMTIzNSA1MzdiZmNlMmI3MzAzZjFhZjFkNjA4N2E1MTI2YzdjZmE4NmZmNmMwIGxlZ2FjeS10cnVuaworMzEyMzYgZTBmYTUyMDY3ZGJlZmI4MjczZjdiMmI4ZjE5Y2NhZTQzZjYzNjI5MSBsZWdhY3ktdHJ1bmsKKzMxMjM3IGY4N2I2ZDE2YmFlODVhNzlmZmUxNTBhYzE2MmJmZmNkMTM3YjBmNGUgbGVnYWN5LXRydW5rCiszMTIzOCA5YzNjOTkzZTliOWNmMjMzNGFkMjNkZWE3MzNkZjEwOTk4NDBlMTY1IGxlZ2FjeS10cnVuaworMzEyMzkgZTRmZTE2OGUzNWYxNDNmYmNhNTJlZTBjOTQxZTAyZWQ5OWFhNjMyMSBsZWdhY3ktdHJ1bmsKKzMxMjQwIDAwMWNmNzRkYWM1MDFhOWU2NTNkMzM1NzIwYzdiYWIzODdkZWJhZWIgbGVnYWN5LXRydW5rCiszMTI0MSAxNjg1NmM5NTE0ZTA1YTg4NDZkNGRkNjU0NTZlYTk3Y2FhN2U1OGM3IGxlZ2FjeS10cnVuaworMzEyNDIgYWFkZTRiYzEyNWY4ZmYyOTI0ZTRmMzU1OWIxYzY4NDJjMmZlZGE5YiBsZWdhY3ktdHJ1bmsKKzMxMjQzIDc2Mzc2ZTVhZjM4OGQwMTkyZWE5NGJhMGQzNmIzYjdjODJmNDNhZDcgbGVnYWN5LXRydW5rCiszMTI0NCBlM2I1ZjMyMWVlYmIwM2Y0YmVlNTA1MmU4NTExNjZhMmViNjdjMTg2IGxlZ2FjeS10cnVuaworMzEyNDUgNTkzNWI4MjQzZDc0ZTRmZjE4ZGQyNTQ3OWYwYTlhZjQ3NmI3MTAwNSBsZWdhY3ktdHJ1bmsKKzMxMjQ2IDQxMzEzZDIwZDFkZGUyNjhhYmUzOGNmM2VkMzUyMzk3MTE4ZGFlNjEgbGVnYWN5LXRydW5rCiszMTI0NyA1MjJlZGQ1OTFkMmNmMTM3NWJhNDI3NWQwZTM5NTE5OTNmOGUyMjBmIGxlZ2FjeS10cnVuaworMzEyNDggNDc0Y2JiZGYwMGNlN2Q2NDQ3OGU4MDUwOWFlYTcwYTg3M2E1OGI3OCBsZWdhY3ktdHJ1bmsKKzMxMjQ5IDIxMjgzYjZlYTdmMWE2ZGZiNzA4NjVmMmIxZmYxMjZhMDllNDgyMTggbGVnYWN5LXRydW5rCiszMTI1MCAwNDM4NGY0MjkwYmFmNmVmYmM4ZTE5MWRjMmMxOWQyNDJjMDc0MjQ3IGxlZ2FjeS10cnVuaworMzEyNTEgY2FkMTE4NWVlZWY3YzE2OGFlYTFhMjljNTBiNzdkODE3YTkxMWNlOSBsZWdhY3ktdHJ1bmsKKzMxMjUyIDcyNjcyMTRmMDc4NTZiY2U3NDcxODYyYzVmN2YwODBlZjEyMzZiY2IgbGVnYWN5LXRydW5rCiszMTI1MyAzOTgyZjExNzY3OWVmYjgzNjhiOTgyZTYyYjc3Nzk1NjM5ZTgxYjcwIGxlZ2FjeS10cnVuaworMzEyNTQgZjJmMDZiNmVjZGQ3MWJkNzVmNDRhMjRlYzJmOGU5MmMxOTQ0YmJiYyBsZWdhY3ktdHJ1bmsKKzMxMjU1IDVlMzE1MjlmZGQ0ZmFmOTg2MWZkMmYxMzlmNGRhYzU3MDhjMDZlZjcgbGVnYWN5LXRydW5rCiszMTI1NiBkNTAyMTg3YjJiMDZlMDBhN2Y1YjdiM2VhMDZiMTg3NTllNzFjOWFiIGxlZ2FjeS10cnVuaworMzEyNTcgOGQ5MmFmMTQ0YzE2ZWM3ODc3MDM3YWEzOGNhZTQyMTI0NmE3MzdjYiBsZWdhY3ktdHJ1bmsKKzMxMjU4IDAzY2ZjNjM3YzM5MzU4ODJmMjNjODg3ZmYwMzQxZWJjMDE1OGY4OTYgbGVnYWN5LXRydW5rCiszMTI1OSBiNDY2YzVmYjRkOGVhYmNhM2FlZTAzYzNiMDBkZjdjYjA5ZDZjOGRhIGxlZ2FjeS10cnVuaworMzEyNjAgYzFlY2RkZTMyZjg2M2M0OGRjODA0M2M1ZjcxNjMwYTFjMTdjMGNlMCBsZWdhY3ktdHJ1bmsKKzMxMjYxIGZhOWY5ZTU3ZTk4Zjg2MDhjMjRhZWU5MzZlNDM5ZDdhOGM0MGFjZTUgbGVnYWN5LXRydW5rCiszMTI2MiBlNWUyNDJjZjQ2YjFjNGM3N2E1MjcwNDJiYTIwZTQwYzc3YjE5MjRhIGxlZ2FjeS10cnVuaworMzEyNjMgN2IyY2Q4MDBjMjI5NmQ0MmVjYTQyZjRkNTQxYzdjYTYxMjBkMjMxMCBsZWdhY3ktdHJ1bmsKKzMxMjY0IDMyZmI5NGE2YTRmZTliZWNjZTMyZWQ5MTZhMjE5OTUwNWViYWEwMGMgbGVnYWN5LXRydW5rCiszMTI2NSBkYjQxNmJkMThkNGY3OWYyZjhlZjAwMTFjMzUyOGQ2MmFlZWVjODUwIGxlZ2FjeS10cnVuaworMzEyNjYgNDM2N2Y4MDVkYjA5YzNmNjYwNjZjMDI3YjVlOTY4ZTA5ODQwODkzMiBsZWdhY3ktdHJ1bmsKKzMxMjY3IGQ4Yzc2NWMwOWQ4YzFhOGVhNjZiOThjNGUzYTE3NmE3ZTU4YTY1ZjEgbGVnYWN5LXRydW5rCiszMTI2OCBjZTM0MGZiNGI2MTQ5NTEyYjdmZGJiY2VmMjVjMzliYTczZDRhMGMyIGxlZ2FjeS10cnVuaworMzEyNjkgNGI5YjhkZjU0ZGU5YWQ4NTU0MjI0ZWFjZjY0NjdjYTNlODFjNTJhNiBsZWdhY3ktdHJ1bmsKKzMxMjcwIGRmNzQxMjdlMmM5ZmQxNTIxNTg5Mjk0NTJjY2EzODhhYTJiYTg5MGQgbGVnYWN5LXRydW5rCiszMTI3MSA5NTAzNjg1ZmI0ZTg4MDg5MjUyNjFlOGVlNmQ2MjcwMzhhYmZmZmI5IGxlZ2FjeS10cnVuaworMzEyNzIgYjMzMWU1ZTVjYzRhYmYzNTVkZWVlN2RlMDk3NTAwOTM1NDk3MWVmNyBsZWdhY3ktdHJ1bmsKKzMxMjczIGFiZjlhOTEyY2ZjZTljNWJiODBhNzk0ODBmYmYwZWQxYWEyYmI5MmMgbGVnYWN5LXRydW5rCiszMTI3NCBjNDk2MzgzMDVhMjhiMGQyODA2ZjJhNDc0YTkxYmQyZGY5ZjRiYzg3IGxlZ2FjeS10cnVuaworMzEyNzUgODUzNTkyMTcwOTFjYWFjMmJmYjRiYTQyYmFhNzY2MDk2MWQ4MTI3MSByZWxlYXNlMjItbWFpbnQKKzMxMjc2IDk0MWRlNzkxYjE3YWViMzI3ZGYwZDJjM2E2ODY0NGQ1NjVkOGNkMjAgbGVnYWN5LXRydW5rCiszMTI3NyA1OWFlNDFlMDRmZmJlN2ZjN2I4NTY0ZTQwNzg1ZDIyYTI3ZjNlNjQ1IGxlZ2FjeS10cnVuaworMzEyNzggOWY5NDAwOWIxYWUwY2U3OGFlMjRiMTZkMjRhMmZiNmFhN2Q4NzBkOSBsZWdhY3ktdHJ1bmsKKzMxMjc5IDQ3YTY5MTVkMWMzNmI0YjM5NjNmYzkzNDdmZDkzMzZkNjdkM2RmN2MgbGVnYWN5LXRydW5rCiszMTI4MCBjN2NmMWI1ZDQ3MWI3ZTdmM2UyZWZlNDQ0NzBhM2RlMWI1Njk4ZTgzIGxlZ2FjeS10cnVuaworMzEyODEgNzg1MGZhN2ZiNmYxYTE0OWE4OTcxYjMyZmY3NGRkNWQ5MDU4MGUzZCByZWxlYXNlMjItbWFpbnQKKzMxMjgyIDMyOWEwMDc3N2UzMjBjYWU3ZWE4OGEzNDBiZjQ2ODZjNGMxN2IxYzAgcmVsZWFzZTIyLW1haW50CiszMTI4MyA2YjE3ODlhYzJmOTU4MTNlMTI4NTkzNDJlOTkzYmMxOGI2Y2M0ZDA4IGxlZ2FjeS10cnVuaworMzEyODQgOThjMzRjYzFjZjQwMGI2NGU0OGFmMmNiNDQ0OWUyMmZjYzNiYjY5YyBsZWdhY3ktdHJ1bmsKKzMxMjg1IDAzOTU1MTJjZTFiNWFiODljMWM2Njc2NzAwY2QyNDVmMDVmZWQ0MTUgbGVnYWN5LXRydW5rCiszMTI4NiAzOGQwNTA1NjE5NWM5YzE4N2U3ODZkMDdlZDk2ZjBkZGVkN2Q2OTY5IHJlbGVhc2UyMi1tYWludAorMzEyODcgYTRiZGU5MTUxMThjNjA1OTM0ZWNhYjBhYTUwZDNhYWEyNDZlMWM4NSBsZWdhY3ktdHJ1bmsKKzMxMjg4IDU5NDgyMzE3MTY2ZTZhNzczMjQ3M2FmZTIxYzZjOTMxYmFmMWExMTYgbGVnYWN5LXRydW5rCiszMTI4OSBjODE0OGQ3ZjBjOTg2ZTBmMGRlOGY2MmQwOTYwNzEzZTM1N2RjOGI4IHJlbGVhc2UyMi1tYWludAorMzEyOTAgYThhNjQ3ZTE5MjdiNTZlOWQ2NzcyNDZjNWZiZTViZTU0MjNiYzU0YSBsZWdhY3ktdHJ1bmsKKzMxMjkxIGY0Y2RiYTgzYmU1NjAyOGU2NWNmYWM5MzcwZGFhOTNlZmFmY2FkOWYgbGVnYWN5LXRydW5rCiszMTI5MiBmYzg4MTc0YzBjMGFkZGUzNmNhNjM4NjE5NDFhY2I0Y2RmYjIxODZhIGxlZ2FjeS10cnVuaworMzEyOTMgYTAzNmE1MTk3NjEwYzdjOTI5ZDBjOTA0ZjhlMjBjMmQ5ZjM3MzM3OSBsZWdhY3ktdHJ1bmsKKzMxMjk0IDdiNTA0M2MwZmY0NzY4Njc4NjAyZWM5MmYzOWQ2ZjczN2NmOGQ0ZjMgbGVnYWN5LXRydW5rCiszMTI5NSBjNWFkMGEyNDg5YjgyNzVkMGEyZDRkMDM4MzEzYzNkYTNlNWJlNmJhIGxlZ2FjeS10cnVuaworMzEyOTYgODJjYmYxMTc4ZTRmNGYyYTY2MDBmZDQ5ZTI5ZGJlMjlmMGZhY2FjNSBsZWdhY3ktdHJ1bmsKKzMxMjk3IDJkNTViZTNhOGVjMzRlY2IxOTEzMmQ0YmFiZjEwMTYxNGZiYmY3NmQgbGVnYWN5LXRydW5rCiszMTI5OCBkYzVlMWQ5MTgwNTU4MTM0ZDI4NmZiNzQ4ODJkODRlMjE5ZmE2NTE3IGxlZ2FjeS10cnVuaworMzEyOTkgMmMzODlhMDQ0OGE0ZmIwOGM2NDUyNmM3Y2EzYjhlYWQ0Nzc1MmVhMSBsZWdhY3ktdHJ1bmsKKzMxMzAwIDlmNzEzYzdiN2ZkOTEwMGU1NjUzODVjMDYzZmU3MTJmOTYzYjViOTkgbGVnYWN5LXRydW5rCiszMTMwMSAzNTY2Yjg0ZTY2YjllNzU2YjIzMDZhZGU2MjYwMmIxYzAyMzgyMjc4IGxlZ2FjeS10cnVuaworMzEzMDIgMjRlOGM3ZTUyMWY1OThlNWQwZWQ2NzAxYTQ5YzIwNDU4YjExZGYyOCBsZWdhY3ktdHJ1bmsKKzMxMzAzIGJmYzUyNDM3OTMwNzExODQxNjQ1ZWY3MmQwMzhhZTgxYTMxNTQ3OTYgbGVnYWN5LXRydW5rCiszMTMwNCBjMTg0MjI3MTZmZjI2Yjg4MTA1MjcyZTllYTg5Mjg1ZTAxMjIzNmVjIGxlZ2FjeS10cnVuaworMzEzMDUgOGJmZjNkMDk0NGJhNzY5ZmJmMjdiNGNhZWFkZjhiODQxN2ZmZTM4ZiBsZWdhY3ktdHJ1bmsKKzMxMzA2IDVmNjkzMWI4MzUyZTQxZjBlMWJiMzU1YmZiZmE0NzZmYTI0YTk1MzkgbGVnYWN5LXRydW5rCiszMTMwNyAxZGM2MzY2NTQzZDQ4NWU3NjRhZjU5YTUwM2FmMzAxOTg0YzQyZjc0IHJlbGVhc2UyMi1tYWludAorMzEzMDggZmM1YTYwYTYxZTMyZjUzZWRjMDg4ODMyMjA1YjlkZTdhZWQ4MDY1MiBsZWdhY3ktdHJ1bmsKKzMxMzA5IGRkMTEzMDI1M2YxMDNiOTZkNmFiZGZhZGQxZTIyODdlNDM1NjAyYzUgbGVnYWN5LXRydW5rCiszMTMxMCBjYzAxZmI2NTRjZTNmNTVjYjZkZTNlMTk0YzkzOTBkYzU3YmU5ODJkIGxlZ2FjeS10cnVuaworMzEzMTEgOTA0ZjBlNzY5ODIwOTA1ZWJjNzY1YzIwNGE3ZjUyZmIyMzgyMDRlZiBsZWdhY3ktdHJ1bmsKKzMxMzEyIGViY2FlZDc5NDhlODBlMWNjOTdmNmJmNTJhYjBjNWU4N2RmNjBjZDEgbGVnYWN5LXRydW5rCiszMTMxMyAyMTAwMTgyZjc0ZTM4YWM1NWY0MGI0NDMzN2ZmZGY3NzE3MzZjOTllIGxlZ2FjeS10cnVuaworMzEzMTQgYzIwZmVjYjVjYzljNTZlMzdmZTY3Zjg4OTc4ZjkzNTJhMWY3YmNhYyBsZWdhY3ktdHJ1bmsKKzMxMzE1IGYzNDQ0NmZhMjE2ZTVmY2MxMzcyYTQ1YWNmNTkyNjA1ZGI1ZDhmN2MgbGVnYWN5LXRydW5rCiszMTMxNiAwYmRmZDY1YmIxMjI1OTMxMDljOTc2YjEwYTZhMzAyNmE5MTc5YWVmIGxlZ2FjeS10cnVuaworMzEzMTcgMzliMWJhYzg5MzY1ZjgyMGNkMzkzODJmNGI5NzczM2RhODQ0MjMzMSBsZWdhY3ktdHJ1bmsKKzMxMzE4IGYyYjQzMTM2NGY2ZmNiZjBmYTQyMjMyY2QxOTRkZTI0MjgzMDlmZDIgbGVnYWN5LXRydW5rCiszMTMxOSBiNjUwYTU0YTc2ZmRhZGFlYjdlMTUzMWU0ZjJlMmYyOGU2MTQ0YmMzIGxlZ2FjeS10cnVuaworMzEzMjAgOWE2MDU0YzZkNDZmYWI2ZGIzYmZmMmY5OWRhNzhlNjE3NzdhYjEzOCBsZWdhY3ktdHJ1bmsKKzMxMzIxIGI1NmYwMGVjODA4MzEyNzg3YmUyMmUyZjhhYzUwNDczNTU5NDllZTQgbGVnYWN5LXRydW5rCiszMTMyMiBmMDQwOWQ3NTRiOTM3N2VmYmNiOWZlNWRjMTZlODE1NDRlY2EwMzdhIGxlZ2FjeS10cnVuaworMzEzMjMgZDJiMDFjOWRmZjE2ODM1YjllYWY4MTk5YmRmYTBlZmM5YmY4MDkwMiBsZWdhY3ktdHJ1bmsKKzMxMzI0IDIwNDJlMjA1MWQ5Nzg0NzU2Mzc1Nzk5ZTdhNmNkYjNlMTUyYTI4ZDggbGVnYWN5LXRydW5rCiszMTMyNSAwNDAwYmE3OGE4OTc5YTRmODg5ODA5NmVkNDM4YTc2YWIzOTM4MWU2IGxlZ2FjeS10cnVuaworMzEzMjYgNjE5NzNkNWY2ZTI1M2M4OTdiODk3NjEwNTBkNzc1ZGI0Y2IxZTlhZCBsZWdhY3ktdHJ1bmsKKzMxMzI3IGU2MjA5OWM2NWEzYzNjMWUzNDk0MDE3YmUxZWFmMmFiODVmMGIyNjcgbGVnYWN5LXRydW5rCiszMTMyOCBiMDUzOWE0NTA5MTcyNTBjYzZmNWUxZmIyYjVmNjI3NzZlOTc3MmYzIGxlZ2FjeS10cnVuaworMzEzMjkgMzYxMTk3NmNiMTc0YTVmOTUzNDlkYjVhNzZjMTlmZmRkNjM3MjY3MCBsZWdhY3ktdHJ1bmsKKzMxMzMwIDBjN2U4YzNmNjQyZjYxNWE1NzJhNmNhNDQ1NjIxMDhiZDNiZWRiODAgbGVnYWN5LXRydW5rCiszMTMzMSAzNzJlMzQ4M2QzMjc1NDI4MWM2MTc1MGFiMGVjNmZmOTcwMjhkOWVmIGxlZ2FjeS10cnVuaworMzEzMzIgYzdkZjIyNWU0ZTRhNTc1MThkM2YwNjcxMzc5MzBjODAwM2E4MjU2MiBsZWdhY3ktdHJ1bmsKKzMxMzMzIDhkMWIyNzJjOWU3MWMyNDI5NGRiYzc2ZTc3ODM5N2M4OTk5MDY2ZTUgbGVnYWN5LXRydW5rCiszMTMzNCA5ZWM0N2U2NTExN2QzOWRhYTM0MzRmNjliNmI3ZmIwNWQ1ZDgwZTY5IHJlbGVhc2UyMi1tYWludAorMzEzMzUgZTg4NzhjOGY1NGRmNWQ1ZTExYmE3YmQ1MDdkNjNjNzA4MjA2MDQzNiBsZWdhY3ktdHJ1bmsKKzMxMzM2IGI5NWI5YWJiOWJmMzllNTcxZTczNmUzMTZlMDU1Zjg1OWRjYWU5NDQgbGVnYWN5LXRydW5rCiszMTMzNyBkMmU3ZjQ2OGYyMjRlODEyZWQ1M2ZlZjk3ZGViYTI3MTI4NjY0NjUzIGxlZ2FjeS10cnVuaworMzEzMzggOGQ2ZWUxNTg2NmIyMTZkNDFhYjlmMDBiNzYxODJiZThjNDE5MWY4MiBsZWdhY3ktdHJ1bmsKKzMxMzM5IDU2NjNlMGM4MTg2MDJmMTg0MGZiZTUwNTZmYzk0ZDBjMWZmOWQ4YWUgbGVnYWN5LXRydW5rCiszMTM0MCA0MjM5NmE3ODZmNTkzMzJkYzI0ZGQ0NzY1NmJiOTNmYjlkMTFlNmU0IGxlZ2FjeS10cnVuaworMzEzNDEgY2QwNWFmNzAxZTVkNjViYjcwMjFkYmZjYjVlMjVmOWJjYmUwZWUwOCBsZWdhY3ktdHJ1bmsKKzMxMzQyIGY2Yzk1ZjkxMzhhZDM3MmQ5MTI4NjMwNDdiOTliZTFmMjFjYzlkZjcgbGVnYWN5LXRydW5rCiszMTM0MyA0OGRjNGE1OWE1MGVmODZlMWEwMzBkNDM2NTkyZjUzYjgzOWM2MzM5IGxlZ2FjeS10cnVuaworMzEzNDQgY2IxZWVhZWI3NGEwNjYwNzg5M2FlZWU4ZDQ2MzhkNzMwYTU3ZjMwMyBsZWdhY3ktdHJ1bmsKKzMxMzQ1IGZhZmZiMTFmNTRlOGQwYTRmODc5NWM0MjlkNjExMmI1OGQwNDA0ZGUgcmVsZWFzZTIyLW1haW50CiszMTM0NiBiZjA4M2UzNTE4NWY1NDMwY2MxYmU1ZGVlMzI3Yjk2MTQzOTI3ODBiIGxlZ2FjeS10cnVuaworMzEzNDcgNTlmYmFlMzNhMGY5ZDdlNWRlN2IyMGJjMjk1ZWY5MzhmYWM4ZmRlYyBsZWdhY3ktdHJ1bmsKKzMxMzQ4IGVlMTBkN2U3ZjgxOGNjNDNiZmQ3YmM3Y2I0MzQ3YmZjZjUzYjlkZjggbGVnYWN5LXRydW5rCiszMTM0OSBmYmM0NWJlYWYwMzQ0Y2ZkZGNkMzNlNTdjMWE4NjFiNTQzYzk4MTlmIGxlZ2FjeS10cnVuaworMzEzNTAgYjgwNGVlNWJlYjQ5MjM5ZGU4MDMzMmE5MzExZjFiMjZmMTQwM2RkNSBsZWdhY3ktdHJ1bmsKKzMxMzUxIDE5YWMxMmFjODA0MTUzNTNjOGZjMmZkYjBiODNhYjIxMWEwYmNjYzggbGVnYWN5LXRydW5rCiszMTM1MiA2NTFkMTEyM2VkNmUzNzIyYTNhYWZmMDJhOWU5YzI0MDFjOTYxN2QxIGxlZ2FjeS10cnVuaworMzEzNTMgYmRlYWNmN2IxNWM5NjZiYjUxNDE3NWIxODAwNzFhMGY0ZWU5Zjc0YiBsZWdhY3ktdHJ1bmsKKzMxMzU0IDAxMWY3MzQyNThkYjliYmViNDcyMGMxNWM0YWViYjc2ZGMyZjg2MWQgbGVnYWN5LXRydW5rCiszMTM1NSA3ZGZmY2M0OThjNDU4MzFiNmNiYjQzNzA0YTZmZThiOTNlNjhmN2UxIGxlZ2FjeS10cnVuaworMzEzNTYgYzM3N2M1NmVkZmM4ZDM2YjA3N2NkMzUwYjczZWFlYzE3OTY3YjNmNSBsZWdhY3ktdHJ1bmsKKzMxMzU3IDZiYTk0MGNkOTllZjk4MzFjNjIwNWE4NjY3MTY5MjMzYjU2ZTgwNmEgcmVsZWFzZTIyLW1haW50CiszMTM1OCA0YTAyY2E2YmRiNmY0ZjdjY2M5YzdhMjQ3NzM5Y2U5N2RhZTZiMDRkIGxlZ2FjeS10cnVuaworMzEzNTkgYmY5Y2EwODZiOGFhNjI3MDQyYTI3OGRiYTc1NDNiNDliZWNhMDdkOCBsZWdhY3ktdHJ1bmsKKzMxMzYwIDZiNTY5NjU0MWJhNGVmNGE5M2U1ODI4NGY4YjAzNjE5N2M5MGY0NzIgbGVnYWN5LXRydW5rCiszMTM2MSA3ZjE3MWY5ZGI4YWZlNDg0MDVmMDhjNDJhZDAzNTc1YTk5MjMxNWJhIGxlZ2FjeS10cnVuaworMzEzNjIgNTIzZWZkNzczMjYxYTY3MmFhOWZiYmFiZWJmNWM4M2Y2ZTg1MzZhNSBsZWdhY3ktdHJ1bmsKKzMxMzYzIDk0YmQxMWIxMWRmN2Q1ZmRiMDc1MThhYTY5Mjk3N2ExMDk5NTJkZDIgbGVnYWN5LXRydW5rCiszMTM2NCA1ZDJkMjRhNzM4MjU5MmQwMTNmZDlmYTI1NzNhZjA1YmVjZGEyNjgzIGxlZ2FjeS10cnVuaworMzEzNjUgMjIxZWFmNzgxNGY0NGI2MjkwNjBiYjJiZGIxYTMyYmNhNDhlNjAzNCBsZWdhY3ktdHJ1bmsKKzMxMzY2IDEwMjU5MTIyYmY1ZjJkMTM5YWU2Nzc0OTdjOTc1MTk2MGRmMmI5M2MgbGVnYWN5LXRydW5rCiszMTM2NyBiNTE5NzBiYTIxODA2MzMwOTQ1Mjk2MmJkNmFhYzVjNWE5ZGNhMDFjIGxlZ2FjeS10cnVuaworMzEzNjggNTAxNzNlYTFmZDQ0MDcxNmE5MDAyODU2ZDk5MTRkNDc3ZjBkZDc0NiBsZWdhY3ktdHJ1bmsKKzMxMzY5IDE1YjAzMTc0ODExNmMzNjhjNWJkYjMwYzM2N2MxNzBjOWM4ZTI4MDIgbGVnYWN5LXRydW5rCiszMTM3MCAzMTYwZDMwNDE1MjE5NGNlMDg3ZDhjMjEyOTY5ZWI0MDM5MGYyNTkyIGxlZ2FjeS10cnVuaworMzEzNzEgMWMxMjk5YmMzM2Q2MDcyNzZjYjMyNDlmNjQ4MWJmMWNjNDg4OTc2OSBsZWdhY3ktdHJ1bmsKKzMxMzcyIDIzZjZiMGQwMWJjNmFkNDM0Y2I2MDk4ZDllNWRlMzJhNmRjYTZlYWEgbGVnYWN5LXRydW5rCiszMTM3MyBlNGRiZjBmMDA5NWJlODZjZjM1MWY3NGJhMWRkNjRlNzY2OWNhMzJjIGxlZ2FjeS10cnVuaworMzEzNzQgZGFhNDQ5NWNmNjFhYjE0YzQ1ODYzY2FjODJmOTQ2ODIzMGI5ZmYxOSBsZWdhY3ktdHJ1bmsKKzMxMzc1IGU5ZDcxMDJmODI3ODBmZmJlMDIyOTRhMWM0ODk2MmIxYzYxOWE4MTAgbGVnYWN5LXRydW5rCiszMTM3NiBlMGRhNDU3N2FhYTYyNDE1OTY3YjU2ZDI0ODM4NGE4YzM2ZmVlNmU1IGxlZ2FjeS10cnVuaworMzEzNzcgY2IyYzNmYmJhNzJlZTc2YmZlZTE2YzUwNWNkYzliYjhmNzllNjgxZCBsZWdhY3ktdHJ1bmsKKzMxMzc4IDNlYjAzNzZlOTNlODQyMDY1MGI0MzMwY2I0MzRkZTk1ZjFkMmIyYzkgcmVsZWFzZTIyLW1haW50CiszMTM3OSBjNWRkMDc3ZGUwZmM2NDZhN2UxN2RkMzI3MTkzMjk4Njk3YTIzMjRmIGxlZ2FjeS10cnVuaworMzEzODAgN2EyMGJiZGJmZjM2ODJmN2Y2NjUzZDViOTcwMjc1MTM4NTQxOTMyNSBsZWdhY3ktdHJ1bmsKKzMxMzgxIDRiNzVhMGI3Njg1NzE5YmY4YjNlMTMyNDRmOTdkYTU5YzkwMjZmODEgbGVnYWN5LXRydW5rCiszMTM4MiA1NjIwYjA3ODYyNzExOWI2OWI2ZDAzNGY4NzVjNTJmOTVlYzMyY2QyIGxlZ2FjeS10cnVuaworMzEzODMgODFhZmNhNzQ3Y2FhNWMxODZlZDAxODc5ZTYyMDc5YjgyMzVmOTY5MiBsZWdhY3ktdHJ1bmsKKzMxMzg0IDAxNjBmZmNiMTllMzM3YmYxM2I4MjljNTI3MTFiZWZkMmFkMzJmZWMgbGVnYWN5LXRydW5rCiszMTM4NSBjZDEwZmE3MjFhNTEyYWM4YjM4MmUwYjdlM2MzMzc3NGU2YjQwZTQ0IGxlZ2FjeS10cnVuaworMzEzODYgYTg3ODA0NzlkNGUwOTc3YzIyOGViN2Y4Yzc4MjY5NTY5ZThlZWFkZiBsZWdhY3ktdHJ1bmsKKzMxMzg3IDk0NTNkOGNkZDAxZThmN2MwOGI1MDUzNmFjYjA4OWZjYjZkM2YxODIgbGVnYWN5LXRydW5rCiszMTM4OCBlN2NkMDg2MWMyNzNiNTYyNjRjYjdjYTI1ZTdlY2MzZDYzMmNkYzRlIGxlZ2FjeS10cnVuaworMzEzODkgMzg3NDYzMzdhZTZlMDhlMTUzODZjNTQ2MzJmZjliMzgzNmVhM2QyMCBsZWdhY3ktdHJ1bmsKKzMxMzkwIGY4NDQwYmI4ZWRlNWQxOWY0OWZjMmY2ZmVhYzVlYWZmOTIzYjc4MmQgbGVnYWN5LXRydW5rCiszMTM5MSA4M2JiNmM5ZGQ3OGMwYzYzYmM1MTFkOTQwOTA2ZGFlYTEzZjlmNTA1IGxlZ2FjeS10cnVuaworMzEzOTIgZDE5NjYxZTE5OGY3NDcyYjYwMzYwZWRlYjQ1ZmU4YmU3Mzc5MmUzZCBsZWdhY3ktdHJ1bmsKKzMxMzkzIGI0ZWIzNDM3MmJkYjVlNzEyYzdiNjQ4ZjAzOGNhZDIwZmVkNmI3NGEgbGVnYWN5LXRydW5rCiszMTM5NCA2NTQ5NDQ2OWFkM2VlZmRlMjRkYmM2MmNmZDIyMmI3NWY2NTc0NTY5IGxlZ2FjeS10cnVuaworMzEzOTUgYmJiYmEwZWU2MWZiNmYyZjYwODQ2NjM4NGFhOWJhZTgzOTlmZDZjMCBsZWdhY3ktdHJ1bmsKKzMxMzk2IGU2Y2Y5NTU3ZGU0MmE4OTljOWY5YWI1NDc2ZGYzNzMyZmMwZGU4OWEgcmVsZWFzZTIyLW1haW50CiszMTM5NyBhNTIxMzdiODhlYjNjZjY0ZDliNjVmZDEwY2I1Y2NkOWMzZTdhYTU1IGxlZ2FjeS10cnVuaworMzEzOTggODcwY2YxNGFkZDJhZGJjNzA2YTQ5ZDQ3YjM1N2FlZmUwZDlhN2ZjZiBsZWdhY3ktdHJ1bmsKKzMxMzk5IGE5Yzk2YmI0Njk1M2JkZThiMTRkN2QzMjhjNTYyZWQ5MGE5MGVjOTAgbGVnYWN5LXRydW5rCiszMTQwMCAxMDBmYjY4NGNmM2U1ZjUzNDNjYTBiMDRiNjQxY2NmNTMwZWU2ZTJmIGxlZ2FjeS10cnVuaworMzE0MDEgMTFlNjEyM2RlNmZlZDZmZjkwNjVmYWVkOWI3MGE0ODlhY2ZmZmFhMiBsZWdhY3ktdHJ1bmsKKzMxNDAyIDg4YTQyYTdjMjM4YTY0ZTc5MDI1ZWNjZGY0ZTU4YTE4MThlYzQ3YWUgbGVnYWN5LXRydW5rCiszMTQwMyA2YWY3ODBlMDg2MmQwMDljNjgwYWUwODk0MDQ1ZDY5OWM1OTEzMjA3IGxlZ2FjeS10cnVuaworMzE0MDQgYWJkZWViODE4YTlhMDdjNDEzNTYwZTE1MzljNDYzOGY2YjliM2JhYyBsZWdhY3ktdHJ1bmsKKzMxNDA1IDg3ODllOTgyMmFhNGM5NzFkZjFmOGVhYzYzYTEyN2Y0MzYxMTlhY2YgbGVnYWN5LXRydW5rCiszMTQwNiA4YTZjNDU5MTBlYzkwOGQ1NzgzNjQ5NmJkMTNhN2M4OGU4ZTdjY2U2IHJlbGVhc2UyMS1tYWludAorMzE0MDcgYmU3NjgzYTZmNTIxYzVhNmQwMjgzYzVmNzRmMTM2NDU3YTJlYjRhMSBsZWdhY3ktdHJ1bmsKKzMxNDA4IDg4NGZiNTU4ZjJiOTFkMGJkMDIxNjdmYTNhYWRiNjZjYWNjODc3MGUgbGVnYWN5LXRydW5rCiszMTQwOSA1ZmVkMTE0MmZkMzRiOTA2NmE0NmYxMzc3OTkxNjc4MTQxZjRiOWJjIGxlZ2FjeS10cnVuaworMzE0MTAgMTQ4ZDhjMGI5NjQ3MjMzOWE1YjI4NzkxYWY0OGRlYzg2YjgyMzA2MSBsZWdhY3ktdHJ1bmsKKzMxNDExIDQ2NjU5Njc1ZDdmNzkyMDljZmRlNDYwZjU1YWE5MTIyZWMwMmM1YWQgbGVnYWN5LXRydW5rCiszMTQxMiA1MjBhOGMwYzlhMjVlYzhiNzFkMzdhNDVjZDA5MDJmZDY2NDFlZjYxIGxlZ2FjeS10cnVuaworMzE0MTMgMjA5NGUxOTlmZDU1NjMxZjBjNjJmMTAwN2M1MTg2NDM0ZTUyM2Q5ZSBsZWdhY3ktdHJ1bmsKKzMxNDE0IGVhY2Y5Nzc1OTAzOGMzNTkyZDgwY2U4Y2RiMDMzNDBmYTU2NjdlYzIgbGVnYWN5LXRydW5rCiszMTQxNSAyMDZjNWUzYjViZTc1YjE5Y2VlY2ZmZWRhNjliZmQyZDliYjQxY2UyIGxlZ2FjeS10cnVuaworMzE0MTYgY2VkZjllZmE2OGY4MTRmMzhhMzEyNzk1NWEzNzI5ZDMwOTU0MTQ3MyBsZWdhY3ktdHJ1bmsKKzMxNDE3IDMxZTg1ODFiY2YyNTkzNzhlOTVhZjI2ODlmNDA1MmU3NDk4Y2M4MjcgbGVnYWN5LXRydW5rCiszMTQxOCA1N2QwYmFkNzNjOGU1YTI0YmNmMTU0MWVhMGYyNjBiMjJlMWYwNDI0IHJlbGVhc2UyMi1tYWludAorMzE0MTkgZTdkNTlkYjY4MzlhNzE5YWE1Zjc0YWViNDlhZDlmZTQyMDJjODRjZCBsZWdhY3ktdHJ1bmsKKzMxNDIwIDVhZWUxYzI3MjkzOGQ1MDUwM2IwODRlYzRkMzgyZWQ1MzMwNGI4YzEgcmVsZWFzZTIyLW1haW50CiszMTQyMSBkOGIwNjAxMmIzODE1ZjJhOWNmMGI0ZTg3NzQwNGQ5ZGU4OWJmNDA1IGxlZ2FjeS10cnVuaworMzE0MjIgYTc1OTA1N2VjZjFiMzIwNTcwNTA4YzZmOTliYTdlNWU5MWJmY2JiNyBsZWdhY3ktdHJ1bmsKKzMxNDIzIDY2ZmEyNDc3N2YwYWVmZDhjNGQ3OGNlOTA0M2EzZWNiMTFiYjVkODAgbGVnYWN5LXRydW5rCiszMTQyNCA3NDI4YzEyZjUwM2Y2ZDk2OWNmZDFjMjhiMzllMzk4ZDE0M2YyYTM2IGxlZ2FjeS10cnVuaworMzE0MjUgNGUzMWU0MDg2ODQ5OGE4YmFiOWM0YThlODE1ZTg5MzhjOGU5NzhkMyBsZWdhY3ktdHJ1bmsKKzMxNDI2IGNmMWVmY2E4MmIxODM3ZmIwYzNiNTk3ODAxZTNjY2UwMDNmNTJmZDQgbGVnYWN5LXRydW5rCiszMTQyNyBjMTYzZjk1YjMwMGM2NDlmOTA1NzE4YWFiODY4OTZjYTdjYTY2NWQ0IGxlZ2FjeS10cnVuaworMzE0MjggZDBmNGYzY2Q0ZmU0MWM4NTc1MmVhOWYwMjg1OTg3NGFiM2Y0NTFlMCBsZWdhY3ktdHJ1bmsKKzMxNDI5IDE5N2Q2NGRjMDRkYzI0NmY0ODcwYTQ4NGZmNDE5NzUxYTI3NWNmYzcgbGVnYWN5LXRydW5rCiszMTQzMCA1NWFkZjA4YTIxM2EyZDg0NjFmMTdmN2EyYmZiZGMxMTYzNzc1MjI4IGxlZ2FjeS10cnVuaworMzE0MzEgODFiMmJjYmZlMzliYjYwMDgzYmRkODdmMTg0OTIxOTZjZWEyNTE1ZSBsZWdhY3ktdHJ1bmsKKzMxNDMyIGU1ODIwYTE1MGQ4N2ZlODQzNGVjODBlZGQ0MGI4MzRmYzQ3MDVmZGMgbGVnYWN5LXRydW5rCiszMTQzMyA5YmRhY2NkOGE5MDhjMjMwMjE1MDA2MDIyYzk2ODk0MzcyM2Q4M2YxIGxlZ2FjeS10cnVuaworMzE0MzQgMjMzZWQ2Y2M4ZTE0YTcyNGVjNmY5N2M3YzhlOWQ3OGUzMDE1YWRhOCBsZWdhY3ktdHJ1bmsKKzMxNDM1IGE2ODJjZWM2Yjg4MGE0OTc0NzkxY2QwMGZlMGYxMmE2ZmE3MWQ3NDMgbGVnYWN5LXRydW5rCiszMTQzNiAzZTE2OWQyOTQzOTViODFkNGE4MDhmMDczMGVmOTZmMjU5MzIzMmM2IGxlZ2FjeS10cnVuaworMzE0MzcgMTc0NzQ5ZjViMzJmYWExODYzM2I2NjQ3ODgyZGUzZDJkY2Q3NGFjNSBhc3QtYnJhbmNoCiszMTQzOCA0N2I4Y2FiYWI3YjEwM2ZlY2I1OTRkOGNjN2QzYmY5N2EzZTkyMTMzIGxlZ2FjeS10cnVuaworMzE0MzkgOWI0MjMyMGYxZTBmYjA0ODc5YWMwZmM1Njg2ODg2ZjNiOGUzMDgzZCBsZWdhY3ktdHJ1bmsKKzMxNDQwIGIwZGNhOTJjMjk5YTVlOTYzZTRhMWViMzBiYTRkNTJjYjA5NmNlM2QgbGVnYWN5LXRydW5rCiszMTQ0MSA5NWI3NTA0NDZiYjk5ZDRhZDFhMDNmYzMxMTMxMjAxZGZjMmZmMDJmIGxlZ2FjeS10cnVuaworMzE0NDIgYzVlYmFjYmJhMGJlYzA1OTMxYTg3NjdhODZlZjNiOTIyMGYzOWI1ZSBsZWdhY3ktdHJ1bmsKKzMxNDQzIGNkYjFhYmMxYjQwOTI5YjgwMWExOTA0OTJiZGZhYzY4YzJmNTZlZjMgbGVnYWN5LXRydW5rCiszMTQ0NCBjN2Q3ZjM1MGU5NmM0NWE5NjhhNWY0YTg3MDk5MWI1ODQ3NzVmN2E2IGxlZ2FjeS10cnVuaworMzE0NDUgYTZkZmFiZjNiOTJiZDdhMzU1ZTg1YTEwNzA4MGYyMDY4N2FjOThmMCBsZWdhY3ktdHJ1bmsKKzMxNDQ2IDkzZDQ0ODcwZThiNThhMWVjZDEyM2Q2YWE5YmQ5Yzk0Y2U5MThkMjAgbGVnYWN5LXRydW5rCiszMTQ0NyBjMzQ2ZDA5NTc5MWQ3ODg4NTdkNjBmNGE1ZDgxOWYwZjI5NGYzMmE5IGxlZ2FjeS10cnVuaworMzE0NDggYmUzNzFmZmM0Y2QwN2ExYWU1MTEzYTdlYzU1MDVkOGZiOWRiMGU5NiBsZWdhY3ktdHJ1bmsKKzMxNDQ5IDRiNWMyZTAyNWM1ZWY1Zjg5MmRmN2VkOGRiYjRhNDMyYWY0NDdiNTkgbGVnYWN5LXRydW5rCiszMTQ1MCA4ZTc0MzJjZGY3ZDhmYzY1NGFjYmM5YTQxNjBmODExNjA3NjE1MTcwIGxlZ2FjeS10cnVuaworMzE0NTEgMjc1OWIwNDhkYTliNmY0MDlkYzE5YzA0M2MzZmQ4NDNiYjU5MDM1NCByZWxlYXNlMjItbWFpbnQKKzMxNDUyIGVmYzQ2NTgxMGUxZWRhYzlmZjExYWE4MjljOWUyYmMyZTU4MzA5OWUgbGVnYWN5LXRydW5rCiszMTQ1MyBlYzEwNTJlZjczYmE4OWM0NzNhNDdhZDMyOTM2YjlmYzA0YWQ3YmQyIGxlZ2FjeS10cnVuaworMzE0NTQgMzAxOGYzMWY2ODMwOTIzYjkwOGNmY2NlZjE4NTM2NjY1NWMzNTVlMyBsZWdhY3ktdHJ1bmsKKzMxNDU1IDJjNGFiMWRhNmViNDdlYTE4Y2E2NGY2ZGI4ODE2MjcxMWFjOTkwZjAgbGVnYWN5LXRydW5rCiszMTQ1NiBiZWRhY2E5ODUzZjkwNGNiM2I5YjQ4MTM3OGZkNDZjYzkzNGI0MGJkIGxlZ2FjeS10cnVuaworMzE0NTcgODRkMzA5YjY3NmZhN2I3NzEyOGI0OWEyY2EwMDNkMWUxZDIwMjc0NSBsZWdhY3ktdHJ1bmsKKzMxNDU4IGUzMWIzOTkzMGEzMTI4MzRlY2RiYzg3MzVmZDUwNDJmNzFmZDZiNGEgbGVnYWN5LXRydW5rCiszMTQ1OSAzZGEzMTc3OGVjZDcyNGY4YTE0MGZlNzc0NmQ0NDNkMWY1YTNhMjIyIGxlZ2FjeS10cnVuaworMzE0NjAgODUwYzBkYTEwMWI2M2ViYmViYzQ2YTJjZTg3NGQ0ZTg3MWVlM2ZiYiBsZWdhY3ktdHJ1bmsKKzMxNDYxIDJkNTAwNDliZDIxZGY3Y2FhMTFlYzJiMWQ1MDUzOWQ3OTk2ZTljY2MgbGVnYWN5LXRydW5rCiszMTQ2MiA3MGUyOWVmOWZhNjJmMDFkNGYzYjNmNzkyZTc1YzQwZWI1Nzk5YjE3IGFzdC1icmFuY2gKKzMxNDYzIGFjNjgzYWM2NzU5YWZjZmY1NDM4NGE0NzE3OTJjZmEwMzA3M2YwYTEgbGVnYWN5LXRydW5rCiszMTQ2NCA0NGYzZTMxNTkyOWI5ZTRkOWZkZjMzZGY5YWE5ZmMzN2QyMmRmYWQyIGxlZ2FjeS10cnVuaworMzE0NjUgZjY3YWI2YjY2NDU0MGI0MmQ3MGFhZDBmNGZlYTE3MDFiZmFkMjYwZCBsZWdhY3ktdHJ1bmsKKzMxNDY2IDg2YjUwNmRiZWExODAzMmZmMWNjMTBlNThjZjgwYTUwODg1MDRiY2EgbGVnYWN5LXRydW5rCiszMTQ2NyAxYWZhZmVkOWZhNzc1NWJjMzg2NTQzZGU3MDhlZjgyOTdkZjMzYTFhIGxlZ2FjeS10cnVuaworMzE0NjggOGMyMTFjY2RlMmI0YjRkOGM1NWJlMzY0YTRmNjBhZmQ3ZmE5NzIyZCBsZWdhY3ktdHJ1bmsKKzMxNDY5IGM5NDAxYTM2YmFlNzE0ZjBjZDVmMTQxY2QxN2Y0NjczMjZlYTU4N2UgbGVnYWN5LXRydW5rCiszMTQ3MCA4YzZjNzk3NzI3YTkzNWZiMDU3OTUzMWNlYzM5MGRmZjVjOTVhYTliIGxlZ2FjeS10cnVuaworMzE0NzEgMWJkNDg1NzE3NTY0NjI2MGI5YTQ1MTdhNzcyNjEwMTZiMDQzNThlMCBsZWdhY3ktdHJ1bmsKKzMxNDcyIDE0NDUxZGQzYWNiMDRkMWFkZDgxMWFjMTZkNGMwNjZiZGFmMmNmZjYgbGVnYWN5LXRydW5rCiszMTQ3MyA5MjU1ZmJkZTQzZjM2MmQxYzA0ZjM0ZGU0NjNlYjdhNzJmMGYxMDk0IGxlZ2FjeS10cnVuaworMzE0NzQgM2IzMGY2NjM2MmJlMDA1ODc5NDRhZTk2OWM2OTJiMGZhYzFlMjY1NCBsZWdhY3ktdHJ1bmsKKzMxNDc1IGE2OTYyZjUyZjIzOTgxYTRjMTg5Yzk0M2IzOGY4NDBiOThhMDE3OGUgbGVnYWN5LXRydW5rCiszMTQ3NiBiNTU2MGFlNGQ5NzFkZTA1NTMzMmViNzRjZjBmY2UwYjZmOTE0ZDhlIGxlZ2FjeS10cnVuaworMzE0NzcgZGFlNzlkNzgzMjA1Nzk2MDZjNWZkY2MzYjIzYzI1OWE0YzVjMjI3NiBsZWdhY3ktdHJ1bmsKKzMxNDc4IDBmMDE4ZGY5NzRkYmI5YzgxMTM5ODg1ZmYxZTAxNWM1YmNkYmE3NjggbGVnYWN5LXRydW5rCiszMTQ3OSBkYjFkNDU4NGE1ZTFjMTE1Y2IwODJhMjVmYzkxN2NlNDg2N2Q3OTU3IGxlZ2FjeS10cnVuaworMzE0ODAgYjRlZWIwYmJkZDQ4YjhjYjQ1YjdkMTQzZjFkMjdjN2RlM2ZhYTczYSBsZWdhY3ktdHJ1bmsKKzMxNDgxIDQ3YTc2NGU0M2U5MDE4NTNiZmU4ZjM0NjA0NmIzYTU4YmRlMGRlZTggbGVnYWN5LXRydW5rCiszMTQ4MiBiNTQwZTYwOGJiOGE2YmNiMTg0NjBjZTYxNWQ2NjQ3NmFmN2ExMjI0IGxlZ2FjeS10cnVuaworMzE0ODMgYWE4OGFlZjNhYjBlZWE4NDAzNzMzMWNhZDhiNzI2NzM3YmVhOGQ0MCBsZWdhY3ktdHJ1bmsKKzMxNDg0IDFlNzZhZTNjMTE1NGQ2ZWYxYWZiY2EyNjg3MmExYjMwZWY2OTgxYTUgbGVnYWN5LXRydW5rCiszMTQ4NSBmMzEwODk0MTA3Y2IxOTUzYTFiZDVhNzc5YmVlNmRiNTI3YmZhOTZiIGxlZ2FjeS10cnVuaworMzE0ODYgZjMzMTBkY2VmM2Y4YjVlMDg5ZjY3YzQzZmE3NDcxZTcwMmJhZGIxNiBsZWdhY3ktdHJ1bmsKKzMxNDg3IDcwZTE5NmFmNDc2ZDQ4ZWVjMzUxZmY2MTBiMDM1ZjJiOTBmOTQ1OWQgbGVnYWN5LXRydW5rCiszMTQ4OCA5MWZjOTYzN2U1NmEwOWMyMDMwZDU1MWNmZmVlZjAzNjIxMTAxMGJlIGxlZ2FjeS10cnVuaworMzE0ODkgZTA3YjIxZWEzYzQ1ZGRmNDQ5MzBlZmU5MWEwODE2MjhkNzM2MDFkNCBsZWdhY3ktdHJ1bmsKKzMxNDkwIGNjNGFkOWFmYTIxZDMzODgwZWUyZDIyMzJjY2VmNWJiMTZlZDRiNWMgbGVnYWN5LXRydW5rCiszMTQ5MSBjYjNmMTg5MDhjZWJlZTA1YjljOTE4NDIwMGY5MGVlNTY0MWE1ZjEwIGxlZ2FjeS10cnVuaworMzE0OTIgYWMxMDcyOWYwOTMyZDA5YWI5NzhiOTNkMzM3ODAxZmVlZDUzMGNhNyBsZWdhY3ktdHJ1bmsKKzMxNDkzIGUyNzM0MmE2NDE3MzdmN2UwMDQ2ODE3ZjFlNzJkYzk0YWQwYmY5OGMgbGVnYWN5LXRydW5rCiszMTQ5NCAyMjY0NjM0NDU2OTcyMDNhMjc1MDM1YmQwNmIzMjk2ZThjYzA4ODZlIGxlZ2FjeS10cnVuaworMzE0OTUgM2JhYWJkMDI3Y2M0ZDQxMjBlOGUxMjcwYjc1MDAzMmZlNjMzYTc4ZSBsZWdhY3ktdHJ1bmsKKzMxNDk2IDhkY2M1MjBkM2EyOTY3YTJiYmM1NjE2MWY2YjJjNmQyNWM4ZGNhOTEgbGVnYWN5LXRydW5rCiszMTQ5NyBiMjhkNGZkZTllOWZiOGYzYzhiOTBjZTkzZDg4NzkzNTRiZjJlMGM4IGxlZ2FjeS10cnVuaworMzE0OTggNDMzN2E4OTlmZDEzMjQ3ZjMyNDIxZTQxMzkxMmI1NmQxYTVlM2MyZiByZWxlYXNlMjItbWFpbnQKKzMxNDk5IDQ3Yzk0MjEzNThkZDA0N2QyOWMzMzIwNzUzOGIwYzg2NjUxZjE0NWEgcmVsZWFzZTIyLW1haW50CiszMTUwMCA0Yzg1ZGUyNDdlZWRiOTdmNDRjOTQ5ZmY4ZDM4NmM2NGUyMGVjMGFjIGxlZ2FjeS10cnVuaworMzE1MDEgZTBhOGMzMTE1MDA1ZTFjMzM5ZTkzNmE2OTAwYTI3YWNkNzVkZTNlYiBsZWdhY3ktdHJ1bmsKKzMxNTAyIDJlMGFhNjhkNDM0ZmNjNDA2YWRhOWZmNWEzOThhNzg2NTJhZGIwYTggbGVnYWN5LXRydW5rCiszMTUwMyA1M2M4MDI5MjcyMDJlODQyNzUzODQ0NmE0NTc5MzFlZTUzZDUwMjQwIGxlZ2FjeS10cnVuaworMzE1MDQgOGZjOTFmNTBiODYxNTA2NWQ2ZmNjZWU4ZmU4MzE4ZGZiN2Q4OTkzOCBsZWdhY3ktdHJ1bmsKKzMxNTA1IGQwZDI5ZGYyYjYzOTAwNTNkNWIzZGI0OTU5OTcwMzUyNTI0ZWE1YWUgbGVnYWN5LXRydW5rCiszMTUwNiBjYzk1YmI3ODcwZGM1NDdjMGNjOGU4MzVmZDc0MThlNjdmNzkxYTM1IGxlZ2FjeS10cnVuaworMzE1MDcgZDVlYTJiNjdiNWY0NDNmM2M2NTc1ZmNiZGZjOGE2MDI3NDc0ZWJhMSBsZWdhY3ktdHJ1bmsKKzMxNTA4IDBmZTMyMWU3OGFkMzFhMWJhYWJkOTY1ZDU1NzkxNjE3Mjg3YTYzNDAgbGVnYWN5LXRydW5rCiszMTUwOSA0Yjk5YTcwMWRlZmUwZWI3MGI2MzE5ODgxMGE3NjA0MjUxYmNiMGM0IGxlZ2FjeS10cnVuaworMzE1MTAgOTYzMjdlYzc2ZDllMDJiODQzMTE1OGQyNDYxYzE4Y2MzZTRmZDhhZiBsZWdhY3ktdHJ1bmsKKzMxNTExIGUwMWQ1ZGJiNjZhNDU5MDExZTE0Y2ZjODJiNDcwMzBjMzkyNzYwOWUgbGVnYWN5LXRydW5rCiszMTUxMiBlYjJhOTg0ZDM3NDczZWNkZTczNWQyNWJiZTk2NjhhYjYzMjRhMWJhIGxlZ2FjeS10cnVuaworMzE1MTMgMzg3YTQxMjJjYmQxZTY2YzJkYmNjNWNlNTMxOWViNmUzYjZiYzI0YyBsZWdhY3ktdHJ1bmsKKzMxNTE0IDllMGYyMjQyMjc3YmZjMWZjNDAyZjE0NjAyYjRhNjc3YWRmMTEwYWUgcjIzYTItYnJhbmNoCiszMTUxNiBjZWY3Yzk1ZTc0OGMxY2M2OGU5NGI5YWNiMzI1NDlkZmE5MzkyZmNhIHIyM2EyLWJyYW5jaAorMzE1MTcgNzY1MDE5NzU4ZTk1MTAyYTJiYWExY2IyMmEwMmJjNGQ4OWI5OTE2NCByMjNhMi1icmFuY2gKKzMxNTE3IDcyMWI2ZjE4MWZjYjlhOTQyMGJjYTg4ZDdjMGY1Zjg1NDc0ODIzYzEgcjIzYTItYnJhbmNoCiszMTUxOSBjNGI5MTlmYTBiZTNlYjk0ZjczYzc0OGI2OGRhYTViZGRmOTZmNTlmIGxlZ2FjeS10cnVuaworMzE1MjAgNDgwOWZiMGU4NjYwMTg4NGY4ZjNlMGNjNzU4NmM4NGJkNTdlMGJkMiBsZWdhY3ktdHJ1bmsKKzMxNTIxIGY1OTg3MDk3NjE0Njg2MGJhYmM1ZDM2NDg2NWU2ZDdkY2ZiZjE0NDggbGVnYWN5LXRydW5rCiszMTUyMiA2NTg2MDIxMjRkZjUyODIzYTY1OTJhNmQ2NThkYWVmNTA2YTFhYjdlIGxlZ2FjeS10cnVuaworMzE1MjMgMmM3NTE5MzZmNjk3NjdhN2FmNDM0OWQxZGNmZjcyNTNkYWU5ZWU3ZiBsZWdhY3ktdHJ1bmsKKzMxNTI0IGIyNmY1NzU4NDE0YTBmMTM1MDhmMGJhNDlhZWIzZTcyOWI1NzMyOTAgbGVnYWN5LXRydW5rCiszMTUyNSBlN2IyNmMzZjM1NmY1N2QzNTljNTUwOTNmNjkyZjhhNDY3NzQyNjFlIGxlZ2FjeS10cnVuaworMzE1MjYgMGIzZGIwZWRiMTUxZWMwMDdmY2QzZmI1MjRiZmQ3NjRjZjQ4MjI2YSBsZWdhY3ktdHJ1bmsKKzMxNTI3IDUzNjdjZDBlZWM0NzdjNzU5MGEzMGQyMGVlMTY5YWU0MDNmOTc3YWQgbGVnYWN5LXRydW5rCiszMTUyOCA0NDg5OTE4YTRjY2RiOTAzNjAyNGNjODNiMjc2YjhhOTk5YjA1YzhlIGxlZ2FjeS10cnVuaworMzE1MjkgYmVlYTRmMjFjOWYwNTdjM2IxMzlmZjk2ODBmNTgxNjI2MWIwZTgzOCBsZWdhY3ktdHJ1bmsKKzMxNTMwIGUyNjdlZDEwMGQ4NWZjYWFjOTU2YzA5MDI5OGYxMWI4MTMxOWM3M2IgbGVnYWN5LXRydW5rCiszMTUzMSBlMTFhMTc4YmI0NTNmYTQ0NzZkMTRhNWRkYjE2NjY2NDFkYzdjZDc0IGxlZ2FjeS10cnVuaworMzE1MzIgMTA3ZDk4ODkwMWEwZjkzYzQ2OGFjOTEwNTA3NjYwMTAxMjI4NzAzYyBsZWdhY3ktdHJ1bmsKKzMxNTMzIDllMzhmODE3MDkyZmVmMDkyYWRmN2FjNDczNGRhNmMwNzExOGZkNjkgbGVnYWN5LXRydW5rCiszMTUzNCBlMjdmNThhNTA3MzcwNDgyOWM3ZDliMTI3YTc5YTUzYTdhMjI5YjZkIGxlZ2FjeS10cnVuaworMzE1MzUgOGY3MDYwMmZiZWJiM2MzY2UxNzcxYTA0ZjkwZDAyMDQ2Mzg2OWMwYyBsZWdhY3ktdHJ1bmsKKzMxNTM2IDFkOTJjMTViZDBlNzI1ODkxMzdkY2Q2NGRlMDRiNDkzODlmNjFlNjkgcmVsZWFzZTIyLW1haW50CiszMTUzNyA3MzllY2ZiNWYxNWU4ODljMGZmMTE4YzhlMmVhMDRiMTg0ZjMyOTUyIHJlbGVhc2UyMi1tYWludAorMzE1MzggNzdiZWY2YWE0OGU1NWZiMGQ4NmE4YjE4ZDQzMzYyMjIwMzFhY2EzZiByZWxlYXNlMjItbWFpbnQKKzMxNTM5IDE2YjI1MDMyMjE3ZmY1MTAxMzZhOWNmZmJjNzI5MWMzMmRiNWNkNDIgbGVnYWN5LXRydW5rCiszMTU0MCBkOTJkOWI2YThhN2QzYzI2ODdiYjUxZWYwMjdiNGI1Yzk5NWE0MDdkIHJlbGVhc2UyMi1tYWludAorMzE1NDEgZWI1ZTI5NjE3MzEwOWQwY2NmMDk4ZmZhYjlmMTViNTA2OWRhZTU1NiByZWxlYXNlMjItbWFpbnQKKzMxNTQyIDVjZjA5MjFmNGI5NjI2MjVlOWRhZTJmMWExY2FmYzk1Y2M0YjU1NWEgcmVsZWFzZTIyLW1haW50CiszMTU0MyAyZGY5MjA0OWQ5MjUwMTdiYmI4NjAxNTJhY2Y3YWI3Njg0NGM2YjE2IHJlbGVhc2UyMi1tYWludAorMzE1NDQgYTRmOWQ5MWEzMjFhNzlkZjQ4Yjc1Nzk1NWQyNmQyMTQzMGY2YWEyZCByZWxlYXNlMjItbWFpbnQKKzMxNTQ1IGZlMTBlY2U4YmE2OGM0YWVmYTQ4ZDEzMzczNTc2MDdlM2FmOWUxN2QgbGVnYWN5LXRydW5rCiszMTU0NiA3YWEyMTYzODg5YWNmODdmMDY1NDkxYWRhODE1MDM5NDNlNWUyYTQ5IGxlZ2FjeS10cnVuaworMzE1NDcgMGViOTQ4MzY0OTkwZmI5OTE1MjRkYjQ2N2Y5NTFkMDY0YjM0ZTBmNCBsZWdhY3ktdHJ1bmsKKzMxNTQ4IGZhY2ZmNTIyZTc0NDJjZTAxZmE4Y2IzODBiNjUyYzVmZDEzOGNkMzcgbGVnYWN5LXRydW5rCiszMTU0OSA3MjlhMWMyZWM0ZThlMGZkYTJkZTUzYTNmZDdiYTE0MmFkZWRmNWNlIGxlZ2FjeS10cnVuaworMzE1NTAgNjEyODgzZWFmNTBjNmU3MWNhMTg3MDA4ZTZmNTFlOTlmOGViNzE1ZSBsZWdhY3ktdHJ1bmsKKzMxNTUxIDc5YWQ2MTU2ZDZjNDI0NDY1ODE3YzViYmU2ZjQ5NjhmNGIxYTQ2MzUgbGVnYWN5LXRydW5rCiszMTU1MiAwNTZmZmE1NTQ1MTdhNzg4Nzc3ZGVlYmQxN2IyMjQzMzdlNWViOTFlIHIyM2EyLWJyYW5jaAorMzE1NTMgYThjMGFmODIyODg4NDZlOGE5NWVhZmU2OGIwMDJmNDZlMzJmMWE3OSByMjNhMi1icmFuY2gKKzMxNTU0IGEyZTk3MDU4OGU1YmI2ODgwMmVhY2Y5OTI4MDAyOTA4YjNhZTUxZGMgcjIzYTItYnJhbmNoCiszMTU1NSBiY2UzZGYwNzVmMzc4MDkzYjI4MGY0ZjBmMzJiNTg0MWUwMzI4ZTFlIHIyM2EyLWJyYW5jaAorMzE1NTYgM2JiY2MzYmJhNTYwYzhiNDY3M2YzMWY4YWZkMWY4NmJmMmNkYTU2NCByMjNhMi1icmFuY2gKKzMxNTU3IGI4NDk0ODJjNzBjNmQ5ZjBiNTUwMmNjMmFlYTAyOTk1YmE5M2NmMjQgbGVnYWN5LXRydW5rCiszMTU1OCBmYWM3NjIyODNhYmNjYWYxMDI2ZmZjYzAwY2QwYmI3NTdmMDk4NjgyIHIyM2EyLWJyYW5jaAorMzE1NTkgMWU5MDc0NjJlODNhZGJjZjU0ZGJhNzU0ZWY0NDAxMGU2MGU4ZjlmYyBsZWdhY3ktdHJ1bmsKKzMxNTYwIDc4YzljNGEwMThjZDFhMDM4YjdmYWU1OTQzNGRjMTJhZjJhMWFiMzIgbGVnYWN5LXRydW5rCiszMTU2MSAzMmEwYzJmNDIyZjE4ZGU5MTY0ZTAzMDExZTYxMzc5OGEwOGEzZjNjIGxlZ2FjeS10cnVuaworMzE1NjIgMjFhNTBjMzA4ZGI0NTkyZWQwZjhmZDVmYTA5NDRjYWU0NGJmMzczOCBsZWdhY3ktdHJ1bmsKKzMxNTYzIDVkZmFmZjk4MDkxMDAxZGQ2ZjI1YWIyMGNjNzM0MWY1MGRlYjE5NDYgbGVnYWN5LXRydW5rCiszMTU2NCA4NzJjNmYyMDI4ZmM0YjdmMzZmZmZmNWMzNWNkNWVkNmY1OGQ0YjMyIGxlZ2FjeS10cnVuaworMzE1NjUgODA4NDM3YjgzYjE1MTg2NmFkMjNiMDk4ZTViNWQ1OTMwYzUwNDM2YyBsZWdhY3ktdHJ1bmsKKzMxNTY2IDYxZmE2YjU1YzFkZTJkNjVhNGU2MzMyZDFhODk4ZWUwNWNjYTFjYTUgbGVnYWN5LXRydW5rCiszMTU2NyBlNjNmMWVjY2QyNTBkYWQzOWE1ZWI5MTg4YTkwYjgzYTVlZDNkZGExIGxlZ2FjeS10cnVuaworMzE1NjggOTA2NDU5NjE0YjVlNzEyYjUxOGM5MTYyOWU4NTNmZTFkMGZiYzlmMCBsZWdhY3ktdHJ1bmsKKzMxNTY5IDQzYTllY2JkOTYwN2NhMzNkMTg3Mjc5MTZhODNhOTM1ZDA1ZjRkNGIgbGVnYWN5LXRydW5rCiszMTU3MCBhYmQ1N2M1MzU4YmQ3YTBlYTAzMTAyZTk4MDI5MDMwMDRhNzM5ZTIxIGxlZ2FjeS10cnVuaworMzE1NzEgNmUyMGIwNDllZDZmNmM0NWM4MTk1ODNiMTE4ZWUwNzAzZmQxMmU1NyBsZWdhY3ktdHJ1bmsKKzMxNTcyIDI1ZmQyOGM4YmI2YmFlOWE4MWUzMzZmMmViNTJkNTI1N2MwYTRiZGQgbGVnYWN5LXRydW5rCiszMTU3MyA5MDRhOGI4MjJkYWZiZmJjNmVmYTI0NTg1NjlmMzZmZTE0YmY3NzEzIGxlZ2FjeS10cnVuaworMzE1NzQgNTNiZWYyMGY4NGNjZDJlOTIzOTkzYmNmNWNhMWYyYTJmZGE1ZmRkMiBsZWdhY3ktdHJ1bmsKKzMxNTc1IDFjMmM5N2QzNDU2Mzg0ZTcyYjlmMWIxNDBkOWU1MGZlM2VhOWRhY2IgbGVnYWN5LXRydW5rCiszMTU3NiA5MTYyNGE0NzUzN2M3MDFkNThlODRmY2M4NzkzMDJhMDBiMTRlZjAwIGxlZ2FjeS10cnVuaworMzE1NzcgZjM0ZmNkNjNhZTI4ZTA4MzU3NzI2Y2Y4ZmU3ZmYyOTFjYjUwOGMwMyBsZWdhY3ktdHJ1bmsKKzMxNTc4IDUzZmZhYjVkYjAxNWRkN2FjNmFiOGE4YWQ2NTdmN2RjNTdkMGJjYjAgcmVsZWFzZTIyLW1haW50CiszMTU3OSBiZTA5ZDMyNjg3ZDhjNWVmNTc5ZDU5ZDBjMTJjNDRjYmQ4MGE0YjBhIHJlbGVhc2UyMi1tYWludAorMzE1ODAgM2RkYjA5MmFjZWE4YjhhZTUzM2UyOGJhMmQ1NmUzNzQ3MWNkMjNjYSBsZWdhY3ktdHJ1bmsKKzMxNTgxIDRmNmM2MzMwODA2MzM3ZDUwYjI4NGNmMzhiY2Q4ZTYxYjdkMTQyYWMgbGVnYWN5LXRydW5rCiszMTU4MiBkOGI5ZDdjMDQxNDY1NDNlNzFhYmQ1ZmNiMGZkYWM3OGIzMTU0YzNkIGxlZ2FjeS10cnVuaworMzE1ODMgMWI2NTM4YWEwOTU5MWUxZTliNDI2MDhiN2VhNmE2ZGUwZDk0MDg0MSBsZWdhY3ktdHJ1bmsKKzMxNTg0IDRlYTM3OGE3MWY5NjZhOGJkOGYwMmQ2NmMzNTgyOGNjOGJkNWIwYWQgcmVsZWFzZTIyLW1haW50CiszMTU4NSBkYjkyYzc3YjA1ZTI2YjVjZTM5MDVjN2IyMjNiNTZhNDkyYTA2MDRkIGxlZ2FjeS10cnVuaworMzE1ODYgNDg2YTBmNTE2ZGIwM2QxN2M3MDg3ZmE0NWI5ZWE0Mzg0YzJlNjg5MyBsZWdhY3ktdHJ1bmsKKzMxNTg3IDc4NGVkNjA1YjUxMzBiYWE2ZjQzZmIwYmEyYWY0NGFhMmNkNDM3ZmIgbGVnYWN5LXRydW5rCiszMTU4OCA3ODAyZDhjMWFkYWM4NDBiMjA0MjgyODcxZTU3ZTMyOGNlOGRlMjhiIGxlZ2FjeS10cnVuaworMzE1ODkgMmU4ZjA1MzE5MTliYjJmMTQ0MWMyZWE3N2Q1YzQ4MzFlZjUxNzgyMCBsZWdhY3ktdHJ1bmsKKzMxNTkwIDE5MmJkNmUxMzVhYWRhNThmNTc1YzM3Mzc4NWQ3ZTRlMjhlNGJjODkgbGVnYWN5LXRydW5rCiszMTU5MSBiMzhjZWJjNzZkODI1MWY1YTI5ZGJjMzAxOWEyZWJlYzBkZWMzNWVkIGxlZ2FjeS10cnVuaworMzE1OTIgNWFiYzVkMDg4MTRmOTY4YTNhY2RiNGMzZTM3NTVhNTBlODhjYmM0ZiBsZWdhY3ktdHJ1bmsKKzMxNTkzIDgyM2Q1YjFmMzJlMTJlYjU5OTU1MzNhYTU2ZTA0N2YyZThiOWNjNDEgbGVnYWN5LXRydW5rCiszMTU5NCAwYTg5YjQwNmM3MzJmMWY2YTIzOGMyYTE5ODU5YmE4YmU0NWRjYTc0IGxlZ2FjeS10cnVuaworMzE1OTUgNDk4ZGIxYmNkNjY0ODk0Y2FkM2FiY2MzN2NjODM0NTU1MzViZmJkNyBsZWdhY3ktdHJ1bmsKKzMxNTk2IGNhNWIwY2Q3YTUyNTA0OTVjZGIwYWRjZDQzNmUxODZmNmFmYzkzMzQgbGVnYWN5LXRydW5rCiszMTU5NyA0MDEzNDA3MGU2YTZhMGRkYmIxZjdlYTc4ODQ5ZjhmZTdhZTNmN2FhIGxlZ2FjeS10cnVuaworMzE1OTggYThjODdhMGJlYjk4MDM2MTA5MTVjZDA2NjEzYjAzMDc2YjBmODMxZiBsZWdhY3ktdHJ1bmsKKzMxNTk5IDFhMGMyMzFjNmIwY2FlODA0Mjk0MjZmMTg5OWEwYzE4NmY2Zjc5OTMgbGVnYWN5LXRydW5rCiszMTYwMCA3MjNjNTQ1NzMwN2Q5Mzg1YWIyYWFiZWUxOTBlOTQwMTY3ZmY5MjIyIGxlZ2FjeS10cnVuaworMzE2MDEgN2Y5MGI1YjcwMDFlZDFmZDg4Zjk4M2RiNWYwMzViODE1ZjJjYzBiYSByZWxlYXNlMjItbWFpbnQKKzMxNjAyIGZiNzljYzI2MzBjMWVlNDI0MmJiNzIxOWMwNThkN2I4YmYyNGQxODYgcmVsZWFzZTIyLW1haW50CiszMTYwMyBmOGZjNWUxNGJmZTg3YTVjZjVkZDc1YzJkMTYzMWU0YzcwNDg4NTJiIGxlZ2FjeS10cnVuaworMzE2MDQgYzc1NjYxNDQ0NjU1Mzg4MzI1ZDIwMTM1Y2RiZDc2MjVlNjJmYjExMCBsZWdhY3ktdHJ1bmsKKzMxNjA1IGMzNjY1ZGY2NmQ2ZDViMmM4ZGE5Yjk2NWJiMWNjMDI5MTJlMWM5MTkgbGVnYWN5LXRydW5rCiszMTYwNiAzMjQ4OTZiN2Y0ZTFlMjU5MThhZjFhOGU5OTM1MzQ0NjFlY2NhOTc4IGxlZ2FjeS10cnVuaworMzE2MDcgYzYxZWYxODNjZTJmMTU2NDVjNGE0MDBhYzAxZmE2NWE5YTljODYyMiBsZWdhY3ktdHJ1bmsKKzMxNjA4IGQ2NzMwNTkwNTI2YzMxNGM1YWUwZjZmOGJhNmE3MWUzNjQ3YTExM2YgbGVnYWN5LXRydW5rCiszMTYwOSA5ZDI5N2QzZGUzNmY1ODYxYTVkYjc2N2U5Y2E3NDBlYmJlMTU3ZDc1IGxlZ2FjeS10cnVuaworMzE2MTAgZjcyYzM4M2JjYzQ1ZDRmODg0NGYzMDNjNDQ2MTk0NjVhYTE1ZWNmYyBsZWdhY3ktdHJ1bmsKKzMxNjExIDg2ZDgzODRkODgxMDJmZTI4ODcyMzAxNzU2NGIxMzc2YTJiNmM1ZTYgbGVnYWN5LXRydW5rCiszMTYxMiA4NjY5NjRjODViOGUyNmQ4Mzk1YzQxNzc2OWVhNGU1MjVjY2YzODMyIGxlZ2FjeS10cnVuaworMzE2MTMgNWIzZDU5Yjk3OGEyZDY5ZjE2NmUzZDk3MmFhYjMyMWQyZGRjOWJjNSBsZWdhY3ktdHJ1bmsKKzMxNjE0IGE4YTY0MzY0YTcxMWQ0MTlkNmE4YmE1ZjZiZTg1ZGVkZWExYmZmOTUgbGVnYWN5LXRydW5rCiszMTYxNSAwNDU1Y2Y4OWIxMjM5OGEwZTY4YzNlNjUzZGM0MDg5MTA5YmZmNTk1IGxlZ2FjeS10cnVuaworMzE2MTYgYjA0NjI1Y2VhMDYxM2FhZDZkYTY4MGEzZmY3YjhkZjA5MmE2MWU4YiBsZWdhY3ktdHJ1bmsKKzMxNjE3IDdmZGNjNGNmYzc1OTE3NTU0ZTlhZDc3MzExNjdkZmMyZWM3OGI5ZjMgbGVnYWN5LXRydW5rCiszMTYxOCAwMGRlZDYyZDI2NzhhNDM1ZmQ0MGQ2YmNkMDA0MWI4YmQwOTZhNjhiIGxlZ2FjeS10cnVuaworMzE2MTkgZmNiMzliMGE2ZTMwNmM4MDU4Y2ZlNzQ1ZmEwMWZkZWRkZGI5ZGY3MiBsZWdhY3ktdHJ1bmsKKzMxNjIwIGJiNmJkNTQ5ZjkyYTc5NjRlYjk2OWFmZTA0Y2FhNTA5ZmUwMjQ1N2IgbGVnYWN5LXRydW5rCiszMTYyMSBiOGNiOTBmYzM1MjNkMzY4NDlhNGEwOTg4MGJkOTY5MTU1N2Y4ZTZkIGxlZ2FjeS10cnVuaworMzE2MjIgMGM4OWRjNjI1NGJlOGQ4NzRlZjEwYjNjOWZmMThlNDhjYzY0MTY3ZSBsZWdhY3ktdHJ1bmsKKzMxNjIzIGNmOWQ5MTI4MzQ1YzNmMWI0OWFkZmNkZjZlZTljYjI3ZTgyOTc1ZmUgbGVnYWN5LXRydW5rCiszMTYyNCBhNTg3NDQ1M2JmMTdjNjYwOGU1OTJkN2ZiYTgyZjdiM2Q5NDQ4NzFjIHJlbGVhc2UyMi1tYWludAorMzE2MjUgMjk5NjVkMGQ0NjUwNTlkMzA4NzRlNmY3ODBjNTQ4NGFlMTI2Y2M0MyBsZWdhY3ktdHJ1bmsKKzMxNjI2IDQ0YmExNTcyNTE4ZjcwMjlkYTU0YjBjYTM2M2I5MTY3YzdlZWMxMTcgbGVnYWN5LXRydW5rCiszMTYyNyBmNDJmYmM3YzdkOGU5YWMyZTA1ZmQ0MmU3NDIwMDIxYmQwNmFmYzA1IGxlZ2FjeS10cnVuaworMzE2MjggMjQ3NDM4MTUyN2JiYzljNDJhMjBkNWU5NDlkNzUyMjNkNGEwNzcwNyBsZWdhY3ktdHJ1bmsKKzMxNjI5IDQ2NTQwNWExNTljMWY0Mjc3ZjZhNGU2ZDQ2NzRjODExMzc5NTgzMTkgbGVnYWN5LXRydW5rCiszMTYzMCBkOWU5Yzk2NGI2YTQ2ZTUwZGFmZjM0OTM2YTViOWUwNzNlYjIzNzZmIGxlZ2FjeS10cnVuaworMzE2MzEgMTRmNjVkNjYxMDg0OGU1YmM5NTZiNDc2OGQ0OWM4Yzg4ZGNkNTY2MyBsZWdhY3ktdHJ1bmsKKzMxNjMyIDNjNWE4ODE0NDcwYzljNGJmYWI3NWVjNzBkMzU2MDIzZjRkODRkZTMgbGVnYWN5LXRydW5rCiszMTYzMyAwNGE5M2I3YmRjZTQ5NjExNWIxMDc4Yjk3ZjI5MmNjM2Q5NGU3NDFjIGxlZ2FjeS10cnVuaworMzE2MzQgMTJiYWI4N2EzZGQyMzQ1Y2U5YTQzYTAyMzQwZmI5YjkzM2E1MDg1MiBsZWdhY3ktdHJ1bmsKKzMxNjM1IDg5OWYyZDIxMGEzNGQ4NTQwZTZhM2ZmNGRjNmU0NmQ0ZTk2NTEzOTUgbGVnYWN5LXRydW5rCiszMTYzNiBkNWFhYTY3YzA5NmFmMzU2OTJlM2JkYzk0MmFlZmViYTgwYWU4YmMzIGxlZ2FjeS10cnVuaworMzE2MzcgNzQ4ZjJlNWI4MjkzODgyZjdmY2JiMjE4OWEyODlmYzJiYzk0MmIyMyBsZWdhY3ktdHJ1bmsKKzMxNjM4IDMxMDA4NDMzYzc0ZmFkZjhiZmE5YjlkMTZlY2I2MDRlNTdiMmM1NTkgbGVnYWN5LXRydW5rCiszMTYzOSBkNTBkMWZmNDJiNWFjZThkNTU2MTZmMTIwOWFhNjUxZTczZWRiOWVhIGxlZ2FjeS10cnVuaworMzE2NDAgMmQ1OWNhMjlmMzg0ZDc5MmIzYTgxNmI5ZTVhNWUyMjJjZmI2ZWQ3NSBsZWdhY3ktdHJ1bmsKKzMxNjQxIDdlNjQ5MTM4MzEyYjNmZjRkZDgyZGIxY2Q0ZjVkZjY1Yzc0MzRkYWIgbGVnYWN5LXRydW5rCiszMTY0MiA1NGIzNWRhOTg3OWU5ODgwNWNmZTEzYjU0ZGMzNjNiYWI2Y2EyMGJmIGxlZ2FjeS10cnVuaworMzE2NDMgYWIyNzE4M2M4OTI3ZjY1MDk2NTE0OTliNTRmMzliYjQ3MjdiMzRjMSBsZWdhY3ktdHJ1bmsKKzMxNjQ0IGY0ZTcyYTFhOWYxM2U4NmMyNjJlZjQ1M2M1NTIwMjc1NTE1N2ExZTIgbGVnYWN5LXRydW5rCiszMTY0NSA1ZTVlZWZhMjVmM2FkMWJmNTk2OGQwYzQyNzIxYjg3MGY4MmFmNWY5IGxlZ2FjeS10cnVuaworMzE2NDYgYmY4NjZhYjM5ZGZmMmE1Nzg3NDZiNzEzODg0NWJmNDEyN2Y0NTkyMiBsZWdhY3ktdHJ1bmsKKzMxNjQ3IDJmM2NkM2Y1NDBhZDFhYTUwZDhjZWUzMWIwYjE4OWYyMGU2ZmU4NDIgbGVnYWN5LXRydW5rCiszMTY0OCBkOWI0ODdiOTAzNGE0OTNmNjc0OWM3Y2EyODY0MjY5NjI4ZDJjYTg4IGxlZ2FjeS10cnVuaworMzE2NDkgMTU3NzNlNzU4ZmM3M2FiYzQ5NTc0YzlkOGRkOWU0MGNmNTc0Mzg0MSBsZWdhY3ktdHJ1bmsKKzMxNjUwIDk4ZDEwNzEzNjJmMDQwZDQzOGU1N2FiNWE4ZTczZmJlMzkwMWVmZDUgbGVnYWN5LXRydW5rCiszMTY1MSBkZDZhNjI1NzhiYzg2NDA2NDRmOWJhMTQ3MWJjNDFhNmIxZmEzZDcyIGxlZ2FjeS10cnVuaworMzE2NTIgZDM2ZGQ0MWU4OTBmMmJhMTk2YzM4MGUxNzZlZTQ2ZjgxZGYyNGJmOCBsZWdhY3ktdHJ1bmsKKzMxNjUzIDdhMmY2ODMzOTVlNzI4MmM4YjMzZGZlMjc2YTg2MGRkZDk0MGQ5NjggbGVnYWN5LXRydW5rCiszMTY1NCAyYzhjMmM2YjJhYjc5YjFlNGYyNjIwODk3OWEwZjUzY2I4YWQyNzFhIGxlZ2FjeS10cnVuaworMzE2NTUgNjI4ODhhN2VkZjBiNTU0ZjNjZGQyMDUxODZkOTc2ZWJhOGQ3YTVhZCBsZWdhY3ktdHJ1bmsKKzMxNjU2IDE0NDYzZjQ3ODI0MDIyNjhhYWQzNjZiM2U5MTc0NTkwMDIzOGRhYzEgbGVnYWN5LXRydW5rCiszMTY1NyAyZmM1MmJlNzc5OTkxMzRkNzBmMjU2ZjUyN2Y4MmZmNWQ0ZDdkMmMzIGxlZ2FjeS10cnVuaworMzE2NTggOTM3OGY2ZTU1MWFlNzIxNmExZDBiZjUwZTJhODBlNTJjMjMyYjYxZiBsZWdhY3ktdHJ1bmsKKzMxNjU5IDliNGVlZDRiYjNlMmU0YTE4MzM5YzUyOTg4N2U2MTc2MWM0YTQ0MjIgbGVnYWN5LXRydW5rCiszMTY2MCA0ZjRmMmExNTQ0Nzg0OTU1YWUzMThhMmZjYmNiNTZlNzNlYmQ4ZjExIHJlbGVhc2UyMi1tYWludAorMzE2NjEgODY5Njk1Y2JhMmNkMzdlNjNhZDVkNGNiOTJjYTU1YWFlNThiNDVkZiBsZWdhY3ktdHJ1bmsKKzMxNjYyIGQyNDU2NGU3ZTk5OWNkZGNjOWFhM2QyNTc0ODRlYzA1NTg2NTdjZmIgbGVnYWN5LXRydW5rCiszMTY2MyBjMjRhMjNiMWYxOThhZjBiNTM1NzE5Y2JhN2E2ODY4MmZmNmNlNTdkIGxlZ2FjeS10cnVuaworMzE2NjQgMzljYjkxN2I1ZjdhYjRiYWU5MjQyYjYwYWUxODgxMmZjYjE2YzkwYiBsZWdhY3ktdHJ1bmsKKzMxNjY1IGYxOTgxZWU5ODIyM2NlNWFiMjUwZTcwMDYzYTgwNDhkMGQzMGYwMzUgcmVsZWFzZTIyLW1haW50CiszMTY2NiA4OGU1OGUzZDU4MDc3M2U3MDRlMTYxOTVkYjYxZmRiOTYyYTNlNDkxIGxlZ2FjeS10cnVuaworMzE2NjcgZjQ2OWE2ZDA3N2YxZTk1MDhlN2I0NGVkZGQ1YTRiZGE3NWQ4OGY1MSBsZWdhY3ktdHJ1bmsKKzMxNjY4IDRjY2NlZjliNGQ1NDU3NTdiZTJhMzE0MzU2ZjhjNTk3ZWVhOTBkMjcgbGVnYWN5LXRydW5rCiszMTY2OSA1ZjkyMzE2NTMxOWQ1Y2I2OGM5NTliODYzNjhmZWJmZGZkNzM3NjFkIGxlZ2FjeS10cnVuaworMzE2NzAgODc5MTM1MjlmMjQ4MDk4ZjllNTQ3ZDJiNmI1OTM3NzI4ZWEwYjllZCBsZWdhY3ktdHJ1bmsKKzMxNjcxIGEyNGFhYmNmNWVhMjgxODZiODVkNmEzYzE2MDg5M2UzYTZiMjY1NzQgbGVnYWN5LXRydW5rCiszMTY3MiBiMDA5YzNlZjI3YjUxYzUzNzliMDNiNzM5MzgxYWEzN2YwMDkzNzQ5IGxlZ2FjeS10cnVuaworMzE2NzMgNTBlYThkZWQyOWQwMTdmMzcyNTM5ZDhjNTM5MDc1MzQ3M2E1NTNhYSBsZWdhY3ktdHJ1bmsKKzMxNjc0IDA0N2I1ZDAwMGFhYTUxNjRkZDc4YmU1ZDExNjA2Nzc3ODY1YWZlODQgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTY3NSAxZDY2MjM0MmUxOWE2NGIzNjk5YzRiZDc3ZTA5YThhNzcxMTJjNzlhIGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE2NzYgOTdiOTdlNTcxOTBjZmY3Mzk5OGZkMTllMjNhOWY0ODQ2NmVhOTU4YSBsZWdhY3ktdHJ1bmsKKzMxNjc3IGY5ZjMwMTBmYzg2Zjc2YTkxYmMyZjU0MDE5OTg0YmEzYzVkMWU1ZDQgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTY3OCA5Y2E0YTY3Yjk5NzM2ZmJlYTA3ZDhhMDk2MjQ0MGYwOTNiMzU4OGJhIGxlZ2FjeS10cnVuaworMzE2NzkgY2RlNDQ0MTg0MzM2ZmJkYzdiNjU2YTUwY2MzMjk3Zjc0N2UzZmM3NiBsZWdhY3ktdHJ1bmsKKzMxNjgwIGI1MzQ1NWE1MWI3ODA5NWY1M2QwNzY2ZTZjZjAwNjY4MGQ5ZDAzODggbGVnYWN5LXRydW5rCiszMTY4MSA2NTVhMDg1NTdhNDNlYzE2MjRhYjY1YjIyMjY2YzE3MDhiNjQ2MzhlIGxlZ2FjeS10cnVuaworMzE2ODIgNzg5YjI0ZDY1ZDQyMDQ1Nzc4Njc4YmJmODdmNDQ2M2Y0ZTI2OGVlNyBsZWdhY3ktdHJ1bmsKKzMxNjgzIGViMTVkZTZhNGE0Y2QwNmQyMGViYTA4ZmE3MzAyMGE0MTg5MTc3MTcgbGVnYWN5LXRydW5rCiszMTY4NCBiMjBhMzY4NWQyM2UxZDFhNmUzNWNmNDFlZjViYmNmYzU4YTI0MjVkIGxlZ2FjeS10cnVuaworMzE2ODUgZjlkYjlkYzQ1NmFiNTcwMzgxN2NlNzRkNGEzMjI5N2IwNjdmN2NiYiBsZWdhY3ktdHJ1bmsKKzMxNjg2IDdkMDRiZDg5NzY2MTg3NDVhMDFjOGZmNGY0MzI3M2QzYTA1ZDA0YzUgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTY4NyA0MWE5YTA3MmM2ODE3NmFmNmNjOGQ1MjBlZGQ5Nzc5NzlhOWE1OTIxIGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE2ODggMmNjMTlhMzI1ZDY2NzY0MGU5MzI5Y2ZkNGE3MzhjNzJiYmRiYjQ2MCBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMxNjg5IGRiZjNlYmVjYTdiMWRhNjJlNjIyOTU2ZTU1MjkyMDZlNjIzODY2MjMgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTY5MCAzNzc5NjFkNzY2MTA1ZmVlMzdmNDA4MjEyNzgwZTJkZGQ4N2QxZmI3IGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE2OTEgMzk5MmNhNzAwZTY1ODAzMTM0ZjY2MWM2ODcyN2JhOTY3MjFkNTk2NiBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMxNjkyIGEzY2YwN2JhYzM3MzY5ZjJhNjVkNTI2NTU4NjgyMDNjYzM1Zjk0MjEgbGVnYWN5LXRydW5rCiszMTY5MyA1MjRlNWY5Zjg1ZTZhZjAzMzdjYTNiODk1NmM1OGYwZDM2Y2I0ZjdmIGxlZ2FjeS10cnVuaworMzE2OTQgODg4OTY1NGMwZGQ1ZDA5OWYwNTg1OGYwNWQ4OWIxYzU4ODYwOTRhMCBsZWdhY3ktdHJ1bmsKKzMxNjk1IDg0M2Q1Yzc4OTUyYTgyMmVhMDE5MjdmMDJiNWFiMDA0M2ZjNWU1ZTYgbGVnYWN5LXRydW5rCiszMTY5NiA4OThjZTRlOTZmNTkyYjBjNWIwNjVjMTU2NGMwOWQ0NTFiNzE1MzBmIGxlZ2FjeS10cnVuaworMzE2OTcgZjliNzAyYzUyZGFlYTI5OTYyY2UwMzkyYTM3NWEwNmUwNWQxNDNiMyBsZWdhY3ktdHJ1bmsKKzMxNjk4IDI4MTVjMWE5ZjczNTgzNGJlNzYxMmIwNmJjMjY5YTFjYzQwZTc5ZDUgbGVnYWN5LXRydW5rCiszMTY5OSA5ZTczN2Q2M2YzODAxZTc0ZGJlZGYzMGMyNTJkZmFjYzM1MDZjYzMwIGxlZ2FjeS10cnVuaworMzE3MDAgNDRjMzEyMzY3NDNhMDc4MTUyMTBkMDRhZTEwNTk3YTU3YmY0YjNhZCBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMxNzAxIDI5NDc0NTliMDc4OTIzMjkzZDc2OGJhZDA3MDliYWViMmYzOGJmNDYgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTcwMiA5MDJmY2ZkNWQ2NWQwOThhZThhYjAxMTA5N2EzOTkwZWVhNzUwODNiIGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE3MDMgNzZkMDYxOGYzZmUwZDg3OTJiODQyZTc1NTQzMjM2MTEyZTZlMTQzZiBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMxNzA0IGE4MzYxYmNhMWM1Y2M3N2U0NmExMTFkYjRjZDBkOGM3ODJjOThlYzcgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTcwNSA1YzBkYjQxZDM4ZjkzNjA5YjgzMjZmYWRlYTEyYmM0YmI5MGU2MmZjIGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE3MDYgOTVhYmYzZmMyYjJkMzM0NGM0NzE1ZjY3ZDY4YjBjODM2NDAwOThjNyBsZWdhY3ktdHJ1bmsKKzMxNzA3IDEyZDRkZjcxYmRhYTM1ZGY0MmVlNjQ0NzFlZGI1NmY2YjFiYTgxYTEgbGVnYWN5LXRydW5rCiszMTcwOCBiZGE0OTBmYzI2OTFlYjk4Nzc0ZGJmOTRkOGRiZDU1NjEzNmYwMTRkIGxlZ2FjeS10cnVuaworMzE3MDkgMGQ4NTUyNDA4ZmNkZTE4YTc1ZGJiMDYyY2QyNzNlNjg0OGNhZTk1NSBsZWdhY3ktdHJ1bmsKKzMxNzEwIGU5ZmMyYzE0MTYwODllYjg3MDE5Zjc5MzA3YjYxZjE3N2UzYmM2MTIgbGVnYWN5LXRydW5rCiszMTcxMSA2ZDc4YzZiZjMxZjdkMmM4ZmNmYWMxNzcyNjRmNTlkMjMwY2MyNjZmIGxlZ2FjeS10cnVuaworMzE3MTIgMTc4ZDE5Y2ZmMTYzODEzMmZjNzMwM2ZkYjNhZjdiMzdkNDEyMjg0MyBsZWdhY3ktdHJ1bmsKKzMxNzEzIDNmZTcyYTk5NDEwM2IzNWNkM2QzZTE5ZTkzNmU1OTNiNjE0MWIzMzMgbGVnYWN5LXRydW5rCiszMTcxNCA4YTcxMzAxYWZjMmRhNjAyYjY3OTRjY2MxOGFkZmY4NDg5ZGIwZWFkIGxlZ2FjeS10cnVuaworMzE3MTUgNDNjN2Q4YTA4NGZiYzM5ZDllMmU1ZWM3NWFhMDM5OWEyODZlZmYxMSByZWxlYXNlMjItbWFpbnQKKzMxNzE2IGU0MDU5MjljMjIzZTU3Y2IyZDhhNGIzZmQyYzY3ZTAyYmNiOGQ2MGUgbGVnYWN5LXRydW5rCiszMTcxNyAyOWQ4MDM0MGZkNDE0Zjg0MzM2MzBjNzBlZDViODBiOTY5MjNhMWUyIGxlZ2FjeS10cnVuaworMzE3MTggMDFhZWQ3MmUzMDllNTJjMWRiZTYwYmMwZGQ3Y2M0NzI0Yzk4YTgyMCBsZWdhY3ktdHJ1bmsKKzMxNzE5IGJhMWJkNmY2ZTZlZGM1NjA4ZGM2NjEyNTVlODc0ZWFkZDYyNzg5OWIgbGVnYWN5LXRydW5rCiszMTcyMCBhYzk2NWE1MDJkMWI3N2M1ZGE2Yjk4MWRkZDBhZTJmNDE2M2QwNWI5IGxlZ2FjeS10cnVuaworMzE3MjEgYWI4NWM3NTZjNWRmM2M2MWJjNjMzNDQ4MDRlMmFmMjNiMDdkZGFlYyBsZWdhY3ktdHJ1bmsKKzMxNzIyIDg5MTM3YmUyNWU3YWQ3ZWU0ZmEwZDBjODhjMGE0ZGI5MDY3Nzc5NDAgcmVsZWFzZTIyLW1haW50CiszMTcyMyA4NzcwNGY4OWVhM2Y1Y2YzOWExNWE4Mzk0OWNkMWQ1YzNjYjhiMmUzIGxlZ2FjeS10cnVuaworMzE3MjQgMzdjZGUwNzhiOTMzMmJkMjkyOGZkZTk0Zjk2MThiMDUyMzczZGM1OCBsZWdhY3ktdHJ1bmsKKzMxNzI1IDMwMzBkNjdmYjRhNTY2OTdkNTQ0M2Y4NDE3YWRmNDRlNWUzZWE2OGUgbGVnYWN5LXRydW5rCiszMTcyNiBiYzJkMDcyMzA5MzRkNGNlZWVmZjFiYTFkZjNmZjhhZjM4NWE0MzMzIGxlZ2FjeS10cnVuaworMzE3MjcgY2UzNzYwZThlNjQwNmE3NzViMjQwNGZhMjJmMGYzNTMwODk1NWE2OSBsZWdhY3ktdHJ1bmsKKzMxNzI4IDI0ZmUwMjM5MDFiMDdiNWJiYzJhNDJlMDk5ZmM3NjVlMzk5NTFjNzMgbGVnYWN5LXRydW5rCiszMTcyOSBhNmNkOWQ2ZDVjYTNhNDkwYzNkMDE3NjM0YzVlYTYzZTljMmZlOTRlIGxlZ2FjeS10cnVuaworMzE3MzAgNTc3NmZkMTg4ZjIwNTQ1ODY4MmMzZTE2NmE3MmFiN2Q2MDZlMzEyNyBsZWdhY3ktdHJ1bmsKKzMxNzMxIDNmOTBkMjFkZWJlOTZlMTgyMjU5NDI0MGEyYzNmOWUxZjMyNTJkMzIgbGVnYWN5LXRydW5rCiszMTczMiAzOTVlYjU2MWVjZTEzNjc2YzBmMmVkMDhmZmFkNjk0OTg0NWE5MzdiIGxlZ2FjeS10cnVuaworMzE3MzMgNDhhNTExM2RmZWY5ODEyYjYyZWQ1Zjc3MGZmZjU3MjAzODM3MDQwYyBsZWdhY3ktdHJ1bmsKKzMxNzM0IDU5Y2EzMjAwYjZlNTAzNGUyM2UwYWYyNDEyMjkxMWE3NDJkNjhmYjAgbGVnYWN5LXRydW5rCiszMTczNSAwYThlODYzMmM2MzE4YjhjNWYwZjQzODU5OTMyODBmZDc4NTc0N2I0IGxlZ2FjeS10cnVuaworMzE3MzYgMDRkZjk2NWQ2NzViN2Q3ZDNjYjA3MzdiNWVlYmYyNzhmODZjNDhlMiBsZWdhY3ktdHJ1bmsKKzMxNzM3IDU4NTIzNTJkOTUyMjJiYWU2OTBhN2MwZjUwOGJlMjI4MWM2MDc4MDYgbGVnYWN5LXRydW5rCiszMTczOCBjZDIxYmU4MmY1MGJiY2JiZTc4ZmU2MzU2MzZkNDBkZGRkOTAxYTFhIGxlZ2FjeS10cnVuaworMzE3MzkgYTFiOGU2NTRkNWZlMTVmOTlmM2M5OTJmNDcyNTk4NjBiMWQwMzQxNyBsZWdhY3ktdHJ1bmsKKzMxNzQwIDkyZjFkMDJlMjhmMGE5YTRmNTljNzUyM2MwNzU0NTlmMDY3NzFhNTkgbGVnYWN5LXRydW5rCiszMTc0MSA3MzZhZDczZGY1YjQ4ZWZmYzY3ZTA2MDg2MTZiODI2ODEyNWVhZmIwIGxlZ2FjeS10cnVuaworMzE3NDIgNDZhODFiZDhjYTBjZDAzMTE0ZDZjNzg3ZmFiZjZkYTJmNDZiNjg1MiBsZWdhY3ktdHJ1bmsKKzMxNzQzIDI5ZGRkYzAxYjVlYzM3NjlkZjM0Yzk1M2ZjMTg3YmI3ZTgwNzFkMGMgbGVnYWN5LXRydW5rCiszMTc0NCA4ZTYwNzE4NTY4OWE0ZDZhYWEyZTAwZDI3NjYwZmFkYzBiNDM2M2M1IGxlZ2FjeS10cnVuaworMzE3NDUgMTdlNmU4MTRkMDk0ZTlkYjNmYjdhN2ViYTQzNGJjZTE5NmZhYmY3ZiBsZWdhY3ktdHJ1bmsKKzMxNzQ2IGU0OGZiNWZiZmRmNGRhN2JhZTJlZmJhODZhOGJiOTE4YWUwODJmYmUgbGVnYWN5LXRydW5rCiszMTc0NyAxNDlhNTc3MmRkMGM0NjJiNjQ0ZDQ4NDY2NTg2MGZjMWQ3NGYyYTQzIGxlZ2FjeS10cnVuaworMzE3NDggZmNiYzgyNGI2ZTM4MDk0YzdmZDU0YjRiNzVlM2VjMjk1MmJmMjU0NiBsZWdhY3ktdHJ1bmsKKzMxNzQ5IDAyN2RjMjEzYzU3ZTcyZGFlM2M2YTQyYjk4YzAwZTZiMTViZWViNzMgbGVnYWN5LXRydW5rCiszMTc1MCA1Y2E2NTBhOTAwNWZhNGIyYzg3MDRjNzNmYmQ1MjgxZTdjNzUyOGQ2IGxlZ2FjeS10cnVuaworMzE3NTEgOGYwMDhiN2NiOTdiM2M0MjQ5MzQ4ZWNmNmZmNDdlN2FkODU4OGE0ZSBsZWdhY3ktdHJ1bmsKKzMxNzUyIDJhYmQ4YTVhZjZkZGIxMThiYTg2ZjQ4YWUyNjc4M2NjZTAwNjE4YTcgbGVnYWN5LXRydW5rCiszMTc1MyBiN2MyOWRjOGFmYTBmMzA1YjkxNjAyMWI0ZjUyZmRhNGVlNmUyOTZkIGxlZ2FjeS10cnVuaworMzE3NTQgZWZlMjQ5ZDA2OWJhNDFiODA1NzljNmFhMDkyMDliZjg0NTlmNDVhNiBsZWdhY3ktdHJ1bmsKKzMxNzU1IDgxNDE1MDQ4YjJhZWYwMDEwNDUxZjRlM2FiMjA3NTY0Yjg2NzBjMzcgbGVnYWN5LXRydW5rCiszMTc1NiA4YjdkOWViNDk3NThjNTYxMmI4M2E0NTEyYTY3OWIxOWYzMmY3NzJjIGxlZ2FjeS10cnVuaworMzE3NTcgMDc0OTc4Nzk5NGRiZjM4M2ZmNzRjNTY2ZjYwMTU2NTViZTQwZDRhOCBsZWdhY3ktdHJ1bmsKKzMxNzU4IGY1N2QzMGQ1MDY0OGVkODAwZmI3OTMxYmM3YTgwNjQ1YTc5OGYyMzggcmVsZWFzZTIyLW1haW50CiszMTc1OSBhN2YwMTMwMmIxNmQyYjE0N2U1NTQ0OGE3ZDU0OGY5NWUzYzM4ZGRjIGxlZ2FjeS10cnVuaworMzE3NjAgMGFiNDU0NTkzYjUzYTE1ZjVhY2M3MzM3MWVhMjNmZWYxMWZiMmVhYyBsZWdhY3ktdHJ1bmsKKzMxNzYxIDA1NTc1YjdlNjcxNDA4NDNlYjBlMTUyMDUwNzhmNDEyNGY5YjljMjcgbGVnYWN5LXRydW5rCiszMTc2MiBhMzgyMjYzZGYwMWQ1YTI3ZjMwZDY3YzQ0MTQ3MjM0NDVmZDhjN2Q4IGxlZ2FjeS10cnVuaworMzE3NjMgYmFkOTE1NjQ1ZmEyMmRmZTk2NWZkMWMzNzM4NDFhNjJhNGM2MTQ1MyBsZWdhY3ktdHJ1bmsKKzMxNzY0IDc3MTk2MWU0NTMxNGYwMmMxYzEwZDQ0ZmI4NDk5Njg0YjE2OWViNmIgbGVnYWN5LXRydW5rCiszMTc2NSA0MzkxMDFkNDcwNWJiMDVlYmMxZjdjMTQ3ZWIxMGM0ZmJlZGY3ODgzIGxlZ2FjeS10cnVuaworMzE3NjYgMmMzZWY0NjM1OWVmNDYwNWNiNTc4YjkzYWE4NTJiOGQ2ZGVmN2M2MSBsZWdhY3ktdHJ1bmsKKzMxNzY3IGZiOGY3NmRmNjRmZjQwNTU1ZDNkYTU1MmI1ZjMxZTU1MzY2MWY1MTYgbGVnYWN5LXRydW5rCiszMTc2OCA5MmUzYjYxMWRjOWY5MjA3MjBiNzJiNjBhZGNkODc0MDE3NDBjYjMxIGxlZ2FjeS10cnVuaworMzE3NjkgMDA4YTI2YzM1M2FmOTcwOTRjY2M4MWY2YjdhZjgxOThkZmY2OTJhOCBsZWdhY3ktdHJ1bmsKKzMxNzcwIGMwM2JlMjJmZGQyNGMxZTU3ZDIzMTQ0NTE2NTUzNWU0YWI4N2QzMTcgbGVnYWN5LXRydW5rCiszMTc3MSBkNGIyNjJmYmQwNGEyMDdlNjVmY2U2ZGFiY2YwYjgwYWQwYTE3NDgzIGxlZ2FjeS10cnVuaworMzE3NzIgZjJiZDBmNGQ4NTc1MGI4Y2VlNDNjNjk1ODQ0YmJiZmE2NWZjMGQ3NSBsZWdhY3ktdHJ1bmsKKzMxNzczIGIzYzE1ODdiMmI4ZTMyMmNkNzI3MTRjMmRlODAxZDY1MjBmZjRkYjMgbGVnYWN5LXRydW5rCiszMTc3NCA3M2IwZGMyOGM5MWE3YWU4YzA1NGE3MzViZjRiYjM5NDEwMzA1ZDUyIGxlZ2FjeS10cnVuaworMzE3NzUgOTA3MDQwNGYyNGZhZDU4NzRmZWUwY2Y2ZDE2NmVjZmM4MjYwOTIxNiBsZWdhY3ktdHJ1bmsKKzMxNzc2IDdjOGU4ODA3YWVkMjljNmYyZGZlZDkzYzJhNGNkMmZjZmI4MWI1ZWQgbGVnYWN5LXRydW5rCiszMTc3NyA5OTdkNDgxZWE0MDkxMGExNGM0Y2QyZmEzOTVkNWQyMDllMDFmOWE5IGxlZ2FjeS10cnVuaworMzE3NzggZGM5NDc1ZWM3OTg1NWNjOTA4ODk2Y2M2Y2Y5ZDYzOTI4N2M4YjVlNyBsZWdhY3ktdHJ1bmsKKzMxNzc5IGVjYTY5N2UwNmEwN2NjMjk0YjE2ZTVhNzViN2JiMzlhYmFkNWRmN2EgbGVnYWN5LXRydW5rCiszMTc4MCA3MzNhZWJiNTdmYjAwOWMwY2EzMDQzNzNlNTJlZTJjZmE4ZDkzZTdkIGxlZ2FjeS10cnVuaworMzE3ODEgYTJkNzliOTNiNTBhMGE5M2ViYjdkZWEwNDMzYmJiNTlkZDE1Mjg5NSBsZWdhY3ktdHJ1bmsKKzMxNzgyIDI3YWRkZWEzM2UwY2FkNDhhYTcxYTQ5NDMyMjkxZmZmNjkwYTBhMjkgbGVnYWN5LXRydW5rCiszMTc4MyBjZGVhNWIxYjgyODBjZjllZjkxNjE2ZDc3MjNhYjllNzgwNzAyNjgyIGxlZ2FjeS10cnVuaworMzE3ODQgNDMwNjZmNjdjNWRiYTc0MTcwMDhmNTkzOGYyMzZiYzQ0ODk2ODQ0ZSBsZWdhY3ktdHJ1bmsKKzMxNzg1IGI4NGU2YjRlMThjODU5OWNmZDM5NzUxODRmZmU4MWIyOWFjYzA0NGQgbGVnYWN5LXRydW5rCiszMTc4NiA2ZTQ5YmEzZjYwYmU1NTYwMDllNTZlM2M4NWExMTY3ZDY3YzNmMGYxIGxlZ2FjeS10cnVuaworMzE3ODcgYTJlNjhhZGRlOGIwZjRjYTA5NDhiMDQ5Y2YzZTNlODY4MGZmNzNjMyBsZWdhY3ktdHJ1bmsKKzMxNzg4IDRjYWZhNTE0MTAxMjUyZDU5MTdkOTE2MDY0MGM4M2ZlNDViMjE2NjUgbGVnYWN5LXRydW5rCiszMTc4OSA0N2NiODVjZGQ1ZjMxZGU4YjVmZjdlMWUzYTk3YjUyODc4YTBjYzQ4IGxlZ2FjeS10cnVuaworMzE3OTAgZDQ0ZjljYzI3MjkwNTU1NTMyZTFmZWVlODIzY2JhMTJlM2Y5YzVkOCBsZWdhY3ktdHJ1bmsKKzMxNzkxIDI3MWJhYTg4NDI0YmUyOWE4ODNhNTIxOWRkYjc5MzMxYWFhY2FhNzEgbGVnYWN5LXRydW5rCiszMTc5MiA2MjczYTE1OGZiMGFjZDcxYzc1Yjc4MThlMmU4MTI2ZjYyMzExMDliIGxlZ2FjeS10cnVuaworMzE3OTMgYjVkNmMzOGViMTYzNmZlNjM5MDgwMzJjNzFhZGNjN2ZjM2NiYjYwZiBsZWdhY3ktdHJ1bmsKKzMxNzk0IDQ4YTYxYTRiNzNhMTBiZTE1ODAwMGJhOWM0ZmEwNjczMWZkOThhZDIgbGVnYWN5LXRydW5rCiszMTc5NSAzMGZhMWY2MWIyMzFhN2VkNmI4M2I0YTgwYWViNmNlMmViMzYxMzYyIGxlZ2FjeS10cnVuaworMzE3OTYgOGYyM2QzOWE5YTMzODdhNjI4N2RiYzg4NmIzNDYxMWJmNDg2OGFhMCBsZWdhY3ktdHJ1bmsKKzMxNzk3IGVhNzAwMzJhMjRiMTAyNDIxZmRjMzMyNGFiMzMxYWZjZjIwNjQ0NTggbGVnYWN5LXRydW5rCiszMTc5OCAwMDg5MmFmZmI2MGFlODRmNjBkOGNkOWY3NDUzMzZkNzFhMzY4NGY3IGxlZ2FjeS10cnVuaworMzE3OTkgZmUxZDU3MWMzZjgwM2UzNzNmMDk5ZDZlZGNlMDMwZWU2ZDQwMzVjMCBsZWdhY3ktdHJ1bmsKKzMxODAwIGYxM2FkYzAwYzE2NTIwMzQ3YTkwZDBhOGI2MmM5NjUyZjUyODhmNTcgbGVnYWN5LXRydW5rCiszMTgwMSAwNTc0MzI2Yzc4YmJhZTQ2YjdlZmQ4NzZlYzc3NTQyNjNhMzBhMGZiIGxlZ2FjeS10cnVuaworMzE4MDIgNTg1NTkxNWIwMGY1ZTUxNDcxMzBkYjE5MDdkOGY0ZjkyYmE0M2UzMSBsZWdhY3ktdHJ1bmsKKzMxODAzIDVjM2FjYmYyMmEyNmY2NzJmYjBkODE0NzY5YjFmM2E5YjYwYjlmOTcgbGVnYWN5LXRydW5rCiszMTgwNCA2MjY5ZWFhZGQ0MWVmNGJiM2I4YjMwMzkzNmZjMzNkMTQzNDk5OWExIGxlZ2FjeS10cnVuaworMzE4MDUgZjk1ZGZiMzNkNzYyOTNjODA4OTExNGU5YTY3MThmNzNiM2ZhNjJjZSBsZWdhY3ktdHJ1bmsKKzMxODA2IGE1OWQ4ZTRjYjkwMzg2N2JmMWU3MDIwMDIwMWVjZTM5ZjViOGFkNjkgbGVnYWN5LXRydW5rCiszMTgwNyA0ZjY3OWFhNjIzYzJmNmMyNTYzZDRmZGRmMDc4OTc0MTUwNTYxZWJlIGxlZ2FjeS10cnVuaworMzE4MDggNGI2ZDdjNzU2OThhYzdiZjMxZjY3NGMwNDY4MDU4NGNjMmExM2E5YyBsZWdhY3ktdHJ1bmsKKzMxODA5IDZlZThkNWEzMGNiYzIyMjRhMWQ0MTJiYzU4ZGJkNzI2MzdiYmU1YTUgbGVnYWN5LXRydW5rCiszMTgxMCAzNjU1ZTkxYjNkZWFjZmYyY2ZjMWE1ZTQ1NzYzMzE0MTQ3ZGZkOGY5IGxlZ2FjeS10cnVuaworMzE4MTEgNGIxZmVmMzdhYzdiZDdhYThjMWI3NWZmNjg5ZGZiMTcxZjllZWY4YSBsZWdhY3ktdHJ1bmsKKzMxODEyIGQ3NjMwMTg1ODk0MWM5MGI4ZTc2ZDk4ZTgyYWIyMjJkN2M3MWVkYzUgbGVnYWN5LXRydW5rCiszMTgxMyBiMjQ2Y2EwMzNlM2VlN2Q4NDI1ZGFmM2M2MTY0ZmQ1ZGFkZDk4NWNiIGxlZ2FjeS10cnVuaworMzE4MTQgMDNkM2ZhM2UxZDRlNWNhNGZjNTc1NWViYTJhMjViMDJlNDEzNzUyMyBsZWdhY3ktdHJ1bmsKKzMxODE1IGZhMThkZjc0NmVjNTI1ZDc3MjZhNWJjYjVhZTVlMDE1YzVjYmFmNzkgbGVnYWN5LXRydW5rCiszMTgxNiA1YzQ2Yzk1ODdhMmZhMzE3OGVmMWMwYmVmNzM2MGNkODkzZjNlNDk3IGxlZ2FjeS10cnVuaworMzE4MTcgOTI3YTk4MzNmODNiNzlhZTFiYTk4NzJiZmNhOGZhM2FlMTJhMTkyNiBsZWdhY3ktdHJ1bmsKKzMxODE4IDZjMDY2N2FjOTM5ZWRkM2Y1YzA2ZmM3YTJjOWMyM2ZhMDdkOWIxZjggbGVnYWN5LXRydW5rCiszMTgxOSA5MmI5MzAxMzAwYzM5NjgwNWVhMWZkNDI5NjFiYTdkZjJjMTE5Mjk0IGxlZ2FjeS10cnVuaworMzE4MjAgMjc1MWM1ZWY5OGJlNmNjOTc5MzNkMDg0YWQ4ZmVlZTdkNGViNmQxOSBsZWdhY3ktdHJ1bmsKKzMxODIxIGE0ZTdlZGM2OTA1NGQ1MDNiZjIzMGFiZTY4NTQ3MGJlMDk5MWJiODQgbGVnYWN5LXRydW5rCiszMTgyMiAxNTY5MTFkYmEzMDZjMTI3ODMyYzdkNzljNGZlNzJmOGJlOGY1OGVlIGxlZ2FjeS10cnVuaworMzE4MjMgYmVhM2QxZmRhM2RjYjAyMTEyMWY3YmY2YmRkY2VlZWQ3NWJhYTQ0OSBsZWdhY3ktdHJ1bmsKKzMxODI0IGI3OGQ4YmI1ZWJkNzE0NzRkYTc5OWQwODU3YjZlZmRlMDA3MjI4MTQgbGVnYWN5LXRydW5rCiszMTgyNSBlMjhiNDhmYzkwMGJmZGFhZDMzMTIxZjFiZThiZTg0ZjhkNzNlOWIzIGxlZ2FjeS10cnVuaworMzE4MjYgZmM5MjlkNzFhNDUwZjQzOGQ4ODIzYzNjMTRlODRhZDM5ZDhjMGQyNCBsZWdhY3ktdHJ1bmsKKzMxODI3IDY1YjcyMjY3MzgyOTA5NzM3ZGIzZjU2MzA5OGZkN2Y4ZmRkNmVlYmQgbGVnYWN5LXRydW5rCiszMTgyOCBmZDliODgyYmUwNzk3NWJmZmQ1YmIyNzQ5OGU0NDdmMDEyM2NkZGQzIGxlZ2FjeS10cnVuaworMzE4MjkgN2YwYmZiZWM5ODdmYTBkZjI3ZWVkMDZhMGEwY2ZkZDlhMWNmMTVlOSBsZWdhY3ktdHJ1bmsKKzMxODMwIDMzNjU2NjRiODI5NDJiYWM2NjVjOTczMTIwM2UxYmRjOWQ2ZTAxYTggbGVnYWN5LXRydW5rCiszMTgzMSA0YzY0NGE2MGMzMGQ5Mzg1NWRmMWE4YmQ0MDNkYzFmZWM3ZmE3OWJhIGxlZ2FjeS10cnVuaworMzE4MzIgYjEzNTZkYmFhYjlhMmI5NmVmYjZhODExODI4MTZjOGQwMWMzNmU1NSBsZWdhY3ktdHJ1bmsKKzMxODMzIGZiYWUyMGEyZTExNmRlZWY3YWYwOTQ0ZDRlNGU1ZDYxMWY4MDM2YjcgbGVnYWN5LXRydW5rCiszMTgzNCAxMDI4ZGM2ODA3YTVmOTgwNWNiYTliNjI3MGMxM2FiMDFkOWMyYmRjIGxlZ2FjeS10cnVuaworMzE4MzUgNDU5YzQyOTFmNzU5NjMwZDdhMTVlOTMzNzQ2ZWNmODUwMWI1NzVjZSBsZWdhY3ktdHJ1bmsKKzMxODM2IDZhMmQ5YWU0MzBiZWE2YzFmMzUyMDgxODY1YTYyNGIyMDZhNmY2OTQgbGVnYWN5LXRydW5rCiszMTgzNyBhMjk1N2ZmY2I1OTg2NWQyZjYwNzc0ZTBkNGY4YmU2ZTVlMWIwODYzIGxlZ2FjeS10cnVuaworMzE4MzggZWY1MjVjOTliNGVlZDY2ODUwY2QzYzZkNDg0MmEzNGZiZTc0NjhhYSBsZWdhY3ktdHJ1bmsKKzMxODM5IDUxYzc0Yjc5NWU5ZTk0OTRjMDlmZDc3MTZmZDAwNmQzY2FkYzY1OWYgbGVnYWN5LXRydW5rCiszMTg0MCAxNjJlZDJhOWNjMGM4YTI3ZTY4MzYzMTNlOWZhNWZjMTAwZTAxNWZjIGxlZ2FjeS10cnVuaworMzE4NDEgN2ZjM2U2NGQxNDI0MTUzMmNlNjNkMjgzZGZkNjMzOGExMWNhYzNkNCBsZWdhY3ktdHJ1bmsKKzMxODQyIDczODE0Y2I1ODI3ZjhjNWQyMzRiMzc5NDI4ZmU3ODkyOGUyOGFhYmQgbGVnYWN5LXRydW5rCiszMTg0MyA4ZDEwZjY4ZDdjM2IwYWYyOTFjMTViODFlNTI2NjY4ZDA2YzY4ZjJhIGxlZ2FjeS10cnVuaworMzE4NDUgYThkMjRiOTdjODEzYjIwZGRjNGE2MzY0ZmNiZDZkZmMyMjhlY2MyNiBsZWdhY3ktdHJ1bmsKKzMxODQ2IGI5NzJiZTgwNjQ3N2YxMzFhZWNhZDFhOTY2ZWVkNWI3MTE1ZDI3ZjUgbGVnYWN5LXRydW5rCiszMTg0NyBjOWZjMzVkMGEzZWJhYmYwZDRjMDE0ODVhYjRhMjc1MjNiMjIxNjlkIGxlZ2FjeS10cnVuaworMzE4NDggMjI4OTdjYTEwMjg4ZGQxYzJkNTY2YTE1OTdlYTk5NTY1YjU1NzRhMCBsZWdhY3ktdHJ1bmsKKzMxODQ5IDVhNGM3ZTZmMDA4ZTIxMmYzZjA2MGNjNTQ4YjdlMWVlMDRjOGU2NDYgcmVsZWFzZTIyLW1haW50CiszMTg1MCBlNDA1Mjc3Njk4NjRjYjI5ZDY5MWJiMWNlMzliMjc4MDNjZGQ5MWJiIHJlbGVhc2UyMi1tYWludAorMzE4NTEgMTcxZjE4NjJkZWE5NTczNTRlNDFjMWY2ODkzYzk0ODBiODJmNGVkNyByZWxlYXNlMjItbWFpbnQKKzMxODUyIDY1ZGQ5NjEyYTc0ODA4MDE2MTEwN2I2NDQ3YmZkNTVjZDkzODIzM2QgbGVnYWN5LXRydW5rCiszMTg1NCAwYmExN2U5M2YxMzlmNTc0ZmUzYTViMzAyMzJkNzUzODVjZWE4NmQ2IGxlZ2FjeS10cnVuaworMzE4NTUgNzY1NGMyNGRlY2M0ZWRiOWM0NDJiZTc5ZGMxODk5MDE1YTQ2OGRlYSBsZWdhY3ktdHJ1bmsKKzMxODU2IDJjMjJiNWMwOWE1OGRjNjE5M2UyYTc0ZTdhMDNkNzEzYzViZWM4OTIgbGVnYWN5LXRydW5rCiszMTg1NyBhYmZlNGIzODAzMDVlZDhjMmE5MTdiZTA5M2NhMjMzYjliMjI0ZWQ1IGxlZ2FjeS10cnVuaworMzE4NTggMTQzMTZkZjFjMjk4YjcxNjUzZGM3NTRiNTFkMDg0MDI2YjI3MmNlMCBsZWdhY3ktdHJ1bmsKKzMxODU5IDk2MDJjNjY0ZWQ3YTJjYmU2ODFmMjAxOWVkYWRiNjc1OTc3NjEyYTEgbGVnYWN5LXRydW5rCiszMTg2MCA3MzQzNGZhOWQyODUyYjc5Yzk5OWQyNzg3YzRjZTFhMzliYmY2ZmMwIGxlZ2FjeS10cnVuaworMzE4NjEgOGMwODI5MzZkYWFmZGFlZTMyMzk1N2FjZDlkZWM1ZjZjYWRhOGIzOCBsZWdhY3ktdHJ1bmsKKzMxODYyIDQ3MDUwNGVmNTc4YjIwNTM2Njg1OGFhNDdhMDIwOWQ5YWE2NGExZmYgbGVnYWN5LXRydW5rCiszMTg2MyBiMTRkNjc0MWY0OTY1MWI4NmY2MjAwMDFlZDNiNjYwMGZiOTM1OWMzIGxlZ2FjeS10cnVuaworMzE4NjQgNzAyZTU0N2YzMWUwZDUyNWRmNTU0Y2IzZWEwNDU4N2YwODAxOTcwYiBsZWdhY3ktdHJ1bmsKKzMxODY1IDIyNmM1YmRkMTYwYjk1YWU3YzcwZmRiODFhZmE5ODYzNDUyMDY4Y2EgbGVnYWN5LXRydW5rCiszMTg2NiAwMGJkYTU2ZjU0MzMwNjNjZmJlYzFhNTU3MTIwM2YzYmE3MmI4ZDMzIGxlZ2FjeS10cnVuaworMzE4NjcgOWMzNTcyYTU1NzVmOTk3MzIyNGQ5MDUxYmE4NzQ0ZmZjYjJkMmVlZCBsZWdhY3ktdHJ1bmsKKzMxODY4IDVjOWRjZGM3ZmU4ZDY5YjNiMmY0YzNlN2ExZGExOGFmN2JkMzg0NGMgbGVnYWN5LXRydW5rCiszMTg2OSA0ZjQ3ZGYyMDQxNWM3MWViOTkwOTYxZGNlNjE0ZmYzMzZmMzY4MzIxIGxlZ2FjeS10cnVuaworMzE4NzAgMjQ4OWQyMjIyOGRiYmM5N2RkMTAxYTE4ZGI2YzdiMWYwNmE5YjgxZiBsZWdhY3ktdHJ1bmsKKzMxODcxIGVmNTVmMjIzMmExMGQ3MzFiZGVhZTA3ZWZkYzQ4Yzg2MGZmYWJhYzAgbGVnYWN5LXRydW5rCiszMTg3MiA5MGY3ZmJjYjM3MDY5NTdlZjc2OThkODY0ODBiNGMwMjNkYWIyZjAzIHJlbGVhc2UyMi1tYWludAorMzE4NzMgOTE4OGNiOGUxOTFiNDg4Y2E1MzBiZGZjNTBlMzBlNTdmNzk1NDA5ZSBsZWdhY3ktdHJ1bmsKKzMxODc0IDkyNzhiMWM4MGE2N2YwY2ZjZWFkMjk1ZDRjYjQ5NTcyMjY1MzhlZmMgbGVnYWN5LXRydW5rCiszMTg3NSAzZTE5ZTNiNzJkOWIxYjk3NmRjYzQ3MTY1NTMwMDI5NTBjZWExOGJmIGxlZ2FjeS10cnVuaworMzE4NzYgMDIzZDNiNTBlNTk3OTc0ZWIzZDQxYzJhN2JhZDNkNGNlNjMzMmI3ZiBsZWdhY3ktdHJ1bmsKKzMxODc3IGJjMzcwYjg3NTNmMTI2MGEwZjRkNjY5YjE2YmI0ZGY1YzEzYmYxNjQgcmVsZWFzZTIyLW1haW50CiszMTg3OCAzNjBhNTc4MDU2NzZkZDIzYWI5YTY0MGVhZjg0ODg0ZGYyOGQxMGY5IGxlZ2FjeS10cnVuaworMzE4NzkgZmQ1ZWY3MDAzNDY5YTYzMTg2NDU4Y2ExN2UxYWJhMmNhYzRiZWVmNiBsZWdhY3ktdHJ1bmsKKzMxODgwIDkyZGFmOGIwNmFiYzE4NjJmNWVmZTY4YzUxMDc4ZTA0NmYyZTlhOWIgbGVnYWN5LXRydW5rCiszMTg4MSA5ZWJjNjFiOWU4YmRiYTY1YTM5MTUyZWM1MjU1NTIxNTAzMWU3N2QyIGxlZ2FjeS10cnVuaworMzE4ODIgNjdiMjJmYTRhOGZlNWY0NjRlZmJmY2JiY2Q5MzRiZWZjZGE2ZmUwNCBsZWdhY3ktdHJ1bmsKKzMxODgzIDRlMjIxMzY4YWY3MDdiNGIxNTNhYmY3YTg2ZmU3OWZkMDQwZjA1YjAgbGVnYWN5LXRydW5rCiszMTg4NCA4NTA2MjZkNDc1NzQ5ZDQ2ZGVlYjc0NjU4YmEyZmM4OTRjNGQ3ZjY5IGxlZ2FjeS10cnVuaworMzE4ODUgMzM1OGRmYjFiMThiNDIyZTBhOWJlYzg0MDE2ZDcwYmRjYzI2NjIyZSBsZWdhY3ktdHJ1bmsKKzMxODg2IDE4NThiY2I2MTcwNjgyYzNiNzdlM2I0ZThiODcxMmJiOTk3YTUyODYgbGVnYWN5LXRydW5rCiszMTg4NyBjZGQ1ZDBjZmE2ZGNlMzU4ZDkyNmI5ZWU4MzYxYzBlYjFiZTc0Y2E3IGxlZ2FjeS10cnVuaworMzE4ODggNjJkZjE3ZTUwMWRjNjgzYTM2MjQ4ODlmMGU1ZDUyODA2NzllMDA3MCByZWxlYXNlMjItbWFpbnQKKzMxODg5IDAyY2UyMjgzMGFiOTYwOTc5YTAyNjg1ZDAyMGM2ZTg5ZmViY2I2NzEgbGVnYWN5LXRydW5rCiszMTg5MCBiOTFhODFkNjgwNjgwZTAxZmQ2MTQxNzNhYjE1NWZmNmM2NzkyMTcyIGxlZ2FjeS10cnVuaworMzE4OTEgMjkxYjlkODY2ZWNmMmE5YzhkN2YzZWZkZGI3OTg1OWNiODFkMGJjMiByZWxlYXNlMjItbWFpbnQKKzMxODkyIGVlYzNmZDE2NGE3ZGI4ZGQ0YzdmZTg4YzE5ZTIyNDBkZmU3NDMxZDAgcmVsZWFzZTIyLW1haW50CiszMTg5MyA5ZjI4N2U1ZWIwMzc3NTI0OWVlMWQ0OGEyMzk5N2I0MTIzZGVkZDg5IGxlZ2FjeS10cnVuaworMzE4OTQgNzAwMDNiMGNiODM3OTUyMGQ2ODAyNDFjZmU4MDY5NTE0OWYzZTYyZSBsZWdhY3ktdHJ1bmsKKzMxODk1IGI1NmQxMGVkMzNjNWU4NWFmMmVlZGYzY2E1YTAwYmExOTUyYjQxNjkgbGVnYWN5LXRydW5rCiszMTg5NiA5MGYxN2MzNzRmNTkyNzI4ZTg5ZTQ5OWEwNjY0N2MzMjRkNDIwZTliIGxlZ2FjeS10cnVuaworMzE4OTcgMzQzNGQxYjkyMDZhNWJkOGRlOTc0YzFhNTAwYmE3Zjk1ODQ0N2Q4MyByZWxlYXNlMjItbWFpbnQKKzMxODk4IGNjMzVlZDJiMjZhOGIyYjUwNDMzNTQ0YzMwZDMyNmM1MmZlNTUyMzEgbGVnYWN5LXRydW5rCiszMTg5OSA1Y2YxZjJmMzBkYmQ2Y2M0MDY1YjM0ZDVlNTljNmZkYzViYjZmN2FmIGxlZ2FjeS10cnVuaworMzE5MDAgNzk3OTA5NDkyYzM4NjcyMDQ0MzdkMWJlNWFiMWM5ZmNjNGRmNjM4ZCBsZWdhY3ktdHJ1bmsKKzMxOTAxIDI2ODA4YWM3ZWU1MWFlOTkyYTlhMGE3ZWY3YmRlNzQwMzM2ZjM1ZDAgbGVnYWN5LXRydW5rCiszMTkwMiA5ODBkNmUwMTEyY2UxZTQ2NDNkNGRkMWFjMmM5N2ZjZmM1YjdmODRlIGxlZ2FjeS10cnVuaworMzE5MDMgNjFiMGZmOThkOTVkZDM4MWUxY2Q3M2RhOWYzMDQ5MmJjNGQ2ZTY4NyBsZWdhY3ktdHJ1bmsKKzMxOTA0IDE0MzkxNTc3NmNiYzJmZjMxNzYyZTNhNTc5MjRhMDEzMjVmNTQ3OWUgbGVnYWN5LXRydW5rCiszMTkwNSBmNWM5N2I2NWY5ZTg1Njg1NzljYjkzMjU5Yjc0NDE3YWUxNzhjNDVkIGxlZ2FjeS10cnVuaworMzE5MDYgMWZjMWEzMDVlMzk5OWE0NDEwODMwY2Q0N2UyMDVhNmNiNDkxYjM0YiBsZWdhY3ktdHJ1bmsKKzMxOTA3IGI3MzQwYjA5NTU1ZDMwYmU4YmQzNGRmNWVlZWU4MjBiNTA2Yjk0MjkgbGVnYWN5LXRydW5rCiszMTkwOCAzMDk2ODk5Zjc3NGZlYWM5MjgzYWE5YjY1OGMzZTM5N2YxYjExMWQ0IGxlZ2FjeS10cnVuaworMzE5MDkgZTM2ZmY0OTJjYmIxNjIzYzBkZDdjMTYzMDhiZDI3NTRkZjNhOGVjYiBsZWdhY3ktdHJ1bmsKKzMxOTEwIGQ1NzQyMTYyMzQ0OWI3YWIwOTJhOWVmMTBiYzI0YTliMzI3MTc1ZjEgbGVnYWN5LXRydW5rCiszMTkxMSA0NTA1NGJmNTkyZTVlMDNlZDYxNzEzZjViY2QyMzM2NGNhNTFlZTVlIGxlZ2FjeS10cnVuaworMzE5MTIgZGQ4M2E5YTUzZGJmYjkxZjg5NTM5MTUxZTg2ZTliYjI0NDI0MThmMSBsZWdhY3ktdHJ1bmsKKzMxOTEzIGQzNGJjYjNjYjIxNmVhOTY5NjkzYWZiN2M2ZTFjODhiMzVkZDlmM2UgbGVnYWN5LXRydW5rCiszMTkxNCBlZGRmNTlmNWNjNTg0MTQ3N2RlNjIyMmU4ZTcxYjQ1ZDJkYTBlNzAzIGxlZ2FjeS10cnVuaworMzE5MTUgM2ZmYmJiNGY0OGRhNjMzZjJlYTQzNzIzYWIyNWUxMzNmNTQ5MDgyMSBsZWdhY3ktdHJ1bmsKKzMxOTE2IDhkN2ZmZTRjYWFkOWFjYWM4NDFjNThlOGQyZDMxYWFkZDU0OWEyYTAgbGVnYWN5LXRydW5rCiszMTkxNyAzNGUyMmNkZmFhZDI0NjM4NTM4MDQ4MTc2ODEyM2E5MjgzODFhOWYxIGxlZ2FjeS10cnVuaworMzE5MTggYzdjZWI5NTYwZWIwZTFiYWExOTdmZWMwMGNiMjJmODk1OWEwMzgyNiBsZWdhY3ktdHJ1bmsKKzMxOTE5IDcyMjQ3ZWUyMjY1Mzc0Y2M1NWI5MGM4ODI1ZjkxOTBjYzZjYmRlNjYgbGVnYWN5LXRydW5rCiszMTkyMCA2ZmRkY2RkMTFmNDlmYWRjMGM3OGFlNDkwMmY1OGYxYTgwYmNiYjU3IGxlZ2FjeS10cnVuaworMzE5MjEgMzFhNTExZjc0YjI4MTZiMTBiY2I4MWY5M2QzYjI4MTY4YjRlNGVlMyBsZWdhY3ktdHJ1bmsKKzMxOTIyIGJhYjJiMjg2M2E2ZTA0YzAzOGY0MzNkZmI1MzA1MWZiNWNjNzE2NWYgbGVnYWN5LXRydW5rCiszMTkyMyA4ZTI0NzNhZDdjMGNiYWIzZjZjYjAwZDliZjYxM2FkN2IxNGZkNDYzIGxlZ2FjeS10cnVuaworMzE5MjQgYzk3YzEwNGMyZDI0OTZjOGIxZDE1ZDVjNzMzZjk2YmM4OTMwYzkxYiBsZWdhY3ktdHJ1bmsKKzMxOTI1IDlhYWM4NzBmMDNhMjk5MDJjMWY4M2JiMTVkODcwNjJkZmEwMGE3YWQgbGVnYWN5LXRydW5rCiszMTkyNiBkZTAxMzI3NjU4NGFlYmVlNDljNjcwYzc3YmQ0MDA1ZTVmNGFjNjUzIGxlZ2FjeS10cnVuaworMzE5MjcgZmY3OGMzYzNlYmM0NjZkMDI5MGY5MWFhOWE5NWQwNTYxMmI4YjhiNSBsZWdhY3ktdHJ1bmsKKzMxOTI4IGViNDgyNzhjMmUxMDI1Y2IwODY3MzViN2I2NmNkNDAyODE4OTcwYWQgbGVnYWN5LXRydW5rCiszMTkyOSA3Zjk4MWRkN2ZhOGQyZGNhNDVjOTk1NzM4M2ZkYmQ5YzAzMzMzODYxIGxlZ2FjeS10cnVuaworMzE5MzAgZmJhZTY0NTUxM2Q3NDczNGYxYmJiNTdiODI4MDU5ZDUzYjRhNGU4YiBsZWdhY3ktdHJ1bmsKKzMxOTMxIDc3MDg5MmQ3OGYyYmI3OTg2YTFlMjc1NzE0MzQzNzFhYTNmMDU2YzcgbGVnYWN5LXRydW5rCiszMTkzMyA0NTg1NGZjNzA3ZDY0OTk0MmI2ODEwMjBiMWFkNGZiZDQ4YjNjZDE0IHJlbGVhc2UyMi1tYWludAorMzE5MzQgMzA3NDhjMTVhNDgxYWY3NzE2MzFmZmMzYjQ1YTA3ODMxNTlmMGJmMCBsZWdhY3ktdHJ1bmsKKzMxOTM1IGUzMzNkNzY1ZjQxZWUxZjM5NWFhMzk5NzFiYWM0NDMwZDBhZDg4NDMgcmVsZWFzZTIyLW1haW50CiszMTkzNiBkODc3ZmZhNGY3ZjIyYWM1ZmU2ZWU0OWExNDU1YTM0MmM2NTAwNzI5IGxlZ2FjeS10cnVuaworMzE5MzcgY2U0YjkyOGM4MzQwYTEyMjhhYTkwNDc5NmU3ZDVkNTVjNThkN2FlZSBsZWdhY3ktdHJ1bmsKKzMxOTM4IDc5NWQ2MTQ0ZDJlZTRjZDg0MzAzOWY1NTBlN2IxMWJhN2UzMGI2OTUgbGVnYWN5LXRydW5rCiszMTkzOSA3ZGEyZWUzYTljNDNiM2I5ZjI0MzgyYWRjYzIyZDM0YjliNGE1OTVhIGxlZ2FjeS10cnVuaworMzE5NDAgY2E0M2FiYjA3NjM4Njg3OTMwZDdmMGY4MTQ1MGVlYzcyZGM2ZTg4OSBsZWdhY3ktdHJ1bmsKKzMxOTQxIGUwZWJmYTJmYjkzNjlkYmM4Yzc0NjQyMWYxZmFiMzM0MzZmMmY5ZjIgcmVsZWFzZTIyLW1haW50CiszMTk0MiBmNmJmNzgxNzMxZDQyNTY0ZGI4ZTZjZDczN2VmODNkOWVhMDUxYzU4IGxlZ2FjeS10cnVuaworMzE5NDMgZjk5Y2Y5YmZiYmFmNWJlZWZmM2M2MjlhNzFjMzg5ZDQxOTJlNjhhNSBsZWdhY3ktdHJ1bmsKKzMxOTQ0IGI4NzIyOTc0MDZhYTljOWZiODZlYzE2NGM2Y2ZkOGU3YjU3MzcxMjkgbGVnYWN5LXRydW5rCiszMTk0NSBiMjM0MzQyMTFkMDFkZDgwMGYyMWZkOTE2M2ViOWY2MTk3ZWRlOWQ3IGxlZ2FjeS10cnVuaworMzE5NDYgOTQ2MDFkOGZhNTFkYjY4ZDhiNDJmOWFiMjQ4NDVkNTdkZTBlNzdhMCBsZWdhY3ktdHJ1bmsKKzMxOTQ3IDk4M2U5MjkxYTdiNDYxZTJhZDY2YTQwNzU3NjEwZDhjY2ZjY2M0ZDcgbGVnYWN5LXRydW5rCiszMTk0OCBmODEyMzljMTJjNjBmODA2MjIzMTllNmFlNTg1OGU2YjE2ZWM1ZWU0IGxlZ2FjeS10cnVuaworMzE5NDkgNGVkZTU3YTQyYzYyMGIyZDFlMDBlNTRiZjYzMjlkMzUxOWM3MzI1NSBsZWdhY3ktdHJ1bmsKKzMxOTUwIDMzMzE5NDU4ZmU5OTViZWRiZTVmMjg2ZTc5MzkyYzkwNjY4NzJkNjkgbGVnYWN5LXRydW5rCiszMTk1MSAwNzYxN2QwOTA0YTYzZjM2MTdlYjE5YWI0ZWQ0YTViZWJmZjg3YjY5IGxlZ2FjeS10cnVuaworMzE5NTIgNWVlMjlmMTM2NGYzMzU3ODE1ZjI4YzI0YmExZDY4OWU1N2FjMDc5MiBsZWdhY3ktdHJ1bmsKKzMxOTUzIDE2YWE3MmE4YzI4MWVmMjBhNTFkYjdhOGNiM2YwNGQyOGMzMTdkNjEgbGVnYWN5LXRydW5rCiszMTk1NCBiYzkwNzZiMDE2OTQ5OGFhNTNiMzc0NDc2ZjA4NTU0Yzc0MGZjZWZmIHJlbGVhc2UyMi1tYWludAorMzE5NTUgMWUwZTY3OTQ3MTc1OGI1OWYwNjU3ZTRmNjVmNGFjYzVmYzI3Zjk4YyByZWxlYXNlMjItbWFpbnQKKzMxOTU2IGQ1NjI4MmMyOGExZWZjZGY1ZWNjZDAxMTkzNDU0MGExMDJkNDRkZGMgbGVnYWN5LXRydW5rCiszMTk1NyA0ZjAzOGQzYTg4NzhjYmY3NDk1YjcyNGE1MWRlYWJiMjU3NDA1MjI2IGxlZ2FjeS10cnVuaworMzE5NTggYTIxMTBjYjE2NWYxMTFiZmZlOTQ1YjQ0YzMxNzJmNTE3MDA3YzhmMCBsZWdhY3ktdHJ1bmsKKzMxOTU5IDY2NDIxMmE2ZTI4M2UyYTJiYjgxMzRhMTI1ZDViYzdiOWNmMzhkNTMgbGVnYWN5LXRydW5rCiszMTk2MCBlZTk0YTk4Y2YzOTZjMDQ0NWEzOGJhOTc2ZjZhYWU3MjA5YTRjNWZkIGxlZ2FjeS10cnVuaworMzE5NjEgYzZjMmYyNmRmNjViMDRlY2RkZjcxNzIyZmU3ZjU4ZTU2Y2ZlNjIxNSBsZWdhY3ktdHJ1bmsKKzMxOTYyIDVmNTM2NGFjNGFkYmM0N2MwZGM4MTQ5NGZkMmZhNmJkZmM1NTU0N2QgbGVnYWN5LXRydW5rCiszMTk2MyBmMDBjZDY5M2Q0ZTAyZDMyN2ExNmE0NzUwNmU1M2NjYmI1ZjQyYjY3IGFzdC1icmFuY2gKKzMxOTY0IGU1MzA0M2JkYjhmMjNhZDRkOTE4ZDhhZDMzOGVhYWUwYTEyNmI5OTggYXN0LWJyYW5jaAorMzE5NjUgY2I4ZDQyN2FmZDIxMTU3MmNkNmM4MTdjZmM0YWQwNWZkYzIzNjk3MiBhc3QtYnJhbmNoCiszMTk2NiBmYTM1YzhiNDViMjQ1NmQ1MzJhNGYwMGIxOTZiY2M0ZjA2NDhkODBjIGFzdC1icmFuY2gKKzMxOTY3IGQxZDYwYzJlMGFlOTkzYTZjMThhMDllNjE0ZDM3OTMyYzdhMjk3MWEgYXN0LWJyYW5jaAorMzE5NjggMzA1YzE3NTExYTg2OWM5NmU3MjNiMDk0ODE2YzhkNjM5ZTVkNTdkMCBhc3QtYnJhbmNoCiszMTk2OSA1NWQwZTk5OGJjNDZjNDc1MGViZTY4Yjg4N2U4NGJmNGQyOGIzYzJiIGFzdC1icmFuY2gKKzMxOTcwIDczNjVmMTMwZjE1ODNkYTZmYzRiNzk4MDE3MmNkODJkODY1MTM3N2EgYXN0LWJyYW5jaAorMzE5NzEgOTA3M2Y4ZmY3MjU2MmFjNzk3MWE4MzFlOTg4ZmQ0Y2UwMjRjNjNjNyBhc3QtYnJhbmNoCiszMTk3MiA2M2VkODUyOTA0MTMzNjA5ODg5ODBlZjMzNmY3YmIwNGVlMzgyMzQxIGxlZ2FjeS10cnVuaworMzE5NzMgNWVmNjEzMmYzY2FiYzlkZGUxYTgwYzIwNWY0NDcxZjRiNDBiYTUxYyBjYWNoZS1hdHRyLWJyYW5jaAorMzE5NzUgZWM4MDNjYzU3MTg1MTdlMjY1OThlNTNhZTBmMWE3YThlN2RlOTQzNyBhc3QtYnJhbmNoCiszMTk3NiA1YjE1MmFhYzgxM2Q3ZGIwYmUwZWZhNWY5MmNkNTQwYTUwZjZhZWQxIGFzdC1icmFuY2gKKzMxOTc3IDhmZmZhNmQxNTQ0YTg0MzVlNDAwYTE4Y2IzNTE5ZTkyMTEyYzg3ZGMgYXN0LWJyYW5jaAorMzE5NzggZGNkYzQ1MTc0MGZhYjRiOTU0MjI5OWQxYjI5ZmE3OTE5ZWZlMjgwMyBsZWdhY3ktdHJ1bmsKKzMxOTc5IGYzNjJjOWFlZGYxMzRhNWFhNDU2OTk2MjgyNThkOWQzNTUxNWEwNTAgYXN0LWJyYW5jaAorMzE5ODAgNzM2N2EzODRhNzQ1NTU4YTcwNzAwMjYxNjkwOTdhMGU4ZmE2MmVhZCBhc3QtYnJhbmNoCiszMTk4MSAxMWQ4MjdkOTM5MDQyOWI4YjE2NmY0Yjc5ZTQyZGNhMDY1NGRkNGU5IGFzdC1icmFuY2gKKzMxOTgyIDYzM2E0YmJkNzk3ZTE3ZWU4OWU2NDFjZmJhOGQ1MDI2Y2Y5NWI3YTMgYXN0LWJyYW5jaAorMzE5ODMgNzU2Zjk4N2MzNTkwMTNiOTY2MWMzN2IzMDk2OTEzNWQ3ZDViZGY1NCBhc3QtYnJhbmNoCiszMTk4NCAzNTBlYTI2ZTdmZDk1ZTllODEzYTJiNDllNmQ2YTc5NjQyNjczNDIxIGFzdC1icmFuY2gKKzMxOTg1IDIzMGNjYjllNTAwMGVhMzJhODhmNGMxODIzNmIyYmEyOGExYjRkZWIgYXN0LWJyYW5jaAorMzE5ODYgMDdmM2ZhNjM5ZDhlYzZkNWU2NGUzZDkxZTg0ZmM2NTI3ZDk4MWI3ZSBhc3QtYnJhbmNoCiszMTk4NyBiMDlkYjBiOTZhNzZiYzI4YmU2NWQwZWNkOGM0NWY3MmI3NGY4NzdkIGxlZ2FjeS10cnVuaworMzE5ODggMmRhMTRmYzllNzJiY2FjOGI4N2Q2Y2VkNmVhOTYwNDY4ZTQzMTY3OSBhc3QtYnJhbmNoCiszMTk4OSBjMjViYjkxM2EyMzYzYmY2OTcyZTI3ZWVhZDNjYzU5MjIxMWFkMWQyIGFzdC1icmFuY2gKKzMxOTkwIDhlNjdiZWY0MjlhNDA4ZGQwODlhYjk0M2JlMDBiZWNmMjA4MTk1YjEgYXN0LWJyYW5jaAorMzE5OTEgMjVhM2NjMzc2NTcyYTY3OTBiZmUzZTBlZDMxZjIyOTVmMDg3NzNlZCBhc3QtYnJhbmNoCiszMTk5MiA5MDlmYmUyNDNmOTAyNjY3Yzk0MzBiYWY1MTM4ZDg2NmQ0MjVmZjA2IGFzdC1icmFuY2gKKzMxOTkzIDZlYTIwYjg2YWM4ZGNmNjQ4YjdkOWM0MmNkYjNmZjhhMzk2MTI5MTAgYXN0LWJyYW5jaAorMzE5OTQgZjZhMTE5MjAxNDZlYjU4M2NhZmYxOTZiMTBjY2U1MzI5NDQ4MjU2MCBhc3QtYnJhbmNoCiszMTk5NSA0YmNkYTYzZTEwNTQxYzU3NjFjY2ZiNDkxNTFlMTdmMWFhZjlhOTRkIGNhY2hlLWF0dHItYnJhbmNoCiszMTk5NiBmODRlMWY0ZDQzOGViMDhlNzU3ZTBhM2RlZWIxN2NhMTY1ZGIxZGY1IGFzdC1icmFuY2gKKzMxOTk3IDQ0OTYyMDIxOTU5ZjI4ZDEyMzQ2NjNmZjczYTNlNmIxM2Y4YjAwNTQgYXN0LWJyYW5jaAorMzE5OTggNjNhYzNkNjNiOWZlN2FkYTk0MGNjNGY2MTgwZDg3YzQ4OWFhMWY1NiBhc3QtYnJhbmNoCiszMTk5OSAxM2U1NjdhZjk0ZDhhOWMyMzM3MjRjZDEyNzE2YmNkMGNiZDJkMjYxIGNhY2hlLWF0dHItYnJhbmNoCiszMjAwMCBiYzc2NTdhYzQ2YmJlN2VhZjhhOGE0MmZlNjI3ZjNkMWI1NjdkN2RjIGFzdC1icmFuY2gKKzMyMDAxIDQxYjFmMjJmY2IwMTc1NmUzMDFjNjA4NTcxYmNmZjAzYjczNDJiYjMgYXN0LWJyYW5jaAorMzIwMDIgMTQ1NjYyMTgwMGQ0NTk2NTU0YTBjNTI3MGFkZGI4NTAwMGQwODJmOSBhc3QtYnJhbmNoCiszMjAwMyA4ZThhOTExM2ZhMmQ4NWQyNzQwYTYwZWNkMWY5NmQ1MzhlNmY3ZGJhIGFzdC1icmFuY2gKKzMyMDA0IDM2NGJmZTc5NDc4ZjRjYjU2ZDc2ZWM1ZTI0YmRkMzZhNWE0NzRhMDQgY2FjaGUtYXR0ci1icmFuY2gKKzMyMDA1IGFmMTc2NDg4N2FhMjNjNTljZTBmOTBkZTYwZGMxMDhkYzhiNDkzYzUgYXN0LWJyYW5jaAorMzIwMDYgM2VmZDgzNGQwZmM1MmJmMWFlMTgwYzZhNzEwNTRiMjVjNzdjY2IwYyBjYWNoZS1hdHRyLWJyYW5jaAorMzIwMDcgNzMzNzI5MjYxYzQxYTIyNjYwNTQxMGFlMjNhMTVjN2Q5Yjc5MDA3MSBsZWdhY3ktdHJ1bmsKKzMyMDA4IGIwY2NjNWI1ZjdlMmYyZTg0ZjdhNDQ0NWFmZTQ5ZmJkNjBlZDdjYzggY2FjaGUtYXR0ci1icmFuY2gKKzMyMDA5IDYzMmE2Y2FlMGJlNmYxNjRjZTA4ZGI5ZmRiMWYyYzllODIzMWRhZmIgbGVnYWN5LXRydW5rCiszMjAxMCBhYzcyMWVkNjE5MTQ0ZmJjYmRjYjlmMWZkYjUxZmFmYzg2MGI2MzA2IGxlZ2FjeS10cnVuaworMzIwMTEgZTA2YzU0MGRjMmUyZjEzYWE3NWJiOWU3NzIwMmYxN2E3MmQ3MDc4OSBsZWdhY3ktdHJ1bmsKKzMyMDEyIGZlYTI5MjkyYjkzMWI2NzY5Nzc3YTczODNmY2MwZWYwYTEzMGM0MjAgbGVnYWN5LXRydW5rCiszMjAxMyBmM2Q0Y2MyOTk2ZDJjODYxODNiZjMwNTU4OTI3MzdjN2JmZGY2MzVkIGxlZ2FjeS10cnVuaworMzIwMTQgZjUyOWRlY2Q4MjFmZWZmNDhiNGJkMzcyN2IxODM2MDU0NzA3M2NlZiBsZWdhY3ktdHJ1bmsKKzMyMDE1IGVkM2M3MDA4ZjkwZThjNWU0NGYyNzFiOWJhNjIwOTk3ZjNkNmY1MmUgbGVnYWN5LXRydW5rCiszMjAxNiAwY2Y0ZTMyNDAzODA3ZTBjOWYwNjU3ODYwNWY1MTFjNDBhZDY4ZGQwIGxlZ2FjeS10cnVuaworMzIwMTcgNTQ5NmI4NjFjODlhYjkyNzY3MzE1MDVlYjY4YzFmMzA5M2EzMjgyZCBsZWdhY3ktdHJ1bmsKKzMyMDE4IDcwYmQ4ZDhjODc3YmMzZDMwNTIyNDIwZGE4OTc2MjdmNDM3NGMzN2MgbGVnYWN5LXRydW5rCiszMjAxOSAwYzgwMmVlYTU2MTU3OGE5MjhjNjU1MTUxMjFkNDI1MDA5OGFhOWQzIGFzdC1icmFuY2gKKzMyMDIwIGI2ZTYyY2JiZGYzZGVkMjhhNTNmMDQxYTM3ZGI2MjAwNzZmNTkwNzggYXN0LWJyYW5jaAorMzIwMjEgYjQ1MWE5ZTZkOTQwOTBmYWY0MDE2NTY5ZDU0ZDlkNTk2NWU3MzAzZSBhc3QtYnJhbmNoCiszMjAyMiAzMzkyOGE1MWYyZjExMmJmMzhiM2NmZDJjMjQ1NzYzNTZlMTFiYmU4IGFzdC1icmFuY2gKKzMyMDIzIDFhMmZkMTA5ZjZiNjk2MTk0NzExYzFlODQyOWM1MmExNDExZmQyNTEgbGVnYWN5LXRydW5rCiszMjAyNCBiNTc1NDZiMzNjYjEzNjdmMDU0NjMxYTE0ZDEzYTQyZjA5ODc5MDIxIGFzdC1icmFuY2gKKzMyMDI1IGVjNjIyMWU5Yjc5YWNjNDZmMmEyZmMzYjM3YzljYWRiZmNmZDI5MTEgbGVnYWN5LXRydW5rCiszMjAyNiBhOTM1MTI3MDM4NWFhMDRhMWMwMjY3YTJlYTMwOGRlY2I5M2U3MmIxIGxlZ2FjeS10cnVuaworMzIwMjcgMzBkMWM4NDhkMmIwMTY4NThmZjA4ZDI2ZTNhMTRjMmQwYzExZmYwNCBsZWdhY3ktdHJ1bmsKKzMyMDI4IGQ2NTUzZDA4MjdhYjk2OGM3OTA4ZDM1YjFkZDMxZWJmZWUyNTdhNDMgYXN0LWJyYW5jaAorMzIwMjkgODRiMTYzNTIzY2Q0ZGExY2Q4NzI5YTBhMjAyNDUzZTkwZGYwZDk4MCBhc3QtYnJhbmNoCiszMjAzMCAxNTJiYWY0ZTM1NTU1MWU3MWFiYzU0OTJhNTgwZDQ3OTI4MDA5OTJkIGxlZ2FjeS10cnVuaworMzIwMzEgNzIxZTllNGVlYzFlZjA4ZTExMjcwZGRlMDFhZTEyOTM4YTYxZjc4ZiBsZWdhY3ktdHJ1bmsKKzMyMDMyIGZhNzk1ZjRlNmRjNzc0YmQ2MzQ5Y2VlMWJkZmZjNTI3YTgyM2E2ZGEgYXN0LWJyYW5jaAorMzIwMzMgZTVjMDA4OTU1MzgxMTEyNmNkNTI0MzE0ZjA0N2NlZWZjZTMwMWFlOSBsZWdhY3ktdHJ1bmsKKzMyMDM0IGE4ZWM3M2QxM2QwMzNjNWFmZGFmMWZkYWVlNTA5MjdmNThlYmE4NGYgYXN0LWJyYW5jaAorMzIwMzUgYmI4NWJlODM3NmI4ZWJiOTA3Yzk2M2I5MzRkZDEyODk2OTlmNTMyZSBhc3QtYnJhbmNoCiszMjAzNiA4YWRlOTBhZjYxNGMzOGMyZGVlZDM4MDlkZjMyNDFlZmZlN2QwNWYzIGxlZ2FjeS10cnVuaworMzIwMzcgMmVkN2MxYzQ1N2I5M2ZmZjdiYjQ3OGFiNjEwMWJmMGZhODU0OTZjNCBsZWdhY3ktdHJ1bmsKKzMyMDM4IDZjNjQ2MTZkMTdlZGJjOWJmNjc2M2NhMjFjYTI3ZWY0OTBiY2NjZmIgbGVnYWN5LXRydW5rCiszMjAzOSA5ZDNhMjVlOTkwNzViMDMzMTRhNTJjOTk3ZmZjYzU5ZDVjYmRlNTFmIGxlZ2FjeS10cnVuaworMzIwNDAgMWIxZDk5ZGRhMmExZDY0MWFkMWZlYWQ1MmI4M2QwYzYxMTUxN2QxOCByZWxlYXNlMjItbWFpbnQKKzMyMDQxIDQ0NTljZGNiZjUzODQyN2ViYmE1OTBlMmE2YmI3MmE1OWU5OTdhZWYgbGVnYWN5LXRydW5rCiszMjA0MiBjYjMzMmQ0NDkxNzE2ZTIzODcwNmZiMGIzYzJmZTcxNWRkMWQ3MDVlIGxlZ2FjeS10cnVuaworMzIwNDMgY2Q1NTg4NzYyNGIzMjVmOTFlNGQzYWU1NjJjNGY5NDNjNjE4YmM0MyBsZWdhY3ktdHJ1bmsKKzMyMDQ0IDIxMTQzNDg2Y2U0MGIzNzc3NzY4NGI5MTAwMTBmNzQzMDEyYWE5YzggbGVnYWN5LXRydW5rCiszMjA0NSAwNDE4MmU1YTYwYjExMjJjMjA3NjNmNDNiNjUyNzFlNWQ3NDg5NzFjIGxlZ2FjeS10cnVuaworMzIwNDYgMmUyMDY5MmRkMjg2ODEzNmZlOTUzMTQ0MTE2NTFjYTYzMGFjY2EzOCBsZWdhY3ktdHJ1bmsKKzMyMDQ3IGVlMWM3MDkwNTBiMjQ5NDYwNTdiMGJlZmRkMzk1YTdkMWViYzkxMGUgbGVnYWN5LXRydW5rCiszMjA0OCA2MzA0MDlmNDFjYzNmNTlhZmJlYTgzM2JlNjE4YjYyMDU4MWUyMDY1IHJlbGVhc2UyMi1tYWludAorMzIwNDkgODcxZGE3MDNlNGMwYTVjMjdjMWEyZGNmMTFiODRmOGIzNzliMjYwNiBsZWdhY3ktdHJ1bmsKKzMyMDUwIDVkZGJjOTc5YzY1NTk1MTgzMDhhNjM1YzM2NzA1NTFhOGRhNjk0ZDkgYXN0LWJyYW5jaAorMzIwNTEgZDcwMDFmYWRmZWZjMzc3NWViNDI1ZDg0YTAwYmRmMDllMTk1NjE2YiBsZWdhY3ktdHJ1bmsKKzMyMDUyIGQ5M2E4NDVjZTVjMDkwM2ZkZDFjMWYyZTE5YmUxMDJhMzFjNGE5YjMgbGVnYWN5LXRydW5rCiszMjA1MyA5MzRkYmViNDBiMzE3MTU3NWY3ZGExZDMxYWRhYmUyY2JjOGI2ZjdhIHJlbGVhc2UyMi1tYWludAorMzIwNTQgZjI1ODBjMmU3NGRkNzk2NjhlM2E3YjM5YWQ2MWMxZGQ3NGQ1MzkwNyBsZWdhY3ktdHJ1bmsKKzMyMDU1IDAwOTJiNjlmN2Y5OWFhNGFkYTRlZjAxMGM4YmYzOGUxMzYzYTExM2QgbGVnYWN5LXRydW5rCiszMjA1NiAxNjFiOGJkOGEyMjZmY2Y5ZGE1OGU5MGE4ZjNlYzU1MjQ4Nzk3Mjg2IGxlZ2FjeS10cnVuaworMzIwNTcgMjQwNTM3MWJlMzRjOTY2OGU1MjBlZjMwZGE1ZmMwYjgyOGMxYTdiNyBsZWdhY3ktdHJ1bmsKKzMyMDU4IDNmYzU3NjQyNzNkOTZmMGFhMzhmNDQxZWEzNzc1NzVjMjZmNTczYmUgbGVnYWN5LXRydW5rCiszMjA1OSA1MDBmNTQ1YTI0ZjA3ZjdmMTcyYjY0YmIzZDNmMDA0ZDc3YWVkZTgyIGxlZ2FjeS10cnVuaworMzIwNjAgZjBhZDhmYTg4ZDdjY2VmMmQ0NGMzMDZiNGY5MWE2MzQwY2M2ZTY2OSBsZWdhY3ktdHJ1bmsKKzMyMDYxIDBhM2NlMzA2YjExYTVkNGE5ZjgxYzdmY2JkNDAyYTlkNmJhYTQxZGMgbGVnYWN5LXRydW5rCiszMjA2MiAxNTdjODcyZTY4OTJiOWIzZDZlNTY1ZjBmOWQ2MmNlMTk2MDRjYTE5IGxlZ2FjeS10cnVuaworMzIwNjMgMzdlYjg5MjlmMGNiNDAzMGYyYTIyYzg1ZTZiYTU1ODA2OTVlNWQxMyBsZWdhY3ktdHJ1bmsKKzMyMDY0IDU2ZDliYmJhZTZmODEwY2UwMTE5OTgwOTI2NjliODBjMGQxYzAwYTcgbGVnYWN5LXRydW5rCiszMjA2NSAwNTQ0MzQzMGQ3ZWQzZGQ0ZDZmYTZjMjMxMDUyMDYwY2M2YzM4NzE0IHJlbGVhc2UyMi1tYWludAorMzIwNjYgZGY5YjdjZWUxMzM5NTE2YmI4NTdmZWNiYjA2OWM5YTk0ZWIxNzVkNCBsZWdhY3ktdHJ1bmsKKzMyMDY3IGYzMDc4NjU0YTVjMDJmZGY4OWI1ZGE2MWE5OGY5ZThmNDAzZjNjYTggbGVnYWN5LXRydW5rCiszMjA2OCAyMzVkNTQzZTBiODQ5NzExMzVmNGUxMzk0ZmMwNzFlYzI2NDA0MjM1IHJlbGVhc2UyMi1tYWludAorMzIwNjkgN2EzZjcyOTgzYTdlZDU3N2VmYzJjMTA0ODc0ZTkyMzJlZmY3NmQ2OSBsZWdhY3ktdHJ1bmsKKzMyMDcwIDgwNDQ3M2NmNzEyMTU0NDA1MDRmMDFkMDhjYjAxODIzNDVhMTQ5MTEgcmVsZWFzZTIyLW1haW50CiszMjA3MSBkOGY5OGRjNmU3ZTA0YTE3ZWVkYzBiY2Q3ZTVlMTU3ZmNlYjkyZjA5IGxlZ2FjeS10cnVuaworMzIwNzIgMDc2Yzg2N2I5MTZlMjMwNmE0M2EyZjM0MTQxODg0ZTI1ZmFlZjk4NiBsZWdhY3ktdHJ1bmsKKzMyMDczIGRmNjViMDIxN2RkN2YwOGU2ODFlZDlmMjkzNjdiN2YwMDRkOTA4NzAgbGVnYWN5LXRydW5rCiszMjA3NSBhZjA1Zjg4Yjk2NDEzNTk2NWFlZjRjNDQ0ZWQ5YzBiYmQzMDMzYTdkIGxlZ2FjeS10cnVuaworMzIwNzYgYThkNjU3NmI5NWFmYWNiMWQxNTMyYTZlNDE1MTllOTAwY2JiMzBkYiByZWxlYXNlMjItbWFpbnQKKzMyMDc3IDljNjIwOTI1MzYxNWZmNDBiYWNlNDM5YTQ3OGQ0NmNkYWI4ZjcxZTkgYXN0LWJyYW5jaAorMzIwNzggNWZiZDg4MDFmYTI2MjVlYjJhODk0MjkyOTczOThhMzNkMmIzY2ZiMiBsZWdhY3ktdHJ1bmsKKzMyMDc5IDE1OTJlYTM2YTcwMjMyN2U1YjZiNjM1NmQyNTI2YmE5N2EzNjYxNzEgbGVnYWN5LXRydW5rCiszMjA4MCBhZDQyY2JlYTIyNThhNzcyMjk0YTVmYjgxY2Y5YmVlNmE4YjZiN2MwIGxlZ2FjeS10cnVuaworMzIwODEgYzdmMTBhOTAwZDYzMjg4ODNhOTJhZTVhZTg5NDc1ZjBjNjllNTYxYyBhc3QtYnJhbmNoCiszMjA4MiBiODcwOTVmYmIwNTE2OGQxY2UyZTE3MDYyOThhZDU2ZGUwYTVjZmQyIGxlZ2FjeS10cnVuaworMzIwODMgZmM4NDE1MzUxODBjOTg0YmNkODZlNTFiZDE4MGM1MmRlMjk3ZjJhMSBsZWdhY3ktdHJ1bmsKKzMyMDg0IDcxNDBhNjIzNmMzYTg4Yzk4MmE0MmIxZmY1ZTFmZTQ0MGQ2MWRlZTAgbGVnYWN5LXRydW5rCiszMjA4NSA3NTFkN2NlOWI0YjIzYTg0YzhkN2MxNGJmNGI4YWY5NjE2OTdjNGFhIGxlZ2FjeS10cnVuaworMzIwODYgYjY2YTJlNDFkYTNlZTk5MTVmZjVkZjY0NWI0YzczODE1NWNlYjE5ZSByZWxlYXNlMjItbWFpbnQKKzMyMDg3IDA0YzFiYTUxZWZkYmNiYmM5OWY1MzJiMjg4ZDQ5Y2Y4ZTdiYWNmMDkgbGVnYWN5LXRydW5rCiszMjA4OCA4NTJhYWU4NGM5ODEzNzNlMDJhYzRlZjVkODcwYmFiYjhiY2I3N2U2IGxlZ2FjeS10cnVuaworMzIwODkgMGY1NThlZWRlNmM1NzdhNThjYzEzOWI1YmNmZDNlMmZkZTE0ZmZiYyBsZWdhY3ktdHJ1bmsKKzMyMDkwIDUwNWU4YzBmYTkyZmUyY2EyYzJiNzY0ODc4YjI1ODJlMzA0ZjQ2NzcgbGVnYWN5LXRydW5rCiszMjA5MSBiYmI3NDhmNjgxNGQ2NDBhNjQ5ZGYzNTQ0MWFlM2FiZWIyMzE1ZWJkIGxlZ2FjeS10cnVuaworMzIwOTIgZjNhZGQ0MTY2MjhkYzc0MTQzNmZhNWNmNDc0MTllZDgwYTg1ZTA3YSByZWxlYXNlMjItbWFpbnQKKzMyMDkzIGIxZmJiODNlNTEzOTE0OWU5Yjc2NTk1MmFjNDU5NTVmZTVkODY3NDQgcmVsZWFzZTIyLW1haW50CiszMjA5NCA4ODAyZGUwZGE1MzM5MTE2MGZkM2UzNWQ3Yjk1MjM3NDIyNTE5MTJkIGxlZ2FjeS10cnVuaworMzIwOTUgZTEzYTdlMWZkYjllNWI3YzI4YzEyY2YyN2QyYmJlOTM5NTExOTYyYSBsZWdhY3ktdHJ1bmsKKzMyMDk2IDg2YTRjZWE3MDk3M2FiZWI0NzMyODYzNTU1YzQ0OGU0ZjQ0NjBlZDcgbGVnYWN5LXRydW5rCiszMjA5NyAxMmRhZDIwODFlMmU4MjNmZTkyMTk1NjQ0NWY4MWUwOTkzM2U3YmU3IGFzdC1icmFuY2gKKzMyMDk4IDRhZWJhY2M3ODY3YmIxZTBmYWFjZjIyMDMxYzhlODMwOGJiYWVkMDcgYXN0LWJyYW5jaAorMzIwOTkgZjExNTQ0NzNkYWM4YTcwZGY0MzVmYWZlYWY4NzA3Zjk3ZDQzZWQ0MyByZWxlYXNlMjItbWFpbnQKKzMyMTAwIGFmZDVjMmU0YjRhZjZkYzFlY2UwODIwNWM0YjYzMWIyN2RmODA2MTggcmVsZWFzZTIyLW1haW50CiszMjEwMSAyODdkYWE2YTdmNGYyMjBkZTgxMDhmOGY1NjA3NGUyZTM4MTJkNGEwIHJlbGVhc2UyMi1tYWludAorMzIxMDIgOGVmZTk0NDU0OTViMGI3NmQ0MDZhNWFhNWNlYzk0NWRjZGY3YjY2NCByZWxlYXNlMjItbWFpbnQKKzMyMTAzIDU1NTBmNWE5ZDcwY2E3NjIwMmVkMzA3NzJhZjBlM2Y1YjA1OWMxODcgbGVnYWN5LXRydW5rCiszMjEwNCBhOGU1ZWMwNzA0MzNmNWFjYTJiYmRlNzg5MWYzMzQ1ZjM1NWUxNzVhIGxlZ2FjeS10cnVuaworMzIxMDUgMzYyMjJkMzgyM2YxMjk4NjAzNDEwNjY1NjRjZmYxMWQ3ZDYzZjk1MiByZWxlYXNlMjItbWFpbnQKKzMyMTA2IDk3M2Y5ZDM1Y2YxZDBmMTUyNGQ3MzRlYjVkNzlhMjczYTVjMjAyZWQgbGVnYWN5LXRydW5rCiszMjEwNyBhYjJhNTQzZTg1NWJjOTg4ZWJiYjJjOTNiNTIzYjM2MzY5ZjkwNzQ3IGxlZ2FjeS10cnVuaworMzIxMDggZjM4Y2E5ZTFiNjgzYmY3YThiNmI4NGNiNWRjNTk5MjQ4NzYxN2MyOSBhc3QtYnJhbmNoCiszMjEwOSAwYzQzMzVmMTBjNjdhMmQzYTc4MzlmN2I0YjAyYjIyN2EyZWJlNmZmIGFzdC1icmFuY2gKKzMyMTEwIDQzMDhlOGE2YzQ4MGRlMDBiZTJmNjA4OTVkODMzMDI4ZGI4OGY2MGEgYXN0LWJyYW5jaAorMzIxMTEgZGM4OTBhNGMwNTI4MDU1ZWQzMWZiMDIzYjNjM2Q1MDUwZGNjYThlMCBsZWdhY3ktdHJ1bmsKKzMyMTEyIGI4NWEyMDU2MzFhNDVjMDM4YTVmZGEzMzJmOGViZDllN2E1Y2M5MDIgbGVnYWN5LXRydW5rCiszMjExMyBmMzExYjVkMjFlZjU2NGIxMGRiODVhM2RiNjhkODdlMGNkNTcwYWIxIGxlZ2FjeS10cnVuaworMzIxMTQgNGY4ZjE3YWYzNDg3YmFiMTRiMDBiNDZiOTc4N2JiYWMzYzRmM2Q1MiBhc3QtYnJhbmNoCiszMjExNSA3MzhlMzc4ZmEwY2MxNzE4YzEwZmFmMWM2OGRjNDhhODI2YzI3MWYzIGxlZ2FjeS10cnVuaworMzIxMTYgMzJiZWE0MWZlZjY4ZDA0OGEyNmNjYmFjYTU5NDk2YzNhYjVhYjg0YyBsZWdhY3ktdHJ1bmsKKzMyMTE3IGQ3ZDdhZjVmMzIzMWYwMTJkNThmNTNkNDcwYzRhNmJhZDZiZThiY2MgbGVnYWN5LXRydW5rCiszMjExOCA0OTIwMjhlNDcyNmYxNTc1NTAzYWU1YTNjNThlNzljMThhNDVjYmFhIGFzdC1icmFuY2gKKzMyMTE5IDgxYmNjMGY1N2Q1NzBmYmRmNWYwY2RiMjM2MDI3MTk5NTkzMzg5MmIgYXN0LWJyYW5jaAorMzIxMjAgY2ViN2JiNzkxMzUzMzY2MzAwNWZlM2Q2ZWRiNzk4YzRiZGRiN2ZkMyBhc3QtYnJhbmNoCiszMjEyMSBlZDIxZDhiMzdlMzNkNTVmNWY4ZWEzOTA1MjM0M2FlMTZmNjUzNDM1IGxlZ2FjeS10cnVuaworMzIxMjIgM2Q4YzEyMTRhMWM3OWJhNzgxNDBiM2Y3NGFkNDI4YTI1ZTY2ZGQ1MiBhc3QtYnJhbmNoCiszMjEyMyBlZDczZDY1ODcyNWFhNzhkYTZmY2VkZjNkMDBhN2Y5NjEwYmRjOTZiIGFzdC1icmFuY2gKKzMyMTI0IDQwZDk2NTliNTZjOTQ2YzU3MTUxZWQ1YjIwZmEyY2ViMGI0NDMyNWEgbGVnYWN5LXRydW5rCiszMjEyNSAzZTM5OWE4NjE4ZGIzNWI0N2JkNTFiODJhYmMyN2QxMjQ0OGNkMjBkIGxlZ2FjeS10cnVuaworMzIxMjYgNDJkZmEwODkxYjMzMjY2MTE3MDhkMjczNTk1NmNhZTkwZTM4NTY2OCByZWxlYXNlMjItbWFpbnQKKzMyMTI3IGNiYTBhZWVlMGQ2NTE1MzFiOWFhNTU1ZjRjOGIwM2EwOTM4NDUzNTYgbGVnYWN5LXRydW5rCiszMjEyOCAwMGE1NmZiZWE2OWZiMGE3MGFiNzBlNjE0ZDQ0MDQ4Mzg2MjIyMWM0IHJlbGVhc2UyMi1tYWludAorMzIxMjkgMGZjZjlhZTI1Y2ZlYmU3M2MxMGI4MTIxMGU4OTI4ZTljMzE0YzVkZSByZWxlYXNlMjItbWFpbnQKKzMyMTMwIDRiNmUyMGYwYmE0Y2RhNTM5YzYzYzkwMDE4ZWZmZjc3MmJhNmQ4OGMgcmVsZWFzZTIyLW1haW50CiszMjEzMSBjYjVkYjU1NjFjZGNhOWQzNGQyYjA2NjQ2Mjc1YjA2YTNjZDhlOGU0IGxlZ2FjeS10cnVuaworMzIxMzIgODQ5ZGZlYTE4MmNhMzc3MzM5ZGRiZWM0ZDliMTQ0NmI0NjAzNWU1MCBsZWdhY3ktdHJ1bmsKKzMyMTMzIDExN2FjZTg1MjFhMWQyOTY3YWQxZTM2YzIxYWM5ODlhYTZkNzExNTggbGVnYWN5LXRydW5rCiszMjEzNCBhMDUwM2JkYjBjMjQyY2Q4OGRmM2YyNmU2N2IwMzYwMGVlZDFmNzYzIGxlZ2FjeS10cnVuaworMzIxMzUgODIzM2EwMjk0YzQxZTNkZTAwNTc0NGMwZGRhMTYxMDhmOWMxMDY4MiBsZWdhY3ktdHJ1bmsKKzMyMTM2IDM3NWZkYjgyYTNjYWUzMjhhNTgyNzI3ZjQ4M2RlZmJkMzJhN2JlNTEgbGVnYWN5LXRydW5rCiszMjEzNyAwZGUwZGVkMTk5NjhlYzQ3MjIxODdmNmQ5NzJjY2FjMDY2NWEyNDMxIGxlZ2FjeS10cnVuaworMzIxMzggYWNmMzU5NmZjYzI4ZDUwNGZmYjgxNTdhMTdlYzA0ODM2NjA0MTE5MiBsZWdhY3ktdHJ1bmsKKzMyMTM5IDE3NGNlNGNkZWM0NzI2ZDkxMTg0YzdjN2ZkODljNDMwMGU0MzY4NDMgbGVnYWN5LXRydW5rCiszMjE0MCA5MGM3N2I4YWYxYTQ5NzQ0NjBmMjZmYjJiMzdkNzVkY2NkNTRhYmIyIGxlZ2FjeS10cnVuaworMzIxNDEgOTQwMDUwNGNiMGIyNjFlMDMzZWRkZjI4OGMyNjE5MmNmZGQ1MWMzMSBsZWdhY3ktdHJ1bmsKKzMyMTQyIDRjNTk2ZGQ2MGMyMmQzMGQ0ZGViZjg2NzRlMTQ0YTkzNGI0ZGEzODggbGVnYWN5LXRydW5rCiszMjE0MyA3OGY4NDZmYjU3MGEwNjMyYTc2ZTdiZTI4ZDUwMjliY2ZiMzk4NDNlIGxlZ2FjeS10cnVuaworMzIxNDQgMzY4YmViZTMyNzQzMzkwMWM2NjdlZmVmMWI1ODU1OTM3MWM2NzcyMCBsZWdhY3ktdHJ1bmsKKzMyMTQ1IDI1ZTc0Njc4NzFjNTg3MmI5YjcxY2Y4NDdjOWMzNTJiNTY1NWEzZDggbGVnYWN5LXRydW5rCiszMjE0NiAyYTMwOTVhNDE1YjEwYmExMDM1NzM0ODFhNzFhNGIwNDM3MjYzMmZmIGxlZ2FjeS10cnVuaworMzIxNDcgNjY1M2E1NjAwMmVmOWQ4MzE2ZGI4YTNmYTRkNjA0OTAxNDliZDBhMyBsZWdhY3ktdHJ1bmsKKzMyMTQ4IDk2NGJkOTdhYzFmNWJkM2Q5NTM3ZWIwNDM5NjA0MTg5MjQyM2Q3ZDYgbGVnYWN5LXRydW5rCiszMjE0OSA0ODdkZjI5NGQzMjgxMGM4ZWFmMTUwZjJmNWY3N2JmZWRkMjIwNjZjIGxlZ2FjeS10cnVuaworMzIxNTAgYzAxZmRjM2E5MTgwNDJkOTQxZWQ1ZWM3MGQ2ZWI0N2ZiODdkYTQ2MSBsZWdhY3ktdHJ1bmsKKzMyMTUxIDRmZjYxMWIxNjQ4NDkzM2YwMjM0ZmQwOGM2MWY5YTI3YzE0OWQ3MGQgbGVnYWN5LXRydW5rCiszMjE1MiA5MmQwMWYxMDJjYTA5OTNlYjE0NGI1YjdjMzY3NzAxNGM4ZDNjMTNjIHJlbGVhc2UyMi1tYWludAorMzIxNTMgYjViM2U2ZjNmMzE3ZWQ4ZDQzOTZhNzdhNDUxOGFkMWMxZjJjZTNlZiBsZWdhY3ktdHJ1bmsKKzMyMTU0IDViNTQ2MmFlMzE0ZGRkMzU3M2UyNzRiMmNkZWVhMDA5ODMwNmU2ZTQgbGVnYWN5LXRydW5rCiszMjE1NSA1ZmE4MzQ0ZDZlNmYwMWQ1MmFjMDk0NjJmZjlhOTZlODMyMjc0ZjM2IHJlbGVhc2UyMi1tYWludAorMzIxNTYgOGJmMDg0YzRhZDlmNzRiOGEzNTEwNDIyZWY1M2Y3YmRjNmYyY2ZhNSByZWxlYXNlMjItbWFpbnQKKzMyMTU3IGJhNzE2MjI0OTc0ZTk3NjlmODdjMjk2YjIyMzAzYjIwNDQ3MDllZmYgcmVsZWFzZTIyLW1haW50CiszMjE1OCAxNjM5ZjYzNWQ5ODNiOWZjNDcwYTc3MzQ5ZWY4OTQ5ZTBmNzYyMzA5IGxlZ2FjeS10cnVuaworMzIxNTkgODc4MzY2YjBlOTdhYzcxNWEyYWMzNTA4YjVlODI3NWQ2NzhjMmIyZSBsZWdhY3ktdHJ1bmsKKzMyMTYwIGYyMTNlZTZjZTU1ZWU4ZmEzYzE0YjY1OTBlZmU4NmU1ODIyOGY5MmUgbGVnYWN5LXRydW5rCiszMjE2MSBiOTA2NGVhMDU5M2VhMWQ3MzQ3MmJmNjZmZGFjMTA5ZGQ4NDlhMGYyIGxlZ2FjeS10cnVuaworMzIxNjIgYWUwYWViMGQ2MzFiYzVjNWNhM2YwZmUzNTIxM2M1MjliMzY3YzUwOCBsZWdhY3ktdHJ1bmsKKzMyMTYzIDQ2OWZiNmNlOTY5MzUxZmIzMDc2ZmY4M2E4NTkwYmYxYjg5NzM5MjMgcmVsZWFzZTIyLW1haW50CiszMjE2NCBjN2JiMjU0YWI4OTBlMWI5NTI0Y2U0Yjc1Yzk4YmZjOGE1NWM0ZDU3IGxlZ2FjeS10cnVuaworMzIxNjUgNzExMDNkZjlkNjRiMDdkYzNjMTA3NWMxOTliNTk2NmE0MTdmYmJiMyBsZWdhY3ktdHJ1bmsKKzMyMTY2IGJiZWQ3ZTEyYjg0MjJjMDkxZWVlMjE3NDk1N2EzNmYzM2U3ZDBhMWQgbGVnYWN5LXRydW5rCiszMjE2NyA4OTg0ZGYyZGMyN2IyNzBkOGMyOTAzMzE1NzMwODVlMjlhZGZjYTgyIGxlZ2FjeS10cnVuaworMzIxNjggYjYxYTllMjFhNjZkY2E1OWZlMThhY2RmZTg4OTJmMDZlY2MwZDBkNSBsZWdhY3ktdHJ1bmsKKzMyMTY5IDM0NDgzNzY5MDc4YjMzMzcwYWRmZGY3ODIwZGI3M2ZlMTc2NDJiZTYgbGVnYWN5LXRydW5rCiszMjE3MCBlOTMwYmViZWM4YzBmNWRkM2M0MGY5MGNmM2IzNWM5NjFiNDA3OTEzIGxlZ2FjeS10cnVuaworMzIxNzEgZWU4ODUzY2M4Y2ExZjY5YTg5NzM4NmE5Y2ZiNjFjMThlZjQ2YTc3YyBsZWdhY3ktdHJ1bmsKKzMyMTcyIDAxN2QyZTNlYTJhZTRiYTZkZDQyNzVmNTI1NTI2ZWJlOTEyNWE2MjcgbGVnYWN5LXRydW5rCiszMjE3MyBmZDQzNGJlYjVmNTYwNzliMzQ5ZDMyMmY3YzkwNzYzZjNmMDJjNmU0IGxlZ2FjeS10cnVuaworMzIxNzQgNmFhMWMwODI2YTM5YmU2ODM0NDI5OWYxZGQwN2ZjZmU2MjUyNTQwZiBsZWdhY3ktdHJ1bmsKKzMyMTc1IGQxMGRiYjk0YzllZTFiZmY5YzE0ZTZjNWYwODc4MTU3MzEyZjY1OTQgbGVnYWN5LXRydW5rCiszMjE3NiAyZDRjMWU0ZTViMzZiNTQ0OTkyMTY2NTZiNjVmNzMzMDJiYTkyNDI1IHJlbGVhc2UyMi1tYWludAorMzIxNzcgZGI0Nzk5Y2EyMDIxYmNmNTVkOTI3YWZlMzQ4MjM0MjNkNDdiOGRkNiBsZWdhY3ktdHJ1bmsKKzMyMTc4IDlhY2RjNmM0NDE2YWM1MjI4ODI1NzhlZjg0ZjIzYjEwZWRlNTY1YTAgbGVnYWN5LXRydW5rCiszMjE3OSBiMzdiMjk4MjA4NmJjMzMzMTE4OTYyMjEzYWExNjYxMzhkZDBiMDQzIGxlZ2FjeS10cnVuaworMzIxODAgNjJlODgzZTJkNTE3MTFmMDA4ZjEzOTgzZTBlMTQ5YmM5MjhmOWNmZiBsZWdhY3ktdHJ1bmsKKzMyMTgxIGU2YmYwOGRhZGQ1YzIxNzYwNWVlOWRmY2IxNDEzZmUxMWIwOWZlM2YgcmVsZWFzZTIyLW1haW50CiszMjE4MiBiNDQ4N2EzYjVmMWExZDFiZjM0NDIwZjlhZGQzNGFjZjVlZjk3NzU4IHJlbGVhc2UyMi1tYWludAorMzIxODMgNzgzOTVlNWI0NzgyY2MzNDkyODg0ZmMzZTljNTVkMDk3NzVkZjFiMyBsZWdhY3ktdHJ1bmsKKzMyMTg0IGJhMmQ4OTIxYThkYTAxOWI4ZjIwMzIyNzIyZmI2ZWY0NmY1Y2E4MzEgbGVnYWN5LXRydW5rCiszMjE4NSA4NGFjYmEyMjc5NTQyNGNmZGU1YzE0MzgzZDMyMDkzNTg0YmVlODNlIGxlZ2FjeS10cnVuaworMzIxODYgYWZmMDgwZjJlZmI0ODY4YmY4YWE2NzYzZjY0OTdiZGYzZDMyZjZmYSBsZWdhY3ktdHJ1bmsKKzMyMTg3IGU5MmMyNWQ0MjhiODdmMDIyYmRkYzFiYTBkMzE3ODhlZDY0ZDU0ZTIgbGVnYWN5LXRydW5rCiszMjE4OCAyMWY3Y2ZmMTc5MGZkYzhkNTllNTFjN2MzYjhhNzllN2UxYWIwYTYwIGxlZ2FjeS10cnVuaworMzIxODkgY2Q1MDExMjE3MTViMDY4YTM1OGMyYzA1MmYxMTdjOWFhOTA2NGY1MyBsZWdhY3ktdHJ1bmsKKzMyMTkwIDdhNjI4MTQ5M2QyYzY3MTA0N2MxZGZkNTU4NTBiNGJjNzA5NDBjMTAgbGVnYWN5LXRydW5rCiszMjE5MSBmMjFjZDA3OWQxMDgzNWY0MTQxNDNjZGU0MWY4OTVhMTA1MGFkYjhiIGxlZ2FjeS10cnVuaworMzIxOTIgNmU3ZWZkNmMyNTEwYTJiMmQxY2QxYjVmYjdiMGVhMzA2NWMxYzg4ZSBsZWdhY3ktdHJ1bmsKKzMyMTkzIDlkZGM0OThiNzAxM2I4NmU3MWI4OGFiNjAwMzkyZmI5NTE4ODAzZDUgbGVnYWN5LXRydW5rCiszMjE5NCBiYzg5MjNmZGQ4M2I1ODhmYmFjZGY1NGQyYTgzYzkyYjljZTdiNWIxIGxlZ2FjeS10cnVuaworMzIxOTUgZDA4ZDdiNGJlNTMyMDEzMjEyZmZiYjAwYTVlNzk5ZGMwYmRkZjU1YSBsZWdhY3ktdHJ1bmsKKzMyMTk2IDc1MTEzNzU5MjUyYzc4OGMxNjI3NzI5ZjczNTZjNThhM2UyNDc4ZjUgbGVnYWN5LXRydW5rCiszMjE5NyBiZmM3YTlmYTM0ZDZkYjIzNGU4OTE4MjMxMDljYjQxNzA1ZGQxMTk5IGxlZ2FjeS10cnVuaworMzIxOTggNWZiZGNhZWY5ZGRhYTIzMjVhNzQ1NGU1OTM0NmVmYjJjMjEyMjI0OSBsZWdhY3ktdHJ1bmsKKzMyMTk5IGZhZWI3MDhiYWNjNDIxNjY3ZjYwYTNhNGY2NzA1Y2I5MTEyMDcyNzIgcmVsZWFzZTIyLW1haW50CiszMjIwMCBkYTc0YmRkOTM0NDFiZDQwMjQ2YjljZDk2MTY0YmQ5NDE0YjZlYTQ2IGxlZ2FjeS10cnVuaworMzIyMDEgYmUyZWNhZmIxNWFkMGVhMDI2ZmE5NmJjMjFhY2Y1YzFkNTMzZDYxOSBsZWdhY3ktdHJ1bmsKKzMyMjAyIDIxNWYxZjQ4NTFhNDYzOWFlY2Y2NDIxOTdlNzNkZmNlYWY3N2UyNDIgbGVnYWN5LXRydW5rCiszMjIwMyAxYmQ1MGMyODIwM2ZjZjI3ZTMwZGJjNWQzZTAzYTg1MzliNTJiNDc3IGxlZ2FjeS10cnVuaworMzIyMDQgZjMwMWVhZWRkZTg1OGJkYTdkMDAyYzg4ZmU1NjljZmRlYjJkODEzMCBsZWdhY3ktdHJ1bmsKKzMyMjA1IDhiNDk0NDVjMGEwZTAzOTBiZjA1YmIxMzY5OTQxNGQ5YzFhZDYwNjkgbGVnYWN5LXRydW5rCiszMjIwNiA5ODEwMzJlNjQ3MzYyZjA4MWE4OTFkOTExY2E0NzQ4NmJjMTkzY2JhIGxlZ2FjeS10cnVuaworMzIyMDcgYTVjNWRhNTQ2YzI5MjhjN2RmMTU4NjgyMzljYTBkMWVkMTJjNjcxMSBsZWdhY3ktdHJ1bmsKKzMyMjA4IGMyYWQ2MmY0ZWE5YjMwYjVhZTAzZTdhMzFjNWEwOGM4YjBjMGJjYTIgcmVsZWFzZTIyLW1haW50CiszMjIwOSAwM2JiMGM0MDhkNTczMThjYTViZThlOWY5NTJmYzkxNWUzMWE0MjcyIGxlZ2FjeS10cnVuaworMzIyMTAgYTBjMDAyMDUwNTI2NWE4ZTM4OTdkZDYyNDRjNjJkOWRiNWYxYTFhOSBsZWdhY3ktdHJ1bmsKKzMyMjExIGMzNmJkMWM4MzZiOGM4MGNkZjZkODc5OTlhYjIwMDRiYmY2NjRjZTYgbGVnYWN5LXRydW5rCiszMjIxMiAwZDI2OGM2ZWYwMGFjZGU2YTAxODBmMGQ4ZmU2YjMyNDEzMzNiNWVjIGxlZ2FjeS10cnVuaworMzIyMTMgOTRhOTg2NWFhMWM2NDQxOWMzYmI0OWM4M2JkMGExNTNiZWM4NWUwNSBsZWdhY3ktdHJ1bmsKKzMyMjE0IDhjOTMwNzViOWNiNTUxMGJhOTNhOTE4MzIzZTA1Y2Y0MWQ4MzgzYWEgbGVnYWN5LXRydW5rCiszMjIxNSAwMmM4N2YzNDhlZGIyMmY4ZTVjMTIzZjQ4ZTJmOWNiODFiMzNlODFhIGxlZ2FjeS10cnVuaworMzIyMTYgYTU3ZWU3YjJhODc5ZGUwMmJiNTU3ZWQ4ZGQ1Y2EyYTM0MzFiYzg1YyBsZWdhY3ktdHJ1bmsKKzMyMjE3IDk1YjZkZDA0ZGE4ZmRjMWQ4ZGFkODY1NzYzNmM2YTdiZDJjMjEwYmIgbGVnYWN5LXRydW5rCiszMjIxOCA4ODNhNjk0Nzk1ZjU3MDNjYjQxZWNmYjVjYTkyZjYwMGJiZWRjMjc4IGxlZ2FjeS10cnVuaworMzIyMTkgZWYwNWY5ODFiYzRiOGRhYjFiYmQ4OWJhYTUxY2Y0NTI2ZWE4OGM1ZCBsZWdhY3ktdHJ1bmsKKzMyMjIwIDZmMTNhZGRlMWI1MWJiNDkyOTQ2YWFlMGRhMjZjYzIzNGYzMzcwYTcgbGVnYWN5LXRydW5rCiszMjIyMSBkZTUwOTM0ZTExNDViZjZkOTBiNjU5NTlmNmNlMTg2ZjJlMDUyOTBkIGxlZ2FjeS10cnVuaworMzIyMjIgMjJhZmRlMjZiM2QxNjZhYzBmMjZhNmE0NTlmZmZjNmYyZjNlMmZjMSBsZWdhY3ktdHJ1bmsKKzMyMjIzIDlmZWRlNzAwM2M2NWY2ZjZlMWIxOTU3ODU4Njk0NzJlZWI5ODc0MDkgbGVnYWN5LXRydW5rCiszMjIyNCBkMmQyMzJlMjQyN2JmNzRlZWZmZGM1NGIyYzdmMWNlYzkzYmFlOTNhIGxlZ2FjeS10cnVuaworMzIyMjUgM2NmMjZiOWY5NmY3ZTY0NjQwODcyMGIzYWRkNWMwZGQzM2FhZDZjYyBsZWdhY3ktdHJ1bmsKKzMyMjI2IDExNjYwZjQzNjFmOGEzNjg5NzU5YWNhYTU2MDFjZmY4Y2MwNDM2ZjkgbGVnYWN5LXRydW5rCiszMjIyNyAxYWVhZDBjODQ1MDc3ZTA4MDc1NDcyMmFmMjkwMjg3Y2Q3MjIzZmQzIGxlZ2FjeS10cnVuaworMzIyMjggNThkYjVmYmQ5YzI4MmE0OTc1ZDc0NWFlYTBmNzA2ZTc4YjY2OTBjNyBsZWdhY3ktdHJ1bmsKKzMyMjI5IDIwZWU2OGNiMGJjNDdjNjczZDBlOTkyZjI0N2I0NTc4ODIwNzQ2YTAgbGVnYWN5LXRydW5rCiszMjIzMCA3ZmUzM2MxNTQxZGZmYWY4MWE5M2Y5ZjI2ZDEwYjcxZWEyZmEwMjJmIGxlZ2FjeS10cnVuaworMzIyMzEgZWVlNDk2OWFkYmFlMGQxNjQyZmExYTJjNDQ2YzUwNzNlZDZiNzZmZCBsZWdhY3ktdHJ1bmsKKzMyMjMyIDk0NDE2OTRhNzBjN2VkMzk4MzY2MDc2NDJkZjQzM2NhMmRhZTQ3NGYgbGVnYWN5LXRydW5rCiszMjIzMyA0MzZkODEyZjJiOTRiN2RhYjdhYWQyYzk3MDUzMTdkMWVhYmVmY2UzIGxlZ2FjeS10cnVuaworMzIyMzQgZjNiMjRhMmY2ZjRkYTg2YTkyNzBlOWFhNGI1MTRhMzU2MTAyMmY1MyBsZWdhY3ktdHJ1bmsKKzMyMjM1IDgzMjIwNzdkMjM0Y2ZhYjgwYWU5ODZjMzY2MTAzNTE2Mzk3YzM0OGUgbGVnYWN5LXRydW5rCiszMjIzNiA2OTUyMzczZThmZTVjODcyZTYzNzkxNDgwMjYyMjk4ZWMyMzhiNWZhIGxlZ2FjeS10cnVuaworMzIyMzcgNjdkMzZmNGRmZWExMjRhZTg1YzBjMTBkMjhiODMzODMzYWI3MmIyZCBsZWdhY3ktdHJ1bmsKKzMyMjM4IGM3MWI5YmExZjA0YzE0ODI5ZmE5NjU0ZDlkZDUzZDBiYjM3OWQxZWIgbGVnYWN5LXRydW5rCiszMjIzOSAwNzkyY2FhNjM3MWM5ZDFkMjVkMDRiYjBjNzU3NTgxNjI0M2NjZmVlIGxlZ2FjeS10cnVuaworMzIyNDAgYjE2NzE1NTBjN2UxZGM3ODI4MTcyYmIwYjQ2MmE2OTFjNzY3OGViMSBsZWdhY3ktdHJ1bmsKKzMyMjQxIDRjNjU4NTI1M2U2ZjEzMjRkMjEzYWY0YjlmYTQ2ZDFmODQ5ZTE0YzAgbGVnYWN5LXRydW5rCiszMjI0MiBiNGI4ZmUyYTYzMmMzYmNiNDUyYmMwNDBkYThkMjM4Y2E4NzM4YTllIGxlZ2FjeS10cnVuaworMzIyNDMgNGYwYjdhY2ZmYzdkNGM0YzdlYjQyZDNjMGIwOGNjYTI5ZjU3YjU5YSBsZWdhY3ktdHJ1bmsKKzMyMjQ0IGQ1MzU3YWFkZTRiNzMwNjQ3MGNhZjg0ZmEwZjFlYjI5MmYwZGQyYWMgbGVnYWN5LXRydW5rCiszMjI0NSA5ZmRmYTczNjU3OGQ3MzZkNzA4YTQ3NGU1M2M2NWRjOGYwN2FlNTk0IGxlZ2FjeS10cnVuaworMzIyNDYgZWI1NTE4OGYxNjNhY2VlN2EzYzlhZTc5MTJlOTMzMGUyNjQyZGQzNyBsZWdhY3ktdHJ1bmsKKzMyMjQ3IGRkZDkwNmVmZmQ5YzNiNjVkMGUxM2M5ZDg1NWZjNTM2M2MxM2NlMmIgbGVnYWN5LXRydW5rCiszMjI0OCA4MjRkYzI4ZjkyMmQyOTljMTc2YmI3MzY5MjcyNjQzMjNmZDc1ZWU4IGxlZ2FjeS10cnVuaworMzIyNDkgNmMwMDA0NjkwOTQxOGI3MjFiY2FkNDExZjk4YjkxZTdhNGUyYzYxMCBsZWdhY3ktdHJ1bmsKKzMyMjUwIDgxZTViZjYyM2VjZjc1OGJjMjVjNjJjYmIxZWJkNGVjMTIwZGVkOTIgbGVnYWN5LXRydW5rCiszMjI1MSBlODBmMThhNDljYzlhYzhlMzExZjQxZDhkNjA3MTMxNGZiMDQ3OTllIGxlZ2FjeS10cnVuaworMzIyNTIgMDdkOGUwZWFiM2FmNDlkNThlMzIwMmI5ZTgyNjk0ZTE5OTg1YmUwYyBsZWdhY3ktdHJ1bmsKKzMyMjUzIDJjZmQ5MTZkZDMxMjQ5ZGYyZDQ1NThhZTNiOWJkM2U5M2JhZmNkMTMgbGVnYWN5LXRydW5rCiszMjI1NCAzYzM5MTk1ZGFiOWE0MGVmMzE5MDhmNjRkMGZlODRkZGUzOGFhM2IwIGxlZ2FjeS10cnVuaworMzIyNTUgM2Q5M2MzMDM5Yzg3MWNjZTkxOTc4ZmZjN2I0OGU2NzMxZGFkZDc3YiBsZWdhY3ktdHJ1bmsKKzMyMjU2IDhhYjc1MmRiNDc3NWQ1NTNmNzMxYWZkM2QwMzEyMDlkZGI3ZjgwNTEgbGVnYWN5LXRydW5rCiszMjI1NyBmYTgyZjg2ZWFhMDk5NDBhNjZjZTM5MzRiODU2NzU1NjRiM2Y1Nzk3IGxlZ2FjeS10cnVuaworMzIyNTggMzM5MmYzOGJkMTE0YjhlMTU5YTIxZTIwMmRmMDBjNGY0Y2VjMGViNCBsZWdhY3ktdHJ1bmsKKzMyMjU5IDk0N2MyOTM3YzA5ZTIyMTNlMTU1YjAzNWZkYjk0M2JhZjA5YTFkMmMgbGVnYWN5LXRydW5rCiszMjI2MCBhMjZiNmIyNzVmYjcyZDk4OTdjZTFjOTk3OWIyMTBlNmY1YmYxODVlIGxlZ2FjeS10cnVuaworMzIyNjEgMzZlOWJhNDA1NDkyNTlmM2VlMWU3NGUyZjQ1ODNkODY4YmNmZGU1MyBsZWdhY3ktdHJ1bmsKKzMyMjYyIGM2MjllZDhhOWRiYjNhODRjYzM1ZmU5YzNkYWIyN2E0ZmY1YzllZTIgcmVsZWFzZTIyLW1haW50CiszMjI2MyAxMWY3ZjExODA3MmI2NGZmMDFmZjIzNjI0MjkxNjllZGM0NWFlZWExIGxlZ2FjeS10cnVuaworMzIyNjQgYWNmYTBmZjhjNWE0MDE2YjU5ZWYwNTYxZDJiOWE0YzE2MWU3MmY0MSBsZWdhY3ktdHJ1bmsKKzMyMjY1IDliZTQxMDM4MDdmNWM3NDVmZjliMjUwNjRmYzZmMmY3NjhjNGQxYjkgbGVnYWN5LXRydW5rCiszMjI2NiBiZTBkNGVjNmJmNWE5YjgwZTkxY2E1M2ZiM2QyNzNhZmM2NmJjMDhmIGxlZ2FjeS10cnVuaworMzIyNjcgNDgyNGFhYjEyNTQ5YmIwYzM3Y2E4MDJhMzNlMWM3MDAxNzgwMWZlNiBsZWdhY3ktdHJ1bmsKKzMyMjY4IGE4ZTY0MGI0NzdmNjZkNWI2MTUyMmJkNzljOWM1ODA3MjBmNGE0MDQgbGVnYWN5LXRydW5rCiszMjI2OSBjZmVjZTE4MjJlOTQyMzcxZjdmOTliNGIyM2QyZjY2NjVlZDEyMzhhIGxlZ2FjeS10cnVuaworMzIyNzAgY2EyNDgyMDEyYjNjNjAwZjg2NWQzYWY5Zjg5NDE4ZWRlYjhmMmZmZiBsZWdhY3ktdHJ1bmsKKzMyMjcxIDhlNTQxYjA3OGVkYjUwOWI2Y2RlZjBjMjA3NjEwZGM0OTgzYzI5YmQgbGVnYWN5LXRydW5rCiszMjI3MiBiOTc0NWNkNzkxYmZkZGE3ODAwNmYwYmQ3YjIzZTNjODY0ODMzNzkwIGxlZ2FjeS10cnVuaworMzIyNzMgMTkzYjhhZWMwMGNlMWJlMmYwM2FhOTY5OWE1ZDZmNjUxNmNmNzkzMCBsZWdhY3ktdHJ1bmsKKzMyMjc0IDlkNGUxMzg0OTRmYjMxMmNlMjhhODUyNGU5MWIwNWQyNjRmOGQzODcgbGVnYWN5LXRydW5rCiszMjI3NSAwZTg0MTZiZTIwOGUwZWI2MDRjZmZmZTdjYjU3MGY2MzZiM2MwM2QxIGxlZ2FjeS10cnVuaworMzIyNzYgMDRiMTcyODQzMjkyOTgxMjE0OGNiMWM2OGQ4NWRlODc2ZTU5MDgxZiBsZWdhY3ktdHJ1bmsKKzMyMjc3IGQ4YThmNzQ0YTNlNTA4YjVlMTMwNzM3NjI2ZmM0NTY0ZDk1NjVhYjIgbGVnYWN5LXRydW5rCiszMjI3OCA3ZmRhMDlmNzUxYWQ1YjFjOWI0NzhmOTNkNzBiMzY3Njc3MWQ2ODNkIGxlZ2FjeS10cnVuaworMzIyNzkgMjhhMjk3NTUxNGNkNjFkNDM2MDBjODUzZWZjOGQ3OTJmNmRhM2JjNSBsZWdhY3ktdHJ1bmsKKzMyMjgwIDU2MDA2ZDk3YmNlZjBiZTUwYzdiYmY4YTJiYjY1ZDM2OTA4ZDBlYTQgbGVnYWN5LXRydW5rCiszMjI4MSAxZTkwMDQ1NTNlMWQ5MDViNDEwOWNkNzM2Njk5ZmRiYjhkNWJkNTE4IGxlZ2FjeS10cnVuaworMzIyODIgMTZmNDdiZDQzMWM0ODc5MmNlY2U3NTRiMGMwZDRkYTA5MzRjZjFkYSBsZWdhY3ktdHJ1bmsKKzMyMjgzIDJmYWU1Zjc2MzFlZjRhYWU3YTBjMWJkYWI2YzQ1MzcyNTJiZDZkOTEgZ2V0YXJnc19tYXNrX21vZHMKKzMyMjg0IDRkMjI1OWNiNzdhMGUxY2Q3ZDg1NGRkMGQ1MGQ1ODJlZTczZjJiNzggbGVnYWN5LXRydW5rCiszMjI4NSA3ZmExNGYyMGFlYTQyMjMyYjY0YTZhZTA2NDI0MTcwNTEyYzdhNjUwIGxlZ2FjeS10cnVuaworMzIyODYgODgzNjUyOWU5ZTY2NzBhNTVmNzQ1NzE3ZWMyOWE1NjU1YTQzZTYxMiBsZWdhY3ktdHJ1bmsKKzMyMjg3IGVlMTY1ZmUxYjQyZjYzNGM2Yzk2MGIxZjI2ZTU2MjFhOWY1MjZjNTAgbGVnYWN5LXRydW5rCiszMjI4OCA1ZjFlZjE4ODJiMjUxODhlZTA2ZTJhODRiZWNjODdhZDg4OWRjYjQyIGxlZ2FjeS10cnVuaworMzIyODkgN2U2NjVjMTYwNTgzZmI2NjM3OGQzZWM1ZjlmODQ0MDYzNzcyZWQ5ZiBsZWdhY3ktdHJ1bmsKKzMyMjkwIGVlNmRmMmM2NjhlYWNjZGQ5YzAzYTJkMjQ2NzdhZTcwMTQyZTA2N2YgbGVnYWN5LXRydW5rCiszMjI5MSAxMmQ0NDA5ZTU5ZTMwM2EzOTc4ZjVkMGI0MzNhN2U4ZDY3NTY3OTQ2IHJlbGVhc2UyMi1tYWludAorMzIyOTIgZTMzZmVkYjU4MWY0YjA3YTlmODQ1N2U4MDE4ODk4OWJjMjY4OGUxYyBsZWdhY3ktdHJ1bmsKKzMyMjkzIDIzOTQyOWRjMDI5ZmM4ZDU1N2FjNjgwY2M4MjQyM2I1YzJjY2QxZWMgbGVnYWN5LXRydW5rCiszMjI5NCBhOTM4YjEzZTAyOTExMjM4MmFmNDA1ZjhkYTJiMjFmYzIwN2U0YmQ1IGxlZ2FjeS10cnVuaworMzIyOTUgNWJmZGJjMGZkMTcyMmE4NDMzYzM5MzhkZmZkNDM3NTA0YjI5ZTdjNSBsZWdhY3ktdHJ1bmsKKzMyMjk2IDA0NmJjOWQ3ZmIwZTQzM2M0NWYxNzc3MjY3NDcxNmZmZTIyYTE0MWYgbGVnYWN5LXRydW5rCiszMjI5NyAwZDhkNGM4ZGM2OGJiODg5YmU0ZDNhNWNlZjZmMTc2ZWYyNTM5YmE1IGxlZ2FjeS10cnVuaworMzIyOTggYzU1NWNkMDJiMGY5NjNjZTA0MWU2ZGNjMmZlZTY0NTQ1NjViN2YxMyBsZWdhY3ktdHJ1bmsKKzMyMjk5IDE5MjU0MTM0MzFhNmVjMjhmYzg2YTlmNjc5OWNkNjgyYWMzMmUxZmEgZ2V0YXJnc19tYXNrX21vZHMKKzMyMzAwIGZkYTJmN2Q3ODNjMjRhZjNhYWMzNTM5MTUwODUyY2I3Y2RiMWM3MDIgZ2V0YXJnc19tYXNrX21vZHMKKzMyMzAxIGQ0MWQ4ZGU5NzY4ZjM3ZjE3MWU3M2EwN2FlNTdiNDY1YjE3ZGI5ZWQgbGVnYWN5LXRydW5rCiszMjMwMiAyYTIzZmM4MzcyMGZhMTI2NGMzYzVkYTU2YTMyNjMzMDMyNTdlODUzIGxlZ2FjeS10cnVuaworMzIzMDMgYzFiYTUwNzkwYzgzODQ4NWJiZGJkM2U4NWZiMWYzOTVkYzVhMGUxMyBsZWdhY3ktdHJ1bmsKKzMyMzA0IDllYjY5NjRiNGI2Yzk4OGQ4NmVjZTRhZDEzNzdlNjVjMjgzMDRiYmIgcmVsZWFzZTIyLW1haW50CiszMjMwNSAxNTU2YTM4ZDUyNzgxNTQxZDk5YTQwNzBiNDJmYjk0M2MzYzg5MWVmIGxlZ2FjeS10cnVuaworMzIzMDYgNWZmMWYyZjlmYzM0OTNmM2JhY2EyMzU3ZDU0NjdhOWZiNTJlOWRlZCBsZWdhY3ktdHJ1bmsKKzMyMzA3IDE4MTUxNjZlODA5Nzg3NWUyNmMyNjQzY2E3ZTkzYTQ2MmQ0MGViMTMgbGVnYWN5LXRydW5rCiszMjMwOCAzMWNiOGUwMjYwZGI1MTAyYjBhYjUwNmM0YWVlMzljOWQxMjQyOGFlIGxlZ2FjeS10cnVuaworMzIzMDkgYWIwYzA2N2ZlMjg2ZmJkMzAzYWNlYzE2ODgzNzQyNzRiNTg5NjYyNyBsZWdhY3ktdHJ1bmsKKzMyMzEwIDI3NjM1MmJmY2I0MmI0MWFhZTk2NjE0ZmFiM2RlMzIxNjFjZTNmODIgbGVnYWN5LXRydW5rCiszMjMxMSBjYTY0YzFiZTIzMGJhY2U0YTNiZTJiMTAzYzkzMDQwOGIyMTIxODdjIGxlZ2FjeS10cnVuaworMzIzMTIgY2Y0NWFkM2NhNGI3NWRkY2RiYzUxMmQ3MmI5M2IzZmMwZDU0MTRiMCBsZWdhY3ktdHJ1bmsKKzMyMzEzIDQ2MmE0YzMxMThiYmMwNjgyOWNhZjFkMGMyOGFmY2Y0YTM2NzE0ZGQgbGVnYWN5LXRydW5rCiszMjMxNCA4YmQzNGRkNThhOTJhYTMzNDczZjlmOTdlYjI3NGNiN2NiMTY2YjM3IGxlZ2FjeS10cnVuaworMzIzMTUgYzViZDhhODQ1MjIzOWYzNmJlMjMxOGE2MzQ0YzU2ZDc4NTk5NzdhMiBsZWdhY3ktdHJ1bmsKKzMyMzE2IDcwZDZmOGIwZmM2OTQ1ZTcxZjQ0MzhjZTA3YjRhOTFjYTEzMGMzMTggbGVnYWN5LXRydW5rCiszMjMxNyA0MGQyODdjM2Q5MDYyMGE3NzY1MzAxNTg4OWRlZDViYmI4NDY0ZDZhIGxlZ2FjeS10cnVuaworMzIzMTggZDBhZTYyMGFmYmQ0ZDQxYjhhNjVmMTI1MDUyYWM5MGUyNGU3ZDZmNSByZWxlYXNlMjItbWFpbnQKKzMyMzE5IGVkNWVjZDYzYzFjZjliN2Y0ZjI5OWM4MTJiODY4ZGU4NWEwZTczMGQgbGVnYWN5LXRydW5rCiszMjMyMCA5NjQyZmI0Y2RhMmZlNGFmNTZlMGI4Yzk4YzhkZjVjNTUzMjI2MjIzIHJlbGVhc2UyMi1tYWludAorMzIzMjEgYzk5MjVmYTI5ZWEzN2U1NTg4NDg2ZDk3NTI2NTlkYmRjY2ZhM2Q0NiBsZWdhY3ktdHJ1bmsKKzMyMzIyIDA2ZDEzN2E0MjdlOTYxMWQzZmIyNjBhMjEzZGY0MThmY2FlOWM3N2UgbGVnYWN5LXRydW5rCiszMjMyMyA3OTIyZDVmNDM4NTQzYTU3NjVkZTY0ZjgwMjI5Y2UzMTcxZDIwMzQ3IGxlZ2FjeS10cnVuaworMzIzMjQgYTQxNTRkZDU5MzlhYTZiYjNhMTEyODkzOWU5MDc0ZDZiMTM4M2QxNSBsZWdhY3ktdHJ1bmsKKzMyMzI1IGQ2YWZlMTk2ZWY4MjA4M2ZmMjIyNjIwYzlhYTU5NWVmY2M1MzlmYjMgbGVnYWN5LXRydW5rCiszMjMyNiA2NThiMTBjNWJhMmEzZDZiZTE2N2YyZjRkN2ExMWUzYTdiNjE2NjBkIGxlZ2FjeS10cnVuaworMzIzMjcgMDE4MTcwYTRhMmQ3YWMyNTBhZWRmMDc3ZmI5NjhlNmFjOTY4Yzg3ZSBsZWdhY3ktdHJ1bmsKKzMyMzI4IGFlZjAxYTA3NmVmOTY3YWU3OTNjNGQ2M2M3MjQ0MGI1MTMyZGMxM2QgbGVnYWN5LXRydW5rCiszMjMyOSA5Nzg5MDEzNGM5YzQ0MzkzYmIzNmEzODI3YzA3YjU1NmFiMjA1Mzk2IGxlZ2FjeS10cnVuaworMzIzMzAgNDFmNDU4YjhkYTIwYTMzNGVlYzY3ODE4ZWRkOTg2ODI3OWE1ZTQ0NiBsZWdhY3ktdHJ1bmsKKzMyMzMxIDQyZGU1MGUxOTJkZjViOWU0ODA2MzNhMjNjODY5OGZmZmNjMDA5ZjUgbGVnYWN5LXRydW5rCiszMjMzMiBkNmUxM2QxMjEwYzZiNTg1MGZhMTUxODFkNDBkYjliODA4OTVmMDY5IGxlZ2FjeS10cnVuaworMzIzMzMgMmNlMzlhN2JlNzlkOWE1YjE3ZThkY2Q3ZDA4NzEyYmY3NGFhODJiNSBsZWdhY3ktdHJ1bmsKKzMyMzM0IGZhNzg3NGVjNmE3MWVlOGM5OWMzMjJjMmI4NGRhMTEwYzJhNTA2YzAgbGVnYWN5LXRydW5rCiszMjMzNSBiZTE0OTcwYTk5NTUyMmZlZGFhODlmYmM0NzVmYjE0NzgyNWQwYjVkIGxlZ2FjeS10cnVuaworMzIzMzYgNTI5MzBiZTlkZmVhNWE1NWI0Y2Q4MjFiMDRhZThhNjNmNzg2ZGRkZCBsZWdhY3ktdHJ1bmsKKzMyMzM3IGRlNzY5MDUyNzU4NDNlNzlhNjRiYTUxNTcyZTk1YmE3MGE4Y2EzNzcgbGVnYWN5LXRydW5rCiszMjMzOCBlZGNmZGIyYTg1MmU5YWYzZWQ5ZjdhZTk1NTIyNDc1OGE0ZTkwMGI0IGxlZ2FjeS10cnVuaworMzIzMzkgMjlmM2IyMzc1MDQ5ZWYwNjgyN2U1M2IxYzMwZDU3N2ZlNjEzMTUzOSBsZWdhY3ktdHJ1bmsKKzMyMzQwIDE0OWJkMGVmOTRmYjg0ZGU5YmNhMmEwMDA1ZGI2Yzc0YTdlMmQ2YWIgbGVnYWN5LXRydW5rCiszMjM0MSA4MjBkOTU3MGVkZWJjM2MyYmQ4ZmZkMDVkOTQxNGQ4MGU0YTkxZmUxIGxlZ2FjeS10cnVuaworMzIzNDIgZDMxMjdiNjcxZDM2YzM4ZDhkN2JjZDRiZDU4Y2VkNTRmNGVlYzc3MSBsZWdhY3ktdHJ1bmsKKzMyMzQzIGQwOGQxNWE3MDI5NTBiNTdhZDJiNWRjYzdmZDJhYzkyMjVmNjMwYTEgbGVnYWN5LXRydW5rCiszMjM0NCBlYzJhMGYxNWMxNGNkMTlkNDQ5NDNjY2ZmYTliODJhNzlmZGM2NzFhIGxlZ2FjeS10cnVuaworMzIzNDUgMWQ4ZTg0ZDk2ZGRlYzZkZjE3MDZkODhhM2I1ODdjOGJkODcwZWE4ZCBsZWdhY3ktdHJ1bmsKKzMyMzQ2IGFiNGZiZjhlYmFiM2IwYjU4MDZhNmI0MWRkY2MyODkyYTk0YmZjZGYgbGVnYWN5LXRydW5rCiszMjM0NyAxM2QwYTNjNGU0NjU3NWJjNzJkZWYzOGM0NDk3NDVjODU0MTY3ZjdkIGxlZ2FjeS10cnVuaworMzIzNDggMTZlZjViOWJjNzg5Y2I5YTM4NTQwZDUxMjFlYzI4MjRkNDBkNDczNiBsZWdhY3ktdHJ1bmsKKzMyMzQ5IDVlNmZmYTY1NTQ2MjM0Y2IyOGExNWE2NGRjZDgzMTBiMzMzNmU0NDMgbGVnYWN5LXRydW5rCiszMjM1MCAwM2FmNDZkMWFjMjg0MDU2NzU1MWRjZDhhMTIyZGMzMGIzMzQ1OTAxIGxlZ2FjeS10cnVuaworMzIzNTEgNDY0OWYzMThmY2IwMmRhZmJlZTJmNjE5OTQ3M2YwODFhNjk1NGZjYSBsZWdhY3ktdHJ1bmsKKzMyMzUyIDgxNjBiYzc4YzkzYWIxYTYyMmViODc1ZjlhMjA0NzM0ZDIxMGE1ZGYgbGVnYWN5LXRydW5rCiszMjM1MyA4OTIwNWY1YmI0NDBiZmNhYjVkZjBmOWJjMmE0MTgwNWM5MDA2YzAwIGxlZ2FjeS10cnVuaworMzIzNTQgOWVhMGNjZGRiZWFkMzY5NGZmMzIwOGQ4YjcyMTUyNWZkZGExYzJlZCBsZWdhY3ktdHJ1bmsKKzMyMzU1IGRlNmQxZTdlOTgyNTcyNDJkY2U0NDIxMmRhNTdlY2FkNjQxYjQ0ZmUgbGVnYWN5LXRydW5rCiszMjM1NiBhYzhkYmJlNjI0MzJiOTRmM2Q2MDA2ZTk4Yjk4YzFhMmVjYTA5NTBiIGxlZ2FjeS10cnVuaworMzIzNTcgMDUxYTRmMTJjYzQ2MjU3MTc4NTNkODM1YzMxMGZjNTE0OWIzNmJhMyBsZWdhY3ktdHJ1bmsKKzMyMzU4IGY5NjhlOTNlM2NlMDE4NzE3Njk4YWQxNGM0MjZjZDEzNWQwNjgzYWMgbGVnYWN5LXRydW5rCiszMjM1OSAzMWNiZDQ2ZjBjN2Q2OGRiMGVjMzk3MDRjODMzZGZiOGNkYmQxZjU0IGxlZ2FjeS10cnVuaworMzIzNjAgYWM1ODYwOGNkMjNjZTg2ZTViYmM1MzI1ZDYzNTE5OTYzMmUzYWMxOSBsZWdhY3ktdHJ1bmsKKzMyMzYxIDg2ZjQ5MzNmYTQyOTVlMWVkZDNiMDBmNjA1YjMxY2JhYzMzNDUxOTYgbGVnYWN5LXRydW5rCiszMjM2MiBiYTkwOTIzNmViMTNiMTA4ZTA1MjJmNjZlODA4YWMyZTQ0YmY4OGZiIGxlZ2FjeS10cnVuaworMzIzNjMgNDNkMzJmNGY4OTEzODQ3NDg5ZjM2MDBlZmNmY2RlMjVlMWFhYmQ0YiBsZWdhY3ktdHJ1bmsKKzMyMzY0IDVjODg2ZTAzYjQzZTQxY2I3MWY2NGYyZDZjYjA2MGJjZWY0MWZmY2EgbGVnYWN5LXRydW5rCiszMjM2NSA3YmJhM2UyYmU1NGU3ZWFhNTAwMmY2OTAzYmYwNzA0NjAyNmJiYzdhIGxlZ2FjeS10cnVuaworMzIzNjYgYWE2MzRhZGI0MWE5MDBhZDhjOTc2MDFlNDIwY2Y0OTVhZGI0OTBlZiBsZWdhY3ktdHJ1bmsKKzMyMzY3IGQ3OTI1NDRhYjExMWY0NDJjOTZlZDRiMGExNzdiY2M0OTU1MmIzNzAgbGVnYWN5LXRydW5rCiszMjM2OCA1MmYzZDkwYzE3ZTgzZGU1MzQ1NGQ4ODE1MjY2OWJhYTc3YmM2YjY0IGxlZ2FjeS10cnVuaworMzIzNjkgY2VjOWQxM2M0M2ZmN2RiODJhYjgwZDYzMGFjYjM2YzU4NGQyOWZkZCBsZWdhY3ktdHJ1bmsKKzMyMzcwIGQzMjk3ZTI5ODIxMWI4YzdiYTUxNmY2OTMzM2MwMGQyOWM1OWQzYjYgbGVnYWN5LXRydW5rCiszMjM3MSA2NmNjZWI3NTYyYjU2YTkzNGZmNjBlYTFlZjMxMmYzZDRjNDFiNTc3IGxlZ2FjeS10cnVuaworMzIzNzIgYmQ2NzhlNjVmNzg0MzIwZjQzYmMzZGMyYmU4ODk4YzZmNGFkMjk3ZSBsZWdhY3ktdHJ1bmsKKzMyMzczIDZlMmU1OTg1Mzc1YzYyNDdlYzZiZTA1ZGE0MDA0NGY5MzdkM2NjYzkgbGVnYWN5LXRydW5rCiszMjM3NCAwMTRjZmFhN2E3ODRmYmEwYTI2MmZkMzQzYjQyMTNhOWFlMGUwYzhjIGxlZ2FjeS10cnVuaworMzIzNzUgMWY5NjA0OWE3OWQ0Y2Y5ZjI5Mjk5MDMwMzdkOGIxNzFlODQ0OWUxNiBsZWdhY3ktdHJ1bmsKKzMyMzc2IGMwYTI2YzVhNzkzNjQ3MGUxOWMyYjc1NDM3MzIzNTg0OTM4ZWQ1MDAgbGVnYWN5LXRydW5rCiszMjM3NyA1NjNiYWEzZTQyOGY2OTQ2NWJjNGQxODk5MTQzMzA4YTNkMjNiN2U5IHJlbGVhc2UyMi1tYWludAorMzIzNzggYjQ5ZmYwNGMxOGRlN2VkMGU0ZDdlZjU5ZGQzYjI5N2RiNDQxZTdmMyBsZWdhY3ktdHJ1bmsKKzMyMzc5IDg5ZGMzMjY3NDU1NGVlZDAwNTYzNjEzMzQ0YTI3ZWRlYzJkNjRhYmIgbGVnYWN5LXRydW5rCiszMjM4MCA3NTY1MTJmYmI1Mjc4ZDI1MWQ0NWIyOTk3MjQyZjhkZDJjMGI3YjMzIGxlZ2FjeS10cnVuaworMzIzODEgYTFkN2NjZDk1YTVlODNkNjE0ODk4MGNhYThjYjhhMzRkMDNkODZiOCByZWxlYXNlMjItbWFpbnQKKzMyMzgyIDBhZDc0NTNhOWY4Mjc3NTAzMDZlZmU3M2JkMjBhNjgxOGVhZjQyMzkgbGVnYWN5LXRydW5rCiszMjM4MyAwODVmNjgwMDljYWQ4MThjZWI0ZDMzMTM3MGUyNTk3OGQxMmVkMWFiIGxlZ2FjeS10cnVuaworMzIzODQgOWM3YWQxZTQ1NTk2MGNjZTc0NjIzN2FiYzNhZmZhYmZlNzcwMDk4MSByZWxlYXNlMjItbWFpbnQKKzMyMzg1IGRkMDIyZDQyM2I4YTA4ODZkZWY2MTM0NjcxOGE3MDM5ZWZkZDI2Y2QgbGVnYWN5LXRydW5rCiszMjM4NiAwNzE3MjQyMjk1YjExY2IzN2ZhYTA4YWIxZDJiY2E3NjdjZjYwNmI5IGxlZ2FjeS10cnVuaworMzIzODcgOTllODJkYmFmMGNjZDgyOTg3NzY0YWQ3YWRjYmM5MDU0MTMxMTZjOCBsZWdhY3ktdHJ1bmsKKzMyMzg4IDdmMjM2NjdkM2NmYzRhZGRiNDIxNzM3MjIwYzg1ZDcxODBiZGVjODIgcmVsZWFzZTIyLW1haW50CiszMjM4OSAzZGYwY2YxNmRlZmMyMjhmN2MzODJkZWNiYjI3MjNiYzgwZDJhMGYxIGxlZ2FjeS10cnVuaworMzIzOTAgMjJkMTc3NjgyYWUxNGZmMTdmYTE2ZjZmNmYxMjY1N2ZiZjJlMjM0MCBsZWdhY3ktdHJ1bmsKKzMyMzkxIDE3MWRiZGRmMGEwMjE2NzBiNTM4Y2Y1MzQ1NTkyNDY1MmQyNjUzYmEgbGVnYWN5LXRydW5rCiszMjM5MiA2NTAzYWQ4ZGNhODgxN2RjMTA0YWNlOGJjNTg5MTcwN2IxODZhOTBjIGxlZ2FjeS10cnVuaworMzIzOTMgNjM0OGI4NWJjYjlkZTgwYjU4ODZlMWI0N2UwNjNlYTQ1ZjY0ZDIxMiBsZWdhY3ktdHJ1bmsKKzMyMzk0IDljMGFkNjk0ZTNlMjBhM2YyNmZlZjBhM2M4YjQyMjEzODA3MDg5NWQgbGVnYWN5LXRydW5rCiszMjM5NSAyYzc0NDdlZmMyYThkMGUxNmUwZmQ0NmUzOGJkZDU0ZWRkNGZmOWQ5IGxlZ2FjeS10cnVuaworMzIzOTYgNzUzODJkMTAyNzQ5Y2NlOTQwZGQzMGIzNDE3MDMzNWU0MzU4OWMxYSBsZWdhY3ktdHJ1bmsKKzMyMzk3IDYwZWFjYmVhNzE5OTJjMTY3MWU2MTM5MWE4NmNlOGQwNDg0OGVhZjIgbGVnYWN5LXRydW5rCiszMjM5OCA5Yjc5NjA1MTcxZWJkNGY1NTY4ODI5MTc0YTkzYThhZjY5YmYyZjNmIHJlbGVhc2UyMi1tYWludAorMzIzOTkgOTQ2NmI2ZTI0ODMzMmU1YTI2YmE5OThhZDBkYTA1YWM4Zjg2YjU0YyBsZWdhY3ktdHJ1bmsKKzMyNDAwIDAwYjg5NDcyNjIwZDdlNGJhODg0ZWE5NWMyM2Q0MTJjNmIzMDdlNGQgbGVnYWN5LXRydW5rCiszMjQwMSAyOWI2YTQ4ZjRjNDUwY2ZmYTc3NDgwN2JiYTBlZmYwZmQwNTEyNThlIGxlZ2FjeS10cnVuaworMzI0MDIgMGVhNTk5MWY2ZWRiYzRjMjczY2U1OGQ2NTEzN2FmNDE3N2RlNjI4MCBsZWdhY3ktdHJ1bmsKKzMyNDAzIGUwNmYyYmY1NmI0MDY4Mzc0YzkyZmIzMjc4NmQyNjVjM2Y1NjhmOGYgbGVnYWN5LXRydW5rCiszMjQwNCBjOWJlZTExZWFhOGI5ZTVjOWMyYmNiM2QwZDIxNWFkMzlkYWZhODgwIGxlZ2FjeS10cnVuaworMzI0MDUgYmM0MjMxZWIyNzU4NDE2ZjY1MzE0MGVkOWRkNmYwYWYwNjU5NjhkNiBsZWdhY3ktdHJ1bmsKKzMyNDA2IDIxMWMwMmZiNjU3MGFmZTFjMmVkMDQwOWE5OWFiMTE4MjhkMTc5OTUgbGVnYWN5LXRydW5rCiszMjQwNyAzZWJiNGJjZWJkZDdlZDY0NzA2MTk2MmQyOTA2ZjU4YzA5MzA4NzgzIGxlZ2FjeS10cnVuaworMzI0MDggMGQ1MzAyOWI3OTQ5N2E2MWQ4NzFkYmFhMDYyMTEzMjIzMDFmODhiNiByZWxlYXNlMjItbWFpbnQKKzMyNDA5IDcwOGFlYTgyYWRlODcwYWIyYjNmMjJmZWE3ZjAzNGYwYWFjNGI1NjAgbGVnYWN5LXRydW5rCiszMjQxMCA1MWVkOWY1ZTM2YTE4Yzc3MjQ2M2Q1MGVhMzZiYzM3ZDBjYjViZjMzIGxlZ2FjeS10cnVuaworMzI0MTEgNzg3ZDY2NWUxY2RjNzMwM2NiYTllM2UyOTJkNzg2NWU2NDlkMTE4MiBsZWdhY3ktdHJ1bmsKKzMyNDEyIDM5NWYyYjk5Yzc1MmY5MDZhN2MzNTJmMjg0YjE2M2UwOWU3ZWE1MWYgbGVnYWN5LXRydW5rCiszMjQxMyAyYzViZjA5N2RhZjg1NWEwZGFlZTllMWNhN2RhMDhjNjEyMTI4M2FlIGxlZ2FjeS10cnVuaworMzI0MTQgNzQ5ODE5ZjhiMmFkY2E3M2Y1ZGVjZWJlZGYyYTFjNTJkZWRiMTMwZiBsZWdhY3ktdHJ1bmsKKzMyNDE1IDYzZWIwYzk4N2RlN2RiNDAyOTEyMWJjOTdiMGIxYWUzNWZiZDUxZjkgbGVnYWN5LXRydW5rCiszMjQxNiA4YTZlNGM5MmJkN2YyYmQxMjdlMjMxNDE5Mjg4NDVmZTc2MWVkYjJiIGxlZ2FjeS10cnVuaworMzI0MTcgNjgxNjcxOWY0MzljNTlmZDcyNmU1OTIxMWU5NDA1ZTExMmRmOTczMCBsZWdhY3ktdHJ1bmsKKzMyNDE4IDU1ODY4OWI2ZDdmMGViNTJlZjFmNjFhYmI1MzZhZDA4ODYwMGY1ODUgbGVnYWN5LXRydW5rCiszMjQxOSAwMTVkODkxZjM4NzNkYzAzNDg0NzJkOWIwMTAwY2ViYTA5MzVkYzk4IGxlZ2FjeS10cnVuaworMzI0MjAgMjRkMmEwNWY0MWNjYTE4MDJhN2FmOGFjYWJmODAyOTE1Y2I2ZTY1NiBsZWdhY3ktdHJ1bmsKKzMyNDIxIDY0ZDdiODc2NzIyZmQ4Nzk0NjE2ZjEwN2FmYzlkYTU3NTA0MGQyMmEgbGVnYWN5LXRydW5rCiszMjQyMiA4MDk0YzBkYjk1ZjhiNmE5NDg2ODM2MGEyY2YyNTk5ZmVkZjRiMjExIGxlZ2FjeS10cnVuaworMzI0MjMgODAzYmNhMjI0YzhmYTdkMjE3MjA4MDIyNzM4NDBjMTUxZGNiZDdmNiBsZWdhY3ktdHJ1bmsKKzMyNDI1IGE3NmEzNjgzMDEyYmMzN2M0MDAwMmQxNTBiMjgwYzEyYWUyMDgwMzcgYXN0LWJyYW5jaAorMzI0MjYgMDVlNTczODhjYjhmZGNlZThjOGE5OTc0MzM4NGRlYjMzMjFjNjU2ZCBsZWdhY3ktdHJ1bmsKKzMyNDI3IDcyNWIyODFjY2VhZDM4YmY3MTIxNjNiNjJkMWQ0ZjI1Nzk5ZTYyYjIgbGVnYWN5LXRydW5rCiszMjQyOCBmODc0YTRkMjljYTQxNzhlYjUxMjkzMGFlOGZlOGFjMTA0OWQ1MmFmIGxlZ2FjeS10cnVuaworMzI0MjkgMjE2MzNlOWRmOGNjNDZjODY0NTEyMTg0MjJkODQ4ODFmMzRiOTJiOCBsZWdhY3ktdHJ1bmsKKzMyNDMwIDExMjU0MDE2MGI2NTJlNmFjMjJiN2U5ZGMxMGExMmI3MzY4ODdiOGEgbGVnYWN5LXRydW5rCiszMjQzMSA0NmQyNmFmYThiOTU2M2ZkMTI1YWRiMzcyMjA3OWQ4MjhkZTJmMTU5IGxlZ2FjeS10cnVuaworMzI0MzIgNzJkYjc1NzVmOTcwMDBjOTdiMjY5YTFhYzZkZjcwOWZlZGVlMGI5YyBsZWdhY3ktdHJ1bmsKKzMyNDMzIGE5YjU2Yzc4ZTBkNjRlY2RlNDM0YzlhYzMzODM4NTgyY2NhYzliNjEgbGVnYWN5LXRydW5rCiszMjQzNCAyNWM4Y2VlNDQ1N2U2YWQwYWZmMjEyODdlMDAwNzEzMmVhMGUxMmU1IGxlZ2FjeS10cnVuaworMzI0MzUgYzM0Y2Y5Y2U5NTJmOWZhMjgyYmE2NjE4YTZmZmZiNjIyODZmNmFlZiBsZWdhY3ktdHJ1bmsKKzMyNDM2IDBjOTUwZTMzMjNlZTRlZTYzNzA2MmI5ZWFhZmE1MGVjM2NmYTA2YzEgbGVnYWN5LXRydW5rCiszMjQzNyBjYTRiZGFmNWM3NTc1ODU5ZWFlM2ViNDk5YzViOWVlNjgzNGQ2MDg4IGxlZ2FjeS10cnVuaworMzI0MzggMTAyZjllMzU4ZjUyMTM4ZWNmNGM0MTQwNjc0NzU4Y2RmMTcwMzdlNiBsZWdhY3ktdHJ1bmsKKzMyNDM5IGMwYTFlZmUxMDI4NDczY2NiZjFmZDI1ZDhjODIzM2YzOTUxMGIzZWIgbGVnYWN5LXRydW5rCiszMjQ0MCAyYmEyMGZjOWY0OTUzYzA4YmE5NWFiNDc3NmI4ZmZkODA5NzBlZDY4IGxlZ2FjeS10cnVuaworMzI0NDEgMjhhMDk3NjdhMjRmZmE3OTFjNjcxM2U0MjM1ZWUyNWJmZmFlYTkzYSBsZWdhY3ktdHJ1bmsKKzMyNDQyIGE1ZTFiMTY2MmVjMDExOTFlZDM5N2IwZjliYzllNTI0YzZkNzA3MzMgbGVnYWN5LXRydW5rCiszMjQ0MyAyYWY5M2ZkZmY2MDg4OGU1NDc2ZDU4ZWY0OTY1YTU2OGVhNzJiMWNkIGxlZ2FjeS10cnVuaworMzI0NDQgMTEzYzMxODg4NzU1NjE0NjZkMTFlYzM1ZTExNDczOWFhN2M3ZjBjMyBsZWdhY3ktdHJ1bmsKKzMyNDQ1IGVkNzRhYzIxYzEzMzIyMGZjMmM2NGU0Njc1MGEzYzMyMGEyZTk1ZGMgcmVsZWFzZTIyLW1haW50CiszMjQ0NiBiMzE2MjkzMzU2MzU1ZWZmNzY1NGZkNGRhMWZjYTNiZjJmMTdmMGUxIHJlbGVhc2UyMi1tYWludAorMzI0NDcgNzNkY2U4OTNlYjRiMzgwMjhkM2JlYjZiMzI4NDA0OTQwMzY2OThmMiByZWxlYXNlMjItbWFpbnQKKzMyNDQ4IDZiZDI4YWJkMzFhN2YwZDNlNmE5MmQwZjc2YTZhOWU4ZjgzYzU5MzYgcmVsZWFzZTIyLW1haW50CiszMjQ0OSA5MTEzMGE0Y2MxY2UwZWY0NmQyOWNmODQyYzNiNmY0MDlkMzA2NzQ2IHJlbGVhc2UyMi1tYWludAorMzI0NTAgNTdlNjE1ODg1NzFiMjBiMTJiMDA1MmM2ZWNlOTY4NDMwZjljOWIzMSBsZWdhY3ktdHJ1bmsKKzMyNDUxIDA0NWJkMTRmNzQ2ODI1YjIwNDhlZDZlZjQ1YTQ3N2ZmZTM1YWFkMmEgbGVnYWN5LXRydW5rCiszMjQ1MiA2MGU3MjIzODRkNjJjNmY4MDY3ZDJkZjIxYTZkMDNhZTgxNWMwOTNmIGxlZ2FjeS10cnVuaworMzI0NTMgNjRjYjY1N2IwMzM4NDQ0ZDJlMzhlZjdkYjk3MTQyNTlhZGVhOGNjZiBsZWdhY3ktdHJ1bmsKKzMyNDU0IGRlZjA5ZWMwYmMzMTcyYzU0Zjc1YjEyOWEyMTUxMzgxZjhkNjliZWMgbGVnYWN5LXRydW5rCiszMjQ1NSA3Mjk2Y2QzZjQ1YzdmNDczZGU3YjJhNWQ5NmNlMjhhNDNhYzQ2ZmQ5IGxlZ2FjeS10cnVuaworMzI0NTYgMGNkOGQ1NzBjNTkxMTM5YmM0YWM2MWUxM2MwY2I3NmQyNjAxZThhYyBsZWdhY3ktdHJ1bmsKKzMyNDU3IDJmYWQ1NDgzOTFkZWQ2ZWQ0YmQwMWE2MDg3ODc3YzliZDhiOTU2NmMgbGVnYWN5LXRydW5rCiszMjQ1OCA5Yzc4NWFiMWVmZjAzYTI3MTE4OGRmM2M5YzBjNWI0NzkyODAyNjBiIGxlZ2FjeS10cnVuaworMzI0NTkgZGM0ZTQ3ZTZmMDAyMzVkYmJiNjQwMjQyYTc5YjI0NWIwMWY1MmYxNSBsZWdhY3ktdHJ1bmsKKzMyNDYwIGIzN2FmMjFiNzdiZTMxNWM4MjBkN2UxZGU5Y2E2Y2FiOWMwNjRlMzIgbGVnYWN5LXRydW5rCiszMjQ2MSBlMDZhYWQ5MGMwYWUyNGQ5OGZkYmIxOGIyZjkyOTIxOWE3MTgxMWUxIGxlZ2FjeS10cnVuaworMzI0NjIgMWM1YWQ5MzYwMzhlZjI2YzI5ZDYwZjU2NTNjOTQ0MWJlN2M1MWVmNSBsZWdhY3ktdHJ1bmsKKzMyNDYzIDcwMTJjYTY0YmM3NDk1YzczYmQwN2EzOWM2ZDUyMWU3ZDk2YWViMjUgbGVnYWN5LXRydW5rCiszMjQ2NCBlNGE1ZjM4ZmYwMDg5YmYwYzJiNmVmYjA4ZmY4N2U3YzQxNjYxZTg2IGxlZ2FjeS10cnVuaworMzI0NjUgZmExNTlmZWYyNzMwMDRkZjVhZjZkMTE0ODFmNDI3YjlhYjRlNGU4NCBsZWdhY3ktdHJ1bmsKKzMyNDY2IDQ1YzRhMmYxNTdiMzhlYmJjZjYyMjVhNDkzZGFlNjc0YTE1OWViZWYgbGVnYWN5LXRydW5rCiszMjQ2NyA5OGUzMWNmZDI2ZGMyNjFiYjRmZjIwMGU0NWY5MGJmNjU4ZWRkZDcyIGxlZ2FjeS10cnVuaworMzI0NjggZDgyMjM4ODA4MmJhZDQ3MTQ5NjJjNjUwMDlhYjY0YzljZWQ1Yzc5YiBsZWdhY3ktdHJ1bmsKKzMyNDY5IGMyYTA1ZTA3ODVmMTQ4ZmFlOTc3Nzk4MmZjNWE5NTY4OTQ3ZTBlZjcgbGVnYWN5LXRydW5rCiszMjQ3MCAyN2FmMzdkZDVhMGJmNTIxODQ1YTgzMmI0YzdiMDU2MjIzNWU2YThkIGxlZ2FjeS10cnVuaworMzI0NzEgMzlkODJkMDM4ODc4OTQxYWMxMjgwZjIwZjZmODVlMjc1Nzg1NjcxNSByZWxlYXNlMjItbWFpbnQKKzMyNDcyIDQ5MGFmMDBmYjE4MzBjMzU0YjM2ODg5NzNmNjhhMzA0YzRiZmJlNGMgbGVnYWN5LXRydW5rCiszMjQ3MyBlZjA3OWRlZmQyY2MxMWY1YTI4ODliZjgzNzk0MjhmNDgxMzBjOTBlIGxlZ2FjeS10cnVuaworMzI0NzQgZWU4MTVhNmIxMWUyMDJiZWIyNjU1Mjg4ZGY1ODYzYWNlNjkwNmI3YSBsZWdhY3ktdHJ1bmsKKzMyNDc1IDg2NTExYjk2ZDk4MGM3Y2NjZTY4MDYxY2U5NWY1YTEyMTJlYWVkMmYgbGVnYWN5LXRydW5rCiszMjQ3NiBjZDgyMjUzZjIwYjcwYzM2NzlhN2ZjMmI2MmMwYWVkYTY5NWU4ZjE1IGxlZ2FjeS10cnVuaworMzI0NzcgZmViMzU5NTRiMDM4NjhkMTJkYzFlMWI1ZDU2YWQ5Yzg5OTNiM2JiZSBsZWdhY3ktdHJ1bmsKKzMyNDc4IDRjNTNiNjk0YWZhNjk4MjQ4MmZmNjI2NWMyN2JmOGQwNTcwMzdlZTggbGVnYWN5LXRydW5rCiszMjQ3OSBmMzUxZmFiNzM4OTdkZGRiOGIzYjgyYzU5NTY4NjhhZDYzY2JkZjlhIGxlZ2FjeS10cnVuaworMzI0ODAgMWJlZjNlY2EyMGNlMDk5MWYzMDM0ZjE3ZjJkZTYwNTI2YjJkNTFjMCBsZWdhY3ktdHJ1bmsKKzMyNDgxIGFlMTdmYzgxOTMwOGIzYWI2NmY3MWI0ZjZlOTMyMjAxNjM2NjdkYzggbGVnYWN5LXRydW5rCiszMjQ4MyA3MzZiYmRlY2FhMWRmOWQ0YmY4YjYxZGU0NWQwM2M5MGE5MjU5ODg3IGxlZ2FjeS10cnVuaworMzI0ODQgNTQ1ZmFlYzc5MGM0NzMyNjBjNjUyYmFhM2JjYmExMTFiOWNlZjEzNCByMjNiMS1icmFuY2gKKzMyNDg2IDVjY2I1NTM2ZmVmZWJiYjY0YTMyOTE3NTZhNTYzOGJjMjc5YjJiNmUgcjIzYjEtYnJhbmNoCiszMjQ4NyA1Y2RiNzI4MGMzMjY2ZDk1NDhjY2Q4YTZiM2Q0MDZhMjFmMzhjOWNhIHIyM2IxLWJyYW5jaAorMzI0ODcgNWZjNjBlMGI4ODM2ODAyMDdjZmIxMDA4NjVjNDJjYTNhMmIxNjYzNyByMjNiMS1icmFuY2gKKzMyNDg5IDU3NmZhMTdmZjA3Y2MxNzNkMmIyNzdlNDVlNGE0ZGVhYjQ2YWJkMmIgcmVsZWFzZTIyLW1haW50CiszMjQ5MCAxNzFlY2ZmZjI2NTc5Yjc1OWY4OGI5ZWFjNWExNWUzNTM3ZGFkNjliIGxlZ2FjeS10cnVuaworMzI0OTEgYmRjZjM3YmU5MDRkYmQyZTM1M2YxYzdmYWVmMzE2MmJhNjFhMDI4MSBsZWdhY3ktdHJ1bmsKKzMyNDkyIDMwMzBkOTRhOWMwNTkwYmU0MTcyMGI5YzdjYWVkMTUyMTRlN2M4M2UgbGVnYWN5LXRydW5rCiszMjQ5MyBiNjJkODc4MTY5NzY5NTQxMmQ2ODZlZDAwNDNmZmQ3MWVkMWE0MTRmIGxlZ2FjeS10cnVuaworMzI0OTQgOThmNWJmYjE5Yzg2OGIzNjNmZDQwMDRmMzMyZmViODQ2YzVjOTRlZSByZWxlYXNlMjItbWFpbnQKKzMyNDk1IDY4YzYxODZkYzFhMTFiYjQxMmVlMDNhZWI5ZDFlYmFkZDdjM2JmMTcgbGVnYWN5LXRydW5rCiszMjQ5NiBiNjdmNWMzOTVhNjg4ZTU5MDU4MzY4MDQ4OTJmZGIzNmU2Y2U2MjQ4IGxlZ2FjeS10cnVuaworMzI0OTcgMTAzZmFhMGMyZTFlNmY2ZmI0YjQ3YjdlZDI0NTQyNTBhMDBhNzEyMiBsZWdhY3ktdHJ1bmsKKzMyNDk4IGRiOTg0NTkwN2U4YmVkMDM5NjQ2NWEzYmQ3M2JjZTZlMmVmNzg2MTUgcmVsZWFzZTIyLW1haW50CiszMjQ5OSA2NDIzMGVlOGVlYTU5NWJlMmU0MDRlM2UzMWRiOWMzY2RiNGUwZjJhIGxlZ2FjeS10cnVuaworMzI1MDAgZjUwZDBkMGYyOWEyZDBiNTI3YTVhMjhmMTM3YWI0ZDNiYjdlMWY0MSBsZWdhY3ktdHJ1bmsKKzMyNTAxIDZkODUyZWJmZjM2ZmY2M2I3OTg2ZTY4ZTIzYTZiMDY5OWM1YTk2MTAgbGVnYWN5LXRydW5rCiszMjUwMiAxNjM3NDA1MmNiNWRiM2M4YzZjMjQyNGI2NTNiNzViMzMyYWIyZWE0IGxlZ2FjeS10cnVuaworMzI1MDMgNTNmZjIzYmIzMjQ4ZmI4NDcyODA3MDBiZGE2N2NjZTU0ODA3NzIxOSBsZWdhY3ktdHJ1bmsKKzMyNTA0IDc0M2FlOWNiM2E4M2RiZmYyMzEwMWM0NjhhNWUxMWQ5MWI4YmI1MmIgbGVnYWN5LXRydW5rCiszMjUwNSAxYTBiN2ZjNDYyNWI4ODAzZTMzODNiZDMwOWE2ZjM2NzA5ZjQyNGYxIGxlZ2FjeS10cnVuaworMzI1MDYgM2E4YjhhZWRlMTAwZDhjOGVkYTlkNjU4YThlYzEyODljZjZiYzQ2NyBsZWdhY3ktdHJ1bmsKKzMyNTA3IGE1MzUyOTA5NWU5NTQwOTQzODRmNzNhN2NlNmY1OTc0Mzg5NmExOGIgbGVnYWN5LXRydW5rCiszMjUwOCA1ZjNlOGJjYzhjN2ViY2E2NGJjZjAxNmU2ZDNiN2I3MzljMGVlMjA5IGFzdC1icmFuY2gKKzMyNTA5IGIxYmM5ZTE3MWM2MmU4MjlhZWNjYWY4MDA5OGFjODk3MTk5MzdmODAgcjIzYjEtYnJhbmNoCiszMjUxMCAxZDk3ZjUyYmM4NGZiMGRiYjk1MzNkM2ExNDQ3ZWUwMDU0YzM2NWRlIGFzdC1icmFuY2gKKzMyNTExIDcxZTE5MWI4M2QwNDY1YmNkMTcxNDY3N2M3OGNkZTkwMTdlOTg0ZDcgYXN0LWJyYW5jaAorMzI1MTIgYjg0NjEyMTgyOWJkYjAwN2NmNTQ3NzkyOWY3ZmUzOWRmZGM3Y2U0NyBhc3QtYnJhbmNoCiszMjUxMyBhNjEzMzBhM2Q1OWMyMWNkNjI0OTU3N2YxNjRmMWQwZTQwOTgxMzFhIGxlZ2FjeS10cnVuaworMzI1MTQgZjU1YjU1M2EwYjM0OTk5ZjYwNTA2YTg4ODAxNGI1MWJjMTZlOGIwOCBsZWdhY3ktdHJ1bmsKKzMyNTE1IDYzOTJlODQzNzU4ODgxMzEyMDczNTU4YjZhM2UyZTk2NmI5ZDBkYjIgbGVnYWN5LXRydW5rCiszMjUxNiBjNmQ2YWQ4NjJhOGMzMzExM2VlNzRiMmMzYTQwYjA1ODk5MjExMjcyIGFzdC1icmFuY2gKKzMyNTE3IDY1ZjcyMGZhNjIwMGZkYWZmNDBhZDI5ODAzMTg0MzAzZDI2NjA3YmYgbGVnYWN5LXRydW5rCiszMjUxOCAyNDAwNzFhMmI0NjZlNGYyYTMzZDgyZTkzNDQ5YjdjMzgwNzg1ODc5IGxlZ2FjeS10cnVuaworMzI1MTkgODVmMGU2MDk1NGNhN2IwMDA3NjY2OGMxZmMzNDY2ODVkYzY3ZDVlMyByZWxlYXNlMjItbWFpbnQKKzMyNTIwIDllYjViZTkzNzk5MGE4OTJlNWE3M2FhYjYxOGE2MjFmNTA3OThkMzggbGVnYWN5LXRydW5rCiszMjUyMSAwZjBmNjIzNGYyZmY0ZWZkY2M3M2YzY2E2MzE3ODBhOWIzN2M4ZjdjIGxlZ2FjeS10cnVuaworMzI1MjEgNjdjZTRlZTRhMjlkMWU3Y2UzNTdlZjhkMWMwMGM2OWQ1NTdjMTBiMiBpZGxlZm9yay1tZXJnZS1icmFuY2gKKzMyNTIyIGUyZDI5NTY5OTk2ZDgwZDYwNWRhNjZlMTdiZDQyOTQxZTAzZTFjOTcgbGVnYWN5LXRydW5rCiszMjUyMyAyMzE4YTllMTZhYjBhOWRjOTg4ZGZmZmU3MTU4M2FhM2ZjY2Q3NDczIGlkbGVmb3JrLW1lcmdlLWJyYW5jaAorMzI1MjQgNzVjMWNlZDkzYmI1MmMyYWJjYTA2YmZkMTIxMWU0NzQyODFlMzQzNSBsZWdhY3ktdHJ1bmsKKzMyNTI1IDZjNDE3NTUyZjQ3MzVjMDhjOGRiNTY2MTM0MmVlYWIzYmJjYmRhMDEgaWRsZWZvcmstbWVyZ2UtYnJhbmNoCiszMjUyNiA2ZTk4NjIwNjZlMjk2ZWM4NDg2OGNhN2EwMjAzZDA0NjkzN2Y1YzNiIHIyM2IxLWJyYW5jaAorMzI1MjcgOTk4ODFiNmVhOWY3ZDk4MGIxNDE3NThmMmIwYjg2OWRhNjYzNDg2NCByMjNiMS1icmFuY2gKKzMyNTI4IGEzNDE5NzZmZjQ3NmQ4ZDRjZDExZGEzYmI0MjEwNzUzODVkZWYwMGUgcjIzYjEtYnJhbmNoCiszMjUyOSBiMThkMmYyZGIxOGQwOTBjNjE5MGIzMzMyZTAxNTBhMWE3ZDQzZGQzIHJlbGVhc2UyMi1tYWludAorMzI1MzAgODllMzVjZGJlY2NjMGNmMTkyY2NmOWIyYzhkMGFlZGM2NDA3MTFmZSBsZWdhY3ktdHJ1bmsKKzMyNTMxIDY4NzMzNzliOGQ4YzVhMDcxNTI1YWM1ZTM1Yzg4MzIyNzIzZjBkMmYgcmVsZWFzZTIyLW1haW50CiszMjUzMiBlYTc3NzI3MzJkYTE5YzMxNDdmYmUwZTg5MWRhYWNmMWRlYzNlZDgzIGxlZ2FjeS10cnVuaworMzI1MzMgNDk0ODZjNTQ0YWNkZDU2MTcyYWRkNDZlOGNkMjdiMjA5NGU2YjBkMiBsZWdhY3ktdHJ1bmsKKzMyNTM0IDY3MWU0ZTJlZWM0YmE3M2U4NGE4NTg3Yzg4MmNkMGUxNjhiYWNhMzAgbGVnYWN5LXRydW5rCiszMjUzNSBhZjUzNzI5ZDNjZGQ2NDExOTUyMjU0NzA2Mzk3MDAzMmZjNWFlOTBjIGxlZ2FjeS10cnVuaworMzI1MzYgZTRlYWJlNWIzZGExM2Q0ZmFhM2QyNzFjM2EwMzhlNWFiOWRlN2YyNiBsZWdhY3ktdHJ1bmsKKzMyNTM3IGQzMTY0YTMwNDU5OGIxNGYxNGRhOTNiYTFkYTRhZmU4MGY3ZTU2NTUgbGVnYWN5LXRydW5rCiszMjUzOCA5NmI2Y2M1ZDQwOGI4NGQyNWYxZWYyNjAxYWQ0ZmZlMjAxYWY3NDQ3IGxlZ2FjeS10cnVuaworMzI1MzkgMzlmNGI5N2NlODI4MTlkYzJmMTEwM2EwNWE0N2RkMmQ0M2RmODgxNiBsZWdhY3ktdHJ1bmsKKzMyNTQwIGQ1ZTI5MWYwYWUzOTU1Y2FhN2Q3MDAxYjczMDE4ZWU2OTgyZjU1YzMgbGVnYWN5LXRydW5rCiszMjU0MSAzNWM5MGQ5Y2MzMTM1NzUwNmE4ZDg2NzYyNzZhN2RjNzg0YmI0MDllIGxlZ2FjeS10cnVuaworMzI1NDIgZDMwYTZhNTc0OTc5YzhiNmYxNjVhY2QyYzU4YWFkZTlhMjM1ZTRkZiByMjNiMS1icmFuY2gKKzMyNTQzIGJjMTM1ZDdiN2RmMTZmYjdhYzFkYTA2MDViMGZlOGYzYjE3NDIzOTcgcjIzYjEtYnJhbmNoCiszMjU0NCBlZGRjYjc5MGVkOGQ4YmQ1MWYxOTA3NjY2OWMwYzYzNDIzNjY1NmQ4IGxlZ2FjeS10cnVuaworMzI1NDUgMmQwNjljMTZjOGIyZDE5MTI4NTc3NzY5NDEwNGM0NWI1M2Q5N2EzNSByMjNiMS1icmFuY2gKKzMyNTQ3IGQxY2RlM2RhZjlhOWU2MTY2N2VmNzZmYzk4NGQ4OGY0MjMzOTU3NDYgbGVnYWN5LXRydW5rCiszMjU0OCBmNDIzODAzNjAwMGM0NTU2YzQzOWJkYzE4OTQ3MjYyODEwNzYyNThkIGxlZ2FjeS10cnVuaworMzI1NDkgYjlhMzA3M2Y5MzkyOGMxYjgwMTEyNGJmNDdiNmU4MzU1ODQwZTNlNSBsZWdhY3ktdHJ1bmsKKzMyNTUwIDgxZDM3M2U1ODk4MzhjMzM5ZTAzMmU2ZWMxNzExZDhlYzE2Nzc2ODUgbGVnYWN5LXRydW5rCiszMjU1MSAyMzdmOTdjNzE2OTFiZjNmODQwZjZmY2QyNGNlZTVlNGViODY4NjVhIGxlZ2FjeS10cnVuaworMzI1NTIgMDgxZWY3YjZiZTA0Mzc2ODM3ZmIyNDVhMjcyMmU3ZGI4NzQxYWI5NiBsZWdhY3ktdHJ1bmsKKzMyNTUzIDBlMzVjMTU5NzQxYjU3MWRlNTMxMDZiNWRmNWFlNzA4NzYzNmNlOGMgbGVnYWN5LXRydW5rCiszMjU1NCBhYWIwZGJlM2MwMDgxZmJkODRhOWRmZWRkNmNiMjgxYmE2ODA2MjdiIGxlZ2FjeS10cnVuaworMzI1NTUgMDM5YWIzMWUxMDM0Nzc5NmI0YjgwNjhjYWFjNGYyMjAyYzRhY2E4MSBsZWdhY3ktdHJ1bmsKKzMyNTU2IDQ1MjhjYzBlZGI2ZGE1NGY5NjMwMzMxZjg3ZjllODRmZTVlMzEyZDggbGVnYWN5LXRydW5rCiszMjU1NyAxZDFhODVmMGU1ZTk5OTg1N2MxMDNmNzI4OWYzZGM0OTlkMTIzNzIzIGxlZ2FjeS10cnVuaworMzI1NTggZmE1OTUwZmJlNzM2NzRkNmUwMGM1ZmExOTdlZTNiNzYwNjYxNTNlOCBsZWdhY3ktdHJ1bmsKKzMyNTU5IDFlYWMxYTM1YjM3MDQyOWU2YmY2YTZhMWQzN2VkMmZlYjQyN2U0MDMgbGVnYWN5LXRydW5rCiszMjU2MCBlNGU3MmZhNGM5MTQxMmYzNjI2ODI2ZTMwZTFkZDg3NWUzYTc0NzY4IGxlZ2FjeS10cnVuaworMzI1NjEgY2U5ZTJhZThkNTlkNjY0MTZhZWU5YTNlNTI2YmYzZDc0YmU5OWU5ZiByZWxlYXNlMjItbWFpbnQKKzMyNTYyIDA2YWJmYzljNjhlNzcyN2VmYzBjNzhlNjc3YmY1MWZlYTlhN2ZkMjggbGVnYWN5LXRydW5rCiszMjU2MyA2YTUxZDExZmIxZTkxNWY3NmFkNDhhNDI0YzljM2Y3ZTNhMzEyNzE1IHJlbGVhc2UyMi1tYWludAorMzI1NjQgOTZlZWU3ZDA0ZDg4NDA3ZDczOTY2NmU4NGQ5Y2EzY2IxZWQzYWQwNiBsZWdhY3ktdHJ1bmsKKzMyNTY1IDRlZjEwOGY4MTgxZjMwYzU0ZTU5Mjg2OWYzM2M3OGU4NjVkYTIxODIgbGVnYWN5LXRydW5rCiszMjU2NiBiMDRjMDc0NTg2YWE0MjY2MzRhZTRjMzFkYTRiOTM0MjRmOWEyM2U0IGxlZ2FjeS10cnVuaworMzI1NjcgMzM0NzU2NjE4MjNkMzczZDY1Y2E5MzUxN2MyN2E1N2Q2MmZkYmFjYyBsZWdhY3ktdHJ1bmsKKzMyNTY4IGZhMDA2MzkyODUxODE3YzMwOGZhMjYyZjdmNjE2NDExOTIzNTk0ZmUgbGVnYWN5LXRydW5rCiszMjU2OSAzOWFkNzYxNDMyODhiYTJhYWRjMjljMzU0Y2NlY2IyYmQ0MTY1ODY3IGxlZ2FjeS10cnVuaworMzI1NzAgMTc0MWFmNDhmZDlmM2U2OWZhMzU1OTI4M2NkZTY3ZTZjYTkyMWE3YSBsZWdhY3ktdHJ1bmsKKzMyNTcxIDkyODcyNzg5MTZlM2M1ZjFmMWU3ZDhkM2VhMmY0ZTVjNTU3MTk4ZjggbGVnYWN5LXRydW5rCiszMjU3MiBmMmM3NGNmZWEwNTEyNDc0YWRiMjM2MzhmODhlNTJlNDUzN2NlNDc5IGxlZ2FjeS10cnVuaworMzI1NzMgMDBmYzEzOGQ4NTU2NTg3NzQ5YmI3YTUyNjU4MWY5NGJiN2Y0NzkwNSBsZWdhY3ktdHJ1bmsKKzMyNTc0IDg4OGEzMTE4ZTBkNDIyODhhZWIxNzMyZDVmM2YxN2IyZmQ0ZjllOWQgbGVnYWN5LXRydW5rCiszMjU3NSAxMTQ5NTBlZTlhYTczM2VlMmMwMWZmYzNlYzg4MGI0NTk4NjNkOTE2IGxlZ2FjeS10cnVuaworMzI1NzYgODM1MzMwMTZjMjg5NzE2NWNiNGY3YTY2YWNjMGQ2NjI2YjFiNGE0OSBsZWdhY3ktdHJ1bmsKKzMyNTc3IGIzYjI4NDQzNmMyNGEyMGEzODI5Zjk3MGI2NjdkMzQ0MGY1NTM3YmMgbGVnYWN5LXRydW5rCiszMjU3OCBhNzY5ZTA3OWJiMTJmZjgzZWM5N2VmMzgwNzEzMTE3MzY3N2VkZGNiIGxlZ2FjeS10cnVuaworMzI1NzkgNzgzZGRkZTM3OTJiNjY5NDg2NGU5NDRhZTZkYjE4NGVlOTNmNTY0MiBsZWdhY3ktdHJ1bmsKKzMyNTgwIDBhMTgwZWUyNDczYmQ5OWVjNGNkNmZiZTRhYmYzYTVkOGRiNjNjNzkgbGVnYWN5LXRydW5rCiszMjU4MSBjNzk4ZDI4ZGVlNDZiMTlkMTYxMjYwZTdiNDE0MzBhNDYzZTcwZjg4IGxlZ2FjeS10cnVuaworMzI1ODIgOTJhMWU1ODVhYmY3NjNhYzM1MTY0MmFhMmRiY2JjNmY1MmM1YTc1NyBsZWdhY3ktdHJ1bmsKKzMyNTgzIDE4MDgyYjJkMmViZGYxNWIzZmQzYjlmYjU0N2Q4MDNiZDg3MzM2MzYgbGVnYWN5LXRydW5rCiszMjU4NCBhNDBiNTY3MWE1NjM5MjFkMjlkMDU3ZGZiN2EyMGQ0NWNhZjdmZTJkIGxlZ2FjeS10cnVuaworMzI1ODUgNmEzMTE3ZGY1ZTEzMTI1OWFlNDJmOWUyODAwYTExMTJiOTYwMzNjNiBsZWdhY3ktdHJ1bmsKKzMyNTg2IGQ5MTgyMWQ5ZDQ3MDk2NzJjMGJjNjk1NTFjZjQ0MzRhZTBiMDk2MGQgbGVnYWN5LXRydW5rCiszMjU4NyA5OWNmMzM2OGQ2ODdlYTg5ZTdmYTY3M2M4NDUxNzY2NDUwMDllYTU1IGxlZ2FjeS10cnVuaworMzI1ODggYTExNGVlNzQyNjdjNzMxMzBiNTg3MGQ5NjJiNTI2NjlhZWNhNmNlNSBsZWdhY3ktdHJ1bmsKKzMyNTg5IDJlZWU5NjU1ZDcxYjBmODk2ZDZiYWM5YmVlNzhiMjA3MzYwOTczODkgbGVnYWN5LXRydW5rCiszMjU5MCBjNWYxOGRiMWM5NjYxZDU4MDcyNTMzNjk5NTc4YjJmYmM0ZGZmODVkIGxlZ2FjeS10cnVuaworMzI1OTEgNWQ0ZDRlYmZkMzE3MWU3NTM1Yzk0MTg3Yzg1YzdhODg3YzdjYWQwYiBsZWdhY3ktdHJ1bmsKKzMyNTkyIDQ3NTZmYTUzODU2MDZmYjEyMmY1ZTlhN2QxNjdkOWRmM2Y1NTdmMTkgbGVnYWN5LXRydW5rCiszMjU5MyBmYTA1NzgyNGM5YjRiNDI3ZDA5NGEzOWU1NDgxNjBjYTc0NGViNDJhIGxlZ2FjeS10cnVuaworMzI1OTQgMDVkYTc3MjZjMDI3ZTQ3ZjExMDliMTdjOWI3ZWQ1NGM4MzhlZTBiOCBsZWdhY3ktdHJ1bmsKKzMyNTk1IDM5MzQyOWE2ZmExNmQxZDkwNDg1N2ViNWRhNjA5NjRlNjFhNGViMjAgbGVnYWN5LXRydW5rCiszMjU5NiBlMDU5YThiMTFiOWVjY2IxMDA3MmY3Njk5ZTRlYTQ5ZGVhMzVjMjZiIGxlZ2FjeS10cnVuaworMzI1OTcgZmFmMmNiNTA3MGI0YzhkMTNiN2FjNTlhNWY5OGNmNzQxNmJmMmY0YyBsZWdhY3ktdHJ1bmsKKzMyNTk4IDAwMWE5MDU1NTc4MDhhMTVlODQzOWI1ODNjMWZlYzY5ODlhZTcyZjkgbGVnYWN5LXRydW5rCiszMjU5OSBkYmRlYjczNGZmOTc5OWRhODE2YzU5MzZjNWM0MzZjNDMxZmRhYzExIGxlZ2FjeS10cnVuaworMzI2MDAgOGRmODk3ZjE0ZmI4NjAyNmYzNDQ3OWIyZTA5NjljODBmNGJjNGRiZCBsZWdhY3ktdHJ1bmsKKzMyNjAxIDMzNTk4ZThlNDliMjBiYTRiNWE3OTlkMmExYmMyODIwMmI5ODM4ODIgbGVnYWN5LXRydW5rCiszMjYwMiBhYzQ4N2E3ZjdmMmM3NzA5NzU3OGJlZDFjOGI4OWZjYzdjM2E1NDYwIGxlZ2FjeS10cnVuaworMzI2MDMgM2E5ZjVmMGM1MTJlYjQ5ODBlYzFhYzgwOWZhZjY2NzRhZmVkNTZiMCBsZWdhY3ktdHJ1bmsKKzMyNjA0IDE5NjQwMTJmNmZiMGQyM2JmOGQ3YmEzOTliYjVlODU3NGEyNjFjMjAgbGVnYWN5LXRydW5rCiszMjYwNSA2YzRhMDRjZTk2NWMyNThmM2E5YmIwZjk0ZDkxZWMwY2FkN2I5NWVjIGxlZ2FjeS10cnVuaworMzI2MDYgMDk0MjJjMzAxODI2NWI4NWE4MGYwMDg5M2UxNmEyN2Q1ZTM2YzlhNCBsZWdhY3ktdHJ1bmsKKzMyNjA3IDlkNWE3NTkxNjk3MTA5NTgwYzU4ZGVmNjJjOTE3ZTA3ZTY1MWUxNWMgbGVnYWN5LXRydW5rCiszMjYwOCAxNzYzZDlkM2ZkOWRmZWVjZDZkNmUyN2JkYjU2N2ZhMTRjODZiZTljIGxlZ2FjeS10cnVuaworMzI2MDkgOWI0ZmY0YmYwMzNiODE2NDc4MjZhZWU5ZmNiMTdjN2UxMjU2Y2Y1YSByZWxlYXNlMjItbWFpbnQKKzMyNjEwIGJhZWEzMThiZTQ5OWNkZmM0OWI1NTdhZGQxMWNlODM5OGI5NDMyZDEgbGVnYWN5LXRydW5rCiszMjYxMSAyNWIyMjE4ZGEwOWI1OWY5NmI4OTZlZTZiNDEwYTY4YTI4MDAxMTk3IGxlZ2FjeS10cnVuaworMzI2MTIgMzVhNGQ3NGI1YjhlZDk5YmQxNzA1MWYwOTdkYjE5MjNjNjYxNmI5ZCBsZWdhY3ktdHJ1bmsKKzMyNjEzIDZjYTk0YWViMjkyYWM0Nzc5YTMwZjc2YmJhZGMzNWU2MDc5MmE4NjkgbGVnYWN5LXRydW5rCiszMjYxNCBhYzI5MDE1ZmY2YTgxZWYwNDE4ZGExOTZkODU5ZGI0ZjkzODBjOWY5IGxlZ2FjeS10cnVuaworMzI2MTUgMTg5ZmRhZThmNDkyYmY2Y2VkM2Q1YWUwYjE0YTMyYzI5ZjRhNjUxMyBsZWdhY3ktdHJ1bmsKKzMyNjE2IDI1ZTY2MGU3MGRjZDA2MWU5OTgyYjAzNzhhYmYzNmYwMzY3YzBhYTIgbGVnYWN5LXRydW5rCiszMjYxNyAyZTk5NTZkMDFkZTMzMmY3ZDEyZjIxODRlYjBlOTFhNjU0NzAyMzZjIGxlZ2FjeS10cnVuaworMzI2MTggNGJhNzYzYmM1YTU2MGRjNTdkZDE4MGIyZDc1ZDU2ZTk2YjU3Yjc4MiBsZWdhY3ktdHJ1bmsKKzMyNjE5IDM1MGVlMzFhYWIwYzAyNDI0NzNkNTBhYzkwZmUzM2ZhZmUwNGFmZWMgbGVnYWN5LXRydW5rCiszMjYyMCA5OTU5ZDhmYTRkZGYwZjhjMDQwOTYwZWYxMGFjY2U2Y2M5YWFlMGVkIGxlZ2FjeS10cnVuaworMzI2MjEgYjE3NGQwOTI3ZjBlMjU3OTQ5YzljMTNiZmY3ZjQzNWMyYzA0NTM3YiBsZWdhY3ktdHJ1bmsKKzMyNjIyIGM5YzZiYTc5NTJhODIyN2FhOGQzYjJiOTI1OWJkYWJkZWFlYzk2MmUgbGVnYWN5LXRydW5rCiszMjYyMyA5ZjkwMjJjMjEwNTYyMzQ5ZjQ3MDE4NzUxODkzNjVlNjdiNjQ0MWUwIGxlZ2FjeS10cnVuaworMzI2MjQgNjViZjY5ZjdjMTQ4OWQ4ODQ4YWIyNDZiZTNiYzVhZDI2NGRhYWViYiBsZWdhY3ktdHJ1bmsKKzMyNjI1IGM5MjQxMmQ2MzRiMTBiMzAwMjg4N2Y0MjM1MGM4ODRhM2YyZTAyODYgcmVsZWFzZTIyLW1haW50CiszMjYyNiA2OGYwNDJmYWZiN2RkMDliZGZjMjZmYjM0NmZlNDY0Y2M1ZTBlMGQ2IGxlZ2FjeS10cnVuaworMzI2MjcgYmIxNzcwOWEzN2EzYWMwNzQ5ZWMxMmE0MTAxNzQwMWNiMjFiMWIyZiByZWxlYXNlMjItbWFpbnQKKzMyNjI4IDNlODhjZmYwNTgyMmYyYzFiNThhNWNjMDc0OGZiY2Y5OGI5MWUzZjEgbGVnYWN5LXRydW5rCiszMjYyOSA0YmY4NjUxOGQ5YWU1MDE4MjA3MGY1ZWNmMDA4ODAzZTU3Y2M1NDQyIGxlZ2FjeS10cnVuaworMzI2MzAgNGMxMzkxNjg2NDhjNmFkZTNjMzAxYWE4ODljMjk2OTczMzQzMGU0ZSBsZWdhY3ktdHJ1bmsKKzMyNjMxIDgzZmUwZjVjOTM1OTdjYzZjMTZhNTZhMDMyMWU4MjZmYzU2MWJkNTEgbGVnYWN5LXRydW5rCiszMjYzMiBjZmNjNDVmMTg1MTVhMGRhN2VlZGFhOTNiYjY2ZTdmMGQ1MjJlZDQwIGxlZ2FjeS10cnVuaworMzI2MzMgNTg5MmMxZTUxNWI0ZGE5ZTEwNzQ5NTc5NTQzNjZmNDY0NjQ4YTEwNSBsZWdhY3ktdHJ1bmsKKzMyNjM0IDgxNWZmMGFiMjRlNzI4YzFjYjZkYzAwOTNkYmMxMzM3M2MyYzkxMDggbGVnYWN5LXRydW5rCiszMjYzNSAzMTJmMTE4NmFhMzk0NTgxYjViMTQ1MDE3NDVhMmQwNDFmODM1MzU4IGxlZ2FjeS10cnVuaworMzI2MzYgYTVkZDU3NDdjZGZlMjY4ZDRhNTZjNWYxYmY2MTkzZTkxZTk4ZTQ5NyBsZWdhY3ktdHJ1bmsKKzMyNjM3IDE3YmZhNzg2MDc1YWRjYjMwMTA4ODZlNGMwNDI4MWU1YjQ3YTgzY2IgbGVnYWN5LXRydW5rCiszMjYzOCBiNTRhODRkMjljMDAwMTZkZWE4YmZmMjAzNThjOTU4MWJjZDMwOGQ0IGxlZ2FjeS10cnVuaworMzI2MzkgNDEzODhlODQyNjFiMjQyYTYyYmZkMDUwNGE4MTIxZDMzMDljZWM1YyBsZWdhY3ktdHJ1bmsKKzMyNjQwIDIyMmMzZDJmZTQzMWIxMzcyYmM5NzAwOWYyNzhkNjNkYTEwNzgwNjUgbGVnYWN5LXRydW5rCiszMjY0MSA4MmZlM2E5YWMzNzFkNDM0NmFjZjZlZmVhZjY0N2RiYzczNjQ1MmEyIGxlZ2FjeS10cnVuaworMzI2NDIgNjFkM2Y4ZTY2ZDhmYzA2MDA4ZGQ3OTU0MGViMjVhMzg0YWVlMTE4ZCBsZWdhY3ktdHJ1bmsKKzMyNjQzIDQ5M2ZkN2U1MjIwNmExYWU1YTA0NDEwN2MxNjQ1NTA1NDk4OGFjNWQgbGVnYWN5LXRydW5rCiszMjY0NCBjZTZjM2NjNDIyYWI1MTYyODQ2YWJkYjRmZmViMjY0ZjIxN2U0YTlhIGxlZ2FjeS10cnVuaworMzI2NDUgYjM3MDJiNjgzZjJhZDJiZTZiMjBhYzdjZWEyZTE3Njk3Y2M1NGUxNiBsZWdhY3ktdHJ1bmsKKzMyNjQ2IGYxZmNhYzRjYWJhZDg2ZmNhOTEwMGMwNzMxYTFjOWU3OTAyNzNmODQgbGVnYWN5LXRydW5rCiszMjY0NyBkNTQ2MTBmNGYyNjFkY2I5ZTE2OTQ2YWZjOTFiNWE4Mjg1ZDM5YzIyIGxlZ2FjeS10cnVuaworMzI2NDggNmIwN2YzNjljZjAzZGFkODQyNmNmNWQ3YjAyMzM3MjAxMGZmMTk2NSBsZWdhY3ktdHJ1bmsKKzMyNjQ5IDM4MGE5YTVhZmFhMGJkYjJmNWY2OGNhZDk5NzAyYTRkNmExNDhjMDIgbGVnYWN5LXRydW5rCiszMjY1MCBlZDRiMDk4YzdiY2ExZDk4YWY1YmY2NmE0YTk1ZGJmMDY0Y2RmZDRmIGxlZ2FjeS10cnVuaworMzI2NTEgNmZjYTZlMDdjMmZhOWE2ZjVhNmEzMzkxYjg4YTliNTYzOTRiMDdjYyBsZWdhY3ktdHJ1bmsKKzMyNjUyIGUxMDdjOTIxYjhmMzMxMTYyMWFmNjVkNzMxZGEyYTVjOGFiMzAwZjMgbGVnYWN5LXRydW5rCiszMjY1MyA1MDk1Mzc4Mzk0MjQ2YWZmYjAyNzRhN2YyN2JkYzBmNzljNjM0ZTQ2IGxlZ2FjeS10cnVuaworMzI2NTQgNmM0MGI3M2M3MDQ1N2VmYmNlMTY4ZjljZDU3MzA4MThmNzUwMThjOCBsZWdhY3ktdHJ1bmsKKzMyNjU1IDUwODQxODk4Y2MxOWMwYWMzNTdkNTAxZjIwNjE0NzQ3ZWRkYTFiOWIgbGVnYWN5LXRydW5rCiszMjY1NiAwMTNkOTVjMzQ2ZDIzNTU0MzJlOGQxN2M2ZjU2M2MwNjM2YTM1NTNhIGxlZ2FjeS10cnVuaworMzI2NTcgYTA3ZGVmMGRjNzg1MWVhNDhjNWIxNmQ0YTkyZmNlODc3N2U0OWNiOCBsZWdhY3ktdHJ1bmsKKzMyNjU4IDMwNTVjOWJkZmY1ZjUxMTlhNjAyOGRkYzZjZGI3NjMwNmNlMjJkZjggbGVnYWN5LXRydW5rCiszMjY1OSBmOWU2ZjlmYjhkZjBjNWYyMDUyNDBkZGFiYzE3ZDdhN2Q4ZDJmMTNkIGxlZ2FjeS10cnVuaworMzI2NjAgYTNiMjYxMGI1MDQxYTkyYWFlN2QyNTFjZDVmYWZlY2RhOGIwY2M0NyBsZWdhY3ktdHJ1bmsKKzMyNjYxIGMyN2E2NGIzODc2MjdmMWJiZGRhNDMyZmQ1ZTYxNGNmMTMxZjQzYzUgbGVnYWN5LXRydW5rCiszMjY2MiBkMmFmYTAwYzIwZTNjNGZlNzI1MjBmYTRmN2E5ODcxNjc0N2EwZjRkIGxlZ2FjeS10cnVuaworMzI2NjMgOWI3MTY0Y2MwYzkyNjZlZDZlMjFjNWQzN2YxMTIyZTVlMjg5YzYyMSBsZWdhY3ktdHJ1bmsKKzMyNjY0IDA0NjEzMTYxYTMyYjZiYWZmYWMwNmYxNzNlZDA2NmM3OGMxYWU5ZjEgbGVnYWN5LXRydW5rCiszMjY2NSBlNjk2ODg4NmE5N2RhMTkwZjg1ZDEyOWIxZmNiYTkwZTk0Njg5OTYyIHJlbGVhc2UyMi1tYWludAorMzI2NjYgMTU3YTI5ZTE5ZWI5ZWM3OGMyNWEzMDlkMzVlNWM2YjMwNmMwMzdjNCBsZWdhY3ktdHJ1bmsKKzMyNjY3IDA2N2E5ODIzMjlhY2MzMzg2YTgwN2IzNjA3MmRhMTIzNjc3MmYxMzAgbGVnYWN5LXRydW5rCiszMjY2OCBlZWVkYWM0OWU4NmIzODhmYjIzYzE1MTM1NzE3MTZkNzRhNTc1N2UyIHJlbGVhc2UyMi1tYWludAorMzI2NjkgMTA5ODEwYTFhZGE4NjA2ZjI4MDMwYjNjZDc0MzlkM2NkNzg3ZWFlMCBsZWdhY3ktdHJ1bmsKKzMyNjcwIGQ0ZjY1NDRmNzlhY2U0NDFkYTdlYjc0N2RjNjdhMzMxYzliMzg2NTIgbGVnYWN5LXRydW5rCiszMjY3MSAxM2Q4ZjI5NzM3ZTVkZTI2ODI3NjZiZGJlZmE1ZmYyMTdjNTQyYzg2IGxlZ2FjeS10cnVuaworMzI2NzIgZGMzZjNmMzAzOGE4Y2ZhOTRmMThhZTJhZmE1Mjc3MTM5ZGJlMWVlNCBsZWdhY3ktdHJ1bmsKKzMyNjczIDA4OWYyNDIxZWIxOGEwYmFhODI0ZTg5NzI4YjBmYWNhNGYwMTM1NWYgbGVnYWN5LXRydW5rCiszMjY3NCAyZjY1MmE1OWViYjAxZjgyZGYzMWVlNzc1MjFjMWNhOTUxNDcyMmViIGxlZ2FjeS10cnVuaworMzI2NzUgMmY3NDNkZThjNWUyYTJiZjczYzdkMTQwYTI2ODFkOGNhNzg2YzMzYSBsZWdhY3ktdHJ1bmsKKzMyNjc2IGNiODMyYzJjZDU0ZDRhYTc5NzczNmE1YWI1ODYyMzFjYjY3Zjk5MmIgbGVnYWN5LXRydW5rCiszMjY3NyAzZjcwZDc1Y2QyOGRhY2JjNGM2MzQ4NDY4OTE5ZmU3MmVhM2UzZGZlIGxlZ2FjeS10cnVuaworMzI2NzggNGRlMDJmMThhNDFiNDJlYmFlY2I3NjRmZTQyMDIwNWJhMTc2NDc4MCBsZWdhY3ktdHJ1bmsKKzMyNjc5IDU3NGI5NTUxY2ZjOWU2MTlmYmUxNTMzNDQwMmZlYWUwMDM3M2JlZWYgbGVnYWN5LXRydW5rCiszMjY4MCA2YmJhNDhkMWNlM2JiMDY5N2I4ZWQ3ZDBlOGMzNjhmMWNjYWQ2M2M2IGxlZ2FjeS10cnVuaworMzI2ODEgMWMyZTYwM2ZlZTAyMzBlZDc1ZjY4Yjc4NzZhY2JlMmQ1M2I3ZDYyOSBsZWdhY3ktdHJ1bmsKKzMyNjgyIDRhZWFjYWRlNjYwMDliMTg2ZmI3MTliM2IwZmJlNDMwYjVhNTVlNTYgbGVnYWN5LXRydW5rCiszMjY4NCBkNWU0ODczNjJkM2FkZDQ5NjUwNTZkZGYyMmMwNmZkZDY5NTVjYjI4IHJlbGVhc2UyMi1tYWludAorMzI2ODUgZmIxMTdkN2Y1OTUwYzY0YjRlY2MwMjU3OGVmNTcwMDk4ZGZmMWU3YSBsZWdhY3ktdHJ1bmsKKzMyNjg2IDNmMjE0YzI2NGY2M2Q1YmM0MDA2NDcyM2Y1NDE2YTVmZmFlMGI3MjEgbGVnYWN5LXRydW5rCiszMjY4NyAxM2RiNWI3ZGUwZGRlNzUyM2VhMTVhNDA2NzczZjU2OGNlMDFhZjY4IGxlZ2FjeS10cnVuaworMzI2ODggNjU2NDkzNTM0Y2M3NzY2YWE2MWY2OTcyMzY0MjZjNzNmYWJiYmE3MyBsZWdhY3ktdHJ1bmsKKzMyNjg5IGUxZDVjYThhYjdkYzgyYzcyNjM5ODIxMTkzOGEyN2I3MmI1ZWI2ZjQgbGVnYWN5LXRydW5rCiszMjY5MCBjY2Y3ZTEzOGExMjZkZDMwZmNmMmM2MGY2MmEzN2ZhNjAwNzUxYmJhIGxlZ2FjeS10cnVuaworMzI2OTEgZGI5MDg0M2IwMGZjZGI4MzQyOGQ5NDllMzdiMGIzYTQwZGQ0OTMxMSBsZWdhY3ktdHJ1bmsKKzMyNjkyIGQzYzFhMDNhNTEzMDg5MDRmMzUzODliMmI3YzRmNzBmMTNiYzM2NjkgbGVnYWN5LXRydW5rCiszMjY5MyA1OWIxYjNlMmEyM2I1ZTk0YzAyN2FkOThmNzIxNGVkNTMyNzcwMjFiIGxlZ2FjeS10cnVuaworMzI2OTQgZWZmODZjZjhmM2JiM2U3ZWRiZTBiNDhjYjkyMzI5MGM4MzIxNjRlYSBsZWdhY3ktdHJ1bmsKKzMyNjk1IDgxMDg4ZGYwYjFkZjM2NDBlODliNGQ1Y2Q5NjQ1ZjNiZDgyZjlmZDEgbGVnYWN5LXRydW5rCiszMjY5NiAwNTU5ODc3YWRhNWNmMzA5YTYwM2RjZDk0NjU4NWYyOGMzOWYxMDI0IGxlZ2FjeS10cnVuaworMzI2OTcgOGU3OWRjMzczMWJmZmMyNmI5Y2E4ZGEzNmEwMzM1MzUzZjlmYTlhMiBsZWdhY3ktdHJ1bmsKKzMyNjk4IDQzMDAyMjMzY2MyY2RhMDE0M2Q5NGE2MzE4N2ZiYzE5NGE2MjYzYTQgbGVnYWN5LXRydW5rCiszMjY5OSBkZTU2NGE4NzMzZDIyNzUzZmU4MzA5MmQyYmVkZDdkNDRlMmZkNDQyIGxlZ2FjeS10cnVuaworMzI3MDAgNThjOGUyODQ1MWE5NzdlMGZhNGE2NzEwYzNhMzUyYjRjMjlmNGE4MCBsZWdhY3ktdHJ1bmsKKzMyNzAxIGQwNmFkYjVhM2NjOTZkZmZlM2JiOTBhOTk2NzliYmE0ZDdmZDc1NmIgbGVnYWN5LXRydW5rCiszMjcwMiA1NGYxZmZhMzc0MjllYWM3YTUwMTk4YzE1OWZjYWU5ZDk3N2Q3YmNlIGxlZ2FjeS10cnVuaworMzI3MDMgMDY0NDE5NzczOTU2YjcwOThiZDRjMzk3MzE4YzI3ZGFhN2FlYWI2MSBsZWdhY3ktdHJ1bmsKKzMyNzA0IGYyNzhiMjdlZjEwNWQzNGVmNDQ2YTQwZGZhMGJhY2Q2MzUxODI0ZTkgbGVnYWN5LXRydW5rCiszMjcwNSA3NzUwYjg0NjJhOGZjNDA4NmY3Zjk3ZTNmOGQ1NGU1NzA3N2ExMmRmIGxlZ2FjeS10cnVuaworMzI3MDYgMTQzZmZmOGQyMTg5OWQwOTNmZmM4NjJlMjhiYWE3MjEyYmRkZjcxYSBsZWdhY3ktdHJ1bmsKKzMyNzA3IGNmZmI1MTdmNGUxNWY5ZDZjODUwYzdjZTRkZjY2ODVmYjI0ODM5OGMgbGVnYWN5LXRydW5rCiszMjcwOCAyYjBjMGJkYTVjY2E3YjZlYTczNTMxNWVkZjBlZGZlM2VlY2I2YzcwIGxlZ2FjeS10cnVuaworMzI3MDkgNmRjODJkY2Y1NTg5MjYwMmQyNGZiODNkNzdhYmRkM2U1M2I1NzJiZiBsZWdhY3ktdHJ1bmsKKzMyNzEwIDQ1YmZhNmQ1OTFmN2NhNGE1MmFkNDk3MDBiMDI2OWMxNjdjMThjOTIgbGVnYWN5LXRydW5rCiszMjcxMSBiYWU2N2U0MTRhMTNhNDJmMDlkZWZjNjc1M2NmYTBlMDNjMzMwNGIwIHJlbGVhc2UyMi1tYWludAorMzI3MTIgZTA5Mzk5ZTNiMmMwOTBkZjQ5ZWMzYmRhNjRjNDUwMTRkYWJjN2Q5NiBsZWdhY3ktdHJ1bmsKKzMyNzEzIDkyZWJkM2RhZjUwNzJlZjMxYWI1ZGI1ZmQ2Nzk2ZDk4OGUzOGMzMjggbGVnYWN5LXRydW5rCiszMjcxNCA5ODM1YjQxMTMzYWMwNmU2OTY4YWUyNWQ4YWU0ZmRiZTk0MWY2YjJjIGxlZ2FjeS10cnVuaworMzI3MTUgMWJhYmJiNDkxOWE3ZjE3ZDJmZGJlOWFmNzAzYWE2NDUwMjY5OGZjMyBsZWdhY3ktdHJ1bmsKKzMyNzE2IGMwMTlhYTgyN2Y4NjA1Njk3NmQyOTEwMGVlMDAyODFmN2YyZDkzODMgbGVnYWN5LXRydW5rCiszMjcxNyBhYjdkYzUzOGY2ZjcyZDI4YTIxYjkyZWVjMDQ2YzU1ODczYjBiMWE0IGxlZ2FjeS10cnVuaworMzI3MTggOGU5MmYyZTJiZGE5ZjViMGMwZmIwYjhlMDUwZWEzMjk1Njk4ZWQ4YyBsZWdhY3ktdHJ1bmsKKzMyNzE5IGJmMTYzNGIwMjNkNWFlY2ViODQ4ZDlhNzE3YTIzOGU4YmE5YWI4NDcgbGVnYWN5LXRydW5rCiszMjcyMCA5MDM0MmYzOTU3MjFkZjY0ZTE5MGM2ZWQ4MWY5NTZmNWNkNGY1MTk5IGxlZ2FjeS10cnVuaworMzI3MjEgMDQwNjVjNGExYzZiNWFmZTUzOThhMDlhOTEzZTAzNjdiZWU5NzA0OSBsZWdhY3ktdHJ1bmsKKzMyNzIyIDFjODQ4ZTlmNjE2NjIzMWMwN2VjZGFmODUxNDBjYzMyODAzZjk2N2EgbGVnYWN5LXRydW5rCiszMjcyMyA1NjQ4OTcwYzY2NWYxN2YzOGQ4OGVlMjhiNTMyZWIzZmQ3Yzk5Y2Q0IGxlZ2FjeS10cnVuaworMzI3MjQgYjEwYTdmYWNjMWU4ODZkZTg0MjMyOWMxYmMzYTYzZmUxNGZiY2FkNyBsZWdhY3ktdHJ1bmsKKzMyNzI1IDg1ZjFhOTRhZjM3NDIyNmY0OTQ0MDk0MGU2MGY1Y2NiYjRiN2U2YTcgbGVnYWN5LXRydW5rCiszMjcyNiBjZDQ4OTAzZTQxYmVmY2RlMTYxNjY3ZjZhYjNmMTcwODNjZDZkYjU2IGxlZ2FjeS10cnVuaworMzI3MjcgYzRlOGM2NzIxZTQ1NjY1M2FkMTdjYjhhZDZiYmVkMDBkYjBlZjEyZSBsZWdhY3ktdHJ1bmsKKzMyNzI4IDk4OGIzZTgwNzA0MzZkZTIzYjU2NzY2OWNmODQ4NzA2NTJjZGNlODYgbGVnYWN5LXRydW5rCiszMjcyOSAzNWEwOWRjODA4NGM5ZDBhZWY5MjI5MTRhNTMxMTIwYmYwMzk5MzMxIGxlZ2FjeS10cnVuaworMzI3MzAgYWQ4NGZlNThlYzJmOGFkNzdiNjQ0YTkxOGM5M2E0YTk2NTJkZDljMyBsZWdhY3ktdHJ1bmsKKzMyNzMxIDc1NGM0MWJjYzgxYTJjODEzYWNlNTgwYTJlY2FlMmNlZWQ0ODg1OGIgbGVnYWN5LXRydW5rCiszMjczMiA3OGVmYmFkNTNkZDg2Yjc3YmEzOWY3OGE5NzhhZDViNTNlOTIzMDMyIGxlZ2FjeS10cnVuaworMzI3MzMgZjU3NzUxZmZkNmU3OGFiZWNjZmRhM2U2NWEwNTU4YzIwNDY0MjE1YiBsZWdhY3ktdHJ1bmsKKzMyNzM0IDQzN2JjZDUyY2MwNDVjZjYzNjYwY2JkYThmMDk1NzA2NTNiY2YzODYgbGVnYWN5LXRydW5rCiszMjczNSBmZjEzNmZlZjcyMzFjNDdmNDRmMDIxZTVkMGI2YzVlMjEzOWQ0YmJkIGxlZ2FjeS10cnVuaworMzI3MzYgNTQwYTc3MjAyOGQyNmE1MzljNGNiYzNkMGUzN2FkZGE1ZjkyMmM0YSByZWxlYXNlMjItbWFpbnQKKzMyNzM3IDcwN2U1Zjg5YzIxMWIwZDVlZjFlZmFiNmFhNWZiYmZkNjI1MjJhNDcgbGVnYWN5LXRydW5rCiszMjczOCBjZTFkN2UxMGY0OWU5ZDBjYTY2MzJhZTJmY2IyYTMwYzQ4ZjkwYjlmIGxlZ2FjeS10cnVuaworMzI3MzkgNWEwYmI2ZWFhNzc2MTg4MGE5ZDExYTQ5ODY1MTQ2YjE2YTUwOTg4YyBsZWdhY3ktdHJ1bmsKKzMyNzQwIDQzMmFkZDg0ZTA2MmRjYTk3YmNiZTcwMWI5YWU5ZTVmYWVjODFhYmMgbGVnYWN5LXRydW5rCiszMjc0MSA1MjZmMzdmYjM4MGQ4NjQ3MDRmNDVhMjhmYjBlODE2NGFjMjhlYzUxIGxlZ2FjeS10cnVuaworMzI3NDIgNGIyZTA1YzE3NTRlNmQzMzRiNzBiMjFiMTY5Mzc4NThhMTFkNGQ2NSByZWxlYXNlMjItbWFpbnQKKzMyNzQzIGE1NzFhOWQ2MjU3YTJhZDFhZDA1N2UxMzU0YmYzMWUzNjJiNmYyY2YgbGVnYWN5LXRydW5rCiszMjc0NCA1YmY5NjE4NmRiMzFjNTM5ODJlNDI4Mjk0MmE5ZTkyMWUxZDU1NjYzIGxlZ2FjeS10cnVuaworMzI3NDUgMjIwNjAwMDRiOTRhZWVmYTA4YTU5NTk2ZTExZjIwYWNkYWQxY2ExMyBsZWdhY3ktdHJ1bmsKKzMyNzQ2IDRhZTNjMmQ5ODg5MGJkODk3NDYxZGNiODdiNThmYTAwYzg2NzY5NDQgbGVnYWN5LXRydW5rCiszMjc0NyBhMWQ1NjMxOWVmMGViMzg0MDczMTNlMzQwOGIyMjhhMTY3ZTZjNDg4IGxlZ2FjeS10cnVuaworMzI3NDggMjJiODkwZDE1N2Y3ZGIxYjY2ZmMzYjViNzlmOGY3Nzc1YjNhNjAzYiBsZWdhY3ktdHJ1bmsKKzMyNzQ5IGM1ZTk2NTVlYmVkNzJiOTBlZDUyZmI3ZDRiYjY4ODI4OWMzZGM5OWUgbGVnYWN5LXRydW5rCiszMjc1MCAzY2Q1YWVjNTllZDIzZGE1ZWM2NGQ0MDE3NjE4ZmVhNzhhYjJiZTZkIGxlZ2FjeS10cnVuaworMzI3NTEgZThiNTcwOTA1MmUyNWEyZDAxMGZiZWQ1MDViMzlkYWYyZWM1MTA3ZCBsZWdhY3ktdHJ1bmsKKzMyNzUyIDI0ODA5NmE0NTczMmMxYTA1MTUzNTczMGY0NGUxMDkxNTRhODQzYmEgbGVnYWN5LXRydW5rCiszMjc1MyA1Y2U2Mjk2NDIxNTU5ZTFkNjJiMGVhYzhkYmIyYmRhOWEwNmE4NmVmIGxlZ2FjeS10cnVuaworMzI3NTQgMzRkNjNiOGMyNzViYjljMzA0MDdkNTVmZGI5YzdiOWEwM2ZlYmE2YyBsZWdhY3ktdHJ1bmsKKzMyNzU1IDMyZTcwYWQ3OWY2NmQwY2Y4N2I0OGZiMjM1NTA1YmIyMWY2NWQ3ZDUgbGVnYWN5LXRydW5rCiszMjc1NiA3YTFhZTQ3NWUwZGFkNWZmYTliOGU2ZDRmOTk0ZmFiZDY0Y2I3YjQ4IGxlZ2FjeS10cnVuaworMzI3NTcgNjRhOWUxYmUzMjUxM2Q1ODlmYTQwMThkNTQ2M2YxMTM0MTY4ODU1YiBsZWdhY3ktdHJ1bmsKKzMyNzU4IGE1ZTk5ZTdlN2ZmMDMzZGI4NWM1ZWNjYjVjYzgxMjRhMmQxMzZmNDQgbGVnYWN5LXRydW5rCiszMjc1OSAxOWM0MTQxODZiOWU1MDViMTcyNWY4MDdhMTFlMGZhYTcxNGY5MWU4IGxlZ2FjeS10cnVuaworMzI3NjAgOTFkZTNhMDkyNGEyOThhZDk1MjhiNGYzNTRhZDI4OTY4NWUwMWNmNSBsZWdhY3ktdHJ1bmsKKzMyNzYxIDkzYzkyZjIwYjZiZmI2ZGQwMjU2MzA1ZmMzMmNlODA4Nzk1MGU2NWEgbGVnYWN5LXRydW5rCiszMjc2MiBjYjAwMjU0NTE0ODJiYzM2N2JhZTNhOWUwMGU4MDhlNDE1MWY5ZjE4IGxlZ2FjeS10cnVuaworMzI3NjMgYzA2YmY2YjJiMTlkOTAyY2Y4YWI5ZWZhZWUxYzJiYWU5MWFiNzg3NyBsZWdhY3ktdHJ1bmsKKzMyNzY0IGQ2YmE4MTlhMmY5MDEzYjU4YWViODUxZmU3YzFhOTkyNGI0NGZlMGYgbGVnYWN5LXRydW5rCiszMjc2NSBmNGQ0MDZhY2YxY2EwYmQ1NGRiOGQ3OGYzYmVjY2E3NDNhOGVkNjE5IGxlZ2FjeS10cnVuaworMzI3NjYgODU0MDYwNDVmMDE0ZGQ5ZGRlMjg1ZTU4NzIyYzIzNjg3ZmE0MDdkOSBsZWdhY3ktdHJ1bmsKKzMyNzY3IDUyMzcyZGMxOTBmY2ZiZmEwNzVlNzU0NTJjYWMzYzBlNjU4ODhjNmMgbGVnYWN5LXRydW5rCiszMjc2OCA0YjAyMjAyNjBmNjJlMWY0YjY0OTQwYTljZWU1YzI4NjQ1MTk0NGZmIGxlZ2FjeS10cnVuaworMzI3NjkgNGY4N2E4NGU5YmViYjI5ZmIwZGQ4NzZmZDc5YzU0YmMwMDNlMDdjYyBsZWdhY3ktdHJ1bmsKKzMyNzcwIDI0Nzg2YzMxMzBjYTg3NmRjNGE1OWNlZGNhODk2OTgzZjU5ODVhYjcgbGVnYWN5LXRydW5rCiszMjc3MSA2YWMwYTY3MmIwODIxM2ZlZTcwODU4OTc0MGI2MThmZmZlOTQxZDg2IGxlZ2FjeS10cnVuaworMzI3NzIgZDdhYzFhNjQwZDhmOWMwMGNhNjIyMjRkZmJlYTg2MzVjYzAxN2VlOCBsZWdhY3ktdHJ1bmsKKzMyNzczIDc4NzVmY2FhZTdhMzcxMmYxZTRiZmY4ZTM3OGViZGY3MWYxOGI5Y2UgbGVnYWN5LXRydW5rCiszMjc3NCBhZGRkNDM3YmU3NDkyMTYyN2RjYTk4OTM2NWE2NzIzNjMxNjAxOThjIGxlZ2FjeS10cnVuaworMzI3NzUgMjlmMTk0NjBmMDY3ODU1YzZkYWQ3NGE1MmU4MGQ5Mjg0OWVmMDhkNiBsZWdhY3ktdHJ1bmsKKzMyNzc2IGM3ZGZkYTk5M2IyZmFlZGEzMmMwNzllYjE2OTJlYWM0NGI3NDllNWUgbGVnYWN5LXRydW5rCiszMjc3NyBjZmY2YjhmNDIyZDE3YTY2MGNhMjE3NWQxNzFkYjhhOTJmYzkxOWI5IGxlZ2FjeS10cnVuaworMzI3NzggN2Y1OWRjZThmOGMwZDQyNDkxMzFhMDI4ZGI5N2RiZjI0MzRiY2ZlNCBsZWdhY3ktdHJ1bmsKKzMyNzc5IDkyZTUzYzhlN2E3MjQzYjIxNDNmYTg3YWNkZWUzMTcwYmEzYWFjNzkgbGVnYWN5LXRydW5rCiszMjc4MCA2ZDkzMzMwNzc2MWMwMTU1OWY5YzBhNDIwYjZiOGEwNmUxZDIxODdmIGxlZ2FjeS10cnVuaworMzI3ODEgZTY2OTFjZTkxYjlmZDllNTk4OTdmNGRlZDI1YWYxYzA0ZGQwMDYwNSByZWxlYXNlMjItbWFpbnQKKzMyNzgyIDUyYWViYzE0MDA2ODdkMzQ2NjhhZmZlOWM0NzY1ODk1ZDg4MjYxNGMgbGVnYWN5LXRydW5rCiszMjc4MyBjZjMzODYzM2IwNzQ2YzBhZWJjZmEwMTU2YjBhNzg3ZDA5OTYxYTgzIGxlZ2FjeS10cnVuaworMzI3ODQgNGNiZjc3ZWRlZWQ1Mjc5MmIxMTczMzFiMzNkMDVmNGRjMDU1ZjhkNCBsZWdhY3ktdHJ1bmsKKzMyNzg1IDk4NzZiMThlZGNhYjQwNjA4YWFhZTY3YjNjMjQzOTVkZGE5YzVmNzggbGVnYWN5LXRydW5rCiszMjc4NiA2NmFhMTA1YzhkMTc5OGIxOTdiM2M3NjIyZDZhOWFjOWU3ZDJiZTI0IGxlZ2FjeS10cnVuaworMzI3ODcgNjBlNzNjNTA1Y2YyYzFjMjliNjE3ZTU2YzJlMTg0Zjc5NjdkMDExNyBsZWdhY3ktdHJ1bmsKKzMyNzg4IDUzZGQ4YzQyNjNmZDMxZGZhOTllMmU2YTU1MWQ3NTk4MTI1NDBkYmIgbGVnYWN5LXRydW5rCiszMjc4OSAyYzM1OTJkMTJkNjk0ZTNhYjgzNTE5NmEyMTVkMjEyMWVkMzMyNmJkIGxlZ2FjeS10cnVuaworMzI3OTAgYzFlODNiOGQ1YjcwZmVkZTUyYjU3MzIxYjk5ODMyZGY5NjU1YWZkOSBsZWdhY3ktdHJ1bmsKKzMyNzkxIGU5ZjlhMTk2ZmRlZmU0ZjcyZTg3NjBiYWIwNDE5NjBmNDYyNDdkZTYgcmVsZWFzZTIyLW1haW50CiszMjc5MiBjMzEwZjlkZGZkY2JkYjFhN2I1NTNiMWYyODA5M2U1YzI5YTM5NDM4IGxlZ2FjeS10cnVuaworMzI3OTMgYWUwNGE3M2JmOGZjMWJlNzEzMDU5NzAwYzAxNGYxZDg2MDY4YmUxMSBsZWdhY3ktdHJ1bmsKKzMyNzk0IGU1N2UyMmFhNTZhNDg2NzcwMzVkNGMwNTgyMjQ1YjRhMzRhZDg2YTEgbGVnYWN5LXRydW5rCiszMjc5NSBmOTM1MTJmMWUyMGZmMTZlNTVjNDM4YmE1OTBjNmEzOGY4YjI0OTlkIGxlZ2FjeS10cnVuaworMzI3OTYgNWRhMTk4NDgwYjZhNzZmZTM4YTFhNjZhNjFhM2QwMjc5NWRlYmJlNSBsZWdhY3ktdHJ1bmsKKzMyNzk3IDQzMzJmMjA1MzNmY2RmM2VhOTRmMjYwYzdiM2M4MDA0Mzc5YWNkYTIgbGVnYWN5LXRydW5rCiszMjc5OCA2OTMxNTVjZGFlMDNmODIxMGI0OTg1ZDg5M2E0NzEyMDVkODA5YTU0IHJlbGVhc2UyMi1tYWludAorMzI3OTkgZTZlMTAwZWZiYzdkMzFlYTQxYTQxYjQwN2JiZmRhMTNmMWNmNmI2YyBsZWdhY3ktdHJ1bmsKKzMyODAwIDJiZjI4OTA0YThlY2FhNTMwYTE1NzMyYzJmMTMyZDM5NmY0MzZhYmMgbGVnYWN5LXRydW5rCiszMjgwMSBiNjE5MWNhOGVkODA3MTU5MmJiYzhlMzJlMDQxZDc3MWJmMmJlZTIzIGxlZ2FjeS10cnVuaworMzI4MDIgYmM1MjE2ODk2M2IzMjFkMGNlOGFiZTEzNTViNzllMDU1ZTY0ZThmZiBsZWdhY3ktdHJ1bmsKKzMyODAzIGVmM2VmODhlMzYxNGY2YTEyNzBiYzNjMDg0OTI3NmQ3ZGQxZGJlMGMgbGVnYWN5LXRydW5rCiszMjgwNCA2YzMwYmIzZTMzMjU3N2M0M2U4NWRhYzVkYmUxNjY2NDZmMDM4MjE3IHJlbGVhc2UyMi1tYWludAorMzI4MDUgOGJlOWEzMTZlYjlkZTE2NWM1NDI4ZjdjMWFhZDY1NjkyNzk5OGM5NiBsZWdhY3ktdHJ1bmsKKzMyODA2IDI5ODJlNjE4MjU2NjFlZjFiOWI5NmMxMGI5MmNhMWRhNmY1MGQwZWYgbGVnYWN5LXRydW5rCiszMjgwNyAxNjcyMWQ3M2FkMjkzYmQ5MjcxZmU2YmE2ODYxNTcwMjExNmE1NWE5IGxlZ2FjeS10cnVuaworMzI4MDggNWU2ZDBkY2YxNTVmODczNGU4ZTBmMjRhMjdlYTYxMjEzMmJlNGU0ZiBsZWdhY3ktdHJ1bmsKKzMyODA5IDQ2ZmMzZjhlOWVlZTMzOWM1ZmM4MjM3M2YwMmZmNTkxN2MyMDBjZDMgbGVnYWN5LXRydW5rCiszMjgxMCA5ZDhkZTU2NWU1ZGVhY2RjN2M1MzU5YWVlOTEyYzkwYjQyYjdjMWExIGxlZ2FjeS10cnVuaworMzI4MTEgN2YwMDc0ZWU4YWI5OTUzMjk3ODE3OTJmOWNmNDkzMjhjZjQyYWYwMSBsZWdhY3ktdHJ1bmsKKzMyODEyIDAwMWQzYzdlOTYzNzBjNjVjYTgzZGRhYTdjZjAxYWFmYWNiM2Q1YTQgbGVnYWN5LXRydW5rCiszMjgxMyA1MzJkZTE5MzMyYTQ3OTMxMDc3OWIzOTg4ZmI5ZjVlNDlkZjBjMDk5IGxlZ2FjeS10cnVuaworMzI4MTQgNGMxZDFiMzU5ZjA2NjljOGE1ZmM1MTgwYmQ5MjEwZDQ0MTA3ZWIzYSBsZWdhY3ktdHJ1bmsKKzMyODE1IDFkNGVjNTJiMzE2YzBiODBkMmE3MjVmYTNmOGUwZWFmNjhhMmI2NTMgbGVnYWN5LXRydW5rCiszMjgxNiAzODRiZGEzNDM3MjVhMGRlZDBkY2RmMjgwMTdkNDZkYWNmOGNmZWI0IGxlZ2FjeS10cnVuaworMzI4MTcgMmJiNWNlZWY5YWMzYzJkMjIxNDdmYmJiMDdiYjFjNjg0MmE2YzA5ZiBsZWdhY3ktdHJ1bmsKKzMyODE4IDRkOTAxN2VmN2I1ZjMxMTA4OTljOWQ0NGEzYjRmMTYzZjEwNmRlNzIgbGVnYWN5LXRydW5rCiszMjgxOSAzZjlhYTZmMWFlZjA4YzRkMjJlNjIxODJmNjU5OTg4ODljN2U2ZjRmIGxlZ2FjeS10cnVuaworMzI4MjAgODliNGU4ZTJjMjMwY2JlODVmMDY0NDFkNGJkMGE2YjA3ZDQ1MWNmMyByZWxlYXNlMjItbWFpbnQKKzMyODIxIDY0M2YzYWM0MzBiZTg3ZGM0ZTEwYjk0NDczOThmYWMzNmExNTY1ODMgcmVsZWFzZTIyLW1haW50CiszMjgyMiA2NTQ1ZTc0OTg2MzVlYzIxOWRiMGIwZjY4ZTA3YWZjNmRhMmU1ODFkIGxlZ2FjeS10cnVuaworMzI4MjMgNDM0ZWYxNzRmNDc4NjIzODI5YjY5OTNhMDU3YTg3NzUwMTA0NDI3MCBsZWdhY3ktdHJ1bmsKKzMyODI0IGYwYjY3NzMxZTU0NWI1Yjk0NDczYzRhZDM3YzNiMmQyNGJhMTgwYzcgbGVnYWN5LXRydW5rCiszMjgyNSA5Y2YwOWY5MmIxOThiZWRjZWY4NDI3YWEwOGZjN2M3MTEwMDNkZjMzIGxlZ2FjeS10cnVuaworMzI4MjYgOWFlMTdiMzc3OWJiYjAyZDBmMjRhOWI0YjkzZjJmYmUwYzQyMTM0YSBsZWdhY3ktdHJ1bmsKKzMyODI3IDQyMWZmZDdjNTdhZmVlYTczODAyM2FkYzE1MmFlMTI4ZmMyNzI3MDAgbGVnYWN5LXRydW5rCiszMjgyOCBlZmU1ZGQ2MGNlZTg4YWJmN2NmNTg2ZGNhMmI0MWVhMDhkOWEyMGU5IHJlbGVhc2UyMi1tYWludAorMzI4MjkgNDVmN2RlN2YxMDUyYzhiMDFjZjZhZGNlMzQwMjAyZDg2MWY3MzYwYyByZWxlYXNlMjItbWFpbnQKKzMyODMwIDU3MGE3YjhhYTE1NDIxNjU2NWM3MmVmMzU3OWI1MTgyNmM2NGExYWMgcmVsZWFzZTIyLW1haW50CiszMjgzMSA0ZjUzMWNkZjI0MmU4YWMyZjkxZWNiOWU3M2RhZjA4MzQzNmFkYzUyIGxlZ2FjeS10cnVuaworMzI4MzIgMWRjN2MwYTAyMGQzZDdlMzViNzJhMTFiMDQ4ZWRmYTQ3NDg3NGJmZCBsZWdhY3ktdHJ1bmsKKzMyODMzIDZlOTVhZGQ5MmM5OWJhYjhmM2MwZmQ3MjExODc0MGQwMmJlNzNjMWEgbGVnYWN5LXRydW5rCiszMjgzNCA0NjMwMGI5YWYwMmI5NGRhZGNlNTIxNGJkOWU2ZDI3YWQ0ZDJmNmY4IGxlZ2FjeS10cnVuaworMzI4MzUgZjQ3NWJlYzMxNjk1NTE0NDVjN2ViNWQ4ZTQwOTY0M2JiZWIwMzlkNSByZWxlYXNlMjItbWFpbnQKKzMyODM2IDA1NGQ5YmMwZDg2MDhhYjczNDRkMDZhZDYwMWFkNzE2YzBkYTk1ZTggcmVsZWFzZTIyLW1haW50CiszMjgzNyBmMzljMjcxYTlhOGU2YzIyOGE0MTA5NDA0MmQ0NGM0ZGJiMWFkZWI4IGxlZ2FjeS10cnVuaworMzI4MzggOWFhMDZjYmQ5Y2MxYTMwN2M0YzljOTJkYzlmMzAxNjhjNjU2NTdkYyBsZWdhY3ktdHJ1bmsKKzMyODM5IGM3ZjZmNzM3NDNiMDhiNDhiMzNmYTQ3YzRhODc5ZGFiMDI3NTlhY2QgcmVsZWFzZTIyLW1haW50CiszMjg0MCAyYWFhMzllZGM1MTFlN2QzMDBiYTIxMzQ2Mzc3ZGMxODhkM2UxN2JmIGxlZ2FjeS10cnVuaworMzI4NDEgODk2YmJkMDgwNmU4ZjNmMjBiYmQ1NzgxYjcyZmYyYWZmMzlkYTIzYyBsZWdhY3ktdHJ1bmsKKzMyODQyIGJlZTNkMWExYjlhOWEzY2IxNTViNzY2MTU4MjhjYjUxZTY4YmY4MjMgbGVnYWN5LXRydW5rCiszMjg0MyA0YjFjMTUwZDA3ZDhjNWIwNDFiYjM1ZDVhZGI3MTAzYWY4YTQ2YzExIGxlZ2FjeS10cnVuaworMzI4NDQgMjI3YzY2NDZjYzZiYjViMWEyYjRiZWIxNWIxZWI4ZDZiMWU3YmUzMyBsZWdhY3ktdHJ1bmsKKzMyODQ1IDEyOTdkNDA1MTU1YmQzNmQxNTdlNmExZGNjYTdiOTcxMTkzZGU1ZjIgbGVnYWN5LXRydW5rCiszMjg0NiA5YjI0MjUwNmQ2ZGM3ZDQ3ZjNkYjhkNjc1YmU3MzI3NjM0MzJkZDlhIGxlZ2FjeS10cnVuaworMzI4NDcgZDY2NWM2Yjk4Y2QyNDFiYTY3ZGFhYTYyYWZhNWI1MzdkNzU5MTczOSByZWxlYXNlMjItbWFpbnQKKzMyODQ4IDgxMjk2YTgwYTE1ZjJlMjA1YjdjOWQzN2I3YjRlMGUzNDM3MTUwOTcgcmVsZWFzZTIyLW1haW50CiszMjg0OSA2ZDZiZGEyNTQ5YjZiZDQ2MGQ1YjM0ZjBlNGVmYjI1Yjg5NDY5MDAyIHJlbGVhc2UyMi1tYWludAorMzI4NTAgYTkyMTBiZWMzYjVhZjkyNzQ5MTY2NzI0ZmNjMTMwODkzYWNiZjQ1OCByZWxlYXNlMjItbWFpbnQKKzMyODUxIDBhOTdhZGM2YTQ3ZWIyNDVjYzlhN2VjMjJiNGUyOTQ3NzNmYWZhMzIgcmVsZWFzZTIyLW1haW50CiszMjg1MiBiOTc2MmYwMDNmMzA4ZDE3NTI3MzFhZTNmYmJlZjMwZjFjZjFmOTdmIGxlZ2FjeS10cnVuaworMzI4NTMgY2QxYzgyNmM5OGEyYmZiY2U0YWFlZGI1YjFmMDA5Y2IzYmRiMDc1ZCBsZWdhY3ktdHJ1bmsKKzMyODU0IDM2MWZhZDYzMzMyZGQyNDkwNWQyMjgzOWYwZmI2NjJjZGRkZDlmNjkgcmVsZWFzZTIyLW1haW50CiszMjg1NSA3NTRmZDM0YWQ5Nzg0ZTJjNzdlNzE2NzliNWM0NjZmZTNmOTIwYTZjIGxlZ2FjeS10cnVuaworMzI4NTYgZjZlOTFjYTU2YTQ5OGM3ZjYwYjU5ZmQ3ODIwYzIxY2RjYjg4MTcxYiBsZWdhY3ktdHJ1bmsKKzMyODU3IDMxNWE3NDcyNzdiZmU3NmQ1ODM5NTM3OGU5ZTEwNGI1OWFhMGI0NzYgbGVnYWN5LXRydW5rCiszMjg1OCBiMWY2NDM2OTBhODg3Y2UyMWVkZTY4YjJmMmU5YzE3NGJiYWZmMTU2IGxlZ2FjeS10cnVuaworMzI4NTkgNTZmZmNhMDJjODI0M2IzNTFmZTc0MjQzMmYxOTVkNjhmZWU2NzM5NiBsZWdhY3ktdHJ1bmsKKzMyODYwIGU3MDk0MzkzMzczOWVmY2E2OTA2NGUxZWQyYjAwODI1MGQ5ZmI0NmIgcmVsZWFzZTIyLW1haW50CiszMjg2MSA1ZWNjNDhhZDY2MzQwMDBlN2VkNjNjNDA1YjFmNWI2ZmMwMzYzZTYxIHJlbGVhc2UyMi1tYWludAorMzI4NjIgZmY5YmEzZDFlMjgwY2M2MjE3M2M0OGFlMmU2YmJlZGM0MWFkZDY3NiBsZWdhY3ktdHJ1bmsKKzMyODYzIGRhMmM1ZDlkZDYwZTA3ZTMzMzQzODI4MzJlYTc3MWM2MjE4MGMwZDEgcmVsZWFzZTIyLW1haW50CiszMjg2NCAzNWIyNzY5YjAyYjYzNDA5OTg2NTIxNzIyMTQ5YmIwMjQ5M2M5ODRmIHJlbGVhc2UyMi1tYWludAorMzI4NjUgZTVhZmYwNjAzN2I3OTRlNmVlYTg2N2IxYWQzZWQxNzhkOTU5YzA2NSByZWxlYXNlMjItbWFpbnQKKzMyODY2IGQ5Y2Y1MzZjNTM0MGNlZGRlN2Y1N2U3ZmVmNDJhZGFlY2VhZjI1ODkgbGVnYWN5LXRydW5rCiszMjg2NyA1ODRkYzQ2Y2EwNjZkYTAzODNjMmRkZTY0ODgwZTIwMTgwNThhOGJmIGxlZ2FjeS10cnVuaworMzI4NjggNjQ2MjIxNmZlM2E4N2FiYzBhZDU5NTE5NmFlMmJjOTNkZTE2ODM2ZSByZWxlYXNlMjItbWFpbnQKKzMyODY5IDRiYWM0ZDBkM2UzZWQxYjI4ODc3Yjc5NTM2Y2MwZjUzYzdkYmY4Y2QgcmVsZWFzZTIyLW1haW50CiszMjg3MCA2OTk3NDY2MzMyNDZjNzI5NmU1MjJkNmVkYzA0NDMyZmI3ZTNjMjY1IGxlZ2FjeS10cnVuaworMzI4NzEgZjA1YmFlNDEyYjcxYjI0NTcwN2YwMzcxMjFlMWE3MWM5YTFjNjJhNyByZWxlYXNlMjItbWFpbnQKKzMyODcyIDk4NTY3MDY1MDY0YjdiYjU5N2IyMzEwOGQwOGMyMGM2NmZlNmUyNDkgcmVsZWFzZTIyLW1haW50CiszMjg3MyAwNTIzZjA5YmIzNDg2NzU2YjdlZTllMzIwYjQ4MjE1NjU2NjliZWVjIGxlZ2FjeS10cnVuaworMzI4NzQgODU2MGIxNDZmNDFmMWQwN2MyNjcyNDIzNDk5MWI2NTUyMGYxODc5YSByZWxlYXNlMjItbWFpbnQKKzMyODc1IGYxNTYyNmM3NjQxODY3MzllNzE0ZGI5ZDExYWY2MmVkMzFkOTY4OTkgbGVnYWN5LXRydW5rCiszMjg3NiAyN2VjMTQ3MWRjYjZhOTJmMmExMTkxMTVhNTg2MDY1ZmFjNjM2ZjJjIHJlbGVhc2UyMi1tYWludAorMzI4NzcgZWEyOTU4YmQ0MjcxZmYxNjYzNjJmZWE5ZDVmOGQ2MGM3MzVhYTgwMSBsZWdhY3ktdHJ1bmsKKzMyODc4IDg1OGQ1NjhlYmY3NjMxMTA3YTFlZDE4YjQwYjNiMTBiZmE1YmUxZGEgbGVnYWN5LXRydW5rCiszMjg3OSBmM2YzMDY0NTdiNDMwZWExOWQ3ZGU3OTQ2YjdiN2JiODUxNDUwZjA5IGxlZ2FjeS10cnVuaworMzI4ODAgM2FhZjI0Yjk0OWRmYjYyMDkxNWM2OTA1M2M4ZDY3Y2M3ZGM1MTM1OCByZWxlYXNlMjItbWFpbnQKKzMyODgxIDA1MmM2MjYzZGYyNjlhMjY0YzIxODRmZDgzOGNiNmRhNDNlMjYzOTEgbGVnYWN5LXRydW5rCiszMjg4MiAxMDhhMTAwNmE5MDUzYTRmYzM2YzExMjA1YmU2ODE1MzYxNzA1ZGFjIHJlbGVhc2UyMi1tYWludAorMzI4ODMgZjdkZmFlYWE0YWI5ODhhNTQ2YWVlMmE4ZGIxYWZlZWIzN2Y5NjdkMCByZWxlYXNlMjItbWFpbnQKKzMyODg0IGJkODIxNjFiNjFlNTU2OTQ2YjI0OGEyMDkzNmNhNzU5YzZjZTZlNzEgbGVnYWN5LXRydW5rCiszMjg4NSA2N2Q1NjBkNjA4Y2VkNzZhZmUxZTFiNDU3MmRiZTIzNmQ5NmE2YTJkIHJlbGVhc2UyMi1tYWludAorMzI4ODYgODU2YzgxZjcxMjEzZGEyM2U5NjA0ZmJjOGVmOWZhZTkxZDliNzAyMCByZWxlYXNlMjItbWFpbnQKKzMyODg3IGVhZjkwZTg1MGQxMmU5ZmYxMDdiNWZiMmQ0NTQzNGY3OWY3ZmJlMjAgcmVsZWFzZTIyLW1haW50CiszMjg4OCAzNzdhMjlmNmQ2ODc5M2Q2ODdiMTk3ZWY3ZTMyYmQxODM2NDcwMjNmIHJlbGVhc2UyMi1tYWludAorMzI4ODkgZjNkMWVkMTQxMTg4MmQ1OGUxYzk5MjkxNTcyMDA5NTg3NjgxNmFkMSByZWxlYXNlMjItbWFpbnQKKzMyODg5IGFjNzdiOTEzNDI1MzRkMDliMWU0MzJlMWRjM2I3MGRiYmVjM2E5MTkgcmVsZWFzZTIyLW1haW50CiszMjg5MSAwNjg1MjlhOTA5OTI2ZDRmNjAzY2YwYjZkNmEwZDRhMzM0NGFkZGZmIGxlZ2FjeS10cnVuaworMzI4OTIgNzUyZmM1ZWExNmI5YmQxM2ZiMTY0MDFkMjYyMGFmNTU5OTA5MzViYyBsZWdhY3ktdHJ1bmsKKzMyODkzIDM1ZDcwMGQ5MDE1ZTA1ODg4Y2IwY2Q5YjY3NmI4NGFiYjZlNWY2ZjkgbGVnYWN5LXRydW5rCiszMjg5NCBlNzIxMDI1Y2NhMDkzOWZhNjVlMmMzNmRjMjY0MDRmZjQwZGZlNjlmIGxlZ2FjeS10cnVuaworMzI4OTUgMzg3ZDdjMjIxNmExNjliNmM2NmQ4NGY4ZTQxYjIzNDhjZmE2MzBjYSByZWxlYXNlMjItbWFpbnQKKzMyODk2IGQ3MmFkMDdjNzM5ZWEyYzhlMzU2MDFmOTc2MmY5MzJjNWU5NzY1MmIgbGVnYWN5LXRydW5rCiszMjg5NyA2NDIyN2Y4ZGU3ZGFjMTA1ODQwNDQ1NmNkZmU0Y2UxMTNmNDUxNmYyIGxlZ2FjeS10cnVuaworMzI4OTggMjNhZDhiNWQ3YjRhMGVmMzY4OTc0ZDMwNmUxNmU5ZTRmMDViNDhkNiBsZWdhY3ktdHJ1bmsKKzMyODk5IGNhMGM4MTM3ZGU4NDQ1NWVhZmUxOTI0ODUzMjE2NjdkNzFiMGNkZGEgbGVnYWN5LXRydW5rCiszMjkwMCAzOWI4NzE2Nzg0Njc1M2QyMjU1MDMxMGU4ZTViOTg3ZGRlMjZjMDA2IGxlZ2FjeS10cnVuaworMzI5MDEgMWMzMmQ0MjA3NDA0YTg2NDQ1ZjE5MGUwNDRmMTcxYjc1OWY1NmI4NSByZWxlYXNlMjItbWFpbnQKKzMyOTAyIDJmNDI4NzVkOTM3ZjI0ZDU0ZDc5OWFmNzczMjlkMzE3ZTFhY2RjY2QgbGVnYWN5LXRydW5rCiszMjkwMyA4OTNhZTUyNjY3NzY1M2YzMGEzNWVkYWViNTczNDQ1OGJlMDE1MzhjIGxlZ2FjeS10cnVuaworMzI5MDQgMzQ2MDlmYTM1YjExYzE3ZmI1M2E1MzQ5ZjIyMGUwNDA5ZmJmNzg5OCBsZWdhY3ktdHJ1bmsKKzMyOTA1IDNhOGIxZDE2YjdjNmNkY2RiNTUyYWQxNGRjZmVhYzcwODY1ZWIzZjEgbGVnYWN5LXRydW5rCiszMjkwNiAwYjc2Njc5YmYzZjk4Yjc3NDFjZmE4ZTg2NTJkNjk1NzU2NjM0MmY4IGxlZ2FjeS10cnVuaworMzI5MDcgYjRjOTJlOTgwM2E2MjEyMzRkYjZlYjQ5YzZmMjRkYzczZjZiMjA2YSBsZWdhY3ktdHJ1bmsKKzMyOTA4IGJlNzBiODQ3N2Y0M2QwOGE2ODI3OTgxOGFmOGEwYjY4ZjRmZTZlZTYgbGVnYWN5LXRydW5rCiszMjkwOSAzNjg5YjAwNTVjMmRiMjI5NmE5ZTlhOTk3YWMyYTUwNTE5MmRjZmYzIGxlZ2FjeS10cnVuaworMzI5MTAgYjkwOWZkZjBlZGY4ZGRlMGM2NzgyODU3NzA5YTJjMDMyN2YxZDVlYSBsZWdhY3ktdHJ1bmsKKzMyOTExIGRlYTM4MTE2YzM3MzUyNmRjNDY2ZTFjNzI5ODYxNTA3MWRiN2NhNjYgbGVnYWN5LXRydW5rCiszMjkxMiAxOGMwMjA0NjM5NjVkMDI5ZGY3YzEwM2ZlMzBkNGM4ZGY0OWQ2OTc2IGxlZ2FjeS10cnVuaworMzI5MTMgZjFlNTY3NDg1MTk0NDhiYzljMDRjMjAyYTRmM2JjZjY2MjljZmFjZiBsZWdhY3ktdHJ1bmsKKzMyOTE0IDE2MWYwNWY0NjgwZDlkM2Q4Mjc3NWZjOWM5MWExMmYwNDY3ZThmNjcgbGVnYWN5LXRydW5rCiszMjkxNSAzNGY0MmUzNDUwYjRkNjJjMzk1MmU5NjhlZWZiODhmYWU5MmIyYjZiIGxlZ2FjeS10cnVuaworMzI5MTYgN2VhNTUwZWNmNDNkNzRlZDQzM2I1Mjk4ZGFkNTJiY2MwMmZkNWI1YiBsZWdhY3ktdHJ1bmsKKzMyOTE3IDQ1YzZiZTM1NzMzZmRkNmFmOGJjYWQ1Yzc2OTllNzBhMTM4YWE3YmMgbGVnYWN5LXRydW5rCiszMjkxOCBhOWQ3NzhiZDk2NTM2ODgzM2YyOTdjZGNmZDhhYWM2OWYxMDdjNjQ5IGxlZ2FjeS10cnVuaworMzI5MTkgNzRkYTRkMmVhYWQzNjc5YmVlNzVhNDc2NWIxNDAwMGIxMTI5ZGVmZCBsZWdhY3ktdHJ1bmsKKzMyOTIwIGQyM2U5MzIwZDM1MDAyZDY4YTk4NWFmMTEzMjE4MDBlNDUxNWI0ODYgbGVnYWN5LXRydW5rCiszMjkyMSAzYzRkOTVhNGNlMTc3ZTdiYmQ5ZDgwMDZkODU3NTdhNjNkN2VlMDRmIGxlZ2FjeS10cnVuaworMzI5MjIgNzg4N2ZlM2E5YThmZjZhOWE3YWQ4MjE5NDBmNTZmNTY1ZTNiZDY0OCBsZWdhY3ktdHJ1bmsKKzMyOTIzIGM1NjMzOGUwODdjYWNhZjhjMDQxZjZiZDBiMDFlMmEyMGUzNTQ0MTEgbGVnYWN5LXRydW5rCiszMjkyNCAwODYzMDkxOWJmNTJiMmVjOTM0YzEwOTZlZTExODRiNmIxYjQwOTdiIGxlZ2FjeS10cnVuaworMzI5MjUgOGY3M2RmMDk5OTY3MzQwMmEzYmMwMGMxZThlYjg2MzdkNmMwZmQ1ZCBsZWdhY3ktdHJ1bmsKKzMyOTI2IGI3Y2QxZmYwMDE5YjlhZGVkYzMyOTZhMjY1ODhmM2U2MzJlOWY0NjYgbGVnYWN5LXRydW5rCiszMjkyNyA4OTc4MTIzMThmZjQxZDQ5NzAyZDg1NzhjMDA4ODdkMmQ3MzdkMzAzIGxlZ2FjeS10cnVuaworMzI5MjggZGY4MGE1YjY5NTdiNWVlNWE3MjYzY2JjZjY4YjM0MTIyNzIyYTEyMyBsZWdhY3ktdHJ1bmsKKzMyOTI5IGEwNDNhZjYwOGU5NGNjNzMxMTI3OTg1OTVhM2EzOWNmY2Y4MDE5MmQgbGVnYWN5LXRydW5rCiszMjkzMCBmZWM3ZjMzYjY5N2MxODVhNjhlODQyMWNmYjJmN2I1YjVlYTgzMWZmIGxlZ2FjeS10cnVuaworMzI5MzEgNjY3MzA1M2VkYWQzZjNkOThlYjMxMjkwYTA4NDNiYTQwY2Y2OTgwYSByZWxlYXNlMjItbWFpbnQKKzMyOTMyIGNmYmE3NmY3NzY0MzU4ZmYyNDkxZDUxMzU1NzJiZDUwZDNiNGIzNWMgbGVnYWN5LXRydW5rCiszMjkzMyBiMzcyYjkwM2QxMGU3YWRkMzI5M2E5NzdjMGU5MTg3MzU0ODRkZjNhIGxlZ2FjeS10cnVuaworMzI5MzQgOGYyYzVjZjYxNzYzOTA2YzMyZmM4ZDY4ZGVlYTZiZDcwZDUxOWJkYSBsZWdhY3ktdHJ1bmsKKzMyOTM1IDQ5OTJjNjBkNDIyYjI4ZDFmZWI2YjMzYWJiOGY1YWNkMTY2NTU0YTUgbGVnYWN5LXRydW5rCiszMjkzNiBjMzI1ZThmMjBkNmU5NDA5NWYzMGUwN2E1MDgwZWE1MjMxNGJjN2M5IGxlZ2FjeS10cnVuaworMzI5MzcgN2YxMzBhNDM3MGM5ZTM0YzY1ZmU5ZTE2YWVkM2VmZmQxYThjOWQxYSBsZWdhY3ktdHJ1bmsKKzMyOTM4IDhlZWIxZGY2OWYzNTc1MTc0M2FlMDdhMTRlODcwNjgyOTY0ODBkNjcgbGVnYWN5LXRydW5rCiszMjkzOSA5NDlmNDE4MjlmMzZmNGY3ZDNmYWY3ZDk0YzUzMjZmYTQ4ODgyNDIyIGxlZ2FjeS10cnVuaworMzI5NDAgYTVjOGVjYTU0YWViMDFmMzMwNmU5YmRlZDgyMTc1ZmE1ODI3ZDhiZCBsZWdhY3ktdHJ1bmsKKzMyOTQxIGRlNDFmM2NkNjQ3NDQ1MjE0ZmNmM2ZiYjc5OTJjMzFiOTZmYTM4ZDMgbGVnYWN5LXRydW5rCiszMjk0MiAwNDM3Y2Y0YjllZWMxZTJmMDIzMzQyYzlhZTZlN2IzY2I0ZWQxYTdlIGxlZ2FjeS10cnVuaworMzI5NDMgODExYWQ1ZjJmNzAxNGMxMWZlY2E1N2IyYzk3MzkwNWMyN2RiYzc0MCBsZWdhY3ktdHJ1bmsKKzMyOTQ0IGI1YmFkZDNhOGQ0ZjM5MThmYzhhYzVlMDMwNjg5NTJmOGJhNzk4N2IgbGVnYWN5LXRydW5rCiszMjk0NSA3MDYyNmM1NzNlZDcxZGQ5YjZjMWNlMjVkZjdmNDQ1ZmUzMGQxNTE4IGxlZ2FjeS10cnVuaworMzI5NDYgMjE0NTFmNzYwNTk2MzFjY2E5NWYyZTVmN2FkOWQ5YTdiODU4NzIzZCBsZWdhY3ktdHJ1bmsKKzMyOTQ3IGU4YzRjMTVmNDU5ZTM1ZWMwYzg4YzU1YjY1MmY0Y2U3MTQzMmRhMjkgbGVnYWN5LXRydW5rCiszMjk0OCBiZDM0OTk5OWNiMDgyODg5OGQ4MGViMWRjYjVkZGVlYjhhMGQ2MjVkIHJlbGVhc2UyMi1tYWludAorMzI5NDkgZDQ2NDU5ZDgyYTc5Mjc4ZTU5Mzg0NmFmOTIyMDY3ZDJjZjFlNzI2NiBsZWdhY3ktdHJ1bmsKKzMyOTUwIDdmN2EwNzgwNDZmYjVjMTBiZjMxNzcyNzUzNDc0OTA0NzJkMTYzYjUgbGVnYWN5LXRydW5rCiszMjk1MSBjMWU4MGYyZjFjNDcxYTIzY2Q3NjZiNjE2M2U3NzkzZmM1ODYyZTNjIGxlZ2FjeS10cnVuaworMzI5NTIgYjU0NzhkMWRkNjdlZGQ5ZDY2ZThhZDBlOWQ5ZjY0Y2JkYzJiNzAyZSBsZWdhY3ktdHJ1bmsKKzMyOTUzIDBiZWIxYTY1MTQ0MzU4MDJkMDMxMzRjYTA3YjUwYWIwOTMyNzA1N2UgbGVnYWN5LXRydW5rCiszMjk1NCA3MzI4MzY2NjYwMDAzMjNmZWY1MjM3NzUyMWE2NmRlMTY5MjViYjE0IGxlZ2FjeS10cnVuaworMzI5NTUgOThhZmZkYmM0MTZjNDEwOTk0ZDU1OGQ1MDY2NzcxYjdlNWMwZDVjMyBsZWdhY3ktdHJ1bmsKKzMyOTU2IDA4YTFjYmRkMDM2N2ZkMDFiMjczOGNlM2VjNWJlNWEwNzY4ODcyZjEgbGVnYWN5LXRydW5rCiszMjk1NyBlM2FlZmViYTQxMTYwOWEyMmM3NWY5MzcwMTVhNGIxZWFjYzhlZWNjIGxlZ2FjeS10cnVuaworMzI5NTggOThkODE1OTllY2E3NGVjMzNlYmZkYWJmZWQ5N2UzMGVmYjI4NzQxNSBsZWdhY3ktdHJ1bmsKKzMyOTU5IGMzYTAyMDc0Y2JlZTliNmFlODM4Nzk4MDYyOTViMDg2MDc3ZjdiY2EgcmVsZWFzZTIyLW1haW50CiszMjk2MCBlNmY4ZTI2ODdjNmZkNTc1MjRlYTZkNWQ4YmE2OWMxMTUzMjkzYTIwIGxlZ2FjeS10cnVuaworMzI5NjEgNjQ2OGYwZTFmNGE4NWJiZWRiZjRjNTM5NTJjYmZlN2IyYWViMWZmYiByZWxlYXNlMjItbWFpbnQKKzMyOTYyIGFkMWU2N2FjNTY3Yjg3Mjk5NGNiYTllNmM4YzRhMGRhOTM1MTJjMzYgbGVnYWN5LXRydW5rCiszMjk2MyA0NjI5NGVkZGJhNTUxM2JiYjU0MTViMzJhZTg3ODE1NTNiOGI0MTQwIGxlZ2FjeS10cnVuaworMzI5NjQgNjcxZTljM2FmNGYzODVmYjg4ZWRlN2U2NjdjZTFiZDY0ZTc1NWU3MiByZWxlYXNlMjItbWFpbnQKKzMyOTY1IGVkNzA3NzlmNjQwMjFjOTBlZmJmYzAzODc1MjJhNWNlMjIyNTFjZGIgbGVnYWN5LXRydW5rCiszMjk2NiBiMTc5MmE2MThlNmRiY2JlMTFlNDA3NjNkYWVkMmViZDhlZjAxMTM5IHJlbGVhc2UyMi1tYWludAorMzI5NjcgZGJjZTU1NmNmYzk2ZTkwNzA5ZjQ0NjM0MDc0NDYyODAxMzhkYjJlNSByZWxlYXNlMjItbWFpbnQKKzMyOTY4IDUxY2U2OWJkZjQxODZlODIwMTQ3OTQxZGU0NzEyOTI1YTUwNGNjNDMgcmVsZWFzZTIyLW1haW50CiszMjk2OSBjMjkxY2EyOTQ5ZTkyNjQxZTZjZmFlMmM1ZDY4ZjA3Y2ZjYmU4MGZkIHJlbGVhc2UyMi1tYWludAorMzI5NzAgMjcyYzc1YjFkMjJlYmIwNWZjN2JlMmIwNTc3ZWEwODk0NmVkYmQ3MCByZWxlYXNlMjItbWFpbnQKKzMyOTcxIGY0NGZiZjc0ZWI2MWRjMjhjMTdmZjg0NTAzMzUyNjlhZmI4ODZkMDcgcmVsZWFzZTIyLW1haW50CiszMjk3MiBmN2Y0NmQ2NzNjNjFjNzJjYzhjZDA5M2MwMTdmZTBmZmQ3NGYyZTIwIHJlbGVhc2UyMi1tYWludAorMzI5NzMgNjVmN2VmZDM1ZjExOTAxYzcwZjVjOTdiMmE5ZmRkNzNmM2EwMDNhNSByZWxlYXNlMjItbWFpbnQKKzMyOTc0IGIzMWM4NGJhMWYzMTQ0ZjUwNDc1NjVhZjQzNzExYmQzYTBhNmM0MmMgcmVsZWFzZTIyLW1haW50CiszMjk3NSA3NzQ2MjY5Yjk1MWNkZDYyY2Y2OTA4YmNhNGIxMjc1ODA1ZjdlMTAzIGxlZ2FjeS10cnVuaworMzI5NzcgYmYyZGMwZDE3MTQ4ODI3ZDYwYTZmZDJjNjlmZjViYmRmNDgzNmJjZiBsZWdhY3ktdHJ1bmsKKzMyOTc4IDEyZjllYTMyZjIzYTUyOTcwYmI0NTllZjI2Njk5YTczYmRlMzBmZTggcmVsZWFzZTIyLW1haW50CiszMjk3OSAwMDhjZDEwMTI2OWRmNjgyOTY4MDRmMzE3NGJjOTUyYzcwYjRjMDIwIGxlZ2FjeS10cnVuaworMzI5ODAgN2JlYzYyODk5OGZlOWU3NTcyNjdlNTZhYmRlM2RiYTY4MDY1ZmU4YyBsZWdhY3ktdHJ1bmsKKzMyOTgxIGU5NTBhYmMzMjkyMjdhYjY4MDA1NzQ3MTAwZGNlYTY3NTA5MDQyNjQgbGVnYWN5LXRydW5rCiszMjk4MiAzNjgyYWEyNzE0MWI0NDIyY2U2YWVmOWVmZTljOWJmNzQ2OWU0NGM1IGxlZ2FjeS10cnVuaworMzI5ODMgODcwMGExYzcwMTZiMTBmMDk4OGQ5YmFmMzY0MWFmYmRkY2Q4NzUyZSBsZWdhY3ktdHJ1bmsKKzMyOTg0IDYzYWI1MGVjNGE0NjYxNWFmMGQ0Njk1NzE2ZmM4OGEyYWM0NjUzZGEgcmVsZWFzZTIyLW1haW50CiszMjk4NSBlNDU4M2QxNjZjYmNkNzk4NmJhMWI0ZTJhMjEwODEyOGUxOWVjMDgyIHJlbGVhc2UyMi1tYWludAorMzI5ODYgMjlhYjFjOTIzZjc1NzEwYTJiOTRkZjM4MWE3YTIzMDc0ZTBmYzJhNyBsZWdhY3ktdHJ1bmsKKzMyOTg3IDQ3YzcyNWEzMmIwZWMxMGY4YWFlN2U3MDdjMWE2N2Y5YTQzYmQ1YmEgcmVsZWFzZTIyLW1haW50CiszMjk4OCBjMDAxYmIwMDA1NTgwZDJhNTY5YWIyZTcyZWRhMjI3YTZkNWZjMDdkIHJlbGVhc2UyMi1tYWludAorMzI5ODkgODNhMmU3MTMzYjAxMDU1M2I1NDc1NjA1N2NjNzgzMTE4M2RjYTVhMiByZWxlYXNlMjItbWFpbnQKKzMyOTkwIDg5MGNkN2EyMjIzZWZiOTY4ODQ2MmJlZTRiNGNkNjhiZmJmNTlmNzUgcmVsZWFzZTIyLW1haW50CiszMjk5MCBmNGYxMzRhZDQ2YWJkMGJjOTczZDNmNjA5NGVhNTZlNjJhYzVjNDkyIHJlbGVhc2UyMi1tYWludAorMzI5OTIgZjk0OTU4MTVjMThmMzE5ZDk2MjlkZjRiNzQ1NjI1OWQ2NDZiN2UwMyBsZWdhY3ktdHJ1bmsKKzMyOTkzIGY0MDliMzNjMjljZTQ5MjAwZTMxOTgxNzNjMzc1MjUwMzUzNDE3MDQgcmVsZWFzZTIyLW1haW50CiszMjk5NCBmYzI4NmUyODU1NmY3ZDg2ZGZmOGZmYmMyMDVmYjM3ZWU4NWUzNzIxIGxlZ2FjeS10cnVuaworMzI5OTUgYzY5YWQ5MjI3YWZkNGY5MzFiNzRjYTU2NjAyZmVlZWQyMTdkZmM5YSBsZWdhY3ktdHJ1bmsKKzMyOTk2IDZhYmNiNjkwYjQ3YjU0YTdhOGI1ODViYjIxNGM5NGEwN2M4MzU1ZjEgbGVnYWN5LXRydW5rCiszMjk5NyBkODljMDgzN2Y4ZjQxODMxNTVkMjU0NWZkNTVkODAyNjRlZThiNGMxIGxlZ2FjeS10cnVuaworMzI5OTggZTRmNzBlNjAyNTk4ZDQ4YmEyYjQyOWQ1NzViZWRmMjMwMmI3YjdiYiBsZWdhY3ktdHJ1bmsKKzMyOTk5IDk3ZmQxZjQ5ZjAyNmFhNTA0YzVjYWY3YTA4Njc5Y2U2NjllMzEwOGYgbGVnYWN5LXRydW5rCiszMzAwMCBiMzQ1NWM0YzE3OTg4Nzc4ZDc4Y2E1Yjk4Y2I4ZDZjOTU5NDhlYTEzIGxlZ2FjeS10cnVuaworMzMwMDEgNzU0OTRhZWE0N2NhNzI2NTQ5MWVhMjQxN2EzYzA4MjlkYWViNTQ4MyBsZWdhY3ktdHJ1bmsKKzMzMDAyIDQ1ODVhYjBkYTAwMzc3YmFmMGU5Y2EwZmVjZWIwZmUzNmQ1NTAzYWUgbGVnYWN5LXRydW5rCiszMzAwMyBmNTg5MTQ1OWI4MTNlZTI0NGU1ZDUzZmE2YjA4OTNkYTQ5YTA0ZDhiIGxlZ2FjeS10cnVuaworMzMwMDQgMmY3MzFjNTdjZGM2OGY1OTQwZDAzZjk5MDhjOGJjOTQ4NmNlNGE3YSBsZWdhY3ktdHJ1bmsKKzMzMDA1IDI3YmQ0Y2QwMmJiODdlMzc3MTUzYjNlZTI0NzBjZjAzMjAxOTA0YzggbGVnYWN5LXRydW5rCiszMzAwNiBmYjg0ZTBlYWJhZDRlNGIzZDE2ODAzNDNiNWM2ZGEyOTgwMTdlYzcwIGxlZ2FjeS10cnVuaworMzMwMDcgMWFlOGI2NzQwOTA2NTIwNjVjZGQ4YWVlOTE0MGJjY2E0MDUzYzk2NCBsZWdhY3ktdHJ1bmsKKzMzMDA4IGIxMzk1MDE0NzE0YWQ3ZjA2Y2UyZmFkZTYxZDhlZjRhMTU5ZmViYTcgbGVnYWN5LXRydW5rCiszMzAwOSBiNTJlMGFkMzA1ODU4ODBlOTI2NjZhMjQ3NzBmMzdkYWQ0NmFiYmI5IGxlZ2FjeS10cnVuaworMzMwMTEgNTNkOWI0ZWVjNGNlMGEyODRmYmM1MGZkMjUyZTNhYjU1NjJlYzdhMCBsZWdhY3ktdHJ1bmsKKzMzMDEyIGEzNjkzMzYyMjRkZGE0OTUzOWExZGNkNjQ1OTdkODEyNGM1ZDU2YTcgbGVnYWN5LXRydW5rCiszMzAxMyAyMDg5NGRiYzdmNmE4YTU3MTI0NDI1M2FlYTE3MTU4MTgzZjQ2ZjI3IGxlZ2FjeS10cnVuaworMzMwMTQgYjFlYjJhNDc1NmJjYzMyOTNlOTFiZjI3MWNhOTU5NzUwZmFiYjQ0ZCBsZWdhY3ktdHJ1bmsKKzMzMDE1IGVkOTQ5YjgyZjk1ZDljOGE0YjE5NzRhNDQwMGNjMTgxZTEwMzY2NjYgbGVnYWN5LXRydW5rCiszMzAxNiAzZjEwYTI5ZTBlNmExYWUwMDVjNWYyMDVmMDk1YzM4MzkyZTU2OWQ3IGxlZ2FjeS10cnVuaworMzMwMTcgZmRhYzliNGQzNzE3MjUxMzI5OTc0OGFmYTNiNzk0MzJmN2U0M2YzYyBsZWdhY3ktdHJ1bmsKKzMzMDE4IGY4MmI2ZDJiNzNmMTExMzcwYThjODRkMjkzYTg4M2Q5OTJjMzYwZmMgbGVnYWN5LXRydW5rCiszMzAxOSBjNjYxMDBjMDllYTExNjI3ZDQ5MDA5ZjI1MjEwMjk1NzY1MWE0ZGE2IGxlZ2FjeS10cnVuaworMzMwMjAgZTBmMDcxYjQ3NmZkMTZmZGRkN2FiODVhYjkzZGE2Mzg2ZmQ3YTFhNiBsZWdhY3ktdHJ1bmsKKzMzMDIxIDcyY2U3Y2MwM2YyN2ZkMjYyMmVlNzI0ZmYxNzBhYzIxNTVmZjIxNjUgbGVnYWN5LXRydW5rCiszMzAyMiAyNjE2ZmU1ZWVlZTE3OGQzNjNjNDI1MDIzZWRjZDYxZDFmODJhZDM2IGxlZ2FjeS10cnVuaworMzMwMjMgY2EyMGMzY2JjOTU2ZWEzMjNiYjk4ZGM5MDc5OWNjZTkyNTY4M2ZjYSBsZWdhY3ktdHJ1bmsKKzMzMDI0IDEyMTkwMjFjNDg2NWFlODA3ZjMzMTQwYTA1YjU0YTI2OGYzNWZmODQgbGVnYWN5LXRydW5rCiszMzAyNSA1OGMxYWQ0MTdlZTdjYWVkNDI4YWEyMjI2ODY1NDk4ZjA4YjgxNWI1IGxlZ2FjeS10cnVuaworMzMwMjYgYzAxZWRjMzVmZmQ2NzZiYTRhNjZiMGQxZGMwYjVkOTUyZTgxZDA0YSBsZWdhY3ktdHJ1bmsKKzMzMDI3IDhjNmQ0ZGE1Y2NkM2Y4OWQ1ZTU3ZWIxOTI2OTBiZDhmYWZmYjk5ZjAgbGVnYWN5LXRydW5rCiszMzAyOCAyMGUxYWQzYWU4YmIwY2ExYTIzZmYwNjUzOGVmY2E0NjE5MzNlMWIzIGxlZ2FjeS10cnVuaworMzMwMjkgOWU3ZDIyOTMwZGFhMTJmMjdhNTdjMmMwYjA2NGQyZjU5NTI1MjY3OCByZWxlYXNlMjItbWFpbnQKKzMzMDMwIDIzZjYxMDFjYzg3ZWYxNTEzYTk0Mjk3NWNkYmExZTM0ZmI3OGVhNGYgbGVnYWN5LXRydW5rCiszMzAzMSAyZTJkZDYxNDM5NDM5NzdlZDdlNzM0MDUwNjA5ZjkzOGZhMmVjYWU0IHJlbGVhc2UyMi1tYWludAorMzMwMzIgNDA4MWI0OTBkNTRjYWNmMjEwMWYyNzFlYTc2MmU3OTYxNTg4ZWIyYyByZWxlYXNlMjItbWFpbnQKKzMzMDMzIGMwNTU5NzkzMDBmMTc4MDUyMjcxMDY2YWM0YmZmZTIzY2NiOGIwZDQgbGVnYWN5LXRydW5rCiszMzAzNCAyNGU3NGQ2ODc5ODAwYmJiYjMzM2UwNzlhZjQ3NWE3ODNhZGMwNjYwIGxlZ2FjeS10cnVuaworMzMwMzUgMzQ3ZTdiNmRmZDUzYWQ5ZDcxNzc4ZmYxNGYyOTljZGEyOGMwMTE2NSBsZWdhY3ktdHJ1bmsKKzMzMDM2IDI0ZmZmMzJlZDA2NWMzM2RhZTAzOWM1OWY3OTgxNGJjYjBlNjZjODIgbGVnYWN5LXRydW5rCiszMzAzNyAxNWYxZGM1YjdkZGMxY2Y2MTRiNmIyZDViMDA0ZGIyN2NmMWJhMmNkIGxlZ2FjeS10cnVuaworMzMwMzggNTg1ZTMwM2E5NDkxMzUwYzgwNjkwOGNhNDJlNzY3ZWMyNmE0MGJhMiBsZWdhY3ktdHJ1bmsKKzMzMDM5IDBkNTg4ZmFkYzFmODJmZmFmNTVlNTU1MjUxNTIzNzQzYTU1YjJhNzAgbGVnYWN5LXRydW5rCiszMzA0MCAyZDM5ZWMwZTU1YWE1ZmE0ZGJjM2MyMzg3NmE4OTdjOWU2MDgxM2FiIGxlZ2FjeS10cnVuaworMzMwNDEgYmFlNmNlNmQxZTVhMzdkMjZkYzEwYTY3M2VjYTU4OTYwMWZkZmQxNiBsZWdhY3ktdHJ1bmsKKzMzMDQyIGNkNWVjYzViMzhlYjg1OTdmNjYzNjE1NDA2Nzc3M2I2ZmE5NWQwMTMgbGVnYWN5LXRydW5rCiszMzA0MyBlZmYzMzMzNGNhNjczN2QyMDYxNzQxOWZhNTAwMWQxNGVmMGQ0OGIwIGxlZ2FjeS10cnVuaworMzMwNDQgZGI0NmNlZGFmN2NlMjBiMjE0NDA5MTNhNDc1NmM3OGFjMTQ2YzU1ZiBsZWdhY3ktdHJ1bmsKKzMzMDQ2IDg1NzQyOGNiNDE4YzdjOGUzZmE2OTE5NGEzNmM3N2YwMmUxNTg1NmQgbGVnYWN5LXRydW5rCiszMzA0NyA2NTQ5MDg4NDdlZWY4YmY2MGRhNjU2ZmRjMGYwNDNkYzcyZTdiMDkwIGxlZ2FjeS10cnVuaworMzMwNDggM2IyZTJiMTQ2ODFjMDJlMGJiMjMzOWMxMzdiM2M2MGE3ZDIwYmI5YiBsZWdhY3ktdHJ1bmsKKzMzMDQ5IDllMWY4ZmM1ZTcxZDMzNDcyMmI2MTM3N2Y3MzAwZGViNTQ1NmI3N2YgbGVnYWN5LXRydW5rCiszMzA1MCAyNmUwN2E2ODQ4OTBjYmNjOTc0YmY2NjhhMmQ4MWEyOWJlZmRkMWQ4IGxlZ2FjeS10cnVuaworMzMwNTEgY2UyNWI0ZDc0NmVhMTAwNjdlMGNhMzVmYzVjMWE3ZWEzNDZiN2JjMyBsZWdhY3ktdHJ1bmsKKzMzMDUyIDkyZmZlNTAyMTEyODE5ZjMzYzY3MTFiMWNlMzkxZmJjN2UzMjY2OGUgbGVnYWN5LXRydW5rCiszMzA1MyBmYTYwNGFmMGNkYmZiNjMxYmY0YjE0ZmZmODVlNmUzNzI1YzI1ZjVkIGxlZ2FjeS10cnVuaworMzMwNTQgNjFlOTY2YzllY2U4ZDkwOGRhZmM1YzAzMjRlYTUxZDA1NjFkZGU4ZCBsZWdhY3ktdHJ1bmsKKzMzMDU1IGU2YjBhNDA2ZGMzMWVmNDJlZmZkODYxZTc1Y2JmOGRmZTVmNzY3ODggbGVnYWN5LXRydW5rCiszMzA1NiA1MjU3NjY4MTdlYjY4YjYyZGFlMTAwYzRhZjc2YmM1MWMwOGM2NWZmIGxlZ2FjeS10cnVuaworMzMwNTcgYjBhN2VhYzZjNjUxMTAxYjdmYjcwMzU5N2Q5N2RhYWUxYTU1NzY3MiBsZWdhY3ktdHJ1bmsKKzMzMDU4IDgzMjM2ZjU4ZTY4MTIxZTM2NTJlZTliMWY1YTJkODI1MjRkZmExZWMgYW50aG9ueS1wYXJzZXItYnJhbmNoCiszMzA2MCBjZjBiYWFmMTZlMGQ3ZjUyMWRlYjAwZTFmOTVjZGRkZmI0NDA0MjA1IGxlZ2FjeS10cnVuaworMzMwNjEgYTJkNGM2NGY1YjhiMzE0YjUzZTRhZGEwNjdiOTZhNzVkZWZiN2M2ZCBsZWdhY3ktdHJ1bmsKKzMzMDYyIGQxYThjNzMyMzU5ZTdkOTQxMmIyMGFkY2M5NGY3MjMxNDlmZTcyODMgcmVsZWFzZTIyLW1haW50CiszMzA2MyA4YzVhNjg1M2EwMmFkYjgxYmQ2N2VhOGEwOGY0YzI2ZjUxNzJiOGQ3IGxlZ2FjeS10cnVuaworMzMwNjQgYmVmZmM3MzY2NmZkMjBjYTM4YjYzZDRhM2I0NjEyNGNmM2VjY2I2MSBsZWdhY3ktdHJ1bmsKKzMzMDY1IDNiNTRkZmYxMzMxMDFlZTI5Yjk0OGJhMDgxN2M5NDZlZGQ0ZWViNDAgbGVnYWN5LXRydW5rCiszMzA2NiA5YmI2ZjNjNWIwNGEzZWY4Y2VjMTRmMGUzMGY3NzRhYTJhZWY4YThiIGxlZ2FjeS10cnVuaworMzMwNjcgMzFiMmNiYTY0YjM5OWJmNTkzMTcyM2UxNjYzOTFiY2MyNzgzMTU1YyBsZWdhY3ktdHJ1bmsKKzMzMDY4IDI5NzYwMDU2ODg0YTllNzE1MjFlYWU1MGZkYzZhMzZiMWIzMjllMzUgbGVnYWN5LXRydW5rCiszMzA2OSBmMmRmOWM5ZjBmY2I2MDliNmU5Njg0Njk5ODIwMjYwYzBhYjZjM2FiIGxlZ2FjeS10cnVuaworMzMwNzAgYmFjMmMwZTdjMjBhMTIyMjUwMDBhZTY5OWRkN2ZhOGMyZjdhMWNhNyBsZWdhY3ktdHJ1bmsKKzMzMDcxIDM1NmJiNTljNTQ4NmIyZTVlYjJiMWY1YTJhMjllZGViNjZiOTU4MGMgbGVnYWN5LXRydW5rCiszMzA3MiA2NDM4NjQ2NGY3MTY5MTE3N2U5YTQyZDcxYmE0NDg5YTFlYWNlMWFhIGxlZ2FjeS10cnVuaworMzMwNzMgMGE0MGM2ODdhZjVlYzk2ODAwODAzMmU3NGRlMmIxNTQwMzI2YTgwMyBsZWdhY3ktdHJ1bmsKKzMzMDc0IDg4OTUxYTVmZDJhOWVlYzAzZjQ3MTU5YWMxNzhiNTBiNDRmNjA4NGYgbGVnYWN5LXRydW5rCiszMzA3NSBhYjFkODVmOTg0ODU2ODc1NTBiMTI2YzQzZjI1YjE4Yjc3MDE3YzI4IGxlZ2FjeS10cnVuaworMzMwNzYgOWUxZDc4MDlhOTk4MTZhZDlhMDc5NTI4NjYwMDlhNmJkMjJiOGUxNyBsZWdhY3ktdHJ1bmsKKzMzMDc3IDE5ZjRmNDhiYjAyYTdlNmUwMTRjM2QzZjI5ZmFkNTE0YjIzNjJmMzYgbGVnYWN5LXRydW5rCiszMzA3OCA1YThmZDViM2U0YzQwNTEwYjA1NzgwYWNkMzlmNWU2MWJhODc4NTA3IGxlZ2FjeS10cnVuaworMzMwNzkgZjg3ZmNkMDg3MGJmMmM5ODZkZDFkODA1MzAyMWUzNDNkMjQ0YjcwMCBsZWdhY3ktdHJ1bmsKKzMzMDgwIDJiYTVlYzZiM2NkYTJmYjBlN2VkYTU0Nzk2NDBiYTNlNzA3NjY1NDUgbGVnYWN5LXRydW5rCiszMzA4MSBjZjhhZTNiMGRjZGM5NzBhYTg5NGUyZmQwZGQwMTYwMDZjMTI2N2FmIGxlZ2FjeS10cnVuaworMzMwODIgN2M0OTgzMWQyM2M1OWIwN2I2NjM2MGQ3NDc4MzI5MDgyZDlkN2ZjYyBsZWdhY3ktdHJ1bmsKKzMzMDgzIGZjMzkyZGFiZTJlMzBmMGVhOGU5MGViM2MyZDJhODA4NjUzOGJkMDYgbGVnYWN5LXRydW5rCiszMzA4NCBiNmMyNzFiYTAzZTE4MTQ0MzY1YTM4NzIxZjZmMzZlYTAwYzM5NGNlIGFudGhvbnktcGFyc2VyLWJyYW5jaAorMzMwODUgMDg5ZmJlM2ExMTRlZjliZWM2NGFiNTlkNmQ3NzA1M2QyZGJiNjAwYyBhbnRob255LXBhcnNlci1icmFuY2gKKzMzMDg2IDBkNjFhMjdjMzg5NjllMDY4NDZhZTljZmE5MWIyYzEyZTdmNWI0ZWEgYW50aG9ueS1wYXJzZXItYnJhbmNoCiszMzA4NyBmZmQwMmJhYWIyNTkzMjBlNzMyNmMwOTc2Mzc5MWI3ZjY3N2M5NDNiIGxlZ2FjeS10cnVuaworMzMwODggNzBkNjI1ZmY1NjJiNWQ2OWMzNTliNzRjNGMyZDQ2ZDNiYjJkZWQzZSBhbnRob255LXBhcnNlci1icmFuY2gKKzMzMDg5IDkyM2U2ZmI4NTVmZjRmN2EzNzMyYjNhZTQ0MGMxYjM1NWJiY2IxNTUgbGVnYWN5LXRydW5rCiszMzA5MCBlZGNmZWY5NDRlMmY0MDZjODI3YWIxMTZmODBmYjRhNjQzYmU5NWQwIGxlZ2FjeS10cnVuaworMzMwOTEgNWM1NmJmM2NiMjA1NTA4NTI5Mjk4NGIyZTI4ODU5YTExN2VkZmI3MyByZWxlYXNlMjItbWFpbnQKKzMzMDkyIGM0ODFjNjg2Mjc1YTc4NWE1OTMwNDVmMGRhMDk5NWM1YTg2YzZhNjAgbGVnYWN5LXRydW5rCiszMzA5MyBiODBhMjIyNTBlNGYxMWE0YjQ3YjVhMDFjZDI4MGM4NTVkYjVjYzU0IGxlZ2FjeS10cnVuaworMzMwOTQgZWZlZDY4OTczYTNiZWYzNDA4MjI3MzYwNWIyY2RjN2RjZGI3Y2JhMyBsZWdhY3ktdHJ1bmsKKzMzMDk1IGUyZjI0MTBjMDk2ZTAzZjNkNDIwZjdhMDMwN2RkYWU1ZThhZWMyNmQgbGVnYWN5LXRydW5rCiszMzA5NiAxOTMzOTdjNDRhZTUxNjRmMmVjMDc4M2YzZTA0MDk1ZWRkZGEzODQ0IGxlZ2FjeS10cnVuaworMzMwOTcgZTY5ZTU0NTUyZDEwOGRiNjc0NDQ3YmRmZjg4MzlkOTdlMmM1YTZjMiBsZWdhY3ktdHJ1bmsKKzMzMDk4IDBiYTdjMTAxNjQ4YWM4MjgzNDBjOGU0ZTczNTRmYmI4NTgxZmU1ZGYgbGVnYWN5LXRydW5rCiszMzA5OSBmYTQ4YTkwZWRhMTI1YWViMmU4NDhiMWUwOTZhM2ZlNmYxMGY3Yzk0IHJlbGVhc2UyMi1tYWludAorMzMxMDAgMTc5ZDU0NTJiYjlkOWY2MTE0YTQzMDhkZmFkNzNhODFmODcyZDY4NiBsZWdhY3ktdHJ1bmsKKzMzMTAxIGI0MDkwMmI0MjI5MGRiNjk0ZWZlMzNiYzIzNjYzMDZlNjEwOWNmN2UgbGVnYWN5LXRydW5rCiszMzEwMiA3YjcwMDQzOTNiNWIyNmYyNTNlNmYxYzFlMTU3ZWVhNDVjYjE3YzA0IGxlZ2FjeS10cnVuaworMzMxMDMgNTJiYWFlYzdlNWNmMDg5ZjM1MTY1NjhkNjE1OGIyYWY4ZDY1YWQyZCBsZWdhY3ktdHJ1bmsKKzMzMTA0IDE3NDMxYmE4Y2M0YmZhZGEzMjY4NGFhZWY0NzE2MjVjYTU3MTVmMTkgbGVnYWN5LXRydW5rCiszMzEwNSA2ZmVjYzk5YWZhNjlmZmQ0ODBhMjkyZTYyMGQ1MDFlZTZlNzU0NzNmIGxlZ2FjeS10cnVuaworMzMxMDYgYmIxOTEzNGUwYTRkMGI5ZTQ0MzMyYmQ4NWVhOTdjMzBkNDNkYWVmMyBsZWdhY3ktdHJ1bmsKKzMzMTA3IDhkMTYwMDk1ZWI2NjgzZTNjMjJhNTg5NzYzOWZkZDY3NzMwN2Q4NDIgbGVnYWN5LXRydW5rCiszMzEwOCBlNWQwMzM2MDU3MWQ5N2NhZmRlZDQyM2NjODY4YTllNjJlMDYzMzRhIGxlZ2FjeS10cnVuaworMzMxMDkgZTk5NTNiMzk5ZDU1M2Q1Y2M4ZGYwYWU5YTc5MDc0MmY0MmMzMjEzNiBsZWdhY3ktdHJ1bmsKKzMzMTEwIDJjYjk2OWZmZTFiZjI4ZTU0YjA5ZmNjNjQ3N2E1YmVmNjVhYmY5MjYgbGVnYWN5LXRydW5rCiszMzExMSA1Yzc2Mjc1Mjc4MmMyOTM4MjhkMDkxMmNkNTRmY2M0NzA1MzllNGMyIGxlZ2FjeS10cnVuaworMzMxMTIgMmQ2OWE3MDdjNDkyOTg1NDkyYTMxZjNiNTc3NTNiOWIyZDI1NWE3NSBsZWdhY3ktdHJ1bmsKKzMzMTEzIDU2MzQzODE2YjU4OTdmOGFmNzAyZjI1YTBkMTU4MGU4Njk2ZDMyNTUgbGVnYWN5LXRydW5rCiszMzExNCAwNTA1OGQ4MTM0NDE4ZDQ4ODU4NDUzZTExNGJmMDliNGRmY2MyODk2IGxlZ2FjeS10cnVuaworMzMxMTUgMzAxNmExOWUzMjBlNjQ1MTcwNmY5ZTBmNTdjMmM0MWI3OTQyZDNkMiBsZWdhY3ktdHJ1bmsKKzMzMTE2IGVmYWQ1OWYzOTU2NGJjZDk0ODE3OTcxN2NiZGY4NmIwYjZmZDhkMWMgbGVnYWN5LXRydW5rCiszMzExNyA5YjcyNTU4YTFlYjlmNDBiYjJjMGE0YmUxNzE5ODFhYTc2NWEzMTg4IGxlZ2FjeS10cnVuaworMzMxMTggNmQxNjBlZTM3MTk2NTU5ZTNkYzYyMzdhNzc3NzU0NjE1MzBjZTM4YiByZWxlYXNlMjItbWFpbnQKKzMzMTE5IDFmMzM0MTk4ZTZkNzYzYzZjMGFiNzhkODA4MmFhNDc5ZGE2NzFkMzMgbGVnYWN5LXRydW5rCiszMzEyMCBiODIyYzJhOGUwOGY0MzA1ZmVhNGE2N2YyYTVhZGRkNWJkNWVjMjkyIHJlbGVhc2UyMi1tYWludAorMzMxMjEgOGJlZDU1MjAzNTU5ZjhkZDVjNWFjMzkxYjc2YWM3ZjI0MWI3OWVkOCBsZWdhY3ktdHJ1bmsKKzMzMTIyIDIxYmZjYjdjOTc2ZGI1ZTQzYzg3NzBjYjU2MWY1MmFmNWRhMzlhNWQgcmVsZWFzZTIyLW1haW50CiszMzEyMyA5ODgzY2Y4ZmYyMTdjOWVkODgyNTNkYzRlNDFhMTJkYjdiYTI5ZGFmIGxlZ2FjeS10cnVuaworMzMxMjQgOGIxNzY2YzhhZDNiYWI0ZTljYjE1MGYyNDBiODI4ZDc2YmY5MThlZiBsZWdhY3ktdHJ1bmsKKzMzMTI1IDA2MmUzNDJjY2ZmNThiNjI5NTM1NGNkYmYxMGYxZDQ1YTI0M2IwMDEgcmVsZWFzZTIyLW1haW50CiszMzEyNiA3NGEyOGYyZTk0Y2Y5ZTI5MmVlZWQ4MTA4NWY5NTY1NTVmYjVmNmVjIGxlZ2FjeS10cnVuaworMzMxMjcgMmNiODkzMGNlMjI1OTkyNmFlNGE3OWE3YjljZDNiOWNmZGE5NjIyZSBsZWdhY3ktdHJ1bmsKKzMzMTI4IDFlMmU1NDgyMTc4NWY5YTRlYmVkNmVmODdmYjQ0ZDg1ZDdjMmM5NzMgbGVnYWN5LXRydW5rCiszMzEyOSAzNTIzYmE5MjQ1MGNlNjQxNjA2Yzg5N2QyZDhjZTRkMDllODEyM2U2IGxlZ2FjeS10cnVuaworMzMxMzAgMDQxNWFmNjM0MTIyNThiZTFhYTQ1ZDY5MWRjNjU2MzZjZDhhMjM1YSByZWxlYXNlMjItbWFpbnQKKzMzMTMxIDVjNWI1ODc0NjQ4NjZkZDNkNzMzN2NiOTVhMTNmYjRlOWJjYTUyNmMgcmVsZWFzZTIxLW1haW50CiszMzEzMiAwY2YxZWM1OGUyMjBiYTY4NjJhMTQ5OWI1Njc4YTc0YjU0YmVmMDVlIGxlZ2FjeS10cnVuaworMzMxMzMgYTcyMWIwOTRmN2JjMmRiZmQ3MTEyNTU2YmU2MGZlNTQ0MWEwNTRkNSBsZWdhY3ktdHJ1bmsKKzMzMTM0IDRmMDc2ZmMwMTk1YWMyNjI0YWVhNDc4ZjhiYTU2MmRmNDQzZDMxYmQgbGVnYWN5LXRydW5rCiszMzEzNSAxYWI5OTc4MTIzYmVjZWExNDVmMDkwZmExZmEwYTExYjQxNjJjZDNhIGxlZ2FjeS10cnVuaworMzMxMzYgMTRhMTU0NzEyOWZiZjVlYmIyMjhiYzgyOWJmMDBhMGYxOTJmMzJiMyBsZWdhY3ktdHJ1bmsKKzMzMTM3IDMzMWFmNDVkZmEwZGMwMTc4ZDhhZjNjYTI1MWE3N2Y5MTg5MDEzOTAgbGVnYWN5LXRydW5rCiszMzEzOCA0ODc0NjE0Y2M3YTM1NzAzOTJkM2VjOWZhZmQ3ZTY2Y2QyZjY5OTU1IGxlZ2FjeS10cnVuaworMzMxMzkgNTEwNjBiMTY5YjMyMzdhNDE3ODA2MWY5Y2FjMWZlMzcwMzEwOGQ4NSBsZWdhY3ktdHJ1bmsKKzMzMTQwIDg5MmRmYzllNzI1NjdmZGI3NzlmOTcyMmUwYTQxMDQ0MGQ4NDhhY2UgbGVnYWN5LXRydW5rCiszMzE0MSBkZWI5NzE1YmM4YWU3YzAwZTZjNDYyZTkzOTUyNjBlMTFhM2NlNWVhIGxlZ2FjeS10cnVuaworMzMxNDIgODM0Y2QxMjE4ZjFiNGQyNDU4NWU4MDAwMzk5ZDNiYmVmNTZjOWZjZCBsZWdhY3ktdHJ1bmsKKzMzMTQzIDA4NmJkOWU3ZDI0NDJhMGJhNmMzNWVhZDQ3M2Q2ODZiZGJlMzE4ZWIgbGVnYWN5LXRydW5rCiszMzE0NCAwNmYyOGFkZWE2ZDJjMDkxYWM4ODdmM2I3ZWYxOTQ2ZDJkYjY1NjMwIGxlZ2FjeS10cnVuaworMzMxNDUgYmRmZjk2NWQyNjAzMjk5YWM2NjFlYzMzNDMyOGU4MDlhZDczMTdkYiBsZWdhY3ktdHJ1bmsKKzMzMTQ2IDIzZTdiMjU3N2E0Njg4MDViZjYyNjBjYjFmYTY1NDY0YjA4OTllMGQgbGVnYWN5LXRydW5rCiszMzE0NyAzMTMzYjUwZTk5ZjMyNjVmOTkzNTk0MWU0NGQyOGIzYTVjYjljYWVkIGxlZ2FjeS10cnVuaworMzMxNDggODdhMjUzYWFhMGQ1MjEzN2NkNzUxMzZhNjVjNDc2MzMzNzcwYzQ0ZSBsZWdhY3ktdHJ1bmsKKzMzMTQ5IDgxZTcwZjEyZDYyZmM4NDc3OWI1MmQyNTZjM2Q4N2JmYjU4OWExMTkgbGVnYWN5LXRydW5rCiszMzE1MCAxMzg2Zjg2YzUwOTVmNDc1OTQ2MzRlYWZhMTQ4MWNiNTAwMWQ3ZjU2IGxlZ2FjeS10cnVuaworMzMxNTEgNTE0M2NmZTdjYzc1Y2MwNDRmMDlmNTBkZjBjMThiMmZkODM5OTI4NCBsZWdhY3ktdHJ1bmsKKzMzMTUyIDYwZGFiYTkzNzc1YzUyMzYwMzY1OWQ1NjViMzNiY2I0MzViMWI2ZjUgbGVnYWN5LXRydW5rCiszMzE1MyA5NzE4ZGY4NDlkYTkyMTAyZGI1ZDA2ODRlNjkzZjI2ZTIyNjFjNzVhIGxlZ2FjeS10cnVuaworMzMxNTQgMDg5MDQ2NjAxMjcwNjU5MjllOWI0MmFiM2QyNWM4NmQ2MGEzMzAwNiBsZWdhY3ktdHJ1bmsKKzMzMTU1IDUyMjA0NzQ2NjBjZTgxZDI2ODg0OGNiNzhiZTZkMTJmMTg0OGZiODcgbGVnYWN5LXRydW5rCiszMzE1NiBhYmMyYTIwZGMzYTMzNGMyY2Y0YTg1YzJjYWRkYmEyZWQyNzJmNTllIGxlZ2FjeS10cnVuaworMzMxNTcgNDBjNWYxYzA4ZWM4YWFiMGQxZjhjYWUwNTIwYWY2ODMxOTdkMjQ2MSBsZWdhY3ktdHJ1bmsKKzMzMTU4IDEwMDcwOGViOGM4MmQyYzc4N2I5ZDc1ZTdkM2I4OTk0OGE5NGRmNjAgbGVnYWN5LXRydW5rCiszMzE1OSA5NGY5MTA3ZDlhNjNhOWQ5YTJlOTIyNTczMzAwNWFiNDcyODVhNzI3IGxlZ2FjeS10cnVuaworMzMxNjAgNjUzMWM3NmI2MDRkY2FmZTJjMjU0Y2I0YzU1ZjE4YjkzZGJlZGRiNyBsZWdhY3ktdHJ1bmsKKzMzMTYxIDE0MDJmMjY1ZTQ4ZjYxM2JhZjllYjM3NGM1MDQ0MGQwMTBiYjE5Y2UgbGVnYWN5LXRydW5rCiszMzE2MiBkMGQ0ZDY5NmFiMjRlOGQ2MjgzZTk1YzMyYTE0NzY3NjllMzViOWQ3IGxlZ2FjeS10cnVuaworMzMxNjMgYWE4NGVkZTFjMzY0ZWJkY2Y1MmVmMzY1NmJlZTE5NDM5MjRkMzA1MiBsZWdhY3ktdHJ1bmsKKzMzMTY0IDZjNmIzMjFkMWQxMGVmZDFmMDQwZDUxNTFhY2Y3MDAzODdlNmZlYmMgbGVnYWN5LXRydW5rCiszMzE2NSA3MWMwNmJjNWE3M2VhMWI2ZTY1MzkyNmRiMTI2OTU1NzQ0MTQzOTQwIGxlZ2FjeS10cnVuaworMzMxNjYgN2UzMzYzYTc2NjFkMjU1MWNjNjVlNjhkM2QyNDFiYzk0OTQzODgwOCBsZWdhY3ktdHJ1bmsKKzMzMTY3IGQ3MmIzZjBhNTdhOWRkMmM3NDA0ODRiY2VkZTJhOGZkODNkZGM2MDggcmVsZWFzZTIyLW1haW50CiszMzE2OCA1ZjAxZDUxNThkMWY4NmUyMzNjZGIzMDQ5Y2ZhZjMzYjNiYmY0YzljIHJlbGVhc2UyMi1tYWludAorMzMxNjkgZGI0MzEyOTQ3NDk0MGQ4MDQ3OWJmMDFlOTExYjc5NDlhZGFiYWUyMCBsZWdhY3ktdHJ1bmsKKzMzMTcwIDExNTE4YjZjZTVlYzAzZDM5ZjUxYmM4NjZiY2JmZTE2NmFhNDE0NmQgbGVnYWN5LXRydW5rCiszMzE3MSA1MzU1NDY4OGU1YTIyZThmYTI1MGVhZDUzY2JiZGYyMmZlOTY0M2I0IGxlZ2FjeS10cnVuaworMzMxNzIgMjllZWU1YzFkZDQyZmM4YTQxMDM4MDFjMjgyNTMwZmFiYTM3ZWI3OSBsZWdhY3ktdHJ1bmsKKzMzMTczIDAxZTkyNTM3MWQ3Yzk0MDg4Y2E4MTg5MjNlMWQxZmRlMDEwNjRmZGMgbGVnYWN5LXRydW5rCiszMzE3NCBkMWFjZjg5ZDFjNDlhNmQ2MDExNWZlZjM0ZmE0ODhiNjAzMGRiZmFjIGxlZ2FjeS10cnVuaworMzMxNzUgNjQ0NGVhM2RjODNjNDRlMTU4MjE4NDcyNjliMTBmNGJmNjQ2NWRiZiBsZWdhY3ktdHJ1bmsKKzMzMTc2IGU1NGUyZGU0NmJjM2Q1ODczN2Y0ZjczYmM5MjE4OWQ1MGYyNDJiZWEgbGVnYWN5LXRydW5rCiszMzE3NyBjYTllMzU5OGNjZmI1ZWM4MWIzZmRiYzlmOWYyNjRkYTYzMmU1MDEwIGxlZ2FjeS10cnVuaworMzMxNzggMjMxYTM1MTBlMjQ2ZmUwYzk0M2U1NmFiMDRjYWU4ODc2NWY4NjdmMSBsZWdhY3ktdHJ1bmsKKzMzMTc5IGQ3NjFmZjU1YjNiZWY0MWZlNTJmYTNlOTVhNjdjOGIxOWMxNmQ4MDggbGVnYWN5LXRydW5rCiszMzE4MCA5NGFjMWQ0MmE0MjA0ZjJkMGI4NmNiNDhhNDhjYzA0ODgxYjM1YTJhIGxlZ2FjeS10cnVuaworMzMxODEgMDVmYjUxZDA3YWRhZjViZjMxNGE4Nzg1ZWM4NTBhMmUwNDI5Zjk4OCBsZWdhY3ktdHJ1bmsKKzMzMTgyIGM2ZWI1NjllNGI3OTMwOWI4NTBhOGM4YjI1MjBiYzk0ZTIwOGNiNmEgbGVnYWN5LXRydW5rCiszMzE4MyA1ZDExZmRmYTdjMDA4NDc1MDA1NDIxYjNjMWQ0NTBjMDAwNGJiNzJjIGxlZ2FjeS10cnVuaworMzMxODQgYjc0ZTBjYzIxY2IwNDRmYWJjYTU1ZTJhODg1ZWQ5YjRmYmY5YmQ2OCBsZWdhY3ktdHJ1bmsKKzMzMTg1IDcwZTY0OWZhM2ZjZDEzOTE2YThhYjI1NGNlYTYwNWNhZTc3MGVlZmQgbGVnYWN5LXRydW5rCiszMzE4NiA4N2YzMGZjZmFkNDg4ODFhMjNhMzdiYzYxYmY3NzEwMzk3OTUyZTQyIGxlZ2FjeS10cnVuaworMzMxODcgYjFhYTFkNDM5Y2JhMzU1ZWVkOTAyZTFlMmYxNjdkMDQ1OTFkNTU1YiBsZWdhY3ktdHJ1bmsKKzMzMTg4IGZiMzMyYTA5NDliNzRmNTYzMTVmNzQzNjczNjkzYTYyN2JiYmYwOGUgcmVsZWFzZTIyLW1haW50CiszMzE4OSBmNmQ1MDNkZTQ1YmRlMGY5ZjFhNDM4OGNiMzg1MDJiNjQ3NWUzMDBkIGxlZ2FjeS10cnVuaworMzMxOTAgZjY3ZTRjNWFlYTkzN2RjMzgxNDQwODQ0OGI1NzZlODNkMmQzNjA1NiBsZWdhY3ktdHJ1bmsKKzMzMTkxIDdhZWU2ZWY1OTZkZGJkZTYzODNhOTY1ZDUxODYzYTUwZTQ5ZWQ0NWMgbGVnYWN5LXRydW5rCiszMzE5MiBmNDhiYjk0ZjMyODk1ODMyODcyNmU4MzhkY2MyNGI4NTRmZmRjOTFlIGxlZ2FjeS10cnVuaworMzMxOTMgZjE3NWY3NzliZTg5MGI3ZjlmMWQwYjA4YTUxMGI3OWMxNWI2MDE3NCBsZWdhY3ktdHJ1bmsKKzMzMTk0IGVhNzdkNDNlMjAzZDFmNTZmNTBjMTViOTRlZmUxMTIyMzdmYzkyOWMgbGVnYWN5LXRydW5rCiszMzE5NSAyZmJkMjU2YTFkYjI1NjI2YmJmZjQxZGE2YzkwZjg2OTgwY2UwYjEwIGxlZ2FjeS10cnVuaworMzMxOTYgMGI1MzIyYjg1M2QyZjc1MWI2MDMxMGJkNmIyMTA1MGZhNGRkMzhlYiBsZWdhY3ktdHJ1bmsKKzMzMTk3IDhiMDMwMGU3ZjFkY2IxOTkwMTljNjlmMzhiMGYwNmRiZDExZGQyZWQgcmVsZWFzZTIyLW1haW50CiszMzE5OCBjNjQ2ODdjZDViMzcxZDIzMjM4MzkyM2Y3YjA4ZjU1NDY4YTNmNmQ3IGxlZ2FjeS10cnVuaworMzMxOTkgMzRjMDQwZGRmOWU4ZWFkMjQ0NWEyMWQ3YjJiZDBhOTE1ZjU3ZTg0ZCBsZWdhY3ktdHJ1bmsKKzMzMjAwIGNkNjJiMzM1OWU5NTYwZTVmODc0NTE1ODQyNmNjMGUzZGQ0ODNiMzggbGVnYWN5LXRydW5rCiszMzIwMSBkYzZjMjFkYzg2ODRlMDYzOTdjYzAxNmQyMmM3MDU3ZTg0OWFmOGY3IGxlZ2FjeS10cnVuaworMzMyMDIgZmFmYjZlYjBmOTdlOGU0YzY5NDIzNTMzMGUzYmRlYmYwOTdlYTYzNSBsZWdhY3ktdHJ1bmsKKzMzMjAzIGMzYmM3ZWQ5ZDMxNTk5ZTBlMGY5YmQzODg0ZTZlNjRiZGRlY2ExYjYgbGVnYWN5LXRydW5rCiszMzIwNCAyZDQwMjdlZmJjMTJlMjJmZGEyNzg1ZWFjM2NiM2U4MDYwYWYxMWFhIGxlZ2FjeS10cnVuaworMzMyMDUgNjliYzdjYTVjYzFhOGY1MDFmOTM2ODJhMDBmOTA4YzIxYmU1NjljMSBsZWdhY3ktdHJ1bmsKKzMzMjA2IGUyMjgzMzZhYWYwOGQ3YzM1N2EzZDA2NmY4YWEyYzk3MGFiZjU2YTggcmVsZWFzZTIyLW1haW50CiszMzIwNyA5MTk3Mjg1YTM5MzM1ZTA0YjJlNDQ0Y2U0OWIzMjhhM2YzYjQwNGYwIGxlZ2FjeS10cnVuaworMzMyMDggMzI1OTJmMWE2ZjIyYjQ5OWEyMTJjNjg2OGZjMzk5Zjg4MDY1NDY4OSBsZWdhY3ktdHJ1bmsKKzMzMjA5IDZmZTAyMzY5MGQ3ZjEwZDNjYzUwNmJiYTVmMTZiYjM3NzAwODU5ZTAgbGVnYWN5LXRydW5rCiszMzIxMCA5NDRmNjAyYjc4ZmU0ODg5YTEyNGMyYWYzYmVjMDg5ZDllMDI3MjBjIGxlZ2FjeS10cnVuaworMzMyMTEgODc4MGE0OWQ4ZWYyYzE0M2ZiNjU4MTJjNTE0MzEzNWZjNTI2NWQyMSBsZWdhY3ktdHJ1bmsKKzMzMjEyIDdjN2Y0MDQ1YmEzNjcxYTAyMDkwNjRkZjY5ZTVmZjI1NWY0ZjI3ZWQgbGVnYWN5LXRydW5rCiszMzIxMyA0ZDFmYTljNWNiMmNmMjVkOTBjY2E3MTYyM2JmYjc3ZTk3YzZhMDY1IGxlZ2FjeS10cnVuaworMzMyMTQgZTk3M2RlZDhhOTJhODgyODVlMDI5MTAwMmJiZjE4YjJjNjhlYzU1YiByZWxlYXNlMjItbWFpbnQKKzMzMjE1IDUyMDAyODc4ODliZDJhNDEwNGVlMzhiMjdkMWQ1M2NkMTMxMjhlYjQgbGVnYWN5LXRydW5rCiszMzIxNiA2YTVlOTVjNjdkMzIxYzEwNTg5ZDkzZDllMmQwMjY0ODY2ZTQyODU4IGxlZ2FjeS10cnVuaworMzMyMTcgMWE0OTg2OTIyMzU3NzIwM2UyNDM1YmRiNGYwZDA3MDI2YWRjMTY4MCByZWxlYXNlMjItbWFpbnQKKzMzMjE4IDRiODZkY2FjMjIwMTA3NmQ2Mzk2ZWUwZjIwZjFhODAxNDViNDM5MDEgcmVsZWFzZTIyLW1haW50CiszMzIxOSBkZTNkNDllMGY2NDkxM2MwMzg5MWEwZTFiNjdhYjQxZDUxNGUyMWE4IGxlZ2FjeS10cnVuaworMzMyMjAgNDI3MjMyMmI5MmU1ZTllODI1NjZkMjIyZGM2Njg1OWE2MDJiYzg2NyBsZWdhY3ktdHJ1bmsKKzMzMjIxIGU1ZDNiMWQ4OWM0MDE4MDBkMDRkN2FkNDA1ZmNmYTI5ZmYzYWFhMjcgbGVnYWN5LXRydW5rCiszMzIyMiA5NThiNDBkODBiMzMxODMwZDAzM2JhY2MyYWEwMGEwY2RlODQzN2MwIGxlZ2FjeS10cnVuaworMzMyMjMgYTI5NjIxNGQyZWJiYTMxNzBkMTkxODA4Y2E4M2VmY2UxMTMzNWQ5NyBsZWdhY3ktdHJ1bmsKKzMzMjI0IDcxZDNkYTExNTgzOGYzMzFhZTBmNGI1OGRjOGI5NzlmOTcwZGNjYjEgbGVnYWN5LXRydW5rCiszMzIyNSA0NDhjMTQ0MTk2NGZkNjBlOWJkYzU3ZDg4OTRkYzEzZDcxNWI2NWE2IGxlZ2FjeS10cnVuaworMzMyMjYgNzU2NDY4MzA3ZTYxNzlmZTg0ZjFkOGQzNDU3MDlkMjVkYjU2MTJmZCBsZWdhY3ktdHJ1bmsKKzMzMjI3IDkxMjU5YWUzNWUyOTk0NjcyMzk5MWNhNjk4NmIzM2Q4MTk5NDc0MmUgbGVnYWN5LXRydW5rCiszMzIyOCA4ZTkyY2MwNGI2NGIwMDA0YzIyYWY3NDAyNWFiYjFkNDg5ODIyYjc3IGxlZ2FjeS10cnVuaworMzMyMjkgZDE1ZTJiN2Q5OTFjYzkwYjE1NTRiYzg2NGRiMjdiN2YxM2Q5Y2Y3OCBsZWdhY3ktdHJ1bmsKKzMzMjMwIGVkNDVhOTk1MTMxMjY4YjI0Y2UwYzcxN2NkMzk0N2RmY2JkNDhkNDggbGVnYWN5LXRydW5rCiszMzIzMSBhZDAyYTM4YTk2ZWE5ZWRlYTFlMjcyZmRkMzdhNDZjZWM3MzM3MTg2IGxlZ2FjeS10cnVuaworMzMyMzIgZjI2ZDEzMjM2Y2U4NGE4MDllYzI3YjY1MWNmNzEwM2MyY2UxNmM1OCBsZWdhY3ktdHJ1bmsKKzMzMjMzIDFhYTkwNTdjMzhiNGVkN2E4YjUyNWExY2FhMDExM2FjYzcyMTZiMWIgbGVnYWN5LXRydW5rCiszMzIzNCBlZWQ3NDMwYjdhZjE0YTdmNTllM2M1ZTU0OTg0ZDdhYjM4MDE2OGI5IGxlZ2FjeS10cnVuaworMzMyMzUgNWM4NzM3YmQ0Y2U2ZDRmYmE1MjUxM2RlNmY1ZmIzY2QxYTEyNGRhYiBsZWdhY3ktdHJ1bmsKKzMzMjM2IGUyZjc4MzQ4ODAyNDhkNGMzMjVmYmMzODlkZTg5ZGI4ZTI4MTllYjAgbGVnYWN5LXRydW5rCiszMzIzNyBjZGM3NWRlMmY1YzFhNjRmM2FkZmYwYjQ3YTNmMDgyZDgwYmNmNDZiIGxlZ2FjeS10cnVuaworMzMyMzggYjhiNTdiZGJmY2VkZjRjOGYxNDYwNDAyNDMxNWYwOTkwYzk0NjQyYyBsZWdhY3ktdHJ1bmsKKzMzMjM5IGY5M2I5MTllNTcyOTBlZDI2ZDUyNzIxYTJjMmY2ZTFkYzQ4OWM0MjEgbGVnYWN5LXRydW5rCiszMzI0MCAxNjllMDFlYzM1OTY1OWZjZTNhNjNhNDEwZTQ0MGE2NWUzN2Q0NGJlIHJlbGVhc2UyMi1tYWludAorMzMyNDEgNTYyM2Y5ZTJiNTU1ZjBlOTcwMDZjYThhMGMyMWVjZDQ0NjZlMjYwOSByZWxlYXNlMjItbWFpbnQKKzMzMjQyIDYwY2U3M2VhOWM5MmYzNDJmNTUyZjY3NTVlY2UxNGFkMGVjNmExZGIgbGVnYWN5LXRydW5rCiszMzI0MyBhOWE5M2ZjNTBiOGQ4YWU3ODc4YjYxYzVkZGYxMDVhMmZmYzQwNjM2IGxlZ2FjeS10cnVuaworMzMyNDQgMzEyZmI3NmI3M2NjN2M3NGQxOTE2ZGZhNzIzZTVlMzYyNTRmMmNmMSBsZWdhY3ktdHJ1bmsKKzMzMjQ1IGVlMTRlNWIwNmVkMTM2YjEyMzgzZGFiNjFkMTYyOWViYmFjNzc3OWMgbGVnYWN5LXRydW5rCiszMzI0NiA3ZmU0ZTlmMTY2MzQ3YjY0MWZhNGRlZDZkM2NkZDRkNmNkMjE0NWY4IGxlZ2FjeS10cnVuaworMzMyNDcgZGEwMjQ4ZmNmYzUyNTFiY2Q3MTBjYWIxNTE3ZDIwNzhjMjA0ODU1YiBsZWdhY3ktdHJ1bmsKKzMzMjQ4IDlkZjFmM2Q4OWU2MDBjNDE4N2UzM2Q5NTE0YjYzOGMxMTQxMjIzM2YgbGVnYWN5LXRydW5rCiszMzI0OSA4YjE2MzM3MDM3MmRkYWQwZTAzNDA2NDg4ZDA1YjBjNTk5MWJhNmM4IGxlZ2FjeS10cnVuaworMzMyNTAgN2Y3OWVhZDcxMmY1OGQ0NzFkZjdhNDQzMDY3MzUwOTcxMjM0MzRmOCBsZWdhY3ktdHJ1bmsKKzMzMjUxIDk5NjVlYmNkZDE3MmY5MmY0MTA4ZjM1MzBhNWE1OTBmNGQ4YWNhNjAgbGVnYWN5LXRydW5rCiszMzI1MiBiNzhkNjNkYWUwMzA3NmU5Y2RhN2Q1ZjdmNjM0YWQ5NTNlZDBjZjgyIGxlZ2FjeS10cnVuaworMzMyNTMgODgwN2U5MDFjNTI2Y2I0NGJiOWE2NjBlMzY5NzhhY2QyYzc2MzE3YSBsZWdhY3ktdHJ1bmsKKzMzMjU0IDRhM2VmMzgwNzhlNTUxNTdkMzdlZDRiOTI4MDg1NDg0OTA3ZjE2YTUgbGVnYWN5LXRydW5rCiszMzI1NSA5YTMwNDRlNTc4MWVhYWM1ODg0YzZiY2NiZTE4ZTYyMmEwM2ZhOTM2IGxlZ2FjeS10cnVuaworMzMyNTYgYTQwY2YxZDBhODg3ZmRmYjdjNmUzMjliM2Q3MTJiN2ZmZmM0YjRmZSBsZWdhY3ktdHJ1bmsKKzMzMjU3IGVhYTA2MmZkZDQ2YWIwMjY1NjE2Yzg0MDU0ZDgzOWIyYTFlZThiYjYgbGVnYWN5LXRydW5rCiszMzI1OCA4OTExY2E4ODk4MWFmODYyZTYzZTRhYWFlOWNiMjRjYTdjNWI3YThlIGxlZ2FjeS10cnVuaworMzMyNTkgYjM1ZmY5YjU5MTQ5MzFjMzg4ODBkOTI3MDlmNGU2OTUyMmZlYzQzYSBsZWdhY3ktdHJ1bmsKKzMzMjYwIDQ2NmI1NzllMDA4ODIyNjJiZmIxMmEyYWUzMTE1OGEzMTliYTRlNzggbGVnYWN5LXRydW5rCiszMzI2MSAyMDFjZWFmOTU5NzUxZjQ0MmEzYTYwOWI3NjViZmQyZmZjMjA1ZTg3IGxlZ2FjeS10cnVuaworMzMyNjIgMmIxM2I1OGFlM2E4ZTc2MzdhZjg0M2NjZjcyNDg1NTA5MjY2OWU1NyBsZWdhY3ktdHJ1bmsKKzMzMjYzIGVhMzg0YjFkMGQxM2RiYjY3N2NjMTk2ZjQ2MjE0YzAxZTI1ODIzOWUgbGVnYWN5LXRydW5rCiszMzI2NCA3YjUxOWVhNzUwMWFhYmYyOGFiM2E5MWU4MTU4MWZlNDI5YzUxOTVjIGxlZ2FjeS10cnVuaworMzMyNjUgY2FhOGMxMjBlMmNiMmIyOTZkNjA3Y2ZlM2RiZDA5Yzk5M2RjODhiYyBsZWdhY3ktdHJ1bmsKKzMzMjY2IGZlYThkZWUyNzMzMmZmY2Y1MmY1OTVlMWZlOWQ4NDEyNjIzYjNiNzYgbGVnYWN5LXRydW5rCiszMzI2NyA4YTI5MTZjNDMzZDk0ZmRiMmM5NDc3MzY5NWQ1YWE0OTg2MWE0MTE4IGxlZ2FjeS10cnVuaworMzMyNjggZTQzMTI2YzQ3MGE3NmVhOWZiZDNiOTJlN2U4Yjc4YWY2MzFmZjc5NSBsZWdhY3ktdHJ1bmsKKzMzMjY5IDJkMTZjM2VmZTE0N2U3YmQ0NGI3ZDc4ZjRmZmNkM2Y0ZjVhOTg2YTcgbGVnYWN5LXRydW5rCiszMzI3MCA2MGI1M2RiMTRhYTNjYzQxYTJjZWVjODQ3Yzg1MGZiZjVmOGMyZDQ3IGxlZ2FjeS10cnVuaworMzMyNzEgYmU2MjAwMDdlYzFmNTI2NTIwMTg2MDFiZmJlMmY1ODA1NDE1NmE2NSBsZWdhY3ktdHJ1bmsKKzMzMjcyIDAxNjlhY2RmMmI1YmMyNjk3ZTE3YWUwMmQyNjU2ZmNkYzg1NjNhZWQgbGVnYWN5LXRydW5rCiszMzI3MyBjZDNmOWIxNzBjMzdmY2JjMTkyYTdjMGU1MDk4ZWViNjIyZGVhMDNjIHJlbGVhc2UyMi1tYWludAorMzMyNzQgY2FjODU1Mzg3YjU2N2I2OTY3MGFjOGRiZTY4OTc2M2I4ZjYzMGViYiBsZWdhY3ktdHJ1bmsKKzMzMjc1IDg2MzQyZmE4OTIwZGFmZTMwYmYxZDNmOTk1YmQ2MTQwNzkxZGVlNjEgbGVnYWN5LXRydW5rCiszMzI3NiAwYmRiNGFjZWQ2ZTIwZDg2NmNjMzVmODdmN2NjYzg0NTE1MjFkNTljIGxlZ2FjeS10cnVuaworMzMyNzcgY2QwOTNhOTkyMzhkNzIzNjQ3ZDkyZTI0YzdkNTU5ZjIzNmEzYjQ4YSByZWxlYXNlMjItbWFpbnQKKzMzMjc4IDQ0ODFjNWJkYTE5NjZhZDg2MGExNjllMzAwMWNlNjk3MDA5OWM0NjkgbGVnYWN5LXRydW5rCiszMzI3OSAxYmE5MGQ1MTQ5N2JhNjg1NzAwZDhmMDA0ZGZlZjA5ZjQ0MWRiMDFlIHJlbGVhc2UyMi1tYWludAorMzMyODAgYmFkY2QxNThkODFjYTIzZjYxNzlhNDk2Y2QxMTczZTIxMmVkZDFjZSBsZWdhY3ktdHJ1bmsKKzMzMjgxIDU4MjUxZTBhOGI3ODdiY2UzYjM0ZjVmNWZiYzA5YmIzODRkZjAwZWIgbGVnYWN5LXRydW5rCiszMzI4MiBmODA2OWY3ZWRkNGEyOWJmNmM1MDRjZGZkYzRhOTU0OTAxNGZiYjU1IGxlZ2FjeS10cnVuaworMzMyODMgNzdlZGEwZmIwZTE0OWQ0NzIwMGUyYjg0ODFlOThiYjJkMWEzZjY4NiBsZWdhY3ktdHJ1bmsKKzMzMjg0IGRlZDlhYmNiOTE3NGFhNzc0ZDJhNzU1MmQ0MWVjZDFlNTk5YTMyMDIgbGVnYWN5LXRydW5rCiszMzI4NSA3ZDMwNTg1YTU5MzQwNTUxNWY1MTRjNDgzNWU0ZWU4NjhkYWQxOTAwIHJlbGVhc2UyMi1tYWludAorMzMyODYgODUzZTZhMmI5MDY4ZWU2NDMyMTQzMTcxMTMwNGQ1ZmZhZTlkM2IxYSBsZWdhY3ktdHJ1bmsKKzMzMjg3IGE0NjQwMjBmMTVkNjc1Mzg4N2Y2MmE3NGIxYzA5OWQ2Nzg5ODQwZGYgbGVnYWN5LXRydW5rCiszMzI4OCA3ZDQxNzg1ZmI2MGM2ZTQ4MjdlZDZiYTVjZmU0YjVkNzdjZTQyYjVjIGxlZ2FjeS10cnVuaworMzMyODkgYmExMmQyYjRiMzFkZGJiNmFkNDkyMzI0ZmJhMTg1ZTg2YjFmZmU4ZSBsZWdhY3ktdHJ1bmsKKzMzMjkwIGUxZmEwN2JmODU0ODg4NWIwOTI5OTQ0ZWUwY2RkZDY5NDNmZDgxM2IgbGVnYWN5LXRydW5rCiszMzI5MSBiYzEyMTVmN2RiYTM4NmI1ZGJmNGRmMWEyMDk5YjNhNzQ0MTgwYjNlIGxlZ2FjeS10cnVuaworMzMyOTIgYTRkNmJjNzFmMDkxYzI3YzllNGFlOTJiNzFiZmY5Y2VmNzBkZTM4YyBsZWdhY3ktdHJ1bmsKKzMzMjkzIDQxMGIzYzIyMjIxMTRjOTg1YjczYWFlMTI2M2JmYzA4N2RjNDQyOGEgbGVnYWN5LXRydW5rCiszMzI5NCBmODgzZGIyNWQzNDQ0YmRlYWEzM2VjMDM5ZGZiMGU5YzAyYjMwN2JiIGxlZ2FjeS10cnVuaworMzMyOTUgNjc2YWE2MjgzMGQwZTk5NTJiYWQwZWE3MTUxOTkzMGEzMWU3ODQyMiBsZWdhY3ktdHJ1bmsKKzMzMjk2IDUzMDRiZmYyNWUxODM0YTYyNzY5ZmNhZjc3YzFiYWM1M2JmYzExMGEgbGVnYWN5LXRydW5rCiszMzI5NyA2YWE5NzJhMjFhYzRjMTcyZDY1MmQ1NmY4Y2VkOTY0N2NiMmY5ZmE4IGxlZ2FjeS10cnVuaworMzMyOTggMWVjZGI5NGExODUyMmY4OWVmN2NhMTAxZTY3ODExOWUyMmMyNmQ3YSBsZWdhY3ktdHJ1bmsKKzMzMjk5IDlkZTgyZGJjM2JkMDJiN2JiZTg3YjkxZjMzOGIxMDZmNjRmNWRhNDYgbGVnYWN5LXRydW5rCiszMzMwMCA5NzNiMWUyZTI3MjYzODE1ZDI4YmRlODBlYzAwZjhhOGJhM2Q4NTY4IGxlZ2FjeS10cnVuaworMzMzMDEgNWQ3ZTZlODI4MjE4N2Y1ZDM0MTdhM2MyNGMxZGU4N2ZjNDRlMjM1OCBsZWdhY3ktdHJ1bmsKKzMzMzAyIDdkNWE5YzFhMDE5NzA4NDYwYzFhNmVmZDNlZTZmNDVhZTUwNjFiM2MgbGVnYWN5LXRydW5rCiszMzMwMyBhZDJkY2E1Y2ZlODFhNzcwN2U4NjA4MTA5ZThhMzZjMzc3NGY0MmQ5IGxlZ2FjeS10cnVuaworMzMzMDQgNDkwOWFhNjQ0MDVmYjFjMjA2ZjBkNzRlNWQyMjI3Mjg2MGZkNTcwMiBsZWdhY3ktdHJ1bmsKKzMzMzA1IDU4ZjE0MWQxY2NjYTI5OTVjMTM5MjIxOGJmZGQ0N2I1Nzc2OTg4MmYgbGVnYWN5LXRydW5rCiszMzMwNiBmYTk3MjkzNTMzYTkxZjRkYzY5Mjg2YmRhNjkzNThkZmVlMTdkMzE5IGxlZ2FjeS10cnVuaworMzMzMDcgYTYzZWE3YzQ3NWNjNWUyODAxZDAxZjhkYmU3ZWRmODlkZjFlYmU1ZSBsZWdhY3ktdHJ1bmsKKzMzMzA4IDYxZjk4ZWQ0YjZiNThkM2JmY2MyNmY4NGQ4ODdiZjA2NWYxMzUwOTggbGVnYWN5LXRydW5rCiszMzMwOSAwNTA5YTc2NTIxNjdmNDhhZjNmZWExNWRkM2Q1OGZjNjQ1YzQxZDY0IGxlZ2FjeS10cnVuaworMzMzMTAgZDY2OGE4MzM2Nzc0NzgxY2Q3ZmEwNmZlOWQ5MmQzOWNjY2QxNTRjYyBsZWdhY3ktdHJ1bmsKKzMzMzExIDQ2MmRlOTMzMzI1MWNhODAxNDA0NzE2YmQ2NDQxMDI5MmZkNWM3MGMgbGVnYWN5LXRydW5rCiszMzMxMiA4YmQyNTgwZTAxNTU1MjFkZGUzNDc2MzEzYzE2Mjk5OGEyYzViYzliIGxlZ2FjeS10cnVuaworMzMzMTMgMzg4MTg4M2I5NDBlYzBlNDMwYjQ4NjM0MjExNWFkYWY1NjYxNGJiMSBsZWdhY3ktdHJ1bmsKKzMzMzE0IDBhMzc1MWRmNDE5NTJiNTRmOTA2NDljOTAxNjg2ZmQ5OGFlMmQ5YzIgbGVnYWN5LXRydW5rCiszMzMxNSA2MDQ1NDJlNTkxZmE2ODFjNjQ4ODc5YmI2Yzc0NmY2ZmU3N2NkMGZiIGxlZ2FjeS10cnVuaworMzMzMTYgMTZlZWQyZTk4ZmQ5MzU0NjhkYWQyY2E2MThjOWQwMjI2NjBhNTMzOSBsZWdhY3ktdHJ1bmsKKzMzMzE3IDY2YjZkMWNlNDJmZTYxZTIwMzk0OTM2YmFlYzljN2JmOWRhMGQ3NjUgbGVnYWN5LXRydW5rCiszMzMxOCBmOWI4ZDRiZjA4ZmI5YWQ4YTk4NjE4MGUxMTA4ODJkYjRmMzdjN2ZkIGxlZ2FjeS10cnVuaworMzMzMTkgNTgyODg3YmE3YTY4ZGQ3Y2Q0MjZmY2M5OGQ4N2Q3YmE5ZmVlODQ5OCBsZWdhY3ktdHJ1bmsKKzMzMzIwIDViMTA1YTk1MDMzNDhmYjJlZGFlYjViNDAyMmQwYzczMmM5NmFjNTAgbGVnYWN5LXRydW5rCiszMzMyMSA5NTUxY2RhZjZlN2UxYTg4NDIyM2FiZDZmZjM1N2UxNzZlMDExOTUxIGxlZ2FjeS10cnVuaworMzMzMjIgNjk2MTk1NDJhOTE2ZTM0M2QyYjM3MDE0MWYwMjcwMmMxNDc5ODFhNCBsZWdhY3ktdHJ1bmsKKzMzMzIzIDlhNGJjZmRkYmZhMTJmMTU0NTNiYzJiNzVmOTZhNWNjNWRmZjA2YzEgbGVnYWN5LXRydW5rCiszMzMyNCA3OTMwM2RlOWEwNWE2ZWYzYzg5MzJlNmU2NTIxMThkY2Q3ZmIzY2MwIGxlZ2FjeS10cnVuaworMzMzMjUgMTMwOGQ3ZWM5OTUzNTA5OWUzZWJmZmY1ZTAxZDQwNjY4ODBhMDllNiBsZWdhY3ktdHJ1bmsKKzMzMzI2IGNiOTNiODYyNTMyZjQ5MDMxYzJkMjYyN2E1NTA4YWQzMDNlNjVjNzAgbGVnYWN5LXRydW5rCiszMzMyNyAzY2IxODIxMjUyMWQzNDg5YjA1ZmM1ZGE4NDEwZmE1MjcwNmRlMGIwIGxlZ2FjeS10cnVuaworMzMzMjggZDc2MjZiODBkZTk1MTY5NGFmNjQ0ZWVhZmYyMTM4ZWI5MGFjMjJhYSBsZWdhY3ktdHJ1bmsKKzMzMzI5IDcxMGMwOWY0YzA1YTIzZjRlMzI0YTZhNzc3OGJiMjRmNTk1ZDNkNjggbGVnYWN5LXRydW5rCiszMzMzMCBiYTc1YWY3YWIxMzZmMzFhOWQ4YmM4ZGJkZjZlMmE0ZjUzMmYwN2YxIGxlZ2FjeS10cnVuaworMzMzMzEgMzZhMTc5MDRhM2VkMDA2MGU0YTFjYzk3ZmQ3OGFlODhmOGQ5NTA3NiBsZWdhY3ktdHJ1bmsKKzMzMzMyIDk2ZWNhYWI0Y2JhNjgxMzhjNWM1Nzg5MDVlOTc1NjFhOWQxZThjYzAgbGVnYWN5LXRydW5rCiszMzMzMyBiZTk5ZjU5NzA2ODg5MGNiZmNlMjdjMDNlOTJkNzRjZTBkNDU2MDQwIHJlbGVhc2UyMi1tYWludAorMzMzMzQgNjZkYzA1MDEwNDdkNGMyNjA5N2FjNjZiYmM4OTVhNThlMDRjZWQxOSBsZWdhY3ktdHJ1bmsKKzMzMzM1IDRmZjgzYzBiNDVlOTI1MjJiMThjZDU5ZmQ1MDIyMjE1Nzc3NWZkODggbGVnYWN5LXRydW5rCiszMzMzNiA1MTM5N2VkZDJiZDRkNWQzNmE4NTczMjU5ODIzYWM1NTc4ZWNlYjEzIGxlZ2FjeS10cnVuaworMzMzMzcgZjA4MTE0N2MwYzhhZmFiNTQ4NGRkMzhjZTc3ZjU1OGE2OGIyNWNlNSBsZWdhY3ktdHJ1bmsKKzMzMzM4IDI2OTJiMWM5MmU4ZDkxYTM2MmM1MjA5YzJlNDE3ZjkzMjMyNTA3NDMgbGVnYWN5LXRydW5rCiszMzMzOSAwNTJiZmNiYWJiN2I5ZDkyZjFhYzk2Y2UzNWYyZDdhYjdmNjRkNzk1IGxlZ2FjeS10cnVuaworMzMzNDAgMzY0MDI3YTgxNWI4Y2YyNTMxZTI1YzI5MTg3NTExNGQ5YWFiMzFiYiBsZWdhY3ktdHJ1bmsKKzMzMzQxIDI4MGZiZTVmNGUxNmVjYzZjZWI2NTNiZWRhNTVjZmZiYmQyNjdkZjYgbGVnYWN5LXRydW5rCiszMzM0MiBkMGYxNTk3N2YzN2Y0NzUyYzVhODc2MWM0Njk5NjZiM2QyYTkzODBiIGxlZ2FjeS10cnVuaworMzMzNDMgNGUxYTQ3ZjUyMDRjYmU0MTk4NjU0ZTMzNTE1NTJjNjhhOTBhYjMwYSBsZWdhY3ktdHJ1bmsKKzMzMzQ0IGMxNDlkZDRjZmQ2NmRmMWFmMWE3OTMzMDExOGRiYWFkOThiOTU2MTggbGVnYWN5LXRydW5rCiszMzM0NSA5MjA3Nzc2NDBkMjg5OGQ3NzBkOTdjYzdmZmFiZjMzODEzYzhiMTM5IGxlZ2FjeS10cnVuaworMzMzNDYgZDM4ODBjMjM3NjI3ZmFjNWM1N2U0ZDU3NzRiYWQ4MDFmMGI4ZWI5ZSBsZWdhY3ktdHJ1bmsKKzMzMzQ3IDZkOWVkNTRhNDgyMTkwYzczNTJiYzBkMWNlMTk2MDMzYmJmNTNjYTggbGVnYWN5LXRydW5rCiszMzM0OCBlYjBiNjdlM2MwNGVjNTY3YTI5YTdlNzQxNTcxNDc3OGEzZDllOWFiIGxlZ2FjeS10cnVuaworMzMzNDkgMzcxMDkyY2U1YzJiYzMzY2Q1ZjgzMDk3YjhjOTRkZjNkMjdmZDQzNCBsZWdhY3ktdHJ1bmsKKzMzMzUwIGM1YmIzMWU0NWM2Njg3NmIwMDg0NTYzMzhhNWIxNzUyMTk1ZTQwMWUgbGVnYWN5LXRydW5rCiszMzM1MSA5ZmU2N2Y3ZjM0NTlhYjU2Nzk4YTViZWE3ZTRiN2EwYTFjNzlkNTgxIGxlZ2FjeS10cnVuaworMzMzNTIgN2EyNzY2YzlhN2I1OGM4NzY4ZjNiNDkyOTc3NDE4MDFhNzQxNTk4NiByMjNiMi1icmFuY2gKKzMzMzU0IGY0ZTJlNWE1ZWM2MjJiMTE3YjhiNmM4YjE2OTQ3MDg3NzY2YTc1M2EgbGVnYWN5LXRydW5rCiszMzM1NSAyNWI5ZmQ2ZDhlMzAwYjQwNDU1Mjk1YWIxZjZjZDg0OTBjMzFhNWIzIHIyM2IyLWJyYW5jaAorMzMzNTYgNzJkY2M2M2Y0ZGVhNmI2ZjBlMWY1NTVkNmZiMzJkZjFiYTU4YzQ5NyBsZWdhY3ktdHJ1bmsKKzMzMzU3IDg0MmQ5ZTMwZGI5YzM3MjZmMDhjNDM5YTBiN2M0NjZkN2UxNTY2ZjYgcjIzYjItYnJhbmNoCiszMzM1OCBlZjdhMWQyODU3NzE0OTQ3YjY1NDNiNmIyNTVkZmQ3YmJiYzhkZTUyIHIyM2IyLWJyYW5jaAorMzMzNTkgZjRmMTFlZDNhZTQ0MDllNzZiZmQ2MjA0ZWFmZjEyYjllMzk1NDg0NSByMjNiMi1icmFuY2gKKzMzMzU5IGRjMWIxYzdhNmI5ZTY0ZjdhMjExZWE5ZThhN2RhNDgzYzJiYmExNjcgcjIzYjItYnJhbmNoCiszMzM2MSA1MzdjOGIxYWVmN2ZhYzg4NjZlNmRiYmJlNDNkY2IyNzMzNmY0MmQyIGxlZ2FjeS10cnVuaworMzMzNjIgYzRmOWZmMjkxMjI5YmM4ODQ2YjE1YzY2NDI2Mzk0ZGI0NWQyZDE5YyBsZWdhY3ktdHJ1bmsKKzMzMzYzIGQ3MTY0ZmJlYzdjZTE0MDM5MWJiYTY4ZWZjMDI4OTYzMmUwNTk3YmYgbGVnYWN5LXRydW5rCiszMzM2NCAyNmJhNzFhYTViMjE1NTU2YTczZjU2YjVhZmM2YmU3YWI4YjFkODU5IGxlZ2FjeS10cnVuaworMzMzNjUgZDBkYzk1NjQ2N2JmMWI2Y2M2Zjk0YjBlMDkwYTZhOGIxNDQ3ZTkzMiBsZWdhY3ktdHJ1bmsKKzMzMzY2IDNlZDJjOWE3Njk2NTY4MzM1MmVlZWQxNjZmZTYwZjEyZjk1MzgyOWQgbGVnYWN5LXRydW5rCiszMzM2NyAxZDc2Mzg2MmQxYTFkNzAyZDkwMTM2MmQ3OWQ3ZjEwYzc3MWViZGM5IGxlZ2FjeS10cnVuaworMzMzNjggZjFjMjc5ZDcwMGE2ZDZmMGNmZTc2MTM4ZjM0NjA2OTkwYzJlZjhjNCBsZWdhY3ktdHJ1bmsKKzMzMzY5IDhkYmM0ZWM1NzIwZGJkNWYzZDk5YzVhNTY0NmJhY2ZjNGI3N2U2MGYgbGVnYWN5LXRydW5rCiszMzM3MCA2NDgzZWVhZWFkODJjMGViY2ZlMjZkYjU2MjQ4ZDc0MDM3MDU0MzUwIGxlZ2FjeS10cnVuaworMzMzNzEgN2I2ZmE3YmIyNGYwNjQ2ODRmMzgwNTMwZDU0NDZlYzdiZDQ0NTE4YSBsZWdhY3ktdHJ1bmsKKzMzMzcyIDhmZjA0MGU5ZDU2Njk1MTJhMmM3ZTI5Nzc1ZjFkOTdhYzRiNTEwMmYgcmVsZWFzZTIyLW1haW50CiszMzM3MyBkNjc3NDI0YzljYTcxMDU5MzE3MjRhMjdlNzc3M2U2MDM3MTA5YTczIGxlZ2FjeS10cnVuaworMzMzNzQgODkxZTU1MDJlYzllM2IxMThkYjgyMmVlNjgxYmQzODBlYTJiMzExNyBsZWdhY3ktdHJ1bmsKKzMzMzc1IDE1MzY5NDFiNTQ3ZjA2ZDNjOGIyN2U3ZGU4NzFiYzVmOTY4YmY1YTQgbGVnYWN5LXRydW5rCiszMzM3NiBhNGZlYWQwZTI0ZjhhZWZjYmI5NDQ3YzFkM2ZlMTljZDc5ZmYxOGRkIGxlZ2FjeS10cnVuaworMzMzNzcgNzYyZTJhMjk3YWI5N2EyMWJkN2U1YjYwZGVkNzNjMDg1MGMxOTQwNCBsZWdhY3ktdHJ1bmsKKzMzMzc4IGUzODE2NGFhNWJlNTEzYjdkYjhiMThjYjczMmVmYzFiYjczNjkzYTMgbGVnYWN5LXRydW5rCiszMzM3OSAxZjM1NDdkNDkzOWZkYzg2ZTcyYTgyOGUyNTNiNjUxYTlkZmE2Mzk2IHJlbGVhc2UyMi1tYWludAorMzMzODAgNGQyNjU0N2ViZmMzODg0YzYzNGIyYzk3YTRjNTdkYTg5ZjU4N2FjYSBsZWdhY3ktdHJ1bmsKKzMzMzgxIGQ4ZDE5NzU1MWExZWRiZWVmZWFlMmQ4ZTVhNDMzZjIxMzg0OGIwMjEgYXN0LWJyYW5jaAorMzMzODIgYjc1MjhkYWU3NjU2N2IxZjVmMTE2ZmE2OWRmNjIxMDY2YTM4NDIwMyBhc3QtYnJhbmNoCiszMzM4MyA1ODEzMmM4MTNkN2JlOTQ1ZWE3NmQ4YWY4YTdlODkyMThjYjUxOGYzIGxlZ2FjeS10cnVuaworMzMzODQgOGVkMmVkNzc4Njk0MTY1MmUyOGM0NzE1ODVmMzhkOGI1ODhlM2ZlMCBsZWdhY3ktdHJ1bmsKKzMzMzg1IDI5MmU4NDQ2NmU3ODE5NWQ0ZjU2MzdjNzNmYjJmNWUzNzQzNTdmYTcgbGVnYWN5LXRydW5rCiszMzM4NiBiZjA2MzRjYzBmMTc1MDhmZThjYzdiZWM3OWRmYTk4OTNmMGJlM2M1IGxlZ2FjeS10cnVuaworMzMzODcgZTk1MzFlZTVmMTg4OWY5OGQxNTQyMjhhYjFiZTJlZmNhOGNlMDVhYSBsZWdhY3ktdHJ1bmsKKzMzMzg4IDlkMzNkZDJjY2ZlNmE2ZTk3NmZmMTFlNDM2NWVlNTE0NTdjNTk0YWIgbGVnYWN5LXRydW5rCiszMzM4OSAyYTVlNmNlM2YzYTE1NzUyMGE1YzQwYjA1MDYyODVlMzEyYjQ1ODhlIGxlZ2FjeS10cnVuaworMzMzOTAgNzI0ZjJlZDc5ZGE5YjNkMzZkYmU0NmU4OTM1MTQzZDg4NDZhMjEzNyBsZWdhY3ktdHJ1bmsKKzMzMzkxIGZhNGNmODc4YzUzODQ0OGM4ODA2NjliZDI5NWZjMThiOTk4ZDdjOGYgbGVnYWN5LXRydW5rCiszMzM5MiAwNTJmZTk2Njg0ZWFiNmQ4NmQ5NjJmNTQ3ZDg5ZTk5YjMxZGNiMjRlIGxlZ2FjeS10cnVuaworMzMzOTMgMDllNDJmNzlmODMwYmRmMjQ5ZDI4MzgzYzRkYzVhYmQ0Y2MxMmM5NSByZWxlYXNlMjItbWFpbnQKKzMzMzk0IGE0NGQyNjdmMDE2MjlmYTRjMzMwOTQzODYxZjA2ZGI0MjAzYjYwMWMgbGVnYWN5LXRydW5rCiszMzM5NSBjZGIyMTdhOGViMDQ0NWRjOTgzN2JkZGMyOWQyYWM2OGJjZjUzYjNlIGxlZ2FjeS10cnVuaworMzMzOTYgM2I3YjRmZDVmN2NhZDU2YmU3ZjBhYTFhZDFlNTI5YzE2NGFmYTMwMSBsZWdhY3ktdHJ1bmsKKzMzMzk3IDdkMGFmNDU2MWVlZDFkZTA2ZDUzNzQyN2UwZjhkNzEwODI1ZmNjNmIgbGVnYWN5LXRydW5rCiszMzM5OCA4NWU1MmVjODU2Mjk5NzY3MGMxOWM1YThkOGU2NTEzZTExNWY5YWM2IGxlZ2FjeS10cnVuaworMzMzOTkgOTYyZjQ0M2FlMWQ5MWIzODQ0ZjdhYzVjNGYyZDVmZTI5N2FkMDk4NyBsZWdhY3ktdHJ1bmsKKzMzNDAwIDRjOTBhNjMxZDYzMmVkZmU0ZTYxMDAxZDg5ZDJiMzc1Njg0ODc4MTAgbGVnYWN5LXRydW5rCiszMzQwMSAzNzIxNmUxYzY3NDcyNGUwZDA1ZjRhZDAzMWIzMGU4NDIxNTIxY2Y2IGxlZ2FjeS10cnVuaworMzM0MDIgMGUxMzFlMjk0NjYyNWU3NWNmNzgyZDBmY2Q2MzEyOWE1NDVhZWQ2MSByZWxlYXNlMjItbWFpbnQKKzMzNDAzIDQ1MmUzM2EwOGQ1NTcwYTA2ZjhmM2Y4ZThkZjk0ZDRlNjYxNThkNmIgcmVsZWFzZTIyLW1haW50CiszMzQwNCAxMjQ3Zjg0YWE2YTZjMDNjOTE1ODViNDBlNThhMTVmMTM2NzJlMTM4IGxlZ2FjeS10cnVuaworMzM0MDUgMzliZTViMjYyNzkyYzk4MDBkZGRmYzFmNTgyZGM0NjllMjdjYmVhZSByZWxlYXNlMjItbWFpbnQKKzMzNDA2IGY0MzI5NmNiYzk4NTAxMzRlNGFiZmMxMGU0MDA1ZTc2NmFmMWU3ZDkgbGVnYWN5LXRydW5rCiszMzQwNyBlODUwY2M1MWMyOGZkODhmN2Y1Zjk0NDZhMmUwODBhMzkwNzg4MDI2IGxlZ2FjeS10cnVuaworMzM0MDggNjVlNTJjMjQ3NWNlNTEzNTk0ZWQ5YmI2Y2M0NWY3MmQ3OGY0YWQ1YSBsZWdhY3ktdHJ1bmsKKzMzNDA5IGE1ZTczMzZjMDA4ZDM4YWRiODllMjE3ZGQ3YmExNDIzMGZhOTQ0NGYgbGVnYWN5LXRydW5rCiszMzQxMCBkNWYyN2U2N2UxYWFlOGNjY2NlNjE5MTkxOGJjNmZhYWVhZTIzYjVkIGxlZ2FjeS10cnVuaworMzM0MTEgM2FkODk4YjhmODEzYWM1NWYxNTMxYjg0ZjBlODQ3MWM4ZmE1NDlmZiBsZWdhY3ktdHJ1bmsKKzMzNDEyIDRjOWVmMmE2Mjg2NGQ1YWI4OTFmYTc2NGY4YjdlNjAzMjczZWU0NWUgbGVnYWN5LXRydW5rCiszMzQxMyA4Y2E5Y2UzNmEyMDZmZmQxYTg0M2I3NGY4ZDA4MGRiNDg0ZjFlMzA1IGxlZ2FjeS10cnVuaworMzM0MTQgNjg4MzViZjEwMWVjYjEzY2M5NTc0ZWZjZDg4ZDk5NmU2ZGZjMWIwMiBsZWdhY3ktdHJ1bmsKKzMzNDE1IGI5YzQwZmRhNjA5ZGJmNzY2YmNiY2VkMDhjYzZkMzk0Y2Q2OTkxMGEgbGVnYWN5LXRydW5rCiszMzQxNiA0ZjkyOTNjYTJkZTYxMmIwMzUxYTU5ZmE3MmJhODdjN2JiN2YyZDRmIGxlZ2FjeS10cnVuaworMzM0MTcgMzJmOTZiYWMyMTEzY2YxZDY4YmZhNDBjODUxMDNiM2NkYzhiYTI2MCBsZWdhY3ktdHJ1bmsKKzMzNDE4IDYxZmI5OTZlYmE2ZTBlYjAwYjU5M2JhMmIzMGYyZWUzODViMTJmOGQgbGVnYWN5LXRydW5rCiszMzQxOSBlYjgyOGM2NGZjYzdiYWVjYTAwN2VmZmU4ZGZmOTI0NGMxNjY4MzYzIGxlZ2FjeS10cnVuaworMzM0MjAgNWFmODkwMzdjZWJhMDgxNWY3MDllZDNhMzBhNTc3MTIzNWZiMWU2NCBsZWdhY3ktdHJ1bmsKKzMzNDIxIGFjOWExZjBhMzNkYzhlZTdhODBjOTVmNzM0MTYzYWY4NWM3MjUzOTIgbGVnYWN5LXRydW5rCiszMzQyMiBiODY0NDZmMDM1MGZmMDE4ZDg3ODIwYjExMDIyNzJkODQxMjg2YzIyIGxlZ2FjeS10cnVuaworMzM0MjMgYjU4MjFlMTc2NDUzODAxMmI1MTE4OTU2YmM5Y2Q3NGNlOWZjMTZkYiBsZWdhY3ktdHJ1bmsKKzMzNDI0IDlhNDQyZjRhNjQ0M2RkMWQ2MTQ1MmI4YjkyZWMzMjJmYzY1NjY1M2EgbGVnYWN5LXRydW5rCiszMzQyNSBiNDRkZWVlYzVjNWVjOGZjMmIwNzIzY2VlOTdjM2IwNjhhMzU2Yzk0IGxlZ2FjeS10cnVuaworMzM0MjYgMDc1YjI5YWQ5N2MzMjFkNTdkNjM1N2IwMmQ3MWY2NDE1NjkyNDI1MSBsZWdhY3ktdHJ1bmsKKzMzNDI3IDU5ZGE1YjU3YzYxYmFjZDIyOWVkN2M1MWM1NDliMjQ2Y2VlNzQwNmMgbGVnYWN5LXRydW5rCiszMzQyOCAzYzFmNzgzNDBiNjVlODYyZjAwNjNlYjgyY2I3MTUxYjAzZDYxNmU1IGxlZ2FjeS10cnVuaworMzM0MjkgYjQ5M2E3ZTc1ZDk3N2ZhMmEyYTQzY2IwMWVkZTM1NmU5MGU3NTEyMiBsZWdhY3ktdHJ1bmsKKzMzNDMwIDA1OTFmZDk1NmI5ZDI4NTdiYjIyMWRmNDBlYzRhZjJjYzMwYWUxODIgbGVnYWN5LXRydW5rCiszMzQzMSA0ZWM4ODBjNTNlMmEzMDdkZTBjMTZkY2I0Y2Y1NTk4ZDM2ODljZGM5IGxlZ2FjeS10cnVuaworMzM0MzIgOWViNmRjZWQxNmU2YmUwNzc2NTg4NTdjMDQwYjFlZGNjZGQ1Y2FjYSBsZWdhY3ktdHJ1bmsKKzMzNDMzIDc4YzUxMDlmZmFkYTA2MzE5Yjc5MDkzMzcyMmZhZTYwZTRmYTU0MGUgbGVnYWN5LXRydW5rCiszMzQzNCAwMDU3NjVhNTZlYzM5YjIyNjAyYTYzZjE4ODcyNjQ4MGQ3M2E5ZjAxIGxlZ2FjeS10cnVuaworMzM0MzUgYjg0Y2MzYzc4MDhmODIzOTdmOWE3YTk5YzRlOTkzNWU0NDA5OWJhMiByZWxlYXNlMjItbWFpbnQKKzMzNDM2IGZlNWViMTc4MDBmOWMzMWI0N2Q0NTViZTNkY2U2MjJjMTA5NzQ0NmUgbGVnYWN5LXRydW5rCiszMzQzNyBlOWU1ODMyZDcwNmZmMWEwOTMwODUwMWQyY2QxMTAzM2ZhNGVkZjJkIGxlZ2FjeS10cnVuaworMzM0MzggN2E0NzhkMTNmMjdkYTMzNjljNmU5YjZmNjZlNjQ5NzFjNGIyYTdhMyBsZWdhY3ktdHJ1bmsKKzMzNDM5IDc3NzBiNzg4MTM0NmQyZTVmZjI3NzU5Y2QwMTZiMTY1Zjk5ODNmYjMgbGVnYWN5LXRydW5rCiszMzQ0MCBlZGE1ZDAxNWUxMWMxODYzNzc4ZjM4YzlkODIyMzUyYzNjNTE2NjNjIGxlZ2FjeS10cnVuaworMzM0NDEgMjhjZmE1NDZmMWVjNzY0ZGUyMzEwNjY2N2ViYzhlNTJhZTNhZGUwYiBsZWdhY3ktdHJ1bmsKKzMzNDQyIDA3MDM0NWFkOGQ3MWNjYmFhZDI3ZWFiNGU4ODhiN2M1MzQ1MmVmMTUgbGVnYWN5LXRydW5rCiszMzQ0MyAzMmVmZTU0ZDBlOGZmZDE4ZjAzNzFkNGYwYjFiYTRkMzhhMjFmOTJlIGxlZ2FjeS10cnVuaworMzM0NDQgZGRjMjQ3NDA0ZGFiM2VmMGY5NTY2ZjFhY2VhM2MxZTYyMTdiZmRjYSBsZWdhY3ktdHJ1bmsKKzMzNDQ1IDhlMjdlNWNkZTU5YWVkMTkzZDc4MTNiMzc0NmFkNzdhYzVmNTU2MDQgcmVsZWFzZTIyLW1haW50CiszMzQ0NiA5Mzk2MTM0Njg0Y2Y1OWM5MzQwZmFlZTFmYWIyYjIyY2YzNzJhYjM2IGxlZ2FjeS10cnVuaworMzM0NDcgZTZmOWY2YjVkOGQ3ZTcxMDEzYmJlNjdlOTFhMzQ1MjVjYWI4NmZhYiBsZWdhY3ktdHJ1bmsKKzMzNDQ4IGY3MzNiYWM3OGY4N2U0ZWZlODU0MzAwMTIzNGIxNGZiYzYzZmQ3OTEgcmVsZWFzZTIyLW1haW50CiszMzQ0OSA3MDU2Y2M1YzgxNjdmYzJlNGEzMzNmZDhkYzQzNmZlNDIzYzBkZTZhIGxlZ2FjeS10cnVuaworMzM0NTAgY2U5ODgzOTRjNzU0NzhmZGUxYTdiN2U5Mzk1YjYzZTE4MTY2Mzc3OCBsZWdhY3ktdHJ1bmsKKzMzNDUxIDJmY2RlMzJhOGE1Nzk5ZTU4NDM4NzZiMGU5NzhkOWRjYWY0NzQ3YWQgbGVnYWN5LXRydW5rCiszMzQ1MiBkYzZhNDY3MzE4NjA2Zjk4NTg2ZGE5Nzc1OWZjMTk5ZTZmNjhjMGQ2IHJlbGVhc2UyMi1tYWludAorMzM0NTMgZDdhZmNkYzY5ZWQ0OTFjY2I1NzVlNmI2MWE3OGFhMjliODEzNGFiNiBsZWdhY3ktdHJ1bmsKKzMzNDU0IGM3M2ZhZjVkZTFiZDNkMTQzYmZhZGFjNTI2Y2ViY2U5MGI0ODVkN2IgbGVnYWN5LXRydW5rCiszMzQ1NSA0NjZhNTQwY2MyMjlmYWIyOTg0Y2E0Nzk5ZjdjNTdjOGU5NzY1MDRkIGxlZ2FjeS10cnVuaworMzM0NTYgNGZjNTZjYWU0ZWI4YzE2NWRjMjAyNzQ3MzFkY2JiMWQ4ZTc1ODM1NyBsZWdhY3ktdHJ1bmsKKzMzNDU3IDMxZDkyMzU0ZjcyZjA5ZGViOWM2N2YwOWQxODE2NjY2MzY4NmI5YWUgbGVnYWN5LXRydW5rCiszMzQ1OCBjOGZiNGFmOTZkZTBlNWJlZTIwZDA5YzUwMTg4MDI2M2FmYWZhZGNlIGxlZ2FjeS10cnVuaworMzM0NTkgNGJhZmZlMTRjODg3NGExMmQ5M2FmMjg5ZTAyOWFjZWFkNzczODg4YSBsZWdhY3ktdHJ1bmsKKzMzNDYwIDJlODRmZGI0ZmUzMGQ3YjlmZDg0YzMyYzhiNTU0MzBlYzZiNzI5YTIgYXN0LWJyYW5jaAorMzM0NjEgOTAzNWZlNzY4Njg5ZDg5ZTJhMDVhZDA3N2Y3MzhiNDdiMWMxZGVkNyBsZWdhY3ktdHJ1bmsKKzMzNDYyIGRlZmExZDgyNWIwOGNkNjI0YmYwYjFmZDk2YWZkZGNlNjA5ZjU0MjMgbGVnYWN5LXRydW5rCiszMzQ2MyAxMDM3ZmVhY2I1NGZjOTk4YWM4NzI2Y2MxODYxMTA4NGFjYzM5ZmRmIGxlZ2FjeS10cnVuaworMzM0NjQgYzcwMDYzYzNhZWViOGRmNzQ1ZmEyZWRmNzgzYWU0YjU0YmVmZDQ5YiBsZWdhY3ktdHJ1bmsKKzMzNDY1IGNmYWVkZGU1MGJkNjQzMjY4ZWM3Y2YwYmEwZmU1OGM3MWVkYmYyYWEgbGVnYWN5LXRydW5rCiszMzQ2NyBlNmE3OGRkNDI1YzhlMGFhZjkwMzczMDkxNjU1MjkzYmQyOWUwZWQ2IGxlZ2FjeS10cnVuaworMzM0NjggOTRlNWQxYjhmNjk2OTg5Nzc3ZGE1ZWUyY2Y3ZTA4MWZiYTU3YTgwMyBsZWdhY3ktdHJ1bmsKKzMzNDY5IGQ3ZTFhMWJkNDg4MGI3NjFhNzAxYmY1NmY4NzI1YTI5NGFhNDI5MTMgbGVnYWN5LXRydW5rCiszMzQ3MCBjNDQ5NjYzZmEyN2RlMzliYTc2ZmE4OTc4NWM4MTRlYzk4M2M2MmM4IGxlZ2FjeS10cnVuaworMzM0NzEgYmJjMzZlMGUxMGExNTc5MjkwODFkMTM5NDcyMWNkN2M5MzI3ZTcwYiBsZWdhY3ktdHJ1bmsKKzMzNDcyIDU3YjkzYzk0ODMwYTM0ZTIwYWJmMTcwYWFkMWJkZjZjZjY4MGI1YzEgbGVnYWN5LXRydW5rCiszMzQ3MyBlNWI5OWU2MDU5MjYxNWQyY2QwMTIwMDA3Yzk3ZDU2ZmI0ZTI5OTg0IGxlZ2FjeS10cnVuaworMzM0NzQgMTI3MmY3OTU0N2JhOTE2MTE5ZDg2YzY5MTY1MjU2MmFhNzM0ZTBhZiBsZWdhY3ktdHJ1bmsKKzMzNDc1IGJhYjg5ZTQwNmYzMGUyNDViOWQ3YTI5MTQyZDRmNzc1NTY0NDVkYjggbGVnYWN5LXRydW5rCiszMzQ3NiBkMjgzYjE3MzNjMGQ3YTU3N2NkNmYyYjliN2I0Y2ZiMGY0N2QwM2FlIGxlZ2FjeS10cnVuaworMzM0NzcgYWMwZmMwODkzYWFjZjMzNzUzOWRjNzk3NjRmOTdmZjE2ZmU2ZWE1NSBsZWdhY3ktdHJ1bmsKKzMzNDc4IDBkZjExYjJiZmNhNTE4YWE2YTVmZjlmY2JlZGMxMzkzODk1N2I3MGQgbGVnYWN5LXRydW5rCiszMzQ3OSAzMjgwMzU1MzI5ZGQzOWJiNDkyMDA0NTY5NzU1MjgwMWVlMWIyNWU3IGxlZ2FjeS10cnVuaworMzM0ODAgNWIyMWM3MDAzOTc0NWU2NDkyMjM2Y2I2ZDAwYjk5NTkwMjVjYjViNyBsZWdhY3ktdHJ1bmsKKzMzNDgxIGM5YzZlMmM5ZWM5NzVjODViNDhlNDFmMDYxMGZjZjVkODM1M2ZkM2UgbGVnYWN5LXRydW5rCiszMzQ4MiAyYjE3YWQ2Njg2NjZlNWU4Y2E2MGE4MzIxYzAwNmM0YjhhNTJjM2M4IGxlZ2FjeS10cnVuaworMzM0ODMgOTkxNmI1OTI2MWQ3NjMzNWFkZDhhZTgzMzZmYzNlMjExNTBkODE1NyBsZWdhY3ktdHJ1bmsKKzMzNDg0IGUwMmE1ZDE4NDlmOGQ4N2NiYjc4MTk1ZmZkZjc4ZDA3Mjg3MjljNDIgbGVnYWN5LXRydW5rCiszMzQ4NSA2NDQzYTBmZWU3ZTEwMTQzMDNjMmIwMGFkYjJiMjQwZTMyNDMyZTcwIGxlZ2FjeS10cnVuaworMzM0ODYgM2I0MWM2MzNkNzY5NmI5NmY1NDZhMjg5NGQxNWZmZjNlYjlkMGI0NSBsZWdhY3ktdHJ1bmsKKzMzNDg3IDdiZTI0Y2M2YzI4ZDdiYTU1YzhiM2NmMGNjNDAxMDU1YTI2MjM2ODQgbGVnYWN5LXRydW5rCiszMzQ4OCBjYjNjZTdjZWMyNjEyZjE5M2Y2ZWJmOGI4YzA0Mzc4NGRkNmQzNGM0IGxlZ2FjeS10cnVuaworMzM0ODkgNDgzN2JmMjE2YWU1ZjUwZDcwMGUzOTI5MTdhM2M0ZDRhNjc1Zjg1ZCBsZWdhY3ktdHJ1bmsKKzMzNDkwIGVkNDMxNTViMWQzYzkwNzk2NTVlOGFkZmUzNjY1ODk0MTNhMTEzNTcgbGVnYWN5LXRydW5rCiszMzQ5MSBkNGZmYjA0OTBhYzI3ZGQ0YjE5ZTJmNDNlMDRiOTdmZjkxYjNhOTFlIGxlZ2FjeS10cnVuaworMzM0OTIgMDcxNTAxODI0YmJkOGQ5MzA3NDU1ZTc4MWNmODEzMzQ3M2UwNDBlNCByZWxlYXNlMjItbWFpbnQKKzMzNDkzIDg1OWNiZDdjOWI0ODE0MGYyNTk3ZDgyZjcwMDc2ZGEwN2I0MmI2YmEgbGVnYWN5LXRydW5rCiszMzQ5NCAxZGMxNTg2NTJlNWIzNzNhNDJmZmU1YTY2NjE4ZWM4MDcwOTllZjRiIGxlZ2FjeS10cnVuaworMzM0OTUgZTFhNmJmNDU2NWNkZTRlNDdmYzZiMjE2MWZkNzA2NzUyZmEyMzZmMCBsZWdhY3ktdHJ1bmsKKzMzNDk2IDQ1NjkxMmFkYTY5ZmY5MWRmY2QxYmY5YzZhZmI1MjViOTg1MDVjNDAgbGVnYWN5LXRydW5rCiszMzQ5NyBiYTVmMGI4MDgxOTI3YjQ2MjI4OTBmNDQ5NmI2ZDcxYzg5YzU0MTU4IGxlZ2FjeS10cnVuaworMzM0OTggMzdiYzIzYzZjZjZjOTIyMTJlNGJmYTVmNGQ1YmJiNWU2MTNhZjVjZSByZWxlYXNlMjItbWFpbnQKKzMzNDk5IGEzNzEwNmFjN2M4Y2MwMTdlOTBmMDkxYjI4ODk1MzZjNTM1MzIyZWQgbGVnYWN5LXRydW5rCiszMzUwMCBlNmVkYjA0MGE3N2Q0YWNlOTgxMTYyZjI0ODg1YmE0NmVlNDBkMjY0IHJlbGVhc2UyMi1tYWludAorMzM1MDEgMmVjMmY2MjA4N2NiOGViYmMyMjRkYmQ3ZmI5YzczMzVmODZlMjA0YiBsZWdhY3ktdHJ1bmsKKzMzNTAyIDVlODFkOTJiZjY3ZGIwMDZmNGE2NjY3ZmQzNjY4MGRjZTdlMTU4YmQgbGVnYWN5LXRydW5rCiszMzUwMyAwOWRhOWU1NjU1NWQ4MGNjMmU1OGExMzI3NjA1NmE4NzVkMmQzZDE5IGxlZ2FjeS10cnVuaworMzM1MDQgNDAyOWE3MjZmYWE2NTUwMzY4MmZlOGZiZjJjMjVkZmU5MWUxZTkxNiBsZWdhY3ktdHJ1bmsKKzMzNTA1IDkyZjFlZWFlYjQxZDc1MTkzMjczMWQxZTU5ZmZjNDJlZTg3ODA1ZGQgbGVnYWN5LXRydW5rCiszMzUwNiBiOTgyN2MwNTQ2MGYzOGY4YzE5YTIyOGQ2NDAyYmNjZjJlYjQ5OGNlIGxlZ2FjeS10cnVuaworMzM1MDcgZDQ1ZDMxN2ZkYTM1MWFkYjU0NmU0YWU3MWJiYWFlZTBiYjVkYzdhMiBsZWdhY3ktdHJ1bmsKKzMzNTA4IDc3OGIyMTUyMGRiOGI5NGVhZjE5YzI3MTkxZmYxZmFkYTlmYjVkZWQgbGVnYWN5LXRydW5rCiszMzUwOSA4ZDQ1YTRjZWE5MzQzN2U3YzU0MTQ0ZGIxYmEwOGQ0ZDJlMWQ3YmYzIGxlZ2FjeS10cnVuaworMzM1MTAgZTU3YTliYmVlYzViMjc3Y2RmMWQwMjZjMTRjY2U4NDE5OGViMzNjMiBsZWdhY3ktdHJ1bmsKKzMzNTExIDY0MTk0ZTc3NWIwYmMyOGMyNzUwZTA2N2FhN2VmNDRlNjBlNjYyNWEgbGVnYWN5LXRydW5rCiszMzUxMiBmZTc5YTVhYjM5MmI4NTkwNWE4Mzg0YjNhZDhkMDJiYjlkMTZkZDFmIGxlZ2FjeS10cnVuaworMzM1MTMgMmQ1YmVjZDkwMGVlYjU2NjZhMjg3MGYzOWQxZjk3MTQ4NDZkZTRhMyByZWxlYXNlMjItbWFpbnQKKzMzNTE0IDA2Y2NhMzI3YmFjZGZhYjc1NTJiMTBiM2JkNzBmOWUwMmNhY2M3NzcgbGVnYWN5LXRydW5rCiszMzUxNSBkZDhjYTA4M2VhNjY3ODgwMjQxNzU1OWQxN2EzOWMyZmEzYTE3MDVmIGxlZ2FjeS10cnVuaworMzM1MTYgMDE0Y2MzNjJhYTkxMjM2MGFiYTZjOTY5NjdjNjM3ZDdkYmExMTRiNSBsZWdhY3ktdHJ1bmsKKzMzNTE3IGU2ODY3NjUyMzY3NzRjNTNjNTZmODg5MGUyNGQ4NWY5MTg1MjNjZGYgbGVnYWN5LXRydW5rCiszMzUxOCA3ZmJhMzNmZjIxMzU4YTMwNWJjOGZkMjAxMGE2YWEyZTliY2NlZjE1IHJlbGVhc2UyMi1tYWludAorMzM1MTkgYjg1ZjhiYjVjMzc1NGM2OGE3MTE2ZTFkM2MxZDE2MWFhZTc4NDdkYiByZWxlYXNlMjItbWFpbnQKKzMzNTIwIDU3YWRmODI3ZDRjN2FkNjQ3NDFjYjQxZjhiYzdhNWU0Mjg4Njc5YTMgbGVnYWN5LXRydW5rCiszMzUyMSAyYmI1MjNhZDliNzY1Yjg5NmJlZTM2ZmM3ZGY5ODAyMTM3Mjk4ZTJkIGxlZ2FjeS10cnVuaworMzM1MjIgNzA1MmMzZTVhZjAyNmZiZmFlYmZjNzI1M2RhODlkZGU1MzYxNzZiYiBsZWdhY3ktdHJ1bmsKKzMzNTIzIDQyZTgyNjNkMzlhYzY2MWY3NTViZjkzODMzZTg4YjhjY2NmZGM3ZWIgbGVnYWN5LXRydW5rCiszMzUyNCA0NWRjMzM0MzMzMjM1NmRkMzk4ZTE3ZTk0NmRiYWUxZDEyNDAyODM3IGxlZ2FjeS10cnVuaworMzM1MjUgY2RhYjI1ZDJmODQyOTJlOGI5ZmRmYzUwYTE1NzhjMWM4NGI5NGM0OSBsZWdhY3ktdHJ1bmsKKzMzNTI2IDg0ODM1ODQ2ZWVhYjExNGQxOWQzMDgzM2NmNDQyMWUxMjhiMTk5ZGUgbGVnYWN5LXRydW5rCiszMzUyNyA5YzU3ZWI1MzM3YjcyMTgwNGY0ODcwMTk5ODVjMDBlYzdlNDU2MjJhIGxlZ2FjeS10cnVuaworMzM1MjggOGViMWNhZTFhNzdiZDk1N2JhNjFmZjA5YjQzMDFkNzQzMWI4Y2NhOSBsZWdhY3ktdHJ1bmsKKzMzNTI5IDQyMWQ4MDVjMTFmMzNlMzMyNDliNDk1NTg5OGE5MDExNTg0YTZjMzcgbGVnYWN5LXRydW5rCiszMzUzMCBiZjAwYjU2YzE0YTk4MmViMTFkNDM1Yjc5ODNhYjFkZGQ3NzMxNzlmIGxlZ2FjeS10cnVuaworMzM1MzEgNTc3N2M4MzRmNTVjZTkyYzRiNTdlZmNiMWY4YjgyYWU3MzIzNGFjYyByZWxlYXNlMjItbWFpbnQKKzMzNTMyIDU2YzAxYzQ1MDkyYzA5MjgyZDQyZTVlYWEzZWJjNTAyNzJlNjhlNjYgbGVnYWN5LXRydW5rCiszMzUzMyBjZDBiY2FhMGJkODFmZTQwMTViNDE1YjlmMTgzOGZmMGM5NmRjNTc2IGxlZ2FjeS10cnVuaworMzM1MzQgMWJhZTc4YzgzYmU5NGJlYzI2MWI4ODMxYWU5MTIwYmYyMTU5YjA4ZSBsZWdhY3ktdHJ1bmsKKzMzNTM1IDFjM2I4MTU4NzYwYzNkMDIzZTEwMWQyYzcxZjFmYzEwOWM5NzUxNjcgbGVnYWN5LXRydW5rCiszMzUzNiBmMzM5ZjI5YjA2Y2JiNzkyNTI1ZGVmZGY5MzUyMTM3ZmFiM2RmZDJkIGxlZ2FjeS10cnVuaworMzM1MzcgOThjNTliYmRkOGVjNDc5NDJmMjlmZmU3Y2FhZDZkN2QzZjk2ODI0NCBsZWdhY3ktdHJ1bmsKKzMzNTM4IDg0YmNjYmVhYjVmYWM1ODEyZjE4NWYzY2U5ZjdmZjdlZWZjNzRhYTMgbGVnYWN5LXRydW5rCiszMzUzOSBiNzY2MTUyYzc5MDQ1YzVjOWI4NTM5ZTM0OGNhZDQ2OTI4MTljMTBjIGxlZ2FjeS10cnVuaworMzM1NDAgYjQ0ZWI1MTkzMWQwZjEzNDQ1OTc0YjA5YzFhMmI0Mzg4YWE5OTliYiByZWxlYXNlMjItbWFpbnQKKzMzNTQxIDE5OWNkNzhkNmQ3OGQzNmE2ZWYwZmJhMjMyYzdiZWE4M2Y0MTRhZGYgbGVnYWN5LXRydW5rCiszMzU0MiA2MDRkOTM4MjNlYzFkMDEyODk3MDEyNWVkZDg5NGQ4ODEzYmZhZjVlIGxlZ2FjeS10cnVuaworMzM1NDMgMzQ0MmU3Y2RhY2U4NmUzOWM2NTlkN2RlZDllNDQ3OWUzMjg5MmQwNCBsZWdhY3ktdHJ1bmsKKzMzNTQ0IDAzMDIyN2RlODA1MThhYWM3YWVhOWQ1ODU0MmMwM2Q1YTc3ZjEyODQgbGVnYWN5LXRydW5rCiszMzU0NSA5NTQ3MTdlNmZkYjUwYjQ1ZGI4N2QxY2ViMWU0MzFmN2M1MDQyOGY4IGxlZ2FjeS10cnVuaworMzM1NDYgMWE0MmIxMjhjNTgxNGE4YWYzODliZWNkNzA1ZGY1ZTIxN2Q4NmY3MCBsZWdhY3ktdHJ1bmsKKzMzNTQ3IGZlZTE3NzZlNjFjNzA1NjExNGE5NzAzMzMyZGJkZTdkNmE2YWI1NWYgbGVnYWN5LXRydW5rCiszMzU0OCA0NzUwMTE4NGI1NDM1ZjdlMDYwMTJiMGIwMTk3NjdiOTY4MDAyZjQwIGxlZ2FjeS10cnVuaworMzM1NDkgNjJmMzA2M2ExYTBmODc2YmI3NjJmNzkxOWQ1MTQxYjc2MDAzZWYzMyBsZWdhY3ktdHJ1bmsKKzMzNTUwIGEwYTcyMzFjNmZlMGUzNGY0YzMwMzBiNGFjZjFiZTY5ZmY4NzUwMzUgbGVnYWN5LXRydW5rCiszMzU1MSA3MmNiYzQxY2NjMmYzODBlMzY1MmFjNzUwZjc3ZWRkMTYxZmIxMTI0IGxlZ2FjeS10cnVuaworMzM1NTIgMmM1MTk0YmFhOTk0NGY5YWM1ZTRiMDRjNWQ3ZTdmOWI2NzJkY2VhMCBsZWdhY3ktdHJ1bmsKKzMzNTUzIGVkODcwOWIxYTNlZmIxM2E3Y2M0ZjY2NDc1Zjg2MjhlNjc2YzZmY2UgbGVnYWN5LXRydW5rCiszMzU1NCAzZjIxNGIzOWI0ZGY5NTQ5N2Y0MTEzNjE2MDEwMWNjZWJhMTNkZDRhIGxlZ2FjeS10cnVuaworMzM1NTUgMTk1MTFhNDkwZTdjMDUxMTM1MTUwOTdkM2JjMWRkMjUyNDBiYzdhYSBsZWdhY3ktdHJ1bmsKKzMzNTU2IDkyYTVmZTU3ODM4MDM4ZmRhMGU2Zjc5ZmY5ZGM1ZGUzMGZlZjdiY2IgbGVnYWN5LXRydW5rCiszMzU1NyBkMzdkMTU5MGUxYTdkMWExZjkxZDZmMzhjZmI5ZGEyODVmZTA1Y2I4IGxlZ2FjeS10cnVuaworMzM1NTggODhiOTNlMDdhMWY4MGFmN2MyNThiOWZhODk1MDJhMDcyNzI3ODViNiBsZWdhY3ktdHJ1bmsKKzMzNTU5IGY4OWQ1NDU1MDVjNzE1NDU0YmM4NTk1YjFmZGZjNjkwZjI5Mjk3NTYgbGVnYWN5LXRydW5rCiszMzU2MCBiNjhmYjRhNDNkMGZlY2RiOTRkZmVhNGYzNGZkNGE4NDBhNzQ2ODc5IGxlZ2FjeS10cnVuaworMzM1NjEgMjJiY2EyODIzNjg1Njg2MWIwZTllMmVhZTcwNmNmZmRmODI3OTZhYiBsZWdhY3ktdHJ1bmsKKzMzNTYyIDRlMDVjNTU1MTRlMWQ2MzE2MWYzNTdlMDQ3OTIxZWRlZTkzNzU5N2MgbGVnYWN5LXRydW5rCiszMzU2MyBlMmI0MDMxMjc1N2VlMTFmZjAyYjI5ZGE5MTFiMDJiZGMwNjg4Y2Y2IGxlZ2FjeS10cnVuaworMzM1NjQgZGE3ZWFlNDRmNDg3YjRiY2EyOTViYzRkNGQwYjM3YjU2YjU5OGExYyBsZWdhY3ktdHJ1bmsKKzMzNTY1IDljYTI5MTg2NWY5YzFmMmEwMjdlMmZkNTU5NTFlYzM0NmI1NDhjNzggbGVnYWN5LXRydW5rCiszMzU2NiA3OWVjN2UzMDJkNTM1Nzc2YjY5ZDBmNTA2ZWI4NjkyZGMxN2IxMDcyIGxlZ2FjeS10cnVuaworMzM1NjcgZTlkZGRmZDJhNjJmMGNlYTI1Y2M3OTJlNWVjZGMzMjViNmE2ZGRiNSBsZWdhY3ktdHJ1bmsKKzMzNTY4IGFjODRmMTc5YmI4NDEzMzljOWEyZjg2YjVjNTJiYWY2NmNkYWUwOGQgbGVnYWN5LXRydW5rCiszMzU2OSA5OTRiNmJlNDhlMjg3OWFmNjg2N2ZkMWYyY2I3MjBkMDM2N2ZmODFmIGxlZ2FjeS10cnVuaworMzM1NzAgYjQ3YTcyNzRjZTVjMTU4MzhhNWM2YjA0OWJiNjVhNzc2NWNjNmIxNiBsZWdhY3ktdHJ1bmsKKzMzNTcxIGRiYWUwNWMyOWU5Mzg1NDRiOTg2MmRjNzMyNjczMWUyODgzMWJlZmMgbGVnYWN5LXRydW5rCiszMzU3MiBkMWFhNTc1MWZiY2ZkYmEzYzFmZWFkOTBjYmIxY2UzOWMwYmYyODEzIGxlZ2FjeS10cnVuaworMzM1NzMgNDM0YjZjZGE0ZmE1YWY3MDE3Y2I2YzUwOWE1OWVmNzZjZWFiYmI5NSBsZWdhY3ktdHJ1bmsKKzMzNTc0IDlkZWFjMWFhNDIxZGI2OWZhNTVlNDM4N2VlNjRlY2FjM2YyZWRmZjYgbGVnYWN5LXRydW5rCiszMzU3NSBhMjMxMDZkZmM5NGQzZWJmNmZkYzM3ZjZjYzYzZTI4NTQ0NWI3MDBkIGxlZ2FjeS10cnVuaworMzM1NzYgOWY2MGMzZWU5ODVhMmFlMTBmZWQ5Y2I5N2RmNWMxNDhhMDdlZGY0ZiBsZWdhY3ktdHJ1bmsKKzMzNTc3IDgwZWQ0ZDk3ZjFiYWVhMGRlOTk1OGRmN2ExYjk2ZjFkZDg4Yzk0YjggbGVnYWN5LXRydW5rCiszMzU3OCA3MTYzOTVjMTk1ODZlMmExMDY2OTJjMjU5Mjc4ZGE3ZDExZWIxNDZjIGxlZ2FjeS10cnVuaworMzM1NzkgOGIxNTVlNGExMGEyNWQyYjg3MTYxMDcwYTc0YjE1ZTgzMjVjYmNhYiBsZWdhY3ktdHJ1bmsKKzMzNTgwIDFlMmUxYzc5MzE2ZTEyZmJkNWZhYzQwYmYxYTM3Y2YxNjYzNmI1N2IgbGVnYWN5LXRydW5rCiszMzU4MSA1YTk0NGFjODUyNWMxZjYxZDVkYWEzZmVlY2M5MDUwOTFiZGI3ZThmIGxlZ2FjeS10cnVuaworMzM1ODIgNDUxYjdlODM5M2ZjNDFlYjE0M2ZlYTIzNDlmMWQzODQyMjVjNjU5MyBsZWdhY3ktdHJ1bmsKKzMzNTgzIGQ1OWU1OGJhYzM5MjM3NTBiMTQzZDkyNDU3YTk5MGM5MWIwMTliNGEgbGVnYWN5LXRydW5rCiszMzU4NCAwZTIyMTViODIyNmQyYWUzYWJhNjNmMDdhODYyZDExZGJiOThkOWQ1IGxlZ2FjeS10cnVuaworMzM1ODUgNGU2MTNkZGYyYTFiZDE2NTZjNGVmNzRkZGJiMmExMGNkMjM1MzA2MSBsZWdhY3ktdHJ1bmsKKzMzNTg2IDQxNmQ5NDU4ZWU5N2NiM2YyZTNhMWMzMDQzNjM4NTRjMzk1ODliOGEgbGVnYWN5LXRydW5rCiszMzU4NyA1Mjc2MDc1MWM2MWVlNzJjZTkwYTFmZTM4Yzg5YjExYjYwMGJmMzFiIGxlZ2FjeS10cnVuaworMzM1ODggZjc3M2I1NjhiMmU3M2Q4MjllYTE5MmMyMTAzNTU5MjdiMjYyZjZiNiBsZWdhY3ktdHJ1bmsKKzMzNTg5IGZjZjY2ODBiNmE2ZmI3NzFjOGI1OThhY2FjNjg1NjcxOTlmM2NjOTkgbGVnYWN5LXRydW5rCiszMzU5MCBkZjllYTc0OTQwOWEzZWU0NTNjNGY3MTM0NTBkMzczNDUzM2QyNTExIGxlZ2FjeS10cnVuaworMzM1OTEgNTY0YTQ5ZWVhNDE0ZTEwMDkzMTY5NDZhZWZjMjkyNDE0ZGRhMGY2OCBsZWdhY3ktdHJ1bmsKKzMzNTkyIGVjOWYxODYxNTQ4NTZhOTBhZjU5MDQ0ZmJlY2EyOTA3MDhkYzEzOTcgbGVnYWN5LXRydW5rCiszMzU5MyA3YjE2Y2Y3MGViZDg5ZTQyNGQ1YTI0MmNiZTllOGMzNTJmMjgyYWFmIGxlZ2FjeS10cnVuaworMzM1OTQgMGIzNDIyYjYyMTE5MTE5NmMzM2U3NmE3NmJkYzI5Yjk4ZjQ5YTBjMiBsZWdhY3ktdHJ1bmsKKzMzNTk1IDJhNDBjYTA2YTIyYzg4ZDkyZjc3MTViZGMwODJmOWFmNzg0MjMwODAgbGVnYWN5LXRydW5rCiszMzU5NiA5NmJhYjdjODJlMmNmYzk2YzEwMDY5MDM5MDQ0MmI4YTA5ZTY2MjhhIGxlZ2FjeS10cnVuaworMzM1OTcgYzg2YjEzNTRhYzZmNmY3NGRhMzAwYWM4ZDhjNTNjZjA0ZTY4ZGNlNCBsZWdhY3ktdHJ1bmsKKzMzNTk4IDFiYzI1NTkyMjlkYjFkZmYzNzllNjg2NjAyMGMxZTY4NTNmZmJkZTAgbGVnYWN5LXRydW5rCiszMzU5OSA3ZmQyMGFlNDQxNDJmMGM5ZGYwNWFmMDMyZDdkZjA0OWNlNzViYjBjIGxlZ2FjeS10cnVuaworMzM2MDAgOGRlYzBmYjE0Mjg1NGYzNmI1ZDIyY2VjMjYwY2YxNzM0MzNiYTgzNiBsZWdhY3ktdHJ1bmsKKzMzNjAxIGE3M2MyOGRlZWY2ZGZmZTczNDkzNjA1ZmFmMGI1NzViMmUzNzFlMmYgbGVnYWN5LXRydW5rCiszMzYwMiA4NmM0NzZhNDI1YTdkYzUyNzM2YjI4OGI2M2U5ODZmYWM4NDExNzIyIGxlZ2FjeS10cnVuaworMzM2MDMgMDhkMjYzNmI4ZTU4NDQzZDE3NTBmNjc4YThkMWViNjg4ZDQ4YTU0NiBsZWdhY3ktdHJ1bmsKKzMzNjA0IDI1ODAwYTcyNDAxMWZiMjU0NDU2M2EzNTZhNmU4MWFjYzhlNmIyNDAgbGVnYWN5LXRydW5rCiszMzYwNSBjZmFkNTQyODNlMDAwNDc2NDEyNDQ1MmQwMTg0MTIwNzZkNjk1MTgzIGxlZ2FjeS10cnVuaworMzM2MDYgNzIyZDdjN2E3N2UyYjQ3ZjNhYTg5NTlkNmNhODI3ODZiMjlmNTZmMSBsZWdhY3ktdHJ1bmsKKzMzNjA3IDYwZTNkMjk5ZmM4Njc4ZjQ0MjYxNjgwMDY1ZWYyYjllYjkxNWQ1Y2EgbGVnYWN5LXRydW5rCiszMzYwOCBiYjhjYzcyOTE1ZjU2ODkyYzNiNTMxMzNkYWYwN2FmMTkxNWM2YjI5IGxlZ2FjeS10cnVuaworMzM2MDkgZWU3ZTIyM2RiY2FjZjA2OWNiNzdlNTBhNTZkODM5MWFkYmY3NjcxOSBsZWdhY3ktdHJ1bmsKKzMzNjEwIGI4NDY0NWMzMTk1ZTQ4NGQ2NzI2Y2E1Yjk3NTkxNDVhNjQ3ZDE3NTYgbGVnYWN5LXRydW5rCiszMzYxMSA0ZDQ0MTdkZjYzZjRlODA4YmYzMjA5NTNhOGQ0ZjM1Zjc2ODYwMWFkIGxlZ2FjeS10cnVuaworMzM2MTIgMDMxNTNmZDJkM2YyMTRjMWE3YTAyYzIwNzkxNDEyMGJjZTU2NGZlYSByZWxlYXNlMjItbWFpbnQKKzMzNjEzIDYyOGRjZjkwYmY5ZTJlMjAxZDIyYzM2ZGFiZjg1NmE0OTNhYjQ5NzMgbGVnYWN5LXRydW5rCiszMzYxNCA0MDdjMGRlYzJmNGFkYzkyYzYxZWE4MjQ0MDc1YThjYjFlNjA3MTYwIGxlZ2FjeS10cnVuaworMzM2MTUgMjlhNjNjNWNmYmFmYjk0NDE1YjJlOGFmODRkMDE0OTlhZTQ5N2Q2OCBsZWdhY3ktdHJ1bmsKKzMzNjE2IGRhMGM5MGM2YWZkMDFmY2I2ZmY4YjczYWZkYTU4ZGI4OTRlZjEyZTEgbGVnYWN5LXRydW5rCiszMzYxNyA5MDEzZDNjMWQ2NTUwNjRjODAwYTc5NjM1N2ZkZWM3MGIyZDM2NTAwIGxlZ2FjeS10cnVuaworMzM2MTcgZDA1NGMyOTY0N2Y5MGJjY2I4MzQ1YmQ3NzliY2ExZWVjZjJkZDdmMiBsZWdhY3ktdHJ1bmsKKzMzNjIwIDhhMjkzNDQ5ODI5ZDdiYWQwODJiZThiMDViYzZkNjdmZDQxZGFhNDcgbGVnYWN5LXRydW5rCiszMzYyMSBkYTM1OTI5NjJhN2FmMDc5OTc5YmI0MGIyOWFiNmI1ZDc4ZDllMzc0IGxlZ2FjeS10cnVuaworMzM2MjIgMTA4YWE5NjQ4NTczMjEwNThhNDJmZjY2MjI4MTM5YjlkYjgyZjY1ZiBsZWdhY3ktdHJ1bmsKKzMzNjIzIDlhNmY1YjM3ZTgxZDJkOWE4MjUxZDNiODNiMmQyMDc0MTNlYTA0NWEgbGVnYWN5LXRydW5rCiszMzYyNCBjZThiMTM4ZjQ0NzNhZGFkZDBiNmExNjRkNTJhNDAzMDZhMmU1MTM3IHIyM2MxLWJyYW5jaAorMzM2MjUgMzM3ZDQ0MDEwOTA3Mzc4ZTRmZGI3OGE0YjY1NjE5OWZkNjYxOTRmNiByMjNjMS1icmFuY2gKKzMzNjI2IGFkMDk2ODdhYWFhMGE3NTUyNjg1ZjI3NGZjNjAzZGEwZGJmZTdhMjQgbGVnYWN5LXRydW5rCiszMzYyNyAyYjhhNTY0ZTFmZDNkMDI2YTEyNDY4NjA5ODYzMjJiYmJlMTBlMWI4IGxlZ2FjeS10cnVuaworMzM2MjggYTljODk5NzM5ZjQ4MjJiYjZkOGI5YTliMjY4ZGMzNjRhZTUzOWE2NCBsZWdhY3ktdHJ1bmsKKzMzNjI5IDFjYmM2Yjc4MzZkY2I4YTZmMTllMjJiY2M1OTExYTQ1ODc3NDE0ZDUgbGVnYWN5LXRydW5rCiszMzYzMCAzMjI1ZjFkNDI4ODM1YTI3NTVhNjU0ZTg3MDZmNTFiZmRhMDE2ZDRkIHIyM2MxLWJyYW5jaAorMzM2MzEgMmM0ODNmN2JlYTRiY2Y4NjcxNTQ3MjM0MjgxZjYzOGZiYWRkNTEwMCBsZWdhY3ktdHJ1bmsKKzMzNjMyIGJhZjIyNDEwNzBiZmQ3MTdhMjM2YzMzMWY3ZTQyY2QwODNmNWM0ODcgbGVnYWN5LXRydW5rCiszMzYzMyAwOWM0NTk4NTEyNjQxNDZlYjMyN2M4NmJhNzRkYzVkY2Q0OTk5MmQyIGxlZ2FjeS10cnVuaworMzM2MzQgNWZhZWU3Y2RjNWFhYjI0NzY2Yjk3Y2JlYjNhMTcyZGFkMGExZDkwNyBsZWdhY3ktdHJ1bmsKKzMzNjM1IGNlYTdmOGFmOGUwYmI4MmU0ZDlhOTRiZTM0MmNhM2EwNDkzNmU1NDYgbGVnYWN5LXRydW5rCiszMzYzNiA0YmZjZmVkNjRlY2I5NjhjOTgyODVkYmFjYTg2MzBiMzliMjg3NzBlIGxlZ2FjeS10cnVuaworMzM2MzcgNGMxNDNjZWVmNDE5YzY3MmQwYzAyNjhjMDNkMzdiMjYzZjcxZGQyNiBsZWdhY3ktdHJ1bmsKKzMzNjM4IGE1NTBhZjcxMWFiYTRhMjJiNDZhZjMxNzhmYmI0M2JhZmNmZTkxMDYgbGVnYWN5LXRydW5rCiszMzYzOSA5NTBiMjUwMGExNDIyMjE0YWNkM2MwNTUwMDUwNmFmOTE2Yjc5NjQ3IGxlZ2FjeS10cnVuaworMzM2NDAgNjY4ZGQzMzZlMzA2ZjE1YmI4ZTBhOGFiY2NlMmYyMDBiNThmMGFhNiBsZWdhY3ktdHJ1bmsKKzMzNjQxIGM0MmE3MzE3Yzg4N2FiYjdiOWYzODYwMTIzMjExNzBlMzNkOGU5ZDQgbGVnYWN5LXRydW5rCiszMzY0MiAzMTdmMWVlMjRmMTg0OWI3OGU3MGM3NDQ1ZGI5YjlhZDdlYjQ5YWIwIGxlZ2FjeS10cnVuaworMzM2NDMgNGNmMmJmZmZhNTY0MTBmOGU4MjEwMTIwMmNiZTljMmY2MzU0ZGVhNCBsZWdhY3ktdHJ1bmsKKzMzNjQ0IGZlNDk5YmM3MzgxZmI5MDNiZmRmZWVlMzJhZDY0ZGQ1OTcwMTk5NTcgbGVnYWN5LXRydW5rCiszMzY0NSBhNGFiZTE3YTVmZWI5MWY0NjIyNGU4YTk2OGFkNTBhMzc0N2JkZGE4IGxlZ2FjeS10cnVuaworMzM2NDYgMTNjNzVmYTc4MGM4YzIyMjIyMjVhNTBkMjIyNzRiZmZhZWIwMzQ5YiBsZWdhY3ktdHJ1bmsKKzMzNjQ3IDMwM2Y1ZmRhMWEyODQwYmEwMmY4OTk3MmRhYmUyY2UyZDI3ZGFkZTggaW5kZXhpbmctY2xlYW51cC1icmFuY2gKKzMzNjQ4IGE3N2FhYWIwMTQ2ZGU2OTZlNmQ2NmU5OTNiNWM2NGVjNTlhNWRkZjQgaW5kZXhpbmctY2xlYW51cC1icmFuY2gKKzMzNjQ5IDVhZGRjY2EzZjQzMzM0ODJmYWUzNDRmZjQ4YWRkNWZhYmRkMjdiZjkgbGVnYWN5LXRydW5rCiszMzY1MCBlMzM5YWQyNTBhZjBmNDFmYzM0YjhhNjRjZDliODM1NmUxMDE4YTAwIGxlZ2FjeS10cnVuaworMzM2NTEgODJlZTFmYWUzODE5NGI4MTA5OTA3MjM3MDdiYmVmNTFhYzk5ZjM2ZSBsZWdhY3ktdHJ1bmsKKzMzNjUyIGE0MDhhYzU1MjdjMzQ1Nzg3MjhmNWYzMTMwODBjOTdlMzMyMWQyYzggbGVnYWN5LXRydW5rCiszMzY1MyBiOWQwYTBlZTIyMDZhNzJhOWE5NTc3MDNkNmRmZDY5NzAyOWM3Zjg4IGxlZ2FjeS10cnVuaworMzM2NTQgZDM3ZjEzMTk5ZDk1Mjk3YjQxMTE0NmQzNjc3MmEyOWFiOTE0NWFhYiBsZWdhY3ktdHJ1bmsKKzMzNjU1IDYxNDlmMGEwYjhmNTg0MjIyODk3YjYxZDM1YjlkMjk4YmMwN2QxOWYgYXN0LWJyYW5jaAorMzM2NTYgMjFlZGNlMDkxMDY5ZjlhY2QyZGNhMmE4OTE5M2I2NGIwN2FmYzQ4YyBsZWdhY3ktdHJ1bmsKKzMzNjU3IDJjMWU3M2IyZmNhMTEwN2I3MTc0MTE2MGY5ZWQxNTJhOWE0ZTMxMzYgbGVnYWN5LXRydW5rCiszMzY1OCAxMTg4MDliMWVmMjA2MTI5YjYyMGRlYTJhMzZjNzdjMWIyNmU2MzQ0IGxlZ2FjeS10cnVuaworMzM2NTkgMjczOTVjODQ0ZTIzYjdhZDQwYWFjNWZkODViNGE2NTZlYmZmYmRmYiBsZWdhY3ktdHJ1bmsKKzMzNjYwIDY1NDlkMmU0MDhmMGM2M2JmYzY2ZTg0MDk2YjAyMGE1ODIxNDkzMGQgbGVnYWN5LXRydW5rCiszMzY2MSA1YWQ0Mzk2MzJkZTU0YWMxOWUzYmJmMGJiZjczN2QzMWEwNmNmM2MyIGxlZ2FjeS10cnVuaworMzM2NjIgMTdjZTEyMzY5NDc3YTdjODZkYzg2N2ZiYzBmMjBiNzk2NDQ5MmIwMSBsZWdhY3ktdHJ1bmsKKzMzNjYzIDIxMTg3MDk3ODU0YzkwZTUyMmIwMTRlODQ5NjUyMGI5ZWY4MTM0ODAgbGVnYWN5LXRydW5rCiszMzY2NCAxYmQ2ZTYyZmIwNmY3NzkzN2NkYWY3NGQ2YjIxMWMxOWQ4YmViZmMwIGxlZ2FjeS10cnVuaworMzM2NjUgN2JhNDJjOTYyOTRjYzY5M2MwODRlOTk2MzNiNGJhYTFjN2ZlYmFiNCByZWxlYXNlMjItbWFpbnQKKzMzNjY2IGYyNzA4ZWY2MDE2OWIxOTJkOWUwNjZkM2NmNmEyNjRmZTRkMDAyZWYgbGVnYWN5LXRydW5rCiszMzY2NyAyZGEwNWI1YjVjNjUwNTVhMzY3MTZjM2M3MWE2MjU4ZjhjN2Q0NWUwIGxlZ2FjeS10cnVuaworMzM2NjggMjlmMDdhZGMzMDE5ZDA3NWM5YjMyYTg1M2RiMTQ2ZDE0YzZlYjRiMSBsZWdhY3ktdHJ1bmsKKzMzNjY5IDhmMzA2ZDNkNmQ1NmVkOGRlMzc0MjZkNGQxYWIxZDQzODgzMmM1NjYgcmVsZWFzZTIyLW1haW50CiszMzY3MCAwMDA5YTAzODMyMjI1YTY3NWM5MDUzOTA3YTAxMzM4Mjk0MjRmZWU1IHJlbGVhc2UyMi1tYWludAorMzM2NzEgYjU5NDk1OTFkOWQ1NzRlMDQ1ZTIxZDA1ODFjMjJjZGFhMDA4NDcwNyByZWxlYXNlMjItbWFpbnQKKzMzNjcyIDg2ZTQ3MjVhOWRiZDRiOTU0ZGY4ZDQyOWVmNzIwYTljMjcxYzVmMDkgaW5kZXhpbmctY2xlYW51cC1icmFuY2gKKzMzNjczIGIzM2M2MGZjY2U3NGY5ZGYwZDFmNjAxNWI0Y2RkNTkzNWUxMjgzM2MgbGVnYWN5LXRydW5rCiszMzY3NCAzNWNjZmMxNDBjYWMwYzJmM2NhZDllYjY4MTNhYTQ3NjlhYmM4YzFjIGxlZ2FjeS10cnVuaworMzM2NzUgNzMwYWJmY2YyNjEwZTljNzFjYjAwNTViMjliZTYzNDFjMmY1NTFiMiBsZWdhY3ktdHJ1bmsKKzMzNjc2IDY3M2JjZWQ5OTE4MGZkNWFjNzUyNTRlOWEyNjllMGIyNmNkZjg3NTUgbGVnYWN5LXRydW5rCiszMzY3NyBhYTQ0ZTA2ODg4OTZhMDQ1Mzg1Mjk4YTNmYTU4MGM3ZjlkMWU4ZGQxIGxlZ2FjeS10cnVuaworMzM2NzggMDJlNWI0YjY3YTY2MzAzYzQ5YTk3ZDk2YWYwYThjNjk2YmQzYmZhNSBsZWdhY3ktdHJ1bmsKKzMzNjc5IDA5NTQ2OWM3YWJlNzI3MDIwMDJjYmMzZWJiZmE0NzkyZTc1YzkyN2MgbGVnYWN5LXRydW5rCiszMzY3OSBmY2U1YzllOWFiYzcyMjM5NGNiMmU5MDliN2UyYTM5MDgwZDQ0NDhlIGxlZ2FjeS10cnVuaworMzM2ODEgZTFiYjEyNjJmMGJjMTQ2MjNkNjQ2YjAwY2I1NDc1YmQwMTk4ODEwMCBpbmRleGluZy1jbGVhbnVwLWJyYW5jaAorMzM2ODIgODNlMDZmZTEyNGExOTNhNTM0ZTQ0ODg5OWI1YjU5NzU1NTA0ZTRkZCBsZWdhY3ktdHJ1bmsKKzMzNjgzIDUzYjc2MGIwMjdiNzcxMmIwNjdkMjRlYmMwM2Q1MTdlZGY4MTBjYWUgYXN0LWJyYW5jaAorMzM2ODQgOTZmYThmMGI5ZWViYTdmY2QyYWYwNTFjOTRiZjdhMjRlODg1ZGNiMCBhc3QtYnJhbmNoCiszMzY4NSBjZmJiN2I4MjY5MmQ3MGYwOTcxZTM3ZGY1NzUwN2UzMDA1MjczYTg5IGFzdC1icmFuY2gKKzMzNjg2IGY4MmViMTYwNDQwYmRhNDllYzIyODk0ZmY3YzU5Mjk2ZTgxZWM4ZTAgbGVnYWN5LXRydW5rCiszMzY4NyA1MmRkNTQ4ZDNiZTlhOTdhZDc3OWJiMTY1MWNiYTRjNDE2NjY0MmQ2IGxlZ2FjeS10cnVuaworMzM2ODggM2FkZGE4MWEwZTBiZDA1MjRhN2NiYjFhNDkzOTk0OWI3OGRmOTQzZiBsZWdhY3ktdHJ1bmsKKzMzNjg5IDM1ZGVhMTBkY2RjNDVlODVjMWFlNDk3MjJmN2IyNTU0NWEwMTdjMDAgbGVnYWN5LXRydW5rCiszMzY5MCAxZmJhYTA1YjM1YzFiZjBlYzE1YjU5ZTExNjRhMWY0Y2JmY2Q0ZjYwIHJlbGVhc2UyMi1tYWludAorMzM2OTEgOGNkOTRkMTE3Zjg3Nzg5MjdjNDRiMjlhZWZhMGZlMWRiNDQ4MmM5YSBsZWdhY3ktdHJ1bmsKKzMzNjkyIDM3Y2NmMWJjNTRlMDQ0ZmJkYzZiMjQ0NWJlNTk5MDFiYjhkNGE4NjAgbGVnYWN5LXRydW5rCiszMzY5MyAxNWZjODNjNTA1ZTMxNDk3MDI2YjBhOWY1NzZmMDc4YWY0OWNkZTg3IGxlZ2FjeS10cnVuaworMzM2OTQgY2ZhOWYwNDljMjA0YzY4YWEyZjIyMjRkYzQ4OTkwOTllNzMxOTA0YiBsZWdhY3ktdHJ1bmsKKzMzNjk1IDRiNTcwMjMwNmM1ODFiM2VmNmJjZGJkY2VlYTVlODlmZjdiZGFmNDIgbGVnYWN5LXRydW5rCiszMzY5NiBlZmExYmI2NTZiMmI2ZTUxOWE3MjNiYzU2Mjg0NWQxMDE5YTRjOTM4IGxlZ2FjeS10cnVuaworMzM2OTcgYTEzMTUyYjI1ZmU4ZGY5M2QwYTE2MWZjNTNkZTYzNDNkOWNkNmVkYyBsZWdhY3ktdHJ1bmsKKzMzNjk4IGRlN2Q5YTJiNWZhYzMwODMyNDA2ZmVjZDgwY2YyNjlhMzdlMzg1OGMgbGVnYWN5LXRydW5rCiszMzY5OSBlZThiYWNjNmYwNjhkNjE3NGIzYmMzMDY4MzI0ZGEwOWViMzI1M2U5IGxlZ2FjeS10cnVuaworMzM3MDAgMjkwOTQwMTYzOTdkNjI2MGQ0ZWY5NGQ2MTFkOGY3OGFkYWZlMGMyOCBsZWdhY3ktdHJ1bmsKKzMzNzAxIDY3NGNmNWEyNDE0N2ViYjY4MzNjYTI3NWQzMzM5ZjYzZDBlZjFiMzcgbGVnYWN5LXRydW5rCiszMzcwMiAxMmE3ZjIxNTY0ODE1NDE3Y2Q4YzY0YjBlODBhNDFhYzZkYzQwZDNmIHJlbGVhc2UyMi1tYWludAorMzM3MDMgNzRhNWNlNDlhOTJmYzgzMmFkNDQwNTgwODM0MmM0MGY5N2Q2ZGYwZiByZWxlYXNlMjItbWFpbnQKKzMzNzA0IDBkNzlkYzg1NGFjNDY5MGVkNDE1YzgwYzU4MmExN2FhNGUzNTk4MDIgbGVnYWN5LXRydW5rCiszMzcwNSBhNjIxNTNkOWM4ZDY1MTcyNTFkZGE3YWEyZmI5YTA1NzY5NzZiNDMyIHJlbGVhc2UyMy1icmFuY2gKKzMzNzA3IDIxYjgxMzk5YjYyODQyMGE2OGM4NmI5ODAyNWJjYmU2N2M1NzUxMGYgcmVsZWFzZTIzLWJyYW5jaAorMzM3MDggYTUyMDM2MTRjYWE5NmQ2YjljYzJlNGUzMWYxZTk1MDIwZGQ3NTRkMiByZWxlYXNlMjMtYnJhbmNoCiszMzcwOCAxOGVkYzdkNTdkZmZiNTZiZTgzNzRmMzVlNDdmMzkzMjlmNWU5ZDMxIHJlbGVhc2UyMy1icmFuY2gKKzMzNzEwIGVjZDg1NzMyMDRjZDI0YjFmZjFmODRiNzdkYTgyMTBiODVmNDU4MTYgcmVsZWFzZTIzLWJyYW5jaAorMzM3MTEgNDNiMGE0MDRkNGEwMWNjMTc5OGU0MTM1NTg1NTlmZWU4MGFhMmZlMSByZWxlYXNlMjMtYnJhbmNoCiszMzcxMiBjM2U2OWYzNzZmMjliMTkxMTQzNDE0ZTJlZDAyOTkwNGIzNzlkZWM2IGxlZ2FjeS10cnVuaworMzM3MTMgM2ZlODJkNTdkMGQxN2YxZDhkMzk1ZWI1MmIwMDQzODFhMzM5NTZmZiBsZWdhY3ktdHJ1bmsKKzMzNzE0IDFkNjNlMTUzOTg5ZjAzNTQ2YWU4YjJhZDBkNzBiMmQzYjdiYjMyNDcgbGVnYWN5LXRydW5rCiszMzcxNSBiN2UyZDczODBjYjIwOTdjNzFhNGFlMmMwOGZlNmM3NjFlYTYzMmNkIGxlZ2FjeS10cnVuaworMzM3MTYgNzAyYWE2ZWIxMWY5YjNkMGQzN2U0ZWY0YjhlMTJhMzM3ODM3ZTg3MiBsZWdhY3ktdHJ1bmsKKzMzNzE5IGI4MmVhMGIwN2IwYWI4YjViNDM3MmQ0N2Q5MjM4ZWUxZmY4ZTU2YzIgcmVsZWFzZTIzLWJyYW5jaAorMzM3MjAgYzM0MGIyN2Q3MzliMTEyZmE1NjA3ODllYzU1MWQ0YWQ3ODIxM2ViYyByZWxlYXNlMjMtYnJhbmNoCiszMzcyMSAwMjUyOWZiMTg4MTVhMDg4Y2I5MTU5NmI5Y2FiMTE2MmJlY2Q4YmVkIHJlbGVhc2UyMy1icmFuY2gKKzMzNzIyIGU1OWEzNmExODA1ZWQ2Y2JlYTQwOGM5YTY5ZmRjNWZkYTY2ZDQzZjYgbGVnYWN5LXRydW5rCiszMzcyMyBlNGVlOTg2YWYxYTA3ZjdkNDhlMjVmMGI1M2JlMjMyOTU3MmM0ZTY3IGxlZ2FjeS10cnVuaworMzM3MjQgZTE0ODI5NmQ4YTkzODhlZmVkOTA3OTMyOTVmMTc1MjYxYmUxMDg0MSByZWxlYXNlMjMtYnJhbmNoCiszMzcyNSAxODczMWQyNGUzZDEwMzc3MWIyYjVkY2UwZjIwODIwZTFjZDVmODhhIGxlZ2FjeS10cnVuaworMzM3MjYgMmYwM2Y4Mzk4NGIwNzFjOTAwMTNjODU0OGViZjcyMDdmOWQ4OGUyNiBsZWdhY3ktdHJ1bmsKKzMzNzI3IDY3ODRhMjQxNjMzMTUwYTk4NTkwZDkxNzg1YTdjMTJjMWQ4NzFkODUgbGVnYWN5LXRydW5rCiszMzcyOCBlNjIxYTk3YmZhMTZiMWRkZjVmMGYzMGEyM2ZjNDlmZGY1ZmU3NWY5IGxlZ2FjeS10cnVuaworMzM3MjkgZTIxM2NmZTE3YTYyNGQzYTYwODFiOGMyN2YzMjNlMmQ4YjdjYzEyZCBsZWdhY3ktdHJ1bmsKKzMzNzMwIGQ3MjU0N2M5MTVkNWE2NGVmNWNiNGQwOGNjNjYwYmFiZWUwYzNjYzAgbGVnYWN5LXRydW5rCiszMzczMSA2NzcwMzg4NzNhMjJiOTRkZWQ0OGQzNjE2N2RlZTVlYTdhZTZkOGUzIGxlZ2FjeS10cnVuaworMzM3MzIgMDhmMzhkYWZjOThhNzA2NGM0YjZlNzBjNTNiN2ZmMmJhNzA5MmNjNyByZWxlYXNlMjMtYnJhbmNoCiszMzczMyA4ZDhjZGVlMzQ0YWQ1NjY3ODZkMzE0ZDc0MDBmMjM5YzZjMmY5ZjVlIHJlbGVhc2UyMy1icmFuY2gKKzMzNzM0IDllMGQzOWEyZDM3ZTQ5ZGVjM2ExYjYyNjIxZTQyNzI3ZGQ0MDgxN2UgcmVsZWFzZTIzLWJyYW5jaAorMzM3MzUgMDQwNjg3NWNhN2ZkM2I2MTNjZTYxNjEzZjUxYWUzZjMyY2Y2NzdiYSByZWxlYXNlMjMtYnJhbmNoCiszMzczNiA2ZjZkZTc2MWVmOWI3YWRiOGNiNTFjMzY1MDNmMjM2MzM2MmQ4MmVlIHJlbGVhc2UyMy1icmFuY2gKKzMzNzM3IDI0ZTczNzk4ZWQwNGU0ZWQ3YWYxZTA1NmUzMjY5YmQ5OWQyYWYyM2IgcmVsZWFzZTIzLWJyYW5jaAorMzM3MzggNzA1OGRjZjczM2Q0NjZjMDAyYWJhZDI0YTE0ZjBkMWFhODkwMTVkYSBsZWdhY3ktdHJ1bmsKKzMzNzM5IDQzYzk3NzFlMGJlMTBhYTUwZDg2NjJlNzIxY2FhNzhkMjFkZWM4MzIgbGVnYWN5LXRydW5rCiszMzc0MCBjZTE4NTAzNGIzODA3ZGQ4MzVmZmQ5ZDBhZGEwODA5NGU2ODY0NjgxIGxlZ2FjeS10cnVuaworMzM3NDEgNjljOGUzOWY2ZWU2YzU2YTI2ZWNjMmE1M2RlYjZlNjA5OWQ4ZmI1MiBsZWdhY3ktdHJ1bmsKKzMzNzQyIDA1MDRiYThlZmJiNmNkZDExZjFhNDdjYWYwYjQyNGZjYTQzMzI5NWMgbGVnYWN5LXRydW5rCiszMzc0MyAwYzYyMTgwMTQwOWFmMjg2MmJiYWQxYjE5YWE3YmM4MzlkOWUwMjMxIGxlZ2FjeS10cnVuaworMzM3NDQgZDhjOGZlMGM3M2VkZWVkODNkMzZkYzZjOGJhMjU0YjNjMTAyYmJkOSBsZWdhY3ktdHJ1bmsKKzMzNzQ1IDY0M2ZmYjdkYjE4ZmQwNWY5ZmUyNzhiNzEyMTk4MjIxNTA1YzhhYmYgbGVnYWN5LXRydW5rCiszMzc0NiBkMDk5NDRjZWUzYTRmZTRlZDE0MWRlYzQzMWNmNjE1MzBkNGMxNDIwIGxlZ2FjeS10cnVuaworMzM3NDcgNTI2YzEyYWIzNmFmMzk4MmY3MDRiZjI1MmU3ZDhhNjQ2MmI0ZTVhYiByZWxlYXNlMjMtYnJhbmNoCiszMzc0OSBkNzM4YTA3YTI5M2EzNWY0MDMzYmM3OWRjNDliOWUzODBjYmE3NjVkIHJlbGVhc2UyMy1tYWludAorMzM3NTAgYzlhMDA1OTBiOTAxZGRkYmU2NmFjOTE3NmI4NTIyYjM0ZjdmY2Q3MyByZWxlYXNlMjMtbWFpbnQKKzMzNzUxIDgwMTRmYjgwZDE0NDUzOWI3NGRmMzI4ZGNlYTFkMTZkMTgzNWJmMjMgcmVsZWFzZTIzLW1haW50CiszMzc1MiBkYjlkNjMwMjM3YTY1NzY1ODIzYzc1ZWU5ZjYzYThlYjU4ZTllZjFmIHJlbGVhc2UyMy1tYWludAorMzM3NTMgZDhlNTJiY2UyY2Y5MDNiNDdhY2FjNDQwNDAxYjcxMGU5NWM0NDZhYiBsZWdhY3ktdHJ1bmsKKzMzNzU0IDVhMmE5MWI5NzgxMGExY2IzNDNjOWU0Y2VkMjg3YTljNDBiMWQ4MjggbGVnYWN5LXRydW5rCiszMzc1NSAyY2ZhY2E2MmE5OTA3M2RhYzA0ZDBhZjFkY2U4ZDU2NDgzMjNiOTQ3IGxlZ2FjeS10cnVuaworMzM3NTYgYWU4NDg1ODY3ZDMwNzExYWI5OGE3ZDQ3MDBkNWY1YWIzMzdmZGQ4MiBsZWdhY3ktdHJ1bmsKKzMzNzU3IDQ5NGIwN2E1ZTJlNTdjYmMyMzg4M2Q1NWFmOGQ5ZDEzYzhhZGM2OTAgbGVnYWN5LXRydW5rCiszMzc1OCA3ODAxYjEzYzUyYzk0NjEyYzc0MjYyOTBkYTZjYmJlYTE3YjRiZDk2IGxlZ2FjeS10cnVuaworMzM3NTkgMGNmYzZjYWJjZTg4NGE1MzBjY2ViNThkYjg3YTFjMzMyZDFiZWJlOCBsZWdhY3ktdHJ1bmsKKzMzNzYwIGEwMzAwZWE2MzhkZGI0MTMwMTkwOTY3ZjIxODBmYTE2ZTc1YTJhZjYgcmVsZWFzZTIzLW1haW50CiszMzc2MSBiMjRlOWQ3MWZhM2NkYmM3YzkxMGVlNzgwNjdhMTQwNmQ2YWQyZjBjIGxlZ2FjeS10cnVuaworMzM3NjIgMWQ1YmU2OTgxZDU3ZWRkODcyYzRjNTMzZTQ5NmExOWY4MGQ1ZTRiNCByZWxlYXNlMjMtbWFpbnQKKzMzNzYzIGU0NzdiNTk5OTI0ZGE4M2Y1NTczODBhNjQ1MDAxOTg1MDk5Nzk4M2EgbGVnYWN5LXRydW5rCiszMzc2NCBhYWIxMDg5ZjBmODVkZWViYmQ1NDVmOWNjMjNmNGY0YTIwMjk4YzY2IHJlbGVhc2UyMy1tYWludAorMzM3NjUgNGFkZmQ3NjQ2NmJjNmMwNmU0ODRiNTJmZTRhMjM4NmJkYjgyNzZlZCByZWxlYXNlMjMtbWFpbnQKKzMzNzY2IDIwMDE2NWQxMWE5NDYyMmFjZWJiMDIxZjk2MzU4NGE4MTY5NDM0NDYgbGVnYWN5LXRydW5rCiszMzc2NyBmMjYxOWJkNjgzZGIzZGIxYmI3OGIwZjA1NTYxNmI3ZmY3ZWUxNGVlIHJlbGVhc2UyMy1tYWludAorMzM3NjggMzU0YzdlZTQzOGJmNGVhMDE3NGY5M2E3Mjk2YzdlZGEwZTAxNzY3MiBsZWdhY3ktdHJ1bmsKKzMzNzY5IDdhZWExYjVjZGViYmEyZjc2ZmZjOGIzOGY4N2QxMTYwZDc3NWIwYWQgcmVsZWFzZTIzLW1haW50CiszMzc3MCA1ODlkNTU0NWFmNDExNjMwMjY0NDA3MWE4N2QxNDAzYzE4YmI3ZDc4IGxlZ2FjeS10cnVuaworMzM3NzEgMGU2NDI0MDgwMGRkMTNjNzFkOWQ0N2FjNWE1MDM0ZDEzMzFiOGQ1NiByZWxlYXNlMjItbWFpbnQKKzMzNzcyIDk4ZTZhYzFkODM3OTcxOTYzZjQ1MThlMmEzODliZjcxOWE4YjNmOGIgbGVnYWN5LXRydW5rCiszMzc3MyBhZTAyNDJlMzQ1OWVlYWE5NTIzZjNlNzQ2NzM5MWJkMDhkNDE4Yzc1IGxlZ2FjeS10cnVuaworMzM3NzQgOWJkNWMwNTJiMzA4Yjc4YTcyZWEyOTc2YWVkMDdjZmJlNzNhNDM3YyBsZWdhY3ktdHJ1bmsKKzMzNzc1IDE3MTgxNGY1ZGNjNjMyMTBiNjIxYTQzYjRhN2Y5NWQzZDkxMTQzNWQgbGVnYWN5LXRydW5rCiszMzc3NiBhYjEwYzBjMjVjMDMwNGFkNGEzOTgxMDMzMGRhOTc2MzZkNDNiMzE5IGxlZ2FjeS10cnVuaworMzM3NzcgMDYxZDg2ZmMxMWJiMzgzNGRiNTk3ZTcyNzc1MzQ0YmFkY2E3YTI3OSBsZWdhY3ktdHJ1bmsKKzMzNzc4IDczNWVjMDg2OTQ5MjNmZWI2MDYxY2FmYTBlMTBlNzc4M2U1YTVkYWUgbGVnYWN5LXRydW5rCiszMzc3OSA3YmQ0MDIwNTA5NGNjNDgyM2JhZjNiOTU0NGFiODQwMzA2OTg0ODMwIHJlbGVhc2UyMy1tYWludAorMzM3ODAgMzZjMjc3MzgxZDc4YjNiYjYzNzcwNWRmNTEwMzFhYjM3ZmViZGRkMyByZWxlYXNlMjMtbWFpbnQKKzMzNzgxIDhjYzgwMDAyZmI5MDM3MDhjZTQxNTQwYzhhOGY4Mjg5MTQ5YzkxYmUgbGVnYWN5LXRydW5rCiszMzc4MiAyYjE0Yzk4MjdkOWNkNzNiYTY3N2UzNTdkYTE3ZWZkMGQzMzA5NTczIHJlbGVhc2UyMy1tYWludAorMzM3ODMgNWIxZGRjNGI0OWI5YmIxZjk2MmFjMzNlZmU3M2FjMTUwMjZhZGQ1NSByZWxlYXNlMjMtbWFpbnQKKzMzNzg0IDhiN2UzN2I1ZjFlZTQ1MWQyNDkxOGE5M2E1ZWYwZjZmZGNjNDAwNGIgcmVsZWFzZTIzLW1haW50CiszMzc4NSA3NjJlMWIyMDg4ZTUxODhkZmVlNjMwNjk5NDliYjc5ODNhZWIyMWM1IHJlbGVhc2UyMy1tYWludAorMzM3ODYgNTlmZjc3YjBhYzcyNGFiMTJhNTZlNjU2Yzg4NjcwMzdiZDM0ZGU5YyByZWxlYXNlMjMtbWFpbnQKKzMzNzg3IDhmOTNiMDliMmJiNWYzNGMyNDUxMGNjZmNlZDc5Y2Y2N2Q4NTgyNjQgcmVsZWFzZTIzLW1haW50CiszMzc4OCA3ZjU0ODkxODRkOTQzMzBhYmViNGYzNjA2Mzc3Y2VmNjUzYjU4YmUzIGxlZ2FjeS10cnVuaworMzM3ODkgNjIxNmU3NGI4OGVmYmUzNjg1OWQ5OWEzYTY0MmY5NGNkNDY2Y2E4NSByZWxlYXNlMjMtbWFpbnQKKzMzNzkwIDFjNDUxOTRkMTI0ZDg5NTI0ZjRiNmNkODkwMGE5Y2M0MGRjMDgxNjMgbGVnYWN5LXRydW5rCiszMzc5MSBiMDc2ZjY5YzVkYWMzMTJjODZjOGJhNWJiZWVjMDIxMTdiODU5NzU3IHJlbGVhc2UyMy1icmFuY2gKKzMzNzkyIGQwNWQwZWQ0NjVkODAxNjVkZWFkMThmZjlmOTE4ZWMyYzU5MDhjZTggbGVnYWN5LXRydW5rCiszMzc5MyBkYmRlM2RkMzEwNjg1MmVmZDIxZjM4YjcyODliNDMzOGUzMTRmYzc0IHJlbGVhc2UyMy1tYWludAorMzM3OTQgOGViYjliMzU3NmQxM2M5ZDAzNDc0ZDI1MWE4MmUxMWVhYTg5YjQ5NiByZWxlYXNlMjMtYnJhbmNoCiszMzc5NSA1M2MyZmYxZDgxZDE2OThhZDA5YjNiNWYzNGE0YzQ3YWM4NDZlODkyIHJlbGVhc2UyMy1tYWludAorMzM3OTYgYmZjYzk4ZGU3ZmNjMjUwNDhiODk5ZDU4YzM0OGEwNTBiNTFiZjg2MCByZWxlYXNlMjMtbWFpbnQKKzMzNzk3IDQwZjVmMGI0NGNjNDQ3Zjc4ZTYwMjMwMWVhN2NhMjM0MDM3NGU0NzggcmVsZWFzZTIzLW1haW50CiszMzc5OCBiYTQ4ZTU3MWE0ZDVjZTlmNjM0MWY1Yzc5ZmJkODQxMWQ3MDZhMzQ3IGxlZ2FjeS10cnVuaworMzM3OTkgNWM4YjJhNjY2NmMzNmZjNjMyZDJmZmUwZTQ1ZDBhY2VkOGNkNmZmYiBsZWdhY3ktdHJ1bmsKKzMzODAwIGFmZGU0MDJlM2E1NWE5OWIyNTdjOWQyYmZjNjhiZjljYTA5YzdjYjUgcmVsZWFzZTIzLW1haW50CiszMzgwMSBkNGNjZTU1MzQ3OGE4MTBkMDRhOTIzNTJjZWQ4ZGFmZTNjNjAyYzA2IGxlZ2FjeS10cnVuaworMzM4MDIgMGFjNDM5NmIxODk0YTBlMjlkOGMwYjFjZDU5MGE0ZDFlNmNlZmJjNCBsZWdhY3ktdHJ1bmsKKzMzODAzIDc0ZWY4YjhlMDA2MTc0YTUzYzBiNWE2NDVjODkxMzBkOTZjMWUyYjIgcmVsZWFzZTIzLW1haW50CiszMzgwNCBlM2M5YjQ4ZGU2MGFlMjc0MDY4YjY4NDhkMDIzYjZkZmQxNDA0MzhlIGxlZ2FjeS10cnVuaworMzM4MDUgMDYwMTZkNWQ4MWQ3ZDRlMWQ0ODBhMzgwMGE1Nzg3OGQ0OTNjMDA5MiBsZWdhY3ktdHJ1bmsKKzMzODA2IDFjNGQxOWI5YmFhYzY1M2ZmMGMzYWI5ZDc1Yjg1OTgwMjExNWQ2Y2MgcmVsZWFzZTIzLW1haW50CiszMzgwNyBkNjM3OTYyMGZiMDhkMTRhNzA2ZDM3NTZlNzIzNmFjYWNjYmZmYjIxIGxlZ2FjeS10cnVuaworMzM4MDggM2RjOGYyYjQyNDhjMmI4M2VkM2E0NGNmYjlkYmY1NmFmOWIyOTc3YSByZWxlYXNlMjMtbWFpbnQKKzMzODA5IDA5YTJjZGVhYjhjMGFlODNlMjlhMDY3NmY3Y2IzMTU5NTYwMDYzZWQgbGVnYWN5LXRydW5rCiszMzgxMCA1MzBlMjNiZjllMTkzZWVhY2Y4OGZkY2NjOGVlYzY1NDAxNzQwNzYzIGxlZ2FjeS10cnVuaworMzM4MTEgOTAwMzI3MDk1YjA1MTQwM2ZhNmE4ODQwMjRhYjcxZTc5ODE1YTdiNSByZWxlYXNlMjMtbWFpbnQKKzMzODEyIDUyODQzN2EzZjVmN2E3NWMxOTEwODhhNzk3YmNhMmJlZjQwZjMwMzMgbGVnYWN5LXRydW5rCiszMzgxMyA2NjVmOGE2ZjQzN2RiNDZiY2U4MzdmNzQxZGM2OTI4MDAwZGI4OTFiIHJlbGVhc2UyMy1tYWludAorMzM4MTQgNDM1M2YwNDQyMmUzMjFmZDEyNGIxZWMwMmMyYzZjZDg3N2NhNDQ1YiBsZWdhY3ktdHJ1bmsKKzMzODE1IDI2NTA3OTg4MzY2ODczOGY2ZGY0YzY3NWY2ZWRiNWI5NWY0OTQ3YjYgbGVnYWN5LXRydW5rCiszMzgxNiA2MTZhOGMwY2M5MTcwNmFiZTA0MTU3N2NhOTU2N2IyNzRkYjVmNTJiIHJlbGVhc2UyMy1tYWludAorMzM4MTcgYTg4ZTZkZmJmZDZkMzRmMTA3YmQzNjBmYjVmY2VlN2ViZTY0NWY1NCBsZWdhY3ktdHJ1bmsKKzMzODE4IGZiMmFiY2EyZDJkNTU5YzYxZDZkODgyYmNlMTdhZWI1ZDQzMzg0MDMgcmVsZWFzZTIzLW1haW50CiszMzgxOSA5MmQ2ODA4M2EwZmQ2N2JmYWJlZmNlNzQ0YTk5NDc1NWY2Yjk2NDFiIGxlZ2FjeS10cnVuaworMzM4MTkgOGU2M2M1YTMzZjQ3MGY3YzM2M2UzOGE3YzE2MmQyNDllZGNiMmJiNiByZWxlYXNlMjMtbWFpbnQKKzMzODIwIDQ2MTAzMGU2YmQ2NzZjNWI3ZDk5N2JjNzE2YjQ0YTgyOWZkOWIzOTEgcmVsZWFzZTIzLW1haW50CiszMzgyMSA2N2E5MWY3NTBjNjMxMmNjNGY3ODkzM2FhMjM1YjAzMDRlZmJiN2M1IHJlbGVhc2UyMy1tYWludAorMzM4MjIgOWY2ZTJkZWUxODkyZjczYjkyMDZlYWEyYzZjNTY1MWE2Y2MyOWQyMyBsZWdhY3ktdHJ1bmsKKzMzODIzIDdiOTA2NTcxZGM2OGI0ZjAzYTA2NDExYTQyNDk5MzI5NDkzODdjNmQgcmVsZWFzZTIzLW1haW50CiszMzgyNCBmZTA1N2JlYTg4NTY2OWNkNWQwZWM5YTA1MWNiZjBiN2E1NDE3YWQzIHJlbGVhc2UyMy1tYWludAorMzM4MjUgNDBhYTRhMTBmNDliNmE1YmZmMjAzY2I0MWVjMTQ5ODk1ZTYxZTcyMiBsZWdhY3ktdHJ1bmsKKzMzODI2IDM3NzllYjQ4M2U2YmQ1ZGE0M2YyMTNjOWE1MmUzNDMyMWI1ZTc3NDcgbGVnYWN5LXRydW5rCiszMzgyNyA3MjBmNDRjNmQxMWMyZDE0ZjA1ZGNlYTU0ZWVjNjdkNDUyMjE5ZWExIHJlbGVhc2UyMy1tYWludAorMzM4MjggMTljMGY4MTdjYjQ3NTc1YzA2NWU0NzQ1NTM2ZTI4MWJmOGM5MjYxYyBsZWdhY3ktdHJ1bmsKKzMzODI5IDk5OGIwNjczMGM5ZmIwZTU5Y2QxODUyYTRiOTJhZjM3ZDYxN2U5ZTQgcmVsZWFzZTIzLW1haW50CiszMzgzMCAyMTA2NzZlYzlkNWYxN2VlNjRmZjNhZDczODg4ZTY1ZmZhNjZjMDU1IGxlZ2FjeS10cnVuaworMzM4MzEgMTU5OGZiZTY5M2Y5OWM4NTI2NTMyMGUxMjI4M2E4ZGIzY2VkZmUyNCByZWxlYXNlMjMtbWFpbnQKKzMzODMyIDI5MDMyZjM3ZGM4ZjgyN2YzNTk1ZTE4MmVjNjY2OGE4OWE3M2Y0NDMgbGVnYWN5LXRydW5rCiszMzgzMyA0YjQ2ZDU0NDlkNDk5NTcyMmJjNDc3NDNhNDllZTQ4NmVlZTU2ZGMzIGxlZ2FjeS10cnVuaworMzM4MzQgNjg0MmNlYjM5YTE0NDE2ZDRlYzc3MGQ1OTA0OTI1M2FjYWM4MjhkZSBsZWdhY3ktdHJ1bmsKKzMzODM1IDJjNmY5MmNkZGJhZDlhOWEyZmE0NThmYjU2ZmZiNTIxYzg5ODM3N2YgbGVnYWN5LXRydW5rCiszMzgzNiA1M2Y5MDY5ZmM2NTBlZWFjZmJkOGZmNWVlNjVmZmY5YTNhYmRiMmUyIGxlZ2FjeS10cnVuaworMzM4MzcgYjg2MjNiMmM5YmNlNmFiOTZmMzJkOTBmNmM0N2VlMTkwNTliNzgyOCBsZWdhY3ktdHJ1bmsKKzMzODM4IDgyYTFkM2YyMTBhZGYwOGEwYjY2MTBmYjc2ZGU3M2VjOWI4ODhiMTQgbGVnYWN5LXRydW5rCiszMzgzOSBjMzNkMzY4OWVkNWI2Y2EwYjAzOTIwNTkwNmZkZjdjM2RmOTI2YTAyIGxlZ2FjeS10cnVuaworMzM4NDAgZGUyOGQ5OTI4ODU1NTZkYWU4MTRlZjkzZDZmYTYxMjM1NTRjN2RiMyBsZWdhY3ktdHJ1bmsKKzMzODQxIDVkMGM4N2I5NTcwZDNhY2I3YjE5YjNlMDViYTFiNjk4NmNhNDVlMjkgcmVsZWFzZTIzLW1haW50CiszMzg0MiA1MjNjM2Q2MWRiZGRlNzM0YTBmNTZkYmRiOTRhMDgwMzJiMjMwMDE3IGxlZ2FjeS10cnVuaworMzM4NDIgMzA0YjVhMzY1NTc2MTE0MjE4YjhiYzNkYWZmODZkMTNhMjQ5MDZlMyByZWxlYXNlMjMtbWFpbnQKKzMzODQzIDE4YjY3YWU5Y2Y0NTgyNDM2NzYzYTU4ZDhkYTU5MDRlNmVjMzVmZDIgbGVnYWN5LXRydW5rCiszMzg0NCBkZjY1NDg2MWNjZjZhMTA5ZjQxMzUyYzM2MDRlNmY0Zjg5NWM3ZTAyIGxlZ2FjeS10cnVuaworMzM4NDUgZjc0NmQ1NjkwYWQ2ZDgzOWRmNWI0YTc3MzYxZWQyYTFmYmE4MDFhOCBsZWdhY3ktdHJ1bmsKKzMzODQ2IGFhNWNiOGUzYjllYTViN2Q0ZDAxZTVmMThkMTNhOWZmYzBkYjBlYTEgcmVsZWFzZTIzLW1haW50CiszMzg0NyBmMzY1NGM1YWRhOTQ0OGNhMTUxNDU5MTNiNWFjYmRhMTFmMjU5YjJjIGxlZ2FjeS10cnVuaworMzM4NDggNDZiY2FiMmI3NGU5MjQ4NDliZTZjMWU2ZDI5ZTMwODhjYzY0NjQ0MyBsZWdhY3ktdHJ1bmsKKzMzODQ5IDQ1MDVhMGI5NzI0Y2YxN2QwNTQ4N2ZiZWM3MTYxYWIxNWNjZGY3YzQgcmVsZWFzZTIzLWJyYW5jaAorMzM4NTAgMDU2NzNiMTZiZGI4YzFlOWE5MjkyMzljM2JmMDVmN2JlNTAyZDc5ZiBsZWdhY3ktdHJ1bmsKKzMzODUxIGY0YjRiZjdlODdkN2UwYmU1ZTRmZTRhZWJmZGEwZmIzODZmNmYyNjggcmVsZWFzZTIzLW1haW50CiszMzg1MiBkOWYwMjdkYzY3NmRkOWNkNTUxYzZhMGFhNDE4ZmU2MzQ4MWY3MzQyIGxlZ2FjeS10cnVuaworMzM4NTMgN2NjMGEzMzk0NmEzMDQxNmY0OGU1ODI5MmNlZTY0Njk1MDRkMmYyZiBsZWdhY3ktdHJ1bmsKKzMzODU0IGYwZGZiYzE0MTQ4MzM2YjhmYzZjMDg3ZDc0YWZkZWRlYjI4ZjAyNTYgcmVsZWFzZTIzLW1haW50CiszMzg1NSA1OTBkOGNjYWJhYzdiZDBjMDUyNWQ1ODU4YTdjYWE2NzNkMTE0M2QyIGxlZ2FjeS10cnVuaworMzM4NTYgNmQ3NGYwMDZmODRhY2U4NGM2OWE5MDE4MzZkZmM1Zjg1NmI2ZTcyMiByZWxlYXNlMjMtbWFpbnQKKzMzODU3IDU5YmFkN2VmZmYwMjE2OTQ3MDJjODRiMzI0YjgzMTk5YzhjN2RjNzUgbGVnYWN5LXRydW5rCiszMzg1OCA1Njg2Y2EyOTdmNTVmNGY5Mjc5Y2M3ZDQ2MDNiZTNmOGFkNmY0YTRiIHJlbGVhc2UyMy1tYWludAorMzM4NTkgOWY1M2U1M2YzODgwMjNhMTA0MzhkMTI5ZWQyYTI2MWQzOWMxZjUzNCBsZWdhY3ktdHJ1bmsKKzMzODYwIDA4MTNiMzM2MTBjYzM1YzM5Yzg1MTNmZjdhYzgxOTEyMmI0YWIzOWEgbGVnYWN5LXRydW5rCiszMzg2MSBlMzczNjMwYmZlYWI3NjQwZWJmMTU4MzUxOTliNTZlZTE0OTNjMTYxIHJlbGVhc2UyMy1tYWludAorMzM4NjIgYTQ5YzFiNzYxMDZjZTRhYzhhZjU0Y2Q2MmUwZWEzZWJkYWQzMjIxYiBsZWdhY3ktdHJ1bmsKKzMzODYzIGUzMjgxYjBkZjZhNDFjNTk2NWE4YjQxNzVmMDQ1N2YxOGVkNGFlYTQgbGVnYWN5LXRydW5rCiszMzg2NCBiNjk4MjA5Yjk4Mjc4ODM1NGQzMGQ0YTAwZjI3YzcyYzllMmQ5MGU2IGxlZ2FjeS10cnVuaworMzM4NjUgOWI4OTE2NjMxZWI2OWVjMzJlNWM5YzQyMDU1MmI2ZWY5YTlkNmRlYSByZWxlYXNlMjMtbWFpbnQKKzMzODY2IDQ0NjA5NzlkZWViZjVlYzY1NTMyNjJkNzJiZWFmNzg2ODE1NzQ2MmIgbGVnYWN5LXRydW5rCiszMzg2NyA5NDFkNDlhNjVmMDZmMTIxZmM2YTMyNjJmNmI2ZWI2Zjc4YjI4YzM2IGxlZ2FjeS10cnVuaworMzM4NjggMzMyOWIwNThkYjIwMTJlYzZkYzk3YjBkNWQ1YTIyMmE4OGQ3OWJlNiBsZWdhY3ktdHJ1bmsKKzMzODY5IDU0NjE3ZWQyZDgzMDg3MDIyOTY2ZmY0MTNjMTdjNGYyZDg2YWNhNmIgcmVsZWFzZTIzLW1haW50CiszMzg3MCA0NDM1MzNkMDg3ODNkYzc4ZDZmNzQ4NzY0NWUxMjAxOTkyZGI5ZjE3IGxlZ2FjeS10cnVuaworMzM4NzEgMjliMWQwNzYzNzkwYWY3MGM2YTQ1NzhkMjFmMmEwZDQ5ZDI1ZTdhZSByZWxlYXNlMjMtbWFpbnQKKzMzODcyIDdjYjRhZDU5MzJlNjI2ZGZlNWQ3OGNhNDRiOGQzNjQ1ODlmNTU5NmEgbGVnYWN5LXRydW5rCiszMzg3MyA0NzA4ZmEwODYxMjFmMjNkMjc0Nzg4YmU4ZTk5YmRlNmU4ZWUyZjBlIHJlbGVhc2UyMy1tYWludAorMzM4NzQgZWYyMTY4MWE5YzdmYjYwOTkyODc4M2VlODk5NTg2Nzc4MWI0MDAzMSByZWxlYXNlMjMtbWFpbnQKKzMzODc1IGRjNDI0OWRkOWUzNTNhODIyNWRlZjEyYWRjNzExMjQwZGRmM2U0MDIgbGVnYWN5LXRydW5rCiszMzg3NiA4ZTJlZjI3ZjY4OGI1Mzk2MDYyZjY5MDIwMDExMzc2ODk2ZWJlNGRlIHJlbGVhc2UyMS1tYWludAorMzM4NzcgMmQyNzRkYTA5Mjc0NzY5ZjBiMTJkM2QxNDIxYWI3MjYxN2RhZDBmNiBsZWdhY3ktdHJ1bmsKKzMzODc4IDk0MmNlZWJlOTY3MWFmODY1NDNjOGI1N2NhOTQ2MDFjZTJhZTNkM2IgcmVsZWFzZTIzLW1haW50CiszMzg3OSAzZGRhNTNjMzEyYTVhYWIyM2NkMDk0ZTYzNWMzMmI1OTE1NGU5ZDkzIGxlZ2FjeS10cnVuaworMzM4ODAgYTMzMmRjYzc5MDJiOTYwYWEwMjZhOWJjMzgyN2MzYzA0YTI1NmI2OCBsZWdhY3ktdHJ1bmsKKzMzODgxIDk0MTQ4ODZmNWM3YWRjNjE5OTQ5OWU3YzhiNTdkN2E4MGNlOGRhMTEgbGVnYWN5LXRydW5rCiszMzg4MiAyYTk0MWZmMGExMzY2NWUwMmZlYTE2ODc0MTQwMGFiMTViZmZjNTRjIGxlZ2FjeS10cnVuaworMzM4ODMgYjU1ZDRhM2Y0MWU4NmUzOTg3NTA0NGI0YTk0YjViMWQ2NWJlNWQ0YiByZWxlYXNlMjMtbWFpbnQKKzMzODg0IDNkYjUwZDMxMzQwZDkzYzE4YjM1NTYyNDRkMzM3MjkyMDFkNTkxNzMgbGVnYWN5LXRydW5rCiszMzg4NSA0ZmYzODU3MmQwMzZlNGZhM2ZhMmY0YzdhYTU5YjU2ODA4YWVkNmMwIGxlZ2FjeS10cnVuaworMzM4ODYgNzFkZmQxZTFmMmVjY2QyMThjYjg1NjIxODFkODk2NmE0MjA0NzlmZiByZWxlYXNlMjMtbWFpbnQKKzMzODg3IDYwYWFlOGExZTIzNzI2YTQ1M2E0ZWY4MWFmODUyMjUzOTQzMzc0NGQgcmVsZWFzZTIzLW1haW50CiszMzg4OCA5NDY2NTI5MWFiMWJkMzMxZGQyNzNkZDBmNDVhMWIzZDhlNGIwODViIGxlZ2FjeS10cnVuaworMzM4ODkgY2NiNDBkYThjNDEyYzYwMTg3MzU4ODYwMjgwN2Y3NTU5N2VkNDk4MSByZWxlYXNlMjMtbWFpbnQKKzMzODkwIDdiYzc3MjUyN2U0NGRiOGM5MDNkYWJjZjgxODM5OGU3MzdiNTI5ZTQgbGVnYWN5LXRydW5rCiszMzg5MSBhZjU1MzViMGUwMDllNjY4MzBiMDBhOWY4ZDM0OGI2MjgzNTc2NWFlIHJlbGVhc2UyMy1tYWludAorMzM4OTIgM2VhNTJiYzc0ZDE3MWYzYmU4Y2U4ZDljMGEzMjk0MWQ1ZWQxYjFlZSBsZWdhY3ktdHJ1bmsKKzMzODkzIGQyNzljNDBiZDdiMzZiY2UzMTA4ZTJhNzdhNjdiMzBmODE2YTE1N2QgbGVnYWN5LXRydW5rCiszMzg5NCBhNTVmZWVhM2Y5MjFkYjVhMTBjMDRjOGFlMTNkN2ViODVmMjAwMzRlIGxlZ2FjeS10cnVuaworMzM4OTUgZmQ4MjRkNTc0YThmZGQxMDA1NDc4YTgxMjRjYzYwZDNmMmUzODM5NSBsZWdhY3ktdHJ1bmsKKzMzODk2IDEzMWM1NGYyMDJmZDg0NDYyNDNiNTdkMmYzNWZhZDM3OGY3YTdiNTcgbGVnYWN5LXRydW5rCiszMzg5NyAwZmE5OWQzMWZiNDgxMjBlNDYxY2FhNGNlNGUxYzU1NThmMDE3NDVmIGxlZ2FjeS10cnVuaworMzM4OTggYzEwYTFjZGNlNjJiNTFiNzlhNGY0ZjkzODRiNmVmMTAxNzkzZGJkMiBsZWdhY3ktdHJ1bmsKKzMzODk5IDlhNWQ2ZWI4MWNmYWFmMzc2YmQwNDUzOWRjNWQ5ZjI0Y2I1NWFmZGMgcmVsZWFzZTIzLW1haW50CiszMzkwMCAzYjkwNzRhZDcyM2U0YmYyYTU2OTdjZjdmMjUzMmExMWMyZjA5NDlhIHJlbGVhc2UyMy1tYWludAorMzM5MDEgMzllOTI4ZDAwYjY0Mzk4Yzc3YjQ4ODc5ODk2ZDBkODUyMGE1NTU2ZCByZWxlYXNlMjItbWFpbnQKKzMzOTAyIGQ3ODc3OTE4N2M3ZGYwNDkzNzM4ZGFiZDNlMDI2MDBjMWIzNTQyNTMgcmVsZWFzZTIzLW1haW50CiszMzkwMiBlZjFmMjk3M2ZhZDgwOTA4MjQzMzEzYmQ1NmZmZTlmNWYwN2FlOGEwIHJlbGVhc2UyMi1tYWludAorMzM5MDMgNWM1NGE3OGYxZDUxNTJiMTVkYzEwYTc0M2Y3ZGU3OWZjZTRhNGIyNyByZWxlYXNlMjItbWFpbnQKKzMzOTA0IGJjNjllMGRmZDJhMDM0NDk3YjU2ZWNkMDM5MDdmY2IwZmY4ZDViNzMgbGVnYWN5LXRydW5rCiszMzkwNSA2Njk1Njg4OTkzMDlmZGI4OGM4ODQ1ZTZkMzFjYjJlYzBkOTk3ZjE1IGxlZ2FjeS10cnVuaworMzM5MDYgMjUxZmEwN2ZjNWQxZjVmMmMwMDBmNzJhMzFlZjQ2M2Y3YWU5MzE3MSByZWxlYXNlMjMtbWFpbnQKKzMzOTA3IDRjMGFmMjJhOGYzZDEyNmRiN2E4ZWQ0N2UyNjU5Zjk4ODUyZWE5N2YgbGVnYWN5LXRydW5rCiszMzkwOCA0MWI2YTUzNjdlZTU2NDZiOGVkNmFiNTY1MDU2NTZjNjQ2N2YxOTY2IGxlZ2FjeS10cnVuaworMzM5MDkgZGMwMWNlMmY4NTU4MmRjMjQ1NDllMWM1OTA4ZmUzMTYyMmZkNmU5YyByZWxlYXNlMjMtbWFpbnQKKzMzOTEwIDc1NmI2NWM3OWY0MDAyNDVjMWRiM2Q5YTJhMTk4NzlkNTg0NmM0MmUgcmVsZWFzZTIzLW1haW50CiszMzkxMSAwYWFjMDc2NjM0NDhlMzAwZDViMDgzODJhZjk2ZTMyODU2YmNhYWIzIGxlZ2FjeS10cnVuaworMzM5MTIgZjhlYmFkZTJlNzI0ZGM2MWZjMmI2ZjczYjc4Nzg3MDgxZjczYzZmOSByZWxlYXNlMjMtbWFpbnQKKzMzOTEzIGQyZTRjOTRlZmJhYWIzMTBkMGM0ODc3ZWRhOTU5NTc1NjhmNzVjYTcgbGVnYWN5LXRydW5rCiszMzkxNCBhYzg2YjA3MTdhZDE5NDYzZGUzNzk0NzhkZjIwNTMzMTc4MTNmNGZlIGxlZ2FjeS10cnVuaworMzM5MTUgMGZlNjBmYTYxN2Q4ZGM3MDQxZDc1ZmE5OTgyZWUxYTdlZmQ0OGJjOCByZWxlYXNlMjMtbWFpbnQKKzMzOTE2IDJkYjhjNjNlNjljZDY0ZjJiOWEyZDBkNzk1MzljOTVhMTZjYWQ0OTcgbGVnYWN5LXRydW5rCiszMzkxNyA2YzFlNDdkNTRhN2EzMDFkODNlM2I3Y2U4OWU1MjkxM2IzYWU1MTQzIGxlZ2FjeS10cnVuaworMzM5MTggYTM4MDYxMGVlYjVhYzc5NWRhMzk5ZTI5YTk2MDRhNjdhYjQwZjY0MiByZWxlYXNlMjMtbWFpbnQKKzMzOTE5IGQxNWQ0NGQ5ZDZmNWNkZDVkOGExYmY4N2ExODE2MzljMDFiYjBjOGIgcmVsZWFzZTIzLW1haW50CiszMzkyMCA1ZTkzYTRmNmQ5YTk5ZmEyM2EyNTkzNDY2YjQ5MGNhMDJiMzMyNWU0IGxlZ2FjeS10cnVuaworMzM5MjEgYjUxOTAzNTAwNmM3MTk4MGMwNTM2NTMxM2ZmOTczOWJmYzU1NzgxNyBhc3QtYnJhbmNoCiszMzkyMiBlNGZmMGRiM2IwODg2ZDAzZGY0N2RiODFiNjViZTZmMzEwNDNjNTNhIGFzdC1icmFuY2gKKzMzOTIzIGFjMGRiMDM0ZGQxNGJkN2YwZDQ1MDQ3MzU2MTQ2M2NiOWMxMmVkYzIgbGVnYWN5LXRydW5rCiszMzkyNCA4NDgxYzliYWY3ODVkNWQyZDcwMjI5NWVmMWYzY2UwN2M5MjJiOGMxIHJlbGVhc2UyMy1tYWludAorMzM5MjUgN2FiMWE0MWYxNmRhYjE1MzAwMzZjMTI2N2E2NGU3ZjEwZmNjMDJlMCBsZWdhY3ktdHJ1bmsKKzMzOTI2IDIxZDNiMDZkZjc5M2NiMWFjNjg1OTFjNmI2NWZiNmRiMDU2YThkYzIgcmVsZWFzZTIzLW1haW50CiszMzkyNyA4Mjg3ZjUyMmJlYTE3ODRjZGQ1MzFhNmYzZjI1YjFmNWI3YjYxODY1IGxlZ2FjeS10cnVuaworMzM5MjggZGY4Y2JkZTVjNTg4Mjk4YjVmY2U5YjA1NzNmMDgwOWVkOTMyZTQ5ZCByZWxlYXNlMjMtbWFpbnQKKzMzOTI5IDA1NmYxNmE3YWJiMDM0OTY5OTU2NzIyMjNiNmFlMzRiYTY3Y2IwYzUgcmVsZWFzZTIyLW1haW50CiszMzkzMCA0MDAwY2M2ZGE5MjUyMjA3YWI4OWZkYjlmODU4NGYyZmM1ZDM1MzA3IHJlbGVhc2UyMy1tYWludAorMzM5MzEgYTVmNjA2ZjljYTA1NzFhMjRlZTNmMDgxZGRlYzkwMzY0YjI1YzlmMSBsZWdhY3ktdHJ1bmsKKzMzOTMyIGMwNmRmZmI2YTk4MjI5MTQxZjM0MjBkZTQxZDMyMGJmNDFkNDU4YWIgbGVnYWN5LXRydW5rCiszMzkzMyBlODE3MzU0MjM5M2ZjNDczNWUxNjFlZmYyN2EwOTU5NGJiN2E0MWFmIHJlbGVhc2UyMy1tYWludAorMzM5MzQgMjQzNDFjYjIxZmQ1Y2IxOGYzZjNlN2NkZTVhM2FmMDNmMDIyZTZlNiBsZWdhY3ktdHJ1bmsKKzMzOTM1IDgwNjE3OTQwMGYzNTRlZGJjMWVjMzMzZjljZWI2OGM4YzQxNDA5ZGUgbGVnYWN5LXRydW5rCiszMzkzNiBjMzBlZDEzZDM1ODIwOWEzYjg0YjIxMDgyMmY3YTcxZmJiNGZhYTM2IGxlZ2FjeS10cnVuaworMzM5MzcgYTBmNTNhMDY5NDcwMzUzYWE1ODI0MWNjZTQ5ZDExMGZiNGQyNjlmYyBsZWdhY3ktdHJ1bmsKKzMzOTM4IDEwOWQ2M2Y3MDM3YzkzYTNmZGQxMWFiYWJiMGQ3OTkyZDQxYzlhZWIgcmVsZWFzZTIzLW1haW50CiszMzkzOSA0OTY5NjhmMzY0OWU4YzEzODQ0OGJmMTMxMTdkYWE5NzUzOTdkYzcxIGxlZ2FjeS10cnVuaworMzM5NDAgZGQ0NTFhNjNmODllNTlhMTYxODczOTBiYjczY2E0ZWQ3ZTVhMjI5YyBsZWdhY3ktdHJ1bmsKKzMzOTQxIGI5NDBhYjlhMmFiZjQ0ZjNlOTk4NDU0Y2UzNzRmYTAyNzJjNTViMjMgcmVsZWFzZTIzLWJyYW5jaAorMzM5NDIgZGZiZDI4MTEyZTA5N2NkYTY1YmIyMjAwNzBjZTI0NmIzMGMxODgyZiBsZWdhY3ktdHJ1bmsKKzMzOTQzIGQ4Yjc2ODc4MDRiMjM3ZDg2NjMwYTE0N2E4YmNjM2FkM2QxN2NlOGYgcmVsZWFzZTIzLWJyYW5jaAorMzM5NDQgYzQ3ZjVhYzhiMDZkZDNkZGVhNmRlNTczMTEwODA3NWJkOTdlZmU2MiBsZWdhY3ktdHJ1bmsKKzMzOTQ1IDNkNGE1NTAzZTQ2ZDkxMmMzODczYTAyOTkxMzY3MTJiYzA1YTM2MWQgbGVnYWN5LXRydW5rCiszMzk0NiA3ZjM0NjUyZDcxNjEyYWVjZWFkODM2NWMyODcyNjhmMmZlYzI5Zjk1IGxlZ2FjeS10cnVuaworMzM5NDcgYzQ1MzU4OTM1ZWQzZmZmOGZhMDllMTdhZWE3MzQzNGIxODJlMWNlYiBsZWdhY3ktdHJ1bmsKKzMzOTQ4IDQyMTQ3MTRhYmFjYmYyMzk0ZjZiZGY3YzFhZjI4ZjdjYzU5MDA1ZTIgcmVsZWFzZTIzLW1haW50CiszMzk0OSBhNTcwYmI5ZjEzM2Y3MDkyODRmY2Y1YWM5ZTNjZDZlNDgxMDA0Zjk4IGxlZ2FjeS10cnVuaworMzM5NTAgZTgzNTc1YmIyOWRhOTA2ODVmMDg4YzFjNjcyY2I3ZmMyYzY2MGZlMSByZWxlYXNlMjMtbWFpbnQKKzMzOTUxIGYxZWEzMTExMjdjZjE1OTc5MGI5ODliZTA1OGU3MDZhNTE3YTg5ZTAgbGVnYWN5LXRydW5rCiszMzk1MiAzZmIzNzQ3Y2UzMDRjMTkxNzNlMDAxNTAyMzY5ZjQ5OTUyZmQ2Y2I1IHJlbGVhc2UyMy1tYWludAorMzM5NTMgN2Y2NjBmYTI4OGFhYmZlOTkzMTRhODA3MjJhZDZhNjdiNzlkNmRmOCByZWxlYXNlMjMtbWFpbnQKKzMzOTU0IDUzYTMyMmM2ZGU1MjJhOTA5MDQ5YzQ0YjAwYjAxMmFjMDUyM2MwNzEgbGVnYWN5LXRydW5rCiszMzk1NSA5ZTNkNTFiZWM1M2EyN2U5NmFkOWZhYmVkZGFjODE4NDc5ZGNmYTVmIGxlZ2FjeS10cnVuaworMzM5NTYgNDk3NjU5NDUwNTM0OGVhNDk2NGJjY2NjNDUzNjU5OTA5M2FiOTEzYyByZWxlYXNlMjMtbWFpbnQKKzMzOTU3IDk3ZjNkNjY1NThmYjhlYTcxNGE3YmMxN2EyMWQ4NzdmYzNiMDMyZGYgcmVsZWFzZTIzLW1haW50CiszMzk1OCA5NTY5NWNjNDVjZGQyZWFkNWRjYzYyMjU4MmIwMmU5ZGUyMGRhMWIzIGxlZ2FjeS10cnVuaworMzM5NTkgOTk1MWI2ZTlhM2VhNTdiZTRiODNmNTMzY2I5ODJlMTZhN2NmYjFmYiBsZWdhY3ktdHJ1bmsKKzMzOTYwIGJmMmFhN2RlNDM3ZDM0NmFlOTg2MDliNzAxNjA0OTM3YWMzZDIyZjAgcmVsZWFzZTIzLW1haW50CiszMzk2MSA4MzBjMGNkOGZkYjIyMDIyMWZkZWEwZDkyZjQyMGM3ZjcwYzcxOTkxIGxlZ2FjeS10cnVuaworMzM5NjIgMGRmYWZhYTEwNDAxYzE1Yzk0YjI2NTYzYTFiNzJkNzI0YjMwYTNiMSByZWxlYXNlMjMtbWFpbnQKKzMzOTYzIDY2NjU0YWM2OTYyMmYxYjE5OGRhYWY0MmZjN2Y2ODE0YjUyM2QwNDAgbGVnYWN5LXRydW5rCiszMzk2NCAzYTUwZjgzNjlhZDU2NGUzNjhjMmU3MTgyYzgzYjEyMjVmNDEyYzc1IHJlbGVhc2UyMy1tYWludAorMzM5NjUgNzE4ZTE0ODg4NzFkNDAzMTUxYzA1NDBkMmJjNzljZTZkMzExZmNhNSBsZWdhY3ktdHJ1bmsKKzMzOTY2IGY5NjI0Zjk0MDYxYTdlNTBlNmUyY2E3YWQ1MzQ4OGYwYmJhMDU4ODMgcmVsZWFzZTIzLW1haW50CiszMzk2NyBkYTFiMTkxYjBhNmEyZDk1MDkzYTRlMjJlMjYyYTM3MDI5MDA5MGYxIGxlZ2FjeS10cnVuaworMzM5NjggYTU1ZWI1NGE1NmQwYmM1N2NkZmUzZjY3OGI3NTU3YTk3ODliNzAyNCByZWxlYXNlMjMtbWFpbnQKKzMzOTY5IDM3YTQ1MDJmMTYxMDc0ZjZkNmY1ZWJlMWY4YjliZjQ1ZDZjNGU3ZDEgbGVnYWN5LXRydW5rCiszMzk3MCA5ZGM1ZTcxNTk2ZjdmYzEzMjAyNmUwYjkxYzlhYThkZjE2ZWYyMzA3IHJlbGVhc2UyMy1tYWludAorMzM5NzEgZWJiODNmMjY2ZmE0ZjJkNDhjNzYyMmRiM2IyN2Y2OWE4MTAzNjUwMiBsZWdhY3ktdHJ1bmsKKzMzOTcyIDI3MDA1MmY2ZjBlMWVlMGYwZTcxZmQ5ZjY0ZDRjMTMxZDEyOTQ0NzIgcmVsZWFzZTIzLW1haW50CiszMzk3MyA3YjU3NzM3N2Q1NDZmZTY3NzNlMjRmOTYyNGJiNzgxMGI2MjUxNTNiIGxlZ2FjeS10cnVuaworMzM5NzQgOTQ4ZmQzNGViMDUwOTZjMDM4MjAxZjNlNDE3YjI2OGRiYTk0MGJlNCByZWxlYXNlMjMtbWFpbnQKKzMzOTc1IDExNGQ2OTNhNWI4OTNlZjM1ODlkYjNhNDA2ZmM1OTEzMjQ5MDUzMDIgcmVsZWFzZTIzLW1haW50CiszMzk3NiA1MTc0NDI3OTQ1OGZiMDA0OWE0NTJlOWY2YjA1MWU1N2MxNGY0ZTJkIGxlZ2FjeS10cnVuaworMzM5NzcgNTc5NTFiYTVlOWIxMDc5OWRkMDQ5MTM4Y2FkOWJjMmIyZTIyMjYxZCBsZWdhY3ktdHJ1bmsKKzMzOTc3IDBjMTNiYTUzNTkxODJmMmE0NjlhYjFlMDEwZmI4Zjg2NmVkYmJiOGIgcmVsZWFzZTIzLW1haW50CiszMzk3OCA0MzZkNTc3MmI4N2ZmZjllODIzZDg4MDEzMThlZjQ4NDkwZWY4OThiIGxlZ2FjeS10cnVuaworMzM5NzkgMGYyNmFmN2MzYjUyYjFlYzk2MWY4YmNjZmZiNWVmZGIzNGRkMmZlYiBsZWdhY3ktdHJ1bmsKKzMzOTc5IDVjMGE3MDRlMWJlNGQ3ZWRkMjNlM2MwNDdjNGFhZDEzYzBjNTcwMWYgcmVsZWFzZTIzLW1haW50CiszMzk4MCBhNDA1MWFkNzY2NmU1ZDVmM2VmYzc5NjNlNzQyZTlmMWE4ZGYwOWY1IGxlZ2FjeS10cnVuaworMzM5ODEgODkzNzVhMTNhMThjOGFlOTdjZDE4NGQ0YTg0YTczOGVhYjNlMzQ4OCByZWxlYXNlMjMtbWFpbnQKKzMzOTgyIDI0NGI1NWM5MGUwZjMwNjZlMmQzMzg5MzJiMjAyYWNlYjlmZWFkMDQgbGVnYWN5LXRydW5rCiszMzk4MyA3ZDIzMjk4MWQzZTM4YzQ2ZjA5M2I3Njg1YmY5MjM1ZWQxZWJjNDQ5IHJlbGVhc2UyMy1tYWludAorMzM5ODQgZmY4MDVhMTQ3YjZhOTE4OTg4ZjM1NDA0ZTYzOTMwODUwOTE2NTcwOCBsZWdhY3ktdHJ1bmsKKzMzOTg1IGIxNzdjOTZlZTM1MDNiYTg5YTJjYmE4YzNhMmZmY2E3MDI2ZGUyM2UgcmVsZWFzZTIzLW1haW50CiszMzk4NiA2NmJhMGUwZWMyMDI2OThlMDMzZmNjZGMxNzE4ZWNjMTRjY2E2MzBhIGxlZ2FjeS10cnVuaworMzM5ODcgYTc0YjQ2M2JmNzZkYTdmMzFjOGZiZmY5NTQ3YzAwZTIxMTk1Yzk0OSBsZWdhY3ktdHJ1bmsKKzMzOTg4IDg0OTg4ZTdiYzdiN2JiYTk1NGMyZWQ3ZmZmNTgwODU4NzMyOGUyOGMgcmVsZWFzZTIzLW1haW50CiszMzk4OSA3MTdjYzJjOWZkNjBlYzc5MDA5ZjllNTdmMmQyMzY3NGQ1OWU3NTExIGxlZ2FjeS10cnVuaworMzM5ODkgNWVkNDBmMmY2NWZiNWFkZWQ4MjY3NDUwNTAxYjRmY2NkZGIwOTk5MSByZWxlYXNlMjMtbWFpbnQKKzMzOTkwIDlhMGFhMWRiZjM1MTQ3MGMxOTJkNDVjYTVkMGUzMDk5OWRkZDAyNjkgbGVnYWN5LXRydW5rCiszMzk5MSA2MzEwMGNjM2YxNWFmNDBhZmE3MTJhMWQ0NjQ3NDUzYjNjZjVlNWNkIHJlbGVhc2UyMy1tYWludAorMzM5OTIgY2MyZDllYTRlYmQ1MGZjNjQ4ZmQ1YWM0ZTVjYTZjZDlhMjdhNWQ0MiByZWxlYXNlMjMtbWFpbnQKKzMzOTkzIGRmMDA5M2E1OTg1YzNjYjE4ZTFiZmI4ZjI1NDRlYjdkNWUzNGZmMDggcmVsZWFzZTIzLW1haW50CiszMzk5NCAyMjUwMmY3OTViNDljODM3NmU2MTcxODg4NTI4NDBiYWZjZTE4N2UzIGxlZ2FjeS10cnVuaworMzM5OTUgNGE1OTEyMmE2NjQ2YTFjYjA2MGMyN2QyZGIyNjBjODIwZTVjMWE1ZCByZWxlYXNlMjMtbWFpbnQKKzMzOTk2IDFkNmQ2ZmI3ZjEwYjc3YmNlYjFjMjVhMmM2ODI3OTk0NzYxODhlOTMgbGVnYWN5LXRydW5rCiszMzk5NyA4MDkxYmQ5MmVlMDE1YmM2MGRjOWZlYjA3MGU0NzRkNTA3ZDYxN2Q0IHJlbGVhc2UyMy1tYWludAorMzM5OTggNGI0YjU4MWIzYjJjODMxNDRkZjcyYzg5MGM3Mzg3ZDE5MzI5MzkwOCBsZWdhY3ktdHJ1bmsKKzMzOTk5IDI2ZDNmNWI4N2FkM2RmYWU3ODdkYzg4ODIwZTUwZTZmM2U2NWViM2UgcmVsZWFzZTIzLWJyYW5jaAorMzQwMDAgMjkwNTY0NmEyYWYzNzU3YjA5MTYzZjZjODAwMTVlMGM4YTcxNjEyYyBsZWdhY3ktdHJ1bmsKKzM0MDAxIDc5YjFhOWVjNTIyMzEwMTJlMmE0ZjY3M2FmNzczZjg2Njk1MDAyZDcgbGVnYWN5LXRydW5rCiszNDAwMiA2NDZmMGYxMWM1MTliNTZhMzEzNzhlNjM2YTVkYWVlMTJkMzUyNmYxIGxlZ2FjeS10cnVuaworMzQwMDMgMTE1ZmFjOWQ5MDQ1NmI5YjU4NTk1ZjlkZGVhNGQyY2Q3OGY5NmFmNyBsZWdhY3ktdHJ1bmsKKzM0MDA0IDUyZjRmMmE4Y2NlNzlkYTM3Y2Q4YThjMDhkZjgxNDMzZDMxMmE5NTQgcmVsZWFzZTIzLW1haW50CiszNDAwNSA1NWE0YTQxNzI3M2VkMTIwNzdjMjQ2NzBhZjI3N2I0MTM0MjMyNmI3IHJlbGVhc2UyMy1tYWludAorMzQwMDYgZGRlNTk0ZjcwZDZjZTRjMWRhOGQ3NzJhNDQ2YmQ4NjUyMzA5OGZiMCBsZWdhY3ktdHJ1bmsKKzM0MDA3IGJmYzk3NGRlZjQ3NDAxYzEzMTk2MTY2ODhjM2VkMWYyYzdkODMzYTMgbGVnYWN5LXRydW5rCiszNDAwOCA3MDBjMGNhNDI5ZWZjZDQ5NGVhMzViYzY1NGYxZmI5MzhmOGFmNDA4IGxlZ2FjeS10cnVuaworMzQwMDkgNmRkOWM3YzVhYTEzZDQzZmI0ZTAzZDcwZGYyYzA1ODVkYmQyYzdmMCByZWxlYXNlMjItbWFpbnQKKzM0MDEwIGRhNDM0YjUzNzY2NDkyODRiZmIxMzExOTdmODM4YjE1Mjk4MjgzMGIgcmVsZWFzZTIyLW1haW50CiszNDAxMSA3N2RhOWY4NzNhNGZlNDE3MTdkYzY4NDc2N2U4MTAzNWQ0ZDAwYTgwIHJlbGVhc2UyMi1tYWludAorMzQwMTIgZjQyOTU1NTllYTgzNmFiNTcxYjNmNGVkOGVjNDM3ODA4NDZmZTBkZCByZWxlYXNlMjMtbWFpbnQKKzM0MDEzIGNiMjgxNTM4MzczY2FkMTYyMTZhMDUzNDA2MjJlMDE2YjVjMzQ5NDggcmVsZWFzZTIzLW1haW50CiszNDAxNCAyNGM2MmY1M2ExYzkyOTE0YWIwNDgwZWI3MGY4ZGY3YThmYWU0YzUxIHJlbGVhc2UyMy1tYWludAorMzQwMTUgNDFmZjJjMTNlYTRhOThhNzllNzg5MTVmYjQ2MjEwNWU4MjljOGE5MiBsZWdhY3ktdHJ1bmsKKzM0MDE2IDE3OTNiNjVhNjIzMGZlNDZhYmIzM2NiMDE3YjkzNjQxNTkyYzY1YzggcmVsZWFzZTIzLW1haW50CiszNDAxNyBjMTZjNTUzODYwYzJkZWZiNDg3MzkxZWFlNWQ1ODY2ZmEzM2FiZWQyIGxlZ2FjeS10cnVuaworMzQwMTggZmVkNjUwMTE4OGRhNDI3ZGE2ZWZmZjI2YzQ5ZWNhZDk4NWZhMjNhNCByZWxlYXNlMjMtbWFpbnQKKzM0MDE5IDc0YmMzNDkzY2UwMzUyYmZiNzhkNmIwMzFhMzE4MGNjZDM4ZDg5NjMgbGVnYWN5LXRydW5rCiszNDAyMCBmMDAzZTQ4ZjU2MmRkNDVhY2NiNGQ2OTRlMThiYmFiN2FlMzJmNGE1IGxlZ2FjeS10cnVuaworMzQwMjEgN2UzYTFkM2M5MGY1MzBhZTAzNDNlMWY5ZTVhNzQ4NDNiZmM2NDlkOCBsZWdhY3ktdHJ1bmsKKzM0MDIyIDY3OTBjZjc4NWY4YzVjM2VhYjEzNGMwZjU4MTQxMTlmMWUyOTc4ZTggcmVsZWFzZTIzLW1haW50CiszNDAyMyAzM2RkMTJiMmViZTZkNjY3MDYyMDAwOWNhYWY2ZGYxOGFkZWZiOWM4IGxlZ2FjeS10cnVuaworMzQwMjQgMTNhOTE0ZTBjNWMxNDRjNjc5NTNlNmI3YTliZmJjZTY4YWExZDZlMSByZWxlYXNlMjMtbWFpbnQKKzM0MDI1IDE5NjExZDEwMWQyMzEyOWExZmIxOTY4YmZlM2NhZDU2MWEzNDhlYWMgbGVnYWN5LXRydW5rCiszNDAyNiBjMjUwN2ZlMmU2OWUxMTg4MDI2ZDc5MDQ3NjA4NGJmMTdhMWEyNGY3IHJlbGVhc2UyMy1tYWludAorMzQwMjcgNzcwZmU4M2JmODlmNjU2ZDlmNmI5OWI5N2NlMWY2YjBmZWY1Nzc2OCBsZWdhY3ktdHJ1bmsKKzM0MDI4IDE2YzU5MmQzMTZjMmE5NGQwY2YxMDIyYmM4YjU1ZTA5MTdhYTI1OTQgcmVsZWFzZTIzLW1haW50CiszNDAyOSA1MjFkMDI2YTgwNDhjOTNlZmQzZjQ0ZDc4NzliYmU1YjljMDM4ZTYwIGxlZ2FjeS10cnVuaworMzQwMzAgMjE0ZGY2MmJjZjEzYThmOWYwMzQzOTczMjBhY2UxODNiMjFjMDk0NCByZWxlYXNlMjMtbWFpbnQKKzM0MDMxIDk2M2M2ODBlZDliMjBiNjJmZGNjYzU4Y2ZjODY2MjQ0OGU1ZGU1ODQgbGVnYWN5LXRydW5rCiszNDAzMiAwYmVhOWQzODkyOWRjMzk0NDgyZjNmMDM4MTljZjhhZmZjN2ZlOGFiIGxlZ2FjeS10cnVuaworMzQwMzMgMDYwNzVmMWJkOTQ1YjY1MzYwNTIwYzVhZDY5NmQxYWVmM2Y5Mzk3YyBsZWdhY3ktdHJ1bmsKKzM0MDM0IGQ1YTZiNjM2N2JiMWMxZjY0OTRmNWRjZGVkZTI1NTVlNzgzODVjMTAgbGVnYWN5LXRydW5rCiszNDAzNSBhNjQwYmZlZWI5YjU2MzUyOTdiZjQ2ODk2M2I2MWI0ZWUwNTIyMDdmIGxlZ2FjeS10cnVuaworMzQwMzYgNzhiYWI4ZmM4ZWQ1Y2ZmMjA2Y2ViYjNlNzEzN2JiMjQ4YjYzN2MyYyBsZWdhY3ktdHJ1bmsKKzM0MDM3IDJhODI5MTRiMDhjNWUwZTI2ZDA3NGUxMmUyNDUwNDE2NmJkODY5YjQgbGVnYWN5LXRydW5rCiszNDAzOCA3ZGNjNDU0YTcwYzNiMDc3ZTUzYjMyNWIxZDdlY2I0NTBiMTQ3MGE0IGxlZ2FjeS10cnVuaworMzQwMzkgMmVjOTJmZWJjZDFhOGY2ZDg0MzgxNDhkMjRlYTEyMjRlYTFlMmFhYSBsZWdhY3ktdHJ1bmsKKzM0MDQwIDE2Y2U3ZTk0N2EzNDQyYjE1MmQyZGIwY2Q2YTBiZjIxNjI0MDMwZGEgbGVnYWN5LXRydW5rCiszNDA0MSA2Yjg0ODAyYzk1MjQyNGNlYjA0ZmEzZTc5ZTBmM2QxNzVjODJmYzFmIGxlZ2FjeS10cnVuaworMzQwNDIgYjUzMzIyNGYxMzczZjczNTc3MDhjYjk1YTc4ZmUzYWJmYTZlN2RmMiByZWxlYXNlMjMtbWFpbnQKKzM0MDQzIDNhZmJjMzM5NzU2YTZiN2JlNjdmOWRkN2Y1NjcxYmE5ZDg5YWU0M2EgbGVnYWN5LXRydW5rCiszNDA0NCAzODdhOWUxODQwNzRhYWY4YjVmMTFkZWUwYzUzNWEzZjI4MTIwMDE4IGxlZ2FjeS10cnVuaworMzQwNDUgYzQyOTQ0ZWE5NzQzZTY3YmZmNGEyMzBiYmQ4Njk2YzBhMmE1ZjM3MSBsZWdhY3ktdHJ1bmsKKzM0MDQ2IDU2MjA4OWE4Njc4ZjI4MDI2MzA5YWYzNDNkYWYzMzAxMGI2YTQ5N2UgbGVnYWN5LXRydW5rCiszNDA0NyAwNWE4NTA5Y2ZiM2NiMTk1YTgwMzJmODcwZGQxZDU1Yjc5YWFmMDc4IHJlbGVhc2UyMy1tYWludAorMzQwNDggNjNkZjc0MzA1ZDdiZjRiOTMwNmIzZjFhNjdiNDIwNWZlNTNjYzc2OSByZWxlYXNlMjMtbWFpbnQKKzM0MDQ5IGExMWUxY2IzMDY0NDU2ODNjZDUyNmEzZjBhZmU2ZmU4MzgyY2EyYTAgbGVnYWN5LXRydW5rCiszNDA1MCA4ZWQwY2U2MmI4MmYxOTVkMTM5OTE4Y2ZhY2U0NTYwNWJlMWU2MDBkIGxlZ2FjeS10cnVuaworMzQwNTEgZDVkYWJkMTUxNzUzYTU0MDAwYjE2ZWFkNDM2ZDJiN2EyNjlkZDI3ZCByZWxlYXNlMjMtbWFpbnQKKzM0MDUyIDIwNWNjOTE4ZjFhY2E4ZWZiNTdlN2JhOWMyYmFlNGI4NjBiMTU3ZjYgcmVsZWFzZTIyLW1haW50CiszNDA1MyBkNTllY2EyZWZhNmEwZDQ0ZWQ3YTdjNDY1OWZkYzQ0NDIxYmNiZDhkIGxlZ2FjeS10cnVuaworMzQwNTQgMDA0NTNhMDUwOGRmZTc2N2I1ZjU1NjliNTZhYzA0OWQwYzQ4NmMxZiBsZWdhY3ktdHJ1bmsKKzM0MDU1IGFhZjZiNmE4NTEwYmVhMGJlNzg3ODRkZGZlMjc5YmI2ZTJjMTdlYWEgbGVnYWN5LXRydW5rCiszNDA1NiBmNmZjNmQwY2YxZTVhZTczYjg2NDU5MWIzOWE0YjQyNDA2ODJiNDQyIGxlZ2FjeS10cnVuaworMzQwNTcgODA0ZDFjZDFiMDZkZWI0NGM0YTQ5YjFhOTQ1OGM1OGRlNTMyYWVkOCByZWxlYXNlMjMtbWFpbnQKKzM0MDU4IGQ2MTUzNjAzNDcyZTNjMmQ1MmMxOGNkMDJhMDk4Y2I4NThkNDg3ZWQgbGVnYWN5LXRydW5rCiszNDA1OSBmODZkODYzNjg3YzYwNjM1MTQyNjY0MDI3YThhM2NlMTdjOGI1NmI0IHJlbGVhc2UyMy1tYWludAorMzQwNjAgMDg5MWQyMmFkZjRmNGI4YzUwOTdjY2RlMDVmNDA4ZmNiY2M0OTU3ZCBsZWdhY3ktdHJ1bmsKKzM0MDYxIDFkZTFkYTNlZTNlODdkZDJiYmUwNTYyMWNmMjRjMDYyOWJlZWE0NTIgcmVsZWFzZTIzLW1haW50CiszNDA2MiA4YjlhOGM0ZGUyOGU2YjViNzQ5ODEzYmJlMjY2MWI1M2YzNTMxOGRjIGxlZ2FjeS10cnVuaworMzQwNjMgMDZlYWVmN2QwMmYyMWUzNDQxZThmMjQwMTIzZDg2OWRkYTkxZWFlNCByZWxlYXNlMjMtbWFpbnQKKzM0MDY0IGU1YmQ1MGM3ZTE5MzM2YjQ0YTMwMzM2ZDQ1Y2M2MzI0OWUxMDNkMDEgbGVnYWN5LXRydW5rCiszNDA2NSA3NTA0ODEyZmRiN2ViMWM5ZTIyOTRiZmUxZGU4YjcxNTg2ZGIwMTM2IGxlZ2FjeS10cnVuaworMzQwNjYgZjE0ZTI1MTM2OWIyZDVjODhjZTdkMWU2M2Q4MjJjMTNmYTY4MzVlOSByZWxlYXNlMjMtbWFpbnQKKzM0MDY3IDg1ZTY0MjU0M2RkYWE2YzI5OTdiNDE0NjFiM2JhMGE1ZjAzODcwZmQgbGVnYWN5LXRydW5rCiszNDA2OCA0NDU0NzM2YzZhODJlYTYzYjRjMTliYjRhMjI1MThkOTUwMWViNjhjIHJlbGVhc2UyMy1tYWludAorMzQwNjkgYmU5NTgyNzM0YjU2YWUxZjFhNjEzNDNlNmJiZTFiNzgzMzBjYjJiOCBsZWdhY3ktdHJ1bmsKKzM0MDcwIDM4ZTg3NTM1MzRiNzk3NDAwMDM2OGE5MGZjNGExMWM1ZTJkNzM2ZjggbGVnYWN5LXRydW5rCiszNDA3MSAyMWIyYTIxNTkwNDZkYmNmZmU1ZTIyY2YwNDZkMjVhMTMxNDAzMmM1IHJlbGVhc2UyMy1tYWludAorMzQwNzIgOGRjOTRiZDliODNhZTA2NDVkY2FmNGQ3MmEzYjdhNTdhNGRjYTNjZSByZWxlYXNlMjMtbWFpbnQKKzM0MDczIDgwYTRiOGY2YWUwZTUyYzQ2MTIwOTlkNWNmMThhYjNlYWVmNTViNjAgbGVnYWN5LXRydW5rCiszNDA3NCA0NmJkYjY2YWRjZGI3NjIwMjlkYmM2NzUxMjliNTE2ZWNhYWUyNzQ2IGxlZ2FjeS10cnVuaworMzQwNzUgMDVlOGI1MDNjZDQxNGUyYjM2YTdmMTQwMTlmM2Q5MWM2ODc2NGZiYyBsZWdhY3ktdHJ1bmsKKzM0MDc2IDRhZThiNjVjYWJhODg4OWVkNjlhMWExZWNkYWQyMjI1MDc2YWEzOTYgcmVsZWFzZTIzLW1haW50CiszNDA3NyBjM2IyY2Q2ZWYyN2Y4OGQ5OWQxYmZlMGExY2E3MWU4NDYwNDk4MWE3IHJlbGVhc2UyMy1tYWludAorMzQwNzggZTRjYzIzMmVkNTgzMGRiMjVlMmJjOWZkMDFlODM1OWNlY2VlMjMwYSBsZWdhY3ktdHJ1bmsKKzM0MDc5IDNiNzkzY2Y3NDhjNTY5MDU3OGJlMjk4ZGM5MDUyN2MyZWVkMTM2NTcgcmVsZWFzZTIzLW1haW50CiszNDA4MCBkYzUxYWJjM2YxNzQ2ZDUxOGI5MDFlNTQ3NGViZWZiZmI4NzEwZjc3IHJlbGVhc2UyMy1tYWludAorMzQwODEgZGIzMWQyNWIxMzdhNDMzNjg1ZDYyZGRiZDVkZjljZDY3MWFhOGFlNCByZWxlYXNlMjMtbWFpbnQKKzM0MDgyIGNmN2ZhZDlkNmZjYzM0YTg4NzVkYmIzN2FhMTllYzM5NWZkZTg1ZDUgbGVnYWN5LXRydW5rCiszNDA4MiBkMDVhZjE1NjJjNjRmMTk4MTZiMjZkOTU4ZGI5ZjRjOGYwZDQyMjA3IHJlbGVhc2UyMy1tYWludAorMzQwODMgNGFhODRhOGIxZmU0OTdkNzI0NTZjYzY0OWZkNjgxMzQ2ZTY0NmFhNiBsZWdhY3ktdHJ1bmsKKzM0MDg0IDNlZGNjZTBlZmM1NGI4YzI1NDZhN2I0YzFjMjBmNTU3MGFlYzVjZTkgcmVsZWFzZTIzLW1haW50CiszNDA4NSA1MTU1YjM4NTAyZDQ4MzFhM2VkNTE2ZjEzMWZkYzgxNWM1NDA1M2RkIGxlZ2FjeS10cnVuaworMzQwODYgMzVmOTI0OTY1MGU2YjVjOWQ3OWI4ZjM5ZDgyYmFmMWU2YzFhNjVjZiByZWxlYXNlMjMtbWFpbnQKKzM0MDg3IDBjMzY4ZWMwY2NjYjQ0ZGU2NWNkN2NjOGNjMjI3MjlkMTZhYTkyNmQgcmVsZWFzZTIzLW1haW50CiszNDA4OCBhY2NjMjUxY2RjNGE5ZWMwYWM2ZjI4MDUyNjFhMTY1M2ZkMDNkNDE5IGxlZ2FjeS10cnVuaworMzQwODkgYTUyYTA3NGU4YWU1ZGIxNTRmOWVjMDBkYTUzOTFjZGIwYmJlN2Q3NCBsZWdhY3ktdHJ1bmsKKzM0MDkwIDE5ODdiODU1Y2QzYTBjM2UyMTU4MmZlNzRkMTZmMTM4ZmJkNDVkM2IgcmVsZWFzZTIzLW1haW50CiszNDA5MSBmZTFjZDM3OTVhN2E5M2FlNmVhZDdkMDI2MmM0ZDE1ZTRhMDFlNDY2IGxlZ2FjeS10cnVuaworMzQwOTIgOTkzZTNjYTM0NjU2MGMxZTFiZTI4MzJjMjk5YjVlYTkzMDFkODhiNCByZWxlYXNlMjMtbWFpbnQKKzM0MDkzIGYxNWExMWNmODUzMTYzY2VlYTFjYjU0ZjIwYWE3NDAyYWZjODk0ZDkgbGVnYWN5LXRydW5rCiszNDA5NCAyODBiMGExZTMxZTM2NDFjNDlmNGY5NzQyYTNmNDExMjgxYWVkNzg1IHJlbGVhc2UyMy1tYWludAorMzQwOTUgMWU4NmYyZjcxMmYyMTkzZjg2MTIwZDZmMDIwOGU2M2NhMDMzZmI5MyBsZWdhY3ktdHJ1bmsKKzM0MDk2IDU4ZmZiNmI5ZjZjNTcyZTUxN2I5NzQ0NGFkOGVjNWY5MjY3Mjg4ZjYgbGVnYWN5LXRydW5rCiszNDA5NyBjOTcyZDllNDMxNjg4ZTQ0NjMxNTZjZmNjNDQ4OGM4OGIwMjg2OTIxIHJlbGVhc2UyMy1tYWludAorMzQwOTggNmE5MTAxNDcxYWQzNzFiODExZTdjNzNhM2NkYTA2NThmYWQ1YjY4NSBsZWdhY3ktdHJ1bmsKKzM0MDk5IGFhNzg3ZTM2MTJiYmM2ZmE1ZjcyOTRiZjBhMjg4NWI2ZmQ0Njc1MjUgcmVsZWFzZTIzLW1haW50CiszNDEwMCAwMDM5OTI4YTBmODQzOWJiM2ViMGQxNDAzN2I2NDliNjE4NTc4MmEyIGxlZ2FjeS10cnVuaworMzQxMDEgZTM4ZWM0Y2I4N2U5YzE2NDI3YmY1M2UzMzg4MmE4MzdlN2VlNWM4ZSByZWxlYXNlMjMtbWFpbnQKKzM0MTAyIGQwMzliMWJiMWVhOTdmNTIxMWQ5NjBmZDI2N2E0YmQ3MDNmNDJhZDUgbGVnYWN5LXRydW5rCiszNDEwMyA2MjE1M2U4MjU2NGJhMzEzZDdjNjkzNDNiZTU3NWFkNDNhNDAxYjQ0IHJlbGVhc2UyMy1tYWludAorMzQxMDQgZTQ0YTM1OWM4OThlMGMxNTAzMDc5MTZhNGI4YjdiOTk0Y2U5MDc4MSBsZWdhY3ktdHJ1bmsKKzM0MTA1IDEwYmE2NTY3ODUyZmQwNjhmZjcwMGZjNWU0MzAwYWFlNzkxMmQyMWYgbGVnYWN5LXRydW5rCiszNDEwNiA5NGYyNTI4MzNlMTMxNGYwZTk2NTI1NGMxMjFkNjVlMTAxZmY1MzYzIHJlbGVhc2UyMy1tYWludAorMzQxMDcgZmQxNjAxODQwN2U3ZTUzNDQ0NzlkODcxOWRkNjYzYmU0ZmRmYjZkOSBsZWdhY3ktdHJ1bmsKKzM0MTA4IDk2NzU2OTQ4ZDFjOTI0OTRiOTAyNjg0NjVjNDEyNDYwN2FiODFhNjYgcmVsZWFzZTIzLW1haW50CiszNDEwOSAxMWMzMjA5NWMzMDU2MWMxMDQxZDMyNTExYWE1M2Y0OWZhOTdhNTUxIGxlZ2FjeS10cnVuaworMzQxMTAgYTQzMGJlNjgzYTdhZDMzYjViNWQyMDk5N2MyYThiY2NkN2MyYTRkMSBsZWdhY3ktdHJ1bmsKKzM0MTExIGE2ODc3ZmZkOTU4MmQ4YWUwMzM0NDc3NWYxNmJlNDMwMzMwZjI3Y2UgbGVnYWN5LXRydW5rCiszNDExMiA1NGFiMTk1NWQyNDJlMzQ5ZDc4MjEzNzYzZGI3YmNjNjY2YjcyYjdmIGxlZ2FjeS10cnVuaworMzQxMTMgZGQ5OGYyOWNmYzk4NjMzMGQyOWJhMjc3Y2YwZmZlNzg2Mzc5M2ZjYSBsZWdhY3ktdHJ1bmsKKzM0MTE0IDc3NzNlYTdiMWM2NzQ5MWQ4NTNlZGE0M2JkMzljMTI3ZGY5NGVhMDQgcmVsZWFzZTIzLW1haW50CiszNDExNSBiODczN2EzMTA1MGNhM2NjNWQwYmMzNzM0YjY0NWMwYWE1NDY2MDk2IGxlZ2FjeS10cnVuaworMzQxMTYgNjJhZTIxOTE0NGM0ZjYyY2U1YWZiZWMwMTFkNmY5ZTUzZWMxNDY1YiBsZWdhY3ktdHJ1bmsKKzM0MTE3IDA0NTE3NGY2YTc5ZGIzM2JiMTA3NDM0YTYxNWYzYTcyZDc2YTU3MWUgbGVnYWN5LXRydW5rCiszNDExOCA0MWJiYmI0ODk3NjRjOGM2ZjdkYjM5ZTIyODE3Y2UxY2YyZmI2NmUwIGxlZ2FjeS10cnVuaworMzQxMTkgMzRiZDVjMTk4Y2FmODcyNDkwNjhkZjI5MjkyZDQ4NDgwZTk3MTU0MCBsZWdhY3ktdHJ1bmsKKzM0MTIwIDY4ZTFmODYwNTZiYzM0OWI3ZWNjM2I4MjU0MmVkODdjYmFkMmZkNTEgbGVnYWN5LXRydW5rCiszNDEyMSA1M2YxYzMyZWU2OWQ3NWMyNmY1NGIzMWVhMWU1OGMzNmNmODM3NzFiIGxlZ2FjeS10cnVuaworMzQxMjIgZTE3YzQ0Yzc5YjAzZTcxOTg3NTEwYzFhNTIxNDdkYWU3ZDIzYmY4OCByZWxlYXNlMjMtbWFpbnQKKzM0MTIzIDM3ZjBlMGIxNDAwMzg1NWI5MGEwYWJiZTdmZmEyMjc3YzFjZjc2ODQgbGVnYWN5LXRydW5rCiszNDEyNCAyMGQ5Nzg4NWU1Yzg5MzRkNDlkMDRjZTNkM2YzOGEyM2FkYzIwYzAyIGxlZ2FjeS10cnVuaworMzQxMjUgMjM5MjFiYzgxMjRiYmM1YzA2NzkyNGUwNmMyMDJhZGMxZTYxYzhmMyByZWxlYXNlMjMtbWFpbnQKKzM0MTI2IGM2OGViNGQ0Yjc4NzllMjA0ODJkMzMxYWNjZDJiZDQ3NDA4MjgzM2UgbGVnYWN5LXRydW5rCiszNDEyNyBmNDRkOGFkZGQzZTg2YTFlZTA3MmRjZDlkYWUxODFkYjM2OTVjODMyIGxlZ2FjeS10cnVuaworMzQxMjggMTNlYzhjNDc5ZmYxMDNiNDliMzcwMjExMzQzMTMxYTg5YjhkMzEwMyBsZWdhY3ktdHJ1bmsKKzM0MTI5IDM5YmU5OWM2NzdkNWUyNzg1MjYxNTEzOWZhMjE0MTlkNzE3Mjk1NjkgcmVsZWFzZTIzLW1haW50CiszNDEzMCA0ZDIwNGZjM2FkMzJmMGEzODRkZDZjMmJjOWZkMTBlNjMxNDQ4MjNiIGxlZ2FjeS10cnVuaworMzQxMzEgNzQzM2U3YzllMmNhNDUzMzVjMWZiNjU2NDIxYjFmOWQ0OTZmOWE0NyBsZWdhY3ktdHJ1bmsKKzM0MTMyIDQ2MjdjMTY4NDlhZWRjOWI1NWJlMDVmZWRiZjcwMWNlMzRmMDNkMmIgYXN0LWJyYW5jaAorMzQxMzMgYTI3NGI5MDM1ZDFlYWUyMzkwYThkNzJmOWI1OWQ0MDg5MTM0N2U5ZiBhc3QtYnJhbmNoCiszNDEzNCAxZWRiNTQ3MzgwOWU2YjhmNGU2MjEwNWRjZmM1ZTY2ZWM1OTFmNDk3IGFzdC1icmFuY2gKKzM0MTM1IDk1YWI1NWQxNDI1NmY2ODAyOTIwNjBhNzU4ZDkyYjA5MzA1M2JlN2UgbGVnYWN5LXRydW5rCiszNDEzNiBkODY0ZjMxNjhjYWNmY2I1ZDBiYTY2YWJmNmM1Nzc1ZmE0ODllNzE1IGxlZ2FjeS10cnVuaworMzQxMzcgMmY1ODIyZDBmOGUxNWMwYmJhNWQ1YzkwM2YwZTcwYzc2MTM3ZDRmOSByZWxlYXNlMjMtYnJhbmNoCiszNDEzOCA3OTkxOWM1NTBkZmVkZGFlNzg1MDkxN2JkYjUxOTM4OGFiMzRjYzk4IHJlbGVhc2UyMy1tYWludAorMzQxMzkgMGExNTBlYThjYmVhMjhmNGNiODBjMzVlN2Y0YjI1M2M4YTAyYWZkMyBsZWdhY3ktdHJ1bmsKKzM0MTQwIGMyYzEwZjFlYjhlMmI3NGJiYzg0Y2E0NzZkMTAwZTE5MzRiN2ZmMjcgbGVnYWN5LXRydW5rCiszNDE0MSBjOWNjMzUyNDkzMjJkNzhmMTEzMzU2YjI3ZDQ0MWY1OGU4ZThkYzk1IGxlZ2FjeS10cnVuaworMzQxNDIgYThmMDRjYmY2NTljYjAyNmNjMmI4MWMzZTRjZDBiNGEyYWM0YWYxMSBsZWdhY3ktdHJ1bmsKKzM0MTQzIGNkMGMzZjkxNmIzNGNjZjI2OWU1NmQyZThjNDZlZDI0MTM3NDhjNjEgbGVnYWN5LXRydW5rCiszNDE0NCBlODE0N2Y4NDFhNGFiMmRhM2U3ZGIxYzZlMDk4YjE2NzFmNmVlMDYyIGxlZ2FjeS10cnVuaworMzQxNDUgYzlmOWViMTNlYWM5MzA1ZWJhMTM0ZDgxMWQ4NDU2MGVkYjY4ZjJmMSByZWxlYXNlMjMtbWFpbnQKKzM0MTQ2IDE3MjU0NzBkMGQ0M2NhYjJjOGQxNzAwZmEwY2Y5ODlmYTE3YTA5YTUgbGVnYWN5LXRydW5rCiszNDE0NyBlZDhiM2MwMjgxNzRiMDUyNmJhYTNiZmRiYTNmNTJjYjcxM2U4ZGEyIHJlbGVhc2UyMy1tYWludAorMzQxNDggNmJmYjgyYmZiYjU2Y2RkZmMzMWEyMjFkMzE4ZjExNGUxMGJjOTM2NCByZWxlYXNlMjMtbWFpbnQKKzM0MTQ5IDQxYzJlMTcyM2NkZGQ3YWMxN2M3ZGRhZDA2ZjBmNDM2ODg4NjJmNTQgbGVnYWN5LXRydW5rCiszNDE1MCBlZjRhNzFmNWFmMjIzOGViYjZhYjQ4Y2MwOWQ5YTVkMmZiMWM4MzA3IHJlbGVhc2UyMy1tYWludAorMzQxNTEgMzBlNDk1ZWZlOTBhMzY1ZDIwNTMyNGFmYjY5YjQ1YTUxNWQyZmI5NSBsZWdhY3ktdHJ1bmsKKzM0MTUyIDc4NGUzOGFiZWQ4MjAzMTZlYjA4NjMxNmY2M2YwZDJmNzAyNTE4ZjYgcmVsZWFzZTIzLW1haW50CiszNDE1MyA3NmU5OThhZWU2NDQ2NTg1ZjE4YTM0ZjRiNzBkODE3ODk1ZGFhMGZjIGxlZ2FjeS10cnVuaworMzQxNTQgNTliMGE0OGE1NjQ0NTA3YjNjNjkzYThiZjc0ZDk2MDI5OTZiNjk1OCByZWxlYXNlMjMtbWFpbnQKKzM0MTU1IGY4OWFiNzk4NTNhNzBjMzllMTlmNTNmM2U5ZjU4ODM5NGUyNzkzYzQgbGVnYWN5LXRydW5rCiszNDE1NiAwYjBhZDdkMWRkZDZhOTg1MzBmNGM4YTRjOGMxZGU0N2YzYzU4NzViIGxlZ2FjeS10cnVuaworMzQxNTcgNzJiZmM3ODZhNGY4OTJkNTEzZjMwNWYwN2YwMTYxOGE0MWM0Y2JjOSByZWxlYXNlMjMtbWFpbnQKKzM0MTU4IGE4YTFiZWY0MDdlYjI2Y2M4YmU0YjMxNGM5ZjVjNWE2Yjc1YjQzOWUgcmVsZWFzZTIzLW1haW50CiszNDE1OSA2NjIyMzNlNjZkMjgyZWNhMDdmNzZiZjE2MmViYTk3MWI2NDMxMDQ4IHJlbGVhc2UyMi1tYWludAorMzQxNjAgN2NiNjc0NWJlNTI1YzBhODRlYzBiMTliMTQ0NDZhMDAzNDI0M2JjMyBsZWdhY3ktdHJ1bmsKKzM0MTYxIDJhNDk3MDljMGQ1NjNlNGJkYzI0NjU1MDgxYTE0MTdlNzYyMjg2NTIgbGVnYWN5LXRydW5rCiszNDE2MiA4MzRiYjlhMTU0MTliMGY2MWQ5MWI3ZjczZTlkZjFiMzNmZTNlNGMwIHJlbGVhc2UyMy1tYWludAorMzQxNjMgYjM5Y2I5MjEyZjVjODhjYzIzZTg0OWEyZTc1YjkxMDAzNGIxNjkzYSBsZWdhY3ktdHJ1bmsKKzM0MTY0IGJhMWUwM2NkMmY0MGZhMTJjMzE5ZWZhYzc0NWQ0OGY4MjljM2RjZWIgcmVsZWFzZTIzLW1haW50CiszNDE2NSBhODVhNzAxMmRkZGE3M2NlZjVkMGZkNmZmMjU1ZmNhMzc3MTUzNTBhIHJlbGVhc2UyMy1tYWludAorMzQxNjYgMGNhZDkwOTRlMjNlOWNiNzEyNzkwZWFlOTI2MmZlNTg3YzUzZTMyMiByZWxlYXNlMjMtbWFpbnQKKzM0MTY3IGJiYTdlMWUwZjFjNzUzYTgyMjAwZGQwM2UwZDRmYjEyZGYyMWY3ZTEgbGVnYWN5LXRydW5rCiszNDE2OCA5MWZmNzI3MDNlZDM1YWFkZjY1ZDRkYWE5ZjQxNzcwYzdjYjAwYWFhIHJlbGVhc2UyMy1tYWludAorMzQxNjkgOTIzM2FkMGVhYTk4NDZhYWI3ZTU4ODY1NWVjMmIwZmU3MDdhYmU0YyBsZWdhY3ktdHJ1bmsKKzM0MTcwIDYxZGJhMGFhOWUzNzRkZjIyOTUwZmFkNDkzMTI3YmVhMTM4OGU4YmUgbGVnYWN5LXRydW5rCiszNDE3MSAxZDYzMTA2ZTdkZmE0ODgzYzFjMGE0ZjgwMWEzNTNiNmYzMTk2Mjc3IHJlbGVhc2UyMy1tYWludAorMzQxNzIgZDVjNDViOGRhYTUyYmMxOGZkMDk1ZDcyZGI3ZWI5NTczYWRhNWI0NyBsZWdhY3ktdHJ1bmsKKzM0MTczIDhkMjFmYjJlMjZiMDY5Mzk3MzQ5YjgzMDkxNDI4MTVmYTk2MmI2MjggcmVsZWFzZTIzLW1haW50CiszNDE3NCA2NWJhYzU5YTM5MjgwNjhlN2Y5Mzg1YjdkZDI5YzljM2QzNmMzOTcwIGxlZ2FjeS10cnVuaworMzQxNzUgY2I3MjM2OTkyMGFjYWMxNmIxNDMxYWQ0MjU5YzMwOTgxMDBmY2NlNCByZWxlYXNlMjMtbWFpbnQKKzM0MTc2IGQ3ZjEzYTQ5ZTVlZjY4YTJiNTQ4YWQzNjA5ZGU4NWQwYmM5MmE3Y2MgbGVnYWN5LXRydW5rCiszNDE3NyA1ZjkyZDY2MDdiOWYwYmEyNDU2OThkNTZkNjI1ZWFiNjE2NjQ4ZmUyIHJlbGVhc2UyMy1tYWludAorMzQxNzggMWE4MTc2OTRlY2JkN2U0OWZjOTE1YTVlYmE5ZGQ1NmMxOWY5YmI0ZCBsZWdhY3ktdHJ1bmsKKzM0MTc5IDUxOGNjYzA2NGNiOWYzMmI2YTYxZjQ5YzYyZDAwZWIyM2M2MmE3MDQgbGVnYWN5LXRydW5rCiszNDE4MCBhMzdiMjM3MTRkM2RkZGI1OTZlMWVmYzE1ZTE5MzU0NGRmYWUzMmU3IHJlbGVhc2UyMy1tYWludAorMzQxODEgNTU4NTdhZWJjMjRmMjNmMmYyZTBlODg1MmQ0NGVkMjA0OWY2ZDczMCBsZWdhY3ktdHJ1bmsKKzM0MTgyIDFlMWU2ODVkNjllZjc4YmRiOTkxNzY3MDk4MWVhN2ZmYTJmZGQ0YmMgbGVnYWN5LXRydW5rCiszNDE4MyA5NGQ4MjkzNjc0NzM3MDNiMThkOWRhYTU0YjAzZDAzZWEwNTMxZmY1IGxlZ2FjeS10cnVuaworMzQxODQgMDg0NDA4ZmVlOTYxNGU1NDgzZWZlZjBlNmY1OTJlNWMwYTAzNzY4MiBsZWdhY3ktdHJ1bmsKKzM0MTg1IDQyNWJmMDdlYTcwYjhjMmQxZTZhMWJhOTFmYzliYjNiMjUxMmUwZjkgbGVnYWN5LXRydW5rCiszNDE4NiA4ZGQwN2Y3ZDA5M2I3YTAwNTJmYTczZGQ2MjUxM2I3MGMxOTM4NTBjIGxlZ2FjeS10cnVuaworMzQxODggMTg1YzVmNmI2MTU3ODQwYjA1NDFhYzAxYjI3ODVlNzZiNWMzOTVlNSBsZWdhY3ktdHJ1bmsKKzM0MTkwIGRiYTZlZjMwNGFhNDQwODgwNmYyYWRhMzA4YjdmZDliMjI0ZDk4MjUgYXN0LWJyYW5jaAorMzQxOTEgNzZkOWQxOGVmM2U0OTVhYjBiMGY2ZTM4MmMyMWQ5OTc0ZDQ0OWM0MCByZWxlYXNlMjMtbWFpbnQKKzM0MTkyIDA3ZTY0MGM0MDE2ZGZlMzhkMjI1YWE0MmJkODY4ZWMwOTFkODYxNWQgcmVsZWFzZTIzLW1haW50CiszNDE5MyBiMjkxOWE0YzU1OGM2ZjQwOGEyM2NiNmEzYTlmNmU1NGIxMDZiYmExIGxlZ2FjeS10cnVuaworMzQxOTQgMmYzZjU2ZjEyODBmY2VjZGFjMDlmYzEzMTVmOGQ5MWQxMDY3Y2I3OCByZWxlYXNlMjMtbWFpbnQKKzM0MTk1IDlkZjliZDQzMGMzNmQyYzgzOGMxNmNhNWEwODE2ZjdiZjZiY2RkNjcgcmVsZWFzZTIzLW1haW50CiszNDE5NiA3N2FjNDU1ODBjNDA4ZDU4NjJmNDZmZmIwZTJhZTZjNzY1ZTQ1YjRkIHJlbGVhc2UyMy1tYWludAorMzQxOTcgNTFlODVlOGJmYTQ3MzJhYzk4MDY2OWIzMTRkYjI2MjdkNjNhODljNyBsZWdhY3ktdHJ1bmsKKzM0MTk4IGM0OGEyY2M5Mzc4MGY0MWE3N2FhZmNlYjdhMGE4MTE2MzQ3MDMwNzkgbGVnYWN5LXRydW5rCiszNDE5OSAxYTc5MmYzNmI2OWUzNmE0YzViZWZhNjFhMjM3ZmJmNWJlODBiN2E1IHJlbGVhc2UyMy1tYWludAorMzQyMDAgMDIyNTdmNmE2ODJhNzgzMTdlZjQ2Zjk1ZmYxM2JkNmNlMTQ1Yzg4OSBsZWdhY3ktdHJ1bmsKKzM0MjAxIDFiYzZlZjFmNmJkYjQ3OTFhOTg0NTFmM2U4YmEyN2E1ZTI5M2JiNzUgcmVsZWFzZTIzLW1haW50CiszNDIwMiBkN2JmMTIzMmE4NmQxNDRkNGJhMTcwYjUwN2I2ZDJiMGY4MTk0ZmVlIHJlbGVhc2UyMy1tYWludAorMzQyMDMgYjBjM2Q5ODZmNjNmNzU4MzUzMTBkNjdkYjkzMTk0YzNhODEzODRkNyBsZWdhY3ktdHJ1bmsKKzM0MjA0IGE3YzRhYTgxZWI4NWMwMTBhN2I4NTlkMzczMzMxMTBhMTZiNTA3YzggcmVsZWFzZTIzLW1haW50CiszNDIwNSA3Njk3OWFmYzc4NWJkNjNkMDA2NjFiZmQ1ZGMxMmViMDNkYjZlOTdkIHJlbGVhc2UyMi1tYWludAorMzQyMDYgYWQyNTNjMDZiYWYxZDRhZjJhMzIxMzk3Y2Q2NDc2Y2YyNDEzYmZkMiByZWxlYXNlMjMtbWFpbnQKKzM0MjA3IDA5NjdjYjkwNTM0Y2M2YTdlZTE4NjNiODgwZTBhMzBjNDNlMDQ3YTEgbGVnYWN5LXRydW5rCiszNDIwOCBlMmI5ZDQzNmY4ZjdhZjljYWJmMTBkYTY5ZWUwNjQzZGU4YmY0ZjA1IHJlbGVhc2UyMy1tYWludAorMzQyMDkgM2YyODk2NGY4ZWNjYzk0MDEzZTg2OGQyMzBjNzFlZTVjZDI4ZTJkYiBsZWdhY3ktdHJ1bmsKKzM0MjEwIDg3MTc3NmQzODIxM2E5MDY3YzZkOWJhZjg5MThlYWRiYzE3ZDM4OWYgbGVnYWN5LXRydW5rCiszNDIxMSAxNzc2NTg3ODVmZWI4ZDI2MzE1YTkxZGNlODk3YzZiOTU4ZTI1MjA3IGxlZ2FjeS10cnVuaworMzQyMTIgODM2MGM3NGQwNTNiYWQ1YmJlMDMzOWZjM2NiOWU0MWM4OGNhNjUzNiByZWxlYXNlMjMtbWFpbnQKKzM0MjEzIDVjNWFkYjU0NDNjY2U4OTgxNGJkZTBlZDczMDM4MGNlZDM1NjUxMzggcmVsZWFzZTIzLW1haW50CiszNDIxNCBkNmY0ZGQ1YTUwMDZiOWYxMzY2NzY1NGQzOTM4NTVmN2FkMTI5ZmJhIHJlbGVhc2UyMy1tYWludAorMzQyMTUgMzM5Yzg4MDRmODA0YThlZTQ1MWViODViYjJjMzMzNzdlODM1YjNkNSBsZWdhY3ktdHJ1bmsKKzM0MjE2IDU4ZjAxY2MwZjMwMGFiMThmMTQ4MWVjNDA2NmNmMzc5YzIzZDY0ZTkgbGVnYWN5LXRydW5rCiszNDIxNyA1OGY5NmEwMGQzOGRjMDAyYWRlODE4OGU0ZjRlZTY0MGFmYmUwZjBjIHJlbGVhc2UyMy1tYWludAorMzQyMTggMjU0YmQzZTg5MWY2ZDk1OTFjOTFlMGY4YmIxOTgzMTA0ZjY1MDJjMiBsZWdhY3ktdHJ1bmsKKzM0MjE5IDBlZDFlYWNlMmE2MGJhZWE3NGRjZDVlMTZiZDM5ZGNjY2U2Yzk5MTIgcmVsZWFzZTIzLW1haW50CiszNDIyMCBmNGEwMWM0MDVhNDRiNjE3MDVhMTNjZjc1OTZlNWU5YmRmMjI5NTcxIHJlbGVhc2UyMy1tYWludAorMzQyMjEgY2U4ZDFmOTUxZTE5MmZlYzhmNDY3ZTM1MDRhYmQ0NjU1NzQ5Y2QzNSBsZWdhY3ktdHJ1bmsKKzM0MjIyIGQ3NTU5MmY2ZTJmN2NmZTBlYmQ4NzkzMDE0MzI0MjE1MTk2NTcxODIgbGVnYWN5LXRydW5rCiszNDIyMyA5NTRiNjA5Yjg0Y2QwOTk2ZmI0ZmQzZmI0ZTgwN2RhNzViZjM3MjkwIHJlbGVhc2UyMy1tYWludAorMzQyMjQgNzc0YTlmMjFlZGI5N2Q0NDhlNmE1NTlhNjM1MjY3MTFhOWRhOTA0MSByZWxlYXNlMjMtbWFpbnQKKzM0MjI1IGU5NzIzMGU1YzFjYTkwZjc3Y2EyNzUyNjhjZWZmNDhhZjkyNzQ5MWEgcmVsZWFzZTIzLW1haW50CiszNDIyNiA5MzFlODg4OTkxYmFiNzQxMTA4YjBmODZmOThhMDE2YTgxOWQ3OGJlIGxlZ2FjeS10cnVuaworMzQyMjcgZjNjZTE5ZDk2MWRkYTZlNTNmZTQ3N2I2MDg4NTA1MDY1M2I4YWEyNyByZWxlYXNlMjMtbWFpbnQKKzM0MjI4IDUzODNkNTYyYTM4ZDgxYmUyZThmYmE0MGU3ZTUzZDk5MTQxNDE5ZDQgbGVnYWN5LXRydW5rCiszNDIyOSA2ZTFmN2RiZWNkODRkNTNiNDlmZDgwNDM3YjAzNTBkY2VkOTZhZDMxIHJlbGVhc2UyMy1tYWludAorMzQyMzAgYzk3MDA4ZWU3MTY2MDc0YjA0OTk4MmQ4OTNkNjJkZDdkYTA5MGE4ZSByZWxlYXNlMjMtbWFpbnQKKzM0MjMxIGIyNzI4Yzg3ZGY5ZmJmMjMzNDc4YTNmNzU2ODk2OTBlNjljYWRjMWYgcmVsZWFzZTIzLW1haW50CiszNDIzMiAyNmNjNTg2NWE4MzY2MzNiZjNmMGZmYzNmN2MzNTk0MTg5ZDY0NWVkIHJlbGVhc2UyMy1tYWludAorMzQyMzMgYTFiOTY1ZTFiYmU5ZDhmNGQ4NmI0ZTlkOGMxN2IzNTg1MzRlY2IxMyByZWxlYXNlMjMtbWFpbnQKKzM0MjM0IDgxNmQ0ODY3ZjIxMDY1ZTFiMzkyYThhOTg2OGQxN2Y0ZmQwMDQ0ODYgcmVsZWFzZTIzLW1haW50CiszNDIzNSA3ZTYwZDgyNzMwZmQ4YWQ0MTYzNzE5YzYyNWRjOWFkZmJmOTYwOGY5IGxlZ2FjeS10cnVuaworMzQyMzYgMDE4MmNlYzUwOGFhYjRmZjllODE5YTJkNzdlMTQwNTA2ZjE0ODI1OCBsZWdhY3ktdHJ1bmsKKzM0MjM3IGRiNjNjYjBmYzdkYTE3OWE0YTMyYTI0YmMyYTRlN2ZhMTAxMGZiNmQgbGVnYWN5LXRydW5rCiszNDIzOCA5YzJlYjQxNTEzMGYzNGQzZmU1ZWQ3NDdmNzUzMmYxZDIyODUyNDcwIHJlbGVhc2UyMy1tYWludAorMzQyMzkgNzM4OWZmNTc3ODczOTBiMzQ3MzIxMWQ3ZmQ1NjkwYTE4YmU0MjAzZCByZWxlYXNlMjMtbWFpbnQKKzM0MjQwIGI5MmIzN2IwMWZmYjE2MDgzMzRlZDlhZTI2YzMyMDA1Y2M1NzA4ZDIgcmVsZWFzZTIzLW1haW50CiszNDI0MSBlNWJhY2I5NTk3ZjdiNDRhYTdkYzBkMmQ0MjBhOTU4ZGI2NzRjYzI1IGxlZ2FjeS10cnVuaworMzQyNDIgZmJhZDNlZmE0MGJiZGNmNmQ0Yjk2YTM5ZTA1MmQ2MTZjYTRhYjA3MiBsZWdhY3ktdHJ1bmsKKzM0MjQzIDYyYzZhZmUzN2QxMjNhYTNhODRhMDE3YzkwYmY3Nzc5ZDIxNTNmY2UgbGVnYWN5LXRydW5rCiszNDI0NCA5MjllNTQ4MTc0YzVmYWU5M2JjOTBmNTBiNjIxYTBmYWJhZGUxOTdiIHJlbGVhc2UyMy1tYWludAorMzQyNDUgZGJlODM5MWVkMDZmMjM5YjQzOWQ1Y2UxMmIyYmJiOTcwNDdhODA3OCByZWxlYXNlMjMtbWFpbnQKKzM0MjQ1IGZhNjVmNjUyN2ZlMTM0YWE5N2UwM2UxYjJhZjM2NWQ0NDNiNjdkYzcgcmVsZWFzZTIzLW1haW50CiszNDI0NyBkYTliNzQwN2U1NmMyYWFlOWQyNDY2YzBjNGE2NWQwMGJhOWU0YWU4IGxlZ2FjeS10cnVuaworMzQyNDggYTE1YjFjM2MyMzZhNGIyNGM5NjkyODUwZTBhNDUzZDU1MzU4ZTYxMSBsZWdhY3ktdHJ1bmsKKzM0MjQ5IDcxNzAyNGRiYmJhYzdkODdjZGM0ODIzYzYwZDk5Y2E4YTYxNzc0MTQgbGVnYWN5LXRydW5rCiszNDI1MCAyYTE2NWRkZjIyMmRjNDI5Yjc1OGUyNzcxMjU2MDc0ODI2OGRlOTY3IGxlZ2FjeS10cnVuaworMzQyNTEgNTI5MGE0OTM2MTcwZGM4OGZjMzhmOGY3MzYyYTJhNGM1ODNlMDIwMSBsZWdhY3ktdHJ1bmsKKzM0MjUyIGJiODI1MTFkMTkwNmEyNzk4YjIwNThkNTkyZjZiNmU4OGEwMTUxZWQgbGVnYWN5LXRydW5rCiszNDI1MyA2OTNkMTdkZmI4ZmQ0OGQ1MjI2NGFiZDk4MDU2NzQ4N2RiODk2NWE5IGxlZ2FjeS10cnVuaworMzQyNTQgNTYzOTA4OTFkOTg4Yzg3NTllYTEwYzkwNGQzMTQ1NzFlMTgyMGJkOCBsZWdhY3ktdHJ1bmsKKzM0MjU1IDljZDRmNGFlN2E0YzJiOGNkY2UzYWE2NGE3YzE0NzcwZjlmNjZjNmUgbGVnYWN5LXRydW5rCiszNDI1NiA1ZWM0MjMzZWRjZWRjNDcyNTVhNGQxMWM3ZjBkODY2MjJlZmJiMjA1IGxlZ2FjeS10cnVuaworMzQyNTcgNzAzNzgyZDkwMTYxM2M2MDhhYTY5NTIzYzJiZjVlNTcwOWIyYzgzYiBsZWdhY3ktdHJ1bmsKKzM0MjU4IDVkMmJhNDM3ZTFiZDNiMzRhZDU3NWNhNzNlODlmZGJlM2MxZjkwNmEgcmVsZWFzZTIzLW1haW50CiszNDI1OSBlMmY1MGE3Y2M0OTRmOTA3NDkyODFmMzNiMzhjZWJiZGQ2ZWYzNTgzIGxlZ2FjeS10cnVuaworMzQyNjAgMmNlOWY4OWM0YmJjOWI1N2I0Zjk3ZDc2NzJhYWY5MTRjOTkxOGMwMSByZWxlYXNlMjItbWFpbnQKKzM0MjYxIGRkZTI3NmE4OGM4OGEwZDRiYTI1NjkzMTQ3OTdkY2VhYjRjODZjMGIgbGVnYWN5LXRydW5rCiszNDI2MiAzNjFiNTBhMGQyN2ZhZDdiNGNmZWNmZmI4NmYyMWVlNTY5YzY2OWY5IHJlbGVhc2UyMy1tYWludAorMzQyNjMgMzMyYmZmMjc1YjIxOGM0ZThkMWQ3ODNhZDIyZjM3M2E0MTNlOGQ4YSByZWxlYXNlMjMtbWFpbnQKKzM0MjY0IGFkMThmNWI4ZDZmNGM2MWIyYWE3Nzg2YzU0NzVmMjE0ODVhNDNlZmEgcmVsZWFzZTIzLW1haW50CiszNDI2NSA4YzlmNDhiYTUwZmExNjUxMjg2ZDg2ZDcxNzA1YTM2OTM5MmEzZGI0IHJlbGVhc2UyMy1tYWludAorMzQyNjYgMDQ1NzA0OWYyNWUwYTBhMTc3YzNlNTE2MDA0M2Y4YzU3N2JiNDE0OCBsZWdhY3ktdHJ1bmsKKzM0MjY3IGI3YTIxMzVmYzE1NmFhNjFhNzEwMmU2MDYxOWNhOTQ1Y2E3Y2RlMmIgbGVnYWN5LXRydW5rCiszNDI2OCAwMzJiOTI1ODg4NWI3MTgyOTNlNGM3ZWIzOWM0MDdiMzRkZWRiMGMyIHJlbGVhc2UyMy1tYWludAorMzQyNjkgYTU2NzFhZWNmMzkwMTNjNmM2OTA1MDRjNzQ4NTZhOTZhNjJhMDdlOCBsZWdhY3ktdHJ1bmsKKzM0MjcwIGE1NjZjNDliNzBmYWY5ZjY3NGI0N2YyNGYxM2Q0ZTQ5OGYwMTg3NmEgcmVsZWFzZTIzLW1haW50CiszNDI3MSA4NTI5ZWFjNTA2NWQyMTY5N2ZlN2Y3NWEyYjE5MTBiMzRhZmE3MTc4IGxlZ2FjeS10cnVuaworMzQyNzIgZDk2ZTdmODJkMzk5OTk5NGJhOGU1NmE0NDA4NTQ1NjEwMDQ0NjE5MCByZWxlYXNlMjMtbWFpbnQKKzM0MjczIGUxYmFhMjQ5YjNmMjNkOTIyNDllNWJjYjQwZGZlZGYwNDMzOGNkZTUgcmVsZWFzZTIzLW1haW50CiszNDI3NCA2ZjMzNDNkZTY1YjIyYzczMTZhNzZjNjY2ODc2YzBmYzhmZjAzOWIxIHJlbGVhc2UyMy1tYWludAorMzQyNzUgMTJkYTM0ZWY4ODU0ZmIxMzRkZjFmODg3NjdhZjM3YmJmODk2MTUyOCBsZWdhY3ktdHJ1bmsKKzM0Mjc2IDdmNDhlODk0MzllMGJlZGMzM2NhNmE5MTc1MmQ1MzY0Mjg2Y2NiNGUgbGVnYWN5LXRydW5rCiszNDI3NyBkZDQ0ODU5NDNmMjNmNDg1YWE4MDcwZjg5Y2E3ZmQ5NzA5YTM4ZmI2IHJlbGVhc2UyMy1tYWludAorMzQyNzggOTRiNGZjZTdhOTk4YjIzODJiZDkyNmExYzNiZWE3ZWU1MmZjZjFjZCByZWxlYXNlMjMtbWFpbnQKKzM0Mjc5IDZjMDQwMmRhZmIxOGNjNThhYjdlOTliZmIxODUyNDg3NzYzMWRjYWQgcmVsZWFzZTIzLW1haW50CiszNDI4MCA2M2FlMWI5MWE4Njg1NWFkZGM0YWVmNDU5MjI4NDBjMjQ5MDdjYTkxIGxlZ2FjeS10cnVuaworMzQyODEgMDM1Yzk3ODNhNGRkYmFmYTE3NGU2MDdkMjU0Yjc2OGY3NjBhYzk0YSByZWxlYXNlMjMtbWFpbnQKKzM0MjgyIDg1NDA3MTJkNmUyZDMxNzVjODFhOTExZDA3ZTY2MmI5YWFmOWYyMjEgbGVnYWN5LXRydW5rCiszNDI4MyBlMThjMTBjYTc0MDgyODY4ZGFlZjYyZWFiMzJhYzhiNWNjMzEzMWRkIHJlbGVhc2UyMy1tYWludAorMzQyODQgNTliODUxYjZhZDMzYTU3ZjUxMDU2YzczMTZiNzBmNzMyZTBkMjk2ZSBsZWdhY3ktdHJ1bmsKKzM0Mjg1IGE1M2VhYmUwMjcyOTg0N2NhZTQ4Yjg0NWNmZjhlODAzZTJlNzhhYTUgcmVsZWFzZTIzLW1haW50CiszNDI4NiA3YmM1MWJlNzVmZWJmZDcyMjdlODJhOTA3NjM0NDZiMmYxODhhYTZhIGxlZ2FjeS10cnVuaworMzQyODcgM2QxYWUxYzg2ZmQzOTM2NzE3NTRlMzI4ZTBjYTczMDkzYzNiNDc0OSByZWxlYXNlMjMtbWFpbnQKKzM0Mjg4IGU2Y2VhNzdhYmVlMzZmZjFlZjE5NzE0NDhjNGUxNjE5ZWUyZjhhMTQgbGVnYWN5LXRydW5rCiszNDI4OSAwNjE2NGM2ZGM1MDlmMTRjM2RhOWM0MDE1ZWFlZjQwNjc2Zjg2MzE3IGxlZ2FjeS10cnVuaworMzQyOTAgYmQ0YzRiNmUwOWExNzI0NDc2YjFiMTliZWQxZWNjZTU0YTI0MmE1MCBsZWdhY3ktdHJ1bmsKKzM0MjkxIDBjOWFhN2U1NTQxNTdjNThjZDgxZjZjZGQyNGQxZTA1OWQyMmU5MDQgcmVsZWFzZTIzLW1haW50CiszNDI5MiBmYzdlZjRmZGUyN2ExZWRmZGZjMDdkNTQ1NjZkZjUxNzVkNGU1OTg3IHJlbGVhc2UyMy1tYWludAorMzQyOTMgYjk1Nzk3NmNkOGU3ZGI0NjA1ZjVkYzAyZjRmNWQzMDI4MjdiZGM1OCByZWxlYXNlMjMtbWFpbnQKKzM0Mjk0IDU4Yjk4Zjk4OGEwODE5YTBkMzE1NWJiYTdkODhkZjg0Y2I0Mjk2YTUgcmVsZWFzZTIzLW1haW50CiszNDI5NSAzZWY4N2EwYmJiYWQwNTI2MjI0MDIyYWM1ZGZhNTI4NzQwOWNkMjU2IGxlZ2FjeS10cnVuaworMzQyOTYgYWIzZTc3MGMzYTk5YmZiNzcxNzIxMDI3NzIyYzNlODRjOGVmZmExMSBsZWdhY3ktdHJ1bmsKKzM0Mjk3IDk4YTZiNjAxNTIyOTk2MzJlODQ4MWUzYjkzY2Y3YWI2ZDJlOGI1MTggbGVnYWN5LXRydW5rCiszNDI5OCBkMzRiNmY5MmRkMzI1ZDZiZGM2ZWI4ZWU3NjEwZmJkYzIzOTZkYTI4IGxlZ2FjeS10cnVuaworMzQyOTkgZGFmOGM5MzI3ODZkMjk4NGY1ZTkyOTc1MjQ0OWJkNDFlYmEwODZmZCBsZWdhY3ktdHJ1bmsKKzM0MzAwIDM0MTc1ZTk0MDgxY2E5NmFlZjhjMjJkNWNlYThmNDQ2YjZlOWM1N2QgbGVnYWN5LXRydW5rCiszNDMwMSBjOTUxZjljMzA2ZjMyNGY3N2M4NDQxMWYxYzYzNTFiM2FlNzc2MjNkIHJlbGVhc2UyMy1tYWludAorMzQzMDIgY2RkYjdjOGRiMzY3OTE1MTNlOTk3YmIyN2UzZWE4OTZiNWMwY2U5NCBsZWdhY3ktdHJ1bmsKKzM0MzAzIDY3Y2QzZTdkMGVhY2Q4OWM4NTFkMjlhNjRiYjJiYWJlMmQ3NThlY2IgbGVnYWN5LXRydW5rCiszNDMwNCBiNmMwZjkwOGJlYjgwOWYxYzdkNWRhMGUyMjA0N2JhODc1ZmZmNmFjIGxlZ2FjeS10cnVuaworMzQzMDUgNzQxZjc5ZjEwMTJhMGViNDMzNDk1ZDJiNmE0Mjk0ZGMxZDkwZjFlMSByZWxlYXNlMjMtbWFpbnQKKzM0MzA2IDIwNzEyNGY2YThkN2IyZDRjMTUzNTI2ZTVhNTU3OTI4OTY4YTdhMzcgcmVsZWFzZTIzLW1haW50CiszNDMwNyBmZDU0MDIyMGZmYzRmMDgwMWVmNjliZDQ0MjhmODZlZjFkZDIyYmY3IHJlbGVhc2UyMy1tYWludAorMzQzMDggM2UxYmY3NTEwNjQxMTBkZTMxOGFhYWU1NWJmMTUyOGFjODYxOTY4ZSByZWxlYXNlMjMtbWFpbnQKKzM0MzA5IGM4NzZhYzRkMDMzNzE5NWY4Y2FjN2QzN2U0ZjRiODdhZWQyNjA1ZDYgbGVnYWN5LXRydW5rCiszNDMxMCA2M2M2NDA4OGZmNDk4MDA1NjU3MjE0ZTFjNDYyNmE1YjM0YTIzZTc2IGxlZ2FjeS10cnVuaworMzQzMTEgMDAyOGVmNDVhNTBlYTU1YWNhN2NiZDNlYTc3Yjg5MDhkYjhjZTdjMyByZWxlYXNlMjMtbWFpbnQKKzM0MzEyIDZkNzUzODMyNzQzNDJmMDAzNWYwZTNmODgzNDQ5NDUwMmE0NWJhODggcmVsZWFzZTIzLW1haW50CiszNDMxMiA3ZDczNjJhNzEyNTNiZmY0ZmMxYjBjODI1YzE0NTY5Nzc4ZGI4YzM2IHJlbGVhc2UyMy1tYWludAorMzQzMTQgMWI5YzNhOGM0OWRiNjhiZmVjOGFhNjU2NjFjMDU0NzFiMDM2YzM3YyByZWxlYXNlMjMtbWFpbnQKKzM0MzE1IDBjNmZlNThhZjdkMTI0Nzk3MjM4NjMxMTFjZWFiMWJiZWNlNTE2ZDAgbGVnYWN5LXRydW5rCiszNDMxNiA2Zjk3ODJjYzI3NTBkMjg2ZWU5YzY2ZjBhMDQ4YmE4YzA5NWM1YmJiIHJlbGVhc2UyMy1tYWludAorMzQzMTcgNmNmZDk3ZDdmZTk4ZDc4MjYyMzM1YWM2MjE2MjhjMTQxMWJmYmIwYyByZWxlYXNlMjMtbWFpbnQKKzM0MzE4IGZiZjZlZTU3NjlkNDJhMGRmODNlOGE5NDQ2MzhkYmYyOThiMmQ2MTMgbGVnYWN5LXRydW5rCiszNDMxOSBkM2ZiNzViYzYzNTZlOWNkNTUxMGEzZmMzZmJkZmRmMDcyZGJkZmM1IGxlZ2FjeS10cnVuaworMzQzMjAgZGU4NTUyZjBhY2M1NzY0M2RkNjFjMjg5MWRjNDMyY2QxNTA3NjAyMCBsZWdhY3ktdHJ1bmsKKzM0MzIxIGJiZTYzYTg3OTY5ZmRiZjY2MTdmNTcxZjVhM2IzYTY2ODZkZGUyNjcgcmVsZWFzZTIzLW1haW50CiszNDMyMiBjOTgzMDIyMjUyOTIwZDM0OTMwYzBmOWQ5ZTRkODdmZDQ5YjQ5NGQ0IHJlbGVhc2UyMy1tYWludAorMzQzMjMgODI3MDBhN2U5ZmE0YjQwZGUyMDg1Y2EyNzU2NGQyMTFmZGZmOTU1ZSByZWxlYXNlMjMtbWFpbnQKKzM0MzI0IGE2NzNkODVmNWFkMGE1NWE1ZDkwODUzYzliZDQ1ZmVlZTY0NWRiOWEgbGVnYWN5LXRydW5rCiszNDMyNSA2NmZkODI3ZmUxZDg0YmE2ODM5YmQ0NDE3NDk1ZmEwOWYwYWRiYWU3IHJlbGVhc2UyMy1tYWludAorMzQzMjYgOWU2MTY0MTk4YzQ1NzIzYjM1NzdhNmIwMzFkYjlhNmJmODFlMWM2MiBsZWdhY3ktdHJ1bmsKKzM0MzI3IGM3M2YxNjIyNWE3MWFkZjAxMGMyMjYxNjMxN2RiOGI5ODJkMzBkNDcgbGVnYWN5LXRydW5rCiszNDMyOCA3YmQ2YzZiNTNmODcxNzBhZWFjMDNiZDdiM2RmNmRlMDQwZjg2ZWE2IGxlZ2FjeS10cnVuaworMzQzMjkgYjFjNTY5NmFkNDc1ODU4NDRhMmE4NWY5YzM0NmQwYjA5NjVkYTVkYiByZWxlYXNlMjMtbWFpbnQKKzM0MzMwIDI3OTU5YTAyZDM5ZGU5YzFhMmU4Y2U4ZmU3ZWU1YTZlZDQ4ZWZhZmUgcmVsZWFzZTIzLW1haW50CiszNDMzMSAxMDc5YmU1ODdiYWEwNzk2MmMzNDEzZTM5ZDg4OTAwNDhkNjE2NmM4IHJlbGVhc2UyMy1tYWludAorMzQzMzIgZDQ3Y2M2ZjcxZjMyYTMyYzE2N2FjOTYyNmE0ZWI3OTU2MGU4NTNiOCBsZWdhY3ktdHJ1bmsKKzM0MzMzIGI3ZDAxZWZmZTg5OTUwYTgzNDJmNmZmYTdiMzk2YzkyZjcxZTZiZGMgbGVnYWN5LXRydW5rCiszNDMzNCA4NDczMWVlYTZkYjkwZmUyOWNmOGZkYjNmYzk5YzljYWI5MTQzOTNlIHJlbGVhc2UyMy1tYWludAorMzQzMzUgZjI5ZjEwOGFiNDllZWI1ZGEyZjM1MmRhNDZkMzk2YmJkMjc0ODI4MCByZWxlYXNlMjMtbWFpbnQKKzM0MzM2IDVmZjI0ZDVkOWU5MjJiMDJlYjg4MTExNWI5MjE5N2ExMmY5NjBjY2QgbGVnYWN5LXRydW5rCiszNDMzNyBlNzNmM2EwMzI3NjM2YWQ4ZDY2YzgyMzVlOWU0M2JlNjdlZjBiYzcxIHJlbGVhc2UyMy1tYWludAorMzQzMzggNTczYTQwYmVjMDcwNDJhNjYxNTYzZmMyZmFhM2UxOWM0YTA0OGEyNCBsZWdhY3ktdHJ1bmsKKzM0MzM5IGY0ZGVlMDE1YmY4NGMyYzZjMzIwNzU4YmU0M2YzZDRhMWYxZmU0YWUgcmVsZWFzZTIzLW1haW50CiszNDMzOSBiZTI1MzNmYjEwYTU4N2M4ZGE4OWIxOGM1ZjM4MWY0NzhkNzIwNTkzIHJlbGVhc2UyMy1tYWludAorMzQzNDEgZTVlNjA4OTJjM2UzNTdlNWU3NDNjYjY0ZWM3MGMzNDU5NjI1ZDdjNCBsZWdhY3ktdHJ1bmsKKzM0MzQyIDE4ZTIzOWYyMzAyOWQ4MGU4NzMxNDlhMTkxM2ViNDk3ZWIzMzdlZjYgbGVnYWN5LXRydW5rCiszNDM0MyBjNGUzYTZjYWNmY2FiZmFlYmFjZDhlZmE3M2VlYjhmOWU5N2ZmYWZkIHJlbGVhc2UyMy1tYWludAorMzQzNDQgMmVmOGQ2MmRjYzA5MTA2MTBkY2ZmYTk0MjczODMwMTc5ZjlkMTM1OCByZWxlYXNlMjMtbWFpbnQKKzM0MzQ1IDkyMDA3MTJkMzFlNzkwZWMxOWM5NjRjOTYxYTg2MWZlMzA1ZTY3MGEgbGVnYWN5LXRydW5rCiszNDM0NiA4MTdiNmUwZjQ4ZDFiYTg3NDMzMzkzYzM4NWU2NDMzYjk5MTRjNThlIGxlZ2FjeS10cnVuaworMzQzNDcgZjlkZmRjYjg5N2JiNjY0YTQxYThmMzc0N2E1ZmJkYTRkMzk0ZTdlNCBsZWdhY3ktdHJ1bmsKKzM0MzQ4IGMxYTY3MmVlMTUzMDM1MmVhMTYwMDU5YTMzNTgxMjllYWZjMThjNjAgbGVnYWN5LXRydW5rCiszNDM0OSA3ZmQ1NTNmYjQzMTUwMzdjNmExMWFmOTA5YmM0ZTc3ZjNiMjE4NWE3IGxlZ2FjeS10cnVuaworMzQzNTAgMDQ3MWM2N2Y2MWJkNzk3NjUxMTU4YmFmZTI1MjRmYThjYzgwM2VjMCByZWxlYXNlMjMtbWFpbnQKKzM0MzUxIDBkNDAxNzg0NjIxYjRmNDk4NTIzNTA4YmI1Nzg3NGQ3ZTkzZDdmNGIgbGVnYWN5LXRydW5rCiszNDM1MiBhMzAxNWJiYTM5OTliZGMwM2YzMTdmM2YxMjNmNTUwY2VhNmU2OTBhIHJlbGVhc2UyMy1tYWludAorMzQzNTMgMzllNjM1ZGEyMzI2YTU3ZWU4MGQ0YmZhOTFmYTM4MjhjYzlhODY1NiBsZWdhY3ktdHJ1bmsKKzM0MzU0IDVlYTBmZDI2YmQzNjQ2MmRkNjViYTU0N2Y4NzkxOGVmODRkMjViZjMgbGVnYWN5LXRydW5rCiszNDM1NSAxNTQzYTg0MGZjN2YzYTBhY2M4YTliZWZiNmE4NjFmNzU3NGNiNjQwIGxlZ2FjeS10cnVuaworMzQzNTYgNzE3NTdjZWEyNTdmMzY5ZjBkMTJhMDNmMzQ0Yjc4ZWQ1OWY4MWY5MSByZWxlYXNlMjMtbWFpbnQKKzM0MzU3IDA0NDc5OGQ4YmJmYzdiNDg0NWNhMDMwY2EwNThlNzNiMDM3ZTcwMTEgcmVsZWFzZTIzLW1haW50CiszNDM1OCA4NjMwZGQ4YjVjYjQ2NzMxZWRhN2M3ZDNlYWE1ZmRlMzQ4YjVmYzgxIHJlbGVhc2UyMy1tYWludAorMzQzNTkgMjA1YTI5M2YzZGUwODAyZTcwZGNkMmZkNGZmYWMyNjRkZDRjN2Q3YiBsZWdhY3ktdHJ1bmsKKzM0MzYwIGQwYjhjODNjMmE2YjY5ZDIwNGYzM2QyNTYyOTU1OTdjZmJkYTRhOWYgcmVsZWFzZTIzLW1haW50CiszNDM2MSBhNmZiNjgyMjgxNGFhYWY2MWM2ODA2YTgyMmU1ZjY0NmVhNjZhZjFkIGxlZ2FjeS10cnVuaworMzQzNjIgMWVhZGU3N2VhOWVhNzlmYWMxY2Y0NWUwZGMxMjRiY2I2Yzc2Mzk0ZSByZWxlYXNlMjMtbWFpbnQKKzM0MzYzIGQ3OWJiMjlmZjk2Y2MwOTQ3NjM5YWExYmQ2MDA2ZDk0Y2RlOTJkYjkgbGVnYWN5LXRydW5rCiszNDM2NCA4ODQxZDM0YTJjMzdlYjk4OTI5ZDMzZDU4NmVkNGFkYWNiODU5ZWM3IGxlZ2FjeS10cnVuaworMzQzNjUgY2EwMzAzMjA5NjNmNWZkNTAxMjc3NGFiOGZmZjExN2FlYjBkYzQxYyBsZWdhY3ktdHJ1bmsKKzM0MzY2IDZmZGVlM2Y5ZWNlM2FiN2NmOTZiYWI2NjRmNWRkMzZmY2MyN2NmYjQgcmVsZWFzZTIzLW1haW50CiszNDM2NyBhZDYzMDZkMzVjZTNhMTk1ZDY5ZjYxODE4NTBhNzI3N2IzYzcxNTI2IHJlbGVhc2UyMy1tYWludAorMzQzNjggM2I0N2Q2MDU3MTUxN2VjMjA3YWM2NWIxNzY3MzNkMjc5YTQ2MjI3ZiBsZWdhY3ktdHJ1bmsKKzM0MzY5IDA1NWE4MDg4MWU5NmQ5MzZmMTQ0NTMwNGIyMzljZWVjOGNkMTBiZjggbGVnYWN5LXRydW5rCiszNDM3MCAwZTBiYTkyOTU1MGMwM2M3YTFjZjE0ODlkMDMwMWViMjUwNTMzYTA5IHJlbGVhc2UyMy1tYWludAorMzQzNzEgODE0MWVlYWQxOTA3M2Y0YWE5MTQxOTcwYWI3YmNiYmEwMzViZWY2YiBsZWdhY3ktdHJ1bmsKKzM0MzcyIDE0NGJjOGZkOTExZWU5NGNkMDA5ZWZmOGYyYjcxMDRkOWE1MTJkMTEgbGVnYWN5LXRydW5rCiszNDM3MyBmMDBhMzJlYzQxMzkzMDA0YzUzZGU5NWM0ZGI0OGY5ZWJhOWY5ZDEzIHJlbGVhc2UyMy1tYWludAorMzQzNzQgYWNlZjRlMTZjZWFlNDgzMGE2YjdhZDA0YTI4YjZhNDgxZjVlOTk5ZSBsZWdhY3ktdHJ1bmsKKzM0Mzc1IDM2OTkyY2E5MThhMzQ5MzNjNzEzOGIwZWFhYWM4YjBmZTk3YjI5MTEgbGVnYWN5LXRydW5rCiszNDM3NiBiYjNjZTZhZWU2OTNlY2M0ZWJiNDE1MmFiYzFiODgzMDY3MmI0NjdhIGxlZ2FjeS10cnVuaworMzQzNzcgNmVmMjQ1MTM2MDM4OWFmOTc3NzBmOGU3ZTBkMzY3ZTJkZWUzOGZhZSByZWxlYXNlMjMtbWFpbnQKKzM0Mzc4IDVjMDE3NGUyZTE0ZjQ1MWY1Zjg2MDc4OWYxMzVkOTk5M2RiMWM3ZGUgbGVnYWN5LXRydW5rCiszNDM3OSAyOTg4ODhlMzk1Y2UwYzA1ZjM3NGZiY2M0YzEwMmE4ZTIwNTVlYjQyIGxlZ2FjeS10cnVuaworMzQzODAgNDc3NmEwNWU2MzBiNWZjMzhmMDFlOGQ5ODNjM2I3ZjNkNDg3NDQ0ZCByZWxlYXNlMjMtbWFpbnQKKzM0MzgxIDU4ZmU2NGY3ZmIxOTNhZWI4ZjIwMGEzMTk2NDFjM2Y5MTkxNTdkMzcgbGVnYWN5LXRydW5rCiszNDM4MiA0MDA2NzQ5NTgwMjVlOWU0ODE2NDgwYmZiYzQ2MmQ3MDllYWNkMDhiIGxlZ2FjeS10cnVuaworMzQzODMgMDYyYzI1NWI1N2E4ZTIyZTk3MzYyNWY5MWRkODczMDQzZTI5NWY5YSBsZWdhY3ktdHJ1bmsKKzM0Mzg0IGQ1YzMyMzFiYTViYWE0MTYzMjAzOWM4Y2ZhNzQ5ZDkyYjE0MjI4MTcgbGVnYWN5LXRydW5rCiszNDM4NSA3ZjYxMzRmOGJkMDZmZDNmYzY4MjhjZGVkZTJlZDk3YWM5NDI3ZTM1IGxlZ2FjeS10cnVuaworMzQzODYgYWRjNjAwMTU2NzBhZThjMjNkYjNlM2UxOGU5NDBlMzk1NzUzNTE1MSBsZWdhY3ktdHJ1bmsKKzM0Mzg3IDQxYjdkMWYwNTAwZjBlNGMxNTA0ZTJkNmY5OWUxMzI5N2IwMmM2ZjQgbGVnYWN5LXRydW5rCiszNDM4OCA2MDQ4MzBmMWNhYTY1NTI2Y2E4OWQxOGFiODBjZTJiZDlkYjY0MjU3IHJlbGVhc2UyMy1tYWludAorMzQzODkgYTc0MjgyMWQ5ZTc1ZGM3YWVhYWQ4ZjA2N2RlMzgzZjY3OWNhZmFkZCBsZWdhY3ktdHJ1bmsKKzM0MzkwIGZjZTgwYWQ4MzQ3NzA5ZjFjMWE2N2RkMWI0YTZjYzY1ZTNhOTMwYjcgbGVnYWN5LXRydW5rCiszNDM5MSBmZGYwYTk3YmFiNjAwZDU5NWRiMGMwOTI2MTA2NWE2MDk5NjQ3YWQ3IGxlZ2FjeS10cnVuaworMzQzOTIgY2YwMmMxN2Q3ZjQ0OWJjNWYyYThhNGJmODU0OTBkNTk3NjM5ZWE2NSBsZWdhY3ktdHJ1bmsKKzM0MzkzIDgzN2VhMTg2MzdiYzE5MGZlNTk3ODZmNzI2OTNlYmUwZTgxN2Q2ZWYgbGVnYWN5LXRydW5rCiszNDM5NCA0YTBjODllNWUwNTY3N2JlNzhkNDNmNzNhMWZkODg5YTliOGVjY2U1IGxlZ2FjeS10cnVuaworMzQzOTUgYzIyNmY4NGQ3YTY2ZTJhYTgxNjY1ZTMwZWM2ZGMwMmY5OTFiYzMyZiBsZWdhY3ktdHJ1bmsKKzM0Mzk2IDk2OTFjYzY0NDE2MDA3YmRkZGMxNzdiZDFiZWE2ODI0ZDdkNzBhNjUgbGVnYWN5LXRydW5rCiszNDM5NyA0NzNmNGUyOTU5YTgwNDNkOWJjYmQ3NDQzZWNiYzMxNGMxOTY1YmVhIGxlZ2FjeS10cnVuaworMzQzOTggM2I1OWZhNWQyNWIxM2I1YzY1ZTA5NjA3OTQ5YWMwNmFmOTA4NmRkNiBsZWdhY3ktdHJ1bmsKKzM0Mzk5IDBkZGVjYWY4Yjc1Y2JlY2EwMDY2MDA0ZGYxYzNkYzMxZTUxYWJkZjIgbGVnYWN5LXRydW5rCiszNDQwMCA2YzM4NDA2YzNmYWQ4NDEyOGU1ZmJiNzU3NTJhOGVjODdhNDVjYjFhIHJlbGVhc2UyMy1tYWludAorMzQ0MDEgMDA2MDE1Nzg0NGQ4N2JlMmFjZTdlOTUzMjZkNzUyMDA3YTBhMjliZSBsZWdhY3ktdHJ1bmsKKzM0NDAyIDhlYTgzMjYwM2U0ZmViMTdlMTllODM4MDVkNzdhY2FhNDQ0ODk0N2MgcmVsZWFzZTIzLW1haW50CiszNDQwMyBiNDkxYmJmMTdkZGU4YTE4NDU2ZTM0Y2MyYjdmYzRmZjAyOTI0ZjE2IGxlZ2FjeS10cnVuaworMzQ0MDQgNTAxYTc5MzQ2Nzg0YWU2MjZhOGI0ZjBjZDA0OThkZWEwN2NhMTU4YSByZWxlYXNlMjMtbWFpbnQKKzM0NDA1IGZkMDUyYzRmODg0ZjQ0MzBjMjgzODAyMmVhNWJjZDg5OTVhYjFlNTIgbGVnYWN5LXRydW5rCiszNDQwNiAwNGY0MThhZjY4MGQwN2Y0YjQwZTQ5NjFhZjQxYjBkOGZhMzA2Y2NjIHJlbGVhc2UyMy1tYWludAorMzQ0MDcgYTNlODY2NjVmMjQ1YWM1ZDdlNWViZmI3MjJiZGViZmJkYzE1YzhmNiBsZWdhY3ktdHJ1bmsKKzM0NDA4IDQzODhiYmFkMGJjMzdhZTk0OGMyM2EwYmE0ZTMxZTI0N2E2NjI3ZDMgbGVnYWN5LXRydW5rCiszNDQwOSA1YTFkM2JjNmNjMTgwMmUwMDgzNTU3NmFmMDdkNTcxMjUwZDVhYmQ1IGxlZ2FjeS10cnVuaworMzQ0MTAgMmNiNGYzMjE3OThjZDZmMDQxOGM0MTE5ZTEyNTlmN2E2NDYwZGQ3OSByZWxlYXNlMjMtbWFpbnQKKzM0NDExIDM0MjliMWQzOGI0MDBjNjBlMGI4NTBmMDE4ZDZkMTkzNGQyNDRhMzYgcmVsZWFzZTIzLW1haW50CiszNDQxMiBmMWMzMGJmYjBjYzEyNjE3ZTJlZTBhMzQxYjlmYjc0NWU5ZWFmOTY2IGFzdC1icmFuY2gKKzM0NDEzIDc5ODk3ZWQ1M2YwMzZmMTc5NTE1YjU1MzQwZDRhNTczNjhhOTMzN2QgYXN0LWJyYW5jaAorMzQ0MTQgMTM0NWMyM2EwNTkxNjA1MDNiYjUzYmI4ZmE5NDY1Yzc0ZGNlYzZhMiBsZWdhY3ktdHJ1bmsKKzM0NDE1IDNlM2ZkNTZjZTU5NThjZDQ3ZWU2MGU2N2E4MmUyMDY3OWVmZDMzMTYgbGVnYWN5LXRydW5rCiszNDQxNiBlZmVkNDg5ZGY1NDU5YTgwMWIwY2I5OTM1MzRlNDg4N2JkYTgwZGE2IGxlZ2FjeS10cnVuaworMzQ0MTcgNTIwMWY2NmM5MmVmM2NkZWViMmEzNzhjM2M1MmRiY2Y0MjhlM2E3YSByZWxlYXNlMjMtbWFpbnQKKzM0NDE4IGMzZGZkYjYwYjk4OGY4Mzg5Yzk2YmEzZTJmMGJiMDkxMzM1NjU4MWYgbGVnYWN5LXRydW5rCiszNDQxOSBjOGI4ODIxZTg3MmQxYzhlOTE3Njk4ZDdlOGUzMmRjODhiOGU2ZDk4IHJlbGVhc2UyMy1tYWludAorMzQ0MjAgODI4MmFhMWY5MzQzN2M2NjZjMzBkMWM0NmZiZThkZjM0NDZmZjI2MSBsZWdhY3ktdHJ1bmsKKzM0NDIxIDA0YmNmZGNmMjkwYTE1MDljYzc1YzgzNmI4OWJiYjA2YTE4ZTY5YmIgcmVsZWFzZTIzLW1haW50CiszNDQyMiAzZmYwMzQ0NmYzNjJhZWVmYzlmYTkwNzBlNmM4ODgwMWQyNWFiZDRiIGxlZ2FjeS10cnVuaworMzQ0MjMgYmUwY2EyNmFkNTc0MGVjNjQzN2E3MDYzYjc1MGQ2YWVkYzk3ZDcyMCByZWxlYXNlMjMtbWFpbnQKKzM0NDI0IDllMjFlNTZiZjVmM2NlMThmYzFmZDZjNzE4MWJiMzU2MzBkNzNjMTMgbGVnYWN5LXRydW5rCiszNDQyNSAzYTk5Mjk0YzhlNWI1ZTM4ZDFhMTc0MDE5ZmU2MGMxZjU2NDBlMWE2IGxlZ2FjeS10cnVuaworMzQ0MjYgMWQ1ZDcyNDM2ZjJhN2M0MmJhMzg4Y2E2ODI2MDc4NzVmZTllMDkxZSBsZWdhY3ktdHJ1bmsKKzM0NDI3IGEyMzRkYWYxOTgxMGFiM2E4NzljODZmMzZiZGNlODBiOGI0NDI0MmQgcmVsZWFzZTIzLW1haW50CiszNDQyOCA2ODc3Zjc5N2NmMzYxNTFhMWI0MzJlYmMwMTBjMzQ2NjRjYjZhNDRjIHJlbGVhc2UyMy1tYWludAorMzQ0MjkgYTY2MzQzMDlkNzBlZTZlYmFjOTkzNjQwZTk2OWI0ZjM1MDViODYzMCBsZWdhY3ktdHJ1bmsKKzM0NDMwIDljN2UwMjI3YzgzNTY4ZjNkODBjNTQzMmNkNjYzMGNkNmJkNGM0MTYgbGVnYWN5LXRydW5rCiszNDQzMSBiMTFkOTczYWJlY2FjYmJkYzBjZDg1Mzc0OTYyYjdlN2M4ZDhiMzQ2IHJlbGVhc2UyMy1tYWludAorMzQ0MzIgYzEyZDRmMTg1M2JjMDAyYjNkNjMwNzkyMmIzN2JmMDlkMTUxY2E5NSBsZWdhY3ktdHJ1bmsKKzM0NDMzIDA3YTBhMDcyNjY0OTk0NjcxMGU5YWM1ZGNkMWZmYmEzMWFmMWFhZmQgbGVnYWN5LXRydW5rCiszNDQzNCAxMmU1NDkyOTVmN2Y1ZGZmYzI0MTljNTgyYjg1ZTE3ZTdkOWVmNjViIHJlbGVhc2UyMy1tYWludAorMzQ0MzUgYTI4YTgzMDAzMWE5YWIzMjJlZjk1YTFjYmM0OTQwZjExMzY0ODRiNCBsZWdhY3ktdHJ1bmsKKzM0NDM2IDdkZmRmOWU4ZDk1ZDM3MDExMDg3N2E2ZjdjZmE4YjNkNzk3NDNkNWIgbGVnYWN5LXRydW5rCiszNDQzNyAyYmM3OWIzYTk1M2RmZDg3ZWE0OGE0MDg4YWQxN2YzNTJkZGE0MTc2IGxlZ2FjeS10cnVuaworMzQ0MzggZjgwZDgzNzc4NDBmMmVkNTEzMGUyMjk5ZDY2Y2IwZjYyZjU2ZmVjMiBsZWdhY3ktdHJ1bmsKKzM0NDM5IDY1MWZjOGQ5OGQ5OWI1MGY3ZDlhYWVkN2I1Y2E3YjZjY2VhM2I1Y2EgbGVnYWN5LXRydW5rCiszNDQ0MCA2ZjE1ZTczYjU5ZjJlM2EwM2YzMTc4NzQ1MzU1Y2Y3ZWQyNjhmNTk0IHJlbGVhc2UyMy1tYWludAorMzQ0NDEgOTVkZjYwMGFiOWJkZWI1MWMxMDE4OWIzYTFmYWE3YTE4MGE1OThkMCBsZWdhY3ktdHJ1bmsKKzM0NDQyIGU4N2Q2ZDc2ZTM2NTc1YzEyOTUwZDdiZDdhNjJkY2I3MDhkNmI4NzUgcmVsZWFzZTIzLW1haW50CiszNDQ0MyAxMDI0YzViZjdmZWU5MTI5NDE1OTE5MmNjZTNjMWE3ZWYyYTkyY2IyIHJlbGVhc2UyMy1tYWludAorMzQ0NDQgYWQ1ODIyOTc3MTUyZmU3MzYyMDQ1ZGI3Njk0MzlkMDgzZDg0M2RiYSBsZWdhY3ktdHJ1bmsKKzM0NDQ1IDk3N2VmYWE4NjM0ZTYxZjRiOWU4NjI1MWI5NzNjMTg0ODZkMmJjOGMgbGVnYWN5LXRydW5rCiszNDQ0NiBiMTA4YzQ0MmEzNzQ0MTU0YjE3ZGU4Yzc2MjdjYWU3OWMyNmY2MmJkIGxlZ2FjeS10cnVuaworMzQ0NDcgMGVhNDEwNDhiMmQ0NzUyNTg4ODAyZTc5OGE0NjcwYTFkYzgwZTJmOCBsZWdhY3ktdHJ1bmsKKzM0NDQ4IGYwZGEwY2FkNWNkNTFmNDdmZmEzY2ZhNTI2NmYzNzNhODM5NDk2ZmUgbGVnYWN5LXRydW5rCiszNDQ0OSA0NGY5ODAwMjE4MWZiMjkwNjkzMmY4N2JhY2VmMTM1ZjRmMTg3MzQyIGxlZ2FjeS10cnVuaworMzQ0NTAgOTQ1NWRlZmYxYzdjMGVmOWUwMmVlMzRjNzhlNWQzYjVlMWM3Y2FkNiBsZWdhY3ktdHJ1bmsKKzM0NDUxIDkxNmY3ODJlZDZkNTBjNmJmOTAyOGVmODVlMjM5Nzc5NjlkYzUxMDkgcmVsZWFzZTIzLW1haW50CiszNDQ1MiA0MjQ0NTE3MjkyOGYxZmFmNTFhY2ExNWM4YTQ0NWZlNmMzZmVjMjE1IGxlZ2FjeS10cnVuaworMzQ0NTMgMGU4MDc3Y2IzZGQ1YTE2N2JmNzI4NWFmMzI1MmYzYTI5MWMzMWYxZSByZWxlYXNlMjMtbWFpbnQKKzM0NDU0IDM4YjBiN2Q0MTkzNmIxN2ZmZjJmMDk0YTA0NWU1N2RkM2UwOWFhOGUgbGVnYWN5LXRydW5rCiszNDQ1NSA5MDNiMzFkNzcyMWExZDU2YzAwYzczOTBjMzE0N2ExNzI1MTY0MTU0IGxlZ2FjeS10cnVuaworMzQ0NTYgMzhiOTRjMDViODViOTJlNzZjMTljZDZmMTE2MTNlZTQwZTU5MmU2MCBsZWdhY3ktdHJ1bmsKKzM0NDU3IDQ5NGQ1Y2YwYmJlM2UyMTEzNjQyMzUyZTNiZDY1YmE5ZDI0NWUxNWUgbGVnYWN5LXRydW5rCiszNDQ1OCBiYzhmMjJjNTM0MmNhMzdjZTRmMmZkYmYxODkxM2MwNjM4NTkxMzMwIGxlZ2FjeS10cnVuaworMzQ0NTkgYTgxMGJhYjg1ZmJjNGQwYTRhZWRiZTI0Y2I2Mzg2MjA1MjE0ZTU1NSBsZWdhY3ktdHJ1bmsKKzM0NDYwIGY4NzQyNDNlZTM5YmEyNmU3MWM4MzFlMmY1ZWQ4YWQyOWMxNDA4NTIgcmVsZWFzZTIzLW1haW50CiszNDQ2MSAwMDEyMDliODE4YTY3YzkxOTFkMGM4NTY1MjA1MDEyNjdmNzJjMGQ3IGxlZ2FjeS10cnVuaworMzQ0NjIgZGJlNzg4MjIzY2U5NjhlZjVlYzk2ZmUzYTY4MDIyZGU5ZGQ2YjU4OSByZWxlYXNlMjMtbWFpbnQKKzM0NDYzIDBjNjJjMWFjOTY4NGRiMzE3ODU3OGE1M2VlOTQ3YWU0NTZjNjI0ODMgcmVsZWFzZTIzLW1haW50CiszNDQ2NCA3N2Q1MzA4YmVkYWUxMTQ0YjQ5YzdiOWViZWZlMGM3Y2EzZGU4YTQ0IHJlbGVhc2UyMy1tYWludAorMzQ0NjUgNjI0OGRkNWQxOTJhODA1ZGNiOTY0YjU5MmYzODA3NDA5ZDc3ZDFmNSByZWxlYXNlMjMtbWFpbnQKKzM0NDY2IGZhZTM0MzU3NjFhZjlmNTg5ZGViOTQ4MGU2MTY4OWNiZTk4NzcyYzkgcmVsZWFzZTIzLW1haW50CiszNDQ2NyAxZDkyZWNkZjJiYjE0Y2Q5MTRjYzYwY2Y2OGNhZmIzZGQzYzliNDYyIGxlZ2FjeS10cnVuaworMzQ0NjggNmZkZGU5NmE3MjIyN2EyYzZlNTgwOGRhNzZkMTQxYTY2ZGI5NTExZSByZWxlYXNlMjMtbWFpbnQKKzM0NDY5IGQ3NzBkYzI2NDIxMmRlN2NlNTZiOWExYmIwYjIyZTBhMTFiYmUzODIgbGVnYWN5LXRydW5rCiszNDQ3MCA2OTE0YjVlMjA3NmYyMjRiNzdkYTVjMmM1OWY1Mjc1NmRlYmRkYWY3IGxlZ2FjeS10cnVuaworMzQ0NzEgOGIyZWFkZmI4ZjBjZGRjMzJiZGRhOTk2ODdiZTQ2NmZmZjAwZjJjNyBsZWdhY3ktdHJ1bmsKKzM0NDcyIDRkNzllODQ5MGM3NmU2ZTY5NDhjYjlmNzk0OGIwNmUwMDI0OWZjMmUgbGVnYWN5LXRydW5rCiszNDQ3MyBiNjkwMmMwYTc1NzgyZWRiY2U5NzVlZGEyMmYxYTBlOTg4ZWI4MDNmIGxlZ2FjeS10cnVuaworMzQ0NzQgZTBlYzY0NGY1YjM2YzQ1ZTNhNWNmZTllZDBjOTNhNDFjN2Y0NGM0OSBsZWdhY3ktdHJ1bmsKKzM0NDc1IDI2YmMwMTk0NGFlOGVjOWU0NDFkZTMzYjI5NWEwZmY4N2I3NWYxMmQgcmVsZWFzZTIzLW1haW50CiszNDQ3NiBmNzcyZDM0MDNjYTdkMjQ4NDJmMzI5ZTBkNDNiZjRiYTcwNmZhZDQ5IGxlZ2FjeS10cnVuaworMzQ0NzcgYTA1NDVlMzJkYWU3ODg0MTNhYTdkYWZhMWFmZTg3MDcxYjg3NzhhOSByZWxlYXNlMjMtbWFpbnQKKzM0NDc4IDBmZTMwNzEwZGE4MDYwYjA4ZmY2MzlhMDVlNGY0OTUxNzgzZjU5ZTcgbGVnYWN5LXRydW5rCiszNDQ3OSA4ZmJiMDYyM2I4NTc4ZDk2OWJiMzg5ZjdhNjVmOGMwYWM4NDY2ZjYyIGxlZ2FjeS10cnVuaworMzQ0ODAgNDhiOWNjNTE3NDJiOWJmM2U5N2M0MmIzOWY2OTkwOTMwY2ZkODM2ZiBsZWdhY3ktdHJ1bmsKKzM0NDgxIGI5NDhlNzc1YTc5ZWUwYmM0MjViNmZlNjc1MTg0NmIxNzI1ZjYyMTggbGVnYWN5LXRydW5rCiszNDQ4MiBmZTNmNTU5MjMwNWRjZjRmNjFmNDMwY2EyZGE5MmYwYTc5ZWJiZjExIGxlZ2FjeS10cnVuaworMzQ0ODMgOTgyZTNlNDBiZjFlNTg2NDk0Njk0N2ZlZDYyZDg0NjljMjFhNDdmMCByZWxlYXNlMjMtbWFpbnQKKzM0NDg0IDc5MGVkNWM1OTljM2Y0MmZhZGJmNGEyMDExZjM4MWNlNTAwZGNkMjIgbGVnYWN5LXRydW5rCiszNDQ4NSAyNzk3MzY5OTBhMTRiZTM0ZTdlZjcxYTczNDkwZjNmNmIzODNkMGQ4IGxlZ2FjeS10cnVuaworMzQ0ODYgMmJjOTVkNDlmYzdhNjBmOTlmZmIyYzlkYWJhY2JjMDJjYjljYWQwYyByZWxlYXNlMjMtbWFpbnQKKzM0NDg3IGUwODQxYjVjZjJmZDFjMWJlOGQwMjBiNmI1YTQ2MWM0YzJiMWRiMGQgbGVnYWN5LXRydW5rCiszNDQ4OCBhNjg3OWQxNzMzZDdiYzJkMzQ3MmI4OTBhODRjMjI1NjRkYWFiZjM0IGxlZ2FjeS10cnVuaworMzQ0ODkgODk3YWZjYWNiYTAwNzJkN2FhMTc3OWM0MzUxMWU0NWUyYmIxYzJlMSBsZWdhY3ktdHJ1bmsKKzM0NDkwIDk1ZmQ1NTU0NWNhYzI2OTg0MTZlNmYxZmMxYzRkZjMwZmViYmI3N2IgbGVnYWN5LXRydW5rCiszNDQ5MSAyZDk4NzEwZjI3MmVjZTZiZDA2YzZmYjFjMTE4ZDk0NWRmOGJjNTU5IGxlZ2FjeS10cnVuaworMzQ0OTIgMDYyODU3ZjY5MjdmNzkzYjFmMjRjODY0N2E5ZjU4MzVjNzZjZDg1NiByZWxlYXNlMjMtbWFpbnQKKzM0NDkzIGRmOWQ4ZjdlNGM5YzM1MzAwODA3MjA0N2QxYTU3MjA4ZDFmZGI5NTkgbGVnYWN5LXRydW5rCiszNDQ5NCA2NWJiZmRhMjQ2YzkzMDhjNWZhNDEyNzVjMjM2ODE2MjhkYWRjM2M3IHJlbGVhc2UyMy1tYWludAorMzQ0OTUgM2UzZDUzOTYzYzg4ODFiMDdjOTI5NzZmOWJhNWU0NmU3YWJiMjMxOCBsZWdhY3ktdHJ1bmsKKzM0NDk2IGVlZTA3ZjMwZWYwNjhjMTBjOTNiYTMwYWMzMWNmMTFiNzhlNmFiNzkgbGVnYWN5LXRydW5rCiszNDQ5NyBmMmU2MWQ5OTA5NWU3MzE2ZjRmM2IyMTE5Y2UwZjhiMTFjNGJlMjNmIHJlbGVhc2UyMy1tYWludAorMzQ0OTggNzQ3NDdmNjJmMjg2YTg2MWJhMWVjNWQ1YjdmNzQ5N2U0Zjk4OGE3YyBsZWdhY3ktdHJ1bmsKKzM0NDk5IGY1MWRjOTAyNmU0ZGY5YmVlY2ViMDU4ZWU1Yjk4ODcxYzViZDU4MjUgbGVnYWN5LXRydW5rCiszNDUwMCA0ODMzYTljZDM3N2VmMWZhZDFiYTYwNzY2ODZlZThkNDZkNzA1MGMyIHJlbGVhc2UyMy1tYWludAorMzQ1MDEgMzcyODVhMDM0NmMxNGNlYWMyOWE2NTFjYzA1NzU5ZTM2YTc5NWU1YyBsZWdhY3ktdHJ1bmsKKzM0NTAyIGQ5OTZlMmRjYmQzYTdlNTdmZWE3YWI1MmQ1NTJhOTAzYmEyNDAzZmMgbGVnYWN5LXRydW5rCiszNDUwMyAyMjVkODQ4YTVmOTY4Yzg4ZDk2Y2Y3NzVhODEwZGNjZDlmMDNlZDRjIGxlZ2FjeS10cnVuaworMzQ1MDQgZWEwNTg1MDQxMDRjZDcyNmQwOGMwZTdhOGFiZmVjMWU4MzExZjllZSBsZWdhY3ktdHJ1bmsKKzM0NTA1IGMyYWU5MWE4N2E0OGFjNjU5OTNhYTQ1ZGM5NjJlYWFiMThjMDEwNWYgbGVnYWN5LXRydW5rCiszNDUwNiA4NGZmMTNiY2M3NTAyZjBiMDcxZjg2YTVhZGFlMjBhZThlNmVmNjMzIGxlZ2FjeS10cnVuaworMzQ1MDcgYTYwMDhiNzBjOTM5MzRiNzhlNTc1NGZjYzJiNmJhZDRjNDkyYzcyZiByZWxlYXNlMjMtbWFpbnQKKzM0NTA4IDRjOWE2N2NmMjgzM2E5ZmVmMTcxZDI3NGRlN2ExNTZhNmZlNDc4MzIgbGVnYWN5LXRydW5rCiszNDUwOSA3YmJlZTk5NDIyYTAyZWM3N2Y3NTliMWM1MTY1ZTFlMTBiOTEwNTQ4IHJlbGVhc2UyMy1tYWludAorMzQ1MTAgYWM5ODVkNzc2NjUwMTcxMDkwZWZjNjY2YThkZTcyZWM3ZjIwYzI1OSBsZWdhY3ktdHJ1bmsKKzM0NTExIDQxMzliNDVhY2ZlZDAxN2NlNzU2MWU3ZDY2MzVhYjk5Y2EzN2M1N2QgbGVnYWN5LXRydW5rCiszNDUxMiA5ZGE1MzcxNjdiNzQ5N2JmZjNmNWUyZGUwNjM5NzcyNDI4MWYxNzczIHJlbGVhc2UyMy1tYWludAorMzQ1MTMgOGViODk4ODE0ZmI5MTc0NDljZWRjYjQ3ODE1MjNkMWMxODQ2MjI1MCBsZWdhY3ktdHJ1bmsKKzM0NTE0IDdlOTMxNDkyNmRiZTJjYzViNTg2ZjU1MmNmYjE5YzJkYzRmNDAyMDQgbGVnYWN5LXRydW5rCiszNDUxNSA3ZWRlNzcyZjAzZDNiYzFiNzQ2OTRjYTNlOTc0NmRkMWIwYjAyNTc2IGxlZ2FjeS10cnVuaworMzQ1MTYgMDM0YWU0OWY5YjdhZWFmOTEzMGU1NzNlNzZjNjM3NTc5MjFjMGM0ZSByZWxlYXNlMjMtbWFpbnQKKzM0NTE3IGFmNDQzZDgyMGE1MDY3NzJjN2E5MGMyY2E5NDdjOWM1ZjU1NWY1YTYgbGVnYWN5LXRydW5rCiszNDUxOCBjNDJjNDAwMzQ1MzZjYzljMjZmMTIwNWNmZWQ0OGQ2Nzk5ODY1MzNhIGxlZ2FjeS10cnVuaworMzQ1MTkgYjRiOTQ1YzVkYTRkNzQ1YTNlNTEwYmEwYmRmYjBiOGI0Nzg1OWMxOCBsZWdhY3ktdHJ1bmsKKzM0NTIwIGFlY2JiYTAyOTRiYjUwNjM3OGViNGJlODBiODgwNGExZGFiMWZmZjggbGVnYWN5LXRydW5rCiszNDUyMSBhYzhjNzcxNmE4NWRhZmJmMmI2NzhjZWYzNjM4MGJlNjBmOGRiZDQ0IGxlZ2FjeS10cnVuaworMzQ1MjIgNmE4N2VkNjM5NjdjMjU5Zjg0MDdkZWMyMGNiZjgxMWY5ZmU4ZjFlZiBsZWdhY3ktdHJ1bmsKKzM0NTIzIDYzMTExOGI5YWVjNjJhZGM0Njk2ZmM0N2VhODg4Njc5NWRmNjJmMDEgbGVnYWN5LXRydW5rCiszNDUyNCA3YmE0M2VmZDBjZWIzMmE0OTg2N2VkNjY4ZThmNTg4ZGJhOTlkMTRkIHJlbGVhc2UyMy1tYWludAorMzQ1MjUgODMyZjNhOTg5MDU4YTZmYzRmODg4NDdlYjQ0OTQ5MDE2MDgxYjJhOSBsZWdhY3ktdHJ1bmsKKzM0NTI2IDhkYjY0YWJmODU2ZjhjNDRhNzVlYjU5OTFhN2ViZWRkMGNlNmQ2ZjkgcmVsZWFzZTIzLW1haW50CiszNDUyNyAyY2JhMGRlNzBkZjYyYmViODVjNjg3MDZhMzJlMzk4ZWE5OGY2ZjUyIGxlZ2FjeS10cnVuaworMzQ1MjggMWZiZmU5ZGMwYmE4YjkyYWMxY2VjOGY5MGE5MmVmYTFlYjJjYjhjNiBsZWdhY3ktdHJ1bmsKKzM0NTI5IDc4NjNlYmNmZjEyMWYxNTc2Mzg5Y2JhYTg4NDA2MjQ1YWNlMTc3NzUgbGVnYWN5LXRydW5rCiszNDUzMCBhMGQyOTc4NTYyZDVlMTJmOTUyM2UxYTNlNzNmODM0Njc1OGYyMjM4IGxlZ2FjeS10cnVuaworMzQ1MzEgNTY1Mjg0OWZiZTI5NjAyMTFlNDUzMDY5N2EyNTAwZGQ2NmEyYTJhMSByZWxlYXNlMjItbWFpbnQKKzM0NTMyIGM4MDQxYjBlZWIzY2IzMmI2NTg3ODljN2Y4MWI4NDBkNWI0NDliZDkgcmVsZWFzZTIzLW1haW50CiszNDUzMyAwN2U3YTAyMDYxZDg3YzU3NGU0MDE2OTQ4ZWMwZjBlMTQ2MGRiN2ViIGxlZ2FjeS10cnVuaworMzQ1MzQgMTUxMDI0NGJlYjVlMGU2ODNlZGQxZDM5NGY5OWY0NmVmZjkwN2UzNiBsZWdhY3ktdHJ1bmsKKzM0NTM1IDQ0ZTlhYmQwN2ViMzFlMjczNmNmMDk4MDVmMzE3MzVkNTZkYzU1NzcgcmVsZWFzZTIzLW1haW50CiszNDUzNiA5ZDhhY2RiNThmOWMzODg5MmYwMTc2ZmQ1MmM5ZWRjMjBmOGY0YzU4IGxlZ2FjeS10cnVuaworMzQ1MzcgNTI4Y2MwZmRkYTQxY2QxZjNjYjkwNDUyNDVlZmFiMGJiMTBmYTc1NSByZWxlYXNlMjMtbWFpbnQKKzM0NTM4IGVjMWE0YTI5ZDI1ZGE0NTg4YzEzMTBiZjQyMWE1N2Y2MjM0NjFiNzggbGVnYWN5LXRydW5rCiszNDUzOSA4Y2Q2OTFiNzM4NDUyNzJjZGEyMTBiZjhhZTZkMjJjZGY2ZTVlOWE3IGxlZ2FjeS10cnVuaworMzQ1NDAgOThjODU3NmI4ZGE3ZDI0MDAyZDgwNzYwMDA1ZWZjMzE2ZWIwM2RmOSBsZWdhY3ktdHJ1bmsKKzM0NTQxIDY0MjJhMzk1MDA0MDFiZjc3ZDk5ODBlMWQ5MmEwYzcwMmEyYjA4M2QgcmVsZWFzZTIyLW1haW50CiszNDU0MiBkMTUzM2NhNzhkOGNjYTg1YzFjZWY4ZmM4YTc4NTBjZTZhOGVjNzdmIHJlbGVhc2UyMy1tYWludAorMzQ1NDMgZmFjOGM2M2M3ODM4MWFiNmYwNGRhZjczZjZiMGYzN2ZhNWJkYjZhYyBsZWdhY3ktdHJ1bmsKKzM0NTQ0IGI1ZjY0YmU1YjIxZmRjZWU3ZDZlODg4OGE2YjhhNDYzNjQwZmM0YjYgcmVsZWFzZTIzLW1haW50CiszNDU0NSBlNTlhYjcwOGJiYjBjYThiY2ZiN2RhZDk0NmNlNjcxMjdmYWE4YjMwIGxlZ2FjeS10cnVuaworMzQ1NDYgOTgzM2FhNWJkZjM4N2M4M2NiYWUxNzQyMjliMDhkYWEwNzIyMjJmZiBsZWdhY3ktdHJ1bmsKKzM0NTQ3IGNiYmUzZjhiZGVmNmYyODNhZThiMDM4NDAwZjQ4MDFiZWM2NTc2NGEgcmVsZWFzZTIzLW1haW50CiszNDU0OCA4MjdkMDFkZjYxYTcxNmE4YzMzZDEwZTMxMTE3ZDI5N2I2NTMwMTAzIHJlbGVhc2UyMy1tYWludAorMzQ1NDkgODlkYzA2OWFhZDJjNzkzNzdhN2MxMDBlZTE0NGM0YzE0N2Y3NmYyNiByZWxlYXNlMjMtbWFpbnQKKzM0NTUwIDNjZDkyMDZkZmI3OTI5MDY0NDVmOWQ4NDQ1YTczZDhmZjA3ZTU2OGQgcmVsZWFzZTIzLW1haW50CiszNDU1MSBkNmMwOWE5ZDcyNDFkNmU2MDVkZGQwMjNhMzQ4ZDRlNmVmMzQ0ZDA3IHJlbGVhc2UyMy1tYWludAorMzQ1NTIgNTYyMTQzYzFjN2FlZGFkZjU4NDBiMDFhZGQyMzM0OGEyNTQwYmMzYiBsZWdhY3ktdHJ1bmsKKzM0NTUzIDUyMmEzZDdlMGE5NjIyOWRjYWFlYjI0YTA3YzIyMDFiYWMyYmE1NWIgbGVnYWN5LXRydW5rCiszNDU1NCBlNjc2Yzk1ZTQ4NDQ4NzBlNWU1YTVlNjhmNzk4NWQ5Y2JmNWNkMDk3IGxlZ2FjeS10cnVuaworMzQ1NTUgMTliYjFiMmZiMjMzOGRmMWQwNzY5YjlkYTg2NThhODA5NjgxODUxMyBsZWdhY3ktdHJ1bmsKKzM0NTU2IGZlZWM0NGYxOWVjYzc4ZGNiODkyMGExYzZmNTBiYTgwMDgzNThiNmMgbGVnYWN5LXRydW5rCiszNDU1NyBmZWY2ZmRlYzUyOTI1MjNmMGM4OGQ5MDI3YmI5ODg3OGQ5YTBmNTBhIHJlbGVhc2UyMy1tYWludAorMzQ1NTggYTk5NzYxNGIzNWRjOTc1YzM4NTZjZWIyYjRkNDYzMzcyNjU3NmU0ZCByZWxlYXNlMjMtbWFpbnQKKzM0NTU5IGZlOWE1YTJkZDJjMTUxNGRlNjIzY2VmZTIyNzA4NzNjNWRkYzQ0ZGEgcmVsZWFzZTIzLW1haW50CiszNDU2MCAwOGMwMmEyNjVkYmQwZGQ5YTE1MTBlMDA2MThlMDQzZTM2N2IzM2Q2IHJlbGVhc2UyMy1tYWludAorMzQ1NjEgNGU1NmZiYTk4ZjFlNDUwOGI2ZmUyNmI2MDI0MzlkYmYxOGI3Y2UyMCByZWxlYXNlMjMtbWFpbnQKKzM0NTYyIDU3Zjc0M2ZhMzIwN2UwOWE1NjMwOGZlN2M2NzYyYTBiYWI4OTM4NGYgcmVsZWFzZTIzLW1haW50CiszNDU2MyAzYmU0M2FmOTkyYTZkNzJiOWM2ZGNmY2FlMTFiOGY1NmRkZWJjZGQwIHJlbGVhc2UyMy1tYWludAorMzQ1NjQgZTVkMjIxZjhkNDEwYjM3MWRkYzYxODM5ZGQ5NWViNGI0MmMwYmVlMCByZWxlYXNlMjMtbWFpbnQKKzM0NTY1IDkzMWE1OGYyN2ViYjA4NWZlMzllOTM3N2NlODQ2YjVkZDFjYjYzYmMgbGVnYWN5LXRydW5rCiszNDU2NiAyNjI4MjNhMTJjYTc1MzMyODA1ZTNkOTQyMGM1OTk0NWFkMGNjY2E0IGxlZ2FjeS10cnVuaworMzQ1NjcgZWQwNThiZGFkMmFkZjZlMmQ3MzY2MmI5OGY1ODE4ODU4YTIzYThhZSBsZWdhY3ktdHJ1bmsKKzM0NTY4IGRjYWU2MmQzNTg4NDkzNDcyZjU1MWM2ZTJhOWE0OTkxY2JhNWQ0NzEgcmVsZWFzZTIzLWJyYW5jaAorMzQ1NjkgMDgwZGYwZWRiMGE0YmNhYzQxNzg3ODg2NTg1YzlkOTQ5NmU0MWJjMyByZWxlYXNlMjMtbWFpbnQKKzM0NTcwIGFmNzMxODQ2ZmY3MjgyN2MzMDVhNjhlMTE1ZTEwNDUwMDQ5ZWU1ZTQgcmVsZWFzZTIzLW1haW50CiszNDU3MSA4YTc1ZjliYTliYWJiMTAwYTljMDI2YzZjZGVkMjcxNzhiM2M3MDFiIGxlZ2FjeS10cnVuaworMzQ1NzIgNGUxOWEyZmYzNzZhMDVmOWQ0NDViZmI2YjRhNmIwNmNiOWM1YWEwNCByZWxlYXNlMjMtbWFpbnQKKzM0NTczIGFkZTk3YjYwNTM1MjQ1Zjc3NmVmMmVhMTU5YzQ1YmU4YjYzNTA3MjYgcmVsZWFzZTIzLW1haW50CiszNDU3NCA3MTM1YzdjYTk4NDJiMGRjZjBhZTEyMDFkOGUxZGEyZjU0ZDUyNzQwIHJlbGVhc2UyMy1tYWludAorMzQ1NzUgNzc2YTc3MTUwNjIwYzI5M2VlOGJlM2NhZDBjZTNiNzU1MzM1NTBkNCByZWxlYXNlMjMtbWFpbnQKKzM0NTc2IGMzMWVhZGI2OTc3OTE0ZWU0ODlmYTQwOGYwNzdhNjQzMzNhMWVjZWYgcmVsZWFzZTIzLW1haW50CiszNDU3NyA5ZjVkZDMwMmJkOTE1MzM4ZmU4NjY4OTU3N2I5NTllMWMyZTcyZjA4IHJlbGVhc2UyMy1tYWludAorMzQ1NzggODIwZDFkMDQzZDNhY2NmNGY2MmExMzhlOTAzN2ZlZDdjNTgxZmZiYiByZWxlYXNlMjMtbWFpbnQKKzM0NTc5IGM4OWZkN2VhZjg3NTQ3Njg4MjUxMDg4ZGNiZWFjMjcxZDFiY2Q4NjcgbGVnYWN5LXRydW5rCiszNDU4MCBkNDVmODk4MWZkZWE5MWZjOGUyMjllN2EyODA3NDkyMTI2ZjQ2ZGJhIGxlZ2FjeS10cnVuaworMzQ1ODEgMDcwYzg5ZWRhODBiZGI1NDM1Y2M3ZTIwZDA1ZjVmYzVhZTFiMGEzNCByZWxlYXNlMjMtbWFpbnQKKzM0NTgyIDY3NjA2ZjljMmQxMTNkZGUxNzczYjg0ZTYwYTVjNTQzOGUzZjgwNDIgcmVsZWFzZTIzLW1haW50CiszNDU4MyA0MWM0ZTE0M2U2ZTZlMThlNDEzMWExZWQ4OTU4YWM0NDgxYTUzZTcxIGxlZ2FjeS10cnVuaworMzQ1ODQgZmU1Y2VhNTFhM2ZmZmZmMDI5YzI2NTZjODJhNmZkNGQ3ZGE5MDc0YSByZWxlYXNlMjMtbWFpbnQKKzM0NTg1IDA0Y2E0ZDFmNzUxZjJhOGEwMjUyZWIxNmM5MjVlM2Q2YTVmYjA3NTQgbGVnYWN5LXRydW5rCiszNDU4NiBkYTUwNTZhM2IxNTI4NDFjZDE2NTk2MDgwZDRkNDcwYzQzZTg3ZWI0IHJlbGVhc2UyMy1tYWludAorMzQ1ODcgMGFjYjk1YWQxOWRjODY3ZmJjNTlmNWJlYzkyMjBiZWM1YzA4ZTNmZSBsZWdhY3ktdHJ1bmsKKzM0NTg4IGU0NjhiMjQ1MWQ1NGIwNTEzMzI3ZTNiNDlmNjE0YzZlYzdmZWViMjkgbGVnYWN5LXRydW5rCiszNDU4OSA5ZDdiN2VlMDQ0NzBlMTllMGFhNjBiMmY3MDM0NTdkNzlkMGEyMDRlIGxlZ2FjeS10cnVuaworMzQ1OTAgZTcwOTFkNTc1NGFlYzAxNTRlYjhlOTQ1YTQyNTQ2YjBkYjAyNjg3NyByZWxlYXNlMjMtbWFpbnQKKzM0NTkxIDFkYjBkZTRjODQ1NDMyM2JmYjA4NzU1NmUwY2MzODIxZmU4ZjdkMmEgcmVsZWFzZTIyLW1haW50CiszNDU5MiA2ODJkMWI2N2M3YjU1MjQ3ODcyNTEzYWYxOWM2N2IxZTJkY2Q3ZWQ3IGxlZ2FjeS10cnVuaworMzQ1OTMgMmFjZDI4YmQ0ZDBmMWZlNjE0ZTMxMGYyNmY3YWM0MzkxMjhmN2Y4OSBsZWdhY3ktdHJ1bmsKKzM0NTk0IGUyYTlhN2ZlZjE4YTMzZjgwZDRhZTcxYzk3MTBlMWEyZWMwODk2YjYgbGVnYWN5LXRydW5rCiszNDU5NSAzZmE5NTM4YWM0OTY3MjdkMDIwZjBlOTMzMGI4OTA5ZTE3YzlkOTEwIGxlZ2FjeS10cnVuaworMzQ1OTYgZjAxNjEzMjdhOTAyNjc4NDEwZDlmOTEwYjBlMjRhYjE2M2Q1ZmQ5MiByZWxlYXNlMjMtbWFpbnQKKzM0NTk3IDRlZDQwYjNmODgwMjM1ZTc1Y2FmOTdhMGUwYWY5ZDY1OGY5Y2U5N2QgbGVnYWN5LXRydW5rCiszNDU5OCBkMzM4OTgzZDA3MTk0N2Q2OTE3Y2U5YmU0N2FhZjljYTNiNDc1M2NiIGxlZ2FjeS10cnVuaworMzQ1OTkgMmU0OTc4NDBjNDU4ODBkNWQwMjIzZjFmNDY3MzRjYTdhYjQyZGZmMSBsZWdhY3ktdHJ1bmsKKzM0NjAwIDcyZDcwZGNjNGFmMmM3ZjczMjA1NTdiYTA2MWIyZTFmMGE4OWE5ZDkgbGVnYWN5LXRydW5rCiszNDYwMSAyZjBlNjBkNDIzM2E2NjViZTJmMDFmYTUxMDRjYjBkMTRiZTdlZjg1IGxlZ2FjeS10cnVuaworMzQ2MDIgY2JkOTNjZjMyZWZmZWFlOWQ3NjNkNGE2OTJlZTVlZWFhNTlmODhmMCBsZWdhY3ktdHJ1bmsKKzM0NjAzIGU2MTQwODNhYjIwYzhmMWQyY2MzOTlhMTEyMjk5ZTUyYzZkMTUzODQgbGVnYWN5LXRydW5rCiszNDYwNCBlNDhjNjFmYTJmOTgzZTFlMGQyNjZkMmE4YTJlMmNhN2JiNTBiNWYzIGxlZ2FjeS10cnVuaworMzQ2MDUgM2FlODI5MjhiMTEzMWNiYjEwNWFmM2FlODk5OTAyMzdhYzkwMzJhYiBsZWdhY3ktdHJ1bmsKKzM0NjA2IDdkYjc3OGNiN2UwOGE0NDhkM2VhZjdmODM0NDZlYzY4MGI4ZDExMWUgbGVnYWN5LXRydW5rCiszNDYwNyBjZWVjNjlkMjQwZjAxOWViYjc3YjBhZWUyMGY4MTYwODdlZjhmZDBiIGxlZ2FjeS10cnVuaworMzQ2MDggMTk5N2ExNGY2YjA4OGUxYTY1MWUxZmRiOGMzY2FjN2Y1ZjFiZmMzNiBsZWdhY3ktdHJ1bmsKKzM0NjA5IDg5ZWNmYTI1NDUyODNiMTdmZjE5NzBhYmFhZmQ1NWYyZWNiMjQyOWEgbGVnYWN5LXRydW5rCiszNDYxMCBmMDhhNWU5NWMzN2NmM2RiNzI2ZDliZGRhOWIwYmI2NzFlOTYxYzI0IGxlZ2FjeS10cnVuaworMzQ2MTEgMWU2ODYzZGRkODRiOWU4M2U3YjNhMTc1NzFjZWI0ZTZlZTk5YzkzZSBsZWdhY3ktdHJ1bmsKKzM0NjEyIDU0MzcxMzkxOTQ5OWU2NjEzMWQzNGQ5NzY4ZTJmYmRkZTQxNjAxZTIgbGVnYWN5LXRydW5rCiszNDYxMyAyZWQzNjgzMzg1M2FhY2JiNGVmOWRhY2M0MjJlOGEzOTdlNGQzMWE5IHJlbGVhc2UyMy1tYWludAorMzQ2MTQgYTBhOGYxNTQwMWRiMGZiMTM3NGM5YjJiYTIyZWI3NWJkZDg2NmNkNSBsZWdhY3ktdHJ1bmsKKzM0NjE1IGM1ZTUyMDhjZGJiNzIwZTAzODI1MTNmZjZjN2I2ZjVlNzQzYWViZDggbGVnYWN5LXRydW5rCiszNDYxNiAzN2M3NzYzZmE4M2RmYTY0M2YzZTdjYzNhMzcwNDM4YjIyMTRiNjI2IGxlZ2FjeS10cnVuaworMzQ2MTcgOTYxNzBmNzVlM2U5ZmVmZDgyYTM1ZWQ1MGY1NjZiNjM2YmJiNWQ3MyBsZWdhY3ktdHJ1bmsKKzM0NjE4IDMwOTZmYWIyYTE5YzA1NGI1OTRiYzJiNTY4OTMzMGQxMmUxOWE1NTggbGVnYWN5LXRydW5rCiszNDYxOSA4NWYzODM2NTE4ZmU1ZDE2Njk3ZmQxZjNmODdiOTQ1ZmU2YmU3Nzg0IGxlZ2FjeS10cnVuaworMzQ2MjAgNjAzNzA0MGEyY2NlNDcxMjRjNTUzZDEzYWZjOWNkZjcxYzM1YmY1MCByZWxlYXNlMjMtbWFpbnQKKzM0NjIxIGIxMzYzNTNhZGRlNmE2Y2ZhNWY4MjY2YWIwYzY0YTc5NWE3NDQ3YzkgbGVnYWN5LXRydW5rCiszNDYyMiA1MTBiZDdlZWE5MjVmZTEwZmM3OTJkNmZlZDliYjViMWU1ZWJkNTIxIGxlZ2FjeS10cnVuaworMzQ2MjMgZDI2MTgzOWVjZjg3Y2Y4M2UyMGU0Zjk3NjMxNzliMGI2MTYzNGE1YSBsZWdhY3ktdHJ1bmsKKzM0NjI0IDM5ZmE3YjhmY2MwNzdhY2E3MTRmMjgwMzhiMmJjN2Y1NmFhMDY0YjQgbGVnYWN5LXRydW5rCiszNDYyNSAzZDliMzZkNmFiODk4YjJhYTA5MTVkYTUxMWUyYWYzZjEwMDNmMWJjIGxlZ2FjeS10cnVuaworMzQ2MjYgY2Q3NjI0YjAyNWEwZmU4MmUyZTM2YmYyYzdjNTU1YzdmZmU3N2FlYiByZWxlYXNlMjMtbWFpbnQKKzM0NjI3IGUzZWJkNzQwZDFlZmI0ODY4YmZmZDE4M2M3NTNhNDBjOTcyMGQyMWYgcmVsZWFzZTIzLW1haW50CiszNDYyOCBhMjlhNTg1YjAzZDk2MGYzMTE0YTliN2U0ODAyYTBmM2Q5ZTJhMzQ4IGxlZ2FjeS10cnVuaworMzQ2MjkgNDMyMGNjYTRlZDg0MzgzNzcyMDk4NGE5Y2I2YTFjOTVjNGI5Yjk3ZCBsZWdhY3ktdHJ1bmsKKzM0NjMwIGQ0MzJmODJiOTg2ZmJmMWI0N2QxOGIxYmI4ZjUzNTkxMDhmNjQwNzYgbGVnYWN5LXRydW5rCiszNDYzMSA1NjdmYTA2NDllODM1ZTgxY2M0ZWI2OWY5ODM0NjY5NWVhMThiZWEzIHJlbGVhc2UyMy1tYWludAorMzQ2MzIgZjY0OGM3ZjFlOGI4NTk4YjMwMjJhODI4MDZlNTEwNmI1MGEwMmFkNSBsZWdhY3ktdHJ1bmsKKzM0NjMzIDgwODE2NDNjMzczZmZiYWUyMTU2OGUwOGJmNjdjNzg1ZWUyYjMzNzEgbGVnYWN5LXRydW5rCiszNDYzNCA4MTczM2M3YTk1YzhkZGU2MTFmMDcwZDEzYmM2YzI2ZmQyZDliZjQ1IHJlbGVhc2UyMy1tYWludAorMzQ2MzUgMTJjMjJkNmIxZWMwNjhiMDNiY2E2N2I3M2RiZWYyYzBkNWFkMjQyMyBsZWdhY3ktdHJ1bmsKKzM0NjM2IDhhYTkyMzdmNmRkNmFhMTA4ZTQ5YmM3OGViN2Q2ZjUxOTIyOTI3Y2IgbGVnYWN5LXRydW5rCiszNDYzNyBhMTgxOThmNDk0ZjQ0NzhkZGUyMWI4MzM4ZTdhOTFiNjEwZjUwYzU0IHJlbGVhc2UyMy1tYWludAorMzQ2MzggMzIxM2FhYTgyYzdiNzk2YjNjOWZiMWMzMzZhYzJlYjIxNDE4MWFiOSByZWxlYXNlMjMtbWFpbnQKKzM0NjM5IDA0NjhmOWRkYzA2OWQ2ZmYwZjNmYTc2OTYzNWQzMTVlNmUwNDhkODggbGVnYWN5LXRydW5rCiszNDY0MCBhMGVjYWUzMzMyYThiNmIxYmQzMTA4MWVhMjU5YTAwMzhhMDJkMzY2IGxlZ2FjeS10cnVuaworMzQ2NDEgN2E2YjFjOWZiODllNTQwZWRjZTZjODQyZGEwZDkzZjM2NTM3Yzk4MCByZWxlYXNlMjMtbWFpbnQKKzM0NjQyIDg3YzA0MjJjZGU3MDhjMzY4ZWEyNjY0OTA2NjMxODdjZWE0NGQzMDUgcmVsZWFzZTIzLW1haW50CiszNDY0MyA1MjY2ODI0NTZhOGQ1YTY5MTdmMTE2NGQwMjE3YWY5ODliODQ4YzBkIGxlZ2FjeS10cnVuaworMzQ2NDQgOTY1NGU1ZjI0NzNlNGY5NDk3MDIxMjBlOWNiN2QzMDA3NjMxYjg0MCBsZWdhY3ktdHJ1bmsKKzM0NjQ1IDVjNGNmZjhmYTZlY2Y5MWM0ZDQ5OTBlN2M2MjZhZGVjNzIwMzg1NTkgbGVnYWN5LXRydW5rCiszNDY0NiBjMDBiNWYxNzk2MzNjZWJlZGUwODhhMDk0M2IyZWM0MzI5ZjhlY2IzIHJlbGVhc2UyMy1tYWludAorMzQ2NDcgNTRmZjY4ZTk3M2VlYmFlMGQ5OTBlMWJlNTMwNmIzNzRiMGY0ODQyZiBsZWdhY3ktdHJ1bmsKKzM0NjQ4IDI4NzIwMGFmOTQ2ZmI3YmQ1MTczMzg4OWE4OTU4YzZhYjBjMTViZTggbGVnYWN5LXRydW5rCiszNDY0OSBmYTZlOGQ0Zjg4YzY3ODI4MmU3MTZkZTBkNTk0MzlmNjI1MjBmMjQ1IGxlZ2FjeS10cnVuaworMzQ2NTAgN2Y2OTVjNTk4Mjg3M2I5MWVjN2U1ZDRiNWE3YjhkMmQzODQzY2MzZSBsZWdhY3ktdHJ1bmsKKzM0NjUxIDE5ZmY5NzI0MzRiM2QyNjFiZmMzYzMzYzhkM2ZiMWI3OTMyZDAwOWIgbGVnYWN5LXRydW5rCiszNDY1MiA0ZWZmY2JmODBiNDVjNmU0MGY0NTE3ODBkZTQxY2E5NDRhMmMwMDYzIGxlZ2FjeS10cnVuaworMzQ2NTMgNWQyYjBlOTA2MmQ1MzM3ZDA2OTc5YjIyMTMyM2I2MzEyZDhjNTM3NiBsZWdhY3ktdHJ1bmsKKzM0NjU0IDg5NDFmMmVlOTA5NDlmMDNlMTE0NTkyYjRjMTI5YzYzZTE5OTUyNDAgcmVsZWFzZTIzLW1haW50CiszNDY1NSA1MWViZjU0NzRmM2RjOTg0ZjFjYzhjYTliMDk1OWZkOWQxN2JiNjFkIGxlZ2FjeS10cnVuaworMzQ2NTYgODEzYTZkOWM1ODg4MjkwN2E4OTkxZjcyMDVjYTMzZGQxYjM5YzQxNSByZWxlYXNlMjMtbWFpbnQKKzM0NjU3IGIyNDk5NWE5NjY0YmQ1NDg0MGFmZjM4OTRjYzFmNWY4ODM5MzI0OWUgbGVnYWN5LXRydW5rCiszNDY1OCBiZjEzMTk1ODFkYzQ3OWY5Y2JhMGEyMDE3ZDZiZmQ4ZjYyYjcyMmRhIHJlbGVhc2UyMy1tYWludAorMzQ2NTkgY2I3ZDVlMjNkYmM3N2YxMDQxNDFmNjBmMDU4NmQ5YzUwNGI0ZDFkMyBsZWdhY3ktdHJ1bmsKKzM0NjYwIDcwMTg4MGQyNjZlY2NiNDgxMzA0Y2JiZTQ2N2Q2ZDc4NDU1ZDJiNWEgbGVnYWN5LXRydW5rCiszNDY2MSA2Y2EwZGJkNmNjYzk4YTE5NmVlYmY3YTlkMjZjYjUzMzdlNzFlYTgyIGxlZ2FjeS10cnVuaworMzQ2NjIgNjI1MTdjYzRjNGU3OTIwMzAxZjI4NWYxOTcxYjA5ZDI1YzY5OWMzZiByZWxlYXNlMjMtbWFpbnQKKzM0NjYzIDdiZTQ1ZjdhNzE4ZjM1Njk0NDEzNGIzMGVlYzdiYzcwMGEzZGY3OGUgbGVnYWN5LXRydW5rCiszNDY2NCBmNzI5YzRkNTMwNDhhYzIyNDMyNzI1ZWU5ZDQzZjE4Mzk2MTY5OTcyIHJlbGVhc2UyMy1tYWludAorMzQ2NjUgNWY0OWZjMjMxYjRjODg1ZjEwNTA1MTFlNjM2MGVhODlkODVhNjY3ZSBsZWdhY3ktdHJ1bmsKKzM0NjY2IDIzMzgyYTEzNGQ1YWI2MWE4MGQ1OGQ4YmU5NGNkYTgwZGQxMWUxMmEgcmVsZWFzZTIzLW1haW50CiszNDY2NyAxZGEzOWE3NWVkMzg0YThhMTNkYTQ5Mzk5NzM3NWRhMzUxNDNlMmJhIHJlbGVhc2UyMy1tYWludAorMzQ2NjggMzhlNzJmNGYzZGY1ZTk4MTBlZWZmZTg1ZmYzZjJhMjY2ODU5ZmUzYSBsZWdhY3ktdHJ1bmsKKzM0NjY5IDExNjM2ZTc5ODdiNjM3ZmVjMWJiNmExNGRiOTZlMDk4NDhlNDhiNTYgbGVnYWN5LXRydW5rCiszNDY3MCA0NWY3MDcyOGRiYWM0ODA4MGU0YWUwNTk4MTRlNDhiMjA4YTFhNmZlIGxlZ2FjeS10cnVuaworMzQ2NzEgMzMxMzU3MWM2NTc0M2E5ZWM0M2NiOTZiMmM4NGUxMTM1MGM2ZTRmOCBsZWdhY3ktdHJ1bmsKKzM0NjcyIDhmYTNjNTg2OWY1MWE3YjVlZGI4ZWZjMTUzZTY5ZThlZmNlODI1MGQgbGVnYWN5LXRydW5rCiszNDY3MyAwN2QzYzg2NjhmOGI0NzFjOGFhZTFhMmU2MDliNGUzNDg2NmY4MzdjIGxlZ2FjeS10cnVuaworMzQ2NzQgNTNkMjgxMzM5NWY0ZWY4MDY5ZTQ0ZDgxODc0MzhjZTIwNzFmM2Q2NyByZWxlYXNlMjMtbWFpbnQKKzM0Njc1IDdhYWE0MGJjMmIxN2M5NGRmMmMwNTdlZGYzODEzYTEyN2RhMjMwNGYgbGVnYWN5LXRydW5rCiszNDY3NiA0NmI5ZmRkMjdlYzIxZmJmYTdkYWJhZDMwYTcyNmJmYmZjNzAwNDQxIGxlZ2FjeS10cnVuaworMzQ2NzcgMTkwNGQ4YjAzOGI2NjhkOWU5OGRiNmJkYmQ3NDBkZTE0NmEwZDgyOCBsZWdhY3ktdHJ1bmsKKzM0Njc4IDhhZmVjZDM2ZmI4ZTM1MTU3NzAzZDQ0OTBjMTNiOWQ0MTM4YjBjMjQgbGVnYWN5LXRydW5rCiszNDY3OSAzMTdmY2M1YTE4NGQ0OGI4OTQ5NTVhZWQ1ZThkYWVjMDEwMjQxYmQ1IGxlZ2FjeS10cnVuaworMzQ2ODAgMjIxMDdjNWExNzZlMzEzMzhkYjg3MjYzNjZiNWQ3NTk0MzZmN2I2MiBsZWdhY3ktdHJ1bmsKKzM0NjgxIGYxOTYyNWYzYzE5OGVlZjRhMDI0MzFlZGZlZmMxNjI0NmMzY2M1YWEgbGVnYWN5LXRydW5rCiszNDY4MiA1YmNlOTU4OWVmMGIwMzZhOTcyMThiNzhjMjVjYzgxNDcwZDZmMGJiIGxlZ2FjeS10cnVuaworMzQ2ODMgNGVkYWJjMjk3NmY3M2ZjNTEzMjhiMjU0N2NlZjEzMjcwMTc1MDA2YyBsZWdhY3ktdHJ1bmsKKzM0Njg0IGRkNmE1MTBhZTBkOWMwOTk0NDM0NzBiMTdjMTRiZDY5NGQ3ZmFkNjggbGVnYWN5LXRydW5rCiszNDY4NSAzYzFjODFkNjQyZTA4NzdlYzkwMDU0OWExOWQwZDcyZDVjZTQ4MDE2IGxlZ2FjeS10cnVuaworMzQ2ODYgYjZjMTM5NTQ0YzE2ZDZhYjdhMjQxMjU4ZGMxNTRhZGIwNDY3ZjA4YSBsZWdhY3ktdHJ1bmsKKzM0Njg3IGU0ZjllNzRiYTU2ZGM4NTdjY2FmNjg5NDNkOTIzNThiNGFlY2FkMDEgbGVnYWN5LXRydW5rCiszNDY4OCAxNmM2ODJlM2U1N2Y5ZWYyODAyMzNjMjEyNmQyMDRmZDU3OGZkYTAyIGxlZ2FjeS10cnVuaworMzQ2ODkgNGIyYzllMTRiNDQ2YjY0NmRlOTBiZThhNjMzZTBlMjhiOWI0ZTM0MCBsZWdhY3ktdHJ1bmsKKzM0NjkwIGNlOTZiZGM2ZmJiOGQ0MDk2Y2MyYmRkMjBlZTk3NDFiNjRmYjQwOTkgbGVnYWN5LXRydW5rCiszNDY5MSA1M2U0YjdmZTA5NjljMTQ2OTMyZmRjOTAzZTIyNjdiN2VmY2ViN2M2IGxlZ2FjeS10cnVuaworMzQ2OTIgZDEyZjA3YzFjM2EwNzA3MzA4MTE5MDM5ODI1ZDgyNzE5MmQ1NjkxOSBsZWdhY3ktdHJ1bmsKKzM0NjkzIDRjZTMwZDlhMWUwNDE5YmRmOTNkOWE5NmVkN2M3MmMyNDA1MzdiZTcgbGVnYWN5LXRydW5rCiszNDY5NCBlYWQ0YzYxMjE5ZDBmMGMxNzYxYTI3Yzc2MjA3NjU2ODM5ODI0YTgwIGxlZ2FjeS10cnVuaworMzQ2OTUgN2ZlMjAxODAxYzE0OTlmODg1MTU4ZDg2OTc1NDRjYTI2OTczZWU3MCBsZWdhY3ktdHJ1bmsKKzM0Njk2IDRjODE2MDA4OGIzNDc1NGFlNzJhYWJhMzkyZTNlM2Y0MWM1M2QyYzYgbGVnYWN5LXRydW5rCiszNDY5NyA4NmZkZjhmZTdmMTcyMGQxMDYxNWI1ZWJjNWM1MWRiZDIwYWU3MWMwIGxlZ2FjeS10cnVuaworMzQ2OTggODkwZjNjMmMxMTgzMDA1OTdiNmI3MjU2ODRiZDYzYjI3Y2EwMTZjOSBsZWdhY3ktdHJ1bmsKKzM0Njk5IGViMDQyNjVmYjY1Yjg2YjY2NmE0ZmRhMjU0MjJjNzZiMjc1MTZkMmQgbGVnYWN5LXRydW5rCiszNDcwMCBlNTQzYjNmMGQ5MDYwMmUyNjVlMmFjYzRiZjhiMWE2NTIzMmFhZjUwIGxlZ2FjeS10cnVuaworMzQ3MDEgMzM0ZWRjZDFlNWFjNjEyNTJmMzAwZThkODFhZTVkNjBmMDJjZjI3MyBsZWdhY3ktdHJ1bmsKKzM0NzAyIDgzMGU1ZmZjNmQyNWM3MDRmOGVkYTBiOTg0ZWNhNTlkMTg2M2JiZjQgbGVnYWN5LXRydW5rCiszNDcwMyBmZGM4YTg4YTlhNWE0MzQ0ZTRhYmY1ZDA4ZWQ5MTY4MDU3ZDNkOWM4IHJlbGVhc2UyMy1tYWludAorMzQ3MDQgOTYwMDFhNzBjNTA1N2YwYjZmOTE1MTU4ODU1ZWE0Mjc1MjNmYTcwYiBsZWdhY3ktdHJ1bmsKKzM0NzA1IGQ5OWUwMjI5NjZjOTQzOGM1ODhmYzY4Mjg2MGQ4Y2NhNGI2ZmE1YzggbGVnYWN5LXRydW5rCiszNDcwNiBjYWExYTQ4ZGE0Y2NkZmNmMGI2ZDEwZjNlNjMzZmFmOWI2ZTFmNDRiIGxlZ2FjeS10cnVuaworMzQ3MDcgNGY2MzgyZDI4MDlkZjRhZThjMjM2M2Y3MjM0YzA2YTcyYmI2MThmNyBsZWdhY3ktdHJ1bmsKKzM0NzA4IDgzMjZmNjQyNDRjMjVhYmZjN2VhNWMxMGZiYzA0ODMwYzhhODIxNzUgcmVsZWFzZTIzLW1haW50CiszNDcwOSAxNGQzMjE0NjZhMDY5MmYxNDljM2M1YWYzNmYzZWMwMDFjMDNlNmJkIHJlbGVhc2UyMy1tYWludAorMzQ3MTAgZDQwMTc5MDE3NjM5NWQ1OWVhNTQwNmIzOGRkOGEwYTYyNzQwOWU4OSBsZWdhY3ktdHJ1bmsKKzM0NzExIDUyZGU1ODA4N2IyZjNhNDVlY2JjZmQ1MzE1MTE1NDkyYjdmYWQyODkgbGVnYWN5LXRydW5rCiszNDcxMiA2MzJiMjIzY2I4ZTgzODc4OGM5MzQxMzdkZDU3OTM5MjdhZmIyNDcwIGxlZ2FjeS10cnVuaworMzQ3MTMgZDQ4MjZlMDk3YTNmZWJmMjg0YjhmMjlhNWJlYmQwOTFiYWQ3MzI1NiBsZWdhY3ktdHJ1bmsKKzM0NzE0IDlmYzUzNDFmYTY5NTZhODMzYmNiYTI3NDgyYzg4NjU1NjZkMTk5NGUgcmVsZWFzZTIzLW1haW50CiszNDcxNSBlMGE3NWE3NTcwYjQwMjg5ZjhjNTRmMzgyZjAxYjBhNzM4MDRmOGQwIGxlZ2FjeS10cnVuaworMzQ3MTYgMThkZjIwM2I4ZTk4NTQ4MmE0ZWI3ZjMwZTljNmVhMTllM2FhZmY3MiBsZWdhY3ktdHJ1bmsKKzM0NzE3IDRkYTk5ZjczYTFkZjg0ZDEyMzYyYThkMjdmZmZjMDhhMDYyYTM4ZTUgcmVsZWFzZTIzLW1haW50CiszNDcxOCAyMmJlZDJmZGZmZWE2Yjk2NTg0YTMyZDk2NzQ2ZGZiYzBlNjcxYjA1IHJlbGVhc2UyMy1tYWludAorMzQ3MTkgZDkwMTU4ZGYzOWM0NTMxMmZkZmUwYWI1MDhkNzZlNmQ4NzJlNDE3YyByZWxlYXNlMjMtbWFpbnQKKzM0NzIwIDYyMmE3NmJjMDIzNzY5MzliMGFhNzg3OTFlODcyYmI5NWQwMmJjZDQgbGVnYWN5LXRydW5rCiszNDcyMSAyNzg5NzZiMTlkY2NhNmY4NDczYzg0Y2ZiM2M1MjQ2MGQ2ODNhNTgxIGxlZ2FjeS10cnVuaworMzQ3MjIgNWI3N2JjNGQyNWIxYjlkZjU5ZjdmOTBjMGM3N2I5NTM3ODhjYWJiYiBsZWdhY3ktdHJ1bmsKKzM0NzIzIDQ2OTZjNGI3Zjc5MmIyYTdhZmYzYTI4NjRkNTE0YTM3YjY5ZTg5Y2YgcmVsZWFzZTIzLW1haW50CiszNDcyNCAxZmQ4MTg5NGNiOTczZjJmZTQyNWJmYmE0ZDA2ZWVjODRiMzcyODNjIGxlZ2FjeS10cnVuaworMzQ3MjUgNzUzZDcyYmQyMTRiMmM1ZDJmODg2YjE2NTI3MzE0NDQ3ODUzZmI3YyByZWxlYXNlMjMtbWFpbnQKKzM0NzI2IDQyMjRkODA3OTExYzRhMDlmMDJlY2ExYTI0ZGRkOTg3NmYxMzQ5YjEgbGVnYWN5LXRydW5rCiszNDcyNyA3MGYzMmYwZDhlY2YwNjU5YjVmMWRjYWQ5NGE3ODVmZThjNzFmODc4IGxlZ2FjeS10cnVuaworMzQ3MjggMmRkYjFjYmExOGQ2NDM5NmQyN2E0ODk1Njk5YTg4ZjNlZGYxYWUwYyBsZWdhY3ktdHJ1bmsKKzM0NzI5IDk2MjhiYjU0YTllMDc0Y2EyMmEyODU2ODIxMmUwN2NmZTdhOTMxNTMgcmVsZWFzZTIzLW1haW50CiszNDczMCA0NmRlM2RiOWE1ZGI1MzQ0YjBkMWFiMDUwODMzODEzZDdjNjRiZDQ5IGxlZ2FjeS10cnVuaworMzQ3MzEgMzJjMmM3OTljOTI0OGUzYTNkNjBhNWExYmQ4NzkzMDQwZTY3OGVkNSBhc3QtYnJhbmNoCiszNDczMiAyNzBkNTllMzQ2ZTZhZjg5NDk3YWFhODFhMTBlZTIyMzdkMWI0MmU2IGxlZ2FjeS10cnVuaworMzQ3MzMgYzQxMWE3NjJkNWRkNmEyZWE2ZjZhZWNkZmU4ZmNmNDdjMDllNGY5NyBsZWdhY3ktdHJ1bmsKKzM0NzM0IDhkNDEzNTc4ZWIxYWMwYThlNjM5NzFkZTkwMmQ2MWYwN2FiMjJhY2MgbGVnYWN5LXRydW5rCiszNDczNSBhNGI5MTNmOTM3Y2RjOTE3YWMxM2Q2MjY5ZGYxMDljOTYwYTEyNjY5IGxlZ2FjeS10cnVuaworMzQ3MzYgMTdhYTUzMDJlMDhiMjE3ZDA3NTFlNTQ0NjdhZGNiNWM2NTE5NTc4MSByZWxlYXNlMjMtbWFpbnQKKzM0NzM3IGJjYzc4NzNjNzA3ZTUyZWFmZTE1Zjg2ZTVkNjEwMTcyOTFlMjg3ZGUgbGVnYWN5LXRydW5rCiszNDczOCBiMmZkN2FmMTcxODY5MDZmMzNlNGRiODFmNGRkYjQ2MmZlYzA1NmJhIGxlZ2FjeS10cnVuaworMzQ3MzkgZDJlYWE1M2NlYWJlZTJhM2NjY2M3ZGVkMDFjNjkzN2FkZTA1OTNlNiBsZWdhY3ktdHJ1bmsKKzM0NzQwIDIxYTEwYzM2MDBiNWM0ZDQ3OTI0Yjk4Y2E4MGU1NmJkZjM3N2U5ZWEgbGVnYWN5LXRydW5rCiszNDc0MSA4NDVmMTliMTQ1YThmYTBmMmNkNGYwZjM1OTRhZjZlMWU3Y2M4YmE3IGxlZ2FjeS10cnVuaworMzQ3NDIgODVjYWJlN2IyMTZiN2JkMDU1MzFhNzQ3MjQyMjhlMjdkYTZkODIxYyBsZWdhY3ktdHJ1bmsKKzM0NzQzIDBhYzQwOWRmZjM5MDkxNTlhOTcyNjYyMzk1MjM2ZmZmOTZmZjQ5YjMgbGVnYWN5LXRydW5rCiszNDc0NCAyYjZhMTBlMDY3MjczOGJlYTJkNjM0ZmNhZmQ5ZjBhYjJkMjVhMWE3IGxlZ2FjeS10cnVuaworMzQ3NDUgMDI0YjQ3OTlhNDFkNTI1MTc0NTVjZTg1ZmVjODkyNGRkNDY5Y2IwMCBsZWdhY3ktdHJ1bmsKKzM0NzQ2IGJmMDM4OTg2Y2I4ZmRmMTI2ZmFkZjUzNTZlMDgxYzdmYmMyZjE0YTcgbGVnYWN5LXRydW5rCiszNDc0NyBmOTY3NTg5ZGY3NTEyNWE3ODk4NmVmOWNkZDUxNGFiZDdjNzQ3MDU1IHJlbGVhc2UyMy1tYWludAorMzQ3NDggY2UwNzExOGVlNWQyNzdkY2QzNWZkZTYzYjMwOTIwYzQ3OWNhNjE5NCBsZWdhY3ktdHJ1bmsKKzM0NzQ5IDdjNTVlYmVjNDhmNTc3YTVkYmJhODBjNWQ1NmJkNjBlYjNiNTQ2N2EgcmVsZWFzZTIzLW1haW50CiszNDc1MCBkYTE1NzhjZmFlMTgyZTU0YmIyNjZiOTBmMjA1ZjUxNDZjMzcyY2JiIHJlbGVhc2UyMy1tYWludAorMzQ3NTEgNmQzZTBlNmQ3YmU2MTU5OTg0MTI1ZDg1YjU2YjE2Y2UzMzUyZWMwMSBsZWdhY3ktdHJ1bmsKKzM0NzUyIDRiNmM3ZTVjYjg4OWIzM2Q4MTFlYzQwM2VlODQzOGQwMTNlZTljZDMgbGVnYWN5LXRydW5rCiszNDc1MyAyYzNhNzVjNTQ4MzM0OWI4NGNmMzQwODM4YWI4YzNlYjY0M2E5ODkyIGxlZ2FjeS10cnVuaworMzQ3NTQgZmFkY2ExNzE2NGMwNmM2MjI0M2IzMmU4ZTAzN2FlNmE4NmVkYjc5YiByZWxlYXNlMjMtbWFpbnQKKzM0NzU1IDQ0YWIyNDJjOWI4Y2Y1YWVmNWM4M2Q4MzQ4ZDY5NjAzOTc1NDNlZjEgbGVnYWN5LXRydW5rCiszNDc1NiAyZDY5MGE5NWU0ZmQxZTAxZWE0ODFhOTZmZDhmNmE5ZmI1NzFiNTg3IHJlbGVhc2UyMy1tYWludAorMzQ3NTcgZjcxYTIxNjc5NDM2YTUxMGNjYzQ2NTI5ODg1NWJiZmVkOGM5OTcxNiByZWxlYXNlMjMtbWFpbnQKKzM0NzU4IDZjZjA5YmUwNDkxZGU4NmJlODMzNjdmMDNlZjc1ODdmZjA5Yzc4M2MgbGVnYWN5LXRydW5rCiszNDc1OSA0MDA5YjM5OTI2MTZhMGQ2MGMzNThhMDI1ZDQ4NWM4MTAzMTFjNDBlIHJlbGVhc2UyMy1tYWludAorMzQ3NjAgNmYwMTcwMGMxODA4OThkZWMzZWQxMzdkNjA0ZjFhNzBjZmRlMmI5NSBsZWdhY3ktdHJ1bmsKKzM0NzYxIDljODQ2YzNkZjZmM2UwMjRlMGVhYWI0ZGRhNWI5YTM4OGJiZWRmNGEgbGVnYWN5LXRydW5rCiszNDc2MiA3M2Q1MjEzMzA1ZDM3NmQ1MDQ5Yzg0OGQ1OGIzN2MzMTBlZmUxZmI1IGxlZ2FjeS10cnVuaworMzQ3NjMgNmRjMTllNDgzNDdhMGI3OGYyNmI0NDc2YjI2ZjkyOGM2ZDdiY2YwOCByZWxlYXNlMjMtbWFpbnQKKzM0NzY0IGRkNTcwN2Y3MTUyNmFjZTk0YmE4NTU4YmExYTBiYWYwOWJlOGI1ZTIgbGVnYWN5LXRydW5rCiszNDc2NSAwZmY2OTI1OWIwMDVmNDczZjRmNzk1NmIyMGVkNDA3YzUxNWVlMmMxIHJlbGVhc2UyMy1tYWludAorMzQ3NjYgZmQ4N2NlMTgxOWZhMzc4YjIyNWRiMWExNzZiNDBhOThmZDRiZTBjMiBsZWdhY3ktdHJ1bmsKKzM0NzY3IGQ1MGUyNmYyMGYxMDg0ZjlmZGYxZjUyNmMxOWMxYjA5NzA5MTQxNTUgcmVsZWFzZTIzLW1haW50CiszNDc2OCBmNWVhYjYyODMyODY2NGZhODMwMzRiN2E2MDU3N2E5ZGZmMmZhMGYwIHJlbGVhc2UyMy1tYWludAorMzQ3NjkgMzU0OGYyMzQ4MzFlMDk5ZjE5MDUxMWI3ODI4NjlmNjFkZDM5MDYzNiBsZWdhY3ktdHJ1bmsKKzM0NzcwIGQzYWUzMjRmNmM4OTVmYTBiZmE5MGJiYzIwNDQ4MGU3MDkyNDgzZTMgbGVnYWN5LXRydW5rCiszNDc3MSA0NTZlMjc0Zjg2MDI2MjY2YzA2MWZkNjk0MmZmZjRiYzE4NzJlMTg5IGxlZ2FjeS10cnVuaworMzQ3NzIgNWRlYTczZGM5NjhiODQyN2RmOWUwZTdiMTkyYjZjMDU4M2I0YjYxNiBsZWdhY3ktdHJ1bmsKKzM0NzczIDNkMWYwZGY3NWE4MGM2Y2I1ZmQyYjBmMzhhZTMxNDU5N2E4M2MxOTUgbGVnYWN5LXRydW5rCiszNDc3NCAzODMzOGM5NzBmN2QwNzk5ZDM3OWVlNjExMWE0OTI4MDEzZjViMWIyIHJlbGVhc2UyMy1tYWludAorMzQ3NzUgMjUxNzE3NTY2ZTkxMmY4YmZhZmUyNWIyYTYzMDk5YmY5NDNkYWEyZiBsZWdhY3ktdHJ1bmsKKzM0Nzc2IGY2OTU4OTE3OWM1NTljMDU4ZjFlZTU5NmU1MGNmMTczYjFmOTQ1NzEgbGVnYWN5LXRydW5rCiszNDc3NyBiZjdkZjQ4MDEyY2IyYTY4MTNkZWQ0MTMyMTJkYWIxMDgxZTgyZWNhIHJlbGVhc2UyMy1tYWludAorMzQ3NzggNGUxMTI1MDU2NGNiZDNmMDYzNWE0Yzk0MDk0ZmUwMTRiNDc0MzFhNiBhc3QtYnJhbmNoCiszNDc3OSBkNmM3ZTU1OTYyNDdlYjA4OWI0MzMxZjhmZWYwNjc4NWUyYTMxOGUwIHJlbGVhc2UyMy1tYWludAorMzQ3ODAgNGEzNjFiYmI1Mjc4Y2E1N2UyYjNjOGI3N2ExYzg0MzZlMGEyNzc5NCBhc3QtYnJhbmNoCiszNDc4MSBmMGExOTdkZDIxMmQ1Mzk0NDJiYzdhNjAwNmMwNmNkY2U2ODcwOGNlIGFzdC1icmFuY2gKKzM0NzgyIGYxNDMzZDNjNjQ0N2Q3N2M2Njk2M2FlOWYyZWZhYmI4MTVhMzc1NTIgYXN0LWJyYW5jaAorMzQ3ODMgYjBiY2NiOWZiNzBhOGIzYTVjNjNmOGRkZmQxMWM1MzdlMTE3YzIzMyBhc3QtYnJhbmNoCiszNDc4NCA2NGRkZGEyNTU5NTI0YWQ4MTNhYzEzNmIzYTI5YzVlYmRlMDdiNDA3IGxlZ2FjeS10cnVuaworMzQ3ODUgNGUzMWMyNjFhNjY4OTVjNGQ0MDY2YjkxMTA2ZDM2YTI4YmQ3NWZmNiBsZWdhY3ktdHJ1bmsKKzM0Nzg2IDBhYzk4ODc4Y2MzMmI1Yzg3YzdhMjI5OTVhMDcyN2IzMzE0NWRiYmUgbGVnYWN5LXRydW5rCiszNDc4NyBlMDVmZTE3NzU1MjA2NGUzMTk4NjFkMDc4NjA2YTVjNmFjOTgxMzdkIGxlZ2FjeS10cnVuaworMzQ3ODggZWI1MDlmYzQ3ZjA3NTA4NjhhZjljZDYxMTA1NDJkZDE4Y2M1MTJkMyBsZWdhY3ktdHJ1bmsKKzM0Nzg5IDQxZjRjZTZjNGU1MDRlMzI0MWQyYzJkYTYyNzFlZWY5ZTlhZmU0ODkgbGVnYWN5LXRydW5rCiszNDc5MCBhMTAyZGE5MTY0MGUzNDZhOWY5ZGZjODJmNTliNzkwMDQzMmQzY2E0IGxlZ2FjeS10cnVuaworMzQ3OTEgMGVjNGQzZWJkNDMzN2YxZDhlNzk4ZjBlOWY3MzQzYWY5MjkzM2E4NSBsZWdhY3ktdHJ1bmsKKzM0NzkyIDkzMTRiZTBiYmI2NDAxOWI4ZDk3YmM1OTRlNjgxMDZiY2ZjMDZjZDggcmVsZWFzZTIzLW1haW50CiszNDc5MyA1YTA2NThjMDA4NzlhYTM1ZjMzYzhhNDE4OGIzZDRjNWEyOTM1YjNhIHJlbGVhc2UyMy1tYWludAorMzQ3OTQgNzgzNjk0ZDRkNGNmMGNmZGRiZDI0NWJlMzBiOGQ1N2FhODdiNWFjOSByZWxlYXNlMjMtbWFpbnQKKzM0Nzk1IGQ0NTE0Y2UxNGI5NjdmN2Q5Njc5OGEzMWY1OGUyNWNiNjYzYTZlMTkgcmVsZWFzZTIzLW1haW50CiszNDc5NiBkYTE0ZDgwNmU4OWM3NTJmNmE3Mjk0YTNlNGE2OWJiMDc0ZWM0NjcwIHJlbGVhc2UyMy1tYWludAorMzQ3OTcgZGUyODU1YjNmNDEzNmJmMWNhMGI3N2IwMjg4NWI3ZDU0YzhiYTFlOSBsZWdhY3ktdHJ1bmsKKzM0Nzk4IDQ4Njk1YzgzOWQ5OGIzYTI3MmM2MDkzMTA0OTVlYTExZTYyYTg0NmEgcmVsZWFzZTIzLW1haW50CiszNDc5OSA1YjUxNWNjOTBiNWE0M2VmZTQyZjQ2MzEyYjZiYWUxMGVmMDA5M2M0IGxlZ2FjeS10cnVuaworMzQ4MDAgYTUyZDc0OTQ4ZGQ0ZjRlM2ZiOGVmMTEyYmJmNTQyZWNkMWRmMjQ5YiByZWxlYXNlMjMtbWFpbnQKKzM0ODAxIDJhNmZjNGQyNjFmOGU2OGRhYjk0OGE3ZDY2NWZkYTUyZDRmYWM4ODEgbGVnYWN5LXRydW5rCiszNDgwMiAyYmE5YTg2OTY1NjAyZDhlMDU0ZTBmMmQxYzg0NDJmYTJkYzMwYmIyIGxlZ2FjeS10cnVuaworMzQ4MDMgNjIyOTkxY2MxZTNjNThiNTFjNTUyMWEzMmE4MTljZDllMWJlYWQ4OSBsZWdhY3ktdHJ1bmsKKzM0ODA0IDM2MDYyZDY0NWZiYjk1NjM1ZWJlYjUwMTU4MjdmMmFlNmQ3Y2ZkN2IgbGVnYWN5LXRydW5rCiszNDgwNSA2ZWI0NzNkNjgwNDI0YzU0NDg2ZjljMTNmZTM3ODM0ZjZmMzQ5ZDM5IHJlbGVhc2UyMy1tYWludAorMzQ4MDYgMWYwOTgxOWY1MDhiMjVkNDU0Y2I3ZmVmYWExODMwYjNkYTNjNzM1NyBsZWdhY3ktdHJ1bmsKKzM0ODA3IGQwMGYwMTIwNzgzN2I2NzIyNWY0ZTlhYmI4Mjk4OGVhODQyNGM4ODIgcmVsZWFzZTIzLW1haW50CiszNDgwOCBlMzAyNWZlNzBkOGJkMDRmNzIyZTczNzkyZjg4YzRkZDZkZWY3OGY3IGxlZ2FjeS10cnVuaworMzQ4MDkgYTJmNmM2YTY3ZjI0MTQwOTljYzcwMTkzYmI2MDM4Zjc1YjYwNzZmMiBsZWdhY3ktdHJ1bmsKKzM0ODEwIGIyNGQ2YTcxYjAxZjEyNjU5OGYwNmVmMDQ3ODIyMTBiOWU2NjMzYjUgbGVnYWN5LXRydW5rCiszNDgxMSA4ZGQxNTkyNzk1NzZhNTc0N2UzZjJjZTdkNTdkODFiOGVkOTllYWFhIGxlZ2FjeS10cnVuaworMzQ4MTIgODcwNjE1YmZhZWRmYjllNGIyZTljM2ZkNTk0NmJjOWJmOGM4Y2U0ZiBsZWdhY3ktdHJ1bmsKKzM0ODEzIDJmNzk2Yzc1OTZlY2EyM2YxOGMxOTRkOGE2YzEwN2Q5M2Y2Y2FkYmMgbGVnYWN5LXRydW5rCiszNDgxNCAwYTdmMWE1M2M3NzNiNGFjMWY1YzhkNTJiMjM3NWExZTU0NDg4OGQzIGxlZ2FjeS10cnVuaworMzQ4MTUgMzg2MWViNDY3YzI5ZTA3YmE2YjM2Njk3NjBkZGY3MmNiMzNiNDQ4YyBsZWdhY3ktdHJ1bmsKKzM0ODE2IGRlMzkxZTlkNzBlYTE2N2YxZTgxYmE1N2EwYWIzYzY4Njc3MzFhZDAgbGVnYWN5LXRydW5rCiszNDgxNyBmMmU3NjQ2Zjc3NjMxNjFiYmRkZGYyNzZkNzQ3ZjU2ZmY2ZjRmMzEwIGxlZ2FjeS10cnVuaworMzQ4MTggOWNhOWQzMThhZjc4YjdkNWY4M2Y5NTYzN2VhMTlkOWJiMmRkNjIyNyBsZWdhY3ktdHJ1bmsKKzM0ODE5IDMwMzgyYWIwNmNkMWMyYzBiOTA0MjYzZDBmNDA0NDBjN2ExZjg2NjggcmVsZWFzZTIzLW1haW50CiszNDgyMCBkMzVmODc5OWNmMTIyMjA1ZGY1Zjg0NjZhM2ViMzIwNjJiNzg2Y2I2IGxlZ2FjeS10cnVuaworMzQ4MjEgMDNmNDNkNjE5ZmY0YjhhNTUwYTZkMWVjMzM4NmFhNWY3YjhiODI5NyBsZWdhY3ktdHJ1bmsKKzM0ODIyIGJkZjYwYmVhNDE3N2E3ODA0MmMwZjA5MjMxODM4YzQ0YzJkYzdhOTMgcmVsZWFzZTIzLW1haW50CiszNDgyMyA3NTkyMTRmMWVjNjkxMDcxNDFmOWEwMDQyNDk2ZmM2MmRlYjVjNzU4IHJlbGVhc2UyMy1tYWludAorMzQ4MjQgMTEzZWFmZTg4NDhmZjU4NzE0MWMzN2EyYjVhZGYxMDdjNDJlMWVmZiByZWxlYXNlMjMtbWFpbnQKKzM0ODI1IDYxYjcwZWI4ZDE2MGIzMTk1MTgwNGYzYjVjNjQ2NWM2OTRlOTgwNTggcmVsZWFzZTIzLW1haW50CiszNDgyNiA4NmNmMmI4MTBmM2EyYmU3N2I0MDg4ZTFhOTY3M2ExZjA2ZDFmNmM2IGxlZ2FjeS10cnVuaworMzQ4MjcgYzIzYTg2MjE1ZDlmN2UxNzUwZjliNWFlNGRlZDRlODYwMDdiZWUyMiByZWxlYXNlMjMtbWFpbnQKKzM0ODI4IDIwMTRmOWM2MzZmYmU3NTZhOTQ0YWUzN2Q4MDRiNDFhMDZhNjQ3OGEgcmVsZWFzZTIzLW1haW50CiszNDgyOSAwYTYzZDRkMDE1Y2Y5NTBmMTg4ZmJjZGY5MWJhNTU0NTdkNDY4YWNjIHJlbGVhc2UyMy1tYWludAorMzQ4MzAgOTE1YWEwZTY5NDg1OTg5ZTc3ZTk0NjA4OTRiMGM3MzdjZGFkNmZlNyByZWxlYXNlMjMtbWFpbnQKKzM0ODMxIGEwOTZkN2I4ZWM4YTI5ZTEyMDM2YTU4ZTU3MmI2NmM3Nzk0ZDRhMWQgcmVsZWFzZTIzLW1haW50CiszNDgzMiA5NzJlN2ZhMWQ1OTg2YTViMTc3MTY2ZDNhMTVhODkxZGU2ZTlkYWE5IHJlbGVhc2UyMy1tYWludAorMzQ4MzMgNDVjYjI4NGI4NGQzYWIyNjVhYTZmMjQ0N2E5ZTdmYWM2ZDU0YmEyMCByZWxlYXNlMjMtbWFpbnQKKzM0ODM0IGQ3NjMwY2U3YWE5ZmQ1YjEyMzVhNjUyZjM5OWNhN2Y5M2YwYTVhZDAgbGVnYWN5LXRydW5rCiszNDgzNSA5ZDYyNjY4OGNhN2JjZWIwNjJiYWYxYzRjYWUxYjlhMTRmNjUxNjVlIHJlbGVhc2UyMy1tYWludAorMzQ4MzYgNzQwM2UzOGEyZjEwN2M5YTlhODI0ZWU2NzdjMGFhNzkzNDUzYzVjYSByZWxlYXNlMjMtbWFpbnQKKzM0ODM2IGQyMWQ0YmEyZjk3MzQ2N2QzMDc5NGEzZDJhYzQ5MzY1ODE4MGU1MDMgcmVsZWFzZTIzLW1haW50CiszNDgzOCA1NjYzNTE5Y2YwNmZmNDNmZDI0MmU0YzVmNWIzOTc1NGI2NGZhNzkyIHJlbGVhc2UyMy1tYWludAorMzQ4MzkgZTk2ZTM5Y2QyZDE0MmIxZmMzYjU4OTgxODg1NWMwOTRkZDhmMjU5YiBsZWdhY3ktdHJ1bmsKKzM0ODQwIGJhODg2YWUzMjJlYzE2OWZkZmQzZjFkYmQ0NGMwOWJiZTlkMjNhZjMgcmVsZWFzZTIzLW1haW50CiszNDg0MSA2MGU1ZDhiN2U5NjRlNmNhOTE0YmNmZTRiOGViZTA2MDI3ZDc2NDgxIGxlZ2FjeS10cnVuaworMzQ4NDIgODM1Yjc5ZWFjODEyY2U5MDhmM2I2MGZkZmEzNDhiNjE4Mzg5YmJkZCByZWxlYXNlMjMtbWFpbnQKKzM0ODQzIDhlODBmNTUxYjBlOTY4MWM0NWJjZjg1YzhiYjhkODgzMWE4ZTBiYTkgcmVsZWFzZTIzLW1haW50CiszNDg0NCAzOGJlY2NmNGEwYmJmNzc3MGYwZWQ1YjhiOWU0NTliYzgxN2EzZWVhIHJlbGVhc2UyMy1tYWludAorMzQ4NDUgYjc3ZmQ0NjllZTM1NDFmYThmN2JmOWQ4MGEwY2FiNWIxYTE1Y2RjNSByZWxlYXNlMjMtbWFpbnQKKzM0ODQ2IDY5ZGU1YWVlMWZiYjUxMGQxZDU2ZTRlYTFmYTBhZDE5NWY5ZDNjYjMgbGVnYWN5LXRydW5rCiszNDg0NyA3YzhkYzY0MDQyM2E1MTQ4ZTE3YjM0MTM3YTc2NWM0MTM2ZDY4ZDM1IHJlbGVhc2UyMy1tYWludAorMzQ4NDggNTM1MmE2ZWJhZDlhYzQwMDljMzBiYzlmZTg0NzFjYzIyMWFhYWIyNiBsZWdhY3ktdHJ1bmsKKzM0ODQ5IDE3ZTZlOTgyOWM3ZTUwYmYxNjI3Mjk5ZTc4MDM4NzIxNGQ1YTAwNDQgcmVsZWFzZTIzLW1haW50CiszNDg1MCBmMTA4ZGI1OWViNzZhMjZiN2ExNWE5NDI3NmMxMDdlNDA4ZTI5Yjg3IHJlbGVhc2UyMy1tYWludAorMzQ4NTEgYjAyOGZkNTQxOTQxOThhOWUzMTIzNDUzZGZiNWQyMTdjZGE4ZGIwNiByZWxlYXNlMjMtbWFpbnQKKzM0ODUyIDkzOTVjZDkyZDJjZDdlNWI2OTk2ZmMzYmFiNjk0NmQ0NWY3NmI0NWQgbGVnYWN5LXRydW5rCiszNDg1MyBiZTllZjliOTJkNjEzOGMwYjcwZmM3ZDAxOTQzMmU2YzM5YzlkOWU5IGxlZ2FjeS10cnVuaworMzQ4NTQgMjFhZWI5ODMyYzFkMzI4MDQyYzRmZjZjZDJkYTExN2M5M2U5ZTY4OCBsZWdhY3ktdHJ1bmsKKzM0ODU1IDQxNWVmNTUyMWE4YWZkODUyOThmMDM1YmJmNmIxNmMyZTAxNTc4NDIgbGVnYWN5LXRydW5rCiszNDg1NiBjOTUzZmRiNTFjZGQ3ZWY4ODEzYWIyMGI5NThkNWVkMGM3MGYwNjkwIGxlZ2FjeS10cnVuaworMzQ4NTcgYzZmMTY1MDRjOGMyZjVhZGU5NjM3OTA5N2UxYTljNjU3ZTg4OTQzMCBsZWdhY3ktdHJ1bmsKKzM0ODU4IDc1YjYzZTVmMDNmMjEyMTYyNTFiNDFkZDhjNDczZTQ5YzFkNThmOGQgbGVnYWN5LXRydW5rCiszNDg1OSA4OWQyNmUwM2M2NTMwMmIwMTVlYTM1MTg0YmZiMjM5ZDk0NjFhZTUwIGxlZ2FjeS10cnVuaworMzQ4NjAgZmRlNzRmYWRmNzgwYzlhODEzOWJjYzFmZWVmM2M2ODNjMmIxYmRkOCBsZWdhY3ktdHJ1bmsKKzM0ODYxIDdhYWQyNGNhZGRiNWQwYThmOTU5NmRkMmQ5MjM3NWNhZjIyMTc3NDAgbGVnYWN5LXRydW5rCiszNDg2MiA1MDg4YTgyMzQxMTdlY2RlMmM2NDQzMTJmM2JjNzcyOGVkMTc2MDJhIGxlZ2FjeS10cnVuaworMzQ4NjMgZWIxMjdlNDAxYzY0NDlkMzcwMTMwMWRkZmUxMWEyMTY1YWY3OWI0ZCBsZWdhY3ktdHJ1bmsKKzM0ODY0IDk3ZWJkMWIyZjQ2ODU1N2QwM2IzYWRhMjY4NDFlOTQ5N2VkNjU3NzIgbGVnYWN5LXRydW5rCiszNDg2NSBlOWYzYjgyMmNlMDJlYzk4NmNkZjUyOTQyMjA0NGNmYTVhNTQyOWMxIHJlbGVhc2UyMy1tYWludAorMzQ4NjYgOWU3NTA3NTMwMTBhZDgyY2JiYjZkMzJkMDFlYmQ3ZmE5MjAwMTkzNyByZWxlYXNlMjMtbWFpbnQKKzM0ODY3IDA1MmU0YzU3MjI2MTVlMWY0OTkzZjRiNTQzZTdkZDI1MDZmZDRjYTQgcmVsZWFzZTIzLW1haW50CiszNDg2OCAwMTcwNDg1NjU5MzZiODMyYWI1YzQ5MTZiZjdmMmNjMWM0MmM2OThhIHJlbGVhc2UyMy1tYWludAorMzQ4NjkgZDM2MjI3M2Q0NjhiZDEzZTgxMzViN2Y5N2QxZjc5MDZiYTk2ZGFmMCBsZWdhY3ktdHJ1bmsKKzM0ODcwIDllZDc1MjU1OTQ3NzdlZTRmZDU0MDNkZmM0N2I5Mjk2Nzc3ZjhiMjAgbGVnYWN5LXRydW5rCiszNDg3MSAzODFhZTMyNmVlNjU1NWU3NGRmNzQ0N2ZiMGI5NzI5ODkyNWRiMjJjIHJlbGVhc2UyMy1tYWludAorMzQ4NzIgZGNmNWJlMGYwYTFmOWFhMDU4MzQ5NTVmZDE4NWEwMjk2NjliYzZmNiByZWxlYXNlMjMtbWFpbnQKKzM0ODczIDg1MThjNDY4MTc3MWY3MDQwNDJmYjg4MzlkNjUwYTYyNjY2MjYyMTYgbGVnYWN5LXRydW5rCiszNDg3NCA5NGMxYmQ3YTU1YWVmNTQ0OGZjNjk1ZjI4YzUzZjFlNTY4MGQ3Mzg0IHJlbGVhc2UyMy1tYWludAorMzQ4NzUgNjBiYzExZTMwMDY4MmJhNGFkMDkxZTRkNGE0OTA0YzJiM2U4OTEyNCBsZWdhY3ktdHJ1bmsKKzM0ODc2IDYxNGFkNTM4OGM5ZGUwMDAzOGE1NDE3MzlhMWRkYTU5NjA0ZmFmMjAgbGVnYWN5LXRydW5rCiszNDg3NyBkMWQyOGNjYTQyYzE5N2YxZWI3N2M5MDU1YWQyYTdjMjM3YzFiNzEyIHJlbGVhc2UyMy1tYWludAorMzQ4NzggMWRkYzg2YjU4MDQwMDYyYmM1Y2Q5ZjdjYWRlMGJhYWUxYjRjYThiMiBsZWdhY3ktdHJ1bmsKKzM0ODc5IDI2ZWZhOGE1MzkyNTk0M2IzZmJiZmJiNDM0MGI5Yzc5MGJiOGE3MDggbGVnYWN5LXRydW5rCiszNDg4MCA5NGRmZjRhMDJjYTMwNjc3YjZjZDAzOGRmNTMzZWI1ZDhmMjFmOGRmIGxlZ2FjeS10cnVuaworMzQ4ODEgOWY4YzA1NTg3MjEzZTFkODg1MTVjMGY1YTNmNTMwMTVhYzA1NTgyMiByZWxlYXNlMjMtbWFpbnQKKzM0ODgyIDRlYjVmMGNhYjA5ZTRhZDFlNjVjOWQxNzFkNDNiNzUwMzBhZGY4NzkgbGVnYWN5LXRydW5rCiszNDg4MyBlMWYxZmI3NDQ1MWI5YzBkMDE2NjYxMWVlNjg2NWQ5MTRmZjM0MzQzIGxlZ2FjeS10cnVuaworMzQ4ODQgMmEwNzgyY2MxNTFmODQwNDE3Y2YxNTkyYjg3NjliN2Y2ZWZlNDg1YSBsZWdhY3ktdHJ1bmsKKzM0ODg1IDRhMTJkOTFhZjhjM2Y5NWYxNDg3ODk2YWEzMDdiMTE0NGYzYjEyMTMgbGVnYWN5LXRydW5rCiszNDg4NiBjNzI3YWQwMDNmZGJhY2QyYmU4ZjRkYzQwYTM5Njk2MWRkYjc4NzE4IGxlZ2FjeS10cnVuaworMzQ4ODcgMDM2NzM3NzMzMDg0NDdkYzkzNmRlNjk5ZTVlOGJiYTIzNThkOWVlZSBsZWdhY3ktdHJ1bmsKKzM0ODg4IGFhYjM2MTJmMmMzNTJiMGExYTQ5MDgxZTBiMjZiYTBjOTAzZTYwZTggbGVnYWN5LXRydW5rCiszNDg4OSA4ODVkYmYxNTc4YmNiMDZiYzVhZTEyM2FkMjZmZTAyNmU2MzFkOWQ4IGxlZ2FjeS10cnVuaworMzQ4OTAgMDYzYjdkMjI1ZThhYjg0NzZiNmQyN2YzNzgzYTRiYjUwZDVkM2U5OCBsZWdhY3ktdHJ1bmsKKzM0ODkxIDQ1Y2FiZTljZDljOTI2MWYyNzdmYjc4OGYxODYwZmM3NzVlZWZiMTcgbGVnYWN5LXRydW5rCiszNDg5MiA0ODcwMmYxOWNjZmIzZWIwYmY1NGI3ZDZkOWFlM2RiMzMyOTEzZGE1IGxlZ2FjeS10cnVuaworMzQ4OTMgNGNjMTY2MTViMDcyNDVmYTQ3MTVlODA2NzNjNDdlNzg5OWIyMTUzOSByZWxlYXNlMjMtbWFpbnQKKzM0ODk0IGMyMmVlYzgwNzIyNDc0MmQzYjEzODM3OGNjY2MzOGFlYmM4NDUwYjQgbGVnYWN5LXRydW5rCiszNDg5NSBjYThhNjk5NjlmMDM4ZjUwNjE2MjA1YjlhZTUzODMyMzU1NTljZDU0IGxlZ2FjeS10cnVuaworMzQ4OTYgZTRmYjYxNjQxNThjNzg0ZDkzZGM3OGUzMjQ1MjYyYTc2MmViZDUyZiBsZWdhY3ktdHJ1bmsKKzM0ODk3IGM5YmJjOTY3YWM5ZjYwOWY5MWQ2ODc1NzZmN2I2YWUzMWViNDVkZWMgbGVnYWN5LXRydW5rCiszNDg5OCA4OGU4MGEwNDMyOGEzODQ3Y2UwZmE5NWQ1Yjk4YzZlNjIzMzEyMjc2IGxlZ2FjeS10cnVuaworMzQ4OTkgNWNjMWE0MDBhMDJjMzExYTRmMWM1OTg5NzhjZGY1ZjNlYWYzN2MzNCBsZWdhY3ktdHJ1bmsKKzM0OTAwIDM4MTE0MGU3ZTlkNzcxNWNmZTcxZmY3YjQ5ZjUxN2NmYmQ3ZTQyMzUgbGVnYWN5LXRydW5rCiszNDkwMSBlZWFhMzY2MDY3MWNiNmFkNjk2YzAzYmJjMzhiMjhjMzk1MWU4YTVlIGxlZ2FjeS10cnVuaworMzQ5MDIgMWJiYzIwODVmMjEzYjBiYTY0MTI4NWI5ZjFhNmE1NWQxNmZhMzBkZiBsZWdhY3ktdHJ1bmsKKzM0OTAzIDIxYTI3YzIxYTJjNTdhZTNiNjcwZjFmNzkxNTRkOTY4NmM5ZDUwNDkgbGVnYWN5LXRydW5rCiszNDkwNCA0OTQyYTBiNjNjOGNjZjFmYzVkMTFlN2NiYzk3YjZjMTdjMGNlNjIwIGxlZ2FjeS10cnVuaworMzQ5MDUgZTVkOTdhYjcxMGEyMjVkM2U0Y2YxNmI4Y2ZmOWUzY2RlNzBjOTY1ZiBsZWdhY3ktdHJ1bmsKKzM0OTA2IGM5OTYyMGNkOWM2NTUyOTU5ZGZjZDg2NDk1OWYwYzQ4NDUzOTU3NWYgbGVnYWN5LXRydW5rCiszNDkwNyAxMGM0Y2MzNTJkMTNhNWJlNDgyNjA4ZjNlMTU5ZmJlN2NkMjJkMTI3IGxlZ2FjeS10cnVuaworMzQ5MDggNDdlYWEzOGIyOWNiZjY1NTc5ZTBiYzllNzk2NTEzOWI1MGVmOGE2OCBsZWdhY3ktdHJ1bmsKKzM0OTA5IDc0YzE1NDcwOGIwY2ExOWNhZGY3NjVjMDUxMTg4M2I2NWJjOWM2MDMgbGVnYWN5LXRydW5rCiszNDkxMCBmMjg5ODIwNjBiMjBjMDg2M2EwNTQ5ZmU0ZjE1YTJlODc5OTg1M2I4IGxlZ2FjeS10cnVuaworMzQ5MTEgZjJlMGQ2MzBjZjM5ZmU3NGJiNzVlMmZlMmU0ZWNkNmExMzZmNTM1MCBsZWdhY3ktdHJ1bmsKKzM0OTEyIGIyYTBjZDJlOWQ1NTExMjhkM2RiOGFmYjNkNTVjYTFjMDZlYjJkODggbGVnYWN5LXRydW5rCiszNDkxMyBjODVhOWVjNTc5NmNkMDljOTZhYjYxZjUzY2FhNTIxODYwZGI0ZGEzIGxlZ2FjeS10cnVuaworMzQ5MTQgMjkyYWQxMzVjZWYxNDYyMGFiNGI4ZjUwOGNjMGNhMjYyNmY3OWI3NyBsZWdhY3ktdHJ1bmsKKzM0OTE1IGU0NjgyYWY3YWVhOWVjNTJkMzIyOTg2ZTJmZjlmODM0YmYwYTM2OWQgbGVnYWN5LXRydW5rCiszNDkxNiAyMmYwOWFiMGJhZTk0NmJiYWViYmU5Mzg5MmMzNGY2MTZmM2E3M2E1IGxlZ2FjeS10cnVuaworMzQ5MTcgMWFkMGRmODdlZDZjMmU1MDA4ODI1NDA1MDM1OWNhZjIwN2NkMzQ3MCByZWxlYXNlMjMtbWFpbnQKKzM0OTE4IDdhNmQwODE0YjU2MWVkMWFkZmVmZTE5ODdjOWNkMDRjNjdiZjgyODYgcmVsZWFzZTIzLW1haW50CiszNDkxOSAyMjliYjlmMmU5NmYzZmUxNWExMWE1MWUzYmU0NTVhYTU0N2NhNzFhIHJlbGVhc2UyMy1tYWludAorMzQ5MjAgZDZjZWEyMjhmYjI1OWJhOTIzNTIwYmJmMzQyOTNiNjlkYmJlZmRlMSByZWxlYXNlMjMtbWFpbnQKKzM0OTIxIDY4NDU2OTczNTNhMzE1MjVhOGEwMjUxODBlZTgxNjRmMjUzYWE2MTAgcmVsZWFzZTIzLW1haW50CiszNDkyMiBkOTgxMTc1OWU3ZGViZGUwMWEyYTE4NGZjMThiOTZmZjVkNjFlMDcxIGxlZ2FjeS10cnVuaworMzQ5MjMgNTA0OTQzYzg5MTkzZGEwZGMxM2ZjMDdmNjYwZGJkZjk4MWY0NTI5ZiBsZWdhY3ktdHJ1bmsKKzM0OTI0IDYzY2M5ZmNkMjg1ZTRiM2ZhNTQxMDljZjNiNGE5NmMwYzcyOTU1YmEgbGVnYWN5LXRydW5rCiszNDkyNSBlNTA2NThiM2RmMGU3MTJiNGY5Njc5NzEzMzhiODdkN2RjNzdlODI3IGxlZ2FjeS10cnVuaworMzQ5MjYgMDJlYmUzNDU2NTk1MzE4MTNjYmQ2OTY4ZGQyZjhlZTA2ZTU5MGUyZSBsZWdhY3ktdHJ1bmsKKzM0OTI3IGJmYTAzNjlkNjc2MGIyMjhiNDM5YWEyODE1Y2E1YTMwYmMwNTI5ZDggbGVnYWN5LXRydW5rCiszNDkyOCBkZDc4OTA3MmQ5NDkwMzBlNTZkNTMyN2M1NTZlZWQwYzhiZWJiMGY1IHJlbGVhc2UyMy1tYWludAorMzQ5MjkgY2JiZmQ0MTI3ZTI0NzU0ZTZjNTdmYzJjZjc2NjVlZGExMGY2YWQxMiBsZWdhY3ktdHJ1bmsKKzM0OTMwIDM3NzFmZjk5ZDVmMjhhZDAxMmEyMjAyZTczODdlOTJkMzRmYWQ2ZGEgbGVnYWN5LXRydW5rCiszNDkzMSBmMzg4ZTgzZjhlNDMzOGUxNzVmMjc1M2VjOGVlNWM5MTAzZmQ3ZDkyIGxlZ2FjeS10cnVuaworMzQ5MzIgOTQ5M2RkMjIyZmJiOWIwODZiMDNlOTg5YmJiNWFhNjA1NDczYjEzZiBsZWdhY3ktdHJ1bmsKKzM0OTMzIDVlOTc3NTdkODdlNzMwMzdmMDc2MmMzZDFhODM4NmIwYTlmNmViYzAgbGVnYWN5LXRydW5rCiszNDkzNCBjMDZiNTcwYWRmMTIyYmJlOGMyMTA4NWUxNjE5OTdjYzM2MjRkMTczIGxlZ2FjeS10cnVuaworMzQ5MzUgNGQwNzU2YTEzZjZiOWU0YzhlZGI3MWI2MjdkZWE0YTM5N2E0MWRlNSBsZWdhY3ktdHJ1bmsKKzM0OTM2IDViMDM1ZTZlNDRkYzY4YWVhY2RkNmUxZDA2OTg1MjI4NzFhNzBiN2UgbGVnYWN5LXRydW5rCiszNDkzNyAzNjA3ZjIzMzUyYjk4NTk4YjY1ODBiZTBkNmQyOTQ3YmVlNDE4OWI4IGxlZ2FjeS10cnVuaworMzQ5MzggZGVmMjc1Mjc3MjgwNjFhNDE5ZDBlODk4YTdjNzlhODhjNzQzNDg1NCByZWxlYXNlMjMtbWFpbnQKKzM0OTM5IDg5NzY3YzE4YzYxNjA4YjZlYjlkZjRmYmMwMjNmOTFiOWIwN2U1ZTQgcmVsZWFzZTIzLW1haW50CiszNDk0MCA4OGUwMDAyMWFjZmY2ZWI4YmNmZWJhMDgxYWIzNjA2M2JjOTM1YTIwIGxlZ2FjeS10cnVuaworMzQ5NDEgOTcwNjJkMzY1OGZlN2M3MDc5MmJjMjRhZmZiZjg3YzY2NDU2MTI4OSBsZWdhY3ktdHJ1bmsKKzM0OTQyIDBmNzA5Y2VhNDNjNzE2ZjE4OThlNjViOTMyOTc2MWJiMWI0ODkzZjMgcmVsZWFzZTIzLW1haW50CiszNDk0MyBlYTNjNmY2ZTQ2NzkxYzZmYjJlNzk2ZDcyYzBmYjBiMTZlMDZmODY3IHJlbGVhc2UyMy1tYWludAorMzQ5NDQgZWRlNTE4YjBiOWRhNzlmODU0MmU4ZWVhYWFmYzNlODJkMTRmZDRlNSByZWxlYXNlMjMtbWFpbnQKKzM0OTQ1IGMyOTY3Y2U3YzAxZTQ1MjY4NDYyYTA1ZTc5ZWYzMDQwZjJlOGU0Y2QgcmVsZWFzZTIzLW1haW50CiszNDk0NiA5NTVjYjk2OTc3NjdmZTI5OTUxN2U1ZjE3ODRmNTVmNGUzMzU0NTU4IGxlZ2FjeS10cnVuaworMzQ5NDcgMWE5ODhhMDZiZDMzNmI3NjU2NmUwNmQ5NDFmNDgzMGQ0Y2Q1ZmZjZSByZWxlYXNlMjMtbWFpbnQKKzM0OTQ4IGI4MGEzYjgyZGNmOWUyZTQyN2Q1ZmQ4NDMwMzlkZGQxZmU4Njk2NTYgcmVsZWFzZTIzLW1haW50CiszNDk0OSAzOTUwODJkYzIxOTQyOTg5MWRkNzE2NDU4ZmFkMThjYzg1MWYyY2MxIGxlZ2FjeS10cnVuaworMzQ5NTAgNjQxNjZlYWY2MjEyNGIwMTBjY2ZlOTI0ZmJmYzllNTA2YmNjYTIzMiByZWxlYXNlMjMtbWFpbnQKKzM0OTUxIGE1OTIyYjlkMDM3OWEwNzY4NTA0M2MyMTM5M2YwOGVlMDRmNGJiYjMgbGVnYWN5LXRydW5rCiszNDk1MiAzODg1NWZkYTQyOGE2OGQ2MTI5NzQyMjJiYTQ1N2E2ZDcxYTI4ZDk0IGxlZ2FjeS10cnVuaworMzQ5NTMgMmIwYzc4NWFiMzBhNmUyMjdkOWQwNTYwYWY0OWFkNmIyMzU5ZDkyMSByZWxlYXNlMjMtbWFpbnQKKzM0OTU0IDY3YjlkZTYyZWNiODY5Mjc3MDFjMWZjMzMzMDcwOTk3OWRkOWE1MWYgcmVsZWFzZTIzLW1haW50CiszNDk1NSA5YTNhMTZiODJkY2JiZTRhMGJhODI2MmE1ZTZlYTBhZDNmYjVjMTMxIHJlbGVhc2UyMy1tYWludAorMzQ5NTYgZmI3NTllMjgxYTJmMjMwMDg1MjQxZDRhZWIzNjQ3YjMzOGY4OGRkYSByZWxlYXNlMjMtbWFpbnQKKzM0OTU3IGQwOTllZDkzMjk5M2Y5M2Q5MTg1YTE2NTJhNjA0YWU4ZTlkNjkxNWIgcmVsZWFzZTIzLW1haW50CiszNDk1OCA1ZGM1NzU3YjExOGFiZjNjY2Y2N2E1NzliYmVmN2JmMGVlYTViMWIyIHJlbGVhc2UyMy1tYWludAorMzQ5NTkgYjIyMGI1OTBlMmVhOGVhNzQwY2M3YmY5ZjMxY2JhN2Q1MmFiMDVlMSBsZWdhY3ktdHJ1bmsKKzM0OTYwIGFjYmM3NTYzYThlN2VkZjczNWM2ZjQ2ODMwOGY0NzFjNGQ2MDI2NzggbGVnYWN5LXRydW5rCiszNDk2MSBhNmYzNGZiYTkzNzA2OTg3YzdhYTkwYmU3N2FjMDRhMDQ0ZDU5MWUzIGxlZ2FjeS10cnVuaworMzQ5NjIgNGVkZjIwMGE4MTE4NWE0N2ZiNzQ2MWY0M2VjOWJjNDM2N2FlNzZiYiBsZWdhY3ktdHJ1bmsKKzM0OTYzIGYwYWUzMTNhMmFjODY0NzJkNDRiMDg2NGI4ZDFhNThhN2E1M2IwZmUgcmVsZWFzZTIzLW1haW50CiszNDk2NCAzYzRjMDg3NDk0ZTBjYjg4NDE5MDQyODIwNjlhOGIyZmU2NGUxNjM0IHJlbGVhc2UyMy1tYWludAorMzQ5NjQgYThmMTI4NmYyMTcxMjljZGI1M2UzMjBlZTEyNWQyYzJjODBlMTM3NyByZWxlYXNlMjMtbWFpbnQKKzM0OTY2IDI4ZWIwMDQ2Y2U4YTc2M2E4ZDNhZGRlZmIzZGFmM2I0YWZjMTc0ZmMgbGVnYWN5LXRydW5rCiszNDk2NyBkZjhlODc5YzhkNzZkNTBjZWRkZjEyY2JjMWRlNzc2OGIyOWNmNGJkIHJlbGVhc2UyMy1tYWludAorMzQ5NjggOWM2YTUxZDg3OTMwMjk0NDY2ZmVhODY2ZWMyMzljY2IzZjBiZDY4OSByZWxlYXNlMjMtbWFpbnQKKzM0OTY5IDFjYjg3ZGFkMjYzZDc3ZGQ0MGMyY2U0ZTk4NjRjZGQ5MTk1ZDljZGMgbGVnYWN5LXRydW5rCiszNDk3MCA4ZWEzYTgyZjkxM2Y2Y2EzYzA5Mjc1YjRiNWY5NDM1OGE1MTA1M2ZhIGxlZ2FjeS10cnVuaworMzQ5NzEgY2UxNjViZThjNmI4OTg2YmQxZjEyNWUxZjRkMjhkYjdlYzFlMmU2OSBsZWdhY3ktdHJ1bmsKKzM0OTcyIDM1M2ExNjAzM2Y2YTRlZDY5NTg5MGU1MTk2ZTk1YzI3MWI5MWQyNzcgbGVnYWN5LXRydW5rCiszNDk3MyAzNTM5M2E5MmFjZDFkMzcxMTM0MjMyMTU1MWFkNzg0MmVlZmIzNmQ1IGxlZ2FjeS10cnVuaworMzQ5NzQgZGZkMDExNGNmOWVjZTdjNjIwZDQxMmY3NjYzNWRhZDI3M2JmY2I1MyBsZWdhY3ktdHJ1bmsKKzM0OTc1IGUxMThlNGU4ZTIyNDhlNGQ2NWIzZDczYmU1OGE5MWU1NzQyYTY2ZTggbGVnYWN5LXRydW5rCiszNDk3NiA4OTIxMTZhODg2ZTAwNTFhOGQzMmFmYzNhMjMzMmQ2YTAzYTRiOTJjIGxlZ2FjeS10cnVuaworMzQ5NzcgYzE0MDIxNzZlMWE2NTViMjM1ZjA1YzlkMDMzMTVmYTA5NDE5Mzk1NiBsZWdhY3ktdHJ1bmsKKzM0OTc4IGY2MDY0ZjhjMTQ2MDRlM2NiZjc4MzNlOTExNTZjOTMwYTM4NTAxYWMgbGVnYWN5LXRydW5rCiszNDk3OSBhODA3NzI2ZGY0YjdmOTU0ZGRlZGIxZjNhZjY2NmZiNWE1ZjQxY2U0IGxlZ2FjeS10cnVuaworMzQ5ODAgNTUyYTUzNTVkOGE4ZjYzNWQxN2EyODY1N2ViNzM3M2VmMWU2ZjU0NyByZWxlYXNlMjMtbWFpbnQKKzM0OTgxIDcwNmM5NmUxNTFhMDg5ZjI0OGYwZjI3Y2ZlNmRlZWFjOTAzMjQ3NTkgbGVnYWN5LXRydW5rCiszNDk4MiAyYThmNWViOGQ4M2UxMzAyZDU0YzVhYmYzNjZhM2ZlMDJiMWQwZmY1IGxlZ2FjeS10cnVuaworMzQ5ODMgYmU4ODJhOWEzZDViNTIyMGRkY2UwMjNhYjAxMTMwNDcwZmVhNTc1YyBsZWdhY3ktdHJ1bmsKKzM0OTg0IDkxYjU5ZjJmZWU3YzFmMTE2ZWEzNjRlYzZkMTJkZTcyMjYzNWQyZTYgbGVnYWN5LXRydW5rCiszNDk4NSA0NzEyOTE1MmNiNzAxMGE3Y2I2Njc1NDcwZTQ5MTEwNTFlMTI3N2QzIGxlZ2FjeS10cnVuaworMzQ5ODYgZWU1MzI4MDU0NmNlN2QzMzQ5ZjkzMTY4NGJlMzFkY2E0NTk0ZDczNyBsZWdhY3ktdHJ1bmsKKzM0OTg3IDFlMTZjYjhiMDIyMTllNjM2OWFkOGFjY2ZiNTM0YzQ3NDIxZmMzNTUgcmVsZWFzZTIyLW1haW50CiszNDk4OCBjYzdmMjlhYzJlOTgxNjQxZmE2ODc5YTA4MTc0ZWY3ZjljMDk0NTI3IGxlZ2FjeS10cnVuaworMzQ5ODkgOTA1NjBhOWNmM2U4YjlhMWY3MGY1MjNlYzUzNmFkMjg5NDU5OWQ2YSBsZWdhY3ktdHJ1bmsKKzM0OTkwIDBiZTkyNWQxNmUyOTNmZGZmMWQzYmRiMjY3OWY2NDdkMTU2YTY5YjQgbGVnYWN5LXRydW5rCiszNDk5MSA1M2FlMWMzZDRhN2MxODU2NWE5ODQ0NDQyZGQyN2ZjZWE0OTkwMDAzIGxlZ2FjeS10cnVuaworMzQ5OTIgMGZmYjYyNmQ3ODg4MWZlNDI0MTk3NjkyNTBmZWVjYTlhOTk0N2JhNCBsZWdhY3ktdHJ1bmsKKzM0OTkzIGE4ZTNiYjIzZjVhOGI3YzYyMGM1YjdlYTJiMWZjMmMzMjYxOTE3ZGYgbGVnYWN5LXRydW5rCiszNDk5NCBlMjZmZGE5ZGU2N2YyODk0NDg0MWYyMDYwZmJkNjJjYmNkYmIyNmI1IGxlZ2FjeS10cnVuaworMzQ5OTUgN2FiMDgwYmJkNjBhNjg1YzMxN2ZmN2Y3OTQxYTU0YTZhMWFkZDFkZSBhc3QtYnJhbmNoCiszNDk5NiA1NWQ0MmFhZWIwZWVmODY2MzU5Njk1MDM1NzVjOWRjY2JlOWE5YTcwIGFzdC1icmFuY2gKKzM0OTk3IDdjYzExMTI3MjczZTdlOTRjNzRiYTc5OGM2MTQ4OTVlMjZkZDQ1Y2EgYXN0LWJyYW5jaAorMzQ5OTggZWE2YjE5YTEwYTAxNjQwMjc4N2RiMDFhMDRjODM1ZjU1MTdjNmU4MCBsZWdhY3ktdHJ1bmsKKzM0OTk5IDI5YzFiN2I2ZmQ3ZTU3OTI1NzhlYmY5MjI1YWIzODU4MTczOWU0N2EgcmVsZWFzZTIzLW1haW50CiszNTAwMCAyNTUxOWQ2Yzk3Yjg2ZTczNjhmNTgwMmY4NTk1NzQ1MDEyYWU2MzFmIGxlZ2FjeS10cnVuaworMzUwMDEgODAyZDkzN2Y1OTZhYmViMDRiMzJlOTFmYzdlZmExZTE1NjZiZGJjOCBhc3QtYnJhbmNoCiszNTAwMiAxYWUyNjc5OTRmYTAzNTBhYTU4NjVjNTJhZjAxNGY3MTM3NzJmNmYzIGFzdC1icmFuY2gKKzM1MDAzIDZhMTE2OTVmZTY5OGViMmM4NDRhMjY3MWE2Yjc3ZTgyMGU1OWM1NjggYXN0LWJyYW5jaAorMzUwMDQgMDkwODE2YmQ4YmFjMDAxZDY1MmJjOWQ3YTljNDM2NGM0MzNmYjhiZCBhc3QtYnJhbmNoCiszNTAwNSAyNGQzNGFiNGVmNzU0OWMyYTdjMTUyNmEyZjJlNTMxZDU4YmVlNzQ0IGxlZ2FjeS10cnVuaworMzUwMDYgOGMxM2FiNjliYTRmMTQ3YTVjZGVmMDRkNWZkZjdjNjFhZTNiZmZmMCBsZWdhY3ktdHJ1bmsKKzM1MDA3IDFkYzI2NTllZDlmYzM5Y2NlZTQ5ZThiNDU4ZDY3MDJmMzU5OTYyZDkgbGVnYWN5LXRydW5rCiszNTAwOCA2YzNjM2I3NzFhYmNmYzllN2JkZmNkOGUyNTExYWNjZDQxYWYyNDY2IGxlZ2FjeS10cnVuaworMzUwMDkgMzFhMjgwOTAyNGY1MjFiNGE2NDA3ZDUxYzAyYTM3MWU1YmNiNjY1NCBsZWdhY3ktdHJ1bmsKKzM1MDEwIDU3NTUzMTU3YzE5NjZjMjc5YmQyM2ExMWQyOTg2MWI3OTEwYzIyYzkgbGVnYWN5LXRydW5rCiszNTAxMSAzMTU4ZGMxNTMyZmExNzNjZTFhMmMwOWU0NDc2YzM1NmRmMjk4MDZlIGxlZ2FjeS10cnVuaworMzUwMTIgYjg3ZDE5OThlZjAwMDRkM2U1NGQ2YjY5NTkyMzRlMmViMDQ0NjVkMiBsZWdhY3ktdHJ1bmsKKzM1MDEzIDhiNjJmNDE5NGE3ZTc5MzY5ODkwYmM1NjVlNGNmNGVlZmQ5Njk2MjQgbGVnYWN5LXRydW5rCiszNTAxNCBkNmQxZWZkY2M1ZmRkNDRiMjcwYTJkODU2M2IwYzY2Mzk4ZjZlNjU5IGxlZ2FjeS10cnVuaworMzUwMTUgMTM5YTZiNmMxNTBhNTlmYjg3ZjRkM2ExMmZmMmJmNzc3ZTM5ZTQ4NyBsZWdhY3ktdHJ1bmsKKzM1MDE2IDczNjY4NzVhM2NkNzA3Y2ZhZGY0ZjIxZDNkMjA1ZTQ4ZDQ0Nzk5YmIgbGVnYWN5LXRydW5rCiszNTAxNyAzODk0NjU0YjQ4NDhlMTc1NmUyMjFhODBhN2U4ZDY0OWE3MGRiYTc0IGxlZ2FjeS10cnVuaworMzUwMTggMWMwZTRhNTI2NzNhYTU4MzhkMmE3MjE3N2I0ZGU5N2EwMzFkZjA0OCBsZWdhY3ktdHJ1bmsKKzM1MDE5IGZkNGNiYmVhY2U3OWVjYzQxZWRkMzFiMzMxNmIyYTU3OTM1Nzc3ODkgbGVnYWN5LXRydW5rCiszNTAyMCAyY2Q5NjYyOWZlOGQxNDgwZDIxMzg3MDI1ZmM3ZmY2MjhhODliOTRjIGxlZ2FjeS10cnVuaworMzUwMjEgZWM0YTk5ZDE0Y2E0NjA0ZDI0MmY3NTk2NTM0MzRlN2NlNmIzODc0NSBsZWdhY3ktdHJ1bmsKKzM1MDIyIDg2OGNhY2UyMjE5ZmY3MmY4ZWU1Y2E2NmI5ZmVkMDBiYTVkNTQ1ZGMgbGVnYWN5LXRydW5rCiszNTAyMyA4ZTcwODkyYTlmMjVjYjc0MGIyYzg1MjRjZTIzNTAzNjAzZGY5YTVhIGxlZ2FjeS10cnVuaworMzUwMjQgYzg1NGExZjJkMTliODE0MjI3NGUwZGE3OGEwODBiNjhiOGNjZWU1YyBsZWdhY3ktdHJ1bmsKKzM1MDI1IDJjMWJhMjQxYjNjMDdhMjhjMDQ1NjUzMzcwN2Y5YWZiODU3NjM1ZTMgbGVnYWN5LXRydW5rCiszNTAyNiAyOGQwMGIxYTg0NDc2MDY0MGU1OGJkZGI3MjA3YmEyNTk4NGRhMWFjIGxlZ2FjeS10cnVuaworMzUwMjcgMjg0ZGIyYTVmNjIwYjA4NWZmMWE0MzE4YzhlMzIxMjIxZDk4MmYzYSBsZWdhY3ktdHJ1bmsKKzM1MDI4IDI2ZWNhNzA4YjZkZDY3NTI0MGYyMTgxNTkyMTg1YTAxOGU5ZjM3MWYgbGVnYWN5LXRydW5rCiszNTAyOSBhZDNmYWY1MmUxOWU0MDNhZGViMTAwMDJhMTBlMjNlMGIyOGE3ZDRkIGxlZ2FjeS10cnVuaworMzUwMzAgN2VhMDY3ZDc0OWEwMDY2MDRiNDMwY2UxOTU4M2I0MmI2MjhlOGMzZiBsZWdhY3ktdHJ1bmsKKzM1MDMxIGJmODQwMmE1NmZhNDI3YjI1NTFmMzEzZGUwMjMzYzM2MWJkYTM3NjEgbGVnYWN5LXRydW5rCiszNTAzMiA3NGMwNzNiYTZjM2IyYTQyMDEwYWY5ZjIxMDY5MzJhMGE4MDU0YTExIGFzdC1icmFuY2gKKzM1MDMzIGU0MDFjMGYyOWY1MGQ4OGJlNDBkNDI4Nzg5NzVmYTRiYTIxMDhhZTIgbGVnYWN5LXRydW5rCiszNTAzNCAzOGIyM2U2ZDRjNGI5NjRmZWNmNjZmNjI4OTUyZDU0OWI4Mzk2Mjc4IGFzdC1icmFuY2gKKzM1MDM1IGUzNDc0ZWQ4MGE1ZWY3YTAwNTNlZWMwMDcxZGQzMzUzMGEzNjMxNDAgbGVnYWN5LXRydW5rCiszNTAzNiA2ZDQxODgwMWYxNDJkZmYxOTMxZWU0YTQ1MmFkMjY4NjYzZDIzMWM0IHJlbGVhc2UyMy1tYWludAorMzUwMzcgNzQ0MzIzYjc2OGYwZDRhZTk5MTM1ZjA4YjhiNTQ2NWI2NWI2ZGFmNyBsZWdhY3ktdHJ1bmsKKzM1MDM4IGM1M2RhZjM1YmJjY2MwYTk1YWMzN2EzZDQ3MGJmNDk4YTQzMDVjYjAgbGVnYWN5LXRydW5rCiszNTAzOSA4NzM3YmI0NGUyMmZhOGRiZjYzZGM3YjZjYzFhNzhkYTc5Zjc1N2UxIHJlbGVhc2UyMy1tYWludAorMzUwNDAgMDYxZWZmYWJhZmNiZDdmNDUxNDI1YzM5ZjI5YTQzMjZjNWZiMTkyMyBsZWdhY3ktdHJ1bmsKKzM1MDQxIGRjZDc0M2U3OWNlMzU2ZWQ3MDk0YjQxOTUyODAyZWNhYTlmYmY5OWMgbGVnYWN5LXRydW5rCiszNTA0MiAzMzY4YTRkMjVmMTc3ZGVlNjE4ZTc0YzU4MTUzNjgwMjk4YzVmN2QyIHJlbGVhc2UyMy1tYWludAorMzUwNDMgNTgzZDVhYTgxMDFjZTNhODc1MGI2OTQwYzY2OGMxZWE0ODU5YzliZiBsZWdhY3ktdHJ1bmsKKzM1MDQ0IDVlYjllMjVlNjNmZDVlZDg2NDBhZWMxNTk0YTViYTljMGMxN2YwMDAgbGVnYWN5LXRydW5rCiszNTA0NSAwZWE4ZWJlYjZhYTJiOGE1OGU2OGVkNDAxMzA4ODJjYzAzYzUyNWFiIGxlZ2FjeS10cnVuaworMzUwNDYgODA5OTc4YzMwNGJlNGI5NmM2ODczMWJiNmJjMmJkNjY1MjgwYzZiYyBsZWdhY3ktdHJ1bmsKKzM1MDQ3IGZmZjFlODVkMTk1YzE3NTUwYjNlNTQxNDRhMGUwYzRjNjAyN2Q2NTcgbGVnYWN5LXRydW5rCiszNTA0OCBjZDdiNzBhNGM0NDAyMTBhMDUwNmVmMDVlNjc3MDExNDU0N2JiYmU0IGxlZ2FjeS10cnVuaworMzUwNDkgYTUzMTkwYjM4NzI3Yjc3MDY0MDAzODI2MWFjMTE1ZjVlZTdiYTVmNyBsZWdhY3ktdHJ1bmsKKzM1MDUwIGI2NzRhYjU4MDhiYWZmYjI2MDdhYjljYWVlODk0ZTYxY2MzOWQ3MDIgbGVnYWN5LXRydW5rCiszNTA1MSAwOTlhNGEyZjFmNzdjYWY5YmU5ZWJmYmU1NDFmOTFkM2NjYTY1YTcwIGxlZ2FjeS10cnVuaworMzUwNTIgMzMyOTQyMDZkNTM5ZjU5ZjJiMTU2NDY0YjFkN2I3ZThkMWNhMzhkNCBsZWdhY3ktdHJ1bmsKKzM1MDUzIGNhNDM3NDY2MjYzMjQ3NWJlN2NjMmMzOTRlZDAyYmQxNDE0ODI4OWMgbGVnYWN5LXRydW5rCiszNTA1NCBlZDY4OWQwYzYzYzEzYjFiNGFiNDA4MWY4MWYyYTNiYTZlNmMyMWUyIGxlZ2FjeS10cnVuaworMzUwNTUgOTY3MjIzNzdkNDEyYzIxNDU1NmFiNGY3N2QwNjk5NGRmYTdhOGViMyBsZWdhY3ktdHJ1bmsKKzM1MDU2IGM2NzAxZDg0YTNmYTFiM2Y3ZTBmZjRhNDM0ZjYwMzcwM2E3ZmMxZGEgbGVnYWN5LXRydW5rCiszNTA1NyBhZjk0NmRiNjdhZmM0NGQ0YmE2YWUyNWQ2MGNmYjE0MzcyYzYxNjdjIGxlZ2FjeS10cnVuaworMzUwNTggYjQ1MzJjMjQ2YTNhMGVjNDEzY2NmZmY4ODg4ZjYzZDM5ZjgxYzYzMiBsZWdhY3ktdHJ1bmsKKzM1MDU5IDNjYzBkOGZkNGUyYjY4MWFjYzgxODNmNjM1Y2EyNjAyN2U0NDVmYzAgbGVnYWN5LXRydW5rCiszNTA2MCA4YzcwOTA5MDhjZWNmZjY5MDI0ZjVlZTUyOGYyODgzNTA2YWI1YjkxIGxlZ2FjeS10cnVuaworMzUwNjEgNDc3ZjBhMjUyMTUwZDc1YjNlNTE3YjFhOGJlZGZkYzNkODRmNTZiMyBsZWdhY3ktdHJ1bmsKKzM1MDYyIGE2YmMxMzFhYjYxODhjODdjNTYyZTk2MjQ2Mjg1ZTkyN2U1ZjE5ZWEgbGVnYWN5LXRydW5rCiszNTA2MyBiNjdjYTNmNjg4Zjc4YmEyMDIyMDFjMmU2MzgxOTA4NmZlNzE0NDdhIGxlZ2FjeS10cnVuaworMzUwNjQgMzg1MTQ4ODJhNWM0YzQ1ZDBkMDRmZWUxOGU4ZmY3ZDRhMjY2ODljYSBsZWdhY3ktdHJ1bmsKKzM1MDY1IGY2NjkzOWYzODUyMzVkNjY0YjY4NTk5ODc2YmM0ZDZkZjM5MTNiN2MgbGVnYWN5LXRydW5rCiszNTA2NiAwYmFhMjY2MGE1NjhiZjFmNzBiYjkzYjhhMWJlYmQ2OWVlNzQ0MjlmIGxlZ2FjeS10cnVuaworMzUwNjcgNDE2YTVkMjVjYmE2OGQyYTE3NjdjNjY2NDg5MGZlMGVjMDY2NzY0MiBsZWdhY3ktdHJ1bmsKKzM1MDY4IDc2ZWQ4YTc4ODM5MTg1NzM3YTE0MzQwMGU4YjU4NTk3MDk2OTA2ZjcgbGVnYWN5LXRydW5rCiszNTA2OSA0NzI3YzgxZGI5NDk5MDg3ZWZiOTY3ZjMwZTZhNTg1NmZiYmYyNzRlIGxlZ2FjeS10cnVuaworMzUwNzAgNmVhNWNjZjA2NWJlMDQyYWM2M2VkZjA2NTY1ZThkMGRhNGY2N2E0ZCBsZWdhY3ktdHJ1bmsKKzM1MDcxIDRhYzZhMDIyMWY3ZDRiODdkYzk3ODk5NDVmNzliZjNlZjYyZDEyMjMgbGVnYWN5LXRydW5rCiszNTA3MiAwNTQyM2MzMjYxZDQxNWY1ODY3MTQwY2ExNDY1ZTkxM2NhZWJhZjYxIHJlbGVhc2UyMy1tYWludAorMzUwNzMgZThkZmYxMWU5MzU4Nzk2NWRmNDk5NDRjODhkZTVhYjNiNmEwNDBlNyBsZWdhY3ktdHJ1bmsKKzM1MDc0IDQ5MTVmYmVjNjA4ZjRmMDM1NWRjMTg2NGFlYmU4YzA2MjhkMDI3YWYgbGVnYWN5LXRydW5rCiszNTA3NSBmZDY0OTdjZjcyMjhlODI2OThkYjQ4ZDQ3ZWE3MTgzZjA1MGEyNDI0IGxlZ2FjeS10cnVuaworMzUwNzYgMGMxZDIwNjJkZWUzNTM5MTQ0YWNiODdiMmMyY2ExOWE4ZWI2OTdmMSBsZWdhY3ktdHJ1bmsKKzM1MDc3IGEwYWUyZDlkZTY5MTExZDA2MDdmZGNjYWFjZGNhNGQxMTBjN2JjNzcgbGVnYWN5LXRydW5rCiszNTA3OCBiYjNjM2M5OGNjMWJhYmExMjkwNjMzNzM1YWE2Njk2ZTUyYTNiZDFiIGxlZ2FjeS10cnVuaworMzUwNzkgZjBlMmE4NTM2NzU5ZmRjMTIwZTQzNGU3NjFlNjljYmUyMjdkODE1YyBsZWdhY3ktdHJ1bmsKKzM1MDgwIGEwYjE3NzMyODM1YTIwYjI0OGFjODVlZmNhOTQ5MWFhNTc3OWY3MDUgbGVnYWN5LXRydW5rCiszNTA4MSBhMzQwYzUwZTkyNGEzNzRjYTE4MzFiYmQ5MGFjZTYxMTY1ZDIyMDQ0IGxlZ2FjeS10cnVuaworMzUwODIgNTU0MTJhNDNkMmQzZTFjNDIxMDZhMGU5NzRjMzgyNTc2ODMyMmNiNiBsZWdhY3ktdHJ1bmsKKzM1MDgzIGVhYTFhNGI3NDMyODdiYmNmYjZjNDhhNzUyZTIzNTg2ZGVlODFiMjIgbGVnYWN5LXRydW5rCiszNTA4NCBhMzJhYTc5MDYyNTE0OTVjNDFiMjg0MmVlOWE2MmNlMGFlZDk1NDUyIGxlZ2FjeS10cnVuaworMzUwODUgZWZlMDc1Mjg5NzkzNTBlZjVhMDdlMDUzMGYyMTBhMDU1ODQ3ZWE2MiBsZWdhY3ktdHJ1bmsKKzM1MDg2IGVkMjAyNTlhMWVhNTU3ZGRhNTE4ZDZjZDI5MGUxZmQyNTAzYzFjMTAgbGVnYWN5LXRydW5rCiszNTA4NyA3OTZjOTlmMGZhMmM2MmNjNzkxZWMzNGIwY2E4ZTFhZjFjZmJmODkxIGxlZ2FjeS10cnVuaworMzUwODggZDhjMmRiNzgyYmRmNWZmMzUyMTFhMDE1NTc4YzgzNTFmMzc4ZWIyNyBsZWdhY3ktdHJ1bmsKKzM1MDg5IDkxNDBlY2UzZGIwMzYzMzkyMzg2Mjg4ZWVjOTk2MGJhYTc1NGRhOGMgbGVnYWN5LXRydW5rCiszNTA5MCBjMDg4NTg0ZjU1MzM5ZTlhYTRhNTRmYWM2YjBmYWM0ZDM2Njg1ZDg2IGxlZ2FjeS10cnVuaworMzUwOTEgNTg2YTQ5YzJjNjQxZTUzOGU1NDdmMDIyOWEzYTQ4MGI0MDQ0MGEzMiByZWxlYXNlMjMtbWFpbnQKKzM1MDkyIDE3Y2EzNDczMDNkM2YxM2UyYzFjYTNkNTVmYTgyM2M4NDQwMjQ3NjYgbGVnYWN5LXRydW5rCiszNTA5MyAwZjM5NGY0MzlhZDZhMDRmNjMxMTdjNTc1ZDU2M2EzNjlmNmRiYzk2IGxlZ2FjeS10cnVuaworMzUwOTQgZWM3NWZmOGM3NzIxMjE5ZDNjNDJhYWVhZDhmZmE4YWJmZTc5OTkwZiByZWxlYXNlMjMtbWFpbnQKKzM1MDk1IGYxNjY5MTFmNzc4Yjg1NzFjZDEzMWUwYWFlNWRhZmIyYTgxYzQyNDIgcmVsZWFzZTIzLW1haW50CiszNTA5NiBmN2EwNWFiNTBkM2I0ZTIyNjcyMGFlNmRiNTJhMDI4ZjljZDBhNmZiIGxlZ2FjeS10cnVuaworMzUwOTcgYjJhODIwZTMyOWE5MGEzM2U1NmM4N2U2YjQ2ZTdlZGZmNTdlNGRkYyBsZWdhY3ktdHJ1bmsKKzM1MDk4IDU3YmFjYjExOWE5NzY4MjVhMmRhYWQxOGEzZDA4MjIzYThkMWM1ZGMgbGVnYWN5LXRydW5rCiszNTA5OSA5OTg5MWI4ODhjZmQyOWU5ZjBlYjUwMTg2YzM4ODc3Yjc4ZTljZTAxIGxlZ2FjeS10cnVuaworMzUxMDAgMWRmNWI2YTFkYmY2YTU0MDE0MmMxZTM2MTM0ZWIwYmI4NDc4NWJmYyBsZWdhY3ktdHJ1bmsKKzM1MTAxIGIzZDY1MzI2Y2E2NmI0NTZkYTljMDlmN2IwYzM1YTMyMmQ4N2RmNGMgbGVnYWN5LXRydW5rCiszNTEwMiBiZjM2YzExNjMzMzA3ZmQxOTZjYjI5ZjhkNjZlODAzMGUzNTcyY2Q1IGxlZ2FjeS10cnVuaworMzUxMDMgNmE4YjEyMmFlYjJmZjdhNDZiMjAxOTI0Mzk1ZGZhZTU3YzczZGFhMiByZWxlYXNlMjMtYnJhbmNoCiszNTEwNCBhNjI4NGU5ZjMwYTJlNmViMjk5ZTFiMTIxN2Q1MDMwOWRiYTIxNjIwIGxlZ2FjeS10cnVuaworMzUxMDUgZjg0ZDJiYzY4MzFkNDg2NmY5YWY0NWZhY2U4ZGY3ODAwY2MwMGEwMiBsZWdhY3ktdHJ1bmsKKzM1MTA3IDRlNDBlZmYxYWQxODZlYTI4OWM4YmQ4NmQ5MzEzOTViNDc1ZmM2NTYgbGVnYWN5LXRydW5rCiszNTEwOCBkMzI1OGY0M2Q0ODRiZjFlMjY0ZDJlNTRkODU5YzhjN2E5M2Y1Nzg0IGxlZ2FjeS10cnVuaworMzUxMDkgNjMxY2UyM2Y4OGQ2YWU1OTdlZWVkYmM3ZWY3NWFkMmExYTNhMzE1YiBsZWdhY3ktdHJ1bmsKKzM1MTEwIGYzOGJkMzkzZTk1NDc1YjMyOWUyYjU5NzBlNzFjMDRkMDJhZmY0YjIgbGVnYWN5LXRydW5rCiszNTExMSA5ZGE5NGU1NjlkNDhiYmY4MDk5OTk1ZTVkNjdlMWQzNmMxNTc1MDAzIGxlZ2FjeS10cnVuaworMzUxMTIgZmM1NzIwMGY3MGYyNGRlZTRhMWU5YTk2NmNhMmQwNmIyNjdlNzEwNyBsZWdhY3ktdHJ1bmsKKzM1MTEzIDY0YWU4MzIxMzFlMTQwNzRjYzFmNzU3YjdkMTQxNTVlN2E2ZThlNzQgbGVnYWN5LXRydW5rCiszNTExNCA0MDU1Mzc1ZGMwNWVhMjE5OGQyZWFiYzQwMjdkODM3MjIzOWE2N2VlIGxlZ2FjeS10cnVuaworMzUxMTUgNjdhMWVlYWQ3MmJhYjRiYjg3Y2Q1Y2QzYmNhOWU5MGRjZDY0YmNiNCBsZWdhY3ktdHJ1bmsKKzM1MTE2IGUyMGZjMWI4MDIwNTFhMDIwMTJkY2Q0YzBhMGY4MTExZGM3MzQ2OWYgbGVnYWN5LXRydW5rCiszNTExNyA0NmFkMjFiNWJkMzM0YzQ5NjM3NGUzNWM4NzlmN2RiOWRhMGJjMTM2IGxlZ2FjeS10cnVuaworMzUxMTggMGFhNjQ0MWM3ZmU2ZDhiZmU5ZmVjNGI2ZTY4ZDk4MDhmZjU4MTg3MSBsZWdhY3ktdHJ1bmsKKzM1MTE5IDViYmVjOGYxYmY2ZDY1MGNlZmZjZGZjNmU1NDEwMGU4MzVlYzdlYTEgbGVnYWN5LXRydW5rCiszNTEyMCBjYjkyMzFlZjNiYjkzZWFlMzFkZjNlYjQwMDUwMjA1Zjg2OTEwZTUzIGxlZ2FjeS10cnVuaworMzUxMjEgODg3Y2UzOWY5NWYyYWU5ODE4ZmRjNTlmOWRhZjdiOTYzYjkwZTNiYiBsZWdhY3ktdHJ1bmsKKzM1MTIyIDQwNjdiZjQ4MTU0ZDM3NGIxOTA0NzNlMGYwMGJjOWQ5ZTgyZWY3ZGIgbGVnYWN5LXRydW5rCiszNTEyMyBlYzBjOTA2MjEwYmZhMzIwNTM5NmNhMzNlMWFhNWU4ODAyNWRjNjIxIGxlZ2FjeS10cnVuaworMzUxMjQgYWNhMWNlMWI0YjYxNDQyMDJkNmNjZjU5ZDY5MTQ4YjZlMmU0YzE4MCBsZWdhY3ktdHJ1bmsKKzM1MTI1IDkxNjlkNzllZDMwNDhlMDgxMTcyOGVkMDJkYTMxOGU5NDk1NDllNzAgbGVnYWN5LXRydW5rCiszNTEyNiBjZWY2MTNkOTA0OTU3Y2ZiZWQ4ZjQ5OGIwZDRiZmU2YTVmMGQ5NzJjIGxlZ2FjeS10cnVuaworMzUxMjcgYzliZWQyMDA1MDBlNGY3NzA0ZWEwNGQ5NjgwZWQzM2RhODcyY2QwZCBsZWdhY3ktdHJ1bmsKKzM1MTI4IGM4N2E3ZTgxM2E5OWY2M2RlZmVlN2M3Yjg3NTRmNGFlMTljMzhhODAgbGVnYWN5LXRydW5rCiszNTEyOSAzOGRjZWMyZjdiMDM0NDRhNTAzMzhkZjk1YjE2M2Q5MmFmYjY4ZTY2IGxlZ2FjeS10cnVuaworMzUxMzAgM2FhMjBhODJkZTg2N2Y2MDU1MTM0ZWIwMDUyYzc5MjM1YzMwMzM1YiBsZWdhY3ktdHJ1bmsKKzM1MTMxIDQwZDcyNTA3N2RjYjBkNDhmOWRkMTRiNDkwMDQyYzg1MWE3NTQ1ZjEgbGVnYWN5LXRydW5rCiszNTEzMiBiOTA1N2E2NzYzZDdkMDEzYzhiNDY4ZTdlYWQ5ZjRjYzgzMjk5NjU0IGxlZ2FjeS10cnVuaworMzUxMzMgYjNkN2ViYzEzZDdkNWVlZTBlNThmNzhlMjIzOTZhNGI5NWJlNGY2NiBsZWdhY3ktdHJ1bmsKKzM1MTM0IDBmY2U1YjE3M2E3NDAyZWViMGU2NjAzYmJkMzc5Yzk0MTc0OTYwOGUgbGVnYWN5LXRydW5rCiszNTEzNSAyNWE4MDE2NGNjN2FmZWY0YWFlZTRhNGQyYmNmMjI3ODlkYmFmMjEzIGxlZ2FjeS10cnVuaworMzUxMzYgODk3ZGU5MjA4MTk5Yjk2ZGQ2YjExY2QzMDE1NWRiNDgxMWE2Y2ZmYiBsZWdhY3ktdHJ1bmsKKzM1MTM3IDEyY2MzMzY4MjhlOWIyNzE5NTZmNThiYWVkOWUxZTE1NmU2ZTY4YzQgbGVnYWN5LXRydW5rCiszNTEzOCA5MDA1ZjI2NjJhNzBlYWIyMmNhNTA5M2Q2ZWQ1MDI5N2U0ZmMyZjZlIGxlZ2FjeS10cnVuaworMzUxMzkgNzQwN2EyNDZkYmUwMmY4MGM5MTg2ZWYwODA5NDRiZTFhYTg5OTk3ZSByZWxlYXNlMjMtbWFpbnQKKzM1MTQwIGZmOWE1NDk1M2MwYmZlYTc3ZTUyZDA0MzkwNTFlNDk1MDUyM2M5OWMgcmVsZWFzZTIzLW1haW50CiszNTE0MSA2OWEzNjVlNDdhYzBhMjA5NjVjODA1NzQ3ZDJlMWY3ODIyNzVjOGZiIGxlZ2FjeS10cnVuaworMzUxNDIgMWRjNTQyMjVhNGMyMjg5OWE2OTY1OTQyNjQxNjRiNWUzM2Y2NzU0OCBsZWdhY3ktdHJ1bmsKKzM1MTQzIGU3MTI0ZTI2OTI1ZjY0YjVkYjMxYWM0OTJmZjkxZTNkYmMxYTY1N2MgbGVnYWN5LXRydW5rCiszNTE0NCA2OTAxMDVmZWE1OWQzOGZlYjM0MDMxYTliYTY5NGQ0Yjk4YTFlOTIyIHJlbGVhc2UyMy1tYWludAorMzUxNDUgNmUzNzU4ZWQxZWY0MTJhOTJlMTZkMTVmYmZlNjA2MGIyOWZiYTk5ZiBsZWdhY3ktdHJ1bmsKKzM1MTQ2IGJiYzk0NGUxZmVjY2I2MTFhOTQ3YmM4OWNkOGJlMWYxZWEwNjg0MjYgcmVsZWFzZTIzLW1haW50CiszNTE0NyAyNjZmMjI2ZjQ3MWQwNDY1MjU5ODcwYjkzOGRlYzA4M2JlMDIyNjJlIGxlZ2FjeS10cnVuaworMzUxNDggZWM4YTQ2ODViMzYwNjY2ODcxZWVlZDc4Zjc1ODVlYjU2MWQ4MWQ5MiBsZWdhY3ktdHJ1bmsKKzM1MTQ5IDE0ZGVhNmY4YjBjMzQ0ZmVhNWM5MWU3NjdmODY3N2MzMjAwMGE4NzMgbGVnYWN5LXRydW5rCiszNTE1MCBjMzgwZGMyOTMwNGFlMWIzMWI4ODM5NTM5Y2JjYWY3ZGJmYjE3Yjk5IGxlZ2FjeS10cnVuaworMzUxNTEgZjdmNDJmM2MzZmI0NzU3ZWI0NjE5MGViNWU0YjdiNTI5MTc0ZjhiOSBhc3QtYnJhbmNoCiszNTE1MiBhMTUxMTUyOTBlMTNiMjhmYzhhNjM0MTgwYWM1YmZiYTdkMjRlMDM2IHJlbGVhc2UyMy1tYWludAorMzUxNTMgN2ZjYjM1NTUyZDUzYTM0YTA4N2FjMmMzYjIxNWJlODM0YjYwYmUzZCBhc3QtYnJhbmNoCiszNTE1NCAwMzgwODc4ZjNkYjU0OTMxNDlhZTRjNzI5MWE1YTE1YzczMzgxMDgxIGFzdC1icmFuY2gKKzM1MTU1IDYwM2E5ZWFhNzRlMTU1ZDhkZmE2OWIzNTdlMTBlNTBjZTlkY2M4MzIgbGVnYWN5LXRydW5rCiszNTE1NiBhYzRhN2JhNTQ3OTI5MDRhZDgyN2YyZTk4NjczZjljZjgwOWZmNDEwIGxlZ2FjeS10cnVuaworMzUxNTcgYjFkYzVlMTE0OGVhMzRlZmE1Y2Y3YjdhOGZiMmU2ZTRlZmQ1ZWNmZiBsZWdhY3ktdHJ1bmsKKzM1MTU4IGJlNTZmYzQ4NWUyNzBkNmUyNDZmZWVkODE3OWZmMjMxOGM1ZmMzZTEgbGVnYWN5LXRydW5rCiszNTE1OSA3YmU1NTM4MDU5NDkzZTYzZmE4ZDE2ZDU1OWI3ZGJmOGVhNzY2MWYyIGFzdC1icmFuY2gKKzM1MTYwIDU2MWZlN2Y2NjUxNWUwOWY5MDEyMTAyNGNhNjBlOGI4NzkwZjk3YzcgYXN0LWJyYW5jaAorMzUxNjEgYzRkM2U3YTFmZjg2OWYwZmE2NWViZDBiMGNjYTljZWFhYTMzNjZlZiBhc3QtYnJhbmNoCiszNTE2MiA2MWEyMGRmNGIwZWY1ZmQ3OTNmYTk4YTBjOTUwMjE4MzA4MzQ2M2Q0IGFzdC1icmFuY2gKKzM1MTYzIGI4MTQ4MGY3Y2ZmZTYxOWE5NDE3ZTdkZjA4ZmIzM2Q5Y2QyODRmMTMgbGVnYWN5LXRydW5rCiszNTE2NCAxODYzMTljZmY0YjIyNGU0MDM3Mzg1ZDVmNWY2ZTA4ZGZmMDgxYzBkIGFzdC1icmFuY2gKKzM1MTY1IDdjODhhMDY5YTE0MzlhMDllM2Y1ZGVmMjc3ODY0ODk0ZTZiODY1NGMgYXN0LWJyYW5jaAorMzUxNjYgOGI2MDg0ODQ4ZGExODlhMGM2NzliZmY0NDA5YzQyNGYwZTQ0OTBjMyBsZWdhY3ktdHJ1bmsKKzM1MTY3IDY2YTQyMzBmOTQ1YjE0OGViM2M3MzVlMGQ0ZDc2MWFjOTliOTU0NjYgbGVnYWN5LXRydW5rCiszNTE2OCA4ZjQ3MjgxZmVhN2JlYTRjOTU1ZjgxMTQ4NWJiZjAzYmQwNmMyOTQwIHJlbGVhc2UyMy1tYWludAorMzUxNjkgNDYyMjQ2OTBhMzY1NWE0M2RkYjlhZjM0YWQ2YTRmNjIxMzAzY2YxNyBsZWdhY3ktdHJ1bmsKKzM1MTcwIGYyZmQ0ZTVkZGYxOTVhYzIzMzVkMDI1MzgzM2QzYTZlYTdiNDU5ZGIgbGVnYWN5LXRydW5rCiszNTE3MSBlNGQ3M2VlOGQ0ZTE2YmE0YzRhODE5NjZiNjAzYTdhZjcxOTMyOGEzIGxlZ2FjeS10cnVuaworMzUxNzIgOGQwNmMxOTJmMGU2ZDNlYzlkNzBiYWEwOWQwYjQ2NWYxMjM0Yzk0ZSBsZWdhY3ktdHJ1bmsKKzM1MTczIGFkYjZkZmZkOGRkNTMxNGI0NTMxNDYxNTgwNzQ1NTliYjYyYzUyN2UgbGVnYWN5LXRydW5rCiszNTE3NCAxZWJkMDYyNmQxNzYxMDgzMjliNzAxNTcyNGZiODdmZDIyZWY4NGRiIGxlZ2FjeS10cnVuaworMzUxNzUgMjg4MGNlYjgxMTlkYzFiNTI1ZTM1MDUzZDk3MzE4ZTMwZGVmNWI3ZSBsZWdhY3ktdHJ1bmsKKzM1MTc2IGU4Yjk2YjJiZmE3YjIwZmNkODE3NzQ3YTEzMjgzN2NjZGJjOGRhMWQgYXN0LWJyYW5jaAorMzUxNzcgOGY4YmJhMGE3NWI0Y2QwODI2YTVhNTc4M2UzOTMyNjFlNGRkNGNhYSBsZWdhY3ktdHJ1bmsKKzM1MTc4IDRlN2NjNTBiMzBhMTY0MzhmNzE0YjRiMzZkYWNiNmVmYWI0YTRhYjkgYXN0LWJyYW5jaAorMzUxNzkgNTAxZGFhY2NiZmUwY2I2NGNiYTBhOTRjM2ZjZGEwZjAwYzBjNDRmNyBhc3QtYnJhbmNoCiszNTE4MCBkNjY3ZTMzZTAyNTIzZmI3YjBkOWRiMzEyMDhkMDZmMWZiODVhM2ZlIGFzdC1icmFuY2gKKzM1MTgxIDY1Nzc4MzUyMDY2YmY5NGYwODg4MGVhZmNhNzRjOGYzMTgxOWU4YmIgbGVnYWN5LXRydW5rCiszNTE4MiAzNzQ2OTc0NzhiNWFjMDJlNjBhYmI1ODNhOGVkNmYwNTI0ZmQ4ODc1IGxlZ2FjeS10cnVuaworMzUxODMgZjc2ZmViNzNhMGU0NzE2OWEzNjE1YjkyOGQ2MGQwNmQ5MDhkZGM2NCBhc3QtYnJhbmNoCiszNTE4NCA2MzA4YWRmMTcyZjQ4MDM1MDcyNGVmYTA3NTZmYjFjMzlkYzRiYjAwIGFzdC1icmFuY2gKKzM1MTg1IDk1MjUxNzc5OGNiNWQzMDM2NmY0OTUzYjExMjZmMGViNzc5MDM2ZGYgbGVnYWN5LXRydW5rCiszNTE4NiA2M2ZhNjBmMmQ2MWNhODM2YjVlMmQwOTU5ZGVkMWMwMDI4MTk0YWVkIGxlZ2FjeS10cnVuaworMzUxODcgNGE5ZTU2MzY4YzY5MDRjMzkyNTFjODJiYTcwMWViODAwMDNmNmZjZSBsZWdhY3ktdHJ1bmsKKzM1MTg4IDNjNTdhMWMzYTg3YWVmMTM4ODU2NGY5MDU5Y2I0YTg3ZjE2MjNjNzggbGVnYWN5LXRydW5rCiszNTE4OSAzYzI2NzdjNGEyYmYzNjllODFmYjZmYWY4YjEzZGM2NGQyNDQ0ZmIyIGxlZ2FjeS10cnVuaworMzUxOTAgMTZiMzE1ZGYxM2NlNDhmN2IzYWNiZDVjY2Q2ZWViZTBlZjg0YzUzMiBsZWdhY3ktdHJ1bmsKKzM1MTkxIDQ5MzcwNzY5MjY3MTk0Yjc2OTE5OTg1NGE3ZjVkODE2ZjFkYWY4ZTIgbGVnYWN5LXRydW5rCiszNTE5MiBhMmZlMWEzNTgwMGEwNmQ0NzdkMjUwYzI0MzYzZDk4MDBmYWM3MWFkIGxlZ2FjeS10cnVuaworMzUxOTMgYWZiNGM5NzI2ZDFhNDVhMjMxZDRmY2VkOWQ1NzczZGIxNWRmZTI5MyBsZWdhY3ktdHJ1bmsKKzM1MTk0IGEyODI4MDFiMDZiNjQ4ZGYwYzhjYzQ2MDEyMjg1YTdhYmZmYmM2OWUgbGVnYWN5LXRydW5rCiszNTE5NSAxMjE5ZjExNjJkMWQxYTk1ODk3MTM0ZjVlNjQ5NjUxZGJmZTJlOGYwIGxlZ2FjeS10cnVuaworMzUxOTYgOTdiY2YyZTg4Y2ViODkxNmFjOGM1MDM4OTg4NzI5ZWNiMzkwNWNkZSBsZWdhY3ktdHJ1bmsKKzM1MTk3IDE2ZDI2OTg2NmE0ZGFmN2JiMmJlYTMxZjIxNWUxZjZmODk3MWI2MDQgbGVnYWN5LXRydW5rCiszNTE5OCBkZmMxODE5YjRlYjQ3MzJmOWExNDg3NjU1YTI4MzQ1OGQxYzMwYTAyIGxlZ2FjeS10cnVuaworMzUxOTkgYjRiYzgzZjJmZDA0ZDlkMjExYmY3MmI4MWIwMDgyZjdkNzg1OGIzYSByZWxlYXNlMjMtbWFpbnQKKzM1MjAwIDkyNTY1Y2NjZTkyYjgwY2FkN2EzNWZjNDc2ZTMwZmI5Nzg5MGQ3YTEgcmVsZWFzZTIzLW1haW50CiszNTIwMSA2NmE1NTBlOWIyZmI3NWMyZTIxMjM2MWVlMDk4NGU5OGZkYzUwYjhlIHJlbGVhc2UyMy1tYWludAorMzUyMDIgYmI3MTQ2ZDExN2ZiZDM5MGJhNDhhMjFhZmM3MDc1ZmFlMTc2NGVlOCBsZWdhY3ktdHJ1bmsKKzM1MjAzIDNjYzNjYjc5MDQzZjcyMTgwMGJmYmIxMzcyMmQ3YWJjMTE5N2MwMTggcmVsZWFzZTIzLW1haW50CiszNTIwNCBkNDE2NWQxMmY3M2MxOWY5NjUxZWI5YWVhOGZjNzhmNTRiOWQyZDk1IGxlZ2FjeS10cnVuaworMzUyMDUgMzdkNTAxYjllMmQ1YmIwZjgyNGI2YTc1YzhlOWYzYjY4NGJmMTBiYSBsZWdhY3ktdHJ1bmsKKzM1MjA2IDU2NjczN2JmYWVjOTUwNTRiZGY0NWYyMjA2OTI3NjQ3ZTY5ZTgxODAgcmVsZWFzZTIzLW1haW50CiszNTIwNyA4YWU4OGRiNzg0M2MxZjBjMGE2ZTE4YTAyYjgwODNlY2I5MmY1YjA5IGxlZ2FjeS10cnVuaworMzUyMDggYzU4MjRjOGM2YmE3MjI3NTc3Y2EyZTk1OTEzNDBlYmIyM2Q0OTZmNSByZWxlYXNlMjMtbWFpbnQKKzM1MjA5IDAzMmNiMTdhYzJkNmNiZmI3ZmZlNGQzNjUyMTliNzk1YzRiNDBlYTQgbGVnYWN5LXRydW5rCiszNTIxMCBjYzEwYjAxMGY0MGJhMWU0ZTI1OTRlZmM0NWY1YzViNzdlYTM3MGRiIGxlZ2FjeS10cnVuaworMzUyMTEgNDIwMDNjODYwMGY0ZDNlMzdkMTdmZjQ4NzA1YmY4YzBmYTZjYTViZSBsZWdhY3ktdHJ1bmsKKzM1MjEyIGQ1YzA0NzgwN2M2OTdiMzQxY2NjMzUxNTcwM2Q0ODEzZjdjMDk2MDIgbGVnYWN5LXRydW5rCiszNTIxMyBhNTc3NDEwZTVhNjBmZGU3MDQyYmZlNzI5NTBhZGY2MzQ5MGIzNDk3IHJlbGVhc2UyMy1tYWludAorMzUyMTQgYWFiZDliNTRlNDY5ZWY4ODEwMWM1NWU4NzJmYTI0ZmRiZDk4OTc4OCBsZWdhY3ktdHJ1bmsKKzM1MjE1IDg1ZjQ5MzJkOGZmZDk5NzAwNTU3NDNiZDE2MWU0YTg0ZTFlZWM2ODUgbGVnYWN5LXRydW5rCiszNTIxNiBmMDRjY2MyODg1NDJiNmRiNjIzODVmNTY2MWJhNjE2NDg1ODI2ODNhIGxlZ2FjeS10cnVuaworMzUyMTcgNDRkNDQzOGVkNTdhNWE2ZThjZTAzOTRiNDU4MWZkZGRmZDZjZTk1NCBsZWdhY3ktdHJ1bmsKKzM1MjE4IGRlMmVkODAwZmE1MGZhNTU2NzMzYzllMDI1ZDMzMWZhMWI1M2VhYjUgbGVnYWN5LXRydW5rCiszNTIxOSA4NDk1YjAyN2JjZTM2NjA5OTI1NGEyN2IxYmQ4ZDI0NTU1YmI4MGJjIGxlZ2FjeS10cnVuaworMzUyMjAgNjZlNDNmMjUwNDZkYTVlNzA1M2JjMGM2OWIwMGI0ZjhkMTk4NjQ5YiBsZWdhY3ktdHJ1bmsKKzM1MjIxIDFkYzk2ZDg3OTc0ZWI2ODhiMjBlMTJkYmI0MTc5NTcwMjU4MmJiMjYgbGVnYWN5LXRydW5rCiszNTIyMiAxNzRkY2YxNzFkZjUyYzNmNTMyNDFhMDUzYmY1YjBiMmI0ODFkYTc0IGxlZ2FjeS10cnVuaworMzUyMjMgN2IzNGQ4NDljMjI5MDA2NWQwOTNjYWU5ODNkN2JjNzAyNGVlOTY4MCBsZWdhY3ktdHJ1bmsKKzM1MjI0IDNjZTRmZmFjMjdhYjQ0YzJhMTllMGE1ZTMxYmMyZDg3ZTYwNGVlOTggbGVnYWN5LXRydW5rCiszNTIyNSAzMDhjMTkzZjUxZTMxNzg1NmNiMWJhZDQyYjZlZDBhNGY0NGUxOGYyIGxlZ2FjeS10cnVuaworMzUyMjYgMjViMzA0MzlmZTIyOWYwMDI2ZTRkN2Q2MzIzZTZlZmMxMDE4ODE1NiBsZWdhY3ktdHJ1bmsKKzM1MjI3IGJhOWFhZGRlYjk1Njg0N2FkMDY0ZWMzNmMyNDY4ZGJkMGFlYTNkNzEgbGVnYWN5LXRydW5rCiszNTIyOCBmMzBhYWFjMDAxOTVlODc2NTMyZjM1M2EyZWUxZDkzZDhmNTE0NTJhIGxlZ2FjeS10cnVuaworMzUyMjkgNTczYjA4OWZhYjcxZDNlNjI1YmU5MWM4MjYzMjMzZGZlMzhhNGM4NSBsZWdhY3ktdHJ1bmsKKzM1MjMwIDkxYWY2NWI5MzJkNjIyODg3YmRiMGQ2YTFkMDQ4Mjg5Y2VhMTM1NGIgbGVnYWN5LXRydW5rCiszNTIzMSBkNWI0YzQ0Yzc2Y2UwNmE4NGNkNTJkY2RjMmUyZTJlN2E0M2E3Y2I0IGxlZ2FjeS10cnVuaworMzUyMzIgZDk4NGIzYmQxY2ViMWEwZDJhY2FjYmQwYzczNDE4ODE1NmM0MzZhMiByZWxlYXNlMjMtbWFpbnQKKzM1MjMzIDY1ZDI4ZmZmMTE3MmUxNWY3N2Y4NDU3ZmFhNzRmZWNkNzFmNTZkYTQgbGVnYWN5LXRydW5rCiszNTIzNCA1M2RmZjYwZjU1MDg5YmFjM2ZkYmRkNzI3ZGQ2ZWI0NTg4NTQ2YTkyIHJlbGVhc2UyMy1tYWludAorMzUyMzUgZTE3OGViNDNlZmRkZWU5YjliMzFkMzJhZTIwMmRlMWY4ZTdhMjExNSBsZWdhY3ktdHJ1bmsKKzM1MjM2IDcyNzEyMGZiMDM2NTJkYzI4MTFhNjViZGE1YmU2ZGViZTljYTFhMDYgcmVsZWFzZTIzLW1haW50CiszNTIzNyBmNTdmNWNlMjJjOGRjOGQyMTM1Yjk3OThkNzliN2FmYzRhOTgyMjA0IGxlZ2FjeS10cnVuaworMzUyMzggMDhlYzRkYjUwNjRlYjZhMjVkNGU4MmIyNWJkNzY5YmM3ODMzNTg4NyBsZWdhY3ktdHJ1bmsKKzM1MjM5IDg5ZjkwNzBkYzFiYzBiYzEwOTI5MWIzMzVlNjNjMzYzNzU1YTVhZTcgcmVsZWFzZTIzLW1haW50CiszNTI0MCBmZDJkNjRhZjI2NDBhYjYxM2M4MTBhYjMzMTBkNzNiZDZiZDI3MTMyIGxlZ2FjeS10cnVuaworMzUyNDEgZGI0ZGE5M2YwYmEwZWU0YmUwZTE3YTFiMmVkNTQ4NDQwZTRhZWZkNCByZWxlYXNlMjMtbWFpbnQKKzM1MjQyIDhlMjE4Y2M4ZWRhYjJiZGRmZTE5M2QwM2I5ZWI4MTUyODkzNDNhMDkgbGVnYWN5LXRydW5rCiszNTI0MyBmZWFiZTJmZjBlMWUwOWQyYTNkMmViYzczMGYzOGIyNzBhN2U3ZTU1IHJlbGVhc2UyMy1tYWludAorMzUyNDQgNmE4ZThhMTNjNzQ1NWZjZjdhOTA1MDM1Y2I1NmMwZGMzYjkzYTE5YyByZWxlYXNlMjMtbWFpbnQKKzM1MjQ1IDRjMTJkM2IwMTY2ZmNiMDIxMzljYTc3MjQxMzEyYTVjOTBlZWYwMTUgcmVsZWFzZTIzLW1haW50CiszNTI0NiBmZWY5ZjJhNDFjMzRjMDM3NjBmNmYzZGQzNzlhM2ZjMGVjYTcwY2ViIGxlZ2FjeS10cnVuaworMzUyNDcgMmI3ZTA4ZGNhY2IxNGM5Njc4MzMxZWI4MWZhMTQ3YWI2Y2QzZDI3YyBsZWdhY3ktdHJ1bmsKKzM1MjQ4IDUxYzNkNDUyYWYyZjJjZmI4YTQwNGQ4NzMxODI0MWE0NzA4ZDI5NWIgbGVnYWN5LXRydW5rCiszNTI0OSA3NWRjZjI2NjZkNTQ0NjA5MzhiNTdkMWE3NDg1YTcyM2Q2MjQ2OTM1IGxlZ2FjeS10cnVuaworMzUyNTAgNWQ5YTNkNzZjOTRlNjAzNjJmZTRhNTIwMTRiOTE0YzM2NGI4ZjAwMiBhc3QtYnJhbmNoCiszNTI1MSA4ZjA2MzIwMDk4ZGQ2MDQxM2EzMGM2MTNhOGE5MmFmN2QyZWNjNGI5IHJlbGVhc2UyMy1tYWludAorMzUyNTIgMTRmODYwYjAzYmUyNzNhYTljYWMyNWYxYTEyNjNkYmNlNjRmMTAwMCBsZWdhY3ktdHJ1bmsKKzM1MjUzIDU5NTM4ZDNiN2NkMmQ1ZDNkMmUxM2I1MjY0NmY3Y2M4ZWY5YjFmMjQgbGVnYWN5LXRydW5rCiszNTI1NCBlYjQ4YjI1MDNmMjAxZDQ0YjRhZGU2NGZjNmQzYTIwODRlYjVhOTY5IGxlZ2FjeS10cnVuaworMzUyNTUgMmFiYzUyYzNkNGMyZmNlYWMzNjVhMWQ4OTU2ZThmZGZlODliZGEyMCBsZWdhY3ktdHJ1bmsKKzM1MjU2IDFmNWY2Y2NhMmYyMTBkMTA4YzdmZDE4ODE5YWQ4ZTRiNmVhNzMwM2UgbGVnYWN5LXRydW5rCiszNTI1NyBlYjY5ZWVjYWI0YzdiNmMwYTE0NDE1MWI5MDYyMzA3YWQxMzk1YmE3IHJlbGVhc2UyMy1tYWludAorMzUyNTggMzU0MTI5MTQzODA5NGNmY2ViMGNkNjc0OGQ5NzQ1OGJlMzliYTU3YSBsZWdhY3ktdHJ1bmsKKzM1MjU5IDcxODY0ODIwNDAyZDY1NjlkZTRlYzdkYzc3ZDYyMWEyODNlOGU1ZWUgbGVnYWN5LXRydW5rCiszNTI2MCBjZTU4ZDFjYzZmNDA1ZjMzMTkxNDhmYjcwNjM5NzQxZDJkYmJjMWFmIGFzdC1icmFuY2gKKzM1MjYwIGNkYzY2MjkyZTU1ZDM2OWU3NGI0YjMyMjZiY2RkODI3MWNlNzA4YTMgcmVsZWFzZTIzLW1haW50CiszNTI2MSAyMjE5OWVmNjRmZmEwNDUyYWZmMmI2OWFmNzk5ZWFjNzk0NmVmYjM0IGFzdC1icmFuY2gKKzM1MjYyIDEwNmZhOTRiNDJkZTBjOTA1YTBmZmM0YjAwNWJjNWIyODJiMWEyODIgbGVnYWN5LXRydW5rCiszNTI2MyA1YTQ1YjVjMjM3MWU4ODUxNTRjYjc4MTkxYzQ0MTM5MThhYjQ0OGYxIHJlbGVhc2UyMy1tYWludAorMzUyNjQgZWFlZWE1ODdmOTBhMjk1NTZmZDMyNDFlMDJiNjQxYmZiMDJjZWJkNiByZWxlYXNlMjMtbWFpbnQKKzM1MjY1IDViZWRiYTU1YmEwMzdmZTJjMmYzOGI1YWJkMDRjZDZhNzJiZDYwOGMgbGVnYWN5LXRydW5rCiszNTI2NiA1NDUyMjlkZmQ5MDk4NTg3ZDQzYjM0MWE3ZWNhYTgwYTFiMDI2ZmY1IGxlZ2FjeS10cnVuaworMzUyNjcgNzFhMjk0YmQ3OTUwOWNkNDIwOTc3OTdlMzlkNjAyNmVmOTAzMDU4MSBsZWdhY3ktdHJ1bmsKKzM1MjY4IDliM2RhZWNhYWYyNTQ0ZDljMWUwZjBjNTg1YzM1ODkwYzYzMWE2OTkgamltLW1vZHVsYXRvcgorMzUyNjkgMTU2MDBhMjM3NDkyYTNmZGQ1MTZhMDk5NzIxNWYzZDYwYzY1ODBjZSBsZWdhY3ktdHJ1bmsKKzM1MjcwIGVlNDRiZThlMTlmY2M5NGEyNjJmMTQzMTdhNzZkMjA2Yzk2MWIyNTAgbGVnYWN5LXRydW5rCiszNTI3MSAyZTYyZmM5NzhkOGFlOTdjM2VjNTYyNTBkZmUxZmZkZWFhMDAyMzVhIGxlZ2FjeS10cnVuaworMzUyNzIgYmQwYWNjNDI4MjllZmU0Mzk3YWM4MmRhNDdmYzI4NTJkOGNlYThlOSBsZWdhY3ktdHJ1bmsKKzM1MjczIDU4ZDVlZGU1ZjRjZTJkOTc4N2M0NTA1M2MyODRiNTcxYzdmMWYwYTYgbGVnYWN5LXRydW5rCiszNTI3NCA2YjdiMmM2MmFiMTI2MDg4NDFmMjU5MGVlOWViMzEzMjMyMDcyZWQ2IGxlZ2FjeS10cnVuaworMzUyNzUgMjM5NDQzOTMzMzI0YjAyM2Y3Y2UxOWQ2ZmM5ZGJlNGU5NjhlMGM1YiBsZWdhY3ktdHJ1bmsKKzM1Mjc2IDc2YzgxMzg5NGVlNmYzMDU1NWVlZTlmNWM1NjliOTA3OTFkYzA1NDEgbGVnYWN5LXRydW5rCiszNTI3NyAzZDkyN2UxYzc4Yzg4NGQxNjdjNmYyYzI0YTU1MjRiZjVlYmJkN2Y4IGxlZ2FjeS10cnVuaworMzUyNzggNGVmNTY4YzY1M2Q5YzZiY2Q4ZGFmNjA3NGVjOWI5ODZiZTE0MDY0MyBsZWdhY3ktdHJ1bmsKKzM1Mjc5IGNlMDEwNmRmNmE2YTYzMjVlMzRhOWZkMWU4YjNlZjJhMjk1Njk3ODYgbGVnYWN5LXRydW5rCiszNTI4MCAyN2JmMDViMmE0ZjllM2I2NGRhMmEyM2NjYTcxYzQwYWY2NDNiMTY3IGxlZ2FjeS10cnVuaworMzUyODEgMTIzM2JkOTVkYTFhOTNmOWUyZmNlZWRjMWZhZjRhNDViYWRhZDlmNCBsZWdhY3ktdHJ1bmsKKzM1MjgyIGJmYjQwYTAzY2MwYzAxZmRjODBhZTFhOWQ4Nzk4ZjQ1NWUxZTZiMWUgbGVnYWN5LXRydW5rCiszNTI4MyA5NWEzMmM3ODY3MmRiM2UyY2JmODA5NzIxNjE4ZmFhMGU4NGRmN2NlIGFzdC1icmFuY2gKKzM1Mjg0IDM1NDk1ZDM2ZWM5NTdhYzY0MDNmYTMwMzBiNzA4YTg1NThmYTcxOTUgYXN0LWJyYW5jaAorMzUyODUgOGQ0OWMyOWU5YWMxZTgxYTExN2U0NWI5YmQ5YzYwODFkZmY3MWI2YyBhc3QtYnJhbmNoCiszNTI4NiAzYmE0ZWE4ZmNlM2U1MDFmMzExZmFlZmMwMDYxZjM1MTRmZGFmNjI2IGFzdC1icmFuY2gKKzM1Mjg3IGZhOTgxMzUwOTc2Y2JlZWU1ZTZjODg5YWEwNjU3YjM4ODg3YTJmMjMgYXN0LWJyYW5jaAorMzUyODggMjVhMzVkOGY0MDgzN2MwM2JmZjUxMTg2ZGUxMzEzODQ1MDVlYWUyMCBsZWdhY3ktdHJ1bmsKKzM1Mjg5IDc4MzYyYWFhNDkxZGZmZTdhMmVjYTdhMWU5Nzg3ZTgyZDhjMDdhZGIgbGVnYWN5LXRydW5rCiszNTI5MCA0MjdlOGJhYTcwNTc0YmUyZTE5YTAyYWZhYTQ1YjM0ZWFiYWMxOWM5IHJlbGVhc2UyMy1tYWludAorMzUyOTEgMzVjMGFjOGUwODcxMzVmNWM1NTk2ZDY2MDkyM2QyNmJjMGMzYmY4ZCByZWxlYXNlMjMtbWFpbnQKKzM1MjkyIDVlZWVkNTFlODJjNGRiMWMyZmEyNWVmMWEwM2Q2OTkzMTM1ZTczMWYgbGVnYWN5LXRydW5rCiszNTI5MyBmNmQ4Y2ZlN2MwMDA5OTZkMjI5NWQ0NGVkZTZlYjhkMzMzNjk3MDJkIHJlbGVhc2UyMy1tYWludAorMzUyOTQgN2MwNTJiZTQwMTY5M2I2ZTM3MmNjMTVhODliMmMxOGFkNTAzMmNmMSBsZWdhY3ktdHJ1bmsKKzM1Mjk1IDY0YzA4ZGI4ZGNlNDQ2MGVhMGJkNzQ4YWUxMzRjOWEyNDM3ODY3NjUgcmVsZWFzZTIzLW1haW50CiszNTI5NiA3OWJjNTZiZjkyMjA3NDdmN2U5OWI2MGNjYzY0Y2QwNDhkMWFmMDJmIGxlZ2FjeS10cnVuaworMzUyOTcgYjBjNmY3YzVhZGU2NWE0ZjQ1ZTUwN2E4MzI1MDhjYzgwZGEyZTk5OSBsZWdhY3ktdHJ1bmsKKzM1Mjk4IDlmNDVhMmQzNjY2ZGU3ZGRhZDQxYjBkNzhjZDNhOTY5ODk2YzZhMDUgcmVsZWFzZTIzLW1haW50CiszNTI5OSAwYTMzNGIyMjZmM2EzMTFkN2IzMTg3MjRjMmI1Zjk5Zjk4YjczYTRlIGFzdC1icmFuY2gKKzM1MzAwIGVjNjIzMmVkOTExNTI1YmU0NDRhNzRlZGRkNWQ5YzAyM2E2OGIxYWYgbGVnYWN5LXRydW5rCiszNTMwMSBkOThkMDI1NWJiMGZmZDhlNGUwMzdjNzUxYmNjNzJmOTkwMmI5MzlmIGFzdC1icmFuY2gKKzM1MzAyIGFiMzM5ZDgwYzljOWFmN2RiOTE2YzZjOGY4OGM2ZWUwYjU2Y2M5ODMgbGVnYWN5LXRydW5rCiszNTMwMyBhNTQ1N2I2MjAyMjY1OGE5ZWY4ZDg5MTZiYWEyYTNhZjFjZTNjZmQ3IGxlZ2FjeS10cnVuaworMzUzMDQgNzJlOTcwYzBhY2NjMTIyNWQ4NDU2ZjMwYzgxYWUxZGJjMGYxOGQzOSBsZWdhY3ktdHJ1bmsKKzM1MzA1IDM5MTAxMTg0MGEwM2Y3NjczODZkMDc0MzVhNTZkOTUyYzViYTViYTUgbGVnYWN5LXRydW5rCiszNTMwNiAyYzhhNDMwNjNkODJjOGRjZGJmNTMxM2VjMTRjNjAzYTIzOGM3NDlhIGxlZ2FjeS10cnVuaworMzUzMDcgNDcwZjk1YWQ2NzUwN2RiNGY1Y2I0YzM5NDA3MjUyYTNlOTgyYzc0OCBsZWdhY3ktdHJ1bmsKKzM1MzA4IDk3ZWJlNDAxNGVkYzljZTA5YTdmOWFlMWE3MDljNDQ0NjU0Zjk5OTggbGVnYWN5LXRydW5rCiszNTMwOSAzZGE2YzJhZGFkMzQzY2M2MDkwZDUyN2ViMTk2MDI3ZTU4MTg1MWJmIGxlZ2FjeS10cnVuaworMzUzMTAgYmRmMDA2ZGVlNjk4NmI4MDVlZmNiOWM4MDFiNTdkZmY4ODQ4NmIyNiBsZWdhY3ktdHJ1bmsKKzM1MzExIGExNTdjYzIwZjFiN2RiNWU3ZmFhZTZmZGVkN2IyZjEwMGFiNDg0OTYgbGVnYWN5LXRydW5rCiszNTMxMiAyMjYzMjUwZDdiMmZkMzAyNTY3YTRkNTFjZjhiYjQ0MmVkMjQyNzJjIHJlbGVhc2UyMy1tYWludAorMzUzMTMgYTZkOGQ1YWNlNmE3OGQ1NWM3NzkwY2Y4NGJiY2IwZDg1OGMzOWVkZSBsZWdhY3ktdHJ1bmsKKzM1MzE0IDM4MjgzMzlhZGY4NjdjYWU2ZjFiZTI2ODNjNWZjYjRhZjQxYmRjYjQgbGVnYWN5LXRydW5rCiszNTMxNSAxMTlkMDE4MmJkNWU0MzM2NGMwOTQ0MmZjZDhiZDQ4YzMwNmI0OTBmIGxlZ2FjeS10cnVuaworMzUzMTYgYzMwM2VjMDE5Y2IyYzhkMTA0MzAxYTYwNzczODI1NzE3NGEwNmEyMiBsZWdhY3ktdHJ1bmsKKzM1MzE3IDljYWM5ZDBiMTllMzEzMWU4NTgwMDU4ZWUzZWFlNWVjNjA5MWMyYTEgbGVnYWN5LXRydW5rCiszNTMxOCBjYzc5NDMxODlhNWJjYWMxM2MwMjdkNmQwY2QwYTkyZDFlOWU2NzQ1IHJlbGVhc2UyMy1tYWludAorMzUzMTkgYzc1YTRlZGQxZTUyN2YwNmQ0Y2IwYjk2MmJmZjYwNWE2MGYwNzI2ZiByZWxlYXNlMjMtbWFpbnQKKzM1MzIwIGYxZTBhN2M0OGYzNjAzMzlkYjgzNzQzYWVlOWY5ZjFjZTM3MmFkMTAgcmVsZWFzZTIzLW1haW50CiszNTMyMSA2ZGQzOGU0NTg2ZmZmZDhhNjc1YzA0NGMxODEzNTg3M2IzZTYxN2Q4IGxlZ2FjeS10cnVuaworMzUzMjIgZjQ1N2YxOGY1OTIyMTM5ZmE3MjU3MWIwMDdmZWE0MzMxOGE0OWZjMyBsZWdhY3ktdHJ1bmsKKzM1MzIzIDQ3NWJmNGU3OTIwZWRmY2M2OTg0M2ViOTAwYTRiMzM0M2FhMzVmZmEgbGVnYWN5LXRydW5rCiszNTMyNCA3YTc2MWNhZDc1MTNkMzdkOWFhMzA2MmI5ZmRiYmZmYzhkZWVjNDAzIGxlZ2FjeS10cnVuaworMzUzMjUgOTExYjMyMTVkMGRjNDZkMGIwNDM4MDU4ZWQwZGIzZjFkOTdiN2ZmYiBsZWdhY3ktdHJ1bmsKKzM1MzI2IDFjMDY2MzcxNmRiMzU3ZGI0Mjc5YThmMDI2MjNiZWY5MGIzZTA3YjEgbGVnYWN5LXRydW5rCiszNTMyNyA4YTM5YTk4Yzg3ODAyNGMzZGYxYWViMzBjZDA3MDdlNjQxNGJiOTE5IGxlZ2FjeS10cnVuaworMzUzMjggNDYzMmZjYzU1NDRhMTQ2Y2NkNDNjODFjZmYwY2JmNmViZWQ2ZjhlYiBsZWdhY3ktdHJ1bmsKKzM1MzI5IDgzNTAyZTMxZTA2ZTE5ZDA1ZThhYWI2OWIwMTk3MWVhNGQ3N2IyOTcgbGVnYWN5LXRydW5rCiszNTMzMCA3ZTRlMzEzN2IyNTI3YTI5ZmYxZGM3MjlhMDZhNjk0ZWZlM2I1OTZkIGxlZ2FjeS10cnVuaworMzUzMzEgNzhmNzU4YWJjNzlmMjllMzNhNjVkYjEzYTNjNDAwYWZhMTcwYjIwNiBsZWdhY3ktdHJ1bmsKKzM1MzMyIDhlYzNhYTg3OWVlZWEwZmY5MDM0N2EwYTMxMzA0NDZmODdiMDg1OWIgcmVsZWFzZTIyLW1haW50CiszNTMzMyAzYzliNGZjM2VmMTQ3YzA5OWNjMjBkNzA2NGNjODAxM2NjMmJkOTM1IHJlbGVhc2UyMy1tYWludAorMzUzMzQgYzM3YzQwN2ZhZjUyZWQ5MmMxMmZkNzRkOWI3NjNjOGUxYmIyYjYxOCBsZWdhY3ktdHJ1bmsKKzM1MzM1IDE5YjZmZWMyZTUyZDI4YjI0MGNiNWU0MTBkZDYxODJmNWUyOGVkYTQgbGVnYWN5LXRydW5rCiszNTMzNiA2NTBlZjAwOWUwOGMxOTZmYTQ2YmQ3Mjc0ZDEzZWVjODUyNGU1ZjQ2IGxlZ2FjeS10cnVuaworMzUzMzcgNjg4MjI4YWIwNWFlYjU3NDI1MTBjMWJkZjc5ZjMyZWM2YzdhODUyNSBsZWdhY3ktdHJ1bmsKKzM1MzM4IDgxODNkZDFhNGZlNmJiY2YyZmU5NjRlOTA4ZDRlMmYyNGYzMTg4MzEgbGVnYWN5LXRydW5rCiszNTMzOSBhOWZkNDc2NDRjMGY3OThjZTVjMjNjODY0MjA3MzExMTQ5NTRkNjkxIHJlbGVhc2UyMy1tYWludAorMzUzNDAgZjJkOTRmZjE1YWM4ZjQyNzlmMTljZjNhOGNjNGYxYjliZDRiMmJhNyBsZWdhY3ktdHJ1bmsKKzM1MzQxIDVlNzQ1NWZiOGRiNmI1ZmU0YWI1ZjVmZGEyZmRiZjRhNTUwMGViM2YgbGVnYWN5LXRydW5rCiszNTM0MiAyMjIxZjk2MDE4MGRmNzJlYTQ4ZmZmYjQxMGIyMjhjNDBhOWVhMjc1IHJlbGVhc2UyMy1tYWludAorMzUzNDMgMGIxMzc2MTgyMGIwYzFkODg5OGVlNWNjYmRiMmU2MThkZmI5OTZjZCBsZWdhY3ktdHJ1bmsKKzM1MzQ0IDdhYmY0MjQ3OTg4MGU1ZjU5NWFmNmVhM2Q3YjcyNWJiODkyMTZiYWEgbGVnYWN5LXRydW5rCiszNTM0NSAyYzYxMjNkOTI1ZmVlOTZmZWQ1MDM3YzJmY2M1ZTE0MTM1MmZjNDk2IGxlZ2FjeS10cnVuaworMzUzNDYgNTQ2ODVkOWZmYjg3NmJhNGJmOTdhMmY4OGZhOTEzYjBjZDdhYTQ4ZCBsZWdhY3ktdHJ1bmsKKzM1MzQ3IDRiMmQ2ZDEzMDA2MTk5OWE5OWRhZDhmZmNkZjIwMzIyZGIwNDkzOTMgbGVnYWN5LXRydW5rCiszNTM0OCA2OWFjNjcyYjQ5YjNlYzdhZWQzM2RiNmRmNThlOTYxMjU4OGY1ZTU5IHJlbGVhc2UyMy1tYWludAorMzUzNDkgY2EzYzk5OGFmYTU1NWZkMzNkZGM1NTFiMGRkNjRhZmRhMGQ4M2Q1YyBsZWdhY3ktdHJ1bmsKKzM1MzUwIGM3MjNiMGMxYTdlMWRiNGFlY2EyOGU1M2MyMDBmNDRiZDUxNTc2ZTAgbGVnYWN5LXRydW5rCiszNTM1MSAyNmE4MGYwYWY5ZjNhZTc1YTIyZDA2MDcxMDY2NTZkZTFmMzM3YzliIGxlZ2FjeS10cnVuaworMzUzNTIgYzY3NTNkYjljNmFmOGUyZWQwNGZiMDY5MDk1NzQyNDNhN2JmMzRmNCBsZWdhY3ktdHJ1bmsKKzM1MzUzIDcwNmQ2ZDExZWUzNjM4MTkzZWE2Y2IzZTI5MzlhZjk1NjQ1N2IwMmQgbGVnYWN5LXRydW5rCiszNTM1NCAxMjM3MThkMGRjMDllNDg4NTM3ZGM3YjIyYjU1MmVlMTA0ZWZlZGM5IGxlZ2FjeS10cnVuaworMzUzNTUgNjVjNTAyYjYwYjRkMTljMTIyNzE4ZDAxYTRjNGNhZGQwM2I3NGIyZSBsZWdhY3ktdHJ1bmsKKzM1MzU2IGFmMjVjY2M3NWZlYWNiOWU2NGI3NjgyNmExOWM3OGRiODU5NjJmYWIgbGVnYWN5LXRydW5rCiszNTM1NyAwNWUxYzI3YzBhNzRkODFiNTBjNDI2ZTUwOTI2Y2QzMjlhNzkzMDZmIGxlZ2FjeS10cnVuaworMzUzNTggY2Q4N2ZmNmVhODE0MGVmM2UyMWQ3Zjk4NDc3YmNhNjdhYTRhMjMyMiBsZWdhY3ktdHJ1bmsKKzM1MzU5IGYxZDBmYTY5OGI3MzdiOGMzNjIyYWY1MDliOWRhNDYyNWI1MWFhMDYgbGVnYWN5LXRydW5rCiszNTM2MCBkN2ZmMDUxMzdjZWEzZGY1NjUyMzNiMjNhMTEyYWE5NWI0Y2M1NGI0IGxlZ2FjeS10cnVuaworMzUzNjEgZjNjYjRjYWQ1ODVlNjY5NDk4ZjcwY2QyMDFmYWQ2NzAxM2FhMDUzZCByZWxlYXNlMjMtbWFpbnQKKzM1MzYyIDA2ZDgyNGY1ZjJjOThmZjU1ZmJmOGQyMjAzZGFkZTU2YTNjMzY5MjkgcmVsZWFzZTIzLW1haW50CiszNTM2MyAxNTU1M2ExYjdhMTdhMTAyNzQxMDE0Y2Y3NzIzMGI0OTIyMWU2N2Q0IGxlZ2FjeS10cnVuaworMzUzNjQgMDcxZWUwZmY3NDY3ODk2OGMyY2M4ODY1MzAzZTk5NGYzMGQ4YmNkOCBsZWdhY3ktdHJ1bmsKKzM1MzY1IDJmZWQzMzFkZTAxNGE0YzJjZjllNjcwM2Q5MDFkMGI4NzU2NDUzNDUgbGVnYWN5LXRydW5rCiszNTM2NiBmZDIxMDNhZTZmMjlhMWUwNmIzZmY4Y2Y1NDhhZGI2NGZjYTJkNGEyIGxlZ2FjeS10cnVuaworMzUzNjcgOGVjZWU4ZjQ3MTA4YzhiNWE3NWNkZWRjZGMyZDc2NWYwNjFjZGViZCBsZWdhY3ktdHJ1bmsKKzM1MzY4IGFlOGRiZjUwMDE3MmExYWMxYjkzNTRiMThlMTk1MGNjZTE3MGM0MmMgbGVnYWN5LXRydW5rCiszNTM2OSA4MGJkMmI4NWVkOGExZTk5NzlhOGU2OWE0M2U3ZWU2OGJiZjVjZDc5IHJlbGVhc2UyMy1tYWludAorMzUzNzAgZGZkYmMwMDU4ZDg1OTBlMjE4NTljYTAzNjc2NWFhNGViZmQ3ZWY5NiBsZWdhY3ktdHJ1bmsKKzM1MzcxIDA5NzlmYTA2MmRlYmZlN2Q2YzVmMDU0YzI4N2NiYjJmYmFiNDNlZjggbGVnYWN5LXRydW5rCiszNTM3MiAyNDhiZWI5OWEzMDRjOTNlYmE0NjQwZGRhODI4ZTAzYjMwZTQ2MzBjIGxlZ2FjeS10cnVuaworMzUzNzMgNDZkZjA4ZWIwODM5ZTljZjU2YTgwZjA4NzBjOWE2MTkxMjdiNTIwYyBsZWdhY3ktdHJ1bmsKKzM1Mzc0IGMyZGY4YTVjMzU3ZTAwZTYwMWQzYmUwYWMxNDUwNjUzNmZkZjMxMGMgbGVnYWN5LXRydW5rCiszNTM3NSA3MzlhYjlkZTJhMWJhYWQ1ZmUxMWI4NzgwYjNhNmVhY2EyMTEyYzIwIGxlZ2FjeS10cnVuaworMzUzNzYgNWIzODk4ZDliYTU5NzdhYzY4MDRiY2JiOGNmMWNhYWFjMDFiYTU5ZSBsZWdhY3ktdHJ1bmsKKzM1Mzc3IGViYmE1NTgyZGMwZGI1MzYxZjRiNDJjMDMwZWY0ZTI1MjYzOGExZGIgbGVnYWN5LXRydW5rCiszNTM3OCBiYzAwNjY4MmFjYjIxYTFlMWVkY2UxYzAxMjhmNWM1MDVhOGQxM2Q3IGxlZ2FjeS10cnVuaworMzUzNzkgOGY2MDIxN2E3NTQ3NTk5ZGEyMGE1ZjI0MGVhN2MzZjViNTE1Y2Q4ZSBsZWdhY3ktdHJ1bmsKKzM1MzgwIDQ3ODkwYzM5NWViYWEyMGU0YmUxY2I3Zjc1NGM0ZmI0Y2JjYmY0NWMgbGVnYWN5LXRydW5rCiszNTM4MSA2MzVlZWJjNDczYjA2NWM3NTRjOGZjZTQzZDdhMzIzNmE0MzAxMWU1IGxlZ2FjeS10cnVuaworMzUzODIgNzA4MGEwMjEwY2YxODdmMjA5YzIzMzNiMzZjNTg5M2IzYTA1NDE2MSBsZWdhY3ktdHJ1bmsKKzM1MzgzIGQzNGU3ZWFmNGNkNmE3NDdlODM2ZmVkNjFjYTkwYWFlNjhjMDNjNWYgbGVnYWN5LXRydW5rCiszNTM4NCBiNzk1NDMzZTBiZDkxOTQxZDhkN2MwYTkxNmFkMTFiOTNhM2VkOWM5IGxlZ2FjeS10cnVuaworMzUzODUgMWIwMmM3N2NkY2ZlMTM1YzBjMzI3ODI0ZmY4OWZjZTIyOWM2MTI4YiBsZWdhY3ktdHJ1bmsKKzM1Mzg2IDE1NDNhZmFiMWI2NzJiMTI0N2IxYmU4NjA1YjE4NzQ3YTE5ZDkyYzcgbGVnYWN5LXRydW5rCiszNTM4NyA3ZTRkZDkzZjRiMjcxMzEyNjYwNjE5NDBhNGE4ODhkNGQxZWE0ZDM2IGxlZ2FjeS10cnVuaworMzUzODggNzJlMzhiZDk0ZTU2OThmNmUzMDlhZjMyMDIwOWYyMzlkMzc5MTMwYyBsZWdhY3ktdHJ1bmsKKzM1Mzg5IDMxNTc3YzI4MTVkZTUxZDk3YTI4NDZlZjc0OTMxZGY1NzhhZTViMzUgbGVnYWN5LXRydW5rCiszNTM5MCBiNGU0ZGJkMjRmZTc3ZmM0ZTJlYjZhOGE2Y2YyYzA5OGM5MGY1NzM0IGxlZ2FjeS10cnVuaworMzUzOTEgMjI4ZDI2NGM1ZmJiZDlkOGFiMTUzNjQ1N2ZhMjg5ZGJkMmNkNzc5YSBsZWdhY3ktdHJ1bmsKKzM1MzkyIGRkNjllM2Y1MjI1YmFmZTUwODk4MWFjMmRkNmRmMWI5ZWY1ZjJhYTEgbGVnYWN5LXRydW5rCiszNTM5MyA1YmQ0NTU2MzhjN2E4YTQ5ZDRkZjMyOWE4YTJjNGExNzM5MGYzMGJkIGxlZ2FjeS10cnVuaworMzUzOTQgZWM2YmEwM2JhOTYyN2RlYjhmMzQ2YTA2NGMwMWNjNGZjN2VmOGY4MiBsZWdhY3ktdHJ1bmsKKzM1Mzk1IDA0ZWIyZWJiNDZlMjdhMWYyNmZiODc3MDVlZjlhODQ3ZDlmOTAyNjIgbGVnYWN5LXRydW5rCiszNTM5NiA5NWJmYjY1M2ZmZmJhMDEyMDg5YTIzZWQ0YThmMzU5ZTk2ODkyYzY3IGxlZ2FjeS10cnVuaworMzUzOTcgMTI1M2Y2ZTIwY2RlZTA1YjRkNmQ3N2Y1MmM3Nzg5NDhiODFjZGM2YSBsZWdhY3ktdHJ1bmsKKzM1Mzk4IDBkNTNlY2YyMmQ5MTUyM2RhNTAzNjRmYzNiZTMxZTNhNmU4NjRmYTYgbGVnYWN5LXRydW5rCiszNTM5OSAwNDcxNDgwODljMzVkNTllN2FjYmFmYmM1MWFmNzMyOGM3NzE5Y2I4IGxlZ2FjeS10cnVuaworMzU0MDAgNDJmODgyMDY4NmM5ZWJhN2Q5OWE5MGRiODQzYjBkMWJhMGE4NDAwMCBsZWdhY3ktdHJ1bmsKKzM1NDAxIGVlYTY3NGJmN2I1OWE4NmFlMjE1OTZmODk5MzM1OTIzZDRmNGQ0ZjggbGVnYWN5LXRydW5rCiszNTQwMiAzMGUzMDViZmRkZGJkYzQ4OGQ3NzUxYmNlNTYxZjhhZDA2NTJmYTQ0IGxlZ2FjeS10cnVuaworMzU0MDMgYTBmYjI3YjQ0ZDc4MzgzYTM4YmZmN2IyMmYyMDM4YzViY2I1NzM5ZiBsZWdhY3ktdHJ1bmsKKzM1NDA0IGRmMDY0NzljNmU3Y2QxMWQyZDQ3MTdkNmZjNjBiM2JkYTFkMDMxZTUgbGVnYWN5LXRydW5rCiszNTQwNSA1NzYwYjRkZDNhMjI0ZTQ3N2UxZjFhZTU2YTVmZmM1NDY5M2JmMDNhIGxlZ2FjeS10cnVuaworMzU0MDYgODNiMDM4MmUwZDM2MjVhYTlkNzRiMDc0NjM5NzRiZWVhMTVjODExMiBsZWdhY3ktdHJ1bmsKKzM1NDA3IGQxMGM3NzhhZjE2N2EwZjNjZWY1ZmUwNTRkMzc4YTAyMDczMDY0YWMgbGVnYWN5LXRydW5rCiszNTQwOCA3Njk0NDA4NGU3NTZhMTZiOGQ1ODFjOTA0ZTE2NGZmOGY4NmU0NWY5IGxlZ2FjeS10cnVuaworMzU0MDkgMjQzNjQyYmJkMDNmMzVlNDVlMWM2YThlMzk3NGVkMzEzNDA3MTFjYiBsZWdhY3ktdHJ1bmsKKzM1NDEwIGJlNzgyZDA3YzUxOGQyOGIyNTgxNmZhODQwNmFiZGRlYjUxOTRlMmEgbGVnYWN5LXRydW5rCiszNTQxMSAzNWNiODExNGI0NWMyNWIwZTkzYTIyNDBjNzk0MmY2NDNhYmYwZjQyIGxlZ2FjeS10cnVuaworMzU0MTIgZWYwNmMyMTI0Y2IwNmUxZjUwOTNkNTNjZGNkMzc2MGZhNzI1ZTljNSBsZWdhY3ktdHJ1bmsKKzM1NDEzIGYyNjAwNDQ4ZTg1Yzk1MDY1NzdjNjA3NWIwMDkyMWE4ZjkyZGFmZDEgcmVsZWFzZTIzLW1haW50CiszNTQxNCA3ZmZmZGI5NGExNzJkYTQ1ZDIxYzFlNmQ2ZjhmNTgyNTkwNWIwNmRjIGxlZ2FjeS10cnVuaworMzU0MTUgZjI2ZDgyODZhNDNlOWU0NWM0ZmYwYTkyMGZmOTcwMzRhZWJhMmYxNSBsZWdhY3ktdHJ1bmsKKzM1NDE2IDAzNjkzYWY0NmFmYmNlYmU2NmU4OTkwOWY2OTBhNjA0N2UzZjU3ZDIgbGVnYWN5LXRydW5rCiszNTQxNyAyNmNmMjU4NmYyZmQyOTllMjA3NjlkMDg0ZTM0OGFjNTQ3YTBhMTY2IGxlZ2FjeS10cnVuaworMzU0MTggYjg5OTJlNzgxODQwYTA4NWEzNDJjNTA1MTMyOGZhNjg1ZGY1MDQ3YSBsZWdhY3ktdHJ1bmsKKzM1NDE5IDIwNmQ4NTc1ZjY0NDE5ZmE2NmQzOTZhMThiMzk2MTc1OWJmMWMyNDcgbGVnYWN5LXRydW5rCiszNTQyMCAzNWY1NmUwODcyN2Y5NTk1MzNjOTZiNTNjY2MwNTRmOTAwMzJkMjljIGxlZ2FjeS10cnVuaworMzU0MjEgMTUyYWRhZjc2NWViMmYwNWYwNTIxODkwM2FlNjgyMWQ0ZjMyYjhmNSBsZWdhY3ktdHJ1bmsKKzM1NDIyIDg4ZTljMDQ0NGQ0ZGRhN2VjNzg2M2IyNzJjNTg3MDhkYjc2YWI3YWMgbGVnYWN5LXRydW5rCiszNTQyMyAzZjY5M2E3NzI2OTRlMjMxMTk3MDhmODRkZTg0MjY4ODc4Y2FiZjlhIGxlZ2FjeS10cnVuaworMzU0MjQgYmE5ODk5NmI0ZDUwYTgxY2JiNjBlNTllY2ViMTU4NDhkOWU1YmM3YiBsZWdhY3ktdHJ1bmsKKzM1NDI1IDlhNGM0OWM1YWMwM2NhOGIwZWQxNzExZTQxNWIyZTNkYjUxODk5MmQgbGVnYWN5LXRydW5rCiszNTQyNiBhZTYwMzdhM2FkY2U5OTU1NmM1MjAzNWVkZGVjOGVmZDhjN2VjZGFiIGxlZ2FjeS10cnVuaworMzU0MjcgYTM4MzBhZTI5NGFlNjgzZGIyMWM0MWE0N2ZlNzQ4NGRjNTRkMjZjMCByZWxlYXNlMjMtbWFpbnQKKzM1NDI4IGFlNmZkYTk2MGQzOWJjMzA0OWRhMDU0MDI5YjI5ZDFlY2Q0NzAwMmUgbGVnYWN5LXRydW5rCiszNTQyOSA2MDZmMDQ3M2E5NjY4N2Y0ODlmNWZjM2MzODAyMTQ5NTM0NGU0MTYzIGxlZ2FjeS10cnVuaworMzU0MzAgNmJjY2E0NzkxODQ5OWI1ZGVmMTA4ODRiYzhjMWFhY2U0MTViYTQyYSBsZWdhY3ktdHJ1bmsKKzM1NDMxIDA4YzNiNDkwNTk2MWRmNjAzMmRiNjQ0ZDdhOTEzNTgyMzA3NzdiNDkgbGVnYWN5LXRydW5rCiszNTQzMiBhNmJjZjRkZjFhODU3NmRiYTlkZGVkNTdlNWU5MDFhMTU0N2U2OTg1IHJlbGVhc2UyMy1tYWludAorMzU0MzMgNTMwYTBkZTM1MTdhYWYwZTk4Mzc4M2U5YTc1YWI1OTE5MTVmNDUyOCBsZWdhY3ktdHJ1bmsKKzM1NDM0IDI4MzBkOGUxYWYxODVhNTlkYzkyMzU4ODFiZjY5YWZhMjQ1MDBiZGQgbGVnYWN5LXRydW5rCiszNTQzNSBmNzM3NGUzYjI3OWE4OGM3MzIyMWYwMGRjOTk0NWRiMTBiZGM3NzdlIGxlZ2FjeS10cnVuaworMzU0MzYgMmJmYzg4NjZlYTk5Mzg2OGVjMjI5ZjcxNGI1MTQzYjQ0MGVmZDE5MyBsZWdhY3ktdHJ1bmsKKzM1NDM3IDdiYjAzMDA2NmVhNGI2NTA5NzMxMTRlZWRlOGE0OGRjNjY2NTMwZDAgbGVnYWN5LXRydW5rCiszNTQzOCBjMGE1NDJhMWZjMWM4YjliN2JjYTBhZTY1ZDUwNzcxNzRhMmE5Y2U4IGxlZ2FjeS10cnVuaworMzU0MzkgZGE3OGI5NmI2YWFiZWIwM2U1OGY5YWMyMzVmOWFiNjBhMzg4N2U4NyBsZWdhY3ktdHJ1bmsKKzM1NDQwIGJiM2JjY2IzYjc3ZDVhYTAwMGY1MTE2MjhjMzZhNTI3YWE3MDgyM2IgbGVnYWN5LXRydW5rCiszNTQ0MSBjZTgzYWIwN2VhMDczMDg4NjRmNjFkOWRjMGY4ZjNkM2UzZjNkOTJiIGxlZ2FjeS10cnVuaworMzU0NDIgNmI3NTA2MDQ2NGY0NDYyN2Y3N2Q5ODU5ZWU5NTc5M2FjYTY2NmI4ZCBsZWdhY3ktdHJ1bmsKKzM1NDQzIGMzMjM4MWY0ZGM2ZjJlNTQ0N2Q1NmRiMmQwYjM1MzQ3YzNjOWQ5NGUgbGVnYWN5LXRydW5rCiszNTQ0NCAwMTZmMDA2ZDcxY2MzZmJjMGZlNGVmZTM5M2Q2NTk4OWE2MTllMGMxIGxlZ2FjeS10cnVuaworMzU0NDUgYWFmZTVmZWY1OGJhYjdjMTIzYjNkZDk3Njk0NzFiZjc5Nzc5ZDUzMiBsZWdhY3ktdHJ1bmsKKzM1NDQ2IDgyMzI3OWFlNDNlYjEwYWY5NmYwNDQ1ZDlmZGZkZWU1NjA3NzEwYzYgbGVnYWN5LXRydW5rCiszNTQ0NyBhODg1ZTRkNjRhZDBiODk5NDcyMDkyMTlmN2EwNDk5YTkyNjc5NzIzIGxlZ2FjeS10cnVuaworMzU0NDggY2U3MGYxNDQ2ZjM5OWUxMmU3MjJiOThhMDIyN2U5NzNlNzVhMDdhZCBsZWdhY3ktdHJ1bmsKKzM1NDQ5IDBmYjUwNjZmYzJhN2ZkNDY4ZjBlNWI1YTk3MDhlZjE3MTI4MGY0N2QgbGVnYWN5LXRydW5rCiszNTQ1MCAxMmJmMzdhNTgwMTVhZjkzNjliODlhNzdiZGNiMzRlMjI3NTY5MmE2IGxlZ2FjeS10cnVuaworMzU0NTEgNWU4YzZmMzhlMTViNWFjZTE1Y2E1Nzk3MDBkMWY4YWE0YTdmY2QxYSBsZWdhY3ktdHJ1bmsKKzM1NDUyIGY3YmZkOGY5MWMyYjkwYzc0MjMxY2ZjMmQzNTNmMGIxMmU0ZWU3MDAgcmVsZWFzZTIzLW1haW50CiszNTQ1MyA2ZDhhMTQxNDgxNTliMWJkNjJhMjIxNjNiNzYyMWIzMDE2NTQzNDkyIGxlZ2FjeS10cnVuaworMzU0NTQgYWQ1YzYwODUwMjNlMjQ5MzEzOWUxNmMxMDFkOWEzN2E0NzNkODJiYSBsZWdhY3ktdHJ1bmsKKzM1NDU1IDMzMmQzZmZhZGYyODdlYjI0YTRlY2ZjY2QxMDkyMThjNDdmMDVkNjAgbGVnYWN5LXRydW5rCiszNTQ1NiA1MDc0MjJlYWE3NjM1OTNlN2I5NTk5MGNjOGUzODBlMWQ3YzljM2IyIGxlZ2FjeS10cnVuaworMzU0NTcgOTJkNDAyMjA5ZTkwZjk3N2VmMzViOGYyN2NlMjk0N2YwMzUyZGUwMiByZWxlYXNlMjMtbWFpbnQKKzM1NDU4IGQwODc3MjY0MTdlYThhMTNlZDUzOWU1YzQxYTdmMWUyMjJmMWE2MzQgYXN0LWJyYW5jaAorMzU0NTkgMDNiMGZkMWNkNzIyNTg0YWFiN2I2ZDk2OWRmNzI2ZTRkMzYwYmNlOCBsZWdhY3ktdHJ1bmsKKzM1NDYwIDZiZjg3OTg1YWExZTk4ZTBhODRlMWI3NjVlZWRjZTRjYTY4YjI3NDkgbGVnYWN5LXRydW5rCiszNTQ2MSA1ZTYzYzJlOWI3OTI1MzEzNzAyMmFkYWRhMjY4M2U1NGE5NzBmNjE5IGFzdC1icmFuY2gKKzM1NDYyIGNlYjZhYWRkYWJjYzVkOWE2ZjQxZGJjNWIyZjFhYzc2OWIyYjhlZGMgbGVnYWN5LXRydW5rCiszNTQ2MyA1YjIyNDdiOTUzMjNjMzI3ZDUwYjNhYTg0ZmI3NjJmZDhhZTVjZjE4IHJlbGVhc2UyMy1tYWludAorMzU0NjQgMzZhMmQwZThhOTkzMzUwNDlkMjYyOTczYWMzMWNiMmEzMjA0N2Q1MSBsZWdhY3ktdHJ1bmsKKzM1NDY1IDkzZmI0MDgxZDEwN2ZiNGU5OWI1MjU4MjE4M2NmYjI2MTlkN2Q1MmUgYXN0LWJyYW5jaAorMzU0NjYgZmZhZTJmMWZkZDQ2YzhjNmQxODk5ZTEzYzVlOTNiNTc2MzUyMjZlYSBsZWdhY3ktdHJ1bmsKKzM1NDY3IDQ5MGViNjRiYzVjOTdiYjViMDhhNjJhZmQzYjU1N2IzMmRhOGZkNTcgbGVnYWN5LXRydW5rCiszNTQ2OCAxNzllMDQzMDdlY2QzZGE4YWYyMWU0MTIyM2Y4YjBkYjMxYjJlNzE1IGxlZ2FjeS10cnVuaworMzU0NjkgY2VhYWRiZDdmMTlhN2UyNmY0NWVhODUxYjE3YjJlNTY5MWNlZTM2YiBsZWdhY3ktdHJ1bmsKKzM1NDcwIGQ5NDhkZWU2ZjRhMWJlZDliZTE5NTg1ODk4ZTMxOWIxZDNkNjdlMDggbGVnYWN5LXRydW5rCiszNTQ3MSAwYjAwODZkNTNiOGU4Nzk1NzYxNmM0OWFiMDQ2ODE1ZWYzZmNjYjI3IGxlZ2FjeS10cnVuaworMzU0NzIgYzRlYmY3Y2ExYmRkMDFmZGQ2ZjUwYTUwZjM0MzVjYTJhYjllM2U0NyByZWxlYXNlMjMtbWFpbnQKKzM1NDczIDY1YjBjN2I1NjFkYWY0MmY2N2NmMTU0NTk3NjY4NDk1YjkyMGQ3ZjQgcmVsZWFzZTIzLW1haW50CiszNTQ3NCA1MmJhMWEyMmNjMmUxYjBmODIyMjllZTU0ZGY4YzhiZGNmNDU0ODM5IGFzdC1icmFuY2gKKzM1NDc1IGNkNDc2NmIwNjM3ZWExZDIyYjJmNmIwNTFmODYyMTZiOWFiYWM1NDAgbGVnYWN5LXRydW5rCiszNTQ3NiBkNjNjNTYyZWJiZTU3NDJkMzkxNmNjN2ZhMTBkYzE0ZGZlMjE3N2Q4IGxlZ2FjeS10cnVuaworMzU0NzcgOTEyNjBmYjNjODE0NzYzNzcxZWFmZjQ0YmM3ZjgwOTcyMzc3YTE2ZCBsZWdhY3ktdHJ1bmsKKzM1NDc4IGNjN2E5ZmU4MGIxYjc1NjBmNzc2OGY1YzM2ZTFkZTY2ODQyNWQ0ZDMgbGVnYWN5LXRydW5rCiszNTQ3OSA4MjBiYjgxOGQ2OTg0YzU5YjZiMjdjMmIzODUwNzZhY2JkYjc4NjJiIGxlZ2FjeS10cnVuaworMzU0ODAgNjYwZmMyNDJhNzY2OWIwNmJjZWVjODM4NzFhNmM5Y2IyMDQ0ZmUxNiByZWxlYXNlMjMtbWFpbnQKKzM1NDgxIGZkMjZmMjllN2VhYjhmMmZlMWE0MWQ1N2I5NmVlYTBlOWY2N2YwZjEgbGVnYWN5LXRydW5rCiszNTQ4MiAwNDIwZDNjZmU0YTRhYWZkYzEzZDhmYmFkM2Y1Mzg5YWUxNGE0NzJhIGxlZ2FjeS10cnVuaworMzU0ODMgOGVhNDVjZmUxN2ZjNjAzOGZiZDBhZmIyNDNlZmVlMTE3MjhlNWRiYiByZWxlYXNlMjMtbWFpbnQKKzM1NDg0IGM4Mzc5NTMyNDA0Mjc0MmM2M2NmY2QzODhjNDYyYmUyMDMyNmY2MTIgbGVnYWN5LXRydW5rCiszNTQ4NSBmYWZmZDk1NzJkOGQzMjM5YTAyNTE4ZjY1MzM1NTI2MGZlZTVjM2I0IHJlbGVhc2UyMy1tYWludAorMzU0ODYgYzc1ODc2NDMyZmM2YjVhYjZkZjExMzYwN2FlYjYzNWUyNTlhNmZlZSBhc3QtYnJhbmNoCiszNTQ4NyAyODQ2Njk0MDliZWI0NmFiZDFjNWFkYmQzNjk1NzMyOGM4MzM5NTk1IHJlbGVhc2UyMy1tYWludAorMzU0ODggZDY5ZmIzNWYxZWFlYTQzOGE3NWNkODJjYTk3OGViNmQ5NDBkMjBkNCBsZWdhY3ktdHJ1bmsKKzM1NDg5IDdhNDM0ZjQ5M2MzZWE4Yjg5ZWRjOTRlM2NlNjFiYWZiZWY4MDhmMTQgbGVnYWN5LXRydW5rCiszNTQ5MCA2Mzg2NTYxMWVkMmZlMzUyNDUwMmNmMDU3YjhkYWQzNmYyODM2YjU3IHJlbGVhc2UyMy1tYWludAorMzU0OTEgMjZkMGZkMDNkNWIzMGVkYWY2OTEzYWNhMTkyYjk2MWQ2ZDQ0MjA2MSBsZWdhY3ktdHJ1bmsKKzM1NDkyIGM0ZDlhOTZiZTJkZGNhNDUzNWI0MzdlOTcxM2ZlZWRkNDMxYWU1MDIgbGVnYWN5LXRydW5rCiszNTQ5MyA2NTA5MzU0ZTc4NzY5ZGI5YTJhNzZlMzM3ZTk2NjRjODdlNzgxZWEwIGxlZ2FjeS10cnVuaworMzU0OTQgMWVjM2Q2OTg0YjBmMTA4Nzc2MjhlMmRhNzYyYTYzOGE4MTg5M2EyZSBsZWdhY3ktdHJ1bmsKKzM1NDk1IGI5Njc2MjdhMmY0ZmU5YzlhZDU0ZmJkMDQwNmIwMzMyNzhlYTMwMzcgbGVnYWN5LXRydW5rCiszNTQ5NiBjZTY4ZDdjMDYyOWNjMzgxNjcwZWFiYTE3NmFmZGVlOWU1Yzg4ZmJlIGxlZ2FjeS10cnVuaworMzU0OTcgZTgzMTI0MDJjODEzZDhlOGQzMDgyMTZiZWZhOTk5ZDg2ZTQ3M2EzYyBsZWdhY3ktdHJ1bmsKKzM1NDk4IGMwMjM1MDFjMzhkNzgzZTlhMzQwZWZiM2E3YzkyMDYxNzEwYTRjZmUgbGVnYWN5LXRydW5rCiszNTQ5OSA5MjBhZDQ0NjVhYWVhNWEzNTQxNWZiYWY5ZmI3OWY5MzJjN2RmMjBmIGFzdC1icmFuY2gKKzM1NTAwIGQ4OTgyMzJkY2RkYmJhODA1ODIyZmJkM2NkMDE0MDgzNzdjODE2ZjQgbGVnYWN5LXRydW5rCiszNTUwMSBlZTBiYTAwYjI3N2NkZDIzODU5MzVjNjZhYWYyMGY0ZDhjNDNlZDc0IGxlZ2FjeS10cnVuaworMzU1MDIgNmZjYmY2YWM2OTlhODkwMjk2ODlhMTc4ZTBhY2UzM2M1MjI1YjBiOSBsZWdhY3ktdHJ1bmsKKzM1NTAzIDU3OTY1YjJkYjIwYzZkYWQ5Yzk3OTA2MjhmM2U2OWU3NzQ5ODAzOWUgbGVnYWN5LXRydW5rCiszNTUwNCAwN2EyYjRjNWQ1MDM0MTc3MmZiYzJhZWU1ZTNjMjg4NmY4Mjk0MTMyIGFzdC1icmFuY2gKKzM1NTA1IGRiYThkYjQxMmUzNTQ5OTZiMTgzODUwZGMzNWU2ODQyYWIyMTVlODAgbGVnYWN5LXRydW5rCiszNTUwNiA0OWVjMGQ4ZjA4ZWNkM2Y3MDU3NDFlMjEwYmZmZmIxMGVlZTdhMzhjIGxlZ2FjeS10cnVuaworMzU1MDcgYWUwMGQyZDEyN2QxZDBhN2Q3OTVlNmI0OWNlMmQ5Mjk2ZTdmMWM1ZCBsZWdhY3ktdHJ1bmsKKzM1NTA4IDFmODA2Y2JlMmNlMDQ4MWM3N2VhYTM1ODNiODhiMjdkM2Q0MzFmZDggcmVsZWFzZTIzLWJyYW5jaAorMzU1MDkgNGViNDU4YzM5NDFkNWU4NWU3MzM1MDZmZTEyZDE3ZTNiNzE0MTE5YiBsZWdhY3ktdHJ1bmsKKzM1NTEwIDMxMDFjMDBmNzU0N2YwMWVjZTQ5YWQ0ZTI4ODFhYWNiMDllN2E0MDkgYXN0LWJyYW5jaAorMzU1MTEgYzA2MWYyNWY3NGUwY2RlYmE3ZjI2ZWJmNzA1MzU5OWViOWFiN2FiMCBsZWdhY3ktdHJ1bmsKKzM1NTEyIDkwNzQ1MGU0YmM2NzU3ZGExYTRhN2JkODg0NDZjZmE2MmFmZWE2YzAgbGVnYWN5LXRydW5rCiszNTUxMyAzNDc1ZTQ1Njg0NzEwOTU4ODg3YWI4MzRhNmU3Y2YwMTRkYWE3YjIzIGxlZ2FjeS10cnVuaworMzU1MTQgOGJmMTYzZDA2ZDI5YWY4YWVlOWNmYWU3NTdmY2ViZmQyYmI0NGVkZCBsZWdhY3ktdHJ1bmsKKzM1NTE1IDdiNmM4MjI5Nzk5YmFlOWJmMWJiYmE2YmM1NTg1YmNjYjY5YWQ0YTEgYXN0LWJyYW5jaAorMzU1MTYgNjcxYWRlZTZhM2UzYjExZGQ3ZWNhMmI0Zjg2ZDNjOTc5MGNiZTEzZCBsZWdhY3ktdHJ1bmsKKzM1NTE3IGY1NGNkYjAxYTFhZDVkZjQ0ZjA5YWQxODkzMzEzZWZkNmZiOWQxZjMgYXN0LWJyYW5jaAorMzU1MTggMTRmOGM5MzNmODhjMDk5YzAwNjk2NjExOGY3YjkyMjRhMWUyYTRmNyBsZWdhY3ktdHJ1bmsKKzM1NTE5IGZlNTU0MWFhZTJkOGY4NzRmNzEzY2I3NjIzMzc4MWE5ZjRlNjQzNWMgbGVnYWN5LXRydW5rCiszNTUyMCAxZDNlNDhjY2FkNTczYTU0MWMzMWUzZDc5YmI0MjM2NWE3MDU3NzJkIGxlZ2FjeS10cnVuaworMzU1MjEgNDUxNDRjZGI3Nzk0YTRhNjVjOTdhMzYzODMxYjdkODQ0MDNmZTdkYyByZWxlYXNlMjMtbWFpbnQKKzM1NTIyIGVmMTgwODU2ZGY3NjE5MThmZDhiZGRmMGNjN2NmNjA1N2U4MTRhNGIgbGVnYWN5LXRydW5rCiszNTUyMyBjMmIwMWFhNDkwZTE0N2I1YjczY2JjYjhjZDM4MjE2NjNiOGU0MjhlIGxlZ2FjeS10cnVuaworMzU1MjQgMmViMzE3NWZjNTliNzJmMmNlOWFjY2NlNmZjODhlOGU4ZGI3YzI5NyBsZWdhY3ktdHJ1bmsKKzM1NTI1IDhhNzE0ZmVjZDA1OWJkZDgzN2Q4N2E2Mzg1ZjkwZDIzMGY0MWU3NTYgbGVnYWN5LXRydW5rCiszNTUyNiBhNWJkOGI0ZjNlNTVmMTMyOTUzNjYxOGE1MGY2NzEwZTc2OWFiZjA4IGFzdC1icmFuY2gKKzM1NTI3IDU1NWRjODQ2MjI2ZGQyODYxMzIyNTY5ZGI2OTRiOWJiNGVlMGNjOWYgYXN0LWJyYW5jaAorMzU1MjggYjM5ZmRjOWM4MDdlNjViMzI4OTM3NDM3MDdhNmQ5MzQ3NWZhZjcxZiBsZWdhY3ktdHJ1bmsKKzM1NTI5IDE0MDc0ODQ4MzYxMjBiNTMzNGZmODFkMDAxMmRjZWM3M2Q5YmFhZTcgYXN0LWJyYW5jaAorMzU1MzAgYTczN2Y3YTBmMmI4YmFkYTRkMzhmMGI3ODIxZDE2OGY3MGIyNzBkZSBsZWdhY3ktdHJ1bmsKKzM1NTMxIDE2YmY0ODRiMzg2NDk0NzQ4MzFlNjBkYjZjY2Q1YTMzMzE3ODVmMjQgbGVnYWN5LXRydW5rCiszNTUzMiAzZTQ5ZWIzMjQ3MGJiNzg3YWFjZDRjYjZhZDVlMTQ0MTRjNWMwNzcyIGxlZ2FjeS10cnVuaworMzU1MzMgYmU1ZDJhMDdiYzI2OWJhZGIxNGE3YzdmNDZjYjc1MDU2ZWUxYjVhNyBsZWdhY3ktdHJ1bmsKKzM1NTM0IDk1MzZiMjk3ZDgzYzJkNzhlOGQ2MzE0NjM4NzliMDRhZDQyNzEwMDQgbGVnYWN5LXRydW5rCiszNTUzNSBmNGE0YWM3MzMxZWM5MWU4NGQ4ZmQ0ZTliNjYzZjg1NDcxZTAyNWZkIGxlZ2FjeS10cnVuaworMzU1MzYgNjQyNmIzN2JiMmEwZmRhODIzMmU3YzZjMWE0ZTA2Y2FlZTAxYjFiZSBsZWdhY3ktdHJ1bmsKKzM1NTM3IDM0NzNkZWEzYWE0YzA1MDg3NzdhNjc5YjM4YWNjNDM0M2VmOWMyOGUgbGVnYWN5LXRydW5rCiszNTUzOCA1ZTkxNmQ0NmEzZmI2OTI2MjAzZDJkMWUxOTUwNzdmZGZhOGVkOGI0IGxlZ2FjeS10cnVuaworMzU1MzkgMjRlMDcwZTk1YmY4YTFkMTUzNzNlNDJkNDVlMzZlOGVmZTg1N2Q0NCBsZWdhY3ktdHJ1bmsKKzM1NTQwIDc1YTkxZmQ4YjUwY2ZiMDY4MWNkNGUzZjAyNDhmZmJlNTExZDMxOTIgbGVnYWN5LXRydW5rCiszNTU0MSAxMjAxOTI1MTYwMzM5MmMzMDNhODRhZDNkNDQzOTNmMmQ0OTFiOWE1IGxlZ2FjeS10cnVuaworMzU1NDIgOTgxN2RlZTVkOWRmMDg1YzQyYzFjNmFjNjgwMGM0MDk5YmZjZjhjNyBsZWdhY3ktdHJ1bmsKKzM1NTQzIDdmNDY0ZGQ2ODBhYWMwOGU0YWRiYjdlYTJjYmY3NWE3MzhkOGYyOWYgbGVnYWN5LXRydW5rCiszNTU0NCBlZjU5MWU3YzM0ZmQ4ZTA5ZjU1ZmRkZGFlZmVmNjFlOGI4YjFlYWNjIGxlZ2FjeS10cnVuaworMzU1NDUgNzYwNTNhMWRkNDUyNDRkYzFhYThkMzZkZTJjNzhiOTNmYWY3MWEwOSBsZWdhY3ktdHJ1bmsKKzM1NTQ2IGZiNTU3YWM1YmI5YTI1YjE0NTVhOTlhMDNmNTAwNjA5MDA2ZDI5OWUgcmVsZWFzZTIzLW1haW50CiszNTU0NyA5ZDg0Y2VkNjRkMTBjOWFlNjhlZTU2ZWQ0NDM5ZjNiODBiMGYyNGFiIHJlbGVhc2UyMy1tYWludAorMzU1NDggMTY0Y2UxYmNhYjZlMWUzMjBmYmFmMDFjYWQ4YTUwZDcyOWZlOWYzMCByZWxlYXNlMjMtbWFpbnQKKzM1NTQ5IDMzZDQ4ZGY5YTkzNzgzNDU0Nzc4YWNkOWRlNGUwNmU1YTI1ZmMzNWIgbGVnYWN5LXRydW5rCiszNTU1MCAyOWJlNzI5YjMyYzNmZTk0MTY3OWFkZGQ3MjUzZjIyZDEzZGU2Y2QwIGxlZ2FjeS10cnVuaworMzU1NTEgY2M0N2MxZWFmODBhYjcyMzkwOWVmNDZhZTMxNzdhMzUyMWVhNzk4YSBsZWdhY3ktdHJ1bmsKKzM1NTUyIGM0YmFlMDg5YmZjOGYxMTViYTkzYjU0ZTU4YTQ0YmNiMmYzNjYzZjMgbGVnYWN5LXRydW5rCiszNTU1MyBlYzM3Y2IxYzBlZDg4ODdjZTRjN2JlYTFmOTg3MTkyNmM3YzI4ZWY5IHJlbGVhc2UyMy1tYWludAorMzU1NTQgZDQ0OGNjMjYxZjY5ZjRiMDgyNzVlYzBkZTcwOWVkMGQyZWRmMDdiZSBsZWdhY3ktdHJ1bmsKKzM1NTU1IGNlMWUwYjQ5NGNhNzAyNGMyNzM4ODlhZjMyNjc1MGQwNWE5OTI2YTcgbGVnYWN5LXRydW5rCiszNTU1NiA2YTE1MDU2MTMzNTg0YmVlMzU4ZDZhMzUxNDcwMWE0YjcyY2Y3ZTVhIGxlZ2FjeS10cnVuaworMzU1NTcgMjNlNWNjMzRhOTgxMmU0MzRjZDAzMDNjYzdiOGQ4ODk0MWVlOWJmMSBsZWdhY3ktdHJ1bmsKKzM1NTU4IDgzNWI2OTBkN2VkM2E1MDcyZDllNGY1YjU0ZjAxNDRlMTE1ZGE5ODUgbGVnYWN5LXRydW5rCiszNTU1OSBkYzViZDg0MjJkNTI2YWNiYmQyN2VhMzgxNDI2MjIxNWQwZjUzZDI3IGxlZ2FjeS10cnVuaworMzU1NjAgYTRlYWVlZDQwOThiNGQ4MzA2NjIwYWI4NmZkYTQ2ZDk3NGY4YTFmNiBsZWdhY3ktdHJ1bmsKKzM1NTYxIGZlOTQzMzVmMzhlMjQ5NzRkMTc3OWI1MjAzNjBkZDJiMGVmMDM3YmYgbGVnYWN5LXRydW5rCiszNTU2MiAyMDI0YjRlNmUzOGRhODM1MjU5MWI5YmUxNmZhODNkZjcwNmMzMWI1IGxlZ2FjeS10cnVuaworMzU1NjMgYmVmYjFlYTZjODhlYjJiZDgxMDJiYjE5OTU2NTAzZGMxNjg4N2JjNSBsZWdhY3ktdHJ1bmsKKzM1NTY0IDI5ZGE4YmRmZWI0ZTMxOTJiM2I5YTU5NWE0NzQ2MWUxNDM5ZjRhMTEgbGVnYWN5LXRydW5rCiszNTU2NSA4NTg2OTdkYjFlNGJlZGM3ZmYwOGQ2MjQyYTUxNDJiMGUxMzJlYWZlIGxlZ2FjeS10cnVuaworMzU1NjYgNTJjMTcyMjg5YWRkMWEzYTM4NzEwZDI0MDEwYmY4MjEyNDI2MjZmNiBsZWdhY3ktdHJ1bmsKKzM1NTY3IDRjZTA5OGYwMDVmMDAyZjdjNDNiYWIwZmZjYTYyZDlmNmE3MzQ5MDMgcmVsZWFzZTIzLW1haW50CiszNTU2OCBmMWQ0NDI5NWViZjdkOWU5MTU1OGU3YmM5ZDU1MDhkMWE2NWU1MzRkIGxlZ2FjeS10cnVuaworMzU1NjkgYmYzNzQyOWY2ZDlmMDUxM2NiMjVmM2YxMGFjOTMwMTkxMDk5ZThjZSBsZWdhY3ktdHJ1bmsKKzM1NTcwIDFjMTE3ZGJiMmRlZjRmOTNhNjBiOTMyYjcxNTc5ODUzZTRlNzE4OWMgbGVnYWN5LXRydW5rCiszNTU3MSA4NDZiM2VlN2UxMDZmMTIyZjhkN2UzYzE3ODY3YWI5M2M4NTQwMGQ0IGxlZ2FjeS10cnVuaworMzU1NzIgYzc2NjA2ZjM3MmQxMzRiOTdjYmY3NWNkMjhjODQwNjU4MzJiZmQ3ZiBsZWdhY3ktdHJ1bmsKKzM1NTczIGU2Mzc5YmRhOTFkNzk2OGFlMmE5NjBmYjAxYWJhMjk5YTEzM2NlNWUgbGVnYWN5LXRydW5rCiszNTU3NCAzN2RjOGM4MGNhN2VkOTIxZmU5MjgzMTQ0MmJhYjg0YjI4NGU2MDE4IGxlZ2FjeS10cnVuaworMzU1NzUgMjc3YjVhMmYwOGY1YzlmNDA5MWRhMjBlMjA2N2E4ZmMxNTFhMjdjZSByZWxlYXNlMjMtbWFpbnQKKzM1NTc2IDU5ZmUwOTgyNDM2M2IwZTRmYWJmY2E2MGNhNGQwNWU1YWNlZmRiOWQgbGVnYWN5LXRydW5rCiszNTU3NyBjMDUxZGM2YWIzNzQzODdiYTI2MWJlNmRmMTViYWZiYzliMzQ4MmFhIHJlbGVhc2UyMy1tYWludAorMzU1NzggMDI2MWUzODAxMWY2ZGU0MmE0NzY5NWRjN2Q5NWQwMzQzZGM1Y2Y4MyBsZWdhY3ktdHJ1bmsKKzM1NTc5IGNlYmRhMjNhYWFkYmM2OTEzMzcwMmIwYTUxMzFjMDEwYzNhNTNjMmQgbGVnYWN5LXRydW5rCiszNTU4MCAwNzgwMzI0NDRlY2M4OWMzMGNhZWI0NmVhYWYyNmIyMDM2NGI0NTNmIGxlZ2FjeS10cnVuaworMzU1ODEgYmM2ZWM5NWY1NzkyM2Q3Zjk0ZjQ1ZDA1YTE2ZmE5NWYyZGU5MGQ2MSBsZWdhY3ktdHJ1bmsKKzM1NTgyIDZjNjkxMGZkMDEzYTYyNjU1MWU4NDU3OGZlODhiY2ZhZjYxMWVmOGQgbGVnYWN5LXRydW5rCiszNTU4MyBmOTgyMTVkYWEzNWZjMjU3MDU0ZDA1ZTE3OTQ4OTgxODc4Nzk2MDdiIGxlZ2FjeS10cnVuaworMzU1ODQgN2ExMjA0MDA4ODhhZWY2YTgyN2UyYmFjNWJlMjY4NWVlNzQzNDliMCBsZWdhY3ktdHJ1bmsKKzM1NTg1IDFiZTU0OTlmMzc4ZTk5NzAwYmIxOThiZjY5NWQzMWI5NmUyODYyOWQgbGVnYWN5LXRydW5rCiszNTU4NiA0ZGI5NTg3MjkxOGViOTI4OWYxM2M3OGIyMThjMDM5MTkyMDdkNzk5IGxlZ2FjeS10cnVuaworMzU1ODcgODE4NGM2Nzc3MTNmZDYxZTAxMDU1MDkyOTE3MjlmYzEwZWUwNTNkYyBsZWdhY3ktdHJ1bmsKKzM1NTg4IDlhMTFhMjM2MTU0NzQ1ZGYzMWE5YTU4MjExMDg0NGU1ODYzNmViOWEgbGVnYWN5LXRydW5rCiszNTU4OSA0YjA5MzBiNTY1NjVmZDIwZmUyOWQ3NzY1MTRlNTI3NjhlYzU1NGY5IGxlZ2FjeS10cnVuaworMzU1OTAgNzVlMmY3NThlYzVhMDZiNmRhM2EwZGY1MTMzNzFhZDI2ZjFmOTNjMCBsZWdhY3ktdHJ1bmsKKzM1NTkxIDk0ODk5NmY2OTlkMmUyOTJhZDNkMjBhYzMxNTkwNGFiNGNmYmMxNzYgcmVsZWFzZTIzLW1haW50CiszNTU5MiA2YjE4NThkMTJmOGNhOWViYjJlNWY3MTgxNGE3NWQ4MGMyODA4ZTU0IGxlZ2FjeS10cnVuaworMzU1OTMgMTY4ZGFjZmJlZTY1YWE3YzlmY2JhMTUxYzdjZmRmYzAxYjI2YTU2NCBsZWdhY3ktdHJ1bmsKKzM1NTk0IDgxNzBhYWRjOWVjYTc0ZWRmODNlNTI1ZGI1M2EwN2FlZTlkMmM4NGQgcmVsZWFzZTIzLW1haW50CiszNTU5NSBiMDgyYjRkNDgxYzI1NjJkZGQzMWMzYzgyNDA0Yjc4OTM4OTM1MmMzIGxlZ2FjeS10cnVuaworMzU1OTYgYTRhYTdkNjFlNGFmMTk2ZWY2MGI0MDlmODZhZWNhMWRkMTlhNGNlMCBsZWdhY3ktdHJ1bmsKKzM1NTk3IGEyZTgwZmE3MzU5YjU1MDAwODBkNzcxYzJiYjk3MmY4MmI5OWY3Y2EgbGVnYWN5LXRydW5rCiszNTU5OCAzMzFkZThiOWQxZWQ1NWM0NWZiYTM5ZWY1Nzk1OGEwNzQ4MjAyYzg5IGxlZ2FjeS10cnVuaworMzU1OTkgMzRkNWViMWU1MDdkYzI3YWYxYjZjNjk3ZTYzZDlkNDFlNjBmNTcwYyBsZWdhY3ktdHJ1bmsKKzM1NjAwIGQwNzg4MzkxYzEzYmNmMjMwNTcyYjc4OGY1ZmZmYjBlYTE0Yjk5YzYgYXN0LWJyYW5jaAorMzU2MDEgYWFkYTkxYzVkNmQ5YzcyNTZjYWNiNjM2YWI3ZGNmMzQyYTQzZmFjNyBhc3QtYnJhbmNoCiszNTYwMiAyMjkwODUzYWI0MGE2MmQ3OTUwNDU4MmZlMzMyNGZjNGEyMGJkYTIzIHJlbGVhc2UyMy1tYWludAorMzU2MDMgNTkzMjQ2OWRjYjM1OTMzMjc3Y2VhYzc1OWIxMDU5ZDMzNGZlODc4ZSBsZWdhY3ktdHJ1bmsKKzM1NjA0IDNlZjU4ODg0YmRkNTIxYTE2ZWRiNTRjOTJhY2JlMjJlYWUyMTU4MTcgYXN0LWJyYW5jaAorMzU2MDUgZjRlNWY5YzJlMmIzYjkwYzdjOTMwMDM1Y2U0YTNjZDM4OTFiMjVlZSBsZWdhY3ktdHJ1bmsKKzM1NjA2IGE3NmFkODNhNDEzZjBlMTIxNTBiZDQxMzc0ZjgyZWY3MWY4YjgwMWYgbGVnYWN5LXRydW5rCiszNTYwNyA5YjE3ZjNjYzIzZWRjZWY2YzI0YmE5NDQ0ODk0YTk4OGQ4YTc2MWZmIGxlZ2FjeS10cnVuaworMzU2MDggZTI2MWUwYzJjNzJkNzVmZDM3MTNmYTg0YTFiMzhkZTNkYzllNDZhNSBsZWdhY3ktdHJ1bmsKKzM1NjA5IDY0ZTJmN2VjNTU3NmIzYTU4NDJmYWY0NTc5YWU0NmFlZTE2OWNhNGIgbGVnYWN5LXRydW5rCiszNTYxMCBhOTEwYjgyMmIxMmNiM2ZjNGZjZTE5NjM3OTI5NTc4ZmU4NDRjYjg3IGxlZ2FjeS10cnVuaworMzU2MTEgNzM5MTI4YzY3YzMwZWY4ZDk4N2U3OWY2MWNlNDFlZmJjZGQ4MzdlYSBsZWdhY3ktdHJ1bmsKKzM1NjEyIDQzMzY0MmY5M2Q1OWRiYWQ0YzhhMmZiYTRjMTcwNGRmZTc2NDNiNGIgbGVnYWN5LXRydW5rCiszNTYxMyBlNDJjYmFmZjgwMjdkOTFmYWFiOWNkZmI1MWI0NGY4NjY3YjZhYzkzIGxlZ2FjeS10cnVuaworMzU2MTQgODExMTc5MjNhZThmMGM0NWMxZWE3ZTIzNmI5ODM4MDllNmYzYzU1OSBsZWdhY3ktdHJ1bmsKKzM1NjE1IDY3N2MwYmYwNTczNWU4YzE4NjNmZWQyNGQ5ZTEwNWYzYmYwZDI2YzggcmVsZWFzZTIzLW1haW50CiszNTYxNiA0YzA2ZjRmYWVkODc3YmFiMTliM2NkYjU3OTRjNmJkZGM5MjRjZDMwIHJlbGVhc2UyMy1tYWludAorMzU2MTcgZDIwY2I2MzU3ZjVlYTE2MWIzNWExMDQyNGM0MjUxMTdhMmUwYmYzZCBsZWdhY3ktdHJ1bmsKKzM1NjE4IGIxZWEyZjNmNDY3ZWY3ODU2MmRmZDc2ZDE4MWY4ZTZiMGI5ODFmNGYgbGVnYWN5LXRydW5rCiszNTYxOSBmYWE3MTRkZDg2ZDNmMTA1ZDNhOGMwYmFlMmFhMTZiZjAyNjFmNWI1IHJlbGVhc2UyMy1tYWludAorMzU2MjAgZjRjMWMzZTYyN2RmOGZlODY2MzFlMjQyOWNlYzExMzQ5ODAxNDMxZiByZWxlYXNlMjMtbWFpbnQKKzM1NjIxIDgxNGNjOWY4M2ZhYWI4ZGUyNTllNjU0Y2Y4YTNmOWRkMjQ0NDYxY2IgbGVnYWN5LXRydW5rCiszNTYyMiA2NGNjMTYzZWVhZjEyMTM1MTM2ZDcyMmEwY2E1YTc3MzdlODZlNzI3IGxlZ2FjeS10cnVuaworMzU2MjMgOTI1NTI0NjcxNDVlYTdkOGYyNmI0ODk3YTAyZGIyZmU2YzIwNTY1YSBsZWdhY3ktdHJ1bmsKKzM1NjI0IGM1N2NmYTgzMjhkNDNhYTk5Y2U2ODAzNDM0YzUzMTQ1Njg3Yjg1MzkgcmVsZWFzZTIzLW1haW50CiszNTYyNSBjNGM3ZjBmMzlmZTliODM3MWU4NjUyY2YxMjg2NjU0MjcwMWYwNzk1IHJlbGVhc2UyMy1tYWludAorMzU2MjYgOGQzODJhYjk5YmRiYTllOWQyZWI1YzY3NmQ0MTY4OWM0Y2QzNWFkNCBsZWdhY3ktdHJ1bmsKKzM1NjI3IDY5NmY0YmE5ZGRmN2IxNmQ0ZDllYThhNzllNGE3MDk1ZGM4YzM4Y2YgbGVnYWN5LXRydW5rCiszNTYyOCBhZGI0MmE3MTE2OTYwNGQzNjA5YWMyZmJkYjY0Y2Y4Y2QxYzcyNTBiIGxlZ2FjeS10cnVuaworMzU2MjkgMmNmZTE0Mjc1YTA0NDA4YjYzZjBkNjI5OGUwZGM3YzgzZDg5ODdlZiByZWxlYXNlMjMtbWFpbnQKKzM1NjMwIDNhZDQyYjdkNDY2MGFjM2MxOTUyMTUzMjc2ZDU3M2Y0ZGNhOTgzZjAgcmVsZWFzZTIzLW1haW50CiszNTYzMSBmOGIyOGU0YWM0MzVhOTc3ODk0ZTAyMzdhNGZmZGVkNjRhOGE1MjZkIHJlbGVhc2UyMy1tYWludAorMzU2MzIgNWY2MGIyMjYwMTllOWYzYjQxM2FmMGVmODBmZGJjMmFhOThhYTE0YyBsZWdhY3ktdHJ1bmsKKzM1NjMzIDhiY2IxMjFjNTQxMTFiZmJhMTczNjMyNWQ1MjU1NTExYjNlYWY5MDAgcmVsZWFzZTIzLW1haW50CiszNTYzNCAwNTk4OWI0ZDZjZTgxNTdkNmYyNTJlYmMyNGFiYjY1OWU3ODkzOTg0IHJlbGVhc2UyMy1tYWludAorMzU2MzUgMGQ4ZWUyOGJmNmYwM2ZmY2NhYTQwZmVjMjhmNTkzM2NjYmI5YzZhYiBsZWdhY3ktdHJ1bmsKKzM1NjM2IDU3NjVkNjU2ZTBlZmQ4N2QxY2MyNzg3NjQ2Nzg5MzNlZDlmMzI2OTMgcmVsZWFzZTIzLW1haW50CiszNTYzNyA1MDEyOGZmMTk5NjU4YjE0NzY5ZWNhYzBjNDhlZmJiZjhmOGMxZmJlIGxlZ2FjeS10cnVuaworMzU2MzggZDA0ZDc4NmFiNDU4MTM3OTUxMGRmYTVmNmNjOTYyYWM1OWUzNGZlMSBsZWdhY3ktdHJ1bmsKKzM1NjM5IGRiZDNmYzIxNGI2NjZhMzY4M2EwY2Q5ZmU0ODRjNTNjNzdlYThmNjYgbGVnYWN5LXRydW5rCiszNTY0MCAwMDcxZDZlYjgwYTFmYTIwOTM5ZTg2ODk1OTcxNWIwNDg3YWViNTljIHJlbGVhc2UyMy1tYWludAorMzU2NDEgYTQwZDc5ZmUyYTY5ZTJhZmVjNTM3MzM2OTYxYjhmYzc3NmU4ZDNiNyBsZWdhY3ktdHJ1bmsKKzM1NjQyIGI0ZWM5Mjk5NTYwZDgwODliMjQwNTU3ZDY3ZjQwNjE3YjU2ZTJmYjAgcmVsZWFzZTIzLW1haW50CiszNTY0MyA1NTIwNDRiNTA1OGQwMThkMjJkMjA3NDNlNmNiZjFiMWQ3MzlkZWIxIGxlZ2FjeS10cnVuaworMzU2NDQgNTFhYWNlZWFhYmUxMWVhZmU3NGQ2MmNiMzQyN2M3Yjg0NmY3MGI4MCBsZWdhY3ktdHJ1bmsKKzM1NjQ1IDE1NjAzN2JlMzU1ZDk4NDYwNzY2ZDBmMDNkYWQ4YmFhZmNiYmMzYTUgcmVsZWFzZTIzLW1haW50CiszNTY0NiA1YTM2ZTRkNWFhOGYwZDQwNTg1ZjQ1ZGViNDAzY2U5MDhhYmU0ZmQ2IHJlbGVhc2UyMy1tYWludAorMzU2NDcgYzdmOWZjYTk0NmQxNmI3MDRjMjNiNjAyODUzNmViOTM2ZmJkZmQwMyBsZWdhY3ktdHJ1bmsKKzM1NjQ4IDAyMGRjNWRmZDVjNWQ4OGRkMGY0NTcyNjk1ZGM0Y2ZjOGM0MDUyY2UgbGVnYWN5LXRydW5rCiszNTY0OSA5ZjVmZTZiMjNlNTkyMGU1NzlkM2E2YmFjYzNkZGQwMWViYTdkNDhmIGxlZ2FjeS10cnVuaworMzU2NTAgMjI3Y2I3NDAyYzZlOWJmNjdhMDBhMDIzNTc1NDY4NzIwMWZlNWFjNCBsZWdhY3ktdHJ1bmsKKzM1NjUxIGM4OGQ0NjEwZjI4M2NiNmQxNjJiOTU4M2NmNDdmZmQwZDJlMTRjZmMgbGVnYWN5LXRydW5rCiszNTY1MiAxZmIyMzEzYWMzY2VlNThmZTdkMzk1MmUyMWE3YjY3OWU3MzUyNDJkIGxlZ2FjeS10cnVuaworMzU2NTMgYzkwNmJiMmExODI0NTUxZmM4OWZjMTRmYzg2N2UxMWY0NmRmMmI1MyBsZWdhY3ktdHJ1bmsKKzM1NjU0IGEyZmIxNjc4NDFlODM4YzI2YmQ0Nzc5Y2ZlZDkxNjFjOWU0ZWNjNDggbGVnYWN5LXRydW5rCiszNTY1NSAyNmVlMWIzZWIzNDUxYTcwYjQ3NjQyY2RmMTJlZGY0ZmZlODQ5NTM0IGxlZ2FjeS10cnVuaworMzU2NTYgMWEzYTQ4Y2JiMTYyOGQ0MzQwYWJkNWIyZTgzYWY2MWUxZDdiZmNkMCBsZWdhY3ktdHJ1bmsKKzM1NjU3IDRjNmZkZWI4ZTJlMDIxN2YzNTZiZjFhZTBhZDk0YzVjZjc0MzYxMDcgbGVnYWN5LXRydW5rCiszNTY1OCBmMzViNGFjYzU5NGY5MGE5ZjYyOThiYTQ1ZDE4MTVlMmY1NzVmMzc5IGxlZ2FjeS10cnVuaworMzU2NTkgNjk5NzA2NTNlY2JmYWM5NGNlNzU4MTVlY2FiMjM1N2I4YzU1ZTU0ZSBsZWdhY3ktdHJ1bmsKKzM1NjYwIGY5Y2Q3OTkyNmZmNzc4ODFhMjEzYzkwOTVjMDkwYjRkMWI1OWMyM2YgbGVnYWN5LXRydW5rCiszNTY2MSA5ODY1OTRjM2U0ZDlkYzEwMzQ2MmNlYzUyM2NmZDYxMzRiMjY3ODIwIHJlbGVhc2UyMy1tYWludAorMzU2NjIgOGMyNjQyMGQxZjIzNTNhMDNjY2NiZTMzNmU3MmM4YmFhYjU5MDVkZSByZWxlYXNlMjMtbWFpbnQKKzM1NjYzIDdiODE3MTE5YmI2NjBiNTMxYTMzMzNiN2JkYzU2MjZlOWY4ZjAzMjkgYXN0LWJyYW5jaAorMzU2NjQgYzY4MWQ5NWNmNzllYzUwYzViODU5MzQ1ZmUwYzExZmY3YmM1YTZiYSBhc3QtYnJhbmNoCiszNTY2NSBjMzcwYWFlOTgyMzIxNjM2ZGI5Y2NlYWRhYjUyMjQ2ZDAxYjRjY2NlIGFzdC1icmFuY2gKKzM1NjY2IGI0Njg0MjM0YmYwNzAxZjA4YTc0OWIxYWQyYzM3YzAxNjM1Y2E3YzEgbGVnYWN5LXRydW5rCiszNTY2NyAyZTUyYzIwZGVhNGY2MWRhOGRhZjBhMjdlYmRhMjg3NjgwZWE1YWQ0IGxlZ2FjeS10cnVuaworMzU2NjggZGQ5M2EzMmFjMzNlZmYzY2I4NmQyNzY3OTk2ODUwNGRiMDRjMjYxMiBsZWdhY3ktdHJ1bmsKKzM1NjY5IGRmYzhjNWY2Njk1OTU4MjE0NGRhYjZlZDljYzE2YTUyZTljM2NhOTIgcmVsZWFzZTIzLW1haW50CiszNTY3MCA4NDhiY2UyMjE1ZDM1YjZkZmZhOWQ4NWZhMTJjYTY2NDc2MjgwN2E5IGxlZ2FjeS10cnVuaworMzU2NzEgYzcwYmIzMjIyN2NiM2JmZTZhMGU4MzNmZGJlOTdmZjQxM2U2M2YzNiBsZWdhY3ktdHJ1bmsKKzM1NjcyIDA4MTk3MmFlMmY4NDQyMWZkNjRhMzIwNmE0NDI2NjQ0ZTY5MGQ0NzkgbGVnYWN5LXRydW5rCiszNTY3MyAyNDEwODllNDM3ZTAyOWU5Y2EwZjIwZTM5OTA3Y2RhMDgwMjllZWNlIGxlZ2FjeS10cnVuaworMzU2NzQgMzEwZGQ5OGVhMDY0NjE5Y2I5ODgzZDgwZTljMWNmMGI2ZGNjNDExZCBsZWdhY3ktdHJ1bmsKKzM1Njc1IGM1NmVhNjBjYjNiZjc3NjNkOTViM2RmMGMwYTAyOWM3OTExYjMwNDIgbGVnYWN5LXRydW5rCiszNTY3NiBjYTJmYjVjZjJmZDU3NWM3MjliZTEyNTJhNjQ2ODM1YmJiM2E2MzBlIGxlZ2FjeS10cnVuaworMzU2NzcgMjc5NGY2MjdlYmFhMDAxNWY4ODc0Mzg5ODVkMjRhZWEwZGY5NzQxMyBsZWdhY3ktdHJ1bmsKKzM1Njc4IDY0ZmNmZjEyMWY3YjVkZWRjNjc3ZTA3OGYyYzQ1Y2RhNDVhNzY2MjEgcmVsZWFzZTIzLW1haW50CiszNTY3OSA2ZTU0YzU5Mjg1M2M2NGM3N2VhODVlNDYwNmNkNWQwNmNmMGQzNWNlIHJlbGVhc2UyMy1tYWludAorMzU2ODAgMDI2NWJmOTkxMmVhMjkxMGQ1ODMxZTcxZmJiMWRlMGI2NTMxMzMyNCBsZWdhY3ktdHJ1bmsKKzM1NjgxIDM1NTQ3MzUzNGM3MDY4MTBmNjc0NjY4MDlkMjNiMDhkYzQ2OTNjZmEgbGVnYWN5LXRydW5rCiszNTY4MiBjNDg4OGE4ZmNmNzA2MWI2NDZhMWY2NGU2MjEwMmRmMTRlZjg2MzA2IGxlZ2FjeS10cnVuaworMzU2ODMgZTk3NTE4YzY2YWNjMDgxNTZkNzJmMzdlNzU5ZDNjNjg4MWZiZjVkZCBsZWdhY3ktdHJ1bmsKKzM1Njg0IDg5NzVkZWZiZjNhOGIwYWI0YWVmMTEzZDhmMTJiNWQ4ODA1ZjVkNzEgbGVnYWN5LXRydW5rCiszNTY4NSBlNzYwOTJkNDkwMmNkNDRkY2Q2ZmM3NTEzNWJhMjIwZjIxNmI2MTE5IGxlZ2FjeS10cnVuaworMzU2ODYgZjM5YzU2ZjhjY2MyYmU0ODY0NWFmOWRlNDAzNjBiNmZhNTZjZDNiMCBsZWdhY3ktdHJ1bmsKKzM1Njg3IDg4ZDYyNWQ5MjhhY2RiYTA3ZTA1ZWJjZmYzNzM1OTc1ZjIxNjJkOGQgbGVnYWN5LXRydW5rCiszNTY4OCAwNTg4MjFkOGFlZmRjNTBjZDQ3ZjliZGM3ZDMzNzE1MmY0NWUzOTBjIGxlZ2FjeS10cnVuaworMzU2ODkgNmIyMzY5OTQ2ODRhZjkyOWM0NjAwMTNlNjIxZThmNDIzZjJjNzU1MiBsZWdhY3ktdHJ1bmsKKzM1NjkwIGNlYzc0MGY5MmZhNDIyNTAwMzU1MDc5NjdmNmUxNjYxZTVkZTA1ZWQgYXN0LWJyYW5jaAorMzU2OTEgYjMzZGRiNDhiN2UwNGUxNTZkODIxZTRjYTUxMWJiNjE5Nzk2OWYzNCBhc3QtYnJhbmNoCiszNTY5MiBlYjZmNThjM2Q5NzI1ZjA1MGQzZGFmYzA0YWJlYjFjNmM2MjBhNGE1IGFzdC1icmFuY2gKKzM1NjkzIDE2ZTc1M2ZmMzFiMjI2OGM4NTU2NjNiYmI2MGY4MDNhOGZhNzZiMGYgYXN0LWJyYW5jaAorMzU2OTQgNGE1NDMzMDZkZmZhMTY4ZjBjNWE4NDFmZWU2NDZkNWZkMDdkYjUwYiBhc3QtYnJhbmNoCiszNTY5NSBmN2Y0MTNjNjU0ZjRmYzNiNGU3NDc2NzdjNDg1MjgwYjkwMmY4N2MzIGFzdC1icmFuY2gKKzM1Njk2IDU1Y2E5N2U3YmQwZmEzNmQwN2IxMmE3YzgyNWRlMzg2ZjQxODVlN2EgYXN0LWJyYW5jaAorMzU2OTcgYjI0MmI0ZDdlMTc3NDI4YjAzNTBmNDJjMjJjNmYwYzAzMzgzMjcxZCBhc3QtYnJhbmNoCiszNTY5OCBlMTE0MGU2MDFlNzIyODRlN2Q3MWFmZmFjMDhjYzM3OGFiOGI4MzcyIGFzdC1icmFuY2gKKzM1Njk5IDczNDg2ZmY2YjU1MmYzODg3ZDg4ODg2NjdlYTc3OTRhYzEyMGYzNzIgbGVnYWN5LXRydW5rCiszNTcwMCA5ZGY1MTg1ZmM1Y2FiZTFhNzc0YzlmMDJlOTA4YmU1NGQxN2NlODZmIHJlbGVhc2UyMy1tYWludAorMzU3MDEgYTU4NmY3NTJiMmJkY2NlZjVmMmQxMDU0ZTA3OTFmMzEyY2YxZjAyNCByZWxlYXNlMjMtbWFpbnQKKzM1NzAyIDcwMzg5NzdjZWE4ZGU2MTMyMWFiNjliZmJjNDViYzRhZGVkYzZjYmIgbGVnYWN5LXRydW5rCiszNTcwMyAwOGEzOTFmZGU2OGRhZjM3NWM4NmU4ZjNkODc3MTU1NmViMjIyMGQwIHJlbGVhc2UyMy1tYWludAorMzU3MDQgNTZmZWQwOWQwMWYzN2VkNDM3MmVlZDgyYTgxZWM4MmQyZmM0ZjA3ZiByZWxlYXNlMjMtbWFpbnQKKzM1NzA1IDRiYzYyMGY0N2ZiNDJlZWUwZjU5ZGIwNWVjODljODJmMDU5YmU2NTYgbGVnYWN5LXRydW5rCiszNTcwNiA4MTYxOWRjYmZhZTdiNTU2NDY2YmM1MmVhYjhkNjY3NDgyNGQxNDFjIGxlZ2FjeS10cnVuaworMzU3MDcgM2M3OTY0MTNmMDVlNzI5ZGUzNDAzNjRhMDJlZmNjOWYzMzEwODhhYiBsZWdhY3ktdHJ1bmsKKzM1NzA4IDM5YzM2NTI2ZDFiMDgyMjNlNThjZWFjYmU0YjY5YWEyMWRlNzA5MjkgbGVnYWN5LXRydW5rCiszNTcwOSBkMDNiNTRlNjBhNjc2YjFmN2QyZWNkZGNlNDFkMmYyNmE2YWVlNmU4IHJlbGVhc2UyMy1tYWludAorMzU3MTAgNGRiMGM4NGY1YzZhMzU5YWNmOTAyNGI2NzUwODJiZTk3Mzg5M2RkMiBsZWdhY3ktdHJ1bmsKKzM1NzExIDNjNjE4YzY5MzllMzM0Mjc3MmUwYTUzZWE3MWQ0OGQ0MmY4NjMzZDggbGVnYWN5LXRydW5rCiszNTcxMiBmYmNiY2RhMTRiOTJlYzMyMzUxOWVkMzY5M2I1MGZkYjIzNzkzNDM1IGxlZ2FjeS10cnVuaworMzU3MTMgMjJhNTUwMjhhNzhkM2VhODA2NTM5NDM5ZGIyN2UyMzZiMDUxNzBkNSByZWxlYXNlMjMtbWFpbnQKKzM1NzE0IDUxODRkNjljMjRkY2I5YzYyMTA3ZDQ0YWQyY2U0ZGQzNGEyMThiOTYgcmVsZWFzZTIzLW1haW50CiszNTcxNSAwOTgwMGJhMmE2NTM0OGEzM2JjZjEwNzYxMDA3MmE2NDZlYWMzNWY3IHJlbGVhc2UyMy1tYWludAorMzU3MTYgOTM5MTdkZDhhODdjMjEwY2ZjNDlkOWVkODE4MTE5MDliN2Y2NGI1NSBsZWdhY3ktdHJ1bmsKKzM1NzE3IDYwODAyOGYzODhjNWM0OWM3Nzc3OGVjMmFiM2VmZDc3NGE1NDEwODggcmVsZWFzZTIzLW1haW50CiszNTcxOCA4ODZkNjZmNTExMDVjNDczNjlkN2NiODA3MzNjMzkwODA0YjZiZDU4IHJlbGVhc2UyMy1tYWludAorMzU3MTkgZjhjMGFjNWJlZjAyOGNjMTVjZWNhYTUzNWVjM2NkOWY5MTM1NWRlOCBsZWdhY3ktdHJ1bmsKKzM1NzIwIDYzYjY4Y2IyYjQ0MmY0ZTY2NGZmYTU4ZDU5ODY5Nzk0MWFlMjQ4OTMgbGVnYWN5LXRydW5rCiszNTcyMSAxZjI5MzRhMzE4Yjc4MWJhNTlmNDQxOTJjZGRkMjcwMjM1Yzk5MzI1IGxlZ2FjeS10cnVuaworMzU3MjIgMTBiYTI0MTYyMzkxMTBlOGFmN2IwNDU0ZDgwOTBkMzlhZjI5ODliMSBsZWdhY3ktdHJ1bmsKKzM1NzIzIGZkYWJiNjgwOGQ1MmZiZmEyNTRiMGUxODIxZGE2MmFmNzM3OTk5MmIgcmVsZWFzZTIzLW1haW50CiszNTcyNCAwMWVhMDNlN2IyNjVmOGI3OGY1OTc4ZWJjOTBhOGI0Mzk0MDNhMzIyIGxlZ2FjeS10cnVuaworMzU3MjUgMDFlMzE2NDg5ZDY3OTkyMjQzNjYwZDFkODBlN2JjYTNiZjY4YjFlYiByZWxlYXNlMjMtbWFpbnQKKzM1NzI2IDY2MzY4MTE4YTE5YmMwMzU4YjNhOTFmZGQ4ZDI5ODM3YzgzNzdjMDcgYXN0LWJyYW5jaAorMzU3MjcgZjFmZDFhZTQyMTM2YTAyM2U0ZjM0N2VhYmQ1OTM3MGVkYmU4OTI1MCBhc3QtYnJhbmNoCiszNTcyOCBjOTIxNDM4MjY2NWY0Y2Y5YjNiYjdlNmFjZWY1MzNkOGRlMDdiYzY5IGFzdC1icmFuY2gKKzM1NzI5IDA2MDE0ZjcxZjE2MzZhOWNmMDQ1NGU3M2VmYTY0OTA2OTc4MGM3NTYgYXN0LWJyYW5jaAorMzU3MzAgNzY3M2JmZjc0MTIyOGI4MzQ5NWRkNzUxMjUzZmYxNjEwOTdkYWNhYyBhc3QtYnJhbmNoCiszNTczMSA0YzM0YWM5ZGE5M2Q0MjQ2NTk3YmRkMWNlMWJhZjg2OThmNGY5N2RhIGFzdC1icmFuY2gKKzM1NzMyIDdjN2EyOTgxNDU1Y2E4YjNiY2I3NTg4NzIzMGIxNGM3YmIwOTExYTEgYXN0LWJyYW5jaAorMzU3MzMgZmY1YTMxYTcxZDlhNmIwZWNjNTU4MzIwZjczNzRmYmJjNzRkYTM0MyBsZWdhY3ktdHJ1bmsKKzM1NzM0IGZmMjU4YzY3MWQzY2NkNTEyZDFhOTIyOWQyOTkwMjkwNDY3NTFhM2QgYXN0LWJyYW5jaAorMzU3MzUgZGI4YzQ1YjllODE4NmVjMmU1MmUzN2RmZWZmNjdiNmZhNDc0MTk4MiBsZWdhY3ktdHJ1bmsKKzM1NzM2IDlkMTYzM2U2YzQyZWI5ZDM4YWFmNWI5MDExZGZlZWMxZWNiY2M4OWIgbGVnYWN5LXRydW5rCiszNTczNyAwNTk3NDBkNTJhZTVjNGU4ZjNkOWM0ZDJlZTY0NWZhZTA2ZDcyMGM5IGxlZ2FjeS10cnVuaworMzU3MzggMzIwMzU0Yjc2NmU3MmQzMDRkYzMwNjI5ZGEzYmIzMzRiNzA4ODNjZSBsZWdhY3ktdHJ1bmsKKzM1NzM5IDEyNmQ4MTU1NDZkMzM3OWZiMzYyYWNiZTczODI1OWM3NDk5ODdjMTggcmVsZWFzZTIzLW1haW50CiszNTc0MCAyMjhlYTc1NzcwZTNkZTgzMmE0MTdkOGY2MTQ3YzRjZDRkNzBmYjZiIGxlZ2FjeS10cnVuaworMzU3NDEgMzBlYTBiMzUyZmMwMmZkYjJkMzEwODhhYWUwN2VhM2FlMjNiNjc2NSBhc3QtYnJhbmNoCiszNTc0MiAzYjQ0MDMzNjA3NzVmMDQyMjMzMzJlMWNlZjMzMzlmMmU0ZjZmZDU0IGFzdC1icmFuY2gKKzM1NzQzIGFiNDllNmZkNzc0NjUwMGUwYTJhZDk3ZGE0OGI4OGZhMjAzNzQzYWUgYXN0LWJyYW5jaAorMzU3NDQgMjBiNWU5YTZlZjZiMGE1YTdhYmUyZTE3NDJlMTQ0Y2M2NDE4YzE0YSBhc3QtYnJhbmNoCiszNTc0NSAyODIyZWQ5NTYzMDlmZThkOTVkZjA4ZTMzM2I3MTc1N2FiNzM1ZGY4IGFzdC1icmFuY2gKKzM1NzQ2IGFhYjc3NmQ0MWI0ZjUxODRhYzQ1ZGM1YmRjZGViNmE3Njc4Y2VkZjMgYXN0LWJyYW5jaAorMzU3NDcgYjYxZTVmOTNlYmUwYTEzMzQwMDg4ZjFlZDY4MTY0YjliZjdiODYwOCBhc3QtYnJhbmNoCiszNTc0OCBjZTc2YTlkNmU2NTMwOGYwMDRhMmU3ZGMxYzE4ZjUzZGQwNTM0ZDg3IGFzdC1icmFuY2gKKzM1NzQ5IDA2MTEwOGE4OTUxNmYxMWY0NWE1ZDJmYmQ5MjVhMWQ4YmYxZGIzMTQgYXN0LWJyYW5jaAorMzU3NTAgMjQ0OGY2ODRjZTllOWM0ZTliZjZiYTdlMmQzMDQxZmMwNzdlOGIxYSBhc3QtYnJhbmNoCiszNTc1MSA0ZjBhMWU3YWQ2OWNhMTU5YzdjZmUyZmQ4YzM0YTQ1NjNlMGY5NWFhIGxlZ2FjeS10cnVuaworMzU3NTIgOGYxY2U3YjBlNDIzZTMyOTYwOWMwYTNjY2I4NGM4MGU0OGY2NmI2MSByZWxlYXNlMjMtbWFpbnQKKzM1NzUzIDY5YzFhYjZiMjYwMjE0MWIwYTdjYTQ1YTQxMzZlYjFmNDQ4YWY3NzQgYXN0LWJyYW5jaAorMzU3NTQgNTRhZTlkZTM4ZjBjMmRkYzAwMjdkNGE0YTYwNmQ2MzE2MGIzNGY1YiBhc3QtYnJhbmNoCiszNTc1NSAwMjA0NDNhMTBjMjAyNThkMzgwNjFiN2YyNTI3OThkNTczZDQ4NWM3IGFzdC1icmFuY2gKKzM1NzU2IGJiMjU1Zjg1NTk5OWU5ZjYwZTUzZmRhN2VjNDA0NTY4ZWIyYzk1ZWIgYXN0LWJyYW5jaAorMzU3NTcgMTgyMjk1MzgxZjE0N2VmZDgzNTk1MmU2MTU1YjZjNTg0MGY3NmQ1YyBhc3QtYnJhbmNoCiszNTc1OCA1NDY1YTJjYjBhZWE3ZTc3M2E2ZGQ1ODZhNjA4YTc2NzdlNzI2ZTMwIGxlZ2FjeS10cnVuaworMzU3NTkgMGM2Njc2MTI0MzA4OWE0M2I5ODQ1MTI0NjgzNjVkYzhmMTU1Yzk2ZiBhc3QtYnJhbmNoCiszNTc2MCA3NjVmZTE2ZjY2NWI4OGQzMWRkMzQ5ZDM5NGEyZjBhOWUyNzhhODAwIGxlZ2FjeS10cnVuaworMzU3NjEgNGJlOGUwMTBiZGI5ZTljMDJjZTJiNzY1NzcwMjMyYWY3YjU4OTlkOCBhc3QtYnJhbmNoCiszNTc2MiAyMDBiZjc5YzAxNTk2MDlkM2M3NWJhZDU2YTQ5MTVkNzk3ZGJiZmNiIGFzdC1icmFuY2gKKzM1NzYzIDU2ZjliMzFhYzY5ZmE0MGY5MmU1NjNkYzY0NDE5YWQxNmJmMzFhNjggYXN0LWJyYW5jaAorMzU3NjQgMzQwZTQ5ZTAxNTc2NjQ3Yjc5MzlmYjUwOGYzMDU1ODcxZmNhNjYwMiBhc3QtYnJhbmNoCiszNTc2NSAwYWVjYzA3ZTM1ZDlmYzYyNWVhNTg4MDA3MjgwZWY0N2JmYzc1YjdhIGFzdC1icmFuY2gKKzM1NzY3IGY5NTBlZjMwOWQ3NTEyZjVlY2FiNGU4MDk3MWYzOWI4NDM4YzVmOTUgbGVnYWN5LXRydW5rCiszNTc2OCAzODM4Y2RlZTFhMjAxYjNjMmU1OWJmMmFiNmMwODdhMTQxNDc4N2IzIGxlZ2FjeS10cnVuaworMzU3NjkgNjE2N2U3OGExN2E4MjZhODM4ZjU0NGI5ZmNkODk2MWUzMDJhY2I3ZSBsZWdhY3ktdHJ1bmsKKzM1NzcwIDBlOWUwYzUzNDlhMGRlZWIwZTE0YjljZTllYThiYTJhMzk0ZTcyZjMgbGVnYWN5LXRydW5rCiszNTc3MSA5MGUwODk0YWVjNWJlZDM4ZDMzMmMxOGU3NDkzMDIzZjI5ZDQwODVkIHJlbGVhc2UyMy1tYWludAorMzU3NzIgNTgzMTc4NTE4YmQwY2QzMDdlODFhNmRiNjFhZDQzODg2ZDczMTUyNSBsZWdhY3ktdHJ1bmsKKzM1NzczIGNmYWZhZWE5M2Q5MDk1ZGM0YTlmN2E3NWU5NmM0NDVhNzU0YmUxODQgcmVsZWFzZTIzLW1haW50CiszNTc3NCBlYTllZTliNzQ2NzI5Y2I1NDRlYzQ2NDExMzZkYzE0YWM0MzJmMGM0IGxlZ2FjeS10cnVuaworMzU3NzUgZjJjZWExNmExZjM4MmQ0Yjk3MzNkOTBmOTgyMDNkMDFmNDVmOGQxOCBsZWdhY3ktdHJ1bmsKKzM1Nzc2IDQ3ZWQ3YmNkZjA4NjQ2YjRjZmJkOTNkMzIwODdhMmViZjhlYjJjZjYgcmVsZWFzZTIzLW1haW50CiszNTc3NyAzMzg1NzdhZmRhYjZkOGJkMTIyMzg2MDhmNTU3ZDViOTg5OTIwNzNlIGxlZ2FjeS10cnVuaworMzU3NzggMWNhM2E2MmEwMDlhZDRjNWRkM2Q0Y2JlMjY4YmNhMTI1YjkzYjhhZiBsZWdhY3ktdHJ1bmsKKzM1Nzc5IGY5ZmFmNTU3MTcyMDJkMzNjNGVhODI0NTNlOWZhODBiNTZiYTAwM2YgbGVnYWN5LXRydW5rCiszNTc4MCBmYWE3ZWViMTE4Y2Y0N2FkYTVlOGJkOTQyNjA1NmEzMDBhNjgwNjE4IGxlZ2FjeS10cnVuaworMzU3ODEgYTQ4ZTYwOGJhNjA1ZmExYmU3NDQ5Mzg5ZDhiY2VmOWVkZDZjMGIwZSByZWxlYXNlMjMtbWFpbnQKKzM1NzgyIDVjYTEwM2MzN2Q1ZTBiZGQ4MGI2ZDY0YzVjNzQ1MjdhODhkM2MyN2UgcmVsZWFzZTIzLW1haW50CiszNTc4MyA1YWI4MTJjZDBkYjc1NjIyNjU0ODA1ZDcyNjMyNjU3M2ZmOGFkYjk1IGxlZ2FjeS10cnVuaworMzU3ODQgZWYzNGRlYzAwNGNkZGY3OWM3ODI1YWI1MTY3YjQxMDNhMzcwNDFkNiBsZWdhY3ktdHJ1bmsKKzM1Nzg1IDIwNGI3YmNlYWQ0Yzk4ZWZiY2VlOGUxNzY2NjI2ZTNkMTc4MTljODUgbGVnYWN5LXRydW5rCiszNTc4NiAzZDA0NmQwNjNhODRhOWJhMDEzNDE2Njg4OTIzNzMzODljODc3OGM1IGxlZ2FjeS10cnVuaworMzU3ODcgMjI3NmRlODkxZmUyZWY0ZGNmZGFkY2IxNmI2NDM0ZmRjNzk1NzdjYSByZWxlYXNlMjMtbWFpbnQKKzM1Nzg4IDBjNzZhOWU1YzgzODJjM2JkNjNhMmEwM2ZiOWMxNjMzMGQyOWM1MGQgbGVnYWN5LXRydW5rCiszNTc4OSA1YzM1YjNjYTViYTkzZDk2YTdiNmE0ZTM4NTJkZWJiMjI0YjljOTVmIGxlZ2FjeS10cnVuaworMzU3OTAgMGU5ZmRiNzZhYzg1NWY5YjNjYmRhOTA3ZmM1ZDVjZjRhZDEyOTM3ZSBsZWdhY3ktdHJ1bmsKKzM1NzkxIDUxZTFiNmRjZmY2MWU5MjJjNzNhN2I1OWYwOTY1ZDZjODhjYTljZTkgcmVsZWFzZTIzLW1haW50CiszNTc5MiA3YTc0OTlmYmM0NTI5OTY2MTQ0YTUyZWJjNGVhNmMxYjgyMWMzNmRiIHJlbGVhc2UyMy1tYWludAorMzU3OTMgNmMxMmEzYmFkN2Q1MzlhZjk1ZGVjZGFiMjcxN2M5NDhiM2UyMzZkMSBsZWdhY3ktdHJ1bmsKKzM1Nzk0IDYzMGU0ZmJjZGVhMjY1ZTdlODAyZDNkNGMzMzYwNTcwNmM1Njc5YjEgcmVsZWFzZTIzLW1haW50CiszNTc5NSBjNWE1NTI1NzgzNDRmNWNhN2Y0NDlkZWRhNzNjNjUyMzllZWFlMjU5IGxlZ2FjeS10cnVuaworMzU3OTYgOWIyYjdkM2I0MmYzYTYxZGM5MGI2NmRiMWEyZjdiNmQ5YmRlZTU4YyBsZWdhY3ktdHJ1bmsKKzM1Nzk3IDY4N2IwYzgyNTRmYWE0NWQyOWQ2OGYyMWFjMzM4OTVmMTA0MDI4YjcgcmVsZWFzZTIzLW1haW50CiszNTc5OCA2NjY3YTFkOGFmYjEwNDhkMGFlYTQ0Y2QzZDkwZGEwYzY5Yjc4Mjc1IGxlZ2FjeS10cnVuaworMzU3OTkgYTQ2MjY0YjkxYTUxOGY5NTRlZWRjYzFkY2RhMjUxYTE0Y2FhYWQzNyBsZWdhY3ktdHJ1bmsKKzM1ODAwIGI2MWZlODI4YjczODg2ZjI2ZmJmYzdlYzVmYTdlZWQ2OGQzZGJhZTQgcmVsZWFzZTIzLW1haW50CiszNTgwMSA1MWE1ZmI2MDkzNGQ3NTIzNzVjMjdmYmFlMmY5NzA0NzE5NzE1ODY4IGxlZ2FjeS10cnVuaworMzU4MDIgMjIyOTA4ZGZiZjU4YmU5ODAzNzQ1MzBhYWNmZDA1MWZhNjU1ZmFmYiBsZWdhY3ktdHJ1bmsKKzM1ODAzIDg2MTVmMjc4ZGE1ZjM1NjgxYmY2YjJlNmI1YTU5ZjM3MWVkMDkxOTMgbGVnYWN5LXRydW5rCiszNTgwNCA5ZjhiZmQ1NDI1MWY3NDQyODk5YTExMjlhOTA4YWIwNjEwMzg5NzhmIGxlZ2FjeS10cnVuaworMzU4MDUgOGIyYTQyOWFmNDJmZjE2NDE1Y2Y2YTU4YWYzMTc0YzFlNTBlNzcwNyByZWxlYXNlMjMtbWFpbnQKKzM1ODA2IGFiNjgwYzRhY2QzNWFmODEzZDAyY2VjNjU3NDkyNjNiYTZkMjFhYjggcmVsZWFzZTIzLW1haW50CiszNTgwNyA1ZWI3YThlMmYzNDUzOTgxNmFiYTQ2NjA3MTI4ZTM2ZDY2MmU0MGMzIGxlZ2FjeS10cnVuaworMzU4MDggYjlmMDkxOTY1MjZlYWI0MDA0ODA5MGZjODhlM2Y2MDc5ODYwM2I2MSByZWxlYXNlMjMtbWFpbnQKKzM1ODA5IGNiYmFjZGE4NDQ4MGFlMmJkODVkMWM2MTI2YmU3NjNjOWY3MTE4OTkgbGVnYWN5LXRydW5rCiszNTgxMCBhMTQyZTRlOTdmMTMxYTBkOThmNjZmN2I4MTIwMGI0OTY1ZWMwODUyIGxlZ2FjeS10cnVuaworMzU4MTEgZThhMzFhYjdhODc0OGU2MTQ2MGZiYWU3NDYyZWRmYTdkNTJmNzNhMiByZWxlYXNlMjMtbWFpbnQKKzM1ODEyIDRkZWU1ODMxNWNjNDFmYjA0ZDdiNTcxMWU5ZWRmN2JlODk4ZjhjYjkgbGVnYWN5LXRydW5rCiszNTgxMyA2NDZjYjAxNDY5NDJlMWY1N2QwM2FiYTczNmQ1NWMzYmZhNTdhMWY3IHJlbGVhc2UyMy1tYWludAorMzU4MTQgODJiYzY5OTYxMDIyZGM5Y2M5YzJjYmNlZDMzZjhkZjJjYWZmOTVjYiBsZWdhY3ktdHJ1bmsKKzM1ODE1IGY3OTNhMDQ2ZWQ5ODE0MjZlYTI2MzJkNjEwMDc3ODYxMDZiNmZmZWUgbGVnYWN5LXRydW5rCiszNTgxNiBlYmZhNWNkOGNiYTRkMjNlNWNjODQxYjE4Zjk3NzljODRhNjVmNTUzIGxlZ2FjeS10cnVuaworMzU4MTcgMjY4MzlmMzJlNzBkMDcxYmJmZDBiZjViOWMyYjA2YjFlYTMwYzY5ZiByZWxlYXNlMjMtbWFpbnQKKzM1ODE4IDY0MDg0ZjliYWJhMWVjMDQ2Y2Y4Yjk4NjliNDdiOTRkZmFlNzFmZmEgbGVnYWN5LXRydW5rCiszNTgxOSA0ZWI1NzRiMTIyNWZhYWI3ZjQ0ODlhMzdlMTQ0MWIyYjYyODYwYzU5IHJlbGVhc2UyMy1tYWludAorMzU4MjAgMmNjNzE0OTc3NDc5MzQxNmUwN2ZiOWQ4NWJlZWQ0YzYxODBhMjA3OCBsZWdhY3ktdHJ1bmsKKzM1ODIxIDk4NGIyODk5OTJjMDY5M2MzNWQ3YzFiNGYyOTBmNTQ4MWUyM2MwZGYgcmVsZWFzZTIzLW1haW50CiszNTgyMiBjMjQ5MzA1YmZjYWM4YTU0ZWMzNjdlNzM0YzA4Yzk1YjY5Y2NmMDUxIGxlZ2FjeS10cnVuaworMzU4MjMgZTRmNTJlMmUzODAwMGI0NjQ1YzUxNzAyN2U2NDBkN2I5MjAwODU4YiBsZWdhY3ktdHJ1bmsKKzM1ODI0IGVjMDlhNzE4NDljYzYzYWRiMjZhNmZiNjE1NmUwN2RkMzc0MGFkMzUgcmVsZWFzZTIzLW1haW50CiszNTgyNSBlMmEwZWY4N2Q0ZDQwZGM0NGRkZDQ4ZmM0NmM1NmVkMGIyMTJlMTRiIGxlZ2FjeS10cnVuaworMzU4MjYgMTRmN2Y5Yjg5ZGE5YzVkZDNmZWZjMDQwNjQ1NzhmN2I0YjYyMTZiNyByZWxlYXNlMjMtbWFpbnQKKzM1ODI3IDZlMDc4Zjc2MTNhZDdhYzExYzI0ZjY4NjU4ODk4ZWQ3ZTBjMDkxZjYgbGVnYWN5LXRydW5rCiszNTgyOCA0MmUyYjVhZmE3MTU3MzUzY2Q3MjZlZThiNGNmNWZmMzA2NTQ2ODFlIGxlZ2FjeS10cnVuaworMzU4MjkgNTQ0ZjIxNzIzNjNkMjFmN2U0ODYyOWI2ZjQ4ZGJlOTkxYTY3NDQ2NyBsZWdhY3ktdHJ1bmsKKzM1ODMwIDUwNzA4YjhmMGQyODc4MmY3MTY5ZDEwMTI5MjRiODQxNTg2MThlMTYgcmVsZWFzZTIzLW1haW50CiszNTgzMSBhMjliYWMwYWU5MDViOTRhYmZhYmEwMWQwMTQwNDdhODFjNTQ0Mjk2IHJlbGVhc2UyMy1tYWludAorMzU4MzIgMjZlMDkwY2NiYjY0YzM3ZDBiNzE5YmMyMjQ1NDlmOGMzZTc0YzhhMyByZWxlYXNlMjMtbWFpbnQKKzM1ODMzIDU4MmRjYTAyZTYwZjY1N2E5MDUxODYzOGI5ZWRlZjcwZjEyZWI1NmYgbGVnYWN5LXRydW5rCiszNTgzNCAyZDdiMGNhMGMyNmM5NjAzNjYzNzkxZjEyOGUzOTE2YjQxMjFmN2NlIGxlZ2FjeS10cnVuaworMzU4MzUgZTkwMjY5ZmMxOTM2NWIxMmFjNzVkZmNhN2NkMDRhZDAzNjM4NGYzZSBsZWdhY3ktdHJ1bmsKKzM1ODM2IDM3MTIxYzhiNjkxZGEwOGEwYmZlYTVlMzU2M2I5NGQ2MTU0YTFlNmEgbGVnYWN5LXRydW5rCiszNTgzNyA5OGE4MDc4ODgzNWMwNjYwZTZiYzRlODU1MDc3ZTZiOWIxNDgxYjRjIGxlZ2FjeS10cnVuaworMzU4MzggNGM4MjU1OGIxNWZiM2I2NDA5ZjMxNjI2N2Y4ZjIzNzI0MjIyMTQ1ZSBsZWdhY3ktdHJ1bmsKKzM1ODM5IGExYjM3NGZmMDE4NDE2NGE0OTg1NTUxMDk0YzUwNzk4NmI1YjVhMjUgbGVnYWN5LXRydW5rCiszNTg0MCBjMTNiYjdmNGJjZDE4OGE3MGUzYmZmZjZhZDk5ZmM4YWQ5MWU1YzY2IGxlZ2FjeS10cnVuaworMzU4NDEgNjM1ZWYxMTA2NThlZjhkM2M4OTc1MGQ1ODc2NGI2ZjA1NGFmNDBiMyBsZWdhY3ktdHJ1bmsKKzM1ODQyIGRiNmE2ZDM5MWE5OThmNTJlMzI1YWE4ZTVhNzY0ZDk2NjUwZjQxZWEgbGVnYWN5LXRydW5rCiszNTg0MyBiNTU5NGQ3Mjc5ZGY2OWUzNWJkMWE3ZTQ0NTZmYjViY2U5Y2MzN2U2IGxlZ2FjeS10cnVuaworMzU4NDQgZjQzNzZmNzY3NGEyMjJlODZmZTU5NzUyM2M5NWFiY2NiYmM0ZWVkMyBsZWdhY3ktdHJ1bmsKKzM1ODQ1IGI5YzY1OGFjMGUyMGNkNmI2YmY1NGQwN2ZiY2ZkMGQxOTcxZDgzY2YgbGVnYWN5LXRydW5rCiszNTg0NiA2OTZkOTJlZmYwMjJmZTRmODU5OGRmZjVhMGExYjJmOTdhODY2N2FiIGxlZ2FjeS10cnVuaworMzU4NDcgMzNmNmExNWRiZjZjZjAxZDhhMzc4ODY1MzNlZWEyMmRlMzMxYzU3ZiByZWxlYXNlMjMtbWFpbnQKKzM1ODQ4IDAwZWVhMjgxMzVmOGZiNzFiMWE4MDBmNjlhM2UwYmM4NTM2ZDExMWMgcmVsZWFzZTIzLW1haW50CiszNTg0OSAzODMxMDk0MzNhOTcyODRmNzA0MTA2NGMzN2MzMzZiYWI4ZjJhMmIwIHJlbGVhc2UyMy1tYWludAorMzU4NTAgYmEzMTIxNmUzN2M4ZjIxYTU3MmM2YmJjMGUyOWViYzhiYTNkNGFlNiBsZWdhY3ktdHJ1bmsKKzM1ODUxIDBiMzNlMzczN2I0Y2JkN2MzNzY3ZTlkN2M0ZDNlN2I1ODBkODQwN2YgbGVnYWN5LXRydW5rCiszNTg1MiBkY2JlMDQyYjg5MmRmNWJiYTlmNTUzYjJhNzc2NmM1NDg1YTY2NjMwIHJlbGVhc2UyMy1tYWludAorMzU4NTMgMjJiMDgwMmFiYTc0MzdmMjZlYWQ2MTA3ZGMwNTVkZGZlODA4NjNmMiBsZWdhY3ktdHJ1bmsKKzM1ODU0IDkxZjc2Y2Y0MDczYTJhZTk0ZTk1OGE1YmNjOGU5OWMyYWFhMDBiMzcgbGVnYWN5LXRydW5rCiszNTg1NSAzNTg2YTc4MDFiZGFmMzZjNDg1YjY0NWNkYjY2OGVmMDcyOGRmYjY4IGxlZ2FjeS10cnVuaworMzU4NTYgYzM2ZWEwNzk0OTIwMWU3NTE3MDhiYWM0MGE4N2YwOWUzMjE5MDc0MCBsZWdhY3ktdHJ1bmsKKzM1ODU3IGQ4MDNhZmNlOGFjNGU3ZjhmM2EyYWNlMWViOTNmNjljMjUzMjhjNDUgcmVsZWFzZTIzLW1haW50CiszNTg1OCAxMzZlZmJiMTExN2RlYmIzYTA0MzgzYjk5ODFlODc4NjY1OWIyOTNjIGxlZ2FjeS10cnVuaworMzU4NTkgOTU1ZTIwNmU1M2RjMzVlMDQ5YzVhZDUwNDUxM2E3NTQ3ZDk2N2I2OSBsZWdhY3ktdHJ1bmsKKzM1ODYwIDZkYjQ4YzViZGIyN2FiZWViNmMxZjI0ZDkzMWU2NjgzMjMyN2NhNzAgcmVsZWFzZTIzLW1haW50CiszNTg2MSA1MGQ4YTI3MjE0ZTZmODUzOGExZGIyZjMxNDlmMTVkNmUxNmE2Njg4IGxlZ2FjeS10cnVuaworMzU4NjIgNjZlZGUwMzg3ZjM2NzQyODRhMzZjNGEwYzRiZmFiYmQ2MDc5MTQzZiByZWxlYXNlMjMtbWFpbnQKKzM1ODYzIDlmNmQ0NWYzYzAyM2Q1NzE5ZmM2NDQzZjExMDcwYWQ5ZGRhYWM1ZjIgbGVnYWN5LXRydW5rCiszNTg2NCBjMzhhMzlkMzg0ODliMTI2NGIyMmE4NWFiN2YwNjdiYWE4MmZkNTkxIGxlZ2FjeS10cnVuaworMzU4NjUgNWEyMjQ2NWZkYTI0ZjlkNmY5YWJkYjAxODQyMDFjYzVlYjY5NDUxMSByZWxlYXNlMjMtbWFpbnQKKzM1ODY2IGU4NTM1NWNmMTc1YWFlMDg1MWQxYjBhZjM4M2ZiN2NlNjAwNTZmM2EgbGVnYWN5LXRydW5rCiszNTg2NyBkMDliYWZiOTc2OWY3ZTVjNzgzMGYxM2I4YzE0ZDAxYThiMjA2NjUxIHJlbGVhc2UyMy1tYWludAorMzU4NjggOGZlMWEyNjYyYWFhNTM4ODAwZmNjODk3MDQ1NjRhZjFiMzU4MWZlYiByZWxlYXNlMjMtbWFpbnQKKzM1ODY5IGM3OWNjMDQwM2FjZmVmMzlkNGIwNmRmODE5NjhjYWZkZjRiZDQ3YjcgbGVnYWN5LXRydW5rCiszNTg3MCBjNjgwMDgwZjkwMGMxNmM2MDIwODM2YjNhZWU5ZDBmNWJjMjllMjM2IGxlZ2FjeS10cnVuaworMzU4NzEgZTliY2U4MzdjMWMzOGM5ZGRiNWU2OTBiYjBkNTVkZGU2ZWYxMTA3OCByZWxlYXNlMjMtbWFpbnQKKzM1ODcyIDg2MDFjNzg1YzY4M2RlYTIyYzU4Y2M3ODQ4ZDM4N2M0MmM1M2I4MDIgcmVsZWFzZTIzLW1haW50CiszNTg3MyBjZjM5MmI5MzZhMmU0OTQyMjIwYWU3ZGJjZWQyMWNjZDAwMTgyOWRkIGxlZ2FjeS10cnVuaworMzU4NzQgMTdiZjk1ZWQ3NTYyYzk4MTA2YTYwMWNlMDkzYjNhYTIyODVlZDhiOSByZWxlYXNlMjMtbWFpbnQKKzM1ODc1IDE1MzhhOGNmYjBkZGE1NGE0MjRmMjMxZTRjMWQ1MTQ0Yzk0MTM2NWIgbGVnYWN5LXRydW5rCiszNTg3NiA1M2FiZDlhZDE5MDk4ZjkzZTU3NzUzMGM1OGQxODE2NzhjYzQxZTZiIHJlbGVhc2UyMy1tYWludAorMzU4NzcgZjYzZGQyOTlhNjBiMjczNTlhYTljNzMzNjFlMjBmYWZjOGFlOWQxOSByZWxlYXNlMjMtbWFpbnQKKzM1ODc4IDdhZmViODM2ZjY2YzU2ZmU3NmYwOTFhZTkyM2NiYzFmOTQ4ZGY5ZmYgbGVnYWN5LXRydW5rCiszNTg3OSBhMzhjZDYzZDE3YTc0ZTRlYjM1YTMzNzdkN2MxODA5ZDNmMjgxMzVlIHJlbGVhc2UyMy1tYWludAorMzU4ODAgNjc1OGI2MzBhY2I3ZWY4NjE0NDhlMGIxNTFjZTQ2ZmIzMDEzMzViNiBsZWdhY3ktdHJ1bmsKKzM1ODgxIDY5NDMzZmMxYzgxNmNiMjJhMTZmZTk2MzFjN2I1MWM5MWNmNDhkZWEgbGVnYWN5LXRydW5rCiszNTg4MiA0NjlkY2IwYWQ3MzhiZDRkMDIwODliYjc4YzU0NjA2ZjRkZTdmMThmIGxlZ2FjeS10cnVuaworMzU4ODMgNjFiMjZiOTVlYjMzZWNjNDc0OTI5MDYzY2NmMWUyODdkNjFjZjY2ZiBsZWdhY3ktdHJ1bmsKKzM1ODg0IDEyMWFhYTRiYTkyMzU4ZmVjMTkwNWUxZTRkZmIxZmRkMmRkMzdlZWUgbGVnYWN5LXRydW5rCiszNTg4NSAxYzIzODFkNzk3YzBmNzU4ZGFjODVmMWJjOThlN2EyNGY4NTRmZDYxIGxlZ2FjeS10cnVuaworMzU4ODYgMjdkYTg3YzkzMThmNTMzNGQyZjU4MzkzM2Q3Y2I0OTZlYmFmNGZkMSBsZWdhY3ktdHJ1bmsKKzM1ODg3IDAyZjc2OWQ3ZTRhOGUxNzRkNTc4NGVmN2UwOWFiNmYxOGUxYjJkZjMgbGVnYWN5LXRydW5rCiszNTg4OCAyNGM0NjAwMTQxNmUxYTA1MjQ3OGE5ZWQyYjA0OWExMDVkZTQwOGQ5IHJlbGVhc2UyMy1tYWludAorMzU4ODkgYjMxOWRiMzg2OWQ4MjJhNjIyYzJkOWQ0YjgxYWY3ZjY5NWU5ZjM5ZiBsZWdhY3ktdHJ1bmsKKzM1ODkwIDYzMGEwOTE1YTMxMDFiZWM3YTA4NTQ0MWMxYTJkNmJlM2UyY2ExY2EgcmVsZWFzZTIzLW1haW50CiszNTg5MSBjNzAxMDc2MGU4YWQxOWFiZmVkMGNlYzA2ZDU3MjA5NWIxYzQ1Y2ZiIGxlZ2FjeS10cnVuaworMzU4OTIgYWIwYzhkZGIyYzkyNTI4ZjQ0MWEwOWUyM2JhNjA3ZjBjN2ZkZThiYiBsZWdhY3ktdHJ1bmsKKzM1ODkzIGQ2NTg5Yzg4ZDIzYjdhNWNjNjg0M2VlNDc1MGUyNTMxM2ZmNzYyYjcgbGVnYWN5LXRydW5rCiszNTg5NCAzMThiZjY5OGU0MjViNWRkZDc5MDM1ZTQ5ODE3ZjIwYTc0ZWM2ZjY3IHJlbGVhc2UyMy1tYWludAorMzU4OTUgNjA2YWFlOTVmMTI4OTIyZjhlZjE4NWY1YTJhZTQwYzJhOWQ5MGJkZSByZWxlYXNlMjMtbWFpbnQKKzM1ODk2IDY1N2ZiMmE1MGU4ZWQzMzcwNGVmMmQ2ZTI3NGZhYjYyOTFkMGEyM2QgbGVnYWN5LXRydW5rCiszNTg5NyA1MmUxNDBjYTE0NmM1ZWNlNTI3YjUyMTk3MzliZjliMzg0YmNjODA0IHJlbGVhc2UyMy1tYWludAorMzU4OTggNDViYTJjNjljMzFmZGRiNzJjYWNiMDE5YjA2NmNmYmU5MjkwN2VhNyByZWxlYXNlMjMtbWFpbnQKKzM1ODk5IDVlMTdkMDUzM2FkMzY0MTk3ZTczNGIyNGJkMzhiOGE1ZDhiZGRhNjYgcmVsZWFzZTIzLW1haW50CiszNTkwMCAwMmY4OWQxMmYwMzZmNmE4MzIxZGQyYWZmN2JlMWY3OGE5M2RjZTYxIHJlbGVhc2UyMy1tYWludAorMzU5MDEgMjA2NTNjOTAzZDFjYWZkYTJkMDEyYTc1MmUyZjMyODVlMjY3NjA0YiByZWxlYXNlMjMtbWFpbnQKKzM1OTAyIGY3OGQ5MzhkN2JiMDgwNGE3NmI4YTA0YjZhOTZmNmQ5ZjkxNjdjNmQgbGVnYWN5LXRydW5rCiszNTkwMyAyNDU4MzVlZDhkZThkZjM3NzM4M2QxYjg2NWQ5YjNhOTNhNWI1N2Y2IGxlZ2FjeS10cnVuaworMzU5MDQgN2FmYjEzYzJkNTI2ZjQ4MzczZWRiYjkzNjcxOGIxYjM0MTMzOGNlNSBsZWdhY3ktdHJ1bmsKKzM1OTA1IDA1OTMxNThkMTRmMmQ1ZDEyNTNiYzhiZGYwNjFmMmVmNjU4Y2VkYTEgcmVsZWFzZTIzLW1haW50CiszNTkwNiBhY2UzZjEzYzE4MzZmNzkwYmE2ZjUyYTY3NzIxY2Y5MzJlMDk5NWI5IHJlbGVhc2UyMy1tYWludAorMzU5MDggNTJmZTkzYjY1NmNmNTkzZDQ5OTY2MzA2ZTJmNjY1NzUwYzg0N2I2MiBsZWdhY3ktdHJ1bmsKKzM1OTA5IGE0YjUyNmI1MGMxMjIwZTkxZjg4NDQxOGY0NTIwMWM5ZDU0OWVkYjQgcmVsZWFzZTIzLW1haW50CiszNTkwOSAzNjM5ODYxZDAyNjQ2YWYxZGEzMTIzYzI1NTYwYzRkYjNkN2VkYmNlIHJlbGVhc2UyMy1tYWludAorMzU5MTEgZWU3ZmNkZTU2MzZlYTE3MGY4MDgzNDI0NDlhYWI3YjUwNjNjZWFhMSByZWxlYXNlMjMtbWFpbnQKKzM1OTEyIDlmZTQ1Nzk3YzA5N2Y0Mzg4MDYwZmFjMWMzYjc5ZjA0ZmM5ZjlkMDYgbGVnYWN5LXRydW5rCiszNTkxMyAyODJkYmQ5YjFlZDZiN2E2OTI1MTYzOTVlYWY3ZGJlMmYwZjcwZjE4IHJlbGVhc2UyMy1tYWludAorMzU5MTQgNjc3MjM5MTA4M2M5Yjc1MWU0M2NkNDU0NGJkN2Q4Y2ViZDZlNDhiZiBsZWdhY3ktdHJ1bmsKKzM1OTE1IGQ2ZGVhZThiZjc5YmIwNTJhYmRiM2FhMTMwODMzMjIxM2JmMjM5NTYgbGVnYWN5LXRydW5rCiszNTkxNiAwMDk0OWJjNjdlNDliZGU4ZmJjMWVhOWY2NjdlNDM1MjgwZmQyNmQ1IGxlZ2FjeS10cnVuaworMzU5MTcgOGJkMzJjNTE1NDVlM2RmODE0YjE0MzVjZWJmZjlmZGE1M2RkYjU3MCBsZWdhY3ktdHJ1bmsKKzM1OTE4IDNlZGY4ZGI2ZjhiZmQ5NTk3ZmVkMTAyOTAwOTUwOWU4M2IxZGFiNjUgbGVnYWN5LXRydW5rCiszNTkxOSA5ZDU4NDdiOGYzMDExYjZmYjEyZTI1MTJjZDY3MjYzMzliMThlMDZjIGxlZ2FjeS10cnVuaworMzU5MjAgZDNjYTZiZGNiZjNjNDYzNzY3M2U5ODc0OGZhYzQ0MGI5ZGFmZmJlOCByZWxlYXNlMjMtbWFpbnQKKzM1OTIxIDE2Mzg2Y2JjYWI5OWMxYWMxN2JmYjU2OGJiOTdhODBhNmQ3OGFiNTMgcmVsZWFzZTIzLW1haW50CiszNTkyMiAyZDM0NTg1YzNiOTk0N2U2NDhkZWEzODExOGEzMTc4ODEyOTIwNjc5IHJlbGVhc2UyMy1tYWludAorMzU5MjMgMzc1MzhhMzZiNmUyYjJhYzgwY2UwZTQwMzNkOWU3NzZiNmMzZmNmMyByZWxlYXNlMjMtbWFpbnQKKzM1OTI1IGI1MjU1NTUyYWE2ZGE0OWZiNjNmODNjYWZlNDQ3NmFkM2UxNGEzNzMgbGVnYWN5LXRydW5rCiszNTkyNiA5NmI2MjY5OWIyMThmOWRmOWRkZTAwNjNlODgxMjgwOGExODg3ODYxIGxlZ2FjeS10cnVuaworMzU5MjcgNjY3MmY3MzA5M2RhMzMzYzg2YzFmNGEwZmE5ZWUyNmI5YmFlODU1MCByZWxlYXNlMjMtbWFpbnQKKzM1OTI4IDdlM2EyYzI3NGIzNjgzZmYyNjk5NjBkNmIzODczYTUwYzg0MDEzMjUgbGVnYWN5LXRydW5rCiszNTkyOSA0YTdmN2U4MDE2ZmMyNmI1ZDU4NDM1ZDM2YmY3YjIwMzkwYjU4NTNmIHJlbGVhc2UyMy1tYWludAorMzU5MzAgOTRiNDg0NWU0ZGE4YzQ5NjRlNmEyNDZjYTVkODc5NDUwY2U4MTJiZSBsZWdhY3ktdHJ1bmsKKzM1OTMxIDMwMGQ1ZDQ2MjM4NzIxNWUyMDI5ZTdmYTI3ZDY5Yzg0YjVkMTI4MzUgbGVnYWN5LXRydW5rCiszNTkzMiAzYWUwMWExMTA4MDEyMmZhNDdjNTVjZTE2MzJiOTBmNGEwMjM5YTAzIHJlbGVhc2UyMy1tYWludAorMzU5MzMgZmE3NTNjMTZjNjMzM2JmM2Y5OTJlNDNmYzJlZTVhNzUzMDM1YTFhNiBsZWdhY3ktdHJ1bmsKKzM1OTM0IDFkMTM1NzQ5MDZlZmNjNzE5YzAwMWFhYmEzNGI1OWRhY2ExODYzNzAgbGVnYWN5LXRydW5rCiszNTkzNSA3MDAyM2FmMjA4NWFiNTBlYzMyMzljODRmZjk2NTI5Y2Y1OGZkZGFmIGxlZ2FjeS10cnVuaworMzU5MzYgODRkZmE5YTY3ZGExNDYxODMyMzFhMDk3MDcwNzIwZGI0ZWFjOGJiYiBsZWdhY3ktdHJ1bmsKKzM1OTM3IGI2ZTRiZjMzNmRiOGEyNDc3MTU0YTcwZDk0Nzg5MWVlOGQyODcwYzkgbGVnYWN5LXRydW5rCiszNTkzOCAyOWE1OWY2NjJkZDEwNDkxMmVlZTNlMmE0M2VjMDVjMzJmMDM1OTU3IGxlZ2FjeS10cnVuaworMzU5MzkgMGRhNDRlYTA5OWY1NjhlMWVlNDE4Y2Q1MmJmOTIyMjdlY2IzNDBhYyBsZWdhY3ktdHJ1bmsKKzM1OTQwIGRkMWU1NWRlYWY1MmY4ZGIzYjliMzM0M2Y5MmRkMDBkM2YzZDQxMTEgbGVnYWN5LXRydW5rCiszNTk0MSBjMjVhOGMwNGRlM2U2MTUwOTQ2MGYwYzE4ZWQ1ZjkzZDQzMTZmNTRiIHJlbGVhc2UyMy1tYWludAorMzU5NDIgMzAyZDM5OWNmZDM3ZWViMWI5N2RiYmM4MTllNjYxZDMzMTc4MzJjMSBsZWdhY3ktdHJ1bmsKKzM1OTQzIDk1NTc3YjYzNWJiNDE5MjgyMmUzNDg5NTY5N2I5OTc1MmIxYTQ5YTYgcmVsZWFzZTIzLW1haW50CiszNTk0NCA1ZjRmMmY1MzZmOTYxYWIyMDBkZmU3MzJlNGQyOGU4YzQyMGQxYzgwIGxlZ2FjeS10cnVuaworMzU5NDUgZDFhOTg3NGMwOWI2OTRkYWMwYmM4N2ZiMGFiMDY1ZTFmNjkyNjZhZiByZWxlYXNlMjMtbWFpbnQKKzM1OTQ2IGI5ZWRkMzQxOGEzMWQ5MTY0OGQzZWFmYTRlN2NhZjQ2ZjJjMmUxNGYgbGVnYWN5LXRydW5rCiszNTk0NyBiMTY2NGE4MDM0OGFkYWY4YWQxYjBlZjAwYWNlN2VhMThhMDk2ZWI2IGxlZ2FjeS10cnVuaworMzU5NDggYmRhMDY2Yzk2ZTRmMWEyMzhkM2IxZmJkZmViY2EwNjE3M2QzNTI4YSBsZWdhY3ktdHJ1bmsKKzM1OTQ5IGI1ZTQwZjVkMDAwYjZhNzMwYjBkMTA1ZjBlZDQ3NDA1MjE0OTk1ZmEgbGVnYWN5LXRydW5rCiszNTk1MCBhZmY2OWY4MGY5OTgyNTQ5MzRmZTk1MGJkZDliNjVjZDcxYTgzMjJjIGxlZ2FjeS10cnVuaworMzU5NTEgYjVhMWUzNjczZTViZTE1OTE0NmM1MTUwZTkzZDRmY2EzNGRhNzVkMCBsZWdhY3ktdHJ1bmsKKzM1OTUyIDllNGQxNDViYjVjYzQ2NDE0NGY2OTQ1ZDUxMzVlMDExMTFlZDUyYmEgbGVnYWN5LXRydW5rCiszNTk1MyAyNzdkNDgzZjU5Njg5NjJkYjFkY2JhNmFkYTg0ZGVhYTkyYjk3YjQ5IGxlZ2FjeS10cnVuaworMzU5NTQgYjU4ZDMwZjExNmUyYTgyNGNlMzc2NzA0YWE3MzM2NDMzMjM3MTcyMiBsZWdhY3ktdHJ1bmsKKzM1OTU1IDMxYmRiZWM4ZjI4MmMwNmIxZjJiM2Q5YmJlOGQxNDg1N2ZkNmIzZTEgbGVnYWN5LXRydW5rCiszNTk1NiA0ZTViOTc4ZTZiNzgwMzZkMTFkNjE3MWZkNjVjYTYyM2FhM2U1ZDlhIGxlZ2FjeS10cnVuaworMzU5NTcgYzFjZmM1ZTQ4MzRkMTkzZTc1YTI1MGNiMmRhZTlmZmU2NDQ5Y2ZjZiBsZWdhY3ktdHJ1bmsKKzM1OTU4IGUwODAzNDA3ZTM3NzRlNzNjMTU2YmU5OTU5NGNiNzM2NTczNWQ0MWIgbGVnYWN5LXRydW5rCiszNTk1OSBjMzk1MjdlMjgwMTBmYzFlZjcxYjg3MTJmZmZmMTVlNzM1N2MwNGYyIGxlZ2FjeS10cnVuaworMzU5NjAgYjA1NmJiYjRlZGY5OTRkYjA3YjM2NjQ2YThmNmJlMzQ5ZWNlMjVkOCBsZWdhY3ktdHJ1bmsKKzM1OTYxIDg5OWExZjg4Y2M1ZjI0MmU4Y2M0YzgwOWU0NGYxYTM5NzM5MWY1MWMgbGVnYWN5LXRydW5rCiszNTk2MiAzMDRhMzdjMmNiNDI1N2I2ZWQzZTE3YmJkOTA5ZmQzMjcxMGU4MWJhIGxlZ2FjeS10cnVuaworMzU5NjMgYWEyMzMwNmEzZjI2OTk2YTFlYTdjMTkzOWU5YWU1ZjAzYTBlMjQ5OSByZWxlYXNlMjMtbWFpbnQKKzM1OTY0IGNlM2MyNzc3YjIyMmZmNTlhYjdjMTAwZDgwNjYxMTE2YTI1OTk4ZDAgcmVsZWFzZTIzLW1haW50CiszNTk2NSAzN2NhYzA2OGYwM2ZkNDZlMDFkZTlmODZhNzhmMDVmZDQzMDE5ZTg2IHJlbGVhc2UyMy1tYWludAorMzU5NjYgNTlhYTUzNDU4YTkzYjYyNGIwZGQ2YzU0YzYxZjk4MmIwY2Y5YjBjYiByZWxlYXNlMjMtbWFpbnQKKzM1OTY3IGExMDRhYTU0OWEwMjJhMDZlMjM5YjIxODdmZWRkNzBkODc4YTcxYzMgcmVsZWFzZTIzLW1haW50CiszNTk2OCA1Y2IyNGRiOGZjOTViMzU5YzYyMjVhY2U5MWIwYzI2MmNkMzc0MzRmIGxlZ2FjeS10cnVuaworMzU5NjkgYmFlZGY1ZmZiMjZiNGQyYjUwNjM1MWYyNzBlZjIyMDgxNWE5N2IyOSBsZWdhY3ktdHJ1bmsKKzM1OTcwIDA5MmFjMTNhNGM0MGEyZmEyZDExMjUwNzE1ODg1YzI2MDkxM2FiYjggbGVnYWN5LXRydW5rCiszNTk3MSA2NWY5YWQ5YmM4MjlkYzhiNThlZmViODU1ZWE1NDc5Njk1ZTlmMjhiIGxlZ2FjeS10cnVuaworMzU5NzIgMGFmYTgxZGI0Y2I3ZDI0ZmYyZDk5YWY5M2VkNTc5Mjc1YThmOTBiMSByZWxlYXNlMjMtbWFpbnQKKzM1OTczIDI2Njg4NGIwNDhiZDEyN2NkMzk0MGEwYTlmZjhkZWY4M2M1MTMxMmEgcmVsZWFzZTIzLW1haW50CiszNTk3MyBhNzRmOTA4MWM2OTcwODc4Y2FiZTE1MWY5Njk2MTc1ODc5MTU0MDBjIHJlbGVhc2UyMy1tYWludAorMzU5NzUgODUzNjU5OGNmMDRkNjM2OWQzNWQxZTZjZDRkMmMxZTAyODAxZWNlYiBsZWdhY3ktdHJ1bmsKKzM1OTc2IGVmYjg0ZWQ3Mzc3ZGRkNmMzOTVkNGYwYzAxNzVmNzM1MzVjNzRhYjMgbGVnYWN5LXRydW5rCiszNTk3NyA1NmE0ZWMwNjY2MjFkYTM5MDQwYzI3NzcwZWMwMTc5NWYxOGNmYTE3IGxlZ2FjeS10cnVuaworMzU5NzggMjg2MmJmOWVmOTEzZWYwNWIzOTIzOThiMjc3ZGI1NjFlYTQ2NDU1OCBsZWdhY3ktdHJ1bmsKKzM1OTc5IDY3OWU1YzhlZmZhZTIxMTJjYThhNDgzNzYwODdiZTNlYjFjNmVhOWMgbGVnYWN5LXRydW5rCiszNTk4MCAyYzE2OWNhNWZhNjliODQ5YWQzZGZlNDUxMWIxNmZkMTU3NGE4NWZhIGxlZ2FjeS10cnVuaworMzU5ODEgYWVjOWM5OGE0N2QyZTk1MzY2MjRmODdlMmQ4YmUxNzU0YmY0MDYwZSBsZWdhY3ktdHJ1bmsKKzM1OTgyIGM2NTg1NWM1ZDU2YjFkMTQ3MWI2ZmRjZGYyOWY5NTQ1OGYxZmQyMjIgbGVnYWN5LXRydW5rCiszNTk4MyBlNTMxNjIyNTJmYmU1Mzc4YTUwZTZlZWE1YTcyODc2NDQ3NDhjYTJlIGxlZ2FjeS10cnVuaworMzU5ODQgZmFkNTJmZmQ4ODkyNDNiYTFkMGM1YTFkYTM3NDY5Y2UxY2ZlMGQzMiBsZWdhY3ktdHJ1bmsKKzM1OTg1IDE4ZDZhOGY5OTgyMzg2MTRhZThmNTg2ZmYwYTI2MTJjYzUwZmM0N2UgbGVnYWN5LXRydW5rCiszNTk4NiA0NDgyOGNjMTM2ZTBjMGJkNWRmMmU1NGNmZTI1MTA3ZjAyMWU5MTkxIGxlZ2FjeS10cnVuaworMzU5ODcgZjlkNTRlOWIzMGJjODE5ZjY1MzFlZTFkMTE3YjgzODFkNWM1MzI4ZCBsZWdhY3ktdHJ1bmsKKzM1OTg4IGQwODdhOTVlODAzMjMxOTAyYjI4YzEwZTBlMjBiNGEyZTczZGRiZjUgcmVsZWFzZTIzLW1haW50CiszNTk4OSA2MGVmMWRiMTBjZWZiYjA4MjExNjY0YjgwYzI5NGQyNzUwNjk1NjY2IGxlZ2FjeS10cnVuaworMzU5OTAgZjhmZmEzZTZjNGYyZGQ4ZDAwNzQzNzRlYTMxYTU1OGY1ZDFjOWQ1ZSBsZWdhY3ktdHJ1bmsKKzM1OTkxIGFjYTQ0NWE2YmViNzkxYTdhNTMyZmE2YTZmMzMwNzRjOTFkNDZmOTMgbGVnYWN5LXRydW5rCiszNTk5MiA5N2I5MDhhOTk3MWE2NGYwZDFjYjEzZDFlZWVmNzBkMTg4OTVjMjM5IGxlZ2FjeS10cnVuaworMzU5OTMgNzQ3YjJkYzgyNDRmZWEzMWRiMzkxNzk3ZDY5YTY2YTE4ODZkYzk2OSBsZWdhY3ktdHJ1bmsKKzM1OTk0IGM3OWJlZmIzYzMxNGQ1ZjVhZTFjMjdkYTYzMjgxMzhhNjI1MmQ2ZTIgcmVsZWFzZTIzLW1haW50CiszNTk5NSBlMmI4MWYyYzhhNzBkYTI1ZTc5YTIzMDEzNDkzOGYwNDgwN2I0ODU2IHJlbGVhc2UyMy1tYWludAorMzU5OTYgOGVlNWE1NmI4MDMxMmJjY2EyZDViZjFiMzQ0YTcyNTQyZmQ2YmU1OSBsZWdhY3ktdHJ1bmsKKzM1OTk3IGViYTZiYWVlYTRlYWFmODliOThhODJlMTcwNGI3OTE5NDUyMWZkMzQgbGVnYWN5LXRydW5rCiszNTk5OCBkMzYxYzEzNWZhNzRlOGQ4ZmY1MzBkNWJhZjQ4MGI2NDk5ODBiZDI1IGxlZ2FjeS10cnVuaworMzU5OTkgMDQxZjg5Yzk4YzM1YmVlOTAxZTM4ZmM0ZTA2Y2IwNmI2Zjc3NTFkMiBsZWdhY3ktdHJ1bmsKKzM2MDAwIDI3NWE3N2Y5YTUwMDY2NDM0MTQ1Y2RkOGViN2Y5Y2RhZjU2MjZiYmYgbGVnYWN5LXRydW5rCiszNjAwMSA1OWJiM2IxZDYwNTlkMzI2MDM4NGQ1NGNhNTY2NGJkY2VlYTNlYjE3IGxlZ2FjeS10cnVuaworMzYwMDIgZjNkMDU2OGM5NDMyZjBiYWFlOGY0YzFlNTZhOGM5MjBhZDdiNWY2MCByZWxlYXNlMjMtbWFpbnQKKzM2MDAzIDIyNjYyNTg5YzRlMjA5ODljMmYwMGQ1ODNmYmJhZmQyZDNhYjQyMTcgbGVnYWN5LXRydW5rCiszNjAwNCBhNzk5YjBkMWM1Njg3ZTg2OTlkNjdmZmRlMzg0ZjQzYjNkYmE1ZWJmIGxlZ2FjeS10cnVuaworMzYwMDUgZjE1OWIxNWYxZjVjYmFmZWY4OTlmYzViNDNkMWM4ZGYxMzk5ZWM1ZiByZWxlYXNlMjMtbWFpbnQKKzM2MDA2IDdjNDYxYWVlNzQxYmVhMWI2NTZjOWYxNTkyMzVjNTg0MWQ4YjQwOTMgbGVnYWN5LXRydW5rCiszNjAwNyBhYTM5ZmFjMmE5ZmRmOWZhN2EwZTRmOGMxM2YwYWIzNmIwNDI4ZjM2IHJlbGVhc2UyMy1tYWludAorMzYwMDggZGY5YmQxMjc3MzBhZGM5ZTgyYjY3OGNiYTkyNjgwM2UwMmNlZTViMyBsZWdhY3ktdHJ1bmsKKzM2MDA5IDczMGEwM2Y1ZDhiNGRlMmQyMDRkZjcxNDFiY2E2NTRkY2YzMWU4OGYgcmVsZWFzZTIzLW1haW50CiszNjAxMCBjN2Q5YmU3M2M3ZGRiMzM1YTg1ZjQ5Mzk5OGFiMGJiZGEzZWNmMzEyIGxlZ2FjeS10cnVuaworMzYwMTEgMTg1ZjVkNmEzYTg4YTlhMTNhNTdmYjIyM2MyYWM1NWE4ZTQ0OGIwNyBsZWdhY3ktdHJ1bmsKKzM2MDEyIDAzYzg5NTgzOTk3OWMzZGNmYTMxMmZkMjk1ZmYwMjRkOTc3NWNlMTQgcmVsZWFzZTIzLW1haW50CiszNjAxMyBhYjVjMDgyNTdhZDdiNGU3NzljNWQyMmE1NDhjNmM5NDAxY2ZiYmQ1IGxlZ2FjeS10cnVuaworMzYwMTQgYjNjOTgxZWU5YWU5NTU4MWZhNjYwMmU0ZjYzZmQwM2RmMzYzZDc1MSByZWxlYXNlMjMtbWFpbnQKKzM2MDE1IGQzYWFkMzc3YTVhOTBkOWZmMGJhOGMxMzVhOTA0MzFhNGUyYTRiYmIgbGVnYWN5LXRydW5rCiszNjAxNiA4ODA3MWQyMDhiMzRhYTRlYzQzMmJkYTQzZTIwZGYwYzUzZjQzNzZkIGxlZ2FjeS10cnVuaworMzYwMTcgYWI1MTlkZTE3NmJiOTQ4ZjQ1NWM5MTAyZWQwMGYxN2RkN2Q3MDY3ZiBsZWdhY3ktdHJ1bmsKKzM2MDE4IDNhODRlMjNiMDQyZjQ1ZTA1Yzc4YzgzMmI2YWUyYmRkNTRkMGRkNWEgbGVnYWN5LXRydW5rCiszNjAxOSA2ZjI2NWYyY2NiMzNjYWI3ZTNmMzNlMjcxNjQ0YmFkZTYxMzY0YzkyIGxlZ2FjeS10cnVuaworMzYwMjAgNjgyMjAyNmQzYzNiNDE5YThiZGQxMzc2NzYxOTcwYTZkMDhhMTA5MSBsZWdhY3ktdHJ1bmsKKzM2MDIxIDIyZmRhZTdiYmExYWY3MDUxMTIyZjkzY2JhY2M0NzJlZWNhYTk5MzYgbGVnYWN5LXRydW5rCiszNjAyMiBlNjIxZTJhMWFiMzEwMmQzZDczMjAyMTBjYzQ0OTBiNTdiYzFjMWFkIGxlZ2FjeS10cnVuaworMzYwMjMgZTViMDQ3NzY1Mjg1YjM3Mjg1YjczNTY4ODExNDM4MGVjODM0NjdlNiBsZWdhY3ktdHJ1bmsKKzM2MDI0IGFiZDRiNzk1NTFkMmVhOTFmYTliYTkxOGYxNGI2YjdhYWYyZDFkMjAgbGVnYWN5LXRydW5rCiszNjAyNSA5YTM5MDFiZjYyMjJmOTkxOWMyMDZhNmM5OTdlNzgyZTVjMjAxNmM0IGxlZ2FjeS10cnVuaworMzYwMjYgNmZmZGRhNGNjMjIyMTViYzM2YmExZjhiOGFmYTE0YjA2MDE1ZGU3YSBsZWdhY3ktdHJ1bmsKKzM2MDI3IDVkOTQyYmVkZDI4ZjkzYjZiM2IyMjlmMGNmMWQxZDY3NWI1NDY1ZmYgbGVnYWN5LXRydW5rCiszNjAyOCBiOWQzYWEzY2RlOGE1YzFhNDAzN2JjMjYzYjJlZTY3Y2VlODczNjBjIHJlbGVhc2UyMy1tYWludAorMzYwMjkgMzc3MWVhOWE5M2FhZGE3MmVkMDA5ZTRmNmRhOTJmNjFiZTMzYjA5OSByZWxlYXNlMjMtbWFpbnQKKzM2MDMwIDg0ZThmZTkxMjQ0MGQ0YjFiOTc0YmY0NGJiZjc1NjY1Mzk3NDRmMGEgcmVsZWFzZTIzLW1haW50CiszNjAzMSBlYjQxYTQ4OWNjMmY3OGQxZDQxMjI3Y2ZkZmExOWUyY2VlMWE5Y2Q2IGxlZ2FjeS10cnVuaworMzYwMzIgMDEwNTdlNGYwYTYyZDBkMWZlZGU2YzJlYzI5Y2YwMTQ5ZjhlN2M5MSBsZWdhY3ktdHJ1bmsKKzM2MDMzIGViMGY4NzI2OGQ3MGFlMWIyODc2NjAzNjcyYWYyOTExOWM1NmNhNDggbGVnYWN5LXRydW5rCiszNjAzNCA3MGRlZTJiMTkzZjdkNTMxMTY1NjQ1YWQ2ZGNmNDljZTI2MGFhYjNlIGxlZ2FjeS10cnVuaworMzYwMzUgNjQ3OGViNmFlM2MwMWU4NDY5MWQ5NTRhOTQxMTljZDIxYjZmZTQ3NCBsZWdhY3ktdHJ1bmsKKzM2MDM2IGIwMGIyNmNiYzMwM2FmZTFhMWY3MmFiNjkzZjJjNDliMTBlYWNhZWYgcmVsZWFzZTIzLW1haW50CiszNjAzNyBjMDg2MzY2NDc5YjFlMDBiNmQxMGVlYzFmZTU4ODkxYzE4NTYyMmY4IGxlZ2FjeS10cnVuaworMzYwMzggOTFlYWUxZTkyNTc4MWI1NGMyMzVkMmQzNDFkNDUzOTc4YzIwOTBmMiBsZWdhY3ktdHJ1bmsKKzM2MDM5IGZkZjc1ZWVmNmE1YzMzYThmZjJhYzdiYWFmNGViMDRlMzY1MmIwOTAgbGVnYWN5LXRydW5rCiszNjA0MCAyY2M3ZmY0MmI5YTNkMTE2MjgzOTY5ZmQ2YzUwZTJmYTU4ZjEyNWI2IGxlZ2FjeS10cnVuaworMzYwNDEgM2MyMTU4ODc2MTk0YTFhY2NhMmMyZDYyNmQ5NWRkYTdkMTU5YTRkNCByZWxlYXNlMjMtbWFpbnQKKzM2MDQyIGVkMjI4ZThhMTM5ZmI5MDg5N2NiMWY5ZDc4ZDM3Yjc5OTZkYjM5ZjUgbGVnYWN5LXRydW5rCiszNjA0MyBlZmNhNTFlZjc4OWRhZjVhNGNhMGRmZWY0MTVjMzQ5NWIyOTcwZTM1IGxlZ2FjeS10cnVuaworMzYwNDQgYjEwODdlMWQ0NDc5NjNhY2ViOTk3MzE0NmU4N2FjYWMyMGRlN2Q5NyByZWxlYXNlMjMtbWFpbnQKKzM2MDQ1IGZmNjhkNmE1YTQ0MWY2YmQyZjU5NTMzNTdjNDMzNzk1ZjAyMzUzNTIgbGVnYWN5LXRydW5rCiszNjA0NiAxOTU0YjdlZGJmZTcwMDAzNmViNmY1NDNmMWQxMzdhMWJjYzgxOGI5IGxlZ2FjeS10cnVuaworMzYwNDcgOTk0MjQ2MDRkMzZhMzc3ZDI5MWRkMTE3OTg3Yjg2NmU0YTk1MjMwYSBsZWdhY3ktdHJ1bmsKKzM2MDQ4IGI3OTFmNjU1NGQyOGYyZWVhY2QyZDFmMDNkNTA2ZWM5ZWU5YzNjOGIgbGVnYWN5LXRydW5rCiszNjA0OSAzYmZlMmY0MmI4ZjkzODNkNjA1YWZhNTRlYTg1YmVlOThmN2YzNzI0IHJlbGVhc2UyMy1tYWludAorMzYwNTAgMjc5NjdmYmJhNDhmMzFkNGE4MjU0Yjg2MDAwMjFkZmFmNjc0ZTdkYSBsZWdhY3ktdHJ1bmsKKzM2MDUxIDZmYzg4MjdjNDAzYzE2MzQxOGIwZWI0ODgzYzMyMjFlOThjOWMxN2YgcmVsZWFzZTIzLW1haW50CiszNjA1MiA1MjVhYmM2NmJjYzI4YzBmYjk0MzJjOWJlOGIzNDc5N2Y0YTY0OGIyIGxlZ2FjeS10cnVuaworMzYwNTMgMDkwMTJjNmIyMDY4MDVjM2YzNWM0Nzk4ZDlhY2ZmNDA2YzVhYmYxZiBsZWdhY3ktdHJ1bmsKKzM2MDU0IGVkMzc0NmRhZDcwNWEyYjk2NmU1M2JhZWIxYTc1NmNmZjFkODdiNDEgbGVnYWN5LXRydW5rCiszNjA1NSA2YzI4YWQ4MDQ3ZjJkZmJhOTE4ZWUzZTRjNWVlNDcyZWFkYmJiYjNiIHJlbGVhc2UyMy1tYWludAorMzYwNTYgOGM0MDc5MDYxNzA4NThjNWU3NWFkYjk1NWQxYmNiNjE0MDVlOTRmNiBsZWdhY3ktdHJ1bmsKKzM2MDU3IGQyNDRiNTNlY2ZiZWJlMGM1ZTZlNzBlY2I5ZDNiOTc3ODBhYzA1MzcgcmVsZWFzZTIzLW1haW50CiszNjA1OCA5Njg5ZGEwMDExOTdmYTllZWU4YjRiYzVkOTdkMTFhMTk2YzFiZTQyIGxlZ2FjeS10cnVuaworMzYwNTkgZThiNGY1NGY3ZDE5ZWM2NzY4OGI4MDIwNDdmZjcwNDc3NGQ2NzIwNCBsZWdhY3ktdHJ1bmsKKzM2MDYwIDMwMGRiODFlMmU0YWNiZWMyMjFjYTNjMzgwMTA4ZDk3ZTFhYzMxZjggbGVnYWN5LXRydW5rCiszNjA2MSBhNmUwNDg0NzI4MGEyNmRlYTVlNjk4OTQzZTg0Zjk4YmI4OWY4NjkzIGxlZ2FjeS10cnVuaworMzYwNjIgYjkzNDVjMzU1ZjA0YjcxOTc3MzRlMzBlOTI2ZjExNmU0OWU3MjA2MyBsZWdhY3ktdHJ1bmsKKzM2MDYzIDBiZGI0OWE1YThmYTYzMzY1MmM0MDk0ZGI4YjQzNzMwMTIwY2RhNWUgbGVnYWN5LXRydW5rCiszNjA2NCA2OTQ1MjhlODVhMDRkMWZiYTYzZTVlZmY2YWExZTNmNWIzNTc2MzQzIGxlZ2FjeS10cnVuaworMzYwNjUgYzhhMjJiNWNmNThhNThiYWEyYTY4NTQ5NzI1NDJlNGRmYzY0NzIwOCBsZWdhY3ktdHJ1bmsKKzM2MDY2IDNkNjQyNGMwMzg4ODJlZDU5NjJlMjE2YTgxMmJjZGYwNDFhNWIyN2MgcmVsZWFzZTIzLW1haW50CiszNjA2NyA3MGNmZTA2NWVhYzU5MjY0NmEyYWViYmEzMjViM2RjMjI4NjA5M2M0IGxlZ2FjeS10cnVuaworMzYwNjggYTk4ZjUwZTUwYmVmYTFlNTJiMDUzMDFlZmQzNGE4M2M3ZDJmZjc5NyBsZWdhY3ktdHJ1bmsKKzM2MDY5IGRmNDk0M2QyNGNiNmRkZGU0NzcyMDY2Y2NmMzhiYmZjOTA4YWExZDUgbGVnYWN5LXRydW5rCiszNjA3MCA3NDA5YzBjMzcwZTIxMzI1OGRmODNjNjVkMGFkODllZmMyNjk4NjMyIGxlZ2FjeS10cnVuaworMzYwNzEgZWZjYTM1M2U3ZmQ2NzVmNzExNzhhZDhjMTE2YWQyZjk4MThjNzlhNiByZWxlYXNlMjMtbWFpbnQKKzM2MDcyIDI5Zjg3OTMyYzdjNzhiY2EzNjdiYjc1N2E5NTQ1YTU5NDNiYjc2Y2UgcmVsZWFzZTIzLW1haW50CiszNjA3MyBhNzJiYzQyNTczMzY1MWViNjE0OTVlZTM1ZWNmMjRiMmZmN2JjOGUwIGxlZ2FjeS10cnVuaworMzYwNzQgZWM2ZjlhMTkwODMxOTMxY2ZhZGQ1NTczOTY0ZDgzODEwMDlkNDVkYSBsZWdhY3ktdHJ1bmsKKzM2MDc1IDEwYTAxY2UzZWEwYWUwMWRjMzU1ZjI3ZWZlMTFjZmIyOTI3NjcxYTcgcmVsZWFzZTIzLW1haW50CiszNjA3NiAzNjM0NDE4YTg1OGU4MjczYjRhMDBhZjc1OWZkMzhhMzkyNDU3YzdkIGxlZ2FjeS10cnVuaworMzYwNzcgMmY1ZjM4ZjRiYzJiOTAwODliOTU2NzM5YWYxODZkMTA5YzUxNjhkMSBsZWdhY3ktdHJ1bmsKKzM2MDc4IDhjMDM5NGFlYzZkY2Q0MGZkYzNlODEzYWE4YWVmMDU1ZDY2NWM0YjcgbGVnYWN5LXRydW5rCiszNjA3OSAzZGZlODFhYzBlN2NkMGRmNGUyMzNmYmQxNGIxYTZiYjdjMzljYmI2IGxlZ2FjeS10cnVuaworMzYwODAgYTgwZWUyMDA0ZTZjYTQ5MmIwYjlhMmVlOGU0YzkzOTQ5N2QwOTY1MiBsZWdhY3ktdHJ1bmsKKzM2MDgxIGNkYWQwMDViYzAzMDc3NWZlZjdiYWM2NzNjMzkyZDY1Njk0MzZjZTggbGVnYWN5LXRydW5rCiszNjA4MiBjYjk1N2U2NWY0NDQ5Yjg2OThiNDk0MGRlZGI2YTYyMDdiMGU0YzIyIHJlbGVhc2UyMy1tYWludAorMzYwODMgMzY3OThmMWM4ZTlhMWE2NmZkZDc3ODA1ZWY5NzZjMWExNDg4MzBmOCBsZWdhY3ktdHJ1bmsKKzM2MDg0IGI5YzllN2U4YmU3ZDU0ZmI4MWEyMTk1YmE4ODA3NWY1MmNlMjU3MzIgbGVnYWN5LXRydW5rCiszNjA4NSBhYzRkNDIwY2M3OTllNWQyNjZhN2Y0NmE3ZGY1YTc1ZDczNzJmYTgyIHJlbGVhc2UyMy1tYWludAorMzYwODYgYmRmMjM4Nzk4OTQ5OWVkZjA2NzQ5NmQ5MGNlMGZkY2M4MDAwNmEwMSBsZWdhY3ktdHJ1bmsKKzM2MDg3IGE4OWNjNTM1YjRjNTc1NWFhYzg2YmIxZWE0NzUwYTRkNDRjZjBkZGUgbGVnYWN5LXRydW5rCiszNjA4OCBlZWFhN2ZiMmYxNmY3YTBlZDNmYTMyYmVkZjQxYTMzZGJhMGIyZDdmIHJlbGVhc2UyMy1tYWludAorMzYwODkgOGU1OTU4YzkzYzg4MjE1ZDQ1ODc5MmE2YWY1OGUyYTgzZWZkNDMwMSBsZWdhY3ktdHJ1bmsKKzM2MDkwIDhlYWI3NjU1NjAxZmVkMTIxMDAwZGMwZWM0NGFmYzYwYmFiYjEyMjQgbGVnYWN5LXRydW5rCiszNjA5MSA0MmJiMWRjZGYxNmU0MWJkMzMyZTAxZDA3MjZkZjM2MzU3ZDU5YzE1IHJlbGVhc2UyMy1tYWludAorMzYwOTIgNDdkNjRjYjAxODIwNWViZWQ0MWJjOWEyYzVmMjNlYTk2MDgyYWU3YyBsZWdhY3ktdHJ1bmsKKzM2MDkzIDAxNGIwZDg0NDIyZjdiNjMxZTAwM2YyNzlkMDQwMzg5ZTNjZjZiZWUgbGVnYWN5LXRydW5rCiszNjA5NCA5NTI4N2NkZGJjMWVjYTU2Yzk2Y2U3ODAwMWIyZDk5OGU3NzMyYTE0IGxlZ2FjeS10cnVuaworMzYwOTUgNjFhZjQ3MjEzZmU2Njc0YzgzNjI2NzE5OGRhNmZlNDM0YzJjMDM1MyBsZWdhY3ktdHJ1bmsKKzM2MDk2IDFlZWFhNTA5M2ZjMDQxMTE2MDQwMmE3ZDAwYjQxNTQwYjUxZTRkODggbGVnYWN5LXRydW5rCiszNjA5NyBhZGI1OWQ4OWIwOTkxNjA1NjNhNDg3M2RkOTVjYTk1OWIwNWYxNjI2IHJlbGVhc2UyMy1tYWludAorMzYwOTggN2U3MjczYzhkMjFlYjdiNjc3MzczNmRhMDNiZGJkNDk3MDViYWZlMyByZWxlYXNlMjMtbWFpbnQKKzM2MDk5IGMyYmMyNDhkM2U5YzcwYjU2NWJmNjMwZDI4Njg5NDg5NTFjZWIzNjMgbGVnYWN5LXRydW5rCiszNjEwMCBjMGQxMjYxZGE4NDhkNjFlZGM3MWRkODg2YWQ2Zjg2YjJjNTI2NTE0IGxlZ2FjeS10cnVuaworMzYxMDEgY2JmYTA0Mjg1NTI5MGEyMzgxYzEwMWNmYjJmYmIyZDEyMzYwZGYxZCBsZWdhY3ktdHJ1bmsKKzM2MTAyIGI2MGZjNWVmZjE1NTk0ZDc3NTA0ZDBmZTMwZDczOWVjYzVhYjZmMTkgbGVnYWN5LXRydW5rCiszNjEwMyBmZDUyYjY4MDc5MjQ4Y2IxOTkwNzgzOWU2MTI4NzdkYjNiMDUwOWVjIGxlZ2FjeS10cnVuaworMzYxMDQgNmRiZmVlMmRlZDg5NTZlNmY3OTU2M2ZlZDliYTY1NTM5NGYwZWY4NiBsZWdhY3ktdHJ1bmsKKzM2MTA1IDk0Yjg0MWFkZjQ4NWJjOThhYWU4ZGE0ZjQ0ZDZlZTNmOTg2YzdlYmEgbGVnYWN5LXRydW5rCiszNjEwNiA5MTM4OGM4NDViMTY5NWZlNDYzMGI2NTM4MjU2NGE1MzA3YTgxN2JjIGxlZ2FjeS10cnVuaworMzYxMDcgODgyY2YxMTM3MmEzZTRiZGU0NjY0NTNlNjU5NWQxNGExNmYzODU2MSByZWxlYXNlMjMtbWFpbnQKKzM2MTA4IDg1NGEyNDE3ZDM1ZWI1MThhZGFlYzY2ZTUxMDRlNDRmZGQ0Y2I3ZDggbGVnYWN5LXRydW5rCiszNjEwOSBhMDE4YWUzODZmOTllMWE0OWQxNzRjMTVmNjNiZDFjYzM4NjhjOGRhIGxlZ2FjeS10cnVuaworMzYxMTAgNWM3OWI0ZjEzYjI2ZjgyOTAwZGE5ZWYxODM2NzRmNjlmZmVjZTU3NyBsZWdhY3ktdHJ1bmsKKzM2MTExIDcxYjNkMmJiZTYzYmZhNzg1NDc2OTJiZmU3OGQ4OWRlYTgzOWUyNWIgbGVnYWN5LXRydW5rCiszNjExMiA0MGM1MjRjMWMwZmVmZWE2N2VkZGZlOGU0ZDU3ZDQzZGEwYWE2NjA4IGxlZ2FjeS10cnVuaworMzYxMTMgZTEzNDVjZTI3NWY3OWQ4MzQ3Mjg4NWViZmEyMzlhZDM1NWI0MjY0YiBsZWdhY3ktdHJ1bmsKKzM2MTE0IDZkN2QwMGJmMWFhZTU5NmVmNjY5NWFiMjA1MWZkMmM3NDhkN2NjYmUgcmVsZWFzZTIzLW1haW50CiszNjExNSA4MmZlNjgzMmU1MDVkZWIyNGE3N2I0ZWE0NWJhYjdkZWQyNGRlZDJiIGxlZ2FjeS10cnVuaworMzYxMTYgOGFjZjQyNDFlZTk0ZjVjYzExZjJiZjY2MGRlZjdkNmM2ZDU3MmM1MSBsZWdhY3ktdHJ1bmsKKzM2MTE3IGFhMGM4NGQxZjA2Nzc4NjhmYzdiZDVkZDE5NWYyNmMyOTU5MzYwNDcgcmVsZWFzZTIzLW1haW50CiszNjExOCBjZjg0ZGJjNmE4ODFjN2IzMWMyN2I2MjE3OTkwYjMwNzQwMDdhZjA0IGxlZ2FjeS10cnVuaworMzYxMTkgMjlkNzYxYzUxMDNlNzdiNTExMmJiODBmOGRlMWIzNzk4MWQyOWFlMSBsZWdhY3ktdHJ1bmsKKzM2MTIwIDkyZjU5N2EwNTU4MTVlZTNlYWVjM2EzOWUyNDQyOWYyNjY5ZDgwNzYgcmVsZWFzZTIzLW1haW50CiszNjEyMSBjODRmZDZiZTVhMTRmNDQzNjFhZGZhNGQwYzAzYjMyMjU4ZDFiMDRmIGxlZ2FjeS10cnVuaworMzYxMjIgNDFjNTlkODBiYmM1ZjZmYmNiYjJjMmIzOGJjNmNhNWJhN2MyNzI3YSBsZWdhY3ktdHJ1bmsKKzM2MTIzIGUxOTZiODIzZTZjNWJhZDFmYWFhZWEwODdjOTliZjhlZjNmYzEzOGEgbGVnYWN5LXRydW5rCiszNjEyNCBhMGQ4YjE0NTY4MTkzMTY2Yzg2YTRiMzZkNzg2Mzk2M2I2MDQ5NjhhIGxlZ2FjeS10cnVuaworMzYxMjUgMTZhY2M2MWQzM2MwMmQ2Y2M4NjFlNjM3MjEwYjMwOTJlNmJiNWZjNCBsZWdhY3ktdHJ1bmsKKzM2MTI2IDEzNjU2ZDU4ZDQ1MDE0MDU5NGNmN2RhNzg5NThkYjA4NjliMTJmZTAgbGVnYWN5LXRydW5rCiszNjEyNyBjZWRjOTU0NTk2MzZkNTMyZDc1ZTA1MWFlZTA0MWU1OTEwZWE0ZjFkIGxlZ2FjeS10cnVuaworMzYxMjggZWM4OGYyNzhhMWFkNDk5MDllODg2YjE2MWZmMGJjOGQ3NjU4OGEzNiBsZWdhY3ktdHJ1bmsKKzM2MTI5IDMyMTk3Mzc1MTI4ZTIyNjU4OGMyMzJkMjdmZjVmNDJjZTlkNjU2MTggbGVnYWN5LXRydW5rCiszNjEzMCBmYzZhNzM5MDVlNmYzOGM5ZDQ3YTI5ZWExNTg1ODMxOGM3ZTZmZWNlIGxlZ2FjeS10cnVuaworMzYxMzEgMTkxODg4N2QzODdiMDEwNGUzZjNjM2IzYTc5MzU2ZTk0OTc1YTk1YyByZWxlYXNlMjMtbWFpbnQKKzM2MTMyIGJjZDIxYWJhYTViNGYxNWI4NzhiMTI5N2MyMTcyMDJhN2U5NGFkMjQgcmVsZWFzZTIzLW1haW50CiszNjEzMyA0MzAxZWNiZWIzYWRmYTQxMzZjMDk4MzRjOGY0MTczNGJjZmQ3MTYzIHJlbGVhc2UyMy1tYWludAorMzYxMzQgZmM0NzYyZWJiZTJjZjY3MzQ3MmQ2YmE5YWZkNDA1YjQyYjUzNzdmMyByZWxlYXNlMjMtbWFpbnQKKzM2MTM1IDQzOWU3MWE0ZTU1NDY4NTRjNTRjZjg5Y2I1ZDNhYTJjNzVlYWI4NTAgbGVnYWN5LXRydW5rCiszNjEzNiA0OWU3NDEzY2Q5MWMwZTU4ODYzOWYyNmNlNDg1NTg3MDI1ZWMzZTBhIGxlZ2FjeS10cnVuaworMzYxMzcgOWU1YWY0NWNlZmNiNWY0MTJhYzE2OTdmYzAxNDhjNDIwN2Q4ODBjMyBsZWdhY3ktdHJ1bmsKKzM2MTM4IGQ2OWM4MDY4ZWFlNjFjZWQ4ZTcxNGM1MDNhNzc0MTRkMDA5NDRiMTEgbGVnYWN5LXRydW5rCiszNjEzOSA0MThhMGM2YmRjN2Q0YTBlZGZhNDJkM2IzY2ZkYTk1Yjk4OWQyNTY3IGxlZ2FjeS10cnVuaworMzYxNDAgYjlkZTZiNjY1MjczNmQ2MDE1Y2I3OGFjNzQwMDE4YWRkZTc3NThmZiBsZWdhY3ktdHJ1bmsKKzM2MTQxIDg3MzAyYWMwNzI1NTI0MzUxOTJhNDhiMGJmNWVlMzc0NWZiOTQ1NjIgbGVnYWN5LXRydW5rCiszNjE0MiBiMGY0NTRmNTU4ZTVlYjJmYTZkYzZmMDg0MWY0NTA5YjVjNTEyNmRiIGxlZ2FjeS10cnVuaworMzYxNDMgNTBmM2E1NTBiNGZlNmFlZjMzZmQyYTc3Y2MwMGU1NzNlZjk5OTRhYiBsZWdhY3ktdHJ1bmsKKzM2MTQ0IGMxZmJiYzNlZWQzOWU1ZmVjNjY5NzM1ZmI5ZjNlMjBmMmYzYzQ4ZGQgbGVnYWN5LXRydW5rCiszNjE0NSBiMDU0Y2ZmN2JiODZkNmYxMjdjMDZlMzQwOGQ1MjBjY2MyODg2YzhlIHJlbGVhc2UyMy1tYWludAorMzYxNDYgY2YyOGY0YTZlNjc2MThhNWE3N2ZjZjNmOGM1YzUyM2RmYTY1MTY5YiBsZWdhY3ktdHJ1bmsKKzM2MTQ3IDdhMTk4ZDljOTI2MTJkMjQ0MzU2M2Q1ZDMxYmY1NTIzYWJkZWI5NWYgbGVnYWN5LXRydW5rCiszNjE0OCAzMTUyYjc0N2EyZTQ2MTFiMzNmZmYyNWJkNTE2NWJiYWVkMTdlNzQxIGxlZ2FjeS10cnVuaworMzYxNDkgZjQ5NDcxOTUzNjg5YTNiZjhiNGY2NDZlODUxNDM0NGQ1ZmE2MzQwOSBsZWdhY3ktdHJ1bmsKKzM2MTUwIDZmZWFkNWVhNGJiYTIzNzI2MmYwYjA4NGUxZjZmYWExZTBjODY3MmMgbGVnYWN5LXRydW5rCiszNjE1MSA1NDEzMjdjYjhmOGJmNmI1NTcxNTRjMjhhMjM3NDI1ZDJjZDJjYThiIGxlZ2FjeS10cnVuaworMzYxNTIgMjI1M2E4YzJlYTYyZGM1ZDNmZmU1NzZlODE3NmVkZTYwZWJjYjg1YSBsZWdhY3ktdHJ1bmsKKzM2MTUzIGYwZWI3Nzc4YTE4MzA4M2YwZmVkYThmZjMyNmNjNjE1OTc4YzY1MDMgbGVnYWN5LXRydW5rCiszNjE1NCA2M2U5ZTVhMjE2MGI1ZGM5YmJhZmI5ODM3NGEwMTZkNDg0NDcwYzU0IGxlZ2FjeS10cnVuaworMzYxNTUgNDQ0ZmE1ZDUwYzE0ZDIwZTBhOGUyYmQ3YTZlNTQxMjBjNjExYzcwMyByZWxlYXNlMjMtbWFpbnQKKzM2MTU2IGM3ZGNiMDk3NDVkMzViNDliYmVhYjkxNTdhYmI2ZGQ1NDBjYmM2NDQgbGVnYWN5LXRydW5rCiszNjE1NyA2ZTRmZTU1NjBkODFkNDhhYzQxYzNiMGM4YmQyOTFhOGNhMDFlNDQwIGxlZ2FjeS10cnVuaworMzYxNTggYmM5YWU0NGIyY2U0MWZjM2RiNWY5MjJlZjI5M2JhMzYzZjNjMTdlNiBsZWdhY3ktdHJ1bmsKKzM2MTU5IGE2MjdkOTQ5MzE0OTUzMzk5OWQxZjQ1ZTNhYmFiY2ExNGI5NDFlMDUgbGVnYWN5LXRydW5rCiszNjE2MCA0MDhhNDBlNjUyNDdjZDBhNzcyZTRmOTkzYjU1NjdlMmZkOTg0MWVmIGxlZ2FjeS10cnVuaworMzYxNjEgYzdkYTY5OTBjNGVkOWI4ODdlMzQ3OWMzM2NiNmRmMjYzN2MyYTc4YSBsZWdhY3ktdHJ1bmsKKzM2MTYyIDVkMjcyNjljOWUzM2M2YTI4ZDgzM2ZkNmJiMWYwNjQ3ZjM3NWI2YjYgbGVnYWN5LXRydW5rCiszNjE2MyBjOWRiNzkzY2FhODBhMjU0OTQ4ZGE3OWFkNjE1YjA1YzhlODEzMWVjIGxlZ2FjeS10cnVuaworMzYxNjQgNTRiMjU3ZTU1Zjk5MTUwMTU1OTQ4ZGQzZGZmYmQ0MWY1ODEwY2M0NiBsZWdhY3ktdHJ1bmsKKzM2MTY1IDc0ODEyOWU2ZTEwODJmMzNkZjFlNzhhNWNiNjFmMThjMTM4M2NmN2YgbGVnYWN5LXRydW5rCiszNjE2NiA4YjJkZjlhMDdjZDcwNGRkNmZmNmM3OTU5ZGU3OWQxOTZlOTg4NjljIGxlZ2FjeS10cnVuaworMzYxNjcgMDQxMzAwNWZjMGIyY2NiYjFiY2U4OTg2NzE5ODgxNGY4NjJjMmQ1YyBsZWdhY3ktdHJ1bmsKKzM2MTY4IGU5NTBiZmUxODU2ZTIwZjQyNzEwMzAyOTFkYjU5MGFhOTY3NGQyN2IgbGVnYWN5LXRydW5rCiszNjE2OSA5ZDg2NTViNDc1ZGI0OGQwNDhjM2YxYTllNmFiMmIyMDhkOGFiZDBmIGxlZ2FjeS10cnVuaworMzYxNzAgNDRlOGU4NGYxMjgwODI1MmQ0ZTlhNTE0NjZmMjljM2E3NDBjNmVhYiBsZWdhY3ktdHJ1bmsKKzM2MTcxIDExYzMxYTk4ZGZkNjkwYTg1OTQ1Yjk3ZmRlNjgwMjNiMGM5NGY1MjkgbGVnYWN5LXRydW5rCiszNjE3MiAxM2NlNDQ3ODQ1YmNiZDQ3YmZlYmVkOGJkNmUwMGFiZTI3OTU3N2E0IGxlZ2FjeS10cnVuaworMzYxNzMgMzQ4ZGI3N2EwN2U5MThjOGM1NmI4ZjViMTcwN2VhOWE4NTkwODRkNSBsZWdhY3ktdHJ1bmsKKzM2MTc0IDQwYWNiNjhhZDIyNDc3M2I5Zjg1N2JhMjBhNmM3YWQyM2VmZGQ4N2QgbGVnYWN5LXRydW5rCiszNjE3NSA1ODFhOGExMjhlMTFjYTE1MzY5YTFkMTc2MjFiNTAwNWU5MjliMjM4IGxlZ2FjeS10cnVuaworMzYxNzYgMTJmMjRjYjI3MzgzYzk3MWI3YzAyNjdmMTViNDExMmU3MDA1ZDVjMiBsZWdhY3ktdHJ1bmsKKzM2MTc3IDYxMTgwYzMxZDRiZGIzZWFhNTA1NWRkNDE1ZTM4ZTZhYzMxMWIyM2UgbGVnYWN5LXRydW5rCiszNjE3OCBhNDZiZGU5ZTBjNzRiYjc2MWRjZTY4NDU0Nzk4ZTIyNjgzOWI1YTNlIGxlZ2FjeS10cnVuaworMzYxNzkgNmFiNWUwNTI2YTMyYWJkNDAxNzNlNDUzNzk0YTM4ZTM0YWFkMGE0NCBsZWdhY3ktdHJ1bmsKKzM2MTgwIGU1YmM5NDdjNDRjYWViYzAyOTE3NGJjOGUyYzhjZjA3MWIxZTM5ODkgbGVnYWN5LXRydW5rCiszNjE4MSA4NmY1OTYyZmQ5YjdlYzZjYjc4NDAyZmE3NjA3NDM5MGI2OWMwZDMwIGxlZ2FjeS10cnVuaworMzYxODIgNTViYTUxYmVmMGE4MWEwNDI5NGVlMmUyNjBhMDBmMTcwM2Q3NDNiNiBsZWdhY3ktdHJ1bmsKKzM2MTgzIGE3ZDZmYzE3ZjI1NzU1Mjc2Mjk0NWJjMjUwZWRmYjg3MjhiYzA5M2MgbGVnYWN5LXRydW5rCiszNjE4NCBiOGZjZTIyNThjMjAwNmEzMzliZDJhOTM3MmMyZjFiYWQzYjY2YzhiIGxlZ2FjeS10cnVuaworMzYxODUgZjRhNDgxMGY5ODJlZDVlODU0YWM2M2VkNTYyNTIwM2U1NGY1NGU0ZCBsZWdhY3ktdHJ1bmsKKzM2MTg2IDMzMWU1ZDhiMjk2Zjc2YTNkZGE4OTFmMmU1YWExZGI3NDI2NmMwZmUgbGVnYWN5LXRydW5rCiszNjE4NyA1MDkwNzJjM2ZhMjZiOTJhMjUxZTVmNTQ3YjNiMDI5MzBkMmJmMGZhIGxlZ2FjeS10cnVuaworMzYxODggMWZkM2FhNGJjMTIzYWQxMzE5ZTk3ODM0Yjc0NjQ4ZjNhMDYxY2E4MSBsZWdhY3ktdHJ1bmsKKzM2MTg5IGI5OWE1NTI3MzhiZmFlMzc5MzIzYTI4OGQ3OWM5NTYxNTI3YjVmYWMgcmVsZWFzZTIzLW1haW50CiszNjE5MCAzOTExNzNjNjhiYjNjOTA3N2RmY2FiMmFhNjQ2YmY2ZDljOGU4NTZiIGxlZ2FjeS10cnVuaworMzYxOTEgOTYzZDIzNTU3MDIwZjIyMjk5NTE0MzFjYTU4YjYwZTgyMDcxNDIzOCBsZWdhY3ktdHJ1bmsKKzM2MTkyIDExOTgyZGE5ODc5MmM0NzY3ZjE0ZWNjZjY2MTAzZjUxNzYwMWZiNTAgbGVnYWN5LXRydW5rCiszNjE5MyBlNDNkYTRmOTk5NDE1NjdjM2FiOTA1MGNkODc5ZGNmMzBmMDM5ZTI0IGxlZ2FjeS10cnVuaworMzYxOTQgMGFmNDE1NDNjOWI2NWY3MWYwZGFjODc4NTZlYTk1M2JlOGFjZmFhNCBsZWdhY3ktdHJ1bmsKKzM2MTk1IGY1MzlhOWI5NGY3OTQ1NzQ0NGNiOWJkMWRjYmRkMmRiYjJiNTk5NzAgbGVnYWN5LXRydW5rCiszNjE5NiA2Mzg0MDc4ZTdlZGY5NzZiZWYzYjE0YTlmYTczNTVhYmJjMWZjNDk2IGxlZ2FjeS10cnVuaworMzYxOTcgNDM0ZDNmMmNiODMyODI4ZTFlYWJmYzE4ZjEyYTY4MzAwMTE4OTZlNiBsZWdhY3ktdHJ1bmsKKzM2MTk4IGY3M2E2M2RkMzI4ODU2NzY2ZWExMjZjMTUzM2Q2NTgyZWZlMDkyNWQgbGVnYWN5LXRydW5rCiszNjE5OSBhOWE0YjBkZjUxMmFkNGY5NGRhN2ZkYjY2ZGI2MDRhZTY5ODc5ZGZjIGxlZ2FjeS10cnVuaworMzYyMDAgNWJmYzc1NDNkN2VmYTBmZDAwZTM1NmUwOWI4NzRjOGE1N2VjOWRmYyBsZWdhY3ktdHJ1bmsKKzM2MjAxIGM2YWIwZjg4ODk1YTVjNThlYTUwNjM2YjBlMTJlYjgzOGUyZDk2YTggbGVnYWN5LXRydW5rCiszNjIwMiA3NjMyNzczNzgxMTRjM2QwNWFmZWE0NTJmOWJhNzlmODBlNGZmM2Y2IHJlbGVhc2UyMy1tYWludAorMzYyMDMgY2RlMmZlYWI3ZmUwYWI3MGQyMWM4YjUxNTUzMGFlNmM1ZDc1OGYwNSBsZWdhY3ktdHJ1bmsKKzM2MjA0IDI3ZTcxMmM4ZTFhMzY0OWU1NWE3Yzc2NjlkZTRiODAwNzc3ZjdmOTAgbGVnYWN5LXRydW5rCiszNjIwNSBlYzY0YTZiZTMyZjcxN2RiZGU3ZjMyMmU4NzNlMTg5Y2NkM2UzMjk3IGxlZ2FjeS10cnVuaworMzYyMDYgZDBhNmNlYjg0NjQ2NDcwNmQ2M2FlMDFlNTI2Mjk1NGYwMzIwYTUwYyBsZWdhY3ktdHJ1bmsKKzM2MjA3IDY4NmU1ZDM4YmU0MjFhYmNkODI4NTc4YTU0MjczNWViZjI0NTc0ZmYgbGVnYWN5LXRydW5rCiszNjIwOCAwODE5NTA4YWFlM2FjM2UxNWM3NjU5NjdhMmQ4ODNmMmM4NDI5N2M3IHJlbGVhc2UyMy1tYWludAorMzYyMDkgNWNmNTA3YjY0ZjMxYTBkMDIzZGNjMTNjZGEyM2Y4YzIyZWM2NzM4NCBsZWdhY3ktdHJ1bmsKKzM2MjEwIGY5NTY5NTI2ZThkNDBkMWIxNjgwYzYwNjY4NzRjZGZlMWIxN2ZhMmUgbGVnYWN5LXRydW5rCiszNjIxMSA0YzcxYmNmYWNkZTJmMmEzZTM4MTJjMTZkZjA0ZWNiYzg1Mzg2MGI0IGxlZ2FjeS10cnVuaworMzYyMTIgNmZjMDI5MTVmNjM3YjAyNDRkMjBhNjQ1YzFjZjZiZDlmODYxZjc1NSBsZWdhY3ktdHJ1bmsKKzM2MjEzIDk4ZTQ2MzI3MjEyMDBiMDgwNzc3ZGRiNjg4NjYzODJjZWQ2MGYyZGMgcmVsZWFzZTIzLW1haW50CiszNjIxNCBlNWRmOGM4ZmFhMDk5YmQzMjRhYjlmMTM0M2UwYjE3NThjZmU0NjQ4IGxlZ2FjeS10cnVuaworMzYyMTUgMWQ1ODRjYTU2YjMwNDk1ZjEzOTE2NjY4Zjk2ZWEwMWMzNjc1ZjM3ZCBsZWdhY3ktdHJ1bmsKKzM2MjE2IDZiYzZhYmJhODY1OWVhYTQ5YTI4YzgyYmQyNWJhODUzOGI3MDE3YjkgbGVnYWN5LXRydW5rCiszNjIxNyAyZjc2ZTcyYWQxOTBjYjU5Mzk0YWIxYWU1Yjc2MGEyMDEzMjg1MGFjIGxlZ2FjeS10cnVuaworMzYyMTggNzU4NjFkOGM1ODcxNWEyZGJmMDRlNGIxOGFmYjE1YzI0MDFhNjFlMyBsZWdhY3ktdHJ1bmsKKzM2MjE5IDAxNGQ4N2M3MzIxMDJhN2YxMTY2ODE4OGQxZGMzN2Q2NmNmMGRkOGYgbGVnYWN5LXRydW5rCiszNjIyMCA0NzIwMjNkMGExMGQ2NDI4N2UyNmI5Y2Q2MTI1YTI2MjRkNzNlNTQwIGxlZ2FjeS10cnVuaworMzYyMjEgNmNlNjdmN2IwNDMwYThmZWRjOTA5MDZmYjE0NjE4YzZiMWQ1ZGIxYyBsZWdhY3ktdHJ1bmsKKzM2MjIyIGNkNDdmNjIyMWQ4ZDFmNTYxODI2MGU4YzhiNjU5MTAxYWVhMDFiZWEgbGVnYWN5LXRydW5rCiszNjIyMyAxYzJiYWFlMTQ4MjgyMzk3NzljNjkyNzNjYjBiNjBlNjE3NjgzMmFkIGxlZ2FjeS10cnVuaworMzYyMjQgOGNjZDhlYzYzY2MyMGMyYjRhMjBmOTg5MGNiMjNmOTY4NmE2OTMwNCBsZWdhY3ktdHJ1bmsKKzM2MjI1IDc1ZTVkMWU4YjYxNzFhMmE5ZjdkMmE2ZGU4Y2M3ZDdhMDhjZGNmYjcgbGVnYWN5LXRydW5rCiszNjIyNiA3YjZlZDM1YzU4NTBlNmY1NzAwNWU5OTczNDQ3YWMxZmZhY2ZjZWQ4IGxlZ2FjeS10cnVuaworMzYyMjYgZDk5YjViZWQwMDc4ODRiMjVmMTI3NmUyYmFmYjlhZDA2MWYyYTk1OSByZWxlYXNlMjMtbWFpbnQKKzM2MjI3IGFhZjkyOTVlZDQ1YjAwNmVjNzBjYTFkYzIzZjk1Njk0ZWFmN2Y2OTYgbGVnYWN5LXRydW5rCiszNjIyOCBlMGE3YzQ2MTMxMWIzZGNhZjZmYTM1NmNhOGRlYTEzNDExNDg1NGYxIGxlZ2FjeS10cnVuaworMzYyMjkgNzc5MTNiZTI5NGI5MjExNDY3YjQ1ODM3ZWRhZmMyYmVlYTI2MWE2ZSBsZWdhY3ktdHJ1bmsKKzM2MjMwIDg0NDQ4NDljOTQ0OGVkZWFiNjQ0ZGY1NDRkNmFjM2FiMzM1Mjc5MTAgbGVnYWN5LXRydW5rCiszNjIzMSA4MTAxZThkMjRmMDUyOGM0MTEzMDBhNjQ1NzM2ZDU3YjcwZTNiZWY0IHJlbGVhc2UyMy1tYWludAorMzYyMzIgMzkzYzE1YzBjNWE0OGY2NWViNGExY2U0NTYzNzQ5ZWZlMDkxN2QxOCBsZWdhY3ktdHJ1bmsKKzM2MjMzIGQ3MTEwYmI2YzEzZGM0MzlmNGFmM2VlMmU2YWJmOWIxOWUyNDkyZDIgbGVnYWN5LXRydW5rCiszNjIzNCBmY2ZiMmQ0MjIwYjBlNTczZTMyN2VkODU3MzBkMGI2ODkzNzFiZjA5IGxlZ2FjeS10cnVuaworMzYyMzUgYjFlNzFiMzkyNzk5YWE1NzE0ZDQ3ZTA2ODA2ZjU2NmJiOGMyNmUyNSBsZWdhY3ktdHJ1bmsKKzM2MjM2IDk1MGNmNjljNjliNjFkYzNlN2ZiM2Q2Y2I1ZWVhZjAwNjE3ZDZjYzcgbGVnYWN5LXRydW5rCiszNjIzNyAyN2UyMmY2YmQzYWU3NzJmZWE0ZmU3OTI0MWI3Y2RhYTI5MWMyYWE0IGxlZ2FjeS10cnVuaworMzYyMzggMjU1YTcxZjJkMjE1YThmNzBjMWQ1ZGI3YTc5ZmEyYjdjMGZkZDk5MCBsZWdhY3ktdHJ1bmsKKzM2MjM5IDg0ZTViNTg1ZDIwMWI4ODRhOTVmYzBhNGIyYTlkMjBlYmU1ZGIwM2MgbGVnYWN5LXRydW5rCiszNjI0MCBhNGJjMmZmZDhlNzE2YTkxNDc4NGU3ZDFkOGM1M2FhN2E2Y2EyNGIyIGxlZ2FjeS10cnVuaworMzYyNDEgNDg1ZDJlZjQzNDE5ZDE5MDAxNzBhZWJiZWE5ZDZiNjgyYzVjYjkxNyBsZWdhY3ktdHJ1bmsKKzM2MjQyIDNkZjM2ZTJlNWRkYzExNDlhZjhlYjUyZTIwYmMyMjVkODA2MjM2ZDQgbGVnYWN5LXRydW5rCiszNjI0MyA2NDUzNGZiM2FmY2Q5NDAwYmMzMGNmNzQyMWZlZjgzZTM5MjhkYzMxIGxlZ2FjeS10cnVuaworMzYyNDQgM2RkYzdhMjMxNzZiNjI4MzFkNDBhODM2NGY1ZmI3NzJmYjRmYWNlOCBsZWdhY3ktdHJ1bmsKKzM2MjQ1IGUzNzExODNkMGUxOTBjZTdlMGU3MjRiZjFhZDU4ODc0ZWYwNTkxNzggbGVnYWN5LXRydW5rCiszNjI0NiBmOGQ2MWVkMmYwZDNhMGUxODM2ZTc2NGE2MTU5YzVjMjUzODU4YWRjIGxlZ2FjeS10cnVuaworMzYyNDcgOTE1YjBlODMzYjViZmQyYmEyNWY1MzkyZWE1YTQyYTY2NmQ0ZGIzZCBsZWdhY3ktdHJ1bmsKKzM2MjQ4IDFjNjlmOTA5YzVhNjEzNzhkYTI3ZjAyNjFlNDJiYjAxMzc0NjliZjkgbGVnYWN5LXRydW5rCiszNjI0OSBkOGFiZjU4MmY4OTMwNmVhZTczZTQzZjFhYzQzMzliZjlkZGY1NzcyIGxlZ2FjeS10cnVuaworMzYyNTAgNDhjYTI3YWRhODFlNjVmZDc1NWQwOWFlMjc2YzRhNTAyZjNkNTlmMSBsZWdhY3ktdHJ1bmsKKzM2MjUxIGM3ZDJiMjRlZWZmOTlkNjA2NTE4ZGFiMjlhNjc2MzkwMTk0MTVhYTAgbGVnYWN5LXRydW5rCiszNjI1MiAyMGFkYjdjZTFiMDg1ZjQyMWIyZTNlY2I2OTM5NGEzYjI0OGFjMjY4IGxlZ2FjeS10cnVuaworMzYyNTMgZGE3YzNjNjFkNDBlMDA1MGZiMGFkYWIwZWVlNDIzZWNhZDhiMjMzOCBsZWdhY3ktdHJ1bmsKKzM2MjU0IDVlYzc4ZTJkYzRiZWM5NmVkZTc4MjM4YjU2OTU3ZGUxZWMwM2Q0NDggbGVnYWN5LXRydW5rCiszNjI1NSBmZjZiOTdjZGQ4NjRmNGY1MGJmY2QzMWRlY2IwZmUwM2NkNTIzYjEyIGxlZ2FjeS10cnVuaworMzYyNTYgM2E3ZTM0ZGM2YWUyNmRlOGIxZmQ4YTFmY2FhNmZmMzQ1M2VmYTk5YyByZWxlYXNlMjMtbWFpbnQKKzM2MjU3IGY0N2NlMjMwNGNiYjIzNTkwMzE1MjRhOGI3NWY3YThhNzcxYTQyYzcgbGVnYWN5LXRydW5rCiszNjI1OCAzOGY4ODM0MDNlOWY4Y2I3N2FmMjRlOTBkNDRhNTFlYjNmNjM0YzdkIGxlZ2FjeS10cnVuaworMzYyNTkgNzMzM2JlMDkyZWVjMGNlOTM1ZDg0MDcyMDViMTc2NTU5NTVjMjI3NiBsZWdhY3ktdHJ1bmsKKzM2MjYwIGVlMzg4OTZlMGQyNDE3M2UwNWRiYWJiMGM1NzVjYzhiNjcxYmM0YzQgbGVnYWN5LXRydW5rCiszNjI2MSA1M2YyNzRmMDJmNjk4MDU5ZGNmM2FhODBmZTI2MGQxZDk4MzczYTA2IGxlZ2FjeS10cnVuaworMzYyNjIgMWVkYzA2ODcyMTNmZTNmZGM0MTgzNWI2OWRmNGZmNWIwYWM4MTZmYSBsZWdhY3ktdHJ1bmsKKzM2MjYzIGIxOGY0ODBjMzdhMDc2ODEzY2RlMjZmMTk2ZmNmYzlkNDFlYTIwZTMgbGVnYWN5LXRydW5rCiszNjI2NCBjNTYxNjhmYWJmOGUzM2VkOWIyOWViYzc0MWUwNjM2MmNiYzJkMzNmIGxlZ2FjeS10cnVuaworMzYyNjUgNWFkY2E1ODE0OWZmNDlkZjA1ZTczY2QxYWRiZjQ1ZjNmYTM1ZjRkYSBsZWdhY3ktdHJ1bmsKKzM2MjY2IDQ2NGM4MDhkMGRjZGEzOGJiODJhMDZlMmY2YjkzZGIyYjU2NjZhZDggbGVnYWN5LXRydW5rCiszNjI2NyA3ZGI0YzU4NmUxZDZjZTI3ZjY3Nzg0ZTdiMTU2OTFjODlmNGUwY2E2IGxlZ2FjeS10cnVuaworMzYyNjggMjU2YjQ5NmFmNGM0YTA3NWQ2NmY4YzE0YzJmNDJkYjQxMDY3OGQ3MCBsZWdhY3ktdHJ1bmsKKzM2MjY5IGJiMDBlMTJlNzc0MTYwNTc3YTlmMmVlOGQwNTI5Y2JhMmJlZmIxNjMgbGVnYWN5LXRydW5rCiszNjI3MCAwZTI4ZmQ2ZmVhMDBjMmJmYzMyYzE5YjAzNGIwNTExMzgzNzc2MjkxIGxlZ2FjeS10cnVuaworMzYyNzEgZDJjMWM3YWU3Y2Y0MzIzNjViY2VjYTcxMjhiNDE4NTliY2E3MWUxOCBsZWdhY3ktdHJ1bmsKKzM2MjcyIDY3ZmJjMjNkY2ZkZDRiOTI2ZmYyMjQ5ZmZmYjQxODI2MGZlM2M2NzEgbGVnYWN5LXRydW5rCiszNjI3MyAwZjU2ZWFkOTY4MTc2NTUyYjk4MDc5YmMxZDVhNWQ0ZGE1MmMxODI2IGxlZ2FjeS10cnVuaworMzYyNzQgNzMxNTRhYjg1NjNhNWMxMTYwNTZmODFiYjFlN2ZmYTFhMTI1NDExYiBsZWdhY3ktdHJ1bmsKKzM2Mjc1IGQ1MDBmNzJmYjFhY2YxYjkzOGM3MmU0OTI2Y2FmY2ZiZWRkYmY1ZDMgbGVnYWN5LXRydW5rCiszNjI3NiA1MDA2OGIxN2Y0MWVhYTFhYjRmYzk5ODhkOWFiZDRmYzlkNDE2MzVmIGxlZ2FjeS10cnVuaworMzYyNzcgNmMxNjYxMmZiMTE4MzgxNTgwZGFmYTEwZjFlMGYwNjM1ODBlZjFkMSBsZWdhY3ktdHJ1bmsKKzM2Mjc4IGI3M2FiMzA5YWRhN2ZiMmI3YTRmMWUzN2I5YzY4ZmZmOWVmOWE4NmIgbGVnYWN5LXRydW5rCiszNjI3OSA2YjFlYTVjMDdmZjczZWVjNWRiZDM2MGM0NGJmODIwYWY0MGM0MGFlIGxlZ2FjeS10cnVuaworMzYyODAgYzQyM2UwMThhMjllMDNlZjI3NjZhNzkzNGU5ODA1ZTZiMzM3MmNiNCBsZWdhY3ktdHJ1bmsKKzM2MjgxIGUzZjgyZGY1NGM4OGUwODM1YmNiN2NjZGQ0OGU0NmU3ZjkxZDExNzYgbGVnYWN5LXRydW5rCiszNjI4MiAxYjlkYTVmZTkwNTM5NGJlYTJmNTE3YzVkZDVjNmQ1MTA2MmE4MGRhIGxlZ2FjeS10cnVuaworMzYyODMgZDRhNTkyMzBlOTNhOTZhNzFhYjU3ZDI5ZTczMTQyMmJmMDg4NDI5MyBsZWdhY3ktdHJ1bmsKKzM2Mjg0IDc1N2FiMjAwZDQ3YTZiYTdkZjBkZjA2NDRjMDlhOTgyYzRhMzM2OGQgcmVsZWFzZTIzLW1haW50CiszNjI4NSBiNTc0M2U0NDczMDkxMjBjY2MxZjBhZWYyNDQ0MDhiZjk5ZTY1ZGZiIGxlZ2FjeS10cnVuaworMzYyODYgM2M1MDM2YjNlOGU2NzViMzg4NzliMjIwYjJiYzEzNzU3Zjk2ZGQ5NyByZWxlYXNlMjMtbWFpbnQKKzM2Mjg3IGRmMTNmZmI4ZjQ5ODYzN2VkMDZhYTM0YWQyNGE0NzdjNDdmMmRiZmUgcmVsZWFzZTIzLW1haW50CiszNjI4OCAxODkxNmNlNDFjMjYwZjJiZTFhOGMyM2ZmYjA0OTA5MzRhYTQ4YTEzIHJlbGVhc2UyMy1tYWludAorMzYyODkgYjg3MTBlNmQ4ZDc4MGRmOTdjYjNkYjFmMzBhM2Q1NGIzZjIzYmZlOSBsZWdhY3ktdHJ1bmsKKzM2MjkwIDA1ZjEyYmMxZTViMzAyMjM1ZGViOGJlMDA2NmYzY2NkYjA3YTMxOTUgbGVnYWN5LXRydW5rCiszNjI5MSAyZmZjZDgzNjgxN2VhYmM1MDc5NDE2YjcyZGNmZDczNzJmNDQ3MWQ1IGxlZ2FjeS10cnVuaworMzYyOTIgNDM4M2RiNzdiMTlhOWI4MDI1ODg3NDdhYzYxYWNhNzdmMDYzYmEwZCBsZWdhY3ktdHJ1bmsKKzM2MjkzIDE0YjQxNTVkOGIwYTQ1MjEyNGZmN2NmZTc1ZWExNzJiMDM3YjNiZGMgbGVnYWN5LXRydW5rCiszNjI5NCA5ZThmN2RmNGE2ZmU3NjAxMTZkYjE4YTI0M2Y0YjY0OTkwN2JlYjA2IGxlZ2FjeS10cnVuaworMzYyOTUgNzk2Y2NiOTA4MmVmMzU2YzM0OTc4MzQ0YWY2NTY2NWM5YWJiOTdjZCBsZWdhY3ktdHJ1bmsKKzM2Mjk2IGZhNzhhYzU2ODMwOTk4NDQ4YmFlY2QyZTNkNzczYzNjYjYzNjI5MmIgbGVnYWN5LXRydW5rCiszNjI5NyBiYzU4NmRiOTk0NWEwZWMwNGY0OWE3Y2ZlZTJjM2U1YTc0NzQ1MGI5IGxlZ2FjeS10cnVuaworMzYyOTggNTBlODQ0YTRlZWQ5MGY2OGZmZTBlMWZhNDRjNjIyMzYwNmI0MjU1NSBsZWdhY3ktdHJ1bmsKKzM2Mjk5IGZlODBmNzcyYmZhMTI5MjBiYTFmNDZjZjkxMmEyMjE5MjdlZjg4MjQgbGVnYWN5LXRydW5rCiszNjMwMCA3N2RmMWNiNDE1MzMyZTI3NmE5NDczZDE3NzM3MjJjMmE2Nzg4NTAzIGxlZ2FjeS10cnVuaworMzYzMDEgYjgzNWQ1YzYxZDg2NDlmNDRiZmVhYjE0ZGFiNDgyNGE5YjVkNjE0NyBsZWdhY3ktdHJ1bmsKKzM2MzAyIGVjY2QwZmJlMGNkNWMyOGMxMzkyNDJjZTVlMmNkODhmMzQzMmMzNmIgbGVnYWN5LXRydW5rCiszNjMwMyBjNmFjZjI2MWQ2MTQ3OWQxODY4M2MwMWRhNDMwZmI2YzQzOTIxYzRmIHJlbGVhc2UyMy1tYWludAorMzYzMDQgZjNjYjk1Y2Q0MTNmNDlmNDQ0ODU3OTAwMjljNGI5YWRhOTQ3N2FiOSBsZWdhY3ktdHJ1bmsKKzM2MzA1IDAwMmFjNjI1OWMyY2I5ZDIyZmVhM2ZhMDk4MTI5MjY3ODFjMzQ0NGYgbGVnYWN5LXRydW5rCiszNjMwNiA5MWNjZTdiYmEzNzI2OTY0ODU5NWNkMDIwZTg1ZDA5MWYwZjgzNzVhIGxlZ2FjeS10cnVuaworMzYzMDcgZmEyM2E5YjE4OTY3NjE3NmI3MDgzYWYzNTFiY2E2MGZkZjU0YjkxZCBsZWdhY3ktdHJ1bmsKKzM2MzA4IDM5MjNkYzkwZWI4ZWJmNzBhMDUzODNhMWU0OGQ5OThkODY0ZDkwNjMgbGVnYWN5LXRydW5rCiszNjMwOSBhYjBhMmI3NGRkZmQ5NjllYTFmODY0NzgwMGEyZDRhMzEzZDQ3YmZjIGxlZ2FjeS10cnVuaworMzYzMTAgNzlkZjRmODdkNjdlN2FhZmEwZTM3Zjg4M2FhNTRiZDFhMjFmMWRkYSBsZWdhY3ktdHJ1bmsKKzM2MzExIGRiNTAzYTI2M2I0MzNjYmFiOGZjNGM3ZmUyMTBjMDI0YTNlMzA0ZTYgbGVnYWN5LXRydW5rCiszNjMxMiA5OWZkZjgwNzA2YWRhZTZlM2ExYmNhMDc1MDc4NmIyN2ZlN2ExOWNlIGxlZ2FjeS10cnVuaworMzYzMTMgMjAyYWUwNTc4ZWJlYjE1Y2U5OGZkMjQ4YjQ5ODRlZjE1NThlMDNhYyByZWxlYXNlMjMtbWFpbnQKKzM2MzE0IGY1NjUwM2E4ZGJhM2M0MWQwNDZmOWExY2YyMThkYmZkZjVjMjA3NzcgbGVnYWN5LXRydW5rCiszNjMxNSA2Y2ExMjJmMjczNmFiODllMTUxZmIzN2JiZmJkYWVjMDY5ZTRmMTllIGxlZ2FjeS10cnVuaworMzYzMTYgOWM4NzUxOGZhZjZiNmM0ZTc0YWM1ODA0NTU1YjRjNmQxOWU1ZDQyYiBsZWdhY3ktdHJ1bmsKKzM2MzE3IDA1NGVkZTAxZTNkMzA1N2UwNzk0YWEwMTlhNjlhZDFjN2FjZjg0N2MgbGVnYWN5LXRydW5rCiszNjMxOCA1MWViNjdhODU2OGVhMWI1ZTdmMjBjZGY0MWI2ZGFmNDUxMjVlNjIwIGxlZ2FjeS10cnVuaworMzYzMTkgNmZlMmQyNDEwMDhhODI5Yzg2OWFjMzU2YTZhYzNmMTQzMDdhNWU2ZSBsZWdhY3ktdHJ1bmsKKzM2MzIwIGZiYmQ2NzI3NDAxYjYxNjJjMzhiMWFjNWI1ZTdmMTU2ZjkxZGYyZGQgbGVnYWN5LXRydW5rCiszNjMyMSAwZGI2M2E3NjVhNzcwMWU5ZWM3OGY1ZmU4ZjEyMWJjMDUwMTFjMDhiIGxlZ2FjeS10cnVuaworMzYzMjIgZjA0ZjA4MWZmMjMxMTA5ZTExNTRlZjc4MjZlNWUyYjhhODViMTAwNiBsZWdhY3ktdHJ1bmsKKzM2MzIzIDg3NDAxNjU4ZWI0NTcyOTY5OGNkMDhjNDE5OWQ5NzM5Zjc0Yjk3MTQgbGVnYWN5LXRydW5rCiszNjMyNCBjNGVlZmZlYTE5NjAzOGIxN2VlNmU3NzRkMTkzMzM2ZTgwNDhiZjllIGxlZ2FjeS10cnVuaworMzYzMjUgMTkxNzk2YjdhMDU0NTZkNTQ0ZmIyZjA1YTI5NDI0ZjdkNGNiMmFiNyBsZWdhY3ktdHJ1bmsKKzM2MzI2IGY1ZjA0Y2UyNTE2MzU3NjE2ODQ2YWQyMDcyZDIzMGYxN2E5MGIyZWEgbGVnYWN5LXRydW5rCiszNjMyNyA2ODJmNzQwODg2MDI4ZmRlZDFmOTNmY2MzOWYwNDU1OTMyMDg1M2IyIGxlZ2FjeS10cnVuaworMzYzMjggOGU3NjhjM2FmMDE1ZDcxMjk1NzQ1N2IzNDkwMTRhYzI0ZGIzNGYwNiBsZWdhY3ktdHJ1bmsKKzM2MzI5IDNkNjg5ZTcxNWRiMjQ0YTkyNTQ2M2Y1MzZiNGU2Njc4ZDVhODljMmYgbGVnYWN5LXRydW5rCiszNjMzMCA2MWY5MDM0YTEwZjcxZjFkZTlhNjBhYjI4NDM5MjFhOTM3MjM5N2U1IHJlbGVhc2UyMy1tYWludAorMzYzMzEgOGU3YzkxZGU5NDkxOTYxNzIxMDM3OTg3NTlmMmU2Y2VmNzY3NGEyMSBsZWdhY3ktdHJ1bmsKKzM2MzMyIGM0ZWQxNGZhYjEyYTM2Yjc1ZDZkMjEyODM1ZTYyNmNhMTJlMTY1ZDIgbGVnYWN5LXRydW5rCiszNjMzMyBlYzkyOGVkMDFhY2M1NWUyNjkxMGIxNDZjMjdhZjVjYzg3ZWIxOGE0IGxlZ2FjeS10cnVuaworMzYzMzQgYjYxYzQxZDE5Nzc4NzA4OGQ1NDY1ZDhkYjAxNzc0NzA1YzQyNzUxYSBsZWdhY3ktdHJ1bmsKKzM2MzM1IDMyOWVlNDgzMGIwNDEyMTRjYWI5NWZiMGM0ZjhhMGVjZGZhYzM0YzggbGVnYWN5LXRydW5rCiszNjMzNiA0NTQ5ZTc1YTYyNDM0ZTQ4MmIyNTAzMWU2OGFmMjQyZTNiYTQzZGIxIGxlZ2FjeS10cnVuaworMzYzMzcgNWU0MWNiZWMwNDY1M2ZmNTFjMTUzNmQzZjFjNzZhNzc3OWU2M2VlOSBsZWdhY3ktdHJ1bmsKKzM2MzM4IGY1OGNjMzM0ZDE1YzQ2MmM1NjVkNmE4MzM1NzU5MDhmZWNmYzRmM2MgbGVnYWN5LXRydW5rCiszNjMzOSAxMGU3NWVhNTk2MDU0ODMzYWE3ZDk2NjM4NmRiMjg5MTQwNWRkNzM2IHJlbGVhc2UyMy1tYWludAorMzYzNDAgNGJmOGZiMTE4OTRmNGI4MWZhZjc0ZGIwMzYzNTVkYzMxYzgzNGY2ZCBsZWdhY3ktdHJ1bmsKKzM2MzQxIDczN2U4OTJhMmMyY2Y2ODYwNThiYTExYTg4ZWJkMzFhMWY0YWQ5MjIgbGVnYWN5LXRydW5rCiszNjM0MiBjYWZkMTM0ZmMxY2Q0NGI2OTljZTQyYzg4MDZjNDBkODNhYWM3YzU3IGxlZ2FjeS10cnVuaworMzYzNDMgZGE2M2UyZDZlYjhhM2QxZjBlYjM1MmViNGE1OWFlOTZmM2ZhY2IwNCBsZWdhY3ktdHJ1bmsKKzM2MzQ0IDk4N2UzNmFmYjg3OWQyNjY3NzUxZWJhYzI0NDhkZjdiYzRkZDIzZWIgcmVsZWFzZTIzLW1haW50CiszNjM0NSBlYzVkMGU4NzM5NjQxODUyYzgxYzAwN2NiMmRmYzhlOTcxMGU1ZTc4IGxlZ2FjeS10cnVuaworMzYzNDYgNzhiZDI1YjQyZDQ2MzE0MmM4NDBkMDFmMGNjYWMzZWEzYTE2YTllNSBsZWdhY3ktdHJ1bmsKKzM2MzQ3IDBkYTY2MGUwNWU2OTBkY2ExMDhiZjY4MWRiMmNjOTI2N2U4YjU4YWMgbGVnYWN5LXRydW5rCiszNjM0OCA2NzUzOWNmY2YwOWZlOGI1MzRhZTQwZWJkOWZhNmZkMzAxZTZhNGYwIGxlZ2FjeS10cnVuaworMzYzNDkgMjQ3NmE4MzM0Mjg2YjdhMGJmZTEwYWNjY2MzOWU3ZTMyMWYzMTExNSBsZWdhY3ktdHJ1bmsKKzM2MzUwIDI0NTFjOTU3MmVkZjVjMDA5NTIyY2U3MDc0NjJmZmZiOTNhODlkY2IgbGVnYWN5LXRydW5rCiszNjM1MSA4N2QxOTZlMWMyZDAxZDU4ZjA4N2JlYmRiNDQ1NGFkMDdjZjY1MTVkIGxlZ2FjeS10cnVuaworMzYzNTIgOTI4MjBlYTVhZThjYmUxM2RhMGIwMjNlN2FiNmJkMGFiNDdlNzJmZCBsZWdhY3ktdHJ1bmsKKzM2MzUzIDIwMTk4NmQ2ZDlkNjM1MGNmYjJhNjU4Y2RjNmMzOTcyYmRlYzdjNmIgbGVnYWN5LXRydW5rCiszNjM1NCAxNjM0ZjYwMTE4ODg1OTk1OWExNzhhZDc3N2U1OWUzNmNiNGNlOTU4IGxlZ2FjeS10cnVuaworMzYzNTUgMzI0NTVkYjk3MTM1NzZjMjk3ZWI4Y2VjZTViZDMwZTc1NTc4ZjU3MyBsZWdhY3ktdHJ1bmsKKzM2MzU2IDQzYjgwOTgxNWM3ZDc1OWMxY2VkOWM3NjdjYjRjZTczNzEzZTJkYjcgbGVnYWN5LXRydW5rCiszNjM1NyA3ZmQ2Zjg3ZTVkMWZjZWJhMTU4ZmUxZGNmNTQ3YjA5NjViMDMxNDk1IGxlZ2FjeS10cnVuaworMzYzNTggNGZhYjRhNWNjZTJmNWQ0NDBlNGVlNTA1YTk2M2ViYjkyNmMzMTZiZiBsZWdhY3ktdHJ1bmsKKzM2MzYwIDdlNDRmM2E4YjU2ODdjZmE2MTJlMmM0NWM4MTg1MGJjZDc0MTU1MDkgbGVnYWN5LXRydW5rCiszNjM2MSA3YWQ2ODU4N2M5YWNiNjI1MzQ1YWZlNzc4MjBiMzliMTczMzAwMDA4IGxlZ2FjeS10cnVuaworMzYzNjIgNzc1OTcwNGU3ODcyOTI1MWE5NTRkZjcwZDlhNTE1MGM1MTEwNGE0NSBsZWdhY3ktdHJ1bmsKKzM2MzYzIGVjOGU0ZWQyYjE1N2NjOWNiNzMyNTcwMDFkODE3MjJkMjFjNTRlZmYgbGVnYWN5LXRydW5rCiszNjM2NCBjNGQ1NGM0YmE1NTQzZWE4MmNmNTc0NGIxNDU5OWVhNWU1ODk2OWY1IGxlZ2FjeS10cnVuaworMzYzNjUgNDY5M2ZhMTllMjJiZGNhMmJhOTYzNTY0MDhjZjVkODQ3MmRlNWY0OSBsZWdhY3ktdHJ1bmsKKzM2MzY2IGQxZmI0YmQ0ODkzNjA3M2MyODQyYjA3ZTdlODZjNDQyMjk5MGY1ZTAgbGVnYWN5LXRydW5rCiszNjM2NyBkNDI3NDlkYjkzMzkyNTJjYTM3MDc4NjA4ZGY2ODhlYWE5MjczODA3IGxlZ2FjeS10cnVuaworMzYzNjggOTI4OGQ1MjRkNzU3OTk3MjI1YWJhOTY5M2VhNDkzZTVjODBhYjgwYyBsZWdhY3ktdHJ1bmsKKzM2MzY4IDkyY2E2NThmZDQyMDA5NWI2Mjg0YzljZTZlOTA4MmE4MDI4NWVjOWMgbGVnYWN5LXRydW5rCiszNjM3MCBiZTFhMTJkMGI4OTVkMjUxNjkyMDI1YWIzOTQ4ZDdhYTc5YjY0NTVlIGxlZ2FjeS10cnVuaworMzYzNzEgZjNmMTFkODYzYTAyZjYxM2FmN2Q1NzNmNTZkNGIxMjdlMmM4Yzc2NyBsZWdhY3ktdHJ1bmsKKzM2MzcyIGY0NmQ0OWUyZTBmMGIxOGZkOTMyNTlmNjc2YjU1Yzg1NTRkOTcyMTEgbGVnYWN5LXRydW5rCiszNjM3MyAzNzA2YTM3MDRhZWFjMDJhNTJkODY0YTEzNWU0MTNhZDRjMWJjOWY4IGxlZ2FjeS10cnVuaworMzYzNzQgYzA5OWFhNzY3OTUyZDk4YTZkN2EyNjgxZDUzMDE4N2IzNDMwZjExMyBsZWdhY3ktdHJ1bmsKKzM2Mzc1IDc0YzNiNzEzZTM1YTZhZmQ1NTg0N2E3YmVjYzU1NDc1MmU2ZTFkNDcgbGVnYWN5LXRydW5rCiszNjM3NiBkOTA5YTBkZGQxOTMyZGUwZmJiZTIxOTQ0Yjc5ZmYyN2EzYzc5MjIxIGxlZ2FjeS10cnVuaworMzYzNzcgZWMyODU2M2IwNTJlOGZkNmI5ZjRhNzQxNjczMjI0NjNkODQzMWY0ZSBsZWdhY3ktdHJ1bmsKKzM2Mzc4IDAyOWRmZmI2M2Y0YmYxY2FjYjc5NzExM2ViMzAzNDhlZTg4YTMyMDcgbGVnYWN5LXRydW5rCiszNjM3OSA3ZjRiNjZkYzQzNzYyZGE4Y2VmZjc4ZmI2OTE5YTQ1OTc3MzFiNWRmIGxlZ2FjeS10cnVuaworMzYzODAgZWMxYjU2YjQzYWYwNDY1ZDRiZTM3YTU4ZjI2ZWNlNzE0ZjRhMWI0ZSBsZWdhY3ktdHJ1bmsKKzM2MzgxIGU0Yjk2YzNhM2UxMjI5ZGFhNzgzY2ZjZjlkOTMwZWEyNjI2MDUxYjAgbGVnYWN5LXRydW5rCiszNjM4MiA2ZjM1MWIxYmNmNTM0YzhjYWFiMDI0YTFhODQxOWZlMmZkNTI4ZTE0IGxlZ2FjeS10cnVuaworMzYzODMgYTE2MGI5NjY5ZGIxZTMyMGNlMmNhM2ZmZGRhN2VhN2NjZTRjZWI5OSBsZWdhY3ktdHJ1bmsKKzM2Mzg0IDY5YmIyNDFiMDU2Yzk2ZjE1MjQyM2FhY2ViZTQ0ZTUxOTYzYzk1NDUgbGVnYWN5LXRydW5rCiszNjM4NSBjZjEzOGM1NWQ0MWJlNmJjNmVkY2YyYzk3NDNmMzU3ZmE3MzAxZjM1IGxlZ2FjeS10cnVuaworMzYzODYgMTExODY4M2NkNGQxY2Y1YzA1ZjZjN2UwZDBhMTE0NjNmOTZlZjlhNyBsZWdhY3ktdHJ1bmsKKzM2Mzg3IDNhYWRmYzNmYzRlNmZkYjgwN2ZjNmFhNWI3MGNkNTNjMzQ5ZmFkZDQgbGVnYWN5LXRydW5rCiszNjM4OCAwMDY0ZjU1YmFmYTdjOTY4NzMzODk4YjI0ZDkzZGNkNDAwZmRjMDA4IGxlZ2FjeS10cnVuaworMzYzODkgODQ0ZDk5Yzg4OGJiYTE0ZjY1MzA4YjMxNmNkZTY1YmFjNDExM2VhNyBsZWdhY3ktdHJ1bmsKKzM2MzkwIDVjMjVjYTZmZmFmOWU1OTU1NmVhNjc0YWU2YzMwODU1ZTMzNTUzNDMgbGVnYWN5LXRydW5rCiszNjM5MSA3MGIxNTA0ZTE3ZmZjZjZhMGQ5OTcwOWNmZGIzYzMzZDkwNjFmMGQzIGxlZ2FjeS10cnVuaworMzYzOTIgYmVjMGM3NjE4NjI1NDFlNTg5NjVjMDY4NmY1M2M1M2EzMzQ1N2M2YiBsZWdhY3ktdHJ1bmsKKzM2MzkzIDhlYTJjYjFlYzU5ODhkOWEzMTJjMTY0YmE2YjIyMzgyYjRhYjVhNDYgbGVnYWN5LXRydW5rCiszNjM5NCAxNTNjNTE3YmM2ZTk2ZTc0ZmMyMTMxMzBkZDg5OTc5ODc0NzQ5Y2Y0IGxlZ2FjeS10cnVuaworMzYzOTUgMjI4MzIzODk1MjcxZTA0NmU2NzVjMDQ0YzJjMzllZTJmZThjMDYwOCBsZWdhY3ktdHJ1bmsKKzM2Mzk2IDUxMWZmYzYyYjI5OGE3ZjExYjM2MWYxNTM0YWIwOTU2MTUyNmM0N2YgbGVnYWN5LXRydW5rCiszNjM5NyA4M2NiYzAyNWJmYzc0ZTRlMThhODg3MTExODFiODc2YzQ5MzQ2NjAxIGxlZ2FjeS10cnVuaworMzYzOTggZmVmNzkxMWE1NzA1Y2FlZjcwNTkzOGEzNzlmZTE4ZTFmMzFkZjIyZCBsZWdhY3ktdHJ1bmsKKzM2Mzk5IDIxZmQ2ZTYyY2QyNzZiMjcyNzkyNjA3NDc4OTFhOTljNDhmZWIxZTYgbGVnYWN5LXRydW5rCiszNjQwMCA0OTJkYzhiOGU1OGVjMTVlNzE2N2FhMjY3ZGY2Yzk0MzQ5MGY0ZTIwIGxlZ2FjeS10cnVuaworMzY0MDEgMjMwMzk3YmM3ZTMyMDQ2Y2FiNWIwN2Q4NWY0NTQxZDA0ZmMwYzU2ZCBsZWdhY3ktdHJ1bmsKKzM2NDAyIDBkZDQ3M2E4ZTUzYzA5MjI3YTFlOWQ5MTE2YmMxOTllZTNjODVkZGIgbGVnYWN5LXRydW5rCiszNjQwMyA0ZDJmNGEzOWVjNWVkMjc0OTA0YzE3Mjc5ZDMwZmE5ZDNjMjU2MTFiIHJlbGVhc2UyMy1icmFuY2gKKzM2NDA0IDczNjJlMzcyYzg5NzBkMTYzMGY4MmNkYTM1NDZmZDM1YmE2Mzg1Y2MgbGVnYWN5LXRydW5rCiszNjQwNSBmMmYwYzVmZDliNmM5ZDNmMzFmYzE3ZDNlN2JiZTRiMTczYjgxMWZlIGxlZ2FjeS10cnVuaworMzY0MDYgYTY0YmFlNWMzM2I3ZTc2YTA4NDYxYWZlOGQyMjgzYjVjODM4MWU0MiByZWxlYXNlMjMtYnJhbmNoCiszNjQwNyBkZTMyNmQ3ZTc0ZThiODM3OTk4NTExMzhkNzRhMWU2NWFiNzA1ODE2IGxlZ2FjeS10cnVuaworMzY0MDggYTAzYmNhMTY1NGQwYTJmZjgwMzdjZTI5OTM0MmVkZmMxZTIwZmU1ZiBsZWdhY3ktdHJ1bmsKKzM2NDA5IDY3YTg0YTMzZDBmOGMzNDNjMGYyZTAwNTkyZDQ2OWFmYWRiZDYyNjQgbGVnYWN5LXRydW5rCiszNjQxMCA0YmU0YzYzNjczZWIxNWM5MzFiZGFjM2FiNTA0YTcxOTFlZDQwYmY5IGxlZ2FjeS10cnVuaworMzY0MTEgM2U5MjU5NTlmYTAxYWNlZGM2ODc3MzgxNjdkZmVmMzdmMDEwYzQyNSBsZWdhY3ktdHJ1bmsKKzM2NDEyIGM3OGZjZGQwMjQ2NDQ2ZGYxMzM0NWM0ODFkMmYyZWY2Yzg0ODM2ODYgbGVnYWN5LXRydW5rCiszNjQxMyBmM2Y0NzY1ZWZlNjY4MzM4ZTIzZDNjMzUyYTUxY2VjZTk1ZTljMmMwIGxlZ2FjeS10cnVuaworMzY0MTQgNWIyNWM2NDQ2YWViMzNmNzM2NDRkYzlkNGMxZTJiNDg0NTgyMmQwZSBsZWdhY3ktdHJ1bmsKKzM2NDE1IDZkN2FiMGNhZDcyZGUxNmNmYzFkNzkyZjMyNDQ1MGYwNTg4NzJlODkgcmVsZWFzZTIzLW1haW50CiszNjQxNiBmZGI5Mzc3NTEzZTQyYjI5OTU1NGNmZDQyODg1NGE4NTNkYjYxY2Y1IGxlZ2FjeS10cnVuaworMzY0MTcgZjZiNDVkMWNiMGEyYmY2N2IxMWFiNmY2NjE1NmE2MDdmZjNkY2QxOCBsZWdhY3ktdHJ1bmsKKzM2NDE4IGI1MjdjYjFiMmI5ZWI0YWQ5NDY2Yzk4NjY1OTI3ZTUwZjk2YmYwYTIgbGVnYWN5LXRydW5rCiszNjQxOSAxYzVlZDgxZmZhMjM1ZGI4OTBmMjcxODhjMTk5ODI5NjNlNGM4Y2IzIHJlbGVhc2UyMy1tYWludAorMzY0MjAgYzE2YjAzYmExYzIyYmU0MDQzZjQwNTlhYmQ3MTNkZmQxNzYwY2RiYiByZWxlYXNlMjMtbWFpbnQKKzM2NDIxIDkwZDVjZWU3ZTY2ZTQ3YTk0OTgwNmQyZWFhNDk3OGI5NGFmYmY1MDggbGVnYWN5LXRydW5rCiszNjQyMiA1OThhNWNlNjMzMjJmYWUzYWNlNmI0OGUwMTk3ODI2MWE1YWI1MmU1IGxlZ2FjeS10cnVuaworMzY0MjMgNTA3NDVkOTlmYmYxNjA4OGQzZDEyZGZhNmYyNzg3NTI2OWI0MTEyMCBsZWdhY3ktdHJ1bmsKKzM2NDI0IDVlMWY1NWVjMTdkNmM3MTBhMjAzNzZmMzY4NTlhMmYzZjRiOTIwMWMgbGVnYWN5LXRydW5rCiszNjQyNSBhYjk3OWZmOGIwMmFlY2E1NDc5OGFjYzE2NmE1OWM0MTQ1OGE1MTFiIGxlZ2FjeS10cnVuaworMzY0MjYgNzk5YmNkZmYyY2RjMDU2MWI2Mjg2NTUxMmYzODIyOTNjNTg3MWQ5ZCBsZWdhY3ktdHJ1bmsKKzM2NDI3IDA4ZDkwNDYwYWI0ZDYyNDg3MGJhN2FmYWIwY2YyOTQzODdmYmU4YzAgbGVnYWN5LXRydW5rCiszNjQyOCA1N2QyMWM1ZTBlYjhhZjBiMmJhMzU2MjMyNDRjM2Y1NjRlMzc5YzAxIGxlZ2FjeS10cnVuaworMzY0MjkgY2MxZjc0ZDE5ZmNiYjdjYjE5MTZhOGU0NGU2MTVkNGE3ZWMwYjdiOCBsZWdhY3ktdHJ1bmsKKzM2NDMwIGM0MzE2ZGYyZmVkNDY4ODVjMjMzYzVkZDJjOGVhNDE4OTNjZmJkYjIgbGVnYWN5LXRydW5rCiszNjQzMSA2ZTljMTgyOTU4ZjkxNzBmYjI5ZWIzZTk3Mjc2YmUyMjg5YTQ5NjMyIHJlbGVhc2UyMy1tYWludAorMzY0MzIgMmIxMGUyYjVlODFlZjIzZTZhNTdmNzJmOWRlZmY1MWVmZGU1MDc1YiBsZWdhY3ktdHJ1bmsKKzM2NDMzIDRmMjQ4M2FiYjYyM2FmNjQwOGQ4NWRkZWJhNTYxYjk5NjNjNzZhNzIgbGVnYWN5LXRydW5rCiszNjQzNCA4YjMyODhmNjA3ZTFmODI0MDcwY2Q1NzA4OGIxYTNlZGU2M2VhYmM5IGxlZ2FjeS10cnVuaworMzY0MzUgNTU0NmM3YWUyNGY3MGQ3ZjVjZGQ4Nzc0Y2FiMDk1OWM5NDBmMzE5OSBsZWdhY3ktdHJ1bmsKKzM2NDM2IDMxYjY1ZDgzNzFhZjhkMjZhZWYwZTE4NDI5Nzg3MzcxZjhjYTczMTkgbGVnYWN5LXRydW5rCiszNjQzNyBmMDgxZjNhNTY4ZmE4ODdlMTViZmFkZmFmM2FkNTkyZTQzMTVhNGFlIGxlZ2FjeS10cnVuaworMzY0MzggMDllYWVlNzI5NzNjNTBlYmVlYzhmZmEwODNiZmJkZmIzNjk0YmIwZCBsZWdhY3ktdHJ1bmsKKzM2NDM5IGM1MzhhNzY0NGZmYTZjYjc4Y2VkM2NiNmUzODQ1MDliMDI1YThiZTAgbGVnYWN5LXRydW5rCiszNjQ0MCBlNmY3ZWY3MDczYzY3OTYyMGQ5OThkYmUwNGE2NjFmYWQzM2VjMzY4IGxlZ2FjeS10cnVuaworMzY0NDEgYWZiNDAzMzgzZjVkMDdhMmZkN2VhNmY4ZTc1NTM4MzA5NGNlNDU1MSBsZWdhY3ktdHJ1bmsKKzM2NDQyIGY2MDNlNWU5NmE0ZjdjODA5NGNkZWZhZTY3OTNhM2ZjMmRiMTZlOTYgbGVnYWN5LXRydW5rCiszNjQ0MyAyZmQ2OTI0MDcyOWFhZTUzZjlkMzRjNDhhNzdmZDA3MWE4NmNiY2UyIGxlZ2FjeS10cnVuaworMzY0NDQgNmFiYTZkMDc1ODk5YTYxODdkODNmNjc3NDEzMjNmNTQ1MzhkMjFiZCBsZWdhY3ktdHJ1bmsKKzM2NDQ1IDE0NDYwOTVhOTcxYWI4YTM1NmY1ZTZjYzhlYmE2MmZiMGI0MTliY2QgcmVsZWFzZTIzLW1haW50CiszNjQ0NiBmODZiZmMwM2U3NjM2NTQ2NjQyYWVjOWUyOWQwNjczNjNiZjA0Mjc4IGxlZ2FjeS10cnVuaworMzY0NDcgNzMwMTZiZDAxYTcxNGFmYWM0Y2E5MDQzZmUzZGFiNjhjMGIxM2VkMSBsZWdhY3ktdHJ1bmsKKzM2NDQ4IGQ0MmVmYzJiNDVlOTVjNjhmYjQ2MTMxYzMzMWUxZjFkOTc1ZTNhMjggbGVnYWN5LXRydW5rCiszNjQ0OSBmOWFkNWQyMDJlOGVmNDQyMzExNzVhZWEwNTc4ZmY3MTBiNjVlZmQ2IGxlZ2FjeS10cnVuaworMzY0NTAgNDU3ZmQ0MWM5NjFkMmZmOGEzMTY3ZTc3YWU0NDk5N2I5ZDhmMjFiYSBsZWdhY3ktdHJ1bmsKKzM2NDUxIDUxMzk4OTJhZGU2MjFjZDhjNjc3NjBhYzRmY2VlMDUwYzU5Y2NiZGEgbGVnYWN5LXRydW5rCiszNjQ1MiA2MTczZDk3YjgyOWU2ZTRjMTJkMjk1ZTA0MTdhNTRiNjhkZDNmZDdhIGxlZ2FjeS10cnVuaworMzY0NTMgMDU5ZGFlMDY1ODViZWZiZWFlZTI5OTNhM2M5OWQzMjYwMzUxNDYyNCBsZWdhY3ktdHJ1bmsKKzM2NDU0IGNlMzM5NjdhNGFiMGYzMzYzOGU1MTFhYTZiZWFjNmRjZjEyMDY5NDkgbGVnYWN5LXRydW5rCiszNjQ1NSBjZjBjOWUxNWY2ZjRkNjQ4NGZlZDRhOTEwOWQ3MzUxOTJkZGY3ODZlIHJlbGVhc2UyMy1tYWludAorMzY0NTYgYzk4NjlhMThlNjIxMzJkM2Y4YTUzZjM3ZmJiMThmNTk0MzNmMWUzNSBsZWdhY3ktdHJ1bmsKKzM2NDU3IGFiMThlZjgzZjVhNjJhYzRhNjFmZDE4NWM3OTE5YmJkYWNkNzZlOGIgbGVnYWN5LXRydW5rCiszNjQ1OCA5YjVjNjM4MDJiZjllMmFiNjg2NDVjMjVmYTM1YjM0NDIzZWUyN2I4IGxlZ2FjeS10cnVuaworMzY0NTkgNmYzNmUwMmIxZjY5N2QwY2MzNDY2Y2QzNGViZmUxOTZkNzI5MWViNyBsZWdhY3ktdHJ1bmsKKzM2NDYwIDk5YWM1MzBlOGIzZjU3YjQyZjgxNWM0OGM3ZmY4ZWUxMWEwMDY3ZjkgbGVnYWN5LXRydW5rCiszNjQ2MSBlZjIzOTQwMTRkMjQ1ZTUxYTQzMjM4M2VmZjAyNDdiOTFjNmVjNWE3IGxlZ2FjeS10cnVuaworMzY0NjIgMmRiZjU5NmUwNTI0ZTk1OTEwMGYzM2E4MmFhZjlhYzhmMzMyZWYxMSBsZWdhY3ktdHJ1bmsKKzM2NDYzIGZkZTQzMjdjZDQ3MjRkNGEwODY5OWRkNjA2ZWQ4ODdlN2Q1MTllOTcgamltLW1vZHVsYXRvcgorMzY0NjQgZGExODIxMGUzMTFjMmMyMGUyYzI0NTgwZWVmOGNlMzFkOTZjMDI4OCBsZWdhY3ktdHJ1bmsKKzM2NDY1IGQ4ZjMxN2NhODBiZDMwY2JmNmM3ZmQyYzY2MDNjNmZjMGQ3NmNkNzEgcmVsZWFzZTIzLW1haW50CiszNjQ2NiBkYjk5NDg0OWNkZjNmYzQxMzZmMTU2ZmE0NjE2MDk0OTUyNmM3ODFmIGxlZ2FjeS10cnVuaworMzY0NjcgY2YwYmFlZmU4ZDQwMTMwYTMyODc4ZTZjZWI5YWNmNjJkNTkzMTM0NyBsZWdhY3ktdHJ1bmsKKzM2NDY4IGZiYjkwMWQ2Mjk3YjU1ZGMzZTNlNzkzNzYzMmQ0M2VmZDI5ZGVlNzAgbGVnYWN5LXRydW5rCiszNjQ2OSBmZjU5YWQ1ODU2OGUxZjVjYTM1NWM3YTlkM2RjZjQxZGRmY2RjZDM1IGxlZ2FjeS10cnVuaworMzY0NzAgZTg5OTA2MGIxZjA1MWVmMTRiYWQ2MDk5OTYyMWNlMWIxYWViN2ZjOCBsZWdhY3ktdHJ1bmsKKzM2NDcxIGRjMzJlMGE4YTBlZGIxNWYyY2ZjMjgzNWI2NTAyOTg4MDI1YjczYmQgcmVsZWFzZTIzLW1haW50CiszNjQ3MiA5YmMyZWVjMTQ3OGI2YmE1NWYwYjA3ZTY4OTEyZTg1ZmVlNTMyODEwIGxlZ2FjeS10cnVuaworMzY0NzMgOWMzNDg1MjZhNjk5NDA3YmNmMzExMzQ1NThhODI5MWFhZThhM2EzNCBsZWdhY3ktdHJ1bmsKKzM2NDc0IDZjMWM1OTU3ZmVkNWY5ZTBmZGM5ODJiNjczNWZkMDJjOTFmMWU1ZmYgcmVsZWFzZTIzLW1haW50CiszNjQ3NSAzYzJkOWU3YWM1YTFmOTlmODhjY2EwYzViODI4NTVhMWE4ZmE2YWNkIGxlZ2FjeS10cnVuaworMzY0NzYgN2JkMDRhNGQyOGI5MzFmMTg5YTYzOTRlZGQ5MGM1ODViNGJiNDM0NSBsZWdhY3ktdHJ1bmsKKzM2NDc3IDkyOTQ0NGNhMjJkOGY2ZGZlYzllZGVhMzk5YzhlN2NlZmVlMmNiY2EgcmVsZWFzZTIzLW1haW50CiszNjQ3OCBmNzI1YTE5MTBkMGQwNzczM2I3ZDUxNmIzNTVjNzlmZGRhNzU4OWYzIGxlZ2FjeS10cnVuaworMzY0NzkgNDYzYmY1ZWJmOGEzM2FiNDMzM2Y0NGQ5NzY2NzdmNjkzYzRhNzEyZiByZWxlYXNlMjMtbWFpbnQKKzM2NDgwIDM5MTkzNzU3MTA2NWFlMTI2NGFhNWE0OGNiZjg3OTYzODVjNzJkOTggbGVnYWN5LXRydW5rCiszNjQ4MSBiZTE0MjdjYjA0MDZmNjI5ZjczYTE0NGUxMjQzMWI4ZTFjYTE4NzUzIGxlZ2FjeS10cnVuaworMzY0ODIgM2NjYTI4YWIzODU0NDIxNThiMGM5MmRmZjVhMmZhYWYzZTJjNTViOCByZWxlYXNlMjMtbWFpbnQKKzM2NDgzIGNhMmFhNDNiYTM4YjdhZWYyMzczMTRlYTZlZTJjZjExNWE1OTkxMTggcmVsZWFzZTIzLW1haW50CiszNjQ4NCA1ODg0M2YxODZlODBmZGVmZTQ5MWEzNDlhYzk1ZjQ3YzRiN2VkYjdjIHJlbGVhc2UyMy1tYWludAorMzY0ODUgYzEzMWM3ODhhMDZmYWM4MTg1MzNkZDdiYWMzNjgxZWJlZmNkMjc4YyByZWxlYXNlMjMtbWFpbnQKKzM2NDg2IGU0ZDlkODQwY2U2ZTU1OWNjM2VlNWMzZjVjZTFjZjVkZThmZWQ2MDggbGVnYWN5LXRydW5rCiszNjQ4NyA2YzVmMDFlYzJmNzViNmUxNDc5ZjQ1MTUxYTRiMTE0ZDhiYjNkZGI4IGxlZ2FjeS10cnVuaworMzY0ODggOGJkNjdiYWQxNDNjZGM1NjJkZTYwZDk2ODVlOTdjMTMxZjU3NzljYyByZWxlYXNlMjMtbWFpbnQKKzM2NDg5IDNlYjZkMjUzNjBhMzdhMDIyOWI5ZmQ1MDEwMWMxNDRlZjY0MDA3MTUgbGVnYWN5LXRydW5rCiszNjQ5MCBjMTNkOTExYWUwNWJjMGYzNjVhOTcwMDMxODk2MjgwZmU4Y2M0NmMwIGxlZ2FjeS10cnVuaworMzY0OTEgOTQxYzIzOWNiNmQyOTY4YzAzMjA4YjdmMDQ4MDc1OWQxYzg1MjRhNCBsZWdhY3ktdHJ1bmsKKzM2NDkyIDU5NDk5NmNhZmYxMGQxM2I2NmQxMjcyZGJlODQxNmJhOGQ1M2NjN2EgbGVnYWN5LXRydW5rCiszNjQ5MyAyNzJhYjVhNTRiOWViYzljNjFlZDFhNzJmYzg1MTU5NjA1NDFjODJkIGxlZ2FjeS10cnVuaworMzY0OTQgYTFhOTc3NmZhYjUzZWEyZjY0MDI0ZWM5NjEwYzA1YjRmOTBiZGZhZCBsZWdhY3ktdHJ1bmsKKzM2NDk1IDUyYmVhZmQ5MzZjODBlNThlNTMzZmU3NmIzNDQ2M2Y1OGFiYTA1M2IgbGVnYWN5LXRydW5rCiszNjQ5NiBkMmU2NmVhYTVmNzRlODFlNzg4OWM5MTFiYmRjZThiOWY0NDEyZWM0IGxlZ2FjeS10cnVuaworMzY0OTcgOTc3NjhkODczOTRhNDQxMDcyNTczZGMyYzM1NzZjZmI4ZDY3MDcwNCBsZWdhY3ktdHJ1bmsKKzM2NDk4IDM0Nzk2MTBmYjI4OGQ5OTkyYmM4NGI4NDhiY2RkOGI3ZjAyNTY0OGYgbGVnYWN5LXRydW5rCiszNjQ5OSA5NDk0NzNmYTQ4Mjg1ZTVjODZiZjJiYzQyYTc5YjczZDc4YjIxYTY1IGxlZ2FjeS10cnVuaworMzY1MDAgODhmNTQwNTc2MWFmNzYzNGM3MTQxMTRjMTVjYWJlZGRjNTM1ZmVkNiBsZWdhY3ktdHJ1bmsKKzM2NTAxIDY4N2QyZWNmYTY0ODVlOGI3NThiMmZhMTllZDUxNDkzMDNiYWI2OTkgbGVnYWN5LXRydW5rCiszNjUwMiBjYWRhMmU5YjY4NWM4OWU5Yjg3MGY2ODdlYjE5YTY1ZjcwMTNmMTg4IGxlZ2FjeS10cnVuaworMzY1MDMgNTU4MWQ2OGIzYWU5ZTcyMzg0ZGY1MWFmZjY5MjUwMjJmMWQ0MDI3ZCBsZWdhY3ktdHJ1bmsKKzM2NTA0IGQzZDQyNjQ4M2Q3MTA0M2IzYjU5N2ZjYTVmMDc4NTBmZmU2MWE5ZjUgbGVnYWN5LXRydW5rCiszNjUwNSAxMDRhN2ZjMDZiZGZhMmE0ZGVkNGQ1ZTc5OTBlMjhkODAwZjg4ZDEyIGxlZ2FjeS10cnVuaworMzY1MDYgYmM0ZGQzMWM3M2ZkZjRmODU2ODVlMTQ5ZGRjNjg2ZWZlODBlZTk1NCBsZWdhY3ktdHJ1bmsKKzM2NTA3IDhmY2YyMDUyZDE2ZTIwNjIyOTJhODdkMGM4YTk2YzU2NzYzYTc5ZWMgbGVnYWN5LXRydW5rCiszNjUwOCBkNjRkY2ZiNDk1YjJiNzE1ZmRkMTZjYzNmZGVhMjA2NThjNzZkMGI3IGxlZ2FjeS10cnVuaworMzY1MDkgMzVkNDBmZjY5ZWI2MjY0ZTliOTFlODYyMDYzNDdjM2ZiYjYyOTRjZiBsZWdhY3ktdHJ1bmsKKzM2NTEwIDlhM2I0MjE5YmNiZWRlYmE0OWM1MWJmZjc5OWNmOWJiYTA1MzY2YjAgbGVnYWN5LXRydW5rCiszNjUxMSBmYWU0NjA3OTRkM2QzOWY2MGE5NDBjZDk3OGU3NWNlZTVkZDdiMjhhIGxlZ2FjeS10cnVuaworMzY1MTIgMTM5OWRjNjE2NzIwZjRiMDNiM2NkYzIyYWNkNjE5M2ZiY2VhM2EwNSByZWxlYXNlMjMtbWFpbnQKKzM2NTEzIDU3N2E5ZTRjODJmYjcxZTI2YmVjOWU5MjJhNDg4ZjNjYmY3OTU5Y2EgbGVnYWN5LXRydW5rCiszNjUxNCAyYmY4NjlkMzFmMGNlNjE1ZTdjMzM4NWNjMDgzZDYxNWY0YWUwMjM2IGxlZ2FjeS10cnVuaworMzY1MTUgNWZiNzhhMmQ5NGYwYWRlMGQ5YTUyYWE1NzNhMmRjZjNjYWZmNjRiMiBsZWdhY3ktdHJ1bmsKKzM2NTE2IDIxMWRiNjdjY2QwOWVkOTQzNGU3ZjA5MmVmZjJhNmQ3NzdlOTRjNWQgcmVsZWFzZTIzLW1haW50CiszNjUxNyA3ODBhMzM3ODc0NThlY2UyMTNiMzY2N2NiODdkODEwOWVlYTE5NmE5IGxlZ2FjeS10cnVuaworMzY1MTggM2MzODJkOTBmMzAyZDNlNTYyOGZmNzYzMWRmN2ZiOWM0ZWI1MDNiYiBsZWdhY3ktdHJ1bmsKKzM2NTE5IGZmMjY3MTRiZjg2ZGM0YzIyYjRlMTU4YzE2NzM1YjY2MTRjOTg4MGYgbGVnYWN5LXRydW5rCiszNjUyMCBiZTZmMmUxYTc4Yjc2M2MyNmJiMTJkMzViOTczYzY5NjJhNTQ5MzY3IGxlZ2FjeS10cnVuaworMzY1MjEgNDliYWFkN2IwMzJlMGIwYzRkYWJmZGZhZTQ0MDY0YWI0NGE2MzFlOCBsZWdhY3ktdHJ1bmsKKzM2NTIyIDc3NDJmODVhMzcyMzhlMmM1ZWIwYmMwOGQyY2M0MzBlYzFiNjUxNjkgbGVnYWN5LXRydW5rCiszNjUyMyBkYzJmZTc3ZGQxNjdlZGM4NjUxZjUzMDI0YTA1MjY3YWY3OGM0MThmIGxlZ2FjeS10cnVuaworMzY1MjQgMDcyOWQxZGI1MTE4MzgwZGQwNzAzMjA4YzI2ZTY5OGRmNGZmYzRkYSBsZWdhY3ktdHJ1bmsKKzM2NTI1IGVkMzY2MjFiMTI2YTFlNzk4NTQ0ZDNkMmFhMTUxMTBiNGRmZDBlZTQgbGVnYWN5LXRydW5rCiszNjUyNiBkZjRlNmNjNjY2MWQwNDU4ODk5NDljNzBlZTU3YzcwYzQzZDNlYTU3IHJlbGVhc2UyMy1tYWludAorMzY1MjcgNGJlMjgwOTNlNDgwZWFjMTVhYzM0OTc0MjdiOTc3MmUzYTlhNTkwYiByZWxlYXNlMjMtbWFpbnQKKzM2NTI4IGFiMGIyYTU4ODhmOWU3MGQxMWY2YjdjOWYwYzc1N2I1OTU4N2M3MTcgbGVnYWN5LXRydW5rCiszNjUyOSA1MDY5ZjViZDY2ZjNmNmQ2YjcwZmQxMTM0NjE5ZDZmMGI2MTRkMWRhIHJlbGVhc2UyMy1tYWludAorMzY1MzAgZDFlZjg2Zjg3ODVmOTNkZjQ4Y2RhMDZmZDQ2MTFiYmE4ZjNmYWVjMCByZWxlYXNlMjMtbWFpbnQKKzM2NTMxIGYwODUyOTg3OWRiMWFkM2Q1Y2E0NTdlZmRjNmJjOTQxODA3YWQ5NGMgbGVnYWN5LXRydW5rCiszNjUzMiBhYmUwNGU3N2E0YjBmZDdhN2U4Nzg2ZmQyNDJmN2QzZjMzZGM2OGVlIGxlZ2FjeS10cnVuaworMzY1MzMgODQ2YWNlNTczODljOTJhOWRkN2U0Zjg4MDZkMTMxZWJhMDMxYTIzMSBsZWdhY3ktdHJ1bmsKKzM2NTM0IGRmODhmYWRiYTJmNTZjYmZlNDQxOTIyZTc4OTQ5MzNjMTljZTBkZmUgbGVnYWN5LXRydW5rCiszNjUzNSBjN2M5YjY4ZGRkYTI5YzU2MWRjODI4MzcwN2ZiOWFjYzIyNzIwNmJhIGxlZ2FjeS10cnVuaworMzY1MzYgMjU1YWUyM2M3OGZiNjE5M2JmYzVmNTM4YzZmNmMyMzc5NzliZTNlOCBsZWdhY3ktdHJ1bmsKKzM2NTM3IDM4YWQ5YzZlNzE3YzhiMGI4YmM5NzJmNjFmMzM4MmYyYTA4NzUzN2EgbGVnYWN5LXRydW5rCiszNjUzOCAxNzQwNjU0M2YxNWIyN2U4YWJjYjk4ZTNmMzcwOWFmYmUwZTZjODNhIGxlZ2FjeS10cnVuaworMzY1MzkgNWIwYzg3ZGU2ZDA1MDk2ZWQ0MTgxMDRjNmI3YzZkYzc3NTQ2MGUxMyBsZWdhY3ktdHJ1bmsKKzM2NTQwIGY3OWNmMTNhOWE3ZDEwYTgzMmFiZTAyMjY1ZDdlMTE1NTVkY2M0YzIgbGVnYWN5LXRydW5rCiszNjU0MSAwZTg5MGFjMWMwZjI2NWY0NDdmMjdmZjM3ZmNmMDMyZjgzOGJiZTk2IGxlZ2FjeS10cnVuaworMzY1NDIgMWJkMzM4M2JhZDk4NTAzNjQ4MDM2NWJlZDMzOTFmZjk2NjcyNDc0MCBsZWdhY3ktdHJ1bmsKKzM2NTQzIDEwOTU1MGY1YTgyOTYzMGE4ZWZmMjEwODJjMGUwZWJmMGYwODJlM2EgbGVnYWN5LXRydW5rCiszNjU0NCBjYmIyNWZkYTk1YTU4MGYyYzY3ZjRhYTliZDQ0MDc4ODgyZTZiNDZjIGxlZ2FjeS10cnVuaworMzY1NDUgZDA5ZGE3MTQxM2NhMDRmY2I2Y2YzM2ZhY2ZhMjNjNWE0MGFmZWJkZSBsZWdhY3ktdHJ1bmsKKzM2NTQ2IDRkNDNiMGFiYzIyYThiNjFmZTJhYzUwY2VhZTk5NmZjZTdhNjM0OTIgbGVnYWN5LXRydW5rCiszNjU0NyBlZmNhNTViYmJhMGFiMTJhMDRmOTc2ZDQ2OTYzOWI1MDUwMmMzNzJmIGxlZ2FjeS10cnVuaworMzY1NDggNmFjZDcwNzBlZDY2ZjdhZDY1MzEwZGIwMWEyZjhjYmFhOGY3YzNhNiBsZWdhY3ktdHJ1bmsKKzM2NTQ5IDc1NTljN2ViNDc4MDI3NDM0OTg2MjY5NjhjNjNiODQ0MWE1NjBjMTUgbGVnYWN5LXRydW5rCiszNjU1MCBlNGNjNzg4ODRmYzQyNmMyNmQyMTkyYjIxNjU1OWY0NWEyNjllMDU5IGxlZ2FjeS10cnVuaworMzY1NTEgNjlkYWRjMmNhMTRkZmNiZjYyYWUxYTE2YmUyOTAzZmIwMzgwNWMyYyBsZWdhY3ktdHJ1bmsKKzM2NTUyIDgxNzg0ZjY2Njc4OWI5MDI0Zjg3NmU1MWNiOTlmZGQ4NmM1YzU1N2QgbGVnYWN5LXRydW5rCiszNjU1MyBlMTM1ZTgyY2Y2ZTQ4OTE2ZjZiOWQ0NjVjYTljYTU3YmZmZmFmZTA4IGxlZ2FjeS10cnVuaworMzY1NTQgMDdiNDhlYWYyYjAxZWJjNDhjNGZhNDA3YjZiNjM3MWU4NTMzYzZjOCBsZWdhY3ktdHJ1bmsKKzM2NTU1IGJlYmNiNzlmMzdjYmM5NDk4Mzk3NjQxM2QwNDQ5MmZhY2E4NzM3MzEgbGVnYWN5LXRydW5rCiszNjU1NiBkYzNmMDRhZmVmNzU3MGI2ODMxZTBhYzQ1MjQ0NDQzZTUyYzk2MjQ4IGxlZ2FjeS10cnVuaworMzY1NTcgOTc3ZjI2N2IwMGY5M2VjNjI5MTlkNzZhNTEzYjNmMTMzYzQxOTA1NSBsZWdhY3ktdHJ1bmsKKzM2NTU4IGIxZDE0MmQ3MTQ4Mjg5OTg3MDQ2MDZkYWZmZGYxNjVjN2Q0N2U5MGQgbGVnYWN5LXRydW5rCiszNjU1OSAyYmM2NmYxZGY3Y2M3YzgyM2ZkYTNlZTY0YjJjY2UyMGVhNzdlODlhIGxlZ2FjeS10cnVuaworMzY1NjAgYzNhMDk2YmZiZDZiZTkzOTU5OTBlNzkwOGM1Zjg4N2MzNTM3YTg2NyBsZWdhY3ktdHJ1bmsKKzM2NTYxIDI4MjkyN2Y3YmRlMjQyZGE3Y2MzOTU5YTMzZmU4ZmI1NjRhODAzM2UgbGVnYWN5LXRydW5rCiszNjU2MiA4YmRkNzk0YTQxOTdlODk3MTEzNjExMWJhMWVjMWI5M2ZjYTUxNGY5IGxlZ2FjeS10cnVuaworMzY1NjMgYzFiZDFjOGU2NGI0NTc0ODU5YzkxZTNiMzdmOTczOGJkNzY3ZjdkOCBsZWdhY3ktdHJ1bmsKKzM2NTY0IGI2ZjEyNTJiNjgxYzUxY2MwODNjNGZmNzM2OWQwNDc1YTc1NjA4MjAgbGVnYWN5LXRydW5rCiszNjU2NSBmOTcwOTlmOWZmMWMzMWY4NDlmYTdhNWRmNTkxMjczNjA4Mjk0MjJjIGxlZ2FjeS10cnVuaworMzY1NjYgMzM3N2E3MjM3M2ZiZjg1ZDU2NThjOTY2ZmMwNjIwNzUxNjBmMTQwNiBsZWdhY3ktdHJ1bmsKKzM2NTY3IDRlMDdlYWNiMWJkZmQ4ZDc1NGEzODUxMDg5OGJjZDdmYzgwMzNkYTEgbGVnYWN5LXRydW5rCiszNjU2OCBkMTQzNmMyOGRjYTMyZWUyZTY3NzczNTIxOWVlYTQxNDY2ZmFhYmFiIGxlZ2FjeS10cnVuaworMzY1NjkgZGIxYTI3YjZkNzc1MGVjMjc2Yjk3M2JkMWQ5Y2Q5YjY4MDY0MzVjNyBsZWdhY3ktdHJ1bmsKKzM2NTcwIGMxODI0ZDY4ZDEwZWFjNDNjOTgzYzE5ZjgxN2ZiYzExOTE2ZjU0MzAgbGVnYWN5LXRydW5rCiszNjU3MSBlNDU3NTUxOWVjMjYyM2EwZmQ1NTkzOTc3YjlmZTFjMTJkYzM2MTZiIGxlZ2FjeS10cnVuaworMzY1NzIgMDVjYTIyMzJlZmNiZGJkMzk2ODk5YzZmODk3MzU5MThkZWI2YWQ1YSByZWxlYXNlMjMtbWFpbnQKKzM2NTczIGI3OTUxZTFmNWRkZjI5YjBiNDQwMzA0M2E0MzU5OGZmNjE2MTAxMzIgbGVnYWN5LXRydW5rCiszNjU3NCA1ZDlmNzJkMDg0M2VlYTlkOGVjZTNjYmRiY2U3YjZlMTAwZTQzZmMzIGxlZ2FjeS10cnVuaworMzY1NzUgOTVlYjZlMThhNTQyNzNkMzVjZjg5NjljYjNhZmFkNTQ2NDNlYjIzNyBsZWdhY3ktdHJ1bmsKKzM2NTc2IGRiZDNhMDRlYjBjNjQ4OTU4NzM2ZjQwODk2YTM3MjYxMDI1YTMzODAgbGVnYWN5LXRydW5rCiszNjU3NyBiNTQ1OWJmNDgyNjI0YmExZWYyZDU0YjhiY2ZjMmYyM2YyMzZjYjVjIGxlZ2FjeS10cnVuaworMzY1NzggOTM4ZGMzMmRkYmM0MWYxNDU4ZDJkNmI3NDVjMzY2MGY2MWNmMTY0NSBsZWdhY3ktdHJ1bmsKKzM2NTc5IDI1NzU2M2RjYjQ0MjM0NGZhYWY5ODdjYzgyM2M0YWI5ZTRlODA3MjIgbGVnYWN5LXRydW5rCiszNjU4MCBkYjI2YjNkYmU4MDI3Y2M5YjA1MGVjMzRjNmNjOGE1ZTE3OGI1M2UxIGxlZ2FjeS10cnVuaworMzY1ODEgMjZjYjA1ODkwN2YyMWI3ODE2NGE5YjIyOTQwYmVkMmI3NmE1OGQ5OCBsZWdhY3ktdHJ1bmsKKzM2NTgyIDg1OWVhODYxMmViMGRjNTI4YjRhMTRkMTdmMGIyM2YwYjNkYzI5MzcgbGVnYWN5LXRydW5rCiszNjU4MyBkMTc3N2Y1MTkyM2JiNjE4MTU0MGFjMWYxZTZiNzIyOWM1ZDc5ZjM1IGxlZ2FjeS10cnVuaworMzY1ODQgZGNjNWMyZDU4ZjMyNWZmYmM4MTFiZjIwN2EyMTdhMzVjNWY3YWE4ZiByZWxlYXNlMjMtbWFpbnQKKzM2NTg1IDYxYmU5MDRhMWQ0ZTM1NTNkN2EyZDcxZDI5MDViMjkzYmM1ZjczYjIgbGVnYWN5LXRydW5rCiszNjU4NiA3NmFkODE0YmM2N2M5NGVlZmZiOTc4MDZlOTUzZjhhYTE2MGQwMWE4IGxlZ2FjeS10cnVuaworMzY1ODcgOGFkNWExNjIwMDkyZTRkMGVlNjE1NDNlZjMwNThmN2U0N2MxMTVhMiBsZWdhY3ktdHJ1bmsKKzM2NTg4IGVjYjBjOTdmMWU0MjYwZGFhNzI3YTcxMWYzZmY0Y2QyOGU5MTYyZTAgbGVnYWN5LXRydW5rCiszNjU4OSA1MGVjZTNkNGZmMzcyMjg3OGIyMDZlNTIzYTEyZGE1Mzc4OWEyMTc1IGxlZ2FjeS10cnVuaworMzY1OTAgZDE1NTE3ZjJhYmU4YmNmMjhhNTkwNzRiYTUzOWNjYmYwNTVjMjdjYiBsZWdhY3ktdHJ1bmsKKzM2NTkxIGE5MWU3YTQ1ZjE0MjQxZjY5NmVmOTE1MDRhMGZmYWU1ZThlOWViYmUgbGVnYWN5LXRydW5rCiszNjU5MiBmZmE4YWIwMDgxZjIxM2M0OTU3NDc4ZjFiMDA0MGI4MjExMzk2MDI0IGxlZ2FjeS10cnVuaworMzY1OTMgOTgzYTkxYjUwZjZlNzg3NTAyNTIwNWI2MGFkNTQyOTQzOTIzMDEzMiBsZWdhY3ktdHJ1bmsKKzM2NTk0IGEzYjFkNmM5OWU0NjIxYmU0ZjdkNDk0NzQxM2IyZGZjY2I1NWU2ODIgbGVnYWN5LXRydW5rCiszNjU5NSA2MmY4NDNmY2I4MjM3OTdiY2M5YTU5YWExY2Y2M2Y0ZjhlZDc5NzNlIGxlZ2FjeS10cnVuaworMzY1OTYgMmVjNDUxMjMwYjhlYmNiMzI2NTY1YWE5MjRlOGZlMmU3ZWM3MGVhOSBsZWdhY3ktdHJ1bmsKKzM2NTk3IGIzMDFlNWRlZTkzOGMyMzhhMDEwZDgyNDJiMWJlZjZjZGRiNTI3OTMgbGVnYWN5LXRydW5rCiszNjU5OCA4YTkxY2Q3ZDdlODI1NGRkNWMxZDI3NTUyYTcwNDQ1MDI5NDAyNzFjIGxlZ2FjeS10cnVuaworMzY1OTkgODI2MDY5YjcyNWRiMjY5ZWExY2RjNDRmNGE2OWFhNzMzYjI1NGFmNSBsZWdhY3ktdHJ1bmsKKzM2NjAwIDY4NzVjZjA4ODJlMDEyM2NiNjQ2MmFiN2JlMGRjZDMxNDcwNGRkZjIgcmVsZWFzZTIzLW1haW50CiszNjYwMSAxM2QyMDMyMjc4N2Q1YTMyYWIwMTc3MThjM2VmM2YxYmIzOGE0YjU5IGxlZ2FjeS10cnVuaworMzY2MDIgN2FmNjk1YmM1NDgwOTI2NWFhMjhjODE0YzUzMzU1MGNiMmI4YzUyOSBsZWdhY3ktdHJ1bmsKKzM2NjAzIDMxOTM4YTQ2M2YyODdlOGY2NzQ2NDQ2ZGViYjNmMmQ3Y2FiODZhODUgcmVsZWFzZTIzLW1haW50CiszNjYwNCA1MTdlMDBhZjEzYTFhNzgzMTE1MmQxOTE1MjA2ZDVmNjgwNDIwY2MyIHJlbGVhc2UyMy1tYWludAorMzY2MDUgY2FhZWYzMDJmMWUzM2M1OTQzM2Y5OGY4NDJkNjI4MGZhYjkwZDFkNiBsZWdhY3ktdHJ1bmsKKzM2NjA2IDc5MTdmZDJjNDI5ODM4MWYyZTI0MTEzNTE1OTU0N2Y1OTJkMDJmYzggbGVnYWN5LXRydW5rCiszNjYwNyBkNmU3M2U1Mjg4MGU0Nzc5N2VjY2E3ZmVkMzNjOGJkMjI1YjQzMmEzIGxlZ2FjeS10cnVuaworMzY2MDggZTZiODQ3YjA3NTUzZjNjZWU2NjhhY2EzMzZjZjZhNDNlYTM2OTYwMSBsZWdhY3ktdHJ1bmsKKzM2NjA5IDAzNGIzYjkyYzVlMDMxMzkwNGMwNmExZTNmYjc3MjUyYmRiZjVkZGEgcmVsZWFzZTIzLW1haW50CiszNjYxMCA0ZjRiNzk1NjI4N2NhYjY4OTNhNjdjNDljNDE1MDUyMjA3NjlhYjZjIGxlZ2FjeS10cnVuaworMzY2MTEgODA3ZmJlOGQzNTg0MDEzZTY1MDczMDJiZWQ5ZDg3ODdjMzQ4OGM3MSByZWxlYXNlMjMtbWFpbnQKKzM2NjEyIDAwODkyNDIwZTBkZjVlMDg2NWNlZGE3NjBmM2E5YjM3Y2UzYjM3ZmYgbGVnYWN5LXRydW5rCiszNjYxMyA2ZGY5MzIyZDZhYjgyMzc4OWY4YjMxZWM3ZTYyNTRkY2QzNDdjZTM1IGxlZ2FjeS10cnVuaworMzY2MTQgYTk0MGI2YzA3ZTU3NzVlYmEzYmVkNzQxOWY5YTA2YTEwNmQxNWNiNyBsZWdhY3ktdHJ1bmsKKzM2NjE1IDU1ZjczYzgyZTMwNGJiODlkYzhlNjQ5MWZlMGY1ODQ3ZDBkNzY3NDYgcmVsZWFzZTIzLW1haW50CiszNjYxNiA3MzA0NTE0M2JlNjNlOGNmZmJjNmZlMGRkN2M5ZDE1MTU1OWQ5ZjE3IGxlZ2FjeS10cnVuaworMzY2MTcgMWUyMTg3ZjUwNjMxNzE1N2MzNjA5M2YzNzFkZWRmZjUyODJjOGU5NyBsZWdhY3ktdHJ1bmsKKzM2NjE4IDBmOWMzOWIzZTVmMDJmNDg1NTRmOTI3YWQ0YzVhZjEwOWRkZTcwNDcgbGVnYWN5LXRydW5rCiszNjYxOSA0NmUwNDMxYzk3MDFjYWMwYmEzMGZmOGRhMTlkYWQ0MTY4NTgyMTg1IGxlZ2FjeS10cnVuaworMzY2MjAgZmE0OWMxZTJkMmMxMDcwY2U5NjRjMzRiOThmNWY0Mjk1MjgyMGQ4MCBsZWdhY3ktdHJ1bmsKKzM2NjIxIGVhNTRmZGI4NjUzMGVjZTU0ZDRhZDk0MzExM2E2YjNiNGE5NTA1NDQgbGVnYWN5LXRydW5rCiszNjYyMiA5MjY3YWViNzI5ODVkMDUyNGJlYmFlZDlkY2QxMjUyNjJmYzI1M2RhIGxlZ2FjeS10cnVuaworMzY2MjMgZWFhOGEzN2UxZTg1MGNlNjY2ZmI0YjQ3NTViYzMyZjZiZTJhYjU5MSBsZWdhY3ktdHJ1bmsKKzM2NjI0IGZlNDE0NWJhMzliZmZiYTYxNzgyMzdhZjViNTg0NmYyNjg5MDY0ODkgcmVsZWFzZTIzLW1haW50CiszNjYyNSAxNmRlNGY5MGVmNDQ2OGNiNmY5ZTczOWYzYjc3NjFkNTJhNGM5NjMxIGxlZ2FjeS10cnVuaworMzY2MjYgZDMwZDUxYjJlZmUwMTJhOGZkNWMxMTg2ZDg3MTkyY2E5Y2ZmNDUxMiBsZWdhY3ktdHJ1bmsKKzM2NjI3IGRhYzI4MTM2ZDU5YjBhYzU3Yjk2MWE0NzVmMTM4YjM4MjAyNzM3YWEgbGVnYWN5LXRydW5rCiszNjYyOCBjZGFkNjI1MzMwOTRmMGNhMWI3NDU3YjQ3Nzg0ZGU0N2M1NWE4MjU2IGxlZ2FjeS10cnVuaworMzY2MjkgYjhiYzU5NTc4YTQ3NTYzMDg3OWM1ZDkwODEwMjE1ZDE1YzBlZDdlYyBsZWdhY3ktdHJ1bmsKKzM2NjMwIDNlMDQyMzM4NTJkNGZhZGZkYzAwODI0MDFiMjg5NWY5YjE2ZGZiMWYgbGVnYWN5LXRydW5rCiszNjYzMSA0YTUxY2RjZjg2MTUzMzY2OGIwZWZjYmI4OWY2MjM3Zjg5MzgwMDkzIGxlZ2FjeS10cnVuaworMzY2MzIgZWRiYWY2MTAyMjdiOWYzMTYyNDVlOWZkMmRjNGY1YzU5YjVjNDY3YiBsZWdhY3ktdHJ1bmsKKzM2NjMzIGIyODc5YTcyYjM0NjYxZTkwYjIyNzNmOTAzMTY5Njk2YmVhYWY5NTYgbGVnYWN5LXRydW5rCiszNjYzNCA2MjNhZTEyOTMwZWExNmFkNjk0OGMxZDM4NTdjZGRiMDQyZWMwMmI3IGxlZ2FjeS10cnVuaworMzY2MzUgNmU3OWRlYTg1MTg5YWZhOTQ0ZjcyMjU1OWVmNzEwYmRhNWEyODM4MSBsZWdhY3ktdHJ1bmsKKzM2NjM2IGQ1Yzk3ZDY5ZGZjN2MxNzFjNWYwMjk4YzcwODFjOTgzMjI4MmY4ODggbGVnYWN5LXRydW5rCiszNjYzNyA5NTgyZmEyZTVlMGRhMmEwNmZlMTgwZTgwMzVhNGY4OWFjMzY2YTMxIGxlZ2FjeS10cnVuaworMzY2MzggZjYxNmQ2NTM1OTkzMzA2M2M5NGNkODQ5N2QzNWVhMWRmNTMwODQ3YiByZWxlYXNlMjMtbWFpbnQKKzM2NjM5IGVlN2I4NDEwMTE2MDRmNDk5ZjE0ODA2MzJhMTQ4MDQ5ZTVmMzQyOTMgbGVnYWN5LXRydW5rCiszNjY0MCBkMmFkYmE0NzgxZDViMDc5OGFlNjg0MWViZDIyNGZkMjJkZjdjOGVkIHJlbGVhc2UyMy1tYWludAorMzY2NDEgYmY2ODZlZjkyY2IwYmQyNDJlNjI3YjhjMzRjZDQ3Y2E3ZjkzNmU3YyBsZWdhY3ktdHJ1bmsKKzM2NjQyIGJmNmEyMDY5MDgwYzZiMWY2Y2I3ZTI2M2NiNzk2MzExMTg4M2ZkYjIgbGVnYWN5LXRydW5rCiszNjY0MyBkMWNjZDJmNDVkYTM0MTc1Yzg5ZmVmZDFiNmI4NDZjODYwNzgxYWNhIHJlbGVhc2UyMy1tYWludAorMzY2NDQgODBhY2FiOWMzYzE3NjE3N2U4Y2Q1NWU4MTM3MTk3OTQ4MGMxMDBlMiByZWxlYXNlMjMtbWFpbnQKKzM2NjQ1IGIzNThkMmY0NGE3NDAyZGM0NzA5YjQ0OWUzMjllMmUwYjBlNjBlZDggcmVsZWFzZTIzLW1haW50CiszNjY0NiAzODM1ZGZmMmVmZGI1YWQwMmI4OWVhNGRiOGMzYmRjNDA4MzgyY2Q5IGxlZ2FjeS10cnVuaworMzY2NDcgZmJiMmQzNGY3NWEzYmY3MDEyNWYyMWQ3NTNlMTc5YjAyNmYwMWIwNCByZWxlYXNlMjMtbWFpbnQKKzM2NjQ4IDcxNjMzZDM3ZTk4ZTkyY2Y5NjU5YmFhOTAxOGJmZWJhNDY4NWI4ZDAgcmVsZWFzZTIzLW1haW50CiszNjY0OSBjNmM1OGI2MWY2YjVhOGYwMzRhNjAxMWRjNmU5MGE5NjUyMmQ5MjdmIGxlZ2FjeS10cnVuaworMzY2NTAgZDk1NjgyMDg5NTA1MGI0OTU5Y2EyOGRlMjIwMGY5MDI4ZjVlNTIwNCBsZWdhY3ktdHJ1bmsKKzM2NjUxIDM3YTc1YjJiNGMyOTQwNzE3NTk2Njg5YjEwOWRlNDMzNGIyMjU1NzUgbGVnYWN5LXRydW5rCiszNjY1MiAwN2E1N2Q4OWIxZTBkZmU4YzllNzNiZmMxMWM3NWFmMTlmNjY5ZDE2IGxlZ2FjeS10cnVuaworMzY2NTMgY2JkNGFlNzQ4OTBkM2MxMDRlZDZiMjM1Y2ZjMTcxYTA2Njg2MGVlZCBsZWdhY3ktdHJ1bmsKKzM2NjU0IDA2MGRlNTA0ZWJiZWFmYzA3NjgzYmJhODA0YTE2OTFjOWY4YzBkNzEgbGVnYWN5LXRydW5rCiszNjY1NSA0MzUzZmZjNDM3ZjE5ZmQ4ODE0NWRkZWQ4MzU4MDhjZjc5MjBjMzQxIGxlZ2FjeS10cnVuaworMzY2NTYgZmE0YzcwNjNhNzM2YTVjOWUzNDI4ZTk4ODc1MGY2ODFhNDlmZjU2OCBsZWdhY3ktdHJ1bmsKKzM2NjU3IGRhYzlkMDY2NGZjMzkzMzQ1MDg1NzUwMjk4Yzk0ODlhYWVkOWM2NGQgbGVnYWN5LXRydW5rCiszNjY1OCA3MTgzMDUxMTJmOWZkNjExYzA5MDQwOTE2NWRiZGExNjFjM2I2OGQ4IGxlZ2FjeS10cnVuaworMzY2NTkgYjU4Y2Y2YjVmYzkxNDM4MGQ1MGQyZWJjNjFlMzRhNjNjYjAyZmRjOSBsZWdhY3ktdHJ1bmsKKzM2NjYwIDFkZDNjYzkyN2QzNzdmNWU5MzlmM2Q1NWU4Zjc0MjE0YTNjM2ZjMzEgbGVnYWN5LXRydW5rCiszNjY2MSA3MGU4ZjYzNGE1ODkwMjliZjhkZTY1MWI4OWEwYWZmMjdkZGQ3MmZhIGxlZ2FjeS10cnVuaworMzY2NjIgMjRkZDFkMDdhZmRiYzA2ODlmMjQ0YjI5YzE1OGJhOTlmY2ZmYjUyZiBsZWdhY3ktdHJ1bmsKKzM2NjYzIDdiNDRjMjc4Mjc5M2U5YzYzNDk2M2U0NGJmMjEwN2VhN2MzNWQxNjggbGVnYWN5LXRydW5rCiszNjY2NCAyMTMxOGQ3Njk1ZjljZDNmNTYyYzc3Zjk4MzRlYzYwNmUxODNkYzhmIGxlZ2FjeS10cnVuaworMzY2NjUgMDg1NmQ5OGUyYTY4M2RhNmIzZjc1ZjMzNjg4NzFiZjIxODQyOGNhYiBsZWdhY3ktdHJ1bmsKKzM2NjY2IGQ1Yjc2YTE2NzMyM2FhMTUzMGI5Zjk2NGM3ZDI4OTI5OTk1ZjYzZGYgbGVnYWN5LXRydW5rCiszNjY2NyBkYWIzZjA4NjY4ZGYyM2FlMzU2ZWVjMDkzMDE4OTQyMWQyMWRkMjI1IGxlZ2FjeS10cnVuaworMzY2NjggYTRmMThjODk4NjVmYjhkMGQyYWIyYjgyZWU5ZjE4N2E2NmZhMTgxMiBsZWdhY3ktdHJ1bmsKKzM2NjY5IGRiMjEwODFmNWJjMWIxNjE4ODEyMWJkYTlhMGUwZjM4NDg3NGQ5YzYgbGVnYWN5LXRydW5rCiszNjY3MCA4NjU1MTMxMTJmN2EwZTc5MThmYzMzMDE1ZDEzZjE3NTkyNTllMjJlIHJlbGVhc2UyMy1tYWludAorMzY2NzEgNWU0ODBhNWM2NDdkYTczNDQ5YmYzZTk4MmZhMmY1ZTIwZjJhYmE3NiBsZWdhY3ktdHJ1bmsKKzM2NjcyIGUzYTM1ZmJjZThlYzIyMTc2ZDM4OTMyODU2M2UzMDQyZDExZWZkZGEgbGVnYWN5LXRydW5rCiszNjY3MyBlN2NjNzQxNTJjNTUyOTdjM2NhOWY4ZDZkY2ZmMTk4ZTIwNGU4NDlmIHJlbGVhc2UyMy1tYWludAorMzY2NzQgMDllNjMzYzUyNzMwNzlhZDljNDVhYzU1YzFkMjhjZThkNTZhMTRlMiBsZWdhY3ktdHJ1bmsKKzM2Njc1IDA1MmE0M2FhMzVlY2Y3MmVkMjI4ODUxY2FkMjBiYzVkN2FmMTMxNDMgbGVnYWN5LXRydW5rCiszNjY3NiAwZjk0ZjQ4ODZiZjU1YThhNTUwZjFiMDY5NThmMDFhMDViNThiNjYyIGxlZ2FjeS10cnVuaworMzY2NzcgMTY4MjIwMWYwNWIyYTg0NTBlNjViYjY5M2IzM2U2MzVkZGMwZmY1ZCBsZWdhY3ktdHJ1bmsKKzM2Njc4IGRjYjI0MWM4OWY0Mjk3MmM3MTIwYWRiMDU1NzcyYTE1ODY2YjMxZjQgbGVnYWN5LXRydW5rCiszNjY3OSA5NmQ5OTE0NzdhODI5Y2E3N2QxMmQ5YzgzNWNlMDI5MDJmYWQ3ZDVmIGxlZ2FjeS10cnVuaworMzY2ODAgMDZhNjNjMzVkZjllM2M2NWNkYjJhZTg4NjYwNWFiMzU4ZjBkZjQ1ZCBsZWdhY3ktdHJ1bmsKKzM2NjgxIDcyNGZiMjZlYTA1ZjI0YzlhMjNjODdhY2QzYWM0ZWE4NjI2MjdiNTggbGVnYWN5LXRydW5rCiszNjY4MiBmYTA1MjZjMzBkYTgwNWY4MTBmN2U4NzA4MzU1ZTdlZGJhOGIyZDQ3IGxlZ2FjeS10cnVuaworMzY2ODMgNDVmMzIyMmI4NGVlMGVlMzFmMjdiMmJjZDI2MTY4NWEzMWJjOTU4OCBsZWdhY3ktdHJ1bmsKKzM2Njg0IDQ4ZWFlMjBkNzBjNThiODZjNGUzZjA3M2MwZWVmOWQwMWRjYjE4MTEgbGVnYWN5LXRydW5rCiszNjY4NSBmYzM2ODdhNjI3YjQzNDNjMDllOTUwZDYxOTUzOTJhYmE1MzU3ZGRmIGxlZ2FjeS10cnVuaworMzY2ODYgOWEwMGI2NWFlY2RjYzg0MzdlMjMwNzA1YmJlZTQ1MDE5MDgwMGJiZiBsZWdhY3ktdHJ1bmsKKzM2Njg3IDZlYTMyYjBlOTUwN2ZhMjZmMWZkNWMyYjhiMjE1ODA0M2E5M2E5YmUgbGVnYWN5LXRydW5rCiszNjY4OCA2MGE3MDhiZjM1MWFlMTFlOTc5MmNiMTEyOTU2MDNkNDQ1OTM3NjdlIHJlbGVhc2UyMy1tYWludAorMzY2ODkgYzU3MDEwZGIxMjNlZWFjMTg3Y2I0YmU3YzBlMzBhYTQ5OWUzNzM1YSBsZWdhY3ktdHJ1bmsKKzM2NjkwIGE1M2I1Y2VmYTYwZDdkMDUyNGY4NDAzYTJmMWU2MjlhM2IwYjMzZGQgbGVnYWN5LXRydW5rCiszNjY5MSA4ZDI1ODM1Zjg4YWU0NDUwZTlkMzI5YmQ4ZDE4YjFmMDlmMzY1YWIyIGxlZ2FjeS10cnVuaworMzY2OTIgYmQ0NmU2ZjgwNjIzYmY5ZDIyOTY4NDU1ZGMyZDA5NTQ0MzkzNWUwYiBsZWdhY3ktdHJ1bmsKKzM2NjkzIGNhNmVmYzU0YjE5ZmY3MTljZjM2ODIwMTRjOGY3YmRlYTE5MmUzOTYgbGVnYWN5LXRydW5rCiszNjY5NCAxOTU2NTUyOTllZDM2NDg3NGFkNjE1NjNkMmY0MWNhZDg4MzBjMTZhIGxlZ2FjeS10cnVuaworMzY2OTUgNmJlODk0MDE0YThjM2JmZDZmNjE3ZDkxNmUzNTRjNjhkYjRlNzczZiBsZWdhY3ktdHJ1bmsKKzM2Njk2IGQwMTMzOTNjN2Q5ODJmNGE2YzI0YjYzMTMxNGJjMDQ3Nzk5MDljZjUgbGVnYWN5LXRydW5rCiszNjY5NyBlZjA4ZjQ4YjYzYTFjZTU0ZTFiM2Y0NzNkMWUyZTY2NjIwOGVkYjM2IGxlZ2FjeS10cnVuaworMzY2OTggNjJjNTNiOGU0YWViMzFiNmYwNDE3MTk2NWYzMTJlMWVmNmRlZmRkZiBsZWdhY3ktdHJ1bmsKKzM2Njk5IGIzOTBjZDkxYzc2YjExZjU4NjJmNTRlM2VjMGExMWRiYzQ0Zjg1OGIgbGVnYWN5LXRydW5rCiszNjcwMCAwMThjNDMwNDViNTNlNjM4ZWM4OWM3OTk5NTU1YzAyMjAyYmY3NDg5IGxlZ2FjeS10cnVuaworMzY3MDEgMjkyOWZjNTRiNDlhNWQ0N2I4NWJiNGZhYjVkODQ4Y2Q3MjcyYTJhZCBsZWdhY3ktdHJ1bmsKKzM2NzAyIGNhMWFlYjhhYjM4MDJjYjI3Y2E4Y2EyZDk4ZDJkNDdmMzMyYTQyOTQgbGVnYWN5LXRydW5rCiszNjcwMyBkM2Q2MDlkNjU3ZmQyNjlmZGM3Nzk1MmYxNjdhODJkY2Q0MGZhYTVmIGxlZ2FjeS10cnVuaworMzY3MDQgNTEwZTllMmIwODE3NDYxMTBlOTYyZDBhOTRjNjQ3YzQ3ODczNmM0MCBsZWdhY3ktdHJ1bmsKKzM2NzA1IDI2YjMwNjg5NGI5ZWI0NjEwYzlmNDg5NDFhODM5OWI3ODBmYTQ2NTUgbGVnYWN5LXRydW5rCiszNjcwNiAzMzFlNjBkOGNlNmRhMTliMTY4ODQ5NDE4Nzc2ZmVhMDk0MDc4N2VjIGxlZ2FjeS10cnVuaworMzY3MDcgZTI4Yjg3MzNhNjZkN2RlYWVhNThjNTBhNzY3MDMxODQ1Y2JhZWE4NiBsZWdhY3ktdHJ1bmsKKzM2NzA4IDg4YTFkODZkNDQyZTgxMTRiOTc3NDcxM2ViZjRkYjhkYmNhOTAzYTggbGVnYWN5LXRydW5rCiszNjcwOSAyYWE3YWVmNGU0MDMzYzM0MGM5Zjk4N2UwMTIyZWIzYzUzNjk4MzgxIGxlZ2FjeS10cnVuaworMzY3MTAgYjMyM2JkYmFjN2U0NzcyYjhhYzc2ZjYyNzM1ZmE1N2I1YmQ4NGUzMiBsZWdhY3ktdHJ1bmsKKzM2NzExIDFiZTQwMzNmODQ5ODA4OTFkNGViMWU3ZmMxYzY0MjMxNzJhODI2ODEgbGVnYWN5LXRydW5rCiszNjcxMiBjN2UwM2NmODMzM2U1YTNhOGNjZmU5YTBlZTg1OTQ2NzYzMzA3ZTAxIGxlZ2FjeS10cnVuaworMzY3MTMgMjA5NWNiNTk4MTg4MzRlYjllYjQ2MDMzNzNiYmNjMGM3MTBhZmNhYiBsZWdhY3ktdHJ1bmsKKzM2NzE0IGI4YzJhYTJiZTE5YTMxNDQxYjI1NTUyZjhlZDJlNTE5ZjA5MTY5YTQgbGVnYWN5LXRydW5rCiszNjcxNSBhOWIyNWMyMzA3MzI3MjlmMmNmYmI5MzJiZDk5MTVjM2ZhNTRkODg0IGxlZ2FjeS10cnVuaworMzY3MTYgNjg1YTk0OGIzYmM5Y2I1ZDU5NGQ2Y2ViMjg4Mjg4YzNlZDU0ZDhhNCBsZWdhY3ktdHJ1bmsKKzM2NzE3IDUxZDdhMTIyNDRhZjMxMzgxZmVkNzVkOTQxNDI4MWYwOTA1OWNjZTMgbGVnYWN5LXRydW5rCiszNjcxOCBkMDQ5YTFmZTI2NzYzZmFkNzA2YTQ0MzEyM2VmNzE0MTYxZmZiZTAwIGxlZ2FjeS10cnVuaworMzY3MTkgNjNhZDZmNjkyNWM1NjhkNGZhYWY5M2E5ZTlkOWI2YmNmMjk0MjVkMyBsZWdhY3ktdHJ1bmsKKzM2NzIwIGE3NTgxNWUzMTU0NTEyNjRhYmNkZDliMmMzNWMxZTVmYWI4NDFjZGYgbGVnYWN5LXRydW5rCiszNjcyMSAwZGM4ZmZhYWMwMzY0NTNlNjlmZTNiMDVjZWQ4YTg3NWExYTczZGY3IGxlZ2FjeS10cnVuaworMzY3MjIgZGFlYzJkMzExZGVmM2EwMzMzMDA3OGRhMmJlOWUxOGFhYjAwZTgxOCBsZWdhY3ktdHJ1bmsKKzM2NzIzIDg0ZWZhMDA1NDE5YWFlMjdjZTgxMjZjYjA1OTQwZGVkMzc0YjIyMDAgbGVnYWN5LXRydW5rCiszNjcyNCBiOGUxMGFjYjRlZmI2MjIyNjBlZGU3ODlkODhkNTFlYzA5MjMyMjU2IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3MjUgYWM3M2Y2NjYyZTExN2MyYTQ0ZmRmZjdmNzY4OWYyZTZlZjc5N2JmNCBsZWdhY3ktdHJ1bmsKKzM2NzI2IDMwZDg2ZTM1NmJmMjRmNzE0YjEwZmRjZTNlNjk1MzkxN2IzMTg0MjkgbGVnYWN5LXRydW5rCiszNjcyNyA3OWM0ZTgyZWU5OTdjOGY0MTAwZDkzZmI4NWU0MDk3YjA0NWEwODJhIHJlbGVhc2UyMy1tYWludAorMzY3MjggMzNiOGNlNjYyMDJlYzkxOTdiY2JmZjBhY2YyZGFlMTc3NjQ0NzEwZCBsZWdhY3ktdHJ1bmsKKzM2NzI5IDkxNDZlMmVhM2JkNTBjZDU2MWQyMmNlMzUxZjhiYzQ4ZjBjNjZmYTMgbGVnYWN5LXRydW5rCiszNjczMCBmNDEyZmEyYjNmZGVmN2M5M2RkZDNhZjU3ODMyZWE0NTNmZGQ5ZjY1IGxlZ2FjeS10cnVuaworMzY3MzEgZDRkZDdiODJjYzc1YmI2YjViOWE1NThkM2NhODM0NjRjNjk4OGUwZSBsZWdhY3ktdHJ1bmsKKzM2NzMyIDY1ZjExYThkN2M4YjM5ZTc0MTJlMjJlODAyMDhkYzBiMTAwOGFjY2YgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjczMyBlMjI1NzRiZTg3NjQ5YTQ3ZjVhZWE2NGFkYmRhNmU2MTdjZmU1MDg3IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3MzQgNGNjZTAwMDQ3Zjk3NDk4MDZmMzM1ZWRkMjA1M2VmZTRkY2NmMjRmYiBsZWdhY3ktdHJ1bmsKKzM2NzM1IGQ2NzRkNzhkOGRhNjY0MmZlMTgzZGNiNzc4NzIyMmY2Y2VkNTRhMjIgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjczNiA2ZDE2YjA3YWRkYzNhNmQzZjQyMDFmOGUyMTQ1ZTljNjlmNWUwNjU1IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3MzcgNTQ2NzE3MzZhMjllNGU3NGQwY2Q0MDhhZDQ2OTFkYWFmOTcwYzhiYyB0aW0tZG9jdGVzdC1icmFuY2gKKzM2NzM4IGY1M2I5MDFjOGFmZThiZjIxNWRlNDc3NzYxZjJiZTk2NGVjYzJjYTYgbGVnYWN5LXRydW5rCiszNjczOSA2NTMxOTYwN2JlZDhhMTg2YWFkMjY5N2ExNmYyYWFiMWE0NGRkZjQ1IGxlZ2FjeS10cnVuaworMzY3NDAgNjZjNTU2ZjA5MTYzN2QxOWVhY2MxZjcyMmU1OTM1YTNiZmE5Njc0ZSBsZWdhY3ktdHJ1bmsKKzM2NzQxIDE1MzM3MTljNjEzODM5ZTQyYTdlOTVkNDg5NTM3Njk0OWRkMjRhOTAgbGVnYWN5LXRydW5rCiszNjc0MiAzMjlkNDkwNmMzM2ZjN2QzODgyMzkyZjcxOTBjNTY2Njc1MjZhZThjIGxlZ2FjeS10cnVuaworMzY3NDMgODkxNTlhMTI2OGNjZGU1YzFlYjZhNGUyOTllZmY2YjZiY2RmYzQyZiBsZWdhY3ktdHJ1bmsKKzM2NzQ0IGNhYzVjOGYzZTk5MGYyZTc5NmZmYzY3ZWJlZGE4OWQ1MjBmZmUxYjggcmVsZWFzZTIzLW1haW50CiszNjc0NSBhOTg1NmU3M2UzMmQ0MmQxN2Q0NWY2OTk5ZmVjZjYwYzg5YTlhODc0IGxlZ2FjeS10cnVuaworMzY3NDYgZmY3NzcyNzU1NWFlNTEwNDI5ZTA1YjZjYTRiOWFkMDg5YzI0YjY3YyBsZWdhY3ktdHJ1bmsKKzM2NzQ3IDQxZmFjYzNjY2RkMzM5Yzk0Y2UyYmU2YjhmMTg3NTRiYmEzYjc3ZWEgbGVnYWN5LXRydW5rCiszNjc0OCA3ZTc0NTdhNjliNGQ4MWRkZWViOGQwNDAzMjg5ODM0ZWFmYjVjYjQ1IGxlZ2FjeS10cnVuaworMzY3NDkgMjViNjY5ZjRiNTZjZjYyYzNiMGMzZjY0MGJjNjczZmRmZTBiNDZkNiBsZWdhY3ktdHJ1bmsKKzM2NzUwIGJkYTk4MzA0ZGViNWQ5NGY4NTI1MDliOWRkNjk0NWM2YzhlYmJkYmUgbGVnYWN5LXRydW5rCiszNjc1MSAzODI0ZmEyOWJlNDljYzFjMWI3OGRjMzM2NTM3MzI5MjFjNTY0OTA3IGxlZ2FjeS10cnVuaworMzY3NTIgNjkzNzAyNTMxMTViYTc3YmQ3ZTY0OTA0NjdiOGEyZWM0OWRmODJhNiBsZWdhY3ktdHJ1bmsKKzM2NzUzIGYxYmJmMTQ3ODEwYjI5NDYzNWE2ZjBhM2NlOWNiMDNmYTQyNDUzMmQgbGVnYWN5LXRydW5rCiszNjc1NCA5MzY3MTJiMzFiZWRjOGEzMjU1MjUzNzliNGQ4ZWIzYTkzOGU0NzFjIGxlZ2FjeS10cnVuaworMzY3NTUgNjYzYWQzNDk1MzRiMDA4NGQ3YmRkYzA4ZTlhYmJlZjMzOTkzODYxMiBsZWdhY3ktdHJ1bmsKKzM2NzU2IDVmNThmY2Q3YWNjZjYyMjE0ZjMxNGRiY2Q4NWU5MjE5MTQxMmJiOTYgbGVnYWN5LXRydW5rCiszNjc1NyBjMzFkOGYzOGZkN2Y2ZjFmZDRhZDRiZjAwZDQ0YzY3Yjg0MTIyOGU2IHJlbGVhc2UyMy1tYWludAorMzY3NTggY2U0ODhhYTA0ZjI0ZWEzNjhkZGY5YzExYTQwMDZmOWUzMzhmNDA4ZiBsZWdhY3ktdHJ1bmsKKzM2NzU5IDhhYzRmYWEyODJlMGI5Y2YyOTE0NGY2NzdiMjVhYzdhZDE3NTQyMTggbGVnYWN5LXRydW5rCiszNjc2MCA1YzIxNDlmMzZjM2VhYjZjYTA1NTFjM2U1MTA5MTBjMDBiNmQxMmFmIGxlZ2FjeS10cnVuaworMzY3NjEgZWM3MWFlM2JjMmRkYWY1ZWU4ODNjYzE5N2UwMjgwMzEyZDAxMGNlNSByZWxlYXNlMjMtbWFpbnQKKzM2NzYyIGJkM2RkNmIzZmY5NzI2ODgyODZmZjUxNWRkMDM3YjBiODZkNThjMTUgbGVnYWN5LXRydW5rCiszNjc2MyA0NWExNzBjNGNhNTZjZWQyNmZmY2ZhNDc5N2Q1YzRhNTFkMmQ0NGM1IGxlZ2FjeS10cnVuaworMzY3NjQgOTFmYTgwYTY3ODExYmNkZTUwZWI5MDA2YzFkMDU5OThiMDRiOTAzZSBsZWdhY3ktdHJ1bmsKKzM2NzY1IDJjMmY1Y2ZlZmE2MDU2ODNlZjdkMTQ2YWFiYTgyMmQ0ODJhYmE2ZTIgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjc2NiBkZmRlMDg1MjI4ZWVhNTBiNDZmYWQ2NTdkNWViNjhjZGU3ZmU0ODE5IGxlZ2FjeS10cnVuaworMzY3NjcgZjA3MWE1NTNhYWU1OGE0NTNmNjYzOTQ2OTZkNjM3ZjUwZjhjOTNiYyB0aW0tZG9jdGVzdC1icmFuY2gKKzM2NzY4IDQ3M2NiMGVmODJkMjQzNDZmYzUxMWM4NDkwMWUyMjZhYWRjZDFmZDAgbGVnYWN5LXRydW5rCiszNjc2OSAyNjYzYjRmNTM1YjdjYzU4YTVhM2NkYjQxOGFhNzFjNTViZTUwNjFiIHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3NzAgNjUxMTg4YTY2MzhkYzNmYzQ3ZTFiMTI2ZjcwZGI0OWUxMDZiZTVkZSBsZWdhY3ktdHJ1bmsKKzM2NzcxIDhjZTM0NGY2Yzk1NGVlYzhjZjExMDhlOWQ1Y2RjYTIxNTk2OTExYjMgbGVnYWN5LXRydW5rCiszNjc3MiA1YWE4NTA5N2NiMmNkY2M5NmE4NGY0ZDRhZTQxZDQ4N2UxMDYxZDQ1IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3NzMgNTgyZWI1MWI4NDkyMTQ1MDZiMDFmY2QzMGM4MTk1NGFkY2Q2MmMxNyBsZWdhY3ktdHJ1bmsKKzM2Nzc0IDIyZGVkMzA5NjQ4YmNiYTMzOTMyNTQ3Yzk5MjBiMjc3ZTlmY2QzYmQgbGVnYWN5LXRydW5rCiszNjc3NSA2NmRjMjExYmY1MDcyMWFkMDFmNzEzZWZlZGMwNTg5YjhhZThhNzYyIGxlZ2FjeS10cnVuaworMzY3NzYgODRiNDc1Nzk5OTE4MmUwZmNjOWE1MTFlMjQ2YmZmYzMzN2EyYmNkNyB0aW0tZG9jdGVzdC1icmFuY2gKKzM2Nzc3IDYzZGY0Y2I0OTJhMTZjNmFmYTlmZDU3M2Q5MzNmYmIwZDIwODE5NmIgbGVnYWN5LXRydW5rCiszNjc3OCA5ZmI1MTM4ZjU4ZGQ4MWI5MThkMjZlMzM0Y2YzZjJhYTQ1MzNhZjcyIGxlZ2FjeS10cnVuaworMzY3NzkgZjYzZDQ1ZmQzZmNlNzQ0ODk0OTJmZjIxODBmNjg1MjBjMDZmZjU1ZiB0aW0tZG9jdGVzdC1icmFuY2gKKzM2NzgwIGUwMjc5MjExMjI4ODlhZThkYmZiOGY4Yzg2NmEzMGRkNmVlZmE5OGIgcmVsZWFzZTIzLW1haW50CiszNjc4MSA5ZjhhN2JhMjEwNTVlYmUwZGEwZDYwMzM2OThiMzUwNzUwZjUwM2U0IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3ODIgOGIzOTBkZjdhZjg3MzczMmQ5Y2Q2NWY4ZmJhMDZmNWJkMDk5M2RjZSB0aW0tZG9jdGVzdC1icmFuY2gKKzM2NzgzIGU0ZmVlZGIyMDVmMmQ2YjhmZDAwNjRmNjMwODEwN2UyOWJmZmYyNTYgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjc4NCAzMTQ0MjJhMjhlM2ZiODU4YjVmNWU5NjM4Y2NlMzAxZDUxNzJiZTc5IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3ODUgZDc0MWNiMzc3ZjgyOTVmZjEwNjMwZWRmODEyNGQwOWYwNDVkOGE4MCB0aW0tZG9jdGVzdC1icmFuY2gKKzM2Nzg2IGZjZDY5MGM4YjJjYTZkODQ1NWUzMjkxMzc4YzZjNzdjNTRjZTZiZmYgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjc4NyBjYWZkN2U0ZTc3YWQwNzgyYjNlMDBhODY0NjgwOGVmNWIwMzE5ZDk3IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3ODggZmJiNTQyOGViZjQxMDllNmFhNzhjMjUwNTdlYjJkYzFmMGE0YWFmNCBsZWdhY3ktdHJ1bmsKKzM2Nzg5IGRiMzhjMWU4Mzk2NTJkMWVmNTlhNTYxZGYwOTQ1ZWUxMDM3N2U4NDQgbGVnYWN5LXRydW5rCiszNjc5MCBiNjM5Y2I0NWIxNzMxM2RlZjIwYzcxNzE4NWM4OTI4OTk5YWE2MTUzIGxlZ2FjeS10cnVuaworMzY3OTEgOTUzY2U1YWYxMGEzMWIyOTM1ZDMzOWE5OTQ0NDdmODIwMDMxZTkwNCBsZWdhY3ktdHJ1bmsKKzM2NzkyIDllYmQ0MDU2ODNjZDg1NzI0MTVmOTJiOTlhYjc1ZWVjZjExY2MyMzkgbGVnYWN5LXRydW5rCiszNjc5MyBhZGZlN2QzOWEwNDlkNmEzYzkzYjQyZmY5ZmI5MjY5NTc4MmRhZWU3IGxlZ2FjeS10cnVuaworMzY3OTQgMDI0ZmYwYWI0NTg4MDMzNTVhM2QzNjc2YzA3NTQxOWFmM2VhMTA0MyBsZWdhY3ktdHJ1bmsKKzM2Nzk1IGI1NjQ4MWE5MDUxOWU1YTIwYTE4ZDUzM2FhM2ZhMjUzMTRlZDYyNGIgbGVnYWN5LXRydW5rCiszNjc5NiA5NzFlNTE0MTM0NDdjMmU4YmQzYzZhYzViMTY3MGUyZjY0YWRkZGUxIGxlZ2FjeS10cnVuaworMzY3OTcgMmJjYmYzZmI3MDIxZWZiNjQzMDVkYTc0Y2FhYmNmZjcwYjY5NDYzNiBsZWdhY3ktdHJ1bmsKKzM2Nzk4IGUyZmVhMjJlMGM1MTNkNjFiYzk4YTU2OTEzMTljNDAyM2RhM2QzYTMgbGVnYWN5LXRydW5rCiszNjc5OSAwNzFkMzM4MTc1M2I2MGQyMjc2NmQxN2ZiODcyOGE1NDk5NjAyZmQ2IGxlZ2FjeS10cnVuaworMzY4MDAgYTlkNTkxOTdiMTYzMWRkNGEzYmVhMGVlMDY4YWFlMGFiOTc4Y2JjOCBsZWdhY3ktdHJ1bmsKKzM2ODAxIDE1NmFjNmRlOTYyNWM0N2RmMTViYjExMjRkMjBkNDRlNWVlMzY2NjcgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgwMiAwYmYwZjRiZWExNDQxNjg5YjgxYTM0MTNjNGM2OGEwOTAxMjNlMGUyIHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MDQgZTljNjQxNGRiZGI2MTUzNzM1Mzk5OGU4Njc2NzA1N2ZlMTU0ZDdmZCBsZWdhY3ktdHJ1bmsKKzM2ODA1IDJiYzMzMjYxNmNkNmY5ZmUxYWM3NDJmMjUyMWE5ODEwNWE2ODdkYzcgbGVnYWN5LXRydW5rCiszNjgwNiA3YWFhODUyZmE4NTZmYTMzODQ1MjZjNTM0M2Q1ZTBmZmQ2NmI5MDkwIGxlZ2FjeS10cnVuaworMzY4MDcgNWU4ZTMwOWMwYmIwNjk3M2Q5N2JiYTYxOGU2MDcwODFjYzY1NGIwZSBsZWdhY3ktdHJ1bmsKKzM2ODA4IDM0MWI3YWRiYTk0NDdhMThiY2UzODUxZGY0M2UyZmQwNmYwY2E1ZGEgbGVnYWN5LXRydW5rCiszNjgwOSA5ZjY2MjU5YWVjZTMxNjVjYzJjNzBlMGEzMzU0NDIzYmM0MGRiZTBlIGxlZ2FjeS10cnVuaworMzY4MTAgOWFjNjQzNTQ0NjI5YjA0OTc3YjdhOWMwOGE4N2JhZTkzN2ViZTdkZiBsZWdhY3ktdHJ1bmsKKzM2ODExIGVhMzM4YmFhYjg1OTlkNzE1N2YwMmY0MGRiZmIwY2Q4YWZmYmM1NDEgbGVnYWN5LXRydW5rCiszNjgxMiA5ODIxZTM4OGI1OWQ5M2YzOTZiNzM3N2ZkN2VlZjU4ZTlmOTQ0OGVlIGxlZ2FjeS10cnVuaworMzY4MTMgZmZhYTE3NWQwYWEzMzdmODg0Mjg0NzQ3MWFjYmRhNTllY2ViMjRhOCBsZWdhY3ktdHJ1bmsKKzM2ODEzIDA1NWZjNjk1NWYzYzY1MjJiZmViN2VkNGM2NzFjOTdkNWJhYWFhYzIgbGVnYWN5LXRydW5rCiszNjgxNSBlNmQwMDkyNzZjNTQ3OTYxYTQzMGI5OGJiYTEzNGJiZDQ4OGExOTY4IGxlZ2FjeS10cnVuaworMzY4MTYgM2U5MDljNTRlMzBjOTFkZDI3N2JlNzVkZTE5ZTk3YzRmM2U3OTY3NiBsZWdhY3ktdHJ1bmsKKzM2ODE3IGNlYjFjM2YxYWM4YWJiNDYxYzUwZWRkOTk4MTcxNTRjZmVlNWYwMDggbGVnYWN5LXRydW5rCiszNjgxOCA1ZjRiZmJlMjZhNGRjNDY0ZWZkNmYxMzAxZmJhZmEwZmQ2NTQ2ZDMxIHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MTkgODQ0MTBhMGQ2ZWE5NDEzNDAxZWE1OTZiNGMzZWZmZmVlZWU1YzEzYiB0aW0tZG9jdGVzdC1icmFuY2gKKzM2ODIwIGVhODc1NTNlMjU2MDlmOGFmYjA2ODMxYWY2MDM0NjAwNjRhZmYxMjMgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgyMSBiZDQxMzY2N2FjMTZiNjdkZDJkMzM5NTU0NzdlOThmZmNjMzI2MDk0IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MjIgMmU2N2MyNzA4NjcwOGIxMWJhODhmNjIxMzc1ZGNjODQwNDc0OGM4MiB0aW0tZG9jdGVzdC1icmFuY2gKKzM2ODIzIGI2ODkwZWE1ZmRlMGY2ZTA1MjljZmE3MmQ3NjI4YjBhOWI1OGNjNTEgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgyNCA3OTYwMDY1OGJlNjg5MmE5MDU3M2NlYjcxN2I5NmQ3ZjFmYTk2Y2E2IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MjUgYmU1ODRjZGE1NDdkNjQyYzg5YmQ5Y2Y1YTU3NTFjNGU4YzIzNmMyZiBsZWdhY3ktdHJ1bmsKKzM2ODI2IGY3ZDUwZTkxYmVmMzllZGQ0YTJlNmUyYzVlNDc5NjU4YTkzM2U5ZjEgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgyNyAxOTc1MTdkODA5OWU0N2UwMDA1NDNiNTQ5YWVkZGRlYjU3MDU1Y2ZjIGxlZ2FjeS10cnVuaworMzY4MjggNGM5ZWZiM2E2YmIzZjYwYzQyMGE4NTUzN2M5M2E5NjUzYzkyZDhkNCB0aW0tZG9jdGVzdC1icmFuY2gKKzM2ODI5IGMyNmE0ZmQ2OTc0NGFkYzRjY2VmZWM3MWRkMTk3YWVlMzBiNWQ4MTAgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgzMCBmYjZmZmQyOTBjZmIzOWQyMWFmZjFkNzIwODJkZjZjYzNmZmNlMWU5IGxlZ2FjeS10cnVuaworMzY4MzEgYWFjZGQwZWNhMWViNTYyZTM2NWRhNTI1ZmFiZjA0Y2UyYWY4YjEwMiB0aW0tZG9jdGVzdC1icmFuY2gKKzM2ODMyIDliMTg4MTU4MTgxZjdmMTM2NzU0NWRkMjg1NmFmOTVjNTJhMTMzYjcgbGVnYWN5LXRydW5rCiszNjgzMyA0ZjAxODk0YWI0NThkYzc3YWJlMTY5MzU0OTc4ZjQxYmIyNDIwZTYyIGxlZ2FjeS10cnVuaworMzY4MzQgNDBjM2E1MWNiNzFjZDM1NDc2MTIxOGZhNTFkMWMyMGViY2QxYWNkMiBsZWdhY3ktdHJ1bmsKKzM2ODM1IDM2MDA0MGQzZDRmYWQ4MjE3YzExNjc4ZjdmZjg1NmVhMWQ5Y2VhNmQgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgzNiA1Y2FiMzM2MTgyOTMwMDRiNWM1NTJkOWVkMDY4NzljZThiMTc5MmY0IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MzggNjc4ZDQwZmNlMGIxNGE5OWU3NjMwZjUxMWI4Y2UwN2NhMzA5MTdhZSByZWxlYXNlMjMtbWFpbnQKKzM2ODM5IDVjYzU1ZDM2YmIxZGNmOWIwODVkM2M1YTllYjFiMDViNzA2YjJiN2YgbGVnYWN5LXRydW5rCiszNjg0MCBlODllZjBiZmExZmY4Y2Q0YjEwYTQyZTgxNDJhMWEyNzcwZWJjOWU3IGxlZ2FjeS10cnVuaworMzY4NDEgNTBjMTIyYmM3YWFjYTM4ODJjNzQ3ZjhlNTVkNzI5OGVhNjA2ODY2NCBsZWdhY3ktdHJ1bmsKKzM2ODQyIGFlODc3MmQxNWE1ZmE3MTYwYTM2NjAyOWU3YzBhMTk0ZTVmNWQyN2YgbGVnYWN5LXRydW5rCiszNjg0MyA3MjZkYjU4NTQ3NDYxNGYxMTQwMDE0ZTQ4YjYyZjZjZDM4Zjg3Y2RmIGxlZ2FjeS10cnVuaworMzY4NDQgNGIzZjhkZDkyNjlhZTA3MTkyYTliNzQ2YjU0YTJmYjQyMjI0MTY1NyBsZWdhY3ktdHJ1bmsKKzM2ODQ1IGY1MTk4OTZjZjVkY2JkZTM5ZDU0Mzc2MTc4ODkzOGE3YTEzZDJmYmIgbGVnYWN5LXRydW5rCiszNjg0NiA2MWMwMTcxNTc3NTY4MzQ0NWZhZGRiZmExZTNkYmVhZmFkMjM2OGU2IGxlZ2FjeS10cnVuaworMzY4NDcgOGY4NzQ0MGM2ZTgwY2QxMmVmOWE3OGIzNjE2NWIyZmMxM2M3M2YxYSBsZWdhY3ktdHJ1bmsKKzM2ODQ4IGE4YTQ4NjMzOWQ4MDY0NmY1YzRkM2QyZjdmNWQwNTljMTM3MjA1YjkgbGVnYWN5LXRydW5rCiszNjg0OSAyZWEwOTY2MmEyZDQwYjVjYzEzMTI3Yjk3ZGE4Mjk2Njg5YTYxYWI0IGxlZ2FjeS10cnVuaworMzY4NTAgNDQ0NTAxMjljZTM1NmU1ZjBlOWRlOTk2MzVhMDZiZmQ0OWQ3MmFlNyBsZWdhY3ktdHJ1bmsKKzM2ODUxIGM5YWU5NWQ3N2E0MjdmOThmNDgxZmNhNWE5ZThjZmU4NWY0YzE0OTQgbGVnYWN5LXRydW5rCiszNjg1MiBiMzRhOGRjM2NjYWVjZjJjNTg3MWY0NGE4OWY2NzM0OWExZTM2OTJlIGxlZ2FjeS10cnVuaworMzY4NTMgNGUyYzY2MDIxYmYzODBkMjQzMjYyNjM3YWJkMDI1MDM0YjI3MTRkMCBsZWdhY3ktdHJ1bmsKKzM2ODU0IDQzZmJmMjlkZDgzYTk3OGM4MTRiYzRkZTBhYTZmZmIxMjYyZTgwYmMgcmVsZWFzZTIzLWJyYW5jaAorMzY4NTUgMjUyYzY1NDY5MTE0Njk1YzZhZmY3ZjQ5YWZjYTA1Y2Q1YmRkNWU1MCBsZWdhY3ktdHJ1bmsKKzM2ODU2IDFhYTQwYTA4OTgyZmE1NWVmZjIwOGFkNjJhNzkwMDU5MmMzYTgyMjMgbGVnYWN5LXRydW5rCiszNjg1NyAzMDAyNTk2NTMyNGE1ODFlMDcxYzE3ZTRlYzVkMGNhZDcxODkzZDBiIGxlZ2FjeS10cnVuaworMzY4NTggMzA5YmViZWRmYzk3YTFjYzIzMWNiMjdjODZmZDZlM2Q5YzRmYzU2OSBsZWdhY3ktdHJ1bmsKKzM2ODU5IDJjMTE2ZTdmZjE2MzZiZTBjYWYzYzBkN2Y4N2ViYWE0MmM5YzFiYzYgbGVnYWN5LXRydW5rCiszNjg2MCA0NDFhYjNhZDZkMDFhMGNiNjJjNjM4ODgwNTg3ZGNjOTMyOWQwODNlIGxlZ2FjeS10cnVuaworMzY4NjEgNGJmNjg1NGRiNjU2ZWQ5ODBjMzM1ZmRmZThkMzc4ZmFhNTY3ZDM4MSBsZWdhY3ktdHJ1bmsKKzM2ODYyIDRmZDU5NjUxZmUzZjlhNjI2YzllYWJlMjE4NTZlMmVjODc5NWU2NjcgbGVnYWN5LXRydW5rCiszNjg2MyAzOTZkMDExZjgzNDhiYTY3YTEyYjU5ZTU0MmZlMTBhYTBjZGI3OThkIGxlZ2FjeS10cnVuaworMzY4NjQgYjVkY2ZlN2E0MTU5NjBhYjBmYjNjMzJlMDVlZjc5ODkyN2JkZWY5OCBsZWdhY3ktdHJ1bmsKKzM2ODY1IDg2N2ZlZjJiNTA2MGFjODIwMWM5MTZkOGJiOWYwZTYzM2RhYmE3NjQgbGVnYWN5LXRydW5rCiszNjg2NiBmYTNkMDFmMGZjNDQyMTUyZDUyYjQwNmY3OWVjN2YxNDBiNDQ1MmNlIGxlZ2FjeS10cnVuaworMzY4NjcgOGQ3MDdkNDljYjliYzdmOGJkNmQ5NzYwYTQzZGNhN2VjZTk1NDBiMCBsZWdhY3ktdHJ1bmsKKzM2ODY4IDlmYjJlMzBmMjZiZWU1ZWUxZTg1NjE2NmZhZGIyODYzNGNiOGU0ODMgbGVnYWN5LXRydW5rCiszNjg2OSAzNjdjZTUxNmFkMDU0YmQ4ZWU3MjgwNGFiMGY0YTgwYTQwNjY0ZDkxIGxlZ2FjeS10cnVuaworMzY4NzAgNDhjYjRlZDQ5NGE2NTgxMDIxMmEzOTU1NzE5ZGMyNmQzOTM3YjAyMiBsZWdhY3ktdHJ1bmsKKzM2ODcxIDhmNmQyMDVkNTMxYmM5N2VjY2MwZGYyZTFjODMxOWUxZmEwOWQ1Y2EgbGVnYWN5LXRydW5rCiszNjg3MiBmZjE3NjI0YjI2NDI5MjYxOWYyNDBkMmY4MjEzYjg5YTVjZDc3MTFlIGxlZ2FjeS10cnVuaworMzY4NzMgYjBlMGE1Mzg3MGI2ZjlmODA5NzAyN2Y0MTRmNzIyNjU1YWZkZDJlYiBsZWdhY3ktdHJ1bmsKKzM2ODc0IDhjYThmZWJjMGEwZDc1MDA5MGM0M2I5ZTMzNmVkM2MxMTdjNGVlNTYgbGVnYWN5LXRydW5rCiszNjg3NSAwYmViNzU2OTY1ZGY5Y2Q0NjU3Y2QyZTkzZTBjZTMwYTA5MWQzMTUxIGxlZ2FjeS10cnVuaworMzY4NzYgZTViOWU4NzJhN2QzYmEyODU0MjY5ODFlZDExYWQzMGM1NjZhNWQ2NCByZWxlYXNlMjMtYnJhbmNoCiszNjg3NyA2YWEzMWQ3NWM0Zjk5MGQ5NWI4ZTZkNWNjZTZjYTJmN2Q0OGM1N2E3IGxlZ2FjeS10cnVuaworMzY4NzggNWM5NDBmOThlNDY1NTljOTIyZWI4YTE1ZWJiY2RmMjBkMTFkZGNjZCBsZWdhY3ktdHJ1bmsKKzM2ODc5IGFiOTNhZmY0YzkwYTg0YmYwYzAxNTMwOTk0NDVlMmZiNDMwMDQ1ZjggbGVnYWN5LXRydW5rCiszNjg4MCAxZjM1OGE2YjRiYzMzNmU1NzA0NTE0YjI4MjdlYTE4NTliYjVkMmYzIHJlbGVhc2UyMy1icmFuY2gKKzM2ODgxIDIwNGQyOWFjYmEyODAxMDEwYWZmYTdmMzhiZDYxYTNhZGE4ZjIxNjMgbGVnYWN5LXRydW5rCiszNjg4MiA1MjE4YmZmNTY0NDk0ZjZmMTBhNWIyYWQyMzE2Mjk0YzVhZDI0NTA5IGxlZ2FjeS10cnVuaworMzY4ODMgYWQ4MTgzMzhmOGMzMzA2NTY5Y2JjNjM2NjkyNGZkNjcxNzNmMWMxNyBsZWdhY3ktdHJ1bmsKKzM2ODg0IDUzMGMwMmI4M2VlYTVhZDE2NWI2YzhjODQwNjYwMmYxYWM2MTNjYjMgbGVnYWN5LXRydW5rCiszNjg4NSAyYzkzZmNlZWU0MmQxM2RhZjA1NGU2NmY3NDBmYjA2NjA4NWM4ZmEzIGxlZ2FjeS10cnVuaworMzY4ODYgNGY1ODhmNTdhOTNiMDM1YWQwM2I4ZDA0NjA4MzlmZWRjYjdmYTU4NyBsZWdhY3ktdHJ1bmsKKzM2ODg3IDg4OTdlNzdjZDc5YTg0MWJmZTc3NWM1NzFjMTZkMjBjNTUwOGFmZmYgbGVnYWN5LXRydW5rCiszNjg4OCA5NDY0NDE1YTFmODk0OTkxOTkyNTdkOTA3OTQwNTMzMjY5YmIzNzhlIGxlZ2FjeS10cnVuaworMzY4ODkgNDliODA4MzIwM2U2YmJjMWY5Nzk2MTFjODE3MzRjM2RmZTE1YjhiYSBsZWdhY3ktdHJ1bmsKKzM2ODkwIDlkZGZhNzRjYjI1MGY0OTZmODE0MzJhYTc1ZDlmNDk1NDAzNzBlNDkgbGVnYWN5LXRydW5rCiszNjg5MSA4NTAwMmNmNGUyM2JmNTBkOGE4MWVkNTdhOTU2YTNmZTE1NjM2Y2FjIGxlZ2FjeS10cnVuaworMzY4OTIgMmU3Yjc4MDMyNzAyYzdiNmJhNmQ1NjdlZDE4N2VlZjc4MTE5MjhjOCBsZWdhY3ktdHJ1bmsKKzM2ODkzIDg2MDdhYzJmODFjODM5MjBkZDQyYTQ5ZDA3Y2MyMjRlNGYzYjM3OTcgbGVnYWN5LXRydW5rCiszNjg5NCAyNjc1MmRmOTM5MTM5MDMzZmFiNmMzODczYjBjNDllNWY2ZGI3NTJjIGxlZ2FjeS10cnVuaworMzY4OTUgMTY2MGE2OGZhNmE0MDdhNzNkYzdjYWM3OTE2YzliYzFlZWIzZDJkMCBsZWdhY3ktdHJ1bmsKKzM2ODk2IDdjM2Q1Njk1MjJjNDkyYWVmN2UzOTkzYjU1NDk4NTkxOGUxMmI2N2IgbGVnYWN5LXRydW5rCiszNjg5NyBiNjY5YTYwOTdiYTg5YzgyNmQ0MGIwM2FjNjFlODExYmNhNDM0ODQ3IGxlZ2FjeS10cnVuaworMzY4OTggZWUzYWFhNzkxODQyOTJkODAyZjViZGU5NzUxMTc2ZmM1NjA4NjEzZiBsZWdhY3ktdHJ1bmsKKzM2ODk5IGY2YjJmMTkyZTAzYjUzZmIzMzhiMTU0NjI5NGNhMjkzYTE1Y2FmMjAgcmVsZWFzZTIzLWJyYW5jaAorMzY5MDAgY2UyYTE5NjIwM2M1ZWNlOTI3YmVjZjA0ZTI5MThlOGU1NzU0NzlmMiBsZWdhY3ktdHJ1bmsKKzM2OTAxIDIzM2MyMjM4NThmNzdiYmFjNTJkZGI1ODU5MWNiNTc0NGQ1ZjI1NWEgbGVnYWN5LXRydW5rCiszNjkwMiBmZWUyMDM4YjhmYTlkYzgyYjA2NmQyM2UzYjAzMzQ0N2YzMzNiMjZmIGxlZ2FjeS10cnVuaworMzY5MDMgNDIwNDg4NDA4ZTBlM2Q2NDMzYzdkMDk1MzQzNDI4MWU0NTIyODQzNSBsZWdhY3ktdHJ1bmsKKzM2OTA0IDVhNGQ3N2I2ZWZhNjVlYThhZTE4Njc3YWIyNjM1Mjc3Mjk3ZWYwM2IgbGVnYWN5LXRydW5rCiszNjkwNSAzMDQ1ZjRmMzRlZjI0N2JkNTQzOGYyMGEwYTFhNWIxNDA3YTkxNTVlIGxlZ2FjeS10cnVuaworMzY5MDYgMTdmYzg4YTFiODczNTc4NGM0MmNjM2RkZDMwYjQ0NWJmOWU0OWY5MSBsZWdhY3ktdHJ1bmsKKzM2OTA3IDFkYmQwZjM0NWE3ODg2MGM0OWE2Mjc4MzY2N2YzNDg2NjJlMWM2NjQgbGVnYWN5LXRydW5rCiszNjkwOCAyNzQ5MzM0ZDcxYTQ3MTQzZTAxNTU3NzU3OTIwZTdmOWFlZDhiNjgzIGxlZ2FjeS10cnVuaworMzY5MDkgMTYzNjIxNTE3Yjk4MjU0Y2E4NTU4ZWM5OWVjNjM0NmVkNzNlMGRhOCBsZWdhY3ktdHJ1bmsKKzM2OTEwIDY3ZDI1MjE3YmM3ZjBjNDc0MjFjM2NhZmE1ODI5YjMwMjkxYmJhYjkgbGVnYWN5LXRydW5rCiszNjkxMSBjODFlZDA3OTU3NmYyYTVlN2U3MWM0NTdiMWFlODI5ZWNlZWQ5N2IzIGxlZ2FjeS10cnVuaworMzY5MTIgYzM0ODdlZjNhNjljNGQyOGEwMWRhNWUxZDcwNmYzYzFjZTJhZTc2MCBsZWdhY3ktdHJ1bmsKKzM2OTEzIGQwZWIwOThiZTI2NDhmMjU3NzZiYWM5Y2U3MWM4YzUwMTIyNzA4NTggbGVnYWN5LXRydW5rCiszNjkxNCBjNDc4YTcxYzIzODQwNDJiODJjN2I3N2JmY2M0NDRhYjc5NTgyZmMwIGxlZ2FjeS10cnVuaworMzY5MTUgNDU1NjY3MTQ2ZDRiOTllY2I1YzQ1YzQ4ZTNlYTFhMjJiMWIzYjNjYyBsZWdhY3ktdHJ1bmsKKzM2OTE2IDk4NTM3NWFjYTk3MDczMTBmMDc1NDYyNWZlZTFjZDRlOGI5M2E3M2YgbGVnYWN5LXRydW5rCiszNjkxNyAxYWYzYWQ0OWQwNmZlMGUyMjExYjM2ZjNjMTAwZmU3NWE0N2JiNzFjIGxlZ2FjeS10cnVuaworMzY5MTggMjdhZGEyNTUwOWZmMjYyNjhjZjE4NWI5MTViYzc3MjZkM2Q5ODBmZiBsZWdhY3ktdHJ1bmsKKzM2OTE5IGZiZWEyYmUzNTU2MjhiZTIzZjQ0YTZjNzJkN2MwNWQwMWQ2MzIzYmQgbGVnYWN5LXRydW5rCiszNjkyMCAyOWZhOWQ2YWZlYTAxZmQ4ZmFhNzBiNWFlNTBlNDJlOWNmYjNjNGM1IGxlZ2FjeS10cnVuaworMzY5MjEgZjBhNmVmM2E4NzRlZjhkYzVhOGRjOTNmMzMwNThmYjUzZjk2NTk1NSBsZWdhY3ktdHJ1bmsKKzM2OTIyIDVlNjlmN2M4MGVmNDI3MzM0Mzg1ZjY1MTJlZDRjNzY5YzlhYTllMWEgbGVnYWN5LXRydW5rCiszNjkyMyA2ZjM4ZTNiNjRlZjQ3MjZlZmU5ZDRlYzVjNjBmYzE1OTA5YzBmZGViIGxlZ2FjeS10cnVuaworMzY5MjQgMzFjY2VhOWU5OGE3NDZmYTBiYTkxYTk3OTFmMjQ3ZGYxODQyZjk4MCBsZWdhY3ktdHJ1bmsKKzM2OTI1IGVlNDNjYTRhMmMyMzhlNDFlNzMyMzMwY2RkOTQ2Yjk0YzFkMWZjNDEgbGVnYWN5LXRydW5rCiszNjkyNiA3NjRkMjhmYzNkMzY5OGVhOGZiZmMwMTM5YTU3ZmFhNmY0YjJmN2YyIGxlZ2FjeS10cnVuaworMzY5MjcgOTBkYTcwOTg2NDA3MjM5NzRjOGFiODhjMGVjOWViOTExMWExZTc2NCBsZWdhY3ktdHJ1bmsKKzM2OTI4IDAzMDQzYjI4OGIyODc1ODYwMDJlMDdkODFiNTlkMDY3ZmMzYmNjODUgbGVnYWN5LXRydW5rCiszNjkyOSA0NTMyOWQ5ZmRiOGQ1NDU0NzFlNDBhNzExODM3Zjg2Yzk5MjdhNDc0IGxlZ2FjeS10cnVuaworMzY5MzAgY2RhMDQ1NWJkMGEwMzE4OTAwNjk5NDJmZGI4NzQwYmQxMjkzNDgxOSBsZWdhY3ktdHJ1bmsKKzM2OTMxIDJhOGMzNzU4YzRhMTkwNmJlMzFkYTNhZWQ5MjUzZjdmYzE5MTkyYmQgbGVnYWN5LXRydW5rCiszNjkzMiA0NTFkZDQ5ZGY1MzEwOWNkNjJhYmJkOTFhYmIwY2QxNjZiMzRmMGI0IGxlZ2FjeS10cnVuaworMzY5MzMgODIxYzU1N2NhNjEyNGI1ZmIyMDU3ZGMzNmYzYjg5ZjhmOWZmYWNlZiBsZWdhY3ktdHJ1bmsKKzM2OTM0IDRlNmY0ZTllYzliM2QzYTU2NmRhZTg5NGNmNDA3MDNlNDEzYjBiZjMgbGVnYWN5LXRydW5rCiszNjkzNSAwNGQ5ZmRlMTEzMzA5NDhlMmEzZDBjYjdiZTBlNTY3MTYyZTE0ZTdjIGxlZ2FjeS10cnVuaworMzY5MzYgNGRkMTgxNWI0NGVmYWFmOTg1NjdlNTNkYzU3Zjc2ZDRiZTIxNDVjMCBsZWdhY3ktdHJ1bmsKKzM2OTM3IGJmY2M0ZTM5ZmM0NTJiMzUzMjY2NzYzNDZhYzgxMWQxZTdkMzc0NWQgbGVnYWN5LXRydW5rCiszNjkzOCA5ODFmZmY3MzYzYjkyZThlNzRkZjE3OTU0YWYyMjE2OWRjYjAxZDgwIGxlZ2FjeS10cnVuaworMzY5MzkgMDFjYzVlM2Y2Mzc1MjIxYTFiN2M5NzQyMjBhYjNkYmU4ZDM2MWY4YSBsZWdhY3ktdHJ1bmsKKzM2OTQwIDgzNmU3NzI2NmY5Nzc5MTMxNDExMGYzYjQ3MGE3N2ZlZTRhM2UwMjIgbGVnYWN5LXRydW5rCiszNjk0MSA3NDNhYmFjOWY5ZmUzM2VjYmNlZDk3MzljMTVjMGZmOWQ3ZDdmZjMxIGxlZ2FjeS10cnVuaworMzY5NDIgZDA3NWNiYTg1MWZkODZmZDk2MDk2Mzc5YTI3ODY4YzYzMzdkMTZlMSBsZWdhY3ktdHJ1bmsKKzM2OTQzIDA1OGU4NTFlNzkzZWFmYmIxMTQ4MmI5NThhYzMxOGQ2MWRkNzAyMGYgbGVnYWN5LXRydW5rCiszNjk0NCBhNzkyODcyNmRkOGY1YmQ0NGU4NGU5YjQ1ZWMzZDA2Zjc2ZjJkOTJjIGxlZ2FjeS10cnVuaworMzY5NDUgNWVhZTRjZTEwNWZjZjRjNTY0OWY5N2RiOWRmMGFiOGVmMzQ0MmY4ZSBsZWdhY3ktdHJ1bmsKKzM2OTQ2IDI0MGVhZmFlM2VhNzRkYTczNTRhOWY1ZTJkZmRjMThkOGNjYjM5MWUgbGVnYWN5LXRydW5rCiszNjk0NyA1ZjMzNTA3Y2I1NTk4MjM3MWVmYTM5MjJlMjhhZjg2MzNhNjdkZThjIHJlbGVhc2UyMy1tYWludAorMzY5NDggYWJlY2JkNjZhNjI4MGM3ZDk5Y2RlM2NhNTE5MzdiOGM1MTY4ZGYyMSBsZWdhY3ktdHJ1bmsKKzM2OTQ5IDQ0NDU3Y2I4Zjk3MDE0OTcyZDkzM2M0OTQwODI4NTRlNzU1ODkwOGEgbGVnYWN5LXRydW5rCiszNjk1MCBhZmQ1NDEyNmU5YTE5MGZhMDQwYWY0ZjRjZWQ2NmFiNTQxNDM1NjY2IGxlZ2FjeS10cnVuaworMzY5NTEgNTM0N2RhMzFmMDc2YzZjZjI3ZDQ0MDFjMGFhY2U5ZWU5MjAwNjYyMSBsZWdhY3ktdHJ1bmsKKzM2OTUyIDk5MzdkMGU2M2NhMzI1ZjQ3ZDBiM2NlMGE2M2UxYjljZTMxY2Q3YzYgbGVnYWN5LXRydW5rCiszNjk1MyA0ZmQxODUwNWZjMzVmZGQ3YjMyZmM2M2U3ZDE3ZjlkZDcyYzFiNzAyIGxlZ2FjeS10cnVuaworMzY5NTQgNGIwYTBmYzFiYWVhMzFkZjkzZWUyNTZkNTBkMTc1YjNlMGY5ZmUwOSBsZWdhY3ktdHJ1bmsKKzM2OTU1IDQ4MTAwYTAxYWM3YzA1M2E0MTc1YTg2MWVkNjdiYTY5M2UyNDI0YTEgcmVsZWFzZTIzLW1haW50CiszNjk1NiBkZmMyNWUxYjk2MDU4MzQ4YzlkMjQ0MzViZTQ3MTZiMTVjNmQ3ZThlIGxlZ2FjeS10cnVuaworMzY5NTcgMjBlOTBlNTA3OTdkZThmNWQwNjRhYzdhMmU5MjNkN2Q4YTAxODNlZSByZWxlYXNlMjMtbWFpbnQKKzM2OTU4IGIxNjZhZTJmNzczMjE0MzdlOGZkNTM2Zjk1YjczMjNiMmRmNjc5MmEgcmVsZWFzZTIzLW1haW50CiszNjk1OSBkZGQyNGQ3MmFkNmFhYzU2OWY4MTA2Nzc4ZTc0NWFiMWRiOTgyMDhlIGxlZ2FjeS10cnVuaworMzY5NjAgMDFhMzg1NWE0YjAzZTgyOTdjZGU5MzQwOWIxMGU5MTQ4MmFjODQ2NyByZWxlYXNlMjMtbWFpbnQKKzM2OTYxIGM3MGMzM2Y2OWE0NGM5NDYzMDc1YWQ2YzQ1OGViY2Q1ZDQyMjNhMzIgbGVnYWN5LXRydW5rCiszNjk2MiAzYjVkMzdmN2NiNWFkMWU3N2ZmMjAwOGM2ZGJkMjhlMzE0ODBkNDAxIGxlZ2FjeS10cnVuaworMzY5NjMgY2UwMTZkMGVjNzAxNTUzNGEyNTBkYzQ4NTIxMGRmMTdlMjc5YzMyYyBsZWdhY3ktdHJ1bmsKKzM2OTY0IDM1Njg4NzQxMGJkZTc0Yjk5ODc1MWYxMzMzNzYyMDE5MTQzMDdiOTEgbGVnYWN5LXRydW5rCiszNjk2NSA4MWVmZWMwZTlkMjkzNmJlODZjYzJjZjBjMzI5NTVhY2JjZjhmMDk3IGxlZ2FjeS10cnVuaworMzY5NjYgZjI3OTM1YjQ2OTg1YWM2MWUwYmQ1NjkzMDAzMzcxNGU3MjYyZmViYyBsZWdhY3ktdHJ1bmsKKzM2OTY3IDZiOGU0OTk2ODdkNjI1ODZlYTc1YjdhYzI2OGRlNDg5NGM0NDVjNjggbGVnYWN5LXRydW5rCiszNjk2OCBmNDU1YmJlN2VhN2UyYjE2ZDQ3OTYxNTExZTZiNjQwNTUwNzBjNjA2IGxlZ2FjeS10cnVuaworMzY5NjkgZTVmNmMzZjUwODQ2NjUzY2EyOTNiNGJjYTcyMWZkOTEyNmYzMWUzZCBsZWdhY3ktdHJ1bmsKKzM2OTcwIGJhYmQxMWVlY2Q4ODNhY2ViY2FlMjc0MTc0YzUzNGFjYzllNTU4NTQgbGVnYWN5LXRydW5rCiszNjk3MSBjOWFjOWJlOTVhZjllMmU4YTliOGIwZjU2Nzk1NWYyNmI1ODA5MTJlIGxlZ2FjeS10cnVuaworMzY5NzIgZGRjMDMwNGMxNTFmZTRmNmVlMTFkZTIxZjNhZmQ2NTBiNTJhMTE1YiBsZWdhY3ktdHJ1bmsKKzM2OTczIDQ1MGY1ZTIxZWFjOGRjMjRhMGRjYTI2OWI5ZjU2Nzc3MDRmYzU5ZDEgbGVnYWN5LXRydW5rCiszNjk3NCAwYTBjMjQ3ZjA1ODQ0NTZlMTUxNzQzOTJjZmUzYzg4MmRlZTFiNjhlIGxlZ2FjeS10cnVuaworMzY5NzUgN2RlN2MxOTEwYWM5Y2E0MGU5ZWQ0YTMwMGIxNGU0MWIxNWNhNDhhYSBsZWdhY3ktdHJ1bmsKKzM2OTc2IGE3N2MwMzcyYTFkN2I1MmNkMWMzYjU1NDgyMzIzZWIwZTdjODcxMWMgbGVnYWN5LXRydW5rCiszNjk3NyAyOGU4NzdmZjc0Y2Y3MDY3MzM2Mzg5ZTlhNzhiZjIzZmM2N2UyNmMxIGxlZ2FjeS10cnVuaworMzY5NzggZTRhNzNlZmE0ZDIzNGJlZmUzYzIyMmJhNTU1MjhhYjZmYzg4MWFjYyBsZWdhY3ktdHJ1bmsKKzM2OTc5IGRmZDM4MDNlZTBjMTgxM2Q4YTcwZmJiYjY0MDk0YWJhNTE1N2Y1ZmMgbGVnYWN5LXRydW5rCiszNjk4MCAzYTRlNzNhNWU0MzQ3ZjFkMTVhYTE3NTRmYzhkYzk4Y2MyNmUzMGU1IGxlZ2FjeS10cnVuaworMzY5ODEgYmY2OWZjM2JkMDY3ZTRlNWVjYzFjMjhmMDdhZTdhYzdhNjE0NGUyMSBsZWdhY3ktdHJ1bmsKKzM2OTgyIGY2YWM0MTdiNWViMDhiNzNmMWMwMzgyMDU0MmM5ZTAxYTNlM2RlMzcgbGVnYWN5LXRydW5rCiszNjk4MyAxY2Y5ZGUzYTg1MDNhNDM5Nzg1NzhiMGFkOGU5NjEwMjdmZjViMzE0IGxlZ2FjeS10cnVuaworMzY5ODQgZDdmY2RmOTc3NmM0ZGZhNGI3ZDIzYmZiNjI2ZWI5ZWU3MmZmZGM1ZSBsZWdhY3ktdHJ1bmsKKzM2OTg1IDkyMGY1ZjY0ZjJmMGZjODAzOGEyN2Q0ZTJkYThjMTk2YmJhMzk0NDEgbGVnYWN5LXRydW5rCiszNjk4NiAwMTQwNzg1YmVmZGIzNmQwYzFiMDQyZTYzNGVlZTRhNTU4MjkxNTRlIGxlZ2FjeS10cnVuaworMzY5ODcgNmMxNmFiNDIxNGFmOGU4ZTUwYTgwMzM3MGQ5YmQ0ZmM4ZjJiMTdkNyBsZWdhY3ktdHJ1bmsKKzM2OTg4IGRjNjQ3ZGY1MzkyMTdhNTk1Y2VjYjE5MDUzOWNmZDYyY2I4OTcyYTMgbGVnYWN5LXRydW5rCiszNjk4OSAzYTdmODJlNjBjYjIyOTI0Mjg1MDI3MTRhYjA3N2Y4MjFmOWNkYzcyIGxlZ2FjeS10cnVuaworMzY5OTAgY2NkMDJiZDM0NGIzOGIwZTllMjYyNDIzNzc2OGVhMTJiMjhiMTdlZSBsZWdhY3ktdHJ1bmsKKzM2OTkxIGVkZGIzN2Q3MDJiNWUwNTIyMzYwNmVlMWZjNDI4NTU4M2VjZmY3ZDkgbGVnYWN5LXRydW5rCiszNjk5MiBjMjM4NDYwMWEyNDExMTdkMWU3N2ZkNTQ4MmYzZjQwNDBiYTg0MTQ5IGxlZ2FjeS10cnVuaworMzY5OTMgYWU5YjQ3YThkNjQ4NDg1NmYwYzhkZTEzMGM0NDdiMWY0MjM1ZWE2ZiBsZWdhY3ktdHJ1bmsKKzM2OTk0IDhhMjgyNzk3ODk1ZjNmMTI1ZDM1OTVlZDU0ODM0ZjE5YmE2MDBjODcgbGVnYWN5LXRydW5rCiszNjk5NSA4NDZiYTI5NzJkN2MxYmRkNGM0ZGE2Mzg1MjEyNDUwMzRmYTZjODA4IGxlZ2FjeS10cnVuaworMzY5OTYgZTQ5OTJlOTMwY2IyZTU5NjE4MDFhNDQxOTA0NjFiZGVjZGQ4MjI3YiBsZWdhY3ktdHJ1bmsKKzM2OTk3IDNkYjlhOTMyNzc1ZTYwYTZhZjdkYzI3M2Q0NmM1Y2VmZjIyMGI4OGUgbGVnYWN5LXRydW5rCiszNjk5OCBmYzE2MzdmYzQ1ODg5ZmJjOTJkNzUyMzYzMDYzYjFiMzU2NmJmYjY5IGxlZ2FjeS10cnVuaworMzY5OTkgNzM3NWFlNWY5ZGM0ZDVmNTllZGYwOTc0N2U1YzUxYjRhMjZlYWVmMyBsZWdhY3ktdHJ1bmsKKzM3MDAwIDFkOTgzNTA4MmJlNWFlY2E2YTVmN2VjMjY2MDA3NTljMjRhNGM1ZjIgbGVnYWN5LXRydW5rCiszNzAwMSBhZDI2OGE4NDA4ZjRmNmJlYjU3MmJlZDMwZjU5MmFiZjVkZWJmNWMwIGxlZ2FjeS10cnVuaworMzcwMDIgYTM1ZTRkMzVkMTQyNTEyY2QyOGQ2Mjg1MTQ0ZjQ2MTRmMGE5YmE5YSByZWxlYXNlMjMtbWFpbnQKKzM3MDAzIDNiZWI1NGY5ZDJiYmU4ODI3ZmVhNzZjZDRkYWI2NjY5ZTRkYTRiYzcgbGVnYWN5LXRydW5rCiszNzAwNCAyODkzZGM5YjRlZjRkYWQwNDUyOTVmMTU2ODg1YTZlYjM3MzJkMjBjIGxlZ2FjeS10cnVuaworMzcwMDUgMjJmYTk2YzQxM2FlYzNhMTU4NzhhNjZlMGM0ZDQwMDUxOTM0YzlkNiBsZWdhY3ktdHJ1bmsKKzM3MDA2IDk1MWNjZDhmMzQyODg2ZWJiNjBhYzgyYjE4MDg5YTI0MmJkNTRiNDMgbGVnYWN5LXRydW5rCiszNzAwNyA4Nzc5YzhjNGQxODFhZjQ3NTJjYjkxZDgxNWI3MjAwNDk0MTkwNGYwIGxlZ2FjeS10cnVuaworMzcwMDggOWM4NDFjYWEwZTgxNGFlNmY0OTY1ZGI1Yzk0ZDk4MmQ1ZmJjZDRjNCBsZWdhY3ktdHJ1bmsKKzM3MDA5IDI4YTIwNWVjYjRkZDgwNTY0NzYyMzM0NjE3ZjFmZmJmYmQwZGJkMWIgbGVnYWN5LXRydW5rCiszNzAxMCA4ZTg3YTY4MzQ5NDJlNGVmYTc2MTJiMTljNTlhMmQ5MWVhOWQzMTk0IGxlZ2FjeS10cnVuaworMzcwMTEgOGMwYjA4YjI0NzdiZmQzYTg1MWM2NWJiMzc5NDhlZGQ5OTk4ODUyYyByZWxlYXNlMjMtbWFpbnQKKzM3MDEyIDYxMmRlMjY4ZWQ0YmUwYmUzM2I1NDkzZTM5NjllYTlhMDJmNTU2MmUgcmVsZWFzZTIzLW1haW50CiszNzAxMyBmZDkyZWE4YjViNTFiZDFhNjQ2ZWU0OTczODkxZTRiOGM2MWY3Y2FmIHJlbGVhc2UyMy1tYWludAorMzcwMTQgN2FhZTA2YjFmMWRkY2IzNjc5YjQxNzViMWQ4M2EzMjIxM2JhNThlYSBsZWdhY3ktdHJ1bmsKKzM3MDE1IGZmOWQ1YTcyZDU0YjcyMDgwMGY4OGM1NDg4ZTcwMGQyYWRlZTQ0NTEgbGVnYWN5LXRydW5rCiszNzAxNiBiNTVkYmNjZWNjNzE1MDY2NjAxZGVjM2FlZDEzMTExMzkzNGE1ZTFjIGxlZ2FjeS10cnVuaworMzcwMTcgNGI1YjZlODYxZmNmNmViM2I5ODEyNmFmYjdjOGY5NmNiM2JhY2IxZSBsZWdhY3ktdHJ1bmsKKzM3MDE4IDkzMzU0OGZlN2I5N2IwYTJiNjM3MWFlZTdjZjI3M2Q5MjNhMjA1ZTcgbGVnYWN5LXRydW5rCiszNzAxOSBhMzYyMDE2ZTk1MGQ1MGM1MmM4ZjllNDQ3ODJmMWRmOTI5ZTExZjYwIGxlZ2FjeS10cnVuaworMzcwMjAgMmI4YmRiMDY5ZTBhZWJkZDZmYzA5MzUyZTg3MWZlMGE3OGE1MTU0OSBsZWdhY3ktdHJ1bmsKKzM3MDIxIGIyZjQyN2RiMjI4YjE0NmY1MjFlOGVkYWY1ODQ5YTI5M2UyODg3NTIgbGVnYWN5LXRydW5rCiszNzAyMiAzZjlkMjFlYzUwNGI0ZmJmZGE3MGZkMTQ5MDA2YzY3M2I1YWQ4NmZjIGxlZ2FjeS10cnVuaworMzcwMjMgYTA1OTMwMWE0Y2RlM2Q0MTFlYmYyZDY3ODNhMjIyNGYwOWFiZGI3NiBsZWdhY3ktdHJ1bmsKKzM3MDI0IGFlNGNiMjk0NzQwMGViMmFmMzljM2JlOTRjZDRkYjJmYzVhZTc5MjAgbGVnYWN5LXRydW5rCiszNzAyNSBiZmIyOTFmODU4NzE1YTc3ZWUwYTI3ZTVhMmQ4MWI0OTgwYzQ3MzEwIGxlZ2FjeS10cnVuaworMzcwMjYgMjA4ZmU3MTljNzQ5YjUxZWIyN2Y4OGIzYjljMGZmNWZiYTAwMzA4NyBsZWdhY3ktdHJ1bmsKKzM3MDI3IDZmMDliNTIwYzAxYzU5MGZjOGExMDMwZDc3ODcyNzRmYjJiN2IxYjUgbGVnYWN5LXRydW5rCiszNzAyOCAxZDZlZWZiY2JiMzc0N2UwZDJiOTA5YmQ3MGVjMDc5M2NhNmUyMTllIGxlZ2FjeS10cnVuaworMzcwMjkgMzU3YjI0YzM0NmJiMGQ2NjhlYWY2ZTU2ZGUxMDRmOTRlZjc0OWUyMCBsZWdhY3ktdHJ1bmsKKzM3MDMwIDJlOGQyYmRkMzNkZWNkYjY4ZTg0Yjk1OGUzZjU3MDdiMDk5NjhmM2IgbGVnYWN5LXRydW5rCiszNzAzMSA5NmJmNDAyNDg4YzcwYTYxNTMwZDRmM2E4M2M1YmY4NTFjMjNiYjJhIGxlZ2FjeS10cnVuaworMzcwMzIgYmVkNDVhNmI5OTNiYTk0YWIzZjE3OTlkY2Q4ODYwNzYzZWZmOWVlYyBsZWdhY3ktdHJ1bmsKKzM3MDMzIDU3NzhmNjMzMTMzNGNlMzZjM2Q4ZmVlMmRjMzJlZWIzNWQ3YjkzNjIgbGVnYWN5LXRydW5rCiszNzAzNCBhNTc2OWU4ZjFjNmZkZTc1MmJlMDg0NWIwZTgwNmI3NDdkYzkzMDY1IGxlZ2FjeS10cnVuaworMzcwMzUgNGNkNzdkZTU1MWU3NDViMWFlMTBjZTAwNjZmYmMyODVhNjNlZDY1NyBsZWdhY3ktdHJ1bmsKKzM3MDM2IDFmOTUyMjIzOGM4NjMyMTdiMTVhNDljZjZmMDkyYWNkYzVhZWI1OGQgbGVnYWN5LXRydW5rCiszNzAzNyBlMDVlOWQwNTgzMGQwOTFjM2Y4Zjk0MzFmM2NhNDdmNmM5M2UyZjkyIGxlZ2FjeS10cnVuaworMzcwMzggZjZmYTY0OWZjNGFmNzRkM2ZkM2EzNjc1ZDJmMjBmMWNhODJlY2Q0OSBsZWdhY3ktdHJ1bmsKKzM3MDM5IGE2YzgwMTcwZmM1MzgyZjkzOTI4MTIyOGI2OGM0MDk5YjY5ZDVmY2YgcmVsZWFzZTIzLW1haW50CiszNzA0MCA0NTM2YjAzMTUxNTc3Yjk1NGVmY2ExMTBjMjdhY2E4MWMzMjAxMTM0IGxlZ2FjeS10cnVuaworMzcwNDEgMTc5NzNmMmUzZTBlODk3Yzc0OWRiYjI5MWM5ZTU2NDNmMTljODdkNyBsZWdhY3ktdHJ1bmsKKzM3MDQyIDY2NjU1N2MyOTI0ZGZjZmIxNmQyYjVhYzRhM2Y0YTEzMTJhYzNhYTEgcmVsZWFzZTIzLW1haW50CiszNzA0MyBhMjUxNGUyZDFjNzRlMDZkOTdiNmY3NTcxNWEwMjcyMzIzMDFmZDk0IGxlZ2FjeS10cnVuaworMzcwNDQgYWFkMTE4NjQzNTk4OGIyYWI5Y2I2ZGU4ZTk5MGY4YzYwMzFiNzRmMiBsZWdhY3ktdHJ1bmsKKzM3MDQ1IDBkMTYyN2M0NDc2OTBjYWZkM2JiZTA2ZTMxZDg3MWEzZWUyNTFlODcgbGVnYWN5LXRydW5rCiszNzA0NiAyOTY1YWU5NGEyM2ZlMzQxY2I3YzBkOTVlODJlN2NmNWE3NTVlNDE2IGxlZ2FjeS10cnVuaworMzcwNDcgNDQwMWRlYTcyNGYwYWZjMTY1MjZhZmUwMTFjNjQ1NzZhZWI1MDc3ZCBsZWdhY3ktdHJ1bmsKKzM3MDQ4IDhlOTE3YjllNzBlN2Q3YzgxZTNkOTI1Y2Y4ZDUzMTAxYTlkYTNlNDAgbGVnYWN5LXRydW5rCiszNzA0OSBmZWI1MjQ3YmEwYzgwYjIyNjgyZTU4YTcyYTg3ZTI3YTM3YTYyZjI5IGxlZ2FjeS10cnVuaworMzcwNTAgNGM3OGZjYjYwZGYzMDkxYzE4ODA0NjVjZDc0NjE2MGM2MjE5Nzc3ZiBsZWdhY3ktdHJ1bmsKKzM3MDUxIDM1YmI2MmFjNTVmZWRhNGMyYzU3ZTNmZWUyNjI0MzM1MDVjNTYyYWQgbGVnYWN5LXRydW5rCiszNzA1MiAwZmVjY2YxOWIxNmQ1YzRjMGRhNDE4MzZjNzNmMzQyYWQ5ZTRkZmQ5IGxlZ2FjeS10cnVuaworMzcwNTMgZGU4MDRlZGY4YmNkNTdlZTlkMDNlMjRjMTUyMmE5MzI4NDEwM2EwMSBsZWdhY3ktdHJ1bmsKKzM3MDU0IGIwZjI2ODFiY2Y3ZmE3NDBkZDE1Y2RjYjc1YWViOTIxYjRmZGQwYjkgbGVnYWN5LXRydW5rCiszNzA1NSBlZGI4NTNlZDZjNzhiMzUwNTI2NjkzOGMxYmRkYTJmNDcyMWIxMTJlIGxlZ2FjeS10cnVuaworMzcwNTYgYmJlNjg0NzRlNTIyMGQ3NmY5ZDNjZDUzNzk3MjA1NmZlNWNhODUzMiBsZWdhY3ktdHJ1bmsKKzM3MDU3IGQyODgzYzQyYzIwNGMwNGYyNDY3ZmVmODdkODkwMTJlY2U3ZDBkMTggbGVnYWN5LXRydW5rCiszNzA1OCAwOTZkZTQ1ODI3YzdiNjc0YmZlZmU2ZTM1MjdjYjAyN2QwMzk3NTZlIGxlZ2FjeS10cnVuaworMzcwNTkgN2Y1N2IzYzdlYmJmZmNiNWU4ZThkZTQxM2JhM2VlZmFlYTAwOGU4ZiBsZWdhY3ktdHJ1bmsKKzM3MDYwIDkzNGE1ZGI5Yjk1YjYxMjI5ZmQ4ZmE3YWI4YjJiNGRhMGI2YjliYTEgbGVnYWN5LXRydW5rCiszNzA2MSA3ZGE5MjAxYmM4YjUzMmM2ZGMzNjk5N2EyNjY3MjE1ZGE1ZTM4OGNjIGxlZ2FjeS10cnVuaworMzcwNjIgMDE3MjI3ZTQ3YzNkZWYzMWI4YzAxODE2NmQ4ZjJhY2Y3ZjMyY2FlOSBsZWdhY3ktdHJ1bmsKKzM3MDYzIGVhNDg3NGUwMjFlODBlYWNlNjRmODEyZmRlYTg3NTM5ZmIxYzQ0NTIgbGVnYWN5LXRydW5rCiszNzA2NCAyNjU2MzIwNDY2MGNiY2I4ZTI0NDQ5M2Q3OWJmMDJjZGVmMGQzMGM3IGxlZ2FjeS10cnVuaworMzcwNjUgMzQ3ZDcxYzBlMDE4ZGQxNzkxNTA1MzRhMzdiMDgzZjdjMDM5MzNjMyBsZWdhY3ktdHJ1bmsKKzM3MDY2IDFkMGY0YzAzNTdkMDA0ZjI5ZWZiMTViNjVhODZmZWU4YjQxMThhNmUgbGVnYWN5LXRydW5rCiszNzA2NyBlYWIyMWZiZjlhNzBmOTcwZGQ5ZDBiMWQwNjQ4MzhmZDgwMTQ5YTEwIGxlZ2FjeS10cnVuaworMzcwNjggYzE4YWNhN2U4MWNiNWY3Nzc2OGVhOWM0YjRlOGYxZjY1NTIxMWMwNSBsZWdhY3ktdHJ1bmsKKzM3MDY5IDkwNTY5YWUzZTNmM2YxY2RlMTBkN2FmZDU3ZDg3YWZjMzlmNDI1YTEgbGVnYWN5LXRydW5rCiszNzA3MCA2OTcwMDY4N2UzMGY1MTVhNjQ0YTQyYzA5YTE3MGI2YjE0MTFkZDY3IGxlZ2FjeS10cnVuaworMzcwNzEgYmVkNjJmMzk5ZGFjMGJmNTQ3MWUyNjg5ZWNjMzI4ZWEzZmU5OTg3NyByZWxlYXNlMjMtbWFpbnQKKzM3MDcyIDA0ODY0YzM5YjAwNjMzM2YzMmFjMjQ5ZWExOGUyNzYzODViOTkzNTQgbGVnYWN5LXRydW5rCiszNzA3MyAzNGE4ZDc1ZWRkMmIwM2E1MWE3YjE0MTgxMTg3NDE0ZjZjYjFiNDRhIGxlZ2FjeS10cnVuaworMzcwNzQgMTZkZmYzMGU2NmVjMGU1ZDhjOGI3NzhkYWNkZDBlZTdhZTMwYjA3NyBsZWdhY3ktdHJ1bmsKKzM3MDc1IGM5Yjk5MzA4YjBlOGNiZjkwZjU4NmYwMmM4Y2ExOTE0NTQ2MjI0NDEgbGVnYWN5LXRydW5rCiszNzA3NiA5NDIzMGY2YjVlYmU1MmY2MzJkMTI3MzJkZjU0ZWFkNzA4YjA4YThlIGxlZ2FjeS10cnVuaworMzcwNzcgZGIxYmFmYTliNjU2MTM2Yjg3Y2U3YmMxMzA0MDUxOTM3NDI2ODkzMiBsZWdhY3ktdHJ1bmsKKzM3MDc4IGQ5NzY1ZWI1OWVkZDc4NTVjYjY2NGNkM2MyNDM3MjVhMGYyYTA3YTQgbGVnYWN5LXRydW5rCiszNzA3OSA4ZDc3MTM0YWFiODJmNDA4ZTI2YjhlYTc4MDk2NGVlMzI2Zjk3NDg3IGxlZ2FjeS10cnVuaworMzcwODAgNmI3NDNjYmM0MTcxMGU2MjY0ZThjZmNiNDI0Y2JmOTE1YmYzMzBmZSBsZWdhY3ktdHJ1bmsKKzM3MDgxIDgyNTJlOTg5Y2JiMTViZjQ3NmI3YWE1MmYyZjA1NDRjZmFjYjE4ZTcgbGVnYWN5LXRydW5rCiszNzA4MiAwNjZjNzg5MGNkNjE1NTMwYWFhZDNhYTE5ODU5NWMyM2IxMDYxZGY4IGxlZ2FjeS10cnVuaworMzcwODMgZDg2MWFhODc0NTI1NTg4N2UxYTYzYTgxYzk1ZmNjY2JiNzBmZmU4MiBsZWdhY3ktdHJ1bmsKKzM3MDg0IDMyMzVlNzM5YmRhMTJlZjE4OTc3YzA4Y2JiMTg1MTAzODJmODQyZjMgbGVnYWN5LXRydW5rCiszNzA4NSBhY2Q5YmYyZTNiY2Y1MTU5YmZmZWQ3OTkyNzk0NWZiYmUxZjk1OGYxIGxlZ2FjeS10cnVuaworMzcwODYgZTYzMDRkNjZkOTQ1YjU2OTc5ZDM4N2I4OWE2MTQzNmNiOTk4ZGFiMyByZWxlYXNlMjMtbWFpbnQKKzM3MDg3IDhhYmQzMjJhMDEzYWI2OGNkY2FhNmRlMzEwNGI5M2VhZGIzZjc1MDMgbGVnYWN5LXRydW5rCiszNzA4OCA4NDkzMTA4MGUwNWNjM2Y5OTk4Yjc1NGJjODkyMWVlOTkxNzc4NjEzIGxlZ2FjeS10cnVuaworMzcwODkgNTdhNjZkNzAwYzdjZmJhYTY2YTNiNDdjZGM2ZWRhMmEzYjYwOTg4OSBsZWdhY3ktdHJ1bmsKKzM3MDkwIDBhOGQzOWFjYTk4YzVmZWNjZGY3YzkxNzYxZTc0MDQ3ZjA4MGU0YTEgcmVsZWFzZTIzLW1haW50CiszNzA5MSBhMWNmNGEyOWFjMzAwNzA4N2VhODk4ZmU5OTYyNTZmMTEzODIzMDNkIGxlZ2FjeS10cnVuaworMzcwOTIgNDBiNWFlZTIwYjgzMTcyZWQzNGI0MWE4MTZmYmE3Y2E2MjliMjI5MSBsZWdhY3ktdHJ1bmsKKzM3MDkzIDdmZWMwNjYyY2Y0YWEyZGRmZTRkYjdmYTBhNTQ5OGRhZTdjMDE3NDcgbGVnYWN5LXRydW5rCiszNzA5NCA5YzU3MGFmNTM1NmU3ZTFiNzZkOTFhYWU0MDNiYzAzY2U2MzhhN2NmIGxlZ2FjeS10cnVuaworMzcwOTUgZGVhOThlZWQ4Y2YwYzhhZmYzNjI4NDExN2M1ODMyNDdmODkzZGJhOCBsZWdhY3ktdHJ1bmsKKzM3MDk2IDY5OTc2Y2Y1OTE0OTVmZTg0YWVjYTllNWJmNTY1MjE0ZWZkODQwNDUgbGVnYWN5LXRydW5rCiszNzA5NyA3N2QzNjQyZWI4N2JlN2E4NzM5NmYxNDEzMWJiMjc1OGI3MzA2MzdiIGxlZ2FjeS10cnVuaworMzcwOTggYWIzNDk4MGZmYTE2OTBhOTUzYmYzMjEwZTNiYTczYWY1NWFkZGFjOCBsZWdhY3ktdHJ1bmsKKzM3MDk5IGY5ZjRiMTlkZDc1NWQ5MDFhYjE5NTc2Nzk1NTk3MWNmM2IxNWM0MWIgcmVsZWFzZTIzLW1haW50CiszNzEwMCAyMmI2M2VkMmQ1YjIyNzNmYmU5ZWEwY2IwOTgwNGU3NTg3MWZkMWU4IGxlZ2FjeS10cnVuaworMzcxMDEgMmUwOTY2ZGJkNjc4YjI4ZWE4NWQ5ZjM4ODE4OWQ5MTE5YTM4YTBlYiBsZWdhY3ktdHJ1bmsKKzM3MTAyIGY5OGU1OWYyZjg5ZDA5MWU0MGFlZjU2ZGM0YjYzNTA5ODM2MDczZmQgbGVnYWN5LXRydW5rCiszNzEwMyBmYjk4NjkwNDRiYmE5ZjcyMTc4OWFjZWNmZWRmZThjN2NmMDY0NjQwIGxlZ2FjeS10cnVuaworMzcxMDQgNzE0Mjc5MTU3OTZlZGMxYzMzNTI4ODllMGNiZTVlOGFhNTg5MDlkYiBsZWdhY3ktdHJ1bmsKKzM3MTA1IDJjYWE2ZjE5YTJlNjZjZWNlOGRiMWJiMGE4YWEyOTFiNDQ3NDUzZjggbGVnYWN5LXRydW5rCiszNzEwNiA1NjE3MDIzNTBlMDk4MDdiM2M1MjhjZjliYTAyOTkwYWJiZjU1ODA5IGxlZ2FjeS10cnVuaworMzcxMDcgY2QyYTk1Y2ZjN2ViNDhhYWY1ZmZhNDNmYjM0MDdlZDE3MDU2MDg3ZSBsZWdhY3ktdHJ1bmsKKzM3MTA4IDM5NWJiMzc0NmQxZDRlMDY2NDc4MjU4Zjc1MGI0MGMyNTAyODJiN2EgbGVnYWN5LXRydW5rCiszNzEwOSA4NGFjYzc3YzA2Yjg4OGE4NmZhNDkxYTAwMmVlMTVjYTU0MTA5MDdhIGxlZ2FjeS10cnVuaworMzcxMTAgMDM0NDAyNzIwMjhjNzk3MzRiOTgxZjJlNTFiMmFmNTcwMWY4MTY0MyBsZWdhY3ktdHJ1bmsKKzM3MTExIDk4ZGIwOWZkNDQzY2Y2N2I1YWViM2U2YTA4YzJjM2EyYTdkZmI1MmUgbGVnYWN5LXRydW5rCiszNzExMiAxZjliOWMyMjZiNDNlZDIwY2I2MWU2ZDIxYWVhNmNiOTY2ZThiY2QzIGxlZ2FjeS10cnVuaworMzcxMTMgYzY1NDMzNGRjOTYxOGVlMDVjZmYyNTgzNzMxYjFkMDVlNjVmNmEwOSBsZWdhY3ktdHJ1bmsKKzM3MTE0IDEyZWY1NmY4OGE5MGJlNTM2OGMyNWM1MzczMzczOGFlNzRmMDdiY2YgbGVnYWN5LXRydW5rCiszNzExNSA5NTc0NGE0MjA4YTI3MGMwNWI5Yzk1NDhjMTExNjU5YmIwZDgzMjNhIGxlZ2FjeS10cnVuaworMzcxMTYgMzc3YzUxOGQ4NDgzNDM5NzZiOTI5NDc5MDEzMmY2M2EzOGYxYzZmMiByZWxlYXNlMjMtbWFpbnQKKzM3MTE3IDhkZDM1ZjVjNzkyODJhNzIyYjY5NTg0ZTE4ZjA2ZjM5NzIwMjQxNzAgcmVsZWFzZTIzLW1haW50CiszNzExOCBiNGNiNDk4MjlkM2VlZWRiMGY0YjFjMjc3MDY4NGVkNWQ4ZjVkODBjIGxlZ2FjeS10cnVuaworMzcxMTkgM2ZiZDJkMWNhNWJiNjBkM2E2NzA5YjE3ZWI5YzFhZjA2NmE4MWQzMyBsZWdhY3ktdHJ1bmsKKzM3MTIwIDY2NDFkMDU0MjU5MjdmMmFmYTZjMTAwZTBmNDI4ZTM1NTIxYzliMWQgbGVnYWN5LXRydW5rCiszNzEyMSAxMWE0ZmJjODhhODAwYzVlMWEzNDhiN2Y1ZmQ0OTYxYjYyM2IzNTRhIGxlZ2FjeS10cnVuaworMzcxMjIgOTkzZmQ4YWNjOTBmMjg0NzMzYTA4OGE1ZGEwZDhkYTM0YWM1ZTZlYiBsZWdhY3ktdHJ1bmsKKzM3MTIzIGI2M2IzMDgyMWVmNDc4ZDkwZWI4YWFlNzA3NDIzZTNiMzI4N2MwN2UgbGVnYWN5LXRydW5rCiszNzEyNCA5NjVlOTZlMTUyOTkwNTYzN2U3YmQ1ZjJmMTdiOWI4MzRjMjczOWMyIGxlZ2FjeS10cnVuaworMzcxMjUgMWNmN2Q3MjI1YTk5NjM4N2M3MDY1NjgxODE0NWZjMTUyMmNjOWU5NyBsZWdhY3ktdHJ1bmsKKzM3MTI2IDdhMWZiMzE2ZTY1NTIyZDE2Yzc2NzRhN2ZiZjJmODA1Y2UyYmJhM2EgcmVsZWFzZTIzLW1haW50CiszNzEyNyA4Y2Q1Nzc5NmE5Y2Y4MTBiYmVkOGUxNzU0MWZlMTQzYjA2OGQwNTA2IGxlZ2FjeS10cnVuaworMzcxMjggZjEwNzJhMzBiYjU4MTA4ZThkNzc2ZTdmYTEwY2QzZDNkYjc3ZmZhNiByZWxlYXNlMjMtbWFpbnQKKzM3MTI5IGIwNDUwNzAxNzJjYjJmNzU5ZTM1Y2E0M2QzY2EzZjVmMWY1OTFhOTkgbGVnYWN5LXRydW5rCiszNzEzMCA0ZTllY2JmNDdiNmJhOTdjOGI3NWMyYWUxZTM1NGQwN2NkODE4M2M5IGxlZ2FjeS10cnVuaworMzcxMzEgZDY3NWUzZTBmZTc5NjhlYzE3MDY0NDg4MzMyZmNiZWFkNzMxMzEzZSBsZWdhY3ktdHJ1bmsKKzM3MTMyIGE0N2YzZDJmZmQyMjE1NGZmNzhkZjk1ZmI2MjhmOGJkMDYzZDJjODAgbGVnYWN5LXRydW5rCiszNzEzMyAwZWQ0ZmQ3YTBlMmUwZjUwM2YyZGVjYjczZGNjYzQyNGI3NzVkZTZmIGxlZ2FjeS10cnVuaworMzcxMzQgMzAxNjQ3MWFlNTQ4OWJiZjk4NzljMWQ3M2NlYzJmYjBjMDNjMjZlNCBsZWdhY3ktdHJ1bmsKKzM3MTM1IDNkYmRiZDU3MmQ5NDEyOTI3ZTg4MzY1MjAzMTBlMDY2MTM1ZWQ5MTMgbGVnYWN5LXRydW5rCiszNzEzNiBiYWM5OTdiNzliMTkyNWQ2Yjg5MmQzZjhiNGNmOTgwYjgzMjdlNWYxIGxlZ2FjeS10cnVuaworMzcxMzcgNGNhOWZhMjM1M2JmYTQzYjM4NmVkYmVkMmJkOTQ4MDRmNWJlMzAyNSBsZWdhY3ktdHJ1bmsKKzM3MTM4IDI3Mjc3MThlOWU4ZjQyNjRmYjZkMTdhMTdkZjE5OGUyYmExY2YzZDAgbGVnYWN5LXRydW5rCiszNzEzOSBhMTJkOTg0YmQ5NjJkOTUyZGNhMDdmYTY0YjQ5YjNkYjlkNDk0YjBlIGxlZ2FjeS10cnVuaworMzcxNDAgOGQxYjRjZDhhMTI0NTRlZjZjYWEwYTljNTAxY2Q1ZTVlMmVjZGI1ZCBsZWdhY3ktdHJ1bmsKKzM3MTQxIDBjNzM0OTMyYzZmNDFlZDJkNTBmZTNjMDY3YzIwYjdkYjdkMjdhNDUgbGVnYWN5LXRydW5rCiszNzE0MiAyYjEzNjQ0MTAzNWM4MzNlZTRiYjI1Y2FhNzhjMmMwMWVjNzhkYjljIGxlZ2FjeS10cnVuaworMzcxNDMgYjI1Y2IyMDQ1ZGFjYjA5N2RkMTEzZWU4YWRkN2MxMTBhZTY3OTZhNyBsZWdhY3ktdHJ1bmsKKzM3MTQ0IDgyNmFkODk2YTdhNWMzNWJhMDRiNTM3MjdjNTJiYTdkMTFmMjZkNTMgbGVnYWN5LXRydW5rCiszNzE0NSA0YWZmMWZiY2U3NTI0ZjFjNDhmOGQxMmIxNzFiMGY5NzRmZjcxMzJmIGxlZ2FjeS10cnVuaworMzcxNDYgZWZmNzY2ZTI5YzU1MjVhMDcwNWYyYmRlNmM1ZGJlN2U5OTJlNjI0MCBsZWdhY3ktdHJ1bmsKKzM3MTQ3IDI3NDdkYmQ1OTM4YjU2ZjhkOTc1MDBlZWRmNDZhMDFiYTc2OTVmZjUgbGVnYWN5LXRydW5rCiszNzE0OCAzNDVmYWM2NmRhYTliMTczZGZlZDJkOGEzOTFhYmMxNWM1NTc0ODk0IGxlZ2FjeS10cnVuaworMzcxNDkgZWU3MDNhMDk0ZGZiZGYxMDBhOWRiZDljMzUwMzdkY2U2OTMyZjNlNCBsZWdhY3ktdHJ1bmsKKzM3MTUwIGU1ODZjYmVjZGViYTYyOTAzM2Q3ODVkMDE1MzM1MTU0Njc5NDZiMWQgbGVnYWN5LXRydW5rCiszNzE1MSA0NDkxNDFhYTAxMWM5YTQzNjEzN2RjOTk5ODMxN2JiOTUxMjk1OTA3IGxlZ2FjeS10cnVuaworMzcxNTIgOGFhZDUyOTZmZWM5NjAzNDcwOTVlMWM0NzVmODA0Y2YyMGY0Njc4OSBsZWdhY3ktdHJ1bmsKKzM3MTUzIGZmODhkYTQwMDc3ODU4OWMzMjkzODJiOWVmZmRlZjJlMTc2YzlmMmUgbGVnYWN5LXRydW5rCiszNzE1NCA4ZDI3NjU1MWNlYTk3MmEwYjdlMWMxNzQyNmE2NDIzMzhlNjUxZjg0IGxlZ2FjeS10cnVuaworMzcxNTUgNGIwMGFlMWVmZGQ4NmRjMzkzNDUzNDkwNGY1Y2YyNjQ5OGU4MDA4OSBsZWdhY3ktdHJ1bmsKKzM3MTU2IDhhNGMzMDU0YTM2Yzk0NmY0ODEzOGRjNmFlOGI1ZjNkZWI3YmFjMzUgbGVnYWN5LXRydW5rCiszNzE1NyA1ZmFiNGY0M2I5NGY3MzcxYjVjMDBkYTk2YmM3ZTg4NjQ0YWJhMjA4IGxlZ2FjeS10cnVuaworMzcxNTggNjdmYmJlYjFlMjE4MWUwMDJlNDEwYTg0YmI5OGY4OTFmMjU1ZTk5MSBsZWdhY3ktdHJ1bmsKKzM3MTU5IGUwN2E2MjM0YjczYjFmNDc3NTgwZmJjYjI3ZGEyNTE1OGM2MDJmMDMgbGVnYWN5LXRydW5rCiszNzE2MCAzZTI1ZDZlM2RhMTk0ODViOWZmOGIwNDkxZTgyNzE5ZTNhNjc3N2FkIGxlZ2FjeS10cnVuaworMzcxNjEgOTZkNTM4NDg4YWVlYWMzYmZlNjYzOWE3OTQxNGI2NzA3NDFmOWRlOCBsZWdhY3ktdHJ1bmsKKzM3MTYyIGEzN2FlN2RiYTgxNGI3M2ZhNTMwMTg2N2E1YzQ2ZWJiZjcyNDMyOTcgbGVnYWN5LXRydW5rCiszNzE2MyBiMjkxMGU0NzlmMDdiMTEwMzE0MzRiMTE1NDQ2NzJjYmJmZTAzZDJmIGxlZ2FjeS10cnVuaworMzcxNjQgNzdkZTM4NTM0ZDI2MzI4NzY0NjNkNWJlYWE5Nzk2Mzg5MDMzMDk3YSBsZWdhY3ktdHJ1bmsKKzM3MTY1IGIxYzI2ZTg5YzQ2NGQ2YTg5YzY3YmFjZWVlMTU5OGU1OTRjYTAwZTMgbGVnYWN5LXRydW5rCiszNzE2NiBlMTliMDA5NzVkNWU4NjJmMGFlYzk4MTVmMjUzNmMzNTk5N2VjMzk3IGxlZ2FjeS10cnVuaworMzcxNjcgNTIxYjg3OTVkZjliZTQ4ODEwMDJhMTc3OWJhM2U1NTA2MWJjYjg3MyBsZWdhY3ktdHJ1bmsKKzM3MTY4IDRiMzI0ODljMzRhN2ExMWQ1YmNhODk1YTY2ZjE3NDQ3NTA4MmZlZDMgbGVnYWN5LXRydW5rCiszNzE2OSA3OGI1NzhjNDY3NzBlNTBlNjAyOGZjYmJlN2Y1NDI2NzJjOTgwNjVkIGxlZ2FjeS10cnVuaworMzcxNzAgN2Y2MTcwMjU1NjVlODBmMDc1NTVlZTkzNzc3MmNjNmFkNzRiMzZhMiBsZWdhY3ktdHJ1bmsKKzM3MTcxIGNkMTU2NDIzMDk0NzhlZDVlMGRhNmQzNTI0Njk1ZDM4MTNmNTI4YTUgbGVnYWN5LXRydW5rCiszNzE3MiBmMjgwNzJlNjRmODE3Njc0M2RjMDM4YmMzYWQ0YmU1MTJiOTFkMGZlIGxlZ2FjeS10cnVuaworMzcxNzMgNTk4MDUwMDE3YjVlNDAxZDAyMDIxMGExYWE0MGUzYjUzODc5OGQ1MSBsZWdhY3ktdHJ1bmsKKzM3MTc0IDg1Nzk4NTlmMTk4Yzc4YWMxNDNlZTY3Y2NjZjkyYTc2OWQ5ZWI1MjUgbGVnYWN5LXRydW5rCiszNzE3NSA1OWJkMTIxZWVlYjcxYzc1Y2VmOGEzYzg4NTNmNzg4ZjI1MDg3MmE5IGxlZ2FjeS10cnVuaworMzcxNzYgYmYwZWY1ZmM0OWYxZTg3NzJhN2ZjZDNkNWY5OTE5NWEwZmQyMzM4ZiBsZWdhY3ktdHJ1bmsKKzM3MTc3IDU0MmE1ZWZhNDg4M2JhMjY2OGQ1YTA0NDQ3ZjQwN2IzNDYyMzQyMTYgbGVnYWN5LXRydW5rCiszNzE3OCAyZjUyZGYxNzM5NTI5NWI2NDI2MzAzOGEwYmM3OGU5MWYwZjdhZmUxIGxlZ2FjeS10cnVuaworMzcxNzkgOTZiYjQ2NjkxZTg2MDYzMmQyMzM5NGIzYmJjYjM4MDA1YTA2NDNkNSBsZWdhY3ktdHJ1bmsKKzM3MTgwIDBiMTgxYmYyMzBjOTNmNjYxN2JiNTAzZmI0YjA1YjE3ODc1NWVkNzQgbGVnYWN5LXRydW5rCiszNzE4MSBjZjBlYTE5ODY5YWY1ZWE2NDk3ZDM1ODhhOGQzYWFiNGJjMTQ2YjU3IGxlZ2FjeS10cnVuaworMzcxODIgYjU3NjEyZjYxYmEzZjNlZGUxYTkyZTI3NWJmMDcyNWQxNWVmMzA0YSBsZWdhY3ktdHJ1bmsKKzM3MTgzIDZkM2JkZDE5YmVlYjM5OTQ2YmM2OTA4MjgyNzhhYzM3NTZjMmI5Y2IgbGVnYWN5LXRydW5rCiszNzE4NCBkNWIwOTc2MDhjOWRlY2FjNWQyMDgzYzhkNjdmODEyYmQwMDM5ZjZiIGxlZ2FjeS10cnVuaworMzcxODUgM2VlNWRlYzBjYTA3Y2NjMzVmZTEyZDE5NTQwYWM2YTNhOGJiODU4NCByZWxlYXNlMjMtbWFpbnQKKzM3MTg2IDFiYTc0NjlhM2I0OWI0ZDBkNGYyZmYxZDcyMWU3YTJhOWI3OGIxM2UgbGVnYWN5LXRydW5rCiszNzE4NyAwMGI4OWFiNDRjZmQ3Y2Y0MGVmMGU0MWE0ZDEwNGQ5ZWQzMTQxNmQ2IGxlZ2FjeS10cnVuaworMzcxODggYTI1YWY2OGQ3MWZjNmQ0ZDc0N2IxMDJhZjExNGM0ZjI5NGViNzVmOCBsZWdhY3ktdHJ1bmsKKzM3MTg5IDE3NjhhZmY5Mjg2NGQ2OGM4YmRlOTc4NWRlYzZjMzIyMTMwOWU5YzMgbGVnYWN5LXRydW5rCiszNzE5MCA3ODdmZmY1MWJmMmFhZDI4MzNhNjNlZTlmNzc4MzYwNjJhMjcwNDM2IGxlZ2FjeS10cnVuaworMzcxOTEgNTQ1MmQ0ZWNkZGQwYzQ3ZmZkYjMyNTA0ZWRjMzg3NDEwMWFhMWZjMCBsZWdhY3ktdHJ1bmsKKzM3MTkyIGZlZTU5MmZiNTY0MzZkOTI5MTk5ODgxY2Q4MDkzNzVhODY2MTgwODQgbGVnYWN5LXRydW5rCiszNzE5MyA5N2ZjYTczNWM4ZGE2ZjlkYjFhOGU3OGZmMmE5NTZlOTMxY2ZhM2QyIGxlZ2FjeS10cnVuaworMzcxOTQgMjA4ODE1MDVjMTQyNzM5MGQ3ZGZhYTc1OTc3NzdhMDI1YjJhODNkZiBsZWdhY3ktdHJ1bmsKKzM3MTk1IGQ1MzhlY2YwYmM2OTg0YWRjZWZiODE3MTQ2NjQ2MDcwMWIyZTcyMjEgbGVnYWN5LXRydW5rCiszNzE5NiAwNjIxNzdkZTg2ODU4YTdlMGZhZTk1YzIxMDlkZjVhZmE1ODBhNTlkIGxlZ2FjeS10cnVuaworMzcxOTcgZmMwYjQ1NzU1NzQzMjc2NTExODU3YWVkM2U1MDlhN2UzMjQ1ZTUwZCBsZWdhY3ktdHJ1bmsKKzM3MTk4IDA0MjQ1ZWY1Mzk0OWMxYmQzMTExNjZkNDlkOWUyZWMxYmMzOWQ3MjEgbGVnYWN5LXRydW5rCiszNzE5OSA1MDVjOTA2Mzg1MGU0YzQzYjBhZjQxNjc3NzE5ZTNiNjQ3M2ZkYmVkIGxlZ2FjeS10cnVuaworMzcyMDAgODRmYmFhYTIwMzU4YTcwZWYxMmUzMjY3MDI0YzRhNGRjYTY3NWJlMSBsZWdhY3ktdHJ1bmsKKzM3MjAxIDA1YzEyNWM5ODc2NzIwNzViNTY5YTNmZDI2NDJkZTE1NjhiNTljNTQgbGVnYWN5LXRydW5rCiszNzIwMiAwMGU2MTk4NTFhNTY5NzQ4YWQ0N2JhMjYwMzZjNDUyNzcyNDNkM2Q2IGxlZ2FjeS10cnVuaworMzcyMDMgYjdhY2I5NzBmNTM2NTEzZDNlNGYxMjMxOGRiZDBhNmVjZTBlMjJjMSBsZWdhY3ktdHJ1bmsKKzM3MjA0IGYzMDk5M2QwNTg5MDhlYjBiN2FlM2UxOWE3OWY1Yjk1OGJkMGRjY2UgbGVnYWN5LXRydW5rCiszNzIwNSA2OGU2OGVkNDZmMGU5YWY3NDJiYTAzMWRmNGVkYWNlNDIyOGUwNTAyIGxlZ2FjeS10cnVuaworMzcyMDYgZDllMDM5MzhhMzMzYmRiOTU0MmRmNTMyNWQ3ODE5YzkzN2Q2M2UwMSBsZWdhY3ktdHJ1bmsKKzM3MjA3IGQ1YzM0ZGJjMzYxODJmOWZlNTRmYTlkMGJiMjNjYmRlODZkZGJjMGIgbGVnYWN5LXRydW5rCiszNzIwOCAwYTc5ZDdhOTA0MGM3NjlhZmM1ZWI5MzQ0ZDBjMGVlYjk5MTg2OWFmIGxlZ2FjeS10cnVuaworMzcyMDkgZTViNGZlOTdmNzRkMTU4NmIxOTA1ZjY1ZWFjOGU3NTcwNjBiZWEwZSBsZWdhY3ktdHJ1bmsKKzM3MjEwIDFhNTRmY2Y0OGZlNGU2NDRmZTE4YWIxYTU2N2I0MmQ0ODc4MDQ1MmUgbGVnYWN5LXRydW5rCiszNzIxMSBkYWQ4Mjc3OTQ3NDVjYmNjZDQxMWNlODQ4MGY1NTIzNDg5NGZjZjcxIGxlZ2FjeS10cnVuaworMzcyMTIgYWRjNjZkMzE0Yzc4ZWQxNmRlYTExZTQ0NWU4YWJhMzM2NmI1MjUwNiBsZWdhY3ktdHJ1bmsKKzM3MjEzIGRkYmExNTRjMGUwMDBhYzQ1NmIwZTczZTU1OTg4YzQ3NWZiYTk4OWIgbGVnYWN5LXRydW5rCiszNzIxNCBjNDRmMDgzNDY1ZjljNWFlZTFhYTNjNjIwNjhlZmZhYzc1MGQ2ZTVhIGxlZ2FjeS10cnVuaworMzcyMTUgY2ZhNzJhOGRlMTQzOTkwY2FhZWJhZWFjZDQyNmQ5YWUzZThlMzUzMCBsZWdhY3ktdHJ1bmsKKzM3MjE2IDEyOGQ1Mjg0NTdkYTU2NWY5NmQ5ZGNmMWY2NDRhNGIzMzY1ZWIxY2MgbGVnYWN5LXRydW5rCiszNzIxNyBmNzQ3NGQzMWJhM2ZhOWJmMGM1MDc5OTQ0NmY5YmYyNzE5YmY0ZDZjIGxlZ2FjeS10cnVuaworMzcyMTggMjNkZjZjZjI5NjUwZDQ1YWFlMWM2YjYyYTdmOWVlNTViYjJiODJkNCBsZWdhY3ktdHJ1bmsKKzM3MjE5IDk5OWQzMWNhOGExOWY3ZGUwNzE2YjNmN2I4M2JiMzBlMDUxNzc2MGIgbGVnYWN5LXRydW5rCiszNzIyMCBlNTYxOTJlOWZkN2U3ZTQ5M2ZiMDAyNWE2YmUxZTJlN2UxNmY5ZjhjIGxlZ2FjeS10cnVuaworMzcyMjEgMWRmYzk3ZTJhY2RmZTRlZDA3MGY5YTI4Y2RmZDM3NzUxYzFhMjRlMiBsZWdhY3ktdHJ1bmsKKzM3MjIyIDk2MDQwMjUwNjk0MDcyYmI5N2Q4MGVjNDg5YjJhYTkyOTViMGQwMjcgbGVnYWN5LXRydW5rCiszNzIyMyBjOWE4MmU5YjdiNGQxODUxNmVhMmNjMGQyNGU4YzVjOWNjYjRiZjM0IGxlZ2FjeS10cnVuaworMzcyMjQgYTZlYWMzZmU1NDJmOTMwYzhlNjEzMTU5M2I0ZjNlY2FiMGNlN2JmYyBsZWdhY3ktdHJ1bmsKKzM3MjI1IDAzYmUwNmJjYTE2MGZiYzljOWI1OGE4MzEzYmUxNTM0NjI5NGNkOTMgbGVnYWN5LXRydW5rCiszNzIyNiAyNjhjNWY4M2ZiODc3YWE0MTcwM2ViM2JlZDU4ODhiOGU0ODRhMjM5IGxlZ2FjeS10cnVuaworMzcyMjcgMjZlNDIxMTg2NWVkN2IzOTBmNGU5NDExMjg5YTZmZmQ1NjZlNzNjYiByZWxlYXNlMjMtbWFpbnQKKzM3MjI4IDBmNTNiYTE1OWU1NGUyMWVmNTU3YzA0Njg0YzhlNjZmZWY3NDZmMDQgbGVnYWN5LXRydW5rCiszNzIyOSBiMTBiN2I3YWZjMDBkOWIwOGNlODMzOTNiZDQyMDRhMDU2OTQ1MzRhIGxlZ2FjeS10cnVuaworMzcyMzAgMzU0MGUxMDUyNWExYWVjNjdiYjE2MDNiZjg4YTFjNTg4N2JiMTcyMiBsZWdhY3ktdHJ1bmsKKzM3MjMxIGQwYzAxZTBmZTI0OTY3NTdkY2I2ZmYwYjg1YWVlMWMzYzk4N2JkM2UgbGVnYWN5LXRydW5rCiszNzIzMiBkNDEyNTZhNmYyY2VjY2VjZDIwMzE0YmIzNDRkZDUzMTJmNjc3NDkzIGxlZ2FjeS10cnVuaworMzcyMzMgNWYwYzdmNWNhNmY5ZjExOTQxMTFiODc5NzU4MzczMzJiMmFjYjI4MCBsZWdhY3ktdHJ1bmsKKzM3MjM0IGFmNjUwMDRmNjIyZmEwZDg4ZWNhMDMzN2ZhZDcwNjI1YTA2MTNjMTkgbGVnYWN5LXRydW5rCiszNzIzNSBhZDQzZGYxOTc4NGM1ZTQ0ZDE3NGUxMzc5YWY2Yzc2ZGEwM2U5ZTE3IGxlZ2FjeS10cnVuaworMzcyMzYgYjIwZDQ1NTU4NjUzNmQzNDJjZjdhMmU3MTU2ODQwZjc5ZjViNGY3NSBsZWdhY3ktdHJ1bmsKKzM3MjM3IDc2YTliZGEzMDI4ZTg2ZGE0OGFhZmM1NTgwMzg1OWMyYTkwZjI1ZDYgbGVnYWN5LXRydW5rCiszNzIzOCBhZGEyYTY2Yjg2YTRhMTdiODUxYzFlZDA0YTU5NjEzYjM0YTllMTAzIGxlZ2FjeS10cnVuaworMzcyMzkgMTI0NjQyMjIwM2U4Nzg2NTJjNTAwZGE5MGI0MWU2NDlkYTQzNzZlYyBsZWdhY3ktdHJ1bmsKKzM3MjQwIDk0NjVmZTY3ODIyMjY2NDNkNmM1N2VkNTE1YjJjNWQ5N2VmZTc2NzEgbGVnYWN5LXRydW5rCiszNzI0MSBhZWUyZWU3NDVmMmM1ZDk4ZDg2YzA2MjczZTY5YmJmOTczMTMxYWRlIGxlZ2FjeS10cnVuaworMzcyNDIgNzU1MWM3MjVmZTk2YTAxYTI0MDY5Mjg2ZDJjOWNlODZmOWRmZmE0MyBsZWdhY3ktdHJ1bmsKKzM3MjQzIGZiNjE0MDMxODBhODVjNDc2OTBhNWRiNTQ5NzQ3OWYwNjAzMzA0ZTIgbGVnYWN5LXRydW5rCiszNzI0NCBiZmZkNDk0MzU0ZWU3MDJhMWI2OTk0MzMzNmY5NDIyZTQ0NjQ2MWNhIGxlZ2FjeS10cnVuaworMzcyNDUgZjAwNTNhNmEyYmVkZGRiOTk2M2Q5N2Q5YzY0NGEwZWJiZDk1ZjQ0MSBsZWdhY3ktdHJ1bmsKKzM3MjQ2IDNlMDYyODk3ZDJlN2E5MTA3MzQ2MmQzY2MwOTc2YWVjYjY4ZjE2ZTIgbGVnYWN5LXRydW5rCiszNzI0NyBkZjQ3NzBiN2NhZWZiNDdiOTk5ODE0YzFiYmY3YzlhYWZiYWZhZGM1IGxlZ2FjeS10cnVuaworMzcyNDggNDM4NTJjOTYzMTYwNDE0OTI3MWQ0NDc0NDk2NDE5ZmJiMzljYjNjMCBsZWdhY3ktdHJ1bmsKKzM3MjQ5IDlmMmRkZGU5M2E2Mzk1ZDYyZGM3MjNkNWNmYzYyMDg1YWM2M2E2YzYgbGVnYWN5LXRydW5rCiszNzI1MCBjMmM0OWVlNzI3ZDBkZDM0NzdiODhkOWFkMDViNGQ5OTg3MTQwZTRlIGxlZ2FjeS10cnVuaworMzcyNTEgOTQzYzIyYTdjNzAxYjI3MzBiYjVlYTllMjZjYThhYzY1ZGUzYzE4YSBsZWdhY3ktdHJ1bmsKKzM3MjUyIDExMDA2MDU4NzBmZWI4YzdhOGMxMjRjMDE4NzgxNGEwMzg1OWVmMDggbGVnYWN5LXRydW5rCiszNzI1MyBjOTE2OGU3OWVmNGNjMmRiMmVkMWY4MGZkN2FmMDE5OGFiMzYyNzcwIGxlZ2FjeS10cnVuaworMzcyNTQgZDExM2M2MTM1NjdhOWU1MmMwN2M0ODlkYjY4ZjNjNjA1MDUwMzYyMyBsZWdhY3ktdHJ1bmsKKzM3MjU1IDIyODExNDBkMjBjNzVjM2UyZDA4NzdmYWMzZTdlYTQ2ODY5MTRlOWQgcmVsZWFzZTIzLW1haW50CiszNzI1NiBmODNjNWE4NTc5Zjg0OGI3YTA1OWMzNWIxNjZiMTZlNDQxYzFiYzUyIGxlZ2FjeS10cnVuaworMzcyNTcgZWI5YjM4MDI1M2M5OWQyMDM1YmZhZjAyNTlmMTU5MTA3ZDdmZWM1ZSBsZWdhY3ktdHJ1bmsKKzM3MjU3IDE4NmI3MjU1MGU1MzUzM2VmNjE3NWY2NDExZjkzMmMxMjk4MTkzZDcgbGVnYWN5LXRydW5rCiszNzI1OSBiMTRmN2VlMjVkNTBhOTM0ZmQ1MmNmMTViOThhZGU2Nzg2ZDliODBkIGxlZ2FjeS10cnVuaworMzcyNjAgNTM0NjkzYmIwMTBiYzJmOWJlNjdjMGQxMDJiMzFlNzVjZmY2MTgyYSBsZWdhY3ktdHJ1bmsKKzM3MjYxIDk4YzgwMTdlODUzNWI5MjdlZTFjNmFiMzk2YWQ4MmFkZDAyMGZkNDIgbGVnYWN5LXRydW5rCiszNzI2MiBkMWY4YzYzMmI2MDVhNWZiNjBhMGM0YzdlNzgzMTk1NDkwMzA5ODY1IGxlZ2FjeS10cnVuaworMzcyNjMgM2ZhNzljYzlkYTVkYTI5MGUxMDQyNzQ0YWE5N2U1NDY0OTY1YWU0ZiBsZWdhY3ktdHJ1bmsKKzM3MjY0IGI5OTQ1MzM1ZGEyNzJjMjg2MzFkZTViOWYwYjNiNTU5MjNjMGRjOWQgbGVnYWN5LXRydW5rCiszNzI2NSA0NzQ1Zjg0N2NmYTE0NTE0NTUxZDgyOGUzNGI2MzNhN2E2Y2ZjMTNiIGxlZ2FjeS10cnVuaworMzcyNjYgZGYxY2Q0MDcyMTc3ZGQyZTU2ZmVhMTE0ZjEzOTA3ODI4NmRhMjk0YyByZWxlYXNlMjMtbWFpbnQKKzM3MjY3IDVlZDU2NDkzZjBiMDE2MDM1M2IyYzU3YTQ3ZWZlOTc2YmQ0NzA1ZjMgbGVnYWN5LXRydW5rCiszNzI2OCA5N2MyMDdkYjkwYTFkMDdkYjY5ZWJiODRmNTkyYjQwNGUwMDFmYTBiIGxlZ2FjeS10cnVuaworMzcyNjkgMjFjNzkzNDBkZWQ1ZGUwMDM4ZWJiNzhkYjMwY2IwZjE5ZDk4NzdiZiBsZWdhY3ktdHJ1bmsKKzM3MjcwIDQ4M2MwYjRiNjMzMjhmMjllNzllNzk1YmM4ZTk4MTgzMWJkYjcxNDUgbGVnYWN5LXRydW5rCiszNzI3MSA2ZmYxYTViY2RmMjJkNDMwNGU1OWVlMTNmNTBjMTkxYmJjYTY1MzhiIGxlZ2FjeS10cnVuaworMzcyNzIgMDc4NDU1NjgyODc1NzJlMDhmZmE2NzA4YTdhNWE0Y2MwNDJkN2Y2NiBsZWdhY3ktdHJ1bmsKKzM3MjczIDhlMjNiZDNkNWIxYTcwZmFhZWMwODNhN2VkZmVkZmYwOTIxZjk0ODggbGVnYWN5LXRydW5rCiszNzI3NCBmYzJjZTU4MDIxNmM4ZGNlZWRhZTgwYWQ3YTJjZTI3ZDJmNDVmMDM1IGxlZ2FjeS10cnVuaworMzcyNzUgMTM2YjM4ODU2OWEwYzQ2MGM2Mzg4OTJhYWVjOTIwNzkyZDZmOWFiZCBsZWdhY3ktdHJ1bmsKKzM3Mjc2IGMwOTMxOGIwMDkwZDZiOTdiNTViMjA0YzI2OThkNGExNDQwZjNjOTggbGVnYWN5LXRydW5rCiszNzI3NyBlMWFiMmMxMmNkNWVmMjVmMGQxODlkMGMwYjYwMThiNzY1MGQ0NWYzIGxlZ2FjeS10cnVuaworMzcyNzggODM4MWQwNzNhZDM4NmIzMTNjNDgxNDRlMmFlOGFlODMyMGYwZmFjNiBsZWdhY3ktdHJ1bmsKKzM3Mjc5IGRjOTdmNTgxZjIzMzQxMTY0MzQ4ZTRhYjNkZjA2NTI5YjczMDA4MTMgbGVnYWN5LXRydW5rCiszNzI4MCA1YjZmYmE2NDU0YTA5YWE4NzBjZWI4OGUzNmVhZjMwNTM4MTBkZTZlIHJlbGVhc2UyMy1tYWludAorMzcyODEgYWQwMGY3YzBhZDA3NDI2ZWQzMjJiMDdiYWUyMzFkNTY4MDQzOWFmYSByZWxlYXNlMjMtbWFpbnQKKzM3MjgyIDc2N2EzOGRjYjMwMDk0NDZmZWVmM2JmY2M1NGU4ZDY4OWEyZjYyMzAgbGVnYWN5LXRydW5rCiszNzI4MyBkOWEzM2VjYmM3ZjI4YWFhYjA3MTY3YTliMjFhNTkxYThkZTUyYTBhIGxlZ2FjeS10cnVuaworMzcyODQgMzBlMjczODQxYmFlMGIzOGQwNjhlMmJiMGZlNWNkZThjNTU2NjQyNiBsZWdhY3ktdHJ1bmsKKzM3Mjg1IGI2ZTg3NWFhNTA4YmY4MjAxZDc1M2YzNTg1YjkzMzE3NGVlNzJjYjQgbGVnYWN5LXRydW5rCiszNzI4NiA3MTA4M2ExNzI1Y2JlNzg3Y2JlNWIyMGM4NDQ1NTg4Mzc5MGMzZjY5IGxlZ2FjeS10cnVuaworMzcyODcgYjVmNjExODMxN2QwZDAxNWRhNTkxZGE3NDQ3OGU5NzEzMjc1OWM5ZCBsZWdhY3ktdHJ1bmsKKzM3Mjg4IDY5MzI5NDNkZTZiMWY1OWJmNzY1Zjk2NWQ3Zjc4YWNjZDk1NTAwMjEgbGVnYWN5LXRydW5rCiszNzI4OSAzYWZiNjdkOTc0MmI3ZGNmNjI0NWYxNzFhMTk0YmY3ZTRlM2M5NzhiIGxlZ2FjeS10cnVuaworMzcyOTAgYWI2MmY3NmNhOGUyY2MzODY1ZmNlZmJlZmViZjk2OTViNmQ1ZTk5NiBsZWdhY3ktdHJ1bmsKKzM3MjkxIDg0ODBiNzJhYTYyNGRhMzM4ODIzNTc0YTMzMTNiOGViYTYzODBlOTkgbGVnYWN5LXRydW5rCiszNzI5MiA1NzQ3OGExM2ZiZjY0NGQ1MDNkYTY2YjI5MTExZGIyZjk2MGMyOWIzIGxlZ2FjeS10cnVuaworMzcyOTMgMjEzODNmYjFhOGYyOTFjY2I5N2QxMzI5NzFmNzQ3YWM3YmFlMmQwNyBsZWdhY3ktdHJ1bmsKKzM3Mjk0IDk2ZDNlZmI5NDBjZjM0M2MyMWIzOTU4MjA0Y2YyODZiODc3MDgxZDcgbGVnYWN5LXRydW5rCiszNzI5NSBjZDA3MGZmYzg5MmQxNDAwMjlkZDYyYjUxYzAzNThkMjUxYTg4MDBmIGxlZ2FjeS10cnVuaworMzcyOTYgNGI3MDhmYTBhNjBhYjVkMTcyYjg3YjUxM2Y2M2EyNTBlZTUxMTkyMiBsZWdhY3ktdHJ1bmsKKzM3Mjk3IDA2YWJkY2Q1N2ZhOGQzOWMwOGNkMzc5OWNjYjdmM2M0MWQyMzY0NDcgbGVnYWN5LXRydW5rCiszNzI5OCA2ODUzOGUxMjRlZTBhOWIzZmU2MzE4ZjZiMGQ2YzUxNDE4NzI0Zjk0IGxlZ2FjeS10cnVuaworMzcyOTkgMzA2OTdmNDQ2Mjg2ZDA5MWU5OWVmZjg4Y2ViMjQwNWU5YTg2YzNjNCBsZWdhY3ktdHJ1bmsKKzM3MzAwIDg5N2EzNjNmMGU4NmZhYTdjMDVmYmVjOTAwMTUwODBlOTlkZWVjZWEgbGVnYWN5LXRydW5rCiszNzMwMSBmYWMyYTUzOTA2ZjE3MDUwNjVhOWZkMDg2MzE3YWRjMWI4YzlhNTg3IGxlZ2FjeS10cnVuaworMzczMDIgYTI0MzI5Njc4NmNlNzg0MDEyMGU1Mzc3M2QxNDRlYjVhNjQxOGM2YyBsZWdhY3ktdHJ1bmsKKzM3MzAzIDYyOTIwMGQ4ODBlYTI4YmFjZGMxNzVkZjIxNmFhZmI1OTFlYjQ3ZWQgbGVnYWN5LXRydW5rCiszNzMwNCA1YjMxYjRjM2I3YmFjNWQ0MWMwYTEzMGE5NTUzNzAxNjVjMzllNTlmIGxlZ2FjeS10cnVuaworMzczMDUgZTQ0ODlkNTZmMTA5MDIwNzQ3MjhjNWJmNGYwOGYxOWEyOTQ1OThjNSBsZWdhY3ktdHJ1bmsKKzM3MzA2IDRkYWE3YzcyNWE3OThlZWNhODc4ODMyYzZmYTI2YzQ1NTJmZTlkMDAgbGVnYWN5LXRydW5rCiszNzMwNyBmMjRhN2ZhMzhmNGY5MWJlZmI3OGVlNGY0ODk0ZGVmYjBjMjMwZWJiIGxlZ2FjeS10cnVuaworMzczMDggN2JmNDNiZTgyOWY3ZTdhNGRlNDQ5YmVhZWQ4MTdmZDllNmJmYTcyYyBsZWdhY3ktdHJ1bmsKKzM3MzA5IGNhZGNiZjk2MmExZmQ2N2E0MmMxNmFkNzNjNDc1OWM3ZjJjNzRmYTYgbGVnYWN5LXRydW5rCiszNzMxMCA2ODhkOTgxYzYyMzRiMTM0NTVhNjY5YThmZmU1NDVkMzQ2Njc4ZjBmIGxlZ2FjeS10cnVuaworMzczMTEgNjRkNGU3OTZiM2RmMTI2ZTY0MzNmMjhhMDU2NWZmNWU2OGIxMTdiZCBsZWdhY3ktdHJ1bmsKKzM3MzEyIDU1NzBmYWUxZjAxY2QwNTNhMmQ3MWNiZWRjZDc3YzdlMTllNmU5NzEgbGVnYWN5LXRydW5rCiszNzMxMyAzMjQ2OTNlZjMyMGE1ODc2NDViMTI1ODhhYjNjYTJhMWExMTU4YjdlIGxlZ2FjeS10cnVuaworMzczMTQgODE2MThhN2Q0OTBlNzFkODE5ZDRmYjhlMGZlOTY3N2U5YjQ1OTQ2ZSBsZWdhY3ktdHJ1bmsKKzM3MzE1IDI1ZmI5ZTVmNWY0NTMzMzMwN2FiOWVhNDU0NWMzODczYWY0YzEwZWMgbGVnYWN5LXRydW5rCiszNzMxNiBlODMwOTNhYmM5NThkMDRmYzVlMzkzOTU1MzQxZjJkNWU0ZjJkZWJlIHJlbGVhc2UyMy1tYWludAorMzczMTcgN2E3NTE2ZTZmZWIyZjVmMTNhYjZlZjg5NzA1MTVmOGIyMjI0NzI4NyByZWxlYXNlMjItbWFpbnQKKzM3MzE4IDNkYWE2NjMzZjAxN2VmNDdmNjhmYjAwOGNkMDVkMTVmM2QwNmU3MzMgbGVnYWN5LXRydW5rCiszNzMxOSA5ZTNjNTJjYTNhMDRkM2YxMjFmMmIzZmRjYjc0M2VhNTM1NGI2NGYzIGxlZ2FjeS10cnVuaworMzczMjAgNDg3MjgwY2Y3MWI5NWQwMjE5YTgzNTU1OWE0MDNkYzhjODNjYjE4YiBsZWdhY3ktdHJ1bmsKKzM3MzIxIDAxNmQ3MDE2YzZjNjNkNTA1ZjkxOTA4NDU1MTJlODgzMjM0YWEzZDkgbGVnYWN5LXRydW5rCiszNzMyMiA5MWM4N2NlYTc3NjcxMTYwZGE5MDMzZDc2M2M5YTFkYTZmNmUxNzA2IGxlZ2FjeS10cnVuaworMzczMjMgOTQ5N2M1ODEyNmJlNDAwYWZhYTdkMjdmZGE5YTZkZDYxYmE3NWJmMSBsZWdhY3ktdHJ1bmsKKzM3MzI0IGRjZTYyNDkzM2MzODdlYzMzYjljZmYzN2VmNDY1OWZlMjY4NmE0YzYgbGVnYWN5LXRydW5rCiszNzMyNSBjODgyNWE3NGU0MjFmMWZiM2VjOWFjYWQwZDM4M2Q1NWU2OWJjMDgwIGxlZ2FjeS10cnVuaworMzczMjYgNTg3NjYzNmNhOGM2Y2NmYjE0MDI0NTM1YTgyMjVmYjgwYjdlZDZhOSBsZWdhY3ktdHJ1bmsKKzM3MzI3IDI4ZWY1ZmUwYjhiNWRlMzE4OTg0NDRhODcyZGRlMTFiNTYwZWJkOTYgbGVnYWN5LXRydW5rCiszNzMyOCBkOGEyNjFhNzcwMjgzYjAzMTRhZDc4ZWNkODBkNGI5M2IzODYxMjdiIGxlZ2FjeS10cnVuaworMzczMjkgZWI1MTcyOGVkMTFmMGUzMDhmZjA1NWNjN2I5MjFlNWI5NWVjZmM5NSBsZWdhY3ktdHJ1bmsKKzM3MzMwIDQ3N2NkMGY2MjJiOWVkYWViMWQxNGU3Mjg5ZTIxOGMzODJmNGU0ODEgbGVnYWN5LXRydW5rCiszNzMzMSBlMjNjYTk0ZWQ4ZWRiMWYxZDczMTM4YmIwMGRjYjExODRhMGJhM2Q5IGxlZ2FjeS10cnVuaworMzczMzIgYTA0NTE1YTk4ODMxNTkyZTIwOGU1NjdlZDZiZjExMmMxMTRiYmIyMCBsZWdhY3ktdHJ1bmsKKzM3MzMzIDkyNWNmOWIzMjg1YmZiOGEzOTE3Yzk3NmZmZWI3MGUyOGVjNzYyMTAgbGVnYWN5LXRydW5rCiszNzMzNCA3NDczYTE5NWQyMjMxMjIzODIwZDQ5MzBiMmI3ZDQ0NGMyYzk4MDYzIGxlZ2FjeS10cnVuaworMzczMzUgNDFkYmVlNWVkMjk1ODZjYjk4NDNmMGMxMGQ4ZWM0NzA5NmQ5MzQ1ZCBsZWdhY3ktdHJ1bmsKKzM3MzM2IDM2NzY3ZmUyNDI1MmIxNGRhMTRjMDUzMTlhNTMzMDQxNzJjNWJmNzkgbGVnYWN5LXRydW5rCiszNzMzNyAzZjg2ZjJiYjliNTZlODQ3M2M0ODIwNDIzZDIyNWZlNWJlNjY5OTVjIGxlZ2FjeS10cnVuaworMzczMzggN2ZkMjJlY2RjOWRiMDkwMzUwZDI0ZDg3NjlhMGYyNjA2NTg3ZTYwOSBsZWdhY3ktdHJ1bmsKKzM3MzM5IDRkMTY3ODViYTVkYzFjNGJmZDdiMWE1MjEzNTVjZDIzNmU3MGNhNzggbGVnYWN5LXRydW5rCiszNzM0MCBlODA4Y2QzMWZiZGM2YTA5ZWExZjMxZmYxMWI3ZTY1MzRiMWM0Zjk2IGxlZ2FjeS10cnVuaworMzczNDEgYTIyMDA3MzUzNmQ2OWE3NTJlN2FkYTgyNWMzM2VkNDk2MDFhMWViYiBsZWdhY3ktdHJ1bmsKKzM3MzQyIDFiM2FjNjc0YTU3Y2JmZmIzM2RjNjY4OTc4MjFhOWYxMjA5YTdhYWMgbGVnYWN5LXRydW5rCiszNzM0MyBiODdlYWE0NmM5Y2JmMWRlNTU3NmEwMWQ3N2VlNjRkMTcwZTJmZmJmIGxlZ2FjeS10cnVuaworMzczNDQgNTM3M2E1YWViODAwMjJiM2VkMzBlYjMwODI4MzY0ODE1YmNhN2JiNSBsZWdhY3ktdHJ1bmsKKzM3MzQ1IGVhY2RjMjk2MDZkODE0NDkyZTc4M2JiZDY5ZTE3YjhmOGU1NGRlY2QgbGVnYWN5LXRydW5rCiszNzM0NiAyNjIzNjY4YzVmZjViNGQ2MDg2ZmFmOGJmNzIzOThjOTBmMmU4NjkyIGxlZ2FjeS10cnVuaworMzczNDcgYzkzZDJiZWM2OGJlYzQ4YzVkYTYyMjdkZWIwOWFiZjQ3NzA2MDZmYyBsZWdhY3ktdHJ1bmsKKzM3MzQ4IDE4YzdjMTdjY2Y4NjMxNTc1NGZmZjY5ZGQ4NzZkMDY4ZWUxMGI3MjAgbGVnYWN5LXRydW5rCiszNzM0OSA4MjNkNjQ1YjMyYmZlM2YzNmY0Yzk2NzBlNzgxZTRjYTFiYzIyMGFhIGxlZ2FjeS10cnVuaworMzczNTAgNTNjMTM1N2M5YzYzZDU0ZTgyYmJiNTBmYzQ5ZjkwMzRmMjJmYjExOSBsZWdhY3ktdHJ1bmsKKzM3MzUxIGNmYjJmNWUwOTc0MDkzNjY3NzI0ZmY2NTM4MWRiMDhjNDYwMTg0ZWIgbGVnYWN5LXRydW5rCiszNzM1MiA3MWVkNGIzNWZkYzQ4ODc2ZDFhYmU5MTM5YzhlODZlNzFlOTlmNDAwIGxlZ2FjeS10cnVuaworMzczNTMgNGNiMTAxNjUyNWI3ZGVmNWJkNjY5ZjcyMGJhY2FiNWVkYjgwZmU3MCBsZWdhY3ktdHJ1bmsKKzM3MzU0IDczODViYTI2ODBlYjcxYmY3OWZjNTg1YzI5MTFjNTU2ZWM5M2UyMzIgbGVnYWN5LXRydW5rCiszNzM1NSAwYzI5OWNhYmY0ZjA2Yzg0N2RhNTI0M2I2NGViMmI1MDI3MGMxN2RiIGxlZ2FjeS10cnVuaworMzczNTYgMjk0ZDM3MGU0M2QxNGRkOTE1NGJjN2VlMjkxYjlkYjQ0ZDU4Nzg0YSBsZWdhY3ktdHJ1bmsKKzM3MzU3IDQzMzYwNmU5NTQ2YzM1YjhlNmI4M2U4NmM2ODk4ZjFjMjRkODVlNzggbGVnYWN5LXRydW5rCiszNzM1OCBkOTg0Y2I3ZTIzNTIzNmZhN2ZmNmU2MDYyODUzMGEwMWQ1NGE0ZjI0IGxlZ2FjeS10cnVuaworMzczNTkgMmQ2ZTE4NTQwODJlOTQ4NTQwMDk0MDNjZDU2MTliZTA3Zjk4Y2JmMiBsZWdhY3ktdHJ1bmsKKzM3MzYwIDllMmI5NGEzYjVkY2MwZjE4ZmI5M2Q1ZGQwZmI0NDVkOTgxNmJkMzUgbGVnYWN5LXRydW5rCiszNzM2MSBjM2FiNmY0MGI2ZThiYjJhYTMzMTg2NDQ4MTk1ZWExOWRmYjIyN2U3IGxlZ2FjeS10cnVuaworMzczNjIgYWJiZGJiYTU2YThiNzNkMDM1Zjg0MGI1Yzc3MzY5M2Y1NjEwM2Q3YiBsZWdhY3ktdHJ1bmsKKzM3MzYzIGE0ZDM2NzNiY2Q2NjQ3MzA2OGIyZWVhNDYzNDcxOTJmYjBmMGRmMTYgbGVnYWN5LXRydW5rCiszNzM2NCBkYTFkYTMzMWY2NGVmOGVkYmY5NWJlNzFhMzU5NGQ2NmY2YzM5ZDZhIHJlbGVhc2UyMy1tYWludAorMzczNjUgYWY5YmVkZDVhOGU3MjEwNjdlMjY0ZmNiYTI3NGUwZDlhODhmYmM0ZCBsZWdhY3ktdHJ1bmsKKzM3MzY2IGE3MGIzZWUyZTMwYjg5ZjU5YjA4ODMwOGI1YjRhYWE0YzAxMmE1MDAgbGVnYWN5LXRydW5rCiszNzM2NyA0NWM1NzQyYzFlMTNjYTRiM2ViNGZjYTk4MWMzZDYwZDlmNDBjMWZlIGxlZ2FjeS10cnVuaworMzczNjggNzhjMWMwMzc3OTYzN2ZjNjQwNjJkYmZkMjAzZmI5NjdkN2ZlMGI0NiBsZWdhY3ktdHJ1bmsKKzM3MzY5IGNjMGFlMDM3NDNiOGUyZGEzOTI0NTA4ZjA1MmY5OWEzOGRiMWM4MTggbGVnYWN5LXRydW5rCiszNzM3MCA0YjgxOThhNzQ4NzMxMmI4OTUzNGJmZWJmOWQ4NTQwYTVhMWUxNTgxIGxlZ2FjeS10cnVuaworMzczNzEgNzI1YzQ0NDIxYTQyZjU5Yjc5ZTM4MjZiMmEwM2Y0ZGZjODhkZDUxZiBsZWdhY3ktdHJ1bmsKKzM3MzcyIDk0ZjUwMGViZjYwYTQ1ZjZlNThjZDExNWU0ZDlkODAxN2ZjYjZkZmUgbGVnYWN5LXRydW5rCiszNzM3MyAxZjU0MGJmOWE5YjQwMjdiZDgyY2NkNjIwMDVlNWQ0ZGUwZDRhMzUwIHJlbGVhc2UyMy1tYWludAorMzczNzQgMzIyMTg0ZWY3NjIyZDY3ZjNhMjEwOGQyN2QwMmM0OWY3NGI3MzEyYSByZWxlYXNlMjMtbWFpbnQKKzM3Mzc1IDAzZWRiNjNhZTA3MThmNGY1YWFiMDlkM2Y1OGY5YzE1MzRlNzliMmQgbGVnYWN5LXRydW5rCiszNzM3NiAxMWQ0NTAwYmU2ZmE0MThlNTlmMDJiNWE1Y2NjNGMwYTMyMGMwMjZmIGxlZ2FjeS10cnVuaworMzczNzcgZjQ2NDA4MTVlNWJiNTAwYWQzMzc4MTU3YzUxNzQ0ODc5N2ZmMDhlMiByZWxlYXNlMjMtbWFpbnQKKzM3Mzc4IDZiM2RhNDdiZGRkNjhhNDQ1YTE3MjdkZDQ3NTNiMjk4MmQwYzY3MDQgbGVnYWN5LXRydW5rCiszNzM3OSBhNzcyNTdlNTQ5OTZhYWY1ZWMyZTAxMmE4YWRlYmU5YzY4NzBjMzk5IGxlZ2FjeS10cnVuaworMzczODAgZTllNjVlZjk0NmVjYWQyNmQ3ODc3MGJlY2EyNmVkZTgwNmNlNWI4NSBsZWdhY3ktdHJ1bmsKKzM3MzgxIDMwMTI2NWI4MGM0MTQ0MmNiZTI4YjBmMDZjMTNlNTQ2NDFhMDQwMWEgbGVnYWN5LXRydW5rCiszNzM4MiBkNTI5NjE1OWYxMWNmNGRhNTBmNDVmM2U2MWEzNmIxNzkzYzg4OGM2IGxlZ2FjeS10cnVuaworMzczODMgMTM5YTQwMTJiZWFkYWZjOTM4M2UwNTkyMjY1MTlhNmI3NDY4YjRiZCBsZWdhY3ktdHJ1bmsKKzM3Mzg0IDNlMTdhZWQyMzI0YzMxN2MwMWRmZTgwMmFmNGUxNWJjNDdmYWZhZTkgbGVnYWN5LXRydW5rCiszNzM4NSA1NWVjYTdjZDM1MzFkYzZhMjhkNjQ3OGY0OTczYmJlODczZWMwMTcyIGxlZ2FjeS10cnVuaworMzczODYgMDZmMjgyMzhkZjMxMTU5YzI2YThjYTRlNTU4MGFhMDAxN2U4M2IxMiBsZWdhY3ktdHJ1bmsKKzM3Mzg3IGQ4MzY3MGYyNGQ1Y2MyYzNiNGE0MjgxOWZiOTQ2NTJmODllNzNlYTAgbGVnYWN5LXRydW5rCiszNzM4OCAzMGQ0MjhmOTkyZjlhOTcwYTFhNWJhMWMyNjBjNmNlODk0NjE5YzQ5IGxlZ2FjeS10cnVuaworMzczODkgZDNkNmQ0MjAwOWE4YzQ3YTU4OTkyYjU4YzFjNjE3OGNhMGZiNWZkNSBsZWdhY3ktdHJ1bmsKKzM3MzkwIDE3NWVlZTA5Y2I5ODE4MGFiODk5YWE4MGNkYTRmNjExNDhlMTNjMGIgbGVnYWN5LXRydW5rCiszNzM5MSAxODA5YWJkMzkzNDI2Mzc4MDA0ZDkxMzQ3MjA1YzJmYzk1ZDFjNmI4IGxlZ2FjeS10cnVuaworMzczOTIgYTNmYjVlYmNhMzBkNzFkNjNmYTZjNzk0NWEwZTU1NGYzNTI3Y2NmZiBsZWdhY3ktdHJ1bmsKKzM3MzkzIDI1ZTA3YzQ0ZTVkMDViMThlZDgwZGRlMDhjYTQ1ODMzMWI5NDQ5ZjQgbGVnYWN5LXRydW5rCiszNzM5NCA4ZjY0YTg0ZmE4ZTZiZWY3MmNhOGZlYmZlYmVkNGY1NWFjZTNmZTIwIGxlZ2FjeS10cnVuaworMzczOTUgNWFjOGFmZDhkOTA0MDY1Njk4ZjFkODVmMDhiMWI0MWRlZWViZDliZSBsZWdhY3ktdHJ1bmsKKzM3Mzk2IDY5NWU1YmIwODM4MjM5M2Q5MzU1MDcxNzIyM2JhMGZjM2FlN2QyMWIgbGVnYWN5LXRydW5rCiszNzM5NyBlN2ZhN2I1Yzk0NDFjMzlkMjhjY2U1ZGNmZTU0YTNmOGVmMTIxYjhhIGxlZ2FjeS10cnVuaworMzczOTggZmUyNDJmNjlhOWQzMjgyMmFmM2UwMzVlMmVmNDIyZTliY2YwNWQzNiByZWxlYXNlMjMtbWFpbnQKKzM3Mzk5IGVjZDY1NGRhYWVjOWYwMGIyYTQ5MGMyN2I4ODEyZDRmMjU1ZDFkNTAgbGVnYWN5LXRydW5rCiszNzQwMCA5MmRjYTk4Y2Q0MzQzMTRmNWY0OTJjMmE5ZWMyMGUzMjU1NDVhMDJlIGxlZ2FjeS10cnVuaworMzc0MDEgNTI2NDI3ZTg4M2U4MjQxY2NlMTlmN2M0N2EyNzhiZmE4ZTJjMGNhYSBsZWdhY3ktdHJ1bmsKKzM3NDAyIGJkMTNhNDc4ZThkNjFkZmRkMzk3YmYwYjlhMTcxYzUyN2ZjOWJmMzggbGVnYWN5LXRydW5rCiszNzQwMyAyYjQ5YjRhODVkOWViNGE0Y2ZhOWYyOWMyMWQ2NDljMzgzOTQ1NjcxIGxlZ2FjeS10cnVuaworMzc0MDQgZjY3ODliN2VhYjRlMzBiY2NiODUxYzQyZWIzYzg5YjU1ODA0OTllNyBsZWdhY3ktdHJ1bmsKKzM3NDA1IDc4MWFlZjk3NDQ2Mzg4YjM4ZmY0M2Q0NzQxMDI3OGU5NmJkOGRjZjggbGVnYWN5LXRydW5rCiszNzQwNiBkNzRkZGNmZjA3MjQ0Nzc2NjU0ZTIzYTBjOTFmY2M0ZGJmOWNjOGI2IGxlZ2FjeS10cnVuaworMzc0MDcgYTNkNzhkNmJjYTUxOTI0MjM3YzJkNDljYzc3NDE2YzU5ZjNlYTc4ZCByZWxlYXNlMjMtbWFpbnQKKzM3NDA4IGQ2MDcxYTA1YmE4NGFmOWJmNzgwM2NiNjNhYWRiYjQwMjJlMmZjZTIgbGVnYWN5LXRydW5rCiszNzQwOSA2ZDA1NWEyNzViNGJkMzk1YTMwNmY2NDIzNzAyZWY3ZDk2MThhN2FlIGxlZ2FjeS10cnVuaworMzc0MTAgYmY2ODczMTY1MDc5ODZiZDIzYjM0NzY2MzdhMGE2MTdkMDRjN2FhNiBsZWdhY3ktdHJ1bmsKKzM3NDExIDcwMjM2N2RhMmM3MmJmNDJlNWZhMzkzODA4MzU2Nzk4ZjVjN2NmMDQgbGVnYWN5LXRydW5rCiszNzQxMiBkMzc2ZmU4NjJiMTg4NTRkNzJkYjg0MDVlMTQyNTBhZDBiMWIzZDFjIGxlZ2FjeS10cnVuaworMzc0MTMgZWNhZjBlOGZhNzM3OWU5MWRjMzg3MGYzNzUzYjc4YjljZjkyY2RmOCBsZWdhY3ktdHJ1bmsKKzM3NDE0IDY2YjU2ZDU2ZTY4MGQ0YjA1NWQ4NWY2YjYzZTNmOThjMDc3Mzc0NGMgbGVnYWN5LXRydW5rCiszNzQxNSA3ZDdhYzQwNGM4MDQ5ZjkzMjAyYzk4ZmQ3OWMwYTdkYzFiMDAwMjNiIGxlZ2FjeS10cnVuaworMzc0MTYgYmY5ZjkxN2VlNGY5ZjE0MDBkMWY1NWQyZDA0YjAzOTFiNzVkZTVmYyBsZWdhY3ktdHJ1bmsKKzM3NDE3IGE2ZGMxNzZjNWQxMjkyMDIyYjE3MThjODkwMTMwMzgzYWQ2MzY1ZWQgbGVnYWN5LXRydW5rCiszNzQxOCBhNTc3MTNmZGVkMjNiMzViYmQ0ZGY0ZjY2MTMzMmQ1MzAxNjQ0ZDI5IGxlZ2FjeS10cnVuaworMzc0MTkgMTVhN2NjMDBjNWExNDFkN2I5ODA3N2Q2MjIwZDEwZGY2ODc1NTU3MyBsZWdhY3ktdHJ1bmsKKzM3NDIwIGZkOTM0Nzc4ZjRiNDUxZWQwZWYyOWIyMDYwNTQwNjM5ZDNmZjdlYWYgbGVnYWN5LXRydW5rCiszNzQyMSBlMTJjYTVjZGY3NDEwNWRkNTE0ZjBhMzk5YmFhYmU0YjEyY2IwYzg3IGxlZ2FjeS10cnVuaworMzc0MjIgZjJhMmNlZDFmZDVkY2IwM2QxNmIyNDZiZGQ2MjNiNDc5NTA0NzBjOSBsZWdhY3ktdHJ1bmsKKzM3NDIzIGJlOGNmZjRhMWVjYWRjNzI1NDQzM2M4NDYzZThiNGM0Mzc4ZjI2ZTMgbGVnYWN5LXRydW5rCiszNzQyNCA5N2NiOWVlYTIxMmUyMzdiYWRkNjllNTYzNjI2NmE0MDFlODNhZjFjIGxlZ2FjeS10cnVuaworMzc0MjUgYTc2MTI2MDAzOTkyNTE5ZTM2MDdiM2FiNDNmNjBjZTRkNzJhN2MxMSBsZWdhY3ktdHJ1bmsKKzM3NDI2IGMzOWY4M2ZkZDRkMDMyM2QwNzRlYzhjOGU5NTJjODg3ZGNlZjhhOTUgbGVnYWN5LXRydW5rCiszNzQyNyA4YzZmYzg3NzEyNjA0MjExMWY0MmQ0ODBiYmEwYjg4ZDhkN2JjYWY1IGxlZ2FjeS10cnVuaworMzc0MjggNTk4NDFjODE5ZjRjOTc1ZDAzMWZjZTRlYzA5MTAwMzkxNmY2MWU5YiBsZWdhY3ktdHJ1bmsKKzM3NDI5IGYyNDZkNzQ2NGI1YzhhNDMxNmE5NTE0Y2U5ODQ2MTVlN2VhM2E1ZjAgbGVnYWN5LXRydW5rCiszNzQzMCA5NjkyYWYwMWMxYTgzNWFjMDQ1YTRkMjQ0MWIzZDU1MTQ1ZTA5YTI1IGxlZ2FjeS10cnVuaworMzc0MzEgYzRlYWM2ZTkwMTYxNGI2NzI3YWVhYzZmNDA4ODA1NWU0ZGYzYzc1NSBsZWdhY3ktdHJ1bmsKKzM3NDMyIDg1ZGEwODhlN2E4YmZkOGY3ZTFjZjYwZmZkOWUyMmE3NzQ0YzJlNDIgbGVnYWN5LXRydW5rCiszNzQzMyAzYmQ5M2I4MTQwMzE5NzdiYTMzODU2NzhiZjQ3YzQ1NzU4ZjBlMDU2IGxlZ2FjeS10cnVuaworMzc0MzQgYzM3ZTIwNzRhOGM1NDg1OWU2NzUyNzdmMDdjYWFhZDQxZTc3ZjVhZCBsZWdhY3ktdHJ1bmsKKzM3NDM1IGE1NjgyYmM3M2UwNGY2MDc2YzU3Njk4NGRiMjY0OTdjNjU4MjBhNjIgbGVnYWN5LXRydW5rCiszNzQzNiA5ODZhNWI1NjlhZGVkZmRmODdhNDExZTQ2NzQzNmViNzMzNDk2M2Q4IGxlZ2FjeS10cnVuaworMzc0MzcgNTBiNmY5NGEzOGE3NzY3MzZmZmIzMWRkZmQ2Mjk5ODBhNGNmMTcxMyBsZWdhY3ktdHJ1bmsKKzM3NDM4IGU0NzhlYmUxY2IzMTZjODRkODM0YTQwYjE0MWYwN2FkMWU1MjM5OGYgbGVnYWN5LXRydW5rCiszNzQzOSBmMjc1ODRkMTEzYWYzZTM4MDQyM2VlYmFkNDFmNGYyZTZlYTQ3MzRmIGxlZ2FjeS10cnVuaworMzc0NDAgYzI4ZmZiZmIwYWU5MDkyOTI1YzUwZmI0YTU2NDBmYzVlY2M5YjAxYSBsZWdhY3ktdHJ1bmsKKzM3NDQxIDMxYmM1ZjBmNGNmY2M5ZmJjZTRmMDQ5YmFhMWM0NWVkOGVkODk2YmIgbGVnYWN5LXRydW5rCiszNzQ0MiAzMjVhODhjNmVlN2Q1Y2Q3NjdmYzkwZmUxMGRiOWRlNDk0Mzg1MmYzIGxlZ2FjeS10cnVuaworMzc0NDMgOGE1Yzg3ZjY4NWNkZTljYTE0NzNjOTBkZGIxMmYyNjMyMjJlNTNiNSBsZWdhY3ktdHJ1bmsKKzM3NDQ0IDc3NjYwZWFlZjI0ZGM0YTFjYWY1Mzk3NmU1YzU2NjE1MTE3OWUzZTggbGVnYWN5LXRydW5rCiszNzQ0NSA2MTNhNTUzMzg1NGEwZDQxYjM2YjRhYmQ1OGU0M2I3NTUzMjkxMGJhIGxlZ2FjeS10cnVuaworMzc0NDYgODA4NDI4YzU2MDk2ODc2NDMyMTA3NTg0YmUwNGMzYzZmZGFhNDRmZiBsZWdhY3ktdHJ1bmsKKzM3NDQ3IDFiNmIxMDQyY2Y0NTY5NTY1NThkMGU2YzgyODY4ZTFkNzY0ZDU3NTcgbGVnYWN5LXRydW5rCiszNzQ0OCAyYmMyMzUzMjYzMTYwYTQ4YTA1MmE4YTc2YTVkNGJjYjc3OWQxYTZmIGxlZ2FjeS10cnVuaworMzc0NDkgZGJkYzQ1NTY0ZDI0MDM4YTkwNTc3MGZhMjU1OWM0NTgzOTk0ZGJjMyByZWxlYXNlMjMtbWFpbnQKKzM3NDUwIDc5MTljYWRlYjkxZGQ3ZjRhZmE5M2ExMjRmYTU3Yjk3OWJiZjMwZDggcmVsZWFzZTIzLW1haW50CiszNzQ1MSAxNDA4MWVhNjU2YjJjMGExN2MwMDFhNjdlZWEzNjM0NTExMGJhMThiIGxlZ2FjeS10cnVuaworMzc0NTIgNjhkMTFlNDM5YTBiNWE0MzFiZWY4YTg1YTc1YjM5MDJjMGIwYWUwNCBsZWdhY3ktdHJ1bmsKKzM3NDUzIDIzMDM2YzdhZjY4NzZlZTIxOTgzYTg5ZmEyNTdhMDg2NjRlZDNhNWEgbGVnYWN5LXRydW5rCiszNzQ1NCA4ZjRiZWQ5NzBmZjk1MTQ1NmJiNGZjYWQzMjM4MTFjNWRiNzI0OTUxIGxlZ2FjeS10cnVuaworMzc0NTUgMDc3OTU0ZDQxYzUzMjViM2RkM2M5OTY1NzJiMDU4NzFjNGJjODgzZSBsZWdhY3ktdHJ1bmsKKzM3NDU2IDJmNjQxOWQwMDdhOWNiODY0MDM3ODIyNTk2ZTdlZTE4YTQwMGI1M2YgbGVnYWN5LXRydW5rCiszNzQ1NyBiNDg0NzRiYWQ3NmZjZTljOTEzYTZiZTEyYTBhYjdiNTg4NDM0ZTMwIGxlZ2FjeS10cnVuaworMzc0NTggZTkzNzBiY2YwMmFkYmYzYjI2MzU2YTYzNTIxYWI0MzI0YjEyNzQ1NyBsZWdhY3ktdHJ1bmsKKzM3NDU5IGE3ODk1YWVmMWVlODAxZDg4N2FjYTI0NzM3ZGNiNWZjZjdlM2E0NzUgbGVnYWN5LXRydW5rCiszNzQ2MCAwYzMyZjAxY2NkOTk3ZThmNDU1ZmJmZmU0YTFlNGUyMzU2MGFlYTU0IGxlZ2FjeS10cnVuaworMzc0NjEgMzU1YjE1ZTRhNGRhMjMyOWJiOGZmNjhkOTQ1Y2Q5ZjY4YjZiZmJhZCBsZWdhY3ktdHJ1bmsKKzM3NDYyIGNmMWFhYTdlNDAwNTVkOWM4NWQxZDdhZGY1YmFlMGYyNWJkMjU0NmMgbGVnYWN5LXRydW5rCiszNzQ2MyAzMmRmMWQwNWNiMmQ5NjM4NTU4NjBhM2RkY2VlMzk2YTFlMTNmNzNkIGxlZ2FjeS10cnVuaworMzc0NjQgNGI1NDE2YjE4NDY2NGZlYThkZTkyZjY3OWUzMzIwNDYyMWEzZTM1YiBsZWdhY3ktdHJ1bmsKKzM3NDY1IDc1MTE1ODVmMmU2YTQ2YTZjODliZTVhMmUzZDdmYjkxMTQzMDhhMjAgbGVnYWN5LXRydW5rCiszNzQ2NiA3ZDY2NzllZTM5ZjkwYmI2NmI4MTY2NmE3OTFkMDQ0OTU0M2Y3YmIzIGxlZ2FjeS10cnVuaworMzc0NjcgZmMzZTg5NjQzODg4OTAyZWNjYWQyYjJhMjIzNTM2YjdhNjFmZWFkNCBsZWdhY3ktdHJ1bmsKKzM3NDY4IDY0MTE1MmZiN2Q4ODI5NmQyYmEzZGUzYTgxY2UxNmUyNTAyODM4NWIgbGVnYWN5LXRydW5rCiszNzQ2OSBiMzQwOGE4NWM4OWM5ZDM5MjljMDBiMWE5M2ZiMGQxMDUxYzMzOWJhIGxlZ2FjeS10cnVuaworMzc0NzAgNGQ3YjBkMjA2YmM3M2FkZWI2NWVhMDMzOTUxOTAzNzY1ZWQyNzhmYiBsZWdhY3ktdHJ1bmsKKzM3NDcxIDU0YzMzZDA5NWU3ZTQ5YmNkZmUyNDgwNGU0Nzc1YjM0ZGQxMGM0NDMgbGVnYWN5LXRydW5rCiszNzQ3MiBkYjZmMjFlZTYxMzU5NzI1NDE2Zjk2M2ViMWRhMzI4N2MxNTliODI5IGxlZ2FjeS10cnVuaworMzc0NzMgMDg0OTg4YzIwYjc1Y2U1ZDE5MmE0NGNjZjgyMzc1ZjY4NTU5ZjJhOCBsZWdhY3ktdHJ1bmsKKzM3NDc0IGI4OTIyYTM2ZjA4MzgzZjk4YzAzN2QwMjQzZGFiNWQyMTZmZjYxOGUgbGVnYWN5LXRydW5rCiszNzQ3NSBjN2MzOWI3OWU1YjdlOGE1YWYzN2I2ZjVhZDQ1MDlkODM4ZGViNGY3IGxlZ2FjeS10cnVuaworMzc0NzYgNGVlNDhlMmVmYjY4Nzk3NDVhMTM4OWYxMzVmYzI2NThjZmE0NTg5NiBsZWdhY3ktdHJ1bmsKKzM3NDc3IDc2NjRlOGJhZTE5ZTIxYjU0OTdhMjYzZjAyNGRiOTMyYjFhNDA4NDAgbGVnYWN5LXRydW5rCiszNzQ3OCA4MzEzMTlmMTAwZDBhOWYwZGMyMzIxYWNmMzYyMjc0MmRlMWM5YTM3IGxlZ2FjeS10cnVuaworMzc0NzkgYjExZjkxNjJlZDBkZDU0NzkzNGVmZmEzMzM5M2QzOTg5NDU2OGZiYiBsZWdhY3ktdHJ1bmsKKzM3NDgwIDMxYjA4NjcwZWJkZGI1MDFhZjA0ODc4NWNjZTdmY2FkZjk0ZGI0OGYgbGVnYWN5LXRydW5rCiszNzQ4MSAyYjljMTk4NzJiMDE3NjBmYTVkZWEzOTRhNDU5NmExOTljNmMyNjEwIHJlbGVhc2UyMy1tYWludAorMzc0ODIgOGUyMGVlMmVjYzBjOWU2ZTAwNmFjZTNhMmI1MGY5MDE5NmVlNWRhOSBsZWdhY3ktdHJ1bmsKKzM3NDgzIGU2MzE4MDVjNzFiMDcyZjYwZDU5NDk5MWJlMTJmMDRiNjJlNWQyMGIgbGVnYWN5LXRydW5rCiszNzQ4NCAyN2FhMGUxMTkzMzBhMzdlYjVhZDc2NDdmZjdkMjBkNDcwZWExMjk3IGxlZ2FjeS10cnVuaworMzc0ODUgMzRiMDcwMDhhYTc4YmU3OTk0MjFjMmY5MTIxYTdiN2E0MTQ2MjhjNCBsZWdhY3ktdHJ1bmsKKzM3NDg2IDYzZmMwNTIyYTk1YjUzNTVmOTFlYzk5OTQ0MTIwZmE4MzhkMWZkODQgbGVnYWN5LXRydW5rCiszNzQ4NyA4ZTlkY2ZlMTRkODE2MmU0ZGE1MDljYzg3ODY5ODYwNGE3NTkxYjBkIGxlZ2FjeS10cnVuaworMzc0ODggNTczMGY3N2UzN2U0MWI2MzQxYjlmNmU5YTM3ZTU3YTJjMTc3ZjE5MCBsZWdhY3ktdHJ1bmsKKzM3NDg5IGYwNzRkYjBjMTRhODUzZjkwMzJlNmFjMDkxN2Y0NzJkMjg0MWE3ZmMgbGVnYWN5LXRydW5rCiszNzQ5MCBjZDU4YTliNGJhNjYzODY0Mzc2NGQ3NDQyYTAwMjk4MWFkNTUyNDRlIGxlZ2FjeS10cnVuaworMzc0OTEgMGFlMGJlZjEwMDE0ZTVmYjg1MjcxYjdiMjYyNGI5MWU5OGRkMWQ5MyBsZWdhY3ktdHJ1bmsKKzM3NDkyIDgzYTNlMmQxOTE0YTkwYTRkMzAzN2VjMWI0NzI2MDYzZWU3OWY5MmMgbGVnYWN5LXRydW5rCiszNzQ5MyBjODRkYmU3MTdkNDljZDg2NGViZmY0N2E4YWRkYzFhNTVmYmY2MTQ0IGxlZ2FjeS10cnVuaworMzc0OTQgMGYwZGRiNGNiMDQzNzM0NDgwMWUzZTJhNTk1YjI2NmQ2YjdlY2YwOSBsZWdhY3ktdHJ1bmsKKzM3NDk1IDY1NWY3NGVhMGYzMWY1NjFhMGU4NWMyZWY0Y2EyNmNmY2M3ZWM5MWIgbGVnYWN5LXRydW5rCiszNzQ5NiAyMzQ0NGNiZGVhNTU1MGE0YTUwZTE0ZjkzZjM2NGYyODllZGYzMjEyIGxlZ2FjeS10cnVuaworMzc0OTcgMjc5ZjAxZTcxMDcxYmY1NjM1MzU3MzgwODM2NjMxZmFmYjI4YWE3YiBsZWdhY3ktdHJ1bmsKKzM3NDk4IDZiZDRhMTA1NjcxNmI3NzJhNDczOTQ4MWMyNDVkOWFjYjZiYjhhNGUgbGVnYWN5LXRydW5rCiszNzQ5OSA4MzZlOTJjYzVjNGZiZGI2YTlhYjBiYjc2MDdlOGYyNDNmMzdkODExIGxlZ2FjeS10cnVuaworMzc1MDAgZTVkZTY5OGVjZDRiNGUwNTlkNWViZWJlOTdhMTFkNGViMmYwMGYyMCBsZWdhY3ktdHJ1bmsKKzM3NTAxIDZmNGJjYjNiZDIwMmU0MzBmYzc0ODgxMzkyMjgyZjJmMjBmMGE3OGQgbGVnYWN5LXRydW5rCiszNzUwMiA1ZTE5ZmQzNjQyZjA3M2UyZDM0OThmYjJlMTM2ZjlhZDJkYjAxZDRmIGxlZ2FjeS10cnVuaworMzc1MDMgNDAzNTBmYmU2NjVkZmYxYjJkYThjNmFmMGRkNTM4ZGQ5MzFjY2RhMSBsZWdhY3ktdHJ1bmsKKzM3NTA0IDMwY2IyMDBkNDE4Y2RmZWVhODU2OWM1MTE3NjY5MzQ0N2E0NGVhYWUgbGVnYWN5LXRydW5rCiszNzUwNSBjZDcwZjFhYzNjMjVkNjg2MGE5NmUzYjdmYjQ5OTExMTExMTYwZDQzIGxlZ2FjeS10cnVuaworMzc1MDYgNGZiOGM4OWY2NmEwYjk3NjI1YTZiMDBlNDg0ZGZhYmYxZjgzYzlmMCBsZWdhY3ktdHJ1bmsKKzM3NTA3IDkxNjM0ZjNiYTIxM2E1MmI5MDMwYTRlZDUyZmQwZThhZDI5OGUzNzMgbGVnYWN5LXRydW5rCiszNzUwOCAwMGMzNmUxYmM1MGJjNmIyYzg3NmZhODAyZWRjOGU2MGRlMGRkMTg1IGxlZ2FjeS10cnVuaworMzc1MDkgMGM0ZjA5NTg2M2I5ZWQyYWI3YzIzOTlmYmViMmFiMDdjMjc4YjlhNSBsZWdhY3ktdHJ1bmsKKzM3NTEwIDNkOGQ3ODIxNzU5OTlkOWQ1ODIyYjI1YWQxNmQ3NTNlNjNhMTExOTggbGVnYWN5LXRydW5rCiszNzUxMSA1YTI5MmEwM2VhNDE2NzczNzAzMTA4NDc0NzhmZGNhZWJjNGMwYjQ5IGxlZ2FjeS10cnVuaworMzc1MTIgN2M1MGNkZTFlNGZkMDVlNDg4NGQzNzMxYWQ3YmEzOTVkYzI5YzM0ZSBsZWdhY3ktdHJ1bmsKKzM3NTEzIDc0NTBiYjkzYzM5NWNiMDY0YTE5YzM3OWI0NmQ4MzczNmRjM2ZkMDggbGVnYWN5LXRydW5rCiszNzUxNCA0ODZlOWM0MGNmYjkzZmU0ZjA2MDIyZTA5ODAwOTdiMTAyZDdkN2U4IGxlZ2FjeS10cnVuaworMzc1MTUgOTQ2NjEyZjY0YTgzMmU0NjdhNTFlMTk0ZDM4NWMwYTdkZjZlOWQ5MyBsZWdhY3ktdHJ1bmsKKzM3NTE2IGM1OTFmYTFkNDM1ZGYwNzU4NzRiMWJmZjdiNDZlN2RlMjkxODlmYTAgbGVnYWN5LXRydW5rCiszNzUxNyA3ZTQyYThlYmIzZWZmMTE3Y2JiYTc3OTZjOGIxZTJkZGQ3YzQ4Njg0IGxlZ2FjeS10cnVuaworMzc1MTggYzgxOTI1YjYxM2RhYjA2MzYxNjI1NjQ5MWI4MWQzYzU1OTVkMjFiZiBsZWdhY3ktdHJ1bmsKKzM3NTE5IGMwOTdhYmRiNTU2NjNlM2U0Y2JmYTdlODkwMWIwZDVmYzgyMjAwMzMgbGVnYWN5LXRydW5rCiszNzUyMCAwYjdlMzE4ZWYwOTI2NTU4YWNiYzhhYjU4ZTE1MjU4M2FkZTZmNTA4IGxlZ2FjeS10cnVuaworMzc1MjEgNDViMTk4OGUyNjkyNGZiYWNiMzE4YzVhNWZhNWJmMjkwZjcwNmJhOSBsZWdhY3ktdHJ1bmsKKzM3NTIyIGNlODEzYTU3ZDQ0ZDNhYWU4OGM0OTBkYTZjY2I5NWViMGVkMmJmZWIgbGVnYWN5LXRydW5rCiszNzUyMyA5MTg5OTQ2ODM4ZWVjY2Q5ZDViYzZhNDRmNTA0NGFjOWY1MjU1ZTdiIGxlZ2FjeS10cnVuaworMzc1MjQgMGJmZDM1YTc2YTQ0ZjgxMmNjYTZkZTZkZmNlYTk2ZWUyNjc0Y2FkMSBsZWdhY3ktdHJ1bmsKKzM3NTI1IDYzYTAzODliZDVmY2E5OTYwNTY4ZDNmNWMxMTc0NzNjM2YzNTQ3NDAgbGVnYWN5LXRydW5rCiszNzUyNiBjYzQ2ODQwNTFjNDYzMzUzMDUwM2FmMjU2MjBmMGJlYzIxOWQwMTNkIGxlZ2FjeS10cnVuaworMzc1MjcgNTQxMjA5NmQwZjk1ZGUwOGM5MjZjYzNjNmIyNWI0ZGJmNGE5OWQ5ZCBsZWdhY3ktdHJ1bmsKKzM3NTI4IGUxMjk3NmU5OGY2MTNmNDMwZjBiYjgwYjEwYzQwMTJiYzlmZDEzYjAgbGVnYWN5LXRydW5rCiszNzUyOSA1ZGVmNjZmMmM5YWJlZTVmMDhlYWEyODQ0Njc0ZWZmMDQ5NGY3YjRkIGxlZ2FjeS10cnVuaworMzc1MzAgYWI1ODhjZTllNzFmYmZlMGMyMzc4NTY1MGRhYmFjZWQ2NWUwNmE1NiBsZWdhY3ktdHJ1bmsKKzM3NTMxIDExOGI2ZjY5ZTNmMTUzYjc4NzllMzRhYzZkY2RiMGI1MGEyNzAzZDYgbGVnYWN5LXRydW5rCiszNzUzMiBlY2YxZTg1MzQwNmI3Y2QyZWRhNjkzMzI2MmQxMmM4ODllZGI1ZmI5IGxlZ2FjeS10cnVuaworMzc1MzMgNjBiZjJhZmQ3MzEyMjU0NmVmYWYxYTdhNjllZDAwNGZlMGI5NWIxOCBsZWdhY3ktdHJ1bmsKKzM3NTM0IDg5ZmFhY2Q5ZWM3Njk1NTIzMWE2ODM1ZWM1MTQwY2Q1NTA5ZjVkMjEgbGVnYWN5LXRydW5rCiszNzUzNSAyMmVlOTE2NDNiM2YzNGI5NDdkMDE0OTBmMmFkZmU2ZDQ1OWE5MTJlIHJlbGVhc2UyMy1tYWludAorMzc1MzYgYjBmM2E2OTNiODU0YjdmZjgyNjYxZTY2MWM2MTk4YzgyODc5NWUwMyBsZWdhY3ktdHJ1bmsKKzM3NTM3IGQ4ZTc0YTBiNDY3NzVkYjY4NGE4OTNlYTg3YTY1ZmJlM2VkM2NjMGMgbGVnYWN5LXRydW5rCiszNzUzOCBkOTlkZTY1ZjU0MjU4MjdiYjVjYjc2OTE5MmY2M2Q4NTI3YjYwNmQxIGxlZ2FjeS10cnVuaworMzc1MzkgYmE4ZTE4NTRhODRiYWFjZjk0ZWExNjg2MmZiYTEzZWQ0ZTA5ZGJjZSByZWxlYXNlMjMtbWFpbnQKKzM3NTQwIDVhZTNhMWM4MGUzZmU3NTg5Y2NhMTBmYTkyOGIzOWVlMTY3ODIzODQgbGVnYWN5LXRydW5rCiszNzU0MSAyNjJlMWNmNDFkMzRiYzc1ZjljZTg3YmY0YzRjODZjNjA0ODI0NjBlIGxlZ2FjeS10cnVuaworMzc1NDIgYjMxYTUxMjA2Nzc0ODU4MjNjNmU0MTRkN2EwOTFkNjRjYWI4MjIyZiBsZWdhY3ktdHJ1bmsKKzM3NTQzIDU1ZmJhODg5MzBiYzdiODE2NjlkMDE1Mjk0MmExMzEwZTQwNGNkYjggbGVnYWN5LXRydW5rCiszNzU0NCBiY2FmYjY4YWQ5ODU4ODAwYTUyNjI3ZmM5MTBlNjM2NTJjNzZlMTQ4IGxlZ2FjeS10cnVuaworMzc1NDUgNDc4NGJmYzk5YTQxYmUwMzUwN2RmZmY5OGJmYjJiNGI1YWNkODkxZCBsZWdhY3ktdHJ1bmsKKzM3NTQ2IDM3YzY1YTZiMmVmN2Y0ODEyZGUxMTFmN2I0Y2U3ODkxYjhhOWM5NjAgbGVnYWN5LXRydW5rCiszNzU0NyBmZGEzNmFmMjI2ZmIyYmQ5NDdmODE2MDE3Y2U1ODFhNjUyNzNjYTYxIGxlZ2FjeS10cnVuaworMzc1NDggM2U2ZjU2ZTgxMDRhMmJkYzNkYTJjNjEzZjdkMmRmZTUzZDEwM2Q5OSBsZWdhY3ktdHJ1bmsKKzM3NTQ5IDlhMzg2MjVmYTJiMDhkNDZlNTRhYzdmNjM5NjQ5Y2YxMmEwMzU4NzggbGVnYWN5LXRydW5rCiszNzU1MCAxNzAxZGFlNjQ3NGUxNDgyZjA2NTIxMzkxZTRiMWNiYmNhNWI1NDE3IGxlZ2FjeS10cnVuaworMzc1NTEgNjgzYTJmOGY3NzFkYzcxOGRjNzU3YmIyNDVhOTI5YTRkMzMyNjBmZCBsZWdhY3ktdHJ1bmsKKzM3NTUyIGFmMzAwNDAzZWRiODIwZjRkMTFhYmUyZjYzZDQwMjY4ODA0ZWM1YjUgbGVnYWN5LXRydW5rCiszNzU1MyBhNWM4OGYyZTg2YTNmNDY3ZjczZGNmOWMzZTZlMjM4YmNkNDk5NTU0IGxlZ2FjeS10cnVuaworMzc1NTQgMzYxN2QxZWUyNzk3ZmJlNjJlNGZiODZjMjMzYzNmZTU3OGYxZWMzYiBsZWdhY3ktdHJ1bmsKKzM3NTU1IGQ4ZmZmNzA2YTljMjVjZWY4MTQ0M2YyMmNlZmQ3M2NmZTVkMjViMDUgbGVnYWN5LXRydW5rCiszNzU1NiBiYTliY2YyMTQxYTIzMjliNTc3ODMzMDI3ZDM0OTk3YzRkMWU0MDhkIHJlbGVhc2UyMy1tYWludAorMzc1NTcgOTYyZmEzZTIzMjE1YmU4ZjFiMjg0OTgxMWExMGRjMjg5NzRlMmM0MCBsZWdhY3ktdHJ1bmsKKzM3NTU4IGJhOWZkYzQ0Yzc3ODI1NjZjMzU3NjI0Yzc2ODY5NzI5NzdhZDM4MTcgcmVsZWFzZTIzLW1haW50CiszNzU1OSA5MjRiYjJhYWQ0ZjQ4MWI4YjE0YTAyODllODU1ODY3ZWY1ODUyNDdiIGxlZ2FjeS10cnVuaworMzc1NjAgZGMzYTY3NjdlOTYwODQyN2ZhNzcxMzEyMDZkOTlkZTJlY2I3NjY4ZSBsZWdhY3ktdHJ1bmsKKzM3NTYxIGFhYzRjYzY2MThiNTRiYjhlYmNiNjcwNmU2NTI0Y2RmNmJjMTE5ZTEgbGVnYWN5LXRydW5rCiszNzU2MiAwOTBmZmNiODNmMGFhZTQ2ZGRiMWJkY2JlM2QwYWQ3N2ZhMWQ2YWU4IGxlZ2FjeS10cnVuaworMzc1NjMgMGMyNmRiMzgxNjczZTI0MDU3MzJmYWViMzBhMDU0MGFiMDg1YzJkYiBsZWdhY3ktdHJ1bmsKKzM3NTY0IDY2MzI3NDE5ZWIwMDQ0YmZkYzUzNDg2ZDNiNDI1OGQyNmZhYTM3ODIgcmVsZWFzZTIzLW1haW50CiszNzU2NSAwOGI3Njc0NzA2NjNlMzU2OTA4MjMzNDU4MTFhNjdmYjUzMDg2NmQ1IGxlZ2FjeS10cnVuaworMzc1NjYgMzI3MWVhNjBiODJkYzMyMWNkYjA3YWQ2ZTVkMTBhYTVkYjYxNzQyMCByZWxlYXNlMjMtbWFpbnQKKzM3NTY3IDU0ZTY1MjdmMzE1MDg5ODEwYzY2OWE0MTFhMWVhM2I0NDczYjQ5ZWEgcmVsZWFzZTIzLW1haW50CiszNzU2OCAyOTViZDhjNTVhNzg4YzMwM2YxN2ZiYmVlYmI5ZGY1OWEwOTI5NzQxIGxlZ2FjeS10cnVuaworMzc1NjkgODkxMDQyYzk0YWVkMDFmNDRmZWIxMjI3MjUwYzEzNzk2YjY3MjFjNSBsZWdhY3ktdHJ1bmsKKzM3NTcwIDQ5ODFiYTU0ZjQzZDgxODEyMTYyODMzOTQwZTg5ZmM1NzdhYjE3NmYgbGVnYWN5LXRydW5rCiszNzU3MSA3NDJmZGFjM2Q1YWUyZmY0MzVlYjBkMWUyNWRiZWMzNzAxMTdlN2Y4IGxlZ2FjeS10cnVuaworMzc1NzIgNDAxM2YwYTUzODM1MTBmODEyNDdjMmI0ZWJmZDE5YWI3OWY2MjBmYyBsZWdhY3ktdHJ1bmsKKzM3NTczIGU3YzdiM2FmNjE2NDY4YTMwMmM3ZjZjYmMxYjU1OWQ3NThjN2QzY2UgbGVnYWN5LXRydW5rCiszNzU3NCA0NjE0NDRkZTdiMWZkMGExMzJjMDU0N2MwNTcwZmZiZTQ5NmVlNTg4IGxlZ2FjeS10cnVuaworMzc1NzUgNjY0YjE4YWE2ZmMxMjRiMjU1ZjBiMDk1NjA5YzlhODY5MWRlMWMxZCBsZWdhY3ktdHJ1bmsKKzM3NTc2IGJhYTI2NTNmN2E3NmQ5NGI4Mzg5MDE0MmM4NGFhMjUxOTFmNTUzMzkgbGVnYWN5LXRydW5rCiszNzU3NyA1MTdlNGVjMGRmODljYzUyOTljYzU2NGViODdkZTZhMDgyNDQ0MjVmIGxlZ2FjeS10cnVuaworMzc1NzggNjM1ZGQ4YTllYmQ5M2MxMjExOGJhMTBhM2ZhNzhjMzcyNmM0YWFkZSBsZWdhY3ktdHJ1bmsKKzM3NTc5IGE0NmI3NmViOTA1M2M4M2QzZjg3YTI4MmZjZDhjMmU3MzUxOGYwYjIgbGVnYWN5LXRydW5rCiszNzU4MCBjNTUyNDQ2YjdiYjJmNGI5ZWYzN2I5ODJiZDE3NjhjMGVjM2RiMjAxIGxlZ2FjeS10cnVuaworMzc1ODEgZjhjYjhmMGFjOGYxM2EzNTM3OTM2NGNlNzIxMmNiYmQwYjY3ZDZhYyBsZWdhY3ktdHJ1bmsKKzM3NTgyIGU2ZjFhZTEzYmU4NGRmMmY2ZDczYmUyNmUyZGIwMDUwNjIwM2EwY2EgbGVnYWN5LXRydW5rCiszNzU4MyBmMjM0YmUxNzI4MDAwZTljZTIzNjRiYjE3MTBkMzFjMDRiMmY3M2E3IGxlZ2FjeS10cnVuaworMzc1ODQgYzJhZTQ4MmZmNDJkNjNkZWJiNGYyOTMwNWU0NGU3ZWM3ZmY4ZGRkYyBsZWdhY3ktdHJ1bmsKKzM3NTg1IDJjNzliNTBhZmJhYjVlM2Q4MzUwZjFiMTJkZTc2ZGY1YmMxNjIxYmYgbGVnYWN5LXRydW5rCiszNzU4NiA3NGE1N2U2Njg0ZjM5MWNkMzM2OGY5MGU0NWRjM2UzMzNkZDNjZjI4IGxlZ2FjeS10cnVuaworMzc1ODcgNzY2NDE4MjRjZjA1MzU3YmZiNzRjYzIxMDY3ZDE0ZGQ3OGUxY2EyNSBsZWdhY3ktdHJ1bmsKKzM3NTg4IGM3ZmUyMjc3ZDE3MWQ0ZmE4YTViNzBkYWMyM2U2ZGIzZWQyY2JiNjkgbGVnYWN5LXRydW5rCiszNzU4OSBjOWIxZjI2OTRlOThhYWZkZjkzYTRjMjlhMDc0OTFkMzQxNmFlZDQ2IGxlZ2FjeS10cnVuaworMzc1OTAgYWNjMTkxYjcxNGI5OTczNTdlOWMzODRkMTlkNTJmY2VlMzk0MjRhZiBsZWdhY3ktdHJ1bmsKKzM3NTkxIDAyMzZiNjUzMGM0NjMxYzNlMGQzMzUzMWE0MDkwOGE2YjVhYjE1ZDcgbGVnYWN5LXRydW5rCiszNzU5MiBhMDFiZTM1MGVkNjE1ODFiNDI3M2I2MzIwYTYyZjJkZDRlMGZhZjE3IGxlZ2FjeS10cnVuaworMzc1OTMgMGQ2ZDU2YjIxNjRiN2NlOGM5MDBiMjgyNzU0NzY0ZWZhMGU3OThlMCBsZWdhY3ktdHJ1bmsKKzM3NTk0IDQ0Y2RhYzliZjc4NTllYjc3Y2U2YWQ2ODM0ZDIwM2QzZDVmNGY1MWIgbGVnYWN5LXRydW5rCiszNzU5NSA1M2M0NjhkMDk1NWJhYTA4ZDFlOWRiZWViZjZjM2EzZTRlMzM3MzFlIGxlZ2FjeS10cnVuaworMzc1OTYgZDk0MDRkYjI5YmM2NTc3YmQ0MDlhOTk1YjNlNzcwZDllNjdkZDExMCBsZWdhY3ktdHJ1bmsKKzM3NTk3IDM5YTEzZTM5ZDI0ZWI5ZGUwZjBiZjIwNzljMTQxZTkzOTgzM2IyYTQgbGVnYWN5LXRydW5rCiszNzU5OCBlYjNkNjAzMGQ5NTAxMDcwZGM5MjcyMGI4MmU1Y2IzZTRkODFmNGIyIGxlZ2FjeS10cnVuaworMzc1OTkgMTM4M2M0NjkyYWY3NGRjYTc4Nzg1NmVkMWY1OWE1OTdmYzIzZTI0MSBsZWdhY3ktdHJ1bmsKKzM3NjAwIGE4MDQyODBlMzRmOTBmZTIxNGUwN2FkNmM0MDMyNzVmNDUwZDc5NDggbGVnYWN5LXRydW5rCiszNzYwMSBlNGY3ZDNiMGM1ZDRmZTQ3ZmRiMjdiY2YzN2E4N2UwYWNmNTM0NjIyIGxlZ2FjeS10cnVuaworMzc2MDIgYTRmNzQ3ZTcyMTM4MWNmN2RmZTc2MzRmMWE5MTRkMTU3ZTE2MDBhOCBsZWdhY3ktdHJ1bmsKKzM3NjAzIDc2MzU1MzYzMTAxYjBhMTE1NTAxODc1YTA0Nzk4NDQwNDU1MDVjOTMgbGVnYWN5LXRydW5rCiszNzYwNCA0NGUxNzZjY2EzMzcyMWFkOGQ4M2Y1MDczYmYxNzQ0YmZhODVhNjYwIGxlZ2FjeS10cnVuaworMzc2MDUgZDFmMGM3MDc5YjgyODc5YTU1OTM5NzY2ZThiYTVhOWMwNzY1YmM4NyBsZWdhY3ktdHJ1bmsKKzM3NjA2IDE3OWU0MmVhMmU5Yzk3MTk4ODE3MTI4NjE2ODA5MzMzY2M0MDAyNGYgbGVnYWN5LXRydW5rCiszNzYwNyA0NjgzOTgzZTg0YjM1NWQxYWUwNDM5MjM5NWRkMmQxMDZjZDUzNzY2IGxlZ2FjeS10cnVuaworMzc2MDggOTljYWJhODE0NTY1NGNhMzk1YzM0ZjU3ZDUzZmIyMmEwY2EyMTg4MiBsZWdhY3ktdHJ1bmsKKzM3NjA5IDc0Y2ViNmZjYjQzMjdkZDhjODVlMTAwZDg4OGIzNmQ1ZjlkZWZiMzUgbGVnYWN5LXRydW5rCiszNzYxMCBhMjdiMDI3MTcxMWJkMDViYjAzNWVlZjJiYjk0MThlNTcwN2ViZGY4IGxlZ2FjeS10cnVuaworMzc2MTEgYjBlYzRjOWQ1OTViMDBiMjY2YmQxYTkzOWU3Y2JmNzIwMGQ5Yjg5MyBsZWdhY3ktdHJ1bmsKKzM3NjEyIGI4NmM3YzQ3NzRlZGZkODMyZWI2OGZjOTQ5ODdlMThjZGIxODFkOGEgbGVnYWN5LXRydW5rCiszNzYxMyAyY2MxMDdjOTY0NmUyYmRiMDNmMmQwYTI1YmQ5NzlmNmU0ZWUzNDVhIGxlZ2FjeS10cnVuaworMzc2MTQgZWM5OTNiNzI2NjA1NzI4OGRlOTUzYjc5NDkyNjM4MDE0NzE2NjFjNiBsZWdhY3ktdHJ1bmsKKzM3NjE1IGFhMmQ2MDYwNDk1YTA3YmI0ZjM3YWRhOGVhYzk3NDhjMTM0MTBmNTkgbGVnYWN5LXRydW5rCiszNzYxNiBkZGMyZDZlNTQ3YzE1Mzk0ZjgzZGVlNjA0YmJmYTE1ZGE0NmM5NjgwIGxlZ2FjeS10cnVuaworMzc2MTcgOTJlMDViNjM0OTk3ODY5MDZiNDFkNWE1M2EyN2Y1ZjdiZTNhNTkyZSBsZWdhY3ktdHJ1bmsKKzM3NjE4IDEwYjI1NDE0NjI4Y2RiODJjODBkMjYwZjE5M2U2M2ExNzMxNDM4OTAgbGVnYWN5LXRydW5rCiszNzYxOSA0ZjhkYjU1Y2UxMjRhMmVhN2Y4YmMxMDM0MjU3ODc4MzFjMWY5NDExIGxlZ2FjeS10cnVuaworMzc2MjAgMTk3Nzc1MmNmODA3YmM3ODlkOTAwYjkzZmMxNjgyZTViYjEzZWExYiBsZWdhY3ktdHJ1bmsKKzM3NjIxIDhhNTA2MWJjZDQxNzlmODI0ODAwODVjMDE2ZDQ2ZjRlYTRiNWY4ZGIgbGVnYWN5LXRydW5rCiszNzYyMiBmYjI3M2E4M2M3NWZkOTI1NzE5Nzg5MDVhZjU4YzgwMjRlZDQ5YTE1IGxlZ2FjeS10cnVuaworMzc2MjMgMTFkMDFmYzY1MGRjMDUyYWZkNDljNzQ0Yzk1MGU5MzU1ZTk3ZWE5NiBsZWdhY3ktdHJ1bmsKKzM3NjI0IDQ2MjE3ZDA1YTQ3NjZhNDYxYmY0MmM4ODBhYThhZDEwNzBhYzIzMjEgbGVnYWN5LXRydW5rCiszNzYyNSBkMTIyODEyN2QyOTQyNWY2NDRlYzc5MTQzYjIyNjA2YmJlZmFjMmE4IGxlZ2FjeS10cnVuaworMzc2MjYgMjZmZDAwYjM2OGYxZDQ1MmU3NGI2NDFlNjZjYTE2MmQ1ODQ0OTA4ZSBsZWdhY3ktdHJ1bmsKKzM3NjI3IDE2NmJkMzM5ZDNiZmQ2MTljNGQ3MDU1YWQ4NjEyNDAxZWY4MzgwYTYgbGVnYWN5LXRydW5rCiszNzYyOCAyNmJlZGY2M2U0YTg5YzUzZjhmOGZiMzVlZTE5NmQ0YmM5NDA5ZmRjIGxlZ2FjeS10cnVuaworMzc2MjkgYjMwOGUxNWJkN2ZiYTkyNWYxNzc3MzExNmY5ODVkYjJjMGNiMTI5NyBsZWdhY3ktdHJ1bmsKKzM3NjMwIDE5MDdhZDU0ZDM1MWNlNzdmYTgyMmE1ZTNhYTMyMDcxYmY3Y2IxZGYgbGVnYWN5LXRydW5rCiszNzYzMSA1NTQ4MmU5ZGViNjYzODM2NGMyMDMyYjBiMWVlYzg4MTY0ZDFhYWFjIGxlZ2FjeS10cnVuaworMzc2MzEgNTNjZmYwNDI4Mzg1NWFkZjg4ZWQwYzBmZDM2OTg4MjdjYTg0MzYzNyBsZWdhY3ktdHJ1bmsKKzM3NjMzIDcyYzUxMzFkNGM0YWYwZGIzN2FiNDE1Mjg3OGI1OGRlMDAwZWI2MWQgbGVnYWN5LXRydW5rCiszNzYzNCBjNmFhYzAzNDc0YzVlMjM4Mjg2YWNkYjQyZjE0ZGVkYzdkZWQxZjk0IGxlZ2FjeS10cnVuaworMzc2MzUgODhiZjQ4YzA2OWY5YzM2MjQ5NWJkNGY2YTY1ZDI2M2ZlYzZiMjA4NSBsZWdhY3ktdHJ1bmsKKzM3NjM2IGJhNzVmZGE5MjIwYzJhMTU0ZDY2NTJlMzAwYmY1ZmRlY2E3MmQ3ZWMgbGVnYWN5LXRydW5rCiszNzYzNyBhYjA5ZGFhYzU2OTFiNzhjNDliYjQ0NzI1MmUyMjBkZTY2NTczMmRiIGxlZ2FjeS10cnVuaworMzc2MzggZmJhY2JiMjYyNzg5NDk4MTllMGI2OGM1MDUwYzBiM2UwYTlhMzNkOCBsZWdhY3ktdHJ1bmsKKzM3NjM5IGUxNWMxNWE0ZmJlODgxNTExMTlhZTMzYmQxNWM0MzM0YjNkNDY5Y2MgbGVnYWN5LXRydW5rCiszNzY0MCBjNWQ5NTFhMGUwYzNlOTBhNjI1ZTU3MmU2OGI0ZDEzYTk2OTliMDg0IGxlZ2FjeS10cnVuaworMzc2NDEgZTRiN2M5MjNlZDVmMjczN2Y2NjE1NmE4OGY2NjAxZTE0YzY1NTdiNSBsZWdhY3ktdHJ1bmsKKzM3NjQyIGYxYzA0OGU3NDNlMmQ4MDYwYWE4OTQwZjMyYTY4YTExYWRiOGMxODQgcmVsZWFzZTIzLW1haW50CiszNzY0MyBjNjZlNmM5ZmZjMmRiZDNkMDE5YTc0ZDNiMWJmNjhhMDgxMTU0ZmFiIGxlZ2FjeS10cnVuaworMzc2NDQgNDY4OGQyYTI3M2Q5MGI4NmZiY2MzMDIzZTc3OGVhOWYzNjFhMGVhNSBsZWdhY3ktdHJ1bmsKKzM3NjQ1IGQ5ZDNiNDc1Y2ViMjU4NjYzYjEzMTIxZDc0NzllN2VlYWQ1NjI2MzAgcmVsZWFzZTIzLW1haW50CiszNzY0NiBhNTJkZTkxMWIyODQ4MTQ3MTgyMTY5Y2JmYzMyMmM2ZjUyZjkwMTAwIGxlZ2FjeS10cnVuaworMzc2NDcgM2ZkZDk2ZjBjZTg2NmM1YWY2OTIxZjM2ODQ4MTU4ZmFmYzBiZjNhNiBsZWdhY3ktdHJ1bmsKKzM3NjQ4IGYxNzVjOTgzODM3MzZkNTg3ZjQzNjE3NzYwYjYxMjU0YTljM2E1NGMgbGVnYWN5LXRydW5rCiszNzY0OSA4MTdjMjQxYmZmZmY4ZGY0ZjExODhmYmE2MzJkNGNmOGIyOWQxNTY2IGxlZ2FjeS10cnVuaworMzc2NTAgYmQxODg4ZTkyOTlmNzM1Y2U3MTE5NjQ5Yzk4YzdhZDRmOWZjZjFiNyBsZWdhY3ktdHJ1bmsKKzM3NjUxIGI4Nzc4Y2Y3ZDBlMzczODcxZmVmMDM5OTcyNjQ5MjczYTc3ODc4NDAgcmVsZWFzZTIzLW1haW50CiszNzY1MiAzMzQyYmMyMzAwYzNhYzJlNmNjYTVlN2Y3MmI3YTY1MDc5MmMwYjU2IGxlZ2FjeS10cnVuaworMzc2NTMgOGQ4YjM5MjM0ZGU5ZTZmMGJlOTc4MjcyY2ZmNTIzYWE0MTdmNmM3YiBsZWdhY3ktdHJ1bmsKKzM3NjU0IDgzYTAxOTEyODk5ZjYwNDYwMGFkYWU3YWZmMTEzNjI4Y2I4OGI2MjggbGVnYWN5LXRydW5rCiszNzY1NSA2ZGZmZGMzM2ZjNmM1YzAxZjAxY2M5NmVmN2E1YWJhODM0NjBiNzI0IGxlZ2FjeS10cnVuaworMzc2NTYgZDA2M2U0ZGU1Njc2MDBlYTZjN2I3ZWFkODhiMzdiZjEzZDQ4ODg2MSByZWxlYXNlMjMtbWFpbnQKKzM3NjU3IDIyM2Q4MjI2MDQ1MmFhYzI1Yzg1ODgwNzEyMWE0MWVlMGQ0NTA0MzAgbGVnYWN5LXRydW5rCiszNzY1OCBhMjI0M2Q2NmQ0MGJkYTFlMzE5ODVjNjkzY2Q4YzlmNDAwMDY1ZjIyIGxlZ2FjeS10cnVuaworMzc2NTkgNjljOTY4ODFhYWFkYjQ4NDgyZDAyOTQ5NTljM2ZhNDU4MmM1MGQ5ZCByZWxlYXNlMjMtbWFpbnQKKzM3NjYwIDY4MTliYTAyMzY2NzZmZTAzYzYyYjAxMDVlOGUxZWFmZWNiNmY0ZWIgbGVnYWN5LXRydW5rCiszNzY2MSBhZWI2ZmYzMDg4NDhjODc1ZDVlNGEzYjUyMzMwZDcwMjZiMzNlMmU1IGxlZ2FjeS10cnVuaworMzc2NjIgNGZlZGM1MjlhZDMyZGI5NTcwNDRjMWZlODFjNjVhMjMzNTQ3NDQ1NiByZWxlYXNlMjMtbWFpbnQKKzM3NjYzIGIxYTllYTZlOGFlMjBhMzNhYzBlNmNjZWMzYzA0N2YyOGY3Njc4YjkgbGVnYWN5LXRydW5rCiszNzY2NCAxOTlkYWNlMDI0YmEwNDRkNDUwZGRmMzhiZWY2ZDc5YWZmNTE3MmIzIGxlZ2FjeS10cnVuaworMzc2NjUgZDQ4NWU3OGE0M2Q2NTg0YmJiOTI4ZTM2MTY0ZDQyZDRlZWZlOWJjZSByZWxlYXNlMjMtbWFpbnQKKzM3NjY2IDVjODYyNDk2YTlmNmFhODMxZGE5Zjg3ZTgyYTk2MTBhZmRiNTkxNDggbGVnYWN5LXRydW5rCiszNzY2NyBkMmU5NTk0MDQ4MjY5MmI4ZThiYTYxNzIzYzI3YWY3ODU4ZTI0MzRlIGxlZ2FjeS10cnVuaworMzc2NjggZTljYmUwYWRiMjhhZTdmYTdhYzIzMTg5YWZlYjhjMmVmMzIzNDEyNyBsZWdhY3ktdHJ1bmsKKzM3NjY5IGE5ZTYwNTE0MDA3NDc3ZjIwY2Y0ODgyNzZkZDE1ODZkMTQyOTNmOGIgbGVnYWN5LXRydW5rCiszNzY3MCBhM2RmZDgwMTUzM2I2MTg0MWVkNzFjOGJhOWE5MTRmYWJjNDdhOTNhIGxlZ2FjeS10cnVuaworMzc2NzEgNDdiMzg0NTE5Nzc1NzU2MDZkZTJkYmRkYTU3NTY1YzEzNWM2OGI3YiBsZWdhY3ktdHJ1bmsKKzM3NjcyIDU5ZTBmZjBjZDNkNGM5MWUyYmZjZDM5ZWE2MGY2ODY1ZWM5MGNhYjQgbGVnYWN5LXRydW5rCiszNzY3MyBkNDQzNTA1ZTdlZWMxOGI5NDY3YjQ5MmRmNmQ1MmJhMjUwZWU1ODRjIGxlZ2FjeS10cnVuaworMzc2NzQgM2ZmMjUyNzE1ZDkzYjA0ZWZlZDZmNTJlYTFhMjg4MzEwYTEyN2NmMiBsZWdhY3ktdHJ1bmsKKzM3Njc1IDFjNjc2ZTg5MWIzZjlhODM3MmExM2Y2ZjMyNjljYTFkMzA2MTVlMmEgcmVsZWFzZTIzLW1haW50CiszNzY3NiBhZDkwODg4YjE3YmMwMjM0NTg5MWUxZWY2ZDJhNmE5ZmE2N2Q4ZGU1IHJlbGVhc2UyMy1tYWludAorMzc2NzcgZjU0ODY4ODU1YjFjY2RhYTJhNzgxNTBiZmZjNmI5N2Q4MGRjYzIwNCBsZWdhY3ktdHJ1bmsKKzM3Njc4IDgyMTQyYTI0ZTg0NWMzM2JkOWNmMDEwNDE5YWVlZmRlMzg2NmFiMGEgbGVnYWN5LXRydW5rCiszNzY3OSAwYWZiMjUzMGU5ODZhYTA2ZGQ2MGZiMzcwMmY0NTc0MjMxNTQyOTI5IGxlZ2FjeS10cnVuaworMzc2ODAgYjBmMGM1N2IxZTA1NTcwMjBiMjJhMTkwMGM1ZDJkMmMwMmUzYmVhMCBsZWdhY3ktdHJ1bmsKKzM3NjgxIGVkMDQxZTBlNDUxZWYxMWNiZTkxODgyZTkwNDc4ZmI3NmYyNWZhMzEgbGVnYWN5LXRydW5rCiszNzY4MiBiM2EzMGUyODQyYjk2NzViZDNlY2EzOWYxYTQ3MDZkNDgyM2RlYThjIHJlbGVhc2UyMy1tYWludAorMzc2ODMgOGQzOGYyZjIxNTFjY2E1YWEyMTk4MDBlYTVjMGUyNmE5NjllODBhOSBsZWdhY3ktdHJ1bmsKKzM3Njg0IDJhMTUzMThjNDAzOGMzMDQ3ZGM5YzFjOGEyYWE0OTNjZTIxZDM2YTIgbGVnYWN5LXRydW5rCiszNzY4NSBmMTQzMjlhNzg5ODE5MTIxNTA1NmUzZjU5ZGU4YzIzYjg4ZGU5YzQyIGxlZ2FjeS10cnVuaworMzc2ODYgYmYxOGNhY2EwNzMwNDM3MTcwNGRkYTI2YTU1M2RmNmYzMWNhYjM4MyBsZWdhY3ktdHJ1bmsKKzM3Njg3IGRiODcxMGYxMzY1MDg4ZWJkMDBmOWJjMmNlMWM2ZWQyNTNhZGQ1YTggbGVnYWN5LXRydW5rCiszNzY4OCAyOWI5NDViYzBhMTdmMWM5YTliMWE2ZGQ4Y2I2MjFhZjZlYmJkMTlhIGxlZ2FjeS10cnVuaworMzc2ODkgYWVkMjUyNmRhMWZjN2VkOTM0M2Q2NGM5YzgzYTZlMzRiOTg2ODcyMyBsZWdhY3ktdHJ1bmsKKzM3NjkwIDI4ZWYwYTNmNTdmNmNkNzg0OGE3NmZiMmZhOTYzMWI2ZDM0MDYyY2MgbGVnYWN5LXRydW5rCiszNzY5MSBkOTM4YjllZDMyZmZlY2FlOGM0MDQ5NDVjM2NlNjJiODliYjRhZDliIGxlZ2FjeS10cnVuaworMzc2OTIgMTdkODY2MWU3ZDEzYWFlNDZjYzQwYzVjOTE4NDI2NDE1MzgyOGI2NSBsZWdhY3ktdHJ1bmsKKzM3NjkzIDZjNDE2OTUyODRmNmZmN2M5NDk3NzRmNTYxNTRkMTRkYmYwYzI0N2UgbGVnYWN5LXRydW5rCiszNzY5NCAzMTcxMDFjZmZiNzI5MzQ1NTI3YmRmYjM4MTNiMGRkM2UyNmJkMGU5IGxlZ2FjeS10cnVuaworMzc2OTUgOWZmYzM0NDg5MWE2MjZlZGFhMjYwMWZjYWU0MDU5YjY0MWIzMWYxOSBsZWdhY3ktdHJ1bmsKKzM3Njk2IDYyN2Y3N2UzY2ViNjUxYmExZDBhYWQ2MGM0ZjU2Yjk4Y2I2OTA1NTggcmVsZWFzZTIzLW1haW50CiszNzY5NyAxMDUxMmNlYmEzMGM1NWNlNjRkNWEyNmE3ZDkwZjllMGRiNjQ4MTAyIGxlZ2FjeS10cnVuaworMzc2OTggZWYxNDllYTU5NGE0YzBmNGE4MTM4ZmQ0Yjk5ZjhhN2ZmMTE4MzZjYSBsZWdhY3ktdHJ1bmsKKzM3Njk5IDk5MWQzNDkwZjY5OGViMmFmOGQzODA1NjI1MzJkNzI3YTUxZTI5NmUgbGVnYWN5LXRydW5rCiszNzcwMCBkYzhlY2Y3MjQ0ODhjMjZmNzVkOTAyM2JmNGFlMjY1NTEzNmY0NWNhIGxlZ2FjeS10cnVuaworMzc3MDEgYmQ1NTgyMTFiYTU1MmM3MTQ5YTgzNmM4ZDZmMmJiOTg4Y2NhZWIwMCBsZWdhY3ktdHJ1bmsKKzM3NzAyIGZkY2UzZDM5YmVjMTRkNGQ0NzA0MDE1NTJlN2FjNjY3NjYwY2JmMmMgbGVnYWN5LXRydW5rCiszNzcwMyA0ZGQ5N2MzN2MyY2MyYzMzNzhmMmM5MTZhMzdjZDFmZWE3YWQ4OTljIGxlZ2FjeS10cnVuaworMzc3MDQgNmZjMTAzMDZiZjMxMmJhYzk5M2M3NTIxZjY1MzcxYzkyYzVjMTA3MiBsZWdhY3ktdHJ1bmsKKzM3NzA1IDEwNWJmZTE3NjliNzk2YzQyN2Y1ZTJmZGM2YTMwMDM3Y2RmNzBlNGYgbGVnYWN5LXRydW5rCiszNzcwNiA5OTNiMTI4ZDRlMjk0YTUxNzA5MzU0ZmJiMDBmYjRkMmQxMzhmMTJiIGxlZ2FjeS10cnVuaworMzc3MDcgYWM0ZmE5NDJmOTJlNzhhNmNiZGRkNmE4ZDdkYmZkODRkNzNlMDEyOCBsZWdhY3ktdHJ1bmsKKzM3NzA4IGVkMTM5MzcwNzlkZjE3Y2FjMjZjOTcwNjcyYmE0MmVjYTIzYWYzZDAgbGVnYWN5LXRydW5rCiszNzcwOSAwMzJmMzQyZWZjZDI0ZjI0YzY2Y2U2YmZiMGVjMTM4MDc3YTQ1ZWRhIGxlZ2FjeS10cnVuaworMzc3MTAgNzliY2FkMTRlOTZhYWE3NzU4OTZkNGZlNDQ4NDc1MzNiZDhlOTI3NiBsZWdhY3ktdHJ1bmsKKzM3NzExIDU1MTA5OTVlYTI2ZmI1ZDk0OGEwNGRmOTYxOWY3MDVjN2RkZWNiNGQgbGVnYWN5LXRydW5rCiszNzcxMiAzMzk4YzVjZThiN2EwOTYwNzRlNGYxYjkxODAwNGY4YTA4ZTY1MzI4IGxlZ2FjeS10cnVuaworMzc3MTMgZDgzOTk4YTcyMWEwYTJlZjFlNDM3ZjNkNmQ4YTA0OTFiMWFhNzIzMyBsZWdhY3ktdHJ1bmsKKzM3NzE0IDI2MjU1MzdhNmRmYWRkNTM2MDhjYzc4MzI5OGZmOWM1MzhjNDljZTkgbGVnYWN5LXRydW5rCiszNzcxNSAyZWUwMzAxYjQ4M2NlMmE4NGY3ZTM5Yjk4ZGJhZGM3ZmIyYmEzZWY5IGxlZ2FjeS10cnVuaworMzc3MTYgOTQzODYyYjJiNGRmZTU2ZTU4ZGM1MmU2ZWIwZDA4NTQxZDlkN2EwYyBsZWdhY3ktdHJ1bmsKKzM3NzE3IGQ0MWFjMTFlOWM2MDRhNjU5NmMzY2YxNGUzZGI4MzM0M2U4ZDExOTIgbGVnYWN5LXRydW5rCiszNzcxOCBlZWMzMTdlZTVjMzViOGY4NzIxMjVhMzFmNTBiNTRjMTU4ZjJiOWQ5IHJlbGVhc2UyMy1tYWludAorMzc3MTkgMWNkMTlkYWFhOWQ0MmZhYjcyMjMyMGE4ZDlhZmNjMzJlOTI5YjBiNCBsZWdhY3ktdHJ1bmsKKzM3NzIwIDYwYzYwZGM3NWM3NzI2NGI5ZTJjMmY1ZjRiZDZjNjFmZTNjZmIxYTggbGVnYWN5LXRydW5rCiszNzcyMSA2ZGEwNzg3M2EwZWUzNzU0OTVkYjliODVmZDI5N2JhZGIzYTE4MGNhIGxlZ2FjeS10cnVuaworMzc3MjIgMGRkYWU4YjBmYjE5YTM4MzIzYjQyYmM1Yjg0NjNjZGYxOWFkOGRiMyBsZWdhY3ktdHJ1bmsKKzM3NzIzIDMwNzMyNDM0MTA3YjZjZmU2ZDkyOGI0NDAwZDMyMmU3MjA3Y2FiODAgbGVnYWN5LXRydW5rCiszNzcyNCAzNDY3Mjg4MDg5YTFlMjU4NjNlNWQzZDc0NDFhNTZmNDNjNGU1M2IyIGxlZ2FjeS10cnVuaworMzc3MjUgNGEzZWFhMWFhM2FmZDJmNWI5NGNlMmVkMGIyZTlkYjdkYWMyMGVjNyBsZWdhY3ktdHJ1bmsKKzM3NzI2IGZhY2I1YTJmNGI1M2U5N2QzMTJkYjMxOTA5OWViNzlkNDkxNTEzYWMgbGVnYWN5LXRydW5rCiszNzcyNyBiNTg1YmNjZmIyNTA1NDNhNjZiYjhlZjRlNDVkMTBhMzM0MTA3ZWRkIHJlbGVhc2UyMy1tYWludAorMzc3MjggNmI2MWFmMDgzNDkzMzEzYjUzOGU1MTU0ZDI3NmYxZjU4NzY3NTU3YiBsZWdhY3ktdHJ1bmsKKzM3NzI5IGYxOTY3MTZlYTBkYjQ1ZDYzNzY3ZjJkM2I3N2VjYTQxZmMxMzgyNGUgbGVnYWN5LXRydW5rCiszNzczMCAyNjMyZjQzNDA5ZjQ5NjVhY2ViNzEyNTMwOTk1ZTRkNDQyMGNlZWNiIGxlZ2FjeS10cnVuaworMzc3MzEgMDdkOTRhMTYyY2Y4OTUxZWZhZGY2ODM1MTQ4YjM2NzM4ZTc3MjBmZiBsZWdhY3ktdHJ1bmsKKzM3NzMyIDMwOGU4ZWYyZDNlZGY1ZjU1MWJmYjEyMTk4YTI1YjUwNWI5ZTNmN2UgcmVsZWFzZTIzLW1haW50CiszNzczMyAyMjNkMjBhZmM4YjVlMWViOGM5M2ZhNmExZGExOTk4YzM0MThmY2U5IGxlZ2FjeS10cnVuaworMzc3MzQgODBjYTFhOGIyMzIxNjJlMDlkN2Q1MjY2M2E1MjE2YWVkYjUyMTdhYiBsZWdhY3ktdHJ1bmsKKzM3NzM1IDVhZmE1Mjc3ZmNkOTc5M2FlMGJmMWM4YzE2OWY3YWQzMDYwZmNmNWIgbGVnYWN5LXRydW5rCiszNzczNiAxODBkYzgyOWVmZmY4MTc1MWVmYjgxMmNmMGRhMDRiYWZiZjVmMDhiIGxlZ2FjeS10cnVuaworMzc3MzcgYmYyZDAzZGZjMzhlMjhmMWM0YzQ5MWY5NzkzMGIyMmI5MjlkNTMzNyByZWxlYXNlMjMtbWFpbnQKKzM3NzM4IDBkYzNmOTcwNTU3NzA3M2FjMDUwZDllMGUxMDEzOWZjMzQ3NDQ3NTYgbGVnYWN5LXRydW5rCiszNzczOSAyNGZjM2VhYTE5ZTBiNWRkOWFjZjc5ZGQ5ZDQ4N2NkMmJmMGYxN2E4IGxlZ2FjeS10cnVuaworMzc3NDAgNjMzY2FkZWJmNjhkNGRkOGNmMGM5MTlmZjUyMTQzNzZiZWJjOGM0OSBsZWdhY3ktdHJ1bmsKKzM3NzQxIGE4Yzk3OWNjNGZhNjU4ZDgyNmQyMTA0OGZkNzgxYTUyMGIwM2IyNmIgbGVnYWN5LXRydW5rCiszNzc0MiBlZjUwMzBiYzVmNjcxYzRiMDQ4MWM4OGNiYTkxMzE1ODQ5Y2FkYjZlIGxlZ2FjeS10cnVuaworMzc3NDMgNjg3MzYyZmE0NzFjM2MwOTMxNzA1NjZmNTllNDliM2Y2YjNmZGMxMiBsZWdhY3ktdHJ1bmsKKzM3NzQ0IDhhMDljODJlNDI2MTBiMGQ0OTZmZDMxODU3OTRmZDdmYjM0ODU4ZTggbGVnYWN5LXRydW5rCiszNzc0NSBiYzA0MjFiOTY1N2EwMDU4YWE5NTBjYWNlOGMzYjA1ZTc1ODViYWQ1IGxlZ2FjeS10cnVuaworMzc3NDYgYTZmOTdlMGU2MzE4OTY0YzI2YzhmYmFlMGQ0MDU2YzEzYTUzNWVjMCBsZWdhY3ktdHJ1bmsKKzM3NzQ3IDVlY2EyNDhmNjM5ZTQyZjQwNzJjOWM3ZGY5YWJmOWNkM2Y0ZDNmNzEgcmVsZWFzZTIzLW1haW50CiszNzc0OCBjMTllODExMTIwNTkzMTZhNjgyNDNkNzBkMzhmMDJiMDI3NzVlMzk0IGxlZ2FjeS10cnVuaworMzc3NDkgYTU3NmNmMWFjNmEwNGU3ODJmN2E3MTI3MzMyYjVhYzg4NmYxOGQ2NyByZWxlYXNlMjMtbWFpbnQKKzM3NzUwIDk3Njg2MjRmMDM1ZmEyMzhmZTk1NTNmN2M2MzVjNDAzZTQ1MjUzNTggbGVnYWN5LXRydW5rCiszNzc1MCAwY2IxYmE5MjI0MWJhMjk1NzU1MDU4MjhlZWUyNDFjZDEyNmQ0NjkzIHJlbGVhc2UyMy1tYWludAorMzc3NTEgMGQ2ZGJlYmQ4YjRhMmQwNDMzOThhMjRjMTllMDE2ODVmNzJlOTY0NyBsZWdhY3ktdHJ1bmsKKzM3NzUyIDUzYWEwMTkzNzBkYjUwYTNlMDI5YzU3NDUyMTJiYjUxMDY5ZTE0ZTggbGVnYWN5LXRydW5rCiszNzc1MyBjMzA4YzZiYTAwMmY1YjViMjQ4OTcxNDgwOGI0MzQzZmZhNTg4ZmEwIGxlZ2FjeS10cnVuaworMzc3NTQgZmViNDAxN2NiYWQ0MmE3NDVjMjViMWM3NzNkYzRhNjYxMWU4Nzc2ZSBsZWdhY3ktdHJ1bmsKKzM3NzU1IDc4NmQzYjhiOWJlZWRiYWM0NGNmYjhiNDRmMzVlYTE0ZTFlYTIyMGQgbGVnYWN5LXRydW5rCiszNzc1NSA3ZTM4N2E5ZGNjNzk5NTRhNzc2OTVhZGVmOGI1OTNkYTM1YmUxMjE0IGxlZ2FjeS10cnVuaworMzc3NTcgODVkYjAxNmU4ZGFjNjNlZTk1OWFlZDQ1NWU5MTg2YjNmMDgyZTE1NSBsZWdhY3ktdHJ1bmsKKzM3NzU4IGQ3ODNkNTE3MTgxMTllNDEwNjhjMzg5NmM1YmM5NWU4NmU5YWNjOTAgcmVsZWFzZTIzLW1haW50CiszNzc1OSA3MTBiN2U4ZDJmZjJhNjBiODY1NzNlOTNlYjMwZWIwNjk3YTZlOGUwIGxlZ2FjeS10cnVuaworMzc3NjAgZGZiN2IwN2RjZGVkZDAwOTJhNWJjYWNmNjIwZWQ2YjMxZDJkMmZjZCBsZWdhY3ktdHJ1bmsKKzM3NzYxIGE1MTI5ZDZhYjFjYzZhNTM4NWU5NjIxZjhkN2I3ZjRjMjRiOTBjYzYgbGVnYWN5LXRydW5rCiszNzc2MiBlYjk3OWMzZjE0YmE5NjNkOTU0MmUzMzkwZmFmZTI3OGY5YjA5NjQ5IGxlZ2FjeS10cnVuaworMzc3NjMgNWNjMzgzNDAxMjk0ZmI0YzU0YTNkNzI3NGNmNTUwY2ZlOGUyYzIzOSBsZWdhY3ktdHJ1bmsKKzM3NzY0IGFiNmIxMDhhOGNlYzg5YTIwZGIwNTc3YzQ0NjM5YjBiOGE3MTgwNmQgbGVnYWN5LXRydW5rCiszNzc2NSAyMDg3MzI5NWU5MTYwNzU3NGViNGYxMDY3YzU5OWNiMDhhNWZlNjI5IGxlZ2FjeS10cnVuaworMzc3NjYgMTljMmRjY2ZhZjY1M2Q5Njc3YWRlNzhlMWNiNmFiNWQ5NmQ4NjkyNCByZWxlYXNlMjMtbWFpbnQKKzM3NzY3IDEzMjg5YTc0NDJjMzdmNWI0OWNkNTYyOGM5ODY1MWU5NjY1MTllMmQgcmVsZWFzZTIzLW1haW50CiszNzc2OCAzNjAyNGZhM2JmNGY0ZWE0MTkzZWM2ZDI5YWZmYjc2Y2NkYTlmNmNiIGxlZ2FjeS10cnVuaworMzc3NjkgOGY4Yzg5YmJlNDM5ZDBlMTg0ZTRlZTFkZDhkYWUwN2E1OTFlNDhiMSBsZWdhY3ktdHJ1bmsKKzM3NzcwIDVlZDFkOTdiNDlhMTI0NTlhMGI2YmNhNzBkYmU5MGZjOGY5YmQxMTQgbGVnYWN5LXRydW5rCiszNzc3MSA3ZWQ4OTliNjExODI4MDZjOWIxNmQxNmQwNjcwOWE2MmUyOWY4ZmI5IGxlZ2FjeS10cnVuaworMzc3NzIgMmZhODcyNzg0ZWI2MjAxYjIxZWE3M2JmNmM5MWRhZjBhYjVhNmIyNSBsZWdhY3ktdHJ1bmsKKzM3NzczIGIzZmZhNjRmZjRjNjQ3MDIzYTI1Mzc5MmExNWY1MDJkZDRjMTc3ZGIgbGVnYWN5LXRydW5rCiszNzc3NCA5OWI5MjAxODYzNjcxYjhkNjkwZWUyNjUwZmQxNzUwMDY3OTQwMTA0IGxlZ2FjeS10cnVuaworMzc3NzUgOWE4NjI0MjVhOThhMTQ2Y2FkNjlhMTI5MzU1M2UyOTJmMjg0YjlhOCByZWxlYXNlMjMtbWFpbnQKKzM3Nzc2IDljZTU3NjQwMTlhZWYwNDQ2MTcwZDEzNGExMjEwNTllY2QzYTVjYzEgcmVsZWFzZTIzLW1haW50CiszNzc3NyBlYTZlZjQwZGM5MjIwZjQ3NTdjNGJmMGNlMTUwZDFlZDllNzgwMDJiIGxlZ2FjeS10cnVuaworMzc3NzggN2U4OGMwNDM3ZWNjNjIwZWE3YWUzYjg4MTFmN2I2N2Q0NjdlNzU1MyBsZWdhY3ktdHJ1bmsKKzM3Nzc5IDAyMDE2ZDVhNGRjNmE4MzU2OWRiYmIxODI2YzJlNmJlZjhiZWM1NGMgbGVnYWN5LXRydW5rCiszNzc4MCAyNTcxNGUwZmM4OWRiMTNjZGQ3YmM4ODBiN2MzMWQzNzY4NjMxYTQ2IGxlZ2FjeS10cnVuaworMzc3ODEgOGU5MWE3ZWFhN2I3OTk1YjY1NmUxYTM2YzA3Y2Y1ODBkYzBhNjBlNSBsZWdhY3ktdHJ1bmsKKzM3NzgyIDg2OTg2NTNlMDVmYzEwOTFiNTkxMDIyOGI3MjZkMjM2NGM1ZTcyMGQgbGVnYWN5LXRydW5rCiszNzc4MyBkODJmYTkzMmI0MWJjMDM5MTY1ODExNmJjM2U5N2I4YzUzYTkzY2YzIGxlZ2FjeS10cnVuaworMzc3ODQgN2ZkNGQzNTBmZjgyNjJiOGQ1ODUwOTdkZDc5NTZhMWIwYmFiYmQxNSBsZWdhY3ktdHJ1bmsKKzM3Nzg1IDkxNzNiOWUwYWI3NzM0OTcwNDBlYmJiNzQyMzA3MjkxYzFhMzVjNWEgbGVnYWN5LXRydW5rCiszNzc4NiAwMThkY2M3ZWY4ODdkZWJjN2E3OGZkOWRjYzZmZTkyOWZmOGFmZWVmIGxlZ2FjeS10cnVuaworMzc3ODcgNjYyYzE1NTEwNmU0MjVjMTA1ZjllZjJmOWY4YjBmNjg0OTJjNGZhMSBsZWdhY3ktdHJ1bmsKKzM3Nzg4IGU0NDA0MDQ2ZTU1MmY4NmQ3NWExZGJmMWRlNmY2YWNlZjlhMzlmYWYgbGVnYWN5LXRydW5rCiszNzc4OSA4MzkwZjkzOWRjYzFmM2NiODMwODI4YWY5ZmU0MTM3NTM1ZWRhZTFjIGxlZ2FjeS10cnVuaworMzc3OTAgODI5ZWUzMjVhMThlNTM4N2ZmNzg5MzdiMmMzNGMzODlmOGM3NGZmNCBsZWdhY3ktdHJ1bmsKKzM3NzkxIDBkNGVjYzMxY2ZkODNkYjVkNGFkNmM0NzhmYzE5YWY0NmMyOWU0NzkgbGVnYWN5LXRydW5rCiszNzc5MiA2NjIyM2E5ZWJlNDg2MzU5YzFmNTc3YjhlODZlZGFiZjJlNDM4MTNjIGxlZ2FjeS10cnVuaworMzc3OTMgNGZhMWRmM2IwNjJmNDk3YTIzYzQ4YjQxMTZiNThmNDY5ZDU3YTgyOCBsZWdhY3ktdHJ1bmsKKzM3Nzk0IDU0OGYzOGE1NjY2OWUyMmY3Y2RiMzgzYjExZWFkOGIxY2IxZTIzM2UgbGVnYWN5LXRydW5rCiszNzc5NSA1OWM0M2ZkOGJhNzNmMDc4OGQxYWRmNjcxMzc1MjdlZTlmZTBmZGYyIGxlZ2FjeS10cnVuaworMzc3OTYgZWIyMzE1NDRjMWFkNWU2MDUwYjk3YTAyZGY5NmQ4YjQ2Zjg3MTE3OCBsZWdhY3ktdHJ1bmsKKzM3Nzk3IDBhZTI4YzNhOGQyNDA2ODM4ZjI4NjMzZmMyNDZiOTFiZGIxYzQyNjYgbGVnYWN5LXRydW5rCiszNzc5OCBhYjczMjE3NzMwZGIyMzJlM2UwOWQyNmE3OWY4ODVkOWU0MjliOWY3IGxlZ2FjeS10cnVuaworMzc3OTkgZTRlMjNlM2E3ODQ0YmNlZWYwZWNhM2UxM2Y1Njk4NzlkNDU1YTNhMyBsZWdhY3ktdHJ1bmsKKzM3ODAwIDRkZTM1NGM3OGE3ZWZiYzA0ODViZGQ4YTI1ZGMxODIyZjM4NmRiOGQgbGVnYWN5LXRydW5rCiszNzgwMSA4MWNiZjAzMTU0OWExZjllMGIxMDlkMjMyMjM1ZDY5YzZlMTkzZjlmIGxlZ2FjeS10cnVuaworMzc4MDIgNWZiYmU4MjMzYjc2MzMzNmJhMWVhMWM4ODBlOGNhNjY3MjFiZjRiYyBsZWdhY3ktdHJ1bmsKKzM3ODAzIGRmZDA3YjdiZTQwNzJmNzkzM2YxMWFmMTUxMzlmMjg2ZDUyZWU4NWEgbGVnYWN5LXRydW5rCiszNzgwNCA0NjNhMDNhNWNhMjI4M2U2YWI5MDNlMDMzMDIwYjMzMTkyZTQ0ZTVmIGxlZ2FjeS10cnVuaworMzc4MDUgODJkMDI1NjQxMjNkZmMyYzUxNjgyNjNmMjEzMDM2OTBhN2I1Mjg0MSBsZWdhY3ktdHJ1bmsKKzM3ODA2IDM1OWViYzU2MDkzZTdlYjJmNDQ5NWNmNDJmNzQ0NWIxZDhhYzQ4NTMgbGVnYWN5LXRydW5rCiszNzgwNyA5NjE3OWMwOTZkNjVhZGNhM2E5NjQwMDdjMTkxNTU3MzI3ZmRjMmZlIGxlZ2FjeS10cnVuaworMzc4MDggOTA0NzcxYmVmM2Y0N2ZkYmQxZjkyNzEzYjBkODVlZDhjNWNlMTc4ZSBsZWdhY3ktdHJ1bmsKKzM3ODA5IGFmZWUzYzMzYWU2ZDhjNzU1OTBhODE0ZTIwNzFlODRmNzRiY2Q3ZWIgbGVnYWN5LXRydW5rCiszNzgxMCA4YjJhMmY3YzEzYjgwZGM3NDRhYjg2MTViZTM5NzEyZGM5ZmVkMmZhIGxlZ2FjeS10cnVuaworMzc4MTEgZjJjZTE1YjAyYmEzZmViYmRmZWMyMTgwOTNiYTA2ODYwZDRiNjBjOSBsZWdhY3ktdHJ1bmsKKzM3ODEyIGI5ODE5YjlhMGRhZDU0MjExN2VlZTRlZDY3MDYwMzU0MmRhMzA4ZmYgbGVnYWN5LXRydW5rCiszNzgxMyA2MzNiZTQzYmVkMTdkMDM3YmZjOWEzNmI1ZGUzMDU2M2I1YWNhYTM1IHJlbGVhc2UyMy1tYWludAorMzc4MTQgZWIzNDRlMDNjYzcxMjU2MmVlMTI4MmVmNjBjNDMwNDM5MzRmYTExNyBsZWdhY3ktdHJ1bmsKKzM3ODE1IGI0ZjBhZDgxNTljNzM0ZGY5MWI5MDU5Mjg2MjQ1N2IzNjhmMDYxODkgbGVnYWN5LXRydW5rCiszNzgxNiBlMWYxNDAyNjA5NDc4YWY3ODY0NGI1MzA3MGUyZTUyNDhlZjY3MWVmIGxlZ2FjeS10cnVuaworMzc4MTcgMGZlOGExNmEzMzZhZWE4YTQ2ODFiMGRjMmJhZGQ5N2I2OTA5OTFhOSBsZWdhY3ktdHJ1bmsKKzM3ODE4IDc3YjFjMTUxNzRiNDRkYmYxMjExNzY1ZDc1ZTI2ZmRhNDczMDNlM2IgbGVnYWN5LXRydW5rCiszNzgxOSA5NDJmODc0M2FkZjAyNzhiNzg4MmUwZTdlNzBhNzNkZmM1ZDdiYjBjIGxlZ2FjeS10cnVuaworMzc4MjAgNGY3NDU2ZDAzY2I5ZGU2MjM5ODUwYTY5ZTY5ZDY0ZDVmN2Y4ZTZiZSBsZWdhY3ktdHJ1bmsKKzM3ODIxIGM4NzFlZjk2NjU1YzhkMzhiZGM5NDQzMjlkMDQ5MjUzYmFkMjRmODggbGVnYWN5LXRydW5rCiszNzgyMiBkYzgwNDc2Yjc4MmI3OTBlY2RhNDI3NjA4M2JhZmFiZTBmZWQzOTE1IGxlZ2FjeS10cnVuaworMzc4MjMgY2FkZDNlOGQzNDlmMDlkM2ViYjkyMWU0YjJhMGE3NTRiNjA5MjJjNCBsZWdhY3ktdHJ1bmsKKzM3ODI0IDk1OGRjOGI3YTgyNmExODA1Zjk1YWY1ZmYwZWYzY2MyODAyYjU3NDEgbGVnYWN5LXRydW5rCiszNzgyNSA0Mzc1MDA2ZTVmMDc5ZjcyYjZjOWM5NWIzOGY0NGMzMjIwZDQ3MzRjIGxlZ2FjeS10cnVuaworMzc4MjYgZmJmMzA2NDZjZDEzNjQxZmI3OTliNThmMzNlNDdkYmI1NDY2ZGJjZSBsZWdhY3ktdHJ1bmsKKzM3ODI3IGE5MWU5MmI5ODJhY2FmZjAzOGI3ZDU4MDEwOWNjZTY3MmRmN2ExNDYgbGVnYWN5LXRydW5rCiszNzgyOCA4OTNkNDY1NzY3MzdhYmJhOGNjYzNjZDU2NGIwYzM0ZDA2YWU2ZTdmIGxlZ2FjeS10cnVuaworMzc4MjkgMDZlZTUzYTc2ZjAxNzNhYzA0MGNiOTQyNWEyM2ExMGM1NTBlN2IzOSBsZWdhY3ktdHJ1bmsKKzM3ODMwIDliZDk4M2NmYmU4MWJjODY1YjRmOWRhOTk0Mzc0MmM2YjI1MDMxM2UgbGVnYWN5LXRydW5rCiszNzgzMSAwNzM5ZjM2YWQ1NDQxOWE0MTMxNGVkMGRiZjU0ZTdjODk3NTg5ZTJjIGxlZ2FjeS10cnVuaworMzc4MzIgZmVmZjRlNGYzNDVjYTVlMzM2ZjdiMDBlYzgwOTE3ZDQ1OTQ3ZTI3ZCBsZWdhY3ktdHJ1bmsKKzM3ODMzIDAyMzgwMTMzMjM5NTVlYjRiYTJhNDEyNTA3OWY3ZjQzOWU2ZGEzYjcgbGVnYWN5LXRydW5rCiszNzgzNCAyM2IxMDNhYmI4ZjdmYTdhNzk2ZmUzODk1MDE4NjE3YzFmMDg4ZmI5IHJlbGVhc2UyMy1tYWludAorMzc4MzUgNTNiM2Y1M2Q3YTBkMzJhOWY1NTBiOTkzYjJiNzJmYTA0MDZlNWRkYyBsZWdhY3ktdHJ1bmsKKzM3ODM2IDRjYjdiOTIzNjgxZTQ3YWViNmUzZTUxYmY0NDlkZmU5ZWRiNTcwNDQgbGVnYWN5LXRydW5rCiszNzgzNyBkMjU2MTVlZjVkOGY2MDU5NTE2MDNhNmQ1Y2ZmYjIwOTg5M2IxYjYwIGxlZ2FjeS10cnVuaworMzc4MzggMjIxM2NkYjNjYWU3OTNjYjBkZDZlYWQyOGYyNGQ5OGJhYzgwZjE3YyBsZWdhY3ktdHJ1bmsKKzM3ODM5IDQzOTQ0NjM1MTBmYjJkYjllMDlkOGQ0YjdkNjg0ZDQ1MGUwZWY1NjQgbGVnYWN5LXRydW5rCiszNzg0MCBkY2RhMDZjYjA3OGEzZWY5Njk4N2JlMjRhNTg4NGI4MDQ1MGNkY2VmIGxlZ2FjeS10cnVuaworMzc4NDEgMzNhODQ2Yjc3N2E4OTFhOTNiYzNlYjNjZWFmN2YyZDA5NjM3NWE2MiBsZWdhY3ktdHJ1bmsKKzM3ODQyIGY5MjYxNmY4YzMzYzc0NTExMTk4Mjg4YzA1ZTFhMjkyMmQ2ZDhiZTYgbGVnYWN5LXRydW5rCiszNzg0MyA0MDA1Zjc5ZDI4MWFkMGRmMjlmZDgzMjk4YmQ0MTQ5NzJlZWQxZDIzIGxlZ2FjeS10cnVuaworMzc4NDQgZWMyOTk1NWI4NTQzNWJmODE2MDI4MzFkOTdkOGFiMGFiNDhhZWRmOCBsZWdhY3ktdHJ1bmsKKzM3ODQ1IDQ2OGExMGViYmNkNTAxYTA4NGZmZmY0YzNkMjhiMGJmMmNhMjc5NzEgbGVnYWN5LXRydW5rCiszNzg0NiA2NTI1ZTAyOGFmYjNjOWM3MjZlODQ5ODQ5ZTBmYTYxMmY0OTAwOWMzIGxlZ2FjeS10cnVuaworMzc4NDcgNzAxMGE5OWI1ZTYxMjQxNzZlY2U0MjE2ODhhZWQ5MDg1OTViYmY3MyBsZWdhY3ktdHJ1bmsKKzM3ODQ4IDMyZWQyODYxYzk3ZjE4ZGRjNzdjNThmYTVjYTZiYjE3YTg2NjY2YjEgbGVnYWN5LXRydW5rCiszNzg0OSA0OWI2ZTk2NmU1N2YwODg0NmUyN2Y2MmYyMjIzYTZkN2UyMjVkMDk2IGxlZ2FjeS10cnVuaworMzc4NTAgNDg5NjU2ZGJkZjVhN2YzMTEzZjhjZmYwMmQ1MmRiODJlMjZlN2U2NiBsZWdhY3ktdHJ1bmsKKzM3ODUxIGEwNTA4NWE2M2RlYzgzNjRiMTc0ZTliMjgzYzFlMmY5ZDhhOTQ5MzQgbGVnYWN5LXRydW5rCiszNzg1MiA0ZjJiYmQ0NzFhMjFjNTgxMzhkMGNhNjFhMTI0YmUyNGM3YzBiNTU4IGxlZ2FjeS10cnVuaworMzc4NTMgNzEzNzI0NDk1ODJkMzI2ODU2NDczYWQ2MDc2ZWM1NmYxYjJjNjRhOCBsZWdhY3ktdHJ1bmsKKzM3ODU0IGYxM2NlMGJiNjA2YzAyZDk0NDg1MjQzMzI5MzJhM2FlMGFmMmIxNzQgbGVnYWN5LXRydW5rCiszNzg1NSBhOGRlMjE5NWVmZDY2YmRkODQwZmQ2YzAyNGM1Njg4MGU4ZTAzYjFlIGxlZ2FjeS10cnVuaworMzc4NTYgNjc3MWUxODQwYmJjYmYwM2MxODdiMDI5MzgwMzI4YzExNTlmOWZiYSBsZWdhY3ktdHJ1bmsKKzM3ODU3IGI0YWRiMTAyMTEwMzBhYjI1MDhjNWNhMjkwYmUxNjM2ZDFmZTU4MjIgbGVnYWN5LXRydW5rCiszNzg1OCBiODcxYjk0ZjA3YjZkNmYzZmFhYzk2YzE0ZWY0YmY0NWY4MjU1ZDZkIGxlZ2FjeS10cnVuaworMzc4NTkgMzY1NjM4ZGNlNWYzNDM2MDI5ZjI5MTEwZDA0MGM3YmVkZTFjZWY1ZCBsZWdhY3ktdHJ1bmsKKzM3ODYwIGUwMWExN2JjZGYyOGVlODdjY2JmOTZhZDZjM2IyYzFjY2IyY2EzYTEgbGVnYWN5LXRydW5rCiszNzg2MSBmNTMxMTMwM2EzNTcwMDJkNjFmNjFmZDBjMmYwYzlhNjliMGE0ZDRkIGxlZ2FjeS10cnVuaworMzc4NjIgYjQ4Y2E5NmViNDQwOGRjY2RmYzUwNjlhZDhiNjhmOWJiYTc5Y2VhZiBsZWdhY3ktdHJ1bmsKKzM3ODYzIDlhMTMwOWE5MGI1ZGY2ZDBlNGZmMDUyNGI1M2NkYTk2ODM1YTc5ZWMgbGVnYWN5LXRydW5rCiszNzg2NCBiYWUxOTE5Zjg1NDgxZGJmNjBmMDliYWRmNDU0NGNkZjU4MTg5MGNkIGxlZ2FjeS10cnVuaworMzc4NjUgYTAwY2Q2NzAzNDFiYTdmZWNmODk4MzVkNjkxNDc1YWEyODIwNzdkYyBsZWdhY3ktdHJ1bmsKKzM3ODY2IGVhOTU3ZDliMzY5Y2Q4ZGRjMzcwZmNlMzI2OGUxYjg5Y2M1Y2VkNjUgbGVnYWN5LXRydW5rCiszNzg2NyAzMWU0ZGExNjY0YjdlZjYwNTY3YTE1ODA0NTgxYjA0MGU1NjI2Y2M4IGxlZ2FjeS10cnVuaworMzc4NjggZDViYTRmMzA1MGI1ODcwZTI5ZWE1N2MxYjZhMmUwOWE0M2VmM2Y0OCBsZWdhY3ktdHJ1bmsKKzM3ODY5IDc4NzM4YTg5YjIyMzExZGI3MTI1ZjIyN2IwZmFjZGUxMGQyZjE5NjMgbGVnYWN5LXRydW5rCiszNzg2OSBmZjgwZDhiYmVmNmUxMzQyNmM4YTg1ZDdmOWQ4MzdiOGY4Zjg5ODM0IGxlZ2FjeS10cnVuaworMzc4NzEgMjA5NTUwMjU2YTc0NDE2MDFmYWJiMTdiY2E5MzI2ZGE0MmQ4MTUzYyBsZWdhY3ktdHJ1bmsKKzM3ODcyIGVmN2EwMmIxOGVjY2EzOTk4NzA2YWE0NmE3MTIwMjdhODlhYzk1NWMgbGVnYWN5LXRydW5rCiszNzg3MyA4MjA0YTRkMjAxMmNiNzJkZjQyY2FmYjRlMDRjODA5ZTZmODhhNGQ0IGxlZ2FjeS10cnVuaworMzc4NzQgNzE5MzBkN2IzYjhhMjRmMjQ3Nzg4Y2YxYjM3NmY3MjgxYjBhZGEwYiBsZWdhY3ktdHJ1bmsKKzM3ODc1IDk2ZjYyYzY3OThlODFiMTExM2YzZTMzYmYwYzliOTI1ODMwN2MzYmQgbGVnYWN5LXRydW5rCiszNzg3NiA5YjBjNWJmNDcwMGMwODQzMGU1NDc1YzFlYzlkZmZjZDhiM2Y2ZmU1IGxlZ2FjeS10cnVuaworMzc4NzcgOGRhYTVhNDQ4NDAzYTlmZDU4ZTYwYzg4NjU4YzU4MDYxOGUwNWNkZCBsZWdhY3ktdHJ1bmsKKzM3ODc4IDJiOWMyZWQ1YTc2YmZmN2UzYWIwMzBiNDM1OWZlZmI5MWFlZDVjYzEgbGVnYWN5LXRydW5rCiszNzg3OSAyNjRlNDViYWFjZDUzMzFjMTg0NWE1YTIyNjMzOTlhMjA4ZjA5MTQzIGxlZ2FjeS10cnVuaworMzc4ODAgZTk1OTlkOWQ5MWM2ZTcwN2MyMmIxYmNiODA0NWYyY2JiNTRjMzYxZSBsZWdhY3ktdHJ1bmsKKzM3ODgxIDZiZDgwMjFmNzQxY2I4OTgxZTZjYzAwNDk4NDU1ZGIxY2YyMzc0MTcgbGVnYWN5LXRydW5rCiszNzg4MiBiZGQxNGFiNmM1Y2YxNWJmZTdjMTkwZGIxYjU3NGUzMmI3OGQwYzZkIGxlZ2FjeS10cnVuaworMzc4ODMgYmUzNzBhYmIwMjBmOWM5NzViZGE1NmZhYjk0Mjk4MTU3ZjNiYzQ4OCBsZWdhY3ktdHJ1bmsKKzM3ODg0IGMxMGFkYmFkNDRmYWI5OGMyN2YyMjNiYjFhY2EzY2IzM2YwOGMxNmQgbGVnYWN5LXRydW5rCiszNzg4NSAxNTc2ZTg0NWM1N2JkYWRlYzc3ZDQ1MzhmM2EzNjQ1OWQwNzg1MjAwIGxlZ2FjeS10cnVuaworMzc4ODYgYThmZjZlZDg1NmU4OTNiNDdmMzQ3NGQ0NzI1ODkyZTk2MzhiMTU3NyBsZWdhY3ktdHJ1bmsKKzM3ODg3IGMxNDgzZjBlODAwZDAyZThlYzAxMDkwNjAwNDlhYmI2OTA5OTZmNjEgbGVnYWN5LXRydW5rCiszNzg4OCA3Zjk1ZmU5OGQ4MjE2ZDIxNjhlODRjM2RiOGM3YjZjOThmZDE5MTgzIGxlZ2FjeS10cnVuaworMzc4ODkgNzEzNThmNjU3NWI2YWZlMGVmZDE1MzRjNzU3ZTUzMGVhMjg4ZTBmZSBsZWdhY3ktdHJ1bmsKKzM3ODkwIDdlOTliMDY4MGFkZjExMzIxMmRiOGNjODdlMjhlY2JlODFlMDU4NGQgbGVnYWN5LXRydW5rCiszNzg5MSA4ZGE1N2MyOGI5MTBmNTEzODI5MWI4ODc0Mzk3ZWNiMDZhZWQ3NjRjIGxlZ2FjeS10cnVuaworMzc4OTIgODFhMWY3NTRkMzJjZDIwOGY3MzUwMWViYWU0MzBlOGRkZmEwNDYzNCBsZWdhY3ktdHJ1bmsKKzM3ODkzIGM4OGQxODQxODA1M2I1NGIzNDUwMzBkY2FkMmFkNmJkMGUzZjQyODkgbGVnYWN5LXRydW5rCiszNzg5NCA1YmUzMWEyMDdkODZkN2Y0ZWMxNWIxZDQ3Yzc0ODgwNGU5YzgxYjg1IGxlZ2FjeS10cnVuaworMzc4OTUgN2E1YTU2YTE3Mzc3NTkyNmU5ZDNiZTM1ZTg3NWI1NjY0YmI1MjFjZCBsZWdhY3ktdHJ1bmsKKzM3ODk2IDE2MzQwOWE2MDFiZWY0MWNiZDc4OTIzYjA2M2RiM2UxNGM5N2I2OWMgbGVnYWN5LXRydW5rCiszNzg5NyAyYzgzYjYyMmEzZWU2OGM1YTk5ZDI2Zjk0Zjk3ZDI2YmY5MGJjMzViIGxlZ2FjeS10cnVuaworMzc4OTggYzljNzc5NDA2MGIwZTZlZGI5MzE3ZDAyOGRiYTQwMDc0ZDBhMWE5OCBsZWdhY3ktdHJ1bmsKKzM3ODk5IDdlOTU1ZTk4N2Q2OWNhN2Q3MjMwYjUyOTUwZjJiYjJiOWZjZWFkMDUgbGVnYWN5LXRydW5rCiszNzkwMCBkMzNiM2EyYjA5NGNiODNjOGM5ZDA4ZGE2NmM0ZDcyYTExYmE1YzVhIGxlZ2FjeS10cnVuaworMzc5MDEgZDA3MTZhYjAzZDlkZGM0NTA3Yjg3MTE0NzMzNDIyOWY2YzZiMDNmMyBsZWdhY3ktdHJ1bmsKKzM3OTAyIDZhODA2ZmRhNjY4ZDZjNWY0YWUyMzkwODg4OTNjOGY0ODMyZGFiYTQgbGVnYWN5LXRydW5rCiszNzkwMyAyODMwZTZjYjQxNTc2NWIxNTNlNjNiZWE3ZjEzZDZhYTMzZWM4ZTViIGxlZ2FjeS10cnVuaworMzc5MDQgZmJlYTcxNDgwMmIzZGE5NjIwYTUxMTA2ZDBlZmIzNTY5NDBhZjNmNyBsZWdhY3ktdHJ1bmsKKzM3OTA1IDdhMTI5MDQ0MzhkNmNhNzk3MTA3MWU1MmVhNWQzNGJmZDZkODVlOGEgbGVnYWN5LXRydW5rCiszNzkwNSBmMzFlMThkMzEzYzdhNGZjNjY5MTRiMmQyN2UxMzBhMGY3MmMwYjY5IGxlZ2FjeS10cnVuaworMzc5MDcgNzE2MzA3ZjdlNjE3YzQxODUxM2FmMGI5Y2ExMWJkYWRhNzgwOTViMSBsZWdhY3ktdHJ1bmsKKzM3OTA5IDYzYWZjMmQxYjBkYTM3MjJlMzA1OGZmZjYyMjk2ZTBhODA0NjAxODIgbGVnYWN5LXRydW5rCiszNzkxMCBjZjNmOGJlZTdmN2FiMTJhOTNiZTQ3MjQzYTY1MmEzZTgwNWMxMWQ2IHJlbGVhc2UyNC1tYWludAorMzc5MTEgMmVjZGM4M2ZhODZjZDJiOTNiMTFlNTBlMDNkMTg3MmJkZjg5NTc4ZSByZWxlYXNlMjQtbWFpbnQKKzM3OTEyIDM4NDMyYWQxMWMyYTQyMjZhZTZmMzI4ZjUzOTVmMGFiM2M2ZTZmZmMgbGVnYWN5LXRydW5rCiszNzkxMyBhZWQxZmVkMzdhZDU4NjU2NzNmY2EwNjljNWMzYzhmYWUyZjc3OWU1IGxlZ2FjeS10cnVuaworMzc5MTQgZmQxYmU0OTRjMzFiNjNlNjExMDE1ZDVhZTRiNTFkN2M0MzQxYTk5MiBsZWdhY3ktdHJ1bmsKKzM3OTE1IDhjZWNiOGRjNDNhMzgwN2JjZjNhZTk1NjU1OWI0ODM0ODRmZjZkODcgcmVsZWFzZTI0LW1haW50CiszNzkxNiA3OWQyYWUwYTYyZWZlYjc0MGQ2NGZkZjIwNGViNmUyNTA0ZWM3ZDVlIGxlZ2FjeS10cnVuaworMzc5MTcgYTZlMjUxZGU1ZTQxYmRkODJkODU2N2Y3NTE1NjNlYjY5ZDZkNGQ1YiByZWxlYXNlMjQtbWFpbnQKKzM3OTE4IDcwMjZkMDM4NTA4MTE3MjBiYWNkNWI2YWYwMjVjZDkzZjYzMmNiMDggbGVnYWN5LXRydW5rCiszNzkxOSAxYzRkYmU0YTA2YmQwNTQ5YzBiNDM1OWM0OTE1MjI1N2RjYmFkMDFjIHJlbGVhc2UyNC1tYWludAorMzc5MjAgMjE3ZDc0MTA0OWMwZDYyNmY0N2FhNTMyNzFhZDdmYjdkNTY2Njc5ZiBsZWdhY3ktdHJ1bmsKKzM3OTIxIGM4NzI2MWNlN2FjOTMyNzU0YzZlOWU3ZTdmM2E0YmQ1MTU2NmI0ZTQgbGVnYWN5LXRydW5rCiszNzkyMiA4ZWFmODA4ZmQ5ODBjMTA3ZWQ0NDc4ZGZiYjljZjk1OTBhN2VlZGM2IGxlZ2FjeS10cnVuaworMzc5MjMgZTQzNTMyYjg0OGQ3NWQ4MDNhZWVkNmViNDdkMzQ2ZmE3ODc4MWM3NyBsZWdhY3ktdHJ1bmsKKzM3OTI0IDdlNjQ4MmFiOTQ1NWRhMTc3NzUzNGUyMGM0MTk3YjViZjYwMTVlOGEgbGVnYWN5LXRydW5rCiszNzkyNSA2YmZiMGFiODgzZjIwZjc2YmNmNDNlMjAzZDdmNjYwZDU0OWI5OTFlIGxlZ2FjeS10cnVuaworMzc5MjYgZGE5NjdmYjdhN2ZiNGY0M2ExNThhOWQ5NDgzYTliYTc2OTc5YTYyYiBsZWdhY3ktdHJ1bmsKKzM3OTI3IDE3MmI0N2ZmMmU0YmIzODBiZWY3YWFlZWJlMjRmMjZkYjE0YjhhOTAgcmVsZWFzZTI0LW1haW50CiszNzkyOCBjZWMzMWVkZWE0MTRmZWY0ZTkyMDdlYmFmY2U1NmE2NTcxZjQ4YWRiIGxlZ2FjeS10cnVuaworMzc5MjkgNGUyNTRmMDI4Yjc2ZmMxYmFjNGNkOGM4MGFjYmFkZDc0NmQ4OTc0NyByZWxlYXNlMjMtbWFpbnQKKzM3OTMwIDMzZjc0OGU1ZDE0MjFjODAzNTcyMTgxODhjYWU1ZWYyYThkYWEzMmQgbGVnYWN5LXRydW5rCiszNzkzMSA4YzgwMjJiODFmMDIwYTZlY2JjZjFlMzkwMGQwOTMwNTQ1OTBmNTdlIGxlZ2FjeS10cnVuaworMzc5MzIgYWJlM2VlNWZjNmMzN2RhMGM4NmUzYzM4MjZiZDJiMjljMzE4ZmY5OSBsZWdhY3ktdHJ1bmsKKzM3OTMzIGYxOGE0ZDkzNzE0MmEwNTJlODBjZDc2NWU1NTI0ZWEwMTE0NzI1YmQgbGVnYWN5LXRydW5rCiszNzkzNCA4YmY3NjViNDgwYjgwZjlhMGJkMGFlMDkxYjc5YjQ0NDk1MzlmYzI2IGxlZ2FjeS10cnVuaworMzc5MzUgNTBlMGMzNDVkNDliM2JiN2JmMDk3MjQzMDhmY2M0ODYxYjRhZThlOSBsZWdhY3ktdHJ1bmsKKzM3OTM2IDRjODEwNmMzNThjZTBiOGQ4YTYzZTAyMzI0OGU0YWE1MDZiNjNmMDUgbGVnYWN5LXRydW5rCiszNzkzNyAxNTdmYWU3Njk1MzZlNjMzYTY0YmY2OTFjNDFlYjE5MjhhYTViODA3IHJlbGVhc2UyNC1tYWludAorMzc5MzggNjExNTYxY2NlNzQwZmZjOGY4N2ZjYzlkMmViMGI5MTkzZTk1YmRmMSBsZWdhY3ktdHJ1bmsKKzM3OTM5IGZiZjZlMDRkZWY2OTAyNGMyNDQ0OTE5NWFlNTMxMDliMjc5ZDViOTMgbGVnYWN5LXRydW5rCiszNzk0MCA0M2MwMGYwZTYzMDU1NTc3ZTcwODUzNDA0ZDA0NDJmNGNiOTBlMWE3IGxlZ2FjeS10cnVuaworMzc5NDEgZjczMjgwOTY4MzIyNzkwODFiODhhNzBlZTM2NjAyMjRjMzY0NWU2ZSBsZWdhY3ktdHJ1bmsKKzM3OTQyIDRiNjAxYmQzNDZhNGY0M2IxMzhjM2U4YmQ5ZmRiODQwYjc1OTZlMTMgcmVsZWFzZTI0LW1haW50CiszNzk0MyBjNGIxM2ZhMThhMTAzZGExN2Y4NThiMzY1NDZmYzgyNWM4YTAwOGJjIGxlZ2FjeS10cnVuaworMzc5NDQgNjA5YmNkYWUxMDhhNjU3ODMxYjI1Mjk3ZWVmOTA5MmY0YTQyN2VlYSBsZWdhY3ktdHJ1bmsKKzM3OTQ1IDIzOTk2MzJmZDllMGUyN2Y3MGE4OGY5NGM5OTllZTI3M2I2MDUyNGEgcmVsZWFzZTI0LW1haW50CiszNzk0NiBkMmYyNmVhYWNlMmMxZjMyMDExNWEyM2ExNjI2ZjI1ZGVjZjIwMWViIGxlZ2FjeS10cnVuaworMzc5NDcgZDYyMDNmYmRhMjUxN2QzODk0MjY4ZmI3ZGI5YmMxZjcyNjJkM2U3OCBsZWdhY3ktdHJ1bmsKKzM3OTQ4IDZlMGRiMDdmYmY5MTg1ZDkxYzBlODQ3MjEzMWNjMjMwOTI1MzUyZTQgcmVsZWFzZTI0LW1haW50CiszNzk0OSBjYzljZTY4MzdlYTliNzNlYzQ4MDM2YmMxZWVkNzFjYzUzNDk1MzViIGxlZ2FjeS10cnVuaworMzc5NTAgOTVkMjc2ZDRmOWU0NjU3OTZhZWRhYjRkYzFkMTUwNTIxYWQ4N2Y0MyBsZWdhY3ktdHJ1bmsKKzM3OTUxIDYyNGU5NjM1YzNhZDExZDcyOWM1Mjg2MGFkZDMxZTIzMGM2NzliMmMgbGVnYWN5LXRydW5rCiszNzk1MiBmMDJjZDBkNGEyYTA1YTdjOTQ2OWM4NmMyNjQ4NzgyOTBiZDFkOWY0IGxlZ2FjeS10cnVuaworMzc5NTMgZWRjMjBkNTM5YTE4MTVkNTgzOTRkODNmZTg1YWNhMThjNzY1MGRhNyBsZWdhY3ktdHJ1bmsKKzM3OTU0IDE3NWY2MTI1NTQ5Y2FkNzFiOGFiNTJhMTRkMDY1ZGMxM2ZjNGFlZmIgbGVnYWN5LXRydW5rCiszNzk1NSAwZWMzNDQ2NjNmNmE5ZWNmODhiMzJiOTdjZGQxMDY2ZjU0ZTY4NDY4IGxlZ2FjeS10cnVuaworMzc5NTYgOGNkMzE3NmZkNmYwMzBiNjA0MjFhZDA0OGVmYWQ1YzEzMjIyNDFlNyBsZWdhY3ktdHJ1bmsKKzM3OTU3IDhmOTI5NTEzOTkzYzkxZGZjNjQ2YWVlMDc3MmUwZTczYzhlZmNhOGQgbGVnYWN5LXRydW5rCiszNzk1OCAyNGYwZGE5MjAwMTA0NGU4MjQ5YjM0OTdiMGMwN2Q4NjRkYzFkYzEyIGxlZ2FjeS10cnVuaworMzc5NTkgNTE3MmMyOGMwYjNjOGM5ODI1MDdkNjEyMTJlMmE1MjE5OTAyOTk3MiByZWxlYXNlMjQtbWFpbnQKKzM3OTYwIGNmNTU1ZWM2OThlYmNlNGZkNmRjY2M2M2JiYWE1MTU4MjM3MGU3YzQgbGVnYWN5LXRydW5rCiszNzk2MSA1M2M2YTk1OWY5Y2ZkNWVkOGYwM2FkYmM1NjIyZDI4MjM1ZjVhMWYyIGxlZ2FjeS10cnVuaworMzc5NjIgMGRmZTYwOGVlY2ZhYzIwY2Y2OTliYjg0YWQ2OTdiNzlkNDNiMjZlOSByZWxlYXNlMjQtbWFpbnQKKzM3OTYzIGI5NjZhYWRlNTQ4Y2Y4YjEzYTcwZTQ2MDVlMTkwMzc4ZTg1YTdiN2UgbGVnYWN5LXRydW5rCiszNzk2NCA4ZmQ3NjZiYjc2YzllNDhlMTAyZDU0NGQxZDI4OWVhMGUyOWE5ZGEwIGxlZ2FjeS10cnVuaworMzc5NjUgZjQwOWQ0YzZkYzYwNDFlYjU0ZjRhY2IzM2M5ZjE2MDVmM2Q2NmM4YyBsZWdhY3ktdHJ1bmsKKzM3OTY2IGNkZGQwMTZhZTA2YWNmZTljYzM5NGMzMDM4ODg0NTQ3NjgyNGFjZDcgbGVnYWN5LXRydW5rCiszNzk2NyAwZjU2YTY2NTVlYmZhMjgzMDFhNmYyMDEzZjVjMDRmZjYyNjZlMzAyIGxlZ2FjeS10cnVuaworMzc5NjggZWY2ZDFlNWViNGQzMjllM2Y5MmNkNmYxZmRiNTI4ZjFlMDYwNTJiMyBsZWdhY3ktdHJ1bmsKKzM3OTY5IDI1NTcxZWE1ZWNhNjJmMDg1YjhhMDE3NzI1ZjA0ZDAxYWMwODQ4OWYgcmVsZWFzZTI0LW1haW50CiszNzk3MCA2OTg5MDkyY2Q5NmQ1Y2Q5MzMxNDkwNjViM2Q1YTRlMTE3ZmRkNTVlIHJlbGVhc2UyNC1tYWludAorMzc5NzEgNDIxYTVkZjUwOGI4NzcwM2YyN2VhOGVjNmI4OGYzZjQ5ZWM4NGUxNyByZWxlYXNlMjMtbWFpbnQKKzM3OTcyIDFkMWQ2Mzc3YWNiMTIzZDE4YzgyYzE2OWE3MzM3NzA4NWFjZTMzMzggbGVnYWN5LXRydW5rCiszNzk3MyA5NTc0MjljNDZiYmY4ZDc1MGU3NmE4YzkwZjc4YWUwNTZiMWEyYjgzIGxlZ2FjeS10cnVuaworMzc5NzQgMDVmOGE0ZmVjMzU2Mjk0NmZhZmZlNTUzZGE1OTYzNWE2NWU4NzU0OCByZWxlYXNlMjQtbWFpbnQKKzM3OTc1IDczYjA5YzJiNzg4YjhhMjIxMmQ0ZTI2NWZlZThhYjk5ZmY5NTVmYmIgbGVnYWN5LXRydW5rCiszNzk3NiAxZDA0OTM2YTY0NTZhMDRhOWZmMTBjMjU5NTVhOWM4MGFlZTRhM2EyIGxlZ2FjeS10cnVuaworMzc5NzcgOWMxZWIzM2ZlMTEwYmNjZDNkOWU0OTQxMTE2ODZmMmIyNjk5ZWFlOSBsZWdhY3ktdHJ1bmsKKzM3OTc4IDk2NzIxYTAzYWUzMDAyNGQ2ZWYxYmI4MTVlMTJkZTI3NzFmYWNhZmMgcmVsZWFzZTI0LW1haW50CiszNzk3OSBhYjhiMGI3MzE3MTdhNTgwMzBjYjgxYTkzOWE1ODNlY2RmNzhiZjZmIHJlbGVhc2UyMy1tYWludAorMzc5ODAgZjBmYzZiZWZiMDYwN2EzMWE3OGEyNmE5NTQzNmRlMzU4M2UzMjM1MiBsZWdhY3ktdHJ1bmsKKzM3OTgxIGNjYzUwZTBiNDY2ZDRlY2Q4ZDIwMGM0YWUwYzEwNjQxMmQ5OGQ4MWEgcmVsZWFzZTI0LW1haW50CiszNzk4MiA0OTc5YTQ0MzQ1NDM0MDk2ZjA5MGVmNGUyYWVhYzgwMzk5ODY4ODM1IGxlZ2FjeS10cnVuaworMzc5ODMgNjBkNDgyZThmODQ1MDE3YzBhZDU1YTk3Y2Q4MTc1MzYxZDQwMGEzZSBsZWdhY3ktdHJ1bmsKKzM3OTg0IDE1MzFiMjVlYmRjZDNiZjM2MDc2ZDRmNjY1MTU3YjdhMmY3ODc4YmYgcmVsZWFzZTI0LW1haW50CiszNzk4NSBlNDZmOThlNzNlNTI3MmFjMDgxNmZmYjc0NzViOTNjYTgwMGU1ZTFhIGxlZ2FjeS10cnVuaworMzc5ODYgZmVkNWE3MzQ0NjVkMzY0Zjc3NTA1ZTdhOGUwNmY5NTc5OGVmN2Y5YyByZWxlYXNlMjMtbWFpbnQKKzM3OTg3IDRlOGZiMTJmODM3ODcyMmFiYTA2ODlhYWQ2Y2Y4ZmQ2NmMxZjE5MzEgbGVnYWN5LXRydW5rCiszNzk4OCA0ZTM4ZWNkMTkxMmU0YTY1NjBhMzJhNDNiZWExOTNmYjk5ODQ3ODNmIGxlZ2FjeS10cnVuaworMzc5ODkgMWE5MzhmNDU2MDUzODUxMTAyYzc4M2E5Y2Q5NWRiNWZiMmJkYzhmYSBsZWdhY3ktdHJ1bmsKKzM3OTkwIDc5MDY2ZWEzOGM1MDMxM2QyMWRiNDYwNjU4ZjM1MDZlZDlhNjI4OTQgbGVnYWN5LXRydW5rCiszNzk5MSA0ZGNkNzhmM2I1ZDFiYTE2YjllMzFkZDA5MDkxNzQyOGE2OWY5NjUxIGxlZ2FjeS10cnVuaworMzc5OTIgNzEwYjBiMGUwN2VlZDcyYTI0MDc3NDMxNDYyNTM1ODA0ZGMxZGVhMSBsZWdhY3ktdHJ1bmsKKzM3OTkzIDAxNWI4OTJjOThlZTI0NjZhOGI0M2RjMmFkNzgyMjAyODAyMmEzNTQgbGVnYWN5LXRydW5rCiszNzk5NCBjZTRiZmJkOWExNmNkNTg4YTBiN2ZlOGRlYjM0MTcwNGFhYTUzMDc1IGxlZ2FjeS10cnVuaworMzc5OTUgNTkxMmI0MTgxNTg0NjE5ZTdjNWM3YTlkYWY1YTA4NmU3ODA0ZDA2MiBsZWdhY3ktdHJ1bmsKKzM3OTk2IGE4NTdjMjVhMzdiOTY4ZjVmYTFiNTY2NjVmNWU4N2NkNmJjYzk1YjkgbGVnYWN5LXRydW5rCiszNzk5NyAwYTZkZDNmMmFiYzdkMzhjOWZhNzMwMzU3NGUzODZiYTAwMGM2YjI5IHJlbGVhc2UyNC1tYWludAorMzc5OTggYWZlOTBlOWU0YjQ4NGQ4NzlhYmYyMzc0MzdiMWE4NDhhNGZhZWQ3OCByZWxlYXNlMjQtbWFpbnQKKzM3OTk5IDQ5MjY1Mzg1Nzc4MmZlNjNhY2FiZmY3YjFmMzZjNzc3YWE3N2VjMjIgbGVnYWN5LXRydW5rCiszODAwMCAyMWFiZWNlYWFiYWQ2ZDYxYjljYTVhMDg5Mzg0YjBiOTc4OTBkYjBkIGxlZ2FjeS10cnVuaworMzgwMDEgZjA1ZGQxODE2YzFmN2NkZjVhNDY4ZWQxODEzMDhkMzkxMDUwNGJiZSBsZWdhY3ktdHJ1bmsKKzM4MDAyIGQwYTA5Yzc5NzQwOTY0ZTIwZjE5NzIyZWY2ODM2NjdjYzY3YTc3YzMgcmVsZWFzZTI0LW1haW50CiszODAwMyBkYjhmNjk5ZmY3ODI1ZjdmMTdmNWRkNmZkYTcxY2IwMDYyMmFkMzdlIGxlZ2FjeS10cnVuaworMzgwMDQgYjEzMmJhOTI1OWFiMTRmNWE0ZWU3ZTkzNTU0Njk3NWMwMDdkNzE1NSByZWxlYXNlMjQtbWFpbnQKKzM4MDA1IDcxZDcxMGUzMzZkZmNhYjk5NTY1MjYyYjUyMmZjNzA0M2IzMTE2YTggcmVsZWFzZTIzLW1haW50CiszODAwNiBiZWRiMzQwZjEyZjk3MGEwMjgwMzRkMjFmODY5NjRkMmQ4MWY1MzMwIGxlZ2FjeS10cnVuaworMzgwMDcgNzUyZmE4NmYwNmQyNWMzMDM1OGZkNDQyZjkwZjI5MmUyZmFiNWMxMSBsZWdhY3ktdHJ1bmsKKzM4MDA4IGMyZWJhMDRlMzA0MTUxMDgzYmZhZTlkMzg0ODQ5ZGQ0ZjRlNmM1N2MgcmVsZWFzZTI0LW1haW50CiszODAwOSA3NWYzYTUxYTRlMzNkYjY1ZmQ5M2NmNTQyZWVmNmQ3YTg3MmEzZGNmIHJlbGVhc2UyNC1tYWludAorMzgwMTAgMTY4MDNiMDM5NjRlNGQ1MmE1NjYwZGNiNmVhOTUwZjc5OTg2Mjc3NyByZWxlYXNlMjMtbWFpbnQKKzM4MDExIDY1NzRjNTE1ZTAzNTY2YmE4YjYzNzkzYTM5NTYxZWVjYmQxMjZjZDQgcmVsZWFzZTIzLW1haW50CiszODAxMiBiZTQ1MGEzMzVlOTY5NmUzZGIxZGZmYTY5MGQzNzM2OTJjZTMzZWYxIGxlZ2FjeS10cnVuaworMzgwMTMgYTY1OWIwY2VjYjkyZjdkZTM2ODE4NGE3NjBhMDc4YTlkYjgyYTk4MiBsZWdhY3ktdHJ1bmsKKzM4MDE0IGU2OTJlNzdjYWQ1ZDVhNDNkNWNlNzliOTFiZmQ1ODUxZjhlMjhiYTEgcmVsZWFzZTI0LW1haW50CiszODAxNSBkZTQ3MDFmYzE3NmY5ZTQwMDhmNTAzNmY0MmYxNGRiMTJkZTYyYzY1IGxlZ2FjeS10cnVuaworMzgwMTYgYmJkYWFjYzQ0ZjZmNGEwYjNmOWNlODNhMzVmZGZlMTZiYWJhODg1OSBsZWdhY3ktdHJ1bmsKKzM4MDE3IGE4Njg2NmJhYzM2NmI4ZDhhY2Q0NTljYTg1ZTBjNDA5ZmRmM2MzYWEgcmVsZWFzZTI0LW1haW50CiszODAxOCA1MWIwZDE4ZGE0NDdiNzM1MzEzMTc3YWRmY2MzMjBkZDIxYzU1M2RmIGxlZ2FjeS10cnVuaworMzgwMTkgYzI5NGIxMTMyM2QxN2E0N2QyMzFmNjhmNTFjOGNhOGUyMzk1NGQ4MCBsZWdhY3ktdHJ1bmsKKzM4MDIwIDI1ODU2MGFkYzQzYjMxYjVlZjgwZTUyOWUxZTFhYTQzN2ZmMTBlNDggbGVnYWN5LXRydW5rCiszODAyMSBmMWVkYjQ3Y2U0ZmFiNDZiOWQ4ZWMwNDE4NmM3MzFhZGRiZmYzNDYwIGxlZ2FjeS10cnVuaworMzgwMjIgMzYyNmRiNDMzMTA0ZTA3MWQzMzkxZWY0ZmE0NDIxZDAwM2ZkZGU1MCBsZWdhY3ktdHJ1bmsKKzM4MDIzIDBmMDA3MjdhMjdiMzBiZTk5MjA3MWU1YmRiYWEyMWRmMDYwMzAwZjMgbGVnYWN5LXRydW5rCiszODAyNCA2OTYxMWM3Y2QyM2JkZjQ3YzQwNjY1MDBlYWYxYzRmYjhhZDcxNWZjIHJlbGVhc2UyNC1tYWludAorMzgwMjUgY2EyY2ExYWViMDgwNTNiNjk3ZjJjZGRmN2Y4NDg5NjkyYWE0OTVhZiByZWxlYXNlMjQtbWFpbnQKKzM4MDI2IDhiMTE0NGJhNzM0ZWZhZTFmZmJjNTQwZmNhY2RlYjdlNjUwZjgyZWYgcmVsZWFzZTI0LW1haW50CiszODAyNyBjYjU0ZjExNTNiOTM1NGU5ODJlZTliZjQyYTBiMDY5M2U5NjQyYWExIGxlZ2FjeS10cnVuaworMzgwMjggNWVhMDI1YzQyMWQ3YmI4Nzc3ZDUzMjYxMDFkOTY3ZDIxMzAwM2I2ZCBsZWdhY3ktdHJ1bmsKKzM4MDI5IGMyMGY1YjM4ZmEyMDk2NGFkNzJkZjVjYmUxOGNlYWM2MDgzNGY2YjcgcmVsZWFzZTI0LW1haW50CiszODAzMCBlNTM2OTNhMDJjZjA1NWQwZGY5MjYyNmZhNmVjODkyNzY0YTI0NzZjIGxlZ2FjeS10cnVuaworMzgwMzEgZmRlY2JhMjZmYzg3ZGJmZWQ5ZWY0NTIyNDMyNzFmNDZiZDUzMzEyNSByZWxlYXNlMjQtbWFpbnQKKzM4MDMyIGIzYWZjMDFjMDVhMDVhNTZhM2I0NjBkYWJlY2EwOTRiODJkYTZmYzUgbGVnYWN5LXRydW5rCiszODAzMyBkYjliNjQ5MzlkNDVjNzI4ZWRjNDRkOWFjYmM3MGJmMzAzNDA3NWRlIHJlbGVhc2UyNC1tYWludAorMzgwMzQgODBmMDFmZGJlZGViYzQ5OGIyOTdiMjE5ZGYzMGU3OGM0MmJlMThjNSBsZWdhY3ktdHJ1bmsKKzM4MDM2IDZjMDJmZjkwMmY4MjBkNjJkODUzNGI1MzBiMGMxYWYwNzI3Y2E4YTMgcmVsZWFzZTI0LW1haW50CiszODAzNyAxMzAyMWQzNTEzNTg2M2Q1Y2YxNjdkY2M3OGRjZDVlOTIzNmI3MTBjIGxlZ2FjeS10cnVuaworMzgwMzggMjE0NGEzNTJhYTM3ZmMwYjFjYTc3MTMwMWI1NmZmMWEyYzI5OWI1OSBsZWdhY3ktdHJ1bmsKKzM4MDM5IDMwYjk3YzFiYjEyZGRmMzJmOWVhYjQzZDZmN2E5YjlmMDYwNGYzOWMgbGVnYWN5LXRydW5rCiszODA0MCA5YzNhNjRjMjgxZTFiMzVhMDFmYTNmMGFjODI1YzMzNzk0MThkOTUyIGxlZ2FjeS10cnVuaworMzgwNDEgMDViYzhhY2FmMGJiNGM2YmMyMWU5ODJjMzFkMmIwNjJhYjZlZDk3NSBsZWdhY3ktdHJ1bmsKKzM4MDQyIGU4OWIxYTI0MGZmN2VkMTUyYjU3YTU4MjkwZjRmNzc1ZGQzMmI2ODUgcmVsZWFzZTI0LW1haW50CiszODA0MyBjMTM5YTQ5OTdkOWYxNGM0Mzg4ZjFiMzBjMzZmMWE5MDdhZDU3NDhjIHJlbGVhc2UyNC1tYWludAorMzgwNDQgOGZkYWE5N2E4YWMzNDM1ZWVlYTZjNGRlYWEwN2IyNDA4NjQwYmZhNSByZWxlYXNlMjMtbWFpbnQKKzM4MDQ1IDExZGIyOGU5MjA5ZmVkM2UzMTUwMWUxOTRhNGZhM2E2MGFjMGJmNWQgcmVsZWFzZTI0LW1haW50CiszODA0NiAwZWZjYzE2ZjVhMGQxNjU4YWU4YzU4NmZmYWYyMzNmZTJlOGE2NGZlIGxlZ2FjeS10cnVuaworMzgwNDcgNDcxNGFmZjRiZjc1Mjg3ZmYzMWFhZjQzOTg5MDY1NDBiNjE0NDg0ZCBsZWdhY3ktdHJ1bmsKKzM4MDQ4IDllODE5NWUyMWRhNjllYjJjMjNlODBjMGNmNjQ5NmE1OGJhM2FkMjMgbGVnYWN5LXRydW5rCiszODA0OSAzNmNmOTRmNTc0MTUxZjRiZGIzNWJiMTM2Zjk2NTBkYTRmYjJiOTIzIHJlbGVhc2UyNC1tYWludAorMzgwNTAgNmY0YTZlOWFkNmYzM2FiYmZhMmEzNTk4YTE2ZmJhNWMxMzA3NjhjZSByZWxlYXNlMjQtbWFpbnQKKzM4MDUxIDUyMWJlYzYwZWIzMDJmY2JjMzUyMDA1MDkwNjRmMDVlZjAyZjU3YTggbGVnYWN5LXRydW5rCiszODA1MiAwNDcwZDc1NDE3ZmYxNTVhNzQzMDQ4ZTdmMjE5M2M0N2NhMDdiMzU0IGxlZ2FjeS10cnVuaworMzgwNTMgZDA0NzAxZTU5ODcyODQ3OTc3ZWQxYzZhNzhlMzlhNzQ1NGI4OTlhMCByZWxlYXNlMjQtbWFpbnQKKzM4MDU0IDQ0ZWJmOThhNTg2ODIwM2QzNmI0ZWY1NzQyNzgzNDA1ZDgyZjhhZTYgcmVsZWFzZTIzLW1haW50CiszODA1NSBhNGJkNWQyMWM4YjI2Y2IyYWYxYjEzMjVmMDU5YzRlMmMzZTgzM2E0IGxlZ2FjeS10cnVuaworMzgwNTYgY2Q0ZGQ2ZGQ5NzIxYmRhNzBlMmIwMTc4MDE5NDI4N2ViZGYxMzk2ZSByZWxlYXNlMjQtbWFpbnQKKzM4MDU3IDk4ZDc5YjQ2OWU3NGQzMWZkNzJmODA2ZTkyZTU3ODE5ODMyOTM4YTggbGVnYWN5LXRydW5rCiszODA1OCAxMjg1Y2ExMzQ1ZDVjMzEzMWRiNzQ3MzExMmQ3Njg1NTA2NDE0MzcwIHJlbGVhc2UyNC1tYWludAorMzgwNTkgYTIzNDI4NGY5ZTA2MDJmMWM1ZDRkYjBlY2U1ZmY5M2U5ZWQ4N2RlNiBsZWdhY3ktdHJ1bmsKKzM4MDYwIDQ2ZmEwZTIwY2JjZmU0MDg2Zjg3NmVmNzNiMjVhZGZkNGE5MjAwMTQgcmVsZWFzZTI0LW1haW50CiszODA2MSAxOTkwZjdlYzBkOWFkMGIwYTc5MjEzMDIxNWQyZTU5NmMzYmM0NTk0IHJlbGVhc2UyNC1tYWludAorMzgwNjIgZGFiZDQzYmYwZGRkZmVlZDVmZTg5ZGZjM2VmNzA1MmVlZDhhMjc3YSByZWxlYXNlMjMtbWFpbnQKKzM4MDYzIGJlOTc2ZGRmMGZmNzA3MjFjZTQwYTM0MTc0ZWI2MDAxYWRiZDllNWUgcmVsZWFzZTIzLW1haW50CiszODA2NCBkNDcwMmU2N2UxMTk3ZmIyOTNjOTAxODkwN2Q0NGI1NzNlOTg5MzIzIHJlbGVhc2UyMy1tYWludAorMzgwNjUgN2ZiNjdhZTkzMTI4ZTE5NTE2NTc5NWY0MjBmZDkxYjIwYmM1MmYyZSBsZWdhY3ktdHJ1bmsKKzM4MDY2IGEwYzdkZjUyYmE0MTU3MzFhOTJkNjY0NTZkODgzM2E5MjZiM2QwMGUgcmVsZWFzZTI0LW1haW50CiszODA2NyA5Y2I4YzY4N2YzZDY3ZmZhN2JiNmM1OGU4ZDIyMzhiMWQzZDEyOGYyIGxlZ2FjeS10cnVuaworMzgwNjggMzA4ZWZkNzI2OGMyNmNlYWExZWU3ZmE5NmVhOTk1OGJkNzdhZGViNyByZWxlYXNlMjQtbWFpbnQKKzM4MDY5IDdkNWQ2YmRjNGY5NzlkNWE4NWE4MDY4MzEzZDgxMGFmNjAyMTdhY2YgbGVnYWN5LXRydW5rCiszODA3MCBlYTM0MDAwNmMxZjMwYjg2ZTExODI3ZjYwYTk4M2RjMjU5Y2IzYjVmIHJlbGVhc2UyNC1tYWludAorMzgwNzEgODZhNjBkNGZhODdhMzU2YWNiNjc0MGRlMGZlN2I1MGMzYTZjYWYxMiBsZWdhY3ktdHJ1bmsKKzM4MDcyIDE5Mjg2OTk0Zjc0ZjMyYTMxNjA4MWFmZWRlNTY2NWE3M2Q5ZTEwN2IgcmVsZWFzZTI0LW1haW50CiszODA3MyA3YzQxM2QzYTQwYTUyYmEwY2UyYWNhM2FiNTdkOTc3MDhlZjYwNWVmIGxlZ2FjeS10cnVuaworMzgwNzQgMDJmY2I1ZWI4NGNiNmExZmJjNmZmNjg2MThlMWU1MGQzNWY2N2M1NCByZWxlYXNlMjQtbWFpbnQKKzM4MDc1IDAzNGM2MTFiMmU4NDRlMGNlNWFlY2M2ZTBlNDY1YWU3MTczYmU3NGIgbGVnYWN5LXRydW5rCiszODA3NiA5ODY1NGJmYTgwZWE1ZGRiMjQzMzg5MzUwNzUxM2E0OTg0MjkwN2E5IHJlbGVhc2UyNC1tYWludAorMzgwNzcgMWU4YjAzM2Y5MWRjM2JhYTk5Zjk4YmY2NGIyY2JjNWZlZWI3MzcyOSBsZWdhY3ktdHJ1bmsKKzM4MDc4IGE2YmEyOGQxZDgwNmFhODMxNDg1MzJiMGQxYWI1YWM5ZTJhNmMzZmMgbGVnYWN5LXRydW5rCiszODA3OSBhYmUzMTQ1ZGRlNGU3Y2Y2ODdmOWMyMTdmMDI3YmZkY2FkNDRhN2ExIHJlbGVhc2UyNC1tYWludAorMzgwODAgYjY2MTk0MjNjMTk2MTAxOTUyMDE4ZjgzMmI1ZjNkNjY3N2FmODlmYiBsZWdhY3ktdHJ1bmsKKzM4MDgxIGMxYjQ0MGVhY2JiMTgwYmZkOWRkOTQ0YTFhODM2ZTY1Y2Q3MmQzYjEgbGVnYWN5LXRydW5rCiszODA4MiA5OWUzZGRiM2E3NGFhZDc5ZmMxZmMzODI3YzBiZWVhNjkyOTU2MWNjIHJlbGVhc2UyNC1tYWludAorMzgwODMgOGQ2MDA3N2U5OTUxNDkwYThlMjg0ZTU4MDliZjA2ZmZkNDkwZjM0ZiByZWxlYXNlMjQtbWFpbnQKKzM4MDg0IDY3MTkzNjkwODNjMWViOTIxOWU0NjgyZmRlZjNkZGI5MDE4OTEwNWEgbGVnYWN5LXRydW5rCiszODA4NSA5ZGM5NmFjOTQzNDIzODJkZGNmYjI0NTRiMTA2MDFmZDBkMjEyODliIHJlbGVhc2UyNC1tYWludAorMzgwODYgMmFhOTZlZTNmY2I1YzkwYjcyZDI1MDAyNDEyOTQzMzhlZjJmNmViYiBsZWdhY3ktdHJ1bmsKKzM4MDg3IDRhMGMxZTUxN2U2YmIwZjU4ZmQ3MzM5YjhkYzU2NjBmZTBlMDM5ZDQgcmVsZWFzZTI0LW1haW50CiszODA4OCAzOTExNzI2YWVjYjkwMDFlNzE5NWQ3YzY1Zjg1NTExOWRiMGYwY2VkIHJlbGVhc2UyNC1tYWludAorMzgwODkgNjQyZGIxZmIzNDgxYjMzZGFkMDY5NzY1NzU1MGU4NDc5ZDU0NTljNSByZWxlYXNlMjQtbWFpbnQKKzM4MDkwIGJiZGMxZDczMTBmNDk3YTc4YjUzMTZiMmU0ODhiYTQ2YjViNWNhMzQgbGVnYWN5LXRydW5rCiszODA5MSBlYzE5MjVmMDdlYzk3ZTAyYzNkMTc2YjgzYjMxZjdiNzQ1MTY1ZmViIGxlZ2FjeS10cnVuaworMzgwOTIgZTIwODhhZTBkNjdmZDY2N2ZmYjNiNDJhNjMzYTBiYWZhMGU1NTY4OSBsZWdhY3ktdHJ1bmsKKzM4MDkzIDU3YjIzZTU3NWZmYzYzMGMyOWM0NGZmMDJhMmM0MjhkY2VkNWQ4NmMgcmVsZWFzZTIzLW1haW50CiszODA5NCA5NWJiZTk5MWZjYzMzMTlmOGY5OTY2NGQxNjA1OTA1NGIxY2YyZGE1IHJlbGVhc2UyMy1tYWludAorMzgwOTUgY2ZkYmZhNTRkYzZhNzAxY2I1OTAwZTMzZjdjOGM5NjhlMTZiOGJlYyByZWxlYXNlMjMtbWFpbnQKKzM4MDk2IGE3ZmZkYzA5ZjAwMjY3ZDc2NDhmNGJjY2RhNjBhNzdkZTlkMzg1NDQgcmVsZWFzZTIzLW1haW50CiszODA5NyA2OTQ2NzBmNjUyNTFkNWNmODBmZDEzM2RkNzUzMTVhYTRhOTcyZWUwIHJlbGVhc2UyMy1tYWludAorMzgwOTggOTNiMWIwYmViYTU5ZjkwMzYyNDdhNjU3NjBjMWMyMTVlODZkMGI2YSByZWxlYXNlMjQtbWFpbnQKKzM4MDk5IGFiMWExN2M2MzNhZWJlOTcwNGE0OTllY2Q4ZjU4N2ZhMmEwNWE1ZTEgcmVsZWFzZTI0LW1haW50CiszODEwMCBhNGQ4NjllY2VmMzM4YmViMzJlZjIyMWNkYzQ3ZTFhYWU3YmExN2I5IHJlbGVhc2UyNC1tYWludAorMzgxMDEgYzBjYzY2MDFkZGFkYTJlYTUyMGU1MWFlNWQyMjFmNmMyMjQ2NDBjYiByZWxlYXNlMjQtbWFpbnQKKzM4MTAyIDkwY2QyNGExZWUxMjQ5NjEwMjRjYmVmM2U2MWUxMGNhNGVlZjg1NTYgcmVsZWFzZTI0LW1haW50CiszODEwMyBhZWEyMjM3YjM4OGZmNzJmZTk2OGZjMTEzZWQ3Mzg4NGI1MzFiYWYzIGxlZ2FjeS10cnVuaworMzgxMDQgMjkyMDY5MWY2M2YwNjg3Y2JjNTAwYWMzMjAyNTM4NTJmZjJiYTBmOCBsZWdhY3ktdHJ1bmsKKzM4MTA1IDkxNDUzNGY2ZWY2MTI2YTQ2MmYzZjZjZTVhODFhODcxYjc1ZmE1MDMgbGVnYWN5LXRydW5rCiszODEwNiBhMTVmYTA1OWY5ZjAzMDA3ZDE3MzU2ZTU1ZjQwMGU4MzJhNWI2YzA5IHJlbGVhc2UyMy1tYWludAorMzgxMDcgYzllNWQxZDFlODg3Y2MwM2FjNWZlODgwOWMxNDg5ODMwMzE1ZjJmNSByZWxlYXNlMjQtbWFpbnQKKzM4MTA4IGRmMGMyZjNhY2M3Yzk2MWIwOTcwNDllYjRhODA4OTMxZTBiMjM3ZGQgcmVsZWFzZTIzLW1haW50CiszODEwOSBiMDQ0NzM1YzkyN2IxMDQyNjEyNzg2N2ExNTE4MDI4NDA3ZWI0ZWEwIGxlZ2FjeS10cnVuaworMzgxMTAgNDYzNTM1NjhlNDBkOTlkM2NlYjUzMWY3MTJiNmYyODhlNWM3NWQyZSBsZWdhY3ktdHJ1bmsKKzM4MTExIDk5ZWJlYzJiZTAzMTI5MjFmODM2YmJjNWE4NzMyNTkxNzI5Mjg2OTQgbGVnYWN5LXRydW5rCiszODExMiBhYWJhMWNlNGIzY2EwNWZkOTIwZDZjZDcyZjYyNGQ5NWRjZGFmOTk0IHJlbGVhc2UyNC1tYWludAorMzgxMTMgODZjM2E3YzZiMDBhMWFiMjgwMmIyNTU1OWFkMTJkOTJkYjE1MmY4YSBsZWdhY3ktdHJ1bmsKKzM4MTE0IGY1NGUxNDAwMGQ2YmQwZTJhZjFhM2NjOWI1ZjJjMTkzODU5ZTQzM2QgbGVnYWN5LXRydW5rCiszODExNSBlODJkMTgzMjU4ZjljMTA2NGE4ZmU1ZDM2NzMxMWVmNzM0N2Q1ZmZhIHJlbGVhc2UyNC1tYWludAorMzgxMTYgNTc5OGFhNjU0ZWM2NDBkOGRhOTk1MzEzMTYzYmMwODRmYjRhNzYxNyByZWxlYXNlMjMtbWFpbnQKKzM4MTE3IDI4ODkxZGMyNTU4MGNhYWM4N2IwYzBjMmFiMGZmMjkzOTI2OWI4MWIgbGVnYWN5LXRydW5rCiszODExOCA1ODQwMjNkYWM0MDY5MTViNTY4NzJkMWM4OGEzNWE3YWUyOGIxMjQ5IHJlbGVhc2UyNC1tYWludAorMzgxMTkgNGVjMDA2Y2EyYjkxYmVhN2U1MmQxODI0NWEzZDAxNWIxNTNhZDdlNCByZWxlYXNlMjQtbWFpbnQKKzM4MTIwIGU4MTE1MjE1MjQzM2ZiMThhZGQ0ZTlhZDAyOTdkNzBhZDg4MDc3MzcgbGVnYWN5LXRydW5rCiszODEyMSBjNzAyMzkwYThlMTIyMmU5NzkwMDdlMWNhNTNhOWQ2NDg0YzRlODk5IGxlZ2FjeS10cnVuaworMzgxMjIgMGQ5MTYzZGE2MWEzYmIwMDM1NDk3YmQwMDBhYzNjNmQ5MDU1ZDhiNCBsZWdhY3ktdHJ1bmsKKzM4MTIzIDY0NjE5NWI1OTIwNTc3ZDRmNWI2MmVjNThmZWFiMmRlZGU4YTI1NDQgbGVnYWN5LXRydW5rCiszODEyNCA3NGE5MWU0NTU5Y2E1YjI1MzIwMzUzNTViOGQ4MGNjNjg0Mzk2ZjlkIGxlZ2FjeS10cnVuaworMzgxMjUgMzIxYmMyZDQ5YTVhMmUxMGZlYzRlNDNkYzBkYmU4NTBjMTg4MjkyNSBsZWdhY3ktdHJ1bmsKKzM4MTI2IDU4NmE3NmY5NmIwOWRkNGYyNGJjMzllNzg3NDAzOGRmZjY0ZWRjYWYgbGVnYWN5LXRydW5rCiszODEyNyA1ODk4MWZlOTBiZWZhNGU3MDA4NDc4YzlmMmQ4ZDYyMjRiMDIwOWM4IHJlbGVhc2UyMy1tYWludAorMzgxMjggMTkxNGM0ZGI0YjI4NjBjOTY1NjNlNTBiOGE4YjhkZDczNDBlMzIxNyBsZWdhY3ktdHJ1bmsKKzM4MTI5IGIyZWNkYTRkZDcwZmRmNjhjMDUwYmVkOGFjZmQ4YjIyZDllODZlYjMgcmVsZWFzZTI0LW1haW50CiszODEzMCBhZjAxMzM2ZmYxOWRiMzA2ODI5NmE4YTY4MzJiNjI5YmFmNmZjMDQ2IHJlbGVhc2UyMy1tYWludAorMzgxMzEgMDQ0MjcxNzRjZjZhYjEzZjdlZjliZjhhMTc1MTIyMTRiNzkzYWYzYyByZWxlYXNlMjMtbWFpbnQKKzM4MTMyIDA1NWRkN2Y5MGIxZWE4YjZlZTZjZjg1NWJlYjhjNWZmZDVkMGNjZWQgbGVnYWN5LXRydW5rCiszODEzMyBhOWEwMzM2ODI5YmEwNDAzZWM3YzEzZmJhOGMwNWQzMmM1ZjU1ZDZmIGxlZ2FjeS10cnVuaworMzgxMzQgMDAwNmIyZGQzN2MyMzY5MWQ2MjFlYjRiMzA1MzM0ZDlmMzY3ODhiYSByZWxlYXNlMjMtbWFpbnQKKzM4MTM1IDAwNTYyZGFiZmQ0ZjM3YjgzMDg3YzY1YjQ1Mzc5MzNjNGU2YmUyOGEgcmVsZWFzZTI0LW1haW50CiszODEzNiA0YWNmN2FiZTU4MjU3N2VlNmVlYWQ3MThkYzc5Njg2MmZmZDRiMjg0IGxlZ2FjeS10cnVuaworMzgxMzcgYTEzZDk0NGNhNzZjOTc2NGVjMWViMWRiNGVlYjEwN2NkNTIzMzQ5YSBsZWdhY3ktdHJ1bmsKKzM4MTM4IDIxZGQ1MjRiZTAzNmFjYTRmZmJhZGJiNmM4NWU5NTU1ZThkYjkyNGUgcmVsZWFzZTI0LW1haW50CiszODEzOSA3MmNkOTNmNDYzYjVhZDE5YTBiNDcwOTYwODFhOWRhNTc4NTU2ZmQzIGxlZ2FjeS10cnVuaworMzgxNDAgOTM3NzJiNzE2ZTNmOTE3OGNjNmRjN2MwNDM2YTYxM2JlNzEwOThlZiByZWxlYXNlMjQtbWFpbnQKKzM4MTQxIGQ4ZWM0YWZhMWZmYjBhZjJmYzA5MTQ4YjU5Nzk0ZDdiOTdkZTAyMGEgcmVsZWFzZTI0LW1haW50CiszODE0MiBlOWNlZGU5MWQzYzMyZjZjZDFiZWU0NzI5OWJmZWU4OTRkNmE5MjA5IGxlZ2FjeS10cnVuaworMzgxNDMgYWZkOWI4MmU2OGYxZjhkYTU0NjE1YzNiYmZiZWMxNzE2OGYwYjgyNyByZWxlYXNlMjQtbWFpbnQKKzM4MTQ0IGIzYWY3YzZkYjFjNjBkZGQ3MTczNWJiMDM4NjQ1MjAyMWRhNWRjZWEgbGVnYWN5LXRydW5rCiszODE0NSBiYThjM2VhYTQzYTU5NzI2YmI0MTcyZDlhYjU0YzVjOTVmMjQxMGM1IGxlZ2FjeS10cnVuaworMzgxNDYgYjJjOTk4MTk4MzA0OWM3ODIxZWFkYWNmNDUzMTEyYmI2ZmZlN2NkYiByZWxlYXNlMjQtbWFpbnQKKzM4MTQ3IGVhYjE3NGQwZWQwMzFhZDVjZjU0NGRmNzVlZWQ2M2I1ZWU5NTJhOWMgcmVsZWFzZTIzLW1haW50CiszODE0OCBhOGE0YWZlMThiNjEzNGEzMDM0MzU3ZWY3MzMyMmY5OGUzM2M0NTQwIGxlZ2FjeS10cnVuaworMzgxNDkgZTIyMWQ5OTU0NjI2ODk1YWU1MDA4YjNiOWRmMGNlZmEwNTc5NDk4ZCByZWxlYXNlMjQtbWFpbnQKKzM4MTUwIGY3NWFjODZiY2VmNDRlZjRmODBmNDU3Njk5ZWFlYzRjOWU3YTQ4NWYgcmVsZWFzZTIzLW1haW50CiszODE1MSA1N2JmZWI1M2YyZmEzNGIyMjNmZDdlNTUwMDM4MTcxNDA2Y2Y1NmY5IGxlZ2FjeS10cnVuaworMzgxNTIgM2VjNTRjNWY3MDgxNDhjYjI2MmRkMjFjOGEzNTFkYTUzZDc0MjViMiByZWxlYXNlMjQtbWFpbnQKKzM4MTUzIDVkYzI3NGUxNTgyMjc2NmJiY2IxMzZlZTliZDY5MjI0MzU0Y2IwZjQgbGVnYWN5LXRydW5rCiszODE1NCAxODEwZGZkNjE1YWU3ZGZkOGFmMTdmOThkOTU3OWQ4YWUxNjk3ZmU0IHJlbGVhc2UyNC1tYWludAorMzgxNTUgNzYyMjkwOTY1MWM1M2Q3OGJjOWY3YWVjMmFmYzY4NzYxMWU3N2Q2ZiByZWxlYXNlMjMtbWFpbnQKKzM4MTU2IDUzNjhkMmI3ZDY2YTBhNTdlOWZhYWFiMTlhN2I1NjgzZjQzYjRlMGYgcmVsZWFzZTI0LW1haW50CiszODE1NyA0ZDM4M2I5OThiYjQ4ZjQ3Njk0MjBhMWU3NzU2MWMxZGIzYTc3NDc5IGxlZ2FjeS10cnVuaworMzgxNTggY2Q1MTc3MDFmZDkzYzk0NDhjNTgyMzcxNDI3YWE4NGYwNTcxNThhNiBsZWdhY3ktdHJ1bmsKKzM4MTU5IDNlOWE0ZDUzMWU1NjNkZDk0ZDgzNmFiOTQ4MTM4M2QwNDA1NjljNGIgbGVnYWN5LXRydW5rCiszODE2MCA0MDcyNWYzMDRlMThkNzNkOTQ4YWUxYTBlZTkwNTA0ZDZhM2EzNDRjIGxlZ2FjeS10cnVuaworMzgxNjEgNjdmMjE5MGUxZjZkOWI2NTA1NTE5MDEyYWE5OTA0MzIwNWFhM2RiNiByZWxlYXNlMjQtbWFpbnQKKzM4MTYzIDU2ZTYxMDMyN2I4MTZjNWJlN2I5ZGY5NGRkNzE2YTBhYzU5YmVmNTAgbGVnYWN5LXRydW5rCiszODE2NCBkYzlkMGE5ZWRlODg2NGQzYmI2NzkzNmRiNGU3MTRhZDk3YWIwYzEwIHJlbGVhc2UyNC1tYWludAorMzgxNjUgZGYzODBlMTk2YzRiNWFhMzQ0NWEwNjcxZDIzMjgzZWY5NTE5NmY0NiBsZWdhY3ktdHJ1bmsKKzM4MTY2IDFkNjI1ZGFlZDU5NDQyODIzNjliODVlYjgwZTUxMjlhNjMyZGFmOWEgcmVsZWFzZTI0LW1haW50CiszODE2NyAxZjdjZjg1MjFiYjU4ODZiNWEwZjgyNDIzYjRkYzQwZjJjM2E0OTdhIHJlbGVhc2UyNC1tYWludAorMzgxNjggOTk4ZmIxZTFjOGU5YTZkMjNjYTJlNjYzMmIzM2VlNWNkN2NiNjk0MyBsZWdhY3ktdHJ1bmsKKzM4MTY5IGNiMzBjZmNiMzllNzQ0NTcyYTQyODdjZmJiM2UzZjBhODQyYzZlOTUgbGVnYWN5LXRydW5rCiszODE3MCA5OTEwNDFmNzY0NDc4YzkwNWFlZmIzOTMwZTczOTZiODQzMzIwNmIwIGxlZ2FjeS10cnVuaworMzgxNzEgMGMzMjYzMjdlNzIyMzkxYjZjNjRjYzM1YzViZjcxZTQ3Y2ZiMGRkZiBsZWdhY3ktdHJ1bmsKKzM4MTcyIGYxYzM1ZGE2NGQ1NTRkM2Q2YTVjMDU0YTgxNDQ0MzEyYWY4MTk4ODggbGVnYWN5LXRydW5rCiszODE3MyBmMDBiYzI3M2FlNzBkMWU5ZGJhZTFjYzRkNDlkMWE0MGQzNjA2ODVmIHJlbGVhc2UyMy1tYWludAorMzgxNzQgZThiZjYyMDgzYWM0NDQ2ZjMyNmYxOTM0OWNmMWMwZmM1Y2I2NGEwMiByZWxlYXNlMjMtbWFpbnQKKzM4MTc1IDYwYTRiMDY0YTI0ODBhNzA5N2M2ZDJkMjZhYWY1NzUxNTQzNmQxNGQgcmVsZWFzZTIzLW1haW50CiszODE3NiBiYmNkODEyN2IzMjY4Mjk0NjViYjQ0YWIwZTNkYmNlOTgyMDc1MWU5IHJlbGVhc2UyMy1tYWludAorMzgxNzcgNjEyN2MwODlhMDZjOWUyMmI1ZTRjZGU3OTAxYTNjZDdhMzQwNmRkNyBsZWdhY3ktdHJ1bmsKKzM4MTc4IDc5YWRlMmRkZDMwNjg4MWQxNDRhMjUxNWQ3NWM2NDk0NjdjNTY1NGUgbGVnYWN5LXRydW5rCiszODE3OSA3MjQxN2ZhMjFjN2ZjZDc1ZTk1YjdhOWI1ZjUwNTQ2ZTM1ZTllZjA4IGxlZ2FjeS10cnVuaworMzgxODAgMzIxNjNhOGMzYjY5ZDM4NzBiNWZkZjQ0M2NmYzJiNjdjOTg0NjFmYiByZWxlYXNlMjMtbWFpbnQKKzM4MTgxIGU1OGNlMDQwNjZjZDgyMmEwY2RlYTRiMzJlZTYxNWY3NDJjN2M4MGQgcmVsZWFzZTI0LW1haW50CiszODE4MiBhNmM4MWFkMWY0NGNiNzQzMGJjZmEwNjQ5ZDkzMDJhZTg2Mjk0ZmMwIHJlbGVhc2UyMy1tYWludAorMzgxODMgYWQ4ZjllNzVmNjFkMjQyMDhmNTRlZWYzZTgyNzk4NWE0NjhjNDI3NiBsZWdhY3ktdHJ1bmsKKzM4MTg0IDJiYmM4YjRiNWI5Mzc1YzIzNGI4NWJhMzUxMGI4MGU1ZTU4YjExMGEgcmVsZWFzZTI0LW1haW50CiszODE4NSAwOTc0Mzc2MzQ5Njg5YmIyNjE2NThmMjJjYmVjNTdjZGQ2MzhhNDJhIHJlbGVhc2UyMy1tYWludAorMzgxODYgZjFhZTQxZThhYmYzODkxZTk2YTY3NmJlYzk1ODg4NGRjMjdiZGIyOCByZWxlYXNlMjMtbWFpbnQKKzM4MTg3IGI2NDdlZGQzYjk2YjgxZjVjNWNkNzc0YWExZmQ3YjgyNjcyYmY4YWIgcmVsZWFzZTIzLW1haW50CiszODE4OCA0MWNhN2I3NjhiNGZmNGVmZTU4NGY3ZTQ0ODc2OWI3NWExZDg5OGNiIGxlZ2FjeS10cnVuaworMzgxODkgM2E5NTBmMWFmYzU1ZmYzNzZiNzhiY2M1ZGU2ZjcxZjFlZTMxMGE0MSByZWxlYXNlMjQtbWFpbnQKKzM4MTkwIDlkZDg3YmE2MTc5NTUwMWEwNzk0Njc1NTViMzk0YzEzMjRjNjIxNGYgcmVsZWFzZTIzLW1haW50CiszODE5MSBlZTgwOGUwOGRkNmZiODk5NTVjMDU0ZGE2NjU2MTVlNmFlZmMyODQ0IGxlZ2FjeS10cnVuaworMzgxOTIgMDY2NDNmMDcxMzM1MDkzMDQ5YmZhYTI5ZWYyNDI3NDgxNGQyZmE5NiBsZWdhY3ktdHJ1bmsKKzM4MTkzIDRlNWYwNmM0Zjk1NzljYmM3YmJkNTZmNGM0MTVmYzg5MjcyYzg4YjcgbGVnYWN5LXRydW5rCiszODE5NCBmZmU3NTQyZjhmMWY3YTc4NDU0N2JjMTYzNzI0MGY2YjllZGY1ZWE2IGxlZ2FjeS10cnVuaworMzgxOTUgOWNhZjljZDU0NTNkOWU5NjI1NjFlNWQyN2JkMjU1MWEzZTFhYWQ2NSBsZWdhY3ktdHJ1bmsKKzM4MTk3IDQ0NjExZTU0OTllN2MyN2U3NmVkNjIyMThjMzQxMDY1NGNkN2JkMTggcmVsZWFzZTI0LW1haW50CiszODE5OCAzZmM4ZWNlOWQyYjgwYTQwMGFhZjA4OGIwMTMyZjJlOWJiZGEyMzZhIGxlZ2FjeS10cnVuaworMzgxOTkgYTYyYjNiNGZmNTJjYjkxODk3OTA1NDI0YWMxMGQ5N2M2YjU3YmVlMiByZWxlYXNlMjQtbWFpbnQKKzM4MjAwIGFlYzU5NjY1MDI5MjM0NDI2Y2YwMjM0ZjY4ZmI3MTA0ZmY2MDkxYjcgcmVsZWFzZTI0LW1haW50CiszODIwMSBkOTI2YjhhNWVmNmUzNGEyNDNmYzBlZjQyNTZiYTQwYzNlYzcwZDYwIHJlbGVhc2UyNC1tYWludAorMzgyMDIgODRmNDNkM2ExNTM1NGEyNDQ4NTRjYzRmYmRiYTlkNWUzMDVjYzE5YSBsZWdhY3ktdHJ1bmsKKzM4MjAzIGU2YmYyZTcyOTQxZWUwZWVmMzUxYjA3NTBmMWRhY2NjM2I4OTRlYjkgcmVsZWFzZTI0LW1haW50CiszODIwNCBlMTVjYjYyYjNmZmJkZTBiMjdhMGQxMjRmMzlhM2ZmMTc0ZjM4ODdlIGxlZ2FjeS10cnVuaworMzgyMDUgYmEyNGEwMzI0YTAzM2FlY2QzN2Q2MDY3NzVlZWI2MjZkYmExZDkxMiBsZWdhY3ktdHJ1bmsKKzM4MjA2IGRmOTVhNDE1MTVjNDE0NGNhYWM1YWM5ODAyOTUxMGEwODU1N2IzZGUgcmVsZWFzZTI0LW1haW50CiszODIwNyBiZTQ5MjllNTE3OWJjMGIzMjliMTE0OWQ0MDJjZTFiYzJlMTk0OWNhIGxlZ2FjeS10cnVuaworMzgyMDggZjgwYmI4YWZmNDE5MmZjZDIyNDQzZDZjNWE0MTU4OTE0Y2Q0Yzk4MSBsZWdhY3ktdHJ1bmsKKzM4MjA5IDhmOGY1NjBjZWM5N2VjNWJiYjhkMTg0MTA5ZjI1MDVjMmM3MDFkZTUgYXN0LWJyYW5jaAorMzgyMTAgMjA4MGM4YzQ3NzI5NzdkODk4NWJmMzZiNTk2MGEwMDkxNWQ2NDU1MiBhc3QtYnJhbmNoCiszODIxMiBmNDJhN2MzMzVhNWI5YWIwMGMwMzQyMTNhZWMyMTYwODQzYTM5YTkwIGxlZ2FjeS10cnVuaworMzgyMTMgODI0M2U1MWEyMmRlZWZlNjUyNGMzYjAzZjVkOWFlOGFhNDAwYjk3NyBsZWdhY3ktdHJ1bmsKKzM4MjE0IGEwYzBjZDNlODFmZDQ3N2I4Y2Y1ZTBlMDc2YTUxNjU4MjdhNjMwNGIgbGVnYWN5LXRydW5rCiszODIxNSBiYWViMDlmNjBjODI4MjY1YWVkMGQ1YzNhODM4ZmVlMWE2ZWU5ZDE3IGxlZ2FjeS10cnVuaworMzgyMTYgM2ZlZTdjOTExNmM5MWZkOTUwYmM2ZjY2MzA1YTUwNzdmNjVlYzk3YiByZWxlYXNlMjMtbWFpbnQKKzM4MjE3IDI2Y2NjZjNlODQ4Mjk2MjZmNWIwMjFiNzVkYWVjZDM1YTk5MTU1OWQgcmVsZWFzZTI0LW1haW50CiszODIxOCBhOGVjZDRhOTY4MjU2OTUxZjk5MGM0N2NjMDRiZWM2MDBlOTEzN2I5IGxlZ2FjeS10cnVuaworMzgyMTkgNjNmMzQ0NWYyZjU5NzM1MDc3OGM4ZDc0NGQwNzdhZWYwMWI5YmJjOSByZWxlYXNlMjQtbWFpbnQKKzM4MjIwIDU2ZTBjYzQzN2I4YjUwNWYyMmE0Y2Y0NjIwOGFhYTEzOWRjMGRmZTEgcmVsZWFzZTI0LW1haW50CiszODIyMSA2ODAwNjAwMjc5ZWQ2M2UxYzVmZWFhNWRkYTZjZWNkY2NlNzVmNmE3IGxlZ2FjeS10cnVuaworMzgyMjIgZjI2M2Y5NDNlZjdiMjBhYTBmNzVlNGNhNGYxYjVjMTk2YWMwMTg1MCByZWxlYXNlMjQtbWFpbnQKKzM4MjIzIGExMjNmYjRkNDViZjRhNjdkNDUwMjUzMmU3NjRkODUxMDM5M2ZhY2UgcmVsZWFzZTIzLW1haW50CiszODIyNCBjYTdmNDMxNWIyMTI2ZjdjNjRmMjM1MzIzMTRkZmU0MmEyZTIzMjY4IHJlbGVhc2UyNC1tYWludAorMzgyMjUgZTUxYTgyMTYyODQ2NGYyNWNiYWI2N2I0YTA5NjU4YjczMDUwMTVlMCBsZWdhY3ktdHJ1bmsKKzM4MjI2IGIyZDM4NzkwMDRjZDA2ZGMzMTViNWRlZjIwN2E2NTgxNmFmYmE2NmMgcmVsZWFzZTIzLW1haW50CiszODIyNyBiN2JjYmUzOThiYWE2ODlhZGYyODQ1YjdkMjQwOGMwODAxNWQyODQwIHJlbGVhc2UyNC1tYWludAorMzgyMjggYjFhODQyMzNkODU1N2QzZTIxOWZkZDA2YTUyZTdlYzNiY2UzNTExMSBsZWdhY3ktdHJ1bmsKKzM4MjI5IGYwZGI5YjE4NmYzZGRjMGUxYzcxZGIwY2E5NzE3YmIwZGYwMmQ0NDcgYXN0LWJyYW5jaAorMzgyMzAgZDgxYjYxNzNmMDUwYmY5OGNkMjgxNjQyYTE1ZWQyNmY1Y2NmMTA0ZCBsZWdhY3ktdHJ1bmsKKzM4MjMxIDIzMzY2ODg5YzZiOTRjMmFiYjdiNWQ3OGEwNTA3ZjM0ZjllM2ZlMGIgbGVnYWN5LXRydW5rCiszODIzMiA4NjE4MTY4ZGNhMjcwNTQ1YmI1ZWFmYjAwZGFkZTNjN2UxOGQ0MTNiIGxlZ2FjeS10cnVuaworMzgyMzMgY2MyN2IyNDk3NTVkZTZlZWRhNTA1NmRhZTMwOWM1NTA3OTgyYzU0YyBsZWdhY3ktdHJ1bmsKKzM4MjM0IDM1ZjMxNzkwYzZmOTZiYWZhOTE2ODU1MDE3MDUxNmVkNjFiYjY0OWUgbGVnYWN5LXRydW5rCiszODIzNSAxOWU2MWEyYTU2MzIwYzY1MDYxZjQ0NjU4OWIxYzg3MjI5NTgxMDQ4IGxlZ2FjeS10cnVuaworMzgyMzYgYWEyNDZiOWY2MTg0ZmI5YThmZWZkZDFiOWIwMjMxOTBjYjZjMjZiMyBsZWdhY3ktdHJ1bmsKKzM4MjM3IGIyMmViZmM0ODhmMzAyNGYwZDM4MWRjYmMzNTJkYThjMzFiMjQ1NTcgbGVnYWN5LXRydW5rCiszODIzOCA1Y2Q0ZmZmYWY5MTA1YWY4MzQ2NmE4ZDkxMzI5Mzk0N2I5MjUzNjcwIGxlZ2FjeS10cnVuaworMzgyMzkgZGJiZTgzYzMyOTRhM2UzMWIwYTA5N2Q3NjdkZjFiNWM2YWRjMWM0OCBsZWdhY3ktdHJ1bmsKKzM4MjQwIGZmNzNlMTVhM2ZiOTIzYTE5OTJhNjc0NjA5YzVhODQ0MGE0ZTJmYWMgbGVnYWN5LXRydW5rCiszODI0MSBjZTIzMjA3MmVhZTY0OTNiZDE3NGZjNDU2YWNkMjQwNDA3NzY1NDdkIGxlZ2FjeS10cnVuaworMzgyNDIgOGE4ZDg0NDc2N2I2NjYyZjA1NTcyMmFlOTk5M2VkYjE2NGVkMmYzYSBsZWdhY3ktdHJ1bmsKKzM4MjQzIGNkYWExNjg2OTYwODU1ZGRkODg3NWE2M2U1OTIyYzIwODQwZjBlZGUgbGVnYWN5LXRydW5rCiszODI0NCBiODk4ODEzNDgzNzUzNWQ5MTJlYzFhNzVhYzMzMjMwNWViNDNjNWM4IGxlZ2FjeS10cnVuaworMzgyNDUgOWUzMGQ5ZTJiNDMzNjM5MjU1NzY2YTdiNTkxYzY2NmY3ODA5OWM5OSByZWxlYXNlMjQtbWFpbnQKKzM4MjQ2IGM1OTc1NDMzYWE2ODc3ZjlkODI0YmZjYTUzN2VlZDlhMWJhMmQwYjUgbGVnYWN5LXRydW5rCiszODI0NyAyYjQ4NTk3NGI0NzE1YmM2MjZhYmU4M2EzZjM3OWVmZjJkZmY3MjJmIGxlZ2FjeS10cnVuaworMzgyNDggYTk0ZGEyYzZhNjI2ZTRkMzRkOWI2OTE1ZjhlY2FlZGY0MmJhYTZjYiByZWxlYXNlMjQtbWFpbnQKKzM4MjQ5IGEwYmM0NDE5NjYzYzMxMDVlYTE0MzhmMjFhNjUzMzE3MTc0NDc3M2UgbGVnYWN5LXRydW5rCiszODI1MCAyODdlNzFmNDRkNzk2OThkMjY1MzU5MDFkMGRkNmYwMTMwZjgxNTZiIHJlbGVhc2UyNC1tYWludAorMzgyNTEgMWFlYTgxNTUxYTIyMmY2YmZiMjI5ZmQ1ZGRmZDdiNjRjNTBlOTA0NiBhc3QtYnJhbmNoCiszODI1MiBiYTZlMTcyNzFjNjI4OTE2OTExMjE1ZGUwNzU3NjNlMWJjYzBmNzZjIGxlZ2FjeS10cnVuaworMzgyNTMgNGJkMTgwZDE3MWNjMDM0NDg1NzEwZWYzZTQ5Y2RkZDQxNTkzZTNmYiBsZWdhY3ktdHJ1bmsKKzM4MjU0IGEzMTY4MWE2Y2Y4ODcyODc4M2ZmMDA0OWI2MTk5MjAyZjNlZGViYzcgbGVnYWN5LXRydW5rCiszODI1NSAxOGNmZjNlZDc0ZDNkOTZkZjljZjA5NmFhYmE2YzlhMGUzYzdlOWYzIHJlbGVhc2UyNC1tYWludAorMzgyNTYgYTIxNjAwM2NlZjA0NDAyZDgwZTE1NWRhZjVhMzAwNzBkYjdmNGEyNiBsZWdhY3ktdHJ1bmsKKzM4MjU3IDM1MzNlM2NiN2I5N2E1N2U5MzIzOTVmZDRhNGM1NzE2MTAwMTg1ODQgbGVnYWN5LXRydW5rCiszODI1OCA5MWQ1NWEzMDM4MmNiYjA4MTQ3OWYyMzg2NDVlYmU0MDQ4Nzc4YmZhIGxlZ2FjeS10cnVuaworMzgyNTkgZjI1ZGNkN2YzZTQ4ODBjMDQ4N2IxODAwMjE1MmRkMjdmY2E1ZjhmOSByZWxlYXNlMjQtbWFpbnQKKzM4MjYwIDU5OGQxNmZhMDJjMTk5MTIxNDhjNGQzMmU3Zjk5NTcxMGRhNmE1OGEgbGVnYWN5LXRydW5rCiszODI2MSA3MzkxZTE4YjBhN2NkZGVmNjQ0NzQ5NmFiYzdlMzM1MWU1MGIwMTRjIGxlZ2FjeS10cnVuaworMzgyNjIgMjhmODQ5Mzg0NjhkZWExZTUzYzFhM2Y0MGIzM2JjODc5MjNmZjMzYyBsZWdhY3ktdHJ1bmsKKzM4MjYzIDBhMTYwOGE1ZWIwNWFlZTQ5YTQ4Mzk1NzA0M2E2MmY4YTIxNDA1MWMgbGVnYWN5LXRydW5rCiszODI2NCBlMmMxMDk3ZDdlOGZiMGJlNTE3ODMzZDM5ZWJjN2JjYWEwYjlmZGFhIGxlZ2FjeS10cnVuaworMzgyNjUgYjZlYzFiM2I5ZmNlNzljNzdkZjE3MjY3NTg1NmZlZTY2N2YwNGEyOCBsZWdhY3ktdHJ1bmsKKzM4MjY2IGI0ODBhYmFmMWY2ZjZlNmFiN2QyYTUzYTIxNzZjZmRhOTU2ZDVjODUgbGVnYWN5LXRydW5rCiszODI2NyA2YzAyYmIzZmNjYTY3OTA5ODA5ODJlMGYxZDA5ZDEzZTY1NWE5MGQ1IGxlZ2FjeS10cnVuaworMzgyNjggNzA1OWZiOGI5ZWIzOTM0ZTVlZjUxNzA2ZDdjY2FjMzVkMDA1YzM4OCBsZWdhY3ktdHJ1bmsKKzM4MjY5IGM0ZGI5OTJmODQwZjMwNGVkY2E2MGEyNzMyYzkyNDI5NGYzYTZmNGYgcmVsZWFzZTIzLW1haW50CiszODI3MCA0NWEzMjBmMzhjNDg5MDFmMzViYzRjZmUyMTM1NWZlNWU3ZGJjNDgyIGxlZ2FjeS10cnVuaworMzgyNzEgZDc5Njg2MjFkMjhkMmU3Y2QxOTVhZThjMTMyMmNlMTAzYTAzMzIyNCByZWxlYXNlMjQtbWFpbnQKKzM4MjcyIDhiYjQ2ZmRjZThmZDM4NDQxZWE3YzI0NTUyOGQ2NjJhOTU2NjM0ODkgbGVnYWN5LXRydW5rCiszODI3MyBhOTlmNWFkMjllYWM2NGEyYmYwNDdiYWJmOWRhNDVkMjg5ZmI2NDMwIHJlbGVhc2UyNC1tYWludAorMzgyNzQgOGVjYThkOTgwMjYwZGVkMjVhMmNjZTE4ODdiMWNlMzVjYmNlMThlNyBsZWdhY3ktdHJ1bmsKKzM4Mjc1IDEzYTg1ODA2YmE0OGM5NzkzMzEwYTcyODQ3ZmQzNGI4MTZjMzk0NzMgbGVnYWN5LXRydW5rCiszODI3NiBhODU5OWM3ODgyMThkODg4NTIyN2FlMzlmZjVjODljOWM5YzkzYjlkIGxlZ2FjeS10cnVuaworMzgyNzcgNDI4MmY4ODJiMjg1OTU2ZTNiZWFkN2IxMGIzYzRiZGJkNjg4NTE2YiBsZWdhY3ktdHJ1bmsKKzM4Mjc4IGI5Mzg0NWNlNDQ1NDk1ZTNiNDg1Y2I2YjM5YWVkNWYxODNiNzAxMTAgbGVnYWN5LXRydW5rCiszODI3OSBjODhhYjI5MmJmMDUyOGFhOTVhNjcxMmQwZjEyNTlhMDIxMjg1ZDQxIGxlZ2FjeS10cnVuaworMzgyODAgNzJmZDM3M2NkMGY5NWExYzJmNmVkNDVjNmExOTcwYTY5ZjIyMGZjZSBsZWdhY3ktdHJ1bmsKKzM4MjgxIDFkODY2YzAyYThjYWIyMDViYjFhNDAyYmE5NzcwYWU0NWVhNGE5NDMgbGVnYWN5LXRydW5rCiszODI4MiBhNzBkZDg3NjdiMDcxYjM0MjY2ZGRiYjA2MmU1YzYzMjJmNGY4ODhlIGxlZ2FjeS10cnVuaworMzgyODMgMDJmMzk4ZmJiMGYwNmQxN2M0NWIzYWIwNmU0MjhiYzhjMTU4ZTA3MyBsZWdhY3ktdHJ1bmsKKzM4Mjg0IGIzMmFlMGVlY2RlZTcxYWQwZmM0Yjc4NDllY2JlNzJmNDlkZmU3NDYgbGVnYWN5LXRydW5rCiszODI4NSA4ZjU3MzBhM2JjNGFiZjcyN2U5NDM3MzQ2Njk0NWQ2OTgyMDY2M2Q4IGxlZ2FjeS10cnVuaworMzgyODYgMzQ3MzkyYzhlYjhiMzZjNTNjYjVlZWEyMGIyMTEzNjZkYzMzNjMzMyBsZWdhY3ktdHJ1bmsKKzM4Mjg3IDhmYzAzMGM1YzcwYWJlMjkxOTEyNDU0NjRmYzg4ZTNhOWI5M2VlZDAgcmVsZWFzZTI0LW1haW50CiszODI4OCA1NjNjYmY0ZDZiZTQ2NTY1ZjQ1ZjA0MDViZWQ4M2UyMWQ3NWUwOTQ5IGxlZ2FjeS10cnVuaworMzgyODkgZmU3YTE1NDdmMmZhZWE0NDhmZWFiZTZlNTE2YzNiZTQ2NzNhZDExZSBsZWdhY3ktdHJ1bmsKKzM4MjkwIGZhNjVlMzQyNWE0YzVhZDZkMWEwZWQ2MDcxZDRlMWMwNTg5MDVhMjUgbGVnYWN5LXRydW5rCiszODI5MSA2NTJiODVkMzVhNzVkZGExMGUyZDMzMWE1NzZlOTNhMGY3MzcwN2VkIGxlZ2FjeS10cnVuaworMzgyOTIgMjY5YTJjMTRiYzU3MDg0ZDM2ZDgzY2JkMWNlYzk4MzJhYmZmZWQxMiBsZWdhY3ktdHJ1bmsKKzM4MjkzIDMzMTZhYTU0MGU2OGM4MDcyODQxOTFlZTk2MmZmMWI2MmQ0NDk3N2MgbGVnYWN5LXRydW5rCiszODI5NCAxMzkzNDM0M2E1M2I4MzI2MzI0MjcxNThiZTVhYzhhNDYwZGVjNWU4IGxlZ2FjeS10cnVuaworMzgyOTUgNTQ0OWI3ZjgwNmZiN2RmMmMyMmVmMzgwMWVlYzE1N2RhNDFmZTNhMSBsZWdhY3ktdHJ1bmsKKzM4Mjk2IDViZDJiM2U0ZmRjYzRmNTcxMzA5MjBjYmU1MDU1MzBjYmY2MjBlZTIgbGVnYWN5LXRydW5rCiszODI5NyA4NDM2YTI5NTU5MWI2OGNhODBhOTA0MWY2ZjY0ZDQ5ZmVhNWQ5YTZhIGxlZ2FjeS10cnVuaworMzgyOTggNGI4ZmE4YjBhZjkxNmVlNWQwNDJmMmFlMmFiN2ZiY2YzZmYwMWQ3MiBsZWdhY3ktdHJ1bmsKKzM4Mjk5IGRjMDljYzliMmVlNmM3OGQyODRkNTNlYTUzM2UwZTAxZjc5MjNhMGEgYXN0LWJyYW5jaAorMzgzMDAgNjg5YzIzMzg1ZTRmOWRkMTIzZDc5MmM3MTEzNzdiYTliNzBhZGEwOSBhc3QtYnJhbmNoCiszODMwMSA0YWYzYmZmZTU2MjAzYWVkMjJjY2UxNDU4Y2I0OGQxMjU4NzhiOThmIGxlZ2FjeS10cnVuaworMzgzMDIgNzI4ZWRlZmIxZTE3MzU2ZThmN2Q2MmJjMDdhNjViYzI2Y2RlNmI4YiBsZWdhY3ktdHJ1bmsKKzM4MzAzIGUxMzA1ODk0YmYwOTZhOGM5Yzk2ZWNhYjc5ODNlMDg0MjQzOTI1NTcgYXN0LWJyYW5jaAorMzgzMDQgNDkwMTdkOWVmNmM5ODZiNjg3MzhmNGYxZTgxYzZhYTg4YWYyMDIzZiBhc3QtYnJhbmNoCiszODMwNSA0Yjc0ZmYwNzk2NTJiZjVkYjAyOTFhOTdmN2YzMzE2MjIzOTg1ZjcwIGxlZ2FjeS10cnVuaworMzgzMDYgNjliNjhmOTFjYzc3NjY5MGNiNjMyM2I0OWU0MzAwYjgxMGNhMTQ1NiBsZWdhY3ktdHJ1bmsKKzM4MzA3IGY1NjQ2MzQ5NGJmZDk0ZWU1YTdkMDk3MDNlZDljMThlNjY5ZTUxNTMgcmVsZWFzZTI0LW1haW50CiszODMwOCAwMzk4MDdlMWU0ZDEyODJiOTcxZjkxOGZhNzExNGUyYWMxYTBiY2E1IHJlbGVhc2UyNC1tYWludAorMzgzMDkgZTFhN2ViODMyY2I1MWFiZjhiN2RmNTJiNWZmZjAyNzBmMGQ1MjIxYiByZWxlYXNlMjMtbWFpbnQKKzM4MzEwIDRhYTU1NGIwMGNiMGI1NTZkMDI4M2MxMzk4MDRiNTg3ODE4OGVjZDMgcmVsZWFzZTIzLW1haW50CiszODMxMSAyMjQ2YWI5MjJlYjQ4ZTQwMDAzN2FmMTg0N2IyOWIwM2ZkOWQyMzUxIHJlbGVhc2UyMy1tYWludAorMzgzMTIgOTU1ZGEwODBiMGNmMzY4MGNiOWQ5N2I2NzI2MTdkOTE1MjViM2VhMyByZWxlYXNlMjMtbWFpbnQKKzM4MzEzIDdkOTk5ODFiMmVjZTMyZWQ3YTg3MjBjY2M2OWQ5MGNkYTg3MWY0NzMgcmVsZWFzZTIzLW1haW50CiszODMxNCA2ZmRiYzRlODMzZTIwZmY5NDY3MjY5NmZjZjgzZjBlYTM0YmY2YTVjIHJlbGVhc2UyMy1tYWludAorMzgzMTUgNzc1YTcyYjlkNTJjZGM3NjhhMjllODUxMWFmZTliYjk5YTJmNmM3MCBsZWdhY3ktdHJ1bmsKKzM4MzE2IGVkNGRjMDVlYTRiOGMxMjZhYTcwN2FiMGUzNjkxOTg4OGI3Y2I2NTkgbGVnYWN5LXRydW5rCiszODMxNyAxOGY2Y2ViZTQ3YWFhZTczNTk5ZDJlM2VjYTljNDYxZWIzYWFiMDFhIGxlZ2FjeS10cnVuaworMzgzMTggNjgzNzE5ZTA0MjE4MTgyYjAyZWQ2YTNjZDg0MGE3N2M3MGI1YzUzZiBsZWdhY3ktdHJ1bmsKKzM4MzE5IGNkNmI1NGJhMjcyZmI0Nzc0YmY3ZDlkYzRiOTRmNzBmYmIxOTM3ZDYgbGVnYWN5LXRydW5rCiszODMyMCBkOTNiNjhhOTlmOTZlMzgxNTY0MmZlMzY0MTNiZWZlZTQyZDhmOTY3IHJlbGVhc2UyMy1tYWludAorMzgzMjEgNmNmMzk5YWFmYzY2OGU0NDI2M2MwYzExYzI3Yjg0MTZmMzk4N2RiMSBsZWdhY3ktdHJ1bmsKKzM4MzIyIDIxZGQ3MzNlYjExOGMzYmFmZTc5Zjg3OGNmNjBjYzdjNzdkZjRjMzEgcmVsZWFzZTI0LW1haW50CiszODMyMyA4YzBlM2MwYTIzM2NhYzNhYzQ3ZjBhNTczYWI0ZjFjZThkMTY4OWIwIHJlbGVhc2UyMy1tYWludAorMzgzMjQgYTA2M2YwZDZkYjI4MGU0ZTQ1ZmRiOWE0OGM2NjYzNDIxNDUyMDk5NiBsZWdhY3ktdHJ1bmsKKzM4MzI1IGFmNjMwZWIyNmQ1OWI3ZjFjZDk0OGNmYjYxZGU4MThkMmQ1YzJkMWUgcmVsZWFzZTI0LW1haW50CiszODMyNiAyOTMxZjY1MDRhZjVjM2Q2MGFlMmJlYTZiY2MwYzVjNmUyMTJkZWRiIHJlbGVhc2UyMy1tYWludAorMzgzMjcgMmVlZTkwZWYzMmFiYzcyNzVhN2Q2Njg1OGE2N2ZmMjQ3ZTJjOGM1OSByZWxlYXNlMjMtbWFpbnQKKzM4MzI4IGFkMTI2MDU0YWRlNTc1MDBjOWU0Nzk5ODNmNjZmMDFkZTAzN2QzYmUgcmVsZWFzZTI0LW1haW50CiszODMyOSA2NzBkZTMwMWI4ODdmMTAxYmFmOTQ1ZTIzODQyZDIyOWZhNjBkZDFmIGxlZ2FjeS10cnVuaworMzgzMzAgNTk1MjNlYjM1YzFkNzEyNmMwMTdmMWQyNDQ4ZmM0ZDkyM2NjY2UzNyBsZWdhY3ktdHJ1bmsKKzM4MzMxIGEwOTNhZWJmMWI0MGU3ZDExNmM3ZGYzNDg2ZWI3YzczMWUzZjZiYzQgcmVsZWFzZTI0LW1haW50CiszODMzMiA2NjA1ZTEyYmMxNmQ3MTNlMzc5MjYwMjMxMGRkOTQxNDFlMTQyOTI0IHJlbGVhc2UyMy1tYWludAorMzgzMzMgNTFhMGYwYWQ0NmFjMGQ5YzMxN2M1ZjgyOWFlYTVlZWU3ODQ3ZWRhNCBsZWdhY3ktdHJ1bmsKKzM4MzM0IDcwYTA0NDk3NTVlMjYxZGI4M2JmY2JiODk1YmQ3ZDhhZjRjNDY5YWYgcmVsZWFzZTIzLW1haW50CiszODMzNSAxZjVjMjM1MTYwNWExNTdkY2UxYzliODcyMDJiNjRmOTYyMjQyZTZkIGFzdC1icmFuY2gKKzM4MzM2IDMyOThhZTZmMzY2NTg3YzA1NzhlMzE4NTE5YzQxNGY5NTEyMTRlNzggYXN0LWJyYW5jaAorMzgzMzcgOGI2NTQ4ZjVmMjc5ZGQ5NGEwZDhlYWE2MzU1YTEyNTk0ZTk3ODZhMiByZWxlYXNlMjMtbWFpbnQKKzM4MzM4IGNjM2JkNGU0ZDlmMGE1NjMxNTNlMWI0Y2JhNDc3OWU3MDE0NTMwZTcgcmVsZWFzZTI0LW1haW50CiszODMzOSAwMTMzYjAyMjYyNmViMmNiNDVmZTY3YjZiYWVlNTdiMDIxMTJjMDljIHJlbGVhc2UyNC1tYWludAorMzgzNDAgZDVkZGQwNmQ1NWZjOWRhM2YxZjRhMDQ4N2ZjMDJmM2FkZTVmOWY0MiByZWxlYXNlMjMtbWFpbnQKKzM4MzQxIDlkNzYzOTM3YTI1YjRiNDhhZjQ4MDBjMjZjYWRiNGEyOWIwZDhhYWMgcmVsZWFzZTI0LW1haW50CiszODM0MiBmZjUzZDE0NzE3YzUyODEzNWE0NTQ0NDY3ZWQ1NDNmZGY5YTlkZjM5IHJlbGVhc2UyMy1tYWludAorMzgzNDMgN2RmMDc3ZjQ3MDU2OTBkMjVjZDdhNTdkZDE4ZjkwODY4Yzg4ZGQwNSBsZWdhY3ktdHJ1bmsKKzM4MzQ0IGQ1Y2U4OGViZGJiZDBkNzUwMTk4YzQ0N2RkMDBjYzVjYmFmZWJlZTkgcmVsZWFzZTIzLW1haW50CiszODM0NSA4M2M5NzViNGEyYzM3MjJhMDZkMmI1OTMzOTgyMmU2YzgzNTMwZTUwIHJlbGVhc2UyNC1tYWludAorMzgzNDYgYzQ0MTMzMDdhMmYzMTBiY2I3Njc1ZTI2YTU3MjE5MmIxYWIzYTFlYyBsZWdhY3ktdHJ1bmsKKzM4MzQ3IGY3MzhkNjRjODI3ZDMwODcxODA2ZmI3MDQ2MjMzNDBmYWQ5YjM2NTYgcmVsZWFzZTI0LW1haW50CiszODM0OCA2M2ZjZDY3ZTMzMjlhYjNjMTIwNmUzZDFjMDJkMzg1MmVhMjY0NTIyIHJlbGVhc2UyNC1tYWludAorMzgzNDkgMmIyNThmMGNiYzMxY2I5NWQxZjEyY2FiMDkxODc0NDFiZGU4YzRjZCBsZWdhY3ktdHJ1bmsKKzM4MzUwIDBmNDFmZTNmYWRmNDVlMWY4OWNiNGIwMmEwZDc3NjE0OGMwOGYxODkgcmVsZWFzZTI0LW1haW50CiszODM1MSBmMjQ2ZTQ0ODU2MzdhOTRlNDQxMDgwZTY1YjU5NWRkNzk3MGMyODZiIHJlbGVhc2UyMy1tYWludAorMzgzNTIgN2Y1MjQxN2U1MzBiMzRkYjI5MDY5YmMyOGEyNTRlOWNiMWQzMzIyOCBsZWdhY3ktdHJ1bmsKKzM4MzUzIDIzNjlkZmUyZGFkNDY5ZWE1YzlkMGYyODk3MjkxOWEzZGEzYzBkMzEgcmVsZWFzZTI0LW1haW50CiszODM1NCA5NzI0MTc0MjYyMjQ3YTNhYWU3MDcwZGQ1ZGQ0MTY5ZjIxYjZhY2JjIHJlbGVhc2UyMy1tYWludAorMzgzNTUgYjc0NTU5NWQ0MWQxZjE2MzQxODAwZGJkMGVjNDNmYmQ2NDQ5OGIxNSByZWxlYXNlMjQtbWFpbnQKKzM4MzU2IGUzZDc0ODMwZWQyZmE3ZDVmM2JjNjJjOTc5MDgyODEzNzhkMDI1NGEgcmVsZWFzZTIzLW1haW50CiszODM1NyBiOWJjNDliNTNmNGQ2MjVkNWM5NDNlNjZjMWY5NTcyYWRlZDM2ZDQ0IGxlZ2FjeS10cnVuaworMzgzNTggMzZhYmRkNDc4ZTA3NDFmMjQwYjQ5OWQ2NzkyMjk4YjMyYzc2OTk2NyBsZWdhY3ktdHJ1bmsKKzM4MzU5IDljNjJlN2Q2OTBhNTJhYTk4NWQwYmJiNmY3ODg3NjFkNGY5NWVhODIgbGVnYWN5LXRydW5rCiszODM2MCBlODUyY2Y2YWI1YjU1MjE3YTk4NTI5NWYwNmM4YWIzOTAzMGU2NjIyIGxlZ2FjeS10cnVuaworMzgzNjEgNGExZmVmZGZjNzkzMDQ2MzMzMWY4M2VmNzg2NTg0ZDMyZmFjMTdiOCByZWxlYXNlMjQtbWFpbnQKKzM4MzYyIDhjOWUzZWQ1OTRmZWQyYzg2NjE5YzI5YWVmNTQ5ZTBhYzM5ODE1YTcgcmVsZWFzZTIzLW1haW50CiszODM2MyBiYjA2NTRjZjVlNTIwNWUzNzM4ZGYzZGNlY2Q2NjFjOTEzYmRjZDQ3IGxlZ2FjeS10cnVuaworMzgzNjQgNGQyOWViM2EzZGRiZjJjMzNhMGUzY2M0MTY2YWQ4NzVmMmVlNmVjNiBsZWdhY3ktdHJ1bmsKKzM4MzY1IDQxZjI5ZTI2ZjY4ZjQ0ODA4ZDM3ZTYyYjJjMTU1NDNhY2JjYTQ4NGEgbGVnYWN5LXRydW5rCiszODM2NiA0MjA5ZWMxNzA2YWJhMTc1N2M0MWFmYzIzYjcxYTg2OTZjZDE2N2RiIGxlZ2FjeS10cnVuaworMzgzNjcgYTcyZWU2M2M2Yzg0OTAyMTZjOTcyY2NlYWNlYTI4OTUzNGM5OTViNSBhc3QtYnJhbmNoCiszODM2OCBmYzU4MGZmMDBmNmY1NzBjOWRjMWU3MGZiN2I3YmFjYmZiNTlmNzM5IGFzdC1icmFuY2gKKzM4MzY5IDZiMWM3YjE4ZjU5ZDg3YjU4MWNiMjM3NDdlZmNiNDVjYThjZjFkMzAgcmVsZWFzZTIzLW1haW50CiszODM3MCA2ZTcwMzNjNzRjNzBiN2MwOGU5ZGM0NmUzMWU1ZjhmZDk1YzA2NDg0IGxlZ2FjeS10cnVuaworMzgzNzEgNjgwMjBiZDFiOWUyZTJlYzkzMTRmM2I3ZDc5NTJkNzQ5ZTM4ZTRjMSByZWxlYXNlMjQtbWFpbnQKKzM4MzcyIDZiNmU2Yjk4MmFjODU3YmY3NWJhN2FjYzA0Njg0MzVjMGZlYWY5NWIgcmVsZWFzZTIzLW1haW50CiszODM3MyAwOGUzY2E4ZmIwNzFmNTlhN2MwMmM3MTBlOTdmMTk2OGVlNThlOTFlIGxlZ2FjeS10cnVuaworMzgzNzQgNGRhNDYyNThiZmY4Y2VjOTYxZjE2NmMyNjdlNjJkYjc2YzI2ZDBjNyByZWxlYXNlMjQtbWFpbnQKKzM4Mzc1IGM5MzM3YzlkMmYyYTk0NjYxZDFlMGFjMDgyZDdhN2VlMmMzYjBkNTkgcmVsZWFzZTIzLW1haW50CiszODM3NiA4ZjYwOWVhYWMzZjAwMmEzMGMwNWZkZDE0MGE0NDRlNDJkN2E5OGIxIHJlbGVhc2UyMy1tYWludAorMzgzNzcgNTE2Y2EwYjkyOTcxYjcwMzllZGI1ZjYwNDIzMzNlMmI4MDVmZGJjYiByZWxlYXNlMjMtbWFpbnQKKzM4Mzc4IGFiYjNjMWFkMDBhN2JiNTFjM2NlZjU1NTc0M2UwN2Y3ZmI4YjA2MTggcmVsZWFzZTIzLW1haW50CiszODM3OSBhZTczMjg2ODk3YTM0YTM5ZTAxYTlmMTYzMzI4ZTIyNzJmYThmOTI5IHJlbGVhc2UyMy1tYWludAorMzgzODAgYzE2NDFlZWRhN2M5Mjg1NTA3MjY5YWNiZmViMWNhNDY4ZWQ3ZjFmNyByZWxlYXNlMjMtbWFpbnQKKzM4MzgxIDQ0MGMyNWJkOTlkZjg1YzQ5NGE5NjFjZTRiYWRmMmE2MDgzZjQ2MWIgcmVsZWFzZTIzLW1haW50CiszODM4MiA4NzIyNGYyYzVlMTAwMDJkYTRkMGRiZDQzYmQ2NDkyMWZlN2NhODI4IHJlbGVhc2UyMy1tYWludAorMzgzODMgYzRmNzZlZDJlYWZhM2Y3YTViN2RmZDhiMjkyYTNiZjk3MTc4ZTk2MCByZWxlYXNlMjMtbWFpbnQKKzM4Mzg0IGU5NDlkNDYzNTcyY2U2NjExYzMxNzM0NDYzNjNlOGY2NmRjYjRlOGEgcmVsZWFzZTIzLW1haW50CiszODM4NCAyNjM5YjEwZGFhOTg1YjIwYjNjYWJlYzQ1MTY5ZDUyM2NhYzI5ZDY4IHJlbGVhc2UyMy1tYWludAorMzgzODYgYmRhOTMzODczNzU4ZTU0ZTNjZDY4OTM3NDI1MWFkM2YzMWQ4NWJhMSBsZWdhY3ktdHJ1bmsKKzM4Mzg3IDE4YmEwODVjYzhiYmJmNWZlYWQzYjhjNTZkNWE2YmExMzI4YTQxMDQgbGVnYWN5LXRydW5rCiszODM4OCAxMzE3NmVkNTJlNjVjNDg0ZGJjZjRmODFmYjhlNzg0NWYzYTMxZmZlIHJlbGVhc2UyNC1tYWludAorMzgzODkgNmYyZGQwODFmZTA1MTI2NjgyMDYxMDJiZmRiZDgyMDFiM2I0ZjIxZCByZWxlYXNlMjMtbWFpbnQKKzM4MzkwIDFjMzQ5MDYwYWMwOGYzNzBiYTZjMjE0YzIzNTA3MTk0ZWRiZjA0ZmIgbGVnYWN5LXRydW5rCiszODM5MSA5MTAzODgwMWViNDVmYzMyYmFiYzg0MzRiMGE0ZjM3NTNhN2JjYWIzIHJlbGVhc2UyNC1tYWludAorMzgzOTIgY2I3ODk2ZDc3ZGU1MjJmMjRiOTFjNzA1YmVkZmU4MjBiY2UzMGM0YSBsZWdhY3ktdHJ1bmsKKzM4MzkzIDkyNWQ1NGRmOTJiZTk1MGJkNWVkYjdlNjdiNWI1Njk0NDUxZjAyY2MgcmVsZWFzZTI0LW1haW50CiszODM5NCA1NDgxMzRiYTI3OWZlYzI5NDAzZWM3ODRmZjZhMjcyN2VlMmY5NTViIHJlbGVhc2UyMy1tYWludAorMzgzOTUgZTMwNzRlOTRmYjc1NWUwZDEwYWZmZWMzMjUyYTMzYTVmYWIzNjYwZSBsZWdhY3ktdHJ1bmsKKzM4Mzk2IDY1ODUxMjc3NDQ2ODE1MTUxMjFiYjIxZmIzYTNhYmJlNWMxMzE5ZDggbGVnYWN5LXRydW5rCiszODM5NyA5YjRlMzE4ZDZjNzI2NzRlZGJhOWUxNzZkOTU5ZjIzZjFjMWY1Y2QyIHJlbGVhc2UyNC1tYWludAorMzgzOTggNmM5MGNiNzY2ZTZiYTQwZTIzZWQyNGEzY2E5M2E5ZmJkODVjNjE5MCBsZWdhY3ktdHJ1bmsKKzM4Mzk5IDg4YzI5ZTUxYjAyOWExOGMyOTJkMjg0ODhlY2I2YmI3ZmFhNmQ2YmIgcmVsZWFzZTI0LW1haW50CiszODQwMCA1ZmQ1MDY1MTYzNjE0ZGRmYjJiMjBkNWIzNmM4MTNhYWU1ZjVhZTA2IGxlZ2FjeS10cnVuaworMzg0MDEgODA0YzU2NzM2NDNlNmVmNTAzOGVlZjJjMjk3N2Y2OGYwNTQyNGQ5ZiBsZWdhY3ktdHJ1bmsKKzM4NDAyIGE0MjI1Y2RjMjA0N2ZkMGQ2MmE3OGJjNzIyZmViZDgyYTE5ZWU0ZmMgbGVnYWN5LXRydW5rCiszODQwMyBmNDMwNzE4ZjhiNDMwZTU1NTE5NTA1MmUzNjFjZWNjZmI1NTZhMDA1IGxlZ2FjeS10cnVuaworMzg0MDQgZjAxMzQyMzJiZDg0ZGIzMzI4N2IxY2RhZGI3ZGUyYzJiZTBiNmVkNCBsZWdhY3ktdHJ1bmsKKzM4NDA1IDBiZTE3MjU5YWFjODg2YzVjNWQ0YjgzNzI4ZDNmMGUxZDE0ZDQ4MmUgcmVsZWFzZTIyLW1haW50CiszODQwNiA3Mzc2NDlhNmM5MzVjOWYwYjA4ZjU2Y2M5MWIxYjA1M2RhMjAzOTlkIHJlbGVhc2UyMy1tYWludAorMzg0MDcgYjg0NmRkMWI5NzUxMGFlOTIzYmFmZjhjMDg2NzFjNDAzYzVkNmFjYyByZWxlYXNlMjQtbWFpbnQKKzM4NDA4IDFjMDcyNjE1ZTViODZlMzZkZmM5NDRiYTc0MzEwY2MwOThlZTA4NjMgbGVnYWN5LXRydW5rCiszODQwOSBjZDc0MzIxZWNkYzQ3YTcxMzE1OGI2NWVmYmQwYzI4MGQzOWJjYjQ4IHJlbGVhc2UyMy1tYWludAorMzg0MTAgNjllZDdlOTEyYjNkMjk3MDE2MWU4NzM4NTdiMGU5YjQ1ZGU2YjRlYyByZWxlYXNlMjQtbWFpbnQKKzM4NDExIGNjZjYyNzJlZWRmNDg0YzU3NDk2OGExNjIyMDY4ZDFkYjVkZGQ5MjggbGVnYWN5LXRydW5rCiszODQxMiAxYjc4ZmMyOTZmYzg5NTg4OWE5ZGYyYjE3ZTE4ZDdmZDZmNzk5OTU1IHJlbGVhc2UyNC1tYWludAorMzg0MTMgYzY4YmU4NjU5MDc1YmJjOTliYTg4NWU3NTdmNjFmNzFlOTY3Zjc5NSBsZWdhY3ktdHJ1bmsKKzM4NDE0IDNkMDBiNjQyNTUwNTdlY2M5OTU3MDhhMDAzNDRmNzE4Y2JkMzZlZjQgbGVnYWN5LXRydW5rCiszODQxNSAzZDk5YWRlZmJmM2MwNTBkNTY1MThjYTkxNGJiZTZmNzBlMmU0N2M0IHJlbGVhc2UyNC1tYWludAorMzg0MTYgMzIwYzc2NDNmOGU5ZWY5OTM0YzQwNjhiZTNiMTNlNDVlMTg1MzFmZSByZWxlYXNlMjQtbWFpbnQKKzM4NDE3IDQxNzRmOTc4ZTU2NDczMmQ0ZWE3ZTlhNmI4MDk1MGRjOWJlYzBmNDQgbGVnYWN5LXRydW5rCiszODQxOCAzN2IyZjExYzFhMDA1ZjcxZGNlOTI1N2M3NTZlYTYzZjJmMTY2Mzg5IGxlZ2FjeS10cnVuaworMzg0MTkgODI1OWZmM2VlNDkzNjEyN2ExMDdjN2E0NTQ2MWEyMmQzNDQxMzEzZSBsZWdhY3ktdHJ1bmsKKzM4NDIwIGNhOTE3OTljZWNiYTAxMzRiYzM5ZjhkMjUzNDI4OTNhMmNiZTk1NmUgbGVnYWN5LXRydW5rCiszODQyMSA5ZWU5OWEzNTU2OGQwMWZhOGJhZjYyYTNmMGUyZDY4ZjA1MDI0NjZlIGxlZ2FjeS10cnVuaworMzg0MjIgNDY1NzI0NDI1MzcwMDllMzc4MzRmMTUxYTg0NzUzZTBlNjFlM2E4OSByZWxlYXNlMjQtbWFpbnQKKzM4NDIzIDdlNTEwM2I0YjI4OWQ3YWJhODliMmVmZTk1NTUxYmYwMjMyMzQ1YmYgbGVnYWN5LXRydW5rCiszODQyNCBmMjQxMTdhMzYyOGFhZGU2MDNiMDE4YzZiNjE1MzBlNDc2NmEwZmIyIGxlZ2FjeS10cnVuaworMzg0MjUgOWQ2NmZiYTc4NDQ0ZjFiMjE3ZjY2NDEyNWRkMTA3NDAzM2IxMTQwNyBsZWdhY3ktdHJ1bmsKKzM4NDI2IDdjOGYzMzc4ZjZmNjFhZWU5YTc0YTc0NTFlMTZhNWUzYTczNWFlMWQgcmVsZWFzZTIzLW1haW50CiszODQyNyA4MzViNjQ1YTE2OGY3NGMwMWE2NTg3ODc2MTJjYjI0MDhmNmZkMmY1IGxlZ2FjeS10cnVuaworMzg0MjggMWMyOTQzZjk1NDY4NjM5NjAzYmEwYWZmMzJjM2UyYjY3MWQ0YjM4MCByZWxlYXNlMjMtbWFpbnQKKzM4NDI5IDYzMTRlOTRkMGQzNWQ5N2JhMmRiODNhNTczMzMyYTM2Njc2YjUyZDEgcmVsZWFzZTIzLW1haW50CiszODQzMCA2ODU4YzI0ODQwMTA4MjEzMTAyYjBhZWI2MGI5MDk5OTQ4NzQzMWM0IHJlbGVhc2UyNC1tYWludAorMzg0MzEgMDI4ZjkyZTQ0YjQ4MTQ3ZmJmMzQ1NzY0OTcxNjBmYzdmY2E5ZmZjMSBsZWdhY3ktdHJ1bmsKKzM4NDMyIGEyNGU3MGY0Njg0YjFkMGJmNjliOTAxMjVlODljMjU1ZmY3YTVjMmIgbGVnYWN5LXRydW5rCiszODQzMyBjZDA0ZjJkMThhNmZjY2Y5MTgyNDBmODgwYmEzMDU4Yzg4Y2Y2OTBhIGxlZ2FjeS10cnVuaworMzg0MzQgYzg3OGJkMDFiODFhMTYzNDdmNjZhNjBjNjQ5ZDcwOWQ0M2IxNTBlZCBsZWdhY3ktdHJ1bmsKKzM4NDM1IDkzZjI2NjVlYWQ1ZTJkY2RlYzFhMDY5ZGI3YjE1ODVjZWUzZTViNmIgcmVsZWFzZTIzLW1haW50CiszODQzNiA2YTI0NDBkMDVmNTBjMzI3MmU2NzNmODIwNzY0ZjVjZDJiMWU2N2FjIHJlbGVhc2UyMy1tYWludAorMzg0MzcgM2MxNDRhM2M5MTFhN2JlMWJiNDlhMzQyOGRmYWMxZjAzYzA2NmI3MyByZWxlYXNlMjMtbWFpbnQKKzM4NDM4IGU2MWFhODYyMTViY2E3OTc4M2ZjMTIxZTk4MjExYjllY2QxMzhiNGMgcmVsZWFzZTIzLW1haW50CiszODQzOSBiYjdmMzZhYzlmM2E4Nzg4OTcxZTZlMmU2MGY4M2VkYmU5NzNiMjRhIHJlbGVhc2UyNC1tYWludAorMzg0NDAgMjllNmJkNzA4ZmU3NWQzNjQwZjJhMzY0ZTNkMTdkNDI4OTliNGJkZSBsZWdhY3ktdHJ1bmsKKzM4NDQxIDQwNDBhYTIxNmI4YWIxNmZjMDljYzQ4ZDBmNmMzM2FkYzdhN2Q3OTQgbGVnYWN5LXRydW5rCiszODQ0MiA3YTEyNzdmYWQwNGU5MjY1N2ZjOTc4Mzg0OWUyMGIzYjU2MDAwODhhIGxlZ2FjeS10cnVuaworMzg0NDMgZjc3OTY2ZGE2ZGU1ZGJjMmM4MDE3ZmM3ODdiYjg1MzYwN2U5ZjVlMyByZWxlYXNlMjMtbWFpbnQKKzM4NDQ0IDg5MWMzMWRhZGE0ZWI5MjUxMWJiZmYxZmVjNzc4MGUzZjMxZTI3YjcgcmVsZWFzZTIzLW1haW50CiszODQ0NSA3MDViN2ZiOTAwNTZjYWVmYzZiNGRlNmEwMjI2MTE4ZGJjZjMwNTlmIHJlbGVhc2UyMy1tYWludAorMzg0NDYgMzdiNmRkMzg4NTZkZGUzODg0MjE4OWVhM2M1ZjkwMmU5N2Y0NjNhNSByZWxlYXNlMjMtbWFpbnQKKzM4NDQ2IGQyMjg1MDk0MjQxNzJmOTc3ZWRhZDRmNzg2MGE5Yzc0N2NkNjU1YzggcmVsZWFzZTIzLW1haW50CiszODQ0OCBmZjNjYTY1NmMyODFkZWJmZDM2MGYzN2QwMjAyZjUzZDEzMWM0Yzg4IHJlbGVhc2UyNC1tYWludAorMzg0NDkgODliOGNjZjE0YzBjMDE1ZWU5YzY3OTczNDQ2ZDU4NjFiOWFkODBjMyBsZWdhY3ktdHJ1bmsKKzM4NDUwIDljNjZhYjU0YzFlY2ZmOWViZGVlNjAxNTczYjUzMWU3M2YzZjlmOWYgbGVnYWN5LXRydW5rCiszODQ1MSBlNjdiNTg3ZmVkNzc5YzIxMTMzOGYxODU5ZjJlMDM5ODIxZjJjOWFmIGxlZ2FjeS10cnVuaworMzg0NTIgM2MxNzJjODI2ZWVkMzY0ZDNjOWYyYzk4MjQ4N2FhNGQwYzkxNmY3ZSBsZWdhY3ktdHJ1bmsKKzM4NDUzIDE5MzI3ZGI3NWQxYzkyZTM2YzM2MWJkMTE5MmIxZWY1NDU3NTk5YWYgcmVsZWFzZTI0LW1haW50CiszODQ1NCAzNjllOGU3MWVhMzM5MTY3OGFhZGMwODRlMjY4OGExNDRmZGJjZGY2IGxlZ2FjeS10cnVuaworMzg0NTUgNDU0NWExNTRmYWMxNTgzYmU0MWJjNzk4ODgyYmMwZTJiYjYxMTJmNCBsZWdhY3ktdHJ1bmsKKzM4NDU2IDNmZGZiY2I0MDEzMGNlM2E1NDNkNWU5N2NjMDllNDYwNzAxYTQ5YTAgbGVnYWN5LXRydW5rCiszODQ1NyA3N2ZhMzBlN2YxMmIwNmQzNmM2OGUwZWMzNTA4ODU3YzY2MzM5OTdjIHJlbGVhc2UyNC1tYWludAorMzg0NTggNjA3YzQ4YjVlZmQ3MjYxNTUwYWJkMjE5ZjkxZWE5YjZiNzIwZjRmNCBsZWdhY3ktdHJ1bmsKKzM4NDU5IDVjMjYwODUwNDk2N2EyYTE3ODRjM2M2ZDE0MzNlYmNjOGRkMzU0MDMgbGVnYWN5LXRydW5rCiszODQ2MCBjYTdjMThlZjhiZGMxMDJjYjY0ODQ1MjU4YzE2MzBmMGZiZjcyNmI1IGxlZ2FjeS10cnVuaworMzg0NjEgY2I0N2Q2MjJhYTFlMmZjMTE5ZmNhZGNiNDlkYjMxOTJlYTIzYWM4ZCByZWxlYXNlMjQtbWFpbnQKKzM4NDYyIDBhNmU3NzlkMzQ3ZDZmMTc1ZTI5ZGNjYzA3Y2M2MTA3MWZkMGM5ODUgbGVnYWN5LXRydW5rCiszODQ2MyA4NmFiM2E3NWZmMDg2Yjk2ZTRkN2ZhYjFjY2EyNmM2MTUwYTRiYzc0IHJlbGVhc2UyNC1tYWludAorMzg0NjQgYjk0ZjIyNDczODhlOTJiZDBlOWExNzM3ZWUwMDBjYWZjNDdlMTMzNSBsZWdhY3ktdHJ1bmsKKzM4NDY1IDlmMTgzYTI1OGJlZDBlZTlmNjJiM2E0MDUzZjI2MDgyYjc3NDQ2ZDggbGVnYWN5LXRydW5rCiszODQ2NiA3ZTdlODZmNDUyNTVhOTU5NDgyMGZhZGU2YmY3OWRkNGZlZDRmNzk3IHJlbGVhc2UyNC1tYWludAorMzg0NjcgZTllYzJjZTM0MGZkYzQ0MjBkMzYxZjUzODJlYmJmYzE1MTA5M2JkNyBsZWdhY3ktdHJ1bmsKKzM4NDY4IDcwY2IwYzNmZTRhNzQ3NWUyZjllOTcyNGU0Y2IzNDlhZmVjZGRhMGQgbGVnYWN5LXRydW5rCiszODQ2OSBhODk5ZDY5MGYyNjQwNzRmZWI1YTBiZTNlNGVmMjBlN2QyYmRhNTAwIGxlZ2FjeS10cnVuaworMzg0NzAgZmYzZGVmNzdiMTI5NWYzMzI2OThjNmEyMzgxYTBiYjE5YWZjYzYxMSBsZWdhY3ktdHJ1bmsKKzM4NDcxIDFhZTJjM2I2NmU1N2EzNDYzN2Y5ZTQ4M2FlYjc0MTI2YjZmNzJhMDMgbGVnYWN5LXRydW5rCiszODQ3MiBmYTUyZjFmZmMxNjExNTU3NTA2OTMxMDg5NWMwZDI1ZGY5Yzg2YzZmIGxlZ2FjeS10cnVuaworMzg0NzMgMzc2YTcxZjg5NzliYTFkNTYzYzhkOWFjODU2MWJmYTAzMjE2YjdlNCBsZWdhY3ktdHJ1bmsKKzM4NDc0IDMyYjg5NjA2ZjBjZGExN2FlNjRlY2NhNjQ1ZTFlM2IxNDdmNzY0ZmUgcmVsZWFzZTI0LW1haW50CiszODQ3NSA3ZjdjM2RmYmE5ODU2MjBjNmM0OTAwMTc3ZTEyOWQ0NzJhZTM5MDA4IHJlbGVhc2UyNC1tYWludAorMzg0NzYgMWE5ODk4M2U1OTYzMGRjYzBhZWU4MDM5MGNjYzMxNjk0ZTFhYzlmMiBsZWdhY3ktdHJ1bmsKKzM4NDc3IDdmYmE1Y2NjOTYxZTE0YWQ4ZjEzYjMwZWFlNzU2OTI1MmJjZjQ2YjAgbGVnYWN5LXRydW5rCiszODQ3OCA2NzkzN2EzODUyZmU0NDgyZWQzNmM5Y2VjMDg5YzJmODczZDljZGMwIHJlbGVhc2UyNC1tYWludAorMzg0NzkgNWU3YWRlZDMyNTFlZDJiZWQ5YWY1ZGYzZWZlMzU2NDNiMzEyNjYzOSBsZWdhY3ktdHJ1bmsKKzM4NDgwIGQ4MDRhNTBhMjBhYjUyNzllNzA4ZWNjMjhmMjJlNjIwYjA4NjA5NTcgbGVnYWN5LXRydW5rCiszODQ4MSA4MDk4YzdjMjcwOTcxZTJkMmEzMjBiNWJiNjk5MGU5ZjA1ZmY5ODBjIHJlbGVhc2UyNC1tYWludAorMzg0ODIgMjRhMzMzNzQxY2VjOTlhMDljOWU4ZTY3NDU3MmM2ODBlNTFiOGM1NiByZWxlYXNlMjQtbWFpbnQKKzM4NDgzIDdkYWUxYTgxY2VkODM4MDVmMjg2OGRmYjY0N2ZmZmQxZGUzMThmMGYgbGVnYWN5LXRydW5rCiszODQ4NCA3NzcwM2VkNTQzYTEwZjJkMWFhYTJjYjg4Mzg5NWJjYjAzMWVjYWRlIGxlZ2FjeS10cnVuaworMzg0ODUgZDQzOWM3NDhiNDU0NTFjZGI0NzYyNzM4YWQ5MGFkZjc5YTI3YmQzYyByZWxlYXNlMjQtbWFpbnQKKzM4NDg2IDhiNGRkMmMxYzJhMDYzZjAzYjcwMGE3NDg4ZTRmOTdmZDA3OWZlOTAgbGVnYWN5LXRydW5rCiszODQ4NyA0YjEyMDdjYjAxZWE2NmZjYzcyNGZiNjU3Y2U2Y2Y1YjAzMzZiNmQ0IGxlZ2FjeS10cnVuaworMzg0ODggODEzMDMwZTRkN2IwYTFkYWNkZTQyMWE0NjM5ZTZiMmRkOGNkZjZiNSByZWxlYXNlMjQtbWFpbnQKKzM4NDg5IGM2MGZkZThiMDEwNmIwOTg5MmM1NDQyNGRiNmVhZmZjMzdhMWI3ZDkgbGVnYWN5LXRydW5rCiszODQ5MCA3YzU3MzI2NTJhMjNjYmQ3MWU5YmY2ZGNhOGI1Y2U1NzMwMDlkM2VhIGxlZ2FjeS10cnVuaworMzg0OTEgNjE4Y2YyNGMzMjlmOTlmZDViMDE3YmIzYjA3Y2EzMWFiYjNjOWE4NyBsZWdhY3ktdHJ1bmsKKzM4NDkyIDA3Y2YxYTE2NDBkYTQxMjM0OWRmNDcwNzdjOGIxMjUzYmMyMzEzZTkgbGVnYWN5LXRydW5rCiszODQ5MyBhNGQxMzk3NGY2ZWI3YzRkZjkwMTA0MTAyMDI1YjRlM2I0MGRiZWE3IGxlZ2FjeS10cnVuaworMzg0OTQgYWM2ZGZjNjdjNzdmZjZkMWQ4YWNhNjFjMTM5ZjZhYmM2ZjE4ZDk0MCBsZWdhY3ktdHJ1bmsKKzM4NDk1IGEzNmM1ZmQzMGUyMTI3YWUxMmRkNTM5ZjY2OTQ3ODdlOTNhMWYwZTEgcmVsZWFzZTI0LW1haW50CiszODQ5NiA5ZjAyMjc2ZDU0Y2I0ZWMzMmVjMzlhNTI4MjE0Yjk5OTVmMjM2MGM2IGxlZ2FjeS10cnVuaworMzg0OTcgMDM4NmNjMWVlOTY0ZTRkNDg3ODQyN2VlM2FhZmM3ODdjZjJlMWUwNSBhc3QtYnJhbmNoCiszODQ5OCBlMGY0ZWI2NGQwMDM5MWUzYzQ2YjVmMjg5MDU4YjI5ZmYyZmNhY2VjIGFzdC1icmFuY2gKKzM4NDk5IDI2NzZlMDVjMDFmMjFhYTg1Y2UxY2JlNWM3ZDVlYjdlZGQwODg1ZDYgcmVsZWFzZTI0LW1haW50CiszODUwMCBjOTlhZTg2MzVmM2I1NGRiODgzOTA0ZDNhYmNkNzMwZjEyOGI4YmY2IGxlZ2FjeS10cnVuaworMzg1MDEgMGRkMTQ2ZmVkOWRkYTNjZTNmYjlhY2Y5NTFlZDgzMTIxNjUxMzU5OCBsZWdhY3ktdHJ1bmsKKzM4NTAyIDU1NmY2ZjEwNTZhOGY2ZDVkMDNhMjhlYmZmNGJjMzNmOTc0NTNlN2IgbGVnYWN5LXRydW5rCiszODUwMyAxZWRlYTRjMmIwMTFiNTNhZmJiYjUzYzkzYzQwMjAyOWIzMjljYzQ3IGxlZ2FjeS10cnVuaworMzg1MDQgNTE2YmI4ZmQ3NWI0YmQ1Nzk4MWFjZjFhNzdmY2NlMzMxNzhiYjBmZCBsZWdhY3ktdHJ1bmsKKzM4NTA1IDc2YzlhYjg1ZjVhODg3NDUyNDY3ZmIyMTUzMmU0Y2QxMWZmMmZhMzMgbGVnYWN5LXRydW5rCiszODUwNiA1ZmRlMTdiMzU0NzI1NGJhYmE2NDk5OWQyMTAxOWU2NDI5OWNlNWUxIGxlZ2FjeS10cnVuaworMzg1MDcgYzVhNDk4YzEwNzIzNTk4YjliNGYxOTc0YzZhZWZjZTlhMTZlNTlkOSBsZWdhY3ktdHJ1bmsKKzM4NTA4IGZjYWNmOWQ0YjhmMGZhZWI3NTYyZjk2Y2U4NjhiMTgxNTg0ZjU3M2MgbGVnYWN5LXRydW5rCiszODUwOSBkMjU5OTg0OTYyMDY1ZmU1OGI4NzZmNDU1ODIwZWRkZDBjMDQ2MzVjIGxlZ2FjeS10cnVuaworMzg1MTAgM2U3YTIwYzI5N2E2MGU2ZTdkZGU1MDFiYWZjOWY5ZTQyZTNkYjcyYSByZWxlYXNlMjQtbWFpbnQKKzM4NTExIDA4MGQ4Y2ZlZDlkNGE3YTU0ZDVjY2JlZWM3ZTBhYzU2MDJiMmJlMWMgbGVnYWN5LXRydW5rCiszODUxMiA2NjA0MTliZGI0YWVmOWJiNWRlMjg1Yzc2NWFlNmRlZTE0MmYwYzk3IGxlZ2FjeS10cnVuaworMzg1MTMgNDE2YjUzNGU5Y2M5NjhlZmZlYmNhZjE3NTViZTllM2NmZTM4MmY1ZCBsZWdhY3ktdHJ1bmsKKzM4NTE0IDc3YjU3MDg3ZmU0NWRiMjQ3MTc4ZjBlMjM1ZTQyNmY3ZTRkMjhmOTEgbGVnYWN5LXRydW5rCiszODUxNSA0MzI5YTFhMDA0NjlkMTYzY2E1ODRiN2UwODAzMTE3YjNlMjBkZjU5IGFzdC1icmFuY2gKKzM4NTE2IDg5Y2YyNWUzNjc5YWU5OWE0OTAyYmFjMDUwMTViZWI4NjI3NzdiNzAgYXN0LWJyYW5jaAorMzg1MTcgZDFiMzVhZjI5MjYzMGI2MDk3Y2Y2YjNiYTIwMzA1ZGMxZWRkZWJjMCBsZWdhY3ktdHJ1bmsKKzM4NTE4IGEyYjdjYjczZDliMWQ3MGViYjQ4MzUzZDY0Y2NlY2M4MjM1N2Q5NTQgcmVsZWFzZTI0LW1haW50CiszODUxOSA1ZjI2Mjk4ODExYjcxNDJhNmY3MzA4Njc4ZDZkNzJiZmY4NmMxNDU1IGxlZ2FjeS10cnVuaworMzg1MjAgM2QwYmIzYjA1ZDM5ZjBiZDE0ZDlmOGM2OWUxNzc1MTg0MWQ0NzRiZiBsZWdhY3ktdHJ1bmsKKzM4NTIxIDExNzZmMWJiNGUxYWVhMmZmNTE4MjcyMGM0NmFiYmY2MGMxZjFhYzEgbGVnYWN5LXRydW5rCiszODUyMiA0YTBjMjAyZWU3ODlhMzczZjY0N2RkMDA5MzQ4NjRlZTI5NzliMjc3IGxlZ2FjeS10cnVuaworMzg1MjMgZDNjZTdhOTQ2MTZlOTE3Y2ZlZGJlMDAzNmI0ZjEwZmIxY2I4MDZmOSBsZWdhY3ktdHJ1bmsKKzM4NTI0IDYzNmQ2ZDQzM2I2MjYzN2FlZDRlZmIxOGIzMDcxYmQ0MzEyZDc2MjQgbGVnYWN5LXRydW5rCiszODUyNSBmZDZkMzU5Y2EyNjYyMjFiN2FlZjlhNjMyNjZkZjVhZWVmMjIzNzJlIGxlZ2FjeS10cnVuaworMzg1MjYgYjVhMjVjNTZhODUyM2Q3Zjk0OGFiMDY2OTNmOTZjOTEwYzg1YTE2OSByZWxlYXNlMjQtbWFpbnQKKzM4NTI3IDYwNTBhZTg0MmM4ZjFjODhiOWFhYTIzNTYyNWVjNGQ4M2Q5ZDViYzUgbGVnYWN5LXRydW5rCiszODUyOCBjNTA1Y2JiMjZjZWRjZDA1MGY0NmQwYjdlNTFiNWI0MGZiYzQ1OTUxIHJlbGVhc2UyNC1tYWludAorMzg1MjkgZmEzY2RkNGY5Y2QwMTdhN2VlZDk3ZTE1N2YyNGM4ZDdlNjc5YTk4ZSBsZWdhY3ktdHJ1bmsKKzM4NTMwIGI0MzE1ZTY3ZWRmNTEwYjkyZjZiYjIzZTk5NTRhMjM2YTRjM2M2NDggbGVnYWN5LXRydW5rCiszODUzMSBhOWYxNjFlMzZiZjkwNDFlZTBkYTg2OWUxOWY1YThlNTQ1YjFlNTQ5IGxlZ2FjeS10cnVuaworMzg1MzIgZDQ4ZmEwYWZkY2JhZmQ1MGUxNDMzOTIxYjU3ZGM4MjllYzZlZDQ0MyBsZWdhY3ktdHJ1bmsKKzM4NTMzIDEzYTk1MGEzNjI0YmNhYTJiNGQyMGIwZDRkNGQ5ZjU5NjZmMmQzZmYgbGVnYWN5LXRydW5rCiszODUzNCAxMWZjZGJiMjc5ZGU5MmFlZmFkODkzZjZkNjIxNzEyZjk4N2JiN2JjIGxlZ2FjeS10cnVuaworMzg1MzUgZDk5MjdhNjVmNWY5MmUyNzZkOTIyODZlNmM0M2Q5MzFjMTExNmRkOCByZWxlYXNlMjQtbWFpbnQKKzM4NTM2IGNhYzMxYjRiNWU3OGQ0ZDI1Nzg5ZGEzNTA1MzgxZTBkYWRmODNmNDggbGVnYWN5LXRydW5rCiszODUzNyA4NjFiZTljZDA0ZDdlY2Q0OGZjM2VjNDBjZjdlNGNlYWU4NDY1MDkwIHJlbGVhc2UyNC1tYWludAorMzg1MzggNGFhZmIxYzlhNzBkOTAwZTg3MWVlZTMxMzQwNzc1NzFiMTVjZjg3YSBsZWdhY3ktdHJ1bmsKKzM4NTM5IGU0OGI1YTYxZDgwYmQ2ZWJkNTVmYThkMWZmYmZiOTdiNjJiYzJlMWYgcmVsZWFzZTI0LW1haW50CiszODU0MCBhNmQyMzE1MTA5YTRmMmFjOWFiZjZkYjg0NTE3YmNhOTMyMjU3OTBlIGxlZ2FjeS10cnVuaworMzg1NDEgMmZkOWI4NWJhNjVmZGVmY2Q1ZjJmZjBkOGQwY2ZkNTFjZjRlYWMxOCByZWxlYXNlMjQtbWFpbnQKKzM4NTQyIGU2NDIyNTI1YzI0MDMxODk1Y2Q0OTExYTc5OTBlYTk4ZWQwYjQwYmIgbGVnYWN5LXRydW5rCiszODU0MyA3NTU2NDUzMGY1MGMxZWZiNDA1ZGZiOTI3NjY4Y2ZhZTY3OTJmZTAyIHJlbGVhc2UyNC1tYWludAorMzg1NDQgOTE4YmM2ZDU2ZDI2ZjY2MTI1ZmY1NGY2OTI0YTUxY2M3MTc5YzNmNiBsZWdhY3ktdHJ1bmsKKzM4NTQ1IDlmYTc2OGE5OGM1Y2EzNjFiODA4YzI2MmNiYTZmMGU4NzIxZmM5MTggbGVnYWN5LXRydW5rCiszODU0NiBiNDA1ODYxMjliYjA4NzJiNWUwYzA0YmMxMTc0NWUyNzkwMDZlZTY5IGxlZ2FjeS10cnVuaworMzg1NDcgOWQ2MDg0MTljZGY4ZDUzNmNlZTk0NTVkMjFhZjNhM2VlOTQ5ZTU0YSBsZWdhY3ktdHJ1bmsKKzM4NTQ4IDM3ODU2MTBmZjc2MzAxZjRkZjk5YjYxZGNlZWY4NjE2YThmMGJlZWIgbGVnYWN5LXRydW5rCiszODU0OSA0NjMwMGIxYWEyZjY4MjVmZGZjNDEyZDM3MDk4N2E2NjNlYzhhMWY4IHJlbGVhc2UyNC1tYWludAorMzg1NTAgNDgxMmY2YTdmNzM1NTY4M2IyMmI2MmFjNzNhYjBjYTVjODE3MThlYyBsZWdhY3ktdHJ1bmsKKzM4NTUxIDhjMzU2M2QwOGM2MjNkZWE4Y2JmYzc5YzI5NThhNzgyZmI5ODY3OWMgbGVnYWN5LXRydW5rCiszODU1MiA5YjNhMmM0MzAyYWFjMDZlMDllOWFlODU2ZmE0MmUzMjFmZTcxYWUwIHJlbGVhc2UyNC1tYWludAorMzg1NTMgMGQ0MTA4ZDNhM2E4Yjc3ZGZmNThlMTM1MWIwYjE2YzM0ZmQ1NzBlMCByZWxlYXNlMjQtbWFpbnQKKzM4NTU0IDRjNjZjMTdjNGIyODA5YjM0NGU1YzdmNGVkMjk0NzA0MTZkNTg0NTggbGVnYWN5LXRydW5rCiszODU1NSBkYjdhODMxMGIxOWE5NGQ2MTdhOTVhZjBmZTQ3NTE5MTQ2ZmZhZGIzIGxlZ2FjeS10cnVuaworMzg1NTYgMDg1YmMyN2Y5MmI3NTE5YWYzMzZhODNkNjM0MzMxZjY4MDg2ZmQzMyBsZWdhY3ktdHJ1bmsKKzM4NTU3IDAwZTQ3ZWIxMzZiMmMwOTUxNTFiY2IyNTc0ZDM3MTExZjMwZWZmZmUgbGVnYWN5LXRydW5rCiszODU1OCA3YTFhOGVjNmRjNTM0NGMwZDAyM2IwMzg3YTY3YTJkOWU2ZmI4ZjM0IHJlbGVhc2UyNC1tYWludAorMzg1NTkgOGYwNDU2NDI1NzE1ODE1MTAxZDkwMTQ2NTAyMDhjNmI0MjIyMTU1YSBsZWdhY3ktdHJ1bmsKKzM4NTYwIDRhYmYyMWJlMTdkMzU0MTk1YzA5YTM3MzMwOTEzZWE3YTM3MDcxZGYgcmVsZWFzZTI0LW1haW50CiszODU2MSBlOWZmYWQ2ZDg4MjI4ZWM4M2RkNzllZTRkMGQ5ZTEzOTMyMWRiMmMyIGxlZ2FjeS10cnVuaworMzg1NjIgNTFhZmI2ZTc3NDc0MDhlNmZlOTcwZTA3N2YxYWIxZWQ3N2I4YjIyMSBsZWdhY3ktdHJ1bmsKKzM4NTYzIDgxOTgyNTg0YzYxYmM1NjI0NmY1OWU2YjYyNWY3NmFhOTE1NWE4YzkgcmVsZWFzZTI0LW1haW50CiszODU2NCA0ODEzOTc2ODNlYWNlZjBlOWIzYTgxYTg1MGRmZjQ5NjMwOGYyZGRiIGxlZ2FjeS10cnVuaworMzg1NjUgZWQ2ZWMwMDBhMTM4ODk3ZTVjMTdlNjViN2M1ODU0M2NkNDc4ODVlMiByZWxlYXNlMjQtbWFpbnQKKzM4NTY2IDkwMzA0NWE3MGMzZWI2MDQ1YmQ4ZjBhZWJjYzZmYzBjNWUyODZhM2YgcmVsZWFzZTI0LW1haW50CiszODU2NyAwYzQwODAzZTVlNGQ0MDhlMmM3ZjE3MmZiYTFjNjJmY2U5ZThmYzA4IGxlZ2FjeS10cnVuaworMzg1NjggZjg3YThkMGRmMTI1MmJiOTE1NDhlMWQ0YmIxZWMwYmQ2OWJjMzY5NiByZWxlYXNlMjQtbWFpbnQKKzM4NTY5IDQ5ZDdiYjJlOTZkMmY1Y2JjY2VhMWU3NDMyNzMwZTk0M2UzMGVlN2YgbGVnYWN5LXRydW5rCiszODU3MCBhZTA2MWZjNjMxOGRjZTA3MjlmM2Q5NWY0MjczNTM3OWVjMTg0MmUxIGxlZ2FjeS10cnVuaworMzg1NzEgZWFjMDFjYmNhYWRhOWJiZDdiZmQ1NTAzYzJjMDU0MTY5ZDM0MGVhZSByZWxlYXNlMjQtbWFpbnQKKzM4NTcyIDFhYzI0ZTkxODNlNTE3N2Q2MDgyYTc2Y2U1ZjNmYTgyN2YwYjliYWEgbGVnYWN5LXRydW5rCiszODU3MyA0ZWE5ZGUwMWQzMTE1NmRhNzI3N2YyYWE3OGY2ZjkxMDkxY2M1NmUxIHJlbGVhc2UyNC1tYWludAorMzg1NzQgYzJiNTkxZDdmMjllZmRmOWYzYmNlNTYwZjFjZjE0ZTZmOGI0MmQyZiByZWxlYXNlMjQtbWFpbnQKKzM4NTc1IDA3MjVmMGQ1YTVjNzU4OGFmMDk1NTBkNGQ3MDVlMzQ4ODI5ODgxNmQgbGVnYWN5LXRydW5rCiszODU3NiA4MTdlMjI1MDZmYThmOWM5NmNlNWNlOWI4YzkzZWU1MDNiZWQwN2VlIGxlZ2FjeS10cnVuaworMzg1NzcgNjA0ZmY5ODkxNWVjODE4NTQ2YjJkYWNlYmYwMWYyNjMwNmQyMzQyMSBsZWdhY3ktdHJ1bmsKKzM4NTc4IDlmMDc4ZDc2NjgwNDQ0Nzc0MjQ3MjU2NDRhOWMxY2NhYmYyZmMyYTUgbGVnYWN5LXRydW5rCiszODU3OSBjMDUxNzhmNDFkYjM5MDc4NWIzMjcxM2Q5MzY2NmFjNzVjMGI5NDc5IGxlZ2FjeS10cnVuaworMzg1ODAgYTBkM2Y3NzM1NDNkYjI4MWE3NjQ2NDg3ZTkxY2QzMjdmODVlNDcxOSBsZWdhY3ktdHJ1bmsKKzM4NTgxIDc5MzAyZTUwOTEwZWVjZTIwZjIxNDA2NTBiNDIyZjNlNjljOGFhMGIgbGVnYWN5LXRydW5rCiszODU4MiBhOTFhNDhjOWRlMDBjOWFiYTlmMmE2NmFlYmJkODMyNTg2MGMyYTExIHJlbGVhc2UyNC1tYWludAorMzg1ODMgNDFhOWNhODY2MDM4MjAzNjQ0YmFmYWE2NDIwOGExMTkxNTE2MzZmOSByZWxlYXNlMjQtbWFpbnQKKzM4NTg0IDg0ODU5YjRhNjJjNmVjZGU1NjY1MTgwMWNmNTQyNjU5ODlkZDM2MTQgbGVnYWN5LXRydW5rCiszODU4NSA1ZDBkNzZkN2IzMWZkODgyZTFiMWUyN2UwMmJkYTg0ZGFhMGU4MDYwIHJlbGVhc2UyNC1tYWludAorMzg1ODYgMTMwOWY2OWI0ZGJiZGU4YjdjNTcwNjUxMzE5ZDQ3YTU0Njg5ZWI5ZSBsZWdhY3ktdHJ1bmsKKzM4NTg3IDdkZTc2ZjM0YjNkYTJmMDk2ODVhMWY0ZjkxZGQ4ZTU3ZTJiNzNhYjUgbGVnYWN5LXRydW5rCiszODU4OCBmNGRhNDZiOTQ1NzA4OTIyMzViMTA2M2VmODllM2I4NGM5MjEzMmY0IGFzdC1icmFuY2gKKzM4NTg5IDk1YjY2ZDlkYjJlZTY1OWEwYzJhMjk5ZDNjNDE0YTU2MmU5NjAwY2EgYXN0LWJyYW5jaAorMzg1OTAgMzA5OGVmZTQyYTBmMjA4NmM0NDA1ODQ3OTQzOWU1NDA2ODZiNWYwOCBsZWdhY3ktdHJ1bmsKKzM4NTkxIDdkMmM4ZGFhNDAzYjYxOWNmZjcwYzhmNTcwYzY4YzM5MDUwMWUwZjUgbGVnYWN5LXRydW5rCiszODU5MiBkNjg3YThhMDlhNzJkNzRkNjQ4ZDRiODkwY2U2N2JhYTdhMTYxNTg3IGxlZ2FjeS10cnVuaworMzg1OTMgMGQ0NGQ5MDcxZTk3ZmJjMTA2MzljYTY0NWY0ZjMzN2IxZTFlY2E5OSByZWxlYXNlMjQtbWFpbnQKKzM4NTk0IGYxZmE3YmIyYmY5OTkwZjQwY2EwOWJhYmRlNzM0OGEzYjA5NDE2ODEgcmVsZWFzZTI0LW1haW50CiszODU5NSA2OTdiOWVlYzU1ZGE4MmM0ZDdhMGIzZDZkOTY1NTY2YWJlMmQ5YTQzIGxlZ2FjeS10cnVuaworMzg1OTYgZDU0NDlmMWY4NDBlY2Q0ZTI2NTJkZDI2MjRlODliMzRmOGQ1MGJlMSByZWxlYXNlMjQtbWFpbnQKKzM4NTk3IGYyOTAxMjE4MWNmMDE3YjhmYmE1ZmI4ZTc5YWEyYTI1ZjI0NzMwMmYgbGVnYWN5LXRydW5rCiszODU5OCBlNWQxOTAzMWEyOTVkNzdiZDg2MDBhNDUyOWVmYTg1NmM0M2Y5NTM2IHJlbGVhc2UyNC1tYWludAorMzg1OTkgNmI2ODc1ZWRmNjA3ZTMyYjU4OGNmZWRlZGUwODFjZmJlMmNlMDQ4OCByZWxlYXNlMjQtbWFpbnQKKzM4NjAwIDg0NzEzZDRiMTlhZjEzNmU0YTRhM2Y1NmMwNWY4MDc1MmU2OGI1ZTAgbGVnYWN5LXRydW5rCiszODYwMSA0NGYxNDhiZmM2Yjg4MTc1YWI2NzA0M2U2NmVmY2U5ZmNmNWYyYjkwIHJlbGVhc2UyNC1tYWludAorMzg2MDIgZGRjMjI3NmMyNDdlNjg2ZjhmMWEwODQ4MWJlY2ZhNmZhYmYzY2MwYSBsZWdhY3ktdHJ1bmsKKzM4NjAzIDUxNmYxNTUyMTU5ODRkYjNiNmE0OTRjNDg3ZWMxM2I1MWQxNWQ2MjUgbGVnYWN5LXRydW5rCiszODYwNCBiNTQzM2QzYzZkYzg4NDc2ZjIyODA5ZmJhYzQ4ZDQzMTU1YzkzNWUxIHJlbGVhc2UyNC1tYWludAorMzg2MDUgMjFlNjU3N2ZmMDc0ZTExNmRmNmE3MzIzMmU4ZGE5YjYzYmRlNjE4MSBsZWdhY3ktdHJ1bmsKKzM4NjA2IGIxMjJmZDkzYTViNTE2ZTAxOTBkZmIzNjJlN2QwMDU5MzMwZDBlOTcgcmVsZWFzZTI0LW1haW50CiszODYwNyAxNmNlZjA5YTgzNDJkYWNjYWZjYjg1ODE5YTJkYmZlMTcxNDE0OTNiIHJlbGVhc2UyNC1tYWludAorMzg2MDggOTkwNmU0ZGEwODZmZGNjZjQ0YzdlZmU1Mzk1NjQ1M2EzZDJjM2M2NyBsZWdhY3ktdHJ1bmsKKzM4NjA5IDUyYjY1MWE5NzUwZDVkYjM0Y2EwMjFlYTRjM2FlN2M2NDYxNTY5MDkgcmVsZWFzZTI0LW1haW50CiszODYxMCA0MzAzNTY4MzlkMjg1OTFlNjIyZmE4MjZmZTM2ZDg2MGFiODM3OGVjIGxlZ2FjeS10cnVuaworMzg2MTEgMmM3MzM2N2Y1NGVlZWM4OTYyNjM1YTBkMTY2NDAwNGYzMTgwMWJlMSBsZWdhY3ktdHJ1bmsKKzM4NjEyIDAzNDkyNTdlMWVkNTJlMWY3OTJmODYwNTcyYTkxOGJmNzYzNjg3MDUgcmVsZWFzZTI0LW1haW50CiszODYxMyBiMTQyN2NmZjJmODMyMTFiNzBhY2EzMmMxNDk4YTUzYzg5NDVmM2M4IHJlbGVhc2UyNC1tYWludAorMzg2MTQgY2ZhZTRiMTIwNmY4YWM5ZDUwYjBiNGY3NjJlNjc1NDEyMzBkYTU0MyByZWxlYXNlMjQtbWFpbnQKKzM4NjE0IDExOTVmOWJhMzQzOTA5N2NjNWI1YTM2N2UzYWUxYjQzZjE1N2IyNjQgcmVsZWFzZTI0LW1haW50CiszODYxNiAwYmUwNWViYTExNmQ4MTg0ZDg2ZWExYzMyOTg4MzMxZTY0YmViYTI0IGxlZ2FjeS10cnVuaworMzg2MTcgZWEwMjRhNGIyOWI2ZDExMTJmNmI5MTdmZGZkZjI1ZGZjNTgwMzY5ZCByZWxlYXNlMjQtbWFpbnQKKzM4NjE4IDFhZmVmY2YxNGYwNjM4YzNhNTU5MzY5MTNkZDFlNjk2ZGY0NjRkYjUgbGVnYWN5LXRydW5rCiszODYxOSBlODMzMDlkNDNhODJlOTlhNzUwMWI0OTg3YjI2MDMyMDdjNDkwMzMxIGxlZ2FjeS10cnVuaworMzg2MjAgZDM1NWRhMWQ3YzhmZDE5YmIyMDdkYjJjYWEzYzc4MDYyZjc0ODI5MCBsZWdhY3ktdHJ1bmsKKzM4NjIxIDY1ZThhYWNiMGU5NGIxNjIzOWNlZDgyYjQyMTEzMDM2YzM5OGJmZWYgbGVnYWN5LXRydW5rCiszODYyMiA4MWI1YTEzZmEzOGEyNDkwMjczZGE2NjExYzBjMGRlZGJlZThiNWIxIGxlZ2FjeS10cnVuaworMzg2MjMgOGQ4YmE2Njc4MGVkNzc4NTAyY2UzOGI2Njc0YWVlM2ZiMTA0N2FhMSByZWxlYXNlMjQtbWFpbnQKKzM4NjI0IDQ1M2Q4OWVhYjczOTM2ZmI5MTVmOTg5NTc5YzRhYjJiMmMzZjJhZjcgbGVnYWN5LXRydW5rCiszODYyNSAwYzgyYTdlZjk1NTRkYWQ5ZmFjODc5Mjg4ZTBhNzdlNzI1OWU2M2YyIHJlbGVhc2UyNC1tYWludAorMzg2MjYgM2JiNzU5NDk4NzY3ZDY5MGZlNmYyYzI5Y2JiZGNjMjM4MjVlMTUzOCBsZWdhY3ktdHJ1bmsKKzM4NjI3IGZkZjJmOGZhZDhkNDU3MzYzODZjYTM4NTY5YzAwN2M4MmJhOTYzMDYgcmVsZWFzZTI0LW1haW50CiszODYyOCA2ZjliMzZmYzExMWM5YWZkYWQ0MmY5ODVjMzEzOGZjMmY4MmZhOTgyIHJlbGVhc2UyNC1tYWludAorMzg2MjkgYjhkOTA1Y2E5ZTk5OTk2NmQ2NzdhZTY0NTQ3NjRhZmJhM2E2MDYyNSBsZWdhY3ktdHJ1bmsKKzM4NjMwIDNkOTdlYjNiN2NlY2FmZjQ2ZmRlZTI2OTAwNWY2N2VkYTQ4YzhlNjMgbGVnYWN5LXRydW5rCiszODYzMSA3MmI5ZWI3NDIyNjMwN2JmMmFiYjZjMDM5ZDJiNjlhMmRhNmQwMDI0IGxlZ2FjeS10cnVuaworMzg2MzIgM2ZhMzQ3NTk1NDg3MjBiNmY5NjI2ZmMzYTk3OWUwYTU0Nzk3ZWExYiBsZWdhY3ktdHJ1bmsKKzM4NjMzIDUxODBjZmNjODdiZmU3MjY0MGU1Mjg2ZDAzYjEzZGNkNjcwMTIzMDEgcmVsZWFzZTI0LW1haW50CiszODYzNCBkZmEwOTdjY2JjNDlkYTQ1MzcwNjExNWViN2E5M2Q0MzI2MjJkYjgxIHJlbGVhc2UyNC1tYWludAorMzg2MzUgMjE4YTc2Mjc1OTMyZWQ2OGQyYTY3OTc4ZjI4ODQyZjliZjk2NzYxNCBsZWdhY3ktdHJ1bmsKKzM4NjM2IDY3OWMxNjExNTYxMzFjOWQ0NTcyYTA3NjcxMDE4NGQ3NDU3NGU4MmQgbGVnYWN5LXRydW5rCiszODYzNyA5NjI4MDBlZTMwZWY1ZjQyYTMyNWVhNjJiZTYwM2NjNGY1MGQ1MzFmIHJlbGVhc2UyNC1tYWludAorMzg2MzggMDRiYWE2NDRmZjAwMzM5MWRlYmZkYzJhNjdhMDI3ZGJhNDI5NWFlMSBsZWdhY3ktdHJ1bmsKKzM4NjM5IDExYjQzNTBiNTg3OTJkYTlmNzgxNzY1NjBjNTNjMzZjOTAwNjk2YjAgcmVsZWFzZTI0LW1haW50CiszODY0MCBlNTI3ODMzMWQ5YTkwNThmYWRhN2E0YjRhMTA2YzJjM2VjYzVkODcyIGxlZ2FjeS10cnVuaworMzg2NDEgNmYzN2QxMTYwMjYxMDk5MjgzNDdhNzBiNmRmNzkyMDA3MTUzMGJjOCByZWxlYXNlMjQtbWFpbnQKKzM4NjQyIDdmN2NiZGIyYzYxMTM3ZGFjYzRiYjZlZmY2YzQ4MTgxMWU0MjljNzkgcmVsZWFzZTI0LW1haW50CiszODY0MyA1Zjg5M2E0Y2RlNmZkOGQ2ZGRlOGIzMzgyODc3MTM3NzMyYWIxMzU3IGxlZ2FjeS10cnVuaworMzg2NDQgNTA1MDllZTk2MzY0YzdlODYyYjZjMDM3ZWJmZTQyOGUyMzVlYWNmOCBsZWdhY3ktdHJ1bmsKKzM4NjQ1IDMxM2VkMjgxN2Q2ODA5ZTMzZDQ0N2I5YzA4ODdhMTU4ZTczZjZmMmMgbGVnYWN5LXRydW5rCiszODY0NiA0ZGI1ZWE5NTc3YmFiZGM3Y2I4NGJkOTRjYzg3NWY1ZTA4ZDlmNTZmIHJlbGVhc2UyNC1tYWludAorMzg2NDcgMDc3NDUxNjZmNTcxM2JhNTZjMWI4YWU4MTJiOWFmNGZiYzYzODg4ZSBsZWdhY3ktdHJ1bmsKKzM4NjQ4IGZjYjUwNzQxNGM0MTQ4ZjQxYmVhMWU5YmQ5MDY4YTZlMDJkNzdmMDMgcmVsZWFzZTI0LW1haW50CiszODY0OSAyM2NhMjYzMDY1N2M0ODUwOWMzNWI2YjM4NDVhNmIwNGI0MGI2NzI3IGxlZ2FjeS10cnVuaworMzg2NTAgNmE2NDk4MTYxMjRhN2NlNDVhNWExM2M2OTg5N2FjNDE5NWMxNGE3NSByZWxlYXNlMjQtbWFpbnQKKzM4NjUxIGJjMTU5Mjk2ZDI1MzU2OTZkMDQwODUxYWQzOGI4ZTRjMDI5ZjZlZGYgYXN0LWJyYW5jaAorMzg2NTIgNTExZTdhOTNhMWU5ZjEwNWU2NDIyY2FhOTM1NTI4NWI2ODVmM2E4OSByZWxlYXNlMjQtbWFpbnQKKzM4NjUzIDg0ZWI1ZTE4NTU0NzYxNjZiZjI5ZWM3ZDBmYjlmYzk4MDFmYWY3YjAgcmVsZWFzZTI0LW1haW50CiszODY1MyAzMzNjZjMwMzU0M2I2ODBlYzVlM2ZkZjdlOGM5NjYxZjk0ODhhNTBlIHJlbGVhc2UyNC1tYWludAorMzg2NTUgYmViMWNiNzg1ZTFkNTQwNmNiMDM1ZjUyZDUyYjRhMzRlY2M2N2Q4MSBsZWdhY3ktdHJ1bmsKKzM4NjU2IDdkNzQwNGE2YTVlYTNkMjQzNzcxNmNlZjE5Y2I5YTE2YmM2MjQzZjIgcmVsZWFzZTI0LW1haW50CiszODY1NyA3MTllYjEwMmVhNDQ4ODRmZmI5OTYyY2VlNDVhMGI1YjUwMTk5N2YxIGxlZ2FjeS10cnVuaworMzg2NTggZmIzOWY0ZWVhZWE0NzYyNzVjMDE4NGE3MDcwNWQ4YzBhZGMzZDc3OCBsZWdhY3ktdHJ1bmsKKzM4NjU5IDJlZTU3NWI5YjYwZTVkMmE5NTBhYWQzZDQ0Yjc4YWI2ZmQ1Yjk5MTIgbGVnYWN5LXRydW5rCiszODY2MCBmZGU1YTFjNmE0OTdlNTQ1NmQ2Y2Y3NTVmMTM5MzRhODAxYzlhYjYzIGxlZ2FjeS10cnVuaworMzg2NjEgOWQ4MGU2MzAwNGNkYzZjNTE5NzhiMjJhYmNmMDI5ZWMzNWQ5MTZiMiByZWxlYXNlMjQtbWFpbnQKKzM4NjYyIGEzMDVmZWRjYTFiZmZmNTM0YjZiNjc2NThkZDgyMjQ3MjkyNmNlMTEgcmVsZWFzZTI0LW1haW50CiszODY2MyAwNGZhMTMyYzkwMjNkZWMwNGFlODFjYzM2OTA2MDdkNjRkY2VkYTUxIHJlbGVhc2UyNC1tYWludAorMzg2NjQgMzM2ZmVhNDA2ZmNmMDZiODhmM2ZmZWFiNzE1M2ZjNzUxYzJlMTRiZCByZWxlYXNlMjQtbWFpbnQKKzM4NjY1IDRiY2UyZTUwOTYxZTFjYjgwZGRmYjkyZjhhNzJkMWJlNDE0ZWY2MmIgbGVnYWN5LXRydW5rCiszODY2NiA5OTdiMjU1ZTFjY2M4OGJlZjkxODBjYWI5MDQ4NzMyNzc2OTcxNTQ3IHJlbGVhc2UyNC1tYWludAorMzg2NjcgNzYzMDBjNWZiY2VjOGY1ODc4ZjVmMmIzYjcxMjZlYmJhZmNhMzYwOSBsZWdhY3ktdHJ1bmsKKzM4NjY4IGZkZWU4N2I3MDM3YTNiNjAwM2VjODJlMjBkMGJiYTJlMWNlZThlZGUgbGVnYWN5LXRydW5rCiszODY2OSAwYTZhNGNjZjVjY2Y5ZmRkMGE5YjYzN2U5ODk0ZDQzZjAzYWVkNmI2IGxlZ2FjeS10cnVuaworMzg2NzAgMjNlM2RmYzBjNjQ3YThmNTBlYjZhYzE5NDVlMmU1NWU5MmY3YzMwZCBsZWdhY3ktdHJ1bmsKKzM4NjcxIDJiMzhlZDY2YzY3ZmY3NjllMGY0NGQ2ZDJkOTQ0YjNkZTk2NWY1NGIgbGVnYWN5LXRydW5rCiszODY3MiBkYzZmMzE1ZjFmN2YxNWY5NmI5NWQzNGU5OTlmNTBhYzNhYjU1MDA1IGxlZ2FjeS10cnVuaworMzg2NzMgMTNjMWMzMzE2YzZmZGVlNDJhNGRlYWRlNmU0NGQ5MTU1NTk3YmEzNiBhc3QtYnJhbmNoCiszODY3NCBjZjQzMDJjMjFlMDAzZGI4YTczY2Y3MWUzMjI2ZTNlZjdjMjM2M2U3IGFzdC1icmFuY2gKKzM4Njc1IDZkMWVlOWRiMTU0M2VmMjQwMDZjN2QyZjcyZGM2ZDQ4NWU0YjA3ZTggYXN0LWJyYW5jaAorMzg2NzYgOWY0NTRhZjE3ZjdhMzhmYjcyNjUwMDY5MTMwZDlkMTM0YTliOTAzOCBsZWdhY3ktdHJ1bmsKKzM4Njc3IDNlMmVlMjE5NzI3ZDEwMGQ2MmNmYjEzNzQxMGI1MDQ3ZjlhZjFkNzEgbGVnYWN5LXRydW5rCiszODY3OCBiMTRjOGU2MzEwZTcxMmU3NTZkYzIzNjQ5NzUyYTI1MmZjN2M0YmUwIGxlZ2FjeS10cnVuaworMzg2NzkgOWFlYTlmOGJkYjJjNDc4MWQ5YjQ1ZDU2YzY0NDdmYzJmNzMzYjQ5MiBhc3QtYnJhbmNoCiszODY4MCAxMDdlMWU4YzhmYzdlNWEwZDE0M2JiNDIzNGZmMzE1ZmUwYmI4N2Y3IGxlZ2FjeS10cnVuaworMzg2ODEgMjNiM2U3OTA2ZTBmNjM4ZmE4ZjkyY2JjMjQxMmM1NjZkZTFkYTI4ZiByZWxlYXNlMjQtbWFpbnQKKzM4NjgyIGMwNmM5MGJlYTdkYjA3MDM5ZmUyZDZjOWNhYjJlNDAxOTA5YmRkZjUgcmVsZWFzZTIzLW1haW50CiszODY4MyBiYmI2MGUyNjljZThkYzUwODdjYmI4ZTQzZGZjZTY3MTBjNDc5MGU5IGxlZ2FjeS10cnVuaworMzg2ODQgM2RhMjFmZGMyZWU3MjIzNTVmMDYyN2RmZWU4YWUyMGVmZGIyMzA4NyBsZWdhY3ktdHJ1bmsKKzM4Njg1IGYzZjk5YWNhZTU5ZmY4NzBmYTFkMDQzYTRjYzJiMDM3MTNkYjRmMTYgbGVnYWN5LXRydW5rCiszODY4NiA0YzEzYjAxNDZiM2Y2YmI0MjQ2OTM1YTc1M2I2Mjg1MDkzODM1NzI3IGxlZ2FjeS10cnVuaworMzg2ODcgNmQyMDAwYmFmM2RlOWFhZWI0NjhkMWFmZTFiNjc0ZTA5MGM5YWZkNiBsZWdhY3ktdHJ1bmsKKzM4Njg4IGYxM2YyY2JkZjRkZTI5YTVhNjk5OWNhMDBiMzdjNmM2ZjJiY2U0ZDAgbGVnYWN5LXRydW5rCiszODY4OSAwODUyZDE5NmI1OTA0M2VmZDkxYTNjNGU0MjhmMjE0MTRhYmJiMzQ5IGxlZ2FjeS10cnVuaworMzg2OTAgNzkzMzUzMWQwMmI0NjIxNDIzMjBiNTNhZGRlYjMyOTJhYWFlZWQ3NCBsZWdhY3ktdHJ1bmsKKzM4NjkxIDY5ZTEwZTYzNTdiZDc2ZjZjZjU5YWE2ZTc1MjhkOTNkMTVlMjZlMGQgbGVnYWN5LXRydW5rCiszODY5MiBjZWJmYmFiMDE3YTZlNjMzNTAyOTM2M2RlZTRjMjQ1MWI5MmFlNjY5IGxlZ2FjeS10cnVuaworMzg2OTMgNzE4YjBiNWE2NDE5ZjhlNWE4MDFkMzliNjVhYjFjZTQyMDMxNWNkNSBsZWdhY3ktdHJ1bmsKKzM4Njk0IDk5YzE2ZTQ0ZTVkNDZmNzQ2YzU4NjY3OGRkMDU4OGQwNzY0YzFjYTUgbGVnYWN5LXRydW5rCiszODY5NSBkNTVkZWFlNDMxMGRjMjNkMWE3OTgxMmZkMDVjMjJiMDFhMmRiNmFiIGxlZ2FjeS10cnVuaworMzg2OTYgOGYyMWVjMzI3NGYxYzQ2OWJiMTZmODNlMDFiNmY5NWUxNzdiMzQ4NyBhc3QtYnJhbmNoCiszODY5NyBiOGZmOWJjMDIzZTY3NTljN2ZhZjc0ZGQ1YmU1M2FkMTI0MTQ5NmYyIGxlZ2FjeS10cnVuaworMzg2OTggNGI5ZGY0ODU2ZjM3YTYzMDY1NzdiZTU2NjBlOTA0NTY0NTAzNDViOSBsZWdhY3ktdHJ1bmsKKzM4Njk5IDIzODBmOWQxZWJhYjk1ZWQ0YjBhNDljZTgyOWRhZmIwODY5ZDRlZjQgbGVnYWN5LXRydW5rCiszODcwMCA1NTQ3ZjkwMzAxMDk4MzQ1ZDJmOTk1NWUxYmFkMTI3MTEyOWZmYzhjIGFzdC1icmFuY2gKKzM4NzAxIDkxNTIzY2FlZTE4MzkwNWU2NDZkMDZmOWZiNDlkMGQ0MWUyZjgzYTEgYXN0LWJyYW5jaAorMzg3MDIgZTBmNTE5ODUzYTlmMjgwODYxMGY5M2MwZTA4YWE3NjdkYmRlMmY0NiBhc3QtYnJhbmNoCiszODcwMyA1N2M2YTZhODAyYTA4MzE2N2NlYmIyMWQyZjYyZWU1YmM5ZTkyYmJjIGxlZ2FjeS10cnVuaworMzg3MDQgM2M3YjE5Njg5NDc5ZDhhYzVkNDIxYWZmMjExODFmOTRkYTFmZjIwNiBsZWdhY3ktdHJ1bmsKKzM4NzA1IDhmYzhlN2E2MDcxYzUwNDE2OTAzYzg1MjYzYTU1YWFmZWExMzA3MTcgbGVnYWN5LXRydW5rCiszODcwNiA0OWUzMGM2YzkxYzhjZTVhZmJmYWViMmZjNDM3YTM0ZWJiNzAwMzYzIGxlZ2FjeS10cnVuaworMzg3MDcgYjAxNjIzNmRmYmQ5ZGQwMmNiZTRjYzNlNDU0NDU0MTI4NDZmMThjMCBsZWdhY3ktdHJ1bmsKKzM4NzA4IDI2ZjMyNzJkOWUxMTJlYTFlYWFjMzBkNjNiNDI4Yzc2NDUwNDhjMTQgcmVsZWFzZTI0LW1haW50CiszODcwOSBhNDEyNjM4OTUwYTEzYWQzNDBkYTk3YTY0YmJhNzAxMDM5OTk4NmI3IGxlZ2FjeS10cnVuaworMzg3MTAgNzIxZTYwZjQ1NGYzYzg5MDY1NGM5OWM3ZDMwMzUyN2Y3OGM5NzcyYSByZWxlYXNlMjQtbWFpbnQKKzM4NzExIDI5NTZkZjhlMGE0MDQ1YzBmZjEzYzZkZWE0MmQyYWZiZGNhYzE3NzAgbGVnYWN5LXRydW5rCiszODcxMiAwN2E0ZThkOGViNjkyMjEyZDkwZGQ0MDMyNGU5MTFiMDk4MDE3OTllIGxlZ2FjeS10cnVuaworMzg3MTMgNGVhYWIzODU2NmM5NGZmODQ5ZjQwMGI5Y2Q2OGExNzQ5YWJkN2ViZCBsZWdhY3ktdHJ1bmsKKzM4NzE0IDAxYmEzYjQwNDMxZjI5ZmVkNjI5ZTdhMjEwMTg1MDYyZmE0MDE4YzQgYXN0LWJyYW5jaAorMzg3MTUgZjFjNjMwMzMyMWQ3MGJjMzVlZjVkZjdkYWRjNjVjMjdlYzA1Yjg1OCBhc3QtYnJhbmNoCiszODcxNiBkNjlmZGU0MGM3MTljOTVjNmQ1MDU4NGIwNjA3YTk3MmM4MWJjZWY5IGFzdC1icmFuY2gKKzM4NzE3IDc2MTFkZjIxYTU5MDA5ZDUzNDBjMTcxNmJhNDEyNTc5OWFiYTlmYzkgYXN0LWJyYW5jaAorMzg3MTggOTNjYWE3ZGVjZWUzNjA2NTA5MzQxY2JjMzFhYzVhZTQwYzZlZDIwZiBhc3QtYnJhbmNoCiszODcxOSBhYjgxYzgzYTlhYzZjY2FhYWM0ZTI3ZWQxNmQ4MzZhOGYzZmEyNjZiIHJlbGVhc2UyNC1tYWludAorMzg3MjAgNjUzY2MwOWZkOTMxMDE2MjMxOGRhYWQ5NjUwMWJlMGI3OGFlYjk5NiBsZWdhY3ktdHJ1bmsKKzM4NzIxIDQ3YzU4MDNhYWI0NTgxYjk4NzdhMTBmYmRiODllYWIzOGUzNGQ0ZTMgbGVnYWN5LXRydW5rCiszODcyMiBlYzg3YTExNjQwZDAwMmJjMjZmMGUwYTRjNDRjMTc0OGYyNzdkODYxIHJlbGVhc2UyNC1tYWludAorMzg3MjMgZjkyZDg0NWY4NzAzMzM0ZDg4ZmExNThiZTBkN2JkYmYyOWIwMWIzYiBsZWdhY3ktdHJ1bmsKKzM4NzI0IGE1MGZmZTY1OTExYjBkNDk4ODBhNmExMDU4ZWYwNTgzNWU5ZGQyOGMgcmVsZWFzZTI0LW1haW50CiszODcyNSAwMGZmZGJmY2Q1YTkyNzg2OTJlZTZlNzExNTJkNTU2YmZhMGUyYTk2IGxlZ2FjeS10cnVuaworMzg3MjYgNWNhZjgwZjU1Yzg2MzhkOGY5NTUwNzQ3ZGFhNjY0NWFhYTgxOTdhMSByZWxlYXNlMjQtbWFpbnQKKzM4NzI3IDk4NWRkN2YwNjQyMDgxZWE5NGEzNGY5OTRlOWFkZDlmMmYxZDMwMDIgcmVsZWFzZTI0LW1haW50CiszODcyOCA0ZjA4MzhiNjhiYmJmMWRlMjlkNzY2YjNkZTM2MjVjMjk2OTFhYzVlIGxlZ2FjeS10cnVuaworMzg3MjkgYjcyZGY4YWVlNTZkYThmOWNkMjc2ZTg2Y2RiMDNlZTlhZGQwZjA5YSBsZWdhY3ktdHJ1bmsKKzM4NzMwIDI4ODkyZTY1MTJiYTZiOWI3MzE5NzYwNmYzZjJkOGY0ZDk4MjM4ZjcgcmVsZWFzZTI0LW1haW50CiszODczMSAzM2E5ZTQwYTU4ZDUyYTAyMGMyYjUyODY4MDc5NDg5NTMyNTgzYTg1IHJlbGVhc2UyNC1tYWludAorMzg3MzIgYWQyZGQ4ODQxMzdmZjU3MDM4ZDRlMDUzNjljMTI4MDE2YWI2YzE3NiByZWxlYXNlMjQtbWFpbnQKKzM4NzMzIGJiYTAzOWYyZTA1MjliMTZhM2VkNTYyOGIxMmJjYjE1Y2NjZjgyYWQgcmVsZWFzZTI0LW1haW50CiszODczNCA3Y2ZkYTk4OTg4NjM5NjgzMWY1MmUzYTU4MjUwYjRlYWZkOGNhYjg2IGxlZ2FjeS10cnVuaworMzg3MzUgM2JjZGQ0NDZhMTNiOWNiNzlkMjhjNmU3ZThkNGQzYjJjOGJhOTg2OCBsZWdhY3ktdHJ1bmsKKzM4NzM2IDMwNmY3ZDRkYjVlZmNjYWYxNzg0ZTdmYzMyZDQzZDhjZGJjNzVmYjcgcmVsZWFzZTI0LW1haW50CiszODczNyBhNmM1ODYyNjZkZWE1OGZiYzE1YTIxMjVkOGRlYjdkZWJiZDQxYjk0IGxlZ2FjeS10cnVuaworMzg3MzggN2UyZDhlMTdjZjE0YTQxMWIxZTU2MDU0OGQ3ODBkY2VmMmRmMzhjNiBsZWdhY3ktdHJ1bmsKKzM4NzM5IDMwYjAyYzdlZjhiYTY3MDJlYmZhNmU2YjIxNjliNWQzY2Q1Mzg1ZTkgcmVsZWFzZTI0LW1haW50CiszODczOSBmOTA1NGQyMzU4NzAwMjlhZmEzM2VmOTQ1YmNhN2VjZTk5NjE2YzEwIHJlbGVhc2UyNC1tYWludAorMzg3NDEgZjMxNDIzYzQ5NWQ2N2YwMjQzZTEzNGE1Yzc1OTkyZTU4YWYzZjNkOSBsZWdhY3ktdHJ1bmsKKzM4NzQyIGRlMTIxODk5ZDAyMTYxNjM0MGJmODY3NDA5N2I1N2NkMWEzZGU3MzAgbGVnYWN5LXRydW5rCiszODc0MyA1ZGRhMWY5ZTYyYTczNmNmYjVkMGJiMDEwYTQwNWMxMGJkZDNiZmMzIGxlZ2FjeS10cnVuaworMzg3NDQgMDY1OGU2ZWZmYWM3MDQ4ZjFlOTUxZTc2ZGJiOTFjMjA3ODJmYWZkMSBsZWdhY3ktdHJ1bmsKKzM4NzQ1IGNkMmMwNDRmNjk5ZDdjOGNjZWY1MTE2YzgxNGFhYjFiYmIxN2U2YTQgbGVnYWN5LXRydW5rCiszODc0NiAxM2Q1Y2FhMWU5ZDAyYWE5OTk3MDNlMjhkMzM3NWJlOGM2MDA5NjU4IGxlZ2FjeS10cnVuaworMzg3NDcgNTFiYThjZThkOTJhZmRmMDNiNjhhODExMDJkY2ZmYzJhYjI3NWI0MiByZWxlYXNlMjQtbWFpbnQKKzM4NzQ4IDU4ZjNmMGQwNDVmNTQ1YWRiOWFjM2Y2MDhlZmI3NjQxYWE0MzRlNDUgbGVnYWN5LXRydW5rCiszODc0OSA4NDQ1MzA1MDg0NzU2N2Y4MDE3Mjk4MzVmMWJmNWIzMDAxODdjZjM0IHJlbGVhc2UyNC1tYWludAorMzg3NTAgYWVmNzEzZGU3YTIzYzY0NTExODhjZWRhOTA0NmJjOWU3NDlhYmJmMyByZWxlYXNlMjQtbWFpbnQKKzM4NzUxIGVhZDVlNzNhYmI1M2M5OGYzYzY4YTlkM2I2M2Q1N2M5NmIzN2ZkNGEgcmVsZWFzZTI0LW1haW50CiszODc1MiA2M2M1ZDZjZTA3NjM0ZDY2MmUxNGU4NzdkMmJiZDVkZmI2Mjc0ZDk4IGxlZ2FjeS10cnVuaworMzg3NTMgN2UxYTMxMzNmZmYyZWE1OTJmMzI4MTk5N2E2ODI1MThmMzkwZTg4YiByZWxlYXNlMjQtbWFpbnQKKzM4NzU0IDZhZmYyMjYwMGUxNWFhMzY2YWY4ZTZhOTEwMDExYzBlYjYzZmIxZDUgcmVsZWFzZTI0LW1haW50CiszODc1NSAxMWZkMjYzN2U1YmI3NDRlM2ZkZGZkNDBhNGRhZGJhMmRhMjM3ZGNjIHJlbGVhc2UyNC1tYWludAorMzg3NTYgZWI2YzI5MTViYWRkMzVjMzQ4ZWI3MWE3ZGRjM2NlZDU5MGNmNTczOSByZWxlYXNlMjQtbWFpbnQKKzM4NzU3IGE5NTExYzE1MTI0YmU1YTU4MDMyZWJlZmMxN2RiNTBhYWFhYjBhMDkgcmVsZWFzZTI0LW1haW50CiszODc1OCAyZWEzZDY5MTUyMDQxMDNkOTljYTBkZDA1NzVhMDNlODEzNGYyZTk0IGxlZ2FjeS10cnVuaworMzg3NTkgMzkzNmNkN2YxNmYyNTVmMTFjOWMyNDM4OWFmZDc0MzlkYzNhYzEzYiBsZWdhY3ktdHJ1bmsKKzM4NzYwIGI4NWU4MTA0NjBlZmM1YjQyNzcxYTc1ODVlNzVjYjg3NDQzMTJiYTIgcmVsZWFzZTI0LW1haW50CiszODc2MSBmZTUzMWI1ZGNmZDYwOTJiMTQ0NDAwNDM4ZjNhNGVkYTdiNTlmYzIxIGFzdC1icmFuY2gKKzM4NzYyIDgwY2M0NGVhYmRlZTI1OWEwMDc1MDE4YzI2YTYzZGQ1ZmJhZWI3Y2EgYXN0LWJyYW5jaAorMzg3NjMgNmIyMWRjOTQzOGFkNWMxZWY5OTk2MjdmOGY4ZTU0MmU5YzZhZmZkNyBhc3QtYnJhbmNoCiszODc2NCBjYTRkOGI0ZmJiMDVkYjMxMDY5YTZlODA3NWExMjcxMTk5YzhjMTU5IGFzdC1icmFuY2gKKzM4NzY1IDVjMWViYjVhZTUyMTQzOTY4MTQzODM5YWY3ZGY5MTNjOTQ2YjAzYTQgYXN0LWJyYW5jaAorMzg3NjYgNWU4YzhjYjExZTViZGMyZjNmYjcxY2M3NmFiYTBmMTQ2NzJhNjhkYyBsZWdhY3ktdHJ1bmsKKzM4NzY3IGFiNTgyMmY3NTE1YTVmZWM1NzJmMDMyY2U5OTFiMzIzNmNiMjJhZGIgcmVsZWFzZTI0LW1haW50CiszODc2OCA3MWZkN2VlNGI3ZjUwYmM5MzNmNzExNDA4MWFmOTMyZGU4OGFiZDJlIGxlZ2FjeS10cnVuaworMzg3NjkgMzRjZGZjNWRkN2VhMzRlNTc2NmQ4ODk4ZTI0ZTAxYjFhODE3M2MyNSBsZWdhY3ktdHJ1bmsKKzM4NzcwIGI0OWQzOTExMWM0ODZjZWQ4MzkxYzc5Y2EzNWYyODVhZWM4ZTE2ZTcgbGVnYWN5LXRydW5rCiszODc3MSA1NTM1Y2UwZmY3ZjlmNmY1ZGU5ODAxNDI2OGUwMGI1NzVmODgwZjAyIGxlZ2FjeS10cnVuaworMzg3NzIgZGE0NjA4NDFiNjNjYjgzZDYxN2JhZGY4OGZiZGIxMmQ4ZGFkYWM5ZiByZWxlYXNlMjQtbWFpbnQKKzM4NzczIGJjOWZiYzIzY2Q0YTU5OTE4ZGIxMjcxYjA4NjRkNDBiNGRkOTU2YTMgbGVnYWN5LXRydW5rCiszODc3NCBiNjQ5OTczZDA5NjJlYjA3YjU4OWJlZjM0MjVmYWU2M2ZkZDk5NDM1IGxlZ2FjeS10cnVuaworMzg3NzUgNmRkMmQxMzZlODQ2NjFjMDc4MzhkNDIzMzkzNDE0MDVlOWIyYzQ1NSBsZWdhY3ktdHJ1bmsKKzM4Nzc2IGU3NjJmZWE3OGNiMjM2M2JlMTYzNWVlNzQ2ZmVhMmY4YzkxNGU1NGIgbGVnYWN5LXRydW5rCiszODc3NyAwMTQzZDk5MGQ2MGNjNjAxMjBlNDZiNGExMTMwN2E5NzNjYmM2YzBjIGxlZ2FjeS10cnVuaworMzg3NzggMThkYzkxNTgxNjBkNWI3ODc5NDdhMzBjNzYwNThmNjYwMzNlMTdhMyBsZWdhY3ktdHJ1bmsKKzM4Nzc5IDVhNTIyMjI1YzRkYjM1OWZiN2Q1ODM4NWUzNGRjMmMzMzYwOWRjMTcgcmVsZWFzZTI0LW1haW50CiszODc4MCAyMGIzYzcyMzUwMmFkNGIzOWYzODM4MWI4ZTQ0YzBiZWNiMWQ4Y2RkIGxlZ2FjeS10cnVuaworMzg3ODEgYzJhOWMzYTE4NDc3NmZjNjE0MjY1NmU1MDBiMjNjZTcyM2NmYTJkNyByZWxlYXNlMjQtbWFpbnQKKzM4NzgyIDlhN2Y0NmM0Mjc3MzE0Zjc0ZDU5ZjZiYzEyNGRmYTQ3YjY5NWQ5MWMgbGVnYWN5LXRydW5rCiszODc4MyBiOTk2NzQ3YzA4YjY4OTE1MDIwNjU0MWRiNTJjODM5YTFlMWJiNDliIHJlbGVhc2UyNC1tYWludAorMzg3ODQgYWY1ZDQ4MDE0YjNlNjM2NTg2YTg2NmM1ZDUxODA3YjE3YTEyZjcyZSBsZWdhY3ktdHJ1bmsKKzM4Nzg1IDViYzkxYmIyNDRiMTkwMmZmNDMxZjcxNWNiZmI2YjdmNDBiNjQzNjQgbGVnYWN5LXRydW5rCiszODc4NiA2NGJjNWE5MjJmNTc5MWI0Yjg3NWNlYzBkYWU3YjE4NTdhNzU3NzQ2IGxlZ2FjeS10cnVuaworMzg3ODcgMTQzY2RhNWE5MzQ4MWZkZjA3MzJlZjRjYzYwMTg0ZjY5NGYwMjU1ZSBsZWdhY3ktdHJ1bmsKKzM4Nzg4IDAzNjEzMDk3YjljYjM0NTQxMGY1NDdmNDYwYjA1NTZiNjM3MDAwYmUgbGVnYWN5LXRydW5rCiszODc4OSA3OTIwMWY4MjBlZDA0YTkwZGFhY2RjYWQ0NjE2ZjVhZjA5ZDhlMmIyIGxlZ2FjeS10cnVuaworMzg3OTAgYWQ2YWEyZWVjYjU2OWIxNDUyNjNlZTlkMTBiYjNhOTRjZjI4M2ZiYyBsZWdhY3ktdHJ1bmsKKzM4NzkxIDA3NmE3YzdmZTI4YjgxMGI1MDAwMDU5ZWQ4MGMzZDNiOTMzZjk1ZTggbGVnYWN5LXRydW5rCiszODc5MiA3YzI3ODBjOWU1MWJkZjMzYTVlYjFhOWJmODM1NDZlNTA3YjIzMTNkIGxlZ2FjeS10cnVuaworMzg3OTMgODYyZWJiNjIxMzU1MTA5MjU4YWI5NDk0ZWU3MTc5MTQyNzJkZDZhNiBsZWdhY3ktdHJ1bmsKKzM4Nzk0IDllNjU5Y2I3MjdlYTY4YzlhNTQzOWU4Yzc5NjY3NTE1ZDkyYjIwMDggbGVnYWN5LXRydW5rCiszODc5NSA0NDQ2OGVmYjUyNWVkNTc4NmRiOTg4MjdkMjFkOWFlNjc0YzkxYTkxIGxlZ2FjeS10cnVuaworMzg3OTYgNDhjNzFmZjM4NTc4MmNjMjI3MjUzZTJkMGNlODVjMGI0M2U2ZGEzYiBsZWdhY3ktdHJ1bmsKKzM4Nzk3IDE5MjRhMDdmN2YyM2FmN2U5YmM5Y2IxNTEwNDU3Zjc5MDZhMzhjMWYgbGVnYWN5LXRydW5rCiszODc5OCA0MzNkNzM3OGRmYzJmYzIzMTAwZjBhNmU5MWIxYTNiN2E5MGMxNDk5IGxlZ2FjeS10cnVuaworMzg3OTkgNjFlYzhiNzk1NjQxYzRkMmVhNTQzMmYzY2JjYTI3ZWRjMTgxN2Q3NiBsZWdhY3ktdHJ1bmsKKzM4ODAwIDNiYzI4ZjYzNTE3YTRkMDNjMzQ2MDVjMDMwMzVkZmViMWU2MWY1ZWQgcmVsZWFzZTI0LW1haW50CiszODgwMSBkNTIwNzRkODk0ZGYyOTI5NDg3NjkwZGFjMjYyNjFlMzQ0NmE2MDgyIGxlZ2FjeS10cnVuaworMzg4MDIgZmFkMWU4ZTA5NDU2ZDBkNTFlZWNjNDk1NmU0MDQxNTVlN2Q1YTNmNSBsZWdhY3ktdHJ1bmsKKzM4ODAzIGZiY2IxZGE0ODBkZDRiMWFmMmIxN2Q3NzFlZDdhNTE5NzVjNWUxNzUgcmVsZWFzZTI0LW1haW50CiszODgwNCAxYWM5MTRkM2JkYzM5NDhkMzQ1ZTU2YmI3OGM5OTRjZDI1ZGNlYWJkIGxlZ2FjeS10cnVuaworMzg4MDUgZGFkMmI2MjA0OTc0NTU1OWVmOGQ2ODAxYmM1ZjhhMzMxNGFlODI3NCByZWxlYXNlMjQtbWFpbnQKKzM4ODA2IDM0ZjliMmFkYWUyYzZiZmI5NTlhZGFlMzg0YTY4N2EwMmMyODdjZTMgbGVnYWN5LXRydW5rCiszODgwNyAzOGI2NTQ4MzY5ZmFlODVjMmU5OGYwNzVjZjIwOWI3ZDdiNGNjZjdiIGxlZ2FjeS10cnVuaworMzg4MDggY2QzYjk1MjcwOGFmMGY5YWJlODgwOWI2OTQ5NDA4Y2QwY2FhMGYwYyBhc3QtYnJhbmNoCiszODgwOSA0ZTYyOWViZDBlM2U1N2IwZjc5NzQ3ZDA5NmZkMjNiZmU0NDk4MDcwIGxlZ2FjeS10cnVuaworMzg4MTAgMDIwZWQ2NzFhYTYyMTVlYTkxMTYyZmU1NjcxZjRkYTdmMmQ5MWUyNiByZWxlYXNlMjQtbWFpbnQKKzM4ODExIGQ3YTIxMTdmY2E0MjUzNTBlMjg4ZTE1MTY3MTM2NTQwMmJmYjRkYWIgYXN0LWJyYW5jaAorMzg4MTIgYzYwNzI5YTU3OTMyNWY0MzFmZDQzNWRiMmZhMDQyZmI2MjI3NTJiYyBhc3QtYnJhbmNoCiszODgxMyA4ZTZjZDUwMGM4ZmI1YTU0MDgwN2JmNzMzNDMyZTA0NzM4NThiY2YyIGxlZ2FjeS10cnVuaworMzg4MTQgZmM0NDJjMmViMGNmNmRiZDhhZGExZGIxNWUxN2JmZGQ4NjdlMzVhOCBsZWdhY3ktdHJ1bmsKKzM4ODE1IDk4NmQ0NmM0ZmFlYjIyOTA5OGM3NjI4ZTkwYzBlNzhhNjMzZjcwOWEgYXN0LWJyYW5jaAorMzg4MTYgYzhhZmRkOTI3MTVjMzI3NzUxNDM3N2UzMmYxMGQ3ZDQ1MTk0MjAxNSBhc3QtYnJhbmNoCiszODgxNyA2MDgzMGFkNjI3NWUyYzgwMGU2Njc3YTQ0N2ViYjk2OWE4MWJmMjJmIHJlbGVhc2UyNC1tYWludAorMzg4MTggYTk5ZWUyNTBlMTBjMWM1NjMzYjhjOWQwNzM3YjczMjQxMzI0MjI4ZSBhc3QtYnJhbmNoCiszODgxOSAzMGYzN2MwZTE1OTI1NmM5YzgzNjYxY2ZjNTM5ZDExNzAyYmI2NGZkIGFzdC1icmFuY2gKKzM4ODIwIGE5NmI1MDE0OThhODA4ZjAyMmNlYjgzZjBhNmE2MDJlOTNkNTIwYzcgYXN0LWJyYW5jaAorMzg4MjEgNWM2MGNiYjY1MzMwY2ZhYTU3OGIwNTQ0ZTljMWQzMThkZDFkNGI0ZiBsZWdhY3ktdHJ1bmsKKzM4ODIyIDcyNjdmYzQwYWRhYzE1M2I3ODNlMzczNzIwYjFiODM4ODg3YzRmOGMgbGVnYWN5LXRydW5rCiszODgyMyBkNDM1ZDIxNGE1OTI0MTQ1MjA3Y2Q1YjQxMjI1MjFjZWEyZWQ0NmE4IHJlbGVhc2UyNC1tYWludAorMzg4MjQgODc3MTlhZTkyODhjZWRiYjk5ODNlZGU1MWJjYzY1MWJkMTRkM2Q4NCBsZWdhY3ktdHJ1bmsKKzM4ODI1IDBmMzA2MWY0OWE5ZTg5YWI2OGY4MGNhOGE5ODE5NDljZjk0NTkwMDUgbGVnYWN5LXRydW5rCiszODgyNiBhZjU5MGY2MjJjMGJjM2JlNmZlMjkyMTMyZWIyNjQ5NDk0MWM3ODZmIGFzdC1icmFuY2gKKzM4ODI3IGQ0ZmZjNzcxZTlmZjk2ODhkYzQxNjI0ZDUwNjU5NmU0NDRkYmRlOTIgYXN0LWJyYW5jaAorMzg4MjggYjQ3N2M0ZDdhMjBjMWE2ODIwYzE3Y2I5MjgzNGIwZTYwMWJiOTg1ZiByZWxlYXNlMjQtbWFpbnQKKzM4ODI5IGM0ZWExN2NmNTIxMTE1NjQzZjFlM2Q5MjY0Y2ZhZGFiMTY5OWE1ZTYgcmVsZWFzZTI0LW1haW50CiszODgzMCA4YjAzYjA5MTQxZDI4NzE3MWYxZTk2M2YwNmQ2N2NkODcxNjJjMjg4IGxlZ2FjeS10cnVuaworMzg4MzEgYTEzMDk2Yjg1OThiOWE2N2RiNTM2MDIyNjcwNThiN2VlOGE2ODdkYyBsZWdhY3ktdHJ1bmsKKzM4ODMyIDZiZGMzNDI2ZDQxMTNmMTI1ZTBiY2E0OWUwMTExODc0ZTU1YTJmODEgcmVsZWFzZTI0LW1haW50CiszODgzMyBmOWUzMWRiNmM3MDM2MDM2ZWE1YmMzNmY0NDE3OTQwYjk0M2Y1MmM4IGFzdC1icmFuY2gKKzM4ODM0IGZiYjJmM2JiOGNjY2QxNWY0MWU4OTYwYzY5ZDFiY2FlOWQ1NjljMTkgYXN0LWJyYW5jaAorMzg4MzUgMjgwNGFhMDQzOGNjOGQzNmZjM2RlMWM4OWQyMGY5ZTFhNTNmMzA5MCBsZWdhY3ktdHJ1bmsKKzM4ODM2IGFlMjVkNDVmODk4NzYzNTRiZjg0MzI1NmZlMzdmYjZlZDczMWU5NWMgbGVnYWN5LXRydW5rCiszODgzNyA2N2E4OWI0M2RjYzcyM2E1NWI4ZjMzNmI2M2NjNGMxMWJlMDcyYzM5IGxlZ2FjeS10cnVuaworMzg4MzggNGM4ZTUyNDNjYTQyNTMxZTQzOGY5YjFlMDkwMjQ1ZWU5NzBhODMzMyBsZWdhY3ktdHJ1bmsKKzM4ODM5IGQzNGJkZWQzMTlhYWU1Y2ZmZjQwYjlhY2IzY2Y5ZWFkNWI3ZDMxOGUgbGVnYWN5LXRydW5rCiszODg0MCBiYzEyM2I5Y2VmN2ZhOTY5YzdiMDIyOWExZjFlMjNhYjY0YmEzZTYyIGxlZ2FjeS10cnVuaworMzg4NDEgYzY2YTdmYmUxNmNmOWU1MWM5YjExMDQ5MDMyYzU2NDkwMGRhYTVjMiBsZWdhY3ktdHJ1bmsKKzM4ODQyIDEzMzFjNzc5OTY0MDkzNjJkZGM3YTY5NDYxNDgwMGU5YjAxZWI0N2EgbGVnYWN5LXRydW5rCiszODg0MyA3ZjcyMTA5ZGZiNGZhZmM3OGUyMTEzYTJkMjY0YWQ5MjVlODgzMThmIHJlbGVhc2UyNC1tYWludAorMzg4NDQgZDA1NWY5NGQwOTM2YTY5MGYyMWYxZDZlYTc1MTM2ZDc2MjEyYTU5OCByZWxlYXNlMjMtbWFpbnQKKzM4ODQ1IDk4NTdkYWEyMjgwN2I3MzliYjA1YTllZGM1NmNjMmU2MmQ5M2Y3MjUgcmVsZWFzZTI0LW1haW50CiszODg0NiAzNTgxODQwYzgyZTcwMWI0YjQxZGEzOTBjNTllZmY0NDI3MGVjYzgzIGFzdC1icmFuY2gKKzM4ODQ3IDA4ZTIwZTljNzZmYmYzZWUzN2Q4YWExODMxYzFiNWJiNmVkYjY5MTkgbGVnYWN5LXRydW5rCiszODg0OCAyOTRkYWJjYjM3OWI1MWJlN2NjNDFhYzIzMWUwYjEyNzI1ZWJlMjJmIGxlZ2FjeS10cnVuaworMzg4NDkgOWExYjFlMWFlNjUzZmM5NTYzMTM0NzMyMmFiNGY3YjU5YzM0NTU3ZCBsZWdhY3ktdHJ1bmsKKzM4ODUwIDQ5YzZkY2VkMDhjMjFmNDQzYjZhNTQxNDFlZGYxYWYxNjZiMzcwOTYgYXN0LWJyYW5jaAorMzg4NTEgYzFhOGMyZDdlNTI4YmRiNzk3MGY1MmQ1ODA0OGFjOTI1ZTVjN2VjNCBsZWdhY3ktdHJ1bmsKKzM4ODUyIGFhZWFiMjQ5Yzg2YWQzMjdlZjEyNzJjMzBmZjdiMDU0ODY5OGQxNTcgcmVsZWFzZTI0LW1haW50CiszODg1MyBlYzk3ZTRjMzcwNTYzYWY5N2QyNjQ4ODQ0NjY5NWYzOTZlNjA4NDY4IGxlZ2FjeS10cnVuaworMzg4NTQgNWNjYzg3NzdjZWEyNzE1Nzk2ZTMzZDI2YzYxMWFiOGY2NDE0MTFiZSByZWxlYXNlMjQtbWFpbnQKKzM4ODU1IGE1MTg1YWMxZTRlYzZjYWZjN2QyZTU0ODI4ZTc1MjYzMDNjM2FmMTkgYXN0LWJyYW5jaAorMzg4NTYgMTBhZjE2NTgzYjc1NTU4OWNjMGY0NjI0Zjc0YjI5YjQwMzBiMGQ2ZiBsZWdhY3ktdHJ1bmsKKzM4ODU3IGRhYmE4NWVmNjU0YTQ5YWJjYWIwYTE0NzZkYjIyMzRmMzQ3NGU2YzkgcmVsZWFzZTI0LW1haW50CiszODg1OCBjMGI0ZGU3NDFiMzgzZGZjMzg1ZGE4NTYzZGMxYjZiNzlhNjEwMWIzIHJlbGVhc2UyMy1tYWludAorMzg4NjAgYTEyOTNlZTZlMWRiOWE5NGM4ZmFlOTJlMjFlNmFiNWJjNjM4NGFhZSBsZWdhY3ktdHJ1bmsKKzM4ODYxIDNjNjc5ZDAwODc5ZWJiMWI1MTNiMThlZjZhZWIxNDEyY2Q0MjBmNzcgbGVnYWN5LXRydW5rCiszODg2MiA0NzVmOGFkY2IwMzI5NDBlNmY2NmU0MDdkMTVjZWVjNDI3ODE0NzdiIHJlbGVhc2UyNC1tYWludAorMzg4NjMgNzI4N2I0MTE0NWFlMzc2YTBmY2VhNzAxMjIxNzYwNWFlYjcwNjc2NyBsZWdhY3ktdHJ1bmsKKzM4ODY0IDJjNzQ5OGMyYWU3MDdmZGEzNzJjZDc0NGRkNWYyZmRhOWU4ZDg2MmUgbGVnYWN5LXRydW5rCiszODg2NSA3NGMxMmMxZjM2OTI5NDYxOTM1ODQzODRlYjczYjIzOGY3YmJmOWY1IGxlZ2FjeS10cnVuaworMzg4NjYgOWZlNzgwMWZjOWE0YTIxODkzYTljYTQ2ZTMyMjdlNDRlZTE1YTNlOSBsZWdhY3ktdHJ1bmsKKzM4ODY3IGExNzAwMWY4ZTFiNGViNDExZDQxY2EyZWE1YzQxOTJiZGMxMjlmYzkgbGVnYWN5LXRydW5rCiszODg2OCA5YzkxNzJiZTFmNjk3NWViYjViNDI0MjQ2YTE3YjRlOTQxZjA0MTYwIHJlbGVhc2UyNC1tYWludAorMzg4NjkgZTRlMGNmZjE2YmM3ZTk3Yjk3NDJlN2NjM2ZmNTg4OGNkYzFmOTk0NiBsZWdhY3ktdHJ1bmsKKzM4ODcwIDc1ZjUxOTYxMDk3YjlkOTc1OGQwNDE4Mzk1Njc4NTI2MDhiNDRmYjggbGVnYWN5LXRydW5rCiszODg3MSAxZTdhNmE1YzM2MTQzZTRjZjY5ZTk2N2I2M2JkZTNjM2NjM2RjNDhiIHJlbGVhc2UyNC1tYWludAorMzg4NzIgYjExNjMzOWRkZjI3ODVmMzQxMTcwZjhiZDk1ZTM3OWZiMGJhOGFiNyBsZWdhY3ktdHJ1bmsKKzM4ODczIDM2NThhN2UxMWMxNDhkODNjMDhhYjgzZjA5YTNiNWVjMGVkNzA3OTUgcmVsZWFzZTI0LW1haW50CiszODg3NCBhZTVmMjc0NDZmODE5MjQ3NTNkZGRlMWJiMmE0MTAzYmZmNmY4NjA0IGxlZ2FjeS10cnVuaworMzg4NzUgZjMzMDA3ODY0MjQzZjA5NjA2Njg5MTYwNzhlODAwYzRjYTUwNTZjNiByZWxlYXNlMjQtbWFpbnQKKzM4ODc2IDkzMzljOTlhMjk4MjgxMDdhN2FjOTNlZmE4MmY0Y2RjYWMwYjU0ZTAgbGVnYWN5LXRydW5rCiszODg3NyA0MDQwODg1MDNhNzgwMjk2YTExZDJkMTIxMDczMzQ5MDI5MWNmZmE3IGxlZ2FjeS10cnVuaworMzg4NzggMzc2N2NkYWE2NzI4MjQ4Y2FlZWExNmU5NGQyMzY4NTRkYTcxZmU0YyBsZWdhY3ktdHJ1bmsKKzM4ODc5IGM5MWU1ZTMxYzVmZjFjMmFmYmIwYzdmNzU4MzZkMDcwOTY1YWVhMjYgbGVnYWN5LXRydW5rCiszODg4MCA2YmEyOTNiNzExNWI3OWVkMjFlOWM3NjAzODE1OWJkNmUwNzIxNzJhIGxlZ2FjeS10cnVuaworMzg4ODEgODBmYjI4OTFiMzNiZmNiMTEzYjBjNDMzODI1OTcyOTVkNzU1NjdkNiBsZWdhY3ktdHJ1bmsKKzM4ODgyIDRhMzNjNThjMzE5YzA4Yjg2MTgzYTVlYTkyMThjODA0Zjc5M2IzOTggbGVnYWN5LXRydW5rCiszODg4MyAwNDc0MzRhY2I1YTkxOWQzNjQwNjFhNjY4OTM3N2UyNjY3MzlkZTNiIGxlZ2FjeS10cnVuaworMzg4ODQgNTBiZWQ2NzhlZGRhMmQ3ZjIwODJiNmM4MzY1NTdhYTIwYTVhMTJhMSBsZWdhY3ktdHJ1bmsKKzM4ODg1IDFlYTgwNzc2OTMyOTJkMDE3MGUzNjVhYzllYmI3MDNkNzgwZjFmZTcgcmVsZWFzZTI0LW1haW50CiszODg4NiBmNmFmOTQzMDFlYmMyNzUxOTNkYmUwNDljY2JhYjJhMzRhOTBkZGU2IGxlZ2FjeS10cnVuaworMzg4ODcgMTQ1YzAzYTg1ZWE4Mzg3MjUxZTBjMDk1MzM4N2EzOGRiNmVmNDJkOSByZWxlYXNlMjQtbWFpbnQKKzM4ODg4IDkzNjI5NzcwYTkzZjQ2NzlkNGQ2YTdiOTQ4MjMyYjZkMjY3NjNjOTYgbGVnYWN5LXRydW5rCiszODg4OSA4NmY0YjE4MTdjYWE2OWM2YWEwYzU0MTQzOWNiNmU0NmIwNjYxYTM2IGxlZ2FjeS10cnVuaworMzg4OTAgNjcyZTVmNjUxNzJjMmYxNjlhMWJkNDg2NDFlM2M0NzliYzZlYjgzOSByZWxlYXNlMjQtbWFpbnQKKzM4ODkxIGQ0NTE1NTQ3OTk3NjY2YzBhZjhlY2YyYmUwODNjNGUwYzZjZjRmYjcgcmVsZWFzZTI0LW1haW50CiszODg5MiAwOTA1ODEyZGY0YTVmMTQ5MjVkNTExN2Q0MmIyOTdjMmViMTZlMjQ2IGxlZ2FjeS10cnVuaworMzg4OTMgMWRkOGEwZDY0NDMyMWNiZDAzZTU4YWY0OTY3N2Y1MjA4MWJkY2FlYyBsZWdhY3ktdHJ1bmsKKzM4ODk0IDkxNjUxNjk4MTI2MTA2MWZlMDY1MmVjNDZkNjYxZTVmZTNiYzIxNjQgbGVnYWN5LXRydW5rCiszODg5NSAzOGQwNGVkMDI4ZDFlZjVhZmY1MzExM2EzMjNhYzhlMDc4ZWRmYzkxIGxlZ2FjeS10cnVuaworMzg4OTYgNWU1MTFkZGVmNDhiMmRiNWQ2YjkwZDNiYzA5OTg1ODdlMWNkNWM4NSByZWxlYXNlMjQtbWFpbnQKKzM4ODk3IDE4NzNlOGFmNWE4YWMyMTU0ZDUyYWYwNTgzNzVmNmZjNzY0YTE1YjggbGVnYWN5LXRydW5rCiszODg5OCAzY2FiYTgwNzIwNGJiYzg4MGJmYjVmMTY1ZTRkNjllYjNkOWYxOGM4IGxlZ2FjeS10cnVuaworMzg4OTkgMGIwMWVlODZjY2ZkODhmYmY5ZmY1NTIxMGVhYTIwZmJmZmQ2MjIzZCBsZWdhY3ktdHJ1bmsKKzM4OTAwIGEyOTFhZDlhYTZhMTBjMDE4MWE4YTgxNWIzOTY3NzAyMGQ3MWNmN2MgcmVsZWFzZTI0LW1haW50CiszODkwMSA5YTA3ZjZkNDgxNmFiMWNkYjE4ZjNjMTUyYzQyODk2MzdhOTVkNDNiIHJlbGVhc2UyMy1tYWludAorMzg5MDIgMTg0ZjEwZTExNmZmZjk0MzU1MWU1ZWY1YWZiMjc5MjQ5YjNjMDQ1NiBsZWdhY3ktdHJ1bmsKKzM4OTAzIGVmOTMwY2FlNjNhOGUyMWJlNTJkOTliMjc0YWFhMjAwNTZmZGRkZDIgbGVnYWN5LXRydW5rCiszODkwNCA2NmUwNDE0Y2RmYTZhYjA4OGMyOWU1NzA2NmZlY2FhZmIxNDRhOGNiIHJlbGVhc2UyNC1tYWludAorMzg5MDUgMTY5OWRjNTFhNWI1NzY5YzY1OTg1ZWRkN2E4ZTAwNDFlYjJiYTc5MyBsZWdhY3ktdHJ1bmsKKzM4OTA2IGIxNDFkNTdjNGZjYTk2YzAxODU0YTRkOTdiNmE3ZWU3NjdjYzM0NzIgcmVsZWFzZTI0LW1haW50CiszODkwNyA5ODU0NDcyYjkyMWJhNDdiMTdhOTY2Mzk1ODg0YzFhMTQwMzdjODU4IGxlZ2FjeS10cnVuaworMzg5MDggZWYxODQ1NjJlOGUwM2RlOTYxYjE4NzZhYmE4ZTliZjYyMDJhMmU0NiBsZWdhY3ktdHJ1bmsKKzM4OTA5IGMwOTU4ODhmYzU0M2M4MGM5NTBjMDMwZGNmOTEwZmIzZDI0OWY5ZDcgcmVsZWFzZTI0LW1haW50CiszODkxMCBiMzE3MzZmNjI1YmE3ZjljNzUyODBkNTE1MzFiODY3MTMwZDU0NWU2IGFzdC1icmFuY2gKKzM4OTExIDAyZjEzZTAwZTJlZDEzMDM1ODhlYThkNzllN2ZiZjlkM2MxMzNmYmEgYXN0LWJyYW5jaAorMzg5MTIgOGIwNWE0NzMyY2YzNjFhMzg3NTNlMDlhMDRkZGY5YmE3MjA0MTk2ZiBsZWdhY3ktdHJ1bmsKKzM4OTEzIDAwY2QzNTBjZjdiZjBjNjJkM2ZlMmVkMWMwZWNjNmJiZDZjYmUyZjkgbGVnYWN5LXRydW5rCiszODkxNCBjMGVhZDI5MThjZjc0NTQwMjQxY2ZjYzFjOWRlMzQ2NWE5NGNlOGMxIGxlZ2FjeS10cnVuaworMzg5MTUgZjcxM2U4YWJmMTRlM2NhNjIzZjkyYzk4ODZkNGZlOGRjNTdjZmY0MCBsZWdhY3ktdHJ1bmsKKzM4OTE2IGEyYjIyMjc3NzNlN2ZlOTRiNzM4NDMyNmMyM2Q5OWEzYzJkMWI1MjEgcmVsZWFzZTI0LW1haW50CiszODkxNyBiNDIzYjQyN2UxN2U4ZDYxYjFlYWY2MGQxMzhmNDE1NDRiNWEyMGU5IGxlZ2FjeS10cnVuaworMzg5MTggN2JjYWJiYjZiNGI3ZWY0M2RhZGI4YTMzMTYzZDc2ZDdmZDA5MmZmNCByZWxlYXNlMjQtbWFpbnQKKzM4OTE5IGUzYWM1ZjBhZDNlM2FjYjllZDJjYzhlZDE2MTM5MDkzZjgyZjZhNWYgbGVnYWN5LXRydW5rCiszODkyMCAyMTI1MWUyMjFlNTYyZjBkY2VjMmMxOTg1OWUzYjljMGQ0MWRhYjkxIHJlbGVhc2UyNC1tYWludAorMzg5MjEgMjVhMGUxZmFhOGE1ZWQ4ZjA5MWZjZjFhMGU2YTExYmU0YzI2Mzk3NCBsZWdhY3ktdHJ1bmsKKzM4OTIyIGZjZDJjMzg0Nzg2OTlmMjMxY2M4ZWZiNjQxMzIwZjViYjdkYTYwOGYgbGVnYWN5LXRydW5rCiszODkyMyAxY2RjMDMzNGQ4NzdjNzFhYmZmMTJmZDRkNjdmZTk5OWYxNDBmMmFiIGxlZ2FjeS10cnVuaworMzg5MjQgMTdhYTI4OTYyYjg1ZGFhMzkzYjFmY2JhYjcwN2UzNjE5MDZjNDk5MSBsZWdhY3ktdHJ1bmsKKzM4OTI1IDFjYTdhZTQ4YTkzMTUxYjQ1ZWZjNWVmNjNlY2RiNGE3YTc2MzY2ODUgcmVsZWFzZTI0LW1haW50CiszODkyNiA1MmZlZDJkMDY0MWE1YmQ4ZWZhNGQ3OGE1MDZkNzYyOGYxMDJiNzhmIHJlbGVhc2UyNC1tYWludAorMzg5MjcgODg4MGQ5MWNkYjA5MzgzYTRmZmYzMjAxNzk3NzQzYWNjYTIxYjA0ZSBsZWdhY3ktdHJ1bmsKKzM4OTI4IDc4ZDBhNTU4YjA5MzgzNGU4NjdkMzA2MmYxNWMyZTRkMDk1ZWVmN2MgcmVsZWFzZTI0LW1haW50CiszODkyOSA2NWM5NWFkNjcyYWU4ZmQ1N2RlMzQ0MDI3YTY2YmY1ZjVmNzYzYTBkIGxlZ2FjeS10cnVuaworMzg5MzAgZGU3NmIzNDNkOWM4MmIyYjZhNzJlOGUwYmJkOGNlNjJiNWM3ZWIxZSByZWxlYXNlMjQtbWFpbnQKKzM4OTMxIDQ0ZTNmMjFmMDUyNTkwZGRmYWJjMTI5MDlhZjUxODhhNGNkODlkOGMgbGVnYWN5LXRydW5rCiszODkzMiAxZmI3NjhlYmQ5MGUyYjJjNmY1ZDY1YjE1YTkwZDRjYWJlNDBhZmRiIGxlZ2FjeS10cnVuaworMzg5MzMgOGU5NjgyZmQ1N2Y4ZWE2OTBjYTQ3MDBlOGEzNWRmYzE0ZWFiMjI5NiBsZWdhY3ktdHJ1bmsKKzM4OTM0IGI3NGExYTUxMjkxNzhhNjFmMzI0NDg1N2JmMWMzNzQwNGJlMDFhMzIgcmVsZWFzZTI0LW1haW50CiszODkzNSBlMzk0ZjdlOGEwYzE1Zjg3MDRiMjdjZDcxMDg0NzY3ODQ1NTY0NzUwIHJlbGVhc2UyNC1tYWludAorMzg5MzYgNGEwMmE0MzE3NjU1NWJhY2EzMDQ1ZDU1NTJhNmZjNzBhZWMyMjhkNCBsZWdhY3ktdHJ1bmsKKzM4OTM3IDI3NTg0MzYzMDUyMjg2ZTE4Yzg3NjAzMmJmZDBmMmVlYjEzOTMyMjkgbGVnYWN5LXRydW5rCiszODkzOCA5MGZjYTA4MTQ1ZDExNDk3ZTY1YTBmNjYxODRiZDQyNjJmNjJiZGYzIGFzdC1icmFuY2gKKzM4OTM5IDYyZWFjOGQ5NTNjZjFhMGYwNjE5NTU5Mzg3MDdmMThkNTQ4YzU1YzcgYXN0LWJyYW5jaAorMzg5NDAgYmFjODk4ZDM5YjUzOGYxMjgyZjU1YmNhMTc0OWQ4OGIwYmY5NDM4MSBsZWdhY3ktdHJ1bmsKKzM4OTQxIGIzOGMyYWE2NmVlN2IzZTRhNzQ5ZmRlMjA0NTFjZjk0OGUwYjQ0MDkgbGVnYWN5LXRydW5rCiszODk0MiA3NWZkOWE1MTU0YzQ2MWUxZDg3ZGViZWI2ZDc2MTY5NGU1MDNkOWU5IGxlZ2FjeS10cnVuaworMzg5NDMgNDBmN2UxZGExYmRmZTU1MmU1NmY4NzQzNTAyNTYzNmQ5ZDJkMTEzMSByZWxlYXNlMjQtbWFpbnQKKzM4OTQ0IGJhNDcyN2RhMDdlNTRlYmE0ZmE4ZTJmMjQ4Y2RhNjAwNDUwN2VlNzIgcmVsZWFzZTI0LW1haW50CiszODk0NSBjYjJiZTQ0MjlhNGNmZDNhYzhjMTk1MjRlNjE5ZGQ2ZDRhMzdiYzZiIGxlZ2FjeS10cnVuaworMzg5NDYgZWE1YzIyODBmOTE1NzQyMzdmM2Q0MWFhMTg4ZmUwMmI1Yjk3MDI2MyBsZWdhY3ktdHJ1bmsKKzM4OTQ3IDBkZjA1ZWFhMWUwOTZlZWNiZDAyMTI3ZjFlNjViNTkzNDczODQxM2QgbGVnYWN5LXRydW5rCiszODk0OCBhYzU2ZDE3YmMzZDE3MGNiMWJmNmVlOWE1YjBmMWU4NzE5OTg0YzRlIHJlbGVhc2UyNC1tYWludAorMzg5NDkgZmNmMDEwYzM3MGNiY2ViNzdjMzVmYWE0OGI3NjFmNDI1MTI4YjIwOCBsZWdhY3ktdHJ1bmsKKzM4OTUwIDVhMWEzMWQ5ZTM3ZTNjMTM5ZGU5N2I5YmFlNGFlODE4ZTQ3MTU2ZDMgbGVnYWN5LXRydW5rCiszODk1MSAyMTViNzg4NWUxMDg1NGM1MTk5Nzc2NmMxZTNhY2FmYjdhNzkyNGRkIGxlZ2FjeS10cnVuaworMzg5NTIgMzI5YjI4YTg1OTQ3NGEzNTA3ZmEzZjI1MWJjYTI1NmQ5OTgwZDg4OSBsZWdhY3ktdHJ1bmsKKzM4OTUzIGUwMzcxNDgwNDg0NWI5MjllOGNjZTVmMDAwYTYxZDRlNTI4MjEwYmUgbGVnYWN5LXRydW5rCiszODk1NCA4YmZlYmNmMDYzNjM3MDE0NTExZTFlNGMwZjc5Yzc4MGY3MDcxMGEwIGxlZ2FjeS10cnVuaworMzg5NTUgYTQ5Yjg4ZTUwMzA1OThmOTQzMjM0OTVmNGNlZGYxYTZhOWZkNzMwOSBsZWdhY3ktdHJ1bmsKKzM4OTU2IGI3M2YxMzBjN2I4NDA1OGU2N2EzNTI0NGU2YjQ0ZjgwZGJhZjVkMWIgbGVnYWN5LXRydW5rCiszODk1NyBkNGRhYWJhYmFhNDVhNWZkZjc0NWRmMGZkZmZjODJiODcxNzM1OTk5IGxlZ2FjeS10cnVuaworMzg5NTggMjlkM2RlZjNhNTZhYjVhMmRjNDBhODgzNWZlNzAzYjU1MzJlYTc4ZiBsZWdhY3ktdHJ1bmsKKzM4OTU5IGYzYjAyMjIyYTgwYTIwNDMyMmVkNzc4MWRhOGYyMWYxMmY5MjAxNTUgbGVnYWN5LXRydW5rCiszODk2MCBjNTU4OTk4NjNiOWM3OWU5YzA2MjI3OTkwNDFiOTc0MWYzMjE4MjMxIGxlZ2FjeS10cnVuaworMzg5NjEgMTlhNTA5MWYyNjU4MDY0MDY1MDc4ZTA1OGNmYjJkZTU0ZWYxY2UzOSByZWxlYXNlMjQtbWFpbnQKKzM4OTYyIDU1NTQ1MTFiMzcyNTQ5MTFhNjg2NDE2MjFhMTUzZjE0Mzg1OGQxZmYgbGVnYWN5LXRydW5rCiszODk2MyAwODc3MzVmODY3MDFjMTlkNDMwMWFjMDkwN2M5MjAzMDYzNzY4NTMzIHJlbGVhc2UyNC1tYWludAorMzg5NjQgZDYwNDdlNTVmN2FkM2Q2Y2UxZmNkY2NjOTJhYTkyMTEyZjc2NWQ4NCBsZWdhY3ktdHJ1bmsKKzM4OTY1IDNiNDFiZDg3ODkxOGQwMzA5OGYzNDFhYWUyZDcxZjk1ODk1ZWZjYWYgcmVsZWFzZTI0LW1haW50CiszODk2NiAxNDkwZjgxMWY5M2E5NGE1NjExMDllNjZiMGUwODI2YWUzZDZmY2I1IGxlZ2FjeS10cnVuaworMzg5NjcgNzNmMjRmNWM0ZTNmOTMyNThmMGEzZGZmMmYwMDBhYThkMWQwOTVjZCBsZWdhY3ktdHJ1bmsKKzM4OTY4IGMwNWU0NWU4NzI0ZTJmZTRhMmFkNDA1Njc2ZTU1MzgzM2NjNTU1NjIgcmVsZWFzZTI0LW1haW50CiszODk2OSA1NTU0NWUwMjMxOTlmYzA2YTUwMTZjZjNlMjk0YjkwNzY0NDQ1MGZiIGxlZ2FjeS10cnVuaworMzg5NzAgNTYwODg3NDk3MjFhOGFkN2I3YTg3ZTdjOWNlMjk3MzVhYWZkNjNjOSByZWxlYXNlMjQtbWFpbnQKKzM4OTcxIGQ0MzBiMjk2NDFiYTQwYmU0ZjNmN2QxNzZjNzEzMTVjMmY4OGVhMjMgbGVnYWN5LXRydW5rCiszODk3MiA2NjI0ODhkNDE4N2RiNjg4YTI1MjUwZmVhOGI3M2U2ODA3ZjFlMjczIHJlbGVhc2UyNC1tYWludAorMzg5NzMgODIzNzNkMjUyNWVlMGJkYmE0OTk0ZDNjNTUwZmI4MDdlODllMzQyMyBsZWdhY3ktdHJ1bmsKKzM4OTc0IDVmNzYzZjllNTBmOTM3MGRlODNiOGI3YjJkNmQ5MjEyMGI5MmM2OGUgYXN0LWJyYW5jaAorMzg5NzUgZjIzMDA3ZjkyMTdiMTM1ZTEwZWJjOGU0MDc0ZGI5MWQxZDExYmYyNiBhc3QtYnJhbmNoCiszODk3NiA4YWU4ZTY0Y2E5YmQ0ZDg3NTRjOWVmYjk5MTc0M2Y3NThiNTE4MDkzIGxlZ2FjeS10cnVuaworMzg5NzcgZTc5NzkzYThlZWVhYjVjOTg1MmY1Y2M2Y2M1OGFlMGI0ZDJlNDE2YiBsZWdhY3ktdHJ1bmsKKzM4OTc4IDRmZGE0MDYzY2M4Y2MyYzdjZTVmZTlkMjczY2EwMzFlNzIxZjcyNmYgcmVsZWFzZTI0LW1haW50CiszODk3OSBlYzRjMTZmZTczODRjZWQ1NjVhOWJjYmNlZjhiY2ZhYjY2MmY3MjdiIGxlZ2FjeS10cnVuaworMzg5ODAgNWU0NWRjYmY3Y2ZmZDA0YzNlMmZmNDMxYWE0Mjc1MWNiOGI3NDcyYiBsZWdhY3ktdHJ1bmsKKzM4OTgxIDc0OGM4ZTJkNDBlZWMwNWNkNWZlMTlhYzI4OTg3NzFmNjcyNmViYzggbGVnYWN5LXRydW5rCiszODk4MiBjYTVlZjdlZTNmNDE3YWMzMTFjY2YxMDk0OWJmNDcxZmE4NGZhYTMzIGxlZ2FjeS10cnVuaworMzg5ODMgZWU5OWRiMDZjMGViY2ZkODZhYzVkYjkzYzY2MmI0ZTNiMTAxNjNkMSByZWxlYXNlMjQtbWFpbnQKKzM4OTg0IGM1NTUxMGRhZWJkMjUyZDQxN2I0YWE2YjYwMGE3ZjAyZmQwMmMwOTQgbGVnYWN5LXRydW5rCiszODk4NSA4MDc2NDI0ZDQ1NWQwZWIzN2I3MWUyNDNiNGE3YWZkYzlkYzFmODBjIGxlZ2FjeS10cnVuaworMzg5ODYgMDc4ZGE0NzRiMzAyMTMzYTMxYzlmODJkN2NlOWYzYTkwNmZhZDJkOCBsZWdhY3ktdHJ1bmsKKzM4OTg3IDJlYjU2OWI2Y2UyMzRhODZkNjliZmRkYTQwZTFkOTEyNDZiYjhmMzEgbGVnYWN5LXRydW5rCiszODk4OCA5MjRlMDI4MmI1N2U5ODM1ZWM2YTExZjg3ZmU0ODBmMWNiYjFlYjE3IGxlZ2FjeS10cnVuaworMzg5ODkgOTJjZDk1MWNjNGIxOGQ4YjJhM2M4OTM5NGRhNGI4ZjNlYjJlMDdlMyByZWxlYXNlMjQtbWFpbnQKKzM4OTkwIDg1MTQ1OGZmZmQzNDIxMGY2MjBlYjM4MGUxMWM2YWEzMzM0OTZhM2MgbGVnYWN5LXRydW5rCiszODk5MSAxNzNlOTBlMGQyZTMxZDdkOGI0MDY2NjAwNDZjNDY2MzU3N2VhZmQ1IGxlZ2FjeS10cnVuaworMzg5OTIgYWExYzUzNjY2MDdkNmY1YTk0ZTlkMzI3YWZkYWJkNGExY2JmMjVjMCBsZWdhY3ktdHJ1bmsKKzM4OTkzIGEyYjUwNDVkZjRmODU2ODBiZjBmZDZkMDAzODM4MGJjZThmOGU1OTUgcmVsZWFzZTI0LW1haW50CiszODk5NCA3NGE4NDU4YjIyNzYwMmY5YjRkNTVmOGQ1MGFhY2E5YWZlZDllOTUxIHJlbGVhc2UyNC1tYWludAorMzg5OTUgYWJlNWE1ZTM5Y2NjN2RhZDIzZmRlYTg5Yzc2N2JmOWJlNDc5OTVlOSBsZWdhY3ktdHJ1bmsKKzM4OTk2IDkxYjhjZGJmZDdiNDY1OTQwMWY5YWYxNzQ4YWY0MTc2YmY2ZjViYTggcmVsZWFzZTI0LW1haW50CiszODk5NyAxMzMyZjJlNzA1YjIxNmVkMWY0NWViOWIyMzdjNmEyYjA5YTc4Y2UzIGxlZ2FjeS10cnVuaworMzg5OTggODM1YWIwNjk4NGE5YzhkOGY2NWExYzEyNzQ1M2FkZTFmM2M4NDE0NyBsZWdhY3ktdHJ1bmsKKzM4OTk5IDVmYjIxNjMyMzFkMzM1ZDU5YzE1YWY2NDViNzFjMGFkNGUzYjZkMDEgbGVnYWN5LXRydW5rCiszOTAwMCBkYjE2NzZmZGI1YjkxYzA2NDAwYzM3MjRhODJhNmMyNDM3MGJkNDUzIGxlZ2FjeS10cnVuaworMzkwMDEgZjg5Y2JlNjlkYjYzZmEyNWJhYzhhZWE2ODZkYjJhZjY3MzMwN2M2OSByZWxlYXNlMjQtbWFpbnQKKzM5MDAyIDUxZmUyNDEzODQ4NmU5NTRjYzI2YmI5NDU2M2UwYjM1ZTljOGM4MzcgbGVnYWN5LXRydW5rCiszOTAwMyBjNDI1Y2RjOGFlOGE3Y2E4ODZjMWE4NGQyNGE1NTU4OGVhOGEyNGNkIHJlbGVhc2UyNC1tYWludAorMzkwMDQgNGY1ZDI2ZjVlM2U2NDUyZmQyMTUzMzNmNDQ5YWU5NTczYTkwM2RhZCBsZWdhY3ktdHJ1bmsKKzM5MDA1IDQ2NjZiNDU3NGM5Y2I1ODNmZmE2NTAzYzIzOTNhNDhhODM1ZmRkYjUgbGVnYWN5LXRydW5rCiszOTAwNiA2OTY0NTgyNDBhNjVlYzRjMzdkODA1NmVjODI4MTkzYjg5YTNiOTY0IHJlbGVhc2UyNC1tYWludAorMzkwMDcgMGE5YTQxMGJmNzRjYmIwMzhiNTQ2ZDc5ZWRmODJiOGM4YzMwOWE1NyBsZWdhY3ktdHJ1bmsKKzM5MDA4IDJiNTE4NmI1OTViMWFkZGRkYTdmMDUyMmU5MmIwNDVhZTg0MTU3MDIgbGVnYWN5LXRydW5rCiszOTAwOSAyN2FhNWVlYzU0MDA0ZDdjMzIzZTY1NzYyZDkzMzg1NGI5ZjhmNzA1IGxlZ2FjeS10cnVuaworMzkwMTAgZDFiYWMyMGMwYjlmNGUxMmJmYzE4ODBmNDI4ZWI1NTAxZWY3MzBhYiBsZWdhY3ktdHJ1bmsKKzM5MDExIGFiZTk2ODYzMjVjMzhiYTA4MzZiMzM3NWUyMmNlMGM1YWU3MWNjYjUgcmVsZWFzZTI0LW1haW50CiszOTAxMiAyMDE1ZDE2ZDI2NDcwNDZiNTJmYmZmMDVlNzZjNGY2MjhiYTkxZjk4IGxlZ2FjeS10cnVuaworMzkwMTMgYzZiN2ZhZGYwYWRhZTI3ZmVjNTU2YTBhNDMxZjIxMWE2YmE0NTJiYSBsZWdhY3ktdHJ1bmsKKzM5MDE0IDE3Y2NhYzY5NTQxMzQwMDBhYzk5MzlmNDhmZGI5NGQ3ZjFlZTUzYzAgbGVnYWN5LXRydW5rCiszOTAxNSA0YTVmMTgxYWMzMjQwOGFkMWZlYWY2YmI5NmIzNTg2NTRjNmU1ODk1IHJlbGVhc2UyNC1tYWludAorMzkwMTYgYTUzNTg3Mjk1ZjIwNTk2NTk2MjAzZWQxZjliZWY4MTBlYmVlMDEwNiBsZWdhY3ktdHJ1bmsKKzM5MDE3IDMyMzhhZTZkMmIzMDQyMzMzOWYzNzEzOTQ4MGM2ZDMxYTNmYjZlZGMgcmVsZWFzZTI0LW1haW50CiszOTAxOCA0Mzg0ZTU4NzkxMjYxNDE5OWMxMzkzZDJhNzQ0ZDc1OTc1NWNjNTkyIGxlZ2FjeS10cnVuaworMzkwMTkgNjhiY2U2OGM4ZjkzMjc4ZmY1YmRlZGMyYzVhMGZiOTA1MThjNjQ1NiByZWxlYXNlMjQtbWFpbnQKKzM5MDIwIGIyYmQwNWMwMWEzNTFjZjgzYjJiMTFiMTc3ZjQ0MDE1NTUxYWM2MzggbGVnYWN5LXRydW5rCiszOTAyMSA5ODE3OWM4MjgxY2RiNjEzMjYwYWM0ZDJiMzdkMWI4MmM0OTg2OWQzIHJlbGVhc2UyNC1tYWludAorMzkwMjIgODM0MWNlZmRlY2FjZThjMzJhYWZlOTkyYjIxOGQwZjNhNDE2ZWQyZiBsZWdhY3ktdHJ1bmsKKzM5MDIzIGYwYWUxMTk0ZGI2OWVhNWU1ZTE3YTNkODFjZDYwYTVmYzhlMjc1ZjEgcmVsZWFzZTI0LW1haW50CiszOTAyNCA4NjBkN2Y5M2U2YjRjOWFlYTQ1YjNkMjBkMDFlOTAyMTRlNjAyMGVhIGxlZ2FjeS10cnVuaworMzkwMjUgNTZhYzQzZDlkNjI1OGIxYTYwNmE1OTEwZjlmN2M2N2UzMzdkZTg0MSBsZWdhY3ktdHJ1bmsKKzM5MDI2IDE3MTRjMjQ5OTI4ZWY4YTBkNWE2Njk4NTBlMzc5YjlmZDIwNGIwYTQgbGVnYWN5LXRydW5rCiszOTAyNyAyZDA2OTNiOWYwYmQ4Yzc5NGQ0OWZhMzA1ZDBiNDk3MmVkYzg3OTkyIGxlZ2FjeS10cnVuaworMzkwMjggZjU1ODlmYzNkOTc3MTQ4M2IzZGFmODI2OWY3ZjAyOGQwNTNkMDQ2ZSBsZWdhY3ktdHJ1bmsKKzM5MDI5IGFjZjY4ZjY3Yjk3NWM3NTFhY2JiYzYwYWJkNWQ5Y2FiYjUyNDMzYWQgcmVsZWFzZTI0LW1haW50CiszOTAzMCAyMzRiMjJhMmFjZjNiNzk2MmVhYTA0NzRiN2MyZTdlNTcwMDU3Y2IxIGxlZ2FjeS10cnVuaworMzkwMzEgMmU5ZTY0MmE1OGNlZDFmODliNGU0ZDg3ODRhOGE5MjgwMTdiODk4YiBsZWdhY3ktdHJ1bmsKKzM5MDMyIDRjMjM3NjIwMTExNWQ1YWFiOTI0MjMwYzk4ZDhmZDNiNzQzMzg5OGEgbGVnYWN5LXRydW5rCiszOTAzMyA1MjJjOWE0OTA0NDEzYzk4OTM1ZTFkMjc3MzIzZTE1YmIzZmI1ZjAwIHJlbGVhc2UyNC1tYWludAorMzkwMzQgMDlhOTEwY2I2YzhmZjAzYjgxNTdiMjg5NzlkZDA3YzZkZDkyMjJkMCByZWxlYXNlMjQtbWFpbnQKKzM5MDM1IDk3M2FhNGVlMTYxNTJhZGEzNzY2MmFjNmQwZjZiZTUyNWVjMzk5MDcgbGVnYWN5LXRydW5rCiszOTAzNiBiNmQyYTlkMWE5MzNhN2MwZjhiMzUzZjM0MjEyNzQwYzMyYzMzOTQ1IGxlZ2FjeS10cnVuaworMzkwMzcgZjNkMzE1MWY4NDE3OWYxZmZiNmVkZjFmNTIxZTA1MWY1MGY5MDQ4NSByZWxlYXNlMjQtbWFpbnQKKzM5MDM4IGFiODNhYjI3YzgzN2I2NDFjMGEzOWM0YjBlMjFiOGU1YzMzZWRmOGEgbGVnYWN5LXRydW5rCiszOTAzOSA1ODYzMjA5MmUwMjMyNzBjOWFmMzQxYmU0M2JiNzRjMTFiZGM2NmUzIGxlZ2FjeS10cnVuaworMzkwNDAgYWRmMTg5ZWI0ZjU4YThlNTk3MzdmZmYwNmU4MmM5NDExZmMwNjU1MCBsZWdhY3ktdHJ1bmsKKzM5MDQxIDU4NTA1OWRlMmI0MDRhZGZjOWE5YjlkMjY0N2Y2NmJiYThiMjc4NGQgbGVnYWN5LXRydW5rCiszOTA0MiBiZmM5MWQ0YWY2NDUzMmEwZTFkYTg1NzI2NmYwZjUwZTY1MTNhNTBhIGxlZ2FjeS10cnVuaworMzkwNDMgMmZiMGM3NmQwMjUxYTFhNzAyNjU4ODJmZDgxMTE1NzZmNTgzZDk5NiBsZWdhY3ktdHJ1bmsKKzM5MDQ0IDdlYTJiZTJjMGUxZGUwZjdhYzhiY2U4NjAwY2JkMmIxNDQ3MWVjYjYgbGVnYWN5LXRydW5rCiszOTA0NSAyZDgzMzEyM2IxMTkwNjM4Yjg4Y2NkZjkyMDJiZDg5Nzc4NWVkMjhmIGxlZ2FjeS10cnVuaworMzkwNDYgMDQ4Njg5NTlmMWZlNjgzMmNjOTk0OWEzY2JiNWUzYTMzNTdhN2JmYyBsZWdhY3ktdHJ1bmsKKzM5MDQ3IGRhNzcyMDA3ZDM0ZDgwNTlkOTYyM2IyNjI0ZThiYTYwM2E3ZDhmNjIgcmVsZWFzZTI0LW1haW50CiszOTA0OCAwZWM3MTE1MmM3ZTJiZTEwMWUxNTkyZGE3YzZmOTMxZjhhNDFiMDBlIGxlZ2FjeS10cnVuaworMzkwNDkgMmVlNjNmZjQ1OTcwZmRlMzM3MDIyODA5Y2I5MDQ4ZmU1MDE5ZmE1NyBsZWdhY3ktdHJ1bmsKKzM5MDUwIDUzNGY4ZWE1NzM3N2VhODkzMWQ1YjI5N2I2YzdjYjVlNzQ5ZDMwNTggbGVnYWN5LXRydW5rCiszOTA1MSBkYjJjZjc1OTk0OGFmMjUxMmI1YzIwM2IwYzZmZTY0YTVkOTRkYjlmIGxlZ2FjeS10cnVuaworMzkwNTIgY2RlYzk3OGI5MTZjZTI1YjcxNTMwYWZmMjA1YzhkODNmOGM2NThiMyBsZWdhY3ktdHJ1bmsKKzM5MDUzIDcwNjgxMjY3YTc0YTlhNjM3NjE1MzE1NWQ3ODdiNTljY2U1YzA4NzggbGVnYWN5LXRydW5rCiszOTA1NCAzZTBkZDYyZWUzMWJmN2NkODY0NDVmY2YzOTk4ZjM2YzY2OGZlMGM2IGxlZ2FjeS10cnVuaworMzkwNTUgMDA4N2FmMDk1M2Y0ZGM1ZGE5ZTI3NWRlYjIxNWUzOWJkZDEyYzQyNiByZWxlYXNlMjQtbWFpbnQKKzM5MDU2IDVkMzNkODNlOGRlYzhhOTRhMGQ5Y2EzOWU2ZjNkNzJlNjhhMWIyNDUgbGVnYWN5LXRydW5rCiszOTA1NyA2ZTkzNDQyZTI2ZGQwM2Y0OWI2NTViY2NkYzY5NjUyNzFmNDhiYWI2IGxlZ2FjeS10cnVuaworMzkwNTggMDEyYTBhZGEwZDA1ZmU4MmY0YTMxYTgyNzE1Njg1ZWE2OThjYTlkZiByZWxlYXNlMjQtbWFpbnQKKzM5MDU5IDJjYjYyODYwMDA1ZjYwMGE0MDlhZGJhZjAwMGM3MTU3NGMzZjYxY2MgbGVnYWN5LXRydW5rCiszOTA2MCA4NmU5ZjYxNjk3ZDhhZmRmNDE1NzUyMTRkZTRlNzJhYzVhYTkyMmE0IHJlbGVhc2UyNC1tYWludAorMzkwNjEgNzdkZTIxY2NkMjEwZTRhMmQyNjliM2YyZjRhNjllMjZkZGI4NGQ2NiBsZWdhY3ktdHJ1bmsKKzM5MDYyIGRjNjhkZTcwMzc2YjQwN2U5YWU3MTA0NzE3YjZhZWRhYmI3Y2FlZjIgcmVsZWFzZTI0LW1haW50CiszOTA2MyAzOWJiOGE0MGEyYzg1ZTVkOGFlMGIyNGRhMGMwODcyMjU2OTg0MGIzIGxlZ2FjeS10cnVuaworMzkwNjQgODI5ZjY2ZDU2MTQwYzI5ZjNmMDRkZDJlYzlhODg2NDM0ZDM3NGYwNCByZWxlYXNlMjQtbWFpbnQKKzM5MDY1IDNkZDhkNDFlYzM1MDMwMjA4MDQwMmE2ZGNhNjk4N2Y0ZWFiMzkzZGQgbGVnYWN5LXRydW5rCiszOTA2NiAzM2E0ZDdlNWM4MmYyYmNiZTRkNWQ0NWJlY2M2MjBmNTNmMzY5MjczIHJlbGVhc2UyNC1tYWludAorMzkwNjcgYmJiODRiNTg1NmZjZTRkZWNiNWYyZmVjYWU2OTA1NTEzOWVmY2I1OCBsZWdhY3ktdHJ1bmsKKzM5MDY4IGZiMmY1YWE0ZDVhYjAxZjVmNTZkY2RiNDhmNzgzOTU0MjY4NjM0ZjcgcmVsZWFzZTI0LW1haW50CiszOTA2OSA4ZGJiNzMxYmFhNjBmMDY1NGFiYzRkODhhNjMxYjZlMGM0YjgwYWFhIGxlZ2FjeS10cnVuaworMzkwNzAgZDYwYTUwYTkwZmQxNTBlZTgyMzUzYzZmYmFiZDdmMWRhYTdlMDEwYyByZWxlYXNlMjQtbWFpbnQKKzM5MDcxIDMyNTNkYmQ3MmI2MGFjZGFmODYyYzU3YTc2MDIzYjZhY2Q4MTk3OGUgbGVnYWN5LXRydW5rCiszOTA3MiBlNWY2MmUwNDljNmZkOTIxMGI0ODBjNDQ4OGI4YTU5NDA2NzA0YmE0IGxlZ2FjeS10cnVuaworMzkwNzMgOTEwYjVkYjQ2MjNlMzFlYTA1MDFlYmZlMWMzODIxMjZkMjI3NDFmNSBsZWdhY3ktdHJ1bmsKKzM5MDc0IDk5MzA5ODAyZDQ5MDQ4ZWZjZmU2ODhkZjRkODdiZmRkYjhmZTJlNDEgcmVsZWFzZTI0LW1haW50CiszOTA3NSAyOTg1ZmM2MzA5YTg0YTllNmNiMmQ5YTEzYjQ5MDNmMmJmMDk5MTc3IGxlZ2FjeS10cnVuaworMzkwNzYgZjg0MGY0NDcwMzI1MTlkMTE1NDVjY2FmZDc4YmQ0ZGJmOTRjNTJjMSBsZWdhY3ktdHJ1bmsKKzM5MDc3IGI4NDEzOGQ5OGNmYTAzZmQ5MDE1MDM2MWU4ZTNhZjJjNGNmYjc4NjggbGVnYWN5LXRydW5rCiszOTA3OCA3MjhhMGRlODgzOTVjMjMwZjY2YTQyYTk5ZjUwNDRiM2I2OTI5NjBlIHJlbGVhc2UyNC1tYWludAorMzkwNzkgMDZjNzYyNzIyODkyYjhjY2QyYmY1MDU1MmQ4YmUwZDA2YmVjMmJhMSBsZWdhY3ktdHJ1bmsKKzM5MDgwIDRkMWRhNjM2MTJlYjVjOWRlODc0NGY1YjdmOGM0MjZkYjgwNGM5NDkgcmVsZWFzZTI0LW1haW50CiszOTA4MSBhMzFhNzcwYmI3Nzg1ODc0ZTQ0NzExODM3YTBlM2EwYjVjMGMyYTUzIGxlZ2FjeS10cnVuaworMzkwODIgZjU0NzNhNzYyYjUwMTZiNjJhYTUzYzg2ZmIyNGNiODExNjk3MzAyNCByZWxlYXNlMjQtbWFpbnQKKzM5MDgzIDNjNmFlZDNmM2EzMTAyYmJiMWMzMmJkZmUyNzMyY2FiY2QzOTM1MjEgbGVnYWN5LXRydW5rCiszOTA4NCA4MWNhMzVhZDkxOTllODgxNDgyZDFhZjk5OWVmYmYxZjgzNTg0MWUzIGxlZ2FjeS10cnVuaworMzkwODUgZGFlYmZkZTBlMWNmMWM0M2U4YWNiNjFkMWIyNmZkYjQ3ZDJjM2FjNyByZWxlYXNlMjQtbWFpbnQKKzM5MDg2IGM4MmI3NDZjNDI4ZjhiM2JiNDdhODVmYzRmMDI1MjNjN2IzNTU4NzggbGVnYWN5LXRydW5rCiszOTA4NyBmN2MwODhhOGI1ZDNjODE5ZDM5Mjk3OTI3Mzc5ZmQ5ODQyYmY0ODAxIHJlbGVhc2UyNC1tYWludAorMzkwODggYjMzYTcyNjQ0NTRmMDYwMTllYjcxOTdkOWFiZmYzMDNmN2Y1MTJjMiBsZWdhY3ktdHJ1bmsKKzM5MDg5IGM1NzQyODJkNTBiZmVlNDBjM2I0ZWUxNzE3NTQ0NDljOTA4ZGJmZmMgcmVsZWFzZTI0LW1haW50CiszOTA5MCA5OGY5NmYwN2Q1NDk4ODUzODEzYTAzOWE2NGFjMGQxYTZhMThhYWU4IGxlZ2FjeS10cnVuaworMzkwOTEgOWE4MTJlYjhhMGFiMjg2ZTZjNmIzMzBmZGEyNGMwYmI5ZjkyZDliMCByZWxlYXNlMjQtbWFpbnQKKzM5MDkyIDczOTAzMmJlOTZkNWQ5MDVmZDM4YjAxNWY1NDc1ZmJlYmIyZjg1NDggbGVnYWN5LXRydW5rCiszOTA5MyA2YWQzZjg2MDM0NmU5OTNhMmUyNzNhM2RjMjg5NzcxMmNhNjhlMGI5IHJlbGVhc2UyNC1tYWludAorMzkwOTQgMDIxYTRhYmY3ZjI3NGIzMjQ1MzY0YzliNzQxODQ0ODMwM2QzNTM4NyBsZWdhY3ktdHJ1bmsKKzM5MDk1IDFhNzBjYmY3NTljYWU1MjA3YTJkMmE3OWM0MTk1ZTRkYmFiZjdjNTQgbGVnYWN5LXRydW5rCiszOTA5NiBkNTc0MjhlODU4ZmMwZDA0ZmNmMDNhMTVjNzkxOGJiMTE5ZDIyMjdhIHJlbGVhc2UyNC1tYWludAorMzkwOTcgZWFmYTEzYmVlZjI2NDZkYzNhNWE0NjFhMmQ5MWRjYThhNjEwM2MwYyBsZWdhY3ktdHJ1bmsKKzM5MDk4IGQ2YTE4YTMzYmQ2MjU2ZjcyMjNmYTM5ZDM0NzI4ZDI3YjU0NzI4NjIgbGVnYWN5LXRydW5rCiszOTA5OSA3OTkwNDU1ZTZhZTBhMGQ2ZDNhYTE2MDkzYjM5Yjk1YWFiM2I3MGYzIHJlbGVhc2UyNC1tYWludAorMzkxMDAgOWU0OTI3M2ExMzM0Mzk2YTA3ZjIzYjlmNzg3MWY1MmViMGUwOGY4MCBsZWdhY3ktdHJ1bmsKKzM5MTAxIDEyMjg3ZWZhODc3N2Y3MjJhN2E1MjIxYWVhZDQ3OGMyYWI4ZDBlZDIgcmVsZWFzZTI0LW1haW50CiszOTEwMiAwZmMyOTAwMjY5MzlhNmMwZDgzMDdkOTE1ZDRmYzNlNTkzMWI1MzQzIGxlZ2FjeS10cnVuaworMzkxMDMgOGZjNWQ2YmMzNWZmZGUyMjNkZDk4NWExNTM4OTg3MDY2OTQwODllOCBsZWdhY3ktdHJ1bmsKKzM5MTA0IDI3YTcxODIyMWU3MmU3ODRmNDFhMTYxODc2ZmVjZjI5NjIxOWVlYjIgbGVnYWN5LXRydW5rCiszOTEwNSBjZjdhODQ5Y2U2MWZhNjA1Zjk0MWRhZGM0MTEwMTcxYzRhOWJkNDZlIGxlZ2FjeS10cnVuaworMzkxMDYgNjk1MjgzY2JlNDNmYzkwYzM3ODU1NDdlMmNlOTljOWVjNDM5MzY2YyBsZWdhY3ktdHJ1bmsKKzM5MTA3IDE2ZGZlMTUyYjllNmRhNWY0MjNkYzIwZmM1NDM3MDdlNWRmNzAxZGYgbGVnYWN5LXRydW5rCiszOTEwOCAzMGIxMzQwMWM5MTI1NjQwODgzNDU4OTcxZThkNDM0MjQ1NTY3ZjMxIHJlbGVhc2UyNC1tYWludAorMzkxMDkgOWU0YmYyOWU2YzJmY2QzYThhZTQ3ZjYyYjQ5YWQ0MGI3NGU3ZDU3NyBsZWdhY3ktdHJ1bmsKKzM5MTEwIGQ3YzViZDU5Njk4ZDA2ODhmMDkwMTg3YTNjYzNkM2NjMzQ4Njg4MTMgbGVnYWN5LXRydW5rCiszOTExMSBlNmIwNzViZDc4NTVhZjU0YTU2NWRjMzFhNTljNDA3YjgwMzEwZmJhIGxlZ2FjeS10cnVuaworMzkxMTIgYjA1Y2MxMmEyMTc5ZjI5NDE3MzY1NDQxYjBkNGRjMWExZjZkOTNmMiByZWxlYXNlMjQtbWFpbnQKKzM5MTEzIGEyMDQzYWZmZDU0MzMwMjExNDViOTc5YmNjZjQ4NTM5OTU2M2I4NDkgbGVnYWN5LXRydW5rCiszOTExNCA1ZDk3N2Q3Y2MzMzU2OTcxNGRmMDczNTJhYzA1ZDViYjAwMjcwM2VmIHJlbGVhc2UyNC1tYWludAorMzkxMTUgMTgxODRkODJkYWVhYTE5YWI0ODg3NTg4MTA0YzhmZjk0OTMwZWVlNyBsZWdhY3ktdHJ1bmsKKzM5MTE2IDlkMWU0NjExMWQ5YTcwODI1ZGI0YzBiOTZjZGJiNTdlODdmYWYxOTYgcmVsZWFzZTI0LW1haW50CiszOTExNyBmOGYxNWU2YWVmM2E0YWE5MzgzMDFkZGY1MzNlNWQ4MTdmM2JmNDE5IGxlZ2FjeS10cnVuaworMzkxMTggOGY3ZTQ3YTBhYWNhYjZjODA1MjlhMGQ4NDdjOWE0ZDA4ODBlYTBjNCByZWxlYXNlMjQtbWFpbnQKKzM5MTE5IDY4MjY2ODAzYzAxMzRkNDM5OGIzOTU0MDRjZjAzMjhhYWEyNjQwMzkgbGVnYWN5LXRydW5rCiszOTEyMCBkMDdlOWMzN2JlYTA5ZTFiODBiMGM0NzYzZjRhYjQ0MDAzMjExODU3IHJlbGVhc2UyNC1tYWludAorMzkxMjEgMjEwY2EzODNhYmU3NjIwZDc4ZjQyMjM1ZDdmYTU5MDdjYWI1ZmUxZSBsZWdhY3ktdHJ1bmsKKzM5MTIyIDc4MDRiYmIyNjQ5MjhlZGMwNGYwZDI1Y2NiYWI3MTNjNjg3YjYyYTEgcmVsZWFzZTI0LW1haW50CiszOTEyMyA0NzQxODUwMjk0MmE4NWFiNmEzMTk1ZWJhODBlNjExNDY5YWVlYjIyIGxlZ2FjeS10cnVuaworMzkxMjQgMmY5Y2ZlY2EyNzk5NmNkZmZhMmM3MWUyNDUxMjM5ZDYzZmIxODI4MiByZWxlYXNlMjQtbWFpbnQKKzM5MTI1IGNkODc5Y2E4NDYyNDQ4NmRjMWRhNDg1NzAzZWY0NmYzNWJjNmZlN2IgbGVnYWN5LXRydW5rCiszOTEyNiA3MjZjOWJjNDljMDQ4YWFmMjFmZjkwMDliNmFiOTliZDNlZTBkM2JiIGxlZ2FjeS10cnVuaworMzkxMjcgNWRmMWM2OTJiYjQxNjY2NDRlYmMwZWQ5MTc3NmZiN2JmZWJjOTIyMSBsZWdhY3ktdHJ1bmsKKzM5MTI4IGUwMjA4N2FjNDc5MjY4MDE5NmYxOTI1MWY2YWQ2OGY3MmQ3OWEwZjIgbGVnYWN5LXRydW5rCiszOTEyOSAzMzQwNTM2NDM2ZjVhMGUyODI1NTA0MWE4ZDYzZmQ3Y2Y5ZjI0MzEzIHJlbGVhc2UyNC1tYWludAorMzkxMzAgYzU4ODg0MTM0MTJiOTRlYmNmYzA2ZTFjZTIzOGRiODk3NjZkZDU1NiBsZWdhY3ktdHJ1bmsKKzM5MTMxIGY5NGQ1YmZhZDA3OGY4MWJjMjU0ODY1MTQzOTQzNTVhM2E1ZWEyNDAgcmVsZWFzZTI0LW1haW50CiszOTEzMiBlMjYzNmQxMDhkN2QwOWE2NWQ4ZTk5NmZhYWQwMzEzMWVjYmY5YmE3IGxlZ2FjeS10cnVuaworMzkxMzMgODk3MTA4MDViYzNkZWZlODYyNGZlZjEyYWM1ZWQyNGUyYzQ3YWI4MiBsZWdhY3ktdHJ1bmsKKzM5MTM0IGQ2Yzg3NjFkN2YzMTQ3NWUwMWQ1ZDcxNWQ2MjllZmRjN2JkZGE5ZTYgbGVnYWN5LXRydW5rCiszOTEzNSA2NjZjMGVkNGZiOWQ0ODBlZWNjYjJjYmYxZTgzNTMzYTRlM2RmYTEwIGxlZ2FjeS10cnVuaworMzkxMzYgODU3ODcxYzcxYzNiYjkwNzZiMGIzOWUzN2RlZTYxMGVjM2RhZDNjMCBsZWdhY3ktdHJ1bmsKKzM5MTM3IGM4NTcwNzBlOTdlOGQxZTNhNzU0NDk0OGI4ZGZiNjdkODFjOTQzZTQgbGVnYWN5LXRydW5rCiszOTEzOCBiM2NiNjQyODlkMmJlMjQ3NjgwZmMyYjFhZDNmZTYwYTE4ZGQ4NGU4IGFzdC1icmFuY2gKKzM5MTM5IDI3NjBhMmQ5OTIzOGYxMjFjMTk0MmYwNzcxYjE4ZmIyNzkyMzU5YTkgYXN0LWJyYW5jaAorMzkxNDAgNWIyM2E1ZGNjNmEzZmYyYjZmODhlNmVhMDliMjRlZDY0MmJlMzcwMiBsZWdhY3ktdHJ1bmsKKzM5MTQxIGZkY2RlNTlkZmExYmQ4OWYyNmZmMTNjYjVhM2QwZDE2YTZiYjM1NmMgbGVnYWN5LXRydW5rCiszOTE0MiA3M2U2Y2I1ZjQwMzllNmMwZGE1OTVlODNlZDI5OWE3ZjU2NzVhNjQwIGxlZ2FjeS10cnVuaworMzkxNDMgM2I1ZjU0NjZmMTA1ZWFhYzJjN2MzOTViZDUxMjQ2YjJiOWFlZjFiNyBsZWdhY3ktdHJ1bmsKKzM5MTQ0IDczNDkyNWI0NmJhN2U0N2RmN2I4ZWE4N2E1ZTc2ZWEyYzU5MTg0N2EgcmVsZWFzZTI0LW1haW50CiszOTE0NSA5MjQxMjE4OTkyYzFlMDY3MTZiM2ZmODExYWI0MGUzZTIxNWMxYzdkIHJlbGVhc2UyNC1tYWludAorMzkxNDYgYjg2MzkyZjU1YjU5N2VmNDMzNzYwMTdjOTgwYTIxZDY0NDBkYWE1ZSBsZWdhY3ktdHJ1bmsKKzM5MTQ3IGI4YzkwNzZkMTc0ZTkyYzUzZGEwMWU4MjYxNDg5MTEyYjg0ZTI2MzEgbGVnYWN5LXRydW5rCiszOTE0OCA1OGQ1YTZjN2I2MjkwZmMwMDg4Y2UxOTY4NGNjNzkzYzNlMTA5YjM3IHJlbGVhc2UyNC1tYWludAorMzkxNDkgNGJmOTllZjA2ZDM4ZGIzNjYxNzBhYTRkMDdmOWMxNzk1ZDM5NzY2ZiBsZWdhY3ktdHJ1bmsKKzM5MTUwIDMxZDk1NWFiMjIzMmVjOWVmNjFjYTYyN2IwZjc0NDkxZWRlZmJmZTkgbGVnYWN5LXRydW5rCiszOTE1MSA5YzE4OGZmNjMxMzE5NzZjMjhkNGZkODc3NWNiNDAzODkyMzQ0NWMzIGFzdC1icmFuY2gKKzM5MTUyIDgxMjdhNTVhNTdjYjdiZDc4MGE1NGQxNDExNGQxODc3YmMzYjY0N2UgYXN0LWJyYW5jaAorMzkxNTMgOWVjZjAzZGZkNWQ2MTc3YjIzZDYwZmUyYzdkMDVhN2RhZDY1ZmMwYyBhc3QtYnJhbmNoCiszOTE1NCBkMjU2NTZhYjNlMWQwM2FlODBiYzM1OWE2MzEzYjBkNTcwMzRhZGY4IGFzdC1icmFuY2gKKzM5MTU1IGFhMmYyZmFlZjdkMjkxZGE3ZGMwNDc2ZjZiY2U3ZThkYWIyY2MzM2UgYXN0LWJyYW5jaAorMzkxNTYgOGQwZDM5NWMyMTFlZDc5NmE5MmFhMWUwM2Q5NDU4N2MzYzNiZDBkNyByZWxlYXNlMjQtbWFpbnQKKzM5MTU3IGUwNTk4OTgzZjBhNWY2MjM5Nzg3MDlhODZiYTIxNjI1MjVlMDc4NDggbGVnYWN5LXRydW5rCiszOTE1OCBlMWY3ZmNhNzg0ZjNhNmZhMzQ1MjI3Y2MyMTk2NTZjMWI2NDgyNjQzIHJlbGVhc2UyNC1tYWludAorMzkxNTkgZGRkNzhlYTM1MTljNTFhY2JhYWI4NDczYWI1OGU0MTczOTdkMjQzYSBsZWdhY3ktdHJ1bmsKKzM5MTYwIDk1NWQ0YmFkZGJmYzg2NTlhMjg3ZDZlMTg3MThjODY3ZmJjYjQ5MmQgbGVnYWN5LXRydW5rCiszOTE2MSAyMTRjOTZlNTQ5MDUwYmFjM2FhOWEwYmY2OGE2ZWRmMzI0ODdhYzQ3IHJlbGVhc2UyNC1tYWludAorMzkxNjIgYjY3MDBiM2RlNjk1NWQ1MWQyYjYwOWQ0ZWYzNDFmZmE2MTNlMDIwMSBsZWdhY3ktdHJ1bmsKKzM5MTYzIGRiNzY4MzEyOTlkMDAwODVmOWRhZDcyNGQzMjJjMTFiYTc0MGIzMTUgcmVsZWFzZTI0LW1haW50CiszOTE2NCAzNTU5MmJhZDM0NWJkZWQ3YTQ5Yzk5YWE5NTMwMDhjMDU3YmFjYmI5IGxlZ2FjeS10cnVuaworMzkxNjUgNzYzZTg1YjEwN2I0MGRiYmE5NTY1MWNjNWRhNDIwZTY0ZTgzODUxOCBsZWdhY3ktdHJ1bmsKKzM5MTY2IDU3YTRkMjc0NjYzMjM4NDZkOTczYTVmYTBhODA3NmNjZWZkMDgxZjIgcmVsZWFzZTI0LW1haW50CiszOTE2NyA4NDdlNThkZGI3ZDllZTZmOGQ4YzcyYmViMmVkNTExYzBhN2ZiZTFiIGxlZ2FjeS10cnVuaworMzkxNjggYWNlN2Q4MzYwODNmZTc0MTAxNzNlNjNjZTA4YmY0NjAxYWI1ZjAwNiBsZWdhY3ktdHJ1bmsKKzM5MTY5IGY5YzVhZTY5YzE2ZWUyYjVhMWQyOGRkMDNiNjcyMDFiZGZlYTFlYjIgbGVnYWN5LXRydW5rCiszOTE3MCBkMGM2OTY1YjUyNWVjYmFlZTg3YjBlYjNlMTZiN2Y3NTdkNDk3ZjkyIGxlZ2FjeS10cnVuaworMzkxNzEgYzA4OGVjYTkwYTYzNTA5MjE0YWNjNDk4MmM4NmE5ZTJmYjEyMTMyOSBsZWdhY3ktdHJ1bmsKKzM5MTcyIDUyNmZhYWFiMDBlYjk1MTlkZmU3ZjBkOWY5OGVjZWNiYzRlYmJjYzIgbGVnYWN5LXRydW5rCiszOTE3MyAxZmRiY2EzNTE0OTg5ZDgxN2QyZmQ0OTJkMGQ0YTIzY2YyYmM1ZDQ4IGFzdC1icmFuY2gKKzM5MTc0IGEwYzMxYjcwYmQxODBmNzhmNjgzODVhMmVlNzE2MTVjYWQyZmY2M2QgYXN0LWJyYW5jaAorMzkxNzUgMDllODhmZDdkNTVhNjhhMWYxMGRhNGFlNzU1YzQwN2I5Y2U5Mzc4YSBsZWdhY3ktdHJ1bmsKKzM5MTc2IGI3MzVlYjQyNjdlOGY5NGNhZDkwMTBkMTMzZjcyNmM0NDEyOGJjNGEgcmVsZWFzZTI0LW1haW50CiszOTE3NyA3YjY0MzZkMjM0NGQxZjQ1ZmI2Y2YzZmNlNzA4OGJmMTliMTczNWNhIGxlZ2FjeS10cnVuaworMzkxNzggNzRjMzcxNzY2MTIxYzgxNjNlMDU5NjRhY2YxOTZiYzBhYWVlNjQxYiByZWxlYXNlMjQtbWFpbnQKKzM5MTc5IGNkNTk1YTY5ZGNhNWNhMmQ5NDg2NmEyMTgwNWI5NmMxMGJiNTdhZmYgbGVnYWN5LXRydW5rCiszOTE4MCA5MTlmMmQxMzE5ODJiOGIxNWRlOWYwNDUyMjg1YTQxZWMxNDc2M2EwIHJlbGVhc2UyNC1tYWludAorMzkxODEgNTU4MTYzY2I3MGE5NjgyZjM3Mzk3ZWZiZDBlYzIwOGE2MWFhMjRmYyByZWxlYXNlMjQtbWFpbnQKKzM5MTgyIDYyZjgxOTQ4MzI5MzliZTE0ZjJiZWRhN2FiNGQ3ZjIyYmUzNGJhNmYgbGVnYWN5LXRydW5rCiszOTE4MyAxOTQ5NzIyZjM3ODc0ZDIzNjc5MWU1NDQyMGU5YWUwNjc2ZjJjNWJiIGxlZ2FjeS10cnVuaworMzkxODQgODc1Njk3M2E2Yjk5MTI0YzljZDA5NWViYjE3MmMyNmQxMmZmNjAzMSByZWxlYXNlMjQtbWFpbnQKKzM5MTg1IGM2YjY5YzZkMDFhMzc3ZDRjOTM1NWM2MTJjZTYyMjRjZmJlODM0ZTggcmVsZWFzZTI0LW1haW50CiszOTE4NiA5NWE5ZmY0N2IxMWQwMzk5Mjk3OTkzOTE1ODZmMmZlNjNlZjJlMWJiIGxlZ2FjeS10cnVuaworMzkxODcgYTQ5OGRjYWFlOWQ3ODI2OWI0NDUwYWU4OGE1ZTlkZTJhOTY5YmNlZCBsZWdhY3ktdHJ1bmsKKzM5MTg4IDAyN2UwMDBkMWY2ZGYwZTA0MTEzZmFhMmNjYzQ0YzFjOTE1Mjc5OGEgcmVsZWFzZTI0LW1haW50CiszOTE4OSAzMmRlN2E4ZDg4NmNjZGY0YzU5ZWFmYzVlMmQxN2U2NTczZTMzNTRmIGxlZ2FjeS10cnVuaworMzkxOTAgMDdiMDFiMzM0MGY5YzI1NDI2YjljMjBiNDI3MGI4M2Y5YmY2ZTc1NyBhc3QtYnJhbmNoCiszOTE5MSAzYTZlZWYzMWU5NWFlMjU1MDdmYzMwMzEyMzEyZjQzYTEzNWE4NTQ2IGFzdC1icmFuY2gKKzM5MTkyIGQ2MWVmY2Q4N2M4ZTM4MzZjYzY1MWYyOGEzM2QxNzY1ZTY0ZDY3ZGYgbGVnYWN5LXRydW5rCiszOTE5MyBkNDc2ZTU4Y2M3ZTc0NWM5YzBiYTQ2MzkwMzY0ZjM5MzUzNTk2N2RlIHJlbGVhc2UyNC1tYWludAorMzkxOTQgOTJiMzdjNzFmOTM1ZWFiYzQ2MWMwNzBmMmI4MDJmOTQ4YzQzOTlkMSBsZWdhY3ktdHJ1bmsKKzM5MTk1IDc0ZjgyMDJkODMxNTAxMzdjOGMzOWVlMTEwYWQ5MWFlOTU0NGQzZjIgcmVsZWFzZTI0LW1haW50CiszOTE5NiBjNTJjZDFmZDk0ZmM1NGJiODRlZDI1NmRkMmRiZTMyZmMyYjhhZjViIGxlZ2FjeS10cnVuaworMzkxOTcgM2Y4NmY4Y2JhMDVlZDU2ODkwMjg3MWExNzc2ZDNkZTE2YWU3NGE5NCByZWxlYXNlMjQtbWFpbnQKKzM5MTk4IDdlMWMxZDZkZWExYzMxNjlhM2IwZTFhODRhZDM1OTY0ODBkY2ExYzEgbGVnYWN5LXRydW5rCiszOTE5OSA5NjhkOTQyMmFmNzg3ZmU2ZmYxYTdmMzMwMTQ2ODk1ZjgzYjY2YzE0IHJlbGVhc2UyNC1tYWludAorMzkyMDAgNzI4ZjgyYmViYzNlYmQ2NjNmMjM3MjE4ZDVmZDcyZDM5YTU1NDdmMyBsZWdhY3ktdHJ1bmsKKzM5MjAxIDg3OWM4NzZiYzU3YTM4OTgzNjNmNWE3MWJmOGQwNzE2MzE2YzVmZWIgcmVsZWFzZTI0LW1haW50CiszOTIwMiBiNDMxZWQ3YmNkYzIyNTBhZjE2ZDkwMzQ1MDY4ZmQ4NjRiMWIxM2M0IGxlZ2FjeS10cnVuaworMzkyMDMgODYwZTBmZDJmZWU4ZWY2OWI5NGFjYTFmMDcyNmRmNzA1MmFmOThlYyByZWxlYXNlMjQtbWFpbnQKKzM5MjA0IGFlZWMzOWZlZDhjNWMxNmY3NjVhYzM5NDI1ZDFmMjFmNjg3MjExZmEgbGVnYWN5LXRydW5rCiszOTIwNSBmYWFkMDk2ZGVjZjZhYjRkMWU0ZmFlYjEwZTM4Nzg0NjliMTc4M2ExIGxlZ2FjeS10cnVuaworMzkyMDYgOWY0MzY1NTEyMzI2MDI0MWUwMjY1YTM1NjZlN2Q2ZWJmNGFiNDAzNyByZWxlYXNlMjQtbWFpbnQKKzM5MjA3IDJiMTE3ZWIxODk0NGQyMjQ0OWNjYmMwOWI2MjdmOTM0ZDc0ZDYyOTggbGVnYWN5LXRydW5rCiszOTIwOCBlNzg5NzAzZmU0YmVlNGFhMjI1Njg3MmY4YWQ3YmI3ZWZmODU5MmNiIHJlbGVhc2UyNC1tYWludAorMzkyMDkgYTkxN2UyYzQ3NmY2NjE4ODEyZGM1OTMzZDE3YWQ0Mjk2NzI0NTQ1NSByZWxlYXNlMjQtbWFpbnQKKzM5MjEwIDFhYzJjM2ExYzNhYzNkMzlkNGQ3ZGRjZjBlYzAxNTY2MGI4OGE3NzUgbGVnYWN5LXRydW5rCiszOTIxMSA5ZDgzOGRkOTY3YjJiMjJhZmYxZjMzMTc5ZjRkNTVkZGJlN2U4NGQ0IHJlbGVhc2UyNC1tYWludAorMzkyMTIgYmU2YWIzZDg2YzI5MjVhZDhlZDA3ZTZiZDEwODYyYWQxNmI4MzljMCByZWxlYXNlMjQtbWFpbnQKKzM5MjEzIDUzYWI1MTYzYzFhYWExOTUzZWJiMWFkMWQxZTdkMTFiZjdhZDA2NjggcmVsZWFzZTI0LW1haW50CiszOTIxNCA0YWRiZDMzMWQzMzUyZWI1ZmFmZDcyZmNiNTg5ZTUxMmY0YjM1ZGIyIGxlZ2FjeS10cnVuaworMzkyMTUgNmViYzQyM2YyZDgxY2U5MGE0NDg5MGU2ZmJmNWEyOGRkY2E1MTVmNiBsZWdhY3ktdHJ1bmsKKzM5MjE2IDk3MDdiYTI3ODg5NDFhMDNlM2Q2OTJiZjRiM2I1ODYwMjZhODQ2MmEgcmVsZWFzZTI0LW1haW50CiszOTIxNyA1MmFjYmI4NTg0ZWFlYjQ2MWE3OTY5YTBlODBjN2Y4YTgyMzg5OTRjIGxlZ2FjeS10cnVuaworMzkyMTggY2E2NmExNmMzNzlkYzIxMDczOWMxMDJkNWMwNTc3MWIxMGVkZDZmMSByZWxlYXNlMjQtbWFpbnQKKzM5MjE5IDQyY2ZlNDYwM2MzMGMwMDE3MjkzNWM2Zjk5YzhjOWM1OWExMzdjYTAgbGVnYWN5LXRydW5rCiszOTIyMCBlZGYyNWMxYTRmNjA4YzRkYjM4OTU1ZTk3ZTYyZWUyNDJkZjg5OTc2IHJlbGVhc2UyNC1tYWludAorMzkyMjEgZjhlNjBhM2YzNDQwOWU5ZjgxZmJhY2M1Mjc2ZjU2NzkwZjU1ZmNhNyBsZWdhY3ktdHJ1bmsKKzM5MjIyIGM4YmQzYjUyMzBjNDI1Y2E0ODViZDg0NjVmYzk3YjllNGVhMzBhNGUgbGVnYWN5LXRydW5rCiszOTIyMyBiNGU1NzAzMzdiZjQ3N2UyMzZkN2QzZjZjYTI1YzkwMzk1MjU5YzUyIGFzdC1icmFuY2gKKzM5MjI0IDMxNDQ3YWRiMWIzNWVjMGJhMDkzNDgyOWFjZGE5YmNjMDQzNTMzZjYgYXN0LWJyYW5jaAorMzkyMjUgMTc3NGZlN2VjMGM3YzcwZDg1MDlhYzM2NWI4YjU0OTA3ODlhZjEyYSBsZWdhY3ktdHJ1bmsKKzM5MjI2IDg1YTM1Zjg3MDFiM2JiNjlhMTU3Y2QwZTI1MWY0NmYzMWRkMWVmYTAgYXN0LWJyYW5jaAorMzkyMjcgMjk4ZDNmYTRlYzM5ZGQxODAyZWY3OWMzYTM3Yjk0MmMzMDkxZGUzNCBsZWdhY3ktdHJ1bmsKKzM5MjI4IDJmZWVkZjg1MDc4OWQwNzUzZTJmMWRkNDBhYjkyYjViNjQxZWJiYWEgbGVnYWN5LXRydW5rCiszOTIyOSA2MzZlNWYxZGE3MzNkN2I3NDdiZGE5Yzc3M2Q0Njc1NGUxNzM3NWUyIGxlZ2FjeS10cnVuaworMzkyMzAgN2E1MGJkODJkZjI1ZjJiZTllM2ZhYWE4MjIyZTdkNzc1YjVmZmNmNSBsZWdhY3ktdHJ1bmsKKzM5MjMxIDM0OWEwZmQ1OThlMDc5ZDIxN2NlZGU5ZDJiODI2MzhiZGE2NjVkMGIgcmVsZWFzZTI0LW1haW50CiszOTIzMiBjNmMyNGZmMWUzZGE1OTI4YWMxZjgwYzIyODg1MTI3MmE0ODQwMTQ4IGxlZ2FjeS10cnVuaworMzkyMzMgMzVhNjk4MzAyYzYzYzViMWYwNjg1OWE3OGFkODcxYzk4MzhjNGIxNiBsZWdhY3ktdHJ1bmsKKzM5MjM0IDhmZmZiNGM5NTQ4N2VlMjM3MzA4N2I3MjM2OGY5OTBkMWI5YzM0M2UgbGVnYWN5LXRydW5rCiszOTIzNSAzZjFiNDhmOWZmMGRhOWYzNDdjZDAxMTU0NjE4YWM0ZThjOTUyMjQyIGxlZ2FjeS10cnVuaworMzkyMzYgZjMwZWJkYzNiZGRmNzliMWZjYmI2MzdmN2YyMWM4OGNlY2EwMWIxZCBsZWdhY3ktdHJ1bmsKKzM5MjM3IGQ5MTk2NGY1ZmUwZDZiY2IwZDJhZTQwMDI0ZTI3NGQwZTNhMmE3MWMgbGVnYWN5LXRydW5rCiszOTIzOCAyNmJmNmMyN2U5Y2VhNWVmNTM3ZTg2ZWVkYWZiMWM1OTYxZGUwNTAxIGxlZ2FjeS10cnVuaworMzkyMzkgYjJmZTVmOGZjZmRkYzg0YjFhMDM0YzQyNDViNzg0MmMzMjNhN2Y3MyBsZWdhY3ktdHJ1bmsKKzM5MjQwIDVhOTEzNGZlNTcwOTA2MGEyM2FhMjdiZTZhMjk1OGU1ZWU3OWJhOTMgbGVnYWN5LXRydW5rCiszOTI0MSAwOTkxMjhmZmFiZTYzMTlhMDA3ZmZkNDIyMjM3YjIxNDA2YzZkYjgzIGxlZ2FjeS10cnVuaworMzkyNDIgMzA4NjYyMGRiNDZiOTdmYzJkMDgyMDE3ZTdiZmNjZjc4NzI0NDljNiBsZWdhY3ktdHJ1bmsKKzM5MjQzIGI0OGYwYjJlMGRmNjA5NWRmNTljZjhkODkwM2JhNWJmYjZlOWRlYTkgbGVnYWN5LXRydW5rCiszOTI0NCBiMzYzYTI4ZWQyNGY5YjEwM2M1NGY5NGEwOTA3NDA4ZWVhNmQ1NTdlIHJlbGVhc2UyNC1tYWludAorMzkyNDUgYWJkZTIxN2M1ZDkwZDFhNjUxZTY1NGJhY2M4OWRlY2U5NmJiNmI0YiBsZWdhY3ktdHJ1bmsKKzM5MjQ2IDM3NjAwMjMzZGI3Njg4MWM4Zjg5OTc0ZWRmYmE4Y2Y4NGNmNTAzODUgbGVnYWN5LXRydW5rCiszOTI0NyA0NTVjM2I3NjVkYzNhOGYxYjkxYzhiMTk4ZTFjYjU3ZWYzMTdjMjcwIGxlZ2FjeS10cnVuaworMzkyNDggMjU5MGZhMGVjN2U4ODFiMjMwOGNhMGUxOTM0YzVhYzQ0YzJkZTk0YyByZWxlYXNlMjQtbWFpbnQKKzM5MjQ5IGQ1MzNmMDhhOWRmYWFjNzNmN2YzZGFmZTYxMzAwM2RmYzJlYTM1ZjYgbGVnYWN5LXRydW5rCiszOTI1MCA1ZmU5Y2VlY2ExMTE4ODE0YzQ0ZjRhNjZkZTFlYmIxMTg2Zjk1ZDYwIGxlZ2FjeS10cnVuaworMzkyNTEgZjM5OTZhYTc4Y2RlYTViNTk2ZjI5ZGExNjE2OTM2MGI2NTUwNzFkNyBsZWdhY3ktdHJ1bmsKKzM5MjUyIDU0MWJmYmIxMDAzMGJmZmFhY2NjZjI2MDRjOTUxNzY2MjlhOWUxZjMgbGVnYWN5LXRydW5rCiszOTI1MyA4YWE5YmQ4MDI4NmIyMjAxZTc1ZjFhMzczMjQxM2RjMTdmNGIzNDczIGxlZ2FjeS10cnVuaworMzkyNTQgYTY4OWEyMGY1OGY3NjNhZGEwMzJkYzdjOWRhY2ZkMzI1ZWY5ZjZjZSBsZWdhY3ktdHJ1bmsKKzM5MjU1IDFkODYxMWQ4NTU1YzVjYWZlMDBjOGRlZmEwNmZjMzE4YTkxYzYxZWYgcmVsZWFzZTI0LW1haW50CiszOTI1NiBhNmNiZmNkMGU2OTFiYTBiMWM1YTU3YzllNGUwY2I5OWY5OGQ2ZTY5IGxlZ2FjeS10cnVuaworMzkyNTcgY2UwOTk1ZTAxZDNjNzQ1NzQzY2VhNzZlYmE0OWJhYTQ2ZTljNDUwZSBsZWdhY3ktdHJ1bmsKKzM5MjU4IGZkMDA0NjE4NjFjOTA3MDY0NWUyNmI2OWZmOWY5MDJhMTg3NmNmMDIgbGVnYWN5LXRydW5rCiszOTI1OSAyNjEyZTk2YjE3YmJjNWJjYWFjNzJhZWExMGYxZGYyMWU2MDUzMmI0IGxlZ2FjeS10cnVuaworMzkyNjAgYmQ5YWYyNjBlOTI3OTQyYWY1ZTBkOTgwMjMyNzNhMzFlOGIzNjcxZiBsZWdhY3ktdHJ1bmsKKzM5MjYxIGZhOTVmZTkxY2RmNzYwYmUzZGIxMjA0MmM3YTc5ZGM1ZjEyNzE4MjUgbGVnYWN5LXRydW5rCiszOTI2MiBiZGNiMDFhOWI2MGM1NzlmNzE2YWIwNGI4ODQ0NjNiNzQ4YWQwN2YzIGxlZ2FjeS10cnVuaworMzkyNjMgYjkyYTg1YzNiZGM4MTZhYWY5Mjc3Y2U0ZGQ5ZjJkZTNiMjg1YjU4YSByZWxlYXNlMjQtbWFpbnQKKzM5MjY0IDNmYTU4ZTViZGRmYjI5YTVjMDQwZjIyZDA1ODY0MjNkMWUxMjA1NWUgbGVnYWN5LXRydW5rCiszOTI2NSAxN2UwNDQ0ZGQxMmRhZWZlMWNkZWNkODE4ZWRhNjlmNDIwYjNhOTkyIHJlbGVhc2UyNC1tYWludAorMzkyNjYgYWM5YzBlZTE5OWZjOTZlZWExZTRiYzNiMzIyMDhlMDgzNGYxZTAwYiBsZWdhY3ktdHJ1bmsKKzM5MjY3IDMwOTQ4NDNlN2I5MmNiMTAzYWUwZmJlMWIzYjQ2NDhkYmVmMmZjNDYgbGVnYWN5LXRydW5rCiszOTI2OCA2YWE3M2ExZjBjYmE4NDU0MDNjN2Y4MTY2OWY0NDRkMzI5NmQ1YzQzIGxlZ2FjeS10cnVuaworMzkyNjkgMGVmNjRhOTNmM2YyNWUwZDYzODFlODMzODMwMDhiN2NiNjlmY2M0YSBsZWdhY3ktdHJ1bmsKKzM5MjcwIDMwMGYzYWFmODUzZmI4ODhhNGRmYzQzZWZkYzYyOWQxYjY4MTJmMDcgbGVnYWN5LXRydW5rCiszOTI3MSAwNDRhNWNhMmNkYjgyY2RmNjdmZTdhNTZjMzQ2ZmRkOGIxODM1YjgwIHJlbGVhc2UyNC1tYWludAorMzkyNzIgZWYxMWNiYzA4ZGFiYTBmZGE0OTBjMTk2NzM4OWU4ZGQ1NWNkM2I5MyBsZWdhY3ktdHJ1bmsKKzM5MjczIGZkMDJiODRmYjJkYjIyOWJlOGQ3OGJjZTJkOWNkZDg2YzY0MWEwZjIgbGVnYWN5LXRydW5rCiszOTI3NCBkYzhhZTQ5OWVmY2YzOTM4Njk3MTQ4YTZmNDgzMzI1ZjExMTdkZTFkIHJlbGVhc2UyNC1tYWludAorMzkyNzUgNzI1NjcxZGI3NzlhNjgxODJiZDI2YzA3YzBmODg2ZWQ3NWI3NjhiMiBsZWdhY3ktdHJ1bmsKKzM5Mjc2IDliMjIyN2E2MGRhZWNkZjU5MmQ4ZDFlZmI0ZDA3MjFjNjgzNTE2YjMgbGVnYWN5LXRydW5rCiszOTI3NyA1MDNjMzY5NzU3OGY4YzllNDBkMmRlMjg0YTg5YzAzYmJmZWM2MjA5IHJlbGVhc2UyNC1tYWludAorMzkyNzggZGVmNDM0ZTJhODFhZmJkYzRiMDA0MmQ0Y2Q3OTlkODQzOTUwNzliZSBsZWdhY3ktdHJ1bmsKKzM5Mjc5IGQ2NTc1Y2QxYWI2N2ZjNjYzMmIwZTI1NWQ2NDQ5ZjkyNTBlMDk0ZTQgbGVnYWN5LXRydW5rCiszOTI4MCAwMjhlOTRhNmVmYzU2YTk4NzdiYjdmODAwMTc5NTM4NjcwYzMzNGNkIGxlZ2FjeS10cnVuaworMzkyODEgYjhjNWQyMjIyZWQ3NTgzYmRlMTA3NTMyOGExMjNiMWVkNDdmMWZhNSByZWxlYXNlMjQtbWFpbnQKKzM5MjgyIGY2YjQ2MmQyYTNhMzZjNTM2MzY3NDNlYmNiMWNiZDA1ODgwNGU3ZjIgbGVnYWN5LXRydW5rCiszOTI4MyAzYzNhNDVhOTY1NzcyMWYwY2ExMDY2MzU0Y2YxOTY1OTg2ZWM1MjM1IGxlZ2FjeS10cnVuaworMzkyODQgZGQ0MzU3YTVkYTdjYjdkNzA0Nzk3YmI5ZmIzM2E1ZjY3YTIzZjVjZCByZWxlYXNlMjQtbWFpbnQKKzM5Mjg1IGM1NDk5ZjI1Njc4NmIyODIxZjgyZjE3MzFlM2FiZDQ1Y2I0OTdmOWEgcmVsZWFzZTI0LW1haW50CiszOTI4NiA3MDBmMDgzNjkwOTI3ODU4MjBjOGUzNmQ4ZDIzZTVhNGMzNzI1YjEwIGxlZ2FjeS10cnVuaworMzkyODcgZGQyMzU3OTUzZmUzODcxNDg0ZDg4YjBjZjQ3NGM4NmU4NDAwZTk4ZCBsZWdhY3ktdHJ1bmsKKzM5Mjg4IDM5ODI1Y2EzNDY0NzNlZDU2ODA1NDY5NDVkMThiNzFjYmYxOWJkYTkgbGVnYWN5LXRydW5rCiszOTI4OSAyZjFiZjY0YjgzN2VmNWY0OWUxY2Y0NmUzNWU3ZDJmMjQzMWRjNWIxIGxlZ2FjeS10cnVuaworMzkyOTAgNmYxY2QyOGQ2Yjg3NTAxMmQwMzQwZTUwNjMyYWRmYTMzYmFkYWQwMCBsZWdhY3ktdHJ1bmsKKzM5MjkxIDcyOWJlOGNjMDA5OGJmNWUxN2VhNjNmMWMzYjVmMzJjMDJjOWU3MzQgbGVnYWN5LXRydW5rCiszOTI5MiBjMWQyMmQ0YzA4NjU1MjgwY2UzN2UzYjUxYTcwNDI2N2RjYWQzZGFlIGxlZ2FjeS10cnVuaworMzkyOTMgY2Q4ZDhlNjM0YWI4MDZlMDEwZTZiNzY5NmFkMGE4MTQ0NmIwMTJhZiBsZWdhY3ktdHJ1bmsKKzM5Mjk0IGU4ODA2MDk0ZDY0NDhkZmYwZGUxZjhiZDZkZjE5ZTAwNmU2ZmNhMDAgbGVnYWN5LXRydW5rCiszOTI5NSBkZTJkODRlMDQ0N2VlZWQ4NjFiNTRhOWY1ZTM1NjkxNGVkYTQ4NzIxIGxlZ2FjeS10cnVuaworMzkyOTYgNGZkMDM4NzM3ZTIxZDJhY2I4ZWYxMDA4ZjcxNzVmN2M1ZTg1YWZlZCByZWxlYXNlMjQtbWFpbnQKKzM5Mjk3IDNhMmZmZjY5MDU1OGRjMDQzYmUyYmUzNDMxMjNlMmVhN2RiY2I3ODEgbGVnYWN5LXRydW5rCiszOTI5OCA4Nzc5MTZkNjMyZTA3MDY5Yjg1Nzc1N2JlOGU1MDVlMWRiY2VmMTI2IGxlZ2FjeS10cnVuaworMzkyOTkgMjBiMThiN2Y4MzA5NTc4ZTBjNTAyOWMwNmE4MjlhOTQyMTI0MmQ5YSByZWxlYXNlMjQtbWFpbnQKKzM5MzAwIGM1YmY1Njg1MjY3YjhlOGRhNjkyOTYxMGI5YjQxOWNmMTc4Mzc4ODYgbGVnYWN5LXRydW5rCiszOTMwMSBkN2YzOWU2MjA4YmE5YWM4ODVhNDhhNmNjMGZiYzVlNTIwZDBlMjdjIGxlZ2FjeS10cnVuaworMzkzMDIgNjYwNTdkNTUwNjI4YWU3NjViYzcyMjlhZWE4OWY1NjNkYTNlMGQ5MiBsZWdhY3ktdHJ1bmsKKzM5MzAzIDUwMjgzYTQ0MTdkOTg4NzBmOGM5YmNmOWI5Njg1MWE5YTY5MTJlYmIgbGVnYWN5LXRydW5rCiszOTMwNCBmMjA2OTE5NTc1NzgxMTMzOGQxZTIwMzU3OGRkNDE1ZjUxNWZhMjU4IHJlbGVhc2UyNC1tYWludAorMzkzMDUgYWViODU4MGExYWY3NDg5ODg3MmNmMWVhZmUyY2FhYTFkMGVkNDk3ZSBsZWdhY3ktdHJ1bmsKKzM5MzA2IDhiMDdkNzMxYmU2MDNkZWQ0ODIzNDgxYjY1ZTE4OGIyMmQxZWMyZjMgcmVsZWFzZTI0LW1haW50CiszOTMwNyAzZWE4ZjU4YThjOGVjNjQzNGYwNGZhZWU4NjY3NWE4ZmVkOTE5YWZkIGxlZ2FjeS10cnVuaworMzkzMDggNGU1ODg3MjVjM2Q3NThlN2QxMWYzMjExZTkzZGUxMmI3MzM4MWFiYiByZWxlYXNlMjQtbWFpbnQKKzM5MzA5IGNkZTI3NzgyYTE2OTJhZDQxY2JkMTcxZjJhYTkyZjQ2YWIwMzhkNzcgbGVnYWN5LXRydW5rCiszOTMxMCBmNTcxM2UzMDM4MGM0MzZiYThkZTEyYThhNmY0ODUxZDY5NjM1MDg1IHJlbGVhc2UyNC1tYWludAorMzkzMTEgN2Y5YTQzMGI4Y2U3MWVjOTdhNzhkY2M3Mzc2NjQwZmNiMzU2OWM3OSBsZWdhY3ktdHJ1bmsKKzM5MzEyIGNlMTI0NTEyMjBiNDBhOTI3YjYyZmUzN2I0ZTI0YjMzYmNlYTEwZTQgcmVsZWFzZTI0LW1haW50CiszOTMxMyA3NmIyNzIyODA2YWJjNWQ3OTUzY2FkODllNTI3Y2I4Yjg0YWE5Njc2IGxlZ2FjeS10cnVuaworMzkzMTQgMDg0ZDQyZGY3YmFkNGU5NDAzOTdjNmNiYjNhNjk4MDliYmRkOWM5ZCByZWxlYXNlMjQtbWFpbnQKKzM5MzE1IDc5N2Q4MmVlYzYyNTIxYjZhNjhkZjlkMzZkOGIyOTI0YzZjMmE0YmUgbGVnYWN5LXRydW5rCiszOTMxNiA2MjQ5MThlMWMxYjJlZmVlOWU0YjdiZWUzMWRkYjgyMjEyZDExYjMzIGxlZ2FjeS10cnVuaworMzkzMTcgYTQ2NzMyNTcxZjJlOGYwNWVkY2Q1YmJhNzk2ZGY5MjVjOGVhNjQ1MSBhc3QtYnJhbmNoCiszOTMxOCBmODRjZjg1MzQ2NGFhYWE2N2IzMWIzZDE0YjNmNTlmYzRmMGZlN2QwIGFzdC1icmFuY2gKKzM5MzE5IDdjMTRjN2Q4YjM5NmZmNjExZGU5Nzk0MjNlZWYwNzU2MDJhNjc1NWQgYXN0LWJyYW5jaAorMzkzMjAgNDY4MDBmMmFkMzA4YTQ4ODg3YWVhNGUyYmVmYTY3ZDhkY2ZjZmZlZiBhc3QtYnJhbmNoCiszOTMyMSAwMDE0NTk2Yjg0MGM2Y2ZkYmU4ZDU2NmIzODA0NWYyODhiNWRjYWYzIGFzdC1icmFuY2gKKzM5MzIyIGI0NjNiYjQ4MjU5NDliZDQyNjEwYTVmZjM4ZjczYjZkOTBkZGNmOWYgYXN0LWJyYW5jaAorMzkzMjMgZTdlZDBlNmFlZDJmMjczOTQ0YzMxN2VlYjM2ZDE3Yjc2MGIyYjhlNiBsZWdhY3ktdHJ1bmsKKzM5MzI0IDQ0OGM2ZmJmZjY0MTMxMjJhNTdlNWNlMjA2YzBmM2IwMDNhMzYzODYgcmVsZWFzZTI0LW1haW50CiszOTMyNSA5MzMwMDgwYTNkNDE3NThlMjZhMzZmYzdjM2JiODVmNjUyM2FiYzUwIGxlZ2FjeS10cnVuaworMzkzMjYgOTI2MTY5ZmRlNWU2MzNmMWUyYmE4ODI3ZTY1Y2MzY2YwYjAzZTRjYyBhc3QtYnJhbmNoCiszOTMyNyBmZGViNGE4YmNiNGUyNTA5OWEwMzhhNzcwY2ZhODVhMDJlZTlmZDU5IGFzdC1icmFuY2gKKzM5MzI4IDQzMjExYmUwZGU0MTVmZGExYmQ3YzZhM2Y5YWQ5MDBlOWJlYTYxZjAgbGVnYWN5LXRydW5rCiszOTMyOSBkNjgyNzkwZDVkYjBlMjRhYjMzN2RiYzJmNzUzYmIxZjdmMmJiMjBkIHJlbGVhc2UyNC1tYWludAorMzkzMzAgMGYxYTIzMWMyYzdjYWI1ZDIxZGZmOTNiZjA3Y2U5OTJlNDk0YTY2ZiBsZWdhY3ktdHJ1bmsKKzM5MzMxIDc4NzQ3ODkyM2U4MmYyN2UzYmIwNTZiYzUzNDc5OGFjYTMyZGZhYzcgbGVnYWN5LXRydW5rCiszOTMzMiAwNGRkNWIwNmQzYzhlZDUzZGJlOThlOTYyNDRiZTc4NTMwNjMwZmJjIGxlZ2FjeS10cnVuaworMzkzMzMgMzRmZjdjYTRjZWY4NTI3ZTNiMWZiY2JjOTUwZjc0MjE2NTBkOWNiNCBsZWdhY3ktdHJ1bmsKKzM5MzM0IGE2ZTcwMDA0ZTk4NzBjZDg3ZWYzMWIyZGMwZTM0YzIwZGJhYjUyN2YgbGVnYWN5LXRydW5rCiszOTMzNSAzODgyNGI2ZTM2MDA3YzM2OTUxZmNkNTFmMzllZjRmNDM0ZWJmOTljIHJlbGVhc2UyNC1tYWludAorMzkzMzYgMGViMzg2ZWU5NDBlMzAzMjZjNDdiY2FhYmExNWI5MjFmMDhlNTAzYyBsZWdhY3ktdHJ1bmsKKzM5MzM3IDA3MTM3Mjg2NzczY2FmZjZlZjA3NTkwMzYzODkyYTg1N2FhNjI4OWQgcmVsZWFzZTI0LW1haW50CiszOTMzOCA0YWNkMzA3NjFiYzIxNzYzMDNiZjQyYzc0YmJiMjhlMDk2ZmNjNGY0IGxlZ2FjeS10cnVuaworMzkzMzkgNmIzN2VhYmUyYWM0MzdiZmQ0NDg0OWRmMGFkNWU5MDNlMDY0ZmFmNyBsZWdhY3ktdHJ1bmsKKzM5MzQwIDVmNDAwZmIyZGQ4YTY5YjdjZDY5YTMxODkxY2JiZTY0NDQ2MDg2MGMgcmVsZWFzZTI0LW1haW50CiszOTM0MSAzOTczZDYzZDI2Njc3YzA2NzQ2MTM2ZjFiMTUyNjU3MTM3ODExYTViIHJlbGVhc2UyNC1tYWludAorMzkzNDIgOTFkOTY4Yjc3NTc5YTVhMzY2MWJjNDZlMDFmZWE5YTZkNGI0OTVkOSBsZWdhY3ktdHJ1bmsKKzM5MzQzIDQzY2Y1OWU3YTYxNDVhYzcxOGZlOTUzODQzZjQyMGFjYzgzYTFkN2IgcmVsZWFzZTI0LW1haW50CiszOTM0NCA0ZGE2ZDRlMGMzZDU2MjhjMGNmMWRlZjVhZTM1MGNlZjZlYWRlMWU2IGxlZ2FjeS10cnVuaworMzkzNDUgMTJhOWJiMjRiNmQ5NjQ2NjA3NDk0ZDYyOGVjYTg5ZWMwZmFlZDhhYSBsZWdhY3ktdHJ1bmsKKzM5MzQ2IGJlZDkzZDA0MTZkZGU4MmEzNDk4ZTJkZTc3YzM5OTNlN2ZiODQzYTQgbGVnYWN5LXRydW5rCiszOTM0NyA3ZjE2Mjc3NjY2MjE2YzFlNzg3YjIwMTc3YmJjZGQwOTQ0YTc3NGIwIGFzdC1icmFuY2gKKzM5MzQ4IDAxZWZmNjA3OWY5MGI2ZmFhZmJhNzQ2NWRmNzg5MDZhYjFiMTE3YTAgYXN0LWJyYW5jaAorMzkzNDkgMTcwODQ3OWFkZTRkNWJhY2Q0MDJkZDYzMTJlMzRlODQ3NTE2YjcwOCBsZWdhY3ktdHJ1bmsKKzM5MzUwIGM5ZWIyNWZlMzljYmJlMDVkNWFkMmZkM2M4ZjUyYmQ0OWMyMDVjZDggbGVnYWN5LXRydW5rCiszOTM1MSA5ZTA1ZWEzYjFiZjNiODVmM2EyOTllNGQzNDJkNGZiMTk0NzE5NWQ5IHJlbGVhc2UyNC1tYWludAorMzkzNTIgNWM3Y2NhMjU0NzJkZWZmZWU0NmQ3NWNhOThjNzE1MmZmYTE1ZjgzYSBsZWdhY3ktdHJ1bmsKKzM5MzUzIDZjMDg2NWJlYWFiNzMxMjkyMDgwZmEyMmRlNGFhYmJhMDE3ZjU0MzMgcmVsZWFzZTI0LW1haW50CiszOTM1NCA4ODM3ZGRmYWFkNDVlYWY4MzgxN2FkODFhZDMxNzVhOWQ3YTYyZDI1IGxlZ2FjeS10cnVuaworMzkzNTUgZjk2Mjg3ZDFiNWY2Zjk4YmU3ODVjNGI4NzJjOTg1YjY0YmU3MjcwZCByZWxlYXNlMjQtbWFpbnQKKzM5MzU2IDYzNGNhNGQ4YTMwNmEyMjIyMTlkNmFlZWIyYTYyMjBmYjBjNjEyMWMgbGVnYWN5LXRydW5rCiszOTM1NyBiNzA5N2Q5MWYwNGQxZWJkNTZlNDdiMGU3ZDIwMWRhNTdlZmQ3YjQyIHJlbGVhc2UyNC1tYWludAorMzkzNTggNWIxYTJmYjg2NGE3NjI2YzE2NDdhMGI1MzE5NzYxZDlhY2NhODU2NiByZWxlYXNlMjQtbWFpbnQKKzM5MzU5IDNiYjkzMjgwMWI2NDUyZjg4Yjc5YmQyZWVjMjBmYzU5OTczZWVjNmQgbGVnYWN5LXRydW5rCiszOTM2MCAzNzQ1ZTNjNmEzZTEzNjAxNjg5Njg0MjVlNDlmMDU3ZTVlZWY1ZmUzIGxlZ2FjeS10cnVuaworMzkzNjEgZGRlMDU2YTY2NmRkZWY1MmFkMzIwMzJkYTM4ZTU5MWQzMjlhZjk5NSByZWxlYXNlMjQtbWFpbnQKKzM5MzYyIDNlZWM5MTAzOGZiY2E5ZjQzOWFhMmRhOTc0NjViOWY1NWY0MzEyN2EgcmVsZWFzZTI0LW1haW50CiszOTM2MyAwYTZkYmNiNGUwNTY2MjMwNWNhZDM4OGEzYWIzNTMyNGEwNmY2ZWI1IGxlZ2FjeS10cnVuaworMzkzNjQgNGQwNWY5ZTdlNmUyOTRhOWU0MTdkYTU3NjA2ZmJmMzMxMGY1MmJkZiBsZWdhY3ktdHJ1bmsKKzM5MzY1IDE1NmFiZGE0ZTQ1NzNhOGUyZjRmMWZhMDdhOTA2ZWQxMjUwODY3MWUgcmVsZWFzZTI0LW1haW50CiszOTM2NiBmZjJlNjZmYzBhMjkyOTA0ZGMwNGQzNzIwMmM4OGJkY2UwNWMxZDNhIGxlZ2FjeS10cnVuaworMzkzNjcgNDg5NmY4MzM0YmZmMjQ0NTMyNjhhNWNiNTg4MGJkYmE5ZjUxOWI0NSByZWxlYXNlMjQtbWFpbnQKKzM5MzY4IGU0OGZjZDRjMzU4ZDQ5N2MwN2Y2MDczYjZiNTU0YjljNDY3ZDAxNzggbGVnYWN5LXRydW5rCiszOTM2OSAzN2ZhN2I2ZGNhOWJiODliYWIyZDkxZWQxZDY1Y2YwMGY0MmFhNGQzIHJlbGVhc2UyNC1tYWludAorMzkzNzAgMmE2YjY5NDJhN2Y3Y2I2MDQwNjA1NmJmOTBjOWI0MjE0N2UzZWNlOCBsZWdhY3ktdHJ1bmsKKzM5MzcxIGM0ZTVlZDdhMmJhMzdkNjUxMDA0NDFiZjIwZWIzYTVhMWE1NGIwMTQgbGVnYWN5LXRydW5rCiszOTM3MiA4NWYwYTZlODM4MGI1ZGQ3OTJjZDU4NzEyNGI2NzBkMTk4MjNlMjI4IGxlZ2FjeS10cnVuaworMzkzNzMgNDgxNDYzYTViMjBjODk2ZmQ4ZjE3NzY2ZTQ4MjZiMDY5MWIyYmNkNCBsZWdhY3ktdHJ1bmsKKzM5Mzc0IGZlMzIzNWZjZGQ3NzI1MmVkYWU3YmExNDFjNTBjNzRlM2VlNThlMTAgcmVsZWFzZTI0LW1haW50CiszOTM3NSA3Y2FhYmM3NDk5NzU2N2VlYTI4MTRmNjk0MjJmMDQxNDZmYzc2Njk5IGxlZ2FjeS10cnVuaworMzkzNzYgZDVkZjUyMjJmZDZkNTQyYzlhZmI1Y2M2OGI1YTkxZDQyODdjYzAyMCBsZWdhY3ktdHJ1bmsKKzM5Mzc3IDE2NTIwZmNjMDYwOTUwY2IwZjZhM2VhNTgwNDE3OWUwMmJhZjA5ZTggbGVnYWN5LXRydW5rCiszOTM3OCA1NWUyNzU5ZDAyMTEzNzI0OWYxYWY0Y2M1NzQ2ODdjZjVhOWRjOTcxIHJlbGVhc2UyNC1tYWludAorMzkzNzkgMjQ1ZThmNGNiYTFkYjI0ODZhNGE0YmRlMzE0NGJjZTQ5Nzc3N2M4NiBsZWdhY3ktdHJ1bmsKKzM5MzgwIGUwYmQ2ZjMyNGZkNmExZDI5NWM3NTYwNjNkNjA4Yzg1ZDk3OGEwM2QgbGVnYWN5LXRydW5rCiszOTM4MSAxYjdjNGZiZWUwYjhiZTEwZjMwODgyMDdmOWFhZTJkZDU3NGI4MzA0IHJlbGVhc2UyNC1tYWludAorMzkzODIgYzFmMGYxNzA5MzZkNTU3MmI0YTZlNzVkZjQ2Nzc1OGJlMTBiZWQzZCBsZWdhY3ktdHJ1bmsKKzM5MzgzIDEzMGI2Y2U5YmJmM2RjMTI3NjA4NWRmMmZkMTQ2OGVmNTBhYTcxMjUgbGVnYWN5LXRydW5rCiszOTM4NCBlZGRjZTQwZWQxYjE2ZTE3ZDYyNzBhZmJmYjQ3ZDE5ZDE3ZmNlYmU1IHJlbGVhc2UyNC1tYWludAorMzkzODUgN2QzZThjMmFlMzM5MTMyZTg2Y2JhZGM5YTc0NGZmZGE5Yzc0M2JmZCBsZWdhY3ktdHJ1bmsKKzM5Mzg2IDlkMzQzYmM4MTg2MzgxNmI1YjYxZGE1N2IyZjE2NTNmNWM5Y2IxZjQgbGVnYWN5LXRydW5rCiszOTM4NyA0YTUwNzc4NzNjYmEwYmJhOTlmZjhiZWZjZjZiYWQ3NjM1OGFjYmI5IHJlbGVhc2UyNC1tYWludAorMzkzODggM2QwM2QyY2JlMWFkMTZkZTU5NGYxOTZkYTljZGI1ZjY3ZjIwZDhlYyBsZWdhY3ktdHJ1bmsKKzM5Mzg5IDY1MjM4YzlhN2E2NjAxMDgwZDA1YTY4NjA3NzA2MDJlZjYyMzc4NTkgbGVnYWN5LXRydW5rCiszOTM5MCAxNzA3Yzk0NWQ2YzI0ZGQwODc3OWQ2ZjNjZTgxOWFjNzJkNmE5MWQyIHJlbGVhc2UyNC1tYWludAorMzkzOTEgNTk1NDUxYzJjOGVjZGM5OWM0MDY4MTEzNzdmMTE1NWVlZGVkZGM3YiBsZWdhY3ktdHJ1bmsKKzM5MzkyIGExNzAxMjM0NWFmNmFhMjlmMGMwNWNjMDIwNWFlNDhjMDgwZWJlNmYgbGVnYWN5LXRydW5rCiszOTM5MyBkMGU4NjU3NmYwYjVkZjU3OTg5YzhhNjI5Y2NiYThmMmFlZTYzZjY1IHJlbGVhc2UyNC1tYWludAorMzkzOTQgNDQ2MTI1OTM0NzFjOTYwYjczNGYzOWUyZTY4NjZkYjlkY2UwNGM3ZSBsZWdhY3ktdHJ1bmsKKzM5Mzk1IGNiNDk5YWVlMzZlNzhhY2JmYTdlMmE4NWUyNjIzYjhlZGQxZTk5YzkgcmVsZWFzZTI0LW1haW50CiszOTM5NiA3YTBkMGI0Yzg3ZDA2NDUxMTU2MDk5MmFmODg0NWQ0YThjZWEyZWJmIGxlZ2FjeS10cnVuaworMzkzOTcgNTgyYzkwZGVkYTlkZmUzMDQyNWNhNmRhMDVhNjVkNWIyYzUzM2QxZCByZWxlYXNlMjQtbWFpbnQKKzM5Mzk4IDA5OTkyOTBjNjc1ODhhMTAyNWFjZmNhNzViNDExNjlhMTZlZDMyN2EgbGVnYWN5LXRydW5rCiszOTM5OSA1MzE2ODY4NTRmMDg2ZWEzNjBlZGViZDJlNWJiMjRiZDgyMjRjNDI1IHJlbGVhc2UyNC1tYWludAorMzk0MDAgMWZkZmQwMTMwZTI4MTkyMTM4ZWZlMGQzMjdjOTY3YjE2NmJkOTEzYiBsZWdhY3ktdHJ1bmsKKzM5NDAxIDk3Yzk3MTk0ZTY0YmI4NzIzZTYyODMwOWJkZjAxZTdjMTcxZjY2MTkgcmVsZWFzZTI0LW1haW50CiszOTQwMiAzNjUxNGI5NTAwMmFiMWQ1OTJmMDU2YmY5Njg4ZGFkZjgxYWNjMjA5IGxlZ2FjeS10cnVuaworMzk0MDMgNTlhNjNiMDlhNGMyNjllNTI2NzVhZTMzNTdhYjhlMzliMGI2YWU3OSByZWxlYXNlMjQtbWFpbnQKKzM5NDA0IDM4NTVhOTYwYTZhYTk2Y2E5ZWM4NTlmZTlhMTIxMDc5MWI2Mjg1OGEgbGVnYWN5LXRydW5rCiszOTQwNSA5YTgzNzM4MGMzYzVmMTI3YTE3OGRiNmQwNjIyZThiYzczMDAwYzA2IGxlZ2FjeS10cnVuaworMzk0MDYgOGEzZDdmOWYwMmNjMmZlMWQxNWYzNmUzZWQwNDNmZjQzYjMwMzM0NyByZWxlYXNlMjQtbWFpbnQKKzM5NDA3IGNmY2MyNjQxYTkxMDk4MGQzMmI4NzJlZDhiMzg5M2IyZmFlYmY4YzYgbGVnYWN5LXRydW5rCiszOTQwOCA5ZDQxYWZhNjNiNzk1MzEzM2U0NjRlZjAwNjJiNGYxMDk4NzViZmEwIHJlbGVhc2UyNC1tYWludAorMzk0MDkgMzhlNTg4ZDFkODg1M2I4YTQ5YmQzOWViNTYwZjZjNmU5Mzg2MmFhMSByZWxlYXNlMjQtbWFpbnQKKzM5NDEwIDA4NTI4ZmJkNDgwNDlmYmNlZGQ0Y2ViNmYzMWE2NTQ4ODc2ZTY4ZmQgcmVsZWFzZTI0LW1haW50CiszOTQxMSA5YmU5MmZlOGE3YTgxMDEyMGU1NTA0Y2QxOTBkNTY0ZWZiZTU4OTc2IGxlZ2FjeS10cnVuaworMzk0MTIgMDM1NDA5ZWYwOTAxMWY1NWI1NmRlZWIyZTk2NzBjNDM5N2FjZTVjZSBsZWdhY3ktdHJ1bmsKKzM5NDEzIDI1NmU3Mzg0ZjI0ZGJkMzMzY2IzNWQyYmI5YmJiOTAxNzE2ODEyNTYgbGVnYWN5LXRydW5rCiszOTQxNCAxMzEyOTQ2ZjMyYWI1Y2UxMTczYTVlMmFmMWI0Mjg2NGVjNmQxYmQwIHJlbGVhc2UyNC1tYWludAorMzk0MTUgYWRlZGE5ZmIzNDg1ZDY3NGM3MGNkMjAyNjdlZTA4YTA2NmRlYzZjMyBsZWdhY3ktdHJ1bmsKKzM5NDE2IDNlNWMwN2ZhYWIxMTEzOTliMjQwMmNlOWNlNWJjYjc3MWVhNmM1NjggbGVnYWN5LXRydW5rCiszOTQxNyA1MjMzZDE5ZmY4N2YyNzdmMWQyNjQ4NTQyZjVjNTE5OGVhM2VlNmRjIGFzdC1icmFuY2gKKzM5NDE4IDcyZDNhZDA4YjJjNjIwYmFhNjYwY2RiMWY0YTljNGNjYWNmYjM4M2QgYXN0LWJyYW5jaAorMzk0MTkgNjllYWI4NTE3NGZiYTNkODYyY2Y2MDZiOTI4YTU3NmI3ODk5NGRmYSBhc3QtYnJhbmNoCiszOTQyMCAzM2Y2NjJmNjc5NWYzM2ExZTE5Yzc5NDcwNmZiMDJkNmMzOGUyNjdkIGFzdC1icmFuY2gKKzM5NDIxIDcxM2NjZmY3MWZkZmU0YjcwMzIzM2VmMmZjZjYwNThlMzk2ODQyMjkgYXN0LWJyYW5jaAorMzk0MjIgODU5NjBjYTRmYzA4OWU5YTE2ZjRiYTkzYjY2MDUwOWNmOTEzYzM1ZCBsZWdhY3ktdHJ1bmsKKzM5NDIzIGRiYTFlMmRmZDhkZWE3ODQ1ZWJiOWNkNzJjZDM2NTgzNmFmZGQyNjcgcmVsZWFzZTI0LW1haW50CiszOTQyNCAyMDBlMmVmNGRiZGM2NDNjNDdmNDU0ZjY5MTEzNzVjZDNiNDI3MTI4IHJlbGVhc2UyNC1tYWludAorMzk0MjQgMGY0MDVhMWM1MzQwNTQ5NDI2NGY5N2I0ZGRlODJlZTFhNjg5MDRjMSBsZWdhY3ktdHJ1bmsKKzM5NDI1IGFhYTM2NDZmNDU2NzEyNmIwMGI0NDIxMmZkYjhjZDkyZDYyMTcyNWUgbGVnYWN5LXRydW5rCiszOTQyNiAwMjM0Yzg0YTdkOGRhODI2YTI1MTc0ZDgyMTY1OTZkMTliYzZmZmY5IGFzdC1icmFuY2gKKzM5NDI3IGU1MmVkODc4YzVlZTBhZGUyMDdjZDI5ZTk0ZjQ0NjMwYjQ2OGIxZjMgYXN0LWJyYW5jaAorMzk0MjggNDk2ZDI5YjBiYTViYmFmNjM5NmNiMjI5YzlhMTBkYTBiOTg2OTAwZiBsZWdhY3ktdHJ1bmsKKzM5NDI5IDExZTE1ZjdhYjk0MDZlZWM1YzYyYWQxYzQ2ZjJhNWEzMTU5MWQzZjUgcmVsZWFzZTI0LW1haW50CiszOTQzMCBkOTJmMGVkNmE3ZjJmOWQ3ZWViNWI3YzM1YjAzNTZlOGRjMmQyMDRjIGxlZ2FjeS10cnVuaworMzk0MzEgYTg0Y2RhYmI4YWYwNmRhYmQ5N2U5Mzk0OGExNGFmYjYzYzcyOWY1YyBsZWdhY3ktdHJ1bmsKKzM5NDMyIDg5ZThhNWVjM2RhMDU3N2I3MmIxNGRhNGMzZDI3Zjk4MGUxYTc4YzEgcmVsZWFzZTI0LW1haW50CiszOTQzMyA2NzYzYzkxZmNmZWY0MDk5ZTljNDZiZjVmZmMyZTQyZTk1NGZkNGIwIGxlZ2FjeS10cnVuaworMzk0MzQgYmFlZDhiN2RlYjU2ZDFjOTVhZDk0MGM1NWI5MDFjYzNlOTA3YWM5YyBsZWdhY3ktdHJ1bmsKKzM5NDM1IDliMjEwNDAxMWY3MDI2YTVjYzk2MWUwZjVlZTEyOGIxMmQ2MTEyYjQgcmVsZWFzZTI0LW1haW50CiszOTQzNiBiYjY3NzA3OWY4MjdjZTIwMTY1YWEwY2NmMzEwZGRjNmIzMGZhMGRlIGxlZ2FjeS10cnVuaworMzk0MzcgMGU4OTY0ZjUzNzMyYmRjOTIwYzZjZjEwZWUyOWE5YzFiYjljNWYzMyBhc3QtYnJhbmNoCiszOTQzOCA1MTZlZDYwYThmOWNhZjY3MGYzZDA5NzE4M2ZlZTQxNTA0NThlYmEzIGFzdC1icmFuY2gKKzM5NDM5IDYwNjFhYWE0NGViYzUzNWU0OWI2YjgzNzJiMzkxNDgxNDU0Y2NjNzYgYXN0LWJyYW5jaAorMzk0NDAgZDMzMmIyMTY4Y2IyNDcyNjlhNDZmYzZhNWZhYmFjZmQ3MzZhNDM1OCBhc3QtYnJhbmNoCiszOTQ0MSBjZDdkNmM2ZjJkYjIxNzU0ZTJiMjAzOTc3YjI0NTdlMjQ5ZWEzZWYzIGFzdC1icmFuY2gKKzM5NDQyIGUxNThmMWUxN2FiNGI3MTU5YWMxZmVmNjFhNTY4MjZmZjk1YjdjZmQgYXN0LWJyYW5jaAorMzk0NDMgMDZlZmVlYzc0ZDU5YTUyMTI0OTg4N2E4ZWI3ZDczZjUwMDJlZjExYSBhc3QtYnJhbmNoCiszOTQ0NCAzNDM4ZWViYTU4YzM4YThmZDM2NjM0Y2VkNjAzYjM1ZTRiZTY5ZTNlIGxlZ2FjeS10cnVuaworMzk0NDUgODFhMDZhOWExYWM0N2M0OTdiOWM4Yzg2MzE1MDQ3YTgzMDM2NGY1ZiBsZWdhY3ktdHJ1bmsKKzM5NDQ2IGFiM2RkYmJkMDg2MmM4ZjQzZWY3MTNjODRmMDcyNjhjYTlkNmZmNjUgbGVnYWN5LXRydW5rCiszOTQ0NyBiYmY4MTU3ZDAzOTg0ZTk2YTlhODY3ODg5ODgwNWZlYTI3MTk5MzU5IHJlbGVhc2UyNC1tYWludAorMzk0NDggNGZjN2E3ZWRjYjRiNmFmYmM5NDI0MTk2YTEzMDJkMGY1MTVkMDFhOCBsZWdhY3ktdHJ1bmsKKzM5NDQ5IDZiOGM1NTg3Nzc1NWM3ZmRlZTA1NDM0YTZlOTg5MWMxODZiYjVmMDQgcmVsZWFzZTI0LW1haW50CiszOTQ1MCAxYTNjZjk2YzhkNDY0YmQ1NDU0ODkyZDY0NzUwZTFmMWU2MjNhNmQxIHJlbGVhc2UyNC1tYWludAorMzk0NTEgYmNkOTgxMTIzNWQ0OTYyYmUwNGZiNmQ4NzU5OTU5OWM4ODc5N2JhMSBhc3QtYnJhbmNoCiszOTQ1MiBhMTU5NTg0ZGI2NWMxMzQxNTdkNTYxMjhiMGYwMzM3ODFiNTVhZThhIGFzdC1icmFuY2gKKzM5NDUzIGJhODQ0YmQ3YTMyYjZiYjY1MTA1MzFhNjNhYjBkYzAwMjkwOGQ2NjggYXN0LWJyYW5jaAorMzk0NTQgNDY4MWE4ZmE0NmQwNmVjZmM3YTRjNjc3NDRmZDM1ODBjY2RjNDU4ZiBsZWdhY3ktdHJ1bmsKKzM5NDU1IGNlNWI3NTMyNTIwYTg3ZDk0Njc0MDM5NjFmNmI5ODhiM2E0NDk3NDkgbGVnYWN5LXRydW5rCiszOTQ1NiAwZWFlNTIxOWYzYjgyNGQwZmU2MjdhMWQ3ZGE0NzM3YWJlNDg4ODQ1IGxlZ2FjeS10cnVuaworMzk0NTcgM2U2MjEyMTEzZTgyYTBkY2JiMDllOWUwOTU5NTcyMmY2NTUxNTA0MiByZWxlYXNlMjQtbWFpbnQKKzM5NDU4IGExODVkNjk2MzBiMzhhMjc4Y2M3NDY1MDMxMmNkMWJkYThiOGRlZWUgcmVsZWFzZTIzLW1haW50CiszOTQ1OSBjMzUzYzI3ODJhZTE1OTVkNWU0NzU0Nzk4MmQwNDQ5MjI3MzVhZmRkIHJlbGVhc2UyMy1tYWludAorMzk0NjAgOTdkYzhmMDZjNGZhYjdkOTU0YWI1M2Q2MjAwMDA0ZDkzNzBhNjMwNSByZWxlYXNlMjMtbWFpbnQKKzM5NDYxIDBiY2IzMDNiMzQxYjY2NGI5ZTE2NTRjNGQ1YThhYzVlMGMzZTE0ZmUgbGVnYWN5LXRydW5rCiszOTQ2MiAwZmU4MTE3Yjc2MWQ3NGFkMWEyZWY3MjA0OGZmNTFhYjM0Y2FjZDNlIGxlZ2FjeS10cnVuaworMzk0NjMgZmUwY2E2MDQ4MjY3MDI3NzIyY2IxNmQ4MTdhMzhmZDhhYjNjZjhjYiBhc3QtYnJhbmNoCiszOTQ2NCAwNzk1NmQ0YThlNGFiYmRkNzVjMWY2YWMzZjM4Y2VkN2Q1MWY1Zjg0IGFzdC1icmFuY2gKKzM5NDY1IDEyOWFiMjJjNGIxOWE5Y2E0ZDE5ZTdjZTI5NWU3OWJkNTNmMWM3OTcgYXN0LWJyYW5jaAorMzk0NjYgZjU0ZTUwYzUzYTcyZDM5YzZhZGQ3ZjYzYjliMzE1NzQ4ODY1MjUyMyBsZWdhY3ktdHJ1bmsKKzM5NDY3IGM4OTNjYWViMTEzNzA1NzljYTYzNjQ4MzhlMzFlMjE1ODg0M2EyNjEgbGVnYWN5LXRydW5rCiszOTQ2OCAyMmE0MDkzYjUxNTFjNjliODczOTVjZWMyNjlhYzA2ZjZmYWNjY2NjIGFzdC1icmFuY2gKKzM5NDY5IGRhZjMzOGVjZGNjYzZiZjYxMGEzZjY0NjgyYzczMGQ0NDYyNmUxMTQgYXN0LWJyYW5jaAorMzk0NzAgYjcyMDEwNGI3ZGI5MTY1YTAzOGE1NTM3OGIxZTdmNDUzZmZhZDI1YSBsZWdhY3ktdHJ1bmsKKzM5NDcxIGJhNDRlOWUyYjU1NDcyOWY3MjBjZGQ3Y2NjZWY5ZWEwMGNiMjM5YTMgcmVsZWFzZTI0LW1haW50CiszOTQ3MiA4ZmE4M2E5ZWJjNmVjY2VjZWJiOWQwOTVhMTU5MWFmNzBiZGU2NGM1IGxlZ2FjeS10cnVuaworMzk0NzMgZWQ2NWUwYWQyMjE1OTViNzgyOTY0NGY0Mjk1OWQ5M2ExZDRkYjU4ZiBsZWdhY3ktdHJ1bmsKKzM5NDc0IDc3MTg0N2NiZTNiNmNiNjg2MDI0NDdhZDA3YWZjMGJiOGExYzVlYTUgcmVsZWFzZTI0LW1haW50CiszOTQ3NSBmNjNlNjk2MGM1Y2ZiZTI2YjFiNTlhZjFhYTIyMTliZmE4ZWFlZGMyIGxlZ2FjeS10cnVuaworMzk0NzYgMGI3ZmE2ZjA1NTJhYmU5MDUxZWU0ZjRjMzNjZGNmNjQ3OWU2MTE3MiBsZWdhY3ktdHJ1bmsKKzM5NDc3IDI2YmEzZDRmNGZjNDE1NTdmZDI2ZTNkZmVjMmQzZjZhZmE4YzE5N2UgbGVnYWN5LXRydW5rCiszOTQ3OCBhNTc4MDAyYzhmNjU5OTIyMGQwYmFhMGI2MDM4OGJmYzdlYjhhY2U5IGxlZ2FjeS10cnVuaworMzk0NzkgMTVhODk3NWY3ZmE5M2Q1YTA2OGY3ZTJiZmI0YjI2NGE0N2IwOTU0NiByZWxlYXNlMjQtbWFpbnQKKzM5NDgwIDFmMmFmMjU5OTY4YjQ1NWQ0MGIzNWFkN2M0NTE0ZWNlNDM4Y2U3OTYgbGVnYWN5LXRydW5rCiszOTQ4MSAwYTI4ZDQ4NjM2Yzg2NDNmZGZjZmM4YjcyMDUxNzUxOTBjY2EzMzYwIHJlbGVhc2UyNC1tYWludAorMzk0ODIgNWQ1ODQ0M2Y0ODliNGZkMjkxMGE0MGYwMWRhMzU2YTViMTBiZjE3MCBsZWdhY3ktdHJ1bmsKKzM5NDgzIGU3ZmQ4NTU1MGJjMGI1OWI4Zjk2NmVhMmVmNWU5YWU0MzNlMjA5NDEgbGVnYWN5LXRydW5rCiszOTQ4NCA5NTE2YmE1NGI5ZGY0NDc1N2RlNDgyOGJiZmEyN2I0MDZiMDAwODYwIGxlZ2FjeS10cnVuaworMzk0ODUgNWRiMjczMTVlZGNmZmE1YTY4ZWI3YTE5Y2UxNWQ4M2Y0ZTgxNDc5NCBsZWdhY3ktdHJ1bmsKKzM5NDg2IDRhYmFmNjkyMzQzNzE5NGRiYzYzMjBhZjZhNTEyZWVmNDM0ZmVlYzIgcmVsZWFzZTI0LW1haW50CiszOTQ4NyBjZWFjMDI3Nzg1MjM0OWJlNjU4OWMxM2RhY2JiMGVlY2EwOTk1YzVhIHJlbGVhc2UyNC1tYWludAorMzk0ODggZGUxYzVkMTdmZGU2YzYzMGU5ZjUwYWFhNWY0NjFlZGVmMzA2MzllYyBsZWdhY3ktdHJ1bmsKKzM5NDg5IDQzNmJlMmM4OTE0MDJmNGRjZWQzZmQ5NjYyNzA1MWU5ZjQ5NTlkYjEgcmVsZWFzZTI0LW1haW50CiszOTQ5MCA3ZGQ0MzE3NTBiZDM2NWZkNWQzNzExZDQzNzA2M2U3NzUzYTFiMDgzIGxlZ2FjeS10cnVuaworMzk0OTEgZWNkNjFjOTJhZGYzMTYyZTYzMTAyNzNmZjhlZTM2NzcxOTM4MzA5NyByZWxlYXNlMjQtbWFpbnQKKzM5NDkyIDk1MjFlMzgwMzgwZjBlYTNlYzQzM2UyZmJiNWVmZDlhY2E1NjUyNmMgbGVnYWN5LXRydW5rCiszOTQ5MyA2YmRlNmNkMjM5NTRjNzEyNTczNTRhYjMyMzJhNzk4MWUwOGE5ZDBiIGxlZ2FjeS10cnVuaworMzk0OTQgMTdiMWRmZDNjYmJiZDMzZmVjMTY2YjllOTg0NzIxY2U2NDBlZjZmZiByZWxlYXNlMjQtbWFpbnQKKzM5NDk1IGNjOTQxNmVlNThlMTlmMjgyYWJkNGMxMWMyNTgxYTcyYzhjMTM0ODQgbGVnYWN5LXRydW5rCiszOTQ5NiBmNzM3OGU5N2I2NmEyNDc4N2NkNjdiN2RhNWZiZDVhMmQ5YjgwNGIwIHJlbGVhc2UyNC1tYWludAorMzk0OTcgZTczYWNjZjNlZGRiNGEzMmY5Y2M2NTE1MGE4YWZkMjQ2MDRkMzdiNyBsZWdhY3ktdHJ1bmsKKzM5NDk4IDMzNmI2NjRhMjIxMGU5MmQ5NGJlMWQ5NmIzMzM4YTFiNzBmNWE3YjkgbGVnYWN5LXRydW5rCiszOTQ5OSA1ODI0MTMwYjdhYzM1MGZmMjdkZGFkYTU5MGFhMTc0M2YzODE3NDExIGxlZ2FjeS10cnVuaworMzk1MDAgYTdjY2NjMzkxMjI4MDIyYTgyYjcyMTAzZjllYzQ2OGQ2MGVhNGU2OCBsZWdhY3ktdHJ1bmsKKzM5NTAxIGRjODUzODg0NWIwYzg5MGVhNzkyNzU0YjRmNTJkYjRjOTk0OTA3MmEgbGVnYWN5LXRydW5rCiszOTUwMiAzNjNlNmRkMDc5ZmNhYzM5N2YzZTlkMTM2YmIzNTNjYjI3ZTM0MDZjIGxlZ2FjeS10cnVuaworMzk1MDMgMzlkYmUzYmUzMjdhYWFmYzdiYTRjOTg0OGE4ZmE1MjUyODNkOGQzZCBsZWdhY3ktdHJ1bmsKKzM5NTA0IGQ1MDRhMzAyYmY1M2UzYTNkYWNiNGNlZDk0YzcxMDhlMGVjZjkxZTcgbGVnYWN5LXRydW5rCiszOTUwNSBmMTdlZDNiNjJhZGFiMTU2Njk0NzgzNzhiMGQwODFjY2FkNGQyOWYzIGxlZ2FjeS10cnVuaworMzk1MDYgZWE1M2U3ZDk4YjAwNmFhMjM5ZjkzMzQzMTczNTgyNWFmZGUzNTY5NyByZWxlYXNlMjQtbWFpbnQKKzM5NTA3IGZhNzM3NjVlOGVmNTFkODU3MzY5YWYxYzM3NTlmYzEwZDI4NGZhN2YgbGVnYWN5LXRydW5rCiszOTUwOCA0NmYwYTQ0ZjQ5ZTY0M2ZlN2NhMmMyYWQzNWU3NTBkZmU2OTA4Y2M2IGxlZ2FjeS10cnVuaworMzk1MDkgOTY2ZGVhYzE1YTg5MGRmNzNhMGU2ZTUwYmI1ODYyNzhiZjhjYjg0ZSBsZWdhY3ktdHJ1bmsKKzM5NTEwIDg3NTczOWQ3MmZjMWM3Yjk4NmVlNjA1ZGU1Yzc5NWI0MGUyYTFhYTggbGVnYWN5LXRydW5rCiszOTUxMSBjMGQ2YmFlMzViNGU3OGZhMjBmNzdmMzE2MzdkZjJhYjc1NGNkMGFkIHJlbGVhc2UyNC1tYWludAorMzk1MTIgZTQxZmRhOWYwZmQxMDMzY2YxOTFhOGFkZWZiNGIxMjdhMjAxNzE0OCBsZWdhY3ktdHJ1bmsKKzM5NTEzIDdkMGE1YWMyNDY2OWFiNmJlNDcwYWQ5OWFjNzFkYjhhMGExNGZmYTAgbGVnYWN5LXRydW5rCiszOTUxNCA4MTI1OTAwOWJhMmM4ZjAyNDExMWM3MzA4YmM3NzQ3NmU1NDcwODQ1IGxlZ2FjeS10cnVuaworMzk1MTUgMjUzNzhiZGIxYjNhMGRhOGNkZGNlZjQyMDgwN2NmOTRlMDZmOWUzOCByZWxlYXNlMjQtbWFpbnQKKzM5NTE2IGFjZmMwZTIyY2Q4ZmM1OGU2YjIyMjZhNjZkZTBkZWExMjc5YTJlYzIgbGVnYWN5LXRydW5rCiszOTUxNyA3NmUyOTVlYTUxNTJjOTg0NmYxZTA5NjczYWU0NzI3NzliNjY4YTY0IHJlbGVhc2UyNC1tYWludAorMzk1MTggMTFhMjY1MGU4NTY4ZGMwYTc1MWJkYTZiODRkN2QwNTZmMDEzMDI4YyByZWxlYXNlMjQtbWFpbnQKKzM5NTE5IGJiYmI3ZGRhMzJmM2VlMDg1OWI4NjIzM2JmNmYzN2Y1N2NiMjVhZDEgbGVnYWN5LXRydW5rCiszOTUyMCBkNzlhZjA2NTExNTUwNmZiZDMwODNlYjA4MzIzNDFmM2ViNTk1ZTA1IGxlZ2FjeS10cnVuaworMzk1MjEgYjE5Y2Y3M2M1NGE3ODAwMWQ2ZDZkNWExM2RmYjA1ZDk3YTcxYjJhMSByZWxlYXNlMjQtbWFpbnQKKzM5NTIyIDcyNGJiZDQ4OWFkNDcyN2U5MDUyYzY5YjU2MzQxYjJiNWIyY2QyYTkgbGVnYWN5LXRydW5rCiszOTUyMyA1N2Y2MzBhOWRlMjYxOTYxNmYyYjIwYWUxYzM1N2ZiNDNlMDEyODUyIHJlbGVhc2UyNC1tYWludAorMzk1MjQgOWI3ZDExN2ViNGJjOTZkY2NhNzRjNmM4Y2VlOGFiYzkxODQ5MTkyZSBsZWdhY3ktdHJ1bmsKKzM5NTI1IDExNzQ0ZjdiYjQ3YTgyZDc4YjM2OWY5YmUzN2U2ZjczMDBjMjllYWUgcmVsZWFzZTI0LW1haW50CiszOTUyNiA2OGFkNTJiMDQ0NWJkYjdmMjI4YWVjNzcxY2Y3ODM4YjUxMzMzOTQ3IGxlZ2FjeS10cnVuaworMzk1MjcgNDE0MTNmMjMzNDViNGY3NWUwNDU2NzE0ODBiODA5Y2QyYTNkOTZjYSByZWxlYXNlMjQtbWFpbnQKKzM5NTI4IDhhNmM5OWY4NjVlYmQzOWNmZTc5YzUwZWFkZjg0MTU5OTRmMWRiNWQgbGVnYWN5LXRydW5rCiszOTUyOSA4YWQ5YTJmYThlYjJhNjA3OGY5NmFmMzBjODNlMmM1NTlkYWIxZWVkIHJlbGVhc2UyNC1tYWludAorMzk1MzAgYmZiZTJjOWIxMjE1OThiNmU1YTNmYzE1ODI3ZjIwNDE0NDBlNzQxYyBsZWdhY3ktdHJ1bmsKKzM5NTMxIGYyMzVlOGVmMGQ1NjkwNGZlMjA0YWRhYmE3Mzc1ZGQ3MjcyYTYyZmMgcmVsZWFzZTI0LW1haW50CiszOTUzMiAwN2VhZjYwZjc1NjUwYjE3MGYzNWQzOWI5M2FlNWYxZGEyOWFkYmUwIGxlZ2FjeS10cnVuaworMzk1MzMgYjhkMWI0NTI5MjA3MTE2MzM2OGI1N2NjZTcxYjQwYzNlMzc5MzBlMSByZWxlYXNlMjQtbWFpbnQKKzM5NTM0IGFjODgwNDRjZGU0ODZiMDBhM2U0NzhkNzc4NWI3ZmQ3YWQzMmJkZjggbGVnYWN5LXRydW5rCiszOTUzNSBkZmFiZjBjN2YxYWRmZDE3YzQ1MjZjZjJiZDljYTNkY2I4MDJmYjg3IHJlbGVhc2UyNC1tYWludAorMzk1MzYgYzg2NTU4ODVlNDA2NWQzNTUzMzgzNDkwOTA5MTNmODVjYWZmZGYzNSByZWxlYXNlMjQtbWFpbnQKKzM5NTM3IDZkYmZiZWU1ODVjYzgzZmUzMzIzMjY0NmM2ZDc4YThjYTg0YmI1YmUgcmVsZWFzZTI0LW1haW50CiszOTUzOCAxNTJhZTcxOTNjOWE3N2VhMmJhMGM4N2M0Yzc0NzYwZDgwYmU2MDU5IHJlbGVhc2UyNC1tYWludAorMzk1MzkgZmEwODgxZmQ0OWI3YTk1MDVlMTc2OTY1Y2ZhN2E3Yzg2NDcwNDkyNiBsZWdhY3ktdHJ1bmsKKzM5NTQwIDhiYWQxYmZjMzMxOTkyYzhlMWYzNDllZDUyYmE5ZTE2NDVmOTliMTEgcmVsZWFzZTI0LW1haW50CiszOTU0MSAyNjkxY2JkYWU1OWJmMzU2MTdmMWEzMzY4MDUwNjNlZGZhZjRjMjdmIHJlbGVhc2UyNC1tYWludAorMzk1NDIgOTA5MzBkMmQwYzE5MTA3NmEyYTAyN2Q1OWRkN2YyN2VmMzM0OTViZiBsZWdhY3ktdHJ1bmsKKzM5NTQzIDM1YzQzNjc0MDgzYTlhMzQxMzNlN2EwZmEyNGYzMTIyNzQ0MWIxZDMgcmVsZWFzZTI0LW1haW50CiszOTU0NCAxYjI1ZmU4ODM0YWVmZDdlY2JlY2RiOTAwM2M0MjY4NDk3YjU5YWJjIGxlZ2FjeS10cnVuaworMzk1NDUgZmQ1MWNlOGQzNWFiNGZkNDJhZjVlZmY2MWQwMmRjYzI3MGI0NDNjMSByZWxlYXNlMjQtbWFpbnQKKzM5NTQ2IGNkMzEwMjdhNzE2N2EzNzU0OGYyODU2NzljNWM5NjdhMGJiZWFjNmUgbGVnYWN5LXRydW5rCiszOTU0NyBkM2FlNzkzMGNiOTM5NTMzZmNmZmQ0NGQxNjk1ZDkzNjJlZDBhNGM3IHJlbGVhc2UyNC1tYWludAorMzk1NDggNzNmZTIxNjNmMGIzMGQzM2EwMjZjOGJhNmQyNTI5MGVhNTI1OTA2MiByZWxlYXNlMjQtbWFpbnQKKzM5NTQ5IDVhNmM0ODNlZDY4OWY0MTA1ODc4NDI4ODIwN2ViOTkwZGEzMTA0NmMgcmVsZWFzZTI0LW1haW50CiszOTU1MCBjMjhkMGVkODZmZjA1OGI5ODEwMGU2Yjc3MTMwNGQ0MmQxMTUxNjk4IGxlZ2FjeS10cnVuaworMzk1NTEgOGVmNTAwYzQ1MDZjNzJiNzRiZjlmYTA1MDBhOTU5ZmRkM2Q1MGZmNSBsZWdhY3ktdHJ1bmsKKzM5NTUyIGY0YzJjNjFjYjU2MDk1OTUyOTk0MTI3MmUxODBkZTQ2MzI2MWUyNWMgcmVsZWFzZTI0LW1haW50CiszOTU1MyAzNzg1OWM2YWQ1YmI1ZjdlYmFkMTlhMTY5ZDk4ZGVhNDI2YzEyMTUyIGxlZ2FjeS10cnVuaworMzk1NTQgNTJjNjVkNzNmYjc0MDE5ZjZmOWFiNTQ3YzBmYjE4NTEwOWIyYjBiZiBsZWdhY3ktdHJ1bmsKKzM5NTU1IDA5OGVhMWUxOGU4ZDk3NjA0ZDhmNmYxOGQwYWY5ZGExYThhMzViOTAgcmVsZWFzZTI0LW1haW50CiszOTU1NiAwYWUzMDcyMTI3NTUwYWUyNGI3NDJmMWIzMmJjZDFjNDE1MmIxMmZiIHJlbGVhc2UyNC1tYWludAorMzk1NTcgMGRhMzk3NWZiMGJiZmNmNzgyZDhjMGY2N2U2NWU1MDJiMTA2YTc0NyByZWxlYXNlMjQtbWFpbnQKKzM5NTU4IGU2MTE5ZDU3N2NkMzVmZDhkNTM4NWU1MGNjMWZkYWJlNGNiZTQ3OTUgbGVnYWN5LXRydW5rCiszOTU1OSAwMmE4YzA2NDNmNWJjZTI2NmJlYWI3NTBhYjkxYzcwMzZlZjc4MTdjIGxlZ2FjeS10cnVuaworMzk1NjAgMWNmMTcwMzdhMmNhOGM3NTgxNzdjYjdkYWExNDFhMDM4YTQ2MTgyMyByZWxlYXNlMjQtbWFpbnQKKzM5NTYxIDVmMjc4NTcyMmNiYWQwMzk0MWEyMTY3NzE2N2M3OTZmNzNmM2ZlYTIgbGVnYWN5LXRydW5rCiszOTU2MiA0ODA2Y2IwMDlhOWNlNjIzY2VmOGMxYTExYWE5ODAxM2QzNDFhNjAyIHJlbGVhc2UyNC1tYWludAorMzk1NjMgOWEyZTIwMzE4YzlmNWZiZGI3OGE5MTk0NGFmMDg4ZDllZmNjZDNhZCByZWxlYXNlMjQtbWFpbnQKKzM5NTY0IDYyMDk5MmFhMGE5ZWY1ODNkMzZiZjkzYzRjMTE5Y2RjMjgyZWEwOTcgbGVnYWN5LXRydW5rCiszOTU2NSBiNjhiMTM1YjQ1NTI2MWQyODI5OTcwN2M2NmU1MzBjZjkwODc0OWQ2IHJlbGVhc2UyNC1tYWludAorMzk1NjYgYmNkMDVjZjJkNjFiYTgwY2U5YjU3NGI5Mzg3YTJkYjMyNTUzZjZlNyBsZWdhY3ktdHJ1bmsKKzM5NTY3IDhjY2FkNzMyMzE1Zjg5MmRiNTNiM2RiNTE5ZDc3ZThkMDA0ZTRhY2YgbGVnYWN5LXRydW5rCiszOTU2OCBhZmRhZGQ1NjkxOTcwNWMxZTE5MTk1MWYyYmQ0Y2I1NGEzYjcwNzE3IHJlbGVhc2UyNC1tYWludAorMzk1NjkgNWMwYzA2ZTIyNmVjMDZlYTY0ZjRhOTA2ZDM2OTFlNjA3MDgwOGE3YiBsZWdhY3ktdHJ1bmsKKzM5NTcwIDQwZGRmMzY2ZjVhMTUyZjZiZDIwZTk4MjA5MjE5MjliZDkyY2YzNDEgbGVnYWN5LXRydW5rCiszOTU3MSA5Yjk5NGM2N2U5MDljMDg2ZjAyNjE3MTFiOTliNjRhNzc0YjkxMDFmIGxlZ2FjeS10cnVuaworMzk1NzIgODczYTFiMmVmZGM3MzY1NzZkYTA0ODQ4MTRjZjY1NjA4OWMwMWNlZCBsZWdhY3ktdHJ1bmsKKzM5NTczIDJjMjgwZTQ2NjFkMGEwNjk0NDRjYTIxMDE0YjVhNGFkNTY2ZmY3YmEgcmVsZWFzZTI0LW1haW50CiszOTU3NCAzOWViNmEyMjFjZjMxMjQyMjFhMTRiMzhlNjNkNDk5MWNmMGNkOGZiIHJlbGVhc2UyNC1tYWludAorMzk1NzUgMjFiYzYyNjJlYjk5MjBhYzhjMmU1N2VhMWUzZjBiZmM3ZGU2YTBhOCByZWxlYXNlMjQtbWFpbnQKKzM5NTc2IDg5Y2YyZTNmZTcyOGE2OGY0YmM2NmZjYTljMGFmNzllMGUwODVhOWEgbGVnYWN5LXRydW5rCiszOTU3NyBmODZjZDI3Nzg2YWIzMTliNzM2NTUxMGI1NjA1MDNmNjY1YTBmYWE2IHJlbGVhc2UyNC1tYWludAorMzk1NzggNzc1NzFmNzFiM2U2N2IwYmYzZjVkODlhNDYzY2JlMzA1MDJiOTMwYSByZWxlYXNlMjQtbWFpbnQKKzM5NTc5IDVhOGJmOGU3ZDAxMDJjMGUwYjFlZmRkODFhZDAwYjcyMDcxZjIxYmUgbGVnYWN5LXRydW5rCiszOTU4MCBhNjcwYTVkZDFmYzZhYTkxN2JiNjJhZDQ1NjA0YzNmY2I2ODNmNDlhIGxlZ2FjeS10cnVuaworMzk1ODEgMjNkZGE5MmRlOTkzOGEyOGZmNTU1ZWM4MTM4Zjk0NDYwYjMxMjA1MSBsZWdhY3ktdHJ1bmsKKzM5NTgyIDFmMjM2ZTU5OGFlOTc2MzFkNGRiNDQ3MjMwMjUwMGZmMzM4NDFjM2IgbGVnYWN5LXRydW5rCiszOTU4MyBhZjNhMDY2MjVhNmU1OWMyZGJmOTJiNDBlYWJiNzRiYzJkNDU2ODFiIGxlZ2FjeS10cnVuaworMzk1ODQgMzVhOTllY2NhY2E2NzkzMjZmNWU1Yzk5MGIzYjlmNmE2OTRjZjliZCBsZWdhY3ktdHJ1bmsKKzM5NTg1IGVjYjc4ODYzYTRlZTdmMzE0MzJiNzlmY2MxNDM2MTQ5YzA1NTBkYzEgcmVsZWFzZTI0LW1haW50CiszOTU4NiA3YjJiOGRiOTgxMzYzMzUwN2NlNTk2NWRmMzg3ZDI0NTViN2UwNGIyIHJlbGVhc2UyNC1tYWludAorMzk1ODcgYzZkN2YxZmU5ZDFlYmU5MWE2YWJiOGYzMjVlMGI4Y2U1OTIwZDhmZiBsZWdhY3ktdHJ1bmsKKzM5NTg4IDkwYmI3MTEyMjI1N2MxMTIzY2VjODliNTUwOWI3YjkyODFlZmNmNDYgcmVsZWFzZTI0LW1haW50CiszOTU4OSA0ZDFiZDlkMGMwMDZkYjY2M2VjZTU3OWM4YTI0MGVlNmJhMzdiMDczIHJlbGVhc2UyNC1tYWludAorMzk1ODkgZDAyZDM4NzU1NGUyMDBiZWZjZWVjOTk5Yjc4OGY0NTkzYjQzNGI0OSByZWxlYXNlMjQtbWFpbnQKKzM5NTkxIDcwOTI3Yzc5OWEyMWUyNmIzYjVjZDBmNmZjMTA1Y2JhZjk3MWNkZjQgbGVnYWN5LXRydW5rCiszOTU5MiA4ZmZlZWRiNjA2ZDMzMGNkZDNhNGQxNmJhNjc2YTFhNmVhMzBiNGNjIHJlbGVhc2UyNC1tYWludAorMzk1OTMgNmYzZDIwOTU1NWViNTVmZjQ4ZjU1YTFkOTQ1ZDRlZmYwYWEyMWU0OCBsZWdhY3ktdHJ1bmsKKzM5NTk0IDcyNjYwYzA4NjZhMTlmMDAzNmU3MjA4MTc5OGJlYmI4ZjZlMWVmMWEgbGVnYWN5LXRydW5rCiszOTU5NSA3NzRiZjlhMzhiMmFiOTQ2NjZjNWZiNjU0ZGE0ZTI0ZTI0YTVjYTM2IGxlZ2FjeS10cnVuaworMzk1OTYgMTdhODJiYTQ1NDUyYWMxYjVhMTJkZTlkZGQ0MzNjZmE2MzlhMzc1ZCByZWxlYXNlMjQtbWFpbnQKKzM5NTk3IDM5OWM0MTE3NmJiNzlhMmYyNDg1YzlkNGEzODA3YThjMjA5NWQ0YTUgcmVsZWFzZTI0LW1haW50CiszOTU5OCBhOTU3NjVmNjkyODI1MWQ4NmYwZDEzNTdlYjQ2NjQxYWM0ODMzOTEyIGxlZ2FjeS10cnVuaworMzk1OTkgNGUwZDJhN2Y1ZjE1NDQxYmRjMTUyZmIxZTBjYTRlMDBhZmZjMDVmNyByZWxlYXNlMjQtbWFpbnQKKzM5NjAwIDc3N2IyOWQ5MTNhNjIyYTJlOTlmODNhN2VlYTIzZWFmYjBmNjcwOWEgcmVsZWFzZTI0LW1haW50CiszOTYwMSA0OTVlN2ZmYWQ3ZThjYzA2NDdiZmUyZGMzMDRlOTBjY2RlZmEzZmMwIGxlZ2FjeS10cnVuaworMzk2MDIgNjg3ZmFhOWNmNmViMDhjMTYyZWUzOTJmNTUwNGY0ODhiYzMyNjYzMCByZWxlYXNlMjQtbWFpbnQKKzM5NjAzIGMyNjBkM2I3ZDU4Mjk4MzA0MDNkMTVmYmQ1NGE3NDQ4OTYwNDhjODkgcmVsZWFzZTI0LW1haW50CiszOTYwNCAwM2NmZGNiYzRkMWYzYTM1M2RjMzg1MDdmYTQwYzJmZjczZDJhMGExIGxlZ2FjeS10cnVuaworMzk2MDUgNDVhYWE0MzZiOTQ1MTI2MDYzMTI0MjIwYmJkNTE4ZWM4ODgzN2NiZCBsZWdhY3ktdHJ1bmsKKzM5NjA2IDMwMjhlMzBhYTgzNTU5MDM1Y2VmMjcyYjQ3ZGJiMGI3ZGJiMDcxMDAgcmVsZWFzZTI0LW1haW50CiszOTYwNyAyN2UxNDI2YjdmMzFkNjQyZTQxMTRhMmZiZjYxM2Q4ZGY2NDg0ZjI0IGxlZ2FjeS10cnVuaworMzk2MDggZTIyMzM0YjFkYTY3ZmIyOTE2ZTY4NmQzYzRkZjljZTYzYjVjOTdmNyBsZWdhY3ktdHJ1bmsKKzM5NjA5IDdkZDRlNmNiOWQyNzUyODNlYzU4MGFiNzFjZmEzYzYxOWUxMGFmZWQgbGVnYWN5LXRydW5rCiszOTYxMCA2OGRiY2JmMDUxNmM1NzY1ODYyMDc5M2UyODQ2M2E3ODIyMDg5OTY1IHJlbGVhc2UyNC1tYWludAorMzk2MTEgZTMxNTY0YzdiZGJmN2EyNmIzZDgzMWFlODA4YWNmYWM1NjE3MTg2MCBsZWdhY3ktdHJ1bmsKKzM5NjEyIDFlN2I3NTUxOTRhNGRkYjc0OTVlNDA4MWNlYTY3N2E5ZjUxMzE0MzYgbGVnYWN5LXRydW5rCiszOTYxMyA0MDdhYzQ5OWE1YTM5MWY2NjBlNGNkNjVhM2RlM2U5ZjE5MmEyNTkyIGxlZ2FjeS10cnVuaworMzk2MTQgZTBhOWY2NmI3MDE0NjcxNmI2YzE3NGVmZmUxNjQzOGRmZGE5ZTQ3MiByZWxlYXNlMjQtbWFpbnQKKzM5NjE1IGFlNTM2ZTY2ZTg2ZjVmMDFjMThjZDQyNWUwMmRmZjY3ZGY3NzFjMzEgcmVsZWFzZTI0LW1haW50CiszOTYxNiBiNjQ2MzljZWEzZWQ4N2ZmZjRlYzBlNGE5MmI2ZTQzMTViYmI3Y2NkIGxlZ2FjeS10cnVuaworMzk2MTcgZjViZDdlYWQxNmM0NzIzNzFkNTVhYTE5YWUyNDAzNjhkOWVkMWY2ZCByZWxlYXNlMjQtbWFpbnQKKzM5NjE4IDRhZTdkYWFmMGE2NjExODg0NDlhYjgzZGZhOWEzNzZjZGFkOThhODEgcmVsZWFzZTI0LW1haW50CiszOTYxOCA4ZDM3Mjc2ZmRmMDc3ZDZkMjNkOTYzZDNmN2Y5NTM4MWQwMGYxOTI2IHJlbGVhc2UyNC1tYWludAorMzk2MjAgNmI0MmVlYjUyMTRkYThhMDMyMmQzMTYyZTUzZmVlMzE5MmI5N2NjNCBsZWdhY3ktdHJ1bmsKKzM5NjIxIDhmMmJmMTg2NzRjYmU5MzI4MjBmM2U5ZDQwZDJhMjgzYTFkYzliYmIgcmVsZWFzZTI0LW1haW50CiszOTYyMiBkMzNmNGZjODRkNGFmMmIxOWU2M2Y2MDMyMzVhOTE0OTc4YmVjYzkyIGxlZ2FjeS10cnVuaworMzk2MjMgYzM3ODNhMTJhMWJjMTlkM2QwZWIyODEyNDg3N2UyMWJlYzI4YTMyYSByZWxlYXNlMjQtbWFpbnQKKzM5NjI0IGNhODQ0NTE3Yzg0OTUyYzQ1NjQzMGJkNTViNjA0YjAzNzBmZWY1NzQgYXN0LWJyYW5jaAorMzk2MjUgNmEyMDgzMWQzNTdkNTdjZDYyNGJhYjkwZGUzNzMzZTUxZWI1MTMxMyBsZWdhY3ktdHJ1bmsKKzM5NjI2IDllZjI1Yzg5ZDBkNmMzMDY5Y2Q4MGFiOTU5N2MwYTI3MDBlMTYxNTcgcmVsZWFzZTI0LW1haW50CiszOTYyNyBiNWEwMTI4MmRhZGFmYzk5Y2NhNGVhNjExMjM0NDA1M2RiODY3ODFhIGxlZ2FjeS10cnVuaworMzk2MjggOGViNzVjMjhlZDk0MWM0MzJmNWQxM2RjMTUwZmMzN2NkYjU2MTA4MiByZWxlYXNlMjQtbWFpbnQKKzM5NjI5IGEyY2YyNTY0MmM4ZWNkZjk2YTg4NmY0MjNmZDg2MmFiNzM1MWI4ZWUgbGVnYWN5LXRydW5rCiszOTYzMCBjYmExMGM2ZDM0ZTM4NTkzZTY2ZDZhOTY4ZDUxZTBiODdiZTAxMGI4IHJlbGVhc2UyNC1tYWludAorMzk2MzEgYTgzZThkZjEzNDk4NjJhZjMxODRhNjIxOWRlNTQ3ZWZhN2ZlZjdmMCBsZWdhY3ktdHJ1bmsKKzM5NjMyIDFkNGQ4NWM3MzVlN2M0ZjhhMTllNjBlZGE2MmJjYjUxMTRmZDJjNjcgcmVsZWFzZTI0LW1haW50CiszOTYzMyA2ZDA0Y2IyY2RkNGFmY2NhZjU4OGM0ZWFlNGFhZDEyNGU1YmZlOTlmIHJlbGVhc2UyNC1tYWludAorMzk2MzQgODU2NTFlYjNkOWE5MGQxMjFhMGY0MmE1YjA0Yjc0MTJmMTUzNmUwZCBsZWdhY3ktdHJ1bmsKKzM5NjM1IDY3ODQ4Yzg3MTc2OGI1NTljM2YyMzRhOTRmOTZiYjRmZmMyZDg3ZDYgcmVsZWFzZTI0LW1haW50CiszOTYzNiA1NjExZGI0NTFhMzliYTJlZjdiOGE1MGJjMmFhMjQ1ODYwY2JiNWVmIGxlZ2FjeS10cnVuaworMzk2MzcgMGJlMDA3NzVhODBjNDUxYzA1MTYwMWE5YzQwNWQ3NjRhZmYzYzQzMSByZWxlYXNlMjQtbWFpbnQKKzM5NjM4IGRjNWQ3MDYyODNkNjJmZWJjNDU4N2FiZDliOWMyOTJiZTIyMDJmM2MgbGVnYWN5LXRydW5rCiszOTYzOSBiOGU1NzFlNmRlMmUzZTU3NjdlYjBlYWJkNjUwYTJiOTY1NGU3ZTYyIGxlZ2FjeS10cnVuaworMzk2NDAgZTQ1NGQ2YzFiM2MxZjNmYzNjMzE3MDBiODcwYmFjMzQzYzRlN2IxZCBhc3QtYnJhbmNoCiszOTY0MSA2MzBmZjU0NDBkZmM2ZTk0M2NkNDMxMzVjNmU4NWI3ZDk2OTI0Nzc3IGFzdC1icmFuY2gKKzM5NjQyIDc1MzQ1Nzg3OTQyNTU5MGE0MTM1OTYwODgwMzJhMWQ4YmY1ZjBjMTEgYXN0LWJyYW5jaAorMzk2NDMgNmMzZDBhMGMxOTU2MDA4N2I1NDM1M2QyNTQ2ZGFlNDFlYzhjYmQ4YyByZWxlYXNlMjQtbWFpbnQKKzM5NjQ0IDg0NTQxNzMxYjE2NmE2YzQ1NTNhYThjZmJjOWRmNzk3ZjAxZjk3MjggbGVnYWN5LXRydW5rCiszOTY0NSBmNmEyMDliNjk1MGNhYjczYWEwMjJiOTliNTdiMjUyY2NiZmE5NWY4IGxlZ2FjeS10cnVuaworMzk2NDYgY2VlZDMzZWFjNDM2MTY4MTJhMjY3MWVlYTY1ZDgzZWFmOGY5N2Y0NiBsZWdhY3ktdHJ1bmsKKzM5NjQ3IDVkNTIzNmVhZThiZDNkNjBkZjgwMzhjZjU5N2UwNjA2MzQ0MTVkNGIgbGVnYWN5LXRydW5rCiszOTY0OCA0MTJkMjFlMzBjMTMwZTIyNzZiOTg0NzA4OWE2MTc1NDhmZTg3Y2UzIHJlbGVhc2UyNC1tYWludAorMzk2NDkgNjEyYTEyMTc4ZTQ3YjcwODRjNmUxMDNkNTA5NWUwZjFlZjQ2OTEyZCBsZWdhY3ktdHJ1bmsKKzM5NjUwIGQxNDgxM2U3OGE1MDBmYjJiOTFhYzU0Y2U1Y2ExZDRkMzE5MDNkNjcgcmVsZWFzZTI0LW1haW50CiszOTY1MSA5ZDQzMzgxYzE4NGNiYmJjN2RhY2MyYTI2ZWQ1ZTAwODVhNDA5YTlhIHJlbGVhc2UyNC1tYWludAorMzk2NTIgZTFkZjQ4ZjI4NDdhZDhlOGRkZjYwMmI3ZjI5NDA5YTY4ZWM5YWY5YiByZWxlYXNlMjQtbWFpbnQKKzM5NjUzIGU5YmFlMmZlYmFjODAwZTAzYmNiY2ViN2I0ZTQ4YWFhM2QwOTcyNTAgbGVnYWN5LXRydW5rCiszOTY1NCBmMDk1MWZkYWVkMzdjMGFmMzM4NThkYTBhN2ZkNDA2ZWIxNDZhZDQ0IGxlZ2FjeS10cnVuaworMzk2NTUgMTcyZmNkOWMxOTUyNjE1YzgxZmQwY2E4MWQ4ZTEwZTU1NTA2ZmNkNSByZWxlYXNlMjQtbWFpbnQKKzM5NjU2IDhiZGQ4YzJjNmM0OTVmOGE2ZjU4YTQxZmQ1NGE2ZDYzMjE2ZDQ5YTcgbGVnYWN5LXRydW5rCiszOTY1NyAzZTBiYjdmNzVhYjc2NWE5YzhhNTdiOTAxMWI4MjE5YTdmNjE1YzA5IHJlbGVhc2UyNC1tYWludAorMzk2NTggZTQ2NmMwYTU1MGI4OGNiODdiYTQyYTUxYmIzN2JlY2RlMjg3YjE5NiBsZWdhY3ktdHJ1bmsKKzM5NjU5IDAyZmU1ZDQ5NmZjZTk5MjQ2YzYzYjUyMzBhMjcyZjJkZGRiZmI0ZWUgcmVsZWFzZTI0LW1haW50CiszOTY2MCA2OTA3ZTQ3MWJkYWNlNDAwZDIzMGEwOTRjNmY2MzA2NzZlNGEyNGU3IGxlZ2FjeS10cnVuaworMzk2NjEgM2JlODM1MzUwMDgyODYyYjVhZTY4ODNkZWI0MDBmMmRjYzNlMGViYSBsZWdhY3ktdHJ1bmsKKzM5NjYyIGY5ODc5MjM3ODk1NDE3YjdkZDg1MjgxMTliY2Y0ODY3ZDhhODVlNTggbGVnYWN5LXRydW5rCiszOTY2MyAyOTg1ZTQyZWIyZDJiMDkxY2FkMThhNjJmM2RmZWJiNGI5OTVmNDc0IHJlbGVhc2UyNC1tYWludAorMzk2NjQgMzMwYzIzMDc1MDU0MTkxMDZmNzE2NzM2ZTAxMjMxNTAwZmYxYmMyYyBsZWdhY3ktdHJ1bmsKKzM5NjY1IDJmZGE3YjE3NDc5NGQ5YzAwNzhlOWI2NTc1ZmUwOGZkNDFmYzk5ZDQgcmVsZWFzZTI0LW1haW50CiszOTY2NiA1NDhiYWQyMTU0MjlmMzlhZjkzNzM3ZWExOTViOTVkZGEwMmE4MmIzIGxlZ2FjeS10cnVuaworMzk2NjcgZTI5OTU1NjM2MTBmNzE3OTRlZWRjNWY5YWJjYWQwMjFjZTA4YjhiNSBsZWdhY3ktdHJ1bmsKKzM5NjY4IDdhN2U4NzliMmFhMWIyZTA1OTFlYjU0NGY5OGE0YzZiOGVmZmZiZmIgSURMRS1zeW50YXgtYnJhbmNoCiszOTY3MCBiNjFjZGQ0Zjg4OGJmOWY2MTI4ZjM2NjIyNTEzNThmMTExMzBkYjE0IGxlZ2FjeS10cnVuaworMzk2NzEgMDhhNTUxZTc1NjFjYzJiNDYzZGM3NzI1YWZhMjhiZDJmZWIzODRkMyBsZWdhY3ktdHJ1bmsKKzM5NjcyIDk1YzBkZDExYWZhNzhkMmE1ZmUxOGM2NDI1NjRiY2FiNzQ0ZjE1NDYgbGVnYWN5LXRydW5rCiszOTY3MyA1ODZiNDhlM2NiOThhMDMzYTNkNzMxMTIwYWJiMDE2ZWY4MGE0NjFjIHJlbGVhc2UyNC1tYWludAorMzk2NzQgOTIxYWZkMDhhNWRjYmQ0MjAxMjk4N2U4YjJiN2NkZTM5ZjBkODE5MiByZWxlYXNlMjQtbWFpbnQKKzM5Njc1IGQwYWY3YjA5OGE5OWQ2MmVlYjJlNjdmNjE3M2JjMjg3MDZiMDljNGIgbGVnYWN5LXRydW5rCiszOTY3NiA5MjM3MjNhOWM0M2NiOTZlODE4NTMyZTAzMmExOTU3MGY1MTVjYmNlIGxlZ2FjeS10cnVuaworMzk2NzcgMzU3MjI0OWMxZTc3MTAyOTQyODhkMWNkNTk5NjMyMzMzNmU0YTE3MyBsZWdhY3ktdHJ1bmsKKzM5Njc4IGQ0M2RmZTY5NWQwOGE0YTc0M2I2ZGUyNTE3NzlhMjM0OGE5NDc5N2QgcmVsZWFzZTI0LW1haW50CiszOTY3OSBlMTZiNmJkZjNmODk5YTdmNzZiODE3M2RiNWRiNzkzZDllNGE0ZTNkIGxlZ2FjeS10cnVuaworMzk2ODAgMjJhNzIwYjM1MzE0ZDAxMjk5YWRhZWE2YjJmYTA1MTFhM2IzMzJjMiBsZWdhY3ktdHJ1bmsKKzM5NjgxIGU3OGU4NGYxYTgyNDg3ZmNjNDUzZWMzZTQ0ZDFlYmNmYzViODI5YTkgYXN0LWJyYW5jaAorMzk2ODIgNzY2MzVhYjdiNzA3NGQ4NTYzNTFiYmI4N2QzNGRmOTdmYzE5ZWIwOCBsZWdhY3ktdHJ1bmsKKzM5NjgzIGE2NGJlMTM4ZjBmNmM0ODA2MGQ2NDNkZTg5NGY5MjgxNGJkZTUzMDUgcmVsZWFzZTI0LW1haW50CiszOTY4NCA2ZTA0YTU1N2FlMjBjZDZlZmMyZGNiNjgxOGM3YjE0NzA4OGUwY2RiIGFzdC1icmFuY2gKKzM5Njg1IDRlMzk4ODM3MzczYzlhZDZlMzc1MWY1OWQ4YTM0NzQwOTA1NzE3MGMgbGVnYWN5LXRydW5rCiszOTY4NiBhYWUzNzQzMGY1MjU5NjM0NzdhMGM1YWFjM2ExM2JmYTYwZDYzNGI0IGFzdC1icmFuY2gKKzM5Njg3IDg1NjdlYjIzZTY1ZGViNGYzYjEzNmJjMTk1N2VkMGRiM2M5M2M2MzIgYXN0LWJyYW5jaAorMzk2ODggMGU2OTA3OGNhZDkwMGZkMzdhMjU1M2I3ZTg3YjA5YjMzYWRhNDA4MSByZWxlYXNlMjQtbWFpbnQKKzM5Njg5IDU2ODVlYzU5ZjM1Yjg0MTMwMjFmMTQzZDhlODQ2Mzk2ZDFjZmU1NjAgbGVnYWN5LXRydW5rCiszOTY5MCBhYWIxZDVmZGY2NGRmNjU2ZWRmM2EyNWYzNjNlMmQxMjc4NzUyMDFmIGxlZ2FjeS10cnVuaworMzk2OTEgOGU4NmRiYWQ4YzcxNGU5ODhjOGEwOTIxYjhiMWY3ZmUxM2FhYTFiOCBsZWdhY3ktdHJ1bmsKKzM5NjkyIDU5YzRhNjU2NDJjNTY3YWQ4MGEzOGM1NTQ3ZDVhYzAyODQ3ODY5YTkgbGVnYWN5LXRydW5rCiszOTY5MyA2ZTcwZWQ2ZGZhZDY3NTc5NzA5YjIyMTk3YjdlMDk5MTBlNmY2YTRkIElETEUtc3ludGF4LWJyYW5jaAorMzk2OTQgZTllMzBkOTI4NzFlOWEyN2FhM2E2NzQ0NTAyYWFmNzJmNmFjMDg4OSBhc3QtYnJhbmNoCiszOTY5NSA3YjM1YzI5MDQwYzk5MmZhYmU5NDI0ZTM0N2VkZmRmY2VjMzFlMTY3IGxlZ2FjeS10cnVuaworMzk2OTYgN2I3ZWIzZTc2MjBkZjkxMDAxODhiM2I5Y2EzMThhNjYyMzA1MTM0NiByZWxlYXNlMjQtbWFpbnQKKzM5Njk3IDcyZmViZWU1OGU3YjllMzY4MDgwNWFiNmIxOWE0M2RlMmNlMjMyYTMgbGVnYWN5LXRydW5rCiszOTY5OCBjMzhlNGVjN2I3ZjExZDU2ZTNjY2EzNDM2YzYyYzA1NGE5MGFmMGFmIHJlbGVhc2UyNC1tYWludAorMzk2OTkgN2U3OTg5YjZhYzM2YzRiOTE1NTk3YThiY2VhZjQzZjBkM2MwYTAzYSBsZWdhY3ktdHJ1bmsKKzM5NzAwIDVhNjI2ODZmN2RmZGY2NGViNmMxM2VmMzNlYTJkYmUzNWVmZmY3YTQgcmVsZWFzZTI0LW1haW50CiszOTcwMSAzMDdiN2VlZTNlM2Q5MjIwNzNhNjZjN2JlNDhjOWU4ZWMzZWExNWFmIGFzdC1icmFuY2gKKzM5NzAyIGQ5NDdmYmVjMzVkM2YwNGYxNDhkZTRmMGFmNGZmODI2ZjkwNWJiM2EgcmVsZWFzZTI0LW1haW50CiszOTcwMyA3MjU5NWE2MTU1NzFiNDA2NzFlOTMzZDIzMzFlNzJjNmMxNzJmYjQxIGxlZ2FjeS10cnVuaworMzk3MDQgYzNkNjRiYzdmNjk2MjI4NmQ0YTQwYjA4Yzc1MzQzYmYzNTc3NDRmMiBhc3QtYnJhbmNoCiszOTcwNSA1N2Y2MmU1YTM5MjE2NjYwMGU0YzA3NmI2MDVmNzg5OWU2YWMxYjJmIGFzdC1icmFuY2gKKzM5NzA2IGM3YTdlM2QxYmZhNzBhNDIwOGRkMDk3ODFiYzU5MWE3MDkwNzMyNjUgYXN0LWJyYW5jaAorMzk3MDcgYWM3ZjU0MDcyNDZmNDBmZDNmYWQ0OGQ1MDY5ZWY1OTE2YWJhNWU2MyBhc3QtYnJhbmNoCiszOTcwOCBlZjdjZGRlYjMyN2NjOGM0Y2Q3MDU1NWQ0NTAxNGVjZDNiN2UzMzc5IGFzdC1icmFuY2gKKzM5NzA5IGIxMDgxYzQ5NWQ0NjczM2JiZmE3ZDJiY2EzYjEzMjA4MGRkYTQ3ZGQgYXN0LWJyYW5jaAorMzk3MTAgMTc0NWMyZWRjNTE0ZDkyMzJjZTU0Zjk1MWU5NzQyOGQwZWVhZmFmYSBsZWdhY3ktdHJ1bmsKKzM5NzExIGE0NDI5Yjc3ODdkNDRlNWI5YjJmODYxMjUxZTIwZDFjNmVlY2ZlZGQgcmVsZWFzZTI0LW1haW50CiszOTcxMiAyMzQyY2RiOTI2OTU2YjJkOGQ4ZGYzMDUzYzU3NWYwZTZjNDFmZWI4IGFzdC1icmFuY2gKKzM5NzEzIGVjZTVlYjZmMmI1YTMzZGQyOGE5MTY1ZGYyYjExNTY0ZGJjNjRmZTIgYXN0LWJyYW5jaAorMzk3MTQgM2JkNzQ4MjRhM2FjZDBhMWU0MDZiNTM5ZGNiZmJkYTM3YjA2ZWQ0OSBhc3QtYnJhbmNoCiszOTcxNSBkMjA0NGU1YTA2YzdlNjM4YTJjYTNhYjcwZjdkMDI1MWU5YjM0YmMyIGFzdC1icmFuY2gKKzM5NzE2IGE0YmVjN2I2YjY0MDViM2VhYWMyOGU0NWYyMTVlODRkYzkyYTUxYzMgYXN0LWJyYW5jaAorMzk3MTcgMzBlODhhMTc1ZmRjOTBjNzk3NTE4ZDY5ZGM5YzNlYmY2N2Q0Njk5NCBhc3QtYnJhbmNoCiszOTcxOCA1MjVkYWMwZDI4NWJmMmUyNDg4MDBjNTIzZGVjYmQyZDBkNjA2YTdlIElETEUtc3ludGF4LWJyYW5jaAorMzk3MTkgNzZiOTFhY2FkNWU4OGNjZjcyNGM0YWYxNDRlMzZlNDhiMWFjZTAzNyBhc3QtYnJhbmNoCiszOTcyMCBiYzdmNmRlYWIzNDBhZTc1NzM4NDYyZWU3Y2JhZGRhZjk0ZTliZWZkIGFzdC1icmFuY2gKKzM5NzIxIGRkMjkyNjFjYjQzODIwZWJkOWJlODYwYzVhNGU3NTMyOGJjY2NlNzggYXN0LWJyYW5jaAorMzk3MjIgOWViNDQxYTcwNzI0NmJkYTFlN2FmMWRiMzgxMDFlYTYxOTMwZjE1ZiBhc3QtYnJhbmNoCiszOTcyMyBjZGE4NzM1NzE4NWZiOTNjZjBhNzkzMGNjYzhjMTcxZjNiMmQ3ZDk1IGxlZ2FjeS10cnVuaworMzk3MjUgNTY2OTMwN2MxMzFjNTM4NDY2NTZhY2U5YTZmMjljMWExNjk5Njk0YiByZWxlYXNlMjQtbWFpbnQKKzM5NzI2IDQyZDNhNDQwMGQzODY2Y2E4NjQ1YzBmZGQ2NDYzZTIzZDhlZjdkMWEgYXN0LWJyYW5jaAorMzk3MjcgMjE2MTFmZjU1OGE1MDIzODNiNTY5ZWJhYjkyNGRiNWM5YTUwZjQ3MyBhc3QtYnJhbmNoCiszOTcyOCBhZTUzOWFmNGFmYzUwMWQ0Mzk2ZDEyZWY2MGNiNDQzOWI0NGRkMDA0IGxlZ2FjeS10cnVuaworMzk3MjkgNjBkZmUyZjU1YzBmNTNmYzY0OTE2OGE3NTFlZGYzZmY0OTliMTgxYSByZWxlYXNlMjQtbWFpbnQKKzM5NzMwIDY2NzkyYTJlZjNkYmQwNDNjYTRlOTZkMzc0MWI0N2FjNjRmNDM5NDUgYXN0LWJyYW5jaAorMzk3MzEgMDZhZDYzNDU2NDlmZGRiNmE0OGFhYjYyN2M4ZGRiMDVjYTk5ZTcyYyBhc3QtYnJhbmNoCiszOTczMiBkN2Y0MDcwOWUxNTg1NDBkYWZhNzU2MTgwOTEzYjRlZTVmNDkyZWYxIGFzdC1icmFuY2gKKzM5NzMzIGJiNWJhNTQzNTllNWJjZDM4MmY5OTg5NzIwMDc0YTUwYmE0ZDE0MjMgYXN0LWJyYW5jaAorMzk3MzQgNDk2ZWI1ZGVkNWU0NWIzZWM4MjRkMzMyZjI0ZGY5NGVjYzA5ZDlmOSBhc3QtYnJhbmNoCiszOTczNSBjOWZhODViNDA1M2I3NWI3OTI0OTQ2ODhjYjUzNjM5YzYyNjU4M2ZhIGxlZ2FjeS10cnVuaworMzk3MzYgZWIyYzA5ZDg3ODcwMTgzZjc5Zjc0NDllYjY0YzMzZWQ2YzhiMGQ4NiBsZWdhY3ktdHJ1bmsKKzM5NzM3IGZlMTAzNzNjZjhhMjcxZGRhYmQ3ZDU5ZmIxYjhlNGZmYTMzOTA5ZmQgYXN0LWJyYW5jaAorMzk3MzggODNmMjQ1ZjcyODMyZTM5MWY4ZmVhNGEyZDRkNzAyM2RhYTYzOThiMiBhc3QtYnJhbmNoCiszOTczOSA1MzY1OTBjMzIzMTE4NTJhMzNhMTg4ZmNkNzFlZDZkY2M4ZDZjOWMyIGxlZ2FjeS10cnVuaworMzk3NDAgNTc0N2NlZDM1NDI0YTZmMTA2NWEyMDk3MmQyMjFlYjdiYjEwYzgwNiBhc3QtYnJhbmNoCiszOTc0MSBjYjVjYzQ4YjVjMjk1YWYwODJhOTc3NTA0N2ZlNWZlNGVjOTdlMmM3IGFzdC1icmFuY2gKKzM5NzQyIGJjN2NhMTYzMzRiYWI1NGFkODgxMWJiMDA1OTg3MWRlNTlkY2NkZDggYXN0LWJyYW5jaAorMzk3NDMgOWVkNDNlNjM3YWU3YjVhZWQ1YjFhZGM4ZGNmOWI4ZmNmN2IxMTNiNyBsZWdhY3ktdHJ1bmsKKzM5NzQ0IDY5MTNhYmI3MDQ3YWVmZjE4YTgyMGIzMzMzOGUxMDVkYjlhYmM2YjIgbGVnYWN5LXRydW5rCiszOTc0NSA4YmVjMTIwZGJiMTZhNjc5NDRlYjNkZWZiNGE2NjIzOTQzZmQ5MTE0IGxlZ2FjeS10cnVuaworMzk3NDYgMGI4MjY4ZTBkNzBlNzc4Mjk5YWEyZjJmOWM4ODRjNDc4YWJhMWY2ZSByZWxlYXNlMjQtbWFpbnQKKzM5NzQ3IDRmMjg0M2RmYTIzYzc5YWMyN2E4ZWE2MDIzNWE4MTRlMGQyZTg4ZDggbGVnYWN5LXRydW5rCiszOTc0OCBkMTIwMWZhZTA2YTg1MDA3M2UxNTNhM2U3Y2ViNTY5MThhMDM1NTJiIGxlZ2FjeS10cnVuaworMzk3NDkgZGZiOGZjMzc3YjU4ZTY4ZGU2MGQ3OGRhMjk3YjBlNzc0NGQxMmU5OSByZWxlYXNlMjQtbWFpbnQKKzM5NzUwIGVhNjgwOGJhMTYzN2JjMjc4N2FmYmUzZDAyZjVlNmQ1OTIzM2FmZmQgbGVnYWN5LXRydW5rCiszOTc1MSA3ZWQ4NzA1MGUxNjk3NDY2YzIyMTRkNThlZGNmMzBlMzVlMmFhMjI5IHJlbGVhc2UyNC1tYWludAorMzk3NTIgNTM5MGRkYzc3ZWI4NjZkZmYzNzJkMWFlYTJkMmI1MWJlNzRiMzI5YSBsZWdhY3ktdHJ1bmsKKzM5NzUzIGUwMThmY2UxNGYxMDA2NTQxZTEwYjg0MTMxNDljYjA5MjBkMzhkYmQgbGVnYWN5LXRydW5rCiszOTc1NSBkMDM5OTM3OWQwY2IyNjRjMzgyMzEzMDMwYzM0MzI3NWU0M2FkNmNhIGxlZ2FjeS10cnVuaworMzk3NTYgYjMyYTM5MDkxYWVkY2I2YjA2OWNmMGNkZGU2ZTkzMDRjZGMwMWNmNyByZWxlYXNlMjQtbWFpbnQKKzM5NzU3IDM3MTYwNTE4MzBjMmNjNWFiMGQ1YzFjODIyOWUwNTA1MWQ0ZGM5ZjcgbGVnYWN5LXRydW5rCiszOTc1OCAxYzRkMTkyZjE1NjhkZjhjYWUyZDM1MTQxYTcyOTI0NzU2NGEzY2ZlIGxlZ2FjeS10cnVuaworMzk3NTkgMDViNzE1ODIyYmE1OTZlMjc1NTU1NWM1MTVjOGQzNzJjMDgwNDNmMCBsZWdhY3ktdHJ1bmsKKzM5NzYwIGU3ODE1NDk1YmIyNzliMTkyZWMxNGRlNTNhY2Q5YWE5OWQzZTU4NWMgbGVnYWN5LXRydW5rCiszOTc2MSA0MDdjM2RhY2JkN2MzMDVmYzY3NDIzMDI4NmEyN2JhYjIzOWUxZGNhIGxlZ2FjeS10cnVuaworMzk3NjIgNzE4ZTlkZTIyZWE3MjVlMjViNDBmYjU3ODViYWVkZTMwZGJlYzFiNSBsZWdhY3ktdHJ1bmsKKzM5NzYzIGZkY2I1OGNiZmY0ZGYwZDZkMDIxNzZmZWU5ZDVmZDIwODQxNjA2MTIgbGVnYWN5LXRydW5rCiszOTc2NCAyNWJhMmYzMzEzYzkxY2M0ZTc5ZjY3NzNiZWIyYjU3ODk0YzI2YTc0IGxlZ2FjeS10cnVuaworMzk3NjUgMTc4MjhhMDBhNDU0NGZhM2ZiNDIwNjViYjUxZDYwYmU4ZjU2NTEzZiBsZWdhY3ktdHJ1bmsKKzM5NzY2IGE3YTQ5M2RiNjIzMTNkMDMzYmRiYzRjNjVhODg3N2YzNGI5NTZlZGQgcmVsZWFzZTI0LW1haW50CiszOTc2NyBlNTYxNDQ3MDQ4MDhkN2NlNmMzMDVjMGI0ZjA1MTRlMWViYmRiYTUxIGxlZ2FjeS10cnVuaworMzk3NjggNDc0OTZlN2RiZjJmY2QzMDYwYzc5MDFhMTIzZmM2MWIxYzI3NjJmZSBsZWdhY3ktdHJ1bmsKKzM5NzY5IDgxZWJkNmUxNzdhM2Y4YTkwNDM1N2Q4YzA3MGE3MDdhM2I4MzAwNGUgbGVnYWN5LXRydW5rCiszOTc3MCAxNDQwOWI4MjA5MzNmYzc3YmQ1Y2FiOWIxMWEzYWVmMjVhMTY1NjdlIGxlZ2FjeS10cnVuaworMzk3NzEgYzI4YzFhMzdiODZhZTE4MDA4MTk2MzA5OTI2NDY4NWFkZDU0Yzg2NSBsZWdhY3ktdHJ1bmsKKzM5NzcyIGI3MmIzZTUxN2E0ZGU3YTI0ZGU5YjIzM2U3ZjVjNjU5YjU0NzQwZTYgbGVnYWN5LXRydW5rCiszOTc3MyBlYjE1Y2RkNGEyZjEwMDE3OTIwNzRjYTA3ODkwMjY5ODk0NTJmZjgyIGxlZ2FjeS10cnVuaworMzk3NzQgZTBlMzIwZjM2YzkzNjNmNmQ1ZjhiZmM0MDczZGQ2YzUyNzk0NGY5OSBsZWdhY3ktdHJ1bmsKKzM5Nzc1IGQ5MWVkNzEwN2ZkMmRhMDNkMzU2YWNiYzUyNDNhNjhkMGI1MDU4NTEgbGVnYWN5LXRydW5rCiszOTc3NiA3OWM1YjgxN2ZlZGMxMTU3OTMwYjkwZTAxZjIzZmI5NjA2Y2EzNWNlIGxlZ2FjeS10cnVuaworMzk3NzcgN2E1YWMyMDMxNTRhYWEyZDc1NzVhMWJkOTI1ZDg4NDNkN2U2ZTIwMiBsZWdhY3ktdHJ1bmsKKzM5Nzc4IDNmNjMzNDFkOTMxMmY2OTIyMWQ2NjcwZDVjZmU1OTNkOTcxNDdhYTkgbGVnYWN5LXRydW5rCiszOTc3OSA1MjhlMDM4ODM5YTJhYWU3ZDNkZWEyZTU3YjhmNDU0ZTc2YTk4ZTAyIGxlZ2FjeS10cnVuaworMzk3ODAgNGFhZjUwNmE3ZDA5OTJiOGMxNTRhNTBhYjU2NDM4ZDNmZGYyZjFlNyBsZWdhY3ktdHJ1bmsKKzM5NzgxIGYzNzYyMjFiYmI3NmMxZDI3MmU0MjM4NDBjMzQ4YTFjNWMyM2RiYjkgbGVnYWN5LXRydW5rCiszOTc4MiAzNGVmOWYxMzhjMzAzYjc2MmFkODY4MmEwYmE0ODUwYjA1YjkzMzZlIGxlZ2FjeS10cnVuaworMzk3ODMgN2VlNjg4MGNiMTZmMjg1MmUwN2YwZGY1MTNkNzJkNGUyZTE3NWVkYSBsZWdhY3ktdHJ1bmsKKzM5Nzg0IDU3NmI5YTljZTU3OTdjZjdjNjcyYTk3NDU2ZDY5MjFkYTEwMmRhOTQgbGVnYWN5LXRydW5rCiszOTc4NSA3ZDA2NTQzNWU4NmMxYjg4MmNmZmFiMGNmNGRjOTBjZjg3Mjc3ZjM4IGxlZ2FjeS10cnVuaworMzk3ODYgOWE3YzJkMWU1NmRlMzFkYWVhMjBmYTM0OWIyMWVkMDA0OWRlY2QyOSByZWxlYXNlMjQtbWFpbnQKKzM5Nzg3IDA0NGQ4ZTBmNjVmMmZiOWUzNjExNTdhZDFiMzgyNTMxNzFjMjVmZDMgbGVnYWN5LXRydW5rCiszOTc4OCBmNjRmYjI4NGVkMTU0ZDQ4NzI5NWE4OTBjYTVmMjgyNDgyMjI0M2ZjIGxlZ2FjeS10cnVuaworMzk3ODkgMGFlZjM1MTIyM2RhZWQ5ODRjMzg1ZDI1OGQ2YTZlZjk1Y2Q3NjRiZiBsZWdhY3ktdHJ1bmsKKzM5NzkwIDY2YjkwNzVkMTQyYjhlYzUzYjQ2YTM0ZmVkOThkNzZhNDdjMTZhM2EgbGVnYWN5LXRydW5rCiszOTc5MSAxNDRiNTI1MzU0MzRmZDM1ZTE4ZDc5ODFjNzFkOGU2M2IyZTM5MTQ5IGxlZ2FjeS10cnVuaworMzk3OTIgODkzYmU5NGM4ODkxODJhOTA5MWI3OTIwYWRiNGUzZDFkMzc3MjQ3ZSBsZWdhY3ktdHJ1bmsKKzM5NzkzIGVmZTYwNzMwYTFlZWFiNmQyNjIyYTBmMmE4NWQ2NmZiZGNmN2Y5YjYgbGVnYWN5LXRydW5rCiszOTc5NCA5NWQwYTg1N2FlNTFmYTE1YTU5ZWMwMTljZWY5ODAzM2YzMmJhNzU0IGxlZ2FjeS10cnVuaworMzk3OTUgMTlkNzk2YmQ3NDBmNGEwOTc0OTY2MjFjMmE4MzkxMGE1NzJhMDA4MCBsZWdhY3ktdHJ1bmsKKzM5Nzk2IDcyY2IwNDFjY2RlM2FjN2JlYjI5NmQ0OWJmYzIwM2E1ZTQzYWY3ZDEgbGVnYWN5LXRydW5rCiszOTc5NyAzMWQzNmRkNTk1OWNlOWQ5ZTYyNGJmYTIyYWUyZDUwZDZkMmViYTUzIGxlZ2FjeS10cnVuaworMzk3OTggYWFlNDExMzUyZmJkNmE0YzMwYjk3NDVhNzIzYmY3ODY4YmMwZmFkNSBsZWdhY3ktdHJ1bmsKKzM5Nzk5IGIxYTBlMWEyYjI4ZmFjYmJlZWE3YmI3OTg2ZDA4ZDA5NTQ5NTMxNzEgbGVnYWN5LXRydW5rCiszOTgwMCBjNmRiZjg4ZTRiMTRiODZkMDIxNmY0Yzc3NWM1MjQ4ZTNmNDNkNTE0IGxlZ2FjeS10cnVuaworMzk4MDEgZGNhNzBmNGVjNzdiNjc0Mjk0ODAzMDY5ZmFiNTBiNzFmNzgwMDc5NCBsZWdhY3ktdHJ1bmsKKzM5ODAyIGEwYmIwZmQ1ZTE0M2E5Yzg0ODY5MDA4YTIxNzQwNTg0MTM4NDNiMTIgbGVnYWN5LXRydW5rCiszOTgwMyAxNjYxZTczYzA3YWJhMzk5OTk4ZDgzMGI1Nzg3OTc1NGJjYmYxMDIwIGxlZ2FjeS10cnVuaworMzk4MDQgZGI5ZTJkZWE0YzExM2Q2YmU5ZmJjNzE4MGEwZjk4MmI4OTI5NTA4MiByZWxlYXNlMjQtbWFpbnQKKzM5ODA1IDE5YTM3YTlmNGVmOTRiMjZjMTY3MDI5NGVkYjc3NTFlYmJhOWJlYWIgbGVnYWN5LXRydW5rCiszOTgwNiBmN2IwY2JlYTkwNWI1YjM0OGQxMGI3Mjc5NTJkMmFmM2NjOTBlZTNjIGxlZ2FjeS10cnVuaworMzk4MDcgMWFjOWVkMWI1YTAzYzE5MzUzZDc2YmI3ZDg3ZDRiYjRiMWZmOWI2NyBsZWdhY3ktdHJ1bmsKKzM5ODA4IGI4YjEzYjFmZmU3NTcxYjRhZjVmNWJjOGI3OWFmMTNkMDI4MjNlMmUgbGVnYWN5LXRydW5rCiszOTgwOSA5MTRlYzBhZmE1MWMyMTViMTA4Nzk4OGIyM2M5Mjc3YjQ1OWIzNDRkIGxlZ2FjeS10cnVuaworMzk4MTAgMzlmMzYzMGE3MTI0ZDkwZjdiNTc5ZjQ5NjI0NjYyYjM4ZjU0Yzc5YSBsZWdhY3ktdHJ1bmsKKzM5ODExIGRiYzk4OGJlYTU1ZDZmNmM1MTQ1NjUxZGI2YzU5N2JhZGRkNmE4MjEgbGVnYWN5LXRydW5rCiszOTgxMiBmZDYzMDA0MmFhZDQzZGVjZjUwYWY2NDIyNGI2YTA3ZDEzNGMwYmUxIGxlZ2FjeS10cnVuaworMzk4MTMgMzc3ODA4M2ZlMmM4NjJjNDBkOTNlZDIzYzY3MTFiMzQyMzE2YzBlZSBsZWdhY3ktdHJ1bmsKKzM5ODE0IDg1N2Y2OGZiYTI3NTQ0ZGFjYTMyOGIwOWQzY2NkYjY3YzNhNzFlMmYgbGVnYWN5LXRydW5rCiszOTgxNSA4NDJjYWEyNDU5MTdkODg1Y2Q5YzM2MGYxMGM4ZGQxMzgwMjc4OWFkIGxlZ2FjeS10cnVuaworMzk4MTYgNGJmNjQ1OWM4ZTNiYjk2NDMzMjZkNWFiOWQ2MTcyNDM4N2ZiOTM0YiBsZWdhY3ktdHJ1bmsKKzM5ODE3IGUxN2EzMDdiMTIxNjk0MDkwNWRiM2YxY2MzMzI5MGE3ZDA5NmJiMDIgbGVnYWN5LXRydW5rCiszOTgxOCA4ZGFlZmU4NDk5NDkzNGRlM2U2NTg0ZmNmZjMwNTM4ZDA1ZjMxYzhmIGxlZ2FjeS10cnVuaworNDEzMzggMTkzMzA1YzlkYmRiMzU0OWFkNTk2M2Y1ZjgyZGE3NDdhNjJjNTU0YSBsZWdhY3ktdHJ1bmsKKzQxMzQwIDc2YTZlOTA4NjI0ZDdjNWNkYjdlNzdmNzdhYmM3ZmU2NGNkNjdkOTUgbGVnYWN5LXRydW5rCis0MTM0MSA1MmY2NTg5ODg3NGE2ODg4NWIzMjdiN2Y3ZDg2NGM2OWMzZGY1MmM2IHJlbGVhc2UyNC1tYWludAorNDEzNDIgNDRmZTE1NzI1NWJjNGNkOGEwNWY3ZjA2MDBjOGZlMjc4ZjJlMDNhYyBsZWdhY3ktdHJ1bmsKKzQxMzQ2IGRmYjExMzllZGM1NWExYjBmN2YyNzJlZDc3MzVjZjU0YTQwMDQ2ZGYgbGVnYWN5LXRydW5rCis0MTM0NyBjMmE5OGJhMzcxYzhhOTBjMGJkYzFhNDJjNzI3Mzk5MjI4ODI3OWFlIGxlZ2FjeS10cnVuaworNDEzNTIgODg1MjMwMTc0MTRjMTg3M2RjZjNjMmMxNTgxNTlmOWRjNjZmYmYxOSBsZWdhY3ktdHJ1bmsKKzQxMzUzIDM5YjFlNzRiYTE3YzU1NDcxODk2ZTFhNDQwNDUxMjY5ODYyMGNlODIgbGVnYWN5LXRydW5rCis0MTM1NCA5YjBkZDFmNTNhZTIxODZkOWYyOGVmMjA4NWRhMmQ2YmMwMmNhNzMyIHJlbGVhc2UyNC1tYWludAorNDEzNTQgYWJiZmU5MTc4NzMxOWI3Zjk0NTQzZjQwZWE3YmExNWQ5OWFkNmUwYiBsZWdhY3ktdHJ1bmsKKzQxMzU1IDJlMjVlOTgzMjNhN2Y2NTFmYTkyNWM1NDA3NGNkYTkyMDg4YmU1ZDYgbGVnYWN5LXRydW5rCis0MTM1NiAxM2RlZWM1MjgxZWZjYjIwYTVkNDI0MzAwYWE0OGEwZTQxNjRjNjNiIHJlbGVhc2UyNC1tYWludAorNDEzNTcgZWI5YTM5YzFhNzhiYjczZWRmM2YxZTNkOTRmNGEwNTFjY2VlODFlNSBsZWdhY3ktdHJ1bmsKKzQxMzU4IGEwMDBmMzIyZGQwNWRiZmFiYzVkNjYxZjM1NWVlNzY5MzI1YjE1ZmIgbGVnYWN5LXRydW5rCis0MTM1OSBlZDI0N2Y2ZTZmMDc1NGRmODBjY2U1OTNjOWUxODdkNTY4ZjI2ZTEwIHJlbGVhc2UyNC1tYWludAorNDEzNjAgMjBiYjdmZjE2OTUyNzdiY2NkYTZlNTAzYWYxNjQyMzA3NTI3ODU3YyBsZWdhY3ktdHJ1bmsKKzQxMzYxIGE0OTdlMTBiMjNlNDcwY2M3NmIzNmYyN2VlNzA0YWU1MDg4MmNjMmMgcmVsZWFzZTI0LW1haW50Cis0MTM2NiA2OTAzNGEwOGU1YTNhMzRmOWY5ZTcyYTg0YTc3NDA3NzY0ZGM2MGE5IGxlZ2FjeS10cnVuaworNDEzNjcgYjY1MmY1MzUyMDFkNmZjZGY3NGIwODg5MzRlMzA0NDI0ODIwMjczNyBsZWdhY3ktdHJ1bmsKKzQxMzY4IDZjZDExMDc0M2JkMjA4OWYwZDY1M2FhOTZmMjlkNGQ1N2FkM2FjYWIgcmVsZWFzZTI0LW1haW50Cis0MTM2OSA4YjAyZDhhNWU3MDdmMjZmMDI0MmY5NjdjM2ZmMTUwNWQxYWVjZjVmIGxlZ2FjeS10cnVuaworNDEzNzAgZjllNTBmZjk2ZmY4NWViZjc2YjRjZDZhYzhiMzY3MTIxZDVlMDZlMyByZWxlYXNlMjQtbWFpbnQKKzQxMzcxIGNjMTdhNTgyNTE4YWVmZDQyYTMzNzYwZTk1OGZkMDM0MTc2MGRiMjcgbGVnYWN5LXRydW5rCis0MTM3MiAwZWNiZmZiYWRjMDA1NjgyM2U1OTNmMjE3YWZmMzUyNGZkODQyNWNjIGxlZ2FjeS10cnVuaworNDEzNzMgYWIzZDFlNmEwMjM3MjcwZTJiMDE1Mjc2YjIzN2Q5ZjMyMjRlOGJhZiBsZWdhY3ktdHJ1bmsKKzQxMzc0IGJmZmFlMmY4MTJmNzRhZWQ3NWIwMjBhMjNjZmIyYTQ4ZDViZGEzOTIgbGVnYWN5LXRydW5rCis0MTM3NSBmM2NhZjgwYmQ2NmQyMWJhODI5NGEwNjQ5MzI0MzRjOWIxMjUwYzhkIHJlbGVhc2UyNC1tYWludAorNDEzNzYgMDI5YjZjNWYyNThlNWFiNDZiZTJkMjA3OTk5NjczNjhjMzAyNjllYSBsZWdhY3ktdHJ1bmsKKzQxMzg1IDY0NmJhNzYxMTVhY2I0MzUwY2MzMGY1ZWM1YTBkNzhhZDY3YWRhNTQgcmVsZWFzZTI0LW1haW50Cis0MTM4NiA3YmY0ODQwMGYyNGE4ZTdkOTE0NGNmMmU2ZGRmY2MxMTcwODEyMDUxIGxlZ2FjeS10cnVuaworNDEzODcgOWIxZWZiMGVkNjM1OTJkZTEyZDViZWZjNjc0NWI2MjlhYzE1ZGI3ZSByZWxlYXNlMjQtbWFpbnQKKzQxMzg4IDQxOGE2MWVhZDExYjg1ZGViY2UzZmE1MWEyZGNmMjRmMmFhMDllMjEgbGVnYWN5LXRydW5rCis0MTM4OSAyMGFhMWQ1YjNiMDgzMjdlYTY0M2EyZTc5MzE4M2IxM2I2MjBlZTE4IGxlZ2FjeS10cnVuaworNDEzOTAgZmQwODkxODM5NGY5YzNiMTExOTJmNjU4ZmE0NmJlZjE2NjA2NGM5NiByZWxlYXNlMjQtbWFpbnQKKzQxMzk5IGE4NjQ5ODY5Y2I2MGJiZWEwOTVkZmY1NjQxYWNkZGRkNTk1ZTc1MjIgbGVnYWN5LXRydW5rCis0MTQwMCA0OWJhZjhiMDQ2ODEyNTVhZjQ1YzAxOTZlMTQwOTllNTdjNjQ1ZThkIGxlZ2FjeS10cnVuaworNDE0MDMgZGUwOTBiZjY3YTU5ODlkYmZmMjVkYWE1NWRlY2ExZWI4NWM1OGVhNCBsZWdhY3ktdHJ1bmsKKzQxNDA0IGVjZjlmNGVkMTA5ZTVjZDAwZGVhNjIyYjM0NDc3ODdlYzc2NzQ4NjMgbGVnYWN5LXRydW5rCis0MTQwNSA2ZTJiMjgyNDM0ZDQ5NTEwOTQ0ZmNkMTQyOTJjOTg0YmIxNzc5YmUyIGxlZ2FjeS10cnVuaworNDE0MDYgZjg1ZGMzMWYxZjNlNGZlMGY4NjQ4NWQzZGJjYmJhYWZmNWYzNGEyMiBsZWdhY3ktdHJ1bmsKKzQxNDA3IGQ4MTJlMzlhZTkwN2E3ZDU5OTFmODY1ZmVhNzAyYzkzNjYwYWRlNzMgbGVnYWN5LXRydW5rCis0MTQxMiBjYWVhMGNjMDlhNDJmOTFjOTE2NmM0Nzk3NmQ3YzFjMjE5ZmNhMjk5IGxlZ2FjeS10cnVuaworNDE0MTMgMWQxOTU3ZjU1NjI2NzkwZGVjOGVkMGMxY2I4MzFiN2IyMWQ0Zjc3YSByZWxlYXNlMjQtbWFpbnQKKzQxNDE0IGZhMWQ1Njk0NzMwMTMwN2ZhYTY3MDg2ZTQyOTNjYzMzZTBmYTNhNGIgbGVnYWN5LXRydW5rCis0MTQxNSBmMGUzMzU1MjM1YTVlNTI1YzgyZmVlNjcyZDYxYTUxOWUxZThlOTNiIHJlbGVhc2UyNC1tYWludAorNDE0MTYgNWY3MWE1MDI4OWEyNTU2YmFkN2NkYWQwNzk4YmJkZWY0OWZlOWY2OSBsZWdhY3ktdHJ1bmsKKzQxNDE3IGFlZjg1MjZmYzliYmE2ZjlkM2VjMGU5MjViY2IwNDhkNzM4NGI2MDkgcmVsZWFzZTI0LW1haW50Cis0MTQxOCBmNmQ4YjBkZTEzNGEyMDEzOGU0OTVmYjJkZTBmYjJkZDc3NTdkNDI2IGxlZ2FjeS10cnVuaworNDE0MTkgNDEzYzY4YjMxNDg3MWVhNDFhOTU1MzU4YmQ1ZDAxZTMwZmJjY2I2MiBsZWdhY3ktdHJ1bmsKKzQxNDIyIGVlM2UwZWUxZWRjYTdkMzQ4MmM5MTliMDcyOWI1MDBhZjc5NzgxZmEgbGVnYWN5LXRydW5rCis0MTQyMyAyYTkyZDVjZTBjMGQ4YzQ4ZjdjYTFkYzA1MTUyNjFkZjFlYmU3NTkxIGxlZ2FjeS10cnVuaworNDE0MjQgN2YzN2NjZjY5OGNmNWIwMTQ2MzJkNjhjMTZkYTlmMjYyYTMyMDA1YyByZWxlYXNlMjQtbWFpbnQKKzQxNDI1IDY4ODhkZGYxZWE5ZDUzZDQ0ZmFhNTkxNzRlZWUwMjE1OGQyM2JmM2UgSURMRS1zeW50YXgtYnJhbmNoCis0MTQyNiA0MjlmNTM3Y2Y2ZDZiN2U1OTI3OTZmMTQyNTE0MTJiYTNiZjFlN2UwIGxlZ2FjeS10cnVuaworNDE0MjcgNDQ2Mjg3MWE2ZGNlYzAxM2RiMjg3YmZlMDg1MDEwOGRjNjNkZmI5NyBsZWdhY3ktdHJ1bmsKKzQxNDI4IDg3ZTIyMTBlMDdmNDlhZDVkNTBlNWJlOWNmZDY0ZDIwZmRkMGUwODUgbGVnYWN5LXRydW5rCis0MTQyOSA2YTAxOGQ4YzU5YzkxZTA0NmNiNjcxZDQ2NTk4Mjk2Njg1OWU2MDNjIGxlZ2FjeS10cnVuaworNDE0MzAgNjAxNWRmMTM2YjAwZDFiY2NjNDEyY2RiZTIwODhiMWMwNDU1NmU0MyBsZWdhY3ktdHJ1bmsKKzQxNDMyIDliODg1YzkzNDE0NGI3MDU1ZTM2YmQ2MTdhMGUwYWM4ZTEyMDdkMTQgbGVnYWN5LXRydW5rCis0MTQzMyAzZTYzNGU0MWI2ZWMzYzc5NzAxYTJhY2YyYmIxNmJmYzM2ZDBiNjYwIGxlZ2FjeS10cnVuaworNDE0MzQgNjg2Nzk5NWExOGE3ZGE5MDBlNzlkMjIwNzY1ZmQxOGFhNWNmMjViYSBsZWdhY3ktdHJ1bmsKKzQxNDM1IDc5ZjJjZTMyMDE5MjVjOWQ2M2VjYjE2NDQ4ODc2ZjVkZmFiZWZhOWQgbGVnYWN5LXRydW5rCis0MTQzNiBkYmM5M2VlNTNlMmZlZmZjYmZiOWVlZTQxNTc3ODRiM2U5MzUwNmRiIGxlZ2FjeS10cnVuaworNDE0MzcgNjAwYmJiYTU2ZjliYWIzODJiZDgwNWM1NDA1Nzg1N2FhZWYwOTMzZiBsZWdhY3ktdHJ1bmsKKzQxNDM4IDlmNzNkYzA5NTNkMjAyMDRhNTQ5YzhjNzgxYTRjNDg4NGIyMjJjZWEgbGVnYWN5LXRydW5rCis0MTQ0MCBmNDg0MmY0MjcwMGJkYjdmNzNkYjg4YzdhZjYzM2IxMTdmNGE4OTNiIGxlZ2FjeS10cnVuaworNDE0NDEgMzdkYTk2OWFkMTE2YzViYTliNzM1NWMyM2YzYmRmZmEwNzBmZWYwOCBsZWdhY3ktdHJ1bmsKKzQxNDQyIDkwMDM4MzZhMDM2ZjEzMzUyYjViYWIxYjJlYzczNzJhMjBkOGUyNGQgbGVnYWN5LXRydW5rCis0MTQ0MyBmNTMxYzA1Y2QyNDA4NjZlNDYwZWVlY2RkMTAwMWI4NmVlZmRiZTU2IGxlZ2FjeS10cnVuaworNDE0NDQgOTQ3NjU2NjMwYjEyOGRmZThlZTIwN2M3NmQ2ZmY0NGEyMTU2YTFlMiBqaW0tZG9jdGVzdAorNDE0NDUgM2FjYjZiMzQxMDc1YzlhNmU4MzQ2MjZkZDc4OTFiMGJiOTRlN2FiMiBqaW0tZG9jdGVzdAorNDE0NDYgNGFjM2ZhMTU4OTI3OTAyMzA3ZWVjMmY5MDkzNDc2NjQxM2U0YmY3ZCBsZWdhY3ktdHJ1bmsKKzQxNDQ3IDU4M2NlOWMwYzY2NGViYmE5OGQyYjcxYTMwNTMzMjhiNTQ4ZDY2OTMgbGVnYWN5LXRydW5rCis0MTQ0OCA3NmVkN2ZkYzlkODViZGY1ODI5MTIyNGMwNTkyZGYyYzEwMjhiNmZhIGxlZ2FjeS10cnVuaworNDE0NDkgNDRkNjNlZWRmYWNhZjA0NzBmMzI1NDI2OWUxYTliMzVkYjhjMDRhYyBsZWdhY3ktdHJ1bmsKKzQxNDUwIDA4NmNhY2NmZmYwZTc2NmFjM2M3NTk4YzBlZTllMzQ1MWVjMjhhZGUgbGVnYWN5LXRydW5rCis0MTQ1MSBmMzM0ZWZlNzZmNmE1NDYyMDI1YmY5MjI5ZjJlMjE3MTJmZDg0NWI0IGxlZ2FjeS10cnVuaworNDE0NTIgNmQ4Y2U1NTcwY2I3MDIwY2RjYmMwMzA5NzFiNmQxODQ1MjU4YjRlZSBqaW0tZG9jdGVzdAorNDE0NTMgNDBmM2Q3OWIyMTI1MGE0MTVmNzk5ZDI0MTEyZmVmZGQyMWJjNDYzMSBsZWdhY3ktdHJ1bmsKKzQxNDU0IDk0YTQwOWRhNGJkNDBiNzMyNmY3MWFhNmQ4NjU0NTNmNTU2YTk1NWIgbGVnYWN5LXRydW5rCis0MTQ1NSAxZjlkNGFjMzUwMTAyODIzMTJiOWFmMzg4OTM5ZmU1MGVmYzM4ZWIxIGxlZ2FjeS10cnVuaworNDE0NTYgMGQxZTJlNzNjM2VjMDMzNzdhOTFlNmYxYzljNGZjNTYwNjc0NmYxOCBsZWdhY3ktdHJ1bmsKKzQxNDU3IDI5NDIwYmQzYjVjYmIxOGE0ZTg5MjA2NGM4MTAzZjBlZmJiMWEwMGIgbGVnYWN5LXRydW5rCis0MTQ2MSAzMjM2YjVmYjFmYjcwZjMwOTcyMzI5ZjlhYjZmNzE1Mzg4NTE0Njk0IGxlZ2FjeS10cnVuaworNDE0NjIgZTcxNjQ4M2NiM2Y5MTRjYjE5NmZhZDYyNmI0YzE2OGE1ZDRlN2NkNSBsZWdhY3ktdHJ1bmsKKzQxNDYzIDAzODY3ZmM2ZmQ4MDc4Y2MzYjRiNTY5YWMzNzJjMzBmOTVlNmZjYzMgcmVsZWFzZTI0LW1haW50Cis0MTQ2NCA1YjgyMTIwY2I0OWQ2MTIyZGQwYWE2ZTNiZmY0OGEyZjE2MTc5NmE3IGxlZ2FjeS10cnVuaworNDE0NjUgZjk5ZDZjYjg4ZjZmMjA4YmU5NjFmNjU4YWVjOTExMDI5NDc1ODJkOCByZWxlYXNlMjQtbWFpbnQKKzQxNDY2IDM5NTZkNjIwYWYwOWJhMDBkMDY3ZWQxMDFjMzM4OTBlOWI4ODFkYWMgbGVnYWN5LXRydW5rCis0MTQ2NyA0Nzg5ZTc1YTZmZTdkMDYyMDYyZDIyYTU5M2JkMjg4MjE1N2MwNjFiIHJlbGVhc2UyNC1tYWludAorNDE0NjggZTI0NzNjNGYyZWUwZDdmZDdlZGMyYmNlMTJkMTY3NjcxOWU2NTg2YyBsZWdhY3ktdHJ1bmsKKzQxNDc4IGY0MTRmZjI4NzgyM2I2MGZmMzI3MjIxZmU1NDUxZWExY2M5YTYyYTAgbGVnYWN5LXRydW5rCis0MTQ4MCA4ZmQ0NmI2NjBlNjY5NTBiNjliNmE0OWQ2ZTM1N2IxZjYxMDUxOGFlIGxlZ2FjeS10cnVuaworNDE0ODEgNzFlYTZiN2Y1OGNlMzhkMjI1MDUwOWE3YzU0YWRjN2ZjN2FlMWQwNyBsZWdhY3ktdHJ1bmsKKzQxNDg0IDgyNTY1NWJmZGYyMDY0NTAwZWFmMDYyZjdlZjI1YWRmZDE5NjRiOTAgbGVnYWN5LXRydW5rCis0MTQ4NSAwNDQ1NDJkNzA1YzJjYWVlZGE5ZmI1Nzc0ZmI0MTVlNGQzMWI3MzIwIGxlZ2FjeS10cnVuaworNDE0ODYgZmU0YzYyN2IyMDk2NWU5MDU5NjQzZWNmOWI5NzE3OGYyNjkwMzVhZSBsZWdhY3ktdHJ1bmsKKzQxNDg3IGU0YTVhODRlNWViYjEzOTczZGQzNTBmYjAxZWYyODM4MDFiZjQ1YTggcmVsZWFzZTI0LW1haW50Cis0MTQ4OCBjZTliYTAxZWI3ZWQ1ZmZkMTNiZTIxYTM1NzY3NGVjOGRhZjZkNzAyIGxlZ2FjeS10cnVuaworNDE0ODkgZDcyZGI4MmE3MGNkN2FkZWNjNmI1MDM0NTFjZDYwNDliZTM2Njg0OSBsZWdhY3ktdHJ1bmsKKzQxNDkwIGRmNTkyODU1OGE1N2I0MGZlY2Q2OTFiODZmYWY4ZmEyODMzNmFkMjEgcmVsZWFzZTI0LW1haW50Cis0MTQ5MSBlOWJlOWU2MTg4ZjRkNGUzMjZkN2MxNGVhYjRlNzJlMGU3Mzc1NzVkIGxlZ2FjeS10cnVuaworNDE0OTIgMmIwY2Y1MGU3N2VjOThhMTU0ZTc1ZjhmOTdjYzA4NDc1M2JiN2QxMSBsZWdhY3ktdHJ1bmsKKzQxNDkzIDlmZDBjZDM2MmFmZmM3MDkyZmQ2ZDE0ZTJjMWQ4ZTc3ZGQxM2ExMmYgbGVnYWN5LXRydW5rCis0MTQ5NCA4MDBmNDhhMTRhOGEzODExMmZhMTEwMzg2NzNjZDkxYzE1NGZjZWQ5IGxlZ2FjeS10cnVuaworNDE0OTUgYTZiZjdjYWVkMTM1NzA1NjRlMmM2ZTVlZWZjN2NjNmYwOGEwNDI4MyBsZWdhY3ktdHJ1bmsKKzQxNDk2IDFkZmQ1ZDYyZDc2NGVkZWM1YzcyYjI2ZjdmMWU1M2JiMGI4NWVlOWMgbGVnYWN5LXRydW5rCis0MTQ5NyBmOTM3Mzg3ZjRkZjEyMWY4ZjNkMWY5MGU4YmMwNzA4ZTY2ODk1YjhhIGxlZ2FjeS10cnVuaworNDE0OTggNGQxZDI3NzE3OGE1N2FkM2M1MzcyYjVkZmZjYzBjNmIyODA5MmE4MCBsZWdhY3ktdHJ1bmsKKzQxNDk5IDRlNWUxNmEzYmUwZDNjMzg4NWQ5Mjc5NWRlZDljMmM2NWUzNWNhNzIgbGVnYWN5LXRydW5rCis0MTUwMCAxMWExYmMzNTI5MTdhM2VkZjFhYWUyY2E1MmQwMTY3M2M1MjFjODIzIGxlZ2FjeS10cnVuaworNDE1MDEgOGZlYWVkMDdmY2NkNzE0NTI2YmJhODkzMDM1Y2ViYzY3NzdjMmQ1ZSByZWxlYXNlMjQtbWFpbnQKKzQxNTAyIGNmMTU3MTRjOWM4YWEzNTNmNmQ5MjM3NDM3YmRmZGNkOWY3NGM4NWYgbGVnYWN5LXRydW5rCis0MTUwMyA2OGIzOThhODVhMzg3NGJkNDJlNmU4YzgwZGMzMTY1YzZlNDBiYzBkIGxlZ2FjeS10cnVuaworNDE1MDQgMTJmMjIyYjYxN2I4OWY2Y2UxMDMzMmVjZjBhNTlhNTNlMzYxMTY3MCBsZWdhY3ktdHJ1bmsKKzQxNTA1IDNmZDk3ZGUwYTc5MDgzZTQ4ODExZWI1N2QyYTE2M2JmODcwMWE1MWYgbGVnYWN5LXRydW5rCis0MTUwNiBmMTNmYzBjOWE2YjNhNTY4NDZiYjVhMmUwZDE5MmUyMzRiYTU2YWY3IHJlbGVhc2UyNC1tYWludAorNDE1MDcgNTFmNGVlNGY5N2VhMWFiZjk3MmY4M2U5ZjQwMzg2ZGIyYmIyOGYyNCBsZWdhY3ktdHJ1bmsKKzQxNTA4IDFmYWEzMDY5OTNjMDVhZjUxODhkNTgyMWYxOGVmZjY2ZmY0Y2UzMmQgcmVsZWFzZTI0LW1haW50Cis0MTUwOSA5ZmM2YmY2NTVmOWNiMDI5NGI3ZDZjYWMwNWY4OGI1ZmU3NGM1YjgxIGxlZ2FjeS10cnVuaworNDE1MTAgZDRhNmQyNTkxY2Y1OGExMThmMDVhMDBmMTFjMmM0ZTdlMTcyOGFjYSByZWxlYXNlMjQtbWFpbnQKKzQxNTExIGUxMTMyMzE4OWM4NDkxMmUwZWUyNmU5MTMzMWM5Y2Q1MzI5MzZiYmYgbGVnYWN5LXRydW5rCis0MTUxMiA3NGU1NjFhN2U4MmNhZDdhZTM4ZDg1YzMyN2U3NmRjZmQ2OWQ2N2UwIGxlZ2FjeS10cnVuaworNDE1MTMgYzk0MjY4Mjc3ZGU5MzgzNjg1YmU4NjNjY2UwMThhMmE3NmRkNzExNyByZWxlYXNlMjQtbWFpbnQKKzQxNTE0IDFmNzc0NTI5MmU1MGVkODRkMzhlMjdiNmQ1MDc5OGMyMmUwY2I1NmQgbGVnYWN5LXRydW5rCis0MTUxNSBmMjYwNWY1YTZkNDZmODNhNzlkZWUwOWZiYjJhOGRkMDZjOWIwMGEwIHJlbGVhc2UyNC1tYWludAorNDE1MTcgYzJiYmE1ZjQ2YWI2ZWFlMTc3YTZlNDk4NTZjZjIxMjVlOGE2MmY4NiBsZWdhY3ktdHJ1bmsKKzQxNTE4IGZhYjM3MTM2ZGQ2ZGE1M2E4YTA5YTI5OTBhOTE1MWUzMDUxNjEyZDUgcmVsZWFzZTI0LW1haW50Cis0MTUxOSA5ZjY4NTJmZjNkMTkxZTQ4YTRjMTAxMWRjNGUyYjc0MWVmMjczMzZjIGxlZ2FjeS10cnVuaworNDE1MjAgMWUxYzNmNTUzMjhhMDg2MTQwNDdlMmI3MDEyMThiYzE1YWIwZGIyOSByZWxlYXNlMjQtbWFpbnQKKzQxNTIxIDcyZDVjNjBmYTQ1ZDllZGMzOTViZDliN2Q4MWE4MDI4MmM0MDkyYzYgbGVnYWN5LXRydW5rCis0MTUyMiA5ZTYzMGNjMWQzMDkwYjllYzIwZTVmZDc3YjBlYmEwYTI5NDAzZDdhIHJlbGVhc2UyNC1tYWludAorNDE1MjMgY2YyYjRjOGFkMWFkNGU0NmY2ZjJlNmZhNWM2NzhhZjZhOGFlMjE3ZCBsZWdhY3ktdHJ1bmsKKzQxNTI0IGI3YzZjNDYxYTgwODE4MGIwYmJmYjcxNDEyMzUwOTIwNjBjMTc5NzUgbGVnYWN5LXRydW5rCis0MTUyNSBlMGRkZWE4ODFmNGFiZjcxYzRlY2E0ZTgxMzM3MGIyMDliZjliMGJiIHJlbGVhc2UyNC1tYWludAorNDE1MjYgMWZkZWJiZDYwZDdkZGRhMGVlMGNhM2M3Y2YzYWIzZDQ5ZWU4NWMwYiBsZWdhY3ktdHJ1bmsKKzQxNTI3IDdjODgwMGI4MWM1MGM5ZjY1OWFjZDc0MWE4OGZlYWFkNDhiNDc5MWMgbGVnYWN5LXRydW5rCis0MTUyOCAyMTUwYWY4NGExODVlOTA4ZDVlYzU4ZmE0YTViYjU3Y2RjNGNlZDU2IHJlbGVhc2UyNC1tYWludAorNDE1MjkgZTZkMzFjYmYyZWQzOGM1YzFjMjljNmY1NTAyYjQyOWIzZTAwYTkxMCBsZWdhY3ktdHJ1bmsKKzQxNTMwIGJiODBiOGYzOTNlZmYxZDJlMTlkZGMxOWU0MGY1ZjUyMDAxMDdkYmMgbGVnYWN5LXRydW5rCis0MTUzMSA3OTM3NGViNmRiNTE2Y2NhOWE4NGJkZjk2YjQ3YTE3ODU4ODhmZDE3IGxlZ2FjeS10cnVuaworNDE1MzIgY2IxZmYyYTg1ZTNkZGQyMjgxNTg2NDk5MmIxZTcxNzlmMTdmNGM5OSBsZWdhY3ktdHJ1bmsKKzQxNTMzIDAzM2JiNGRiNWFlOGMxYTYyNGI4YjFlMzgxZDFiNmJhZWRiMzZkMTEgbGVnYWN5LXRydW5rCis0MTUzNCA2ZDZjN2NkNDUyOTg5ZTU4MThhMGJhMGViYzdhN2EzMDYxZGZmNzU0IGxlZ2FjeS10cnVuaworNDE1MzUgNWM4ZGM1ZDIxOGQ4ZDcwZjJmMDNjODk4MDM3NjA5ZDExM2ZjNzk0YyBsZWdhY3ktdHJ1bmsKKzQxNTM2IGI0NmRjNmQxMDk4Njc1NDMxZGEwYWZkMTJjY2U5ODA3NWUyMmY4ZDYgbGVnYWN5LXRydW5rCis0MTUzNyBlODBhMWFmNjc2MjNmMGY1NzI5YzFjZGFjM2E3MWZhN2EwNmVlZmM5IGxlZ2FjeS10cnVuaworNDE1MzggYjJlYjE1ODljMjJiNTEzN2VlMTMxZGZhMjgwN2Y3ZmQ1MjJhOTZjYSBsZWdhY3ktdHJ1bmsKKzQxNTM5IDQ1NzJmYjRkZmJiM2YwZmI2YWQ0NTczMjk2ZDc4Y2I2NTg3OTllZTcgbGVnYWN5LXRydW5rCis0MTU0MCBlZjYwOGI1OGJmZDhhZDVjMTNkOTVlY2FlYWE1MmQ1OTcwZmUzNzk3IGxlZ2FjeS10cnVuaworNDE1NDEgZjgwNTYzMjhmMDFhMTYzZGNkMGU1Mzc2NmQyYWNhZDYwYmY5ODEzZSBsZWdhY3ktdHJ1bmsKKzQxNTQyIGI5YzY4MmVkOTEwY2RjNjJiMzc2OTRjZTA3NDBlNzcyNDc0MjFlOWMgcmVsZWFzZTI0LW1haW50Cis0MTU0MyA5MDc5NzIzMzIwOGVmZTBmYTE2NThmNTcwODU3YzY1NzA2OTM5Y2E1IGxlZ2FjeS10cnVuaworNDE1NDQgNDgzNTNjZjUxMzQwM2ExZGM2MTI2YjM0NWYzY2FlN2YwZjU3ODJiZCByZWxlYXNlMjQtbWFpbnQKKzQxNTQ1IGQ3ZjYzZWRlNDk1ZTg1ZTI1NTFlYjcxYWQ1OTQzYzIyNGJlMDU2YjEgbGVnYWN5LXRydW5rCis0MTU0NiBkN2Y1MmZjNDIyNDU4YTE2NTk3YWJkZDJhZGUxOWM3ODhjMGIzZjcyIHJlbGVhc2UyNC1tYWludAorNDE1NDcgZDlkOGIyZTJlNjBhZGYwNmVlMDhjMzhlMjBjNzE1ZTY2Yjg4NDM5MCByZWxlYXNlMjQtbWFpbnQKKzQxNTQ4IDc1YTc5Y2M0Y2Y3YjY5MDZjNTIwM2JiYmVlOGU4MTQ0OWVhMjFjOGYgbGVnYWN5LXRydW5rCis0MTU0OSA5ZmM3ZGZlODZmOTY2MzYwNWJlOGY2NTBmZmZmMzE0M2Q5MGM5OTNmIHJlbGVhc2UyNC1tYWludAorNDE1NTEgMWQ4ZWZmZGU4MmYxYjQzZWY1YzhlNTk2MTU3ZGY2MjQ5NjliNmIyNSBsZWdhY3ktdHJ1bmsKKzQxNTUyIGZjYTczMzc3MTBmZDdiMzQxN2U0NzQzNjdlY2Y4NTBiZWQ1NWRiYTkgbGVnYWN5LXRydW5rCis0MTU1MyA2NTg0NDRiYWViYTM3ZWZjOGU0OTVhZjdiMWEyMzE0ZGQ1YzE1YmIzIGxlZ2FjeS10cnVuaworNDE1NTQgNzI1NTVhOTY3ZDZhODVjYjM3Y2MxZjEzZjFiMmIxNjljMzU1NWJhOCBsZWdhY3ktdHJ1bmsKKzQxNTU1IDczZWJkYzYyYmY4ZjBkMWM5MTNiMTY0ZjMxMGExMzBlNmZiZTA3ZjAgbGVnYWN5LXRydW5rCis0MTU1NiA0ZDA2MTYyYWQyMDljODJhNWRiY2U0NmJiNGUxNWFmOTFmZDRlN2ZlIHJlbGVhc2UyNC1tYWludAorNDE1NTkgZDE3MmNiYTk2NGI3ODFiYTNlN2ViNDYwZThmNzllZTg1NTUzOTkxMCBsZWdhY3ktdHJ1bmsKKzQxNTYwIDlkOWU0ZWU0ZGE4OWZlZmM0YTY3MGI5MzQwMGFkMDc0MzZiZmE3ZDEgbGVnYWN5LXRydW5rCis0MTU2MSA5YzQ3NjVlOWRjOTI3MjM2NTI1NTM1ZDVkYTZkYjBlMjRlYTZmYjk3IGxlZ2FjeS10cnVuaworNDE1NjIgZjk5NzIxMzgzNmJiMjkwZDYxZDRkMWY5YTM4ZjdiZmRkYzM3Yzc3YiBsZWdhY3ktdHJ1bmsKKzQxNTYzIGExYjZlNjc4NGNhNTgwZTVhMzA0YTU2MzE2ZDVjZTI4Y2RhNTJlNDQgbGVnYWN5LXRydW5rCis0MTU2NCAxNWNjNjAxNjc5NWUwMzQ2NmNlODE1YjQwMWQzNjg1YmEzNzZmNDAwIGxlZ2FjeS10cnVuaworNDE1NjUgNzRlOWZlMDY4YzRkZDIxODQzZjRjZjE1ZTFjM2RjNmE0OTUwNzkwYyByZWxlYXNlMjQtbWFpbnQKKzQxNTY2IDRlYWE3MmJhMTlhMmU3MjdiZDMwYjUyZDQ5ZDcwYzM4MjllMTBhZjUgcmVsZWFzZTI0LW1haW50Cis0MTU2NyBhMTdjY2ZjMzcyZTk5YTk4NDA0ZmViMzQzMzUwMWUwYTg3MWU1NDJjIGFzdC1vYmplY3RzCis0MTU2OCBlNjc1ZmQyOTViNGI5ZTI2NTEzMWM0NGFiMzkzZmM3MjgwOGY1MTNmIGFzdC1vYmplY3RzCis0MTU2OSBjY2Q4YTBkMjg5NTA5NjZkODUzZjU4NjJhNjRlNjc1YmZlZDY5NDIzIGFzdC1vYmplY3RzCis0MTU3MCA1YjBmNWQ5NzYzMjU4ZjlhZjg3ZmQxNjc5NTJmMWRiOWJiNmMyOTg5IGxlZ2FjeS10cnVuaworNDE1NzEgYTVkOGYwNWJhZjk4Y2YyYzUwZDhmZjU3MzZmM2E3NGU5NzRlNTBjYiBhc3Qtb2JqZWN0cworNDE1NzQgOTZhNGU4MDY0MjVlNDE4NTVlNzVjZjUzMzJjY2M0YWJlMWE1MDc1MyBsZWdhY3ktdHJ1bmsKKzQxNTc1IDQ2NTAxNDkwMjUyZGI3YWFhMzFkYzhjYTc5OGM5ODE5MTg3NDAwMzIgYXN0LW9iamVjdHMKKzQxNTc2IGViNjZlYWU5YzJjOGMzNDIwNDIwMWYzY2IzYTUzYmRiZmIyYzNjMWQgYXN0LW9iamVjdHMKKzQxNTc3IDg1MDdkNTgyNTM1NGFmNzk1YmI1YjVmZTZhMDQ2OTFiNjgzOGQzNTQgYXN0LW9iamVjdHMKKzQxNTc4IDljMDQ5MDk5N2U2NjIwMGNlMzhjZmU5MDA3NDA5ZDg2NGFkMjhjODggYXN0LW9iamVjdHMKKzQxNTc5IGFiZmVhYjczYzhmMTljY2VmNzJlODQ0MGE1MWRlNzcyNzcwNGJlMDIgbGVnYWN5LXRydW5rCis0MTU4MCA4MDU2M2RjMTM0ODc1ZjBmYWFmYzg5NjU1NGU5ZGUxY2U1YTQ5NDI4IHJlbGVhc2UyNC1tYWludAorNDE1ODEgNmY0NjEwZjY5MmUwZWFiODU1YmJlODNlMmRhNDNhNzNmYzQwMDNhMSBhc3Qtb2JqZWN0cworNDE1ODMgN2FhYTA5ZjFhMDQ3MjQzMzFjM2Y1ZjU1YTQ0MjRiM2IxZTM3ODIxMSBhc3Qtb2JqZWN0cworNDE1ODQgYzU5M2YzMzY0M2RkZjUwYmVkNTBjYjFlZTZlMDc4NTNiYjQ1OWZjMiBhc3Qtb2JqZWN0cworNDE1ODUgODFjOTQ0YzNkMTNhMDU4ZjVmZjVjN2VjZWM3MWU2NDAyMDJmOThlOSBsZWdhY3ktdHJ1bmsKKzQxNTg2IDE5MWI1OTkwOWRlZDhkNDAzOGMzN2E2MzFhZThlZThkMDY4YWY0MzggbGVnYWN5LXRydW5rCis0MTU4NyBlNzJiYzVkYWZlMTZlYmVlZTlhZmI1NWUxM2Q1ZTdlYmMwMDg5MDBkIGxlZ2FjeS10cnVuaworNDE1ODggNWQ5NmE1MzZiYmYzZTY1ZDIzZGE4MDJmMzk5Njc1NGFiNjU1NWQ4NyBsZWdhY3ktdHJ1bmsKKzQxNTg5IGFkMGYwMzg1YzZmMzk4ZmM0ZGFlYjlhMjBhZjA0ZmUzNDExODUzNmEgbGVnYWN5LXRydW5rCis0MTU5MCBjZjMxYjJjOGU4NTQ2MGYwZDQ4NDlkZWQwZDA3NDQ4ZWM4ZjhhZDQ5IGxlZ2FjeS10cnVuaworNDE1OTEgMDNhZTBiOGViNmNiZmI0YjFjYmFlZjU0ODQyMDg0ZjdhMmFkODg3OCBsZWdhY3ktdHJ1bmsKKzQxNTkyIGUyNmRjMzM0ODkwOWJmNzAwNTI3NTQ4NmU2OWQ3Y2I3ODY3YzM3YTUgbGVnYWN5LXRydW5rCis0MTU5MyAxNmUwM2NmYjlhMDIyYWUxZDM5M2I2ZWI3Y2EzOTNmZWEwZWNmOGE5IGFzdC1vYmplY3RzCis0MTU5NCA3NWQ1MzZiMjQ3ZWFhOWMxOGJiYTUwMmYyMzVlMzUyMGFkOTEzMzY0IGxlZ2FjeS10cnVuaworNDE1OTUgYTA4N2U3YmY1MGYxZGUzNzg0NDAxYWVkMDQ2MDFhNDI1ZGE5YmRhZCBhc3Qtb2JqZWN0cworNDE1OTYgNTA5OTU2YTU0ZjM3NjE3NjE4NmQ2Mzc2M2I3ODY3ZmEwZmIxMGYwNiBhc3Qtb2JqZWN0cworNDE1OTcgM2E0MjE0YmZiNmU0NGIwMDVlZTEyYmQ4MTVmZjU3NTE2ZmYxY2E0ZSBsZWdhY3ktdHJ1bmsKKzQxNTk4IDUyMjUxMjI0Y2I5OTVlMWJkNzg5NmVkOTgwODU4NjQwMDlmMTMyZTYgYXN0LWFyZW5hCis0MTU5OSA1YmE5MjBlZWYwMTYwNDM4MTM5MDU3YWM3OTY2ZDA0NDNiNDAyNGNkIGxlZ2FjeS10cnVuaworNDE2MDEgOGVkYTFhNThhNDkwMzcwYTI2ZjIyNDlmZWRlNGE1NzIyNTE5ZmQyZCBsZWdhY3ktdHJ1bmsKKzQxNjAyIGYwMjBhN2FkZTZiNWQ1ZWVjN2RiNDgzY2ZlNDUwY2RkNDJiNjFlMGEgbGVnYWN5LXRydW5rCis0MTYwMyAxZTEyODdiNmY2NTI2ZjU5Y2IzZjFkMDk0MGE3OTIxNjMzMTY3MzQ2IGxlZ2FjeS10cnVuaworNDE2MDQgY2IzYWU3Y2VhMTA2NjYyNDljM2YyYTAzMWVmNGZiYjJhM2VkYzBkNyBhc3QtYXJlbmEKKzQxNjA1IDVkMDMxYmQyMjMwN2JjYjQ1ODZjYWNhOTVlMDdmMmZhMTc1YzM1ZjAgYXN0LWFyZW5hCis0MTYwNiAzYzIxZDViZDE1YmU2M2ZmNWZkZDNkNDhkZjYzZTg2NTkwMjQxYzZhIGFzdC1hcmVuYQorNDE2MDcgYzg5NzA3ZGFhMDExNDQ5YzQxNTlhM2I1ZmNlYTJjNTBmMjI2YzA4MSBsZWdhY3ktdHJ1bmsKKzQxNjA4IDAxYmQxNDZkYzUyMDdmN2Q3YzE3YmUyMmMzNGM3YWNiZWJiYzYzNDQgYXN0LW9iamVjdHMKKzQxNjA5IGM4MDA5YmQ2MTE0ZmE2NWIwODZiZWM4ZDE4Yzg2MGY5NzFjNjFjNGEgYXN0LWFyZW5hCis0MTYxMCBlZTU1NDMwZTVjZmU3NzhkY2NhNjY3MzZjMDdjNTI3ZjE0MWM1MDA4IGFzdC1hcmVuYQorNDE2MTEgNTUxZDU4YjNkMGNkM2M3NmM1MzBmYWZkZDU4NjM4NjMwMzU2NmU5YSBhc3QtYXJlbmEKKzQxNjEyIGFhNWQ4ZTRhMDBhOGE0ODYzODY0NWQ4NTQ0MGE4YzhlNjU3MjdhMWQgYXN0LWFyZW5hCis0MTYxMyBjMWU2NzhlN2JiMTI4MzliYmEzOGYxZTg3NGVlMjFjZTQzZjViNGI4IGFzdC1hcmVuYQorNDE2MTQgYTI5ZGM1OGE5OWYzODk0ZWE0OWUzZGUzOTViYzQyYjRlZWI1ZmU2YiBhc3QtYXJlbmEKKzQxNjE4IDExZWU5ODJmOGM4ZDBlNDYwZjRmMWE0ZDBkYWZmYWNjYWY5ZmRhMzMgbGVnYWN5LXRydW5rCis0MTYxOSBkNDdhYmY5NzU4YzlmZWFlNzU5N2M2ZmM0YjgyZWU5YTllYjYyZWYwIGFzdC1hcmVuYQorNDE2MjAgYzYyOTgxMjUwMzllNGRmYjEzODdiYjA5MTFlYWIwOTdmMmVhOWQxYiBhc3Qtb2JqZWN0cworNDE2MjEgYzBjMTJhYTc1N2U3MDlmMDljNzZiZDMxNzYyMzA3NzdmMmE1ZTJmZCBsZWdhY3ktdHJ1bmsKKzQxNjIyIGFiZTFiMzMyZWFhMDBmNzA3NDA5MzJjMWY2OTg2MGM2YTYzN2E5YzQgYXN0LW9iamVjdHMKKzQxNjIzIGMyMzZlYjZkOTkzNDUyNzVmOWQ0ZmRhZWFmMzc2ZTBhYTlkZGNiNjMgYXN0LWFyZW5hCis0MTYyNCAxZTY5ZTYzYWUzYTA4YjQ5Zjk4ZWI3NWYwMTNhOTM4YWQ5YWJkNWZjIGFzdC1hcmVuYQorNDE2MjUgYWI4YWI5YmU2ZjRiNDdjYTBiYjFhZTY5YTk4MTBjNDNiNGFlOThlMiBhc3Qtb2JqZWN0cworNDE2MjYgYTI5Yzg5YjRlOGM2MzA5NWM3MmMxNGUyNWVlODE5Mzk5OTBhZWQzNyBsZWdhY3ktdHJ1bmsKKzQxNjI3IDhhZDMxOWYzYTkzNWVjNWQ0YWZhMGYxYzVlMjhmOWNlODY4MDJkNjAgYXN0LWFyZW5hCis0MTYyOCA1MWUzYTgzOGFlYmU3NDAxZGM4NjI4YzgyMTY2YzAwMmQ5Y2YyMDJlIGFzdC1hcmVuYQorNDE2MjkgYWI0MzFiMzI0YTRiZDQzOTk3MzIyZmFmOWFkM2I1NjM4MTc1MjJmOCBsZWdhY3ktdHJ1bmsKKzQxNjMxIGI3N2VkY2VlODg4Y2EzNDUxYTcwNWJiZjM0MWQwOThkMmQzZjA1ZmIgbGVnYWN5LXRydW5rCis0MTYzMiBkYmNjODkxMmEyNGRlYzQ0ZDZlY2EzZDA5MDI5ZDdjMzhjYWE2ZDcxIGxlZ2FjeS10cnVuaworNDE2MzYgNjQ5YzM0MTgwYTBmNTBlMDA1NTA0YmRmOTRlMDQyZmM4YWM3MDE2YSBsZWdhY3ktdHJ1bmsKKzQxNjM3IDk2ZDFmYTM2OTY0ZDRlMTFhMDI3M2I0OWU0ZjA2ZGMxMmZiOTU3YzQgbGVnYWN5LXRydW5rCis0MTYzOCA5NTQxMzY5YjBkY2FmMDQ4ZjFiZDk4NmEyOGM5NmZmZWVlMzdmODA4IGxlZ2FjeS10cnVuaworNDE2NDEgY2MzMjYxNTk3MTM2YzYyNTZmOTFjYTc2MzBkZGM2YzkzMjkwN2YzZCBsZWdhY3ktdHJ1bmsKKzQxNjQyIDYzMjE2NjlmMmY0ZDEwYzZiY2U1YmUzNWU5MWMxN2Q5OTIzNTUxNjAgbGVnYWN5LXRydW5rCis0MTY0MyAwZWI2ZWY5MmM1NmUyNTc5NmIzYjI5Y2RjYzE5MDQ4ZDEzY2ViM2I5IGxlZ2FjeS10cnVuaworNDE2NDQgNTJmMWQ1N2YyMzdkYmJkYzVkODM3NDRkZjZkMTNmNDY0YmRhNjEzMSBsZWdhY3ktdHJ1bmsKKzQxNjQ2IGU0YjYyMWUxZWRhNjYyMjA1NjUwZGRjMTE0NmY1YWE1MTU0NTUyY2QgbGVnYWN5LXRydW5rCis0MTY0NyAzMmU3ZmU5YzIzYjkxY2IyZjUxMTg4ZmI4Mjg1MWI4N2FhNmI3MjY2IHJlbGVhc2UyNC1tYWludAorNDE2NDcgZjZlNzM0YjFmMjYxYzU0NmQ4MGU5ODQ5MDM4MDU0YmYwOTdmZjg0ZSBsZWdhY3ktdHJ1bmsKKzQxNjUxIDZmNTAyZDM1ZmM3NzViZTY3YjgzMWQ0ZGIzZTVhNTk5NDFhMTA4NjEgbGVnYWN5LXRydW5rCis0MTY1MiAxMDIxNDBjM2EzNjE0ZGIzZTkzMjVhYjAyMTI0NTcxNGUxZGRkMTZmIGxlZ2FjeS10cnVuaworNDE2NTUgYTVhZDc2YTc4ZjRiMjlhOGFhN2Y3NDdkZGI2ZjE2YTgyZGNlMzhmZCBsZWdhY3ktdHJ1bmsKKzQxNjU3IDUyMmUwMDczZDljOWU4YmI3NTE3YmZjNjljMmViM2JjM2JkOWYyNDUgbGVnYWN5LXRydW5rCis0MTY1OCBmOTQ0MTg3MTVlNTUzMTI5OWYzYWI3Y2NkYzIxNWMwYTJjMzBjYjM3IGxlZ2FjeS10cnVuaworNDE2NTkgMDdmZGI0ZDJiOGY2MjMzN2QzOTM2NGE1NjkzNTk2ZjRmMWFkMTA0ZiBsZWdhY3ktdHJ1bmsKKzQxNjYwIDA3Y2U5Mzg4NTdlMWJhMmYxODVjNThkM2EyZGVhOTc2MWUxMjc3YzAgbGVnYWN5LXRydW5rCis0MTY2MSAxNjQ3MGI3MjJmMjA5YzAxMjU0M2U4YTkwMGVkOWJkNzE0NjY0ZDkwIGxlZ2FjeS10cnVuaworNDE2NjIgNDAzNjc4NzRmODYxNmFjNzA0NTdhODMzZjFkZWJkYmQyYzNiOTRmMiBsZWdhY3ktdHJ1bmsKKzQxNjYzIDM3N2RmMzliY2RhMWYyNmZkMzNmN2JmNzc3YjNiYzI0MzMxNjA0MGIgbGVnYWN5LXRydW5rCis0MTY2NCBlZDM0N2M0MzZkNTg5NjZjYmZkODRmZWJjMTQwYzUzMDkzYWNlZmJjIGxlZ2FjeS10cnVuaworNDE2NjUgYzI1M2U5OTNkZjhhY2U4MjE2MWViMmRkNzMyOWVjZGEwN2M3NmQ2YSBsZWdhY3ktdHJ1bmsKKzQxNjY2IDY4ODE3MzE1Yjc0Y2E5NjlhNGM3NmU1MzBkNjc3YjE4MmM1ZTYwMzAgbGVnYWN5LXRydW5rCis0MTY2NyBiZmQ2YTZmYzcwZWFmNTNkNmMxMGJlMGNiNDEyZWQ0YmE0YWJmYmY2IGxlZ2FjeS10cnVuaworNDE2NjggY2Y4ODYzNmNkZjRiZTk5ZDZiZWU5Y2ViMjU0ZTlmMjhkMzNjMzRkYSBsZWdhY3ktdHJ1bmsKKzQxNjY5IGExNGE3ZjYxNGE5NmRhNGJiOWJmNDYwNDU5MjhlOWEwNzhhZmI4YTggbGVnYWN5LXRydW5rCis0MTY3MSBiZWM5ZmFjOWY3N2M3MzAzNDFkYWI2Nzg4ZGRiZGQ3ZWY4NmE4Zjk2IGxlZ2FjeS10cnVuaworNDE2NzIgMjdkZjJmYmUyNzA2NjRjYTIyODVmZGQ3MmFlMzAwMWQ2ZDI5OTU1ZSBsZWdhY3ktdHJ1bmsKKzQxNjc0IGRiMWMwYWFiYzQwNWEwMmVhNTVhZGNiZWFjNjZhYzE3YWM5NDlhZjQgbGVnYWN5LXRydW5rCis0MTY3NyBlMDFkODUyNGI2ZjY0MmNiYjM5MDk0MWFkNDczZmQ1ODBiYzNiYWViIGxlZ2FjeS10cnVuaworNDE2ODIgY2Q4YjViMzFlMDJhYTRiYjhhYzk3ZmNmOTY3N2FjNmQxNDc1NzJhMCBsZWdhY3ktdHJ1bmsKKzQxNjgzIDkzMDFhN2MwMzEyYWMwM2I3Njk1MzliMDI5MzNlNzkzMzJjMzM5OTEgbGVnYWN5LXRydW5rCis0MTY4NCAzNWZlOTAzMjVmNWI3YTIyY2ZhNGIxMjQyMzZhYzAwNTljNjkwZjU2IGxlZ2FjeS10cnVuaworNDE2ODcgZjBhNTMzMGYyYjNlMTFiMWY1NzBjZmU0YWJjNGQ0MzUzZjg1MDk2NCBsZWdhY3ktdHJ1bmsKKzQxNjg4IDYzNWUwZDkwOTY0NWVmNjVhMzEzMmEzODBjYWYzMzlmN2E5NTlmNDggbGVnYWN5LXRydW5rCis0MTY5MSA2ZDdkMWE5OTZhMDIzYThkYTM1ZWZkOTlhYTYxNmM0YWJhZTE0NjNjIGxlZ2FjeS10cnVuaworNDE2OTUgMjQ5ZmZlMTNjYWY4YTU0YzZmZDZiYzAwZGJjOTNjODQ5NDQyNmYzZCBsZWdhY3ktdHJ1bmsKKzQxNjk2IGZkZjBhYzM2ZWI3NDYxMmZhNDY4YjMxZTU4NDk3ZmM2ZDQzOGZiNTggbGVnYWN5LXRydW5rCis0MTcwMCA0YmZjZDVkY2QwYmZhMjUwYTU5OTAzNTIyYjM2ZDJiNTFmYzA4Yzc0IGxlZ2FjeS10cnVuaworNDE3MDIgNzU0OGQ3NjU2ZDg5ODY0YjNhZTBiM2YxZGZjZTlhZGZiZjBhMzZmMiBsZWdhY3ktdHJ1bmsKKzQxNzAzIGRlNjlhNTI0ZjRlZGJjNmMzYjEyNWU5ODg3ODQ0NTFjNTFhODQ2N2QgbGVnYWN5LXRydW5rCis0MTcwNCA2NGM2YWI1NjcxZTdkNzcyOTY5OGIwOTE4YjE3ZTY0YzQ4MTUyM2MyIHJlbGVhc2UyNC1tYWludAorNDE3MDUgZGUwYzJmZWE2NWMyMWJjOWFjYmVkMzhkOGEwMDFhN2U0MDUwYTI2OCBsZWdhY3ktdHJ1bmsKKzQxNzA2IGM2OTFmZDYzZWIzYzA5NWM2ZWQwYmI4OTY4OTQ2YWYzNThkOWQzZjkgcmVsZWFzZTI0LW1haW50Cis0MTcwNyAxOGQyN2M0NDQ3ZDExMzZjZGMzYjEzZTAwNmVhMzAzZGY2NmI2NWZiIGxlZ2FjeS10cnVuaworNDE3MDggYzExNTEzNjkzY2I5NzAzY2U2OWE2MTQyMTFmMTMyOWU5OWZkMWFmMiBsZWdhY3ktdHJ1bmsKKzQxNzEwIDk4NjUzZDlmOWNjMzljM2U1OTNiNDE0YmJlY2JiOGRhMTQzYzRjODMgbGVnYWN5LXRydW5rCis0MTcxMSA2NTJiZDVlNWI3NzgyZjg2YzA3YzNhMTUyMTM2NmVhMTA5ZmUwNzQ0IHJlbGVhc2UyNC1tYWludAorNDE3MTIgMThmMDlhYzYxOWU4OTJmMmU5ZDViMGM4MzUwNThlMjI5N2VkYjQxZSBsZWdhY3ktdHJ1bmsKKzQxNzEzIGE1NTgzMWQzMjkxNWEwNWY2MWExY2Y5ZWRhYzNhOGE5MTY4OTA3NTcgcmVsZWFzZTI0LW1haW50Cis0MTcxNCA0ZGIxN2EwMGJkY2QzNTMwN2YzNjg3MjAxMWQ1YmQzNWM2M2M0ZWQzIGxlZ2FjeS10cnVuaworNDE3MTUgZGVlMjUzYTMxMTZjNDU2ZjliODZjZDc3ODFlMjVkZDM1MTRiNTU1NiByZWxlYXNlMjQtbWFpbnQKKzQxNzIyIDRlYzYwMTExMDkwNjEzNzYxZTk5MGZlYjZlM2RjZDNjOGI3MTY1ZjggbGVnYWN5LXRydW5rCis0MTcyMyA2NTg2Y2Q5OTIwZTdlM2ZmNmIxY2UwNDlhNDU5NDNkMDFkNGY4ODdjIGxlZ2FjeS10cnVuaworNDE3MjQgOWI4OTdmYjdhYzZhMjIxNmQ2ODk4Y2VjMDhkZDNiNTEwNjc5MDM0MiBsZWdhY3ktdHJ1bmsKKzQxNzI1IGY4OTNkNDAzYTk4YzFmODE5YzAyMTZhNjNmNTI5MzkzYTFjNWZmYjAgbGVnYWN5LXRydW5rCis0MTcyNiBmYTA4YzY5N2EyNzU4ZGIzZmVjZmQwZDhmODkyMjBiYjVkMWE3NTEzIGxlZ2FjeS10cnVuaworNDE3MjcgYWRlNjc4Njg3ZDNiMzI4MDVjNDI2OTlmYThjZmEzYjIyMDY5ODcxNyBsZWdhY3ktdHJ1bmsKKzQxNzI4IDMyMWVmZDAzNzg1OWNjY2U4M2RlNjYzZDljMzY3YzJmZmJkZDJmMmUgcmVsZWFzZTI0LW1haW50Cis0MTcyOCBmMWFlMTE0NTdkMzRiYzNiMGM2N2Y3Y2MwMzQzZTg5ZWNkNTI5NmMxIGxlZ2FjeS10cnVuaworNDE3MjkgODc3YjVkNGNhMzY4MTcyMTM0ZmE3MGIyMTQ0ZjRiMGE3ZTlhYjM3OSBsZWdhY3ktdHJ1bmsKKzQxNzMwIDczMTAzMmQxMDE1OWZiYzBkNTI0MjQ1M2Q2ODI3NzllMTQ2N2Y1Nzkgc3NpemVfdAorNDE3MzEgMjc5MTljZjg0ZGMzZGRmMGNkYjMwZWMxMTM0Y2Q2YzdjOGE5MjJjMiBzc2l6ZV90Cis0MTczMiBjZWM5YzJjMTRlMjhkNDRmNDA2MDY1MjdjZTgxMTJhNGM2NzhjYWEwIGxlZ2FjeS10cnVuaworNDE3MzMgOWVjNWIxNjVmZWEwODE0YTI3YmFhOGI5NjVmMTUyOTEwOWQxMWEzZiByZWxlYXNlMjQtbWFpbnQKKzQxNzM0IDc5NjMxMGNiZmZlYjIzMjRlOTQ2ZmY1OWUyZWUyZTUxMjYyNjA2MjMgbGVnYWN5LXRydW5rCis0MTczNSA0YzE1YThlOTFhZTc0ZmVjNWJkMGFjNTMwZGM2NmZmMzFmMWZhOTM1IHJlbGVhc2UyNC1tYWludAorNDE3MzYgODFkNTk5NTk1MWZkNDEwY2E4NmRjM2Y3NGQ1MGRmMTYzNjVkMGRmNSBsZWdhY3ktdHJ1bmsKKzQxNzM3IDk4MDU2MTk1OGYxZDM5MzNmZDYyMTM1MWY5YWRkM2VkMjk5YzBjNDYgcmVsZWFzZTI0LW1haW50Cis0MTczOCBmYjZlNjRlYjg2YzAzOGYzMDJjZTI4ZjNkOWY2ZjcyYzk3ODkxMTZhIGxlZ2FjeS10cnVuaworNDE3MzkgZWEwODNlZmRjOTZjNzNhOTkyMDQzZWZlYzdkY2UyNzc3MWUzZDFkYyBsZWdhY3ktdHJ1bmsKKzQxNzQwIDcxOWJhMDJkMmUyY2E2M2QxNTEyMmI0NDZkYzNmMjkzZmZlZDRjNjMgbGVnYWN5LXRydW5rCis0MTc0MSA3YmZiMDk3Zjk1OTc2ZjRlYmM3NmEzNzk1Y2UzMDA3NTI1ZGYxODk4IGxlZ2FjeS10cnVuaworNDE3NDIgM2QxYmFmNzE3YzVhZjVkOWVmODkxODZmNTAzNzU5NGU3MjZiOWEwZiBsZWdhY3ktdHJ1bmsKKzQxNzQzIGQwMjE0YmIxZmQ1MTJiNjdmMWNlNGViYjBjZTIzZmMxZTExOTZmMjkgbGVnYWN5LXRydW5rCis0MTc0NCA5Njk3ZWVlYWYyNDY2MzJlYzQwOTNhNzc2YTg2YTcwMDYxMjc5YThlIGxlZ2FjeS10cnVuaworNDE3NDUgNDVmN2I3MzgzYTRlMjBhOTcxMGY1MmQ5Y2Q5NmU1ODM3MjZmNjU3NiBsZWdhY3ktdHJ1bmsKKzQxNzQ2IGRlMTZhODVjM2I0Y2YzOGUyZTU2YTc4ODM2ZmM3NTcxYmRkMjFmMjkgbGVnYWN5LXRydW5rCis0MTc0OCAxNWI1OGU0NWYxYTEzMTZhY2MxNWI3NGQxN2UzODAwZTlkZjdmMGU1IGxlZ2FjeS10cnVuaworNDE3NDkgZGEwYmFiNWRkNzQwODlmNzI3Yjg2ZmZjNzI5MjNkMWVlNzJmNzNkYyBsZWdhY3ktdHJ1bmsKKzQxNzUwIGY2N2M0YWIzMDRlY2VhODFhYThhNDM5NDNhZjVhMzI2NzMwODA5NTcgbGVnYWN5LXRydW5rCis0MTc1MSBhYTdkN2RmODUzZDU3MDU5MDY2ZDNkNWU1YTlmYTcxM2QzYTIyMzNjIGxlZ2FjeS10cnVuaworNDE3NTIgM2I5MDI1OGZlYzlmNmIyZTZiM2M5ODM5NDBiY2EwMTQ4NGQ2ZDc1NyBsZWdhY3ktdHJ1bmsKKzQxNzUzIDFmZjQ3OTBiNzYwNTAxOGM2NDFmY2NjNDU5NjkyMTQ3YTUzZDAxNTIgbGVnYWN5LXRydW5rCis0MTc1NCA4ZWJlMzRlYjNlYjc0ODAyYTQ5ZjJkNzcxMGY3ZTRkNjQ0YTY0ZDQxIGxlZ2FjeS10cnVuaworNDE3NTUgMTA0NDBiY2ZhMDYxNzE5YzdiN2U5ZWZmNzVkMjFlNzQ3MDE5ZWUyZSBsZWdhY3ktdHJ1bmsKKzQxNzU2IDE5ZDk2YzJkN2RmNTRlMjlmMGVmNTg0MzEzYWViMWJkZTlhMTFmNTAgbGVnYWN5LXRydW5rCis0MTc1NyAzZjM1OGFmYmIzZDNmMzdhZjIwMzIzYzZhNzA3ODRjMTNiN2UwMmM4IGxlZ2FjeS10cnVuaworNDE3NTggNGNiZjJhMDEwZDk0NWI2YmNkOTU1ZmEwNTE4N2MyNTc5OTcwZWIwMCBhc3Qtb2JqZWN0cworNDE3NTkgZTNlY2E2NWFlMTQ0ZjVkYzg0MGI4NDY1NDZkZDRkZTY1OTkxMDY5YSBsZWdhY3ktdHJ1bmsKKzQxNzYwIDMwMWZiMGE5OTM3MTQ0ZWM5N2IzMjNhNWI4ZjQ1M2ViOGI1YmU3NTUgbGVnYWN5LXRydW5rCis0MTc2MiBmYTY5ZjBmYTM2ZmVmOWIyZTljNmE2MjE3Y2U0ZDEzMzRjNGIzZDExIGxlZ2FjeS10cnVuaworNDE3NjMgZTE0ZjQ3OTY0NzQ4MWU0ZmQ5YzUxODM2MTYyZjI5OGM3MzI3NmE5ZCBsZWdhY3ktdHJ1bmsKKzQxNzY0IDQ5YTA0OTNmMjQ1ZTNmYjg0ZTU1ZGYxOWUxOWEyZTkwNzMzZmJkYTAgbGVnYWN5LXRydW5rCis0MTc2NSBhOWQ0ZmI4NjA3ZDI5ZmU5ZjAwMDhkNDdlZWRjZGNjNzRlOTc0YTM4IGxlZ2FjeS10cnVuaworNDE3NjYgZWMzNDUyODQwYjk2NmU2ZDhkZTJkM2NmYmZhNGJjNzBmNzBhYzIwYSBzc2l6ZV90Cis0MTc2NyA0YWEwMTg3OWE4ZjVhOWJjZTgzMzkxNTEzOTJmNTcyMWQ1YjdjNDdmIGxlZ2FjeS10cnVuaworNDE3NjggOGNiNjg2ZGQ2ZTY0NThmZjQ5ZTZmODNlZTU0ODdiOWM1OTlmMTNkYiBsZWdhY3ktdHJ1bmsKKzQxNzY5IDdjNGQ1YjM4YzU1ZTY2MmE2NDEwODg2NGEzNGI5ZTRlNmIwOTk3NzUgbGVnYWN5LXRydW5rCis0MTc3MCBiNzBiM2U1YjNjZDFjOTZiNzI5OWJiYjRhZjA2YTJjMmQzNGNiZTk5IGxlZ2FjeS10cnVuaworNDE3NzEgYjhiMzc4MmIyZGMwNzViZTI3OTQ2YmE1YmQwNjc0ZGZjNzM4Nzk2YSBsZWdhY3ktdHJ1bmsKKzQxNzcyIGU5MGU3ZDllOTg5MTA5YTEwMTk3OTAyY2IyMzg1ZDdmMDcxNGVhMjIgbGVnYWN5LXRydW5rCis0MTc3MyAzNTU5NjMwN2U3ODYwMjFiMTBiNGMyZmZhMTdiNDk1YTQwYWNkZTAyIHNzaXplX3QKKzQxNzc0IDk2M2Q3NDljOTc3NjQwYzE5ZWM0ZTcyZmE4OWExMjc2ZDQ1YmIwMjEgc3NpemVfdAorNDE3NzUgNWE4NzY0NGEzOTAwMGY1NWMxNjk4NjZiMmU3ZTY0MzRlMjUwYjFmNCBzc2l6ZV90Cis0MTc3OCA4ZGQzNWRkNmIwZTg5Y2NlNTkyYzcxMWU3YjI5MTIxMmNiZWFkODgzIHNzaXplX3QKKzQxNzc5IDNiYTIzMGM3N2Q0MDAwMzEwM2M5ZTEzZGMwNTg2YzM1NGEyNTFhNTIgc3NpemVfdAorNDE3ODEgMTZlM2VlYjg1MjA2ZmRhMmYwYmQxYmFiYjc3N2E3ZmE2YjM4MmVmMCBzc2l6ZV90Cis0MTc4MiA0ZDFmM2VjNGVhZDU5NjhhNzJlNWNkOTRlNmM1MTU5ZWQ3N2VhOWY0IHNzaXplX3QKKzQxNzgzIGQ2ZWExNTMwZGEzMDA0MzU1YjYzN2UzYTg4MzhmMzE3NmFkZDI5ZmIgc3NpemVfdAorNDE3ODQgNDJhY2YzM2FhM2M4YTI4ZjBlNDgwM2MwZDMxNmVhNThkN2UyMjIxOSBzc2l6ZV90Cis0MTc4NSAwOGU4MGEyYmY0MGNmODU1ZDNmM2Y3ZTlmYTUwZGJiMDExMTFjOWFlIGxlZ2FjeS10cnVuaworNDE3ODYgOTg4ZmRmMDI1MmI3OTRkNzA2Y2Q1YTAyMjA3M2ViYzI5MDk3MWRjZSBzc2l6ZV90Cis0MTc4NyA2MTcwNmU1ODFlZjljYTQ0OTkxNGM3M2I5ZjI5NDY1OTY5ZjljMzY5IGxlZ2FjeS10cnVuaworNDE3ODggZjJmYTQwZTg4MzYzMGI2M2VjZTNlNDk1YTU0YWI2NjFlNjUyY2RlNCByZWxlYXNlMjQtbWFpbnQKKzQxNzg5IDkxM2E4MGY0NThlNjg3NDc5YTZiODhkNTI5Yzc3NjhkYzJkM2YzOWIgbGVnYWN5LXRydW5rCis0MTc5MCBjODA4OTdiYjUwNTNjZWVkODc4ZjMxYWI2M2UzNDBlN2MwMjNjN2I5IHJlbGVhc2UyNC1tYWludAorNDE3OTEgMmE1ZTYwMDlhNDQ1MjcwMzIxNWM4NDVkZjEwNGM3MjkxNTAyNTZhZSBsZWdhY3ktdHJ1bmsKKzQxNzkyIDUwZmE1OGEyNGU2MGY0MTcwZTc3OTU5NmJiNTVlOTZkODBjMWZlZDQgcmVsZWFzZTI0LW1haW50Cis0MTc5MyAwY2YzMjQ4ZTI3ZTY1OGE2ZWE0ODEyOWMwYTI0NjU0YjQ2ZGUyNTgxIGxlZ2FjeS10cnVuaworNDE3OTQgM2VkNWE0YWNiZTdjYjNiOWNiZmZhN2YyYWRlYmZiYzkxNGVjMTIxZCBsZWdhY3ktdHJ1bmsKKzQxNzk1IGE5M2JlNTE5ZjllYzQwNzI0YzdhMGJiMTgxNGMwOTc4MTZkMjNhZTAgbGVnYWN5LXRydW5rCis0MTc5NiA3ZWNjNDBkMjA1ODY0MWZjN2NiMzMxZmJlNmM4ZTM1ODYxOTM3MTkxIGxlZ2FjeS10cnVuaworNDE3OTcgNzRiZWRmZDBiZDZiMmZmY2ExZWFhMzI5M2ExNGFkYWZjZGY5YzZiZiBsZWdhY3ktdHJ1bmsKKzQxNzk4IDVjZTQ3MTAzZjg0Nzk0OWUzNTlkMjFhNTAxNjY2NmZjNDk3MDFkZTEgbGVnYWN5LXRydW5rCis0MTc5OSAzYTM5NDMxYTU0YTUzYWI3NjMzY2I4YTkyMjkxYWQ3MjA5OWIyMDU4IGxlZ2FjeS10cnVuaworNDE4MDAgMzRhNTE1NGU2MTFjYzEwNjk3MDdiOGE3ODgwOTU1OTUzNzhkNmY1MSByZWxlYXNlMjQtbWFpbnQKKzQxODAxIGYwMTEyNTNkM2M0NzBkMzM5MWUwZWM3MDMwNzgyNDllZmIwOTk3ZDQgbGVnYWN5LXRydW5rCis0MTgwMiA2MzBkMDFmZWNmZWM2NDFlNGZjYWMwNGEyYzc4ODNhOGQyYjZiZmRkIGxlZ2FjeS10cnVuaworNDE4MDMgNTZkZGYzYWExMmIxMWNjYmFhM2NlZTlkOTE1ZGMzMTJiYWNjMzBlNCBsZWdhY3ktdHJ1bmsKKzQxODA0IDk4ZTI1OTVkNzM3ZjAxYzMzOTliMmEyNmRlNzAyODc4YzJjMjAzZTUgbGVnYWN5LXRydW5rCis0MTgwNSBlOWExMGY3NGNmODhhYzdlMzdjMjhlMDk3OGE0ZjFkMTRkNGFjZGU3IGxlZ2FjeS10cnVuaworNDE4MDYgMDNkYmVjMGQ5NTA0NmUxYTFmOTEzNmNhMmM1ODdkZmEzZjQ5ZDg2YiBsZWdhY3ktdHJ1bmsKKzQxODA3IDc2NzQxZTczYmI2NDk3OGM5NjdhODBmYzI4YWMwMDJhM2MyNDNkYWIgbGVnYWN5LXRydW5rCis0MTgwOCA3ZDZhYjlmMzk5OTZjY2ZhMjk3MGFiMGZhZjg0MWE1ZTM5MzAzZjUzIGxlZ2FjeS10cnVuaworNDE4MDkgMDQ0ZDM1Y2EzNDI0N2I2ZTc5MjFkOGUyYWRiN2Q4YTM3NWUzZGZmZiBsZWdhY3ktdHJ1bmsKKzQxODEwIDZjYjU3MzliNzFjZTBiODRjY2UxNzE5MTNmZmM3MzdiYzc1NzQxMTUgbGVnYWN5LXRydW5rCis0MTgxMSA0M2JjN2NhMmQ5ZGZiODc5YmJlMDM0YWM4NjY3Zjk2N2FkNzQ4NTNmIGxlZ2FjeS10cnVuaworNDE4MTIgNjg2MzA2YTY3ZTliMjQ2MjVmYWY1MGZjYzk4MjE2ZTBjYzFjY2IzMyBsZWdhY3ktdHJ1bmsKKzQxODEzIGNhZGM3NzhhZWM3OTZmMjM1NDQ3YzQ1NTU3ZDFmY2YyZjVkODkxNjggbGVnYWN5LXRydW5rCis0MTgxNCA2ZjA2MzhlN2JkMjM2ODhhNDg2YzA1ZTkzMDBlMGY4MDlkMTU5OWZjIGxlZ2FjeS10cnVuaworNDE4MTYgNTM2ZjI0ZTE2YWYyNDY4MDIxOTdiYWVlZjNiMTM0Njg1ODcxYzlhZSBsZWdhY3ktdHJ1bmsKKzQxODE3IDE2Mjc3NzE4Y2ViOWFlNjYzMWYyOTc1NTdmNWM4MTk5YmJkYzVhYWQgcmVsZWFzZTI0LW1haW50Cis0MTgxOCAyM2ViODY3N2JkYWQxMzhmZjZkZWQ3YjM4OTYxOGMzNzMzZTg5OThmIGxlZ2FjeS10cnVuaworNDE4MTkgNzZkNTExOTcyNjE2Mjc3ODhhZDQ0YzYzZmViMWI2NDI0OTJjMTg1MiByZWxlYXNlMjQtbWFpbnQKKzQxODIwIGU0MzE2ZGExOWNmYzFkOTRhZThiNmZkNTUyYzY1NWI3OTE4OWFhZWUgbGVnYWN5LXRydW5rCis0MTgyMSAyMTQzMzcxYmI5MWZjMjM3ZTNmOWQ1Yzk3YzRhNTM5MDJkNjIwYjUwIHJlbGVhc2UyNC1tYWludAorNDE4MjIgMTU2ZGY3N2Y5OTJlYmVmZGY2ZTg4ZTFlZGU0YWQxMmVjMDM2ZTNkYSBsZWdhY3ktdHJ1bmsKKzQxODIzIDU5YTg5YjU4OGMzMDk2YTM2YmU2OTBmNGYxOGJkYmM3M2Q1YjQ2YTkgcmVsZWFzZTI0LW1haW50Cis0MTgyNCBlMDZkZjVlMTNkYjlkYjcxNzM3ZWNkNzkzMzQwYTYxZDZiOWNkZjNjIGxlZ2FjeS10cnVuaworNDE4MjUgNzMwZjg0YzJmZGRiNWIxMTY0OWQ4NzlhYWE0MGI2YTZlYzJhZGRmNCByZWxlYXNlMjQtbWFpbnQKKzQxODI2IDQ5ZDYzZjM3N2ZlNzJkNzE5NWYxOTIyYmJjZWQzYWVhOWQ5YzhiOTMgbGVnYWN5LXRydW5rCis0MTgyNyAxNGYwMDJjZDAzNzFiNGE4N2UyZmFmOTg3MzAzNDg5ZjE0ODYyZDcyIGxlZ2FjeS10cnVuaworNDE4MjggYzg4NmNiMTZhMTU2NDY1NjhkMjJiNmJhZDY5NGRmMTJiZjhkOTQ4OCByZWxlYXNlMjQtbWFpbnQKKzQxODI5IGYzOWJkYmY0YjBjMWI3ZmI0YTk5OGZhN2RiOWVlYmJjNWFiZjM1YWQgbGVnYWN5LXRydW5rCis0MTgzMCBhNmFlMTAyYTZlMTE5ZWYzMTdjNjRkNzdjZjAyZjYyYWFlNmE3NDc4IHJlbGVhc2UyNC1tYWludAorNDE4MzEgYjU0MGI2MDc2ZmQ5OTE1ZWQ4ZDhhZTNlNjI1MDg0YjUzNTViNGVkYiByZWxlYXNlMjQtbWFpbnQKKzQxODMyIDdjYzIxNWYwYzA5YjNiZjFlYzI3ZDQxNmJhMDJkM2FiNjRlMGJkYzEgbGVnYWN5LXRydW5rCis0MTgzMyAyMzM5NzVkYTI0N2UyMmFlNjhjMGY3ZDkzZjY0NDNlMTgzZTljYTE4IHJlbGVhc2UyNC1tYWludAorNDE4MzQgOGU0MzhiZjc2Y2JiZjI1MDYyYTU1NGFjODU3OWRjNjk2Njg2ZDYxNCBsZWdhY3ktdHJ1bmsKKzQxODM1IDEwMWI2MWE5ZWVkMmU1MThjOGMzYTVmMDliM2FjODYwZDMzYWVmNjggcmVsZWFzZTI0LW1haW50Cis0MTgzNiA4MmE1MmE0NjRhYTI1NmNiYWI3N2U2NWRmN2I0OTM5NTE4ZDRiMjQ3IGxlZ2FjeS10cnVuaworNDE4MzcgNzRkMTZlYjJjYWJkZDJlYTQzZDNiMTcxMTExMWU2NDBlNGI2NWRlOSByZWxlYXNlMjQtbWFpbnQKKzQxODM4IDIyZGJmNTgxOGIwYjI5NGU0MWY0NzQ1OWU5MDA3Y2QxMGMxNmZlYmMgbGVnYWN5LXRydW5rCis0MTgzOSA4NTBmN2QxZTRjYTI3NjQ1ZjMwOTViNjhhM2U2NWJjMTU4NDc1MzM5IHJlbGVhc2UyNC1tYWludAorNDE4NDAgYWE3MDcwNDE1MDVkODk5YzMzNDI4NzcxMWFjYzliYmY1ZDQxMGM3ZiBsZWdhY3ktdHJ1bmsKKzQxODQxIGU0NGE4MzNlY2E0MzM1ZDg1MTIyYTI2NjdmM2NhZDdjMmM2NmIwOTcgbGVnYWN5LXRydW5rCis0MTg0MiAyZWI3OGY1ZDE0NTAwZTQ2NTJmM2JjZDU3MzhjNmNmM2U0NGQ0Y2JhIGxlZ2FjeS10cnVuaworNDE4NDMgNzNkYTU5MWY5YmRiZGQ1Y2U5NzgwNzI2MTVhYWE3YTFkZjdiMDE0MiBsZWdhY3ktdHJ1bmsKKzQxODQ0IGY5MjgxMjgzYjEwOWE0OWJkNDI3YmY2NzcyMWJkYmQwOWFhNWM4NzMgbGVnYWN5LXRydW5rCis0MTg0NSAwNDJlYjNkMWNlM2YzMzhhZTYxZTM1ZjNjNWViZjc0ZGE1MGE1MmVmIGxlZ2FjeS10cnVuaworNDE4NDYgOTYzYTk4ZDhmZTJlNGQyY2ZmMjdkNjg3MjU0MzRlNzI0MTNkN2VkMSBsZWdhY3ktdHJ1bmsKKzQxODQ3IGZlOWJkMjFmMjdmMjI4OWQ1MGVlMjYxNDM3MTc0NTVkNDhjYTUzODcgbGVnYWN5LXRydW5rCis0MTg0OCBjNzFjYTFjZDM2M2I3NWYzNDhlYTc2NGJmZjRiNzNhNDFiOWQ1YTZlIGxlZ2FjeS10cnVuaworNDE4NDkgOTZlYjJhNWNmYmVmNjIzZWVmZDBiNjExYWRmMzg3MTVjODM5Nzk2YiBsZWdhY3ktdHJ1bmsKKzQxODUwIDM0NTFiMTA5YTI0YzU2M2U5MWFjOTgwODRhZWM4MmY1MjM3MDg2NTAgc3NpemVfdAorNDE4NTEgMjk4ZmMzMjY5MzEwYmU5ZDdhMTc5N2U5NWQ2ZmE1NWIyNWYyYzc1YiBzc2l6ZV90Cis0MTg1MiAyNjEwN2M1ZDA1N2MxZmY4Yzg5MWU3NDU0ODZhMDM3OGY3MDhiNThiIGxlZ2FjeS10cnVuaworNDE4NTMgZjQ1MDc3NzRkNGU0MWZmZTRlZTk1NDBhMTAyNGU0MDIwYjgxMzMxNSByZWxlYXNlMjQtbWFpbnQKKzQxODU0IGQ5OTNhM2VlODkxZWQ4MmE0MWM1MzdkNmZmNDgwOGJiZmFkNjY5OGYgbGVnYWN5LXRydW5rCis0MTg1NSBjZmQxZTFmNGZkZGRiMTI3Njk3NWZiOGZkMjlmZDYyMmViMjc1ZTlhIHJlbGVhc2UyNC1tYWludAorNDE4NTggMWU1OTViNmM5MjRlMTcwOGY1YmIyY2YwYmZjOWYyNmIxOTFiZmU3ZiBsZWdhY3ktdHJ1bmsKKzQxODU5IGJiNTFkNmM2YTNlMDNhMzkzZWM4MzY2ZTA0NmRjMDMzYTBkNTViMDkgbGVnYWN5LXRydW5rCis0MTg2MCA1MDg4NmQ0MmI0NDRlNDBkN2U5MzYzYzFhYjYyYTI0MDI5MTI5MDcyIGxlZ2FjeS10cnVuaworNDE4NjEgMTQ3YzM1ZjQzNWEwYjVhZDA4MTcyMDhjNmZhZWQ2NjU1N2Q5M2YxYSByZWxlYXNlMjQtbWFpbnQKKzQxODYyIDZmMjUwMjlkZTlkYjQzNjg0NzE5NTI5OTZmOThiNzFkYjRmNmMyMmIgbGVnYWN5LXRydW5rCis0MTg2MyA4MzRkZDY2NGFlZmNhOWZlMzUzMmYwOTE1MDJkY2I1NDNmNDY1ZmI1IHJlbGVhc2UyNC1tYWludAorNDE4NjQgOGEyYWI1ZjUxOTMyZmVhM2ExMjJhNmUzODkyZGFhOTY2N2E1MzQwMiBsZWdhY3ktdHJ1bmsKKzQxODY1IDY1MjQyOWM0ZjJhNDkyZjczY2U1YTg5YTQwNDgxZmE4ZmM3ODJlNjAgbGVnYWN5LXRydW5rCis0MTg2NiAyNjZiYmRmOTFiYjUzZTcyYjIyZmM1ZGU5N2VmZDM2ZjkwOGM2ZGEwIGxlZ2FjeS10cnVuaworNDE4NjcgMDBkZjA1ZmE4MTYxNGFlNjA5MjFkZjQzMTM5MGIyYmIyYTdhOGNkYSByZWxlYXNlMjQtbWFpbnQKKzQxODY4IDA5ZWQ2YzliZGJkOWEyOTVjNWMyYzhlMDA5M2FjMDc2YWI4ZTFkYjggc3NpemVfdAorNDE4NjkgYzE4NTA0Y2VmMmJhNjVhYzMyNTEzNTIxMzlmNDM5MWY0YjczMWYwZSBzc2l6ZV90Cis0MTg3MCBjM2FkYzc3ZWIyODkxZTIwNGYyYmNlZDdlZjMxNDBmZGUyZmYyNDdmIHNzaXplX3QKKzQxODcxIGY1NDQzYmRmOWIwZGY4YzE5M2ZhYTc2YWNmZjhiNjU0NmExMGZhZjIgc3NpemVfdAorNDE4NzIgMTI0ODRiNjU5ZmE4NjdhODQ0ODMzYTI2Y2VjMjY4ZjQyOTI5M2I5MSBzc2l6ZV90Cis0MTg3MyA0NmZmNWM1ODZkODYzOTcxMGViMzNkMWEzMmI2MjlhNjk4MzYwN2Y1IHNzaXplX3QKKzQxODc0IGEyMjdlZjI2YTE4ZGJkNDJkODkyYjcwNDY1ZDQ4Y2VhOGQwMmM5ZWYgc3NpemVfdAorNDE4NzUgNTBhNDc1MjFiNDBmNDMwZTVlYmVhNDdiOGM5ODNjMjIwYTUxNzZmMiBzc2l6ZV90Cis0MTg3NiBjODhhODMwZDgzMWMxYmYzNzI2MGY0NTEwNTBhOTdlYzZkOGFlM2FiIHNzaXplX3QKKzQxODc3IDI5MjQzNWE3MzJlOGMyNDlmOTFlOWNiZmIzYTMwYjRhZDIzMGM4NTkgbGVnYWN5LXRydW5rCis0MTg3OCBhZGU0NjM3MWYwNGIwNWM5YTBmNjYyMDM5NjMxYTc5YTA0NThkZGQ2IGxlZ2FjeS10cnVuaworNDE4NzkgNmRkNjI1NDJiNmU1ZGJmOGUxZjBkZTM0YzFhM2Y4MzlmNTBlYzViZSBzc2l6ZV90Cis0MTg4MCA4NWIyZDgwNGFjMGFiYzc4OTk0Nzk5NmNmYzU0M2Y5OTM1ZGRjMWQ5IGxlZ2FjeS10cnVuaworNDE4ODEgYjkwODY1NDQzODJlMjIwODIzNWY3NDljZTE3MWU4ZTI4NDQyZjcyOSBsZWdhY3ktdHJ1bmsKKzQxODgyIGYzMjFiZTM0Yjg1ZDVmNTU4NDdlZjNiNTA5OTc3MjhhOWNkODNiYmUgcmVsZWFzZTI0LW1haW50Cis0MTg4MyAwM2EwYjE4YTc1YmY1ZGRjODA0ZGYyOWVmODA0MzViOTQzNTFhNTU0IGxlZ2FjeS10cnVuaworNDE4ODQgYTgxMWViYTMwZmE0ZGYzYWZiNzcwMjgxZWQ4OTFkZTg4ZjE3NmFmZCBsZWdhY3ktdHJ1bmsKKzQxODg1IDliOWNlZDRkNzkyMWY2Y2ExMzVlNDI0MGRkMzhkMTk4M2ZkMTgyYjggbGVnYWN5LXRydW5rCis0MTg4NiAzZjYyZDMxZDU5ODVhYjI4ZDE2ZjAxNjBmYTBiYTg4MTM3NjdjM2M1IGxlZ2FjeS10cnVuaworNDE4ODcgNDMxZDZlODdiOWZlMGJmNGJhNGNlZDlhYjM2NmNlMWVjMDY2OTc0NiBsZWdhY3ktdHJ1bmsKKzQxODg4IGIyNjQ4Y2EyMzFlODAyNTMyZDQwMjYwYWU1MzViOTNkNGJiYzQyY2UgbGVnYWN5LXRydW5rCis0MTg4OSA3OTcwZTAyZmM4NDdiODUxNjBiN2U2ZmVmOWY5NmZkMzkzNmJlMTVkIGxlZ2FjeS10cnVuaworNDE4OTAgYzgyOTc1ZTkxZTk5ODVjOWZkZjUxM2FmNjgyYjQ0MzJlYTk1YzQ2NiBsZWdhY3ktdHJ1bmsKKzQxODkxIGJmN2VlZjUwNzJiNjkxNjkzYjM2MWMyZGZiNzY5MzIyNDBmMjViMzkgcmVsZWFzZTI0LW1haW50Cis0MTg5NCA4MWZhNDdkMmQ0NzdiZDliZjhlNjk0ODE1OWE1OTg1MTg3N2E0ZmU2IGxlZ2FjeS10cnVuaworNDE4OTUgZWU5ODRmZTk4MWI0ZWZiYTllM2IyOTFiMDVkMmE2ZTYyMTNkNzk3OCBsZWdhY3ktdHJ1bmsKKzQxODk2IGY4MGVlMTQyNzI3YTg2MmQyZGVhOWI1NzVjZGRjYzVjZmQzOWU1ZGMgbGVnYWN5LXRydW5rCis0MTg5NyBkZWU5MmVjYjhhMTEzY2YyOGI1MjU5NjQwYmNmMzQxNTJkOGQ0NzYzIGxlZ2FjeS10cnVuaworNDE4OTggYWE0NTY0NDkyNjYwM2IwNGM1MTUyZTc3ZTZmMjQ2Njc4ZDcxNzc5YyBsZWdhY3ktdHJ1bmsKKzQxODk5IDc5ZTcwZmE4YzIxMmZlYzcwMjBlYTJlY2EzMTI1ZTEwNzZiMTczZjggc3NpemVfdAorNDE5MDAgY2VlZmNhY2U2ZjI0OTlkYjUwMTQzNjYyZmRlODZmYjBiYzUyM2FjYSBzc2l6ZV90Cis0MTkwMiA2YzgxNDVmZTQ5NWVkYzkwNThjOGMxNDdlZWExMTk2YzAzYWFkNWVhIHNzaXplX3QKKzQxOTAzIGVmMmQ3YjlmZGU3Y2Y5ZTRkOTVhYzFhMjBmZWMwYWEyOGZhOWNlNGIgc3NpemVfdAorNDE5MDQgNjkxZWU1MjRmMDI3NTRhOWJkZDI3OGIxNTllZWYxNTMyYzg4YTQ5YyBzc2l6ZV90Cis0MTkwNSA3NjU0ZGEzNmZlOWNjYTg2OWUwM2QxYTE2MDUzMDYzZmUzMzY3YThmIHNzaXplX3QKKzQxOTA2IGYwNjEzM2JjYzA1ZTY2N2IwNTM1YzkwOTE3N2QxNmE4NzUyNDQ3MmIgc3NpemVfdAorNDE5MDcgNTJhNzRhMzIzNjgyMDY3N2NlMTEyNzU5ZjMxODQ2NWE3MThmMDk5YyBsZWdhY3ktdHJ1bmsKKzQxOTEwIDYxNDk0ODNmN2EzZDU1NDNjOGM1ZDc3MzAxZGU3ZTU2NjQ4ZjkyMzcgbGVnYWN5LXRydW5rCis0MTkxMiBlY2ZlZDFmNzQ3OGNjZGI4NzkyMTI0MmU5NzkyOGFhZDkxNTUyNDcyIHJlbGVhc2UyNC1tYWludAorNDE5MTMgOTIwOGE3OWY1NjgzY2RiYjQ5NThjOTI3NTk5YzZhNTczMWQ0MmFmOSBsZWdhY3ktdHJ1bmsKKzQxOTE1IDAzNjA4ZDY2ZTU5ZjBjNTQ0MDAxYmZkOGU3ZWI4ZjVjZWJjM2RhZTIgbGVnYWN5LXRydW5rCis0MTkxNiAwYjEwZTg1NWRhZGY2NDgyMGUzNmExZWI2ZWRlMWFhMjBjNmUzZmQ3IHJlbGVhc2UyNC1tYWludAorNDE5MTcgZWE2Y2QxYmU5ODM3YjUyODk1MzRiYzUxN2M2MWQwMTBkNWM4ODg2YSBsZWdhY3ktdHJ1bmsKKzQxOTE4IDI2YmU4YjFkMTg1MzAxN2RjNDg1ZDliZjM1MzkzZjYyYWNmZTQ0ZTcgcmVsZWFzZTI0LW1haW50Cis0MTkxOSA5MmVmNTZjOTdjZGY0MjEwZWQ2M2U2YzRhZTAxMDJhYjdmZWQzZDZhIGxlZ2FjeS10cnVuaworNDE5MjAgYjM0ODIxNjRhMTAwMzgxNDViMThlN2ZmMGYxYmM1ODkzZWU4ZTFhZSBsZWdhY3ktdHJ1bmsKKzQxOTIxIDQ0ZjA3NjBlMjRhMTY5ZWRhYjgzZjQ0NWUyYjc5ZmJjZjcwYWRmNDcgcmVsZWFzZTI0LW1haW50Cis0MTkyMiAzOGIwZmU1MWIwYjRmOTk1ZTVjOWQ1ZmQ0ZTgwYmJjYzcwZGUyOTQ4IHJlbGVhc2UyNC1tYWludAorNDE5MjMgNDRjZmNhNjEzNmM2MzgyYTZlOWFiYmE5MzBiMWNjMTIwOTliMTA3MyBsZWdhY3ktdHJ1bmsKKzQxOTI0IDAzMjkyNGU3NWMyNGJhMDBkYmYxNjFiZjhiYzZiNjY5OWQxYWIzZWIgbGVnYWN5LXRydW5rCis0MTkyNSAwMWNiZWQ1ZTg3MzEwNzBiMTdmMzQ4OGY1ZDUwYzVhYTdjMDI5YThkIGxlZ2FjeS10cnVuaworNDE5MjYgODc5MWU4YzQ0OGIzMWUzMDA3NGMzMTc3ODI3ODkzMDBjMWI1MGI0NyByZWxlYXNlMjQtbWFpbnQKKzQxOTI5IDgyNWEwNDE4MTNmYmVlMDc4YTNiZmYzZjExM2RlZjNhNGVhZTkyNzQgbGVnYWN5LXRydW5rCis0MTkzMCAyMTUzMWUzOTIxMTZhMDYxZmVhMzE4NTU4OWQ0NTZmY2UzYmUxMTcwIGxlZ2FjeS10cnVuaworNDE5MzEgMDNhNTc0MWNmZWE5ZjYwYWJlZjNjY2U3ZmJhYjNmYmFlNzJiOTgyNiBsZWdhY3ktdHJ1bmsKKzQxOTMyIDgzMzY0NzYzYzdiMmM2YTgzOTIxMTI1NTM5YzU5OWI3NTM4MGMzNDEgbGVnYWN5LXRydW5rCis0MTkzMyA2ZDc0M2U1YmFmMTQ3YWU0YjUxYzQyYjkyYmYyNDYwOWJmZjI0MWNmIGxlZ2FjeS10cnVuaworNDE5MzQgY2VlMDU5ODBmMWZkMWM1MjNmMzQyMzcxNjVmZjk4ODQyYTIzYzE5NyBsZWdhY3ktdHJ1bmsKKzQxOTM1IDliODg4NWM5ZTU1MWMzOWNhNDM4OTgwYTcyNDNmMGY2ZDE4NDM2MDMgbGVnYWN5LXRydW5rCis0MTkzNiBjOWRhMDhkNDgyYzM2YWZmYTk5MTY1YjJjZTU0NTdmNDdiZTg2NjBiIGxlZ2FjeS10cnVuaworNDE5MzcgMjQxMDc4ZWU2ZTg3YWU4NjNlM2ViMTE0ZmRlMTVmMzM3ODQ4YzQ1OSByZWxlYXNlMjQtbWFpbnQKKzQxOTM4IDY1ZGYyNTY3NGQxYWVmNzJkMjE3MTY3MjMyNmQ4NDQwMmI5MjA2YTQgcmVsZWFzZTI0LW1haW50Cis0MTkzOSA3N2I0YWFhZDY5MDNlYmI4ZmRlMWNlOTRiNDMxZmYzNDJmNTMzMWIyIGxlZ2FjeS10cnVuaworNDE5NDAgZjcyM2UxOWZhM2I3MWEyMGIyMWZkZTc0MDJmOWViNTg4YmJkYWZmMCBsZWdhY3ktdHJ1bmsKKzQxOTQzIGIxMzljOTk5NjY1ZDk5NzkyNjg5ZmMzYjJjY2VjZTA0YTQyNDUyZDUgc3NpemVfdAorNDE5NDQgMTIyMDU4ZGZiYTc2OGE5M2Q5MmZkYmExOWE4NTljNTk4NzU0MWQzZiByZWxlYXNlMjQtbWFpbnQKKzQxOTQ1IDZlMTc5NjhkNGRlOTJiMTYzMmE4M2ZmODYyNWYzODJmMjQ0MmQyZDcgbGVnYWN5LXRydW5rCis0MTk0NiBhMWIxZTQ1MWQ4MmU4NWU3OTRmYWNmOTJlNzJhZDFiZjMzZjc2OWY3IGxlZ2FjeS10cnVuaworNDE5NDcgNGM4YTc0YTIwMjI3ODM0ODNjOGMyYjczOGE0YzliY2IyMGUzMDRjYiBsZWdhY3ktdHJ1bmsKKzQxOTQ4IGNmNjllMzE5MTIxODI4YjRhNzUyYWJkODFmZmI5YmMzMjVjNmFiMDEgbGVnYWN5LXRydW5rCis0MTk0OSAxNjg1ZGNkMmY5Mjk5M2NmNTFlNWUzM2M5ZWZjMDI0M2ZmNzNhZTZkIGxlZ2FjeS10cnVuaworNDE5NTAgNTZhZDlmMjc1YmVjMTkzZDI5NjNjMGJhMjI1NmEwYTU4MzI2NzY4MCBsZWdhY3ktdHJ1bmsKKzQxOTUxIGJiNmZhNGEzMWYxNTI5NzYwMzllM2I2N2UxYTM4N2FjMDg2ZGI2MWUgbGVnYWN5LXRydW5rCis0MTk1MiAwMjZhZTFiOGE3ZTNiYTA1ZTE0Y2FiMTBlMGYxZmY2YmNhMTNiZGI5IGxlZ2FjeS10cnVuaworNDE5NTMgZTdjOTZjMWQxNDRiYTc0Mjg1NDM4ZTEzNzYxY2U1ZWU4MGQyYTZmNCBsZWdhY3ktdHJ1bmsKKzQxOTU0IGU4ZGVjNzhjZmEyZTNlNmY0ZjMyOGNmMTJjNGY3NzRkZGM0ZWYxN2EgbGVnYWN5LXRydW5rCis0MTk1NSBkZWQ0YTQ5N2ViNzZmYjg3YmRlYzgyZWM5MmI5OWE1MWQ4ZmM1NGIwIGxlZ2FjeS10cnVuaworNDE5NTYgZDNmNGM0NjdlNDM5YTI1Nzg1M2VlNWUyODk4MjlkYTA5MjNlMzE4MiBsZWdhY3ktdHJ1bmsKKzQxOTU3IGE3N2U1YjA0NmE1MDg3NjMzOGU4YzE3N2VlN2ZkMGFhMzJmZDU5ZTMgbGVnYWN5LXRydW5rCis0MTk1OCBiOWRkNDgxYjM5NzJkZDY0MDEzYjVjYjZjYzllZWFjMWNlODQ5Njk1IGxlZ2FjeS10cnVuaworNDE5NTkgZTk0ZWU1OWEyZDQ2MWQ5NTA0YWM3ZmU5MTFjM2VlYjkyNzM3Y2U5YSBsZWdhY3ktdHJ1bmsKKzQxOTYwIDlmNjZiZGQ1YTA2MTIzOTI0MWM4N2YwNWY2MzljYTgyZWUxYzY1NWIgbGVnYWN5LXRydW5rCis0MTk2MSBlY2Q0MjM3MThhMzI3ZGY1NmQ5OTYzYjhmM2U4YzE2NWM3NWYyOGVlIGxlZ2FjeS10cnVuaworNDE5NjIgOGFiNzhmYjRkMTdlZDRhYzE5ZTZkN2U5NTg1OWMxZjMwMDg0YmU1OSBsZWdhY3ktdHJ1bmsKKzQxOTYzIDBmOGM1NTQ2ZDNiZjQ0Yjc1NGYzZTBmZDhhZDAyNzRkZDllMGZkYzIgbGVnYWN5LXRydW5rCis0MTk2NCA5MmUyNDY4YmRiNGE2YTQwMzE3Y2RlYmUzOGU1NzM3ODY4OWQ0ZGZhIGxlZ2FjeS10cnVuaworNDE5NjUgMDBiZGMwOGE1MDdkZWM5ZGEwYzZkZTYzYTExNGNjNGYzNWZlNjNjNyBzc2l6ZV90Cis0MTk2NiBhZjdkNDg0MjA4ZTkyNzFhNGNiYWJlNDU4MjVlNjYzYjc5NjYxZTU3IGxlZ2FjeS10cnVuaworNDE5NjcgZDIyMjRjOGQ0NTQ5MjYyNTQ5M2M5NjI3YTkyY2Y4YzA1MTc2ZDllMiBzc2l6ZV90Cis0MTk2OCA1NTdlOWI2ZWU3ZTExZTZmN2VhNWVhMDQyN2JmYjA0N2IwZTU0NzRlIGxlZ2FjeS10cnVuaworNDE5NjkgMGY1MTg5NjA3MjY0MGFlMTE2NzkyYjE0NjBmZmNiYjNkOTFjN2VmZiBsZWdhY3ktdHJ1bmsKKzQxOTcwIDYwYTVhMWFhMTY4MmI2NzBlMjNlN2ZkZDA5YmJkOTNjMzFlZDY2NTkgc3NpemVfdAorNDE5NzEgYTlhYmRiMTRjZjNiNzhhNDdhOWViYzM0Y2ViNmJhMWMxZmJjN2U1MiBzc2l6ZV90Cis0MTk3MiBhMjY0MzI1M2FjNzk2Mjk0YjNjNjhkOTE5ZDk0ZThmZjZmMTQxZmMzIHNzaXplX3QKKzQxOTczIDA5NjhmMDYyZjM1MDY5ODhiODg2YTRmOWMxYjUyZTRjMjY3ZjFlMzAgbGVnYWN5LXRydW5rCis0MTk3NCBlNzg4MGY0ZjUzYTQwZDMxM2M3YTA0N2Q1MDQyNTIzMzYyMjRhOGI5IGxlZ2FjeS10cnVuaworNDE5NzUgZDNlNjhjYjczOWZiMjU3NWZhNTlhNGNkNDhiMzhlMTVhMWFmNTIxNyBsZWdhY3ktdHJ1bmsKKzQxOTc2IDU5MWRmNTRkMmQzMGYxNGUwNjEyNDVjNjc5ODU0YTQ1Mjg4MGVkYTkgcmVsZWFzZTI0LW1haW50Cis0MTk3NyAzYmE5ZmY3OWJiMjliOTQ3ZWI5N2U4Zjk5MzUwOTFkODUzZDE2ZmU1IGxlZ2FjeS10cnVuaworNDE5NzggODExZDY0NGQxOTE3Njc3MTA1NDc2MWEyN2RmYWU4MTUwZDcxNmJkMCBsZWdhY3ktdHJ1bmsKKzQxOTc5IDRhYzliOGZjZDYzZWE4ZDg1MzEyNjk5NDQ5MzU0ZTJkZWQ3YWQ1OWEgbGVnYWN5LXRydW5rCis0MTk4MSBmMDllNjA5MWE3NjI5ZWVmZmI3NjE2NWIwNzk4YjMwZTNkMjMyMzE0IGxlZ2FjeS10cnVuaworNDE5ODIgOGRmMTk0Mjk0YzkwZGM0YTExZGY5MGJiNWQyZWUzMjI1OTU4NWI0ZiBsZWdhY3ktdHJ1bmsKKzQxOTgzIGQ0MzRiM2M3MzkwMTYwZjM1MjIwOTQzZDVjNDNlZDg2ZGVhY2U4YmEgcmVsZWFzZTI0LW1haW50Cis0MTk4NCAyN2JkYzFlMjdlZWRiN2VjNDU5YmNiOWUzYjA0MzRjOGVmZDZlYjlmIGxlZ2FjeS10cnVuaworNDE5ODUgYzNiNDJiN2JkNmQ5ZGFhZGM0YTk3Njg2ZmViZDg0N2VjYmQ4MDY0ZiByZWxlYXNlMjQtbWFpbnQKKzQxOTg2IDNjMTU5NzZmZjYxODcyYjViOTAyYmMyYmQzZWJlZGFhMDZhMjM4NjQgbGVnYWN5LXRydW5rCis0MTk4NyA2Y2Y3ZDA0ZGNjMWY1N2U2NzMzN2QxNjA5ZWY3ZTZlNTQxMGNlZmJmIGxlZ2FjeS10cnVuaworNDE5ODggMDljMjFhNmJlNjA0MTg0NzhjN2JjOTlkZmMxNWM2MzAzNDE1YjI5OCBsZWdhY3ktdHJ1bmsKKzQxOTg5IDlmNmVkYzg3NDU0MWNkMjljMjQ0MmU0OTExNDBiOWI2MGVhOTZiYzMgbGVnYWN5LXRydW5rCis0MTk5MCAyNmU3OGIxOTZjMTcyNzhhODYwOWYzZWVhMDZmMDgyMzI4NjRkYmVjIGxlZ2FjeS10cnVuaworNDE5OTEgY2FkNTkxZDkyMWVjYjAyZDQwMWRkOTMzOTM0NzYyYjQ3OWYwMzgxYyBsZWdhY3ktdHJ1bmsKKzQxOTk2IDMwM2RlYTg0NzYzOTA0ZmI4NTRjY2M4YjhlNmY3NzE0ZTFmNWFiZDUgbGVnYWN5LXRydW5rCis0MTk5NyA3NmExYzIwZTgzMGU1NWMwMjFhMjVkMzdiOGZhOGFhMDMyMDRiY2Y0IHJlbGVhc2UyNC1tYWludAorNDE5OTggM2MwMzBlZGZmOTg1YTZiYzk5OWJmM2Y3MmM3NzZhYTMyNmI3M2FkYSBsZWdhY3ktdHJ1bmsKKzQxOTk5IDlkZjM5Yzk2MGJmMWM2ODBiYjM0ZjE3ZmNmYmVlNjAzYmU5OGY2YmUgcmVsZWFzZTI0LW1haW50Cis0MjAwMCA3OTBmOGQ5ZTQ5ODg5ODExNjgwMmE3MmZlNzUwNGZiZjJiMDFmOTJkIGxlZ2FjeS10cnVuaworNDIwMDMgNDFlZjI5MTBkZDQ5OGIwZjg0ZThmNGNiYTNhODFlM2RkM2E1NTg5OCBsZWdhY3ktdHJ1bmsKKzQyMDA0IDM1ZGY2ZGQ4MDkxMTBjN2I0ZWRhMzIxZmI3N2M4N2JhYmFlMWIzMmEgbGVnYWN5LXRydW5rCis0MjAwNyAwZDUzMzUzODdiYTczMmM4NGRmOGU1OWExNjMyYzUxZmNmOWY4ODc0IGxlZ2FjeS10cnVuaworNDIwMDggNDc1YjY0NWUxMmY1ZWMwNThjMzI4MGJmNDAyNTg2YWQ1NGM2ZTEzYSByZWxlYXNlMjQtbWFpbnQKKzQyMDA5IDg3NDdiZjRiOTU0MjJjYjIzY2YwNTUxMjE1MWM4MjI0ZGYzMzhiODQgbGVnYWN5LXRydW5rCis0MjAxMCAyMWUxNzhiOTMwMzBkMWJmYTJiYWM2M2M5ZGMwYjA3NGFjMjM1YTQ1IGxlZ2FjeS10cnVuaworNDIwMTEgODRiYTI5OWUyYjVmZWY0MTFiMGE3MWZiODE2ZWQ1NDcyNjA2Y2MzZiBsZWdhY3ktdHJ1bmsKKzQyMDEyIGQwMTA0MzY0ZjZkMWM4NDA4Mjc3MTg0ZWJiZGIwYTMyYjIzZTk1MGQgbGVnYWN5LXRydW5rCis0MjAxOSA1ZDgxNjkyOGEyMjQ1ZTE3NDUzMWVkNzNkYWM3MDY1NjA1ZWNlODRiIGxlZ2FjeS10cnVuaworNDIwMjAgZTFmZDdiZDI4OTViMDdkNDhmZmUzYWY5MDRhMGQ2NTkxMTZlMzBlNiByZWxlYXNlMjQtbWFpbnQKKzQyMDIxIDE5MmU4Mzg5NGU4OThjYWM0MDM2NDg1ZGMwNmQ3ODEzZGFlNzQxMmMgc3NpemVfdAorNDIwMjIgOGI4ZjFhNTE0NjhhZDI0ODExMmE2NWQ0Y2ZmN2Q5NjUwNGMwZDNiNyBzc2l6ZV90Cis0MjAyMyAwZmU3NWEwNDZjMDA1NDgwZjI0YjA5YjViNGFkNGU2MTdlYjkwZGI1IHNzaXplX3QKKzQyMDI0IDRmOTUwN2JlNTg1NzliNDJjZDI5NjcwYTU2YjFjNTA3OTNiNDgwNjQgc3NpemVfdAorNDIwMjUgNjYyYzYzOTU0ZGYyOTRiNzQ4NDQwMDE2NjhlZDZkNDdmNGQ1OTRkYSBzc2l6ZV90Cis0MjAyNiBmZDFiMTJkM2FiYjY5YzM5YWZjODkxYzdiMzE4MTE0ODhlZTZkOTg1IGxlZ2FjeS10cnVuaworNDIwMjggNTI3Nzc3MGJjOWQxYmE2YWJiN2I0ODBhMDViNDQ0OWIwYTE1N2I5MCBsZWdhY3ktdHJ1bmsKKzQyMDI5IGFiMTMwZDU2NjkzMTllOGVhODNlNmQwYzc1ZTAwZjBkMGZmOTVlNzYgcmVsZWFzZTI0LW1haW50Cis0MjAzMCA1ZTJhNThjODY3ZjcyYzM3MWJmYmJjYjVmNjZiNDkwNjAyOWJkNWRhIGxlZ2FjeS10cnVuaworNDIwMzEgZGEwOTk1Y2ExZjMwN2U3ODdjMjRmODFjYzA5ZDY2NTExZmI2MmVhZSByZWxlYXNlMjQtbWFpbnQKKzQyMDQxIDc4YTY5NzU5NTQ3ZWJlODAxM2ZlZDAwZTkzZmY2ZTkxNzc0NmQ1NjYgcmVsZWFzZTI0LW1haW50Cis0MjA0MiAyMWQzMGY4ZTQxZmZkZTY3OGNjNDQwZTIyYTlhMWI5ZGJhOTA0ZTM1IHJlbGVhc2UyNC1tYWludAorNDIwNDMgZTYwOWZlYTkyZDFlMThhNWZlZTFmYWVlYjA0Y2FhOTQxNDM3YjNmZSBsZWdhY3ktdHJ1bmsKKzQyMDQ0IDBiMjMxYzA1YTdlZGFjMTY2ZDQ3YjQyN2M5YjBkYTEwM2M2ZTMyYTkgbGVnYWN5LXRydW5rCis0MjA0NSA4Njk3Nzc2YmI0MjAzN2MyMzI1MzE1ODQ3ZGI1ZDdlY2QyNWUxYjI3IGxlZ2FjeS10cnVuaworNDIwNDYgYWU0NDgwOTM1MDE2MGU1ODMzMjkxNjY1MzJhOGVlMWVhN2NkYTljMiBsZWdhY3ktdHJ1bmsKKzQyMDQ4IGMxMjgwMDAyMTM5Njk5MzFkNWRhMTRkZjVlNzI0ODA1M2ZkMjkzYWMgbGVnYWN5LXRydW5rCis0MjA0OSBjOWVhNTU3MGRhYzdlNmMxZjRjMGY5NDE5ZmExZWI4ZWViMmQwZWZmIGxlZ2FjeS10cnVuaworNDIwNTIgN2NhNTFjYjcwYzJlMjRkYTYyOWY5OWYyMzhiZTAyYjNhZDYyYzM4MCBsZWdhY3ktdHJ1bmsKKzQyMDUzIGI5NGVlOTJhNmQ2YjVlYjU5ZTg0YzhlNDk5NDhlYjNmYzZlZTA0OTMgbGVnYWN5LXRydW5rCis0MjA1NCAwN2ZiZDM0ZjFmNmVkMTMxYWZjYjQ2ZTQ2ZjJjZjMxNzM4ZmY5M2E3IHJlbGVhc2UyNC1tYWludAorNDIwNTUgZWYxZDhkNmFjNmJlZmI2ZTQ4N2FlNDE5MGYxN2UzMjYzNTM3MTIyOCBsZWdhY3ktdHJ1bmsKKzQyMDU2IGVmM2I0MzU3OGE1ZmZhNzcxNDM3M2I1ZjBlOWEyZTljZjcxOGVkNGIgbGVnYWN5LXRydW5rCis0MjA1NyBhMjEyNTNmYjA4Yzk3MmQwMDYxYTI0NWI3MWFiMWJjNWE3NzFhZTY0IGxlZ2FjeS10cnVuaworNDIwNTggZTcwMzNkZmZkNjBjYWU4MzQ5NTYxNzY3YzMwZGZlMzIzZTA3ZTBlMSBsZWdhY3ktdHJ1bmsKKzQyMDU5IGM3Y2ZlYTFlYmIzMjM0MTllMjlhZmRjYjFkZWQ3NWRiNWIyYzRlY2MgbGVnYWN5LXRydW5rCis0MjA2MCA2ZDJiZTNiNzZmMmUyODM2NTczNDU3NGRjYzYzYWZjY2JjMWVkNGUwIGxlZ2FjeS10cnVuaworNDIwNjIgOWVlYWEzM2Y5NjQwNjMzYzYxNjI4YmQ3YWRmNTk5NmU1MGM2Y2NjNCBsZWdhY3ktdHJ1bmsKKzQyMDYzIGIwZDdkMjhjZDc0NjFmMmYxYzM0ZDM1NjkwYzEyOGRmYWUwM2Q4YzkgbGVnYWN5LXRydW5rCis0MjA2NCAzODhlYmM2ZTNkZTExNzk3MzMxNTA3ZDIyOTJiOGFiMTExNjRlMTNiIGxlZ2FjeS10cnVuaworNDIwNjUgZThmYzYwYzRmYWFkN2UzYTc3ZTJmODY5ZmFmMzgwMmYzZTZlNDFlYiByZWxlYXNlMjQtbWFpbnQKKzQyMDY2IDQwNWFiMGRjOWNiYzM5MTNmODg0OWU5MDMxNTI1MWViYzBmYmRlYTIgbGVnYWN5LXRydW5rCis0MjA2NyA0M2IxNmVlZmYyMjZiMmVlZGNjZDQzNTAyOTJjNmRmZTFhYzgyMWE2IHJlbGVhc2UyNC1tYWludAorNDIwNjggMmFmYmFhZTZiODhlMGJhY2QyZjAyN2RmOTA3NGFmM2MzZTBjZjRkNCBsZWdhY3ktdHJ1bmsKKzQyMDY5IDJjODYzMGI2YmMzNTk5NThiMmEwN2U2NTdmM2M4YzU0NjQ1MDBkMWUgbGVnYWN5LXRydW5rCis0MjA3MCAwMjk0ZTY2NjI3NDlhZDRjNTNlZWFhOWZmN2ZhMDRkNGRkYTI2OTJjIHJlbGVhc2UyNC1tYWludAorNDIwNzIgYmVjZWI4ZTY2YjBiYTA0YWQwZDMwOWMxNGJkNjg5NzYzZTM0ZWVlNiBsZWdhY3ktdHJ1bmsKKzQyMDczIDJmN2I1NDAyMmIzYjFlZTNjNmNkNDNkN2E4YTUzYTA1NDkyNjAwYWUgbGVnYWN5LXRydW5rCis0MjA3NCA0ZGJhNjFlNDkwMzdmZWJjOTA4Njc1NWViNjRmMmQ1NzlkNjAyZTNkIGxlZ2FjeS10cnVuaworNDIwNzUgMjBmMjFkYzczOTZmMjNkZTljN2YwYjEwOTI3Y2I3NzYzYTc2NzYzOSByZWxlYXNlMjMtbWFpbnQKKzQyMDc2IDM3MDljZTM3ZmUxYzRmMWVkNmExZGFjNTNmNjUxNzI4ZjNmNGM5OGUgbGVnYWN5LXRydW5rCis0MjA3NyA2NWZlOWFjZWQwMDJiYzhhNTBjNjkxZGQ4Zjk5YmE2NDU4NmFkMGM3IHJlbGVhc2UyNC1tYWludAorNDIwNzggYmMxODNiNWY4YmMxOWRlZmU3MWZlM2E4NGFhOTVkNDhjNWI1Y2NiNyByZWxlYXNlMjMtbWFpbnQKKzQyMDc5IGUzNjQ4YmE5MThlZTQwMDgwNWVjZDNmNDZkNjM5MjllMzQxOTRmNjUgbGVnYWN5LXRydW5rCis0MjA4MCAyYWU0MTZhYWNiODg3NzU3ZGQ5NGU5NTc3MzZhZjYyMDhlNjRmNzg0IGxlZ2FjeS10cnVuaworNDIwODEgN2JiNjRhY2VhZGQ3YzhjNjkzY2YzYjE5NDkyOWFiMjVjNWZlYjQyYSByZWxlYXNlMjQtbWFpbnQKKzQyMDgyIGM0YzkzYmRlMTg1YzdmZjQ0NTFiMDI4MTA4MmU4ZDBiMTBiYzQ1MmUgcmVsZWFzZTI0LW1haW50Cis0MjA4MyAxZWY1MDYzYTBjNmQ5NTRlZjNmZWMyOGVmMWQ1N2FmZWNiZGQ3NmUyIGxlZ2FjeS10cnVuaworNDIwODQgZjYyZDdkMmM1MGRlZWQzNGY4YjZlNDMwNTVkNGYxNTExYWUwNDUwOCByZWxlYXNlMjQtbWFpbnQKKzQyMDg1IDQ5NjZhMzYxZjkzNjQyNDY1ZmJkN2RhMmNlNThiMWZiZWJiMmJmMWYgc3NpemVfdAorNDIwODkgODViNWEyY2RiYWMxMDdiZmYxNzQwNWY0NzI4ZjgyMmEzNmM4OGY0NSBsZWdhY3ktdHJ1bmsKKzQyMDkwIGFlMDdiMGU3ZDcwYTg5YTA3N2MwNDUwMDM5NTZhYWQ3NDI4YTZhY2MgbGVnYWN5LXRydW5rCis0MjA5MSBjNTgzMjE0ZDRjNTEwOTRjOGE0NmQ5N2Q5YzFjODQxNWMyNWVkMzRjIGxlZ2FjeS10cnVuaworNDIwOTIgZDc5ZjA0MzI4NGJkNTA2ZmNhOGYwYzNjN2ZlNjQ5YWZiYjM3ZTEwMSBsZWdhY3ktdHJ1bmsKKzQyMDkzIDFhZjdmNzE5ZWQyOGYyNzc3NWIxYWFjOTlhODU4ZDAxOGFhYjIyNzkgbGVnYWN5LXRydW5rCis0MjA5NCAzZWYxMzgwZmQ4M2MyZWI1Nzc5MmZhMGRkYzFmMTFjY2EyYjlmYTIyIGxlZ2FjeS10cnVuaworNDIwOTUgMmUxNTFiYzgyMGY3MTg0MDk4ZTFhN2ZmOTczOTRhY2NkZDcyZmY0YiBsZWdhY3ktdHJ1bmsKKzQyMDk2IDIxMmJjMjM2MzJhYjVkNDc0OTNjZDE1ZmRhMzEyYTliOWYzMWViYTYgbGVnYWN5LXRydW5rCis0MjA5NyAyZDNhMWMzYzkzMDU2OTEzYjJiYzYwZmYzNWIyMjJjZTg4ZGFiMGY4IGxlZ2FjeS10cnVuaworNDIwOTggNjg3NGYyNjkzZWI4YTBlZWY5ZDY4Y2VjZWJlMTM4YTk5MTZjZDk1NiBsZWdhY3ktdHJ1bmsKKzQyMDk5IGE1MzAxNzYxODU4NjVlZjllYmIwNDIyOWYxZjEyYzYxMDBmNjdkZDIgcmVsZWFzZTI0LW1haW50Cis0MjEwMCBiNTg3NjEwZTIwNjlhNGQ5YzRiNjc5YWU5NGViNGNlNzU0MWMxNzMxIGxlZ2FjeS10cnVuaworNDIxMDEgMWQ3NjQ2MzhhYmRkODAzMTc2YTA1YzEzMjM3YjU0YWNhZTVhYTMyOSByZWxlYXNlMjQtbWFpbnQKKzQyMTAyIGVhNmE0NmQ4YzUxZWMwYWJjOTRmMmJmZTRmYTJjNTQyY2JkN2ZhMDIgbGVnYWN5LXRydW5rCis0MjEwMyA5OGZhYWMxZGY1YmJlZGY1ZWIwZmY1ZjI3MDQxNTQxOTQ2OTg1NGQ0IHJlbGVhc2UyNC1tYWludAorNDIxMDQgMDcwYmI0MjFhMzAzYmNlMjAwMjczNDE5YjBmMTJhODI0ZGFiOWI1YSBsZWdhY3ktdHJ1bmsKKzQyMTA1IDkyOGRlNGEzYmU2ZjU0OWExMGI4MDRjNjgzOWM2ODk1YjAyMWM1OGEgcmVsZWFzZTI0LW1haW50Cis0MjEwNiA1ZThhZjI0MjM1NzUwNjM0MWI3MjIzZDg5NmVkM2Y5NGU0NmE2YTc0IGxlZ2FjeS10cnVuaworNDIxMDcgZmRhOTEyZmU4YjlhZGM0MDc4YjE2ZDJhN2ZiNmJhZTczODU2ODQyOSByZWxlYXNlMjQtbWFpbnQKKzQyMTA4IDc2YWJhM2ZhNGUyZjgxN2I1ZTUzMWYzMzk3ZGQ4ZGQxNTAxMTM5YWUgbGVnYWN5LXRydW5rCis0MjEwOSAxN2YwOTk0NzllNmI3M2RjZWU1ZDY3MjU2MGM3ZTcyYjk4NzgyODUxIHJlbGVhc2UyNC1tYWludAorNDIxMTAgNGJjZjVmZTU0ZDgzNDBhYWQ3NGNlM2IyNWNjNjAzZGIyYzQyYjlkOSBsZWdhY3ktdHJ1bmsKKzQyMTExIDllYWUzMmJkZjgwMWI2NzAxYmM3YjlmOGU5ZDhkMjMwMzUwOTlmY2MgcmVsZWFzZTI0LW1haW50Cis0MjExMiBhYTdhYzkwODdhMWMzMDYzMmFiZmQ3OTUwMjA4NjQ3NTAxYWI2NzFlIGxlZ2FjeS10cnVuaworNDIxMTMgYzJiMTQ5NzMxMGQxMDE1OWJjM2M1MzQ4NWVhNzBhOTRjYTFlMTM1MyByZWxlYXNlMjQtbWFpbnQKKzQyMTE0IGFlZDMyY2UzNWI4MmRmZmFkN2U1YjI5Y2E2YmIyZTEzM2E4MDZkY2MgbGVnYWN5LXRydW5rCis0MjExNSBkNDhmNGE0YTMwNmY1OTNlZjBhMTE0ZGMxNWMzNjBlMTcwMDVlNTEzIGxlZ2FjeS10cnVuaworNDIxMTYgNTgyNTFjOTkwNGUxODkyNzA0NDZlNjMzNWVhMzBiMjU1ZGE3YTc5NCByZWxlYXNlMjQtbWFpbnQKKzQyMTE3IGViNGE0N2I4MTk0MjRjY2YzNjk4MTFjZDZiMzIyYWE4MGE2YjdkNTAgbGVnYWN5LXRydW5rCis0MjExOCBiMGE5YThkMTRhYjIyMjQ0YzBhYjA0YTNjNTMwOGVhMmJiMGZmODEzIGxlZ2FjeS10cnVuaworNDIxMTkgMzE1ZjQ0MDdhYjEyZDU3N2UwMDdlOGE3YzczYzZhNzBiYjgyNGE1NiBsZWdhY3ktdHJ1bmsKKzQyMTIwIGY4ZmNjYWU2YTBmNWRjODI4N2YwNmVhNzc2NTJhYzRlMGIyZGJiYjUgbGVnYWN5LXRydW5rCis0MjEyMSA2ZTEyNzA3MzcxYTEzMGVlZDQyZGIxMjAyMDBlOGU2ZjZlNjEyODVkIGxlZ2FjeS10cnVuaworNDIxMjIgMThhMmQ3NWEzYzY5NjQ0ZjcxM2MyNTU5YmMzZTk5NTg3ZjViMTFiZSByZWxlYXNlMjQtbWFpbnQKKzQyMTIzIDNhOTJlNTY1NDc0ODVhZDg4ZGZkNmI4ZGNiMWU0YWM3NWE5MDRhYTMgcmVsZWFzZTI0LW1haW50Cis0MjEyNCBiYTE2MDQ2NGE4YzZjMTljYTEzMzk4ZGNmZTZjZTljNzhiMDVjMGZjIHJlbGVhc2UyNC1tYWludAorNDIxMjUgMDRhOTZjYzg4NTgzZWMzYzIxZjkwZjNhZjRjN2QxZDMwZmIzMWUxNyBsZWdhY3ktdHJ1bmsKKzQyMTI2IDI0NDU2MzM4MDI2YzA0ZjJkNWRmODIwM2FjZWQ1MjQ1ODllOWYyZDcgcmVsZWFzZTI0LW1haW50Cis0MjEyNyAxZThmNDY3M2U0NDc0NzNiYWM0YzRlMTQxZDlmNjY4MjZjZDY3YWI0IGxlZ2FjeS10cnVuaworNDIxMjggYjA1YzRjYTg1OTQzNGRiNzYxZmYzY2Y1MDEwYzlkN2VlODk3MmQwZSByZWxlYXNlMjQtbWFpbnQKKzQyMTI5IDQ3NDZmYWIzNDAxMjQ0ZmZiZjRiZjhjYzZjYmIzNzRmZDQ2MDk1YWIgbGVnYWN5LXRydW5rCis0MjEzMCBhYzAyZjY1NWIzMWUzODA4ZTJmYWE3N2I5ZmVkYzUyYmRhYTc3MjE4IHJlbGVhc2UyNC1tYWludAorNDIxMzEgY2E2YzgwMGFkNWEwMmMxMTliYjBjM2EzOWRkNzBhZWY2Y2ExM2I2NSBsZWdhY3ktdHJ1bmsKKzQyMTMyIDZmY2I1NDA1MDc0ZTdhNWU1ODQ5ZGJmNGEwZjM3ZjdlNzYzNzIzMmIgbGVnYWN5LXRydW5rCis0MjEzMyA5Nzg4NWFkZjczYjU0NzFhYzdkYTNhNDMyZjNkZjgxZDAyY2NmN2FhIGxlZ2FjeS10cnVuaworNDIxMzQgNzg3MDJhNTAyOGE0MWY4NWFiODBmNGVjNzBjMWQ1ZjgxYTUwMmQ0MCBsZWdhY3ktdHJ1bmsKKzQyMTM2IDlmN2NlMjg0NmMzMDk1OWM1NDVkOTExNDZmODE3NDk1NTNhOTMzZDggbGVnYWN5LXRydW5rCis0MjEzNyA2MWI4ZTNlM2Q2NDE4M2FjYzI4MDY0NGViNjQ5OTFjNjRiZDRiOWM0IGxlZ2FjeS10cnVuaworNDIxMzggMjgwNjUwNzkyZWY3MmI3Y2VlOGI5Mzg5ODNiMWFmMDc0YWUwM2I4NCByZWxlYXNlMjQtbWFpbnQKKzQyMTM5IGY5NDk5MWQ1ZGQyMDY5Y2JkYWJmZjlkNDg1OWFmMDVkYjQzNDQ2ZmMgcmVsZWFzZTI0LW1haW50Cis0MjE0MCBmZGYxYmU5Y2ZlZGYyYjMwMTk2MDMyZDkzMzNmOWE1NzRmMzM2OTczIGxlZ2FjeS10cnVuaworNDIxNDEgMDBlZTIxNzE1MzdmNzVkZTdhNzA5NThmYjc5ODU0N2U0ZDk0NTM2NiByZWxlYXNlMjQtbWFpbnQKKzQyMTQyIGYwMTU0M2UxNWY4NWE0OTkxZTMyMDExZDFhMmI1YTEzZTQxYzE2NWUgbGVnYWN5LXRydW5rCis0MjE0MyA0MzE1YzUzZjUxYmNhNjA0MjlkYTU2ZGIzZTViMzE2MzdkMDY0YTQ5IHJlbGVhc2UyNC1tYWludAorNDIxNDQgNGQyYTA5YTY0ODVkM2U5Yzk4Y2I5YTFhNmY2NTk3NWYxMzEyODJkMyBsZWdhY3ktdHJ1bmsKKzQyMTQ1IDNiNjNiYzkwNGQ5MmU3YjViNTI1MDQzZTA2NjE5MmQ3MGRkOTAwNTAgcmVsZWFzZTI0LW1haW50Cis0MjE0NiA0ZjExYjIzZTM2MWY0NTRkOWU5YTllYjc3YTk0ZTRhNjY0OTg0OGZiIGxlZ2FjeS10cnVuaworNDIxNDcgNDQ2Y2I1ZmMzZDI4MGJmN2ZjNDZmMmQ2ZGFkMmM4MTI2MDI5ODVjOCByZWxlYXNlMjQtbWFpbnQKKzQyMTQ5IGExN2I3MzgyNmY5NzgzYTgwMTY4ZTU0NzhlN2IzNGM0NDUwZDg3ZjIgbGVnYWN5LXRydW5rCis0MjE1MCBjODNjMDIyYTM0OTFlYjE2ZmUxYWZmNWE3OGU0MWVjZTY5NzMzZGMwIHJlbGVhc2UyNC1tYWludAorNDIxNTEgODE0MGYwMDBlOWQ0NTllZjM0ZjMyOWQzNWI1OWYwY2MyYzBjZWMxYSBsZWdhY3ktdHJ1bmsKKzQyMTUyIDYwNGZlODdhZDQ3YzdjMGMxOTI0ZWIzOWY5ZGFhN2NhODU4MmUwZTcgbGVnYWN5LXRydW5rCis0MjE1MyA5OWQ0OTFmYWE2NWMyYjlkZjdlMTQ4ODA5NzFhNmQxMTA2NTJiY2YxIGxlZ2FjeS10cnVuaworNDIxNTQgN2IzZDkxNWI2ZTlkMDAxMjNlOGZjN2U1Y2Y4YWQ0NzJhMjY0ZmI2YSBsZWdhY3ktdHJ1bmsKKzQyMTU1IDRmOTBjN2MwNTM2NGY0MjRiNjNkNjJkNGQxMmIxM2ZjZDI3MTY4MmMgbGVnYWN5LXRydW5rCis0MjE1OCA4MzhiNWY1OTI0ZWUxNzE0MTQ2N2U5MTg4MTVhM2Q1M2UwZGUzODEzIGxlZ2FjeS10cnVuaworNDIxNTkgM2I0YjQ0NTRmZTg2NjRiYzRiZWFmMTVjYzhlMWMxOTczZTgzMDYzYiBsZWdhY3ktdHJ1bmsKKzQyMTYwIDVlZTQ2YmJlZDFmOWZlMDQ2OWUxNmUyZGQ0NDNmNGNkNjVlNjE5MDggbGVnYWN5LXRydW5rCis0MjE2MSA1YzQ4N2NiNjMyOTUwNzhkYjNmMzM5ZWFlM2M2NzBlNmI2ZDgyN2E2IGxlZ2FjeS10cnVuaworNDIxNjIgN2YwNTk3NGM4YjgwMzE3ZjI4NzA2OTIxOGUyMDAwZTEwYTdjNTBjOSBsZWdhY3ktdHJ1bmsKKzQyMTYzIDAwMDZhZTEwYjdmMGM5MmM5MWEzZTA5MDI3NGMyYThmYTQwMjUwMzkgcmVsZWFzZTI0LW1haW50Cis0MjE2NCA3OGJkNzhhMWNlNzRiNDYxZjI1OGI1NmI1NTRiNWZiZmUwN2NiNzE2IGxlZ2FjeS10cnVuaworNDIxNjUgMjAxMmM1NDhjZTY5OGNiZjQwYmI5ZTQ1YzZhODM4MTBhZDBhNzE5YyByZWxlYXNlMjQtbWFpbnQKKzQyMTY2IDMxMTRlYjA2MGQwYWVkMmVhNzg2NWUyZjNiNDJkMThlYTk5OGZlNjMgbGVnYWN5LXRydW5rCis0MjE2NyA3NGE1OTg5NjRjOTYyOGQwYTQ3ZjljZGRlNGE4ZTQ0MmI2NTJhODE2IGxlZ2FjeS10cnVuaworNDIxNjggYTI5Y2MyM2JiODljNGM1Zjc3YmVlMjBjMzA5NGI5ODc1NmVjZTM4ZiByZWxlYXNlMjQtbWFpbnQKKzQyMTY5IDAzNzJlMjVlNDMwZWNjNTcyZjJmOGE5MmY2OWU4MWI4NWE0MjI4NWMgbGVnYWN5LXRydW5rCis0MjE3MCBhNTBmNTYzNWE0OTQ5Yzk1NmZlN2NmYjBhYjEyZjc4NmI0MmMwMjNhIHJlbGVhc2UyNC1tYWludAorNDIxNzEgZDY4ZjczZjk2ZjMxZjcyZTM0NDM5YzVmYmY0ZjhiOTU5NzZmZmQ0NiBsZWdhY3ktdHJ1bmsKKzQyMTcyIDZhYjgyYzQ3MDYzMzhmMWU0NjViMmI1YTFiYjk4MGYyZmI1NDU0NjQgbGVnYWN5LXRydW5rCis0MjE3MyAwNTVmY2RjNjUyZGQ0MzU2Y2ZhOGM0ODUwZmM3NmIwYzRkMDI5MmUzIGxlZ2FjeS10cnVuaworNDIxNzQgMWI5ZWI5NjMyYzg5YjhhMDk0YjMxYmEwNzE5ZGFiNGNjNDIwN2YxMiBsZWdhY3ktdHJ1bmsKKzQyMTc1IGJmYjI0N2Q3YmMzZjcyNTJmMzM5OTE4OTFmNDNkNGM4NjVjOTk3OWEgbGVnYWN5LXRydW5rCis0MjE3NiBkNTczNGRjMDdkNGFiZDk5NWUxZTk1ZGZiYzQ1MWE3MGFkNmY0MDU3IGxlZ2FjeS10cnVuaworNDIxNzcgNTEyMzQ1MzY5MGU1MWExODg4NmZlYTFlZDUxNDQ4MzNlZDNhZDdiNCBsZWdhY3ktdHJ1bmsKKzQyMTc4IGQ2MmRhMzZhYWUxNTUxMjVhY2ZhYzNhYzk1YTlkNzc3ZmY2MmVhZjkgcmVsZWFzZTI0LW1haW50Cis0MjE3OSBlN2YxOWVkMWVhMmRjMGNhMWJjMjAwMDlkNDNmYzdkN2NiMmJjMTM4IGxlZ2FjeS10cnVuaworNDIxODAgYzAxZDIyNzJlNmMzYTZmYjQ5NzRmOGU1ZTJlNDhiNGJmODNiMGI3MCByZWxlYXNlMjQtbWFpbnQKKzQyMTgxIDNkZjYzNDYxYjExNmQzNzlkN2VlODYzN2MwYzM3MjczZTEyMjEzOTYgbGVnYWN5LXRydW5rCis0MjE4MiBlMDI4OWZiYTZmZjFlYTkzOTFiNmNhMzc0ZmI2MDBjZmQ0NjM5YjRkIHJlbGVhc2UyNC1tYWludAorNDIxODMgMDQwZDdmYjRlYjU2ODQ3YWRkZTEwZDhiZjNiNmEzYmE2NmQ5ZDM2YiByZWxlYXNlMjQtbWFpbnQKKzQyMTg0IGU5NzgxOGJjMjkxOTQ0YWY2ZDA5ZTFkNjdiMmIwNGQ3YjdiOGIzYzUgcmVsZWFzZTI0LW1haW50Cis0MjE4NSAxMzU5NjA1ZjM3MTNmYjU5MjM5ZWZmYzBmYTI1MzdiMWQxOTI3NTczIGxlZ2FjeS10cnVuaworNDIxODcgYWY2ODRkNzNmM2E2NzNkZjk3MzFhNzMxMGViMDZmZWNhOGM4OWFjYSByZWxlYXNlMjQtbWFpbnQKKzQyMTg4IGMzYjY3MjhkODg2Yjg3N2NiZDQxZmE0MGRjMmZlNjhmMmY2YTM0MjggcmVsZWFzZTI0LW1haW50Cis0MjE4OSBjZGU2ZWEwOTFhYWFmY2U0NWUzMTUyYjk0YzliYTUzYWVhNTI4ZDk2IGxlZ2FjeS10cnVuaworNDIxOTIgMDYwMjg4N2RhZGY1ZjU3NDFmMzU1NDc2ZDZiMDE4MTkwMWQ1NjZkZSBsZWdhY3ktdHJ1bmsKKzQyMTkzIGYwYWRhNmYwZjY3ODk5MjkzYTljNDIxOTc0MTEyNGU0MDkyYTExYzcgbGVnYWN5LXRydW5rCis0MjE5NCBhNjI1ZTg4NzY0MDcwMzgxOGUyM2YzMDM2MGZlNTQ2N2UzYjgzMDczIGxlZ2FjeS10cnVuaworNDIxOTcgOTUwZTNlMzg0M2JiZjAwNDc3YzMxZTJlNDQ5NmIwZjYwMmJkZjUzYiBsZWdhY3ktdHJ1bmsKKzQyMTk4IDAwMDRhOWQwNGQwMzY2NTcxNDZhMmUyMWY0ZjVhYjM4ZDY5NDQxZTEgcmVsZWFzZTI0LW1haW50Cis0MjE5OSAyMjg5OTUwMjExN2ZlNjg5MWY2OTIxYzdhYzEwOTA5ODg2MWFhNDIyIGxlZ2FjeS10cnVuaworNDIyMDAgZmMxMmNjYTczYzM1ZDBiY2QxNmZiZDgwYzk0YzcxYjQxZDdiNjhhZCBsZWdhY3ktdHJ1bmsKKzQyMjAxIDI5YmZiYjU4OGQ5M2Y4ODc3MTdhYjYxZTExM2UxMGZlZTcyM2QwNGIgbGVnYWN5LXRydW5rCis0MjIwMiAyM2ZlNDdlOTMzN2Q4ZjljNjg0MTJhMWE2NWY0ZjUyZDNiMjcwOWYyIGxlZ2FjeS10cnVuaworNDIyMDMgYmZhMjI3MjY3ZjQ4MTRlODJlOWZiYWNlYTlhMzIxZTZhMTFhZmM5NCBsZWdhY3ktdHJ1bmsKKzQyMjA0IDBmMmQ4MjAwM2EwZmI3NGQ0ZDJhZTQ5YjcxYjM1N2JlZjI5OTU3ZTggbGVnYWN5LXRydW5rCis0MjIwNSAyODBkNjAxOWNmNDI2YzBhMDM2NjEyOGNkYTc2YjM0YTg3MTI5YmY1IGxlZ2FjeS10cnVuaworNDIyMDYgMzhhOTRlNThhNjk1NmM2YWE5NzA4YzhlZjdlMjgzYzA1MzExNTA3NiBsZWdhY3ktdHJ1bmsKKzQyMjEyIDE2YmZlOTM4NjA2OGNmYmUxOGEzNWVlOWMyOTkyZTYxY2ViOWI2ZjggbGVnYWN5LXRydW5rCis0MjIyMSA4MTk0MmZjOWEyMGQxNjY5ZTg3MjY5ZmE2YTZiZjI2ODE5NGRmOTU0IGxlZ2FjeS10cnVuaworNDIyMjYgZDY4MGZhNTI1NTEyMjZjNDBmMjU0YzliNGY2YjEyODhmNzUxYzYwMCBsZWdhY3ktdHJ1bmsKKzQyMjI3IDZhOGQ1ZTA1NGU5NzFkM2RiNGRmMGE5Y2NjMmY5ZGJhOWM5ZDc0NzMgcmVsZWFzZTIzLW1haW50Cis0MjIyOCBmMjM2NjEwOGJjYjI4MWM2ZDZjZjZiOWViMzQzZjkzZjczM2MzZmMwIGxlZ2FjeS10cnVuaworNDIyMjkgYmQ0NGM3YzA5NzdmNTc2NzI5MTY1ZjdhNTQwZjEwNGUyMWRiZDcxMiByZWxlYXNlMjQtbWFpbnQKKzQyMjMwIDI2ZTBmNjhkZTg2ZTZiYWIxMDAwOGEzMzM0ZTVmZjZkYjE3Yzg4ZTggbGVnYWN5LXRydW5rCis0MjIzMiA2NTVmYTIyNjA2Nzk4NDYzZjNmZjE1M2EwYWQ5YzdjNzk3MTNkODgwIGxlZ2FjeS10cnVuaworNDIyMzMgZTY2MjI4NTgwZWEyNjQ4NDhhOGNmYTM0NDdkMzY4ZTAyYjQyMjc5YiByZWxlYXNlMjQtbWFpbnQKKzQyMjM1IDk0ZDI3ZTAxODMzZGE0NzliZGY4ZWY1OGI2ZTIxN2QxN2UzYmM5ZDQgbGVnYWN5LXRydW5rCis0MjIzNiBjYjBkYmFlNzJhOGU3NjFiMTk4OTRjOTI5YjE3MTgwYzhmNjhiMWQyIHJlbGVhc2UyNC1tYWludAorNDIyMzcgNWUyYWNmNzQ0MWJkNjliY2ZjZGU1YmIxZTRiMzcyMDU3YjAxYjY2YSBsZWdhY3ktdHJ1bmsKKzQyMjM4IGRjMzI0NjMwMTVmMWJjZDg0MjZlYTBhMzJiNDU4YWRlNWJkMDdjMDYgbGVnYWN5LXRydW5rCis0MjIzOSA4ZTIzYTdjY2Y2MTVkMTk0YmM0Y2IzM2I2MGEzZDMyNmRkOTdiMGJkIHJlbGVhc2UyNC1tYWludAorNDIyNDAgOWE0ZmY2ZDZlNzI0NjQxM2M4N2ExZTVlYmIxNzliZWFjYTYyNjYzMCByZWxlYXNlMjMtbWFpbnQKKzQyMjQxIGEwN2ZiMmVmNTJhZTc1OTljNmFmNDNjODYyNTliZjYxNzEyNmViYWQgYXN0LW9iamVjdHMKKzQyMjQyIGQxZWYyM2ExNjc2MGMyMzEzNGI4OWQ1NmExM2Q0YTQyNmQ4NTRjYWQgbGVnYWN5LXRydW5rCis0MjI0MyBhMzA0NmQ0M2ViNTJmMmYxY2FmYzhiOTllNTZiNDhjNmU0NTVjZTNiIGxlZ2FjeS10cnVuaworNDIyNDQgMDJmMDc0NGE5Y2QwMmRkODAxMzY4MDQ1Mjg2YzVhZjMyYmI3ZjkwMyBsZWdhY3ktdHJ1bmsKKzQyMjQ1IDNlZGIxYmNkNDM0ZDRkYTFiOWNiMzljYjJmMWZhN2YyMjViZjIwNTkgcmVsZWFzZTI0LW1haW50Cis0MjI0NiAzODhhNTgzZTdhNjM0NGQ1ZTBkZTVhMDllMjNjM2M2Y2VhNDJiOTE5IGxlZ2FjeS10cnVuaworNDIyNTAgNGVkMzBlYWEwMjU2MTI1YTQyMTBjMGIyNTNhMGI1MmMxYTNjMmQ4OSBsZWdhY3ktdHJ1bmsKKzQyMjUxIGMxOTMyODNlNjNiY2I3NjEyNTNhZDlhODgzNWFlMjFmZTc0NzU2ZWQgbGVnYWN5LXRydW5rCis0MjI1MiA4NDA0YzllZmRjMzVlYmZmNzAxNWQ1NTJlNjhjN2VlZWY3N2M1ZDQxIGxlZ2FjeS10cnVuaworNDIyNTMgNzc4OWNjNTU3ZTFlZmE1NGMwOGVhOWQzNmEzMGJkMTY4YjQ4NTE2MyBsZWdhY3ktdHJ1bmsKKzQyMjU0IGFmNjdiNjI2NWFmNmFlMGJkZmQ1YWVmYzM2OWQ2ZWFlODI1MTk0NTkgcmVsZWFzZTI0LW1haW50Cis0MjI1NSAwMDJmOWI4ZmVjMjFlNzBiNmVmZDUwMTBhNWM5ZDJmNDg4OTY5MjViIGxlZ2FjeS10cnVuaworNDIyNTcgMGEyYTRmMTQxMTBiOTRhODQxZGNlZGMxYTBhYTlkZjRmZjBhZTNiNyBsZWdhY3ktdHJ1bmsKKzQyMjU4IDUxZjc2MDI4ODEwNDUyOWFhN2QwNDVmODVmNjk1ZGVjZDM1YjFmZDEgbGVnYWN5LXRydW5rCis0MjI2MSBmMzhiNjM1MjYzZDNhMWZmZjZhZWQ0ZDcwNDFkNzk3YjFhODE2NGI1IGxlZ2FjeS10cnVuaworNDIyNjggY2Q0NDU5ZDA4ZWUyMzY4ZTZjZThkMGUyYjc2YmIyMDI2MDI5NGQzZiBsZWdhY3ktdHJ1bmsKKzQyMjY5IDNhYmYzMzI2NDE0NjMzNjFkOGY5YjhlZjBhMmNjNWE5YWM3MWYyZDcgbGVnYWN5LXRydW5rCis0MjI3MCBlYTU0ZWFmOTIwMTYwMzE4ODVkYmNmYjU3YTFlYTFjMTJlMzNlYzllIHJlbGVhc2UyMy1tYWludAorNDIyNzEgZDU5NjE5YTM3MWMyMTc5YzMyMGZlN2Q2ZDYwNTU3YmFiZGFjMmI0NiBsZWdhY3ktdHJ1bmsKKzQyMjcyIGZkYWNmNzJkNDk3NjMwMmM5MmI0NTUxOWRhNDU5NDU2YmEwMjNjOTcgcmVsZWFzZTI0LW1haW50Cis0MjI3MyA1NTI0NjRkODFlMWIyMTY5NjFlYTJhNzZhZWU1ODE1YjkyYTViZDRjIGxlZ2FjeS10cnVuaworNDIyNzkgODQxNmZiMzIwNDAzOTE5YTZkZDA2NmYwMjg2ZDk1YmU4YzJhYjVkZiByZWxlYXNlMjMtbWFpbnQKKzQyMjgwIDM5N2Y2MzlmN2U2YjhhZmQwYjgzMjA2YTBjOGZkOWQxODAzNjMxYmIgcmVsZWFzZTI0LW1haW50Cis0MjI4NCA0YzJkNmViOGQ1ZTljM2M2MjdlYWE4ZjliZTVhZjM5NDc0YzY2Y2Q1IGxlZ2FjeS10cnVuaworNDIyOTAgODlmMWRhMTM0MmNhNDdkZjhhYmJkYTMwMDk0NzM1NWRhMTlmN2VlZCBsZWdhY3ktdHJ1bmsKKzQyMjkxIDNjZjhhOWVkNDQ2YjNlNGIxMDU5MTE1OTRkMTMxMjViMjVmZjNmYzIgbGVnYWN5LXRydW5rCis0MjI5MiA5M2VmYTU5YjMyOTdjZmZhYzdmOTA2ZWU5YTkzOTEzNzdlYzUwZDE1IGxlZ2FjeS10cnVuaworNDIyOTMgMDVlMzE0ZWUyNmY3NzA4ODVkZDc3OTY2NzM4NjllNjY5MDNmOTA2OCBsZWdhY3ktdHJ1bmsKKzQyMzAzIDE2NTM4OWIxNGQ2YmE3MTliY2MxNTE5ZmU0MTc0ZjUwZjUwM2M0ZDYgbGVnYWN5LXRydW5rCis0MjMwNCA4MWY0NGQxMmJlZjdhMThlMzhmNjZlNTkxNGQwMzM1ZjhjYjkzN2FhIGxlZ2FjeS10cnVuaworNDIzMDcgN2IxOWE1MzNjZTliYWQ5NWRmODU3YjNjYTRhZGQ4YWNlNzljMGRiZiBsZWdhY3ktdHJ1bmsKKzQyMzExIDBjNWFlODkyNDEwNGVlNjQxN2RiMGQ0NWMwNWI3NTE4ZmRhZThiZjggbGVnYWN5LXRydW5rCis0MjMxMyAxYzNiMTVkZjY3YTI5MzlmZjMwMWRiOGRmMGM3ZTZhYTE3NjczZDQyIGxlZ2FjeS10cnVuaworNDIzMTQgYzA3M2RmZmJlNzBlYzk1YzIzYmI0MGU0MGUwOGIwYTk5OWM0M2EzYyBsZWdhY3ktdHJ1bmsKKzQyMzE4IGQyMTg3NWQzNTkyYjY0OTc0YjI2YjBhMDAxZWMxNDNmNGM3ZTMxYzggbGVnYWN5LXRydW5rCis0MjMxOSBlMmQ0NjA4ZjVjMWQ2ZDBmOGY0NTVlZjg0N2E4ZWUwYTc3OTI1OTk5IHJlbGVhc2UyNC1tYWludAorNDIzMjAgZDQ5NmMwNzY0YWQ2MTRhN2U1OGRhOTgzYjc3YzRmZGMxZWM4NmVmZCBsZWdhY3ktdHJ1bmsKKzQyMzIxIGFlMWRhNTEyNDM4MjRhOGQ3Y2EzN2VjNzAyNzczZmZhNzhmZGIzYTUgcmVsZWFzZTI0LW1haW50Cis0MjMyMiA2YzZiNDI5YTcwMzBjNjUwMDlkOGZkZjE4ZjdjZTYxZTlkZTAxNGNhIHJlbGVhc2UyNC1tYWludAorNDIzMjMgNTEyOTc4MzFiNWY4OTA5ZWUzNjRmNGI4MmE5N2NhMWZiNjI1YjQ2YSBsZWdhY3ktdHJ1bmsKKzQyMzI1IGI0OGEwNDcyOWNjNDk4YjBiZDNlOGRhMzNmODZhZDUzOGVlMzE4YWIgbGVnYWN5LXRydW5rCis0MjMyNiAyMGY3NWQ1ZTc5ZTk1M2JlNDZmYTE1ZjJiYmNhNDIwOWE2MTI0NmU4IGxlZ2FjeS10cnVuaworNDIzMjggYzAwNzBkNzZjMGRiM2UwNTUzMWUyYTk3OTYyZjZjMDdkMzJhNGFjMiBzc2l6ZV90Cis0MjMzMCAzNmVhZTNmYzM3M2Q1MDEwNTJhZDRmMmYxY2FjMDkzYTJkOTkzODczIHNzaXplX3QKKzQyMzMyIDcxNTMwOTIxY2U5M2IzZTM3ZTViZDRiYTk5ZGQ4NmE3MjU3YTllOTcgc3NpemVfdAorNDIzMzQgMmEzMjMxZmU3MmUyOThhZDlmOTkxM2ZkOTdjZGNmYmE3ZWY1ODMyYiBzc2l6ZV90Cis0MjMzNSA5OWRmZGNjNmQ2MTNkZGU0NGI4OWE4MTQ2YzM5ZTYyY2QwNzkxNjIwIGxlZ2FjeS10cnVuaworNDIzMzggYzQ2ZGUxZTViOWEwMzIwMTgwODVjYWQ2ZjQ2ZDVjMDFmZTc0YmQwMSBzc2l6ZV90Cis0MjMzOSA2NWFlNzMwYjYyMzE0M2E5YjVjZTJhMWJmMTUzOTJjNzdiZTljOGNiIHJlbGVhc2UyNC1tYWludAorNDIzNDIgMDdiYThhYWUzZGM2NzFhODYxOTAxOTIwYmEyZDRlZWVlYzQ2ZTc4YiBsZWdhY3ktdHJ1bmsKKzQyMzQzIGEyYjZkZGFiNjZkNzhhMGI4OTlmYjg3OTQ4N2RjYjdmODYxMjU5OGQgcmVsZWFzZTI0LW1haW50Cis0MjM0NCBlNDcxZjFkZjJkMDMxZjEwNjY4ODI5OTg4YWYxOGE1MmQ0MmMxMDc0IGxlZ2FjeS10cnVuaworNDIzNTQgNzRiMjUzM2I1OWI4YmViNDdkYWIyNzU1NGNhN2MxMmM0ZDZmZTNlNCBsZWdhY3ktdHJ1bmsKKzQyMzU1IGM3YWI0MTdjNTliYzhiMDNkODY2OTViNGMyYjg4N2U3NTFhMDMxMWUgcmVsZWFzZTI0LW1haW50Cis0MjM1NiBhY2Q3MDJlMzA2ZmI0MTRiOWRhZThiNjAxMmJhNmUyNzZmNjk1ZDU0IGxlZ2FjeS10cnVuaworNDIzNTcgNTc0YzI1ZmU2MDI4NDUyMGVkMjUzZTMzNGMyNzU5Zjg5Y2UyM2M5OSBsZWdhY3ktdHJ1bmsKKzQyMzYyIDM0NDc1NDQ5N2NiM2Y1ODhlNjU4NzU4MTI0NTZkYjBhMTkwNWRmN2IgbGVnYWN5LXRydW5rCis0MjM2NSAyMjA0OTdlMDg5Y2U4ZGViNWIwYzk2MzdmMTEzMWU0MDdjMzczNGVlIGxlZ2FjeS10cnVuaworNDIzNjggZGIyZmNhOWVhMjY0MDYyODE4NmUzNjFkMGE1NTMyOGVhMzc2MzMwYSBsZWdhY3ktdHJ1bmsKKzQyMzcxIGMwYzM2YmJkNWUwYzE5NDM3NjhiMGIzOTkzYjZjNTE5NGFjZGUyMTkgcmVsZWFzZTI0LW1haW50Cis0MjM3MiAxN2VjMTdkZDJhYjNkN2ZjNDY2NDEyNGZiNDcxOGQzM2ViMGVmY2JmIGFzdC1vYmplY3RzCis0MjM3NiA5NjY4NWYxMTI3MDk0NDQ0NTJkNDEwNDQzN2Y2ZmQ2OGQ3NGNlMWJjIGxlZ2FjeS10cnVuaworNDIzNzcgMzVkZThiY2NmZDBlZDcyOGI5OWJjNDFhY2ZiNWUyMjI5ZTUwODM0NiBsZWdhY3ktdHJ1bmsKKzQyMzc4IDk4ZjdiNzQzZDkxYjAzNWJlZjI1YTQ5NjZkOTEzMDQ1ZGU1ZDJmNDEgcmVsZWFzZTI0LW1haW50Cis0MjM3OSBjMDM0Y2RkNzk2MGNlYzYxNDRlYTJiZjY1YTQ0ZGVmMGY4MTk4OWJlIGFzdC1vYmplY3RzCis0MjM4MCAzNjI1YzhiMTQzZDljY2NkNTkyOGNmOTBjZmUxYmNhYTcwYWY4ZmI5IHNzaXplX3QKKzQyMzgyIDdmZGM2MzliYzViNGQzYzA5MmNiM2ZkN2Q4N2Y3M2RiM2Q0N2JhMjcgbGVnYWN5LXRydW5rCis0MjM4NCBiOGU3M2MyZDFmMTdiMjc1MGM2NTM3MWYyNzcyNTk5ZDgzNTE3Y2E2IGxlZ2FjeS10cnVuaworNDIzODUgNzk5OGQ4NTY0OWM5ZTAwMGIzN2JjMGQxZjAxNmRmNDY2M2M3NjhmZSBsZWdhY3ktdHJ1bmsKKzQyMzg4IGRhOTNmOWYyZDZlOGE4MWZkZGJkNTNhMGE5NTE2NmZlOWQzYTc5YjYgbGVnYWN5LXRydW5rCis0MjM4OSA1ODI1YzZhY2UyOGI2MGViNTdhNWQ1NDI1NTkzY2VmM2JlMWMwNjJhIGxlZ2FjeS10cnVuaworNDIzOTAgNzc1ZGVmYmE0ZWU3NGI1NjFiZjQzOGRmZDcxZTQyYmMzNDE4Y2RmNyBsZWdhY3ktdHJ1bmsKKzQyMzk0IDc2N2FkYzA5ODQxNjFiZjYzMzA1MjQzNjBhYjMwN2M2YjUyNTE3OWUgbGVnYWN5LXRydW5rCis0MjM5NSA3MzIyZGNjYmEyMjQyOGE0MmFjODk5ZDUwZWQ5NGU4ZDk1ZjI0MTYyIGxlZ2FjeS10cnVuaworNDI0MDAgMTNlOThlMzY5YWJkOWY4NmFlYzc0YmIzNGMzM2MxNWM4NzhhNzM2YiBsZWdhY3ktdHJ1bmsKKzQyNDAxIDBmMzg5NGJiMmFkYWFjOGE5YTVhNTZkYzEwNGNhMDFkZTY5ZmMzZGQgbGVnYWN5LXRydW5rCis0MjQwMyAxNTk2ZmY1Yzc5YjUwMmUxYjNjNGM4ZjJjMzg1MjhiNWVhMmJiYWMzIGxlZ2FjeS10cnVuaworNDI0MDQgMzM1MGY4NWM4ODlmZDgwYmQzZmJlYmE3OGY5NTEyZDAyZDFjNjJlNyByZWxlYXNlMjQtbWFpbnQKKzQyNDA1IDQ0NWMwYWE4MTFjYTcwZGQ5ZDdiODA3ODI2YzQ2YTFjNjI1NGMzZDYgbGVnYWN5LXRydW5rCis0MjQwNiA5MTRmNWIwZGE1NGVlMWY0MDIzMTNlNTkxMTM0MTU4NDkxNDA0OGIyIGxlZ2FjeS10cnVuaworNDI0MDcgN2M5Y2ZkM2I1ZDBmYTZmMWQ0NGU1Y2YzNGMxYzg1OWZmYjllZWE0YyBsZWdhY3ktdHJ1bmsKKzQyNDA5IDdkYzFmZTc3NzEzZjJkMjBjYzk0MTU1ZmI5MTlmOGYwMmFjMTBhNzAgbGVnYWN5LXRydW5rCis0MjQxMCA5MTMzMWE4ODcxOGUwMmJlMjExYjQ5NzM0MTJmY2U4ZmI2OGU3NmI3IGxlZ2FjeS10cnVuaworNDI0MTEgOWYzZjg3ZTkyMGE2ZDFlMTk1NTc3MTkxYTFiNTE5YzliMWQ2OTVlNiBsZWdhY3ktdHJ1bmsKKzQyNDEyIGQ2ZDQxNWRmMGRmMGFhYzJhMWNhN2YzMWI0OTU4Zjk2NDNlMDE4NzEgbGVnYWN5LXRydW5rCis0MjQxMyAyNjQ3MGNkZWVhM2Q2ZmJlY2EwYzMzN2RkNWU3Y2YxNDhjNTczMjk5IGxlZ2FjeS10cnVuaworNDI0MTQgMzBhZWYzY2UyYjI2YzA5MTljYWY3Y2Y2YmJhZmFmYWRiYTU5NDRkNCBsZWdhY3ktdHJ1bmsKKzQyNDE1IDI3OTE2NzZiMzgyNTkwMDc2MzBkOTc3YjE0NDZhOTQ2MmJmMzYwNTcgbGVnYWN5LXRydW5rCis0MjQxNiA2NzJjMzBiZjk1ZTY5YTdkZTE4YzFkNzdiYzViZjNkNTc5MjY2ZDFkIGxlZ2FjeS10cnVuaworNDI0MTcgNGM4NjA2MTkxYzBjZjMyMmU5ZTc4NTE3ODQwMDlkN2YyZTJkNzIyMCBsZWdhY3ktdHJ1bmsKKzQyNDE4IDIyOTdiMjcwZmNmNjhkOTYwZmYyMWNhMDU0OTZlNDMwMDE3MjI0ZDggbGVnYWN5LXRydW5rCis0MjQxOSAwMGY5YzZlMTUwYmEyNTg3YzY4ZjMyZjFjZTg1Njc3MWQ3ZWZiOGZjIGxlZ2FjeS10cnVuaworNDI0MjAgOWRmNjFiOTZhYTQyNjRiZDk0MjU5OTNhYzJiOGU3OGEzNjBlMTlhNyBsZWdhY3ktdHJ1bmsKKzQyNDIxIDc2Y2U4ODBkY2U0OWUxMTEzZGU2ZTMwZjUyNjY3NzFiOTdjZGY4NGIgbGVnYWN5LXRydW5rCis0MjQyMiA0NDJjMGZiM2M0ZWQxMTE4ZDhiMWQyYjVmMGRkY2NlYmFmNTdlMGRhIGxlZ2FjeS10cnVuaworNDI0MjMgOTJhZmY5NzQxN2M0NmExYWFhMDZkNjMwOTJkMWYzYjM2YzZjYzcwMiBsZWdhY3ktdHJ1bmsKKzQyNDI0IDcxZTZmNmI0MTVhNGMyNjMyOTRkMmMyNDA3ZGY4NmZjNDlhOGRmMzggbGVnYWN5LXRydW5rCis0MjQyNSAwYzA5NmJlMjcwMDAzZGFjYWEzZTVjNjg2MTdhMDQyNTFlOTNiNjc1IGxlZ2FjeS10cnVuaworNDI0MjYgZWQwN2MxYTVlMjRjNjI3NjM5YTJlMTAxZWM3Nzg0Yjg5OTVmNGQ2OCBsZWdhY3ktdHJ1bmsKKzQyNDI3IDg2MjQ5M2NlYWU0YjMyMzc4ZDNhMzBjNTI2MGFlM2Y1NmZkY2MwMDUgbGVnYWN5LXRydW5rCis0MjQyOCAyNmNhYzM3MWQ3YjZlZjlhZmI5MWQ2YWE1ODFjYjJlNjc1YmI2ZGY1IGxlZ2FjeS10cnVuaworNDI0MjkgYzA2ZWUwYzkxMjA5NTdhNzcyNjFiYWY5NzdjNzhiMzJhNDU4ZjM1NCBsZWdhY3ktdHJ1bmsKKzQyNDMwIGZkYWJkZjE0ODMzNjIwNWVlNTYyZWQ0MGE1YWI5ZDkzNmEwMTQ5ZGMgbGVnYWN5LXRydW5rCis0MjQzMSAzMTY5MzhiNGY4ZDAwMjgzYzliYTFiYzM2MjY1MzZmMmU0ZjYwYmQ2IGxlZ2FjeS10cnVuaworNDI0MzIgMGQ0ODkxMjg0NDFhZjZiOTc2YzgzOWNlNDE4YTI4OWU1ZWJmNzE5ZSBsZWdhY3ktdHJ1bmsKKzQyNDMzIDdkYjNjYjllODM5ZmFlMzVhZDI4NzJjYzA2Nzg1ZTNlN2Q3YWJiNDUgbGVnYWN5LXRydW5rCis0MjQzNCBmN2YwZDJhNWIyMGI4MjVmMjcwZjZhZGJkMGU4ZWJiMzY4NzRmYzBiIGxlZ2FjeS10cnVuaworNDI0MzUgOTdjODFkYzAzZGRkYmU3NjNmOGNiMDFlMmFiMjg3MWY3MDBjNzY3YyBhc3Qtb2JqZWN0cworNDI0MzYgMDU2ZTViNDYwNmRhNDMzMWE3ZDdmOTZlOWJhMmU5YmIzNjJiMWM4YiByZWxlYXNlMjQtbWFpbnQKKzQyNDM3IDM2MzI1Y2FlZmY5YzY1YjE0YjFjNTQ2OGU2MGQwYjlkNmU4MDRkZTEgbGVnYWN5LXRydW5rCis0MjQzOCAyM2UyM2UxNWU3ZTdjMTQwMWJkYTE3MjI2ODUwYTJjOWY0NjQ0NzllIGxlZ2FjeS10cnVuaworNDI0MzkgMTIzMmU4N2NiODE2MDc5OTRjMzg4ZGRhZGVkNmZlNjEyMDI0ZTRkMSBsZWdhY3ktdHJ1bmsKKzQyNDQwIDViZDAyZGEwMzdiZmMzY2Y2M2IxNjJkZjI5OWNhNmRhOTJkYzNmODkgcmVsZWFzZTI0LW1haW50Cis0MjQ0MSBjOTE4NzkxMmI1OWU5OTE3ZjM0MGQyMWQ3YjMwZDAwMjQzNjUxMzc3IGxlZ2FjeS10cnVuaworNDI0NDIgNjkzZGE4Njc4OTQ2YjY1NjMxOTMxOTdjMjdhMjViMGMyZWMzMTEwMyBsZWdhY3ktdHJ1bmsKKzQyNDQzIGFkM2M0YjJjMTczMDA5NDJjYjVmZGI5MDM4ZmFmZGNlYmNjNDI4MGIgcmVsZWFzZTI0LW1haW50Cis0MjQ0NCBiY2UzZjM1NmNkN2I5ZDFiMjM4YjNmNmU1ZjMzM2E1NjA2YWFmYWVmIGxlZ2FjeS10cnVuaworNDI0NDUgYTlmOWRiOWZhOTc0YWM4MjQ2OGU3MzMwZWU4NDg5Nzk0MmFkMDI1NSBsZWdhY3ktdHJ1bmsKKzQyNDQ2IGM1NjUwZGJmOTM2ZWMwYzExNjFjMjIzMmY0MTkxYWU2MDQ4NTY0NzEgbGVnYWN5LXRydW5rCis0MjQ0NyA1YjM5NjE0ODE3YTNlOWMzNTMyNjM1NGM0MDE4YTk5NjUyZDVmMTIxIHJlbGVhc2UyNC1tYWludAorNDI0NDggYmM0N2YxYTZhY2I5OWU1YmE1NjU3MGE0YWZiNmMzNDU1YzAzNjUyZCBsZWdhY3ktdHJ1bmsKKzQyNDUwIDQ2NjhkZjQ1MDY3MmMyZWZiOTkzMDVjMmM5ZTQwNDhmZDRlNmQwMTIgbGVnYWN5LXRydW5rCis0MjQ1MSAxNTc2ZjliZWI1MDNiYzQ4ZWNkYTlhMjBlY2VjMTNlYTliMGU3MzUwIGxlZ2FjeS10cnVuaworNDI0NTMgNzg3ZmViYWUzMGRiZjNjNmEzZTQ4NGMyOWVmZGIyYjdhN2ZkMDE0NyBsZWdhY3ktdHJ1bmsKKzQyNDU0IGQzNjg1ZjliN2I3MWI5NzU3YWU5MDdlY2I5ZGFkNzk2N2FiNmFhOTAgbGVnYWN5LXRydW5rCis0MjQ1NSAwOTIzMDM1N2Y5Mjc5MTE4Nzc4ZTE0NDA2ZDJiMWQ5OTdhYWY4NjI0IGxlZ2FjeS10cnVuaworNDI0NTYgOWE4Mzk2ZjQ2MGFmZmNiZGI5MjA5NWM2MjU4N2ZmOTdjMzA2OTYxMCBsZWdhY3ktdHJ1bmsKKzQyNDU3IDZiZjc4ZDJiNTNiNDM1ZmNlZmZkYjYxMWU0NTUyNzZmOTM4M2JjY2QgbGVnYWN5LXRydW5rCis0MjQ1OCBhMTIzMjYwMjI2MmNiZmFkMTU1ZDkyYzdlYjYzMjJkZDc0MWE5MWJkIGxlZ2FjeS10cnVuaworNDI0NTkgYjkzODFhNTYyM2UyYmU3NmNhMWI2YTBkNjEyNmQxOWFkNmU2Nzg0ZCBsZWdhY3ktdHJ1bmsKKzQyNDYwIDhkZTU4MjQ2ZmVmOGUwYzRmMTliMGU0OGRkODZlMGYyOGZhMDk3YzggbGVnYWN5LXRydW5rCis0MjQ2MSA5NDE3ODZlNjNhYzhlNmE1Yzc1YWYzYjU2ZDg2MDYyMGRmYjBlM2Q3IGxlZ2FjeS10cnVuaworNDI0NjIgMGVmN2NmNTIyMmIwOGFkN2MxOGMxYjY0OTZmYjhlYjZjNmNmZjZlYiBsZWdhY3ktdHJ1bmsKKzQyNDY0IDlkMjlkYWVjYjlmYWFlOGFmNGI0YWZlMjI0OGI4MmVjNmRiNmIzOWQgbGVnYWN5LXRydW5rCis0MjQ2NSA1Y2UzMmE1YmQyNDBhNzQ5MmMwNjdiOGVjNTU4YzkyOTVlMTg2ZGI0IHJlbGVhc2UyNC1tYWludAorNDI0NjYgMjM4NmMxMDVhODk0MzY0MTMyYzZhNmI4M2E0ZTRiMDY2MjJhMmY1ZiBsZWdhY3ktdHJ1bmsKKzQyNDY3IDNlMWQ4ZDNiNGI2ZWQ4OTMyMjIwZTU1MzU5NmFjOTliM2UyMWQwMDkgcmVsZWFzZTI0LW1haW50Cis0MjQ2OCAxODQ1ODcxMWViZWQ4NmM1YmMyNDhlNDBlNjhlMzMzNTdkMjkyY2RlIGxlZ2FjeS10cnVuaworNDI0NjkgOGI0Y2IyMjViNDk3NTc4ODg5YzIwNjZiMTNkYWEwY2FkZTQxY2I3MCByZWxlYXNlMjQtbWFpbnQKKzQyNDcwIDU5YjUzMmFiMzM3NjkyMzIwYWVkZjUyMTMyMGJmNWYxOTJjMTdmOWUgbGVnYWN5LXRydW5rCis0MjQ3MSA1NzI5YjRiYzliOGQzOTY5YTllNDM2ZTY0YjQ1Y2MwOTk5YmJjNWFlIGxlZ2FjeS10cnVuaworNDI0NzIgYjYwYzUwYjE2MTI2YjVkY2U3MDc2ZWE4MzdiM2EyNGJmODY0ZTBhZiByZWxlYXNlMjQtbWFpbnQKKzQyNDczIDMzYWRjNWRkMmJmMjE5OGI3NmU3YmY0NzI0MDhjYzNmZjNiY2I5ZDMgbGVnYWN5LXRydW5rCis0MjQ3NCA5MjAwNDkxM2I0MTIyMDYzYWI4YmZmNWM2YTI3MGExYjA0ZDZjOTUwIGxlZ2FjeS10cnVuaworNDI0NzUgODFmZmRlZWExZDA2NjAxZmNmNGI5YmY3NDVjODRiMTZhM2U5OWEyZCBsZWdhY3ktdHJ1bmsKKzQyNDc2IDAyYTBlYjFhMmIyMWJiOTQ5YzExYzc4ZjcyZDY0YTBjY2I4YTRkMjQgbGVnYWN5LXRydW5rCis0MjQ3NyA4ZTEzMjM2MjQzZGQzNGNmZWQzOWE2MDQ4MmIyZGJhYjAwYzA2M2FhIGxlZ2FjeS10cnVuaworNDI0NzggZGM2ZGVjMTU2ODY5ODJkNTkzMjViYzQwNDhhZjU2NDg3M2IwNDMyMSByZWxlYXNlMjQtbWFpbnQKKzQyNDc5IGE2NDUwZjk4OGFhNDQ1NzJlOGZjMzhhYzg5ODUwMTUwMDBlMTBhMTEgbGVnYWN5LXRydW5rCis0MjQ4MCAwZjFmYzhlZmI3MGI1ODJhYzEyNGUxNmYwYzRlNmYyOTY0Njc0YmM3IGxlZ2FjeS10cnVuaworNDI0ODEgOTg5YWEyODVlZGI5YmRkZjU3NDE3ZWIwMDVlMjk0MzY3MzZiZWFkMyBsZWdhY3ktdHJ1bmsKKzQyNDgzIDE4ZjI3MmY1MzY5OTEyOGE1YjIwOWY1MDczN2NlYmIyZWFkZmMxNGUgbGVnYWN5LXRydW5rCis0MjQ4NCAyNDc1ZmU5NTc4MmQwMDU2NWVmOTQ4OTJjZGFkYTQ1YTI4OTdmNjVhIGxlZ2FjeS10cnVuaworNDI0ODUgODJiYmQ1ZGUwMmYxYzg4Njk4YjdiNDNkZDU1NDY3NjExYjI3OGVjZCBsZWdhY3ktdHJ1bmsKKzQyNDg3IGM2YmQwMWM3YTU2OGM1MDZjZTA5MzUyMDIzYjQyMzk5MmE5NTI1MzkgbGVnYWN5LXRydW5rCis0MjQ4OCAyMTBjZmU5ZDMwNzc0MTI4NmYxYmZkZjkxMzFiOTMwMTlkMThkOWI2IHJlbGVhc2UyNC1tYWludAorNDI0ODkgMGQ1ZjgwNzdiZDI0MTk1YTA4YmMxNTUzODdhNGU0NDM0MGMzMTZlMSBsZWdhY3ktdHJ1bmsKKzQyNDkwIGExYjMwZmNkOWUyOGViODQ1ZjFjYTM0YjZlZDFhZmZlNjg1OWM0YTUgcmVsZWFzZTI0LW1haW50Cis0MjQ5MSAwNWVlMDZiN2I1NDczNzAwZGRhYzU3OWY4ZmI5ODFlNzRiMDJmZWFlIHJlbGVhc2UyNC1tYWludAorNDI0OTIgYmQ3ZjJkOGU4ZGVhYmJlMDQyNWQzZDQxNGEwZmNhYjgzNDViZGU4YSBsZWdhY3ktdHJ1bmsKKzQyNDkzIDc4MTY1NGJlNTVlZjBjOGRlM2E1OTgzYjE5Y2ZkZTEwODEyNGY0NGYgbGVnYWN5LXRydW5rCis0MjQ5NCBjNmZiYTQ1NjIyN2I5NzNmZDI1YzZhYTBkYWNmMzljM2IxMDA4YzVhIGxlZ2FjeS10cnVuaworNDI0OTUgZTU3Mzc3ZjBhMTY3ZjE0NmQzYzJlYzIzNTM4YWZkYWFhODJhOGM3YyBsZWdhY3ktdHJ1bmsKKzQyNDk2IDM4ZjRiMDk4ZWE2OTBjOTVjN2Y2MzA1NjY0ZGIwMTI5YWYzYWI1NDQgbGVnYWN5LXRydW5rCis0MjQ5NyA5ZDk3YzgzMzhkNGMyNGMzMDIxYTViNjIzNTczZjQ2MTQzZDllZGI4IGxlZ2FjeS10cnVuaworNDI0OTggYzU4ZTc5YjJjYTA1ZWI5NDQ2YTM3Y2NkMTMxOGU2MjFmNjMwNTZkNyBsZWdhY3ktdHJ1bmsKKzQyNDk5IGU4YTQ5ZWI4NTE5YzM1NjU5YjgxMjhkMDhjZjE4ZWJiZTVjYjRkMGIgbGVnYWN5LXRydW5rCis0MjUwMCAyYzE4NzBhYmI2Y2U1NmRkNWNjZjIzYWY5N2E4NTY3ZmRmMDQ0ZDRmIGxlZ2FjeS10cnVuaworNDI1MDEgOWMwZmQ1ODY0NzVjMTcwNjQ0MjcwOGZhOGVmYjc2MWZiZWZmOTA5MiBsZWdhY3ktdHJ1bmsKKzQyNTAyIDk0NmNmNmQ1OGZkMTE1OTU3NzM3YzdiMGRlYzNhYWYzMzQ4OTI5ODAgbGVnYWN5LXRydW5rCis0MjUwMyBmZTRhZTBjNDE3YzdiMjk2NjZkYTZhNjUyNGRjMTNiY2Q3NzE1ZmI0IGxlZ2FjeS10cnVuaworNDI1MDQgY2FiMzZhYWVlMmUzZDU3YTUyOTE1Zjg4YjllZTQ1ZjczNWUwYThiYiBsZWdhY3ktdHJ1bmsKKzQyNTA1IGY2ZDZlNTIyMDgyM2UxNmE0ZjYwYTU5MzBlMTZhMGMxNWFmYzJjZDggbGVnYWN5LXRydW5rCis0MjUwNiAxYTk4Nzk4YTRiMWRhNzIxOWM1MzQ4OTExNDA0OWQwNGU0NDJmMjkxIGxlZ2FjeS10cnVuaworNDI1MDcgM2E1ZjcxZDZiYmVlOTQxMTFlNzg1NzA0YzAyMGJlZTkwMzA1ZTBiMiBsZWdhY3ktdHJ1bmsKKzQyNTA4IDQ2ZWM5NDhjYmRlOGY3OTY5ZjI3NzhjNzQ2ODY2ZTdmZjZkMjUxMGUgbGVnYWN5LXRydW5rCis0MjUwOSAwNjcxZjNjNDYyZDUwMDY4ZTRkZjI4OWI0Mjc0ODRlNjk0N2U5MzQ5IGxlZ2FjeS10cnVuaworNDI1MTAgNGQ3NjUzZTVjYjNiY2FhYWEyOTZlMWEwMzY0MGNkMzJmMzViMWU1NCByZWxlYXNlMjQtbWFpbnQKKzQyNTExIDk1MjNhOTQxNWUxODEwZTEyZDY5ZjMyZDA4NWE0YzhiNDgyOTA0M2QgcmVsZWFzZTI0LW1haW50Cis0MjUxMiBkY2Y2MjExM2MyZTMyYzFjNTEzZTliNzZlZTQwMzRhZDRkYWQ2MzA5IGxlZ2FjeS10cnVuaworNDI1MTMgN2QyOTJjYmM3MTNhYjBmZTk5ZTkwNjJkYjllMjEyOWZlMTg2NTEwMSBsZWdhY3ktdHJ1bmsKKzQyNTE0IDM2MWM2NThhNTVlNmUzMWEzMGFlYWZkYTI2ZGY4ZWJjYTQ5MTJjOTEgcmVsZWFzZTI0LW1haW50Cis0MjUxNSBjMzZlMzdhMThmMWEzOTY5NGIyNTFlOTNiNWVmMDg5YjQ0OGM0MmMwIGxlZ2FjeS10cnVuaworNDI1MTYgYTlkNmIxYWVjMDk2M2I0Y2NkOGUzY2E5YzI0YjZmOTRkYmE0NTZiZSBsZWdhY3ktdHJ1bmsKKzQyNTE3IDZkM2JhMDA0ZDVlNTk3MWIwZTQ2OGQ1OWM2ZmJjOGVlMTE0YTcwOTIgcmVsZWFzZTI0LW1haW50Cis0MjUxOCBiNzY2ZWQwM2Q0MjU2YTZlZjRmN2Q0OWQyYzFjNDAyNGFhNzliY2NiIGxlZ2FjeS10cnVuaworNDI1MTkgYzZmZGU4YTNiOWRmOGEwNWViYTY2YjEyYWRkYzM0NzQ3YzE4ZDA0MSBsZWdhY3ktdHJ1bmsKKzQyNTIwIDRiNGVhMzhkYTk4ZWQzMTk4NDY2MzBiOWZmMWFmMWY3MTliOGUzMDUgbGVnYWN5LXRydW5rCis0MjUyMSBkMDA4MDc1MDU3M2I2M2NkYzc3NmY5M2UwY2QyYzYzMjk2MWIyYmIwIHJlbGVhc2UyNC1tYWludAorNDI1MjIgZDExMmRhNzk2NGQ2MjlhMmEyODU5MmE2MjJjNmIyMzk4NWRhYzFiMSBsZWdhY3ktdHJ1bmsKKzQyNTIzIGZmOWFmZWIwNWIzNDI2NzRkYTc4YmQyNDk1YzI2ZmFhZjM5YTUzOTkgcmVsZWFzZTI0LW1haW50Cis0MjUyNCBiZGRjMTNkNTdiODgyZDJmZWUyYjMwYjUzMzNkOGEwYzQ1OGZiNTY3IGxlZ2FjeS10cnVuaworNDI1MjUgMWUzOTY4ZmNhYzY4MTllZTQ2NTAxYzExNzYxOWNmYWFiNDNiYjkzNCBsZWdhY3ktdHJ1bmsKKzQyNTI2IDhhNmZhZWQwYWYwNGI1Yzk3MzE1MjkwMWQyYjRkOTk5ZTc0MzY3NzEgcmVsZWFzZTI0LW1haW50Cis0MjUyNyBkNGUxNzYyYjhlMTUzNDBmZmNhMWU5N2Y1ZGY3MTJkNDllMmY1OTYwIGxlZ2FjeS10cnVuaworNDI1MjggMjg0MTNjMDgyYzA4NzYyZTBiNThhNTE4NTViNjAzOGExZThkMDFjOCByZWxlYXNlMjQtbWFpbnQKKzQyNTI5IGViMDk3NzkzMmUyZGU4NjVlZjUyYjc0ZTdkZTU3YzBhOGIyYzUzNGIgbGVnYWN5LXRydW5rCis0MjUzMSA0OWQ5YzEyMDM1N2FkMTAxNWY5YjFmYjVlMWVmY2MzZWU3NDNmMjc5IGxlZ2FjeS10cnVuaworNDI1MzIgNGQ5ODhkZGE2NDc4NjQ0YjkxZDYxZjNkYTNjOWFiYjIyNTk5NmVhYiBsZWdhY3ktdHJ1bmsKKzQyNTM2IDIwYzhmYTFlMDY2ODM4ZjA1OWFkZGRkNThiOWE5ZmU0NjExYmNmYWYgbGVnYWN5LXRydW5rCis0MjUzNyA5OGY2YjU5YTZlMGEwOWRhNmI2Zjc4NjFjNDRlZjhmYjEwMmIyNjRiIHJlbGVhc2UyNC1tYWludAorNDI1MzggMTQ1ZDVmYzlhNmE1MWEyNjQzZjVkZTEyMWI1YTA4MGU3MGIyMGUxZCBsZWdhY3ktdHJ1bmsKKzQyNTM5IDRlNTBhYTdiYjFiNTJkMWMxM2UwMzU1NDVlYWYyYjZhZGFjZmU1MWMgbGVnYWN5LXRydW5rCis0MjU0MCBkMGViY2I0ZjYwMzEzOWIzNDAzOWE1ZTJlZGQzZTEwNTJjMDhhZTY1IGxlZ2FjeS10cnVuaworNDI1NDEgNjljMGJlYzExMDBhYzgzYzc5ODM4NWExYjUxODJiMjI3YTAzNzg2ZSBsZWdhY3ktdHJ1bmsKKzQyNTQzIDVmMmNiNDQ1ZTFjNTQ5ZWRkOWQ1YzJlNmI3ZjJiNmQzZDA5YzEwNDcgbGVnYWN5LXRydW5rCis0MjU0NCBlMGMyYWJkNTgxYzViMGI1NWU0MjZjZmY5YjQwOGU0MWViZjM4NDliIGxlZ2FjeS10cnVuaworNDI1NDUgMzZhZTNkOTI5ODMyZDRmZjhjYWU3M2M2OTQ2YmY1NGFkZDljYzU4YiBsZWdhY3ktdHJ1bmsKKzQyNTQ2IDJjOGRjMzU4MWI3MGYyZDExYTQ0ZWM0OWE0ZjIxMzQyOWMwZmM3ZGQgbGVnYWN5LXRydW5rCis0MjU1MCAwOWQxOTM3ZjJkYTg5NWZlOGRjNDBjNTdkZmNhYjYyMzIxNTUzMWQ3IGxlZ2FjeS10cnVuaworNDI1NTEgODFmMWIwZGRjOGExNmYxYWEzZTYyZTBhZmNhY2MwY2JkNjA1YTQ1MSBsZWdhY3ktdHJ1bmsKKzQyNTUyIDVhODM2OTg2MjA2ZGQzOTBkYWE2YTE1NGUwZTg4MzdiMDdhM2I4YmEgbGVnYWN5LXRydW5rCis0MjU1MyAyMTYyMjE2MTM5Yjk1Njk1NDMyZTE3NDg3OWFmYjg5OTg1NDZiYTY0IGxlZ2FjeS10cnVuaworNDI1NTkgOTExYzdmYTQ5NWIyNDA0NzA2ZjhhYTQ1Y2NjZTBhOWExNGY4YWFhMCB0aW0tb2JtYWxsb2MKKzQyNTYwIDE0M2MzNDhmZjcxNzY5ZDYwYjBkYWY0YmVmMjA3NDE5ZmUzMzI1ZTUgdGltLW9ibWFsbG9jCis0MjU2MSA0MTI3NjE0Zjc1MmExZjQzNmM5OWVjNzlhYTg0YWM2OTU2MjdjYjBhIGxlZ2FjeS10cnVuaworNDI1NjIgOTU4MDA4NzViZDEyNTk0YjMwNDgyYzlmOGIzMjA3OWFkYzY5ZjE2YSBsZWdhY3ktdHJ1bmsKKzQyNTYzIGUxYzNmZmU5MjZjMTE1NjJkYWNjNDc2ODA4YzAzNDljZTQwZGE4Y2QgbGVnYWN5LXRydW5rCis0MjU2NCA1ZDgyODcwM2M2YTE3MzJhZGQ0NDIwMWQzZjNlNDJkODcwNTJiNDgyIGxlZ2FjeS10cnVuaworNDI1NjggNjI1NjRkYzdiZDcyNjJkMTAxMDg0MWMxNTBlYjA2NmJhNzA3M2JjZiBsZWdhY3ktdHJ1bmsKKzQyNTY5IDhkYjk4NWI0MDg2ZTE4Y2VlNzNkNmM5MTc0MGUwMzUwYjM5ZjJhMTcgbGVnYWN5LXRydW5rCis0MjU3MCAyZmRhNGQxNTBjM2RiNDZmNjQ3MDI5YmI3MTc1MDFlZDVhMThhNWEzIGxlZ2FjeS10cnVuaworNDI1NzEgNmI0MjkyMGFjY2M5MjY0ZjdjYWJmZjVjMzg2MTcyYzIyNGYzNDVlNyBsZWdhY3ktdHJ1bmsKKzQyNTcyIGM2NTA2NDQyZGZlMDE1MjJlZDhiZGMxODZiM2E5MTMxYWVlMDE4ZjMgcmVsZWFzZTI0LW1haW50Cis0MjU3MyA5MmNlOGJiOGIxMmE3ZWI1ZjRhOTMyZDZhNDNiZGY5ZTJlZDhlNDg2IGxlZ2FjeS10cnVuaworNDI1NzQgYzk5NmExMjIzNGMyNTljMGZjYTBmMzUyODhhYzlhNGE0MDVkYzk0NCBsZWdhY3ktdHJ1bmsKKzQyNTc1IDM5MjRhZmNmOTVlN2ZkOWI1MTNjMWM1NzBjYjcyMTVlNTcyYWM5MTMgYXN0LW9iamVjdHMKKzQyNTc2IGM5ZmJiMDY3YzJhNmM5MGUzMGFiOTE3YzFjODYwZmUyMjU0ODllYTUgbGVnYWN5LXRydW5rCis0MjU3OCBiYjQ4MTE1ZTZkYWIzMzUzMDk2YzJhMzc2NDIxMGJlNGU5ZTM0ZDYzIGxlZ2FjeS10cnVuaworNDI1NzkgM2MwYjI2MTEzZGY2ZWQ1YjM2YTYwNjQ5ZDJmZDMxMjYyZTg2ODFhNyBsZWdhY3ktdHJ1bmsKKzQyNTgxIDcxMGNiZGQ0NzhhODUxYjM0MGFjZjRlZjM4MTBlOTcwZWNkNWM2MzMgbGVnYWN5LXRydW5rCis0MjU4MiAyYWI5MjcwZWYxOWFlYWY3ZjBlYThmNDhjNDUxMDY2YjI2ZDU0NDQ0IGxlZ2FjeS10cnVuaworNDI1ODMgNTc4OGUwYTY4OWUyNTc3ZThhNWUzMDZmNDg4ZDZkMDhiNjNiYzc0NiBsZWdhY3ktdHJ1bmsKKzQyNTg0IDdiZmJmYjJlZjRlMjE0NWE1OTM0MzgzYmRkZTg2MDIxMDFkNTAwYTkgbGVnYWN5LXRydW5rCis0MjU4NSA1OGE4NDUxZmY3OTU4N2UzZTc4YjI1NDYwYjVkMGJlZmUwZDQ3MTk0IGxlZ2FjeS10cnVuaworNDI1ODYgNjE2NTkyNzQzMWQ2YTY4NTUwOGZkZTQwODZlNjcxZTVjYWNkODJkMiBsZWdhY3ktdHJ1bmsKKzQyNTg3IGRiNTcxZjljYWQ2Zjg3YmYwZDkwZDMxNmJkYTMzMmIyMDc0MGY4YjIgbGVnYWN5LXRydW5rCis0MjU4OCA4NDEwZjA2YWQzNmUxODg1OTU4OTQ5ZDE5NzU4ZGY0NzYwODY3YmJmIGxlZ2FjeS10cnVuaworNDI1ODkgOTUwNGY3YWMzNjY5YzI4MWNlMjE0ZTE4NzlkYTZmYzBlNTk1OWRiMyBsZWdhY3ktdHJ1bmsKKzQyNTkwIDI5NmNkYTliM2UyZjgwOWY0NTg4ODhhM2RlOTc5NDNhZDMxYjkzYTAgbGVnYWN5LXRydW5rCis0MjU5MSA1ODQ2MzdkODMxZTNmY2JlY2RhZWQyNDgzZTJlMGVlZmYwYjI2Nzk3IGxlZ2FjeS10cnVuaworNDI1OTIgNmMwYjZjMWNkMWY0NjlkNTk0OTQzYTI1NWM0MDJlZWRhOGU3MGI1OSBsZWdhY3ktdHJ1bmsKKzQyNTkzIDJkZGVhNTUzNWYwODY0OWU1NjVjYjc0MjIwOGQ0ZTc3YjEyZDUyOWEgbGVnYWN5LXRydW5rCis0MjU5NSA3ODBiN2FmZTYxNzg1YWY3YzE0N2E5YjcxODViMDI0ZmM1NjFhYjM4IGxlZ2FjeS10cnVuaworNDI1OTYgZGJhNjQ5NDczNWQwMmE1NTM5MmU1Y2VhMTY5MDI4NDQxNzBkMjdkYiBsZWdhY3ktdHJ1bmsKKzQyNTk3IDY3Yzc0ZWZhZDhjMjNmN2ZjYTQ3ZjQ4NzQ4MmUwMDRjZmRiMGMwMWYgbGVnYWN5LXRydW5rCis0MjU5OCA1MjMwYzRjMjllYmIyNzg2NDNlN2VjMjA2NzYyNGVkODJlYTgxZmZjIGxlZ2FjeS10cnVuaworNDI1OTkgYWM0OTg5NTNjZTU3OGZhYTkwMjcyMjNjN2UyMzI1ZWZiNGYyYzM0YyBsZWdhY3ktdHJ1bmsKKzQyNjAwIGUxMzkxOTEwYjAyNjUyZDgzNGUxMTg0NjAzOTRjNjBlOGU5Yjc1YWMgbGVnYWN5LXRydW5rCis0MjYwMiA1NGViNWIxZmIzNjMyZWM4YmFjM2NjNGUxNDQ0NmY0OWU0OWZhNzc1IGxlZ2FjeS10cnVuaworNDI2MDMgZTlmMGRiNDI5ZjJiYmFlM2JlMTY1MGY3YWNmMjJlOGZiZGMxYjE0ZiBsZWdhY3ktdHJ1bmsKKzQyNjA2IDUyY2JjNDQ3ZTFjOWZiZWU3YWY1MDJmZDJjZTc2MGQ0NWQ2NGExMDQgbGVnYWN5LXRydW5rCis0MjYwNyBkYTJhMTA0OTIxNWQ2MzE4YmYzZjdmMjFkMjE0OGQ0ODI1M2JjNzc5IGxlZ2FjeS10cnVuaworNDI2MDkgMGJlYmViMzkzMDQ1NDMzZDBhZmM0MTUyOTA4MDgxZTcyYjZmOGEwMSBsZWdhY3ktdHJ1bmsKKzQyNjEwIGI4NzNlYzY3ODU2MDUxMzZjM2M2NGU0Mzk1ZGE5ZTQ4MDM1MTI3NmIgcmVsZWFzZTI0LW1haW50Cis0MjYxMSA4NjExZjM5Y2Q4MmJmYzJhZjNkNDhjMTlkMTQzZTY0YmYxMmU0NDQ2IGxlZ2FjeS10cnVuaworNDI2MTMgN2QwZjEyMzQwYzllNGY1OGI2MWMwNjhlOTFjOWE0MGUwNDY5ZWM4OCByZWxlYXNlMjQtbWFpbnQKKzQyNjE0IGUwZmVhZGM3YWZmYjcyYmY4MWNkNWExYWQxODU0NTgxNjI2Zjk3YzMgcmVsZWFzZTI0LW1haW50Cis0MjYxNiAxMTQ4NGE3MmQ5NjZmZDg4ZWJmZjlhNzdlYjRjZTZhZWVkMTAzMmVmIGxlZ2FjeS10cnVuaworNDI2MTcgYWNhYTc5ZTczMTMzM2U1MmQwYTBlNTQyZDA0YmM1YjZkMWZiM2Y1YSBsZWdhY3ktdHJ1bmsKKzQyNjE4IGRkM2U1YTk0NTk2MmMxZWM5ZDgxMTU2MmRjZTY0ZWNmNzZmMDNhOGMgbGVnYWN5LXRydW5rCis0MjYxOSAzMDE3MTA1MzVkMTUwMjc0ODFjMGNiY2RkMDdkOGIxYWE0NzMzYzMxIGxlZ2FjeS10cnVuaworNDI2MjAgMTgwZGJmY2YzYmVkMDY1MDU5ODU2MzI3OTQ0MzA3MmM2NzEzZTdiOCBsZWdhY3ktdHJ1bmsKKzQyNjIyIDAxNTFhMDIzNzRhODJlMjUzYTM1ZjU0MjJlOGNhYjgyMTA1MjVkYzIgdGltLW9ibWFsbG9jCis0MjYyMyBkZmFiMjJhZTQ4ZTM2N2Y0MDkzOWUzNTEwMzI0ZTFiNmQwYzBkZWI4IGxlZ2FjeS10cnVuaworNDI2MjQgYjZkMmY2ZmQzZTExNmI5YjlmZTk1YmM5ODJhYzc2M2MzNTlmZjEwMyBsZWdhY3ktdHJ1bmsKKzQyNjI1IDdiNThmYmRlNWU1ZGZjMWJkZDM5ODEwYzY3NWVkNDBhYzQwMWQzZjUgdGltLW9ibWFsbG9jCis0MjYyNiBlMGE3NzAxMGQwMzNiYzkzMjJhNzdjZGQwZWUyNWJhN2QyNzE1ODI1IGxlZ2FjeS10cnVuaworNDI2MjcgNzhkZTVmNmIyZjY3YjNlODUzOTM4OGI3N2NhZTBlMzI0ZWE3ODQxYSBsZWdhY3ktdHJ1bmsKKzQyNjI4IDMwNTY3YmU5MGM4NTEzMTFlOTJhZDEwMGJjMTkwY2RmYzQ4ZWE5YmEgbGVnYWN5LXRydW5rCis0MjYyOSBhYTA0MDQxMGZiOWEyZGY5OWQwYTM4M2IzOGRiNmY3ZWI1NDU2ODJkIHJlbGVhc2UyNC1tYWludAorNDI2MzAgMmEyZDQ2ZDE5MjlhNDA2YWZlNjViMTNlM2Q3YWMzOGMyMzYwZWQ0MCBsZWdhY3ktdHJ1bmsKKzQyNjMxIGUzMjQ4ZjFmYzU0ZGI3MThhOTQyMzg0Mjc5YmY0OGQ1NmJlNTI1ZjkgbGVnYWN5LXRydW5rCis0MjYzMiAzNWRiYmMxYWI0NDg3ZGZmODc2NDk4NzgxZjM4ODljNDJhOTM0MzkyIGxlZ2FjeS10cnVuaworNDI2MzMgYzNlMjg0MDk2ODZjYmUyYzNhNjc5MDBlYmIwZGI3ODFkZjVjZWVjMyB0aW0tb2JtYWxsb2MKKzQyNjM0IDY2NDVkYjA5NDk0M2RkMmI0NDRmYzFlMDFkNDgxODc2NzgzYjgzZjIgdGltLW9ibWFsbG9jCis0MjYzNSA5ZjNlNThkYmVhNjMxYmM2NjUzNTk0MDc1M2E1Mjg4OTY4ZDYyNTIxIGxlZ2FjeS10cnVuaworNDI2MzYgM2Q2OGYzNTJjMmZmMDFmMjA3ZDZhOTFjY2Y0YzcwYzBiNzM2Y2M5ZiBsZWdhY3ktdHJ1bmsKKzQyNjM3IDhmZjI4ZmNmODcyZTBhOWI5NWM2YzlhYWIwNWEwNzc0M2NmNjhhMTEgbGVnYWN5LXRydW5rCis0MjYzOCBiNmIxYzQ0ZDkxMTA1Mjg1M2M3Y2RmMWY3NDNlODNlN2JkZGZmNTQ0IGxlZ2FjeS10cnVuaworNDI2MzkgY2Q4NDdlNzI2ODM3MmU0ZTdlYmJkYjA0MWYwMTlkNjBjZGEyNzliOSBsZWdhY3ktdHJ1bmsKKzQyNjQwIDgxYmUxNWI4NDI0NDUzOTgyNmFlZjFlNmJiYmMzNjcwMDQ4MTY3YjggbGVnYWN5LXRydW5rCis0MjY0MSBiZWE5NDc1NDQ0MWIxYTcwYjcxM2ZlZWVlYzgxZTZjNmVlOTllNDI3IGxlZ2FjeS10cnVuaworNDI2NDIgMjU4OTkwMjQyODk4ZTZjNjAzZTczNjRmYTU4MTRjNzI4YTg0YmY0NyB0aW0tb2JtYWxsb2MKKzQyNjQzIDNjMDdiNmM1Y2Y3ODhiN2JkMGM4ZmVhOGE5OTRhNGM2YzkxNTA4MDMgbGVnYWN5LXRydW5rCis0MjY0NCBmMTUzMDJkOGIyZGU1OWYxYTE0MTI0MWRlYTgwM2NiMmRlZGExZGI3IGxlZ2FjeS10cnVuaworNDI2NDkgNWMzNmMyMjJlN2NhNTMxMGU1Y2M4YjhkYjI4M2JkNjY5ZDFlMjRkNCBsZWdhY3ktdHJ1bmsKKzQyNjUwIDk3ZWU3YjUzMzY2NDgxNzgwYjZmMzMxNTUwZDY2NGFjODYzZjY2ODIgbGVnYWN5LXRydW5rCis0MjY1MyBjMzQ0NWIxY2YxYmYxZWQwNGRiZDFjMmRmNWE4MTUxYjQxMDJkMTc5IGxlZ2FjeS10cnVuaworNDI2NTQgNDI5MmI0MjY4M2M1ZmNjNzU1NDMzOGJiZmQ4NDdiYjUzZTkxYWM1MiBsZWdhY3ktdHJ1bmsKKzQyNjU1IDcxZDg3MzA1NGQyOWVkYmQyMjAzMmM4YzkxNWNmMGVlY2JiOGI1YzMgbGVnYWN5LXRydW5rCis0MjY1NiBhZTM5ZmNlMGY5YTE2ZWMwYTU4OGQ3MTg5OWRkNDZiNzdkNTE0NjEwIGxlZ2FjeS10cnVuaworNDI2NTcgNDVlNmY5MDE5MDJjYTU4NTdlZWU5MWFiYTA0OGRmN2RkNTYwMTg2NCBsZWdhY3ktdHJ1bmsKKzQyNjU4IDY2ZmM1YjI2Mjg2OGJlZTdkMjMxYzc1OTg0NmMxZmVkM2NkNWVkZWMgdGltLW9ibWFsbG9jCis0MjY1OSA5NDJhZTI1Y2IzOTE1MDQwOTEwMmQ0ZDY2NmUzNzMxNDg5NWE0MmQxIGxlZ2FjeS10cnVuaworNDI2NjAgNDAyZGUwZmVmMTE2ZDhlN2MxNGMwMmM1NmRkZTBjZmViNWY3NGI1ZCB0aW0tb2JtYWxsb2MKKzQyNjYxIDExNTk2MDY0MGYyNWRlNWIwMWQyMjliMzIyYjc5ZTc1ZjhiMjBhYTYgbGVnYWN5LXRydW5rCis0MjY2MiBmN2I0NzI2YWRhNmM1MDljMDM5ZjY3NjJmZTBhYTFhYjMxNmIzYmYyIGxlZ2FjeS10cnVuaworNDI2NjMgYzQwYTMzY2E2NWI5MTYzYjlkODJkYzkzZWI5YjE3MmYzNmMzYmJlZSBsZWdhY3ktdHJ1bmsKKzQyNjY0IGU1ODBjOGIwZGNlYWI0MGViZjI5Zjg1ODY5YTQ2NWM0OGUwYzZhZmYgbGVnYWN5LXRydW5rCis0MjY2NSA1ZjM4MjJjMmU3MzEwNGJiZTRmOWQ3Y2EwODFiYjBiMzAzODUyNDNhIGxlZ2FjeS10cnVuaworNDI2NjYgOTkwNjZiZWExN2Y4ZjAzMmU4MDc4ZDVhZDc4YzZhY2ViNzRmYzBkNCBsZWdhY3ktdHJ1bmsKKzQyNjY3IGJiZjE2ZmQwMjRkZjdiY2ViYzBmNmZlODgyYjdjYzhjZjk3NjBiNTYgbGVnYWN5LXRydW5rCis0MjY2OCBjMDY2MTNlNTNmYWRmMzc0OWI4OTFlOGZjZmQ0YWNmY2U4ZTI5YzQ2IGxlZ2FjeS10cnVuaworNDI2NjkgZjJhODk1ZDMzYTVjYWU5MTNmNmVkYzgzYTA1MTVhMGI5NzU4MTI1NyBsZWdhY3ktdHJ1bmsKKzQyNjcxIGQ2Y2JjNzFiODAxMDkwOTlkMmQzNjc4YmJhNmU4ZTkyYTYzMmIyOGIgbGVnYWN5LXRydW5rCis0MjY3MiA4NzcwNjQzOGRjM2M0MWJhMjdjN2RjOTRkZDEzNTYyMjExNzdmMTBkIGxlZ2FjeS10cnVuaworNDI2NzMgZmQ1NDk3YjY0MjA5YzI0MTE3YTQ3Yzg2ZTNlODc5NThmZGQ5OGM5YyBsZWdhY3ktdHJ1bmsKKzQyNjc1IDhhMmE1ZjcxYjhiM2Q3ZTI3MDA2YTEyMDQ3NDAyNGM5OWYzOTliOGQgbGVnYWN5LXRydW5rCis0MjY3NiA2NTgzYzg2ODgxN2FhYTRjOWI5Y2UzN2MzNWRjMTNlZmI3ZTEyZWQ1IGxlZ2FjeS10cnVuaworNDI2NzcgNGE0ZTBjNThkNDM3ZTg3ZjBjMzE1OTk5NWNkN2ViNThlMGE4MDNkNSBsZWdhY3ktdHJ1bmsKKzQyNjc4IDQxNzgxNTA2MjMzNzhhMWU5MTUyNWNhY2M0ZDlhYTc3NjI1NGNjYjAgbGVnYWN5LXRydW5rCis0MjY4NSBiYmNlOGVjMmZmODFkMGRjZjk4MzcxNjFmMTY4ZmJlMjA0NzVkZWFkIGxlZ2FjeS10cnVuaworNDI2ODcgOGI2ODUxMzgyZTI3NTM1OGZhOGIyOGM1MmVmN2ZlYzc5MjJiYzQ0NiB0aW0tb2JtYWxsb2MKKzQyNjg4IGZhOTJmZTE1MjUxYTA1MTA4NTdiMjAyOWU2ZmQyYjc1YzE5NTk2NjIgbGVnYWN5LXRydW5rCis0MjY4OSA0M2I5ZDVmMDkwMWJlNjYyODQ0NWY1YWE1MzA4YzczY2Q5YTA4MGNlIHRpbS1vYm1hbGxvYworNDI2OTAgNDNjNzA0NjBjY2Q1OTBkMGI1OTQ4ZjQ1OGRiYjRjODFhZGZjMzFmOSBsZWdhY3ktdHJ1bmsKKzQyNjkxIDc5NmQxNTBlNDVhOTRiZmYxMjA1ODc0MjAyMzM0OTdiN2M3MGI3ZGUgbGVnYWN5LXRydW5rCis0MjY5MiBhM2U0YmQ0NzVhZDdmNzQ4NTg0MGUxM2E0ODMyZmI0ZGQyMjlhMTIwIGxlZ2FjeS10cnVuaworNDI2OTMgYzA5ODJiODE1NWM2MmQzZmY0NWE4MjFmZDZhZDMxNWI1NzIzYmUwZiBsZWdhY3ktdHJ1bmsKKzQyNjk0IDY1OGY4ZmYyYTQ0MmQwMTgxNTZlNTU4MWFjYjE5Nzc4YzZmMGU0NjMgbGVnYWN5LXRydW5rCis0MjY5NSAzMTA1MWE3MGIyOTcyZDhmMmNlNDBlNDg5Y2VkZWE5NDk0NjQwMGRiIHRpbS1vYm1hbGxvYworNDI2OTYgZGJmOWNjNmMzNmViZDcxY2JiZDkyMzM3ZmMyM2JlYjY5Yjg4MzE3MCBsZWdhY3ktdHJ1bmsKKzQyNjk4IGEyMTM4ZGZiNTk2NTI2NDk0NTUyNmUwMTJjN2Y1ZTI4MWVjMjk3ZjcgbGVnYWN5LXRydW5rCis0MjY5OSAzZmZjMWUxZDJmNTc2ZjY0ZjZkNzE4MWE2MzM2NTMyNmUwYWNlZmYwIGxlZ2FjeS10cnVuaworNDI3MDIgOTIyNTM5ZGJkYzRlNWQ5Yzg2YzUwZjUzOGJmMDMzZmI3ZDc2MzFkMSB0aW0tb2JtYWxsb2MKKzQyNzAzIGU4MjFiOTM2ZjNmYTc1NmExNzY4Y2U2M2ZhNDVhY2JlMGI4OWM4NjAgdGltLW9ibWFsbG9jCis0MjcwNCA4ZGY1NTAxNGM4ZmIwY2QyNzE0YTMzZGEzYjQxYjA4MzNhZWViYmE5IHRpbS1vYm1hbGxvYworNDI3MDUgZWY1MjQ2Y2U4ZmU2NTYwMGYwZGZhNWFhOWFmNGFlYWZmNDYxOGJlMiBsZWdhY3ktdHJ1bmsKKzQyNzA2IGRiYTc3MDkyZDQ2ZWJhZjJiYjhmMjQyYmMyYWQwM2Q4NzdiNGY1NzkgbGVnYWN5LXRydW5rCis0MjcwNyAwZjcyODRjNDkxYTMxN2JkN2ZmNjQ5ZTc2Y2VhYmY4MTE1MGE3NjJiIHRpbS1vYm1hbGxvYworNDI3MDggYzI5NDJjZGQ4OGIzMjUwN2Y1NWEzOTQ0NGJiOGQ4MDE5OGYyNjA2NiBsZWdhY3ktdHJ1bmsKKzQyNzA5IDBiNWU5YWNlMmU4N2IzODY4MjUwZjNkZDM1MTQzODVjOWEyZTNkMjIgbGVnYWN5LXRydW5rCis0MjcxMCA5MmJhNzI0ODRmZjM4NDUyNDhlZTk5N2IxNjlmZDNhNmUwNjUwNTdlIGxlZ2FjeS10cnVuaworNDI3MTEgOGUwNGRlMjQ4MGU0OWVhODQ2NzZjMThhYjNmZDY1ZjdhYzY0ZDlhMiBsZWdhY3ktdHJ1bmsKKzQyNzEyIDdiNjZiMmRjYzVlOTZhNjRhMThkZjIxZDEzYmE5ZjJhZjExYjQ4ZDUgbGVnYWN5LXRydW5rCis0MjcxMyAxZTgzZjE4MmI1ZjlhZjgxMWQ0NzQ4ZWQ5MWFlYWZkMzZiNDUxMzE0IGxlZ2FjeS10cnVuaworNDI3MTUgMmYxOWI5ODFhYzI0N2MzMjNkMDQwNDE5ZWI2MTdjZjMyZWE3YTVlMCBsZWdhY3ktdHJ1bmsKKzQyNzE2IDMyZTJiOGJkYTUzNWI4YTY4NzE1ZDE3MjU0MzdmMzlhMzYyZmViZTAgbGVnYWN5LXRydW5rCis0MjcxNyBkMGNhNjMwMmRkM2M5OGNjZjA3MWQ4M2M2MWJiYjdjN2Q4MzRkY2UzIGxlZ2FjeS10cnVuaworNDI3MTkgYzQxMzhhZDFlMDlhMGUzOWM3ODIzMDRlZDJkYzllODBiZDZlMWZhMiBsZWdhY3ktdHJ1bmsKKzQyNzIwIDNlMTkyNzFlZmM0NmU2OTI2MzhjYmQzNjFkN2UxMGVhNTJhMTQ2NTEgbGVnYWN5LXRydW5rCis0MjcyMSA4M2I4NjBhY2ZlOTVlNmYwMTdjY2Q2MjAyOTNmNzU0MzgwM2U0NjlhIGxlZ2FjeS10cnVuaworNDI3MjIgYTM2NmRmYzcwMzVmZDE5MjBjMWFhMDNiMjdmMzU0N2FmMTllNDhkYSBsZWdhY3ktdHJ1bmsKKzQyNzIzIDNkZDkyZDk3YTY3ZmY4MjFkZjJlMzc4MTliM2NkODZlOTI4YmFhNzQgbGVnYWN5LXRydW5rCis0MjcyNCAyMmM1MTYzMmI0NTlkNzcwMmU0YWM4NTYxNWFmYTJmYjA2NjJiNzIwIGxlZ2FjeS10cnVuaworNDI3MjUgNWU0NjNhZTcwNzA3NmRkMjg3MDhkNzY3ZDNlZjJiMmMzNGI0NDg2ZCBsZWdhY3ktdHJ1bmsKKzQyNzI3IDk1YTkyYjJiNTNlZTQ5YWM2Mzc4NmVlYTczMWJkMmM4YTU5Mjk4M2EgbGVnYWN5LXRydW5rCis0MjcyOCAwNjc0Nzk2YjY5NmNjNWEyMDYwY2JhMjMzOTZiZjNkMzk3MjNhNjExIGxlZ2FjeS10cnVuaworNDI3MjkgMWRhYTE5OWI3ODRiZTRhNjNmNTBjODA1ZjZhYjQzYTljNjc5NmVkZiBsZWdhY3ktdHJ1bmsKKzQyNzMwIGUzNjRiYzc2YmRjOGQ0NjNmNjRmYjcyM2I2YzAzNTAwMTRkYzc4NzUgbGVnYWN5LXRydW5rCis0MjczMSBkNmMzMGNlMzg2OGIxM2Q3YzlkZGQzMzdlOTY1OWZmYWU3YjJkMDMxIGxlZ2FjeS10cnVuaworNDI3MzIgYWIxYjUzZDU0OTAxYThkYTcxNjdmZWEyNGNmOTA5NzhjYzZlNDY1YiBsZWdhY3ktdHJ1bmsKKzQyNzM0IDYyMzc2MzQ1N2E0ZThmNzU3MDE2MzQ4YjFiNDY1NTUzOGU5NjUyNDIgbGVnYWN5LXRydW5rCis0MjczNSA0Y2M5NWZjZTY1ZGE3NjM5Njc5ZmU1YWJhOWE3MjM5MjI0MmFlZTY1IHRpbS1vYm1hbGxvYworNDI3MzcgZjhmZmE3Y2JmOTYwNWRlNThjYzRjZjc4N2U3N2E1ZGY1MmE0OThlOSBsZWdhY3ktdHJ1bmsKKzQyNzM4IGFmOWY5YjU5M2E1MzZkNzI4ZDJjNDc4ZGU2NmYwNTg2Y2Q1MDE0NDggbGVnYWN5LXRydW5rCis0MjczOSA2NGZmM2IyMjVkNDg1MTYxNTRkNDUxY2ZlZThjNGYwNGQ3M2QyMGVhIGxlZ2FjeS10cnVuaworNDI3NDAgMzU2MTJhMTMxYWM2MjQ4MTQ5OTgyNWRkYWMyMTAxYjlkMmFmODNhNCBsZWdhY3ktdHJ1bmsKKzQyNzQxIGE1NDk0ODE4MGEzZGUyMjllNWUxY2Y4MzVhYzAzYzViY2JkNmJlMGYgcmVsZWFzZTI0LW1haW50Cis0Mjc0MiAxYWVhM2FlY2E1MzVhNjMwY2FkNjM0ZDg0NWIyNDZiZWNjNWJkZjVlIGxlZ2FjeS10cnVuaworNDI3NDMgMTIxMWE2OGIyOGRkMzcxNzc5ZGM0MmE1ODMyNmM0N2FmMmU0ZDNkMCBsZWdhY3ktdHJ1bmsKKzQyNzQ0IGNkN2QyOTE5MTc4Yzc1NzYzNzc3ZTA5NTNiZTExOWRlNTNjNzRlYTcgbGVnYWN5LXRydW5rCis0Mjc0NSBhN2IzNjMyZDBlMDUxNTI1YmY1ODcxZmY2ZjY4NDFiZDIyMTg2ZjBkIGxlZ2FjeS10cnVuaworNDI3NDYgYTAwYTllZWY2MDYzYWNlOTk3ZmQzZTM3OGNmNWM1OWY5ZWEwNmRlNSB0aW0tb2JtYWxsb2MKKzQyNzQ3IDM3Njc5MmJmYjU3ZWY5YjgzNDBmNGJhNDdmOWYzMjVlMmY1YTJkMTIgbGVnYWN5LXRydW5rCis0Mjc0OCAyNWY4ZTZkZGU0YTNiMDk2YjA1YWIzMDczNmExZGM2MzQ2MTU2YWJiIGxlZ2FjeS10cnVuaworNDI3NDkgMmI2NTkyNjhhNzNhYTNlNjg0NTE2ODllZjQyMGQ3ZTk2YWVkMmUxZCBsZWdhY3ktdHJ1bmsKKzQyNzUwIDk2NWJiNGE1NDA5NjYzMmJmMTQ0MWRhZGM4MTM2OTYwMDg3NTRiNjcgbGVnYWN5LXRydW5rCis0Mjc1MSBkODUzYmMwNjg0N2U2NmRhNGE1ZGE3ZDJmNjA0ZmZhNWQ2MTFlZDljIGxlZ2FjeS10cnVuaworNDI3NTIgNmUyODVjNjllZmMwNWI3ZjhiZGJiMDk5MGFlYTdiMGM5M2JmOGQ1NiBsZWdhY3ktdHJ1bmsKKzQyNzUzIDU3MzIyY2IyY2ExMTE3YjdmMGQyYjRjMGRkNTQ2MDFlMGJiZDJmYWEgbGVnYWN5LXRydW5rCis0Mjc1NCAwY2M1OGRiZDg3ZmViZTE4MjBhYjM2NDlkNTM2MjFiZGJmMzk2NTU0IGxlZ2FjeS10cnVuaworNDI3NTUgYzNjNWQwNmZhYTAxZWNkMWY2N2JlYTUxNWEzZjJiNjhhYjQ1ZDY1ZiB0aW0tb2JtYWxsb2MKKzQyNzU2IGY2NjZiYzlmNjE3ZDg3MDJjNDU4MjI4ZmM2NDJhZmY4MjEzYjFlNjIgbGVnYWN5LXRydW5rCis0Mjc1NyAwOWQxNzQzMGY0YzI1YWM0OTQyYWRmNmIxNjM3MWFhNzI1ZjBhMGIxIHRpbS1vYm1hbGxvYworNDI3NTggMGUyY2Q5NGM1M2E5OGEwODQzZmVmN2JmYjIxYmQxMTk1ZmQ0NzI2YyBsZWdhY3ktdHJ1bmsKKzQyNzU5IDQ4YTI4YjM1ZGQ2NDU1NjVlYTJjMjRhMzRhNGNkMzUwZWMyM2E0YjQgbGVnYWN5LXRydW5rCis0Mjc2MCAwMmQ5YjQ3NjlhODhlODZlZGVjMmE4MzEwN2JkN2Y3OGEzOWEyNTE0IHRpbS1vYm1hbGxvYworNDI3NjEgNjA0YTEyNmY4M2MyMTRmNDA5NWQxOTU4ZDYwZmEyYTE2NjI5ZDc5MiBsZWdhY3ktdHJ1bmsKKzQyNzYzIDY4ODc5NTg3M2ZmMWNlYTE0MDhmNGYyYmY4YWQyNDMyOTg2NjVhNGEgbGVnYWN5LXRydW5rCis0Mjc2NSAxZThjYjQ3YmVhYWE0OGRmODU2ZjdkZmJjNjczZjM0ODQ2YjVjODMyIGxlZ2FjeS10cnVuaworNDI3NjYgZGY4NDNiMDdmNWZlMGE4YzMyNGU0MTA1MjZiZDYyM2NjOGUxODQwMyBsZWdhY3ktdHJ1bmsKKzQyNzY5IDg5ZDY5ZDkyMTJhMmRjYjkwZmM4NGYyYTAwZTVjZDdhMGM2ZjgyODkgbGVnYWN5LXRydW5rCis0Mjc3MCAwNDc0NzFjYjllNGQ5N2I1NzM4NzNjNzBhNDgwYWMwZDg3OWU4M2JiIGxlZ2FjeS10cnVuaworNDI3NzEgNzI4NWMzN2Q3NjMzZTRkZTNkYjU3YjRkOWY4ZDUyMTM0YzJiMzU0MyBsZWdhY3ktdHJ1bmsKKzQyNzcyIDhkZGNhYWEwOGZkZGVkM2YxZjgxZTJlNWNiNTZkNGNlY2ZkNzdjZTMgbGVnYWN5LXRydW5rCis0Mjc3MyA0MjQ4N2Q4Y2YzMzgwMDhmODE0NzMxZWMzZGQzYmNhYjM3MmIxMWI5IGxlZ2FjeS10cnVuaworNDI3NzQgMDRkMThiY2Y3NTE5ZjgyZGFhZTU5ZDhlZDJiZjkyZDgzNjdlODY1MCBsZWdhY3ktdHJ1bmsKKzQyNzc1IDUxNWVmN2RkMTZiZDk3ZDY3MjVlNjdjMjQ2NGZlYzUwNGFjNTM1MjMgbGVnYWN5LXRydW5rCis0Mjc3NiA4OGRmZDMyODFmNzFkN2NhZDUxNjgwNzk2Y2RiYzgwODRlNTYzZmZmIHRpbS1vYm1hbGxvYworNDI3NzcgYmQwNjQxZDYyNDYyNTM3ZWQ0OWVmM2U4Nzg4Mzg4NzU0MTFkZjA5NiBsZWdhY3ktdHJ1bmsKKzQyNzc4IDhlYWY5NTMxYTJkZWQyOTZkMDFiNjQ1ODdkYjU5ZWNhNzkwN2NhZjkgbGVnYWN5LXRydW5rCis0Mjc3OSA2NTgyYTQ0OTBkMWFhYjE1YzVhYzRlNzY3MzBiZDBiMzcwMGQzZWVhIHRpbS1vYm1hbGxvYworNDI3ODAgYzU1MmYyMjc1NzgyY2Y2MmI4YWI0Y2M4MTg3ZjE3YmI1NGM2Mzg2NCBsZWdhY3ktdHJ1bmsKKzQyNzgyIGUwMWYxN2MyN2VmMzBjOWY0YzgzNzMzNjI2MzE1NzA1YjE0NGMwMzggdGltLW9ibWFsbG9jCis0Mjc4NCBhMDBiZDNjZGI3Mjg3YWFmYjM2YzRiYjQ4NWVjMGM4YWZmZTZkMjQwIGxlZ2FjeS10cnVuaworNDI3ODUgZDVlNWE1ZDlmZTdjMDI1NDdmMTk4ZDlmMzkzZDIzODFmZmU4Y2M2ZSB0aW0tb2JtYWxsb2MKKzQyNzg3IDcwOTlmNmU2ODE4M2VjYTY0OWY4MTAwYzM5YWYxYzJmMDNjM2Q1MzIgbGVnYWN5LXRydW5rCis0Mjc5NCBkZTQ4MTZkMzQ0ZWVhNDg1OGU2ZjRjNzIyZDNhM2ViNGFhMDE0YzgwIGxlZ2FjeS10cnVuaworNDI3OTcgYjFhM2MyMjM4Zjk3ZTFhNjU1MmY5NWQwNDhlNTM0NjcyZmY5OWJhZCBsZWdhY3ktdHJ1bmsKKzQyNzk4IDJjMmRmZmUwNzBkZjI4MzYxMjg0MDhjZmIyMmI1NzRjODVjOTY5MDkgbGVnYWN5LXRydW5rCis0Mjc5OSBlZjg3NzlkNDU1ZWM1Y2M5NjRlOWFiN2E1ZGM1Yzc2NjdjYjljM2U5IGxlZ2FjeS10cnVuaworNDI4MDAgYWJhNzNiNDY4MDNjNzc5MGIxYmM5NWIyNDk2MTQ5MjA5YjUyMmYxOCBsZWdhY3ktdHJ1bmsKKzQyODAxIDFkMDU1ZWJkODMyMjlmYTc3MGJiZDZkNjFhMTNkOTg1MGE2MTRiNDIgbGVnYWN5LXRydW5rCis0MjgwMiA1NDc1NGYwZDI1YzcyZjdhNWYxYTllZjk1YTViNDZjZGQxMzJkN2ZmIGxlZ2FjeS10cnVuaworNDI4MDUgN2EzMGRjMmFmMzI5Mzg1ODEwNWQ0NTE2OTY4NTc2MDkyMzA0YjJlYSBsZWdhY3ktdHJ1bmsKKzQyODA2IDZiN2NhM2IyMDFmM2VmZGZhY2Q4N2VjN2VlZTc0Y2MyYTM3M2ViNDAgbGVnYWN5LXRydW5rCis0MjgwNyA0ZjJhZjU2ZDhlYmU0ZDAyN2UxMzMzZGE5OWUwM2ExZTY1MzJjZjBkIGxlZ2FjeS10cnVuaworNDI4MDggYmMwNzk3YjA2YTk5ZWJjNmVhNjc1YjUxNzA4MzJiZGViN2M1ODZlMCBsZWdhY3ktdHJ1bmsKKzQyODEwIGQzOGFiNWNhZDk0NWIzNTRjMzFmMTAxMTQwMzRiNjVmMGEwODAyMDggbGVnYWN5LXRydW5rCis0MjgxMSBiYjVlMzA0NjdmZTRkMTc2MmU1MDgxODM5NTVlZDhhNzM0MTUyYTgyIGxlZ2FjeS10cnVuaworNDI4MTIgYzFjNDYyMTBiNGI3ZTQwZWNjNWY1MzczNzY1MTQyNjljMjgxZGJmOCBsZWdhY3ktdHJ1bmsKKzQyODEzIDEyYmNkMTZjMzFhZGU2ZmQ0NTNjYTk0NDA2Y2IzZmJhNmY0YzEwYmQgbGVnYWN5LXRydW5rCis0MjgxNCBkMDJiNGNmZWZhMGEwYmU2MGNkZWZiMDcyMDM2NGE4YTA4NTNhYjgwIGxlZ2FjeS10cnVuaworNDI4MTUgN2E2YjE3NGRkZWYyZjE4ZTMwZDdlZmM3OTQ1NDVjMzFkOGZhOWIwOCBsZWdhY3ktdHJ1bmsKKzQyODE2IDA3ZjMzMGFkMWI0NzVlMmFiNzU2YmM3MzIwMGYyYWIyNDBkZjk0OTUgbGVnYWN5LXRydW5rCis0MjgxOCA5YjlkODM5MWI2NzFjYzVmMGU1NjUwYjI5M2FlNGI4MDAyOTQ4OGQ4IGxlZ2FjeS10cnVuaworNDI4MjAgZGI2MTMxYzVhZTVhYmYyMDhmZGUxYjM4NGY5ZWE3MGM1YzAxZTBhZSBsZWdhY3ktdHJ1bmsKKzQyODIxIGIyNDE2ZmFiMTNmZTZkM2ZkM2Q1N2UzYTM0YTFiYWUyYTIwMzM5YzUgcmVsZWFzZTI0LW1haW50Cis0MjgyNSAxZjU4NDE2NGUwMTMxNzYxYTVhYzJjMWFlZjE1MWQ3ZjMyMWY1ZGM4IGxlZ2FjeS10cnVuaworNDI4MjYgNjUzZDg1ODVmMDgwYTAxNzk2MTc5YmY1NGY4NjA4MjEyNWNhODcxZSBsZWdhY3ktdHJ1bmsKKzQyODMwIDc0NzAxZTRmY2RhZDBmOTQ4NTkyMDVhMTExMTQzYjcyZWYxZmY2NTkgbGVnYWN5LXRydW5rCis0MjgzMSBiYWM2YmQzNDNhMTI0N2I4MDc1YjIxYzI3ZGY3NTVjNmY2YzMxZmYxIGxlZ2FjeS10cnVuaworNDI4MzMgM2M1MTlhNjEyYmRiN2VjYTI0MzIxMzcxOTY4NDJkNzdlNzJmM2U5ZiBsZWdhY3ktdHJ1bmsKKzQyODM0IDllODE3ODhiMGQ0YjU5MTJkMzJmOWEwNTk2NzczNzI0NGZmNTIwOTYgbGVnYWN5LXRydW5rCis0MjgzNSAwYjc4MDk2NjA0NTZmNzkyMmQwNjMwNjcxNWI2NzVkNTkxNWRlOTY5IGxlZ2FjeS10cnVuaworNDI4MzYgOTEwOWIxYTBkMjY1ZTFhZWZjNmZiMjgzZDY3ZWY4MjhkY2E5OGUwMyBsZWdhY3ktdHJ1bmsKKzQyODM3IDAxYmM4ZWUzZDJmZjg0NmM0ZjdhMzNhNjE5ZTBiMjg2YjViMjVkMWEgbGVnYWN5LXRydW5rCis0MjgzOCAzYTNhZWQ0OWIyNDU2ZTkxN2Q4YjY2MjA2MzhkNjI1MTc5ZjhiZTNlIGxlZ2FjeS10cnVuaworNDI4MzkgZGVkYzJjOTRkMTEyNjI0NDE4NTYyY2VkMDNjMDRjOWJjNTFiNmY3ZCBsZWdhY3ktdHJ1bmsKKzQyODQwIDdjMWFjYThlM2Q3ZDdhNWFiOTI1NWJmMzFlNDk1NGI1ZTVkNTJkN2EgbGVnYWN5LXRydW5rCis0Mjg0MiBiMTkyOWU4ZDE1Zjk5OTk0NGE1MmE3Y2FmNjc5NDFlN2I0NWVjMTdjIGxlZ2FjeS10cnVuaworNDI4NDMgZDNkMGRkOTJjNzMxYWI3ZTBhYzQ3YmYyYWQ0MWE3ZTUyNGVkYzk2MiBsZWdhY3ktdHJ1bmsKKzQyODQ0IGE5NjliZDE1Nzg4ZjUxNDA1MTc3Zjk0MzJiYWY2MTM1YmNkNzJjMzUgbGVnYWN5LXRydW5rCis0Mjg0NSAxODQ4ZDc1YmJkYjM4YmQ1YzQ0YmQyNzYwMDBlOWVjMWU0OTExMmViIGxlZ2FjeS10cnVuaworNDI4NDYgNDI4NGIzMzI0Y2UyZTRiNjQxZDBhMjc4YzQ3MzQ2ZDliMGNmOWM5OSBsZWdhY3ktdHJ1bmsKKzQyODQ3IDM5MWY3NGM5YzI2MzY4MDk3MDM2ZmM0ZGQ0MDkwNDVjMzMyY2FhYTcgbGVnYWN5LXRydW5rCis0Mjg0OCBhZGJhYTllYmE5NzU0M2Q3YTExZDNlOTU2NTdlM2MxZGViMDg5MzRhIGxlZ2FjeS10cnVuaworNDI4NDkgNGNjZWY0Nzg4MWY3OWQ5MzhmOTEyNTk4ODE4OTI4YTA0OTNlZDEwZiBsZWdhY3ktdHJ1bmsKKzQyODUwIDJkMWRmMjRlMzNkZjcxMGU0ZDM2N2M4ODJmMWM2N2IwN2E2ZTFkMDkgbGVnYWN5LXRydW5rCis0Mjg1MSAzYjY3NWFjOWE5MjU0ZTEyMDVkMDI1MDQ2NzczNzIwNTk4YmM0ODk4IGxlZ2FjeS10cnVuaworNDI4NTIgOGNkMTUyNzQ2Mzk4Nzk3ZDg2ZDBlNzZhYTA2NjA3MjgzNzI5ZGFhNiBsZWdhY3ktdHJ1bmsKKzQyODU5IDZhYWFkYmFiMzUzMDE1NWVjMTlkODFjZGEzYmRhYmIzMDYxZmM2ZjEgcmVsZWFzZTI0LW1haW50Cis0Mjg2OCBmODBjYTcxM2JiNGJlYTM1MzkzOTBjMjExMzc1NjdhZWJlZDAxOWM1IGxlZ2FjeS10cnVuaworNDI4NzAgOWIxM2RhNjQ3YTVlYmI1NTJiYjg3ZjA4YTU5ZTAzYzZjZDkzNjE4YSBsZWdhY3ktdHJ1bmsKKzQyODcxIDhlMGYwZmIxNGQzNThiN2JmYzI1YWNiYWZmZmYzYzNlNGE1NjUxMWYgbGVnYWN5LXRydW5rCis0Mjg3MiAyMDRjMzA3YjAxY2U1N2VjMzdmZWIxYmZmM2RkYzYzMmVlNmFmZDNmIGxlZ2FjeS10cnVuaworNDI4NzMgZmUwNzM2Y2NiYTc1NTE4MDcyMzQ2MzczYjlmMzJjNTg3MTk4OWU0ZSByZWxlYXNlMjQtbWFpbnQKKzQyODc0IGNkNzJlYjU1ZDVmOGQ4Y2NhNzFiOTBiNDUyNGM0YTY1MDU5NjgzZWIgbGVnYWN5LXRydW5rCis0Mjg3NSA3ZmFjNWQ3OWQwNDNiZmFlOTcxMTFmMDU3NGJjOWE3MGIwZGI0YzJiIGxlZ2FjeS10cnVuaworNDI4NzYgNGY2MjhlY2MzMGNiMmViNGUyM2U5NDVlYzAyNWMyN2M5NzAwMWQ2YiBsZWdhY3ktdHJ1bmsKKzQyODc3IDhlYmY3OTk3YzZjZDU2ZTgzYzgzZDZmMzBlNDg1YTcwZTUzY2M1NDYgbGVnYWN5LXRydW5rCis0Mjg3OCA4OTUwNzRlNWVkM2FiODBhNDYzYjEwZTZiYTk4Y2QwNjU4ZmFmMWEyIGxlZ2FjeS10cnVuaworNDI4NzkgMWUwNDNhMTI1YmU2ODNmNWI0MTA0Nzg4MzU0NzFjN2JlODdlNjNjMyBsZWdhY3ktdHJ1bmsKKzQyODgwIDJkMjRmM2EzN2ExYjM1ZjUzNDNlMGEwMTExNjg1ZDEzYmVjYTYzNmYgbGVnYWN5LXRydW5rCis0Mjg4MSAxZTE5MTM5MmVjNWM2MTgyZWM2NmNjZTE2MzkzNjI4Yzg1MDBhNTczIGxlZ2FjeS10cnVuaworNDI4ODIgMTVkMzMyOTU2MTVmNmYwYTQ0YTlmZjg3ODA3MzEzZjBhNzkxOTBjMCByZWxlYXNlMjQtbWFpbnQKKzQyODgzIDllYjI0ZjkyYTc4NGJmMGNlYTY2Y2MyYmNjNjZjMWVkZWYyYTRmMGUgbGVnYWN5LXRydW5rCis0Mjg4NCBhNzM1ZGY1NTJmMDJkOWZhMTk5NjMyYjI0NDA0ODZlMDllYjU2Yjk0IGxlZ2FjeS10cnVuaworNDI4ODUgZTYyNzY3ZTY0ZGU4MTk2YzUyMTJmODRiZmMxOWY5ZjEyOGEyYzI1NCBsZWdhY3ktdHJ1bmsKKzQyODg2IGM5MTIxNTY0MmRjZDQ1ZGUwMGUyN2NkNzNmMWU1M2I5NDgzZjgyYWMgcmVsZWFzZTI0LW1haW50Cis0Mjg4NyA0NTU2NzJhOGY4Nzc2MWM3MGViNjRiMDNmODhkMDhmOGMwOGQ4MTE0IGxlZ2FjeS10cnVuaworNDI4ODggMjU3YWQ4OWQ5MmRmODQ1MjIzNmI4ZmVkNjdlYjgwYWU0MjU2YjBmYSBsZWdhY3ktdHJ1bmsKKzQyODg5IGIxNmU1MDQ0MTNjM2I4MzQ2YzU4YTE1ZmI4ZjE1YTMxOGM4NDBhNGYgcmVsZWFzZTI0LW1haW50Cis0Mjg5MCA3OGM5YWNiYjQ2M2MzM2FmM2FkNTZiOTY4NDEwMDY0MTUxNTliMTdhIGxlZ2FjeS10cnVuaworNDI4OTEgOWJiNTkwYTBiN2ZiMDRhNjU2MGM3M2UzN2VlMmM4YjMxYjZjYWRkOSBsZWdhY3ktdHJ1bmsKKzQyODkyIDY4YTA5NDNkYmJlNTMzZGIyOGNiMjZiN2NmZDE3MTVhZGZiNzhjNDEgcmVsZWFzZTI0LW1haW50Cis0Mjg5MyBjYTRiYmNiYmQwZDU5NTBmMTAxMWJjOTFkNjYwZGQ2MTZkMDIxOGViIGxlZ2FjeS10cnVuaworNDI4OTQgZTlhN2EyNzg0ZTE3ZWZiYmEyMzA4ZTFhY2FkNjY3ZmNiYmVmZDI4MyBsZWdhY3ktdHJ1bmsKKzQyODk1IGFjY2ZiMTU2ZjljYzY0MWVhZjRjMjNhMzllZTc0YTEyY2Q5MjVlMjMgcmVsZWFzZTI0LW1haW50Cis0Mjg5NiA4ZDQxZGRjMzFlNjFlNjNiMjJlMTI3ZjJhNWJlZGRkODgxNjQ2ZmIxIGxlZ2FjeS10cnVuaworNDI4OTcgYjIyYzQ4ZmU2MmE0YjI4NjQzOGRhNzQ0YTJhMzU1MjgyMmZlYmUyNiByZWxlYXNlMjQtbWFpbnQKKzQyODk4IDQ3MDZiN2ExMjU2YzI5Yzc0OTdlOTRiODZiN2I3NDk1MzcxOTNjMmUgbGVnYWN5LXRydW5rCis0Mjg5OSA2YTljNzE2NWIxN2JkYjdiODUxMzZlMWVlMTMxNThkYWMyODA2NDdmIGxlZ2FjeS10cnVuaworNDI5MDAgYjE3ZGE1ZTBhNjk3YTBmZmQxOTFkNWY4MGU4MTZlNjQ5MTg2YTQ5MyBsZWdhY3ktdHJ1bmsKKzQyOTAyIGNkZTc1NzMzNTQ5MjlmYmI5NjVlNTBiZjM2MjE3NGUxMTAwNDY4YjMgbGVnYWN5LXRydW5rCis0MjkwMyBkYjU2ZjU3MGIwY2ExMjA1ZjNlNDRiZWYwY2RjMWNhYzMzMDZlOGEyIGxlZ2FjeS10cnVuaworNDI5MDQgZDM0MmIwZGM0OTM0MTRmYjIzNGM1OTkyMjM4MjkxMjRlOWJmMzczMSBsZWdhY3ktdHJ1bmsKKzQyOTA1IDEzYjk4ZDBhN2JhYThiNmVmYmUyZDNmMWJkZTMwMTQxYWZhODQyOTQgbGVnYWN5LXRydW5rCis0MjkwNiA3Y2Y1ZDliYTVmOTdlYWEzYTQ4NjdhMDNiOWNiZjI5NDBiN2U5ZGZhIGxlZ2FjeS10cnVuaworNDI5MDcgYjQ4YmE3Y2Y0NTc2ZWI1Y2EyODk5MmU4Mjg4MDgwNDE3MjMxNDdlYSBsZWdhY3ktdHJ1bmsKKzQyOTA4IGY2YjdlMGMzODRkYTlmZGRjMzBmNTAyMDk5ODhjZDg3NDY2MTViNzUgbGVnYWN5LXRydW5rCis0MjkxMCBhOTY5N2RlNWUxOGJmZjQyMDEzYmUwNDg4OGJhODlmMzMwNDVjNzNlIGxlZ2FjeS10cnVuaworNDI5MTEgNjMyYTRkYWE4ZDRhZmUxNTM3M2QzM2MzMmNkOTM5ZmU5NDJkZjE5OSByZWxlYXNlMjQtbWFpbnQKKzQyOTEyIDRiMzQ3YzY1NDYzNWY2YTVlNTJmYzJlYmQxMzA3OWY3ZDNmNDMzNmQgbGVnYWN5LXRydW5rCis0MjkxMyA1NTJkZDVmZGI5ZDg0ZmM3ODExNWY0YmJlZDJjNTM0MGQwZjdhYjIyIHJlbGVhc2UyNC1tYWludAorNDI5MTQgZmQ3MzU1OTZmNjljMWNiYzM4MDZjZTA4Mzk5N2IxMzk1NGY3ZWI4MyBsZWdhY3ktdHJ1bmsKKzQyOTE2IDQzNWY3ZjNjOGI2ZGE0NzVlYWU1ZDQ2OWUyY2Q5NjIzMjMzMjFlOGEgbGVnYWN5LXRydW5rCis0MjkxOCA2ZjJlZGE0OTVkOWRlNmI2OGYxODUyZTBlYjQ0NjAzNGIzNzgxNTMwIGxlZ2FjeS10cnVuaworNDI5MTkgMjc5MDVlYmFkZGFiNWRkYWM1ZmUwMjk1NTFhNGU2N2M3NTQ1YmRmZSBsZWdhY3ktdHJ1bmsKKzQyOTIwIDAwMjNjMGNmOGZlYmMwYjlhZjNjMTI1MTY1MDE0MjAxN2ViOWU5NzkgbGVnYWN5LXRydW5rCis0MjkyMSA5MjI3YWUzZGI3ZWQxZTJhNGFmNDNiMmM3YzI4NzE3MjFiZjMxNjFmIGxlZ2FjeS10cnVuaworNDI5MjMgMTJiMDgxMjNlY2JjY2Q4MmUxODY0OGM5ODBlNTBiYjA1ZGQ4YzIyMSBsZWdhY3ktdHJ1bmsKKzQyOTI0IDRkZWRjMDVhZDZiNDc2NGFhNTJiZDUwNDQ5ODdlZTQ0ZGVkMWI3ZTIgcmVsZWFzZTI0LW1haW50Cis0MjkyNSAyMTAzM2JiN2VjYmUxOWExMTRlNzVlMzZhNzUxYjJmY2ZlYzMwNDkxIGxlZ2FjeS10cnVuaworNDI5MjYgNTZhNGNmMmIwMmZkZGNmZGQ3NjZmMzVjNzYyYWQzZTYwMWYwOTZmMyBsZWdhY3ktdHJ1bmsKKzQyOTI3IGNhMjlkZGE1NjNiN2E0NmE0ZmNlMzI3YzU4ZWIzMTQyYTFjMmExZmUgbGVnYWN5LXRydW5rCis0MjkyOCA5MDJlZjFkYzI5NzliNmNiZjgyODE3ZTM1YTM4MGQ0YTcxOGQ3NDBhIGxlZ2FjeS10cnVuaworNDI5MjkgNjllYjZkMWI5OWY1NmQ2YTY0NDk1MmNkMDgyNzZhYWI1YzVkZjQ3NSBsZWdhY3ktdHJ1bmsKKzQyOTMwIDNlMmI1NzQ3MDM4ZmZmZDQ2NTdmMzRjOTk3MGIzYmQxZDQ3N2M3NDMgbGVnYWN5LXRydW5rCis0MjkzMSAwYmY1MzYzOTAxNGE5NGJiM2UwODNmZDQxOTliOTAzMzQ0MDI2OGMwIGxlZ2FjeS10cnVuaworNDI5MzIgOTFhOWUyZTMxZTkzMGQ0NjE2ZWJmMDdiMmU5MzNhYTViNTdjMjc3YiBsZWdhY3ktdHJ1bmsKKzQyOTM0IGI0ZTg5ZDI5YmVhOGM0NWNmMmJhYWFjYzlkMWYxMGI4ZGMyZTEzNzQgbGVnYWN5LXRydW5rCis0MjkzNiBiMjE4NGQ5MTBhMDBmODE2OTYzNjQyOGRlNjkyNDIxMDAyMGM4MTkwIGxlZ2FjeS10cnVuaworNDI5MzcgMGUzNmU3YzY2YjhlOGE1YTNmZTI5ZmIxMDlhMDNkYzc5NGZhOGRkYyBsZWdhY3ktdHJ1bmsKKzQyOTM4IGYxZWFhZTdmOTYyZDNmN2ExYWFkMzEyOTRhYzU1MmEwMTI1MzExNTcgbGVnYWN5LXRydW5rCis0MjkzOSAxOGY5MTFkZGUzZTI0MDBkZGViMGJkZDAyZWNjZWVhZmNjNGJkODY1IGxlZ2FjeS10cnVuaworNDI5NDAgNTAyYTY4ODg3NzgzOTk5YmFmNTg0ODQxMDM1MGE4YzIwZDNlODNjZCBsZWdhY3ktdHJ1bmsKKzQyOTQxIGQ0MGI0OGRmODNlNzk0ZDlhMmMwNDAwYTk1ODUwMWZmMGIzMGNiMGEgbGVnYWN5LXRydW5rCis0Mjk0NCA2ZTliMzY4Nzg5ZGYwY2U1NjYzZTMxYTUyMzkzZmQyZGZlYzI2OTE4IGxlZ2FjeS10cnVuaworNDI5NDUgMzY1MmI1MTI4YjcwN2RlODMzMTE0MGI2ZWQ3MjNhMzE2ZDhiYmM4YiBsZWdhY3ktdHJ1bmsKKzQyOTQ2IDc5ZDViN2Y3N2FjNDU5NGYzMzdlNjQ0YzBmYzhmYTkzMTBjNWY3ODggbGVnYWN5LXRydW5rCis0Mjk0NyA5N2QzODc5N2I4YmMwOTdhYjNmMGEzYjczMWJlMWUwOWFkOTI1YzgwIGxlZ2FjeS10cnVuaworNDI5NDggZDNkMmY5ZmZkYzA2NTQwYzZiOWVhYTgzODZhNzFhOTE5YTVjODQwOCBsZWdhY3ktdHJ1bmsKKzQyOTQ5IDgwNTgwMDE4MWUwZTE5ZmU2Y2EyY2MwMWNiYTg5ZTdiZWY2YzFkZmYgbGVnYWN5LXRydW5rCis0Mjk1MCA0OGUwYTVlMzk0MDNiYTFmZjBlNDdjM2RjNzExZjk1NzY4YjUxZmI1IGxlZ2FjeS10cnVuaworNDI5NTEgN2MxN2U5MjIxZjk0MWY2YTFjZGQ0MDcxZGNlY2ZhMmJkZDYyMzAxZSBsZWdhY3ktdHJ1bmsKKzQyOTUyIGZjMTBmZjMyMmRmMWI3OTNlZDg1ZmM4MjQyNWE1YjM0OTJkMzhmZjYgbGVnYWN5LXRydW5rCis0Mjk1NCAzMjY2YTAyMGEwZGFiN2YwYTcyOTRiYWU5ODFmNmU0NGI4YWZhMjFmIGxlZ2FjeS10cnVuaworNDI5NTUgMTFmOGI1YjhjZTIwMTg3ODY5YTllOTdhMmJhMDc3NmVmNzVmZDRjNyBsZWdhY3ktdHJ1bmsKKzQyOTU2IGZhYjQ0YzVjOGRmNDJiOTUzMTFlNzU3ZTMwNWY3OTExYjhlNWQ3MDUgbGVnYWN5LXRydW5rCis0Mjk1NyAyYTkwNTZmNGMxNjQ3NjYzNDY2MDkxNjI3YzJkNmZkZDE0ZWRjMGUzIGxlZ2FjeS10cnVuaworNDI5NTggZGI0NjUwNDkzYzJiOGUzOTJjOTkyYWM1MjMyNDRmZGY2ZTFiZGY0NyBsZWdhY3ktdHJ1bmsKKzQyOTU5IGFlNTlmY2VkMmUxNDJkNGFiZmQyMmM3YjE5NzQ3MjM1ZWIzYjc3OTAgbGVnYWN5LXRydW5rCis0Mjk2MCBlYmViYTczNTM4OTQ3ZGYzMjcwMGY4MzdjODVkNDVjMjAxODMxOWVlIGxlZ2FjeS10cnVuaworNDI5NjEgZjEyMGY3NDBhYmU0MWU2NzdhNjFhZjM4MDk3ZmM1Y2ZlZTgzYmNiZCByZWxlYXNlMjQtbWFpbnQKKzQyOTYyIDA2ZTNmNjI3YWQ5OTU4OTg5YjU2ZWQ4OWEwZGNlZDY1M2FhNDYxYmEgcmVsZWFzZTI0LW1haW50Cis0Mjk2MyBlMjU2YjUzMDJiNTVjMzg0NzFlM2MyNTczM2M5NzFmYmUwMDkyYjhjIGxlZ2FjeS10cnVuaworNDI5NjQgZGY0M2MwNGQyNTU0NWVkNGJiZGU1YzAzZGU5NGQyOWNiNDFiMDdkNSBsZWdhY3ktdHJ1bmsKKzQyOTY2IDFkZDY1MjA0YzA5ZmU3ZDc5MWY2MTlmZWI1YjU0Y2FkMTE2NzA5NjkgcmVsZWFzZTI0LW1haW50Cis0Mjk2NyAwM2VmOTg3MDQzY2UwMGU5MDQ0OTBmY2Y5ZjY0MjkyODc0NDE4ZDhmIGxlZ2FjeS10cnVuaworNDI5NjggZTQ0NjVkMjczN2M0ZTc1ZGQ2ZTQxYzA2MTM1YTZlNGVhYWVkYzdmZCBsZWdhY3ktdHJ1bmsKKzQyOTY5IDY3MTg3N2QyMmExY2M4ODI4ZjI3M2RmMjJiMWM0YzEwZTYyMzYxYzQgbGVnYWN5LXRydW5rCis0Mjk3MCA0Yjg2N2U2NTRhOGE0Y2MwNzMxZWJjMzVmYWYxZjUzNTg1NTE5NmFhIGxlZ2FjeS10cnVuaworNDI5NzEgZjA2MTI1YTlkNDA2MzU3MTVkOTY4NTJlM2JmMzljZDg1MzMzNmVlMCBsZWdhY3ktdHJ1bmsKKzQyOTcyIDczNTFhYWI4N2U2ZGUwZmIzYmVjN2U0ZDllYjg1ZGY3MGZhNWMwOTcgbGVnYWN5LXRydW5rCis0Mjk3MyAwZjE5YTZmYzk3NTYwN2E2MGE0MDI2ZGY4YjNiOTNjMDExZjMzZTAzIGxlZ2FjeS10cnVuaworNDI5NzQgZmRiMDVjOGFkNTMzM2EzOTE3ODA3ZTU4NmVmNDRhNWE4M2FkMmJkYyBsZWdhY3ktdHJ1bmsKKzQyOTc1IDQwMjU2YjU0Yzc5MDYwYjYwNGQ2MDNkYzEyM2IwYTg3NzY4YjY5NzEgcmVsZWFzZTI0LW1haW50Cis0Mjk3NiA2OTEzZWJhNzhkNDA3OTEwYzJmZTZlOWQ5MWYyODc5MTdhYmVmNjFjIHJlbGVhc2UyNC1tYWludAorNDI5NzcgYzc3ZWNlNjY3MDlkMTdlNTc0OTU1MmUyMTgyMDkzMjM0M2E1M2M2MyBsZWdhY3ktdHJ1bmsKKzQyOTc4IGFiMDAzMTljMzc0NDg2MTA1NGNiMTBiOWVmYmEyYWZjNzkxZjBlNmQgcmVsZWFzZTI0LW1haW50Cis0Mjk3OSA5N2ZlZDYxOGI1ZTcyM2E0ZmEzYWNlNDM2OWIxOWUwY2VkODU5M2Y0IHJlbGVhc2UyNC1tYWludAorNDI5ODAgMWE4NDY1YmFmMDdkZDRmNzI5YWJlMjRmZWQ3NTg2NTc0YWJmZDU4MiBsZWdhY3ktdHJ1bmsKKzQyOTgxIGM5ZTQ5MTM4ZjY1OWIxZTE0OTkwN2MyYWU1MjY0ODM2YmIwYjM1MjMgcmVsZWFzZTI0LW1haW50Cis0Mjk4MiBkYjVlNzIwYjBjZWY5ZTI4ZmJjYzIzZTdmYzI0NzVhMGQyZmNhZTQ2IGxlZ2FjeS10cnVuaworNDI5ODQgOTU4NDI1MDA3ZWE2YThhNjkzNWQ2YTQ1ODgzZmQxMzIzNGY2N2U3NyBsZWdhY3ktdHJ1bmsKKzQyOTg1IDNiZTI0MjVkNzc0MDBkODg3MjdlNDk4NjcxY2YzMWI5OGEzMDUwYWYgcmVsZWFzZTI0LW1haW50Cis0Mjk4NiBjYjk4NGE4YjExMzQyZjBiZTE2MWViNDhkZDkzN2EyOTZmZmM5NDFjIHJlbGVhc2UyNC1tYWludAorNDI5ODcgNDMwOWIzZmI1YjQzNWVlYTkwMjFhMTE1OWM0MjhlMDA5YTQ3NTRjNyByZWxlYXNlMjQtbWFpbnQKKzQyOTg4IDMyYjg2OGE0OTY1OTMwOWM5NTkzMTljMjBiZjg5OTU1YTkzNmY4OGYgbGVnYWN5LXRydW5rCis0Mjk4OSAzYWQ0MmY5OWE2ZGJiN2ZkYzA0N2UwYzkwNjViNTEzNmJiOTY5N2VjIGxlZ2FjeS10cnVuaworNDI5OTEgZGRhNDI0MWY5YWJjN2VhMWVkZDI5Zjg3NWI1YTEyZWIyMTRlOWI2MiByZWxlYXNlMjQtbWFpbnQKKzQyOTkyIDNkN2FkZjg4NzRhYzU4YjgzODZmY2Y5M2FiZGY3NTNmOTA3ODFkMDggbGVnYWN5LXRydW5rCis0Mjk5MyA4MjkyZTNlNmVjZmVhOTdhZDI5ZTE3ZmNjMDAwMzZiMWNhMDBhMzYwIGxlZ2FjeS10cnVuaworNDI5OTQgN2ViMmMwZjBkMGZkNjY1MTI2ZDFhNWUyOGRmNWE3Y2I0YTViYzE3MyBsZWdhY3ktdHJ1bmsKKzQyOTk4IDlhMDg3MjQxMTBkMGJlYjk2ZGI4MWMzMjk2YjY4NjYyMGEwY2YzZWUgbGVnYWN5LXRydW5rCis0MzAwMCAzMjEwM2M1ZGJlZmFjM2UyYmNkYmZkNDY5MjgwOTJiMDczMGZhMTRmIHJlbGVhc2UyNC1tYWludAorNDMwMDEgYThmZDkxY2QzMTdhY2JiODkxMDhjZTQ2NTcyNzUxMDMxNThlNjVlNCByZWxlYXNlMjQtbWFpbnQKKzQzMDAyIDE1YTQ1ODE3MWViMDA4OTA2MzVhOTExZGE2NGM2MmRkOWVjMDYyMjUgbGVnYWN5LXRydW5rCis0MzAwMyAwYzA0MDgzNTJlZTY5Y2FmZWRjYWE0NjVjZmExYzAyN2UzZTNmNmJlIGxlZ2FjeS10cnVuaworNDMwMDkgMDM1Y2M4NDE0N2ZiMDRlNDg5ZmEwN2FkOTJiMWFlY2M0NjQxOWJmMiBsZWdhY3ktdHJ1bmsKKzQzMDEwIDg1MTg4ZTViNDkxMmY1NGI3MTAwNDhiYmM2MDIwOTkyN2Y1OTliMTIgbGVnYWN5LXRydW5rCis0MzAxMSBiNWExMzU3MDU5MmRkYzk0NzA3YzZjOGYyYWJiYTVkODEyYzkxOGMwIGxlZ2FjeS10cnVuaworNDMwMTIgNmIxYjMyYTg1ZjQ3NjAxZDhmYzk2YTk3ODAzYTA5ZWQ2NGQxM2U2MyBsZWdhY3ktdHJ1bmsKKzQzMDEzIDI5ZTZlN2ExMDdkZTM5MjA1YzU0MGEyODY3YzRjMjZjODY4Nzk4ZDQgbGVnYWN5LXRydW5rCis0MzAxNCBiZGFmY2EyMTkyZDM3ZWIxZjFhZjMwMDk1Zjg1NTViZTM5YjRkYWQ5IGxlZ2FjeS10cnVuaworNDMwMTUgOGMxYmY3OTk5NTJjZjFkMDM0NWIwNzJiYzBkYjQyYjNhZGI3NzMyMyByZWxlYXNlMjQtbWFpbnQKKzQzMDIyIDk1NDY5ZTk3ZmQ5MDAwYWIyOGM3MGY5OTY0YjcyNzlmZTFiMjAxOGEgbGVnYWN5LXRydW5rCis0MzAyMyA0ODA4ZWU2MmIxNTZhNjE5YTU5YzJhODI1NDg2NTEyYTE5YmRlYWJiIHJlbGVhc2UyNC1tYWludAorNDMwMjQgYjNjMzY0MGQ5MmY4NGExMmUwNWUyOTg0NTgxNTVjMDcwZjM0NjEzMyByZWxlYXNlMjQtbWFpbnQKKzQzMDI1IGM4ZmZjOTEzZDAxNDMwNTdjNzUwMzNjZmNlMTIzYzAyNGI1YzY3NTMgbGVnYWN5LXRydW5rCis0MzAyNiBmZjMwMjQyNTlkOTFkNzJiYWU3YTdjM2M3Y2VkZTIyMzIyMGU4OTNiIGxlZ2FjeS10cnVuaworNDMwMjcgZTJhYjc1NWFlNjg1ODBlMGMwMjMzOGI1ODkxOGViOTEwM2JlN2YxZiBsZWdhY3ktdHJ1bmsKKzQzMDI4IDIyZmZmMWYzYzc4YWU1NDUxODgxZDA3MTk2NWEzMjNhOTM5NmNlY2MgbGVnYWN5LXRydW5rCis0MzAyOSBjZGU1OGNkMDdlN2Q4NTA0M2JlZTVmMzJiNjhjOGU0NzgyNzJiZDZkIGxlZ2FjeS10cnVuaworNDMwMzAgNGE4OTZmYzEyMzg0MjcyNDE5MzliZjgwZGQ0MGJjMGZhMDQyZDRiZCBwM3lrCis0MzAzMSA1NzBjNjE2YWNmMGMxNGVjN2E4ZWYyNzQzN2UxNDM2ZjNiMjliYzIwIGxlZ2FjeS10cnVuaworNDMwMzMgMzc1Y2UxYzA0ZTY2YjU5YjFmNzEzZDVhNTQzNmQ0ZDRjZTViMDg3MyBsZWdhY3ktdHJ1bmsKKzQzMDM1IDQ5YzZlYjY4ODkwNmIxZGRkYWJmNTc4ZjA4MTI5ZTY3MjlkNjE1MWYgcDN5aworNDMwMzcgYWJhODE0YWE0YzZhN2JkODJkMWEzM2YwYzRjMDhlMWM4MTE5ZGZmNSBsZWdhY3ktdHJ1bmsKKzQzMDM4IDY5Y2JlMGZiN2E2ZDIwNGIwMTlmMmJjMzI2NzMzNGU5MTIzNGIxODEgcmVsZWFzZTI0LW1haW50Cis0MzAzOSA4ZThkMGUwM2YwNzZhMjQyYzJiNDA3Y2Y3OTVkMWU1MzBlODNmYTg1IGxlZ2FjeS10cnVuaworNDMwNDAgMjUxZjkyMWNjODFkY2MxZDlhNTVmMjVmYjFjNjQxZmY2MDZiYjIxYyBsZWdhY3ktdHJ1bmsKKzQzMDQxIDVmYjU0ZWQ4NTQzYmIwNzNiYmY4OTM0ZDMwNWZkODg2MWI0NWUxM2EgbGVnYWN5LXRydW5rCis0MzA0MiBkOTY5ZTMzOWFjMWU1MzdmZmM2NDVjMGJiZDI4MTVhOTBiNmIxMWQwIGxlZ2FjeS10cnVuaworNDMwNDMgZjkxNDYzMGY0MTljMWM0ZTY4MTIyZmI2ZGM3Y2E1NzRlZDI0YTI1NyBsZWdhY3ktdHJ1bmsKKzQzMDQ1IDdmYTRjMjlkNzAzMDE1YTc5ODE3OWUyZDgxYmY5NjBjOWExMDk5ODIgbGVnYWN5LXRydW5rCis0MzA0NiA5ZDNhMmNkZTBkYmQzMGY5YzcwNWUxMDgzMzZmNjNkN2I0YjAyMjE1IGxlZ2FjeS10cnVuaworNDMwNDcgNDUxZGEzYTUyOTEzMTZkYTFlODg3NTlmNjJhYTQ5OTVlZGViYjUwMCBsZWdhY3ktdHJ1bmsKKzQzMDQ4IDE3OTA4NDg5OWQ5NjliMzc5NTU2ZGZlNjBjZWNkMzI3MDczM2Q2MDMgbGVnYWN5LXRydW5rCis0MzA0OSA4NmYxMzMwMWMzZGI0MTRjZmFkY2E0NTliZTFjYzAzZTdjODk3NjVmIGxlZ2FjeS10cnVuaworNDMwNTAgNTVlNGY0NzY1NzYzZWNmNjYyMGFjM2NiOWQ3MjliMmY1ZWM5NWQzNSBsZWdhY3ktdHJ1bmsKKzQzMDUxIDViMzhkYzU1MWY4NmY4YzViZWIyMzNhMDcwYzRlZThjYmZlMDkxY2MgbGVnYWN5LXRydW5rCis0MzA1MiA0ZjQ0NDEyZTlmNmMxMjdjYjVhMjAwZGUxN2U4YmI4OWQ3MjVmNGExIGxlZ2FjeS10cnVuaworNDMwNTMgM2JmMjMwNjFkODZjZDk0MzVmNTZjNDk0MmMzMzhiMDNmYTdlMmE2NSBsZWdhY3ktdHJ1bmsKKzQzMDU0IDY3MzhmN2IyODJmNjVjNWM5MWMwNWM0MjViZmYwOTRhMWYyNDgwOWMgbGVnYWN5LXRydW5rCis0MzA1NSAzNTRlMjJmM2RhYzZmMzIyZGFjODQ2Zjg2OWQyZTZiMzU3M2Q3ZjE5IGxlZ2FjeS10cnVuaworNDMwNTcgMWRkZjBkODFkNmM1OTBjY2RjYjMzNTIwN2ZlM2E0ODc3MzBjNGNhNyBsZWdhY3ktdHJ1bmsKKzQzMDU4IDYxNGQ4MGRmZmMxZjg4ZTIwMGZjOTcwNmE4ZTc3YjE5ZmZmYTRlZTggdGltLW9ibWFsbG9jCis0MzA1OSA2ODU4NDliZDkwNWM0YWIzZDNiYzYyNTIwMzUwMzQwYWJhOTMyNTEzIGxlZ2FjeS10cnVuaworNDMwNjEgOTc4N2Y4MzBkMDI1YjU4NWM0YWM3NDRlOGNjNzM4NzI3NzBlZjk4NCBsZWdhY3ktdHJ1bmsKKzQzMDYyIDYyNDA5YTFiYzRkYjMyZTRmZTBjOTRmZTkwZmZmNjJiMGRiMGY0ZTcgcmVsZWFzZTI0LW1haW50Cis0MzA2MyBhYjE3ZGE2ODQyNmJhODU0MjQwYTBlOWY5MTUyODVkMzNmN2VhOGM0IGxlZ2FjeS10cnVuaworNDMwNjQgNWQyYWI0ODIzZjNjYzdmZTJmN2E3MmZkZTE3YmYwOTg2Zjc0ZDQ1ZCByZWxlYXNlMjQtbWFpbnQKKzQzMDY1IGYwYjBhYTM1N2Q0OWU0MzQ5YWY1YjQ1ZDlhZDdmMGQ1ZTk1ZWVhM2YgcDN5aworNDMwNjYgMjUwMDdjMTU1NjY4ZGQ3NGUzZDEyY2Q2MmZmZTk0NDgwMWJhZGM3MSBwM3lrCis0MzA2NyA1NjBhYzFiYTk5Mjc0ZmJlZDk4N2RhMmZjNjAzZWIxNjJlZDRiODMxIGxlZ2FjeS10cnVuaworNDMwNjggNGFlMGJiZmM2ODY2ZTE5NTQ3Nzc5OGFmNzNhNzE2NGJhZDI0ZjMxMSBsZWdhY3ktdHJ1bmsKKzQzMDY5IGQ2ODM0NGQ5MzJjNDU4Zjg3Njc5MTFhNTI4ZTBhNDUwMDZjNTY3OGMgbGVnYWN5LXRydW5rCis0MzA3MCA4NWVhZjBjYTY0ZjJlNGZmNmMzZDY0YjMxMDc2YWRhY2VlNjgxOWZiIGxlZ2FjeS10cnVuaworNDMwNzEgN2RhZDgzY2E3MDJkYjJiMDlkZmUyN2MyOTE3ZDZjMTE2N2UyMjQyOSBsZWdhY3ktdHJ1bmsKKzQzMDcyIDQ5MjBiZDQ5MmQ5ODZiNWFhZDAyYTFlZDZkNjg1Mjk5ZGI4N2E2YzIgbGVnYWN5LXRydW5rCis0MzA3MyA0NzI3ZjI2MGY2ZjhkOTY5MzVlMGRjOWM3NWNmNDU5NmIwMGMzNjAzIGxlZ2FjeS10cnVuaworNDMwNzUgMGY2YjRjZWVhNTgwNTM4YzgzODY0YTA2MzI3ZjZjMjJkZjRmN2NhZiBsZWdhY3ktdHJ1bmsKKzQzMDc2IDQ5NTM0NGZlZDI1NWI1YWI4ZDFiMzNhYmE5ZWExOGY3MzAyZTVkY2EgbGVnYWN5LXRydW5rCis0MzA3NyBmNzBjMDM2NDg5ZWM0MzE3ODA4YTg0MTI0ZDA4NDU0OGViNWQ5OTExIGxlZ2FjeS10cnVuaworNDMwNzggMDM4OTRhN2EzMmVjZDNmZmY0Mzk3ZmEzZGEwYzIyMWQ0ZDFmZTM5YSBsZWdhY3ktdHJ1bmsKKzQzMDc5IGEyYTYwNDkzMWZmNjgwNDdmYzYwNmNhMjg4MDgwMWRhMmFjMTkxOTIgbGVnYWN5LXRydW5rCis0MzA4MCAzMDIwM2UyYjk3ZDczMmQ1ZGZmNjA5NWI5YmU4YTYxYjc0MWQ1Y2JmIHJlbGVhc2UyNC1tYWludAorNDMwODEgOTJiZTJlMTE3MDMzMTk1OGM1NWRiYjAyZmYwOGEyOTk4NmY5OTQxOSBsZWdhY3ktdHJ1bmsKKzQzMDgyIDgyZjcwMGZjNGRlMjBkZTU4YjdlZGJiY2VjNmU0M2RhMmE2ZGM3NzIgcmVsZWFzZTI0LW1haW50Cis0MzA4MyBhMjUzOTU4YmZhNGM0MmIzMDJkZGRlNGM4OWE2NWY3ZDM0ZTJiMDEyIGxlZ2FjeS10cnVuaworNDMwODQgZTcyMWQ2OGRiZjZmMTI4MzdkOGM2ZWRiN2I1ZmYzNmQyZTg0MzhhNCBsZWdhY3ktdHJ1bmsKKzQzMDg1IDNiMzA3MjBmYTU3YTExNGIyZjBhMDgyY2Q0YTE0Mjk2N2M3NWIyYTIgbGVnYWN5LXRydW5rCis0MzA4NiBjMGFlYjEwNjU0YjJmNjY5Y2UzZTNhMWUyZDBmMWI1MzAyMmRhNTJiIGxlZ2FjeS10cnVuaworNDMwODcgZmZmNGVlY2RlZjQ1ZjY0MThkZTQ5ZDgxZWMwZGUxYzcxMWRmN2RkNSBsZWdhY3ktdHJ1bmsKKzQzMDg4IGJjZTVjN2FlNjU5YTUyNTIzZWMwNmJhMDc3NTA2ODZkMjVlODk2MWIgbGVnYWN5LXRydW5rCis0MzA4OSBjNDQ5OTQ0MDY4ZDIyOGY2ZTM0NDc5NjNjNGUxYjNkOTM0ZThmN2VlIGxlZ2FjeS10cnVuaworNDMwOTAgYmZiNzRhNDIwYWM4ZWIzNTE1MmQwNzYyZDk1MzdkNDBiNDBmN2FjYyBsZWdhY3ktdHJ1bmsKKzQzMDkxIGU0MTVmMWE4NzRiMTA5ZWZiNDcyMDNmNTcwY2E1OWYyNGU3YjEyMGMgbGVnYWN5LXRydW5rCis0MzA5MiBhOWMzYzkzODI0NjUzZTA2ODkyMWY3MGJjMzgxNWZmYjc1NjNiNjQwIGxlZ2FjeS10cnVuaworNDMwOTMgNTNjODA2ZjdhMjUwODZjMjQzZjdlOTdjOWVkMmZhNGIzYWVlNWNkOSBsZWdhY3ktdHJ1bmsKKzQzMDk0IGJkMzcxNTM1M2EwOWI1NjI2Njc5NDUyYjQ0MDMwMTk2ZTcxZDk3ZjYgcDN5aworNDMwOTUgN2FkYTE2YTE0OTY4Njc0NjIzMTQzZDJkMDgxMTY1OTA1MjZjZWQ3YyBwM3lrCis0MzA5NiBjZDE4MThlZTdlYTlhOGNlODM5YmYxYjc2MTAxZmRiZmNhYjdhNWM0IHAzeWsKKzQzMDk3IGZmMzgxYjM4OGNmZjQyYzk3NTQ0ODdmNmZlYTZmYTY2YmI2YzIxN2QgcDN5aworNDMwOTggMDgxYjRmMGU4MWI3YmFhNjgwMjU0YTMwYjcyYzQ1NDUxZDcxYjc4ZCBwM3lrCis0MzA5OSAzMzQyYjNiNTg2MzA0MDUzYTc2YTBmNjNkZDk1MGU1MTJiNmNlYWVjIHAzeWsKKzQzMTAwIDNlMWVlNmUxNmM4MWY5MTJmNjkxYzI0NGFmMTQ2NmEwZGI1MTdiOWEgbGVnYWN5LXRydW5rCis0MzEwMSBjMDQ4YTA5ZDA2ZmY4Njc0ZTA1MDk0OTRhNWU1ODZhYWNlMjczYzA0IHAzeWsKKzQzMTAyIDExODM5Nzc2YzY2YzMyNDM2NmE3N2MyMDg5MWNkMWZjMDA2MDc4NmEgcDN5aworNDMxMDMgNDA1MTFiZjU5Mjk3OTgzZTQ5Njc0YmVmOWEyNzExZWRmYjg2OTkwZSBwM3lrCis0MzEwNCBhMDE2NzJhOTZkNDcyNzA0NjM2NjBiZjU1NzA5Zjg1ZjlkOTY1ODUzIHAzeWsKKzQzMTA1IGNlMjY3ZjY4MDY1ZTIyMDkyZjE3OGVjMTc2MzY0YTdmYzMyYWM0NGMgcDN5aworNDMxMDYgOWVmM2ZhYzVkMmMwYTJhOTQ5NjIyZTU0Zjk5MzEwZTA5MGIwMTA0ZSBwM3lrCis0MzEwNyBlYTViNjZhZjYyNDVhNDA5ZTJjMjNkNzY2MjE1Zjg3ZDRlODM1MDlmIHAzeWsKKzQzMTA4IGZkYzA1YjE2NzIzNmU3NTcyMTdkYzU4ZDE1OTNlNzBkMWZjOGE1ZGQgbGVnYWN5LXRydW5rCis0MzEwOSA1YWVjZWRjOThhZjY1NTllMDQ1MzlhYzU5MzU0MWU3ZTBlNDU0ZTJlIHAzeWsKKzQzMTEwIGY3ZmQxMWE3NWE2YTRkY2I4YTIzYjBmNjBiM2NiNDc2YmQzMmIxMTQgcDN5aworNDMxMTEgYzJjMTI4MTRmODU0YWJmMGUwODBhMTE1ZmJhYTQ1ODA4ZmI3YzY2MyBwM3lrCis0MzExMiAyYjA0YjljN2I1OGViMmQwMDZlNWI3NjExOWUzNWY1MWQzMTgzNjJhIGxlZ2FjeS10cnVuaworNDMxMTMgZjAyYTAzMjU0YjkxZTc3Y2E3NDAyYzU4ZjU3NzMxODBmMDRiNzUwNiBsZWdhY3ktdHJ1bmsKKzQzMTE1IDIwM2MwNmZiYjA3NTQ0NzQzYzJkNmRkNGFkZGNiNTM1MjQxYTkzMmYgbGVnYWN5LXRydW5rCis0MzExNiBkN2QxMmQ3ZmNjMzkyZjk3OTZhYzdmOGRlOTc5MzgwYjg1NTQxMGQwIGxlZ2FjeS10cnVuaworNDMxMTcgMjMwNDVmMWUzOWYyZjkxYzhmZDFmYTQ1M2UzNDAxODJlZDM4NjRiMyBsZWdhY3ktdHJ1bmsKKzQzMTE4IDY0YzgzZTBmNjgzZTU2NmFjNmRlMDA5NmUyYjYyNGNkZjZlMjNiYmUgbGVnYWN5LXRydW5rCis0MzEyMSBiMDFjODBkODgyNjdmZTUwYWZiYjM0Njc0YmNmM2NiMzcwYzVmOTgxIGxlZ2FjeS10cnVuaworNDMxMjMgNGM4MDRhYjg3ZWFkYWMwYWFjNjAyNGY2YmNiM2M2NDNiNTJhZmVkMyBsZWdhY3ktdHJ1bmsKKzQzMTI0IDFmNDU0OTg2NWFhZGJlNTU0YWVkNDI1OTVhZWQ4YWVkMWIyNTZhNDIgbGVnYWN5LXRydW5rCis0MzEyNSBlNDNkNWQyY2E1MGFiY2ViZjRjNjdlZjZhZjgwNjQ3M2E3MzEyMDVjIHJlbGVhc2UyNC1tYWludAorNDMxMjYgZGQ0OTg0N2E2MGQzMDBkMTc2MGYxNjA3YzUwNDRkYTI2NTFkZTcyZCBsZWdhY3ktdHJ1bmsKKzQzMTI4IGIzM2Q5MTY2ODY5NjE1Y2YyOTc0ZGM4N2U4OTJiNjk5MTg1NmNjNjMgbGVnYWN5LXRydW5rCis0MzEyOSA5OTQ5MzFiNmI4NzU0ODkyOWJjMzYxMmNkOGM2NTVkMjY1MTJkNjBkIGxlZ2FjeS10cnVuaworNDMxMzAgNDNjMzkzYjJmZTlmYTQ3OWQwN2RiNGI3OWNlZDAxZWE1NThjMzU0ZCByZWxlYXNlMjQtbWFpbnQKKzQzMTMxIDgxZDBlOTMyMDhkOWU4MTA1ZDI3MGRjNjY0MmRlZDRhNjJmMTVjY2UgbGVnYWN5LXRydW5rCis0MzEzMiBkMTM0MzBhOGJkMmNlMjU5ZWU5NTI4NWUzZDhhODVhYmE2NTBiODhjIGxlZ2FjeS10cnVuaworNDMxMzMgYjU1ZjUzMDQxOTY1MzU5NjQ0Y2FiZGM5ZmJiYzUyMzg0MDg1ZDRlYSBsZWdhY3ktdHJ1bmsKKzQzMTM0IDY4NWUyMTIzODY0ZDNmNmFmMDRiODY3Y2M5MDY5YTkyMzE4NTU4NjUgbGVnYWN5LXRydW5rCis0MzEzNSAzODQwMGI2NjI0MDQ3NWEyOTU5ZDIxMGIyZTBmMDUyMDI2YjE0M2M3IGxlZ2FjeS10cnVuaworNDMxMzYgM2Y5MGE5M2ZmNWQwZWE5MTg4MjRjNTFmMDgwYWM2N2NlZDNhMWVlNCBsZWdhY3ktdHJ1bmsKKzQzMTM3IDkyY2I0YTdmYzU1NGVmZmE2OTE2YjcxYWJkMjI1YTZkYjlmNGZlYTUgbGVnYWN5LXRydW5rCis0MzEzOCA2NzcxZjBlMDhiNjBhMjM2ZjIxNmU2NjdmZWI0MTMwYjEwOGY5ZDgwIGxlZ2FjeS10cnVuaworNDMxMzkgOTI5NTJhYzhlODkxMWYwNjdmNTZiZWJjNDlhY2VkOGQ5NTc0Y2FmZSBsZWdhY3ktdHJ1bmsKKzQzMTQwIGJiNDkxZTU1ZmI0YzI0MzNhNTFjY2I0ZTFlZWZmNTYwNzg5NDRmMWQgbGVnYWN5LXRydW5rCis0MzE0MiA4NDM5MjhjNmIyNGNkZGY2ZGI4YzI1ODdjZDI3OWNmZDgzOGFjZjAzIGxlZ2FjeS10cnVuaworNDMxNDMgNmMzZWMzNzM2YzUxNGRmN2FjMWRkMDgwMWY1NzRhMDhiOWE5YjkwNiBsZWdhY3ktdHJ1bmsKKzQzMTQ0IDk5MTBmZjY5YWY5NzNiZTMzOWMyYTc1Nzk4YjBiMGUzNDViMWFlYWIgcmVsZWFzZTI0LW1haW50Cis0MzE0NSAzYjdiMjk1Y2NhOTAyYmY3MTBmZmI3MzNkZWRkZTUwNzFhNmM5YjY3IGxlZ2FjeS10cnVuaworNDMxNDYgYzAxMWFmNGEyYjAxZmQyNTE3ZWVlOGUzZDJhMjNlNjVhOTJkZTk1NSBsZWdhY3ktdHJ1bmsKKzQzMTQ3IDA3YWI1NTc2MjViOWNlZWZlZmM3YWU2NDM4ZDVhMzk2ZWE1OTdmN2EgbGVnYWN5LXRydW5rCis0MzE0OCAyMzM1N2I4OGMwM2VhZmE2YmUyOTg1ZGRmNTU2Y2UxNTA1ZTM1YWQ3IGxlZ2FjeS10cnVuaworNDMxNDkgMWQzMDgxY2IzZWE2NzM1YmIyY2U2Y2E4YTk1N2JlZmJhMTY0NzM3YSByZWxlYXNlMjQtbWFpbnQKKzQzMTUwIDdjMjJiNWFhMzQzODcxZGI5NGQ1ZWU2MzFmNGUwYWYzYTc3NjRkYmMgcmVsZWFzZTI0LW1haW50Cis0MzE1MSA4ZDQyZjY2MWZlYzgwMjllMWEyMGMzNDNkYmJkN2IxOGE3YzY5OTBmIGxlZ2FjeS10cnVuaworNDMxNTIgNzc1Y2Q2OWY4YTIzN2RhZmVkYjk0NzI5ZTZhMTJmNjU4OTA3OTNhNSBwM3lrCis0MzE1MyA2YjUxNmYzMjFkODUyNGNiYmVlMTRkMWU2NjE3OTg0MmM4ZjliMWI5IGxlZ2FjeS10cnVuaworNDMxNTQgYjMxYjdlYzVhNmI0Mzk0MGNiOGU5MDEwYmJlOWMzMmE1ODg4ZTgxZiBsZWdhY3ktdHJ1bmsKKzQzMTU1IDNkYWJkOWJiNDk2ZTlhNjhjZDZjZDk0Yjc2MjI5NzNmYzc2NjQwNWEgbGVnYWN5LXRydW5rCis0MzE1NiBiNGQwZjhkOTUxNzlhNDZiY2NiNDlkODBkZDU2MTNkMDVhZTBjMjRkIHJlbGVhc2UyNC1tYWludAorNDMxNTcgZGU4ZjVkMWNkZjRkOTU4MjRhZWQzYjBlMzNkNzhkNzJmM2I5YjUwNiBsZWdhY3ktdHJ1bmsKKzQzMTU4IGQ2MmIxMzQ4ODk0M2Q3OGM5YzhkODE3MzIyOTMyMzJhODRiNzkwNDcgbGVnYWN5LXRydW5rCis0MzE1OSA4NTJkZTMzZWQ0MjdkNmE0MzBmNjFjZDg5ZDM2MjJkOWEzOTA1YThhIGxlZ2FjeS10cnVuaworNDMxNjAgMmRjNjNjZGIwOWNmMGRhODNiZjE0OWZmMzUwNzBhMmQ0MzMzNzI5OCBsZWdhY3ktdHJ1bmsKKzQzMTYxIGRiOTg2YmUyYzAwYzVkMDNhNWRlNTQ1YWU2MzFlZDgyYzA1Y2JkNzggbGVnYWN5LXRydW5rCis0MzE2MiBlODBmZGIzYTBmNDBhOTYzOWI0ODFmYWY4ZjY4ZmQyMWFiYWY0MmMyIGxlZ2FjeS10cnVuaworNDMxNjMgNzllNGRiZTRiZGM2YTYzODgwNGM2ZjU1Y2Q5NGJiMzJiZTdkNzZmZiBsZWdhY3ktdHJ1bmsKKzQzMTY0IGEwNmM5ZmQyNTEyMDhjYWQyZGVhZGJiNTllOTQ1YzBkODNiZGU4YjkgbGVnYWN5LXRydW5rCis0MzE2NSBkODYwMzExZjhhOTcxZTcyYTllYjMzMjUyOGZmZTM5NGNkZGM2MDU4IGxlZ2FjeS10cnVuaworNDMxNjYgMzYwNTIxOGQwM2ZhMDQzN2FlNGYzYjMzZWRhMTFhNWQxNTJiYWZiMSBsZWdhY3ktdHJ1bmsKKzQzMTY3IGRlMmI5NDJmMzdmOTQ4ZTBjYzZhZjZkYjRiZTliOTFiM2RkZjUxOWYgbGVnYWN5LXRydW5rCis0MzE2OCA1YTc3NTBkYjA5Nzc4ZTAyMjdmZWExZWYyMWI4YWE5ZjA2ZDRmZWEzIGxlZ2FjeS10cnVuaworNDMxNjkgYTBhYzc3MjU5Yjk5Y2U3ZmM2OWEwMjdmZGNmNjM4MjJlMjcxYzUyNCBsZWdhY3ktdHJ1bmsKKzQzMTcxIGQ4NTkyMjc2YjEzNzQ1YTkxYjhiMzRkMzQ4MWQ2ZDI3NDI1YjY2NGMgcmVsZWFzZTI0LW1haW50Cis0MzE3MiA0OTA3ZmI4NzljZDljN2E2Mzg4YWEzNzliZjc2NzgyMDU2YTA3ZGVkIHJlbGVhc2UyNC1tYWludAorNDMxNzMgNjQxMmVkNjk3NWRlZWU4ZmE4ZDk5ZWVhYjU1OGYzOWYxYzM2YWQ1NCBsZWdhY3ktdHJ1bmsKKzQzMTc0IDg3ZWQxZjNkMjcyZTRlYzMyMDBmMGY5NThlZjI3NTE1OWU5ZjJjMzIgbGVnYWN5LXRydW5rCis0MzE3NSA4MmFlYjU0YjBiYWFiM2YxZDY4MWE3MDdjMzM0MmJmMDA1YjUyY2NkIGxlZ2FjeS10cnVuaworNDMxNzYgMTM2YjQ1N2I1NDNhYjY1Nzk2YmI2ZmE2NDFlMWIzZGQxYzA5NGZiOSBsZWdhY3ktdHJ1bmsKKzQzMTgxIGY3OTkzZGM2YmYyNjRmOGJiMzA5NDg4MWQ3ZjAzZTViMmVlMTBkN2MgbGVnYWN5LXRydW5rCis0MzE4MiBkYjMxN2U0MzU3YWQ1NGU2Yzc3MGNlMmY2NzVjZjc3Njc2NzlhYTIwIGxlZ2FjeS10cnVuaworNDMxODQgZGIyOTdiOTQ0MmU0MGNhNTY2NTdhZjEyNWNjMDI0ODM1YTNjNzYxMSBsZWdhY3ktdHJ1bmsKKzQzMTkxIGU3M2IzNWQ4MTYxN2JlYjFkZDI4MDEyNDljODY2YWRhODA2MmRlNmIgbGVnYWN5LXRydW5rCis0MzE5NCA4ZGM0NGU5ZDVjOTM5YjgyZDYyNDExZjRjMjFjZTRkMzVkZGE2NmY0IHAzeWsKKzQzMTk1IGE5YzFlNTJhZGRmMjhiYmFkODAxYzk0Zjc0NzE3MDY3ZjIyYmY1NGQgcDN5aworNDMxOTYgMjUxZWNlYzA0ZjFiZmZkNjM1YjU3MGYxZDZlOGQ4M2ZmZDY4YjgzOCBsZWdhY3ktdHJ1bmsKKzQzMTk3IGUzNDUwNmU0NGU2NzY4MmI3ZDMzMjMzNTBkZTU0ZmM4YTc0ZjYzYzAgcDN5aworNDMxOTggNTJkZDQ1ZGIxZTg1MDQ3YWJiY2MwZTU2Zjc4OGUyYWJlODEyMTMxMyBwM3lrCis0MzE5OSBiYWY2NWRjNjM5YzE0ZmUwZTM5NTJmN2I1MDRjZTdhZjAwOTM2YjVlIHAzeWsKKzQzMjAwIDA4Y2Y4YjllYzIwODcyMzdiNGIyMzE4Nzg2NGEwOTE3YmY5MDI5ODAgbGVnYWN5LXRydW5rCis0MzIwMyAyZjRhNGY5NmFjZDFlNmY0ODI5YzE4ODMyODQ2Nzk4NGQ2YzhjZGU1IHAzeWsKKzQzMjA0IGFhMDM5ZGU4OTFjOTg3ZmU2ZmUwNDVlNTk4OTM1ZmE0OTMxYjk1YTcgbGVnYWN5LXRydW5rCis0MzIwNSAwYmI3NzAwNTkzZjc1YTIxZTdhN2M1NmE1NzgxYjk2YmZmNzAwMjAxIHAzeWsKKzQzMjA2IDZlOTI5MjM4ZTNhYzQ3YjE4MjlmMzE1OTBlZmVlYjEwMjdlNTJiNzUgbGVnYWN5LXRydW5rCis0MzIwNyBjOWVlMzJiNzkzZTc4ODQ2ZWQyYzY0NjhkMmIyNzM5ZDJkY2ZkNTk3IGxlZ2FjeS10cnVuaworNDMyMDggZTcyZDFjN2M4NTU0ODkwOWMyZmNmZTlmZGQxZmM4MmI1OTliNmM3YyBwM3lrCis0MzIwOSAzZjgyNDE0MWVlYjk5ZWJkODM0YWRkMzExNzJlYTFhNGU3YzljZWU1IGxlZ2FjeS10cnVuaworNDMyMTAgN2RhZGQzZmM1ZWZhYzZiYjBjOWRhOTkxMDNmMTk4NDhjNTc3YjZmZiBsZWdhY3ktdHJ1bmsKKzQzMjExIDcxYzU2OTRlMzQyM2IyNDVmMjRjODI1NTgwZTc4NWJjMjJjZWZmYjYgbGVnYWN5LXRydW5rCis0MzIxMyA2MTc3NDMxMTQ2MDBiYjRmM2JiYzliOTE2OTRmNWYyODdlMDkxZjRkIHJlbGVhc2UyNC1tYWludAorNDMyMTUgNzY3ZTZiZTU4OWEwNDBkYmU1NDZkNzZhZTYwOTQwZmQ1YjU0MWY3MCBsZWdhY3ktdHJ1bmsKKzQzMjE2IGRiYWYwYmNlOGQ0NjAyZDIwYTU1MWFkNDE2YTRmYjE1NDE1ZmE1OWUgcDN5aworNDMyMTcgN2VhYzIzYzhlNGU5ODkzZTA3NGZlNTk2MjZhMTQwMGFjNzliYjMzOCBsZWdhY3ktdHJ1bmsKKzQzMjE4IDRlZjk5Njk1ZjdiYmJlZWQ5OTViM2Q4MzFjMWUxYWQ5NTEzYzRhYzEgcDN5aworNDMyMTkgNzA0OWRjMGM2MjFhM2QyYjAyYjMyMWM4NTU2Nzc0YWQ4NDY1YjIzNCBsZWdhY3ktdHJ1bmsKKzQzMjIwIDUyMTdjNzAzYTk0ZjhhYmVhNTE4ZGNhMzU2MWFjMDg3MGE1ZmJiODMgcDN5aworNDMyMjEgOTFkZDRkNDRkM2JjNzBkYTZmNTc0ZjhhZDRjMjkxZmZlY2JjZGNkZiBwM3lrCis0MzIyMiBkNzUxM2YzOGIyMmY5OWViZDQ4NDU5Zjk0MjU1ZWQzNGIyMDc4OTNlIHAzeWsKKzQzMjI0IDY5MWRkMDU5MTY5MTcxN2M3ZjZjNWYyNzljODM4YzNmYTBiMDNiZGMgbGVnYWN5LXRydW5rCis0MzIyNSAwMDU3ODYyYTNiZGJkYWY2MWVhODhkYTIxOGIzOTYxZjI0YmY5YWE3IGxlZ2FjeS10cnVuaworNDMyMjYgMmQ5MmFiN2Y1ZTg5ZTBkOGJiZjRhMjk5NmY5OWZkNzgzMWExNDBmNSBsZWdhY3ktdHJ1bmsKKzQzMjI3IDRkODA2MDcwMzNmYjMxNWRlNTZmMDIyNzJiNDFjZDBhNDJhNmQ4ZDIgcmVsZWFzZTI0LW1haW50Cis0MzIyOCAxMGNjZTNmNjUxNzAyOWFhYTk3MWNmNGI1MjVjMDcwYTBhOGFlYWZkIGxlZ2FjeS10cnVuaworNDMyMjkgMzU0NTgxMTIzOWI0MGJhMzlkZTQ3YjMxMTVmNmMxMzA5Nzc5NTdiMSByZWxlYXNlMjQtbWFpbnQKKzQzMjMwIDE2Yjg4NTliMDc2MDVhYjZkMWY5YmQxZDUwMDg2YzVmZWU3MWQxOTUgcmVsZWFzZTI0LW1haW50Cis0MzIzMSA5YWQwZTUxNzUyN2ZmNDFiNzczNzE3YWE0MDMzMzkxNjE1YzkwYzE5IHJlbGVhc2UyNC1tYWludAorNDMyMzIgODE0OWQwYTQyNGE1NWUwMDU1MGUxOTI2M2ZjYzAyOTQ2OTYxMjkzNSByZWxlYXNlMjQtbWFpbnQKKzQzMjMzIDFhZjI0NWZhYzkwYTZiNmZhZWY4OGFmZjAwNGQ5NTM0MzBkMjRhZTMgcmVsZWFzZTI0LW1haW50Cis0MzIzNCBjMWU3MDJkMjhjZjI4N2ZjNjRhZjZhM2ZmNDFjZTg3OTE5YmI0MmUwIHJlbGVhc2UyNC1tYWludAorNDMyMzUgYTk1MDQ1MGVmNGViOTI4NzI2NGFmZjE4YzljN2E5MDNkMDQ2ZDliYiByZWxlYXNlMjQtbWFpbnQKKzQzMjM2IGQxMTcwZTlhYTc4OWIzYTRhZDAxNTNkZGEyZDA3M2MyY2U0ZGIzNWUgcmVsZWFzZTI0LW1haW50Cis0MzIzNyA3YzViZTdjMGZkZmRiYmMwYWMxZDkxYzA3MDM4YmM4MTQxMmRhNDEyIHJlbGVhc2UyNC1tYWludAorNDMyMzggM2UwOWM4NTY2ZGYxYWZkNzBhNTU0ZGIwNjA1MmJmMzU3MTQ3NGQ4MyByZWxlYXNlMjQtbWFpbnQKKzQzMjQyIGIyZTZkNmFhODZkMWMxYjMyMmFjMzUwNGY5MjBjY2NiMzQ1OWRiZTUgbGVnYWN5LXRydW5rCis0MzI0MyBiNGQ5MmVmMmYzMzgwZGVkYjI5ZTMwZmZmNDI4MDMyMDFhZmJkNmQ0IGxlZ2FjeS10cnVuaworNDMyNDQgMGM2MDI5MzhlZDhlODc5NzgzYTFkNjQyNWI5NGMzZWQ2NGVkMDlhNyBsZWdhY3ktdHJ1bmsKKzQzMjQ1IDJiN2VjZTc4ZTI5MzE0Nzc3NzY0Mzg2NWY3M2MxN2E3ZTZhYzBiZjMgbGVnYWN5LXRydW5rCis0MzI0NiA0NWRkOTM4YjdmZWIyMGZkOTA4Y2NkZjAwMmI2MTZkOTBkZTgwZGM2IGxlZ2FjeS10cnVuaworNDMyNDcgMDI3YzZmY2VlZTBkYWY5ODBlM2U0ZTgzNjI1NDI3MzljZjRhNWUyNiBsZWdhY3ktdHJ1bmsKKzQzMjQ4IDQxZDcwNTc4NTc4YTM4MTE2MGY0OGY5YjJmMjIzZjA4Y2UwNDgwMTQgbGVnYWN5LXRydW5rCis0MzI0OSA0Zjk3YjZhMjI5Y2UwMzE1ZjQzOTIzYWE1MmVhZGE3MGJlYzE0NzRkIGxlZ2FjeS10cnVuaworNDMyNTUgMDY2YzljZTQ4YzMwMDJiZWVkNGUzYjZmZmU2ZTU5MDM3YWVjNjM2OSBsZWdhY3ktdHJ1bmsKKzQzMjU2IDI5ZGY0ZmUxMjhhMGFiZWFiZjAxNzA2Zjk0ZGUwZTQyZDUwN2IxYzcgbGVnYWN5LXRydW5rCis0MzI2MCA3MmE3MjBkZDY0ZmI0YjcwOWZmNjQxNWVjMjMwNDRmNDE3MDliNzJhIHJlbGVhc2UyNC1tYWludAorNDMyNjEgMWVkN2I4ZGM3NzdhY2ZkNWY2ZWY1M2JmYWRmNDk5M2ZiYjQ5YmQxZiBsZWdhY3ktdHJ1bmsKKzQzMjYyIDk3MzU3ZmUzNDIyMjdiZDliZWEwZTA3OGE5ZmZkY2ViZTc5ZGYyMzEgcmVsZWFzZTI0LW1haW50Cis0MzI2MyA3ZTNiZjg0OTJjMDNhNjk2NWZlZjU1MmU2ZmU1MjdhY2RkMDUwNzU3IGxlZ2FjeS10cnVuaworNDMyNjkgYTE4YWEzZmJkZDRhYjBkODFlNzI1MjY5MTNmZjgyNzIyZDkwOGNjZiBsZWdhY3ktdHJ1bmsKKzQzMjcwIGZiNDgxZTBmNTc4NmU1MWVlM2UxZTI2NTVhMTYzMzU0OThhOWM5OTAgcmVsZWFzZTI0LW1haW50Cis0MzI3MSBhOGRlMGI5NjAwMjc1YmM0NjgzMDQ5MTEzNGE1NTc5YTU5NGExYzU2IHAzeWsKKzQzMjcyIDIzMWQ2MDRkZWQ4NDZlMGE0MWI0YzNjMTFiZGZlMzE2OTFjNjRjOTYgcDN5aworNDMyNzMgNTIwZTU1YmQ3NmQ2YzIzYzliZTYxOTMzOGMwY2M4OTQ4MmJiZTkyOSBwM3lrCis0MzI3NCA2NGFlMzJiMDc4Mjk5YTI0MGI2MWYzMjY0YjcwNjZmMmU1NThmMGJjIGxlZ2FjeS10cnVuaworNDMyNzUgY2FhOWFmZjA4NWE2NjYzZDIzZDkwNGE5OTMyMDBjZjFmNGVkODhjMSBwM3lrCis0MzI3NiBmOWYwNDExNWZiYjVmNTAwM2RiMWMwNDkyNzBhZDNlNmNjNGFmMDcxIHAzeWsKKzQzMjc3IGIyYTA1ZWE3ZWFjMWFkMmRjNTY0ODRkZTc4N2RmMmU5OWNmMDRmMWQgbGVnYWN5LXRydW5rCis0MzI3OCA4NjhhYjJhNjVjNzMwZWViNDk2MGZjMzQzNjIyYzRkMDJiOTFlMmNkIHAzeWsKKzQzMjc5IDY2OGE1YmE3N2RjNmYzZGNlNzU4YzI3N2M4NDY4NWExOGVhMjg1Y2UgcDN5aworNDMyODAgMzVjYzVlMTgwYWEzZTY2NGU3YzdjYjM0ZjljZTk2YmE0NjFhOGYyZCBwM3lrCis0MzI4MSA2M2M2MWRiNTUzYTg2OTZkYzNkMzE4Yjg0YjYxNTMxZGY3OTJmZThhIHAzeWsKKzQzMjgyIDc2MGZmYjBmYmEzNzM3ZDRlZWIwZTRmMWQzMmYyMzYxOGI5ZGExZDIgbGVnYWN5LXRydW5rCis0MzI4MyBiODU2N2I4NGM1MzEzN2Y0NzZhYTQxMDFhZTYyODU1OGY3MmNkYTgxIHAzeWsKKzQzMjg0IDBhZDM4N2ZiNjMxNDMyM2NiNWRmNTkzZWYzNWE0NmZiYzU5NTY3N2UgcDN5aworNDMyODUgNGJmZThhZmU4ZjY1ZWQxMzNlMTIxMzMzMzk1MTEzYmQ4MDVlOWM5MyBwM3lrCis0MzI4NiA1OTNlOGZiOWEzY2FmZTVjNDc3Y2Q1NjM3YTFkYzI3YTc1NzI0NTczIGxlZ2FjeS10cnVuaworNDMyODcgN2YzMjJlZjY4NDM4N2RhMWE3OWY0ZGI4OTUwZTkwYjNlYTVmZmY4MSBsZWdhY3ktdHJ1bmsKKzQzMjg4IGUzOGZmMjExOTFkZTUxZTk1MjZlZmE4NWE5NDIzODYxNWZmYjYzN2MgcDN5aworNDMyODkgMjQzNjMzMDFhMjk5YzUxMDdlZmU1ZWFiMDM2OTQzYzNhN2M1ZDVkNyBsZWdhY3ktdHJ1bmsKKzQzMjkyIGMxYTZiYTdlY2IyMzRhOTVlMDhjYTQ3ZjQyMDIwMzRiYWFjNDZlZmIgbGVnYWN5LXRydW5rCis0MzI5NCA2NDMxN2M3MWVkNmQzOTM2MWUwNzM2NTEzM2VjZWMzNjRlZWMzNGE3IGxlZ2FjeS10cnVuaworNDMyOTggYmVkM2Y1MmYwZGM2M2Y3ZjJhMGNhMGEyNDc5NThjNDFiOWE0YTkzYiBsZWdhY3ktdHJ1bmsKKzQzMjk5IDFiNzJkMGU0ZjRhYTBhZGE5ZjM5ZmQ4ZDY5YmNkNWQ2OTQ2MDI5NDUgbGVnYWN5LXRydW5rCis0MzMwMCA4YWIwMWE5YzE0MGI3MDJhMjk3ZmEyZjRlZDk0NTY5ODMyMjA5ZmE4IGxlZ2FjeS10cnVuaworNDMzMDEgMzk1YWQwZDU0MjNkNjBhNDFjZDYyYzBjZGI4YTRiMDY2NzJlY2M2YiBsZWdhY3ktdHJ1bmsKKzQzMzAyIGY1Y2QzMDkxZDk5ZjlhY2YxMWU3Y2JhZGUzOTYzZDIzZTlhYTlkNzkgbGVnYWN5LXRydW5rCis0MzMwNCBiMzljM2Q3YTVhZDQ1MGNkYjE2YWJlYjEzOTkzNjYxZWI0ZjMxZGI3IGxlZ2FjeS10cnVuaworNDMzMDUgNjQyNWE0M2JmM2M2ZTllZjU4ZmIzNjZhYWVmNzEzYTc1Mzk3YTc2OSBsZWdhY3ktdHJ1bmsKKzQzMzA2IDQ5NjIyZDY1YzI5ZDJhZjE3ODBmNjViOTY0YzA0MGNhMjM0ZTg0YWMgbGVnYWN5LXRydW5rCis0MzMwOCA1MWRmOTk0ODg1ZTk3OGYzNjRhNDZlNWY2OTVhMDA3MmY0M2NlMTYzIGxlZ2FjeS10cnVuaworNDMzMDkgOTZlNGQ1MzEyOGM5ZTczZTg1ODMxYTFmMDNkOTY1MmNjOWQ5YTkyOCBsZWdhY3ktdHJ1bmsKKzQzMzEwIGE4MmVlMzI5OGUxYWQyYjY0MjhlMGY3NzQ2MjI4ZjJkN2I3OTFlMjkgbGVnYWN5LXRydW5rCis0MzMxMSBjODQ0MzA1YWE4ZWQxZjIyZTA4MGM1ZTllYjE5MWYyOTJlNjcwYzFiIGxlZ2FjeS10cnVuaworNDMzMTIgNjljMzU4YmY2YTM0NTZkNTM4Y2RhMzEwMzIwYWIyNDE2YjY1N2YxZiBsZWdhY3ktdHJ1bmsKKzQzMzEzIDJjMWZlNzYxZjAxOTQxOTk4MGIyZTUwNGViNGZhOTA2YTEzYzVmMDEgcmVsZWFzZTI0LW1haW50Cis0MzMxNCAwNmQ3NjEzYTM1MjMxOWMyOTU2ZjQ4NTcyMDM2MGYxMDRhOGE4YjAzIGxlZ2FjeS10cnVuaworNDMzMTUgNTE1MTE4YzBlMzM4YjgzY2E1OTkyZWU4Njk2MGJlMTVjMGY5YzgxNiBsZWdhY3ktdHJ1bmsKKzQzMzE2IGIzNDQ0MDQxOWI2NzllN2UxMTM3ZTBlYWExMDU5OGRiMDliNmJlMjkgbGVnYWN5LXRydW5rCis0MzMxNyAzMGZhYmI4N2ZiY2MzMGZmZGYxN2RkNjQ4ODEzY2M2NzU5MzkzNWIxIHJlbGVhc2UyNC1tYWludAorNDMzMTggNTRhYTVhYThmMmNiMjZhN2RhOTNhYjJhNGNjNWQ3OTI0ZDE4NGQzNSBsZWdhY3ktdHJ1bmsKKzQzMzE5IDQ2MTc2ZmZjOGJmNWRkY2RmYzFjZmZkMWU1NGU5YmI1YTQ0NzQwYjEgcmVsZWFzZTI0LW1haW50Cis0MzMyMCBlMjM0ZmY4YmVhYTIwMjFiMmUxMmY0OWU3NzU0Mzk0MmY0ODVhMzg2IGxlZ2FjeS10cnVuaworNDMzMjEgZDdhNmVjOWRlODg3NTU4MTNkOWUyNWZjNTQyMjhiYjAyMzZjODgyZCBsZWdhY3ktdHJ1bmsKKzQzMzIyIDViYmY3MjI3YWQ2ZTliOTNjMzEyNTk3M2ViZWY3OGZhNTc3Nzk0MzUgbGVnYWN5LXRydW5rCis0MzMyMyBmMTk4OTBhODZjNDMzMmM1ZWQzNmQ0NTI3ZTA4OWRhNzA3ZmI3NWJiIHJlbGVhc2UyNC1tYWludAorNDMzMjQgNDE2MzQ4NzQ4NDYwNDQ4OWFhMGY0MWZkMmExNjM2N2U4OGFkMmJmMiBsZWdhY3ktdHJ1bmsKKzQzMzI1IGMwODE4ZjIxZjY1YTJkYWJhZmNkOTUwZGJhOWEwZWVhZWM5NmM3MTQgbGVnYWN5LXRydW5rCis0MzMyNiA5MjM4ZjA0ZWVhYTZjZTg1NDQ5NTliYWI3MGJlMmM1Yzc1ZDY4MmNkIGxlZ2FjeS10cnVuaworNDMzMjcgOGFkZGMzMTNhYjBmYzcyMDMyYTc0MTdmOTY5ZWM5OGJkYTVhNzFjOSBsZWdhY3ktdHJ1bmsKKzQzMzI4IDc5OWI0MGM0YTJjNjFiYTlhMTU5MDFlNzg5NGU0NmU4NTA1MDJmNzcgbGVnYWN5LXRydW5rCis0MzMyOSA4ZDU3ZDI1ZTY1NDg3OWM4NjlkZDlmZWNlOTA5ZDI3NGFhMDU3MjcyIGxlZ2FjeS10cnVuaworNDMzMzAgOGY3YzAzYWNhZGRkYmM3NjI5MjE5YzdhNjkwN2U2MmE4YzYzMTVhMiBsZWdhY3ktdHJ1bmsKKzQzMzMxIDZlMWE4OTljYWM4ZWU2ZGQyM2ZhYjY2YTVlNWUzNTJlZDllZDIxMmYgbGVnYWN5LXRydW5rCis0MzMzMiBhNGQyZjdiODQ3YjFlODI4OTU4MmZjMjQ0ODRiNzNkZTU4OWZlZDVlIGxlZ2FjeS10cnVuaworNDMzMzMgOTRmNTRlYzYyZDE0MzhiMDQzMDc2Mzk3ZWI5YmRmMGU3YjM1MzU5MSBsZWdhY3ktdHJ1bmsKKzQzMzM3IGU1Y2ZkNGEzZTY1YzYxNzJhYmU5MTI2NjcyMjEwMWQ5NzcxZmIwZDcgbGVnYWN5LXRydW5rCis0MzMzOCAwMDk4ZTcyNjRlYWFjNTRhM2VmYWY4ZTJiZTM4MjEzNmJkZWMyMjhmIGxlZ2FjeS10cnVuaworNDMzMzkgMzRmMjBhYjQ0Y2VmZDQ5MDlhYTBmZTI1YjUzY2YyOGZjZWFiMzgyOSBsZWdhY3ktdHJ1bmsKKzQzMzQxIDlkOGIzM2FmZjYwYzEwMGU1NTI5ZmEwNWI1YjYyY2RmZjkyYjE1NDIgbGVnYWN5LXRydW5rCis0MzM0MiBiMDUyMjQ3YjE4MDlmZmVjNTczYjkyOTY4MDdkMjA0NjhkZjY5NWE0IGxlZ2FjeS10cnVuaworNDMzNDMgZWUzNmMxNmQ4ZDJiYjE1ZTlkNDNjZDBhOGE5MTRlMmIyODFiYzM1MyBsZWdhY3ktdHJ1bmsKKzQzMzQ0IGMwNDFiMzYyYmIwNGQ4Y2YxNzUzYzQ3YmJiMjZhZGU0MTZkYTg2NTggbGVnYWN5LXRydW5rCis0MzM0NSBkYzE4MzVmYjllN2MzYjI4YTVhY2M2MTk3ZTZlNzY2MmE1NGIwOGQ0IGxlZ2FjeS10cnVuaworNDMzNDYgNDM0NTJmMWZlYTY5MzRiOTQzODI5OWVmNjQ3ZDI4ZGE4MDZlOWIzYyBsZWdhY3ktdHJ1bmsKKzQzMzQ3IDM3M2Y3ZmUwZTczM2Y0YmFiZDEwNDQ2ODMwYmI3MWJjYjcxMThhMjggcmVsZWFzZTI0LW1haW50Cis0MzM0OCAyMjM0NWQxZTY4NTI3MDNkN2Y0NWVlODI1YWI5OWNmOGQ4YzgwNTRiIGxlZ2FjeS10cnVuaworNDMzNDkgMjYxMTE2ZjY4ODljMmM0YzdhOTRkYWFlZWFjNjNhZjM4Zjk3MzA1NiBsZWdhY3ktdHJ1bmsKKzQzMzU0IDNiNjFlNGFhN2VkZTFhN2FjMGIyOWYwZmEzMjI1ZWQyOGVlNGVkYTkgbGVnYWN5LXRydW5rCis0MzM1NSA2ZWI5YjE2ZDZlMjE1ODYzZDIzYWE5YmIxZDkwNzY5YjEzMDU5ZTgxIGxlZ2FjeS10cnVuaworNDMzNTYgNDFhMmQ3OGQ0M2M2OTdjY2MwMjg1MzFmZWI3NDVmNjc4NDBiZmQ3OSBsZWdhY3ktdHJ1bmsKKzQzMzU3IDA0OTAwNGQ3OWZlZmIxODAyYjZlNWM4MjhjNTgxYmYxNGQwMGFjYzYgbGVnYWN5LXRydW5rCis0MzM1OCAwMGU5ZDU5YzIzYjRlMzlhMjU1MjI5NWMzMDVjYTI2ODBiZGFhMTY3IGxlZ2FjeS10cnVuaworNDMzNTkgMzUyMGY5NzE0ZThjMTA0MmQxOGE1YmM2MGMxOWY3OTdlMzBjMmRiNyBsZWdhY3ktdHJ1bmsKKzQzMzYwIGM4Zjg3ZjA4ZmUwYmRkZjA4ZDFkMjU0MTFhZGVkZjBlNTFhMTcxNWMgcmVsZWFzZTI0LW1haW50Cis0MzM2MSBjMTFmZTJlMjk4NGQ5YjM3NTg5ODhjNGEyN2MxOWRkZDBhNjVjYjRkIGxlZ2FjeS10cnVuaworNDMzNjIgNTJkZWJiYzNjYzA4YTJlYTM3MGViMmQ0OWVmOTc4NzA0YzAyODhhYSByZWxlYXNlMjQtbWFpbnQKKzQzMzYzIDkzMzQ0ZGE3NmFjZDBlNWY0MTBhMjNmZjdmYmYxOGM3NDM1N2IzYzUgbGVnYWN5LXRydW5rCis0MzM2NCBhNzgxOGMyODc0OWY0YWE3MjZlZjJhODJkNzViMTdhOTUxMjY3Y2VlIGxlZ2FjeS10cnVuaworNDMzNjUgZjRjYTAzYjg3MTYwYmU2ZGRkNGQ4MTI4ZGZlMTc2NDI2MTM3OWUyNCBsZWdhY3ktdHJ1bmsKKzQzMzY2IDk0ZjE2MTNiODdkNWIyYmFmMDlhOTkyMjdhZTJiODM5ZDZmYTZlYjkgbGVnYWN5LXRydW5rCis0MzM2NyAwMzRjMGNmNTAwN2IyODQyNGZlYjYxMjk1YmY5YzRkYTY3MzM0MTdmIGxlZ2FjeS10cnVuaworNDMzNjggN2I1MjQ4MGMxMmM2MmJlZmM2NWY2ZDllMzk2ZTI5Yzg1YjRhZDk5ZCBsZWdhY3ktdHJ1bmsKKzQzMzY5IGFmMjRlYjNiYmZjZWI3ZGVlNzFjYTA0NzhjMDAyNjVlZmY3MmM5MzYgbGVnYWN5LXRydW5rCis0MzM3MyBlMTJlNDkzYjUyNDQ0NTRhZjgyZTdhNjA5YzI0YzRhOWQxM2RjYzlmIGxlZ2FjeS10cnVuaworNDMzNzQgYmM1MTYxZjI5MmI3NzEzMDE5MzhhOTU2ZTVmOWY0NWM3ZWE2NTA4OSByZWxlYXNlMjQtbWFpbnQKKzQzMzc1IDVhM2YyMjgwODdhZmRlM2FiMzY5ZjA1MzEyNGM3MzJlN2E3ZmNkYWUgbGVnYWN5LXRydW5rCis0MzM3NiBiNzU0NDBjYmZkMzRmMTVlOWY1YzU4ZTE0Y2VjMmJkNzEyOGY1ZTJkIHJlbGVhc2UyNC1tYWludAorNDMzNzcgNjE0NjFlZWJkNThmN2UzYmM0MGNiODFhN2UwYjZmMDczZjE4NGM1NyByZWxlYXNlMjQtbWFpbnQKKzQzMzc4IGEyODQ3YmIzMjhjMGU2ZTJlNTNhYmE5MWQyNDA1YWEyMzlkOTRiYjIgcmVsZWFzZTI0LW1haW50Cis0MzM3OSA1ZDYyNWY1ODlmMmE3Y2M3Zjg5NDFlZWFkZTljYTc1YjI2YTZmOTBiIGxlZ2FjeS10cnVuaworNDMzODAgZDhkZTc1MDAyOTFkZDQ1NzYxYzFmYTMxNmY0ODEzZjMzOGM2NzUyNCByZWxlYXNlMjQtbWFpbnQKKzQzMzgyIGE3ODM0ODQ0ZGNmNjEwMTY4Y2FkZWUzM2RhMzJlZmUzNDRiMjkxZmEgbGVnYWN5LXRydW5rCis0MzM4MyBiYWRhYTdlOTFkOWE3ZTcwZGFlNjMzMTQzMWE4Zjg3NDM4YTRmMWExIGxlZ2FjeS10cnVuaworNDMzODQgYTAzYzk1NWZmZWQxMGZmZWIzNjE0ZDhjOWU0YjVmMmI2ZTg1NWYzMyByZWxlYXNlMjQtbWFpbnQKKzQzMzg1IDgwYzRmYzAzZmY5YjdkNjhiZmVmNjNkMWI4MzQyNTQ5YTQxZTlmODYgbGVnYWN5LXRydW5rCis0MzM4NiBkY2Q0NTliMDM2NzA2Yzc0NzI0YmYyZDQzYjlhNzQyYTM0ZGU3NGNiIGxlZ2FjeS10cnVuaworNDMzODcgYjk0MjYwOTNkN2VhNjdhZDE5OWNlOWMxOTQzMzFmZjFmNmEyZTY3YiByZWxlYXNlMjQtbWFpbnQKKzQzMzg5IDYzYzQ0MjI2NjcwNTZiNmMxYzExYWU2ZDZlOTdhNDk3NzFmNDBhMDUgcmVsZWFzZTI0LW1haW50Cis0MzM5MCA4Y2NhMjQ5MjYyNmNlNDA4Y2Q1NjcxMTA4MTFjMDY5MmZkMWQzN2RkIHJlbGVhc2UyNC1tYWludAorNDMzOTEgNzYyZTViOGQxODlkYWVhMDdkZjE0ZTk3NzBhYjVlODlkYWRlYjllMCBsZWdhY3ktdHJ1bmsKKzQzMzkzIGVmZDE0MWNiZjZjYjM3Njk0MDEwODYwNDIwYTRiNDI0MTRjMjQ1YTMgbGVnYWN5LXRydW5rCis0MzM5NCBiYjFiNDg1MTYxMzE3ZmVjMGEyYjI3MDkwZDBmZDEwNzUyMGEzNDA0IGxlZ2FjeS10cnVuaworNDMzOTUgNGUxYWZmMGUyMGQxOGZiNzQ4MjgwY2EzZGE3ZmZhNzdkMTJkNDgyZSBsZWdhY3ktdHJ1bmsKKzQzMzk2IGNjYmRjZmM0MGM4MWM0NjhiODJkNzUwNDY3M2EyMjBmYTZhMDExNGYgbGVnYWN5LXRydW5rCis0MzM5NyBlZTRhNjBjNzEzNTcxMjdmN2U1ODE0NjI3YWJiZTlmN2QxOTBlODMxIGxlZ2FjeS10cnVuaworNDMzOTkgOWM2OTM3ODUxNmFiMGZiYjU4ODJiNzhlOTkzMWUxOTA3YzljNzViMyBsZWdhY3ktdHJ1bmsKKzQzNDAwIDUyMDMzNzZmMTU4OTJjYmRlOTRmYTAxZTg5Zjc3Zjg2YTI1Y2QzNjIgbGVnYWN5LXRydW5rCis0MzQwNCBlZjgwNTlmODdmZDJmOTJlYmQ0MTEzNzgxMTY3NzY1ODg4MzJlMmM3IGxlZ2FjeS10cnVuaworNDM0MDUgYTE1N2Y1YTY5ZDM1YzYwOTA4ZWEwNjNmOWE3YjA5ZGVhNjkyNzQxNyBsZWdhY3ktdHJ1bmsKKzQzNDA3IGFiM2VmYmNhNWM5MjA5ODQxODY4NzQwZTk3NjcxODliOTQ4OGIxMDYgbGVnYWN5LXRydW5rCis0MzQwOCBlNDk0NTVlOTRiZWUyODhmMDk0Zjc5MzQ5MjgyNGUzNWRhMGQ3ZmJkIGxlZ2FjeS10cnVuaworNDM0MDkgMWY2MWFhNDZmZWU1YjNkMzAyMjgwMTQ1NGU5OWIxMTQ3N2EwOTZhMCBsZWdhY3ktdHJ1bmsKKzQzNDEwIDQzN2QyNzZjNzMyYzdiZGE3OTM1ZGE4MDYyOGNlZDNmN2Y1NjU2ZjMgbGVnYWN5LXRydW5rCis0MzQxMSA4OTE0MmNhZGNmYjllNzQ3NjkxMzhjZTU3OWVjN2U0Nzk0NTllZjgxIGxlZ2FjeS10cnVuaworNDM0MTQgOTNiYTE1NjE5ZjVhYWM5Mjc4ZWY0ZjQ4MjkyMDBjZWYzMWFhNjFiZiByZWxlYXNlMjQtbWFpbnQKKzQzNDIwIDYwYmUzZjM5YTcyYmRmODU4YTE4MDg0YzE5NzVkZTQ3NjMzYjU1ZDIgcmVsZWFzZTI0LW1haW50Cis0MzQyMSAxY2EwMTJjZTQyN2UzMzY0YWM1MGViNjFmNTc0N2UyZmVkNWNhZGFiIGxlZ2FjeS10cnVuaworNDM0MzUgYjg1YWQyMTY2YzAxYmU3YWQwZWUyMGU0YzM0NDJhNjNlNTFkMGE5NyBsZWdhY3ktdHJ1bmsKKzQzNDM2IGI4ZDFhNDVhMzA1NzMyOTYzOGVmYjQyYmI4MzJiMTFiNjE0OTZjNTEgbGVnYWN5LXRydW5rCis0MzQzNyA4MWQ2MTE5ZGJjNjZiNTdkYWE5MzNjMDQwYTAyOThkZmQwMTMzODYwIHJlbGVhc2UyNC1tYWludAorNDM0MzggZWZiMDlkYmFhNDBlNjdkYjk5NjJkNGFkZDVjMGQ3OTA2MTVkMDUzOSBsZWdhY3ktdHJ1bmsKKzQzNDM5IGFjY2UwNDBlMGExYWFiYjBjYmY0MDAyMGM3ZWFhYTUyN2Q3MGRlOWEgbGVnYWN5LXRydW5rCis0MzQ0MSA0NGU2ZmM4ZDAyZTFjMWZjOGY3OTIwZjBjODExNzA5YzRjODgyZTIwIGxlZ2FjeS10cnVuaworNDM0NDMgMjQzNDdlNDY1NmE0ZmQyNWQzYjFlZjIwNDgzYzgyZjdhM2E4Y2JiNiBzcWxpdGUtaW50ZWdyYXRpb24KKzQzNDQ0IGU5ZTgwOThmNjU3MjQ4ZTYxYjNhODI0YTE4MDFjZjkwNjY4MjUxMDggbGVnYWN5LXRydW5rCis0MzQ0NSBmMjg0ZTg1NGZlNzJlYzQ3YzMwYTU2OGQ0MGY4ZDVkZDljNDU4MWUzIGxlZ2FjeS10cnVuaworNDM0NDYgZTE1NmM1ODE0ZmNjYmM1MDY1YWU0M2UxM2M4Y2Q0ZjJiMGViNjAyMCBzcWxpdGUtaW50ZWdyYXRpb24KKzQzNDQ3IDA4YmYxMTIyYzE0NDBmMjc1YjNhY2QwZjliZWY0NDMxNTVjZGJhYTcgc3FsaXRlLWludGVncmF0aW9uCis0MzQ0OCBmYjdiNTJjNDExNmMzNjNmZjkxMjIyN2EzM2Y2NmVkMTBhMjliODM5IGxlZ2FjeS10cnVuaworNDM0NDkgMTMzZDRiYjYxYmFiMmYzYTExMzkwZjA0NDRkZDNjMzAzZmYzNWUwMSBzcWxpdGUtaW50ZWdyYXRpb24KKzQzNDUwIDk1NWE4NmY4YTE0MGMwMjY4MGQxOTBkZjRhMmQ1YTFlOWY1NGMzY2Igc3FsaXRlLWludGVncmF0aW9uCis0MzQ1MSA3OGNhYzIwZjk2NDJkNzJkNjEwYzJjNGFkZDZmYjAzMTY2YmFkZDliIHNxbGl0ZS1pbnRlZ3JhdGlvbgorNDM0NTIgNjkxODc3OTlhOWY2YmU3ZGY4MGY2MmM1YjVlOWNjOTIxN2ZiYjY4MyBsZWdhY3ktdHJ1bmsKKzQzNDUzIDc5YTBmMDgwZjg5OGMyNTRiY2E5OTliOWQzYzMzNzNkMWM4OWY0YmEgbGVnYWN5LXRydW5rCis0MzQ1NCA1ZTFiNmY1NTM3NjMxM2M1YWM1YmE4YTI1ZTQxMmJjNjA4NzdjNjZiIGxlZ2FjeS10cnVuaworNDM0NTUgODQ5NjdhMTk2MmNiYjJhNWM3NDI3YTNlYTQ0YTdmNTMyNTNjZDI1NyBzcWxpdGUtaW50ZWdyYXRpb24KKzQzNDU2IGNlNTZjNWUzY2IyMDUwZWFlZDBhYWY0NTFlODJiMWNmODhlYzg2NTUgbGVnYWN5LXRydW5rCis0MzQ1NyBlNThhNzFhODU1MGU3YzkzN2I2MjBhZGMzODhjZGE1YzcxYzJmZTRlIGxlZ2FjeS10cnVuaworNDM0NTggYWFhMDRiZmFmYzU4NTVhMWZkNWY0NDczMzQ1YWRkY2E2MTYyYzA0MiBsZWdhY3ktdHJ1bmsKKzQzNDU5IDIzNWY2MzVhYzQ1YTA0ODcwYmRhODg4MDkyZGQ0NjgxMTdkMmRiN2EgcDN5aworNDM0NjAgMzYxOTBkN2ZkOGFiMmVhYWM5OGE2NDVjMzEwMTJmM2Y2NDA3ZmE1MCBsZWdhY3ktdHJ1bmsKKzQzNDYxIDA4OTlhODA0YTU5NGNjZjkyOGJiZTY5MmU1OTgzMWU3ZmU5Y2VlNWQgbGVnYWN5LXRydW5rCis0MzQ2MiA2MTQ1MmJkMTI1ZTVlMTA2YWQ5NDZhMTgyNTkyZTMzZjQwZGZmODM5IGxlZ2FjeS10cnVuaworNDM0NjMgMjI4ZTI1YzkzYTk3OTNiNjg5NWNjNDM2YzM0ZWQyMTk2MmM3YTZkMCBsZWdhY3ktdHJ1bmsKKzQzNDY0IGM3MmJjODQ3MGY2YzllYjgyNGY3YzkwNTk4NjRhMTI5Yzc2MDI2NTUgbGVnYWN5LXRydW5rCis0MzQ2NSAxOTA1OWRmNDVjZmU5MDJmMGUwOTA5ODYxZDFkMzk2MTk1MGNlNTRiIGxlZ2FjeS10cnVuaworNDM0NjYgMDQ5NjA2OTMzMzI4ZTg5MDgyMWUxMzMyOTBiYzk5NzRkNTM1NzA0NiBsZWdhY3ktdHJ1bmsKKzQzNDY3IGY1ZTc5MmE5M2M0MzFhNGRiMGZmZjU1NTY4YjhiODAyZWUxMDk5MmUgbGVnYWN5LXRydW5rCis0MzQ2OCA5OGY1YzkxOGEyNGFjYjkzMWUxZjc3YmViZjMwODQzOTA2ZjQ0NTY5IGxlZ2FjeS10cnVuaworNDM0NjkgMjAyZmU0YWFmY2JiMmMwODIzMGNhOTk2YmJjMzFhNGVlN2VlMGMxMiBsZWdhY3ktdHJ1bmsKKzQzNDcwIGQxOTkzZWU4YWM0MTFkMWZjMTIxNzZkYjQyOGNkMDJhMGZhZThkNWEgbGVnYWN5LXRydW5rCis0MzQ3MSBjYjI2NDVhNTU0ZDg4MmFmN2EyYjdhZmQyY2JlMTI3M2U1ODg4YzFlIHNxbGl0ZS1pbnRlZ3JhdGlvbgorNDM0NzIgMGQzZTVhYzA3MmIyYTE3YjQ5ZTM3MzAyNTA1OTBhY2E4Mzc2M2RhOSBsZWdhY3ktdHJ1bmsKKzQzNDczIDMyZTc2NzY5OTAwMTRiZDFhOTU0MTM5NzU1N2MxY2E0YWZiNjIwYzYgbGVnYWN5LXRydW5rCis0MzQ3NCAxNjRmOTVlOGUwY2NiNTA2OGRlY2QyMGQ1YWNlYTAwYWFmZjdlZGMzIGxlZ2FjeS10cnVuaworNDM0NzYgYzQ5ODhhYzU4OTk5NzkwZTUxZmY0M2FlYTY0Njg2N2IxMDljMjc4OCBsZWdhY3ktdHJ1bmsKKzQzNDc3IGQ2NWE5YzljOGE3YTJlYTM3MTczNDZhNGM0ZjFhY2YwM2I2ZWNjZjEgbGVnYWN5LXRydW5rCis0MzQ3OCA1OTkxMmI0ODEyZTZhZDg1ZWU0YzY3NTFjYmVlNzMyZTBhNjY4NTg2IHJlbGVhc2UyNC1tYWludAorNDM0NzkgZmI3ZDg5NWE4ODk3ZjUzZTM2ZTg4NGIzYzRjOTQ4NzU2M2JkZDlmOSBsZWdhY3ktdHJ1bmsKKzQzNDgwIDg2NmRhN2YzMGU1Njg2MGE2MTE4NmM4MGE2ZTE1Y2ExYjk4ZTRlMTAgbGVnYWN5LXRydW5rCis0MzQ4MSA2NzE5MmRhM2U2OWM5ODViYjEyNzJkYTkzMmQ3ZGU2MDczMDMzZmFkIGxlZ2FjeS10cnVuaworNDM0ODIgYzc3MTE1ZGRkYmUxNmRmNTJmYmY2ODIyNDlkZmEyYTNiYzViNTU4OCBsZWdhY3ktdHJ1bmsKKzQzNDgzIGFhYzAwNWU4YmI4MDA3OTAzZWQyZTUwZTcxZjU5ZmI5ODlkNTYwMDYgbGVnYWN5LXRydW5rCis0MzQ4NCBiODBiNWY4NGFlNTRmMmQ0NTIzMTVjZjY4OGJlNDE3NzRjMDdjYjNlIGxlZ2FjeS10cnVuaworNDM0ODUgYTdlYzc4ZjhkMDg2NmU2ODgyZjg4ZDU4ZjAzYmY4MDBmMWE2Y2M5NCBsZWdhY3ktdHJ1bmsKKzQzNDg2IGE0OTUwZWE1NTZiNTM0MzliOTU4MTcyYWJmOWI5MTZiMDcwYzQ2ZTQgbGVnYWN5LXRydW5rCis0MzQ4NyA3NWY5ZWIwMTEyMjZlMWYzZWY3YWUxYzU2YWE2MGE2MTFmZjA5MGFlIGxlZ2FjeS10cnVuaworNDM0ODggNmM2YjIwMDQ0M2UzNmM3YjQ0ZTA5MTYxY2RjN2IyODU1ZTU2MTUxMCBsZWdhY3ktdHJ1bmsKKzQzNDg5IGM5YTYyNzM3NzViNTAzYzQxZjZkYmM2ZDVmN2M0YzQwMjc4MzhlYzYgbGVnYWN5LXRydW5rCis0MzQ5MCBkYTc3MDY1OWY3N2I4NDJmMTJhZTRmNmUwZjhlYjJjNDZlNjcwYjZkIGxlZ2FjeS10cnVuaworNDM0OTEgNmZlZjk1NzcxMmI5MDZjZjNjZDI0NjBmOTE0MDZiZmVhMDJkNmNjZCBsZWdhY3ktdHJ1bmsKKzQzNDkyIGE2MWQzYWZkZmM0YjQ5M2M5ODMwNGQ3N2Y0NmYxYjkyNWZhMmFjZWYgcmVsZWFzZTI0LW1haW50Cis0MzQ5MyBmMzMwMDQ4ZDhiZGY4MjAyNDE0YTMzNjRjYWQyNGYxOTUxMjBlNmVlIGxlZ2FjeS10cnVuaworNDM0OTQgZDYxMGZjZGI4OWY3ZWJiMWJmODA5ZjUyMjIwYTViY2I2YWY5OTk5YSByZWxlYXNlMjQtbWFpbnQKKzQzNDk1IGZlM2I5M2MyMjQ4MTRmMzYwZWI2MGIzNWIxMGQxYzk4YjZkMmM4ZjEgbGVnYWN5LXRydW5rCis0MzQ5NiBjNmNmMTFhY2I0MWZiMzBiZTg0NGYzN2U0YTUzYWY5Y2NhZDBhMjQ2IGxlZ2FjeS10cnVuaworNDM0OTcgZTYwYzhiOWIyYjRmM2VkZWQ1YzkwYzAzMWVhZjMwZTFlZTFiYjdlMCBsZWdhY3ktdHJ1bmsKKzQzNDk4IGNjMzVkM2E4NzlhZDQ5NGNlMzE1OGZjMmJiNjU0ZGFmMTIyYWJiNDUgbGVnYWN5LXRydW5rCis0MzQ5OSAzODUwYTQ0MzQ4M2ExZmEyY2ZjZGMwNWNjOGUzZjQ1MTY2OTgyYzJjIGxlZ2FjeS10cnVuaworNDM1MDAgMzcwNDA0NTliZjJlNDFhODQ1MDgxYWY3OWJmYTFiYzg2MzdlMzFkOCByZWxlYXNlMjQtbWFpbnQKKzQzNTAxIGEyNGNiZjk0YmI4ZTBjZDQ1ODM1Mjg2YzJlNDczOWVhYWY1Mzg1NzcgbGVnYWN5LXRydW5rCis0MzUwMiBiZjY2NGExNjBmYzBhZGM3NDNjZGViOGNkOGE5NGU5OTQ0ZmZiZDVlIHJlbGVhc2UyNC1tYWludAorNDM1MDMgMjkxNGU3YjRkMjVhNDAwNzBmYjVhODBlM2Y4YWY5Y2Y4NjM3ZTJhOSBsZWdhY3ktdHJ1bmsKKzQzNTA0IDQzNmIwM2ZmYThhMjQ4ZmQ2MjYxMWNjZGQ5NmVjMTQ0YzE5ZTQ0NTIgbGVnYWN5LXRydW5rCis0MzUwNSA0YThlZjcwZGUyMTJlNDJjMmNlYTE5ZmI2NjY4NmMyYzMwMmU3ZWJlIHJlbGVhc2UyNC1tYWludAorNDM1MDYgMDE2ZDNkMjNmZjUyZGM0ZGJmMGM0MTM0NDVhZjBiMTcyMmRjN2U5MCBsZWdhY3ktdHJ1bmsKKzQzNTA3IGE3ZjhiMGJlNTk3ZTU3Mzg0ZjFlZjFmMWE5MzIxNTIxY2M0ZmJiMmYgcmVsZWFzZTI0LW1haW50Cis0MzUwOCA0N2ZiYmE4NDlhNmM4MTk3MzA4OGE0Zjk0YmIxOWRhNTc1MWJlMjBhIGxlZ2FjeS10cnVuaworNDM1MDkgODY3MGEyNzAxYTBmOTZmMmI4NmQ1OTVhYTI2MTVhNGJiOTgwY2Y1MyByZWxlYXNlMjQtbWFpbnQKKzQzNTEwIGZhYjY3MmMzZGRlNjU4NzQzMjU5N2NjZTA5Zjg1ZmVkZjNhMGU0ODQgbGVnYWN5LXRydW5rCis0MzUxMSA0NjJjOWQyYTA3YmIzN2NhMjg2Y2IyYzQ2ZjQ1MjkxZjA0ZWVmMDU3IHJlbGVhc2UyNC1tYWludAorNDM1MTIgOTgyNTE3ODAyMzZkN2Y0NGFiNGIwMjlhMDBjMzI4Yjc3M2VkMTFkOSBsZWdhY3ktdHJ1bmsKKzQzNTEzIGYwNWJkOThkOTM1ZDU2ZjVlYzE4YjU1NWEwNTY4M2FjMTQ5YjVmYzIgcmVsZWFzZTI0LW1haW50Cis0MzUxNCBlNTQ2Mjc0ZDY1MDNlYTIyMTM0NTgwYjU3NjgwN2IxYjNmYjI0OTU0IGxlZ2FjeS10cnVuaworNDM1MTUgNTkxODVmZmE4NjFkYTBmMTYwZTNhOWMyNjBkZjI1ZjQ1YzE3NTJmNCBsZWdhY3ktdHJ1bmsKKzQzNTE2IGI0N2Q4MjE5ZWNkNjFmZGFmOTA2Nzg3NjBlODMzMjIwZmRkMzQ1MzUgbGVnYWN5LXRydW5rCis0MzUxNyAzNWNmOTEyOTc2OTNlZjA0ZmZmNmE0NGQ1MjA0OTY2OGZiMjdkMzIyIHJlbGVhc2UyNC1tYWludAorNDM1MTggYjgyM2Y1ZmU5ODBjYzM5ZjBiODQ1MTIxMTE0ZmNlZjgyNDkxMDBmYiBsZWdhY3ktdHJ1bmsKKzQzNTE5IGE1MzNkNWI1ZGI4NDAxNGU3Mzg1YTJiMzIxOTQ3MzJiNWNmODM3ODEgcmVsZWFzZTI0LW1haW50Cis0MzUyMCAwNTkxNGU4ZGVkNzNlZGI5OWVhYTM0ZmFjZDIzMzRmNTAzYjg5NzJlIGxlZ2FjeS10cnVuaworNDM1MjEgODU4YWU5NTRmMDU1ODc2NDczMzc5Zjk4NzZhODYyOGQ2ZmIyYmMxYSBsZWdhY3ktdHJ1bmsKKzQzNTIyIDg3MGQ1NmEzYTIwYmU0ODVhNmNmMmMwN2FkMWY3NGQwMDU3NzFhNjYgcmVsZWFzZTI0LW1haW50Cis0MzUyMyA0OTIwNDQwMzRhODdiYmI0ZWE0NWQ5NWM3YmFiYzI2ZjUzOGZmZWEwIGxlZ2FjeS10cnVuaworNDM1MjQgNDIzMTJlNWYxMWZkMTE1YjMwODIyNTFiZTFjNTIyMzU5ZGM3MTJmMiByZWxlYXNlMjQtbWFpbnQKKzQzNTI1IGY2NDgxMmIyYjVjMWNiNGQxOTY5MmNhODI2YTMyNTQ4MDc1MGJiZjcgbGVnYWN5LXRydW5rCis0MzUyNiBiMDY4YWVlMWRmYjViMzU2MjRlMDE4Y2UxMmVkODQ0YTNhZWNhZmYwIHJlbGVhc2UyNC1tYWludAorNDM1MjcgNmYwODYzYmVkY2VhMzJkMWNmMzNkZDRhODJjN2E4ZmNlNmMxZmEwYiBsZWdhY3ktdHJ1bmsKKzQzNTI4IGIwOTgxZjBjMThmZWI2ZWMzZTdmNjFlNjI3NDU0YzAxZWY2MTg4ZmIgcmVsZWFzZTI0LW1haW50Cis0MzUyOSA4ZDA1NzlkMmI2NjI3OTJhM2U5MDVkMDNhNjMxYjM3NTBlYWYxYjliIGxlZ2FjeS10cnVuaworNDM1MzAgODIzYzQ4ZDY4NzFlYzc5M2FmM2FiNTg0YjIwMmFiNWY5OTFkNGJiNiByZWxlYXNlMjQtbWFpbnQKKzQzNTMxIDJjY2U5YmNkYzlmNjQ1OTViYTUxY2E4ZWZhODcyZTNlNjkzMzExZDIgbGVnYWN5LXRydW5rCis0MzUzMiA1ZjM1N2U2MGNkZGVhNTljZjE1MWRiMDkyNzI3MWU2YzM1ZDg0NjFmIGxlZ2FjeS10cnVuaworNDM1MzMgOTFlOWZiNWNmZTE0MjU1YjM5NjM4ZGU3N2RmMWIwZjQyZTNhOGMzNyBsZWdhY3ktdHJ1bmsKKzQzNTM0IDgzOTg4MzU0YjY0ZDlhODhiZmFlYzMwNDYxYzU5ZDc0Y2RkOWQ2MWYgbGVnYWN5LXRydW5rCis0MzUzNSBiNzMxNzRhZjI2YTliNWQ3ZWE5M2YwZmJmODgyZjAyZmY4MTNkZTk3IHJlbGVhc2UyNC1tYWludAorNDM1MzYgZmFiNDY5MzYxYmJjMGU0Yjk5OGI1ZGUxMmIxZDBkNjUwZGExMGNkYyBsZWdhY3ktdHJ1bmsKKzQzNTM3IGFjZTY3ZTNiY2E2ODMyZTE0YmE0ZWFjNWE1ZGRiYjBiYWE3NzRlZmQgcmVsZWFzZTI0LW1haW50Cis0MzUzOCAzYTgxZGNlYWE5YThiZTQxM2E3ZWY3ZThjMzMxYjMyNzc1MmI1ZTU1IGxlZ2FjeS10cnVuaworNDM1MzkgNGFiOGVjOWU1OWRmYWYzNDkxYzM0MDUxNTRmZmU1YzFhYjg4MDRjNCBsZWdhY3ktdHJ1bmsKKzQzNTQwIDBlNGIzY2FkODlmZTZjMjI2ZjBhYjM1Njc2YzIxMThiOTQ4MTU1NTIgbGVnYWN5LXRydW5rCis0MzU0MiAzZDRhM2Y0ZmM5OGU4YjFmYWVhNDNlMWYwNjdjZTZmYzEwODE0Y2MyIGxlZ2FjeS10cnVuaworNDM1NDMgNWUxY2YyMWQ0YWIyMzE5MGVhNTNkYTU5ZmE2MTcyYTZiNDQwMTUyNiBsZWdhY3ktdHJ1bmsKKzQzNTQ0IDRiNjVhYjQxYzc3MTdmZDVlYWQzNDYwZDgxZjYyMmUzNTdiNGNiNDYgbGVnYWN5LXRydW5rCis0MzU0NSBmZTk3YzAwMTZkNGIxM2ZmYjc1N2Y4ZDkyY2U0MWI1NDE1ZDg3ZDZmIGxlZ2FjeS10cnVuaworNDM1NDYgYTZiY2U3YWViZTA1YmNmZDNhMTEzYTY1MDM3OWE2MmJkOWRiNGI4YSBsZWdhY3ktdHJ1bmsKKzQzNTQ3IDRhMjA2ZmNlNWZlN2E4NDI4ZDlhYjNkNDM3MGI1YzJlM2M4YTcwMDYgbGVnYWN5LXRydW5rCis0MzU0OCA1YTZjN2Q2ZGVmMGM5Y2U1NWMwZTY4NWRkZTc5MmZhNTEzODNkMDA5IGxlZ2FjeS10cnVuaworNDM1NDkgM2FhMGE0ODI3ODg4YjI0NDRlOTBmMTFiY2Y3YmE2OWQwZDUwMjBmZSBsZWdhY3ktdHJ1bmsKKzQzNTUwIDgwNjhjMjJjMzcyNGU2Y2ZlMzQwODQ5ZjRlNzI2OTZkN2Q1NDhiNmMgbGVnYWN5LXRydW5rCis0MzU1MSA1M2VmNmMzNzcyNzFkZjhkYzhkYjNhNTQ4ZTAzNGNiN2UxMDJmMTM5IHJlbGVhc2UyNC1tYWludAorNDM1NTIgZjRkODhjZmFlYzYwYWM1MjBlNzZkMjJhNTI0MDgyMTU5ZDY1ZTFjMiBsZWdhY3ktdHJ1bmsKKzQzNTUzIDQ4Mzc3MjJhNjBmMDNkOTY1NmZhOGUwNDc0ZTcwNjdlYWU2ZmY5OTIgbGVnYWN5LXRydW5rCis0MzU1NCBjZjEwZjI0NDM1NDJmNmQyYmU0ZTZkOTc0NWM0Y2U3ZTc4NWZjNjllIGxlZ2FjeS10cnVuaworNDM1NTUgMmNmM2I1YzQ1MWQ3NDViMzU1YzNiMmNhNmJhMTgyMWVkYWI3Mjg1NyBsZWdhY3ktdHJ1bmsKKzQzNTU2IDI2MGVlMzkxZjkwOGYyM2UyZWU2OTcwNjI3NGM5YzMxNWFjZWM4NDkgbGVnYWN5LXRydW5rCis0MzU1NyBhMDY2ODVmMDg4ODY3ZmE3YmFjN2I4N2JjYzgzMDM1NjQzYmVjZTU4IGxlZ2FjeS10cnVuaworNDM1NTggZTk1NTI4NGNkNjk0MDJkYWIyNTg3NzYzZWMxZjBmZTIxZjM3MWUwZiBsZWdhY3ktdHJ1bmsKKzQzNTU5IDg1YjI2ZjRmYTJhNTA0ZmRiNTM0YzlhNTEyNjg2OWViMDJiNzYzOWMgbGVnYWN5LXRydW5rCis0MzU2MCAyODM0Y2NmNTUyZjM3ZjY3Y2U3YWFkYmU4NjI5ZjdjZTQ0OGZhNDI3IGxlZ2FjeS10cnVuaworNDM1NjEgYTYwYTk0NDNlOGRhZDllMmZkMDg4NjRjZjhiYWVhZGJiMmEyNDk4OCBsZWdhY3ktdHJ1bmsKKzQzNTYyIDljMmE0NjJkNjZiYjczYWFjOGE4NDJkNjFhZTk1MzA4MmRkNGM4NjYgbGVnYWN5LXRydW5rCis0MzU2MyA0MDIwY2Y2YzM4M2UwNjA2ZTY4NWE0OTVjYmIwZjAyYjk1ODIxOTJlIGxlZ2FjeS10cnVuaworNDM1NjQgZWE5YTAzYjhiOWY2YjFlZTYwY2YzNWY1MjE0ZTA2M2E2YjA0MjJiMSBsZWdhY3ktdHJ1bmsKKzQzNTY1IGRmYzMzZWM3ZjczYTg1ZmVhYjA4MjkwOGNhMWE4MDc5YWZmODhjMjMgbGVnYWN5LXRydW5rCis0MzU2NiA3ODI2MDQ5YWNiNGIxZDNhYzExMmM4YjVmN2IwYzIyMzhmNWNhZWRkIGxlZ2FjeS10cnVuaworNDM1NjcgNTAxZmRhNTExYjBhYmQ0ZDdkYWQ3ZjZmMjM0ZjkyZjY0OTRhNGJiNyBsZWdhY3ktdHJ1bmsKKzQzNTY4IDA5YjhlNWExMjE0NmNjOThmOTk3MzM4ZmM4YjQ1YTMwMzA4OTE5M2QgbGVnYWN5LXRydW5rCis0MzU2OSA1NDZiNjMxOTI0MDA2MmU5ZTY0YTdiYWMyYzkxOGQ3MmQ2MmYwMjI5IGxlZ2FjeS10cnVuaworNDM1NzAgMTAwNDBkMTg3YzIxMDRmNThmYmJkNGI0NmZkMzUyMGE4YTFlZGEzMiByZWxlYXNlMjQtbWFpbnQKKzQzNTcyIGNlYTU0YzlkOTIxZDU3YTk4ZTQ5NGUzYjNmMWY0YmVkYjQ3Njc0YmYgbGVnYWN5LXRydW5rCis0MzU3NCBlODJhYTgwNDE4MjFhMzU5MzMwNTFhNzE1YzJkZjA4MWE1ZWZlMmMxIGxlZ2FjeS10cnVuaworNDM1NzUgYTM0ODE4NzExMzJjZTY1NWMxNDQ3NDIyNTVjN2ZkODRkMjdiZDdlMCBsZWdhY3ktdHJ1bmsKKzQzNTc4IDc5ODZhNWIxMzFlZDJjMDdkNDk4MjE3MWEyMDA3M2MxZmVmZmY5ZWIgbGVnYWN5LXRydW5rCis0MzU3OSBlOTU2ZTE2ZTc0NDRmYjI0YmM4ZmQxNDI2N2RkYTZhZWE1M2U1YjRkIGxlZ2FjeS10cnVuaworNDM1ODEgNTdiMWZmMTM4OTk1ZTg3MDE5YTU1ZDVkYzUzZDRlN2JmZjIwNjQ0NSBsZWdhY3ktdHJ1bmsKKzQzNTgyIDNlZWE2NWJiODk2ZWRjMDYzZjI3YWJmMDU0ODY3OTllZmI3NDVhOGYgbGVnYWN5LXRydW5rCis0MzU4MyA1MTMzYjViMGI0YTg0NThkZDVlODU5NzUwYmE0NTE3NmRmZjlmMTU5IGxlZ2FjeS10cnVuaworNDM1ODQgZTE0MjU1ZGY3ZmQxNjFlODgwYjQ1N2FhZmQ2ZjliOTAwOWE5Y2NjNSBsZWdhY3ktdHJ1bmsKKzQzNTg1IDkyYTE3YTI4MjFlMDRlMTY5YmFjMTQ1OTgyMjEwOGRjMDBkODEwZDYgcmVsZWFzZTI0LW1haW50Cis0MzU4NiBlYjY5ZDJlMzEzNGNlYjBhNTNkNDZmMmI5NzJlN2E2MmExOGE1MDY0IGxlZ2FjeS10cnVuaworNDM1ODcgZTgxNGFkOTcwZmM2YTkxNjVkMDVmNDEzOGEzMjRmZmYxOTJiZDQzNCBsZWdhY3ktdHJ1bmsKKzQzNTg4IGZiYzYyZGI5N2U0MzljNWJmZjE1MjE1ZGI2ODI4NGI0NGVjN2E2NWQgbGVnYWN5LXRydW5rCis0MzU4OSBhOGNkOTA1ZmQ5NmNkM2VhZDJlZTNiNGI1MzdkNTUyY2M4OWM4ODJiIGxlZ2FjeS10cnVuaworNDM1OTAgNzk2YWNkZTcwMTk1NDExZjEzMDZjMWYxMWVhMThlMTJkYTM1MTRiYSBsZWdhY3ktdHJ1bmsKKzQzNTkxIGJkYmUwN2Q5NmI4ZWY0ZGIzNWNhMWE0N2IxMWMzY2YzOTVmNjQyYWEgbGVnYWN5LXRydW5rCis0MzU5MiAwMWZkMDkzYjg3OGNjNzcwMjNmNDVhNmQyMzM5MmMxMDk3MmEwZjJmIGxlZ2FjeS10cnVuaworNDM1OTMgYmJlMWNkYzkyNjA1MWFkODI4YzgwNDVlMzBjMDNkYmViYWVhMmU2YSBsZWdhY3ktdHJ1bmsKKzQzNTk0IDExNTQyOGJiMWQzZjY0NWJlOGY4ODc4MGRlYzU5NTZlYTZmZjUyMjcgbGVnYWN5LXRydW5rCis0MzU5NSA1Y2M2ZDcxNTM3YTMxYTk1ZjNkMzkwYjFhNjczN2RkMDQ0ZmQyYmE2IGxlZ2FjeS10cnVuaworNDM1OTYgNmQ1MGZkMzY0Y2Y1Y2I1OTZkM2YwZDQyZTdjNTY5MTc4NTE4NWJkOSBsZWdhY3ktdHJ1bmsKKzQzNTk3IGU0NTdiMjRmOThjNTFmNzNmODA2OWVmMWI0ZjI5Mjg3M2FiYzdmOGIgcmVsZWFzZTI0LW1haW50Cis0MzU5OCAzNWM0YjA5MzNhOGI3ZTU5ZDE2NGJiYjQzYTVkM2U3YTY1MTk2N2IwIHJlbGVhc2UyNC1tYWludAorNDM1OTkgZjVhZDNjN2VjMmNiZjQ1M2JmZTViOGEyMjliOTVmMzhjNjNhZDMxZCByZWxlYXNlMjQtbWFpbnQKKzQzNjAwIGJjOWQ1M2MwMGRhZDZjMzYzMDEwNDc4ZGQzMDQxNjAyZDVhMWIzMTUgbGVnYWN5LXRydW5rCis0MzYwMSBlMmIzYTdkOWFjYTkxOGFkNWM1MjYyNzIyNWY5ZjZmNzVhYjk1YjczIHJlbGVhc2UyNC1tYWludAorNDM2MDQgMTA0OWU5YWViMzg1MDlmZWVlMWRhNTNiYTBkMWJlZGM0ODJiMWU2OSBsZWdhY3ktdHJ1bmsKKzQzNjA2IGEzODMwMzc3ZTFhNzk2MjE5YzEyNGJmZGNmMjkwYmUzMzAxMjUxY2IgbGVnYWN5LXRydW5rCis0MzYwNyAyY2QxZTViMTVlMDUwZGUzYmQ2ZTRhM2NhN2MzNjViMmE2ZTYzM2FkIGxlZ2FjeS10cnVuaworNDM2MDggMjlhMDZhMmYzZjJkOGYyNTgzN2M2NzgwNWQxMGUwZjI5ZGQ5NDA2NCBsZWdhY3ktdHJ1bmsKKzQzNjA5IDYwYmVkNjQxYjZkMDMzMDA0NDUzZjhiNzY5NDJjZWQ0MTBmMzljMjUgbGVnYWN5LXRydW5rCis0MzYxMCA1YWEzY2VmNGE4YTdiNDkyMmFjODNiOWE0NTNkNWFhZjA3YjgxMmRkIGxlZ2FjeS10cnVuaworNDM2MTEgNmRiZWE5MTFlODgxMGE0YTI1MzI1YTY2YTgwNGZhZDljNjFkZWZiNyBsZWdhY3ktdHJ1bmsKKzQzNjEyIDBmM2I3YWZhMTg3YWU2NmJkYzE3NjBkMGZlZWRiYmRhYzgyMzZkOGYgcmVsZWFzZTI0LW1haW50Cis0MzYxMyA0OWRiZWRmYjFkNzQ4MzBlNmExNTU5OTE3MzZkOWYzM2MxYTRlOTRiIGxlZ2FjeS10cnVuaworNDM2MTQgMTZhNjRlMzk0NjAyMmZiOGIzMWY2YWM1MjQyYWJhYWVlOWNlOWUyYSBsZWdhY3ktdHJ1bmsKKzQzNjE1IGVmZjZjNTM0ODNmZjM5YTMyNjQ2M2Q0NzA5OWQ2MzNmNjIzZWMyMjYgbGVnYWN5LXRydW5rCis0MzYxNiAwN2U0NGZkMDZjZjc2MzllNzg1MTk1MmNjN2U5NzJkZmZhNjc4Y2RlIGxlZ2FjeS10cnVuaworNDM2MTcgMmY1N2RhOTIxYWVmN2MxZWE2Nzk5Yzc5OWE3MmU1NGFjNTc4YjVjYyBsZWdhY3ktdHJ1bmsKKzQzNjE4IGRjY2U4MWI3ZTY0ZDAzYzg1NTQxOWMyMjA3ZjQxZjdjOWY3YzE0ZmUgcmVsZWFzZTI0LW1haW50Cis0MzYyMCBkMjcwNThjNDA5ZGYzYzY5NWNkYzUwNzM5OTczMGQ2ZGNlZDA1ODk0IGxlZ2FjeS10cnVuaworNDM2MjIgYzFjZWYxZDJkY2NmNGI5ODQxZjZkMGU0NDg3MDdjN2EzNWYyNWFmNSBsZWdhY3ktdHJ1bmsKKzQzNjIzIGQyNjk3YzUyY2NhZTU5YjkyYjAwYjczYWVlYWEwNjJiYmI5MDE1M2UgbGVnYWN5LXRydW5rCis0MzYyNCA2YWIxNWZjODVjMmQwYzY4Yzc3Y2M2OTVmODdjZDI2YmNkZTliN2ZjIGxlZ2FjeS10cnVuaworNDM2MjYgYjYwMzMwNzI5MmZjNzRhZTg2YWY2YTU1OGVlMTA0MzdhZGM4YTNjNSBsZWdhY3ktdHJ1bmsKKzQzNjI3IGFkZDAwNzg3MGJiZGFkMzkwOTIxZDkyMGE2NGQzZDJhMjU4MjY3OTAgbGVnYWN5LXRydW5rCis0MzYyOCBkMzQ1MTY1ODgyNzJhZWUxYzgzYjk4ZTRkYjU0M2JmYTg5ZmNkYTc5IGxlZ2FjeS10cnVuaworNDM2MjkgMmMzOGVlNGJkZDhhYjI5NWU0OTlhYjUzMzc0NGIyZWNjY2MxY2RjMyBsZWdhY3ktdHJ1bmsKKzQzNjMwIGMxMTViM2FlMWMxODc5YTNiMDBiZWQwZTU3YmI3YWVjOTcxMDRhNmYgbGVnYWN5LXRydW5rCis0MzYzMSAxZjEwOWE0OTUzYzY5YTIzOTE2OTExNDRmNjY4YjExZWI3ZjkwZWZlIGxlZ2FjeS10cnVuaworNDM2MzIgMDRhZmIzNjUwODQ3NjBlYWNlYTZkZDhhZGNmYTI4MjdmYTA0ZmI2NCBsZWdhY3ktdHJ1bmsKKzQzNjMzIGExN2I1Mjk0ZTk5M2NhOTZmYzEwMWNlNWI5OGRmOTljOTIyMTMwNDcgbGVnYWN5LXRydW5rCis0MzYzNCA5ZWNiY2U1NWE0NTQ2NWQ4YTA0YmJlNGRlOTQwN2Y5MjcyNmViNzdiIGxlZ2FjeS10cnVuaworNDM2MzUgOGVmZGVmMmVjZjNiMTk1ODVkMTI1YmJkMDMyMjZkNjQwOTFmNzliMSBsZWdhY3ktdHJ1bmsKKzQzNjM2IGY4ZmMzMGMwZmM3YzM0NTIxOTNhMWY4YzNmM2IxZTliOGE4NmI3NzkgbGVnYWN5LXRydW5rCis0MzYzOCAyMGZmYzJjYTAzZTBjYTUxYmFmODk2NjBkOGZiOWMzZTY5NjYyMDExIGxlZ2FjeS10cnVuaworNDM2MzkgNjI1NjdiYmU3ZDg4ZGE1OGIwMTRlOTAzOWMwY2JlYzQ3M2U3ZjgwNSBsZWdhY3ktdHJ1bmsKKzQzNjQwIDU4YjhkMjk4MjE0NGY4OGQzNjVjYjQ5OTJkYjlhYWZhOTQ0NjM2NjAgbGVnYWN5LXRydW5rCis0MzY0MSBlNjU4MjkwNWVlYmE2YjU2YmM3ZjI1YTNhZGI4NjQxNDg4OGFiNzI4IGxlZ2FjeS10cnVuaworNDM2NDIgOTAzZTMxNjIwOTllMjkwZjg4YjFiZTUxNzE4OGUxY2M5ZTgwM2ZkZCBsZWdhY3ktdHJ1bmsKKzQzNjQ0IDg1MmYxYzFhODliNGQzNGU2MTc5ODcxNDgxNjJkYjdhOTJkMDBkMzEgbGVnYWN5LXRydW5rCis0MzY0NSBlNzA5ZTYyODg2ZTYwMzk0NTIzOTUyMDUwMzU5MTNkZmFhMjU3YmQxIGxlZ2FjeS10cnVuaworNDM2NDYgZDZlY2JhNTk2ZTFlNjg5MWQwNGE2YTFiZDhlNjc5ZjM5YWU3YjBkZiBsZWdhY3ktdHJ1bmsKKzQzNjQ3IDI5NjM5MmM3MTA2OTBlNjBkZDE0ZDNkNGViYjExM2MzN2Q1ZjkzNjEgbGVnYWN5LXRydW5rCis0MzY0OCA0YTk5OWM2ZTAwYzAyZmRhNWFlMDEzNTVlNThjNWQyNmQ4OTY3ZjM2IGxlZ2FjeS10cnVuaworNDM2NDkgYTk4MmIwMmJlYzBiZjE4NDUwNjJiZjU4NWE0ZmQxYTZhMWE1MTVhNiBsZWdhY3ktdHJ1bmsKKzQzNjUwIDEwNWE4ZGQwMTg1MTY2NTNiZDAxNWY2NjZiNzgzYWFlM2M3OTA2ODQgbGVnYWN5LXRydW5rCis0MzY1MSA4OTZmOWZlYWQxN2U3MjBlYzRhMjFkZTNhYzIxNDUxOGRhODQ4NDVmIGxlZ2FjeS10cnVuaworNDM2NTMgYTBmMmMzOGQ4NWY0NTNhYzk2ZTU5NmVmZjI3ZTBjMDQxMzMwYzliNSBsZWdhY3ktdHJ1bmsKKzQzNjU5IDM5NWIxZjVjOTc1MTQ5M2NhZTcxYjRlODQxNDBjYWRmMTkyOTQ2NjggbGVnYWN5LXRydW5rCis0MzY2MCA0Yjc2MWE2MzM5OWM0MjdiYjc4YjUzZDJmODc2MmYyYzg0N2ZhNDA4IGxlZ2FjeS10cnVuaworNDM2NjEgNjlmNzk1MTc3NjFkMTJhNjNlZWYwNmRkZGVkNzkxMDBhMWY1MWExZiBsZWdhY3ktdHJ1bmsKKzQzNjYyIGRiZjViMmYyYTQyOTE2ODcwMTc0Mjc2ZDFhOGM2NWYwMzY0MzE0NWEgbGVnYWN5LXRydW5rCis0MzY2MyA2NTMzMzhhYTY5ZjJkN2RjMGQxNmJmNzFmZWU2OThjMjIyYjFlOTIyIHJlbGVhc2UyNC1tYWludAorNDM2NjUgMDk5OTA2NjEyMjZkYmFhNWMzMGRlMTRjOTQ3ZGI0ZDYwMTA1YWRlMyBsZWdhY3ktdHJ1bmsKKzQzNjY2IGVkNmZlNzI5MTA4Mzk5OGU1NmMzNTlmZjY3MjE5NGMwNzEwZTQzMmIgbGVnYWN5LXRydW5rCis0MzY2NyA5NzZjMDEwOTFiMzg1ZGVkOTA0NTJlMWJmNWY1ODQ4MjUzNWFlOGEzIGxlZ2FjeS10cnVuaworNDM2NjggZDM5NjlhZWJhNzc3ZDEwMDZjZGY5OWRiNDYwYThkYzhhNDBlMzg3MiBsZWdhY3ktdHJ1bmsKKzQzNjY5IDQ4OThmMTk2YTI0ZGViY2VkNWI0ODU4NzU2MDg3NDVhMzgzYWE0ZDQgbGVnYWN5LXRydW5rCis0MzY3MCAzZDRmMzUzYzNkNGZiMjY5NDk2MmIyNTY0ZDc5ZWQ5NzdiMjBiMmFlIGxlZ2FjeS10cnVuaworNDM2NzEgNDhkMTJkZWYzMmIzYzhjZWI5OTQ0N2YwMGY3ZmFiYjZkZTdhM2U3ZiBsZWdhY3ktdHJ1bmsKKzQzNjc1IDk3YmMzNDhkYmM1ZGYyZDlkODYxOTBjYWEzNDE5NjYxMDllNGViYzIgbGVnYWN5LXRydW5rCis0MzY3OCA1ZWM4ODgzYTJlZjlhMTY0MmI2YzA3ZmNiZDc2OGY0MDdkNzE1NGY3IGxlZ2FjeS10cnVuaworNDM2NzkgZjY2MzVmMzA0Njk1ZTY2YmY1OTU5MzhkZjc3M2MyMDllZDljNGRiMCBsZWdhY3ktdHJ1bmsKKzQzNjgwIDQ4Y2RlMmY4ZDUwZTFmMTM5MzIxZDQ0Y2YzZmY3NzhiZmNhNDdmZjggcmVsZWFzZTI0LW1haW50Cis0MzY4MSAzNjliYjVmNjdlZjY4NTdkMzE1MGI0MGIzYjU3YWVhODNhMjIwOGI5IGxlZ2FjeS10cnVuaworNDM2ODIgOTYwYmY2YWE4NTRkZDY2NWNjZmFiOWRiMzg4YThiMTEwZTYwODZmMSBsZWdhY3ktdHJ1bmsKKzQzNjg0IGZjOGM5MGE0NGU2OGI3OTMyNzliM2Y1MGRmYzMzYjdkMWNjNmJkYzIgbGVnYWN5LXRydW5rCis0MzY4NSAxZGFmNGY3YjMwMjE2YTExZGJiMjFjMTY5Y2UyYTYxM2RkZmZkM2FlIHJlbGVhc2UyNC1tYWludAorNDM2ODYgNWIxMTlmMjU2Y2RlNWViMTFhNmRmMmEyMWJmNmEwZjViNGViZjU2NyBsZWdhY3ktdHJ1bmsKKzQzNjg3IGQ1Y2I3NzIzMjJiZjY3YzMzMzRjMzEwNThlMzhlMDUxM2Y5MTE1MTEgcmVsZWFzZTI0LW1haW50Cis0MzY4OCAzZjA5NWM1NWMyZDliMWQ0ZDdjMTdlMTdhZTQ5MTgzOGIwMTQwYTRiIGxlZ2FjeS10cnVuaworNDM2ODkgNDI4NDg3OWExOGVhZDg2M2VmZjRjZDcxMjg3MzAyNzM0ODVlM2E2NSByZWxlYXNlMjQtbWFpbnQKKzQzNjkwIGFkNGY3NTUwZDhhNDA2MjU4YWU4YzZiOWNkZDBiMTk1ODI4ZTY0MTIgbGVnYWN5LXRydW5rCis0MzY5MSBkMWRkYTExNDhmMTA5NjliOGUxMjVmMTQ3YTQwMDBmYTcyMjhmMzdlIGxlZ2FjeS10cnVuaworNDM2OTIgZDAzMjAxZjJmOWMyNGE1OTNiODk4ODY0ZjM4NjRjYzk5MmVkNzJkOSBsZWdhY3ktdHJ1bmsKKzQzNjkzIDJiMGE1ZWVjMDI4YjA3ZGZjZGFhMGI2YzA3ZTg3ZGMyMTQyNDgyY2QgbGVnYWN5LXRydW5rCis0MzY5NCBjMTZiNzUyZWU5M2JjMmFkYTYxZjUxZTMzNzIyOGViN2Y0ZWU2MTQzIGxlZ2FjeS10cnVuaworNDM2OTUgN2NkM2JmMjM5OWU2MjBhNjM0MmJmYmViYTkyMGVkNDBmZjkzZjBlOCBsZWdhY3ktdHJ1bmsKKzQzNjk2IGNlNGFmNTQxNmQ3NjVlYjVmYTg5N2RmZTE4YTVlNGMzY2Y4NWMwODggbGVnYWN5LXRydW5rCis0MzY5NyA3OWQzYzRhZDkzMTA5Yjc5OWE5YjlmZTEwZjAxZTFmZThhMmZkZmU3IGxlZ2FjeS10cnVuaworNDM2OTggZmY3MTg3ZGNhMmYxYWY0MTFhM2UzZTAzMzY5NDk1NzYyNTE1YzRmNyBsZWdhY3ktdHJ1bmsKKzQzNjk5IDIxMTQxMDM3YTEyMzNiZDk0ZWUyOGJkMDQwZDNmZmVjMzJjODcwYWQgbGVnYWN5LXRydW5rCis0MzcwMCA3YzQwNDhlYzBjNjg4YzVlNTZhNDQ5ZGEwNmU3NTQ3NDk3YzFhODUzIHJlbGVhc2UyNC1tYWludAorNDM3MDEgNTU1NmNlOTlmMjBjNDg0NmY3OGQ1NmFhNzM1NGFhNDc3MTk3ZWQ0NiBsZWdhY3ktdHJ1bmsKKzQzNzAyIDBhMDE0ODg0MDE3Y2RjYzYzZTFlNTMzYTA1MDQwYzM4MWFjNGY1NjggcmVsZWFzZTI0LW1haW50Cis0MzcwNCAwMTg0NWEyNDdjOGIxNTVlNmE2NjAzMDRmZWNkZWI5YzgyZmVhMjllIGxlZ2FjeS10cnVuaworNDM3MDUgOGM3ODI4OGQwZGJiYjE0YjgxZjEwODg0NGYzNmVmYjY4YzhlOTZjNiByZWxlYXNlMjQtbWFpbnQKKzQzNzA3IGI0M2RiODdhOTc1MjM5N2ViMTVmNWI4NTUwNTQ3MWE3MWFmZjhhMzkgbGVnYWN5LXRydW5rCis0MzcwOCAwYWUxZmFmNDExZmZmMjI0MTVhYzhlZTRkOTYxYjMzMmUxMmM1NjMxIGxlZ2FjeS10cnVuaworNDM3MDkgMGE0NWNiMzBiNjRlMGJlYzA5M2E2ZDc4OTFmOWY1OGFmZmMyM2Y5YiBsZWdhY3ktdHJ1bmsKKzQzNzE0IGE5ZGY5YjBiYTQxNjVlNGM4YTVlMGVmMTk1YjNjOWQxYjg1ZjBlYjYgbGVnYWN5LXRydW5rCis0MzcxNSAzYzdlYTUwNTE4YmUyMjE1Y2MzYjEyMTk2ZmJmOWQ4OGYxZDA3YjhkIGxlZ2FjeS10cnVuaworNDM3MTYgZDIyY2IxNGRhNjcxNDNlNzgwOGE4MjI2MTIzYjYwMDU4NWE1MWM4NyBsZWdhY3ktdHJ1bmsKKzQzNzE3IDE1ODNkM2ZkZGRjZDc2YTgwMjliOGVjM2M4ZGJiZDY2ZjlmODJiZDEgbGVnYWN5LXRydW5rCis0MzcxOCBhOTQ3MGViNjM3ZjE5NDg4MDc3MWM4MDE1NGMxM2VhY2M5ZDljY2E0IGxlZ2FjeS10cnVuaworNDM3MTkgODY5ZjNjOWQ3NDAxNDAwZWUxMGM0YTk1YmY1Y2JmM2Q0OGJhMGM5NSBsZWdhY3ktdHJ1bmsKKzQzNzIwIGY4YzRhYTU0MTNkYmEwZjZkOGMyMzdhYmI1MDE5ZDVhYWIwZDdhMDIgbGVnYWN5LXRydW5rCis0MzcyMSA5YmVkMzBkZjdhNGFlYTk0ODM2ZTk2ZWM1NWNkOTkzMDAyNDk5Y2YyIGxlZ2FjeS10cnVuaworNDM3MjIgNWJjMmI0ZTNmZmMxNjQ1ZjJiZTNjYTFkY2ZhZGNhYzY0YTkxYWRhYSBsZWdhY3ktdHJ1bmsKKzQzNzI5IDkwMDZmOTIyM2Q4MGI1YzQ2ZDZlNTRhY2U0NmYxNzEyY2M0YzI1MmYgbGVnYWN5LXRydW5rCis0MzczMCAxNDlmZTY4NGU0MDE2MDk2YmQ2YTUyZDFmNzdiZTgzYjVmZGMxZWVjIHJlbGVhc2UyNC1tYWludAorNDM3MzEgYjM2NjZjNWRkZDhhMGE4YmM4Y2IyZWU1OGIzZTQ0M2I2OGExNDZhMiBsZWdhY3ktdHJ1bmsKKzQzNzMyIDcwNzMxMjUyZGEzNDY5MzA2NTQ2M2NjNGMwZGY4N2FlMDYwOTdmODUgcmVsZWFzZTI0LW1haW50Cis0MzczNCBjMTdjNTIxOTMxNjllZTQ0Yzc1MjIxZjM5MmY3MDMwZTA0MzExMGE5IGxlZ2FjeS10cnVuaworNDM3MzUgYTdkNjg4ZWJlM2UxYTIwMzI4Zjk0NGVhODVlNmNlYWNjYTUyM2U2MCByZWxlYXNlMjQtbWFpbnQKKzQzNzM2IDQzMTYxM2JjOTM1ZTk1YTM2OGZlMTJlZTBlN2NiYTIzMjcyMWMwNTYgcmVsZWFzZTI0LW1haW50Cis0MzczNyA3MDkyNjYyNmM2YTBhMzQwMDBlNDRmMmFlNmNkYzMyOGZmNzllOWMxIHN0ZGxpYi1jbGVhbnVwCis0MzczOCBiYThmMjc2NGFhNGFjMDkwMDFmZTg5OTMxOGJmNDA0MTc2ZmI4NTY0IHN0ZGxpYi1jbGVhbnVwCis0MzczOSBhOGQ0OTI4MjkyZDhiMmIyMjhhYjBlNWEyYTk1OGIyYThkMjAwOGZiIGxlZ2FjeS10cnVuaworNDM3NDAgZWRjNmEwY2M4NDY2YmU2MWVmNGUxODgxMTE1ZTFkYTI4ZTA0MjkxOSBsZWdhY3ktdHJ1bmsKKzQzNzQxIDQ4MzExNDAxYTIwZWEzNjZhNWUxNWZiYTc1M2IwZDkwYWRhNzdlNzcgbGVnYWN5LXRydW5rCis0Mzc0MiBmMWM0NDA2YmY0ODFlYWQyMzQ1OWEyYTdlYjNhMjU4ZmFiMTZkMGIwIGxlZ2FjeS10cnVuaworNDM3NDMgYjA1MjhlOGM2Yjc4NDRkOTUzNjdlMjdiZDcxNjNlZjQyM2U5Yjk4OSBsZWdhY3ktdHJ1bmsKKzQzNzQ0IDAzNDJjNWYwZjRmZjY1YzM2ZjJmODVkYjBkZjY3MjU3MDkxYjM5NjUgbGVnYWN5LXRydW5rCis0Mzc0NiAwNDZlNmUzNDgzODE3Njk1NDI3YjI0ZDgzOTBkN2Y4MGI4NmY2ZDNjIGxlZ2FjeS10cnVuaworNDM3NDcgMmNkZjUyN2I1OGY2YTI5YWJiZjYxNjMyMTkzZGZmYzE0YmJjNDYxMCByZWxlYXNlMjQtbWFpbnQKKzQzNzQ4IDM5NTk4MTBiYzU0OTEzMjY5MmMzZjQzYTJkNGEzY2Q0N2MxM2YxYjYgbGVnYWN5LXRydW5rCis0NTIyMSAzNmJjYjgzZWNiYWQ1M2ViNjNlMjNkYTQzNDA0OTk0YzhmMDk2MDE0IGxlZ2FjeS10cnVuaworNDUyMjMgMjMxZTQyZDAzNjJlZDI2N2QzYjM1MzI1ODRhNmY3NDk1OTg5YWI0YSBsZWdhY3ktdHJ1bmsKKzQ1MjI0IDliZGE1YmE0MTY3N2NmNmIzMTQwM2Q1ZWI0Zjk1ODlkYjU4MGY4ZTggbGVnYWN5LXRydW5rCis0NTIyNSA2YWU0YWRlZmM1NzNiOGViMDZjOWRhYTU1OGU0OWVkODliNzZkODM0IGxlZ2FjeS10cnVuaworNDUyMjYgMjg2YzgxNjg5ODI2Y2FiYjE1NzcyZjJhMTkyMWE4NjUwODQ0MWE0NiBsZWdhY3ktdHJ1bmsKKzQ1MjI3IGE3OGJjMGJiMzQ1OTYyZTY5MDI5Y2UzYzA5OTA4ODhiMTRhZGNhNzkgbGVnYWN5LXRydW5rCis0NTIyOSBlYjBiOTkyN2ZmZmQwMjUyNzZhOTZkZGMyNDBhYWUyODQ4YThjNDhlIGxlZ2FjeS10cnVuaworNDUyMzIgYmQzNzU3Nzc5MzJkOTFhM2ZiMDA5NDkyYjIwOGZkZGFmOTdlYTcwOSBsZWdhY3ktdHJ1bmsKKzQ1MjMzIDBmMmU4NmQwOGQ4YWZmMjJmMDkyOWM3ZDk5MTdiNmQ5MGQyMTVlOWEgbGVnYWN5LXRydW5rCis0NTIzNCA0MjAyM2Y1YjdkNmQxZGQ3M2IxZTQ5MWU3Zjk3MzIxZDhhMjhkZmI3IGxlZ2FjeS10cnVuaworNDUyMzUgYzc4MmNmNmI1MTZlNDJlODc3MTRhOWQ3YzVmZjY1NDdiZjNhMDdkOCBsZWdhY3ktdHJ1bmsKKzQ1MjM2IDgwOTRjYzBjOThkN2E2NDJjYTM5YWE3MDlkMGNiODg0NTk3YTRkMzQgbGVnYWN5LXRydW5rCis0NTIzNyAzMzQyM2I4NDU1NTQwOTZiMjAyMWEzZTFmZjhhODRjMDhjNDAwZDdjIGxlZ2FjeS10cnVuaworNDUyMzggM2Q2MDE1MTM5MmMyMjU3ZDZiNmE1NzlkYTI5OWY3MDE2ZjNjZmZkYSBsZWdhY3ktdHJ1bmsKKzQ1MjM5IDIxM2M0MTk4ZmUyM2Q5YmQ1ODU4NWU2MWYzOGM0NzI3NzFhNjRjY2MgbGVnYWN5LXRydW5rCis0NTI0MCBiNzQ0MGFiNWNkNzA2ZjQ5MGZhYzg3MDQ3YjNmMjdiYjk5OWFhYTg2IGxlZ2FjeS10cnVuaworNDUyNDEgNWIzNTFkZDdkMDgxNWRlMGUyMThiNjdmOGU1ZDBjOWJlZmVmMzhlMCBsZWdhY3ktdHJ1bmsKKzQ1MjQyIDBiYzNmNzRhNGE0NzE4NDE5ZWIyY2U5NjBmYWQyZWU3Y2RiYjFhMjAgbGVnYWN5LXRydW5rCis0NTI0MyAyZTIzNGY0ZmQ3NjM5OTA3MzZkZTZkNDlkNDM2MjA5ODA3ZjRhNzZjIGxlZ2FjeS10cnVuaworNDUyNDUgZjZhMWY1NWQzZTVjZTZiYjkzZGM4OGU1ODhiMTdlODQzNjI2ZWNhNyBsZWdhY3ktdHJ1bmsKKzQ1MjQ2IGRkMDg1YzEzYzQ5YTc1ZTg0YmY3NTZhYmU0ZGIwZTZkYTJjNjYxNGUgbGVnYWN5LXRydW5rCis0NTI0NyBkYzlhMzZjOGI0NzMwYWJjOGY5MzVmZWRhNmE2MzEzNGI0ZDQxZDNjIGxlZ2FjeS10cnVuaworNDUyNDggZDExMzY2ZjdlMWU3YTU4NjkyMTI2MGEwYTVmY2FiOWQzOTFjNThjMCBsZWdhY3ktdHJ1bmsKKzQ1MjQ5IDdjYjZhMzA0NDYwZmMwMGFiMGI5NDhkNjk4NmUyYjdjNzVhN2I0NDggbGVnYWN5LXRydW5rCis0NTI1MCBlMjljZGY4Njc4ZmU5OGUyZGYwZGUxNzBlMzdiOWM1YmNjMjI5ODZmIGxlZ2FjeS10cnVuaworNDUyNTEgMDBiZjhmMDBlYzYzMjc1NzE4NmM1OTIwYWE1OTNkY2JlOGUxNTM2MiBsZWdhY3ktdHJ1bmsKKzQ1MjUyIDA3MjA1MDYxNWZjMGMxNjZjYjdkNTBkNzY0Y2U3OTNmZTdjNTZiYmMgbGVnYWN5LXRydW5rCis0NTI1MyBiMTEyZDhjNzk4OGMzMTdjMGRmYTliNjk2MjUwMGViMWJkYTM4MTg2IGxlZ2FjeS10cnVuaworNDUyNTQgMGFmN2YxODA4N2ExZmZmYWY0Mjc4YWMzNmI1MGNlMTE3NzM0MDI1NiBsZWdhY3ktdHJ1bmsKKzQ1MjU1IDFhM2U3OTlkMDYzNDFiNDEzOTUxMmEwMTA2OTVjNmFiMTMzNDcwYWEgbGVnYWN5LXRydW5rCis0NTI1NiAzYjRmZGM3NWJlMTJjZTcxYWE0ZTExOTViYzY4MDdjOWQ2NTI2ZmYxIGxlZ2FjeS10cnVuaworNDUyNTcgMjkyODU0YzQzYjk5YjlmMzU5MWFjZjNjZWYyZDdmYThhN2E2MGEyYSBsZWdhY3ktdHJ1bmsKKzQ1MjU4IDFjZWQ3OWYwODA1MDljNDQ0ZGQ1MTQxMTU0N2I3MTMxMzE4MDlhMjcgbGVnYWN5LXRydW5rCis0NTI1OSBhODQxNmFkMWE1YzU5YzM0MDc3M2U1YTc4NTM3ZjFiYjA2YzdkMGE4IGxlZ2FjeS10cnVuaworNDUyNjAgMTNkZDMwOTc0YWQ2OTEyZTlkMTg2OTAxOWJiZWQ3YzNkNjBiZjIyZCByZWxlYXNlMjQtbWFpbnQKKzQ1MjYxIGFlZWU4NWI2YTVkZDg4YWQxZWM4MTUyM2RmZWEyZGFhZGI5NGUxNjAgbGVnYWN5LXRydW5rCis0NTI2MiBmNzdkYmMwZjk4ZTM0MzUyMWZiZDg0NjMzZWQwZmRjN2Q3OGQ5NjYwIGxlZ2FjeS10cnVuaworNDUyNjMgYWRkZTlkZTEwMjg3YWQ0NWQ5NzJiNTg2Y2Q3YzY0M2M3ZTk2ZDVlYyByZWxlYXNlMjQtbWFpbnQKKzQ1MjY0IDkyNDUwNGIwMDE5NjQ5MDQxZmQ1M2VmMjc0MjljODBkN2Q5ZGUwZmUgbGVnYWN5LXRydW5rCis0NTI2NSBhZWQxYzNjMzViODM2M2U4MzU4N2U5MTAxMzJhMWMxZGYzMWE1Y2M2IGxlZ2FjeS10cnVuaworNDUyNjYgNmRkMGQ4YjRiYWM1NzRjZTRkMDY4NTI5ZGE5ZGIxNGE5MjJlMDc3OCBsZWdhY3ktdHJ1bmsKKzQ1MjY3IDA1OTFkMDMyMmYwNGMyNGRhNWZiOGI3MzE4YzI3ZWRjZGZiODE1YTAgbGVnYWN5LXRydW5rCis0NTI2OSAxYjA3ODQ5M2Q1MzgyYjgzZjUzMzM2N2ZjMmFjNWJlZDlhN2U0Y2Y3IGxlZ2FjeS10cnVuaworNDUyNzAgMmIyZTljMzg4ZmJiZTIyNTU2Yzk4ZWY5NzA3ZDAzMTZmYmU2OWE0MSBsZWdhY3ktdHJ1bmsKKzQ1MjcxIDU2ZTAwYzliNTAxMTczNDY0OTIwYjRjZjVlN2JmZjRjMWI2MjZmNjAgbGVnYWN5LXRydW5rCis0NTI3MiA0NGZiMDNhNmE1MjQ5NzA4N2UwZWQyYjY2Y2I4NzMwOTZjMDI2ZmI5IGxlZ2FjeS10cnVuaworNDUyNzMgYzRjNWVlYjA3NzM5YWI0MTA1NTM3NmVhZTU3ZTM3NDY3MWYzNDA1YSBsZWdhY3ktdHJ1bmsKKzQ1Mjc0IGY3NmI1ZDk4NzMxNGQ3NDQ3NTgwZjU1ZTdhZTllYWVhZTBlODU5NWIgbGVnYWN5LXRydW5rCis0NTI3NSBjYTk1YWQ1YjBmYmM2MWY5ZWQxMTVlZTYwMDg2ZGEyNzI3ZTdhMzg3IGxlZ2FjeS10cnVuaworNDUyNzYgMzhhY2I5MTgyNGZjYzU3MzU0ZjNjN2JmYjVkYzhmODVkMzY2M2YxNiBsZWdhY3ktdHJ1bmsKKzQ1Mjc3IGM3MzJmNjZjOTEzZmQzNjJiYWJhMWM1YjFhNGMwNWQ4MjY0MjgxMjYgbGVnYWN5LXRydW5rCis0NTI3OCBlMDcwYzMxNmViNDU1OWE4ZmU4OTkzNGUwM2M2Yjc1NjA2Yjc1ZDI0IGxlZ2FjeS10cnVuaworNDUyNzkgZjQ0OGQwMDc1NjkxZjk1MmQ3Y2Q0YmY4YjA5MGFjZmU0Y2MwOWRkMCBsZWdhY3ktdHJ1bmsKKzQ1MjgwIDQ4MGE1NjI1ZTI4NjkyMDE3NDQ3MDIxNDVkMjY1ZTQ5OTk4YjBhZjYgbGVnYWN5LXRydW5rCis0NTI4MSBiNzRkM2FkYmY4ODg1ZWZiZGEyNGZlOTI4ZDMxYzE2Y2Q5OTdlYmI5IGxlZ2FjeS10cnVuaworNDUyODIgZTYwYjMxNjQ3YTZiMzFkMDdhMTc1MTU5NjU3OWUzYWRmNmQ4NTY0MiBsZWdhY3ktdHJ1bmsKKzQ1MjgzIDdlZDBmMDAzYmE2MzEzNmExNTg4MjAzMTg3YmQ2MWUzMWU4Y2NiMDQgbGVnYWN5LXRydW5rCis0NTI4NCA3YWZhYTc1MmM3NzIwOGUzM2Y3ZDBkNWY3NjU5NjBhNmE4ODM4YzhkIGxlZ2FjeS10cnVuaworNDUyODUgY2QxOTVlMDczZGQ0NjVkMGY1YTAwZmJlMmI4ODYxMDY0NmVlNDVlYyBsZWdhY3ktdHJ1bmsKKzQ1Mjg2IDBjYTUxMTJlM2UxMjlhM2QwODQ1MDhkMGU1N2E3N2U0ZGM0MmNkMGYgbGVnYWN5LXRydW5rCis0NTI4NyA3MmNlYjFiMzBkNGJiYzIyYWVlZGM1NTcwMjM3NDM3M2YxNzRiODg5IGxlZ2FjeS10cnVuaworNDUyODggMTlkOTliMzE1NTVjZWJjZjBlOGNmNDYwZWEzZjY3ZDg4YTQ1NTVjMCBsZWdhY3ktdHJ1bmsKKzQ1Mjg5IDFlOWQ3ZTY2YzFiY2ZhNmJhY2NmZGYyNTg1MTA0ODFhZDBjYjBlZDcgbGVnYWN5LXRydW5rCis0NTI5MCA4OTY4YjEyNDJmMTg5OTRiMzlkMzExNGE1YmY1MWI2NWFiMTljOWNiIGxlZ2FjeS10cnVuaworNDUyOTEgNmZiYzExYTAzYmNjMmEzYjY4NDk3ZmM1MDIyOThkN2ZlZWExMWI1ZSBsZWdhY3ktdHJ1bmsKKzQ1MjkyIGYxOWFkZGQ2OWFkOTM5ZjIwYTQ1MzQyYjdkY2I3ZWZiYzI4OTUwNDEgbGVnYWN5LXRydW5rCis0NTI5MyBiNDNhOTcwMjY0NzkwM2Y1MjQ1OTJkODNkZjlhZTRmNTFkMjg4MDhkIGxlZ2FjeS10cnVuaworNDUyOTQgMTU3MTc5ZDJhNGMzNTIyZTJmNDc3NzYxYTU5YWEzODA0NzAxNmJmMSBsZWdhY3ktdHJ1bmsKKzQ1Mjk2IDhhMTg4MDM2YjcxM2I0YWNmODAxYTllODZkN2MxNDIzZTY4ZDRmN2MgbGVnYWN5LXRydW5rCis0NTI5NyAyZmQ2YWQ1ODIyMDMyZmJhOGFlNmQ1MmQwMDhhYTU3OTM5OTlhMzFiIGxlZ2FjeS10cnVuaworNDUyOTggZTgwOGUyYWY5MWY2MzQ5YmQzZGZjZjFiYjcwNmFjNDc1M2UxZWEyMyBsZWdhY3ktdHJ1bmsKKzQ1Mjk5IGM4YTA5ZmQ0ZjEwZGE3ZWUxMDNiZDE5YjNiYmZmYjE5Njk2N2Q5ZjkgbGVnYWN5LXRydW5rCis0NTMwMCBjMjZmNWUyMDZkZTc5ZDU0ODljNDUxOGQ0ZGRkZmIwOTZhZmI5NjBiIGxlZ2FjeS10cnVuaworNDUzMDEgYTUzOTJiYjA3NDQwMjljZjE1YjE3MTc0NmUzMTczMjFkZTdiMzExYSByZWxlYXNlMjQtbWFpbnQKKzQ1MzAyIDBkZDMyYTZiMjk2NGUyMzQyMTA4MWMzNzk2ZTIzZTVmZGI0NmUyZWMgbGVnYWN5LXRydW5rCis0NTMwMyAyODkxMTZhNTJiYjFlOGU2N2ExZDcyMjUzNDE4MWVjNGUxMmI1ZjFlIGxlZ2FjeS10cnVuaworNDUzMDQgMWUxMmVjNDlkZjliNGRiOTg0MzA0NDg0ODdjMGQyYjUxZDcwNjY1OSByZWxlYXNlMjQtbWFpbnQKKzQ1MzA1IDM5OWE5YTcyMDk1ZjkzMGEyMzIzYTY2ODNlNzdhZjhlMzlmZWRiMWYgbGVnYWN5LXRydW5rCis0NTMwNiAxN2Y4YWRjYzczZWQ4NmI4ZjU4YzJkN2RiYTYzMDMwODVjYTJkNTlhIGxlZ2FjeS10cnVuaworNDUzMDcgYWYwNTZiNjNjZTUzNjA0MzBjMTAxZjgxZjU4N2U1YzA2NjE3ZmIwNSBsZWdhY3ktdHJ1bmsKKzQ1MzA4IDg4MzFmZDgyMmI2MDVkZGFiZWI4Yzg0NDNiMDQyMWZiM2JlODI3MTAgbGVnYWN5LXRydW5rCis0NTMwOSA3NjljNjI2MTM1NWU5MzlhMmJlMDZjMzBhMjk2N2I2NGE1NDYwNDUxIGxlZ2FjeS10cnVuaworNDUzMTAgMmU4YWI3OTdjZWFmOWQ3NDhkODVjZWQyYWE1ZGNiN2Q0NjRhNDRiYyBsZWdhY3ktdHJ1bmsKKzQ1MzExIDlhNmEwMzc1ZWYyMjk1ZWFmOTFkMjAzNDZhYWMyMjhhZDI3NTdlZGMgcmVsZWFzZTI0LW1haW50Cis0NTMxMiA2NWVjYjgzZWE3ZGRmZDIzMmVlODBlMWI0OTQ0OWMzZWM0YTc1NWNhIGxlZ2FjeS10cnVuaworNDUzMTMgYmM0ZmJiYjJkYjMwMDlmMGFiN2MwZmEwODlmNjcwOWQ1MjUwZGFiYiByZWxlYXNlMjQtbWFpbnQKKzQ1MzE0IGZlZDI5N2MyMDYyZDkyOGEwMDQ2NTA5OWI3MWRlNTYzM2I5MTIzNmMgbGVnYWN5LXRydW5rCis0NTMxNSAzNmUxNzYyZWFkODZiODBiMGFjZjk2ZDdiMjg1NjQyMjI2OTg4ZGI4IGxlZ2FjeS10cnVuaworNDUzMTYgMjJmMmM5MmExZGE3Zjk2NWZhZmNjZWY2NjJjYjY2NmIwZTljZGNhOCBsZWdhY3ktdHJ1bmsKKzQ1MzE3IGFkNDg2ZTQ4NzVjNmUxODNiNTBmMzFkNzc0YmQxODZmMTRmM2U2ZjYgbGVnYWN5LXRydW5rCis0NTMxOCBjNmUxMWY4MDRkMDBmNzYzZjQwMTVmODgyYTM1ZTM1OWFjYzc1OTNiIGxlZ2FjeS10cnVuaworNDUzMTkgMmMwNjU4OGFlNjllNjI4MmVmZmRlNWM2NjMwZWE2OTllNGY2Y2M2ZiBsZWdhY3ktdHJ1bmsKKzQ1MzIwIDQyMmNkZDI0YWY0NmM0NzRlNDM5NzRlMjY3NzY0MTQzZDEyOTYyOGMgcmVsZWFzZTI0LW1haW50Cis0NTMyMSAxMGU0N2YyN2VhMzlmYTA3Njg2YjBkNjBiNjVhMDljZDE4NDI3N2VjIGxlZ2FjeS10cnVuaworNDUzMjIgNDU1MWRhODQ3NjUxYWNjMjYxYTMzYmYyY2ZlZTdlYTU4MTAwNGEwMCByZWxlYXNlMjQtbWFpbnQKKzQ1MzI0IDIxZmNjODZlNDgyMDgyYmVjNmJkOGQzZDE5ZDUzMTVjMDI1NDA2MjggbGVnYWN5LXRydW5rCis0NTMyNSA4Yzk5OGM3NjAxOTEwZWQ0ZWNhNTNlOGEwMzIwZWJiOGEwYThkMWM2IGxlZ2FjeS10cnVuaworNDUzMjYgNzRkMDQ4MzhjZDExMjc0ZmE2MTUzODAyMDhiYzM2YmE3Yzg4N2QwYSByZWxlYXNlMjQtbWFpbnQKKzQ1MzI3IGI1Zjg5OWMxODdkNGM1Y2U3YTE3ZGExNjlkOWE1YjMwNTU5OTQ3ZjYgbGVnYWN5LXRydW5rCis0NTMyOCAxMjU2NzE4OWVmMjU3MWZkZmE5NjJkZjM4NWIyYTI3MTQ2YTE2ZjkyIGxlZ2FjeS10cnVuaworNDUzMjkgZGVjMjU5ZTRkODkxNmM2NWQwMDA1YWUyNDBmMDM3OGNhYzViN2UyOCBsZWdhY3ktdHJ1bmsKKzQ1MzMwIDJmM2YyZTMyZGZkOWQ3NmU3MTk4NjNlZTE1YmViMDExOTkxYWJjZDYgbGVnYWN5LXRydW5rCis0NTMzMSA3ZGYwYzQ0ZjM5ODYyMzY5OGRjZjMwZmI4ZTczNzA0MWM3OWU4NjFkIGxlZ2FjeS10cnVuaworNDUzMzIgYjYzMTlhNjk5ZGFiYTFkNTllZTk2MDJiOTQ5MDBhMzI0MDhkNTA1NyBsZWdhY3ktdHJ1bmsKKzQ1MzMzIDJjMDg0ZDgxYzk1MTQwMWRkMDllMDNlYWQ4MjFmMmY1YmYyZGZjMzkgbGVnYWN5LXRydW5rCis0NTMzNCAwNTRhY2VkZjNjMGQ5MGMxNDQxOWI5ZGUwMTQ4MGExOGQ0NGJiOTJiIGxlZ2FjeS10cnVuaworNDUzMzUgZjQ1YmMyNDFlMjAwMGIyZWEyYzdlMzYxNjFjYTIxNTRlZTcxNWVkOSBsZWdhY3ktdHJ1bmsKKzQ1MzM2IGIxYzZhMzg2NGIxZThjMTY5MDhlYTczMGM5ZGZhY2QwMzIyZTc0OGQgbGVnYWN5LXRydW5rCis0NTMzNyAwNjc4Y2U5ZmI2YjJiMTExMGZiNmI2NjkzZTIzOTZhYjE1YzY1ZjBlIGxlZ2FjeS10cnVuaworNDUzMzggYTg0MGU5YmFmZjk2Y2M5NzI1NmRhYzJlNWY0ZDAxZDI2NjFmZjY4MSBsZWdhY3ktdHJ1bmsKKzQ1MzM5IGQxM2RlZDkxNjVlYzQ0MTQxZjA4MGExNjkxOTU0MDA2YjJlM2I0ZmEgbGVnYWN5LXRydW5rCis0NTM0MCA2NjY3NmE4ZWNiNTJjZTRjMDMyMGQwNWNlNDg2ODZiZjMyYWRkZmMyIHJlbGVhc2UyNC1tYWludAorNDUzNDEgNWE5ZmNkNjc2YjNmZTllZDEwODcxZGNlYmUxZjIzM2ZlOTE3YjFkMCBsZWdhY3ktdHJ1bmsKKzQ1MzQyIGIxNzI0ZTkyNmUwN2M0Njk1ZjRkMGU1NWI0ZDk4OGY0Y2MwMDQ2YmEgbGVnYWN5LXRydW5rCis0NTM0MyA0MzQyZTQ0MWIxMWNjYjU1MDI4YTViM2NmMjAwMDczYzJmM2ViNjM3IGxlZ2FjeS10cnVuaworNDUzNDQgYjkzYzA1OTYwYTE1ZmFiNmM3Zjg2YWNmZmZlZjI0NTgyYzM1YjM0OCBsZWdhY3ktdHJ1bmsKKzQ1MzQ1IDM2YmZlNDZjNWM2YTYzY2JhOTFmNjMzZDkwYzFkMzNkYjBjNzg4YzMgbGVnYWN5LXRydW5rCis0NTM0NiAzZjk3MzlkZTY2MDMzMzUzYzM4NDVjMjc4MWIxM2I4NGFmNDE4MTI2IGxlZ2FjeS10cnVuaworNDUzNDcgMGEyOGYxNTc4NzVlMmMxMTQ0Zjg5MjE2YjYxM2MzNGNlOTUyOTBmMiBsZWdhY3ktdHJ1bmsKKzQ1MzQ4IDYwNjgxOGMzM2U1MGZlNjcyMzA4MzBkZDc1NWI0ODRkZWZmZmY4MDIgbGVnYWN5LXRydW5rCis0NTM0OSBhNDIzMWFhMzIwMWFlMWEzOTRlZTY0M2M1YTQ3YzdjMTk0ZjY4NGNhIGxlZ2FjeS10cnVuaworNDUzNTAgODZkYjZkZjI0MTc0NDhkYWFjMGE0MmZiNWQ4Yjg2ZWEwMDA5OWIzZiBsZWdhY3ktdHJ1bmsKKzQ1MzUxIDNhMzllZDU5N2I2OGFhZjc2MDMwMDhiM2Q0ODYyYmU4OTNhYWZiMWMgbGVnYWN5LXRydW5rCis0NTM1MiBlNzk1ZDZjODZhNWVkZTk4NDFhMGFhYTRjZjk3M2FjYzFlODc5ZTRiIGxlZ2FjeS10cnVuaworNDUzNTMgMzBkNmI5ZWFmMDJkYjhlMjlmM2ZhZjYzZWE5YjI5Y2RjMjM1ZWFjMSBsZWdhY3ktdHJ1bmsKKzQ1MzU0IDU4NjQwOTgzZmQ2NmM2OWU3OWJlOTMxMzcyNWU1N2U5NzU2NzVlZDUgbGVnYWN5LXRydW5rCis0NTM1NSBmZTg4ZTAxZmY2ZGU4YjQ5MjdiZDg3MmU5OTFlZWRkZjJhOWMxZGQwIGxlZ2FjeS10cnVuaworNDUzNTYgMjNlZGYyOTBiNjc2ZjIwYjhkNTUwMDc4OGViOWFkMmE5NzcwN2RkNiBsZWdhY3ktdHJ1bmsKKzQ1MzU3IDVhNGI5NjQxMjMyZjg1ZmZjNTA4OTliMTcwOTRhM2U3MzY2NmI2N2UgcmVsZWFzZTI0LW1haW50Cis0NTM1OCA0MTMzZTg0MWYwY2I5MWRkMTg1MjRmNGVmN2ExYTVlMzlhZjg5MGViIGxlZ2FjeS10cnVuaworNDUzNTkgMzk5YjExOWMwNThhMWI5NmNlNDI2YmViNDllYWIwNDE2MjM0Y2JiOSBsZWdhY3ktdHJ1bmsKKzQ1MzYwIDVlNzJiMGM3NDEwMGQ3NTBkM2E5ZGU5ZjA1ODk1MTcwZDUzYWIyNDQgbGVnYWN5LXRydW5rCis0NTM2MSA5NTNlYjNkYzE4ZTU0MzFmMTA0NjU3MjM5ZWI5OTczYTc1MzZmNTY5IGxlZ2FjeS10cnVuaworNDUzNjIgOTk3NTEyODllYTAzYmFkMzVmNTk5ZTgxNWVhYmEwNjg3ODU4NzFhNyBsZWdhY3ktdHJ1bmsKKzQ1MzYzIGIzNTBlOWQ3OTFlNmUyZWY3MzBlZjI3N2VlNDcyOTkzNjRiNzVkZTkgbGVnYWN5LXRydW5rCis0NTM2NCAxYjViMTZjZGJlMGUxYTBiY2JiMzc0MjZkNjJmY2M1MzQ5Y2Q2MzYzIGxlZ2FjeS10cnVuaworNDUzNjcgNzUxZjdjNzliNWZkMTQ1OTQyNThjNWMwMTNkNjYzYmU1NTU5NjE2ZSBsZWdhY3ktdHJ1bmsKKzQ1MzY4IGVhYzgzZmVlYjExZjZjOGNiNDIyODBhZTk4MDViZWMyODE3YjBiMWIgbGVnYWN5LXRydW5rCis0NTM2OSA0ZDdiMjIzN2ZhMDdmMzcxZjg5ZmU5NTkwNzVmNjBmNjNlYjFmOTk0IHJlbGVhc2UyNC1tYWludAorNDUzNzAgMzA4ZTJlOGVkNjc2NjFhMjJjODliOWExNDU5ZTJjMjk5YzM2ZWNhYiBsZWdhY3ktdHJ1bmsKKzQ1MzcxIDkxYWVjNDc0NjIxODVkZTQzNzQyOGEzMmUzNGNiYzkxODA0ZTkwZTcgbGVnYWN5LXRydW5rCis0NTM3MiBhYzc5ZTkwMzdlMDZjZjM2ZDJmOTNkYmI2OTQzNzBkZTFhZTUxNGFjIGxlZ2FjeS10cnVuaworNDUzNzMgNzIwNDc0OGMyOTIxNWQ4Y2Y0ZDY1YmJkNjc4NTM4MWU3NTViMmRhNSBsZWdhY3ktdHJ1bmsKKzQ1Mzc0IDdlZTQwNjhlMmM2MmEyNTBlMmE5ZWVjMmJmOThiYjA5MjNkZDZkMGEgbGVnYWN5LXRydW5rCis0NTM3NSAyNTRjY2NiN2VmMTc2OTlkOWM4MzE2MDBiY2E4N2U5YzdjZGJhNDkxIGxlZ2FjeS10cnVuaworNDUzNzYgZTA1N2FmMmRmZmNlYzMxOGUwN2UxYzAxMTM3MDk2MWJmNjMwZjcyOCBsZWdhY3ktdHJ1bmsKKzQ1Mzc3IGZiY2RmN2MwY2M3NGQzMTM1Y2JlM2U0ODVkMjhjZGU3NzE1NGE2YzQgbGVnYWN5LXRydW5rCis0NTM3OCAwYTBkODlkNzEwYTRkZjE1YmU2MmM1ZmRlZDExODllMDUwMWFhMTMzIGxlZ2FjeS10cnVuaworNDUzNzkgOWIyMmQ4YjdiY2FhYzQzMzU2MTgwZTYwZjZkOTc1MmEyNmY0OTk4YyBsZWdhY3ktdHJ1bmsKKzQ1MzgwIGVlNTczNDk3NDRmMzcxMWFiM2RlMGUwYzZmYWVjMmQ4OTYzOWM5MmMgbGVnYWN5LXRydW5rCis0NTM4MSBiYjNmOTA3NmQwNzljNWY0NDNlZWMxZDU3MmMwODYyOWU2Y2NmMTE1IHAzeWsKKzQ1MzgyIDkxNTBlMjYwYzQxNzRhNzU5OTQwODNhZDVlNWFmYTQ2ZWQ1ODY3NGYgbGVnYWN5LXRydW5rCis0NTM4NCBkNzFmMjZlNjQ0ODllYjFmN2VkMzk0ZmE4N2FmYzVhZGUwMjM1NjBlIGxlZ2FjeS10cnVuaworNDUzODUgNzg2ZDAzNTZkZTUxM2EyZmIzNGYxZTAyNDg5NzBhZWRmYTcxMDU3YSBsZWdhY3ktdHJ1bmsKKzQ1Mzg2IDIzMGZmZjZlMDYxOGQyNDFiMWVjMjc2YjY4ZWU3ZjcyMzBiOGVhMGYgbGVnYWN5LXRydW5rCis0NTM4NyAzN2E4ZWI3NGM1MDQ2NTEzNmM1NTQ2YTk5YWRmYzZmOTNkOGU3YTgxIGxlZ2FjeS10cnVuaworNDUzODggY2NiM2FmNDliY2IzMDFjNzI1ZmE4NTkxYTM1MWIyNjE5ZWRkMmViYyBsZWdhY3ktdHJ1bmsKKzQ1Mzg5IDIzM2IxMGVjZmNlZjY2MmVlYjlmMWNhOTRhNTJiYzIyNjdlNTcxZDQgbGVnYWN5LXRydW5rCis0NTM5MCA5YmVmMWRlYmNiYWE3Zjc3Njk1MzI0YTI5MTVlMjIyYmIzYTk5YzY5IGxlZ2FjeS10cnVuaworNDUzOTEgOTFkMTZhODdjYmU4ZWE3NmU3MjgyNWI5N2YwM2RiOGYzZGNhYzEzZiBsZWdhY3ktdHJ1bmsKKzQ1MzkyIGVjOTg2YWFiZTFmZGVmMjcxMDNhZmE1MTc4M2E5ZDllZmI3NmExMTAgbGVnYWN5LXRydW5rCis0NTM5MyBhZmU1NmI5YjY2NGIyNDE3NzZjNTQ1MzhlYmFlMmY4ZDFjMDUwOTA3IGxlZ2FjeS10cnVuaworNDUzOTQgMWQ1YTRjODIwNjFlNjhkYTNjZDFkOGQ4MjkxMzkyYTg4NzI5NTdiMCBsZWdhY3ktdHJ1bmsKKzQ1Mzk1IGQ3ZGMwMDg1ZGQ4NWM4YzQ2NDUwMDczM2FiM2M5ODBmOTIyYTBlNDggbGVnYWN5LXRydW5rCis0NTM5NiBhZjQ3ZGE1ZTljZTE0ZGI0YWNlMjIwYWI5ZmRhMDhlMDQ4YWUzMDk4IGxlZ2FjeS10cnVuaworNDU0MDEgY2Y3MWMzODE0YjBiMzE3N2M5YzAyOTA5NDFhYzJiOWJiZWEwMDY0YSBsZWdhY3ktdHJ1bmsKKzQ1NDAyIDEzNjZiZmEwODRlZTcxNzFhNGYwMjc4MWJiZTk3OWJhODlkZGU1YzUgbGVnYWN5LXRydW5rCis0NTQwNiA4NTZiZWUxNTAwYmJjZGVhYzAxNjZhNjMwOWUzN2YzODE3YWYwN2Y2IGxlZ2FjeS10cnVuaworNDU0MDcgNjQ0MWY2ZmE2NTcxYTdkMmJhMjY1MGYzZjM0ZTZlOTEzODBlYzM2MyBsZWdhY3ktdHJ1bmsKKzQ1NDA4IGI5NDBhYzRmOTU1ODZhYmMwYTc4NGFhMzVhNDJjOWVlYWUyZDZlOWYgbGVnYWN5LXRydW5rCis0NTQwOSAzMTkyOWRhMGIwNWFmYTEyOTU0NjE3ZTQxMGUzODVlNjZiZjQ4ZTUzIGxlZ2FjeS10cnVuaworNDU0MTAgNmU5YWI4N2M2MDhjZDkwNTUzN2E5ZmNiMDdkZDUyMTk2OTY2MDI2NiBsZWdhY3ktdHJ1bmsKKzQ1NDExIDI3YTYzOWM0NDcxYTRlMDA3M2I2MDlkMGY2ZmU5MWVlNjVjMzMxMzYgbGVnYWN5LXRydW5rCis0NTQxMiA2MmM5MDM4YTU3OGE4YTkyMjdlNzJjMGJlMTEyYzc5YTQyMWM0MmYzIGxlZ2FjeS10cnVuaworNDU0MTMgNTg4Zjk3YjI0YmY5ZTFmZjY1NjcwNGFkNDM5ZDI1MjNmZjY1ZDM5MCBsZWdhY3ktdHJ1bmsKKzQ1NDE0IGM2ZGY1ZTc5NTQyMzAzOWMzODQ4ZWFiYzU3OTExMjY2MTViMGNiYTAgbGVnYWN5LXRydW5rCis0NTQxNyA1MzA0MDU5ZTdkZTNiMWIzM2IyNDAyZmQ5MDkxMjJkZDljZGE4ZGYzIGxlZ2FjeS10cnVuaworNDU0MTggOWIxNmU4MTYxZGY3NzdkMTAxODZlYjk4NjM1ODg1Y2JhMmMyMDA1MiByZWxlYXNlMjQtbWFpbnQKKzQ1NDE5IGJmYzQ4YWQ4MWU4MDRjYjI1ZDY1OTMyOTQ2NzIwZjU4ODVjNzJkODYgbGVnYWN5LXRydW5rCis0NTQyMCA5ZjgyMTAzMjU0ZmE0ZWJlYzUxNzhjNDBhYmVhMDM2MGExMzM1MzI2IHJlbGVhc2UyNC1tYWludAorNDU0MjEgNGM2ZDQ2OThhMTE1ZGM3Nzc0NTAyZWYxYTUyNzI1OTRkODAyYmJmYSBsZWdhY3ktdHJ1bmsKKzQ1NDIyIDA1YWYzOWE5MDc1NDM1ZGZiMWZiYTQ2NmE5MDljMGYzYzkzMGQ1MGYgcDN5aworNDU0MjMgYjAyNzBjNjgwNDJlZDQ3ODRhY2VjN2FlMDFmMTA4NjY3Yjg0OTE2YSBwM3lrCis0NTQyNCAwYTEzYTk2NTg1YzNkMzY3NjI5MDYyZGViZWRhMjBjNzIyNGY3ODc3IHAzeWsKKzQ1NDI1IDRjYzM0YWYwMTlkMmMyNjNiNzYwZmExZTg3OTU2MmI2ZjQ3NTE1MTMgcDN5aworNDU0MjYgZmIyYWZmMTg2MmU0NmYxOGQyY2NiYjAyYWRlNTU1NTZiYzg1ZTZjZiBwM3lrCis0NTQyNyA4ZGFhZTdiYTA3OGE1NTQ1M2FiYzQ4MDg1MTFiODU4MzUzMzUxM2IxIHAzeWsKKzQ1NDI4IGE2N2YyMTU4ZDYxYjFhZWFmZjliYzM3OGE1N2E3NTllZTM2NjIyYjcgcDN5aworNDU0MjkgYzQ3Y2NjY2EwYmY0Mzg2Zjg1ZTA2ZDg1NDUwMDRjMzliZmU0YWVlZiBwM3lrCis0NTQzMCA3Y2FlNjIyZWRjYzk3OGQ0MWQzMThjM2I5NzMyYmE2MGNkMDgyOWQ0IHAzeWsKKzQ1NDMxIGE1Yzk3N2U2ZjVkYTE0OGJlNzgzNmM5ZDhmNWQ1YzAwYmRiZDg0MWMgcDN5aworNDU0MzIgMzUzZmUwNmRhYjViMzcyNWM3YTUwNGZjNWVjYTNjYmRkNzZjNDI0YyBsZWdhY3ktdHJ1bmsKKzQ1NDMzIDYzNmNhODBhOGNiZWRjNzA1YmU2YzQ3ZmQwMTU4ZDE4OTNmZTI5ZWQgbGVnYWN5LXRydW5rCis0NTQzNCBhNTkwMmUwZWMwN2M4YmE4NjllOWI3NzVjNzk0YzUxMGQ1ODE4MTI5IGxlZ2FjeS10cnVuaworNDU0MzUgZDE1NDc0MjZhYjYxMDZlY2FkMmQzYmIwZWYzNjBmNDdmNmM3NDRhOSBsZWdhY3ktdHJ1bmsKKzQ1NDM2IDI0MDA5ODkzNWNkNWViZDE4ZGRhMzBkMWZmNDlkOGUyYjhkMWVlYzcgbGVnYWN5LXRydW5rCis0NTQzNyA2MzE0NWMwNmRlZWViNDgzZjM0YmY5MjgxYzA5YzRhMWQ2YTZkMGVhIGxlZ2FjeS10cnVuaworNDU0MzggMWQwMjM3NGY0YzdlMWE1YTQ2MjIxYzA2ZDFlODY3NTFkOTlmNzQ4MCBsZWdhY3ktdHJ1bmsKKzQ1NDM5IDdmNzI3OTFmMGFlYzMyZjY5MDQ3ODdhNzJiOTczYTc3OWI3ZDY2MjcgbGVnYWN5LXRydW5rCis0NTQ0MCBhYmY4MjQ2MWU2YjRkZjUxZjUxMTdmMTI1MzYzMTg1MmYxNmM4NWEzIGxlZ2FjeS10cnVuaworNDU0NDEgOWUzODJmMmY0MzlkOTc3NTIzMDY2ZTZmNWFkN2E4MTBiN2ZjZDExYyBsZWdhY3ktdHJ1bmsKKzQ1NDQyIGI3MzczYmMzYjA5ZjMzOTJiYmEzMjYyZDEyY2VmNzBhNWU3MTQ0NDYgbGVnYWN5LXRydW5rCis0NTQ0MyA3YjJlNDM2YTRhMjExYzJlNTdiZjRhODRiZTIxZjFhNWNhY2FjOWI5IGxlZ2FjeS10cnVuaworNDU0NDQgZTEzODhhYmE5ODk2MjNjYTAxNmM2NzlmNGI0YzZhNmM3NWYzNGY2ZCBsZWdhY3ktdHJ1bmsKKzQ1NDQ1IDliNzhkYzA3YjE3MGNjNjY1MDU5NDk2MDE0ZGYxMDM2MDIzMTRkZjcgbGVnYWN5LXRydW5rCis0NTQ0NiAzNTNiNTk2NTFlNDUwZTE0MjYyNDA5NDE0MGU0YTQ0MzMyZjQyNDJmIGxlZ2FjeS10cnVuaworNDU0NDcgOWViNGRjMWNjODNlN2E2MzEyNGFiOGNjODJjOGZjYjAzOTM3MjNlNiBsZWdhY3ktdHJ1bmsKKzQ1NDQ4IDgzM2YzODRlYmQ0MWI2MzAyZjJiNzFkZDM3NmQ2MjgwZjg2NGM1OTEgbGVnYWN5LXRydW5rCis0NTQ0OSBhMzljYzg0ZmYxODU2YzdhY2M1YmM3ODFjNjc4NjJiNzBjNzAzZmZkIGxlZ2FjeS10cnVuaworNDU0NTAgYjdhMzk3MmU5OTE1NzI3ZTk3M2E4NDY4NGYyMGNjYWQ1ZTRkYTM5NSBsZWdhY3ktdHJ1bmsKKzQ1NDUxIDk2YWRkYWEyNTg2OTcwYjA4MDk4ZjhkZWE1ZDIyNzNlMDc2NWYwN2QgbGVnYWN5LXRydW5rCis0NTQ1MiAwYTU0YzE1YWExNDNjNGQ2MDAyMDgxMzZkMDFlNzc2Yjk4NjdhNjU4IGxlZ2FjeS10cnVuaworNDU0NTMgZjFjOTg1M2RmMGY3ZDRhZTZhNGRiNDk3YzJlYmFhZjdiYmQwMGY2YSBsZWdhY3ktdHJ1bmsKKzQ1NDU0IDdjYzMxNTE2ZjgyNThmZjE2Mjg4MDEwN2RkYmQzYWM2ZWE3NDcxZjkgbGVnYWN5LXRydW5rCis0NTQ1NSAzOGQxN2Q1MWVhOTVkNDQ4NzUwNDFiODljMDUwMTY3ZjJjNzUxNjBiIGxlZ2FjeS10cnVuaworNDU0NTYgMDFlNTFmNWRiODgxYjg1YmExZTdhYzlkZDEzNjU5MTM4NDU5ZWFjNCBsZWdhY3ktdHJ1bmsKKzQ1NDU3IDMxZGNjMzExMTEzM2JlNzAxOGRjMDRmMmQyMWY3YThhYjYxYmNjZDcgbGVnYWN5LXRydW5rCis0NTQ1OCAwODRkMTg4ZTdkYmVmN2FlZDY5OWFiMjdiMGM3MDhmYjY5Nzk2NWJlIGxlZ2FjeS10cnVuaworNDU0NTkgYjkwYTdjNjAyMWJjYzQyMzgyZGE2ODhmNGY1YWQwYjQ0MjY4MzE0NyBsZWdhY3ktdHJ1bmsKKzQ1NDYwIDYwNGM5YmNiMzA2YzZkMjZiZDMxYjIyYjk2Njc5ZjIwOGFjZDBiMmIgbGVnYWN5LXRydW5rCis0NTQ2MSA1YmI2ZTU0Zjk0MDhmNjE3NmM5MDU5ZDdmM2I5ZDZlZGI2OWQyNTFjIGxlZ2FjeS10cnVuaworNDU0NjIgZDhiMjNiYTRhMjc0ZWNmNGVkNzZkZGM1OGVmMDAzOTE0MmYyYmE3OCBsZWdhY3ktdHJ1bmsKKzQ1NDY1IGIwMDQ0YmI0ZGYyYWVkY2ZiZjMxMWRmNTk5MWQ5Y2RiNWQ1MmJhYjcgbGVnYWN5LXRydW5rCis0NTQ2NiBkNGFlNWEyNjE1Nzg4MmUxZDEwZjc5YTQyNjZkOWY1ZjkxOWIwNWQ4IHJlbGVhc2UyNC1tYWludAorNDU0NjcgYmUyMzhjYjI2ZDMyNWUzNTgzMmQ3ZTllMWFlNTBkY2MxODUzYTQ3MiBsZWdhY3ktdHJ1bmsKKzQ1NDY4IDdiYmI5YjVmN2FkY2ZkOGUxOTk0NDY1NTQxYjc4NDc4ZjhlNjJjMzkgbGVnYWN5LXRydW5rCis0NTQ2OSBiOTViNWMzM2NiM2E1MzMxYmVhN2M1YWM1ZjdlMzE5MzAwYTVkYWMzIGxlZ2FjeS10cnVuaworNDU0NzAgMzAwYmYxYzRkZWVkZTdjMWQzZWFmN2M3NWZlOTJmMzU4OGRhZjYxOSBsZWdhY3ktdHJ1bmsKKzQ1NDcxIGRkZjhjOTE0NWYxMzYzZTgyZjhjNDNjN2IwYTA5ZmJkZDNhOTBhZTggbGVnYWN5LXRydW5rCis0NTQ3MiBiNWZjZWYxNTgxMzNhOTc2ZjYxZmFiZTY1MmYzODMxYjU0NmQzZjkyIGxlZ2FjeS10cnVuaworNDU0NzMgZTIzOWQ3NDVjNjQ3NDAzNzYwMGNhMTQ4M2RhMmM2NWYxYzhhN2Q1MyBsZWdhY3ktdHJ1bmsKKzQ1NDc0IDJjNzZmNzFiMjIzZGU3NWE4OGNhZjlmY2U2NzEyZTJmMmQ5MjUzMzYgbGVnYWN5LXRydW5rCis0NTQ3NSA1YzQ1MzMwMmQ1ZjZhMGVjNDIxNDlhYTY2ZTdjNWQ0ZTQyMThjYzBhIGxlZ2FjeS10cnVuaworNDU0NzYgZWMwMGI3OThhYjU2OWVhZTg0N2ViNmY2YWM4N2YxNzhiMGQ1OGViYSBsZWdhY3ktdHJ1bmsKKzQ1NDc3IDMzNTIyMzQyMjE5OWNlNDMzMjg2ODgwNmYyYTgyZmRkMDExNWI4MzMgbGVnYWN5LXRydW5rCis0NTQ3OCBkZGE3Y2M4OGMwNWFhYmMwNjFiOWI5NWZjODE5YWJmNDE1ODMxMWRkIGxlZ2FjeS10cnVuaworNDU0NzkgYzA0MTM2YTgwNjJhMWRiZDUyNWY4M2I2YWVhNjFiZGM3MGM4YjI4YiBsZWdhY3ktdHJ1bmsKKzQ1NDgwIDM4NGU5MTIwMjU3OGY5MTcwNWRkMTBhOTgzMmVjMzQyZjQ3MjlmNmMgbGVnYWN5LXRydW5rCis0NTQ4MSBlODE5Yjg2YTE1MDZhMDM3MzUxM2UzMjZiMmMyOTJhZmY5MTk4OWIzIGxlZ2FjeS10cnVuaworNDU0ODIgYzk0ZDc3MDUwODVhNTQ1YzNmODFkNzZhNTVlOGZiMmFjYThkODU0MSBsZWdhY3ktdHJ1bmsKKzQ1NDgzIDE5YzFiYWMxNWJkZWExNDg3MzBkNDljYmEzMDU0YmM5NzNkNWEwNDAgbGVnYWN5LXRydW5rCis0NTQ4NCBiMzc0MTQwZTQ2N2QyZTlhM2ZhMWIyNTllNzg1YWNmYWY0MTk0ZDc1IGxlZ2FjeS10cnVuaworNDU0ODUgZjc5OTFjZTQzMWU1MmVmNjcwN2E1ZTljYjVhYjAyOWY1MGRjZjYyNyBwM3lrCis0NTQ4NiA2ZjM1ZjdiZTM2YzNkNDVmNzkzODEzNmVlNzc0MjE5NDUxOWQ2OGEwIGxlZ2FjeS10cnVuaworNDU0ODcgODFiZjRkMzc4YjllNjc5ZDcwNDNiNmIzN2ZiOGEyYWQyYWMwZDc3ZCBsZWdhY3ktdHJ1bmsKKzQ1NDg4IDcwMmQ1OTdmMmY2ODljMmNmZDRhOWJlZjgwNzE3YzExZjc3OTMwYmIgbGVnYWN5LXRydW5rCis0NTQ4OSBmMTE3YTVmZGU0ZTU5YmRhZWNhMjBlNDgyMGQ0YmRlNDdkYTAxNWQxIGxlZ2FjeS10cnVuaworNDU0OTAgNGQ4MjA5M2UyZTE5NzgzNjcxNjZkMmUzODg3MzA3MmE4OTI2NDg1YSBsZWdhY3ktdHJ1bmsKKzQ1NDkxIGZiYmMwYmVmZmZmNzc4ZmE5YTM4YThiOTA2YWE5OGVmOTRiYjQwOGYgbGVnYWN5LXRydW5rCis0NTQ5MiAxOWQyNDc3YzEyODMxNjhiODEzNTFjOWU5NTk2MGRiMzhmNTI1ODA2IGxlZ2FjeS10cnVuaworNDU0OTMgNmNmZTQ4ZTY3MmM0ZTA4Yjg0YWY0NzlmOWQwNTNjNzRiNjIzYWIyMiBsZWdhY3ktdHJ1bmsKKzQ1NDk0IGVmZTc0OTIyNWJhZTJjNjUyZjgxOThjNTU4ODBiZjA3YWMzNWRmNDggbGVnYWN5LXRydW5rCis0NTQ5NSBkZjllY2FjYjBiZjY3YzBhNTM4NDJjYTQ2ZmQ2ZWJmOGJiN2FjMmZkIGxlZ2FjeS10cnVuaworNDU0OTYgNWY0NTdmNDI2ZDkxNmMxOTlkYWJmMWNiNTIyZGIzNjc5ZWExZTk0MiBsZWdhY3ktdHJ1bmsKKzQ1NDk3IGNjYzBiNTQxMjc5OWVhOTExYTkzNmQ3YTkzNjQ4MzdjMDYyYjY4NWMgbGVnYWN5LXRydW5rCis0NTQ5OCAwODZkODQzNGM3ZjdkYzI0ODgyOTZkMGM4NzA0MWQzNDFkYWExNTBhIGxlZ2FjeS10cnVuaworNDU0OTkgNTk5N2Q3Y2VkMTdkN2RmZjM3OGZiMzIxMmY4MTY3YzhmMDJkZmZlMSByZWxlYXNlMjQtbWFpbnQKKzQ1NTAwIDZkOGUzZTY1OTQ3ZjJhMjU5YmMxZTBkOTZjYzZjYmQ2ZjUzZGU3ZjYgcDN5aworNDU1MDEgOTI3NDg3OWYwNDg0MjhiOGNlNjg1NjkyYjFlMTMxZGFjYzY5NzAzOCBwM3lrCis0NTUwMiA4NTY5NWRlNjA0OWUwMTNkMDRhZjlkZTNiMTFlNTk4ZjdjMWEzNGEwIGxlZ2FjeS10cnVuaworNDU1MDMgODYyNWU0YTVjZTRkMGJkYTQ1MjE3ODkxNDdiYWM2MDRjMTc0ZjIyNCBsZWdhY3ktdHJ1bmsKKzQ1NTA0IDIwY2IxM2JkZjFmMDA5ZDVlOWNmN2Q2MmE3ZDcwODEyMTMwNjY0NDIgbGVnYWN5LXRydW5rCis0NTUwNSBhY2I2MTgzNmY3ZmFhZDlkMTM2YzhkMDQxZjE2MDIwZjMxOTVlODcxIGxlZ2FjeS10cnVuaworNDU1MDYgY2M5MTkyNTA1YjQwNWJjOWM3MjI2ZmRiZDI1NmFmNWVjMjc1M2ZiMiBsZWdhY3ktdHJ1bmsKKzQ1NTA3IDJlMzI3NmRjMjMxZjc2MDVlM2RiMzNkMTQzZTJlZDUwYzhlNDU5YmYgbGVnYWN5LXRydW5rCis0NTUwOCA2MWFjMWUzMjJkYTc2ZDk3ZWUzMDdkMTQ5ZTdmYjIyMDY2NTAwZGVmIGxlZ2FjeS10cnVuaworNDU1MDkgNmViODZhNzFmNWM4MTY3M2NhZDI3ZmYyOTViZjk4NTQ1M2RlNGQ2NSBsZWdhY3ktdHJ1bmsKKzQ1NTEwIDMxMzU2NDgwMjZjNGFlZDUyMWYyZGRkNGZiYTNjN2JhMmY3YzdjYzIgbGVnYWN5LXRydW5rCis0NTUxMSAzZWRlMTc1ZWFkMzdhODk5NmQ1NGQyOTAyZDRjYmUwZWU5Y2ZiMzBhIGxlZ2FjeS10cnVuaworNDU1MTIgYTVlODc5ODdjYWU2M2VhOGMwYjQxM2I3Y2YxOTAzZDZkZTA1M2Y0MiBsZWdhY3ktdHJ1bmsKKzQ1NTEzIGUyNTRiOTIyYzRmMzRlZjBkMWI5ZDQwMzYwZjNiZmU0MWNjODA2MWMgbGVnYWN5LXRydW5rCis0NTUxNiBmYzU4OTc0MThmMzFiZDRkNjZkYmRhNmZlN2RlODJkODYwZGM5ZDNjIGxlZ2FjeS10cnVuaworNDU1MTggZjU4MzFmZjdjZmJkMmJhZjQ4ZjY0NzQ4YTA3MTIwYTAyZjg3OGViOCByZWxlYXNlMjQtbWFpbnQKKzQ1NTIwIDQ1NzdiMjQzYjk4MTM3OGRmY2EzMjQxMDhlNDgwZDdmZDJlNzhmZWMgbGVnYWN5LXRydW5rCis0NTUyMyBiZTJhN2VjNDYyZmU0MTc5ZjJkNDMxMzNlZGJkOTNjMmY1NzRjMGY4IGxlZ2FjeS10cnVuaworNDU1MjUgZjA0ODExNmFhZGUwNTc4Y2QyY2Q4N2U4OGFjYzI1OGUyZGUzODA2ZCBsZWdhY3ktdHJ1bmsKKzQ1NTI2IGU4OTJiNTQ0MjgzNTA4YWVkNTQ2ZDFhZTI5YzVmMWI2NjJlNTRmNGEgbGVnYWN5LXRydW5rCis0NTUyNyBkODJkY2VkNmYxZmE3NDA3YTNlYTEzMWI2MzQ4MWU4NDk5Nzc3NTYxIGxlZ2FjeS10cnVuaworNDU1MjggMTc0MDYyZjdjMWJlMDA2OGE5YmY1NzhiOGE1YjMyODEyYjJmNjBmYyBsZWdhY3ktdHJ1bmsKKzQ1NTI5IGVlOTBhYjI2MDg2YWE0MzUzOTg2ZGJiYjc3YWYyNDdmZDE5YjMyNzYgbGVnYWN5LXRydW5rCis0NTUzMCAzMWIwY2RhMTFhNmQ2ZWM5MjE3YTI2NWUwZmNjODU1MzBjOTU5MWY5IGxlZ2FjeS10cnVuaworNDU1MzEgZDQ4ODI0NGRmMjg4NGIxNDVkZjM4MDJhOGEyNDhiYmZlNWFmZWVmYSBsZWdhY3ktdHJ1bmsKKzQ1NTMyIDYzODY0NDQ1OGZjNzUyOWM2YjM4OWY3ZWJjN2RlYmVmNTU2ZTI0MDggbGVnYWN5LXRydW5rCis0NTUzMyAxN2NjY2E1OTBhZTkzNzc1ZTgwYjAwYjYxY2NlYzc5YzhiNGZlMGE2IGxlZ2FjeS10cnVuaworNDU1MzQgY2M0ODk4NWMzMjY2YzQ4ZDEzNzNmNTVhMTY4Y2UzNTdlODkwMDAzMyBsZWdhY3ktdHJ1bmsKKzQ1NTM1IDkxM2QzNzkwZmQ5OWU5MWZhOTUxYjMyMDA0Y2Y4OGU4MjQ2MzNiYjcgbGVnYWN5LXRydW5rCis0NTUzNyBlMGE2MDMxZGY3YzBlZGRmMzUxZTZkN2IyNjkxN2IwOTk3NjQ3ZjE2IGxlZ2FjeS10cnVuaworNDU1MzkgMGMwMTIyYmQwZWEzMWQ2YzRlNjlmMzhmOTEzYzExZWQxM2JlMDJhMiBsZWdhY3ktdHJ1bmsKKzQ1NTQwIDI0MGZlNDk1ZDE4NjcwYTIyMmJjMjYzYmZlNWE3OTdjYWU5ZjFhZDYgcmVsZWFzZTI0LW1haW50Cis0NTU0MSA0ODhmYmI0Y2E4ZTUxNGQ2ZmYwY2Q4YTQ5M2FlODgzYzA0NzBhM2I3IGxlZ2FjeS10cnVuaworNDU1NDIgODcyNWI5MDdhY2JiZmVkZmRmZjJkNDliM2FhZjE0MjcwYmVhYmEzZCBsZWdhY3ktdHJ1bmsKKzQ1NTQzIDM1ZjI3YmJkOWFkOGEyZGY1Zjc3MzcyYmM1OTIzNDJmMTE1NzJkOTcgbGVnYWN5LXRydW5rCis0NTU0NSBkNjRiYWRhYzZjZjMxMjY1YzlhZTY1NzRmYjE4NmQ1Yzk3OWY5YWFhIGxlZ2FjeS10cnVuaworNDU1NDYgMTJhYjIwY2Q3YzI3M2ExYzFjMzM2ZWNkOTFlMmEzM2VhZDRiMzI3NCBsZWdhY3ktdHJ1bmsKKzQ1NTQ3IGRkNDE1NmMzNjcwM2ZhY2Q3MjZkZmI3NDFmMTRlM2RlMWM3MDBiZTAgbGVnYWN5LXRydW5rCis0NTU0OCA0MWYxM2I1NmRjMzJiY2U4NDk2ZjcxNTAxNzA1ODQyZjkzZjllOTlmIGxlZ2FjeS10cnVuaworNDU1NTAgZWJlNTljZDE4MjczMDJkZWNlODBjMDk3MDhlZTY0N2YyOTgzODEyNiBwM3lrCis0NTU1MSAxOTA0NWM1ZjBiYTJkYWM2Mzg1ODQ1YWFhODI3OTExYzZjZGJlOGMwIGxlZ2FjeS10cnVuaworNDU1NTMgODBlMDAzNDk2NDdkMGQzNjE2YjEwNjBlNzM0YWUxYmY0ZGZjZTc1NyBsZWdhY3ktdHJ1bmsKKzQ1NTYwIDI5MjU3ZWY2YWJlYjdlMDFkMTM4YmUxYjA5ZjIzNWY5MjEzNjc2NjEgbGVnYWN5LXRydW5rCis0NTU2MiBiN2Q0NzFlMTIwNDI3NmFmMjhlNGNlMjg4MTYwZTA4YjU5OWRmN2I3IGxlZ2FjeS10cnVuaworNDU1NjMgZGM4ZWZkNzBhYjU2ODY4MTBmMWE2Njk1NzUxN2Y0MzFiYTRmZGZmNSBsZWdhY3ktdHJ1bmsKKzQ1NTY0IGFjZDhmYmE2MTk0MzBmODFiZWQwYWY4NGE2MmI0ZDFlMzE2Y2M2OTUgbGVnYWN5LXRydW5rCis0NTU2NiBhNGQ1Y2VmYzJkZTQwODUxYzgwNzIyYjhlYjMwNTY5MTQ0MDk0ZWVkIGxlZ2FjeS10cnVuaworNDU1NjcgNzRmNDU5YTI4OWJlOWRkMGIyZjg4NDBjNTI3NzkwZDY3ZmZmMDlkNiBsZWdhY3ktdHJ1bmsKKzQ1NTY4IDU2NGVjOTczNjVmOWQ5ZmFjZGMzNGYyMjVmN2QzN2VhYTdkZDVhYjAgbGVnYWN5LXRydW5rCis0NTU3MyBkNGFlOWMwMzI1YjFhNzlmZDkzOWUyNmY0NDNjMmQ3MTBmYzAxZThkIGxlZ2FjeS10cnVuaworNDU1NzQgZTk2ZDFjYWQ0NjgyMDVhMzdjN2MwYmJiM2JiMjMzMzE4NTkzNmI1ZiBsZWdhY3ktdHJ1bmsKKzQ1NTc1IDQ3YWM1MjRkYjhhN2M4M2U4ZGU0YTg5YTE0MWYyMDlmMzVhN2Y0OTUgbGVnYWN5LXRydW5rCis0NTU3NiA0NzdiZjkzMGYzZTdmNGVkMTFlNWFiYmI0ZDAwYTlkZjlkZGIyMTRiIGxlZ2FjeS10cnVuaworNDU1NzkgNzVlNzA2YzM2Yzg2NGExNDdmNmUzNGNhYjYyMzI2YWQ0ZDBmMzJkZiBsZWdhY3ktdHJ1bmsKKzQ1NTgwIGQzZTVjOTU2NTgxY2UyZWNlODA2NzRkZDZiMTE3NmQwZDA5MmViNDEgbGVnYWN5LXRydW5rCis0NTU4MSBiMGYzN2Y5ZmM2M2ZmOWI2NzA0ZjNlOGQ4YzBkODkwZGEzYjAzMGYxIGxlZ2FjeS10cnVuaworNDU1ODIgNGM4OTQ1NTJiOTY4MGY1NWI5YzVhMzdlZDJiN2I2NWVhMDkyMGM3MiBsZWdhY3ktdHJ1bmsKKzQ1NTgzIDJmYjE2YTYyOTQxNTc4ZGIwNzg3ZjFmZGE2NTg4NTA5ZDMwNjA2NTIgcDN5aworNDU1ODcgYWMxMjdjZDg2NmEzMTJmMmEzYmM3MWEzMTg5NGMyZTJlMzMzNjRmOSBsZWdhY3ktdHJ1bmsKKzQ1NTg4IGM0MzQxZTZjNmEwM2RlNGI4ZWRjZmQzOWE1OGJkYmU5OGY5MzJlODggcDN5aworNDU1ODkgYTQ3MTE3ZmEzY2E4OGM0NjBiNWVmMjkyMzBiNzBjYTZlZTVmNzc1ZSBwM3lrCis0NTU5MCBiMGY4ODE0M2RjNWM5NTAzMzViMzhlZjIwNTM2YTNmODgxNjA5NzU0IGxlZ2FjeS10cnVuaworNDU1OTEgZDM1ZGI4NGNhMDcyY2Y0OWFlMjNmOTc1MzE0OTRjYmQ2NGU4MTllOSBsZWdhY3ktdHJ1bmsKKzQ1NTkyIGI5YWFkNmE3NDQ1MmRjNWI3MTBlYjVhZWJlMzhjNTM5MzUzOGM4NmEgcDN5aworNDU1OTMgYTRjNzBmMzk2OGJlN2Q5ZjgwYTYzYTJiMjY4ZTM3NTU4MzEyMzU0NSBwM3lrCis0NTU5NCA4ZGY2MDc5NjMzNTU4ZTQyZTE5NzQxMDcxM2FmMDIwYjM3NWYyNzczIHAzeWsKKzQ1NTk1IDZhNDVmMjZlYTYxOWU1NzA2OTAzNzBmZjg1NThlYWRlYzg1ZjAyZmQgcDN5aworNDU1OTYgYjY4ZDIxMzY0OTE2NzEzYjUzY2JmNjc1ZjIxNTM3NjM4ODgwYjIxNCBsZWdhY3ktdHJ1bmsKKzQ1NTk3IGY3MzE4NTllOWIzYjkxMjY0YjMxMmE4MmMzMTI4ZDY2YTQyZDhmZmMgcDN5aworNDU1OTggOTZhYTVjZTg2NDQ1ODA3YmU0NzNmZTkzMzUwNTliMWVmNWJjZDBjNyBsZWdhY3ktdHJ1bmsKKzQ1NTk5IDcwMmQ4NWQ5NDE4YTc0NTYwM2FmYTg1MDBjMDQzNjkwYmY2MzYxY2UgcDN5aworNDU2MDAgYjI3MjRhMTJkZGNlNGZmYzZmMzkyNjU5NjI3MmMyMmZiNGY3ZmRiMiBwM3lrCis0NTYwMSA3MjI0NTE1OTI5OWUwMTUzYWZlMmJjMTk3ZDc3ZjExYjUyYzg4ZjNlIHAzeWsKKzQ1NjAyIGI0OTg0M2EzYTFkZjRhNGJmNTJkMjI1N2VhMDA5NDQ5OTNlZThlOTUgbGVnYWN5LXRydW5rCis0NTYwMyA5YmI2ZTM1YzFjYzQxOGI4MjViNDU3OTgxNmI4ZDIwYzNkMTYxMDY1IHJlbGVhc2UyNC1tYWludAorNDU2MDQgYzI4Zjc0YmVkODNiZjg0YmRhMGY2YzRjODA5MGM2OGI1YTM5M2E3OCBsZWdhY3ktdHJ1bmsKKzQ1NjA1IDMwMWM0ZWRlNDlkZDZlNjMzZjI5ZGQ3YWZlNTEwMjE5MGUyOGVkNWEgbGVnYWN5LXRydW5rCis0NTYwNiA1YmM5MTVmZWVkMTQwYTFmYjgxY2FhMDdjZWZjM2E4NjVmMjg0YWY1IGxlZ2FjeS10cnVuaworNDU2MDcgODEwMjU1N2FmZGYxNzY2ZTE0ZmIxOTljN2JjYTljMzM1NGE2MjUyYyByZWxlYXNlMjQtbWFpbnQKKzQ1NjA4IDc0OWFkMmEzNjkzZjIyYmU3ZDAwMzViMmJjYjhmZjExMmRlNDE4M2EgbGVnYWN5LXRydW5rCis0NTYwOSBkNjJjOWY2NDY2MzgxZTY3ZDlhMGM1MDg1MTYyNDE2OTJlMDZhNWRjIGxlZ2FjeS10cnVuaworNDU2MTAgYmQ3ODUzMzk0YzdhYTVmYTI5NmEwYTEyMmNlOWFiNDY5MGRhNjI0YyBsZWdhY3ktdHJ1bmsKKzQ1NjExIGQxOGEyYzg2NjYwOTVhMzdlZWY4ZGQ2Zjg4ZTMxYzU0MjhiYWJmOGIgcDN5aworNDU2MTIgNzNkOGU4OTc3N2UzMzAyNzdlYTQ4M2FmNDA3NDlkNzNkMTQ3ZDAxNyBsZWdhY3ktdHJ1bmsKKzQ1NjEzIDkxYTA5ODFlYzRjMmMxMDUzZTk2ODNjMzhkMjk0MWRlNDJhYTU0NWUgcDN5aworNDU2MTQgZjllY2ExMzNjZjg4NjljYzU4MjNkN2U3NWZmZjhmNmJhMDUwMDBlMiBsZWdhY3ktdHJ1bmsKKzQ1NjE1IGEzMTIwMmM5NDg1ZGFjZWI2ZDNkZjQxNDJlNGZiYTcyOTIwM2JlZWQgcDN5aworNDU2MTcgNzgxNDBiZTUzMTViYzdmZmE0MGZiOWVjNmY0YWU0NTlhMzkxNTg3MSBwM3lrCis0NTYxOCAzN2MyOGE2YWQ1MDExYzg3ZTdmZTRiOGI3N2NiMmM4ZDA4Mzg5ZDZlIGxlZ2FjeS10cnVuaworNDU2MTkgNTBlMGJkMmU0NTg4MTZhMjBlZmRlNjU5YmE4YjhlMWU1YWZmMmRhMSBwM3lrCis0NTYyMCBmZDZmMTkwZTI2YThjMTE5ZTgwNjQ4YzY0YmFkMTIxNTE5MmY1NzFmIGxlZ2FjeS10cnVuaworNDU2MjEgNTI1NTEyMjFhMTMyZDU1MTc5MmI5YmRhNjMwYmU5ZjM3YzI1ZjkyMiBsZWdhY3ktdHJ1bmsKKzQ1NjIyIDU2MDg5ZmFiYTA1NmEwYzA3YmVlMTUxNTVhY2Q5NDAyYjA0N2ZjZDEgbGVnYWN5LXRydW5rCis0NTYyMyAwNmRjZGVkZmM5OGZhN2ZlZDQ2NThmYTczN2E0YWM5MzZhOTc0YTQ1IHAzeWsKKzQ1NjI0IGMyYWU2ZGIzMDU3MmIzODRlNjc1MDM3YTAyNjE5YTYyMzg0ZjFhYjUgbGVnYWN5LXRydW5rCis0NTYyNSBmZDI5YWQwYmVmNzA4Mzk1YzRmNzk5NjQ2N2JjYzcxYzIzNzI0OTU4IGxlZ2FjeS10cnVuaworNDU2MzAgMGUwZTMxNWI0MjAyMzU3Y2UzYzU0ZjBkYmIzMDg4NWU5MjczMmRjZSBsZWdhY3ktdHJ1bmsKKzQ1NjMxIGM3ZWY5MmI5MDQ1YzY4OGEzN2E0NGM2NjY0NDQ3YTVkNzY2N2EzYzAgbGVnYWN5LXRydW5rCis0NTYzMiA3MjA0ZmJhYzU3OWNjOGFjNDVhMmQzMGJjNGQ3NWQzMzllODRkZjg3IHJlbGVhc2UyNC1tYWludAorNDU2MzMgNmM2MzRjNmQ3N2RkOGQzYTAwMThkYThhMGIzYWZiY2E0ZjU4NTAxMSByZWxlYXNlMjQtbWFpbnQKKzQ1NjM0IDNmMTQzMWE5ZWRjYjcxZTk2OTZlYmViMzlmOTE0NGE1NTE3ZTJjZmIgbGVnYWN5LXRydW5rCis0NTYzNiA2MjhmNDFhOGIxY2UwMzgzODBkZDRiMGY5ZjFmYmEwMWU3MThiMmE0IGxlZ2FjeS10cnVuaworNDU2MzcgNTRmMTU1MzY5YTljMTI5YzMxY2Y5NzNiMDZhMDZlMGM2ZTM1ZjM3MCByZWxlYXNlMjQtbWFpbnQKKzQ1NjM4IGZhNmI0OWJhOWFlOWI1MThmYmYxNzU4MjkzMTNmNTI1MDE3MjRlMmQgbGVnYWN5LXRydW5rCis0NTYzOSBjZTJlYzhjODM1ZTkzNWU5MDk3MjkwNTU1MWFhN2U1ZGQ0ODFhMDM3IGxlZ2FjeS10cnVuaworNDU2NDAgZGU0YTVmNTVlMjFkZTEzYTZlZTQ4MWIwMGU4YmI4N2QwZGNjNWUyNCBsZWdhY3ktdHJ1bmsKKzQ1NjQxIGZiMTgzN2U4OGU3MmI2M2I1YmYzNGU0ZjJmZGI3YjBlMjUzMjllMWEgbGVnYWN5LXRydW5rCis0NTY0MiAxMGYyNDFmYzk1OTM5ZjljOWQ3YzhiMmQxYzJhZGMxZTgxNmQ0NzcxIGxlZ2FjeS10cnVuaworNDU2NDMgYWI0ZTY1YzgwOWU2ZmYzMDBlNmI0OWE5OGNiMzZhM2FlODE1ZGI5YyBsZWdhY3ktdHJ1bmsKKzQ1NjQ0IGNlNTU4NWFmYzIwZjkyMTRkNDc4YzIwOTU5ZTRiZDA2YTVjNmRjNTYgbGVnYWN5LXRydW5rCis0NTY0NSA1ZjllYTc2ZTIwNzI0NDQ0ZTRkMDY1NmJhNGY0Zjk1ODRlZThlYjcyIGxlZ2FjeS10cnVuaworNDU2NDYgZjQ5YTJkZGE4ZTc0NTY4NmQ0NTc0MzVjNWY0ODg5ODdiZWI5NzYyZiByZWxlYXNlMjQtbWFpbnQKKzQ1NjQ3IDgzNGZkOWIzY2VlZWMyMDIwOGM3MTA4NGEwYTcwNjFhY2JjZDYzYzYgbGVnYWN5LXRydW5rCis0NTY0OCA5MDQ4ZDc2YmYwMWU2ZGY0OWQ5OTRjYjFiMDFiNGIwMzg3OTI5M2Q0IGxlZ2FjeS10cnVuaworNDU2NDkgN2RlMjg0OTU4ODgzNjA1MTZmMDI5NzliOGI5MWRiZWM1NDA0YjY1ZCBsZWdhY3ktdHJ1bmsKKzQ1NjUwIGZkODA4ZWU2OGViOTg1NWVlMTliMTM0YTYwYjU0ZTYxNzAyNjgxNGIgcDN5aworNDU2NTIgYTdmMzc2NWVhNDY0MjliNGY5MmRjYmM1ZTg4MDQ0OTlkNmJmMzJjNSBwM3lrCis0NTY1MyBhZTZmNTA2MDBjNDZiM2JmNTc3NGU3ZTYzOGY5ZDdmNTI2ZmRlMjFiIHAzeWsKKzQ1NjU0IDg4ZGE4NDc3NjExOTI5MWRiOGY0MzIzZDRkMjU5YjAzMzRmNzRmY2MgbGVnYWN5LXRydW5rCis0NTY1NiBlMTI1MmNlYTQzOWM2NWViODVkMGVmZWJlMTY0NGRlMjQxNDg0MjA2IHAzeWsKKzQ1NjU3IGQwZTRjZWQ0ODdiMzY3ZTQyNGU1MmU2ZWVlZjcyMWVkOTZjN2RmNmYgcmVsZWFzZTI0LW1haW50Cis0NTY1OCBhMGFhOTExYmU5NmEzMWVhYzE1YzQ5N2JjOTA1OWZhZmFhOWNiNjIxIGxlZ2FjeS10cnVuaworNDU2NTkgYmNmNzE1YTk4Nzc0YjA0ZDg3YTIxOTNjODcxYzk1MDRkYjZkZmZlYyByZWxlYXNlMjQtbWFpbnQKKzQ1NjYwIGVhNjc2MjhkZGFlNTY1NTFmMzAwZGZiMzkyNTIyYTY5ZjBjY2M5NGYgbGVnYWN5LXRydW5rCis0NTY2MSBlM2E4YThkZTM1NWUzZmI5NmE5YTA5YzQ0ZTcwZTgzYTU0Njk4ZDc3IGxlZ2FjeS10cnVuaworNDU2NjIgNzk5NTlhZjBmOWUwZjMxZTY4MjlkNmViMmM5OGRkZjU4OGI1MzkzMSBsZWdhY3ktdHJ1bmsKKzQ1NjYzIDk3N2U3YTdlMTU1YWQ0Mzk0NmMxNjYxYzQ5YjdmZTg0NDRjNmNhOTYgbGVnYWN5LXRydW5rCis0NTY2NCA3ZGE0YWY5NWViYWRhMTJkN2NmZDdmYmUyZWI3N2NiOWZkMGE4MjQ5IGxlZ2FjeS10cnVuaworNDU2NjYgN2JiYjA3MTEzYjI5ZmQxYmFjOGE3YjU3NjdmZWUzZTkxM2JhNjlhYyBsZWdhY3ktdHJ1bmsKKzQ1NjY3IDIyMmI0N2Q2N2Q0MzJiNDE4ODM3ZjA2Nzg4ODFmMWRhM2E2NjkyOGEgbGVnYWN5LXRydW5rCis0NTY2OCBkNmIxZTJiMzA4N2YzODQwM2QyNDA1NTU0NTc0MjdmM2VmMzRlZWNlIGxlZ2FjeS10cnVuaworNDU2NjkgYzI1ZGQ3NWUwNjY3OWVlZjFhOWFmMjhkYTNkMTlmNGZlMDEyM2Y0NCBsZWdhY3ktdHJ1bmsKKzQ1NjcwIDk5MTA2NjU3NjQzNDdhNDU2MTM0MGI1ZGZkYTRmMzE0MTFlNWExYzAgbGVnYWN5LXRydW5rCis0NTY3MSA1MDliNTMxNzE5NTRhODJkZTY0NGU5OGE4Nzk4NjNkZWUxN2RkMWY2IGxlZ2FjeS10cnVuaworNDU2NzIgMmZkNDc3YjYxNGUzZjYyZWI4ZjAzZjc5YjFmNjVhNWEwMzY0ZGVkNSBsZWdhY3ktdHJ1bmsKKzQ1NjczIDg0NzcxMGU1ZDdlMTY2MWNmYmNmOWNkODZhZjMzZjBjYzEwYTg2NjYgbGVnYWN5LXRydW5rCis0NTY3NCAxYjE5MjAzN2I2MmYxZmI5NTY5ZTliMWRkNGViNmUwZWU5NGI2ZGM5IGxlZ2FjeS10cnVuaworNDU2NzUgNThkMTBkN2QwYWExMWNlYzgzYjc5MjllN2Q3ZGJiNjYyNDg3OTZiNCBsZWdhY3ktdHJ1bmsKKzQ1Njc2IGI2ZDEwZGQzZjk5Nzk1ZDYxMDk3Y2EwZGEwZTIzMTUwNjJmOWI3MDcgbGVnYWN5LXRydW5rCis0NTY3NyA2ZjRlZGQ5MTRjNTg2YTE2MWYzZjk0MTY1MzUxMTI0MjZlMDY2ZjQwIGxlZ2FjeS10cnVuaworNDU2NzggNzE2N2MxYzBlMDEzMTcwNWZjZDg1NTY1ZDc4NjI0YjRhZjU3MjYzYSByZWxlYXNlMjQtbWFpbnQKKzQ1Njc5IDljMDQxYzg4ZWI2NzgzNzg1ZDQzMzc2ZmYzNGU2NzRmOTMwMjY0MzggbGVnYWN5LXRydW5rCis0NTY4MSBkNjBmYmM1NGMwZDRkZmViMmE4MjY1N2QwMTc1NTJkNjE0NzMzN2RjIGxlZ2FjeS10cnVuaworNDU2ODIgOWFjYjU1NTI4NjgwMzk5ZTY4MjBlY2YxYjFhODI4OGIyYjI2OTlmZCBsZWdhY3ktdHJ1bmsKKzQ1NjgzIGFkYjEwYWZkYTU1YjRlZGEzNDBiNjRmZmJkZWNkZWU0Yjg5Y2RjYTkgbGVnYWN5LXRydW5rCis0NTY4NSA5N2U1OWQyZTYzZGY2Mzc3NTMxYzI4MTg1NjViODUxNGE1NWVmMmYwIGxlZ2FjeS10cnVuaworNDU2ODYgZGFkOWIzM2U3OGU1M2Q5MWJhZGE2MjgzNGNlNGU5ZTkyN2E0ZTUyYyBsZWdhY3ktdHJ1bmsKKzQ1Njg3IGM3OGQzMDZhYWNjZjkxMjUxNTNiZGNmN2RiZDE3NTY3NjNhZTAxNjQgbGVnYWN5LXRydW5rCis0NTY4OCAyZjRkMTdiY2M5NzUxYTljNGZjZWJhMjljNGQxZWY0ZmU0ZWYyN2I4IGxlZ2FjeS10cnVuaworNDU2ODkgZTBiN2UzNGI1OTcxMzMxYmE2NTUxZmVjNDIyMTI5MmZmNDNkMGE0ZSBwM3lrCis0NTY5MCA4YjBmMDczNWIyNDZlZTE1NjNlODIzMDE2NGNjYTEzNDJiNzQ0NzlkIGxlZ2FjeS10cnVuaworNDU2OTEgN2UyZDVkMzc0ZTNhMmY0NWFjZTkyNjA0Y2FkNmM2MWMzZWM4ZWJhZCBJRExFLXN5bnRheC1icmFuY2gKKzQ1NjkzIDkyZjIxOGE2YjIwYjg0NGQzNWEzMGNlNmQ3YTgxN2U0NWU3YmEwZmUgcDN5aworNDU2OTcgNjEyMjhlNTU3OTFmM2VmNzAwNzA2YzE0MWE2ZDNkODkxODIxODRjZSBsZWdhY3ktdHJ1bmsKKzQ1Njk4IGFjZDVlNTU1OWUzYzI3OGNkN2ViYjc4NzE4MjgwMTMzMmQyMTVmOTEgbGVnYWN5LXRydW5rCis0NTY5OSAzMDE1NTIwZDY3ZmYxYmJhYmZlZWIxZWRkYmE1ZGUyMGUwNmIzNDZlIHJlbGVhc2UyNC1tYWludAorNDU3MDAgODk1YjdkYWJhMmQ2MDg0YWMwNDU0OGY4ZmI0MjAxYjJkOGJhNWRhOCBsZWdhY3ktdHJ1bmsKKzQ1NzAxIDAwZGQxZGFlNzg4YjdkMTE4MmMyYjljNGM5MDA1MzEyZTUxYjU5ZWIgbGVnYWN5LXRydW5rCis0NTcwMiBmMzNlNGVkNTUwYjhhNGY3MTI4NTc4Y2U2NDQyZGZmMWNkNzBjMTkxIGxlZ2FjeS10cnVuaworNDU3MDMgNDQ5ZDRiYTNjZDQ0MjQ3YWIwZDdjMTk3YjI2OWUxMGY1Y2NjNzQyNCBsZWdhY3ktdHJ1bmsKKzQ1NzA0IDE0Y2IyZWVjYzZmODk0NGQyZWFhMjcyYWJkZjBhN2U5NzczZDY3OTAgbGVnYWN5LXRydW5rCis0NTcwNiBhZjQ0ZGIyYTk1MjNhMDUzYWUzZTJkYWFlNDUxMDBjYzczMjVmYTZhIGxlZ2FjeS10cnVuaworNDU3MDcgNmMxMjQyNzZhMWYwY2FmY2RmNGRhNWE1ZDViZTZiN2NlZWY4MjAyYiBsZWdhY3ktdHJ1bmsKKzQ1NzA4IDQ1Zjg0OTI5YjJhZWI4NjUyNDk1OGI5OTFjNjhmZmQzYjFlY2MzZWUgbGVnYWN5LXRydW5rCis0NTcwOSA4ZTE0MTQ4Mzg2ZWMwNGU5NjBkMjAyNzY5NDljNTdjNjQzNGE0ZjBlIHJlbGVhc2UyNC1tYWludAorNDU3MTAgYTg2OGMyMThhMjEzMWI2YjY2ZmUzNTVmYjcxY2Y5YTc1MWI4N2FkNSBsZWdhY3ktdHJ1bmsKKzQ1NzExIDg4NjNmZWQ2YzhkNzE5ZDlhMGY4MTQ3MWU2NjVlNGQwMDM5M2Q2OWUgbGVnYWN5LXRydW5rCis0NTcxMiAxODQzNzEwZjMyZTgzMjEzNjdhODQ1NTYxZDg1MTVjYWRjNjNiNDlmIGxlZ2FjeS10cnVuaworNDU3MTMgZTVmZWIwNTFjMzJmZGMzZWE2NGEwMzU3ZGI0YmRjMWUwMDExZjJiNiBsZWdhY3ktdHJ1bmsKKzQ1NzE0IDcwNGI4MDUyOTY2NGJhNGU5ODk3Yzk0MWQxODhkZTU2ZTQ3ZDA1NTggbGVnYWN5LXRydW5rCis0NTcxNSBiNTM1YzE5MWE0NGIwODIwODIxYTNjN2VkYTg1ZGFjMmZhY2U2ODY3IGxlZ2FjeS10cnVuaworNDU3MTYgNzgzY2FiNjkzMzQ3N2M0MWM3NDQxYjA3YWE0NjAwNzcxOWJiZjIzMyByZWxlYXNlMjQtbWFpbnQKKzQ1NzE3IDY4YTdjMDE1YTU0NzQ3ODQwMWI5OGQxZDA2YWNkNDVjZjJiZWQzMzcgbGVnYWN5LXRydW5rCis0NTcxOCAyNjljNjJjN2Y2NmE1MzMzNWZiMWJjNzdkYzM1YjUwOTYxOWVmMGQ4IGxlZ2FjeS10cnVuaworNDU3MjEgZDhkOTAwZDBlYjhhNDY4NGNmZTczODY1ZWUzNTY1NWQ3NGZjNzU3OSBsZWdhY3ktdHJ1bmsKKzQ1NzIyIDA5YzQyNWE1YWEzYWYzY2VjMTlkZDJhODg1OWFmMGU1ZTI0YjY0ZjkgbGVnYWN5LXRydW5rCis0NTcyMyBkNWU2ZTQ5YTM4NzkwYWVhYTE3ZDQwZGMzZjJjMTVmNWFiYmU3NzA3IGxlZ2FjeS10cnVuaworNDU3MjQgMDZjMDU5YjkyZDBiYWM3N2MzZDEwYWQwZTNkMmEzNTgyMzdlNWE4MyBsZWdhY3ktdHJ1bmsKKzQ1NzI1IDg4MzllYTkzYjZkNzA0Mjk0NzkyN2I1NTY5ZGNlYzAyYTU2YWY2YzQgbGVnYWN5LXRydW5rCis0NTcyNyBmODFjZDdlOWQwMDFmMDgwOWNiNWE3YTY1Y2JhZDk4Y2RmMGYxYTU5IGxlZ2FjeS10cnVuaworNDU3MjggNTU2NDRmMGE0MDFiYjkzNWY1ZjlkMWIzYmJiNzk5MTg1YjliMjliNyBsZWdhY3ktdHJ1bmsKKzQ1NzI5IDE2NDk3MDRhMjIxYTFhNjExNzU2YTE3NDVkY2UyMGY0OGY5NGI4ZTMgbGVnYWN5LXRydW5rCis0NTczMCA4ZGMyYTRkOGEyMmUwMDY2Zjc2NDkwY2M0MmIxZDExYzIyYzFhYTE0IGxlZ2FjeS10cnVuaworNDU3MzEgMzU4NjYyZTJmMjczYTJkYmE5MDYwYjRiMGJmMTIzNzRlNjJlY2VlNSBsZWdhY3ktdHJ1bmsKKzQ1NzMyIGZlZDZlMzdhZDAzZDEwNTJlN2I4ODYxYmEyMTRlYTU4ZTQwODQ1NmEgbGVnYWN5LXRydW5rCis0NTczMyA5Y2MxMmJiMGI3MGE4NjYzNGI4N2ZiNTgxNGVjM2U0MmFlODhkYTcxIGxlZ2FjeS10cnVuaworNDU3MzQgMjJiYjVjNjM4NjJlYzYyMmE5NmYxNjkyNzQ4ZjNkYWFmMjIwYWE3NCBsZWdhY3ktdHJ1bmsKKzQ1NzM1IDdjMjIyY2U1MWJkN2ZlMGNmMjU1YThkMjk0ZmNiOTg0NDJlYTY3NGIgbGVnYWN5LXRydW5rCis0NTczNyA4NWM5Y2E1ZTAzNWFkZmY4MmY3ZjczYTRjZTNjYjA2NDM4Nzc1NjBmIGxlZ2FjeS10cnVuaworNDU3MzggYWMwNjg0NTNhNzhhODEyNjFkY2M4Y2Y3ZmYxNjg5ZDNmNmJjZGQ4NSBsZWdhY3ktdHJ1bmsKKzQ1NzM5IDk0ZDllMGRlNGU0OWUzMjBlMDk4NDIyYjYwMWEyN2I1MWIyMDMyMDMgbGVnYWN5LXRydW5rCis0NTc0MCAwZTgwOWI3YTg0ZjE3OGY4NDlmN2U3ZmJjNWM1MGM4NGI2NDhmYzVhIGxlZ2FjeS10cnVuaworNDU3NDEgMjZkMDc3MGYyYjdlZTI4OWEzOWEzYjU1ZGNlYzFjMWVlNjU4NDljNSBsZWdhY3ktdHJ1bmsKKzQ1NzQyIDUwODU2Nzg1NzMyMDVlNWU0MGJlN2ZkODA4MGQ2OTE4NjRlMDExZWEgbGVnYWN5LXRydW5rCis0NTc0OSAwOTkyN2YyZjc0NzhlNjNjZGI0YWI1ODA4YTUwZTUzMTBiNGZiYTRmIGxlZ2FjeS10cnVuaworNDU3NTAgOTIzMzUzMmVjOGIzNTEzNTgyZGViMjIxY2Y4MmQ5Zjk0Y2IwNTdlYSBsZWdhY3ktdHJ1bmsKKzQ1NzUxIGNkOWVkMjczYTY4Nzk2MzNhMmVlOGZhNjAyMDQ1ZDZmM2NkZWJjNGUgbGVnYWN5LXRydW5rCis0NTc1MiAxZTFiNTM2YzY4YjY1NjA1ZTMxMWM3NDk0YTg0MDJkNjU2NDc3OWE5IHJlbGVhc2UyNC1tYWludAorNDU3NTMgZGZiZDU3ZjRhNzExMmY5MmY3NDQ2NWM5OWQ1ZjM3Y2ZmMzJjNzk2MyBsZWdhY3ktdHJ1bmsKKzQ1NzU0IGE4NGE2MjFlYzVjMjRiOWM3Mjc1YWRkYTQzNDlkZDlhYzk4ZjZlYzggbGVnYWN5LXRydW5rCis0NTc1NSAwOTEzNDc3YmQyNGVhNDBiNDQ5OGYwNzhiZjM4ZjJlYzNmODBmM2I5IHJlbGVhc2UyNC1tYWludAorNDU3NTYgNzdmZWEwNmViYzEwYTBiNzI5NGExOGEyN2E5MjM1ZThlMGU5NWVkYSBsZWdhY3ktdHJ1bmsKKzQ1NzU3IDc4OGQ4NjY1ZmY1OGM1NDRjYzk2M2Y3ZjEyMzg1ZDJhYWQzYjViYzcgbGVnYWN5LXRydW5rCis0NTc1OCA0ZGEwZjc2MjEzMjVjMjY3YTA3ODEwZDVjZWM0MjAyNWYwYWZhM2ExIGxlZ2FjeS10cnVuaworNDU3NjYgYWY5NTJiYzdmZWIyNjE1OWE2ZWVlZGE4MGJiZGJhNTFhNGE5NDM3NSBsZWdhY3ktdHJ1bmsKKzQ1NzY3IDk0MGNlNWE3NmM1ZmY4NWFiZmY3ODQzYzgwNTM5NmFlYjUwOGQwMWUgbGVnYWN5LXRydW5rCis0NTc2OCBkNTUxNGE3ZWFhNGNjZWNlZjgyYmM3OGM5NjE5ZjlmMTVjOTRhODU5IGxlZ2FjeS10cnVuaworNDU3NjkgMGI4ZTc4MmI4NDg0Yjg4ZGQzY2VlMjE4ZjRjYmY3NGMyZTY3N2M1NiBwM3lrCis0NTc3MCBiNWU3ZDViM2M0NDJlNzlkYjEyODRhYmIzNTk5YWVjMmNiMTZkYjVhIGxlZ2FjeS10cnVuaworNDU3NzEgMzg0NWY3MGUwYmFmZGEwNGFmYThjYTBiODNiNjhiZDkwMmIyMzRiNCBsZWdhY3ktdHJ1bmsKKzQ1NzczIGJiNmM1YzIwMGEzZjAzYmZjOTJkY2RiNmJjY2EwMGYwOGRjM2Y3YTYgbGVnYWN5LXRydW5rCis0NTc3NCBiNWU3MTgzYWQxMTIyNWY5MzI2MTQxZTlkNTc2YjllNTNlNjRmNWZmIGxlZ2FjeS10cnVuaworNDU3NzUgMzUxOGU5NGFhNjYzNzIxOTRlNTdjZTBlZGFmZjI0OTdlNDVmM2U3OSBsZWdhY3ktdHJ1bmsKKzQ1Nzc2IDE5YWQzZDM1ZmFjNGE4NGE1ZjIyOTVjZmRmNGIwZWM0MmVjODBjMWUgbGVnYWN5LXRydW5rCis0NTc3NyA4YmM0YTdlNWZlZjg0ZjcxOGJhM2E1YmJkNzBjZjc0MmJhMTExMmVkIGxlZ2FjeS10cnVuaworNDU3NzggNjFjN2VjOTk1YWRmNTdlMTgzOGEzYWVkM2QyN2FkZjZkZjE5NzM5ZSBsZWdhY3ktdHJ1bmsKKzQ1Nzc5IGU5YTcwYjE0Njg1NzhkOGU0NjA1MTVlMGY0OGQwMTgzYTc2NDU3YjUgcmVsZWFzZTI0LW1haW50Cis0NTc4MCAzNGQ2OTZjMWVlYmM2OGMxNGFlZWJhMTRkZjZlNjRlZmMyNDhmMDc4IGxlZ2FjeS10cnVuaworNDU3ODEgOGU1YjY0YTdiMzNmMmExZTM4YTZkYjBlMTljNTA4YzdhZDhhZmU1NyBsZWdhY3ktdHJ1bmsKKzQ1NzgyIDM5ZWI1YjUyMjUyMzljZGVjNTAwZGYxOWMwYTgzMDA0OThlOGFiZTggcmVsZWFzZTI0LW1haW50Cis0NTc4MyBjMTI0NzE2OWYzYTE2NmQ4YjA1Y2ZjMzc4YWMxYWY1Y2MxYzRjZGZmIGxlZ2FjeS10cnVuaworNDU3ODQgZGUyZWU4ZGVkY2U4OTlhYzIyZDg2OGE4ZmM2NzkxNDhlYWVhZWRiYSByZWxlYXNlMjQtbWFpbnQKKzQ1Nzg1IDU2NWJmZmRlOGJmMTgzMDY0OGZmMzIyNmY1NDg3MjcwNTc4YzExOWYgbGVnYWN5LXRydW5rCis0NTc4NiA0NzNmMzdkZTEzYTEzN2Y0MWY3NDQ0YThjMmEwMTVmYTQzZDg5YjlhIGxlZ2FjeS10cnVuaworNDU3ODcgMjU0NmM0NzczNGEwMTVmOGY5NWM2NzVlN2VhNTA5NjY3Yjc1ODRkMiByZWxlYXNlMjQtbWFpbnQKKzQ1Nzg4IDhiZGJlZDY3YWRmNzg2ZTg1OTdmYTJmZDAyYzRjMGZiNjQ0Nzg3MTIgbGVnYWN5LXRydW5rCis0NTc5MiAzODllOTIyYTY0N2MxMTAyZjVmMWZmMjZhNmQzMWIxMzFhODI4NjRhIGxlZ2FjeS10cnVuaworNDU3OTMgODc0ZDc3ZWVmY2U0MzFjMGQ4MDllZmUzOWQxMDUxMTRmODk2MWI0MSByZWxlYXNlMjQtbWFpbnQKKzQ1Nzk2IGYyNzQyYWNhMmFkMDdmNDQyNGI0Y2JlOWM3ZWIzMzYzMDFiMzkzOWMgbGVnYWN5LXRydW5rCis0NTc5OSBmMDgwOTQ4M2I0ZDA1ZjFiN2YyZjBjYTJlZTRiZmY1NzA0N2EzYmMyIHJlbGVhc2UyNC1tYWludAorNDU4MDAgMzZjN2E0NDIyZTMwNzU5NDVlODE2MGU1ZDI5M2MxYzc0Mzc5NjE0NyBsZWdhY3ktdHJ1bmsKKzQ1ODAxIDU3Mzk4ZWI5NzhjMjU0ZTY3MGE3MDJjOThkYWNkZGQ5ZmQ5M2U4MTIgbGVnYWN5LXRydW5rCis0NTgwMiA4NDY5ZDNkOGQ0ZWRiNzQ2Zjk5NWY0ZjU2ZTFhMGRjMjZlMTQwNmQ1IGxlZ2FjeS10cnVuaworNDU4MDMgODg3M2QzMGExNDBmODQ0MGI3OTZiNzgyNGM4MTFlNzc5MzVmM2RkZSBsZWdhY3ktdHJ1bmsKKzQ1ODA4IDVjMjI3N2EyOTRlYTQ1ZTNiNGMwZjIxYjBlMWU4YzYwMTMyOGQwMTMgbGVnYWN5LXRydW5rCis0NTgwOSA1MWI2ZjhlMDQyZGZiZjliZjU5ZjM5ZGMxZWQ2ZmJmOWEzMTY1M2RhIGxlZ2FjeS10cnVuaworNDU4MTAgM2Y1MWZmZDVkOGJmNzdhYTkyZmJlYjA0OGQ4MzViODk2NjI0ZTMwOCBsZWdhY3ktdHJ1bmsKKzQ1ODExIGY2MjZkNTJmYWJmMDQ0YzNhZDg5MDNiMDc2MTllMjYxMGFkMDFkOWQgbGVnYWN5LXRydW5rCis0NTgxMiA0NjVmNWIzYTAyMzQ4NGEzMzU4Y2VkNGEzZDg1ZWQ0MWVmOWNjMjY5IHAzeWsKKzQ1ODEzIGFjYWYyNzYzOWE0MTFiZmJjZjBhNGY1Mjk5NzM2Zjk2NTNkZmM3MGYgcDN5aworNDU4MTQgNjE0YzkyMTcwN2Y5NTRhNmYyNGE4NWQ5NDFmZmRhYTcwMDQ2YWZkZSBsZWdhY3ktdHJ1bmsKKzQ1ODE1IDJhMjg5MTU2MTZkNTAxYmFhNWM1OTFmMzhiZWIwZTM3MDc2NDAwOTkgbGVnYWN5LXRydW5rCis0NTgxNyAzMmExODdmM2Q1YmE5MzZhY2MzZjAxYzM4OTUyYTI1MmQ3YjQ5MGQ1IGxlZ2FjeS10cnVuaworNDU4MTkgZTRlODQ4MjE0ZDIzODUxYmQzZWI0ZWNmYmMzNTg3NGNmYzE5MmZiZSBsZWdhY3ktdHJ1bmsKKzQ1ODIwIGFiNTNhMzc4ZWRhOGY5YjM3MzNhZGYyMWRkNTYwN2NkNzU2NmRlYzYgcmVsZWFzZTI0LW1haW50Cis0NTgyMSBmY2M2MTgzNWM2YWM4ZTZmMzk4NThjNDMzODg3YzU1NDhjZTc4Y2JiIGxlZ2FjeS10cnVuaworNDU4MjIgNjlmMDQ1N2MxN2JiMTgwODU3ODU2YmJjZTRjZDAxYTkzZjg2YjMxZSBsZWdhY3ktdHJ1bmsKKzQ1ODI0IDhmN2FiYzJiYTdkMGEyMmQ1ZjMwMmEzMzc2NmEzZTgzNmNlMTJlZjYgbGVnYWN5LXRydW5rCis0NTgyNSA5YWJlYWI5NmFmNTcyMzZkM2FmZGRiMTdhMzdlMGE2NDE5NmJhM2JhIGxlZ2FjeS10cnVuaworNDU4MjYgN2NjN2M3YTEzNjk3YmNmMDJiZmUyNTJjMGViMDVjNDc1N2RiY2NlYyBsZWdhY3ktdHJ1bmsKKzQ1ODI3IDgxZDkxZmY4MDAzYjk5NDNiMWMzNTdhMjYzOTBjMDdlYzAwN2ZhNTAgbGVnYWN5LXRydW5rCis0NTgyOCBmODk0MTA0NDgwMWNiZmIzZGY0MzI1MTdkOWZkYjkwOGE4MzQ1YjI0IGxlZ2FjeS10cnVuaworNDU4MjkgZmM3YjYxODFkMDllYWUzMTdkOTJkYzQzYTAwNDIyZmQzODVhNTM3ZSByZWxlYXNlMjQtbWFpbnQKKzQ1ODMwIGY2MmJkNTExOGM3OGNmMzQ1YjY4MzhiYzA1OTQyODQ3M2Q0MWIzMWYgbGVnYWN5LXRydW5rCis0NTgzMSAwNzM2YjI1YzU3YzU3NjgxM2NmMDNlMTcxMzMyZDU5ODRiMGQ3Y2ViIHJlbGVhc2UyMy1tYWludAorNDU4MzIgMTM1YjE3Nzg4M2MzNDI1YmVhNmViNGE1MWYxNTViZGIxZWYzOTBjYiBsZWdhY3ktdHJ1bmsKKzQ1ODMzIGI4NTA3ZGVkNGQxNWNjMzhhODg3MzVjY2Y2ODhmNTg2M2ZkMThiODcgbGVnYWN5LXRydW5rCis0NTgzNCBlZmVlYmM4NzcwZTVlNjIxYjFmNDI1ZDgxMGNjNTY1NmIyOGZhN2JlIHJlbGVhc2UyNC1tYWludAorNDU4MzYgY2E2YzkxNTMxYTk2Nzg3MDQwNTcxZDRjNDVmZmUzODAyOTdkZGQ3MyBsZWdhY3ktdHJ1bmsKKzQ1ODM3IGNmMTlhMTIzYTVkOWFjY2M2MjRmMTcwY2U1Mjc0YmVmOWY1ZmFiODIgbGVnYWN5LXRydW5rCis0NTgzOCA5Yjc1YWQyMzZmMDAwMDgwZDZhYzNiZDA4ZWEzZDQ0OTkyOGJjNzBkIGxlZ2FjeS10cnVuaworNDU4MzkgZDc2YjlhYTcyMjlmYzY5NjE4NjIzZGRkNGViMTAwYjhmMDNjY2UxZiBsZWdhY3ktdHJ1bmsKKzQ1ODQwIGVlOThlY2YwNTc3M2E3MDcxNzdkMzM1NTFmZmVjYjhmOGU0OTUyZmMgbGVnYWN5LXRydW5rCis0NTg0MSA2MzUxY2QwZjdjMjg1ZjkyNzlhZGQxYjU1ZGE2ZmQwNzI5NjcxMWYzIGxlZ2FjeS10cnVuaworNDU4NDIgZWQzMzVlNTJkMTcwNTQ5NGZjYTcwNzY0MzI2ODYxYWFiMDlmYWIxZCBsZWdhY3ktdHJ1bmsKKzQ1ODQzIDdiODNiNjhiZThhNjdhNDVhYWRmNjAyMGQ5MjE4MjFkNDcwZDQ0OTUgbGVnYWN5LXRydW5rCis0NTg0NCAxMjhjMDA2MWI1YmIyNmIyOWViZDUzNjA2M2Y2OWYzMjFhZTExODBmIGxlZ2FjeS10cnVuaworNDU4NTAgYzkyMDJmMWM1NmMyNzRlMzAxNzc3MmUyYjg1MTEyZDBjNGQwYThlOSBsZWdhY3ktdHJ1bmsKKzQ1ODUyIGIxY2JjNjA1YmVjOWNkZjlhNDZmMDNkZGU4N2MyMjM0OTVjYWY5MWIgbGVnYWN5LXRydW5rCis0NTg1MyA3MjhjMTZmMTYyNjcxZjM0MWI3OWMyYWU3NTE5NGY2MjVkZTI1NzIxIGxlZ2FjeS10cnVuaworNDU4NTQgYjhlYzY4OWNiMmZiY2M0ZjZhY2JkMWMwZDllMWM3NWM5MTZkY2Y3OSBsZWdhY3ktdHJ1bmsKKzQ1ODU1IGI3YjVmMGIzNGQyNWNjZGQ3YzFlMWExZmM4NjM3MzBhZDRhNGM3MWUgbGVnYWN5LXRydW5rCis0NTg1NiA5YTE3YjgyZWFmYzk0MTI3YTM3ZmFjOWZmMmNiMmRjYjJlZGJhOWM4IGxlZ2FjeS10cnVuaworNDU4NTggYmIzZTBjODg5NjMyNWE1MTMwMTFhMzcwNjAyMzEyMzQ4YzRlMWExNCBsZWdhY3ktdHJ1bmsKKzQ1ODYyIGE4MTJkMGZhZTc0YTQyOGExNzJlZTBmYWE1OWU5OGJiOWFjODA2NTMgbGVnYWN5LXRydW5rCis0NTg2MyBmZTI5Mzk4ZjQ4Yzk4ZGZlMGI4Yjc2ZmIzOWNmMTg5MzljM2U4MDVlIGxlZ2FjeS10cnVuaworNDU4NjQgYWM3MjkwMGUxOTE5YTFmZWJlY2E2NmZhY2E4ODM3M2QwYmE0NDgzZSBsZWdhY3ktdHJ1bmsKKzQ1ODY1IGI3MDZiMTAwYzhmYzBhMDM4NTEzZjEwNWY2ODYxODJiYTAxMTI2NzcgbGVnYWN5LXRydW5rCis0NTg2NiA4YWFmNTdiY2NiZjhiNTY4M2E4YWRmNzg2YjM1MzdhOTBlN2RhNjZlIGxlZ2FjeS10cnVuaworNDU4NjcgNjY4NzViOWM4OWY0NTQ1ZjU0OGRhMzBmMzc1NWUyMzQ5NDIzZWM0ZCBsZWdhY3ktdHJ1bmsKKzQ1ODY4IDY2ZjFiM2ViYWVlM2EyMTlmMjkxMzMyM2ZlNmU2ZjVmODdjYzkzODQgbGVnYWN5LXRydW5rCis0NTg2OSA2ZTBiMDUzYzZjZjdiMTc2YWI1ZTFiNmUyYjY1MTdjYzFiMTJjM2JlIGxlZ2FjeS10cnVuaworNDU4NzAgMGZhM2JhZDQ4OWRkNDc3ZmM4ZjM4OGEwMzNhOTRmZmZhYzQ2Yzg4MCBsZWdhY3ktdHJ1bmsKKzQ1ODcxIGJjNDhlNmIxZTY1NDU1YzdlZTkwMGM4MDc0NWMwMjAyOTkwYTYzMTIgbGVnYWN5LXRydW5rCis0NTg3MiA2YTE0NjliMzlkNzM3ODUzYmNkMDQxNDQ4ZThkZTVmNDc5YjNjN2ExIGxlZ2FjeS10cnVuaworNDU4NzMgZWIwMzU2MmRmNGE3OTY4NDdjYTNjY2YwNDZmOWQxNWI4ODBiNWRiZiBsZWdhY3ktdHJ1bmsKKzQ1ODc2IDU0NTdhYjlmODU5OTE3YjA0YjFiMzljZjU2ZmRjMWQzZDhkYzc0ZTIgbGVnYWN5LXRydW5rCis0NTg3NyBlNWQxMWRmYjJkMDhlYzZjMWY5NTNhODA3YmQxN2Y3NmU4YzE0ZWRlIGxlZ2FjeS10cnVuaworNDU4NzkgMjNkNGFjMzNhYzE2ZTc0YzIxZGVkOWQyYjk5NWNhNTBiMmRkNmM3NiBsZWdhY3ktdHJ1bmsKKzQ1ODgwIGMwNmE2MmYwNTg5ZmJhNGE4Mzg2NDdhYzI1NTE2ZTkwNWY1NDIxNjIgcmVsZWFzZTI0LW1haW50Cis0NTg4MSA0ZjcyYTQ5ZDcwYzgwNWMwZjk3MTc2ZTdiMjliZDNiZTk3ZGMxMDgyIGxlZ2FjeS10cnVuaworNDU4ODcgNmJjMWU4M2E5N2E2OWZiODk5YWE0ZGVhNDcwOWY0ODRlYzU0NDI1NiBsZWdhY3ktdHJ1bmsKKzQ1ODg4IGU5MmE4YjhlZWM3M2I4M2NiNTY1YmU5ZmE5NDIzNjI3YTc4YzgwMmIgbGVnYWN5LXRydW5rCis0NTg4OSBhMDZiNjlmOGMyNzZhODk0MWRiY2UyZWUyMWUzMGU2NDljZTJjNWI5IGxlZ2FjeS10cnVuaworNDU4OTAgODhiODlmOTZiOTdmZjA3OTc3ZjRjZmZjODZiYjU3MTg4MTMxY2M1NyBsZWdhY3ktdHJ1bmsKKzQ1ODkxIDhjMzgzZWY3ODE5ODQ5YThjOGIwYmNmYTFmYWY5YzFmYmY4NDUyZjAgbGVnYWN5LXRydW5rCis0NTg5MiAwMjUxOGNmMTdhNjZlYTc2MTdhN2MxM2RmZDM0OTZjYjhlZTEzNjJkIHJlbGVhc2UyNC1tYWludAorNDU4OTMgMjk0MjUwODZlOWFiNjI4YjMxOTI0Y2Y2Y2IzMjJmNWJkZjJmNjNlOSBsZWdhY3ktdHJ1bmsKKzQ1ODk0IDIyMGFkMjAzOTRkZjBiMzFhNGRlNTlmMTAyOTJiODI5YmFiMGZjNGIgbGVnYWN5LXRydW5rCis0NTg5NSA5MWE2NDM2ZjBhNTg0ZTEyZDRhNmJlMzg0ZWQ3YmRlODUwMDA1ZTdmIGxlZ2FjeS10cnVuaworNDU4OTYgY2UyYTdmYWRjMmIwNGUyMzg4ZTA4OTQ2NmZlMzAxOGM5ZTU2ZjdlMiByZWxlYXNlMjQtbWFpbnQKKzQ1ODk3IDBlN2QzNGFhZWE2MTMxZWQ5N2EwYzFiODY2YjJlNjE5N2VhOGM5NzEgbGVnYWN5LXRydW5rCis0NTg5OCBiZTQ5NjQ1ZTM5ODQxMGE2NmI5MmVmOWIxMjkwNTBhODQzZTViYzAzIGxlZ2FjeS10cnVuaworNDU4OTkgYjU4Zjc1MGQ1MjEwMWZlMzc3Nzk1MTc4MTljM2Q4ZGIyZjA0Y2I4MiBsZWdhY3ktdHJ1bmsKKzQ1OTAwIDc5YzhhMmE5ODhjYjM5NDQ3OWFhMmEwNjE1MmZiMDBjMjI3OWM3MDkgbGVnYWN5LXRydW5rCis0NTkwNSBhNmExMzU5YWFiODRkZjUzMWQ3ZDAzN2E3ODQyYTgxY2M4YWNlZDhiIHAzeWsKKzQ1OTA5IGJlMGNjYTcwY2NhYWRiMzExNTJlNTUyNWM3MWJiY2EwZThhNzg0NjAgcmVsZWFzZTI0LW1haW50Cis0NTkxMCA1N2JkN2M3ZDkxZTNhYmUwMjFhZTViMzA3YjZhMzYxMWZlOGQxZmJhIHAzeWsKKzQ1OTEzIDM2MTgxMjZjNjMwNGM3MWE4MzM4MTNlMWVmNDU4YjQ0ZDRmMzAwNDYgbGVnYWN5LXRydW5rCis0NTkxNCBjMDFjMzM3YWQ2MTg4ZWZlMDI1YTkxNjJkMTE4NDhlM2FkOWZlZjAyIGxlZ2FjeS10cnVuaworNDU5MTUgYTU5NmVkOTNjZjQyNjRiMjdkY2RmNDY2MjAzM2JlMTc1ZGQ3NWNmMSBsZWdhY3ktdHJ1bmsKKzQ1OTE2IDc0MWZiODNiNGVhYjQ3NjEyZDkwOGE3MDIxOTljYzFhYjlmYjg5YmIgbGVnYWN5LXRydW5rCis0NTkyMCBjMzM0MmQ4OGFlZmQ0Y2I2Nzk3YjkwZDc1ODNmNWIzYjljYWMzZGQwIGxlZ2FjeS10cnVuaworNDU5MjEgMmM1ZTc0YzY0NWUyOGM5OGRjNjU4YjNiZWNjZjhlMjljYzYwNTA4ZiByZWxlYXNlMjQtbWFpbnQKKzQ1OTI0IGMzYTM2ZDQ1NmRlYTBiZjMzYjQ5NTZiZTRhYTU1ODkwMTNmOTNiNGYgbGVnYWN5LXRydW5rCis0NTkyNSAwZDg3OWJmZjI1ZjY2YzcyMGQ3ZDhhNzk1OTFmYWVmNzdlZDk1OTY2IGxlZ2FjeS10cnVuaworNDU5MjYgOTBkZDU3ZmNkMjRlMTJiYWQzMWQ2MzA2YWEzZDk0NTY5OTBjYWRhNyBsZWdhY3ktdHJ1bmsKKzQ1OTMxIDRjMzkxOGYyMzAzYjVhOTViZjdkYTgwNjVlZDg4MmM3OGZkNGY4NDUgbGVnYWN5LXRydW5rCis0NTkzMiBlNzAzNTI3NTI0NWJhZTM2NmYwNTVlY2RhOTNkMjc1YzlmNDc3ODIxIGxlZ2FjeS10cnVuaworNDU5MzQgZDAxNzAyNzZjNWRlZDMwNGJkNDQzOGYwOTYwMmNjOGY0NGRiNDM4OSBsZWdhY3ktdHJ1bmsKKzQ1OTM2IGRkZjAwNjlmNjFmOTJkN2VkNWQ4YzZiNjFkNjRmNjhiN2VlYzY3NTMgbGVnYWN5LXRydW5rCis0NTkzOCA4MjI1YWVlOTE5MDQ5NTA5M2FkODU4NjI3M2VjYmU5N2VkZjYzMDZhIGxlZ2FjeS10cnVuaworNDU5MzkgNmQxZTI0MGM5MThjMTJmMDc0Y2M4YTQzMzA4MWVjNDRlZGZmOTQ2OSBsZWdhY3ktdHJ1bmsKKzQ1OTQwIGI0NDg1OWYwYjMwOGJjODQ5NjEzMmIwNDRmNzc5NDYyZTNjY2U2MDAgbGVnYWN5LXRydW5rCis0NTk0MSBlYjQ4NzljMDg1YWFhODdmMmI5Njc5MGYxNDgxNGFhNzJhZTJjYzA3IGxlZ2FjeS10cnVuaworNDU5NDMgY2UwYjQ3ZDNlNWQxMGM3MDI5NmFlZDk4NTE5YzMyNDgwOTgyN2U2ZiBsZWdhY3ktdHJ1bmsKKzQ1OTQ0IDA2MDZiOWMwOGFjMjRmMWRkYjc4NTdlNTJmYzNmNmU4Zjk3ZTM0NDkgbGVnYWN5LXRydW5rCis0NTk0NSBmM2E1ZTE1M2MzMjk0OWI4MTE3MTY4MmJmZWU0ODVhZDIyMGJjYjA0IHJlbGVhc2UyNC1tYWludAorNDU5NDYgNGM5OTIyZDhkY2RkMTA3ZmMxODk4N2E4NmE2ZWEzYzA5YTk4NTQ1ZiByZWxlYXNlMjQtbWFpbnQKKzQ1OTQ3IGYxZTI0NDUyZGJiYTdiMWFlZDQ2OWJmYTA1ZTU4YmE4ZDA1ZmQzNWUgbGVnYWN5LXRydW5rCis0NTk0OCA4ZGEwOGQ4NWZjYjFlNjkyZTEwMjc3MjAwMDdlYmYyNjc2NGZhM2Y4IGxlZ2FjeS10cnVuaworNDU5NDkgOTdkYjNkOWIxNDU4MDA5MWM0M2U1ODFiNGI3OGM1N2M2NzQzNTUxZiBsZWdhY3ktdHJ1bmsKKzQ1OTUwIDhjODZjYThmMjY4Mjg4MDFkNzQ0OTYzNzBjMzJhNTgxNDY3Yjg0NjAgbGVnYWN5LXRydW5rCis0NTk1MSBlZWExNzZlNjdmMjI4ODRjNTU2OTY5N2Q4MTBhMmViNWI2NjYyMGFjIHJlbGVhc2UyNC1tYWludAorNDU5NTIgMTQ1NzMzNmQ0MzJmZTQ1OWJlYThjMDU0YjlkMTY3OTAzMzZjZGIxYyBsZWdhY3ktdHJ1bmsKKzQ1OTUzIDQyNzI4Y2IxOGVhMjU2MGMxZGE2NWQ3NmZlNTIxNDMzYTY3NDJiNzIgcmVsZWFzZTI0LW1haW50Cis0NTk1NCBmNjFjODkyY2FkYWM5Nzc0MTU0YTRkNDlmZDYxYzk0OGI3MGY4MTllIGxlZ2FjeS10cnVuaworNDU5NTUgN2ZlNDlkYmNiYmRhYjFjOTU5OWU0ZTVkNjU2Mzk3YjgyMmJiMjc2ZSBsZWdhY3ktdHJ1bmsKKzQ1OTU2IGYyNmZjM2FlZWY5NmNiNDc4ZWI4ZmViZWRlNWE3MzAwNGVkOTljYmQgbGVnYWN5LXRydW5rCis0NTk1NyA2NzAxMzA5ZWZhNzY4NmU2MDI3MjJjZDM1MTc0MzdhZGUxMWY2YjQwIGxlZ2FjeS10cnVuaworNDU5NTggODZhMDUxZDIyNjRkMmEyOTA1ODJiNGVmMDhhMjVmNTg1ZWVjMTE5NCByZWxlYXNlMjQtbWFpbnQKKzQ1OTYwIDlkNGZjYzM5MDIzNmU0YWI1ZDgxMDA1ZDUyZGJlY2E3NGEyZDMyYWQgbGVnYWN5LXRydW5rCis0NTk2MyA5YTYzN2JmNGRmNDI3YWJhM2FmY2EwNzYyYzMyMzFlMGQwZTY5OGQ2IGxlZ2FjeS10cnVuaworNDU5NjQgZTJlZjYwZmVjM2RhZDkxYTZkZjFlNDUxNGIwMjBlNTdmNTBhNzFhMiBsZWdhY3ktdHJ1bmsKKzQ1OTY1IDQwODJkMWExMTkxN2MxMGYyMDkzZDgyYTQ3ODhkZGJiY2UzNGVhMTkgbGVnYWN5LXRydW5rCis0NTk2NiA4ZjQwOGFhMmE3ZWZhNDdmNGE1YjA3MDQ2ZDVhZjRlMTA4NWU5NTUzIHJlbGVhc2UyNC1tYWludAorNDU5NjcgMmE5YjQ1ZGMzMTE0MWQ5ZWJiNDE1OWY3OWVkMDYzMDllYmFlNGJmYiBsZWdhY3ktdHJ1bmsKKzQ1OTY4IGIyMWJlOWQyMzQxYTkwNzI5NzQ4NTNmZGVkOTU4MDRhM2FlYWExM2QgbGVnYWN5LXRydW5rCis0NTk2OSA3ZmM5M2Q5NTMwYmY2MGRmODUyODI2MDJkMzU0NDAwNDI2ZTBhMWQzIGxlZ2FjeS10cnVuaworNDU5NzAgYzRhYTU2ZDdhNWMxMDYzOTQzNjc1YjkzOGRlNGFhNjcyZDY2M2EwYyBsZWdhY3ktdHJ1bmsKKzQ1OTc0IDVlMzU0M2I3ODMzN2JhMzc2YjIxYTljYWI4YTYyY2IyN2M5NTcyYjcgbGVnYWN5LXRydW5rCis0NTk3NSBiZjM3MzUyMDY4NzFiZDI3ZTlkYTFjMzhhY2UwODZkYzU3MDBiOWQ1IGxlZ2FjeS10cnVuaworNDU5NzYgMDc5NTM3MmE4NGFiZmUwZGM2MjViYzBhN2RlYmQzOTc3M2MxZjJlMyBsZWdhY3ktdHJ1bmsKKzQ1OTc3IDc4OTBmNmI5MmMxNDljZjliMTk2NGFhOTFlMGEyNWFkMzdjMzM3YzkgbGVnYWN5LXRydW5rCis0NTk3OCA0ZGUzMTU1ZTE5MmJjOTkwOGY2ZmRkYzhjODNmNmJkMTcyYjllYjU2IGxlZ2FjeS10cnVuaworNDU5NzkgY2Y3OGY5YzQ3OTBlZTEyOTlhOTRjZDNkNTEzNzgzZjg4ZWVkYWJkYSByZWxlYXNlMjQtbWFpbnQKKzQ1OTgwIDU3NGZmYzRkN2JmNmJjNzc3NDA1YmYwNDRhZjVjZGY2YmQxZDI2NTYgbGVnYWN5LXRydW5rCis0NTk4MSBiYjYwOTI5OTU0MDk5MzUxMzZhMDJjOWQwZTlmYjgzZTgxN2UxZGFlIGxlZ2FjeS10cnVuaworNDU5ODIgYTc5N2VmYjRlN2Y4M2ZlZjIzNTMzYmI0YzA0Nzc1ZTY3NTMxYjMzOCBsZWdhY3ktdHJ1bmsKKzQ1OTg3IDg1YzgyODg3ODE4OGIzNWRiZGUwNGRhNTc0YTgyOTYwY2NjYzE3ZWMgbGVnYWN5LXRydW5rCis0NTk4OCA4YjYwMTdjOTM3YWMyN2YwMDg5M2FhMWU5OTRhOGU3ZjE2NmI4ZGFkIGxlZ2FjeS10cnVuaworNDU5ODkgNTI1NjI0ZTk0ZTc4YWU3NmRhOGU4NTMyYWEzOTcxYzJiNGRiYzhmNyByZWxlYXNlMjQtbWFpbnQKKzQ1OTkwIDMyNDcyZWE1ZjNjZGI2MDhmMzY3MDJkZmJiMmRlZGIwMGUxNTliMmMgbGVnYWN5LXRydW5rCis0NTk5MiAzODBkYWQzOTU1OTkxNGY5ZDU0NzZhZmRmZDJmODA4NDQ5MDlhZWZlIGxlZ2FjeS10cnVuaworNDU5OTMgZWJkNTczMjEwZTI1MDM4Y2U0NGMwNTA2OGUxNjk4NWZmNWQ2YmI3YSBsZWdhY3ktdHJ1bmsKKzQ1OTk0IDRiZGYyN2JkNzNkMjJhZDVlNzc0YjI2MjBhN2EzZWU4M2Y0YTA5ODEgbGVnYWN5LXRydW5rCis0NTk5NSBjZGY4ZjUzMzQ0MjY5ZTkyMDRkNjU5YWQ3NjdjMTRiODFhNDhlZDIwIGxlZ2FjeS10cnVuaworNDU5OTYgNjc2NDkyYTkzYzhhN2JmN2RlYzU3YjFmNmE5OWQyMzVmMDdiMTczMCBsZWdhY3ktdHJ1bmsKKzQ1OTk3IGVmODJjNWQwMTQ2MDdmYmI1OGZjMGMxMGE3OTVmOTU1Yjg2NDU3YmUgbGVnYWN5LXRydW5rCis0NTk5OCBmMjUyYzZhZTBjNDI2NDM2MjZjOTQ2MjVhNWU3MDYwNzU0NTEyY2VkIGxlZ2FjeS10cnVuaworNDU5OTkgMjliNzM2ZjA3M2EzNWMzZmI4ZTQwNDAyMTY3ZmFiNTNmZmEwZjRiNCBsZWdhY3ktdHJ1bmsKKzQ2MDAwIGFiNzA0Yjk5ZTE1MGNmMDM3NTllN2VhNmVmZWJjZGNkNjgwMzNiZmYgbGVnYWN5LXRydW5rCis0NjAwMSBkODM1NWNjY2ZmNGFjZmMyOTdjMjYwODJmMmNjZDNmNjIxODcyY2E3IGxlZ2FjeS10cnVuaworNDYwMDIgZmVhNWQyZmQ5YjhhNDgzYzcxMTk2OGM4YjcxMGYwNWEzOTg0OTE5ZiByZWxlYXNlMjQtbWFpbnQKKzQ2MDAzIGU3ZDMwZDc1ZGFlN2MyYmZiNDA4NTg4NDA4MjYzNmU3NGY4NDEwM2MgbGVnYWN5LXRydW5rCis0NjAwNSBhZDhiNzZlOTkyNjEwNTJiMTkxNmQzMDI3M2M2NzNlODk1MTUyZDI3IGxlZ2FjeS10cnVuaworNDYwMDcgY2ExMDUwN2E2YWZiZjNjYzdiNmZiYzMyNzFhM2JhZWU2MThjNTQzNiBsZWdhY3ktdHJ1bmsKKzQ2MDA5IDBhZTRiYjc0ZTc4MWE4MzRjM2E0ZDkyM2IyNjFlZDBlNjdiYzhhY2UgbGVnYWN5LXRydW5rCis0NjAxMCAzMzc5YWQ2NmIwZTA3M2E0NWZjNzUxZWFiNTU5YzNkMDc1YjFjMTM2IGxlZ2FjeS10cnVuaworNDYwMTEgM2I1Y2Q3YzY2ZGEwOTA5Nzg3NWJkZDk3MDk5YzhkMzA3ZjI1MTQyYSByZWxlYXNlMjQtbWFpbnQKKzQ2MDEyIGQ2ZDg3OWFmMzZkMzRhNWM3MGEyMWFhYTc2NTZlY2E1NTgyZTYxYmIgbGVnYWN5LXRydW5rCis0NjAxNSBmODM4NWQ2YzhmNWVlMTYwNDUxZTc5ZWY5OTNlYmU5MWJlNzA1ZGVjIGxlZ2FjeS10cnVuaworNDYwMTYgNmNmNDY2Mjc2M2ExYTI5M2M0NjQ0NmFkYmM3MDEwODhhMjAwYWI5OSBsZWdhY3ktdHJ1bmsKKzQ2MDE3IDM2NTYzYjEzY2U3OTJhNzJiYjBmODBhZTBkNTNhNzBjZmYzM2ZhNjkgbGVnYWN5LXRydW5rCis0NjAxOCBmOTEzNTA1MDA4MzQ2ZjQzZDE2ZGNhZTI5MDlmMmE5Y2MwZTVkMGI2IGxlZ2FjeS10cnVuaworNDYwMTkgZDZlYTdkNDNlYmZjMGFiYzc2MDI2NDVlNGUyOGJhMjljZmViMTIyYSBsZWdhY3ktdHJ1bmsKKzQ2MDIwIGFjNTA2ZTJkZjA0ZDUzOTZhNDk2N2U0ZTc4MzBhOWY1NWY0YmM4ODggbGVnYWN5LXRydW5rCis0NjAyMSAyMDRlYzM4M2I0NDVhYmYzOWJmNzUyZGFlZDQwYmIyNzgwNmRlYTI0IGxlZ2FjeS10cnVuaworNDYwMjIgMzAxODhjNTIzYmM1NThkYWQwNzdiMzVkY2QyOGJjN2E5NTEyNmEyNSBsZWdhY3ktdHJ1bmsKKzQ2MDIzIGFhZTJmZjMzZTI3YzM4NTQwZGFhNzRlNzFiMzkyY2RjNzBhZTExNTggbGVnYWN5LXRydW5rCis0NjAyNCBhYjFkYzdlMjNiZmU1MTM5ZTU2NDU3MWU5NjYwYjc2OWVhYWRmZDU2IGxlZ2FjeS10cnVuaworNDYwMjUgN2NhYTZkMzNhNGM2Nzk4ZDQ4MDYzNDFhMmE3NzBlYzFjYWZhYzQzMyBsZWdhY3ktdHJ1bmsKKzQ2MDI2IGJmYjc2YWU4MmM5MTIxYmUwODNhMzBhOGJiZTI1NTBiMDJhYzA1ZGIgbGVnYWN5LXRydW5rCis0NjAyNyBjMmUzYjVjMzZkZTQ1MmJkMGU0ZTc0NzJhZGEzMDQxN2E2MDdmMmYxIGxlZ2FjeS10cnVuaworNDYwMjggZmEzYzRlYTk5ZDk1Y2E2ZWRlZDFhN2Y4ZTUzOWM3OTUzODY3ODNiOCBsZWdhY3ktdHJ1bmsKKzQ2MDI5IDBiNDczMTA0OWI3MWNlODkwYmJiZWQzMzlhNzk3NmJiOTJkM2YxNDcgbGVnYWN5LXRydW5rCis0NjAzMCAwN2FiYzYyODQ4OTlkZmExZjBhMzU0MGY0MDIwZjY0ZDM0ZjE5NDEyIGxlZ2FjeS10cnVuaworNDYwMzIgYjczZjI0ZTIxYjBhYjY0YzViYjlkOGQ4ZjE3OGFiYWZiMDhhMGJiMyBsZWdhY3ktdHJ1bmsKKzQ2MDMzIGIyODZlZDQ1NDM5ZDY2MGJlMGM5MDA3NzAyYjIzNGM3ZWRkMjk1YzAgbGVnYWN5LXRydW5rCis0NjAzNCBiMzVjZGE1NWQ2MGM2YTE5NzA5NTdhOGFhYjc4Zjk2ODliNDZkYjBmIGxlZ2FjeS10cnVuaworNDYwMzUgNzNjN2FkNWU4N2RlYmE3OWY4NmRjODA0ZDEzNjE5OTY2ZTEzZDRiZSBsZWdhY3ktdHJ1bmsKKzQ2MDM2IDZmZWFhNDJlZmY2OWY0ZDUxZjEyZWIyZTdiMjg5Njk2YjBhYTA4ODAgbGVnYWN5LXRydW5rCis0NjAzNyA0MmQ2YmFiODgwNzlmZjYwZGUyMWIxNzc2MGJmZDQzOGRmZjhmYTU3IGxlZ2FjeS10cnVuaworNDYwMzggODFlMzg1YTY0MWVmOGIwNzAzYWVlYjg1ZjdmOWQ2ZjYwMmQ2ZjQ0NSBsZWdhY3ktdHJ1bmsKKzQ2MDM5IDRjYjlkYzBkYzNmOWViZDFiNTg2YmY2MGVkOTk1ZDIyNGE3OTdjYmUgbGVnYWN5LXRydW5rCis0NjA0MCBjNjRjZDI3MWFjZWE5YWZjNDU2ZDU3N2E1ZDE0YjBkNmE3ZjcxYTgxIGxlZ2FjeS10cnVuaworNDYwNDEgYzA3YTVjMjMwNGYzZmNmOTY5NzBjNzFkZGFmZjUwYWRiZDM3OTBkNyBsZWdhY3ktdHJ1bmsKKzQ2MDQ0IDIxOTU5NzJmNzM5MWQ0ZWM0MTZiYzhjZDVhNjQxZTdhMTdkYWE1ZGYgbGVnYWN5LXRydW5rCis0NjA0NSAyNmZiNTYzODgxYzkzZDk4YmI1YjQwZDVkNTZiMjhmMTdjODY1YWNhIGxlZ2FjeS10cnVuaworNDYwNDYgY2JmMmQ1NjJlMzIyOTI5MTA0MGNhYTIwYWM4MmM5MDlkYTdlMjFmYiBsZWdhY3ktdHJ1bmsKKzQ2MDQ3IGM0OTA3ZDk5MGRiNWQ3MGE4ZTNkYjc1ODUyMjNmZWFkYTljM2IwNDMgbGVnYWN5LXRydW5rCis0NjA1MCAyODUxMTU1NGRmZjFmZjRlYmQ1MjlhNjQwMjk4NDUzYWRiY2RjZWFkIGxlZ2FjeS10cnVuaworNDYwNTIgYjBiYTRlODIyOWY3NzUxOTY0NzE0ZDc2NWFiNDA0MGFlYTNiMmQyZiBsZWdhY3ktdHJ1bmsKKzQ2MDU0IGFjY2RmMTEyNGJhMmVkZjNiZTI2MzJkZjc4MDE5ZmIxYTg0NGE3ODggbGVnYWN5LXRydW5rCis0NjA1NSAxMDk0MzdjNGNhYzQ3NjA5NzM4ODg4MTI1NjVmZWFiMTE1OTdmZTg0IGxlZ2FjeS10cnVuaworNDYwNTYgZjk2MTIxNzdkMDhkMWJiMzMxOTRjYWE2OWVjZjZlMTVkZmU4MjRiZSByZWxlYXNlMjQtbWFpbnQKKzQ2MDU3IGNjMDU1NmFkYzJiMGNiZjExN2M0YzVkM2QwYjQ1NTYyM2E1NzJiZjMgbGVnYWN5LXRydW5rCis0NjA1OCAyZDE4MmZjZmFiNmI5ODA0MGRmYWYwZjBhOGJlZGQ2YjQzMzZmZGNlIGxlZ2FjeS10cnVuaworNDYwNTkgYjRiZGJkN2IxZjVlZTc2MjcyOGNhOGExMGUwMzgxY2RlZjZhZGMwMyBsZWdhY3ktdHJ1bmsKKzQ2MDYxIGNhMWYxYzIxODllNzRmYWQwZGJhYjQ1ZDE2ZDE5ODEwMTk1YmI0YzQgbGVnYWN5LXRydW5rCis0NjA2MiBhNjllZTViYWQ5YjIzYzZlYjg2OWViNWI2NDNjMWVlNjMxOGQyNjc3IGxlZ2FjeS10cnVuaworNDYwNjMgZGFlMGU0YzM5MGU3NzIxNDViZmVkNWI4ODg2MmI0ZThiNDE4MmI2YSBsZWdhY3ktdHJ1bmsKKzQ2MDY0IGFhNjIwODU2ZThhM2Y3NWNhNjdmZmU5ZDkzYmRkZDA1NjFiNTE2ZTMgbGVnYWN5LXRydW5rCis0NjA2NSA5NTkxMGJjNjVmNmI5OTFmNDdjN2VjYzg2NzI5ZDlkOWE3MzRkNjliIGxlZ2FjeS10cnVuaworNDYwNjggMTA1NWQ2MjZlZDU5NGQ2MzhmMDQzMzEyNTcxZGE5YWMxYWQ5NzU1NiByam9uZXMtZnVuY2NhbGwKKzQ2MDY5IDg4MmI2MTJhNWZlOWNiN2EzNWM3OGZlZjM0MTA2ZGQzMTRjNTA1YjkgcmpvbmVzLWZ1bmNjYWxsCis0NjA3MCAyN2M4MDA1ODE3M2U4YTdhZjFhMmM2Zjg0MDBkODNiMmE0MjFiZTcxIGxlZ2FjeS10cnVuaworNDYwNzEgZmI0ZjBmZDdlYmE0ZWJlMzU3NThmZGRlYjI1ZTQzMDdiYzFlOGY4MiBsZWdhY3ktdHJ1bmsKKzQ2MDcyIDUxMjQxY2M5NTg4M2VkZWQ1YzhkNzVkM2Q4OTljYTRjNDI3MjEyMDcgc3JlaWZzY2huZWlkZXItNjRpbnRzCis0NjA3MyA3ZTE2ZmNjZTM0YTEzNTM5NTFhOTVjNmViMjQ3YjZjYzYxNGNlMDYxIGxlZ2FjeS10cnVuaworNDYwNzUgZDcxMGMyZGJhM2U4ODBjOTIwY2ZlODlkMDFmOTAxMzU4OGM5YzMwOSBsZWdhY3ktdHJ1bmsKKzQ2MDc2IGZlYjAwZGY5MTkyMjA2YzQ0NGM0MmNiMjk0NWM2NWE4Zjg3N2UyNzggbGVnYWN5LXRydW5rCis0NjA3NyBjY2VkODNhOTE1Nzc4YWY3ZDIwYTMyYTE1ODdmMjAzMWU4ODQ2MGJiIHJqb25lcy1mdW5jY2FsbAorNDYwNzkgNjA0YWY4NjdjNjVmYjgxMjUyNDgzZWY1ZGFlNGFkMjRhYTQ4YWNlYSBsZWdhY3ktdHJ1bmsKKzQ2MDgwIGNkMzRhMDg4MzA1MzZlM2IxNDQ3YTE1MzlmOWVkMzBhNTk5M2QxYTIgcmpvbmVzLWZ1bmNjYWxsCis0NjA4MSBlYzU0YzZkZjkwNDAyYmZlZjFiYTYxMDE5NTUzNjk4MGUyZjMyZWEzIHJqb25lcy1mdW5jY2FsbAorNDYwODIgMDJhMGM2OTI4YzUwYTdjMWM2OTIxYjlkMGVkMjlhNGY0YmEyOGE1YiBzdGV2ZS1ub3RyYWNpbmcKKzQ2MDg0IDAzNzNhMDc0MDA0YzJlYTlhNTQ5ZjJlZWYxYWE2MmQ4NTBkNTE3YzYgbGVnYWN5LXRydW5rCis0NjA4NSA1ZWFmOGI5NTg3ZDg2OTk0MWM0OGFiZDExNGQ3MDMyZmE2YmI2MDU1IGxlZ2FjeS10cnVuaworNDYwODYgODcyMDQyYTNiMTM0M2M5YTUyMmNkZTJmOGU4NWJmOGUxNmVkNTMzNyByam9uZXMtZnVuY2NhbGwKKzQ2MDg4IGZiODE2ZGZjZDAzMTU0MzBlMmJmZmU3NDUwM2IwYmI4MDAyYzFmMmUgcmpvbmVzLWZ1bmNjYWxsCis0NjA4OSA0Y2VhYmI1NDE0ZDVmMmEyNDMzZjJhMzg3NjQ5YWM2OTNmNTRmZDJlIHJqb25lcy1mdW5jY2FsbAorNDYwOTAgOWEyOGJmYTZmNzg3YzQ2MzczYThjYmJiMDBlZTc0Mjk1MWI2ODQ0MSBibGFpcy1ieXRlYnVmCis0NjA5MyAwMDQ1NmZjYTM3YzQyNDRjZGVkZGIyMWI4NDU1M2JmM2U3ZTcyZWUzIHJqb25lcy1mdW5jY2FsbAorNDYwOTQgMGRlOWE3ODlkZTM5MDRlNWM2OThhMDlhZGNhZDZiMWUyZWFlN2NmOSBsZWdhY3ktdHJ1bmsKKzQ2MDk1IDBiYTcxMWE0OTZlNmIwMDE5ZDAzNDQ0N2QyZmQ5YWU0ZDlkMjZmYTAgbGVnYWN5LXRydW5rCis0NjA5NiBhNjM3Yzc4YmYxMTk1ZWZjN2I1ZjRhOTQ3YmYxZTBmYjE4OTQ0MGEyIGxlZ2FjeS10cnVuaworNDYwOTggNmE2YzU0OTJiOWFkMmVhZDlhZWE4ZTMwMjM3Nzc3YWNmNDU4NzA0NSBsZWdhY3ktdHJ1bmsKKzQ2MTAxIGVlMjEzOTkzNWExZDNhZjUyZDUwMDliNzQ3MTkyODY0MDIyMTZmYzIgbGVnYWN5LXRydW5rCis0NjEwMyA1YjU4NzE5MGY0YzY4NTc3YTMyNTI5NjNjODU3NmM0ZjQzZjhjMTY0IGxlZ2FjeS10cnVuaworNDYxMDQgMzA3OGZkYjdjZjNkZjU1YzczZjQzYWZiNTMyNzk1MjdhOTkxMTZmZCBsZWdhY3ktdHJ1bmsKKzQ2MTA4IGI3YWFmMjFjNDc1NjQwM2YwMTgyOGE3OWJmY2IyNmI3MmZhM2FiOTQgbGVnYWN5LXRydW5rCis0NjEwOSA3NmJlZGY5ZWQyMmZmMjRlM2Q1NDM3YzY0YmY1MGIwZTk3NjAwZGY4IGxlZ2FjeS10cnVuaworNDYxMTAgY2EzNDUyMWJiMTNjMzgzN2Q2NTFmY2E5MGMxZGYwYzRiY2UyOTIyMiBsZWdhY3ktdHJ1bmsKKzQ2MTEzIDc1YmRkNDRmODVkY2Q0YWRhODZjZWIwOWUyZjcyYzQ0NzdjZjBlZGIgbGVnYWN5LXRydW5rCis0NjExNSA5YTkwNzUzZjZiZmJiMjFhOWQ3YmYyMTNlYzk3YjVmMTc0NDQ3MTI1IC4uL2JpcHBvbGl0by1uZXdzdHJ1Y3QKKzQ2MTE3IDY2N2EyY2FlNzllNjI2OTY1MTZiOTEyMDMxNmYwZjNmYjk2ZDRjNzYgLi4vYmlwcG9saXRvLW5ld3N0cnVjdAorNDYxMTggNTgzMTdkZjRkMzBiYmNiNDJkYWIwMzcyODk1NTg2NWI0NGQ0OGVhMyBibGFpcy1ieXRlYnVmCis0NjEyMyA0YjBmZjc4OGU5ZmRhZTBhN2RiYjZlZGNkNTI1NTI4N2ZkNGYzMjVjIHJ1bmFyLWxvbmdzbGljZS1icmFuY2gKKzQ2MTI1IDBmMGYwNDZhMjlmYmE0OGRjN2Y3ZTgzYWEzOGI0Y2NlOWRhODg5YWEgcmpvbmVzLWZ1bmNjYWxsCis0NjEyNiBmZjUwYWUxM2RiOWU2OGRmZjYwYjUzZDg1MmExNzE5MzQwNWRhN2ZkIHJqb25lcy1mdW5jY2FsbAorNDYxMjcgZWFhZTY5OTBlMmQxOGQyYThkYjQ3ZDY2YWIwOWI2MTk3ZTQ5NzhhNSByam9uZXMtZnVuY2NhbGwKKzQ2MTI4IDRiZDI5OWQwMGU0YzZmMTczY2JmZjM1ZGVmOTM4MGY0OTM5NGU5ZTggbGVnYWN5LXRydW5rCis0NjEyOSBiZjVmYjZlNzUyN2MyZmZlODUxYTk5ZDUyMGRjZWJmMzU3MWFiYzg4IGxlZ2FjeS10cnVuaworNDYxMzAgNDk1YTM0ZTU0ZDYwYTUyNzg1MmQ4NzA0YTQ0YWZhZDM5MjBmYmFmMyBsZWdhY3ktdHJ1bmsKKzQ2MTMxIDllZmNjZjU2ZDRlNzFmNGQ0NzNlZjAyYjQ4M2JkZjFkM2Y0NWQ5YmUgbGVnYWN5LXRydW5rCis0NjEzMiBhZjQ2YzdlZDA1ZWI3OTFiMWU0MzY1Yjc4MDgyNDJlYmZiZTI2ODQ0IGxlZ2FjeS10cnVuaworNDYxMzMgOWZkZDQzNDIxNmVmODJlZGIyZWY3YTVmYTdjMjY3ZjhjZjFlYmRjMiBsZWdhY3ktdHJ1bmsKKzQ2MTM0IDg5NWRhNDI0ODBmMWMzNTczNzA4YWMxMjg4ZGRmNDZmOGMxZTQ1OWMgbGVnYWN5LXRydW5rCis0NjEzNiBjMWNlMGI4MzE2MzY3MDNkMTNkODEwN2VlNmQ0MDUzMWMwZTRmYWNjIGxlZ2FjeS10cnVuaworNDYxNDEgMjc4ODJhOGU0M2E5ZTg5YjEwMzNiMjJhMzczMTdhMDRhZWU5ZTk4ZCBsZWdhY3ktdHJ1bmsKKzQ2MTQyIDZiNzlmZmZiYmUxZjA0MzNkMWJkNWFjMTUwZTg0ZTY0NTkzNTViYTIgbGVnYWN5LXRydW5rCis0NjE0NCBlZmI3ZTg3MjRlZWZhNmNlNzYwNDdhYTk1YWY0NGRjY2YxZmQxNWY1IGxlZ2FjeS10cnVuaworNDYxNDggMzM2MzFiNmIwODAxNDc1OTZlNjIwNWY1M2ViOWE5OWE2ODQxYTg2YiBsZWdhY3ktdHJ1bmsKKzQ2MTQ5IDdkODJjZGVkOGFiMTUyZWIxOTU0OGZmOTk5ODkzNzY2MTg1MDY0M2UgbGVnYWN5LXRydW5rCis0NjE1MCA3NGM4MmViYzRlNDQ5OTFjYjVhNWFkNzBlYTk0NzVmMzUzZjQ1ZjRkIGxlZ2FjeS10cnVuaworNDYxNTEgY2Y1YTkwNTdlZDNhOTIwNGViODc1NmRiOWM0NGQyMzViYTcwYWYzOSBsZWdhY3ktdHJ1bmsKKzQ2MTUyIGUwN2RjMTM0OGRhZDlkNGM0NDdmMmYyMjAxZWQ0Yzk3ZjUyN2QyZmEgbGVnYWN5LXRydW5rCis0NjE1MyBiOGJlZjVhMDdkZjZjY2ZiNTIxMmRlN2ZiN2MxMTI3ZmVjMDkwOWU4IGxlZ2FjeS10cnVuaworNDYxNTUgMWRjNTY1N2YxNzQ1M2M3MGE3OGJlNmNhNzZlMjYzZjM0ZGNkODU1YyBsZWdhY3ktdHJ1bmsKKzQ2MTU2IDMxNGQ2NjZjN2FkYmQxZDdlYzI0OThiMzE2MGZkMDc4NjE4YzkzODkgbGVnYWN5LXRydW5rCis0NjE1NyBkZTlmMWExNDA2MTE5MzcyZGY5ZWYyM2E0MjNkOGI2MmEwODY5NWU3IGxlZ2FjeS10cnVuaworNDYxNTggOWFlNjliY2FiOWY3MjIxN2JiYzE0ZWE5ZjllNTM4MzgxZjM3NjEwOSBsZWdhY3ktdHJ1bmsKKzQ2MTU5IDA2OTFmM2ZiMzljYWExZDBkOWE0OGQ0ZWVlNGVhODdjMTVjNjgxNzggYmxhaXMtYnl0ZWJ1ZgorNDYxNjEgMmQ1NWU5NzkwMDM1OGJiN2I0NTMzZGQwOTY3NzVkNzZjOTdmNmVkNCBsZWdhY3ktdHJ1bmsKKzQ2MTYyIDM1N2I1NDAzZTgxYWQzYzlmNjM3MjMzNzY5ZTljYTdhNGY2MWFkZmEgYmxhaXMtYnl0ZWJ1ZgorNDYxNjQgMDQyZWQ2ZjgwODQ3Y2MwNGJiM2E0MDEwMzNhMzdmZmMzOWQzZGE5ZCBibGFpcy1ieXRlYnVmCis0NjE2NSBhNTg5Yjc0NDE1YzAyMmY2ZTE2ZTcwMTRkYzZmNjNhNWE1NDIwODEzIGJsYWlzLWJ5dGVidWYKKzQ2MTcwIDg5YjJjYTUxMjMwNzIzZTJhOGVhMzBkMTY0NDJhZTBhMDJjMTM2OTAgcmpvbmVzLXByZWFsbG9jCis0NjE3MSAwYTk1NGY0ZTNlMzZhMmFjYzk3NjdiZDBmZDIxMTA5NDNlYzEwNTQ0IHJqb25lcy1wcmVhbGxvYworNDYxNzMgNDNiMTQ3NGI1MTJiYmI0Y2YwMDhmYWRiOGZjM2ZhMTk5Y2QzY2U0YSBsZWdhY3ktdHJ1bmsKKzQ2MTc1IDZkYTMxYzQ5ZWIwYTY4NjM2MWUxYTU2NWNiODg4ZjM3NDViYTZjMGQgcmpvbmVzLXByZWFsbG9jCis0NjE3NiAyMjk5NWMxMDllZmQ2N2U1YzA2NmVjYTY5Y2YzY2EwZDQ4NGYzYWQxIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYxNzcgOGFkOWUxNDQ4OWZmZjFmMWI1NThlMWI4YzQ0NmFjODlmNDVjY2QyZiBibGFpcy1ieXRlYnVmCis0NjE4MiBiNWIyNTY5NjZmZTkyYjQxNWI3NGI3MDMzZDg4ODU0YjBmYmY0NjMyIGxlZ2FjeS10cnVuaworNDYxODQgYjgyNWU2MjI3MzY2NmU2ZDJiMTEzOGQ1OTgyZTA5Zjc4MzllMDMzNyBsZWdhY3ktdHJ1bmsKKzQ2MTg2IGMyNmI5ZmRiNjVmYjNiNTc2YjYzNWQ1MzE3YjJmOWE0MTU3Mzg2YTMgYmxhaXMtYnl0ZWJ1ZgorNDYxODkgMjYwZDVhNmNlMzBmNGUyNTY5YWI4MDE3YzM2ODc3NTcxMmQxZmFiZSBsZWdhY3ktdHJ1bmsKKzQ2MTkwIGZlZjQ5NmFkN2Y2Y2QyYmRjMWYyNWQ3YWMwNWI0Nzk5OWJmZDNlN2UgYmxhaXMtYnl0ZWJ1ZgorNDYxOTIgNTFkNmUyNzE4MjQzNjhlZWVhZjJiYmM2ODQ3NzM5M2NjZmYwZTQwOCBibGFpcy1ieXRlYnVmCis0NjE5MyBhYWNlMzE0OGY3ZWJhZjAyMjkyNmQzZDI3ODc4ZWFjMWM2YTA5MjQ1IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYxOTQgM2NmYWUzYTBlNjk1OTEwNzFkMTc0YjE0YzJiYWEyNzMxODlmMzUwYyBibGFpcy1ieXRlYnVmCis0NjE5NSBmN2E3NzQyYWVmODNiODU0MjMwNzRlYmUxOWVlMGNiZDExMWExYmE1IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYxOTcgNThkMjBmZWI2ZTAzOWJiYTZmMTYxODkzN2Y4ZTM4MGUwZWE3OTY0OCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MTk4IDY4NjBjMzZmN2RiNzUxNGY1Y2FkOWJlMzU1YjgyOGVkODY3Mjg4MzYgbGVnYWN5LXRydW5rCis0NjE5OSA5MWZlMWIwYWRiZjI2MTRmOWViMGJhOTc0ZjY4MWI0MjIxNTNkN2JmIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYyMDAgMzJiYTNhMGM2MDQwOTM4M2Q4ZGQzMzQ4NmIxOWVmNzE2MWMwZTA2NCBsZWdhY3ktdHJ1bmsKKzQ2MjAxIGIyNDkxZmQwYTRkYzZjNjdkYjRiMjlhYTVhZDlhZjIzMTQyYjg5YjkgbGVnYWN5LXRydW5rCis0NjIwMiAxYzVlZTk2MzFjNmI4Yjg5NjZiZTg1NzlkZTE1OWU2NWIwOWIyMzY1IGxlZ2FjeS10cnVuaworNDYyMDMgODhjYzdlNGYwMWZmNGQwZjU3ZjNjMmEwYWQxOThhOTZkN2NlNjNkYiBsZWdhY3ktdHJ1bmsKKzQ2MjA0IGJjZWE3NGIzNWQxZmVkZTBmNzkxN2MxNDNhM2NiZGE1NTFkY2FjMWUgbGVnYWN5LXRydW5rCis0NjIwNSA2NjMyMmZjYTkxYjQxYmJiYzMyNDNlYzBlYjNiMzdjMTA5ZjJhZGEzIGxlZ2FjeS10cnVuaworNDYyMDYgMDQzZTI5YTFlMzk4NWVjY2IwMTAxZmE2NTNkZTZkN2JhY2IxNGFkZiByZWxlYXNlMjQtbWFpbnQKKzQ2MjA3IDQ1Nzg4MTI4YTFiMTU0NDllYTZiMmZjYWJkODRiMDg3N2MxMmNlMTAgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjIwOCA2OTgxOThjYWJiYzVhYjc3NzUxYjU5MDljMTM5ZmQyOGRmOTQ2YmZmIGxlZ2FjeS10cnVuaworNDYyMDkgOGM1MTQ2YzUxZTJkZjAwZThkMjc4ZDEwZjBiNGNmZDk4OGM0YzBiYyBsZWdhY3ktdHJ1bmsKKzQ2MjEwIDc1ZTFjZDIyYjU2YmRkYzRhZjBlODAwM2Y4NDJhMGFjNDJjZmMwMjAgbGVnYWN5LXRydW5rCis0NjIxMSAzZGU3MDY0ZGZhNTY0MTRhYzQ1Yzk4MDhjNTM1MDQ1ZmFmYmMyNmNlIGxlZ2FjeS10cnVuaworNDYyMTIgOWJiNGMxOWU1NjEzNGM2ODkxYjkwZThhZDQ4YWI3ZTA5NDU2OWI5NCBibGFpcy1ieXRlYnVmCis0NjIxNCBhZDFlMjQzOGNmYWE1YmY0NWU0OGM5OTQ5NmU4ZWIwNDQ2NTk0NTc3IGxlZ2FjeS10cnVuaworNDYyMTUgN2IzZDRhODFlOTRkZTVhYWFhYzU2ZGQ4M2M3NGVhMjc1ZmJiNTAzMyBibGFpcy1ieXRlYnVmCis0NjIxNiBlMTViMTRjN2ZhMTRkNWM0NDAwNTJhZjExMDVjYjE5MTgxYWVlOWNmIGxlZ2FjeS10cnVuaworNDYyMTcgNjg4ZjI1NzU3MTA0MzMxM2ZhMTBhZjgwOGNiMWViZTA4ZGZjZDE5ZSBsZWdhY3ktdHJ1bmsKKzQ2MjE5IDQxNzY4ZGUxN2VhZDkwOTJjNDU0YWRmOTkxMGY5ZDhkYmI4NTJhYzcgbGVnYWN5LXRydW5rCis0NjIyMCA0YzBjM2VjZmZjYWMyYjMyMTg0M2IxOTc4OTRmMzAxMzMyM2ZmMjJmIGxlZ2FjeS10cnVuaworNDYyMjEgYmE3MTNkMzFkMDBjNjY5OTIxYjM3MzNjZjRjOWVkMDUxMTIwOGFhYSBsZWdhY3ktdHJ1bmsKKzQ2MjIyIDI5Y2NkNzcxMDQxM2ZlZmQ5ZWE2OTA4MjBhYmI0ZWIwNDAzYjMyZWEgbGVnYWN5LXRydW5rCis0NjIyMyA5ODZiZWUxNmJiNDQ1MWNiMWQ4MjM1YWI3ZWI1ZWM3OGUzNTBiNzA3IGxlZ2FjeS10cnVuaworNDYyMjQgYWU2YmJmMmYyYTQxMmI2YzQxZDE1NDRjMjBlNDI0MzczZWQ3ZDQ5NSBsZWdhY3ktdHJ1bmsKKzQ2MjI2IDQxODA5NDA2YTM1ZWJhMDRmOTNhZmI0ZjQ1NGFjYzA1ZWM5ODQxMGEgbGVnYWN5LXRydW5rCis0NjIyNyBkY2NiY2JiZDY3MjA4YTA3ODIzMGVjYzhhODAzYThkOTQ5MDYxMWVhIGxlZ2FjeS10cnVuaworNDYyMjkgOWMwOGE3YmRiYzMxMGE3NzQ2MDg0NTk5ZjZkY2M1OGVjZTNhYzBmZCBsZWdhY3ktdHJ1bmsKKzQ2MjMwIDE3ZWFhOGI1N2UwNTJmNTE0NjVjYjMzMWZhYmZjM2M1YTMzN2U3MWMgbGVnYWN5LXRydW5rCis0NjIzMSAwNTQ5NmRlZWJhNjRiZTcwNDAxMGJjNjFmM2M4ZTVkZTJmZDBiNWFlIGxlZ2FjeS10cnVuaworNDYyMzIgNmZjMWRjMDg2NDU5NDAyNTk3Zjc4MzAxYjk5NGQwZDlmNWFiNzE0MSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjMzIDNlNmQ3NzU1MmJlMzAyYmVhYzI1NjJkNGQ1Mjc5NzEyZTA0ZDY4ZjUgbGVnYWN5LXRydW5rCis0NjIzNCBjNWQ2MTk2NWNhZDQyMTlhOGY3YTAyY2UzYWIyZTNjYWNmN2Q4N2VhIGxlZ2FjeS10cnVuaworNDYyMzUgNWE2MzM2OTA1NmE3ZmU1ZmMzYzBiNWZmMGRlMTA4N2IxOTY1MDcxOCBsZWdhY3ktdHJ1bmsKKzQ2MjM2IGYyNzlkMDMxZjBjZWEzY2Y4YmM0ZjEwMThhZDlmYTlkMjVlOGQ4NjYgYmxhaXMtYnl0ZWJ1ZgorNDYyMzggNzRiZWIxODlmZDdlZTQ4NGNmYzJkMjMzOGFlYTI0OGFiZGJmNWViNiBsZWdhY3ktdHJ1bmsKKzQ2MjM5IDJhYTk0MDkzNTFkNjFmOTMxN2NlMTFkYTc3NTJlMDk2NWQ3MmRiM2IgbGVnYWN5LXRydW5rCis0NjI0MCA4NTBkNGY3NzE3YjhkZWEwZjliZGY1OTAwZTUwMjNjMTUwYWQ2Y2EyIGxlZ2FjeS10cnVuaworNDYyNDEgYzlkYzMwMGVlZTY4MmFjZTA1Zjc3YjQ4OGQ5MDM1MzY0NmVkZmZmMCBsZWdhY3ktdHJ1bmsKKzQ2MjQyIDA1MzI0YWE0NDRiZGUxYzBiNmYwZDI5OTRiYTNmZjUxODU1MThmODIgbGVnYWN5LXRydW5rCis0NjI0MyA0YThjOWY5YjY2ZTY4ZWM5NzA1YzIzZGJhNWFlYzBhNDlmYmQ3MGRhIGxlZ2FjeS10cnVuaworNDYyNDQgMWZkZjI5YTg4ZjBlZTBiMTNiMjg5MjFhNWZiZmIxNzUxYjVmMGNmMyBsZWdhY3ktdHJ1bmsKKzQ2MjQ1IDkxYzZjOTQ0OTBiMWM1NjQ0ZGFiNjhmODllNGM0MWNlNDMzOGU1NjcgbGVnYWN5LXRydW5rCis0NjI0NiAyZjE2ZTI3MTUyMjM1YjdmZjNjYjg3YjE1MTEzNTVmNzg1N2M1YTI3IGxlZ2FjeS10cnVuaworNDYyNDcgZWNmMmJmNDE4MmFkZjQ5MzNmMTJkMDY0Yzg1MWI4NmY1YTk3MDEwZCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjQ4IDY4YTM0OGM5ODY4ZGI4YjM1ODYxNWJiNDA0NzFiYWNhMjVhNTAyMWMgbGVnYWN5LXRydW5rCis0NjI0OSBjMDA2YzI3MjExNmZmYWE2YTgzMjdhMzljNGEwM2ZkYjRhODI4YzA1IGxlZ2FjeS10cnVuaworNDYyNTEgYzM1MDhhOTQxNTY4MzY1OTZhMDNlOGE5MDkzMjY0Y2MxZGNkODhiYyBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjUyIGUxNmI0MTU3Njg2Y2I5YTQ4ODg1MmQ0NDgwZjIyNzUyNjE0ZjA5M2IgbGVnYWN5LXRydW5rCis0NjI1MyAzZDQ3N2QxNTg0MDFjNzFiMTM4NDNkNzA3ZmZhNmRiZGMxZmY3Nzc5IGxlZ2FjeS10cnVuaworNDYyNTQgZWEwYWQ0ZDRmZjhlZGYwYWNiOTg1MTllMmZlNWQzMGUxNWRlMmU4YSBsZWdhY3ktdHJ1bmsKKzQ2MjU1IGM3N2RhMjczNmZiMjY1ZDZhNDQ1N2FiMGMyY2U4ODUzNjg3NDE3NjQgbGVnYWN5LXRydW5rCis0NjI1NiAzNTg3ZWUzMTNiMDA2MTAyYWU2MTBhNTk3ZTg0ZTRlNzgyOTZhMGM1IGxlZ2FjeS10cnVuaworNDYyNTcgMDRmMzllY2JjNzNjNzZhNTVhZThjYzFlZjViNTNkZjViN2VmZDBjMyBsZWdhY3ktdHJ1bmsKKzQ2MjU4IGQzM2Q4YThiNTQ1ZWVlYjE1MGQxYjRjNTc4YzgwZTkzMmY0NGZiNDcgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjI1OSA4YTU4YWE0MGRjYzA1ZDU4MDQxYTZiNGJlNmYzOGQxNjQxYjMwZTJmIGxlZ2FjeS10cnVuaworNDYyNjAgNTU2NjIwY2Q3YjFkZTNjMTE4NjUxNTJkNzU5ZGIwMGNlYTU0NTNkMCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjYxIDlmODg0ZDM0YTBlY2Q0Yjk5ZTcyMjhkNTk4ZjViMjk1N2RhODQ2OTkgbGVnYWN5LXRydW5rCis0NjI2MiBlOWViNTI2YjcxMTE1ODBkMTgzZDhkZmQ3ZmNlZDhiMmJlNTZmYWRiIGxlZ2FjeS10cnVuaworNDYyNjMgY2VlYmU2Y2M0NTcwNGM4YzE4YmZhYTRkN2ExZDk4YTM4NWRlNDk3NSBsZWdhY3ktdHJ1bmsKKzQ2MjY0IGFiMDIyMTgxMTc3MTdiYjYxYjBhNzZjNGM1Yjg2NjFiYTA1MzMyYjUgbGVnYWN5LXRydW5rCis0NjI2NSAwODcyODcwMDk2NThlZWM3MDk5NTcyYWY1YjdlMjNkZjdkOWRiZGE4IGxlZ2FjeS10cnVuaworNDYyNjYgN2E2YWY0YTE0M2M2MmJjNWY2ZTRmZjg5MGM5OTcyMmU1ZTAwMzQ2NCBsZWdhY3ktdHJ1bmsKKzQ2MjY3IDhhOWNkOTk5NTM1ZDE3OTc0NjBjZTZjMDU2MGY4YjhjYzdhMjQzYTIgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjI2OCBlYjIzN2EzN2VhMDJkZWIzMzBlMmZlNWUxZjQzNzI5NzJiMDg5MDc2IGxlZ2FjeS10cnVuaworNDYyNjkgZGRjMjAwYWZkZTFhODMxYjFjMmJkYTczZjZhMTM2YTUyNDczZTkxYSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjcwIGQ2ZDU1M2I5ZDQ2OTc3ZmJkY2NlZDAxYWUyMTA0M2U1MWRmMDdjNzUgYmxhaXMtYnl0ZWJ1ZgorNDYyNzEgNDZkNzdiYjMyZmIwZGE4YjQxYTY1YzFiMjUwMWI0ZmExMWNlMTliYyBsZWdhY3ktdHJ1bmsKKzQ2MjcyIDVhMTQ3MzY1NTI3ZTUzODQ1YTBmN2FjMWEzY2Y2ZWU2OTgwOTBiYWIgbGVnYWN5LXRydW5rCis0NjI3MyBmOTMzMmFkNDI4N2E3ZjZkODYyNGQ5MDg3Y2IwMjE5MDFkNDczNWFjIGxlZ2FjeS10cnVuaworNDYyNzQgODJiNjgwODQ2ZGY4ODk3ZmY3MjhiY2U3ZDZlNjVkODAzZDQ5YjM4MyBsZWdhY3ktdHJ1bmsKKzQ2Mjc1IDgxYjY0MWRhNWM3OTUyYTdlMDQwNWY4M2I5NmU5YWYwMWExZTQwNzQgcmVsZWFzZTI0LW1haW50Cis0NjI3NiAxMDM1YTJiMzFlNmRmMjYxNmM5YTQyMDhlZWIxYWE5NGUwZmFkZjZkIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYyNzggOTU4ZjkxNjg0MjA5ZDAwYzMzZDdmZWZhNjhjZTQ2ZTlkMDNhOWNlZiBsZWdhY3ktdHJ1bmsKKzQ2MjgwIDE2NzBmZjcyNmU4ZmQ3ZDc0NzgyODYxNWYxMDA5YTI3NDUyNWM0NzUgbGVnYWN5LXRydW5rCis0NjI4MSAzMDkxYTc1ZWI1NjBjNTZkZTc3Zjg2OWZmZjdmZjE4MTkxNjk3MDJiIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYyODMgZGQ0MTczMWRlZTZkNGJkMmM4ZDA1YWI1NGU0NDQ1MTQ4ZDI1MmFjNSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2Mjg0IDJmNGZiNjQxNGU4NzIwOGFiYzE4MzFkMzVhNjU2YjAyYjU3MTc4ZTUgYmxhaXMtYnl0ZWJ1ZgorNDYyODUgOGE5OWNkZWYwYzk0YWNiNTgxZjUzZWIyNWNjMjFmMTRiOTZmNTliOCBsZWdhY3ktdHJ1bmsKKzQ2Mjg2IGE2NTRkNjFkMzZkNTMxOTY3MWIxMGIwYjFlNTIxODkxYjE3OWNlNzQgbGVnYWN5LXRydW5rCis0NjI4NyA1MzgyYWFmM2EwZGFjNWZjZjJlNTg5ZDFmNDFmZmYwYjI5OTM2ZTZlIGxlZ2FjeS10cnVuaworNDYyODggYzhlNGIzYjM5Nzc0MzA1ZmFjOGE3YTUxMzk3NzZkOTdkOWEzZDVmZiBsZWdhY3ktdHJ1bmsKKzQ2Mjg5IDgzNWVhNTk4YTQwNjBiYTgxYjk4OGRjMTYzM2RlOTlkYzI5MjYyMGYgYmxhaXMtYnl0ZWJ1ZgorNDYyOTAgNjYxMGQ0YmU4ZmJkOTAyNTA1NDAzZDkyYzBiZmMzNjAwNzkzNjAzZSBsZWdhY3ktdHJ1bmsKKzQ2MjkxIGZlNjUzZTIyNDg4YzlhMGIwODMzMWQwNTRiOGYwZTk2MTBhNGIwNjEgbGVnYWN5LXRydW5rCis0NjI5MiA5MmIwZmM1NGQyMzAwZDA1OGQwMmJlNzA0ZTJiNzAyZmU5ZTcxNDgyIGxlZ2FjeS10cnVuaworNDYyOTMgNmQ4NjE1ZjlmMWNjYTk3ODM4NWI3OTYzOGJjODEyMzQ1YmZjMjI3NiBsZWdhY3ktdHJ1bmsKKzQ2Mjk0IDhkMjhlNjNlOGYyMTY2NDgzZjAwMmU1ZGY2NDk2YTg1YjFjZTk2ZmIgbGVnYWN5LXRydW5rCis0NjI5NSBhZDJlNGRlNDdkMDk2MzY1ZGFlZDdlMTRjZmJlZTRlMTdjMDg5YzgzIGxlZ2FjeS10cnVuaworNDYyOTYgMmY0NWFkNjZjZDM2NTA1OGIwMGRmZDIxZjY2ZDY0MDBiNzQ4ZTk0MiBibGFpcy1ieXRlYnVmCis0NjI5NyAzYmVmMjQwODZhY2U1MWRhMzJhMjFlNjU1ZmFlNTUyNWVmZGRmNzdmIGxlZ2FjeS10cnVuaworNDYyOTggYjdiNzYxNWVhNWY1ZjIwNzNmNGZjMTJmODIxMGY2ZTBlNzNkNGNlZSBsZWdhY3ktdHJ1bmsKKzQ2Mjk5IDlmN2IxYjdhZGYwMTBlMmZiZmRjNTc4ZjgxMjA4NzExNDFkMDRmMzcgbGVnYWN5LXRydW5rCis0NjMwMCAzNmNkNGE0YWI4ZjdlOGY3MmJhODAyMGNiNTdkMGE4MjVhOGExODU3IGxlZ2FjeS10cnVuaworNDYzMDEgYzA3YTk2ZjY5ODM5NjJiNGIyYTUxODVmMWIyNGE4ZmRmZTA5OTQ2ZSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzAyIDk1NzcyN2YyZmYwOWYzOTM3MzcyNzE3NWQ5MmUzMThkMzg4Y2U0YzQgbGVnYWN5LXRydW5rCis0NjMwMyA5ODgzNzkwMTQ0NzczMDgyYjBjNWYxNWYxOTg3NWEwZDMzZjUyYjU3IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzMDQgMzc4YmE2NzdiNTc5NzA3NmZkMzQ4NTBkZDI3MmRjYTU1YjkyOTI0MCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzA1IDc4YzYwZTU5OWFmZGI3YmFkZjYxYTQ4NDNhOGM4MWU1NjVlMGI3MjAgbGVnYWN5LXRydW5rCis0NjMwNiAzMWI5Yzc4YTA3ZjM2OWZkMWRjMTBlZTc2ODgyYWJhMDJhZTFjYTMyIGJpcHBvbGl0by1uZXdzdHJ1Y3QKKzQ2MzA3IDA1YmJiZGRmY2UzZjdhMjdiMjUxNTM5ZGVkZDdhOTdkYzY0N2MzOWYgbGVnYWN5LXRydW5rCis0NjMwOCBiZTc0MTViMGEzMTg1MWEzYzkzYmJiY2YwNGJiYWI2MTIwMTVhMmM3IGxlZ2FjeS10cnVuaworNDYzMDkgZTNlZTNlYjE4Njc4ZGM2ZTgzN2YzYmVlNmI1OGRmYmUwYmM4NjU1YyBsZWdhY3ktdHJ1bmsKKzQ2MzEwIGQyZGY0YTM1OWUzNTJhZjc3YzBlMzgzMTc1ZmY1YmQ5ZDY3YWNjNDIgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjMxMSBhNGVlNDU5ZmYyODhhNDJlODkyZWRkODBhOTM1NDNmNjA5ODUxOWRlIGJsYWlzLWJ5dGVidWYKKzQ2MzEzIDg4ZTlkODY3NzAwNjZlY2QwZmJiMWNhOTNmMGIwMTkyOTZhMWI2MmYgbGVnYWN5LXRydW5rCis0NjMxNCA0NTRiZGU3ZTQxNmU0OWJhN2JiMGU5N2JiN2RjYzBiMzJiNzNhYTJkIGxlZ2FjeS10cnVuaworNDYzMTUgODkwZjYxNjFjOThhNWE5MTU3ZjA4NDMxNWJhMjAwYmEyOTkyNDg0NSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzE2IDY1MzNkOGFlMWZkOTUxMmVmMTdiOTRlYTg5MDFiNjAzZGMzOGE5MmEgbGVnYWN5LXRydW5rCis0NjMxNyBhMDQzYzVkNzFlYWExOGIzNmFmZWE1MGM3NzdhZjhhZTY1M2YyZDRiIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzMTggNzZiMzAxYWM0YTVlNjM0MTg2Zjg0ZGVmZmQ0ZWUxZjRiODEyNTQwMyBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzE5IDhhMzhkYThlMTI4ZjdkYmM2NDA4OTNlNTQ0MmM5M2QzMDFlZDQ2NzAgcmVsZWFzZTI0LW1haW50Cis0NjMyMCA1MjEzYjYwNjUxOTc5NmU5MDBlNTViNzI4MWY2Y2M4NDM5MzQ3YmFjIGxlZ2FjeS10cnVuaworNDYzMjUgMWExMTMwNTA2OTBiNzQxZjMyNzZjNzFkZTkwNGUxZWM2YTJiOTk2YSBsZWdhY3ktdHJ1bmsKKzQ2MzI3IGMwMDgyNzA1ZjJmMjM0M2EyNDkyOTliNGU0MTAwYWRmNWFmZTI3NjggbGVnYWN5LXRydW5rCis0NjMyOCBmNzQzZTNjNmI5YmYxNmE4Njc3MGFlZWRiNTBhMTBkMTQ3NDg2NTA2IGxlZ2FjeS10cnVuaworNDYzMjkgMmVkNGI3NTdjMGNmMjYzZDg5ZWZlMjM3NTc4MDc0Mzg5NDE2NDcwNiBsZWdhY3ktdHJ1bmsKKzQ2MzMwIDc5YzhkY2MyNzdhNWYyNjNlM2JhY2Q4OWFlOTE5ZTFiOWE5NmFlM2YgbGVnYWN5LXRydW5rCis0NjMzMSAxM2UwZjcxYTcwZDU0NGU0YWE5YTQ3MTI2NDMwODBmMTQ0OWJhNjM4IGxlZ2FjeS10cnVuaworNDYzMzIgMDlkMmU5NjhkMDc0NzI5MzI5NWE2NzNhMDFkZThmZDVlYzY2ODViMiBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzMzIGZhOThiOGRmMGZlMjE3Njg0MTU0OGVmZDI3MzUxYWJkZGIyOGY0NGMgbGVnYWN5LXRydW5rCis0NjMzNSBhNGU0MzNjMTM2ZGE0M2IwMThkNzVhYjIxMmYzYTUyZmMyOGU0NWE0IGxlZ2FjeS10cnVuaworNDYzMzYgMzFkNDIxNTQ4MGM2OTk5NTkwN2JmN2M0Y2NjZTNiMDMyYzk5NzUyMSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzM3IGQyYjM4YTYxZGU3MTM1MzRlOWEwMjgzMTllMjkzZmVmZjY3MzllNDggc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjM0MCBiZWY2YWFiNWY5YjNhM2QwMThhNTJhNTBjMjhhMzdlM2ZmNjNmZjUwIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzNDEgYzBkYmZlYThjMGZiNWI5MDg0Njc3ZWIzMDQzN2I1YmUxYTQzNDQ2ZCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzQyIGQxMDliMDgxZDQ0YmU1NDA2ODllMDE5YWZjN2I3OTIyYTIzZDRkN2Ygc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjM0MyBjMTRlMGM4OWE4YjBkMDdlNTgwYmU2YTRmMjAwYWEwOTU1Yjk4MWMyIGxlZ2FjeS10cnVuaworNDYzNDYgMmU3YTAwZWJjMzE5MjYwNTg1ZTkxZWE0MzhmNDk3ZmFjNThlMzQ5MCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzQ3IDVlNGRjZTc4ZjIzZGE5YjMzMGNkYzcxMzJlNTI5MjhiNzRhYjBjNmIgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjM0OCA2MjRiNGJiOTNkOTAyNmEyZjU4ZDIxODBkOGE3ZDAzNWYyZmNkNDZhIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzNTAgNDNjODZmMzQ5ZDQ3ODRjN2Q2NDc3YjU4ZmVlYzE1YWVlZDhlOGQ5MSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzUyIDRiZmVhYjIzMGUzODVkNjdkNDE0YjFkMTI5MTk0MmE3MjhjOGEzODQgbGVnYWN5LXRydW5rCis0NjM1NCAxYmEzZTQwZTg2NDk2YTI3MzZiZmFhOTM4YWE1ZWQ5M2M1NTAzZGE4IGxlZ2FjeS10cnVuaworNDYzNTUgNTJkMTM5OWUxYzZkOTFjN2FlMWM2ZjUzMGQwZjdhYTQ3NWRmZDNjMiBsZWdhY3ktdHJ1bmsKKzQ2MzU2IGExNjk0OGU5OTE1ZWNhNTZkODMwNDg5ZmQ1ZDk3MWQ2ZjQ5NzlhNGYgbGVnYWN5LXRydW5rCis0NjM1NyAwYjhiMjhmMGYzMDE0M2IxMDc1N2JkYTYzNTI4NDExYTcyNzk2NWJmIGxlZ2FjeS10cnVuaworNDYzNTggNzI5ZmY4MDA4YzllNTk4MzA3NGNlMTk1YmRhNGFiNDNiNjBjZGU5NCBsZWdhY3ktdHJ1bmsKKzQ2MzU5IGQzN2Q1YzU1MjFlMzg2NDZlYTU5YTdlZTQ2NmI3MzFkODkyM2U5ZWMgbGVnYWN5LXRydW5rCis0NjM2MCAyZTRhMjc0ZTMxMDhhZWIzNjIzMjZiOWNlZDI5ZDUwYTdlNjJmZTAyIGxlZ2FjeS10cnVuaworNDYzNjEgYTVmNTNmZWNmY2U2NmNiMTlkMTFiNjdhNGViNzAzOTQ2OTc4OWVmMCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzYyIGIzMmY5YmIyZTA3NzI3ZmE2ZDA0OGU3ZDQzY2UxYmUzM2UzMzIzOTcgbGVnYWN5LXRydW5rCis0NjM2MyBmNzEwZWRjYWE2NzU4OTllYTRiN2JmOGE1ZDUwNGQ4YWE0Y2NmZTYwIGxlZ2FjeS10cnVuaworNDYzNjQgMDU3NDQ5MTdiN2MzOWIyMzg2ZDM0MzdiMzg4OGM0ZDE5MTFiNWUwMiBsZWdhY3ktdHJ1bmsKKzQ2MzY2IDk2NDE1MTA1YzI5ZTAxZWVhZTEwMDExZTU1MTA3MjRhN2RkMjMyMjYgbGVnYWN5LXRydW5rCis0NjM2NyAzODkwYTNjNzkyYjkwMzczZWUxNzhjZjI5MDYyZWQ3ZDU2NjgwYjNjIGxlZ2FjeS10cnVuaworNDYzNjggMzVmNDE3MzFiZWU5NGU0YmFhNDVhNDg5ZjgzMDk3MzE4ZDc0NmYxYSBsZWdhY3ktdHJ1bmsKKzQ2MzcwIDRkMGFiYjk5YzllNTQ4ZDNiOWMwZDc0MTUzY2M3YWFhZTcxYzM1YmQgbGVnYWN5LXRydW5rCis0NjM3MSAyZjcxZDFhNjkyYmY0YTBiYjE2MWEwMjFlYmY3OWRhNjNhYzFjMDU2IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzNzIgZDIxODk2YjJkZDBhZDcxZWY3YjE1MjM4MzFhMzllMjNhMmIyNDA0ZiBsZWdhY3ktdHJ1bmsKKzQ2MzczIGQ4NWIzNjBhYTVmNmY4MWQ4YTQwYWU4ZDJkNzY1OWQ0YmQxMDNkOGUgbGVnYWN5LXRydW5rCis0NjM3NiAxYWIzMjYxN2RhZGRmNjY3YjkwNjRiMTE2ZGJjYTBlOGNhZTg0YzM4IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzNzcgNzY4MDc5MDJhMmY1MDVlNTdkMGU1MjliMjZlMTM1OGE0OTRiMDFhNiBsZWdhY3ktdHJ1bmsKKzQ2Mzc4IDIzZjc4ZTViZDNlM2FlNWM3NDBmMDdiZjA4OThkZWE3MWUyMTBkZGUgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjM3OSBmNzA2NTNjMWU2MzNiNjhhOWQ5NDI0OTIyMWRlODI4MjE3NmZjNThkIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzODAgNzg3NzFkNjczYjRiNzMxMjYyNWQ1MjY5MGJlNDk0N2U2OGYwMzNiYSBsZWdhY3ktdHJ1bmsKKzQ2MzgxIDgxNmY4ZTYwMDk3YTlkYTdkN2QyNGQ4NDE4MmUyZGVmNDk0OTI4MTUgbGVnYWN5LXRydW5rCis0NjM4MiA0MWY4MzllODk1MzI1ZDM2MjgwZjMwM2ZhMWYwOTU4MTFhYjQ2ODJmIHRpbS1leGNfc2FuaXR5Cis0NjM4MyAwZjYxYzNjNjJiOGJmODE5MThkM2Q0NTNlZjYyMzM4Y2JiOGRjMGMwIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzODQgY2ZjOWEwMDdlOGNlYjMwYTg1YmJmNWYyZTU3ODc1YTU5ODM3ZDNjNSB0aW0tZXhjX3Nhbml0eQorNDYzODcgYjIwZTdjYmRhNDA5MTJjODM0ZDc5Yjc1NWFhYjc4ODRkZjMwZWIxMiBsZWdhY3ktdHJ1bmsKKzQ2Mzg4IGQxNTNkMmY2Njg4NGZjMzAxODViYzIxYjNiNTg5NTAzNWM0M2NiMWIgbGVnYWN5LXRydW5rCis0NjM5MSA3MGMwZmZkMjFiZjBhNzMwMGUxOGJhOWViNTMyOGQzYWIxYzk3OTMzIGxlZ2FjeS10cnVuaworNDYzOTIgZGYwNGYxOTJhMmEyN2M0ZjAwOWJiY2RmNDAyNGYxYjkwZjU5MDQ5NyBsZWdhY3ktdHJ1bmsKKzQ2MzkzIGFjNDVlY2E4YzM1YzI0NmRiODY4NjEyNzE2NjBhNWI3YjI5MDk5ZDIgcDN5aworNDYzOTUgYjE4OTY2NTZmMjJlNDY5MDYzZjI5NDEzNzEwNmQ3MzBiNjdlNWE0YSBwM3lrCis0NjM5NyBkYmIxOTVjOWRkODhlMjU0NjYyOWFkZjYyZTAzYmNkY2U5OGU0OTk4IGxlZ2FjeS10cnVuaworNDYzOTggMzNjMzI4ODk2ZjUyN2ViNWYwYzc2NWNiZWU0ODcwMmI5ZjEwYjYxMiBsZWdhY3ktdHJ1bmsKKzQ2NDAwIGFkYzIxNGZjMWUxYzEzYzM5ODA2ZDM4MThmNTdmMzFiNjgxOTBkYjQgbGVnYWN5LXRydW5rCis0NjQwMSA1ZGRiZDIwNTAwZmM1MDQ5MWY3OGI4MTFlYTJiZjA3YTkwNTM5OTczIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0MDMgNmIwM2E0N2ViNTRkZjdlZGFjY2ExZTExMzU2NDEwYmE5MDAyOTYzMyBsZWdhY3ktdHJ1bmsKKzQ2NDA0IDZkOTlkZjU1NjA2ZTI0ZDBmY2U2N2I3NmNlNmY0YzAxYmUzZDdlNmUgbGVnYWN5LXRydW5rCis0NjQwNSBlODNlMWFhYWIxYTNhZTA0NjEzZWRlYjY1NjA4OTIzYTQ2MWZiMzMyIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0MDYgNTJmMmM5Zjc0ZjVhZDVhNzZiMmIxZjhhZDk2MmU0NWVmMmEwNzhjMSBsZWdhY3ktdHJ1bmsKKzQ2NDA3IDMxMjhjZmFkYTZiNGE3Y2Q4YWZlYjIzZjQ1OWM3NDFhNDMxODE1NjQgbGVnYWN5LXRydW5rCis0NjQwOCA0MDJmM2FjNDA1MmZmYWZkZDgxNGI4ZDRhNTZkZTRkZDlhZGZkMDY1IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0MDkgOGY3YzdhZWFjM2E1ODNhM2I5MmZhOGVhZTQ3YmM4ODk4Yzg4NjY2ZSBsZWdhY3ktdHJ1bmsKKzQ2NDEwIDFkYjBkNzM3NDllZDllZGE1ZWRlMDBiNzY2ZWU5MTQxZmM2ZDM4NWEgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjQxMSA1NjA3YWI2YzY3ZGZkYjBkYTZhZTlkNWEzNjUyM2JiNGYxYjU5OTZlIGxlZ2FjeS10cnVuaworNDY0MTIgZmE2NzViM2Q3NWNhODIyNWVkOTQ3MTY0ODU0YjQ1NzA0MWQ5NDhmOCByZWxlYXNlMjQtbWFpbnQKKzQ2NDE1IGU3YWY5N2UyNzhjNDRhNzEwZGI0MTllMDk3MDdiOGM5MzFhYWQ4ZDggbGVnYWN5LXRydW5rCis0NjQxNiA0Njk3ZDE5NThjY2IwNWJhNmQ5ZmQzMTQ2MTBkYTE1MzQ4ZWE3OGNiIGxlZ2FjeS10cnVuaworNDY0MTcgNjMxYjY2NDhmZGY0MWJlMmM0NTc1OTUzMjU3ZGQ4OTExNjg0NmZjZCBsZWdhY3ktdHJ1bmsKKzQ2NDE4IDJiZWUxNTBhMGY3NTIyOWExMGNiOTA3ZjliMjRlNWUzMDEyOGIzMjkgbGVnYWN5LXRydW5rCis0NjQxOSBmZWE2ZmI0NTU3MTEzYmM2MTE3MjYyYzkxZjNjZjM5YjhhZDY5ZjU1IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0MjAgNGRjNjFkN2RiM2EyOWZmODZhY2RlNWYyZWNiMDk1NjU4YTQwMWQ2NCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2NDIxIDhlMmRjM2U0MTgwMTFhNmUyNWQ3NjAyZGRhZWVjYzEwZDYwZTc3Y2YgbGVnYWN5LXRydW5rCis0NjQyMiAwZWViZDllZWI3MTdjYTMxMzNjN2UxY2Q0ZWRkZjRjNzA4YmNiNDNkIGxlZ2FjeS10cnVuaworNDY0MjMgY2U2MzhkNGI0ZmM4Y2RhZjBjNGI2M2ExNjQ4NTNhMjc2M2VmNmU1NiBsZWdhY3ktdHJ1bmsKKzQ2NDI0IDkwZWRhZjBkOTA2MjE4MjE4YmI5NGJmY2NkZGUzZTAwMWVkMWU5ZmUgbGVnYWN5LXRydW5rCis0NjQyNSBlMGU0M2U1NjE1MTJiYzk2MDQxMGI3YzdkMTI2ZDIxZWFhYjZmMDFhIGxlZ2FjeS10cnVuaworNDY0MjYgNzA4ZWFmMDg5NmJmNDU0NGQ0ZDU0MzUzODMyZjMzMDA3MWNhYTY1OCBsZWdhY3ktdHJ1bmsKKzQ2NDI5IDM4ZTlhZjM4ZjM4MWMyN2VjNjA3MGI1YzYyYTUzOWMzOGY0NmQzMjkgbGVnYWN5LXRydW5rCis0NjQzMCA0OTljZjdjMmY3NzczZWY5NmZlYTRiNDI0YjNjOTM0YmVjYzVkNTZkIGxlZ2FjeS10cnVuaworNDY0MzEgNDIwOWEzZDI5NWUzNDdlZWQ2ZmU1NDEwMjhhODlhMTNjM2M0MzExMSBsZWdhY3ktdHJ1bmsKKzQ2NDMyIGRmYmQ0NTdjYTY3YWM2YThmMDlkZjNjZGY1OTViZGQwZmM1NzRlOGQgbGVnYWN5LXRydW5rCis0NjQzMyA2OGUxYTAyYTViMjkxZDg5MzgxYmZmOGQ5NTA0ZTAzMTM1MGY2NGViIGxlZ2FjeS10cnVuaworNDY0MzQgMTBhNTk3M2UwYzlhNzM3NGYxYzFjOTEyN2E0NzAyMWQ3YmFiZmNkOSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2NDM2IDNkODFmYWY0N2FmNzdkZDA5YWZkYmVkMGY0OWIyYzgyMzE1ZTAzYTkgbGVnYWN5LXRydW5rCis0NjQzOCBjYTY1N2UwYmQwOWMwMzc3OGYwMTZjMGQwY2NlNDdkNWNhNGQyZmM4IGxlZ2FjeS10cnVuaworNDY0MzkgOWYzMzc1ZTMzZGI5NWQwOGVjNGMyZDk3M2E2M2UxMjU0NDc0Zjc1MiBsZWdhY3ktdHJ1bmsKKzQ2NDQwIDk5ZDA2MWJjMzE0MzFkMWZmYTFjNjIxNDcwZmE1OWQwMTVkZGU0N2IgbGVnYWN5LXRydW5rCis0NjQ0MSA4YjRkMmE5MDc1YWY1YjBjM2YzYTA5YWFiZjM1MGQxZGMzNzQ1MjQzIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0NDQgNTQ5Y2FkYTRlMzZjYzU3YTNlNWYyYWU0MTk5NjhjZjFlZjQ4ZDJiMSBsZWdhY3ktdHJ1bmsKKzQ2NDQ1IDNmZjNkMmYyMjAxMjI0NmZjMTgwNjc1MjJjZGUxNmE4ODlmNDJkYTIgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjQ0NiAzMjg3OWQyNjEwOWQ5Njk2MDZkNzg3YTU1MTU1MzA4M2FhZmFjMTU3IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0NDggMTZhMWNhZDBmOTQ5OTkyNTQ0YmY4YmNhNWM4YjY5MmVlOWE0OWFlNSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2NDQ5IGNlM2UzYzYzZmU1YWRkZTMwZWQwZjc5NjNhY2QyZTNjNGVjNDNhZmMgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjQ1MCAwMDM0MzM1MTFlNGRkODRhZmE0YzA0MWIyYWE3NjdlNzJlMGJmNzZjIGxlZ2FjeS10cnVuaworNDY0NTIgNzM0MjZlNzFmNjdhYjU3NjJhZjMwZDkwYmE1YTMxZGNlODEyY2M4NCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2NDUzIGE1ZDVlNzNiMmVkYmI1ZmIzZWI5OTc5NzI1ZTEwMGJkZDE0NjAyYzAgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjQ1NCA3OTVkMWNiMWRmMDEzY2RmMzQ1YTkyNmJhZjUwNjViZDAxNWEwYjE1IGxlZ2FjeS10cnVuaworNDY0NTYgNGMwODIzZjBhMGExNTc0ZWE4MmMxOWRlOWQ0YzFlMmExYTU2MDlmNSBsZWdhY3ktdHJ1bmsKKzQ2NDU3IGE1NmFhOGFiNDg5YjcwYzQ1YzUyNzMwNmU5NGRmMTQ1ZDY5MzM0N2UgbGVnYWN5LXRydW5rCis0NjQ1OCBjZWJhOGYyZWEyNGVlYmE1MDg3NWQ0NDNmNDZkZmI5NzFkNmQyOWY2IGxlZ2FjeS10cnVuaworNDY0NjAgY2NkYzBiYzExZGNmMmUyOGY2YzRiYzk2NDQwZGZmMTRmYTY0OTlmNiBsZWdhY3ktdHJ1bmsKKzQ2NDYxIDYwNjNlNGU2ZWUyMGUxN2Q5NDljMjE3ZTM3OTYyMzJmNjcyNjkyMzMgbGVnYWN5LXRydW5rCis0NjQ2MiAzMGU0ZWE0MjMzNjkwOWFiY2UwNjVkZDVjNDg2OTJjNWQ0Mzk3YWQ0IGxlZ2FjeS10cnVuaworNDY0NjMgNzgxYmQ5NGNlYmFkNTVlMjhmNzg4ZGM5MjI1NDNmMzZmZDk0NGY3OCBsZWdhY3ktdHJ1bmsKKzQ2NDY0IDA1MzA1ZDNhYTA0ZDFkYjY0MzgyZTgwYjg5NjU0NTVkZWE2NGY3ZDMgbGVnYWN5LXRydW5rCis0NjQ2NSA1MDZlZjkxMzAyMzhiNWViOWRhMmE3OTNhZGNkNmVkMTVlNjExNzY4IGxlZ2FjeS10cnVuaworNDY0NjggNWIwNzUzYjlkMTZhYzM4NzY4YzA2NWVlMGQ0MjQ4NWM1YjdiOTVmYyBsZWdhY3ktdHJ1bmsKKzQ2NDY5IDcyMzI3ZjhmNGE3OTZmZTU2YTQ3YjkwODQ4YjFiZWVhYzY3NGNmOWEgbGVnYWN5LXRydW5rCis0NjQ3MCA4MDM4ZTQxZjQ2Y2MwZDI0MzQxYjBiZmU4ODM2MjEyZDU5ZjVkYTU0IGxlZ2FjeS10cnVuaworNDY0NzIgZWFlNmRlMWI0MzgzODBhNTU3MDJmYjMwZjFmYmIwMWQxMGVkMDc3NCBsZWdhY3ktdHJ1bmsKKzQ2NDczIDA4YmYwODIyYzUwYTBkNzNmOWZmOTM1NmRjMmU0NDA0MjU0MmUxMDYgbGVnYWN5LXRydW5rCis0NjQ3NCA4ZGFlYjlhZjg0MjJjYmQ0N2MyOTI0MTIwNTgzOGI5YmQzNTQyNzk4IGxlZ2FjeS10cnVuaworNDY0NzUgOWE2NWZkNDI1NWEzN2NlYTcyZWQwMTM4MDUxMWUwOWUwNmM3ZDE0YSBsZWdhY3ktdHJ1bmsKKzQ2NDc3IDgwNzU0MGNmNzcxNGM5ODk0ZDI5YWIwNmRlZjgzMWIyODFlZmNiMTYgbGVnYWN5LXRydW5rCis0NjQ3OCBlOTU3MTU1YWU5YmRkYzIxY2E2NjYxZWEyNWMwMTFjYzQwYWY2NDRhIGxlZ2FjeS10cnVuaworNDY0ODIgMDM4YmI4ZDAwNThiMjUzOTU3MmYxOTU4MGQwZThjOWFhYzQzYzQyMiByZWxlYXNlMjQtbWFpbnQKKzQ2NDg4IDQ1NTZjMmM5MzBmNGIwMjVlNzlhYjFhMWVhYmQwNGFhZDFlMjIxMGUgbGVnYWN5LXRydW5rCis0NjQ4OSAzZGVkMDkwOGU5NTJmNjQ2ZDQwMGU5ZTU1YzZmOGM2OGNiNDFmNDViIGxlZ2FjeS10cnVuaworNDY0OTAgMGYyZjdhMGQ5YjdkZDIwMTViNGQ3MDRlMTNlZTE5MTVhMGRlYzEzNCBwM3lrCis0NjQ5MSAyOWFlNWUwZmMzNDgyOGI1ZTYzZjE4NGYzMDM4NDYxMTY2OGRiZWZkIHAzeWsKKzQ2NDk1IDYzMWMyMDdjMzY5MjNkMDIzZjg0Y2QwYTkyYjI4OWI2YjcwYmU2ZDAgbGVnYWN5LXRydW5rCis0NjQ5NyAxYTIzNzA2MTM5Y2EwZmMyNzg2ODk0ODMyNWUyZjQyMTUxYWJjYTQ4IGxlZ2FjeS10cnVuaworNDY0OTggM2ZlYzNjZTIwNDEzODRhZGViZDlkYzczZWVlNjMyOTY5OTI0NWMyNSBwM3lrCis0NjQ5OSA1NTE4MTRlNGI0NzExN2IzMmY2Mjc0YzFlMzkwOGM0NjRjZjgyMTQ0IGxlZ2FjeS10cnVuaworNDY1MDEgMjM2NzI1ZjY0YTM0MWZmZTkwMTI5YjA5NzkwM2ZlMTBhNTkzOTRiMSBsZWdhY3ktdHJ1bmsKKzQ2NTAyIDdmYTdjYjZkOGJlODFlMjkwYWEyYTZlOGQwMjRlMzhkNzQ4MjZkM2EgbGVnYWN5LXRydW5rCis0NjUwMyAwMjAzYThhZjc0YTc1YTlhYmY2MGRmZDY5ZGY4YWViMzI3YWYzOTE4IGxlZ2FjeS10cnVuaworNDY1MDQgNmJhNTY3OGJlN2YyNjM1NDQ2Yjk4NThmM2QzMmZjNmI4MWI3YWEwNSBsZWdhY3ktdHJ1bmsKKzQ2NTA1IGY3NmQzZTY4ZDFhYzM3YjAwYjFkOTViZGZiZDhiYWQzMzg0MDdkZmUgbGVnYWN5LXRydW5rCis0NjUwNiA1MTI1NWNjOGEwZGMwNGFiZTczMDVlNTRkYTNhMzBmNWZjNGMxMjRlIHJlbGVhc2UyNC1tYWludAorNDY1MDcgZTk4OWVlNWQ0MDRhYmU3NzYyMTRhYjA4MGUyNzYyMGJlZGMyN2YwZSBsZWdhY3ktdHJ1bmsKKzQ2NTA4IDMyMDRhYTllMmIyMjU5NmE5NjI0ODk5MDVhNzM1ZTg2ZmMyY2JjMzMgbGVnYWN5LXRydW5rCis0NjUwOSA3MTg2MWMzNzgwOTM3MTM2MWVkZDllYTE5ZDkxY2FlNmVlNmY3ZjkwIGxlZ2FjeS10cnVuaworNDY1MTAgNTkzYWNjZGRlMDBlZjMzM2QzZWJkNTliODg4MmFjYmU4NjUyZTU2ZCBsZWdhY3ktdHJ1bmsKKzQ2NTExIGYxN2QzNzkyMGY2YTFiZGZjZTA4NjA5MjdlMTdiODU3ZTYzOGJlYmIgbGVnYWN5LXRydW5rCis0NjUxMiA5NWZiMmNkMWQzYmFjZTQ3NWNkMjQxNTg0ZDFkMDA4YzgyNmUxNzlhIGxlZ2FjeS10cnVuaworNDY1MTMgZTBjZWE2MDU0MTdlNDVjNTUxZjI3NmFjNGQ5ZWU1M2Q2NzdkNzdlMiBsZWdhY3ktdHJ1bmsKKzQ2NTE0IDkyNjhjMzA3ODJjMGFmZjcxZjRmMzMwOWJhZjM1MDAwNWI1NTE2MTcgbGVnYWN5LXRydW5rCis0NjUxNSA5MzhjMGZjZDViY2NiNmM3M2NhYmM5YWQzZDZhMzM5MzMwNzRmZDRmIGxlZ2FjeS10cnVuaworNDY1MTYgZDYwYzdmNmMyYWEwMDRiZTNiYjk0MmIwZGEwYTMxODdhODM1NTVmOSBsZWdhY3ktdHJ1bmsKKzQ2NTE3IGJmMzI2NTgxYzc0MjIyNjJhOGE5ZjdiMDg3NDVlNjYxOGE0NGM2MDcgbGVnYWN5LXRydW5rCis0NjUxOCA5ZjMyODRjOTJlYjMwZjEwNzEwYzliNmI5MmM2ZDAwNzZjN2FlYWVhIGxlZ2FjeS10cnVuaworNDY1MTkgZDMzODMwNjM0OTFmNTk4M2NmYzFjNTlmMTYzOGVhMGRlNjIxZTAzMCBsZWdhY3ktdHJ1bmsKKzQ2NTIwIGFhMDY1ZjgyMDI1MjQ2YmExN2ViMjMyNTdjMGQwMTg2OTA3YjNmOGMgbGVnYWN5LXRydW5rCis0NjUyMiA1OGU5OWYyYTY0ZWNhMWRlMmE2YWFlNTg3NTdiMzE1YzcxNzI2NGIyIGxlZ2FjeS10cnVuaworNDY1MjMgNTUzMTk1NTk5M2VkNDE2NDA2ZDUyNDY2NDdkYTEyNjU1ZTdjYzk3NiBsZWdhY3ktdHJ1bmsKKzQ2NTI0IDliMDAxZWJlYWE1ZTQ4Njc3NzVkMTBkZmY0OTAzMWYzYjNjNDdiMTYgbGVnYWN5LXRydW5rCis0NjUyNSAzZDFhOTliMzlmY2EyNWFlYjYxNDFlNTc4NWY1MmI4YzczYzQ4MjcwIGxlZ2FjeS10cnVuaworNDY1MjYgNjc0M2E2YTA2ZjE1NmQxZGJmZTg5ZTc5NTNhZDgyNTNkMzM5OGU0MiBsZWdhY3ktdHJ1bmsKKzQ2NTI3IGZiNTZhMzk5MjYwNGJhODU5NzZjZGQxMTcxNjc4NGUwNzY2YjIyMTEgbGVnYWN5LXRydW5rCis0NjUyOCBmNjRiMTNhMDBmMzNiMjhjOGVmYWE1NThhMDMwY2E4MDc3MzM5MzM5IGxlZ2FjeS10cnVuaworNDY1MjkgZGNmOTJkZDc0MDhhM2YwYmQyYWY1NDQ5NDk4ODFhMzk1ZjY5NDUyOCBsZWdhY3ktdHJ1bmsKKzQ2NTMwIDhhYzYwM2U1NzBhMDU1OGY5YTI3NTcxNDU2ODI2MTg5NGE5MTcxYWIgbGVnYWN5LXRydW5rCis0NjUzMSA1YTEyYzBjNTE4M2U4OGEwNWZiOTAzNWNkODI4NmEzYzliMDJiODE1IGxlZ2FjeS10cnVuaworNDY1MzIgNDhhNmFmODdmM2U4NjJhOGIzMzc3MDgyMzVkMTQ2MjAyMmQ1ODkxNSBsZWdhY3ktdHJ1bmsKKzQ2NTMzIDNmZTNjY2RmMDE1NTUyMTYzYzRjOTFhMWU5NDZjYjExMTZiNmFiMGIgbGVnYWN5LXRydW5rCis0NjUzNCBhNTI5OGYzNzFiZTdjZDJhZDkxOTQyMjIzMDM1NTA1MDU4MGY4OWIxIGxlZ2FjeS10cnVuaworNDY1MzUgYzNmMmM2Njc2YjA2MWNhNzEyODliZGRjN2NlMDUyMzJhY2Q0Y2ZiOSBsZWdhY3ktdHJ1bmsKKzQ2NTM2IGQ1YmRmZDEyMDIzMjcwODI2N2FkZGM2NDZiZWUzNmEwZTdmYzgwZDMgbGVnYWN5LXRydW5rCis0NjUzNyA3ZDUxMGU0ZjNjOTg4NTA1ZDA2YmM1OTFjNTkwOThlMDU0YmIxMzYyIGxlZ2FjeS10cnVuaworNDY1MzkgNGU0ZTY1M2E4MGJmNGFmNjRhZjA5OWIxNmViMjk4Zjg1OGIxYTI3NyBsZWdhY3ktdHJ1bmsKKzQ2NTQwIDE3MzFmYmRmMDI5ZDIwOWU3NmZhOGI4NTI4ODY0M2ZlYWMyNmY1OGIgbGVnYWN5LXRydW5rCis0NjU0MSA2ZDc5YWNkYzgxMmQyMDEwZDBkMmNlZGYwZmZmZmFiYTczNDMxZjgzIGxlZ2FjeS10cnVuaworNDY1NDIgYTgyZmQ3YjA0NGRjN2E3ZDZkNWQ2OTFhODYxYTI2YmM4ZTJkMDIwNCBsZWdhY3ktdHJ1bmsKKzQ2NTQzIDhkZmJhMDg3ZGMwNzdhNjFmNTBmM2FmNmEyODM0Y2NhMjRkYzM0ZTIgbGVnYWN5LXRydW5rCis0NjU0NCA0OTRjYWI1NjNjMTE3YTEzOWJkYTEzODk0OTk2ZjI4Y2JlNTZkMjViIGxlZ2FjeS10cnVuaworNDY1NDUgOWY4NjJkOWY3Nzg1ZGRhNzUxMGUyMmFiY2QzYmM4OWY3ZDUxNGNkYiBsZWdhY3ktdHJ1bmsKKzQ2NTQ2IGVjNWRjOGE0OWVkZmI2NTc0MDFkYjVjMjExNjkzZDdjYTk0YjZlY2EgbGVnYWN5LXRydW5rCis0NjU0NyBjNDUwMWZlZmQzMjRmYjQzNjNjOTQ1NmY3ZmJmNzJkMmM5MDY4NDEzIGxlZ2FjeS10cnVuaworNDY1NDggNTEwNjgyYWM1ZTg5ZGQ1YjY1YmQ0N2I4YWM4ZTBlZmMyYzY0MzViMyBsZWdhY3ktdHJ1bmsKKzQ2NTQ5IDQ0MTcxMWNiZmUzNDE3MWRhNjc0MzZlZmYxODVjYTQ2MzExMDljYTIgbGVnYWN5LXRydW5rCis0NjU1MCA0Zjg1ODY5NDZjOGY1NjMyYTQ2NTc4M2U0YThmNjllYWMzOGZmMjA3IGxlZ2FjeS10cnVuaworNDY1NTEgMGFiYTYzZmY3ZjczZTM4NjgzZGE1NTVmYzhiNGJjZWZlY2U4MWM3OCBsZWdhY3ktdHJ1bmsKKzQ2NTUyIGQyMDA4YjMxZmQ2MmEyNGQ2YTRmZWUxNTY1YjM1NWVkMDRlMDIxNzYgbGVnYWN5LXRydW5rCis0NjU1MyA5OTU2NGU2MmFlYTkyZGUxNDA4OTJlMTc4MzJmZTIxN2E2M2VjYWIxIGxlZ2FjeS10cnVuaworNDY1NTQgZTExNThlMTk1MWRhNTBmNmVhZGY4ODI0YzRlZTcwNzdiMjQyYzk2ZCBsZWdhY3ktdHJ1bmsKKzQ2NTU1IDEzZmVkZDBkMGYyNmM2NjRlZDU5NjRlNGVhYTc1OGUzZDA0NTllODYgbGVnYWN5LXRydW5rCis0NjU1NiBjNzQ3YWQ1M2UwOWUwZjkyOTQ0YzU0NjM1OGM3ODU0MDRlZDc1N2U5IGxlZ2FjeS10cnVuaworNDY1NTcgMTY4ZWI2ZTE1YjhjN2M5NTFkZDEyMWQ5M2Y4ZDcxZGE5NmFlNjQ3NCBsZWdhY3ktdHJ1bmsKKzQ2NTU5IDdmMWYzNmIzYzlmOWFhYzM5MThlZDZlODZmM2UzYmYxZTg5MTRlOGYgbGVnYWN5LXRydW5rCis0NjU2MCBlY2Y3MTczZTc5ZmY1NjZmNGY5NThiYWRjMTg5ZTU3YjcwZjI4NjBlIGxlZ2FjeS10cnVuaworNDY1NjEgYmIwZDJiOTU1NDM5ZjMyZTQ4MTIzNzA3MDNmODhlNjFlMjI0NjcwMiBsZWdhY3ktdHJ1bmsKKzQ2NTYyIDJmZTMyMzNiZDQyNjEyZjRiMTczNGMxYWU5M2RlMjYxMGYxNTY1ODggbGVnYWN5LXRydW5rCis0NjU2OCBkMmFlNTgwODgwYjRiYmRkNjg1ZWM3ZDkwZjRkMzlmYmY5MjQ4Y2E2IGxlZ2FjeS10cnVuaworNDY1NjkgZjlkMTg0MGZhZDM0ODUyNTQwOTI1ZWY3YWY5YmU5ZjlmYWQ5NzE1YyBsZWdhY3ktdHJ1bmsKKzQ2NTcwIDYyOWViZjdkM2I1Y2FjYTU5ZGJmMGMxM2RjOWE5ZjlhZjY4Y2Y1NWYgcmVsZWFzZTI0LW1haW50Cis0NjU3MiAxYTU2ZGE4NmMxMWE4NzlmYTcxOTUwY2I0MmUyZWZmYTE4YzYzOTNlIGxlZ2FjeS10cnVuaworNDY1NzMgYmFkYzE3MzdkYzgwMTljZjJiMzAyZDUyMDAwNWYwMzU3MTJhMGVjNyBsZWdhY3ktdHJ1bmsKKzQ2NTc0IGYwZjI5MWZhOWI0NjkxODQxZWRlZWU1ZWU1MzgwMDBlZDhlMmNlZGMgbGVnYWN5LXRydW5rCis0NjU3NSAzZmQ4MDI3ODQ1ZjgwMmM5YTBkODgwOGFjNjZmNzRiZDY3MDg2ZDliIGxlZ2FjeS10cnVuaworNDY1NzYgZjUwZDNhNTFkNjQ2ZjMzYmVmZjViNDJiYmU2MDU4NmQ0YzQ0MDJlNSBsZWdhY3ktdHJ1bmsKKzQ2NTc3IGQyNWUyNzljN2VhOWIyNTdjZGM1YTFiMTJhM2Y3MzVkNDlhYjYzMGMgbGVnYWN5LXRydW5rCis0NjU3OCBmODMxZThiYzZiZDM3ODk5MzQ0NzU4YTg1ZjZlMDI3NzUwOTVjNTAwIGxlZ2FjeS10cnVuaworNDY1NzkgNWY0NDJmN2JmNDE5ZTRmYzNjMTIwOTgwMzA3ZDkxYjY2NWMzZTg5ZiBsZWdhY3ktdHJ1bmsKKzQ2NTgwIGUwOTk3ZmZhMzU3MjQ2OGI5ZWEwZWEwY2Y2MmIxNjgxN2NhMTExZjYgbGVnYWN5LXRydW5rCis0NjU4MSBhN2YyMjk1YTc4YWMxMzk1MGJmZmU4Nzg0YmY4NDkyZjBiMmNiYjE3IGxlZ2FjeS10cnVuaworNDY1ODIgNDQ3YTk0YjAzOWRlYjgwY2ExZGE5MzMzYmEzYWM4MTNiODcwYzkzOSBsZWdhY3ktdHJ1bmsKKzQ2NTg0IDQyOGU5Y2JiNDM0NjFlMGVlZmZmMmY3NDMwMDc1YTg0NzUyNjdmZWIgbGVnYWN5LXRydW5rCis0NjU4NSBkYjJkOGFhOWZlM2Q0MjA4Yjk5Mjg3ZjA1M2JmNDhkMTNmYWViM2Y0IGxlZ2FjeS10cnVuaworNDY1ODYgMzAzMWE3MTEwZGE5YTg3NTk3MzJmZjI2MDJmYzM5OTIyMzFhZjk0MSBsZWdhY3ktdHJ1bmsKKzQ2NTg3IGIxZWI0YTY3NDk5ODA1NGE2ZTc1MWExNmUzYTdlYWYzYmU3MmFjMGQgbGVnYWN5LXRydW5rCis0NjU4OCBjZjY3N2U5Nzg4NTJmYTZjZWJlYjA5M2E1MDRlNWQ0Yjg0OGI5MzBmIGxlZ2FjeS10cnVuaworNDY1ODkgMTc1Y2JkZjlhNWZiZDA2NTdmODUxNTg2MGVjNTEwODNiZTQwY2I4MyBsZWdhY3ktdHJ1bmsKKzQ2NTkwIDk5NWVjZDIzMWY3YzU5OGQ1YjQxNTEzMDNmZDMyNjRjOGQwNzI5MzYgbGVnYWN5LXRydW5rCis0NjU5MSBjNWQ1MDg3MmVmZjQ4MmE3MzdlNDkxNGIyYzYyODQxNjdiYTQ0MThkIGxlZ2FjeS10cnVuaworNDY1OTIgYjliMDM2ZjAyMjA3ZTI5YjIyMTUzNDg2NmQ3MGQyZWYyOWQ0ZmQ2YiBsZWdhY3ktdHJ1bmsKKzQ2NTk0IGQ3ZGQ1Mjg0MjdjMGQxNGFhNDNiMGY4ZmFkNTJlYjU1NTM4NmU5ZGUgbGVnYWN5LXRydW5rCis0NjU5OSBmMzdlNjdiZDQzOTMxODRhMWViYWFlZWM4ZDExYjIxOWQ1NTE3OTk5IGxlZ2FjeS10cnVuaworNDY2MDAgMjYzMmJkNTVjMjlmMjU0NGJkOTg3NDE2Y2YyY2Q3OWU2MzU4ZGIyNSBsZWdhY3ktdHJ1bmsKKzQ2NjAxIDc1ZDY4MTE1OTMyOWQ5OGYxNjU1ZGJlMGYyN2U1NjEwZDNmZThmOTQgbGVnYWN5LXRydW5rCis0NjYwMiA2OTdkZDg0OGUxZjEzNjM2ZTU1NDNmZGE1ZmM2MWQ1MDdhNDMzMjlkIGxlZ2FjeS10cnVuaworNDY2MDMgMjFlOGRkM2UzOTQ1NzdjNTgxNjZiNTE1MDEwMmUxMGFiZGZiYTM4OCBsZWdhY3ktdHJ1bmsKKzQ2NjA1IDJlYjhiZTBmODczMTI5NzE2MDc2ZDM2OTQ3ZWUwYWE1Mzk1ODUyMmEgbGVnYWN5LXRydW5rCis0NjYwNyBmOWMzMDFkYzVmYjc0YzhjMmUxOGE1ZGFmMjBkZDA4ZjgyNzQxZDA0IGxlZ2FjeS10cnVuaworNDY2MDggMzgzY2Q5NGMyYTY3ZDM3ZjJiYTFiMWMxNzI2NTBhOWNiNjg0MTc3NSBsZWdhY3ktdHJ1bmsKKzQ2NjA5IDZmOWI1MzZlOTZmNjYzNTNjMWZlOWU3NTUyMzhhOTAyM2UzZTljNTkgcmVsZWFzZTI0LW1haW50Cis0NjYxMCA5NjZlNzQ3MGZlMjM3MzMzYjRlMGVmMWQ1NGM3OTUyODA0MDlmN2Y4IGxlZ2FjeS10cnVuaworNDY2MTIgMmI1YTlkYzQ5MDVjOTM5YmQ0ZDNkNjQyZTBhNzcxMjNmMWJjNzVmNCBsZWdhY3ktdHJ1bmsKKzQ2NjEzIDY0YjkzNzlmYTgwZGIwODg0MTM1OWQxZWE0Mzg4YzYyZTIzNmE0ZGIgcmVsZWFzZTI0LW1haW50Cis0NjYxNCA0NjQyNjVjMWQwOGIxY2E2N2Q0NTZmODhlYzU3NGMwM2M3Mjg3ODFlIGxlZ2FjeS10cnVuaworNDY2MTUgMzQ3M2ZjZjBiY2VlODQ2MWY2ZjY2ZmQ2NjYwNWZkYmVkODdkNjc3NiByZWxlYXNlMjQtbWFpbnQKKzQ2NjE2IGFhYmMxMzYwMjQ0MGFmM2U2ZjhiNTBjY2VkMmM0YjVlOWRlMDMwNzMgbGVnYWN5LXRydW5rCis0NjYxNyA4NTU5OTNiMDlmZDkyMDgyYjQyYTdkNjU1NTY5MGYyYmU5NDBhYTNlIGxlZ2FjeS10cnVuaworNDY2MTggMzJmNzA2ZmQ0NTAzZTk4OTBlN2YxMWJjODQ0ODFjZjNiZDM3YjUzYyByZWxlYXNlMjQtbWFpbnQKKzQ2NjE5IDk3MDUyNmMxYTdlMmZmMzY0NGVmMmMyNDU2MzMyY2JmYTQ3MmEzYTggbGVnYWN5LXRydW5rCis0NjYyMCAxMjlhYjg0NmE3MWZhZmY2MTIzYzM1NWVkMDU2MmM3ZTMyZWYyOGNjIHJlbGVhc2UyNC1tYWludAorNDY2MjEgZDQxNDBmNzlmMWM3MDc5OGEzMDEyNDNmNjRhYTA2YWEyZDY1MWU0ZCBsZWdhY3ktdHJ1bmsKKzQ2NjIyIGY3ZDQyM2MwYmNkODZhM2IwM2JjOWI1OTY0NjAwMDJkMzMzYTQ2MDkgbGVnYWN5LXRydW5rCis0NjYyMyBmMGY1ZGNhMjk5OTA3YTQ4MjNjYjliOWZiYzA1NDkyZjMxNjYzMzdhIGxlZ2FjeS10cnVuaworNDY2MjQgMzQ3MTRlNDBkNDY1NmRmMDI3Njg2NjYxNGJkZWIwNmIyMzA4NGMwMSBsZWdhY3ktdHJ1bmsKKzQ2NjI1IGQxZmFjYTRmMGI4MDI2MTI1YjFmMWQyMjkxZjc1OTkyOTA5NGJlYWMgbGVnYWN5LXRydW5rCis0NjYyNiBhNDY1NDc3MWU1YjMwMTQ0Y2I4MThlODYwZDAzODQ4YjA1MGI2Zjk1IGxlZ2FjeS10cnVuaworNDY2MjcgYmVmMDIzNmQ3YmZhNmYxMzZlM2Y1NzhlZjU1MmQ1ZGMwODM3ZDhkNiBsZWdhY3ktdHJ1bmsKKzQ2NjI4IDRlYzk0MmNmOGM5MmVkNzZlNDE0YWE4M2MyNTY0YTM2NzE1NDkxNjggbGVnYWN5LXRydW5rCis0NjYyOSA4MDZmM2UxNDExOWQ3N2RjODNmZDc2MTYwYTQyMjQ4NTk0ZmVjNWU4IGxlZ2FjeS10cnVuaworNDY2MzAgNzIxYTdlYjIzZWJmOWMwOWRjYThiN2MzODMwMmFhNzExOGFmZTNkZSBsZWdhY3ktdHJ1bmsKKzQ2NjMxIDE2MzE4MjQ5YWEzMzI0NjM3MzIwYmUzNDVlNjE0MmYyN2QyZGQ1MTggbGVnYWN5LXRydW5rCis0NjYzMiAyNDhkMTA2Zjg5NTJlZmQ0ZmQ3MWJjN2I5NDY2NjdmNDhmZmEwOGVkIGxlZ2FjeS10cnVuaworNDY2MzMgMDdhY2Y2ZmE1YWEwZWRmZmVlYjFlMDFiNmU4YjFkZGZhZjU2MTc0OCBsZWdhY3ktdHJ1bmsKKzQ2NjM0IDNhYWRjNmRjNGIxYTY0MjA1NWFhZThjMDRkYTA3MWQ1MWZmMGFjOTkgbGVnYWN5LXRydW5rCis0NjYzNSA2Zjc0MDRmM2ZjNTc2NWIzN2QyYTUxMzczMjQzYzY4YzcwNDMzNTdiIGxlZ2FjeS10cnVuaworNDY2MzcgNTcyMmYxMTJkNWRhNTRiZDA1YjEwYjVkZWQ0YWUwZjdlMDgyZDZlNyBsZWdhY3ktdHJ1bmsKKzQ2NjM4IDgyMDcyYThmNTI2NzRmMDM1NGY2Mzg1NGY1YzBlZjY4OGU3MTQ3MTggbGVnYWN5LXRydW5rCis0NjYzOSAwN2U1MDNlODU4ZWZlMjdkNGIwODMxMjJmODNkY2M2YzBlMjE1ZjA5IGxlZ2FjeS10cnVuaworNDY2NDAgMGIyYjA3NmU1OTA4ZWEzYzEyMzRiYjc2NTM1Mzg1MjFiYTQ4NzJjYSBsZWdhY3ktdHJ1bmsKKzQ2NjQxIDE5NDMwY2RmZjJiZDZhYTkxZjI5OTkyY2VjMDhmMTQ2ZGJjMDA4NTkgbGVnYWN5LXRydW5rCis0NjY0MiBhMTE0MDAzYWEzZDNlYjA3MTMzNDQzYjFiYmFiYmY5NzFiMGYxMmU2IGxlZ2FjeS10cnVuaworNDY2NDMgNzIzOWExYTgwNDg3OTAwYTNiZjExZDZhZDgwMjY4N2Y3YTRiZDViYSBsZWdhY3ktdHJ1bmsKKzQ2NjQ0IDQ3MjJkMzdmYWExNDM3OGI5NGFkZTMwNjJiZDI4NTU5MWE2MjczYmMgbGVnYWN5LXRydW5rCis0NjY0NSBlMDBlNjhkZDFkZGZhODYxYTc5Zjc3NTI1ZGM0ZGYwYmI0MTE4Zjk4IGxlZ2FjeS10cnVuaworNDY2NDYgNWVjODk3M2RkMjIxMzkxYjlhYzU4Y2NiN2U4MDk3Yzk5NTA4NWI3MSBsZWdhY3ktdHJ1bmsKKzQ2NjQ3IGRiNzkyOTc3MjYzYWNlZTZmMDRkNThkMWE0NDMwNTg3MTQwZGFmYzQgbGVnYWN5LXRydW5rCis0NjY0OCA5ZTBiMDUwY2U0NmYwNWMwZTc3ZTM2NTk4ZDc1MGE4NDkwNTIyYjg1IGxlZ2FjeS10cnVuaworNDY2NDkgMjE5NjliNzFjMzZkMDcyMWNhZThhMzYyODQ3YTk3YzU3MTgxOGY3MyBsZWdhY3ktdHJ1bmsKKzQ2NjUwIDVkZmIyMWEzN2YxOWZhZjkwYjVlNTE1MGNkNjc3YWVhNTU0ZWFjYzkgbGVnYWN5LXRydW5rCis0NjY1MSA3ZDMxZDAzMWY4ZTEzMzUwOWFhMTE3ZmU0ZWU1YjIzMDljMWQzY2U4IGxlZ2FjeS10cnVuaworNDY2NTIgOTEzZTVlODRmYWRlNzZkNjRiM2I5OTgxMDhmZjUxM2U0MTRkYzQyNiByZWxlYXNlMjQtbWFpbnQKKzQ2NjU0IGYxNmQ0NGQzMDNjZjg0MDA5ZTQyOTA0ZjVmODUwYTBmOWNlMjA0YjMgbGVnYWN5LXRydW5rCis0NjY1NSBjNDU4N2E1ZjVlOTRlZTZjNmFjYzE4NTNiZWI0NGUxMWE5ZDliNjZlIGxlZ2FjeS10cnVuaworNDY2NTYgZDAwNzNjNmY2ZjU2ZTJkODE1MzUzMjA3ZjQwMWNkNGFjMTk1OTg2ZSBsZWdhY3ktdHJ1bmsKKzQ2NjU3IDFjMjNlOTVhODBhMmVmODk0YzQzOWQ3ZmJmZTY3ODZlZGVhYWY4YzMgbGVnYWN5LXRydW5rCis0NjY1OCBiMDBjYmIwOGUwY2MxMWJlZTBkZWFiNDU3YTlmYTRlM2E0ODM3YWFlIGxlZ2FjeS10cnVuaworNDY2NTkgNThkZTYxYmVkZGZjZWYzZmYyYTNlM2YxOWUwY2E2ZWRmODA5YWNmNSByZWxlYXNlMjQtbWFpbnQKKzQ2NjYwIGMwNWVmMDhlMWJhOTRkOWNhMTc5ODY5MzBiYmU0MDc5MmIwYzBkNTggbGVnYWN5LXRydW5rCis0NjY2MSAyMzc0NTYwNjJiODBmNzM2Y2I4NzIyMTMzMWM5MzUyYzRhMDk5NmZlIGxlZ2FjeS10cnVuaworNDY2NjIgY2IzZjUxMzhlY2I1NzgwYTRmZGI1YzBhY2ViNDhlODZmMTdkYTU0YiByZWxlYXNlMjQtbWFpbnQKKzQ2NjYzIGM5MDhhYWE5MWVhZTE3ODdjMzE1MzQ3YTU1ZTRmZDNhNTgxZjU3ZGIgbGVnYWN5LXRydW5rCis0NjY2NCAxYzlkODA3N2VjZmIyMWY5Y2ZkNzY3NDg3OTYyYTE1OWJkMGEyNjY3IGxlZ2FjeS10cnVuaworNDY2NjUgNWFkYmE3MDk2MDZiM2E2NGQyMmNhOWIyYjhkM2Y1MWVlNzg3Zjk0ZiBsZWdhY3ktdHJ1bmsKKzQ2NjY2IDk5MDY0N2UyYWJjNGIyNDUyYjI1ZTg3NzhkOTNkY2YzMDRmM2IzM2EgbGVnYWN5LXRydW5rCis0NjY2NyBhNGI1OGFiNjUyMDIzYzU4MTI5MDUzNDhjN2NjYTE2NDhhZDJiZmE5IGxlZ2FjeS10cnVuaworNDY2NjggZjNhNjc5OTg1ZTBkNTQ4ZGYzMDdhOTlhNzRhNDVmMWIwMjE3NzViNyBsZWdhY3ktdHJ1bmsKKzQ2NjY5IDMwNjA1YmY5NWVmOGI4YmU3YWIwN2MwNGJkMTQwMTVjODhlNjU2NDcgcmVsZWFzZTI0LW1haW50Cis0NjY3MSAwMmQ0NzU0MDVlM2I1ZjI5MGI2MDRhZjAzMzMxMTEwYTVkM2VmODFiIGxlZ2FjeS10cnVuaworNDY2NzIgNjY0OWI1MWUyNDVmOTI1ZGM3NzQxMTAxYzA5NzU1ODYyN2E5NmNjMyBsZWdhY3ktdHJ1bmsKKzQ2NjczIDIxNzdhZWNkOTFmY2JhYjNkYThkNzczMGE1YTYzYTNhMTk3NmNhNjEgbGVnYWN5LXRydW5rCis0NjY3NCAwODU1ZGExNGE4MjBjMGYxNmE1ZTdiY2I5MGE2ODUxNDQyOWFlYzEwIGxlZ2FjeS10cnVuaworNDY2NzUgOTYzOWNiMTNiOTQwNTMwZDEzOTBhN2VkNDYxZjcxMDQxN2UwMDg2NSBsZWdhY3ktdHJ1bmsKKzQ2Njc2IDY4N2FhY2Q2NGJlOTY2OTYxYWQ3NDcxMTgwMzYwYWUyZTJiZDc3OWMgbGVnYWN5LXRydW5rCis0NjY3NyAwZGNiOTIyOGNiM2ZkODU1MDI0MGQ5YWQ5NDQ3YjFkMTQwZWIwMjA3IGxlZ2FjeS10cnVuaworNDY2NzggNjU0ZjAzODNkYmNiMmUzY2NhZTk4MWMxMzgyYzU1NTE3MjFiNGNkYiByZWxlYXNlMjQtbWFpbnQKKzQ2Njc5IGM0YjQ0MjIyYTU5OTRiMDdhY2Q0ZTllNzY4ZWEzNjkxZGZkNmVjNTQgbGVnYWN5LXRydW5rCis0NjY4MCAxOGRlNTBiNThmYjFkNzhmZmNlNzYxMjE1MWE4N2U3NjFkOWUzMDBkIGxlZ2FjeS10cnVuaworNDY2ODEgZjAwNTE4YmI1YjQzMzU3NzVjMDZlMjY5YmQ1NGY2YzIyMzJlOGQyZiBsZWdhY3ktdHJ1bmsKKzQ2NjgyIDgwYTYyNzM0MGM5ZjIzZDc5ODA0N2ZlMzhjNWU4MWYzY2YwZjU3YmQgbGVnYWN5LXRydW5rCis0NjY4MyAxMWY2NjczMTU1NGRiYTc4MGU1MDUwNTQ3YWMxYzVhMGNjYTdkMjk5IHJlbGVhc2UyNC1tYWludAorNDY2ODQgYTYwYWRmMGNiMmZkNzRmYmM3ZDkyNGQzMzY4YzIzMGVmOWU1NTdmMSBsZWdhY3ktdHJ1bmsKKzQ2Njg1IDcwODFlOGQ1MzI5OGVmM2M0NDlmY2Q3YTkyNDMxZDZlYTQyMGI5NjcgcmVsZWFzZTI0LW1haW50Cis0NjY4NiA2YWU0MThlNGIzNmE5YTY3Y2NkZTcyM2JmZGEyMDk1ZmRiNDZlNjk1IGxlZ2FjeS10cnVuaworNDY2ODcgMWUzOGZmODFjOGE5NTJlZWJmN2NiYmYzNjcyNTc4NTJhOGMwM2VmMiBsZWdhY3ktdHJ1bmsKKzQ2Njg4IDgyOGMxMDZkNWVjYzlmZDc0Y2QxNmY4YmZkMWE5Mjg2YjE2ZGMyMGEgbGVnYWN5LXRydW5rCis0NjY4OSA1ZmJlZmI1YzhhMjNlNjljZDAyYTZlMzk5MzVjNTFjOWMyMzk4MWUxIGxlZ2FjeS10cnVuaworNDY2OTAgMGRjYjYyZDZkOTlhMjhhNDgwNzY2NGFhYjJjMzU4OWE1Njk1MDdhNyBsZWdhY3ktdHJ1bmsKKzQ2NjkxIDk4ZTgxYWY0MDAwN2VmZDE4ZWE2NjZlYzRkYTVkNTJhZDE2ZjRmNjcgbGVnYWN5LXRydW5rCis0NjY5MiAxYzAxNmY5Y2E1YTc0YWQxMzczNmNiNzAxM2RkY2ZkMmYxMzgyZWQ1IGFpbWFjaW50eXJlLXNmMTQ1NDQ4MQorNDY2OTMgMjgwYjhlYWVlMWMwMzRkZGEwNWFjMmQ4NzJiMDZhMjhjN2IwMmFkYyBsZWdhY3ktdHJ1bmsKKzQ2Njk0IGM5ODlmYWZmZjNkYzZjNTJkYmEyZjE0OGIyMzIxMTIxMTc0ZDk5YzEgbGVnYWN5LXRydW5rCis0NjY5NSAzMTFmNzUxYWNhN2EzMzJkODgxNWIwNWQxNDBmYjk0NmM3ODhjM2RjIGxlZ2FjeS10cnVuaworNDY2OTYgY2IzYjQzOWMyOWNjZmRhOWZlMDgxZjk1MTk3NmRiMWQ2MjQ4MWZkZSBsZWdhY3ktdHJ1bmsKKzQ2Njk3IDkzMWFkMDZiZWM1NjE5NjlkMTQ0ZTVhOTAzZWRkODhlYWYzNDhhYjMgbGVnYWN5LXRydW5rCis0NjY5OCA2MjVjMmQ5OGExZjgwNWQxNzkzN2MzNmE4MzlhNTU5ZWQzMDczMGU5IGxlZ2FjeS10cnVuaworNDY2OTkgN2JmYWZkZWZmZWUyNjA5NTZlYzI4YWZkZDNiZjE1MzZiYTdkMjgwMyBsZWdhY3ktdHJ1bmsKKzQ2NzAwIDFlOGI1OTM4OWUyZTEwYjY4MjY4ZTk5MzE4ZjE0YTdiOThhN2JkMzYgbGVnYWN5LXRydW5rCis0NjcwMSAxZTg1NjU3ZjA0NzQwZDYwYjY5N2RmMjJiNDJjZWZlY2ZjOTZlMjI5IGxlZ2FjeS10cnVuaworNDY3MDIgM2EzNmQ1ZjViMTBmZDMwNGU1MTZmOGM5ODg4NjU0YjIwZmIyYjc5MCBsZWdhY3ktdHJ1bmsKKzQ2NzA1IGVhOTk2NmM4ODY1NzQyZDI4MDQ2YTgzZjQxODc5ZGViMmYyYmNmNTEgbGVnYWN5LXRydW5rCis0NjcwNiAwY2QyMjczYmMzYjE3NTZjODhjM2Y2YjY5MjNjMThjZTk2YzU1NDQ3IGxlZ2FjeS10cnVuaworNDY3MDggZGVmYjJiOTkzNDM0ZmYxZjY2MTk3NWQ2Mjk4M2Y3ZGYwZjFjYTgxMSBsZWdhY3ktdHJ1bmsKKzQ2NzA5IGEyY2Y4NzFiNzgwMGU4ZGRjMzczYTk0MGViNmMzNTcwMWI2NTRlZGYgbGVnYWN5LXRydW5rCis0NjcxMCAzZmIzODM1MWRkMzljYjczZTVkMmJiM2I0Njc1ODhmMTM2Mzc1ZWFiIGxlZ2FjeS10cnVuaworNDY3MTYgMmFmNTc1N2RlN2IxZTlhZDY0N2E5OTJmMmU2YzczMzI0YzgyODZlZSBsZWdhY3ktdHJ1bmsKKzQ2NzE3IDFjYjJlY2U0YjllMWRlMGVhYmQzOWQ2YWU0MWEyMGZlNDkzNjEzZjggbGVnYWN5LXRydW5rCis0NjcxOCBhMzY2OGU5NGZjNmQ0ZDQ3NzJiNGMzNDAzNGJlNTE1M2EyMDA5ZjQ0IGxlZ2FjeS10cnVuaworNDY3MTkgMWI0N2QwMzBjM2ZhZTVjN2Y1YWIzYjA2YmRmNzZmYjMzYTJlNjlhMSBsZWdhY3ktdHJ1bmsKKzQ2NzIwIDc3MDRmMzc1NDFmNDIzMWZlYmQ2MDJjZTMxMzI5M2Y1NjIzNDBkMDkgbGVnYWN5LXRydW5rCis0NjcyMyA4NzJlOTkxZjliNzAxNTQwOWVmNTdhNzlmMjM1YjA3NzYyYzhhZjYyIGxlZ2FjeS10cnVuaworNDY3MjcgMTEwMGI1MmM1NWZkZmUzNjQ1YmYxMzllNTYwNGZjYWNlN2U3YTQ3MCBsZWdhY3ktdHJ1bmsKKzQ2NzI4IGEwNzYxY2ViODYzM2E4MWEzNGQ4NGY5MGZkM2M2YzZkOTJkZGM2YTUgbGVnYWN5LXRydW5rCis0NjcyOSAwYjRlYWM0MDUwYjgwMDI4YmYyZjU1YTBlYzE3OTA0MWJmM2ExMDE4IGxlZ2FjeS10cnVuaworNDY3MzAgZmMzYmNkNGU0NGI5NjRhZTcyODAyNjlkMmU5MTI4NDBmOTU2ZTNjMSBsZWdhY3ktdHJ1bmsKKzQ2NzMxIDBlN2JhZmIxYjgyZjljMWExOWQyN2I4ZWE3Zjc4YzhkMjZkNDgxY2QgbGVnYWN5LXRydW5rCis0NjczMiA3ZDMxYjY2OTJhYjc0ODAxZGViMzVjNjU2MTA0MjA3YWZhMDIxYmIyIHJlbGVhc2UyNC1tYWludAorNDY3MzUgZTNjMDhmMDY2ZWI4MGQ3ZTgxZWQxZDg5OTBkMDM4ZDEwNTU1OWYwMCBsZWdhY3ktdHJ1bmsKKzQ2NzM2IGZjYmY2M2M5YjRmNmZjZWRhNjI1MjU4N2JjMWVkZmVmMTIzYmZkNTkgbGVnYWN5LXRydW5rCis0NjczNyA0YjBhM2QwZDg1ODQxYjc1MGY3ZjMxNGI3ZTdkMzNkMGU5YzY5Yjc0IGxlZ2FjeS10cnVuaworNDY3MzggMWUwNzA0Y2Q5ZWU4MWFhYTU4ODBmNWE4ZGIwMjNmYTRjOGIwZTcxNyBsZWdhY3ktdHJ1bmsKKzQ2NzM5IDVjNThmZGE5NWFhNWEyYmZkNDIxYzdhMWVkNGNiY2U5OGM1NDM0ZDQgbGVnYWN5LXRydW5rCis0Njc0MCBmMjhmOWMxNWUyZDBmOGUwMjMxN2U4NzBlNjZjNjVkNjY5MDEzNWM3IGxlZ2FjeS10cnVuaworNDY3NDEgMzU4MWQxZGM0MjUzMzcyMjMwNTk2ZWM4NDlhNmJmMGU2MTI1ZDE3MyBsZWdhY3ktdHJ1bmsKKzQ2NzQyIDFkMjM5YzdlOGQ2MDc1YTMxODYwMThhYjZiNGZhNDBkZmRhZDFiMzIgcmVsZWFzZTI0LW1haW50Cis0Njc0MyA3MmM4ZjE4ZTAzMTE4M2RiZTlhN2ZjZTlmZTY2MDMxMTFkOTYwOTliIGxlZ2FjeS10cnVuaworNDY3NDQgNzYxOTIxNmJiYzE5NGMzNDMxZjgzNzA5YWFiOTZmOWE5YWZiYWJlYyByZWxlYXNlMjQtbWFpbnQKKzQ2NzQ1IGQzZDk2MWYzODhiZTJiMDNhZjY0YjE0OGM3M2YwMmY0NjczY2VhN2YgbGVnYWN5LXRydW5rCis0Njc0NiBlMmJhNWFlNGI4MTNkOWZkMmMyZDI2OGQ4YmFmNmMyNjg0MjU1ODUxIGxlZ2FjeS10cnVuaworNDY3NDcgZTBkMjk1ODYyMTJhMzc3ZWRkOTIyNzM2OGY0YzNjNmQ3MGNmMzIxNSByZWxlYXNlMjQtbWFpbnQKKzQ2NzQ4IGRlZTczZmE4MTEwZjNlYWQ0MzAwZjkxNjQ1ZjY1ZGI4YzhlM2U0NWUgbGVnYWN5LXRydW5rCis0Njc1MCAxOWZkNjE0MTk0MGQ1YjBhN2I0ZmIyYzQxMzg5MTJhYmIwMjgzZDk4IHAzeWsKKzQ2NzUxIDI0OTMwZTNiNjA2MTlhZWMzMTljZGYzM2IyY2Y0MGJjOTMxMTgyNmIgbGVnYWN5LXRydW5rCis0Njc1MiAzNjVjYTA0ZDA4NTY0YTA5ZDFjZWJhYWRhZTc0NWIwOGE0Nzc2YzY4IGxlZ2FjeS10cnVuaworNDY3NTMgMDk5OTdiMmY2M2EyYzNkYWIyZTZjZDdlYTljYmZiZmYxYmZhMWIyZiBwM3lrCis0Njc1NCBhMTljMjBjNWU1Yzc1NjYyMTU3YjExMDJlMzZjMDdkMWUyYzAxYWI5IHAzeWsKKzQ2NzU1IDZiYTdkNDY2Nzk4NjdiZjlkNGFiNmVlOThlMTU1ZmNkMDExN2NhZDUgbGVnYWN5LXRydW5rCis0Njc1NiAwZTMxOTY2NzQ1NWMzNWM2MjIyNDM1NWIzNzI5M2VkZTRlNTAyM2I4IHJlbGVhc2UyNC1tYWludAorNDY3NTcgNWJjNzI3MmI4MWU1NDdkZmNjZWEwYjBmZmI4MDM1MjA5N2NmNzU1NiBsZWdhY3ktdHJ1bmsKKzQ2NzU4IDkzNWFjMjJmMGIzZjAyNmU1M2Y4ZGJjN2NiMWJjOWQ2NTEzNzE2MmUgcmVsZWFzZTI0LW1haW50Cis0Njc2MCA1ZjE5NTQ0M2UwMGFhOTA5YzkwNWZkMTUxYzM5ZmNlNzhlZGQ4NDkyIGxlZ2FjeS10cnVuaworNDY3NjIgNGU3OThjYWEwODJlNWNkZDEyYTJkN2UxZjcyZmNlZTFiN2JjYzA1OSBsZWdhY3ktdHJ1bmsKKzQ2NzYzIGMyMDM4NDA1N2EwNmMyN2I3MzYyNTVhMGI4MmI4NGQxOWRhNTY1OTQgbGVnYWN5LXRydW5rCis0Njc2NCBjM2M1MmYxNTk5OTlhZTk0NjBhZmRkYjRkNjM3Y2MxMjIxZjkwZmE5IGxlZ2FjeS10cnVuaworNDY3NjUgZWNhNGZlMTMyOTQwYmQzYzUyYWE2ZGIxMTBlODllYjQyMzU2MTJjMyBsZWdhY3ktdHJ1bmsKKzQ2NzY2IDJlYTI2M2I2Mjg5NzJlNDUyNzNmZDlmZGViOGJlMWVlOTY2NWI2MjQgbGVnYWN5LXRydW5rCis0Njc2NyBkZWJjOGQ3ODNmODY5ZTVhOGM4YTcyOThmNzI0MGNhYzFjZjlhMjc3IGxlZ2FjeS10cnVuaworNDY3NjkgMGExYmFkMzJhYmZlMzlkOWEwZGMwYmIyNmNjNGM1MGY1NmViODBlMSBsZWdhY3ktdHJ1bmsKKzQ2NzczIDY3ZjQzMGQ5MmIzOGU1Y2E0NGMyMmM3NjNhNmY0MzE3ZjlhZmY4MzQgbGVnYWN5LXRydW5rCis0Njc3NiA0NjU5OWZjNDg2ZThmZGFhZjIxZjhiYjgzYjlhODhiNGRmMjA0ZjA1IHJlbGVhc2UyNC1tYWludAorNDY3NzcgYzU3MzIxYzg0MjI2YzkxNjc5NmE4ZWQ1YzA3ZWMzYjVlZDE2YjI2ZSByZWxlYXNlMjQtbWFpbnQKKzQ2Nzc4IDc3YjY1ODlmYWRiOTdkODVlMGM2NDVjODE1Yzk4OWYzNGU1NTY0YmYgbGVnYWN5LXRydW5rCis0Njc3OSA0ZWYxYzY4NWJjYmRjZTQ0NDNiMzI4YWUwN2M5Nzc3MDM5ZmYzMGY1IGxlZ2FjeS10cnVuaworNDY3ODMgMDVhNDljODk4NWZiMDlmNDc1YzdhMmE5ZjQzYjlkMTgzYTk2OTk3NiBsZWdhY3ktdHJ1bmsKKzQ2Nzg0IGFjMjVlZWU5MDI1NDE3NTEyMWJjZWExNTc2MzVlOWVkZjFmOTJkNzYgbGVnYWN5LXRydW5rCis0Njc4NSA3MmUzN2FkYTQxNzA3MmZiMWExMzAzMDhjZThlMzBlM2YwYjdhY2FjIGxlZ2FjeS10cnVuaworNDY3ODcgNzBhYWMyYjkzZTA5YTNhNDg5MDBiMjViZDNiYzhkNWJiZWNlYzIwZCBsZWdhY3ktdHJ1bmsKKzQ2NzkyIDZlOGQ5OTcxODE3MDBkNDFjMjIzMjZmY2QzNDk4MjhlNmMxY2I5ODcgbGVnYWN5LXRydW5rCis0Njc5NCAxMzVkMTU4NmIzNWQ1NGJhYzgxZDcxZmE0NmUyZDZhNzk4NDgyMzljIGxlZ2FjeS10cnVuaworNDY3OTUgMWNhZmJjZDdmNTVjY2NhOTFjNDA4NWIxZjVhNmVhNWFmOWFmMmFlNSBsZWdhY3ktdHJ1bmsKKzQ2Nzk4IDc2YWQxMThmZmUzYjVmODU2Mjg2NzU5ZjBlZGM3NTNkNDhlZjdiNDggbGVnYWN5LXRydW5rCis0Njc5OSA1YTc0MTkzNDI5ZjA2NGUxMjVkZTkzNjJjYzE4NjM2NDRkOGJhNDJhIGxlZ2FjeS10cnVuaworNDY4MDAgMDdmMjQxOTdiODdjZDcwZDIxMTY4YWYxYTExNGM1ZjM2Y2FjZmM0MCBsZWdhY3ktdHJ1bmsKKzQ2ODAxIDI2YTk3ZTViZGYyMTIxNTExMDNhN2I4MzBhNDUzN2VhMTc0NjkxYTEgbGVnYWN5LXRydW5rCis0NjgwMyBiMTI5YTUwMjcxYWRmZWM3OTIwNjIzNmNjMmVjNTM5NDRiZWZjZTU0IGxlZ2FjeS10cnVuaworNDY4MDQgMTgyOGFmNWRjYzk5NDRhMmY3ODU1YjdmY2IxNjg2NGI3OGIzYmE5ZCBsZWdhY3ktdHJ1bmsKKzQ2ODA1IGJhNmVlYmY3YzcxOWRmYjU4YTVlMzk1NGE4Y2U1YjI0YmZhMzg5MDkgbGVnYWN5LXRydW5rCis0NjgwNiAxNmM3OThlOGVhZTMyN2I4NWE0NjBjYmJhMWNlYmZiNDQxOTc2MzkwIGxlZ2FjeS10cnVuaworNDY4MDcgNDkzZmI1Nzc5MzJmMmQ4ODMxYTQzYjUzMTljNGVjOTdmMjhhMTdlOSByZWxlYXNlMjQtbWFpbnQKKzQ2ODA4IDQyZmU2ZGUyNDYwMmZkNDBmNDJlMzkzZWQxMzQ0MWNmNTQ5YTNlZTcgbGVnYWN5LXRydW5rCis0NjgwOSBhZDVkNDczNWJlZGM4NDZjNmFlZjIxYzEwMmVjZGJjY2NlYTVjMzIxIHJlbGVhc2UyNC1tYWludAorNDY4MTIgNjc0NTBkYjI2ZjgxNjdlNzhiYmMzZTA1MDk3MDgxNDdkNTU3Y2JlNSBsZWdhY3ktdHJ1bmsKKzQ2ODEzIGUxNWZhZmE0MTA3ZDIwZDZiMGQ0MTlkZmI3YmYzZGQ5YjJkZTg1YzMgcmVsZWFzZTI0LW1haW50Cis0NjgxNCAwOGIyNGM4OGQ1MTkwMTBmNTEzM2I4Mzk0Mzg3YzEyNzZlNDg0ZjVlIHJlbGVhc2UyNC1tYWludAorNDY4MTUgZTdkMDg0Y2Y2NWJiOWI0MDg0MGNlZTkzM2RhZjFiYmM1NTBiYTQzOCByZWxlYXNlMjQtbWFpbnQKKzQ2ODE2IDQ1NGFhMGVjMGViN2IzYTZjYjM0MWNjMjEwMzA0NmEzMjQzYWI2ZTEgcmVsZWFzZTI0LW1haW50Cis0NjgxNyA4MjMzMWYxMWExNTYwYmZlM2NlZjQxOTgxYmJhOTRhNGQ1ZmRlMGVjIGxlZ2FjeS10cnVuaworNDY4MTggZTJkMmRjNTA2NTI4Nzc5YmJkMjVkNjk1MDI0MWFkZDEzM2E3NjBhMCBsZWdhY3ktdHJ1bmsKKzQ2ODE5IDQyODA4NTI2NTExYzliYjQ5MjBiMWUxMDcyMjFmOGVhZDE3M2VmZjYgbGVnYWN5LXRydW5rCis0NjgyMCBiMjNlZWI4MDI3ODA1MjNiNjU0OTZlNGJiZjVlYTZjODI2MmIzZWE2IGxlZ2FjeS10cnVuaworNDY4MjEgMzEyNTA5OWIzNDk3MWMzMGM3Njk3ODNlZDM5MDBhNmU1MWNlYTIxNiBsZWdhY3ktdHJ1bmsKKzQ2ODIyIDJkZDE5NzAxNDYxMjJhZGVjZWM4NzY5MjZkMjQ4YjU1MjY1YWFlODEgcmVsZWFzZTI0LW1haW50Cis0NjgyNCBhYTVhMWJjYTI4ZGQ4OGNjYzJkZWMxNGI1OWU0M2E0ZDgxZTY3MGY4IGxlZ2FjeS10cnVuaworNDY4MjUgY2Q1ZjJjNWJhYjY1M2I1NTczNmU3NzNlYWUzODVhYjQzMmMyZjhkMSBsZWdhY3ktdHJ1bmsKKzQ2ODI2IDUzOGNmMTg4ZjhhNmNiYzIyMDhhNTIyNjJlYjlhYmRiOWYyNjA2NDEgbGVnYWN5LXRydW5rCis0NjgyNyBiYzA5MTE4MWI4NDEzOTU1MDdhNzc4MDIxZjQ1OTVmMWIxZTRiMjRjIGxlZ2FjeS10cnVuaworNDY4MjggMDE0MjUzNmI1MmI2NGIzYTgzNmE2Mjc4MDc3ZjZmMDViY2U0YmMxOSByZWxlYXNlMjQtbWFpbnQKKzQ2ODI5IGM1YWZkNDQwYTRkMDlkMGRlMGM3NzM3ZTUzNzFjZDJkMzVlNzJlN2IgcmVsZWFzZTI0LW1haW50Cis0NjgzMSA5MjQ0MGRlODY4ZTkzZmVmMTNiMzM4M2JlOWNjNTEwZTk3ZmI0ZGZjIGxlZ2FjeS10cnVuaworNDY4MzQgYTFkZDI1ZWMyZjViYzY2NTU4YzMzODlkYWI1NWIwYmYzMTJlNzk4NyBsZWdhY3ktdHJ1bmsKKzQ2ODM1IDczNjY1ZjZmZWMzMTVhZWNmMzBkY2Y3ZTMxYWY0NjhmZmE3ZDliNDUgbGVnYWN5LXRydW5rCis0NjgzNyA3YjMxOGU5NmY4MGFhOTQ4ZGFhNDBmMWNhMDcxZTk5ZTFiM2EyY2U4IGxlZ2FjeS10cnVuaworNDY4MzggYjhmMjI4NTFjMWZmMWU1OTkyNGM1ZTdiMjY1ODBiOTNhOTAyNjU1NiBsZWdhY3ktdHJ1bmsKKzQ2ODM5IDBiM2ZlMmI3MzRhMWRmZjE0MDY1NWYxM2MzMGM4M2RiNTUzNmU2NDcgbGVnYWN5LXRydW5rCis0Njg0MCBiZjRlNDg1YmVjZjM3NzYyMmIwZmMyYmFlOWUyZWJlZTdjMmNkMzBlIGxlZ2FjeS10cnVuaworNDY4NDEgMTk1YTBkM2VlY2Q0NWViNzQzYWIyMDRiZjhhMmU2MzA3YTFlNjM4NCByZWxlYXNlMjQtbWFpbnQKKzQ2ODQ0IDlkODQ3OGY3MzJkNWFkYzkxZjFjN2RjOGNiMjk5NDBlZmYxYjQ3N2MgbGVnYWN5LXRydW5rCis0Njg1MCA5YTk0NDY3NjczMmE3ZGIwZTQwYmI2NWM4ZGVmNjY1YzMzMjgyODljIGxlZ2FjeS10cnVuaworNDY4NTEgZTgwMDk3YmY3M2I2MGZhZDhlN2YxNDBmMzAzNjVkMTM1NjNhZWNjZiBsZWdhY3ktdHJ1bmsKKzQ2ODUyIGU2MTU3NTVjYTg3MjVmYjBiOWY4ZmNkNzE1Y2NkZDM5Y2I1NmViY2IgbGVnYWN5LXRydW5rCis0Njg1MyAwYThhMzkyZTFmYWVjZjMwZjgxMzUzZTgzMTcyNTBkMzkzOGI1NmQ3IGxlZ2FjeS10cnVuaworNDY4NTQgYWYxNzQyYTgwNDllYzc4ODZlODRkNTEwNWVlZjg5M2ZjMjBmNGIwZCBsZWdhY3ktdHJ1bmsKKzQ2ODU1IDUwMWVlMmEwNWZlYzRiOGZkMGRmNWI2YzI4OGVhYjcyYjM1ZDhlZTkgbGVnYWN5LXRydW5rCis0Njg1NiBhZGYyMDg5MmQ4Y2ZiYzBjZWZmZGM5N2JkYjE3N2YxYWFjOTkzYWJlIGxlZ2FjeS10cnVuaworNDY4NTcgNDkwMjZhZjlkMWQ3OWM0MWEwYTdhYTY0YjJmZWJkYmQxMzQ1M2ZhNCBsZWdhY3ktdHJ1bmsKKzQ2ODU4IGU4NDY0YWZlZjRhNDFhYTlhN2IyZjYxNWMwY2MzMWI4ODBkNzBjYmUgbGVnYWN5LXRydW5rCis0Njg1OSAxYjNiNmIxOTgyYWFjZDAzMTQ4ODhlZmZiODFiYmVkNWM2NTE2NzM2IGxlZ2FjeS10cnVuaworNDY4NjAgYWIyNTNjZDQ5N2QyMTM3NjczMDJiYmViNmEyNWY4OGEyYzAwMDRhOCBsZWdhY3ktdHJ1bmsKKzQ2ODYxIGZjNGFmZWU0MGMyYjNiODU4YTk1OTc0YmMzNDE3ODUxOTM3Mzc1YWEgbGVnYWN5LXRydW5rCis0Njg2MiBhNzg5MzkwZDhlYTdlZGRlN2QwNjM0ZTdjYWE4NDU1YWI3YTg5NGMwIGxlZ2FjeS10cnVuaworNDY4NjMgYjUwYWIyODhhZTI3ZmY0ODk1NzBiZTMxYjg2YTMzNjhjMzg5MWRmNyBsZWdhY3ktdHJ1bmsKKzQ2ODY0IGQ2N2RlZDdhMjkxNGU0Y2YzZjljMTVhMTgyNDcwYWI0MzFhZGUwZjYgbGVnYWN5LXRydW5rCis0Njg2NSBmY2ExZTQyNGQwMjM4Zjg5NTJiMDg4M2Y3ZWI5Yzc3NDQ1NGQ5OTBmIGxlZ2FjeS10cnVuaworNDY4NjYgY2JmMjcyZjQ3OWQxMDdiMzIzZWNhNDA2Mzk2MzJhMDk5ZDg4OTYyZCBsZWdhY3ktdHJ1bmsKKzQ2ODY3IDVhOTk0ZDI2YTNjZjg5NGJhOWExNmVhODg1ZmEwYjdmYzA1YTk5NjUgbGVnYWN5LXRydW5rCis0Njg2OCAwYWNjNTJkM2ZiZjFmNDM1YTNmYzNiZTdiMmJlZTE4N2I3OWY4YzhiIGxlZ2FjeS10cnVuaworNDY4NjkgZTZjODAwYTQ2M2IxMzEyOWQzYzcxODAyY2FhNWQ0MzdkMzE2MWZmOCBsZWdhY3ktdHJ1bmsKKzQ2ODcwIDhiYTk3Y2NiZjkzYTgzZjZlNmJmYTgwNjJlNWRiYmViYmU4NTYwNzIgbGVnYWN5LXRydW5rCis0Njg3MSA2NmNiY2NlNDIyNzhmMjJkMjE0YjY4YTZlYjJlZmVjNzU5ODkzYTVlIGxlZ2FjeS10cnVuaworNDY4NzIgMWZhNzhmZDFlOTMzOTE0NzRmYzg5NTMxNzA5NmU4NWUyZTQ0NzJkMSBsZWdhY3ktdHJ1bmsKKzQ2ODczIDYwZDc5YTJiYzk5N2U4Y2MwYzMzMDQwOGUzMTczMTJiM2I3Yzk5MTIgbGVnYWN5LXRydW5rCis0Njg3NCAxYTExYTRhNDlmYjg1YTNmOTZmNGUzNGYyNzBiZmIwZmRiMDc5NDVmIGxlZ2FjeS10cnVuaworNDY4NzUgM2VlZTdiZDlhMGQwNzJiNDNiZGM2ZWQ3MGM3Zjc1MGUyNDlhNmQzNCBsZWdhY3ktdHJ1bmsKKzQ2ODc2IDQxNTcwZjA5OWE0YzNlNjUxZjZiMmQ1N2Q3OWMwOWI2NzA3NjZjMWMgbGVnYWN5LXRydW5rCis0Njg3NyA5MmQ4Y2RjNGI5MGMwMmM0ZDE3NWZhNmE0NzBhNzM3OTg1MTI2NDA0IGxlZ2FjeS10cnVuaworNDY4NzggZjE0YWI3MGMzMjBlNDhmZDJiNTJlMzFmYzdhODdiYzI1MDcwNWU2ZiBsZWdhY3ktdHJ1bmsKKzQ2ODc5IDY5ZTg5YzI5MDQ0ZTJiZGQwZmI5Yjc1NTNiMGY5YjVmOTMyZmE3NzggbGVnYWN5LXRydW5rCis0Njg4MCA0N2Q4ZDE5Y2NhZGM3MDUyYmE4YzJiNTI0NjlhMDFlYzUzMDdiNGM5IGxlZ2FjeS10cnVuaworNDY4ODEgNzk5ODNjZjYzNGMwMjVhYjRhNWU3MWVlODdkN2M5OGYzNDgwZThiMCBsZWdhY3ktdHJ1bmsKKzQ2ODgyIDQ2ZjNlYjQ3NGM4NDJkMGIwMGFlOTI5MWNiMzU3Zjc2MTFlMjlhNGEgbGVnYWN5LXRydW5rCis0Njg4MyBhOTFlNzM5Y2UzMzMyNWZhNGFhZjEwMDI0ZmNkOGEzODg3M2QwOTZlIGxlZ2FjeS10cnVuaworNDY4ODQgMTg5MzA0YzlkMDdlYWRhNGNkNGMyMTkxNzJhYjVlZTU5MGMyZjQ5MCBsZWdhY3ktdHJ1bmsKKzQ2ODg1IDJhYjAzOTRlNmU0OWI0ZjM1M2I4NmIwM2NlZjk2M2Q1YTUzZTZlZDYgbGVnYWN5LXRydW5rCis0Njg4NiA2MThkMDg4ZDk2Njg5Y2Y3ZGRhZTc4M2UyYzRjOGY5Mzg0Y2JiY2NkIGxlZ2FjeS10cnVuaworNDY4ODcgMWRhODQ1NmViZDQ4NzE5YTRlYmQ3ODdlNGZiYjM1NjVjMzAzMDkxNSBsZWdhY3ktdHJ1bmsKKzQ2ODg4IGQ1NzcxYTM4OWI4ZWI3YTk4NTc4Y2Q4MDVlZGQzZTEyNjBmZDUzZDkgbGVnYWN5LXRydW5rCis0Njg4OSAxNzAzZWZkYTU3NzQyZDE4MWJlMDQ1ZjIwNzA4ZDY1ZDkyZGI5OWQxIGxlZ2FjeS10cnVuaworNDY4OTAgNTE3MzJlODFjNzk2MTQ2N2Y2ODMyZWI2ZmI4YzAzYTg3ZTNjZjM4ZiBsZWdhY3ktdHJ1bmsKKzQ2ODkxIDhmZTM3M2ZiMjFkNDMwYzRhNjRlYjQ1NGQwMWVjYmQyZGZiNWI5NDYgbGVnYWN5LXRydW5rCis0Njg5MiA5NzFhYmYzYWVjZjQxMTU4Y2M3MGMxZGI3OTNkMTQ1NGYxNWFkZTE4IGxlZ2FjeS10cnVuaworNDY4OTMgOTdiNjFkNmY2Yjc2ODE2MjA0N2E5YzY0ODYxYTE3YzUwYzUzMzgzNiBsZWdhY3ktdHJ1bmsKKzQ2ODk0IDRjNzRlYzgzMWE2YzNiZmVlM2Y4NDQ5M2ZjODBiYjliYjc2ZWI0MmQgbGVnYWN5LXRydW5rCis0Njg5OSAzODFhNzJhYjVmYjgzOTRhMmQzZWEyOGJkNzBjMTAwZDYzNmM3ZDFhIGxlZ2FjeS10cnVuaworNDY5MDEgYzg2MTg0NzNjZGM2ZTgxNmI2OWNiMGNhZTBjOGE1NDkyZDBkMzJkYiBsZWdhY3ktdHJ1bmsKKzQ2OTAyIDUxZjMzNDJiNzBkM2NmYTczOWVkMjBmZGY3ZDQ0NWUwYzIyYzY0MzIgbGVnYWN5LXRydW5rCis0NjkwMyA3NjVmYjFjY2MzZDg5NGRiZGIxYWRhOTFkM2ZlOTQzNjhiNjI2ZGM3IGxlZ2FjeS10cnVuaworNDY5MDUgOWI4NTA3Y2ZiZTk1MDEwNTlmMjc3MGZjZWQyOTVkMWM5YjdhN2JkYiBsZWdhY3ktdHJ1bmsKKzQ2OTA2IGE0NTUyZjA4ZDUzYjM0MjczZWY0Y2M0NDY1Nzk1OGU3NDU5M2YxODcgbGVnYWN5LXRydW5rCis0NjkwOCA5YzUyZWZjYWZmNjUxZGVlODU5MjEzN2Y5OWM3ZjNjNzM3NDU0Mjk1IGxlZ2FjeS10cnVuaworNDY5MDkgNzBiMTY2Y2ExYzQ5ZTIzNzg4NTUyMmU4MjRkODBmYTlkZThkNGY0ZCBsZWdhY3ktdHJ1bmsKKzQ2OTEwIDkxNGRhMTAzNmVlZDVkYjZiMDY4YTZjODA4ZWE4Y2ZjZDMyZTc1NmMgbGVnYWN5LXRydW5rCis0NjkxMSA5MzY0MjllMTBiODc5NmViNmJlYzMxYWZkMzA5NTBlMjQ5Mjk0YmIyIGxlZ2FjeS10cnVuaworNDY5MTIgZWEzNzIzYjJkNDZiZDE3ODA0Njg0YmJhZDI4ODExZTEwYmU2NzYwYiBsZWdhY3ktdHJ1bmsKKzQ2OTEzIDY0NTYwOTJjMTIzNWExNzAxYTc2NGE3Y2VkZjk2N2JkNDQyMWJiZmUgbGVnYWN5LXRydW5rCis0NjkxNCBlMWIxODQ3OWNlOTMwN2QzZjVmYTgxMjQ5MTBhNTNkNGQ4OGMzY2M5IGFpbWFjaW50eXJlLXNmMTQ1NDQ4MQorNDY5MTUgOTgxMjJkMjE3NmYxNDBhMWY1MDI3N2Y5MzI3ZjIyNjI1OTk1ZDdhMiBsZWdhY3ktdHJ1bmsKKzQ2OTE2IDVkYjFmYTZlOTY4MTgzNWY1MmQwY2M5NzRmODQxODVlOGRkMjk2MGYgYWltYWNpbnR5cmUtc2YxNDU0NDgxCis0NjkxNyA5OTIxMjZhMjllMGZkMzhkNGRmYzA0ZGQ3MTQxMGExMWZlMGExZDUxIGxlZ2FjeS10cnVuaworNDY5MTggNGU3NGRmOTU5NTE4YTRiNzM4M2M2ZWQ0ZWNjZDY2NmEyNGRmMTIzZiBhaW1hY2ludHlyZS1zZjE0NTQ0ODEKKzQ2OTE5IGY3ZDIzYmNhNTk5ZmViY2JkMWU0ZTE5YzEwMWZlODFmMWQzYjRlYzYgbGVnYWN5LXRydW5rCis0NjkyMCBhNzE0ZjJmMTNlMjVmMjI3MDRmMTdhYTE4MjQ0MGJlNTU0OWEyNzRlIGxlZ2FjeS10cnVuaworNDY5MjEgM2U5NmU1MDI1ZDlmN2FhZTRiMDRmMzY1Nzg2Y2M1NzZkYTUyMTlhZSBsZWdhY3ktdHJ1bmsKKzQ2OTIzIDZmMmYxOGY4NjM4NzQzZDQ5YWQ0N2QxMjkxZTQ2YTVlYTJhNWJjNTYgbGVnYWN5LXRydW5rCis0NjkyNCA2ZjMwNjExZjI4M2RjYmU3MmVmNzYwOTA2ZjcwNWYxODNiZWY0Nzk3IGxlZ2FjeS10cnVuaworNDY5MjUgNWQ2MjJlNDgzZmNjZmE2MmRmNTdiNDRjMzQ0OTNlMWMzMjU2ODk2OCBsZWdhY3ktdHJ1bmsKKzQ2OTI2IDUxMjUwNzY2ZDZmNWQyNTEzMjAyMDg2YjZmY2I5NGI4NTJjMWFlNzQgYWltYWNpbnR5cmUtc2YxNDU0NDgxCis0NjkyNyBiYjFmMDJlOTcxMWRhNWY1M2VhZDI3YjcyMjNmNWM0YWEwNGJhYTA0IGxlZ2FjeS10cnVuaworNDY5MjggMjE2NzEwNTEyM2U0NDc4YmFhYzc1M2MxNDk2NDdhYmQ5OWJiNDlhZiBsZWdhY3ktdHJ1bmsKKzQ2OTI5IDZlMGMwYzdjZjA2ODlhZDQ4MGNjNWVmZTE3MmE1ZmQyMGVhOWM0YjMgbGVnYWN5LXRydW5rCis0NjkzMCA3MGMyZWZhMDAwMDc4ZjI5YzRkY2VkMjVmMjY5OTUxYzUyYzhmMjNkIGxlZ2FjeS10cnVuaworNDY5MzEgYTI0OTBmNzkzMWQzMTEzOWViNWQ3ZGZlYjIwZjRjYTk5MWI0ODI3ZCBsZWdhY3ktdHJ1bmsKKzQ2OTMyIGJiNjg0YTBjMjJkOTYzNGEwY2YwYzM3NjFiMGY2ODlmOTZmMjk0NzYgbGVnYWN5LXRydW5rCis0NjkzMyA3NGJmNTczYmZmNGMzNWU3YTg1ZTI5ZTg1MTE4YWFjMjIyZGExYzI5IGxlZ2FjeS10cnVuaworNDY5MzQgMGE1Y2YyNTk0NWUyYjY3NWNkNTJkZGExOWMwOTRkM2YyYTVhYjgxYiByZWxlYXNlMjQtbWFpbnQKKzQ2OTM2IDNlNWZkMmI3MGU1YTcwZDVlNTcxMzk0ZmYxNTIxYzMxNGY3NjRkOWMgbGVnYWN5LXRydW5rCis0NjkzNyBlY2U4YTY3NTFkYjc0ODhiN2I4MDdmNmUzMTgxODcwNzk2N2UyZWUzIGxlZ2FjeS10cnVuaworNDY5MzggNmY3ZTY0YjcyYTU4NzllYTZjZGM4MDE1MjZmY2U3ZmUxMjhlN2Q1MyBsZWdhY3ktdHJ1bmsKKzQ2OTM5IDQ1NTg5MTZiODQxZjFjZmE3ODI5OTE5ZDczYzViMmQ1OGJkMGI3NGIgbGVnYWN5LXRydW5rCis0Njk0MCA2MmNmNmQ1OGJiNTNmYjZiZGVhYTA3MGE1NWJlNTRjNmU1MTdlNWI5IGxlZ2FjeS10cnVuaworNDY5NDEgNTc5NmFjZmJiNmRhMTY3ODRiZDgyMTE2NTBiZmMwNGE1YzkwZmUyNCBsZWdhY3ktdHJ1bmsKKzQ2OTQyIGI3YTM2MjBkM2RiYjc2NzA1ZDI5NzJmNjNhNDQ2Y2Y0MzFjOWI0ODMgbGVnYWN5LXRydW5rCis0Njk0MyA2ZDgwNzZkMzgwNTk3YTY2OWRmNGMxMmEyMWFjN2ZhZWE1ZmUzMGVkIGxlZ2FjeS10cnVuaworNDY5NDQgZDg1N2EzMjA3NWQ0YmVjMDcxMjk4M2MzYTNjMzljZGVkYmIxYzE4MyBsZWdhY3ktdHJ1bmsKKzQ2OTQ1IDU0OWM1NDc3MDBhZjg3MjVlNTA0ZWJkYzA5NWQxNTg1ZjdkZDE5NWUgbGVnYWN5LXRydW5rCis0Njk0NiAwNjlmZjNhNzA2OTQxMDRhNDNmMWM2MWY0OTFmYjZkYWNjMjRiM2VhIGxlZ2FjeS10cnVuaworNDY5NDcgYzk1OWRlNjRhOGRhMTg3ZTFlZTg3ZTE3NjM4MDBjOTc0NjUyOTA0ZSByZWxlYXNlMjQtbWFpbnQKKzQ2OTQ4IDQzNzdiMTdkZGIyY2ZlNTAzZGFiODJjNWU3NDhlM2NjMjY5YjZlNGQgbGVnYWN5LXRydW5rCis0Njk0OSAwNjkwNjI4NTkyOThjNTI0MmYxYzljNmI1OTY4NzM1MTQwNTU5NjYzIGxlZ2FjeS10cnVuaworNDY5NTAgYzUyMGVlY2UwMWIwMzk2ODRiNWM4MmI3YTdhNTljN2FlYzhkNGNiMyByZWxlYXNlMjQtbWFpbnQKKzQ2OTUxIGQ2ODc3ODM1NzkxZDdjNjQyYTNkZjA5MmE1Yzg2ZDk0Njc1ZTY3OTYgbGVnYWN5LXRydW5rCis0Njk1MiBiN2Y0YmE2MDFkZjk3YWY3Y2U1YzNhY2MzNWYyMjAwYWNmZDFiMDQ4IGxlZ2FjeS10cnVuaworNDY5NTMgOTE3YmVlYTU1NTk1ZDliYjA2NTBlMGNhOTc1ODRkYzY5ZDZhYmZmYyByZWxlYXNlMjQtbWFpbnQKKzQ2OTU0IDE2ZTA1YzYwNjI3NWViODhmZjVlODM3ZDhiOWI3YzhiNzcyNWFlOTkgbGVnYWN5LXRydW5rCis0Njk1NSBkMWFlYzdiNGRiYjg2OTNmNDM4OTJmZjdhNmFiMTgxMmUyNjFjNWY1IGxlZ2FjeS10cnVuaworNDY5NTYgMDNjMDVjYWI1ZjIxMjc3YTllMWIxOWJmN2NkYjQ4YTVlOGRjNmE0NSByZWxlYXNlMjQtbWFpbnQKKzQ2OTU3IDBmNzZhNTZkNTA2Y2MyMDBjOTQyZGI0OWFhZTEwMWFhYWMwMWRlMzcgbGVnYWN5LXRydW5rCis0Njk1OCAwY2YyZWIzY2M1MGE3M2I2ZTc0NjI0ODM2N2QxNjhkNmQwZTlkNDc1IGxlZ2FjeS10cnVuaworNDY5NTkgODY4MDg1M2U5ZWU0MDk3NjNmZTE4ZDBjMzFmMDhiNDI1ZThkYWVlYyBsZWdhY3ktdHJ1bmsKKzQ2OTYxIGQxNWRmMDJkYjFjYzEzZjdhYzQ0MThhNDhhMTNmOTRjN2E1MmIwZTEgbGVnYWN5LXRydW5rCis0Njk2MiBkN2JjNjQ3MGU4MzgzNWNiZGUwZjIyNzZmZGYzZDQyNDI4MTJjZGZhIGxlZ2FjeS10cnVuaworNDY5NjMgMzJhZGFhZDU5ZmIzN2Q3OWFiMzU5OTU0MjExODI1ZjE2YzA5N2NhMiBsZWdhY3ktdHJ1bmsKKzQ2OTY0IDBhOGI4NTFiMDM3NTIyOWViZWUwNjNkNjEzYzFjZTZjODE5ZmMwNzQgbGVnYWN5LXRydW5rCis0Njk2NSA3N2IwMWM5MzMzMDg4YWZhNmU0YzFkNDdjNDIxODMzMzgyNWMwODA3IGxlZ2FjeS10cnVuaworNDY5NjYgYTlmOWI1MDc1YmMwY2YwM2NlY2JlYzk1ZDM5MWQ1ZmJiY2Y1MWQ1YyBsZWdhY3ktdHJ1bmsKKzQ2OTY3IGZkNDEyYTAwYTA3ZGY0NTljMmFjMzQ5MDI0MjE5NTMwNDllYzIzODMgbGVnYWN5LXRydW5rCis0Njk2OCBkNGIxZjlhMzFjMjk2OTg1MDMzM2QyNWQ1ZTRmYjQ2MjViMDc2MTE1IGxlZ2FjeS10cnVuaworNDY5NjkgOTkzN2YwOWQ3NmUzYTBkZThhZGZiOTQ2NWMzYWNjYmUyNTg2NWJkZSBsZWdhY3ktdHJ1bmsKKzQ2OTcwIDc5M2YwMjY5OTNiYjI5ZDZjYzkxNTkyNjUzMjlmMjA2ZWQ2NzBiZWMgbGVnYWN5LXRydW5rCis0Njk3MSAzYjY1ZWVmYmFmNzZlM2RiZDBmYzdkYThhMmIxYzI3MDI5ODg3ZTRkIGxlZ2FjeS10cnVuaworNDY5NzIgMzRiNjk3MDQxMTkxYWU3MWUyNjg3YjQ2NWU3NTM0ZmFhZWI1NzRkNCBsZWdhY3ktdHJ1bmsKKzQ2OTc0IGM3N2JlNWM0MDYzYjMxZTRiODdiZDdmM2I2NjlhOGUyNWYzYjU1YTUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0Njk3NiA5OTM4Nzc3NGViMWRkYTExOGUyODdmNmIwMTE4ZWU1YTViNmE1Mzg2IGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNDY5NzcgNTRkZjM1ZTljNjk4YTdmOGQ4NWJiMWVjYmZhMGEzYzcyYzU0Yjk1YSBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzQ2OTc4IDllNDgyODAwMGNmYTkyOGJhMTE5ZDBmNWRmMWZkYTNjMTY3ZDNlNDUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0Njk3OSA3ZGJiZTc4NmZkY2QyM2RmYTc5YjhhNWMwMzgwNWZlYzQ1NGNjNjliIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNDY5ODAgMzczMDQzYTFiZGZiYjg1MDFlOTQ1Y2Y5NDY2MTA1NjNiMDQ0Y2VhNCBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzQ2OTgxIDkyZWI2ZWQwM2MyZTFjYzg1MDEyMjg0ODU4ODRmMDg2N2E3YjBlN2UgbGVnYWN5LXRydW5rCis0Njk4MiBjYWNkNDdhNjFlNzk2ZGZiMzY3NDQxN2Q0MDI1Y2IzNzM5ZjEwMTRhIGxlZ2FjeS10cnVuaworNDY5ODMgMWY5NDdmMTM0MWQxOTQ3YjMyYWJkZjA5MmQxOGVjZWNhNDg2YmYwOSBsZWdhY3ktdHJ1bmsKKzQ2OTg0IDlhOWQ1NzgyZTQzNjdiOWEwMThkYzZmNDI5Mzc5ZTUwOWRlNTQwNmYgbGVnYWN5LXRydW5rCis0Njk4OSA5ZTgyN2ZkODMxZDc3Yzg0OGY3NjRhYWVjYmFmYjAwZWUwYjgzYWYxIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNDY5OTAgYjVlZmEyM2NjOTQ4OGQ3YWQzNjZhZmRiMDBmNjQ3MmRlZjYyOTZjZiBsZWdhY3ktdHJ1bmsKKzQ2OTkxIGU3NmI2ZjNhNDQxOTM5MzUwMjQzOTNkMDUxYmIzODEwYzdlOTJlZDEgbGVnYWN5LXRydW5rCis0Njk5MiA2YjRkYTRlZTcxNDZlYjkwNjZiYjllOGNjZGY4YjZmZGJhNzRjMjdmIGxlZ2FjeS10cnVuaworNDY5OTMgZTBjM2Y1YTQ0NDBmZDQzNDFiYzdkNDZlNDI1YTBlNTVkNzQyYjNhYSBsZWdhY3ktdHJ1bmsKKzQ2OTk1IDU1N2U2MjEyNmNiMWRjMjJlYjg1YjBlNTk2OTQxYTZlZGQwNjBlZTQgbGVnYWN5LXRydW5rCis0Njk5NiBiMmE0YmU0NzM3MjgyMzAwYzRmMGY1NTU3ZGY1NmU1ZjViOTNkYThiIGxlZ2FjeS10cnVuaworNDY5OTggOGE1MGQ4ZTkwMThjODQ3OTU3MDBhZWQ4ZDlhN2Q4YzI4MzkyZjJhMyBsZWdhY3ktdHJ1bmsKKzQ2OTk5IGY2ZGM1NWQzMmY3MDJjZTA5Y2U2NDhlNGJhMjhhMWIyZTI0YmNmZTggbGVnYWN5LXRydW5rCis0NzAwMCBhZmY2NjI5ZDFkMWM0MTFmZmY0NjQyY2ExZDE5Mjk5YjlmNGM4MzI4IGxlZ2FjeS10cnVuaworNDcwMDMgMDNjZjVkZDdjOTA2MTViZjg3ZmZkOGVkOTZlNzMyYThkZDI0NzA2OCBsZWdhY3ktdHJ1bmsKKzQ3MDA0IGEwYjA2MmZmMjkzOWM5MmViZTM3Y2ZiNWRhNzY4ZDc4YmNlNGJjMjkgcmVsZWFzZTI0LW1haW50Cis0NzAwNSBjNTAyNjcwMzkwODhlMDIwOTRkN2QyY2MzOTMzYWZjODAxZWNmMmZjIGxlZ2FjeS10cnVuaworNDcwMDYgMDI2NTBhNDdlZThiZTM5Mzg0MjY4ZmYzODNiMGVmOTk1MTM1NGMxMCByZWxlYXNlMjQtbWFpbnQKKzQ3MDA3IDk2ZTFiMGM4ZmY5YThkYTFhYTMzMzgyYzMxNzkzNTM0NTAxYzQ4YmYgbGVnYWN5LXRydW5rCis0NzAwOCAxMjU4ZTkzYmIxZDAwNTk0ZDRkMTAyYjdmNGMwMGQ3NzkyOTE4ZjhlIGxlZ2FjeS10cnVuaworNDcwMDkgNDg0ZDNkNWJhN2Y5YTVhYjAzMzAxZTRlMmJkNjVmZTA0NzY0ZWUzOSBsZWdhY3ktdHJ1bmsKKzQ3MDEwIGI5ZDE0NDBjMmRkMTYzMWQ0ZDA4NzYwN2NhOTQ3OWNlN2Q2OGQxY2UgbGVnYWN5LXRydW5rCis0NzAxMSA2YTdmMWYxMmVhYWY3ZDQ0ZThkM2M5MzM2ZTIzMWQxZjg0NDQ2YTAzIGxlZ2FjeS10cnVuaworNDcwMTIgNDExZDBhMzUzYTE1Yzg0ZmQ3ZTJiMGU1Y2ZhNjdjNjY2MjNjNmM5MSByZWxlYXNlMjQtbWFpbnQKKzQ3MDEzIDMwZDIzMzM4NTJkNTBmMDFkM2QzOGM5ZWUwNzg2MjZiMWI2OGY2NjggbGVnYWN5LXRydW5rCis0NzAxNCBhZDVhZGQ5ZTAzNjk2ZDNhYmRhZjE2YzAzMzFiZGY2NDUxMTU3Yzc3IGxlZ2FjeS10cnVuaworNDcwMTUgZjRiNDQxMjU2NDY3ODlmNTQ1OTEwOTE1ZDVkNWFmMDA4ODVlY2NmMSBsZWdhY3ktdHJ1bmsKKzQ3MDE2IDkzY2MzZmMyNTA5OTk5OWVhYTVlOGYyNjUyMjliZDI2MDM4OTkzZWMgbGVnYWN5LXRydW5rCis0NzAxNyBhM2M2MWM2NDhmYzgxOTRkYzc5NWJjNmMxNzliOGQ4Y2IyMDFiMzljIGxlZ2FjeS10cnVuaworNDcwMTggODA1ZjQxODgxZTI3MGUzODEyZjkxZDQ3MTllYjk2MDBjZDBiMzRjMSBsZWdhY3ktdHJ1bmsKKzQ3MDE5IDI4NDNiZjcwYTljZmQ0Zjk5ZTI2MzkzZmYzY2FhY2E2Njc3NmJlYmUgbGVnYWN5LXRydW5rCis0NzAyMCA2NzI5YzI3ZDAxZmU4ZGI5ZjE0NTJjYzhkNGYxNzBiZjRiN2ZiOThiIGxlZ2FjeS10cnVuaworNDcwMjEgMTE4YzY1MGUyYzliM2I0NGVkZDJjOGM2ZTg1MTA2MzM1Mjg4YzBhMiBsZWdhY3ktdHJ1bmsKKzQ3MDIyIDRhNzY2MDI0MDQzYWVlZTU5MmE2YzA5MzdkZTJkYjRiMTVhMGE2NzIgbGVnYWN5LXRydW5rCis0NzAyMyAwYjk1YTBhYWFhZWY5ODZhYjRlY2UzMTdjMTY3YTEyMmY4YTJjNjE1IGxlZ2FjeS10cnVuaworNDcwMjQgMGJmOWUzMDk5YzU3YmM3MzBmZGI2NWIxNmY1Yjk1YTU3ZTU2ZDViOCBsZWdhY3ktdHJ1bmsKKzQ3MDI1IGM2M2QyYjYyNjNiNThiNzIwNzEzN2I2NjQwMzViN2JmZTQ5YjkzYjQgbGVnYWN5LXRydW5rCis0NzAyNiA0ODMwZDYxNDdhYWYwOTk1MjRkN2M0YWJkMGJkYTY1OWY0MTEyZjZlIGxlZ2FjeS10cnVuaworNDcwMjcgYTc0NjIwNWY1OTc1OWM3MzI4ZDg5OGU3OGI4Y2RiZTk4MzQxYmMzMCBsZWdhY3ktdHJ1bmsKKzQ3MDI5IGYwODg1ZmUxNGQ0MmFlZWExZTc5Yjc0ODA2MTc3M2E1ZTI5YTU3MDcgbGVnYWN5LXRydW5rCis0NzAzMCA0MDhkMmE1OTZmOTkyMzQ1NmE3MmM2OTg4MDM2MGQ4NTljNzg0ODhhIGxlZ2FjeS10cnVuaworNDcwMzIgNWI5ODdkMjEyMzFiZmI2NTQ2NjIzNjAwYzM2NTQyMWE2ZDRmZWYwNSBsZWdhY3ktdHJ1bmsKKzQ3MDMzIGYxOWU4NzcyODFlNDkwMzcxMWYxNTc3ZmZlNjM2MDg2YzdjNzlkNzYgbGVnYWN5LXRydW5rCis0NzAzNCBkNDliMTk4ZjU0NWNkODJmYmY3MzVhMjI5NzljMzMyYjhhOTdlZWNiIGxlZ2FjeS10cnVuaworNDcwMzggNTIzNzVmMjAzMjQ0OGZlNDdiMDZlNTlhNjJjMjkwNTdiZThhYTBhOCBsZWdhY3ktdHJ1bmsKKzQ3MDM5IGY4NzE2Yjc2YTcxZWY3YTA3YTA3ZmQyODQ1ODVmYjFkMTg4Yzc0NzUgbGVnYWN5LXRydW5rCis0NzA0MCAzYWYzMzJmZmY1Mjc5YTdhZTU2NGM5ZmM0YWM5MzM4YmU2YjZlY2NiIGxlZ2FjeS10cnVuaworNDcwNDEgZmRjY2M2YjE0ZmFkNmVkYTU1OWJhYTI1Mzk2YzRhY2FmODc0YWI4MSBsZWdhY3ktdHJ1bmsKKzQ3MDQyIDI2ZTRiZjE5NWFlMjkyZmQ5ODk0MzFmMGYzMmFjNmQxNTljNDE0ZDIgbGVnYWN5LXRydW5rCis0NzA0MyBhM2JhMWEzN2I1Mzc0OGJmYTg0NDQ0YTBkYTljZDI1MWY2ZWU0YTA2IGxlZ2FjeS10cnVuaworNDcwNDQgODY4MTI2ZTNiY2Y2ZDAyYTU0ZmI4ODUxNDcyMWVhOGNhZTcxMjNhMCBsZWdhY3ktdHJ1bmsKKzQ3MDQ3IDRmZmZlNjc3ZjU1Mjk2Y2I3OWFiYmM0ZWMyYmEzODY3ZTg3ZGU2ODYgbGVnYWN5LXRydW5rCis0NzA0OSA3MDIzY2VkY2M1ZWQwNGE0NWI5OWNmN2Y4ZTVhM2ViMTdiMzI4MjNiIGxlZ2FjeS10cnVuaworNDcwNTMgMDUxY2MzOWE4MDA4NDMyN2RjMGFkY2JmZWE2OTkxZTJlZTQ1N2FiYiBsZWdhY3ktdHJ1bmsKKzQ3MDU0IDUzYjA0YzE5ZmU0MTZjY2E5MGQ4NjYyMjU3MDgwZjA5MDM3OGI4ZjcgbGVnYWN5LXRydW5rCis0NzA1NSA5YjBmOTQzMGNiY2JkYmI0OTY1YWM2MDI3MjNiYzQxZWYyYzA0MjgyIGxlZ2FjeS10cnVuaworNDcwNTYgMTQ5MWU1MmM4NTk3MGQyNTM4Yzg0MTdmMjllYzVlMGNhZmI1NjAxMCBsZWdhY3ktdHJ1bmsKKzQ3MDU3IGUzYWM3MzlkNDg4OTU1NWNmZDQ1ZThjOTZmYjY4ZDU5MjM0ZjI5NGIgbGVnYWN5LXRydW5rCis0NzA1OCBhNGRkNmIyMDliNjVhMmE2ZTg2YWZmMmFhMTliZjBiMDA0MTUzZTc4IGxlZ2FjeS10cnVuaworNDcwNTkgNjllZjIzZmNmNWY4M2YyYTFlNDAxMzhiOGZiNzZlNDRmY2MzMWRkMiBsZWdhY3ktdHJ1bmsKKzQ3MDYwIDE1MmVjMjJjNGU2OTVkYTExNmY4YjhlMWFiNTU2OTRkMTk0OTQzZWIgbGVnYWN5LXRydW5rCis0NzA2MSA1MDZjNzY4NDdlYzcxNjI1ZDZlMzQ5Y2VjMjU5ODE3ZjM5ZDIwNjE4IGxlZ2FjeS10cnVuaworNDcwNjIgM2NkZGU0NWE0NjhkNTliM2I3Yzk0ZjJjNGIzNjk5MzdlMGNhY2Q0NiByZWxlYXNlMjQtbWFpbnQKKzQ3MDY0IGNiNzIyNWU4NDgwNTZjYzA3ZjM1MTVkYTAyMjA5NzNlNTI5MDhiMjQgbGVnYWN5LXRydW5rCis0NzA2NSBhY2EzNmY3ZjNhZTg3Y2EwYTM3ODM4Y2UwNGI0ZTE5MGFlNTcwMDkxIGxlZ2FjeS10cnVuaworNDcwNjcgMDQxYWQwMDY4NTcwMTE2ZmNlYjQxZDNiMDQxMjE2MDBkNTczNDY1ZCBsZWdhY3ktdHJ1bmsKKzQ3MDY5IGViZWU1NTM5MzA4YWVlNzc5MjRhZDY1NThkOWIxMDNkMGExNmU5OTAgbGVnYWN5LXRydW5rCis0NzA3MCBhZWQ4MDk0NDMyMDUzZDE3NGYxZGE5MWE1Yzk5YjkzMDdiNWEzNTExIGxlZ2FjeS10cnVuaworNDcwNzEgMjExNGViNzNhZWI1MTcyN2FiYTQxYmVmOTlkZmJhZjk1MGVhYzE3ZSBsZWdhY3ktdHJ1bmsKKzQ3MDcyIDU4MDM0MDg0ZWY0NGFlNDVmMmI4MTdlZjQ5ZTUzYWE0ZWE3YTQ0NDYgbGVnYWN5LXRydW5rCis0NzA3MyA2NTM1M2M0ZGI4YzIxYjkzYzk1YWFjNTViM2YwOTdkNzU4NjZhYzhiIGxlZ2FjeS10cnVuaworNDcwNzQgYWZjNDc1ZDA1Njc4Njk1NDBmNjFjYTdkNmEzODUwMWQ2NGQ4MzJkNyBsZWdhY3ktdHJ1bmsKKzQ3MDc1IGFmY2I1ODJkOTJkODMwNDg0NzM1ZGM5NDk3ZDA2YjdjMDUzYTcyOTAgbGVnYWN5LXRydW5rCis0NzA3NiA3ODgxNmM1Y2ZmMDUwOGM0YTI4YjU4NWE2N2ZkZGZjZGNjMDBhMzk3IGxlZ2FjeS10cnVuaworNDcwNzcgYmNlYWE3NzIwY2M3MTFjZDUzZWVkZWI4M2E1YTU0ZjllYmFmYzIzNCBsZWdhY3ktdHJ1bmsKKzQ3MDc4IGQ4NDIyNDMyMGY4MjhhMGI2ZDI4MzkxZDQwNWMzNDdmNzlmMDA5NWEgcmVsZWFzZTI0LW1haW50Cis0NzA3OSA5YjQ2YTRmNTJkMGMwMzE1ZmY4NjI2ODQ3NDdhZGRjNGJjNzgwNzA4IGxlZ2FjeS10cnVuaworNDcwODAgMzIzZGE0NzZmMTdlZTE3ZjI4NTM5ZmUwNzIzMWYzODhiYjkzMDM4NiBsZWdhY3ktdHJ1bmsKKzQ3MDgxIGJhYjBiMWU2YzZkNDFjYmZlMmU0NmEzOGFkMDg2NzliODQ2YTQ2ZDQgcmVsZWFzZTI0LW1haW50Cis0NzA4NSA2NGQxZjY2YTIzOWE2MDljNDUyOWZhZjhmZjI5Yzk1ODA1NTFmMzgxIGxlZ2FjeS10cnVuaworNDcwODYgNmYwNDJmNWJmOTRkZTc4NDY5MmIzMzlhZGU5ODliYWQ1NjA1MDk0YyBsZWdhY3ktdHJ1bmsKKzQ3MDkxIGM3NTMyODU2ZmQxNzU5MjUyNWVhZjlkODhhMGU0YmYxMWYwNjgwNzYgbGVnYWN5LXRydW5rCis0NzA5MiAxMzQyZGZkNTI3MzM5MDA4ZWVlZDQwODNlODBhYmY2YjM5YWUxNDk1IGxlZ2FjeS10cnVuaworNDcwOTMgMDlkMTYwNmU3NTI0OWNjMDEyMGRmMTI1ODU5ODVhMDNmNGE2NWQ4YiBsZWdhY3ktdHJ1bmsKKzQ3MDk0IGFkNTk0OTE1MjcxMTZkM2EwMjI3YTZmZjU3ZDcxN2JkMWI1YjBlN2YgbGVnYWN5LXRydW5rCis0NzA5NyBiOWE2NGI3YTMyNjEyZGI2MjllOThlYjhkYWI4YWExNTUyYmNhNTQ2IGxlZ2FjeS10cnVuaworNDcwOTggYjgyYzQwZGMwOGQ4MmNkMDE0MDY2NWEzYmViMjUyYzNkNjczNWM2NSBsZWdhY3ktdHJ1bmsKKzQ3MDk5IDgxNjhkMDVmOWI0OWU2MGM0OWU2MzQ0Y2IzYzI5MGVhMDVhZWIxZDYgbGVnYWN5LXRydW5rCis0NzEwMCBmMmNjMTU2ZWI5MjhlM2ZkZmZmMzk5NzQwY2Y1NmNkODNhYWZlOWQ5IGxlZ2FjeS10cnVuaworNDcxMDEgNThmNDE5ZDhjNjQ2MWZiOTE3YjA2Y2NjOWMyMjcyOTdiNGU2ODc2OCBsZWdhY3ktdHJ1bmsKKzQ3MTAzIDM1Y2YwZjg3OTgzZWRlY2E4MDU5NmQ4MTFkYjVmM2IxZjM0MzI2NzAgbGVnYWN5LXRydW5rCis0NzEwNiBmMjY2MTNiZDQ4NGQ3ZGU3ZDUxNjQ2OGRmM2ZmM2IyNjllZTU3YzcxIGxlZ2FjeS10cnVuaworNDcxMTMgYjhiMjI1NTBhY2FjMDE0NTcyMGM1MzU1NmViMjY3YzRjYzc3OTk3ZCBsZWdhY3ktdHJ1bmsKKzQ3MTE0IDc0MTMxMzAyOWQ2M2Q5Njk0NDczYjI0ZTBmYTVkMDFlNGVmYTc4ZjIgbGVnYWN5LXRydW5rCis0NzExNSAyMjU0NzlhY2U5YTcwZDI3OWFkNzRmMjMyZTU3ZGUxN2FlZWQ5ODkyIGxlZ2FjeS10cnVuaworNDcxMTYgY2VlYThhOTg2NTg0NDc3YTMwYzk0NTk3Yzc2ZGViYTY4MWQ0M2UwZCBsZWdhY3ktdHJ1bmsKKzQ3MTE3IGNiODM5OTk2YTM4NmVkYTAxNzdiYzBiYThlYmI2OTg2MjE4ZjhjM2YgbGVnYWN5LXRydW5rCis0NzExOCA3MjFjZWM3ZjAxODU3NDc3ZjU2ZjM2MjAzZTBlYWVmODk5NDZlYjVlIGxlZ2FjeS10cnVuaworNDcxMTkgNGRlYTVmNDZlZTk4NTU0MjQ5ODBjNWE5NzJkNDNiYWM4YTUyZTJiZSByZWxlYXNlMjQtbWFpbnQKKzQ3MTIxIGRlNDEwMjUyYjlmZGEzYjhkNTgzMzhiYjUxMWVlM2Q3NjU0MzE4NTggbGVnYWN5LXRydW5rCis0NzEyMiA1MjI1MGVlYWY3OTFkNjY0M2RmMGIxMzczMjUwMmMwNGFlOGI0NTJkIHJlbGVhc2UyNC1tYWludAorNDcxMjMgMDYwMjc3MWI4YjQ5YjdjMzM0MGRkNGQwYmE0MzZkN2JkYzI5ZGQwOCBsZWdhY3ktdHJ1bmsKKzQ3MTI1IDA5NTU0NmRkYjJmMTZjNjQ3MzQ3Y2NmYzBmNmIzNjhhM2EzZTc2M2YgbGVnYWN5LXRydW5rCis0NzEyOCA3Yzg5OTBjY2NmOWIyYWQ5YmNmZDIwODI4ZTZmMDFiMzM2MTc0OGM2IGxlZ2FjeS10cnVuaworNDcxMzEgYWMzZDRiNzFiY2UyYjI2YzlmYTc5YmRkMzVhM2ZjNDMxYzdkMGY5MiBsZWdhY3ktdHJ1bmsKKzQ3MTMzIDNjZjIxOGU4YjQ0OTI1NzNiMjI4YjNlYTMxOTIyOTZhMzEwOGJiMjUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0NzEzNCAwMzg4YzdkY2U0ZDQyNjY2ZDFlZjUzMmNmYWRjZmIwMjkwNTczZWU2IGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNDcxMzUgNGI0ZWQyMzAyZDFjZjU2ZWYxNjE5MzA1NDE1YmIwZGUyZDc4NzEyNCBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzQ3MTM2IDg1MWYzNzhhYjljZGM1Yjc1NjRjNDdkMmZkNzQzMDc1NjY5YTYxOWUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0NzEzNyBkNzQ5MDhlNzRkMzA3MjBmNWMxMGMzMzMyYjQzYjA3YmJkMDY1ZDZiIGxlZ2FjeS10cnVuaworNDcxMzkgNTZiZjU2ZjVjODIxNDc2ZDVkNjdjYjQyNzc5MGNmMWE2OTA5NWVlMiBsZWdhY3ktdHJ1bmsKKzQ3MTQwIGE0MjYzYzQyNDhjYjY3ZTdhZDNiZGM2M2JmNGM3MTdlYWFjZGM3OWUgcmVsZWFzZTI0LW1haW50Cis0NzE0MiA1YjgwNzk2NjBlYzQ1ZTRjOGIyNjBmY2VmYTY2ZmQ4YjUxMzEwM2NkIGxlZ2FjeS10cnVuaworNDcxNDMgNTgyNzBhNjkwZjQzYzVkMTkwMDlkZTIwNjA3MzdlZjY5NDNiZThhOSBsZWdhY3ktdHJ1bmsKKzQ3MTQ3IGY5OWZiZmJhODk4MzQ2MDFkNDQ3MDRjMWI5NGM2NjA5OTgxYmI2ODggbGVnYWN5LXRydW5rCis0NzE0OCAyZWU1YmRhOTIwYTI0NWFlMDgwMmFiNmUxODQxYzZmODgyMzZjZjQxIGxlZ2FjeS10cnVuaworNDcxNTEgMWVhYjVhZTNiMWZmYmFlZTcyZTU5ZmZkYjdlNWNmOGVlNDQ5MWE5ZiBsZWdhY3ktdHJ1bmsKKzQ3MTUzIGIzZWY3NDFlMjYxNzFhZmYxMWZjZTExYWZiOWMwZTg0YjM0NTQxMzggbGVnYWN5LXRydW5rCis0NzE1NCAzYzlkM2EzMTNkODFkZTUzOTE2ODQ3YjM0MjVjYzJmMGJhMWIzZTEwIGxlZ2FjeS10cnVuaworNDcxNTUgMTdmODJiZDY4ODc4NTMyZmIyOTkzNDE4MWI2ZjU0Y2RjZWZiZjc3YyByZWxlYXNlMjQtbWFpbnQKKzQ3MTU2IDI5ZTQzYzVlMTE4ZjdiMDkwMTQyM2ZmNjRlMjk3MmJkYTUzYTMzMzYgbGVnYWN5LXRydW5rCis0NzE1NyAxYjJkZjJlY2JjNjM2YTJjOGI3MjIzM2U4MjVhYzYwZWI3OWQ3Mzg5IHJlbGVhc2UyNC1tYWludAorNDcxNTggMGE4M2RjMzUyOWQxNWFmNDQ5MzRmNWIzNDgxYzBjYjhhMDMzZmM4YyBsZWdhY3ktdHJ1bmsKKzQ3MTU5IGY0OWNjMjkwNmNkMDBmNjA0Nzg2ZDJkNzBlZTJiYWFhODMzODUwNDggbGVnYWN5LXRydW5rCis0NzE2MSBjNmQwNGM5YzNjNGFlNzc0YzVhMjkwMDE2NDY5MzExY2VjZDY5MmE0IGxlZ2FjeS10cnVuaworNDcxNjIgOTliMTVjMjViODQwMTY5MzhhYTY5NWUyOWZmNWQ1ZTYzMWY5MmRiMSBsZWdhY3ktdHJ1bmsKKzQ3MTYzIDE1ZmU5ZGJjNWQzOWVmMTI4ZjlkODkzNWUwYWE4ZDQwMDJjODIyMDcgbGVnYWN5LXRydW5rCis0NzE2NCBkYTIyYjkwNWRmYmViZDllOWFjZDg4OGMzNTQxNmI4ZmZjODI5NDdiIGxlZ2FjeS10cnVuaworNDcxNjYgYTIxZTQyMGE1OTdjYzk1MDUxNzE4ODRmYTI0M2FjZjQ3ZjRiN2NkZCBsZWdhY3ktdHJ1bmsKKzQ3MTcwIGQ4NTcwODc2OWFiMWQ5NGJjZDJiNDA0NjhmODFhNjY2ZTllYjljNjkgbGVnYWN5LXRydW5rCis0NzE3MSAxMzkyNTYxZDVkZDdhZTNkZTJiNGJkNTUyMmQ0MDc4ODZiMjJmNmZiIGxlZ2FjeS10cnVuaworNDcxNzUgMjcyZjE5NWEyODRlN2UwMTRjYTk0MmZmYjE4NTg5NjJhZmZiNzEzYyBsZWdhY3ktdHJ1bmsKKzQ3MTc2IDQ4NTA1NmU1M2NkYjk5Y2YxNTY4ODczYjM4M2U2Y2RmNjY5M2Y1OGYgbGVnYWN5LXRydW5rCis0NzE3NyA2YjBjNjNhOTc1MTQ3YTk0ZjY5YjNhMDM4ODM4Yzk0ZTc1NTA0Yjc2IGxlZ2FjeS10cnVuaworNDcxODEgNWQyYzk4MmFiYmIzOWU3ODQyNjFmYzYxMDBlMWMyMmMyYTE1MGIyMSBsZWdhY3ktdHJ1bmsKKzQ3MTg4IGQ0ZGJmYmYzZjJiOTBjNWMyMzk5MGZhYjdhZmFmZWM1ZTNiZDY5MWQgbGVnYWN5LXRydW5rCis0NzE4OSBiNjY0YTkwOGJmZjM1MGVkMWI1NmI1NjBmNGYwNzJkMmExNWI3NDYwIGxlZ2FjeS10cnVuaworNDcxOTAgYzU0N2Y2ZTkxYzU4NGI5NDI2MjA1ZmI4NmEzMDFmZmU3N2Q2NDNlZSBsZWdhY3ktdHJ1bmsKKzQ3MTkxIGUwNzZlM2Q3NmY3NzEwYTAwMDFlMWUzOGNmNTYyZGM0MjU3YTY4OGMgbGVnYWN5LXRydW5rCis0NzE5NyA1ZGQ3MzYyNjhmZjQ0MDIzZGI2NjVjNmJhNzFjNDRjZDZkMThiMjA5IGxlZ2FjeS10cnVuaworNDcxOTggNjk3NWJkNDg4NGViYzJjODAwNGJkOTY4YmFkN2JmNDMwMDA3OTU3YSBsZWdhY3ktdHJ1bmsKKzQ3MjAzIDBmM2JhM2RlZjFhZDgwYWVkMWZjNGI1MWZmNDdkNTgzYTYzNmVhZTIgbGVnYWN5LXRydW5rCis0NzIwNCBjMDEyMzAwNzY4NTljMWZlNjZjZWFmZjMxNzAwODRmZTk4ODllOTk4IGxlZ2FjeS10cnVuaworNDcyMDUgODg5NGVlZmJiMGE0OWZjNWVhZjU0OWU1NTdkOWMxYWI1ZTIzZjNkZiBsZWdhY3ktdHJ1bmsKKzQ3MjA2IDYzODI0MWZmODdiZGRiYmJlMGUyMjA2NTI3NzA5YWU2Yjk1NzI3OTAgbGVnYWN5LXRydW5rCis0NzIwNyAyNzk3Mzk2MmZjOWZiNjJjZjhmNmNhYWYwNjliMjM4NzU2YTUwZGRlIGxlZ2FjeS10cnVuaworNDcyMDggYjE2MTRmNjc0YjMyNzA0MzViOThmZDgwYzNlZjMzZWMxMWU2MTQ5MyBsZWdhY3ktdHJ1bmsKKzQ3MjA5IGU2MWE5MzhmZTk5OGQ1Zjc5OTc0YjM3NjMxMmYwYmFhYzAyYWI4M2QgbGVnYWN5LXRydW5rCis0NzIxMCAyNTM3ZGVkYTM1MWZhODkxMmNlZmNmZGI5MmJmMjIwYTg0YjExNjRhIGxlZ2FjeS10cnVuaworNDcyMTEgYjk0NzBkNjdkOTZjMmUyNzAyZTgwOWQ0MWY4OGQ3NGE4NzA2YWYxMCBsZWdhY3ktdHJ1bmsKKzQ3MjEyIDBlOGE5NGJhMjEwNjZkYTY1ZGY5ZDY2MDhlN2U0OGJiYTYzOTM3MWEgbGVnYWN5LXRydW5rCis0NzIxMyBlOWQzOWM1ZmNjMjc0NjE0YmMyYjZlM2ViOTM0ZTk0ZWE3MzFkMDJkIGxlZ2FjeS10cnVuaworNDcyMTQgZjExNjU4MmY2NjIyNDI1ZTk4Y2NhOTllYmNiNzA5MjU3YzNlMmRhYyByZWxlYXNlMjQtbWFpbnQKKzQ3MjE1IDA5MzE1Njg5OWY3NWFiMmNiMDZkMDkwZGQ3OTg5NGI3NjQxZjNlMDUgbGVnYWN5LXRydW5rCis0NzIxNiAxNmJmMzY2NDgzMjMzYjA4ZGZiY2UzYjlmOTkyNjUyNTU1OTdkZjg2IHJlbGVhc2UyNC1tYWludAorNDcyMTcgODY3NWE2MDg0MjQwZjg1NTcxZDQwZTkwMzA1YzQzNTRhMDQzMTM0NCByZWxlYXNlMjQtbWFpbnQKKzQ3MjE4IGM1YmViY2JlNDUzOTFhM2NiYjJmOGI5MTFhM2VlNjQ4MDYyMTk1MjkgbGVnYWN5LXRydW5rCis0NzIxOSA4MTMwNGMwMTQ2M2EyZTliZDhhM2U3ZWY4NmExNTM0ODJhNDZkMDM0IGxlZ2FjeS10cnVuaworNDcyMjAgNjNhMzE5ZjA3MzNjYTA2NjZiNmYyMWEzM2I0MDBkNGZkY2Q5MDQ3NiBsZWdhY3ktdHJ1bmsKKzQ3MjIyIDAxZDRiMDY4NTA2NzYwNjgxMDllMmNkOWFlOTE5NmU1Mzc2MWUxMzAgcmVsZWFzZTI0LW1haW50Cis0NzIyMyA3NWJkYjFlYjA3NjY1OTVkYTMxNjkyM2JmMWNiNWI2OGRkOGUzOWQ4IGxlZ2FjeS10cnVuaworNDcyMjQgOWM5MjJlMzFiNmE1Yzg5MTA0YzQ2YjIwZjA3MGQ2OTNmMzJmM2JjYiBsZWdhY3ktdHJ1bmsKKzQ3MjM0IGM4MjM3NWQ1NjBiM2ZlOGEyOGEyNzdmOTE5ZTYwMTYyOTRkYTRkY2UgbGVnYWN5LXRydW5rCis0NzIzNiA0MWZjMjAzYTNlOTFmMTYxNWMxNGE2ZmIzODA4M2QwMThmNDc0OGFkIGxlZ2FjeS10cnVuaworNDcyMzcgMTg5ODlkMDlkNTg0ZTZjM2U4NGQ0MDVjNjY0MTFhYWU4ZGZiZWYxMyBsZWdhY3ktdHJ1bmsKKzQ3MjQxIDZkOWUyMmMzMzBlNGI3NjQwMzAwNDY5ZmYzOWM1OWY2M2FkNDUwZTUgbGVnYWN5LXRydW5rCis0NzI0MiAwYzRlNWEwYzE5MTRmN2IyMmRmYjBiMGUzY2ZkZjg1Njg1NzNhMzM2IHJlbGVhc2UyNC1tYWludAorNDcyNDQgZDllNzgzMTlhMTkyOTM4MTI2NzE0ZTZkN2IzN2QwMzJjYjQ0ZDA0ZiBsZWdhY3ktdHJ1bmsKKzQ3MjQ1IDc1NTA0NDcxM2U5N2NhMjQzYmE2ZGFiZWQ2ZTdhOGY5ZGY1ZTE3MjMgcmVsZWFzZTI0LW1haW50Cis0NzI0OCBiOTE1NWJiMjZiMjgxZThlMzMxMWQzNmM3YWRmNDBlNGFjYmExZmExIGJjYW5ub24tc2FuZGJveGluZworNDcyNDkgYjBiZDBiY2U5NDA2ZWRhNGIxMDMyNzQ5OGQ5NTRmYmI2YjEzZDMyZiBiY2Fubm9uLXNhbmRib3hpbmcKKzQ3MjUxIDllODIxNDM1YTYxMmQxZTk3MmIzNTk2ZTI0OGRlYmVhOTM2OTliNWEgbGVnYWN5LXRydW5rCis0NzI1MyA1MDBhZTk1MjE1MGI3NjY4ZTMwMDc2NTQ5ZWVkMDQwNDljMGMzMzhlIGxlZ2FjeS10cnVuaworNDcyNTQgODdlNWIwMTBiM2IwOWQ1YjViOWM1NGY3NGUzOTA4OGRiM2YwNDFjZSBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzQ3MjU1IDcxZWFkYzM1ZjE2MzcyNjExNjY5YThmNjRmOTk2M2Q1NDIwYWRkNGEgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0NzI1NyA0MTU2MWIwMDE0YzhiNjgxNTY0OGU1MDQyMDgxZmE2OGQ2YWVlODNiIGxlZ2FjeS10cnVuaworNDcyNTggNDBmMDU4NjczMTcwYjhhNmE4YWRmMDNiNmFlNWMwN2NmMWFhNzBhYiBsZWdhY3ktdHJ1bmsKKzQ3MjU5IGI4NTFhZmNjMTY0OTY1NjcwM2E3MmQwZWZkNWMyZjlmYTY2OWJmY2EgbGVnYWN5LXRydW5rCis0NzI2MCBlM2NmZjYxYjc3Nzk2MWFmNDZmNDJlM2MxN2VmZjg0OGNjZTA4NGUxIGxlZ2FjeS10cnVuaworNDcyNjEgNGRkMWE5MzgzZTQ3N2ZjNjcyYzk1NDQzMzAxMjVhYzc0ODA1N2RlMSBsZWdhY3ktdHJ1bmsKKzQ3MjYyIGQ4Y2U5YmM0MDVlNDFiNjk1NDZhMTQ0ZDcxN2NkNWFhMDkwZWU1ZDAgbGVnYWN5LXRydW5rCis0NzI2MyA2OGM5ZThhNTUzNjgzYjJjMjM0OGNjZjI3OTk4NDhmOGZkYjMwZDY2IGxlZ2FjeS10cnVuaworNDcyNjQgMjA3M2YzMmNmNzFmYzdlYTQ0ODU2ZWI1Mjc4ZDcwOWNlZTA0YTkzYiBsZWdhY3ktdHJ1bmsKKzQ3MjY1IDY5N2QwNTQ4MDA1M2Q2ZmRlZmU2NDVlMDg5ZmNjMTQ2ZGIxY2E4MTAgbGVnYWN5LXRydW5rCis0NzI2NyBmNGUzM2IxMmJiNTdiMTAwYjM0YzJmOTI2OTA1MmY0MzIwOTUxMDRhIGxlZ2FjeS10cnVuaworNDcyNjggMzRhNjZlMmY4OTU5ODAyNWFkMWM3M2E0OWE0YWI4M2QxYmE1ZDU3MyBsZWdhY3ktdHJ1bmsKKzQ3MjY5IGY2OGU1MWE2NzNkZjczZjJiMWY0NzQ5ZTc0NmNmMzliYzA5OWYyNjIgbGVnYWN5LXRydW5rCis0NzI3MSAzNGNiOWE2Y2UxMmQ4N2Y2YWUwMzE2NjYxMDc1Yzg4YjA5MjY2MTEwIGxlZ2FjeS10cnVuaworNDcyNzIgMzc0YzIyOWQ5MGU4ZjM2NmU1OTU1OTg0YzQ1NjE1OTExZTk2NzY1ZiBsZWdhY3ktdHJ1bmsKKzQ3MjczIDVhNGFiMzgyMDU4YTVmMTBmMzRmZjI1MjBhNjA1NDNhMDQ3NTE0NjAgbGVnYWN5LXRydW5rCis0NzI3NCBlZWJjOTVmOTU4ZTQ4ZjM3N2RmZDk5NWNlNjNjYmFhNGEwNjc1NTVlIGxlZ2FjeS10cnVuaworNDcyNzUgMjM4ZTBiMjAzN2ZjMjQ4YWE3ZTYzZGU2ZWRhZTQxNWRjNDY2MzJhMiBsZWdhY3ktdHJ1bmsKKzQ3Mjc2IDM0NDI1MWNkOGQ3NjQ0MDljYzAzYzU5NjdmYjE1Zjc4YzI3ZDU0MjYgbGVnYWN5LXRydW5rCis0NzI3NyAzZmE3OTBiMGFhNjgxNWMxZTFkYWU4ZjIzMGFjODVkYWJlODE5OWQ4IGxlZ2FjeS10cnVuaworNDcyNzggZjkzZGJmY2M2NjNiMzMwNzNjODJiZWRiZmMzZTU4NWMxZDQwZTdlMSBsZWdhY3ktdHJ1bmsKKzQ3Mjc5IDU4Yzg4YTdjOTMyNjNjNDhiYmViMWVlZDNhMjIwM2MyMDUwMGJjNmIgbGVnYWN5LXRydW5rCis0NzI4MCA4ZmVmYTk5ZTg3YzBkMzg1NjQ0OGZjNzY3M2QyN2RlOGY4ZDEwNmZkIGxlZ2FjeS10cnVuaworNDcyODQgZWQ0MzI0M2M4ODYwNWVmYzhlMDlhZDQ0YWZjMWEyN2Y2NTY2NGJmNCBiY2Fubm9uLXNhbmRib3hpbmcKKzQ3Mjg1IDQ1MjQ3YjkzYTVkOWExMDE5MjA3YTFkZTIyMjkwZWQ2NWUwNjBjMTYgYmNhbm5vbi1zYW5kYm94aW5nCis0NzI4NyBiM2MwZTA3NTlhYzA5ODA0NDYwOTJlNDVlNzc4NGQzZjNiM2FkY2FkIGxlZ2FjeS10cnVuaworNDcyODkgZGE1OTgzNjE0ZmFjMjI4MTljYWVjMDk1YmZlMjM4ZjAxZjYzN2U1OCBsZWdhY3ktdHJ1bmsKKzUwNDc3IDEwOGRjMmYxZTdkYTMyY2YxYTFjN2U3ZWJmNWRkZmM0ZWE1ZTFjNjUgYmNhbm5vbi1zYW5kYm94aW5nCis1MDQ3OCBiYjMwNTAyNjMyNDQyMmFlN2FjNDVkYjNmZDA5ZTQyMmJlOWUxOTU1IGJjYW5ub24tc2FuZGJveGluZworNTA0NzkgYjhhOGVmYzAwYjFlMjVlMmY0YWQ5ZDdjZGM0NjVhMTNlZTY4MWEwNCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNDgwIDkwM2Y5ODY3NjU0YTE3YTM5NDc0Y2VhZTMyOTMxNjY3NWQ0MTQ0MzggYmNhbm5vbi1zYW5kYm94aW5nCis1MDQ4NiAzNWFmZTdjNDY3NzIwNmNkMzViYTM3YTIwODc1NzQ4M2UxNGUyMzg4IGJjYW5ub24tc2FuZGJveGluZworNTA0ODcgYjQyODEyYzc3NGQwYzk0OWIwYmE3N2NmNWMzZjYxODA3MDEzODJlYSBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNDg5IDA2NmFhNDJjZTVmMjQwOTc4YzE2NTZmNWVjYjYwNjY5NWViODJhMDUgbGVnYWN5LXRydW5rCis1MDQ5MCBhYmIyYzc2YTVlMDUwY2Y4ZDA2YzI2MDczY2YyMjY1YjJmMDQyYmMyIGxlZ2FjeS10cnVuaworNTA0OTEgMWM1YmRiYzc1ODBjYTE4Y2U2OTkyYjE4YjcyYjQ2MjYwMmI3NzUzOSBsZWdhY3ktdHJ1bmsKKzUwNDkzIDlmNzBmNmJhN2I2OWNiZTZiYWRkMTFmZDI5MDczMjQ5Mzc1NmFhZjIgbGVnYWN5LXRydW5rCis1MDQ5NCBiYmM3OGYwMjEwMDdjMGYwNDIxOGQ5Y2EyNmMwYmE3OWJmMDY4MGI1IHRpbS1jdXJyZW50X2ZyYW1lcworNTA0OTUgNjRjY2Q3NDVlYTkyMGJlMWI5OTM4OTFlNDk2MzdkMWYzNTFjNDQ5NCBsZWdhY3ktdHJ1bmsKKzUwNDk3IDk1ZjllMDE4NDU1NTZmOTYxMjgxNjFkYTRlYWVmNjFiM2JmNTZhMmIgbGVnYWN5LXRydW5rCis1MDQ5OCAzZjU1NjFjNWQ5NTk1NWIxMzljYzY0ZWUyNzJmZTNmMDllMzk1MzM1IHRpbS1jdXJyZW50X2ZyYW1lcworNTA1MDAgY2EzZDlhNjcxMjZiZjhkOTE0YTc2NjFiN2RhMjAwMTExNmQwZDkyMCBsZWdhY3ktdHJ1bmsKKzUwNTAxIDhjYzk3ODQxMzBhMGU4M2QwNjI3N2U1OTdhZjBhNjQ4NjBlNzk2ZWYgbGVnYWN5LXRydW5rCis1MDUwMyBjMDJmYTE4N2UwZjQ5Y2IyZGNhN2E5YzQ0OGRiNTM2MThhNjZlNjkxIGxlZ2FjeS10cnVuaworNTA1MDQgYzY3YjIzMzk3ZjMwNjQ5YWZlNzU0ZTU3MzA3YzhkYWY3ODc2YzU2MiBsZWdhY3ktdHJ1bmsKKzUwNTA2IDBmZTA4YWVkYmQ4YzRmY2JkZmI2MGEzYzIzNTI0NjgwYzEyNDU5YzEgbGVnYWN5LXRydW5rCis1MDUwOSBjNTQ3NjQ1YWI3MzY0YzI5NDc1NjZhZGFlYjk3YjIzMDNkYjYxZjc3IGxlZ2FjeS10cnVuaworNTA1MTAgNTE0MjhjMzc4Y2MzZTI2ZjFmYjJkYzczZmNhYzg0YzMyNWE0Y2M2YyBsZWdhY3ktdHJ1bmsKKzUwNTExIDdlNDNkMDJlZTIxYTYxZWRmNmNlMzc0ZTQ1Y2I5NGZmNzE0NDQ4ZDIgbGVnYWN5LXRydW5rCis1MDUxMiBjMWY0YmY4ZmY3NDhjMDFmNmMyMzg1NzMwNThlOTI0Mzk3NjQ3M2E4IGxlZ2FjeS10cnVuaworNTA1MTMgMzVjNGZkYTQ3ZGZiZDhmNzMwODVmMTIxYjM5NDAwYjU5MTQxZWZiZSBsZWdhY3ktdHJ1bmsKKzUwNTE0IDAyNTk4YzU3Y2EwOWNjMGU4ZWE5MjQwYTIzNWIzZGYwODVmODc5OWEgbGVnYWN5LXRydW5rCis1MDUxNiBmMzczNjQ2Nzk1MDE4MjU1ODk5ZmJhZGI3N2U4MDY2NWIwOWM3MDFmIGxlZ2FjeS10cnVuaworNTA1MTcgYWU1NjQ1Yzc2ZDVlYTMzZWNiOGFlNTgxM2E2MTdlMzE1ZWZiMWZmZCBsZWdhY3ktdHJ1bmsKKzUwNTI2IGI5NzhhZmU3Y2FiNjZhZWNmZmRhN2M5ODczNzRlY2VjMGY2NzI0YjQgbGVnYWN5LXRydW5rCis1MDUyNyA4YWRkYzkxMzE3MWU4ODM0OGMzZjQ5Nzc5MTI0YmViZjQ2ZTEwYTdjIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA1MjggZjJhYzMxZmMzNjllNjJmZTc3ZmI1YjVjODkyNDcxMGVmYjQyYzBiNiBsZWdhY3ktdHJ1bmsKKzUwNTM3IDNiMzhhYjljNGIwMzY5NWEzMzE1ODUxYzlmYmM4ZmM3MjUwYzYwNGUgbGVnYWN5LXRydW5rCis1MDU0MCBjODQ5OTdlMWVjYzc2OTI1NDg5YmQzMDFkY2U2MzBkMDdjZWMzYmVjIGJjYW5ub24tc2FuZGJveGluZworNTA1NDEgYjZmZDQ5OWU0MzQzZmI3Nzc5MGNmZTRiNzM1MjdmMTMzOGIyZjIwNCBsZWdhY3ktdHJ1bmsKKzUwNTQyIGMzNjE5MTVkZjI5MTNjNjFhZjc5MGEwNjE3ZjJhMGU0NDE3Y2VkNDcgbGVnYWN5LXRydW5rCis1MDU0OCBmY2JmNDYyMTE5MDNhNGYyYTBkNzY0MDg2ODdlYmUxYThlNGY4MDY4IGJjYW5ub24tc2FuZGJveGluZworNTA1NDkgZTQwMjQ0ZjVmZWI5NGQwMTU0ZDNlMDNiMDNiODc5YzNiY2MxMTBlNiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNTUxIGZhNmNhM2Y1ZjIyNmU1ODBlYmJkZDY5ZTExYWZmOTliODVhMGViYzYgYmNhbm5vbi1zYW5kYm94aW5nCis1MDU1MyAxY2EwMTViZTcwYWUyMmY4NWFlZDcwZjhjOWVkNjhmMWUyN2I5ZWQ0IGxlZ2FjeS10cnVuaworNTA1NTggMmQ1N2U0YjA4Y2U2OGNmN2IxOGIzNmQ4ZjUxNmI3YTViOGRmZDdhNSBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzUwNTU5IGIyODY1MzYyMjA5MzgzMDJjY2UxNmViNTJjMGZjNjBjZDA3YjRiNTQgYmNhbm5vbi1zYW5kYm94aW5nCis1MDU2MCBlMzFlZGVlNWJjM2Y1NGUzNDI2NjIwMjk3ODliYzRlNWFjNjQxNzRkIGJjYW5ub24tc2FuZGJveGluZworNTA1NjQgMjE2YTk3YTJlZDM2ZjI1OWRhZWFmMmY5MTE1OTIwMzI0ZjEyYTc0NyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNTY1IGRhZWU4ZjhjMDM1Zjk2YWUxOWQwODMwZTcyYjEyYTEwMjNhNDIwOWMgYmNhbm5vbi1zYW5kYm94aW5nCis1MDU2NiBlM2Y2MDY2Y2U3NWY1ODJkOTRkMjI4MDc5YTBiNzUzMzc3MWFjMzdjIGJjYW5ub24tc2FuZGJveGluZworNTA1NjcgNTJhODczOGY1YWI0ZDFlNjgwMGQzM2RlMDEyN2NkNmY2MjZlNDg5NSBsZWdhY3ktdHJ1bmsKKzUwNTY4IDAzYjZmZTU3Y2Q2ZGY1YmIzNGNhMTlmNGI3NjBiOTQzMTg2Y2M4MDYgbGVnYWN5LXRydW5rCis1MDU2OSAwMGY5NzVlYWQzNDRhZmIyY2FkMTRhMmNlNTk1MTlkOThiMWM2YzVjIGxlZ2FjeS10cnVuaworNTA1NzUgZDY0NjNlOGVmOWM0N2QzMjczZDNlOTA1NWRhYWQxMTY5MzliMGQwZSBsZWdhY3ktdHJ1bmsKKzUwNTc2IGY1MGI5ZGE1ZTM2MTk1M2FkNDBiM2MyNDNhMGE2ZjRkNzQ4MGY5OGMgbGVnYWN5LXRydW5rCis1MDU3OSBhZTBjMzI4YWM1YmY5MWJmOGU2OGM1ZDk0MTIxZWRkODZiYzdmMzM1IGxlZ2FjeS10cnVuaworNTA1ODIgMjE0YjI4ZDdhOTk5MzM0ZDA0MWFjNzA3ZjBmZGU5OTYzYTU4MDZlNSBsZWdhY3ktdHJ1bmsKKzUwNTgzIDY1NTIyOTkyM2Q0MmY5ZjMzYjNjMzgyMTA0OTcwZWM3ZmJjY2Q4M2IgbGVnYWN5LXRydW5rCis1MDU4NSBjN2RkNjY5NmVjOGNiMTcwYTE3YzdhZTJjNzAyZDFiYWU4NWFmNWRjIGJjYW5ub24tc2FuZGJveGluZworNTA1ODYgNmY2OWFmYjc4NWQwYmY5YzVhMDAwN2Q1NzRjZGQ4OTE0YWUwNTI4ZiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNTk0IGU2ZjE2YjdhNTg0ZjIzNjZkMTFhNzhjN2YwZjdhNTMwNjRiZWNhMjkgYmNhbm5vbi1zYW5kYm94aW5nCis1MDU5NSA5MzNiZTNlMGFjNmNiMDU2ZWE2NGE1MDEyMjM1YmNiOWYwNWY2MmYyIGJjYW5ub24tc2FuZGJveGluZworNTA1OTYgNzE3YTc4ODdmZDdhNzZkNzE0YjhjMTJkNmFiOTA4ZGMxYjc3ZGJjYiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNTk3IDcxODJjMjc3NWMxZTQ1NDJjZDdkNDI2MjA1YzQ5ZDY1YjNkODBiYzUgbGVnYWN5LXRydW5rCis1MDU5OCBiMWJiMTc5YThhYjA1N2RiYzJkNzQ1ZGM5MDY2ODA2MjEzYjA2OWEyIGxlZ2FjeS10cnVuaworNTA1OTkgNDc2Y2Q4Mzc3N2YyYmE3MmVkYzdlZmVjYTI1NTZkNmI4ZGQ4NTNhMCBsZWdhY3ktdHJ1bmsKKzUwNjAwIDJjM2VjNzIwYWE3YmViMGRhNDAwMmI4NDdjYzVlZDdkYzc4MjU2NmMgbGVnYWN5LXRydW5rCis1MDYwMSBiMDk1ZTgzODhiMmU2NDUyNWRlMjgzNWM3MjJlYmJiZDJjNjE1OTVmIGxlZ2FjeS10cnVuaworNTA2MDQgMzZjNWQwODViODY5MjA3NDAzY2Y0MWU2MWI3YTIyZDRiNzFlYzdkOSBsZWdhY3ktdHJ1bmsKKzUwNjA3IGM0OGIzYTY4ZjY5NjJhNjk1YjI5YmQxNjJiMjQyODk5ZjYzYThkN2EgbGVnYWN5LXRydW5rCis1MDYxMCBiNTYyZmQ3OTUwMGQxZDM3MGY2OTdjZGU1MmRlNDA5N2E2YjY0ZThlIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA2MTEgMmYzMDUxNWNmNjZiOTZlOTFiYWExYzdiNDY5OWZjNDE0MzRlZjEzOCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNjE3IDg5MmI3YWMyNmQzYmI1OTAwODQyNWNmMzZlYTgyMzg3NjUyMjIxOWMgbGVnYWN5LXRydW5rCis1MDYxOSBlNGI2YTRmMmNlMTQzN2RhNjE0YjlkMjFlZGZmMDU4OWRiNWFhYWUxIGxlZ2FjeS10cnVuaworNTA2MjAgY2Q0NTljOTIwZjk5MGM5NDNmNjEwNjFlMmIyZjMwMTM0OGE0MWQwYSBsZWdhY3ktdHJ1bmsKKzUwNjIxIGE3NzY4ZmVmNTliMmNkMWViZDJiYzc5OGIxMzk3ZDdjNjRhYjE0OGUgYmNhbm5vbi1zYW5kYm94aW5nCis1MDYyMiBmYzY5ZmE2ZTU0Yzg2ZGMyZTE0ZDg0MDUxOGYzMTIzNTc1M2I5NzhiIGxlZ2FjeS10cnVuaworNTA2MjcgMThiOTc5NmI3YmE1OGM3NGVhYTMyMmU1OWY4OTNlMzAzMjFmN2FhNiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNjI5IGM4NzBlZTA2NmMxMjU0OGM4ZTk3YTM4MTE4ZGQ3NjEzZGVjOGFlZjUgbGVnYWN5LXRydW5rCis1MDYzMCBmNzFmMjg0MzYzMWZlY2ZiM2JhMDk1NDMxMjMyNmUzYmEwODU4NzlmIGxlZ2FjeS10cnVuaworNTA2MzEgMmE4NGI0NmFkNjRjYTY5ZmE0ZWRjZjVmZTBlNWFlMzAxMmI2ZjU1NCBsZWdhY3ktdHJ1bmsKKzUwNjMyIDE2ZjNjMDJlZGUwMjUzMWIxZGI3ODBkNGVlZmNhODQ1YmYyOGNiZDUgbGVnYWN5LXRydW5rCis1MDYzMyAwZGU1OGJjZTQ3ZWYzMmEzMGYxZWU3YzE5NGFlYzJhYWYwM2E1YTkwIGxlZ2FjeS10cnVuaworNTA2MzYgN2RmYzc3NmRkODFiY2VmNjgzMDAzNzYzODUyOTlmNDgxZjI0ZmNiOSBsZWdhY3ktdHJ1bmsKKzUwNjM4IDlmMmMzZGU3NDg1NmRkZDEzYmZhZTY4ODBiMDU3MWMwNDQxNWM2ODQgbGVnYWN5LXRydW5rCis1MDY0MCA4NWZmYzBiZmNjOTgyOWVhZjA2ZmZjNDBiZjdkNjlhYjEzZGRlYWZjIGxlZ2FjeS10cnVuaworNTA2NDMgYjYzMjU2MzQ5ZTc3OTAwNTFhYzcxNzc0NGEyYmY5N2EwZWJmOTM1ZSBsZWdhY3ktdHJ1bmsKKzUwNjQ3IDdmNDBlZjg3MTczMTExNDZmNzA0OTM3YjVlYjUzOWQ2NjJlNzI1ZmIgbGVnYWN5LXRydW5rCis1MDY1NSA2YjFlZDdiNzA0OGU1ZThiOTE4MGI5MTk5NzhlZDU4NDcyNzQ1ZWM3IGxlZ2FjeS10cnVuaworNTA2NTYgYmY0NzRmOWQ1MjI1ZTdlN2VhNjBjNDE5ZTQ0OWE4MTdhZTE4MTJlMCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNjU3IDVlY2YyMmE0ZTVkZmMyMDQ0NWQzNDdkYTA1NDBkNjc4YzRjZDVjM2MgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MDY2MCAwNTI5YTU4NTA2NGM0ZDc0ZDQ2NWJiMWRhY2RiNjg3MGE5MzA4YWRjIGJjYW5ub24tc2FuZGJveGluZworNTA2NjEgMTQ2NzFhODBhYmVmMDkwNzQyNmM5OGRlNmNjNzYyZGI2ZDBlNTVmMyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNjY0IDJhNzZlYzJmMGI3OWQwZDU0YTE5YzlhYjAzNjY1MjNhNDk3NWRhMmMgbGVnYWN5LXRydW5rCis1MDY2NSAwNjMxNjQxZmRlZmY0ZWU0NTBjMmZmNjRmNTExM2MzY2FiYzY4MDUzIHJlbGVhc2UyNC1tYWludAorNTA2NjcgMDA3MTUzNTNmODJjNTY3N2Y3ZjEzMDIwNTdjMDE3OTZkYjY4NjkwYyBsZWdhY3ktdHJ1bmsKKzUwNjcxIGMxMzZmZjRkNDI2ZGZiY2I3MzI3ZDRlMzU2MDk2MjkzZDA3OGRjNTIgbGVnYWN5LXRydW5rCis1MDY3MiA5MTBhOTQ4ZTAyOTBmMTgxNzE3OGE0OGY4ODdjMzRhZWQ0YmY1YWFlIHJlbGVhc2UyNC1tYWludAorNTA2NzMgNzU2ZDU3YWNkYTg1YmNiYTI4ZjIzMGU0NWQ3MTQ4ZjhjZmNjZWI5OSBsZWdhY3ktdHJ1bmsKKzUwNjc0IGJkYTkzYjQ1Y2E0MTNlYjNhNTExZDUzYmNlZWExZGVlNWNlMzdiNzcgbGVnYWN5LXRydW5rCis1MDY3NSAzZGRiNTk0ODNmMTAzMzVmMTY1MTY5YzY4YTI4MmFmOWMwYWM2MTQwIGxlZ2FjeS10cnVuaworNTA2NzYgYWVkYjg1ZWU0ZmVjMmVlYTcwYTk5MmM1NjVkNzIyNTU4OTJhYWJhMSBsZWdhY3ktdHJ1bmsKKzUwNjc3IDUwYjBiNTRmYjE3ZDdlM2ZiZTVhYmMwMmQxNTdkYWE0NWIyMzBiZjAgbGVnYWN5LXRydW5rCis1MDY3OCA3NzVmODViOThlNjU5ODM5NjM5MzRhMjhkNDVkOWZiMDJiNDE4NTEwIGxlZ2FjeS10cnVuaworNTA2NzkgOTBkNWQxZmVhNGYyYzExNTY3ODM5YWFlN2Y1ZjliNzJmZjIzZDk5MSBsZWdhY3ktdHJ1bmsKKzUwNjgwIDM1ZDUwZmJlMGI4ODk5ODBmZmIzNjVkZThlYTAzY2Y5NDUwM2FjZDggbGVnYWN5LXRydW5rCis1MDY4MSA5MzRiYTViZThmM2YwYzI3MTIyYWQxNzM1MjNjNzAyMmE5NWMwNjY3IGxlZ2FjeS10cnVuaworNTA2ODMgYTU1MTk3YmQ3MjAwZGUxMTMyM2RhZGI4Yzk1ZjE2ODQ4Zjc3YjU0YSBsZWdhY3ktdHJ1bmsKKzUwNjg0IDYwNjRjYjMwMTIwOWM4ZWM3MzdlN2ZiNTFiN2U4YmQ1NmQ2ZmQ3YmMgbGVnYWN5LXRydW5rCis1MDY4NSBhYTg1NzkxZjU5OTEzZjFhMTA2ZDdhOTgyYTEyYWMzYzI3MTc2YjNhIGxlZ2FjeS10cnVuaworNTA2ODYgZDJiZmNjMWFhYzNkNGZhZTllMjkzN2I4NzA4ZjI3ZTM2OTZkMDBjZCBsZWdhY3ktdHJ1bmsKKzUwNjg3IGJiMTcwNzI2NWRlN2UyNjgyNGJiNWMwMDg5ZTI3MGI4NDUxMTc0ODEgbGVnYWN5LXRydW5rCis1MDY4OCAwMDg5NDE1MjE4MDUwMmRjYTY0Yzc0NGQ1ZTA1MzFmZmEyMTU5NWYxIGxlZ2FjeS10cnVuaworNTA2ODkgNjU0YTViMjYyNzE3ZTI3ZjI5YzI0OTRmMWQwMWNlYzYwNjRhYTczNiBsZWdhY3ktdHJ1bmsKKzUwNjkwIDYyOGI4NTEwZmVmYmI5Nzg5ZGQ3MmYwOGIxNzQ2MDBkZDcxZjU2ZmYgbGVnYWN5LXRydW5rCis1MDY5MiBmZGEzY2JkNzRjNzE4ZWZjZTZmN2ZhZDQ2NWFiMTE3YTUxZTVhZTIzIGxlZ2FjeS10cnVuaworNTA2OTMgZmY1Mzk3MDdhMWVkMzQ3YmJkOTdiMDk1NDI3YWY3MzdjZTI2YzkzNSBsZWdhY3ktdHJ1bmsKKzUwNjk0IGU3ZDBhNzVlMzE0NTUzZjYwNTFmNWYxMmExNzRmZWQ4MDU4Njk2YjUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MDY5NSAyNDRmYjUyNGRkZDQxYjU0NGJmNTc2YmJmODNjOTVlMWQyMzhmNWNkIGxlZ2FjeS10cnVuaworNTA2OTYgOTc5ZTM5MGUyYmI0YzU2NWQwNjhkM2ZjZTgxNjliZjI0MjEwN2VlOSBsZWdhY3ktdHJ1bmsKKzUwNjk3IDk3MDE2MzM4MThiNGJiMjAyNmJmNGQ3MmFmOGIzOTAwYjQxODNkMTEgbGVnYWN5LXRydW5rCis1MDcwNCA5NWZhOGZjOGEwNjVjMzcwNGU4MzhmNjk0ODM3Mjg1NDgzNmQ0YjJhIGxlZ2FjeS10cnVuaworNTA3MDYgYWNmZjFjMzRjY2EzYzM1ZjcxMDY3NWQzYWY5YjcxZDZjZjIzYmI2MSBsZWdhY3ktdHJ1bmsKKzUwNzA4IDg1YjIzOTY1ZWM0YzA2OTFiM2EyNTE1MzhjZjk5NTIzODc1NjBiZDUgbGVnYWN5LXRydW5rCis1MDcxMCAwOGYzNWFiZWNmOTgwZmRhNTRlNWNkOWM2YmFjMjJiZDU0NWQwZDA3IGJjYW5ub24tc2FuZGJveGluZworNTA3MTMgYzU3NTliNWE1N2YwYzY5MDkyOWE5OTcwYWI0NWZiZjA0ZjRmNmZlYiBsZWdhY3ktdHJ1bmsKKzUwNzE1IDFkN2RhODYwODAzMWJmZDJmMGM3NGEyZDA5YjZlYzhiOWViNTgwOTkgbGVnYWN5LXRydW5rCis1MDcxNiA1ZmY1YTU4M2IxMmU5YzY0ZDUwZmJjNTEzZTJmZmFmZTk0Njc3MDg2IGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA3MTcgODRlOTE2NmI3MTA4ZjEwZDYyMjQ1MjM2MGJhZmU5YTFlMDYwMDNiMiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNzE4IDNjNWRiMmIzZjg5M2FkYTI3ZGZhYzVkMGM1ZmYwNGIwOWE2YTJiY2IgYmNhbm5vbi1zYW5kYm94aW5nCis1MDcxOSA1YzkwM2Y2NTA3MTk5ZTNkNjJlYjI4MGY3MDU2MDUwYTBhODgwZmI1IGxlZ2FjeS10cnVuaworNTA3MjAgOGZlNjc4NmY1MTQ0NWJhNGI0NjA3MWRiNjFjNjBiNGExM2RjODE2MCBsZWdhY3ktdHJ1bmsKKzUwNzIxIDVhYjc2ZmJmMjNmM2NmMjE3YmZmZGU3YTVhMTVjMTFlZDdhZTIzMTkgbGVnYWN5LXRydW5rCis1MDcyMyAyYTFmZWZiMTg3NjRjYTMyZDFmNjhiMTVjNTFkMGU4MGRlODllOTQ0IGJjYW5ub24tc2FuZGJveGluZworNTA3MjUgMTQwNTMxYjEyNGY4NWRmNTcyOTI3NDFlMjUwNDZiYzk1ODg1ZDdhYyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNzMwIGJlMTczNGNjNmRjMDJjNTc0ODk2YTE2MDI2YjU5MGNiNDhhYzIxNzcgYmNhbm5vbi1zYW5kYm94aW5nCis1MDczMSBhMzJmMjBlY2MwMjRiN2JjYjk3NTZjNzQwYzVhMWFkNTViYzZiYTRmIGxlZ2FjeS10cnVuaworNTA3MzcgNTk3NjliNTM0Nzg5ZTc1M2E1NDIwNmYwNWU5MThmMjFmNzEyZDE0MyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNzM4IGViNDQwZWM3NGExM2ViZjU1MzEzMmM3NjA0ZmRhYTdjMjVjNDI1YWYgYmNhbm5vbi1zYW5kYm94aW5nCis1MDczOSAwNjA3MGExMmE2YjAyYjU3MGRkZjc5NzhmN2Y1YWZlNDIxNzgxOWE3IGxlZ2FjeS10cnVuaworNTA3NDAgMzU3MmZhYTlhMjllMDc4YzMyMTdmNjlmMWNiODQwYjkyOGE0N2MxYyBsZWdhY3ktdHJ1bmsKKzUwNzQxIDdmMzgxNzMyNTFiYmM2YjAwNWVhMGFlNTM1N2MwNzE4ZmI3MWJhMTYgbGVnYWN5LXRydW5rCis1MDc0MiBhZjRhM2EwZDQ3Y2NmZTZmNmI3NDczNDVjNDc4YzA4OWI2ZjFlNzA1IGxlZ2FjeS10cnVuaworNTA3NDMgZjIwMzFmMTVkOTlkODEyOGFkZjFjYjNhNzBiYWI3MWI5N2MwZGVhMyBsZWdhY3ktdHJ1bmsKKzUwNzQ1IGJhYTU0MzM3YzNkOWU5NWZiYWQzNTk2MTU3MTJkNGE0MWJmYTUyNzggbGVnYWN5LXRydW5rCis1MDc0NiA3YzA5YjY2ZjA0YmQxNDkxYjAzNjdjOTc3MWE5NDIxOTk3ZmQ3ZDRkIGxlZ2FjeS10cnVuaworNTA3NTQgNDE3Y2RlZGUwNjg4MGYxZDU0OTgzM2Q2YmM0NzgxMjJkMTE5YjhlOSBsZWdhY3ktdHJ1bmsKKzUwNzU5IGQwYTk1NjU0ZjgwMzIxY2UyMzUzOWM5YWQyYmE4YzI3ZjM2NWNiYjYgbGVnYWN5LXRydW5rCis1MDc3MSAwNzllNDJlMGI4MjZhODkwY2YwZjAzNTRmNGJiMDFiYmUyNzZjN2RhIGxlZ2FjeS10cnVuaworNTA3NzIgZjFhMjc3N2U1YzhiM2Q2ODU0YzQxYzQxYjg2ZjhhNjM1NDQxZTgxMiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNzczIDEyZTk3M2JkZmVlZTI5OGY5MTI0YjA1MDFkYmViZmI4NzdmNmYxZGEgbGVnYWN5LXRydW5rCis1MDc3NCBlZTZhYjMzMTc1ODFiZjc4NDVkODRiNWE2ZTk3N2RiZjg5OTEwNTA4IGxlZ2FjeS10cnVuaworNTA3NzUgODMyZmNlNTBkYTkzNjJlYTQ0NDQzZmVjOWU2ZTI0OTVlNmEyMjdlMyBsZWdhY3ktdHJ1bmsKKzUwNzc2IDcxMzJmOThlZjA3YjMyZDk5NDQ5MzNmMmRiZTdmOGU3NDgwY2NjMTkgbGVnYWN5LXRydW5rCis1MDc3NyA3NWE3MTA2NjYyYTNmZDYyNzI5ZTNkMjIyMzg4ZGY1MzI2MjIwMWM5IGxlZ2FjeS10cnVuaworNTA3NzggMTgwNWU2ODRkYzkyNTcyOTc1NDI1N2Y2MGJlYjExZWZkN2U4ZTkwMyBsZWdhY3ktdHJ1bmsKKzUwNzc5IGJjNWQ4MzFmMWRkYTUwOWNiZjU2YmZmZWM1ZTczNjcwYWFhOWE4MjcgbGVnYWN5LXRydW5rCis1MDc4MCBjZGJiNDRjM2RlODcxNWExMGMwZGNkYThmMDhhOWJiZWM2OWYzZTg1IGxlZ2FjeS10cnVuaworNTA3ODEgMGUwYTk3Y2VkOGU5MWY5MmUyM2E4ZWFlZGRkMmU2ZTQ3OTgzYTNlZCBsZWdhY3ktdHJ1bmsKKzUwNzgyIGU5NzczZmMyN2U5YjM2YTU5NWRlNTEzZjc1YmUzZmRhZGYyMzc4NzAgbGVnYWN5LXRydW5rCis1MDc4MyA5NTdiZjMxMTkyNDc4NDA2MjI4NWYyZmJmOWJmNDZkODZlYzhmY2UxIGxlZ2FjeS10cnVuaworNTA3ODQgOWQxOGQ5NjhhNThiMzMxZmU3ZjIzNWU5NjE2YzAxMjg0Mzk2M2E3ZCBsZWdhY3ktdHJ1bmsKKzUwNzg1IGUzZGE1Zjg3ZmU2NDFkOGIzOTJlYWU3NTFmY2EwYWMzZmY2OWY1ZGYgbGVnYWN5LXRydW5rCis1MDc4NiA1NGJiNzIwNjMyYzQyZmQxODVhZGU4OTk5ZThjMGUyODgyM2U2YWJiIGxlZ2FjeS10cnVuaworNTA3ODcgMGE0YWQ4M2ZkNjU0OTIyNTNjMjg3MzQ5ODE1ZDYwYmU4YmRiNjBiMCBsZWdhY3ktdHJ1bmsKKzUwNzg4IDNhYzg1MDk0MzdkZmRiYzI0NTAwOTY4Y2E4ZDNkODE0OWNkZDc2ODUgcmVsZWFzZTI0LW1haW50Cis1MDc4OSBiNThmNzk1MmUzOGFlODkxZDJhMTAzNTRmOTYxMDMzOWY0YTMxN2EzIGxlZ2FjeS10cnVuaworNTA3OTAgNzg2NDNiZTNjZjQwYmIzYTlmNGQ0MzkzNTcyZWUwMjIzMmM2M2U5ZSByZWxlYXNlMjQtbWFpbnQKKzUwNzkxIGEzZmRhODQzMjM0ZTQ4ZDFjYTZjODJiMjVlNjNjYTRhNDRhOTkzY2EgbGVnYWN5LXRydW5rCis1MDc5MiBmODgxOWJkNGU0Mzc5NzcwNWRhY2UwMTE3ZTIyYzU2MmFiNDQ5OTliIHJlbGVhc2UyNC1tYWludAorNTA3OTMgNTM0MThjYmFkN2ZkNGMzNjJiOWU3NDhmYzlkNTY1YjEzNDhjMWMzZCByZWxlYXNlMjQtbWFpbnQKKzUwNzk0IGE0YzRiN2VhNzljMGE3NGYzNjkxMzE5OWI3NDY3ODNiMWUxMTc4ZGIgbGVnYWN5LXRydW5rCis1MDc5NSA4MzJkNWEzNDEzMGZhNTM2NDU3MDc0MGRlNzUxMDY5MGExYmMzYTViIGxlZ2FjeS10cnVuaworNTA3OTYgYTRmYzRlNzUyNjM0NjgyNTI3YjdmMGQxZmVlMjViYzMyOGJkNWIwNCBsZWdhY3ktdHJ1bmsKKzUwNzk3IDYzYWVhNjg4YjViYjI2ZGZjY2RjNDBlNTY1NzI4ZGIyYWVlYzczOGQgbGVnYWN5LXRydW5rCis1MDc5OCAxYjFmZDE4YjFhZGE1MzgzYzI1ZTU2MjRmODYxYmYwNTNkNTg2MTI4IHJlbGVhc2UyNC1tYWludAorNTA4MDAgMDJmYTEwMTVjYmNjNGM5MzRjODQwYTNmOWZkMmZlNjIwMDFlOTcyYyBsZWdhY3ktdHJ1bmsKKzUwODAyIGNhYWYzN2U0NWQ0N2Q0N2VjNDc4MzU4NmI5NjA2ZTk0MGU4ZDAxODggbGVnYWN5LXRydW5rCis1MDgwMyA4OWUwOTBmZWY5ODUzMDIxY2FiNjk5NmI3ZDg0NjRiZTE4ZGI0MTMxIGxlZ2FjeS10cnVuaworNTA4MDQgZWZkZTVlZTg4YzlmNzc3OWYwMWNlNWIzZmM2MzI4ZjE3MzQyZjkzNyBsZWdhY3ktdHJ1bmsKKzUwODA1IDBjMDBlMmY1MDllMDA3OTM0N2EzZGE1ZDNkOGM1MTRmYmU3MTg3MzQgbGVnYWN5LXRydW5rCis1MDgwNiA3Y2U3ZWQyZWNkOWNhZDM0ZjI2NzdjODQzMTc3NDVjY2MyZTJiNDhlIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA4MDcgZDcxZDQ2Njk3NGU1ODdiYjM2Mzk1N2EwOTljZmFjZWZmODc4NzFmNyBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzUwODA4IGVhZWRjY2MwMjgzZDc5MTBlNDlmZjJlNzk5YWZlOTMzODI1MWZiMjAgbGVnYWN5LXRydW5rCis1MDgwOSAwN2NlZTAxYTRmY2NjMzg3ZjBmYzFkOTI4ZmE1MGZhODFlZTdjZTExIGxlZ2FjeS10cnVuaworNTA4MTAgYTVmOGQxZDI1NWE5NzliYzcwZjRmNjhjMDc0MzliNmMzZWQyZDM4OSBsZWdhY3ktdHJ1bmsKKzUwODExIDk5YWE4NDIyNGYxODE5ZDU1MjcyNmFhOTExZWE4NTcwOTQ1NGY0N2QgbGVnYWN5LXRydW5rCis1MDgxNSA2M2E0NGM5MWE0ZDVlYmNlMzI1ZmMwZjgyMmMyZThmODJkZjEyZTI3IGxlZ2FjeS10cnVuaworNTA4MTYgNjIyODJmZGFhYzVhMGExMzU2NTk1MDJiZjNjMzRiODVmNzQ0MTZmOCBsZWdhY3ktdHJ1bmsKKzUwODE3IDc5MGE3ODJkOTgzY2M3NDQ2NDE4NTQwMjIzMGJjOGViMjE3OWRiOTcgbGVnYWN5LXRydW5rCis1MDgxOSA2NjIxZWRmZDI5NmFiOGRlMTcwZjE2MDk4ODE3MGM2NzA3ZjAyMjdhIGxlZ2FjeS10cnVuaworNTA4MjIgMmQ0YzlhY2NiOGZjYzEzYzQyODZmMTgwOWZmMjA3ZWUxYzNlOTIyNiByZWxlYXNlMjMtbWFpbnQKKzUwODI1IDgzN2Y1Njk1MGNlYThiNzQyYTQ2M2Q3NDY5ODYwMTYzNDkyZmViMmYgbGVnYWN5LXRydW5rCis1MDgyNiBmZjhlN2M0NmU0Mjk4MDFmMDU2ZDExZjBlMzE0YWM3ZTY2YzZmOTY4IGxlZ2FjeS10cnVuaworNTA4MjcgOTUzNzY3NTJlNjdjZjkzYmIxM2Y1NGNmZmIzODJhOTQ5OWRjMTdkZiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwODI4IDkwM2ZkYzM4ZDU2NDVlNGMyZTAxODkyMDBmNWYwNTRjZDk2MTdhNzIgbGVnYWN5LXRydW5rCis1MDgyOSBmOTBmMzI4NjI3NTYxYzVkNjcxYTg0YWUzOGQxMjI2MTlkNmFmMzI0IGxlZ2FjeS10cnVuaworNTA4MzAgYjkxNTFjOGM3OWU4ZjUzZTlkMzM5ZDA1MDQxMDY3NTM2Y2YwMmQyZCBsZWdhY3ktdHJ1bmsKKzUwODMxIDVkMTE2MmU2YmMzN2Y0OGQ1ZjI4ZjliYWFlNGFlZjY2ZTkzYzMyM2EgbGVnYWN5LXRydW5rCis1MDgzMiA0MGU4Y2FlZjg0MGVmMjQ5YjU2NzBjZTA4MWJiMTg5YTRiZGE2YTZmIGxlZ2FjeS10cnVuaworNTA4MzMgMTQ5MDUyOWU3NGNlM2JhYjkyODNiODU1MzNiZDMzYzk2Y2MzYTA2ZCBsZWdhY3ktdHJ1bmsKKzUwODM0IGI1NWJmMmFkZmFlNWU5MTQzYWJiOGM5OWRjNDNkZjgzM2M4NjhlYzQgbGVnYWN5LXRydW5rCis1MDgzNiA1ZjMzMTIwNTRjZWRlNjFlODM1ZTQ4NDEzM2UzZTc5NTU0NGIwN2E4IHJlbGVhc2UyMy1tYWludAorNTA4MzkgY2ZiZjU3NTcyNDU3ZGMwMzVkMDhiMTRhNDc1YmMwMTk0YTIzMWUwOCBsZWdhY3ktdHJ1bmsKKzUwODQwIDZiMjAwYjhjNjNkMzMyNjZjM2NiM2ZiYzc0ZWI5OWU4ZDA5ZjhkYTEgbGVnYWN5LXRydW5rCis1MDg0MSA2ZDE4NGZiOGM1MzUwOThkOTlhMTUzYWZlYTY2ZmYyOTdmOTQ3YjU5IGxlZ2FjeS10cnVuaworNTA4NDIgN2RhNmY4MWFkNGQ1M2U1MjFhOTZjZjU3NTk0ODk2NGM0YjIyYTczNiBsZWdhY3ktdHJ1bmsKKzUwODQzIDE3ZDU2NzFmZmZjY2MzY2E5OGQ4YzZhYzcxYTFjMGUzMmYwNGM0MDYgbGVnYWN5LXRydW5rCis1MDg0NCA5YzZkYzZkMDliMDczNjIzZTMxZjg4MWEzNWYxYWUxYzgxMGNmYTQ2IGxlZ2FjeS10cnVuaworNTA4NDUgOWYzZjFlZGQ5YzM1MDYzOGQxOWQwM2Q5YmY1NTQ1MzEyNzU2M2U2YiBsZWdhY3ktdHJ1bmsKKzUwODQ2IDI2NzA2NTA3NmYwNTlkZWYwNDIwMTVlODVhZmQ0OWU1ZjUwNTg3ZWYgbGVnYWN5LXRydW5rCis1MDg0NyAyNzFiMmJiMmZjOTIzY2YwZGYwMzNhYjVhNTEwYTE1ZGE2YjA5NWM4IGxlZ2FjeS10cnVuaworNTA4NDggZjI5MmEyYjE0YmFmNDgxMmMzNDNhNzlkODk2MWNiYWI5NjUyNDQxNCBsZWdhY3ktdHJ1bmsKKzUwODQ5IGFjZjYwMDQ3MTM2OWY0M2Y0YjNmNzJiMzRlNDhiNDg3N2ZlNjlmYzEgcmVsZWFzZTI0LW1haW50Cis1MDg1MCBmMDhjNWJiYjgwNDIxY2QzNGJlN2IxYjgwZmIyMGVmNmJmY2I5YzM4IGxlZ2FjeS10cnVuaworNTA4NTEgYjgxNjQyZTUyMjg3ZjM2YmY2YTFlMGY5Y2FiMWIxZjUyYzlkNDljNyBsZWdhY3ktdHJ1bmsKKzUwODUyIDFlMDBlZjA3YmViMjcxOTg0ODIzYjhkMmYzNjE4MDRhY2U1ZDM5YzAgbGVnYWN5LXRydW5rCis1MDg1MyAxODVmNDI4M2EzYjljZDRiNjcwZDliMGFiZGYxZjJiYmNjNDE2MmUxIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA4NTQgMjljMmZlZTZjOTg0OGU4YTI3Nzg5ZDcxYTcwYmJkNTM0OGQxZTllMiBsZWdhY3ktdHJ1bmsKKzUwODU1IDQwYjQ0NmVkM2YxMjYyZDk2MmUyM2UxYWZjM2MxOWJiYjAwZWUzNDAgbGVnYWN5LXRydW5rCis1MDg1NiA1ZWU2ZDNkYTBlNjQ1NjQ4N2QxMDY4M2JmNzU2OTcxMTI1ODAwNGM3IGxlZ2FjeS10cnVuaworNTA4NTcgYmNlZmJjNWU2NzFhZmQ3YTE2ODQyNWNhZWFkMzJkMDhjZmE3ZWRlNiBsZWdhY3ktdHJ1bmsKKzUwODU4IDBiMGNjN2E0OTY4MmNjMGFmODFlZDRlNDAzZmUyM2Q2YmQxZGI1NzEgbGVnYWN5LXRydW5rCis1MDg1OSBkNzY1Nzc1ZWQ3OWY4NTYzYTE5OTU1Y2Y4ZTViMDVhYTg5NTdlZjg1IGxlZ2FjeS10cnVuaworNTA4NjAgOGNhMzA2OGVhMzQzYTI0YWU3M2FhYjBmNDE0MTBhNTEwOGNmNDMwZSBsZWdhY3ktdHJ1bmsKKzUwODYxIDAyNWMyN2I4MTJmNjhjNDI0YTY2ZWJiNjhiMTgxZGRiNDI5ODcwZWQgbGVnYWN5LXRydW5rCis1MDg2MiBiMDExYmVjZjhjODIyYzJiYjU2NTRjOTkxZDdhNzZkMjAwMWVkMjE4IGxlZ2FjeS10cnVuaworNTA4NjMgYzE4YTY2OTRhMDY2YzdlOTVkMTVjNjdhYWM1YjRmNjY2OWQwN2VjOCBsZWdhY3ktdHJ1bmsKKzUwODY0IDAwYWNlNmU0MDhiMDM3MWEwZjIyNTg4MTU3MDRjNjBmZjkyNGMyNTIgbGVnYWN5LXRydW5rCis1MDg2NSBhMTEwYTQ0NjIxODlhMjAwMDJiOGQ4ZDRmMDc0MmU2NTRhZjRjNzBhIGxlZ2FjeS10cnVuaworNTA4NjYgNjFjMGZlNDgzNzZhMTJkOGEzM2M1YjY0MzVlMWZjNWMxOTU0YmIyOCBsZWdhY3ktdHJ1bmsKKzUwODY3IDYwNTIyZGZlNjI1OTkwYjA0NWE0MGE0MTEwMDdkOTg5Y2UwMzA1OGYgbGVnYWN5LXRydW5rCis1MDg2OCA3MmE1MmU2ZmM2ZjEwZTUzZjUwYjZmMTIxZjIwNjQyNTMwNDQ4MTM3IGxlZ2FjeS10cnVuaworNTA4NjkgODc5YmQ3NTEwZmVhMDBkMjEyNjk3YmFlMjJjMzk3NWM4NmE4YmYwMSBsZWdhY3ktdHJ1bmsKKzUwODcwIDZiM2Q0YTBmMmFjNTkxNTc4MDc0ZDVmZDM3ODRlYjQyZTY4Nzc5NDQgbGVnYWN5LXRydW5rCis1MDg3MSBjNGE3NTQ2YTUwOWYxNzRjMzg4ZGU0MzQ1NmMzZWJjMDZkMGU4NmUyIHJlbGVhc2UyNC1tYWludAorNTA4NzIgY2U0ZGZmMmE5NTIzODAwY2I2NTA3MTQyZWIwOTljZmE2NDg2MmNkMSBsZWdhY3ktdHJ1bmsKKzUwODczIGVlYTY3NDIxMWQzMmJjMWQ1NjNlMDJkMmVmZGQ5OTNlMzk2Mjc0YjEgbGVnYWN5LXRydW5rCis1MDg3NCAwZDBkODJlNDBiOTI3ZTUzZGFiODYzZWY2MDRkYjJhNWM1NTE1ZDg5IGxlZ2FjeS10cnVuaworNTA4NzUgYzZkNGMwYWYyYTEyMjI2OWExOTEwZDRhYjFhNTMzYWIwZmZiZDZkMSBsZWdhY3ktdHJ1bmsKKzUwODc2IGFjMDFiNjM1OWI2MjE1ODhjZDhmYjNjNGY3MzFkM2FkNjk2YTgyMDggbGVnYWN5LXRydW5rCis1MDg3NyBiMGNkY2JjYzVmNDU3OGRiNjRlNGM3MTAzODA0YTZlNGRiODUxMWZlIHAzeWsKKzUwODc4IGE3NTMwMDM2ZjA1NWNiZDg0MjE4MDM5MTk2NmZhMTZhNjJmNjliMDkgbGVnYWN5LXRydW5rCis1MDg3OSBlMTlkYTliMDAyZGEzMWM2MmYxODgzYWRhMTJkNmE0NTNlZDk2ZWUzIGxlZ2FjeS10cnVuaworNTA4ODAgNmViMzc1N2MyYzk5MWQzNjg5ZWI1ODc0N2IzM2E2ODIxZGVmOTNmMiBsZWdhY3ktdHJ1bmsKKzUwODgxIDI4Y2RkNDNlMDU2OTAyY2ZmYjdjMGMwMmVjNmNlNjJjYzQ2MjdlZTUgbGVnYWN5LXRydW5rCis1MDg4MiAwNzgxNzJlZWFhZTUzZDYxNDEyMzA3NDA4NDg0YmE5ODFhMmJkMmUzIGxlZ2FjeS10cnVuaworNTA4ODMgMGIzZmQwNGNkZmI0ODg1YzczNjk1ZDQ2NzFlYWFhYTI2NjMwZGM3YSBsZWdhY3ktdHJ1bmsKKzUwODg0IDExMmYyMTg4MjEzYjI0Y2IyMzc3YTBkZTJlMGNhZmRmZTUyY2NiZmUgbGVnYWN5LXRydW5rCis1MDg4NSA0MGNlYmFmYWU1NmZmNjAzZjgxY2RkOWUwZTJlMjUyYTFmNzRjNmI3IGxlZ2FjeS10cnVuaworNTA4ODYgMzUwNDNmYmE3YWVkODAxY2RkYTUzYThkMjcwYjcyOGYzODAzMmZmNSByZWxlYXNlMjQtbWFpbnQKKzUwODg3IGNkOGYyMGQ0MDBjMWM2NWEzMzBkNzNlNGNmNDk3YmE0ZDYwYmQyYmEgbGVnYWN5LXRydW5rCis1MDg4OCBlZjFlN2YzZDlmOWQ4MmVjOWNkZGI3NTlkZDAzOGZhYWQzN2IyYWVlIGxlZ2FjeS10cnVuaworNTA4ODkgNjFjOGI0MTA0YWVmYWVhNTIxMWY2ZjljZjBjODU0MWU4N2VjNGVhOSBsZWdhY3ktdHJ1bmsKKzUwODkwIDc1NDMxYjBiZmIwZTcyMTNiMGIzNGIwOTYwZmVlMDkzYTYzNDE3N2YgcmVsZWFzZTI0LW1haW50Cis1MDg5MSBiOWYzNTNjMmMwMjNlNWI5ODYzMzJkNzg2OGVkNmFjYzMyMDUwOWFmIGJjYW5ub24tc2FuZGJveGluZworNTA4OTIgNjk3YWUzNjJlZDAyNDE1MmExMDg3ODNjNjM5NjdlYTAwMTE3ZDcxNCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwODkzIDQyNzZkMGI0NjlhZmZmMjRmMmI3ZTI3MTAxZTA2ZThiNWY3MmJkYmMgcmVsZWFzZTI0LW1haW50Cis1MDg5NCAyNzdkN2FmNTVjNDk0NWE3ODBhYjM4NGQ3NmVmMjNhYmU3NDUzZjc5IHJlbGVhc2UyNC1tYWludAorNTA4OTUgNGE2YWRlOWNlNzgwZGI5MDU1N2EzNmExY2Q5YzA1Mjk2ZTU0ZTQzNSBsZWdhY3ktdHJ1bmsKKzUwODk2IDU1ODY1ZDdiYzZlYTQ5MTQ0NWFjYWE1MzExYmUxOTlhNThmMWVmYzcgbGVnYWN5LXRydW5rCis1MDg5NyBiZjE5ODRjMTNlMmY3OTg2NDQ2NDlkZmNjMDgwZTgxODAxYTBkNjEzIGxlZ2FjeS10cnVuaworNTA4OTggNmRhY2RjMWEwMDU0ZmE5MzY5YzczYTk1OGY1OTEyYTJlYmM4NjY5YiBsZWdhY3ktdHJ1bmsKKzUwODk5IDBlOWEyNjlhMjE4OTBiMTAwNWU4YjgwOTBkYzY3NmYxNzYwYTEyOGQgbGVnYWN5LXRydW5rCis1MDkwMCBkMTY2NGE1MDFkYTVjYmRlMGUwMDEwN2U4ZmZjOTk2MWU4YWJkYTM2IGxlZ2FjeS10cnVuaworNTA5MDEgMGRlOWQ3MTQ0NGY2Mjk2ZWI1ODQwMDcxNjE2MGExNDYzYTNlNWQ3NiBsZWdhY3ktdHJ1bmsKKzUwOTAyIGE5YjJmZDJkNGM5NjE3Y2E1NDM0MDk3M2U5MjI0NjFhNjYzZTQ4NzggbGVnYWN5LXRydW5rCis1MDkwMyBjODM0Y2I5NTYzN2FjZGIxN2QyM2RkMTZkNmFhYzMyZGE2YTBkNTRlIGxlZ2FjeS10cnVuaworNTA5MDQgYzNiYjRiMjNlYjliM2ZiYWNhMjYyYzlmODFlYzA5ZmNhZjY5MjA4ZSBsZWdhY3ktdHJ1bmsKKzUwOTA1IDQwNmMxZWZlN2JlZWQzNDY5ZjY5MWU2OWIxM2NjOWJjMzNkYjcwNTUgbGVnYWN5LXRydW5rCis1MDkwNyAwNGRmMGE5NzIxYjJjNzRjYmYzMDE0MjVjNjIxZWI5NTNmNDIzMmY3IGJjYW5ub24tc2FuZGJveGluZworNTA5MDggMWI1OTdjODAxNTcyMjJjNDMyOTEwOGQ0YzczNDhmZjQ3NDA0NGI5ZiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwOTA5IDlmZGM2ODQxYzNlYjY5YzcyZWExN2ZiMzRhMDFjNTQzZjIzZmEwMWEgYmNhbm5vbi1zYW5kYm94aW5nCis1MDkxMCAzMDhiYTY0MzE3M2EwMDRmM2ZiY2I5ZGE0YTU2YmIyMzI4Mzc4NDNhIGJjYW5ub24tc2FuZGJveGluZworNTA5MTEgZWM1MTZiYWY4YTMwYzVkNTljMjVhMjFlMmQ4MmI2NDRhMzk2NTQ2MyByZWxlYXNlMjQtbWFpbnQKKzUwOTEyIGYzZDU0MDc1MWFkZTA3ZGQ5OGNhYjEwODYzZWNkMmZkYWI3MTE3MTUgbGVnYWN5LXRydW5rCis1MDkxMyBjNGFjNmVhNDk3YTEwNWVkMzU0NDNlNGU2YTI0Mjc2YzY5ZDkzYjk2IGxlZ2FjeS10cnVuaworNTA5MTQgODdjOWUzMzFkNWM4ZDYxMTJjODEzZGU4MWEzZGY2NGFiZDg1ZjI2NyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwOTE1IDZiOTZkOGM5MjNiZWM1YjE1ZWE0ODUwYjEzMzcyOWI4MTVkNGJmODQgbGVnYWN5LXRydW5rCis1MDkxNiAzZjQ0ODViMjBlNzk5ZThjYWUyN2EwZjdhYTgyY2MyNzUwOTQ4OGE0IGxlZ2FjeS10cnVuaworNTA5MTcgNWU4NWVlZTMzNTgyOGQ4MzVkOGE4MDQ5NTQ3OTUzYmVkZDhlMGM4MSBsZWdhY3ktdHJ1bmsKKzUwOTE4IDEyY2ZhMWJjZjg0M2Q3NGJjYmUxM2U4NDI1MjcxZTNmNGIzZmQxMWYgbGVnYWN5LXRydW5rCis1MDkxOSA4YjljY2Q1ZDkzMWUwZjI0MzdiNWFmMzQzNDdlZTA0MGM2YjQ2MTk4IGJjYW5ub24tc2FuZGJveGluZworNTA5MjAgOTI1YWI0NzgyOTk0MjQ5NzA5NzNlMjk2ZmQyNjk1NDM5ZDllMmIyNCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwOTIyIGE1NGFlMjU4M2I3MDEwMGNhMjA4ZmUxMTM1ZTZiNzgzN2U1MDBiZWEgbGVnYWN5LXRydW5rCis1MDkyMyBlNzk1ZTA1ZDZkNTY1YzYyYjkzMmEzN2MwMmI2NzI4NWYyODljMDA5IHJlbGVhc2UyNC1tYWludAorNTA5MjQgNmM4YmM3Y2Q3MmE2YzlmYzdmNDgxZTAzYzAzZmVlMGE2MWU5YTIzZCBsZWdhY3ktdHJ1bmsKKzUwOTI1IGZiNmJjY2ZmYmUzMTBhNGIwODgyNjBmZGMzMmRjNDcwY2M3YmFiZDkgbGVnYWN5LXRydW5rCis1MDkyNiBjZGI0Nzg3MjI2YWYzYjU1MzEwYWU4MDVhOTQ5Y2YzMThhMzA1MTE1IGxlZ2FjeS10cnVuaworNTA5MjcgZDQ1MzQ0MGIzM2M2ZTUxNzMzZjFkM2ZiMmJiYWEwMGZhNTU2YTk0MyBsZWdhY3ktdHJ1bmsKKzUwOTI4IDFmYWQ0ZjNlMzZiYTRmYjA0NDM5ZDQ2OWNmMWI1NDE4YTcxZTdjZWMgbGVnYWN5LXRydW5rCis1MDkyOSBhYjM0OTVkZjRjY2VjYmE2ZTFkNjI4ZmQ3YThjNzNmYTQwNzBlMDZlIHJlbGVhc2UyNC1tYWludAorNTA5MzAgYmQyNmExOTUzYzA1YmUyZWFmZDNhNmRlNTZkNjgzODA3OTRiYWY4NSBsZWdhY3ktdHJ1bmsKKzUwOTMxIGE5OTVjZmY4NDNiMzQwZTFmNWFiOGM5NzdkMjI0ZmFmYzBjYzhiMTMgbGVnYWN5LXRydW5rCis1MDkzMiAzZmVkN2ZiNmJjOTY0NDkzOWNkN2VmM2MwMTcyNjE2YTRhNTBlMjQ1IGxlZ2FjeS10cnVuaworNTA5MzMgNWYyMTU0M2MzM2RjNGVjYTdhZTNlYTI1MzFlNzQ2ZmJiMDkxZmQ5NiBsZWdhY3ktdHJ1bmsKKzUwOTM0IDJmM2Q4NzFiZjZlZjIyZjM5YTI1N2M2NjY5MzRiODczZTQ1Y2RjYzggbGVnYWN5LXRydW5rCis1MDkzNSA2ZmY3MmFkOTNhZDJiYTYxN2M1MTUxZjE0ZTFlMTg0Y2E1YjRjYjljIGxlZ2FjeS10cnVuaworNTA5MzYgMWM5NGY2NjIzNzc3OWI1NmJhYTk3MWUxNzFmZmQ1YTBlYmJkMTI4OCBsZWdhY3ktdHJ1bmsKKzUwOTM3IDZhODk5NWMyZThiYzk5MWQxOGNhY2MzNDA2MDIyMWYyNDM4NjBiMWYgbGVnYWN5LXRydW5rCis1MDkzOCAwNjkxZDkwMWQ4OWNiZjNiYWMwZDUzYmE1ODcxZmFmN2QyNDg2ZDIyIGxlZ2FjeS10cnVuaworNTA5MzkgMGFiYTZiMWY1YTAxYzNiZGY1ZGYxZGExMmI0M2JiNWRlMTc3YjNjMCBsZWdhY3ktdHJ1bmsKKzUwOTQwIDFhMjIyZjExMGFhYWY5OWRkMTIxODI1ODg1NjRlMTFlMTE1MjU5MTMgbGVnYWN5LXRydW5rCis1MDk0MSBjYjFlNDMyYjQ5MTlmMTA2NDQwNmE2OGM4ZWYxNjA4MzU4YmQ2NTI0IGxlZ2FjeS10cnVuaworNTA5NDIgNGRkNTJiYTUyZGU4M2VlMTNjMzNlZTc3NGVhMTJmZDQ3NjU1OWE2NSBsZWdhY3ktdHJ1bmsKKzUwOTQzIDNhMmQzZWRhM2UxNmU1ZDRkOTZkOGZhNWQ1NTdmNDEwN2JjYmNmMDEgbGVnYWN5LXRydW5rCis1MDk0NCAzNDk4M2MwYjI2YmMyOTI2NjI5ZTIxMjY3NGM4OGYyNjFmODQxMDdkIGxlZ2FjeS10cnVuaworNTA5NDUgODA2OWQ3M2FjYmRmOGI1ZTlkM2I4N2M2YWU5MjFhYjVmOGIwYjlkNyBsZWdhY3ktdHJ1bmsKKzUwOTQ3IDM1NTgzZjU1YzVhOGE1NWEwNjdhMWJlMWNmYjQwZWYxYWU0ZDI2NGYgbGVnYWN5LXRydW5rCis1MDk0OCA3MjgxNDI5YTAxZDY3ZDRiYjcwOTg2ZjJlNTc3MTk1ZDZiYzQzMmY0IGxlZ2FjeS10cnVuaworNTA5NDkgMzRjMjBkM2YyNTEwNjQwNzNkZmQ2ZWIzZDI5MDMyOWI3ODE0YTAxMiBsZWdhY3ktdHJ1bmsKKzUwOTUwIDg4ZGI2MDJmMjNhNmQxZTVkNDVhODQxMjQwM2MwYWU5YzU1Nzk1OTQgbGVnYWN5LXRydW5rCis1MDk1MSA0NWEzNTRmNzRkODBkNjU0MDlhMGRmMmE1YTJhNTkyYjZiZGI0NDZkIHJlbGVhc2UyNC1tYWludAorNTA5NTIgNGRiOWQ5NTMzYjE2M2QxNzljMDk5OWMwYjRiZTY3YjU3OTFmNmI1MyBsZWdhY3ktdHJ1bmsKKzUwOTUzIGQ4ODg4YzhiODcyYjEzYTczNzRkNDYzYTM2Njg4NzBkZGNjZmFmMTUgbGVnYWN5LXRydW5rCis1MDk1NCA2YTVmNzlhNGU2ODczM2UxMzZmMTI1NmMwYzFiOTExNzI1ZjhmZjU2IGxlZ2FjeS10cnVuaworNTA5NTUgNWFkNmUyYTcyYjJhYzJhMTQyMzk3ZjQyMzU5YzFlNWZjOWE4MTE5MCBsZWdhY3ktdHJ1bmsKKzUwOTU3IDZkMWY2NzNmMDU5MDdjNjgzYjcxOTQ2ZjcwYzFhYTBlNTI0NzQ0NTggbGVnYWN5LXRydW5rCis1MDk1OCA4MDU1MTJjZjE0ZWZjYTY1ZWQ4Y2JiZTBhYTBjOTJmYjEzZjFmOWU0IGxlZ2FjeS10cnVuaworNTA5NTkgNDQwN2U1MTkzYTRiMGM5MTcyODVmMjJmY2MwODQ3ZWM4ZTA2YzRjNCBsZWdhY3ktdHJ1bmsKKzUwOTYwIDRlM2FkNjVmNTVlOGVlMjdjZWEwMTIxYmJkYTk2NGVjYWQyYjNjNDUgbGVnYWN5LXRydW5rCis1MDk2MSBlZmJhZWM5Njc0ZGZkMWY5OThkMDY1NjM0MzIyYzdmMWFhZTg5ZTFhIGxlZ2FjeS10cnVuaworNTA5NjIgZGQ1MWU1NmI2Y2IwYTVkMjllODk3YmJjMjVhMDBlMzE2NDlkNDlkZSBsZWdhY3ktdHJ1bmsKKzUwOTYzIDE1MjNjMzhjZDUwNWZmMjE5MjJiNmY4YjQ3ZGUxZDNkNzAwZmYyNjkgbGVnYWN5LXRydW5rCis1MDk2NCAzODhiN2Q5MGJiODk2M2U5N2U0YmRjZWIxZTZkMTg3NGZiMmQ4ODNkIGxlZ2FjeS10cnVuaworNTA5NjUgZjY5ZDkxYTdjZjcxNDg5NGVkZDA0NmVlNTdlMzE0MjA2Y2EzYTc4NSBsZWdhY3ktdHJ1bmsKKzUwOTY2IDc3ZjM2NTNiZmMxNDgzZjc0MGIxMjBjNzc5YThlM2ZlM2FkYjYxYjggbGVnYWN5LXRydW5rCis1MDk2NyBhZWU5ZjBkNWZkMmIxNjcyNDUzYWRlZTlkZTUyMGI2M2M3M2I2Y2M4IGxlZ2FjeS10cnVuaworNTA5NjggYjc0NWIzZmQ2NmE2NDlhNWZhNTQwYmRmNDc5NzFjMjZhZjBhOTU5ZSBsZWdhY3ktdHJ1bmsKKzUwOTY5IDdkYzVmM2VkZTRjZGM2MmJmZWZiMWQ3MGJkMGJhZWJjZDk3NTgzNjQgbGVnYWN5LXRydW5rCis1MDk3MCAwNDFlYjYyMzFjZGMyNDE2ZDliOTVkMDY1YTgyZWNiMWExNDc1NTUyIGxlZ2FjeS10cnVuaworNTA5NzEgMWI0ZTVlYjIxMDQ5ZmI1ZTU5YTNiMjQ0NjhiYzhkYzg5NzAyMGE5OSBsZWdhY3ktdHJ1bmsKKzUwOTczIGNlYmVlMWY4NTIyMjE5MTFhZGIwYmIwOTU2YjE5NzU4ZDRmYWM2MmMgbGVnYWN5LXRydW5rCis1MDk3NCAxZWI5MjE1NjQxYTg4NDRlYTY0MmMxNDc3OGNkMzAzMDVkM2UzMmI5IGxlZ2FjeS10cnVuaworNTA5NzUgMjE2ODc3Yjg2YmMyODY1Zjc1YWYxYTM5NTNlYzk4OGNjNTIyOTU4NSByZWxlYXNlMjQtbWFpbnQKKzUwOTc3IDkzNzdjNjYwNDU0MmNlNmVhYmY1ZDBlNjJjZDQ0MzVkZTZkMWVjOWUgbGVnYWN5LXRydW5rCis1MDk3OCAzNjFlZjdjZWVmMjhkOWY2M2ViM2U1YzdlNTU3NTgzZjBhMTM1NDNkIGxlZ2FjeS10cnVuaworNTA5NzkgYmRlNThhNzhmYzcxMmUyYTk3MjVkNDc0NTgxYzE0YzliMzBhMWUzNyBsZWdhY3ktdHJ1bmsKKzUwOTgwIGQ5M2EwNDM0MGU2YmJhNTc0N2VmMGIyZmYwOTk4MDUxZTZmYzkxZTMgcmVsZWFzZTI0LW1haW50Cis1MDk4MSA2NWU3YjQyMjM0NDRmMzZjODY3ZDk3MDEyYzQwZTk0ZDRlMzJmMTMxIHJlbGVhc2UyNC1tYWludAorNTA5ODIgOWI5NTgwOTgyMDM1NWI2ZjFlNDg3NDcxYmNlMWViOTA0ZDc0MDcwYSBsZWdhY3ktdHJ1bmsKKzUwOTgzIGM5OGEyMzUyOTgzYTQ5NmQxNGE5OGQwOTkzMGU2NGUxZmY3MTUzZmIgcmVsZWFzZTI0LW1haW50Cis1MDk4NCAyOWM3NjM1ZDAxOTlhYzViZTJjOTc5OTQyZWUxMDJiMDljYjI0NmUxIGxlZ2FjeS10cnVuaworNTA5ODUgN2Y0NGQ2MzRmMzc3YmQ2ODliMzlkZDRmYjJhZmJmZThkZmUwOTJjOSBsZWdhY3ktdHJ1bmsKKzUwOTg2IDRhZWQ0MzY3YWRkMjdjZWViZmJkZDdkODUzZjJiMDI1MGMwNmE5OTIgbGVnYWN5LXRydW5rCis1MDk4NyBkMGU2MTcwNzA0ZGVlODUwOTYwMTRiMzM3ZWQwNDFkMzJjYjMxYWFmIGxlZ2FjeS10cnVuaworNTA5ODggYzg3YTM5NTFkZmM1MGFhMDcxOGJmZDhlMjBiMDljNjY5MWYxZDUwOSBsZWdhY3ktdHJ1bmsKKzUwOTg5IDRlZDVkNGM4ZTY1NDI0ZjRhODExYTA1N2FhNTc3MDFmMmQ5ZWUwYTMgbGVnYWN5LXRydW5rCis1MDk5MCAzOTVkMTVlODM3NGE3MGEwNmE0NmRjNDc4MzI4MGQzM2MwODUzZTJlIGxlZ2FjeS10cnVuaworNTA5OTEgYWVjNjY2OGM1OGQxZTFmODkwMmZlODVkNTIwNjcyMjFkOWM5ZWI1MiByZWxlYXNlMjQtbWFpbnQKKzUwOTkyIGNmMDQ2ZTIyZDdkZDU5YzRjYTMyZDI0NzM0M2Q2OGJkMTAxYTJmYmQgbGVnYWN5LXRydW5rCis1MDk5MyA5MzBiYjFlYjhkZDVkMWNhYzUyOTc0MTUzNDg4MTRiZjc0N2Q4NTIwIGxlZ2FjeS10cnVuaworNTA5OTQgM2RkNDEwMWNiN2U5Nzc5ZmZmNDQ1MjNjN2JhOWFkYTZjYzc1OWI4YyBsZWdhY3ktdHJ1bmsKKzUwOTk2IGY3ZjEwYThiOTZlZTdkNjAxNGY3NjQ4N2RkN2UwMzk1Y2U1MDM3ZjUgbGVnYWN5LXRydW5rCis1MDk5NyA3ZjA0NzkzZmUxMzVlNWU4ODQ5NTdhNTc0ZjQ1ZTI1YTMzODQyOTkxIGxlZ2FjeS10cnVuaworNTA5OTggOTEwMTUxNTI0ZjVlZWIwZDMxNTExM2NhZjVjYTAxMGU2OGFhYjM1YSBsZWdhY3ktdHJ1bmsKKzUwOTk5IDY2MjgxNDg4ZTkwMjNhODIyZDY5N2FmOTVhNzllZWMyZWQ3MDIzODEgbGVnYWN5LXRydW5rCis1MTAwMCBiNzliNjhiODJhNDQ1YzMzMTFlMjU5MjBjODc1NTc3ZDhmNDlkNTQxIGxlZ2FjeS10cnVuaworNTEwMDEgODZlODFkZWZjMjg1NmU2MDIwODEwZjU4ZWU3NzQyN2EwZGU4YmQ5ZiBsZWdhY3ktdHJ1bmsKKzUxMDAyIDNiNzg5NTdjNzc5MTk5ODRiMDEzYmI5NmRiODA1MzU4NTEzOGFjMWIgbGVnYWN5LXRydW5rCis1MTAwMyBmM2UwODkxNWI4N2I0NDM1NjFiM2MzM2IxNDFhNjU0Y2QxOGNhMWYzIGxlZ2FjeS10cnVuaworNTEwMDQgODZjMzYxOGE0OWMzZjNhNTkyNDU4ZjVlZTliODQ3M2NkMWU5OTg1ZSBsZWdhY3ktdHJ1bmsKKzUxMDA1IDQ5NjZiMTc5NjNiNDFlN2U3ZTYwNjFlNGRlZTZlNDVkMGNhYTA0OWEgbGVnYWN5LXRydW5rCis1MTAwNiAzZGU4YTU4YWUwYjllOGUxMmRlZTI0MTNhYjRiNmZkYjk1ZWYzZDI4IGxlZ2FjeS10cnVuaworNTEwMDcgMzkzOGU2ZWZhNzkzZDZiMzE3NmU2NWMwMzg3MzAyM2U0MzQ3YzgyMyBsZWdhY3ktdHJ1bmsKKzUxMDA4IDMxNWE2NmQyMjQ3YTc5MWQzYjBjZjQwYTczMjU0NDI1NDUwODE4MzMgbGVnYWN5LXRydW5rCis1MTAwOSBmZjIyM2I5NWYyMDdlMDlkMzNiYzUwOGQ2ZTI0ZTRkYTJmYzg4MDNlIGJjYW5ub24tc2FuZGJveGluZworNTEwMTAgOWQ3YzQ1ZDBkMWJmN2VjMzY5ZmU3ODNjMTQ3Yjk5YTJjMmFkMDI5NyBiY2Fubm9uLXNhbmRib3hpbmcKKzUxMDExIGVlMmQ0NmFjMmY2ZTdiNWI5ZjE2ZTQ3Nzc3NTlkOWY4OTNhMzYwNDYgYmNhbm5vbi1zYW5kYm94aW5nCis1MTAxMiAxYzBjMTI4MzhlNjI1M2VkZjE1MTE4ODA4MWQzMTIyOTZlYjNmZWY4IGJjYW5ub24tc2FuZGJveGluZworNTEwMTMgODJiNjc1N2ZmZmY0NzZiNTYxNDU3NWU2MmYyZTliNGI3NDI1OTFiNiBsZWdhY3ktdHJ1bmsKKzUxMDE4IDkxY2E2ZWVhZWI0YWNjNTY0ZTBmYWFjMzllYTEwYjI3MzNiNGU1YjEgbGVnYWN5LXRydW5rCis1MTAyMCBkMzlhZWU2Y2RkMzJjZmFiZDFjYmRlYTJiNjE3N2UyZjFkNmRiYjc4IGxlZ2FjeS10cnVuaworNTEwMjEgNTNkMDU1MmE3YThjNTA3MTUxM2JiMTA2NzVlOTIwOTZhYzQ2YTUwZiBsZWdhY3ktdHJ1bmsKKzUxMDIyIDI5MTVjMDcyOWYwYThjZTZkMzE4YjMxMzk1NmMxZjUyYzRiY2IwMGYgYmNhbm5vbi1zYW5kYm94aW5nCis1MTAyMyA3ZTAzMTgzZWI3YTUyYTFjOTRiMGRjNTc1NDc4ZmUwNTBkOGFkODA2IGxlZ2FjeS10cnVuaworNTEwMjUgMTU2N2MwMWNjYTczZjlmNjg0ZTNiZjY2MGZiOWE5YjM2NmU0YTUxOCBsZWdhY3ktdHJ1bmsKKzUxMDI2IDQ2Mzc3YjA1ZTE4MTU4OTE1YjY0Nzg1ZTFhMGU3OTZjZDZhODFkN2UgYmNhbm5vbi1zYW5kYm94aW5nCis1MTAyNyAyZjIyMWJkZDlmNDRiOGY4YzkxMzdjNzAyZTYxMzRiNTliZjQ5ODFjIGxlZ2FjeS10cnVuaworNTEwMjggMjMyZDE1NmJlYjgyZmM2YWQ0MmUyODkzMDhlMGU3NmFmZjU5NWMzNyBsZWdhY3ktdHJ1bmsKKzUxMDI5IGQyMGI5YTJkOGVlNzMwMjA0YmEyYWRhN2YxNGQ5ZGZmZGVhZWEzOTEgYmNhbm5vbi1zYW5kYm94aW5nCis1MTAzMCBjZDgyZWJmYzY2YWZkNDY0Zjc0ZWZlMjJiODNiYjJhZWE4NWRhN2EzIGJjYW5ub24tc2FuZGJveGluZworNTEwMzEgYmQ1MGE0MmI3ZGYwZDBhNmVkZjEyNTFiMjczODJhYmVlMjdlMzZlNyBsZWdhY3ktdHJ1bmsKKzUxMDMyIDRmMTVhYmIxMjBkYzUxNjMyMzg1YjBlZDAyMTAxYzIxMTJlM2NmYmUgbGVnYWN5LXRydW5rCis1MTAzMyA3ZDZiOTcxNTgxODA1YTc1MGJlZjRmNWI0NTkyNTk5MDZkYjQ1ZDAwIGxlZ2FjeS10cnVuaworNTEwMzQgZmEyZGFjMzkyNmZmYzE1OWRhMTM5NmQwYTgwODA1MGU0YjBlMDgzYiBsZWdhY3ktdHJ1bmsKKzUxMDM1IDU5NzYyZTc5NjI4MTJmYTc4NjRlZDk0MjFmZWQ1MmE3YmEyNWVjOWMgbGVnYWN5LXRydW5rCis1MTAzNiAxMmZmZWQ5MjdhM2Q0NWQxOTUwYWRjNTBiNjlmZmI2NjA0NWMxNWQ2IGxlZ2FjeS10cnVuaworNTEwMzcgMzQ0MzY0YjQ5MjA4NTY4ODY5MzZlMWVhNWY4ZjRmOTAzZmYxZDU0ZSBsZWdhY3ktdHJ1bmsKKzUxMDM4IDAwMzUwY2JlMGE5ZTk0ODdjYjZmNjU4MDVhZjVkODllYjU2ODIxYzEgbGVnYWN5LXRydW5rCis1MTAzOSA4NWZkY2RmY2E4NWMxY2JhMWI5N2JlYzZmZTJjZmY4ZjI1YTMyOGM2IGxlZ2FjeS10cnVuaworNTEwNDAgNWY5ZmEwYjg2M2FlZTgwZjk5MjNmZWY1ZTA4ZTE0M2U0NjdiYTI4YyBsZWdhY3ktdHJ1bmsKKzUxMDQxIDhiOTMxNzRkNTAxYTRjYjliNGUwZGQ4MDFjMzdhNDAwNjg3ODUwYzEgbGVnYWN5LXRydW5rCis1MTA0MyAxZWFkNDEyMjFiZDg4MGVjMTlhZDEyNTliMjlmM2EwNTZhNGQ3ZDJiIGxlZ2FjeS10cnVuaworNTEwNDUgY2UxMGUzY2M3YWViZTg5ZjI0Yjc0NzhhNTA4YjcwOGMzNjAxMTc5ZiBsZWdhY3ktdHJ1bmsKKzUxMDQ2IDgyZjU2MjA3NjUyZjY5Y2FiMmE5YzIzMDY1NTY3ZWM0MDcxZWM0ZDggbGVnYWN5LXRydW5rCis1MTA0OSBjMGFiYjE4Mjk5YjQ0MmUxMTYwZDJmOTU4YmNlMThmNjY4NTBjYWE5IGxlZ2FjeS10cnVuaworNTEwNjUgY2RjZjJiY2FkNjI0ZWE4YmFjNjM2NTYzZGZiODE5MzAwNDc0MGE3YSBiY2Fubm9uLXNhbmRib3hpbmcKKzUxMDY2IGMzODk4YTczYjM4NjA3ODc1MTM3ZjNmMzdkYTlkNzFiYmQ3Mjg4OGYgbGVnYWN5LXRydW5rCis1MTA3OSBlYzRmMzVkMmE2OTNjZTE5NTAyZjA2ZDZhYjRmNGM1YjVkMThmZWYzIGxlZ2FjeS10cnVuaworNTEwODAgYjkwYThiMDM5NWJkNDNmZDE5Mzg0MjQ1MWQwYzQ5NTczYjRkNzE2NiBsZWdhY3ktdHJ1bmsKKzUxMDgxIDhlZjNmOGNmOTBlMTIxYTBiNDBhMGUzZmI3YzMwODZiYzBhOTE0NDAgbGVnYWN5LXRydW5rCis1MTA4MiA3NWJmNzczNjdkYTMyMGIxMjU5Mzk4OWZlOTFlYmVjZjdlYmIyNGQ5IGxlZ2FjeS10cnVuaworNTEwODMgODI5NmZiOTZjYzE4NGY2NGEwMDdmYTQ1ZjU2ZjgwZWI3Nzk3MTgwZCByZWxlYXNlMjQtbWFpbnQKKzUxMDg0IDU1ZjgzMDE4MzUzMjZlNmNiYWJmZjJhOGY4Nzc3MzM5YzBhMjAxNTcgbGVnYWN5LXRydW5rCis1MTA4NSA4NDk3NGM2NzY5MDMxZDBmNTdhZmNlNTgxODdmNzI1YjdiODQ0MGFhIGxlZ2FjeS10cnVuaworNTEwODcgNzdjZjE4YjhiMWNlMTMzMDBkYzlkMWY4NzRjNThmMDQ3NzNlYjM0YyBsZWdhY3ktdHJ1bmsKKzUxMTA0IDEwMDRhMTZiMGYwOTFiYjc4M2YyODQxOTUxOTEyYjBmYmVmYTdjYTQgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MTEwOSBlYjIzZDA5NmQ2OTQ2ODk1MTk0NzZmNmFjY2NhOGFiNmQxMjAyM2ZlIGxlZ2FjeS10cnVuaworNTExMTAgYTljNzQyZDZjODg4ZWUzMzUzMWJhZGJmZWU5ZmQ0ZDczMTcxZjEyYyBsZWdhY3ktdHJ1bmsKKzUxMTExIDAyMzgxNjZmMDdiNzAzNWRjNjZhMjQwZjEyM2I2NzVkNmQ1M2FkMzMgbGVnYWN5LXRydW5rCis1MTExMiA0MDU4NWZiMzg3YmJhYTgyMzk5MDRhNjI3YTNhZjU0OWRlNWU4NmE1IGxlZ2FjeS10cnVuaworNTExMTMgNDY1YTA3OGQyY2E2YjdhMzZkODkxM2YzNDQ4MDMyNjI4NGY3ZmYzMiBsZWdhY3ktdHJ1bmsKKzUxMTE0IGFhMGNjNzU1MDc0ZWI4OTEwMWMzNmQ1YTUwMDRhN2MwNDY0MzZhN2IgbGVnYWN5LXRydW5rCis1MTExNSBlZmE4MDYzMzMwOWRhODc0NWMyM2RiY2M2Yzc2MzEzYmE0YzQ5NzEzIGxlZ2FjeS10cnVuaworNTExMTYgNjU2N2MzMmFiODgxNTUwZTBlMGMxNTIzYjJkMGJkZTU5ZDM0MjZlZCBsZWdhY3ktdHJ1bmsKKzUxMTE3IDk5OWE0OTE0ZDUzY2I0MWY3ZGRmZjM0MGJlOTBlZjYxNWM2YzMzZWYgcmVsZWFzZTI0LW1haW50Cis1MTExOCBmZjRiMTU3ODAzOTY4MzNmNWE5NGRlOWE0NDQwYzc0OTAwZWZlNzdiIGxlZ2FjeS10cnVuaworNTExMTkgOWNiNDU2NWU2MGNhYjQzMjExYWM0NWJiMGRlNTRiYTAyZDVhZjhiMCBsZWdhY3ktdHJ1bmsKKzUxMTIzIGZlNDRkY2JlMTNmMmMyNzdiYWJiMmE0OTYwZWRhMjBlODA2MjY1ZTEgbGVnYWN5LXRydW5rCis1MTEyNiAzYmZlZjNkYjMyYjM5MmE0ZjYwYjBmMWYzOWNmNWIyZDVhOGIxMzM1IGxlZ2FjeS10cnVuaworNTExMjcgNDA0MTVkZjViYTlkZTVlYjY3NGM3NGRmN2FhM2IyNmE0ZTQ4ZDg0YSByZWxlYXNlMjQtbWFpbnQKKzUxMTI4IGI5MGZlNGFlMzAwODM0NjJkNzlmZTI4NmVhZjRhYTlmM2JkYWI4YTAgbGVnYWN5LXRydW5rCis1MTEyOSA1MDA5ZGU1MDRmOTI0MDIxYTQwMzJlZDk2N2U4ZjRmZTY1ZTk4NWJhIGxlZ2FjeS10cnVuaworNTExMzAgMjE0ZTRhNDM4NGYxMmIxMmY0MmFhYmE0NTE4ZDA3Yzk1MjNhZTk4OSByZWxlYXNlMjQtbWFpbnQKKzUxMTMxIDJlNjMwYjJkNWI0NDYwZWQ5YTY2MmM4YTA4ZDMxMDkxODkwNGZlMTUgbGVnYWN5LXRydW5rCis1MTEzMiA3MmEzZjcyM2VmZDE2OTcyMDQ5NmI3YTIzNTM0YzVjZTNmNzBiMzk3IHJlbGVhc2UyNC1tYWludAorNTExMzMgZmMxMDFjYzM1NGE3OWZiNjUwZGE1YjE1OWIyODdhOTNiODBiMWY5YyBsZWdhY3ktdHJ1bmsKKzUxMTM0IGI3ZWFiMWMxOGU5ZDM3YmM3ZTM4M2ZlMTgyYjdkMTMxODhlNjkwMjUgbGVnYWN5LXRydW5rCis1MTEzNSA1OTQzMjk2YTUxODIxNWQ3MDAzNjdiNTIyY2FmZjFlMGIwM2U3NzMwIHJlbGVhc2UyNC1tYWludAorNTExMzYgYjUwMjY4ZjQ2ZmZmOWE3NjBmMzA1ZTkxNzRlZDg0ZGNiN2Q4ZDIwMiByZWxlYXNlMjQtbWFpbnQKKzUxMTM3IDMzNTA0NzRmMzQzM2M5OWQyZGUwYmY0MDEyZTBmN2UwZjY4MDQ3NzMgbGVnYWN5LXRydW5rCis1MTEzOCBmNWE3ZjRkZDkzZTBkODc1ZDhhNjM1YjQyYWU3NjVhOWQwNzg1MWRlIGxlZ2FjeS10cnVuaworNTExMzkgOTk3Nzg4ZGU4NjY3MzMwY2U5ZjIyYTE2ZTkwNzlmMWM0ZjAzZWE4MyBsZWdhY3ktdHJ1bmsKKzUxMTQwIDI0ODVlZjRjNWQ0OWQyYmUwOWI2MzMyZjZiZmY1Mjc3N2QzNjEwNjAgbGVnYWN5LXRydW5rCis1MTE0MSAwYmM2Y2ZiNmI1ZmIyMWFkMTU2OGNlYjgzNGRmYzRjMDJkZTQ5NDFhIHJlbGVhc2UyNC1tYWludAorNTExNDcgOWVkNTYwYjM1MTM5ODBkNGM2NDNjYmU1MzdkZDVlMDlkODkyODg1OSBsZWdhY3ktdHJ1bmsKKzUxMTQ4IDI5MGM1ODJhMjJkMDQzOTgyMzYxNjg1OGY3Yzk1ZWI5ZDc4NWM3MjUgbGVnYWN5LXRydW5rCis1MTE0OSBiNjdmNTIyZDc2ZDc4ZDgwMDI5ZTU1OGM3MzM2ZTkxZmY0OGU5Njg0IGxlZ2FjeS10cnVuaworNTExNTAgMTRjNzY5NDg5NTNkNWM1ZjdjNjRkMjBlMzFhNGEzNjJjOTcxYjYxMyBsZWdhY3ktdHJ1bmsKKzUxMTUxIDJmMDMxNjQ4ZTU4Nzg0NDk3ZWUyNWFhMjE5MTFiMDNlNmRjMmQxNzYgbGVnYWN5LXRydW5rCis1MTE1MiBkMTU0MjYwZjQ2ZThmN2Q3NzdkOWVkYTRkZjMzNTI0NWJlYzBhNjQyIHJlbGVhc2UyNC1tYWludAorNTExNTMgNTZjMGUyZjU5NmU3NmYxZDMwZjMzZjAxYmRjMzYyOTE4YzBjMGEyOCBsZWdhY3ktdHJ1bmsKKzUxMTU0IDhkYzZiZTNlMTFlMDBhN2M3NmUxZWI4NTUzODIyYWU5NjBiOGI0MGUgcmVsZWFzZTI0LW1haW50Cis1MTE1NSBkZTQ5N2M0MWU5YWRlZmM4YjZkNDRjZDExY2VlZjA1YTk2MzYxZmM3IGxlZ2FjeS10cnVuaworNTExNTYgNTY5MTYyNDI2OWE1YTYwNjc2ZmJhNWM1ZjY4NDAwYzE3ZjJkZmFkYiBsZWdhY3ktdHJ1bmsKKzUxMTU4IDlkMDg5YWE1OGUyZjRiNWNlNGNhZDljNGY1MWQzOTFjM2MyYWI2NWMgbGVnYWN5LXRydW5rCis1MTE1OSA4MDIyOTI3YzE3YTg0NjQ2ODVkZTUyZmI2NGFmMGIzMjM1NDViOTg0IHJlbGVhc2UyNC1tYWludAorNTExNjAgNWI5NjkyZjY2MjlmNDA3YWRlOTRjOWI3ODgzZWFmMGM4ZjA2MDFlZiBsZWdhY3ktdHJ1bmsKKzUxMTY4IDZmNzc1MThiNjM3ZGIzYjhmZjlmZTA5MWIzZWYzOWI1Nzk5NjA4NjMgbGVnYWN5LXRydW5rCis1MTE2OSBiOTViOWY0MTU3YTgyMjEzMzAxMjE4ZjU1ZDRmZGI3NjM1MDI5OGRlIGxlZ2FjeS10cnVuaworNTExNzAgNWMzZDQ5Mzg1ODE2ZDcwNmY3YTIyZDk3YTUwODg4YWZiOWFjZWJlNyBsZWdhY3ktdHJ1bmsKKzUxMTcxIDE5OTM4OGI0NmM4M2EwMGJlZDJmMThmZjZiMTBmZmMwYjk2NDJiZWYgbGVnYWN5LXRydW5rCis1MTE3MiA5YTgwODFjZjRhNzBkYWI0NmJhMGYxMDYzMTBjYzIxOTBjYmI5ZDM3IGxlZ2FjeS10cnVuaworNTExNzMgMGYzYWQ1YjkzNmE4NTcyYmZlN2MwN2Q4ZTM3NTM4NjczZjIyODc4NCBsZWdhY3ktdHJ1bmsKKzUxMTc4IDc0ZDIzY2QwNDQyMTA0ZmY5NzViODVlMWI3NGY1ZTRlYTIzZDZlMmIgbGVnYWN5LXRydW5rCis1MTE4MCA3ZDZiMmUwNGU0Mzk1NDA2MDBlOTg1OTBhMjgzMWFkODU5ZjI4ODEwIGxlZ2FjeS10cnVuaworNTExODEgZmVlZTY1ODIwMTFmMTc3NmE2ZTFkZTg5NWZiMzJiM2VlOTBkN2NhNSBsZWdhY3ktdHJ1bmsKKzUxMTgyIDkyMjJkMGRhYWIzYzZhZWRlYjAxYTk0NzUxNDcyNTI3Zjg2MTA1NGIgbGVnYWN5LXRydW5rCis1MTE4MyAxNTZiMjhmMGYyZDM1YWMwMGU4MmM2M2QyYTE0MDE4MmM5YzdlYzc2IGxlZ2FjeS10cnVuaworNTExODQgZGRlYTRkMzdjODNjYTQ1MWMzMDc5Y2FkODU1ZDA0ZTU4OWI4MzFlOSBsZWdhY3ktdHJ1bmsKKzUxMTg1IGI4ZTM3ZTAyNjhmMmNhYzA0MmQ5MmQxNjIwMTZhNDNjMTM4ZjQ4NjEgbGVnYWN5LXRydW5rCis1MTE4NiAyNmE2YmVkZDE3ZTIxZGIxMDY5NzM2ZGUzMjUyNTY2YzU2ZGUzY2NkIGxlZ2FjeS10cnVuaworNTExODcgM2MyYmY3OTUyNmJlODk4MTRjZDAyMTcxMDQwMzQxODc4YmJkM2Y1OCBsZWdhY3ktdHJ1bmsKKzUxMTg5IGQ4ZmE4MTBjZmQ1NGRmZDhmMjdlZWEzYmMyMmExNTE4ZDAzYjAxYzAgbGVnYWN5LXRydW5rCis1MTE5MCA5ZjA4NTE2YTRkMGM5ZTk5ZDdmNGJkNGU0NzkyMjEzZTIyYTg4M2ExIGxlZ2FjeS10cnVuaworNTExOTEgZWFkNDhhODIyMjk1YzgzZTFmMWU4MTQxYzc5YmJlYWFhYzI3MGM1YyBsZWdhY3ktdHJ1bmsKKzUxMTkyIGU1NWY2ZDcyMjQwNGZhOTJiMmE0M2M3MmZmMjEzMjdkN2E0NzE0YjIgbGVnYWN5LXRydW5rCis1MTE5NCA5YjMyNjBkODM1NTg3OTVkMWExZDMxZGI5NTg4MWI2MjY3ZWVjZWFkIGxlZ2FjeS10cnVuaworNTExOTUgZGU5ZTFhNWRjYTkzNjYxYTcwMTBlNzc2MDExODdiNzY5ZDk3M2I5OCBsZWdhY3ktdHJ1bmsKKzUxMTk2IDhlZDYyZGIxOTA1YzRkM2UzOGI3NWFmNzFiNWQ5MTM5NTNmMTc3ZmUgbGVnYWN5LXRydW5rCis1MTE5NyAyYWNhNGYwNDAwMTJjZWIwOGFjZjA1Y2U5YTdkYzJiMzg2NTIzNzM5IGxlZ2FjeS10cnVuaworNTExOTggYmUxMDdiMDRjMjUyNWI2YjgxMTJhMjFiYTY1NDEyZGYzMDAwMDUwOSBsZWdhY3ktdHJ1bmsKKzUxMTk5IDZhYWY1NWY0ZDdhM2I2ZDM1ZmQ5MTM3MDUzZDM5NWJhYTg0MjQ5NTEgbGVnYWN5LXRydW5rCis1MTIwMiA2YWI0YzM5ZmQ3YTM4M2ZkOWQ5NDJmY2Q4ZjliN2JlODg0NTg2MDdkIGxlZ2FjeS10cnVuaworNTEyMDQgODY0MTcyNTE1ZWU3NmEzYjQ1ZGYxNDhmNjY4MmU5YzM5MzAzYjhmNCByZWxlYXNlMjQtbWFpbnQKKzUxMjA1IDQ4ZmQzODg3MzQ2MzZkYTFhZDAyM2JlODg0YzM0NGFhYTYxM2MzNDIgbGVnYWN5LXRydW5rCis1MTIwNiAxMDg3ZGYwMGE2ZTg3YjkxZDY2Nzg3MjUyY2Q1YTZiZGUwMGVhYzAxIGxlZ2FjeS10cnVuaworNTEyMDcgZTc3ODc1N2QzMzMwNzIwMTQ1ZTc0ZmRjNWRiMDNlMmE5NWZhYTAwNSByZWxlYXNlMjQtbWFpbnQKKzUxMjA4IDc3OTBjZDBjYWJkMDRjOWQxMWQ3ZTg1NmZiMzY1ZTdjYzgwNGViOTQgcmVsZWFzZTI0LW1haW50Cis1MTIxMSA2NTRjMzgwY2Y4YjlmMDc5MTU2ZTMyMTExZDE2MmFkODAzYzg5MzE5IHAzeWsKKzUxMjEyIGY2OWJlM2M2YTJkNDYzNjQ5YmM1Njg0NjkyODgyOTQ4YTA2Yzk0NTYgbGVnYWN5LXRydW5rCis1MTIxNSBiOTk1ZTI3NjBkYTQ3MmMzYjU5MGQzNjkzYjhmZDY1NjkxNDczNGUyIGxlZ2FjeS10cnVuaworNTEyMTggZTExY2FhZDdlMDI5ZGM5MGI4YTdkM2I4Njk0YzgyZDk0NzUxZDgzNCBsZWdhY3ktdHJ1bmsKKzUxMjE5IDlmMzkwODgyYTJjM2E1MWUwODdkMWM5MTU4ZDkyMDg3ODk0YzZhZTAgbGVnYWN5LXRydW5rCis1MTIyMCA3MWIwYWM4MGExMzVlM2UyYmFjYTM2MTJiMjMxYjc2ZTY5Y2VjNzk2IGxlZ2FjeS10cnVuaworNTEyMjEgMjE3OWQ5ZjE0Mjc4MTczYmU5NWRhYjNkZTBiYWVjNzA1ZTdiN2I2MyBsZWdhY3ktdHJ1bmsKKzUxMjIyIDg0MmJkNjEzNGU5ZDIxYTAxM2RhN2Y1OTEzYzViNmU1NTg4MTJiZmMgbGVnYWN5LXRydW5rCis1MTIyMyBhODBkZjUzMzA2ZjBkY2ZmNzlkYzE4ZDE5NmFiZGI4ODYzOTdkZWM3IGxlZ2FjeS10cnVuaworNTEyMjQgNmQ1MzZkNDNjMWEwNjU0YzQ2NjQxOTkzNDBlYWUzYjUzZjAxYTcwZCBsZWdhY3ktdHJ1bmsKKzUxMjI1IDgxYzZiMGVkMzE4OGRkY2MyOWQyMWUwN2NmNjM2ZGY3NGYyMTZkMDggbGVnYWN5LXRydW5rCis1MTIyNiAyN2Y5YjRmZWUxNGY3YjY4MDhjN2FmMjZhMDRmYjJiZWQ5Y2Y2NzFhIGxlZ2FjeS10cnVuaworNTEyMjcgOWExMjg4ZDgyMDBmOGNiM2NlMjIwYTZmMmQ3OWQ4OGFhMmQyNzY0MiBsZWdhY3ktdHJ1bmsKKzUxMjI4IGVkNjU3NjVlYjY3OWI1MDMzMTY0ZjBiNGNiMTQyYWI5YTUyMDYzMDYgbGVnYWN5LXRydW5rCis1MTIyOSA2YThmMDE2NjBhM2IyZGU0ZjA4YmIyMmM1M2M2MzJiNzJiZTM0ODY5IGxlZ2FjeS10cnVuaworNTEyMzAgOGI5MWZmNjk4ZjRmZjJmM2RmNTU2YmU1MjFkMTIwMWJkNjRkOGM4YyBsZWdhY3ktdHJ1bmsKKzUxMjMxIGRlYjc0OGYzM2MxZGI1MmViMDg0ZjJiYWUzZWMzZDFjZGM0YjhkN2YgbGVnYWN5LXRydW5rCis1MTIzMiBjZTExYzZjMTkzOWRiNjg0ZjMwNjdlYTY0NGI2ZDQ3YmM5MWU0NWRhIGxlZ2FjeS10cnVuaworNTEyMzMgMTUxMDg2NmM5MjBlYjgyZTYyNzczYjViMDhiNzUxYzE4ODFjM2U1MyBsZWdhY3ktdHJ1bmsKKzUxMjM0IDJkYmFkNTNkZTJiMTI3MTdjMDc5MGJjNjQxYjAzNDdiYmZlZjFhNTEgbGVnYWN5LXRydW5rCis1MTIzNSA2OGJlZDUzNDg0NTQwMjNjY2ViYjQwMmY1YjM3MDVjZTgyOTM3YTFlIGxlZ2FjeS10cnVuaworNTEyMzYgNmNhZmRjODFjZmRlODY5OGU2YjgzZTY4MmZhMjRhMjY5OGY2MjFmOCBsZWdhY3ktdHJ1bmsKKzUxMjM4IDQ4ZjFkYmM1Nzg0NTA2MWZhYTUwYTVjMjMyZWM1M2FiMTY1MmUzNjQgbGVnYWN5LXRydW5rCis1MTI0MCBlY2U5N2NmZTYwODM3YjE3ODZlZGY5MzcyZjllMmQ5YzdmMmNhMTBjIGxlZ2FjeS10cnVuaworNTEyNDUgYzdmZjAyYzE1NTlmZDg2NmNjMDg3YWFjMDY1ODQ5YjFjY2EwM2ZiZiBsZWdhY3ktdHJ1bmsKKzUxMjQ2IDNiZTY2MjczMjNiOWQzYTA1ZWE3MGUxM2Q4ZjZjMWEyYTIyZTFkZWIgbGVnYWN5LXRydW5rCis1MTI0NyA1NzQ4MjE3NmUxMDExNjYzZTNmYzUwOTIzYzQ0YjM4OGRkOGJmOWI4IGxlZ2FjeS10cnVuaworNTEyNDggNzFiYWEwNjc2N2RkYzI5ZjdkNjkxMWZhOWM2ZTU0NWZlYTc2NzBiOSBsZWdhY3ktdHJ1bmsKKzUxMjUwIGRhZWRhYWNmN2UxMTBhM2NkMWEyMzY2ODkwMTQ5YjczMmIxYzFjY2MgbGVnYWN5LXRydW5rCis1MTI1MSA1MzFiMzY0YmJjMGUwZDgxNWNmZWVjMjJmMDllMjgxNjNjNDdkMThlIGxlZ2FjeS10cnVuaworNTEyNTIgODE1OGI0ZTBjN2I5YjVjM2I3ZDFiOTkwYTczNDlmZjg3ZDBkMWRmZSBsZWdhY3ktdHJ1bmsKKzUxMjUzIGJjNzRhZmI4ZTRlZjYxZDQ4YmQ4ZjE5ZGI1NjZmZDYyOWI4ZTcyNDEgbGVnYWN5LXRydW5rCis1MTI1NCAyNGQyY2MzMzAwMGNiMTg1ZjUxZWYzNWUzYWQ0ZDEzYzdmMDg5NjIwIGxlZ2FjeS10cnVuaworNTEyNTUgMjQ5YTU5YWNiNmVmY2YwMjA0ZjA5NjllNzZmNTY1NmQ0YjNkYjRjMSBsZWdhY3ktdHJ1bmsKKzUxMjU2IDcxMjMxYmM0ODYyMmUzNmRlZTM2MDExN2ZjMjEyNzk1ZDQwOTQzYmEgbGVnYWN5LXRydW5rCis1MTI1OCAwMzU2ZGQ5Y2MyNzQzOTYxODZjNTg1M2FkYmI3NmUxNzZhNDdmMGM0IGxlZ2FjeS10cnVuaworNTEyNTkgMzE3NjA1ZjJjZjZmOTllMWQxNmQ1YjA5ZDdmZWU2NGNhMjI1NDIxOSBsZWdhY3ktdHJ1bmsKKzUxMjYwIGQ1MjMxZWM2ZGFjMzk5ZDMzMGQzOWIyM2EyYmQ1Nzg4YjFkNjFmZDUgcmVsZWFzZTI0LW1haW50Cis1MTI2MSBlNzcwMWIwNWZkOWUyM2ZkMjQwNDc0ZGY5OTI1ZjcwNjcyMDY0YmZjIGxlZ2FjeS10cnVuaworNTEyNjIgZGY5NDc4YmUwNjI3OWEwNDdhMWRhM2E2NTU5NzZlNWFhZDI4MjQzZiBsZWdhY3ktdHJ1bmsKKzUxMjYzIDhjMTZjYmVmNzkzMjYzNTcwMjBlYWVlNmNkZjFmNjExMWIwMjExMTcgbGVnYWN5LXRydW5rCis1MTI2NCBhYjg1MzljMDdiMWIzYzZlOTI4M2I1ZThlNjc5MWVhMWZlNmUzYmM5IGxlZ2FjeS10cnVuaworNTEyNjUgYzBhNThhODU1YWMwZTM4MTM2YTU4OGU3NTE4NmQ5YzMwMDEzNDAxMSBsZWdhY3ktdHJ1bmsKKzUxMjY2IDQyMTgyNmM5NDEwNGYxM2FmZjc0YzkwN2QxNWU4Y2Q1NWYxZjMwOTMgbGVnYWN5LXRydW5rCis1MTI3NCBhNmE2ZGZmMTc5MzU2ZTI5ODFmYjU1MmYzOTJlNDQ0ZWM1Mzc0MTQxIGxlZ2FjeS10cnVuaworNTEyNzYgNjM1YjA5YjFmNTQyZTI5MTc1Mjk3NmUzZDk3ZjEyZWMwYmZlNjZmMiBsZWdhY3ktdHJ1bmsKKzUxMjc3IGE1NTM2OWUyM2YwNjk0YTVlNzkzM2UyMDAwZWFhM2ZiNmNlMTdkNjMgbGVnYWN5LXRydW5rCis1MTI3OCA0ZTViODNiYTdjMmE2YWY5Y2EwMWJjZjgzNTMyNTBjYjE1ZTY0NWY4IGxlZ2FjeS10cnVuaworNTEyNzkgNjRmYjY4ZGNhODk2NDhiNTlkMDE2MzcxODMxZWE4MjAzMjBiOTYzNiBsZWdhY3ktdHJ1bmsKKzUxMjgwIDIzMTJlMTc4YjM0ZDk3OTg4Y2ZkNmU1YmRkNjU4NGQ4OWM4M2UxYjAgbGVnYWN5LXRydW5rCis1MTI4MSAyNTRhMTg2OTM3YTliNDk5ZTk3MTgyZTM3YzdiZWNiNDdkNzkzY2NlIGxlZ2FjeS10cnVuaworNTEyODIgMTYwYjgzYzcxZDdhMGFjOTYwN2I4YzlhMDk2MzY2NDUzNTg3YWUyMSBsZWdhY3ktdHJ1bmsKKzUxMjgzIGE5NTA5MDI4MTAzMjEyMWEwMDJlNzZmNDFhNmJhNTdhZGI3MjJiYWYgbGVnYWN5LXRydW5rCis1MTI4NCAxNGVjOWNmZDk3NjAwZTI2MTQ2NjY0MTFmYzNhZDZiN2Y2NTYwNjc5IGxlZ2FjeS10cnVuaworNTEyODUgMzUyZmZlNzdiNzFkZDBlN2NhOGY2NjdhOWU2YTIwODZkYWEzYjA2MCBsZWdhY3ktdHJ1bmsKKzUxMjg2IGVhMWY4YTExYTcyYjlhMmEwMDBhMjU0NGY4N2MxMWY3YzZlMzQwMTUgcmVsZWFzZTI0LW1haW50Cis1MTI4NyA5ZDY0YmQ3NDgzMjBhZGI0MGM3ZTAzYmFiOTA0ZmMwODU0YWFmMDliIGxlZ2FjeS10cnVuaworNTEyODggY2Q2N2UxMTFlMWI4NWI3ZTE1ZWIxYmU0ZjU5ZDE5NDczMzk2YTFjNSByZWxlYXNlMjQtbWFpbnQKKzUxMjg5IDIwN2U0ODdmNDI1ZGZlNDFjNjE5OTA5ZTZhZDhkZjA5ZTE1NWU5MzcgbGVnYWN5LXRydW5rCis1MTI5MCBlOGM0NmNjOTlkZjVlZGQyYjUzMjMzYTg4MzE0MmY5OGY1ZDJlZTM3IGxlZ2FjeS10cnVuaworNTEyOTEgNzk5YmNmMGNjYmZkMzEzZmY1OTcyN2I2YWE5N2NlMGU2YWRjYmY3MCBsZWdhY3ktdHJ1bmsKKzUxMjkyIDE0OWRlNzI1Njg2NGNmOTIwMGQ5NzIzMmI2ZjIzZGM5ZDVkNzhkOTEgbGVnYWN5LXRydW5rCis1MTI5MyA4NDY3OGYwNzUwYjg0NDgwNDcwOGU0ZjBkNzRmZDIxZDVkZDRhOWM5IGxlZ2FjeS10cnVuaworNTEyOTUgZTkwZTdlNzY4Y2IzNTI3YWJmMjBiNGIxMTg3ZDQ4NjFmNzc0MWY0OCBsZWdhY3ktdHJ1bmsKKzUxMjk2IGU2ZmM0Zjk5YTYxYmUxOWFhYjdhM2ViYzFkOTJjMWJmMzE4ZWFlOWQgbGVnYWN5LXRydW5rCis1MTI5OCA0ZjkwYzFkNTMwZDk1YzljOTA2ODI5OGQwOWIyMWM4YTY4Y2U1ZWI3IGxlZ2FjeS10cnVuaworNTEzMDAgNjRiMzMwNjBlZjA5ZDVhNDcwZjQyNjcwYTUzNjcxMzAwNmM5ZDRjZCBsZWdhY3ktdHJ1bmsKKzUxMzAxIGJmNWJhZTFmMDBhZDQ4NWU0MzIwZTI5NTU4NDNhYTEwODY4MWJiMGIgYmNhbm5vbi1vYmpjYXAKKzUxMzAyIGJlOTBmYTdhYWNkYTc5Y2M3M2RkZGRmYzNhYmEyMDk4OWUyOTM3NWYgYmNhbm5vbi1vYmpjYXAKKzUxMzAzIDk1ZjY1NjY5MGEwMDA4ODljYjc0NDRiOGFjN2MzNDgwMTBmNzFhZTcgbGVnYWN5LXRydW5rCis1MTMwNCAyMDdlNzdjMTQzMzA2NGI2Y2NlMjcxZWEwNmE2NjQzODM5OTY2ZjFkIGxlZ2FjeS10cnVuaworNTEzMDUgOTA5N2VjZmViMzQ1MGMwM2I1YTBhNDg1ZjNiOWU3YzZhMDY3MjBmMSBsZWdhY3ktdHJ1bmsKKzUxMzA2IDZlN2IzZGQ1OGY5ODcxMDNiYzc1Y2YxNjQwMDk3ZTcyZTYzNDZhNGMgbGVnYWN5LXRydW5rCis1MTMwNyA5MTMzMDc2YzBiZjk3MWU5NmJlZGMyZTRlODk1OGRmOTNjYjkyNjZlIGxlZ2FjeS10cnVuaworNTEzMDggMmRmZTFjNjI0Mzk3YTRkYTE2MjY2OTQ1MjgwMWExYTY4OTkxZTkwOCBsZWdhY3ktdHJ1bmsKKzUxMzA5IDM3MWI5Y2QzYWYxNTYwMjk1ZDAzZGM1N2VlNDRlMjJjODVmYTZmYTEgbGVnYWN5LXRydW5rCis1MTMxMCA3OThiZWNhYjM5MDNjNGFjOWVlNDI5MDliYTc3OTg2NDc5MTlmODdkIGxlZ2FjeS10cnVuaworNTEzMTEgMjRjYWIyMjhiMDM5NmI3MDAyNWNiOTczOTQyNGQ3NjQzMDM0M2Q5ZCBsZWdhY3ktdHJ1bmsKKzUxMzEyIGI1MDczYjQ4YzkyNWYxYTk3NjMwMzYyM2I0N2UyNDJlZjczODEzNWEgbGVnYWN5LXRydW5rCis1MTMxMyBkYTRiZTA0MDhiNjI1NzI5NmE2ODc0ZGZlNWUxMmI1ZmYzNGExNzNkIGxlZ2FjeS10cnVuaworNTEzMTQgYTI3YmQ1MGViMGZkODdiMGNlMzkwNmJmYjRlNTkwNjI3ZDhmZGNiMSBsZWdhY3ktdHJ1bmsKKzUxMzE1IGM4Y2UzOTk0NWRmNWY4NzU3OWIwYjY5YzIzM2UwZGFkMGQ0M2RhNmEgbGVnYWN5LXRydW5rCis1MTMxNiBhNWQwZjlmYmNiZjRiODI0MjVkMDI1MGNkMDU5M2VmMWY3OWFmNTQ0IGxlZ2FjeS10cnVuaworNTEzMTcgZDIzYjY2N2YwNGRhMmJlMWU2YzE3NzZkZWFlYTIxNTRhYTU2NGNjMiBsZWdhY3ktdHJ1bmsKKzUxMzE4IDRiYjM0ZWI0ODczNjc0NzBkNGNmMjZkMmU5MjM3YWE1ZTliOWM1ZWUgbGVnYWN5LXRydW5rCis1MTMxOSAxMzU4NDA0ZDZkZDllZTk0NTJmY2MyOTQ4ZmMxYTliN2MzYWNhZGYzIGxlZ2FjeS10cnVuaworNTEzMjAgZmZlN2QzYWIzNWE4MzcwZDE2MzAwMzIyMjJjNDkwNDI3N2IyOTY4YSBsZWdhY3ktdHJ1bmsKKzUxMzIxIGZlODBiYjEwMmFiNmQ1MWUwZjk0ZWZlMDVlZTQ1MjEyODQxYTZmOGMgbGVnYWN5LXRydW5rCis1MTMyMiBkODIyMTg1NTQ4OTcxYWI3ZjgwODMzMzI2MTUzODc5MDNiNzdhZjUxIGxlZ2FjeS10cnVuaworNTEzMjQgZWRkODNmMTYyNDUzYWEzMDg4OGE2NTdlNDMyYmE2ZjI0MGZhNzk1OSBsZWdhY3ktdHJ1bmsKKzUxMzI4IGFhZmUxYWQ3M2VkNzQ5YmZmYTYzZmVhOGJiMmM3ZjVhMjI4ZjNmNDcgbGVnYWN5LXRydW5rCis1MTMyOSBkOTY2MGY1MWIwNTZiNzRmNzU0YmVkYTJkMTc1NDQ1OGZhNzMzNzhjIGxlZ2FjeS10cnVuaworNTEzMzAgYTZhZmUwZWRhNzExZDk5NmI3MjZhNTQ4YzA1NzkzZWM1NWI2ZThlYiBsZWdhY3ktdHJ1bmsKKzUxMzMzIDJkYzY0ZDU3MGU4ZDdhNDQ5OGFiODUwMTA4Yzg1NzA5YzI3NmRmOTMgcmVsZWFzZTI1LW1haW50Cis1MTMzNCBhMzU4YWYyMWE1NGE5YmQzOWY1MDZkNzI5MWRmMzQzODc5ZDE3YTgwIHJlbGVhc2UyNS1tYWludAorNTEzMzUgOGU4OGVjYmQ0MDhiZmM5Y2QwYmZkMzU2MWQ3NmRkZWZhNGY3ZmY0OCBwM3lrCis1MTMzNiA4ZjViOTk4MmJlYmEwNDhiNGJlNTZiMDZiODdkYmYxM2RmM2M2ODk4IHAzeWsKKzUxMzM3IGU0YTY0MjljMTIxNGVkZTkxMWNhYTU1ZjBkODA2MDA1ODQ2OWMwM2YgcDN5aworNTEzMzggODQxZTBjODZlMDBlNDIzZjgxNzA5MmUyZmY1Y2RhZmE0YjgxMDE0MSBwM3lrCis1MTMzOSBjYjY3M2VkNTA3YTc5NDAyNWJlYjRhMzdhZjg3ZGVmMTZkZDM4MGFjIHAzeWsKKzUxMzQwIGIyZmUzNmJhYzNhMTY0NGUyNWJkNWQ4NmE4ZDE0MTU3ZDU3MzJiYWUgcmVsZWFzZTI1LW1haW50Cis1MTM0MSAxYTY4OWJlMjczMjk3MzI0YzNmYTNkZDVkMGI4MDk5ZmE1MGNlOWU2IHJlbGVhc2UyNS1tYWludAorNTEzNDIgZWRiMTYyMTAwOTc5Yjg3OTI3YmRmZWQxNThjZWJiOTY0NGUwNTdiZSBsZWdhY3ktdHJ1bmsKKzUxMzQzIDliYzBiYzBhZDFiZmU2YzkwOTZlN2IxY2MyZjQ3OGNhOWEyMmM1ODMgcDN5aworNTEzNDQgMDEwMzQwMThlOGIyZjgwZDhmZDVjODI5ODhkMjM4MmFhM2RmYjMwYiBwM3lrCis1MTM0NSA0YWJiNDZkZDJiNjA3ZjllYWE5ZGFkNTY3NmVhYzg5Mzc2Njk0NDdkIHAzeWsKKzUxMzQ2IDFlZGRlMjM0OWY3ODQ2NmZiYzAwOWM0MTcyMzg2NzNjMjgyODdkZWIgcDN5aworNTEzNDcgZjY4MjY5ZWQ0NjFlNWQ2MjA5OGEzMjk1MTdmNTg5OGU5NTU2MGQ1NCBwM3lrCis1MTM0OCA2N2U0NTcwNGMwN2VhNWEwNGFmMGU3YjFiZGEwMmRkODE3ZGUxMzEzIHAzeWsKKzUxMzQ5IDMwMjJjZDVlMDEwMDQ0YzNiYWQxZDZiODAwMGEwMTUzYzYzZWI0ZWYgcDN5aworNTEzNTAgNWI2ZjgyMTAxYzQwNWIxNzU2ZGM4MDJmZjIyMTUzOTRiZWE4MGYxNiBwM3lrCis1MTM1MSBhOGJiMWFkN2ZjNmZhZGM5MTQ0ZjYxNzIyYzA4NjA2MTAxOGIzMmQ3IHAzeWsKKzUxMzUyIDBhMWY4N2E4NTViM2U2MTViN2M5ODIyYWVlMGMyNDcxMGRjNjYwZDEgcDN5aworNTEzNTMgZmEyNzU4NDU4NjZjOGE3ZDVlNWU5YjBmZTcyMzQ3NGE1MDU1ZDllOSByZWxlYXNlMjUtbWFpbnQKKzUxMzU0IGE4NzMyMGViZDBlNjY4OTY0YmU4YTc0NTM5NTMwZjg2YjQwMTdmYTYgbGVnYWN5LXRydW5rCis1MTM1NSAxZmY5M2JhNDA0NTA4ODM3MGRkZjA0ZDRmMjNlM2Y2M2M5OWFiMzY0IGxlZ2FjeS10cnVuaworNTEzNTYgMzFiOWE0YjQyNTI4ZWNmYTUxZmEyY2Q2YjUwZWI2MGFhYjhmNWM3MCBsZWdhY3ktdHJ1bmsKKzUxMzU3IGRmODdiNjA1NjdjZWI1MjRhYjlhMjMzNGU2OTBiM2RjZmUzZmViOGQgbGVnYWN5LXRydW5rCis1MTM1OCAwNDVlMjBmZjg5ZWJiNzA5MzIxNDEyN2M2NWQ3MzIzMDg0MGIwOTA5IGxlZ2FjeS10cnVuaworNTEzNTkgODliNzMwYjcxNDM0ZjljZWE0ODQ4YWJjODY2Y2M4ZTgzYzhjZDRmYiBsZWdhY3ktdHJ1bmsKKzUxMzYwIDIxMGM1YjU1NzVjYjVjYTAxZDFhMDJjOWI2OTRkY2JlYjZhYWFjNzQgbGVnYWN5LXRydW5rCis1MTM2MiBiNWQ0ZjNhNzNkZTA0ZjcwZTc1YTUzZGYxNzg0Yjg3ZTlkYTJlNTZiIGxlZ2FjeS10cnVuaworNTEzNjMgZjNkZWU2MjVmYzQ4M2E2M2RmZTVmNDdkNTM4ODM4MjIwMmNjYWJmMSByZWxlYXNlMjQtbWFpbnQKKzUxMzY0IDRjNmY3N2I1NjQ1MmQ2YTQ4Y2YyYWVjYjU5MDNjZmQ4NDdkZjZkNDAgbGVnYWN5LXRydW5rCis1MTM2NSBjYTc3ZGUzNWRiNjIwYTE3NTA3ZGQ3MzkwYzM5MThhYTg3NjI3YzQzIHJlbGVhc2UyNS1tYWludAorNTEzNjYgN2ZiNTZhYWY1MmJiY2VhNTVjMjNhNWY3MTkzMDE4ODUyZDM3OTM2ZSBsZWdhY3ktdHJ1bmsKKzUxMzY3IGI4N2ZlMTFmYjdlMjhhZTI5M2VmOGJkYTZlZjhkNzE1Mjg4N2U1MWIgbGVnYWN5LXRydW5rCis1MTM2OCAwYWQ3ZTg1YzhjMDRlOGE2N2Q3MTU2N2U2N2M5ZTdhMzQ5MzhmYjdlIGxlZ2FjeS10cnVuaworNTEzNjkgNzliYmZhMWRiZDFiYjBjNmExZmJhZmYwNzEyMGI1OTQ4NzIxMTI5NyByZWxlYXNlMjQtbWFpbnQKKzUxMzcwIDFhYzE0ZDQzZWM2NDQxZTZjYjIyMGIzMThmMjk4NjczOTgwODc4OWQgcmVsZWFzZTI1LW1haW50Cis1MTM3NiBjNGU3YjQwNzBmMDc1NDdmZGIxMzRkNWU2Y2I5NTNiMzI2OWNlOGFjIHJlbGVhc2UyNS1tYWludAorNTEzNzcgZTdhNWIyODdmMjdjMWE5ZWU5MDFkNTIxMTE4ODQ1NmEyNjg1ZTQwMiByZWxlYXNlMjQtbWFpbnQKKzUxMzc4IGNiYjQzNWM1YzIxYzY3MDNmMTk3MDM4ZTc0N2Y1MTQ4OTdkOWMzOGEgbGVnYWN5LXRydW5rCis1MTM3OSBkZTRlZjE3NzI3OGJmZjg1N2Y3MTE2M2Q0NzBlMWQ3ZjA1ODFiZTlkIGxlZ2FjeS10cnVuaworNTEzODggMjU1MWViNTY3MWE0MWQ4YTQ2YjY4MTNmZjE0ODkzYTk0MTkxOTg5OCBwM3lrCis1MTM5MCA2MzIzN2ZjZWZkOTllZTRmNjc1NzIyZDVjMjcxMDY1OWFhNWRkOGNiIHAzeWsKKzUxMzkxIGNmYjM4NDczY2ExMTk5ZDk4MzJiM2FlYmMyMzU0YWQ2MTE0YWFhMDggYmNhbm5vbi1vYmpjYXAKKzUxMzkyIDg0NTJkNWVlN2IwM2JjMmVjMDY0OTAwNjYwOGJkMTQ2YzA5NDU3NzQgYmNhbm5vbi1vYmpjYXAKKzUxMzkzIDRjNjc0YTA3YjIzYzM2MGZmOWIxODhjODFhZmFmZmVmYWI1YzllYjIgYmNhbm5vbi1vYmpjYXAKKzUxMzk0IGQyM2I3Y2IxNzAwYjUwZWRhYmQ0NWQwYWRlZjgzYWFmNDM2MjE1MDMgcDN5aworNTEzOTUgMGI1ZDhlYWUzZWNhMDYxYjdlYmRlNjJiYTNhODAzZDZiZjM4N2NlNyBwM3lrCis1MTM5NiBjNTU3ZDQ0NzRmMGY0ZjA3ZjliMGVjMmFlNzlkNTgyYzJkODY5NWU2IHAzeWsKKzUxMzk3IDNlYmY1NjA0ZjYzMjBlNWIxZWUyYTM2NDQyOTUzOTFkMWRjZGNiNmQgcmVsZWFzZTI1LW1haW50Cis1MTM5OCBiODhiNjlmOTdhY2MwMDYxYWFjZDNhNjhiMjA5NmRiMzZkNWQxMmVmIHJlbGVhc2UyNS1tYWludAorNTEzOTkgN2NiY2IyMmM4YjhiMmM4YTRiNjM2MGEwNWEyYjc0OTM0MDcwYTVlMCByZWxlYXNlMjUtbWFpbnQKKzUxNDAwIGE3NDVhMmJkNDhhZjBiOTRiMWZjY2VkMDQ1ZjQ4ZjAwNTY4YWJlOGMgbGVnYWN5LXRydW5rCis1MTQwMSAwYWY0ZmZhYmEwM2MzMmI0Y2E0YzA0ZmE5YzJlMzI0YzdkNDZhZTZkIGxlZ2FjeS10cnVuaworNTE0MDIgODdkMTUzZmZiYjk4YjVhODNiNWU2OGNmMjIwZTdiZDc2ZjIwYTUyMyBsZWdhY3ktdHJ1bmsKKzUxNDAzIGIwZTBhNWViOTA5ZjE5NzliYTExNDUwMThkYzk1M2I4ZDMxZDg2YjkgbGVnYWN5LXRydW5rCis1MTQwNCAyYzQwMjY3Njk5NDU0OTkwN2NmODFjNWYyMmQ4MmE0OWEzYjkzOGI2IGxlZ2FjeS10cnVuaworNTE0MDUgYmJlZjJlY2RlZTMzZWJiODE5MDMzMjA5NWY4ZGE5NDdkM2MwNjM0NyByZWxlYXNlMjQtbWFpbnQKKzUxNDA2IGJkZWU0NTg4OGI2NDBjOTU2MWVkM2I4ZTRlY2RjNmIwM2Y4ZDRmMjIgcDN5aworNTE0MDcgZDI0MGNlNTY5NmY5ZmU4Zjg1NjFhNTVmZjhkMTNkZDI4MTYyNjM5YSBwM3lrCis1MTQwOCAxMmM0MmZmOTk0MzdiZjcyYWRlNjc5MjY3MGJkMGI4ZWJkZTE4NzJiIHAzeWsKKzUxNDA5IDgyNzE3Yjg0ODg4ZTA0NmFhYjljZTMxMDkzZjQ1ZjA1ZjM0MzU0YTUgcDN5aworNTE0MTAgMGYxMzVhZmZhYmYyYzdhZjQxNjczNmMxYjEyNDg3YmFiZWQ0NDc5ZSBwM3lrCis1MTQxMiA1OTlhYmMzMWY3NzBhZDc1YTc2Y2Y3NmI5NzdlNTUyY2JlYWY5ZjFjIHAzeWsKKzUxNDEzIDk2MzQ5NmNiZjNkM2MwZjFjY2UzZjBmZmRlNjJmNDUwMDYxMDNhNmMgcDN5aworNTE0MTYgNDQ2MjJlYjU4YTI1YjZhZjA2MTg4MGZjYzA1N2ExZDQ1ODUxOWI3NSBsZWdhY3ktdHJ1bmsKKzUxNDE3IDViMmMxYjY1ZDM1ZWVhOThlMDRhNDE4ODNmZTAyMWIxMThkZmM0YWUgcmVsZWFzZTI1LW1haW50Cis1MTQxOCBjMzMxOTJlMmMyNWIxOTRmZGNiODcyYWE0MGQxZGYyYjhhYmE2NTRkIHAzeWsKKzUxNDE5IDE1NGYyNTZmZmY0Mjk5NWQ5ZGExM2Q3Njc0YjMzMWM0YWIyOGYxMjEgcDN5aworNTE0MjAgMjJjMmUyNWVkMGU0MGJlY2NjZDZkYTFmMDI5MThhMmExYWVjZTNjMCBwM3lrCis1MTQyOCA1ZTE0Mzk0NDc3MGI0MWNiMjRlZDJjMTlkOWU1NWUxOTY0MGEzODkzIGxlZ2FjeS10cnVuaworNTE0MjkgZWVkYTI3MDQxMzBlZjUwYjA3M2Q5ZThiNjA4NDQxZWJlZDg1MjFmNSBsZWdhY3ktdHJ1bmsKKzUxNDMwIDczYTMyOTFjNThkYzFlZWI0ZWM2NTM1ZjYyZmE0MGVjNmIwMjMyZTcgcDN5aworNTE0MzEgNDBiYmU2NjliMDg5ZWZhNzBkNmEzMWQ1YzE1NGQ0NTkzOWQ3Y2EyNCBwM3lrCis1MTQzMiA4ZGQ1N2M1M2NjZjZiMjkzYzM0ZGRmODFjZDMzODBjMDVlY2M4OWE4IGxlZ2FjeS10cnVuaworNTE0MzMgZGI0MmU4N2M5Nzc2ZjcwMjQ3M2FhNDNiNmU4ZDQ0ODRiYjkwN2Y1ZiBsZWdhY3ktdHJ1bmsKKzUxNDM0IDJmZmRlZTFjMzg4NDRhYjAxMmI2ZjkyM2Q0NTUyNGNlY2M3YmQ3N2EgbGVnYWN5LXRydW5rCis1MTQzNSA2ZjEwMjA3NDMwNzc0ZjEzODZjMDZkNjY3YjU1NGRlOTk1ZTgwODYxIHAzeWsKKzUxNDM2IDhkZDcxNTdkMmEyMmExOTEwMmU1NDNiYmJkNTI1OTYxYjFmYTVhYjcgcmVsZWFzZTI1LW1haW50Cis1MTQzNyBjZjQyYTQ0YzU0OWVkYTAxMzliYWQ0NWU5ZTIyZDUxODE4NGExMDIzIHJlbGVhc2UyNS1tYWludAorNTE0MzggMzY3NGYyMGFjNzgxZjY1N2M3ZmJlNmNlNDM0NDViN2ZiYzQ1MTRlNiBwM3lrCis1MTQzOSAxN2YxZGYxNTUzYzlhZTQyNWQyYWJjMzE1OTRjMjUxMzJmYTgwODAwIGxlZ2FjeS10cnVuaworNTE0NDAgNTExZGI3MWI1YzE0ODlhMzg1YWI2MWIyZDQ2N2NkMmMyOWMxNmRlNiBwM3lrCis1MTQ0MSA1MzkxNGQ1NDBhNjc4MDE4NmZjOTdhYzcxYmIyNmQyYzVhOGVjYzJmIHAzeWsKKzUxNDQzIDlkZWU4MWRjYjliNDE5YjljYTc3MWFhNDRlZGUyYjViNjBhOWMwN2MgbGVnYWN5LXRydW5rCis1MTQ0NCA3ODNjNWUyODAzZjk1ODBmYzgyNzZhMGFjYTczZTg4NDc1ODUyNjRmIHJlbGVhc2UyNS1tYWludAorNTE0NDUgYzQwZmU4NjU2M2ZjODgxY2VhOWUyMjFjMGVhYWUxYzE1ZWM5MDcxMyBwM3lrCis1MTQ0NiBlZDBkYjBkNmNhOTkzODFhMjg4N2M4ODM1MzQzNDhjMzkxNWIyOTc0IHAzeWsKKzUxNDQ3IGU2MWIyMmJmN2FiNDc3MjU3MGM5NzFhOGVmYTNlMzUzMzUzMzVhMmYgcDN5aworNTE0NDggMDJiYmVlYzI3MTRmMDQ5MWIwNTE1NTZkMTI2YzU4MDVlNjQwZTU3NyByZWxlYXNlMjUtbWFpbnQKKzUxNDQ5IDM5ODI0NzVjNTE0NGJiYzk5ZTE5ODJiNmNjY2E0ZGUyZjNjMDIwMDUgcDN5aworNTE0NTAgZThhNjViYmQ2YTI5MmM4NzQ4ZWIyMDQ1NjY1NjUzMzY3MjA0ZGU3MiBsZWdhY3ktdHJ1bmsKKzUxNDUxIDNjYmVkMTNjNDY0ZDljMWRlNGM1ZTQ0N2NkM2U5Njc5Y2FmOGUxMDAgcDN5aworNTE0NTIgZTdiMWEzZGIxZmUzY2RiYzc2MGU5ZGY1N2JkMWNjZmYwM2E1OTc5OCBpbnRfdW5pZmljYXRpb24KKzUxNDU0IGM2ZDlmYTgxZjIwZmRjZDAyYzM0M2FhNjIwMjRlMDE1ZDUxM2M2MjAgcDN5aworNTE0NTUgZjE4ZDc3OWM3Y2ViNjcyZWUzN2U3ODNmZDFmZWE0YWNlZGFkZWNlOCBwM3lrCis1MTQ1NiA1ZmRkZGRkNTE2Y2I3Y2MzY2E4YmRlNjM4NjNjZTQzOGZkZGYyZjZhIGxlZ2FjeS10cnVuaworNTE0NTcgYzhmZjQzODAyZjMxNGM3ZDZlOGQyOGJkMzkzN2Y0MGEzN2JiYTA4MiBwM3lrCis1MTQ1OSBlODZjMGIyOWI0YTI2YTQyZTRjZTY0NjlmMmNhM2U5YmZjYzMwOTVhIHAzeWsKKzUxNDYwIDcxOWM1ZGI3YmZhZDQ1YTdmYTkxN2QxNWJhNTYzMzFmYTA1NTM0OTQgcmVsZWFzZTI1LW1haW50Cis1MTQ2MSA5Y2M2YTU0OGRlYzQ5NDNlYzJkYzYyNjZiMDczMzNiYWI4NDI1NTBhIGxlZ2FjeS10cnVuaworNTE0NjYgMmY2YjQyYWVhZDk0ZjgxY2UyZTYwZTNmMmFjZWZlOGYzNGE5OGRiZSByZWxlYXNlMjQtbWFpbnQKKzUxNDcyIDhkNzFmOWE2YzFjM2EyZWFmMzI3ODEzYmFkZjIwZTk0YjA2YmE1ZDggcDN5aworNTE0NzMgZDY1ZTZkY2ZkY2I1N2ViZDAxMDkzOWZiZTE5OGE5YTRjYWQzMDFjYyBsZWdhY3ktdHJ1bmsKKzUxNDc0IDlmMjc4MDA5MDI2ZGIzODM0YjVlMmYwNjJkNDcwZmU3YTQ4NWYyYjYgcmVsZWFzZTI1LW1haW50Cis1MTQ3NiA1ZmY2OTZmMmE3YTVhYTI1Nzc3NjExNWQ0NjEzNzcyOTdlNzAzMjhkIGludF91bmlmaWNhdGlvbgorNTE0NzcgNDRkYTNkMjk3MTA3OWJiZjdiMTY5MTRjNDdhZGE4NTBkYjllNWM3YSBpbnRfdW5pZmljYXRpb24KKzUxNDc4IGQ5MTU4NWIyY2RjMTAwNzk3OGRiZmJiYjA1NDVhMWRjZTMzYmZmNjMgcDN5aworNTE0ODIgM2VhNTI3NTg3NDEzMWUwODJlMTIzNDdlZGIwNTkzOGY1ODJjZTM4YSBwM3lrLW5vc2xpY2UKKzUxNDg2IGYwZjQ5N2EwNTA0Y2NmNTI1ZjIyYmVmZDQ2ODAwOTYxOWVkYTY3Y2YgcDN5ay1ub3NsaWNlCis1MTQ4OSBmOGE5MGQxODI1Y2UwMDJiODExZDE1NGI0NGM3ZThmOTQxODg1ZTFhIGxlZ2FjeS10cnVuaworNTE0OTAgNTNkZjNlZmY5NGUzZTYxODJlZThhN2RiYThhZTg5M2RjNDY0Y2Q1YiBwM3lrLW5vc2xpY2UKKzUxNDkyIDE4NGY3YjE2ZDIwMzZmNmM0ZTQ1NmQ0OTE3OTI1MTkzOTIwZTE3YzEgaW50X3VuaWZpY2F0aW9uCis1MTQ5NCBhNWYzNDNmNzI0NzEzNWZhMTgzZTg1MmNhM2UyOTJkNzNjNTdlM2YwIHAzeWstbm9zbGljZQorNTE0OTUgY2U1ZTQ1ZTRjNWQwNjljZGEwZjQzM2QzOGVkMDk3ODg4ZTNkZTkyOCBpbnRfdW5pZmljYXRpb24KKzUxNDk3IGE1OWJiZmQ4MDhkOTcyNzA4NmExYTBhZGEzOGI4YWUyNmU1YTIxZjEgbGVnYWN5LXRydW5rCis1MTQ5OSBlNmUxYjQwMzgyN2U1ZTU3OTQ0ZWVkOGJkZjkzODBhNWYyM2UzMmE2IGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE1MDAgODc4MmNjMGZiNWUwZmVjMGU4YWM3ZGZkOGZiZmNhZjE3YTNmZTY5MCBpbnRfdW5pZmljYXRpb24KKzUxNTA1IGFjN2YzOTNmZDI5YjM0MmYwMzYxOTAxMzlmY2JiYjU0ZDM3MjNmMDQgaW50X3VuaWZpY2F0aW9uCis1MTUwNiBkMTc0M2IwODI3MzQ3MTQ0YWZlMzg0NWRkMWNkYjJiZmEyZjQxOTQ3IGludF91bmlmaWNhdGlvbgorNTE1MDcgYmNjNDE0Mzc4ZjMyMDdjY2Q1MmQyNDhiNDMyOWY4YzUxYzNhNDk1YyBpbnRfdW5pZmljYXRpb24KKzUxNTA4IDZkNDM1ZGE4Yjc5YjMxODZhYzA0ZDYxN2U5ZGM1ZWQ5NGQ5ZDYwNDkgaW50X3VuaWZpY2F0aW9uCis1MTUwOSBmMjhiZTVkYjUwMDViYTkyYmQ4M2U0NmJhMzFmNWZlZmY0ZTY1MzI1IGludF91bmlmaWNhdGlvbgorNTE1MTEgMDUwZmI5YTA5N2NkN2NmMGNlMDgxMDhmYzQ2NDAxOGNmYTc4MTZlNCBpbnRfdW5pZmljYXRpb24KKzUxNTEzIDQ3MmNhNzAwNmY3MGYyYTNjYWU0YTA5NjJiZjM0NTliZDFhNTNkZWQgcDN5aworNTE1MTUgNDQ5YmEwZWZiNmJkMjc5MTFkOWE1YmJkZTk3NTNiMjI4MjVlMDg4YiBsZWdhY3ktdHJ1bmsKKzUxNTIyIGUyODAzMWFmZWZmNWYyZmE4YmJjNTYwYWU0ODJkMWEyOTUyZmNmMmMgaW50X3VuaWZpY2F0aW9uCis1MTUyNSBkNWZhNGFmZDY2MjBlNmU2N2UwMWM1NWI0MzA4Yjk4ZWZlZjY1NDdiIGxlZ2FjeS10cnVuaworNTE1MjYgNWNjZTAyODg3NGJjNzhlMTIzMGE5NGI0Mjc3N2Q1NGIzNDkxYjUzMSBsZWdhY3ktdHJ1bmsKKzUxNTI3IGY0NTQ1MTgxOTQ5MWI0NjVlY2E3NjE0ODk1ZjA4NTlmMzViMDhhNGEgbGVnYWN5LXRydW5rCis1MTUyOCBhYWE3NDVmYzdiNzY3ZTk3MTAxZTdlMDI4MTliZDcwYTY5MmM3OTdiIGludF91bmlmaWNhdGlvbgorNTE1MzAgOTgxMTgxZDJhNGZlMDc1NTdkM2U4NzI2MjMyOGUxOTBlNTEzZGQ4YiBsZWdhY3ktdHJ1bmsKKzUxNTMxIDNkZDYxZmZkMDQ5ZTE1N2UyNjI5NjQ0NmYzMmU1NTJlMWQyMDVlMmIgcDN5aworNTE1MzMgMTNkNWU1ZjBlOTkzYWM3YTY0YzM3YzkyM2Q0N2E0NGY5OGYyZDc4OSBwM3lrCis1MTUzNSA4YjllYzM0NGJlZDJlNTcwZmQ2ZTJhNDgyMmFjNWNmMTA2YTkxOTFkIHAzeWsKKzUxNTM2IGNlMjNkODY3MzJiMGI4OWFmMjA0OWZkYmFlYjA4OTg2NGMxNmE1ZTggcDN5aworNTE1MzcgZGNlZWE0MWY0YTZkYWVhMjEyODVkZTg4NzNkYjE4OTlkMjM1YWEyYSBwM3lrCis1MTUzOCBlZmUzZjJjMGRhNWU4ZWQ1MmI2MjU4ZGI4YmIzYjAxNWRkYTZjNmZlIHAzeWsKKzUxNTM5IDc0OTZmOTQ3NTRmZjBlYjE4MmQ2NmFmYjg0ZTYzYTI4ZDYwYjU0NDAgcDN5aworNTE1NDAgNjlmNjFmOTBjNGZjMDhhNTU2NDg4MDc2MGY5ZjBhNTg2ZmUyYzJmNyBwM3lrCis1MTU1NiAxYTBmNDQ3ZTYwYThhZmIzNjcyZWMwMDM2ZDMwZDg1Zjc0NDQ1NzNiIGludF91bmlmaWNhdGlvbgorNTE1NjEgMWNmNTI4NWM4YWI5NDdmNTg1YTVkM2RlZDI1NzRmMzNjZWZmMWQ4MiBwM3lrCis1MTU2MiA1MWNkYzM5OGUwYjA2M2U4NjVjODMwNTM4MzhhMmQ3NzYwMzgxYzJlIGludF91bmlmaWNhdGlvbgorNTE1NjMgMzE3ZGNjNTkwZmZkOGEyNmI2Nzg5YWE5MjhmYTQ3ZWVjY2E2Y2I3ZSBpbnRfdW5pZmljYXRpb24KKzUxNTY0IGU0ZGVlYTkzOGRlZjA4MmFmZGVkNzA4NmZhMzZiMmJkNWJjY2IzMWEgcDN5aworNTE1NjUgYTg4YmMzYmFkNjUxYjNhZmFiNjhlY2NkNDE3NWJkZTM0Y2Y1MDU3YyBsZWdhY3ktdHJ1bmsKKzUxNTY2IGFkYmZkOGQ1ODUxY2M2MmI1OGIwMTMyZWMyMzQ0Yzk1MWNhM2JlOGQgcmVsZWFzZTI0LW1haW50Cis1MTU2NyAyODBjNmRiMzFjNWEzZDIwMzJmMGE5M2U2Y2M1ZDlkNTYyMjZmYzIyIHAzeWsKKzUxNTY4IDkzNDhlYTYzYjAyZGZkZWMwMzcyZjljNmY2Y2RhNGFkYjY1MWVkN2EgcDN5ay1ub3NsaWNlCis1MTU2OSAwODAwNWJhNmNlYjkzMGRjNzM3ZjRmYjEyYTJlZjdkYmExZGEyMDBmIHAzeWsKKzUxNTcwIDUyM2U2Y2NlNDE4NzE1MGRkOWEyN2I0MWE1ZWY3ZjliNTcyNmFmZGIgcDN5ay1ub3NsaWNlCis1MTU3MSA3ZWQ1Y2U4OWYyNmFlN2M0OTVhZmFlNTdlNzg4MzYxOGEzZGE1MzQ3IHAzeWstbm9zbGljZQorNTE1NzIgZWJhZDU5YzcyMzNlM2E4MDVhNjlhYzM5M2Q0YzgxNzc1YmZiYmI5OSBwM3lrCis1MTU3MyA3YmM0MTkyYTUyNzhjNThiY2E5NWNmZWQ1NDBmM2EzNzc3NzA1YTYwIGludF91bmlmaWNhdGlvbgorNTE1NzQgODQzMzU3ODhkOWNiMjEyNjJiNzU3ZjQyMWYxMDEwNWRjYTRmYTEzMiBpbnRfdW5pZmljYXRpb24KKzUxNTc1IGU1ZWMxYWRiMDYxZjVhYjU4M2QyNjFhYTc2YzhlNzczYjFmOTNiNTggcDN5ay1ub3NsaWNlCis1MTU3NiBiZjQyYzgxZGI4MDZlZjIxMmYyNWEwYTkwZWRlYjUwYzhmNzRiMjUwIHAzeWstbm9zbGljZQorNTE1NzcgYTUwNDhjOGQ4ZjMzMzJhYjdkNDQ2YWNkYTgwMDhiOGM1MWEyNjE5NCBwM3lrCis1MTU3OCBhMjQzYTUwZGEyM2FlMmVmNTEwYjZjYmQwZTM5NWVlN2M1YWU0ZjM4IHAzeWsKKzUxNTc5IGY5ZTc1NjBmZTAwZDIxODk4OTYzNWYwNzVhNTYyMjlhYjM3YmM0ZTAgcDN5ay1ub3NsaWNlCis1MTU4MCA3NmE5YTUxMzFhYWVjOTYzNTRhOTI3YTY4YWQ5MzA4YWRhZjFlOTNlIGxlZ2FjeS10cnVuaworNTE1ODEgNDRhZjRiMzdkNWZmNDBhMmU3Y2NlZWRmMWE5NTRhMjM1N2RjNDQ4MyByZWxlYXNlMjUtbWFpbnQKKzUxNTgyIDI2ZDI5NWU3OWFlODcxNjMzNzE4ODRkMWFlNDdmZGFlNjIxZTMwYzcgcDN5aworNTE1ODMgZTY4NGY5N2FlM2ZhZmIxNDgwYTA4NTEyZGFjZmY1YzM5MGFmOTBmZiBwM3lrCis1MTU4NCBmMTZhNTgzYzViMDkwNDVkOGEyZDNiNDM0NzdkMzg5NjliMmYwMTMwIHAzeWsKKzUxNTg1IDRhMzhjZDFhMTYwNjFiMWYzZTIwNWNiZTZjYmE5NzFhYTk4YjhmNTcgcDN5aworNTE1ODcgZjUxZWRiY2Q1Y2MwMDA4YjAzM2ExMzUyNWVlOGM0YTUwY2Y3NTZhMiBwM3lrCis1MTU4OSA5MmNmMzk3NGQzMmZiY2VlNzYxOWEzYTAzYTViYjYxZDY2Yjc5M2NkIGxlZ2FjeS10cnVuaworNTE1OTAgZWRlYzc5NjJhZjI4N2U4YzBmYWU1NmVhYzE2NDllZDEyYzgzN2U5ZCBwM3lrCis1MTU5MSBlMDc2Y2NhNGQ5ZDdhMGM5Y2MzY2Y5YjRlZjUzNDUxNjhhM2Y0YWI4IHAzeWsKKzUxNTkyIGRiYjU5NTRmZGRjY2NiMDM5Nzc1MzdkZjRiNjA2NDk5YjE5ODEzYzYgcDN5aworNTE1OTMgZjA3OGU3ZTRiOWExNTA2MjIxMzlhY2Y2NzkyMWRjMTEyMDQzZjE4NyBwM3lrCis1MTU5NCBmZjY5M2E4NjFiNzA0ZmRlMTc1MGVjOWRkZjIxNzgzYWQ3OTE0NWZjIHAzeWsKKzUxNTk1IGY4MTE1ZjY4NmU0MDExYzY4YzE0MmEzZjc3MzA4MWFiYWNhMzZlMDMgcDN5aworNTE1OTYgNjkyN2FjYmZhMDFiNDdmYWJhODQ0MmMyMDBmMjc2ODUwODM1OGM0ZiBwM3lrCis1MTU5NyA0ZTVjOTRkMDM2NDkzZGY3MGNkMmY0NjkwMGJjNWVmYzg3NjllOTkwIHAzeWsKKzUxNTk4IGViMmY3MGZkYmYzMjQwYjk5ZDI2MDUwNmFlZTJhYWZhMzlkZjQwOGUgcDN5aworNTE1OTkgNzg1NjRlMjY5ZDIzMGIyZjUzNzc3ZTMzYmI3MjgxOTQ3ZTIzMzVkNyBwM3lrCis1MTYwMCBmODdhM2U2MTg1M2Q3MmIxZDEzMzk5MmY5OTFlMzk3YjMxYWFjOGU4IHAzeWsKKzUxNjA0IDNiZmM4YmI0ZTcyNmYwYTczNmM5YzUwMmNiOGE4YTM1YTkzZWM5NjkgbGVnYWN5LXRydW5rCis1MTYwNSBjYTJiMmNjMjMwN2U0NDEzZmEyYmZmNWI2YWFiMDkyNzM5MDdmYzc5IGxlZ2FjeS10cnVuaworNTE2MDYgZjQ5NzY1MGExNDkwNmYyNzYzOGRmYzMzMGRiMWFiMzA1ZTZkM2ZlYSBsZWdhY3ktdHJ1bmsKKzUxNjA4IDkxNmFlNjM2YTgzZTRiODAwMmMwNzI0YmM2OGFjNzRkODQzODYyZWMgbGVnYWN5LXRydW5rCis1MTYxNiBiYjA3MzgwNWZiYWJhMDExNTM3NzQ4NjkyN2MyNWQwMWNhMjlhNmVhIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE2MTcgOTA0OTU4MjE2ODEzMWQ5ODlmYTVjMmVjNjFlMzZhN2MwYjBiNzU3YiBsZWdhY3ktdHJ1bmsKKzUxNjE4IDU1NDI3NTkyNTRjMGIyODBjZGJmZTYwNTViNWExMzgyOTQ5MzAyMGUgbGVnYWN5LXRydW5rCis1MTYxOSAxYjczNWE5ZDIxMDcxMGRlNGI4YzRhYWIzNDAyMDk3NmNhZTlkNDc3IGxlZ2FjeS10cnVuaworNTE2MjAgYWNhNzA5ZjMzYTZhMTY4YjE5OTg2NDVkYzE3YjRmODhjMWZkNzg4NCBwM3lrCis1MTYyMSAzZDc3OThmZWFmYzU5OGY5ZWJiZDc2MTRiOTU5YzIxNThjNzRkOTdhIHAzeWsKKzUxNjIyIDZjMTg0ZmE1NTE3MGEyNjg2ZTE5MzIzMGU3YWVhNzRlNGQ5YWIwNjUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MTYyMyBlYmViMzRhZGQ0YTYyY2RjZTY1ODhkMDQ5MWZjNjhhN2I3NDM4NDY0IHAzeWsKKzUxNjI0IGQwZWQ3ZGJhYWQ1NmUwYTBhZWE1MmZhYjY4OWZkOGJkNmRlYWNmMGIgbGVnYWN5LXRydW5rCis1MTYyNSAwY2I5ZTU3ZWM0MDY0NzhjN2RmM2I2ZTA1YWQ3NTcxYjIzNjQ0NjA0IHAzeWsKKzUxNjI2IGM0ZDhjMDU0NjE2YzAwOWQwYWMwMjc5NTNmODFlNTMyOWVkZTZhMTcgcDN5aworNTE2MjcgYzA5MzYzM2JlYmVjY2ZlMDRlOTQ4MzI1YjYxNjBjNGNmY2IxYzFkYyBwM3lrCis1MTYyOSA1NDBjOTU5MjcyOWU3NGQ4MmFkMzMxZjY3NDNlZDQ5NTE4YWMyYTcxIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE2MzEgZDBiODNjNDYzMGMwOTI0ZGY2NjEwNjM1NDNmM2M1NDc4YzhjMzVhYyBwM3lrCis1MTYzMiBkYTNhOWY0MDI4ODYwNjU4YWI3OWM2ZGUzNmIzMzY2Yjk5YTE0NzJiIHAzeWsKKzUxNjMzIDRmNzZmNjNhMzJmMzZiYWFmMTcxNzlhYTZjYmU5NGYyZmIxMmYzM2YgcDN5aworNTE2MzQgZDE0ZjEwYTRkOWQ0NjYwZGNlMTNjODc0YjU5YTYyMTM1MWQxNWVkZSBwM3lrCis1MTYzNSAwNWFjOWM0OTI4YTQ4ZjEyOTRjYjllZGZjOTgxMTZkNzE2NTBlYWU4IGJjYW5ub24tb2JqY2FwCis1MTYzNiA2ZTE5OGM2NTVlZWFhY2YzNTU5MDc1MTcyZGI0ODNmZjYyM2I5ZGRiIGJjYW5ub24tb2JqY2FwCis1MTYzNiA5MGE4ZWU2YzNhODY3NmNjNWI5NDNiMmIxZGViYzNjYTBmMTdiYWYxIGJjYW5ub24tc2FuZGJveGluZworNTE2MzcgYjU2M2IxMmU0YzAwMzYzOTJjNGRiODE1MjhlODkwYWM2ZDhiYmEzNSBiY2Fubm9uLW9iamNhcAorNTE2MzggZmVmMDJkYmE5YjVmMzI2ODcxZTYyNzU0NWJjODZmMWQyZTZjYjAzMCBiY2Fubm9uLW9iamNhcAorNTE2MzkgZWM0ODA1N2EzNGI2MDE4ZjU3YmJmNGY0OTc0NjUyMDM1NWYyOTczNCBwM3lrCis1MTY0MCAwN2ViODAyNjRmNjE1MTFkZWY1NzI4ZGY1YzZhNzU3ZWQ2OGQ5YmQ2IHAzeWsKKzUxNjQxIGY5NzQ4OTBjNmNkMmE3YzUyZDMwMDdkMWQ2Y2IzMTY4ZDRjZjExYWYgcDN5aworNTE2NDIgMjE4YjZlOTAwYThkNDQyNWJkOWQ5MmE1ODIwNWFlMzg4MzNjNzc2ZiBsZWdhY3ktdHJ1bmsKKzUxNjQzIDc1OTEyMjgxNTFkNzAyZWM1MzNiZmJhYmI4YTM4MzVlNmI5YjA5YTEgcDN5aworNTE2NDUgODkzYWRkNTU0NTQxOTY3MDgwMGViMTE3NmI4ZGI0YmNmZmQzNTAwNyBwM3lrCis1MTY0NiBhYTU5NDY2ZWJkOWMxNjE2MWM1MWMxMTQwMDQ3NDExZGY0MTMyMWY5IHAzeWsKKzUxNjQ3IDc1NGE3MjllOTdhZjVhYzY0ODVhNWZhNThlZTRhODliZGQ5ZDQyZjAgbGVnYWN5LXRydW5rCis1MTY0OCBmMGI4ZjcxMTg1ZjU1ZDZmZDhjYzU1ZTJhZTk5OTE3MDc5NDcxYTU2IHAzeWsKKzUxNjUwIDQxNjEwN2EzNTE4NTNkOGViMzNkNWZhNGZjOTYxNTMzOTViNzhiMGUgYmNhbm5vbi1vYmpjYXAKKzUxNjUxIDE2ZDQ4NmM3ZGE4MjQ1YzM1NjBmYzQzZTk5OWQ2YWViOWI1Y2YyNWEgYmNhbm5vbi1vYmpjYXAKKzUxNjUyIDhmNzMyMWFiOGY0MGY3Mzc3NjJhYzAzMjA1OGVlMzFjNThlMzcyMTMgYmNhbm5vbi1vYmpjYXAKKzUxNjUzIDRkMjNlOWExMjcxMDM4NTVkODMzNzliNDAxY2MxN2Y2MWRkZjNkZmYgYmNhbm5vbi1vYmpjYXAKKzUxNjU1IGYxMGZlZGJlNmMxMzk2MWI4ZmI2M2IwOTU2MTc1NDgwMDc1ZjA3Y2IgYmNhbm5vbi1vYmpjYXAKKzUxNjU2IDViMDJlYjVmNjVmMWJmZjZhNDVmMDg4NmRkNDQ4MThhN2ZjNTFjOGQgYmNhbm5vbi1vYmpjYXAKKzUxNjU3IDM1NTQ5NjJkOGIyMWQ3ZTU2NTY5NWFiODhkMzJjMGQzMTljMjYzM2EgYmNhbm5vbi1vYmpjYXAKKzUxNjYzIGU4NWQ1YjIwZWE2MGVkNDE4MTI2YmI3N2EwZDU3MGY4OTBkNWU1YjQgbGVnYWN5LXRydW5rCis1MTY2NCBhODM5NTdjOTFmZGI5YmI3NzE3MDcwZjliMDcyYjUxN2E3NjM1ZmE1IGxlZ2FjeS10cnVuaworNTE2NjUgMWYxNzA1NzA1ODllYTVmYjUwMzYwMzYzOTFiYjEzM2U5NDgwYzAyMiBsZWdhY3ktdHJ1bmsKKzUxNjY3IDYwYzExOTM0NzA5ZWM3NDI3ODRhM2YyYWQyMDBhY2UxYWZhODVhNjIgYmNhbm5vbi1vYmpjYXAKKzUxNjY4IGJjY2M5MTU4MDhkODAxZmZhYThhNTI4YmVmM2VjNWNlNDcwNWZlZGYgYmNhbm5vbi1vYmpjYXAKKzUxNjY5IGRkNTE0YTE3Nzg0OGFlNmU1MTVkZDY3NDE5MDE1NmNmMTI0YWNlMDAgbGVnYWN5LXRydW5rCis1MTY3MCA4OTE3NmU2NWFkZDJjOTg1YjAwMzVkOTJkNmIwZGE5YTVhYjdlN2RhIHAzeWsKKzUxNjcxIDcyMWMzOTRlYjBiYTMzZTk5ZDgwMjk1NzkwODZjY2EzNjllMDRlM2EgbGVnYWN5LXRydW5rCis1MTY3MiA1NjI2YjJlZThjZTRjYmM1YzQxMzhhNTk3Y2YwNmQxNDhjZWNmNjA5IGJjYW5ub24tb2JqY2FwCis1MTY3MyBhYTY0MWZiMTc2OThlZDMyNzc5MDM5MGZjZDM1ZjkxZjc5M2IxM2UzIGJjYW5ub24tb2JqY2FwCis1MTY3NCA4MjA4MWJhOWE1YzUwN2MwNDlhYjc2NDE4OGI1YTA5OTJjYzg3YzA1IGxlZ2FjeS10cnVuaworNTE2NzUgMTFmNzA1MzA1MWZmOWVhZGZjY2Y1ZDY2OTljNDA2N2EyMDZmMzgzMiByZWxlYXNlMjUtbWFpbnQKKzUxNjc2IDRhNzkwNmQ4ZGU4NjEwN2NhMTAwYzA2ZDczMjIyODFjZGU0ZjkzMjggbGVnYWN5LXRydW5rCis1MTY3NyA3MWVhMmJlN2Q5MTI2YThiY2FhZTNiZjY5NTk1MzE3YmYzYWM5MTViIGxlZ2FjeS10cnVuaworNTE2NzggMTg0YzFkYmY3MTk0ZTQwNDhhMWIyYjgxMTU4ZDVjZmIxYzEwYTgzZSByZWxlYXNlMjUtbWFpbnQKKzUxNjc5IGJhODM3NTQ1Y2MyZmFmMDc4YzNjOTg0N2ZiN2ZkYjk5YjUzODllYmUgYmNhbm5vbi1vYmpjYXAKKzUxNjgwIGE2NjZkNzVmM2RmZmMzOTM0ZTZjZTVkMjUzNGRiMmFjZWMyODQ0NjQgYmNhbm5vbi1vYmpjYXAKKzUxNjgxIGQxOTg2ZDM2OWZlZmI4ODliNzU4OGNjZWU5M2U2NzViYzk2M2M2YTggbGVnYWN5LXRydW5rCis1MTY4MiA4NDE4ZjFiOTA5MGU4N2VlYWE5ZDNlZmEzMTU1NzM5NDkzYWU0ZWZjIHJlbGVhc2UyNS1tYWludAorNTE2ODMgZTkwNWY3OGVhZmNhNTcyMWE2NjIxZWJmODNjOGFkMDNmMDU3NWM0NCBsZWdhY3ktdHJ1bmsKKzUxNjg0IDEzNTJhZDlhZmNjMGI4ZGYzZDIwYWEzYjI2ZGI5ZTMxNTc4MDIxNjMgbGVnYWN5LXRydW5rCis1MTY4NSAyZjA4NmQ1OGNhMTBmN2UxMTEzMWM3ZDhjOWNkMDYyNzFkMDMwOGYzIGxlZ2FjeS10cnVuaworNTE2ODYgOGZlMTY4NzAzMzQ4Yjc0YzlhYmJlMDlmNTY4YzU1ZjZmZjU2MWYyZCBsZWdhY3ktdHJ1bmsKKzUxNjg4IDc2OTNiNjk5M2RkYWYzZjgwMzAxN2Y4ODNjYmE2ZTg4NjQ3NGZmOWYgbGVnYWN5LXRydW5rCis1MTY5MCAzMTRjNGU3YTM2ZDNlZjNjNjNmOTk2ZGVhZTI4MTk5OWFlYmM1YTAyIGxlZ2FjeS10cnVuaworNTE2OTEgMWVjN2VmMGYzYjhkMDRmNGNiZDFkNDE0OWNhYWMzOWNmOTU0MTg4ZCBsZWdhY3ktdHJ1bmsKKzUxNjkyIDIxMTk3Y2JlZDUxZGFjODhmMzFkNDU3ZjU1YWM0NTRkYTg0NjVmZjAgcmVsZWFzZTI1LW1haW50Cis1MTY5MyBhYThmZWRmNmJiMjQ4ZWRkYjNmZDFmNzRjYzMzNTcyYWQ2YjQyMzljIGxlZ2FjeS10cnVuaworNTE2OTQgODgzMmI4YzJmYzQ5OWY0NzY0OTcxNDc3OWU5NDkxM2RmMTdjMDIwZiBsZWdhY3ktdHJ1bmsKKzUxNjk1IDRjZWM0NWJkNjY2Mzk4M2VlMmY3NmM0OTY2ZGVmOTE3YzZlN2Q0MDcgcmVsZWFzZTI1LW1haW50Cis1MTY5NiAwNjMzMGQwYjQ2NGFmMjUzMzVkNzExNmQ2ZDkzYmFmYWRmMzZlNGY0IHJlbGVhc2UyNS1tYWludAorNTE2OTcgY2I2NjQyZGVkNGU3NTgxMzJmNmQ1OTUwNTA3NjhmNmUzNDExNDA1ZiBsZWdhY3ktdHJ1bmsKKzUxNjk4IDEwMWUwNGE0ZjQwM2FhZTVjNWU3NDM3YzcxZTQyMTRkYWNhNzI2NmQgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MTcwMiBjNmZlZjk0NGFkOTVkZWFmZDJhZjA2ODA3ZTdjYzIxMmE3ZmVhOTI3IHJlbGVhc2UyNS1tYWludAorNTE3MDMgNTg5OTgwYzc4MDI1NDYwOGFkMzNhYjQ1NGY5YWU0YjcxMTc4ZDlhOCByZWxlYXNlMjUtbWFpbnQKKzUxNzA0IGNmYjc3ZmZmMDI0MDIxMDgyYWQ4MTFhZDIyNGFmNzE4ZGMxMjYxOGYgbGVnYWN5LXRydW5rCis1MTcxMCBhYmNhNGU2MjZjYjVmNmE4YjI2Mjk5NjA2Y2FhMzY3MjE2NTg3N2YxIHJlbGVhc2UyNS1tYWludAorNTE3MTEgZjVlNzhhZThlYzBjYjhlY2NmMWU4YzgzYTY0MDczZDFhZjJlMzkxZCByZWxlYXNlMjUtbWFpbnQKKzUxNzEyIDAwZDJjOTNiODhiZmVkNTdhZWFlMWEyNjE3Y2ExM2E3YmJhNjcwZDIgcmVsZWFzZTI1LW1haW50Cis1MTcxMyBjNmQ0NGE5NzQ5ZGI0ODZiNjY4Mjc4YmIzNzA1MDhkMzM5Zjc4ZTkyIHJlbGVhc2UyNS1tYWludAorNTE3MTQgOWNhMTlkYjE3ZmFmNzk1MDAzMTlmNWFiMDI1Y2I3NzI4OWFiNDc2MiByZWxlYXNlMjUtbWFpbnQKKzUxNzE1IDI0NGM3MzRmMWQ4ZDFkYjgwY2U3YWU2OTI4MGFhNDk0MTgzN2I5OGYgcmVsZWFzZTI0LW1haW50Cis1MTcxNiBlMWFhOWEyOWVkMTUxZmZiZGYxNmU0NDcwNmIzNjZiYWU2ZGIyZjk3IGxlZ2FjeS10cnVuaworNTE3MTcgOTk1NzQ2N2ZhZjQ3YzNjZTE2YzdhMWIzZjAxNzg5YzBjNzE3Y2Q4MyBsZWdhY3ktdHJ1bmsKKzUxNzE4IGQxYjQ5N2VjMTkwYTFhYjZjZTkzNGUzZjQxYmE4MzJlOTk4ODQzOGEgcmVsZWFzZTI1LW1haW50Cis1MTcxOSBiMzUxNDM4MmMzMjc0N2NjODE0MWU4MTcwZGQ0YTEzNjdkNDdiM2E1IGxlZ2FjeS10cnVuaworNTE3MjAgMDhjYTQ3NmY4YTM0MjRkYzI2M2E3ZTIyMmVhOGQ4ZDM0ZTcyMDE2OCBsZWdhY3ktdHJ1bmsKKzUxNzIxIDk3ZDNlYWI4Y2RhMmY5MjBiNTA0NzlhMGU1ODM0NjU3YjQ4NjJjNDUgbGVnYWN5LXRydW5rCis1MTcyMiA5ZDQ0NzkyMDYzYmJmZGU5YzYzZmI2OTlhOGY4NjFjODIyOGIyZTI2IHJlbGVhc2UyNS1tYWludAorNTE3MjMgNjI3YTIxY2NmMjRmYzQwM2M4Y2I3OWE2NDUzNTQ2Mjk3OThjMzZmNyByZWxlYXNlMjUtbWFpbnQKKzUxNzI0IDMwMGZlNTA2YTBhYTQyMGIwM2NiNmQyMmYwZDQwNDg4ZDcwY2VkNzkgbGVnYWN5LXRydW5rCis1MTcyNSA4MjYzOWMwNTVhNmZhODQ3NTNmNDJiZTQ1ZTUzMWUwNjI5NzQ2ZDI1IGxlZ2FjeS10cnVuaworNTE3MjcgMTU1Y2IxNTU3Yjk3NTBkNDkxMTFiMTBlMzE4OWU3OTAyMjg4NWRiZCByZWxlYXNlMjUtbWFpbnQKKzUxNzI4IDRjODVjZTcwNDI2ZTM5ZjRhYTE5MGQxNDUxOWM0YjFlYTgzZmNjMmEgbGVnYWN5LXRydW5rCis1MTcyOSA4ZGNiODgyZWMzZTFhYWM3ZDMzNmE0MGFhNjRlYzY2NTYxZmMzZGVjIGxlZ2FjeS10cnVuaworNTE3MzAgMzMwMGQ3NDkyZjFhMTNjYTYwNGJmYWEzZmUyOTdhNGYzMzM4ZDBmMyByZWxlYXNlMjUtbWFpbnQKKzUxNzMxIGM1OTFkOTk1NGZiMzkzMzBjMjEzNmIyMjY2MDkwODg0ZmE2NjBhMGIgbGVnYWN5LXRydW5rCis1MTczMiAzZDk2OGI1ZmNhZjliZWU3OGM2YzhmMGQ3MDYzZDkxYmQxNmUwMWM5IGxlZ2FjeS10cnVuaworNTE3MzQgNmE1MWNiODA2OGY1Y2VlZTVhMzAwMDU2ZDY4YmY3ODAwZGQzNzVjOCByZWxlYXNlMjUtbWFpbnQKKzUxNzM1IDVkNmU5NmEyZmU2ZTg2ZGQ1ZjhmNmExMjMyMzk5YTI2ZGQxNzk2YzcgcmVsZWFzZTI1LW1haW50Cis1MTczNiA5ZjBiM2Y5YzcwZGExYzcyMmZiOWJkNTQ5NmQ0OTg1OWY1ZjRmM2Q5IHJlbGVhc2UyNS1tYWludAorNTE3MzcgMTUxMDk3ODFmMDE2OGViZDg1MTNlNGVjOTE2YWUyN2RkZjIwY2YzYSBsZWdhY3ktdHJ1bmsKKzUxNzM4IGVlMGM3NTdjNDk5MGFiYWFiMjA0OWE5MzdjNjJkMGJkMWQxMjZjYjIgbGVnYWN5LXRydW5rCis1MTc0MCBkZWQ3YjY5MGMzMDYzYjBjN2IzOWM0MDQ3MzlmMGNkYWMzNjQ3ZWUyIGxlZ2FjeS10cnVuaworNTE3NDEgY2E5NWJkNTU5ZTcxNjdlZjE1MGNlNWI5NWMyYjc4YWNiZGU5NDc5ZiByZWxlYXNlMjUtbWFpbnQKKzUxNzQyIDZkN2E4YjVlYjU1MWZjNTE5NzEzNmFlODIyZDkyNGUzNzE2ZGUyMzcgbGVnYWN5LXRydW5rCis1MTc0MyA4ZmI1OTc3ODRmMTg1NTExMjVkNDNkOWMwZGJhMjEzZDc4YjMyM2ZlIHJlbGVhc2UyNS1tYWludAorNTE3NDQgNzFhYzc5NmEwMThjNjMxOTllYjY5MzZjMzRlMDUxMGM4MGY5MzdhOCBsZWdhY3ktdHJ1bmsKKzUxNzQ1IDdjNWUyOTM2MjgwM2IxZmYzYWI5ZGZjZTFmYTE0MmRkODU4ZTVmNGEgbGVnYWN5LXRydW5rCis1MTc0NiBlOGI2OGRmOTBiODRlZDVjYTVlNjJhMzBhZTJhMjkyMzM2ZGMxNDc4IHJlbGVhc2UyNS1tYWludAorNTE3NDggYTUyNDg5OTgwYjViNDkzYTVkODljOTlkNzNjMTI1YTI1NjYyYmVjZSBiY2Fubm9uLW9iamNhcAorNTE3NTEgZTQ2NmZmZmRjOWE5MWM1M2M2ZDg4NGVmYTBiZWVlN2M0Mzg4ZTU5OSBsZWdhY3ktdHJ1bmsKKzUxNzU1IDFjNDI1YTg5MGY2Y2NhMzE1NzlkYTBhZmY1NTU0ZTgyYjFmMDU4ZmQgYmNhbm5vbi1vYmpjYXAKKzUxNzU2IGM5Y2MyOWJlNzU1ODc4Y2I2YWI2MDAyODhmNmI3NDY2ODdjZWE0MjQgYmNhbm5vbi1vYmpjYXAKKzUxNzU3IDc2YjhhNzVkYmU2YTNkNzRlMzRiYmY0MDI5OGI0OTU3MGMzYjFkNjIgYmNhbm5vbi1vYmpjYXAKKzUxNzU4IDQ2N2M3MTZlMmY4MThiYjQwNzJhYmZmYjY1YzEzMTcyMWI0ZjliNzUgbGVnYWN5LXRydW5rCis1MTc1OSA4YTIwYzk0ZDlkOTllMjJiOTQxMzE1NTg5NzQxYmIxMTBhZjVlOTkzIHJlbGVhc2UyNS1tYWludAorNTE3NjAgMmE3MzBmYjZmMzRiNDMxYTc1YmM0Yjg3ZDM1MDFiMWE4YTU5MjNhMiBsZWdhY3ktdHJ1bmsKKzUxNzYxIDlkZWIwOGVmNGJhMWRmMzUwZTUwNjZiNGIxZjhlNzkwYmY4NGQ2OTEgcmVsZWFzZTI1LW1haW50Cis1MTc2MiA5OGNkN2IxNjY2ZmI0OGNmNTFmMWUyZDFmMGU2MmQwNWQ0NzgzNTA4IGxlZ2FjeS10cnVuaworNTE3NjMgNmRjYzY0ODc5MzQxMzgxYmIxM2U2NzUyZWMwZjMxODA1NWYzYTExOSByZWxlYXNlMjQtbWFpbnQKKzUxNzY0IGFlNWI4YThiOTExZTI5ZDljMGIzMzUxYjUyYzcwZjM2NjRkM2Q5MDMgcmVsZWFzZTI1LW1haW50Cis1MTc2NSAzMDdhMTFjMDg1YjQ2MTBkODZlZjkyMmQyM2UzN2YxYjg5NjExMDQxIGxlZ2FjeS10cnVuaworNTE3NjYgODM5NGQyZTliZmQ2N2FmNGViMDQzZjgyYWE5NmUyOGMxNmY5OWE0OCByZWxlYXNlMjUtbWFpbnQKKzUxNzY3IGI4ZmJkMzIyNzYwYTliYjE1YTBhMzNmMzBlMWFiNDFhMGUwZGFhNTEgbGVnYWN5LXRydW5rCis1MTc2OSBkNzE5ZmFiNzk2Njc4NzZjZDE0NTY1YTQyN2Q3Njk2MGZkMjhmNTljIHJlbGVhc2UyNS1tYWludAorNTE3NzAgY2I4ODNlN2UwYjdlMTcyY2Y3ZjE0NTFkZjA0ODljZjU3Y2M5YjI1YyBsZWdhY3ktdHJ1bmsKKzUxNzcxIGM5NGYzNzA1NGYxOTcwZjZmYzE2MmIxMjUxZWVmMjU0MDg1OGUyM2MgcDN5aworNTE3NzMgN2EwYWQxMTBlOTFlNzkxNjMxZGY4ODljMTJmNTVmMDc2Yjk4ZjNiZSBwM3lrCis1MTc3NCAzYjc1ZWRjYzRhNmY0ODdkZmM3Y2FlZTExZjdiZmM1Njc0ZTRmMjUxIHJlbGVhc2UyNS1tYWludAorNTE3ODUgZGNlMTdiNWJkMzg3Y2EzYmE3NzhlNWQxYjk3NjY0ZmQ0MThiZDQ0ZCBsZWdhY3ktdHJ1bmsKKzUxNzg2IDgxYjQ2N2ZlOTJlZTUwOTY0YzUyOGZkZWUwZjA5ZDM3NTk3MWU4YjYgcmVsZWFzZTI0LW1haW50Cis1MTc4NyA0YWE5ODQxNDFmZWZjZmI2N2I5ODU3NWU4MmQ2YjBkZTE5N2Q3NWJlIHJlbGVhc2UyNS1tYWludAorNTE3ODggMjUyN2E0ODM1MDk5MjkzYjlkOTAyYjY1NTg1Nzk3MWI5MWEyNTkzOCByZWxlYXNlMjUtbWFpbnQKKzUxNzg5IGNkM2I3ZjI1NjQ5ZDRmMzc5NGYwMDBiN2MwYzRmY2YxNDIwYTIxMTkgbGVnYWN5LXRydW5rCis1MTc5MiA1NmU3ZDY5NTI5ODUxNTVjYmZmNWYwZGVkNDU5NGJkY2EyODVlZTg1IHAzeWsKKzUxNzkzIDVlNTAyZGUwY2VkYWNmZDVlYWFmOTNlNjVjNzEwY2ZmMDg0ZmVjOTkgcmVsZWFzZTI1LW1haW50Cis1MTc5NCA2ZDQ3YzhiYzA1MTI3MWI0OTk0OTBlOWM3Zjc4MWQxZWRjNzBlYWMwIHJlbGVhc2UyNS1tYWludAorNTE3OTUgNmU2YmFmMWFmYjEyYzA1NjAyNmE4ZGQ3NmZkNzAzNjQyY2Q2NTQ2ZiBiY2Fubm9uLW9iamNhcAorNTE3OTYgOTQyMDQ1NDliNTE2MDkzZDczZDk1NTJkMzVkMDExNWU0YjQ3MDU0ZiBiY2Fubm9uLW9iamNhcAorNTE3OTcgMzYzZWY4MDRhMDk2ZjUxODliYmYyYzljYWE3OTZjNDRkMWIyZWVlOCBsZWdhY3ktdHJ1bmsKKzUxNzk4IGVmMGY0MmJmMmEwODUzNTBjOTM5M2IwMzA1ZjM2NGEyMzRhOTU4MjkgbGVnYWN5LXRydW5rCis1MTc5OSBjNjQzYjAzMWQ1MjZjODM1NzVkMWU3MzIzNDc4ZmMwMGYxYzVmZmViIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE4MDAgZTgzNzIyYWE3OGRkNDc1MzE0NzlkYzIzNWQ5YTM1YzlmNjIxNWY4NyByZWxlYXNlMjQtbWFpbnQKKzUxODAzIDM4YmE5NTI0NzgzYTFlYWJlOGY2NzdjMDA3ZjZjZTU3OTdjNGIwOTEgbGVnYWN5LXRydW5rCis1MTgwNCBjZjlkM2IzODI1MWY5MmFkNmJiMDZjMzQ3YWY3MjNkMWNlNjY0NDFmIHJlbGVhc2UyNS1tYWludAorNTE4MDUgMWVlYmI2NDczMTBmYjVlY2ZhY2M1ZGViNzVjNmQ1MWViZTE3MzkzNCBsZWdhY3ktdHJ1bmsKKzUxODExIDQwNTgwNDE5MmE2ODI4MjVkZjgzNzJlYWYzY2ZmN2M4YTMyZTdkZGQgcmVsZWFzZTI1LW1haW50Cis1MTgxMyBjM2EzNTNhMDcxNDY4YjU4YTcyMWY5ODM3YzkwMTUxYjA2OGNiZWE3IHJlbGVhc2UyNC1tYWludAorNTE4MTQgNDFjMWU1NDNiOWU5Njk3NjE0NWQ1MjI1ZGM4NTE1ZTdjMjJlZmU5YiBsZWdhY3ktdHJ1bmsKKzUxODE1IDRlODE5NzRmN2UxNDAzYzc0YTc0ZWY2NjljNTE5ZDRiZjllNTU3MGYgbGVnYWN5LXRydW5rCis1MTgxNiBkOTY3M2I2MmNlMzVkOWQwZDNiZjMwYTYyYmQwNGVmNzdjYzY1MThlIGxlZ2FjeS10cnVuaworNTE4MTggNDM0YWZjNzI4ZjZmNzRhZjkwNTAzMTRkYjEyMTg2ZTZlYTAzODM1NiBiY2Fubm9uLW9iamNhcAorNTE4MTkgYTA2NWI1NWUxZmIxZDA2ZjA2ZGQ1NWU3ZmZlOTMzODJkYzJkMjY5MSBsZWdhY3ktdHJ1bmsKKzUxODIwIGQ1YzZmZWEyNTJmMDQ4ODI2NWU3N2U4MmNmYTRmZTQxYTM4OGQ5NGYgbGVnYWN5LXRydW5rCis1MTgyMSBlYzZmZDljZWJkYTE4NTg3YjYwNmQ2NWExNmJmNDZkMWEwYjhmMTAwIGJjYW5ub24tb2JqY2FwCis1MTgyMiA3MDEwOGM2M2M2ZTUwZTgzN2Q2OWNkYTZmNjA3NDcwYTFjOTBkZGMzIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE4MjMgMzIzOWY5M2NmNGQyM2VkNjlmYzg4MTcyOTRjMjgyZTAxNzRlZmNhNCBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzUxODI0IDI2NTNmODMzNTg3NzkzODdkMWRkNDExZmY2NzYwNTllMWRhZjkyYzYgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MTgyNSA4OTFlMzMyY2QyZDZhMjY5YzBjYTJiMWQ0OTAzMDNjMmZjMWIxMTNmIHJlbGVhc2UyNS1tYWludAorNTE4MjYgMDI5OGNjNmMyOWNkNmVjZGFjZDU0ZWMyNGUxMTcwMDYxZThjM2ZhMCByZWxlYXNlMjUtbWFpbnQKKzUxODI3IGMwMzE0Yzg5MzZlNTExNmQzYmJiYjJmN2RhNWUwMGM2NjZiOWMxYmYgbGVnYWN5LXRydW5rCis1MTgyOCBkNGU1M2U3MGNkNzgyNzRkMDUzODYzYzhmNTZiYWE1NjBhMmI1ZTJkIGxlZ2FjeS10cnVuaworNTE4MjkgN2JlMzBjYmZjOWIyODNhYTM4OGUwNzRhMDhkZmZjYjQ3M2IyZmRkMSBsZWdhY3ktdHJ1bmsKKzUxODMwIDUyN2EzZDAwNTJjOTAxMTIxYjU4YmFhYjk2MDhlY2VjMzgxYmVkYjQgbGVnYWN5LXRydW5rCis1MTgzMSA2YTgzYjI3NDBmYzdjY2RhMDNkOTYxMGUzY2QwYjg5NDI5MzM5MWM5IHJlbGVhc2UyNS1tYWludAorNTE4MzIgNDA3MzVkNWY4YWNkYmU3Nzg4MWRmOWNlYmQyMTZmYTdhODU5ZWVhYyBsZWdhY3ktdHJ1bmsKKzUxODMzIGI1Mjc1ODgyYTNlMGQ0YjBjYzQzMTQ3YjMzM2ViMzg3NDI2YTkwNzggbGVnYWN5LXRydW5rCis1MTgzNCBhNGEyMTRiZGY4ZWFjMGVhMGU5YzM4ZDFhMmM4OTQ3NGFkNWM4YjQ3IHJlbGVhc2UyNS1tYWludAorNTE4MzUgNmY2ZTU1ZmQ5Yjc5MWMyYTdkY2FkODg1NjE3NTFlNzEyYWYzNTEwYiBsZWdhY3ktdHJ1bmsKKzUxODM2IDBlYjNmMGY1NGEyNjc0ZmVmNjgwYWI1MjkxYWRlMWI1ZmI5NmVhYjkgcmVsZWFzZTI1LW1haW50Cis1MTgzNyBjMmZkOTc4ZGYzOTIyNDI1ZjVmZTg3OTFkZDQ5ZGE1NWQwOTMzMDdmIGxlZ2FjeS10cnVuaworNTE4MzggOWU3ZGM2NDMyYTQ0NjViNjM1ZDc3MWU2ZTgyYTZlMThjYzcxMTRkNyByZWxlYXNlMjUtbWFpbnQKKzUxODQxIDgwNGQxNzFjMmNiNzE1NWM2OTMyMmU3YTk2ODc1MjI4YzExN2MwNmQgaW50X3VuaWZpY2F0aW9uCis1MTg0NyAwZmZlN2Y5MmFiMmZkZWZhMmY4ODVhMmQxOTliOGVlNjQ1OGI2ZmFkIHJlbGVhc2UyNS1tYWludAorNTE4NDggMzk4NmIzNmI4NDk1MjMzNDBkMzA5YzljMDg1Y2YwNjVhZDZjMmJkZSByZWxlYXNlMjUtbWFpbnQKKzUxODQ5IDVlZjA0MDZlNmQ1MjRjNmNjZjY3MWIyODQwOTI4ZDU3NTUzOWQ2OTQgcmVsZWFzZTI1LW1haW50Cis1MTg1MCBlNGU4ZjBhNGVkYTRmZTI4YmM3NTFhY2RkYWU5NmMxNTNhN2Q3YjE1IHJlbGVhc2UyNS1tYWludAorNTE4NTEgNTRkNGZkMDg4Mzg1YzdmZGMxZTQxZjY0MDZjZDU1NzRjZjIxZjJiMSByZWxlYXNlMjUtbWFpbnQKKzUxODUzIGQwNmIyYjQyZDEzODgxNmZlYjg5Mjc3NTA4NTkyOWE2ZWQzNTUxZjUgcmVsZWFzZTI0LW1haW50Cis1MTg1NCAxNWFkNmJhMmUxYTU0Mjc4MWJlYWJhMTI0MDNkZjdjYjc0MDFlMmE3IGxlZ2FjeS10cnVuaworNTE4NTUgNjZkMDM1NzAyOWI1NWFjNjE2OGY5YTMwMTgzOTk3ZTdmMjU3OGRhOSBsZWdhY3ktdHJ1bmsKKzUxODU2IGMwYTA3MWRmNDYyMWE1Nzk0ZDQ1YTkyZTRhNTk1MzZkN2NiM2U1NmQgbGVnYWN5LXRydW5rCis1MTg1NyAwZjdlZTk5MjViN2M0Mjk2MmI2MTU2NGJkMGQ0NDlhMzNjYTIzZmJiIHJlbGVhc2UyNS1tYWludAorNTE4NTggMGJhYzQwZTRkMGM2NDNhNzhjMThiNDZmY2IwZjQ4Yzc4NzFhZDFmZCBsZWdhY3ktdHJ1bmsKKzUxODU5IGM1YzlkYmVlYWZhNzZhMWRkNGJmMjZmMjI2MDFjYWQ2ZmRkMzcyNGMgcmVsZWFzZTI1LW1haW50Cis1MTg2MCBjYzNjYjNhODIzN2VhNTQ1ZGI5MTdkODRjNDlkOGEwYTVlMTc1Y2MxIHJlbGVhc2UyNS1tYWludAorNTE4NjEgN2Q0MGQzN2U0Y2MzNWQ2MTkxOTQwODJkOWY4MjM5MTRmYzIyZjdiNCByZWxlYXNlMjUtbWFpbnQKKzUxODYyIDI0OWZkYjU5ZGM1MmY5YjUzYTUyOTJhZGViMzM4MmQ1NjdiOTA5YWEgcmVsZWFzZTI1LW1haW50Cis1MTg2MyBkYzUwZDRhYzk1ZDkxZmMxODAwMTg3MDQwNDE3NTdlOWYyOWQzNTY4IGJjYW5ub24tb2JqY2FwCis1MTg2NCA5NWNmMzFlNjkzMzUwMWYyZDNmMjk2ZGJiMDdkMjY1MTEzMGIzZjhhIGJjYW5ub24tb2JqY2FwCis1MTg2NSA0MTc1MDFlZTNlODZmZmFjZWJkZjBlNmE4YjJkMWU5NzQ1OTRmNWNkIGxlZ2FjeS10cnVuaworNTE4NjYgZTU3ZDhhZTQ1NjY5ZjRkN2UyZDRjZTNkN2Y4YTYxZWVhZjJlMTZkOSBsZWdhY3ktdHJ1bmsKKzUxODY3IDU0YjgyYmQyNTY5M2U5ZDdmMmRmNjhhMzhmMTllZDUyOWQ5ZjhjODYgbGVnYWN5LXRydW5rCis1MTg2OCA1MDQ0ZDA2OWI1MzI5MmVlMDMwZDE2M2YxNjNmMGU4MmRmNjhmYWIwIGxlZ2FjeS10cnVuaworNTE4NzQgMTBlYjFmNmIzMDgwOTM0MjYyN2NhMTQ0ZTAwM2FiZmRmMjRjMzlhMyBiY2Fubm9uLW9iamNhcAorNTE4NzUgMGJjMzljMTMxOWRkYzAzN2FiMmFiNDA0NDlmZjNjZjgyOTJmY2FhZCBiY2Fubm9uLW9iamNhcAorNTE4NzYgMDdhNDRiZmY5NjdmNTgyNmMzNTEwODFkNmNlZGI3MTI5ZDEzMjM2YiByZWxlYXNlMjUtbWFpbnQKKzUxODc3IDc0ZTQyNGMxNzhmNDVjMjM5ZjE5NTlhZTQ1NmQ1MmFlNTc5NzU2MjcgbGVnYWN5LXRydW5rCis1MTg3OCAyYjA1ZWM1ZGY3Nzc3OTdkNDhlZDMxYmIwZDA1NjgzOGU1ZmU0ZTNkIGxlZ2FjeS10cnVuaworNTE4NzkgYTAyMzVkNDM1ZWQ0ZTcyZDQ5YzVhNTNmMmMxNTdmZjgyNzViMjVkMiBiY2Fubm9uLW9iamNhcAorNTE4ODAgNzUxNzljMmVjYWMxYzViMGYzNWM0Njc3MjE0MjliMDI5YTVmZGFiYiBiY2Fubm9uLW9iamNhcAorNTE4ODEgZGFkYTM0YjRkNmI2YTRlMmQ3YTg5ZjBhYzAzYzAwYzNjNzQ1YTIyNCBiY2Fubm9uLW9iamNhcAorNTE4ODIgMzRhYjA1Mjc0NWVjMmE3MGU0YTIxY2I3NjBmNWFhMDQ1M2FlOGYyNiBiY2Fubm9uLW9iamNhcAorNTE4ODMgMGVjZTI4Y2I1YjllNzNlOGNmMGY2NWUyM2VhM2EyNjk1NWJhZjgxNSBsZWdhY3ktdHJ1bmsKKzUxODg0IDg5OWQ0ZGMxMmMzNzhkYmUyNWI2ODljNDUxZWI1NDVmZDY4YzE0N2UgcmVsZWFzZTI1LW1haW50Cis1MTg4NSBiNjczM2EzNmVlY2RmNjU1NmE4MzhjMTdhNDNlN2VmNjI0ZDNmMTIyIGxlZ2FjeS10cnVuaworNTE4ODYgODczNzU5YjBiMTI2MTZhODA0ZTAxZTlmYWFmNDczZmJlZTJmNmZkZiByZWxlYXNlMjUtbWFpbnQKKzUxODg4IDRmMzZjNDE1OTZiMThkMGRmZjc5Y2NjMWQ0ZjFjNTkxYmI0ZjRhYzIgcmVsZWFzZTI1LW1haW50Cis1MTg4OSAyZTk5NWYyNDRkNmI2MmM5NDA5MDllYzAyMWM3N2JkYmRkOTI5N2FmIGxlZ2FjeS10cnVuaworNTE4OTAgMmEzNDk4ZDg3NDFiNDJjNTFhYTRiMzc5ZDQ2YTM0YTRhNjZlYTQzOCByZWxlYXNlMjUtbWFpbnQKKzUxODkxIGY5YzlmOGEwNWE4OTRiZDE0MDYyY2IwNDFkZDUwMmNkOTkwMTMzZTEgbGVnYWN5LXRydW5rCis1MTg5MiA4ZDNiNzY0MzU5OTIxYWNkNzMwMTJmODdjNzE0Y2I4NzJjNTEzNzU4IGJjYW5ub24tb2JqY2FwCis1MTg5NiAzMzBiZGEyNDA1ZWU2YzY4MjE4M2RjNWVhYTUzMTBiODg5MjMwNDAzIGJjYW5ub24tb2JqY2FwCis1MTg5NyAxNjYwZWFhMGNjMjY2MzMzMGMzMTM4YjJmY2IyYjFlZGJlMjI4ZTQ4IGxlZ2FjeS10cnVuaworNTE5MDEgZjVmNGQyZmRiNjJjMjlhZjk0NDAzYTIxYjczZjRiNGMxYTdlNDBiZSBiY2Fubm9uLW9iamNhcAorNTE5MDIgZDQzZDk0MjJiN2FjNzlmM2I2ZTFjZmZkZGJmY2I0MzEwNzUzYjk3MCByZWxlYXNlMjUtbWFpbnQKKzUxOTAzIGNlZGVhOWUyM2E5NTVjNzU1OWMyN2FkZTMyZWM0MGZkMDAwN2RlM2MgbGVnYWN5LXRydW5rCis1MTkwNCBiYjllOTE0ZWRlMDUxZmFiMDBiMjJjZjAyODhmZjRjZjcxNjY3NWYyIGxlZ2FjeS10cnVuaworNTE5MDUgNTkwYTk4YTcwYmY5ZDk0NWRhNmMxZjZjNGFkNTNkNDMwOGRhNWMwOCByZWxlYXNlMjUtbWFpbnQKKzUxOTA2IDZiMDFhOWM0NTVkYmQyNjVkZGVmYjdhNzU4YmJlMzUyYzNmNmM0NzMgcmVsZWFzZTI1LW1haW50Cis1MTkwNyA3Njc5NjJmODg4MzQ2MDlmOGU4OTQ4MjdlODhkZmI0NDIxMWExOTRhIHJlbGVhc2UyNS1tYWludAorNTE5MDggYzEwYTcxY2YxNmU0NzE0MjVlNmQ3NTY0ZTNmN2E2NDhmMTRiNzAyZSByZWxlYXNlMjUtbWFpbnQKKzUxOTA5IDdmNWY0NmI1NjYxMWMxNTNhZWM3YjA1M2MwMGYxZDg5MDNmYTFlZWQgYmNhbm5vbi1vYmpjYXAKKzUxOTEwIDIwMTQ3NDE1ZTk3ZjliMGNkOTUxYzFlZTVkNjhhZjI5YTIzODg4ZDMgYmNhbm5vbi1vYmpjYXAKKzUxOTExIGNlMjQ3NzhhNjQ5ZjFhZTUzZjVkMDA3NTgyMTQ0NWJhMjQ5MTViZjUgYmNhbm5vbi1vYmpjYXAKKzUxOTEyIDc3NTIzNzgwNzdhNTM3Y2IzY2QyYTRjMGZhOTc1MjdiYzcxMDYwMDggYmNhbm5vbi1vYmpjYXAKKzUxOTEzIGI0NDcwYTU0OTkzYTM4N2M1NzliZjY3OWIyM2ExYzU0NjdlZDlkMzQgbGVnYWN5LXRydW5rCis1MTkxNCA3ODM5NDFhMDBlOWUyOTUyMjkxYzA4Yzg0MjdlNjlhZWNiZjE3ZDZiIGJjYW5ub24tb2JqY2FwCis1MTkxNSBlNzBhN2I3MTk3YjY4NDFkNzgzNjcwODBiNmVmNjMwMWYwYWY1YWQzIGJjYW5ub24tb2JqY2FwCis1MTkxNiBiNmVlNGQzNTQxYzBhNTI4ODEyMWQyODhhZGZkMjNhOTgxMjM2NjgwIGJjYW5ub24tb2JqY2FwCis1MTkxNyAwOTRkYWU0OWFiZWJiMzRkYTM4YzNiMDY0M2JhODA3NmM3OWNiZjI4IGJjYW5ub24tb2JqY2FwCis1MTkxOCBlMDM2ZmM5YzY4MjcxNDc3Yzk2NWZhNjkyM2JiMmVlZTgxMmIzZjhhIHJlbGVhc2UyNS1tYWludAorNTE5MTkgYmM3NzJmYjUxMzkyOTVkMTU4YjcyNzQ1NDZmOGFkNmRjZmNiMDdkNiByZWxlYXNlMjQtbWFpbnQKKzUxOTIwIDcxYjgwMjQwYWMzZGRhZTQxOTJhMmM1MGExY2JjNTRkYjZjZGRmYmIgbGVnYWN5LXRydW5rCis1MTkyNiAwMTcxMTA4YWI1MTU1OGViMDZiN2FiNGU3M2QwNmY1MWM4MzM4M2Y1IGxlZ2FjeS10cnVuaworNTE5MjcgNDg4OGQyZDRkMjkyZWMzOGQ1ZTNlOTQzMTkxMzkzZTA3Y2YzMmNjNyBsZWdhY3ktdHJ1bmsKKzUxOTI4IDcxZTBmM2ZjNTdkYTc3OGY0ZmUwODQ5YjY0YTY1ZWFhNjExZGQ1ODUgbGVnYWN5LXRydW5rCis1MTkyOSBiMzAzZDJjMmM2YzU2NDM0M2EwMzY3ZTBmZjhhNmFjZTdhYzU5NzM4IGJjYW5ub24tb2JqY2FwCis1MTkzOSBlYTI0YTljOGVkYTI1OGI5M2FlZjU5MTNjMjg4M2RjNDM1NmRkMTJmIGJjYW5ub24tb2JqY2FwCis1MTk0MCAwMDMxZmMyZTA1ZTI4NmUyYmFmODkzN2U3YjMzYzcyYmVlOTdlMmVkIGJjYW5ub24tb2JqY2FwCis1MTk0MSAwMTUxYzA3YzUzZTUxMDYyNzMyYzAzN2UyNTY0NWJlMjNmMGRmN2E2IGJjYW5ub24tb2JqY2FwCis1MTk0MiBkZTQ5MjRkMDM5MDNmNzRjODU5ZmMyMzA3ZWJiMmRiM2JmZTRjOTA3IGJjYW5ub24tb2JqY2FwCis1MTk0MyAxZjQ4OTdmNWZiMmJlYmE2MTg4ZjRlMjM0ZTAyZjRiMGYyOGU3ZGExIGJjYW5ub24tb2JqY2FwCis1MTk0NCA0M2JhZjZiYjBmOGIwYjRlNzNkMGUwMmU4ZWJlMGZiM2VlZDQwNWIyIGJjYW5ub24tb2JqY2FwCis1MTk0NSA1NmYwZWM1MGQ3MzcxNzQ4Yzk4OWU2MWNkOWIyNmI1NzBlNTIzOWUzIGJjYW5ub24tb2JqY2FwCis1MTk0OSA5MzYyOTcwNDdjMTc5ZWQ4Nzc5ZmMyM2IxZTZiNDM2ZjMyNDZhMjVjIGxlZ2FjeS10cnVuaworNTE5NTAgNjk1MzBhYTIxYjhhNjQ5ZmY3NDcwYWUxNGY5ODFjM2NhZDNjMmE2NiBsZWdhY3ktdHJ1bmsKKzUxOTUxIDM1YmYxNmU3ZjExY2RlMTZjNDVkNmMwN2YzOGM1MzI5Y2FhODUyYWUgcmVsZWFzZTI1LW1haW50Cis1MTk1MiBlZmY4OGM2YWFhYzM3NDc2ZGNiZDljOTc3OGNhNjExZDg1MmE0NjkwIHJlbGVhc2UyNS1tYWludAorNTE5NTMgZGU0ODY2ZDQ0ZjEzNzc1YzVmZGEzMmQzZmI3MTljYjNiYjU3MzE1NCBsZWdhY3ktdHJ1bmsKKzUxOTU0IDdmNmI0ZmM2N2JiNmIzZjM5MTc5ZWI4MWI4NDBhMGExNTk5YjMxZDQgcmVsZWFzZTI1LW1haW50Cis1MTk1OCBkZjk4ZDk3MzEzOTBmMTQ3NjgxN2Y5NDQ5NDQ4NWY3YWRjMGEwZWJjIGJjYW5ub24tb2JqY2FwCis1MTk1OSAwODlkZGYxODc3Y2MwNzhkNjE0NjZkMTQyZGRhMTJkOTU0YTk3YWUwIGJjYW5ub24tb2JqY2FwCis1MTk3MSAyNGY5YTEzMDg0YjAxNzQ3NDQzOTJmZDhjMDdiYjYzYjc4OGE2ODVkIGxlZ2FjeS10cnVuaworNTE5NzIgYjhjYjcyMDEzNzljNjc5NTBkZTExYWVmZDNjMDMxMTExNDQzNDFjYiBsZWdhY3ktdHJ1bmsKKzUxOTczIGFlYTE5YzJhNDViZmM5NGFlMTYxNTc5M2JhNjBhYzk0OTBmMzRkMjQgdGhlbGxlcl9tb2R1bGVmaW5kZXIKKzUxOTc0IDI2NjE4NTI4ZmEzYjc2NGIwOGQ2NzgxYjNiODMzNTFiYTY2OWQ1MzEgdGhlbGxlcl9tb2R1bGVmaW5kZXIKKzUxOTc1IDk0YThjZDU4ODhlNzBiMDcwM2I1NmQ2NGIxYTExNDQxMzQzZDQzOGQgbGVnYWN5LXRydW5rCis1MTk3NiAwYjYzYzI4NTkzNGZhMDUwZmJmYjRhYjY3YjdmMmZiMTIyYmU5OWU3IHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk3NyA2OWJlMDE1YTRiNTFjMDNkMjQ5MGE0OTU3NDNmM2Q4OGM5YWY1ZGY0IHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk3OCBjNzgxYzk4MGM5YTBkZDg4MGI5MzFkZjFhNWM4ZmVjMDQyYjIzNjlkIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk3OSAwNzlmOWJlYjFkN2ZhMzU5MjJiMjg2ODBjY2RjYTY3NTFlYTAwYjYyIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4MCA1ODcyYmFiZmY2Mzg0ZjQ2ZTUzZTUzOTk0ZDgxZGZlYmMyZDYyNzhmIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4MSBlM2M1ZjNiNTkyNzFmMDJlYWYwYzM2YzkwODg3N2ZkZjYzZThkMjRjIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4MiBlMjc0MzIyMjU4MWQyOGRiZTlmYThmYjFiZjdmMDQyMDAwZWI2ODFlIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4MyA3NDM5N2IwMDk5MTQxZmNhZmQ5ZWMyMmNhZjdlZGU3OWY1ZWMzNjE1IHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4NCBiOTQyNzhlMWJjYjMxNDFhNTAyZDczNjM1ZDQzNzE4YTI5NjYzNDU3IHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4NiAwNGM5OThmZjI4YjdkNDFjZDMyOTc2NDcyMWU4NTYwZDRiNGJmODVmIGxlZ2FjeS10cnVuaworNTE5ODcgY2FiMDU2OTAzYjNkZDI2NDkyZjA2ZWE5MzI4ZmU1YTMzZjk0MGYzNyBsZWdhY3ktdHJ1bmsKKzUxOTg4IGMyMGJkNzRhYzlhNjdkZGViMjI3NWYwNDQxODA1YWJhNmVhYTI3NjUgcmVsZWFzZTI1LW1haW50Cis1MTk4OSA0NzllMzg5Y2I0NjJmOGRjYmE4ODVjZWJjOWEwMjY1ZWFhNzE4NjQ3IGxlZ2FjeS10cnVuaworNTE5OTAgN2Y2ZGRmNTU1YzEyMGJjOTM1YTgyOWU3NTBjZGYxMWRkMGZlMzMxOSBsZWdhY3ktdHJ1bmsKKzUxOTkxIGQ5OTc1MzMxNDQ1MzM1M2RkZWViOTk2ZmI3ZDA3NTcyMjk5ZGQ4MDAgbGVnYWN5LXRydW5rCis1MTk5MiBiNTI5MmY5Njc4NzdjYzM0OWExNDM1OTJhNTViY2YxNTNhMmY5MzZlIHJlbGVhc2UyNS1tYWludAorNTE5OTMgMjViY2RmM2NkMTk0MjFkNDM0NDdlNGVmNmIxODQ4OWNiMDY4ZGY5OSBsZWdhY3ktdHJ1bmsKKzUxOTk0IDM0NzhjMTYwMjA3Yjc5ZDZmOGMxODVlNDIzMGM2MmU4MjUwMjgyN2MgcmVsZWFzZTI1LW1haW50Cis1MTk5NSBlY2FhZmMzMmM1MDAwNjMxNDQ5YTYwMWI4NDg2MTQxYWJhZjYxODVhIGxlZ2FjeS10cnVuaworNTE5OTYgY2NkZGIyMjYxMWRjNmYwZDU2MDBjZWIxMTVjZWY5ZjAyNDBhODcyMiByZWxlYXNlMjUtbWFpbnQKKzUxOTk3IDYwM2NkZTVlZDFlYmM1N2Y2OTU5MTljMjc5YWEzODM0YjMyNjRlY2IgcmVsZWFzZTI1LW1haW50Cis1MTk5OCAzYzdmMTg4MWU4MmE5NmFlNDY1YmMwMmFmMmNlZTllYjJmNDRhMWE5IHJlbGVhc2UyNS1tYWludAorNTE5OTkgZGVjN2Q5OTNiNjhmMjQxNDlhZDg4ZjE5MjgyZWVjMmUxZWFiNTZiNCByZWxlYXNlMjUtbWFpbnQKKzUyMDAwIGY4YTdkZmJmODFkMDg5MjJiMTA1Zjc2ZGUzMDM1OGY2MDYzODAwNDcgbGVnYWN5LXRydW5rCis1MjAwNSA3OGM1YTAzOWZhM2E2NDIzY2UwODBkMDQ5YWI0OGEzNDA1MjI4ODQ1IGJjYW5ub24tb2JqY2FwCis1MjAxMCA3OGQ0ZTVlNDcwY2Y4MjQzYTljNjdhMDdjODVmYWVhYWI2YmVkYmQ3IGJjYW5ub24tb2JqY2FwCis1MjAxMSBiMDcyMjI4Yzk1YTIwNDA1MDEwN2VhMjI1OTg0ZDFjZDg1YWIxMGM2IGxlZ2FjeS10cnVuaworNTIwMTQgNzRkY2ZkMzZmN2M0YTM5YjI1NjVhOGEzZjJkMjY5ZDE5YjU2YzI1ZCBsZWdhY3ktdHJ1bmsKKzUyMDE1IGU2YTRlMDY3ODk5M2NlODZkMGRhN2E4YWZmMzA5ZDdhYTYwZTJmYjQgcmVsZWFzZTI0LW1haW50Cis1MjAxNiA5MzQ3YzJiNDUxYmFkOWIxZGEzZmJhMjdiYTY0NWIyYThmZjUxMzBiIHJlbGVhc2UyNC1tYWludAorNTIwMTcgNmZiNDZlODdkNWY5NGM2MGU1NDhmYzE0M2M1ODRhMDRkYTU0MWExYyByZWxlYXNlMjQtbWFpbnQKKzUyMDE4IDNiNzBkYTllZTM2ODc1OTMwMmU3ZGJjNTQ3YTc2OWU3MTU1MDIwMGYgbGVnYWN5LXRydW5rCis1MjAxOSBhNTIxNDJiYzE1OGY2NWQ1ZTM2N2NiNmI3MjQ3ZTdkMDA3NWU4MjgwIHJlbGVhc2UyNC1tYWludAorNTIwMjAgNjhhNTZhMTVkNzU1OTMzNmM2YTViZmU1ZjMxMGE3ZmExNDY0ZGRkZCByZWxlYXNlMjUtbWFpbnQKKzUyMDIxIDk0ZGZiYjlkYWM1NzhiMDM3ZGZiZDI4NGQ4MTI0NmQ2NzQ1M2NmYzIgcmVsZWFzZTI0LW1haW50Cis1MjAyMiBjNDlmMDJhNTBjYWRkNmY4MDFjYjVlMjdkOGVhYTNiZGNlYjY1ZjZhIGJjYW5ub24tb2JqY2FwCis1MjAyOCAxNjk2ZDg1YmEwNDM1NjQ1YTJhY2Y0NzU0MjRlZDg5Mjk1OGM4ZTE2IHJlbGVhc2UyNC1tYWludAorNTIwMjkgYWYzMTg2YzY0MDkyMDdjNThjZTdkMjUxNjE5MWNkOGQ1MWZhNjU4NCByZWxlYXNlMjQtbWFpbnQKKzUyMDMwIDg4NGQxY2I3MDIyMTViYjdkMDJkNjQ2NjcxYjg1MzE1MzE5NmY4YzUgcmVsZWFzZTI0LW1haW50Cis1MjAzMSAxMjg2OWFhZTlmNmQ5ZWRmYmU4YjY4YjQyMmYwMWIwNjY1ZmM4ZjQ1IGJjYW5ub24tb2JqY2FwCis1MjAzMiBmOTBiYTMwNmMyODdhNDhkYjAxMDM1OWQyY2FjOWQ5MWRiYjhkMzkzIGxlZ2FjeS10cnVuaworNTIwMzMgMzUwNzc3NWY0ZWQ0MWQ1NmEyYTdhODc4YWZlZDI4NjhmNzYzMWZlZCBiY2Fubm9uLW9iamNhcAorNTIwMzUgZmIyODllZTFjZDYwN2IzNzlhMDFlYWMyNjA4ZTk2OTNhNDllNGFlMCByZWxlYXNlMjQtbWFpbnQKKzUyMDM2IGFiNzllZDBmOTI4MTc1ZTE5MDc1MjIxYTY4YmQxOTYwM2JjY2VlZTUgcmVsZWFzZTI0LW1haW50Cis1MjAzNyBjYzE4ZmRhZDEwOGI3ZDcyMDA3OTdlYjA1ZTFjNTBjMzc5MDgxMTA2IHJlbGVhc2UyNC1tYWludAorNTIwNDAgNGYxMTc0NWM3ZTVmY2U4ODgxNDg2Y2M4ZmY2NDdmYzM1ZmM5YjgzNyByZWxlYXNlMjQtbWFpbnQKKzUyMDQxIGMxMWNhZTJiOWE3NWYyYTgxNDFkODdhMDE2NTAzODgwMTdkNDlhN2IgcmVsZWFzZTI0LW1haW50Cis1MjA0MiAyNjMyYzlhZjY0YWJiMjUyNzYxNGI0Y2ExNmFjYjg5MjhmNmZjNWM3IHJlbGVhc2UyNC1tYWludAorNTIwNDMgMTVkZGFiZTYzZDk1MmM2N2IzNTNhY2UzZDIyODM3ODMwZmJlNTZiNSByZWxlYXNlMjQtbWFpbnQKKzUyMDQ0IDFlNWYwYjA0NjZkOGRmMGRiYTljNGYwMDE2MTRlNWE2NTAzYjg4YjEgcmVsZWFzZTI0LW1haW50Cis1MjA0NSA5ZTBmYjk1NDc5MWVjOTM0OTJlY2E3YWUyMmZmOTM4Y2NiMTUzMjVjIHJlbGVhc2UyNC1tYWludAorNTIwNDggMDU4NjE3NDllYWNkMjExYWZiMmNmMTNhZDlkMGFkM2ZmODA3ZGZmMSBsZWdhY3ktdHJ1bmsKKzUyMDQ5IDAxYzAzYTcxMWIxNWNiMWVkMDFmZDNmMGQzMTRkMzAwNTNlNjZmOGUgcmVsZWFzZTI1LW1haW50Cis1MjA1MCA1MmNkYmU0Yjc2NDRkNzJhYTkyY2EwZmM2NTQ4Nzg2MTRjYzEzZDZlIHJlbGVhc2UyNS1tYWludAorNTIwNTEgMGVkZjM5OTk2MThhZTI4Y2Y5NjhhOWIwMGVkYjAyNzJjZjFiMTNhYiBsZWdhY3ktdHJ1bmsKKzUyMDUyIDFkYzIyY2MyMDEzMmYyYWMwNTk5NzdhNWM0YzdmYTJhOGMzMDg0ODIgcmVsZWFzZTI0LW1haW50Cis1MjA1MyBkZTc5ZjE4NzBhZThmMWQ4NmQxZjU4NTE4NjgxZDM0NmVmZTM1ZmVhIGxlZ2FjeS10cnVuaworNTIwNTQgNWRmZmEzNWNjNjQzMDJjMmMzZGRhM2FlMWZjZGJhYzhkNmZjODI5YiByZWxlYXNlMjQtbWFpbnQKKzUyMDU1IGQ4MzM4MDZjNzM1MWE1OTE3MjYyYzg4OTAwYzUyZmM4MWRjNjVhNjQgcmVsZWFzZTI1LW1haW50Cis1MjA1NiBjNDc3YTBlMmIwNjc5OWRhYWQ4OTQ1MmQ5ODFjNzVkY2M0OWMzOWQxIGxlZ2FjeS10cnVuaworNTIwNTcgMmM4MjRhOGExZmI4Y2Q1NmFhOGViNmZlZmY5Y2E1NmQzNTMxZmRhNiByZWxlYXNlMjUtbWFpbnQKKzUyMDU4IDQ5ZmJkZGZiMTIxNzAxZGRlZTE2NGFjNzUyYjEzMjEyODBmYmNmNjggbGVnYWN5LXRydW5rCis1MjA1OSAxM2NmMzQ0ZGU4Yzk4OTg0ZjM1ZjhkMzgxOWMxODE2ODQ0MTUxNGM1IHJlbGVhc2UyNC1tYWludAorNTIwNjAgNTI0NjBiMDkyYjVhNjZkNWEzNTkzYTE2ZjJlNGM3NjMxYjg5ZDhmNiByZWxlYXNlMjUtbWFpbnQKKzUyMDYxIGUxYWI0NjUzZWJjMDkzMjU5NmI2YjA2NDJjMmYwZTg5YjE5MmMxM2IgbGVnYWN5LXRydW5rCis1MjA2MiAzOTg2YmZlNTMxMDFkYjMxMjkyMjk0M2E2YzkzMTNmN2U5OTc0OWNmIHJlbGVhc2UyNS1tYWludAorNTIwNjMgZTdhNTgzNDFiMmU4Zjc1MzVkNzdjZDE0YzIyN2IyYTcxOGQzMzVlMSBsZWdhY3ktdHJ1bmsKKzUyMDY0IDFiZjUxZDJmNDY5ZDJkMmZhZjc4M2JjNjhmNTNjZWY5YmYyODQ2YjkgcmVsZWFzZTI1LW1haW50Cis1MjA2NSBiOWEyZWYxMzAyZDQ3Y2NkNTE1MGQ1OTNhMTljNjFlNWEwM2I2MjVkIGxlZ2FjeS10cnVuaworNTIwNjYgOTlkMWM5MzY3Njc5NGQyZDRiNTgzYjY0ODYyN2JhZTZiNGZjZTZiNiByZWxlYXNlMjQtbWFpbnQKKzUyMDY3IDMzMGRiY2FkYjkzMTcxZjYyMzdlYjE4ZDdhYTgxYjk5NzRkZWY0NmEgcmVsZWFzZTI1LW1haW50Cis1MjA2OCBmZmI5MDEzNzRhMzgyNTM5YTkwNjU3YTU0Yzg5Y2NkZTA4ZmYyY2Y1IGxlZ2FjeS10cnVuaworNTIwNjkgZDkxODI2YmFjNjU1NWNiMGE2MTQ2Yjc1NWM2NmNiNDVlM2M0Y2Y2OSBsZWdhY3ktdHJ1bmsKKzUyMDcwIDk1ZDI0NzNmNzc3MGNiMTBjNmY4OTM1YzAyMTE2Y2RiNzdkMTQzNmMgcmVsZWFzZTI0LW1haW50Cis1MjA3MSA5Y2FmNWE5ZGE1NTRkMGJhYjNiYTFhYzg0OTYyYzQ2YjA3NTRiZmMwIHJlbGVhc2UyNS1tYWludAorNTIwNzIgYjdhZTg5NzdkMDZlNDk3ZDZmZGFkZWFhMGM4NmQzMzZhZWRjZWFjZCBsZWdhY3ktdHJ1bmsKKzUyMDczIDliZTAzMjI2YTdiZjhkYTk5ZWRmMTc5MGFlNTU5ODYyMzJmZWJhMzIgcmVsZWFzZTI0LW1haW50Cis1MjA3NCBjZjU4ZmI4NDUwYmEzMDVkNGZjMDU5ZDkwOTVhNWVhYTAwMjk3Y2NlIHJlbGVhc2UyNS1tYWludAorNTIwNzUgNDBlMmZlZTAzYTk0OTIyNTA5OGJiODdkNGJmYjQyOGY3ZmNkY2ZiYSBsZWdhY3ktdHJ1bmsKKzUyMDc2IDUxMzBiNjhiNTRlOTRhOGIwOTIyM2FkOTUyY2FhMTcwNjUzZjBmMTAgcmVsZWFzZTI0LW1haW50Cis1MjA3NyBkZmQ4MDlkY2Y2ODAwMGZlNmE0YTY4MGEyNTBjMWY5ZWI5OGQyZWMyIHJlbGVhc2UyNS1tYWludAorNTIwNzggYzg5YTc1NmMwOTY1YTkwZDM1Y2E2MjFiMzBiN2Q0NTIxYTI2ZWU1NCBsZWdhY3ktdHJ1bmsKKzUyMDc5IDkwNzI4ZGZjMzNlODU4ODRkY2NlY2I4MzZlNWIwMTQ1ZWFlZjg0NzMgcmVsZWFzZTI1LW1haW50Cis1MjA4MCBkNzQzMzgxMTMxZDZjOWYxYjg5M2UxMzZhMTY4NGVlZTc3NjE4OWJiIGxlZ2FjeS10cnVuaworNTIwODEgYmY0N2RlNmQ5YzkxOGUyMDZjM2FiN2ZjZGVjZjQ1MWQ4NmZkMWIxOCByZWxlYXNlMjQtbWFpbnQKKzUyMDgzIDI1N2RhZjM5YjA4YzY4ZTYyZjRlNzBkNTUxMzhkMjI2OWE4MDhjMjEgbGVnYWN5LXRydW5rCis1MjA4NCA4OWU0YWViYmYzMWM0NjA5M2IzY2NhN2M4MTgyM2M4NzFkY2I2ZWM5IGxlZ2FjeS10cnVuaworNTIwODYgMDBhZjY5ODcwMjZhNmQ1YzFlMmQzZTE2NDVkZDFmNmE5N2IzOTBhNiBsZWdhY3ktdHJ1bmsKKzUyMDg3IDFkYTA0YzhlZThmZjAwMzA4ODcwNzhhOGJkYTY4ZTI0NWY2YWQ3ZWYgcmVsZWFzZTI1LW1haW50Cis1MjA4OCA5ZmNhYThlZThjMjJmZGIzZWQ2M2MzM2EzNjM3OTA4NTc2YmE1ZTEzIHJlbGVhc2UyNC1tYWludAorNTIwODkgMTY5N2QwZDRlZjMzN2E4ODIyYjU5MzUwYTdiYWEwMTVhZTA5NDdhNyBsZWdhY3ktdHJ1bmsKKzUyMDkwIDVjMzZlYzVmZDNjMjM2ZWI2YzA0NDBjZmJlNWZkNzhlOTlmODk4NDYgcmVsZWFzZTI1LW1haW50Cis1MjA5MSBjMGU3MWE0YjcxYzc0NmYwYjhiZGFiNTA1OGMxYjVhMjNlYmZmNDFmIHJlbGVhc2UyNC1tYWludAorNTIwOTIgY2RjMzY3YWIzYmJmY2IxMWZkZDRmNWNjY2MyZGVlODcxNGIxNjI1NyBwZXAzMDJfcGhhc2UyCis1MjA5MyBiMTQ0OWE3ZTE1ZWRlZWFkODU3ZjUzY2I4MGZmNWRlOTM2ZmZjZmRiIHBlcDMwMl9waGFzZTIKKzUyMDk0IGI0NTUzYjEyZTI1YmU5YWNmNjNiZGIxMWEzNmM3ZjkxZjMwZjdlMzAgcGVwMzAyX3BoYXNlMgorNTIwOTUgYjIyYmFhMTU0MTQ3NGY1MWZhMmNjZjUyYmMzMjI5ZDkyOWM5NmUyYiBwZXAzMDJfcGhhc2UyCis1MjA5NiA4NGFmYTM2NmVlZTdhMmIwNjU0MWU5ZGI4M2EwYTM0MThjNzEyMzExIHJlbGVhc2UyNC1tYWludAorNTIwOTcgNDVkYmNiMGU5ZmE5ZmQ0ZjkxODYzOTcwMjE0YTkwYjA2ZTA4ZjRlOCByZWxlYXNlMjQtbWFpbnQKKzUyMDk4IDgxODExOGMzYTM0MGRmYTEyN2EyZmVhM2NmZGFmZTMzNTI3MmMxNDYgcmVsZWFzZTI0LW1haW50Cis1MjA5OSA1ODBmNmE2OTUxNzIzOTc1YzVlYzgzMWY1NDZlOTFmMDBmNWU1NTRiIHJlbGVhc2UyNC1tYWludAorNTIxMDAgMmM4OWQ2MTZhOWVkMzdjMDFmMmJiNTY3ZTgwMDcwNTQ0YmVhNmEwYSBsZWdhY3ktdHJ1bmsKKzUyMTAxIDJlMWM0OTM5NWI5NjFmNjU1NTRmOWExYTZkNjc5Mjk1NGY3ZmY5MzYgbGVnYWN5LXRydW5rCis1MjEwMiA0ZGE0ZGU5NTQwMTJiNDlmMzU5YjQxYjllNTQ1N2JmNzdhYjg5NmVhIGxlZ2FjeS10cnVuaworNTIxMDMgZjAxOWU0Zjg2Mjg3N2FhN2IwYjk0MDk2MmJjYTlkYjMyZWQ2NzY3NSByZWxlYXNlMjQtbWFpbnQKKzUyMTA0IDI4YTk0YmY3ZjY3ZjNjNGIxYjJjOGZmMGRkZTNiMGZmNzIxMDViNGQgcmVsZWFzZTI0LW1haW50Cis1MjEwNSBkZTdjMGNiNWE4NzI5NWM2YTE0MDM2N2FmMGJiMmVhNGM0ZmQ5MTJkIHJlbGVhc2UyNC1tYWludAorNTIxMDYgYjMzMmUxYWM2NmNjZDdjNmVmN2YwZmU2NjNhMDdiY2RiZWRiMmNmZCByZWxlYXNlMjQtbWFpbnQKKzUyMTA3IDA2MjkxZWFkZGUyZGI1YTJlY2QzM2E0YjI3MTg0MWYzNWMzNmY0ZmIgcmVsZWFzZTI0LW1haW50Cis1MjEwOCA0NDNiODczZjllYjkwODU1ZWU0YzJmYjUyNzZlOWQ0M2VmOGJmYzBmIHJlbGVhc2UyNC1tYWludAorNTIxMDkgNWRkNmM5MGQ0MjIyY2I5ZTZkNzZhM2I2ZjhlNDJjNzg3N2E0MDRlZSByZWxlYXNlMjQtbWFpbnQKKzUyMTEwIDZiMWM0ZDdkM2EyNmMzMDU0NWZmZjAzZDQ5ZTVhZTVkYTM5NTU1OWEgcmVsZWFzZTI0LW1haW50Cis1MjExMSBiN2UzNGZiYzgwYWQ2OWJjZmZjZjhlMDEwOGZmODQ4YTJhNjJmMThhIHJlbGVhc2UyNC1tYWludAorNTIxMTIgNTJlOTk2NGVmOTIyZDc3MzA0OGZiYTgzZjI3Yzc1NjA4OTc0ZmY4NCByZWxlYXNlMjQtbWFpbnQKKzUyMTEzIDU0ZDE3N2VkZTg4Mzg4MDJkNjliMGU5ODFlYzYyOGZiNjQ5OTZiYzYgcmVsZWFzZTI0LW1haW50Cis1MjExNCA4YzgzZmQ3OWNlZTViZTMwNjQ2NzYyMTM0MTU1NDE5YjA1MDRiMTQxIHJlbGVhc2UyNC1tYWludAorNTIxMTUgZWYwOWUyNmVmMDk5YTQzOTE1YjA4YzllYTlhMDgzMWE5NDY4MDhmNSByZWxlYXNlMjQtbWFpbnQKKzUyMTE2IDJmMjM4YTJjZDE4OWRmYzM3ZDU3YjUzYTcwMGU0MDhiZDM1OGY3MWQgcmVsZWFzZTI0LW1haW50Cis1MjExNyAwYjZiMzYwZTkyMTc5NTEzMTE2ZGQ4ZTRlNGViNzRhYWQ4MTk0YmNmIHJlbGVhc2UyNC1tYWludAorNTIxMTggOWU3NjNiY2QxM2NiOWZlYmJjMzY3ODY1NGJhN2RjY2RlMjg2NGI0YiByZWxlYXNlMjQtbWFpbnQKKzUyMTE5IDBkMzViOWY5NGIxNTE2Y2YyZjVlZTI2ZTFjMWIxYTUwNjVlNjZjYTcgcmVsZWFzZTI0LW1haW50Cis1MjEyMCA5MTY3OTI4N2NiOTZjZjk4NmMwMjcyNDNiZDgwMTBlYWRlNTViY2M5IHJlbGVhc2UyNC1tYWludAorNTIxMjEgNDdhYjBjMjdkZDFmOTIyZjRmNjBkYjM3ZjA0YjVlNTdlOWQyMzc4YyBsZWdhY3ktdHJ1bmsKKzUyMTIyIDM2MGQwOTcxYTZlZWYxZDg3OGYwYTBkNTM0YTVkYTM1NWQxMzg2NGMgcGVwMzAyX3BoYXNlMgorNTIxMjMgOWUzNWI2MmVkNGQyZGY5NzU3MjU5MWM0ZDFjNWZhODU5Mjg2MjU5ZCBsZWdhY3ktdHJ1bmsKKzUyMTI0IGZkMTRiYjU4MzFjZGFjNGNjZGE1ZDdhOTQyYzAxMjRhN2ViOWRjNWYgcGVwMzAyX3BoYXNlMgorNTIxMjUgYWRhNTZiNTRkYjlhNzkzNGNhYWMwOTQzMjFhMzc3ZGZiMGJhNDUwMiBwZXAzMDJfcGhhc2UyCis1MjEyNiA2NjBjZDA3MjA4MGRmM2U4YjA0NTZkMDIxMGVkZjRhOTdlMGU0MzE3IHJlbGVhc2UyNS1tYWludAorNTIxMjcgNzliNjQ0YmYwMTE2NDdhNTMxZDNlZmQyYTYzZDU3ZTU4MzkwZDU1ZCByZWxlYXNlMjQtbWFpbnQKKzUyMTI4IGRiNmNhM2VhNTNlNWI2N2FlNDE4NDFlNTBlNzVjZjIwODM4NTUzYmEgbGVnYWN5LXRydW5rCis1MjEyOSBmNWQ3ZGU1MDMxYWE0ZTIyN2RkZWQyMjcxOTU4MzhmNjJmZTFmN2I2IGxlZ2FjeS10cnVuaworNTIxMzAgY2E4ODdkNTVjNTkyMTNkMzRkZTg3ODM0MzI4YWFmOTEzZDkyMDJiOSBsZWdhY3ktdHJ1bmsKKzUyMTMxIDhhMjg1M2JmOWVjYWQzYjE2NWZkZjk3Y2U4YWNkNzc0NTY3NDU1OTUgcmVsZWFzZTI1LW1haW50Cis1MjEzMiBlMDM5Y2Y2YjdkNDI5Y2U1OTA1YTdhMWE4MmM3NWEyMTAwZmQ0ZDU0IHJlbGVhc2UyNC1tYWludAorNTIxMzMgMWI2MWU4MjY2MGJhOWM5YzAxMjMyMmY0OWQ0NzI4MWUwNDU4OGZlZSByZWxlYXNlMjQtbWFpbnQKKzUyMTM0IDEwYmI3YWNiYmRjODM3ZTI5YTliMTFmMTM4N2E2YjFiMmNhMDQ1ZmIgcmVsZWFzZTI0LW1haW50Cis1MjEzNSAyYWRkNDRjMGRlNmM3ZGFhNjQ3ZTdkOGQyOTM2MWViNDllOGE2NTQ3IGxlZ2FjeS10cnVuaworNTIxMzYgYTliMWY0MDRlODhiNTljZTQ4MWYzYmY4Mjc2MzJmZjEwMzI2OGMxYSByZWxlYXNlMjQtbWFpbnQKKzUyMTM3IDBjOGU5ZjkyNzJkNWYzZTE0NDcxZjU1MGIwNDIwYjA4N2QyNjc0ZjQgcmVsZWFzZTI0LW1haW50Cis1MjEzNyAwYzM2NDEwYzM5ZThkZGJiODk1MTg1N2RjNGFkZjMzZjI5ZmRjMzVhIGxlZ2FjeS10cnVuaworNTIxMzcgNGViMjg2ZTkzMWE5NWRkZGIxOGQzZWNjNjlhYzk3MzI0NzVmNGYzZSByZWxlYXNlMjUtbWFpbnQKKzUyMTM4IDc5ODkzNWUxMjk1ZTdmYTMyNDEwOTgzMDhlNTc1MDJmNTE1YWVlZGYgcmVsZWFzZTI1LW1haW50Cis1MjEzOSA2YmE0MDJiNjAwNDE4YTU2ODQ1M2ZhYjllZWU3ZjNjYjhhYTE0MGE2IGxlZ2FjeS10cnVuaworNTIxNDIgYmZhYzIzMzg4YTIyNGU3OThiYzIxMWY1YTZmYjU2YTc5ZGQwMTY5OSByZWxlYXNlMjQtbWFpbnQKKzUyMTQzIGRmN2E1NDM1ZWNiYjVjZmZiNTYwYmYyMDkzMzA0YWU5ODU4NTM1MjAgcmVsZWFzZTI0LW1haW50Cis1MjE0NCA0MmFiZmIzOTEzMDBhMjUwNzY1N2E5ZjU1MjA5ZWNiNzUyMjFlMmU0IHJlbGVhc2UyNC1tYWludAorNTIxNDUgMDRlYzM5MTQxMGNiZTQ2ZWI5MmZkMDkwMzM1MzI0MGY3N2E3ODZiNyByZWxlYXNlMjQtbWFpbnQKKzUyMTQ2IDUyNzBiMWUzNjY0OGVmMDQyNzhhYWNkMzg2YWYxMzY2ODYxMWM1ODYgcmVsZWFzZTI0LW1haW50Cis1MjE0NyA0NDA0YTM5ODE0NzA2NDFkMzE3Yjg5OWE1NTk5MDkxOTM1ZjYyNjE1IGxlZ2FjeS10cnVuaworNTIxNDggOGFhYTNkOTFlZWZhN2YyOTZjZjJjN2MzZDc5MWJmYjdlMzYyNjY0MiBsZWdhY3ktdHJ1bmsKKzUyMTUyIGIxZTczNzdlY2YwNDQ2MDEwNDM3YzI0Y2JjZmQ2ZGQxNzBjMWY0ODggcmVsZWFzZTI0LW1haW50Cis1MjE1MyBlODhjNDI2N2FjZDFjNzkxNzRiZDBhNmExMzgyMzgzZjI2YzdlZjYyIHJlbGVhc2UyNC1tYWludAorNTIxNTkgYTRiYmZjYTQwYzdjZjc2ZjAxYjVkODI0YWQ2YjcwMDNhMmNlNjVlZiByZWxlYXNlMjQtbWFpbnQKKzUyMTYwIGY2YmJlOGQ2ZmEzMzAzNTVlMmZhNjFhN2RlODMyMjA1M2E1NGUyY2EgcmVsZWFzZTI0LW1haW50Cis1MjE2MSAxZjU4OGE5ODJjYzU2Yzc1ZWJiODBhZTA0ZDU4OTE0ZGQwOTA5YTZhIHJlbGVhc2UyNC1tYWludAorNTIxNjIgODAxN2IzZjIxZjYyZTZhMDRiNzk4ZDNhNjIyYmViYTQyNzQxZDMzYyByZWxlYXNlMjQtbWFpbnQKKzUyMTYzIGMyN2Q4Zjg5YWE4OTE1NTE5YzEwZmRhN2ZkNWI3MWE2MjFmMmJkMWIgcmVsZWFzZTI0LW1haW50Cis1MjE2NCA5ODE5Y2RkMmZjYjE1NjlhZGJhOTNmYzMyOGVkMDUwMjI3YjcyN2NhIHJlbGVhc2UyNS1tYWludAorNTIxNjUgYTlmZWUxZjYyZjE3NjA2NzY2NmMwOGY3YTZmYWE4OGVmNDA1NDUyNiByZWxlYXNlMjQtbWFpbnQKKzUyMTY2IGFiMTM1NzYzNzRiMWE5NWZmNzBkOWU5YTM4NWQwZWEyMmFmMGU1NjEgcmVsZWFzZTI0LW1haW50Cis1MjE2NyA1ZTI0NDk5NGU0MmU1MzQyNzVkZTI0YmJmMWE1Yjg0OTNkNWNhYjQ0IHJlbGVhc2UyNC1tYWludAorNTIxNjggNWQ5M2U1Y2NiMzFlNzRjNzgzNDM4ZGRjNzc5NDg4MTU1NzgzNTBiZiByZWxlYXNlMjQtbWFpbnQKKzUyMTcwIGNkNmNlNjY2ZWZmOTFiZmEyMTI2NTEyOTA0YjQ1MTk3YzRkODVhMDcgcmVsZWFzZTI0LW1haW50Cis1MjE3MSBlNjU4MzY4MTU3OTFjN2JmNmZmMDAxMjMxZjA0MDgxYzI0OGJjOWU3IHJlbGVhc2UyNC1tYWludAorNTIxNzMgM2I1N2VlY2RjNTA0YTEwMGI1ZmQzNGQxNmI0MjE4YTkwOTU1MGE2OCByZWxlYXNlMjQtbWFpbnQKKzUyMTc4IDJhNDZiNzZiZWI5ZWJkOWEyNTYyNDJlZGYwNmY3MzE3YTM1MjI0MjEgcmVsZWFzZTI0LW1haW50Cis1MjE4NiA0NjYzYWNlMjM0OTljZTY3YWYwYjRjYjU4MjlkZmNhZWI5OTZmZTNkIHJlbGVhc2UyNC1tYWludAorNTIxOTAgN2JiZmYyZTlhOWMyMTljNWY5MGVkNTFiNGNiYWIxMzEyYzA1ZmJhMiByZWxlYXNlMjQtbWFpbnQKKzUyMTkyIDViZWM0YTY3ZmYwZGE4OGRjZDQ3MzgyNzU0ZjgwODdiODY3OWViYjggcmVsZWFzZTI0LW1haW50Cis1MjE5MyA0NWFjOWNlMGJiMTU3MTZkYzFjZGU0NDE0OTk0YmUxOTAxOTkyOGEyIHJlbGVhc2UyNC1tYWludAorNTIxOTQgNmJiMzc1ZjU1OWNlNDY3NGMxY2U3YzM0MzAzYWFlOTY2NjM5MjQ5ZSByZWxlYXNlMjQtbWFpbnQKKzUyMTk2IGU4MWZmOWFmNjQxZGIyNWNiYzNjYTM5NWNiOWEwOTM0YWIzMTFmZTIgbGVnYWN5LXRydW5rCis1MjE5NyA2YjFkZGYzODdiZDE5NWU1OGJhMzI0M2NlYWIzZDY2NjYzNWIzMGRlIHBlcDMwMl9waGFzZTIKKzUyMTk4IDU0MzRlZDRmZTg2MjI2NzFlM2FiZGQ5NTRjMTU5NDk2OGIwMDlkZjQgcmVsZWFzZTI0LW1haW50Cis1MjE5OSA0NzEzZDk5MDBlOWU5Y2I3MTYwYWQxYTg3YWRhMTNkOGI4MzU5NWU3IHJlbGVhc2UyNS1tYWludAorNTIyMDAgNzc2NzRjMGY5MjE0MTA2OTc1NmZkODY4M2NkM2Y5NzI3M2Y0ZmZjOSBsZWdhY3ktdHJ1bmsKKzUyMjAxIDc4ZDdiZWEzYzEyMjBiYTI1YTdhMzk5M2U2MTA5M2I5OWZmMjA3NzMgcmVsZWFzZTI0LW1haW50Cis1MjIwMiBkZDU0YmQ2YTZiMWVjYTRjNWYzMDc2NjkyNmRhY2YzY2JjZGE2MzJjIHJlbGVhc2UyNC1tYWludAorNTIyMDMgMDc2YzIwY2E1ZDdiNmYzNTljM2Y5NTYxOWE1YzJjNGJlN2ZiOGVhMiByZWxlYXNlMjUtbWFpbnQKKzUyMjA0IDI2YzJmZjcyODAyN2ZmODkyZTNhZWYxMzZlNTZhZDJiMTk4NjFiY2YgbGVnYWN5LXRydW5rCis1MjIwOCA1YWVhOGIxZmQyNjI1NDBkODRmOGViMTdkOTQ4ZjFjMWJmOGY2YjI0IGxlZ2FjeS10cnVuaworNTIyMDkgMzU3MTQ3MDBjZjg3YzU0YjA0MzFhYjg1NDllY2JiMjVmYjVmNTRlNCByZWxlYXNlMjUtbWFpbnQKKzUyMjExIDBlOWZkYjE2NGQyMDYxMmQ2NWI4NjI4ZDViNTU1ZmQ3M2ViM2I1MjMgbGVnYWN5LXRydW5rCis1MjIxMiA5OTRhZDc1MGIwZTNiYzA1OGM1ODkzYjFiZDVmZjkxZDE3MmFjMzU3IGxlZ2FjeS10cnVuaworNTIyMTMgNWQ4Mzk5NGNkOGNkZjQwYTRiMzM1YTgzYWZhZGM2NWUxNDA1OGEzNSBsZWdhY3ktdHJ1bmsKKzUyMjE0IGQyNGVhYWVkYTc0OGM0MTZmNjcyNmRjYjgyYzg0ZDg0ODEzODM1OTYgcmVsZWFzZTI0LW1haW50Cis1MjIxNSA5MTE4ZWE3ODFmZDUyYWY0ZGE2NDk0NDE1MjA2NTAyNjFkNTZkZGRiIHJlbGVhc2UyNC1tYWludAorNTIyMTYgMmEwNWVlNGEyM2UwNzFkMWVkMjVmOGM4MDkxOTkwM2FkNjAyNjkyNSByZWxlYXNlMjQtbWFpbnQKKzUyMjE4IDdjMzQ5NDRkNGM4MGJlOTc1OGMwMGM2ZTJjNjYyMTVkZWRmZjBhNzggbGVnYWN5LXRydW5rCis1MjIxOSBhMmYyNmY5NDRiNjU3MTc5YWZlMzZkM2U2ZDZmZmU4YTI4MmI5MzQ0IHJlbGVhc2UyNS1tYWludAorNTIyMjAgZWQ4OGQ2YjdjMWY5NjY5MDNiZDkxZDlhOWVlN2UwMzkxYWIyMzI3YSByZWxlYXNlMjUtbWFpbnQKKzUyMjIxIDE2ZTI4OTJlMWUzYzJhMjY5MTVjMjYxOGU3MDVjODlhYmQ2NDJjOTkgbGVnYWN5LXRydW5rCis1MjIyMiA5ZTA0MzFmZDY3NGEyNGY5OGRiMWJjYWI3YWNiM2M2MWU5MDJmOGJhIHJlbGVhc2UyNS1tYWludAorNTIyMjMgMzQ3Nzk0MzkxY2U0MzQwYmI1YzIxYjFlODFjNjQ2MjJhZDVlZWZhOCBsZWdhY3ktdHJ1bmsKKzUyMjI0IGQzYzE5NDdkMTY2NjUzMWUxYmExYjk4MWY4MTI2YjNkNWIwMGFlYzYgcmVsZWFzZTI0LW1haW50Cis1MjIyNSA5M2UyYjMxMTJkNzllMTA5ZWM1YjY0MGEwZDQzMzUzNWIwZjEyNjVmIHJlbGVhc2UyNS1tYWludAorNTIyMjYgNjk5Y2M2YTVjODZlYjhhNTlhYjA1NjkxZDgwOTVhZWY1MWNlNWU2MCByZWxlYXNlMjQtbWFpbnQKKzUyMjI3IGI5ZDMzMDFlNWYxOTVlNjBkOTkzN2JhN2E5OWU0NWJjYzI0MWI0M2EgbGVnYWN5LXRydW5rCis1MjIyOCBkZWVlYTRkYTFmMzU0OWVmMzNhZGVjNjE5NjA0OWM3NGQ0NzRhODJiIHJlbGVhc2UyNS1tYWludAorNTIyMjkgMjA0NzRkOWU3NWUxNGJkYzIwNDQ2OWRhZDQwNmI4ZmUzOTc3OGQ2OSBsZWdhY3ktdHJ1bmsKKzUyMjMwIGY4MDVjY2NlMmY1NjRlMDUyZTY4NjhjMGJiNmUyNzQ2OTgyM2M3YTQgcmVsZWFzZTI1LW1haW50Cis1MjIzMSA2OTNmZjVkNzM0MTI1MWY5NjMxNmVkMTY1ZWI0ZWVmYzQ2ZDM1ZDg0IHJlbGVhc2UyNC1tYWludAorNTIyMzIgMGRjMjYxZDhjNTdmYTg0NTMxZjFkMjgzZTE5M2EwNGI0MTFmM2IyYSByZWxlYXNlMjQtbWFpbnQKKzUyMjMzIDgzOTY1OTc3ZjM0YTFhZTM5NDc1MDAyMGMzOTlkODgzNmQwN2RlZjQgbGVnYWN5LXRydW5rCis1MjIzNCA3Njg4OTRmMzNmMWMzNDdmNDQwNGRlOTVkYmYzYmVlMzYzMWFlY2UyIHJlbGVhc2UyNS1tYWludAorNTIyMzUgNzExN2Y2ZTVhYzgzOThkZTcxYmFmY2QyNTYzYzBiODMxZDYwZWU2OCByZWxlYXNlMjUtbWFpbnQKKzUyMjM2IDkxYmU5NjY0NjQwNzMyOGFhNzdmZDNjNDgwMmNiYzg4Yzk4MDBlNjEgbGVnYWN5LXRydW5rCis1MjIzNyAyMGRkMTNhZWUyMzM0OTEyMjkyMWFjYjIyZTdlMzQ0MmNiODQxYzY1IHJlbGVhc2UyNS1tYWludAorNTIyMzggYzMzOWExYTE2ZWM1YjY0MTU2ZDI2MGZjNjE5MGQzZDZkZjEzYmYzNiBsZWdhY3ktdHJ1bmsKKzUyMjM5IDQ3NTIyOGVkMjA1NGM3ODJjZTUyM2NkYTY2NDQ2OGM5NDUwNDMwM2MgcmVsZWFzZTI1LW1haW50Cis1MjI0MCAwYWNlM2M4MDYxMTQxMmRiODgwMWU3YTM0MDc4Y2IzNzkwYzY5MmE3IHJlbGVhc2UyNC1tYWludAorNTIyNDIgYWVlZTlmNWEwYjNlYzBlNWM1YjYyYmFkMzY0ZjgyODczYjBiMzNhNyBsZWdhY3ktdHJ1bmsKKzUyMjQzIGRlMmI2YTFjOWIzMTExMTU1MWM4NmUwZGI4YTgxYTcxNDBmZWQ2NGUgcmVsZWFzZTI1LW1haW50Cis1MjI0NCBhNjA0OTViMzZmMzhjYjJlYzRiNWIxMGI0ZThkNThiZjBlYjYxMmI1IHJlbGVhc2UyNC1tYWludAorNTIyNDUgYzM4NzdiNjQzMGI1ZDg5ZTJlMDliYzFhNGU4NzQ2MjExYjdmNjcxOSBsZWdhY3ktdHJ1bmsKKzUyMjQ2IGVkYTkzMWYzOThjMGQ1ZWZjYTBmNDhlZDI4YjdjMjRjNTdlMGMwYTcgcmVsZWFzZTI0LW1haW50Cis1MjI0NyBlZGUwNWQzNGM1MTgzZmUzMTZhNGViYzAwYzc0ODgwZjNkYTljM2MwIHJlbGVhc2UyNC1tYWludAorNTIyNDkgNGVlZmNlOGJjMmY3NDhhMzM3ZGE3ZmJjMDA3YmIyMjRhMTllMDhkNyByZWxlYXNlMjQtbWFpbnQKKzUyMjUxIDY2NWQ3Nzk4YTFiYzhhNjBiNjhiZGYzMmVlYTAzOTQyZWE0YzYzZWQgbGVnYWN5LXRydW5rCis1MjI1MiBiZjZhMDJhZGE0NDllNGEyYzk4MmU1MzYzNDYzODQ1ZTg4NjBhMGI3IHJlbGVhc2UyNS1tYWludAorNTIyNTMgMzgzNTY5NTFjMTlmOThhYTY0ZWU0NGU2N2MxNDVlYzc3MGIzMGNhNSByZWxlYXNlMjQtbWFpbnQKKzUyMjU0IDFlNGUwMTVjMDdjMDc0ZGU3ZGI0OTgwMzQ2ZDhkMTEyNTM5YjRhNjkgcmVsZWFzZTI1LW1haW50Cis1MjI1NSBmNDZiYWRjOGRjMjEzMzk4MmUzMjhlNDYwYzljMDgzYTIyNmEyYTIwIGxlZ2FjeS10cnVuaworNTIyNTYgZDMzZTQwMTFlMjAyOTQ3OWFhYTU3ZWNiMGJjMDlmZGU3N2M5Nzk4NCByZWxlYXNlMjQtbWFpbnQKKzUyMjU3IDI4ZGI2MTEwMTQ2MzZlZWExYzg4ZDBjZDNmYzJjZGIxNGM4ODQzMmQgbGVnYWN5LXRydW5rCis1MjI1OCA4Y2E5YTdiMTFhN2Q0MjYxYmEwYzJiOGU2YTNhYjA3ZDM2ZWEyM2U3IHJlbGVhc2UyNS1tYWludAorNTIyNTkgNTJiNjVmMjhiZTE3MTcyMDMxYzMzMDIzODU1MTM3ZThhNDhlYjVjNCByZWxlYXNlMjQtbWFpbnQKKzUyMjYwIGNlNTE1MDMyZmNlMzdhYTFiMGQ4NzY4ZDA3NzYyZDcxYjJlZTE1ZjAgcmVsZWFzZTI0LW1haW50Cis1MjI2NiAzMDkwOWUxY2FmNzljOGQ1NDQ2MmQ1ZDU5MzJhYTZhZmViYWY5MzE3IHJlbGVhc2UyNC1tYWludAorNTIyNjcgMGRhYzZkZTBmZTc4YWRmYmY5OGZkZWVhNDMxODBmZmU4ODM4YzZmNSByZWxlYXNlMjUtbWFpbnQKKzUyMjY4IDY2YjgzZDFiYTJmYzVmOTlmOTkyNTdhYTMzZjdkODA2M2M3ZjFlNDMgbGVnYWN5LXRydW5rCis1MjI2OSBiMmVkZDUxMjQxYWUyMjFhOTRjYjFkMTQ2NjZkMWY2ZjI5MzU3ZDE1IHJlbGVhc2UyNC1tYWludAorNTIyNzEgNTZiOTExZGNjMTg1YWM2MGZhZTliZTgzNGVkNTYzZWZiYmY4OWQwYiByZWxlYXNlMjQtbWFpbnQKKzUyMjcyIGY3ZmJkYzU2MmQ3YWRmNjg5N2EzZDY4YTdkMWI4YjQyM2IxODFmNDEgcmVsZWFzZTI0LW1haW50Cis1MjI3MyA1YmNhYjRjYTY2MDgwNDk3ZWJkN2NjY2M3N2Q5MmI4MGYyMzg3NTc1IHJlbGVhc2UyNC1tYWludAorNTIyNzQgOTg1MTI2ODczNzQwZGVmNTU3NzNiZGU1NDBjNmQyNjIzMWNjNDZhYyByZWxlYXNlMjQtbWFpbnQKKzUyMjc1IGExYzM4MWMwNWRkZWM0Njc3MDhlZjQ5ZDllZDJjMGRhOGRlZjU5N2QgcmVsZWFzZTI0LW1haW50Cis1MjI3NiBiYWFlZWE3MjJiMWM5N2NhMDMxNzllNWEwMmE0NzE3ZTcwMTdiYTJhIHJlbGVhc2UyNC1tYWludAorNTIyODIgYTA0NTRmMWY5N2M2Y2FiYjM2YzRmYWNjYzU4OTM4YzlkYmYwOTQ1YSByZWxlYXNlMjQtbWFpbnQKKzUyMjkzIGFjNjUwYWQ2YzgxN2JlMmE1NjY4N2FhMGM3OTNkMTFkOTM0MzgyNjkgbGVnYWN5LXRydW5rCis1MjI5NCA2OGI0ZDBkYWI0OWFkMWVlZDZiNjM4NmM4ZTYyMGRmNjk3MjhmMzQwIHJlbGVhc2UyNS1tYWludAorNTIyOTUgNzAxNDBjY2NkM2RhNzNiZGQ0MjYzOThjZmI1YTEwMDM4MTE4YjAzOCBsZWdhY3ktdHJ1bmsKKzUyMjk2IDY2NzBkZGE0YjI3ZDlmMmQxMjIwZWI0OTRlMmJkOGYxNmU4NGQwYzUgcmVsZWFzZTI1LW1haW50Cis1MjI5NyBkZWIxYTBiNWRiY2I4ZWFiN2Q4NDliZjIxNGQ1MTc2MTZiYWI0Y2UxIGxlZ2FjeS10cnVuaworNTIyOTggYzY4ZmFjMWViNmNiZTQ3OGI0YzY1ODM5MTZlNzFjNDE5MDkzZGJkNSByZWxlYXNlMjUtbWFpbnQKKzUyMjk5IGMwMjA4MTk1YTU1ODUwNzU2M2E4YmRmYzUzNzAyZDMzNDQwZDM3NDkgbGVnYWN5LXRydW5rCis1MjMwMCA3NjQwYTU3ODIyYTY3YWM2YWQ5NDE5MmNkZjRlN2IzNGU5ZjY3YzdmIHJlbGVhc2UyNS1tYWludAorNTIzMDEgNjQ3NTk4YzFhOWQ5MjQzYmM2ZmRiYTA2N2JlNDhhYTExNzMzMjQ2MiBsZWdhY3ktdHJ1bmsKKzUyMzAyIDZlNmMyMjBjMmZhNjIyYWMyNjhkZDRmODU3MTUyMzhiY2I1YzFmN2IgcmVsZWFzZTI1LW1haW50Cis1MjMwMyBkMjdlNzYzMjY4MTk4N2FlNTY5OWI1MWQ4N2MyNjA0YjI3MTQzODhkIGxlZ2FjeS10cnVuaworNTIzMDQgMTdmNDE3ODA5ZTIzOTgzYzAzZDY2NjJmYmNlNGM0OTZjY2IzZjc2MiByZWxlYXNlMjUtbWFpbnQKKzUyMzA1IDQxNTkzODZmOGRiZGZjMDU1NmQ2MzA3NmFlZjVlNmRhNDMxYTM3OWQgbGVnYWN5LXRydW5rCis1MjMwNiBhMGJmNzI4MWJkMjBiNjVhNTg0ZjRhNjI5OWNiZWNlMjU5NTZkODM0IHJlbGVhc2UyNS1tYWludAorNTIzMDcgMTBhYmZjYjY2ZTY3YmRlZmE3ZDdjNTcwOWQ5NTcwNjdmZTI0ZmUyNyBsZWdhY3ktdHJ1bmsKKzUyMzA4IGNkNWY3Y2QyMDk4ZWIzZjc0YWJlOGZiODRmZmE5MTBiMmYxMDZlYjYgcmVsZWFzZTI1LW1haW50Cis1MjMwOSBmNDQzMGJlYzMwMTNlMjhmOTExMTQ1ZGE1YWU2YzBkNjkxNzA4MWNkIGxlZ2FjeS10cnVuaworNTIzMTAgMWExYTU5ZjUwYjRhZTIyOGY5NjFjOWMyZGRmMzU2NWM5ZTc1MjEwMiByZWxlYXNlMjUtbWFpbnQKKzUyMzExIGEyNDgwMWRhOTJlZTBkNTJiNjEwMzBmYWQ3YTcwZTVlNmFmMWI4YjYgbGVnYWN5LXRydW5rCis1MjMxMiAxZThlOTAwZDlmNDlkMjdiNDBiMjViNjQzYTQzY2FiOTViOTY3YzliIHJlbGVhc2UyNS1tYWludAorNTIzMTMgN2ZhYmJjNGEwYzRlODZiNjY4MDNlODQ2MmQ3N2M0OTgxNzllNjFmOSBsZWdhY3ktdHJ1bmsKKzUyMzE0IDNjZmE4OGZiMGY0NTM5NzhjMGE2ZjIwYjAzYzI2NmY4Mjg0MzQxMmUgcmVsZWFzZTI1LW1haW50Cis1MjMxNSA2MzU0MzhiMjk2NzNmZDYxMWYyMjk5YmQ3Yzg2OWVmMjE0YmVkYjFmIGxlZ2FjeS10cnVuaworNTIzMTYgYzRjNGVlYzY0YzEzNjRiYzY4ODRhYzBiNTRhNmJmNzA4NjgzMTRlNiBsZWdhY3ktdHJ1bmsKKzUyMzE5IGM3N2Q5YTlmZTcwNDM2OTJmM2NjZTJjYWUxMjEyMTc5NGMxYWQ2OTkgdGhlbGxlcl9tb2R1bGVmaW5kZXIKKzUyMzIwIDhlNjg1YjIzODlkY2VlYWYzOTE0YTUxNDYwOTYxMzQ4NWI0YzZjZGIgdGhlbGxlcl9tb2R1bGVmaW5kZXIKKzUyMzI3IDM5Yjk5MWJhODc4Zjc5MDVjNjg0Mjg1NDUzMTY1ZGRmNmZlODFiZGQgbGVnYWN5LXRydW5rCis1MjMzMSAxMDlmOTBjMjY2ZmJjMjg3MzZjNDM1YTVkOTkwMzVlZjMwN2JhYmNhIGJjYW5ub24tb2JqY2FwCis1MjMzMiAzOTg1ZDdlMjA2N2RiNzVmMTcwZTA4OTE5OTRiMGZkNzA5NjNlNDBiIGxlZ2FjeS10cnVuaworNTIzMzMgYjYxYTkwZTc0N2U3YzkyOTAyNTI5ODNjNjU2YTQyNzJjNzlmN2YwNiBsZWdhY3ktdHJ1bmsKKzUyMzM0IDg0ZDNiNzJkYzMzOTJhNmQxMGRlY2Y5YmFjZTBiNWJiN2FjMTIxZjkgcmVsZWFzZTI1LW1haW50Cis1MjMzNSBiOTRiY2I3YWVkM2RkM2FhN2EwYzllN2EwMmRkODg4OWVmOGQyMDBlIGxlZ2FjeS10cnVuaworNTIzMzYgM2JjNGE5NDAxYTExNjE3YjU2NTc2MmZiZDAxMGZmNTMwMjhkNTVhYiBsZWdhY3ktdHJ1bmsKKzUyMzM3IGRhZTc0YTgwOTRkOTBhM2IwYzUyNjlmZTY2MWVhYTAwNWIyY2ZiYjggcmVsZWFzZTI1LW1haW50Cis1MjMzOCBiYjM1YzU1YmM0NjcwYmQwZGViMjk1NzZlMTljNmY4NWRkZjAyZjhkIGxlZ2FjeS10cnVuaworNTIzMzkgMGY1MDVlYzhiOTdhYTIxZTBmYWExNmQ0NDBmNDY5MGY3M2Q1MWUyNSBsZWdhY3ktdHJ1bmsKKzUyMzQwIDQ1ZWZlNDM1NmI2MWVkYTAzMDk2N2YxMTk5Nzg0YThmZjRjMDliOWMgcmVsZWFzZTI1LW1haW50Cis1MjM0MSBjMDA2ZDIyNzk0OGRlZWQ0OWRjODFlMTNiMDYzNTZhMmUwNjk4YzE4IGxlZ2FjeS10cnVuaworNTIzNDIgMDVjMGNkMjdhYmNhMDg2NjEzNDBjYTdjZTgwMzQzY2Y3YjliODYwMiBsZWdhY3ktdHJ1bmsKKzUyMzQzIGRlODhjMzYzZDYyMjM2Mjg2MzMyOGUyNmUyYmEzMmFkOGMyZDJhMjMgbGVnYWN5LXRydW5rCis1MjM0NCBhMjlkMTAwYzc4MTUzYzEwYTJhMjRhZTcwYmE4YTk1YWU4OTI2N2MxIGxlZ2FjeS10cnVuaworNTIzNDUgNTYxNWVhYzhhYTc5NzZmY2U2NjYyZDg4NDY2YzQzYWJmYzNjNDVlMiByZWxlYXNlMjUtbWFpbnQKKzUyMzQ2IDJhMWE1ZGMyNTVhZGM5MmI3MTE0ODY4MTU3NWExYWJjMWY0OTE2NjYgbGVnYWN5LXRydW5rCis1MjM0NyAxZTU1NWYwNDhlM2Q0YmJlMGI2MzBjOTQzMmM0MzY1ZWI2YjFlOTYyIHJlbGVhc2UyNS1tYWludAorNTIzNTQgZmE5NmJmZjkzYmNhZDAwYWQ3M2Q2OTI3NDhmODY4MzkwMzJlMWU1MCBsZWdhY3ktdHJ1bmsKKzUyMzU2IGJmOGRhZjRhNmU3MWExZWEyZTVkZTUxZmM2NDhkZjc1ZTVhYTg4NDEgbGVnYWN5LXRydW5rCis1MjM1NyA0NjljMmQ2YzgxNjViMjU2NzUzMzVhYTVlYTM5ZTg5MGMzOTcwYWFlIHJlbGVhc2UyNS1tYWludAorNTIzNTggODUwNTA4MzkxZDQ2YmRlNGUwMDE3MmE0OTQ5MWMxYWIyOTYwMGE4MyByZWxlYXNlMjQtbWFpbnQKKzUyMzU5IGUxY2IzMjY0NWY3N2UxZjk3ZWY5MTc3Y2MxMDExMWQ3MTgwZWE2MGUgcmVsZWFzZTI0LW1haW50Cis1MjM2MCA3YzdlYjE5MGIyNjYzMGZjNjJlNjRlODk1NTA5NTI2ZGI2YzNmMjU1IGxlZ2FjeS10cnVuaworNTIzNjEgYTY1MTFlODI5N2YwNDhjNTMyYTg3NDk1NmNlZGE1NWZmOTU4NmVjYSByZWxlYXNlMjUtbWFpbnQKKzUyMzYyIGZiNWRiMTJmMDI2NzYwMjE5YzhhYzYzNDQxNTJjNDYxNjlhNDUyMTMgcmVsZWFzZTI1LW1haW50Cis1MjM2MyAxNDUxM2RiMGQ2MmQ1MGZmMjJhMjM3NjFlMzNiOTM1ODc3ZmYyZWZhIGxlZ2FjeS10cnVuaworNTIzNjUgNTJmZTBlY2Y1NWMxYTE4MTA1ZmY1YzJkNzc5YTg3MWY3ZmNhZjU0OCBsZWdhY3ktdHJ1bmsKKzUyMzY3IDQwNTBmMjUzYTZmOGE1ZjAyNzkzODhjYjZlYTEwNzk5YjY3OWQzZDcgcmVsZWFzZTI1LW1haW50Cis1MjM3MiAzNDU1NTQyMmRjNDVmODhmNTI5M2ZiOWZiYTMxOWI1NTllODc2YWE5IGJjYW5ub24tb2JqY2FwCis1MjM3NyA0OThjZjRiMDlkOGFjMDNlNDVmM2EwZTI2YTczY2I5MTNmZTc2NzgwIGxlZ2FjeS10cnVuaworNTIzNzggNjYwOWYwMjA2NDlmMGQwY2Y2NTNlNjllOGExOTA2YTg2YTNjYTRkMyBsZWdhY3ktdHJ1bmsKKzUyMzc5IGExYTY3OTEwNTI4ODZjODkwYTBmMTE5YzUyNWMzZDI3MThmMjdjNGMgbGVnYWN5LXRydW5rCis1MjM4MCBiMWQ3MDhjMzNlYWI0MjkwMjYyZTk2ODUzY2ZiNDM0NWY5ZTA3MzBhIHJlbGVhc2UyNC1tYWludAorNTIzODEgZmIwYzZhNjdhOTM5ZThhMmVhMjc3OWY3OWUzMmMzYjc2ODljMzdlNCByZWxlYXNlMjUtbWFpbnQKKzUyMzgyIGVlNjZhMTVhOTAzMDIxY2EyNTA0YTMyMzI0ZDNkY2JjNDZlYThhOWIgcmVsZWFzZTI0LW1haW50Cis1MjM4MyA1OTJhYzkzNTMyZWZkZmE5YTQwZjQ3Yjk2YjFjMTIzMWQyZWFlMGU1IHJlbGVhc2UyNC1tYWludAorNTIzODQgMTA0MzRkMWI0MjY2MWI3MDAxODhjODJlZmMzNTA3MWY4MjRjYzFlNCByZWxlYXNlMjQtbWFpbnQKKzUyMzg3IDQxMGMxYzc4ZWQ1MWUxMmRjM2RlOTU3OTU5ZjZiNzk3MGMzNzk5NGEgbGVnYWN5LXRydW5rCis1MjM4OCBlMmRmMTM1NjM0OWYxNjhiYWViYjMzNWUyMWMxNTgzMzMwNDNkNGRmIGxlZ2FjeS10cnVuaworNTIzODkgMDUwOWFiMTRiMmQ5N2NlZWVmZTI1ZTk2NDMyZjRlMzczZWFhYjgyZSBsZWdhY3ktdHJ1bmsKKzUyMzkwIDE4YzEyZDM0MjE0MzgyZmFmOGM1ZmE1Y2IzYzYzNjQ5MDUzODQyYzYgbGVnYWN5LXRydW5rCis1MjM5MSAxOWRlMzE2NDkyZTczOGNlZWRlY2I4ZWM1ODA4NDc1MTM2ZGM2NmMwIHJlbGVhc2UyNS1tYWludAorNTIzOTQgM2I4NTMzMzQyOGY5ODZkZDZkOTFkNTdmMDdjZTUwNzIxYjAxODViNSByZWxlYXNlMjUtbWFpbnQKKzUyNDA1IDg2ZWE4OGM1MjA1YmY1MDQ1MWEzMjMwZjY3MzVkY2MyZjIzYzk2M2EgcmVsZWFzZTI1LW1haW50Cis1MjQxNCA4MjZlODY3NGExMWQ1ODk1N2ZiYWVhZGRlOGMwOTY0ZWVjMDdmMjMxIGxlZ2FjeS10cnVuaworNTI0MTUgYTBkOWZjZjZmMjE1M2Y1Mjk3YTE0YmUyZTE5N2RiOTVhMTcxOTg5ZCBsZWdhY3ktdHJ1bmsKKzUyNDE2IDM4NGVmODdmY2MyNTc5ZWE2ZDVlOWI3Nzg1MDJhMGM0ZmY4YzUxMjAgbGVnYWN5LXRydW5rCis1MjQxNyBjNTQ0MmI0MjRhODY5Mzg1ZTAzM2NlN2MyOGZlN2FhNjAyN2RmYTZjIHJlbGVhc2UyNS1tYWludAorNTI0MTggNTAzMGZiNGE0MDBmZWJiOWFjOGNkNDc5MmI4Njc2YjhlNTk4ZDk1NSBsZWdhY3ktdHJ1bmsKKzUyNDE5IGU5Yzg0NGM0ZDFhMWM5NTg3ZWZkNzZkOWUxMWI3YWQ3OTdhYWVmY2IgcmVsZWFzZTI1LW1haW50Cis1MjQyMCA3NDlkODU1ZWUzNTcxYWI3ZTU3YzJmNDkxOGQ1NTEwMjFjZmE2M2MxIGxlZ2FjeS10cnVuaworNTI0MjEgMTIzYzE0ZWQzMDhhMTUzODFkNDBiMDgzOWY1MzdkMDhlZWZlOGNiNiByZWxlYXNlMjUtbWFpbnQKKzUyNDIzIDRlY2YxNjYyNDQ5ODQ0ZTZlMGNkYzk5YjQ0ODE3Y2QzZDlkOTFjYjAgcmVsZWFzZTIzLW1haW50Cis1MjQyNCA4Y2QwYjcxMTNhNzFhMDU1MWUzODMwY2ZmZmZhNThhMDE4MTZhMDRmIHJlbGVhc2UyMy1tYWludAorNTI0MjUgYjIxNDI3ZmYyNjQ3NWY5YzdmNGE3MDFkYTMyNGU5NTFjMmIxNjJmZSByZWxlYXNlMjMtbWFpbnQKKzUyNDI2IGNkZDM0NzZkMWIwNmIzYjRlY2M4OWVkMzVkNWI0OGI2ZGZiNjAzYTYgcmVsZWFzZTIzLW1haW50Cis1MjQzMSBlODJlNjk2YzAzZGM4YWQ2MzZhNzMzMTc1MzMyZjI3YzVjN2M2N2I3IGxlZ2FjeS10cnVuaworNTI0MzIgMDUwMDQwY2JhMjZhNDVhODE5OThiZDc5NWEyYTZlMmQwMzM0ZjU2YSByZWxlYXNlMjUtbWFpbnQKKzUyNDQ2IDkxODY1OTgyOTZjYjA5ZTE1OTU1YTU3ZDE4OWEyNzFmOWQ3ZTg5ZWQgbGVnYWN5LXRydW5rCis1MjQ0NyA5NDczNjZlMTMxZmRhZTIwMTJkOGY5NmIyZDI5ZmY5NjFiNjI4Y2E1IHJlbGVhc2UyNS1tYWludAorNTI0NDggZDc4YTdhNjA1NjE5Mzk2OGU4ODU2Y2M4MjdkODNkMTEzOWY4ODRlNCByZWxlYXNlMjQtbWFpbnQKKzUyNDQ5IDE1ODZmYWIzYzg0OGI5NDQ3MjdlMWM0ZmRkOTdhZmIzOTYzYjY3ZTIgbGVnYWN5LXRydW5rCis1MjQ1MiAwYzFjYjkyZGFjOTdlZjM5ZTExNWY5YzU5Y2EzMzQ5MzllOGJjOGU4IGxlZ2FjeS10cnVuaworNTI0NTMgMGU4M2Y4YzVkNzBhZWMzNDczMWIwYjhlMWZjNWE3MGFjZmM2MjgyMiByZWxlYXNlMjUtbWFpbnQKKzUyNDU0IGMwZjU2ZjI0NjFmNTI5OGZiYzEzOTE0Zjc5ZWEzYzcxNDZmZjg3NjkgbGVnYWN5LXRydW5rCis1MjQ1NSA1ZGM0NzMxNjUwOGZiNGU4YmYyNmJkMDJmZGE1NWUwZWRhYTAxZTQ2IHJlbGVhc2UyNS1tYWludAorNTI0NTYgMDE1Zjg5YTczOTI5ZTRiYjNjZDJiNDdkZDAwMjFhMjJmMzU4NDRlYyBsZWdhY3ktdHJ1bmsKKzUyNDU3IDM0ZGNiYzc0NjI0M2U2N2MyMTZjYzljOWFhNDhhZWNiYjAwNjliMTggcmVsZWFzZTI1LW1haW50Cis1MjQ1OCBlNWNiNGNiNTY1NDFiOTdjYjAyN2VkYWEyZWJiNGRiYTM2YTczZTY0IGxlZ2FjeS10cnVuaworNTI0NTkgZDNkYmIzMjZmZmJhYzc5YTU3YzM5ZjZiNzVjYTk1NGU0ZjY0YjViMyBsZWdhY3ktdHJ1bmsKKzUyNDYwIGFkNGM5YmExZGI1N2ZkMWUwMmMwNGQ2Njk3OTFmYjk3ZTZiNWYzNTEgbGVnYWN5LXRydW5rCis1MjQ2MSA1YTEwNmI0YmNkZDI4ZjIzYWMzYmY5NDlmY2UxOTBlMDBhOTdlMTk2IGxlZ2FjeS10cnVuaworNTI0NjIgZTU3ODJlMmE0MTJiYTE4ZTMyYmI2OTZjNGNlOGIxMTUzNGNmMTc5YyBsZWdhY3ktdHJ1bmsKKzUyNDYzIDdhZjk0YTI3MjNlY2IxMzRmZmUwYjBkYmIwM2FlYTFhZTkyMzVmN2EgcmVsZWFzZTI1LW1haW50Cis1MjQ2NCAwZDUxNzZlMmJmZTRiNDRhOTFlNzRiMjM2MWQyZjM5MzM4NWMzMmEzIGxlZ2FjeS10cnVuaworNTI0NjUgZGRiMWRiNTY1NjA4OTNjNGI3YTU2MGU1OTAzNTVhOWU1Y2U2ZTEwYiByZWxlYXNlMjUtbWFpbnQKKzUyNDY2IGU4NjdiNTk1MDc5ZTkyN2U0ZjJjZWRmOWEwYmE0MmI1MTE3OTA1OWMgbGVnYWN5LXRydW5rCis1MjQ2NyBiNTZiNTYyZTNhN2I3YzgxZjEwZTE2OTZhZmFjZTE5ZDIwNTJmMmM2IHJlbGVhc2UyNS1tYWludAorNTI0NjggNzYyZGNhZDcyMGI1M2VhY2YxNGE3YzM3MDZmNzJlZTU5YzE1ZDBiZiByZWxlYXNlMjQtbWFpbnQKKzUyNDY5IGUyZTgwYTAxNjk0NTIyMDlhNmU0ZDIyYmM5Y2NhZDIwMDFlZDQ3YmIgbGVnYWN5LXRydW5rCis1MjQ3MCBjNWE2YWNlM2ZjN2ZkMjU0YjIzOGQ3YmMwYjRhMjI5OWM0MTJkMTk2IHJlbGVhc2UyNS1tYWludAorNTI0NzEgNThkYjk2OGQxNDQ4MmU3Yzk0NTViYjJiNzc2ZmYyZDZlMGQ3OTI1YSByZWxlYXNlMjQtbWFpbnQKKzUyNDcyIDZiOTFjMGRjZWE1OGE2NjZiNzkxMWNmOGRmMGM4N2MwZjc4NmQ0MGMgcmVsZWFzZTI0LW1haW50Cis1MjQ3MyA4ZjlhZDM1ODEzNmYwMzkxNDI5ZDQxYjVmYmFkMzY2YjYzMDBjMmI0IGxlZ2FjeS10cnVuaworNTI0NzQgMjljMDFlNjJjZTZiY2FlNjgxNjkwYzI2Y2QyYTUyZTNjYzE4MWNmZCByZWxlYXNlMjUtbWFpbnQKKzUyNDc1IDE5NTU1OWM1YmFjZGYwNmMyNjJmNjBkZmVmZjQxNzEzODdkOGFlNWEgcmVsZWFzZTI0LW1haW50Cis1MjQ3NiBlM2I5YzYzOTc3MjM0ODJjZDFhZWI5NjNkZDQzYmVmYmMyMDVlZmUyIGxlZ2FjeS10cnVuaworNTI0NzcgZjQ1YjJmMGM1NDJmYzNjMmI4YWVhNzVlOTY2ZTIyMGY1Zjk2MGNhNiByZWxlYXNlMjUtbWFpbnQKKzUyNDc4IDc3MGM3MThiYzk3ZTAyYTJiM2NiMjdlNGRiOWNkMzUwYWUxZGQ2M2EgbGVnYWN5LXRydW5rCis1MjQ3OSBiYjBkYjQ1ZjIwZWEyYmMzNzdmYjQ2ZWFiNTQ3NmRlMjVlMmYxZjIzIHJlbGVhc2UyNS1tYWludAorNTI0ODAgZmI5YTdiMjg4ZGNlMjk0MzU1NmUyNTU3M2QxMDdhMmE2YjA5MWNjNCBsZWdhY3ktdHJ1bmsKKzUyNDgxIDlkNjkxZDM3NTVkMGRlNGUxZWIxMjc0OWI5YzMxZjdkOWFmNjk3YWQgbGVnYWN5LXRydW5rCis1MjQ4MiBiOTExNjZlOGQzOGRiMGM3MWMzZWQzOWU2Y2Y5YzlhNDMzZTdmMzdhIHJlbGVhc2UyNS1tYWludAorNTI0ODMgOThlOTAwNDk5MDQzNDE1NDBjYjI5MDA0ZDlkM2U0OTk1NGRjYjZmYiBsZWdhY3ktdHJ1bmsKKzUyNDg0IDg2MjQ5MDlmNTAzMWY0MGQ5MjU1ZjdlNjc3ZjhkNzA5MTEyOWRmMTMgbGVnYWN5LXRydW5rCis1MjQ4NSA5ODhkOTVmZjFmZGI3MmFkMDU3YzgwN2Y4NzA2YTczOTBiNmYwYTFmIGxlZ2FjeS10cnVuaworNTI0ODYgMTg4NzFhMTBmZmMxZmE1NGZjYjIwOWY4MmE1OWYxNjVmMjIxODIxOCByZWxlYXNlMjUtbWFpbnQKKzUyNDg3IDQzYTgyNjQ2N2FkM2NlYWJmYjQxNDRhNzRhMDUyMDEzZTFiYzk1MGUgbGVnYWN5LXRydW5rCis1MjQ4OCA1ZDVmMTg0NDM2NjRkMTU3MjJkMmE3NmZkNDQ5MDEyZDRhOTE1ZTU5IGxlZ2FjeS10cnVuaworNTI0ODkgZGMxZTQzNjE3OTcyODIyZjI3ZDE3YmJjMjc3NzFhNWY0ZmFmNzdiZSByZWxlYXNlMjUtbWFpbnQKKzUyNDkwIGQwYmQ4YThhZmIwMTAzYzZjMTNjNTNjNWY1ZmI4MTk3YzRhMTA5MTQgcDN5aworNTI0OTEgMWNjZTA1MjZkOWIwYTUzZjRmZjk1NzEzZGRlMTUzZGM3MGRhZTJkYyBwM3lrCis1MjQ5MiAyMTkwOGM3MGQyNjRiY2Y5MzI3Mzg4MzljNDNmNGExM2Q2MGIzNzU2IGxlZ2FjeS10cnVuaworNTI0OTMgMTNiOGFkNjc5ZGVmYzc0MzRiMWJhMWM1ZTMzYTFmYjIzNDk4MDhmYyBsZWdhY3ktdHJ1bmsKKzUyNDk0IDUxMzM5ZDM5YTU5NmFmZjAyYWQxNWMzODg0NjdhYmQ3MWIzNjEwNTYgbGVnYWN5LXRydW5rCis1MjQ5NSA2OTcyOGE3ZDIzMTIzOWNlYzUxNTBlYjdiMTVkYmY2ZThjNzViNTEyIGxlZ2FjeS10cnVuaworNTI0OTYgN2QwYmRkNmUxYzQ2OGIyYjU2MWE2MzU1NDNiOGZlMmZhN2IzMTAxYyBsZWdhY3ktdHJ1bmsKKzUyNDk3IGMzODFmY2Y5ZDEwODFjNjU1ZDhjNjZlOTUyZjlmZmUyOTdmODkwZGMgbGVnYWN5LXRydW5rCis1MjQ5OCAyZDVhNWRlZGQ5NzU5NjgxZTllYjIzYjFiOTc1ZDQyODc5ZmY4MDFlIHJlbGVhc2UyNS1tYWludAorNTI1MDAgNGM1M2IyNDNjMzkyMmE0NTQzMTVjM2VlNTc2YzRmMjA3ZGVkZDEyOCBsZWdhY3ktdHJ1bmsKKzUyNTAxIGM1OGQxYjk2OTg0MzhlNmFjMGY4ZjRiZDAxNGJlMDVhNmE5NGUyNzYgbGVnYWN5LXRydW5rCis1MjUwMiA3OTYzMDRlZmEyNjhjMDVkMmUzZTk3Zjg4YzYyMDhkZDU3NmZjMzMxIGxlZ2FjeS10cnVuaworNTI1MDMgNjFlNGI1OWFkYTBjMjllZjkyNGQxMWE4NjJmMGVmNTYyMzMzYjExNCBsZWdhY3ktdHJ1bmsKKzUyNTA0IDM2MDg2MDVhNzRkNThlNTZlYThhMmE5ZTNiMTU4MmI1Nzg3N2NhYTcgbGVnYWN5LXRydW5rCis1MjUwNSBjNGU1ZTUzYmE3M2YzNThiOTg5NDAxY2YzNDczYmQ0MTZlZWYwNDc1IGxlZ2FjeS10cnVuaworNTI1MDYgMzIxYzA3NWY5NWNmZGFjN2QxZTE4YmIwNTFhZTM4MGZkYmJmMjI1YiBsZWdhY3ktdHJ1bmsKKzUyNTA3IGExODYzODMzYzRlNmY3MGFjODkyODY5OTY1OTgyMDdlNzljZDFmN2IgcmVsZWFzZTI1LW1haW50Cis1MjUwOCA0YzYxZjQwMGNlMzBkMGNiOWY4NTZjMGI4ZjE0MzRlOGVmZmFkNTE0IHJlbGVhc2UyNS1tYWludAorNTI1MDkgMzgwYTM1ZDc4YzYwODk2Yjg2OWYyNzBlOTBjZDE5MWQxYTBjNTRhOCByZWxlYXNlMjUtbWFpbnQKKzUyNTEwIDlhY2MxNzc1ZDU3MTRiYmZlMjE5MDNiMTRlZjU2ZmUyZTMzYzFhMzUgcmVsZWFzZTI1LW1haW50Cis1MjUxMSA2YTY0NjllMjk0ZTcyZmNhYmM5YTQwYTM1OGVhY2EwODdmMTVhZGE0IHJlbGVhc2UyNS1tYWludAorNTI1MTIgZDAyMGUyZjcwOGJlODI5ZjM1OTdjNDFlODg2MmMyOTRjMTkwM2Y4YyByZWxlYXNlMjUtbWFpbnQKKzUyNTEzIGRlMjYxZjc2M2I0Y2MwNDk1OTA0N2ZjYWU0YjlmNjAyZjU2MzFmYmIgbGVnYWN5LXRydW5rCis1MjUxNCA0ODFiYmE0MWY5ZjQ1MGUyNjVmMWE5MTcyYTBiNDZiNmQ0NDljMjM2IGxlZ2FjeS10cnVuaworNTI1MTUgZDIxZGQ4Y2JjNzE2MTY3YTA0MTZjODczNjk0YjM2NTJjY2M5ZGZlMiByZWxlYXNlMjUtbWFpbnQKKzUyNTE3IDdjNDA1ODY4MTIyNDk1NWRlNmFlYTJmYWJhNGExYWFmMjMzYzE5ZTQgbGVnYWN5LXRydW5rCis1MjUxOCBkMjQ1ZWZjN2VjODkwMDQ4YWVjNzFiZWM5Y2NmMTQyMTRkODNlYTVlIHJlbGVhc2UyNS1tYWludAorNTI1MTkgNmE4NjBjODFhYjdkMDgzOTgyNzhjN2NhNmQ2OTYzYmU0MzZkMWVjOSBsZWdhY3ktdHJ1bmsKKzUyNTIwIDRkODMzZmNhMzY3MDJjYmVhYzQ3MzYxNjAyMzQ4OGQ5MDdkMWU4NjQgbGVnYWN5LXRydW5rCis1MjUyMSAyYTFlYWU2YzBlYjg2MmE1YTg0ZGJlNTAwYjIwYmRjNTJhODRjMTdkIGxlZ2FjeS10cnVuaworNTI1MjIgYTcyZDk3MGMzODRiZDEzNTk0YzU2MzE1YjhhNWUyYWIzZWFlYTQ3OSBsZWdhY3ktdHJ1bmsKKzUyNTIzIDNkM2YxMjdkM2UwYzc5YmU4M2ZiNTBiMmNmZjM1MGY3MzBmZTBmN2MgcmVsZWFzZTI1LW1haW50Cis1MjUyNCBmZDhhNWY5MjVkNGQ1MTM5Y2UyNjIzNzIxMTNiZmRmMTMyMjVhNjkzIGxlZ2FjeS10cnVuaworNTI1MjUgZWQyMmNhOGY3OGZmMDNhNTMwYjBiZmQ1MDYzM2ZkYTRkYTkwZWRjZCByZWxlYXNlMjUtbWFpbnQKKzUyNTI2IGM3ZDc3OGRhMTYyYzkyMGZhYWVjMmIzZTEzZmI4OWVhMzU1MTMxMWIgbGVnYWN5LXRydW5rCis1MjUyNyA5NjYzMTAwYzk1Y2EyZDI2MTIxNzE1NGY3NDM2NGEwZTdjNzAxYWVhIGxlZ2FjeS10cnVuaworNTI1MjggN2M0NDE0NDcxNGY2OGY5MmE3YWI3NDIzM2Q0NDUxZjY5OWM0YjhkNSByZWxlYXNlMjUtbWFpbnQKKzUyNTI5IGUxNjgwMGFjMWVlYTE0MWYwZDIzZTQzYzMyMDNkNTMwNDBhZDgwOWMgbGVnYWN5LXRydW5rCis1MjUzMCA4MjY5NWU3MzY4MjNmMDI4NDZlY2VjMDUwN2NhMTg0MTE4OTJjN2I2IHJlbGVhc2UyNS1tYWludAorNTI1MzEgZjQ5Y2I2MDkwNDI4NzNiNjVkZjhlYjM1NzIxYzdjMzI0YWY4YTlmNiByZWxlYXNlMjUtbWFpbnQKKzUyNTMyIGRhNzljNGU5YTViYmZiNTc0YTJjZjAyZGM3MTAxZGJhMzg5MDMzMTEgbGVnYWN5LXRydW5rCis1MjUzMyA5MzY2N2E3ODViODM0NjYwZjNlNWVlMmQ1MGJlM2IxMjViNWJmODc2IHJlbGVhc2UyNS1tYWludAorNTI1MzQgYzY3NzRlYjNhMDY3MzY1ZmM5ODk2NDI0N2NjOThiOGMyZjk5MjY5NiBsZWdhY3ktdHJ1bmsKKzUyNTM1IDlhYjdhNzczNmNhMDVkMzUyYmE5OThkMjVlYjM0OWJjMGZhZTViN2YgbGVnYWN5LXRydW5rCis1MjUzNiBiZjc4YmU2M2YyMGQ1NmJlNGU4MDNiNzJjODQxMDA0ZmMzMmFkN2U1IHJlbGVhc2UyNS1tYWludAorNTI1MzcgZDlhOGQ0ZjFkNjUxNGM3ZmU5NDczNzY1MzFiMDc2YWM0MjJiYWRlZSBsZWdhY3ktdHJ1bmsKKzUyNTM4IGY1NmIyNTE2ODE0MmM5NDU0ZGQwODllOTc3NTljOGQwODE3N2E0MzQgbGVnYWN5LXRydW5rCis1MjUzOSA3Y2U4NzJiZjAwYTNmOWRhMTRjMDVkNTQ2YTE1NTc4MmZjODEyNGNiIGxlZ2FjeS10cnVuaworNTI1NDAgNDE0ZWMyNjJkNjA4ZTRkYWExY2QzOGQ1NDBjZGYxMDExNzFhOWYxYyBsZWdhY3ktdHJ1bmsKKzUyNTQxIDhkNmQzMTViMmFmM2I5NWZhYTY1ZDAyNjU3M2UzZDZjM2NhYmE1YmIgbGVnYWN5LXRydW5rCis1MjU0MiBjYTNkMWQzYzRkOGMyY2YzMmY0YTc3NzgxMTMzNzQyYjg2ZjNjZGVkIGxlZ2FjeS10cnVuaworNTI1NDMgYzM3MDdkYTgwYWVmMzllOTQ3YjhmZGIxZmQ5YjJmMDMzMDVhNjMxYSBsZWdhY3ktdHJ1bmsKKzUyNTQ0IDEwMDczMjhmOWRiNTE0ZWVjZDFiOTFlZjZiOGFhZmFlM2M0MWNkZGYgbGVnYWN5LXRydW5rCis1MjU0NSA3NTUwNjgxMGNiYmY0Y2MwNWFjZWM3OGZiZmU2MWIxYjliNTg1ZWQ4IGxlZ2FjeS10cnVuaworNTI1NDYgZmZjYzY5NmUxZGEzYzI0MjhjNmRlMTYwMDE0M2ZlZGM4NDM0MDYxOSBsZWdhY3ktdHJ1bmsKKzUyNTQ3IDBkMGFlODRkZDFiN2FlYWViODEwZjYwZGNmOTMxNGYxMTkwZjBjMDIgbGVnYWN5LXRydW5rCis1MjU0OCAxNzE1ZTZhMGFlZTlhZDBmZDc5ZmYwMTM0M2JmODE2ODkxODRkOTM2IGxlZ2FjeS10cnVuaworNTI1NDkgYzVhMmY0MzFjNjk4ZWYzMGY0OGZjMWZlNjQ5Y2U3YjRiZjZiOTU5OCBsZWdhY3ktdHJ1bmsKKzUyNTUwIGE4YTZlMmI4NGJiYWY2OGQ0N2I5MDU2YmI5NGI5YWQ3NTFlZWViMjIgbGVnYWN5LXRydW5rCis1MjU1MSBiODg1MGFlYzA0NjZmZmVkMzgyYzVmZWJmZjYxYmFkNDIzM2NjMTcyIHJlbGVhc2UyNS1tYWludAorNTI1NTIgYmM4ZmZjM2UzY2RiNGU5Y2Y1OWJiZDZkZmNhNTMwMTMxMjIzOWU4NiBsZWdhY3ktdHJ1bmsKKzUyNTU1IGI4MjA0MDY4NTJhMGE5Y2QwYmU0ZDkyYjNkYmY2M2U0ZTQzNGM4NjIgbGVnYWN5LXRydW5rCis1MjU1NiAzMzg0MGM0MDcyYjc0NzQyMWZkNzQ5MDc4ZjNlZjc5MDk1ZWI3MzNjIGxlZ2FjeS10cnVuaworNTI1NzIgMWFiY2ZlZmVhM2VlYTY5NzMxODJmMzFkMzZhOGI5NWZjN2JlNDhmNSByZWxlYXNlMjMtbWFpbnQKKzUyNTczIDNiNmZiNTQzOWMxMDYxYTk0MTQwMTI0NTA3NmMzMTViZWFmY2M3ODcgcmVsZWFzZTIzLW1haW50Cis1MjU3NCBiNjc1NTNjMTRmYmNhZTFlMjA0Yjc1NmRjNGNjOTJlMWQ0YWRjN2M0IHJlbGVhc2UyMy1tYWludAorNTI1ODggYTNiZTQwYzA3MjUwMzAzN2I2ZWZmZjVhMzFlZThmMTBiMzZkZTQyNCBsZWdhY3ktdHJ1bmsKKzUyNTg5IDg3MWIwNWQyNTJiZTBhYTExZGFmZTE4NzU0YWQxOGJjYjI2YjBkNjcgcmVsZWFzZTI1LW1haW50Cis1MjU5MiBhZTQxMWZlMWVlYzAxYjJhMjUyNzEyYjI0MTA5MWQzMThiNzQ5YmE5IGxlZ2FjeS10cnVuaworNTI1OTMgM2U0ZTBiZTQwZjUyMDkzODU3NmU3Njc2ZmYwNDU3ODMwYjY2YjM1MiByZWxlYXNlMjUtbWFpbnQKKzUyNTk4IGZmNjc4NjY5YWE2ZTEzMWVjZDJhZTg3ZjAyMzExNDhlZDBlNWE0NzUgbGVnYWN5LXRydW5rCis1MjYxOSA1MzBkN2ViMGM2YzQ4ZjFkNTBhZDU0NDBlNWRhMGUzNWU4MDg0MGFjIGxlZ2FjeS10cnVuaworNTI2MjAgNmRmNGE5MTQzZGRmODgwNGVlOTU4ZTM2N2Q1MzU3ZDQxN2I5N2QyNyByZWxlYXNlMjUtbWFpbnQKKzUyNjIxIGViYWYzNDdkNDJmYjE0ZDczYjg5YmI5ZDJhYTA3MTkxZmM3MmRjMjYgbGVnYWN5LXRydW5rCis1MjYyMiAwMDNkODNkYTk5MzI2MjUwMmIxODg3YzBiNzNlYjM2OGY4NGVkYTVkIHJlbGVhc2UyNS1tYWludAorNTI2MzAgMWYwNTVmY2I2Y2E2NjBiZDdhM2QwZDk4N2JjMTA1ODExNWM3ZGE1ZSBsZWdhY3ktdHJ1bmsKKzUyNjMxIGQ3ODVjMjlmNTM0MDM1YmUzMDJiMGJkMjU2MjM1ZjQ5MDk2ZTMwNmIgbGVnYWN5LXRydW5rCis1MjYzMiAxYTBmNDY4ODNlYTVmMGYxMjEyMTNmMzIzYzU1OGY2YjM3YjU5YjY1IHJlbGVhc2UyNS1tYWludAorNTI2NDQgY2JlMTMzZDcyZTM5NzJkNzFkMjNmZjBhNWU3YjQ4NTdhMGM1NWYzYyBsZWdhY3ktdHJ1bmsKKzUyNjQ1IDU1MzFmNDYyMzJiN2FmNGJhNDU1ZDhhN2FmNjQwMmY1ZTllNjQwNjAgcmVsZWFzZTI1LW1haW50Cis1MjY0NiAyNDQ5OGQ0MzEyNmNiODlkNzJlZjdkMzI2NzI1NWM5NWRkNzc2ZGJlIHJlbGVhc2UyNC1tYWludAorNTI2NDcgZWQyYWM4MDg0ZTA0ODUwZDVjMDE3YmUyNmU3MjE4ZjZhNmNlZjY5OSBsZWdhY3ktdHJ1bmsKKzUyNjUxIDFkZTVlNzM5ZjlmZjU5M2RlOTBhMjNlNjUxMzkzZTg4MWRkOTQxZTUgbGVnYWN5LXRydW5rCis1MjY1MyAzY2MyZWFmMGU1ODE0OTlkYmZmYjAzOTQ3YjliYmUwNmVlNzdiYmRlIGxlZ2FjeS10cnVuaworNTI2NTQgZjg4NjI5OTgyNzBmYmZiYTA4MDZlODgxOTZlODQzM2Q3Y2U5M2RmZiByZWxlYXNlMjUtbWFpbnQKKzUyNjU3IDk2MzNmNTM4Yzk4ZGE2ZWY1ZGMzNDhmMzNmMGNjMDZlMTgzNjY2ZmEgbGVnYWN5LXRydW5rCis1MjY1OCA4ZDY4YjIyNGE4ZjA1OGUzMTM2NGViZDEyZWY5ZmQ1N2E5ZTI5MTY5IHJlbGVhc2UyNS1tYWludAorNTI2NjIgNjFjZDhjODdjZmUyYzM3ZTRkMzU3N2NhZWY1N2MxYjBmMjkyNGVjOCBsZWdhY3ktdHJ1bmsKKzUyNjYzIDc4Yzc1YjNkM2QwYmIxNDIwMTZmNGE0NjQ5Njg1Y2NhNzhhOWNhN2YgcmVsZWFzZTI1LW1haW50Cis1MjY2NCBmYTkwMjlhNDFjZThhYjA5YzgzOTg4Y2RkZjkwZmE4ZGQyMWY2YWIyIGxlZ2FjeS10cnVuaworNTI2NjUgYmQxNjIzZDA0YmZjNDRlMTc5MTgyMGYxZWQ1NTI0ZjBkNGIxODZkNCBsZWdhY3ktdHJ1bmsKKzUyNjY2IDRmOGViYWNlYzVmMDUzNjI4YzhmMjRkMTgyNzIyNzc3M2MwOGY5ZTEgbGVnYWN5LXRydW5rCis1MjY2NyAwMmMzNjZiMmFhYzJjYWM2NWYzMDdmZGVmOGNlYTY4YWYzNTMxZjEzIHJlbGVhc2UyNS1tYWludAorNTI2NjggMGRlYTM3YmNiZWZmNGMwMGQyMWM3Y2MwMDMzZDU3MzIzMDA3OTkzMyBsZWdhY3ktdHJ1bmsKKzUyNjY5IDdiODUxMjA2ZDI0Y2UzNGMzNDk5ZWRlM2MyZjM1ZWUyODMxZTEzOGMgcmVsZWFzZTI1LW1haW50Cis1MjY3MSA3MGM3NTZhYTkyNzNjMjA4NjM3MWM5NTZmNzg0YTcwOTczMGVhMWM2IGxlZ2FjeS10cnVuaworNTI2NzIgMzU3Yzk5NTM3ZTg1MmRkMzM5YTJkYjA2MTlmMTlkMTU1ODRmOWRlZSBsZWdhY3ktdHJ1bmsKKzUyNjczIDU3Njc0MjEyYzM3Y2YyYzk1NjBlNmYyNGVkNWI1ODE4YmE2ODMwMzIgbGVnYWN5LXRydW5rCis1MjY3NCAyNGE1ZGM3Nzc5MzE2NjQ2ZTBkMjBiZjMxMjY1NmE3YjkyYjE5NWE0IGxlZ2FjeS10cnVuaworNTI2ODYgNTI2Yzk1ODRmMjUyNzg2NzI2NzZkMDc4NzU3NTc2NmY2MmU1ZTJjZiBsZWdhY3ktdHJ1bmsKKzUyNjg3IDAyNWIyNGEyNjEzMTRkMTBlYTFkZWViZTY1NmJhMGI3YWIzYzMzYTAgcmVsZWFzZTI1LW1haW50Cis1MjY4OCAwN2IyOWJjZmMwMTM1MjM2OTExZDMxNTcwNGJiNWJlMjE4NzMwNTI4IGxlZ2FjeS10cnVuaworNTI2OTAgNmQ5OTc2MmNkODE4ODFkN2RjYjQzZWU4N2VlYmUyMjlmMDc2ZTczNiBsZWdhY3ktdHJ1bmsKKzUyNjkxIDZjMDY3NzI3M2M1YWJiM2I1OGJlYzZkNTAxOTkyMzhjOGU1OGE5YTQgcmVsZWFzZTI1LW1haW50Cis1MjY5MiBhZDc5NmZlNDcyY2FlZmU0NzE4ZmRlZTVhMWZjY2NlODIwNjE4NzE1IGxlZ2FjeS10cnVuaworNTI2OTUgNzA1OWRmN2MxNWRmODIzMTZjMTg5ZDlhMzU2Nzk2OTQwZTYwYjdlZiBsZWdhY3ktdHJ1bmsKKzUyNjk2IGMzMGM1ODRjYzZhYTQ5NmIxYTk5NWUxMTg2ZGMyZThiYzVkZTQ0ZTcgcmVsZWFzZTI1LW1haW50Cis1MjcxMiA1NjFmZmE3NTdkZmI1YTRjMjI2MWFiNjUzZWEwMDA2ZGRjYjNhNDM5IGxlZ2FjeS10cnVuaworNTI3MTYgNTRmNjIyZGQzYjI2NjY0YTUyYTllMTI2MTIyYmJkYWI0NWM5MTc2YyBsZWdhY3ktdHJ1bmsKKzUyNzE4IDczMjQyNWUzYjkyNzRiNzNmNWY3N2UxZmU2NWUwNDNkY2MzMDM3NmQgcmVsZWFzZTI1LW1haW50Cis1MjcxOSBkNzVjYmUyYjk2MDE5YzkyMDkxYmJjMzc4NTFiZjdjZTgzN2UxNmZjIGxlZ2FjeS10cnVuaworNTI3MjAgMGU1ZjJkMDU0OGViNmM5NjZhNzIxNjhlZjA4OWUxMmUzOGU0NDg5NyByZWxlYXNlMjUtbWFpbnQKKzUyNzI1IDZmMjk3MDkyMmM0NGNkODRmY2M2MGM4NzRlM2I4OGQ2NjYyNDRlNjcgbGVnYWN5LXRydW5rCis1MjcyNiA2MTZhMjA4ZjRiODA1MTQwMWM4YWM0Y2I3MDZjYjE3MjMyZmIxYjczIHJlbGVhc2UyNS1tYWludAorNTI3MjcgMTBhOTc3NGJiM2UzNDdlMGVlN2QwZGRhNjkzZGVjY2M5N2I2OGI3OSByZWxlYXNlMjUtbWFpbnQKKzUyNzMxIDQ0NjBlYzI0ZGFjOTBmOWM5YWI2OWQwZDJkMGNmMmUwZTcwNWMwOWMgbGVnYWN5LXRydW5rCis1MjczMiAzNWNmMTMzYWM3ZjhmMDEzYWE4MWE3OWFhNzIzZWE4N2VkNDQ5NmY4IHJlbGVhc2UyNS1tYWludAorNTI3MzMgMmNmMThmMTI3NjYzYzc4MTYwMmU0OTQ4ZmI1M2IwNjQ0NWQ1NDI0ZCBsZWdhY3ktdHJ1bmsKKzUyNzM0IDYzMzgxMmU4Y2ExYjZhOWE1YWQyZjVlYzA0NmI0MTkxMDkzNDNmOGYgcmVsZWFzZTI1LW1haW50Cis1MjczNiA5MGQzNTU4MjliYmI3ODY4ODU4OTNlMWMwZWEwNjVjYzM5OGJmNzBlIGxlZ2FjeS10cnVuaworNTI3MzcgOWY3ZmM2OGEyMGFlZGRjZWU2YjljZTk1ZWUwNjc2ZTZkNDRjY2I3OCBsZWdhY3ktdHJ1bmsKKzUyNzM4IGJmNGQyMDQ3NmE4NjE0ZTlhMWJkYjM4ZTM1YTFlY2MyYTU5OWQ0NjggbGVnYWN5LXRydW5rCis1MjczOSBlY2JlOTFiNWU0NmE1MzVhODUzNTE5ODFkZDFjZDdlNDBiZGJhOTRlIGxlZ2FjeS10cnVuaworNTI3NDAgNTkxZGFhNTM2MmIyZDQ4YTI3MjEzNWRkZWVhMTUxZjU1OTNmYTk0OSByZWxlYXNlMjUtbWFpbnQKKzUyNzQxIGQ0OWUwZGU0MDE5ZDFmNTVlMDFjYzIwN2M4ZTE4ZWY2OWI5MDg1OTAgbGVnYWN5LXRydW5rCis1Mjc0MiBlZmYxMWU0MzVmNDEwM2E2ZTc1MTcxM2ZjZTY0YmYzYjY2NTYzN2E2IHJlbGVhc2UyNS1tYWludAorNTI3NTMgN2UwY2Y2ZTM2NTBjOGU5M2M0MTVjZTNhZmE4ODZiZTM0YmVkNDJjYyBsZWdhY3ktdHJ1bmsKKzUyNzU0IGY5MWI2ZDg1Y2FiNTYyMmNhNGViMTAyZGUwZWFiNmU2Zjg2ZWY0MTEgbGVnYWN5LXRydW5rCis1Mjc1NSBhMWMwYjUxNGNiNTM5YTA3ODM2OTUzODk2NjlmYzhkMjVhMzU2OGU2IHJlbGVhc2UyNS1tYWludAorNTI3NjIgYjgwYTM2ODg1M2M3NWE3NjBhNjYxOWY4ZjRlMDdiYzVmNjQxMWNmNSBsZWdhY3ktdHJ1bmsKKzUyNzYzIDhhMzY1ZmRjZGM0OGRjZWU1OTY4OWRiMjBkZTVjYjE1OTk3MTYxMjkgcmVsZWFzZTI1LW1haW50Cis1Mjc2NCBiYTU2M2FiN2E1N2FlMmQ4N2Y2ZWRhZDk3ZjA3ZGFkMWVhNTNiYjViIGxlZ2FjeS10cnVuaworNTI3NjUgMjUxNWVjNGI1YjMzNjU2NTFjNThiZjYxODg5MTYxNWE3OGNlOTU0YSBsZWdhY3ktdHJ1bmsKKzUyNzY2IGUyNmM1MTc4MDczNzUxY2JjNGMxYjI2ZDBlN2NkNDFlMzU4ZmZiMTcgcmVsZWFzZTI1LW1haW50Cis1Mjc3NiA3Y2VlOTQzNDk4MWEyYWE4ZmJlN2Q1MjRiMGU0NGZlNjNhNTdiNTZkIGxlZ2FjeS10cnVuaworNTI3NzggNGM2MmM4MjkwZDRmNTgyZjRhNGQzMjFjMDNkNTVkZjViNTRlNWI4ZiByZWxlYXNlMjUtbWFpbnQKKzUyNzgwIDg5ZjJlOGRhMGYwZjllZGQ2MWM4ZjUzNzliMzRjNzIzYThmYzc2ZTYgbGVnYWN5LXRydW5rCis1Mjc4MSBjMWFjOGJkZTVlMTc2ZDM0YThlMmJkZjlhM2JlOTlmYWJhYWMwN2Q2IHJlbGVhc2UyNS1tYWludAorNTI3ODIgNWMwOGRjYjdkMjgwOWY0NGNkNDNiNGJjZTMwYjExMzViMjJlNmM3YSBsZWdhY3ktdHJ1bmsKKzUyNzgzIDc4YzBlNzJmMTZkM2QwNzdmOTIyZTgwMTMzYTQ4OGMwZTI0MzFkY2IgcmVsZWFzZTI1LW1haW50Cis1Mjc4NCAzMjBkZmRlZTg5Njg5N2M1YzcyYzQ3YzM4ZDBiMTYwNDRlMWYyYWRhIGxlZ2FjeS10cnVuaworNTI3ODUgYTA0MDZlOTMzYTgxNzM3ZGI1YWQ2ZjhmODYyZmM0NGUwODIyODE2NyByZWxlYXNlMjUtbWFpbnQKKzUyNzg2IDVmYTVlZjU1OWEyZjEzYjhmM2EzNjZmZjQ4ODIyZmNiMTEzMTJhNTMgbGVnYWN5LXRydW5rCis1Mjc4NyBiODcxZTdiZDgzNTViMjkyMmRjOWI3MjM4MDBlODYzMWVjMWE1NDFjIGxlZ2FjeS10cnVuaworNTI3ODggMGZkYzJiODIxMWY5MmU1NjYxOWU2ZWJlMTdlMzg5ZWY1YTgxOTM0NSBsZWdhY3ktdHJ1bmsKKzUyNzg5IGJlMmY1YjJkNTNiM2JkMjYxYzY5MTczMmQyOGQwN2U5YWJhMGM4MGQgbGVnYWN5LXRydW5rCis1Mjc5MCA0MDE2NmU1MDExZjgxOTBhOGI5MDA3MThhZWZkYjUxOGM5NDZlZWEwIGxlZ2FjeS10cnVuaworNTI3OTEgOWZkMTM1NGRhNmRiNmIyYmU4NmI0N2ExOTU5YTUyODg2YzViYzViOSByZWxlYXNlMjItbWFpbnQKKzUyNzkyIDI3MTEzMzk4MWU2M2UxYmM3OGY4OWU3NzAxM2QxMDBhN2M3OTkxMmMgbGVnYWN5LXRydW5rCis1Mjc5NCA2NGUwYWM4Mzk2YTNkNmVlMjNlMGYzNTRlMDQ1Mjg4NTkwMmVjMjdkIGxlZ2FjeS10cnVuaworNTI3OTUgNjA2ZTFmMGU4N2JkYWQ2Y2QyNDM1OTVlMWJjYjE0MDg0MzZmYTM4MCBsZWdhY3ktdHJ1bmsKKzUyNzk2IDQyZWFlZDhkMmI0NTQyYWZmY2VmMDEwMzViN2EwMzk1Mjk5ODE2NzIgcmVsZWFzZTI1LW1haW50Cis1Mjc5NyBmM2E2MzE4NTc1NDQ3NWNkNTViMDg1NjliMThhZDU2ZTNmZmZlMjFkIHJlbGVhc2UyNC1tYWludAorNTI3OTggZDdhYzNiOGYyMTM5MjE5ZWY4ZDI2Njc3N2RhYjVmMThiZDQ2NWMzMyByZWxlYXNlMjMtbWFpbnQKKzUyNzk5IDhmZGE1Yzg2Y2MxNmNlYTg5MzExNGM1Y2YwNTdhZjg1NmFiMTg5N2QgcmVsZWFzZTIyLW1haW50Cis1MjgwMCBjZjBlNjg1NjI2MDRkOWEyYTM2NjNiZDMwZjJkM2NhMjczMzdlOTc4IGxlZ2FjeS10cnVuaworNTI4MDEgY2U0Y2NmODdmNTZlNDYzOTRlYmYwZjMzMjljZTY1ZTE0NzIzNzE1NCByZWxlYXNlMjUtbWFpbnQKKzUyODAyIGM3YThjYjA5NWM0ODUxZjgxOTBkZGMxNzQ3YjA1ZGMxZjk3Y2VkOTIgcmVsZWFzZTI0LW1haW50Cis1MjgwMyA5NWFlNzQxZTI4N2JhZjdiNzA5MWJhNWU2MWMyYmYwMGIyYTY1OWU3IHJlbGVhc2UyMy1tYWludAorNTI4MTEgOTljYjM4MzUxZmZjNDBiYmMzMDFmN2MzY2YxM2M1NWRiZWJkMzI2YiBsZWdhY3ktdHJ1bmsKKzUyODEyIGFiMTg4NWYzNDQzYTdkYWIzYThlNDk0ZGZiNGY4MTdhYmJlOWQ2YTcgcmVsZWFzZTI1LW1haW50Cis1MjgxMyBhMjdlZGUyY2E2MDY4YTUxNjhiNTYyZGM0ZjliNjVjMDdmMWNiMmUyIHJlbGVhc2UyNS1tYWludAorNTI4MTQgNjFiMDY5Yjg0ZDBhZmNjNTEwZDI1NzYyY2U2MzJkYzQzMTg4MzE3YyBsZWdhY3ktdHJ1bmsKKzUyODE1IGIwYzA4ZWYxYzMwMzA5MDdhNjZkODdiN2NkYmUyZTNjMDIzMGNiY2YgbGVnYWN5LXRydW5rCis1MjgxNiA2ZTFiOTAwN2JiZGM2MDQ4YjgyNGU2ZGM5YjIxNzdlZmViNTg0YTFlIHJlbGVhc2UyNS1tYWludAorNTI4MTcgZDE4M2Q4MTI0ODAzZDAyNzJlNWNkZGU0M2VhOGFmYTlkMGYwYTg5MCBsZWdhY3ktdHJ1bmsKKzUyODE4IGEwMzdmYThmODQ1OGUzMWYzMWYyYTcxNzkwZTM3Yjg3N2M4ZWRhZDEgcmVsZWFzZTI1LW1haW50Cis1MjgxOSAyNTlkMjY5MDA4NjE3Y2JjMTdkOTEwZjAwNGYwNDkxYWI3M2YwMGE5IHAzeWsKKzUyODIwIGQ3NWIwY2FhNjdkYjlkZTYxMjEwOTc4YmRiYWYxZTZhYTRlYmU0YzEgcDN5aworNTI4MjEgOTNkYmZjNjU0YjZhMjIyZmJkNTJhYjhmZjQzYmViNzkxMWZiZjYwMyBsZWdhY3ktdHJ1bmsKKzUyODIzIDdmMzNmMjRhN2M0MTY3YzgyNzlkNjhlZGNhNDJlYTliNmUzZDM5NDAgcDN5aworNTI4MjQgMjVjYzYxNjE0NzIwNjNiYWNjNmEzZmVkZDU5ZWFlMDJlNmIzNmQwMSByZWxlYXNlMjMtbWFpbnQKKzUyODI2IGEzZTBmMWUxMTA4Mjg4OGU5M2QwYzgyODVlYWZmMjU5NjhkODVkZWUgbGVnYWN5LXRydW5rCis1MjgyNyBiNmIwMjU5MzE0NTEzMzM3N2RlMjgzMWVhZDlhMGIwZThjZjk4YjgwIHJlbGVhc2UyNS1tYWludAorNTI4MzMgMjkxZTYzMzY4NjdiNjc0ZjBmODRmZDRjYzBmNDYzNjIxZGNjNjcxNSBsZWdhY3ktdHJ1bmsKKzUyODM0IGNkM2Q2Yjk4Y2FlYWQyNjZiOTAwMmM4Y2Q3NzE5NWM2ZDhlYmZkZTAgcmVsZWFzZTI1LW1haW50Cis1MjgzNSAwMDQ2MmNhNDg4NDU0ODBlOWNhODQyM2E0YmY3NWI3MDQ3YjIyZmM0IGxlZ2FjeS10cnVuaworNTI4MzkgZTcwNzBkNjdkYjhjN2M5ZmUzM2YwYzc4YjlmZDU2NDIwNGYzNWYwNSBsZWdhY3ktdHJ1bmsKKzUyODQwIDE5MzE0NmU0ZDI3NmMwNDRlZjdhYTIxYjNmNWVjNGQzYjc4ZWVjNDggbGVnYWN5LXRydW5rCis1Mjg0MSA5NmJlOWQ3NGFkMzY3NTA0MGQ2MDIxYzNlNzk2OTFkNWU1ZTI2NDQ2IGxlZ2FjeS10cnVuaworNTI4NDIgNTg2ZGQ4ZWVkYjc1ZmVmODc5YTZjZmI0ZmI1MDAyNmQ5MTQ0N2MzZSByZWxlYXNlMjUtbWFpbnQKKzUyODQzIDI1MDgzNWRjNTQ0YWE2MDAzZDIwMzY2MDc2YTI1MmUzZDY1MzJlYzMgbGVnYWN5LXRydW5rCis1Mjg0NCAyMGJlNDMxZTc1NDAxYWZkOWI3NmZmNDBhMWY4Y2FjZDViZmE3Mzg0IHJlbGVhc2UyNS1tYWludAorNTI4NDUgNDU0ZWZmMjcwNmQzYjhiYjI3MWRjY2UxNDdmNWU3OWE4MTQ5ZjAyYSBsZWdhY3ktdHJ1bmsKKzUyODQ2IGE1NWQ0NjVkNDBjZmQyNGRlNWQ1MmMxMDljYzI2N2YxYTZmZTg2NWQgcmVsZWFzZTI1LW1haW50Cis1Mjg1MCBlZjE1NDcwMTY3MDMzYzc0YWU1MDVkN2Q0MmEwZGZiNmQzZGQ5ZWFiIGxlZ2FjeS10cnVuaworNTI4NTEgYTEwMTUzMDJkN2U0ZDQyYTBhZjE2OTVjMDg2ZDJlZmE4MjdkMDhlZiByZWxlYXNlMjUtbWFpbnQKKzUyODUzIDg4MTMzNDE3ZGZkMDViNGUxNTZhNmJjZTcxNGQyYWYwMTljNWNhYjggcDN5aworNTI4NTUgNzhmYjc5OTBjNWFhNTk1YmZiYzRmMTdjYTgxZDhmZGMyOGE2MzRiOSBsZWdhY3ktdHJ1bmsKKzUyODU2IGExZmQ5M2I1ODkxMjEwODc4YWMzYjRhYzdlNGY5MDY2NDMzZTQ5M2YgcmVsZWFzZTI1LW1haW50Cis1Mjg1NyAwMmQ1MTNlODcxZmU5NTcyZDIyZjE2MjAyNjQ5ODk2ZTY4ZTMxODkxIHAzeWsKKzUyODYyIDRlMzY4ZTgyYzcwZDZhMWUzMTIwODQyZmJlMjQxYWIzMjk2NWMyZmMgbGVnYWN5LXRydW5rCis1Mjg2MyAzOWFkOTlkZDY3ZTRkZTVjZmE5YjMxNTgyOTQzMmQxMTI1MTQ1NDZiIHJlbGVhc2UyNC1tYWludAorNTI4NjMgOThhMWVjYTNhOTMwODNjY2YwMWY0NWQwOWEyNjA5NmJkZTQxMDZmOSByZWxlYXNlMjUtbWFpbnQKKzUyODcyIGZlZjViNzc0ODE4YmRjNGU2MjYyYTIzMDA0ZWEyZmRkM2I5MDQ1NWIgbGVnYWN5LXRydW5rCis1Mjg3NSAxZTNmNTAyMGJiNTU1OGYwMjc3NzlhM2UyMWE4NmJkMzUyNzFmMTRkIHAzeWsKKzUyODc3IDJlNTAxMWFjYjQxNGQ0YjI2Nzg4YzAzNTdhMDViMWFhNTRiNzBmNzIgcDN5aworNTI4NzggYjNlZDA1M2NjNmExZjJiMWYyYWNjMDFjYWU5NTM0ZWY3OTE5YmQ0MiBwM3lrCis1Mjg5MCBkODAwZDY3Mzc1NTY0MTQ0NGEyZmE2Y2M3OGJkODYyNTMzOTI5YTFmIGxlZ2FjeS10cnVuaworNTI4OTkgMGUyYTA3M2NiYmJmYTdjZjdkZmFhZjVkNGZkMTY3M2NhZWE0YjQ3NiByZWxlYXNlMjUtbWFpbnQKKzUyOTAwIGM3ZTdlNzE5NmE0Y2NmMzU1ZmFlOTEyZjFkOWU5MjQyNjY2NDJkMmUgbGVnYWN5LXRydW5rCis1MjkwNSAzYWIxMmQxYTE3ZDJlZTM0OGZkOGFiZjBlZGY1NTA2YTc3ZmNiMDFmIGxlZ2FjeS10cnVuaworNTI5MDYgYzQzNzg3ZTZkNzA2MWQ1N2ZkNzA4MTY0ZDBlZjAyZmMwMGQ5YTU2MiBsZWdhY3ktdHJ1bmsKKzUyOTA3IDI2YjcxM2ExOTUzNGYyOGU3ZGUyYWFiOWFlZGM2OWZlMTdjNWNmYjMgcmVsZWFzZTI1LW1haW50Cis1MjkwOCAzZWU5ZDFhMzZkNDY0MzA5Y2Y0Y2JjMTUyOGQ2NTE3MGY5YTc1OGUwIGxlZ2FjeS10cnVuaworNTI5MDkgYTAxNDY5MmNmYTY2OGRlZDFjMGJjYmE0MmJlOTMzYzdhZDExOWE1OSByZWxlYXNlMjUtbWFpbnQKKzUyOTEwIDczZjBmYzJmOGYyN2RjMDk3YWYxYTIyNGExODA0ZjVlMjI2MzBhNDAgbGVnYWN5LXRydW5rCis1MjkxNSBjMWE2ZDk0YjgwMjc3NjhmMjM2M2EwMWQ4NmExZGE0M2QzZjNjNjk2IGxlZ2FjeS10cnVuaworNTI5MTcgMGNhYzNlNTMxYzVhMTViMWEyOTM5NDBlMmRmOTE5NDUwZDcyODk3NyBsZWdhY3ktdHJ1bmsKKzUyOTE4IGYxYTZhYjM1NzRlZmRiZGQ2OTFlNmYxM2NjZDQ5ZTUwYzAwOWEwNjMgcmVsZWFzZTI1LW1haW50Cis1MjkzOCBlYjMwZDMwZjIyYTE4NTc5ZWZkMWYwNWFhNzUxMzIyZjdlMzdjNjc3IGxlZ2FjeS10cnVuaworNTI5MzkgOWZmMmI3NDU4YzcwZDBhYmM3OTcyNDIzYzM1NTVkZjM3M2UwNzQ1NCByZWxlYXNlMjUtbWFpbnQKKzUyOTQ1IDlmZTU4NTViMDVkZGE4ZjdkZWZkMjA2OTM5N2M0ZGM1YmZiZTRlYWIgbGVnYWN5LXRydW5rCis1Mjk1MSBkNTU3Njk3MTJmNzNkZjU4ODVjODJhMTc4YTZjNTY1ODg1ZDJiMTEyIGxlZ2FjeS10cnVuaworNTI5NTIgZWVmNzI1YTQwYTY2NzgxMTViMmU1OWFiMDUwYzNhMmFlYmU3YmIzYyByZWxlYXNlMjUtbWFpbnQKKzUyOTYyIGU1Y2U1YTA1MzQxMTY5NmJkMDY2YTgwNjFhMjI4NzNjM2QyODQzNWQgbGVnYWN5LXRydW5rCis1Mjk2MyA2ZTkxZmM4OGJmOTljZjg1MGUxZmU4ZmExYzIwNGFmYjRmMjA4OGUxIGxlZ2FjeS10cnVuaworNTI5NjQgNmIwMmZlMWIzODJmZGZjOTZlNGE0ZWE3OTUwMmE0ZGNiNGExN2IwYSBsZWdhY3ktdHJ1bmsKKzUyOTY2IGExNWJkODFlZmRiNjM2OTk2ZDMxNzRhZDY1MjJjNGE3MjgzZjI2N2EgbGVnYWN5LXRydW5rCis1Mjk2NyBmYTI4MGQ3YzdkNWVkMmI3MTE4YTIyMWE1YTc5NGYxNDlmYWNiYTMwIHJlbGVhc2UyNS1tYWludAorNTI5NjkgYWU5MmM4ZDBmMDhkNTk0YjUwOTRlNjllNTg2N2ZjZjU1NjI1ZWIzNCByZWxlYXNlMjUtbWFpbnQKKzUyOTcwIGNmODdjOGYzM2Y5ZjcyZjdmNGYyNGUyN2Q0Y2IzYzBiZTFhYzQ3MDMgbGVnYWN5LXRydW5rCis1Mjk3MSBiODdjNTYzOWJjM2I4MGE0OTBjMmJkMTE5MDRhMWM5MzdlNTdiN2Y0IHJlbGVhc2UyNS1tYWludAorNTI5NzIgOWQ0NzI1NTViOTBkN2ZhNDU1NDRhN2Q5ZTc2ZTM1NWFiYjkyOWEzOCBsZWdhY3ktdHJ1bmsKKzUyOTczIDY4ZWYwN2Q5YzgxZTFjMTU1MWEwMzkyZGY4Njc3MGU1NThhN2NkMGUgcmVsZWFzZTI1LW1haW50Cis1Mjk3NCBkOWI0ZWZjNGViZWZmZmM4Zjg1NzYyNzM5NmY5OTBiNTQ0YWQxYjYzIHJlbGVhc2UyNS1tYWludAorNTI5NzUgZDRlYjY3ZDFkOTMxOGU3ODZlZWQ0ZjI0MGVjNmUyZjViMGYwOTc3OSBsZWdhY3ktdHJ1bmsKKzUyOTc5IDQ0N2VmMGU3NDYyOTk3MTEzODkzMWNjZDVlZDVlNDA2NzQ0MzYxYWEgcmVsZWFzZTIyLW1haW50Cis1Mjk5NCAwYzUxYjAwNWMyMTQ0YTQ0OTY3OTcwMjRhM2MxMThlZjljMzRjNTExIGxlZ2FjeS10cnVuaworNTI5OTYgM2Q1YjMwNzcyODkyYWNhNmFmYTg0YTVlM2VlMjM1NjJlZTIwY2QwNCBsZWdhY3ktdHJ1bmsKKzUyOTk3IDA0ZmRmOWZmYjE4ODJlOWJjZmEwOGViY2ZjNTAwZjQ4NDFjYTZjOGMgcmVsZWFzZTI1LW1haW50Cis1Mjk5OCA2MTMwNzJiOGY4ZDA5YzNkNmFlYzcyOWM5YmRmODAwY2ViYzU4NjFlIGxlZ2FjeS10cnVuaworNTI5OTkgYTMxMWExMGJhMGJmZDZmMDZmNjdlMmRlMzRkNWJmYTJjYzVkMTYzZiByZWxlYXNlMjQtbWFpbnQKKzUzMDAwIDMxNWM1YTYzM2IwNWJmMjU0ZjNmYzY2YTQ2MmZiOGVjYzkzNzY4ZDggbGVnYWN5LXRydW5rCis1MzAwMSBiMzMzMmVjMjkzZjI2ZDliMGNiYjJhOTEyMTQ0ZDQ4MmQ4Nzk5ZTAxIHJlbGVhc2UyNC1tYWludAorNTMwMTIgODEwMDgxODEyOTk2ZDhmZTdlMjVkYmQzNWRhYjk4MDMzYzJlM2NhMiBsZWdhY3ktdHJ1bmsKKzUzMDE3IGNjOTkyZDc1ZDViM2M5OTJhOWVkMDkxZTExODkyYTExM2MxMzQ1ZTkgcDN5aworNTMwMTggNjQ4MjI2MWIxMDkyMTYwYTFmZjQ5OGVjNmRlYTAyZjQ3ODE1MGQzNyBwM3lrCis1MzAxOSA1MGNlNTZiMjRjYmUzMTM3MzFiOTdkZjhkZWVmNDZhYzAxMWNmNmRiIHAzeWsKKzUzMDIzIDFjYjdiM2FlNDE0ZDA1YzIwMThhMmE0NmZmYThmZDA3YmExYjVmYzEgbGVnYWN5LXRydW5rCis1MzAyNSA1NmU4OGJiYWQ5YTBlOGRiMTE1ZjdjNGYxN2UxY2Q1ZDg5Mzk5ZTdlIGxlZ2FjeS10cnVuaworNTMwMjYgNDgwNzg5YjMyOTRkYzViYmNmYjQwNWVjYWVlMmM4NGExZWI1YWFkNiBsZWdhY3ktdHJ1bmsKKzUzMDI5IGU0ZjJiOTJjNzU3Yzk1ZDY0ZGE0YWM4MzA3NWE2ODQ2NjAxMjg3MzcgbGVnYWN5LXRydW5rCis1MzAzMCBjZWVlZDAyODcyMTY4MjMyZmIwMGE0YTZlZDFhZDYxYmFkYmIyZDExIHJlbGVhc2UyNS1tYWludAorNTMwMzEgYTkxMGFiZTc4MTU5MGE1NTRiN2YxOTgzMDM5ZTA3M2ExNjVjYmE3MSBsZWdhY3ktdHJ1bmsKKzUzMDMyIDllMzk2OThhZmJhNTZjYTY5ZjQxNDY5NmJlYmEzYzYyODRkYTM1NzIgbGVnYWN5LXRydW5rCis1MzAzMyBlZTVlNDFkZWE5NDkyZWI1OTk2ZDBmNDlmZTI4MjYyY2RhYTQ4MzhmIHJlbGVhc2UyNS1tYWludAorNTMwMzggMGRkZDA1OTNkNDBiZWU5MjQwZmI4ZDM1NzkwMGMwMDA5ZjMyNTc3YyBwM3lrLW5vc2xpY2UKKzUzMDM5IGZhOTkzNDYyNjQxMDQ0MmMxYjI4MTAxYTU3NWIwNWNmMjAyMTI1OWUgcDN5ay1ub3NsaWNlCis1MzA0MCA0NjdiMzgxMThiMjlhMmI2YWU4ZTM5MTlmMGI0MDFlMjg4ZTk1MWYyIHAzeWstbm9zbGljZQorNTMwNDEgODMzODRhNjkyNWE0YzkyY2IxODNlNTU5YTgxNTFlZDE4MzlkMzgxYyBwM3lrLW5vc2xpY2UKKzUzMDQyIDU5N2ZlODk1YTk1ODM2MmY2ZWZjYWEwNjEyYmJkZGViODU3YjcwYmIgbGVnYWN5LXRydW5rCis1MzA0NCA0ZjdmNzJiYzM0MGE3ZTVkMzAxODkzODk1ZDRmNDdhOTAwYmI2NTFjIHAzeWstbm9zbGljZQorNTMwNDUgNzQ1NzNmZGU0ZjBjZTc3MWEwZmUxMDY2MzhlMDc0ODA1ZjM2ZmZkNCBwM3lrLW5vc2xpY2UKKzUzMDQ4IDBkNjRmMjllZjI3M2QyYzIzMzRiNzhmODE2ZjliMjA2NzhmNjE4YzkgbGVnYWN5LXRydW5rCis1MzA0OSA3ZDc5ZmQxODE2YTg0NWQ5NzA4ZmNkYTExYzkzN2Y3OTcwYWFiMGY3IHJlbGVhc2UyNS1tYWludAorNTMwNTAgODFjY2ZlZGMxYzk5ZTdkOGQwZjEwNWJmZmY5YjRjNTZhZmVmYmUyYiBsZWdhY3ktdHJ1bmsKKzUzMDUxIDhlM2YyYjAyMmY3Mjc3MWM3MGM1YjA2ZDY0NjBkNDcwOWQzNDNkYTQgbGVnYWN5LXRydW5rCis1MzA1MiAzOGFhMWEwMTAyMTllZWFjNDg2ZTM0NTJkOWFhY2RlZTIzNjhmN2JhIGxlZ2FjeS10cnVuaworNTMwNTMgNTZkYzcyYzFhMWY0M2RlZWFjNDI2MWU0ZjRlMzg2MWEyNTRmN2ExZCBsZWdhY3ktdHJ1bmsKKzUzMDU0IGNkZjYzNTEzYThjZGZmYzM0MzgyYjJkNWE4NTFiNzY0NGQ0MGEyZTcgcmVsZWFzZTI1LW1haW50Cis1MzA1NiBhZGQwM2E5ZDc3OGI4MjgxOWExYjI5OWEyZmZmODI4Y2I1MzliNjk5IHJlbGVhc2UyNS1tYWludAorNTMwNTcgZmUyYTNjOTY2YzhlYWYxYTc2ODQxNThhOTE1Zjc2MzZmNDZiNjY0NiBsZWdhY3ktdHJ1bmsKKzUzMDYzIGViM2IyMzlhNGQwNzgwNjE2NmYyODkyZDEzN2Y1NTZlMmIyMmYwNWMgbGVnYWN5LXRydW5rCis1MzA2NCA5NTQ4Y2EwZTY1NjBlY2Q0NDRlYmRhODQ5OGVkMzdhOTU4MzliZTE2IHAzeWsKKzUzMDY1IDIxNDgwZDg5YjQ3ZjEyZDBjZjUxOWFjZWZjMWYwNzFjNTM5NGY1NjQgbGVnYWN5LXRydW5rCis1MzA2NiBiMjdkNWQ5OGE1NTY3NmM2NTk2NDE1ZmZiNDBmNjRkNjY3MzM0YTRhIGxlZ2FjeS10cnVuaworNTMwNjcgMTdlNzRjZTJiYzM1ZTc5YjY1NGMyMTUyMWQ1YmQ5ZGM4NWNkOGQ2ZiBsZWdhY3ktdHJ1bmsKKzUzMDY4IGRjYzQwYjkzYmZiZWNiYTNiMDQ1ZDQ0YjcxMzhjZTdmZDEwYWNiMTMgbGVnYWN5LXRydW5rCis1MzA2OSAwYjA0Y2I3NTFjMWEyMjExM2RhMzY2OTkwZTNlNjc4MWVjY2Y3ZWIwIHJlbGVhc2UyNS1tYWludAorNTMwNzAgMTY0NGJhN2RjZTFmMDVkZTA2ZGE0OWQzMDlmOTY1MmExOTFhNmMyMSByZWxlYXNlMjUtbWFpbnQKKzUzMDcxIGY5ODM0MGUzNmMzMTE1ZWQ3NjNlMTU4N2M2ZDQ4ZmQwYzc0NTgxNjAgbGVnYWN5LXRydW5rCis1MzA3MiAzMGYwOTc3NmVkNTU2MDBhMGM0ODYzZDQ3MzRjMjA4MTI1ODEyYzhiIHJlbGVhc2UyNS1tYWludAorNTMwNzMgZmU2OThkMDc4Y2Y5N2U3NzY3YWExYjJjYTA0OTMzNmIxMTIwOWI5NiBsZWdhY3ktdHJ1bmsKKzUzMDc0IGE4ZmEyNmEzYTJjYTFjOWRhZjNkZDg5MmEwNGY2NjZlNjk2NGZjNGQgbGVnYWN5LXRydW5rCis1MzA3NSA2Zjg2NGE5MWM2MTJjOWVkNzI5ZjExMDZmOTQ1ZDc1ZjMxZTUyMGRiIHJlbGVhc2UyNS1tYWludAorNTMwODAgODU2NWUzZmVhOWI2MmEyYmMzODdmNzBkNmFjOTUyYTk3MDEwNjY5YiBwM3lrCis1MzA4NyBkNGZjYjU2NTYzMTYyYzI3NWNmNDg4ZjQ5MTlkZGJjYjllYjllYTdhIHAzeWsKKzUzMDg5IGYxYTRjZTFmZTViMTBiNWQyMDg2N2Y0ODYxODhmMzgyNDFlNDUzMTQgcDN5aworNTMwOTAgNTEzOTVjMGI1NDgyZjhjNDBmZmYwNzAxNWNiNmFhNzczMDhlMWE4MSBsZWdhY3ktdHJ1bmsKKzUzMDk5IDk2ZDUzM2VmYmU3ZGQ0YzdmMDdiNTRiNWI5N2M1ZTY5OGQ2ZDQ2Y2MgbGVnYWN5LXRydW5rCis1MzEwMCBmZTliNTY5OTA4OTQ0OGVjZjk3NWJjYzliMDBjNGFkMTBkNDQ5YjI4IHJlbGVhc2UyNS1tYWludAorNTMxMDEgMDM3ZjNjZWEyNjU1MDJjOTZmNjVlOTAzZWYzYTE3ZGNiOTc3OTRhYyByZWxlYXNlMjQtbWFpbnQKKzUzMTA2IDEyNTBmZTQyY2U1Yzc5MTI0MDc3OThiMzdhZGRmMWY4ZTNjNTNhM2YgbGVnYWN5LXRydW5rCis1MzExMCA4ZmIzMzUwMGUwNjcwYjg1OGQ1YTJmODU5NGIwM2U5ZGM3NTU4YWM4IGxlZ2FjeS10cnVuaworNTMxMTIgNzkwOWE0ZWU1NjZiMDU4MzQyYjE1MDRmYTUzYjcyMDNiZTU5NGZlMSBsZWdhY3ktdHJ1bmsKKzUzMTEzIDJkNWVkMjY3YTQwZmExYWNmZDI5OTlkYzFhMDQ4MzlhYjk5ZjgyZjAgbGVnYWN5LXRydW5rCis1MzExNCA4M2Y1ZTgwY2UxZjI5YzMxMWEwNzYwYjI0Y2Y3NjBlZWM0NWI5YzliIHJlbGVhc2UyNS1tYWludAorNTMxMTUgYTg1OTVkZWFkNTRhZDVkN2ZhOWJlYzczYzdiMzQ3MjhmNWM0NmJiNSBsZWdhY3ktdHJ1bmsKKzUzMTE2IDIyYTU3ZjRmZmJjZDNkNGVlOTUxYTgxNjE0NWQ1OGJkNmNmZWZmMjggcmVsZWFzZTI1LW1haW50Cis1MzExNyAzNWM0OGY2OWJhY2VjNzk1ODI3ZmY0ODE1YTZjMGUzZGMwMDMyOTRjIGxlZ2FjeS10cnVuaworNTMxMTggZDJmYTdkYWFhNTliZjMwODcwODlkMjA2NjNkZjA4ODQzZmE5MGY1NSByZWxlYXNlMjUtbWFpbnQKKzUzMTIwIDNkNjY2OWFkZWNlNGE2NDM3OGFiZTZmZWMzM2Q0NDBhMWYxZWVmN2YgbGVnYWN5LXRydW5rCis1MzEyNSBlOGUyM2VkNmI2N2YxMzRjYWQxYmZhNDNiM2RkN2E1MzhiNDIwZjcxIGxlZ2FjeS10cnVuaworNTMxMjYgZmI1ZTNmYzQyMjdiZTgyMmIzZTdmYWFmODk4YmZmOTBiZTFkNmEyMiByZWxlYXNlMjUtbWFpbnQKKzUzMTI5IDk0ZWJmNGEyZjczOGYwMTFlNTljYzFmNjYyNGI5YzMyY2RhNTNiMTIgbGVnYWN5LXRydW5rCis1MzEzMSBmOTRlMmIxOTUxODllZGM5NTY3M2Y4NTQxZWEwZDg0MjU3ZmM2NGRiIGxlZ2FjeS10cnVuaworNTMxMzIgMzdlNzFmZWFlYTNkMmZjMjA0YjkyYjdhMTZiYTVhYTZhNTQ4ODQ2OCByZWxlYXNlMjUtbWFpbnQKKzUzMTM3IDg4MTYyNWMxM2MyMDZjYjcyNTFkYWU5MmNiMzRlOTRkMzI5YjRhNTAgbGVnYWN5LXRydW5rCis1MzEzOSA2NjNjOWYxY2UzYWFiZjhkODRjMzU3NWI2NTNlMzBhNTM1NWFhMGYwIGxlZ2FjeS10cnVuaworNTMxNDAgMmM1MDRjNjJkNGQ4ZGQ1NDE4MDc1OTExNWI1Yjc1NTQ3NGVkZTVmZCByZWxlYXNlMjUtbWFpbnQKKzUzMTQxIDJmODRiNmU4MTkwMmE4NDE3NDA0ODYyOTE2ZTE3ZjAzNTA4OThlZTEgbGVnYWN5LXRydW5rCis1MzE0MiBmOTI2YmJjMmZkNjI5Mjc3ZTZhM2EzZDdmYzIwOTA2MmVhM2U5ZWJjIGxlZ2FjeS10cnVuaworNTMxNDUgNWM2NzQ4NGM0Y2Y1ZWUxNzJjNTcwNWY5MzczYzYzOTBmN2YzN2JhMiBsZWdhY3ktdHJ1bmsKKzUzMTQ2IDkyZjNlZjhmYTRhZmEwODA2NzY3ZGQxOWVjMjFlNjBlYTk0ODYyM2UgbGVnYWN5LXRydW5rCis1MzE0NyAwOWY0YjQ2MGJhZWI3ZTVmYjRjNzg0NDdiMWY5OGJiYTRmNzkxZjRjIGxlZ2FjeS10cnVuaworNTMxNDggZGVkOTlkYjcwY2E2NzhkZDA5YjNkZWNhY2Y4NjcyMzRlZjBhODBkOSByZWxlYXNlMjUtbWFpbnQKKzUzMTQ5IGU0YjBmZjQ0OTIxNWYyNWYyYWQ1NWRkNGNkM2QyNTMxNmFiYjFkZDIgbGVnYWN5LXRydW5rCis1MzE1MCAyODk4MTlmZGUzYWYwZWNmNDk2NDA4N2IwYjcyN2EwZGRkOGM1Njk4IGxlZ2FjeS10cnVuaworNTMxNTMgNWM3ZWE5MzQ2ZjEyNzQ1MTg4ZTkyNGY2MTk2NDJhOWVhOGJmMjlhZCBsZWdhY3ktdHJ1bmsKKzUzMTU0IGFjOGE5YTQxMjFkMTdhYTcxZGJhZjVhZWRhNzNiZDZiMTZmMzY2MmUgcmVsZWFzZTI1LW1haW50Cis1MzE1NSA2NzYzZTQ1YzdmN2QzNDgzNTQyZTQyYjQzYjc1YmU5YzZhYjg5MjY1IGxlZ2FjeS10cnVuaworNTMxNTYgZWY0YjhmY2QxNGQ3MmZlMzhiYzAwMjc5ODA5M2JhZjYwMWExNzdkYSByZWxlYXNlMjUtbWFpbnQKKzUzMTU5IDFlMWI5YzJlMmFmMGUzMjJkMzExOTAyMTEwOWM2MWNkZDk1NTA1NzUgbGVnYWN5LXRydW5rCis1MzE2MCAxMmFmNjc4OGQ5MTE1NTljOWNlZjRlODBjOWVlNDc4Y2MzYTU0ZjQ4IGxlZ2FjeS10cnVuaworNTMxNjEgZTg1Y2EzZmQ0YmQ2M2YzODBhMGFiMzFiOGViNDEyODQ2ZGFmODVlMCBsZWdhY3ktdHJ1bmsKKzUzMTYyIDI2NzZkODI4N2ExMWIwZTlhMmZkOTIxY2ZmNWY3OTk4NjU5OTZkY2UgcmVsZWFzZTI1LW1haW50Cis1MzE2NSA2ZjhjNmY4MzBiNTFjZTY1ZTI1ZDhmNTU0Y2ViYmQwOTQwNWY1ZWVlIGxlZ2FjeS10cnVuaworNTMxNjYgNGQ3N2EyYzZhYTU1MzM3M2E2NDA1YWQ4NjIzOTc3NTkxZTNiYWMzZSByZWxlYXNlMjUtbWFpbnQKKzUzMTY3IDE5NWY2ODlhZjVhZmY0YmNjMDY1ZmY1Zjc0ODhmNjVlYjNiMzQ2OTggcDN5aworNTMxNjggYmNlN2U0YTkyNmE5MWJhNWI0M2I2ZWFhMTA5YmI0NTVjOTA5OWY5MiBwM3lrCis1MzE3MCA1NGNkNDc3ODg4MTFjMDNjNWVkNTE0YWEwZDAxMDNkNDZhNGZlMTgxIHAzeWsKKzUzMTcxIDdhMzVkM2QxYWM1YTMwMWVmM2RjNTJmOTE0MDg0NGYwNDIyMDExYTUgcDN5aworNTMxODcgZDYzZmE5MGRmOWVhZDg0NDdjZWFkM2I3ZmU0MjNjMTFhYzE4MDFiNiByZWxlYXNlMjUtbWFpbnQKKzUzMTg4IGEzMjIyMDc1ZjVjNjZhMTNjYmNiZDU3NmMyNmI5ZTA1YTJiMzY1MDQgbGVnYWN5LXRydW5rCis1MzE4OSBiMTllZDU0M2Q2OTVhMDMwNWZhMDI4MTQ5NjQzOGU0MTljODY0NTQ4IHAzeWsKKzUzMTkwIGI5ZmNhOGZiMGZiMzUxOGYxOTE0NTNiZWE5NjY5Y2M1MDQ5ZjZjODYgcmVsZWFzZTI1LW1haW50Cis1MzE5NyA5NDM3NWQ4MTQ4N2RhODE4MGIwYmQ5ODNlMWQ3NmY0MjU3MmQxNjk1IHJlbGVhc2UyNS1tYWludAorNTMyMDAgYzFhNGRjNzFjZGQzNzYwMTIwNWZiNjY0ZDQ5YzQyMmUyNzYxY2IxOSBsZWdhY3ktdHJ1bmsKKzUzMjMyIGJlODI0MGNlNTJmZjdmMzliYTE2NjFmZGI3YWI5NjVlMzVlMDQ4ZGEgbGVnYWN5LXRydW5rCis1MzIzNSAyYjE5YjJhZGM1YzFiOGE4NzE0MDBlOTAxMGM0YjAyZThhODExMWMyIGxlZ2FjeS10cnVuaworNTMyMzYgN2ExMzgzOWM2MzVkYzU1Y2RlNDdlMjFmZTk5M2VkNjFkODdkNjNmOCByZWxlYXNlMjUtbWFpbnQKKzUzMjQzIDljYzc2MWI5ZTJhYzU2MGY0OGE0Y2M1ODkyNGU2OTFkM2VhYjZmM2YgcmVsZWFzZTI1LW1haW50Cis1MzI0NCBkYzdkNGU1ZDhiNDk3ZTJiMDFiYmQ4NmQyNzA5ZTMzOTgxOGE1NmUxIGxlZ2FjeS10cnVuaworNTMyNDkgNDIwM2Y4ZTZlODZhYjQwYmZmZDJjM2I4MzdhMmY0MGViNzhkM2MwYiBsZWdhY3ktdHJ1bmsKKzUzMjUwIGQ5NzQ5YzNlNjMyNmFlMTYyM2Y5ZDFkNGFlNGJmNDhjOTcxYTY0NWIgcmVsZWFzZTI1LW1haW50Cis1MzI1MiBmOWIyNzgyMDc5OGI3NDc0ZjM2Y2YzNDFhYjE3MjJhMTg2ZjU3MzIxIGxlZ2FjeS10cnVuaworNTMyNTMgNjlmZTY4M2VjZTU2NmM4NDIzMDc3YmYxNDJkNjM1Mjc1NzZjZjJhZSBsZWdhY3ktdHJ1bmsKKzUzMjU0IGFmYWJmZmQ1NjJlOTRjYmRlMjRlMTM5MWQ4ZjY4YWY0NzJlNDRkMzIgcmVsZWFzZTI1LW1haW50Cis1MzI1NSA0NWM3MzE1MmI0YWM1ODMxNDU1M2QxMDVjNjM0ZTY3YTg0NDAyY2ZiIGxlZ2FjeS10cnVuaworNTMyNTYgY2EyOTVjMjcwYjFjM2YyYzE1NWE5NTJhOWRjZGUyZTM3MWUzNGE1MiByZWxlYXNlMjUtbWFpbnQKKzUzMjU4IDQyNzRlZGZkY2U5ODE4ZTU0Njg0Y2RlMjBlN2I4MTdkYTRhNGZhODIgbGVnYWN5LXRydW5rCis1MzI1OSAzMGRhMDZiMjI1YWZhYzNiYjE4YzA4ZDE3NWQ5N2YzYTEzY2ExOWRhIHJlbGVhc2UyNS1tYWludAorNTMyNjAgOTZkNzZkMDlhNGU5YzIyNTJkZmE4OTdmZDZjYThmOWVhYzc0NGI3OSBsZWdhY3ktdHJ1bmsKKzUzMjYyIDdmNzY5OTZjN2JmNGI4ZWM3NGJmNDZhMDRkNDRkMGY1OTY1MTY5MGIgbGVnYWN5LXRydW5rCis1MzI2MyA5MDkzN2QzMTc0Y2JlNTY4NmNhOTFkZGU5MGM3MWY4MTVjOTlkNWFjIHJlbGVhc2UyNS1tYWludAorNTMyNjQgOTMzNGIwZGMzYTE3ZDkwZTI3ZWY0NTc5Nzg4OTcwMDQzNjRhNWNjZCBsZWdhY3ktdHJ1bmsKKzUzMjY5IDNhOGZkMzYzOGYyNjBhMWM1NWUxYTU3OGJhZWQ1YTJmM2E3NzNmNGMgcmVsZWFzZTI1LW1haW50Cis1MzI3MCA4NGFjZWE4ZTA3MmU2NmUzMWI0MGI3NWNlZTUwY2Y2ZjExZDc5OGJjIHJlbGVhc2UyNS1tYWludAorNTMyNzMgZjcwMjc5ZjAwZGZjODBjMGRmYjk4ODlmNmU4Mzc5NjE4MjFmZTY3NSByZWxlYXNlMjUtbWFpbnQKKzUzMjc1IDY4NDVlMGU2MjkwMGZjMjE5NTU5YjFhNzhhMjZjZmJiNGQyNzQ0MGMgcmVsZWFzZTI1LW1haW50Cis1MzI3OSAxNjdlN2JhNzQ3NTYxM2MyMjY4MGNhYjk2YmZhZmVkYmFjMDU3YjE0IGxlZ2FjeS10cnVuaworNTMyODUgMDdjNDcwMjAyMGRjOTJhZGU2NWIxZjFhMWZjOGVkZGYyYTkxYjNkOSBsZWdhY3ktdHJ1bmsKKzUzMjg2IDQxMDU1NzBkYTMwYWQyYjIxMDg5Y2QwMTVmMWM1ZGFiN2MyNDkzMWMgbGVnYWN5LXRydW5rCis1MzI4NyAxNTIwYmFhZjI3YmY3NGU5Nzk3OWQ3YWYwNzUyMTJmZTg0YWJmZjg1IHJlbGVhc2UyNS1tYWludAorNTMyODggNmJkNjVjYjViOTUyMDYyZTMwZWEyZTIzNmRjNTIxNTljMGI5YjBhMCBwM3lrCis1MzI4OSA5OTViN2ZjYzI5NmRmNTY4NGFjNzM5YTIxY2U2NGE0NTJiODcwNGIzIHAzeWsKKzUzMjkxIGNjOTQ5YzYwNTU3NGRhNzVkYzg1OTFiNzJmOWZlZjVmNGIxOGY5MWYgbGVnYWN5LXRydW5rCis1MzI5MyA3YTExYTNhYmU2NGMxZjZmN2M1YzIzNzdiYjhjZWVlNWIyNWVlMWViIGxlZ2FjeS10cnVuaworNTMyOTQgNDRjNjIyMGIxZGMzZmZhNjZkYWRmZGYyOTkwYzU4M2ZmZGQ4NDlmYiByZWxlYXNlMjUtbWFpbnQKKzUzMjk1IDk5MDkzYjUyN2MwMWNhM2ZmNTkwZWEyYzM5ODBkZmIxNWYyZmVjODEgbGVnYWN5LXRydW5rCis1MzI5NiAwMzU0N2E0Y2QzMGFmYTEwYTM4YmE4YzIyYTY4NTU2MmM4NWY4YTUwIHJlbGVhc2UyNS1tYWludAorNTMyOTcgOTQwZmY1Yzc3ZjNhOTEwN2VlY2IxNjgwYWQ3MmEzZmNiOTk0NmRlMSByZWxlYXNlMjUtbWFpbnQKKzUzMjk4IDhkYTZkZGE2NzlmOGIyYThlNWRkZjZiNWViMzliMjVjMDRmZTdkZjIgcmVsZWFzZTI1LW1haW50Cis1MzI5OSA0ZGM3OWUyODMyMDk0ZDUyYTgyNzNjODJmOGRiNTMzZDg5ZTU1YjMxIHJlbGVhc2UyNS1tYWludAorNTMzMDAgYmQ3ZTQxZGU5ODJmNjBlOWYyOTgwODgyNGNjM2Y1ZTVlNTc3NDY2NSBsZWdhY3ktdHJ1bmsKKzUzMzAxIDlhZmQyYzdmYWVkZTYzYTcxNzk1ZDMxYTY1N2U4ZTg0YmRjNjU3MWYgbGVnYWN5LXRydW5rCis1MzMwMiAxZWQzZWQ5YWYzNDhjZmJhNGNlNzkzMTc2ODZjODliYTQwZDYxM2JmIGxlZ2FjeS10cnVuaworNTMzMDMgZGU1MDQwMjRhNmU3N2I0NTliMDllYTQwNjg3YTA2OWQ1NjEzNjgzOCBsZWdhY3ktdHJ1bmsKKzUzMzA0IDkyZGQyYmI5NGNhOWM4NzkxNDA3ZWIyN2IwMjAzNGJmMTE3ZjY3NWYgbGVnYWN5LXRydW5rCis1MzMwNSA1ZDQzMTAyNWM5OTlhOTZlMGQyNzU3NjhhYzgxODE1N2EwYzA5ZTBlIGxlZ2FjeS10cnVuaworNTMzMDYgNjFkNjM0YTBiZDZhMjNkOTAzNzQxMzhjYTY3NGNiNzcxZTJlZmRiMSBsZWdhY3ktdHJ1bmsKKzUzMzE2IDBkOTJjYWEyZDBmNDJiMmMzOTJjZGRmYzkxNjFhODIzYTQ4ODRhZDIgbGVnYWN5LXRydW5rCis1MzMyMSA2ZGRiNjM2Zjk1YzAwOTQ0YzY4NjMwYWRhMmEyYjc4Y2VhNmNmMjVhIHJlbGVhc2UyNS1tYWludAorNTMzMjkgYjgxZjRlZTk0YjA0Y2I5NmFmNGQxOWNhZmEzMjI5MzI2NjZkNTFmNSBiY2Fubm9uLW9iamNhcAorNTMzMzEgNDlkYzdmYzY2YmVlMzgyYTA1NWMyODBmNzZlZjg0OWI1MGRiYTI1NyBiY2Fubm9uLW9iamNhcAorNTMzMzIgNjcyODdjYTRlMWU4NTNmY2RhNzIyZjNiOTkzOTZmMmQ0ZTg4OWY2ZCBwM3lrCis1MzMzMyBiYjFlZWE5Y2VkNzBkYWI3ODQ0ZjMzYjQ1ODFlMDViYjkxOGZjYTE5IGJjYW5ub24tb2JqY2FwCis1MzMzNCBmMzFmZWUyNjJiNTE0NWYwNDNjNWIzODMyMTg2MDk0MTI2OGJlYjA0IGJjYW5ub24tb2JqY2FwCis1MzMzNSA2OWJjODA2ZDk2NjE2NTNhMzZjMjk1NGUzYzc3Mzg5NzRjNWVlOTkyIHAzeWsKKzUzMzM2IDBiNzk3YTdiNTMxMzA0ZjI1MDkwZDk5NTM4YzYzZmE0NTJjNDViYTggcDN5aworNTMzNDAgNjY3YmQwMjdkODAwOThkNDcwYjljZTg4NTU3ZDVkNmQ0NDMxNzllMiBsZWdhY3ktdHJ1bmsKKzUzMzQxIGI0YmE3MjQ5YWJhNTY4MzExMDU2ZDlmMGRhM2I5MDE1MmVkN2FmMzYgbGVnYWN5LXRydW5rCis1MzM0MiA2YjE4YTA5NWMyZTdhYjdjM2UzM2EwNjZjOGE3NDU5MjViZWY0NGFkIHAzeWsKKzUzMzQ5IDRiYWI2NWZjY2E4ZTYzNjk5YjAyMjYyNDJkZmUwODIwMjQ1OWQ5ODggcDN5aworNTMzNTcgZmY3MWI4MmY2Yzk1NjA4M2IwY2QyOGNiMjJjNDg2OGZlZDM2OWQxNSByZWxlYXNlMjUtbWFpbnQKKzUzMzU4IDEzZmMxOTQyMDRjNGU3NGM2ZTQzYzY2YjVlNDE3ZTNjZDgwZjllMWYgbGVnYWN5LXRydW5rCis1MzM2MCA0NjhhZTNlMzkyYTJhMmI2NDgwZjRhZGY2YjQ3ODhkYWRiMWIxYzBjIHJlbGVhc2UyNS1tYWludAorNTMzNjEgOTA5NDZkNTQzNGFhMzJhNzc2N2JlN2M5OTU5NDUxMzQ5ZDNlMGEyZSBsZWdhY3ktdHJ1bmsKKzUzMzYyIDVmMTMwMjcxZjM4Njk1ZWY0OTk2NzJkNmNjNjM4ZWExYzRmNGIzM2QgbGVnYWN5LXRydW5rCis1MzM2MyA3ZTI1MDAyMjZjNDM2YzY1YTFkZDc5MzM2OGY4Yzg1YmVmMTMxYTk5IHAzeWstbm9zbGljZQorNTMzNjQgOGMzNjkzNDZhNGNjNTA4YzlkY2QzNzdjNjEyN2JmMDU0ZTJjYjVjOCBwM3lrLW5vc2xpY2UKKzUzMzY5IGUxZTQ0OTNmNmU4ZjI0N2FmMjU5YWUyNDE2NGNjOTFhY2ExYzgzZTQgcmVsZWFzZTI1LW1haW50Cis1MzM3MCA0NmZjNzU2MTVkYTUyMmJjODA4YzUzNGI1NmEwNGVjMjVhNDMzYmYyIGxlZ2FjeS10cnVuaworNTMzNzEgYjYwYjQyMDk3Yjc4YjZhY2E0ZGJlY2JkMWYzN2FhNTZlNThkNDk2MyByZWxlYXNlMjQtbWFpbnQKKzUzMzczIDgxM2RjYzgzZTQyYzI3ZGMwNmEzZTBkNDNiODQxMDc0YjU5NThjMmQgcmVsZWFzZTI0LW1haW50Cis1MzM3NCA0M2M3NWU1NDBlOTIyZmI2ZThmNzg2MDcyNGM4Y2YzZmQxN2JiYjcxIHJlbGVhc2UyNS1tYWludAorNTMzNzUgMjExMTlkYjVlMDk2NjUwZDQzYWM1NWM0ZTdlMTVmOTIxYzhiOTgyMCBsZWdhY3ktdHJ1bmsKKzUzMzgwIDI2ODU5OTAwZmE1ZGU3ZTVkYTZiMzVlOTFlYjEyMTgwZWNkODkwOTQgcmVsZWFzZTI1LW1haW50Cis1MzM4MSA3ZGEzZGJjODE0NWI4NGRiYWEyZTIzN2Q0MTljY2I4OGI1MTA2ZWU1IGxlZ2FjeS10cnVuaworNTMzODMgYmUxOTNhZjIyZjA0N2ViMGFmNzYzY2NkM2IzY2Q5ZTRiZmU2NWFkMSByZWxlYXNlMjQtbWFpbnQKKzUzMzg0IGUxOGFmMjhiNDlkYTlhNTkxMzZhZjNjMmE0NjUxYjEwMTU4YjIwYTUgcmVsZWFzZTI0LW1haW50Cis1MzM4NSA1M2MwYjA5YzQ4YzExZjRjYzA0YTFmM2ZhYjA3N2M0MGExOTdhNmUwIGJjYW5ub24tb2JqY2FwCis1MzM4NyAxYzRiYmU2M2ZkZmM0ODc3MjQzYWFhN2FhZmVlNzUzMjcxZGU1ZDMzIGJjYW5ub24tb2JqY2FwCis1MzM4OCA3ZDg4NjhjZmJhN2M1ZTlkZjQwZjZjYjQzMzljMzU2ZmJiYzUxNzFhIGxlZ2FjeS10cnVuaworNTMzODkgYTJlMTdiNzUxNWQzYTM2M2UyNTI3MDIwZGQzZDZiYjZkMjdlZmQ1MSBiY2Fubm9uLW9iamNhcAorNTMzOTAgNjg5OWI3NDBlOGVhZTZkZGQ3ZGNkZDg5OThiZWQyNTRjYjI4YTA0OCBsZWdhY3ktdHJ1bmsKKzUzMzkxIDc4Y2QzODRkM2ZjZjkwOWFjODUyZGUzODc2YTQ1MmU5NDRkMGZiZGMgYmNhbm5vbi1vYmpjYXAKKzUzMzkzIGM3YmQ4OTJjMDU2N2Q3MmQyMDdjM2UyNjVjNzMxMDlhZWQwN2RhYTggbGVnYWN5LXRydW5rCis1MzM5NCA2ZDE2ZWJjNzE1Njk1YzA5MDkxOWYwOTg1M2MzZTk5NTU2ZGM1MDVlIHJlbGVhc2UyNS1tYWludAorNTMzOTUgMTgwMmNmOTMyNTRiZjY2NDU0NWYwZmQxNGI1ZDA0ZDA1NmZlOGM5ZCByZWxlYXNlMjUtbWFpbnQKKzUzMzk2IDhiZjY4ZWNjNzY3NmFmMWZiZDM0YjhlZDNiMGJjNmFmN2NiNTYzOTAgcmVsZWFzZTI1LW1haW50Cis1MzM5NyAyYzU3MWY2Y2UyM2FiMjc2NjhjMmFlMTJkNGRiNjQyODc3YjRlZDZlIGxlZ2FjeS10cnVuaworNTM0MDEgZThhZGU4YTZlNWNiOWNhNGEyMTM1YTFmZWI2N2FmOWJkZDU5YzM4NSBsZWdhY3ktdHJ1bmsKKzUzNDAyIGNmOGFmNmI3NTk4YmM1MzU1ODlkNzVkNjk1YjFkY2I3MzMwMDIxZmIgbGVnYWN5LXRydW5rCis1MzQwMyBjYTUzN2U5YmE3YTdmMWE2MTA2OGY1MDVjNWYzM2U4NTYxYWU5MDgxIGxlZ2FjeS10cnVuaworNTM0MDYgYjMwM2ZiMzgzZmE0Njk0ODM3NTJlM2YzYWE2N2Y3YmVlYWQ4MGM5MSBsZWdhY3ktdHJ1bmsKKzUzNDA3IGYyN2I4ODk5YjYxMzUyMzJhN2EyYWU5ZDYzZTMxNDQxMWNhNmQ4MjkgbGVnYWN5LXRydW5rCis1MzQwOSBlZDdhY2YxODgxYTk0MGZjNjVjN2QyNTk1YzYxZjM1Y2ZkMjVkNDQ1IGxlZ2FjeS10cnVuaworNTM0MTAgMmE0NzZjOTRiZTIwMDQwNWE5MWU4MjUzOWUyZWRhZmFjM2QyMzcwMCBsZWdhY3ktdHJ1bmsKKzUzNDExIDY4YjQxYzJkNjY2MzFhYWM0YjQxNGIyY2E2YzYxZmVmZWUzNDdjYzYgbGVnYWN5LXRydW5rCis1MzQxMiAyZGY4MGU3MTZlNWM5ZDkyNjZmZmVkMGE5ZjIzYjhkZDZmNDdhNTE4IGxlZ2FjeS10cnVuaworNTM0MTMgMTQwOWUxZjI3M2I1MDg1MTM1NjJjODYzOTBlZDMzZTZiMDIxNWJhMSByZWxlYXNlMjUtbWFpbnQKKzUzNDE0IDczYjkzZGM1ZTQ0MGFjMDg4OTI2MzVkZTBlYTE5YzBjMzY3ZjE5Y2UgbGVnYWN5LXRydW5rCis1MzQxNSBmMzI4MzI5NDcxZGY1NzEzOTZhM2JhY2M5ZGFhZjNmMGMxMmZiNzVmIGxlZ2FjeS10cnVuaworNTM0MTYgY2ExYjQwY2M2Yjc0YzM1OTlhMjQ2Y2FlOTU0NDU3NWFhZmE4MzQzZSBsZWdhY3ktdHJ1bmsKKzUzNDE3IDQyNmYxZDM3M2NkZDY1NzgwZjg3Nzk4MTMyY2I0OWI5YzEzY2IwYTkgcDN5aworNTM0MTggNGViZjBiODA1Y2U4NGY3YTc5ZjAwY2I5ZDAxNjNlMmQ0ZTg2YTU3ZSBpbnRfdW5pZmljYXRpb24KKzUzNDIwIGI5ZDRjZWQyMzUwNjIxZjY2OGNmZjk0MmZjNDM1MDIzMGViZDlhODIgbGVnYWN5LXRydW5rCis1MzQyMSA0YWVlM2Y2NzJmNzdlMGZlYWYwMmNjZGFiZDAxZWVkOGI2MzIzNmRlIHAzeWsKKzUzNDIyIGRiZmQ4NmMzYzc5MTNhYTFjZDI0MjdmYWYxOTQ2YWViZjUxMTZhOGUgcDN5aworNTM0MjMgOTBjMzgyNzE2ODZiMTIxMzE0NDM1YjM4OWZjMmIxN2VjODk4YjM1ZiBsZWdhY3ktdHJ1bmsKKzUzNDI0IGEwMDRjM2IwMTljYTE1MzIyNTBjNTJjNWFmYWNlYjkwMGFlNDQ5OGYgcDN5aworNTM0MjUgM2Q3OWJjNmVkNmVjZTcyMjg5YTE2YmM4ZmEzODFhYzA5OTRlMDJjNiBsZWdhY3ktdHJ1bmsKKzUzNDMzIDk4ZDVmOTBjYjkwNWFmZWJjZmNmZDFjZDM3YmMxZTI3MzgxZmUxM2UgcDN5aworNTM0MzQgNmVmZTNhNGIxMGFjOThhZDJlMjU3ODkyODIyZmE5NTQxMjI5ZmNmMCBsZWdhY3ktdHJ1bmsKKzUzNDM4IGRiOGMxNzVkMTI4M2Q3ZmI3NjYyMDMwMDJhZDYwZjE3MDk2NDQwN2EgcDN5aworNTM0MzkgOGUyY2E1NDQ0OTAwMWVjYjIzYWU1YWE1MTg3NzRlMTBlZmZlNzFmZCBwM3lrCis1MzQ0MCBjZjk4MzQ1YjlkNmIwMjBhZjAwZTY3NzcwYjBmM2E3MTIzYmRlNjlkIGxlZ2FjeS10cnVuaworNTM0NDEgZjM3Njk2ZTY0NmZhYzVkNTM1NjNkMzk4Nzk4ZjRkODAyMGUzMzNhMyBsZWdhY3ktdHJ1bmsKKzUzNDQyIGNjNWMwNzFjODQyMzExZTgzZjZjZWEwODgzZjQ0OWI4ODc3ZjVlZjUgbGVnYWN5LXRydW5rCis1MzQ0MyA4NmNlMWRmNmE4OGU3MGMxYTM5MGEzM2EwOGRiN2RlNDI4OGMwNjI2IHAzeWsKKzUzNDQ0IDgyYjliNWIxMjI1NmU0NWUwY2E0OTFkMjRiZDZlYzVkYTljOTNlMWQgcDN5aworNTM0NDUgNmY1YjMzOTQ3Mjc0ZThiNGQzZmM1MWVjOTQ1M2EyZTIxZjI2NDdlNCBwM3lrCis1MzQ0NiAzNDI1MzJmNDUzNmU2MTg0ODlhYzUyODAwOTNmMzk3M2I1NTYyZDJiIHAzeWsKKzUzNDQ4IGQwMmQyOWM1MjMyYTFjYWJjYjI3MDAzNDdkODRkYTk4NjUxZDFlOGEgcDN5aworNTM0NTEgNDdmOWVmZGMwODU1YThkMTc2MWEwYTQyNDc5MzU3NjJmNDJjMzVjMyBwM3lrCis1MzQ1MiAxYzI2NTA1YzFkZTZlYjUwZWE4NjRhOTc3MDI4YmRmNjk1NzhhOTdjIHAzeWsKKzUzNDUzIDNmNzgyNzRmMmEzNDk0MzViNzQ1MmUyZDI0MmZiNjBhNTQ3MzY2ODIgcDN5aworNTM0NTQgNGE0YmM1Yzc2ZTQ1OTBiZGM4ZTVlN2FkYTJiYzM0ZjRlY2MwNjRjYiBsZWdhY3ktdHJ1bmsKKzUzNDU4IDliZTYyYzQ1ZjNhODc5NDBmMWIwY2RlM2IzYjc2ZGNkZGQ4YTkzNjUgbGVnYWN5LXRydW5rCis1MzQ1OSBlNWI2NDFlNzAwZjIzNTQ1YTM5NGMwYTgzODBmYzAxNzUyMDBjZmE4IGxlZ2FjeS10cnVuaworNTM0NjAgYTRjZGI5YzhhZjI1YmQ2N2EzOWIxNDkyYzM4YzFjM2MxYjI1YWVmNiBsZWdhY3ktdHJ1bmsKKzUzNDYyIDM3OWFmNDE4ZmMzNjc1MmRlOTVmNGFhMmJiN2JkZDU5NThiZTgxMTEgYmNhbm5vbi1vYmpjYXAKKzUzNDY0IDQ4ZDM4ZDc3NzAyNDk2MjllYjUxNTNiMzkwNjBmMTUxNWQyOTVmMjUgbGVnYWN5LXRydW5rCis1MzQ2NSAwM2E1ZjJiMDY4MjUzZmFlMDUzNDRhNGJkMmJjNGEzNmRiZGU1Y2ExIGxlZ2FjeS10cnVuaworNTM0NjYgNjY3ODJlNWI5OTJmNTdmNGI3MjFiMWM5NTY0YTk5YzU0NDhlZmExNyBsZWdhY3ktdHJ1bmsKKzUzNDY3IDRhOTdmM2JmYjU1Y2UxZTViZGNjZDkzY2Y1OWY3MDdmNWE5MDY4MTkgcmVsZWFzZTI1LW1haW50Cis1MzQ3MSBiNzMzOGYzYjFiMDIyNDVlYTRjZmM4NjkwZGMzNDYxZTA1ODhiM2Y1IHJlbGVhc2UyNS1tYWludAorNTM0NzIgMDkxZGY0MzYwMzhkNzQ1ZWE5ZDYyN2Y4ODIwMmIzMDg0MGY0ZDVjYiBsZWdhY3ktdHJ1bmsKKzUzNDczIDE5MWVhYWU1YTI5ZDJlYzNmNGE1ZjYzMjllZmI2NmM3ZDExZmU1NTIgcmVsZWFzZTI1LW1haW50Cis1MzQ3NCA0ZDg1N2RhN2U2YzRmNDEzMjg3NTQzZjk2NmU5NWYzYTNkYjkxMTA0IHJlbGVhc2UyNS1tYWludAorNTM0NzUgNzczMjliMTI3ZDQzNzRlNDE2ODYxOGYyZDRmMGIyNmZlZmUwZjczMiBsZWdhY3ktdHJ1bmsKKzUzNDc2IDk0Y2EwNmQ5NTkzMDZmODJjNWViMTMzODFjNGUzMGU2YzJiY2I0N2IgcmVsZWFzZTI1LW1haW50Cis1MzQ3NyA5MDE2MDQ5MGM2ZDQwNTJkM2I0NzUxOWQ3MzM1MzdlYzU5YjIxMTg0IGxlZ2FjeS10cnVuaworNTM0NzggMjIzZmYzNWRjZmZjMWIwNmFkNDBiZjA3NDU0NTY0MWRlOTI2MjM2YSByZWxlYXNlMjUtbWFpbnQKKzUzNDc5IGVlODdlZWY5NTdmMzU5MTM2MzI3NzAzNDA3ZTNhMTM5ZDE0MzAwZTUgYmNhbm5vbi1vYmpjYXAKKzUzNDgxIGNhNjA3ZDc0OGY2NGU2NjA0YzhhNWFlMDYwMmJmYmE0NWVjZGM5ZjYgbGVnYWN5LXRydW5rCis1MzQ4MiA5YmRmMzRiM2Y3MmViMGZlZTNjMmIxOWIzOWYyZDg4OWQ1ZDM2N2ZiIGxlZ2FjeS10cnVuaworNTM0ODMgM2YxZGZhZjI5M2ZhMWRhMGVmOWI5NDkwNzlmNjg4ZmY5ZjA1NTA0YSBsZWdhY3ktdHJ1bmsKKzUzNDg0IDBiYzQyYzE1NmU5ZjVlZmVlNzg5Yzk1MmE0ZDBlODg2ZjZlNDRlYTAgcmVsZWFzZTI1LW1haW50Cis1MzQ4NyA5ZmU5MmYxOGJiNmE0MmE3NDY5M2Q2YWU5ODA4M2M2MWE3YmQ0OGUwIHJlbGVhc2UyNS1tYWludAorNTM0ODggYjhhY2VjNGE0Yzg5Y2E2YmQzYWY4NTliN2Y2N2I0MjQxN2M5ZWI0YiBsZWdhY3ktdHJ1bmsKKzUzNDg5IGIwNTFkMTk3ZjdhNDkzN2ZjY2VmYzY3YWFlYjgwYzIxNmE0NTUyNzUgbGVnYWN5LXRydW5rCis1MzQ5MCAwNWE4OTg2ZDk1MjY3MzdjOTI0MjMyYzU3ZGM1MzJjYjgwNzRhY2Y3IHJlbGVhc2UyNS1tYWludAorNTM0OTYgNjgwZDE3YTZiMTVmMGEwNDI0YTAzZDYwNGQwZDQ1MjMxZWUxNmQyMiByZWxlYXNlMjUtbWFpbnQKKzUzNDk3IDM5YjNhNWEzYzY0NWI4OWI4MGY1ZjNiNWMwZDRhMzRkMWFlNGQ0ZGIgbGVnYWN5LXRydW5rCis1MzQ5OCA2MGQzMWExMmIxNTBkNTA5Y2ZkNzBiZjE5OGQwNmJjYWY2NWZlYmE4IHJlbGVhc2UyNS1tYWludAorNTM0OTkgMmY4MGFmNjc0MDc0YWZjMjUyNmFlMDAxYWFkOGM0YjVlNjM4NGJiYiBsZWdhY3ktdHJ1bmsKKzUzNTAxIDViZjRmMDU5MDNiMjBjNjBmNzhlYmM0NTA2NjBkMjc0NmNhN2FlYTAgcmVsZWFzZTI1LW1haW50Cis1MzUwMiA1OWNmODllNWYyMzdlZGFhNTE2MDg0MzEzMTMyMWY4Zjg0YWM4YzQyIHJlbGVhc2UyNS1tYWludAorNTM1MDMgN2IzOGY5OTU1YzY0NjU5NDAxNDc3NTcxYjcxYWY5Yjk5M2M1OGZhZiBsZWdhY3ktdHJ1bmsKKzUzNTA0IDEwYmZmZDE5YjUzNWE0NDhlNDgyZTI5ZWZmZWFmYzg1OWQyYjNmMTIgbGVnYWN5LXRydW5rCis1MzUwNSAzYWU0ZjkzMGJmMjdiNGNkYzBjNzdmZTE2YmRmNTA0MTZhODc5NjUyIGxlZ2FjeS10cnVuaworNTM1MDYgYWM0YzJmNWMzZmMwZTk5MzQzMzY0NjhiM2M5MDk5Mjc5Zjk4OWM5MiBsZWdhY3ktdHJ1bmsKKzUzNTA3IDVmOGE1NGM4MDRmZjZmMGRkMzJiMmMyNTgxOTJkYTkzYTlhNmVkNjQgbGVnYWN5LXRydW5rCis1MzUwOCAwYmZmY2E2NGNjYzRiYTA0ZTQxMzA4OGQwNzQwZWM4MmY0ODQ4MTE5IGxlZ2FjeS10cnVuaworNTM1MDkgNzdlMGY0NzE4YTdjYTYxNzc4N2U3MGZiM2E4ZjZmYmRlN2JhMDVjNiBsZWdhY3ktdHJ1bmsKKzUzNTEwIGM4NmRmMzExZTYyY2VjZTIxMDA2YmU2YmMzNjIwOWZhZWYyYjRiOGMgcmVsZWFzZTI1LW1haW50Cis1MzUxMSAyZmE2ZTgyYjFmMTdiN2FlZjg3NjEzNzk3MmE3M2I3YzJmZmRlNzc3IGxlZ2FjeS10cnVuaworNTM1MTIgNTczYTQ2MTc2MTc1Mzk1MmEwYjA1MmMyMTUwNDIzMDU0ZDA3NTQwYyByZWxlYXNlMjUtbWFpbnQKKzUzNTEzIDY2NmZhZjg5MTJlMDVmMzdmZTNhYjRkODEzZGEyNDkyMTQ1YmNkYWUgcmVsZWFzZTI1LW1haW50Cis1MzUxNSAxNjc5YTRhZGExNzEyYjBkODg5OWE1OGZkYWM5YWQwZmNmOTA0N2RmIHJlbGVhc2UyNS1tYWludAorNTM1MTYgM2I2YWM0ZjRiNDM3MjQwYmRmYTBmODUzNDBhZWNkYzU2YmJiMTgzOSByZWxlYXNlMjUtbWFpbnQKKzUzNTE3IGIyMzcxMWJlMmIzZTAzNDIxMzhmNDc0ZmYzMTY2NDg0ODg3MGZkNGYgbGVnYWN5LXRydW5rCis1MzUxOCBiYjRjMGJiYmEyNzJmOGQ3OGY3NTI2ZmQyNGM2MjA4MjgxNDAwOGI4IGxlZ2FjeS10cnVuaworNTM1MTkgYjE2YjRmOTc2ZTcwYWQ4N2Y2NjM5NzJjMmNhZmE0MDc5M2Y0NzhjMSBsZWdhY3ktdHJ1bmsKKzUzNTIwIGVjZTJhZjc2NDYyMWQwNTdlNDI1NjRhNGI0NGQzNDFiOTZlY2E1NDUgcmVsZWFzZTI1LW1haW50Cis1MzUyMSBkZTJiYmRlY2U4M2VkYWZkMmFlMWRhNDg5MThhNDMyNzM1ODZmMjA1IHJlbGVhc2UyNS1tYWludAorNTM1MjIgZDdiZTAzZWJmNDY2NzMxY2I3YmU2MWM0NzRjNjUxZTk1MWZmNDQ0ZiBsZWdhY3ktdHJ1bmsKKzUzNTIzIDlmMjM5M2U5ZWFjYWJmNDM4MDYzZmRhZjI4ZjJmNGYxNzg3OWU4MzIgcmVsZWFzZTI1LW1haW50Cis1MzUyNCAwODFjYTYwODBmZjE0NTMwNGU0ZDM0ZjExODkxOTk2NDM1MmNmNTE1IGxlZ2FjeS10cnVuaworNTM1MjUgMjliOGI2NWJhZTNmYWI1ZTBmNGI5NzBiZDk2YmZhM2JlMDMwZTIxMCByZWxlYXNlMjUtbWFpbnQKKzUzNTI2IDdmNDA2NWVmYTQ0ZWUyMzk2NTExMTUxNWY0YzMwNzJlMjVlMmEzM2EgbGVnYWN5LXRydW5rCis1MzUyNyA4NmFiMmYyMGEzMzMzOGRjMGEyZjAxMGFmMGM5MjkzMTRlYjY4ODNiIGxlZ2FjeS10cnVuaworNTM1MjggZDJlMmVkZDA3MDgyYzRmYmVkZTQ4YjI3YjJmZWIzYmU3NjVlMzhhNCBsZWdhY3ktdHJ1bmsKKzUzNTI5IGRhMzBhMjZkZmViMzljYjUwMWI1YjBjMjg1YWRlZGM1ZGRlN2JmYTUgcmVsZWFzZTI1LW1haW50Cis1MzUzMCA2ODYwYmE4OGQ2N2VhOWQzMGY3OWVlODFhMjkzODYzZjEyNzMyY2Q4IHJlbGVhc2UyNC1tYWludAorNTM1MzEgZGYyOTRiYzVjZTZlODI2OTg3NjUyMTY3YzEyZjM4OTU0MmJjZjU3ZiBsZWdhY3ktdHJ1bmsKKzUzNTMyIDBlOTVjNzc1MTJmNTRhMTBjMjljMDczODBiMDJhNzFmMDU0NjQ5MTYgcmVsZWFzZTI1LW1haW50Cis1MzUzMyAyOTMzMTFlNjNhNzMyZTIxZGE3ZWY2NjMwZmZmMjVkOTgwMDgwNDdmIHJlbGVhc2UyNS1tYWludAorNTM1MzQgMDMxNDRjNDg2NzgyYzFiMTNlMWJhNjA4NzhiNTlmNDhlMGZmMTYwMSByZWxlYXNlMjUtbWFpbnQKKzUzNTM1IGRiYmRmYzAzOGRjOTQ3Y2Q5MjQwYmMyOTc1ZjgyODI1ZTdmMjdjYWUgbGVnYWN5LXRydW5rCis1MzUzNiAzOGQ5NDRlZmU2MDBjNmM0ZWY2OTdlZmUzOTU4ZjQ1M2Y5MGI2MjZjIGxlZ2FjeS10cnVuaworNTM1NDMgNDgwN2E2YWJmOTA2MjRjOThiNzljNTUzYjEzYmMwNTAyZTM5YjZjYSBiY2Fubm9uLW9iamNhcAorNTM1NDUgMGQwOTZiMTQ2YjQ4NjhiMzI4YjU4MDAzYTc1NmVjMDNkYjJjMTE1ZiBsZWdhY3ktdHJ1bmsKKzUzNTQ2IDQxNThiYTdmNDZhMDM1YWE0MWNmMjI5MWRiZmI3NmY0Zjc3MTIwZTAgcmVsZWFzZTI1LW1haW50Cis1MzU1NiBhNWIyNjljZTA3OWRlZGM2YjBmZjRjOGI0MzE5NGUwNWUwOTAwOTlkIGxlZ2FjeS10cnVuaworNTM1NTggNjU2ZGQwMDk1ZjUyZWRjMThkZWU5NWQyM2Q2OWJhY2IxOWFhYmRjMiByZWxlYXNlMjUtbWFpbnQKKzUzNTYzIGU0MzgxNmRkYzRmMDVkMzE4ZDU0MDllNzJhY2E5ZGM3M2RjN2E5YTggbGVnYWN5LXRydW5rCis1MzU2NCAxNWRlY2EzOWUwZTZiYmM3OWNjNDgxNjA2M2RiY2UyMjAwYjIzZjJkIGxlZ2FjeS10cnVuaworNTM1NjkgNGZhOWM4MGZiMTdhYjg2YzE5ZDQ4ODRhMzU0ZmM1MjU5MjM5YjNlYiByZWxlYXNlMjUtbWFpbnQKKzUzNTcwIDExNjNmNTVkYWQ5NWY4MGNmN2YwNWVmMThiYjg2ZGU1N2YyZTdjNWQgbGVnYWN5LXRydW5rCis1MzU3MiAyYmJmMTdjMWM2OWNiOWQxYmRjY2ExNGRjMzg0NDcxMDFkNTA4MTY5IHJlbGVhc2UyNS1tYWludAorNTM1NzMgMTI4NTUwMDBlMTNiZGVhYjQ4ODdjNzQ0YzNlMTY1OTk1NTY3NTlhYyBsZWdhY3ktdHJ1bmsKKzUzNTc1IDIzNDNjNjhjYTFjODdhM2FmZjUwMjNhYjI3ZDgxYjBlOGNhYjU1MDcgbGVnYWN5LXRydW5rCis1MzU3NiAxNzUxY2EzZmVmZmU5NmI0NDhmNmUzNjJiNGQxNjJjYzlmYjdmMjk1IHJlbGVhc2UyNS1tYWludAorNTM1NzggYzlkN2I4NmY5Mzc3Y2IxOGJiZjEzNmZjYWJmOWNhY2VhZWUxMGFlMyBsZWdhY3ktdHJ1bmsKKzUzNTc5IDI0MzFmODJhNmExNzU2ZmE3NGFkMjJjZTNiNzIwMTdkYTRmYTFmZmIgbGVnYWN5LXRydW5rCis1MzU4MCBhZDkzNmUwYjZmY2ZkMWJiMmRiZjlhN2EzOTkwZjFjYTM3OTgzNzIyIHJlbGVhc2UyNS1tYWludAorNTM1OTAgMTc4MmI2MjJhYWM3MWI5YjBlM2FhZDkxM2E4ZjY1YzkxZGUwNmQ5OSBsZWdhY3ktdHJ1bmsKKzUzNTkxIDJkODIzOWFiZmE2MGZhZTNjMWJlNzVlYmMwZGJjNDRjOGUyZDViOGMgbGVnYWN5LXRydW5rCis1MzU5NCA1ZmM4MTljNmMxM2UyZWY5ZTdiZDVkNmU3MDYwZGY2Y2JmMGZhNWI4IGxlZ2FjeS10cnVuaworNTM1OTYgZDYwYWQ5MTRkODMzZWU5NmNkYmViMzRjZDVhY2M2YjRhY2QxMGM2MiBsZWdhY3ktdHJ1bmsKKzUzNTk3IGFiOWM4NjUxOTYyODFhZmEyYTc1NzdjZjY2NDllNzU3NzhlN2MyMDYgbGVnYWN5LXRydW5rCis1MzU5OCBmZmI5NTgwZjk2N2JhYTZjOTYyMjg1ZDVkODM2NmVmODE1ZTBhNzk0IHAzeWsKKzUzNTk5IGQ1YmFiYjMyNmE1MGQxMDNiMDE1NGJlYzRkNmMwYjI1MTA4MzA4ZmYgcDN5aworNTM2MDAgYTI2NDQyMjI4MDU4NTVjODE3ZGYxZDUzNmMyNDgyN2ZmMmM0MTY5YyBwM3lrCis1MzYwMSA1ZGFlMGQ3ZjY4M2FiMzc5NjkyZmQ0Y2I0NWE5MTkxZGQ5MmNlMjBkIGxlZ2FjeS10cnVuaworNTM2MDMgNGIxMDAxZGEzOTkyODZhODYzYWM2NTk5OTIyMTVlYWFiYTVkOTgxNCBsZWdhY3ktdHJ1bmsKKzUzNjA0IDBhY2EwMDM5Y2MxYjVlZDE1ZjEwYTlkZjQxZTI2NTg0N2QwMzc1NzggcmVsZWFzZTI1LW1haW50Cis1MzYwNSBiZDM3MzlhODcyNTk1YTA3MTZkOGY2MTc3N2MzMGZiNjlmZTg0YmE5IGxlZ2FjeS10cnVuaworNTM2MDYgMDM3YWJjYTgxN2I2MzgzYmRiNDhhNzc2MTM4NDQ2YTkyNTVlNDA4NiByZWxlYXNlMjUtbWFpbnQKKzUzNjA3IGMxNDdjNmJjNTc5ZjI4MThhZDEzMTMyZGEwODQxZWNkMzBhYWYzMWYgYmNhbm5vbi1vYmpjYXAKKzUzNjA4IDY3ZWM0YWZmYmQxNGMwZTRkODcxNWQ1YWFmMGRiMDYyMGM0NTNmZmMgYmNhbm5vbi1vYmpjYXAKKzUzNjA5IDBmMjBjM2JjNjI3MDZhMjJmYzFlYTExOTJkNmVhYmIwN2EwMmNhMTkgYmNhbm5vbi1vYmpjYXAKKzUzNjEwIDZlYmFkMmE2Yjk5MDc4NmFiNjEyM2JjOTZiNjE2NzMxNTE3YTJiYTIgcDN5aworNTM2MTMgNTgzODlkZWE2NTFjZDY5MzFlOGE0MWNhMzcxZWZlMWFhZWE3OGNlNCBiY2Fubm9uLW9iamNhcAorNTM2MTYgNzJjMGM2YWVjMWVkMTg1YzYzNmNlMTNmMDRhNWE3MDYzNWMyMjAxMiBiY2Fubm9uLW9iamNhcAorNTM2MTcgNTNhMzZkYjJjMzg3NjQwOThiZThmNjEwYWY2MDNiOTRhMDlkNGQ4YiByZWxlYXNlMjUtbWFpbnQKKzUzNjE4IDJhOGU5ZWZiNWQyMGMzYmM1ZGNjNzE5ZWUyNzE0ZTY4OWIwM2VhYzkgbGVnYWN5LXRydW5rCis1MzYyNCBhZDhjZGZiNjk4NzIxM2VkMGNkNmQ1ZDNkZTQ4ZjU3NWMyMDgwMjU4IGxlZ2FjeS10cnVuaworNTM2MjcgODQ4MDk2OGY0ZjRhMTRlOTI5MWFiNTAxNTU5OWQxOTE3ZjZhYTkxOSBwM3lrCis1MzYzNCBmMTcwMWJhMjQ1MmI0MGVhOGRiODljMjNiMmMzYTJjN2MzMzNhMzgxIHAzeWsKKzUzNjM1IGNjYWM2MzZiMTUyY2U2ODJmYjRmMjUyNTI1YmU0NWRhYmRmOGQ2ODMgbGVnYWN5LXRydW5rCis1MzY0MSA2ZDljYTkwZDhiZjc0OWQ5NWJkOTgwYWZkMTE3ZGQwMmNhNmJlZTU4IGxlZ2FjeS10cnVuaworNTM2NDQgMWFmOGZlZTMzMDEzYzBlNzYyYjI0MGE1ODQzNGVlOWUxNzJiYTMyYyBsZWdhY3ktdHJ1bmsKKzUzNjQ2IGQzZTg4NjMxZjkyYmI2YTA3YmE3MGU5NWQ5ZWMyM2ExZDA1Y2JiMWYgbGVnYWN5LXRydW5rCis1MzY0NyAyNjVjNTFiYTM5MTAyMzE0OWM2OWFkMDVjNTBhNThjNTYxNmQ2ZWUxIHJlbGVhc2UyNS1tYWludAorNTM2NDggMDlkY2FjYzhhMGJjMmExZTMwZmQ4NDdhMDM2N2Q3Y2FkNTg1NDY2OSBsZWdhY3ktdHJ1bmsKKzUzNjQ5IDA1MjhkNmY5NGViNmVlNjNmOGU0OGMwZDFhZjI3MDdiMzk4NzJmMTAgbGVnYWN5LXRydW5rCis1MzY1MCA2YzQxYjAxMjI3NDdhZjU5ZDUxZmU3OTRhYjBhNThkN2UxYjlkMjRkIGxlZ2FjeS10cnVuaworNTM2NTEgZDU5NGVjODU4ZmU5NzRkYzVkOTJjMTcwMTM2YjBmMjM2OTRkNmY0OSBwM3lrCis1MzY1MiBmODNkNmFhMzkwZjEwNmI5MmZiOGZmMmRmZTJkYTRlYjg4NThkOGRmIHAzeWsKKzUzNjUzIGM3NzkzMzQ1YTBjNTQ0YzI0ODI3Y2E1Y2JhMzY3ZDkyZGViNmFmZWUgbGVnYWN5LXRydW5rCis1MzY1NCA0OTliZjMwNDBhZjdiZjQ1M2JmZDMxZGUyM2U1OWIzYmQ1YWExYjQyIGxlZ2FjeS10cnVuaworNTM2NTUgNTZkYmRiN2I0MDRhMzliZTdhNWMyODMzYTY4MjlkM2RkMzk0ZWQwZCByZWxlYXNlMjUtbWFpbnQKKzUzNjU2IDA3ODc1NTQ5OGNmZTM1NTBiYjYwMTJkZWMwYjU2YTM1YTI3Nzk2ZjMgbGVnYWN5LXRydW5rCis1MzY1NyBkNTA5OTQ2OTNjOTI1NmZkMWUxYmNiZDcwZWVjZWFjODk1MWZlNDgzIHJlbGVhc2UyNS1tYWludAorNTM2NTggNDg3ZWYwZjkwM2UwMTU4NDE3Yzc4NWI5NGQxYzAzOThkY2E2OGM4YyBsZWdhY3ktdHJ1bmsKKzUzNjU5IDhlYjAzYjExODE2NDBmMTllNTQ5OWIyMmMyZDNlMjRmYmUyM2U0ZGYgcmVsZWFzZTI1LW1haW50Cis1MzY2MCAyOTAwYzc1NjQwNTVkNjJjMmRmODBhNjdiMjdmNzQ4NWY2MjY2ZWY3IGxlZ2FjeS10cnVuaworNTM2NjEgMzAyMjc3OGVlMGNjNmQzNmZiNTQ4NjcxNzM4N2RiM2QwYjEzZjQyNSByZWxlYXNlMjUtbWFpbnQKKzUzNjYyIGZmYWFhZTAyYzY2MjljYzU1Njg4ZWQ4ZTM2ZWUwMTUxNTk0MDdmZGQgbGVnYWN5LXRydW5rCis1MzY2MyBhMmQ3ZjRjMjllNWIwODkxM2RmZTdmYzk5NDM5OGJmZWQ1OGVlNDk0IHJlbGVhc2UyNS1tYWludAorNTM2NjQgYzk5NGMyNDVkOWFiNWNmOTY1NzA1NDg0NGNjMTAzODcwN2Q3ZTE1ZCBsZWdhY3ktdHJ1bmsKKzUzNjY1IGQ4ZmIwZjZhYWFkNDNjYjJmODIwMzg4YjIwM2NiOWIxZGFjZWMxN2IgcmVsZWFzZTI1LW1haW50Cis1MzY2NiAxYWQwNTY4NzM3ZjYxMDEzMjRhNTQ3NTJmZGExNzJiOWVkNzU2ZGJjIGxlZ2FjeS10cnVuaworNTM2NjcgNDdiYjI4MDNlYjFiZTM2OWRmMzhiOWNmNjgxYzQyN2FlZTExYTkwYyByZWxlYXNlMjUtbWFpbnQKKzUzNjY4IDFmNzFhMzJmOThkMjNiYzAzMDQxYWQ2ZWE3NjYwZmE4NzkwMTkxOGUgbGVnYWN5LXRydW5rCis1MzY2OSBhMDRjNzgxNTQ2ZWQyYTk3YjNmNWI2YmJjODUzZDBjM2IxMDBkODRkIHJlbGVhc2UyNS1tYWludAorNTM2NzAgOWY1ZWFlYTNjNzk1NDA5YmMzMzU4ZmFmYjRmOWVkYzZhOTExMDkxYyBsZWdhY3ktdHJ1bmsKKzUzNjcxIGU3NzZjODNhMGMxOWUyNzNlNzIwOGYxY2ZkMmE5NjFiMGE0NGZiOTAgbGVnYWN5LXRydW5rCis1MzY3MiA3MTU2Y2ZkYzM2NjdlM2JmZDA1MmQ0MThiZGEzNmY5MmI1OTkxYzdiIHJlbGVhc2UyNS1tYWludAorNTM2NzkgZjdlOTA3MWMzYTFmMDBlZDcxMjRmMWRlMGRlMGEyOGUxZGU2YzhmNyBsZWdhY3ktdHJ1bmsKKzUzNjg1IDc5M2UwMzIzZDRkNjViZmM4OWI0MGQ3ODE2MmNkNzcxYzU3NWExOGUgcDN5aworNTM2ODYgNGNkZjIxYTBkYmJjZTg5MWU3NWE5MjBkNGZhZjRjMGVjYmRkODMzMiBwM3lrCis1MzY4OCAxZDU0M2EzMjAzNDYxMDczMDVjNDkxM2Q4MjdkMTQ5ZjIwYTQzNDg3IHAzeWsKKzUzNjg5IGY2ZjM5MWQxZDA1MGZlMzZkMDAyOGZlYzJkY2UxMjJiZjMwYzQ0ZTkgbGVnYWN5LXRydW5rCis1MzY5MCA4M2VmZmY0ZDVhZTk0MjU4ZWM2OTJjZWJmYjE4MmJmY2VlZjcwYzViIHJlbGVhc2UyNS1tYWludAorNTM2OTEgNGQ5MTU2NDY0NjczNmRmNzEwNzgxOGEyOTlhZGNhYjU2YzQzOTgzZCBsZWdhY3ktdHJ1bmsKKzUzNjkyIGI3MDQyYmRmOTBhOWJhZTQxNGY0MTQxNThhNjEzNzgxZGU2OGRmZjUgcmVsZWFzZTI1LW1haW50Cis1MzY5MyA5ODQwNDFlNzQ0NmQzMWM2YTNiYTA0YjVjNTlhMDA4YzZlYWFkNTczIGxlZ2FjeS10cnVuaworNTM2OTQgZDJmZTg5M2E0ODQzNzI1NzA1OTcwM2QwNjE4ZTY4YjZmYTMzN2ZlZSByZWxlYXNlMjUtbWFpbnQKKzUzNjk3IDI2NmMxYjBmOWUxNmM2ODg2NjQ2YWIyOTM3ZTA0NDBiNjZlNmM0MTYgbGVnYWN5LXRydW5rCis1MzY5OCBiZTI5NTg3ODI1NmFhYmNmM2VlMDYzZGMwZWRiNmJlNTNkYTI5NTc3IHJlbGVhc2UyNS1tYWludAorNTM3MDEgMjI3NjBkNTNkNGRhNWQyODc3ZjgxNGZhMTlkZDYxYmY3MDA2YWJhNiBwM3lrCis1MzcwMiAwY2UxNGM0Y2ExMzM3ZDEwNjgzYTQ2OWE3N2FjNDNhYzg4YmU0YmRhIHAzeWsKKzUzNzAzIDY5MTdjNjc2YzkyZmJiNDljZDFiMTI1MjJkOTNhNzNhMzhmZDRlOWEgcDN5aworNTM3MDQgZTlhNjIzNGIyNmFmZDFlMDI1Mzk2MzI1NTIzYWNiYTNkMWEzZmFmMSBwM3lrCis1MzcwNSBlOGIyOTEzZjkyOTdmNDdmOTQyYzE1ZDNhOTNmMWRiMDA2NDEyMjlhIHAzeWsKKzUzNzA2IDhkOWEwZWM0ZDk3NjAwNzc2Mzk4ZTk5NmRkZDJkMjhkMGUwOTE2YmQgcDN5aworNTM3MDcgOWZkOTY0MDg4ZTA3MDVmNTJlODUwNTdlYTAyZWViMTc1Mzk2N2Q4NiBwM3lrCis1MzcwOCA4MWU0MDM0YWQ4ODM3NjEyMDI2ZmYxZWRkZjgxZWUzNTVmMTllNDYyIHAzeWsKKzUzNzA5IGMxNWNmZjJkZDE4ZjVjZWQ5NTliNDVmMTE3ZDNiMTQwOTIzMTMwOGEgcDN5aworNTM3MTAgYjdmODlkYjlhMWQwNWFhODY0NWE1NzhiYjY4YTdhNDNjYWNlZTg2YyBwM3lrCis1MzcxMSA0M2UzNjljYzAyYzU1ZjQ3M2Y2ZDRhNzU2ZjVmZmM4ZDQxODkzNzJlIHAzeWsKKzUzNzEyIGM0YmU0OTNkY2I2Zjk0YjU2YmI2YzVjZGJmZDcxMzI2ZTE3NjU3ODUgcDN5aworNTM3MTMgZmZkYzhkMzk4ZTQ5MTFiN2M0MWM4ZWNjYzc3MmE3ZjlkNWU2YmNjZSBwM3lrCis1MzcxNCA3MjI3N2UxOTY3YjJiNmRmY2UyMjQzY2Q3ZWU5MTJmNGJlMTFiN2QzIHAzeWsKKzUzNzE1IDA0ZjVjYmM3NDQyNDFkYmQ0NjRlNDkzZWViMGE4NWVkYWEwZTkzY2EgcDN5aworNTM3MTYgNjc1MjVlZmM5OWM1N2Y3YTk3NGI4ZTM0MGY4MjUxYTU4ZGZiZjMzMyBwM3lrCis1MzcxNyBhZThlZTllNWU4MTUwMzhmY2Y2MDhjMDQ5ZDk0MDUxOWY5MzBmZWY0IHAzeWsKKzUzNzE4IDU2MjJhMTNhZDhhYjExZDcwMTNlMTE2YmFhM2U2ZmYyMTViMmExZjUgcDN5aworNTM3MTkgZTI4MDBlOGRkOWM0ODRjNGE5ODk1ZmNiYTY5NThhZDJmN2JiOGQ0YiBwM3lrCis1MzcyMSA0MzVlZDY0MWEzMzNmODMzOTYzM2FlNzExMTEyOWZiZTFmM2Y4MmNiIHAzeWsKKzUzNzIzIGVhZWRmODRlYWJjZGY2ODM4ZGRkODQ5YWE0MTZjN2I4N2JmNzI5OWYgcDN5aworNTM3MjQgN2RhMmFlMWE0ZjcwOWQwZjE0ZDNhOWU1OGFkNmZkOGIyZTcxYTllYSBwM3lrCis1MzcyNyBmMjI5NjQ1ZDYwN2RkZTNlOTBmMTMzZDM0OGUwMjA5ZDZjZDk5ODE4IHAzeWsKKzUzNzMxIDM1M2MwMDlmNmM1Mzg1MjU0MGZhY2JhMGQzMWM2NTNlY2E3NmRjOTggbGVnYWN5LXRydW5rCis1MzczMiBmMzQwY2IwNDViZjkyZDBlNzc3MjM4NWE3MTk3ZTliMGFmMzdmMGE4IHAzeWsKKzUzNzM0IDRhMDFmNmUwMjAxNjg4NjQxZGY1YWY5Njk0ZDI5ODEwNDZlZGM1YzEgcDN5aworNTM3MzUgNWRiY2UyZWExMzNjM2MwMWU3NmIwYzZkM2E0OTQxNjk1YWJiYTkxYiBsZWdhY3ktdHJ1bmsKKzUzNzM2IDkwNTM2YmUwOTNmN2RhNWY5ZGU2NjM4YjFkNjUxMWRiMDNiNzdjY2IgcmVsZWFzZTI0LW1haW50Cis1MzczNyBmY2Y2OTAyZjIxMGVkM2IwNmI5NWJjNTIwNDUxZTc0OWJlYmNmZmQ4IHJlbGVhc2UyNS1tYWludAorNTM3MzggY2I4MTIzYWIyYTA2NWQ4YTA5MGQxNDIzY2ZhYTEyMTNjY2NlM2U0MiBwM3lrCis1MzczOSA1ZGU3NTQ3YTVhMjM3MTExMTM4NjYxMmE5YTlhMmZhNjIzYzA2NGVkIHAzeWsKKzUzNzQwIDNkMThkOGYzNjZiMTE4NGQ2MTliYTc0OTUwYTNkNzE1OGQ2NGQyNTkgcDN5aworNTM3NDEgMjlkNjU3NDFmNmM4OTZmMmUxYzE5M2UwMjBjZjdkZGI0MTI3MjliMSBsZWdhY3ktdHJ1bmsKKzUzNzQyIGE4NDQ2MGU1MzE2MDkzZDAwMzBmZWI4Yzc2MGFjMWMzYTk4ODU3MjQgcDN5aworNTM3NDMgNWVmNzBjNDlkODVhMjQzMzViNDNhZjQzYzNmMDliNmRmNjMxOTJhMyBwM3lrCis1Mzc0NiBlNjY4NWM4NDBlZTNjMTFhOTFlMGEzMzcyMWE1N2IxN2NmNTFmODM3IHAzeWsKKzUzNzQ3IDQyOWE0YmMzMWM4ZTM2NzBlNzAwMGZhNTQwOWM3ZTJiODBmNTQ3NTAgcDN5aworNTM3NDggZGNhOWJjODgzMDQwOTY1OGZiNzcyYTZkMGIzMDUzYzZkZDQzNDVkNSBwM3lrCis1Mzc0OSA1MDMzMGQxOGQxY2Q3MTQxYmFmYzJjOGE5OTgwYThiOGNhODgzZDc2IHAzeWsKKzUzNzUxIDE4MGQ0ZTg5OTY4MzkwNjlmY2E4ODE5Y2Y5ZjNjY2M1ZWEyZWEzZTEgbGVnYWN5LXRydW5rCis1Mzc1MiBlYzFlYmRmNTRlYWZkOWFiYjE0MjQxOGRjNjVjYmE0YTYyZGQzMDBhIGxlZ2FjeS10cnVuaworNTM3NTMgYmJlNmRlM2E5NzQ1MDA2ZjQxMjVhYWMzMjcyY2ViYzQzM2YzZTNlYyByZWxlYXNlMjUtbWFpbnQKKzUzNzU0IDcyNGUwYjYzYTc5YjVkNGIwY2IxNjdhYjhmOTYwZWM1MWU2YjM5MjggbGVnYWN5LXRydW5rCis1Mzc1NSA3YWQyOWU5OWVlYzg1NzI2MjBmY2YwOTg3MDNhYTU1ZDYwNGI5NzY1IHJlbGVhc2UyNS1tYWludAorNTM3NTcgMzJkNDZhYmFhOGFiYTRjNWU3YTljYTgyOTUyNTIzY2RjZDgxZDk2OCBsZWdhY3ktdHJ1bmsKKzUzNzU5IDlkMjUzY2QzOGI1YjY1YTNkNmM2NGM0OGY4Y2FmMzQ1ZTU1ZTQyNmIgcDN5aworNTM3NjAgMjhjNGQ5Yjc3NDBlZDAxMDM4NTczZWZhYzcwMWZlNzAxNzhjYjA0NSBiY2Fubm9uLXNhbmRib3hpbmcKKzUzNzYxIDM1YzBkMzhhY2RjZTA4MDJmM2JiZDA0N2Q2YzAwM2VjYzAwYzE0ODkgYmNhbm5vbi1vYmpjYXAKKzUzNzYyIGQ0YTZhNjdhMDBhMGJhMzViYzIxYjlhYzMyMDNlOWIwODU4MGIwYjQgcGVwMzAyX3BoYXNlMgorNTM3NjMgODFkNjhkZDg0YWEwNWNmOGQ1OGRmNTVhZjE3NDZkODFhOTk5ZmIxNCBsZWdhY3ktdHJ1bmsKKzUzNzY0IDFkYmE2MWMwNzcwMzRlMTY4N2ExZmY2MTVhYzJkYjdiYWYwODcyZWEgcmVsZWFzZTI1LW1haW50Cis1Mzc2NSBkYWYwNjM1MjdiOTcyMTRjOTVlMjczMjdkZGQ5OTJlYzA3ZTRkMDJlIGxlZ2FjeS10cnVuaworNTM3NjYgZDk0OTkzM2NkNmI0NmM3MmNmN2M0MDI5MTQxMmQyYzZlYjdhZjYxOSBsZWdhY3ktdHJ1bmsKKzUzNzY3IGJkMjRkMzgyNmNjODNkZjBjOWI1OGNkZGYxYzdlMmM0YzczMjYyZjQgbGVnYWN5LXRydW5rCis1Mzc2OCAxNzdhN2JlZTY0ZTllYjJkMzc3MmNlZmY4MWQxOWMyYzlhOWFlZGE0IHJlbGVhc2UyNS1tYWludAorNTM3NjkgM2JiZWM5MWM1YjhmZTY2ZWMzNGYwZjhmMWFiMDg4NGExNGE4OTMwZSBsZWdhY3ktdHJ1bmsKKzUzNzcwIDg4NWE3N2ZkNWMwMWM3ZGJmODNhMjlkNWRjYmU5OWY1OTZhMDkwNzEgcmVsZWFzZTI1LW1haW50Cis1Mzc3MSAzOTgzZWUwZjZmOTY0ZGJiMjI4ZjVlMWIxNTJkYmFkZTk4YWM1NTlkIGxlZ2FjeS10cnVuaworNTM3NzIgZDQ3NjhiZmY2NDNlYTgxM2Y2NmViNmQ3OTcyMTVkMmI1MmE1YTJlOCBsZWdhY3ktdHJ1bmsKKzUzNzczIGFiZmQ5NTE4NWFiOTkxOTM2OTQxZGFkYzQwZGFkZjVhZDIxZjZiYjQgcDN5aworNTM3NzQgOTBlMjJmZWE4MzYzNDQ1NjdkYzU1ZGU4YTlhOGEwZGFiN2NlODNjOSBsZWdhY3ktdHJ1bmsKKzUzNzc1IGRjNTY3ODliMjllOWE2M2I0ZjU3MDRmMGQ4MTQ1MTAzOTcxZjE4OWMgbGVnYWN5LXRydW5rCis1Mzc3NiBhNjU0NmMyNzM2OWE2YzRmMTMwZTZkZjEwZWM2N2ExNWJiZmRmMjMzIGxlZ2FjeS10cnVuaworNTM3NzcgMDk3MmMyMTc2YWY5YjlhOTBmOGZjYjBmYzRlYTVkYjQxYjJhZGFjNSByZWxlYXNlMjUtbWFpbnQKKzUzNzc4IGE2MjE4NGIwM2YwZjE1MDJkMGFiOGU3ZGVmOTJjOWI2NjZiZmE2ODIgbGVnYWN5LXRydW5rCis1Mzc3OSA3MzQ4MWUwNzc3NThhOTQxOTNmYjAxMWZlOTY2YWM1OTc4ZWVkYzkxIHAzeWsKKzUzNzgwIDUwMmRlMDc5YWIzYTIwNTIwMzM1MWEwZmY1MDJiOGQ4NDA5Njk2MDIgcDN5aworNTM3ODEgMWQ1M2VhMGZjMjNmMTVmNWQyYzYwNTc2ZTk2YzMwNWJjMGZhNzI2NyBwM3lrCis1Mzc4MiA0OGI2ZDAxNTM0MGFlNjk3ODhiNTk2OTM0ZjA0M2YzZjFmNTcyMjI3IGxlZ2FjeS10cnVuaworNTM3ODMgN2U0YjYzNWYxZDMxZGJhMGQ3ZWFlMWUxM2FiM2U4MGNjNGZhM2EyOSBsZWdhY3ktdHJ1bmsKKzUzNzg0IDk5YjBlMDRiMmViMWNhMDExZjhmYTgzYjMyZWM0NzgxM2Q1YzM2YjUgcmVsZWFzZTI1LW1haW50Cis1Mzc4NSAyYTI1MzI4ODNkODBmYjM3MmRiMmUzZWVhOGUyN2NlZTk2ZDc3N2Q2IGxlZ2FjeS10cnVuaworNTM3ODYgOTE0ZGQ1MDU5ZjM4ZjMyMjU1N2E4MjQ0M2NlMjhmNjFmNWNmMDJhMyByZWxlYXNlMjUtbWFpbnQKKzUzNzg3IDQ3NDk3N2NkNGQ5Yzg0NDE0MjhhOTE0M2QzN2VhYWEzNzE2MzA3NWIgbGVnYWN5LXRydW5rCis1Mzc4OCAyOWZiOGRiZDEwYjg1ZjRiMjlmNzk4OWQwNDVkOTYzMjdkM2I3OWFmIHJlbGVhc2UyNS1tYWludAorNTM4MDAgYmMyYmQwZjAxZDk1YjU0MzQ5NmZmYTE2YzViYmY2YTQyNTRhNThlMyBsZWdhY3ktdHJ1bmsKKzUzODAxIGI0YjMyNzg0MGZiMTUxMGU5N2M1NDA5NDA2MTQ2NjE0ZjU3NTNiZjAgbGVnYWN5LXRydW5rCis1MzgwOSBmNGY2OTVhNzU2NjRhZjNiYmYyZjc4NWQwNTMzZTNkNmNkY2U1ZDRiIGxlZ2FjeS10cnVuaworNTM4MTEgZDc5NWE1NWU5YmU0MWQ2ZDlkNTIwZDI3M2JmNjU2ZGZjMGRiMjY2OSByZWxlYXNlMjUtbWFpbnQKKzUzODEyIDczNmYzZDkwZTRlMjg0ODZmNzA3NWNjMDM4Mzc0MDY5OGQyYWQyNTMgcmVsZWFzZTI0LW1haW50Cis1MzgxNiA5ZTM1NjQ1YWY0MGY2ODJlY2MyZjkxZjY5ZTQwY2Q3MWRkNTg0NDA3IHJlbGVhc2UyNS1tYWludAorNTM4MTcgMzVhZTI4MjU3YTI4MDViNGE3MWU5ZWIxM2IxNzgwZjNlZDFmMDhlMCByZWxlYXNlMjUtbWFpbnQKKzUzODE4IGIwZjhlOWIwY2MxOTkyOGNjZjk3M2E1NTI4ZmZhNDNiNzc3N2ZmYWMgbGVnYWN5LXRydW5rCis1MzgxOSA4MWI1ZGY1Nzk4YzI3YTVhNGIwYzk4ZTFjZWYxOGVjZmZlNWViODk5IHJlbGVhc2UyNS1tYWludAorNTM4MjAgMzZkN2IzYjZlZTU5NmZlODE4ODE4MGU4OTJlNmZlZGZmMDZmZDQwNSBsZWdhY3ktdHJ1bmsKKzUzODIxIGQzODZiNDYwOTkzYjczYjg2ZmZkYWNjMDgyYzUyNTNlZWM0NTA1MmIgbGVnYWN5LXRydW5rCis1MzgyMiBkZjAyMDRjYTk3MzlmMTU3NWVmMDNhOWNiZDNkMjMwYTllNTZjOTZhIGxlZ2FjeS10cnVuaworNTM4MjMgMGNjNDUwYjg5ODM4OTE2ZDE1MjNiYjQ3Y2UwZTRiZjg1NTYxZWYyMCBsZWdhY3ktdHJ1bmsKKzUzODI0IGM5ZTQxM2IxZDU0MDZhMGE4YmY3Yjk0NDZjNGY3YmRiY2I0ZTM1NmEgbGVnYWN5LXRydW5rCis1MzgyNSA1NzdiZjIxYjJjODZkY2UwNWIwMDMxNDQ2OTlhYTE4YzI3MDFiMmNjIGxlZ2FjeS10cnVuaworNTM4MjYgNTNmZDE0NGEzZjFhYjNjYjlmMjU4MzAyYWI1Zjk4YTZiZTg1NDY3ZiBsZWdhY3ktdHJ1bmsKKzUzODI3IDY3MmI5MDc1NzY0NzEzZGE4ZDU2MGU3OThlYmEwYWIwMzc1NTlkOGIgbGVnYWN5LXRydW5rCis1MzgyOCBjMzRiZDY1ODllMWVlYmNkMzk3NTMxNzM2OWNjNzJkNmQ5Yzg3NGNiIHJlbGVhc2UyNS1tYWludAorNTM4MjkgZDVhMTVmODUzZGI3NGRlNzZjZTkyNmI1YjUzNTVmMTFiNWVlNjhhMiBsZWdhY3ktdHJ1bmsKKzUzODMwIDAxZDU0Yjg4YmY1ODZlM2I4ZDBiNGE2MzQ5ZTIyZDY3NDYxNTBiOWIgcmVsZWFzZTI1LW1haW50Cis1MzgzNyA2ZmEwZDY4MmUxZTU1MGFhMDFiM2QzM2MxYmQ3MjE2ZDI1MTk2OTFmIGxlZ2FjeS10cnVuaworNTM4MzggODEyODYxOWU5ODRkZTk4Y2Q2NzE0MDU0YThkMmE2NDc2ZDk5NTdlNiBsZWdhY3ktdHJ1bmsKKzUzODQxIDQzNzk3Mzg0MTE1ZTU5ODg4MWU2MTE2YTAzZGIwNzc0MzRkNzljMWYgcDN5aworNTM4NDMgNTVkZWIxZGE0Y2I4ZGUxNjM1MzEyZTRmZGQxZmM5NTExZWQ3NzgzOCBwM3lrCis1Mzg0NCBlNjhiNDhjMzlkOGFjYjUzZjNmMzE1Zjg3OWYxOGJhM2UzOTgzMWMyIHAzeWsKKzUzODQ1IDYwODgzZTYxNDI5OGYzMWE2Y2U2OWRmNDQ0Zjg4ZWM2NzYyNGE0NTEgcDN5aworNTM4NTIgM2ZiY2Q2ZTJiY2I3N2RkZDljZDA4MjQ4MjRhYzNhZGQ5OTNiMzFhOCBwM3lrCis1Mzg1MyAzNDI3YTk3MzQ1ZmNmZTc0OGNkNGM4OTFhNjM5NGJiYmU4ZGYxMmIyIHAzeWsKKzUzODU0IGMxNjRiMGI3NTk3MTYwZWY1MjI0ODgyMjEzY2JmNDQ2OTdlNzU3NWQgcDN5aworNTM4NTUgMTI0ODlhNWRmYjRhYjAyZWY2MzczZmIzZGFlOGExMGRiNTE1ZWNlYyBwM3lrCis1Mzg1NiA5MDk3NjVlYjM4MWJkZjViNzg0YmNhODljYzU3NjlhNDA2Nzk1ZjkwIHAzeWsKKzUzODU3IDI5OTg3MjQ0OTA1ZGZmZDQ0YmEzZTVhMDdmMzEyZmM4OTVhY2Y4ZDcgcDN5aworNTM4NTggYzUwZTI2MzMwMWRhYmI1MWYwYTc2Y2ZlMTRkNjk0N2Q4YjI1ZDUxNyBwM3lrCis1Mzg1OSAyMGUwOGE4NzkxNWE1NWFhODUyYmY2MjYzNTYxNjUwZTAzN2Q4ZjQ4IHAzeWsKKzUzODYxIGYzYTU5YWNjYTUxZmZlODcyNDA4N2M2OGQ0ZDE1MDA4MzAzODZhZjIgbGVnYWN5LXRydW5rCis1Mzg2NCBjOTNmOTJhN2Q5MjAyZTJhNTIwYjgxNDRmMDEyOWUzNTMyNTI4ZjJiIGxlZ2FjeS10cnVuaworNTM4NjYgMzJjNDg5N2I1ZDQ2YzAwZWVlY2VmMWJhZWM3ZGMyMWQwZDFiYjVjMSBwM3lrCis1Mzg2NyAzYmFjNDkyNThhNGE1ODBmOGQ5OTUwNTk0ZjU4Y2Y3ZjE5NWVlZTg5IHAzeWstbm9zbGljZQorNTM4NzIgMGVhMjRmNGYyNDY3YWZjNDkzZDEzNGY1NThhYTQ3MGNiZTgwNDdlOCBwM3lrCis1Mzg3MyBiZDE0MTllOTQ3NzNmMDhhMGJlZDYxMTQyNDBmYTNlMjM5YjE5YzQ3IHAzeWsKKzUzODc0IGIwNTc5MGQwNjZiNDc0NGU1MmQzYzcyZDkyOWJkZjE4N2NjMTYwZjQgcDN5aworNTM4NzUgNTgzZmU3NTNlNzIxMjk3OTEwMWI0ZWUzMmU4NWUwZDNkMTUzMTEwMSBwM3lrCis1Mzg5MiBiNThhNDM3NGFjMjFlNDViMWEwNjJmMGU3ZmZjMDBkMDMzZDg1Yjk5IHAzeWsKKzUzODk3IDQyZTc5YzU5MjEyZDIyZDI1MmEwNGY4NTViN2Y3OWIzMmIxNDAzNjkgcDN5aworNTM4OTggOTMwNDdlZTQ4NmRhNGEwOWY0ZGRhMmQzYzZhM2QzZDUyMTUyYTQ1YSBwM3lrCis1Mzg5OSAyZTRkYWMwNTljYzU0YjNhNDBlMjM3Y2RjYTU5OGUzODdhNTczNDMzIGxlZ2FjeS10cnVuaworNTM5MDAgNjVjZDFmMjgwZTYzYzBiNjZlMGU2ODdhMDA1NzY4ZjlhYWY4ZWJiZCBsZWdhY3ktdHJ1bmsKKzUzOTAxIDg4MmI5YzE0ODk1YzBjY2U1ZThlMzgwMWM5ZjNjOWZlYWE1MDM0YzEgbGVnYWN5LXRydW5rCis1MzkwMiAxOTFjNDhjYThiZjljMTI2ODE5NTQyOGI4Njc4ZWI4NjJmMzUzYzkxIGxlZ2FjeS10cnVuaworNTM5MDYgZTg1NDI3MTQ5NWRlMTA0NGNhZjZkYWFhMDk1OWYyNTczMTNkN2FiNyBwM3lrCis1MzkwNyA4MzA4OGFkODNhNmIwZjJkYTgzMmFjYmFkNWQ2MWZhMmE4NzQ0MzA5IHJlbGVhc2UyNS1tYWludAorNTM5MTAgMGM0MTBjNzg1MzFjZjMwMjMzYWE4MTc1OTc0Y2ZlMTZlZmQ1OTMzNyBsZWdhY3ktdHJ1bmsKKzUzOTExIGQwMWJkMzdiZjVjZTUyNjE4MGQwYWEzMWNhMzkyZjczNjk3OGI0N2QgbGVnYWN5LXRydW5rCis1MzkxMiBmMmYwYjQxZjI3MGRhZTRjNjk4ZjJjYWZhOGU0NTMwZjFmMzk4OTllIHAzeWsKKzUzOTEzIGVhYWVlNzg1ZWI4NmQ3OGYyNDJjZjQzY2UxODA0ZmE2ZDU2ODdiMDcgcDN5aworNTM5MTQgOTdjNzdiMWUzNGJmMjQzMTIyNTQzZTJlNDFhZjg1YzBjZTcyMDdhNiBwM3lrCis1MzkxNSBhOGMzYWFhYjAwZWEyMzI0YTZmMDE4MDY3ODZkNzFlNzhlMDI2MTZiIHAzeWsKKzUzOTE2IDE5YWZiMDMwMmEwNmViMWU2YWJjNzU1ZjI0ZjUzZGUyMmE3Yzc0ZGUgdHdvdXRlcnMtZGljdHZpZXdzLWJhY2twb3J0Cis1MzkxOSBkODQyZTM1ZjVhMzEwZTU0NmVlNTZhMDViZDEwNTYxZTVkYmNiNzBkIGxlZ2FjeS10cnVuaworNTM5MjAgMDcwYjlhMGI0YzA0MDQwN2YzN2JlMjllNGMzOTkzZmE1YjM2YWFhOSByZWxlYXNlMjUtbWFpbnQKKzUzOTIxIDEzZjM5MzFiOWZjNDY5Mjk0MmUzZWNlNjJkZDBmYjliNjkwNjcwOTcgcmVsZWFzZTI0LW1haW50Cis1MzkyMiBmNTc5MGY5NmFjZjNjMzlkZGNjN2QxZmMxN2FlZWEyY2U3ODk2MWY4IHAzeWsKKzUzOTI2IDViZDNhMjJiYTQ5NmIxYzQwOTJjMmQ0MmE0MDUwZGRmNGIxNGI1NDcgcDN5aworNTM5MjggMWI5NzJiN2UzNTJhZGYzMTA1MjkxNTEyNzBlZDE5YTk4OTFjOTVkNSBwM3lrCis1MzkyOSA0MGIxN2FmYzRhYTdiZjcxYjUwNGM5NDg3NjZmZmU0MGI4Mjg5NzY4IHAzeWsKKzUzOTMwIDBkMmRjMzYxMWUzYjM4MjZmZmQ5MzE1NjU0MDllMWMxOGJkZWIwMGIgcDN5aworNTM5MzEgNjEwYzdhY2M5OTgyOGU2MmUxZmQzN2ZiMGY2N2I4NmU0NTEyYTkzZiBwM3lrCis1MzkzMiBiZTQxZGE2NmNlMzdmNjQxZjViNjU2ZGZhOWU5ZjUyYjY5YjVmNWMxIHAzeWsKKzUzOTMzIDI1YTg0OTAwZTIwNTVjMTRjNzY2MGU0Y2U2MzViNTY0ODc0NWZmMTEgcDN5aworNTM5MzQgMDM4ODNhY2I2NTBiODA4YzY5ZGY0NjE5MjdmZGFjZDM1MGQxN2RjZSBwM3lrCis1MzkzNSA2MjE0NDNmYzAxYmJhMTU1OWQwOGJjYmJiNGZjNTYyYzI2M2JiNzU5IGxlZ2FjeS10cnVuaworNTM5MzYgOWQxYjBjMjk1ZWJiYzBmYzE3OGM2MmM0MWU5ZjYxYjEzMGQzNWM0OCByZWxlYXNlMjUtbWFpbnQKKzUzOTM3IDkzZjU4MjgwMzczMzA0ZGUyMTljOGEwNWM2NmZlMzkxMGI0Yjk4ODYgcDN5aworNTM5MzggN2JjN2Y3NDBmNjlmZGM5ZjkyZmQ1NDg4MjA3YTBmM2IzMDNmYTE0OSBwM3lrCis1MzkzOSBjMzQ1MWE3N2JmZDE2NGRmNWRmY2Q4MzcwZDUwOTg3ZDg5OTNmZDAyIHAzeWsKKzUzOTQyIDkwYzgwN2VlODc2N2IxYmI2NTA4MWI2YmFjYmJkMjY0OTE3ZDU2YWIgcDN5aworNTM5NDMgZWNlOGEzOWZhMjgyZWRjNjJlMTRmYjc2OWNiMTM4M2I2ZmQ3NDhmZCBsZWdhY3ktdHJ1bmsKKzUzOTQ1IDU1ZDdlOGZhNWVhOGQ0ZmE4ZTcxNzA3MzBkZjU1NmFiZDdkMWQ3YTIgcDN5aworNTM5NDYgYTI2MjliZTFiMWQwMTU5OTI3MTkyYTNjYWRlNTE1ZGRlNTIxODY5YSBwM3lrCis1Mzk0NyA4OWJhOTNjNzAxYzg4NDczOTZkODJmOTY1YzY3NWNhZDVhYjVlZDk5IGxlZ2FjeS10cnVuaworNTM5NDkgNDVhZmZhZTQ2NWU0MTE5MjkxODE0MmZlZmY3NDZmMjA0ZjUxZmZlMyBsZWdhY3ktdHJ1bmsKKzUzOTUxIDAzNzZmMTNhMWFmOTEzMDcwNDJkYzRhNWIyZjU4N2EzZWQ5YmIyZDMgbGVnYWN5LXRydW5rCis1Mzk1MiA2YWExYmU1ZGQwMDk4YjM1NzFmMzViYTcyMzk5NzI4MjRlMjdkMWRmIHAzeWsKKzUzOTUzIDJjMDNkNzA2ODM1ZTQ2MGJiZGM4ODgxMWM1NDBmOTEwNzgzNGIwMDIgdHdvdXRlcnMtZGljdHZpZXdzLWJhY2twb3J0Cis1Mzk1NCAwNDdlZTIzYzBmODc4ZTkzM2VjMjg0ODIxYWJmZmQ5NzNhNGQ5NDEzIGxlZ2FjeS10cnVuaworNTM5NTUgYzhjMDY3MzAyNjU5OWJjZDY0MGVmYWE5NTM2ZDRkMjkzNmQ2OTllMCBsZWdhY3ktdHJ1bmsKKzUzOTU2IDE4NTNjZjA2ZTM2YmEzMTJhYmQxMjNlOGMyZDE2OTg5OGI0NzdkMjggcDN5aworNTM5NTcgMmNhMTRkNmEzNjliNzI1YjEzZDQ5YjBhZTM3N2IzM2IyNTM0MjZkYiBwM3lrCis1Mzk1OCA4NjQ3MTkwZGI5NmNkMWFhOGI0M2IyNjRmMzFiNThiZDhiYzA0MmUzIHR3b3V0ZXJzLWRpY3R2aWV3cy1iYWNrcG9ydAorNTM5NTkgZmMyM2ZjODYzOWJhZjAwZGU1MWI0NDY1MTdmZWU5NmEyNDFkNzEwMiB0d291dGVycy1kaWN0dmlld3MtYmFja3BvcnQKKzUzOTYwIDRiOWQwZGFjNzljY2MwOWJjMWY3YjQ2MjEyYzcwMmYxNDAwNDM1YzMgcDN5aworNTM5NjEgYzc5ZTYyMzRmYjE5ZWY2YTM0Y2VhNWEyNTljZDBkZDZiZjZiMzRhMCBwM3lrCis1Mzk2MiBiYjczZDNhMDQ1N2U5NzdkODQ4OTYwYmRlZWMyZTc5NThjZWU2NjI3IHAzeWsKKzUzOTYzIDdmNzA3NGQ0ZjgyY2Y3MGNhMWQ3MDk4ZDNjZDIzODY3OTRmOTZmNTQgcDN5aworNTM5NjQgZDk3NmM5YTYzMTExNGE4ZmFiMWIwZjUxMTMzYmI0Y2ExMjA4MmQ0OSBwM3lrCis1Mzk2NSBiMDgyNmU4ZTQ1Yzc4ZWY1NDg4YmY4YTQ4YjljZWM4NzczNjE5YmU4IHAzeWsKKzUzOTY2IDMwOTNlYTliNDAyNDk3MjgxOWRjMDc3NDJlYzAwM2RiYzA2OGFiZTUgcDN5aworNTM5NjcgZTc1OWZkOGQ5NWFlN2JjY2M0NjI1OWUxZTA0ZDFhNWFmZDg0MzY0YiBwM3lrCis1Mzk2OCAxZTRlMjkyNDg2YjY4ODg5ODYyYTgwNDdjODAxMDk2NDAxMGJkYjM4IHR3b3V0ZXJzLWRpY3R2aWV3cy1iYWNrcG9ydAorNTM5NjkgZjNmMGM2OTdhYTViMTYzMmVkMmUwYzRhZjNkZDkwZGUyM2UzMzhjOSBsZWdhY3ktdHJ1bmsKKzUzOTcwIGVlMzYwMmM3YWUwNDE0NzRhOGM3NWRhZDA0ZGNiZDNkZmRhMDUwOWUgbGVnYWN5LXRydW5rCis1Mzk3MSA0MzA4MTFiZGJmZWY2NmJjOWE4NWVjOTRjY2I3YWI2OTk4OWFhY2RlIHJlbGVhc2UyNS1tYWludAorNTM5NzIgOTRjNGUzNmMzMTI0MmI4OWUwMjYwMTUwYjEyYWViMmMxZmQxMjEyNSBwM3lrCis1Mzk3MyBkYTczYjVhMGZkOTBhYmEzMmM0Y2IxZDA5MzRkZDA0YTNkNzI4ZDg5IHAzeWsKKzUzOTc0IDJjZTIyOWE3YmEzZjY5ZWM1NDdlNzlkYzQwYTViMmQ1N2Y1OGY0MDYgcmVsZWFzZTI1LW1haW50Cis1Mzk3NSBjODNhY2ZiMWE2MzJmNzk0NmYzNDZlNzIyZjcwZGU3OTFmM2MyMzQ2IGxlZ2FjeS10cnVuaworNTM5NzYgZmVkYjAzZWFjNmFkNmQxMTA0NTA0OGQyODk2YjFlN2ViMGFmNzQyZSBsZWdhY3ktdHJ1bmsKKzUzOTc3IGFhMTk1YTFhYTk1NTI4Yjg4NTMyMmRmZmFiYjRiZTMwNDE4YTM3MTEgdHdvdXRlcnMtZGljdHZpZXdzLWJhY2twb3J0Cis1Mzk3OCBlNWU5ODM3ZGE3MGI3ODYwMGE4MGE1MmU3NzI2ZmMyMzkyNGU3MWZmIHAzeWsKKzUzOTc5IDBlYTUyNTU4YmRmZWMyOWFmOWNkOWM5OGUwYzA1ZGIyYmQyNWEwMjIgcDN5aworNTM5ODEgNTQxYThiMWI1ZGE3NWQ5YWY1NDk0MzQ3MDRiMWFiNTYzYjcyMDc3MiBsZWdhY3ktdHJ1bmsKKzUzOTgyIGU2NmRkYjZlMzRlODQ0Njc3NjVhNzZkZTdjY2UzY2ViMzM0OWQ2NGMgcDN5aworNTM5ODMgNDE2MjkyYzgyNDljZThjOTA4MGM1NDExMWZhNzg4NDcwNWZhZWM4NSBwM3lrCis1Mzk4NCBjMjRlOTVkMTE3NTIwMWI1NzQ3MDQxNWFiYzNiMGUyYTBjYjQ3YWFkIHAzeWsKKzUzOTg1IGQ1NTQ2ZjA5ZjIwZTc2MzhiNzU4MjQ4ZTVkNTRmMWI4NzZlMmFhZDIgcDN5aworNTM5ODYgMzBlNWNiM2E1NWFjMzE0N2Q5ZTkyZWEzODhmNGY3OTQ1NjE2ZTc2NyBwM3lrCis1Mzk4NyAxNDBmMzUyNDAyN2YwZTBiNWE3MGNlMmZmMTU5NGYzMWJhMjQ2YzhkIHAzeWsKKzUzOTg5IGE5ZTZjNzNlMGZhNWIyMTMyYzE1MzFjMzFhYWVmNGNmZmU0ZDUyNmIgcDN5aworNTM5OTAgMmQ5ZDEwNzAyZWM0NGUyZmU0Y2Y4MTQ5YzZjNmYyNWE0MzRlZGMyMiBwM3lrCis1Mzk5MSA2YzBkMGJlODJiNDdiYWYyOWE1ODExODQxYzU4Yzg4MjcyOWFiZGVmIHAzeWsKKzUzOTkyIDExNzc3Yzg4N2Y3Y2UwMGU0YmQ3Y2VhZWM2MTM2OWZmOGI5N2U0NTUgcDN5aworNTM5OTMgYTJjOWViOWFiNjA5Njc0YjQ1MmYzZGJiNDk5OTFiMjY3NWMzNjE2ZCBsZWdhY3ktdHJ1bmsKKzUzOTk0IDBiNDc0NDZjYzQwODRhMDM4MGRiOTY3NzE4ZTQ3ZjcxZGU0MzU4ZTMgbGVnYWN5LXRydW5rCis1Mzk5NSA0NmY3NzFlMjY3YmM4MTU4MjhiNmVkMDZlMDIzY2Q1YzNkNGRjYWEyIHAzeWsKKzUzOTk2IDNjYWJiZmE0Mzk4NDA5M2IxM2Q3Y2M0YjNkZjk0ODk4YzUxMWU3NWEgbGVnYWN5LXRydW5rCis1Mzk5NyBkNjI4MDVhOTkzYzUwODgxOTgyZmY1MWVkMDE2ZTQxYjY5YWM1NmRjIGxlZ2FjeS10cnVuaworNTM5OTggNWVhZDMyMTMwZjY0NmU4YjJlNmFmY2UwZDk3YjMyMzVkNzYxMDFhZSBsZWdhY3ktdHJ1bmsKKzUzOTk5IDRhNGY2ZjAyNmYxYzU4ZjQ5OWFhY2E4MjY2ZWNmMTE3MmIyY2UxNzUgcDN5aworNTQwMDAgNjFmZWUxODUzY2E4OGYzODIwYmY3YTNjNjNmYmY0NWE3MjU2MWQyYiBwM3lrCis1NDAwMSA4MGU4NjFlN2ZhYmU4ODg1ODZlY2RhMjdmNjhjNDk5Y2M0ZjZjZTM4IHAzeWsKKzU0MDAyIGMzYjI4YmE5MThmODNlYmZmMmU0Y2U4MTE2NTRkYTdkNGIzZjIzMTcgcDN5aworNTQwMDMgMWY3OTBkYTc5ODQwOWQ5MWNlODljYmQwYjBkN2VmZWY0NzY5YThiNCBwM3lrCis1NDAwNCA0MzFiMzIzODU5M2VhY2JhYzY1YTU5ZjE0Y2NiNGQ5OWViODE1NzZmIHAzeWsKKzU0MDA4IDc2Mjk2NGY5OTg3MTA0N2JmMDIzOTE5NGNhNzI1NGQxZDMyZDQ2YTUgcDN5aworNTQwMDkgYzAzNDQ3MGUzYzBhZWI5MTY0NzQxMzcyYTU3MGQ5ZWIxNGMwNzc0MiBwM3lrCis1NDAxMCA4YmViNzU0MDJlNzRiZjU1NDdkNGZmNDk3YjdiOGRhMDBjZjhkODM5IHAzeWsKKzU0MDExIDkzMDMxZTcxNjVhYjAxMjlmYmJkOGExMDlmNmJlYWIwMzRlOGY0ZDUgcDN5a19ub19hcmdzX29uX2V4YworNTQwMTIgYmE5MmU5YWRlMzZmMTE3OGFkNDU2NDc1NjgzMzg3NTViNmIzMTNjMyBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAxMyA2ZDkxZTc0ZmNmNTVlNTIwODZkOGFlM2ZmNGIyYzE4MjUxMDkyYmIxIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDE1IDM0YTdjMjllNjVkMTYyYWYxYTcwODUwMTA4ZWI3NGNjMDY1ZGI5OTggcDN5a19ub19hcmdzX29uX2V4YworNTQwMTYgZTEwM2I5MzdkNzQ3NTEwZTRlZTMxMjBlYWZhM2NkNGRlODk2MjMxMyBsZWdhY3ktdHJ1bmsKKzU0MDE3IGExYWVlODEwYjczOTY4NjA2MGRmZjBkZWUyNzFiMmY5MzRhMGM0ZjAgcDN5a19ub19hcmdzX29uX2V4YworNTQwMTggOTUzM2ViMGU4N2NmZmNiZjUyZjJjYzZmMTBjMmJmZWJkMzRhODc0ZCBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAxOSBmMjUyNDY4MDU4NTA3ZWM3ZDk0NGQ5ODQzNjgxODMwNWJiZWQwODk2IHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDIwIGJkMzU5MGI4Yzc4ZWU1OTFlMDQxZWM1ZWIzNjNjZGNlMjcyMzA5NzAgcDN5a19ub19hcmdzX29uX2V4YworNTQwMjIgOWRkODZlYWQ1MWMzNzc2Y2Q2YTRhYTFiYzY0YjE3YmFmMDFiZDY3OSBsZWdhY3ktdHJ1bmsKKzU0MDIzIDE2NTQ2MWFkMzhkYjhlMDVlMTgxNTJiYWZiOTA1ZTkwZTA3YzE1YjAgcDN5a19ub19hcmdzX29uX2V4YworNTQwMjQgODNiOGM3MGVmZDFlNWYxYmVhNTgzNDI3MjZhYzVjOGRiNzI0ZjRiZCBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAyNSA5ZWI2MGEwNzI4NWE0N2VkMzQ3MjZiODdhM2JiNmUxZTdmMzc0MTAyIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDI2IGE4Yzc5YjFlNjk2YWU3ZWQzMmIxODU0NWIzZTMyNTAwN2IxYmUzNGYgbGVnYWN5LXRydW5rCis1NDAyNyAxNjViYmVkMzM3OWQ2ZDNmNDViZTFlZGYyYWUxMmY1ODQ3Mjg2MTBmIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDI4IDJjNmNkOThkYjBiOGYzZTNlNzdjMzZjMDlkN2YyMjY5YjYzN2Q3OGEgcDN5a19ub19hcmdzX29uX2V4YworNTQwMjkgYjM1Y2ZkOGI0OTEwNjE0ZDJiZGQ3MDAxM2VlMDgyYmM5ZTUxNTJmYiBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAzMCBhYzBlYmFlNDU4NzIyMmRjYTIxZGQxNDc3ZWFmNGM5NDZhNjU3OTNiIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDMxIDRjNTZmY2VmYjI4M2I3ZjZiYTQ1YjRlNWFmZTM5M2NiM2IwMzlhYmIgcDN5a19ub19hcmdzX29uX2V4YworNTQwMzMgNDA4N2MwZWM3MzNiYmE1NGU4MDEzNzI3ZWQ2NGYxNzNiOWE2MTc1ZiBsZWdhY3ktdHJ1bmsKKzU0MDM0IDAxZGRlY2I3NzgxNTQyNjM4MzRlOWIwMGIxY2RhMmFkNjQwOTBlNWUgcDN5a19ub19hcmdzX29uX2V4YworNTQwMzUgZTQ3NmE1YTc4YjI5MzdlNzY3MjEyMmYwMWFiNjY0NTVkYjBhOTNjZiBwM3lrCis1NDAzNiA1NmQ1MWY1OTQ4NjUzZGEyYTFlOTk3OWVmYzRiMTFlMmY2ZGFkMWY4IHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDM3IDdkN2YzMjJmMmNiNjc4NzI5MGJmNjczNTgzZjc4OTMxNWM3MmY0NTkgcDN5a19ub19hcmdzX29uX2V4YworNTQwMzggZTIyMDhkNGY1YTdmYzliODZiMzU1NmQ1M2JjYzg3MDIyNjk0ZjFiMCBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAzOSA3NDcyZjdiN2Q5MDM0NDYxNjJiMWE2YjFlZDNkMjExNmVjODQ1ZmNlIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDQwIDFkY2UyNTAyNTY3OTIxYjI1MmM5MzAwNGYzY2QyODVlZTVjZTFlOGIgcDN5a19ub19hcmdzX29uX2V4YworNTQwNDEgYmRiNTI3MjhiMDJlZjRhYjcyZDg5NzBmNDgzNDVjNWZjNzNiOWRmYyBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA0MiA0NTU1OTYxYzVhMmY5NmFhOTNlODJiOTdhNDQ5YjM2MmRjZjU5NDhkIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDQzIGUxNjI2OGMyNzNiYjI2NjRjNjA5OWVlYzUwMmJmYjVhNGE1NjA5ZWIgcDN5aworNTQwNDQgNGFlMDQ5MGUxYTBjMGYzNDlmNjc4MWMwNjQ1ZTIyOWQ0NmIxMWM3NSBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA0NSBkZTJjOWY5YWVhMWVlNzZkNTlkM2UwZTUyYjdlZjNiY2YzYWFhNzkxIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDQ2IDY5Y2E2NTdhNjRlN2VkYmYwNWViMmMzNDkwY2RmYTU1ZDI0YTE4NzcgcDN5a19ub19hcmdzX29uX2V4YworNTQwNDcgNGMxZTJjMzNmYWNkMDhjZWViNjcwZWM4YzQzNWM3OGI3NzdjZDFlMyBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA0OCAwYzE0YjY2YWNhNzAyYjRkMWY5ZmVhZGZjM2E2MjI2NzA1Y2I2NGY1IHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDQ5IGVlNDYyMTdjODdhZjdhODczODE5YWEzZGNjNzMzMTI0Zjk2NTk4NTMgcDN5a19ub19hcmdzX29uX2V4YworNTQwNTAgMjdhMjE4NmY0NWNiNGIyMzcxNjNlNmU3NWIyOGQ5NGFlNjAxZDMxZSBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA1MSA5MTg1YzcwYTE1ODVlOWE2ZmMwYzJkZmRlZjc2NTgxOTY2ZWFkOTAzIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDUyIGQ5YjE1MzRlYzc5ZmU3NTA0M2MwMDgxOTY1MWE0OTUyNzE5MmM4YzggcDN5a19ub19hcmdzX29uX2V4YworNTQwNTMgYjQ2YzZkMjc2MjVlM2U2YzAzOTY5YzM2YjY0OTI1NWQwMjQ3ZjI4NiBsZWdhY3ktdHJ1bmsKKzU0MDU0IDUyZTQ1MzA3NzNjOTcwMWEwNmMxMWUxMTU3N2VkZTliYjFkZjI2MGQgbGVnYWN5LXRydW5rCis1NDA2MCBiZTQ0YmYyZGIzNTBlNGFhMmM0MjU2OTExZjMwMjE2MzU1ZWVlMTBlIHJlbGVhc2UyNS1tYWludAorNTQwNjEgODg4ODRlN2JhYzZkYzJhMjhmYTg4YjA4NjE0YWM3ZTYwNjIzMjQyMyBsZWdhY3ktdHJ1bmsKKzU0MDYyIDUyZTk1ZmIwODkwMTdkYWI4OWY3NjBjNWM1MWExYWRjOWNlNTQ1ODYgcDN5a19ub19hcmdzX29uX2V4YworNTQwNjUgMzJhNGU1ZWUyZDk4YzE0NTc5YmQ1MWY1MmU4NmFhYTAzNWM5ODIzNiBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA4MCAxYzU4NjExYzUxZDBjYTZmYTU5ODJiNWExMjg4Y2FjZmFkMDczMDY3IGxlZ2FjeS10cnVuaworNTQwODUgYmU2OGRhNTYxZGNkNjc4NzBmOTY1YjE2NGM5YjI3YjY3YzI1ZmUxYSByZWxlYXNlMjUtbWFpbnQKKzU0MDg2IDRlMzQ4MTk2MWZiYmMyZWNlMTY1MDI1Y2JjYzA4OWIyMTYxMTBlZGMgbGVnYWN5LXRydW5rCis1NDA4OCA2OGE0ODdkMjFjMDY5YTc1YzMzZWM4NmM1ZmM2ZjM5MDJkNTc3N2FiIGxlZ2FjeS10cnVuaworNTQwODkgMzI0YTcxYTEwM2VjMmRmZWNjZDNhNTA5OWU4MDllYzIyZGRlNmQ5NCByZWxlYXNlMjUtbWFpbnQKKzU0MTE0IDJmMmI4OTM1YTgxZTI2MjAyNmJhMWY1MmJmMWRlODRkOGVhNjA2ZGQgbGVnYWN5LXRydW5rCis1NDExNSA2ZGVmODJiOGNmMjBhYTIyM2JhN2E1ZWFhOTljNGM4OTlkNGVjMWQzIHJlbGVhc2UyNS1tYWludAorNTQxMjQgZmU5YTlkMzlhMzUxN2ZlZjU4OTI0M2U3OWZhZTU3ZTk3MDE2ODI1NCBsZWdhY3ktdHJ1bmsKKzU0MTI1IDNiMWVmY2UzNThhMzYwMTI3MzBlZGMxNmI4ZGZiZmQ0ODcwMWQxMGQgbGVnYWN5LXRydW5rCis1NDEzNiAzNzIwNzBiYTZmZDMxZjRlMzg5YTkwY2NiM2NiMDYyZmQ4MTdjN2Y4IGxlZ2FjeS10cnVuaworNTQxMzggZTFiMDAwYmVkNDYyZjM4YmRkMGYwN2NlYTE3NWY1MzcyNmNkZGFkMSBsZWdhY3ktdHJ1bmsKKzU0MTM5IDZkMzQ1NGMzNzFkZDQzYWM5ZjMxYjRhMzM2ZjE0NDJkNDZkYmY5NDggbGVnYWN5LXRydW5rCis1NDE0MCA4OTFjMjhkNTM1Njk2OWIwNDkyNWFhYTZmNDViZTYxYTg1NjJlYzZiIHJlbGVhc2UyNS1tYWludAorNTQxNDkgMDgxYjRlOGI2ZjViODIxNjVjMzA1ZTI3ZDdkYjIzOGNjMTY4MWMyOCBsZWdhY3ktdHJ1bmsKKzU0MTUwIDYwNTg1NTMwZjMwYjhiY2RhMDU1YTcwYTE2ZTAzZDYwMWM2NTE2N2YgbGVnYWN5LXRydW5rCis1NDE1MSBlNDIyODAyMjAyYmUwYTIwNWUwNTBiMzQyOTg0MTA5MzJiYjMwMmVjIHJlbGVhc2UyNS1tYWludAorNTQxNTIgZjFlODhjMzUwMmQ5ZjFhYWY4MGM0NWNmZTk2ODhmYTZiOGFiYTY3YSBsZWdhY3ktdHJ1bmsKKzU0MTU0IDQ4MjU0NzM5MTU5ZmZhZWJiNjgyZGZiY2FiMThkMzA0YzE1ZWUxN2QgbGVnYWN5LXRydW5rCis1NDE1NSAzM2I0M2RlYmI5N2VlNzY3N2I2NjM2ZWQ1ZjEwZDZhZDA0ZTc1MDU2IHJlbGVhc2UyNS1tYWludAorNTQxNTYgNWMxOTZhYTZlY2Y0OGRiOWNkOWUzNWRjOGZlZjJiMDM4YjRlODEzNCBsZWdhY3ktdHJ1bmsKKzU0MTU3IGI2ZGNiNzc4MzM4NTdkOTlhOTQ2ZjVjYzNmZDc2NTBkZDQzNjk3MTkgcmVsZWFzZTI1LW1haW50Cis1NDE1OCAxMDgwZGU0OWM4MWU4ZGY1NjRjOGEwNDc4YmY2MDQ5MWQ3NTQxMjMwIHJlbGVhc2UyNS1tYWludAorNTQxNTkgNWMwOGU2NDYwZGM1NTRmODgyMTllYjE0ZDVjYzU4ZDlkYTI5YjIzZiBsZWdhY3ktdHJ1bmsKKzU0MTYwIGIwZjI2YTc4MTNjOTA5NmY0OWQ2NGRlYjUzM2QyZDg5ZDM3NTk2MWYgbGVnYWN5LXRydW5rCis1NDE2MSBmODNlNTgyMmU2NzI2YmU5ODkwNjc5NDFlMDdiODBmOWQ3YjJkMzhkIHJlbGVhc2UyNS1tYWludAorNTQxNjIgMDlkMDhmY2I4ZjdiOWQyMjI4NDlmYzc3MGM5ZWQ3NjY2ZDRmNjIyZiBsZWdhY3ktdHJ1bmsKKzU0MTYzIDJlZTM2NmEyZDJiODkxZjdiZmI3OWY2ZjM2NzNjYTBhYWI2Y2U1YTkgcmVsZWFzZTI1LW1haW50Cis1NDE2NCA0ZTgzNWRmMmI0YmE4OGNiOWFkMTg1Yzg5YzVhZjlhOTViNDUxMTljIGxlZ2FjeS10cnVuaworNTQxNjUgOTYzYzBlNDQyODMyMTE0YmFmZWI3YjIxYjYyMjIwMjY0ZDYyZTAyYyBsZWdhY3ktdHJ1bmsKKzU0MTY2IDA2OTkyZTZiMjA1YTQ0OTYxNGU2ZDhmNGIyNWNlODM0YTg0MDRjYzAgbGVnYWN5LXRydW5rCis1NDE2NyAzY2ZkYjgwYmM2OGU4NzRjZTZhYzM4MmE0NThhNmJiNTc0ZTIxMmIxIGxlZ2FjeS10cnVuaworNTQxNjggMWVhMTlmNzQ1MDRjYmM2MGExMjQ5ZWVjNGM2MzYzNjI2ZGNkMzRjOCByZWxlYXNlMjUtbWFpbnQKKzU0MTY5IGQ0NTc3MjE1NTM5ZGRkMzc0MTkwZTliNTYxMTUwZmE3NTQ2NjEwMDMgbGVnYWN5LXRydW5rCis1NDE3MCBhNmEwOTViZjY0NTg1ZDAxNDJmNDg1MjYyYjczNjNhMzA3MTY3ZjU0IGxlZ2FjeS10cnVuaworNTQxNzEgNjdjYzBlOTVlOGE1NzhmYjBhNDZlYzJiNjNhNjVmZjk1YzlmYWY1OSBsZWdhY3ktdHJ1bmsKKzU0MTcyIDQxZWQ5NGJlNmQ1Y2FhMGZiMTliNGZjYmU1ZTBjMmQ1MzFhMTQ4ZDEgcmVsZWFzZTI1LW1haW50Cis1NDE3MyA2YTU5OWFlZTdjYTQwYTEyNjEwMjgwYzJlYjI1M2YwNDNkMTFhMzJkIGxlZ2FjeS10cnVuaworNTQxNzQgNjE0YmNkMzdjNmYzYTRlZmQyZTU0NTE0NDkwYjM4YzFlZjA5MjRjMiByZWxlYXNlMjUtbWFpbnQKKzU0MTc1IDZjZDM2NmU2YmVlY2M1OGZiZTM4MmZkMzgxNzI5YzQzNjdmNjdmNTQgbGVnYWN5LXRydW5rCis1NDE3NiBlNjZjZmM3MjVlOGRiMGUxMGUxYjkyZDE2OWVmMmFmYjAyNDQxOGIzIHJlbGVhc2UyNS1tYWludAorNTQxNzcgNmQ4ZGNhZDEyZmQ5YmZiODRjMGUyZTVlZDk1NmZiZWEyMzU0NGMzYyBsZWdhY3ktdHJ1bmsKKzU0MTc4IDgyODBiN2M0MDU1NzYwMjI4ZDkzYjI3MmEyNzc4N2NkYjAwYTkzOGUgcmVsZWFzZTI1LW1haW50Cis1NDE3OSBlZmEwYTc2MTkxOGMyOGM3MmY1NjAyMDdhOGE5YTJmNjYzMmRjN2NhIHAzeWsKKzU0MTgwIDNhYzI0YzAxMTBlOTZmOGE1MWQyNDI1MjEyN2JlMjljYTUwNGQ1NTQgbGVnYWN5LXRydW5rCis1NDE4MSAxYzE0YjIzYjljMWJjZjY5NzFlYmQwNGE4YTcwZTg2ZWUwYmNhZGQxIHJlbGVhc2UyNS1tYWludAorNTQxODIgNzU3ZTkzYTQwOTZjNTI0YmE5ZTM4ODg1MWI1ZTZlMDFhOWZlMDY5NyBsZWdhY3ktdHJ1bmsKKzU0MTgzIDE2YzIxNWU0M2JhZDBhM2Y0MWUyZGEwMTY5YjZkN2JmMjdkYjNiYTQgcmVsZWFzZTI1LW1haW50Cis1NDE4OCA3MjhjNjBlODVlZmE1OTRmY2QzYjAxNTQ0YTE5MjRiZDY4NDcyNzJkIGxlZ2FjeS10cnVuaworNTQxODkgYzhlZDRhZWE2YzU4MzMwZDk2YTc2NDk1YTBlZTQwYWUwYTcyMTgwMCBsZWdhY3ktdHJ1bmsKKzU0MTkwIDIxMjMzYzJlNWQwOTM5OTQwNzRkYzhhYjc4ZmY3NGEyZmUzNTI4MGYgcDN5aworNTQxOTIgZjQ3OWI5Yzc0Yjc4MTk5NzkxZDY1NzcwNjU3NjUwYjUzNzM3MDI0YSBsZWdhY3ktdHJ1bmsKKzU0MTk0IDEyOWZmZmYyY2U2ZGM0NWYzNTIwNmVmMTNmZTVhMmU0ZDQwZjBkZDAgcDN5aworNTQxOTUgMjQyZGUxNmE2ZDQ0MmMwZDU2NzU5MDI1ZjZjMzcwNjEyNTg4ZGFlZSBsZWdhY3ktdHJ1bmsKKzU0MTk2IDFhMGM5MDc5MjhiNDAxMzQzYjY3MTY1NjJhZmM0M2Y3N2M2MmFjMjggcmVsZWFzZTI1LW1haW50Cis1NDE5NyA4NTBjMzJkYjI3ZTY0NDA2NTZmMjhmYTIzNDFkYzllMGQwN2NmMzMwIGxlZ2FjeS10cnVuaworNTQxOTggZTE5NjJhYjEyZmNlOWFiYTg5NDVmYTczZTZmOTczYWM0YzNkOWQ5ZCByZWxlYXNlMjUtbWFpbnQKKzU0MTk5IDdkYTIzYmY4OTQ5ZmM0YThlYjg4OTE1YmZiZTJhMTBkNjY0ZGMwYzIgbGVnYWN5LXRydW5rCis1NDIwMCA4MWU0ODZiMzAwNzg4NWMwNTcxOTQ1MWUzMjZhYTFkZTEzZmVkMGM5IHJlbGVhc2UyNS1tYWludAorNTQyMDEgYjA5MmIyYzgzYWI3ZTg1OTY3YjMzZjc2YTM1ZjUwNDEzNDVkZGM1NCBsZWdhY3ktdHJ1bmsKKzU0MjAyIDUxMDIzMzZjYTM0MzU0NGNkNjVjZjI1ZTM1Nzk3ZjRmZGFhMmMwNWMgbGVnYWN5LXRydW5rCis1NDIwMyA0MjNiMzY0ODQzY2RjMWNhZTAwMjVjZjg4OWYwYzgyOTE0YWFlOWE3IHJlbGVhc2UyNS1tYWludAorNTQyMDQgOThiYmM5M2JkNTViYTBhNjQ5ZjRiN2MwNmI4MWE3Nzc4YmQzMTk2NSBsZWdhY3ktdHJ1bmsKKzU0MjA2IDNiNTM4YWNmNzY5NGUxMzE4YmNhZjY0MTlhZjRhMTEwMmM2MTM5YmMgbGVnYWN5LXRydW5rCis1NDIwNyA0NmNmYWJiN2Q1NDQ2M2U2OWUyZGEzZmFiNmM3NTU1YWIxMTg1MWM1IGxlZ2FjeS10cnVuaworNTQyMDggZTQyYzYzZDdjMjMwYTg4MGQ3YTY3OTI3ZGNkNDg5ZjM1NDE3NDU5YSByZWxlYXNlMjUtbWFpbnQKKzU0MjA5IGJhYWJlZjZjMDBkNjhlMjc2NzU2YWQ4YzI4ZDUwNGQ2ZGU0ZDk3NjIgbGVnYWN5LXRydW5rCis1NDIxMSBiZmRiZDNlYzI3ZDg1YTVlZjQzNGI0NDY2ZmU0YWQxMzg1NDA2YWMzIHJlbGVhc2UyNS1tYWludAorNTQyMTMgNGEwZTIyOGMzNmU1N2Y3MjIxMzQ3ZWJlMzM0NWNhNDMyNWMwNjc1ZSBwM3lrCis1NDIxNCA2ZTFjZjRkMjhhZjM0ZWI1MmQ1YzhiNGI0YzA3NWM5MGRkNzhhOGUwIHAzeWsKKzU0MjE1IDE1NzI2MGVmNjc3Y2FkNGNkNGVlNjEwYzk0Njc4ZWJiOGZhNGExZjYgcDN5aworNTQyMTYgNjNhZjM3YzJkMGMwZWQyODliYTg1ZWJmMjBlYjY4ZmUzYjkwMGEwNiBwM3lrCis1NDIxOSA5MThlZGFiYWFhODRlNjI1YjgzOTkwNTg2MzllMGNkZDU5NDAxZDViIGxlZ2FjeS10cnVuaworNTQyMjAgYzFhOTdiMDgyMTNhOWRiNTM0Y2Y0OTEyZWIwMmI4ZDM2ZjhkZGM1NSBsZWdhY3ktdHJ1bmsKKzU0MjIxIDMyYWY5NTg4YTE4MmVmNDQ4YzA5ODk1NDhkZjcxNTJhNjU5MzBlNDggcmVsZWFzZTI1LW1haW50Cis1NDIyMiA4YWE3Y2I1MWQzNTg0ZjhmOTNiMmY5Y2IxNDhiMzZhZGFhNWI5ZDVhIGxlZ2FjeS10cnVuaworNTQyMjMgMmY1ZDg0ZGNiNjU1N2RhZDM1ZmQ3YTlhMjlkNTA3Y2QxMzdmODFlYyByZWxlYXNlMjUtbWFpbnQKKzU0MjI0IGQ5NDhhMmMwZmNmZGRkOTUxMjA4ZjBjMDU2NDM4MTA5NGFjYjhjNjYgcmVsZWFzZTI1LW1haW50Cis1NDIyNSA1NTY1OWU2NDI3N2JlNmNkNDA2NDQ5MDZkMGE4YWU0YWE5MDJkOWJkIGxlZ2FjeS10cnVuaworNTQyMjYgOWI1NmVhZDM1MzJjZDc4ZTljNjYyZTE5YWUxNDk3OGUwZGVhNDA1OCBwM3lrCis1NDIyNyAwYmI5NjlmMTUxMThhMzg4MGVjMWJlNzliYzMyODBiMDA3NDY2MGRhIGxlZ2FjeS10cnVuaworNTQyMjggODM0MDBkZjk3Mzc5YWUyZjU1NTczOGVjZTBiOWVjNDE3NjYzZmYxZiByZWxlYXNlMjUtbWFpbnQKKzU0MjI5IGE3YzhhNGQxYjk0MDdkMjliMDU4MGM4NDkwMDY4NTQ1ZWZkOWQyM2MgcmVsZWFzZTI1LW1haW50Cis1NDIzMCBmMmJhODEyZjcyMDA3NjBiNjViZmY3NWIzMWRiMDAzZDc0YjVjOGQxIGxlZ2FjeS10cnVuaworNTQyMzEgM2JlMjE3NWJiYjAwMDc0ZDI0M2M4NGJmOWM5ZGNmNTZmNjlhOWIxNyBwM3lrCis1NDIzMiBmZjBjNDZmYjE5NWEzNTZhOTJmMmQyZGM2NDQ5YzMyMWViNzBlMGM4IGxlZ2FjeS10cnVuaworNTQyMzMgYmUxZTJmNzQ1NjY5ZGMwOTVjNzU1NGM1MzZlYmI3ZmMxMTRlM2E0NiBsZWdhY3ktdHJ1bmsKKzU0MjM0IDljZmM5Y2JhNjc2OGIxNmZkNmQ1MmY5MzlhOTMwNDQ0YzIzNWRjNzMgbGVnYWN5LXRydW5rCis1NDIzNSAxYTBmNmExMjg3NGMyYWFjMzNmNzA2NDVjM2Q5MDZmZGMyM2JkOTk1IGxlZ2FjeS10cnVuaworNTQyMzYgZTgzMTA4NTVmY2M3YTY3NDRkODE1MDAwNTdjOTcyNWRiN2ZiZDE2MSByZWxlYXNlMjUtbWFpbnQKKzU0MjM3IGY3NTQ1N2Q3NTMyY2UwY2U3YjdkNTdkNDcwM2Q5YWMzNDU3MWY5N2MgbGVnYWN5LXRydW5rCis1NDIzOCA3ZjZkNTM5MGExMWFiMmRkNzVhMmY4MzZiN2FkNTY5YTNjYTVmMGFiIHJlbGVhc2UyNS1tYWludAorNTQyMzkgNzQ0NmFkNmNiNThiZGNiZmNlODE4OTMxZGEwYmFmYzZkY2QzYjU1YiBsZWdhY3ktdHJ1bmsKKzU0MjQwIDA5YmZjMGNkZmY5ZmVlM2JlNDg4ZGJlMWIyMDRjOTBkYjQ3N2MxZGQgbGVnYWN5LXRydW5rCis1NDI0MyAyODc3Nzk4NDNjNWQzOTk0YTIxZTVkMzJiMGUzZjhmYWRhNWU2NjU4IGxlZ2FjeS10cnVuaworNTQyNDQgMzcxN2IxNDgxZDFiOTU3Mzc5YWIyMWIwZmZiZDY5MjA5Yzk2MTU0MSBsZWdhY3ktdHJ1bmsKKzU0MjQ1IDFmZWU5ZjQyYjFmYWRkOTc1MTRhNzU5MTRkNDFhMDI0ZTI3NmM0MmQgbGVnYWN5LXRydW5rCis1NDI0NiBiMTMyNmFhMDRiMmMzZGEyNDU2OGE3Zjg2ZjhhNWRhNTI5MzZmMTQ1IHJlbGVhc2UyNS1tYWludAorNTQyNDcgNDdhYzFiZmVhMzA0N2M2Y2U4MGJmMTU3OTI0MzA0ZjE1YTcwYjVmOCBsZWdhY3ktdHJ1bmsKKzU0MjQ4IGZlZGQ2Y2NjNWU1YjRmODY0N2NiOGE0MmJhMDUwNTQ2YjUzZWM1ODIgbGVnYWN5LXRydW5rCis1NDI0OSA0YWE5MTg3YjUxNTljY2RlMzU4NjQxMDRlNWY2YjM1MDZjY2IzMTg1IHJlbGVhc2UyNS1tYWludAorNTQyNTAgMWFmMzhhZjMxNGYyNzI3M2Y4NDkyNjZkMjIzMjM1MDhlNTNhYjI2NyBsZWdhY3ktdHJ1bmsKKzU0MjUyIGJlMGQ0OTEzNGU0ZmEyZTg1ZjZmMDZjM2ZkMTU3MmM5NWViYzE2MzkgbGVnYWN5LXRydW5rCis1NDI1MyAxYmJkNjg4YTZkZTE2ZjU3Yzk5ZDY0ODM4YTJlNWE5ZjM0MzI2ZTgyIGxlZ2FjeS10cnVuaworNTQyNTQgMDAyMzdmNTE0ZjA2MjkyYTA0YjIxNzk3NzVhYmExZWEyZGZjZjZiZCBsZWdhY3ktdHJ1bmsKKzU0MjU1IDAxYzhmM2UzMzMyY2FhMThiOTJmOTUwZjViODc1ZDhmZmY1MTYwOTAgcmVsZWFzZTI1LW1haW50Cis1NDI1NiA3MTgwOWMwODlhMjYzOTVlOWU3MDEwZGUxN2I3NThjZDY3M2EzYjBjIGxlZ2FjeS10cnVuaworNTQyNTcgZDNhMzVmZTEzODM4YTIxOTY3YTc2MzU3ZGZhZmU3Nzc1MDI4NmMxZCBsZWdhY3ktdHJ1bmsKKzU0MjU4IDU5NzhlMDcyOTFmZTc2ODBkNWUwMDhlYjhjYWQ5YmU4MzNiZjNiNWUgcmVsZWFzZTI1LW1haW50Cis1NDI2MCBhM2YzMTEzMDRlYTYzMmViYjEyMTljNTRiOGY1NmFkNjI4MDE0YmIwIGxlZ2FjeS10cnVuaworNTQyNjEgMmI1MWIwNGIyNTQ1NGNhMTIyODMwMjk4ZTAyZDA2ZjJmNGVhMThjNCByZWxlYXNlMjUtbWFpbnQKKzU0MjYyIDEwMWExYWI1NzNkYjRlYjI0NzUxNTE5N2NjZWIxNGNmZmEyMGQ4MjAgbGVnYWN5LXRydW5rCis1NDI2NSBjZjQ1MjAyNzA3M2UyOGNjZTM2NWJjNjU5NjE2MmNlZDhlNzRlODBlIHAzeWsKKzU0MjY4IGYxMThhYWRjMTEyMDVjNzU0Y2Q2YWYyMjJmOTk2OTYxYmQwMTRhZDcgbGVnYWN5LXRydW5rCis1NDI2OSBjOWI0MGIwYWEzMDMyMDFkNzVmYThhZTAwZmE0NDk1ZGU5NWE3MzQ2IHJlbGVhc2UyNS1tYWludAorNTQyNzAgYThhZTJjMjljNjZhZTJkNjBkZGE2MDAwMGQ3NDk1NTZmOTAwNTgwYSBsZWdhY3ktdHJ1bmsKKzU0MjcxIDVhYjdkYzhlNzMxYTk3YWFlMjgxYzg0OTFiMTgxMmI1ZWYxYmY3YmMgbGVnYWN5LXRydW5rCis1NDI3MiBkNGVhMDY4YzM4MjA0ZDgwZDE1ZDJjOWJjNzE3ODlhZWRiZDdlZmNkIHJlbGVhc2UyNS1tYWludAorNTQyNzMgZDcwNDQ0NjViNzQzYmY1MTVhMDdjNDZkM2MzM2U2MGUzNDE2ODI3NyByZWxlYXNlMjUtbWFpbnQKKzU0Mjc0IDYwYTM1YzA3ZDMyZGYzNDFhNGViODlmNzc5OTI5NWUxZmI2YWZmNTMgbGVnYWN5LXRydW5rCis1NDI3NSA1YjZlMWMwMDhjYTMyM2RjNzE0NmFmMjNmNDc4M2U3MzM0NzI1ZDYxIHJlbGVhc2UyNS1tYWludAorNTQyNzggOWEwY2NkYmJjNTY4ZGNlODJiMDkzNWFlMTA2ZmUwYzFjNWU0YjJmYiBsZWdhY3ktdHJ1bmsKKzU0Mjc5IDcyYzViNTVjYWExZGIyZTM3M2Q0MDQyOWE0YzljODU3NmU1NWUyYzEgcmVsZWFzZTI1LW1haW50Cis1NDI4MCBkODUwYmY1NmZkZjZjYTJmZGQ4NGYwZjMzZWRjYWE0NDgzODVhMzVlIGxlZ2FjeS10cnVuaworNTQyODEgZGNlOTQwZDlhOGU5Y2RmMGQ2NTU4ZDMzODJkZTVlNmFjNTE2YjkyMiByZWxlYXNlMjUtbWFpbnQKKzU0MjgyIDQ3ZWRlNjVlMmVmZDhmZmViMTA5OGNlMzhhYmFmOTRjM2JkNzEwYWEgbGVnYWN5LXRydW5rCis1NDI4MyBhZGY2MTJmNzA2ZTRlOTA2NGJiZGU4ZTAyZWMxMmM3OTIxOTFiODJkIGxlZ2FjeS10cnVuaworNTQyODQgYTdkYWEwMjE4Y2YwYzA2M2E1ZWUzZDBjMDk2N2Q1MGIwNDRlZTQ1YiByZWxlYXNlMjUtbWFpbnQKKzU0Mjg1IDNlZTk1ZmRlN2NmYWU0MDQ5NDIzYWQxMjM0NmE3NmRiODVjMWE5MmYgbGVnYWN5LXRydW5rCis1NDI4NiAyMTEyMDFlNmIwNDVlZDJjNTExNWUwMDIxMzU5Y2JmZGMyMTU4ZjkwIHAzeWsKKzU0Mjg3IDcxN2JjMmE0ZWVlNzdiNmYyZGYwMGQyZmVkYzk4ZmJhY2QwYWU1ZDIgbGVnYWN5LXRydW5rCis1NDI4OCBhODdiY2MzN2JmMGZlYTc3YWQyOTljYTYxN2E5ZTVhMGI5NTc0M2M5IGxlZ2FjeS10cnVuaworNTQyOTAgNzEwMGM1OTE4MmZmMzE2ZGY4NzdhNDRiZTUxZDU2M2ZlZTk0YWRlNyBsZWdhY3ktdHJ1bmsKKzU0MjkxIDQ1Y2UzODhlYzU5YTVkMjNiZTBiMzhhMDAyYjRjMTEyMzJmODE3Y2MgbGVnYWN5LXRydW5rCis1NDI5MiAyY2I1ZmI3Y2QzNTdlNGI4MTJlMjkxYzY1MmY1NzZhNzJhNDJkMGJhIGxlZ2FjeS10cnVuaworNTQyOTMgNWJlM2QyMTc3MzQwNWRmNjdiN2I4NzE2MTFkNjg0ZDI1YmE0ZjcyOCByZWxlYXNlMjUtbWFpbnQKKzU0Mjk0IDY2ZjI2NWFjNGVjNGY5MGI1ZWIyNjgwYmI0ZmZhNzAwZDM0MmI1NTQgcmVsZWFzZTI1LW1haW50Cis1NDI5NSAxZTEyYmVkN2EyZmU1YTQ2YjI3MzZjZjU4OGM4Yzc1Y2U4YjdhNWQ3IGxlZ2FjeS10cnVuaworNTQyOTYgMDEzNTUxMjRjZTQwNTE1YmMxODFjMmRlMTNiMmEyN2JiZWM1YmQzNyBsZWdhY3ktdHJ1bmsKKzU0Mjk3IDkxYTgwZTUyZDg2M2VkNWIyYWNlNTJlNTU1YTZlMjdlNmU3MGQ3YzcgbGVnYWN5LXRydW5rCis1NDMxNSA5MWJkNzM4YTQyMDY3YTEzYWMzY2E1M2UyMjczOTZjYjU4MWI2YzYxIGxlZ2FjeS10cnVuaworNTQzMTYgODQ0NzhkZWI0YWQ5NmE5YWNkZTk4ZTdkMDhhNWIxZDU5Y2YwZjBiMyBsZWdhY3ktdHJ1bmsKKzU0MzE4IDQ3OWRjYmQ3OWI1N2YxNWVmOGEyZTYxYTRmY2VjM2IwMDE3ZjU4OWMgbGVnYWN5LXRydW5rCis1NDMxOSBmOWEyNmFhM2QwOWM0NGMyNmQ5NTJiYTc2MTQwYjZiNzZjNjcyOGJhIGxlZ2FjeS10cnVuaworNTQzMjEgOWRiM2UzMjVkZDg4ZDRiMTc3NGFiZjYzNDRjMzFjMzVhNmJmN2ExZCBsZWdhY3ktdHJ1bmsKKzU0MzIyIDcyODZkODMyYWQyNzI3MTQ1YWY0NDM5MDViOTIwNDY4NzVjMGNhMmIgbGVnYWN5LXRydW5rCis1NDMyMyBlMmNlZWRlMjBkOGMyOTQyNGM4ODZkNjUyMDUwNmNkN2IwMDFlYTk0IGxlZ2FjeS10cnVuaworNTQzMjQgMTZkN2RjZDdhNjljNDJmNzVkN2YzMTg4ZjQwYzdjMjY2ODBhYzljMCByZWxlYXNlMjUtbWFpbnQKKzU0MzI1IGJlZDU3ZGZmM2RiODZlNjhmMGZjOTQ0N2U4NjQ5MWVhNTk1YjIxMTggbGVnYWN5LXRydW5rCis1NDMyNiA3YTMzMWM3Zjk0MDRmY2QwMDFhYzM4MWY2OWI4NTI4YzUxOGI0NmU5IGxlZ2FjeS10cnVuaworNTQzMjcgYmJhZjZjOTM1NjYzNmZhNTM3YWRlMDUyNDg2YjZmZmM5ZGRjNWE5OSBsZWdhY3ktdHJ1bmsKKzU0MzI4IDhmYTRlOTgwYjU4OTlmYjliZDIxNTNhOGVmYTMzOWE1MjAxOGNhMTkgbGVnYWN5LXRydW5rCis1NDMyOSBiODk0MzdlM2JjOGViZDdkNmI3ZThhMmEzN2M1YzAyYjgzM2IzMTc0IGxlZ2FjeS10cnVuaworNTQzMzAgYWRlOGQxYzgxMDA5M2U1ODQ0ZjY4NTI2YjUyNDg5YWFlNTUxMWIxOSByZWxlYXNlMjUtbWFpbnQKKzU0MzMxIGIxM2U2MTI4ZWZhNzJhNGUyNjY3ZTBjZTI4OTdjYmEyNmMyMDk5YWMgbGVnYWN5LXRydW5rCis1NDMzMiBiNmMxMDM4NDUwNTRmMTg4ZDJhYjUxOTFiMWZmZTkzMWJmZjk4YThhIHJlbGVhc2UyNS1tYWludAorNTQzMzMgYzZmNDE1MjkwZjgwNmNiMDU1ZmY2YTliNmJiNTkyODUzMzhhNTcxMiBsZWdhY3ktdHJ1bmsKKzU0MzM0IDdkMzBkNjJhOTAxYWE4MWYxMjQwOWNmZDZjYWM5OTczYWViYTZkZDQgcmVsZWFzZTI1LW1haW50Cis1NDMzNSA1YTNhMWIwMjQxOGFmZDBjYjlmM2ExNGNjNjUzMzI5ZTIxZjU0MjM3IGxlZ2FjeS10cnVuaworNTQzMzYgYTRlMGM3OTAxNWQ4MmZlMjk4NWE5ZGY3ODJjNWFhNThlN2ZmYjk1YyBsZWdhY3ktdHJ1bmsKKzU0MzM3IDgxZTVjNWQxOTk4ODdjOTViMDI1NzBjNGUwNjUxMWY5ZGM2ZDZmMmMgcmVsZWFzZTI1LW1haW50Cis1NDMzOCBhMzQxOWM2YzBjZmVkZjZhZmIxNzQ4NmRkMGQ2MDM2YmQwMjRiMjM1IGxlZ2FjeS10cnVuaworNTQzMzkgNTNlZTI3OTUyODdiNDRjNmM5NmFkZGQ5NWE1MzE5MjgwODBiOWU4NyBsZWdhY3ktdHJ1bmsKKzU0MzQxIDFkODBkODRjNzc5MjQ5NzViY2IzOTNlZDJkZGQwYzYzY2M4Mjk1MGUgbGVnYWN5LXRydW5rCis1NDM0MiBiOTBkOGIyZTVlZDA3MTc0YzQ4ZWY2YWM4NGE5OGIzMTdkZWYzOWJlIHJlbGVhc2UyMy1tYWludAorNTQzNDMgMGMxMjJmZTgyN2Q3OGE0NmUyMjJmNDcwZWI4NGE1ZWY0ZGQwMGU4YiBsZWdhY3ktdHJ1bmsKKzU0MzQ0IDdiMzZhNjRkY2IwOGQwMjY2MjIyN2IyMzNkOWVlNDdjZDRlYzgwZDAgbGVnYWN5LXRydW5rCis1NDM0NSBhYzcxZGI5ZmFkYzg2YjlhZTE2OWZlNjlkMjBhMDU3ZWVjNjE1MTFkIGxlZ2FjeS10cnVuaworNTQzNDYgMjhiMDQwM2Y4YzkyYjcxZGMzYzQzNDcwYzMxOGU1OGQwMGI4OGFiMSBsZWdhY3ktdHJ1bmsKKzU0MzQ3IDkzZTY3ZDM2MmE4MWEyOWE5NzlmNjY2ODk0NDQ1MDY4ZGFkZDFjMjIgbGVnYWN5LXRydW5rCis1NDM0OCBkOTZlYmIyMGQzZTFmNjEwNWM5MzVjODFkOTI0ZWNkMjk0NjU3NDkxIGxlZ2FjeS10cnVuaworNTQzNTIgNGE3OWRkMTViYTU5ZjY1ZTM5MTg0NGFmMmQ5ODhlYTYxNjI1NDczMCBsZWdhY3ktdHJ1bmsKKzU0MzU3IDQ5M2NhZTcwNWY5MTg4YzNiYjcwOWM3Nzc1ZmQ5NjNmZTFlYjRjOTggbGVnYWN5LXRydW5rCis1NDM1OCA3ODY4NmM3YTIzYTdkNTAzZTgyMjZjNDliYTY3NWZmYzUwMzk4MTVjIGxlZ2FjeS10cnVuaworNTQzNTkgOTIyYjc3MDhhODBhZmUyMDk2ZDgwODlkNGNhYjUxOWMyMGJiMDA2NSBsZWdhY3ktdHJ1bmsKKzU0MzYwIDIyNmQ5ZmNmOWQ1OWNkYTQ3N2UyOTBkMDFiZDFiMWVkYjNkYjUwNmMgbGVnYWN5LXRydW5rCis1NDM2MSBkYmE1YTMzYTBlNzk5NTI4MTQwMjI5YjUzY2NkNjRjMGU2MWZjY2U0IGxlZ2FjeS10cnVuaworNTQzNjIgMjA5ZDY4OGYzY2E1ZWVjMmUxODYxMWExZTc1MjFjYWE5Y2I3OGQ5YiBsZWdhY3ktdHJ1bmsKKzU0MzYzIGVhZmJmYThhMmIzMDBjM2FiYTkxZDVlNmE0NTJlM2MxNzdlMDc3NDMgbGVnYWN5LXRydW5rCis1NDM2NCBmMWYxODY0NjAyNTBhMmY1MzA4ZWU0NjQwMGQwNjExMzU4YWM4MzFmIGxlZ2FjeS10cnVuaworNTQzNjUgY2EzMzhkNTYzYTdhZDE2ZmY4Y2QxYzliZTgzMGEwMGZlZWIyNTQzMSBsZWdhY3ktdHJ1bmsKKzU0MzY2IGQzMTEwMTNhMTYzOGE5NGNiMzZjYTExNjA1NmMxMzAzNmU4YTdiZDcgcmVsZWFzZTI1LW1haW50Cis1NDM2NyA1YTFhMGFhOWE0YmJhZTE5NzZhNDdjYjAxNThmMzBlMTYxYTE1ZTZhIGxlZ2FjeS10cnVuaworNTQzNjggODk0NjkxY2E0ODM1M2YwYzQxYjhhNWJlYTExNDEzMmQ0ZWY4ZDAxNiBsZWdhY3ktdHJ1bmsKKzU0MzY5IDFkY2RiYzI1ZGVhN2M2NTk4ZWNmYjQzZDQ3YTkxNDdhMzg3ZTg1NjQgcmVsZWFzZTI1LW1haW50Cis1NDM3MCA1MmE2OWEwNjQ2MzdhNTk5NTM3ZTRkMzUyYWMwOWEwODc3MjRmZDRjIHJlbGVhc2UyNS1tYWludAorNTQzNzEgZGUxZDA1YzU1YjZmZGYzY2VhMjI1ZWU3ODUxOTRiZDg4M2QwMzc3YiBsZWdhY3ktdHJ1bmsKKzU0MzcyIGZmOWQ4MWU3NmE3NmY3ZDU3ZTYyZTlkMmRiYTUzNGEwOWQ3ZDMxYmEgbGVnYWN5LXRydW5rCis1NDM3MyBiYzJhNWE1NGI1Y2FmM2Y0ZTFmMGY2ZGFhNjNlMDYxODQzMjk1ZTIzIGxlZ2FjeS10cnVuaworNTQzNzQgYjUwMDc2MWI0YjYyNmRjMWZiOTBjMzA4ZTA4Zjk3YWFhNTg2NDIyYSByZWxlYXNlMjUtbWFpbnQKKzU0Mzc1IDU2YjJiOTMzYmFhZTJjNDVkZmU1MjZmZTExYzYwYzUzN2ZiODdjMjIgcmVsZWFzZTI1LW1haW50Cis1NDM3NiBjMzAxYjViY2RmZGM1MTBkZmI5YThiMzU0NTJjODgwMjBhNWZlNjA5IGxlZ2FjeS10cnVuaworNTQzNzcgOTBlNTdlMmM3YTAzMzNlYjc4ZGRjMmM1MzY0NGI1YTc4MTQ4ZDY1ZCByZWxlYXNlMjUtbWFpbnQKKzU0Mzc4IDI5MDBlYzA0MDMxZDk0YzNhZjhkNmE4ODk5M2RmYmU2MmMxOTBhMzggbGVnYWN5LXRydW5rCis1NDM3OSBmYzVlMDQ1Y2VhZTQzOGQyMzg5MGQzZjY1NjlkZTI2MGI1NjBhYjg0IHJlbGVhc2UyNS1tYWludAorNTQzODMgNTE0YWVmZjYzYzlmZmI1NTExMDA5OTdkYjRiYmE2ZWYzZDBhZjc4YiByZWxlYXNlMjUtbWFpbnQKKzU0Mzg2IDYyODA1NTJjMTI5NzIzZTM3ZDdiMzg4YjRiNTgyNjYxYTE4YmVmM2MgbGVnYWN5LXRydW5rCis1NDM4NyA5OTQzYWVhNGYyZDFkZjIyYzdhNjBjZTMzYzlhYjlkY2RhNTM2NGZmIHJlbGVhc2UyNS1tYWludAorNTQzODkgYmJjZTJkOGZmNzNkNTRlMGY5Nzc5MGEyNmNlMzhhYWU0ZGE0NDI0OCBsZWdhY3ktdHJ1bmsKKzU0MzkwIDRlYjRjZmI2MjU0ZWJiN2I4ZjNmMGFjMjQ5YmQxM2Y3YTVkZDY0ZTggbGVnYWN5LXRydW5rCis1NDM5MSBkMTU1YWU2MzY3Mjg0OGVhYTE2YmUwNmRjNTcwMTNhNTI2YzZiN2RjIGxlZ2FjeS10cnVuaworNTQzOTIgMGE2YzUxMzVkMmRlZjQ5OGU4Mjk1ODcxMTM0OGMwOGNlYmU0MTc5ZiBsZWdhY3ktdHJ1bmsKKzU0MzkzIGZjNTI3ZWI5OGRjZTY4NTVjYTkzOTdmNjgxNGQzMTA1M2MyZjY0Y2QgcmVsZWFzZTI1LW1haW50Cis1NDM5NCAzNzZiNDIzNWRkNDQ0NDgxYjc4NjRmMzVkODY2YTJmYjYzNjNkYTVkIGxlZ2FjeS10cnVuaworNTQzOTUgNGFjYjQ1YzI5N2VkMWZiNmI4ZTI5ZDUzNmEwYTM1MDlhNzFjZjM2YyByZWxlYXNlMjUtbWFpbnQKKzU0Mzk2IDhkOTdkZWU2ZGY2NDQ0NDE2ZTNjYzU2ZjQ0NmZhMGUyYmY1YTFjZmMgcmVsZWFzZTI1LW1haW50Cis1NDM5NyA0MjE3ZjM4NTBmMGI4YTViNmU3MzYwMDU5YzYwZjdlMzZlNDYyNTZiIGxlZ2FjeS10cnVuaworNTQzOTggNTJjMzM5YzBjYjM4YmM2OWQ2NzgzZTVkYWVlNmE0OTY4ZjcwMWIwOCByZWxlYXNlMjUtbWFpbnQKKzU0NDAwIGEzNzdmOTQyZWUwYWRjMTg5ODVmOTRiOWU0ZWM3YjNlMzZmODIwYTggcDN5aworNTQ0MDEgYTMxMmMyNzZhNWU3OWJjZmIzNzBiNzQ5OTk5ODMyMjNiZGIzNzAyMSBwM3lrCis1NDQwNCBiNDNhNTJmNzE2OTZhMDY1M2IyOTUyNjc5OWJjN2FhN2MwYzZkZWYwIGxlZ2FjeS10cnVuaworNTQ0MDUgZDgzNTgwOWY0NWVjNDQ5MTRmNGJjZDEwODE5ZmY2ZWRiYzcxNjg1NiByZWxlYXNlMjUtbWFpbnQKKzU0NDA2IDAxOTUxZjZiODE5ZDEzZWFiMjNiNjdlNWFhMTQ2MzRkNmNmODBlMzQgbGVnYWN5LXRydW5rCis1NDQwNyA5NDIwNTk4NmFkNTMwOGE5NDNkZjE3ODNhNjIxMDNhN2NhNzM1M2Y0IGxlZ2FjeS10cnVuaworNTQ0MDggMjY5MGRlNGJlYWExM2RhNGFjZDk2ZjEwY2YxMjI3NzE2YWE5NGIyNCBsZWdhY3ktdHJ1bmsKKzU0NDA5IDY0NTA3MGI4Mzk0MjZiZjFmOTNiYzc1ODgyMGI1MjRmZDdmZDg5ZmIgbGVnYWN5LXRydW5rCis1NDQxMCBhNjk3OWFjOTUzM2ZhZTY2OTg3NmFjMmFkOWQxNDVlMTA3MzhhMTRlIHJlbGVhc2UyNS1tYWludAorNTQ0MTIgYzU3Y2Q1NDY2MTJkZDgzZTg3ZGVjMzE3YWM0NjgwOTk2YjY1OWE3YyBsZWdhY3ktdHJ1bmsKKzU0NDEzIDA2Y2Q2MGIwYmQxNjRjNzNlMjJhNWQ0OTM1MjllNzVmNDdkZWU2OTggbGVnYWN5LXRydW5rCis1NDQxNCBkMWJhODEzNDUyOGUyOGMwYmFiM2M0ZTQ5MzYzNWYzZmIwMjQyMjMxIGxlZ2FjeS10cnVuaworNTQ0MTUgNzJkYTQ4ZDk2MjU3ZmMzMGIwMzJhMmI0ZjVmOTE0NWJjMjExZDU4MCBsZWdhY3ktdHJ1bmsKKzU0NDE3IDhiYjU3MGFlNGM0NWM3MmU4ZWMyMmY5OWM2ODhlNzg3NmVlZTY0NjMgbGVnYWN5LXRydW5rCis1NDQxOCA3NTQ5YzRiM2FhMzZhMDFkMzhlZDA1NWZmZmVlYzUxM2JmMGM3ZTlhIGxlZ2FjeS10cnVuaworNTQ0MTkgZjNkNDI3NGQwNjNkMzBiY2M4MDk2MDIwNDUxMzM3ZDUyYzgxOGVmMCBsZWdhY3ktdHJ1bmsKKzU0NDIxIGViZTUyZGJjMzU1M2Y3ZWU2MDg5ZGMzY2NlYTgxYTU5ZWI3ZGYyNTkgbGVnYWN5LXRydW5rCis1NDQyMiA5MTI2ODY3OGQ1N2Y5NmQ1MTAwYzI2NDE1MTVkYmU5ZTdiZDZiZTQ0IHJlbGVhc2UyNS1tYWludAorNTQ0MjMgMTM3M2E4MzA4M2JiMjEzYTlmY2MzNmJhMTgxOGMwMTY2ZWZjOGUwNiBsZWdhY3ktdHJ1bmsKKzU0NDI0IGEyYWUyNGZmYTYwYTkwMzU1ODUxOGNiMGVkMjQ0MWViZDI5ZGNjOTEgcDN5aworNTQ0MjUgM2M3M2E4YTIwODM5NWZjOGY4OWE1MWEwOWY5NzI4Y2NhNmQ4Mzc4ZCBwM3lrCis1NDQyNiBlM2JhNjBkZTNkODQyZTFkNzRjMjEwNGIyNzYzZTY2ODM2OTk2ZjA2IGxlZ2FjeS10cnVuaworNTQ0MjcgMzQzYmUzOTZiYmQ3YzYxMjljNDYxMmY1OTdlNmMyNjhlZGVmMTVkNyByZWxlYXNlMjUtbWFpbnQKKzU0NDI4IDE5ZjdmZjQ0MzcxOGY3YTlkYTFhZWE5ZWRiZjAwYTEzNWY4NjA4ODMgcDN5aworNTQ0MzAgNWUyNGY2MzZhYzc1NzZlOGIzNWZkZDhkODc5M2JiMTU0YTFlZDA4MyBwM3lrCis1NDQzMiAwNzEwMTZjNzI5MzkyZTU1M2NhM2M5Zjg5ZDI0OGI5MzgwMDIxZWIwIGxlZ2FjeS10cnVuaworNTQ0MzMgMWY4NDM4OTBhNGU2MWI0NzE1ZDJjM2ExNGE1ZWMyYjE1ZGRjMDFlNCBwM3lrCis1NDQzNCBiMWExOGM3ZWQ1Y2E2NzlhZWE4OGYwNzQ1MTMxOGVjN2Q2NmFiYzU4IHAzeWsKKzU0NDM1IDE2ZmU5MzZmODliMTlhNTUxMTIzNDBlYzVkNGE4OGQwNzdiNzhlODAgcDN5aworNTQ0MzcgOGQ3OTlhOTljZjY4ZjRkNjhlNzNhNjNmZDE1YjlhMTYxYzE4YTE4NCBwM3lrCis1NDQzOCAwMzdmZTZhNDQ0ZDJmZTk4Mjc0ZWJhYWNlZTRjNzFkOTA1OWFmZDdkIHAzeWsKKzU0NDM5IDhkMDZjMTEyMWIzMzFhNTNmMjkyNjAzMGY0MDA2MGY5ZTc5Mjg1MzEgbGVnYWN5LXRydW5rCis1NDQ0MCA2YzhjMzNhNDNhMTU1NWI4MWVjZWM5MTEwZjVlZGYwZDI0OTU5MGJiIHAzeWsKKzU0NDQxIDlmMDdkNDEwYzU1NTQ2OTY3NDI1OWUyNmE3OGU0NTIxZGI1NTA3YWMgbGVnYWN5LXRydW5rCis1NDQ1MSBjN2MyNzU0ZmYyZDZkZGI5YTkwZjE4Mjc3MGU3YTNiOWIyMmVmYWVhIHAzeWsKKzU0NDUyIGY5OTczYTZlMWFmZTAxZTBmYjNiYzk3ZDdhNDBmYTAxZjdkMTc5ZWYgcDN5aworNTQ0NTYgOGQyOTc4MTQyNTkzMzg5ZmVhNDY3NjlhOThjY2I1Nzk2MGRiZjc5YSBsZWdhY3ktdHJ1bmsKKzU0NDU3IDIzNmFmMjE2MWViNjc4YWQ0NGRlNDFiZDFjNTlmMzljYzBiYzlhNTkgbGVnYWN5LXRydW5rCis1NDQ1OCA2MDE4MTk0YWZiYmRlMTNlMWZhM2QyNDg4OGQ3YzA0NzgxODFhZjY5IGxlZ2FjeS10cnVuaworNTQ0NTkgYzk5N2U5MDdjNGM2NzA2MGQ4MzgxYTc2YTkxMTUzNWRjZWU1N2RiYSBsZWdhY3ktdHJ1bmsKKzU0NDYwIDMwN2U1ZDQxNjRmM2EzYmIxMjE1MGI3MDdiYWYxOThjNmZkNjIyYzAgbGVnYWN5LXRydW5rCis1NDQ2MSA1YTc3MWI0YThiNzhjYzQzZDc1NjIwZjU5N2QyMmI3YTY3OTJjNDkyIGxlZ2FjeS10cnVuaworNTQ0NjIgNDU2NjljNDE0ZGI0NTU2NzU1MjQ2ZTk3MTBiYmVjNTU1NGY3MzMzZCBsZWdhY3ktdHJ1bmsKKzU0NDYzIGI4YjE3YTJmYWNlNWFhZjNjZDdmNzM5MGNiN2MzOGJlYmZkZmFmOWMgbGVnYWN5LXRydW5rCis1NDQ2NCBiNDNhMmRhODMyYTcwZDdhODljMmZiOWNhYTYzMTZjZjQ2ZjVkMDcyIHJlbGVhc2UyNS1tYWludAorNTQ0NjUgZWM2ZmIwOTEwMzliNDUzYzBjMGU5MjFmZWE0NmVjN2YxZjEwYmRjZCBsZWdhY3ktdHJ1bmsKKzU0NDY2IDUwYTZiMzNjOWQyYzVjMDcxMzFhMDljMWY4NzU3Y2E2NjZlOWIxMjMgcmVsZWFzZTI1LW1haW50Cis1NDQ2OCA5ZDBjMDU0MTE3MzQ4MzE0MDA5ZTU4OTgxNTQwMjFlODQ5NGU4M2JhIGxlZ2FjeS10cnVuaworNTQ0NjkgN2YyOWJlMWNlZmJhMTI1NjM0MDgxYzMxMGJkZTJhMDgzOTc0ZTU2YSBwM3lrCis1NDQ3MCBlMTJjNTA0ZTQ2NmI1YjZlOWYyYzg2MGJjNzA3MjBiYmUzYmI3NmVmIHAzeWsKKzU0NDcyIGYyOWYxYThiNzg2OTJkMWNmZjE5MzZlMGEwNDIwMjBhNjg1NTM4YmMgcDN5aworNTQ0NzggODgxMjcxODY2OWUxOTc5MjIxM2NlYTY4NjhmMzM0YzQ0ZTAzN2JhOSBwM3lrCis1NDQ3OSBiNzUyYTFlMDk0NGI0MzYwOGViMzgwMTk0ZWQ2ZmM2NDg2YzA2ZTViIGxlZ2FjeS10cnVuaworNTQ0ODAgOWNmMjJjNWVlZTNkN2ZhMDAwMTAyMjM4MGFmN2YzOWNjYTAxODYzYiBsZWdhY3ktdHJ1bmsKKzU0NDgxIDA4ZDE2MTgzYTljMTUwNTIyYWU2YWU3YzBmMTZhNWJjZjY1NDdmYjggcmVsZWFzZTI1LW1haW50Cis1NDQ4MiAxZGM0YzRjZTJkYjlmZjAyMGYyYjkyMDM5OWY0Njg3OGM4YWIxMjA0IGxlZ2FjeS10cnVuaworNTQ0ODMgZDE2YWJlNWM5MmRlYmY1NTUxNmU5MGFlNGY1OTNjYWY1OGEwYzk3ZiBsZWdhY3ktdHJ1bmsKKzU0NDg0IDg1MmM5ODk2ZmU5MjM2NTFhYWU4ZmQ1NjAwNDdmN2ZiYzEwYTM2MDMgcmVsZWFzZTI1LW1haW50Cis1NDQ4NSA0NTllMzZiMmVhNDUxZmNkZTIyMGZjMGZhMjYzYjZkNWZjODVlZDYxIGxlZ2FjeS10cnVuaworNTQ0ODYgNWI3MTE2MzJjYWUxMzJhYjhmZGMzZDVlNWI1MmJlNGJkZmE5Nzc3NyByZWxlYXNlMjUtbWFpbnQKKzU0NDg3IGNiNmViMTMyYWNjZjI2Njg5NGYwYjFkZjJhYmQ4ZTdjZWJhNjJjZDEgbGVnYWN5LXRydW5rCis1NDQ4OCA3MzkzYzcxMGQ0YmJiZWRkOWEyMDdlMmU2OTJlMTk0Mjc0MTBlNGNkIHJlbGVhc2UyNS1tYWludAorNTQ0ODkgZTU1YmZiMWFjMWU3Y2NhZGVhMDYzNmFkODkyOTc2YzFkNDYxNGNkYiBsZWdhY3ktdHJ1bmsKKzU0NDkwIDViZDk2NjM2MjBiYzk3OGExMjc5NzJhN2NlN2FiYzZmMTY0N2JiZGIgbGVnYWN5LXRydW5rCis1NDQ5MSBiMWU4YmZkZmU0Yjc5NWEwMmRlZTZjNzg1ZDE0ZDk0MDE0ZmM5ZWMwIGxlZ2FjeS10cnVuaworNTQ0OTIgY2NjNDQ3YTZkOTE2NDhmNzExNjIxMTVmNDVkMGFkNzc5OWFkZWNiMSBsZWdhY3ktdHJ1bmsKKzU0NDkzIGQyNWY3NzU3NDg2NjMxZTg0NGIxYTRmNTBlOTcyZTAxNGE5YjM5YTAgcDN5aworNTQ0OTUgMTVhN2UwYjdlNDI1NmI1YzkwZjhjMjI1OGFkZWQ2OWZjZGE1NzAxMyBsZWdhY3ktdHJ1bmsKKzU0NDk2IGY4ODlmNjVhNDg2MWJlYjVmYzAxOTE3Y2MyZDVhYTk1NjUzZDU0YTAgcmVsZWFzZTI1LW1haW50Cis1NDQ5NyA0MDhkZmM3ZTMwMTg0YzIxNWEwNjM4NGExZDU5ZjgxYzYzYzRiNDM1IHJlbGVhc2UyNS1tYWludAorNTQ1MDIgZDQyOGUyMWQ2ZWFmNTgwNjRlZjRjYWFmNzIzZDZmNzVjNjc5NmYxZiBwM3lrCis1NDUxMCBiZmM0ZTgwNDYxMDIzOGI4YjAwYzM5MmUzZGFjYjI3MzYzMTNmMmIzIHAzeWsKKzU0NTI0IGFjZjlhNTVjODg1ZDc5MTI3NjllNjljYzY4MmQ5MjMxMmJhOGVkMmIgbGVnYWN5LXRydW5rCis1NDUyNSA1MmUyZmNkNTNhZDMzOTY2M2VlYmRhZmZjYjEzOWJiNTgwM2YxODRjIHJlbGVhc2UyNS1tYWludAorNTQ1MzIgMTc1N2Y4MGI1ZmRiYWU0NzlkZGY2MDQzYjcwOTkzOTc1YjZiZjUyMyByZWxlYXNlMjUtbWFpbnQKKzU0NTMzIGFmYjFjNmNiMmM4ODQyMjkxNGU2OGFmYTAxYmQwZTg1Y2NkOWY5NGYgbGVnYWN5LXRydW5rCis1NDUzNyBmZTE4NDJiNDhiNjZmZmVjOGE2OTg2NDhmYWFlNzJmYTEwMjBmNDBhIHJlbGVhc2UyNS1tYWludAorNTQ1MzggNDJlYjViYjc3NjYxNTdhZjM1MGJhNTgwMjNhOGM0ZGZlOGYyNmQ4NyBsZWdhY3ktdHJ1bmsKKzU0NTM5IDhkZWJjZTJjNGZiMWI0ZTg3Mjk0YjVjNmEzNjU5MjRlNjY4ZWUzNjkgbGVnYWN5LXRydW5rCis1NDU0MCA1MWZiZjJhNzU1NDhiMWE2NDAwODc4MDc2YTA3NWZjMDE1NGU0MWU4IGxlZ2FjeS10cnVuaworNTQ1NDEgOGYxYzllOGVmYmJiZmQxOWY4ZjI5YmQxZDU1M2RkYzZiMzlmNDM4OCBsZWdhY3ktdHJ1bmsKKzU0NTQyIGQ4NzQ4NjczZmQ5ZjlhNWVhYTZiN2U3OTFlYmM2MTBlNWI1Yjc5YTEgcmVsZWFzZTI1LW1haW50Cis1NDU0MyAwMjU3NGY0ODViMTVjM2ViZDlmYzFkNjJiMGU5OTliYzZmNTlmYmZmIGxlZ2FjeS10cnVuaworNTQ1NDQgMGVhNTU5NWQ3NWRhZDhhM2EzMzUxYTEyMGNjOTVmMTI4ZTA5NzUxMyByZWxlYXNlMjUtbWFpbnQKKzU0NTQ1IDEyYzcwNTU4MDc0ZTdjZDBlYjMyOTczNWU0MWIxNWU3MmY1ZDA4NWYgbGVnYWN5LXRydW5rCis1NDU0NiBhNzNhYTBiODIxY2E1ODg0Y2IzZjA2MjVlMjQ4ZWZkMmNiOGNhYTM5IGxlZ2FjeS10cnVuaworNTQ1NDcgM2I1NmU3ZTg5NDcwMmUwZWMwZGMwMjVlMjVhNTQxNzljZTkzZWUyYyBsZWdhY3ktdHJ1bmsKKzU0NTUzIDc0ZDI5YjYzNTQxNmI4OWFiYzUwY2FjYmQwYTUwMmFiNzNhMDM3MmEgbGVnYWN5LXRydW5rCis1NDU1NCAzZmY2ZDNmYTgxMjI5YjkwZTYyYjM5ZmRjNjE4YzIxMjg5YTBlY2YxIHJlbGVhc2UyNS1tYWludAorNTQ1NTUgMTg5OTViZDhiYzhiM2FhNmI5NThjOGViM2RhODE5Y2UyNjYxZjNiZiBsZWdhY3ktdHJ1bmsKKzU0NTU2IDFjM2UwZDJjMzZkYzk3NjIzZjlhOGNjMWY1M2ZjZTdjY2NlMDY4OTQgbGVnYWN5LXRydW5rCis1NDU1NyBlZjcwY2Q0ZGJhNTBiNjU3NGFkMWE1YjcxMWRlMTU1ZWM0YTU1OTcyIHAzeWsKKzU0NTU5IDM4YTNkYTAyNmQ1ZTU3NDNkZTY3YTVlZDhiMzU5MjM0M2RjMDUwNTUgbGVnYWN5LXRydW5rCis1NDU2MCBlOTM4ZTllZjQzNGI4MmU2MWY4Yjg1Y2UwMzIyM2QyNzBhYjkwNDg0IHJlbGVhc2UyNS1tYWludAorNTQ1NjUgMzJmNzJlNTc2MThjYzE1YjJlZjYxMmNkNDhiODZjMWY2MzNmMjg4YiBsZWdhY3ktdHJ1bmsKKzU0NTY2IDhmYzYzOTZmMDc2YTVlY2JiMjFhNTNjNThmOWM4OTU3NmRhM2ZiZDMgbGVnYWN5LXRydW5rCis1NDU2NyA2NTBlZTE3OWYzY2VjMjBhN2JhZTZkZmYyMjQ0YTM4YTNhNWEyMzFiIGxlZ2FjeS10cnVuaworNTQ1NjggODI1OGYyNWQ0M2Q3OTY0OTAzNGU1ZjM2ZjVkNzFiYWJkYzEzOTBmZCBsZWdhY3ktdHJ1bmsKKzU0NTcwIDNjMDkxM2I2NWU4ZDZkNTVlN2Q2MTRmOWQ4ZDM5OWNkOTZhZGQ2YWMgbGVnYWN5LXRydW5rCis1NDU3MiBlYjI1YzhlMmI0YTFlYmUyNDZhMmU2NGFiZjYyM2IyOTRmMmYxMTJjIGxlZ2FjeS10cnVuaworNTQ1NzMgYTA3Zjk4Y2ZmYmRmZWY5NTEzNjI2NWUxZDY0ZWRlYWRiOGRhOWRkOSBsZWdhY3ktdHJ1bmsKKzU0NTgwIDJiZTEzMzAxM2I3MWNhYjI4M2VmNDA5M2Q3N2NhZDU0ZTg4MWYzNzIgbGVnYWN5LXRydW5rCis1NDU4MSA4YmU3NDRkNWM1NjczODkyMzU1YmNjZDBmNGQ4NDZlNGZhMjBmZDQwIGxlZ2FjeS10cnVuaworNTQ1ODIgMDNkNWRiODMyNWY0MTFhNmI3ODNhMGE2ZDk5YjNkZTc2ZTIzMjRjYiBsZWdhY3ktdHJ1bmsKKzU0NTgzIGEzMWIwYjE4Y2FjNjJkOGZlMzczNWY0NWMyMTdjMDc0YmNhZWFmYWIgcDN5aworNTQ1ODUgNjUzMjZhMzgxNWY3NjBhZTg4NzQxOTk5ZTQ3MGE4MmZkMmZmYmQzNCBsZWdhY3ktdHJ1bmsKKzU0NTg2IGU0ODkzZWU5YTg4NTc5NjQwMDU2ZjQwMjE0YzAxYWJhMWVjNmYwN2QgbGVnYWN5LXRydW5rCis1NDU4NyA1MDk1YWZlZTA4MGYxMDA5YTU4MjljOGFkNzQwN2U3M2FkYzI2Njg4IHAzeWsKKzU0NTg4IDgzNGRhNTJlYjJhNGViZTZmODBlMDU5ZDExM2FjZjFiMDQ4ZDMyOGEgcDN5aworNTQ1OTIgNDVhMjc2MWM5YjE2Y2UzYjNlNDdiM2U4ZDliZjhlOTJkMGEyZjI5ZSBwM3lrCis1NDU5NCBkMTQ0ZjgxNTc0YzA4NWRlMTViODI5MWMwYjAwYmY1YmNjZGFiNzIyIGxlZ2FjeS10cnVuaworNTQ1OTUgZDQxNmQ5NzE3MTgxNWJhNjI4ZTQ1NzExNWFhMjQzZDFmZDZiYjg1NSBhbWstbWFpbGJveAorNTQ1OTYgM2U2ZDAzMjE3YTAyYjA1OTlmNjdlM2EzOTY4YzRkNGNmNDM4MWNiOSBhbWstbWFpbGJveAorNTQ1OTcgNDZhZDIxOTM5NjhlZmE3YTI4ZmNjNThkMDZmYzczNjAwNDMzZGQ4NyBhbWstbWFpbGJveAorNTQ1OTggNzMwNTQ1ZjI0MDg2ZGQ5ODE5Mzc2NThmMWNkMTcwMGY3MmVhMDgxZCBhbWstbWFpbGJveAorNTQ1OTkgMmQyOTY2NTY3OWU2NzQ2NjAzNDY1MjQ1MzZhM2I0ZWQyMDUxY2IzZCBsZWdhY3ktdHJ1bmsKKzU0NjAwIGVmZGNlOGQ4ZGI5OTAwMjhhNDEyZGM3NzE4ZTg0NTMwYWJmMTE4YWIgcDN5aworNTQ2MDEgZjlkZmJiNWQzNWMyZjMyZTYyMGY0ZDQyOGE3YTFjZjVjYTY4MGM4MiBwM3lrCis1NDYwMiBiODk3Yjc3YTAwNGY3YTU4ZDg2NzIwZTkyNTIzMjE5YWVmMDNmNDUzIHAzeWsKKzU0NjAzIDM5ZTQzODZkNzFmNjUyNWFiNjU0MDc4MzczYTQ1NjdmYTI5ODBlZGYgbGVnYWN5LXRydW5rCis1NDYwNCBmNTdlOGUzMjU0NzVlYzUwNjYzOGIwNDY1MzBlOTM1NDk1ZGRjY2RmIGxlZ2FjeS10cnVuaworNTQ2MDUgNWE4Y2E5ZGQ4OWRiMzQ3Y2ZlMjg3ZmU1ZDkzZTA2ZjZmNzIxYTM2ZSBsZWdhY3ktdHJ1bmsKKzU0NjA2IGUzMzQ5ZDQxMjY4MWVlNmYwZjQxODJiMWVmZWNkMDViY2Q5NzJlZWQgbGVnYWN5LXRydW5rCis1NDYwNyBmYTIxODFiZDI3MDQ5YmQ4ZmEzYzkxMjQyNDRmOWRiYzhjNmJlYzU1IHJlbGVhc2UyNS1tYWludAorNTQ2MDggM2ZkOGYwNjU3N2ZmZjlhNTEwNzIwYTk4Y2UyYzI3NjA2NWEwMjMzMSBsZWdhY3ktdHJ1bmsKKzU0NjA5IDUxOWU3MmQ2MzBkMjA4NzM4OTZlNmU0ZDY3YTFhODcxNzBmNTA5NWYgcDN5aworNTQ2MTAgODhjMmFjNTkwNDQxYzJlNTNjYzYwNjc5NGNmNDgxMjcwNDJmMzkwZCBwM3lrCis1NDYxMyBjY2RjNWIzYjliMTE3YWM5ZGFiNGVkYTA4OWRmNGRhM2E3NmNjMTJjIGxlZ2FjeS10cnVuaworNTQ2MTQgMzc4YjJmNDdlODA4ZjcxMzExYTA2YWUxNGRmY2RiNGQ2OGY2OTFjYSBsZWdhY3ktdHJ1bmsKKzU0NjE1IDZmOWU2OTNkNzZhMTg0ODQ4YTRmYzJkOTY4NDQyZWJlNDg1YWZhYWYgbGVnYWN5LXRydW5rCis1NDYxNyA4ZTNjN2E1YWNiY2RmMDAxNDdmMjNiYTIwYjMyNGVhNjFiNzk1NzMwIGxlZ2FjeS10cnVuaworNTQ2MTggODNlMWIwNjExNzE0NmM2ZGY4N2IxYTBhMTFmM2E4NDMxYTlhNTUzYyBsZWdhY3ktdHJ1bmsKKzU0NjE5IDRlNjBlM2E2MGY1MDRjYjNjMWJkMzhiNjFkMDhiZjUwMTU3ZGE3MWIgbGVnYWN5LXRydW5rCis1NDYyMCBhNTA3NWE1MjczZGY3OGQ0YjE5Nzg0NDcyODFmMmVhY2U0MGM1ZDYyIGxlZ2FjeS10cnVuaworNTQ2MjEgY2RiMjU3OThjZjBiYTA1YTRkZDViYThlZjIwOWM3ZmIyNGJhOTJjNCBhbWstbWFpbGJveAorNTQ2MjIgNTg0MjdlMWU1MWJkYzYwNjg5ZmQ0OGQ3YTgxYjkzYzhiNWRlYmFjMSByZWxlYXNlMjUtbWFpbnQKKzU0NjIzIGRjNmU5Zjc5Y2M0YWZiZmM2ODA0YTZjYzA4ZDhlZDc5NjIwMDYxYmUgbGVnYWN5LXRydW5rCis1NDYyNCA1MDI2MzIzZDk5Mjg4MzM0NjM1ODk5MTU0N2RlZmJhNjY2NDI5ZGEzIGxlZ2FjeS10cnVuaworNTQ2MjUgNTVlY2MzYTQ1Njg2NjM4NzJhNzk1MzdhNmZiNWQ5ZDc3YzNhZDIxNSBsZWdhY3ktdHJ1bmsKKzU0NjI5IGMxZjY3ZTFlZWU1OGI2MTkzMTI3OTA2MTUzZThmYzk5ZjEyNDNlZTggbGVnYWN5LXRydW5rCis1NDYzMCAzOGE4NjExODFmZGQ1OGMzNWQ5ZTM4NDMxZjk0MGE5ZGMwN2QyM2JmIGxlZ2FjeS10cnVuaworNTQ2MzEgNDFkYjNmMzBhM2Y5ZjBkMWMxMWM2MTBkMmYxYWE1OGM3YjQxNjVlYyBsZWdhY3ktdHJ1bmsKKzU0NjMyIGRiOWVhZGMwNzgyNjQyMzYxYmY0NjM3ODNhOTY2OTdjNWNkMDVmMGYgbGVnYWN5LXRydW5rCis1NDYzMyBmODY1NTdlNTAzZjNhN2QxM2VhZmNhZGYwMDY2M2MxZjE1NThjNGViIGxlZ2FjeS10cnVuaworNTQ2MzQgOTM0Nzg3NDQxMDM4NzlhODViNDMxYjIzOTMyNDVhNjYyOTBhNjczMiBsZWdhY3ktdHJ1bmsKKzU0NjM1IGMyYmYzZDY0NmVmZmEyYjMyOTAwZjUzM2E5ZDc5YzQzOGFkYjY4YTEgcmVsZWFzZTI1LW1haW50Cis1NDYzNiAyY2U4ZTgwNTM5Y2Y3OTE2M2JkYWEwNjU1YTRkNWUwZGJjYjQ5NDU4IHJlbGVhc2UyNS1tYWludAorNTQ2MzcgZmM3ZmJjZjJhZTUxNzdhZmRmMjU3Y2RhNjNhZDQyODIyYThlZjhkMSBsZWdhY3ktdHJ1bmsKKzU0NjQxIGYyMTliYjdlNzRjOTIxNzJhOGE5YjM0MGJlNWU1NjdkMWZmZTI4OTUgcmVsZWFzZTI1LW1haW50Cis1NDY0NCA3ZGVlN2Y3ZDI5ZjA4YzllODAzN2JhMzBlMjcwZjRiZTRlZGI0OGEyIGxlZ2FjeS10cnVuaworNTQ2NDUgMjIxMTk0MjQ5ZmE4NmUzYzVkMTMxNmIxYjY5ODNlZTRkMzRmNGEyNCByZWxlYXNlMjUtbWFpbnQKKzU0NjQ2IGI1Yjc1MGNmODVjMjA5NTZlNmJlNmZjNzI1M2I4YTIwNzJmZjZmMjkgbGVnYWN5LXRydW5rCis1NDY0NyA2OTZhNjY2ZGZlNjE0MTY5ZTY1N2JmNDgwMjVlYTI5ZTk4Yzg4MDIxIGxlZ2FjeS10cnVuaworNTQ2NDkgZWE2ZjJjNWQyNzQ5MmYyYzU1YjU5NzczMDgyNTFhMTk2NmJjNGFmMyBsZWdhY3ktdHJ1bmsKKzU0NjUwIGU5NWQyYmNmZWI0NjMxZTYzMmEwM2Y0NDA1MDlkZWNlZmFmZTNhY2MgbGVnYWN5LXRydW5rCis1NDY1MSBhY2RiNGYzYzNkNjMyMmEzYTk3YjkwMTBhMmQzYzU3NTk5ODQ4MGM4IGxlZ2FjeS10cnVuaworNTQ2NTIgMWE1ZGEwNzhjNDM1ZjJmNzU1ODAwNWJkMDNmZTJjMzc5ODIyY2I4NiBsZWdhY3ktdHJ1bmsKKzU0NjUzIDkwYzRjM2YwNDIwNTZhZmJlZGJlNDQ2MGE5ZGM5MGU0MmM5Y2ZkNzYgbGVnYWN5LXRydW5rCis1NDY1NCAzNWJkYzYxYWM4ZWFkZTlmMmJmMDRlYjk0OTI1MzYyZTdhNzEyYzAxIGxlZ2FjeS10cnVuaworNTQ2NTUgNDdkMDVmMWFlYmRkZmJkYzJlMDBkYzg1ZTUyY2NkNTJhNzAxZjNiMSBsZWdhY3ktdHJ1bmsKKzU0NjU3IDgxZTU4ZjAxMDFkYjdhMTIxNGU5MTA1NTA3MmY4YWMyZmQxMDRiZjEgcmVsZWFzZTI1LW1haW50Cis1NDY1OCBmNzY0YTc1NTIxNjJlZmMzMDkzOGI3ZWQ4OGU1MWFjZGMzMWJjYTdhIGxlZ2FjeS10cnVuaworNTQ2NjAgMTJmZjIwOTQ4YTAyMjU3MzdjNTI0ZGRhNzIyNWZhYzM3MWIzNTc4MSBhbWstbWFpbGJveAorNTQ2NjEgNjc2MGYzOGU5ZWQ2NzYxYmRmNjhhYTkxMDA0ODhkYzBlY2E5NjEzMiBhbWstbWFpbGJveAorNTQ2NjIgNmEzZGQxYzRhN2RmMDE0MTU1NDFhZDkzYmNhOTZmNzNhYzI2YzMwZSByZWxlYXNlMjUtbWFpbnQKKzU0NjYzIDRhMDM4NjBhZTA4YjU3MDdkZWY4YzE2OGY3MWVmOWFlYTY5NjFkNDIgbGVnYWN5LXRydW5rCis1NDY2NCBlZjVkM2U1MzkzODQ3MjIwNWNlZWZlNDBhYmJjMWM0MDRhYzM1YmI3IGxlZ2FjeS10cnVuaworNTQ2NjUgOTliZjE0NTU1OGQzNWIyNTU5YzhlNzcyZTcxYjMyNzUxOTExNGMwMSByZWxlYXNlMjUtbWFpbnQKKzU0NjY2IDQ4ZDhkNWQzMTdhZWUzYWEyY2M2NjQ4ZWNkZTYxZDQwNjk1YTcxNDMgbGVnYWN5LXRydW5rCis1NDY2NyAzNDNlZWYzNDI3NzczYmUwOTAyMzIwZjNkYjkxMzU2ZWI1MWYyNWU4IHJlbGVhc2UyNS1tYWludAorNTQ2NjggZTY4NWJmYTZiNGVhYjg3NTAyNGQ0MjE3NWJkNTQwODNmOTBhNjZkMSBsZWdhY3ktdHJ1bmsKKzU0NjY5IGY3MWZlZWM3ZDU0Nzg5Zjk0YTNlZTk5ZGY5ZTM3OWZkNTQ2ZjU1NTggbGVnYWN5LXRydW5rCis1NDY3MCA4OTBiYjkwMDBjZTU1NTMzZmE2ZjU1NzMzZmI2MGFhZTJhODEwYjBiIHJlbGVhc2UyNS1tYWludAorNTQ2NzEgMjJhMTY3YzQ2NzhjMmE4NWVmN2JhNmRkOTg0OGM0NzhhN2VjM2QwMyBsZWdhY3ktdHJ1bmsKKzU0NjcyIDg1MTEyZGQ1MDA1OTVlZTIzM2RmNTMzNmNhNjIxOWJiYTQ2OTFkNjIgbGVnYWN5LXRydW5rCis1NDY3MyBjZmFjNjRhMDJhM2Q4M2UxNjM0NDRhMWRjY2UyNzM2M2EwOWU0NmVhIGxlZ2FjeS10cnVuaworNTQ2NzQgYzczODE4MDQ0NDdiYzNkNDE0YjBmOTMzYzQwYTRlNDYzNzk4NzRjNCBsZWdhY3ktdHJ1bmsKKzU0Njc1IGFjMjU1YTQyZWMwZTFhOTE0MzJmYWRjMWE5Y2RkN2ZkMzU5MzE2Y2MgbGVnYWN5LXRydW5rCis1NDY3NiBkNDFkMWJhMjA5Yzk0MmFlMDcxYTY3NTJiM2I0MTFjMjBiODMwYTQ0IGxlZ2FjeS10cnVuaworNTQ2NzcgY2I2Y2NlNGQ0MjMyYmY0MjhkMjQwZGNjNWVkZTdlZDE4MDE0NzVmZiBsZWdhY3ktdHJ1bmsKKzU0Njc4IGUxYWIyNWZkNWJhZDgxNDU1ZjRjOTRjODRiZTEzNDQzZDQ2YmI3YWQgbGVnYWN5LXRydW5rCis1NDY4MSBkZDdjNjliZDBjNTJhMTM1YjMxMzY3NDM1YTczOTJmMTg5YzQyMzEyIGxlZ2FjeS10cnVuaworNTQ2ODIgZTdmNzhhMzdhZTUwYjBiOWYyOTEzMzhiMWU4YzkxNTZhYzc4ZTAxMiBsZWdhY3ktdHJ1bmsKKzU0NjgzIGI3ZTM3OGU5ZDAyZDU1YzNlOGRiMmNkZjlkYmM4MzZhYTJiYjUxMmIgbGVnYWN5LXRydW5rCis1NDY4NCA1ODZhN2U4Nzc1MDBlMjBlZGRjMjZlNWE3ZmQ1Y2Y5NTAzZGFjNDA0IGxlZ2FjeS10cnVuaworNTQ2ODUgZDhjZDg4ZjkzMDk4MGRlMGY4NmVjYjA1MzRhNGMwMmFiOTI0MGJkOCBsZWdhY3ktdHJ1bmsKKzU0Njg2IGIwMDFiNjU0NzhmYWJlOTgzNjEwODA0YWQ4OTkzOTI1MTdmZmZmMjkgcmVsZWFzZTI1LW1haW50Cis1NDY4NyA0MzI1MDAxODI4NWMyYmIyMTk5MTgyY2MxNGExMGM2YWM4YzI4Y2M1IGxlZ2FjeS10cnVuaworNTQ2ODggNzEyYTE1ZWZjZjE5YjczNjkxMmQzZWFmMDBlYTNiZTY0YWZlZGMwOCBsZWdhY3ktdHJ1bmsKKzU0Njg5IDUxMmY1NmFmYTRhMDUxM2U3MGQ0MDYwNTBjYTg3MjNiYjVjODAxYjYgbGVnYWN5LXRydW5rCis1NDY5MCA0YzdlYmMzOTdkOTQ3YzcxMjZkNzZiZGJhMjBkN2VhM2M0NGYyMzNkIHJlbGVhc2UyNS1tYWludAorNTQ2OTEgODEyMDI3ZjFlZWE1MzVhM2EzMTkxZDdlMGVjZDlhZmFmMjdmMzhjMyByZWxlYXNlMjUtbWFpbnQKKzU0NjkyIDI4YWVjMTM1OGY1OTRlMTRiZjdiZTZkODZiMGRhYjUyNTE1ZmMyZDYgcmVsZWFzZTI1LW1haW50Cis1NDY5MyA0Nzc3YzQwMDdiNWIxOTQ0MjM5NTNkNDFiMWU1ZTZhZGFhYmE2YzVkIHJlbGVhc2UyNS1tYWludAorNTQ2OTQgODE3MGQ0NGRkOTA0ODhkZTAyNzhlNTExYzAzN2RiMzFiMjlkYzVhNiByZWxlYXNlMjUtbWFpbnQKKzU0Njk1IDgwZmY3NWZhMjc1NGViMGY4YjQ1YzA0NzJlNGJmMTE3ZDYxYzFjNDUgbGVnYWN5LXRydW5rCis1NDY5NyA5YTUwZTJiNmI2ODU3NDdmOGY5MDU3NTRjOTI3YzFiODViNmY5YTQyIGxlZ2FjeS10cnVuaworNTQ2OTggZWE2ZmJmNDA0YzM0ZDk2MzFiODMwNzRjYTQxNmNlZWFkN2JhOGVmYSBsZWdhY3ktdHJ1bmsKKzU0Njk5IDU4MWQxMjdlODIyYjcxOTQ2ZTE2NGVjODdiMWExNTY2OTFiZDM1ZWEgbGVnYWN5LXRydW5rCis1NDcwMSA5MTIwMjgxMjQxYjgyY2VjMTAxZWFkY2E1YTY5YjRjNDcxNTFjNTc2IHAzeWsKKzU0NzAyIGJhZDVmODMyODA5ZmMyOTQxOTEzZTQwZmMxOGQ5YjAyZWEwMGMwZWEgcDN5aworNTQ3MDMgNThkNDljYWU4ODdmMmY5YTNkZmJkNzYxMjQxOTE4ZGZhNTFjN2Q2NSBwM3lrCis1NDcwNCAzYjEzOTZiMDEyMzkzODIwMjkwZmMzMDUwOGUxM2UxNDhmNDlhZTE2IGxlZ2FjeS10cnVuaworNTQ3MDUgMjM0ODY5ZGQyNzg0ZWQwZjZmZmJiYWNiMmE1MDk5YWUzMjhmOTViZiBsZWdhY3ktdHJ1bmsKKzU0NzA2IDk0MDhkY2QzY2U4OGZkZjAyZjFiZjg3NDQxN2E3MWIyM2M5NzZmNjUgbGVnYWN5LXRydW5rCis1NDcwNyBjN2I4MzBjODZmNDJiYmQzODFjZmY2MmYxOTJjODU0NDI3MDBmOGI1IGxlZ2FjeS10cnVuaworNTQ3MDggMDIwZmQ2ZGU2NTI1ZGEzNGMwNmIwMWUyZWNmMTcxOTBmMmY4NTZmZCBwM3lrCis1NDcwOSBjNTY2MDA1NWI0MjVkZGJhYWQ2ZmE0Yjc5NDhlZDE3MGVjMDYyY2Y2IHAzeWsKKzU0NzEwIGQ4YjE0OTk0ZDg3MGI2OGU0ZDBiNzU5ZGYxMjM2YzhmODNiNWNhZjYgcDN5aworNTQ3MTEgODBmNWVlMjFlNTQ1NTg3ZGQ1MGJlZjNjZWYwYjMyODU4NGRjMzY3NyBsZWdhY3ktdHJ1bmsKKzU0NzEyIGNjMDBiY2U2YzU5ZDM3YTM3ODQ5MzA3NjVlMTg2MTgzNjBmNzMxMmYgbGVnYWN5LXRydW5rCis1NDcxNCBiOTEyNGMwZWYxN2EzMjE4ZGU0NzNjNDZiNzhlNjZjZGRkOThlYmFjIHAzeWsKKzU0NzE1IGFmNTExZDI0NDYzNjkzY2Y0NDBkMTFjODg2MzliYmFkZmNkOWY5MTEgcDN5aworNTQ3MTcgZTI5ZmE0YTFjYmQ5MzFiM2ZlYTcyNTM0MGVjNjc3ODIxMTdkOWE1ZCBwM3lrCis1NDcxOCBhNTcwN2JmNGY2ZDE0MzM5MmVmYjYxYzhjNDk4MDllYWMyNmE0OTlkIHAzeWsKKzU0NzE5IDMzOTAxNWQ5OGI3ODY0MjI1NzdhZmY0YjU1NTUzZDAwZTk1N2RkOTcgcDN5aworNTQ3MjAgNTIyYjNmMzVkMGViN2RiYjYzNzUzMmRhNzdmODVlMTZiZjVjMDU0OCBwM3lrCis1NDcyNiA0ZDUwZmFkOTU3NjgyMDYyZjQ0OTc1MTQwZGY5NGI2NmJlMGVmOWNjIGxlZ2FjeS10cnVuaworNTQ3MjcgNjU3M2VjMWU1ZGMwY2RmZjRhYjIwNmY3Yjk5NTg2MmFjM2ZlMWE3NiBsZWdhY3ktdHJ1bmsKKzU0NzI4IGY0MzkxYWJlNWIwMjM0NWYyMTU2YmM0MzU3ZTU5MzMxMmMwYTJmOTYgcDN5aworNTQ3MjkgODU0Mzk5Mjk3Zjk1N2U4NTI1MTJmYTU4ZTViNGI3YTg1ODlhYTllYSBsZWdhY3ktdHJ1bmsKKzU0NzMwIDY3ZjkwMGQyZjJlNjIxNGVjODExYzI1NzdmMDZlZmNmZTg5M2VjNTkgbGVnYWN5LXRydW5rCis1NDczMiBhZTRjZWQyOGE4MzkwMmJiMjFlOWYzMmU1MjY1NTc5OTUwNzk1MmM4IGxlZ2FjeS10cnVuaworNTQ3MzMgNGY3NzAxNjI1NGJjODRiZjUxZmUyNTA3YmFmZjJmNjUzNDVmNzkwMCBwM3lrCis1NDczNyBjOTBkNzVhNWUxOTExNGJjN2FhZWMyYTZjYWVmYjQ0YjU4NDM3MzNkIHAzeWsKKzU0NzM4IGQ0MTA4YWNhODc2NDI3YTlhYmE1ZWI5OWQzMmNjMzJjNDU3MDZmYjggcDN5aworNTQ3NDAgYmEzMWU3MTIxMGQ0NjlkMzM2MTc4NmY4NDczNmQ4MTczMzAwYzZkZiBwM3lrCis1NDc0MSBlN2Q5NzkxMDE0MzA4YTg3NTE5YTkzOWIzYjk1MGNiODgxYzViNjY2IGxlZ2FjeS10cnVuaworNTQ3NDIgN2M2OTcyZjM3ZmUzNTMyMGNjMWZiY2JjMmY1ODNiN2ZkNDUyMGI1OCBwM3lrCis1NDc0NCAwNDg2ZGVhYWFkZTNlNDBlODZhYTVlMzE4ZTYzMTYyYTA0ZjhhYThiIHAzeWsKKzU0NzQ1IDQ1NjFmNmRhM2I3ZDM5NDc4NjhmNTUxZmJjN2VkZWU5OGU2YzY4MTkgcDN5aworNTQ3NDYgNDAxMTBkMDZlODJhZTIzYjY3OTNlNmNkMjI5YzlhOTkxNzhiNDQ1OCBsZWdhY3ktdHJ1bmsKKzU0NzQ3IDE1ZjM0YWQ0NjgxYjg4NTQ1YTM3NmE1ZWVlNmYzNzZjMGU3ZGY4N2MgbGVnYWN5LXRydW5rCis1NDc0OCA3M2MwMTY2OTZhODJmODRiZWM3YzVkMDJmMmRjZTY4MDRjMDFiMzk3IGxlZ2FjeS10cnVuaworNTQ3NDkgMjZjYmNkNzlhMTUzMTAxNTY1MDNlNDk5YjI4MTgwN2IzYTNjMmU3OCByZWxlYXNlMjUtbWFpbnQKKzU0NzUwIDI4YmM3ZWQyNjU3NDczMDVhNTI2MTI0N2U1YTIwMDJmOWZmMTA1MTMgcDN5aworNTQ3NTQgOTgxYTMxZmYxOTY2ZGYzMjU5MzQ5ZDFlZDc2YjA1ZDFmY2UwYjdhYSBwM3lrCis1NDc1NSAwMGQ5ZjUwYmRjMzFhYTk0Y2IxNWEyNjcwMmM2ODFjNDIwNmRhNGM2IHAzeWsKKzU0NzU2IGYzOTA3OTNlNzVkZWMzZDk3YTgxZjAxYjYwMzIwMWYzN2Q2OWFmZmEgcDN5aworNTQ3NTcgNDZkMGY0MDU3NzA1YjA5N2U5YTE3MDg3MWZkMDFhNWI2MjExZGQwNiBsZWdhY3ktdHJ1bmsKKzU0NzYwIDBkZmEyYTU2NDA3NjBlNjg4ZjU0N2M0YTRjMGNhYzVjNGZmM2IwMWMgbGVnYWN5LXRydW5rCis1NDc2MSAzNjY3ZDFhOGM5MTZmMWEzZGM4MWE5MDNlMGNkYmY4MzI2YTY3YWJhIHAzeWsKKzU0NzYyIGEwMWNiM2RmMzhkZGYzNDc0MWIyNDgyZGE3M2Q5OTdlZGQyMTA4NGMgbGVnYWN5LXRydW5rCis1NDc2MyBjNGY0MDNmNDUwZWRhNjVlOWEyMTZjNzA5YTM5MmYwOTQwZTA0MGEyIGxlZ2FjeS10cnVuaworNTQ3NzIgY2VkYzhkN2QxYzdmZWI1MmIyNmZlYmVkOWVjYzc5YzI3NTU1NjE0MCBsZWdhY3ktdHJ1bmsKKzU0Nzc0IDg2YzQ2ZGM2YTc3NGFlOTc0NWE1MDQ4ZTQ0MjhmODBhZTE3N2YxMzEgcDN5aworNTQ3NzcgNjVjYjZiMWZhMzk1MWYzNDUwODBkMWM4MmFiNzM3Yjc5YTc0YjdmYyBwM3lrCis1NDc4NCBjMzRkNzA1Yjg4NGU0ZTlmMDczMzc5YjUxZmUwYWNhMmU1ZmVhNWM5IGxlZ2FjeS10cnVuaworNTQ3ODUgYzBjNDQwN2QzNTMxYzZiYWY1NGNjMDg1OTQ0ZGZlZWNjZjdiOTA2MyBsZWdhY3ktdHJ1bmsKKzU0Nzg2IDg0NDczMTRmNTAwYTk3Y2M1NWM0ZmQ4NDY5YWJmYWM5ZmQxMDMxYjUgbGVnYWN5LXRydW5rCis1NDc4NyA5NTNiZGVmZDgxZmY1NTZhZTYyMWQ3ZmY4NmQxMTgzMjkyNGQ1MjVkIHAzeWsKKzU0Nzg4IDM1Njk1ODdiZWYwNjVlYjkwM2NjYzhiMzYyMjdmZTI4ZDM3YTM2NjUgcDN5aworNTQ3OTcgNDU4YzhkYjJlOTQ2MTZhMmFmMzNjNDc3MDM3MTJjOWE4NjI5Zjg2MCBwM3lrCis1NDc5OCAwYTM4OWI0N2YxMjllOGY2ZDA2ZWJiOGQxMmRjZWYzODE4NjgxNGJlIHAzeWsKKzU0Nzk5IGQxYzNkZDE4NGUzODgyYjk5NDQyNzQzNmViZWFhNDgwOWVkMzZmZGUgcDN5aworNTQ4MDAgZTJkN2E0YzM5MzYwYThmMWMxMzdiMDhhNTFhNDZkZDk2NmJiZTAyOSBwM3lrCis1NDgwMSAzYzMzOWRlODAwMTA1NmI2ZDJhMDc0YTI0MDk4MzFhOGE2NzhlMTIyIHAzeWsKKzU0ODAyIDM1ZjlmZmM2YjUxMGY4ZjljNjZjNjYyY2ZiMjI4ZDZlZTAzNTIwNzUgcDN5aworNTQ4MDUgYjgyMmZiZDg1YWZlYjNiN2FiMjQ3NzQ3NjU5MGRjNDJiOTcyNzEyNCByZWxlYXNlMjUtbWFpbnQKKzU0ODA2IDVkZmQyZjRiYzgzNGI2ODMzM2M1ZjE5NmUwMTA4MjMzNTU1MTk0NTAgcDN5aworNTQ4MDcgNTM0ZTRjNzA3ZTkxZTZiZGE4Y2QzMjU4NTNmOTYxMDI1YjY5MGZlYiBsZWdhY3ktdHJ1bmsKKzU0ODA4IGJhYjljMzgxNzA5MjZiMzc2YjE1MDBiY2NlMDMzNWFiZTY5M2UyZDIgcDN5aworNTQ4MTIgMGQxZTQxNWVjMzZjY2QzNjllNDA2ZDFkYmJlOTcxNDQwNDIxZmI4YiBsZWdhY3ktdHJ1bmsKKzU0ODEzIDgyZjI3OTFiN2MwMjIxNjRhZjJkODIzYjg1YmMzZjQwNmMyMzQ0YTcgcmVsZWFzZTI1LW1haW50Cis1NDgxNCBlYTNjYTQ5NWYzMjExZDNiMWU4NWY2MDQwZGIyMmJmZGY4MzBiNGY2IGxlZ2FjeS10cnVuaworNTQ4MTUgZWQ4MjAyMzlmODc4NzYwNmNmYjg0MDhiOTRiNDI2NzA0MTMxNjNmYSByZWxlYXNlMjUtbWFpbnQKKzU0ODE2IDg0MjM3NzIwOTdjNzRhNmNjMGFkZWQ4N2ZmZTUzMmI0NmYzNGYzODMgbGVnYWN5LXRydW5rCis1NDgyNSA1ZjhhODdmYjRkZjMzMmQ5ZjliM2U3NGJlNGJiOWNlMTRlOWFlNTFhIGxlZ2FjeS10cnVuaworNTQ4MzUgMDYwYzc5ZjZkOTE5NjdmZWQzYzI3OTVjOGRhMDkxZTQ0ZTJmMjI4OCBwM3lrCis1NDgzNiBkNjdiNWQ5NTNiNDUyM2IyOGJiNjFjYzA2YTIzOTU2YjM4MTg5Y2NjIHJlbGVhc2UyNS1tYWludAorNTQ4MzcgYmM3NWM1MjNiOWQ4MTcxNjRlN2YxZDQ0ZWMzYWUzZTYxYWUwNzhlMyByZWxlYXNlMjUtbWFpbnQKKzU0ODM4IDU2MjNlMjMzZTljY2ZkNDdiZTM5Njc4ZTExNzc5M2EyNzIwYzFmMDYgcmVsZWFzZTI1LW1haW50Cis1NDgzOSA0NTc5YTI3NGZkNmUyYTU5ZWY2ZmI0M2MxYzk3OTlhNmRjMGU4YTBhIHJlbGVhc2UyNS1tYWludAorNTQ4NDAgMmZlOTFkMjAxYjA1MjJjMWMzMTc1NWFkMjZkZWI2ZDg3ZDVjMWQ3MyByZWxlYXNlMjUtbWFpbnQKKzU0ODQxIDMxYzkyODI4YWVmYjFiMjRlOTAwNTViMTQ5N2UwNmQ5ZWRmYmEyOWYgbGVnYWN5LXRydW5rCis1NDg0MiAzZTVmZGI5M2M5NWE3Y2MyZTlkNzYwMGM2ZDQxNTJiMzQ2N2U3NTZiIHAzeWsKKzU0ODQ0IGNjNzA3ZjFhZTBiNmVlZDNkMzI1NDI3NGNiNWZmYzUxM2U3MjE5ZmUgbGVnYWN5LXRydW5rCis1NDg0NSBhNDk4NTlmNDRjNDMwYzY1NDIwNmM3ZTVjYjQ4ZDAwNTU4NjUxMWM5IHAzeWsKKzU0ODQ2IGI1YTJlNzUzYjY4MjMxYjBkMWMzZDU2NGQ4NDJiOTVkODQwZDUzMDIgcDN5aworNTQ4NDkgZTAxMTY5NjYzNjVlMmI3ZjZkOThmYTQzNmI1MzVhZGZjMDU2ZGZmMyBsZWdhY3ktdHJ1bmsKKzU0ODUwIGMxY2ZkMGFmNWY1NzMyNzE0N2MzMzVkMjdlOWU5YmE4NDdhYmE3MWMgcDN5aworNTQ4NTEgMDkwOTcyYzIwYTQ3MmU5YjJkNWI5YzExMjZiNzE4ZTQ1MjdlMmVmZSBwM3lrCis1NDg1MiBhMzBhZjgzM2QzODliODI4ZGUzMzQ1YmY0MTczNjY5OGVkYjVmZTQwIHAzeWsKKzU0ODUzIDk2NTczOTVjMjVlNThiY2RlZTYxYmZkOTE5NTcwZjM0NzE2YzViNjcgcDN5aworNTQ4NTQgOTkwMjdjMmIzZmQyZGU0OWE5NjdlYmUwMDhkYTU0MjJjYTQ0OGRhNSBwM3lrCis1NDg1NSBiZWEwYTU1OTJkYjNmZGU5N2Y2OWRiMmZjYzE0NTIwZDU1ZGRiOTI5IHAzeWsKKzU0ODU2IGE1ZTQxMDYzOWUyNDg2MzU1ODA3MWNiZDhiYWM0YjQyYWQyMzExYzcgcDN5aworNTQ4NTcgNjFjMjhkNzc4ZTM3OTMyYjM4YWFhMGJkN2QzNDYwYjQxOGYzMzA5ZCByZWxlYXNlMjUtbWFpbnQKKzU0ODYzIDQ5MGQ4YzA5YWJjYjgxNDk1MGJlN2JiN2EyNWMzZmYyMDQ3YzdlYjUgcmVsZWFzZTI1LW1haW50Cis1NDg2NCA0ZTBlODRmOWQxNGUyYjVkMjg2NGIxYjNiMWUxNTJkMjBjMTJjMDVlIHJlbGVhc2UyNS1tYWludAorNTQ4NzMgYzMyYzRiM2RhOTNmZDRiZmY2NDE3ZDY2NDA5OGM0YWEwMGU4YWFlOSBsZWdhY3ktdHJ1bmsKKzU0ODc0IDU4NTI3YjliMjQyYzdkNGJkNTE5ODBkZDVhMTBhMTFhYjZlYmU5NzQgbGVnYWN5LXRydW5rCis1NDg3NSA1YTZkOTAzYWI3YjViYTRlZjBkMWQ5MWQyYzFiMGVkNmIxYWE0ODljIGxlZ2FjeS10cnVuaworNTQ4NzYgZGE0MDNkMmI4ODZhYjU4YmYwZGYxYzExZGM3MWRkYzNkYTU4OTdlNSBsZWdhY3ktdHJ1bmsKKzU0ODg0IDc2ZmQzYjk4ZDAwN2Y2YzQ4Y2FlOTE5YjM5YmRjMTNlODdjYzNlMGIgbGVnYWN5LXRydW5rCis1NDg4NSAxN2U0MzYzZWYyYjUzMGYxYWE5YTBiYzEyODQxOGVlNjNmN2M0NGUwIHJlbGVhc2UyNS1tYWludAorNTQ4ODYgMGY2NzVhNjI5NzcwYWExYzJmYmFkMDAyN2MyNTU5MDdmYjFhYzk4MSBkZWNpbWFsLWJyYW5jaAorNTQ4ODkgMDFlNmQ4NGUzODkyNDUyNDczMjM2ZjIzZWVhZWY3NGVlOTk5MzZhZSByZWxlYXNlMjUtbWFpbnQKKzU0ODkxIDE4Nzk1ZDQ5YjhkMmFjNDBiZGQzODg5MDM0N2I3NDAwYzRmNDU0ODkgZGVjaW1hbC1icmFuY2gKKzU0ODkyIGY0MzY2NGU4YTFmYTRjOWZkYzQ1MGQwNTcyNGU3MmQ5NGVjNDE4MWUgZGVjaW1hbC1icmFuY2gKKzU0ODkzIGJmYjZmMTMzMmZiNGUzM2Q1YzcyNGE2YmJlYWY1NDZhNTA5NjY0ZTQgZGVjaW1hbC1icmFuY2gKKzU0ODk3IGY3NzdkMWRkNGRjZGRhMjU3N2QyZmFmNDJkMTQ2ZmJjNGE5YzljYTIgYmNhbm5vbi1vYmpjYXAKKzU0ODk4IDZiNDY1Y2MwMjViM2Y3NWNiZmJjNmViN2Q0OTE2NTNkYzg4ZTYyMWEgYmNhbm5vbi1vYmpjYXAKKzU0ODk5IDg0YjVhY2VkNTM1NjEzODhmMzExNzM0OTNkOGI5MGQ1YjAzOTY1NzcgYmNhbm5vbi1vYmpjYXAKKzU0OTAwIGFmNzI2ZmI2ODFmYWFhZWI4ODE2NjI0YWM2MTVjZTdkNDk5YTI1ZWQgYmNhbm5vbi1vYmpjYXAKKzU0OTAxIDBiNzA4MzBlZDc0M2ZjY2FkOGVhZGEzNDA0NzllNjFjZTNiZjE1ZDQgYmNhbm5vbi1vYmpjYXAKKzU0OTAyIGJiNjBiOTUzOTgzOTQxZTkyMjY0YjI3ZTFiM2ZhMjU2NzRiZWFkNDIgcmVsZWFzZTI1LW1haW50Cis1NDkwMyA4Y2QwOTMyNzRkNTc4MTBkNmQxNjhhMzNkNzg2YTVkM2M4MmQ2ZDY2IHJlbGVhc2UyNS1tYWludAorNTQ5MDQgMWNjNmJmMjM0OWU0ZTFlMDNjZDA3NWQ2YjliODhjOTUyZjJmNTBiZiByZWxlYXNlMjUtbWFpbnQKKzU0OTA1IDlhOGMzZDlmNDA1YThhNWZjNjdkMTdmZmQzNzFmYjFhMzMyM2MzODIgcmVsZWFzZTI1LW1haW50Cis1NDkwNiA2YzZjOGE4YWZiMzgxZThhYTQ0NWQ4YmY3NzAwNDcxYWNjYzhjNTY5IHJlbGVhc2UyNS1tYWludAorNTQ5MDcgNWE0NjE5MjE0MDQzZDAxNjYzMmVlODQyZTA4ZDU4ODNjNjc5YTAyOCByZWxlYXNlMjUtbWFpbnQKKzU0OTA4IGFhM2M3YmE1M2Y5ZDJmNDY5NmUwZWYyMjBkZDMyMzAwNmE3N2Y4ZTMgcmVsZWFzZTI1LW1haW50Cis1NDkwOSAwYTZlNTM3YjhkOTZiMzY3YTk0NGY2NDFlZmYyOTZhOWM3NmNjNTAyIHJlbGVhc2UyNS1tYWludAorNTQ5MTAgMGM1MDE5YWZjNTViNWUyYWVjZDhkMWQ2N2I2OTI3OTBlMGIzYWZkOSBwM3lrCis1NDkxNyAxZTI4YzY4YjRlNDNmYjJmOTU2ZDg4MmIwMDM1ZGE0M2YzNGJjZDU2IHAzeWsKKzU0OTE4IDI4MDRlNDg4NjFiYTYyN2Y0ODhkZTU2NmRmMTNiOGY5YjhmNWZkNTkgbGVnYWN5LXRydW5rCis1NDkxOSA0NTYzOGIzN2I4MmM4MTM4ZTVkNjZmNWQ5YzUwMWQzNjEwMzJiMDVlIHJlbGVhc2UyNS1tYWludAorNTQ5MjAgM2NjYjRjMTQzZDNiOGIyNTNlZjAxNGVhY2UxZmJlMTEyYjc2OTMyZSBsZWdhY3ktdHJ1bmsKKzU0OTIyIDNjMjY3MDkyZjEzMWU1YWI3NmU1N2U1ZjViOTFhMjlkZDFhYmZlMGQgcmVsZWFzZTI1LW1haW50Cis1NDkyNCBmNTUyNmQyZWI2NTQ3YjFkOGNhYmNjYTM5YWRlMjlmZTE1OTJlYzhjIHJlbGVhc2UyNS1tYWludAorNTQ5MjUgNTVkNzYxYWNkY2JjZDQxMmQ5ZWYxNGFjZjE5NzliOTc1MzBmOGEyMSBwM3lrCis1NDkyNiAyNmRmNTY2ZjgwZjBkZDc4ZmM0NTBmY2NlZWJmMzEwNGQ1OWQwNTYxIHAzeWsKKzU0OTI3IDgxMGQzMzNhNzNhMTBkZGUwZjYwM2Y1ZmFmYjUyYWM1YWRhMGQwMGIgbGVnYWN5LXRydW5rCis1NDkyOSAzYzEyMDVjYTQ0MmI2YmM4NzYwY2Q4ZGQ2MjJkN2E4NTllNmE0YjRmIGxlZ2FjeS10cnVuaworNTQ5MzAgZmQwZmJmZmQ2ZDUwZjc4NWNmZDYwOTlmZGQ0MDA1N2E1ZmQ3MTQ2NiByZWxlYXNlMjUtbWFpbnQKKzU0OTMxIDA5ZGRiYWRlNjVmZWRhMzkwMmNkY2U3YWM2YjY2ZmJmMjkyNGUxNmYgbGVnYWN5LXRydW5rCis1NDkzMiA5MWYzMTIxNzZlYWYzNzhmMDc4NWE3ZjNhOTkzYWJmMDY3ZjM2NWIyIGxlZ2FjeS10cnVuaworNTQ5MzMgZjQ0NjE5MzhmNTBlMzViZTM4NjY0ZjhiMWU1NDQ1MmY2NTE3ZGI5MiByZWxlYXNlMjUtbWFpbnQKKzU0OTM0IDJmODc2YTVmZmEwZDNkNGYyYzVmYmViMGU2ZTM5ZDM4NTUwOWUwNmYgbGVnYWN5LXRydW5rCis1NDkzNSBkMzZhMzYxYzA1ZmQwMjdkM2I3ODEwNmI4YTUzYzQxMGU2MzFkOGQ5IHJlbGVhc2UyNS1tYWludAorNTQ5MzggZjU4YzBkMTFhNzVjMzE1Mzk2ZDgxMDhlOGM4MGM5ZDAyMWZiOTVjZSBsZWdhY3ktdHJ1bmsKKzU0OTM5IDhkNTAxOGQ3NTA4YTJhN2IzYTZiMTg3YTQ4OTNlZmJjNjVlODA4MTggbGVnYWN5LXRydW5rCis1NDk0MCBkMDVkOTg2NGI2M2M3OWVjNjFmYTM5NjZmZmYzYjdiNWVjNGY5ZjA1IHJlbGVhc2UyNS1tYWludAorNTQ5NDEgN2VhNTk0OTcxNGFkMTViODZlMDdlYjU3YmZlZmU5OTllMTM2ZDNkMiBsZWdhY3ktdHJ1bmsKKzU0OTQyIGFiZmE3MDU1YjhmMzA5YjI1MDVhNzI1MzdlZDcwODdiNWMxNWMyNWQgcmVsZWFzZTI1LW1haW50Cis1NDk0MyA3ZTk5YWY4NjljOTE3NmRiNDY4MWFiYjM1NGE4ZTFmMGJhOGI5ZGY3IHJlbGVhc2UyNS1tYWludAorNTQ5NDQgNTE5ZjIzMTM0NTNiNzFiZDgyNTFkZGVhZWJjOGNjZGY4MDRmNmVmMSBsZWdhY3ktdHJ1bmsKKzU0OTQ1IGI2ODI3MjQ0OWRmNGIwMzExYmQ3MGM5NGEyN2E0NzM1MzZhMzU1YjUgbGVnYWN5LXRydW5rCis1NDk0NyA3MDhjOGM1ZmMxNzMyMzZhY2QyOGMwOGQ5ZjQ1NzVlN2ExNGY3NmUyIGxlZ2FjeS10cnVuaworNTQ5NDggMWJiMWZhN2ZkMTc0MWIzN2IxZTc4OWEzNzM1ODQxNzc5ZGI1YjhkNiBsZWdhY3ktdHJ1bmsKKzU0OTQ5IDQ3YWViMjQ4ODJiZDc5ZDVhZmI4OWQ3ZTA3NjQ5ODQ1YWQ3NGIxZjQgbGVnYWN5LXRydW5rCis1NDk1MCAzZWU4NDk3NDZjMWJmNWI1MzAwYWExOWM5MjJlODIxNTY5M2U1Mjk2IHJlbGVhc2UyNS1tYWludAorNTQ5NTEgMzc5N2I5ODA5MmNlYTJkYThmZGE2OTJiZDAzZTgzNWY0YjJjYzYyYiBsZWdhY3ktdHJ1bmsKKzU0OTUyIGNhNDg5ODA0YWUyMDEwNjNkNDJlMjJjYjRmMDU1YjQ4NzkwNTVlMDEgcmVsZWFzZTI1LW1haW50Cis1NDk1MyA0YjlmYTgwOTJlODI3MTAzYmNkMWIxYjJmNWY5Njc2Y2VkNDBhODE5IGxlZ2FjeS10cnVuaworNTQ5NTQgN2RlZDc4N2U2MzExNmNjOWMyNmI2OTVjYWNjOTZlOTJjYTA0ZTJmOCByZWxlYXNlMjUtbWFpbnQKKzU0OTU2IDZjNGQ3Njc4YWY1ZTJkMTkzN2ZjOGZiMTY3ZjQxYTIxMDYxYzZlOTMgbGVnYWN5LXRydW5rCis1NDk1NyAxMDAyZjQyZTEwY2RmMmQyYmI1ZTgxZmI3Y2NkYzc5M2IxZjgzODJkIGxlZ2FjeS10cnVuaworNTQ5NTggNzFiNWMxZTJjMDljMjIxZjExMzMzN2VjODFjOGM4ODVlZWYyYWVkYyBsZWdhY3ktdHJ1bmsKKzU0OTU5IDAxOTkwNGM2NDcxN2M4Njg3MzhhOGRiYWQ3YmJlNzM5Mzg4NzJhYjIgbGVnYWN5LXRydW5rCis1NDk2MCAxZjFmYjgxODg4YWUyOGU1ZGI1ZDkzN2I5NzIzZTQ2YjIzYjExOTY3IGxlZ2FjeS10cnVuaworNTQ5NjEgNzYxY2UzOTQ2Yjg2ZWI4MzYzMTE1MGVlNGMwNzU4MDI5MTA3YWQ1ZCBsZWdhY3ktdHJ1bmsKKzU0OTYyIDNmNDNlYmZhOTJkY2YyM2Q1NjRiMDdhZmFjNTJkMDRmM2VhNjZmNWQgcmVsZWFzZTI1LW1haW50Cis1NDk2OSAwZjI5YTFhMDk3MmNkZmE0M2VjZDI0NWZjZTQ5NGU3NWYwMzk0NjIyIGxlZ2FjeS10cnVuaworNTQ5NzMgZTYxNmZhMTMwYzJmY2MzZDA1M2NiZTA3ZTk0NmQxOWI5ODQ1ZmVhMyBkZWNpbWFsLWJyYW5jaAorNTQ5NzQgMDczZDY4YzI5MDQ5MzgzYjBmYzNmNTY5NjEzNGI1MjkzZjk0OWQyZiBsZWdhY3ktdHJ1bmsKKzU0OTc5IGI2ZThhZGVjMDU0YzdkN2NjZDNiZWE2ZDI5OTQ2NDcxOGQwMTc3YjkgbGVnYWN5LXRydW5rCis1NDk4MCAwMGJmMTQ3NjAxZTQ4ZDE1ZmU5NDIxMDE5MmI1Y2Y5YzI5NjFlNmQxIHAzeWsKKzU0OTgxIGY3NjYzYzY3MzRiYmU0ZTQzMmFlYmY0YmRhOGZhZWY2ZTAwNTdlZmEgcmVsZWFzZTI1LW1haW50Cis1NDk4MiBkOWE0ODdjMmZhOTYxNjAxMDZkYThjNTk0ZjQzNzMxOTUzZDczNmQxIGxlZ2FjeS10cnVuaworNTQ5ODMgNjg3N2I3OGU4MTBkMDI0NTYyOWVlZmZiZGUwOTRmNTZmZGQxOWM4YSBsZWdhY3ktdHJ1bmsKKzU0OTg0IDg5MDVkZjYxNzYxM2UxYzBlOGJmMThkZmVjZDgzZjRmMTc1NTIwYTQgbGVnYWN5LXRydW5rCis1NDk4NSA3Y2MzMTAzMmUyMDYzZmUwNjEzODRmOGVjNWFmM2Y0NzBmMGM5NGM5IGxlZ2FjeS10cnVuaworNTQ5OTUgOTM4YzVhZThkYzMxNGJlMjk4OTNkYmUwYmUzY2U0MjIzMjM4NzZlNSBsZWdhY3ktdHJ1bmsKKzU1MDAxIDEyNjQ5YTczNGJlNjI4M2UwYWJhZGYwYzdkOTdlNDRhNDQwODk5OWYgcmVsZWFzZTI1LW1haW50Cis1NTAwMiBjYzlhZmVkZWQyM2ZjYTE2NzA0MDk2MTgwODQ5YWE1YzU0NjUzOGZiIGxlZ2FjeS10cnVuaworNTUwMDQgYWRmYWJjNTczNjFkMzdjOTk5OWZjMTVlNGJjZDVmYmUzY2I1YTdjYyBwM3lrCis1NTAwNSAwNjE0NWZiYzdhYjkzMTgzNDA0ZmVkNmY4YzYzYWU0MzI1ZjM3ODI0IHAzeWsKKzU1MDA3IDI3MDA4Njk5NGY0ODRlOTYxOTUzMGNiOTk0YTg3MmIxOTZjYmI5YTggcHkzay1zdHJ1bmkKKzU1MDA4IGE2YTQzNmFhZWZkYmVlZWUyODU4ZGU1MGI3ODE0M2FkNmNmMTFlYzEgcmVsZWFzZTI1LW1haW50Cis1NTAxMSA3NmUzNzVhYjc1MjU3NDA2MjY4MTU2YmZjMDYzMGEzYTJmYmQzZjUwIHJlbGVhc2UyNS1tYWludAorNTUwMTMgMjlhZTY2N2YzMjM5NDExNjQ3ODA2YzI3NjVhMTdkMmM1YTMyODk5OCBweTNrLXN0cnVuaQorNTUwMjEgYWQxZDU2YzA3NDIzMzk2ZjFiYjZlZDgzZjQ0Mjk4OWEwYmJmNGEyNyBsZWdhY3ktdHJ1bmsKKzU1MDIyIDUyMTE2MGM5YjM2OWQwNGE5Y2Y5OTk0NTY1ODNjNjE1MDI5MTQ5OWQgcmVsZWFzZTI1LW1haW50Cis1NTAyNCA0ZjgwMWE3NTg5MzZkNDQ2NjQ0MmIxNTEyYzRmMzM1OTA0Y2M4NjQ2IGxlZ2FjeS10cnVuaworNTUwMjUgNmE1NmFlZGJlMjgwOGEzYTZiOTgxMGExNjIxOTc4NzNkNWI5ZWYyMyBsZWdhY3ktdHJ1bmsKKzU1MDI2IDg3M2RmYjUyYzMzNDYwNmEwOWJjMjdlYWVjOTU0MmYwNWQ0ODMwNmIgcmVsZWFzZTI1LW1haW50Cis1NTAyNyA4MmU3OTk4M2NiMGMyOTk4NDg5ZDM4ZTY3MDg1ZjQ0OTQwMWRiZWNkIGxlZ2FjeS10cnVuaworNTUwMzYgYjg2YmQ3N2QzZDQwNDBlM2QxNWQ0NjNkMWE3MDBmZjg0MWIxMWFlYiBsZWdhY3ktdHJ1bmsKKzU1MDM3IGJjN2EwMzc5ZDNiMThlYjNiNDE3M2M0MWM2YTQxMmJmN2ZiYzEwYjMgcmVsZWFzZTI1LW1haW50Cis1NTAzOCA4NmEyMzJlYThiYTQ1ZGNlYmY0ZTNlMWE3YjM0Y2I2NDQzNjdlMjY2IGxlZ2FjeS10cnVuaworNTUwMzkgMDBmZTRiYjAyOTM2NGQ3YTFhZTFlZWNiNjFhMWJmYjllNDk2ZjEyNCByZWxlYXNlMjUtbWFpbnQKKzU1MDQxIDJiMmQ1N2Q2Y2M3ZWI4MDVlNTg1OTdhMzZiNzRiNzIxNjE5MjMyYTYgbGVnYWN5LXRydW5rCis1NTA0MiBkM2RmMzFkNDU0NTcxYmE4NWJiOGE2ZjU4NjZiNTYxN2Y2ZjYwOGUxIGxlZ2FjeS10cnVuaworNTUwNzAgMzc2OWE1MTk2MDM1YTMwNzUwODRjMzg5Yzc3M2MxNTA1ZjA4YTY0NiBsZWdhY3ktdHJ1bmsKKzU1MDcyIGU1MGQ4MmM0MThhNzJmZTQ1MWQ3ZmU4ODIxNzMxZWFjNDQ4MjJiYTcgcmVsZWFzZTI1LW1haW50Cis1NTA3MyBhM2JmNTVhMDNmNjZmN2JiMmM0MzNlMjM4NjJhY2MyNjRjMTk2Y2M1IHJlbGVhc2UyNS1tYWludAorNTUwNzQgMzllOTUzODA1MTg0OTM3ZDRhNmZmYjk2NjAxYTg2NjNiOTg5ZTNkMiByZWxlYXNlMjUtbWFpbnQKKzU1MDc3IGVhYjI5NWQ5M2M4ZTY1MDY5MzBjMjQxNjIwMTZjZTdkOTgyYmNhNzEgcDN5aworNTUwNzkgYmVhY2Y0MGI1OTYwN2E2MmJlOWI2N2M5OGUyYmEwOTUyY2E2ODZmOCBweTNrLXN0cnVuaQorNTUwODAgOTgwZmYwYjFiOTU3ODU1NGRmYjNhNDFhNDU0ZjU0ZjZjYTQzZTcwYSBsZWdhY3ktdHJ1bmsKKzU1MDgxIDNkNzJjMTA5MWU1YTM5YmFlZWI4YTgwODgzMGZhODNlMjUwYzFhOTEgcmVsZWFzZTI1LW1haW50Cis1NTA4MyBiYzZhMGZlMzIzNTE3ZWQ0ODI1ZTdlMmUyYWRhZjlmZTVlY2QzYjAwIGxlZ2FjeS10cnVuaworNTUwODYgZDcwNTY1NDU3ZWFiYjA0ZTgyODQxYTVlMTg3MGFmMGNiNDYyMzA2YSBiY2Fubm9uLW9iamNhcAorNTUwODcgN2E0ZjE3NGRmODQ0MTA5NGQzODYyOGNiYWVmMzk1ZGE5ZTE5NzBlYyBsZWdhY3ktdHJ1bmsKKzU1MDkwIGE2ODQ2N2NjMDZkM2I0YTA1MmZkMmViZTEzZTNkODNmOThhNTlmMGUgbGVnYWN5LXRydW5rCis1NTA5MiBlOWJlZjViNDIwMDE1NTRkYTA4OTBkNzkxM2M4NWU0MjA0NDYzNjhlIGxlZ2FjeS10cnVuaworNTUwOTMgMjVjYzFjZWU1ZTY5MDQxYWQwMGEyN2MyYjlhMzUxN2YyMWQyODllNSBsZWdhY3ktdHJ1bmsKKzU1MDk0IDdiNzRhMTk3NjA5Yjg2MjE4NjA3YThmNTlkNGI1NjZjNTAwYzRlZDIgbGVnYWN5LXRydW5rCis1NTA5NSBjMWY2Zjk4NDhiMTdjYzE4ZTc4YTE2NDg0YzU2NGNlM2EzOGNhNzYyIHJlbGVhc2UyNS1tYWludAorNTUwOTcgODI1ZDk2NjMzOGVhNzAwMDYxYjNmNWY4YmQwYjZlZjQ0OTMzNzkyZCBweTNrLXN0cnVuaQorNTUwOTkgMzY4ZmVkOWFmNzYxNzk5MTE1Nzc0NGEyYzczMDhlNjNiNmE3NGVmYiBweTNrLXN0cnVuaQorNTUxMDAgMTViODEwZTIxZmU5YTkwYjQxNGFhMzc5OWE2NDBjYTVkMTEzYjI2MyBweTNrLXN0cnVuaQorNTUxMDEgOWIwMWRmZDAzYzI5NDljMGM5NjRkMzY2MzA1MTVjNWNjYWJiZDJhYyBsZWdhY3ktdHJ1bmsKKzU1MTAyIDM3ZDgyYmVlN2ExNjE1Y2M1YWZkY2IzMjU0YmRlNDFhYTNjMDQ1OWIgbGVnYWN5LXRydW5rCis1NTEwMyAxYzE3MDViZjM2Yjg4YjdkNDFiNTgzMTMxMzY4MWJjYjRhMTUwMjViIGxlZ2FjeS10cnVuaworNTUxMDQgYTg1ZDcxNTAwOWVjYzFhODBlNTNjNWVhMzVkYmVmMmRkZTQxNTIzMyBweTNrLXN0cnVuaQorNTUxMDUgMWU1YTJhMmIxOGVlZGI4OWNjYTdlODMxZWE3MjY3NmJmYWE4NjQyYiBweTNrLXN0cnVuaQorNTUxMDYgZGM1YTE1NjdhZjk4NGQ1ZTZmY2M4OWNiYWJmYmYyMGE4ZDIyNTgwOCBweTNrLXN0cnVuaQorNTUxMDcgZjZmYTQ3MDhhNGRiNDcxMWY5YzQzNmU0MjBiMDUwNDcxYjYzYzBkNyBsZWdhY3ktdHJ1bmsKKzU1MTA4IDJjNTQ3NjNjNDUwNDIxZDBiZjNjYWI4YTJlZWNmNzhkYThiZjg0NjkgcHkzay1zdHJ1bmkKKzU1MTA5IGNmYjNlMDAyMWIzYmY4ZDMyYmZhZjc2MTdjMmQ4MGJiZTBmNjFjZGUgcHkzay1zdHJ1bmkKKzU1MTEwIGNiM2M5MjA2MmVjNDA1ZTlkODE4NzBlYmFkZjlmMjc5ZGZkOTBjNjggcHkzay1zdHJ1bmkKKzU1MTExIGNhNDQ4YzYwN2IxNDAxY2U4MGI3OGRjNWJkYmZiMjY4YTZlNWNhZWQgcHkzay1zdHJ1bmkKKzU1MTEyIGExNGZmMzcwYjYzZDkzMmI2YTU4MGM4NGRlNTdmZmUxNTg4OGM4OTMgcHkzay1zdHJ1bmkKKzU1MTEzIGFjMTZiZWNlMWU1ZmI3ZjVlNGYyMTFmNzAwZGQwMGI2NzVmYjQ2ZDkgcHkzay1zdHJ1bmkKKzU1MTE0IGIzOWFiY2JiYmJiYTRiNTQyYWI1ZTUyOTI1NjFjNWVlZDRkNTg3YjUgcHkzay1zdHJ1bmkKKzU1MTE1IDFkZTU0OTQ3MTcyMWMzOGEyMjg3YWQzYTk0YWEzNzJhNzY3NTM0MzEgbGVnYWN5LXRydW5rCis1NTExNiA0OTY4NmVkNTZlYzdmZTg3MTdmYmM4ZTI0ZTNjZmMzNWExNjhmNzRmIHB5M2stc3RydW5pCis1NTExNyA1YjhlZjk0YmI4MTBmZDAyN2Q3YzUwZGUxOThmZmIyMjEzYWEwYzcwIGxlZ2FjeS10cnVuaworNTUxMTggMTE2MjUwMmEwOWRhNzZiMWVkODQ5YTFiMDBhNjM5NGY0ZmJhMTAyYSBweTNrLXN0cnVuaQorNTUxMTkgYTNlMzAwMWIzNWJmMGExNWUyZWI1MWRkYWVkNzYxNDc1MGIyZjBjNiBweTNrLXN0cnVuaQorNTUxMjAgN2YzNmY5NmI2Yzc2NTg2ZjgzODIwNDRhOWQwNWUyOGUxOWQwYTdjNyBsZWdhY3ktdHJ1bmsKKzU1MTIxIDA1MmJmMGRlZTZiODU0NzA2NDgwMTgwZjMwM2YzN2FjZDhhMGU0MjAgbGVnYWN5LXRydW5rCis1NTEyMiA5MmVhZDg3YmY5ODQzYzQxZTcxYzc3NjkzYzllMjZiMDMyODEwZTNhIHB5M2stc3RydW5pCis1NTEyMyBlNzhlMWI2MTZjNzJmYzgyY2VmZjYxOTUyZTk3ZjhkYmY0OWVlMjA0IHB5M2stc3RydW5pCis1NTEyNCBhNzMyM2M3MmI1YzcxZjkwM2FjZDJlODk0OTRhMzU1MTc4Mjc1MTIyIGRlY2ltYWwtYnJhbmNoCis1NTEyNSBiZTkwMzliNTc0ZDk3Y2VjOWVmZjMyNmJhZTk4OTVkNDhkYTM4ZTk5IGRlY2ltYWwtYnJhbmNoCis1NTEyNyBjNDhmZTRkYzM0YTkxNDIzMDZmYTg1NjFkMGJhM2UxOGY3NDlhYzlmIHB5M2stc3RydW5pCis1NTEyOSAyMTMxZTAzNzIxZWZkYzlhNzcwOGIzZjMyNGVjYmM3YmRlMmJlOWRjIGxlZ2FjeS10cnVuaworNTUxMzAgNTJiOTlhOTE1ZmFhNWU3OTdkODI4ODMyYWY5MWQ2YzU1MjEzZDMzOCBweTNrLXN0cnVuaQorNTUxMzEgOGI3NDNmNTU1OTYxMDhkYzU3OTE2YWM4OGQ4YTU4ODk3MzQyNDdmNiBsZWdhY3ktdHJ1bmsKKzU1MTMzIDA3OGI0ZjJmZGZjOTQ3NmE3OWEzOTU2OGEzOTY4NTYxOTEzZDVhNDkgZGVjaW1hbC1icmFuY2gKKzU1MTM0IDNiNTdmMGI3ZWRkZmY5MTVlYzg0ZjlhMDUyYmYwNDhmMGM0ZDdmNTQgcHkzay1zdHJ1bmkKKzU1MTM1IDllMWRmYzg1NTg5MDViZGI4NzgwYmVjMTkyYjEyNzZkYTg5NjFjZjQgZGVjaW1hbC1icmFuY2gKKzU1MTM2IGUyYjFkMDIyMmFmZWNmMjUxZDkxZTIzOWQ0ZDExMzU5MDRiY2U3NzUgZGVjaW1hbC1icmFuY2gKKzU1MTM4IGRmNDYwMTFjNTkzNjI1NmZjNDAzNTIwNmY3ODdhYzJiOTczNzg2Y2MgZGVjaW1hbC1icmFuY2gKKzU1MTM5IDg2ODA5NzJlZDhmMDM2ZWJmMjdiMmVlYzlmOGEzZWY2YmM2NjM1MTIgcmVsZWFzZTI1LW1haW50Cis1NTE0MCA2MTU3OTVkNTJiOWZkOThhNGZhMjFjNjQ3ZmFiNDQ3MjZiZDg5NGQ2IGxlZ2FjeS10cnVuaworNTUxNDIgYmU3ZWIzZmQzNzc2NjEzMDcxYjZkM2NhYzM4MDlmYWZmNzRjYTM1ZiBwM3lrCis1NTE0MyAyNjZlMTIzOTRiOTdkMmZiMzM0ZDFlZTdmNTBjM2RlYzBkYzhjOWQyIHAzeWsKKzU1MTQ0IDk0NmZkNTRiNDU3ZjVlNDI2YWQwZTc2MDExY2JkMTkzYzBmOWUwMDcgcmVsZWFzZTI1LW1haW50Cis1NTE0NiA2MWFjZmI4MzE2MzNjOGU3MmQzMzQzOGE5M2IxMTcyZjEzMDA0YTFkIHB5M2stc3RydW5pCis1NTE0NyA2YjdkMTc4MmE1NzQ5OTcwYWJmMDdlODJiMDI3ZjQ1MmQzNGVmZjdlIHB5M2stc3RydW5pCis1NTE0OCA4MzhjYWIzNzkzNzZlN2JmYTAxZmE2YjRiOTEwYzM0ZDMwNTM5NjM5IHB5M2stc3RydW5pCis1NTE0OSAxMDdhYWNiOWM1OTU4ODMxY2IyMDdkMWQ3M2ViNGEwZTk0Y2VlMTQwIHB5M2stc3RydW5pCis1NTE1MCA2YmMxNTZkM2MwMGVjMjUzY2IxYzM4MTJhNTVlMTRmYmU5MzYwNGFhIHB5M2stc3RydW5pCis1NTE1MSBlMjVkY2Q4NzRiODI3OTljZWMzYzc0YmU5NWI1MjgxYjAyY2NiZDhlIHB5M2stc3RydW5pCis1NTE1MiA0NmIwMGM3M2UzMmZmYjUyZmZiMWQzZDZkNTQxYzI1MTM2Y2YzZTdhIHB5M2stc3RydW5pCis1NTE1MyAxNDQwYmJiNjcxNTBhNzAxZmNhMjZhMjhkYzA5YmE5NWUwODQ0YTliIHB5M2stc3RydW5pCis1NTE1NCBlYTVjY2VlNmIyODU0YmUyYTU4YzgzNDE2NjkyYmI4MDI5ZTU4YmI3IGxlZ2FjeS10cnVuaworNTUxNTUgMmQzNzc0MDhhOTg3YmNjN2VkMzhkNjRlZDU1ODZmMjZhYTViNzU3NCByZWxlYXNlMjUtbWFpbnQKKzU1MTU2IDU1NGZmMjcxNDVlMTRhZmVjNjY1MWQzNGFjYzFhNTI0Yjc1ZTk1ZWQgcHkzay1zdHJ1bmkKKzU1MTU4IGYzMjAyZmU3ODU5ODE5YTRhZTZiMjM2Njc2YmI0NGY1NmQyZTcwM2IgbGVnYWN5LXRydW5rCis1NTE2MiA4NzI4Y2QwMTJiZDg3ZTc2NDJiZjYxY2FiNzFkMjliZDM4NDQzMjkyIHAzeWsKKzU1MTYzIGM3OTFhNWUyZTA5ZThmZTFkN2U5ODQwMzQxNGNmZjAyMDZiNDRlNmUgcHkzay1zdHJ1bmkKKzU1MTY0IDJkY2MwNWE4MDkwNWZlZTQ2YWU1NmE5OWNkZjhlMmNlOWEzMGNjMTMgcDN5aworNTUxNjUgMGMzYTMxNDgyMDhlMGI5NjRmNTY1NjI0YjkzOWQ5ZDU5YzA5ZmI3MSBsZWdhY3ktdHJ1bmsKKzU1MTY2IGQ0YmE2NjMyNzdmOGZiYzI3MzQ3ZWRkZDgyZjJmMjM3YTgwMjJiM2MgcDN5aworNTUxNjcgYzEwNzVmMDY2NTBhNzYxZWI1MjlmMGM4ODNjMjAyMzI5NzZhMzg1NCBwM3lrCis1NTE2OCA1ZDA5NjkxNjdmNmRiNzZkNzFmMDMxZGI3YjkwMWI2MzgzZGFkNTNiIHJlbGVhc2UyNS1tYWludAorNTUxNjkgNTQxNzk1MzhhMzg3NzI1NWRjNjVhOGFmNWFmOGFiNjVlMmU5NTRlZiBsZWdhY3ktdHJ1bmsKKzU1MTcwIDQ0MzEwMmJmNTg5NTA1NDdhYjg3YmFiZGVhNzU1ZTA5YzhjODZiOWMgcHkzay1zdHJ1bmkKKzU1MTcxIDQxMTAyNzNhMjYxMTA5ZjI0NjY3MDk4YzA3Nzg0YTM5YzUzMjU4MzAgcDN5aworNTUxNzMgYmUxZTcwOGQ1ZDNkZjE1YjhmM2JmZjAxOTgxY2ZjNWY0OGUxMTBlNSByZWxlYXNlMjUtbWFpbnQKKzU1MTc0IGE1MjM0ZjNjNzU1MTFlZDJiYzBkZTQyZThjZmVjMmIzNjM5ZWFhNGIgcmVsZWFzZTI1LW1haW50Cis1NTE3NSA4NDNkMGNjYjAwOTRkZjc4Y2U3MjQzYjE5MzdhNjY4ZWFhMzQ2ZjM4IHJlbGVhc2UyNS1tYWludAorNTUxNzcgZmRmZGVlMTkxYTYxMmI5NGIzMzEyNGE2NDE5ZWMzMTMwNzQ2NDYzZiByZWxlYXNlMjUtbWFpbnQKKzU1MTc4IDIwNTg3MWM5NzE1ZGI2M2MxMTdlYmNkMGNkOTRhZmQ4ZGQzNDlhYzYgcmVsZWFzZTI1LW1haW50Cis1NTE3OSBhMTUzZjIxNGZhMWI4NDA4ZDU0NTM2OWVlNTQwZjVkZWQ5NzFjNjg3IHB5M2stc3RydW5pCis1NTE4MCBhNmViNmFjZmUwNGFjMmJmMzA0NDI4NWFlZjU1MmMwYjdkZmU0YmVhIHB5M2stc3RydW5pCis1NTE4MSBjNjU2ODU1MGIxYzYxMGRjNGI1Zjg3N2U1N2Q0OGEyYmViMDZiMGMxIHB5M2stc3RydW5pCis1NTE4MiA4ZTdjNjBiMTM1NmI3MzgzZmIzY2M5ODQ5ODQzMDFhZDQzNmM0ZTg5IHAzeWsKKzU1MTg0IDljYzRjM2YwYjU4MDc1YTQzODNlMjA0MmVjM2Y4MDZiYmVlYjdkZTUgcHkzay1zdHJ1bmkKKzU1MTg1IDcwNDcyYzE1N2JiOWMwMDUzODRlNzhkYjk1ZGI2NmI1YjJjZTdjMjIgcHkzay1zdHJ1bmkKKzU1MTg2IDhmNzdmOTYwNzExMzg4MDVjMmZjY2QwZmIzMWY2MjA5YjVmYTQ5NTQgcDN5aworNTUxODcgNmEwMTZmM2UwMDUxNjY3YzNlMzI0NWYxZWY3ODFkOWZhOGFjNTc4NSBweTNrLXN0cnVuaQorNTUxODggYzg0MDAwOTZkMmQ3MWM4ZjUzN2JkMWM4ZmRkMGVmZjg1YzdmZjc5OCBweTNrLXN0cnVuaQorNTUxODkgYmM2YWQ2M2NkNWYxZjZlMDg3OWIzZDJlODBlZTdhMGNkNDM4NzRhYSBweTNrLXN0cnVuaQorNTUxOTEgMmQ5ZTU4YzVhZDM0M2Q0NDE0NDhiNDcxMzkwNDFkNGU2NmM0ZjBiZiBweTNrLXN0cnVuaQorNTUxOTMgMjNhOGIzZGZiZTk1MzcxMGZkY2M2N2YwN2UwOGQxMWQ3NTlhMWZlYyBweTNrLXN0cnVuaQorNTUxOTQgNDRlYmFlNGY2MWM0YTJiMDAwZWM1M2U5MjQ5ODU3M2Y0ODNhZGZhYSBweTNrLXN0cnVuaQorNTUxOTUgMDUwYzk4Y2Q0MWM0Zjc0YWNkMmNlOTNjMWIzYTA3OGMzZjhlOWQ2YSBweTNrLXN0cnVuaQorNTUxOTYgNTI1MzMzNzBmMWFkNDAzYzIzMzY2MWYyZmFiMDA1MjM2NDU5YTNjMSBweTNrLXN0cnVuaQorNTUxOTcgMzcwYjkxNTMzYzUzZDhjMDA4NTk0NThlMzg1OWU5Y2Y0ZDk2ZWQ5NSBsZWdhY3ktdHJ1bmsKKzU1MTk4IGYwZGExYjdiOGU1YTJhZTQ5ZGRiMzI5YWVjN2I4MWVhZjY5ZjAzZDggbGVnYWN5LXRydW5rCis1NTE5OSA3NmU2M2UwMzMzNTYwNWRjNjNhZDkyNGI4ZTU5ZWNlNjk1MTZmYWMyIHJlbGVhc2UyNS1tYWludAorNTUyMDAgNWM3Mjg1MzQ5NzBjMWUyNjJhNzhkYzBlYzQ4MDQ4NDA5YzU0YmI3MCByZWxlYXNlMjUtbWFpbnQKKzU1MjAxIDdmZTZhZmNiZDNmMmE2YTY3NmQ5MDIyODg2NmNjY2IxOGYzODMxODAgcHkzay1zdHJ1bmkKKzU1MjAyIDY1MGZmOGQ3Y2MzODBhYTE0NWVkZjY4ZmFkZmZlMTZlYmU2MWQ2NWYgcHkzay1zdHJ1bmkKKzU1MjAzIDNhNGYwNmJjMjU0YmI1ZWRkYjM4ODZiZTZkZDE1MTVhZDM5N2Q2MzQgcHkzay1zdHJ1bmkKKzU1MjA0IDAyZTY5ODk4ODUyMWE5OTU3ODU3YWUzOTJmMTJkNThiYTg2Nzc1OGYgcDN5aworNTUyMDUgOWIxNGMxZTU4OTM2MWJjYTNmN2MyY2U3OTQ2OWE5NGFlMWUyMGRlYyBsZWdhY3ktdHJ1bmsKKzU1MjA2IGRkMmQ0MDdkY2ZkMGM0N2QxZTFhMDIyMGFlNTllODVjNDMxOGZhNGIgcmVsZWFzZTI1LW1haW50Cis1NTIwNyA0NzVjN2M1NDM3ZmM2MmI4M2QwZDcwZTk4MzY4NTBiZjVmNjgxYjNhIHB5M2stc3RydW5pCis1NTIwOCBhMzYzY2VhMzJiOWJhYWEwMmIwZmMzOGIxNDNhMjU1M2Y5MjVhY2FjIHB5M2stc3RydW5pCis1NTIwOSBhMzI0OGZlZmMwZGM4YjZhZWUwNTZjODU1MjQ2MjM0ZTA5MzRkNTc4IHB5M2stc3RydW5pCis1NTIxMCA4NWQ1MWNiOGFlNWVkODUyN2Q2MzU4NmUxNzk4Mzk0MzAyOWFmMTgwIHB5M2stc3RydW5pCis1NTIxMSA0YTk1MzNlOTM2NWUwZDk3ODE2NzQxMjkxODM1MGNlNzc0MDQ4Y2RiIHB5M2stc3RydW5pCis1NTIxMiBiMWJiZTgwMTExNTI4OTNjY2M1MThkNjc2ODQ0ZWRjMjUxMTViYjZlIHB5M2stc3RydW5pCis1NTIxMyBkMTI4MTFkZWNmOTRkMzdkOTlkZWRlZTYyMTg0OTA2YTc3OTM1MTQ2IHB5M2stc3RydW5pCis1NTIxNCA2ODhlMmJjMjA4MDI2MzhhZWQ1ODgzNWViZWNiODE3YTE0OTAxNjhkIHB5M2stc3RydW5pCis1NTIxNSA3YTk2Yzg2NDA1NzUxYmQ5ZWM5OThkN2VmZWYwMmNjYjVkN2UwYzk0IHB5M2stc3RydW5pCis1NTIxNiBkZDNhYzFjZDFjOTE5NmYzMmQxMjZhYjAzMzhlYTJjMWFhMTBlMWI1IHB5M2stc3RydW5pCis1NTIxNyA1ZjIwMjg2YjBkYTk5MzYyOThiMTYxNmI4ZWQ0YjU1NDkzMWMyOTAzIHB5M2stc3RydW5pCis1NTIxOCAyNDhkZmMxYmQ0NGMwMjViYWM5MDJiZmQ3M2UxMGUxMjk5MjUxOGU1IHB5M2stc3RydW5pCis1NTIxOSAyOTc3MzRmOGE2MjdhY2RmNmViYWQ4NTZmMGI1NWEzZGQyNGVjYWNkIHB5M2stc3RydW5pCis1NTIyMCA5MTVkNTI0NTVmZmM0YmZlZmMyMmI2ZDMxZTdlOTM2MDQ0OTg3OTExIHB5M2stc3RydW5pCis1NTIyMSBjNGE5OTkzZjJjZTZjZWFhMjA5N2YyODY1ZGFhN2Q1YjkyMWI2MDQ0IHAzeWsKKzU1MjIyIDk5MTQ0NmZmNmIxNWMwOGIwZGYyZmNjYzRmNGEyNGQ3M2ExZWU3NjIgcmVsZWFzZTI1LW1haW50Cis1NTIyMyA3NzVkNDRhNTQzOTk1NTBiZDU5MWU2YTExYzJhNTQxMzUxM2MxMjA1IHJlbGVhc2UyNS1tYWludAorNTUyMjQgOTg3MDkxODlkOWUxYzAwYWM5NGU2MTlhZTBiZjk4ZjU5NTFjMDZlNiBweTNrLXN0cnVuaQorNTUyMjUgMTA0MDU2OGY5MDJjYTJiMWI4NWFhYTM2ZGVmZDc5ODU5N2E1MWY0ZiBweTNrLXN0cnVuaQorNTUyMjYgMWQzMzQ5MTJhMTA0MGQ5ZmU4NTRmZTQ4MTA4YzA1NWVlMTQzNjkwMSBweTNrLXN0cnVuaQorNTUyMjcgNzU5NDcwOWU2MzFiMzMzN2VlNGJjNmZlZmY2NDc3ZTI0ODUzYWM3YiBsZWdhY3ktdHJ1bmsKKzU1MjI4IDhhOGJmMmMwNzRlMDRmMGJiMzI0NDRlZTQ4OGJiMjUwYjM1ZTg1NWMgcDN5aworNTUyMjkgYzVlYmY5YzIxOWJlNDY1MjA2MGM0ZmExMTAyNjJmN2I3YmIwMmExYSBweTNrLXN0cnVuaQorNTUyMzAgZmI3MDVmMThiZjNkNzY2NWY2NjhjNjBiM2I4NjdmNWU4MTA3MzVlYiBweTNrLXN0cnVuaQorNTUyMzEgYmFiOGE5YzdmNDllYjYyMDE3MmZiY2U0Mjc1OGMyNzg1ZjcyMDYzYSBweTNrLXN0cnVuaQorNTUyMzggYTZlNGYyY2JlZmE5YmQwYjM1MWFlZjRjNjMzOWIxM2U1ODMyN2MwYyBwM3lrCis1NTI0MSA0MzY3YjdhZjc1MzE5YmQ2NWY3ZTc4MWI5ZTk5ZmViNDA3MGUyNjdiIGxlZ2FjeS10cnVuaworNTUyNDIgOGVkZDc0NjI5MWZlZmRlZTZmZGVjMmQ4Mjc3NTZmZTBkMTNkYTRiOSBsZWdhY3ktdHJ1bmsKKzU1MjQzIDAyZDI0ODhmZWM2MGNhMTVjYjlhNjViZjJjNDVlN2M2NzZlNTI0ODAgcmVsZWFzZTI1LW1haW50Cis1NTI0NCBjZjlkZDdmMGY0YTIwZjAyNmEyOTQ3ZTBiZDI1Mzk0MDc4ZWRjMTFjIGxlZ2FjeS10cnVuaworNTUyNDUgNmM0YWE0NjExYzg4MWRjNjJjZTVhOWM0ZDY3OGU1ODIxMTAxNTAxMSBsZWdhY3ktdHJ1bmsKKzU1MjQ2IGNiYThjNmE1ZWNmMDI2MTY3NDY5N2M3ZjVkZjVlNDRmMzE4MDAwMzYgcDN5aworNTUyNDcgY2Y3OWZlZThiNzFhMTBhOGQ2OTlhNWUzMjMwNzJkNjVkYzg1MmQ5YiBsZWdhY3ktdHJ1bmsKKzU1MjQ4IDAxMTI3ODIxYWY3NTYxNGVhNTczYTc3OWZmMDYwZmU3MWI3NTVkMzggcDN5aworNTUyNDkgZDIzMTY4NWU5ZWE3ZDU0YTJkYzRmOGJmZDZjM2Y4NGI4NGU3YTkzMiBwM3lrCis1NTI1MCBmMjIzYTQ0ZGIxM2E2ODgzN2ZlOGZmMGUxMGEwZDUwYjc2NmU4NDYwIHAzeWsKKzU1MjUxIDliOWM1M2MxYWE1YzA5NWYwOWZiOWJiYTM4NmQ1YTE1ZTUzYjMxOGQgcDN5aworNTUyNTIgZGMzOWJmYzVjNzRlNjIyYmM1NDhiMmJkNWVmNDQ1ZTFiZjg1MDFjMCBwM3lrCis1NTI1MyA4MWQ5ZjUyNzBlODc1MmQ0N2MxZGFlMDNjNDU2NTA0MjYyNmYxNzYwIGxlZ2FjeS10cnVuaworNTUyNTQgM2VlZTA2Y2IxNWEzZWUxYmVlMzQ0MzFmMTlhMDQ1ZmI0OTcyMmMyMSBwM3lrCis1NTI1NSA3ZDk4YzEyYTM0NGRiYjAzMGM0ODE0OTY3MjZjODU3YThmYjAyYzhmIHAzeWsKKzU1MjU2IGQ5MWNjOGQ0OTI5NGU4YWY0MmUxMzQ4YmMxYmUwZTNhYjFmMTM3NjYgcHkzay1zdHJ1bmkKKzU1MjU3IDQ1NDhjZWIzMWM5NDkzOTkxNWVmN2NiNGYxNGRjY2IwN2VhMDhlM2IgcmVsZWFzZTI1LW1haW50Cis1NTI1OCBjZDI0MDNkMzcwZTBmNjdjNDFiNjlmZTI3YTAxZjM3OTUzYmI4OTZjIGxlZ2FjeS10cnVuaworNTUyNTkgYjhmYTRhYzZjNWYwN2M2MDlkZWY3M2Y2Yzg0YjNmNDg0N2QyNzY1NSBsZWdhY3ktdHJ1bmsKKzU1MjYwIDNmYTQwYjU5YjliNjhlMmZlYmJkMDViZTQ3MmYyYTQ0N2RjZTE4ZmQgcmVsZWFzZTI1LW1haW50Cis1NTI2MSA1MWM3NDEyMjg5NTgzZmZlYTE0NTExYTMyOWE2MTljNDM5ODVlNTU3IHAzeWsKKzU1MjYyIGJjZjU3YTE1M2IxMWE1NzBmZTBlNTQ1NTNkYmUyMDcyYmExNmE4MDIgcDN5aworNTUyNjQgZDdjN2ZlOWI2ZTk3MmU5MjU4NjYyYTNkZDY0MmQ3ZGFjZDJkYmY2ZCBwM3lrCis1NTI2NSA5MTUzOTJkNWYwYjg2NDZiMTZkNTE0NGJiOWRlN2QzNzZlOThjZDUzIHAzeWsKKzU1MjY2IDMyNjczYjg4OGMyNDRjZTE4Y2NmNDFlY2UwYTU5ODAxMTU5ZDE3ODYgcDN5aworNTUyNjcgNWEyZjU5MjBjZjc1MGZjZDU4Y2RkYmYyNTk0OGU4MDI1OWEzMjkzNiBwM3lrCis1NTI2OCA3ZDQ5MDM4ZTk5Yzk5MTQ4MTJkOWNlNDQ1NjhlZmJmMmI2MDM5YWI5IHB5M2stc3RydW5pCis1NTI2OSBlZTQ3ZmQ1YzBlNWQ3NDY3ZmViMjhlZWQxNjEwZjgyNTAwZWMyM2NjIHAzeWsKKzU1MjcwIGUxNmM4ZTVjNWNhNGMxMTFiNjVmOTFhZTlhMzg0YTlkOTc3ZjBjMmMgcHkzay1zdHJ1bmkKKzU1MjcxIDI3MTllMTdjOTI4ZDM2NjgwOGI5NDRiMGNjY2RlOWQxZTIzMDllZjAgcDN5aworNTUyNzIgZGRjNGJlMjc4NmZkMjU4MzVkZjhlNjZlMzI0MjNiYTgzOGJkOTBiYiBweTNrLXN0cnVuaQorNTUyNzMgMjBiOGIyOTU5M2MwZDk4ZDRjODE5ZmY0ZDhmZDJjMWZkNTBlYjFkMSBsZWdhY3ktdHJ1bmsKKzU1Mjc1IGUwNmUxOTZhMDVjZmYzODFiYzQ2ZWMzNjYwNTI4NzQyYjdiNGRlNzcgcHkzay1zdHJ1bmkKKzU1MjgwIDk3MDZmM2I0OTA2NzBmMzE4OTcwYzc2YWUxNTFkNWE4N2Q3NTFjMWYgcDN5aworNTUyODIgNzk5M2YyM2FkNDZjYTU0ZjEwZmI5YWM1OTUwMWMzY2RkNzY1ODA4ZSBweTNrLXN0cnVuaQorNTUyODMgZDIzN2Y0N2YyOTNmMjliOWFhNjA1MGZiMTgwYTYxYTI3NmRmNmJjNSBweTNrLXN0cnVuaQorNTUyODQgOTE3MDQwZGZlYzU4MzhjN2ZkMTEzZTcxZDExYzlmMWI2ZDgwNmJlNyBweTNrLXN0cnVuaQorNTUyODUgMjYxNzEzM2M3YWZhMjczODM0ODgyNjdlMThmZjMxNzIyMDE0NzY0NCBweTNrLXN0cnVuaQorNTUyODYgNjAyNmI4YTI2YzA1ZmY0ZDQ4NmM0ZTIzMjVlODUxODA4ZWEwZmNhYiBweTNrLXN0cnVuaQorNTUyODcgNDgyYjU5OTBkMmZiM2RmNjg2NzQ1NDNiZGZmZmE1YjBiMjExNWZhMyBsZWdhY3ktdHJ1bmsKKzU1Mjg4IGMxN2Q3NjBjYjZkMDZmMDk2MGMxM2JkZGZhMGJmOGJhYTJjOGYyYWYgcmVsZWFzZTI1LW1haW50Cis1NTI5MCA3YmJiOTdlMTRhZDZlZDEyZTdmMWM0ZmI2NjMwMTAyMTc4NjhlNzg4IGxlZ2FjeS10cnVuaworNTUyOTcgYTQ4OTNjNDgwMjY0OGI3N2FjMjY5ZTU1Y2YwM2M1YTcxMmI5M2M0MyBsZWdhY3ktdHJ1bmsKKzU1Mjk4IDkyZWI1YWU0YzE4ZjE1MWE1ODk1NmFlY2UyNzNkZTRkYTgwMDNlZWUgbGVnYWN5LXRydW5rCis1NTI5OSBhMTYwYjQzN2ZmMzVmZTE2ODI0ZmFiYmI2N2UyZmNkNGY1NTc2NjJlIGxlZ2FjeS10cnVuaworNTUzMDEgYjQ2MDA4NDQ3OTkzMzM5MWY4MTk4NDU5ZmFkM2ZlMzRiMGRhMTU2MSBwM3lrCis1NTMwMyBiN2U5MTM2ZDRjODM4ZjhlY2ZiYTdhZWI0NjMyZWQ5NzhmMzkwZWM4IHAzeWsKKzU1MzA1IDdkMjRhNjhkMGExYzYxNjM2MjJjZjQ3NDYwZjA0NDYxN2I4NDM3NWQgcDN5aworNTUzMDYgNjU2NjZlYzgzYzJjMDBjNzEzYjIwOTEyN2VlZThjZGQ4YmQ5NTEyZiBwM3lrCis1NTMwNyBhYWU1NDllYmE3MDc1ZjU0NmU3YzhlMjExZTc2ZGZjMGZhNjIzM2M4IHAzeWsKKzU1MzIwIGM0ZDU3ZGM2MGIwMTliNWUzZThmYjIzNWMzMTY1Y2EzY2ZlNzY2Y2IgbGVnYWN5LXRydW5rCis1NTMyMiAxNTIzYWE4MjcxNDY1ZTlmMjY1OWNlYjVkNmE4Yzk2ZDY2NTAwNDI0IHAzeWsKKzU1MzI1IGY2MGM4NzdkNTJjOGEwOTdhNWQ4MTEzZjlkYjNjZmVhM2UyY2I0NjQgcHkzay1zdHJ1bmkKKzU1MzI2IGM3ZjU0NjYwZWExN2VmYWZmYmNkY2MwOTI0MGZmYTZkNmM4NzUwMWIgcDN5aworNTUzMjcgZDZlNmY5ODJjNjM3YjY5ODA3ZDM4NzQ0MWVlNTYxNzM5OWZjODY3NyBwM3lrCis1NTMyOCAwMGMwMmM0NDg4Y2VmOTExZTBlMjEzNDA1YjhiYWU5NGU3NDYzZmJhIHB5M2stc3RydW5pCis1NTMyOSBmMzI1NmM4YzcyY2E4MTMwZGUzMWE2Yzg5N2NmNTI1NDQwZmNkZWUzIHAzeWsKKzU1MzMxIGJjNDNjYjIzMTY0MDQwODkyMzJhY2Q2ZGIwYmFlNjMyMDFiMjg1MTkgcDN5aworNTUzMzIgNTU4NTE4ZmY5ZDkxYWI2MjQyNmQwY2U3NjRhYmQyZTJjNDcyNmRiNyBwM3lrCis1NTMzMyA2ZGViNGJiMTAwNTlmOTFjY2NiOGJlZjFjNTI2ZjJhMDFjNjZjMjVkIHAzeWsKKzU1MzM0IDFkYjMxOTQxZTAxMzkxZTc5NmQ4NzIzOGVkYmY3NzE0ZmRiOGQxNzYgcDN5aworNTUzMzUgYjljNzI0ZGQ3MmM4MThmMWExZDM3MmNlNWY5MDRhMDFmMzVjYTRiYSBwM3lrCis1NTMzNiBkODEzZmMzNmI5NzAxZjUyNGI0ZTdiZWUwMjRhNzNiMTIzZTFlMmJiIHAzeWsKKzU1MzM3IDFjOWEyOTk2NTZiZTM3MWExYTI5N2NmNWViMDYxZDhlN2FlZTcxNjUgcDN5aworNTUzNDMgOWFkODQwNzBiMjJkODRmMTc1YTNiODkwMzY3Y2Y5MDY5MmI2NDE4YyBweTNrLXN0cnVuaQorNTUzNDcgNmNhM2Q1ZjNkMWJlMTMxZmY2Njk3YTc5ZGYwZTg0YmNhNmM0OTNhZSBweTNrLXN0cnVuaQorNTUzNDggM2UxZWI3YWY0ZWEwZDIxZTdmMWU5MzA1ZGYxNzUwZjE3N2Q5NTZjZiBsZWdhY3ktdHJ1bmsKKzU1MzQ5IDJiNzExMmE2MzU3MWIyZWUwYzQ5NDc4NDEyYTNiODg4ODdmYzMxOGUgcmVsZWFzZTI1LW1haW50Cis1NTM1MCAyNjM0OWE2NGVmNzAxNWJjMjBiOTkzMjI5ZjM1MGM0ZmJlMWY3ZDgwIHJlbGVhc2UyNC1tYWludAorNTUzNTEgZDNjZDI5MjBiZWI2ODdiZjIxNzFlZjc5NjEzODBkMzE2YmNkMjBkOCBweTNrLXN0cnVuaQorNTUzNTIgYzljNTJiODdjMzBiNWZiMzNhYzNhZjk0OWZjMDNkOTY4NDExZDAwNyBweTNrLXN0cnVuaQorNTUzNTMgYThiN2E4MTU5OWQwNDhhYWExNDI0ZDY1NDUxNGIzYzJlMDAzNDMxOCBweTNrLXN0cnVuaQorNTUzNTQgZDExNDZkNGRiNTQ5NDY4NDRmNDk5OGFmOGEwODkyYjk2NjZiODg1MCBweTNrLXN0cnVuaQorNTUzNTUgMjAyODZlY2E0NzQzMTVhOTYzYjFmNjEyMjQxOTQ1NjM3YWU1NTUxZCBweTNrLXN0cnVuaQorNTUzNTYgNDMwYjZlZDgwMTQ4ZTliMDA5M2U5ZDBjYzk3YmI5MjMxOWY5MmJlOCBweTNrLXN0cnVuaQorNTUzNTcgNmVhOTM3MDBkNzc5MjA3MDZmY2E1NGYwYjJkNzNlYzYwOWMxZjZiMyBweTNrLXN0cnVuaQorNTUzNTggMjk2ODU5NzExOGMxMzljOGJiN2IzN2VkNzNiMDNlMjNjODg0ZDMyYSBweTNrLXN0cnVuaQorNTUzNTkgMjkzN2Y1MzcxMzJlYTNmZmU0MzVmZTk1MzRkNjYwM2Q4MDRmY2QzZSBweTNrLXN0cnVuaQorNTUzNjAgYzdiMTU1YWQzNzkxMTkwNGU1MWM4NWZlZjRjODJhMTA2NzgxY2JkMCBwM3lrCis1NTM2MSAzNzg3YTNmYmM0NThkOGRiYjljOTdhY2IyYmYyNzlmYTkxZDdkNTlhIHAzeWsKKzU1MzYzIDc4ZDc2NDM1ZGE5YWM5Y2UzZjJhMDBlYzVlZTc5NDg5YTY0NjZiYzggcHkzay1zdHJ1bmkKKzU1MzY0IGJiYjA5OWQ0ZWM4MDI0YmY4MDBlMDJjMDYzNWYyOGM3OWQxN2IxODUgcHkzay1zdHJ1bmkKKzU1MzY3IDA1MmQ1NWU4YWY3NzMwYTc0ZjI1MDgyYTcxNDNkMTc0Mzg2MjI4ZmEgcDN5aworNTUzNjkgOTJmNzE5ZmE5YjE2ZTkwY2FiYjk1NWE0MGMxNTY1ZDQ0MmE2NzA1OSBwM3lrCis1NTM3MCA0ZTQxYjcyZGEwZmM2NjM3MjQxZjdjM2VhMzQ0YjdkMTFmMzBjYmYwIHAzeWsKKzU1MzcyIDBhZDY5NTFjMThmN2M1NzgyYmNjNjI3ZGU0YjY0ZjljNjk3ZjhlMzMgbGVnYWN5LXRydW5rCis1NTM3MyA2OWUxZjdlYzBjZTkxNmYxZjZlMjUxMzk0YzZiNjFmNWJjMWZmMTlkIHJlbGVhc2UyNS1tYWludAorNTUzNzQgZDBjMDc2NjY5NzMyZmQyZjg0ZjBhYzgzODMxM2QwMjcyODViN2M0MiBwM3lrCis1NTM3NyAwNDI0YTlmYTRiMGI0ZDRjZmMzNjhlOGIwNjcyN2ZlMWQxMWViZGYzIGxlZ2FjeS10cnVuaworNTUzNzkgYjAxNTQ2ZjM2YTIyNjMwNGM5MTk1ODNmM2NiNzc3YzI2ZjhiZjEzYyBwM3lrCis1NTM4MCAwN2YwODMyMjk3YjFlNzJlNWZmZTZhZTY0Njk4NGVmOTRlMTkxMTljIGxlZ2FjeS10cnVuaworNTUzODEgY2NhOWUzMmVlNTUwMWJkOGY4ZGQzZGMxYWMzNTZmNmFmMDIxZjA2MCBweTNrLXN0cnVuaQorNTUzODIgZGM2YjVmMzU1ZDVhOGNiYjE1ZjVjMjNiN2E1NDBmYTIwYTY4YjJhMCBweTNrLXN0cnVuaQorNTUzODMgOWI4MjkzYmY4ZmVjOGJmZjlkMzk4OTY4MzE3NzI3YmRkNjM3M2JjNiBsZWdhY3ktdHJ1bmsKKzU1Mzg0IDc1ODFlYzE2MjMwZWYxODMxODNhZWJhYWVjM2RhNjZhNzc5MmY5ODYgcmVsZWFzZTI1LW1haW50Cis1NTM4NSA2MWM0YzIyMmEzMjcwZDgzMTI1ZGNhMjU5NDUwMDZlYjMzZGI3YmE4IGJjYW5ub24tb2JqY2FwCis1NTM4NiA2ZjEyOTNhYjNhYzQ4ZTgzNjZlYTRmZWYyMDQ1ZGFmMWU2MzU0YWFkIGxlZ2FjeS10cnVuaworNTUzODcgNjkzYjhkOTE0NzcxNzA4MDlhZTkyYjM1NGQ4Y2Y0NTlhNDA0ZjhkMSByZWxlYXNlMjUtbWFpbnQKKzU1Mzg4IDM4OGU0ZjIxZTc0OWUyN2RjMDNmOGEwNDQ3NWVjZTY0MmY4ODc5NzQgcDN5aworNTUzODkgMmVjYzI5NjQ0M2MzMmMzYzExMmYzNmM3MTEyMGEwNDRjMmEyNmI3NiBsZWdhY3ktdHJ1bmsKKzU1Mzk0IDc1NmUxZDQwNGNiODYxYjllMWRhYTBmNDMwMGQyNjg5NGQyOGZjYWUgbGVnYWN5LXRydW5rCis1NTM5NSBlM2VhODgxYjE0ZmVkMmI1M2I2ODQwOWE0NjIzMGNkZGVhYzk3YmJlIGxlZ2FjeS10cnVuaworNTUzOTYgNzlkZDkwNzg3MDkxZGZlM2QxZTBjNjQ2NTM3MWFkZDgzMmJkZmUwNCBsZWdhY3ktdHJ1bmsKKzU1Mzk3IGNjNmY0N2YxZTEzYTQ0NmRkNTMyNzI4Zjc2NTEyMWIzZWJiOTkyMWMgbGVnYWN5LXRydW5rCis1NTM5OCA2ZjBkYmE4MDc3MzRhZmM2YWY5MGY0NzIzYTFlMDAwNGY4ZTg4N2RhIGxlZ2FjeS10cnVuaworNTU0MDYgYzEyYTMwOTc4N2QzY2M4ZjM5NDMwNWIyYmQ1Y2Y1ZTNkNmNmNmIyMyBwM3lrCis1NTQwNyBiMDg1ZWI2NmI3ZjZkYTZlMjQzNzIzYWJkMTFiYWEzMTkyMDM2YzYwIHB5M2stc3RydW5pCis1NTQwOSA0MWExODMwZWVlMTY1MThkYzMyNjYzOTgwMmNmNTcxZjY5ZjcxMjFkIHB5M2stc3RydW5pCis1NTQxMCBlZGE5ZTYwYzk3NDU0NzhiYzY5ZjE1Y2QxODVhZmM2NGJlNDVlMjMxIHB5M2stc3RydW5pCis1NTQxMSA0ZDE1YWQ0MTY1MWU0YzBmNjhlY2VkM2ZkYzU4ZWY5YTEzNDYyYjc2IHJlbGVhc2UyNS1tYWludAorNTU0MTIgMTUxMTg5YzcyYTM3MmI5YTIzNDhmYTg3ZWQ0ZjNiZTlhMGNhZTIxMiBsZWdhY3ktdHJ1bmsKKzU1NDEzIGE2Nzk2YTI0NDgxY2U1MDEzM2I3YTMwZGI0N2U5NzQzOTJlMTA4YWQgcDN5aworNTU0MTQgNjg5YmFlMDc2N2UyMGMxZWRiZjZiZjdmNTA2YjI4ZjY4NjMxM2JhYyBkZWNpbWFsLWJyYW5jaAorNTU0MTUgYzI0MTFiZGI2Mjg2Y2ZlMTYzNjEwMGMxMWIwN2Q4MTc5YjUyMjhhMSBweTNrLXN0cnVuaQorNTU0MTYgNjA5NDViZGIxYjc1NDg1NmExOTQ3M2MxMjQ0ZjljZGI5ZTE3YjJhZiBweTNrLXN0cnVuaQorNTU0MTcgYjBiNTE0YmFkZjBiMGJhOWZjOWVjYTVjYTc2ZDdjMWVlNTc2MTQyYSBweTNrLXN0cnVuaQorNTU0MjAgMTNhNmM2YmVmNjA5NzAxYTc3NWIyYTY2MzU2NjNlNTkxN2ZmZWRiZSBweTNrLXN0cnVuaQorNTU0MjEgMGVhZDEwNjRlYWQwMDJkN2ZkZWY5OGFiYzQzMzg2MWI0ZGM0OGIzMiBweTNrLXN0cnVuaQorNTU0MjIgZWRiNGM5MDI4YmUwMDJhM2VhZTA0NDQ1YWQwMjIzNWY5N2NlYTA1YSBweTNrLXN0cnVuaQorNTU0MjMgMWE5Y2Q3NjM2NGUzZDZhMjNjZGZmMjI2OWFmM2E1NGYzNzMwZTcyZCBweTNrLXN0cnVuaQorNTU0MjUgNWQ5ZGQxYjhkOTA4Yjc4Y2M5YmI0MjA4NzIyOThmNWQzY2RjZjExNCByZWxlYXNlMjUtbWFpbnQKKzU1NDI2IDQ3YjE1OWQ2NDBhNDU0ZGVjZjZhM2I2NDNjZmRjZmNjNjM5YWJkMjAgcmVsZWFzZTI1LW1haW50Cis1NTQyNyBmNDNlOWQxZmFiYWE4YjZmYmU0MDY1NjYyNTU4MDZjNzM3ODAwNDdmIGxlZ2FjeS10cnVuaworNTU0MjggOGZlOThmNjBlYjZlMzc5N2MzNTRjNGI5Y2VkNzMzZGMwYjYwNDcwMiBweTNrLXN0cnVuaQorNTU0MjkgMTQxZTJhZWZmYmFhNDNlYjM4YWIxNzBkYmUzOGRlOGQ0ZmQwOTViOSBweTNrLXN0cnVuaQorNTU0MzAgY2U2MGY0N2IxN2EyNTQxYzliNGJkODJjODAwOWE2ZDJhYmI2Y2FlYiBwM3lrCis1NTQzMiA2NWMzYjQzMmY1MDFiN2ZmM2RlNjkxM2Y0MjM0ZDFlOTQ4MjIzNTdjIHAzeWsKKzU1NDMzIGQ2YWE3ZWRmMjE3YTY1MjBlNjI3MTgwODE2N2M4MDg2NmVhZWVmYTAgcHkzay1zdHJ1bmkKKzU1NDM0IDQ3ZGM3MTYwNTM0MWQzYTk3ZGRkZDE2NmY5MzZiOWViODI0ZTdiYWEgcDN5aworNTU0MzUgOGFkMWM4OGNlMWFjNjc4NGQ3NDdhZGI4ZmMxYjY5MjFkMjkzMjBjMyBweTNrLXN0cnVuaQorNTU0MzYgYjU5Mjk4NWE5NTNmZjkwZGQ3N2YyNzk5YzEyMWQ1NDliZGQ2OTljMyBweTNrLXN0cnVuaQorNTU0MzggYjI5ZDcxZDQzYzgwOTFmMzI1MzAxZjQxZWUzOWYyOGU5YTA5MGEyMSBweTNrLXN0cnVuaQorNTU0NDEgNjUxZmEyYzljMmFiZTVmMzQzYzFhYmY3ZGFiZWZlZDRkNmFhOTRmOCBweTNrLXN0cnVuaQorNTU0NDMgNmQ4ZDY2MDUwMDAzZjFmODgzZWVkOWMwNjJjMzdmNjA2MWIwYjc5NyBweTNrLXN0cnVuaQorNTU0NDUgMTM2NDFhZGJhNmVjYzYwNGRmODA3ZmExOGQ0ZjU5YTFlYzJmYzdkMSBweTNrLXN0cnVuaQorNTU0NDYgZjE5ZTYzMWJlMTAxYjdhZjgyMjhlNDcyYmUzYTg4ZmQ4NDQyNmZkYSBsZWdhY3ktdHJ1bmsKKzU1NDQ4IDRhM2E2Mzc2OWQzNGE5MzQwZGRiOTUwNzQzODg3YWYxNWY5MDNlODggbGVnYWN5LXRydW5rCis1NTQ0OSBkNGRiNjI2YzIyOTA3NjZiODg2MmJkNTBiZDFiNjk1N2VhN2QwNmVlIGxlZ2FjeS10cnVuaworNTU0NTAgMzEyYzExMTlkYzE0NmE3YTNiNjFhZmZjYjdkZWQ3ZDU1MTZkOWQ3ZiBsZWdhY3ktdHJ1bmsKKzU1NDUxIDI5OTg3OGQ2MmUyZjc5ZTYxODRmZGE4NDdlNTVlYTdlZWM1NjdlYjAgcmVsZWFzZTI1LW1haW50Cis1NTQ1MiAwZjkzYjcwMGM0YzlmMDFmMTA1ZWU1Mzk3MGIyYjY4YzBjNjY3MWIyIGxlZ2FjeS10cnVuaworNTU0NTMgNTE1ZTI1NjRlY2E3ZmE4MWE5ZjdkZjNhZDQ3YjZlY2MxMmMwMjU1ZCBsZWdhY3ktdHJ1bmsKKzU1NDU0IDRhNjdmMTAzODMzZWI4YzUyZmY1ZDYyMjI5OWQ3NWM1ZGE4YzYxZWIgcmVsZWFzZTI1LW1haW50Cis1NTQ1NSBmMTRhNWIwMDVhMWUyYzRlMzhjZDVmNjUzYmRlYzliMmNiM2E1YzRmIGxlZ2FjeS10cnVuaworNTU0NTYgYmVlOGQwMWVmNDJjN2IxMmFmYTk1OTg2MjgyNzY1MGNjN2RiOGE1OSBweTNrLXN0cnVuaQorNTU0NTcgMTMyNmIwYjJhZmEwOTE1M2NiYzg5ZWYxYmU2NGE4ODAwODYzNDM5ZCByZWxlYXNlMjUtbWFpbnQKKzU1NDU4IGI3ZmI5NDJiNDAzZTllOTFiMmFkYjU2YWJlODkwZjk0YzUyMmIwMzkgbGVnYWN5LXRydW5rCis1NTQ2MCBjMmQzMmI1YWU5MGIzYTMxM2ZkOGVjNzY3MzhlZGFmNmMwNDcyODk4IHAzeWsKKzU1NDYzIGQxYzM4YWYwNjViZjM5YzE5NDg0ODA3NDRlYzQzMTEwODUxZjU2ZDIgcHkzay1zdHJ1bmkKKzU1NDY0IGVjYzY4NTkyNWI1MmQzYzA0MzU5OTZmYWFhYWRiMDJkZjUyM2YyN2EgcHkzay1zdHJ1bmkKKzU1NDY1IDZkMjQ2YWM2MzE5ODJkYTU5YWMyZjM1MjQ4ZmM5ZWViN2ExNzI3YmIgbGVnYWN5LXRydW5rCis1NTQ2NiAwMDQxM2Y3MGNlNWMzZWJjNjk2MjQ0NDY2MzkzNmEwNGUyNzkyZDI2IHB5M2stc3RydW5pCis1NTQ2NyA3NzlhMjEwNTM3Nzc4ZDU0ZDA3MjAyNTFlNTc2NDJlZTQ1NTZmN2QwIHJlbGVhc2UyNS1tYWludAorNTU0NjggYzAyOGIyNzc1YTlhNGVmZmE1ZGEwNjYzZjkyYzAyYmZhZWU5YjhiNyBsZWdhY3ktdHJ1bmsKKzU1NDY5IDViZWYyYzIyYmY4NTcwNmUyYjRhYjRjMjA4MTBjZDUyYWY0Mzk0OGQgcDN5aworNTU0NzAgMzEwMjlmNmViY2EyYTg3ZWUzMmVjNzc4YWQ4YzM5MjI0OTVhNjVjMCBsZWdhY3ktdHJ1bmsKKzU1NDcxIDY3Y2I4MTgzNjBmMGRjNDcwYjQ0MzFhNGNhOTcyNjkxZDkxNmEzYWEgbGVnYWN5LXRydW5rCis1NTQ3MiA2MmNmMmNiNzRlMzUxYTZjMTdmYWYxYzdmOTEzZWVlZTIzZjU3M2Q3IHAzeWsKKzU1NDc0IGMwZTg5ZDBlZTBlNWJhODJiYmU5ODY3NDQ4ZWJmYjhiYjRiMGM4MmUgbGVnYWN5LXRydW5rCis1NTQ3NiAyYzAwYTE5MTAyNzFjYjU3ZDQyZTFlNWM3ZDc3ZTA0ZDFkN2ViZTYzIGxlZ2FjeS10cnVuaworNTU0NzcgYTU4YmE2N2ZhZjFhYmYzODk0YWEzNTYzMzYyNTk2OWUzODNlNjUzMSBsZWdhY3ktdHJ1bmsKKzU1NDc5IGUzNWYxZWUyMmFiODg5MzE4YzA3MjhjNzRkNTI4YTZiZmU1YThlYWEgbGVnYWN5LXRydW5rCis1NTQ4MSBhYzhhNmRlZWY5NzQwZDhkNTJlNDI2M2EwNmZmZmFiNzI2YWRlNmU1IGxlZ2FjeS10cnVuaworNTU0ODIgMzVlMThhMGQxMGYyNmJjZjQwMzQ4MDEzM2FmOGVhZTA3Y2FkYjY3MiBsZWdhY3ktdHJ1bmsKKzU1NDg2IGQyNGM5ZTQzMmQ1MjRmYjAyYzkxYWM4ZWY4NDQ1YzNiZjU0NjJmN2EgcDN5aworNTU0ODcgMjY3MWUwNmJhYTRjMDdiMzE1OTkwNGQ1YzRmYTNlN2JlOTU2YTc0MSBsZWdhY3ktdHJ1bmsKKzU1NDg4IDk5M2Y4YTliOGFiMzk5NzQxODVmMzVmMjMxMDU3MTdkNTIyMzEzZWUgcHkzay1zdHJ1bmkKKzU1NDg5IDk0NTdiOWY1YmRkMTA5MzJmYjJjMTJiYzI4NjhiNmFkNjM3ZjNlZmIgbGVnYWN5LXRydW5rCis1NTQ5MCA4MWIxNzhmMGIxZWYzNzc4ZWRiNWE1ZWZjMWI3YjYzNTczY2Q5ZTYyIGxlZ2FjeS10cnVuaworNTU0OTEgM2QzYmYyNzQwOWU2MjAyYmY4YjQ3NWEwMGFhZmJlMjFkOTQ5ZDJmOCBweTNrLXN0cnVuaQorNTU0OTIgMTQ0NmI5ZmNhMDFkYmQzNjRlYjlmYzA4M2YyMGNjNWI0ZTlmZjdkNiBweTNrLXN0cnVuaQorNTU0OTMgZWJiMGI2ZDZkYWRhMjgwMjFiOGFhZWRiZjdiOTUxODYyNWRiNjFiMiBweTNrLXN0cnVuaQorNTU0OTQgZWUyOTUxNDQ0YTg5NjQ2NDE2ZmMwMzA4Y2U0YzNlOTA2ODJlOGY2MyBweTNrLXN0cnVuaQorNTU0OTUgYTQwNTczMmEyNjJkYzc0ZjJmYjUwZjZkN2MzMTU1NWM2YzE2NWY4YSBsZWdhY3ktdHJ1bmsKKzU1NDk2IGQ3ZjZkNmY0NTYyZWU2MWUxNmYwN2RiNmNmNWMxNTRhZGEzNzNkZTYgcHkzay1zdHJ1bmkKKzU1NDk3IDhlMDYyZTU3MmVhNGQ2YWU2MTU3NzlmY2NjZjIyOWU4NjA5ZTc2ODIgcHkzay1zdHJ1bmkKKzU1NDk4IGY5OTQ5YjYzZWFiM2ExMjYyMTk4ZmE3NTU3ZDgyYmJjM2E0NjQxNGMgcHkzay1zdHJ1bmkKKzU1NDk5IGQwN2QzNGI1M2RiNTgwOGM0ODQ4OTg2MTEyYzhmMzBhM2MwNTBjYWEgcHkzay1zdHJ1bmkKKzU1NTAwIDUwZGFmYTIyYjhhNGU3YjZiNDAyYThmMzc3NGJjMmI1ZWVjZGU1OGMgcHkzay1zdHJ1bmkKKzU1NTAyIDdjOWRkZDRhMDgxNDZmNmRjM2M1Y2M3ZDAzNzU3Yzg1NzI4ZDQ3YTEgbGVnYWN5LXRydW5rCis1NTUwMyAzZDA1ODU4NzY5MWRkNDliOGFiODU0ZThiOTUyMDgzOWFjN2EzODUzIHJlbGVhc2UyNS1tYWludAorNTU1MDQgYTkyMjdkN2EzNGZhOGU3MTQwNzZhN2I3MmFmMWE5ZDdmYzAzNjFmYiBsZWdhY3ktdHJ1bmsKKzU1NTA1IGVjODNkMjEwNjVhYTM2ZmIxZWJiNDEzZGU5YTU3ZjA2OGRjMGRlMTUgbGVnYWN5LXRydW5rCis1NTUwNiBlYTdhZTg5MWY5Mzg5NGNhZTBlM2JlMTFkZjg2ODMzMWUwYWJjZGY0IHAzeWsKKzU1NTA3IGM4OTc1NTlhODlmYzk0NjVkNDI5OGUyMTI5YzJhYzk5ZjMxNzczMGQgbGVnYWN5LXRydW5rCis1NTUwOCBiZmM3M2Q4NDllMjhhOWRlYjIwMDZlNWU3OGViNDY4MjFhNDliODcwIHB5M2stc3RydW5pCis1NTUwOSBkYjQ5YTEyNDczOWRlZmU2MzM0YTQyN2U2YjQxODlmZjE5MzFlYmRhIHB5M2stc3RydW5pCis1NTUxMCBiNWFjYTAyOTViNzkyZmFhNzkwOTYzMGZjOTQzNzhjMTdjZWQ5YmY0IHB5M2stc3RydW5pCis1NTUxMSBhZTY5MTIyN2ZkMzQzN2Y5ZTdiNDUzOGZiYmY3ODllZjAwYmZlYjRlIHB5M2stc3RydW5pCis1NTUxMiA5OGVmNWZmY2ZmMjg0M2I0NWE1ODQ4MzY5NDc3ZGFmMzNlZmQ5OWRjIHB5M2stc3RydW5pCis1NTUxMyBkZDgwYTRjNWY0N2QwNGQwNWE2MjQ0NzM0NjQwN2I4YTVjNzY2YzMzIHB5M2stc3RydW5pCis1NTUxNCAyNGI2MDYyMmI5NDRkMDRkZmUxMmZjNjgyOTE3Y2JlN2I5MDY5ZTM3IHB5M2stc3RydW5pCis1NTUxNSA4NDNmN2VmYzA1OGYyM2M5ZmYxMjFjM2ZjM2Y5ZGQ4N2QxNGZhN2IxIHB5M2stc3RydW5pCis1NTUxNiA4YzNlNDBiMTc5YmY0MTRmYWIwYjdiZGEyOGY3OTJhNWIzMWI2MGY3IHB5M2stc3RydW5pCis1NTUxNyBlYjQ1Zjg1YzRjNzkyNjNiZTRhNjI5NTUxZWI4N2Y0NzY5YjAwNjNlIHB5M2stc3RydW5pCis1NTUxOCBhN2JlMTQ4ZjdjNTYwODA2NDA5MWVhMTJiNmM4MjgyZmRhMWUyNjc4IHB5M2stc3RydW5pCis1NTUxOSBmN2YyYTQ5YzFmMmU1NGUzYzU4ODRkNDE1N2E1N2Q2MjFkMmFhYmRkIHB5M2stc3RydW5pCis1NTUyMCA3MmQ3YzBmM2JmZmVlOGYwN2Y0MjljZjM2MjQ1ZWQyN2E1NTllMGU5IHB5M2stc3RydW5pCis1NTUyMiBmZjdiZWZlOTE5YjViMTY2YjgwNzk4N2VjNDc1YmZiYThkZjM3MTU2IGxlZ2FjeS10cnVuaworNTU1MjUgYTBlZTNiMmJhMzYxYzNlZTMzOTQ4MTQ4NTcyNzk2OGEzNGZiZWExMCBsZWdhY3ktdHJ1bmsKKzU1NTI2IDRjYmY5NDk0MzZlYjU3YWQ2ZWZhZGY4MWJmOTRlYWEwMjkyNmIzNjIgcDN5aworNTU1MjcgOGMzNTc4OTM0ZGY2ZGE4N2MyNjE2ZDEwM2FmZDZkNmE5MTRmZDQ0MiBsZWdhY3ktdHJ1bmsKKzU1NTI4IDlhNDQ3NTE0ODU1ZjExNzFmNDYxYTk0M2E4ZTlhNTg5Mzk2NmZiZDUgbGVnYWN5LXRydW5rCis1NTUyOSBhNmM5MmRlZWFlMjdmMmZmZmVhMDAzZTE1NjcwMmFiY2M2ZWRkNWE1IGNweV9tZXJnZQorNTU1MzEgODE0MDc3ZTdhZGVlM2FjZjcyMDE4MmYyOWU4NmNiNzA5Mzg2YzZiNCBweTNrLXN0cnVuaQorNTU1MzIgNzA5ZjgyZTJhNTVjYjQ1NGMyZDZkYjU1YTIzOTRhNDRhYjYxZjJlYiBweTNrLXN0cnVuaQorNTU1MzMgYWIzOTY2MmU0NTRiY2U0YjBlNDkwYjA0YTY1Y2E5ZjUzYzZlOGQ3OSBjcHlfbWVyZ2UKKzU1NTM0IGUyNDBkMjBkYTNlYzhmZWE4NTUzOTQwN2MzMTYwYjNlMjQ4M2NmOWMgY3B5X21lcmdlCis1NTUzNSBlOGY2MjRkNDhkYTJkZGYxZTg0ZTRlYjJmZmU4MTVmMDYxMjk3NTYzIHB5M2stc3RydW5pCis1NTUzNiA1NmU5MDA3Mjg5Mjk1MzA0NjFjYjE1N2I3Y2FhOTcwY2M4MTRhYTgwIHB5M2stc3RydW5pCis1NTUzNyAyMzMyMzc3MDdlYmM5OTc5Y2EwOTBkNDI1MDM3Y2RiNjgxZjYzYWUwIHB5M2stc3RydW5pCis1NTUzOCBiZmU5NTMwNDZkMDViMjI2ZmQ4OTZjOTA3MDA3YmEzOWFkYTQ0YmFjIHB5M2stc3RydW5pCis1NTUzOSA1MjNkZjFkZTBhNWMyYjhlYzIwNjYwMDkzYjdmNDhmMzdjMzA5YjJlIHB5M2stc3RydW5pCis1NTU0MCBlYjE4OGQ3ZmVhNWQ5OGU0NjY3MmJlYzNiMjEzM2ZjZTU1YzM0NDc1IHB5M2stc3RydW5pCis1NTU0MSAyMTFkYzlkNjM2NzNiNWRjN2Y4ZmM0ZmNiZTQ2ZTVjMjk1MDM4Y2MyIGNweV9tZXJnZQorNTU1NDIgMTI5Zjk2NTNiMGEyMzlmMmQ3ZjYyMWEzOTkyNGI3MTkyNTNiN2I2MCBjcHlfbWVyZ2UKKzU1NTQzIDFmNzg5MWQ4NGQ5M2ZlMzY0YmE4YjIyMmYxZTQzYjgzMmM2N2U1N2QgcHkzay1zdHJ1bmkKKzU1NTQ0IDQ3NzRhOTRkMmU2ZDY2NWU5NDlmNDZmOGM1MGNjZWNjZDA2ODE3Y2IgcDN5aworNTU1NDUgODJlNWRiNDk2MGVkZmIzNGIxMDkxOTVkMzNhNDI5ODIzOWE0YTdhNiBweTNrLXN0cnVuaQorNTU1NDYgOWNlOGZhMGEwODk5NzI3YmEwM2EzNzMwYmFkMjM0MWU2MjRhYjA2NiBweTNrLXN0cnVuaQorNTU1NDcgMzA4ZTYzMjcwMmJmYTRhZThkNWM2ZGE0NThhZTk3YmRmNTFlNjAxZSBweTNrLXN0cnVuaQorNTU1NDggMjFkYzQ2MjliNzEyMTQ1ODI4MWFkOGEwNzUwMzM3OTQyN2ZlZjRlZCBweTNrLXN0cnVuaQorNTU1NDkgY2YxNTE5NjdlZWEzY2YwMTU0MGQwZDQzNmE5YjQzZDkwYTNkYzMyMyBsZWdhY3ktdHJ1bmsKKzU1NTUwIDZmOGY4MjI4MDU0NWRkOTNkMDYxMjE2MWJkMzRkYzE2NTRlNjYxY2MgbGVnYWN5LXRydW5rCis1NTU1MSAzOTc5ZjllMmQwMjYyODdmNzkwMTBjZGNhOThmZjUxOTI3ZDNhY2I3IHB5M2stc3RydW5pCis1NTU1MiBjZjA4OTFmMWQ2MGFhOWRiMDU1OGNlMzVjN2U3MTk1OGRlOWQzODU4IHB5M2stc3RydW5pCis1NTU1MyBlNjMxMDFmYWFkYTY4YzIxZWM3ODkwZDcyYTM0NjY1ODNjMTJjY2EyIHB5M2stc3RydW5pCis1NTU1NCA4NmE5ZDVmNDMzMDc3NDQyMzU4ODc0NGYzZjRjMmI4ZGIwYmEyY2NjIHB5M2stc3RydW5pCis1NTU1NSAxMDQyNmFkNWE2ZTBiMTM3ZTUxNjBhNjFlOTU3MzZiNzE5NGY3ZTMyIGxlZ2FjeS10cnVuaworNTU1NTYgMDU3YTljM2QwNjdkMTEzNDZjN2RmNDE1ODhiY2ViMWRjMTcwMDBiYiBweTNrLXN0cnVuaQorNTU1NTcgNDFjZmNmZGUwOGE5OWE3NDVmN2FiM2VhZmJmNDNjNTAxODZlY2YzMSBweTNrLXN0cnVuaQorNTU1NTggMmY0OGM1NmM1ZTgxNjkxNTJkNThiYmU1NDBhODU3M2NkYzk4MGU2NCBweTNrLXN0cnVuaQorNTU1NTkgOThjNjZlZmM5NTUzMzNhNWIzMjE4MGU0YTk0OWI5ZTQ2NzBkNzdkYSBweTNrLXN0cnVuaQorNTU1NjAgZTRlOGIxMjc3MGU0MDZiYjNlMWE4ZGU4MGRjNTljNGNhYTE1NDk2YSBweTNrLXN0cnVuaQorNTU1NjEgZTZmYzY3YWQ5YzU0YmMxZGRkYjIxYTZjM2IyNWMzYWIyNGQzOTRiZCBweTNrLXN0cnVuaQorNTU1NjIgOTY5ODY4ZGYxOTM4YmM0ODJmY2M5OGVmNGI2NzRmN2FiNmJmODE3YSBweTNrLXN0cnVuaQorNTU1NjMgNDZhOTRlYWQzZDY4ZGUzYjMxY2Q3YTNmNjA1Mzg1NTExYTUwYjk5NyBsZWdhY3ktdHJ1bmsKKzU1NTY0IDI0OTAwNzY3OTUyNDRkMDUyZGMxZWY4YzA0NjllMmI3YWZkNjY5YmUgbGVnYWN5LXRydW5rCis1NTU2NSA5OWUzMzA2OGMzMzQ3ZGMyOWVlYTI4ODhlOGZkNzcxMjhiMWUwNzc5IHB5M2stc3RydW5pCis1NTU2NyBjZWMyYTljMjAwYmEyY2EyY2I2YWU1ODdhMjUxOTJkMDEzMTc3NjI2IGxlZ2FjeS10cnVuaworNTU1NjggNTIyYzQ5MzhiZGY2ODE4ZTk4ZmI1MGY5ZjNkOTY4YzhhY2YwOGQ0ZCBsZWdhY3ktdHJ1bmsKKzU1NTY5IDJjOGJhM2ZhYWY0MGMwNTk1MjkzNjhkMTE0OTU2MzkyZjVhZTVkN2EgbGVnYWN5LXRydW5rCis1NTU3MCA2MzE5MjcxYzIzMjYxN2Q4YWViZDU1OTdiNzA3NmNiYmQ2M2QwYTg3IGxlZ2FjeS10cnVuaworNTU1NzUgZjU3Nzc1YzVkMGI0MjM2NjI4YzI5MDAxMWVjYTQ2OTY3NWQxNTM4NiBsZWdhY3ktdHJ1bmsKKzU1NTc2IDFhMzg1ZDBhZTgyYmEwZWE1MGI3NDAyYmU3N2M1MDQwMjkxN2RmMTEgbGVnYWN5LXRydW5rCis1NTU3OCAwZTgwZmJkNzMwMDVjNmVjZjZhOTE0ZTVmMDE0OWI2NzMyZmJlNGZhIHJlbGVhc2UyNC1tYWludAorNTU1NzkgY2MwYWVlZTU4YTRkODcyOWRhYTMwY2E5MmI5OTM3NDllYzcyYzlhNSByZWxlYXNlMjUtbWFpbnQKKzU1NTgwIGNlYzZkOTZjMDg0YTE2OTZkZjA4NTBhODU3OWQyZDNjM2RjYzFmNmIgcmVsZWFzZTI0LW1haW50Cis1NTU4MSAzNGU4ZTAzZTkyMWY3ZTQ3N2FmNmEwYzUwZGEwNmMzODAxMGQxNDVhIHJlbGVhc2UyNC1tYWludAorNTU1ODIgMmY0ZDkyMGE1NmZjMGY0MWUyMGNkYjU0ZWYzM2FmOTZlMzE3NDNlMiByZWxlYXNlMjUtbWFpbnQKKzU1NTgzIGRjYjQzZjQwMzkwYmE3OTJkNmU2OWI2NjZkNjE2ODNkN2JmYjcwOGYgcHkzay1zdHJ1bmkKKzU1NTg0IDFlYzFhZmEyYmRiNThjMzhjNDA5NDYwZGY1NTBiODA5NjdhOThiMTcgcHkzay1zdHJ1bmkKKzU1NTg1IDA4OWY0NDlhMjBjZGEwMTkzNGZkM2U3MjBmOTliZDg3ZjU2NmEzNzEgcHkzay1zdHJ1bmkKKzU1NTg3IDg1YzkzNWRiYmVmMjZiZjQwNDc4MTcyYTU1MWRiMmNlMThmZmI0YTUgcDN5aworNTU1ODggMDQ3ODZhZTUyZGFkNDIxMjdkNWIwZDcyNWU3MWI3MzM0NzQyZDk2ZCBweTNrLXN0cnVuaQorNTU1OTAgYmVkZmJkY2FmMzU1N2NkMDBmYTQxODU1OTZkNGI1OWM4ZDNkNWViYiBweTNrLXN0cnVuaQorNTU1OTEgOTY1N2MzMzNjNGVhOGZjMGQ3NmM4YWRmYTFhZDExZTU1NTU4MDU0MiBiY2Fubm9uLW9iamNhcAorNTU1OTIgMzg3N2YzN2M5ODYxMGJjYzZlNjdjMzI0ZDQ4ODM1ZmRiYWJmYmExNCBsZWdhY3ktdHJ1bmsKKzU1NTkzIGU3NDZhMDZiM2VhZmU5YmEwOTE5YzAwY2E1ZDdmNmYzNTYzZDhiOGEgYmNhbm5vbi1vYmpjYXAKKzU1NTk2IDAwZjk0ZDM1YzYxY2U3ZWJiMWQzMTcxMTVlOTY0MWY5YjIyYzUyNTYgYmNhbm5vbi1vYmpjYXAKKzU1NTk3IDFlYTRiM2NmOWQ5ODE0ZTc1NDlmMTllNWFmNmI4OGRmN2RmNDRiZGIgYmNhbm5vbi1vYmpjYXAKKzU1NTk4IDViYzdmNTZmNWMzM2RlZjg4YWY3ZWE1ZDcwMjIzMTNkOTA0NzhiNTggcDN5aworNTU1OTkgYWRiZjY4MWYxYmIyZWI3NTE2ODkwNTIzNTY3MTAxNDM0MGM1ZDc1OSBwM3lrCis1NTYwMCAxMDU2NTMwNjE2YWMzYjJkODMzZmExMzQ4MWUwODk5NmIxZjgyODIzIHB5M2stc3RydW5pCis1NTYwMSBlNzE2MmI2Y2E3YTA0MGQ4YWNhZjhlNDdlODRlNTQwZDc4Zjc3ZGQ0IGxlZ2FjeS10cnVuaworNTU2MDIgMzg5MDc3YTU0ZmNlM2VjODllN2U3ZmE2NDc4MWYxYzQ2ZjRkZDI2ZiBsZWdhY3ktdHJ1bmsKKzU1NjAzIGZiZjM0MmJjYjc4NDY1MjUxYWU5MTNiYWQ2ZmY5MzVmMjgyZmMzMjIgbGVnYWN5LXRydW5rCis1NTYwNCBlYzNiOGU5NGEzNTU3MWU1OTU1YjU3OWZhMWYxMjMyYjMwNjU5YTY2IGxlZ2FjeS10cnVuaworNTU2MDUgZjI4YmVkMjY0YjAyY2IzMjAyYWEyMDdkNzRjYjVlMDBlZWUwNWM4MiBiY2Fubm9uLW9iamNhcAorNTU2MDYgNWU0M2M3MzY3ZDU0NWE4NmIyNjAzYjZlYmFjZGUwYmRmNmU0YjQ0NiBsZWdhY3ktdHJ1bmsKKzU1NjA3IGMzNmM4ODc5YThkYWQ5ODQ1NzE5ZWFkYjZlZjY4MDRlNjUxNjYyMGEgYmNhbm5vbi1vYmpjYXAKKzU1NjA4IGFhNzMyMDZjOWNlNjc1NmViYjYzNDdhMjU1OTZkOTgyOWNhZGY1YWEgcHkzay1zdHJ1bmkKKzU1NjA5IGY2YTllMDM0Y2M2MjgyNDI2M2VkYTQ3ODc1OGQ4NjBlYmMyODNmYjUgcHkzay1zdHJ1bmkKKzU1NjEwIDI0OWI1MjVlMWFjMGU5ODBiNDJhOThjZmM2YWI0YTk3YjBjYWUwY2IgcHkzay1zdHJ1bmkKKzU1NjExIGI3Y2ZiM2ZkOGRiMDU5OTRkZjNhM2Q4NDc5NThlOTQyNzg5YjAyNmYgcHkzay1zdHJ1bmkKKzU1NjEyIGMzMjg3ZTE5NWExZDU4M2VjYTJlZmYzNzA4NTkzM2FmMjQ0M2RhNzQgcHkzay1zdHJ1bmkKKzU1NjEzIDliYWVjMmY1NDUwOWY2ODM1NGRkYjlhMDJlNTc3Y2U1ZjE5YmI0OWQgcHkzay1zdHJ1bmkKKzU1NjE0IDRjYWVlYjQxMzE4NjJmZWExYzlhZTdlNjNhYTZlZmNjY2U2Yjc4NjMgcHkzay1zdHJ1bmkKKzU1NjE1IDNmZGE5ZTZhMGI2ZDFlZDNiNzk4OWNlZjdlNTdiZTUxNDI0ZDA5YzEgcHkzay1zdHJ1bmkKKzU1NjE2IDgxZDViMDA3MTE2OWFjM2IxNDMxODRjNThiNzI0MDg5YjBiYjEyNzEgcHkzay1zdHJ1bmkKKzU1NjE3IDlkZTg3NTY5MTgxY2I4ZjMxZmQxZmEwNzRmOTBjYjgwZDIwOTU2YTIgbGVnYWN5LXRydW5rCis1NTYxOCBhZGU3YjA2OTNlMDc2YzIxMzkzZDEyY2I0NjY1ZTliZjg5NzA2NGYwIGxlZ2FjeS10cnVuaworNTU2MTkgYTllYmM1MDRmNjlkOGNjYjkyOGIyMmEzYTc2MjhiMDE1NDYwOWYyYiBjcHlfbWVyZ2UKKzU1NjIwIDc1ODY2NmUyN2ZiZWZiNDE2NDU4MTNjZjVhMDdmOGQ5NDM0MTZhNTkgY3B5X21lcmdlCis1NTYyMSA4YjRmYjcxZmZmMWQzNjYzNzE2MzMwMDhhMTgwYzlkMjc1NGQ0MWRmIGNweV9tZXJnZQorNTU2MjIgYWVjZDc4YWZhNWEyNmU5NDM4N2I3MDRhNGQyOTA2OTk3Yzk4ZmE1OSBjcHlfbWVyZ2UKKzU1NjIzIDBlN2M3MGQ0MWExOWIwNmU5M2QzN2RhNmMxYzQwNDFiZWEwNDNkYzEgY3B5X21lcmdlCis1NTYyNCA0ODkwNjBlOTdkMTdmYTg3NGNlOGE3MWI4OGNiODc4NTQxMDg0M2ViIGNweV9tZXJnZQorNTU2MjUgOGQ2MzdkODE2Zjc1NDE3YjA5OTFkN2MyYTc4NzBmYmMzOWJmZjViOCBjcHlfbWVyZ2UKKzU1NjI2IDM3MDA1MmRjODk5MmYzNDUxNTQyNmNhYmYzMjk4NWM4MjZkOWMzODEgY3B5X21lcmdlCis1NTYyNyA2ZGQ5NzY3NjM3YmI0M2Q3ZmIwNzllYWRlNzg2ZmU4NTEwYzQyMTdkIGJjYW5ub24tb2JqY2FwCis1NTYyOCBkNWFkOTE0OTM2MGJiOTRkNjE5NjFlYjkyNWU5ZjkyOWE4ZTEwZTQ1IGJjYW5ub24tb2JqY2FwCis1NTYyOSAzN2NhNGRkOGFiZWY0NjkzZGMyZTZmNDI4NmZhMmVkMmUzNTczZmI2IHAzeWsKKzU1NjMwIGRlNTFhYWM0NmIxYmM4OTQ1M2U4NjRhMGM3OTZjNGQ2MjE3NTFmNDkgY3B5X21lcmdlCis1NTYzMSBiYTdlYWVlMzM4MjI3OTE4YjYwNWEyYzVhMDI0NjIwYmRmNmE1MWZhIHB5M2stc3RydW5pCis1NTYzMiA1YWQyZDc3MDBkM2M1MDUwNTkzYTVkZmI5MjFjNTgxZDY3N2VmNzJlIGJjYW5ub24tb2JqY2FwCis1NTYzMyA1MzgxYjRlNzFhMDQwNmM5MjI0OTRmN2QyOTRiMDg3N2VhZjRmYTk4IGJjYW5ub24tb2JqY2FwCis1NTYzNCA1MDNmNWE1NjQ2ZDE3YTA5OTI4YjM1YTEyZWQxNzRmMmY4MTA1YzQ0IGxlZ2FjeS10cnVuaworNTU2MzUgZTE0ZWNlNzc3YjhiNDViOGY5OTJlZjcyNzMwMWU3M2EyYjZiMjNiZSBsZWdhY3ktdHJ1bmsKKzU1NjM2IGM3ODM0OTcxMzE3Y2Q0OWJhMmI2NTJlODEzM2U4MTI5ZDgxYWY2MTggcDN5aworNTU2MzcgODg1ZDBlZjkwZTBmNDQxY2U1N2IyYTFmYmIyYjEyNTUxNzI3OTlhZSBsZWdhY3ktdHJ1bmsKKzU1NjM4IDA2ZTZkNjIxNWM1Yjc4YmQxM2E5MWI1OWVlMDJhZTMwNTM0OGMxYWIgbGVnYWN5LXRydW5rCis1NTYzOSA3Njg4N2UzZThlNTdhNmFkNGQ4YWEyY2E0YTAyZTYyMTg2ZjIzNjgxIHAzeWsKKzU1NjQxIGFlODA1Nzk4ZmE2NzgyYzZiZDk1Y2YwNmFmNzlmMDA4NjQzZmEyMjcgcDN5aworNTU2NDIgNjdlZTQ2OTZkMTQ5YWI2N2I1ZGM5MGY3ZTlhZTEwZmE3ZDY4MDA0MiBwM3lrCis1NTY0MyAzNzdiNWRkNjI5M2RhOTk2NjI1ZTlhYmJkNjk0NTk1YjgzNTg5OWJlIHAzeWsKKzU1NjQ1IGExZWUyNTZmYmM4Zjg0NTk4YWEyNTA1MGM5NDQ5ZjdhN2YxOTRkYjUgYmNhbm5vbi1vYmpjYXAKKzU1NjQ2IDJhZTk5NzVhY2EyMDVlNmEwMWIwNDZmZTcyODExM2JkMGUyYmQ4NTkgYmNhbm5vbi1vYmpjYXAKKzU1NjQ3IDhiMWNkZjkzMjFmZDEzNjBhMTAwNTUxYTI5YjYzMTUwZTM3ZTBmYWYgYmNhbm5vbi1vYmpjYXAKKzU1NjQ4IDkzODYyYWE3NmY3YzJhMDc5NjI1NjU3ZDc1ZWQ5OTFmOTljZjBkMjEgcHkzay1zdHJ1bmkKKzU1NjQ5IDliMWZmY2UyNTZiOWFhZTY4NjU5NmI5NjVkNWM2MGMyMTljYTQyNGEgcHkzay1zdHJ1bmkKKzU1NjUwIDZjMmZhNzFkYzQ1OWYzODUxMGU1YTg4M2M2ZmRiNjk5OGViNjMzMWYgcHkzay1zdHJ1bmkKKzU1NjUxIDQ5MjY4NzY5NWM2NmM4MzU2MmZiNjQzYjA4NmM3ZDUwNmY1Y2MwODAgYmNhbm5vbi1vYmpjYXAKKzU1NjUyIDA5ODJmYjA4ZTc5YjFkODE0MzUwZjZjZDYyN2Y1NjM0MmJmMDQwYWMgYmNhbm5vbi1vYmpjYXAKKzU1NjUzIDAwM2NlMzZkZDIwMjIzNDkwOGM1YTc3YTIwZTljZWNlYmMwNWZiMmUgYmNhbm5vbi1vYmpjYXAKKzU1NjU0IDE4ODIxNmI0M2VmNmE3NGIzNzFlYjQ2ZjhiYWQ5MmQxNTYzNmIyZmQgcHkzay1zdHJ1bmkKKzU1NjU1IDM3YTI4NTZkOGYwZTFkOTFjZWI3MzE2Yjg4ZWYxMDg2OGE0ODdkZmYgYmNhbm5vbi1vYmpjYXAKKzU1NjU2IDc1YjljZTFhNzc0NWYzY2Y0MTg3OGM4N2Y3YTg3MzFkZGQ2ODM3ZTIgYmNhbm5vbi1vYmpjYXAKKzU1NjU3IDYyZTM5NGQ1MGFhMDYxMTMzOTYxOTczMzg5MjRmNDk4YTU0Mjk2MzYgcHkzay1zdHJ1bmkKKzU1NjU4IDY3OTZmMGNiMGJlYTQ4MTAwOGRlMTE0NWYxYWIxOTA4MjlkNWU1YWQgYmNhbm5vbi1vYmpjYXAKKzU1NjU5IGRlZmUyNTEzYjc4ZTE3MTA1NDdiZmY2ZDNlNGY0ZDlmM2ZmMDFkNDIgYmNhbm5vbi1vYmpjYXAKKzU1NjYwIGNlYmFmN2MzYWI4Yzc1MGE4MTYxZTlkZWUzZGUyMWQ3YzRmZjc3ODIgYmNhbm5vbi1vYmpjYXAKKzU1NjYxIGI2ZjA0OTc0ZDhhNzdmZmQ4YTM2MmY3YTNkNDQwYjZiMGFmZmMwODQgYmNhbm5vbi1vYmpjYXAKKzU1NjYyIDU2MjYwMmM5MTAxZDlmMWVlYWZjYWFhNmZhODlhNDFjNTQxN2IzN2UgYmNhbm5vbi1vYmpjYXAKKzU1NjYzIDM2YTA1Njk2YmU4MjE4MDkyNjVjZGRiYzNjYjUzODkxZTkwYzczYzQgcHkzay1zdHJ1bmkKKzU1NjY0IGY0MGZmMmQ3MzhlYTQyNjRiMzBlYjg3OTRjMzllYzY4MjlhOTU5ODggcHkzay1zdHJ1bmkKKzU1NjY1IGM0MGJmYjM3ZmExNTQyNGU5MDRkM2FkNzMxOGZkY2U4YTI2ZWNmOTEgcDN5aworNTU2NjYgNDE4MDU5OTk0ZTQ3MjIyY2JhOWQ0ODliMjZmMjcxNzZhMWViMWUyZCBwM3lrCis1NTY2OCBhYTRiNzI1NDlhNjk2ODI3ZTBjNDM0YTE3YjA4ZGVjZmQyMGE5NjdlIHAzeWsKKzU1NjY5IGQ1YmJmOTc1NzBlMzYyNmRjMThjMTEyMGNlYjMxMTVlMzRjNjFhMDkgYmNhbm5vbi1vYmpjYXAKKzU1NjcwIGU3MWRlNTc1MTNlMWJkM2IyY2I1ZTVmOWE3OWJjNjMxMWI4MzhkNjIgY3B5X21lcmdlCis1NTY3MSAwNjM1YTZjYTE5ODAwMjIwZTdkZDQ2NDllMjI4ZmI0NDVkM2VjMzc1IGxlZ2FjeS10cnVuaworNTU2NzMgN2QzNzljNDc2MDA3NDIxNDUzOTYzNzc5ZDU2NjUyNGYyOGUyMDU0NSBwM3lrCis1NTY3NCAzYWZmY2UyZWY3ODJjYmVhYzQ1ZGQzZTYzZmEwZjQ4ZDY2YTNhZTQ1IHAzeWsKKzU1Njc1IGRkMzk2MzU0MGNmNzcwOTQwOTBhMjk0NDE1MmJiYjIxNGEwZTA3MGQgcDN5aworNTU2NzYgZGRmMDQ3MWE2ZGUzNzNiOTRjNGZjNmJhZmZkZmYyZTY5MGYxZGM1ZSBsZWdhY3ktdHJ1bmsKKzU1Njc3IGFhZjNiNmQ4MmI2M2YzNmRkODc1OGNmNzcyYmNiNWVlNDY2MzU2ZjAgbGVnYWN5LXRydW5rCis1NTY3OCAyNzVkODdhNDdmNjQxNGZlNjlmMzQ5Mzg0MDFkNWFjMDA3MWEzZjQ2IHJlbGVhc2UyNS1tYWludAorNTU2NzkgY2RlYTA5NGNmMDQ1MWY2NzBmNjQyMzY4ZmU1M2IyYTJhMDc3MjhmYSBwM3lrCis1NTY4MCAzOTRhYjVmZjE4NTRlNDE2YWQzZDI2NzM5OTNmZjA1ZmE2M2JjMjUzIGNweV9tZXJnZQorNTU2ODEgYmE4YjVhZDhlNzZlYmQ3ZWNhNWQwYWMyOGE1ZGQzZDAwNjMyMDhhYSBjcHlfbWVyZ2UKKzU1NjgyIDUxNjc4NTc4NTFjMTA5ZDRiMjY0YWFkN2EwOTMwMjU1MWMxYjIwMmMgY3B5X21lcmdlCis1NTY4MyA0MWM3Y2QxNmIxOThjMDA2ZGEzNDAxMjA2YzU3YmZkNzE0MTMyZmI3IGJjYW5ub24tb2JqY2FwCis1NTY4NCBhY2QxZTI2MjQ5OWRkMjhjZmEzYjRkZjQ0MjlhNjhiNzIzNGNjNjE3IGJjYW5ub24tb2JqY2FwCis1NTY4NSBhNjA0MmM3ZDdjNTVmYTJjMWIxMmVhYzA3OGZiMGYxNWU1Y2Q3NjM5IGJjYW5ub24tb2JqY2FwCis1NTY4NiA1YzI5NDExYTA1YTVmNTljNWVmODEwYzhkNjdlMWUwYzVhODQ3NmY4IGxlZ2FjeS10cnVuaworNTU2ODggYWQ2YzViODhiNWM0YjAxOTcwZTBjMTM0MGFlYTg2NjI1NTcwZDkzNCBwM3lrCis1NTY5MCBjMmRjNGQxN2U5OGJjNDA0ZDQ2OTQ3NjEyOGJmNTczODE1ODc2MTdhIGxlZ2FjeS10cnVuaworNTU2OTIgMTc2OTk5MzExNzllOGYzMDU2Yjk1NDczOWRhOTIwZjhjYjE4MjYyMCBwM3lrCis1NTY5NSAxMjAwYzBlMDk1NTM3NjU5MTJkYjE5ZGIyMjM5M2M1YTY4MDBmYmZmIGNweV9tZXJnZQorNTU2OTYgMGUyOWJiODBlMjI3OGVmNjJlNWQyMzQyNjkyM2FhOTYyYmUzMWIwNSBsZWdhY3ktdHJ1bmsKKzU1Njk4IDhlN2VjYmQ4YWFhYjE4NzY4NjAxNzMxMDEwMTY4ZWI1ODM2Yzg2NWQgYmNhbm5vbi1vYmpjYXAKKzU1Njk5IDBmNDI0ZGU0NTZkYjQ2MDk5MGVlNzU2NGQzYjEzZmNiNjc4ZTJhMDcgY3B5X21lcmdlCis1NTcwMCBiYjk0MmI2MGIwZmVmMmI2MmY1OTc1MjYzMjJhOGJiNDI2NGQ5MGUyIGNweV9tZXJnZQorNTU3MDEgZGZjZTlhMjYzNWU5NmNmMTJhNTM1MmJhODNlMzBiMjJiNTA1OWIwMSBjcHlfbWVyZ2UKKzU1NzAyIGRmM2Y3NmFjZTJkNzRkNzNkZTkwM2YwNThkY2FlODViM2E4NmUzYjIgY3B5X21lcmdlCis1NTcwMyBhZjBhYzgzNjAyYjQ3ODZhMjExNWU1YmQxMzZhNTQwN2RkZWI5MTU3IGNweV9tZXJnZQorNTU3MDQgZDhhNmFmYTZlOGM2MGVlNzVkNWEwNDk4ZjU1NjQ3Mjg2ODk5NzkzNSBiY2Fubm9uLW9iamNhcAorNTU3MDUgZDBiNGJiYWFmYWFlNGM0MTViNTVmOWI3YjBmOTdmODg1MjcwNGEyNiBsZWdhY3ktdHJ1bmsKKzU1NzA2IGRkNDY4OWQwZWM4NWI2YzEwM2E1NjMzZDQwMGM5NjY5Y2UxZjI1MWYgcHkzay1zdHJ1bmkKKzU1NzA3IGYyODdiODhjM2MyMWNmYmM1NDQyNTMyMWVhYWUyNDVhMDhmZjA3ODYgcDN5aworNTU3MDggYzQ1MTExNTBlZjYwNzEyMGU2YzM5ZmUzZDlmN2M0ZGI0NGUzZGFjNCBwM3lrCis1NTcwOSA3MWQ4NjFlZTlmZjBkYmRhZTA3YWUzYzQwYjMyZWVjMThhMzA2NmJhIHB5M2stc3RydW5pCis1NTcxMCBiOGJlZjlhMWNkZjAxY2Q4MWI0ZDZlNzUxYTY4MDZmNGI0YmQzNDg2IHB5M2stc3RydW5pCis1NTcxNCBkYmQyY2Y0MDUyNzgyNWZiZjExNGU0YTkzNmEwNmU3MmZiNjU5NWQ4IHB5M2stc3RydW5pCis1NTcxNSAxMjdmMTUxZjMxN2I3N2VhNjEzMzhkNjc2N2JkODQwNmQ5MGVhMjc3IHB5M2stc3RydW5pCis1NTcxNiBiMzgwYzljNDk3MzhhY2EwNWExNTNlZDY1Y2E2YzdhMzhlNjgyNmVlIGxlZ2FjeS10cnVuaworNTU3MTggY2VmMDdkYjFjYWVkMWEwODI3ZTQ5YmQ5MTcxZTQzYjUyYWVkOThkOSBweTNrLXN0cnVuaQorNTU3MTkgOTFiYjE5ODEzY2E2MTFmY2EyMTA4MWRmMmMwM2UwZDA1NWQ0NDU3OCBsZWdhY3ktdHJ1bmsKKzU1NzIxIGM2MWNhYWY1NjE2MzBhMWVhNzBkNGE1MDRlOGU3ODY3NmEyMThlMmUgbGVnYWN5LXRydW5rCis1NTcyMyA2NjdjMWE3Mjc5YzlmN2NiNDg3ODM2YTU3NjlmN2IxZWRiZTIzMDE1IGJjYW5ub24tb2JqY2FwCis1NTcyNCA1Y2E3ZDE3MGU0MzEyZjU0MGI0ZDYwMmI4ZWUyMmU4ZjIzNDczYWEwIHAzeWsKKzU1NzI2IGNjZjIwOTkyNTM4MzY5ZTdmOTgyMDY3YzU1NDEwZDNhOGEwMzYwMmYgbGVnYWN5LXRydW5rCis1NTcyNyA5Njg2MWEwNDFmNTQ2Y2Y0NzhmNzY5Njk4NjM0ZmQzNzk3NDIwYTI5IHAzeWsKKzU1NzI5IDI5MzRhZjA1ZjhiZmIwOTJiY2QxYzA1ZGFmYTc0ZWExMmJlYzg3NTIgcDN5aworNTU3MzAgOWFjYjM5NDc4MGRmOTM2MTliZGIwNGU2ZDIzZTFjNTUyNmFhZWY5YyBwM3lrCis1NTczMSAyNGVmYTJlNDQ4YmNlMmZhZTEwYWI0Yzc3ZmExYjgzNGJiZjY3YWRlIGxlZ2FjeS10cnVuaworNTU3MzIgOTA0ODdhODg3YmUxMzZmYmU5MjQxYmU3N2UxZWFjZmU3OWExNTZlMSBsZWdhY3ktdHJ1bmsKKzU1NzMzIGZlYzEyOTY1NDRhYjk2YzBlZjUyODJiZGU0YjI0Y2QzY2ZjMzljMTQgcmVsZWFzZTI1LW1haW50Cis1NTczNCBmMDEyMWIyMTVkMzg5NjAzMTMzNzRkN2NmYjZhYjE1OTM4MmJlNDQzIGNweV9tZXJnZQorNTU3MzUgZmJiZjg1MWUyMzBhNTllNWZkNjM5YzQ0NDg0OThmOGI3OGZlYTc1NyBsZWdhY3ktdHJ1bmsKKzU1NzM2IGRhNTFmN2Y5MDhjYWQ4ZmU3ZmQ5MWI5MjFkYzM4Zjg1Mzc0NWUxOTcgcmVsZWFzZTI1LW1haW50Cis1NTczOCBkZmY2MjRiMmEyNDkxMDQyZTcyOGIyMTVlNGE5MjI1YjJhZmM3ZmVjIHAzeWsKKzU1NzM5IGY5ZjYwMDAzMjdlMjdiZDJlYjhkNGFjNWIxMTkzNGJmZDQ5OTM3NGEgbGVnYWN5LXRydW5rCis1NTc0MSAzMjhlNDU5ZWI2NzAyOTYxMWZkZjhhMzg3NTYwMzMzODJmZjE1MWIxIHAzeWsKKzU1NzQyIDdiM2Y2NGIzZTczOTM4OGVkNDNmZDBiNGRhZWVhODRjMDc5OTk2OTggcDN5aworNTU3NDQgMDRmNGI1NTdkM2M0NTExYjNjZTEwZTMxYTI2NGRmYTlhMDUxZjgwNSBwM3lrCis1NTc0NSAwNDE4NmY1MjE5MmRkYjEzZTNlMmVmMzEwMzE1NWI4ODQxZDM4Mzk0IHAzeWsKKzU1NzQ2IDdlMGMyMjBiNTVhNjQwMzNjODNkODdiNjFhZGM5OTNjYzllOWU5MjMgbGVnYWN5LXRydW5rCis1NTc0NyBiNGYxM2M3ZmRmZDg4ZDE2OGExNWQ1MjIyZGIwYTBkOTM4MzczYzZjIHJlbGVhc2UyNS1tYWludAorNTU3NTEgZTMxZDJmOTVmMjI1NGQyNDZkM2U1OWYyNDNiYmM5ZTBlMzVmZGQ5NyBsZWdhY3ktdHJ1bmsKKzU1NzUyIGUxOTk3MjgzNDE3MDg4ZGFjYjY3OWM1YWYyMTBjMWRmOGM3OWJlMzIgbGVnYWN5LXRydW5rCis1NTc1MyA4MmI5M2ZhOTFkY2YzNDEzZDAyYjk3ZmYyZWNkMTkwOWMzNmUxNDYyIHJlbGVhc2UyNS1tYWludAorNTU3NTQgYWJkZTA4Mzg0M2NkMmNhMzIxOWFmZWU4NTQ3MmZlZGZkZjlkODYzNSBwM3lrCis1NTc1NSBiOGFiZGZhMWM5YWZjMTAwMmQxMjI5NTBmM2IyOWE1NWM0MGRmMDNjIHAzeWsKKzU1NzU2IGY2ZmFiMWM3MDdlOTA5ZmZkMDU3OTRjZmUxZjZkZjU4MmEwMWNlN2YgY3B5X21lcmdlCis1NTc1OSA1MDE0ZjhkYWE1N2ZhZDU3ODZiYWE3ZGY0M2EwZDQ2NTRjZTNlYmZhIHB5M2stc3RydW5pCis1NTc2MCBlNGFiMDgwMzljNzVmODBmZDhmOGVlOTU1ZjYwMTc3ZDU1NjdkYzA2IHB5M2stc3RydW5pCis1NTc2MSA3M2RkMmRhMzFkMzdlYmQ4M2VmY2NiYjUwY2E4NTIyMzVlMjdjNTBkIHB5M2stc3RydW5pCis1NTc2MiA4YmNmYzQ2ZTQ0NGI1ODI2NmJkY2NiMWYxYWE2MGJmYmZlMTM5YzU5IHB5M2stc3RydW5pCis1NTc2MyA1Mzk2M2EyZjU2NTI5YmU4YzE2NTQ4NGU1ZGU2Y2RmZDg5YThmNDE3IHB5M2stc3RydW5pCis1NTc2NCA1Nzk4YTJmYmFiMDMwNGYxMzY3YmYxNTg2OTJiODljNGRiZjE0NzFmIHB5M2stc3RydW5pCis1NTc2NSA3MTYwNGQ0OWEzODYzOWVjYTE0NzJmMTdkNzZiODU4MzkxMWE3N2U1IGNweV9tZXJnZQorNTU3NjYgYzM2YWM2N2VlZjViNzc2YTEyYzA0NzUzZjcwOGE1ZGM5YWNmYmVlMCBsZWdhY3ktdHJ1bmsKKzU1NzY3IDRiMzRmYWFhOTc3ZGU4OTY5YjJlMmI5NDU4ZTkxMTU2OTI2OTAxMmEgY3B5X21lcmdlCis1NTc3MCBiNmMxYTFhMTVhNmNkYjQ1MDFhMDU4ZmUwZDM5NjA4YmM4OTkxYmFhIGxlZ2FjeS10cnVuaworNTU3NzEgZTNmYmRkN2NiOTY5Y2ViOGIyYzg0Mzk2YmRlYzg4MzkxZjZhYzAyNyBjcHlfbWVyZ2UKKzU1NzcyIDc2MTk0ZTY4MmUyMWNjNmFkNTNmZDRjNDMwZTM0NTJjM2RjOGVkOTYgcmVsZWFzZTI0LW1haW50Cis1NTc3NCBjNWNmOWE0ZjRmYTk3OWNkMTc1NTU5MTliNmQyODc1MTQzOTQ4YjhkIHJlbGVhc2UyNS1tYWludAorNTU3NzUgMzVhY2NlZGI1ZDAzYjQ4ZTAxZDc5ZjgyNDAwM2YxZjZiZWY5MDkxMiByZWxlYXNlMjQtbWFpbnQKKzU1Nzc1IGNmYmNmZjY2ZTcyNWFiNDI4ZTNlOWEyYjE1YTJjNzc5NjM4OTZjYWUgbGVnYWN5LXRydW5rCis1NTc3NSAwMTgxMzg0MWQ2NGJmYjQzNjZjZTBkZDExYTZlMGY2ODI4ZDJmNjBiIHJlbGVhc2UyNS1tYWludAorNTU3NzYgMzlhMWEyMmY5NmNmNjNmMTM0MjlkNzVhYTQyMGU3ODJjMGY4ODQyZCBweTNrLXN0cnVuaQorNTU3NzcgYjNmNjFiYWUxMGMzOGNkODU5NGEwZWYzMTA1YjFiNmZjNzI4MWFlMiBjcHlfbWVyZ2UKKzU1Nzc4IGVmMzc0MzFlYmYyYzk0NWUxZTNhYzgxM2JmZWE0MmJmOTYxZGQ3YmEgcHkzay1zdHJ1bmkKKzU1Nzc5IDRjNWZiZTY1YjdkZTc5MzU5ZDRmMTU3NTY0ZjI4ZDE2ODYwNjQ4NzUgcHkzay1zdHJ1bmkKKzU1NzgwIGIzMGM3NWQyMmYzNGIyMzk3MGE0ZThlMzhkMjg4NmM0ZmI0NTk5MmQgcHkzay1zdHJ1bmkKKzU1NzgxIDcwMTVjY2NmMjllM2JiZDc1ZGMyNzQ3NjJjMjA5ZDNiNGYyM2EwZWIgcHkzay1zdHJ1bmkKKzU1NzgyIDMwZTYxYWMxZDY2YzYyY2NmNTQwOWE1NTQ2YjU2NDUwODBmYWQ1MGMgY3B5X21lcmdlCis1NTc4MyA5YWY1MjRlMzUxZjMyNTBmMzFmMGQ2NDkwNzg3N2I4ZWI3MWEyYzJiIGxlZ2FjeS10cnVuaworNTU3ODQgZjIyNzc0MzlkY2RjOWY4YWQ0YTg4MzlhNDk3ODk4YzAyYzgzYmM4MSByZWxlYXNlMjUtbWFpbnQKKzU1Nzg1IDU4ODY4NmQ0YzJjZjg3ZWI5Njg0Yjc2ZGM1ZGQyOTE5YzA3NzI2YzAgbGVnYWN5LXRydW5rCis1NTc4NiA2ZmQ4ZDUyNGQ1NmIyZTY4ZWViNjU0MjM4ODBlNTY1MTQyMzYwODgwIGxlZ2FjeS10cnVuaworNTU3ODcgMTE5MzBkY2Y5ZDRmYjRkYWU2Yzk0ZWY0YjdjNTBlNDA2MTYxYzQ3ZiBweTNrLXN0cnVuaQorNTU3ODggN2U1MmI1YmVjNWE0MjY5OTc2MzU2NTM1OWZlYWNhODliYTY4MDJhMSBweTNrLXN0cnVuaQorNTU3ODkgY2U1YWY5YTc0NmNiMjA4YzNlMmMzNmMwYjIwOTFjOTExZDYyOTBmYiBweTNrLXN0cnVuaQorNTU3OTAgNDU5NjcyN2Y2YzM5YmM1OGY4MWYxN2ViOGIzZDViMzNhOWNhOTMxOCBweTNrLXN0cnVuaQorNTU3OTEgYjA1YzZkNDJkNGY3MjFmYjY2YmQ5MzgwOTMyYjY0ZTE3YWI2MGJlZSBweTNrLXN0cnVuaQorNTU3OTIgZjE0MWM1Zjc3ODYwZTMwZGMzOTY4NmU0NTk1ZTk0NTRiNTkwYzE1ZCBsZWdhY3ktdHJ1bmsKKzU1NzkzIDA1ODc5YWI4N2U1YjQ4NGM5OTViNWU2NWU0NDMxYjQ5NWY2NjhlZWYgbGVnYWN5LXRydW5rCis1NTc5NCA3YjM3YTQzNzIzNjE2M2Y4YjQzYTk2NmY4M2FiYmJjZTZhZjY0Y2U0IHAzeWsKKzU1Nzk1IDlkMDJhNGFkZjU3NDgxYjYwZDJmOTc1YjZjNTc5ZjFkNmQxYWQ1OTkgcHkzay1zdHJ1bmkKKzU1Nzk2IGIzOTAwYTUxMzQ2YjUyYzRkMTFkZTk5NmFmMDA4N2JkOGQ3OTQ3NzQgcHkzay1zdHJ1bmkKKzU1Nzk3IDU5YjdlOTM0Njg4NWNjNjBjYmFlZDhmMDZjNzBhZGY4NGRiZWVmOWEgcDN5aworNTU3OTggYzYzOTIyOGNmZTIzZDQ0YTljYTE1OTExNmI5Mzc3ODY2Y2IyNWY2OCBwM3lrCis1NTc5OSBhMzI2MWNkZTNhMzdlNjgzYjIyNzEwNGM1ZGVjNzNmNjY2MGUzNjcyIHB5M2stc3RydW5pCis1NTgwMCBmZWU3MWM3YWY1MmY0ZjBlMDk2ZWRiYTU1OTNjMTEyYjc5YTQ2YmI5IHB5M2stc3RydW5pCis1NTgwMSA5NDJkODMwMmY0ZDZmMTU0Mzk0MDI0MDYzMzJhNGM3MzRmNmM1Zjg2IHB5M2stc3RydW5pCis1NTgwMiBjOGIwZTNiOGI0NTZiYzhmMmFiNTlkNDU1ZTY3OWEzMWU0ZTQ3NGYzIGxlZ2FjeS10cnVuaworNTU4MDMgYzJhYzIyYzZmOThkMDNmY2QyODQ2OTUxNGIxNzA3YmE4YTg2YTExYiByZWxlYXNlMjUtbWFpbnQKKzU1ODA0IDFiYzkwMWRkYjdkYzIxYjNhZGRhN2U5N2YxMDIwYjZhOGU2ZDA0ZDAgbGVnYWN5LXRydW5rCis1NTgwNSA4MjNjMmY3NTkxZjUwMmVhODRlMDAwYzQzNTNlODkzYjFmOWFjNDhkIGxlZ2FjeS10cnVuaworNTU4MDYgODE1MGQxZjAxMGFhYzU2NmYyM2QwMmZhNjllOTU1Yzc2N2UxZTdlNyByZWxlYXNlMjUtbWFpbnQKKzU1ODA3IDE0NzQ1YjRmYTcxOGE1OWY1ZDUxZGE0NGNmNmU5ODhjOTU0OTcyYjQgcHkzay1zdHJ1bmkKKzU1ODA4IDgyN2VjNzY4MDE5OTUzNGZjOWNjNGU5YmRjZmM0Y2RkMjE2NWNkYTUgcHkzay1zdHJ1bmkKKzU1ODA5IGNkOGYxNjViZDdlMjk3YTRhMWZiYmM2YWEwYWIyOTJjZDUwMTE4MDUgcDN5aworNTU4MTAgYzZhMGI3NWRiZWMyMjhmZjkwNzUyY2YyYjVlM2Q5MzNkZDI5ODk0MyBweTNrLXN0cnVuaQorNTU4MTEgZWYwOWNiMDExOTU5NjRhM2ZkZDYyMWQ3ZTE1ZjgxZDJiMGM5YjJmZiBweTNrLXN0cnVuaQorNTU4MTMgNTRlZjY0NWQwOGU0ZmJiNmMzOTM5NGIwYTVkYmM3MDkxOGRhZWNjMiBweTNrLXN0cnVuaQorNTU4MTQgYzQxZmQ1NzIzODYwOTYwMDk3MTRiYzc4Zjk0ODhmZWYwYTE2ZThjMSBjcHlfbWVyZ2UKKzU1ODE1IGU0MjAwMzkzNjhiNzliZTJiMTkyZDQwMjU1M2FkMDI4MjVjMWJhZmMgcHkzay1zdHJ1bmkKKzU1ODE3IGFlNmJhNjE4OGQzOGQ0MDRlMzBhYWM3ZDUxMmM2YjA3NTIzMzBlYzAgcHkzay1zdHJ1bmkKKzU1ODE4IDY0NjRjYzYzOGZhYTBkMTQ4ZjY3ZTE3MGE2YTMyYjgxY2VmM2ZhMTQgcHkzay1zdHJ1bmkKKzU1ODE5IGU2NmRhZmE5ODQwM2Q2MjU2NDQ2MjI1ODA1YThlZDEzMzNiOTUwMTUgY3B5X21lcmdlCis1NTgyMCAxNGVjOTY3M2Y4OTQ3YzczZjMyZGVlZGI3NDUyYmI4ZGU3ZDJjZDdhIHB5M2stc3RydW5pCis1NTgyMSAyNDUzYjkzNzkyNWU4OTNmZTg2NzMyZDc5NTBjNzk5Yjc4OTA0M2I4IGxlZ2FjeS10cnVuaworNTU4MjIgMjlkMWFmMjIwYzNjN2E1YjVjNGE4ZmQwZTFjYzAzMzJmOGQ3ODRkYiByZWxlYXNlMjUtbWFpbnQKKzU1ODIzIGUxNTNiYTM1MmI1MTNjNWY4Yzc4YThkYjcxNzM5ZWY4ODAyZjBhYTMgcHkzay1zdHJ1bmkKKzU1ODI0IGY0OGMxOTdmOWMzOGZkZTZmNjQ1NjNiY2EzM2JiMzc5OGMxNDhhNDEgcHkzay1zdHJ1bmkKKzU1ODI1IDU4YTEzMzMwZGZkZTk5NjdmOTM4MjI5ZWZjNWVjZDE5NjQ0ZWFjNDggcHkzay1zdHJ1bmkKKzU1ODI2IDBkODFhNjU2NDEyYTE3ZDQxYWE4YTc1N2E2NzIwMDI3NTJjMTQ0NzYgcHkzay1zdHJ1bmkKKzU1ODI3IDE0YjY1ZGU5Yjc5ODU0OTBhMTc4YjU2YjIyNGE2Y2Q4MTY1Zjk0NzUgcHkzay1zdHJ1bmkKKzU1ODI4IDUyMmE0OTQ1ZGVmODBlNjBjNzIzZTdiNWYzMzkzNWUwNWU0ZTUxYzAgbGVnYWN5LXRydW5rCis1NTgyOSAxYmJjZDM5MjQxN2RjYTU3M2JkYzBkMjkyMzI0MjI0OGY4NjhhYTQ0IGxlZ2FjeS10cnVuaworNTU4MzAgMTBmOGE4YTkxOWUyYTBkMDk3YjdhMmM0OWMyYjQ0ZDUzMTJjMDE2NyByZWxlYXNlMjUtbWFpbnQKKzU1ODMxIDdiODRlODkxOWIwMDBjNTEzMjRhNGJhNTZlYjc0ZTQ4ODNjYWE3NWUgbGVnYWN5LXRydW5rCis1NTgzMiBiNGY0ZWU4NGMzMGQ3YWFlODEyZGNjZjg2ZTAzMTBkOTU5ZjI2NmVlIGxlZ2FjeS10cnVuaworNTU4MzMgODY5MWNjNzZkNDQxOTI1MGNlNTJmMmM4ODY1MWFiYzAzMGEwODA0YyBsZWdhY3ktdHJ1bmsKKzU1ODM0IDA2NzJkYmVkNWY3YTk3OGUxNTY2M2QyZmE2NGY5N2ExZTNiNmVkODIgbGVnYWN5LXRydW5rCis1NTgzNSBkNjBkMGQwZWU0ZjhjOWM4MzcyOWMzYmQ2N2FiY2I0ZGNiYjEwYTcyIHJlbGVhc2UyNS1tYWludAorNTU4MzYgMmJmNGRjOWQwNjQ3YmNhZTU2MTI0MzhkNjYzYWI5ZDkyZmEzNDcyZiByZWxlYXNlMjUtbWFpbnQKKzU1ODM3IDA1MjdhYjk0M2E0ZjIyMmNmODYxODEyY2I3NzkyMzBiODg5NjVkOGEgcDN5aworNTU4MzggNzlmMTNiZjhkZDI3YTI4NTc4ZGE5ZDZhMDk3ZGY4Y2M0Y2YzMGVmMiBwM3lrCis1NTgzOSBlNjJiNjA2ZWZmMGI4MzY2ZWYwMGY5YWY2NmM1MjY4N2Q5NTRkODAxIGxlZ2FjeS10cnVuaworNTU4NDAgMmJkOTQxN2RhY2Q1YzUzYWJlNzg1NGVlZDY0NDg5YzA0OWIwZGYwOSByZWxlYXNlMjUtbWFpbnQKKzU1ODQxIDE2Y2VlNjc0YTQxMGU1OTI2MjViZTQ2MGNjOGNmYTA1ZjU3MTY0ODAgbGVnYWN5LXRydW5rCis1NTg0MiBlODQxMzk3MTIxMmRmOTQ1MDkwYTQ4ZWJlZGI2NTRkMDU1MWU1NTg2IGxlZ2FjeS10cnVuaworNTU4NDMgMjg4MDVhNzIwNDU0MDAyYzhiMzZkN2I1OGE2YjBmOTU5NTczMTJhYiBsZWdhY3ktdHJ1bmsKKzU1ODQ0IDdjOTIyNWRhNWY2MTE1OWI0MzY4ZjM0ODIzODViYTc4ODA3Nzg5NDYgcmVsZWFzZTI1LW1haW50Cis1NTg0NSBlMmMzOWEzMGUwOGRkNmRjNDk5ZjViNWM3MDFkNzY5ZTZhZDIwYWJiIGxlZ2FjeS10cnVuaworNTU4NDYgNzMxYjY5OTQyMzE3ODAxOWYwNjJmNjBhY2Q2MTBjZWJiNTNjZmQ0YyByZWxlYXNlMjUtbWFpbnQKKzU1ODQ3IDNkYzUwN2NhMmUyYmViYjUxMDM0ZGRkZjQyOWY5MzQ5YjA3YzNmMmEgcDN5aworNTU4NDggNTljNmY0Y2JiMzI2OGVjMmE0MDc4MzkzN2I3ZjdlZDU0ODlmZTIxNiBweTNrLXN0cnVuaQorNTU4NDkgMDIyMjRkYTYwZmQxODNiZmUxNWFhZTlkZmFmMWY1NmQwZDhmODNmMCBwM3lrCis1NTg1MCBjZDEyNWZlODMwNTFiNGU1MDg3ODlkYjg2NDQ3MWM2YzJmMjExN2Y4IHB5M2stc3RydW5pCis1NTg1MiA2NDQzODUzYmEzMTQ4OTFlN2NkZTdjMWViMTQ4OTE1ZDE3MWFkNTZiIHAzeWsKKzU1ODUzIDZiZWI3NWVlZTljNTJmMmIxMmM5YjQ3Y2MxZDE4ODYzZTM2YjYyM2QgcDN5aworNTU4NTQgYjFiOGVlODA3YmRhZGUyMTlmMzA2YzJlMjMxODE1MGJmN2M4NTc2MSBsZWdhY3ktdHJ1bmsKKzU1ODU1IDNkZGFhZjYxNDgwNDRhYjc5ZTA2NzdiMjJkNTI3NGI0MGI5MWZiNWMgbGVnYWN5LXRydW5rCis1NTg1NiBiMjM5YTJiY2IyNGYzNTNjMTgyMTM3NzRkNDA1NDU4NjQzNDU4ODRmIGxlZ2FjeS10cnVuaworNTU4NjAgN2VhY2NmNTNhZGJkMTRjM2E4YjcwYTE4ZDFkOGU5YjFmZWY1OWY1ZSBsZWdhY3ktdHJ1bmsKKzU1ODYxIDc5OTBiYjI3NTljYjM3OTRjNzFlOTcxYzUwYzYzOGU2MWIwM2QyNmUgcHkzay1zdHJ1bmkKKzU1ODYyIGY1YjY1NzMxYmQ2YzlmYjYxYWRiNmI1NmM3NGMzZmQzNzBhNDc1ZWUgcHkzay1zdHJ1bmkKKzU1ODY0IDZhNDM4MmNlYjcxZTJjOTNjZmVlZDJlNDU4ODBkN2VkZDI4ODc1NzkgcDN5aworNTU4NjUgMGU5YjBiOGZjM2U3Y2YxZDZmYmFkNWMxNDhhZTIyNWNkZWZmNzhlOCBwM3lrCis1NTg2NiBiMzdhNTY4ZmQ0NDFlYjU1YTJhZTk1NTg2MzliYjc2YWQwZWI3YzIwIHAzeWsKKzU1ODY3IDJkNWUyMzY1YzdkYjA1YjgzMGU1MjIyZDRmMmJjNDRjZWQ3OGYwM2QgcDN5aworNTU4NjggOWU4NTdiNmMxZTU2M2U3NzRmNDQ0MzIzY2QwMmNhNTg0Nzg2ZDQ4MCBwM3lrCis1NTg2OSAxOWZhOWM3ZDNjNGYwOWQ0YzIzOGM0NGY3ZjY3MDNkZDllYWNlZjUyIGxlZ2FjeS10cnVuaworNTU4NzAgZTFhZmU1NmNhNmJhMzA4MDkyMTMyMjg2N2YyMzZkOTM4YzY4ZDIwMiBsZWdhY3ktdHJ1bmsKKzU1ODcxIGI3ZjhkZGQwNzJiODU4ZmEzNGRhOWFjMzI5MjBiNDcwMGM2OWUyZGMgcDN5aworNTU4NzIgNTliYzhkYTAxYzY1OWNmODE0NTdmMGZmMGFmMDE5MTQ0YWI4NTNhYiBsZWdhY3ktdHJ1bmsKKzU1ODczIGRkZTdjMzdmNDUzNjRkNzY2MWYzODBiYWJkOGJhZTBiZGQwYmNlNDAgbGVnYWN5LXRydW5rCis1NTg3NCBiOTRmMjg0ODA1YmU3MDgyNmUxYTU5OGM2MjcxN2NkZmMxMjBjZjIxIGxlZ2FjeS10cnVuaworNTU4NzYgMzZiOGQ3NGRlYjllOTIxMDJjOWJhNWY4YzQ2ZmNmMWQ3Mjc4OTMzZSBweTNrLXN0cnVuaQorNTU4NzcgNzVlZmU2YmY4YTNlY2VkODQxZmJlZmQ2YTQ3YjlhNjBmMTVkZjMxYyByZWxlYXNlMjUtbWFpbnQKKzU1ODc4IDcxZjMxOTI5MTVlMTMxZTJmOTFhOWQyODdmZTEzNjhlOGJkMGE0NzcgcmVsZWFzZTI1LW1haW50Cis1NTg3OSA0MzMyMmZmNWUzMTJjNGE1NDkwNDVjZTY1NmQxMjY0NGYxOWMxMDcxIGxlZ2FjeS10cnVuaworNTU4ODAgYzllM2M4MjgzOGMzMzgzM2NkNDBmNzVkODYzNDMzYzUyYmEwMmMyZSBwM3lrCis1NTg4MSA3M2I2Y2ViYzZmNzI3YTFjOWM0YWMwNGVmZDc3NzNlMTA0YjAyYmY0IGxlZ2FjeS10cnVuaworNTU4ODIgYjM1NmY4NzIwOTQxYjI1OTJhMmI3ZDJjN2U0NTI2YWQyMTUzZGEwMyBsZWdhY3ktdHJ1bmsKKzU1ODgzIDgyMTc4YTYwODJlYWZiZDE1MjE0ZmY0Njg1NGY3NTkzN2ZhN2Y5MDQgcmVsZWFzZTI1LW1haW50Cis1NTg4NCA2ZjNjMzM1ZWY3MTZmZmUwNGQ4ZDFjYWIyNjIwNDk2ZmRjY2MzZDZhIHAzeWsKKzU1ODg1IDliNmM0Njk0NmUwMmRkNWNmZjJhZDA5YzgyMDE3NTZlMDUwMWQ2YTEgbGVnYWN5LXRydW5rCis1NTg4NiA2NDQ5ODUwYzU3NTlhNTBhYzI2ZTEzNjJjODIzZTEyZTljOWI1NDExIHAzeWsKKzU1ODg3IGQxZDc5YzcxZmY2MmNhYWQ4OGE0ZTNhY2M3MGEwMWNjMTA5ZTBhYzYgbGVnYWN5LXRydW5rCis1NTg4OCA5ZDQwNWUxMzNkMGIyNDc3NmNjZjAzN2Q2MWU2YzljMGY4Nzg0NWViIHJlbGVhc2UyNS1tYWludAorNTU4ODkgOWJiZmQ4NDU2N2Q1MGE0MDlkYmNmMzIwY2ZhOWMwMmNhNWQ5OTgyNSBsZWdhY3ktdHJ1bmsKKzU1ODkwIGQwZTRhMzJmNmI3ODk1MTJlYjk0NDZiNWE5NGI1YTgxYTgxMmRmMzYgZGVjaW1hbC1icmFuY2gKKzU1ODkxIDE2MGI3MzE4YTNjYWI2ZTJlMjExNGIzZGI2NTBmMmYwOTAyMTMyNDMgcHkzay1zdHJ1bmkKKzU1ODkyIDE4MDg0NmI4NzU1Zjk4NGZiMTllZmFhNDgzMWMyYTI5YWU0NjkxNWEgcHkzay1zdHJ1bmkKKzU1ODkzIDA1NjYyN2NiMGU0MGEwZmNmZTUxYTRjYzU1NDYwZWUyNTFlN2MyNTUgcHkzay1zdHJ1bmkKKzU1ODk0IGY4M2NjOWIzMWE5NzdiZGU5NzM1YWMyZDM2NzM0YjMyM2JiMWY3NjQgcHkzay1zdHJ1bmkKKzU1ODk1IDk2ZWVmYzdhNjdhMGZjNTdlMWJkYTQ1ZWQ4YWQwYjlmMWVlZjJhMTMgcHkzay1zdHJ1bmkKKzU1ODk2IDNlNjRkMGVhYzc3NDhlYzhmNWVlNTI1OTI3MDc0MTlmNjIxY2U0Y2UgbGVnYWN5LXRydW5rCis1NTg5NyBlMGY5Mjc0MTRkZmEzOWExNjI2ODEzZWFiYjUxMjM0OTY1NTQ2ZGU3IHB5M2stc3RydW5pCis1NTg5OCA2MWZkNTQ0NGQ5NWY4MGJlMTQ0ODFmODhkNWM2MDZhMzcwZmUxY2UyIHB5M2stc3RydW5pCis1NTg5OSBmYWE2MjZkNmU2NzUxNzJkYWI1NmQxYmI0N2JmNmU2NGE2M2M1ZTZiIHB5M2stc3RydW5pCis1NTkwMCAxNzFmMGUwNzM2NzEyNmFjY2ZiYzI3ZmQ4ZDdhNWRiNjJlYzdkNjYwIHB5M2stc3RydW5pCis1NTkwMSA5NWJlNmMzYWRlNmU5Yzk1ZTNlNTAxOGRmNTQ0MmZkZjkyM2NlOGJmIGxlZ2FjeS10cnVuaworNTU5MDIgZDY3OGJhMDE3N2RhZmExZDIxMWNhNWMyNmYxNzFhZjYzZTBmZWFmNCBweTNrLXN0cnVuaQorNTU5MDMgMzkxMDUzM2I2NmM3YWQ0ODM4N2YzODZlYzVjZTFlNTE0ZDZmOGQ3ZCBweTNrLXN0cnVuaQorNTU5MDQgM2MzZjYxNWVkY2ZmZjdhMDViOTVlZTA4ODYyZThiNjU3ZDJkODljZCBweTNrLXN0cnVuaQorNTU5MDUgYzYzMGUzYTY4ODgzZGMzNDkwNDU0ZWE3YzJlMzhjY2ZiNTQwZjZhNSBwM3lrCis1NTkwNiA1N2MzNDQxNDk3MjdmMmU0ZjkxY2VlYmU5MmU2MjkyMTIxYTRlNzA3IHAzeWsKKzU1OTA3IDAyZDNlZDJjYzM0NzU5MDAyMmMwOGE3MjgzZjc1NTdmMjc2YWY1OTAgcDN5aworNTU5MDggMTkwZTJmMDY5YjE4MTgwMmE2MzEwYzFiY2VkZDAwNzIwZGU2N2MxNCBwM3lrCis1NTkxMCA1ZTE0Njk2ODY4Zjk3MTM5ZjYyOTRiMTA0MTllODNiMTZmZWFjYzY5IHAzeWsKKzU1OTExIDZmNzIyMDhjNjQzYjVlNDkwMWFiMTI0ZTU3ZTgwYzVjYmM2Y2E4ZTQgcDN5aworNTU5MTIgNWMyNmZlMDdkZWRmNWQ4Njg1YmMxMzgxMzUwZTA2NDk5MmEyZGUwYiBwM3lrCis1NTkxMyA3YmY4MzYwOTgwZjFmM2MxODEyNDM4ZTU3MWQxOGQwYTk4ZTE1YzkwIHAzeWsKKzU1OTE0IDhkYjA2OTY3NjJiNGYxN2Q3M2NjNmFlYjRhOTYzY2JkOWM5M2M5YzUgcDN5aworNTU5MTUgY2E2OTNmNGZkMDVkMGUyOWIwODA4MzNkMGM2M2E0NTNlODhlODUxMiBweTNrLXN0cnVuaQorNTU5MTYgODgxMjE2MmYwZjgyYTY5OGMxMTY1MTc2NGU3MDA2MTI2YTU3MThlZSBweTNrLXN0cnVuaQorNTU5MTcgODgxYWIxZDQxN2ViZTNmZWRiNDdiOGYzYjhjZTRjMjBhNWY5OTE5NSBweTNrLXN0cnVuaQorNTU5MTggODAyYzg0Zjk5YWFkMTViNjYwYjRlZjUwOTMzMmE5NDJkMmU4MDNjYSBweTNrLXN0cnVuaQorNTU5MTkgMDYzNTMwZmNjMzJlOWUxNDVjZWYyY2EzM2MzNDY2ZjkzZmM1MGVhMCBweTNrLXN0cnVuaQorNTU5MjAgNmQ2NDcyMWVjZDI2OGNlMTVlMWU3ZmM2ODc0N2M5NjcwMWI4Y2FiNiBweTNrLXN0cnVuaQorNTU5MjEgM2ZhYThjODA5NzAyNmJlNWYxYzBkNjA0MGU5NWEwMjc3N2ZhYjgxMyBweTNrLXN0cnVuaQorNTU5MjMgYTk5YTk2YjViM2Y1Y2MxNjI3N2NkYzRmNTBkOTE2NGMwOTcxYzBiNyBwM3lrCis1NTkyNCAxNzJkY2U1ZmFiYTFkYmFhNTQ3MmY4MDFkNWVlNDNlZDc2NTBiZWI5IHAzeWsKKzU1OTI1IDM0NzNhNjg1ZTVlN2Y4ZTQ0ZTliNTM2YWZmMjg5OWMzOGZiMTcwNDIgcHkzay1zdHJ1bmkKKzU1OTI2IGFmMjYwODAwNDAyMWQ2ZWRiMjA3ZTRmNWQxOTUyZDE4ZjljZmZjY2YgbGVnYWN5LXRydW5rCis1NTkyNyAwNDU5Yjg4ZTE0YjQxNDgzNzI0NDMwNjJkYzAzZGJhMDAzOTg5NjJkIGxlZ2FjeS10cnVuaworNTU5MjggYmE1ZDFhMzk3N2U5M2QxMGRlMjk3OWU4YmJkMDVhZmMzODlhZTQ0OSBweTNrLXN0cnVuaQorNTU5MjkgMGJkNzU5MTZlYzU4MTkxMmNhMGQzZTNkYjc2YWM5MDliNTJiYTU4ZiBsZWdhY3ktdHJ1bmsKKzU1OTMwIGQwY2ZmZjg5MzBlNTVhZWU3MGVhMTM4ZTViZjhhMDdiZjU5ZDEwOTAgbGVnYWN5LXRydW5rCis1NTkzMSBkYzdhODJjN2NlOWVjYjU4NWMyOGMwZDU4YjhkZjJmMWRlYzUxNDg2IGxlZ2FjeS10cnVuaworNTU5MzIgYmM5MGZjOWI3MGI3NjIzOTdhMWY4NGE0NTQ2NGJjYWFmYjgwOGM4YiBweTNrLXN0cnVuaQorNTU5MzMgNDg3NzAwODA3NGE5MWI4MDQ0OTA0Y2U1NDM1NmU0NWI1ZDFmY2JhOSBweTNrLXN0cnVuaQorNTU5MzQgNjU3ZmU3OWE2ZGZlYmIzYTUwNzZmZWI5ZDczM2ZkZjEwYjgyMzdlNiBsZWdhY3ktdHJ1bmsKKzU1OTM1IGU4YjIwNjBjY2I1OWM3YWI1MDlhMDhmNWJmYjlhYWIzMzc4ODFiZDggcHkzay1zdHJ1bmkKKzU1OTM2IDQ1YmI5N2E0ZThiNjcxMTc4YjY1M2QwMTE1MGJiYmZhNmE4ZmVlMWMgcHkzay1zdHJ1bmkKKzU1OTM3IDRmYjg1ZTZmODJlNWUyZjAzMjJjNjViMjI3NWY2YjM0NjA1ZDFhY2YgbGVnYWN5LXRydW5rCis1NTkzOCBlOWZiMDZiNDQ0NmUwZTllOTRlOTY0YzVjYmM2ZjI0YTFhOGU2OTA3IGxlZ2FjeS10cnVuaworNTU5MzkgNTYwNTcxOWJlZWUzY2FmNTM4M2NjNWY1OGIwOGIxNzVjZDA0N2M2YyBwM3lrCis1NTk0MyA4MjUwNDFmYzhlMmMxZWQ0YTNiZmYxNzY0MDU4Yjg1M2VmZGY4NDE5IHB5M2stc3RydW5pCis1NTk0NCBjZTYzYTVkY2IwYWYxMzQxNWY5YmZhNDc1NTFjYTQ4Nzg5Y2IwMjVmIHB5M2stc3RydW5pCis1NTk0NSBmODMzYjQzYzI3NTY4OWViMjQ0ZTZiZDFkNDA4NTI1NjFmMGU4Y2U4IHB5M2stc3RydW5pCis1NTk0NiBmYmFiZGIwZDdkZDIyYzRhNjE2NzUxZTg3ZTkxNzBkMzcwY2ZhYTAxIHB5M2stc3RydW5pCis1NTk0NyA4Y2ExZDNhN2Y0ZjBmOWRmN2U4NDI5MTJhZTc3ODg1NWY5MzYzYTkwIHB5M2stc3RydW5pCis1NTk0OCBkZTg4MDM4MTY1NGFmNmY3MjBlZmQ0MzMzMTBiYTE1MzllNzg1ZjYzIGxlZ2FjeS10cnVuaworNTU5NDkgMDMxOGEwZjU0NTIwZTQyNzFhOThjMWI3OTAxNmQxNzI3YTliZDAyZSByZWxlYXNlMjUtbWFpbnQKKzU1OTU0IDYwYmUyNzYxMDU3YmZkZDNlNDMxOGNhNTAzYWU5NGRjODk2ZDk2MGQgcDN5aworNTU5NTYgYjUzOTEyMTRkZjM1ZGVlN2U2NWY2OWY5YTRjNDhhNjBlMTUxMzgxMiBsZWdhY3ktdHJ1bmsKKzU1OTU3IDNkOWUwZWZjYTVkMzUyOTY0M2RiYWM5ZGQ3NzBmMzJhNTQ0ODNmOGEgbGVnYWN5LXRydW5rCis1NTk1OCA1MGJlYmVkYzYxNGVkNTRkNTQ0MzljNWJmNjJlMDgzY2Q1YTFlMjE2IGxlZ2FjeS10cnVuaworNTU5NTkgOWUxMTRiMWZkOTRlODM4MDhmZjUwODIwY2Y0YTg5ZGFkMzcxMjZjMiBwM3lrCis1NTk2MCAwNWYxZmQzMTM0NGRkOGJlNjgwOGE0ZDBlZTI5ZWZmZTEyZTkyMzg0IHB5M2stc3RydW5pCis1NTk2MSBmZmIxYWU3MjMzYTIyOTk4ZjE5OTFhNTBhMzhjZTRiODVmN2RhOTQxIHB5M2stc3RydW5pCis1NTk2MiAzNzE4OWUzNzVlYzc5NmFiMTYwN2M1ZDNmOTgxOTMzY2E3NmUwMDlkIGxlZ2FjeS10cnVuaworNTU5NjMgMjI5YzI4Y2I5YWZiMjMyOWMwZjU1N2JhZGJkNWFmMDhiMzQ2MmQ3MyBweTNrLXN0cnVuaQorNTU5NjQgNTM2OThmOWE0ZWI3NmU1NDhiMmEwYjY3NmNhYTc3ODUzZDZkMGIwZSBweTNrLXN0cnVuaQorNTU5NjUgNTY3NWY2YzNmZjgzZDFmMzA3ZjEyOWYwMmZkMGNhZDBmOGE4YWY3ZCBweTNrLXN0cnVuaQorNTU5NjYgOTczOTkyYTc0NDBhMWNjNTgyMTA4NTI1OGNjNjYzNmVkMjkyYWMzNyBweTNrLXN0cnVuaQorNTU5NjcgYjdlNTQ5ODU3MzIxNTk3YmE5ZDQ3ZDM1MmUzN2NjNGJkYTk0NjU1OSBweTNrLXN0cnVuaQorNTU5NjggMGUwMTBkYjEyMmM3MWEyZTIzYzYyZTA1MGFlMmRlZmNkYTVjOTliMCBweTNrLXN0cnVuaQorNTU5NjkgODY5MzdiMGNkNTZhNmMwYWFiOTkwMzQzNmYxNzU3OTU0ODVkNmEyZCBweTNrLXN0cnVuaQorNTU5NzAgNzJmYzdkMDI5ZDNkMmIzYzFkNmYxMDgzZjY5NDJiZmE2Zjc0MDY0MCBweTNrLXN0cnVuaQorNTU5NzEgZDE3YTI3MjQ3OTg2MzAyNjVhZDAzNTRkOTY0NjQ3NjBiZDk3NjJhNiBweTNrLXN0cnVuaQorNTU5NzIgMzY1NjdmZTAyZWE1ZDExMTRkMTNhYWU1MzdmOTVkNDcwYTExNzMyZiBjcHlfbWVyZ2UKKzU1OTczIDQ5N2ZhZGUxZjg3MzQ4MjQ2YWE0MDZkN2M0ZTgzNGM5YzcyNmZiNzcgY3B5X21lcmdlCis1NTk3NCAyY2Y3Y2U0MWVjNjAzNTliMjljMGE5N2FlN2QwZWZlMzEwNTUwODg0IGNweV9tZXJnZQorNTU5NzUgZmQ4ZGQ3NDQ3MGY5NTkwNDdlZjkzNGE5OWQ1ZjAzNDU0MjU5OTU3OCBsZWdhY3ktdHJ1bmsKKzU1OTc2IDQ0YjQ0YjBhOWZlMjU3Yzc0OGY5Mzc1MWQ1NzQwMGNjYjRlYWVjMGIgcmVsZWFzZTI1LW1haW50Cis1NTk3NyAyNzFmNjg2ZjYyMTgxMWRjYzYzMjgyMzQ5MzViNDEwNjhjZTk4OWE0IGNweV9tZXJnZQorNTU5NzggZjY1NjcyYjhlN2QxZmVlOTQ3ZTZmYjkxYTg1YzkyMzMyM2MyNDlmZCBweTNrLXN0cnVuaQorNTU5ODQgODVjNDQ2ZjRiMTk2MjJjYzg4YzhhN2FmYjQ4ZTg5MTQzMjU1NTg1YSBsZWdhY3ktdHJ1bmsKKzU1OTg1IDRmNmNlOThiMDYwZDFmYzZjOTQ1NmNiZDZmNTRmMWE2NWViNGExZDggcDN5aworNTU5ODYgMjQ2MzI0YjM5ODk2YjEzMGJkNzJlZDE4OGM1OWE0OWE5ZjdmNGYwYyBweTNrLXN0cnVuaQorNTU5ODcgNTgzOGJlYzdjMTE1OGFlMzAwNTc2NWU2MDdlOTg3ZDNiMDRlNDljNCBweTNrLXN0cnVuaQorNTU5OTEgNjcyN2NjOWVkMDlmZjFmNWIwNWRiMzE2YjcwNDk0OWQ5ZmM4YmMzNiBweTNrLXN0cnVuaQorNTU5OTUgNDg3NzQ3ZDkxMGM3NjJjMDJlYTNkZTdhZmQ2ZDM4ZmUxOTQyOTI2YiByZWxlYXNlMjUtbWFpbnQKKzU1OTk2IGQ2ZDFlODZhZDQ2YzFlOTBkN2U4ZTMxNDcwZmE0ZTgyNWEwNTRjOWUgY3B5X21lcmdlCis1NjAwMSBlZDZjODJkYTFhNmNlZWIxZDk1ZDE4NzljZDA0MTNkMWZiNjI1OGIzIGxlZ2FjeS10cnVuaworNTYwMDIgOWJhOTkyZjY0ZTk1N2YwNzg2YzA1ODQ0NjA1ZDJhM2FiNWYzYmNhNiBjcHlfbWVyZ2UKKzU2MDAzIGU0ZTZhNGQ3YzE2ZTk1OGNlNDkxNDAyNTM5MWM5MWI4Y2UyMmI5NTUgcDN5aworNTYwMDQgN2Q3YzQ4MDU2M2UyMWNjZmRjMDViOGE3ZWYxODM1NDBlYTNjNThiZiBwM3lrCis1NjAwNSA4ZTg2MDk0MzJlNTZjODkxZmEzYTgxYjU3NTM0YjQ4YjU3YTg1MDhmIGxlZ2FjeS10cnVuaworNTYwMDYgY2VkOGRiNjE4ZTViNmJlYTk1OTk2ODE0ODY0NzRmMTI0YzkwYWRlZCBsZWdhY3ktdHJ1bmsKKzU2MDA3IDQxZDQ1YzIyZjE0Nzg2MWQyODk5NWVjNzVmY2M4MGQwZTI4YTlhOTUgcmVsZWFzZTI1LW1haW50Cis1NjAwOSA4NTNiODQwOTMxNTE0NmY0MTMyNDNmMGVjZTk2NGEwMzQ2NDUyMTU3IGxlZ2FjeS10cnVuaworNTYwMTAgNTZlYzM0N2RhOGU0MmY0ZDY0OGY3NTlhMmU1YTBiMjI2ODA2NTNhZCByZWxlYXNlMjUtbWFpbnQKKzU2MDExIGE5YWVjYmY1YjEzZjAyM2M3ZGM5ODcyMjMzMzg4YjQ2NTkyMDIwNDAgbGVnYWN5LXRydW5rCis1NjAxMiAwMmRhNjMwNThkNmIxNGU5YTEwNjQ0Mjk4OTZlYmJhNDZmZGI1ZDk4IGxlZ2FjeS10cnVuaworNTYwMTMgNTk0OTdlYzI4Y2FhYmUxMzQyYTY0NTEzMmEzNzAxNWJlNDFkMjNjYSBwM3lrCis1NjAxNCAwODA1MTU3NzM0ZjhkOWRjMjBmOGM3M2Q5NDk1NGZiMzUxMzA0MjUzIHAzeWsKKzU2MDE1IDI1OWRlMzg3NDQyMDYwMjIyNDY3OTA0MmU0ODY5MjhjM2E3YzljMDAgcDN5aworNTYwMTYgODI4MjNlMTNiNjZjZDllNjBiMGE2YWIyY2E0OThhYTZkODMwOGUxNCBwM3lrCis1NjAxNyAwZTIwNDM2MjMyOWVkZTcyOTU0ZTAzZTk3MzA2NDY4NTJlZjkyZWFlIHAzeWsKKzU2MDE4IGI0NTY1ZTA5NjEzMWYxZDFkZjA0MTc5ODU3ZjcwMzhjMjU2YjQ5OWIgcDN5aworNTYwMTkgYjJlNzMzNmZlYjgyNmE3NmRiYWQ5NmE4MTZmYWU0YmRiZDYzNmEzNiBsZWdhY3ktdHJ1bmsKKzU2MDIwIGU0ZjY0OWM0ZjQ1NzI1ZWRmNmQ5YmJkYzZlNjYxOGZiYzcwMzk2NjYgcHkzay1zdHJ1bmkKKzU2MDIxIDMyZmUyYjllOWYxMTE0MzNjNzc4ODIxMTE4OWUwMDljNmMxMTkzODMgcHkzay1zdHJ1bmkKKzU2MDIyIGViYzg3Yjk0ZTZlYWI1ZDEwMzgwMzA5OTU4M2JiYmMzMjIzODNmZTYgcHkzay1zdHJ1bmkKKzU2MDIzIGE0YWU2MjY1M2E1Y2IxNjljZGUwZjVhZWZkNTBiYTE0YmUwYWM3MTEgbGVnYWN5LXRydW5rCis1NjAzNyA3Yzg5MmU3M2U4ZTQ5ZjUwNTU4YTI2MDkxZjIxNjlhYWY5YjRjNmU1IHAzeWsKKzU2MDM4IGFhYjkwODBhYzRjN2VhMzY5ZTJkNzhhMGQxNjRhYTBlZjk1NTM2ZDAgbGVnYWN5LXRydW5rCis1NjAzOSA2NmM4MzQ3YTY0ZGRhZWQwNWMxZGQ4NTg2ODA2YjdlODY2ODk1ODFjIHJlbGVhc2UyNS1tYWludAorNTYwNDAgMDRhNDE4NWJkNGQzY2MxNjUzNWQwNmM5MWQ5NjVmNWE2ZTM0YjU3ZCBsZWdhY3ktdHJ1bmsKKzU2MDQxIDY3ZjcwOTdjMzRmMzQ5OTgyODA1MWZhYzZlZDMyNDQ5M2QwNTE3ZTYgcmVsZWFzZTI1LW1haW50Cis1NjA0MyA3MGEwODMxZmVkYTY5MGU0NGE1Mjk4MTBmMjhiZjI5OGNiY2ViMzA4IHB5M2stc3RydW5pCis1NjA0NCA0ZGIwYTBjYzU3YWJlZTk1NDExY2UwZDE5OTM3NGNlZjJmMjhkNDJkIHB5M2stc3RydW5pCis1NjA0NSAwNDEzOWUzMGU2NGRhOTUxZWY3ZmQ1ODhmM2ZhMjdiNzcwYzA2NjlkIGRlY2ltYWwtYnJhbmNoCis1NjA0NiA4NDI1MzM0NzdjZWE1NDQ0OWViMTc3N2M2MjU2MjExZjU1MTQyNTI2IHB5M2stc3RydW5pCis1NjA0NyAxZjA2ZDVlZTQwYmQ3ZjJjMWFjODdhMzAxZjZiODk1MjNhMDVlMjk5IHB5M2stc3RydW5pCis1NjA0OCA2NzEwZjQ1M2NmNGE4YTJlOTU3NTliN2JmM2ZlODYyNzdkMjBmZjg1IHB5M2stc3RydW5pCis1NjA0OSAzODNjODkwN2JlYTA0NDgwMzFkZmI4NGY3Y2U1MTQzZWY4ZTQyN2M2IHB5M2stc3RydW5pCis1NjA1OCA2YjMyNWIwNjVhZWRhZWYzMWRhY2U1YmE5NmU3N2NkM2MxYTE5MGZlIGJjYW5ub24tb2JqY2FwCis1NjA2MCAzOWVhYTljMDI0NmU0YTJiMjA4MzhkNDRjNmVmMmZiODkwYzliNmJiIHAzeWsKKzU2MDY5IGUxM2Q1YjEwNTNlZjgzMTlmZTZmMWUyMDg3NjNkODQyZTIzNjZkMDkgcDN5aworNTYwNzAgYmU5ZGUwNWJiODg5Y2MyYjlkMTFlZDA1Nzg5NTgzNDZlYWY4OGI4MCBwM3lrCis1NjA3MSA5NTkyNzY4NDQ3NmJlMTZiZGIzZmEwN2VmNTJlNGE3MWRiODM5YjUwIHAzeWsKKzU2MDcyIGY5N2I2NmU5YWE4ZjBkN2I2NmY2YWQyYzBmYjRhNmYyZWQ5Mzk2YjcgZGVjaW1hbC1icmFuY2gKKzU2MDczIDQ1OTAxMjllNGMyYjVkZjhkNGQyNjdkYTg5ZTJkYzZkMDMxNzU0ZjYgcHkzay1zdHJ1bmkKKzU2MDc0IDc5YzI2NTYwNTZmNjc1ZWFhODUwYTI1YjRlMDE3Y2U1MmRmN2Q0OTMgcHkzay1zdHJ1bmkKKzU2MDc1IDhmYzkzMjE1YzBjY2ZiYjA0MDg4MTRjYTczZmZlZjMwM2ZiODZkYjcgcHkzay1zdHJ1bmkKKzU2MDc4IGMyOTFkMmY2ZDAxN2YyNTE1ZmNkNzE5NGNkYzc1ZTkwY2JmNDI0YTcgY3B5X21lcmdlCis1NjA3OSBiOWJmN2M3NjBhMTAyNWJiYWVjN2MyOTE0NDMyOGFkMGRkZmU3MjlkIGNweV9tZXJnZQorNTYwODAgOWI1NmM5MTYyNTM0NzRhYTc2YjE0YjdmNjhhM2I5OTRlMGU3ZTBlZiBjcHlfbWVyZ2UKKzU2MDgzIGU4NzZmNjQzOWRjN2JjNWMyYjY2NWVkZjg2OGRlNDRiNTdjZWE2NDggY3B5X21lcmdlCis1NjA4NCA0MWU4YWQyYzliYTk5MWM5NWEwMjEzOTRjOWRjNWJmMjg0MzY5ZDMyIGxlZ2FjeS10cnVuaworNTYwODUgZDgzN2I1ODQ2ZDQxNGZjZDgwZjY5ZjUxMzhmYzBmNjM4YjAxMTYzZSByZWxlYXNlMjUtbWFpbnQKKzU2MDg5IDlhNmFjOWE3ZTNhNGZmOWZjNjkxM2EyOTI0MzEzMjJkYTY4YjY4MWQgcDN5aworNTYwOTAgZGIzMjA4NzA0YWMwYWY5ZDQ5Mzc0NGEwZGQyNjA0NWNiMTVjYzE1NyBiY2Fubm9uLW9iamNhcAorNTYwOTEgNzA1YmM3M2VlNDMzMWM4YzMwYzhjYzIzZjIwODFmMGMzOTY5YmQ2NSBsZWdhY3ktdHJ1bmsKKzU2MDkyIGIwMDc0ZmQ5MjYyMWM2NzNjMTcyYmU2MzkyYTAwMjdiZDNkYThjNDcgcmVsZWFzZTI1LW1haW50Cis1NjA5NSBiZjZlYjg4NDdhNDI0NDAyOWRiMGZkYTUzYjY4YTU4NTA5NTVhODgxIGJjYW5ub24tb2JqY2FwCis1NjA5NiAxNTkwMzFkYjhlOWYyODU3MzA3NWU1ZWE1YTZiMmM3NWYzMTlmODlhIGJjYW5ub24tb2JqY2FwCis1NjA5NyA2MzNiMDQ5NDdhYzQ2MDVjMDY0YjliZjg5YzJjMGQ3NmY5NTgxY2YxIGNweV9tZXJnZQorNTYwOTggYmIwOWVhZDA0ODQwNTNhZGE5NTU4NzA3MmQ4MTNmMmNiZjBhZmY1OSBjcHlfbWVyZ2UKKzU2MTAwIGEyMDAyNDBkZWE4YWI3NjM5ZTViY2FlNDU2MjhkODlmZTAwMWU4NWIgYmNhbm5vbi1vYmpjYXAKKzU2MTAxIDNmNTg5YzU2NDQyNmQ4N2MxZDA1NzJkMzAyZGU2MDk1MjM1MWJlYjUgYmNhbm5vbi1vYmpjYXAKKzU2MTExIDdhMTE4YWMxNDlhMDY2NzAwM2E1ZWZmM2RjMjZmMzlhZTg2ZWYzZDYgYmNhbm5vbi1vYmpjYXAKKzU2MTEyIDUwZDMyNjQ3YjAzNTY1MmFiMjc1MmI3MzIwMDg2ZDI3ZWMyYzVlZmYgYmNhbm5vbi1vYmpjYXAKKzU2MTIzIDVmMTQ4ZjZlMGE0Njc5OGVhZWIyNTVkYmQyOGQxMDA3YTFhMTQxMjkgY3B5X21lcmdlCis1NjEyNCAzMTRhZGMzYjdiYjQ3OTk4YjlkZTY5M2QxMjZhNDM2YWZjZjQxNmVjIHAzeWsKKzU2MTI1IDdmZjM1YWQ0NjZlYzU1ZThkYjNiZjMzYzcwYzljN2Y2MWE4NjAzN2MgcHkzay1zdHJ1bmkKKzU2MTI2IDg2M2VkN2NkNDVkYzhlZDU2NjFkMzk3MWNmMGRhNzYyZDA3MGEwZGIgcHkzay1zdHJ1bmkKKzU2MTI3IDQxNjc2ODBiM2FlMjRmM2Y2MmMxMDliYzRkZjZmMmViMzJiNjE0YzQgcDN5aworNTYxMjggYTg1ODJlMjU3NDhiNzI5NTdmY2Q0N2QyOWRhMTQzYmY0MmU2YjYzMSBweTNrLXN0cnVuaQorNTYxMjkgZGE0Y2M2NzY3M2E4NTFiNjg5NjExN2MyOWEwNDAwMjkyZWFhMzM0ZCBsZWdhY3ktdHJ1bmsKKzU2MTMwIGM3NmE5NDMyMmNjYzg4Y2ZjNDQxOTdhZmJkZjUyNjc4ZWI4ZTE4YTAgcmVsZWFzZTI1LW1haW50Cis1NjEzNCA3OGJjMDc4YzczNTBlMmY5ZmY2MjFhZjQzMzYwZTE2MGYzMWFkODg2IHB5M2stc3RydW5pCis1NjEzNSA4Mzc1MzU5OTQyMGRjOTM4YjJjYjVlMDUxNDc0MGQxNTEwYWQ5ZGNmIHAzeWsKKzU2MTM2IDI4OTljZjhjYTU3MjVmMGEwNDE5OWQyOGFlNmIzZDliZTMyYzUwMGEgcDN5aworNTYxMzcgZGNjZjE0ZmUwMGVjZDNjYzFlNjQ3YWUxMjMxMGQ3MjkzMjBmNmFjMCBsZWdhY3ktdHJ1bmsKKzU2MTM4IDkwODU4MGI5YzhlMTBiZjJiNDMzY2JlOWZjNGNjMTBlYzdmNzBjODEgcmVsZWFzZTI1LW1haW50Cis1NjEzOSBmNTM1NzEyNGNlZmU1NDIxMmQyMDQyZGQ1NzNhZGJjN2NiMmQ1ODU3IHAzeWsKKzU2MTQwIDFmN2I2NmE5ZmZiMGQyNzJiMTdiMGQ5ZDYwOTBhYjdkODZhODEzODAgcHkzay1zdHJ1bmkKKzU2MTQxIGUzYmNiOTg0YjI0YzhlOWQ5MTlhNGVhNjY5YjdmMjE1NTkxYmUzOGYgYmNhbm5vbi1vYmpjYXAKKzU2MTQyIGQ0YzRmODljNzc3ZDQ1MzlhZGVlZWIzY2JjMDA4MDEyODk3MWMyZDYgcDN5aworNTYxNDMgNDA3ZDE3NGRiNmRlYzdmZjc3YTRhN2IwNjkzNDYzYjc0N2EyZDAxYiBsZWdhY3ktdHJ1bmsKKzU2MTQ0IGMzZWEyNzc5YzYzNThhNTI1MzVhMmNlNjQ2Mjc2N2JmOGMwNmEzZmMgcmVsZWFzZTI1LW1haW50Cis1NjE0NyA2MDRiZmE2M2MxMTM4OWZkYTkzYmFiN2RmMTQ0ZmU5OThlMDFiZTU3IHAzeWsKKzU2MTQ4IDIxMzc0MzY5Mzc1YzE2NTk4ZjcxMTViZmMzYzIwYmU4YmQ0NGM4N2QgY3B5X21lcmdlCis1NjE0OSBhYjc0YmRiZjZkYWFmZGI3ZTFjZjhmNzUxMDY3ZjdkMzhhZWM3M2FiIGNweV9tZXJnZQorNTYxNTAgZWIyZDUyNTg2MDE3NTg3OWZhZDU5NTY1ZjQyZmNjODAxMzY5ZjdlNyBjcHlfbWVyZ2UKKzU2MTUxIGZlYjI3NmMwODkxNzFjOGRmMjgzYTFkMWQ4YmVhNmJiNWJlN2M3ZTUgY3B5X21lcmdlCis1NjE1MiBjMmNjMTIwM2JkNjljOTZlZDk4MjNiM2FiYmUzOTJjNmE5ZjA0ZDg4IGNweV9tZXJnZQorNTYxNTMgODE3Y2JmZjlmYmViNGRiNDQ1ZWE0MjQ1MjQ4OTRiZjYyNTQwMzBmNCBjcHlfbWVyZ2UKKzU2MTU0IDhhMTdlNGM0MmEzNWZiOTY5YjlhN2U0NjRmNWIwNDg5ZWMwZmY1NzQgY3B5X21lcmdlCis1NjE1NSA1YjFlNzRmYzQyYjgxZmI1MDZjMTU0NTM3OTA5YTFjZDQwZjljMGEyIHAzeWsKKzU2MTU3IGE1M2U0OGJlNmRmOTU1MmM2MmZkNjEzMDQ3YzFjNjdjOTcxZDQ1OTAgcHkzay1zdHJ1bmkKKzU2MTU4IDBkYzYyNjQ3YWZmMGNjZGM3OTU0MWJiNDlhNjk3MWQ4MjkwYjZlOTQgcHkzay1zdHJ1bmkKKzU2MTU5IGFlODcwMjI4ZDVmMzM0ZTM5MTcyNzU2M2RhYzk4ZWNkYzA2OGFiMTMgcHkzay1zdHJ1bmkKKzU2MTYwIDMxZjQ3N2IwODhjOWY2MjNiYmZhMWUzMWMyZTAzYzMzMDNmNTFjMzAgY3B5X21lcmdlCis1NjE2MSA4ZWVhYTk5MjM5MDFmMzg4NDUyMjA5NzdmZGViNzExNzM1ZTlmMzU5IHB5M2stc3RydW5pCis1NjE2MiAwMTAyZjVlNTM3MDM5ZjYyNjg2NDY3N2Y4ZWUyMGU5N2NlNDNmNzcyIHB5M2stc3RydW5pCis1NjE2NCA1MTg3ZWQ2OGFiZTBiOGQzZTNlNzFhMWFkZDQ0ZTM2ODI3NWFiZDY3IHB5M2stc3RydW5pCis1NjE2NSA4YTk0Y2U1MDIyMDliMDk1NWE0MWViNjI3NTE4NWQyNDExZmFjY2MyIHB5M2stc3RydW5pCis1NjE2NiBlNDc2OTk3MDQ4YTBhYjUxM2Q1N2YyMjFlZWEwMTJhYzBlODBhYzMyIHB5M2stc3RydW5pCis1NjE2NyBlNmM1ZmZhNmRjNjczODE0ZWZjOTQ4ZDgyOThkOWVhNDAxOWNlNmE0IHB5M2stc3RydW5pCis1NjE2OCA0MGE2YjkzZjllMGJlOGExMTZkYzZmNmE4YzliMWMxNGY2ZTEyNzBjIHB5M2stc3RydW5pCis1NjE2OSAzZjc4Mjc4MTAyMGJlMjJmOTUxYjMyY2Y0MmQ2YTA4MjE0NzZmY2U2IGNweV9tZXJnZQorNTYxNzAgYjBlYWJhOGI5ZjAyOTM1NjIzM2FlMWI3NzJiZDhmYTlhN2I0MjA3MCBsZWdhY3ktdHJ1bmsKKzU2MTczIDc5NmM3OTYyMzkzODM2NzUxYzk2MjBjZDEyNGMyYTU4Y2M0NjAxYzAgY3B5X21lcmdlCis1NjE3NCA4YjJmZWJmZGE1Zjk5YTM5ZWU3NjNhZGYzMWUwZmU4OTZiNDE4YTllIGNweV9tZXJnZQorNTYxNzUgYzQwNDRlNDdmYzFhZmVkMGU3NGY1OWZiZDRhOGQyNWI3MzBkMmQ0NSBjcHlfbWVyZ2UKKzU2MTc2IDllNWEzOTYwOWEyMDhkZDFlZDBhNDllZGY0ZGU3MDJkMjAyYjlhZGEgbGVnYWN5LXRydW5rCis1NjE3NyBkNjM2MmVkNTQ4YjBiMTcwZGM1MjNiOWZiMDMwZTk1YjAwZWJjMjNkIGxlZ2FjeS10cnVuaworNTYxODEgNzIyNGU0MjA4MWJkMzgxYmI5ODhhYzYwYjU5NDY5OTAxNWI3MTQwYSBjcHlfbWVyZ2UKKzU2MTgyIGRkODk2MDUxMjZlNTg1Y2RmZDFkN2QwNjg4ZDRiOGZjNDk0OTgxNTAgY3B5X21lcmdlCis1NjE4MyBkYmM3NTNjMDIwMDczNjJkZTcwNThjODJhYTJjZDQxZGQzZDcxMjc1IGNweV9tZXJnZQorNTYxODQgOWMwOGQ5MTY5YzFjZDQ0OTIxNDExMzEzMTEzMWMxNzgzZTc1ZjFiOSBjcHlfbWVyZ2UKKzU2MTg1IDM3NDEzZjYyMTEyMGEyOGIwNDc1Yjk2MDg5N2Q0ZDZkNDM4ZmY0MmQgY3B5X21lcmdlCis1NjE4NiAwNGUyNGI3OTIxOGFmMjg5MWQ4MjhkN2Q5NGQ0NmZlZTk5NjQ2MTBlIGNweV9tZXJnZQorNTYxOTMgZTYyZTJiODExMzZhMjJkOTY3ZmE0NzJjZDQyOGIyZGY1ZmMyOTMyNiBjcHlfbWVyZ2UKKzU2MTk0IGIyZmZjMDI4NTg1ZmIyZDBmYTg0OTQxZWY5YzQ5YTAyZTEyYjMyZjEgY3B5X21lcmdlCis1NjE5NSA0ZmE2ODM4N2I2YjM1OWU5YzA1MGU2MmQ3ZTE1ODc1MjA5MzYzYmQyIGNweV9tZXJnZQorNTYxOTYgYWEzMGIyYjA1OThlNDgwN2NiYjQ5NWRjZDViN2I4MjljNTcxMDI5OSBjcHlfbWVyZ2UKKzU2MjAyIDUzN2ZlOGRiODMzNDk4OWQwMzExNzk3NGZiNjJmMmNjMDI5NzliMWEgcDN5aworNTYyMDMgNzRkMTFkNDQyODk4NWNhODY0ZDA5Y2U4YTQzMTg2MGFmZTBiYjAzNCByZWxlYXNlMjUtbWFpbnQKKzU2MjA0IDc4MmY0YjNlNGRiMDhlMzYwZDJhMGMyZjllNWEzNjE3NzEwMTRlNTEgbGVnYWN5LXRydW5rCis1NjIwNSAyNjM4Yjk3NDkzNzE0N2I4ODE5YzZhNGNmOWZmNGIyYmJmMDA5MDMxIHJlbGVhc2UyNS1tYWludAorNTYyMDYgZWM0YjczY2IyNDQzOTQ3NjcxYjE3M2Q0OGI4NzcxYzIyOTYwMTI1MCByZWxlYXNlMjUtbWFpbnQKKzU2MjA3IGQ4OWQ5MDBjNWQ3ODJkNmYwNDFhMjIwMDgyYjFmMmZiZjIyNTE4ZWEgbGVnYWN5LXRydW5rCis1NjIwOCBiZjIyMmViZmYwZTU0NzQzYzVjNGI3YzY2YWNmYThmZGRiODU3NWYwIHB5M2stc3RydW5pCis1NjIwOSAwZWI4NDBmMmRhZmE5ZDlhMjE5ZThjNWEwZGJhMjA1NDg1OWQwZWRhIHB5M2stc3RydW5pCis1NjIxMCBhNjJlY2NiNTNmMzAxYmIzMWI0ZmJmOTZkOTNmODU4ODJiYWYyYWIwIHB5M2stc3RydW5pCis1NjIxMSBiZmY5ZWJhYmZjMTU1OTM5YzQ1MjdlYWQ4NjIxYTM1YmU2N2U4OTJjIHB5M2stc3RydW5pCis1NjIxMyAxNmU4M2JmODFkZTk4ODllYjhjZDAyYjE5MWVjOWRhMTIzOThiMmRmIHB5M2stc3RydW5pCis1NjIxNSBkZmI4ODU4YzA2NjQwZGRlNDZmZjJhZWY3ZjJmZTIzNDYxOWIwZmM0IHB5M2stc3RydW5pCis1NjIxNiA3ODIwMzI5OGI0MmI3OTQ0YjViYWNmOWVlYmFjYTZiYTFmMzE4ZmUxIHB5M2stc3RydW5pCis1NjIxNyAyOWJhNmMzOTkwOTAxZGU2OTA0ZGM1NzBjNjcyNjIxMGY1OGQwY2Y0IHB5M2stc3RydW5pCis1NjIxOCA2YjMwYmQxMzBkYzE3ZDhjMGU3ZDM0NDQwZDU5ZmRkYmYxZjlhMzg1IGNweV9tZXJnZQorNTYyMTkgZjRiOTkxOTU2NjJmZGViNWY4OTkxN2EyM2ZiNzI0YmI1MGVmYTE2YiBjcHlfbWVyZ2UKKzU2MjIwIDMzNTA2ZDEzZGQ3OTBkZGI4Yzk4NzQ1YjAzYjk0Y2FhMTc2Yjc5MTkgY3B5X21lcmdlCis1NjIyMSBkOWQ0ODJkMDM4ZDVkYjIxZDk4NTdmYzQ1ZDFlNjFiNmI1YjYxZGJiIGNweV9tZXJnZQorNTYyMjIgNDAyYTA2ZWNjNjEzMTA2ZjI5MTc0ODNkNGI1YTg5NzAxOGI5MDVmZiBjcHlfbWVyZ2UKKzU2MjI1IGYwOTc5YTg2NjcwZjQ3Yzc4ZDNkZTQxMWI0MzA5OTI4ODYyM2Q1MmMgcHkzay1zdHJ1bmkKKzU2MjI2IGUzODA0NzU1MDM4MzRiNjhjMmI0MWIzMDVkMWEyYzIwNzExMTQ1ZDkgcHkzay1zdHJ1bmkKKzU2MjMwIGFjZDFmNjQyNzA2ZjJjNzc3ODlhNDQ5MDFmOWE5MzY0ODYxZjU1NGUgcHkzay1zdHJ1bmkKKzU2MjMxIDlkMGQ4Y2FlMWNjNzNhZmIyMjU5ODhmN2JmZDk4M2YyZWFiYjYzY2MgcHkzay1zdHJ1bmkKKzU2MjMyIDNkYjAwODNmNjY4MzdkMDEyZDg2MGQ2MTI3Yzg0NThiMDYxZThiOGIgcHkzay1zdHJ1bmkKKzU2MjMzIDkxYWRlNjdhYjIzMGRjNTBjZmY4YTllZTk2ZDVkZmZmNzRmNzMxNDAgcHkzay1zdHJ1bmkKKzU2MjM0IGYwYTk2MTNmY2Q5MzNiYWNjNDU5NzUwYWE4YTEyY2U5MDgwNzdjM2UgcHkzay1zdHJ1bmkKKzU2MjM1IDhjZmRhZDIwNDY3NjM3OTcxZjhjZDU3N2JkNjY1ODAyNzI3N2NhMDIgcHkzay1zdHJ1bmkKKzU2MjM2IGRkYjkxOWRjYjQ4MjBmZjA1MjJiZmQyMDVlMTU1OWI5NTMwODc4NDQgcHkzay1zdHJ1bmkKKzU2MjM3IDhkNGI2OWUzMTU4MWJkNGQ4MTIyNmQ3MTdmMTRhODYyZTY4NGU0YWUgcHkzay1zdHJ1bmkKKzU2MjM4IGIyZGMzMTcxOGIwM2YyNjQwN2RmZDU3ZGY3MDI2ZjkyMjU2MTE0ZjEgcHkzay1zdHJ1bmkKKzU2MjM5IGY0YTFiNzZhNWE2M2QzYWE0ZDZhNDMzYTdjMzc4NTIxOTFiMWMxM2UgcHkzay1zdHJ1bmkKKzU2MjQwIDU2MjE1MDcxYzc0MmU3YjUwOWNjN2I0NmQxNjYyYmM5NjljNDE0ZTkgY3B5X21lcmdlCis1NjI0MyA5Zjk5ZWE0ZjgxZTkyZmM5MDU5NmI0MTk3YTcxY2NiODNjNTAyNWJhIHB5M2stc3RydW5pCis1NjI0NCAzNjQxYTIwNjMwZjNjOGM5MzhmMzY1MTM5Y2EyYTAwZGQ4MTgwOWNjIHB5M2stc3RydW5pCis1NjI0NSAwZTQ0NjA4MDNiNGE4MDkzNTQ3ZjI5ZDczNTFmMDA2NzlmNDk3OTRiIHB5M2stc3RydW5pCis1NjI1MCA4YjMxNjA3Y2FhMGNiMTg4OGY3N2ZkZWNiODczZGVlN2EzYmYwNDZlIHB5M2stc3RydW5pCis1NjI1MSA5YjM4NjYwNDIxZWU5YjlmZDQ1MTMwNzY1MGY1MzUzYjA5N2YxOWNhIHAzeWsKKzU2MjUyIGJmNWQwNGUwZGE0Yzc1MjI0ZDJjMzJhNmMyZTQwYjlmYjc3NDU1N2EgcHkzay1zdHJ1bmkKKzU2MjUzIDYyMjgwNjI5MDlmMzQ3ZGIwNzcyYTJlNDAwMTliNDBlNWY3NmVmY2IgcHkzay1zdHJ1bmkKKzU2MjU0IDc0N2IxNTE5YTM2Y2RmZTA2ZmVmN2NkMzk3MTM5ZmQxM2Y2ODljZDAgcHkzay1zdHJ1bmkKKzU2MjU1IDFkY2YxZjEwODYyYzAyMjA1YmQ1Y2Y0NTE2OWMwNTEyMmYzNzY0ZWQgcDN5aworNTYyNTYgZTliZmIyNGY5NmUwNjNkNTA0YTU3OGFlZDNhNGQyNTQwM2YwYzQ5ZSBwM3lrCis1NjI1NyA5MGZjZDA4MmRhMGRjYWNlODdjNWZjZDNkNDI3NmM1N2EzOWQ5MjQ3IHB5M2stc3RydW5pCis1NjI1OCA4MTkzMGVhYWU3MTU4ZmEzMDhiM2IzYTkxNzRhMTgyOGEyMWU0MmVlIHB5M2stc3RydW5pCis1NjI1OSBlODQwYTRjZmI0MWY2ZTg3NjEzMDE3MWNiMzdiOTk1ZmFjMjhhNzQyIHB5M2stc3RydW5pCis1NjI2MCA5NjNmNTBlZDJiNGY4YmM3MWI3OGI0NjcwNmI2ZWVjZDgzNDE2MDRiIHB5M2stc3RydW5pCis1NjI2MSBjNmE4YTdkZjM3ZWY2NWNkMzkwMDk5MDhjNDBkN2JmMDc2NGU1MTZkIHB5M2stc3RydW5pCis1NjI2MyA3OTA4MmNjMTRiZjE0NGIyNGEwOTk3YTZlN2JmZDFmZDU0MGUzZjQ4IHAzeWsKKzU2MjY0IDFhYzJjMWI4MDMyNDA1NGEwOGY0MjYzMWE3M2NiZWM3MmEyZjJiODUgcHkzay1zdHJ1bmkKKzU2MjY2IDA5MDU4OGExNzQ5MDMzYmQyZjUzMWQ1YzgyY2I3ODdkNTUwNGFhNWYgcHkzay1zdHJ1bmkKKzU2MjY3IDc1ZDNjYWE0NmE5MzZiMTBmNTMwOWYxMDhiMDZlYTA5ODA3Yzc4OGUgcDN5ay1ub3NsaWNlCis1NjI2OCBkZjQ3OTUwYzgzNzA4ZTliYzhjMTdjODZiNWMxZDk4NTAyOWNjYWQwIHB5M2stc3RydW5pCis1NjI2OSBiZDRlMzcyZjQ3OTg1NDA0Njc0ZDVlODg5ZTQ1ZTZlMTRiZmRiOGY5IHB5M2stc3RydW5pCis1NjI3MCBhMzU1MzU5ZTQ3YjQ1ODcxYTY2Y2ExNTZkMmExYzZkYzljODNmNWRhIHB5M2stc3RydW5pCis1NjI3MSA1YjM5MzFhZTI2MmZjN2RlMDc0ZGQyMGY3MTQ5ZjQ1ZjQxMTUyYjg2IHAzeWstbm9zbGljZQorNTYyNzIgYTgzOGI4YzY0MTAzNjNjOGZiNTQ0MDcyMWY2MjNjMzkzNjJhODE1MiBweTNrLXN0cnVuaQorNTYyNzMgNTE2ZGM3MjNjODllYmI2OTZjN2Q3ODUxNzBiNDk1MGQzYTNhYjAwYSBweTNrLXN0cnVuaQorNTYyNzQgM2JlZmI1YWRiMzRlYmU2Y2FlYmI2OTY2ZDc0Mjg4MWE4OTJlOTM2MSBwM3lrCis1NjI3OSBjMWE2MGI0YjgzZDM5YjI4ZDM1ZTQ3MjI3MzAwMmU2NzU1N2E1Y2FkIHB5M2stc3RydW5pCis1NjI4MCAwOWJmMzU3OTNiY2RkNTkzNjkzNjljZmI3ZjM5YWM1MmRlY2JhOWQ0IGxlZ2FjeS10cnVuaworNTYyODEgN2EyNGZlNzBjMTZkYmI0ZGY2MzAxYTY3MDQ2Y2IwYzQ5MDAyYmY5ZiByZWxlYXNlMjUtbWFpbnQKKzU2MjgyIDg1NGNjNGQ1YTMzZDhhZmRjN2NkYjNhZmRlMjZlNmM3NjEyZWJkNTMgcHkzay1zdHJ1bmkKKzU2MjgzIGJiYzA5NGMzMjhlZmQ5MWQ4ZTY4NDE0Zjg4MGVlZDZiOGM4YzBiMzUgcHkzay1zdHJ1bmkKKzU2Mjg0IGU1Y2NmZWIxMWNkNjcxMTk5MTQwYjQwMzE4OWMzYzNkM2M1NTFlMjggcHkzay1zdHJ1bmkKKzU2Mjg1IDliNzJmMDYzNjk4NjRhMDNiYTliZjJjZDBhZjBkOWVjMDA1ZjdiNmMgcHkzay1zdHJ1bmkKKzU2Mjg2IGQxYzdjMjU0MzkwM2I4ZDcyNWY4YWY0ODc1OTNiN2E0YTE4NzFhYjggcHkzay1zdHJ1bmkKKzU2Mjg3IDdjNmE3OTViNTI1YWNmNDhmMGMzYmU4YzE4ZmM0MDA5Y2M2OTM5MDEgcHkzay1zdHJ1bmkKKzU2Mjg4IGNhM2NmYjM0ZTNjMjYzNTk3NWQ1MWNlMTg4NmE4ZTM3MjcxMmU1YWYgcHkzay1zdHJ1bmkKKzU2Mjg5IDIzZjFkMmMzNmQxMmNmMzg1MmUzOGI1NDg5NzBiOWY5N2FmZmQyYzQgcDN5ay1ub3NsaWNlCis1NjI5MCBhNWMyMzQyMmFmNmM2OGJhNWZmNGU2Y2E0NDM1MGU4MzdhYjA1YTkwIHB5M2stc3RydW5pCis1NjI5MSBjYTA2NWI1MWE2MTY2ZDU3M2ZhMDE4N2NlYjc2MGYxMDQ3MWM2NjhhIHAzeWstbm9zbGljZQorNTYyOTIgZDVjZjE5MTY5OTA0NjI3M2I3MDI3YjExN2VjM2Y1ODg5NmMxNTU5YSBweTNrLXN0cnVuaQorNTYyOTMgMjU1YmQ0M2NhNzhmNzkzNzlmNjJhNDgwNGU1ZTM2YTM0NGRlNzdlNyBsZWdhY3ktdHJ1bmsKKzU2Mjk0IDIzYWM4ZDE0MGE4YTJlOTVjNDg3OWRkZGRkMzI2ZDdlNmZhOGYxNDYgcmVsZWFzZTI1LW1haW50Cis1NjI5NSAxOTZlNWM2MzIzYTM2YjhmZWIyOTk2MDUyM2UzYTlmNzlkYTU5Mjc3IHB5M2stc3RydW5pCis1NjI5NiA2MzE5YWRiMDA0MWQ2ZWVmZWMyMGJjYzYyZjNkMGU0NmZiYTBmYWM3IGxlZ2FjeS10cnVuaworNTYyOTcgOGI4MTU4MGFkMGMxMDYwNzRlYTY3ZDViM2Q3ODM4NjUyODIxOTNlMSByZWxlYXNlMjUtbWFpbnQKKzU2Mjk4IDg2ZDFkYmZjNTgzMzFiNjIwNTMzYmQ0MmRmMjA1NmZiOTRmNTMyNTAgbGVnYWN5LXRydW5rCis1NjI5OSBiNDNlNWYzMzQ4YWVhOTUyYWM0YzkyNGJmNWZiN2JiNWY3YWU1YjU3IHJlbGVhc2UyNS1tYWludAorNTYzMDAgMjkzYjgzZjlkYTlmZGRlNjc2ZGU5NGFhNjVkZDQzNjRmOTQ5M2U3NCBwM3lrLW5vc2xpY2UKKzU2MzAxIDdjMzc4NGJiZmMwOWFlOGJiMDcxM2I4YzIyM2I5ZDM0ODQyYjE5MTQgcHkzay1zdHJ1bmkKKzU2MzAyIDI0OGEyMDY5OTBhZTA5YjliZWQxZDlkOGYzNzQ4MzIzYjJmNTEwZmUgbGVnYWN5LXRydW5rCis1NjMwMyAxMGU5YzkwZWFmMDNlNmRmYzkzNzhjN2IyY2I3OGVmMTg2YTQ2OTBmIHJlbGVhc2UyNS1tYWludAorNTYzMDQgMmMzM2RmMDljMWM3MWY1OGQyMTM2YjcyMTg2MjQwNGEyNWQ3NjRiYSBsZWdhY3ktdHJ1bmsKKzU2MzA1IGMyNTVjMTBkYWM2YTY5MWViNjU0YzI0ZGYyNWZlMjExNjYwMmYxYjYgcHkzay1zdHJ1bmkKKzU2MzA2IDRjNDljZDY1YjVmMTcwNTJjY2E5MzI0ZWM1MDk3MjUwNDg2NzQzMmQgbGVnYWN5LXRydW5rCis1NjMwNyAyYWYzZjA2N2E0MzEwMmRjYjNhNTUwNzA2YjY3ZDYxZjE2ZTAzZTI5IHJlbGVhc2UyNS1tYWludAorNTYzMDggMzQzYjYwYjYwNGJkOTNkMGU2NjE4MGFlZmU3ZTA5NzU4Y2JmMzEzYiBsZWdhY3ktdHJ1bmsKKzU2MzA5IDcyYzU4MzM4YjIyYjYzOWI4OTk2ZmY0YzU5MGQ5Njc5NTU5YWIxOWEgcHkzay1zdHJ1bmkKKzU2MzEwIGVjNzQwODRhOGNiYTBhMDdhMTAxYTc2ZTY3ODRmN2ZmODUwN2Q0MDMgcHkzay1zdHJ1bmkKKzU2MzExIDZjYjllZmI1Y2JlNWJlODc2ODcyMzU1ZjJhOWU4MDkzNGYzMTk5NWQgcHkzay1zdHJ1bmkKKzU2MzEyIDNlMDZmMmI5MDEwMjY0MTJkZmZmODcwOGE2ZjRmZjc4ZTA5MTlhYzEgcHkzay1zdHJ1bmkKKzU2MzEzIDNmZDM1NTNlMjU4ODU0ZWEzODM3OWE3YmMxZDA2NGFjZmRlODdmNDIgcHkzay1zdHJ1bmkKKzU2MzE0IDU4NjYxYTgyMzM4ZTgyY2YxMDJlMzE2ZTAxNzhlYjdjYjIyYjMwOTMgcHkzay1zdHJ1bmkKKzU2MzE1IGU3MTVlMjA4MTYzNzFhMTQ3ZWU1ZmRiMGJjYTE3MTJjOGIwMGJhODcgcHkzay1zdHJ1bmkKKzU2MzE2IDBiODk3NzQxMWIwN2I0ZTY4ODI1ODc2MDE4MjY5NjBiOTUyODcyOWMgcHkzay1zdHJ1bmkKKzU2MzE3IDg0YTIxNzU3OWFlNTlkNTM4NDhjZGJlMTlkMWUwZmI1YTdhNDg5ZWUgcHkzay1zdHJ1bmkKKzU2MzE4IDg0MjI5YTkwNjZlMmY4NjYwMGI1MmE0Y2NiYTJkY2QwNDY2ZDkyODcgcHkzay1zdHJ1bmkKKzU2MzE5IDA2ODEyMzMzNDRkOTNmZDBkZTllNWUzNDYxYzgxNjA1NGUxMTdiNjcgcHkzay1zdHJ1bmkKKzU2MzIyIGI0NWMwZjQ0NDgxMzFkY2NiMjNkNTgxN2ZlMWY0ZTlkMTk1ZTYyZTIgcDN5aworNTYzMjMgMmFjYzYzNTlkMDVkNDA1NWQ2MmU2ZDA4M2VmOWQzNWIyNmRjMTg0MSBwM3lrCis1NjMyNCA0OGM1YTg0OWEwYzJmY2VmYTVhN2RlMzEwYTY2ODI3MTY5NzdiOTg3IHB5M2stc3RydW5pCis1NjMyNSA3Mzg0NmY5NjI5YzU2N2ViYWZhMGViMDBhYjFjYmQwYzk3Yjk4MDIwIHB5M2stc3RydW5pCis1NjMyNiA0ODRhMDA5NmJhZTkwZjY2MTlhZmM2OTE2YjNmZjlmZjA2MmZiNWUyIHB5M2stc3RydW5pCis1NjMyNyAwNDk0YWU3MzUwNTgyYjU4MThkMDk2MWE1ZmMwNTRlOGE4Nzg4MmJhIHAzeWsKKzU2MzI4IGZiYWUwMTJmZjI5NWRjYWY3YmI0MDA0YzVkNzUzNWMzNGFiODM5ZGEgcHkzay1zdHJ1bmkKKzU2MzI5IDc2OWU3MDc4YTJhYTdmMjRkOWU5OGY0NDQwM2RkM2Y5YTAwZWJkY2UgcHkzay1zdHJ1bmkKKzU2MzMwIDdjYzg0OTZmMjM0ODBjMDZiZGYzYThjYjI0MDAxODcxZDZhODA2NmYgcHkzay1zdHJ1bmkKKzU2MzMxIDJmZDE0Njk3MjNhMDcwMmViMDllZDY1NjFmNjcwMDNiYjliOWE4M2YgcHkzay1zdHJ1bmkKKzU2MzMyIGFmZTg3MTU0N2IxYTM5MGYyMmIyYTdmYzExMzI0ODIyYThlZTIxOWMgcHkzay1zdHJ1bmkKKzU2MzMzIDEwZGU2YTkxZGE0ZGExOTBjYWJmNTc0ODNjNWMwMzYxMmQ2NTU4NmUgcHkzay1zdHJ1bmkKKzU2MzM0IDZhMDk3NzcyZWE4NmI1YTQwMTc1ODc4MTgxNWZlMmFiZjNjYjcyYmMgcHkzay1zdHJ1bmkKKzU2MzM1IDZlNjVmMDhmMTI3NjI4NjIxY2UxNmI2ODlkYWViODliZWFmZDRiZTUgcHkzay1zdHJ1bmkKKzU2MzM2IDFjMzc5MGM4MzFmYzE2NTU2YWYxMGU3YmFjYTc4ZGMzNjRiNzU3MGIgcHkzay1zdHJ1bmkKKzU2MzM3IDhlYWYwM2ZjM2YxMjk1ZDYxNDJjOGEwMjRmMTBiODE1ZTU5NDEyODkgcHkzay1zdHJ1bmkKKzU2MzM4IDIyZDY1ODRiODcxMjZjOGZiODk5MzgzODM1MGI5MGIwYzk5ZWJiZDIgcHkzay1zdHJ1bmkKKzU2MzM5IDVkMTZmNDc4NDY1YTUzNTU4ZjI2ZGQwMjZmZjlkNDY3MGNiYWJkZDAgcDN5aworNTYzNDAgMGMwZDc1MGVlNzVlNGMyNTIxZjZhOGQzNTY2NjNlODc0ZWExNGFlNSBsZWdhY3ktdHJ1bmsKKzU2MzQxIDdiYzQ3MjNmNTYyZmFjZTExZGM5NzA3YmU5ODQ3ZjcyMjQ5ZGIyMzIgcHkzay1zdHJ1bmkKKzU2MzQyIDA5ODAwMzRhZGFhNzIyYjQ2NDg1MzNkNjgzZWQ4M2NmMTNmNGY3Y2UgcHkzay1zdHJ1bmkKKzU2MzQzIDY5M2JlMjdmNjI2ZmJiYTk2Y2ExODJmNTUzNmQ2ZTMzYjQ2MTM2ZjUgcHkzay1zdHJ1bmkKKzU2MzQ0IDE3YmIzOTgwNDgzZWNmYmQyMDYxY2FmZDE2M2QxNDBhZmEzNzU0ZDUgcHkzay1zdHJ1bmkKKzU2MzQ1IDEwODlhNGY1N2QyMDk1YjlmYmQ1Y2EzZGExMTUyY2E3MDg4NzE0MjQgbGVnYWN5LXRydW5rCis1NjM0NiBjMjgwNjQ3YzMzMGNmMmFhZDkyNDc2Mzc0NjVkNGY0YzZhZmE2NWQ4IHB5M2stc3RydW5pCis1NjM0NyA3YzFjOTAyZDcwMDAzMTJkMWQ4OTA0MjQ5YzNkZTU1Zjc2ZTQ4Mjc4IHB5M2stc3RydW5pCis1NjM0OCA3NjAyMWJiYjg5YzczODM3NmNiMzlhYTdkNzljNDdhMzFjODk4NmU4IGxlZ2FjeS10cnVuaworNTYzNDkgY2I4NjVlMzk5ZTg0YzY1YTk4MTJlMzQ4YjY3ZmFiZGIzODEwY2IzOCBsZWdhY3ktdHJ1bmsKKzU2MzUwIGFlYWQxMzZjYTQ5ZTI5OTU3ODk3MWI5ZjIyNzBiNDcxMzZmZDk0MWEgbGVnYWN5LXRydW5rCis1NjM1MSAwZDYyY2RkMzU1N2Q1YWRmODZmNzQxNTk4NjEwNWZmMGQ4YWVjYWVkIHJlbGVhc2UyNS1tYWludAorNTYzNTIgYjZlYWE2OTE2ODg0Y2RjZjFmODJmNDNmOGUzYzRiN2I0OWQzNzU1YSBsZWdhY3ktdHJ1bmsKKzU2MzUzIGYzMzY1OGRhMDYzNzU0NjJiNzBiNjdmMGU5NWQ3ZjVlZDllODYwNjMgcmVsZWFzZTI1LW1haW50Cis1NjM1NCAzZjg3OWQ3MjZkMTg5ODE0YzAxNDgyNGMyYWE0YzhjZjY0MzNhNzg0IHJlbGVhc2UyNS1tYWludAorNTYzNTUgZjhjNzVlODQ5OTU2MDk0NjUwNjY3ZDE4MDM4ODg5MWM4ZTE4OWQ3NiBsZWdhY3ktdHJ1bmsKKzU2MzU2IGYwMWFhM2QxOGM5ZDNhYzAwNmQxM2ViNmExMmZkZmIxYmQwMWU3MTEgcHkzay1zdHJ1bmkKKzU2MzU3IDRjZjA0NTk0MTA4NTQ1MGQyMTg4NjYwMjlmZTM3NGRhY2YxMGNkN2IgbGVnYWN5LXRydW5rCis1NjM1OCA1OTllYTllNWM2YzVkOGU5YTM2NTg2ZGNhOWZkYTE5OThkMjExYTFiIHJlbGVhc2UyNS1tYWludAorNTYzNTkgZDhiZjQyNjcyMzMwNTZkNWEzN2Y1ODI4YzNhOWQxMjY5YWNhYzg1ZiByZWxlYXNlMjUtbWFpbnQKKzU2MzYwIGMyOWIwZGJkYTNmNmFkZjhhMjI0YzI4YjU3ZTRiMmRhMDk0ZjJkZjEgbGVnYWN5LXRydW5rCis1NjM2MSAwYmZmNGI2YjkyYmUyYjczZmZhMzljZGQ2NzczOTUxNDE0NzQ2NjRjIHAzeWsKKzU2MzYyIDYxNDEyZTI1ZTYxZTMwZDFjYWRhNDczYzQyZjYzZjJkMDIwZTNlODQgcDN5aworNTYzNjMgMjAyYzM3ODM1NjI4YjkxNWFkNGVhZGJlMTQzNjExMWIwZTgwZTczZCByZWxlYXNlMjUtbWFpbnQKKzU2MzY0IDhjYzY1MDdiMDYyNmJiNGUxMGQzODliODkyYjc5NTU3MTBmMmUzYzkgbGVnYWN5LXRydW5rCis1NjM2NSBkYTJmODk0OGNjMThkMjA4YWE4MTRkOWRjZjc1NzY2MmIxNzJiODAxIHJlbGVhc2UyNS1tYWludAorNTYzNjYgNjk3YzBhNzhkOGM5MDA1ZDlkZjAxZDVlYmQxY2U4YTgwYWJlMzExZiBsZWdhY3ktdHJ1bmsKKzU2MzY3IDg1ZDRhMDJkMGFiYjBjNjc0MTdhNDNlZmEzMTU1M2MyOTc5YjJjNjkgcmVsZWFzZTI1LW1haW50Cis1NjM3NSBjZjg5MGU0MWFjMTM1MWY1NDNhNGI0OTBhZjQwNmFhZmRjZWEyNDEyIHB5M2stc3RydW5pCis1NjM3NiA1MDY2YjAwMjViZjA4NjUwMWM5YWMxNGZhOWNkYjE0YWI3ODRkMzVlIHAzeWsKKzU2Mzc3IGE1YTNkZjQ5YWNmMzAyOWU0MmJmM2ZlNWQ0MGI2MDYzNTRkMzFlZTcgcDN5aworNTYzNzggMmQyMjUwNDI4MzA1NzM4OTU2MThlZjc4MTQ4ZjJhODI1NDAwZTk0MSBjcHlfbWVyZ2UKKzU2Mzc5IDA5Y2QzZTUwMzIzNWU2NWM2ZWExZjkzZTg4N2I4NmNjNzJkZTg0ODYgY3B5X21lcmdlCis1NjM4MCBhNWU4ZGQ1OTk2MGRkZDk5ZDE1ZTFkMDhiNDE1NjMyNTZmYzVjMTZmIGxlZ2FjeS10cnVuaworNTYzODEgNDVjN2Q0NzM1ZGEzNmMyM2ZmMTQ5YmRhOTk2ZjE5ODQ1ZDc2ZDRlOSByZWxlYXNlMjUtbWFpbnQKKzU2MzgyIDhhZjA3ZTExZjE5N2UyNjEzNGRhMWFkZDNkYjVlYjZhNmFjMjg1ZTMgbGVnYWN5LXRydW5rCis1NjM4MyBkYWFlMjdmYmI4MTY2ZWRlMWQ4ZjU3ZDFlZGI4OGQ4OGJjNDc4MThkIHJlbGVhc2UyNS1tYWludAorNTYzOTIgYzIzZDhjMjdkYzkyMjIzODUwNzBiNzEwNTM1M2NmNTNmNjM1ODZhZSBsZWdhY3ktdHJ1bmsKKzU2Mzk1IDE4ZTVhZTkxYmQyOTc5ZTAyZDI2MTlkMjMyOGJhYmUxYzJiYjg3NzEgcHkzay1zdHJ1bmkKKzU2Mzk2IGViZTk2MGQxZDYyN2VlZDZjZmNiOTMyODdiZTEzMGFiYTljMWJjODIgcHkzay1zdHJ1bmkKKzU2Mzk3IGY3MTViYWNkZmQwMGYzM2JhY2Q1ZDFmNjRlYzMzMmUyNmFmNzcyNjEgcHkzay1zdHJ1bmkKKzU2Mzk4IDE5MTk5OWJlNmNmNThlZmE2ODIyZGQwOWNiZjAzYjM2NTJjZmU1MzkgcHkzay1zdHJ1bmkKKzU2Mzk5IDVhZTc3NGNjMjZlYmRkNzA3Njk3MDBjOWY5NjczNzlmNzViNmIwNTQgbGVnYWN5LXRydW5rCis1NjQwMCBkMDYyZjY3YzMyNjA0ZDQyMGU0ZDNiZjM1NjNlYzYzZTE5ZTY0ZDgyIHB5M2stc3RydW5pCis1NjQwMSBmNWI1ZGFjYjlhZTI5YmIxMmI0NzE5NjIyYzY5ZDkwYjQyNTk4NWJiIHB5M2stc3RydW5pCis1NjQwMiAzZjI0MjA5ZjI1MWUzYWQxMTNjNDY0MTY4MDdhYTY3MGZkNDkxNWEzIHB5M2stc3RydW5pCis1NjQwMyAzNzcyMTAzMjAwZWM4OWJjODhiYjNiMmYxYjY2N2ZjZTUwZWI2OTkzIHB5M2stc3RydW5pCis1NjQwNCA4NDc3ZmMzODhlZWFlZTNlOGYyNWE1MTFkYWJhODgzZTRiZjE1YmUzIHB5M2stc3RydW5pCis1NjQwNSBhOGQ0MzA4NWE4NTcwYjBjZTMzMWE2MDk1NzhmMjVkYjAyYzA4OTJjIHB5M2stc3RydW5pCis1NjQwNiA0NGJjNDlhMDdlNTI0OTU4ZTgyYThiOTk0NzhjNDE5YmY2MzY5OGVlIHB5M2stc3RydW5pCis1NjQwNyA1MzM3YzNhNGEyNzNkOTA3N2Q4YmU1MzcwNjVmZWE5YmM0NzAyM2Q4IHB5M2stc3RydW5pCis1NjQwOCBmNTFkM2JlNDM1ZGY2OGUzZDFkNTI1YjE0NjcyYzA1ODVmNWE2NmViIHB5M2stc3RydW5pCis1NjQwOSAwNThhYmY4NzhhZDRkZjk4ZmJjMzMwNmY3ZWVjYjkyMjdkNmJiNDA0IHB5M2stc3RydW5pCis1NjQxMCAzYmVhOGZhYzNhN2NmNmQ0M2Q2ZjQ0ZGJhYjlkMDkwZTM4ZDc3YWY4IHB5M2stc3RydW5pCis1NjQxMSBjNGFiM2VmNjE5NGY3MzcyMTQ3NzZlOWIxYjRhZDM1MTEzMjk2NjRkIHB5M2stc3RydW5pCis1NjQxMiBmNjU5MjE0NmM3ZmE2OGY3YTE1OTQxNzdmNDNiYjJhNDkzNWI0YmVkIGxlZ2FjeS10cnVuaworNTY0MTMgNTUwMTQxZmQ2N2MyM2RlODk1MzViNWQyOTIyNDBkNDFhNTUyOTk5ZiBwM3lrCis1NjQxNCBjOGU2MjQ1NzlhNGQ2M2U2YmQ2ZWVkMzVlOWUyNGY4ODgwZmY4ZmFkIGNweV9tZXJnZQorNTY0MTUgZjk0MGU0NzBlNTUwMjZlMTJkMzRkNzE0MzQwMGZmMjA3N2I0MzVmNCBweTNrLXN0cnVuaQorNTY0MTYgNjdiMDFiMDVhODFiNjIzNDg3ZmEyZjQ5ZmEwNWQ2MmU5YmJjNzdmOCBweTNrLXN0cnVuaQorNTY0MTcgYTMwOWNkYjdjYjMzMGQxMGFmMWY4YjkzZGY4YjkwNDNiMTk4ZDAyZCBweTNrLXN0cnVuaQorNTY0MTggN2QxNmI0MmZjZGJkZTJjYzUxM2ZjZGI0Mjc3NTZiYzlmMGNhZDM1MSBweTNrLXN0cnVuaQorNTY0MzggZDA3MTk0MDZiMmM2NTllN2RiNDM4OTYyYjZiNWJjNTRjNjBiYWU2YiBweTNrLXN0cnVuaQorNTY0MzkgN2NlZDNlODUxOWYxNDE4ODkxZDMwMzc3N2Y1ZDg1ZjE0OGY3MTZhZSBsZWdhY3ktdHJ1bmsKKzU2NDQwIDM1ZWI3MjIxNTYzMGFmMWFmZTRmYzFhMGFjMzk4Mzc1NTA0ZmE0ZGUgcHkzay1zdHJ1bmkKKzU2NDQxIDY3NzVlZTZkODlkM2Y5ZmRiMjk5N2ZhY2UxYzlmMmY0MjU1MmQ0ZjEgbGVnYWN5LXRydW5rCis1NjQ0MiAxNDk4MTViYTI4NGNjZGZkM2Q4YmIxY2NmNWM0MTZkYWU5YjgyYmIxIHAzeWsKKzU2NDQzIGJkNmFjZmRiNDdkMjVhNmNmZWMxZmFiMGEzZDkwYzE4ODI4NTMzNTAgcHkzay1zdHJ1bmkKKzU2NDQ0IDRjNjU4Mzc3YjkwODQ3NTQ5MTZlMGFmMTg5M2M0MTgzOTgyZDQzNzMgbGVnYWN5LXRydW5rCis1NjQ0NSBjMWU5ZWVlZGEzNGY5YmYyODNhOGZiNWEwYTYwMGEwNjM0NzQwMmI3IGNweV9tZXJnZQorNTY0NDYgMWFlNWYxMDJmZDNkNmUyNTE1ZmVmODU4ZGVmZWEwZDI4ODdlZDY3NiBweTNrLXN0cnVuaQorNTY0NDcgMDA3ZWQ2Y2RkMWY3YmM3NGJlOGQ5MzExZDIxOTUwMmRkZjI2NjllYSBweTNrLXN0cnVuaQorNTY0NDggMDg2NDJiZDFiZTE4NGFlMTJjMmUzN2ZkNjc4NmZjY2FhODNhNTU5NyBweTNrLXN0cnVuaQorNTY0NDkgZGZhY2I1MWQxMzg2MTYxMjE3OTVjMTMxMjgzODIwOWY1NmM3N2FmOSBweTNrLXN0cnVuaQorNTY0NTAgYmRjNjdkYzFhOTVlMmU0MDM0N2U5Yzg1ZGMwNTliMTlhYzk0NjhiMSBjcHlfbWVyZ2UKKzU2NDUxIGQwMWFlNjk4Y2I1ODM4Zjc1Y2I1MDc4YjZjYmQ2NGFlMzU2YzgzMzkgbGVnYWN5LXRydW5rCis1NjQ1MiAyOGFmOTYxMDM4ZGU4MjZhNTA3ZDY4NWFmOGE2Y2QyMTM3MWI4NDczIHJlbGVhc2UyNS1tYWludAorNTY0NTQgMzc5MDJlYTQxYTE3YjQzMmFkYjYwM2IwYTI0ZWJhZDU3ZjUxZjA5ZiBwM3lrCis1NjQ1NSA3Zjc2MGRiNGU3NDZiYWVmMThiMzU0ZGYwOTg1M2U2NTBmOWM1Nzg3IHAzeWsKKzU2NDU2IGMwMmEzMzc4OGE4ZjVlYmQzMjJmOTZlNWFjNWIzMzk2MzRmOTg4NWYgbGVnYWN5LXRydW5rCis1NjQ1NyAzZmI1OTY2NmIyODEwYTQxZDAyZTE2NjQ2Njk4NDgxM2NkNjRkYzNjIHAzeWsKKzU2NDYwIDQ5OTlhMDk0NzM0MzRhY2Q0M2U0NDBkOTZiMmM4ODZiMWFkOTE1ZjcgcHkzay1zdHJ1bmkKKzU2NDYxIGFjMzZmMDZhNjEyYjgwZTBiMTE0NWEzNzkyZTliNGVmZTU3NmE4MmYgcHkzay1zdHJ1bmkKKzU2NDYyIDYzOTU1ZTNjZjk5M2I2MTk1MzIxMGM4NDBhMWUxMTM3YzI2OWM5NDkgcHkzay1zdHJ1bmkKKzU2NDYzIDhjNGEzMzA3OWNhNjAwZDg3MmI2NDYyNzljZjc5MDRjODk2ZWFhM2IgbGVnYWN5LXRydW5rCis1NjQ2NCAzZTMzMjE1YzY2ZWRlOGZmMmM1Njc0YjdhN2IxYWNkMTA2MWYzNjNkIHB5M2stc3RydW5pCis1NjQ2NSAxMTYyNTFhZGE5MDU4ZmU2MDdlOGM4MjI1MzU3YWYzMzgwMTNiNzg0IHB5M2stc3RydW5pCis1NjQ2NiA2MGI3MThiNmZjOWIxNjMzY2MyNGE5ZGRmN2YyNTYzNjNiN2U3OGM4IHAzeWsKKzU2NDY3IDRiYmJlMGM1NWZhMjE1OGZlMjE2NTM3YzhmY2RmYjNlYmFkNzQyYjkgcHkzay1zdHJ1bmkKKzU2NDY4IGM0NmYwYWZiNDAzYzQwN2ViOTllZTg0MmRlMjIwNTdlYTM1YmM1MmYgcHkzay1zdHJ1bmkKKzU2NDY5IDk2NGM0YmY4NmQ5YTY5Njc1N2VlMGQyMzQ0YmI2Mzk0YzgyMDhhMTMgcHkzay1zdHJ1bmkKKzU2NDcwIGEyYzVjZWJkMGRjNTFmMTViN2I5OTVhYmU5MGY1ZmRlYmJmZDE1OTggcHkzay1zdHJ1bmkKKzU2NDcxIDU3YzYyYmQzNmIxOWJiODFiZGM5NDE3MjdhMWU5YTM1MThiNjA5NTggcHkzay1zdHJ1bmkKKzU2NDcyIDVhOWUzZDM3ZjY2MWYxM2VmZGUxNzFjYmFlYTcxODQwMjdlMjgzMWMgcHkzay1zdHJ1bmkKKzU2NDczIDMzM2ZmMDU4NDkzOGM1NjMzOWRlNzU2NWIzMzVjYjY3OTY4MmJiNDkgcHkzay1zdHJ1bmkKKzU2NDc0IDdhMGQxYmFhNGE1M2RlZDQyNDUxYjE4MDkyZDZhYjU0OTU5MTA2MmQgcHkzay1zdHJ1bmkKKzU2NDc1IDJiZTI1MWRkMmNiZGYxNjEzM2M0YjU0OTEwMjIxMWEyYjc5YjhkYWYgcHkzay1zdHJ1bmkKKzU2NDc2IDY2MjBhNTEwZTlhOTUxMTBkYjEzOTEyZDY2NTUxOGFkZTdkZDdkOWQgbGVnYWN5LXRydW5rCis1NjQ3NyBlMzcxNzFhNGIxNDc5NTlmNmYyM2VjMmEwOGYyMmQ0ZGI2NzMyN2Q5IHAzeWsKKzU2NDc4IGZkMzQ1OGE5MmE4OTQwZGJkN2E2NzUxMWEyM2ZmYWQ5OGU3N2E5NzQgcDN5aworNTY0NzkgNGU4OTg3MmYwODJlMDZiOGZlODkyNjA1YTdlNjIwYzM2MTI4OWM4ZiBwM3lrCis1NjQ4MCA1MzFlMTgxZjViNTMwZjllNDUyODYwNTQwNDliMjY0NGRlNzM3ZTIyIHAzeWsKKzU2NDgyIDEyZGY5MDYwMDNlYTkyMjZmMjJjZTMxOGRmYjFkOTBmM2I5OTA0YzMgcDN5aworNTY0ODMgZTcwY2RjZTBlOGIyOTU1YzQ0MDA4YTQ0OGYwOTM1YjlkZTdkMTg1ZSBweTNrLXN0cnVuaQorNTY0ODQgYzhiODUwYjVhMDY2NjkxZmE4OGNmZTUyZWQzNWU4YjgyYTM5OWVlOCBweTNrLXN0cnVuaQorNTY0ODUgMDNhYjhjOGJiMGFlMTg0Y2U4YzgyZjA2ZTU4MWRlYzQxZmRkYzliMyBsZWdhY3ktdHJ1bmsKKzU2NDg2IDIzYmZkYjc1NzFhN2RhZDFjZTg1YWE2NWVlYjE2NDVhYzhiZTgyMzYgcDN5aworNTY0ODcgODhlZTBhNTU2MmVlMjIxOTBkZjcxZjAwMThjZmU1ODlkMzdlMTkyMiBwM3lrCis1NjQ4OCAzOGQxYmViNjUwYmFjZmUyYmRlYzMyNjk4YTBhYjhkMjU5YjI0YmZhIGxlZ2FjeS10cnVuaworNTY0ODkgODExYzlhYTZlZDg4MmU0MDU3NTFkYzZmNGU5NWI3MTk0ZjViMTAzZiBwM3lrCis1NjQ5MCAyNzg2MzhjZGM2NDdhYTI4NGVhMGZhZjNjZmJkYmJiMGNmNWNjNmUyIHAzeWsKKzU2NDkxIDYxODU5YTM5YTg3ZTcyNjQ1MWI3MTg1NGE3ZTAxYzY3ZjM4NDVmZmEgcDN5aworNTY0OTIgN2JmZTlhMTA3YjI5Nzc3MjAzZDY0MjIwNjY3NzA2ZTc2N2RiYWE2NCBweTNrLXN0cnVuaQorNTY0OTMgYzE1MmM3ZmExN2M0ZDAyODczYzdmMDY2NGZjNjU0NDJjMTViN2Q0YyBweTNrLXN0cnVuaQorNTY0OTQgZjRhZjZmNGI1MWNjMzYxOGZmYjMzOGQxMmU5NTcwNmVmMTk4ZmI3MSBweTNrLXN0cnVuaQorNTY0OTUgMTQ1NzQxMDE2ODQ4ODJjN2JkZGY1MDE1OGYyMWQzMWQ4YWNiNzYwZCBweTNrLXN0cnVuaQorNTY0OTYgNjBjNzY3MThlMDRhMDA1ZmM3NzZmMDc3YzFjZWM0YzhkZmJhN2M0OSBweTNrLXN0cnVuaQorNTY0OTcgZjMyZmJmOWZhNjBiMWM4OTQwOGRjNWRiMDgxMGY2NjQzNjY5ODA0YSBwM3lrCis1NjQ5OCA0MDk5OGYxOGM1ZGNjYmMzMDE3ZTBiYTI1NTNhYzVjZjg5ZDgxYzM5IHB5M2stc3RydW5pCis1NjQ5OSA4MzY3MGMyZjFlYTg0YzcxMWIxZDc5MDA4M2UyYzRhZTQ4NzNiNjczIHB5M2stc3RydW5pCis1NjUwMCA5Y2U1NGNmMGRiZTJhNjlkZGFmZmRmZjBiOGVkNzQ0YjM4MjNkMzQwIHB5M2stc3RydW5pCis1NjUwMSAzNmI2NzAzMGNhNDcyZGEzNGJhMzY0ZmNlOTNhZTQxNWE0MjZiNGQ3IHAzeWsKKzU2NTAyIGI1OTBmNGEwNmJmODY0N2NhNjI3ZDg0MTc3NTA2Njg1ZGJmZDM4MTcgcHkzay1zdHJ1bmkKKzU2NTAzIDVlNjZiYjY5YzFlM2U0ODZlN2JmNzQ1ZGM3NDZkZDBhYTc1MmNiZDYgcHkzay1zdHJ1bmkKKzU2NTA0IGJmZTA0MWFmYWZlNjkwYzBlYjY4NTA1NDZhMjhkY2U0M2IzZThiN2QgcHkzay1zdHJ1bmkKKzU2NTA5IDNmZTY0M2Q2MmVjYzQ1ZWIwNGMwNDY4M2VhMDNhODI2NTM5YzRiNTcgbGVnYWN5LXRydW5rCis1NjUxMCBmZDY3MDUzOWMwODVkNTYwMjI2YjllM2NmY2RlOTVlYThlY2ZiNzNjIHB5M2stc3RydW5pCis1NjUxMiBlNTBlMzNiN2UwZTBjY2I3MTE0MDUyODY4YjBjZWEzZDU0NDRiYzVjIHB5M2stc3RydW5pCis1NjUxMyA2NDA5NTJkZjQ0MzE0YjRiYTBkYWI1OWVkNzUyZTY4ZGM3YzJkYTE5IHB5M2stc3RydW5pCis1NjUxNCA5NTllNTJhZTI2MjdhMDg5YWQ1OGIwZWU4YzViNTNkMWQyNDUwZGI3IHB5M2stc3RydW5pCis1NjUxNSAzNmZiY2RhODBiMWM0NTdmYjRlZDlhMjA2M2RhOTg5Y2JlZGMxM2I4IHB5M2stc3RydW5pCis1NjUxNiA1YjljOGRjZTRlZGQ3ZThjZDZiZTFjMzVhYWY5ZTJlNzc4N2Y3ZTkzIHB5M2stc3RydW5pCis1NjUxOSBkOTRkNWI0MTZhOTQ3YWY0Zjg1ZTgyM2YxZDJmYzZkOTI5MTMzNDAxIGxlZ2FjeS10cnVuaworNTY1MjAgYmM4ZTVlMTU3MWFjY2YwZWVlNzhkZTRkZWNhY2FmMzZkMzcyZDQ2YyBsZWdhY3ktdHJ1bmsKKzU2NTIzIDMwZTExMjM1MGUyMDNhMzY5ZjRjZDU4NDFlNDgwZThlMDdmOTk2MDUgbGVnYWN5LXRydW5rCis1NjUyOSA3NDZhNTAyMWUxYWE4NzExZTViNDg5ODI0YTU3Njc4NDBiZDIxZjU3IHB5M2stc3RydW5pCis1NjUzMyAwZTJmYTRjNmE0MjgzNTUzNzIyMGI3ZjlkNTMxOGFjMTViZGE4YTgyIGxlZ2FjeS10cnVuaworNTY1MzYgMTEzNzcyNDkzMGE3MmIzODhkNGU5NDc0YmY1ZDA0ODczMTE0YTQ2NSBwM3lrCis1NjUzNyBkYTYyODM2ZGQ5OWY3NzNkNjRhMWY4MWFhOTAwNDQ4NWVlNzM1YzViIHAzeWsKKzU2NTM4IDJmZGE1NTNhYzZlMTYzZGIxNGYyODhkMzM4YmE1N2VjNzQzYzZiZTYgbGVnYWN5LXRydW5rCis1NjUzOSBlOTg5MWQ3ODdlZGQ4MjY5MmQxOGI4NDNmMjNiMWEwY2NiMjdmYWZmIGxlZ2FjeS10cnVuaworNTY1NDIgMTIwNWQzMDM0NjFjMzIzYjk4MTQ1NGVhZjYzZjhlMjliMzk4Y2FmMyByZWxlYXNlMjUtbWFpbnQKKzU2NTQzIDI3ODY0YTE4MWYwMWIyMzkyY2M5Zjg4OWFmMTE0ZjNhNDk4Mjg3YzMgbGVnYWN5LXRydW5rCis1NjU0NiA3OTVhNWRjZGM5ODIwMzAzMmU1MjIyNzdiMTE5YTFkODA1Y2EyZmNmIHB5M2stc3RydW5pCis1NjU0NyBkNDhhY2IyODQ2NjRjNzQ0YjE4ZjBmNzU5NzJlZGU2OTA1OTRiMWIyIHB5M2stYnVmZmVyCis1NjU0OCA1ZjNmNTRjMGM2YzhlYjIwZDZiODEzYmZhZjU2MmFiYzcxNDkxMmM1IHB5M2stc3RydW5pCis1NjU0OSA4ZmY4OTk2NDE1NjM1MmY3N2FhZmU0ZDkyMGJkNjA0MWQ3YTczM2UxIHB5M2stc3RydW5pCis1NjU1MSA2ZmE3ZDhmYjA3NzMxOGY4Y2ZhZWJmYzg5ZGIyODQ1ZjRlYmY1ZjRmIGxlZ2FjeS10cnVuaworNTY1NTIgNDM0YWU2NmI3ZGUwNGU5YmNjYWY5Nzc4MTdjOGNmMzI2ZjBlOWY0OSByZWxlYXNlMjUtbWFpbnQKKzU2NTUzIDY0OTAzZmY3NmVkZTFhMDk2OWU4YjE2NmQ4MWE1NGExNmU0NTRlMDcgbGVnYWN5LXRydW5rCis1NjU1NCA1N2ZhY2YzNGE3MTg2MTBjNTY5M2I0ZTlmZTM4NWE0MzkwZmIxNWRmIHB5M2stc3RydW5pCis1NjU1NSBhNTQzNGZhZGE5ZmY0OWM0MDdlMDFlMjcyNzdmNjBiNzhiNGVmNDExIHB5M2stc3RydW5pCis1NjU1NiAyYWNjODkwMjc2OGM0NDdmMDMzNjYzODg5Yzg2NWE5NWJiYTY4MGEzIGNweV9tZXJnZQorNTY1NTcgMDdhNTc3YjYyMGVjNjkxODJjNDg1MzcxMDA5NmRiYjY5ZmE2MzgzOCByZWxlYXNlMjQtbWFpbnQKKzU2NTU4IGRlZWM0MTI2ZmZhY2ViMDZlMjZmYWRlNmEwYThmYjhlMjdlYjhlYmIgcmVsZWFzZTI1LW1haW50Cis1NjU1OSBiMDBiZDA4YTA5NDk0OTEyMjc5Yjg0OTc5ZDUyYmRiMzRhMWQ4MGNhIHB5M2stc3RydW5pCis1NjU2MCAyNzhjNTIxMzQxNDBmNjE3ZGNmZjFjYWEwN2RjZGU4NDA4YWM4NDg5IHB5M2stc3RydW5pCis1NjU2MSAxMDcxZjcwNzZlOGUzOGM3MzRmYjU4Y2ZjMzRiZmI5YzEwZWU5ZmNiIGxlZ2FjeS10cnVuaworNTY1NjIgMjBiZDViZTI0YWI1NmI5Yjk4NWJjOGFiZjFiZDU2OTAwNjgwNWJiYSBsZWdhY3ktdHJ1bmsKKzU2NTYzIDg2Mjg1YjM5N2I0ZDEwNGQ0OTdlYTBkYzRkNGEyMDE3NDM1OWVjYTcgcHkzay1zdHJ1bmkKKzU2NTY2IDA1NDZjMTE1YTljZjNjNzJiMzYwNTFiOGJlYmQwM2VkZmYyNDA5NTMgbGVnYWN5LXRydW5rCis1NjU4NCA5ZTg0YjQ4Njg5ODQ2ODFlOGUxZmNjMWU3YjgzYmNhYzMwYjBhZjc3IHB5M2stc3RydW5pCis1NjU4NSA5MGU0MmEwYjIyMDJjZjg1NmRjNWExMzgwOTNmNWYyMmZiYWM3YjRlIHB5M2stc3RydW5pCis1NjU4NiBmNjcyMDcxZDgyZmI4MzhkYzhiNjVkNjY1MTM4NzA0YjgxNzVjMDUwIHB5M2stc3RydW5pCis1NjU4NyAzNTdjYjg5NjdlODVlZTBmNzhjY2Q5MjAxYzU2MzdjZTYxNzlmMDU4IHB5M2stc3RydW5pCis1NjU4OCBlOTkxNmE0ZTA2YTRkZDNhNTFjMWI1ZTVhN2U0MjBjNGFkYTIwNDhjIGxlZ2FjeS10cnVuaworNTY2MDAgN2U3ZGNlMzA4OWUzN2E5YzEwZmJlMjFhYjYzMjZjZjYwOGMyNWRkMyByZWxlYXNlMjUtbWFpbnQKKzU2NjAxIDg1YjdmNDBlMWMxY2YwYTViNTVmNjYzNzkyYTE2NzFlNjFiNmY0MzIgbGVnYWN5LXRydW5rCis1NjYwMyBkMzQ3MWVmNmZlMzhhOWM4OGNhNTE2ZjIxNDdkZjM3NGE5ZjdhNzZlIHB5M2stc3RydW5pCis1NjYwNCBlMzFjNDgyMThiMGNiOTFhMGM4Y2QyNmE0OTdiMWE1MDdmNmMwMDk0IGxlZ2FjeS10cnVuaworNTY2MDUgNzg1ZGUyMjQ5OTVkNTExNWFmNzVkMzFmOTc4ZWM5ZWNiMzg1ZWVlYSBweTNrLXN0cnVuaQorNTY2MDYgZTFkYWU4NjI2YzExYTZkZTA5ZjdjNmY1ZjQ2YWQ2YjAxNjE0Zjk0ZiBweTNrLXN0cnVuaQorNTY2MDcgODZjMTNjZTYwYWFkZTVkOTc4NzNkMzk3MWJiZWU2OTY5ZDY4ZDVmZiBweTNrLXN0cnVuaQorNTY2MDggZDUyYmVmNTUyYWE0MDdmMWE2MjJkMmY5MmEzMmU5YmE5YTA3NzUzMSBweTNrLXN0cnVuaQorNTY2MDkgMzEwNWI3Y2YzNWJlYTcwNzdmYmE5NzZlODRhZGNhY2Y2ZWNjZjMzNiBweTNrLXN0cnVuaQorNTY2MTAgYjlhZGFkNTY5NWEzOWFkMTA4OWE5NDgwZGYxZmQzMDBiZjQ3Nzk2ZCBweTNrLXN0cnVuaQorNTY2MTEgZTk0ZDUwNjBiMGMxYzRhMjRmNjA3MjViMTAwMjVlNGMzYWNkMjZiNiBsZWdhY3ktdHJ1bmsKKzU2NjEyIGYxZjFmNWUxMzk1YzhiNDllY2VkMDczYzI1NDE3NzIzMDE4Zjk1MDYgcmVsZWFzZTI1LW1haW50Cis1NjYxNCA1Y2Q1ZjMyYjRhMjg4NjQ4ODA2MmUwMTYzZDU0MTFhYjc5YjE4YjQ2IGxlZ2FjeS10cnVuaworNTY2MTUgMzY1ZTk5MWE2MzFiNGM1NjVkNjU1MGQ3ZmFhMjI1YTg5MjkxNTBiOSByZWxlYXNlMjUtbWFpbnQKKzU2NjE3IDhhZDhhMzM0YmUwZjM1NWZkMDQ3OTAwZjE2MzczM2M1NTA1MTkwNTEgbGVnYWN5LXRydW5rCis1NjYxOSBlNTk4MTczZjk1ZTg4MDQxZjk1MGYxNTI0OGIyZjYxYjNhN2ZjMjM2IHJlbGVhc2UyNS1tYWludAorNTY2MjAgMjUxMDMzYTFjMmUzMjg1ZGEyNzRkODZjZjZmNDVkMzJiNWI3YWNhOSBsZWdhY3ktdHJ1bmsKKzU2NjIxIDdlODQ2OTYxN2IxYzNkMjU2ZTdlOTM4NWY2MTMyZGM4NTIzYjkwNmIgcHkzay1zdHJ1bmkKKzU2NjIzIDBjMzAwYjI5MjAwYzIyODliNWY5NTUxOWY2N2EyMzUzN2FhMjNlZDMgcHkzay1zdHJ1bmkKKzU2NjI0IGNlN2ZjMDhkNWY0Nzg1MzE0MTY0MDA2NjM2MmQ4MzFhZTE3YWYyYTkgbGVnYWN5LXRydW5rCis1NjYyNSA0OGNmYWFhODI4NzMwZGUxYTFhMTU5Y2E1NDVkMjFjY2MyMTY5M2ZhIHB5M2stc3RydW5pCis1NjYyNiA0Njg2MjE1NjliZThlOTVlY2Q5MzNmYzljODZlYzZiYTIxNjMzNTRmIHB5M2stc3RydW5pCis1NjYyNyBiZDg0NTZjOTU2OWFjMjUzMTQ0YWVkNzgxZDAyNTZmZjhjYzUzODdhIHAzeWsKKzU2NjI4IDhlNjlhYzFiZDA0MmNjYWRmZGI4NGM2MGZkYjQ4MmVjZWJkNGE1Y2IgcDN5aworNTY2MjkgNTA0MDg0YzA0YWMwMDBjZGQzY2JjZGQ3ZmJhOTJiYjBiNzZmYTRlYSBweTNrLXN0cnVuaQorNTY2MzIgM2EwMTUzNTViMDdhYTAzNTA0MTIyODM0MDk0ZTBhYzIwOTNhZGUyNCBsZWdhY3ktdHJ1bmsKKzU2NjMzIGI2MDY4ZGQ2YWUwMGMzZTE1Nzg5MDg4ZDg5OTIxNmE3NTExMGFlOTMgbGVnYWN5LXRydW5rCis1NjYzNSBlZjJkYzYyZDI3ZWI3ZDhmMzE5OTI1YjMxZTMwZjI4YmUzM2FmNzY2IHJlbGVhc2UyNS1tYWludAorNTY2MzYgZTFjMGFhOTRjMDkyZjljMjBlM2QzZDJhZGI0MTMwZjY3ZmRhYThmNCBsZWdhY3ktdHJ1bmsKKzU2NjM4IDNmNzhhY2MwMTAzOTgxNWI2ZmJkOTUyMDI1MTAyMWUxODg2MTJhY2IgcDN5aworNTY2MzkgOGI1NmEwNjk2MTRlZjRhMjE1MGQyZjA4MTAyMzY5YjI3OWZhMzQwMCBweTNrLWJ1ZmZlcgorNTY2NDggMzkyZjk4MjIxZDEzZWVhYzQ4ZWVlMDM5MjQ1NDc2OTNkMjcxZGJhOCBweTNrLXN0cnVuaQorNTY2NDkgOGMxNjVkMjA3MDlmNjNmYzYzYjVmMmRkMGRiOGM4ZDM4M2Q0OWY1NyBweTNrLXN0cnVuaQorNTY2NTAgYTZkMjZhNGQ2NzJkZWEzYmQ4M2YyNDRhODNlZTQ2Nzg1ZDE2N2RhNiBweTNrLXN0cnVuaQorNTY2NTEgOTg5OGE2Njk2NWJjZDk4Nzg1OTRjYTYyYWZiYTUxZGYwMDE1ZTM5NiBweTNrLXN0cnVuaQorNTY2NTIgZDNhNWM3OTZjOGJhMDBmZjVmMDEzMWEyYmJiMTJmZGRiODc5MGNlMSBweTNrLXN0cnVuaQorNTY2NTMgNjcwNTliNzhiY2U0NzVkM2FmYTU0ZjVkNWFhZTAyNmQ1YmQwZDNjNiBsZWdhY3ktdHJ1bmsKKzU2NjU0IDgwMWFkMmYwZDBiNTgwNTk3ZGMyYzgxZjkwNDViZTA2ZDA5NGI3ODcgZGVjaW1hbC1icmFuY2gKKzU2NjU1IDA3YzJmODFjMjY3ZDYxOWJjNzYzZGFlYzljYzQ1MTUxYTJkNDhlOGQgZGVjaW1hbC1icmFuY2gKKzU2NjU2IGNmNDU5NjUyYzM1MjM0Yjc4M2RmNDM5ZWJlNjdhNTk4ODY2YzcxYmIgZGVjaW1hbC1icmFuY2gKKzU2NjU5IDZmMjMzMGUwOTA5YmVjNGI3YjA0YjZkNGJhY2JkM2QwNDMzN2UxMmQgcHkzay1zdHJ1bmkKKzU2NjcyIDAyYzI3MTc3ZGY3OTM0YmNjYTFkNmNlYWQzYTdkYjZkNTQxOGFmYjggcHkzay1zdHJ1bmkKKzU2Njc5IDBjYmJhNDQyNmNkM2M0ZDJhYTllYjgwYWMxZjM0NmRjMGEwMGY3YzQgcmVsZWFzZTI1LW1haW50Cis1NjY4MSBlMjFkNjQ3NDZiZDNjYzRmNTA2YWU5NWMyMTZjYjNhMTRhNGNjMzA1IGxlZ2FjeS10cnVuaworNTY2ODIgNzU1ZTMxZGVhNDdlNTk2ZjMwYTY0NzBhNzQyMGVhMjkxYTI3YjI0NiBkZWNpbWFsLWJyYW5jaAorNTY2ODMgYzMzYzM3YmE5Y2IzYjU5ZTA3YjFlOTk5MDQxY2UxYzg0Yzc3NDU1YSBkZWNpbWFsLWJyYW5jaAorNTY2ODQgYjFmZjU0ZjhmOWQ4MzEzYTUxYjk0NDc5Yzg4NDRlZDE1NTYxZDk0OSByZWxlYXNlMjQtbWFpbnQKKzU2Njg1IDNhZGIwMzM1ZGU1MDZjZGVkMjE5ZTA3NmQ5ZmQxOWFkZjllNDc1YWMgcDN5aworNTY2ODYgMTY4ZDA1NTE2MGRjMTlmOTExMTc0YzkzYzAyYmRmMGViNzAzMmQ4NyBwM3lrCis1NjY4OSA3MjNjYjllM2ZhNTAwZTc1MGUwY2YwZGViMmQ0NThlNjI1OTBkMjA1IGxlZ2FjeS10cnVuaworNTY3MDMgNzc5NGRhMTMzNGEwMWY3ODQ5ZTcwN2E0M2M3MzdlZmVkOTE4NDBhNyBweTNrLXN0cnVuaQorNTY3MDQgYWU3MmJmNWFlNDY1MThjYTYxZDViNTA5YjRmM2M1ZDRhMTIzZWVhNCBweTNrLXN0cnVuaQorNTY3MDYgNDY2MjVlNjEyMmU5OWJmZTBjYTQxZjY5ZjI5ZmM2MjkxNmRiMDI1YyBweTNrLXN0cnVuaQorNTY3MDcgODFhZGUwMTQ0MjQ3ZDc4NzVkMzNkODUyZDMyNDE0MTBjM2I1MDIxZCBweTNrLXN0cnVuaQorNTY3MDggYjFiZjFiYWI5Nzc5NjYwMzE1MTBkZjU0MTEwMTNhYzViYmEwMTUwZiBweTNrLXN0cnVuaQorNTY3MDkgNmMzZmE0M2YxZDFkMjUxMTk2Y2IxZjk0MmNmMDM5NjVmNDY5NGYwOCBweTNrLXN0cnVuaQorNTY3MTEgNzQwMWZmNzhlYjI5YzAzYmNhOGQzMTEzN2I4MWUwYzc5YjIzNDg5YiBweTNrLXN0cnVuaQorNTY3MTIgNTM1ZGFlMDRkNmNkNjc0NjQ1ODNjMmUwMWNiNTgzZmZmYWU3OGQyMyBweTNrLXN0cnVuaQorNTY3MTMgZTMxOWQyZDI4NWJhM2Q2NzVhZjZmMDE3NzEyZjM1NjBiZjZhMzk1NiBweTNrLXN0cnVuaQorNTY3MTQgYzM1MTQwNTU5Zjg3ZThkYThjZTYxOGQ2OTdiYmFhZTUzZTliYTQ0MSBweTNrLXN0cnVuaQorNTY3MTUgZjZjYzc2ZTRjYTI1MWJkYWM3ZjkwN2YxNzFkZTQwZGM0ZjliOWYwZiBweTNrLXN0cnVuaQorNTY3MTYgM2VkMDIwZTk1YjQ0NGUzMGUzOTFlOTVmNjcwMzUyMDhhYTEzOWI2MCBweTNrLXN0cnVuaQorNTY3MTcgM2JlMjk3MmEyOWNhYzVjNzBlOTA3ODE4NzIxNmY5ZDdmYWFiMDE1NyBweTNrLXN0cnVuaQorNTY3MTggYWRlNWQxYWMxYTJjOGE1MDM5YWRlMDZiNTBmNGFkYzIzNzZjMjAwZCBweTNrLXN0cnVuaQorNTY3MTkgNzEzMDRlZmJjMzE2YTZkMmY0MmQzNWI2NGE1Y2ExMTcwZDRiZDgyOCBweTNrLXN0cnVuaQorNTY3MjAgMDU3MjhlNTJiMjgzMjBkMTgwMTgyZjY4NWRkMjg3OTU2ZDYxN2U0NSBweTNrLXN0cnVuaQorNTY3MjEgYjZiZGJiNjMyNmQyZjBiOWUxOTdmNDA2MWI1ZmUzNTAyOWI3MDZiYSBweTNrLXN0cnVuaQorNTY3MjIgMGZhODRmZmJhNzY5OGFkZWIyODVjZWVlYTIyOWVlZDE0NzVlNjI3YSBweTNrLXN0cnVuaQorNTY3MjMgYzYxOTQ0ODBiMWQ1OTYxZDRlZGYzNGE4ZTEyOTMxZjA0OWVjOTc4MiBweTNrLXN0cnVuaQorNTY3MjQgMTJkYmFlY2ZiNDRiOTE0N2U4MzM5ODY0NzNmOTk1NTcyNDhhMTkxZSBweTNrLXN0cnVuaQorNTY3MjUgMTMzMzUwMzk4NzIyMTBhOTFkZmQ5NDhlYmQwOWUxYTYxYjkxZjcyZiBweTNrLXN0cnVuaQorNTY3MjYgOGQ2OWEwODRlMzY1NWNhNTUzMGI1OWVhZTY1NGQ0NjAwNWJhNDkzNyBweTNrLXN0cnVuaQorNTY3MjcgM2ZlNTdkYWFhNjA4MTM0OTY3OGFhYzU4MGUyMmI2YmZkNWRiN2RhMiBsZWdhY3ktdHJ1bmsKKzU2NzI4IGJhNjRmY2FiNTIxNDJhNWZiODdjOWVhMGQwNGZmM2M1NWVmNjAzMDEgcmVsZWFzZTI1LW1haW50Cis1NjczNSBhYTVlZTY1MzI4ZmI2OTQ4YTYzODE5NjVhNGMzNjhhYmFlODE4MDcwIGRlY2ltYWwtYnJhbmNoCis1NjczNyBlZDM3NTQyZjQ3M2VhZTI4NjVkNzJlMGY0MTZjMWU3ODZhYmEwOTlkIHB5M2stc3RydW5pCis1NjczOSA1MjhhOGQ5ZWYyMDJlNTRkNjM3ZTZlYjkzN2FhNzQ0NzQyMTA4NzBjIHB5M2stc3RydW5pCis1Njc0MCBhNDBhZWRkYzBjODFiZDhlNDdhOWMyOGU1ODI2MDg2MjI1NGM1NmZjIHB5M2stc3RydW5pCis1Njc0MiBmNDQwOWM1ZDc5OTRkM2EwZmVjZmRjYjZhMThiNzI2Yjk1ZjU0MjkxIHB5M2stc3RydW5pCis1Njc0MyBkMjIzNWFlZTJkMjU1MDJjYWMxOTYyZGI2OWNkMGRlNDMwYTNjOGNmIHB5M2stc3RydW5pCis1Njc0OCBhODRlYWRmNjM3MmUzOGIyMzZjYmZlYjA4N2QzZmM0MjkxYjRhOTNjIHAzeWsKKzU2NzUwIGZkYmVkNzNlNWRhN2Y1Y2IxMTA5MzhhNGE4ODBmYjg3ZjhhYjAzZTUgcDN5aworNTY3NTEgNjQ4NTc3Y2M2ODhhZjZjZWIwNzk3MjlhNTdiZmFmMWU4NjY0MWU0YiBsZWdhY3ktdHJ1bmsKKzU2NzUzIGRkNzRlMDIwYTEzMjM4NmQ0MTY5OGZhODcyZWNlZDBhZGEyMTQwN2YgcHkzay1zdHJ1bmkKKzU2NzU0IDYyOTE4NTk5MmFhMjE1MGIwMjhkOTg5Y2FhNDVjMjRiYWJmNjQ0NDEgcHkzay1zdHJ1bmkKKzU2NzU1IDA4MGYyYWExODAxNThlNzJlOTI4OGI4OTJmY2VhMDdiOGZkNDFhOWQgcHkzay1zdHJ1bmkKKzU2NzU3IDQ5ZDUxYzFmYzE3NzhjMTJlZjY1MTU4NmE5YTY5YWFmZmE3MzhkMGEgcHkzay1zdHJ1bmkKKzU2NzU4IDE3ODAwMzVkNTgxMjNjNzdmY2U4YjA1NGE3NDY2N2RjNjVlZmU1YTggZGVjaW1hbC1icmFuY2gKKzU2NzU5IDg4ZDdhM2RmNWY3OWU1Mjk4YWU2MjQwYWFkNGJiNWY5YzNlNjBjYWEgZGVjaW1hbC1icmFuY2gKKzU2NzYwIGI0NTAwNTY0MWJjYTYyODlkOTE0NWJmNGVmNjcwY2VlMmFmZjY0OTYgcDN5aworNTY3NjIgZGJmYzNjZjE1MjJkMDdhNGU2OTZjN2FjMjMzNmVkMTlmNzViNjNmMyBsZWdhY3ktdHJ1bmsKKzU2NzYzIDliMjZlZTZlNmQwYTQ1ZGZjOWFiMjkyZDgzODBlMTk0OWFiZWVlMDcgbGVnYWN5LXRydW5rCis1Njc2NCAyNThlMmI3YTc4ZTRmZTE3NDc4NDAzZWJhOWZjZjIxNGVhMjlhNmZhIGxlZ2FjeS10cnVuaworNTY3NzUgMGFkYjcyMDdlNGJlYjdiNGQzZjA5NzZlMzViY2ZmMzFiY2YyNjE4ZCBkZWNpbWFsLWJyYW5jaAorNTY3NzcgOGI0NWYyMjk3ZGJkMTQ5YjI5MjFjMmQ2ZWM4ZWY0NzMxNDBmMzhhOSBweTNrLXN0cnVuaQorNTY3NzkgYjEwYmEzOGU2YjgwODEyMzZhNTkwM2EyYTE5ZDZkYjkxZmU0ODRhMiBweTNrLXN0cnVuaQorNTY3ODAgMjI5MzYxMTk4ZThkNWVkODNjNjU5YTRkMDgwNjZkYjZkNmQ3ODQ1ZCBweTNrLXN0cnVuaQorNTY3ODEgNDQwMTc2ZjA2MTQ3OTQyNDA2MWE4N2MyNmIyY2I1MmQxNjEwYzZmOCBweTNrLXN0cnVuaQorNTY3ODIgM2ZjM2NlZGM0OWNhM2M2YTg1YjE4NTgwNzE0ZWQ5MTRhODZmMjViOCBweTNrLXN0cnVuaQorNTY3ODMgODFhMzgwM2Y0M2NmOTg5ZWJkODRmYzM3ZmVjYzdmM2M1MWY5ZTQzMyBweTNrLXN0cnVuaQorNTY3ODQgZjRjOTljYWQ4ZDJmNjRiMjdmOTM2ZDUzZTM5OGQ1OWVjZjAxNzM5MCBweTNrLXN0cnVuaQorNTY3ODUgZjgyODFkYzJlNjhkZWQ3ZjNiNmZmNzdlMWM2NGI3Yjg4N2JhNzVlYSBweTNrLWJ1ZmZlcgorNTY3OTAgMmFiMThmZmI0MDFjZjFiN2FkMDk0M2Y3NGRhOTE4NDlmZTI2YmE4ZSBweTNrLXN0cnVuaQorNTY3OTEgMmExMTNhODI2NGIxNjIxMDY5OTRjNjk3NGVkNWE0ZDMzMzI2NjJlNCBweTNrLXN0cnVuaQorNTY3OTIgZjMyNDhjMzIwZGQwM2ExZGMyYzZlNzhmYTY3YzIyODg1YWQ1NWM0YiBweTNrLWJ1ZmZlcgorNTY3OTcgZmU1YTA2MjFmOTE4ODA2ZGJmYTEyZTJiYTg4NzNmNmI5OGYxYWZmNSBsZWdhY3ktdHJ1bmsKKzU2Nzk4IDdkMDc4ZmEzNGJiZjYzYmYyYTJiYWU5ZDU1MDRjNmQwODRiNzcyYjkgcmVsZWFzZTI1LW1haW50Cis1Njc5OSBiMjJkOWZkNGE3ODVhZGZhYTMyYTU3ZjQ5ZTgwZTZmMmUxYzdkYTE4IHB5M2stc3RydW5pCis1NjgwMCA2YmEyZTY3NTgwZmM5OGI4MDJkNTAzNGI5YTk5ZmRmOTVkMThjNTJkIHB5M2stc3RydW5pCis1NjgwMSAzNDVjODEyZjMzNjY1ZWRmMzJlZWMwZmFhYmNhZmMyZmUyOGU3MjQ0IGRlY2ltYWwtYnJhbmNoCis1NjgwMiAyOTczNTg5OWNhMTVhMDY5NmE4NTkzYTEyYmZjZTI1MzBkMDQyNmM4IHB5M2stc3RydW5pCis1NjgwMyA2ZmRkMWFmNjNmYTZhNWZmYjdhNzQ1NDRiZGU5NTJiMTAyZTFjYjBjIHB5M2stc3RydW5pCis1NjgwNCBlN2ZkMzI3ZTBjMTlhMjg4ZjA5NTVkNzU3OGNhNzA4OTU4ZjMxYjdjIHB5M2stc3RydW5pCis1NjgwNSA0OWQ0YzRjZGYwYzg2MjgzYzFiY2ViYzViNzk2ZDcwMTQxOWYxZDFjIHB5M2stc3RydW5pCis1NjgwNiA5ZjE4NDhmNTk2ZTBjYzY0ZDVjNjQ4ZDY4ZDFhMzQ1YWRmZGFjZDkzIHB5M2stc3RydW5pCis1NjgwOCBlMTE1MGFhZTBmNjRkNmRiOTY0ZGEzOWJhMmU1N2U4NDI4NDE0MjZmIHAzeWsKKzU2ODA5IDEzZGM4MzZkNGE5OWE4NWUwNzkyNDgxM2Q3YmUwYTBhZGZkN2VkMTEgcHkzay1zdHJ1bmkKKzU2ODEwIGIyMGNjMWMwY2YxMGU0NDYxZTc2NDFmMTNmNjZmZDFmYWZhOGYzYjYgcHkzay1zdHJ1bmkKKzU2ODExIDRkZWEzYjY4YjAxM2IwZThkZDJjODA3MWQ5MzhiM2U5OWYxZTA5MzAgcHkzay1zdHJ1bmkKKzU2ODEyIDA0YTE0ZGY0MDczYTRlZjhlMDFmYWNkY2ZjODhmMWRhMWM5MWIwYTAgcHkzay1zdHJ1bmkKKzU2ODEzIGMxZWQ0OTBiZDI2Njc0ZGNkOTQ3NzQ3Yjc4MzE2M2MxMDYwYzFhYWEgcHkzay1zdHJ1bmkKKzU2ODE0IGI2NWY2YWM1Mjk2OGM2NjM0NzRlNWJhZjllOGQzNTBmZTU3NjdhNjEgcHkzay1zdHJ1bmkKKzU2ODE1IDNmMWZjZDA4MGVjNGI1MDEwYjAzNzk3YWFmNzMxMzk4MDBkNGE3MzkgcHkzay1zdHJ1bmkKKzU2ODE2IGM4YTA5MWI4NDJkNmVkY2YzMDFiN2ZmN2MzZDVkMWI4YjM4OTJhOTcgcHkzay1zdHJ1bmkKKzU2ODE4IGM5NmI0YzM4NjUyYzM5ZTI0ODMzM2JkNmZjZTAzYjkzMDhjZDhmMzYgcHkzay1zdHJ1bmkKKzU2ODE5IDY2OGE1YWRjYzg3Y2YyY2Y5N2U1ODkwZWYzNzc3YWI4ZjJlOTRlMmUgcHkzay1zdHJ1bmkKKzU2ODIwIGI1NmE4ZDgyMmYyMWI2NWExZTY1NzNlN2ZjNDQzMjBiODU3ZGIyYmQgcHkzay1zdHJ1bmkKKzU2ODI0IGE4ZjEzYTQzZWFhMWU1M2RjMmYxZDY2ZWQ1NTJmOTc4OWYwNjRjMTggcHkzay1zdHJ1bmkKKzU2ODMwIDg2ZmQzOWMyYzY3NjhkY2YyYWE5M2FiZTE0MjQwMzM2ZWM1YzVmODUgbGVnYWN5LXRydW5rCis1NjgzMSA4OWM4MWZkNzAzOGU2MzE3M2Y0MTc0MWNhZDZiNDhkMTVlNGNkMGQ3IHJlbGVhc2UyNS1tYWludAorNTY4MzMgM2Y2YmUxMmI5NTM0MjNmZGJjMTVlNjdmMGVmZDAyMzNlN2ZhODQ0NiBsZWdhY3ktdHJ1bmsKKzU2ODM0IDU3Y2QwNzBhZDMwNDJmMTJlZDQyMDMzYTgwNzNlMGZhZTYyZTc5ZjYgcmVsZWFzZTI1LW1haW50Cis1NjgzNSA1ZjYwYzllNDE0NDAzYWU1YTRmNGExMDFmODk1MzQ4YzA4NWU2N2I5IHAzeWsKKzU2ODM2IGY0ZTM2NmMzOTJiZTcwNmVjM2M5MWY3OTIyZTQ2OGZlMmZjYWZlOTcgcHkzay1zdHJ1bmkKKzU2ODM3IDE3Y2RiZWRiYjE1ZDQ1NGEzZGE3NWQ3ZGEzNDExNGI2ZjEwN2JjNTMgcHkzay1zdHJ1bmkKKzU2ODM4IDk1ZDNhNjVjYjc0YzcwZjhiZmExNmM0MWRiYTgzMjdjNjFhMWI4ZWQgcHkzay1zdHJ1bmkKKzU2ODM5IDk2MDk4YWJjOGY4ZjY3NjZjNWNlY2Y2NmZhNjcwYjAwNGNhZTA0MjkgcHkzay1zdHJ1bmkKKzU2ODQwIGMzMjFjMmI1OThmMTc0ODA5MDE3YWE5ZTU2NzJlMWVmOTAzNjZmZTggcHkzay1zdHJ1bmkKKzU2ODQxIGY2MDY5ZjlkZDUyZGZhOWM5YjZmMTIzYmZmNmJhYjYxZTA0Nzk3NzMgcHkzay1zdHJ1bmkKKzU2ODQ3IDllZGYzMGJmYzJlYmUwYWQ4MTMwOGE2NzgxM2FhZWY1OWE3Y2MzZjcgcDN5aworNTY4NDggOTkxODk4OWI3MzNiNWVjN2Y1NTE3MzdiNzhmM2IzOWI1OTBjYmYzOCBweTNrLXN0cnVuaQorNTY4NDkgMjNkOTYzYTc1Njk2MmVhMTBiNDAzMTRiNGE3ZGNkNmE0MmU4YWJiMiBweTNrCis1Njg1MCA1ZmJkMTVjNjFiMTI1MDUxN2NlMWM2Nzc2ZmQ5OTBiOWQzYjQ0NmEwIHAzeWsKKzU2ODUxIDNlMWExNTE4NWY4Y2Y5ZWVjMDljNjY0YjM5OWI2ZmM4ODIwYTY1MGYgcHkzaworNTY4NTIgMjZjYTNkNmY0NzNhZDZkZTU2N2YwYTFjN2UwOTc2ODQyMTljOWQ2ZSBweTNrCis1Njg1MyBkYjI1OWQxNDFlN2FlYzAyZjZhYjdlOGI4YmM3NWRmYzQ4MzJkZTNmIHB5M2stc3RydW5pCis1Njg1NCA0YWFlYTM1ZGNjY2Y4ZDIxNGVhOGNkNTA4M2IzYjUxYTkxZTYyYTE0IHAzeWsKKzU2ODYwIDBjODk0MDliZGE3YWJjNjBmMzlkYmRjY2ZhMjg0MzA2N2QxMDYzMTMgcHkzaworNTY4NjIgZGY0Y2Q5Mjk3MDk4MTk0N2EyOWY1ZDBmYjFiMGRlNjUxZWNhZjAyMCBweTNrCis1Njg3MSA0ODY1YjUxMGNmNTRlOGRhMWRmM2I2M2U2ZmU3OTFkODEwMmZjOGZkIHB5M2stc3RydW5pCis1Njg3MiAzZGEwYTRkYjIxMDI0ZGU1YjY3NTBjMzMyMjVhMDRkZTAzYjBkYTcxIHB5M2stc3RydW5pCis1Njg3MyA1MjJhM2UzYTAzYTk2Y2UxOWJiODZhOGMxOWU0ZjYyNzJmNmViMTc0IHB5M2sKKzU2ODc0IDA0M2ExMDJhMTcwZWUyZWYzYmEzMmVhZTQ1ZDBiZTZlZTA2MWE4NjMgcHkzaworNTY4NzUgZGNmMjczODVmMTI1MTkwMjA2NzhhODg3ZDVlMThiY2M0YzEwMzA4ZiBweTNrCis1Njg3NiAxNjZjNzQwNTM2YjVmNzNhYjQ3NmU0OThjYzgzNWU2NjgwNmIwODU1IGxlZ2FjeS10cnVuaworNTY4NzcgODJhNWMzMGMxNzg2MjA2YWRjNWQxZDI0NGE0YTFkNzYyNGFjNDZhYiBwM3lrX25vX2FyZ3Nfb25fZXhjCis1Njg3OCBiZTNmZWNkMmQzMzk0MjljMzg1MDQyZjlmOGE1YWE4ODFiOTE3ZDczIHB5M2sKKzU2ODc5IGEyNGUyN2YwNWU0ODI5Y2I4NzIzOGZkOTY4YmRhOWQ2ZWQyOWQ0YjUgcHkzaworNTY4ODAgYzBkYmY0NWNjMjA3Mjk4ZjRjMDcwMTgzZGQwNWQ1OTk5MWJlOTllMiBweTNrCis1Njg4MiAwODcwZThlOWU5OWY1OGY2YWRlZjY0NmY3YWIzOGRjMWZlZTRmM2E5IHB5M2sKKzU2ODgzIGYwY2ZlZDM4YjlkOWUxZjU0ODVkNjA2MzAxODI4ZjE2ZTJiNzZiNGMgcHkzaworNTY4ODUgMGU1YWViYTNjNjdkYjJhNWM0ODZiMzhiZjcyNzA0YWUwZmIxODliOSBweTNrCis1Njg4NiA1MDdmNTY3MWUzODg2MjhmNWRlODE2MzQwMzc1Zjc5ZWQyNzdkMjkyIGxlZ2FjeS10cnVuaworNTY4OTAgMGFiMzQyMWEwOTA2NzdjOTA5YjlkN2Y0OGYyMzViYzFkNTNjN2M3YiBweTNrCis1Njg5MiA5ZDRlMjIwMjI0ZmI1ZGQ3ZmM1MjczMGM1MmEzNTRlZTg2MDFlMDAxIHB5M2sKKzU2ODkzIGNjMjVkMTYwZjBmN2VlMTBiMGEzNzJjMGNiZDkwNjg5NTc3MjRlMjEgcHkzay1idWZmZXIKKzU2ODk0IGVlYjM3Yzk3OTNlYTUzNDM2OGQwNDk5ODIxOTdhNDdjZWUyNDJjZjAgcHkzaworNTY4OTYgZjM3MDE2ZDQyNzI5ZmJlZjk4NTdlZGM5Mjk3NzFkZjgyMDJkZTdiMyBweTNrCis1Njg5OSA3NzAzMTg3YzdjNmYxMTdjYzliMDE1ZWU4OTc0ZmZmZWNjMjE4YzczIGRlY2ltYWwtYnJhbmNoCis1NjkwMCA5MzA3MzZlZTkzZDk0OTBhOTNkMjhmYTFjYjM2MmRjNzI2YWI2MTgxIHJlbGVhc2UyNS1tYWludAorNTY5MDEgMzQ2ZDBiODQwMzBiOWRmOTU4ZmFmODU0MWFmY2Q1MzkyZWNiZGY3NCBweTNrCis1NjkwMiBlNjQyODYwNTNiMjUyMjg1MTVmZjg4M2NiMDU0Yzk5ZjkxNzZlMDlmIHB5M2sKKzU2OTAzIGQ5NWIxNWE1NWYyYzA2MzBlMGNlNTYwNjAyOTRmNTUyNzc1YzllZTQgcHkzaworNTY5MDQgM2VjMjBjNGMxYTRmYmM1MTMzNjkyZWYwNmY2MjE0NWZhZGE3YzFiZCBweTNrCis1NjkwNSBhZmZiMWU4Nzg4MWE1ZjFhZjYzZjJmYzMzOTE3NzVkYmM4MGZmNGY1IHB5M2sKKzU2OTA2IDgxYmQzZTk0Y2YwYzMxZDgzNDJiNjZhMGMyYjJmYjAzYzYxYzJhYWIgcHkzaworNTY5MDcgMzg1OGQwYjhiMGVmNzZmYmQwZGFiZTE1MzZkNDEwYWQ5ZmJkYWUzYiBweTNrCis1NjkwOCAzYTE1NzJkMWZmMWFkNTRmZWNkYWVhMDZjYjE1ZThjODg0ZDMwMDg3IHB5M2sKKzU2OTEwIGY4MjhmMzUwMTRhZTM5YmFlNTA4NGQ5MTgxZmU5ZjYwN2FmODc4NDkgcHkzaworNTY5MTEgNmEwOTQyMzE2NGZlNjI0ZjU2N2NhMTRiMTAyYTc1NTQxNTIyNzcwZCBweTNrCis1NjkxMiA1ZjllNzlkMWUxNTg0YjU5ZmU4MWVlOWM5MWY3NjI3NDA5NjUwMGRlIHB5M2sKKzU2OTEzIDhkNjg2N2NiOGE4ZGI3MTg5NTE4ZWQwNWM1YjgyNWZkNzMwZjcwNDQgcHkzaworNTY5MTQgNmNkZGNlNDA5NmEyMjdlMjBjYTk1MTQwNDgzZDQ4ZGJjNzAzZTNiYyBweTNrCis1NjkxNSA3NGEzYzY4MjY2ODNlNGY3NDlhMjE4ZTM3NjI3NzlkYzMzMzQ2MmU2IHB5M2sKKzU2OTE2IDljM2U2NDQwZjU0YzMyM2M2ODE1MjE2ZTRjYjE1OTIyMDM4ZGQ3ODIgcHkzaworNTY5MjIgNDNlMzJiMmI0MDA0ODFjYTM3Yjg2MzhjM2FjNmNjNmNiN2FlOTFjMSBweTNrCis1NjkyMyA2OGZmOTA5OGIyZGM4MzZkNWIwZDBiNGJkNjIzMTE5MTc1NDdkNjk2IGRlY2ltYWwtYnJhbmNoCis1NjkyNCBhYWI2ODc5MzZlY2Q4Mjc0YmU0ODgwMjg5M2ZjMGQ5YWJmMGE3ZmI0IHB5M2sKKzU2OTI1IDBjOWFkMGIyZmFjNTRhYjkwYTI3ZmIzNDNiMmNlYmMwMmQ5OTgyNjUgZGVjaW1hbC1icmFuY2gKKzU2OTI2IGQxODU1ZDBlNGUwM2MzOTM3NjEwNzY3Mjg5NDFmY2IwYmMwOGJjNGIgcHkzaworNTY5MjcgY2ZhZGQ3Y2M5YzQ1NzdhNTZjOTFiN2Q1MjRhZWUwODcyNTdjOTM2OSBweTNrCis1NjkyOCBhNDRjNTY0MDI2YjgzMTQ4NjA1NWZiMTRlYmM4YzdkNDU1ZjMxMjY0IHB5M2sKKzU2OTI5IDA3N2M2ODE4NmUyMzc3ZDQ1YWEyN2IyYTZiNWE2Yjg2MGE5OGQ1MzEgcHkzaworNTY5MzAgY2Y5MTM3N2UyNDQ0ZTQxNGE1YWU0MjI3YmU2ZTdiMjUzZjNhYmYxNSBkZWNpbWFsLWJyYW5jaAorNTY5MzEgNDIxZjlmMzU4ZTRmYmI0Yjk1NzgzNmE2NDFhNWViOTQ3MTA4MmQ4NiBkZWNpbWFsLWJyYW5jaAorNTY5MzIgMGMwZTM1NWNmNzQwN2NkM2VjNDY1MmY3YTAzOWRjOTFhMWJiYjhiOSBweTNrCis1NjkzMyA4NDQ3ZWNkMWJmNDU4MWI4OWE1M2ZmN2Y5ZjQ3NTUxNmFiNmQ3ZmY5IHB5M2sKKzU2OTM0IGE4Yzc0MjQyNTM1NjJjZDRmNGMzMThkNDExZjZlMWYxOTg3MDRkMjkgcHkzaworNTY5MzUgZTBmNjIyODZhOWE0NTRiZDNmOTNlZmJhZTcyMGU4Njk2MWE2MzE4MiBweTNrCis1NjkzNiA2NWYxZDQxOWY2MzEwOWZlNzcxZWI4YWRiN2M4NGY4Njg2MmYwYzU5IHB5M2sKKzU2OTM3IDI3NjMzMGY0MmU3OTM2YjQ2ZjBhYWM0ZGZmN2FjMWZjNDljODA1ODYgcHkzaworNTY5MzggYjY2MjVkMmIzNzhhZjEyZGYzMjU4YmYxOTg5NjFlOGU3ZmVmOTkyMiBweTNrCis1Njk0MCBhYzE5MmY4OWMxMDkzY2EyMDFiMjFmMTMyZDVhNmNmMzdkNDA1NzA0IHB5M2sKKzU2OTQzIGM2OWQxMjI2NDNkNTBkM2QzYjU0YjFmNDlhOWQ0Y2NiMTAxZjEwNzggcHkzaworNTY5NDQgN2FiYWNjOWUzOTk1OGYwODU0M2JmNjNlMGZjNGZmMWE1ZmFiOGM5OSBweTNrCis1Njk0NSAzZTY4MmFlOWQyOThlZjExOGE1OTJmZWM1NzcwYTYxY2M5N2M0ZWJiIHB5M2sKKzU2OTQ2IGI3YjNmNGUzMjUzM2ViM2ZmMDI2NmE5NDU1YTNjZWFlZjBiYTI4MzIgcHkzaworNTY5NDcgZmVlNWM2YmJlMTQ0ZGFiODM0ZWFlZjQ5YjQ2N2IxZDczZGQ0ZjNkZCBweTNrLWJ1ZmZlcgorNTY5NDggNGI0OTk1YzhlM2ZkNjc2ZTFhYWM1OTg3MzJjMGE2ZWQxMWI5Y2I3ZCBweTNrLWJ1ZmZlcgorNTY5NTAgYzNiMzRiMGY4MjE2YWUzOWUzMTYwZjIyN2ZjMWQxZmE5NjQ1Y2UyYiBweTNrCis1Njk1MSAzNDZhZmE2NThlNDQ2MDM4NTA2NTM5ZmFiMDgzYzVhMmU2OGI3MWQzIHB5M2sKKzU2OTUyIGU3ODEwODVhYzk4OWU0YzBjMWEzZjI1NGZlZTJjYzlkMTE0NDNmZDkgcHkzaworNTY5NTQgN2Y5NDljMTdjYzM2N2JiY2IzNGM1NTI1Zjc0MDkwOWJlZDRmZWM4ZCBweTNrLWJ1ZmZlcgorNTY5NTUgMGZjYzE4YWJhMzg1ZGU0Yzk2MDFkYjgzZDhmMGYwN2JiYWYwYWYwOCBweTNrCis1Njk1NyBkMDIwYjliMWQ5OGI2YWQ1N2E5NjA5NmE2MGVmNjc3NmUxYzdjNmQ3IHB5M2sKKzU2OTU4IGFlOWNmNDhlZDZmNzI4ZmQ3YjAzMjU3YTFmMTg0ODI4MGNhZjhlNGYgcHkzaworNTY5NTkgMGQ5OTUzZDdiODI3NTdjZmM0OTMyYzllYzE3NmFiYTVjMTJmZTU0NyBweTNrCis1Njk2MCAxNTAxOWVhZTM5ZTgyN2Y0MTQwYTNhMmVlYTNlMDNkNWM5ZWY5MmM5IGxlZ2FjeS10cnVuaworNTY5NjEgMTM4MTA0NmZlODk0NWJkN2MzNTgwM2Y0NDMzNTVjMmFlOTdhZjcxMCBweTNrCis1Njk2MiBiOTBjMjIwNDE2MzUxYTVlNmM1ODMyZWE3MGMwNDFjNmJjOThiOTYxIHB5M2sKKzU2OTcxIGViMmMwNjc2YzczZjFiMTZkZjJhNzg3NWM1OGMxODIzZTAxYTUwZGEgcHkzaworNTY5NzMgZDRlZTU0YTg4NDg1MGJjZTZjODYyY2ZlMjM1MjZlOTY2OTM5MWZkNiBweTNrCis1Njk3NCA1M2I3M2MyNzExYjZjNjgyYTRlMTJhOTU2NDI2OGE5YWUzNTYyOTgwIHB5M2sKKzU2OTc1IDU0MjYxNjM0YWQ0NmQ1ZTk2ZjAyOGQyMzk4NDNlZjk0Y2JlNzc0ODkgcHkzaworNTY5NzYgN2E0NWU4Yjc4ZDYzZmY0NGVlOWQwMWFjY2Q5YjkwMDE1YjUxZjlmMiBweTNrCis1Njk3OCBhNzI0Mjc5ZmM5MzFhNWYxYTBmZWU2MDE1Y2E1NmQwMDYxZjU0OTdiIHB5M2sKKzU2OTgyIGZiMDY5ZWFmYWY4OWY1MzFiMmNhMWY2OWVlMWUxN2JmMTk3NGFiZTAgcHkzaworNTY5ODMgNGJjZTk0ZDllYzMxZTQ1MzhjMzA2ZmZlNGMxNzg5Y2UyZDliZjVlYiBweTNrCis1Njk4NCA2YWY2YmI0ODI0ZDViZTYxYzBjZjA3Y2ZmNzcwMTJkMjdiY2JhY2NlIHB5M2sKKzU2OTg1IDQ3YWFmM2Y0YTAzOGNlOTRhYjg0ZmI3MjlkYjQ3ZTgyNDdmNmUyNTUgcHkzaworNTY5ODYgMGVkM2QxODI5MjBiOGY4ZDY0YmRmMzQ4YTJiNzI3MzBhMzMzZjRiMiBweTNrCis1Njk4NyBjZjliM2I0ODdmZGExZjY1YmQ0MGE0NjMxYmM5MTVjZTVlNmIyZGIwIHB5M2sKKzU2OTg4IDM3N2I0ODM4MWE0OWMwMzM0Y2EyYTU3MDQxYWM0MjlkMjZjYjk0MmUgcHkzaworNTY5ODkgNWFlYjI2MWRlMGJkYWNjOGY3YjllYTZkNDVmNWVhMzc1YTU2ZmZlYiBweTNrCis1Njk5MCAxZTQ5MzY5NjQ3NzZmNTdmZjYwOTIxZGViY2RhZmY3MDdiYzVkNzQ3IGFsZXgtcHkzaworNTY5OTEgYmJjZWY2ZGU0Njc0MDU2ZGI2YWVjYzI1NWJjNmQ2ZDVjYmMyMGY1NiBhbGV4LXB5M2sKKzU2OTk1IGQ2OGE3MWM5NjVlYzE1MDViNzFmNWUxMzVjYjllODBhMjY1MmRlZDIgcHkzay1idWZmZXIKKzU2OTk5IGJmZTIwMmJmZmRmNDJmYjQ0NGZlMDQzZmQzYzBkZjE2NzdlOTZhZDcgbGVnYWN5LXRydW5rCis1NzAwMCBiZGM0MDI5M2Q3NWVmYjhlYjBmMWZlMzQ5NzBiOGU2YzM0NDUyMDdlIGxlZ2FjeS10cnVuaworNTcwMDQgOWNjZjlkNjdiYjM0OGM5NWMwMWQwZTU3NzkyYmMxNzkxY2QyM2VhOCBweTNrLWJ1ZmZlcgorNTcwMDUgZDMzNzFmZDQ5MTAyNDVlYzJhOGE0NzhjYTA5ZWZiZDFjMjgyOWZjOCBsZWdhY3ktdHJ1bmsKKzU3MDA2IDIyOWQ2MzQ1YTczYTExMjQ1MzA3NzdkZmUyNmY4OTdjZjNhZTBkMTEgcHkzay1idWZmZXIKKzU3MDA3IDY3OTM3ZmVlNzVhZjZhMjcwODgxYTZkM2UxMzRhZTdiMTg5MWNhZTYgbGVnYWN5LXRydW5rCis1NzAwOSBiNjIzNzc3ZjIyYjBkYTQwM2MxN2I5OWVhOWFiZmZjOTBlYjJlMWUzIHB5M2sKKzU3MDEwIDNjMWEyMDM2NWEwNWJjMWEwNGIxYmRkY2FjYjM1N2IwYjc1MGE5ZDcgcHkzaworNTcwMTcgMjE5ZmUzOWVkZTk5ZjdlNDIzMThkNGZiNjk4M2U4NjVmZmJlYmJlNiBsZWdhY3ktdHJ1bmsKKzU3MDE5IDI3NGYzYWU0ZGNjNzgwMzQwNzU4NWMzNjYyOGNhNWYyY2RkYTBhYjcgYWxleC1weTNrCis1NzAyMCBiN2JkNGEyNjg5YzE2Y2U1ZDExM2M2MmI2MmRiMGEyOWQ4YmE2Nzg2IHB5M2sKKzU3MDIxIDg2ZmFmMjExM2QzNmY1OGRhN2IyMDVjYmEwNjE5OTE5ZWE3ZGUyNGEgZGVjaW1hbC1icmFuY2gKKzU3MDI0IGE1MjhmN2Y4Zjk3YTI5YzA0ZjJkZDNjZTlkMTZlNGY4OTQ4YzJhN2EgcHkzaworNTcwMjUgMWI5MWZhYTBkZTJkMWUzNmU4ZTFkYWJkZTgyOTdhYTkzYTc0Y2MzZiBweTNrCis1NzAyNiA5YjAyMTI4NTIxZTI3MDRhZWVkMGIzYjY3NGIxY2ZmZWMzZTJkYWFmIHB5M2sKKzU3MDI3IDMwYzBkNTlkYjBjNjQ4NTI3ZmNkZmM4OThkNzM3YTM2NmNjNmRmMTYgbGVnYWN5LXRydW5rCis1NzAyOCA1MzkxYjVmOGNkN2EwZTM2YWY1YTg2YWZiODk0NWZmYmUzMTk0OGRjIHB5M2sKKzU3MDMyIDEzYjIzYWRkZWY0MWQ4MjA2MTk2MzcxNzU4NTJhMzIzNmM0YWMxMTcgZGVjaW1hbC1icmFuY2gKKzU3MDM4IDNiZWVmMTZkODE2NzEzYzFkNzkzM2YyOWFjZGU5YjRjYzZiNDgzMTkgZGVjaW1hbC1icmFuY2gKKzU3MDM5IDdjNjZmMTExOWU1NTRlMDIwOTM3NjRkN2Y0YjYzMWMyNjk5ZTdhZTQgZGVjaW1hbC1icmFuY2gKKzU3MDQwIDRlYmVhNmFmZGM4NzExMDI4YzYxY2M5MTE5MTkwMzk3N2YzMWViZGMgYWxleC1weTNrCis1NzA0MSBlZDk4OWRkOTk1ZDI0NDIxMmJjNjQ2NWQ4MjZkYjg5ZTQ5MDkyODRmIGFsZXgtcHkzaworNTcwNDIgYWM1Y2U3YzQzZWU3NTlkZTQ5NTY3MDgxNmYxYmJhN2VhMGM0NTI3ZSBweTNrCis1NzA0MyBmNmFmMGIyNTk4Y2ExMmMxZGM1MzRmNjM4YWZlZTYwZDQzMGE2ZWE5IHB5M2sKKzU3MDQ1IDk4MDMwOGZiZGEyOWY5Yzg5MDY0NmIxMzliMjM0NGE4YWEwOTI2OTUgcHkzaworNTcwNDkgMjA0NzdjYmZkOTk2NzgwODU0YTk2ZDA3MGVjM2I1NjIzODZiY2EwYiBweTNrCis1NzA1NCBmNjhiNmJmNDYzNjYxZTJiZGUyMmRhYzBhZTA1NWU5NjE2Y2IzY2E3IHB5M2sKKzU3MDU2IGY4MjhhOTVhOWRhNmJhOTA4YzliYTBjMjY2M2RkMjJhM2JhOGQ0YzkgZGVjaW1hbC1icmFuY2gKKzU3MDYwIDQ2MjA2NjFlMDZhZmFmNDUxOTM4NTg2MDNjNGMxYWVmODA2Y2I2MWEgbGVnYWN5LXRydW5rCis1NzA2MSAxN2JlOGZiZWMxNThjNDViMzcyMGU1MTExNGU3M2YyNTBlOWVkZDMwIHB5M2sKKzU3MDYzIDI0NDk3MDE5YzQwNzM1NjRkNjQ5YWUxYjJiZGZjZmQ1NzNhMWIzMTQgbGVnYWN5LXRydW5rCis1NzA2NCA3MTdmZmIxNmI1ZDEyNTRmMjc5M2UzNWM2NGFjZGYwOTk5NDI0MDM0IHB5M2sKKzU3MDY1IGM2MmY2NjY5YWUyMmI4Nzc5NWJhMzY0OTQ3NTE2MzE0MDFhYTVhZmMgbGVnYWN5LXRydW5rCis1NzA2NiA5ZTE1MjliZjA0NDIyOGI3ZjdiOGExNmM1MzdkYjkxNzg1NjQ4MGVkIHB5M2sKKzU3MDY3IDcyNjFhOTFiZTAwMzY4MzA4MzVmN2U0YWNjMmE5NzZhOGU5MjM3ZWYgZGVjaW1hbC1icmFuY2gKKzU3MDY4IGIxYWJmODQ2Y2U4MTUyYzM4MDMwMzEyNjlhNmRhNWE1Y2E3ZjRlMjUgbGVnYWN5LXRydW5rCis1NzA2OSBhM2U3NjQzMTcwNWIyNjNjODY2NGIxNTFiZWMwNTM3MDE4NDIyN2RjIGxlZ2FjeS10cnVuaworNTcwNzAgZWFiNzVhZTMyMTJiZGIyZDRjYmY4OGVmYmViZjk4ZTQzYzk1NDg1OSBsZWdhY3ktdHJ1bmsKKzU3MDcxIDNjYzJjYzc5NTc2NWZhOTg0Y2FkZDgzZjc0M2Q3ZWFiNGQwYjZmOWMgbGVnYWN5LXRydW5rCis1NzA3MyBkMzM2MmM0OTUyOTYwYjRjMjNmMGVlYzY1MmIzMmFiZjg5ZWJlNzEwIGxlZ2FjeS10cnVuaworNTcwNzQgNzkyNmE4Y2E5MjkwNDJlYTc5MTc4YTc3ODYyNzhhNmNlODExOWQzNSBsZWdhY3ktdHJ1bmsKKzU3MDc2IDEyMTIxM2JiZjM1OGY4NmE5MWRkZDE3YTljOWI3YmVlYTFlYTcxZGQgbGVnYWN5LXRydW5rCis1NzA4MiA0YTQ4NzE5MWZjNTRjMGExNzA5ZWUwZGM3MjI4OTRkN2I0NzZlZjg3IHB5M2stYnVmZmVyCis1NzA4MyA2NmE1OGMxYzI4M2IzZTU5ZTc2NWU5OGFlOWM3YTk4MDczNTI0MjUxIGxlZ2FjeS10cnVuaworNTcwODQgYmJiNGY0NjYzY2QzMjEyYzhkMTAwYzFhZGFiYWI0ODFiNjliMzFmMiBweTNrCis1NzA4NSA3YTU2MmEwMDk3M2VkNGQzNTI4ZDgyNzRlMWFlOWI1N2E2MTY0YTY5IGxlZ2FjeS10cnVuaworNTcwODYgY2VkMjdiOGYwODliYTViMDc2M2Q5MzZiMDUxMzkzYThhZTFmNTc2YSBweTNrCis1NzA4NyBjYjhjMWRkN2VlMzJiMDI3YTZlYzM3Yzk4ODUyMWVkODFiNzhjYTVhIHB5M2sKKzU3MDkyIDYwM2RjNTNjNDcxNjIwZTk1OWE4OTZiYWQ3Y2M3MzNmMGUwNjhhODYgbGVnYWN5LXRydW5rCis1NzA5MyAxMzViM2NkNWU3MjMyZWVmZjIxOTFmZTBlNDVlYTUwNzc5ODczYTllIHJlbGVhc2UyNC1tYWludAorNTcwOTQgZDI2NDEwN2M3ZGE2ZjZhMWJkNjM0NWM5NGYwNTVmZDE1YmU0YjQ4NCByZWxlYXNlMjQtbWFpbnQKKzU3MDk1IGExNzY4YmJkNzY4MTllZGI0OTg3ZTE5OGQ2Njk1MGM0YWMxNjc5NTAgcmVsZWFzZTI1LW1haW50Cis1NzA5NiBkOTdmZDQ0Nzc3YjJjMTJjODhmZTYwYzU5ODEzMmVkZWFkZTk2YzU4IGxlZ2FjeS10cnVuaworNTcwOTcgNGQyYWE0YmZiMmQ2MDE0YmU2MWEyNDNlNjg2ZTI2Y2Q0NWU4NmRlMyBweTNrCis1NzA5OCBhZjE4MGQ1NDZlYzIyMDI4ZTNlMTRmMzFhNjIyM2YyMWIyMDI4NGVhIHB5M2sKKzU3MDk5IDhkYmM5ODFmMDQwYjhjNGQ2ZjU3NTgwODhjNmM1NmI4MzcxZDNkODIgcHkzaworNTcxMDAgMTI0YmQyODI0OTNkNTU2ZDMzYWFhNWM5MWY4ZDU0MDYwOTU3MTQzMCBhbGV4LXB5M2sKKzU3MTAxIGQzYTg5ZDlkMmY1ZTA2YWYxN2M1ZDkwOTRhOTk3OWRkZjdjOWI2MmMgYWxleC1weTNrCis1NzEwMiA0NTE4M2QwYjIwYTc5N2Q4MWZhM2Q0YTJmMmM5YjkxNDU1ODQxYmNiIHB5M2sKKzU3MTA0IDg5YTNjYmExY2Q1MjQyMzA3ZjQ2M2QwZmRlNzI0YjIxZWQ2MzlhZjMgYWxleC1weTNrCis1NzEwNSBmMWEyZDUxZjFjYWIyODRmMTY3OGZmYzc1MmMwZjRmNzUxZTEzYTM3IHB5M2sKKzU3MTA2IDE4MTA0ZGJhODVlMzM3M2U4MTQwYmNkNzIwMjRmYjk1YWRiNTE3ZWIgYWxleC1weTNrCis1NzEwOSBlY2I3YjJkZDNhZjU4MDNlOGMwYzMzODEwMGU4MTMyYTk5NDAyOTRmIGFsZXgtcHkzaworNTcxMTAgMzQxMjQ2MTNiYzRkZGFiZmE3MTEyMDlhZGJiM2YyZjM1MDZiNjNiOCBhbGV4LXB5M2sKKzU3MTExIDQ2ZjQ4MGUxMTY2Yzg0YTdiZmVlM2IxM2Y5M2NkYTI2OWQ5ZmIzN2EgcHkzaworNTcxMTIgMGRlYmY5NDU1Y2RjMTc3NTg0OGQ3ODkwNDcyOWEyZWQzMzkyMWQ0OSBweTNrCis1NzExMyBhNmM0ODkyNWRlNTNiMDg2MGRhZjg3OGI1M2I0MDEyMTdhZTA2NDhhIHB5M2sKKzU3MTE0IDIwYWVjOWYzNDU5OGQzNTM5MTFkNWQ2NWM3Zjc2YjQ3YTkxOTU1ZTEgcHkzaworNTcxMTUgYTI4NTlhZTg5ZGE5MWExYmViOGFjNzdhNjA2YjNlYTUwY2UyM2M3ZiBweTNrCis1NzExNiA0OGEzMWIwYmY1MDE4YjM2MGYxYzhmOTEyNTc1ZGM4Y2E4OTAwNTI3IHB5M2sKKzU3MTIwIGI3YTViYzY5ZDJlZTViYjk0MzcxZjlmZjZmNDg1ZThkMzg2Y2FmZGYgcHkzaworNTcxMjMgN2IzOTFhNGVmODljZTJkMTNjMjlkMTIxMjk2ZTUzMTk5YTg1ZjI4ZiBsZWdhY3ktdHJ1bmsKKzU3MTI0IDEyZGQ2Mzc3ZmY4NWJlZDc5YWYxYWEzNzQ3NTQ3MWYzNmZkM2FkNzAgbGVnYWN5LXRydW5rCis1NzEyNSAyODFiNTE4ZTRiY2MyOGNhNDNlN2VkNjRmMDhiODU1MWU0Mjk2YzllIHB5M2sKKzU3MTI2IGZmNWFkYjMzNzRhZGNkZWNjNTU3NTE5MTY2OGMyODg4MTZjN2ZjZGMgcHkzaworNTcxMjcgMjA1NmQ4MzUzYTY4OWI1MTRmYWMwMjFhNDU5ODY0NWU4MzVmYTUxMCBsZWdhY3ktdHJ1bmsKKzU3MTI4IDI2MDZhZWFhODZkNDA2NWQ0YjVlY2Q4NjdjM2RkMGYyYmE4ZDIwMjYgcHkzaworNTcxMjkgZmNmNmRjNTFhZjU0MzFmNDI0MDVlYjFjMDAzMzcyZDVlOTQwOWFmMyBweTNrCis1NzEzMSA0YzVlY2MyY2NhYmRkNTJjNWVmMzlmNDdmMzQwODJiZjkwZTgzZWJiIGxlZ2FjeS10cnVuaworNTcxMzIgOWZjMjFjOGJhYmI5NmM3NjNkZDkxNGNlMGJkOWIyYmNkZGFlN2MzOCBweTNrCis1NzEzMyA2ZjQ5MjI4MDM0MTE2NmEyYTQ3YWNiMzAzMjQwZmE3YzAzMjMzZWFkIGxlZ2FjeS10cnVuaworNTcxMzYgODYxMGExY2E2NTBiMzQyYWVmODAxYTQzMTk4ZTYwZDVjMGNiYWIwNiBsZWdhY3ktdHJ1bmsKKzU3MTQyIGE1ZTk4NGVkYTQ1YTIwY2U3MDAzODhhNTMyNzUzMmY2NzJmODY4MzYgcHkzaworNTcxNDMgZTM5NDQ5MDk1Y2M1YWI2YWY2MTZhZTA5MWRhYWQyNzQ4ZWJiZGJkMyBweTNrCis1NzE0NCBjYzdiNWJjMjk3YzRlZDUyYTc1MjBjZTc5NDRiYzQ5ZDI0NDBiNzZlIHB5M2sKKzU3MTQ1IGE4Y2ExNGNlYzExY2Q2OGM2MDEwZDI0YmI2ZjA0ZmJjMzEyNDVmNGUgcHkzaworNTcxNDYgYzkxNjczMTMyMWMwYjAxZTgzOTliZDk2MzJiMzVjNjYwZjBmNDJmNyBsZWdhY3ktdHJ1bmsKKzU3MTQ3IGYyZjBlOTVhNzk3YmM3N2ZlMmIwMzk2Y2Y2YTc0Mjk5NjY2NWM3NWYgbGVnYWN5LXRydW5rCis1NzE0OCA1NmQ4Yzg3MWRjODZiMzlkYmRlZWVjOTUyZjk2ODVlMDYxM2UzNDJlIGxlZ2FjeS10cnVuaworNTcxNTAgOWM0ZjViMWQ2YjlkYjVmYWRkMjhmMWU3MTZlOTRlNTZhMDUzYjBmMyBsZWdhY3ktdHJ1bmsKKzU3MTUxIDk4Njc3NjQ1Njc5MTM2NWUwN2IzMjVmY2IyOGVhYzViODA2YWRhNGUgcHkzaworNTcxNTIgNzQ0NDY1MDlmMGYyNzZmMDJhNjVjMDAxODZkZWYwYTg0M2UyZDFlNiBweTNrCis1NzE1MyA5MjUxNWI2NDliOTIyN2UxNDQ3NjI3NjVkNjcwNTk0OTlmZjE4ZTQ1IHB5M2sKKzU3MTU0IDFiNGM5NTk3NGE3ZGE3MmRmODc5YzdkYTMyNTg2NTFkZWQ5ZDRmYzkgcHkzay1idWZmZXIKKzU3MTU1IDE3MjFmZjVlMjg2NGQ1YzA3YjIxMTNhMWJjNTg3ODgyYmU1YzVkN2QgbGVnYWN5LXRydW5rCis1NzE1NiA2ODc2YWU5MTdmYjFiYWM3MWJjMjk2MDFiNmViODBiNDY4NTAyZTk4IGxlZ2FjeS10cnVuaworNTcxNTcgYWQwNjMyN2UxZjM5YTczY2NkYzkzOWJlMDA4OWFmYWJhZGU3MmEwMyBweTNrLWJ1ZmZlcgorNTcxNTggYmMzMWRmY2Y3ZGZhMGQ0MTRjNGQ1YTRmZGQ3NTBmYmJmMjIwNDNkZSBsZWdhY3ktdHJ1bmsKKzU3MTU5IDM3ZDcwODU0ZDI1NTJjZTdmYTk1NTExMjhiMGFjZTM2YTlhNThlMWMgcHkzay1idWZmZXIKKzU3MTYwIDM4ZGZlZGYxZDJhYThhNTZiZjI3ZTg5YWUzNjFkZDdiMDg0ZDI2NTYgbGVnYWN5LXRydW5rCis1NzE2MSBiODA1NDEyNTFlMGVkMWVmZTM5MmJiOGJmMmNkZDk2MjMzZWEyM2IzIGFsZXgtcHkzaworNTcxNjIgZDg4NTkyZGQzYTYxMDkyYWM1MWU1ODQzZDBjMmMxNDFjMDgwNGU2NCBhbGV4LXB5M2sKKzU3MTYzIGM1OWY5OTQyNjgyYmIxZGNlY2U3MjljMTM2ZTM0YzljZjNhMmU0MmIgYWxleC1weTNrCis1NzE2NSBkZmZiZmU2MDc3NzRmMDczZmZjODljN2U4NmNjYzc2MzM2YTE1MGU4IHB5M2sKKzU3MTY5IGUwY2M4MzNmZGQzZWJkZTk3MjQwYmU0MjAyNmYwNDYxMDhmODhjYzYgcHkzaworNTcxNzAgYTU0ZDg2NmRjN2I0ZWZkMmViN2E3NzkwOGQ0Y2M4ZjZhZTMxMDgxMyBweTNrCis1NzE3MSBhZjEyYTQ2ZGY3MzdhZDE2YTZiYzkzNGFjZTE5MWI2ZTNhYWNiOWQ1IHB5M2sKKzU3MTc1IGE5MzFjNjAxNWI5MTdhN2ZjNjdiMDNlMjQzMmIwODc0MmE1NTBiZjkgbGVnYWN5LXRydW5rCis1NzE3OCA2OTc1MGIwOThlYTI0N2VkOTM3NjQ2YjczYTdlMmJmZTcxZWQ3MTljIHB5M2stYnVmZmVyCis1NzE3OSAwNjk1MGJkMDRlNjk2OTJjMjhkNGYzMTkzNjIzMzYxN2Y0ZDQzNDkyIHB5M2stYnVmZmVyCis1NzE4MCBhZDQ3ODhkZjUwNGUwOTY0MWUzOTU2MzFiODJhNWVhODk4ZWQ1MmEwIHB5M2stYnVmZmVyCis1NzE4MSA4NWMyMmI0ZDQ0NTU5YjNjNWY0MjY5ODc0ZWNhNmQ3M2M3NWI4YzU2IHB5M2sKKzU3MTgyIGIzY2E3ZjViNTM3YzVkNzJiZmEwZjlmY2Y2MzFjZDkzMTM1ZDY5NzQgbGVnYWN5LXRydW5rCis1NzE4NiA4MWI0NWMwZGEyYzhiOGE2NWIzMTNmMjEyNzFlM2YyNTQ2MGQyNzI5IHB5M2sKKzU3MTg3IDc2ZTA0OTczYjE1ZGZkMGNmODIwNmFmZGZhOGMxMDAzYjMxMmFhNDggcHkzaworNTcxODkgZWQ5N2E5ZDFjMzQ3MzQ0MTJhMjQ0ZDI3NGM5YzA1YTc1N2RhNzhkNSBhbGV4LXB5M2sKKzU3MTkwIDBiYzljZjFjZjk1OTE4OTgyOTVkYmQ2YTBkNTJkN2QzYzVmY2Q2MWYgYWxleC1weTNrCis1NzE5MSA4ZGNlNmUyODcwZTgwOTNlNTYzZmJmNTEwYzg3YmE1YjhjMTA4OWE1IGFsZXgtcHkzaworNTcxOTIgZjc4YmY1ODQyNzllNmRkNzM3NzJjNTQ0N2RkZmVjNjM1NjM2Mzk2OSBhbGV4LXB5M2sKKzU3MTkzIDJjNTFiZTk5MDRkZTFjY2U0NjgyYjcwMmU5ZTViMzgwZjQ1NDEzZjUgcHkzaworNTcxOTQgN2U1ZWZmODdkNjY0YTAwOWY5ODNlMGFmZmY1ODk1N2Q0MTk5M2M2NyBweTNrCis1NzE5OCBmY2EzNTQxNjA0NTg1MThkYzk3ODIyYjY1N2JlYjhmMGYzMWFlYjE3IHB5M2sKKzU3MTk5IDZiNTMwZTAyOWIzYzNkODNmYjc1ZmFhZGQ3ZjcwYzEwNGRkMjE1NmEgbGVnYWN5LXRydW5rCis1NzIwMCA5NWIzN2NhZTQ3YzRmN2VjMTY2MzM5OGI0YzUyN2QyMjNhOWE2OTU0IGFsZXgtcHkzaworNTcyMDEgNzM5ZDMxMDUwOTdmZTAyMmViMzRhNjE0OTMxOTZkMGQyOTU3M2U0YSBhbGV4LXB5M2sKKzU3MjAyIDY5MmY1N2E1ZGM3NmExOWEzZjk2YmIxODdlMzk0Y2RiOGI2ZmUxZDggcHkzaworNTcyMDMgZDAzZWI3NzQ1NzZhM2U2ZTQ5MTkyZjM4YTM5ZjY5MGJhYWY5N2M5NyBhbGV4LXB5M2sKKzU3MjExIDcwNTQ2MTVmMzdmZTYwM2E2NmM0ZjZmMDA4MmQzNDdkZmZlZDZiNGUgbGVnYWN5LXRydW5rCis1NzIxMiBjZDQ1OTFiNzU0ZTAxMWQzNmE4YTI1OWI3YWFlZWNkOGYzZmNjOTNlIHB5M2sKKzU3MjE0IDU4NWQ4YmVjZTgyNjdkMDU5OTg2ZmNmN2IwYWJiMjVkMjNlZmVkM2YgcHkzaworNTcyMTUgOWEyZjM3OTQxYjJiMDVjYjU0MTAxYTVmYzA3OTJkNzFhNWQ4MjU1YyBhbGV4LXB5M2sKKzU3MjE2IDBmNTBlMDkxYTM2ZmVjNmI3ZjU2NGRlMjAzMTRjNDA5ZDZkMjBiNTMgbGVnYWN5LXRydW5rCis1NzIxNyAxNTA0N2IyYWNkM2Q1NTQwOTI5ODNiOWJkZTJmYmUyMTg3ZDc3Mzk0IGFsZXgtcHkzaworNTcyMTggMDQ5OTNkOTZlNzM4MTYzMGNiOTBmZWNkZGM0YmYwODE4NDJjNjNjYSBhbGV4LXB5M2sKKzU3MjE5IGMyM2RjZDk0ZGNjZTAxYjYwNGUyYWQ5YzNlZjMyNjEwMWE5MjhiNWYgYWxleC1weTNrCis1NzIyMCAzNjQ1ZjBiOTQ5MDhiYmFkYmE3MzY1M2I3NjM5MGMxMjU5ZmVmM2FlIGFsZXgtcHkzaworNTcyMjEgYWY2YTcxOTBjYWJjYjNhY2Y5YzMxYjcyZmY3ZThlMDFhYjZiNjMwMiBweTNrCis1NzIyMiBlNzFjMzIyMzgxMGYyNDViZTBkZDUzZWU2ZGQ3YTMyMmM5ZGRhODFkIHB5M2sKKzU3MjIzIDJmNDY3OTMwMTEzMmU4NWU0OGI2ZWU1ZDg1NzI5NGQ0OGZmZTdkZTQgcHkzaworNTcyMjQgNWFiYTk2NDY0Yjg3OTdlYTEyMDNlZjU4ODdhZTVjMDQzZjM1NzgzZCBweTNrCis1NzIyNSA1YzA4NDcyY2ZjMzQ1YzhmNmI1MGY4M2QyMmEyODlmMGM2OTJmMjU0IGFsZXgtcHkzaworNTcyMjYgOTU0MmUyZTZlZjAyYjJmOGE3YzczY2Y3ZDc4NTcxYzRiM2ZhMGQ0NCBhbGV4LXB5M2sKKzU3MjI3IDQzYjM1NGE4Zjc3M2NmNTI3YjI0NzJjNDEzOTQ3ZTk3ZTlhNDhmYmQgbGVnYWN5LXRydW5rCis1NzIyOCBkMGYzZDI5YjcwOGQzMDhiYTBlNjQzMmFjMGU2MGFiZTgzYjM4NGYxIGFsZXgtcHkzaworNTcyMjkgZGRmZjUyMWFjN2YxYTkxMTYwNTU4M2I1NzY2YzBmNzQ3YjgyYWRlMiBsZWdhY3ktdHJ1bmsKKzU3MjMwIDhkN2ZhOGE1YTdlMzhmZTViNjJjMjBjZDUzN2U1Zjk5MTAzMGQ2ODMgbGVnYWN5LXRydW5rCis1NzIzMiAyYjRmZWUxZDQ4NjFhYzNjYjgxZjhmMzA3ODgxNGZhZGQ2NGI4OTdkIGFsZXgtcHkzaworNTcyMzcgNDQ3NGZmMTBiYjBhMjJiOTVhYmVlYzhlZDU0Y2JlZWY0ZTUwZDQ4YiBweTNrCis1NzI0NCBhYjdhNmU3NGJiZjIzODE0Njk5ZWNmNDMzNDhjZDRhMDM2YTU3ODk2IHJlbGVhc2UyNS1tYWludAorNTcyNDUgNGYxMTI1NTk1OGJlOWYyNDc2OWM1ZDY1YjM4MWIzYmNiYTI3NjJlMSBhbGV4LXB5M2sKKzU3MjUxIGMwNDBkYmI2OWRmNzFjOTEwYjI3MTQyMzcyYTc2NDFiNTg2N2VhNTAgYWxleC1weTNrCis1NzI1MyBlZTllYmJmNWYzZGM4YjAyZDI1YjliNDdmNDc0ZjA5ZTZkYjZiYzhiIGxlZ2FjeS10cnVuaworNTcyNTQgNjJlZWU3OWRlOTIzYWM3ZDRjMTE2ZTRlOWMzNTM3NmMwZjFlNjEzZCBsZWdhY3ktdHJ1bmsKKzU3MjU1IDFlZmU5YjEwYzRhNmYzMmFiYTZjNTRlZGNlNjA4YzJiOTY2ZGQ1NTggbGVnYWN5LXRydW5rCis1NzI1NiBmYWNkZDc0YTBiZGQxYjc0ZDMzMjBjODIyMGZiOTVlZjY4YTdjMjQxIGxlZ2FjeS10cnVuaworNTcyNTggNWJmNjhmYzczOTIzYTk2OTg3YjcyMGZiNDI1MWQ1MDNmNDZlZTcxOCBweTNrCis1NzI1OSBmMzE4MWU5ZmRlNGQ3YTBlNWI0NjYzZTMzMmI1ODNlNWVlNTBkMzkxIGxlZ2FjeS10cnVuaworNTcyNjAgZGU2ZjMwYzYyNzMwNTQzNzA3MmQyYTkyNWRlNGRhZmMwM2I2OTY0MSBhbGV4LXB5M2sKKzU3MjYxIGQ5ZTM3ZDI2Zjc4ZTk1OTIzNWM4M2UyNjg4YmVmMTdlM2FjM2ExMzMgYWxleC1weTNrCis1NzI2MiA2ZDI1MjgzOGQyMzA2Mzk3ZDFiMDdhZGMwZTg5MTIzNTVhNjBjM2E5IGFsZXgtcHkzaworNTcyNjMgYjkzNzkyY2VkOWU4MGYxNjZiYWQxZDhlZjAyYjY3ZTAyZDI0YWRjZSBhbGV4LXB5M2sKKzU3MjY0IGFlY2ZmOWUwZWVhZTRkOWY4NDcwMzY3MTU5Zjk1YWMwYWI0YjIyNDMgYWxleC1weTNrCis1NzI2NSA2MDU0ZDdkMjM0OWYwNDYyNDZhMWY1NDE0MTM5NGZlMjE0ZTZjMTk5IGFsZXgtcHkzaworNTcyNjYgMjA4MTExNjEyNWNlYTlmNTY4MmRjMGZlYzRiNmY1NTVmMjJiOWE3ZiBweTNrCis1NzI2OSBlNzY5NmZjZTMzNzYxMGJhM2RlMWE5NDlhM2ZjMzI3ZTI2NGU2ZTA5IHB5M2sKKzU3MjczIGEwM2YzNzhjM2JmN2JmMmM4MWNlNWQ2YTg5MzBhNTU2ZTQxOGI3NDcgYWxleC1weTNrCis1NzI3NSBjOTQ3YTA0NzY4ZTQ1YTIzMTFkYzBkYWExZDI2MTQ2NTI1ZWM5ZDZhIHB5M2sKKzU3Mjc2IGUzMWIzODdlNmQ3NzVjMTA1YWIwZGRlOTAxYjNjOWU0ODY4NGU2MTAgcHkzaworNTcyNzcgMDA4MWRiYWNiN2FhNjEyMmNjM2UzNTY4ZGU2MGRiYjFiNmQ1MzNmNiBweTNrCis1NzI3OCBkODAwYTljZGFiNzY0NjQxMzg4MGQ2MjZmMWQ0ZjQzMDk3MGJjMDVlIHB5M2sKKzU3Mjc5IDNiNGUzOWU4MzE5MzIxMmMzZTU2NjNhMTdkMzkwODg2OWMxMGFjYzAgbGVnYWN5LXRydW5rCis1NzI4MCA4NGM1YzA1MjRkM2NlZjdkY2Q4MjYxZmI5Y2JkYWIzMjUzOGM0NGYyIGxlZ2FjeS10cnVuaworNTcyODEgMjY3M2NkZWQ4ODU1NDUxMGMwMGZiZDE1M2U5N2Q3Y2YyYjZhNGVkOCBweTNrCis1NzI4MiA3ODIzNzBjOTM1NzU4ZTY0MzM0YzRiM2UyMDllMWQwODA1MzRiNDExIHB5M2sKKzU3MjgzIDhiYWQ4NzIyZjBlNjQyOGQyYWI3YTA5Y2UxYzRhNzc5NjRjMTIxNTQgcHkzaworNTcyODQgMDkyZjAyY2YwMThmOWQ5Mzc5MDAzMDIyOGM0MjhlNmQyZGVjN2E4NCBsZWdhY3ktdHJ1bmsKKzU3Mjg1IDFiZjE3ODU1ZThlODVmMWYzNzYyZTFiMTI1YmFjNTU2ZmFkZjhjOGMgcHkzaworNTcyODYgOGI2NDAwZjk3MTZmZWUzZGJmOTRiODIyZWIwMTU2YzA0MGUxYTdlYSBsZWdhY3ktdHJ1bmsKKzU3Mjg3IDVhMjBlZTgwNTgxOTU4YjAxNWMyOTNmYzkzMTNkNzU3N2MzNjY5MDQgcHkzaworNTcyODkgMGIwNjA2OTY2MGMyMmJlYzJlN2Q3NDg1OTViODllNDk2MDdiM2UyNSBweTNrCis1NzI5MCA5ZTgxYjIyNjg5ZDJkMTdkYzNkMjE1YTQ4MTRiYjY4YzY3ZTI2ZGIwIHB5M2sKKzU3MjkyIDY4OGNkNDM5OGY0NDY4NTYwNmEzNDI2MjgyZmI4MWFiNGIzZmU2MTYgcHkzaworNTcyOTMgNTA5OGM2ODc5MDkxNmY0ZGMyN2NjYjIwOTYxMzI2NGRkYjhhNzFlYiBweTNrCis1NzI5NCA1ODkxNzUxNGU0MjNlY2YyMWYxYWQ2ZGI3YzYyMmM3YjM0MTYwZTc3IHB5M2sKKzU3Mjk2IGFhZDE3YjFhYjBjOTJkYjNiYTgxZmJlNzA0NWZkZWIzNTNiZmIxOGEgcHkzaworNTcyOTggMmVjMTZiNmI0ZDA0NDIzNmI1ODk4YTQ3ZjgzNzkwNDUwZGZhMmViMyBweTNrCis1NzI5OSBlNGFkZTE2YTY5NGZmNTQ2ZTBhNTNlYTU4ODcyZTZhYjNmNzRiZTFiIHB5M2sKKzU3MzAwIDI2YjI5ZjdiOGZmZDhlZjlmYWFjM2E4MDhmODUxM2ZiYjI3ZTcwYTkgcHkzaworNTczMDEgMTk5NTA0ZmI5MWM1ODBlNmM2YWZhZGYzZGRjMzlmZmY1ZGE0ZTZhYiBsZWdhY3ktdHJ1bmsKKzU3MzAyIDdmZTI4NDhmZDQxZDc0NmNiODk0ODRmMDBiMTZiOTY5ZDA3MWU5NjggcHkzaworNTczMDMgYWU4M2VmYjczNTA2ZDI1N2VjMzEzYWE3MDBmZTA0NDgzNTc1NDQ0MiBweTNrCis1NzMwNCBlYWUxMGQ5YzljNGVlZGI1MTk4MTIxODZiNzQzZGRiOWVmNTFmMmRkIHB5M2sKKzU3MzA1IDUwNmI5MTdkMjM2M2E4NzBmYzYwMTY1MWVjNzg5YTA5YzBiNTY4MTUgcHkzaworNTczMDggMzI4NDMwN2E3MzUxOWE5ZDViZjQ1NzIzYjIyODM1ZWQyZjc0NjJlOCBweTNrCis1NzMxMCBmMzQ3NmU5YmJlNmFiMzYxMDYwM2YzOTA5MDI2Mjg1NGRjNjQ4MGQwIHB5M2sKKzU3MzExIDdmNGQ5M2UwMjk1Y2FjNWI1ZmQwZWJjZTc5Y2IwNTU2ZjMyYjYzMzYgcmVsZWFzZTI1LW1haW50Cis1NzMxMiBmYTlhNDBlZjA3ODBkZDc3ZmNjYWM3ZDdiOGY4MThiNWY1ZGI5MjA0IHB5M2sKKzU3MzEzIDA2ZGU2MmYzM2MzNzdkNjMzYTFiZmM0MDZjYzgyNWRhYWRiYTUwNjUgcHkzaworNTczMTQgYTlhNGNmOTFjYjdlN2I1Y2ZlYWIxNWRhYmIzMGFmZWQzMTNlMmZlOSBweTNrCis1NzMxNSA4MGJjNjg4NTBhMDg2MGRiMWM3ZWZkYzE3YTExNWUwZGY2NzlkODM4IHB5M2sKKzU3MzIwIDI0ODBiODY0YmUwMzk3YTYwNWE5NjgxMjk1MjYzYTc0YzQ2YTMzMDQgbGVnYWN5LXRydW5rCis1NzMyMiBkZTFiYWNlODFlNmVkMmE0ZTUzYjg4YTNiNmNlODk2MThiZjQ4OTlkIGRlY2ltYWwtYnJhbmNoCis1NzMyNCA4ZTg3ZDlkNmU4MTI3NWMxMjRmNWE3YjE2MDhkMmI1MTJhZTBiODIxIGxlZ2FjeS10cnVuaworNTczMjUgN2E3NWNkMjhiMTI1ZDNiNmViOTkzYWM2MmYwOTY5MTg2ZjI4ODA0NiBweTNrCis1NzMyNiBiMzQ4NTUwYTJiZmM2ODhkNmFiZTdhNDdkMzZhMjA5YThlYzk2YWU4IGxlZ2FjeS10cnVuaworNTczMjcgYmNiZGM5NWRmYmE5YWE1NDNmMDQxM2VlMzk3MzVhOTZmNmIwYTI5NiByZWxlYXNlMjUtbWFpbnQKKzU3MzI4IDkwODczMzdmM2EzZjg5OTFkZmUxMmY3MTRkOGUzYWFiZmNlMDM3OGEgbGVnYWN5LXRydW5rCis1NzMyOSBhOTExY2Q5ZDE5ODkzYmU4ZjRkZjg5NDhkMzljYmMwN2RhNzBjOTM3IHB5M2sKKzU3MzMwIGRkZWZiZGJkYmNiNTFjZTBhYjE4N2E1MjU1ZjMzOTE0ZGNkY2UxNDggcmVsZWFzZTI1LW1haW50Cis1NzMzMSBhZGI4M2Y0YWM0Y2JlNWUyNWMwYTJhY2VmYWM1YzYyMWMxMmQ1NTdiIGxlZ2FjeS10cnVuaworNTczMzIgNzI5ZmU5OWI0MGE1NzJkZWM5ZWZhY2FmMTZjM2M0NWE2YTlmM2VmYyBkZWNpbWFsLWJyYW5jaAorNTczMzQgNGVkZmM1OWI3MmIyYjRmMWRjOWMzYzhlOGQwNGZjZTcyNGNmZDAwMyBkZWNpbWFsLWJyYW5jaAorNTczMzUgYWY4ZmM0NmQ0YjU2MTc4ZWZmMzYyMDMzMDA0NTQ2MjI2MWM3OGEyZSBkZWNpbWFsLWJyYW5jaAorNTczMzcgNzFjNjhkZTNiMWM1NzRkOGFhYWE2YzdiMDFjZjQ2MDU4NzdlNjgyMiBweTNrCis1NzMzOSBmNTNmMWExYWMwMTY0MGY4YjNjM2JiODA3YzFkN2UxZDZmMDQwY2JkIGRlY2ltYWwtYnJhbmNoCis1NzM0MSBhMmNjMDE4ZjM3MDBkZDQxOWZlM2FiNGY2M2M0N2MwOWViMDM4MzdhIHB5M2sKKzU3MzQzIDkwODBjYzc2ZGE5OGYwZTEwOGYxZWU5YWM4ZmY0ZTFhNDRmMTQ1NjMgbGVnYWN5LXRydW5rCis1NzM0NSBlMWNkZDZlZTkxMGU3ZGIyM2Y2YjdhMzhmODcwMTY5ZTZmNTM3YmMwIGxlZ2FjeS10cnVuaworNTczNDYgMDBmOGIyNDgyNzY0Y2Y2Y2ZjYjhlMjJjYjQyNzY3NzgxNWE4ZGJmZSBkZWNpbWFsLWJyYW5jaAorNTczNDcgMDMxOGFiY2ZhZjM2YTZmZDY4NGZiODEwYWYxNzYxNGVjZWJlNDBjYyBsZWdhY3ktdHJ1bmsKKzU3MzQ4IDk1MjA1NzljYzMwYmZkY2E5YTc3Mzk3ZWM4MzcyMWRlZTk2YTAxM2YgbGVnYWN5LXRydW5rCis1NzM0OSA4MTg4NmUwNWZkNDAxNmFiYzRlYmMwZWE4MWRhZTQyMDc1NzgzOTRlIGxlZ2FjeS10cnVuaworNTczNTAgYTE1NjU0MDQ1OTllNWVkODZmNjgwOWRlZTg4ZWMwNjY0YjcwOTQ2OSBkZWNpbWFsLWJyYW5jaAorNTczNTEgMjY1MDBiYTA5ZjcwYzYyMDU3ODRiYzhhMWMyMGM0MWMwZGJmYTRhYyBsZWdhY3ktdHJ1bmsKKzU3MzUyIGUyMDQyZWMzMzBhNDU1NTIyOWEwZjFhMjRlZWJjMjhlZjEyNWE5ZjIgbGVnYWN5LXRydW5rCis1NzM1MyA5YTM0N2JhMTdjYWIwZThmOGFkYjJlMDA5YTFkMmU4NThhNTFiZDNiIGxlZ2FjeS10cnVuaworNTczNTQgM2VkNzgxNGNjYTM2NmQwOWY3ZTFlNmI1NGVjNDZkY2I4MzFhZjA3NyBsZWdhY3ktdHJ1bmsKKzU3MzU1IDc3Y2YyODA4ZWVhNjM3NTExZTYxNmYwNTAyNmE5NTY4NTYwYjQxZWEgbGVnYWN5LXRydW5rCis1NzM1NiBjZTUyY2Q3MWE4ZDlhMjdjMTBjNWE5MDllMTMxZDg3NmJlMzBlNGEwIHB5M2sKKzU3MzU3IDIwNzNlYTMwMDVhNzg3OWViNTk3MDQ5ZDQ3ZTdkZGY2YmI2M2NlNTIgbGVnYWN5LXRydW5rCis1NzM1OCA3OTIzYmZmMTkyMTJiMDM5YzM1YTc4MTYzZWQxNTZiNDQ1ZjE3ZjhhIHB5M2sKKzU3MzU5IDA3N2ZlNzg2MGNjOWIxODY4NTVmNTQzZjFhMjZlNDQ1ZGQ3YTdjMzAgcHkzaworNTczNjEgMWM5OGI0NDVkODQ3MDk5YzI2NTJhNzU3ZDQzNTE0ZjcwZDgyNTFmMCBweTNrCis1NzM2MyA0MmIzOWNiNTM2ZDllNGI1OWY0OTU5ZjY5ZmVkMDI5ZWViODBkN2VmIHB5M2sKKzU3MzY0IDBiNjI1MzlhY2ZiOGRlZDY3MjUxYzc1NDhjNjZhYzhjNmRiMzRiYjggcHkzaworNTczNjUgZTc0NGEyMGVkOGE2YWRiZjA0NjMyYjdiMjYyY2FlNTA5ZTI2NTM1ZiBweTNrCis1NzM2NiBmOTRjNjhmY2Y3OWRjNTI2MmNlNWM0YTNhMDA4ZWU3NmU0MThkMmM2IHB5M2sKKzU3MzY3IDI3M2FjZTM1OWU1NWU2Y2JiNTY3MDhhNGJiMzZkODU0OTkyMDBjY2YgcHkzaworNTczNjggZTNlMDZiMzg5NDA2YTkwYTM0ZTU5ZDc0NzRmYTU2ZWExYmRkNjc3OSBweTNrCis1NzM2OSA1NjdjOTIzY2IxYzYxZDkyZTViNzQ4Yjk0Mjk4NTRjNzZiNTVhOTZhIHB5M2sKKzU3MzcyIDgzYzg0NDhjNmRlNDExNWFkOTIxZWQwZGM4MjhlNTU2MDM5ZWQ0YTcgcHkzaworNTczNzMgNjZmNzNjZTk3YjMyZDcxNGEwOTg5Nzk4OTliNmFkNmVjZTc2NmY2MSBweTNrCis1NzM3NCBiNjI2Yjg0YjUwNzA0NTEwMWUyYzIxYmYyMDBjZWNjMmFmNGRiZTliIHB5M2sKKzU3Mzc1IDE5ZGE0MWZjMTE3YTAzYWQ3ODY5ZWNlOTdiMWY3ZTM0ODJhMjMxMDMgcHkzaworNTczNzcgYjE5N2MxYzA0YmExNTg2OTIxMjQ0NTJkOWY4YjBlNmQxOGM0MDMyZCBweTNrCis1NzM3OCAwNWZlMDI3ZTJkODA5ODI4NGRkODk3OGIzMjlhOTk5NTExMzEzNzQwIGxlZ2FjeS10cnVuaworNTczNzkgMzE0MTUxNWY2YzQ1YTI4ZWNkMWM2MmU3YTc2YzM5NjE5YzE5NzY1ZSByZWxlYXNlMjUtbWFpbnQKKzU3MzgwIDJiOWIyMTQwMjY1MDQwZDAxYjY1NDQ1MTAxZTlkNDgxMTQwOWM5NjggcHkzaworNTczODEgZDNiYWFiMjA5NjI2NDllMmVmNDIzOWFkNDc3ZWJmNDk4OWJkMzMwZiByZWxlYXNlMjUtbWFpbnQKKzU3MzgyIDczMjMzMzE4NzZkZDQzOThkYzJlMWNkYTFjNTU1M2QwNWEzZjdkZmEgbGVnYWN5LXRydW5rCis1NzM4OSA4OTAxYTdjZTZjMDc0NWIyZWNjODI1M2FmNmM3Mjc1ZDFlOWVkZGQ1IGxlZ2FjeS10cnVuaworNTczOTAgM2ZiYTE0ZWM5YWFlYjQ4M2NhOWExMGI0ZGNiNTZhYWMyNDYyYmI4ZSByZWxlYXNlMjUtbWFpbnQKKzU3MzkxIDJjNDIyYTQ5NzJmMWM5NTYwNmRkZmU2ZmNlZjAwZDEzZmJjMzY4OGMgbGVnYWN5LXRydW5rCis1NzM5MiBkNzUxN2MzMDY3OTE0NWFhMGNjZjg2ZjE2ZTZkODEyZDA5YTc0NDNhIHB5M2sKKzU3MzkzIGMzYjUzZTA3NGVkMTFiM2I4YWRkMmU2ZGE4ZTdlYmZjMDFjM2I4MTUgcHkzaworNTczOTQgOTQyODYwZjhjZDk3ZTljNTgzYThlYjkxZmJhOGY0M2Q1MWU2YmJkMyByZWxlYXNlMjUtbWFpbnQKKzU3Mzk1IDU4ZjM1ZGYwZjZmNDg4NmQ0ODlhNzEwNGM4ODY3NGJmNTgxZTc3NTQgbGVnYWN5LXRydW5rCis1NzM5NiA0YjcwMzZkYzc2ZDU1OTIxOTc4ZDZkMDYyYzMxMWY3YmY4YjE3OTRiIHB5M2sKKzU3Mzk3IGUyNTc4ZjMwNDJiMmQ1Mjc1NjRjYjc1NWU4NWRjNmEzYzBkMjg2ZGMgbGVnYWN5LXRydW5rCis1NzM5OCA4YjFiMzI3MjU0YzBkMzUxOTlkZmQyMWIwYjM4ZmZiMTg3ZjkxYmU5IGxlZ2FjeS10cnVuaworNTczOTkgMjU2YTRkM2M1ODFmNzJkNjRlZDMzNGU0ZDRlMjNhMWViOTU2ZDQyMiBsZWdhY3ktdHJ1bmsKKzU3NDAwIGY3OThjMzY2MjcwYzBmYmNlMzZkMDNiMTQ4Yzc0ODMxYmIzMTgzZTkgbGVnYWN5LXRydW5rCis1NzQwMSA4YzU2OTU2OTcxYWRlM2VkNjU2ODk3MmU3YzEyODM3ODRmNzY2ODFjIGxlZ2FjeS10cnVuaworNTc0MDIgMzAyNWU2NzZlNjY5MTgzODEzOTNlMzU0ZTMxYTZhNjQwMzEzYmY0YiBsZWdhY3ktdHJ1bmsKKzU3NDAzIDA2NmQzOWZhZDQwOGUxZDFkNTc5ZTJiZjM4ZTUzNGEwODI0MjNjMGIgbGVnYWN5LXRydW5rCis1NzQwNCA0OGQ5MWYxNTU4YTAwOWQ5NWU1YTYzNmYzOWY2OTY1YzAxYTEwNTZjIGxlZ2FjeS10cnVuaworNTc0MDUgYzZkNjMyMWRjN2Y5NDJjMThmZjY0ODg2ZjExNDU0MzliZGE0NzFiNyBweTNrCis1NzQwNiA3MjFjM2VhMTNkODRhM2MwNTlhMTM5M2E5ZTJhM2E0NDQzMTEyZWVkIGxlZ2FjeS10cnVuaworNTc0MDcgNjEyNGIyZWY2NTEyMDE2MTllNDBkNjdhYjM5NTY1NTE0YzYwZjZjMCBweTNrCis1NzQwOCBhNmU1YjM4NjhmM2Q4MjQyNDIzMGM0YTcyY2EzZjVkZjA3ZjA3Y2FmIGxlZ2FjeS10cnVuaworNTc0MDkgZTQyZTdkMDMxNzNiMzE0M2I3NWU1ZDAzMzg3ZTI1NzA3YWI0MDhjZCBsZWdhY3ktdHJ1bmsKKzU3NDExIDYxZmI1OTc5MTdkMWNmOTc2YmVhYjAwZTA3YjllYWNlYTcyOTNjYTAgcHkzaworNTc0MTIgODQ2MThiMjA2NGMxNmFjMzYzZTU4OTI1YTQyYjdjMTAxMTNjODIwZCBweTNrCis1NzQxNCA2Y2Y2YjgzMWFiMzZjZTA2ZTBjNTRmZmIxOGIxNzM1YzJhZDM2Nzg5IGRlY2ltYWwtYnJhbmNoCis1NzQxNSBjZjJiMzdiOTBjNjZmNTQ5NDdjNmJmMTExNGJlN2QwMDk5ODIwMjAxIGxlZ2FjeS10cnVuaworNTc0MTYgZTFhMzY1NTlkOGI2ODk3OGFkNjZjMjgwM2I1NDZlYmQ5N2NjYzczMCBweTNrCis1NzQxNyA4ZTk3NzExZmFkYzE0NzAwNzIwNTQxNjBjM2MwYmI3OTlhYzU4MWFlIGRlY2ltYWwtYnJhbmNoCis1NzQxOSAzODM2MjBlNjJlZTY0YzRlNGEwN2NjMmJhNTIwMDc3OWJjMTdjNzgyIHB5M2sKKzU3NDIxIGIwYTcxYmZmYTBhMWY3MTM2ZjNlYzg3MGQwOTgzNjgxYmNmYTljNzYgcHkzaworNTc0MjIgZDAyNjEwYjBhOWYzYWNkYzVlNjI5NzIyNzg5NDhlOWQzODMzMmU2NSBweTNrCis1NzQyNCA4ZTYxNzI3ZGI1MjliNWIxNjhkNzNlYTExNjA4MTI0YTRiMzgwOWIwIHB5M2sKKzU3NDI1IDQxZGE0OWM5N2E1OWVjNmY4MjcxNjFkYTZmY2I3ZTU1ZWFmNTRjNmEgcHkzaworNTc0MjYgMDFlZTYzMTFiYTQ2OTRjMmM1N2NkMzhlZTEyYjhmNDM0NWFlMDc1NSBweTNrCis1NzQyNyAwOTk0OTU4ZmZkNGZkNGQ3MjhjMTFmNWZiNTJiZmJiYzlmOTkyY2QzIHB5M2sKKzU3NDI4IDY5YjhlMjk3NjU1NjVhNzQzMWRkYjliNzg2NWMyZTk0ZDhiZjJhZjkgcHkzaworNTc0MzIgM2NkNjBmNzQ0ZjhlOTNiNjAwZDQ3OTgzMzM4ZDAwNTU0MzYwNTQyOCBweTNrCis1NzQzMyAzY2I1ZGVmMTg2NWRhNjU4MGVlMmJiODc3N2NkMmE1ODhlMTYwMTQ0IHB5M2sKKzU3NDM0IDc4ZjdlZDdkODA2NDljMTE0YWUwNzYwN2IwNzlkMzRmZWM1YTBlZDMgcHkzaworNTc0MzUgNTk5NTE0Mjg5MjI2ZTFhNDk5MGFhOGM2ZTVlYWNiMGEwMmI2ZDM1ZCBweTNrCis1NzQzNiAwMGUxMjhiNTI3MmY1NWVhZjY3MjM4ZDI0YzA3OTg0NzcxNmE1MzY3IHB5M2sKKzU3NDM3IDc3NmI4YmQ2OGIzMDFhMDY2YjUwM2JmZTlkMjQ4NDA1NjMzMDgyNzUgcHkzaworNTc0MzggMmMyZTkwNTg5NGEzODBjNjU2ODg5YTY2MmQ1MjIxYTAyYzQ2YzNjMiBweTNrCis1NzQzOSBhOTllYzRiZWZkYThhZGZmNTI2ZWFjMDQwYzdkZDlmYmRlNmE2MjllIHB5M2sKKzU3NDQwIDc0Yjk5M2E4YWQ2ZmVmNzMxOTQzNjU5YTE5YzEwYjgxNTEwNDc5OTcgcHkzaworNTc0NDEgM2Q1ZDA5YjQ1MWI2NmEyZjg1ZTRjNzJkYzcxYTFmZGJiYWRmYjg2MCBweTNrCis1NzQ0MiBmODFkOTRjMDVhMGVjZGE0MWRlMGQ5OGFjNGU3OWEyNmI5Zjk4MzdjIHB5M2sKKzU3NDQzIDg3MmM3YzNmMGFmMzU0MDBlZmM1MDZmYjQyZjAyY2EwM2FhZDA4MGYgcHkzaworNTc0NDQgNTM1NTMzNzcwOWUxMDk1MGJjNmUyNTZmODVjNDNjODgyMTRhYjg3ZSBweTNrCis1NzQ0NiBmYjU4ZmIzYmRkYzE5YjlkZDY5MjcxZTg1OTczNjU1ODBkYjNiYmJiIHB5M2sKKzU3NDU1IDFiNDIwZTZlMDBlYjE2NGE1ZmQwMDQ3YWQzMDMyMDk1MGUzMjMyZmUgbGVnYWN5LXRydW5rCis1NzQ1NiAyMmJiYWZhNjkzM2JkOWZjZDAwMjc5ZTc4NTBmMzExNjRmYzlhNmNkIGxlZ2FjeS10cnVuaworNTc0NTcgYmIyODhlMDRiOGU1ODg0NmM5YzNiMTNhZjc4YzU2OTljNzQ2OWI1MyBweTNrCis1NzQ1OCAzMDJhZWVlMzJkYTgzYTQ5ZmM3NDhlZDEyMDZhNjdkNzI0NTIxNWJlIHB5M2sKKzU3NDU5IGJkOTNhYzMwYzc3OTUyYmY5ZDIzNzY3MTYwOGViOGNhNzhjZjdhODEgcHkzaworNTc0NjAgMTg0ZjgwMGZkYmY2Nzg1ZmNkZDQ2NWZkN2ZmNWEwZjJhZDc4NTBjMyBweTNrCis1NzQ2MSA1NDNmMmJhOTdmYWI5ZDdkMWU2NGZlMTYzZTY2MDJiMjVlZjkwOTVhIGxlZ2FjeS10cnVuaworNTc0NjIgNzgzNDBjY2VhMTRiZTQyZTcwZjM3MzIwYTEyZmMwN2Y5OWI1NmM1ZiBweTNrCis1NzQ2MyA2ZDEzZTE4ZjcwNmFlMzk2OWRmZTk2OTVjMGEwOTg1YzYxYmE1Y2JlIHB5M2sKKzU3NDY0IDA4YjYyNzhhYTFmNDA5ZmNhYjBjYmNjY2RmM2YxODM5NTkxMjdmYWMgbGVnYWN5LXRydW5rCis1NzQ2NSAyNDEwNTM3Mzk3MzMzMjQ2M2FkMTM0ZGFlZmJkZTNjNGI4NDYyMTcxIGxlZ2FjeS10cnVuaworNTc0NjYgYmIzMzZhNjhhNDdmMjUzNDQ2YmQ3Mzc4OWI2ZDBkMTI4YjI4MTk2NSBsZWdhY3ktdHJ1bmsKKzU3NDY3IDRjZDExZTgyNTY0NDgwOWUxYjY2MThmZWUwYjU3NGEzMDk0ZTMzNTYgbGVnYWN5LXRydW5rCis1NzQ2OCBjYWZlMWY2NTNkYjM2YjYzMWQ0NjY3M2YzMjc3M2Y2MDAwZTg0Yjk3IHB5M2sKKzU3NDY5IDZhMTgxYWJmYzhhNDA3MGNmM2YzMTQwOTk1MjU2ZjAyZDNlYjRhZDggcHkzaworNTc0NzAgMjBlMWNjNzRlOGNhNTFmMjU4ODZjOWY0NjUzZTY5OTJmZjVlYTA0NCBweTNrCis1NzQ3MSA1YTliN2MyZjM1ODlkOTUxMDUzODc2NWYwNWY5MDE3NTczMDcwM2NmIHB5M2sKKzU3NDcyIDc4Y2YyYmRhODg1NzE4ODJmYzVlYzBhNWMxYjg3NjEyZjJlMGUxNmMgcHkzaworNTc0NzMgZWZmZWVhN2NmODk4NDg1MWI1MjgyNTg4NDYyYjRiNmQ1ZDJiYzdhNiBsZWdhY3ktdHJ1bmsKKzU3NDc0IGQ4YTYzYjYzMjc0MTJmOGRjZmY0MDlhYmFmZjFmYmEyZjkzNTRiMGQgcHkzaworNTc0NzUgYzMxYzIwN2I4Yzg2ZDU1NzdjNjc5MDM1ZDc2MTcwYTlkYWExNzVlYiBweTNrCis1NzQ3NyAwNTQ4ZGY3ODEwYTBjYjgzM2MxMmFlNWU4NDI4NDZiNjI3ZmU1NzA3IHB5M2sKKzU3NDgwIDNhNjg5Zjg4YzgzODVlMTFkMzBlODk0YTFhYWQ4NTU1Y2Q4MDI3MWIgY3B5X21lcmdlCis1NzQ4MSBhOWIzY2UwNjY1YzNhMzVkMzJmOTFjNTMwMjM4YmRiOGM0ZjgwZGNjIGNweV9tZXJnZQorNTc0ODIgNjczY2JjODVkOGM0MGJjMjBmZTAxNDdiMTkxZTgwMDllYjRiMjAyYSBsZWdhY3ktdHJ1bmsKKzU3NDgzIGViMTlmMmZhZWVhMTJiMjJkNzUzNDYzYzllYmVkYzNiNjVjODMzYzAgbGVnYWN5LXRydW5rCis1NzQ4NCAzNGU2ZmE3OGI2NDMyODg1MmExOTI5NWEzYzA1NThiYjQzNGJlMmQxIGxlZ2FjeS10cnVuaworNTc0ODUgNmU3MzU5MTA2NzE4MWEzMzI1MzkxNjM3MjgyOWZjMGFkOTExZmI3YSBweTNrCis1NzQ4NiAzMTUyZGY3MDUxN2E2ZjEyMTQ3YTYxYzQ3OTdjZWRjY2ViZjhmMWFiIHB5M2sKKzU3NDg3IGI1NWU3YzUzMjUzYzBkMTE0OTNjOTFlNjk1N2EyZDZiMDdkN2U5ODIgcHkzaworNTc0ODggN2ZmYWRkZDFkZTMwNTBjNGRmYzU0NzQzNGVlNDMzZGU5ZWE0NzJlNyBweTNrCis1NzQ4OSBlZDFkMzUxMThlZDhmMGY0MThlNjQxODNjYjY5YjA5NTZmYzYzZGQzIHB5M2sKKzU3NDkwIGJiYzQ0MzI2YjUzZDY5OWUwY2M4YjQ3OGNjMmI3YWVjMWJjNzdjMzIgcHkzaworNTc0OTIgMDI3YzdkMDQ0Y2ZkN2NkOGQ0MzQ2N2YyODgyNDg3YmQxMmU0MjQwOCBweTNrCis1NzQ5MyA2MzgwZjg4ZTNkZWVkYjMyZDNhY2E5Njc0NWQ1ZjdiYjMxZjMxYmI2IHB5M2sKKzU3NDk0IGZlZDRmNzJiMDRjYjlkOTgyNjk3ODUxMzJhZmQ1NjMwZjNhNzE5NGIgcHkzaworNTc0OTUgMTM5MGMxMWU2NDBiMWE2Y2NkZDQ4NmU3NzBjMGM4OGJjYTM3OTNmOSBweTNrCis1NzQ5NiA4MjRiOWQ1MmUwMDZiY2FjOWJlNWVhZDI3MmMwYzdkOWM4M2M0N2RmIHB5M2sKKzU3NDk3IGQ1YjUyZDU2YmViYWZiZGVkNDZmNmZkMDYzZTcxOWZiZDFiMWMzNzMgcHkzaworNTc0OTggZjNiM2ZmZDEzOTU0OWVhYTE5MzZjYTViZjk5NDljZjA5Zjk4NWQyMiBweTNrCis1NzQ5OSBlZjU2MjgxZjAzYjQ1ZDQ1OGIxZWZmZDE5NTkzMGQ3ZTVkZmQyNmQ1IHB5M2sKKzU3NTAwIDE1NDdkZTE2ZmVjOTUxYTZiYzIzY2Y5Y2ZmM2VkOGU0NDQ5MjczODIgcHkzaworNTc1MDEgMDM2NTk4ZGU0NjYwZDYyNGY5ZGM5ODc1OWNjYjljNDQ5NjgwNDQzMyBweTNrCis1NzUwMiBiZjFhNTNjYzZlNjUxZjdkNTBlNjNhYTFiN2JhOWZkYTRkNDQ1MmNkIHB5M2sKKzU3NTAzIDc4ZTAwYTBmNjAxNWU1YTFiMDc0MzE4NmE2MzRlZWYyMGZlMGUxMTQgbGVnYWN5LXRydW5rCis1NzUwNCBlZDE1OTRhMTZiZGI3Y2MzMDc4ODQ0YTIzYTk0N2Y4ZTkwYTJmZWI5IHB5M2sKKzU3NTA1IDg0ZmE5NDdmZjY5NjYwMmFkOTg5MWZjOTg5MGRiZjFmZDJhNzVhNDUgcHkzaworNTc1MDYgMWIxZjdjYTNmZDQ5MzA1ZGUyOTUyZDdhZGYyYTcwZjQ3OGZiN2RmMyBweTNrCis1NzUwOCBhMDk3MjhiODk1MzAyMzJkMDI4NzAyOTlhMzViNjA5MWFhYTg1MTAyIGFsZXgtcHkzaworNTc1MDkgM2ViNWRkYWRmYmY3OGJlYjkxMDczMTc1ZDk4MDk4NmNhNDgzYWNjMyBweTNrCis1NzUxMCBkNmQ0OTNiNjE3ZTNlNTFiY2FhNzNiZGQwZTMzNWZiM2QzNTEwNDQxIGxlZ2FjeS10cnVuaworNTc1MTEgNDAzZWJkMTQ1OGFmZmI1ZGZhZmM4ZTY3MTRlZjdkZmZlZTE0N2UwNCBhbGV4LXB5M2sKKzU3NTEyIDZkZWRiMzNkMmRhMzg0OWJhYWY5ZDA5OGU5OWY4OWY5ZTUzMDFkZWQgcHkzaworNTc1MTMgYmFiNzVlNGM2NDdmNmY0MWZkODRlZTY5N2ZjYjBmZWZlNTM4M2JkMiBsZWdhY3ktdHJ1bmsKKzU3NTE1IDM4OTVjMTI5ZTQ4NjIyMzcxMTRkYTgxMDY2ODI4MTFmMTRlMDJkODAgcHkzaworNTc1MTggYzJjNzZhMDQ0NmZhYjI2ODUzNmJhZjUxYzEzNTcyODkzZDU1ZWJlNCBsZWdhY3ktdHJ1bmsKKzU3NTE5IGExMzQ4NWEzYjQwNzgzZjRjODZiM2Q4ODI0ODJiMTcyNzJlMTYxMzQgcHkzaworNTc1MjIgZmYzYzBiZTcxZGMyYjM3YzE0MjE5N2EyMDZlNDY1NWQxNWY4NDcxMyBsZWdhY3ktdHJ1bmsKKzU3NTIzIGQ4YWQyOWM2ODc2M2VhYjQyYTM2NDI2NzU0MTljNWExMWFmZWM4MTkgcHkzaworNTc1MjQgODVlYWVjZjlkNjc4MzQxYzYzY2MyZjRjZTU0MmE4MDM4MWJjMjgyYyBsZWdhY3ktdHJ1bmsKKzU3NTI2IDVmZDY1ZTI1MDg0MzU1ZWI1Y2EzZTJjMzYwM2Y0YzhhMGQzYmYwZDYgcHkzaworNTc1MjcgNTZiYmQxNzY3MDU3NWYzMGEzMzJhYTU1Mzg2NDdiN2M3NGZkZmExMyBweTNrCis1NzUyOCBhNDBkZmI1MWRmOTE1NGIwOTg3NDQwNWMyY2Y1ZGMwZjJjMzY0ZjRhIHB5M2sKKzU3NTI5IDQyNmFkYmZmNDkxZGQ1NmIyODFlOWY0MzU4MzZhYWUxNzRhYmFmNzEgcHkzaworNTc1MzAgZDkxMTVhNDUwZjFjNjljNWI1NGFiODIyMzQwMWI5YzA0MWVjODVkOSBweTNrCis1NzUzMSA4MDM2NWRkNDU1ZmE2ODg5OTRmZGRiOTgwZTFlOWVlMTE1YzZkMmU1IHB5M2sKKzU3NTMyIDRjNzhjMDQ4YzNiYTA0ZGJhNDVkMDc0M2M3NGRlZTM5ODg0YjAzMTEgcHkzaworNTc1MzQgMjUxOTc1MTUzMmFmNzZiNjdhNDAzNmZjNDM1N2RhZTJjYTU0Y2FlMyBweTNrCis1NzUzNiAxOWRjMmVlYWNiYzExYTM3ZTY5ZDYzNzA1ZWRhNGMwMWJiYTFmNGIzIGxlZ2FjeS10cnVuaworNTc1MzcgOGUxMmQ1NmRkNjAzZWFjYWZkNDNiOTg5NDQwN2E0MDdmZmFlY2RjMiBsZWdhY3ktdHJ1bmsKKzU3NTM4IGJiNjI0OTJiNTg0ZWI2ZjU1NmYyYTNlMjk3OGMwYWI0ZmIzZThjNGUgbGVnYWN5LXRydW5rCis1NzUzOSBlNjQ4NDg1Y2YzYWZlMjY3NTczMjZlMzk3NDA1Y2YwNmFkOThlMDI0IGxlZ2FjeS10cnVuaworNTc1NDAgZDVmYmI4NDNiMGE5ZGQwMjlhNmQ5NzRlYmI4OGY2ZmFjY2Q2NmU1MiBweTNrCis1NzU0MSBlOTQ2MTAwYmI5ZmQ5Y2YzYjNlYmI2NDMwZWZkZThiNWQyN2YyYjUzIHB5M2sKKzU3NTQ2IGRkMDY3MGM2MDFkOWFiYWI0NjViNWEzZGFmMDllOTliZThiMWI3NmEgcHkzaworNTc1NDcgOTA0Njk3YmU2OGNjYjU4NTczNzBjMTM3NWFjNTk0NzhlNTVlNWZiNiByZWxlYXNlMjUtbWFpbnQKKzU3NTQ4IDI1MmE4NDI4MGI3MzJhZWE4ZWY0OGExODBhY2QxZjc2OTViNTdhNjcgcHkzaworNTc1NDkgOWIyOTQ4NDZkMjBkMGJhZjk3YWNmMDFlYjVjZWM3YTM4NTA0NGViZCBweTNrCis1NzU1MiAyYzAyYmE3MjcxNGI5NDRlNmRlMDU0MzY2ZDNjYTNiZjM3NDQxNjBjIHB5M2sKKzU3NTU0IDZiNDc4MWRjODFmZmZjY2NjOWE0Mjc1M2RlZGEzZTRiNWZhYmNmOTAgcHkzaworNTc1NTUgNTk0Zjg5ZWMwNjA3NzllMjc5MDEyNmVlNDllN2VkYzUwZWM4YzQ5ZiBweTNrCis1NzU1NiA3YmY4ZjIzMzllYzY5YmZjMmRmNjg5NjFiNzkxYzc5Mzc1OTRmODk5IHB5M2sKKzU3NTU3IGUyZmZhMGNkOTdiOTdiZmM3NTVjYWUyYjU0NWU4MmJiNmY5ODhkNTcgcHkzaworNTc1NTggMDAyMGJjNzg0Yzc2OWY4YjBlYmRhMDMzYjQ2NzQ1NTM1YjU2MGI3YiBweTNrCis1NzU1OSBhNDk2NjVmOGQyZjRkMDcyMzJjYzU5Y2FhMjY2N2UyMjFhNWNhMGMxIHB5M2sKKzU3NTYwIDE5MTk2Y2NlMTQzMTMwYjIxM2ZlODkwYmEzMWYwODQxOWM3ZjljZmMgcHkzaworNTc1NjEgYzA5YzMyNjRhOTAwOTUwYzdlY2Y1OGJhZDQxMTZkOWI3ZWEyMmUxYyBsZWdhY3ktdHJ1bmsKKzU3NTYyIDYyODc0YjM0ZDk1ZDk5YzcyZDNiYTE0ODRmMDI3MDlkYTQ1OWIzNTcgcHkzaworNTc1NjMgZmIzMjZmZDlkMTg0MmQzY2Q4NzFhZmU4MTYwOWM1ZDAxZTI5Y2E2NiBweTNrCis1NzU2NCBjZDIzNTAyN2U2NGMzN2JmMmU0ZTYwZmYwMTVjNGY2NTc3ZGMzYjM5IHB5M2sKKzU3NTY1IDdlYThhNmNjZGM0MmRkMTRlNjFlNDRiMDc2ZmFlZTQyMWYzNzI0NTggcHkzaworNTc1NjYgYjk3ZmE0MDU1MzQzOGRkNjQzNDdkYWEyNDBjZjIwMmJiZDg5MTNiYiBweTNrCis1NzU2NyAwMTcwNDE4ZGFkZWFiYjNlZWM3ZmUyNDE4NTAzM2E4NTRhOTg3MGVkIHB5M2sKKzU3NTY4IDU4MDVmZTE3Y2IyZGM2MDQxZWRhYmQzM2ZmZDRhY2M3ZGQ3YThhMzkgbGVnYWN5LXRydW5rCis1NzU2OSA3YTYyYzI0NjlkZWEyZTRlOWMzZjY5NDY1ZjM5MmZlNjY3ZWUwMmNjIHB5M2sKKzU3NTcwIDI0YTA1MzI1Njc4YjEzYWUzZDFhYzFmNWI0YjlkMDg2ODE5YzNkMGIgbGVnYWN5LXRydW5rCis1NzU3MiBjYjI4ZTE0ZWU4MDgwZDUyOGUwMWE5NDNhNjJiMTljZDM0NzlkYzlkIHB5M2sKKzU3NTczIDA0NGI2Mjg1ODE1ZjE4YjIzMWQxMzUzYTc5OGU2Y2I4YThiMTU2OGIgcHkzaworNTc1NzQgNzk3MzEwNDAyMTdiNWY2NWVmNWJlNDU0M2FlMTUwMjVmOWMxMjgzNiBsZWdhY3ktdHJ1bmsKKzU3NTc1IGUyMGQ1YjY0MTg5Yzk0M2ZmMGQxOTQxZGEzOTYwOTc4ZDlkNzQ3NmMgbGVnYWN5LXRydW5rCis1NzU3NiAzZjBmMWM3NzVkOWQ0MmZhMTgwYzNkNWJhMWQyOTI5MTdlMDBlMmVlIHB5M2sKKzU3NTc3IDlmYjgzMzFjZWMyY2ZlNzNkZTc1MzRmNTdkNzVmOTY5MGE2OTExY2QgcHkzaworNTc1NzggOGUwMWYyNjI2MmNmOWU0ZDAwYThiYjdkNDMxZWRjNjczYzc5MWMwYiBweTNrCis1NzU4MCA5MjIwOTMxZTQ3NDFiZjA0Zjk2NzVhYWY0OGJlMGI0MjIzNjM3MTJkIHB5M2sKKzU3NTgxIGM3MmEzY2MyMWVmNzNlMTMyMzUyYzI5ZjMyM2M5ZTIxYTQyYjU3MDQgcHkzaworNTc1ODIgYWVjYmY1Njc4NzA0NWMwOTY4MzE4MWQ0ODU5NTM0NzJmYTQwNjJmNyBweTNrCis1NzU4MyA4NzE3YjRmOGUxZTVlZDgzMzA0NDFiYmRiMjU1OWMwMTdiZTZiMDFlIHB5M2sKKzU3NTg0IGIxMTBiYWM5ZGY0MDkwMjNiNzRiMjBiNmY2NGM1YmI4YjJjNTMzNWIgcHkzaworNTc1ODUgMzg0ZjlkOWM3NWEwMmZmZTg2N2EwMTQyYjEyNDI2YTZiY2JlOTE5ZiBweTNrCis1NzU4NiBiNGIxNGM0YmViODJjYWI4N2UzYTM2NWI1M2FjOWQwYmMzOTdlNTMxIHB5M2sKKzU3NTg3IDAwY2JiMzNjYjg2NDBmOGZkZDc5NjgzM2ZlY2UwY2Q4MzcwZGJkY2EgcHkzaworNTc1ODggZmQxZmNiYTVlMTZiMDU2MzJlMDA1MmM2MmMxYzY1MGJlYzBhNmE3NSBweTNrCis1NzU4OSBmM2IwYWM0ZTY4NGY5ZGRjYTk0NThkZjBiNWIzNGI3NGYzMDZjM2M0IHB5M2sKKzU3NTkwIDdiZTBlMDBiMDM2NmQ5ZGRjYWM3ZWQ4MzhmYTU5NzYwYjQ1NWZkM2IgcHkzaworNTc1OTIgMTFlYzQwOTdmYWZlNzE1NGExZDNiYmYyNDJiYjQ1YWY1YWZhMmNkMiBweTNrCis1NzU5MyBjYmQ1MGVjZTNiNjEyYzA4YTY2OWQyMGNmZTNkODM1YTI1NWIzOTczIHB5M2sKKzU3NTk0IGFlZTIxZTBjOWE3MGYzOTA2MDNkZGVjYjVmY2YxZmZlYTg3YTY3NGIgcHkzaworNTc1OTUgYWEzOTUwZjExMWQ5ZjEyYTRhZDBjMGIzNzRjMTU0ZWI5NjkzNWVlOSBweTNrCis1NzU5NiBiODQ2NWYwMmZjYjFlZTZmYzI0NjU1MmVkMDAyMDU1NDkxZmM3ZTZkIHB5M2sKKzU3NjAxIGZkZWYzMmJiYmNiODQwNzlhZmM5M2JmNzZlMzAzODUwNjI3OTllOGMgcHkzaworNTc2MDIgNDlkY2UzZGEwZTgwM2NmM2EyZWMzOTY2YmI4ZjJjOTU5ZTI3NWU5MSBweTNrCis1NzYwMyBlMGI2YjYyODdjNmIyM2Y3YjM5NjRmMTQ4NjJhNTE1OGM5ZjVjNDNlIHB5M2sKKzU3NjA0IGJjOThhZjk3MjY3OGQ4OGViNzM4YmIzZGFmOWM0NWM2NzdjNDNhOTUgcHkzaworNTc2MDUgZTgzNmMxMmM1NGMyZjQ0NjBmOTNmMmI5MjU3YWU4MWI1MmZhOTdjMiBweTNrCis1NzYwNiA4M2MxMzFkZmRkODRjMTg4OTRjY2M4MzFkZGIyNjhhYzhmODg1MTQwIHB5M2sKKzU3NjA3IDFkZmU2ODViODU3NmJmZWExODRhNWRlNWViZjU4NDcyYjRlMWUxNjUgcHkzaworNTc2MDggMTcxYjlmMTVjMjIzYTRiZDllODhlZDFhMTdiMDk1ZDVhZWRjODQyOCBweTNrCis1NzYwOSAzMjQzMjBkOTQ2MTAyZjEwYjliMWY5Y2FjNzk0NTU3YTNiNzA4NGNhIHB5M2sKKzU3NjEwIDcyYWZhZjlhYjMwYmE3OWJlNTQxNzI1YTgwMDllYjdjZWViMTg5N2UgcHkzaworNTc2MTEgOGIwNmY1MTQ3NDQ1ODYxOWYzYWFiZDQzYTExZTg0MWI0Y2M2MjBkZCBsZWdhY3ktdHJ1bmsKKzU3NjEyIDY4ZmUzNTA5MDc1OTI4MTg4MTI0ZjY0Nzg3MWFmNGJhMjBkYTEyZTIgbGVnYWN5LXRydW5rCis1NzYxMyA5YTEzZThmYjFhM2I2Y2M5Yzc4ZDY0OTZkYjhmY2UxMDA0ZTJmODdlIHB5M2sKKzU3NjE0IDk2ZGExYjlkZWU4ZGIyYzE5NjY5NzM5Y2IyZDBjNzA0MmVmMTNjZGUgbGVnYWN5LXRydW5rCis1NzYxNSA0ZWNiYWUwNzQ4MWYyMTRhMTFkZDUzOTk0NzEyMDg3ZWRmNDNiYmQyIHB5M2sKKzU3NjE2IDNiZjJjYWQ4ZjIyYTljZTEwMTc3MmVkYTdmNTllMGIwMjFhMTkyMmQgbGVnYWN5LXRydW5rCis1NzYxNyA2NmUzNmNlNWE1NmM2ZjI2MmFhMjEwZDEwNGUzMTBmMmQ0MzJkMWE0IHJlbGVhc2UyNS1tYWludAorNTc2MTkgOTYyMDEzNDAxMGE1YWQyZTU3ZjlhZTFiZDc2ZmMzY2UyYjdhMmY0NyBsZWdhY3ktdHJ1bmsKKzU3NjIwIGQxNzg5ZDRmZjAwYzZlYzY2ZTBjZjM5ZWYzYTRmYmU3OGJkNWU3YWMgbGVnYWN5LXRydW5rCis1NzYyMSBjYWFkMzVlODIxM2I4YTdlZmQ3NGYxOWI1NWI2MjUxMTMxY2M1M2Q1IGFsZXgtcHkzaworNTc2MjIgMWVkYzZlMTdhZTE4NWQ0MjBkNzJjNjcyZDE4MWE1NzFmODM2YzRjOSBsZWdhY3ktdHJ1bmsKKzU3NjIzIDI1YTg5M2Q2N2M2NDE4NDMwNTk2OWNkMTYwN2M1ZmVjNTU5YWFkZDYgZGVjaW1hbC1icmFuY2gKKzU3NjI0IDI3ZjAyODliNjgzNTFjZThjNDJmYmIyMTcwZTFhYTFiMDc4YzI0NmIgcHkzaworNTc2MjUgMzA1MTEwNjhkM2Q0ODJlOTE0ZTZkNjU1NDM5MjZiNzI4MzRhOGI1ZSBweTNrCis1NzYyNiBlNmE5ZmNkMWI0NGU4MTU0ZmIyNWFkOWVhN2E4NDA5NmI4ZmRkOTljIGxlZ2FjeS10cnVuaworNTc2MjcgNTMzZmI1MzIxZDZiYzFkNGMwOGVjMGMwYzM2MzYxNDc2N2YyMWY2MSByZWxlYXNlMjUtbWFpbnQKKzU3NjI4IDhiYjFmZTFhNzJhNGEzMmI1ZTgwYmZlNGU0YTY3NGNhYzFiNjc5MjAgbGVnYWN5LXRydW5rCis1NzYyOSA4OWM0ZmY5N2ZkODkzZWNhMDc1YWNhY2ExMjQ1NTlmMTExZTY4N2ViIGFsZXgtcHkzaworNTc2MzAgZDY5ZDgwNjAwY2YxNzIxNzY2NWRkNDI0MzA0NjBjNmFhNDk4MmNmMyBhbGV4LXB5M2sKKzU3NjMxIGZiMmNmNmU4Y2Q4NjExNTM5NzM5Yzg2NzkyMzUxNmZkY2FiOTRmYWMgbGVnYWN5LXRydW5rCis1NzYzMiBkZWMyZWM4MjY4NzQxMTdhYjA5MzQxOTlmNjRhYzhiMDk3ZDBjZTQ4IHB5M2sKKzU3NjMzIDFhMjMwY2I3N2YwNWNiZWM2ZDU1MGRhNzY3ZmZlODAzMGQyYWZiNzkgbGVnYWN5LXRydW5rCis1NzYzNCBiOTJmYjI0YzVkNGI1MDYxYjYyOWQ4YzE1ZDAzZTliNTgwMDliZmRhIHJlbGVhc2UyNS1tYWludAorNTc2MzUgYjJkZjQ0YjljMjUxMzQ4ZDdmMThlODRhOGJmZDVlYWIzZThhMTI3YSBweTNrCis1NzYzNiBhNzk1MWFiYjg1MzRiMzEwMmI5NjA1N2I4YWFjNjM2ZmYxMGEwYjcyIHB5M2sKKzU3NjM3IGQxYTE3Y2QyNmE0YjAyY2ZlZjA1Y2RkMDc1MzRiMzFmNGZhZWQ4MTEgcHkzaworNTc2MzggMzdiZWFlMDlmY2IwZmQ1ZmVhOWIzZGM3OGExMzc0ZmM5MzVlZjdmZiBweTNrCis1NzYzOSA1MGI3ODdjYmE4ZjFjZDZkNzVhNmY2OTdhY2E4NTVlM2FmNjVkZWJlIHB5M2sKKzU3NjQwIDcxM2ZiYTM0ZDY2Yjg4YjQxMWRmZTY3OWRlMTkwNzExNjg5Y2ZhYzYgcHkzaworNTc2NDEgMGU1MTBhZmY1ZTlhZTE1NDJiODNkMGZmM2NiNTJkYTA4MzM5YTM5NSBweTNrCis1NzY0MiBjYjVhZTAyMGEwNjBlYmE3NmI4OTBlZTI5NzA1YjQ0ODdhYTQ2MGQwIHB5M2sKKzU3NjQzIDlmNzRiNjk5MDU2YTQ2NTZkNzdkYzIzZTc1YzBkMjhiNzc4ODM3NTcgcHkzaworNTc2NDQgMDVjNDczOGY4YTQzYzczMzBkNzI5ODM2MTIxYmU5OThhZWNjODRmYiBweTNrCis1NzY0NSAxY2U4OWYyNTc4Y2Y4MWRmYmM2MDEzNzYxZDAxMTVhNzJhNTQ1NWQ1IHB5M2sKKzU3NjQ2IDBlOTA2NTEwMjYyZDFhOThlNDk4YjE4NWQ2OTEwYjg5OGY4YThkMTggcHkzaworNTc2NDcgNzFjZDU1OThiNzRkNmQwYjgwMGE4MTJiNDllMGJlMDg4ZTdiYzZiOSBweTNrCis1NzY0OCA2YjNlOGFhNTRkZDlkOTE4Nzk5ZDQxZjdhYjE3Y2I1Y2ViZTM5MzMzIHB5M2sKKzU3NjQ5IDU0MmI5YjExMTkxNWNlZDY0MGI1OTZmMDJjZWNlZjYwYjA4OWRjMDcgcHkzaworNTc2NTAgZGY4ZWY5YzgzNzFhNDU1MDI5MDg0OWUyYTU0NzAzOWQxYmM4ZGI3YyBsZWdhY3ktdHJ1bmsKKzU3NjUxIDgyNjAyMzE1ZWFlYjllNzEwZWVlMTE1MGEyZjllOWY0N2JhY2RmY2UgbGVnYWN5LXRydW5rCis1NzY1MiA5ZGY5MTFkNjU0YWZjYmM0YjI5NWM4YTNlZjc0OGQwYmUxZTAwYzZlIHB5M2sKKzU3NjUzIDBmODJmYzQyZmQ2ODFhZjkyNDk0YjFjMWQxZmY4ZWVmNTU3ZjI5ZTMgcHkzaworNTc2NTQgN2ZkZTZlZGYyYjkyMDEyODI2NWE4ZDViZGYxY2JjYzM4YzA1NTE5YiBweTNrCis1NzY1NSA3OTE5MWJkZmEyM2I1MmMyOWFhZDY4MTk5ODk1NDE0YTAyMTIwNjYxIHB5M2sKKzU3NjU2IDNhNTZlNzNhZTkxOTU3NDU5YTEzMzliNDU5NTgzMGM1OGRjNGNlNzcgcHkzaworNTc2NTcgZjQ4NTFkYzBkZjA0MTc0NTc2ZjEyMDFkNjFiMGVlYTVhYzE0YzBmNiBweTNrCis1NzY1OCA3MDczZjQ4MTQ3YmRhZmMwYjBiNDhmOGU0MWU3YjMyOTk2YTY4NmUwIHB5M2sKKzU3NjU5IDRiZWJiMjI4MTdjZmVlZGIzZjI1MDY2OWNmNWQ0YWEyYmJmOTNkMjggcHkzaworNTc2NjAgMGQyOGE1MjBjOWIxOGVhMTk2YzE3MGIzYTdkMjliMjIwMWE0OTQ1OSBweTNrCis1NzY2MSAxNzIyNDU5MjVhZTYwM2QxNjEyZGFlZWRiYTA5NDE2YzFkNTZmY2RkIHB5M2sKKzU3NjYyIGEwMzUzMjYwN2QxY2E3YTgzZDE1YTBjZTc4ZjE5Yzk3YTUzYjZiYmIgcHkzaworNTc2NjMgMzNlODdmOTcwYTIyYzAzMjM5NTJkOGY4OWQxZmE0NTJmMmEzZTZlOSBweTNrCis1NzY2NCBlY2RhMzMwNTE3MzlkOTZlOWFlZmRhNmEyMzNiM2VhZDY2MDM0NjFiIHB5M2sKKzU3NjY1IDk4ODU0Yzc2MjljOGUwMzNmM2Y4YzM0NTkyZjU4ZGEwNjM5MjRhZmMgcHkzaworNTc2NjYgYWJlYTU2NTMwNDA0OTk2NWM4YTg4MjJkZjA5NDNjODA3ZTk4NjZlMSBweTNrCis1NzY2NyAyNTBhOWQwN2MyY2MyYjZmMzgzMzM1ZjJlMjdhOTBkOGQ2ODVmZTI3IHB5M2sKKzU3NjY4IDRkNmMxMzQ0MzQwYzJjNzJhMGJmMzQyMGFmODYxYTU4ODg2MmI2MzUgcHkzaworNTc2NjkgYjkyMjZjYWQ5ZGZkYjA4YmRiYzdiNDFkOWUzMGM4YjUzMDk1NTk3YyBweTNrCis1NzY3MCBkY2QyODVjMDc4MTM1YzU5OTM4NTgwZDM4MjBkMzEyNzQ1ZjNiYjIzIHB5M2sKKzU3NjcxIGRjMGYwZmZkNDI1NzI4ZTcyMDc4NjQxOTNiNmNmNDUzNjVjZmY2MTUgcHkzaworNTc2NzIgOTZiZGUwODgyZTVmNGE0Nzg0ODA2YjVjNzI1OTNmMzAxMDQzMGVmNSBweTNrCis1NzY3MyBlYWZjOGIyMzU4OWQxM2EwMDg1MGI4MTNlZTVlMmJiNjQ0MTA0OTI1IHB5M2sKKzU3Njc0IGUxNDJjZDRiNTcxMDFjNWMyMzRmZDI5NjM2NTZlZWU5YTU0OTdiOWQgcHkzaworNTc2NzUgY2Q4MGViOTg5NzI4M2YzNTgzYTZkMmI3NjZlYzhlMGFiMTAwMzdlNSBweTNrCis1NzY3NiBhYTU3Y2VlMTE2MzEzZjZhZmUxMTk1NTI2ZjcyOTNiMDMyMjdjMDYyIHB5M2sKKzU3Njc3IGI3NTRjMDkwODg5N2ViYjI2MzkyZDQxZTgzM2I4YmRhNTAxOTAwNTggcHkzaworNTc2NzggYWM4YjM4OWYwMDI1ZDczN2I0NGNkNDI4NzkwNzY3OWQ5ZjI0OGIxYiBweTNrCis1NzY3OSA1ZmRlNWQ2OTY0ZDdjZDcxOTQ1ZWYzNjdlNTY4Yjc1MzBiNzFhOTU5IHB5M2sKKzU3NjgwIDQ3NzE2MzlmYzA0OTk2MzlmY2Y5NzExOThmMDg0ZTdkZTUxNjBhYjkgbGVnYWN5LXRydW5rCis1NzY4MSAwN2Q2N2E5NzI1YTc4ZTFiMTY3NjAzOWVlODA0MTI3NWYxYzE5ZGZjIHB5M2sKKzU3NjgyIGFiODllMTMwZDY0YTg0ZmFkZjMxZDYxOTk5Mjc3OTc5Y2Y3ZDgwNTUgcHkzaworNTc2ODMgNmUzNWM3YzE3NjA0ZTZhZjI4ZjBlMjdkOTZiNWM1MzE1NGI4YjJiZCBweTNrCis1NzY4NCAwZGNkN2YwODczOWFjODA3Mjc0NTI0ZmZkOGIzMWQwNmE3YzU3YjYyIHB5M2sKKzU3Njg1IDg4YmI0NTlmZGJmNTdjNzI4NjFmOTAwMDEzMGJkNjBkYTAxNjdiMTggcHkzaworNTc2ODYgOTgzNDMwMWEyZmQzZTAxNzg3MmZmMTNmYTlmYzEyYjU4N2U0Mzg4NCBweTNrCis1NzY4NyAwY2Q0MDFiZjJhYTdkZGFhNzRiZjAxZTMyNTEzZWUwMmJjYWFlNGU5IHB5M2sKKzU3Njg4IDk1MDg0ODExNzM5N2Q3MjRkNDQwY2ExYTlhYTc2ZGJiNTAwZTdjZDQgcHkzaworNTc2ODkgMDEwNGQ3OTlkZDQ0NTQyYjI1ODEyMmNiMDE0ZmRkNWMyYmZhYWUyOCBweTNrCis1NzY5MCAxNjU5MzRiYzQ0Mjk2MTA0NjA3NDI0OTNmOWEzYjYwZmVhOWQ4YTQ3IHB5M2sKKzU3NjkxIGQ1ZjNjMmY0MTZmMmE4OGIzZTRjNjY4Y2MxMTcwMmU4OWFhODAxMmYgcHkzaworNTc2OTIgOTA3YTQ1ZGYxMjk1M2E1OGFjYThiNDRkZTYwN2IwNzVmM2JkYWE2MSBweTNrCis1NzY5MyBhMzQ2NDRhNjU3ZjVhMjZmZjZkNTJjNjU0ZmVkNDI5ZTlmMjU0YzMwIHB5M2sKKzU3Njk1IDM5MThhOGE1MWJkMTk3ZThjZmM1MzFkYjRhZDA2MDVlZjJjNDQ3NzQgcHkzaworNTc2OTYgOTUyYmY2YTQ0YzI3N2Y3MDM5ZWY4ZTBmNGE2MzA2NTE0NjJlM2E5MSBweTNrCis1NzY5NyAxMzIxYmEwYjY3MGYxMDEwMjA3NGU3ZTA1NzY0ZGM3OGJiZTA3ZGFiIHB5M2sKKzU3Njk4IGI5NmNhMzUwODkxZDFkYTJmMmVmM2I5ZDkzMGE1N2JmZmM2NDNmNzUgcHkzaworNTc2OTkgYTZkMzkzMGI1NjEzODBhYTZkYjNjMThjYmQyNjUwNDRlYTk1YzViYyBweTNrCis1NzcwMCA5MDc1NzEyZGVlOGZkNDg2ZTA3NTdiMTU3YzAwZjg4MmM3ZGExODZjIHB5M2sKKzU3NzAxIDgwNzdlZTQ5ZmFkZmRjZDM2YjFlMDNmZDMzOTU4OGI5MmU0OTI2NmMgcHkzaworNTc3MDIgNzA4MDMzZWQ5NTE1OTQ4ZDAxM2ViOTZjZWM1ZDE4M2M0NDM4MjQ5NSBweTNrCis1NzcwMyBjYzBmZTA1NmJhYmRmNWE5NmY0MWEzOGUyOTFhMjlmZDY4OTExYTI0IHB5M2sKKzU3NzA0IGFjMmQ1ZDM0NjI1MmEyNDQ3NDk3MGVmZjU0MmJmYmQxNzI5ZGU3ZTQgcHkzaworNTc3MDUgYjVkOWMxOTVhMGM1M2E5N2IyNWRkNTMzMzhiZTI3ZDZlZDMzYzI2NyBweTNrCis1NzcwNiBlMDkzY2E1NTljMjNjZWJmZWU3NjUzYWRmYjg3ZWRjMzdkNzhkMTIyIHB5M2sKKzU3NzA3IDhjY2Y2ZjRjN2YxMjU2ODU3MDRlN2Y1NGFiNWQwNTA4NDQ5ZmYzMzggcHkzaworNTc3MDggNDI3NTQyMDhhNjU0NGNhMTkzNjRmNDQ3Y2NkYThjOTRmM2Y5YTQ1NCBweTNrCis1NzcwOSBlODJjODBhMDQ0OGQ1YjU2NWM2ZmMzNWEwNjUxNWMwMjg3N2E5NDlhIHB5M2sKKzU3NzEwIGNjN2U5MTRhMjJkOWNjNzQwZjZjMjk5ZjgzOGRkZDQ2MzlhZTA1ODQgcHkzaworNTc3MTEgNmUxMDEzYjkyM2UzYzFjODJhYzA1ZWIxYzFiOTY2ZDFjNTg5ZmVkZiBweTNrCis1NzcxMyBmZmE0MjMzZGU4NjYyMjdhZGEwZDI3NGRhNGQ0NTRhOTk4MWFiZTk2IHB5M2sKKzU3NzE0IDk2MjQ4MzJmMzE1NmYzNmY3NzdjMWNkZjdjODEwZGM0ZGFkOTViMWIgbGVnYWN5LXRydW5rCis1NzcxNSBhMTEzNjczMTdjYTBmY2NmYWU5NGQyMTlkMjY0NjNiOTRlYjk4MWEzIHB5M2sKKzU3NzE2IDhiMGIxMTQ2ZDkwODA1ZGU1NGI4OWQxZmQ2ZjFiZDY5YTFhY2Y5ZjggbGVnYWN5LXRydW5rCis1NzcxNyAxMTMyMjBkYWNlNjQ2YmIzMTBiNzUzY2JhMzdkZTQwN2RlODJhODBlIGxlZ2FjeS10cnVuaworNTc3MTggMzlkOWU1MDAwZTdjZjRjMmNhNDViMGQwM2RhMDVlYzU4MTA1OGRkMiBweTNrCis1NzcxOSBkZjUzYzU3NmM1MzFlY2UxZDQ3YmMwNTFkOTQ3NjY3NjM4OTNjMDA3IHB5M2sKKzU3NzIwIGI2ZTMzYjVlYWM0MGZhZTA1MmUxYWMwNzBkZjljNzNhYTg5NmQwYWMgcHkzaworNTc3MjEgMDhmN2E2YjI1YzhmMmJkNDY2MDU3MmVkNWE3OGZmNWU3MjkwZDc4NSBweTNrCis1NzcyMiA2NTAwYzhiZDdmZWFiNzA1MDE4N2Y1OTc1Mjg3OTJmNTFjN2JmZDE3IHB5M2sKKzU3NzIzIDNhN2JkYjBhNTk0ODJiYTAxMzFhYTU4ZTYzMzQzODEyMzc0YThlMjcgbGVnYWN5LXRydW5rCis1NzcyNCA1NmFmZGQ2ZDZjZjc4ZTkxYTI2NmMwMmFjZmIwOGY2MjU0YmVkY2Q0IHB5M2sKKzU3NzI1IDIyN2NjZGQwZjhkYjdhZjI4YmZmM2Y3Y2E3NjU5MGM3MWM5ZTI1NjIgcHkzaworNTc3MjYgOTczZGEyZWJjMmQwZjM3ZDBhZDA1Nzg5ZWIyMjZkZjM4MDljZjI0OSBsZWdhY3ktdHJ1bmsKKzU3NzI3IDZmY2I4NzNmMzk2YzY4ODlkZWM1OWE3YWE0YTc5MDgxZDc0NzE3MjAgbGVnYWN5LXRydW5rCis1NzcyOCBkODNjMmIyMWFjMjZlYzJlY2Y0MmU4Y2M0NWM3YTI2M2JjZDljZmRiIHB5M2sKKzU3NzI5IDdlYTY4ODg1NjJkMWQzODQ3MDMzYzExNjZjMzE1ZTBjODRmNjk3YmUgcHkzaworNTc3MzAgM2JmMWI4YjM0MDgwMzJkOTA3Y2FmOWY1NGM2NTIyYjlmYTIwNGRlNiBsZWdhY3ktdHJ1bmsKKzU3NzMxIDdkZmVkMWNmZTc2MmM1NGU2NDQ1YTBkMTY0MWZlZmZkNjZiMjEwNTkgcHkzaworNTc3MzIgNWI3YWFmYWRmMjIzMDE5NGRlNGU1N2VlYjI0NDg1OGJjZDUwYzM5MSBweTNrCis1NzczMyAwYTM4YzEyOTcxN2EzMTU1ZTc2YTliYzQyNmNkZWQwYzM4YzAyMTZmIHB5M2sKKzU3NzM0IGQ2MDM2N2ExMzE2ZjQzOTBkNzc4MjUyODJlM2E0ZDZlMDQzOGM5NmIgcHkzaworNTc3MzUgNzgzZWE2ODIxZTA0NzFhMzU3N2M4YTk0YTlhN2Y5ZDg1ZjYwNWI3NCBweTNrCis1NzczNiAxYTkwMWIxYzdjZDMxODYxNTI3MjVhNjFjYjE3ZDNhNTRjNWVlM2Q1IHB5M2sKKzU3NzM4IGU3YTM5MGEzNmVjOGY3M2JjMDQ4MTFjOGQ0ZTI3OTUwNjc2NTQxNjkgcHkzaworNTc3MzkgMDJkMWI1ZTdiZWY1NjhmY2EyYmFmNTMwMDY2ZmY5YmY4YmI3MTk1OSBweTNrCis1Nzc0MiAwOTNmZDg0ZmE3N2M0NTQ5M2RhMTdjMjkzODVhN2UxM2I2NDU4ZjNkIHB5M2sKKzU3NzQzIDZjMjAzYjdiMWUwYTExOTdjZmQxYTc2NzNlZjFlZWM2M2RlNjFiZjQgbGVnYWN5LXRydW5rCis1Nzc0NCA2YmJlY2MwMjhiY2UyNjZhMDcyM2M3OTc3NzA1ZTY2YmE3ZWExMmUzIHB5M2sKKzU3NzQ1IGE1NTMyNGM5NjAyZDYyMWZhZTNkMTExYjU1YzdmZTYxMmI2MWRmMTggcHkzaworNTc3NDcgYmVhZjY2MzA4MTQ4ODRmY2U3Mzg3YTdhNjE4ZDYzOTFkNzE2ZWZhZCBsZWdhY3ktdHJ1bmsKKzU3NzQ4IDY2YTVjNGJhOTM4ZWFjYWRmNDQ1NWZlMWIyZTY3MWUzNDBjNzc1YjggbGVnYWN5LXRydW5rCis1Nzc0OSBjNGE5NmRlNWU0NGU1OWY4Yjc4OTYxOTY4NWZkZDc4YmY1MmM5YWZiIHB5M2sKKzU3NzUwIGZmOTE4ZmNjNTdkMmFhMzkzMTAzM2RhODZkNWUxNTA1NmU1ZmY2NDEgbGVnYWN5LXRydW5rCis1Nzc1MSAyMzM2NDQ5NmRmMzEzNzRjMjUxMTEzNjJkZDY1NzBlMTcyY2Q2ZDAyIHB5M2sKKzU3NzUyIGRiOWExNzYxOTBkMzYwZDc4OTUxZDJkZWNmYjBmYTJiMGIyZGUzNmQgcHkzaworNTc3NTMgNTA0YzE1ZjA1ZGYzNTQ0YTM5ZjZlODMzMWMyYzczYTM1MjQ3YWFiYyBweTNrCis1Nzc1NCAwZmQxYjRlMmY0ZWU1OGFlZGRkZGM3Y2EwNjMxOWEyNGEzNGQ4NWI0IHJlbGVhc2UyNS1tYWludAorNTc3NTUgZGNlZGQzMmYwNmRlMzcxMWQwZDUxZDRlNDI5MTc4ZGQzMWJlYzQzMyBweTNrCis1Nzc1NiAzZTNiYzg0MTIyZDdiZjdjZjRkMWVlYmRjYmU4M2E2Mjk1MTIzOWFkIHB5M2sKKzU3NzU3IGJmMTFlZDQwYjEwNThkYjRhMDI1ZDc0NDQ3M2UwZjdkZGU4ZGVkMDcgcHkzaworNTc3NTggODdhMGZkY2FhODRhNjQ0OWRmMmRmMTgwMjgyZjk1MWJlOGI1NzdmZSBweTNrCis1Nzc1OSBhZTkwNDIwZDI2MzU1ZTI3MTgxZTkxNGQ3MmI3MDZkM2VlNDhjNTZiIHJlbGVhc2UyNS1tYWludAorNTc3NjAgNjhmOGIyMzkzMjQzNzdlMmZiZDUxMDExMzAyM2MxNGQxZTlhYmM3MSBsZWdhY3ktdHJ1bmsKKzU3NzYxIGFmYmY2ZmQ3Nzk4MDc5ZGUyNmRjMjE2ZjFmYmFhZmJlMTY0OWU5OTEgcHkzaworNTc3NjIgMjBkOGQxMWM5YjIxMzgxZjVjODY5YTU1YThmYjJlYmUxOWE0Y2Q3MCBsZWdhY3ktdHJ1bmsKKzU3NzYzIGNiMjUwYjA0NzNmY2I2Zjc2OTkyY2M2YjA2ZjBiMzJmYmFkYjZmZjkgcHkzaworNTc3NjQgNWQzMTRjM2U5OGVkZTU2ODVmMDQ2ZDAwYTg5OTY0NjZlNDY1MmNjZCBsZWdhY3ktdHJ1bmsKKzU3NzY1IDhkZmQxODA4MzU0MGQ5MGJlYThmOThlNDNjNWM5N2JmMTY4NmViZTIgcmVsZWFzZTI1LW1haW50Cis1Nzc2NiAxYmNkZWExZGM4Yzc1MGY3ZGM3M2QwYWVlYWZkNDBiODhkZjVkZjc3IHB5M2sKKzU3NzY3IDJlM2MwMmM2MjVkZWFjMzcwNWEzYjcxMjZmMGMyYjA4MDg0NzU5NWEgcHkzaworNTc3NjggOGM4OWI4YzQ4YjZjYjkwZmUxZDU4ZGYxMDg1YTIxYThlOTY2OTFhOSBweTNrCis1Nzc2OSBhNmJkM2RhYjNlYjhjNGVjNGEwYjZjOTY1ZjkyYWYwMzg2YzIyYmFjIGxlZ2FjeS10cnVuaworNTc3NzAgOTJlNDdkMzM4ODRlNDdlODlmM2E2YjEzNjc4MDVmMzg0MTEwMDA5YiBweTNrCis1Nzc3MSAxZDU3ZmI3ZWZiMTViMGRiYTRiNjc0MGMxNzM1NjBmODk1MTc2MTU5IGxlZ2FjeS10cnVuaworNTc3NzIgZGQwNjg4NzQwZDI0M2RiODYzOWZjOGI3ZGM4MDg0MDdhODE5N2QyYyBweTNrCis1Nzc3MyA0YTA3YTI4OGY1YzQ5YWY0ZTNhZThhMTgyNGJiN2IyZjA0MWRhMWUxIHB5M2sKKzU3Nzc0IDY5ODkwNmMyZjQ2OTEzMGFiYjA5ZmFlZGU3ZGZhODE4Y2Y0NTEyY2YgcHkzaworNTc3NzUgYTlhY2MwNmRhNTdhYjQ0NDA5NmM3NWUzYTA3Y2FkZGJkMDkwNmY1YyBweTNrCis1Nzc3NiA1NGRlZjE4ZWIzMWZkZmQxNmE1NzExZDc1MzYzNWY2OGU2YjI1MjQ1IGxlZ2FjeS10cnVuaworNTc3NzggNDQ0MWMzODc2NTBkOWM4NjMyMDM1ODNmOGQ5OTU4YTVkMTUyZDljYSBweTNrCis1Nzc3OSA0ZTZiNGJhNjBjM2IyODQyMGJhNGUyYzViZjE2ZmUyMzhlMTI0MzUwIHB5M2sKKzU3NzgwIDNjNDMyOTQzMWJiYzQ4ODJiZjllZTNjMzgxZjE0MzA5ZDdiZjBjOGMgcHkzaworNTc3ODEgMzJmNmRkOTVkMWJhN2NhN2YyYjI2MjAxZDAwYTI3NTA0ZTgwZGFkZiBkZWNpbWFsLWJyYW5jaAorNTc3ODIgZTkxZDJiZjcxZmRlZDg3YWMzZDEzMWNiYzRiNWEwYTliMjRmMGY1ZCBkZWNpbWFsLWJyYW5jaAorNTc3ODMgOTgxZWNjNTI2NzAzMDNkN2QyMzFmZjdhYTk1NWRlZjI3MThkNTU3OCBweTNrCis1Nzc4NCBkMmU5ZGFkZWRjYzZkOWFjOGEyN2U1M2UzMGQ3NmQzYmJiYjRmZTIzIGRlY2ltYWwtYnJhbmNoCis1Nzc4OCBkZWU0Yzc4ZWE5MTBjODRiZDE4YWIxNmQ5NjkzMTE0YmRkNDNlMmI5IHB5M2sKKzU3Nzg5IDY5MWI1Y2NlZjBjODExYmJmYjFkNDU5Njc1Njk1NjRhN2VhNzcwN2QgZGVjaW1hbC1icmFuY2gKKzU3NzkwIGRkNmNmMDBjMTc5NDk0YTdlY2NjNzkyOGFlMjMxNTg2YmZiOWJkZmIgcHkzaworNTc3OTEgOWZiMDMyN2IzMTEwMDkzYzlhNDIzNTNkMjU4NGExNzdlYmM1MzlhZCBweTNrCis1Nzc5MiBlZWQxNWVjNmI3NTk5NWJjZTUwNjVlYjU1Y2Y5NjFkZDQ1YjdkZmJmIHB5M2sKKzU3NzkzIGE4OWQ0NjllMWZmNzc3MTY5MTRjZTFhNDI0NGZhNTI5YTcxY2U2OGEgcHkzaworNTc3OTQgNTdlM2Y2ZjBhNTg4YzAyZjI2MTJlZTMwOTkyNDVhOTIyOGQ1YjhkYiBweTNrCis1Nzc5NSAwMTM1ZjBlNjc2YmQwMWI0MTEzYWFhNDZjM2NlZGZkZTVhNTdkZDUyIGRlY2ltYWwtYnJhbmNoCis1Nzc5NiBlZWU1YmRkMzcxNTg3ODQwOTJlNGMyZTdmMmYzODA5NjM0NjJiMDE3IHB5M2sKKzU3Nzk3IGNkYjdiOWY4MmNjNDU2MDg3ZjgxYzU5NGE4MDQ2YmVjYTY2MTg5MjIgcHkzaworNTc3OTggN2IwMjM3Y2JkMGVkMTE5NDY0MGY4ZTBmODE1Mzk0MDdhNWE2YWZlYyBweTNrCis1Nzc5OSA5MGM3MTViYzdkMzA1ZGEzZDE3MzczYTY3Zjk1NGY3YTdmZTk5NzFmIHB5M2sKKzU3ODAwIDdlYzA0Y2IyNjJkMjFlMjRkZTQzYmU4NGRjYTRkMjAyZDgwMDgxYjMgcHkzaworNTc4MDEgODQ1NGEyYmZhZTA0NDU2ZjBmNDUwYjllMGFlMzMyMDcxNmY2OTIwMSBweTNrCis1NzgwMiA5NWQ2ZmUyZThlMGU5MWYxYzkzNmEzZGJmMzA5YTg0NjNhOWVmMjY5IHB5M2sKKzU3ODAzIDBjZjcwMDQ2NDE3NzZkNzIzN2RmNDE0MWIxNDZkNjRmOGZjYWExZGUgcHkzaworNTc4MDQgN2VhMTM2N2JhMjc1ODhiNDJiZGVjZTA3YzRlN2ZkNjA3MGY2YjYzZCBweTNrCis1NzgwNSA4OGFhYTM4MGYwOTE3YzI3MDA3NGQwYWI4ZTJlNzliODdlNTA5NjdiIHB5M2sKKzU3ODA2IDE0ZWU2NzA1NTdjZjAwMDgwMTU1MGMxNzZhZjQ0MGYxZjUwYWU5OWMgcHkzaworNTc4MDcgZmVjMmMwMjk5YThjYmFkMjFiMmRlZjkzZmE4NjFiODc5ZmU3ZjQ5MSBweTNrCis1NzgwOCA4ODM0ZTY1NjgzZTdiNDEyODdkNmQ3ODRmYmJjYjhiNDQyZWJjMDQzIHB5M2sKKzU3ODA5IDM0MjQ4MDMzMzdhMzcwZDY5OWNmMjE2YmZjYmNkYjEzOWUyY2E1MTIgcHkzaworNTc4MTAgODVhNjc4NTc5OTgzMTQxOGI2YmZiYjczNzgxMDkxZWRmNmZlYTgyMCBweTNrCis1NzgxMSA3Mjc1Mzk4NjVmMDQ2NWNjYjk4NTU4MDk4MThiNjZkN2FhYjQ5MTZkIHB5M2sKKzU3ODEyIGVhOGI4ZTNkOGM5MzI4N2UxMDUyZWI5NGI2NDM0ODAyYjQxNDNhZTQgcHkzaworNTc4MTMgMzQ0OTFkYzE0M2U3Y2Q4NDZjYjNkN2QwM2U4Y2FhNWUxNjAwZWRjMCBweTNrCis1NzgxNCBlMTQwNTVlODJkYjk5MWViNzU3NjlhZGI1MDA5MWVmY2ZkYWRiNDg2IHB5M2sKKzU3ODE1IDIyMWZmYWRjMWE0YzI2OTUwMDg5NmExNmVhMzJiN2QzM2IxYWRiODYgcHkzaworNTc4MTYgYzkyZDQyNmVlZTc1MWI0MWRkMWQxOGI1OWZhNzk5ZjJjMTFkNGMxOCBweTNrCis1NzgxNyA0NzI5MGNhZjdlOGU4M2QxODdiMTRhNWE3YTRhZDU2MDk4YTFmN2M3IHB5M2sKKzU3ODE4IGQxNWQ5YzZiZWRhN2ExMDRhNDZlYWVlMTliMzkwYzUyZTI1YTI1ZmEgcHkzaworNTc4MjAgNWZhNWIyMTMzZmViZDhhNDc1OGRlZTRkZGExMGI4NTA4ZjA0MzY0YyBsZWdhY3ktdHJ1bmsKKzU3ODIyIGJjMThhY2Y4YjYxODJkYTE5ODk5MmRlM2M2OTQ0OTM5NjEzMDEyNjYgcHkzaworNTc4MjMgNDMwNzdjMjc5ZDE3Yzg2NmUzZDllNjVhOTI0NGFiZTkyNGMzYzRkZCBweTNrCis1NzgyNCBkNjdiOTRmNDlkZmNjY2YwM2E1ODhhMzFiYjYxMDVjMzdkMWE0ZDNjIHB5M2sKKzU3ODI3IDk5OGQ3NTdmM2ZiMGFlOGI1MjE3Y2NjYjMyMDA0ZDFlNTMzMmZkNGQgbGVnYWN5LXRydW5rCis1NzgyOCA5NThjNGNjNTk5M2UxZTZhMTA0ZDE3ZjgwMjBjOGY2MjdiNjlmNTVhIHB5M2sKKzU3ODI5IGExMmEwMmI5ZjY0OWRhY2M3OTZhMzQ3MTg5OWNlNGI0NzI0N2Y2MGIgcHkzaworNTc4MzAgMTEyNmU3ZTg1ZjE4MDQ1ODg2YTE1OWMwOGQwYzNlZDViY2ViMDk2ZiBweTNrCis1NzgzMSBiNWYwNmU1N2EyNGY0OTg1YmVhZDIyNjg3MjY5M2MyMWUzYTZiMTNmIHB5M2sKKzU3ODMyIGY3Zjk0NDM3NDQzOGMwM2MzNzY4M2ZkNjJjNzNiZmIxY2M5YTEzZDQgcmVsZWFzZTI1LW1haW50Cis1NzgzMyA3MTEyNTI0MDJiMmY1NjczYTZmMzdhYTkwNWY3NWUyNmM2ZTJiMmZlIGxlZ2FjeS10cnVuaworNTc4MzQgNzcwMDBmMjY0MWVlOTE2OTdhMjIxNWNkMzZiYzJjZjA3NWM5Y2FmZCBweTNrCis1NzgzNSA1YzMwZjE1YTZiODc5OTdiYjkzNTQyOTVkNjdlYTk3NWM5MDE5ZTg0IHB5M2sKKzU3ODM2IDIzNjFhYWVhZmNiY2M4NTllNmNlNWQyMTQ0OTQyZDM1YjM0N2I0Y2YgcHkzaworNTc4MzcgMDgyY2VmM2JlMjliMzM5ZjNhNTVkYWI3MWJkYmRhNjk1MWYwNmJiMSBweTNrCis1NzgzOCAwNmRjNDMyMWE1NmEwYjM5OWUxMzA3Mjc5OThiOWIyNjRjNmJkNDA2IHB5M2sKKzU3ODM5IGE3ZDU0NDAzNTNjMzVkNDM5ZjhjM2MwODJkMjVmN2JiZWQ5ZGY5OWIgcHkzaworNTc4NDAgZmZiMTAwYmUwMzEwZGE1ODRmNjhmNzYzZDQwMjBhZmFmZTBjOWU4MSBweTNrCis1Nzg0MSAxYmI2M2EzMmE2YzhkOTFhZjk2NmVhMmM5MzU5ZGU1YjVkNWFlMTc2IHB5M2sKKzU3ODQyIDQyMzE0ZDdkNjA4M2Q0ZmVhZjMwMzFiOWI4MzFhMjg2MDE2Y2E1YWEgcHkzaworNTc4NDMgYTZmM2JjMjE2YzM3MGJjNjhhZTgzMGY4NGMwMGMxOGMyMWYzZmVmMCBweTNrCis1Nzg0NCBiNWUwZjc3MjEwMTRhNmM0ZTE5ZDRiMTJmZTI5ZTY1Yjk4ODk0MTZkIHB5M2sKKzU3ODQ0IGNkM2Y3ODNjZDA4YTE2NzgxZTIzNmMwYjljYjU3MTdkMWQ5OTVmYTkgcHkzaworNTc4NDYgMzM1ZWY4NmE4YzVjYWM5OGM4ODE5NTIyZWJlMTJlMDY0M2UxNDYxZSBweTNrCis1Nzg0NyA5ZmYxMTI2ZjA5NmMyYTc1ODI3OWUzZmU2YWJmNjFlNWI0YzMwZDg5IHB5M2sKKzU3ODUwIDhjMWMyZDViZWQzMjI2ZjVkMDM1YWQ3YzJiNjMzZjFiYjc1MTEzMjcgcHkzaworNTc4NTEgMWQwZjRiM2VlZmFiMzc3MmM0MDAzNjJhNjc3ZGJlYTExOTliZDlkYyBweTNrCis1Nzg1MiAyMGFiZGI5MTZjZTMyM2UxOTUzZGJlYWNhZTkwY2M5YWZjZDc0OTVjIHB5M2sKKzU3ODUzIDI3NWY4OTRkYmYxMjFjNDA0OTYwYTMwODNmMzRiOWRkNWY1MDllZGYgcHkzaworNTc4NTQgOWNmYWQ5YTVjODNiMzgwZTJkY2U4NGVlNGU3ZWI0ZTI1ZTZjNjcyMSBsZWdhY3ktdHJ1bmsKKzU3ODU1IDlhZjljOGE3MWJmZTgzZDJmYTg4OTUxZDNiNDdhMTEwYmE0ZDQwMzAgbGVnYWN5LXRydW5rCis1Nzg1NiA0N2M4ODBlNDhiZjZiMmU5MmNlZDRjNzk4ZGM4ZDg1M2FlZjA0YTc2IGxlZ2FjeS10cnVuaworNTc4NTcgZTliNjczNmMxNjMyMDg1YjZkNjZkMTM4Mjc2ZjQzNmVkY2M1MzI0NiBweTNrCis1Nzg1OCA2NmM3NTFlODFjOTBlNmQ0NDk2NWEzMGE5NmZkNTc0ZmZlNzIyYjFiIHB5M2sKKzU3ODU5IDUxYWZjMWQ1NjVmODMyYmZkMWQzZWQ4ZjMyYmY4ZDY1ZWEzNjYyMDYgbGVnYWN5LXRydW5rCis1Nzg2MCBiZDk5ZmVhZmY5OTU4Y2I2MGIxMGFmYTViZDE3MDA0ZTQ3YWJmYTkzIHJlbGVhc2UyNS1tYWludAorNTc4NjEgNjIwZGNhNjc1MTM3YTE2NGQwZDRhNjI1ZjRhMjBmOWQ3NjVhOTdhOCBweTNrCis1Nzg2MiBlZTFiM2ViN2EwMTM2ZGNjMTI2OTMzYjVkNGUzY2E3MjJiOTJjMzc2IHB5M2sKKzU3ODYzIDBhMGI4MjI2NTcwNjIyODJiMzhlNzNmYzZiMTE2NWYzODdmZDI2MTUgcHkzaworNTc4NjUgYmVkMGY1MGVjNzBiN2Y5ZWY0NWFlNjhmNjgxMWY5YWM5Y2JlMTNkOCBsZWdhY3ktdHJ1bmsKKzU3ODY2IGQ4NDI0NTdlNGIwZTM5ZmIyYjEzMmUxNGYyMmNkZWRjYTQ1ZmU0MDYgcHkzaworNTc4NjcgYmYzYzk0MjEzZDVkMWUyNDM1OTM3ZTJjODVlZjhhOGQxNDg4NTc3MyBweTNrCis1Nzg2OCA1ODNlNDFkMTI5NGI0YTUzYTAyMGY3YmM3YTAxY2Q3NjZjYzQyMDk1IHB5M2sKKzU3ODY5IGRhMjg1ZDNiMDY1YWMyYWQwYWIwOTdmNGVkNWI4Mjc2ZjY2YTgyY2UgcHkzaworNTc4NzAgODA4ZjMyYTBkOTljMmUwMmM0Y2NiNzM4YWVmZTM4MzNiODFmYWU2YiBweTNrCis1Nzg3MSBiN2JmYTc4MGE4ODI4ZWM2NjVkMjA4Mzk0ZDdmOTU0NDhlNjNlYzYzIHB5M2sKKzU3ODcyIGY0ZDJlZDUwZGU4NTlkOTFkOTQwNGM3MjJmYTM1YjMyYWNiYzk1ZmQgcHkzaworNTc4NzMgYzRmNjNiYjRkMzhhMmM0M2Y2NjU5NjlmN2VhNzk2Njg5MWI0YjQwZCBweTNrCis1Nzg3NSBhY2FjZThlYjBiZDgyNmQwMzBjOTBiNTcyZTIwNDkxMzczZDk2YjZkIHB5M2sKKzU3ODc2IDllYmE2ODllY2YyODdkYzc3M2UzZjk1Yjk1NWRiMTI5NDdlYzA0ZjEgbGVnYWN5LXRydW5rCis1Nzg3NyAzMjBjNmJlZjhkMzBjMjlhOTY5ZGU0OTkwZmI3NGMyMWM1ZDg2NjU5IHB5M2sKKzU3ODc4IGNhZjBkN2UzYjI5YTVmNmY4ZGM3YmVlMTUwYzE2ZTg4ZjUxZjhmNzQgbGVnYWN5LXRydW5rCis1Nzg3OSBhZDNkNWFjYWNmMDNkZTcwYmY1MzhjZTRjODdiOTZlZTc0YWY0NTI5IGxlZ2FjeS10cnVuaworNTc4ODAgOWIxODMzZmM1YzdiMjA3YjJjYzYxMDQ1ZWNlNmFkNjZjNDg0ZmMxZiBsZWdhY3ktdHJ1bmsKKzU3ODgxIGNlM2EwNzEzNTFmY2NkNTBkYTc3ZWNlOTY1M2E4OWM3YWMyMDg0NDMgcHkzaworNTc4ODIgMTRlOWI4N2I3NTNiMjc5YjM3MjI1OWJmYjI4NzlhNTU3YzE3MTI4ZSBweTNrCis1Nzg4NiAzODZjMjJkOTNhYjY1YjYzYjA1Y2FkODkzOTQwMDA1OWY2Nzk4N2ViIHB5M2sKKzU3ODg3IGQ0NDI5ODRmMjkwYjljMjVlMGRlMjg3Y2QxM2U4OTNmNTE0ZDBmNTYgcHkzaworNTc4ODggM2FjMjM3YmNhNWVlNTM3OWMzNWZlYmY4MWE1NGVjNGRiNGVkNWRiNSBweTNrCis1Nzg4OSBkODY2NzJiZGU2NDA2NTY1YWRlZWM1MzBlMTgwZTVmNGFkNjM3YzViIGxlZ2FjeS10cnVuaworNTc4OTAgZWExODQ1MTM2NjBiNWQyODE2YTdmYTc4MmQ1ZDJjMWI0M2ZhNjYxZSBweTNrCis1Nzg5MSAyNzliOTU2YTNhOTYzNWRmMWI2NDFiODk4NmQ4OTE5NDE4ZmZmOGRiIHB5M2sKKzU3ODkyIDE0Nzg2ODhmNDU2NTg3YTUwZWRmNTk5MTg0NzNkMTU0OGUyMzViZTggbGVnYWN5LXRydW5rCis1Nzg5NSAzNmY1NmEzZWYzNmY4MDkwMWMwNjUwYmIzOTg4M2FmNTI2Yjc3NTJiIGxlZ2FjeS10cnVuaworNTc4OTYgYjc1MTZhMzQ2ZjBmMzk4ODQzMTRjM2I2MGQxMTRkMDI2NGQyN2YwZCBsZWdhY3ktdHJ1bmsKKzU3OTAzIDFiMGQxNTQ0NGNhNWQ0MjZkZjhhMTAxY2E0YjkxMGE2MDNmY2ZmY2QgcHkzaworNTc5MDQgY2UwY2IyZDg2OTE5OWRmOGI3MmI1ZDg5MzVmOGY1Y2YyYjdhZTBiZCBsZWdhY3ktdHJ1bmsKKzU3OTA1IDFiNWIwNTQ2YTdkZDJkOWNkNWIxYjI4YzRjNmEwZjlmZTU2M2M5NTkgcmVsZWFzZTI1LW1haW50Cis1NzkwNiA0NjNiMzQxYTlkNjMxZWM0ZGYyMzg0ODcyM2Y2ZjhkMTVhMWNhMmU4IHB5M2sKKzU3OTIzIDQ5MDI2NzFkZDY3ODUyNzg5YTBlNjFmZDI3NDBmZmRlZDFlNTI5YzQgcHkzaworNTc5MjUgN2M2ZTdkMTlmZjUzYmM0ZWQ4MjY4NjYxYWJiYzYxMDYyYzIyZTM3YSBsZWdhY3ktdHJ1bmsKKzU3OTI2IGI1ZjUzNWNmMTM1ZmM5ZGM0MjBlYzkxMzRmZjkxOGE5MjE5YjZjZTAgcHkzaworNTc5MjcgYjUxYWMyZDJkNTM4YmRhMGY2ZjU3ZGQxZWVhMDNjODhjZTcwMTAyMiBweTNrCis1NzkyOCA1NjRhZTU2YmQyZGE2MWM4ZjI0NWUzOTk5YTBmYmM1OTE3NDhiZDI3IHB5M2sKKzU3OTI5IGY0ZmI3NGY2MzgwNjdmM2QwYzQ5MTM3YzNmNjRkMzI0NDE0NDQ2M2QgcHkzaworNTc5MzEgZGQwYzY1M2JhMjlmMjMwOGYyNjJjNjhmNjM1OGY5NzlmODQzMjMzMyBweTNrCis1NzkzMiA1NzhiMTc0NjFmNmI2YjlhYmExN2IwM2RjOTIxODU0ZmZjYzFiMzdlIHB5M2sKKzU3OTMzIDExOTkzYmNiMGJhM2QxZDlhNDZiYTkzOTM0OTZhMDMzOWZiZGUzODEgcHkzaworNTc5MzQgNDM1OTc3NzhlZjJjYmM1MTMzNGRhMWI5YjJmNTdkYmQ5ODBjYTE4OCBkZWNpbWFsLWJyYW5jaAorNTc5MzUgN2ViOTU0MzUxYTRmZDdkZDQ3N2YwYjUwNmZjNGNjZjI2ZWU5ZmUzZSByZWxlYXNlMjUtbWFpbnQKKzU3OTM2IGM0OGNkNmUwNmFjYTUzOWQwNTI5MDc2NzYwNDUzOGJjMGZjYTBmN2IgbGVnYWN5LXRydW5rCis1NzkzOCBhOWZiNjVjOGVhY2IzODFlZTI0OGMxNTUzYjkzYzUwZWY3YmRlYmY0IHB5M2sKKzU3OTM5IDQ4ZWU2MzlhNzVkZDcyZmVkYWQxOTRhYjQzZWU1ODA2YWQ3MGQ1ZmIgcHkzaworNTc5NDAgZTI1M2IyMDQ1MjUwNjlmZWVjNGZjM2IyMWJhMDY2NDJmNmZmN2I3OSBweTNrCis1Nzk0MSAzY2JiNGY5MjIwZjQxOTI1YjEwOGZmYjdhYWEzMjRjZDdhNmE1ZTdhIHB5M2sKKzU3OTQ3IGEzMTFhYjJmYzFhNzAwNTE1MGE0YmZmNDUxYWNkMDA3YzgxY2UzY2QgcHkzaworNTc5NDggMzQzNmRhZjQ1NTE2YWU3OGM4YjIyZmYzNTA1MGQ3YWI0NWUyNzk5ZSBweTNrCis1Nzk0OSA0MjhkOTIxODA0ZmE0M2NkOGU2MWM0YzQxOGI4ZjMyNjZlODgxNGQ2IHB5M2sKKzU3OTUwIDY1NTA3MWJmNmM0NWM2ZDg2NWI0NDNkNGE1YzlkMTEzNTYyYTFjMmQgcHkzaworNTc5NTEgYTFjYzliNTg5ZTIyMmVmMjk5YzE1Zjc2MzE4NjA1OTk1NGYyYTU1OSBweTNrCis1Nzk1MiBiYmQ0ZDI5NmY3NGFjZThmMjhlMmI2OTRmNGFkOGZiZjg2MjE0NTg2IHB5M2sKKzU3OTUzIDk3OGM0MmI1MzhkMWM5YjRlOTI4N2M3ZTFjNzFlY2IxMmI4ZDc5YWQgcHkzaworNTc5NTQgMjA1MmY1NGNlZDQ5NjYwYjI4OWY0YzI5MTg4ZmU4ZTQyZTc2NGIyNSBsZWdhY3ktdHJ1bmsKKzU3OTU2IDAyOTRiYjJlOTVkZTMyOWJmNTkwNzlkNjI2YjJiZWJmNjNlYTYzZGQgcHkzaworNTc5NTcgMzhmM2Y5ZWYxOTNkMmFhNDQ5M2MyODFjYzRjMWNiMjQzNzNiNTMyNiBweTNrCis1Nzk1OCA0N2Q5MmRiN2NkMTAyMjJjZDdmYjEyNjc3OGJlOTEyYjM3NzczZDc3IGxlZ2FjeS10cnVuaworNTc5NTkgYzlhYzViOGU0YTgxNjk1ZWRmYzFhYzhlNDIwODM1MTgyOTI5MzIzOCBweTNrCis1Nzk2MCAxYTBjNzM1ODA2NjVlZjZkNDE1YmEzNjZjOWI1MmM1M2NlYjY5MGViIGxlZ2FjeS10cnVuaworNTc5NjEgNmEwNDhmZjMwNDg4ODc4YTJmZDIzOGQyZDkyZTI0ZTA2MmVkMDVhNiBsZWdhY3ktdHJ1bmsKKzU3OTYyIDQyNTEyN2MxZDExM2M0ZmFhYWYzYWIzYmVmMDA5ZTEyYjg3OTQ5OTIgcmVsZWFzZTI1LW1haW50Cis1Nzk2MyA4ZTcwZmQ2YTdkY2IwOTUyM2VmMDRlZjRmMWU1NjVkOTY1Y2QzOTdlIHB5M2sKKzU3OTY2IDA4MWUzNjIzMjVkYTY4ZTNiMzc3MTNjZTI1NDBmODhjYzI0MmQ0MTMgcHkzaworNTc5NjggMzRiYzYzOGFjNzA3NmVjMTViYTE3M2ZmZjVlNWU5NTc4NjI5ZTAwMSBweTNrCis1Nzk2OSA0OWQ2ZmE5OGRjNzgxN2Y1MTA1YzA3OWVlZTQ0ZDU2ZTdmZGFjMzgxIHB5M2sKKzU3OTcwIDc5MDRmYmFmYWIzZGU1MDg2NTRmZjkxMWNiMDM5NDc3ZTM5YTJhMjEgcHkzaworNTc5NzEgMzQ4NDM1MGE0ZjY5ZGYzNzY0MjI2NGQyYjJjYjE4ZGJiZGRmNWE0NSBweTNrCis1Nzk3MiA4MGZmY2MxNjFiMzBjOGY2OGIyODk5OGY1YmY1YzliYWM5OGNkYjU2IGxlZ2FjeS10cnVuaworNTc5NzMgNTNiOGZjMDc5MDc3ZjQ4YmVhYjFiOGMyY2ZjYzBmMzU5MzU5OGZiNCBsZWdhY3ktdHJ1bmsKKzU3OTc0IGM2YjExMjNlMGU2Y2E0YmUxZDA1MjBmMDI2MjBiMTk0ZjA0ZTYxYjcgcHkzaworNTc5NzUgMjk0ZTM1NDUyZDI1Nzk4NTI4ZTRiNGJhNTY2MmM5MTU4YzNiZTdjNiBsZWdhY3ktdHJ1bmsKKzU3OTc2IGU5NDYwNzNkZWUzOGIwNjVkNmFkZTcwNjBjMTA2MzI0Mjg4Y2I3MWYgcHkzaworNTc5NzcgZTZkZTlhZGQ3YzA3NWJjOTcwZmM1YTJkZjQyYWI2ZjQ0M2ZkZmMxZCByZWxlYXNlMjUtbWFpbnQKKzU3OTgwIGUyYjRmYzk2MDgzMGZjMjJiZTFmN2E4NDU3MzlkZGMwNDI5NGUzODkgbGVnYWN5LXRydW5rCis1Nzk4MiA3OTA4MGM0ODg5YmMyN2U5NWQ4Y2M5YjIxYTc2YWJkYmU4ZjI4M2U1IHB5M2sKKzU3OTgzIGNjNDQ0Mjc1NDUxMDVlMzIzYTExNzMyYTg1ZWE5N2I4ODdkZmUyODggcHkzaworNTc5ODQgZDMxMDQ3YTFjZTE5NzY4NGYyZjU1Mjk2Yzg5NzE1ZWUyYmYyMDJiZSByZWxlYXNlMjUtbWFpbnQKKzU3OTg1IDQ1MzEyMjBlNTBiYThjMTRmYjE3YWEwMzMzYmI5NmJmMmU3MTE5NGMgbGVnYWN5LXRydW5rCis1Nzk4NiA1ZmQwNDUxZTc0MDYwOWZjNmE5ZmJhOTcwZTU3YzU5MWU0YWIyYmJlIHJlbGVhc2UyNS1tYWludAorNTc5ODcgN2ZiOWNkOTFlNjQ4NjFkM2RlODkzNWU2YTNkZDQ2ODhiMmNjNzgzZSBsZWdhY3ktdHJ1bmsKKzU3OTg4IDcxYzNlNWI2OWUxNGU3MWRlMzM0NWQ1NTUwMzc4OTczODhhMzRmM2UgcHkzaworNTc5OTAgM2MyYTRmNmFjY2Q1NmFkZDQzOWZlNmFjNTY0NWQ0ZGVkYjBiZGM5YiByZWxlYXNlMjUtbWFpbnQKKzU3OTkxIDU4YWY2Njc1MDE5ODYyZGFiNDQ5YWI2NDU5ZjhmNWE4OWNiZTlkOTcgbGVnYWN5LXRydW5rCis1Nzk5MiAwOGUxMDU1NGU0MzAzODA3MDM2YTkxODQ5MzU5ODU5ZTBmMzdiYTM3IHB5M2sKKzU3OTkzIDkxYzk5MDExZDA2OTQ0YTYxNzAxODNlYWJjOGZkYWYyZDA0NjhjYTggbGVnYWN5LXRydW5rCis1Nzk5NSA3MmE5NmU2YTdjMmZiYzViYjhkZTE4NGFkZWVhYjBjNjAxZGEzYmM4IHB5M2sKKzU3OTk3IDg4NTgxM2NjYmY0NTRjYzBkOTNmNTk2NmUwNGYyMTViMDdkNmRjMmEgcHkzaworNTc5OTggYTRiZDhhNDgwNWE4MDI0NzcxNmYxODFiZjhlZjdhNWVhYmIwYzJmMCBweTNrCis1ODAwNCAwYTMxZDFjNDVhODkyYmE5ZDBkZDNkNTMxZWZkNzE3Yzc0OWYxM2FiIGxlZ2FjeS10cnVuaworNTgwMDUgODg3ZTFmZWFiZGJkZTZhYzlhMTZhNTAyODE3MDY4ZWIwZTEyMGU4ZiByZWxlYXNlMjUtbWFpbnQKKzU4MDA2IGZkYzY3NWNiNWU4YWVjMDM3ODc3OGFkOTQ0ZmEzOTYwZmRmN2VlNjEgbGVnYWN5LXRydW5rCis1ODAwNyBiZThmN2QzY2Q3Y2MxM2IyZjZkZjZkMTlkZGY3OGNmZjc1MGNjMmZhIHB5M2sKKzU4MDA4IGZjYjAyY2I5NmNhMjAxYzE3MjU1NzMxMWI3MzU1MDM4ZWM4YTAyN2UgcHkzaworNTgwMTEgYjRhMmYxMGIzOWQyMGYxMjIyNTU3YjcxODFjMGZjNjE1NTI5NzA4NCBweTNrCis1ODAxMiA3OWRkYTU2OGY0MjVhMzkwOTg0YWMyOWUyZjE0MGUzYTYwNjgzZWQ3IHB5M2sKKzU4MDEzIGFjM2ZjMmFlNGFiY2ZmMGRlMWQyMjA3YmJlMGM3N2NlZTcwZjQ4ZjQgbGVnYWN5LXRydW5rCis1ODAxNiBjNzZhY2E0ZTEwMGRlMTE2MmY0MjdmZDcxYzE2NTQ5Yzc0ZWNlNjQ2IHB5M2sKKzU4MDE3IDdjMmY1YzYyZjhjYTBkOTM3MzNmNjUwMjc4Mzc5NzQ5ZTA1ZGM4MDEgcHkzaworNTgwMTggZWRmYmNmMWZmNzM0MDc1MTBlNmZkNjM3ZDUwMjZiOWZhYzk3NjRhNyBiY2Fubm9uLW9iamNhcAorNTgwMTkgYzljNjE2NWY3YzBkMWUwNGNjNmI3NDhkNWMyYzQzNTg1OGNlODZhNyBiY2Fubm9uLW9iamNhcAorNTgwMjAgZTdmZDFmZDkxYzUzZmFiNmRhODU0ZDI4ZGU2YzgwNTQzOTE0NmZkYiByZWxlYXNlMjUtbWFpbnQKKzU4MDIxIDJkYmE1YWM4Y2UxNTlmMWUwN2JhMmE0MzY4MWEwNWU1MzRmYTEwMDMgbGVnYWN5LXRydW5rCis1ODAyMiBiYTA4ZjdmMzZlOGVkNGMwN2Y3NDM0YmMxMGViNzk2MjVjNTc2NDE5IGxlZ2FjeS10cnVuaworNTgwMjMgNTU2NTY5YWIzZjlkZDg1NTUwZDhmNzE2MzFhYmMxYTkyNGYxMTllMCBsZWdhY3ktdHJ1bmsKKzU4MDI0IDE2Y2I4NWZlZmM1ZDAyNWUzMDRlNTFjMmQ0NGJkNWM1Mjg1MDcwNzkgcmVsZWFzZTI1LW1haW50Cis1ODAyNSAxYmM0YThkNTdiMzEyOTg1ZjRmMjljZDU1N2VkN2UyMDQ3YmMxZjI4IHB5M2sKKzU4MDI2IDcwNTI1OTM1NzRiZjQ3YjQ0MzM2Nzc1OTAwMmZiNTAzYWU2MjA3ZjIgcHkzaworNTgwMzEgNTdlYWJiMDUxY2ZkY2FjZWM4Zjc3YThhNTlmMTE1NTg5MDZhMzNiNyBsZWdhY3ktdHJ1bmsKKzU4MDMyIDNiYzNmMTJjYWUyOGYwMmIzNTcyYWEyYmU3ZmNiMjUwMjVlZjA3ZTUgbGVnYWN5LXRydW5rCis1ODAzMyA4MGQyZGFlYzYxY2M4Y2FjNWFhY2Q5ZGQwZjU2ODI1ZTQ5YjI1NDc3IHB5M2sKKzU4MDM0IDI4NzE2ZGQxNGJjNWZhMjcxNDJjYTU3OWVjYWU3Yjc4ZjI5YWU2OTkgbGVnYWN5LXRydW5rCis1ODAzNSA3ZGFkZDIxZmE4N2MxMmIwMjlhOTU2ZDY5MDNlYmYzYWFkZTRjYzA2IGxlZ2FjeS10cnVuaworNTgwMzYgZjYyODU3NTMzY2JlYWEyYjk0YWFhYmI4MDMxYjg2NWRhODBkOWZiYyBsZWdhY3ktdHJ1bmsKKzU4MDM3IDRiMjEzNGU0NzMwYzIyZDVkMTcyMTJlM2E4NWM0NGVlNzAzNTI0MDYgbGVnYWN5LXRydW5rCis1ODAzOCAwNmY2NjgyYjIxNjZlMzA3YzJhYTFmMmE3YjE5OGRlNjRiOGU4YjkxIHB5M2sKKzU4MDM5IGZjNDcwYmJlOGQyNDJiODdiMjgwZTU4MzYyMWRhOGJhMzZkYzEyNTMgcHkzaworNTgwNDAgMWY5ZWVlMDhhYjM1ZTk1N2ZmNTY1ZmZhNTJiYjAyNmY1MjEyOWI4NiBweTNrCis1ODA0MSA3NTVmYTUxODdkMWJjMTJlOWQ0MGI5NTMwOWMzNmNjNjBjNDE1Nzc0IHB5M2sKKzU4MDQyIDg4NWZiMTdjNWUzMTk2ODI1ZmZlNDc2ZmFiYzkzZjg2ZDYyYTNhZmEgcHkzaworNTgwNDMgZmE1NWQ0MmM4ZDljOGQyZTU3YTY3MjY2ZmM3Yjg5NTU3ODA5YTJjMCBsZWdhY3ktdHJ1bmsKKzU4MDQ0IGI4YTgyMDZjMDg0OTI1MDVmM2RkODM1ODE3ZDQ1NDE3OTg1NGE2ZmQgcmVsZWFzZTI1LW1haW50Cis1ODA0NSBiMzY3ZDZlNDIyMzE1YTkwNGJlNDVkODZmNjc3YjI1ZWFkMGYwNzQzIGRlY2ltYWwtYnJhbmNoCis1ODA0NiAxZjYyMjczNjVjMzZkYWJhYmFhMTgxOGE2M2M2YWYwNzBlN2FmNGM0IGRlY2ltYWwtYnJhbmNoCis1ODA0NyBlODVmYWEwMjE5MWM0N2M5NTBjMTk3MmIzMzdlMTdmODcyZTMxYWIwIHB5M2sKKzU4MDQ4IDA4ODFhYmFiOTM3Mzg0MWU4ZDY0N2YwMGFhYWZmMGFmOTBmOTkyMmYgZGVjaW1hbC1icmFuY2gKKzU4MDQ5IGZmYTA3NDdhN2NiN2EyMDYxNDcwODMyNDhmZGIzMjgwOTVlZGRmZjYgbGVnYWN5LXRydW5rCis1ODA1MyAyYWU2ZGIwYmM3ZWJjYmJiYzczMTJkYjZlMDNhYTBmNTU3NjQyNWQ3IHB5M2sKKzU4MDU0IDg3NmI3ZWY0Nzc1ZDhmYmI5ZTRhNWRhM2Y0NGYwOWE4MzE4NzljNmIgcHkzaworNTgwNTggYmFlYjY2Y2U3YjUxZGRiMzY3MmM0NTU2YzczMDRmYmRhMzRkZDRjYiBweTNrCis1ODA1OSA3OGYxYzMyOWM5ODM3MTNhNDFmMzFhODVhNDBlODgzNmZjNGMxZjIzIHB5M2sKKzU4MDYxIGEwOWVhMmNmZTc2YTMwNWIwMzcxMjljMWNkODE0OTVkMWY2MzcyZTYgbGVnYWN5LXRydW5rCis1ODA2MiA3NWNkNTQ4NjMyNTA5YTJlYWNhN2YwYzMwZjczODdhNmI1YjNkZWM3IHB5M2sKKzU4MDYzIDc2YzFjYzY3MGM2MzNlZmVkOTgxN2FhMDMwOTJiYjYwZWUwZjc3M2MgcHkzaworNTgwNjQgYTExYjQ4ODViNDQ1ZjI3ODBjYjgwNjM1MDJlNjViMjRjMWUxNTc5ZSBsZWdhY3ktdHJ1bmsKKzU4MDY3IGU4YWE3MjRkYTkwNTg0ZDM0MmJjODczYmZjZTUwNTIwZmE4NGUyN2UgbGVnYWN5LXRydW5rCis1ODA2OCBiMzU1ZDJkYmE5YjZlMjVhMzlhN2UyZjlmOTUyYjJlYzdhNTc2ODZkIHB5M2sKKzU4MDY5IDgwN2FkYzAzMDY1MzUxNTFmYzgxZjAzNjFlOTY4NWY4ODdmMmZhYWMgcHkzaworNTgwNzAgM2QxNDk2NDg5ZjU4NTFjNjBmNWU1NzA5ZTU1N2VhNzU2ZDg3YjcyOSBweTNrCis1ODA3MSA5MTc2YTUzYjRiNjI1MGVhYzg1MzZkMGNmMGIxOGExYWRmOGUwYzQwIHB5M2sKKzU4MDcyIGY4YTVmYmEzNWViMzZhZjM0YTliMDJmZjM4Y2IyOTI5YzhkM2I5OTAgcHkzaworNTgwNzMgNzViMjY1YzA4YzkxMGJlNWE4NWJjNDQzMDg1YTIxMzM4ZjQ0NjEzMCBweTNrCis1ODA3NCA5ZjdmMzE0NzAzMWMyNjg2ZGEyNmNkNDBhMTIwOWFjMDc2NjIzZjA2IHB5M2sKKzU4MDc1IDg3NTA1MmMyYjdiMzQ2ZmNkZmIzYzY0M2ZkMGRhZjdhNTFkZDMyODcgcHkzaworNTgwNzYgYjI3ZDM0OTE2MmJkZWVlZDE2ZGRjMzZlMDgzM2NmZjVlYzU1MmRkOSBweTNrCis1ODA3NyAwOTI4N2YyMDU1YWI1ZDhkZjE2NGVjNzk0Y2I4M2FiYmRjMzg4MDE4IHB5M2sKKzU4MDc4IDg3ZDQxMWViYmFlMGUyNDI3YTlhZWNhYmI1N2RkYjgyOGY0YTc2NmMgcHkzaworNTgwNzkgMDk5YWI4MjNiODRjNGExZWE0YWUxMGE3NWUzMTU4YmQ2NzcxZThiMCBweTNrCis1ODA4MCBmYTAyY2QyY2MzM2I4YjM5MzU4YmZlN2MwNTM2ZDUwNTNmNjA2ZDAzIGFsZXgtcHkzaworNTgwODEgYTdkYjllYmVkMjhhZDEyOWUwZDdiMGQyYTVmOWQ2OTk2NjA0ZDI3NyBhbGV4LXB5M2sKKzU4MDgyIGQ5ZmM5MjhkYjFmYWY1NjQ0YjU4ZjA5ZDU3ZDQ2NTY0YmYzODE5NjMgYWxleC1weTNrCis1ODA4MyBhNjY4OTc0MTlhMzRlZmE5NzhhY2FhMWMzYmUzYWQyY2Y4ZDFhNjBkIGFsZXgtcHkzaworNTgwODQgNWE1MWQxYjY1NjI5OTVkYTFlMmExOWE4MWY5Y2VhYmVjYmViODE3OSBsZWdhY3ktdHJ1bmsKKzU4MDg1IGQxNTUyYzE1MGU5MTRkN2JjYWMyMGI2ZGFiNDJmZjI3YThiZmMwYmMgcHkzaworNTgwODYgNjBmYjk4NjEyYTllN2RhY2Q2MmI0NWM0NjFjOTU4NzY0OWNmOWQwMCBsZWdhY3ktdHJ1bmsKKzU4MDg3IGNlYTZhODBiZmZiMjliMGY4M2YyOGJmNWQ0NmM1YjNmNzIyMGQ2Y2EgbGVnYWN5LXRydW5rCis1ODA4OCAzNGI1MDAwMWRkMmMzNTc3MjZiOWQ0ZDNmMDU5MzY3MjQ4OWJhMmY4IGxlZ2FjeS10cnVuaworNTgwODkgODYyYWU0M2NmYjJiMmUyMTZjZTgwYzZhZGM5NmUyMWRkOTAwMGIxNCBsZWdhY3ktdHJ1bmsKKzU4MDkwIDc4YTdiOTlkOWY0MmEwZmMzMTNiZjRhZmFiNjE4MmYzNGFiNjU5MjAgbGVnYWN5LXRydW5rCis1ODA5MSBjZWQyNGNjYzQ5ZGQ2YmIzN2U2YzgwZWQ0NTk5ZTZmMjkzZWM3YzQ3IGxlZ2FjeS10cnVuaworNTgwOTIgYWMxOThmYmQzNzAwNGZjYTgxOTRjNTVlMDA2OGU2Mzc2NDYxOGU3MCBweTNrCis1ODA5MyAyODJlMmQwYzI5MzcxYzExMzQxM2FhNzE3ZmMwYWM5NTAxZjcxZmQ4IHB5M2sKKzU4MDk0IDViZmZiNmM3OWMwNjExMjQwY2M2Y2UzOWZiYTI2MTE1MjhmYjI3ZjkgcHkzaworNTgwOTUgMjZhZTIxMDk2OWMwNWU3YmY1NGExNDMzN2ExOTI0NzQ5YWZiNjczZCBweTNrCis1ODA5NiA0YTZjNzg4MjI2ZjVjMmZkODExMWEwMzMwN2UzNWNkNjdkYjQ4ZjcyIGxlZ2FjeS10cnVuaworNTgwOTcgMTkzMDIwYmY1MmRjMzU2YzlmNjhiZTRiZTU2NzNlOWI3YzJlMDY2OCBsZWdhY3ktdHJ1bmsKKzU4MDk4IDFkYWQ1OGUwMGMzYTUwYWQ3Zjk2NzNlMDcxNjE0YmJkNGYwMjNiNDAgbGVnYWN5LXRydW5rCis1ODA5OSAzMzgxN2RhNTNmZDc0M2E5NGU5NmE3NjU0OWZjZThhNmQ4MWI0ZGI1IGxlZ2FjeS10cnVuaworNTgxMDAgMjBhODBiODNhNmM1MjY5NmZmZGEzZmFjMzkzOTA0ZWQwNDdkNmQyMyBsZWdhY3ktdHJ1bmsKKzU4MTAxIGIzYTRhMTRkOGFjMzEyMzE5NWI5MDkzNzE3N2VjYTBiMWI2N2FjYjMgbGVnYWN5LXRydW5rCis1ODEwMiBlYmRmMmMwOWMxODk5MDg3NDJmYTk0NDY2MmQ3NzM0NGEwZWE1OTBhIGxlZ2FjeS10cnVuaworNTgxMDMgYmZlMThiOTA3ZDg3MzVlNTFhOTc2MzljODllNDBiMzk5NGE5NmRkZCBsZWdhY3ktdHJ1bmsKKzU4MTA1IDE4ZDVhYTUxMzVjYTNhNTMzZGRhYjAzMzhmZDQzYmZjZjYzOGRiN2YgcHkzaworNTgxMDYgM2ZmMjQ5OGNmNTQ4YTc3MTcyYTljY2M0OWY5MWNkZTBhZTA0ZDQ4NiBsZWdhY3ktdHJ1bmsKKzU4MTA3IGU4Mjg3NmE2MjFiNWY0MzgyMjQwZWI3MjcwM2VjYWE4Nzg2ODczMDEgcHkzaworNTgxMDggYzViNmFlOTQ0MGI1ZGZmNDFkNWUyZWExNzc0ZTg3MDkwODEzNTRhMiBsZWdhY3ktdHJ1bmsKKzU4MTA5IGVhZDdjM2M2YmUxYjlhOGQ5MDlhYmJiOTA3N2I3MDk5MTllOWE0MTEgcmVsZWFzZTI1LW1haW50Cis1ODExMCAyNzRmZTRiYmUzZTA3MGQ4YzQyNjI3NDc2MTU2NzAzZTI5ZmIyNzA0IGRlY2ltYWwtYnJhbmNoCis1ODExMiAyNWVhNGU2NmY5YTAwNDgwYzUxYjUzNDdhZDcwZjg4MTgwYTA0YTU1IGxlZ2FjeS10cnVuaworNTgxMTMgNjM3YmZiMGM1ZGFlODVjZmI3MDRkZjFlZmE2NzQwZDQxOTRhZTRlOCBweTNrCis1ODExNCBjYTA2YzRhMzA5MWVlNzRiNWNhMjI4NjJhYzkzZjNkZTk0NDE5ZDVhIGxlZ2FjeS10cnVuaworNTgxMTUgNTU1M2Y4YjRkZWMwZGUwODA3ODRjYzAyN2QyOGMyNDQ0MmExNDllMCBsZWdhY3ktdHJ1bmsKKzU4MTE2IGI1Nzk1ZGE3ZGQyNjNhNTE1MTI0MjNkNmRhZmYwODcxYTQ3NWI1YWEgcmVsZWFzZTI1LW1haW50Cis1ODExNyAwODU4ODg3NmU0YTc0Y2Y1ODExNTY0ZTVhZjZjNDRmMDI1YjcyZGFhIGxlZ2FjeS10cnVuaworNTgxMTggMjAzOThiNTUyNjZjOTZiNWYxZmIxNjdmYTM3YTdlOTA3YWU5YzgwOCByZWxlYXNlMjUtbWFpbnQKKzU4MTE5IDg0MGZmNThkMWU5ZWZhNDhmMDMzODdmNDY5NzQzNzg5YTI1MThlZjUgbGVnYWN5LXRydW5rCis1ODEyMCA3NTZhN2I3Y2RjNGU1YWQ5OTYwYmZjMTRkNTA0YmNjZjllMzc4ZWEzIHJlbGVhc2UyNS1tYWludAorNTgxMjEgOTAwNzE1NGE3YzQ5MTU3NmYzYThhZDhmYjRlZjZlMjM5Y2NhMDI1ZSBsZWdhY3ktdHJ1bmsKKzU4MTIyIDA2ZWZlODM1ODA0YTJkMmE2YTU0NjUwZDViOWI1YzQwNmI4Nzg5MmEgbGVnYWN5LXRydW5rCis1ODEyMyBjMzhlMzUzZTg3NjFlODQwMDQ2YjY0N2M2NzZlZGNmZjVhYTdhM2M1IHJlbGVhc2UyNS1tYWludAorNTgxMjQgMWUzZjU3ZTczZTA0YzNhZjM2ZTZiNmVkMDZjNDJlYWE5OTg3OGRmOSBweTNrCis1ODEyNSBhMGQyMDEyZmY0YzE1YjVlY2M5Y2MxNWIwYjk0YmU2Mzc0NTM0Nzk3IGxlZ2FjeS10cnVuaworNTgxMjYgODRkYzg2ZjIxMTk2NGI3Mzc0ZTExYzc4MTVjZmFlMDUxZTE5ZTA3YSBweTNrCis1ODEyNyA1YWI1YTVjNzM2NjhmZGI5YmU1ZDJjZWQ0MmI4NzI4Zjg2Y2Q1MmE0IHB5M2sKKzU4MTMxIDk0MmZhMWM0YTlkMGVmMDEyNjZkNWY3NjNhYTg0ZGY1YTUwOTI1ODIgcHkzaworNTgxMzIgYmYyZDhiNzk0OTNhYTIwMTcyYzJhNDBmNjg4MzUzNWVjY2JhZDI2YiBweTNrCis1ODEzMyA3MTA3ZjM5YzJmNjZjMjBlNDMwYmE3YTU1ODk0YjRkYTRiMDBhNWM5IGxlZ2FjeS10cnVuaworNTgxMzQgMzllYmNmMGE5OGI0ZDEzNDdlNzdmNmJlMjg5YmM2ZDkyMDAzNGFiZCBsZWdhY3ktdHJ1bmsKKzU4MTM1IGUxMDAzNzFhM2Y2MmRlNTNhZTJmMGE1YzgyNTViMGQ2MWE3YTUwOTIgbGVnYWN5LXRydW5rCis1ODEzNiA5NDlhMzViMjdkMjA0MmRmYmRjOWUwZDUwMzRiZTBiMmI0NmFlZjZlIHB5M2sKKzU4MTM3IGIyZGNkNzU3YTZhMzc1ZWNmZWUyYTY1ZWY2NjljZjBhYzBkNzI5Y2EgZGVjaW1hbC1icmFuY2gKKzU4MTM4IDUyN2M0NGVmMjZjY2QyZTM4M2IyMWVkMzk2OWM3NjE3NmZkOTIwY2QgZGVjaW1hbC1icmFuY2gKKzU4MTM5IGM3OWEyZjBhNzAzNDJkNDRjMmY4NzdjYjdlZGQwZDhlZjUyZWI0MDUgbGVnYWN5LXRydW5rCis1ODE0MCBjNjc4NTExMzBmYzRjNmU5YWNmYzg1ZGEyN2NiZTM0OWZiOGIyYjliIGRlY2ltYWwtYnJhbmNoCis1ODE0MSBmMTRmYjdiMDNkY2ExZWI3Njk2NTYxMjEzYjUwZmJkMDg2MDc1MWI3IGRlY2ltYWwtYnJhbmNoCis1ODE0MiA5OGJhNWMyMjExOTg2Y2MyYWI5ZmY0OWYzMDY3ZGQzN2ZjNDgyYmJmIGRlY2ltYWwtYnJhbmNoCis1ODE0MyA2M2YzMTU0YzczMWQwMjJjYmIwOTg5OTM4ZWM2NjdkMWM2YzhkMzcxIGxlZ2FjeS10cnVuaworNTgxNDQgNjNjOTU3NjNhNDNiZTRlOTE5NDRkYWYxOWVhMGYwMzhlNzc1Y2I2NSByZWxlYXNlMjUtbWFpbnQKKzU4MTQ1IGM4YzdhOTQ3YTY0MTk3Yjg2ZWZlOTQ0NWRkM2Y4ODcwOTNlZWI5ZjQgbGVnYWN5LXRydW5rCis1ODE0NyAyZjhiM2VhNjJhMmUxZWFjYWI0ZWQ5MDIzOTg3NDA4OWIxMjk0OTQ0IGxlZ2FjeS10cnVuaworNTgxNDggZGY4ZDMyZDVlNDQ0MTBkNjZhMTJlMjQzZjg2ZTE2OWJmYmEwNDU5YiBsZWdhY3ktdHJ1bmsKKzU4MTQ5IDYyYzNjMTA0Y2EwMTIwMzliNjlmN2Q5NDI1YjU5ZjE2YTljNzlhMGQgbGVnYWN5LXRydW5rCis1ODE1MCBlYjk4ZjIyM2Q2ZWFlYWQ0NWZiMTg3NTM3YmJjYzczYzQ0YzZhYjNiIGxlZ2FjeS10cnVuaworNTgxNTEgOGI2ZGM2NmUwZWI1NGVjN2FmNmZlYTE0NmIzMWViMzU1ZDMxMDVlYyByZWxlYXNlMjUtbWFpbnQKKzU4MTUyIGUwZjVhZjE0Yzk4ODNjYTQwMDVmYmNjMDEzMDcyMDY4ZWRlNmMwYTQgcmVsZWFzZTI1LW1haW50Cis1ODE1MyBlNTFlZGRlMjgwN2YxZWExMWUxYjczNjkwYWE3YTQ3YWZjNDdlYzcwIHB5M2sKKzU4MTU0IDA1ZDdjM2QwYjc3YTIyOGFlZTRiODFlM2U2MjBkMmNkZjg1NDkzYzMgbGVnYWN5LXRydW5rCis1ODE1NSBmZGZmNDhmODdmMzVlOTA3NTc4ZGYwYWU3NGE5ZjM1ZDI3N2Q1NTJhIGxlZ2FjeS10cnVuaworNTgxNTggMTMzOTFmOWQyMGVhNDk5MjYyZmNjZjQ1N2FlNjkxZmRiOTZiNTYwYSByZWxlYXNlMjUtbWFpbnQKKzU4MTU5IGUwMDIzMzk1ZTUzOTMyOGI5ODE5MGQxNzdiYmViYmRlZjdlN2Q4NzEgbGVnYWN5LXRydW5rCis1ODE2MCA3M2YyYzlkMTZjZjRkNzVjNGNlYTRkN2Y2NjJjMWNiOTVlNTg4MTFjIGxlZ2FjeS10cnVuaworNTgxNjQgOTA0MTk2NWE5MmYyZWY2NmYwNWVkMDUxODc0NmI1NGUyNWFhMTI0NCBsZWdhY3ktdHJ1bmsKKzU4MTczIDFiNjZlMmE1Nzk2ZjE4Yzk0NzVhNmZjNmM0ODAwZDgyZTFlYzVhMWMgbGVnYWN5LXRydW5rCis1ODE3NSAyZTdkZDIwMWVhMWQyYzdlYTllODYyOGE3YmU1MWE0NzVjZWFkZTM1IGxlZ2FjeS10cnVuaworNTgxNzYgNzYzMDI0OGI1OTNjZGZkMjAzMDcyMDcyYzcwZTU1OTVjNTU0ZTY3MSBsZWdhY3ktdHJ1bmsKKzU4MTc3IGFlOTgyMjkzYzFhZTA4OWNiN2YxNjNkOTMzZjFjOGFkNmI5MTY4ZDYgbGVnYWN5LXRydW5rCis1ODE3OCBlMzEzNzk1ZWExNzQyZGRmYWUxYzU2YmM2YmY4MDMxNzhhMmU1MzUwIHJlbGVhc2UyNS1tYWludAorNTgxNzkgOWNjMTMyYzg0NjFlYzY0NTcxZjQyMjY3Nzc5MDA2ODRhNDk5YWIwOSByZWxlYXNlMjUtbWFpbnQKKzU4MTgwIGUwMWRkMmJmMDk5YTVhZGEwYTU3MjMxM2M4MzE1ZDM3NzExOGVmNDYgbGVnYWN5LXRydW5rCis1ODE4MSA4ODkwYmU5Mzg2YjdhYzQ3YTYwODc5ZGNiZjVlZTY1ZDc5YTk4ZWYzIGxlZ2FjeS10cnVuaworNTgxODIgNGU1N2MzNmY2ZDJlMzY2MjI4MzJlNDNmZjk4ODIxODY5NTU3NzI2YiBweTNrCis1ODE4MyA1ZDM0MjhmZjdmZmExODIzZGFmMjIyNTEwZDlmYzIyZjljZjBhNTc3IGxlZ2FjeS10cnVuaworNTgxODQgMzYzMjAzZDc1ZDY5ZjNkZjg3MzY5NmJlMDRiMzQwNWRhODA1ODBhYSByZWxlYXNlMjUtbWFpbnQKKzU4MTg1IGM1NDkwYTllYWFlMmY3ZWZjM2VjM2IwMzQwNTc1M2QzZTU5Njk1YjAgbGVnYWN5LXRydW5rCis1ODE4NiAyZmRmZjBiNWJlYjZhYjdjNmYxYzc4YzUxN2M2ZTQ1YjU4YWQ3MTIyIGxlZ2FjeS10cnVuaworNTgxODcgNGU1NDNmYWUwZGVkODlmOGEyMTBjODc0ZGI5YmU3NTc1YmY5ZmE0NSBweTNrCis1ODE4OCA1MzM1Zjg5ZGYwODFiYWU0ODdhZDQyMThhNmEwNjBlOWNhZWZmZTM1IHB5M2staW1wb3J0bGliCis1ODE4OSBlMzk1YTYzNmVlNGE3Y2VlNjNlZTc4ZjkxYzE0OTZjYjcyMWIzYmVmIHB5M2staW1wb3J0bGliCis1ODE5MCA2NDFkNGNhYzk3NTZkOGE3MTczY2FkOTdjZWQ1MDdlYTkxZmM5YzFhIHB5M2staW1wb3J0bGliCis1ODE5MSBjMWJjYjYzMzkzNTc3NGEwOThmY2U1YWM1NWFlNzBlMjIxMTEyMDRlIHB5M2staW1wb3J0bGliCis1ODE5MiA1OTc1YTczMTZjMDY1MzIyZTg5ZTVjMWMxYzc0NzNjMzg4YzhmZWM4IGxlZ2FjeS10cnVuaworNTgxOTMgYjkyMzZhNzVhNmU1YWVkNGE5OTdjMGMxN2JjYjJjYTY3ZjVlMDkyMCBsZWdhY3ktdHJ1bmsKKzU4MTk0IGVmMjIzNTQ2YjRiZDZkZTMzODhjZGNlNjEzOGE0YTY4Yzg1MjVmZDggcHkzaworNTgxOTUgNmEwZWEwNjVhOTlhMmY5OGU4MTIwZTQxY2FhMjk2YjAwY2U2N2U3MSBweTNrCis1ODE5NiBmMTkyNDQyZjQ0ZDgxZDhhNGMyZjE2NzE5YmViZTYzZTM0ZTMzZTJlIHB5M2sKKzU4MTk3IGIyOTU4MmJkYzkzY2Q2Y2NiYWVhZjE0NmRkZGRjNjcyODFkOTc3ZmMgbGVnYWN5LXRydW5rCis1ODE5OCA3ZGRkNDA1MDNlMWExZDAwMjY5Mjk2YTRlNWMwZmZjYzIzZTU3Y2ExIGxlZ2FjeS10cnVuaworNTgxOTkgNzVlNmJmYTJkNGQyMjBlN2MxYWJlNmJjZWNiMjVhOThiZDZhMzI4YiBsZWdhY3ktdHJ1bmsKKzU4MjAwIDNlZDJmNzcxNjNmYzMwZjhmOTI3YmVmNGZjZWU5ZjcwYTFlMDczYmIgcmVsZWFzZTI1LW1haW50Cis1ODIwMSBmMmVmOGFlMGJjMTg3NTI5NTU0NzJlODBmZmZkODYzZmI4MDBiZDEzIHB5M2sKKzU4MjAyIDFiYWMzODZjMTdjYzY5Yjk5ZDMzMTViOWZhYTE1MDUyNmM5ZmY2MTcgcHkzaworNTgyMDMgZWIzOTZkZTgyYzAzMGZjNzBhZmJlMWM0NzY2MjFiMGU3ZTQxYTgwZCBweTNrCis1ODIwNCA4ZTEzZDNlYWNhY2NiNGJlN2NiYWY2ZWFjNzdhMzEwOTViZWNlZDM2IGxlZ2FjeS10cnVuaworNTgyMDUgNjkyNDkzNzcxYWUzMjJjNWQ2ODgwNjU4NzU1NjUyYjExODNjNDhiNCByZWxlYXNlMjUtbWFpbnQKKzU4MjA2IGQxZmE4MjBiMmRjYTBkMWVhZDc3NTcxM2RjM2QwMjlkYTRhNTc0NDMgbGVnYWN5LXRydW5rCis1ODIwNyBjMTllYzk1MTVhMzM2NzYyNWJhNDYzODA3YWZiMjBjNWE5ZTQ4MmY4IGxlZ2FjeS10cnVuaworNTgyMDggMzU3ZjU0MDE1YTJkM2JhMTBjZGYxMzFjODM0MzZjYTNiNGUyMmY1YyBsZWdhY3ktdHJ1bmsKKzU4MjA5IDQ0YWE0ZmZkYzFhYzk2Zjg4MWI2MjczZDIzNDhiMGY2YzY3MzkzMzEgbGVnYWN5LXRydW5rCis1ODIxMCA4MTQ3ODQ2NWZlZjNiMTQ3Mzg0NTlmYjdmODUzMzFlNWVkYWZjYjQ1IGxlZ2FjeS10cnVuaworNTgyMTEgMzU3Y2YwN2EyM2ZlMzY2YmY2YWI2ZGViYjU2MTNiOTcwNDg4ZmQzYiBsZWdhY3ktdHJ1bmsKKzU4MjEzIGIwNmIxOTFiN2NmYTBiODdhZWVmZThjZmQ0MzJlM2M3NWU1MmEzN2EgcHkzaworNTgyMTQgYTVkMzdjZGNkMzE2MTczYTEzNWQzYzdiOGVjNzMyMmRmZTE2YjUyZSBweTNrCis1ODIxNSA1MjFiZjg3Y2ViYmQ5ZTA4YWZkY2MxN2M0ZWZlMDM4NWI5MDhjZWNlIHB5M2staW1wb3J0bGliCis1ODIxNiBlZjE3MjE4MzYxNzgyYTA4MTg3NGZkMjk5MjU5OTYxNDM2MGU3ZjY5IGxlZ2FjeS10cnVuaworNTgyMTcgNDA5MDkxYjI4YzdlOWQ2ODM0NmI0MmNkMTg4NWE0ZmU5YjVjMDg4NiBsZWdhY3ktdHJ1bmsKKzU4MjE4IDdkMTRhMzE4ODg1MDFkYzFkOTAxODc5MzU2NjQwZWE4NWUzMmVmNmYgbGVnYWN5LXRydW5rCis1ODIxOSBlMWMwOWZhNmZjMGY1ZDI2ZmUzMmIyOTkwODliOTlkNzZlNTM3NWRhIGxlZ2FjeS10cnVuaworNTgyMjAgZGMzOWRkZGVhMzMwMDQ1ZTk0NTQ2NjMxYzkxYjY3ZDdiZmI3Njk4ZSBsZWdhY3ktdHJ1bmsKKzU4MjIxIDQ2YzQ2N2RlZTY1OTM4ZTczZTliNDNhMmQ3Mzc0YTE5NWYyZjBkMzMgbGVnYWN5LXRydW5rCis1ODIyMiAwYzhmZWM3NjExMWM3ZmFlYzYyMWNhODljNGVlOTk2MDhlNDI0NzA3IHB5M2sKKzU4MjIzIGRhOTUxOTc5N2M2MTA1OGExOWFhMGVjMjllNDg3OTk3NTFlNmJiZGEgcHkzay1pbXBvcnRsaWIKKzU4MjI0IDE4MzdjYWU5MGU1MmU1NTBmYmFjNGU1NTY0NzFlYWVmMjFmYzc0OTYgcHkzay1pbXBvcnRsaWIKKzU4MjI1IGVjODQ2ZWJhYjJlZmEwYzU3NTE2MWMxMGRhZjRjOGQ3ZjA4OWI4N2IgbGVnYWN5LXRydW5rCis1ODIyNiAwZmY0MWIxNjNmNWJhMWY1ZDI4OTk5MmQ2YWExNDRjZWE1ZjViNmNlIHB5M2sKKzU4MjI3IGYzMWQ0MTU1NTRjZGJmYzViNTQ5ZGQzNzZlMmFmZGRhMTkwNmJjZWQgcHkzaworNTgyMjggZjZjYmFiNzU5MjhmNjg2NDljNDU2YzA5ZDE2MmViOTdmMGQ1YmU0MyBweTNrLWltcG9ydGxpYgorNTgyMzAgNzNkMjZjZDhlMGI1NjRmMTA4MzJiN2JlZmI1OTkyYWQzMDI2ODQyMiBweTNrLWltcG9ydGxpYgorNTgyMzIgZmMwMzM2ZjQ0N2FlYWYwYjVmZjNlZDY0NGVhYmE0MmYxNTBlYTMyOCBsZWdhY3ktdHJ1bmsKKzU4MjMzIDM3ZmZiYjdhMTk2MjkzMGY3MmE1ZDRiMGY5NWUyMGVmMjJkYTZjYjUgcHkzay1pbXBvcnRsaWIKKzU4MjM2IDA0NzZhMmNjNTY1ODc0NDNjZjQ2ZmRlYmNmODg1MTEwNjExYzg4ZmYgcHkzaworNTgyMzggY2VmMmVkODI5MmI2Y2ZkYmI4NTQ2MTI5ODVhMmE2ZTk1NzMwNDUzMCBweTNrCis1ODIzOSA1ZjczMzhhNGQxZGRkZDI2MTgxZjYwYWRhYWFkNDk2YzcwMWJmODc0IHB5M2sKKzU4MjQwIDU1YTY2MzE2Yzg5ZWQyY2IxNjE0YzI3YTU1NjBmYmQ0NWJkZjE0NjYgcHkzaworNTgyNDEgYTRkZTMxMjIxNTc4NDdmMzA4ZGJkNjJiM2ExYjAxZjM1MTRmYzUwYSBweTNrCis1ODI0MiBiNGU2ODhmZDY2MDJhNTY5MDE1MDNlMjY0NmE5N2VkNzJhZDk4MTY3IGxlZ2FjeS10cnVuaworNTgyNDMgOThmZjliMmZmNzU3NjUxZDVkMmE2ZmIzNjM4ZTEwNTViMDY3MmM5NyByZWxlYXNlMjUtbWFpbnQKKzU4MjQ0IGI5M2VkMDQzZjI3MjFiNWJjZmNlMGUwMDJmYTg0OGY4MWNhMzZlZWUgcmVsZWFzZTI1LW1haW50Cis1ODI0NSBlOThlMTFkNzc2OGM2NWI2ODIxODI3MmRkYWUzYTNkNTEwMWVjYTQyIGxlZ2FjeS10cnVuaworNTgyNDYgYjcwZWRiNWE3Njg4NDkxYzczZjU1ODUxNWJjNWE3MjI3ZmZmODNjZiBweTNrCis1ODI0NyA3NzNlOTc2YmFiM2FmYjUxNDlkMjRhM2UxZDE0Y2YxMzFjYzVlZjRlIGxlZ2FjeS10cnVuaworNTgyNDkgMGI2MTRmZDJkYzJhZTA1NmI2ZTA5MDFhNjk3MDgxZjY0OWMwMGNlMiBsZWdhY3ktdHJ1bmsKKzU4MjUwIDk0NjNkZGExOTE2MDEzYWY4ZGM3NWFhMjhkNDRlZjZjY2ZkODAxOWEgbGVnYWN5LXRydW5rCis1ODI1MSA1M2Y3YzkyYjQwMjQ3NTVmNjIwZDkzNzEyMDE5MjA3NDg3Y2E4NzgzIGxlZ2FjeS10cnVuaworNTgyNTMgMmRjMGU2ZTNhZDIwMGU2YWFlYzNjYTk4ZmNhNDA3NDQ3YTc4NjdkOSBweTNrCis1ODI1NCBmODFlMzljNDM3M2RhNTgzZGM0NTMzOGM1M2E1MWI5Yjg4OGJhODFkIHB5M2sKKzU4MjU1IDc5YjBkYjAzNTZkMzFjOWE2NGE1ZDg4Y2FhNGFiNTNjNDM5Y2Y1OGUgcHkzaworNTgyNTYgOGQ3ZTkzYjQ3Y2FiZDUzZjczYzM3NzhkOGE2ZjhmNjg0OGQ1NzUyNyBweTNrCis1ODI2MCAxYTc5YTQ1MDAzZjVkYjk0MjY4MDkwYWNlNjNkYTBhZGMxNWI4ODcwIHB5M2staW1wb3J0bGliCis1ODI2OCBiOTAyODZhYjg2MjlhZjAyNDEzODFjMDQwYjM3ZTg0MTdiZTljMTU1IGxlZ2FjeS10cnVuaworNTgyNjkgODU2ZjhlYTkyMmRmNTEyOTQyZGJmZDQzYmQyOTNhMjIxYWZiOWMyMyBsZWdhY3ktdHJ1bmsKKzU4MjcwIGY1MzAwNTk4YjExY2FkMTMxMWUzMDhiMmMwNTExYzcxYmJhYjU1MDcgbGVnYWN5LXRydW5rCis1ODI3MSAxOTQ0Zjc5ZGI4YWQzNDRmZTVlZDFlZTk1Nzc5ZDVlZTg1ZTk0NzVjIGxlZ2FjeS10cnVuaworNTgyNzIgMTNiYWFkYTJhNjAxNzFlNDIyYTQ4N2JjYTlkMWYyNjc4NGFlMDA1OSBsZWdhY3ktdHJ1bmsKKzU4Mjc2IGE3YzQ4YWI4MDllYzQ4ODFjOTFiY2I4MzRkNzhlODdmOTM1Y2Q1ZTQgcHkzaworNTgyNzggMGZmNDZlZjk0NmIxM2RjNTIzMzUzMjI2Njc3YjIzYzEwZmQ3OGQ1NSBweTNrCis1ODI3OSA5YmM5ODU1ODJjYjI4NTY3MGMxOThjNDdhZWI0Y2YwN2I3NGZmOTY4IHB5M2sKKzU4MjgxIDdmY2Q5OTQ1ZDFiZmUzODQ3NzYzN2RiZWE4MjI4NTA5ZGIzZGJkMjkgcHkzaworNTgyODIgZTg4ZjgzYzNiMjVlOGM5ZTUyM2FhMmQ1MGFkYjZlY2FhOWU4YjIwZiBweTNrCis1ODI4NSA4NjY3MTcyNjljYTM4MjM1MTM0NGM4Yjg5Mzk5ZDVkMzA4ZjkxZDQ3IHB5M2staW1wb3J0bGliCis1ODI4NyA4ODBiMGIyMmMxNWE5ZjcxYmNmMmRlNjgyYzAyYTAyMTJkN2M0NGYxIHB5M2staW1wb3J0bGliCis1ODI4OCAzODFlZDQxMDAzZTc2N2FmMjk4NGNlYTU3NzQ4YTI3NzU2MzYyMWRkIGxlZ2FjeS10cnVuaworNTgyODkgMTA2YTcxYzUxNDc3NTFiYmZlMDU2YmIxMjc5NGVlMjBmYmI4M2RjYyBsZWdhY3ktdHJ1bmsKKzU4MjkzIGExY2E0ZWE0MWU3ZTlmZDU4MDk3OTJiYzMyNDYxNTEzODExY2I3ODkgcHkzaworNTgyOTQgOWQ2ZDlhYzk1YWUxNzYwZDAxMDNhZjhiNGY3YmY2MWIzMDAxZjU4ZCBsZWdhY3ktdHJ1bmsKKzU4Mjk1IDc5NDMyNjJlNWZjNDM3NjdkMDQ5NWJkYzU5NTFkMmRjMDJlYWVjOTggbGVnYWN5LXRydW5rCis1ODI5OSBjOWJmNmU3MDMwOGU3NjQxYWNiYjczZGExYWNkYzhkMzc1N2M3NmE1IGxlZ2FjeS10cnVuaworNTgzMDQgYjEyY2Y0NjdiMDVjYzJkMzc3MmYwNDI2OWFhODM1OTgxMmMyMjc1YSBsZWdhY3ktdHJ1bmsKKzU4MzA1IDMzM2IwNTJlOWRhOWEwYTIwY2RjYjNiZjVmNDZmMDkyMzdiNGJlN2UgbGVnYWN5LXRydW5rCis1ODMwNiBjZDI4MWMxMjgzNmRjNGYwODdjNTRjMDY3NDU3MTg3M2VlMDgzNTljIGxlZ2FjeS10cnVuaworNTgzMDcgNzMyY2EyN2E2NzhjZmVjMWVmNDRlNWNlYmQyYjMyOTYxNGY3ZWRkNyBsZWdhY3ktdHJ1bmsKKzU4MzA4IDFiMWE1NjUyZmVkOGY3NzZmOGU0MWI3MGUzYzhlNDdmYmQ0YmE3NTUgbGVnYWN5LXRydW5rCis1ODMwOSA5YWU0ZThhNTM0ODY2MmRlY2EwMmQ2ZGZhYjU5YThmZDNiNzQxYThmIGxlZ2FjeS10cnVuaworNTgzMTAgMTc2YjYxMzFiMGJhZjQxMDNkZmY0MTI4NmNlZGIyM2M2N2UwZjNiNiBsZWdhY3ktdHJ1bmsKKzU4MzExIDY1YjM2NTRjNjdmNjMxYzY3ZTQzNjBhMGY2ZmFmOThlYTUwNjVhYmEgbGVnYWN5LXRydW5rCis1ODMyNSA1YjUyNDlkZDE2YjQ1MDc5YjE4YzBjZjRlYjA3N2I2Y2MwMDYyNDM0IGxlZ2FjeS10cnVuaworNTgzMjYgNzNmNDk2NTY0MjBiY2E3NzE1NzJmYTIyMTRmYTYzOWIyZTEyNTg4YiBsZWdhY3ktdHJ1bmsKKzU4MzI3IGU4Njk0YWI1M2E1ZWNhM2YyMWZhNjNkODBkMWRlZmM4OWZjYWRhNzkgbGVnYWN5LXRydW5rCis1ODMyOCBjMGFiZGQ1NzllYjI2YWZmNDg3MWZjYzUyZDUyZjc1YjhlYmRiNDJiIHJlbGVhc2UyNS1tYWludAorNTgzMjkgZjJjOWYyNGEwZjVhODlkNGQ4ZGUzYmEyMmEzOTI1MGE2Mzg3YTExMiBsZWdhY3ktdHJ1bmsKKzU4MzMwIDk5NTY3NzIxOWE2NTU4MmE4NDg2ZGMyN2Y0NjQyM2ExMzBiMDNlZTYgbGVnYWN5LXRydW5rCis1ODMzMSAyNzUxMTU5OTliNTgxMjFmZDMxZDZhZDk4ZTgxMzcyODI1OWQ1ZTJlIHJlbGVhc2UyNS1tYWludAorNTgzMzIgMWJlYTZmYWZjYzUwNTcxMDk2NTNmMWU1ZWIyNjJkYTRlODc5Nzk2NSBsZWdhY3ktdHJ1bmsKKzU4MzMzIGE1NDMwMDYzMDhiYjliZDk0MGViNWIxOGJiOWZiOTQ5Zjc5Yjk1ZmQgcmVsZWFzZTI1LW1haW50Cis1ODMzNCBlODQxMTk3YzFkMTdmNTVmMGIyN2U5YjM5M2YzOWIwYjY1NWM1OWVkIGxlZ2FjeS10cnVuaworNTgzMzggMTdiMDczNzBhNzgyOTAxYWRmMTgyNjg4ODVjMDY2YjE0YTBjNGEwNCBsZWdhY3ktdHJ1bmsKKzU4MzQzIDY4ZmMxMDdkZGI1MGI5OGFmZDEzNjgxNmU5YjZhNWI2MDMzYTZmNGQgbGVnYWN5LXRydW5rCis1ODM0NCBmNzM1MzU5NWI3ZmE4MTlmOTZlY2NlYzYzMzFkYWQyMzA5ZmM5YjRjIGxlZ2FjeS10cnVuaworNTgzNDUgYWNkYWM0MWY3MTA5NzJhOTIyNTE1ZTYyOGE1ZTkzY2FjZDFhMGQxYiByZWxlYXNlMjUtbWFpbnQKKzU4MzQ2IGVkNDk5ZTM0OGExMTlkMjc3ZGRmZTIxODkzNjE3NzlmODRiMzAwNDMgcHkzaworNTgzNDcgYWUyYTk5ZmM3M2RhNmQyYmViMWEyYmIwOWQxZTJkYTIzNzg1OWI3OCBweTNrCis1ODM0OCBmMzZkMGY3MDc3ZmNiZjVmOTc2M2UyNzQzODYxNzRiNzQwMjQwM2Q5IGxlZ2FjeS10cnVuaworNTgzNDkgYWQzNjZlMzE2ZTMwNjRmM2I0NjdmZjNhMzMxN2IyZmQzNzUyOGJlZSByZWxlYXNlMjUtbWFpbnQKKzU4MzUwIDM5ZjRjNTA2Y2Q3MThiMDQzN2Y4MGZiMDAxY2FmNTRlNzc5MTlhMjcgcmVsZWFzZTI1LW1haW50Cis1ODM1MSAzY2QxNDYzYzkzOGQ2ZjdjODMyODBmNzk2ZTMxMjRmNjg4OTg0OGQ4IGxlZ2FjeS10cnVuaworNTgzNTIgMDc0MTMwYTA3M2I2NjgyYWVkOGU4MWVkZWFiZTM0MmVkOTkyNTRjZCBweTNrCis1ODM1MyAyMzE5MmIxYjcxZTI3NTU0ZGU2ZGYzMDY0M2RlYzFjZmY5ZWY4MWYyIHB5M2sKKzU4MzU1IDE0YWRkZGE4MzM0NDMzNzVlMjkxZWRjNWFhNjcxNTI0YjMwNDI1ODMgcHkzay1pbXBvcnRsaWIKKzU4MzU2IGY1Yzc5ZjQzYmJmNjk1ODZlMmZhYWNjMDZiOWYwODViOWFiM2M5MzQgYWxleC1weTNrCis1ODM1NyBhM2JhZDY5NGMyODM5ZGEzZWY3ZGY1ZTU1NThlZWZjNzc4YmUzMzY3IGFsZXgtcHkzaworNTgzNTggOTRlNTM2YzM2NDQ5M2ZjOGFjNjI2MjVjNWRhN2E2OWMzYmFmMmJjMiBhbGV4LXB5M2sKKzU4MzU5IDMwNGQyY2VhMTM3ODM1Yjc0ZDEyOTUzMTA0MmNjMWY5YjU3ZjU3OTMgYWxleC1weTNrCis1ODM2MCA4YzEwYWFjMzcwMzc5MjVkY2NiN2JiZGZiNGI3MTRiNjFiZmIzZmZiIHB5M2sKKzU4MzYyIDhiYTUzMDBjYjRiM2I1ZDZiMzgwNzFjNzU2MTk2NWRkNDVhZWUzMTYgcHkzaworNTgzNjMgNzY3ZTBjMzEwYTZhYWZhN2YwOWJjZGQ3YjU3YmRlYzQ0YmNjNTQ5MSBweTNrCis1ODM2NCBmNjE0M2M0MTE3MTM1NjUwMWU0NmFlY2FhN2RhZjA0ZTk3Zjg1ZDhlIGFsZXgtcHkzaworNTgzNjUgZjYwNjFjNzFhNGQyMzZiNmU4ZDUzYjhjYzM3ZjdlYmQ2MTkwMjY4MyBhbGV4LXB5M2sKKzU4MzY2IGZhYjQwODlkYWI5ZjlmMGQxNzVlZGU5Yjk0MDRjNzI4ZGMzNjM0NDAgcHkzaworNTgzNjcgZGU0MWU5NzlhZWJlYjg5OGNiNjZhOWEyZGU2YTI1ZWQ1MWY1MTU4YyBweTNrCis1ODM2OCAwNDU5NTJmZjA4Zjc0M2IyMzE2MzUyOWM3ZWUyYTNjYmQ1OTAxNDY3IGxlZ2FjeS10cnVuaworNTgzNjkgOWU2MDIwYmIyMzUyMmIzMWM4ZTk3MmQwMGE0YzM1NDU5Mjk5OGY0ZCBsZWdhY3ktdHJ1bmsKKzU4MzcwIDRkYjVkYWI3ZjIzNTg5ZGFjNzg0NDNkYWI0ZWNiNDBlMGFiN2NmMjMgbGVnYWN5LXRydW5rCis1ODM3MSBmZjRiYmU2ODIzZmM5YjkzMGEyYTllMWQxOTkzNzE2ODNmZmUwZDE1IGxlZ2FjeS10cnVuaworNTgzNzIgOTE5MDRmM2U3YmUxYmE0ZTc4ZTMxMTk3ZTVhYTMyY2VmMjUxNTZjYiBsZWdhY3ktdHJ1bmsKKzU4Mzc1IDY2MTRkNDJkN2YwYTMzNWQ5YjFkNDFlYTA1MWNhZDM5NTU1ZWEwZDMgcHkzaworNTgzNzYgMGJhMzgxMDBjZGE5MDMyNTE1YTc3YjhiMTljYzBmYTcyNjIzMzFmMiBsZWdhY3ktdHJ1bmsKKzU4Mzc3IDhiZDkxMDAzNmM5N2Y3NDBiNzBiNDljMTFhOGM5OTdiYWM5YzhmODggYWxleC1weTNrCis1ODM3OCA1NzEzYjE3NmRkYjY5ODQ4N2VlOGRiMDY0YTVlMTM1MTg5M2U5MWFhIHB5M2sKKzU4Mzc5IDI3YWY0NTI0OWE4MDNkMTVjNjAxZjc3MjQ0NWFhOGIxYThkZjkxMzMgYWxleC1weTNrCis1ODM4MCA2NTk4N2IzOGRmMmUzNThjZDMzMmNlZTJkODRlZjcyMDM1MThmOGRlIGxlZ2FjeS10cnVuaworNTgzODEgOTY1ZTcxNTQxNzdjNjk1MDU5MzgxMDg1NjEyYmNlOTU1ZjhhNTNjNSBsZWdhY3ktdHJ1bmsKKzU4MzgyIGViZjJhNWNmMTNmYmRlMWU0NWRmMGUyNmYwODdmNTE4MmVlNWE5YWMgbGVnYWN5LXRydW5rCis1ODM4MyA5OGY2MTgwYjliMzMzMGIxMDFmNGMxMDYzNjIxZGU2MDgzZmUwZDhiIHB5M2sKKzU4Mzg0IDMzMDIxZTQwM2YzYzY1OWRhMzNjNzA2MWFiNGE2NmQyNzEzOGI3M2IgbGVnYWN5LXRydW5rCis1ODM4NSA5YzMwMTVmYzViZjQ1OTk3MDJkYTdhY2YwYTkzZWYzOWE1M2MzNjY0IGxlZ2FjeS10cnVuaworNTgzODYgYzQ4ZjkzODFkZGYxMzBmNjc0N2MyYjRmZjg1ZWNmYTAxY2FiNmNkMiBsZWdhY3ktdHJ1bmsKKzU4Mzg3IGRjNmUyYWRmOGRkMmEzMDZlOTg2YjdmNmZmMzUzMTYwZmIyMjY4MDAgcmVsZWFzZTI1LW1haW50Cis1ODM4OCBhMWI3Njc1N2Q2MmVlMGZiMDYxNzU2YjMzZjQxMmFmNTEwYzdkNmMxIC4uL2N0eXBlcy1icmFuY2gKKzU4Mzg5IDI0ZDExMTgwOTQ4MDA5NGIzNzEzYjA5ZTRiNzcxNzE3MjQ1YTRkMzIgLi4vY3R5cGVzLWJyYW5jaAorNTgzOTAgNDdjMDI3OTFlYzZiMmM2YmYxNjBjY2I3NzY3YjdkMzhjZDQxODA0YSBweTNrCis1ODM5MiA0YTcyZmM1ZGZiNzliM2QyMGE3N2Y1YWNjMTBlMzJjZWI0MjVmZTM2IHB5M2sKKzU4MzkzIGM5NGRhODQ3NjVlZTMwMjUyYWI4NmY4YTA4ODAzMzkyN2U5YjYxYTIgY3R5cGVzLWJyYW5jaAorNTgzOTQgZmE5M2RkNGUzNGJjMjMwNDY3YjE5MDBjYmM2OTYzMmZlZjg5MWViMCBsZWdhY3ktdHJ1bmsKKzU4Mzk1IGJjMjViYWZhMzNiMWZjNDZmOGQ4MWEzNzBlOGEyYmUyZjk4NzdkMTggcHkzaworNTgzOTYgMzdkODI3MGFjOGQ5NjFiNDgzYjg1OWY4YTAwMWQ4ODE0NDkzYTVmYyBsZWdhY3ktdHJ1bmsKKzU4Mzk3IDM0MGU2ZmQ1ZDc1ZjA1NTU1Mjg4NDZjNDY4ZGY3MDhjMDkzNWNhZDMgcHkzaworNTgzOTggNDE1YjFiYWNmZWQ3YWYwMGNkMzU1NjVjMGUzM2QwMGY2MDYzYmNkYiBweTNrCis1ODM5OSA4YzVlNjBkZGFhODI3YjVmMDE3MzUxNWEzYjExMThmZGQxZGRhZjIyIGxlZ2FjeS10cnVuaworNTg0MDAgOGQ0MGM1MzQ4Y2E5ZDkzZDAyZDg4MGFiNzY4MWQ0MWM2MmZlNGQ1NiBweTNrCis1ODQwMSBkYTUyYjRjNzc2YTQ1NGZhMWEwZDkwYTU2MzBhM2JkYzc1MTJiMjQ2IGxlZ2FjeS10cnVuaworNTg0MDIgMDZiYTQyYzJjMGQwNzQ2YTU2ZDVmNmMzZmQxOTMzNjE1ZjJhZGY5NSBweTNrCis1ODQwMyBlNWQ2ODkzZGJiMzZlZjQ0ZTkwMjhiYjZmYzMzNWI2MWUzYTFkMzllIGxlZ2FjeS10cnVuaworNTg0MDQgMWQ1MmU3ODM4NDJkYTFhODA2NzEwODFhOWU4MzdjOTU5ZDAxYThiNCBsZWdhY3ktdHJ1bmsKKzU4NDA1IDlmN2RlMTg0MzFmZTk1MGQ1MzkxZTU3NzRlZWQxY2QwNDU4MTA5OTkgY3R5cGVzLWJyYW5jaAorNTg0MDYgZmZlYzQ5ZDNkMjE1NDcxZmJkZmVhZDdiMTFkZTZhMmNjZjhmYmJjNSBjdHlwZXMtYnJhbmNoCis1ODQwNyA0ZjllY2VhODE3N2NiZWQ5N2I5YTZjMThmNTIxMmZhZDhiZGEwYzg2IHB5M2sKKzU4NDA4IGI0ZDhmNzE0NTllOTQ5YmNkMDU3MjUzMjEzYWNkNDA5N2E2ZGZlNmEgcHkzaworNTg0MDkgNGMxODljNzE0NGI3OTRiNDY3YjM0YWFjOGNlNDVlNmQzMThmMDczMiBweTNrCis1ODQxMCAyZjMwYmZiN2M3Mzg1ZjM4ZDA0NzdkYmQ4ZTg1Y2RmYTQ1OWEwODMxIHB5M2sKKzU4NDExIGI5ZDE5ZDUxZGUzNjk3NWE1ZTdjNDU3MDVkOTY1NTYwZDQzMTFjMTMgcHkzaworNTg0MTIgNmU2MGY2NWZmMzY0N2M5ZjE3MDhjNWI1NGFmNjZjZTE2NzYzNTkwMiBweTNrCis1ODQxMyAyYjc0NmYyOGIzOTlhNzEwNjk3ZDhhMzEwYWMyMGNhYWQ2ZTkyZDhkIHB5M2sKKzU4NDE0IDk5MzcxYmQyY2E4Zjg3ZDliNWJiYzRjZTQwZWVjNWM4MzE3Yjg3NjUgcHkzaworNTg0MTUgMDI3MTBiODk3MDFlMDgzNzUzMTcxNWM2NGQ5MDE1Mjg4ZjdlOWY2NiBsZWdhY3ktdHJ1bmsKKzU4NDE2IDM5YzliNTYxMjQ1MWEyNzI3Mzg0NjNhODEwYWQwYzI1NmNjMGU0OTUgcHkzay1pbXBvcnRsaWIKKzU4NDE3IDM5Y2I1ZDk2Y2U3NzAwNGU5NzI3NGE0MWVmMDkwNmE2YjJmYmViZTAgcHkzay1pbXBvcnRsaWIKKzU4NDE4IDhjNWE0MzNhOWQ5MGU3ZGEzNTFlYzU1NDEzMmNmNDc2MWNlNDg4M2QgcHkzaworNTg0MTkgYmYxMDE0NDQ4YzQxN2Q5NDg1NmViM2MxMzdkY2MyYzNjZDQ5ZTRiYSBsZWdhY3ktdHJ1bmsKKzU4NDIwIGI2Mzc4ZmE2ZTE2NDkwYTcyYTRmNmZkNTZmZGNjNGMwZGI3MDEzN2EgbGVnYWN5LXRydW5rCis1ODQyMSBjYTliMDhlN2RjMjNkYTAxMGIwZjFkMWE3ZWZmYTI0ZDVhZDE0ODhhIGxlZ2FjeS10cnVuaworNTg0MjIgZTQ5YWU5OTgwODA4MjJlMzQ3MWE5ZDRhY2FiN2I5NTBmODY2YTZkMyBsZWdhY3ktdHJ1bmsKKzU4NDIzIDE2ZDRiOTA0ODUxZmUwYTFiMTc0NjI0NmU3ZjIzNmU2NjdlNGU2MWEgbGVnYWN5LXRydW5rCis1ODQyNCBjZGEwYjYyNTI3NWE2MWIxYTZiMWRjZTI0YTRlOGMyNmZhZWMyNjUxIGxlZ2FjeS10cnVuaworNTg0MjUgOWI2YTQ3M2NmYTIyOGIyZDcyZTY0ZmQ2YzliYzBlYjA2MzEzZmEwOSBsZWdhY3ktdHJ1bmsKKzU4NDI2IGE0NGU0Y2MzM2Y1ZTAzZGNlZTU5Y2QyNGMzMWNhY2RkNWU5MjYxZmUgcmVsZWFzZTI1LW1haW50Cis1ODQyNyBhMjYyMTc4YzFjMGFmNDUyY2M3MTlmZjNmOGVmMjUwOTJlZDNlMmU4IHJlbGVhc2UyNS1tYWludAorNTg0MjkgYTNmZDZlNTliYTgzNmVjZjQ3MTM4MDgwNjZjMmU3OGM2OTg1N2M3OSBweTNrLWltcG9ydGxpYgorNTg0MzAgODFmNTk4YTc2ZjU5ZmEzNDI4MGU2NmEwNDk2YzEwOGM4NWQ3NThhMSBsZWdhY3ktdHJ1bmsKKzU4NDMxIGZjMDQ4YjcyYmYzZDA4YWJhNDY4NDk2NWJiZDczMmVlNDc5ZDlmOTcgcmVsZWFzZTI1LW1haW50Cis1ODQzMiBkMGJhMzlkZTdhYjdlNTBjODEwMDMwYWY2OGRiMjBkYjRkZjMxMjlkIHJlbGVhc2UyNS1tYWludAorNTg0MzMgZmIzMTBiODYyMGVjZTFkMTY1YzU3NjA1NTBhOWFjZDI2ZTI1ZDBlZCBsZWdhY3ktdHJ1bmsKKzU4NDM0IDk2MDMyMjFiYmE5MDJhYjAzMmQwZWI0NjBjMjJjNjdmMjAwMGRiZmIgbGVnYWN5LXRydW5rCis1ODQzNSAxMDRkMmYyOWY4ODZiOGM5MmViNzU1MzIyNGVhNWY1MWYzMmViYmY1IHJlbGVhc2UyNS1tYWludAorNTg0MzggNmE5N2Y3MjYwY2FkMDk4NWYzOGYwZGU0YjJiZTFjZmRiNzZmZWI3ZiBweTNrCis1ODQzOSA4MzNiMGU3ODE1MDZkYWQwYTI5MjQ1Y2MzYWE2NzFiZWQxZmRjMzg1IHB5M2sKKzU4NDQxIGZiOWQ1MzA2ZjRjNzIyNDBiY2ZkNGQyNDNjNDIzMzI2Y2VjYTE3ZTkgcHkzaworNTg0NDIgOTkzZTI0YzcyNGI4YzdkMzJiY2I5M2QxNWVhY2IxOGZlNTU0NDE0YiBweTNrCis1ODQ0MyA0ZWE5NDVjYmJiNmQ0OWQxZTQxMzUxMzI4Y2JlOTQ5Y2U4ZjBlMDU5IHB5M2sKKzU4NDQ0IDQ4M2NiNDFhNTY5MWJiNTU2YWY1MjI5ZDc3ZGM1OTU3ZGQyZGY2MDMgcmVsZWFzZTI1LW1haW50Cis1ODQ0NSAzNTg2NjMxZDhkMjFjNTkzNjc1ODNkN2YyNzhhNmFhYTQ1ODc3ODkwIGxlZ2FjeS10cnVuaworNTg0NDYgOWYwMzY2MjYwY2ZiYjQ4NzM3MDhlZjFhMDVlMjQzMzRkMDMxZmIxMiBweTNrCis1ODQ0NyA2NDRlMjhlYTliMjJhNDYwZmZjMGM1NzJjYjQ2NzNiMzliYTM4ZjY5IHB5M2sKKzU4NDQ4IDhlNzJkYWNmN2YzYTUyN2IxMjVhNjg5ODk1YWEwN2VjYWI4NjFiMGUgcHkzaworNTg0NTAgMDJhMzNkY2E0MDAxYTU4ZmM5ZDVhZWYyNzgwZDQ2YmZmNzFjZjg2NiBsZWdhY3ktdHJ1bmsKKzU4NDUxIGMzYTI1ODIwZjUxMjM1Y2Q0YmU3ZDQyNjFkOWE1YmFjZTczN2Y5MWQgcmVsZWFzZTI1LW1haW50Cis1ODQ1MiA5OTI1Y2UxZmQ3YmU3ZGZiNDY3OTg0NzEzMDIzZTFhZmExM2Y2NDgyIHB5M2sKKzU4NDUzIDMwNmQ1Mzk1ZGZhMjk5ODA5OWU0OTUzZDVhMWY1ZDhjZjY3ZTlmOWQgbGVnYWN5LXRydW5rCis1ODQ1NSBhYzYyZWIyNjcyMDZlMTVkMzk5NDRiNjYzYTc3YjYwOWU5OGQ2MDJhIHB5M2sKKzU4NDU2IDAwMTU1NzJkMTFiY2Y5ODYzZjExMDYyNjhkMjFhMmVhYmFjNzgyMDYgcHkzaworNTg0NTcgOWZiZjczM2EwNjM5YmVhNzdkOTEwNWJlYzFhODdkZGI5N2FlYzJlYyBweTNrCis1ODQ1OSA0ZTA1YzI0ZTI2ZjhhNTM0YjY0YjY5ZmVhMWEzNGRhMzAwN2U4Y2EzIGxlZ2FjeS10cnVuaworNTg0NjAgN2UyN2Q1MGM4NjcyMWU2MWZmZmZlOTcwNGJkNjYzYWU4MzY3YjdjYyBsZWdhY3ktdHJ1bmsKKzU4NDYxIGI0MDM1ZDM2NjViYjgzMDIyMGIxYzM1ZDU3ZGZmZDU2Y2JlZjYyZjcgcHkzaworNTg0NjMgMTI2ZDJmYjczNWI1YTI2NGMwNmE1ZjgxNTM2YTYzMzEyM2QyMGFlOCBweTNrCis1ODQ2NCA1YWQ1NzhhZTk4NzNlNjE3NDY3ODA4M2QzZWEzMDMzNzNiMjI3ZTEwIHB5M2sKKzU4NDY1IDkwMjk0ZDgwYTNjNWJjZmRlNmEyMzk5MDQ1MjIxNTJjMmNiOTg2ZWEgcHkzaworNTg0NjYgMTkzMTllNzBmYzNlZGJiNDViMmQwMDcxNjFjMWIzYTFkZTA5NDE4MSBweTNrCis1ODQ2OCBhNWE0Yjc4NmJiMjE1YjZiMGE4YmE5NDBiODQ2YzExZTE0Y2Y0ZDY3IGxlZ2FjeS10cnVuaworNTg0NzAgMjE5NWQxZjE3OTU4M2FmNmYwYzNlZTg1ZmY1OTdjZTZmYmRlZGQ2NyBweTNrCis1ODQ3MSA2OTc0MDBmY2U3YzVjMDRiNWIxN2RlOGVjNzBkZTdkYzIyOGMzNWVhIGxlZ2FjeS10cnVuaworNTg0NzIgNTA1OTliYmIwYzY3MjM5OTJjZTc0MjQ3YWZmNmZiZTg5MDk4ODQ5NCBweTNrCis1ODQ4MSAxNmUyMzdlY2UyN2QzOWQ0NzgxNTRlYzhlYTBiMDU2MDIxNDRjZGVkIHB5M2staW1wb3J0bGliCis1ODQ4NSBjOWU2MWQ2NmZmNjUxODI4MWVjNjQwZDNlMzM3MGQ2ZGRmYWM1YzU0IHB5M2staW1wb3J0bGliCis1ODQ4NiA2Y2I2Mzk3ZDIyMWFmMmE4YTM3M2Q3ZjZlYjNhMDNjMTkyOTMyYjNjIHB5M2sKKzU4NDg4IGQ3MTM4NGNiNTYwNDRkYTE5OTFhZmVmZjNiN2U3NmExNmM0N2ViNGMgcHkzay1pbXBvcnRsaWIKKzU4NDkxIGU3MmFkNGQyNTZlODQwYmI3ZDk4NDUwNTUwNzNmMGIzODAwYzk3N2MgcHkzaworNTg0OTMgNjk3Y2MzMWE4M2Y2NWU5MjBkMmYyMjNlY2RjZGRiOTI2ODhlZDI3ZCBweTNrCis1ODQ5NSBhY2U0NWIzNjFlODczZTBlMTdkODIyMDk2YmJhMzM0NjU5MTRhNTFiIHB5M2sKKzU4NTAwIDQwNjAwNDdiM2YxZDNiMjBjZjAxNDg3MmRhMTExYjQxYzZmMzk1NDUgbGVnYWN5LXRydW5rCis1ODUwNiAwNDZlZGFhMTU2NmE3Yjg4NWQ2OGI1ODRhY2VjY2RjODFjNjJjMjBhIGxlZ2FjeS10cnVuaworNTg1MDcgN2NhMGJjMGFkOTYwMzViY2NkMDUxYWIyNGIyNDQ3ZTkzMmNmODU0MSBsZWdhY3ktdHJ1bmsKKzU4NTA4IDAxNmRhOGUyZjk0YjhjYzM4M2MwZDk0NDYxNjE3ZjE1ZjkyYmM3NDMgbGVnYWN5LXRydW5rCis1ODUwOSBjOGVlMjYwNzMwNTAzZTk5MWYyMWFhZjRlMDBjZmVhMTc5NmI3MjdjIGxlZ2FjeS10cnVuaworNTg1MjIgNjE1N2UwZDI3ZWVmNjEzOTRhZmRkNmM4M2FkNGVkMWM4OTBmMTA0ZCBsZWdhY3ktdHJ1bmsKKzU4NTMwIGRhNDQzMzRlYmVhMjQ1MmNiMjMwMmI4MzhlYWY4Y2UwNjE2ZTE3ZGQgbGVnYWN5LXRydW5rCis1ODUzMSBmMWY3MDFjMjI0YzFjMGI5ZTRiZGQ2OWU0YjVlYjYwMDIxZmIwYjcyIGxlZ2FjeS10cnVuaworNTg1MzIgMjdhNGQyMjRlYTFiOTA5YWFjYjhhY2Y4OTgwYTljOTk2ZWJhNzlhYiBsZWdhY3ktdHJ1bmsKKzU4NTMzIGI4MzM0NmYzYmZhZmRhNGMzZjE3MTkyYTMxZjdlMTE2YjNmZmVkZTEgbGVnYWN5LXRydW5rCis1ODUzNCAxNDNhY2JiZmFmZDdjNzA2ZWNjZjg3OWM5OTYwNGEyODI2ODY1ZWExIGxlZ2FjeS10cnVuaworNTg1MzUgNmRiN2JiZThmMjdjZTY3MjQyZTk2ZjAyYjY3YTBlYmI1NGFhZWMxMyBweTNrCis1ODUzNiBkMjE2NWRjMWIwOGRmYzA2NTE5NmRmNGY4ZDBkMjc2ZGIyYWIyOWY4IHJlbGVhc2UyNS1tYWludAorNTg1MzcgY2MxNTgzNmI2ODA4Yjk5OGZiZWQ5NDE5NmY2NzkwZWIyODdhMWMwYSBsZWdhY3ktdHJ1bmsKKzU4NTM4IGU5YWY3MDYzODg4OGRmZDBmZDA5YzFiZjFlNzUxODM4ZjM4YjdkM2EgbGVnYWN5LXRydW5rCis1ODUzOSBmMjY3Nzg0MzA0NzAwNGRlNjM2MDM0MmJlNmRkOWI2NzdmODJiMTQyIGxlZ2FjeS10cnVuaworNTg1NDAgNDQ1MDdjNGRlYzJiNWYyODQ0ODdjZWQzMDYxNDgxNWY4MzQ3MGJmNSBweTNrCis1ODU0MSBkMzdjMDA1MTQwNmU2NmU0ODNmOTUyYmFjODJhOWM2NDRlYjNmMDk0IHJlbGVhc2UyNS1tYWludAorNTg1NDIgNTQ4ZDA2ZTk4ZjU2NDVjZjcwNjQ1MDU0MjVlZjUwNDlhZDI0MmM4YiBsZWdhY3ktdHJ1bmsKKzU4NTQzIGJiNWNiODllZmUxOGFlOGMwZTQ1NTRkYmU3ZDMxMDYxZmI2MDI5NmUgcmVsZWFzZTI1LW1haW50Cis1ODU0NCA5NmFmNDFlNTBlNTYxMTdjZDZlYWM3ZTdlMjY5OTczZmMxNjNmNGIwIGxlZ2FjeS10cnVuaworNTg1NDUgYmRkOTI0MjUxODBmNGJkZjMzYmFjMmE0MjBmMmU3NTkwNWRhNTVhMiBsZWdhY3ktdHJ1bmsKKzU4NTQ2IDIzMjBjZDRmNjhiNThiYTdmZWIxMjY4OTcxMTNjYTE5YmEyZjg2NzQgcmVsZWFzZTI1LW1haW50Cis1ODU0OCA4YTAxNjc0MTYyMjMyMDU5MjVkZjVjNTQ2MGJiNDJlOTE1MzY2NjM2IGxlZ2FjeS10cnVuaworNTg1NTAgODA3NDRjOGQzNGQ4YjE0Y2M1MmNmMjE5NDA2MjBmZTE1NDNmNzg2ZCBsZWdhY3ktdHJ1bmsKKzU4NTUxIGRkMDNhYTc0MWY1Njg4OWM1MTI2MjhmNjI2ZjUxZjEyZmZiZWNhM2QgcHkzaworNTg1NTIgYjE4ZjYwOTJmNmUwMTc3ZWQyN2VkOGVmNmNmMjM2OGJkOTM1ZTg4ZiBweTNrCis1ODU1MyBhMmJiNzZkMTFkNjZiMzEzZTRhOTU4ZmRlNTAyODE5N2NmYzc4MTQ5IHB5M2sKKzU4NTU0IDU3ZjNmMTI2ZjNmNzAxMmNiMmNlZTE0Mjc4NWU0YzU3MzRiNTM3M2EgcHkzaworNTg1NTUgNzU5MzQzNjA1OGRkNTMxMDE0MmZmNDUyYzBlNGJiOWJmZmEzNGVkMiBweTNrCis1ODU1NiBmMGJjYzExY2E5NjU2NTlkNDMxYzkyOGMyYTdiZWFiNzg4ODFmYjI1IHB5M2sKKzU4NTU3IGQzNzhhY2RjMzBlZWQyMmNlOGQ2OGI1YmY3OGZhNWYzOTc2ZDRiZWYgcHkzaworNTg1NTkgNjVmZTE5NTUxOGNiMmZkMGJmZmE0ODE5Mzc3NTcyZmJiYTMyMThmMiBsZWdhY3ktdHJ1bmsKKzU4NTYxIGNiOTRlYmQ5YWZhN2ExYWNmNmY5NTVkNGZmZmFhZTA3ZWMwMGZmNjEgbGVnYWN5LXRydW5rCis1ODU2MiBhMjE0MGViNWZjNmFjZWYxNGU4ZGRjOTc5Nzc0MWFmMTRhNzc1N2IwIGxlZ2FjeS10cnVuaworNTg1NjQgM2NiNjc4NjI4YWYzOGU4NTZjZWUzZDM2YjgwNmM4M2RkMTBiZTRjNyBsZWdhY3ktdHJ1bmsKKzU4NTY3IDI1MmI5ZDIyY2E1NTVjNzBjMmI4ZjIwYzA0NGJiZDY5ZDc0MGUwNDYgbGVnYWN5LXRydW5rCis1ODU2OCBkNzI3OWMzMjFiYjdjYzhlMjRkYzNjYTVmZmE1MGI3OTMwN2FkZDUxIGxlZ2FjeS10cnVuaworNTg1NjkgMjAxZGQwOTQ5OTk5MGVmMTI5YWEwZWU1YjQ4YzY2ZDVhOGNiMjI2NyBsZWdhY3ktdHJ1bmsKKzU4NTcwIGM0Y2MzYzI0ODlhMDQ4Mjk1MGI5ODFkMWYxNzg5OGM3MmRjOGFhNWEgbGVnYWN5LXRydW5rCis1ODU3MSA4ODk5N2YwODIxNzQ5YWQwZmUxNTZjNzE1MWIyMGYzN2FkNzcwNjVkIGxlZ2FjeS10cnVuaworNTg1NzIgNWU0MjExN2Y5Y2JjYzAxMDUzNTBiMTRiMjk5MzQ3ZDBlYjUwNDk0ZCBsZWdhY3ktdHJ1bmsKKzU4NTczIDI1Mjk2ZWMwMmIxOWM1MWZkMmQxZjQ2ZWU0YzU3NjBhYjFmMjRlMDggbGVnYWN5LXRydW5rCis1ODU3NCA1Y2JhMTRhNTY0ZmRkZmFlZDgwMDE2ZDc1NjFlYmQzMDFkNGUyM2IxIGxlZ2FjeS10cnVuaworNTg1NzUgOGZlMjI2OTMxZWU3MjFhZTNkY2ExMTVhZDRjODdhNmYyNmM3ZDZmOCBweTNrCis1ODU3NiA3YzM1YTU5MzE3NTVmZDY1ZDAwZjgwOTA5NGM2MTNiMTI1YTkwYTUxIGxlZ2FjeS10cnVuaworNTg1NzcgMWJmNDc2MjM5ZjM5NTllMjBiYzBkMDU5NWQ1MzczMzkzNDI2MjU2OSBsZWdhY3ktdHJ1bmsKKzU4NTc4IGE1NzYzNTEwMGRjMzk0NmIxNjZkMmFlN2Q4MGNlYjU4YWQ0ZmI2ZWYgbGVnYWN5LXRydW5rCis1ODU3OSA0ODIyMGQ2NDRjOGUxMDlhMmMwMTNhNDAyZjllNzczZmMxYjk0NzA4IGxlZ2FjeS10cnVuaworNTg1ODAgZmFmNWRlNjllOTc3MWU2NzY2YTA4NDBhZjUyMzEwNjc4YWE5MjA5MiBsZWdhY3ktdHJ1bmsKKzU4NTgxIGM1Yzk3ZDdhZTkwY2U4ZjRmNWU3ZTQ4ZTdlNjcxYTI1ZmNmOGIzOTYgbGVnYWN5LXRydW5rCis1ODU4MiA0ZjY2MmJhMDlmMWZiZTM4NjFmY2Q1YWU4NWMwYzM1MjZkZTFiZTMzIGxlZ2FjeS10cnVuaworNTg1ODMgNmRmOTg1NzQ0ZDk2NzhmYThiMDhmMjlhOWRjOWY4NmE0NzJhNjk4OSBsZWdhY3ktdHJ1bmsKKzU4NTg0IDAzMDU2MzY1YTFiNjYyY2FmMjg3NmM0M2FkM2ZlNWU4YmU3MzhiMjIgbGVnYWN5LXRydW5rCis1ODU4NyAwMDY3YTZhYjQ4NTRlNzE2NTdhNWJiOTJiNzJhZTI3MTdmMjZhMjZkIHB5M2sKKzU4NTg4IDkwMjEyNWI1OTRjYzg5OWY4OGU3MDU3OTc5ZWU5ZDk0NTA1YTU1NWQgbGVnYWN5LXRydW5rCis1ODU5MCAxNzgyNTgzZjExNThiZjM1OTAzNTk3Zjk0YmZlMjhkYmVlZGUyNTAxIHB5M2sKKzU4NTkyIGE1OGYzMTkzN2RhZjljZGNkYTdkYzkzZWZlYjQxYTcyZWFmZjZjZDEgcHkzaworNTg1OTMgZTgyZDlhODhlZDllNDI4NTJjNWFkZWYxZDRjMzVhZTdhNzhhMGEzNyBweTNrCis1ODU5NCBiNmEyOWEwZWEzMDdkMzkzOWRlNzg0ZTA5ZWIyMGI5NTdiYThiOWYyIGxlZ2FjeS10cnVuaworNTg1OTYgYjEwNTQ0ODI3YWY3MGIzNTcwM2MyYTRmZjNmYjQzOTNhM2JhODc3NiBweTNrCis1ODU5NyBhMzJlN2VjOTMzOTRlMTUyNWRlY2NmYWIyMWU5NjlmYjFjOWMyMjdlIHB5M2sKKzU4NTk4IDA0MDg4YWJmNGU0ZmQwM2U3ODg1NDU2ZmUzOGQxN2ZjM2Y4NDRiNmMgbGVnYWN5LXRydW5rCis1ODU5OSA1M2VlODk0M2QxNjU4ZGFhYzNhODBmZjgxOTcxNzUwMjg4YmFmNGZiIHJlbGVhc2UyNS1tYWludAorNTg2MDAgZGM4MWJjZmMzNTFhZTAxYmEzN2UzZjNiNjc3NzQ0MDg3ZmE3N2M2OSByZWxlYXNlMjUtbWFpbnQKKzU4NjAxIGViOTA4YTE5YzA1YTI0ZTA4MDMwNjZiODY1Yzc1MzhjOGIzZGExNTAgbGVnYWN5LXRydW5rCis1ODYwMiA5NWQ4YzkxM2U4YmYzNjExMmVjNzdiYTYzNmM3MTFiYjFkZDE0MTNkIHB5M2sKKzU4NjAzIDk5NTI2YzQwMTQ3YjE0NWI0YmMyMGEwMTc5ZGFiZGRiYjZjYWJhYTAgcHkzaworNTg2MDcgY2Q1YjM4M2EzOTdlNmUyMTJkZjZmZmI1ZDMyNmJkZDJhMmNhY2IyNiBweTNrCis1ODYwOSA0NDFkNjA5ZDA5NmI1ZGY2NjAzZTE0Zjc0OGNiYTQ3OTYyODYyNDlkIGxlZ2FjeS10cnVuaworNTg2MTAgNjM0YzNkNDA0OGU3ZDdkNzBlNjUxOTYzYjFjNWQ4YWVkZTgxYzljOSBweTNrCis1ODYxMSBmOWI3OTU0ZDc4OGQ2MGNkMDRkNTI0ZWYyMjZmNmZkYWRhODc0YjFiIGN0eXBlcy1icmFuY2gKKzU4NjEyIGRhODIzMGZhZjJhZWJiZmEzMTgwYjQ4OGFhYzUzODliYjJmMmFlNjMgcHkzaworNTg2MTMgYzlmMjg2OTdlMTk5NWI5MzAwZDIwNjZkYjU1ZWFiZTc0ZTMzOTRiNyBweTNrCis1ODYxNCA3OTkwNGU4NDFkZjM4MGM2MGRiYWM3MGY4OTg2YjRjMWJhM2U0ZjAwIGN0eXBlcy1icmFuY2gKKzU4NjE1IDM0NzkyYjllNGI0MjhkZWIxNGQ2Njk5YWZjMWI3YTRmZDg0NTRmMzcgY3R5cGVzLWJyYW5jaAorNTg2MTcgMDAzZDM1MjE1ZWYyYWM2MjY3ZWZkMWNhNGM1Y2E1ZDcxZmY5ZDNlZSBweTNrCis1ODYxOCAwY2ExZDI5YjgzYzJiNmRhOWRhYWU5ZDJiMTcwYjhkYTk4ZGVmY2ZhIGxlZ2FjeS10cnVuaworNTg2MTkgMGM3NmU1M2MxZDY1MmUxMzc4ODNkMTlhNzVmNTFjNzk2OGRiZDQ4ZSBweTNrCis1ODYyMCBhMDk4M2Y1NWM5NTc1Y2VjZmZlMGQwNGY5NTZhZWVlNDFjMzJiZWIzIGxlZ2FjeS10cnVuaworNTg2MjEgYTc2MGMxYTA3ZDI2ZjBhOGYxMTU2NWY3YmEzZTdjZTgyYzE3M2I3YyBsZWdhY3ktdHJ1bmsKKzU4NjIyIDM2YjJhYWY0NTdiNGFlMmI4NDJjZGYxZWVkMTg0NzgzYWI1NjJhYzMgbGVnYWN5LXRydW5rCis1ODYyMyAwOGVlMjU2YTliZDExOTE2NDIzMDMyNmZjMjU2YTk5Zjc3ZmFiZmU3IGxlZ2FjeS10cnVuaworNTg2MjQgNzQwOGUxYWU5OGM0YTA3NWJjYThhYmVjYTdhNzg2YTE3NWI0YTAzYiBsZWdhY3ktdHJ1bmsKKzU4NjI1IDk3NGU2NGNjMDgzZGNhOTI2Y2Q0MzFjMzUwNTQ2NDk1MjY5MGUxZmIgcmVsZWFzZTI1LW1haW50Cis1ODYyOCAzYTE0YzkwNGRhMjMyN2MwNDEwZGQyMGE0N2JmYTM5YjQyMmEzMTJiIGxlZ2FjeS10cnVuaworNTg2MjkgNzMyMjc1YzQwMjZiNTIwYmE0ZTE2NGU2Y2RjOTBjZDUyMzAyZTgwMCByZWxlYXNlMjUtbWFpbnQKKzU4NjMwIGU1M2Q5NWMzYzBjNGRiMTRlOTllYmEzYWNjMTY5OWYyYjY1NjRlM2UgcmVsZWFzZTI0LW1haW50Cis1ODYzOSAzZGY1Yzc0NjE2MDNjZmE5YTU1YmVjNzlkZDBmMTU3Y2I3NGU1ODE3IHB5M2sKKzU4NjQwIDMzZWZiZmMyOGQyYjM3OWI1M2M1MmQyNzdjYzJlNmI0N2NlZmVlOWQgcHkzaworNTg2NDEgNTkwYTFiZWVlZjg5ZDFkYWMxZGNiMTI0YmVmMzNjYWM3ZDZhMzdjOCBsZWdhY3ktdHJ1bmsKKzU4NjQyIDdjN2I0MmY2NGY0MWQ0MThkODM1ODRkODdlNjRiMmJjN2FjOTUyYzYgcHkzaworNTg2NDMgYmFjMzQzYWRmZmQ5ZDI3MzJmN2JhNDFlYzZkZjEyZjNiYzMyNDMwNyBsZWdhY3ktdHJ1bmsKKzU4NjQ1IDNlNjM0OGJjOWEyODM3NDkxMDQ5ZWJjNjlhN2JiMThkODUyOTIxMTkgbGVnYWN5LXRydW5rCis1ODY0NiA4ZGVhNTk5NzliYTJlOTg4YmFlZDUyZWU1YTIzZmRiNzQ5YTk0M2VhIHB5M2sKKzU4NjQ3IDU3YzBkMDg4NDMwNjQ4NTllZTFkZmNiNmE3ZTFjY2VkYmE4N2JiMmIgcmVsZWFzZTI1LW1haW50Cis1ODY0OCA1MWJhMTJlMGExZDUwZTI3MzMxMWU3NDZlMTJlNjJlMWU4ZDg1MGUxIHB5M2sKKzU4NjQ5IDhmZTI0ZTVlZWVmZmI5OWQzYmFjYzQ5NWI5YjA2MDdjOTc4ZTNjM2UgcHkzaworNTg2NTAgZDY2MDE4ZWQzZGVkNTkwYmExZjZjNjY3MDVlYzNhYjAwNDAzN2RlYyBweTNrCis1ODY1MSA5MDBlZjBlYjNmOTRiNTAxMjUwMWY0MDI4ZjlhZWRmMTE1OTYwMDk1IGxlZ2FjeS10cnVuaworNTg2NTIgMzVkYTkxNWFkZWRjYWNjMWEwMzJhOGE4NGI1YzE3ZTc1ODdlZjE1ZiBsZWdhY3ktdHJ1bmsKKzU4NjUzIDgyMzc3MmYxZDJiZTkwOGI1YzU0OTJlMGI3NGIzOGJiZGI5OTJiOWUgbGVnYWN5LXRydW5rCis1ODY1NCBmZWQ2NDMxNGQ5NDQ5ODNmYjNmZmI4MzM4MDk0OTliN2JhNzIyYjg1IHJlbGVhc2UyNS1tYWludAorNTg2NTUgNTMwNTczY2Q0ZjdhNzc4MTY4YmQwNjFkZmFjYThhMjAwZmU5ODI3ZCBsZWdhY3ktdHJ1bmsKKzU4NjU2IDUwOWE3MzZlYmRiOTcwNjIwNjZhMWRhNTcyMGI0ZmU5YjI5MzBmNjUgbGVnYWN5LXRydW5rCis1ODY1NyBhODgxOGZmZTI0ZDExZjEwMTQ1YzM1MWU0YzY4YTk1Yzc1ODA4OTI0IHB5M2sKKzU4NjU4IDcwNzVkNDY0ZDkzODQ1M2ZiMzg2NDI5NDY3NjVmYWY1MWRiZTNjOWUgcHkzaworNTg2NTkgMDZiZGI4NDM5ZTI5ODRjMjc2NDc2MDgyOTUwMDM5ZTljOGUzMTdhYiBweTNrCis1ODY2MCBkM2JmMDA5ZmJiYTk4ZDNiN2MzMjJkY2YxZWNlYWRlNjNiODY4ZjdmIGxlZ2FjeS10cnVuaworNTg2NjIgNGJiNmEwYzM1M2FiNjg2ZTc2NTcxMmYyNWIxNjRlZDhhZTFkMTlkZiBweTNrCis1ODY2MyA1YjEyYjBiZDgxODgwZTk4ZjAwZTljOTczNjJhZmRiNTdlMzVkNGExIHB5M2sKKzU4NjY0IDE5OThlZTBlZmYyYzEyNjZhOTA3NWY4MGMyZmQyMTQxYTM1NzdjNDggcHkzaworNTg2NjUgNmFiNjRmNmI0YzAzMTdlNzEwYWJhNzllMDVjMWM4YTZmYTNlZTM3MCBweTNrCis1ODY3MyAwNjUzMTg0OGEzOTQ2ZWFlODk5M2E0YzRlZGFjMDg5MTEwYmQwYTkwIHB5M2sKKzU4Njc0IDY0Y2UzYmYzYTZhOWQzOGRjODUwYzYxYTFkMjY3ZTNjMjRiZWU2M2UgcHkzaworNTg2NzUgZmM2YmEwODhiZDc3Y2FiMThkMDkyOGE3Mjk4NzJkOTI5MTkyZDRlZSBsZWdhY3ktdHJ1bmsKKzU4Njc2IDVhNGU4YmRhZGI4NTA0Y2I3YTE3YWQxMTcyYWUwYmNlZDE1NjQ5NzkgcHkzaworNTg2NzcgNTBhMzQ3NWRiNDY2YjdkOWQzYmExZGRjYTcyNzFhNjAzNjVkOGUzMCBweTNrCis1ODY3OCAwNTAyYThjNjRlZjIwZWZmOGJiODljNTU1NzljY2Q2YTc0OTQxMjZiIHB5M2sKKzU4Njc5IDdmYjg2ODAyM2Q3NWFlZjg1ZmIyMWUxZTM0MjBhZTgyYWVlYzI0NzYgcHkzay1wZXAzMTM3Cis1ODY4MCAxNzI2YTRjOTE2ZjAxMzE0M2RiMGM4MDllYzZiZWRmOGM5N2FhOWNkIHB5M2stcGVwMzEzNworNTg2ODEgZmE3Y2Q4ZWFiMmQyYzNlMDdlYmFhZDAzZDNhYTI5YzdmZTZhMWJhMCBweTNrLXBlcDMxMzcKKzU4NjgyIGIxMDJiODM2MWQ1ZTkzY2VmNTQxZjc5OWVhZTMzZGEzYzlmZDExMGEgcHkzaworNTg2ODMgMDQwZjUyMmZlZTExMjM4ZjIwNmM4YTA2MWIwZGVhN2FmNmQwZjU0ZiBweTNrCis1ODY4NCAyM2U2ZWMxYjVmMzUwZDZmNTY1NGNhNzk2ZGViZjMzZTE0N2MxYjBkIHB5M2sKKzU4Njg1IGZmYWE2Y2U0YmZiNDc4OWJlY2ZiOWY2Zjc5NjdmYTZiMzM1ZDA5MjYgcHkzaworNTg2ODYgZDQ2YTMxZjVjNWRmMjZiMDkxM2Q2MmUzYWQ4ZTMzZTZiMDZiMjkzMCBweTNrCis1ODY4NyBmZDRkMTBlOTkzYjc5YzQzOGViMWIyYzY3MGVhN2Q1ODVhNjU3YjY5IHB5M2sKKzU4Njg4IDk3ZTJlODljNjU5MTJmMmQ2MjJhNTU5MDMzOWNkMzNhYTQ1MGVhNzkgcHkzay1wZXAzMTM3Cis1ODY4OSBlMTg5ZDMyYjM3MTkwNjhiYWY2YmYyN2VkYjY0NzAyNjZkNGEwMjdjIHB5M2stcGVwMzEzNworNTg2OTAgNjFiYzgyZGYzNWZmOTA2YTczNGRkMmIzZjdhNWM4MzVjYTA4NDUwMiBweTNrLXBlcDMxMzcKKzU4NjkxIDVkMGJlOTdmMTcwNDBjZjNlNGJkYzcwZDE0MDdiNTQ4OTcyNDQ4YzggcHkzay1wZXAzMTM3Cis1ODY5MiAyZTllZGNkZGRkNDQzYTUzY2Q4ZmQ1YTc1MzY1ZGE2NWYzOWZjMDNjIHB5M2stcGVwMzEzNworNTg2OTMgZGFjYzczMGM3Mjk4ZDU5MDI2MTkxODNjMTI3YWI2NmI3ZGRiODgxZCBweTNrLXBlcDMxMzcKKzU4Njk0IDhmZDNkYjY1MzMxOGViZWRkODA2ODdiZjBkYzY0NGFmNGFmMjZkMzkgcHkzaworNTg2OTUgZGM5ODE2MmVmODQ0ZjBhNmYxZDJkZTA2OTAxMjI2NTE1NWEwMDg5MCBweTNrLXBlcDMxMzcKKzU4Njk2IGY1YmM5NDgxZjg4M2ZjYTY0Yjk1ZTNhZjI3ZGY2ODEzZTIzZWQ3MTAgbGVnYWN5LXRydW5rCis1ODY5NyA2MDhlZTRiODIwYWZhNzIwY2RhMzgxM2JlZThmY2JhMDIxZGE0NzIzIGxlZ2FjeS10cnVuaworNTg2OTggMzY1OTEzZDdhZjdkNjVkNDhiZGY0OGY2N2UxMzEyNjg1ZmFiN2IwNyBsZWdhY3ktdHJ1bmsKKzU4Njk5IDkxZmQ2NTA0NWVlZTY4YWRiZjg0ZWZmM2Q2NjA2ZDY0MTk3N2MwMGEgcHkzay1wZXAzMTM3Cis1ODcwMCA3MzYwYzEyYmQ4MWQ0OWVkOGJhYzUxZDBmNzc1OTNjMjI0NjA4ZTQxIGxlZ2FjeS10cnVuaworNTg3MDEgNTFhNzM3NDEwNWFjNGMzZjVjYjUzMTg3MDI4ZmJiMGY2OWJjZWUxNyBweTNrCis1ODcwMiAzZjQ2N2FjY2VjZDJlNDYyYjBkN2I1YmRmOGVhNWI2ZGZjYTg5NTQyIHB5M2sKKzU4NzAzIDEyZDIwZmRmZWE2MmY1MTk3NGM1MDVjOTliMjI1M2IyOTY2YzVmZjUgcHkzay1wZXAzMTM3Cis1ODcwNCBkOGY3NDQyYjhjYWU4NjZmYThmYTUxMmY5NzMwMDg4MTk0OGY1MTdmIHB5M2sKKzU4NzA1IGMzNDcyMDc3N2NiNjZmZjM0YWE0YmRlOGVkYjA3YWRjNzQ2OTcwZGIgcHkzaworNTg3MDYgNDBlM2EyZGI1ZDllMzAzZGQ3YTllZTA1NDE4MGMxODA5YzIzMzU0ZSBsZWdhY3ktdHJ1bmsKKzU4NzA3IDMyMzU0ODcwZGZiMmJiOGZmNjEyNmE2Y2MxZTM1YTVkZjQzNzNlNzMgcHkzay1wZXAzMTM3Cis1ODcwOCA3NmE1NWY3YjUwNjAwNzUyYTFhMjdhNTFmYmQ4NzUzYTY3MzE2ZjJiIHB5M2stcGVwMzEzNworNTg3MDkgMTI0Y2JmMWEwZTNlYTQ4MDUxOTJlOWU4N2M1Y2U4YmU3YzViNDQ3ZSBsZWdhY3ktdHJ1bmsKKzU4NzEwIGE1ZGQyNzhiMGMxZmJhNDBkZDc5ZjRjYzQ3OGU0NjA0ODk1NGViYWEgbGVnYWN5LXRydW5rCis1ODcxMSAwMGIxMzZiN2RhODQ0ZDMyZGU4OGQyZWFhNWQ5MjFhMmZhOTNkYThkIHB5M2sKKzU4NzEyIDQ3YzU1M2ViNzVkOTFkMjZiYTI2Mjc1NDYzZGE5OTFmMDI0YjQyNGYgY3R5cGVzLWJyYW5jaAorNTg3MTMgOGY3ZjZjODUwZGJkMjYyYjY5YzJiNTNjODRmMjA5Y2UyZTljNmQ2NSBweTNrLXBlcDMxMzcKKzU4NzE0IDI2ZmU3MDg5ZjE0YWYxZWJkMjM3ZGJmZTcxZGRiZDM1ZDAyM2NkZDggcHkzaworNTg3MTUgMzM0ODA3NjVmNjY5MzAxZmI0MjFmYjUwYTFkN2QzMGMwMzNmZDExOCBsZWdhY3ktdHJ1bmsKKzU4NzE2IGUyZmU1ODYwNGNiMWNlYmY3OGViNDY0YTAwYjc5MWY0MjUxMmJmOGQgbGVnYWN5LXRydW5rCis1ODcxNyA4ZWRlYjUxNjhiZjUxNjY0MTQ2NzNmZDhiN2FiNzg5M2M1ZDViMTBlIHB5M2sKKzU4NzE4IGMxMjE0YmQ2ZWQxNjA1MmU5OWVlMWVjZTAxNTQ2OTg1NDM4OGQyZmEgcHkzaworNTg3MTkgZTUxMGI3MTZiZDgwYjdhNzY5Y2ZkNWI5YmMxMzQ2NmFhNmE4ODkyNCBweTNrCis1ODcyMCAwNDY4MjY4NzgxN2ViOTQ0YWYwOTk0OGI1N2IxY2YxZGNhODc2NWY1IHB5M2sKKzU4NzIxIGU5MTUwNmI0Yjg1ZjhhYmQwM2VmOGY3NTNiYTQ0YmNlODAzMDRlNjUgcHkzay1wZXAzMTM3Cis1ODcyOCA3OGE4YWVhNmNiMGFlNTFlMzJkNWZjMjYyYTA5ZDYzZjUwNTRkMmY0IGxlZ2FjeS10cnVuaworNTg3MjkgZTIzNGQ5NzZiNWQ0N2I3MDAxN2M5YjQzZjcyZjc3ZDU5NjNlNjRiOSBjdHlwZXMtYnJhbmNoCis1ODczMCBlM2EwMWY0OTNlOTRmMzU4MzgwOGE5Y2RiNWI0NjBjMDQ3MmNlNTgyIHB5M2stcGVwMzEzNworNTg3MzEgNDMxYzVhMWE2MjkwMTEwZDEwZWU5YTMwY2RiZDAwMGI1NGQxYWRiMiBsZWdhY3ktdHJ1bmsKKzU4NzMyIGJjZjYyOWU0MzA4Mjc4M2IyNTJlZTBiMzUwMTFhYjhmZTEzMThkNjggcHkzaworNTg3MzMgNTI1MzFiNGY1MzVkM2I5NDk2OWVjMDc0ZjkwOWUwOTJhMzlhMTEyNiBweTNrCis1ODczNCBlZWIzNzI4MTg5NTk1NTdmM2ZmZDRjZTg4MzAwMDFkODM2ZjdmNGFlIHB5M2sKKzU4NzM1IGZlNTcwY2Q1YjE4ZjFmMmQ2NjcwZDU3Yjk1YzhhZDQ1M2IxMjA2MmMgcHkzay1wZXAzMTM3Cis1ODczNiBkNDdhMDRhMmUwYmI0NWU1ZTkxNjc5MTVhNTQ1YjZkMmE5YzZiYjUyIHB5M2sKKzU4NzM3IGVhNjUwMTEzNDI4NjhjNDIyYjllNzI4ZTk5NTk5NjUxYjcwNGM0MTAgbGVnYWN5LXRydW5rCis1ODczOCA2MGQ5NjEyMDQ2MGIxYzQ3MmVhOWRmNDMyOGYwMGU1YWU3NzQ4OWMwIHJlbGVhc2UyNS1tYWludAorNTg3MzkgZTQyMGFhN2Y1MGNiNTBkYjM1NDU0OGM5MmY5MDBlOTUwZDhiOGY0MyBsZWdhY3ktdHJ1bmsKKzU4NzQwIDNlNzM4ZTUyYTNjZWIxMWJiZWE0NTczNDI1ZjU3NzcwMmE2NjA2ZmIgcmVsZWFzZTI1LW1haW50Cis1ODc0MSBiZWY4OGRhODIxYTRjMmM3MjY2OWEwZTRjZDUzNmZkNWYzZjZlM2U3IHB5M2stcGVwMzEzNworNTg3NDIgYTJmOWU2Y2VmMDJmNzhhN2E2ZTQ4NzBmZjU4NTViMzIzZGJkZTliMiBweTNrLXBlcDMxMzcKKzU4NzQ0IGZiYzZmYzZkYzRmZmUxYjJjMjc0N2M3MjUwYWI1NTgxN2E3NTk4YTggcHkzay1wZXAzMTM3Cis1ODc0NSA0MzFiYzkwOTQwMTk1NWEyMTAzY2QwY2Q2ZGFlM2E2YTM5M2IxOTA2IGxlZ2FjeS10cnVuaworNTg3NDYgMDIxY2VlMTg5ZjllMWFiZTViN2MyMDAwNzIyMTljMDUwMDNjMGZhNSByZWxlYXNlMjUtbWFpbnQKKzU4NzQ3IGZkNjg1ZDdlODU5YWExMGRiZDRkNmUzOTQ1Yzg0OGI3NzkyMmE5NjkgcHkzaworNTg3NDggZjg3ZGM2YTA0Y2VhYmEzMDdjMjA4YmYyYzFiMDJjYmEwODU4ODg5ZSBweTNrCis1ODc0OSAzZTVlZGYxOWQ1ZjA1ZDJmZmExZDAyMWRhNzgxNjE1ZmQyZDg1ZjA0IHB5M2sKKzU4NzUwIGJkMmY4YmIxMWJjYzM2MjUxYjFmMGM0NDBiNTU2ODg2MTc5OTY3MTcgbGVnYWN5LXRydW5rCis1ODc1MSBlOGQwMDNiMzg3MGYwM2UxNmQ1MjlmOGUzZTBmZmY4NmQ0MjVmOTgyIGxlZ2FjeS10cnVuaworNTg3NTIgM2Q4NjY1NzkxMTdkYTcwODk3OGRkNzlhN2QyYmVhNTllMGE5ODM2MSBweTNrCis1ODc1MyA3OWY1Y2E5ZWUxNTQ5YzE1ZjU1ODhjYTNlN2QzYTAxMTNiNGNkOWY2IGxlZ2FjeS10cnVuaworNTg3NTQgMGY3NDFjODlkODAzYWEzOGUyNzdhYWZkNTRkOWEzNmFkYmQzYzNkOSBweTNrCis1ODc1NSBjMDBkYzc1ODY3MTQzZTc5ODkwM2RiOTJmNWM2MTVkNzVkODlkNjJiIHB5M2sKKzU4NzU2IDJiN2FhZGJjZWEzNGY2NWU0ODM1M2FlNjllOWQ4Yzg2MjkxZmViZjAgcHkzaworNTg3NTcgMTU3YmIwMjg5MmJjOTRmNzA5YjQ2YWVlMGQ4ZTNlNzczZGVhYTQ4ZiBsZWdhY3ktdHJ1bmsKKzU4NzU4IDVhMWNkM2NhMGIzOTFjYjdlNDVlNDFkNmY1NTlhNTViNTFmMjJhMjEgbGVnYWN5LXRydW5rCis1ODc1OSBjMTliNjg0OTQxMWMwMzI0MDg3NjM5ZTRjMDg3OTViNWJiOWY1NDM3IGxlZ2FjeS10cnVuaworNTg3NjAgZWQzYzJhYWEwMDJhMmE3YjA5YjE0MWYwZGI3NTYxYmYzODI5ZTJiYSByZWxlYXNlMjUtbWFpbnQKKzU4NzYxIDk5ZmY5ZGNmMzc2MGUxMjhkOTg5Zjk3ZDNiNGI5OWZlMjgwNzQyNjQgcHkzaworNTg3NjIgZTVlYjkzYTBhMjBlMDUyMzFlODI4YTVhNTJhNTU5NGY4MGY1Yjk5MiBweTNrCis1ODc2MyAzMjc2N2I0Yjc5MjFhOWM5ZTljNmMyYjljNDMyYzVhZjYzZTNiZGMyIHB5M2stcGVwMzEzNworNTg3NjQgOGFjMjg0YjY1ZTM3ZTA2OGI5ODJhNzIyZTJjNDQ1MjUwZGUwMWNhZSBweTNrLXBlcDMxMzcKKzU4NzY1IDhhNDBiODMxYWI2ODk5YzUwNDkzOTQ0NzU5N2Y1Nzk2YjhlYzI3OTkgbGVnYWN5LXRydW5rCis1ODc2NiBjNDYyNGRjMGQ0MWIxMDdiYmFhZTA4ZDkzODA0MDhiZGI3YjAzNWY5IGxlZ2FjeS10cnVuaworNTg3NjcgNTg5MGQ1MTBhYTZmNzQ2NTE4OTFlNDZkOTVlZjExMGU5ZjhhY2ZiMSBweTNrLXBlcDMxMzcKKzU4NzY4IDg5NDhmODgxZTQwM2ZiMmQ1MWU1YThjYjQwN2QyOWQ1NjcxMzdjZTIgcHkzay1wZXAzMTM3Cis1ODc2OSAyNzQ4NmEwMmFlNjRmZDVhODk1Mzc1MDJlODEyOWE3YzA5NjVjNGZiIHB5M2stcGVwMzEzNworNTg3NzAgODcwZjcwNTYwYzhmMjg5MWIzNDBlOTE4ZWQwNzk0ODRkZmFjM2VmMSBweTNrLXBlcDMxMzcKKzU4NzcxIGI2YzhhNjY5Yzc5Y2EzNjYwOGYwODFmNDBmZWEyODM4MzU0Y2JkYzcgcHkzay1wZXAzMTM3Cis1ODc3MiAwNGJlODlmYTc0OTdjMjllMmEzYjA1MWNmZjY4MTJiMjYzMDkxMDQyIHB5M2stcGVwMzEzNworNTg3NzMgZDdhYjVhZjNjOThlYTk2NWU1NmYwZWYwMTQ4OTI0MGJkODk5NjFkMCBweTNrLXBlcDMxMzcKKzU4Nzc0IGI0ZThlNTIzYjg4MmVlMjZkNmUxNzRmMDQ1YzNhNjVlMmNmMTg4MjcgcHkzaworNTg3NzUgNWIzYmU0YWIyZmUxZDExZTMzYWRjMWU1MDM0ZDFlNDA5ZDFjZDE5NSBweTNrLXBlcDMxMzcKKzU4Nzc3IGVlMWJjODM0ZDhjNmZjZDY1MDUzNTZjOGY4MGY2ZjZkMDc4M2VkZjcgY3R5cGVzLWJyYW5jaAorNTg3NzggYzUwZTZmOTI0MTlmM2EwMmYwZDE3NjljMTA0ZWQwNzcyZTZmNjdlOCBjdHlwZXMtYnJhbmNoCis1ODc3OSAxMWMyZmRlNzhkNTc3MWI3M2MyYWQ5M2ZhY2E0Nzg5ZWQwZDc3OWFhIHB5M2stcGVwMzEzNworNTg3ODAgODkwNGEwYmNiZjRmZjkyMjZhYzljNjgxZTNlNDk3NjMzNGIyMzBmYyBweTNrLXBlcDMxMzcKKzU4NzgxIDJhOTM5NGZiNTBhYzE2Yzc5NjdiNjA5YzUxZDQ1MWFkOGU4Yzk5MGUgcHkzay1wZXAzMTM3Cis1ODc4MyA4YzdkYWFjMGQ0YjBiM2Y0NDZiYzcyZDZhODNkYjI1YjMzZDkxNjhiIHB5M2stcGVwMzEzNworNTg3ODQgNWZjYjY2MDJjNDlhOWM1ZGMxMTRkYzhmMmViNjdhMDFhNjQ0YzUwNSBsZWdhY3ktdHJ1bmsKKzU4Nzg1IGE3Zjk1ZTJiOTM1ODI0Y2IxYmJjZmIyN2M0YzI5ZWUyMjBiZGQ3NGYgbGVnYWN5LXRydW5rCis1ODc4NiBiNjEwODM3NzRjMDhjNDA1NGNjM2NjOGE2NGRhYjI2NzhjMmMwODYwIHB5M2stcGVwMzEzNworNTg3ODcgMDYwNDZkMTc5MGI5MzBiOTRkNTI5OWU5YTliMjg3ZDZkNDM4OTE5MiBweTNrLXBlcDMxMzcKKzU4Nzg4IDkwZDVkODRjYTI3ZDgxZjRiYmE4OWZmZDQ5MzdhZmIzMDZkYTBjYzIgcHkzay1wZXAzMTM3Cis1ODc4OSBhOTgyMzQ0NTE2NjllODUyMzIxZTBkZjMxNzhmNmEyZmRmOWY0NGI1IHB5M2stcGVwMzEzNworNTg3OTAgNmRhOTBhNWFlOWZhYTAzOGJhZjE5NTI2M2VmMGUwOTJjNTVhZjNmZiBweTNrLXBlcDMxMzcKKzU4NzkxIDQyNjRhMDdhMzlkMTNmNjk0NjU5ZGIyNjgzODVhNTIyN2ViMDgyZDYgcHkzay1wZXAzMTM3Cis1ODc5NCBhMDMwZWNlYTRjMjRiNzVjYWFmOGVkYzMxOGU5YTE3ZTUyNGI0YWRiIHB5M2stcGVwMzEzNworNTg3OTUgMjgwM2U5NmNjNjRhZjhjNDE3MGNkM2QwMGYwNGE3NjBiZmZhNGEwZSBweTNrLXBlcDMxMzcKKzU4Nzk2IDRiMzYyMzU2OGU2Y2Y4NGM4OWI1MzY4NWQyMDk1YTc1NTNiNWEyNmIgbGVnYWN5LXRydW5rCis1ODgwMCA4NDRhYzJjZGY3YThlMDU5MTFkYzRhNjlkMmQ4OTE1ZWMzODJhMzJiIHB5M2stcGVwMzEzNworNTg4MDEgN2M0M2Y0ZGNjN2M3YzBiODYwOWU0MmFiNGNhODdiOTlkNTJiN2VhNyBweTNrLXBlcDMxMzcKKzU4ODAyIDZkNDZmZWIxNjRiNmJkZjY3Y2I4MzVjZjBiMGMxZDQwYzUzMzQzMDIgcHkzay1wZXAzMTM3Cis1ODgwMyAwMGM5ODQ2NjYxNWIyM2FmNTY4M2U2ZjA5YjMxOWVmMzMzYjkyNDMyIHB5M2stcGVwMzEzNworNTg4MDQgOGJiM2U3NzY4Y2E2OGZmMjM4ZmZkZmRmMzZmZTczMzkzMjUwMWRiMCBweTNrLXBlcDMxMzcKKzU4ODA1IGFkOGMzZjllYzFiMjk3ODYyYTY0M2Y5MDI5Zjc5NDUzMWE3Y2JkNTQgcHkzay1wZXAzMTM3Cis1ODgwNiA3ZWRiZjI1OGNhZDAwMTE5MzIzOTU4MjZjMGNhNTJmNmYxZDY4OTU1IHB5M2stcGVwMzEzNworNTg4MDcgMTE5Zjg0MWJiODE2NGFkZmI3YzBkZWM5OTc5ZTQxMzM1OGU3MzA5MyBweTNrLXBlcDMxMzcKKzU4ODA4IDAxMTM1ZGRkNzI2ZGNhOWUxOWZmYjY0Y2FiMWJkNTkyMTM4OGQ4NDkgcHkzay1wZXAzMTM3Cis1ODgwOSAzNTc1Mjg0ODU3NDM1MzI4MmNlZjJmYjFkMWIzYmI2NjM4YTRkYjcyIHB5M2stcGVwMzEzNworNTg4MTAgYjQ5YjMxMDdlNDIwMzBjYmRmN2JmZWI4MDk0YTU5NzhjMWFkYmEzMiBweTNrLXBlcDMxMzcKKzU4ODExIGE4ZTdjYjllMzdjOTQ1ZDEyZjAzODA0ZTRkOWExNzRkZTAwZTRmZWUgcHkzay1wZXAzMTM3Cis1ODgxMiAxNDJmMjY5NDdhYmE3ZDg0MjExOWIwN2M0NjYxZDViN2MxYTY1ZGI3IHB5M2stcGVwMzEzNworNTg4MTMgZDI0OTU0NWJhNzkyMjRhNGNiMjY4ZmQ3MmRlNGY1OTQ5OGIxNzBkNSBweTNrLXBlcDMxMzcKKzU4ODE0IGNmY2ZhZDg3ZWI3ZDBmNGUxMjc2YjFkYjdiODA0NGQxM2VlN2NmN2EgcmVsZWFzZTI1LW1haW50Cis1ODgxNSA3MDRlNjcxMWU1MGRjZTVlNjFhMjc1MDBkZDcyNDM1ZWE3ODA0ZWU4IHB5M2sKKzU4ODE2IGQyYmEyYmY0ZTc2YmFkYTU4NGE1ZjUxODY5NTM5MzAyNzAxNjQzOWEgcHkzay1wZXAzMTM3Cis1ODgxNyAzMTdiYTUzY2Q0NWM4ZTZlYjBiYTVmNzQyNDA5ZTY4Mjc5MGY3M2Q1IHB5M2sKKzU4ODE4IDUyMmJiYjkwMDVhNDE3ZGNkMTdlZGE5YzYyNzRkZjE1ZTYxMzRmNDcgcHkzay1wZXAzMTM3Cis1ODgxOSAyZmYwZTgxZTY4ZmNhMjMwNmU1MGI3YTNjNzU3YTEwMzE3ZjUzODUyIHB5M2sKKzU4ODIwIGE0MTQwYTI4YzNlNzYxY2IyM2Y3ZWMxNWQxZWU1Yjk0NjZiZTllM2QgcHkzay1wZXAzMTM3Cis1ODgyMSA4N2QzOGY0MmQxNjM0NDBjYTQyYzQ2YmY2OGQ1Y2YwZjVkM2E1YzVmIHB5M2stcGVwMzEzNworNTg4MjIgNmU0OTFkMTI3NjVjNWY3YjRjZjI1MWIyMWI1MzRmNDlhZDYzZjlmYyBsZWdhY3ktdHJ1bmsKKzU4ODIzIDQ0OTBmMzM1YmJjZDM4YmI3MjBmNjk4Mjg0OWI3NTRlMmM4YTNhMDcgcHkzay1wZXAzMTM3Cis1ODgyNCA2YWRjOTlhNjg4OGZkZWQwZDI3YzM1NTBjOWZkYWZkZjhmZGVhOTA2IHB5M2sKKzU4ODI1IDhmZDY5NGQwZjkwMmI4NjQ3YjRjYzBlMDM0ZDUyOWIzYjQ0NDhlMTMgcHkzay1wZXAzMTM3Cis1ODgyNiAwYzUxNzE3OWNiOGM0MDVjNTY4MDFjNmI4YWJiZmFmYzNlY2FjMmE4IHB5M2stcGVwMzEzNworNTg4MjcgOTIxYWY3ZjI3NjAwZjdjNDk0MzljZTZhMDUyZTc0OGQxYzc2YTI1OSBweTNrLXBlcDMxMzcKKzU4ODI4IDlkZTA3Mjc1YjAwODdhNjZlZTY2MjNhOTFmOWM3NzhlNzZiOGE0N2IgcHkzay1wZXAzMTM3Cis1ODgyOSBmZDFjMTBkMjFjOWVlNDMzZDUxZTgyNTg1OTcwOTc1MzY1OTlkMWMxIHB5M2stcGVwMzEzNworNTg4MzAgM2NiYzc4YzNhNDAzNTQ5NWU0YjJmMDQ3Mzg3ZGI4ZDc3ZDQ5NDMxYSBweTNrLXBlcDMxMzcKKzU4ODMxIGY2MWEwZWU3NDc2ZmFjNjEyMzRiZWEwNzMwY2M4NmI0YjY3Njc0ZGIgcHkzay1wZXAzMTM3Cis1ODgzMiA0OGU3NzkyMjQxMWQ5YzVhNThjY2RjNWEzNDMzY2I5YTQ2MGU0MjY2IHB5M2stcGVwMzEzNworNTg4MzMgYjNmODZjNDFkMGEzYTA3MjVjODhjMjQzMTgzNTdkMzZhZWIxYzA0ZiBweTNrLXBlcDMxMzcKKzU4ODM0IGY3YjQ1MjlkMDk4NDJhM2Q2ZGE5MTgzMzdkZjQwMWFiYzVhMTYzN2UgcHkzay1wZXAzMTM3Cis1ODgzNSAxNGRmZTJmMTM1ODIzMjk5ZTc4OTBhMzU2MmM4Y2FkYjA2MjQzMTM4IHB5M2stcGVwMzEzNworNTg4MzYgZTkwMDY1ZTE3MjEyMDIwNzg2YjI1MWQzNmM0YWU0MTBiZjRiMmQ3NiBweTNrCis1ODgzNyA2NThjZDM0YThjNWRiZTE5NjhjYzhlN2FjYWJmYzkyMDU3ZDYyMzg3IHB5M2sKKzU4ODM4IGRlM2I2M2Y4YjE3YjZjZGU2NGExZjEwMTc0MTVlYjE5MmE5Y2VjOWMgcHkzaworNTg4MzkgMDNjM2E1NDA3MmQ5MWVmNDMxYmJjNTc4MTI2NDAzMjU0OWUyOGE3ZiBweTNrLXBlcDMxMzcKKzU4ODQwIDE4OTEyNTdkZmQxMTNkYTY4MjI0MTczYmYzN2I2NzE5NTgxZTNhNTcgbGVnYWN5LXRydW5rCis1ODg0MSAwOWY5MjJjNGY4ODcyNWU2YWQ3ZTk1OTE0ZjhmNmFhYTRkZTdiNmI4IHJlbGVhc2UyNS1tYWludAorNTg4NDIgZWYxZDNlODcyOTZmMzY1ODkxMDU5NzdjZWYyNGU3ZGU5ZGY4NzE1MCBweTNrLXBlcDMxMzcKKzU4ODQzIGYxZmRkNmI3MDE1ZjAwNWM1MmFmMTFmMjJjZTg5MzIyZjI4MGEyZTggcHkzay1wZXAzMTM3Cis1ODg0NCA1ODVhZDc3MTNlZmVmZWU0MjBhMjY1MjE3OTU3MDQ4OTFiODcwYjkwIGxlZ2FjeS10cnVuaworNTg4NDUgNDQ3ZDJhNDUwMWNiNzJhNjVjMWU3OGY0NzY4YmRiNjg5YzZjMWFkMyBweTNrLXBlcDMxMzcKKzU4ODQ2IDUwNDIzZjQ0ZTZkY2ZmYzVkMjFiMTcwNjdiNzg0ZDZkOWIyMmQwM2QgcHkzay1wZXAzMTM3Cis1ODg0NyA3MWY4NDM1NzUxYmFhNWM3MWZlMDgzZWNkMzNkOTU4N2IyOTg1OWIwIHB5M2stcGVwMzEzNworNTg4NDggMTUzYzBjNzQ0MWFhZjZmZTExNDA4MWI5NjZhODhjMDZjZDRkZjk0MiBweTNrLXBlcDMxMzcKKzU4ODQ5IDVhY2Q5ZGYyNzEwODUyODNmN2MyODc5MDUzNTRkOWU2NTY4OWJkMDcgcHkzay1wZXAzMTM3Cis1ODg1MCA1MWEwZGU5YmFiMzc0NmFmMWE1ZDdmOTYzMWNiNmVlOGE1ZDY4Mjc2IGxlZ2FjeS10cnVuaworNTg4NTEgOGQ0ZTljNGYwMzUwYTFlMGI0Y2ExYzM2NzgwMzQzMWU4NmU5ZGU0YSBsZWdhY3ktdHJ1bmsKKzU4ODUyIDM3NDIzYzc2ZTIwODU4NjhhOTZkZDhhYjAwNWFjM2Y2YzM2MTRhNmUgbGVnYWN5LXRydW5rCis1ODg1MyAwZmQxY2FhODUyMjVmYWNhMjU5ZmUzODgwMTZlMzZkNmUwNjAwNGRmIGxlZ2FjeS10cnVuaworNTg4NTQgMzcxNTY5NDVjYTM1MTZlNWI3YjhhNjU1OWM3MzhlZGQwOWE2ZDg3OCBsZWdhY3ktdHJ1bmsKKzU4ODU1IDAxZTYzMzNmM2I2Y2VmMjM4NzhiZmNkMDEwMDg0ODNmM2M4N2I4NGYgcHkzay1wZXAzMTM3Cis1ODg1NiAxOTg3ZGJlN2ViNmU3ZDcxN2M3MDg0YTRiMDEwNWM5NWMwOTJlOTZmIHB5M2stcGVwMzEzNworNTg4NTcgMDhlZTNjNzNiNmJlY2FjMTYyNTUwNWQ2Yjg2Zjg4ZjE2ZGM5OTczMyBsZWdhY3ktdHJ1bmsKKzU4ODU4IDcwZWYwYjZhODM0NWYxMjJhOTU5ODUwYjE2OWUyNTcwZjZjNTBkZTIgcHkzay1wZXAzMTM3Cis1ODg1OSBmZTljMjIzM2NkMDRmODMyOGY5MTk0NmY3Yjc4Mjk2Y2ZlMDRkZGM4IHB5M2stcGVwMzEzNworNTg4NjAgMzA3ODgxNDZmMGE2YzA3YWIxMzgyNmRhMDQ0MTc4MjkwNzdhMmYxZCBweTNrLXBlcDMxMzcKKzU4ODYxIDc3ODgyM2MwZmZiNjM5OWIzYWM3OGFlYjA2YzUwZTIxZDkyODIzZmEgcHkzay1wZXAzMTM3Cis1ODg2MiBmM2MzMzdlOWQxZTU5N2MzYWQ0YTM5M2ExYjNlYzdlYjExNGE4NmFiIHB5M2sKKzU4ODYzIGY5ZDQwMWYxZTFlZjBiMGM3YmZjNTlhZDkzYWIxOGJkMTJlMmU3ZmUgcHkzay1wZXAzMTM3Cis1ODg2NCBjNDkwYWUwOGQ2MDhiMDE2MDgzOGJiNjMzOTc2MGU4MTc3MWExZGQ1IHB5M2stcGVwMzEzNworNTg4NjUgYzE1NWYxZGVkYTY1ZDg0N2FhZGZjMjJmNWI4ZTljYTAwZmNkNTg5ZiBweTNrLXBlcDMxMzcKKzU4ODY2IDc5ZmU3ZDA2MjA2YzE4ZjQ0MGM0ZTU4MWFkYWUxYmVkZDJkMzc0MWUgcHkzay1wZXAzMTM3Cis1ODg2NyA1M2FmMDQ2Y2MyYzUyZTJlODNlNzQ5MmE3NWQyN2Q1ZmY3NWI0NTYwIHB5M2stcGVwMzEzNworNTg4NjggZDdkYjQ2N2NkOTQwN2FhMDk2NDA0N2E0YjJkNWIzZGVhNjRlOWQzOSBsZWdhY3ktdHJ1bmsKKzU4ODY5IGE0OTRhOTE1MTJlYzllZTQ1ODJlYTZjNmE1ZmRmMTg2ZmVkNzBlN2QgcHkzay1wZXAzMTM3Cis1ODg3MCA4ZDMxYTM2ZjBjYWFlNTA4OWRlMGNmOTM0OGMxNGVhZDRhYTVjYmU0IHJlbGVhc2UyNS1tYWludAorNTg4NzEgZDI0ODUyYjg2ZDcwYmMyNjRlOTFjOTc0MGI2YTc3MmRhMTEyNjM0ZSBweTNrLXBlcDMxMzcKKzU4ODcyIDI5YTU5OGU2OTM4MjYwZjg2NzA5MTdiOWMyMWMxMjBhNTMzMDE1MTQgcHkzay1wZXAzMTM3Cis1ODg3MyA4NzE3OGYzNWQ3MDA3NDk1Nzk2YThjNWIxNTFiMmQ5MzY5YzVlOWFmIHB5M2stcGVwMzEzNworNTg4NzQgNTUzMTM4NDgwOTE4NTM2NWY2MWFmOGI2YWY5MGVhYmFlYWE3MjA2MyBweTNrLXBlcDMxMzcKKzU4ODc1IGNjNjViNjQwMTk4OTQ2ZTRiZmJhMzI3NWEwMDEyOTE2ZmU4MDhlZWQgcHkzaworNTg4NzYgMGIyMDY3OTBmZWI2NDNlY2UzY2Y4ZTEwZGI1M2FmZWQ5MjY3MDMwNiBweTNrLXBlcDMxMzcKKzU4ODc3IGQ4MjRjMzE1ZmNhYzI4ZTQ1ZGFmNGJiMzZhNjU3NTY1OWFiOGMxMTkgcHkzay1wZXAzMTM3Cis1ODg3OCBkZTk3MzkyNmEzNWNmZDI1MzIzODhmOGVkOTRkMmQ1NTVhMzQxOGVlIHB5M2stcGVwMzEzNworNTg4NzkgYzkzYWQ2YzQxN2RmMjUxYmZhYTZiMjNkYzI5YWQ5YTQ3NWRmNWJkNCBweTNrLXBlcDMxMzcKKzU4ODgwIDkxYmExNjk4YTAxMTg2YzJkNmI3YzVhYTk1ZDJkOWEyMmU4MjBhMTkgcHkzay1wZXAzMTM3Cis1ODg4MSA2ZGIzODA4NTJmNjNmZTFjZWYyYmE2YjJkNTI1Y2Y1ODdiZjExYmI4IHB5M2stcGVwMzEzNworNTg4ODIgOTMwYzYwZjhhYWZmYTcyODk4ZjA5NDIwMTI0NzE1OGFjZjIxODZjMSBweTNrLXBlcDMxMzcKKzU4ODgzIGZjM2JlYzIwZWMxNTM4ODhiMTZkNjA0NWEwZWRhNDhkMjhjY2ViYTMgcHkzay1wZXAzMTM3Cis1ODg4NCAwMjI1N2VjNTRkNzkxM2NmNzgyYWY0MTY4MGM2NDQwMjIzM2MwZjZlIHB5M2stcGVwMzEzNworNTg4ODUgY2I4ZWYyNTUxZDBkMGUzNGZjOTNjOGVlNTQwZmZjYzZlMmY0YjU4NSBweTNrLXBlcDMxMzcKKzU4ODg2IGIzMTBmZDJiMDE4NDdhMGM5MWQwN2E4ZmFiMDc4NWMyNzJlMWQwZWMgcHkzaworNTg4ODcgOTBkMGMzNzY2ZTkyOGEzMmI2MGJjYTYzZmVhZGYzYTNhOTViM2I5NSBweTNrLXBlcDMxMzcKKzU4ODg4IDBkNDYyZDc4OWIxOGVjNmE1OWViZTIxMTY2ODhkNWI2OTg1YzIxNWQgcHkzaworNTg4OTAgY2ZlOGZjZWQ4YTEyMjZhZmYwZjE0NGIwZjliOTRmMjNmODc0NTAyOCBweTNrCis1ODg5MSBjNWY3MDhiYzRjYjdmYzAyOWE3NjI5MzczMDExYTQzZDlmZDU4MWU0IHB5M2sKKzU4ODkyIDczNDdmNzViOWMzNDQyYmQ2MzNhZGFlNTMyNjk4ZjI0YzJhMmJlMDcgbGVnYWN5LXRydW5rCis1ODg5MyBkYTU4Y2Y5YmNiMDFiNWE3MjZiYzM2NjVlMWNhNDAzNTY0N2I4OWIxIGxlZ2FjeS10cnVuaworNTg4OTQgMDZiYjgxMDc0N2UxZDM2MDcxZmVlYTJkYmRiMWQ5ZDRiOGI5ZWMwZSByZWxlYXNlMjUtbWFpbnQKKzU4ODk1IDlmMTdhOWE1YjVhZWVkNzRiMmJlMWVmMGJiNmI4MWQ5ZThiNmE5MTMgbGVnYWN5LXRydW5rCis1ODg5NiA4ZmNjM2Y0NmM2OWRlMTczZjI4NzM3YmU1NzkzODUzYWUwMGMzZmU3IGxlZ2FjeS10cnVuaworNTg4OTcgZmE4MmVjOWM4MGNkNjc4NjdmZmVkMjIzOTU1NzJhOTliNWRiZjRlNiByZWxlYXNlMjUtbWFpbnQKKzU4OTAwIGRlNjNlZjE4NmMxZWM1MDAxODgxNWY0MzFmZTZmZjFjZDJkNDNhNDAgbGVnYWN5LXRydW5rCis1ODkwMSBmNDc0ZGU5NzM0MDQ3OGVhYzcxMTc4YTkyNzZhY2JlZDFhYjEwOTkxIHJlbGVhc2UyNS1tYWludAorNTg5MDIgN2JkNzJjNTZmNmE0MGQyZDQzNDFiZjE4MmM4Y2M5OTQxZjRjMDhjYyBweTNrCis1ODkwMyAxMjQ3ZDI0YjI4N2I4YzZkZDIwZTM1ZjM4OWE0ZGFmNGQyMjUxYzQxIHB5M2sKKzU4OTA0IGRiYTI0OTFjZjcxNzYyNWIxYWQ2OWZjNWQ5YTA5ZTg5Yjk0Y2E0ZjggcHkzaworNTg5MDUgZGZiNDYwMDA0Y2ZlMmRmNzAzOTg2YWExM2JmOGFjM2Q5MDgzZjVkOSBsZWdhY3ktdHJ1bmsKKzU4OTA2IDJmMDRhYmQxMzM5NDRkZTMxMzdmMDBkNmI2YWQ0MGJhMWY1YjIxOTUgbGVnYWN5LXRydW5rCis1ODkwNyAyZDhkNjg1NWE2MDI0MTllYTlhOTk2ZTc2ZDgzZmUyY2M3ZmVlNThhIHB5M2sKKzU4OTA4IDJiM2FiZTNkM2FlNmVhMzNkMmIzOWYyOTgzNDg4MGNiNTA4NDIxZWQgbGVnYWN5LXRydW5rCis1ODkwOSA2NmQyNzVmMjlhYzU1MGVhZjViN2YyYTYxZmNiYTg4ZWQ0ODIzY2EzIHB5M2sKKzU4OTEwIDcwMjJhZmZkN2JkMDljZjExNTUzYzIyZjhlMGFmZDQzN2EzZWRjZmMgcHkzaworNTg5MTIgNmFjNjE4ODJmOTM3MGNmZmZiZGFmYjRmY2Y4Y2U2MjgyYmM0NDgzZCBweTNrCis1ODkxMyA2ZDM0Nzc3OTUyMWI1YjI1MjI3MWVlYTA3NWY5YzgxYzg0ZWI1OTllIHB5M2sKKzU4OTE0IDM2MGRmNjQxMjQ0ZDllODExZWZkODlhZDA2MjJhZDQ2YmE2NmZlZmYgcHkzaworNTg5MTUgYjIyZjI3ZTA3MDExNDhlYjYzYjIxZWYyYzM5MTU0YzAzZmVjMTViMiBsZWdhY3ktdHJ1bmsKKzU4OTE2IDJmN2M0MDFjYjYyZTA0OTczMWRiMzZiOWU1YjAxMmU1YzkyNTlhZDQgcHkzaworNTg5MTcgM2MxZjg1OTNhMTRlNGM1NWU3YzAwNjQ4MGMzNmVkNDFhYjc4NGY5NiBweTNrCis1ODkxOCBhZGU1NjYzZTg4ODY4YTMxYzA0NDVjYjk5NWY1YTcwNDI4ZGRlZWUzIHB5M2sKKzU4OTE5IGQ1YzI1YmYyNjkyZWVhY2ZlOWNkOWIxZGJiMTAwZmYwMzlhNmI3YjUgcHkzaworNTg5MjAgODNjMDVkMmUxMGRlY2QwNjMzMDRlZTU3ZWU5ZTdjYzQ4NWVkYWNhNyBsZWdhY3ktdHJ1bmsKKzU4OTIxIDgxZTMzYmRlNmVlMjBhYzQ0YTAxNjk2MWFhODE2ZTljOTBmYjhkYWYgbGVnYWN5LXRydW5rCis1ODkyMiBkZGM3ZDE0YmUxZTk5Mzk0MThiMzQzMjc4MzliNDgxNjk2MzQ4MjZmIHJlbGVhc2UyNS1tYWludAorNTg5MjMgYzFmODgzMTE1NWRlMGU1OGI4MjMzYmIxNWY0ODllZjczNWRiNmQ5ZiBsZWdhY3ktdHJ1bmsKKzU4OTI0IGFhZWVlNTBhMDY0MDE2NzFiZjVhMDc5MzM2MjI5NjMxYTZkYTVhZjggbGVnYWN5LXRydW5rCis1ODkyNSBhYzEyYWM4OGFlZWE5M2ExMDZiYjY4ZTc1OGZiMTliY2ZjMWNlYzRjIGxlZ2FjeS10cnVuaworNTg5MjYgMjBkYzY3ODZmOWFjZmU5ZmYwN2QzMzQ0YzJhYzhlYWVhYmMxOTMwYSBweTNrCis1ODkyNyBmODJhMjBkZGE0NjVlZjIwZDgxOTcxYzlmMTAwN2YxNzUzNjFlMWFiIGxlZ2FjeS10cnVuaworNTg5MjggMTU2MTc2M2NkYTcyZGVjNmNjMjE5MzY5NDVhYzRhYTQ4MTI4ZmMxMiBweTNrCis1ODkyOSAxOTdmZmI5OTZmYjg4OTU5OWI3YmYyZTViYjNiZGY5MzE3MDIwZDUwIGxlZ2FjeS10cnVuaworNTg5MzAgODVjZjMzNGIzMmMzYWMyMWViYzQxYzUxNTYxZDZlM2I3ZjZjYjEyMSBweTNrCis1ODkzMSA0ODdmMzczN2VhZWZkMDIxM2IwZTE5MTEwM2JlOTYzMzY5MDQ5ZmQyIGxlZ2FjeS10cnVuaworNTg5MzIgMWFkZjA2NmYxODc5YTRiOTM3YWE4OWYxZTFhNGU0NjI4YWVlY2IxMCBsZWdhY3ktdHJ1bmsKKzU4OTMzIDVhMTY5ZGUzNmRlNzhjYmI3NTlmNWNlZGJhZjUyYzY4YmZkYzhjNWIgcHkzaworNTg5MzQgMDY4NjU1MDU0YjBkMGQxMzYyYWE3MmIxYzBjZDdkZGMzY2ZlMjYwYiBweTNrCis1ODkzNSBkMmY5ZTIwMTIwZjllOTM1NzQ5ZWVlODc5MTU4NTBjM2E2NDJhZDE3IGxlZ2FjeS10cnVuaworNTg5MzYgMDFhNWJkYzI4MjBhMDExZmE3YzYwODkzODhjNzk2NDhiOGZlNzNkZCBsZWdhY3ktdHJ1bmsKKzU4OTM3IGM0ZTI5MzZkMTMwNzUyMzI0NjUwOWMwM2YxZGE2Y2U2ZDM3YzFiODEgcmVsZWFzZTI1LW1haW50Cis1ODkzOCA1NWNiZDBjN2FhY2ZjMzg3NDIwYmYyOTM1N2U0NjIxYzZhZjNmZDEzIGxlZ2FjeS10cnVuaworNTg5MzkgNGVkMTZjYTRkOTgwMDhkYTEwMDdhYWI3M2U4NWYxNjBhNDRmMzIyYSBweTNrCis1ODk0MCAyOWJlY2UxNDc4OTM5MWRmMWIzNDg0MzEwZmM4ZWU1MzlkMjdmYTlmIGxlZ2FjeS10cnVuaworNTg5NDEgYWRlNThlYjdjOGM3NWM1YmVjYzNiNWExMjljZDgzODU0ZDY4YThkMyBsZWdhY3ktdHJ1bmsKKzU4OTQyIGFmMzQyOGZhZTE1ZmQ4MzM5MDhlYWEwOTI2NjdlZGEwNTVkMGVkNTQgbGVnYWN5LXRydW5rCis1ODk0MyAwMGU2MTY1ZjQ0ODI5ZGVhYmYwNzVmM2JmZWU1ZWY5ZGM1ODM5YzA5IHJlbGVhc2UyNS1tYWludAorNTg5NDcgN2JjNGNjOTcyYjBiM2M2MWVlNDQ2YWMwZGVmMDBiYjQ1MTZiNGVmZiBweTNrCis1ODk0OCA4ZWQzYTk1Y2ExMTRmYjFjMmQyNDAyMDU3NmZlYWE5YzVlNGMzZTdkIHB5M2sKKzU4OTQ5IDE2NGE2YWM5NGQzYzgxZjQyMjc3OGZhZWZhZDBmM2NlZTA0NzdjODMgcHkzaworNTg5NTAgNTkxMmI2NmNjYzJkNWZmNzViNmFkYmNhN2EyMDk0ODM5ZWFlZjRkYSByZWxlYXNlMjUtbWFpbnQKKzU4OTUxIGNlNzdkOTFlYTFkMGJiZGZmYTFiZmNkNDZhNDMwZjBjOTNhNjZmODcgcHkzaworNTg5NTIgZDdlOWJlYzFmZWFhOWE1ZDYwNzUzMTU0ZGVmMGJkZWRiZTg2NDIxMyBsZWdhY3ktdHJ1bmsKKzU4OTUzIGEyMjEzMDYwZDlkZGIwNDhkMWRhMjE3OTkyY2YxNGM2MWIyZDlkZTcgcHkzaworNTg5NTQgMWQ2ZGI5ZGQzZTc3YTdjYzhkODlmYzhmODRlYTA4N2M0YmFmZGNmZCBweTNrCis1ODk1NSBiMzFmNjFkN2Y4YjBlZTAxNGViYjA5YWM3ZWI2NGIyYTg2ODAxODRkIHJlbGVhc2UyNS1tYWludAorNTg5NTYgMWUwZWExZjAzMDU4YjVhMjUxZGYxM2ZkMzhhZjE3ZjI0YzNhYjA0NyBsZWdhY3ktdHJ1bmsKKzU4OTU3IDA4MTExODJhOWNlOWFjMWRkMmEwOWVlZmE0ZGQ4Mjc1OTM4MzQ4Y2MgcHkzaworNTg5NTggNzNjOGUyN2ViOWNlZjQwMmZhY2Y4YTljYzMxZWY5MzFmOGZkYTA0ZSBweTNrCis1ODk1OSBjY2NlYWVjMTE0NDJmOTRhODkzMDMzM2MzYTZlOTk4NjEwYjBkNjA5IHB5M2sKKzU4OTYwIDI0MTI4MTEyM2ZkODM1MWQxMGUwMjE4ZDMyMzlhNWJmMWYxMGVmZjMgcHkzaworNTg5NjEgYTA2MGIzY2MyYzYyYjEyOTZlMWM1Y2U5MTU1NDZiYTJhMDY3Njk5YiByZWxlYXNlMjUtbWFpbnQKKzU4OTYyIDJjOTdlMjRiMTZjZmNhOTMzNDhhODg1MjAzMWI0ODlhNWM4ZmYwNGMgcHkzaworNTg5NjMgNzY4NDRhMGE1NzlmOTkyZTJiMDQ4YmE4N2NiYjNkNjNmNDJkMGRkNSBsZWdhY3ktdHJ1bmsKKzU4OTY0IGQ1ZmM2ZTk2MDkxZmI2ZmVkMjM3YTQ5MjQzZjgyMzAwOTlmM2RjNjMgcmVsZWFzZTI1LW1haW50Cis1ODk2NSAwMzc3YmE5YmMzNTkxNzUyYjc3MTNiZjQ4YjQ3YTM3MzFlOWI5MGE1IHB5M2sKKzU4OTY2IGUxNjJlODgxZWE1ZjRlM2RhNWM0MWQyMzkyY2IyZGFjMTdhNDAxZDIgcHkzaworNTg5NjggMjRjODRkNThjYjgwMTBiMThlNjIzZTc5M2RhNzJmYmRhMTg3YTdmZSBsZWdhY3ktdHJ1bmsKKzU4OTY5IDUzZmMwZjQxZjY4ZDdmMTY2NmMwNjkxOTZjZTkzNjU2MTBmOTQ2MzkgcHkzaworNTg5NzAgOWExMjgxMzkxYzQ2ZTljNTMxMzY3NjZhYmRlMDM2MGFmZWZlYTFmYiBweTNrCis1ODk3MSA4OTk5ODkzYTZlMjIxNTBjODk4OTdhZTQxYjM4NmZjNWIyOWYyMmMwIGxlZ2FjeS10cnVuaworNTg5NzIgMDNhZDFkYjdjODBlNDVkNmRlNjY5NWVhODFiZDBjNjUyN2Y4OGRhMSBsZWdhY3ktdHJ1bmsKKzU4OTczIDNjMjlkNzNjNzc2OTRlNmM3MzU3NGNlNjA3MmM4ZmI2ZTIyNWUxODcgcHkzaworNTg5NzQgZWUwODE2MDljZWU4Y2QzNDUzMTkxMjQyNzYzYmQyZTM0MWNlOGEyNyBweTNrCis1ODk3NSA5ODc5NTczOGI0YzI3OTNmMGNkOGNkOGE4MjE5NWZjMWM0OTVkYTY1IGxlZ2FjeS10cnVuaworNTg5NzYgMGFlOTA3ODc4NmI0MDJlM2YyYmQ3ZjYxOTc0NmM1YTBkOTEwZDcyOSBsZWdhY3ktdHJ1bmsKKzU4OTc3IDAxOTgyOTgwMzg0OGU2ZjExZWZlMDE4YzNmZjgzNGE2YTYwYTk2OWIgbGVnYWN5LXRydW5rCis1ODk3OCBkZDNjNGRkM2VjZmQxNGNkZGE4N2I0ZjhjZGM5MmFlYjI0NGQ3OGIxIGxlZ2FjeS10cnVuaworNTg5ODUgMTc5MTg2NWE2NjhiOWYyZGI0YTBkOGM3Y2Y4OWMxYWM2NTFmYmMxOCBweTNrCis1ODk4NiBmYTZjZGY1NWRlNThmMzZhMjc0MjBhYTY5MDkwZGE5MzMxNzI0YWRmIHB5M2sKKzU4OTg3IGQ0Zjk3MDZjYjQ2YjNjMmIxMjFlM2U0Mzg3MzFjYTBmY2U1YjExYzggcHkzaworNTg5ODkgNTE2MDQxZDUyNjU2ZDQ4MWIxNTc1ZTFlOTQxYWEyMjJiNjgyNWJhOCBweTNrCis1ODk5MCBmNGEzYjRlMTU1YzI1OTM3NGM5ZGM5NWQzYzA5NWZkNGJhNGI3ZmQ5IHB5M2sKKzU4OTkxIDlhMzVlOTI2NjM3OWJjYWE5NWIzNjI1NmRiNTUwYmUwZjc3NjU1Y2IgcmVsZWFzZTI1LW1haW50Cis1ODk5MiA4ZWQwMjgwYzJhYjY3NDg1M2VhMTdlMGIyZTJhZWJiYmJjMzExNDQ0IHB5M2sKKzU4OTkzIGY0NDRlMjU5MzQxYTk2ZTM5YzU0NzgxYzZkMzRlM2QzYTZkNzYzYmMgcHkzaworNTg5OTYgZGU2YjEyNmE4ZDM3NDk1YjY5YTI5MzhmYjI4MjgyODc2ODA1ZWE1MyBweTNrCis1ODk5NyBiNTk4MjVkOWRiOGY5OWU2NjBhZWExYmE1N2E4YmM1OGQ5MzUzYWIzIHB5M2sKKzU4OTk4IGM3OGRiNDkzODQ4MmM3YjZiYzBjYjg2M2IxNjZhMTYxNjI1NTgwNGIgbGVnYWN5LXRydW5rCis1ODk5OSA1OTA5MzBlMTdlMGM5OGY4N2ViZDUwNTdjY2VkM2Q0Mjc1YTA4NWM1IHB5M2sKKzU5MDAwIGQ0MTkzMzMwZDFiZWVhZjkyYjIwMWIyNjI4N2RiZTk1Mzg2YTAwY2EgbGVnYWN5LXRydW5rCis1OTAwMSAxNzM5ODY5Y2JjNmU3ZTM1NDBhNjQ1NDE3Yjc4ZmNiY2UzNmM4ZjlmIHB5M2sKKzU5MDAyIDZiMDEyZjAxYTg4OTA5MzI5YTdmMDVmZmU1NDM5NzgyOTE2NmE4YmMgcHkzaworNTkwMDMgZTIwMjAzZDAzMzFjYzI5OGYxNTJiMWI0ZGI0MTZlOWQwMGI5MTI1NCBweTNrCis1OTAwNCAxN2FhZjk1YWY5MDlhMTYyZTNhYWIyZTQ1NjljZWYwYmMzYjU3Nzg1IGxlZ2FjeS10cnVuaworNTkwMDUgMTE2NWQyNjFmYjA1ZGI1NzNmODJjZWNkY2ZmYTA5OGEwY2Q4MWRiNCBweTNrCis1OTAwNiBjMzE1OTRmYjFlZDQ0ZjAzNmFhOGQ0NWY5ODNiZmJjNjMzMzI5MzY5IHB5M2sKKzU5MDA3IDU1OTAxNTdmNGZjNjE3NTQ5N2ZkZWI0MDQ2NjYxNjk1YjE4YmNkZjAgcHkzaworNTkwMDggNGE2YTdhZWE1N2Y0ZmQ4ODY0ZTgyNmI2MzUzNjY0Mjg0N2U0OGJlOCBweTNrCis1OTAwOSA3MGNmYzdiNTA0YzI4NjM2MjQ0MTAyMjM1NGMxYTBmMzc2ODJkNDBmIHB5M2sKKzU5MDEwIGY2Y2NhNGIyMjYwY2FiZmM4MmExMzAwN2I1Zjc3NGNjOTM5YTNlOGYgcHkzaworNTkwMTEgZGMyMjU2ZTMwMWE5MjM5MmM5YzU1ZmIzMzA4NGViODZiOWFiYjU2MCBweTNrCis1OTAxMiA3MWU3NDU2MmZiNjQxMjg1OGVlZDNiNGIwNTZkMGUzMDU1ZjQ1MmJhIHB5M2sKKzU5MDE2IGE5OWRhODkzZjIwYzFlYWRmYTAyYjM3ZTdmMzM0MzJlMjhjNGI5MjYgcHkzaworNTkwMjAgMjVhNWY2YTMwMjkyNWQ1NzQ5MjFkNjUzMjFjMzI4OGUwNjQ2N2VkMSBsZWdhY3ktdHJ1bmsKKzU5MDIxIDJkZjUzZjA1MzkyY2MxYWU3ODRjOGVkNTM2NTMwOTU4NTNmZDI4YmQgbGVnYWN5LXRydW5rCis1OTAyMiAxZmIzNTM3NzZkZmI0ZTg2MDhiZjA5NjY3YzVhYjBkYzAzOGQxYjk4IGxlZ2FjeS10cnVuaworNTkwMjQgMTQ5NGJkZTUxMGZmOTRlZDk2YWQ1MGNhMmM0MjNmMDA0ZGRhZWEzOSBsZWdhY3ktdHJ1bmsKKzU5MDMzIDk5NWQyNWFhYzE2YWFhOTJiYzk1M2I3NjA3ZjIzYzliZTU1NmIxMmIgbGVnYWN5LXRydW5rCis1OTAzNSAzOGY2MzQxOWFiZDY0NzNhNDRlOWM4OGI3ZjNhMjcxZDg0YTkxNzUzIHB5M2sKKzU5MDM2IGQ1MGM3MDk5ZDRhYTRjMGNkNDRmN2JhZGY2NmYxYTZhNmNlNjUwMTQgcHkzaworNTkwMzcgNDgzZTk1OGQxM2M3NmI2NjRkZTE2YjM3NjQyYjU5NTRlYjZhYTMyNCBweTNrCis1OTAzOCAxMzMyNDUwYmM5NTIxZDAzOGU3NGUzNmQyOWNhYWM3ZWY5YTBlYzYzIHB5M2sKKzU5MDM5IDRjZWMwYzYzOTJjMTNhZDViYTY4OWEwNmVhMDU3NDgwYmExYmQ3NjkgbGVnYWN5LXRydW5rCis1OTA0MCA1MjBlMmVkOTRiY2M1MzBkNWRkNGQyNzA5MjBmYTU1MzVlY2FhZjljIHB5M2sKKzU5MDQxIDQxZjdjMTNlZjE2MTFjNWJkMjAxMWRmZWM5YTY1YWNlNWUyODQzMjIgcHkzaworNTkwNDIgYjkxZmQ3NGYzMmQ4ZTljNGNjMThjZmM2YWE1ZDZkYWE3NzUwYTMxOCBweTNrCis1OTA0MyBmY2Q3NjMzOWZlMWZlNmY3NGY5YTkyNDM3Y2FiYmFkNTAwNDU4NWQwIHB5M2sKKzU5MDQ0IDNhNzMwZjQ5MDhlM2YyZGIzZThmM2U5MDNmYTlkNmJjNGVjZGU3NWQgbGVnYWN5LXRydW5rCis1OTA0NSA3MGRkYmU2N2QzYzQ2MGExYzhlNDVhYmNiMDM4NWIxMDBhMzFmNTI1IHB5M2sKKzU5MDQ2IDE5Zjk5NjU1MzE4NDgwNmI5Yzc5NmM2YzM3ODA2ODAxNzNlYWI0ZTkgcHkzaworNTkwNDcgNmFhOGUxMzVkOWY4NGRmNDAxZDIyMTljYzc5NmZmMjkyNWMzZTY3MiBsZWdhY3ktdHJ1bmsKKzU5MDQ4IDQ5NjgxZDQzNmRmOTIzNmE2MzRkZDYwMjg2ZDEwNDM1NTE1NjE1ZTggcmVsZWFzZTI1LW1haW50Cis1OTA0OSAwZTg5NzkwNWVlOTQzZDk0MjI0MmFiMDljOGEyNDhiNWMwZWQyZDYwIGxlZ2FjeS10cnVuaworNTkwNTAgZTVkNDhmYmUxNjQ2MmM0MGRjMjJmNzBmMGViZmFiNDQ1NWIxZjkyMiByZWxlYXNlMjUtbWFpbnQKKzU5MDUxIDc4MGM3Mjg0MDZlNjc1ZjJiNGZjOTllYzZlZDJlZDllY2IzMjE3MWEgbGVnYWN5LXRydW5rCis1OTA1MiBkYThkY2Q1Y2Y1YTAxYTM0MzA1NzA4MTlkNWE3NGUzOTY1ZGYzZDBiIHB5M2sKKzU5MDUzIDFhZTkyMjRmNGVlN2YwMWE1YTQwN2NmZGE0NGU4ZjU4MDYwYTI0NGUgbGVnYWN5LXRydW5rCis1OTA1NCA1NGI5NzNmMGY1NWI1YjVkNmMwNTZhMmNlMzMyOGUxNzZmMzY0YTBmIGxlZ2FjeS10cnVuaworNTkwNTUgYjZmNTc4MWY1YzNmMGY1NWNmNzUyMTVmOTZlYzZjMGI4ZWY2MTVjZSBsZWdhY3ktdHJ1bmsKKzU5MDU2IDQ3NDdlZjk2NDBhZThiMTM3NTIxNzAyMzQ4MDJjNDYwNGNkNzYyMGEgcHkzaworNTkwNTcgNjFlZjkwYTFiMzVlMjU3Y2IxYTA3NGU1ZTg4N2UxNGNkMzRjMTA5OSBweTNrCis1OTA1OCA0MGRmYzQ4NWIwYmUzN2ViYWEzMWM2ZTg5MTA2OWU4NzA1YjVhYTUwIHB5M2sKKzU5MDU5IDY5Njk5Y2ZkZDI2ZWQwZTUzYmNmMDM1ZWY4ZDQxZTZmNDUzYWJlMWYgcmVsZWFzZTI1LW1haW50Cis1OTA2MCBiMWJjZDU5OTY3MWYwNTE4MWRjOTUxNTYyNDBiNGE3NDQ4ZDBmYTZhIHB5M2sKKzU5MDYxIGE5MTVmMmIxMzVjMDk1ZGZlOTQ5MjlmODNiNmFkMzIwYTQ5OTMzOWEgcHkzaworNTkwNjIgMTQ2YmE5N2ZmZTFhYjJjOWFmNDM2YjAyM2M2M2ZiOTgzODYxZmViMSBweTNrCis1OTA2MyA4ZWE3ZjU5ZGZmNmJjNjNhYzhmYzUwYjJlNjcwMzE5YWY3NmIwMWJjIHB5M2sKKzU5MDY0IGZkZjE0MTcwMzM3YWQ3OGM1ZGRjNDNlODBiMTA1NDBkZTgzYjE3ZGUgbGVnYWN5LXRydW5rCis1OTA2NSAyYTNkNzM0OTVmMTg0ZGNiMWZkMjZlYzZhNjhiY2Q3NjI0YjI0MjBkIHB5M2sKKzU5MDY2IDMyZDQ1N2E3ODg1YmRmMzgyNmJlYmRkZWE0OTk0MTRlOTRjMDYxY2QgbGVnYWN5LXRydW5rCis1OTA2NyBkM2NiMTZiMzIxZDU1YzNmYmZkN2E4NTI0ZmE0ZjlhZDZjNjg4MTFmIHB5M2sKKzU5MDY4IDc0ZjIyOTU0ZjE4OTlkYjRjNDlkMGNmOTZkZGFkMjVjMTY4OTljN2EgbGVnYWN5LXRydW5rCis1OTA2OSA2Y2EwMDQ0NzVhYTBmYzg0Mzc4YjA0ODI4NGMwMjhiZDZjYmRlNjI4IHB5M2sKKzU5MDcwIDJkZTdkMDBmYmYxOTJhYzNhNmZmYzE5ODNmYTI4NWM4NWMxMzRlNGYgcHkzaworNTkwNzEgNTU3NjE0YzRmZjAwZjMwOTg3YjY2NzkwMDNhY2Q0MGU3MzY4NDI2NSBweTNrCis1OTA3MiAyOWIwZjQ5NzVkOWYzMWUyZDEwNmViYjRmMzU2NGYxMjQ5ODk3OTU4IHB5M2sKKzU5MDczIDdhYjQ5MDY0ZDQzMGFhNWM5MzA0NjM1OGExMTEwYWIyZDQzMmQ4YWYgbGVnYWN5LXRydW5rCis1OTA3NCBmNTRlY2Y0OTRjYjcxMTA1MDI2MDgyZTgzOTk0OWM4ZjczNDA4M2QxIHB5M2sKKzU5MDc1IDhiN2Q0MzEzZWJjMDU2OWNhYzkyZmUzNzQwZDMzN2I1YWRkMzIxNWUgcHkzaworNTkwNzYgZThhYzFhZTQ1MDNjZDdhODI4MDcyMjgyOTVkNDU1OWU3YTBlMjFhNCBsZWdhY3ktdHJ1bmsKKzU5MDc3IDljNGJmMThlNWQzMGU2MzM0Y2MzNDQ1ODRiMGZlYmVjMzg4MDBkMDQgcHkzaworNTkwNzggNzFhMTdkNGQzYWZhMGRhNDE2ODg2NzFlMGNjNDBlMWJlZTgxOTUxNSBsZWdhY3ktdHJ1bmsKKzU5MDc5IDJiYTVhYjM4NjhjOTBmYjFmNDdkOTQ2ZWQ1Y2Y0YTI5ZDkxZmZkNmIgcHkzaworNTkwODAgMzhiMWRlYjRlNGViZGY4MzlmN2M5MTZmODY5YTRiOTc2MmNjYzkwZiByZWxlYXNlMjUtbWFpbnQKKzU5MDgxIDg4Mzg4NGZkYWFlOGUxMTQzY2ZhMjk4Yzk1MzAwYWExNjkyYTE1ZjUgbGVnYWN5LXRydW5rCis1OTA4MiA4NjM2ZGNiODAxY2UwNjAzZTQ3YTY1ZmJkNDZmNDk2Mzk2YzhlZmE0IGxlZ2FjeS10cnVuaworNTkwODMgMjVkOWNlMjgzYjM5NGYxYWVkNjlmNzkzZmYzYzVkZDA0MzY5MjQ3YSBweTNrCis1OTA4NCAzZmI3ZWQ1YzIzZGQ2OTBkNDQ0MGJkZDY2ZDc5NTE0ZWM0MTE2MmVhIGxlZ2FjeS10cnVuaworNTkwODUgM2IwNDg5NDExNmZlMjIyZjgyMTQzNTVkZmJkNmVjNmFmZWY1NDU4ZCByZWxlYXNlMjUtbWFpbnQKKzU5MDg4IDc4MmNiNDAzNzhmNDRmODdhMTRjNmFiYTUxN2FkMDRmYTQ1Y2U3MjIgbGVnYWN5LXRydW5rCis1OTA4OSAyZGJjZDM5MGI2ZjE1Mzc4ODNjMTlkM2M0MWRjZDRjOGE4N2QyYjVmIGxlZ2FjeS10cnVuaworNTkwOTAgYjA5OWQzOWMzNDgyZDk1Y2FmZjcyZWYyZTg0Y2YyMzNhMmMxZDFkZSBweTNrCis1OTA5MSAyZmQ3YzkxMTE2MzJhMjUwMGExMGY4MjY2N2YzZGYzNTU3MWJkOWU1IGxlZ2FjeS10cnVuaworNTkwOTIgNmM5NjdjMjY4NDFhOTE0NTUyYmQwNmUxZjVjN2U5NjNhY2Y5YzZlZiBweTNrCis1OTA5NCBjYmM4YjNiZDMxNTc4MWU1M2FmYjg5MDI2ZTU0ZDAxZmMwNmQxMzNiIHB5M2sKKzU5MDk2IDhlMGM0YzcxMDM3NWYyZGM5MThiMjQzNmZiMjY0NWVjZjA4MWU3N2EgcHkzaworNTkwOTcgZWE5ODg0ZjE0NTQ1OTg4NWJiNTE0ZjFjZTA4NWQ3OTE5YjI5ODEyNSBweTNrCis1OTA5OCAyYTNjYTkwMDA4ZmZmZWMxZWNjMzAxY2RhN2E0OGFmNmE1OTI4ZDY5IHB5M2sKKzU5MDk5IDMyYmZmN2YyOTc1ZDgxMGE5OWQ2OWQ5YjNkYWI5ZTE1ZDhkYTY3YTEgcHkzaworNTkxMDAgNmYxNDk1MjZlODY0YzQxMDQ2ZTRkZGVhM2I1M2YyZTU3YzQ1YTJjMCBweTNrCis1OTEwMSBkZGJjNWUyYzY4OWE3YTQxMTEwMmQ4YTU5MDYyYTkxYzk0MzAxZGY2IHB5M2sKKzU5MTAyIDA5MmI1MzA2OTgzZjcyMGJiZTAxZWIzZTFiZWY5NzcyMjE5NTg4Y2QgcHkzaworNTkxMDMgNzUzNjQzNjQ0MDhiNjkzMWQ4M2Q4OWJjNTA1ZjFkMmU1MmZlZGI0NSBweTNrCis1OTEwNCBmZTViMmVkZmZhZTc2OWFjY2E1MDViMjhmMzNhODA3ZGVhYjQ0NTY2IHB5M2sKKzU5MTA1IDIzYmVmZTU0MGQwZDU0NmRkMTY5ZTdiNTU0YmQ5YmM2MDY4MGQ2NzggcHkzaworNTkxMDYgMTAzYjdmOTU1MDM2ZWEzNmY1ZmVjNWQzYmQ2NjgwYTU2Y2JlYzdiMiBsZWdhY3ktdHJ1bmsKKzU5MTA3IDEyMDk5NzA2MTJkZmUxODExNjA2MDE0ZDFlYTczODRkY2U0ZmE5NWMgcHkzaworNTkxMDggOThiNDk2NjY0OWQ1MWIwOTNlMTkxOTdlMWM5MmE2ZGJhNGMxMjMyYSBweTNrCis1OTEwOSBiMjMxYmRhNjUzYTRmOWIzNWY2MWRjZDI2NTNkZWFkOGFkYWQ2OGJmIHB5M2sKKzU5MTEwIDI1OWU4YTJkNmY4YzI3MDU5NDUwZTgyZGQ3OGVmMmZhYjYzZThiYmYgcHkzaworNTkxMTEgMTRjNGJiM2M2NWE3YzdlZWY3ZWJiZjE5MDFlMWY4YzkyOTlmY2E3MCBweTNrCis1OTExMiAyNjU1ZDExMzEyMzJjMWNmZDI1Y2IyMDkzNTQ5MzY5MzJjMWMzMWNmIHJlbGVhc2UyNS1tYWludAorNTkxMTMgNDFiMmYyNmM3YjNkYmM1MDg4NjFiZWM0MTQzYTE5NWU2YjA2MTcwMyBweTNrCis1OTExNCBkMjM4MjlhOWRiMjExOTNjNmU0ZjE1YzRiOTZjM2IxNGU0YWEzYTVhIHB5M2sKKzU5MTE1IDhkMWVlZjM5MTlmMDUxZTc5ZDU3OWI2OThhNjYwYTc3MjdjMmYwZjAgcHkzaworNTkxMTYgZDliY2Q5NGU1OTM1ZTZiNWY5MWE0YjIxYWRhYzhmMTQxNmZiYTYzMiByZWxlYXNlMjUtbWFpbnQKKzU5MTE3IDhiY2JmMzIyYzJiNWMyNzkwZTdjMDlmYzVmNTU3MDhlM2I3YjczZTYgcHkzaworNTkxMTggNGE3NTUzYjE3NmI2YTFhM2NkNGMzMDFhMjY1ZDJjYWY0Y2YyNDkyNCBweTNrCis1OTExOSA3Mjk2MmFiZDkwYTE2YWI4NTZiYTY5ZTIzZWYwZjJlZGJmNWM3ZmM0IHB5M2sKKzU5MTIwIGE4ZGQ4ODc0ZmYyZDUxZWJiNzQwYTM0MzkxNWMwMGM4NWYwMDMxZTIgbGVnYWN5LXRydW5rCis1OTEyMSBmNjMyNzIwZDgxMDI3Y2U4OWYyNDYxYTQ1MDcyNTNjZDZlMjQxYTg0IHB5M2sKKzU5MTIzIGRhNDc4NDcxZjFiNmI4Njg1NzdmYzg2ZDM5N2FhYTQ3OGJkZTZiYjAgcHkzaworNTkxMjQgNmQ2YjYwOWU0NTdjODA3NTJhYzVkZTA1NzFjNTMxY2UxZjcwMGI3OCBweTNrCis1OTEyNSA4NzQ0ZTQxZGFmNTQ1Y2QxODZjMTI1ZTVjYzEyYzgwZTVhYzNiODc4IHB5M2sKKzU5MTI2IDNjNzI1YTQzYWM4Y2Q4ZTY3MzEyYTQ2NGVhY2E4MDZlZTY0MjU2NDYgbGVnYWN5LXRydW5rCis1OTEyNyA5MzUwZTQyNWU1ZjNiYjdlNWI2NGZmZjBmYmQ4YTk1YTRiNDIwNWZmIHJlbGVhc2UyNS1tYWludAorNTkxMjggNDljZWZlY2NmOTNlYmY1YWI1MmZlYWExZTZkNzhkMDY3ZjVkMzYzOSBweTNrCis1OTEzMCA2ZmY2ODUwNTE5OWFlMTg1MWZkNmJiNjdhZGFhNGZlOTM2ZWZjZWI4IHB5M2sKKzU5MTMxIDYyY2YwOGE2NGJjMjMxNDA0MTkzZTdkODBiNzQyMjM0N2EzNDE1YmMgbGVnYWN5LXRydW5rCis1OTEzMiA1ZjZhOGUyYjllOWNhNmRkNDQ2MjcyZTliYjllMWM1MjYxZjM2MThjIGxlZ2FjeS10cnVuaworNTkxMzMgZTcyNTE2NmM4YzgxODRmODBmZmQ2ZmRlY2VjOTQ2NzUwY2Q0MWUxMSBsZWdhY3ktdHJ1bmsKKzU5MTM0IGFmMzYwMzgwYWExNmZmMzdlNjYwZWYxZjVhNDIyMzUzYzllZmNiODEgbGVnYWN5LXRydW5rCis1OTEzNSAyMjMwZjE2ZTQwMmIxMDUxMzNkNGI4ZDE3YThmNmFkYjVkNTViNTc4IGxlZ2FjeS10cnVuaworNTkxMzYgZWQyOWI5MTYyYWU5ZTlhNzM4YmFhZjMwNzEzZTE3NzFhZTIyZTA1NiBsZWdhY3ktdHJ1bmsKKzU5MTM3IGI0ODFhZGIwNDY5OWFjM2Q2MjdlNTk4MmU0ZmVmYjU3ODMwNGMwYjUgbGVnYWN5LXRydW5rCis1OTEzOCA0ZDBmZTdkYTRjZDVmNmYyMGY0ZGQxMTI4YmU3YzJiYjllNTdiYTY3IHJlbGVhc2UyNS1tYWludAorNTkxMzkgMzU4NmE2NjM0OGJmODRjYTBkYzkwNmI3MzcwNTRhZWYyYWI3NDU0NiBsZWdhY3ktdHJ1bmsKKzU5MTQwIDRlMWExOWJhM2Q0YTYzOGY1YWRjZDM0OGUwNmNkNmZkZjNjMTI0YzQgcmVsZWFzZTI1LW1haW50Cis1OTE0MiA2OGNhYTQ3ZjVlMTUzZTM1NTczMDhiMzM3NjYxYWJmNWY0ODAyNjA1IHB5M2sKKzU5MTQzIDExZTNlMmFlMjM2NDNkMjIxYzYwMTMyNmY0OWU3OTAxY2MwZjExZWYgcHkzaworNTkxNDQgYTRhMTQwNDg2NjkxMDNkZjJjYWJlYjNiMzc5MzAwNjExZjY4NDYzMyBsZWdhY3ktdHJ1bmsKKzU5MTQ2IDU1ZmFmYjQ2ZmE0NTVmNWJjYTZlMGFhYzBkNDY3MDg1ZTczMWQ0N2UgbGVnYWN5LXRydW5rCis1OTE1NCBhOWNmNzgwZjYzOTZhNzJlOWNmZjgwN2ZhOTViM2Y4NjQ4NWUxZjdmIHB5M2sKKzU5MTU1IGI4NmU2YmY3NDM4Zjg4ZjMzOWNiYzViN2U0N2ExOWU4ODY1NmMzM2QgcHkzaworNTkxNTYgMTc0NzlhMDllYzdjY2Q1NTE5MDU3MmE4NGNlNzIyOWU4MmQ1ZGJlYiBsZWdhY3ktdHJ1bmsKKzU5MTU3IGJiMWUxNWJiN2I1OWVjODU5Yjk0NTY5MzI4ZGE1Mzk4NmYxZTkxNmIgcHkzaworNTkxNTggYjliOTQ3ODViMmM3MmZjNWM4YmM3NGE5MDgyZjkyNjJiOGNiMTJlMCBsZWdhY3ktdHJ1bmsKKzU5MTU5IDE1NWU5NzI1ZGEyZjkzNDc1OTU1MmZjZDFkYmIyMGVhZGNiZDc5N2IgbGVnYWN5LXRydW5rCis1OTE2MCBjZjYwMzhkZjlkNTI2OWM4ZTFlZGE3NzRjOWUxMjg4MzY5OTA1NjQ1IHJlbGVhc2UyNS1tYWludAorNTkxNjEgNDlhN2M3ZGJhOGNhZmY0ZGE5ZjA3MDNiOGY0OTJhNDU5ODA4MWY3ZiByZWxlYXNlMjUtbWFpbnQKKzU5MTYyIDBiNTM1N2NjNDE2YjhmMzU4MjRiZjMzNDExMjBmMmZlMTJmODdmMzkgbGVnYWN5LXRydW5rCis1OTE2MyAyYmVkODQxNTg1YTljYTY1YjBiNzRiNzcyNmU0NzRkZGJiZjk1OTRlIHB5M2sKKzU5MTY0IGQzYmU2ZTYxNWY4YzQ2ZGFhNjVhZjgyODdmYzI2NThlZjY2NzdkOTUgbGVnYWN5LXRydW5rCis1OTE2NSBlZGI3NWMwOThhNGIwNTlkODQyMDc2OTQ4NTczNTRlZDYxMjYxMmMzIGxlZ2FjeS10cnVuaworNTkxNjYgNmQ2MTRiOGM1MTI1MzJlY2Y4MDcxMTAzMTRjNzNkZjIwZmRkMGIwYSBsZWdhY3ktdHJ1bmsKKzU5MTY4IGNmMjIwNTk2MGNiYmFhZDZlNDVjZDczNTRhNWJmZDhhZDU2MjhiNTYgcHkzaworNTkxNjkgMjA2OGJmNzc4OTFkMGI0MjQwOTI0Y2M4Yzg0NTc1ZDEzMWJkZTg4MSBsZWdhY3ktdHJ1bmsKKzU5MTcwIDIxODNkNzJhYmZhYWNmY2RlNWNhM2ZmOWYzNGQ4NWE2ZTIwYzUzYWEgbGVnYWN5LXRydW5rCis1OTE3MSA0Y2Y5YmI5Y2VmOTFmNTAzZmM2MTlkYWM3MDIzNzQ5NTI4MDE2YTI2IHJlbGVhc2UyNS1tYWludAorNTkxNzIgZDU2MDFlYmUxNWE5NDcwZDFkZDMzZTg1ZDczNTI3YzU2MzRkM2EwNiBsZWdhY3ktdHJ1bmsKKzU5MTczIDE0YWEzZTRlNzM3NTliN2E2NjdiYzdiZWZmMTYzZjIzZmZjNTdiMTAgbGVnYWN5LXRydW5rCis1OTE3NCBlMDQ2NWJhMGU5NWQ2OGJmMTYyOTUxZmZkNDJiYjZhMzRhNGVhZTVkIHJlbGVhc2UyNS1tYWludAorNTkxNzYgN2RkNzk2MWUwZWZmM2ZmNGM3ZmMyMmZlZDYzY2QxOWI2MDQ5YTgxNiBsZWdhY3ktdHJ1bmsKKzU5MTc4IDIyZTA5OTA1ZTQwMDBhZTdjZmY0ODZjYmZjNjc1MjFiZWM0MjlmZDYgcHkzaworNTkxNzkgN2I0ZTk0YTdiOTJlOWVlMDFhYWY3NzllNDVkZDg3ODgwZWMzMjdjOCBweTNrCis1OTE4MCBhN2MxOGI5MjQyMzZhMDdlOWE2M2Y1MTgzZDFkODI4YWI1MWMyYWVjIHB5M2sKKzU5MTgxIDdiMzAxMTEyNDdmNjcyMDA3YzI2ZWM3ZTM0Mjk5NGRmMzMwODljZWEgcHkzaworNTkxODIgZTYxNjVlMzg5YzUwMjJiNDY4NzNhNWYyOWRlODI3OTEwODAyYWE1ZSBweTNrCis1OTE4MyBmZjVkZjFmYzBmY2M0YTZkZjMzOGE4Y2VjNWYxODRkMDk5NGU3MDljIHB5M2sKKzU5MTg0IDUyYmJlMzM2NWM3MmMyNzBmNzVkMTczYzBjNjk4ZWI0Y2U2MDE2MDQgcmVsZWFzZTI1LW1haW50Cis1OTE4NSA3M2Y4Mzg5OWViOWQ5ZWMwMGU2MjJjZGIwMGUxN2Q4MjY1Yjk3NmM4IHB5M2sKKzU5MTg2IGU0YjFlMDVjZTI2MzUyNzU1YzAyZDMzZDkxMTlmN2E0ZWYzMTUxNTYgbGVnYWN5LXRydW5rCis1OTE4NyBlYmM3Mzg5Mjk3ZDY5MWM2ZTE1OWM1OTk5OWU3ZTAyODVmMGQ1NjZkIHB5M2sKKzU5MTg5IDQ4YWY2Mzc1MjA3ZTcwOGRiNDFjMTliNjAzNzNiYzYxZGYwM2ZlYjAgcHkzaworNTkxOTAgZjQ4ZDJlZjcyZTdlMzk0MjRiMDRhYTI1NThiOWJmNjBiYTA5YmNhMiBsZWdhY3ktdHJ1bmsKKzU5MTkxIDA0NzY0NTdmZmIzOTFmZDJmMDQ2OGM3MjJlN2JjNWU2Mzc1NDE1NjAgcHkzaworNTkxOTIgZTdmZWQ3YTU5NTc2OGRjZTI5M2U1ZDA2M2U2MGRmOGM4MjBiY2ExOCBweTNrCis1OTE5MyBiNGRhNzFhODhmYzAxNWVkNDI4YTdmZWVjZGExODM4ZjA5NTU5OWNjIHB5M2sKKzU5MTk1IGYyZTI0NzlhZmRmMGIzMzA4ZjI3NWJhNjhmZmU3Njg1NjFmNDM5MjYgbGVnYWN5LXRydW5rCis1OTE5OCA4ZjkyYjRlZTZmYzRjZjU5NTQ4OWJiYzViOGI5MmIyZDVkMWYyYTEwIHB5M2sKKzU5MTk5IGJhMzA1NjExOWIyODNjMGQzOTQzOGQyZTU5MzEwNjM0ZjE0YzM2NTUgbGVnYWN5LXRydW5rCis1OTIwMCA1ZDEwNDlkNGMzYzY1ODQ3MGRlMDM3MTNiZGMyZTZiYzlmZGQxM2RlIGxlZ2FjeS10cnVuaworNTkyMDEgYmZlMDM3ZTNmZDU1ZmYyZmI4N2RiNjA1ZmZmOWU2YTgzMTU0ZmJiMCBsZWdhY3ktdHJ1bmsKKzU5MjAyIDQ1Y2VkNmFiMDY2ZDViYzYxM2QxOGVmZTk3MDFjMGZlZjY0MGU0OGEgcHkzaworNTkyMDMgNjBlNmVhYTM3OGQ5ZjkxYmUyYjQ5OGQ2NjJhNTZkNWVjYWJkYTE5NyBsZWdhY3ktdHJ1bmsKKzU5MjA0IGQ0NGZmZmRhMmNkMDg3NTdkZWQ1OWI3M2FjNDI5N2IzODUxNzE2YTIgbGVnYWN5LXRydW5rCis1OTIwNSAxMmU3MjgwMzVlMmM2Y2YyYmZkMTMzMzg2NmZmNDlkNjMxYjBhNmEzIHB5M2sKKzU5MjA2IDcxZjQ3Zjg2NDY5MWU4NDRmMzZjNDgxYmUzYmU3NjFiMGFmN2NmM2EgbGVnYWN5LXRydW5rCis1OTIwOCA3ZThlODc5N2Y5ZDBhODUxOGI1NmIxMzI4OWIxNTM2YWZlZmQ4ZDFmIGxlZ2FjeS10cnVuaworNTkyMTAgOTE4YmJlZTNhNTQ1ODgwMGYyYmUxZWYxYmZiMzhmNjc2MDE1OWI4NSBweTNrCis1OTIxMSAxZjAyNGE5NWU5ZDkxNmEzOTQ1M2UzZDYzOWZlMDdlYzU1MDU5ODBlIHB5M2sKKzU5MjEyIDUzYjA4ZmQ4OGJmNDc1YmI0ZjY3OTk5MWUxMTRkYzA0YzIxMWMwYWIgcHkzaworNTkyMTMgNTMwZmI5ODUyYzUwNDNmZWMwYmQzNzNiYjNkMmUyNWVlMTM1ZGQ5MiBweTNrCis1OTIxNCA0YzM5MDI5ZTNmYjAzMGE2N2Y3NTVmN2M2MThmYzNjZTkwODgyMTRiIHB5M2sKKzU5MjE1IDQyOWNhZGJjNWIxMDkzY2Q4MDdlYzg4MTY1ZDU4YTdjMWNkOWMxNWIgcHkzaworNTkyMTYgNDFiN2Y4MDI2NWRiMTliMzk4NDg1NzU0M2ZiM2MxYTZjYmJhNjQ1OSBweTNrCis1OTIxNyAxNTY0OWFlZjJkYjU1ZTEyNzAwOTQxYTNjYTNmMDE1N2UzOWVlOTNhIHB5M2sKKzU5MjE4IGVjY2IxOTcwNDRkZDQ5NWQ3ZDYxMDRmMDc2NzU3ZjZkNjhiMjhlODggbGVnYWN5LXRydW5rCis1OTIxOSBjMDI0Yjg5NGQ5MjljZWQ0Y2I2ZWM1MzkwZjg4NGI4OTQzYTZhN2MzIGxlZ2FjeS10cnVuaworNTkyMjAgZTZjYTkyYjE4Y2Y0ZGE0MmVjNTkwN2RlYmQ0MzY1Y2NmZTFlNzViMSBweTNrCis1OTIyMSBmMjM4NWQ5ODI4MmFiYTBkOTEwZDAwOTliNzlhZWNhYjYxY2I1ZDA2IHB5M2sKKzU5MjIyIGM0YTZkM2VjNDJjMTI0OTI2NzFjNzg3NzlhOWYwNjRjMzBkNzU2ODIgcmVsZWFzZTI1LW1haW50Cis1OTIyMyA2ZWQ3N2ZkYThiOTE0ODBhYjliZjUxOWFjNjY5NDMwMTFiMjVkNGM2IGxlZ2FjeS10cnVuaworNTkyMjQgYjZiNWI2Y2RkMjAyYTkwZWQ1ZGUzMjAxYzc5ZWJhNmEwM2JhNDM1YSBsZWdhY3ktdHJ1bmsKKzU5MjI1IDllZjg1NzI0ZjRiMWY1MjM3YTMzMmE0ZTNlZTEzNTdkNDFjOGNhMjMgcmVsZWFzZTI1LW1haW50Cis1OTIyNiA0OWFjNTg3ZTIyZTkxZjAxN2ViMWQwMjMwMGE0YjM4ZTdmZGU1YWU4IHB5M2sKKzU5MjI3IDI5NWNmMDVmZGQyYzMyOGM3NTAxYzQzYzA2NTYxZTU5NGM3Njg4ZjkgcHkzaworNTkyMjggZDYzOTQ1OGM3ZTAyNDVjYjNjMDRjMTBiYTMwYzEzZGQzZTkxZGZjYiBsZWdhY3ktdHJ1bmsKKzU5MjI5IDBjYzU1MmFiNzZiZDM5YzNmMDVjMzMyODIwNDQ0Y2M1MDE5YTdiYTcgcHkzaworNTkyMzAgODk0ZmVlMjc5ZGJjZWYxNjFiYzExZTdlYTRmZWUxNjcyOTg0MjE3ZiBsZWdhY3ktdHJ1bmsKKzU5MjMxIDQ0MTdhYjViMzUxZTZjZDg0Y2RkMDNmYmU3ZTBiNWNiOTUyOTg3MDIgbGVnYWN5LXRydW5rCis1OTIzMiAwMDA0OGZlZGJhYTBlMjJlM2ZmNTZiOGI5YzIwYTQ3MjViOWZmYWM3IHB5M2sKKzU5MjMzIDNlZjZkYmM0MzUzMWExY2JmMjg0YTZlY2VkYmYwOGNlNGM3NGUzNjcgcHkzaworNTkyMzQgMjhjODAyODM3MjUyMzNkMWY0NTY0NmNlYzcxMTdjNDRjNzI1MzdhYiBweTNrCis1OTIzNiAzY2ViZGU0NzhjYzRkZmUzMzc3NWM5NDEzNDM2ZGUxNDVhOTRiOWEyIHB5M2sKKzU5MjM3IDUzMTEzMTA2ZmViYjU5NTVhNDExNWI5OWMzMDY2OTZmYmFkMTMyMGYgbGVnYWN5LXRydW5rCis1OTIzOCAzYWExMTBmNjgwYWIzZTBhMDgxNzI5ODRlMDg4YWQ1N2Y2ZGZhYWNkIGxlZ2FjeS10cnVuaworNTkyMzkgZjU2NDQwNWM4MTA0MWRmYjhlNmIwNTU4YjZmOGViYTM1NDc4ZDA5OCBweTNrCis1OTI0MCBiNDQwNTllMGYwNzU5ZWQxMmNhYWU1MzU5ZTFjM2FmODU2NDBjYmE3IGxlZ2FjeS10cnVuaworNTkyNDEgMmY0N2IyMjhiYTA2NTRhMGEwYzE1YjU4YTEwMmViNWViNjVhM2MwNCBsZWdhY3ktdHJ1bmsKKzU5MjQyIDc1NzdiOTllYzUzYjU5MmJjYmU5YmY0NTkxZDRiNzFiN2MyYzQ5YTkgbGVnYWN5LXRydW5rCis1OTI0MyBjNWYyYzk3ODkzMTM1ZmJmODczYTA2ZDkyOTRiZGI0NzQwMzhmYzIxIHB5M2sKKzU5MjQ0IGY0ZTdjNzI5YjNhMjRlYzJiODViZWZmY2I0ZTU3OGRlYjY2MzBjOTMgcmVsZWFzZTI1LW1haW50Cis1OTI0NSAxNjVlNTI3YzM5OWFlZTUyODY1MDRmMGUzMmRlZTJlMjI5YjYxMWY0IGxlZ2FjeS10cnVuaworNTkyNDYgNTFjMWVhZWI4Nzg2YTY5MmQ1MzY0NmJjM2NiYzk4NTdlZmFjN2Y4MiBweTNrCis1OTI0NyA2NjRiMGJjOTJiOTZmZGU5ZTc1ZTYwODc5YTBiMTdmOWRhZjlhNTYxIHB5M2sKKzU5MjQ4IGRjYzRiYzU4YWY1MmI3ZWM2ZjA1MDUxMmE0NmJjNDNlYTNlMzY1OTkgcHkzaworNTkyNDkgODBiNDJkYjJlYWM5MmJlODllZDE0MGI2OWU0MjNmNzQxYjEwZjZlYSBsZWdhY3ktdHJ1bmsKKzU5MjUwIDJiYWFiZWU0MDcwMmY4NDYwYzFiZTcxZWZhMjlkMDM1NDA4OWYzN2QgcHkzaworNTkyNTEgNGNiOTVmYzQxMjllMGUxMzU4NDFmMDcyZjQ0ZTU1MTBmNjBiZjM5NiBweTNrCis1OTI1MiAzNTFiN2JkNzg2ZTRhZWVkMzNkOTZmZmFhNGQ2MGRiZWVjZTNlOTYzIHB5M2sKKzU5MjUzIDJiMjFmMTU4YWI5ZmYzMTUwODYzOGU4MmFiYmMxODgzMTQ1YjMwMjggbGVnYWN5LXRydW5rCis1OTI1NCBjMjE4ZDFhYzkxNmU1ZmU0M2JkZDNkNWE1YWQ1OGUzNjIwZTJiMjQ3IGxlZ2FjeS10cnVuaworNTkyNTUgMTEwZmY2MTRlYzI4YWRkZWY2M2YxZmNiZjYwZGM2NThkNjBkMDUwOSBweTNrCis1OTI1NiA5NDRhZTM0NWU5ZmZiNDFhOWExOGFlZjIxOGFjOTIwNzYzNTBkZWQ5IGxlZ2FjeS10cnVuaworNTkyNTcgODZhNzM1YjQyYThmY2VkOWZiYmUwYzViYjVmNjM1ZGU3M2QxOTU5YiBweTNrCis1OTI1OCAyMTMyMWRjZjBhYjVkOWY3NmYwNjFjY2NmZTAwZWUzZjc4OWQ3ZDE4IGxlZ2FjeS10cnVuaworNTkyNTkgNmQ3ZmQ5NWVmMTRhZTk3ZDI2MzE3ODU1ZjFhMjk3ZWMzZjFhMWY1ZSBweTNrCis1OTI2MCBlNjM0NTExYjRhZjVkYThjZmU2ODdjMjIzZTg4ZmM1ZjJlMzQ5YzhmIGxlZ2FjeS10cnVuaworNTkyNjEgYjIxYjFjNGYwNDM5NWI5YjJhMWE1MGEwNTk1Y2U2MzYwY2JlMzU5YyByZWxlYXNlMjUtbWFpbnQKKzU5MjYyIDRmMWIyMGVkOThlNWZhNzU3ODA4MDBkNDY4Mzc5MDBjY2U4YzNiMTAgbGVnYWN5LXRydW5rCis1OTI2MyA2MjI0ZGNhYzgwN2Q4NzMwMGM5YjdjOThhNmFkZDc5NmEyMmEzZGU3IGxlZ2FjeS10cnVuaworNTkyNjQgYmZkZWE2NTM4OGMzMWE2NWJhYmJmM2RlODE5ZjFkMDQyOTU0Mzk3MSBsZWdhY3ktdHJ1bmsKKzU5MjY1IDE5OWRmZjg1MzBhZDlkYjk2YjNlMDA3ZjUwY2UwZDM4ZTc0YTc5MGMgbGVnYWN5LXRydW5rCis1OTI2NiA4MjMxNDFhZGIwODAxYWE0M2VlYWJmYzIzY2QxOTFiODc2YzFlYThjIGxlZ2FjeS10cnVuaworNTkyNjggMDg4OWRhZjZkMGQ5NGI1Zjk2N2FkNjk3MGUyYjlkNTE3YWFhNmE2YSBweTNrCis1OTI3MCBmMzI0NjMxNDYyYTI3YzZkMmE2ODRmM2JiNTcwOTE4NWZmNmI4ZjJhIHB5M2sKKzU5MjcxIDFhYzdiYWFlYmNlNzc1NDlhNmM1N2I0MjI1ZmM2ZTFmN2NkNzdlMWQgbGVnYWN5LXRydW5rCis1OTI3MiBhYmEzZDA5NDlhMWQ1NTJkZDdlZWZhMTlkZGM0YTY4ZGE3NjA2ZWUxIGxlZ2FjeS10cnVuaworNTkyNzMgZTdiY2FjODU2MjQ1MmM2OWE0ODIwYzJjNWUzODllNzNmMGFlMGNlNyBweTNrCis1OTI3NCAxZTI2NjAxNWNmNWJhZWNmZDQzMDc4MDRiMGE0ZGVjNjk2ZjUyNzdlIGxlZ2FjeS10cnVuaworNTkyNzUgZmYxNzY2ZWIyZmNlZWYzM2U1OWE2NDUzOTQ3MDliYmUwYTIxN2E5ZCBweTNrCis1OTI3NiAyN2ZkY2EzYWE3ZDQ2OGQwY2FkMTA5OGM5YzBiMjhmMWVmMmRlYmUwIHB5M2sKKzU5Mjc3IDQwZmNhYWRmYjE2NjNmZDlkZmJhZGE4ZjVjNTMyNWQwYmM5ZWI2ZmEgcHkzaworNTkyNzggNGUxZDY0OTEzNjdjNzU4ZDMwNmQyMjdiNmU3ZGZlMDc3Nzc2MWYzYSBweTNrCis1OTI3OSBjZWRiN2FkYzg3YzVmN2MzYTM3ZWFiZjEwZTI3NWNhOTRkM2U5MTg1IGxlZ2FjeS10cnVuaworNTkyODAgMTY5YTgzNjQ1MzY3MTcwOTlhZDQ1YjQxYzE1NWE2NTZjMTc1MTY2OCBweTNrCis1OTI4MSA1NzgxZTE5MjhiY2E2NTYzM2JkMmVjNWMzZWZhYzEzODY5M2VlMjA5IGxlZ2FjeS10cnVuaworNTkyODIgN2YwZTQ4NTM2YTI3YjM1YzAyOWFjYzkzZjlkNDdjM2Q3YThlNDY0OCBweTNrCis1OTI4MyBhMWMzYmQzODI3NzFjZTQ5YmFlOGZmZmMwMDA4NTkzZjQ2Y2Q3ZDhlIHB5M2sKKzU5Mjg0IDkxZDExNGQxYjU4NTEzNDgxYTgzNGNmYjI3YTI5YTJlNTMyMzkwMGMgcHkzaworNTkyODUgNDg2ZGM0ZGYzNzg5Njg3MTBiODA2OTg5NmI5NGUzNzlmZmYyM2FjNSBweTNrCis1OTI4NiAyMGFjNDc3N2MwY2ExMDNlOTJmNGUyOTc3ZWFiOGM1Mjg1MmI3ZWUzIHB5M2sKKzU5Mjg4IDgwM2VkZjliMWRkOTE0MzMyNmVjYzJlNmFmYWM3NWJjZjYzOGI0ZDYgbGVnYWN5LXRydW5rCis1OTI5MCBlYWQwZDQ3YjAxMmI1OTJiN2FiY2QxMTllMDIzNjE0ZjgzYTJjYWQzIGxlZ2FjeS10cnVuaworNTkyOTEgN2VhYjE3YmU4Y2I0OTc4MGI4ZDAzNjdlMDQ3MWJhNTk1MzYwNzQ0MyBsZWdhY3ktdHJ1bmsKKzU5MjkyIDY0NTgyMDgzY2I5YWZhNDNjMDc0NTA5MDAxM2E3YzdjYWJhNDJiMGUgbGVnYWN5LXRydW5rCis1OTI5MyBmZTZiZWRhZmI0NmE2NDYwZWIwMGNlZDA4YWEyYjgxNGQ5ZTc4NjIyIGxlZ2FjeS10cnVuaworNTkyOTQgMzBmNTQ5Nzc4MjhiMzM3NTBiMzViNmNjNjVkMzg2OWEwZWQ5NWEwMyBsZWdhY3ktdHJ1bmsKKzU5Mjk1IDk3MjEwZDg2M2QxMjM0YzZlNGI2M2Q3OTJkN2U5YzA3ODgzNTQzYjcgbGVnYWN5LXRydW5rCis1OTI5NiA0ZDE2ZWUzOTMwMWY5YzIxZTlkOTJjZGY2OWI4YTNiMjdhNjQ0ZGI5IHB5M2sKKzU5Mjk3IDk3MzI2ODVlZWUxNzJhYTc2NjU5ZWNiY2E2ZmYyZTk2NWQxODQ3ZGQgbGVnYWN5LXRydW5rCis1OTI5OCA4YWNkOGY1YzYwODE3NTJhMmM4YTU2MTk5MWVhMTZlOGQ5YTQyYjIwIHB5M2sKKzU5Mjk5IDdlODlmNWNmNmIyMTRmNGJiZjU3NzJkODY3MjBlYTcwZDhjOTYyODkgbGVnYWN5LXRydW5rCis1OTMwMCBhYTYwMTdhMmU4ZjkyNmZkMTE5NDJkNGQ3MDFjMjUzN2Q0NGNiMzg5IGxlZ2FjeS10cnVuaworNTkzMDIgYmU3YTg1YzM0YTRjNGY4NzM4NmU4YzNkZTgwNTJlMDAzN2EzNjhlMCBsZWdhY3ktdHJ1bmsKKzU5MzA0IGI2MzczNDkzMzZmZDlkMTIyN2FmMDczNTMwZjk1MDUzNmM3NzhlYTQgcHkzaworNTkzMDUgZWFkN2EwNTNmNWI0MzRmYjljMzZiOTYzMmMwMzFhNDU4M2JkMzdlMCBweTNrCis1OTMwNiA0NGQwYzcxZGMzYzNiMzg5ZGZlZGNmMzI4NzdmZTUwMWI3MGMwNzg0IGxlZ2FjeS10cnVuaworNTkzMDcgYWVlZmI4OTczODRmYjQwZGE5ZjBlZDZkM2Y1NjFlZmNiYmY4ZGUzMCBsZWdhY3ktdHJ1bmsKKzU5MzEwIDBiZmVjNjA5ODM3ZWM1MDFhYmM4MTY2NTg1NzY2MGJhYjE2YjQ1MDEgcmVsZWFzZTI1LW1haW50Cis1OTMxMSBlMDhiMTJjM2I5MTM2NDNiMGFkNzhjNjcyNDYwYzVlY2ViYTc4ZWI5IHB5M2sKKzU5MzEyIGQ3NTIxMGJiY2E5N2FmODc5ZTY0NjExMzg3NGUxZDY2NzY0N2QzMGMgbGVnYWN5LXRydW5rCis1OTMxMyAyYTQzNTA3Y2Q5NTMyZWIwNDFiZjU4NDE3MTBkYzRjOGI3YWIzMWNiIHB5M2sKKzU5MzE0IDgyNWNmZmQ2YzBjZGE3NDg2NTI0ODEyZDAzMjZiZDc0NDdjMDY0OTcgcHkzaworNTkzMTUgOGU3NGFmMTk3ZTZjMDMyNGQ5YTk1YWY4MzQ1ZGJiZDBjNzlkZmZmNSBweTNrCis1OTMxNiA4NDJiM2Q0NWJmZTRjM2NmN2IyNjI0MmJmYzIyZTgyNWNmM2IzYTI0IHB5M2sKKzU5MzE3IDA0NTA1Yzk4OGFiY2Y3YzNiZWRhMjZjNDg1NjQ3ZDliYTQ0ZTdiZWUgbGVnYWN5LXRydW5rCis1OTMxOCBlY2U2NWM2OWIxZDMxNGUwYTFiNDU2OTcxYTY5ODRlMTg5M2QyYmNmIGxlZ2FjeS10cnVuaworNTkzMTkgYzhiMzM5Y2ZlZjFmZTViNDYyZGJjZDk3ZDA5OGEzYWM4Nzc0MjAyNiBweTNrCis1OTMyMCAzMWEzY2UzOGI1NmMzNWQ5YTA0OGMyYTI4ZGE2YTY2M2YyZDIzYzViIGxlZ2FjeS10cnVuaworNTkzMjEgYzlmYzRiMWY5YmM2OTJmNWVkOTczYzAzMDQyYTgxNDZiNjNlYzFhZCBweTNrCis1OTMyMiAwY2U2MTIyMWM2M2Y4NGYyNzVhZGYyNTQ5YjllMTVmNWVmNTQ3ZmE1IGxlZ2FjeS10cnVuaworNTkzMjMgNjBlZjljNGU0MDEyNGRjMzMzYzljYWIwMmZiYjdkYTI4MjhiY2I1MiBweTNrCis1OTMyNCA3ZTUwNDJlZTk0MjQ0ZmRlZWRlYTJhM2FhNzhlYjIyYTk3Zjg4NjY0IGxlZ2FjeS10cnVuaworNTkzMjUgNTMzMjBkNTQ0YmM3YWQ5MmI5ZDI4YWJiOWM0MGQ2ZDJjNmQxYTU5YiBsZWdhY3ktdHJ1bmsKKzU5MzI2IGYwYjMzMTliNzI2NmI4ZjJjYWFlMjUxZWVlMWJhYjNjYjQxNjQ5ODIgbGVnYWN5LXRydW5rCis1OTMyNyAyZmZhNGY3OTk0YTNlOWM4NDVmYTdjMTI2NDQxZDA0ZWY2ZmVmZjZmIGxlZ2FjeS10cnVuaworNTkzMjkgMTZiYTAwMTY4YzZhZWRhNDZkZTgxOTVmZTEwOGM4ZjQ0MzUxZTE4OCBsZWdhY3ktdHJ1bmsKKzU5MzMwIDFlNzI2YWVhYjZhNTI5YWNjYzViNDhhYWMzNjEyYzc2NTI4Njk2ZDIgcHkzaworNTkzMzEgODhmODY0NDViZTc3M2U4NWEwMWJlZTAzZGE3NDMxM2I5NjgyOWIzOCBweTNrCis1OTMzMiA4Mjk5MWZmNzVjNWE2ZTRiN2ZmMWQ5N2Y2NTgyODY4NDcwNDI2M2M4IGxlZ2FjeS10cnVuaworNTkzMzMgMWEyYTZkZjBmYmUwMTcwYzgxYjNlM2YxMzcxOTNjNmIyNDdjODNhOSBweTNrCis1OTMzNCBmYjg0YmQ5NTAwYTQwZWE2YWRiNDk2MTA4YjRhNTkzMjNmNDEzZmE2IHB5M2sKKzU5MzM1IDU2NTAxMmQxMTIzZGYyZTJhN2NiYjllY2IwNmRkYjAzZDkxYzMyZGQgcHkzaworNTkzMzYgODFlMGMwZTJhOGMxMzg0NGMzNzk3MGRjYjliNWIxNTkxZGVjZWE3YSBweTNrCis1OTMzNyBhZjg2Yjg5Y2U3ODQ3MGE5YjlmYmRmMDViNzI2ZjNmMmIyNzFlYjBkIHB5M2sKKzU5MzM4IDlkMTUyNTMwOTEwYTY1MGQzY2FkNGFmMzA3NDk1YTAyZmRjMDFjMGYgcHkzaworNTkzNDAgMWE3ZGZiNjFiNGQ4ZTE2YjdlNDY1MjE1NWZjOTliOWMxZTRlNWEzMSBweTNrCis1OTM0MSBlZjUzOTliMzUzYzk1ZGE3MGU3ZTc3YjJmMmYzYjMyOGE5NWY0MTYwIHB5M2sKKzU5MzQyIDU2NDlmN2NlMzA2Mjg1NjFjZGZhNjc4Y2EzMTRhYmE1MDY3ZDEyMzUgcHkzaworNTkzNDMgMzM0MTYxZjc0YjhlNWZkZmVhMTAyNzFmZDAxZDNlMTE1NmM0ODE2MSBsZWdhY3ktdHJ1bmsKKzU5MzQ0IDYxMmQ4ZGVhN2Y2Y2UzMjM5MTIzNTg0ZDg3NWY1MzA1NTdhYzA3ZmMgcHkzaworNTkzNDUgZTRjMjI1MDVmMDExY2YwNjcwZjdlZTM0ODY4MGM1MTU1NGU2MjNlYiBweTNrCis1OTM0NiA2M2U2MWM3NzBhOTMyYzg0ODdjNWE3ODU4YzFkYWJhNTEwOTEyNDQ1IHB5M2sKKzU5MzQ3IGMyNzg3ODI4MWM4Zjc4MWI2OGMxMTgwNDU0ZmY2MzQ5NTk1M2MxMzAgbGVnYWN5LXRydW5rCis1OTM0OCA1ZDk5MTA4MGQ4OGU1ZmExYjE0NzQwOTdmNDhiMTQ3YmRhYjgyOTg0IGxlZ2FjeS10cnVuaworNTkzNDkgMjZhNDM3ODYzOTViNGQyYjIyY2U0MWIzOTcxZDU4MTllZDk0ZTMwOSBweTNrCis1OTM1MCAxN2I0MzkwMWJiNDE1ZmJhMjhhZWU5MDljY2U2OGQ2Nzk1Nzc1Y2QzIGxlZ2FjeS10cnVuaworNTkzNTEgMjc4NWUyMTYwZmE2YjI3MjQyMThjYTZmY2NjOTdjYzg5ZDRlMTdhMCByZWxlYXNlMjUtbWFpbnQKKzU5MzUyIDI1MGM0ZmQ0Y2E1NDJkMjQ4Yzc4MjA5MzRlZjIxYTMzZTBhMTgxNmUgbGVnYWN5LXRydW5rCis1OTM1MyA4NjcxNjEzNGVkODc2ZjNiOWY0MTIyODQ0MWQxMWY2NThkNDZiMWQ3IHB5M2sKKzU5MzU0IDEzNDllYTQ0MWU0MWJiY2EzZmY2YmVjY2JkZmJlNmNhNWYxNDBmNTAgbGVnYWN5LXRydW5rCis1OTM1NiA0MGZjODQwNTE3ZmMwMTJiYTE0NzFjNTUyZjBmY2QwZjYwOWQzMzM1IGxlZ2FjeS10cnVuaworNTkzNTcgZGFkOWVkMzM5YmMzNDU4ZDYwZDk1YzRjN2U1ZTUyZWJiZTI5NmZjZiBweTNrCis1OTM1OCA5MzQwNjk4YWU0MjEzOTA4NmUyMzdiZmI4MjgwNjQ3ZmQ1YjhhZWM0IGxlZ2FjeS10cnVuaworNTkzNTkgNzlhZmE0YzU1MjExZGZhYjU4YWRmNGUwMDRlZDQ5ZWQ3ZDRkNjA4OCBsZWdhY3ktdHJ1bmsKKzU5MzYwIDYyMDBhNDQ3ZGFhMTY2Nzc5NTAxNTBmNjdjMjgwMDI3ZTgxZjMzNTAgcHkzaworNTkzNjUgMzIwZjdlYzYzZjBiZGZkMjdlMmRkYjkxYzA2NWIyNmQ1NTQwOTg4ZCBweTNrCis1OTM2NiA1OTBhMTQ0NzYwMTlhM2MyYjYyYzAyNmQwMmU2Yzk5M2NjZmY5NzczIGxlZ2FjeS10cnVuaworNTkzNjcgZDMzZjhjYzcwN2NiZmUzYjkxZGUzZGM0ZTQ5ODA4OWEyN2VlMjgzZCBsZWdhY3ktdHJ1bmsKKzU5MzY4IDg2MGNlOTc1NWQxNWJkNzg1MTA3MTNkYjM0MjNlMWYyOGFkNDcyMWIgbGVnYWN5LXRydW5rCis1OTM2OSA1NWMwNTA0MjMwM2IzOWYwNTRjNDcyMTNmNTYxYjBiZjU5N2VjNGFhIGxlZ2FjeS10cnVuaworNTkzNzAgYTFiYzY1OTU0YTljYmMxZTE3ZWNhODViNzBiYmU3MDc3OGU5OGFhNyBsZWdhY3ktdHJ1bmsKKzU5MzcxIDA1ZGE0OWViMTJjMTRmMDM0OGE1ZWMzYzMzM2E5MzE0MTgwNjJkY2MgcHkzaworNTkzNzIgMWY3MjJiMDg1NDAyN2M1ZWMyZDcwYzI0ODljY2I0YzQwYjQ2OWE2MSByZWxlYXNlMjUtbWFpbnQKKzU5Mzc0IDUzODQ3NmI2ZDdlMDUyYjUwYTgyZmRiMWE4MjRiZjA0MWUzZTg2YjUgbGVnYWN5LXRydW5rCis1OTM3NSAxN2MxNzgwN2E2MTE3OGFkNjg4YWU4MWI0MTE1NzZmMjk0ODVmNWJjIGxlZ2FjeS10cnVuaworNTkzNzYgZDY0YmViOGZhZDA2NjE3N2Y5MWVlOTFlN2ZmNzZhYzBjOTM3YjI4NyBweTNrCis1OTM3NyA4NWU0YmZmMzdiYmRjYjZkNTZmMDJlZGY4NTMyM2IwNWExOTI2YzRhIGxlZ2FjeS10cnVuaworNTkzNzggNDRjMDkwYzc0MjAyNjAyM2NhMGYwYjczMTUyNmIzYzU3NWFkMWU3YyBsZWdhY3ktdHJ1bmsKKzU5Mzc5IDFkOThmYzI2NWY5OTJlNTY2Y2NiYmYwMmQzZmJmYTI4YTUzNzQ4MGUgcHkzaworNTkzODAgOWFkNGFlZGYzNDliZTkyYTI4NGQzMzdmZDNkZDI4YmEwYWUxMTAxNCBsZWdhY3ktdHJ1bmsKKzU5MzgyIDZlZjhiNWI4ZTVkNmZmZThiMDRmNjc2OGU1YmYzZDAxZjBhNjI4OTMgcHkzaworNTkzODMgYWZkMjk5NmYyMDIxMjQ3NDk2MjA4ODliNjIzOThmZmI2ZjQ0ZTE3NiBsZWdhY3ktdHJ1bmsKKzU5Mzg2IGE1M2VmNzc4NTkwZWJiM2QwZDY2ZTAyZjIwZmY5MTFmZjIyZmYwM2EgbGVnYWN5LXRydW5rCis1OTM4NyBiY2MxNzNjM2FkNzA5MmIzYjY3MGUyMGM5MWEzZmJjMDliZjExZWExIGxlZ2FjeS10cnVuaworNTkzODggZjExZGQ0ZDMxNWRkMGRhNjdiNzBkYmEwNGZhNWExMWJkYWNmOWFiYiBweTNrCis1OTM4OSA3NGJkZDUwZjA3ZTVkYzNjNDhhNmY0MjJjOTllNmZiOWJkMjEzOTU3IGxlZ2FjeS10cnVuaworNTkzOTAgNzFhZDVlMmJlZGRhMjdkMDljNTE5YTE5ZDYzNzYxZjYxYjBkYzAzNCBweTNrCis1OTM5MiA5MzllODEyY2MwOWNlN2IwMDliNDNhYjkyMzBjZjA3MTFiYzU5NTE3IHB5M2sKKzU5MzkzIDUwYjAzYWZhMGJiZTc5MzM3YWZkMTI4ZTcwMTMyMjJhNmE3ZGE5OWUgcHkzaworNTkzOTQgYzIzMjgzNmNlNWM5NDM2NDU0MDA1MThmM2FmYmRkOThjZTMwZGMxZSBweTNrCis1OTM5NSBjZTI4MGEwNGY1NWUwZmU4N2I1ZTljYTFlYzYwZDZhMTFlYTY1ZDViIHB5M2sKKzU5Mzk1IDY1ZTgyMTQwZTI4MWJmMjZmMmUyMmVkYTA1YTdmOTk1NmM0MjBmOGIgcHkzaworNTkzOTkgMmZjZTk4OWRhMDIxM2NhZDQ4NjQ1MTNjMDM0ZWRmNTA3Mjg3NzhhNyBsZWdhY3ktdHJ1bmsKKzU5NDAwIDMzNTZhZDYyYzJhMzY5OTcxZWViNzVmN2YyYjFlNjg1OGU1NDIyY2UgbGVnYWN5LXRydW5rCis1OTQwMSA1ODJkMmE4Mzg2M2NjNDM5MDM1MGMxNjNiOTEyODNlNDJmMmYwZjA0IHB5M2sKKzU5NDAyIDgwODg0NjQzYTZmOWU3ZDEzNmM5NjI3ZDEyNzE0NDdlMDc4M2NiOWUgbGVnYWN5LXRydW5rCis1OTQwMyBjNmZiMzkzYjZjODE1OGIyMDU5ZmM1MGIyMTg2ODlmZDI0NGVjNGU2IHB5M2sKKzU5NDA1IDcwY2M3Zjc0MGQzNDcyNjBhMGJlNjI5MDdiNGI2NjgwMWNmYTRkYmMgcHkzaworNTk0MDYgMjJlM2Y1YmQxNDA3ODYzMzhhZjQ2ZTRiMmUxY2JmYThlZmNmOWI2OCBsZWdhY3ktdHJ1bmsKKzU5NDA3IDRkZTU5NDc0MGE4OGY5OTZiNzAxMDYzYzI2OWE5N2NhNmY5ZTYxYjIgbGVnYWN5LXRydW5rCis1OTQxMCBhNzFhNzFjYWI2MDgyNWFjMTcyNmU1MzBjYzllZTYyY2FhNTQ0NDVmIGxlZ2FjeS10cnVuaworNTk0MTEgMGJiMTA4YTNjMGM5N2NlOGI0Y2NlNTkzN2E1YWU5YmVhZmE3MzdiYiBsZWdhY3ktdHJ1bmsKKzU5NDEzIDc3Y2I4ZmYzNDkxMmFjZDA3ZDNiMTllZjUxYTRjMzkwMWMyOGI2MTEgbGVnYWN5LXRydW5rCis1OTQxNCBhOTg3N2I3ZWU4NWRlYzhjOGNkNGU5N2I5YmU2N2Y2N2VmYjgyOWQ4IGxlZ2FjeS10cnVuaworNTk0MTUgNjI0ZjUxMWNlOWYyNDhkMzhhZDA4YTAyNzNjOWQyNGUwZDQ0YzgwMyBsZWdhY3ktdHJ1bmsKKzU5NDE2IDAzOTQ1YTFkNGZiM2NmNTlmODIxMmZmZDdiNDYxNTAyNDYyNjdkMzggbGVnYWN5LXRydW5rCis1OTQxNyA5YTk3NmE2ZWU5MzY2OTFlZjlhNDNlZjBjNGFhZjkzODViYTcxMjNlIGxlZ2FjeS10cnVuaworNTk0MTggMTE4ZTZkNjhiNDRhMTI4OGFiNzZlODQ5ODMxNDMxMTdkNDFmNDcyOCBsZWdhY3ktdHJ1bmsKKzU5NDE5IGYyZjczOGE0MzdmODc5YzY0M2RkNDY0NjRkNWI5YTRjNzhhY2UzYTAgbGVnYWN5LXRydW5rCis1OTQyMCBhZDhiODA0NjA2NDRmMWY4ZmE2MzU0ODU3YzIzNjQzZjkwNDZjOTJhIGxlZ2FjeS10cnVuaworNTk0MjEgYWFkNjVhMjQyNGUzOGQ4YTcyYTdjMGEyNjU2ZGYwMzlkMTA0MDM4OCBweTNrCis1OTQyMiA0ZWU3NDMxMGVjZjk4ODc3NGIzNGFiYTVkZmI4MmE1OGQwMmI1MGU5IHB5M2sKKzU5NDIzIDE3NDQ4ZTVlOTY3MWRhNGI5NjE5NjMwOGY1MTNmNjAyMmQ4NThkMDEgcHkzaworNTk0MjQgNjk5ZmNkZjViYmQ3NGIwMTA4NDRmZDQxYTE3Y2FhNmVhOWNmY2I3MyBweTNrCis1OTQyNSA2YjUxN2FjMTBlOGVmOGUyMzdhZDFiNmJjYWViYjE2M2M0NTQ4N2I3IHB5M2sKKzU5NDI2IDkxY2NjZTc0MWQxMTQxZDk2ZDNhM2YzMDNjMjU0MTE2NDVkZDcwOWIgcHkzaworNTk0MjcgNmQ1ZjA4NjAxZjRhOTViNDIxNWZjNWM5YWY0N2JmMWRmYWMyMTQyYSBsZWdhY3ktdHJ1bmsKKzU5NDI4IDUwYTUwZTc1MjE0MjNhMjcxNTM4MzkzNDY1MzI5MGE1YTg3MGNhZjAgcHkzaworNTk0MjkgYTVjNDczOTEyMWUxNGZkM2RhMTc0OWE1YjBkZWM2MmU5NGVmYzk4YiBweTNrCis1OTQzMCA2MWRmNWY1Mzc5NjllNmFhZWNiNDgyZDM2NTQyMDFhZjk0NmYyNTg5IHB5M2sKKzU5NDMxIGY2N2VjNGViNDc4YTg5MDhjOTAyMzFhYTIwZjA1OGU2ZTljMGVkY2MgcHkzaworNTk0MzIgNDRhMjRiNTliMTZkMDIxMDY4MmRkYjAyYWFmYmFkYjFjNWVjNTY0YyBweTNrCis1OTQzMyBiZTNiNjYwMWY5ODlhNjhlNWEwMTljZDgzODY1NDcwZmFkOWQxYmU0IHB5M2sKKzU5NDM0IDM2OWE0ZTA2ZmQzMDExNjJiODdmYmY4MDg5MzM1MmJkZmMwNGY4ZWIgcHkzaworNTk0MzUgNmNlNmUyZjNkY2IyZDY4N2Y5NWFkNDUxNjJjMTdkMzNkMTY0MDM0MiBsZWdhY3ktdHJ1bmsKKzU5NDM2IDVhYzg3NGQwOTU1NjM2ZDUzOWNkY2QxOTk2MmEwZmM4ZGIyZjgyZDIgbGVnYWN5LXRydW5rCis1OTQzNyA2NmRiZTEyZGRmMzFkNzZjNDhhNjAzYmQ5MGVmMDM0MzFmZWMyNjE2IGxlZ2FjeS10cnVuaworNTk0MzggNDBiZmQ2ZjFjYzE2OTAzMzIyYTE2YzJiNzBkMmQwOTIwZWY5NTExOCBweTNrCis1OTQ0MSBkNzdmZDFiOGMwYzU0NzMyMDkzZjE0NzEyM2EwYzQ4ZmUzYzI1YTMyIHB5M2sKKzU5NDQyIDVhYmZkMDdlOTdkNDg5ZjI1YzVkZTIwMmVmNmYzNGVjMDQ0YmIyYmMgbGVnYWN5LXRydW5rCis1OTQ0MyBhYWMzM2VlMWE4ZmM3MzI3N2RlMDEyZmRkMWI1YjczMWFiMDc2OGQ0IHB5M2sKKzU5NDQ0IDg4OWE2NDIxZjEzNWI1OWVjMjQyZDU0NTA3MmEwZThmOWI3MTA4Y2IgbGVnYWN5LXRydW5rCis1OTQ0NSA5Y2YyYmY5NDYxYzQxMGQ4NThlYWNjMWQ2YWViYTllY2Y1NDI4NDNiIGxlZ2FjeS10cnVuaworNTk0NDYgMzNmZjQwZTZlMTM3NTg5NTZlMWZlNDZmYTNlZWZjNGRjYzJjNjhiNSBweTNrCis1OTQ0NyA1OWU2NGZhM2FkMWQ5Y2EyZTc3NTk5OTMwYmU3NWYzYmIyOTMxZjQyIGxlZ2FjeS10cnVuaworNTk0NDggMjAyOGZlYjk0YjU3NTUyMDQ5YWU1ODdjNDc0NTc3YzdlMWFjYTIwZiBsZWdhY3ktdHJ1bmsKKzU5NDQ5IDQ0NGRhMDhmNzhhNGRhNzlmNmM3MTdiMTdlYmEyMDdlZjYwZDE1YWUgcHkzaworNTk0NTAgNjBhNzQwZjVhNTdhM2ExN2U5ZGE2MmQ0NzY2ZGZiZWI4MDM0YjM0YyBweTNrCis1OTQ1MSBhMzg2ZWYyOGIwMDg3Mjg4MzZhYTk0MzRkOGU0ZGVmYjc5MmQ5Zjk1IHB5M2sKKzU5NDUyIDEyY2Y5ZmZmOWQwYWVkMzZkNmEyYzZmZTdiNDQ2N2Y4OTg3YWU1YjUgcHkzaworNTk0NTMgNmIzNWRmNDBiY2FjYWZkNmQyZDVjYWViZDkzNjkwZjA2MDY1MjgxYiBweTNrCis1OTQ1NCA3NmNlNTk3YzcyZWUwZTEwNTVlNWM3OTA3YThjZjU4NDJkZTcxODlhIHB5M2sKKzU5NDU1IDQ3ODk1Y2E2ZjBjYmE4ZmIxYThmNzU5MDI3MTVlOGE1MDNlMTA3ZjUgbGVnYWN5LXRydW5rCis1OTQ1NiAxYjBjZTlmZmE5NzI2ZDUzOTRjNDhiOWI1OGQ5MTMzYjM1ZmMwNTMyIHB5M2sKKzU5NDU3IDY4MmQ5Nzg4YTAzOGU3MmZiYWJiMTAwMzQ2NzNjMWM2ZmQwMDQyMzMgcHkzaworNTk0NTggNjZjZTMzMTRjMTk4MjBhNzFhYjk0YTg2YjI5MGQ5OGYyNzI3ZWM4ZCBweTNrCis1OTQ1OSAyNDc0OWEzODA0MDkzNDAxZGU4MDMxNDA3Zjc4MGNlNjZhYjBkY2NkIGxlZ2FjeS10cnVuaworNTk0NjAgZWI2NWUxMDVlNGI4Y2RhZGEyMDBhOTUyYmRmYTk0YTQ4MjU4YjU3YiBsZWdhY3ktdHJ1bmsKKzU5NDYxIGE0YWFiNzJjMmNjMGJjNDk0MzE5ZDIxMTA1ZTU3YTVkZTg0NzhlZjMgcmVsZWFzZTI1LW1haW50Cis1OTQ2MiAyYzZmZTJkY2M4OGVhMWQ4MWJjNWMyMTg5NjQzNWQ2ZjljNTEyZTNmIHB5M2sKKzU5NDYzIGU2NWU5YzY0OWNmZGFmYjM4YzM0YTg4NDNhMTlhODMyOWYyYmM0YWUgbGVnYWN5LXRydW5rCis1OTQ2NCBmOTA5ODcyOTE3Yjk1ZDliM2NkZDlmZmFlODU0NTA5NTNjYmI1NzUyIGxlZ2FjeS10cnVuaworNTk0NjUgN2FlNjA0YjM1MzNiNTM2MzU0ZGEzMWEzYzNlMzdmOGI1MDk2N2I3ZSBweTNrCis1OTQ2NiBiNTIzOWNjZjk0YjViYTczOThhN2M3MTdjNDYxNDgzYmQ4MGMwMmQwIHB5M2sKKzU5NDY3IDcyN2FmMTYxY2E0NjRhYmQyNzEzMDQ0YWNkZjVmNTEzNGE2ODAzYTAgbGVnYWN5LXRydW5rCis1OTQ2OCAyZTE5YzNlNTExYmY1OTM5ZjYzZjQ2ZWI2NDNkZTBlNzEyN2IwZDE2IGxlZ2FjeS10cnVuaworNTk0NjkgM2UwODY3YTA3NzY1N2U0MTQ4NzU1MDQ0ZTFiZDgzNjI0OGQxMWEyMSBweTNrCis1OTQ3MCBlYjIyNjBkY2IzNjVmZGU2NTExZjQxYWZjNGQ4MjRhNGYyOTI4OWViIHB5M2sKKzU5NDcxIGE2ZDEwNTlmMjJlMmNkMTQwNGJhMGEwMmNmMjI4ZDUyNDdiNDRkOWEgbGVnYWN5LXRydW5rCis1OTQ3MiA0ZWJiYTliMjY4OGY0MDcyYzE3ZjU5ZWI0YTk0ZDQwMzBiYjU1OGUzIHB5M2sKKzU5NDczIDY2ZDQ3OTZlZTkyY2JmYzQ2OGRmOGRmNzZjM2YyMWM3M2Q4OWUxZjggcHkzaworNTk0NzQgOWEwOWQ0NDJiY2UyN2IyZDczNzZmZDM5YmIxMWJiMGM4ZTFmNzk3NCBweTNrCis1OTQ3NSA5OTI5NzgyZjVjYjQ4ZDA3YjQ0NTEwNmMyMzVkYjIyNjI4MWJjZTgxIGxlZ2FjeS10cnVuaworNTk0NzYgMDE3MDcxNGViMDQ0MjE1OGMzMTBhMjRmZGI0ODdmZGFhMTE3MWUyOSBweTNrCis1OTQ3NyBlMTc2YjRhZWE5YzUwZjVhMTlkMmFjNWI0M2Q0ODZiNmNjMTRmZTVlIHB5M2sKKzU5NDc4IGMyZTcyZmViNTNiMzZlYmMxNTBhOTY4MWI0MThlOTU1NzA4OTJiMzAgbGVnYWN5LXRydW5rCis1OTQ3OSA1NDEwNTJiMDQ0ZjA5ZTMxMDk2ZGRkOTdlNjI5Y2JlYjhiN2M0MDVmIHB5M2sKKzU5NDgwIDdhOGM4YzU2ODVmY2NiMTRmZmNiNmY2ZjdjYTYwYjg5N2Q5MzlmNmEgbGVnYWN5LXRydW5rCis1OTQ4MSA2YWU5NGEyYmE1ZGZhZmEwMWEwZTQzOWQxNzU5NTFkYTlhYjdkNjQwIHJlbGVhc2UyNS1tYWludAorNTk0ODIgMjI2YTA2MmFiNDNlZjc3Nzk3Nzk0YmFjODVkMWUxODVmNTYyYmU1ZiBsZWdhY3ktdHJ1bmsKKzU5NDgzIGQ4ZTA2NTQzY2RkODBlMzQ1ZWRlMTZjNmUyYTI3ZjA0OWU3ZDVhYzUgcmVsZWFzZTI1LW1haW50Cis1OTQ4NCA1ODkyNjJkODFlMjk4ZmVlYzcwODYzMmZkYzhiNzg5YzE2NWI2MjdmIGxlZ2FjeS10cnVuaworNTk0ODUgZjA0YzAzNjVjOWFhZmJiMzllOGI2MWRhYzZjZDYyZWE1MTQwMThkZSBsZWdhY3ktdHJ1bmsKKzU5NDg2IDMwOTZiMDEyNzMzZTE5YTRiOWJjYTM3MzA1MDE5ODIwNmYwMGY5YTYgbGVnYWN5LXRydW5rCis1OTQ4NyA2NmVkNmUwM2ViYmRhOWVmYTMyMTI5YWQ3NzYyMzkxZDEyZmRlZGZmIGxlZ2FjeS10cnVuaworNTk0ODggNzE2MjM4NzgwNTdiMmU0ZmRiZGJhMmFiNGY1ODgwMTA4NzgwYzk4NiBweTNrCis1OTQ4OSA0NGM0MThiMmJmN2Y2NjA5ZWY3MjEwYjAzMzJkYzgwNGZmMGY1NWM0IGxlZ2FjeS10cnVuaworNTk0OTAgN2E2MmM2ZDkxMDdkZjk4MmRmMWY3NWJkYTM1NTVlYzMyMzQzZGU5MSBsZWdhY3ktdHJ1bmsKKzU5NDkxIDI5NGIxYTc5ZjIwMTlhYmMwMmQ2OGIxOTViMmU5YjY5MGZmOWJiMzggbGVnYWN5LXRydW5rCis1OTQ5MiA2MzVhMjMyODAxMTI2M2QyOTU3Y2FhZmU2M2Q0YjljNTYyZDIyMmFmIGxlZ2FjeS10cnVuaworNTk0OTMgYTMyN2YzZTI2MTU2MTFiYzU0ODM2ODNhMGUwOWIzYTQxMDJmYmRlNiBsZWdhY3ktdHJ1bmsKKzU5NDk0IDNjOGI3MDJlNWYyMDcwZWVjZjEwNDcxZjRjZjUwNWE3OTcyMTYzNWUgcmVsZWFzZTI1LW1haW50Cis1OTQ5OSA5NjFlODljYzc5MTFjMGE2YzAzOTcwOGMzMTU1NTY3MzE0MDE0ZTgxIHB5M2sKKzU5NTAwIDkwNWE5Njk5N2I3YzgwZWIyZGEzMzM3YmFjOTViODc4ZGNkOWJjN2EgbGVnYWN5LXRydW5rCis1OTUwMSBkY2E5NTk1NjczMGZjM2Y2MTk3MGE2ZWZhM2M3YjlkMDZiMWVhZDU4IGxlZ2FjeS10cnVuaworNTk1MDIgN2RhOTQ3NTdlYzViZDNmNzhmODZmYjY5ZmNkMWUxOGU4ZjE5NWMwOCBweTNrCis1OTUwMyAyMGVkMWQ0MTU0MDllYWMwYTkxY2U3MGU3MGQyYjQ4NjkyMGNhNThiIGxlZ2FjeS10cnVuaworNTk1MDQgMWJiOWIwN2EwMWRkYTFlYjkzY2U0ODQ2MjhjOTNlMWY2YWVkN2JkYSBsZWdhY3ktdHJ1bmsKKzU5NTA1IDQ1Yzc4ZTUwY2JkNWUwZTVlN2RhZGVlNzc4MjJiNGJiYTY2ZDNkY2QgbGVnYWN5LXRydW5rCis1OTUwNiAxOWY4OTRhZTg2NGFmMWRhMmEzYzI0ZTM0Yjg3YzExMjYyNWY5Yzc1IHB5M2sKKzU5NTA3IDE0YzVkMjc1ZGRmMTQwM2E2ZTJkZWM3MDZlNWM1YzNlZTZlZmUzZjggbGVnYWN5LXRydW5rCis1OTUxMCAxMTU3MDY4NDYyYjUzOGVjOGJhMDY0YjM5N2UyNzcyNDNmYzVmMGNmIGxlZ2FjeS10cnVuaworNTk1MTEgMDZkMTIyYjRiZmZkN2FlZDhiYWU0NmVjZTU3OGE1OGI3NDlkNDAzNyBsZWdhY3ktdHJ1bmsKKzU5NTEzIDJjZTUwYTI2MGY1M2Q0MjNiOTYzMWJlNGYxNmM0YjI4NjBiOTBjNTIgbGVnYWN5LXRydW5rCis1OTUxNyBlNzBhY2JmMjZjZGE4ODBlMzBjOGZhMjE4OGQ2YjY2YjBjYmM4OTNjIHB5M2sKKzU5NTE4IDMwMzcyN2M1OGI1MWUwMTRhNjM2OWRmNzE1ZWIwMTI2M2U0YzI0MTggcHkzaworNTk1MTkgMDQzY2E5YjY2Zjc5NzIyMDA5MzU5ZGM3OWNlOWMyNWU0Njg5ZjQxMSBsZWdhY3ktdHJ1bmsKKzU5NTIwIDYxOGNlMjgxYTU1Zjg0NTIxZjZiMmE0ZDk1ZDllOWU5YzNmMmI4NjQgbGVnYWN5LXRydW5rCis1OTUyMSA0YzBlYjU4NzQ4MmY2MGNhMjExZGNkODJjNmUyNDA5MDQ0YmRjMjg3IHJlbGVhc2UyNS1tYWludAorNTk1MjIgYWFkOTBlYmJmYjUwNGJkNTgzNjNlNzZiODdiOTU2ODg4YWViMTkwZCBsZWdhY3ktdHJ1bmsKKzU5NTIzIGE2NDlhYTUyYjA3OTkwNTAwMTNhYjIwNDFmYzZiMzQwZDk5NmM5OWMgcHkzaworNTk1MjQgZWUxMTc0NjIxMmIyYmQyNWU1ZmI4ODViMTZmNjA2ZDdiMWFkMDBkZCBsZWdhY3ktdHJ1bmsKKzU5NTI1IDVhNTBhNWI1NzBiMDJlNmYzNjJiYjZlMjM5ZDA2NGZkN2YwODFkNDMgbGVnYWN5LXRydW5rCis1OTUyNyA5YjQwYWQwNTdkNTllMjA3Y2FmNTE3YjIwMjljMTAwODcyOTVjZGZjIGxlZ2FjeS10cnVuaworNTk1MjggMjExYWJjZmI0OTI4YjJjMTcxZDVlMjhiYzkwMTk1ZWEyNjI3MzExMyBsZWdhY3ktdHJ1bmsKKzU5NTI5IGE0NjM3NDJmYTQxMWI4OThiMjJlOGQ5ZDRjNzAwODM5OGM5NGVhYjggbGVnYWN5LXRydW5rCis1OTUzMCA3NzkxYTVlYTE1YzM4NGVlMmU1MzcxZjY2MmFmMjU0MDZmMzllMjJmIGxlZ2FjeS10cnVuaworNTk1MzIgZTk3ZjEwNWQxYzgzNDBmY2FiYWZiMmIxMWFlY2VkMzVmNWRhZjI0OCBsZWdhY3ktdHJ1bmsKKzU5NTMzIGExNDQ4OWY2ZGI2ZjkyYjg3NjNmNzkwMTY3YjdjMGMzODIxN2FjNGEgbGVnYWN5LXRydW5rCis1OTUzNiBhMmQwYzZhODg5MDk4MDEwOTU2NDEyYTE2MjZkNWI2OGMxZDE3NTFiIGxlZ2FjeS10cnVuaworNTk1MzcgMGE1NDQ1MjhkYzlmNWQ3Nzc2NWY2Y2MxMzQwNjdjMDI3ODlmMGRlOCBsZWdhY3ktdHJ1bmsKKzU5NTM5IDA1YzUwMWE5NTMwODc1MTFmMTViYWEwZTFkOWNlZjdjOGNlYzE0NTIgbGVnYWN5LXRydW5rCis1OTU0MCAwOWY3NDMxNmQ1ZmI1NTgwYTlmNmI3ODBhNWNkMjdjY2UxZDA4MDYzIGxlZ2FjeS10cnVuaworNTk1NDMgNzVjNmJmZDNiMWYzMmVjMjE3Y2E3MzFlNWM1NTRmOWZmMzEwZmFiYSBweTNrCis1OTU0NCA0YTZjMDZhNzdkZWIxNmEwNzhjNDM2MmVmYzRlZDY3OTk0YjJlYmY5IGxlZ2FjeS10cnVuaworNTk1NDUgYzBmMmNmNDM4OWM1MDI4ODgwMWI3ZDhjMTVmMmNlYjRmMjM2MjA1YiBsZWdhY3ktdHJ1bmsKKzU5NTQ2IDExYjZmNWI2OGFkMWE3MjllMDdjOWEwODM5ZGI3NzlmNjZkZGQwMzQgbGVnYWN5LXRydW5rCis1OTU0NyA1NmYzNDJjODRlODcwNzVmZjZjOTZhNjc3NTZhOWVmODdjMzIxZDY5IGxlZ2FjeS10cnVuaworNTk1NDggMDdhYTE5MTcwYTY3M2RhNmIzZThjNGM2NmJmZDg2OGIyZjkwYzBlNCBsZWdhY3ktdHJ1bmsKKzU5NTQ5IGI1YjMwODBiMzYwZmRlYWU0M2FlYTgwN2RjOTBhNjNjNWIyN2QyNTQgbGVnYWN5LXRydW5rCis1OTU1MCBlYWIwMDJiOGUxN2U4ZTJlODQ4NzY5MWQ3YmY4MDkxNDA3MzZlMGJkIHJlbGVhc2UyNS1tYWludAorNTk1NTEgYjU5YzMyOGJmYTYyM2UwZjk2NjRhOTYyN2I5NTA2NWE5MmFmMzE3MyBsZWdhY3ktdHJ1bmsKKzU5NTUyIGE5OTEyOGY2Yzk3ZGYzOTMwZmMzODk5NmIwN2EyOTcwOWQwZDNhNWIgcmVsZWFzZTI1LW1haW50Cis1OTU1MyA3YWMxMTdiM2JlMzdlYjdhZTMyOTcwNzg3ZTYzMWIyMmFiYTA0OTk0IGxlZ2FjeS10cnVuaworNTk1NTQgMTVmYmU3Yzc5Mjg0OTczOTE3NzExNjMxNTBmZDBlODlkYjYzMTk2YiBsZWdhY3ktdHJ1bmsKKzU5NTU1IDk1ODU4MTA5ODE1MWFiNzYxYjYxZmZjOTkxN2U2MjYxMDk1MDgyODMgcmVsZWFzZTI1LW1haW50Cis1OTU1NiBkYzg4NGI2MDUwZDQ1ZmI1MzA2YjUxN2E0YzM5MTUzZDA4MDk4MDcwIHJlbGVhc2UyNS1tYWludAorNTk1NTcgZjhkMGZhZmZjZTg4NzZmNTU0YmY2ZTE4NWNkMjllNzAzYmRhNjFmZCBsZWdhY3ktdHJ1bmsKKzU5NTU4IDFkNjlhYWJmNmY3ZjIyNzQ2YjRjNzIwM2FmNWM5YjAxOWQyMmUzMmUgbGVnYWN5LXRydW5rCis1OTU1OSBkNTFiMzljMjE2MGEzYjg1NWY0ZjI2NWM0MjBjNDY0MGQ3ZjU3NGRhIGxlZ2FjeS10cnVuaworNTk1NjAgYTI4YWM5YjY3YmVkYjU2YWExZTI0NzM4MThjZmMxMjk4ZmUxZTFkOCBsZWdhY3ktdHJ1bmsKKzU5NTYxIDYxNmZlYzBlYjUxNGI2NTEwNjBjNDA5YTM5MjhkNGE5YjA1Zjk2YjIgbGVnYWN5LXRydW5rCis1OTU2MiBlMmVmZmVjOWQ1YWQ3Y2YwOTZmZGM0MGM2YmQzNWFhNWNiMWVmZTNmIGxlZ2FjeS10cnVuaworNTk1NjMgNGRjMDE0MDJkNzhhZmUyYzliNGE0YmQ4MDA0ZWIwOGUyNjQ3MzM1ZCBweTNrCis1OTU2NCAyNjM4NGI4MTgwYzdhNTVjZDZhMmVkNDQxMDdjZjRlMzM5MDI1ZWM2IGxlZ2FjeS10cnVuaworNTk1NjUgODZhMjY3OWRjYTQ2NGEyODRmZDAyYjgxNjQ2ZjI2OTIwNDlhMmNlOCBweTNrCis1OTU2OCBmN2JjNzkxMTJiY2ZhODliYmVhYjAzNWQ4YmNlYTQzZTgyZmU4OWQ5IGxlZ2FjeS10cnVuaworNTk1NzIgNjMxNGI5ZjhhN2UwM2YwYzU3ZTk5NTQzOGE0OWQ4OTFjZmFkMGQzMiByZWxlYXNlMjUtbWFpbnQKKzU5NTczIGIxMzQ3YzY4ZDQ1Njg1YWUyYzgzZjUyYzIwOTI4OTQ2NjgxZWYzOTQgbGVnYWN5LXRydW5rCis1OTU3NCBiODliMDMzNDM3MmJhODNhYmY0ZDJmYzI0NGFjMTZiZTNkZjk3MjgwIGxlZ2FjeS10cnVuaworNTk1NzUgNTFjMTc1Yzg2ZjM2YmIzYmVkMTMzYTFiMGExNDhmM2UyODE5ZTVjZSBsZWdhY3ktdHJ1bmsKKzU5NTc2IDE3NGUwYmNiMmMzYzEzMmEyNmM5ZjA0ZDNjZDYwZmQ5ZjdkZjFjZmEgbGVnYWN5LXRydW5rCis1OTU3NyAwYWQxMmM3OWFmMTg1ZGY4MzhmMjE2Zjc3NmU3NDQzZTFjMjM5MTcyIGxlZ2FjeS10cnVuaworNTk1NzggYmI3MTZlYmNiMDgyYTFlNzk0NDJlNjI1ODEzZmExNjNiYzQ2OGQxYSBsZWdhY3ktdHJ1bmsKKzU5NTc5IDhkNGQzMzUzNjk5NTBjMTIwMmIzM2ZlOWE1OGQ1NmRlMTVkY2E2MjIgcHkzaworNTk1ODAgYmFkNTVhNTg1OTU5YjExZjkzNDFjOTZmNjE0ZWFiMWE3NTU0NWVjMiBweTNrCis1OTU4MSA1NWRhZGM4YjY4ZmMxOTQyZmNlMzZiZDczZTQ4NTJmYjZkODljYTA4IHB5M2sKKzU5NTgyIDIxMGM1MDdkYWM5OTYxODQ4MjE3ODFjYjEzYWI4ZmVlYjljOTMyZjMgbGVnYWN5LXRydW5rCis1OTU4MyA2ZWEwZTE1Y2U1NzM2ZGY3NmRhNTFiMjVhZWNkNDNmZmY3YzMxZDY0IHB5M2sKKzU5NTg0IDhkZWFkNmY4MWJhZTAxYmU0Y2QzNGJjOWI1Yzk0YzViZDNjOGYwNGIgbGVnYWN5LXRydW5rCis1OTU4NSA4M2NlZDQxNzdlYWNjNDkzZWI1ZDU2ZTRlMGQwYzI0NzFkZDgwNDBjIHB5M2sKKzU5NTg2IGVhZWZiOTNiNWVkNDQzODQwNmZjN2Y4MGExMGFjMDM1MmNiZjVhZWYgbGVnYWN5LXRydW5rCis1OTU4NyAzMmRkOWI3NzczYzNjMjFkMWY1MTZlYWVhOGZmOTgyZGM2MDQxYjYyIHB5M2sKKzU5NTg4IDQ0NTQxMDc0NGZkNjM3MzU5NzEzZDBkMjMxNzZkOGFiNDk1YmJiMzYgcHkzaworNTk1ODkgYmNlNzBhNDc3ZjFkYTNkYTM0OTNiZWI0Y2RjZDVmYzdlMzljZTBmZiBweTNrCis1OTU5MCAyYjAzY2FjYzFiNmE0ZTFhYjU4MTI5YmViZjBjNDU1MmM5MThiYTI0IHB5M2sKKzU5NTkxIDk1N2JhYTM3Y2UwZDRmNGIxNWYyN2JkMGI0MzA0MWZmZWU1ZjA4ZDYgbGVnYWN5LXRydW5rCis1OTU5MyBjOGQzMTI3OWZjZGNiNmE3MTJhOWEzNTYwNmY2ZjJjNWJmMzFjNWYxIGFsZXgtcHkzaworNTk1OTUgMjc1MGQ1MzFmZGMwMjNkYmRiNDAyZGI2MmZiMTljYzgzZjRkYTczMyBweTNrCis1OTU5NiA4NjM2OTJkYzQxMWVmMDFmMGM2NDIwMmI1YjE1YTQwMzhhZDZjODM4IGxlZ2FjeS10cnVuaworNTk1OTcgNWY1OTEyM2U3ODFmZjY0YzU4MWEzZmVlYWVkY2FhOGNlYzg3N2M5NiByZWxlYXNlMjUtbWFpbnQKKzU5NTk4IDFkYjYyNDNlOTNmMjliZDJjMDE1OTg5ZWNkOWZmMTJhMzM1ODA4NGMgbGVnYWN5LXRydW5rCis1OTU5OSBkYjY3NTIxMWMyZjc1MzExNjJmZDc4NWNlMmY5YzA5Zjg2NWQxOWFmIGxlZ2FjeS10cnVuaworNTk2MDAgYjliZTExN2IyODJjMzdiYjM1Y2E5MjAyMjViOTVjYTgzYTY5NDU4MSBsZWdhY3ktdHJ1bmsKKzU5NjAyIGVkYjZhYTYyNzUzYmM3OTA3ZmVmM2NlNGYzMzY2MTI5NTk5MTNiZTIgcHkzaworNTk2MDMgMDg0NjhhMjYzYTk1ODE4ZjliMGJmN2E5NjZmZjMyZGIwNWZjNjdlMyBweTNrCis1OTYwNCBlYjY5NWM1OTFlNzA0YmE0OTczMWJhOTcxNjdiNTZkZWQ2ZjM2Y2ViIGxlZ2FjeS10cnVuaworNTk2MDUgNzFiYjcwZjYwOTdiODIwMDRjZDE2ODdkMGQ1ZDQ1NWE3NjUyMzM4NyBweTNrCis1OTYwNiAzNjI1MjM0YmYzZDJlZDM2ODAxY2EwYzY0ZWQ0ODU0ZjA1MzQyNGFlIGxlZ2FjeS10cnVuaworNTk2MDcgZGEyYjEwNWIwYzUyM2Y0ZmEzOTJhYWNiYzM4M2UxMDNhOTBhNjVlYiBweTNrCis1OTYwOSA1NjcwMTA0YWNkMzk1NDk1MWNhZTJmMzJhOTlkMTk5ODkyNmE0MWEyIHB5M2sKKzU5NjEwIDdkMmRhMWNkODBhMTFiYjZmNTQ4YzY0ZjI2YWY2ZTQ1MGQwMzA0M2EgcmVsZWFzZTI1LW1haW50Cis1OTYxMSBmMjkyMjczNWZiN2FiMjllMzAyYjQ5OTNhOWM2OWI4OGE1MjQyNDA2IGxlZ2FjeS10cnVuaworNTk2MTIgYWUwZjJlYTA0MDlmNDQwMGRkMDUzMTEwMzhhMjA5ODRhN2M5NGI3OCBsZWdhY3ktdHJ1bmsKKzU5NjEzIDFmY2YxZTZkOGJiMWRlZDk1YWJmNTdjY2YzOWUwYmI4NWQ5ZWFiYjcgbGVnYWN5LXRydW5rCis1OTYxNCA4NjM1OGI0M2M4YmIyNWMxYjkyYTFmYTFkZjg1ZmI5NjM5MjJjOGI3IHB5M2sKKzU5NjIwIDk1Y2YzZDUzY2FlMDAxYmU2YmNkODQzMzY1MjQzZTUwZTQwZGY4ZjYgbGVnYWN5LXRydW5rCis1OTYyMSA4M2ExMzhmZGZkZmE5ODE4YTU0YmJlMjIyODU2OTZmMDMxNmZlZmM3IGxlZ2FjeS10cnVuaworNTk2MjIgNzQyZDY1OTYxYjFmYTZjYzRiMzk5MmE3MWRkMzk1NmRmN2ZmZDljMCBsZWdhY3ktdHJ1bmsKKzU5NjIzIDM3MTVmMDM3NGY2YWU3ZGMxODllMmExYTU5M2IwZTM0OTNhODhjYTggbGVnYWN5LXRydW5rCis1OTYyNCBhNjMxOWFiNDllMGEzZmJlNDI4ZjdhZWQzY2ZhNzlhZDJkOTQ0ZWNiIGxlZ2FjeS10cnVuaworNTk2MjUgNjU1NmYzZjIyYzE5ZjFiYmVlMzk1YjU1MDkxMGJkODQ4MzdmYzAxYSBweTNrCis1OTYyNiBmMDVhYzE0NTExZmY2MmYxNTkwNTJhNzEwNzlkNmJlNjcwZjJlMmYxIHB5M2sKKzU5NjI3IDFlYjQ5ODIzN2JhNWI1OGQxYWJiYTEzMDcwZjIyNDY2NGY5NzMxZmEgbGVnYWN5LXRydW5rCis1OTYyOCA0NDZlOGI2MDdiZDNhMDBmM2NmOTZhYzMxNzcyYmEyYTkxNWJkODg3IHB5M2sKKzU5NjI5IDQxYmZiZmMzNmNmNzI2M2ExMzkzMDEzMzQ2Nzc3MDE3NDAxMmYwYWEgcHkzaworNTk2MzAgODFiM2FjNTkwODljMThhNDFiZDkwNWQ3YWIxZTQ2ODgxZmE4YmNhZiBweTNrCis1OTYzMSBhY2I2YTRiMmMwN2YzMWViNmUwMDg4MjU5ZTk3OTI4OTlhNjM4Nzg5IGxlZ2FjeS10cnVuaworNTk2MzIgNDI1MTg1M2ZhOWI5MzQ4YjJiZWY5NzJlZWJiY2Y0NmJjNDE5YTM1YiBsZWdhY3ktdHJ1bmsKKzU5NjMzIDNlZTVkZTE3NmU3ODUyZWQ2YmU4NzQyYjA2MTU0ZmJhOTUwYTcyODkgbGVnYWN5LXRydW5rCis1OTYzNCA3YTg2YjIwYzViNGIxZDNjNDMzMTUxN2ExODk1OWU4ZTA4MTUwNWViIGxlZ2FjeS10cnVuaworNTk2MzUgZWIxMjA3NTEzZWU3ZGVlOWE1N2M1N2U1ZjAxZWMxYmJkMTI2OTQyNyBsZWdhY3ktdHJ1bmsKKzU5NjM2IGRkYTI5ZTcxMjgxNTA2ZjFkMjIxOGE2ZWVmMjQ3N2NlMmIwNGYxYTAgcHkzaworNTk2MzcgNDZkNTQwMTFlMWU1NjNjNGMzODc4ZWM4M2MxY2QxYmUwNzk3ZTI1NSBsZWdhY3ktdHJ1bmsKKzU5NjM4IGUzNjZjNDQ5NDhhMzE0MWM4Y2IzNTZmNDRjZTg1N2QwYmU5YmU2ODAgbGVnYWN5LXRydW5rCis1OTYzOSA2MDdlNjhjYjA5NDhkNzA3YWJjOGY5MzZhN2I3Yjc0MDNlYzZmMjI2IGxlZ2FjeS10cnVuaworNTk2NDAgOTM4MGQ1ZGE3NzE2OGUwZTk3YWYyNjIwYzcyMjg0N2Y5MWQ5YjkyMCBsZWdhY3ktdHJ1bmsKKzU5NjQxIDkwMWY3MGRiM2IzNDA0MDA4ZTgyNDA4YWQwMDUzOTIyNWRhYzViODcgbGVnYWN5LXRydW5rCis1OTY0MiBlZWUxYjc2YTk0ZTAxMThhMDZiY2NlNjZlMGIzMzM3MjNjMDM0ZGViIHB5M2sKKzU5NjQ2IDY1MmY3YWI1OTE4YjJmN2Q5Y2FkYWYwZjRjMmNlNDRkZmIxMzdkZDkgcHkzaworNTk2NDcgM2ZmNzc4YTM1NDEwNDhiZmU4ODA5MDE2ODE3MzI3N2QwN2QxY2ZjMiBweTNrLWdyYW5kcmVuYW1pbmcKKzU5NjQ4IDliMmUyNTUxYWZiZTM3ODQzYWQ5ZDdlNjE3NWEyZjRiNmRmMDgzYzUgcHkzay1ncmFuZHJlbmFtaW5nCis1OTY0OSA5NGEyOTM3MzQ5M2JkMTAwNGZjZWZmNTBjNDBhZTk3YjEwYWY1ZmUyIHB5M2stZ3JhbmRyZW5hbWluZworNTk2NTAgZjY3YjJlODNiMzQ3NWRkZGY5YWJlYTJiMTQ2YTg2ZDU4ZWJmOTVmNCBweTNrLWdyYW5kcmVuYW1pbmcKKzU5NjUxIGRiMGM4YjQxZGRiMGQ1ZTRjMjlkOTdiMDBmOGU2NGUwZDkxY2M0MDkgcHkzay1ncmFuZHJlbmFtaW5nCis1OTY1MiBiOTg4ZTRkMzVlZjNjZDBkNjVjYWFkZGU1ZjA0ZWMyZTNmNTNkOWJkIHB5M2stZ3JhbmRyZW5hbWluZworNTk2NTMgYTFmZjJmYWVkYzZiZThmYmVkNjZjYTc5NzhhZTY1ZDFkNGE2YmI5OSBsZWdhY3ktdHJ1bmsKKzU5NjU0IGQ5YTRhNWYwMTIxZTE4YjFkZThlM2ZjNjQ0MTAxODM5MjRhYmIxMjcgbGVnYWN5LXRydW5rCis1OTY1NSA2YzBjNTNiOWYzN2I0Zjk5NDcxZTYyOWNjNDkzNmI3OTIxZTc5NGEzIGxlZ2FjeS10cnVuaworNTk2NTYgMWE1NDhhNjU0YzFhM2U2OWUwZTUwNTU0NDE2MGFmNzFkZTc1OGYyNSBsZWdhY3ktdHJ1bmsKKzU5NjU3IDlhYjMxZmEzNmZiNTJmYzEzMmM1N2I5ZjQ2MzA3MGFiNDIzOTE2MDIgbGVnYWN5LXRydW5rCis1OTY1OCBmNjQ1ZTA3ZDg3MGFmNTk2YWYxY2UwZWY3MWNiY2I3NzBhZDA5NDI4IGxlZ2FjeS10cnVuaworNTk2NTkgZjBlOWMzZDE2NzY2ZDI0NmFmODUwMDAwY2ZjZjU0ZDViMDVlOGIwYyBweTNrCis1OTY2MCBkYTMwODc3Zjk3Nzk5OTQyMGRkOGYzOGNlMzQxMTJmZGM3ODkxOTNkIHB5M2sKKzU5NjYxIDA5OWExN2UyZDJiZDQ5ZjM0YmFmYWYxNjQwNmNkYjliOWFjZDhkMzUgbGVnYWN5LXRydW5rCis1OTY2MiA2NmJlYTkxMzI0Y2Q5MzM3MGZkMGM2NGFkYzUxZTk0MmQ1YjhhOTVjIGxlZ2FjeS10cnVuaworNTk2NjMgMWU2ZjI3YjY5NzNjYzVhMDY3MmUzYmU5Y2Q4YzU5NWQ4YjE0ODQ3NiBweTNrLWdyYW5kcmVuYW1pbmcKKzU5NjY0IDg5OWZlYWQ5ZWFlMjFiNmEwZjk5OGVmMDQzYmRhMzhmZTAyOWFjMWYgcHkzaworNTk2NjUgZTkwN2Y4MTRkOWEzMDcxOWM4YjdiNmM3YzBhYzFkYmI2YjU1ZWJkYyBsZWdhY3ktdHJ1bmsKKzU5NjY2IDY2ZGEzNzdiYTgxMDc4OTMzMmMwYWRkMmIwYzQyNmFhYWFhN2VjMzAgbGVnYWN5LXRydW5rCis1OTY2NyA2ZTkzZDJkNmViMjgwMWRiYmQxZjQ5MGJlN2JiOWMyNzFmZTUzMmYyIHB5M2sKKzU5NjY4IGU5ZjQ4MGI0YzEzM2NmNmU5Y2U1ZGI4Yjg4N2EyYjNmYzg4ZWFkMmYgcmVsZWFzZTI1LW1haW50Cis1OTY2OSA1Y2QyOGYwMTBmYzcxYmEwYWM5NzAyM2MyNjJkOTI5NzY2OTk3MDNiIGxlZ2FjeS10cnVuaworNTk2NzAgNGFlMzAwN2ViMGY0NzE2MDRlNWUzY2M0ZDYxNjczNzY2MWE0ZDRjZiBweTNrCis1OTY3MSA0Zjk3MjNkOWNhMzIwYWY2N2U5ZjYwYTJjMTk3ZGEyZTZmZGZkMzBlIGxlZ2FjeS10cnVuaworNTk2NzIgODM4NmVlZGEyMWM4ZTM1OGY5YTRlNGFiMDNlZGViYWE2YjFkMTk5MCBsZWdhY3ktdHJ1bmsKKzU5NjczIGEzZjE4Njc5MGZmNmUwOWFhNDAyYzhjNGViMThhMTlhZTk0ZTdmZjcgcmVsZWFzZTI1LW1haW50Cis1OTY3NCAxOGExYmM0OWE2OTZlMDVkZDRlNjM1Yjk1Njk1MTI1MzYyNjM1MTUwIHJlbGVhc2UyNS1tYWludAorNTk2NzUgNGMwNTZjMGEwYjlmNTY2OTlhNzk2MzUzNjcxMzdjNTg1NmU5MmVjZSBsZWdhY3ktdHJ1bmsKKzU5Njc2IDk2OGJkYTgxZTZjODBiYTVmZmZmMTVkYWM3Nzg4YWJiODZiN2IxOWYgbGVnYWN5LXRydW5rCis1OTY3NyAyN2U0ZTUzMGNmMmY2ZjA2OTU3YTVlNTI5Y2NlZjVjNmM3YzY3NjYyIGxlZ2FjeS10cnVuaworNTk2NzggMGNiZTk0YmVhMmM3ZWY2MTBkZWE3YjA1ZDFiYWI5ZjA0YWY5YWY0NCBsZWdhY3ktdHJ1bmsKKzU5Njc5IDYyMDhiMTdkMGRiZWRmMGRlODJkOTBkMGQ5ZDA0NTg0MTdkMGRkOTEgbGVnYWN5LXRydW5rCis1OTY4MCBiOTFjYTg3ZTZmMzI3MjE0N2Y5NGFiNjVjZWE3NjhiMjQ5NDIwMzA3IHB5M2sKKzU5NjgxIGZhMmY3MTgzYjFhZmM1NTNjMTdiN2U2YWU1ZDMzODI1YThhMDFmYzQgcHkzaworNTk2ODIgYzczMjEwZWE2MWM4NjUxNmVlZjAyMmFiYTg4Yzc4ZDFhMGZiMjk3NiBweTNrCis1OTY4NSAwMzZiMDBkYzk3NjdmNzVlMjMwMDVmNDNhNTc4ZWQyNTQ5NDYwOTFjIHJlbGVhc2UyNS1tYWludAorNTk2ODYgNTNhYzNmYzY5Yjc4YjFmZGUwODI1ZmYzNmI4YzQ2ODRiNzFiNGRkNyBsZWdhY3ktdHJ1bmsKKzU5Njg3IDhkNjllZGQzZDI5MDI4N2U5ZmRlNWI3ZTliOWE1MWE0MDZlZjFlMWYgbGVnYWN5LXRydW5rCis1OTY4OCAxNzM1OWM5YTRhN2QyN2ExOGEyMzZjYTY0NTNmNDM5ZGRiMzM5YjYzIGxlZ2FjeS10cnVuaworNTk2ODkgNWUwMTcwZDNjNGRhNTQ0YzlhMTdmMWE2ZGQzYmE2Y2YyNzUxM2Q1MSBsZWdhY3ktdHJ1bmsKKzU5NjkwIDk0NjI5Yzk1OTY1YTExODRmMzNjMDgyYzgxZTFlMWEzZTQ1ZTM4MzYgcHkzaworNTk2OTEgY2YyNjY3ZTJiYTJmNWUyZTQxNzdjY2EwMWI1ZWNiNWQ5ZTMwMTVkOCBsZWdhY3ktdHJ1bmsKKzU5NjkyIDUxNzFiNWFlNjg4YTIxN2I5ZWM4Y2NiN2EzZDA1ZTY4OGRhMjFkNTcgbGVnYWN5LXRydW5rCis1OTY5MyBkMWEzNmRkYmFhNDkyZTkyNjc5OWM1NDdjYmI5NTk4MGU4MjVjMjNiIHB5M2sKKzU5Njk0IGNiYTlmZjc2MDQzMDQ4ZWMyZGM3YjMyMDRjMGY1ZTE0NGIzMWFjNTMgbGVnYWN5LXRydW5rCis1OTY5NSAyOTg2YmI0MzIyMjIxNzIxYWJlNGJhNDg2OWZmZTBlNzBhZDg3MDZiIGxlZ2FjeS10cnVuaworNTk2OTYgZGUwMGFmMDNiYjRkNTY5NTU0YWRmOWRjYmQzMzMwY2I1OGIwOTdlYiBsZWdhY3ktdHJ1bmsKKzU5Njk4IGRjZGQxYmEwOTY0MTBlOTdjMTA5NDU4MjczMWJiZmM3MmFmNDJlYWUgbGVnYWN5LXRydW5rCis1OTY5OSA3NDJjYWY1MzU1NTc2ZmU2ZWRmMzYzOTFlNDQ2NzM0OGYwMWJkZDllIGxlZ2FjeS10cnVuaworNTk3MDAgYWQyYmNiZTgzZmRjMmZkMTRiNzU5ZDE1Y2VhY2RjN2ZkNmJlZTYxMSBsZWdhY3ktdHJ1bmsKKzU5NzAxIDc2NDNhNDNmMjVhMWU2OTdmMTZiMjNmMmFjZjhmMGM2ZGJmYTE3NzIgbGVnYWN5LXRydW5rCis1OTcwMiAxM2FhYmMyM2NmMmUyYzBlMjI1OWM5YjUwNjY4OTQ1ODE4ODk3NDM4IHB5M2sKKzU5NzAzIDYxYzE2NGYyNTQzNTY0MmMzM2FhNjY2MmY5ZjY5M2VkNDE1Yjk0YzcgcHkzaworNTk3MDQgNzZhODlkZDRhNTEyMzcyNzdiZTU1NTgxNDQwNTI1M2UzNTAyZTU1MyBsZWdhY3ktdHJ1bmsKKzU5NzA1IGQyYzFiYTA5OTI5MDgzYzgyNTY2NGUwYmQ4YTBkNGExNjlmOWQ5OWIgcHkzaworNTk3MDYgMzk4YjYyNDY3NTlmYzJkMmUzY2I0ZDAzYWY1ZTE4YTE5ZWEyOTU4MyBsZWdhY3ktdHJ1bmsKKzU5NzA3IDc3YzM3ZTMyZmUzNWI1YzA3MjU0M2VlYzk4MDEzODBmNmEyNjQyYWYgbGVnYWN5LXRydW5rCis1OTcwOCAxMjdjYzJmZWE5ZmI5ZDE1ZWMwNjY2ZGZiY2ExNzMyNGVkMzExNzFlIHB5M2sKKzU5NzA5IGRjZTI1OTQ4OTE4ZDBkOThhMDMzMGRkMDE4MmI5NTcyN2Y0NjJiZjQgbGVnYWN5LXRydW5rCis1OTcxMCA4MTY2OWZiYzg0NWYxMjQ5N2M2NGY2Nzk1MmE0M2E3YjNiYmQzZmZkIHJlbGVhc2UyNS1tYWludAorNTk3MTEgNWQ3ZDJhZjU5YWZlMWNhYjUyMWE2NmRlN2FkZjExMmJmOWQ3NDFmMSBweTNrCis1OTcxMiBiZDAyNThkZjMzMGVjNWRhZTliMTZkMmRmY2I4MmVmOGYxNzIwNWE0IGxlZ2FjeS10cnVuaworNTk3MTMgMjkyYzVlNTFhMGU1OTYxOGVmOGE4YjQ4ZTAwMzhiNzkyMWM0NjAxMSByZWxlYXNlMjUtbWFpbnQKKzU5NzE0IDkwMTkwODZmZDIwYTRkYjc1MmYyN2JhNjdhMzNmOGY5MDJmOWQyNWYgbGVnYWN5LXRydW5rCis1OTcxNSBkMDc3YjBjODkzYmM2NTYxOWFiNzMwNDI2NjY2ZTU3N2U4OGEyODUyIHJlbGVhc2UyNS1tYWludAorNTk3MTYgYmZlZDcwMjc3YWIzYjY4NjUzNzlmN2EzODU4OTM1N2I1ZWY2ZjRjMyBsZWdhY3ktdHJ1bmsKKzU5NzE3IDYxMzQxNzc1YmM0MjE3MjMxNWUxOGViMTQ0ZjdhNzQ1MTdkZTZlY2UgbGVnYWN5LXRydW5rCis1OTcxOSA4M2NhNzM1YTM5OTVhNzIxNTVmNmEwZmVmYzYwNjJiMmFiYmIxNDlmIGxlZ2FjeS10cnVuaworNTk3MjAgNjQ2Y2ZmMDk2MDM5YmFmYTVlOWNmMDBiYjdlMGJmYzgzNTgyZTkyYyBweTNrCis1OTcyMSA3M2JjMDAyMjUyYmZkNTgzYmY2ZmU1YzJkZDJlMWQyNGUyMDMyYTdjIGxlZ2FjeS10cnVuaworNTk3MjIgMzRjOTFkZjYwNTMyOTk5MDY0MThjOWM1YzlhM2UzZmFkOTQxMjZlMyBsZWdhY3ktdHJ1bmsKKzU5NzIzIDU3YzdkNDJmNmNkZWIxOGE3YWUyMzk2ZGQyYjc1NmRkNWQ5MDA1ZGIgbGVnYWN5LXRydW5rCis1OTcyNCAyMDM3ZjRjYWJiMDdjY2RhNjNkZTNmMjFlODFjNjM1MWQ1NmZiYThiIHJlbGVhc2UyNS1tYWludAorNTk3MjUgM2ZjYWY2Y2MzMDZkMWU0ZTZhYTlmY2YyMGZhZTc2MGYxN2VjYTRlMyBsZWdhY3ktdHJ1bmsKKzU5NzI2IDJlMmZhMjkxOTE0YzUzY2Q0ZDRkYmE2YmUyMTg2YTAyYzllZjkxY2YgbGVnYWN5LXRydW5rCis1OTcyNyBkY2M3Yzg2NWM3N2IxMDE3ZGE5MjAzOGYxM2EyMjRlZjBkZjc3NTRlIGxlZ2FjeS10cnVuaworNTk3MjggN2JiOTFiM2JhMGVjYzI4NTM1MDJmMGUyZTg0MDRiYzE1YzhjODllMiBsZWdhY3ktdHJ1bmsKKzU5NzI5IDVhMGNiZTM2YTYwMzc3OTVlM2EwZDVmMWYyYmQwYWE5ZGZlZmM4NGMgcHkzaworNTk3MzAgMzNhMGFlNzA2NzBmNDM2OTIzNGQ4ODk4NTUzMGU2OTAwZDI0ZWViNiBsZWdhY3ktdHJ1bmsKKzU5NzMxIDk0ZWVhZWViM2NlOTNkZjhkMmIzYTcxMWU3NjA3NjVkMjZmM2QwODggbGVnYWN5LXRydW5rCis1OTczNiBlNDhiNDY5ZDFkODY2Yjc3ZTViNjdiYjIwMGFjNGRmMjNkM2JlYTZhIGxlZ2FjeS10cnVuaworNTk3MzcgNzc3NDI5YTIzMDI2NjdmMWQ1NjMzY2Q4NDQyZThkMmQ5ZjNjODRhZSBweTNrCis1OTczOCBjMGMyMzY5Zjk0MjY3ZWExNTBjZTJlMmUyZmVjNjM3ZTc0ZjE4ZDhhIGxlZ2FjeS10cnVuaworNTk3MzkgOWNhZjhhN2IxMWE2Yjg5YzE3OTNiYzZmNGQ0YzA4Y2I4NWM5ZDRkNCBsZWdhY3ktdHJ1bmsKKzU5NzQwIGJiYzllOGMwOGNkNWVlZTM3YzAzNWU5MTFlMTA0YzE2N2M0MDU2YWMgcHkzaworNTk3NDEgZmM4MTg2YjUwMTQ1YjlkMmI3ZjJkMDE0ZDVlOWQ5ODVlMDg2YzQ1NSBweTNrCis1OTc0MiAwYzBhZWJjNjY1NmY5NGQyNTMzNDRjZTRhMTJhMDMzZjM4OTc2YjM3IGxlZ2FjeS10cnVuaworNTk3NDMgM2M2Zjc1NDNiZGQ2YjRhYWQ5Nzg4OTA2M2NmNGNiN2Q5NTYxOGI1MSBsZWdhY3ktdHJ1bmsKKzU5NzQ0IDAxZDViOGU3ZDEyMTIwNWVjN2IyMWE4YWYwZDczYTQ4ZWNiYzQ4OGMgbGVnYWN5LXRydW5rCis1OTc0NiAxNDI2Y2QxMzY3MzlmYmRlZTI3ZmQwNjc0ZWNiOTQ2ODNlMTRiMzY2IHB5M2sKKzU5NzQ3IDMxZTI5NGQwOGNlMWM5ZGYzZjI4NmM1MjMyODY3OWZjMTViMTZhYmYgcHkzaworNTk3NDggYmQ4NTg3OWVmZmE2OWRhY2RjOTk1MWM4NzVlZWY0NDY1ZjI0NzYzYSBweTNrCis1OTc0OSBkMDBkZTBjZjA0ZTI3NGYwMjNhMmQyNDFlZGFlMzg1OThlNjlhYjY2IGxlZ2FjeS10cnVuaworNTk3NTAgMGYxYzhiYWI4OThkYmQ5YmNkMzljNDY2MzIyMWRjZDM3Yjg1MDY3YiBsZWdhY3ktdHJ1bmsKKzU5NzUxIDlkOGI5NTNkNGFmNTJlY2FiZDA2ZDQwNGVjNmZiMjlmNDBkNGQ0YzcgcHkzaworNTk3NTIgZWRiYTBhMWI3ZWJlMTA4YzZiNzIxNTJiZDQ4OTc5NTU1NGQwZTZlZCBsZWdhY3ktdHJ1bmsKKzU5NzUzIDI0NGJiMzFjMDM2YmQ1NGQ3MzFlZWJiODAwMjgxYzdlMjg3N2EwMzggbGVnYWN5LXRydW5rCis1OTc1NCAxMTVkYTIyNjhjZDk1ODExMjNiNDk5N2E4MDdkMDc4MmQ0ZGRlN2M1IGxlZ2FjeS10cnVuaworNTk3NTUgOThjYzFjYzU3NTczY2MwNmMyYTdlNGQ3OWE1MGJjMzg4MDhjZWIwNiBweTNrCis1OTc1NiAwODEzOGJjM2MwNjBlYzZmMzQ2YjI5MTZmYzQxODllNzI5OGY3ZGE2IHB5M2sKKzU5NzU3IDRlNzRjMjc2NzhiYTE1Y2U5ODY0ZGU5OTJmMzA3ZDViMjY3Nzg3ZDEgbGVnYWN5LXRydW5rCis1OTc1OCA2NWZlNmU1NmQ0ZjhkNWM5YTI5MDJiZWU5ZGI4NTNkY2U4NjRiNDNiIGxlZ2FjeS10cnVuaworNTk3NTkgYWZiMTMzNzkwNmFlOGE1MmU4ZWJkYWI3NGI1Y2YxYzY0ZGNmNjY4OCBsZWdhY3ktdHJ1bmsKKzU5NzYwIDI4MWM5NDc5MTQyYTNlNGFiYTA2YjI2MDBlODRiN2JiMzRmNzc2OTIgcmVsZWFzZTI1LW1haW50Cis1OTc2MSA4YmY2YTlhM2E2MzI5YmUzOWNkMDBiZTgwNjUwNDg5ZGQ4NWYxOGIwIHB5M2sKKzU5NzYyIDU2YmE3OTFkOGIzNTkyMzU0N2JmMmNhYTM3YzM5ZDhhYjQ5N2Y3ZjEgcHkzaworNTk3NjMgMjg0OGZmYjlkMTdhNmMzYzliMzkyNjZhYTcwODIyNmY5ZGE1YjcwZiBweTNrCis1OTc2NCAzMjY4MWFlNmM1YzE0ODg1NWZiNzQ2ZDQyYzExMWM0YjgxNWI4NjQzIHJlbGVhc2UyNS1tYWludAorNTk3NjUgN2EyMDY1YjViZTc1YjMyMzVmNTkyODg1YmQxYWFlNzBlZTZmYWEwYSBsZWdhY3ktdHJ1bmsKKzU5NzY2IGJlZGQ4YmZkM2ZkMjY4MDQ3OTA0NDY1NGVlZWUyZjgxOTMwZDUwNjIgbGVnYWN5LXRydW5rCis1OTc2NyBmYWIyYWE2YjgwNzM2MzMyZGNmMTMwMTg5MGFhODQ3YzQ1NjE2ZTA1IGxlZ2FjeS10cnVuaworNTk3NjggZTViZjY2OTZlMmUzNmE3NGNjNzFhMGM4NGQ0MTEwZWU4NzA4MzcwOSBsZWdhY3ktdHJ1bmsKKzU5NzY5IDNiYzA0MDVkZTQ5MTVkNDg3YzQ1ZGVjYTNmNWJiZGY5ZjViY2JiMDEgbGVnYWN5LXRydW5rCis1OTc3MCA0MzIxYTVhYmQ2Y2UyZTJkN2Q2NjJkMTVmZmZmMGYzYTRiYWRhMDU3IGxlZ2FjeS10cnVuaworNTk3NzEgMTU1ZjVjMzZmZjkyOTU2MWZmMmI1NDc5MjJkNWI1ZGFmYWY4YWI2MCBsZWdhY3ktdHJ1bmsKKzU5NzcyIDc5YTM0MjQ4YTI2MmZiYTlhNDI3ZWFlODY0YmYyZjM2YmM1ODM2YTUgbGVnYWN5LXRydW5rCis1OTc3MyA2NjE5N2Y4ZDBmZGYwZjg3MjcwMzA2MzE1YzliNmI0YzczOGM2ZDQwIGxlZ2FjeS10cnVuaworNTk3NzQgNTA3ZTc2ZDdmY2RkNWM1YmY2ODViYTViNDViYjVjY2Y5ZGE4M2MwMiBsZWdhY3ktdHJ1bmsKKzU5Nzc1IDY0Nzk0YmE5ZTI1YWQ1YzFjOTJlZDMxNGFkY2Y2ODViYzdhOGVlMzIgbGVnYWN5LXRydW5rCis1OTc3NiA5OWY2MzcwYzZjZDA1ODRhNzUyMDIzM2MwMWIwYWU3ZTRkZGRjZDBlIGxlZ2FjeS10cnVuaworNTk3NzcgZDg5NzllNjQyOWU1ZmY4YWJjY2QyZDA0ODdlMTYzYjllNjU3YTI5NyBsZWdhY3ktdHJ1bmsKKzU5Nzc4IDZiM2FhZTVjNjliZjIwNDRlMjU5M2YwYzIyZjIwMzE5MGQ1OGE1MWEgbGVnYWN5LXRydW5rCis1OTc3OSBlZDc1OGY2YTk3YmIxMGNhYzUzOWM1YWIwOWQ4N2U3OTRiMzI4MmRkIGxlZ2FjeS10cnVuaworNTk3ODAgMDkwMDgzYTIzM2Y4ZTM2NmRlOGNjOWU2ZDZlMmZmMjlmMTE3YTkwYSBsZWdhY3ktdHJ1bmsKKzU5NzgxIGIyNDg4OGNiOTU1MzMzNTg0YzhjNTg5NDBmNzQwODYwYmI4OWNkNTkgbGVnYWN5LXRydW5rCis1OTc4MiAyYWNjNjUyZTU4YTE5YzZjM2Q2MDgxNzg0NWJiYjkyNmVlY2FlYjI3IGxlZ2FjeS10cnVuaworNTk3ODMgNDIwZmU2ZDdkNWY0NWU1ZjlmZWU0YTI0ZmNlYmZmZTJhNmQ0MjZkZCBweTNrCis1OTc4NCBhYzdkZWIxYzFkM2NlMDNhZTcxMDdkM2YzZDM0ZThiYzAxNWZhZmI0IHB5M2sKKzU5Nzg1IDhlYjk2MzYzZjFkNTljMmI3NWVjNTE0Y2Q5ZmI1NGVjZWI5ZDYwOTYgbGVnYWN5LXRydW5rCis1OTc4NyAxODExZWIwM2JhMDBjOGY5MzcxZTA1YWNlZTNmOTExZDMyZTQ3MGVmIHB5M2sKKzU5Nzg5IGZhMjUwYTU4MDk5ZmM0YWFhNzhhNTZlZTFmYmVjMjdhZjA3MTVhMjAgcHkzaworNTk3OTAgN2NiYWNhYTVmODg1OGY0OTQ3NWJkNTMyNGRiMTg5ZWFhNDQ1YmI5NCBweTNrCis1OTc5MiAwYzRkMjU4YTViMjVlYTBmZGE1OWM2NTZmZGQyYmMyZjM0Yzg3YzM4IGxlZ2FjeS10cnVuaworNTk3OTMgZDA0NjVlNzgyYjAxOTEwM2M4YTg0NWJiNTcxOWYyOWYzMDAzNjBkMCBweTNrCis1OTc5NCA2NzRjOWI4OWQxMjQxNDAxY2UyZmI1YzMwYzdlMzgwNGJjY2QyOGRiIHB5M2sKKzU5Nzk1IGI4ZTM0YmNkYmE0NTQ4Mzc1NGM0Y2VhMzA0ZTg0NDBiODJlODFmNzQgcHkzaworNTk3OTYgMTNiN2NhMDRiZDcwZTE0NjQyZWQ2ZDk3YjEwZTg1ZjU0YzM5OWIwZSBsZWdhY3ktdHJ1bmsKKzU5Nzk3IDk3NGYwMzIwZDZiM2NkOTMyMWQyYTkyYjZjNjA0YzhjMDUyMjZiNTQgbGVnYWN5LXRydW5rCis1OTgwMyA0MjY0NmE4NzI3NzJlZmFkYTA2MjA5MmNjM2NmZjE0MTQ1YzNhMDJlIGxlZ2FjeS10cnVuaworNTk4MDYgMDViY2I3OTBlZjYzMjRiZThiN2Q2ZjJhMDA2NDJkNmI1Y2MzYzBkMCBweTNrCis1OTgwNyBhODY5N2FmYmYxN2VmNWM3MmMwNWUzOWNkZjVjZTI0ZmJjNGEwYjlkIGxlZ2FjeS10cnVuaworNTk4MDggNDU1MzZkNTU4N2Q0NzcwMzI1MDFhMWM1MzY0NThmOWI0ZTRiM2VkMiBsZWdhY3ktdHJ1bmsKKzU5ODA5IGY5Yzk1MGU4ZjJlMGFlNmZhYjI5MzdlY2MzZDcyMmFiZGFhMWVjZjYgbGVnYWN5LXRydW5rCis1OTgxMCBiNmVhNTI5OTNjYWU1MGFlNjU2MDQzZmRlNzA1MDFkZjU2OTEwNWM0IGxlZ2FjeS10cnVuaworNTk4MTEgZjI3MDc0ZDE0N2Y0ZTE5OGE3YjMwODc5MmIxYjViYzhkNDU0YmQ2OCBsZWdhY3ktdHJ1bmsKKzU5ODEyIDZjNGIwY2M5ZjZjOTAwYmIyNWI0OTIxZTIxZmI3OTViZDZmODEyMjUgcHkzaworNTk4MTMgN2VhMjMxNTc4YjAyZGZhMDNjNzg2MzZlODNlNjBlMmE4ZjRmNWVkYyBsZWdhY3ktdHJ1bmsKKzU5ODE0IDNhOTQ0OTM1YzYxMGRhNGZjYzAyYjRiMTk4MjljZjU1N2MwODc2ODggcHkzaworNTk4MTUgODY0ZTY3OWEwZTg1MDgwNGJiZjIzZWJkMzRlZjA2OGI5NjZjMTcwZCBsZWdhY3ktdHJ1bmsKKzU5ODE2IDRkMjNmNWE3ZDRjOTYwOWMzMDM0ZmVjMzk0YzAzOGExY2I3NDBlN2UgcHkzaworNTk4MTcgMTljZTllZjM0YjYyMzNjYjM4MzU1OGNiYjc3YjI0YmM2OWNkMjZlNCBweTNrCis1OTgxOCBiOTg5NzdmMGFiYTFjNjU3YzQwMGViMWRhYWQ1NTkyMjJjYjhlZjJjIGxlZ2FjeS10cnVuaworNTk4MTkgYWM1MWNmZTVjNWM2Yjk4Mjg0YzM2NzQ0NDE4NmY3Y2NhYjU1NzM5MCBsZWdhY3ktdHJ1bmsKKzU5ODIwIGYzYzFmOWM4Y2U5ZjEwNmVjY2JmMWY0Mzc2YzJiMDAyMDQ1YTZhNjEgbGVnYWN5LXRydW5rCis1OTgyMSA3NmZjZWI1OGJjZjUxZDFlNzk5MzI2NGU3YjFjNWFmZDQ2ZmYxYjAxIGxlZ2FjeS10cnVuaworNTk4MjIgMDZkMTVkYTFmMTI1OGM0NDU0NTQ0MDMwMmJlZmJmOGMxNWFlMWE3NyBsZWdhY3ktdHJ1bmsKKzU5ODIzIDJjZGI2NjE2NzVmOWMwM2Q5YTk2MmQ2OGE3MTIxZTNjY2Q3N2Y0NDkgcmVsZWFzZTI1LW1haW50Cis1OTgyNCA1OTlmMjJhMzQ5YTI0ZmUzYTk5MGVhMWNiNTM4NzU3MjAwYzE1ZGNiIGxlZ2FjeS10cnVuaworNTk4MjUgY2RjMjg1YmQwZWZiNDRlN2E0OTA2YzFkYjNlMTExYTg5MjIyMThkZSBweTNrCis1OTgyNiAzMDVkN2QyY2UwNDcwMWI0MWNlMDk0ZTUwODNlMDA2ZTc1ZGE1MjA2IHB5M2sKKzU5ODI3IDEzMmQ5MDg0NzFjODM4YjkxMDU1Y2YzMDA0MTQxNGY1MDI2YjMzNWIgbGVnYWN5LXRydW5rCis1OTgyOCAwYWFlMTQ5NTBlMGJjMmJkMzdmMGY0NjFhMjQ3OGRjNTcxNmQ1OTBkIHB5M2sKKzU5ODI5IDNiM2FiOTI1YjI2MWU3MzRiNjRlM2QxZjA1ODgxNDM2OTYzY2U5NDkgcHkzaworNTk4MzAgZGI1ZTAxYzMzZWI3NjMzYzAxM2E1MTRkMjc5YWYzMjQ3OTg4OWI1NyBsZWdhY3ktdHJ1bmsKKzU5ODMxIGZkNTMyYTliMjgxMDYzODMzOTE4ODY0Y2VhZDc5NWNmZTY0YzZlNTIgbGVnYWN5LXRydW5rCis1OTgzMiA2YjcxNWVhODA0Mzc3NDY4ZmQ5NmUxNTRmOGEzOGI1YmEzNGM3YTQ5IHB5M2sKKzU5ODMzIGNmMzZlMDFlODNmMjBlNzQwZTkxMzViOWIzNmJmNDhkMDBkYTBjYWYgbGVnYWN5LXRydW5rCis1OTgzNCBhZGRjMTg1OTZhMTU3NTM1ZTBhZWRhODAzNTJhZjUyMTk1MjNlNmI3IGxlZ2FjeS10cnVuaworNTk4MzUgY2ExNDE1YzYxMDVmN2ZkMGRlN2JlMWNmZGYwZjU3MzNjZDZlYjBmNyBsZWdhY3ktdHJ1bmsKKzU5ODM2IDE5ZTFmYTc4ZDMzMDU0OWY0MmFjZDI0ZjI0MmNhNDVkNTUxZGM3ZDcgbGVnYWN5LXRydW5rCis1OTgzNyA1ZTAyNGU5MWVlMDY3ZDc1MWE5NDI5MDgyY2JlOWE2ZjEzNjdmMGQzIGxlZ2FjeS10cnVuaworNTk4MzggZTk3NTYyNjZlMGI5MzgxNDAzODQ4NDE5YjE3MGVlMjI5NmYyYWMzNCBsZWdhY3ktdHJ1bmsKKzU5ODM5IDZkNTIxNjAzZTA3ZGU3ZmI3ODhlZGE1ZThmOGM5NTQyOTJkOTZjNGQgbGVnYWN5LXRydW5rCis1OTg0MCBjNzVkMzYwYWI4N2IzODc2NjNhMTgzMmM0MmEwNTRhYjdhYzNiY2JjIGxlZ2FjeS10cnVuaworNTk4NDEgNzNlMWJmMTc5YTAxYWQ3ODI0ZmY1YWEyYjI5Y2UwNjhhNDU3Y2Q2NyBweTNrCis1OTg0MiAyMzZlNzUyNmFiZWFmNThmMDVkZmU5N2VkNWNjZTJmMmU5YWFhODkwIGxlZ2FjeS10cnVuaworNTk4NDQgNDJjZjU5Y2NjZTY2MmI3NTAwZjc3NGE5NGE2MWZkYmUzZDU3YzVlZiBsZWdhY3ktdHJ1bmsKKzU5ODQ1IGEyOTM4YzU1MjAwY2U0YTZkYzFjZDBkNTEwYTg5Y2VmMjQxZGUzZWIgcHkzaworNTk4NDYgZmI1YTYzMzBmNzFiMzk4ZmNlYjBlNDA1MjAyYTg4ODA1YmExY2MxNCBweTNrCis1OTg0NyBjYzg2OGZjZjUwNWFlYjU5ZTQxM2MyOTgxOTFhMzNjYTg2OWFkOTlhIGxlZ2FjeS10cnVuaworNTk4NDggYTViN2YyZDg3NjFkNWExZDJhYjI2ZTIxZjM2MDdhM2FlZjY5MmE3OSByZWxlYXNlMjUtbWFpbnQKKzU5ODQ5IDYwYjU0ODAxYjY0NjMyZTgwZGE0MTE0MTU0YWQ5YzQwNDc0YTExMjggbGVnYWN5LXRydW5rCis1OTg1MCBhMWRkZTY4MGU2OTQyMGY3YmQyYjgxMGYyOWE3Njg4MWZhNzM1ZWJiIGxlZ2FjeS10cnVuaworNTk4NTEgY2IyMmY4NzQ4ZGE3Y2Y0NTZiODZlYjJmNzBmNGJjMzFlOTJiNDU4ZiBsZWdhY3ktdHJ1bmsKKzU5ODUyIDA1N2RlNDZlYTE3ZTIxYTYwYzRiNjkwMjJlMzE4OTQ5ODgyMzkyODIgbGVnYWN5LXRydW5rCis1OTg1MyA4OGQ3NmI5MjA2ZTY2NzMyNmEzY2Y4MWRmMjhlYmM2ZjI1ZDU2MTExIGxlZ2FjeS10cnVuaworNTk4NTQgZDFhMWJhNTAyNTc5ZTllMjIyNTVhNzhkN2I2ZjhlMzBjODM2NzI0MyBsZWdhY3ktdHJ1bmsKKzU5ODU1IDc2Yzc2NWE3NGZiOGNiNDM4NWY5MDI3MDVmYWZiNjY0ZGUzZWZjYWIgcmVsZWFzZTI1LW1haW50Cis1OTg1NiA1ZmI5YjJmNmJhY2I3YzZiZTg4OWIwMDA0ZjljNmQ3YTExY2NhYmUxIGxlZ2FjeS10cnVuaworNTk4NTcgMDg4YjUwNzdjOTAwYzhkNDg3M2RkYjVlOTc5OTg4NzI3NmRkNjAyNiBsZWdhY3ktdHJ1bmsKKzU5ODU4IGY0NWVhZWRiOTIwZTIwNTVlZjM3ZTEyZmIxZDNiZWQ0ZWE0MDYyYzAgbGVnYWN5LXRydW5rCis1OTg1OSA5YTYwYmQ4ZjAwZDZhZmE5MDQyZmMyODIxZmUwYTI4YjYxM2QyYzAxIHJlbGVhc2UyNS1tYWludAorNTk4NjAgNzZjYWI4Njc4OTE2ZTRkNGE4MGIwMmFlM2QxOGYxNDhmOGQ0YTU5MyBsZWdhY3ktdHJ1bmsKKzU5ODYyIDQ3ZTc4YzJkMTZkZTBkNDMwMGU2YTdjMjcyMmY1MzZlODllYTUzMjYgbGVnYWN5LXRydW5rCis1OTg2MyBiN2QxYjYyN2E3ZDUxZTRkMmIyMmUwMDkxNzBlZGE1MzlkOTI2YjlkIHJlbGVhc2UyNS1tYWludAorNTk4NjQgOTRhYjU3MmVkNmRkZjM2MDgwMDYwMjc5ZDliNzFmMGZkMDNlMjdlNyBweTNrCis1OTg2NSAzMzQ0MDkxOTk2MTI0MzIxNDM5NmZkMjk1Mjc5NmM4YzA5ZjY5MzVlIHJlbGVhc2UyNS1tYWludAorNTk4NjYgYmY3YmJkOGRiMWE4MmQ3ODI1OWZmOTI1NGMwZjRjYmEyMzMyMjg4YiBsZWdhY3ktdHJ1bmsKKzU5ODY3IDVmNjQwZjhmOTJmNDhkNGRiZDJiODkzMzAyOTIxZWRkMGQxOTNjOTYgbGVnYWN5LXRydW5rCis1OTg2OCAxZDc0ZGQ4MjI4ZGIwY2M5NWJjNzAwMjNlYzNlOTJhN2NiY2U5ZDNjIGxlZ2FjeS10cnVuaworNTk4NjkgMTBlYmQwMjdjMjQzOTQyNWRjMTI1YjM0MmYxYWMxYzE1NDE5NmQzYSBsZWdhY3ktdHJ1bmsKKzU5ODcwIDUwODY5ZTc0N2U3NmU5ZTQwYTk2ODM5NTA0ZjdkYjViOGM2MTcxNjggbGVnYWN5LXRydW5rCis1OTg3MSA5ZjZhYTQ5ODQ5OGQyODVjMWExYWNkZDc3ZGZlNjk0MWEyNTU1MDM1IHJlbGVhc2UyNS1tYWludAorNTk4NzMgYTYwZjkyYmEwZDFlZDU2MzE1NTViMmMyOWFhMDU3MDdmM2IxMzA5OSBsZWdhY3ktdHJ1bmsKKzU5ODc0IDY3NzZkNmVmMjAxYTEwMzc1OGI0YmZjMTI3ZTkzOWQ1NmNmYjljZTcgcmVsZWFzZTI1LW1haW50Cis1OTg3NiBkYzlkOTViNzE3YzU3ZTNlNjFmNGRiMjllZGY5MGQ5NjU3ZWU1OGVlIGxlZ2FjeS10cnVuaworNTk4NzkgOWE5NzkwOGI0Yzk3ZWY5MWIxZDJkYjUxMjM2NGUxNzFmNTJkNzliZCBsZWdhY3ktdHJ1bmsKKzU5ODgwIGM5YjZiZTQ4MTY1N2RkOTYyODFjZDAyNjg3YTQ1MTYzMjcwNmFlYjcgbGVnYWN5LXRydW5rCis1OTg4MyBhMjlhZGMzYjBmMjY2YjYzNmM5NjJlNDI5YzE0MGEwYmJiM2MxODk3IHB5M2sKKzU5ODg0IGZhZTljZWRiOTE0NmJkZjE2MmJiODg3YmMzODM5ZDcxZjc1NWExNDcgcHkzay1pbXBvcnRob29rCis1OTg4NSBmYjI4NzQxNWFjYTBlNmZhNWQyYTMyOWUyOGEzNjA0YzJmMDEzNDMzIHB5M2staW1wb3J0aG9vaworNTk4ODYgYTkzZTBlODBjMThhMDE3MTA4MDE0ODdiMzFkZGU5YzBjOWE1OTM0NCBweTNrLWltcG9ydGhvb2sKKzU5ODg3IDc2YTQ2MWRlMTU0NDQ0MTBmZTE5MDVkNmFlN2E3YTczMTJiNzJkMWIgbGVnYWN5LXRydW5rCis1OTg4OCA0MjY3NmE0ODQwYjVhNzExMGFjY2M2ODJjNzZlYzQyYzYzMTc4OTc3IGxlZ2FjeS10cnVuaworNTk4ODkgYjQ0NmNkNjEzODhmMDViNWZkZDVlNjU3ZGQxYmFhMWYyN2I4NWQwMCBweTNrCis1OTg5MCBkOGQ3YTc4YzY0MjNjMWE0MTYyMmM1YjY3MDY5YjU2ZjA4MjEwNTVlIHB5M2staW1wb3J0aG9vaworNTk4OTEgODk2OWQ3NGQwZDIyZjMxOWM3YzQ1ZTY0MjU5YWQ3NDc3NTYxODc1MSBsZWdhY3ktdHJ1bmsKKzU5ODkyIGMzMTEzOTE0ZTY2ZTllMGQ2NjkzOWFjM2UxYTdmYzhhY2ZkMjI0MzEgbGVnYWN5LXRydW5rCis1OTg5MyBhZjZmMzQ1NjU3YjRiNzk0MWYzMWZkNGNlNjM5MzI0OGZhY2U2ZTQ1IHB5M2staW1wb3J0aG9vaworNTk4OTQgMjA1NzhkYjA3NjI5YTIwNDY2ZjU0ZjY3YmI4MzQwZjhiODJiYjIxMyBweTNrLWltcG9ydGhvb2sKKzU5ODk1IGRiYWZjZDgyNzk3OWUwOTdlMDlmZmVhMTc2MzQxZmI2ZDUyYjk3ZDQgbGVnYWN5LXRydW5rCis1OTg5NiBlNzUzZTMxYTBjOGYxNzk0MzhhMTlmZjc0NjkwY2VlMDc0MDNlYjQ3IGxlZ2FjeS10cnVuaworNTk4OTcgZGY4NTZlMGUxYjJhMDg5Yzk0MWRmNGMyYTMxNzMwZDc1NTU1ZDg1MiBweTNrLWltcG9ydGhvb2sKKzU5ODk4IDY5ZjQ5NTA4MjQxMjY3MjczNDg5MWY2NmUyMjhhNjI5ZGU2ZTA1N2QgbGVnYWN5LXRydW5rCis1OTg5OSA2MDEyNmFhM2I4MTY5NzcwZDc5ODQ4NWIyZjc1YmZlOWUxYjhlNWVkIHB5M2sKKzU5OTAwIDc4NTFlNzVmNTQzOGNhNDU5OGQzMDVjNmM5OWZiOTQ0MGZkYzBkN2EgbGVnYWN5LXRydW5rCis1OTkwMSA0MDNjZmNhOTg2M2ZkMmUzMDhiMDQ1ZTJhZjE4YzBmNmQyYWZjYTQ4IHB5M2sKKzU5OTAyIDVkZWM0YWRlOGZhOTUyODRiMDYwZTBjNTQzZjMwNDM2YTEwZDAwN2IgcHkzay1pbXBvcnRob29rCis1OTkwMyA4MDU4ZTE2ODIwZWY4NjBlNGM5MGM0N2UwNzBhYjNiZjc2Zjg5MDM4IGxlZ2FjeS10cnVuaworNTk5MDQgMzU0YmUwZGFmZTU0YjIyMmFmMjVhOTNkYzk4NWVmYmMyODdjOWI1NyBsZWdhY3ktdHJ1bmsKKzU5OTA1IDNjZDliODc3ZWFlMDlhMzViOWNjZDc5NWRlNzVkODM5NzI5YTQ4N2YgbGVnYWN5LXRydW5rCis1OTkwNiA3ODUyMzdmYTVmNDAxNDQ0YzMxZDYxN2RkYzA2ZTAxMGEzOWU4ZmE2IGxlZ2FjeS10cnVuaworNTk5MDcgNmIwYjVlZGZiMWI3ODVjMTY5MWM3Y2Y2OWQ1OTgyNzExYzQ5OWRlYyBsZWdhY3ktdHJ1bmsKKzU5OTA4IDA2ZjlmNTFhYjhjMDNkZGNiYjFkMjlhNjkzZDI2MGM4MTQzNmEyMDQgcHkzaworNTk5MDkgYmUwNGVlNGM0ZmQ3MzQ1ODY5Yzk4MDNkNWQxMGI4MWRmYTE5MmJhMiBsZWdhY3ktdHJ1bmsKKzU5OTEwIDJhZDNlMzVjNTgyNWMzN2YyOGI3ODgyYmFiZGEzMzM3NTM1YzgxNzEgbGVnYWN5LXRydW5rCis1OTkxMSBhZjNhMGNhMWFiNGEwMmJlMmE1OTMxODZhNDMwNDYzZGNiZjM3YjkxIGxlZ2FjeS10cnVuaworNTk5MTIgNjJmNmQ3ODBhMTFkZTAzNzM0NjM3NWFmOGY1ZmNiOTY2MmQ4YmFjZSBsZWdhY3ktdHJ1bmsKKzU5OTEzIDNjYzNhNTVkMTIzMzQ1MTNmYTczNmE1MDQ1NzNlN2I2MjE4YWVkYWEgbGVnYWN5LXRydW5rCis1OTkxNCA5NDI2MWYzMDI3YTU5M2RlZjQ0YTM1ODZkMTMwYjhkNjE0OGRiOWZlIHB5M2sKKzU5OTE5IDU5YTgyY2RmYTEzN2U4OGI4Y2MzNmQ2NTUwMzVjYTdmNGU5YjcwOTMgbGVnYWN5LXRydW5rCis1OTkyMCBhYWRjZGE3YTRiZjdhZjRlZTNhMDliNTAxMmU0ZjRhMmQ1NTY4OTYxIGxlZ2FjeS10cnVuaworNTk5MjEgZDhlNDM0MmMxNDVlNmI1YTg4YTE0OTFjNTRmMWYxZjE5ZGM2OTUyYSBweTNrCis1OTkyMiBlN2I4MjEwMWI5NzBmOGVjNWIxMGU1NWU5ZDlkOTE4MmQ0MmUzMjliIHB5M2staW1wb3J0aG9vaworNTk5MjMgNzk1NzlmYThkNzUyZjJiZmE5NDQzNDg0ZjRhNjc2MDFiNzdlYTY1MCBsZWdhY3ktdHJ1bmsKKzU5OTI0IGYwYjkzM2YxMjk4MjY3ZDhlNmNhMzU1MTM2MjgxNzljNzBiZWI0ZTcgbGVnYWN5LXRydW5rCis1OTkyNSBhMjIwMjExZjgzMzEzMTYwMjkxYmRmNWZhNzY2NTZlMjMwZjM5MDUyIGxlZ2FjeS10cnVuaworNTk5MjYgZDU4MjRmZGQ5YTE1ZjBmZDc2NjljYzc4Y2IxYzJjZDExOWE1YmU1YSByZWxlYXNlMjUtbWFpbnQKKzU5OTI3IDc3NmI0ZTA1OWY4MzZhMWZjMTI0MWNhZDczYmRkZTZiMWI4MzZmYzUgbGVnYWN5LXRydW5rCis1OTkyOCAzYWYzZmQzODg3ZWUyM2U0OTVjMjIyNTQwZmIxMTBlY2JkOGFiY2I5IGxlZ2FjeS10cnVuaworNTk5MjkgN2I3OTg1NDhhNGFkZTRkMDI2ZjVlOWQ4ZDljOGIyNjAzYmMyMzlmNiBsZWdhY3ktdHJ1bmsKKzU5OTMwIDdkYmMzZjQyNzhlYmQzNGZiNzFmMDQ4MGUyNjdjOWE4ZjA4N2RjODUgbGVnYWN5LXRydW5rCis1OTkzMSAyNzNkMzdiZjIzZDNiZTJkMzJhYzI4OGNhOThiMmVjZDBiNjkzMjYxIGxlZ2FjeS10cnVuaworNTk5MzIgYTU0Y2M0NzcyZTczNzM4MzViOTZjZTY4NmMyODlmY2FiNDAyZDhhMCBsZWdhY3ktdHJ1bmsKKzU5OTMzIDVhNzFkY2M3MWVmZjc2Mzk0ZDM1OTk5Mjc3MmEwZDlhMGQ5MmE3OTQgcHkzaworNTk5MzQgNTM1MTEwNWZmODA4YTMxNzBhNjNjNmVmN2U3YzhkODA5NWFiYmNlMyBweTNrCis1OTkzNSA0Y2E4YWNjOWJlZDcxNTQ4OTI3ZWE4Mjc1ZmU5Y2EwMGI0ZWRlYTU4IGxlZ2FjeS10cnVuaworNTk5MzYgM2Y2NWJjYzg5NjZmMjlkODkwOGUwZWNhZTE1NmVlOWRjMjU4OGIyMSBsZWdhY3ktdHJ1bmsKKzU5OTM3IGI2NzJjMDE1YzJkYjg0ZmY0Njc5NjMxMzY3MDUyOGQzMDdkMDRlNjggbGVnYWN5LXRydW5rCis1OTkzOCA5NDY4ZTYwNjM2MTczNGUxNWNjZmEwYWMwY2U5NThlNGI5YjkzNTRhIGxlZ2FjeS10cnVuaworNTk5MzkgYzczNzY4ZDk3N2E5ZjkyYmI5Y2RiOTA0NzhkNTcxY2FkMTk5MGQyYiBsZWdhY3ktdHJ1bmsKKzU5OTQwIDg5NGQyYWQ0NTAyNjllN2UwNWQ4OTk4N2YzZGQ2N2UxODA4ZGEwOTcgbGVnYWN5LXRydW5rCis1OTk0MSBmMmQ4MjBiNWFlMmFlNjQzNzA2MGJmMzg0MDkyNjAxYTk1OTRmY2YxIHB5M2staW1wb3J0aG9vaworNTk5NDIgYzI1NzYwYzIxMzk3YTFlNDIzOTBlMzM2NGFlZWM5Y2FhYjVhNTVlZSBweTNrCis1OTk0MyA0MjkzYTA2YWZkNzI3Zjc1MzYwMTVmN2RmM2QyYTFjMjcyZWM5YjkwIGxlZ2FjeS10cnVuaworNTk5NDQgMzg3ZDQ4YzNhMGIzZTdjMjc0MTg3MWIxOWExMWI3YjI3YzZmYThhMyBsZWdhY3ktdHJ1bmsKKzU5OTQ1IDkxOTI4ZDk5ZWJiMDkyNzA3YjQ2MmQ2Y2U4YTU0OWFmODFiNjUzYTEgcHkzaworNTk5NDYgNDI2ZmVmOGJhZGUyZGQ3YTg2YzhhNjhkMDBiNDA5NTE2NjhhYzdiOCBsZWdhY3ktdHJ1bmsKKzU5OTQ3IGI0MDk5NDFjN2E1MWUxMDA5ZGIxNDE4YzEwMjMzNTgyNzNkM2RiY2UgbGVnYWN5LXRydW5rCis1OTk0OCA3ZTQxZTFjNDZiNTdiMGVhNmEyOGVmMmFjOTZlY2MwOWFlMGMwNzI1IGxlZ2FjeS10cnVuaworNTk5NDkgOWI2ZDM0OGNlYzg3ZTRiYTRjMzBlM2E3ZDhmZDczZDQxNjIyOGMzYyBsZWdhY3ktdHJ1bmsKKzU5OTUwIGQ2NmU1ODM3YWE1N2MzMjJlMWRmZTYwMTMwNWMxZjVlOTQ2ZTZhNGQgbGVnYWN5LXRydW5rCis1OTk1MSAzM2Y2NzA5MDc1ZTgzYzhhN2U1YzJlNjNhMGYwMTJiMjhiZDRmZmU4IGxlZ2FjeS10cnVuaworNTk5NTIgMzIyYzIzOGE2NGU1MjczODVhMzU5NjdmNWZjZGM3ZTk4ODNiMmQzNyBsZWdhY3ktdHJ1bmsKKzU5OTUzIDYyZWFjZTY3ODBmNjU4Y2RlNTFhNjVhMWU1YTBjZTliNThkMmNkNzcgbGVnYWN5LXRydW5rCis1OTk1NCAxMTU0MTU4YTE5OWY3Nzk0ZjI1ODU1ZDllZjcyMWM0NzcxYzY1YmU1IHB5M2sKKzU5OTU4IDYyN2YyZTIyNzNiOTRmZTk4YmI5MWQ3M2UxOTlhNzRkZDkzMGExNjcgcHkzaworNTk5NTkgMDA1MDIxYmY1YWNlYzczYzMyM2VkYzQ3ZGE4OTllMzY2MzFiZTA2NSBsZWdhY3ktdHJ1bmsKKzU5OTYwIDgyN2YwNDUxNzM0ZmQ5NjY0NzdhZjNiYmNkNWVlZjU1YTdhNzc1NGUgcmVsZWFzZTI1LW1haW50Cis1OTk2MSA1ZGZkZWQ5YWQ4YTBjYzZkZmViYTc2ODUzY2E5ZTNjZDlkNzc0ODFlIGxlZ2FjeS10cnVuaworNTk5NjIgNmFmMTk0YzQ5NGNjMmZkZjNmNzIzNDJjMDQ5ZTVkYzU3NzlhYWNmOSBsZWdhY3ktdHJ1bmsKKzU5OTYzIDc3NGE5NTk3MjI4ZTBhZGI3ZjhlMWI5YTViNjkzYjdkNjQ5ZTY1YTUgbGVnYWN5LXRydW5rCis1OTk2NCBjYWI4NDEyOWRjY2I1NDU2NDA2M2YxNjM5NjE4NTY1ZmYzODdlOGMwIGxlZ2FjeS10cnVuaworNTk5NjUgZjAzNGViNWQ4Y2RmNDlhYzUxMTM5M2ZjOWY5NmM2ZDZhNGM3YmM0NiBweTNrCis1OTk2NiAzNTdiMzY1NTYwZjRiNzkyMzhlOTBmODQ5M2U0NGViYzlkNzlmZWM2IHB5M2sKKzU5OTY3IGEwMGQ5MDAwNGEyNTE5NmFkYTZjZmNhMjA3NzYxMmU3ZGQ4NGNmYzMgbGVnYWN5LXRydW5rCis1OTk2OCBlNTExY2NmMmZmYmU2N2ExMmUyMTQyMzkwYTY4MzZjZDU3NmIyZTA1IGxlZ2FjeS10cnVuaworNTk5NjkgZDAyMDhkNjVkYzIyYzUwMTA4YTY3MzllOGEzNWE5NzkzOTllYWU1YiBsZWdhY3ktdHJ1bmsKKzU5OTcwIDg2ODlmNDZkMjVkNmFmNTVjOGNiZTRkNWYxNzVkZjhjMTVmZjc5YzQgbGVnYWN5LXRydW5rCis1OTk3MSAxNDg1NGM3YzZhMjQ4NzBhZGI1ODhkMmE2MTVhNzU1NzJiM2ZmYTY5IGxlZ2FjeS10cnVuaworNTk5NzIgNWM3YjdmYmVhNjgxYjE1ZDg0ZTQzMTI5OTgwZjgzY2ViNTk5ODg0ZSBsZWdhY3ktdHJ1bmsKKzU5OTczIDBiYjZjZjc3Yzg1YWY4NTM0ZDBmZWVlY2JhNDQ0YWVhZjE5MWEzMTggbGVnYWN5LXRydW5rCis1OTk3NCA0NmU3MzFiYjZhODVmMWNlZGM3NjQ4NzRjOWZhYjEyZDY0YmU1MmZhIGxlZ2FjeS10cnVuaworNTk5NzggNTlmMjliMDEzNmZiNWY2MTg0OTdmMDlmOGE0NTJhNTA2NGI0MGIzYSBsZWdhY3ktdHJ1bmsKKzU5OTc5IGJmYThkMjI1NzgyMzIyM2RiN2M0YTNkZGNlNjYxNDQ0NDFhZTFmNzggcHkzaworNTk5ODQgMjhjODFjMjczODllMjU0MzM5YTkwYzMxMGFiNTc3NDdhZTMyMzIzMSBsZWdhY3ktdHJ1bmsKKzU5OTg2IDZlNTY3NWNhMjU1OWM2YTczN2VmMWI0NmI4MTE0OWY3NzFhN2Q0N2EgcHkzaworNTk5ODcgYzc5MDU4N2YyOTkyNWMxNTE0NTEwNDBkMzk0MzcyYWU2ODdkNjY5YSBsZWdhY3ktdHJ1bmsKKzU5OTg4IGNiOTA0MDRhNDZhZDE4YTEyMmJmMTgyYWQyNDE3ZTljZjRmYTVhNTAgbGVnYWN5LXRydW5rCis1OTk4OSBmMzAyY2Y5OTk2MzNlYjdjNmQyYjBlMGYyNjg0ZjRkZWZiYzkwMGE1IGxlZ2FjeS10cnVuaworNTk5OTAgNmYwNDljYTU1ZTA2YjJjMTA4ZWMwZDhkMGU4NGJiMGI4MjNkYzM4NSBweTNrCis1OTk5MSA5OTJhNjExYjJlMzE0NjZjMTcwNGJhN2VlNmMxOTZiYjg0YjRmMDFjIHB5M2sKKzU5OTkyIDJmMTFmN2Q5YmRjODRlMGQ2YmJhMmVmZTNjZTVhNDlmYzBjZTlmYTUgbGVnYWN5LXRydW5rCis1OTk5MyA3MWM3OTllYjI0YjI0ODBhZGZiNzdmNDNkZDI3NWZmYTRlMjFhODgwIGxlZ2FjeS10cnVuaworNTk5OTQgN2YyZjIxYWEzNjkwNmE5ZGQxZTc4NTdjODllNzllOTQxYTgxOGJhOCBweTNrLWltcG9ydGhvb2sKKzU5OTk1IGIyM2I0NzdkNzg5OWE2NjhmNjg0MzQ5NGE2NzEzNTk0NTg5MjQzODMgcHkzay1pbXBvcnRob29rCis1OTk5OCBjNDM4M2Q3NjVjYTcxNzgzNzQ4NGEzYzJhYzVkMzcxYTgwMDY2NDk4IGxlZ2FjeS10cnVuaworNTk5OTkgYTRhMDI0MzJlNzMzM2U5OWVmMDllYzU3YjM5YTI5ZWFhMGU3NWI4YyBsZWdhY3ktdHJ1bmsKKzYwMDAwIDQxZjFiM2NiMGJiMTAzNTViMjQ5NWY5MTNlZWI0OTZmMzk3NDMxNGMgcmVsZWFzZTI1LW1haW50Cis2MDAwMSAyZjdmM2Y1ZTczZDNjNWVhYTE0MDJjOTFhZmUwZTRjZTE4YWIyNzI0IGxlZ2FjeS10cnVuaworNjAwMDIgM2Q3MDQyODkzY2M1MDQ2Y2VkN2ExOTZkNThiNmQyMGExZjU5ZTllNyByZWxlYXNlMjUtbWFpbnQKKzYwMDAzIGNhZjU4YzgzMTQ5OWNjN2Q1OTQ1MzU5MTg5NmQwMzEwZWQ5NWZkMjcgbGVnYWN5LXRydW5rCis2MDAwNCBhMmYzZDQ5OWNlMTJlZjRjZTIxYjU2YmNiMWUwOWJhM2M1NjIyNjllIGxlZ2FjeS10cnVuaworNjAwMDYgMjdkNTk2NzViOTJjNmY3YTBkMDA1ZWJhODljYWE4NWQ1ZGUwNGJiMCBsZWdhY3ktdHJ1bmsKKzYwMDA3IGYxMjhlNmViZjkwZjgxZDBmZDJhMzA1OGJjN2ZhM2NhYjY2YjMwZjMgbGVnYWN5LXRydW5rCis2MDAwOCAyYzliYzYxZDRmNzNmMzc2ZTM1ODk1ZmZkZDcwZmQ5MTFiMzEwNjMwIGxlZ2FjeS10cnVuaworNjAwMDkgYzc4NGYyMGM5NjdlODQ0YmVkYmIyZmQzNzQxZDI5YmNjYWU5MmE4ZCBsZWdhY3ktdHJ1bmsKKzYwMDEwIGFhNWNmNjM5NDY0MWRjMWQzYTJiZjBkNjM3NGRiNmFjNGVlODA1YmMgbGVnYWN5LXRydW5rCis2MDAxMSA5OTAwMGVhMjFmZjI3OGFiYjg5NDlkYWVjNzBhNzE1NzRlY2RkZDczIGxlZ2FjeS10cnVuaworNjAwMTIgYjQ2OWU5MDI3M2ViMDcyZGY3ZjA0ZGVlZTMyYzQ3OTE1OTI5ZDNiNSBweTNrCis2MDAxMyBkMGY3OTYzY2Y4YjAzMzQ4Y2JjYzQ1MzA4NjcyMDU4NjU0MDNhMDg0IGxlZ2FjeS10cnVuaworNjAwMTQgMjZiNjFhNWRmMTFiNjEyZDMxMTE2NjI3NGE3MmFlNjI0OWQzMTU5ZiBweTNrCis2MDAxNSBjYjBkY2Q2ZTNiMTE0N2YzYWNhM2IyZTI3MDVmNmIxYjkwYTg4NDY2IGxlZ2FjeS10cnVuaworNjAwMTYgM2IzODU2YjM2MjFiMjA4OTVkYWU0ZjM0YTMyMTJkNTg4MTVkODRhYyBweTNrLWltcG9ydGhvb2sKKzYwMDE3IGRmNzFmY2RkYjc1ZWFiMTdhMDVmZTI2MWU0MDIzMzAyYTJlZDY4OWQgcmVsZWFzZTI1LW1haW50Cis2MDAxOCBhMzgwMjg1M2MzMTc2MjY2Y2Y3YjI2MGQwMGQyZTQ5MDljMTgyZDg1IGxlZ2FjeS10cnVuaworNjAwMTkgMTcwY2IyNzM5YTM5MGUyNzgzMjI5NDQ2MjVlZjFiOTViOGNlYzIyZSBsZWdhY3ktdHJ1bmsKKzYwMDIwIDA3NjZlZmQyYTZkNjNlNjNhM2IzZGRiNTMzZGRmMmNhYWU4N2E2MDAgbGVnYWN5LXRydW5rCis2MDAyMSBkODE2YmMwYzQwYjY3NTk2ZTI1MzVlMDQ3NDU2YWI1YTE2YjdjNzc2IGxlZ2FjeS10cnVuaworNjAwMjIgNzE3MjY1ZWQyMDQxYjMxOTdjMjVlNjFjZjViMmUxNjIxODgyNWU4YyBsZWdhY3ktdHJ1bmsKKzYwMDIzIDNiNGJjNGM3MDRjMTRmNjkwYmY0MmEwYWRkZjY1ZGZiODVjZTc0NmYgcHkzaworNjAwMjQgMjIyYjkxOGNlMDkyNGNlZDZlZTdkYjE5Y2QzYTRiZTVmMGFjMmU2NiBsZWdhY3ktdHJ1bmsKKzYwMDI1IDI5ZTRjODZkNTA3MWE2YzhlNWJhMjgxMjAxZTE4MWIyMjM1OTA3YzkgbGVnYWN5LXRydW5rCis2MDAyNiAwNzZjOGFiYmQ1NGY3ODk5ZDgyMDQ1OTU1NjUyYTBjOTE2YWJlZGVhIGxlZ2FjeS10cnVuaworNjAwMjggOGI0OTU0MDNiYTIzNWJkYThlM2U4M2JiMGFhNzA3M2NhNDg0N2VkMiBsZWdhY3ktdHJ1bmsKKzYwMDI5IDQyOGRkODUxYmI4YWU4MGZkM2IxM2IyMjc4MzhiNGQzZmMyNTdkZDEgbGVnYWN5LXRydW5rCis2MDAzMCBiYjMzYjMyZGUzYTBiOTM3MjE1NDI5M2RiYjE5NmMyYTRlMDdiNTRkIGxlZ2FjeS10cnVuaworNjAwMzEgODVjZjIyMGYxNmQ4NWVlNDA0NjY4MTk3NDYzMjJiOGVkMzU5YmU4MyBsZWdhY3ktdHJ1bmsKKzYwMDMzIGEwZGQwOTJiYjZjMzZlN2M2ZDNiNThiNDY5Nzk5MzU0NDc0MDQ1OTkgbGVnYWN5LXRydW5rCis2MDAzNCA0ZDYxYzg4NzYyNGQzNWJiNmNjNjMwMjFiNzZiMjk3NWU5M2JmNjI4IGxlZ2FjeS10cnVuaworNjAwMzUgMjZhODZjMjlhZDYwMGE2ODhlNGE0OTRjOWE0YWVlZDQ4Mjg2YjRlMyBsZWdhY3ktdHJ1bmsKKzYwMDM2IDg0MGU4N2UxODMwNjk0MGI4MGM3MDViMzkyYzM0ZDg2M2VmNTVlNGYgbGVnYWN5LXRydW5rCis2MDAzOCBiNDAwM2I2YzZkMTM3ZWY5NTRjNDczMzZkY2NjNWY5NmUzZjUzYTcyIGxlZ2FjeS10cnVuaworNjAwNDEgYTNiZjBlMjRiOTFlNjk0ZWY5NGM0ODU2N2YwOTFmYjM5MDZiZGU0NyBsZWdhY3ktdHJ1bmsKKzYwMDQyIDc5YmFiYjRjY2VjODUyZmZmZDkzYjk2MTMxNzg2ZTdkMzQxMGVjOWMgbGVnYWN5LXRydW5rCis2MDA0MyBiYmY0ODQ1ODEwNDM3ZDY2YjYxNjg3ZmU3M2I3ODc1NGM4OWIwMmI1IGxlZ2FjeS10cnVuaworNjAwNDQgMTRkNDEwNDk3NmZjYzdkNDFjODc5N2IwMTA2YTcwNDVmZDY4ODhhNiBweTNrCis2MDA0OCAyOTQ2MDIwNTYwZTczZjk1OTNjNDAxMGY0ZmQ5NzYzNjEyODgxZWI0IGxlZ2FjeS10cnVuaworNjAwNDkgZDk4MzNkMmJmNDY5NWZmYzY1YTc4MmE5Yzg5ZTJjNzM2MmEyN2ZmNiBsZWdhY3ktdHJ1bmsKKzYwMDUwIGRiZjA4NTY3NzZkZDdjM2MyYmY5ZjZlZDdlNGYyNTRkZTY3MTU3ZDAgbGVnYWN5LXRydW5rCis2MDA1MSA5N2E3YzEyNmQwNGViZjY2NTUxMmE1MDBhM2JlNThkODY1YmE2ODNhIGxlZ2FjeS10cnVuaworNjAwNTIgOGRhOWViZjczMDI2NDdlY2FiNTM5NDkxNDU3MjNjN2Y0YzM2Mjk5OCBsZWdhY3ktdHJ1bmsKKzYwMDUzIDRhNjc2NzNlMzQ4MWRjMTA0ZTVlNjg3ZTViZjNiMzdjYmNmMDA3NjIgcHkzaworNjAwNTQgNTVkZGIxNjZmMWQxYWEzMmI0MTQwZWZmNjE4MGMwZWNiMDFkYjRkOSBsZWdhY3ktdHJ1bmsKKzYwMDU1IDNmNDBhZDNjMTNkZDdlYzJiNGNlYjI0NzkxNGY0OTYxMmViZDlhM2YgcHkzay1jdHlwZXMtcGVwMzExOAorNjAwNTYgNzY1ZTU3YzAwMWIxYTExZWJiZmUzMGU3NjM4MzcyZWE5ZTkwODM5MyByZWxlYXNlMjUtbWFpbnQKKzYwMDU3IDU4MzAzZWQ3MmJhMWE3YmYxMjVlZjY2MDk2NDI4ZDQzNzBjOGQ2ZjMgbGVnYWN5LXRydW5rCis2MDA1OCAxM2Y3NGM4NTQ0Y2M4YTkyMWRlNmI0ZmM2MzE2NDA0YWIzYzk5MDJkIGxlZ2FjeS10cnVuaworNjAwNTkgZWI4ZWY5NjllZDY4YTVmNzg2ZmE0MjlhZTM0MDcwZmQzYWNhMzJiNiBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDA2MCBkN2E4N2M3ZjE0ZDllZTk3NmY0NTZlN2Y5OWVlMTI1ZmM3MzUxN2E3IHJlbGVhc2UyNS1tYWludAorNjAwNjMgYTUwNzJiYTM1ZjBhMGYzYWQxNTY5NDUxMDhmNDY3MmNmOGJmY2U3YiBsZWdhY3ktdHJ1bmsKKzYwMDY0IDIxNzk4MzNjOWM5YTU5MDhmMzljMTA2MjFkZDdkZDI0MzEzZTQ3NTEgcmVsZWFzZTI1LW1haW50Cis2MDA2NyAwYjdiNjJkZDRkY2JkMjgzZjc2ZjExMjM1YTIwMWQwMmYxNTg5NTU1IHB5M2sKKzYwMDY4IGM0NzA5YjgxYWJkZWI2YzdjMTZjY2I2MGFhYTE5N2VjNzk1ZWQ0NDQgbGVnYWN5LXRydW5rCis2MDA2OSBmZWJkZTNjYWYyOTEyNmM1M2IyY2NmNTA0NzczMTRhZjljM2NhZjJhIGxlZ2FjeS10cnVuaworNjAwNzAgZjI3OTdlMDcwOWUzOGNlMTRkZjNjYjQ0NTRkOTkzZWZmMzk3MjQ2NSBsZWdhY3ktdHJ1bmsKKzYwMDcxIDNkNzJmNTIwOWU2N2Q1NDk4MjUzYTE4NjU0ZTJjODc2YjcwOTk2MDcgbGVnYWN5LXRydW5rCis2MDA3MiBmOTc3NTQzODM2OWFiNjExNjFiYWE0NTUwYmYzZjY2ZWY5ZGY2NTU2IHB5M2stY3R5cGVzLXBlcDMxMTgKKzYwMDczIGNlMzI2YWZkZjA5ODlmY2I2MGQ3ZDE4ZDg5NWE1YTliMzY2NWE5ZjAgbGVnYWN5LXRydW5rCis2MDA3NCBjYzBhMjk2MTE5NWVmMzgxYWNhZGI1MjU1YWY4MTE0YWEyOTE5ZWY5IGxlZ2FjeS10cnVuaworNjAwNzUgNzNiNWU5MzllMDU4MGRkYmU4MTA1MDFiODkyYTBiYzljNWNkMjVmOCBsZWdhY3ktdHJ1bmsKKzYwMDc2IDUyZTgyMTQxOGE3OTliNTI0YWQ4MzU4MTE1OTlhNjU3YjQ0MGJiMDMgbGVnYWN5LXRydW5rCis2MDA3NyA4ZWRiZTAyNWFlZDU3MTI4ZjEzODc1YmU1NTQ1OGNjMTU3OWNjNzg3IGxlZ2FjeS10cnVuaworNjAwNzggYzdjYjU4MDA2MDZlMmY2ZGUwM2JiOTJiZGVkN2FlYmExMTJkMDQ4OCBsZWdhY3ktdHJ1bmsKKzYwMDc5IGE2ZjlhMmJhODk2MmE0NjI5NDNiNmEzNDM1ZDQ0NjExZWYxNWI3NDMgcHkzaworNjAwODAgY2RlNDFiZDA4ZTVlMjRjZDkzOGQ2MjI3NTU4ZDA0N2Y1YTBjYjk5ZSBsZWdhY3ktdHJ1bmsKKzYwMDgxIGUzZmRiYzgwOTk5OTgwODhiZDA3YWJlNGQwMmIxMmM0NzY0NGZjNGYgbGVnYWN5LXRydW5rCis2MDA4MiA4NTliZjg1YTU1NmE5OGI4MjBiMDAxNjgyZDM4YWZlMDQ5NTBjMWEwIGxlZ2FjeS10cnVuaworNjAwODMgMGZlOTM2Yjc3MTE0MjM1MTRhY2UwNzhjNWU1YmZiNDQ2N2IwN2VjYSBsZWdhY3ktdHJ1bmsKKzYwMDg0IGFmYTBlZjM3OTE4NjVkMThjZWI3MTM4ZDYzNTE4MWYxYmNlMzJkYmMgbGVnYWN5LXRydW5rCis2MDA4NSBhMjY1YmFhNzkxMDAzNDNiYTE1Yjg1ZDA1ODc1NDNlMzNkZjJjMzY2IGxlZ2FjeS10cnVuaworNjAwODYgODAzNjY2MjFjNTAyMjk4MWI3MjNhODY4YmEyNGE1ZTMzMjYwMjI1ZiBsZWdhY3ktdHJ1bmsKKzYwMDg3IDljMGE5MTNhZGNkNGI4YTk2ZTZiOWY5MWNlOTI1NDIxYTVlODIyZWYgbGVnYWN5LXRydW5rCis2MDA4OCBlNGU2ZmM5Yzk3NzVkODIwMjQzODI5YjE5NDYzNzFlMWZiZjE1ZjhiIGxlZ2FjeS10cnVuaworNjAwODkgOGI1NTMyMTE2MTE1MmJiMGZjMmZiMDI4NGZhMjM3YjlkYjU4M2FhZSBsZWdhY3ktdHJ1bmsKKzYwMDkwIDM2MjVlZWQ0ZjBjZDliZThjODNiNTY4ZmY0N2UzYTFhMWRmYTQwNTggcHkzaworNjAwOTEgODc3YjQ2NzliOWZlNjliNDA1YmU1ODNlZDA4ZjY2MTJkYzQ2MThhYSBsZWdhY3ktdHJ1bmsKKzYwMDkyIDYxYTExY2M5NTYzMmU4NDE1MDVmMmZhZTEzMzVjNmNmODA4YjE5NDYgbGVnYWN5LXRydW5rCis2MDA5MyAxNzAwOWQ2MjExYjgzNmE2NjAxNDZkZjM3MGIzN2ViZmY1MmNkZmQ4IGxlZ2FjeS10cnVuaworNjAwOTQgY2EyNjgzYTY3OTQzMTNhM2ZlYzE3NWQ3NDA1ODdjNTM3MzllMjM4YyBweTNrCis2MDA5NSA0YTdhZmZmNTJlYTcxZjQ4N2EyMWVkMTk2ODViYWFhOTdjYmNkMWVlIGxlZ2FjeS10cnVuaworNjAwOTYgYjMxMDIwMDZkZDdlYzlmY2VjZTM4MjI4ZWYxMjdkN2MxMGRhYTczOSByZWxlYXNlMjUtbWFpbnQKKzYwMDk3IGI1MjBkMzNiZWUwNjE1NGY5N2M1YWVlZjJlMDc3OTZhNzVkZDk4ZTYgbGVnYWN5LXRydW5rCis2MDA5OCA0YWM0ODQyNDliZDFlMWZkYzYyMTFiNjE2YjFjNmNmOTFhZjBhYWY1IHJlbGVhc2UyNS1tYWludAorNjAwOTkgNGYzNTExOGVlZDNiOGYyMTYyNWM3ZmI1MDNkNmNjNWU3NjQ1MmM3NyBsZWdhY3ktdHJ1bmsKKzYwMTAwIDg4ZjhmMTUyYTBiMzMyYzJkMGI5MTQ3ZDAyMTkxYmFmOGE1YTQ1NTQgcHkzaworNjAxMDEgM2M5Y2NjMzJkYTlhZmU2NDQ5NzBhNzdmZmI0OGEzYmRiZTExYmZkMyBsZWdhY3ktdHJ1bmsKKzYwMTAyIDIxMDMyM2UyYTkyNzI2ZDRiY2JlNTNiYzZmYmUxOTcyZDdiMTRkNDQgbGVnYWN5LXRydW5rCis2MDEwMyAxNTUzNjg2NTE5OGFiMjE5NjUwYzUwYjk4N2RmNzg2MWQyNzcwOWI2IGxlZ2FjeS10cnVuaworNjAxMDQgYjRkMDNhOTJiZGRmOWNiY2I3Y2MwNWNkNzI3NjE4NDM0MGNmMTY1YiBsZWdhY3ktdHJ1bmsKKzYwMTA1IDNkMTMxYzgzOGYwOWI4YTMwMTFlNDMwOGRjOTNiZTJiNGNiYjFkNzcgbGVnYWN5LXRydW5rCis2MDEwNiBkOGMxM2VjYjZlODU5ZmVlNmRjMTlkZjhmZDRjYmYzMWUwYWRhZDkxIGxlZ2FjeS10cnVuaworNjAxMDcgYmRhNDllYjQ2MDc0OWY4NDMwNzk1ZjI0ZWYyZmQ2YzNhZjM4NmU0NyByZWxlYXNlMjUtbWFpbnQKKzYwMTA4IDE3Zjg0NTMzMjc3ODQxNTQ1YWZjMTc0OWJmODlhMTNlZTIzNjkxMzUgcHkzay1jdHlwZXMtcGVwMzExOAorNjAxMDkgMTNkYzY1ZmU4NTk5ZjA4YThkNGFlNWRmNDU2MDBlY2U3ZjA3MjM2YiBsZWdhY3ktdHJ1bmsKKzYwMTEwIGVjMDJkYmU2YjA1MTAxYjYxM2FhZTUzNmUxMTA0NTZiMTE5YTU0NGUgbGVnYWN5LXRydW5rCis2MDExMSA1ZTY2MDMwZjFhNjdhNDY5NTQ4NDc1YmI4ZjBhMDhmODgwNjIxNDJjIGxlZ2FjeS10cnVuaworNjAxMTIgYWMyZWE5NTUyMjkzMGIyYzIxYzZkYmRlZTg2ZTc3NzE0MTcyY2VmMyBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDExMyAwYWNlNzQ3Njc0NzhjZjY3ZTZiMDc0MmVkMWY5MDRhMGNjNTMzNzljIHJlbGVhc2UyNS1tYWludAorNjAxMTQgNDc5NjU4OGQ5ZjlhY2I3NTEzNzUyNjc3MzM2YzNjZjZiYTI3ZWM4YiByZWxlYXNlMjQtbWFpbnQKKzYwMTE1IGMyMzg5MmY1YTY5ZjE2ZjgxYjExZGY3YzgwYjAwYzZkNmY5OTU2MzYgbGVnYWN5LXRydW5rCis2MDExNiAxMTQ4M2E2NzNhNDVlZWQ0Y2I0NDI1NTI1ZDBkY2NjZGQ5ZjczZjFmIGxlZ2FjeS10cnVuaworNjAxMTcgNjhmNWNjOTViNzBhNWU2ZjljMDQ5YzlhODE2YTRjM2QxOWRmNmE0YyByZWxlYXNlMjUtbWFpbnQKKzYwMTE4IDc2NDcxNTJmNzQyNDViN2VlNTI5OWIxZDg4ODZjZWU3OWEyNDQ1MjcgcmVsZWFzZTI1LW1haW50Cis2MDExOSAxZTU2MTQ1NjdhNmVkOTY5Y2Y5NDI3NzQ1YmVkYjg3YjAyYzk5NzNkIGxlZ2FjeS10cnVuaworNjAxMjAgODE2YTdiZGJmNjllOGZjMThjODlmOGY5N2UwZTZiMWI0ODQ2Y2Y0YyBsZWdhY3ktdHJ1bmsKKzYwMTIxIDExMjBiM2Q2MDZmMjhjMWM1YWQ5MDUyZDQ2NDg0YTUzODc5NTQ2MzAgbGVnYWN5LXRydW5rCis2MDEyMiA2ZDQzZmNjZGE5MGMzYTE0MmNiNGUwMjFlZTNjMDFjZGFiMDBlZDY2IGxlZ2FjeS10cnVuaworNjAxMjMgM2UwZjRhNGI5ZjU1YWU2MTIyNGE3ZTIyNWJiNTVlNjk4MWVlOGQ3NiBsZWdhY3ktdHJ1bmsKKzYwMTI0IGZhNmNlZTE0ZGNiYTQ4ZDBhYmQ1ZDAxYjRkOTA3OTE4OTdiODAwYzAgcHkzaworNjAxMjUgNTUzNDlkNGQ5ZjgzMzllNTBjNWVkNjg5Y2U4MzVmYmZkYmM4NDdkYSBweTNrCis2MDEyNiAxZThiOWU3YzM0Y2VjNTVkMDYxN2FkYjNkZjAxMjE0MGUzYWM4MjkyIHB5M2sKKzYwMTI4IDAyYTIxMjBlNWRiMjNiNWZiNGQ0ZDQ2ZjNmOTAxZjk1Zjg0MzY4ZjEgcHkzay1jdHlwZXMtcGVwMzExOAorNjAxMjkgOTQxY2YyYmYyMDBlNDM5MmEzZjhiZDg2ZjM2ZjY1MTk1YmE1ZTBlMCBweTNrCis2MDEzMCBiOTlmOTI5NWZkOWNmODg2ZGVlYmNkYzY0NmIyOTU0ODY2YTk3NWFhIHB5M2sKKzYwMTMxIDk0MmU0YjQyZGExNGQ1Njg1Y2UyYTY3ZGQ3M2IzZjVhMTdkMTkxYjUgbGVnYWN5LXRydW5rCis2MDEzMiAxNTBjYjQ4ZWRiMDdlMWJhODYxMGRmYzNjMTAwMjI3NjhjNmVlZDE2IHB5M2sKKzYwMTMzIDNmMzRkM2IwMzUwZDEzNWI5ZDYxZmNlZjUwNGM1NmEzNTBhZTlmYzkgbGVnYWN5LXRydW5rCis2MDEzNCBlMzY0NjllNmQ4YjY3ODA5YzczNGJhYmJmMTgxYTg5YzJhZWM3YmI1IGxlZ2FjeS10cnVuaworNjAxMzUgYWJjYjc5MjNkODk4ZmRhM2RlZDJiNWM2MTM0NTQzNzdjNzI2N2QxYyBsZWdhY3ktdHJ1bmsKKzYwMTM2IDE0NWIzZTYwNTM3ODQzNTI2NmU1NDNhMDA0MDhmOGMyNWQ5NmY1NjkgbGVnYWN5LXRydW5rCis2MDEzNyBiMjhmZGVmMmYwZDcxYjE4ZDY4NDQ3ZGZkYjI3YmE5OTI5YmQwODI4IGxlZ2FjeS10cnVuaworNjAxMzggNDI0Y2NjZmQyYmFhYTcyMThhOWNiNGRhZjM5YmQyMDhlNjU4YjNjNCBsZWdhY3ktdHJ1bmsKKzYwMTM5IGVhY2EyMzY3ZWNjOTkyNzhiMjA5NjY1YWI2MWFkZDA4OTQxYTI0NTMgbGVnYWN5LXRydW5rCis2MDE0MCA4NGYxYTY1OGIyMzE5MjM3MDVjZTkyODk5YjAwYzUwN2E2Mjc1YmE2IGxlZ2FjeS10cnVuaworNjAxNDEgZWY4NTljZDc1NGE3NmZhNzdlMDg0YTg1OGUzNGMyZThmNTJhMDYzYiBsZWdhY3ktdHJ1bmsKKzYwMTQyIGVhMzg5YTI2OGI1NDQ5ODA3MjdjZTM4NTk3ZDM0ZmE5OGY4Yjk5YjQgbGVnYWN5LXRydW5rCis2MDE0MyBlYWIwMGRiODBjMjc5NTlmMDIyZjRhZDljNmQwZjM4NGNkZDczYjE0IGxlZ2FjeS10cnVuaworNjAxNDQgZWY3ZDcyZDk4NDg1YmY0MTRhODYyMTY3YjBlZjI3NThiZjllMTMyYyBweTNrCis2MDE0NSBhYzk3MGY4ODMxODc1NmNlMmFkYmQ2YmQ2YmEzYzkwYjZhNmI2NDZhIGxlZ2FjeS10cnVuaworNjAxNDYgMGYwNzJlZGIzMzQzNzMyNjE3OTQ1Yzc1YmQwM2U5NWU5NmY5ZWU2MSBsZWdhY3ktdHJ1bmsKKzYwMTQ3IGMzYmY4ZjliZWFhNzI3MTI5ZTRlMDdlNzYzYzE2NzllNWI0OWNlZDEgbGVnYWN5LXRydW5rCis2MDE0OCBlYjJlYWZkYTI5Yjc2ZGQ5YjFiMmVkYjYyNzc0ZmY1OTRlODFhZmMzIGxlZ2FjeS10cnVuaworNjAxNDkgODliMTNiNjkzODY0NTQwNjVmMDViNjZlNjVhODk0NjY4MTAzMTA1ZiBsZWdhY3ktdHJ1bmsKKzYwMTUwIGVkMzNkYTJlNzRlNzBlM2UxNGZhOTlmY2Y4ODAyOTc0ZTJkNjM1NDEgcHkzaworNjAxNTEgOTQxMWIxYjkxMjE4MTJiN2JlZjZlNzg4M2I5MzViNDRlZTEyMjk1MCBsZWdhY3ktdHJ1bmsKKzYwMTUyIGZhYmM2ODhhMDhjNjhmZmJiNWQxNmE1MzQ0ZmQwOTZlYjYzMDFmZDcgbGVnYWN5LXRydW5rCis2MDE1MyBhZDZhOWRiMWZmNDVjNTQyNzkyYWEzYmQ5NTBiYzZlNWE4YjNhNDYzIGxlZ2FjeS10cnVuaworNjAxNTQgZjZkNGEyYzQ5NTMxNTBlOGM2M2MwZTgwMmViMjRiNDljZDdkZmRhNiBsZWdhY3ktdHJ1bmsKKzYwMTU1IDhmMTVmOGRlNDIxODVhYWM0YWExZGZhZWE5MmE0MGRmNWMxODRmZjMgbGVnYWN5LXRydW5rCis2MDE1NiA4YWJkMzZmM2FiN2EzYWRjODI5Zjk0NTcxODhkYjRlNzg1MjM5NjI3IGxlZ2FjeS10cnVuaworNjAxNTcgMGFlNTlmNjA4YjQ0ZjljMTFlOGMwMzYxMGVjZmViNjU2M2Q1MWVjOCBsZWdhY3ktdHJ1bmsKKzYwMTU4IDE5OTBmYTZiOWU4Mjg3ZDgxMmE3MGFkOGMxOWY2NTc0MDYxNDNjMWQgbGVnYWN5LXRydW5rCis2MDE1OSA3OWYxNTA1Mzc1MWVkODc2ZGMyNjRiNDhmODUzZGViOWE2MDYyYzYzIGxlZ2FjeS10cnVuaworNjAxNjAgZGZmZjA0MTc1M2FhMThlMDYwNTk0Njc4ZjA0NTgxMmE0ZjhjNjZlMSByZWxlYXNlMjUtbWFpbnQKKzYwMTYxIDI3ZGFjMTY1NDFkOTA5MDg2NDI0MmU0NWQwNTUxN2M2NmNlMWQwOWUgbGVnYWN5LXRydW5rCis2MDE2MiBkOTYyMTQwNTQwNmJkZWQ1NTk0ZmZiOTZhNzNiMmI0ZGYwZTM5ODZhIGxlZ2FjeS10cnVuaworNjAxNjMgYTZiMTkwYjBjZjA2OGU3ZDI0Y2M3M2RkYjE3Mzg1ZTk3YzliODBiMSBsZWdhY3ktdHJ1bmsKKzYwMTY0IDQzMmM0YWUwZmQwNDZmZTkzZjQ1M2ExMTE5OGFjMDMxYmU4OTNmZTggbGVnYWN5LXRydW5rCis2MDE2NSAzMjQxMmZjZWIxYjM0YWQ2MzQyYWY3MTE1ZGZlNTFiZjVmMGI0NmFmIGxlZ2FjeS10cnVuaworNjAxNjYgNzI5NDk1ZjdiMjIxYTQ1ZTA4ZWU4NmQxMTEyNjQ0ZTJiZWFmMjdkMyBsZWdhY3ktdHJ1bmsKKzYwMTY3IGM2OWE3YjU1YWQ2YmZmYTU5ZmRmMTcyZDZkNWY5YTg4ZWY3MDM5ZjUgbGVnYWN5LXRydW5rCis2MDE2OCA4YTliM2IwYmU1NzM5YWFlOTYyZDgyZDUwYzIwM2ZjZmNjYWMwMGZmIGxlZ2FjeS10cnVuaworNjAxNjkgMWJlNGJiZDgzNGExNGNkMmZhYjVhMDYwZGM2MzExYjQxMjMzZDA5MiByZWxlYXNlMjUtbWFpbnQKKzYwMTcwIDdjNTRmNGEyZDQzODRlY2RhMjI0ZmQxZTAzMTEwZTUyZGRjNmU3NjkgbGVnYWN5LXRydW5rCis2MDE3MSAwYjQxYTkxY2QyNjFhMzUyN2I4ZjhlMWY1NDEyZDVlYTA2NjUzYmNiIHJlbGVhc2UyNS1tYWludAorNjAxNzIgZGYyMmU2MTgwZTY3YWM5MzU4OGJmNjRhODE1YTU0MzdjM2Y2MjJjNSBsZWdhY3ktdHJ1bmsKKzYwMTczIDI5NjQzZmJlMTE1MDcwNmE0OTJhM2NhOWU4NmI1NzAwNTA4MTlkN2IgbGVnYWN5LXRydW5rCis2MDE3NSBiNzZjNzhjZGEzYWJmZTFkNzI3NWIwYmM3Y2E0ZTZlMjIyMjQxN2U3IGxlZ2FjeS10cnVuaworNjAxNzYgZmViYTVkNWNhYzIyMWYwYmQ5MTNmZDk2ZWQzMjg1MjU3OTY1YTIyNCBweTNrCis2MDE3OCBjM2Q5ZTU3ZTcxZjJjMjM0MDE5M2Q2MmQwYjVhNWEwNDg1ODNkY2NlIGxlZ2FjeS10cnVuaworNjAxNzkgNWJlYTQ1OTJjZDdhMWI3MGUwN2Q4OTVkOGQ4YzBhMjNmNjg0ZTQ1MSBsZWdhY3ktdHJ1bmsKKzYwMTgwIDEwMWQ4NmExYWY4NTg4ZmRiNGFhNDY4ODFmZDEzN2IyYzNlZDJhNjMgbGVnYWN5LXRydW5rCis2MDE4MSBlYjRiNTBmNzM5ZjZlMWE1ZDlhNGVkNDJhOGYwNjRhZjZhMzhiYWZiIGxlZ2FjeS10cnVuaworNjAxODIgMzEwN2ZkYjkwODFlNTg0ZWU2N2I1YTVhMWY4ZjlhZmQ5MzUzYzUwYyBsZWdhY3ktdHJ1bmsKKzYwMTgzIDgxMDNmMDE5ODk2N2M5NjUzNzY4MTNkYjEzODZhNmZjOGYxNmY1NGQgcmVsZWFzZTI1LW1haW50Cis2MDE4NiA3MTFhZTBlOTljMDI3ZDVlN2Y4NWQyZDlmMzhiNzFmNThlMzI4OGE3IHJlbGVhc2UyNS1tYWludAorNjAxODcgZWE2MWU5ZWRkOTc5OWI4YTU2M2RiOWRlYjk4OTZmYzg5ZGQ3ZWY1MyBsZWdhY3ktdHJ1bmsKKzYwMTg4IDdmMmI1MjVmOWRmNDhjN2U4MDc1M2U5MjIxMTgwODA5YjZiMWJiY2UgbGVnYWN5LXRydW5rCis2MDE4OSBiNWU4MDlmOTI2ZGUxODdlYzFmYTg0OTk5ZTUxY2Y2NDllOWY4YjQxIGxlZ2FjeS10cnVuaworNjAxOTAgZmU3ZDQyMzQ3NGRlYWQ5YjZkMzJmNzk1ZWE2OGY5YjVmY2VmYmE3MyBsZWdhY3ktdHJ1bmsKKzYwMTkxIGZmYWNiNDQ2NzNlYWI3NmQ5M2E5YjMyZThkNGFjMjg2NGVlYjIwMTYgcmVsZWFzZTI1LW1haW50Cis2MDE5MyAxMmI2OTEwMTE1ZTBmZjI4NzRlOWQ5MDBiNzQ3NjI1NmFmZmM0ZTNmIGxlZ2FjeS10cnVuaworNjAxOTQgOWQ4Yzg3Nzg4OWMzYWQwYjVmYWQzOGY4ZTQ2MGE2MTZiMWQ3YzZiNCByZWxlYXNlMjUtbWFpbnQKKzYwMTk1IDAwYTY4NTk2ZTUwNjUwZDQxZDgzNDNlMDcyZTlmNzA0ZTJkMmZkZDEgdHJ1bmstbWF0aAorNjAxOTYgZTA1MDRhMWM1ZjlkNzJkNzE0NGIyYjU3ZjQ5N2RiN2E1NTZhYjJkYiB0cnVuay1tYXRoCis2MDE5NyBlNDNjMmFiNmE1N2M3Njk1ZTg4YTc0YjU5NTcwNTE3MWVjMWEzMGIzIHRydW5rLW1hdGgKKzYwMTk4IDA5MTgwNjM4MWNmOGQ2YzE1MTJiYjgwOGE3YWQwNTA0OGZhYmM2MjYgbGVnYWN5LXRydW5rCis2MDE5OSBjM2NlNTZjN2VjZDExYmFkMTU1ZTdjMmFhOTMwNTNmN2Y0MTFmOWNhIGxlZ2FjeS10cnVuaworNjAyMDEgN2NhMDdmZTAyOTU4ZDEzOGI1NzMxMDM3ZmJhNzliOTBiMzE5Mjk2MCBsZWdhY3ktdHJ1bmsKKzYwMjAyIGJiN2VlM2Q4OWMyZjYwNzY4MzkwNGE1NTNlM2Q5Y2JkOGNiYjVmOGYgbGVnYWN5LXRydW5rCis2MDIwMyA1NmYwZmJhZWI2N2ZkZmM4ZTRiNjcwYTE3YzE0ZjFiOGMwMTRmYmJhIGxlZ2FjeS10cnVuaworNjAyMDQgODY3YzBhYWQ3OWMxNmE3MWVlYjE1NzIyZjcwYWQ1NmEyNDc2YTQwOSBsZWdhY3ktdHJ1bmsKKzYwMjA1IGMzZWQ2ZGE3YTE0Njg0NmMwM2NjYTVmNTg3MzM0OTVmYjgxZGFhZTUgbGVnYWN5LXRydW5rCis2MDIwNiA1Mjk4YWJiZGQ5MWNjZWM2ODM2N2M2NmI0YWZlN2JjMDgwNDgwNDk0IHB5M2sKKzYwMjA3IDZiZDQ4NDliNTQ1OGRlNTUwMGQzMDUyYWQ0YmY5ZjRmMDM4MTIyNjYgbGVnYWN5LXRydW5rCis2MDIwOCBkZjgwYzZiNjA2YTQ4NmNlNTBkOTg2ZjY2NzRhNzE3YmE4ZDg4MmQ5IGxlZ2FjeS10cnVuaworNjAyMDkgZDYyYzEyNmZlNTZhMmQ2NDMxN2I2NzUzMDlmMmQzYWNlNzA4ZjJlZSByZWxlYXNlMjUtbWFpbnQKKzYwMjEwIGZlZmFhMGU2NmZkZDBlMzUxMjEzZmJhYjA5MjkxNDFlZThiMTg4ZDcgcHkzaworNjAyMTEgZWI1OTEwMDkyZjU5YmJiNzVkYjZmMzgxMTU0MTFjYmFmM2NiOGViMSB0cnVuay1tYXRoCis2MDIxMiBjNGI5OGJjMTBiZTdlMTE2MGU1MWI5NjZkYzk5ZjhlMGU2MWUyNmM1IHRydW5rLW1hdGgKKzYwMjEzIDJlMTUxMzc2OTQxZjhiNWJiNjk2NWJiYjg3NDVkZjk2OGM3NmU2ZTYgbGVnYWN5LXRydW5rCis2MDIxNCBkZmQyMTc5M2E1YjU3NTExNjllZmU4NmMyMGRiZTljYThjZTIxNmE5IGxlZ2FjeS10cnVuaworNjAyMTUgZGZiNmYzNjdhNDA2YmJhZTllNGU4ZjY2Njk0MzA2MDZiZTBiNTRjNCByZWxlYXNlMjUtbWFpbnQKKzYwMjE2IDlhMTIxMWM3N2UwMjhiM2FiY2IzODMwYThiZDIyZDVmYmQyMGJlODUgbGVnYWN5LXRydW5rCis2MDIxNyA2OTU4MmJiMTExNGMzNmJkZmU0MzQzMjE2NzM3MWZjY2M2MzQ4MzYzIHRydW5rLW1hdGgKKzYwMjE4IGE0MDIyOWFkZmEyY2NkOGQ1MzE1OTdiODg5ZDhkYjE2MGFmZjdiNWYgdHJ1bmstbWF0aAorNjAyMTkgYjI4NTRlOTc0Y2E5NjcwZjYwYmNkYTFkYTBhOGY2YjZhMWQwMjMzOCB0cnVuay1tYXRoCis2MDIyMCBiY2NjNzY4MmM2ZDRiYTRhNTJkMmQ2NGRmYTkwZGQyN2ZmMTdiYmFjIHB5M2sKKzYwMjIxIDAwNTkyMWZjZmY0M2FkYmM4OTNiY2U3Nzc3NWY2Y2IyNWRjZGRkMTcgbGVnYWN5LXRydW5rCis2MDIyMiAxNDhjODdhNjY3YzIwMWQwNmYxYjc5MjIyZjA2MTYxN2Q1OWQxYTZmIHJlbGVhc2UyNS1tYWludAorNjAyMjMgZmRkNzRiZGVlZTE1YmQ0N2MzNzc5YmM4NTk1Y2Q0YzllZmM1NzZkNCByZWxlYXNlMjUtbWFpbnQKKzYwMjI0IDRjODMwOGFjMjBjZGQ5ZGRjMzFhZmIxZGQ5YmUyNzMyZjYwY2I4ZDcgbGVnYWN5LXRydW5rCis2MDIyNSBiOTM0ZDJlZTYzZjYzOWJkYzViY2I5ZTYxNjJlNjZmZTc5ZTljYzBjIGxlZ2FjeS10cnVuaworNjAyMjYgNzMzMzM1YjIyZjhmZDc4YTMwZmEyNGI1Mzc4Yzk2NmRkMjMwN2RiYyBsZWdhY3ktdHJ1bmsKKzYwMjI3IGQ5YTYwNzUyNTU4ZWY3ZDg0ZDI5MjQwZTEyMGU5OTExNDM5NTQ2NzcgbGVnYWN5LXRydW5rCis2MDIyOCA5NWE0ODczNTE3NDA4MGFlNTc4MjI3YTVmNzAwN2U0NmE4YTYwOWZkIGxlZ2FjeS10cnVuaworNjAyMjkgY2RjNGFlY2VkZDRjODVjZWY2ODRlMDFlMjgxZGViM2FlMDRjZmZkNSBsZWdhY3ktdHJ1bmsKKzYwMjMwIGNjNzNhOGQxOTM4YjQyZWM0YjlmZTcxZGQyZGQwYTU4ZjliMzIyMGQgbGVnYWN5LXRydW5rCis2MDIzMSAwMTJmNTE2ZDRkMjJmMzhlYmUwMjllMzllZTIxNjA1MThlODY2ZDFkIGxlZ2FjeS10cnVuaworNjAyMzIgZmVkOGMzNmQ4NzE1MGMzNzAxMmQzY2UzMDI0MjUwY2NmOWFhOWYyYyBsZWdhY3ktdHJ1bmsKKzYwMjMzIDIyYTlkOTc1N2ExNjk3Yjc5MjNjZTM3OTg1M2ExODA5NDMxODkyNTkgbGVnYWN5LXRydW5rCis2MDIzNCAwNjNlZDM3N2ZkM2Q2MmY0ZjEzNTcxNDBhYzAwNjE0M2FlNzVkZmI2IGxlZ2FjeS10cnVuaworNjAyMzUgYzBmMDQ4MzU2YzM2Yzg5MDJlMWEyODYyZmQ1NTYzOWNjNDhkNGI0MCBweTNrCis2MDIzNiBlMjJhOTJlZWM2NjIwMDY3NzVjYmNmOWFjZTY5MjBkZjg1NDgyMzNiIHB5M2sKKzYwMjM3IGYzYTlhZDQ0OGNjYWQxOWViMzcyNWYwZDkyYTI3NDQxNWY1NmQzNTYgbGVnYWN5LXRydW5rCis2MDIzOCA0MzcxNzIwOTNhMjNhMjQyMTA2YTMwOGFiM2FhYWZkM2RkNTdkYjg1IGxlZ2FjeS10cnVuaworNjAyMzkgY2JhMzA4NGIyN2U3MjY5MDY0OTQzYzdhZDJjOTc3Y2M0NWVlMWI4YSBsZWdhY3ktdHJ1bmsKKzYwMjQwIDk5OWE1ZWU5Y2QyYzNhMWY3NTEwMTU5ZjU0OWZlMmNiODZlNzhjMWUgbGVnYWN5LXRydW5rCis2MDI0MSA5NDhiYmEwZTI0N2I4OTU5MjlhYzJjZGE1YjNkYzNiMmE0MmJlNTNkIHJlbGVhc2UyNS1tYWludAorNjAyNDIgZDhhYjMyODIwYjE3ZGI1YmFjMTY2MTFlNjRhZGNjN2E1ZWJiN2JkMiByZWxlYXNlMjUtbWFpbnQKKzYwMjQzIGYyZGE3ZmNmM2EyNDRhMjA5MGRmYzkzNDk4YWRhMzRkZGRjZjVkOTIgbGVnYWN5LXRydW5rCis2MDI0NCA3ZmEzYWU5YmEwMzFkYWY2ODlhMjYyYTQ0OTIwNWUwOTYwMTliNTE2IHRydW5rLW1hdGgKKzYwMjQ1IGMzM2YyNzc5YTkzODYwNGMyOTFmY2NjMzEwMjRkMjBiMjBjNTUxMmEgcHkzaworNjAyNDYgZWJiYjdiYjAwMzNiYzM0Yzg3ZDI2YzI3YTg1ZjBiZjU4OGY0MjkzNCBsZWdhY3ktdHJ1bmsKKzYwMjQ3IGRiNjI0YjFiYTA2ZGU5YjVjODk3YWY1NjIwMzRiNTQ5OGU1NjYxY2QgcmVsZWFzZTI1LW1haW50Cis2MDI0OCAyOWZmOTA2NmRkMGM4M2RkZjQ1MGI3YjRmMDYyNmUwYWNkNzRkYWYxIGxlZ2FjeS10cnVuaworNjAyNDkgNjg1ZTk2ZDIwODgxYmFkNmRiMzQ0ZTVhMTRmMDE0NzA2NmNlYThlNSBsZWdhY3ktdHJ1bmsKKzYwMjUwIDhiZDVmMGRiN2Y1ZDEwNzBhMmQ0YzAwNGMwNDhiZDE0NjA3N2JlOTkgbGVnYWN5LXRydW5rCis2MDI1MSBhOGI3NTAyMTBiNzk5MDkxZThiMzI4MDMwYjY5MTZhNmEyNGQyODg1IHJlbGVhc2UyNS1tYWludAorNjAyNTIgNmVmM2JlNDdhNDRlN2U0NmMxZmExZjBjZjMyYzdmMDE4M2IyNzJkYyBsZWdhY3ktdHJ1bmsKKzYwMjUzIGQxNmRlNjI1MmY3ZmE0MzhlZjRmNjRhZjc4ZjNkYjVmODQ3MWYyYmIgbGVnYWN5LXRydW5rCis2MDI1NCBlOGVmYTYyZWVjMTU3ZDBmMjVkODdmYmI1NmVkZDEzMzZiY2JhYWY2IGxlZ2FjeS10cnVuaworNjAyNTUgYThjNzQxMjUzNzZkNjUxOTQ0NmY1OTQ3MTJlZGE0NTEzNzAxN2U1NiBsZWdhY3ktdHJ1bmsKKzYwMjU2IGY0YTZjMzIzNTAwYmVlMDU1MjA2ZGEwMTNmZGE2NTFmMmNlZTFlZDggbGVnYWN5LXRydW5rCis2MDI2MSBhNmYwZTRiZmMyZGQ3MGZlYjQyYjhjOGIyNWYwMWEwODc5ZDU5MjMzIHB5M2stY3R5cGVzLXBlcDMxMTgKKzYwMjYyIDdlM2FmZTkwNjQ0OTViMmIwZmViOGFhNWU0ZTVhN2NmMjMyZjAyYzEgcHkzay1jdHlwZXMtcGVwMzExOAorNjAyNjMgM2Y2MWI2NjQzYjdlZWExZGRhNTdhNzc3NTM3ZDM1YTYzZjFhZjI2ZiBsZWdhY3ktdHJ1bmsKKzYwMjY0IDc1N2E3ZjMxZTQ2MDkyYzA4YzQ2ZGRkODcwNDI2OGYwNzRlMmJlZGYgbGVnYWN5LXRydW5rCis2MDI2NSA2OWM1NzAzZDIwZmI0MTA5MzRhMWUzMGQ5Y2I2M2ZlYmMzZGE2MDI1IGxlZ2FjeS10cnVuaworNjAyNjYgZWJkYmU4ZGY2MmIwMzk4NTM0ZTkzNTUxY2I1ODcxMGFmNjdlNTdhZSBsZWdhY3ktdHJ1bmsKKzYwMjY3IDQyNjhiNzdmOGU1NjdkMGMwMzZiMzM1ODUwZjQ0MDExODQ2NDZmYmYgcHkzaworNjAyNjggNzQyYTI2NGNjZTRmYWIzNzgyZjcxMTM4OTg5NzA0ZGI4NzdmZGUwOSByZWxlYXNlMjUtbWFpbnQKKzYwMjY5IGNlMTU5ZDAxZWUzMjJhNzcxYWM3MzU2ZmMxMzEwZTBiZDQ3NDRiMmMgbGVnYWN5LXRydW5rCis2MDI3MCA2ZGEwZWVhMzY3ODNhOTMwODkxZTNiYWM3OGIxNDRlZmQ0NDRiOWZlIGxlZ2FjeS10cnVuaworNjAyNzEgM2JkMTljOGFmMmIxMWQxZjEzY2QxMDUwNTNmMjBkYmY2ZWI0MjgxYyBsZWdhY3ktdHJ1bmsKKzYwMjcyIGZhZTU0NTkxYzAzNTY1ODYxMTc1NjZmYzI2NjE0ZTcyZTYyZWE1NWUgbGVnYWN5LXRydW5rCis2MDI3MyA4NDQyMDMyMDlmYjA2ZWNiZTg1MzRhZTU5YWMyYWMxYjgxNTQwY2RkIGxlZ2FjeS10cnVuaworNjAyNzQgNTQ1NThlMDI5YzJkYTQyMGM1Y2E2ZjJkMWNmYmNkOWNkYzAyMTNlMiBsZWdhY3ktdHJ1bmsKKzYwMjc1IDkzNGE1OWQ1MjU0MzE0ZDM3M2ZkY2MzY2EyODljNjdiN2VmMTg2MTEgcmVsZWFzZTI1LW1haW50Cis2MDI3NiA5OTcyY2NjZjZhMzNmNDQ5YTU5ODkyNWQ3NzgzMzdiNzEyNWEzODRiIGxlZ2FjeS10cnVuaworNjAyNzcgMTIwOTkxNDM3MjRmMzRjY2NkOWE2MmFmMGNmOGEyMTViMWRmYjFmNCBsZWdhY3ktdHJ1bmsKKzYwMjc4IDA4ZWIxYzQxMTExMzkxZGJiMWNkZjFmNjNlM2JmNzdmMWM4YTE1OGEgcHkzay1jdHlwZXMtcGVwMzExOAorNjAyNzkgNTNlN2JjZmI1NGE0NWY1ZmQxY2IxNmUyNTNhZjQzNWMyN2JlYmEzMiBweTNrCis2MDI4MCBhYTgzODk1OGU1NGFiMTM4OGU0ZDljZDg3Mzk5Njc0ODUyM2NkMTRhIHB5M2sKKzYwMjgxIDY1NDdiZTExZjQ0Mzg1ZmM4MGYzMGY5ZjMxN2MyYzY2NzQ0ZTQ1NzggcHkzaworNjAyODIgOGJjYThlYjM2ZTM3ZjUxODlkMDk1MzcxYmU3ZWFmZGQ5MzEyZjFhOCBweTNrCis2MDI4MyBiYmM3MTlhOGI1OGJmNmQ5YzRiN2ExZmUzM2RjYTA1ODBjZTRjYzA5IGxlZ2FjeS10cnVuaworNjAyODQgMDVmMDFkZDc1OGExYmRmZmQ5ZmMzMDdhODljNDY0OWViNTliNjM3MiBweTNrCis2MDI4NSAzYTQ0MmEwMDlhODNlNTg2ODY4ZDQ2YTBiOWMwOTBlOTNmYzM5Nzc4IHB5M2stY3R5cGVzLXBlcDMxMTgKKzYwMjg2IDhlNDM1YmRkNGJjODk2NmFhMzlhZWVkMTlhMDY3NGI2NWUwMDc4MzkgbGVnYWN5LXRydW5rCis2MDI4NyAxYmU5M2RkMTc5ZGY3YTkwMmM0OWI0NmM0MzhhOTE2NDRlNTg0NTUyIGxlZ2FjeS10cnVuaworNjAyODggZGNjZWFlZmE2N2ZkOGU1ODJlNWNlMTRlOTZhZGQ0MTA1ZWUwNWQwZSBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDI4OSAyN2QyMjdhODdhNzM3YmJkMTEyZjVlZjk4ZjFhZjQzYzE1OGFhMGViIHB5M2stY3R5cGVzLXBlcDMxMTgKKzYwMjkwIGVmNDJiZDdmY2JjODNlMzkwMmQ4M2ExZDBkMDBlNGJjY2VjNzUyMTggcHkzay1jdHlwZXMtcGVwMzExOAorNjAyOTEgZGRiMWU0OTlhMDFmODE2M2RlMTMzYWVmOTc3MjZiOTg4ZTBjODJiYSBsZWdhY3ktdHJ1bmsKKzYwMjkyIDNjNTdhNTFmNzM5NGY4NzUzMjhkMzk3MGUwOTM0OTkzNjcxNWUyYjggcHkzay1jdHlwZXMtcGVwMzExOAorNjAyOTMgZDhlODgzNThmNmMyNDA4MjhiOTZjYzZjMzI1MTM4NjE2NmIwZjY5ZSBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDI5NCA0MjQ0OWY2ODI4ODViYTA2ZWY3ZjVhMGZkM2NjYmQ4Njk1ZDRkODI3IHJlbGVhc2UyNS1tYWludAorNjAyOTUgNTk1MGQ4ZGU4MTM0YjU0OWVmODJhYTY5MTFlMzBmNzlkYzM5ZGQwYyBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDI5NiBiNTQ3NDZlMmE4ODBiZDM1OGFiZGQ0MDk0NWY0NWY3NDk2NTMzMzBmIGxlZ2FjeS10cnVuaworNjAyOTcgOTQ2N2VhMjAwNDZjMzFkOGNkN2I3NTA1ZTE0MWE0MGE4NDUwNTA5MSByZWxlYXNlMjUtbWFpbnQKKzYwMjk4IDFmNGIxYmFiYjllMDdiMWMzZGE1ZmU3YjIyNjZhMjRhZjA4MDY4NWUgcHkzay1jdHlwZXMtcGVwMzExOAorNjAyOTkgZWExZDQ3YzdhNDY3NDdiMTVhM2MwNjc1OWNhZWQ1N2I2MjA5MWZmZiBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDMwMCA4OTEwNTBhNmE1YzkwMTcyNzc0ZmVjM2UzYmVjZWJjOTdjOTI3ZTc0IHJlbGVhc2UyNS1tYWludAorNjAzMDEgZmI2OGU0NDU4N2VhMjU5ZDUyMjAyMGFlZjE0ZmMzNjkzYTg4YjE3ZiBsZWdhY3ktdHJ1bmsKKzYwMzAyIDk2ZjVkY2I0ODBhNjAyZjlkZTUzY2Q5ZDIzZWUzN2Y2NDgwZTYxZTkgcHkzaworNjAzMDMgODUxMDMwMTYyZDcyODM0ZjA4YWViOTMwYjViYTQ0YTg5N2UyNjM0ZCBsZWdhY3ktdHJ1bmsKKzYwMzA1IDY2NmNlYjY3OTlhNzgxNTcxZTVkZDM5ODk2OTJjMGRjYWYyZTRlYjkgbGVnYWN5LXRydW5rCis2MDMwNiA2YWUyMjAzMGUxNTI1NzZlZjY4YzZhMGEyYjEzOWI0M2FmOTg1YjNhIGxlZ2FjeS10cnVuaworNjAzMDcgZDM0N2MxZjljMzhhZDY1OGI5YTdhY2M3YzJjN2RmODA5NTcwN2NkNyBsZWdhY3ktdHJ1bmsKKzYwMzA4IGM2ZTVjNjA0ZWE2MWRlZTJjYTJhNmVhYzJiM2M3Y2NlNzJlNjJjZGEgbGVnYWN5LXRydW5rCis2MDMwOSBiZTQ0ZmFlZDU0MmQ3ZmQwOGY2MWU0OGUyZTRhNDM1NzI1YjNlN2I1IGxlZ2FjeS10cnVuaworNjAzMTAgMGYwOTNlOGIyZjUzMWI0YjE0ZmVjOWI1NGM0MWI4Y2E5MjkwYzRlZSBsZWdhY3ktdHJ1bmsKKzYwMzExIDMwN2Q0MTA5ZTIzZWE1ZmRlYTBhYzJiNDMzYWQ1ODk0YWNjNjYyNmQgbGVnYWN5LXRydW5rCis2MDMxMiAzMTI0Y2M1Yjk3M2YxN2M0ODk3MDdmOTA4Mzk5MWYxZDVjYjYyMDgzIGxlZ2FjeS10cnVuaworNjAzMTMgYjcwNDg1MDExMjE0NTM4ZjNlOGMxMzcwYTg0YTdjOGVkNmE0MmU0MCBweTNrCis2MDMxNCAzN2Q3NjI5NzVhOTUzZGUxY2M2ZTU4ZTBlNzE5MWE4MDg5YTExNmMwIGxlZ2FjeS10cnVuaworNjAzMTUgMjIxZGVjMDNlMjYxMjU3YmI0NzY3YjM3MzM2ZTkyMTFhY2Y4YWVhMSBweTNrCis2MDMxNiBhZWRiN2FjMjYyN2VlNDI1MWYzZmQ2YWJiODE1MDZjMDA4NDg5YWQ3IGxlZ2FjeS10cnVuaworNjAzMTcgNDdiYjMxZDA2NTc3MmQxMDA3YTU0YWI1YTFkNmNjZWZkZDYxZjY2NSBsZWdhY3ktdHJ1bmsKKzYwMzE4IDY0ZDEzZjQ1NmQwNmJhY2YzZTkwMzQwOWVlNDIxNDdkYWEyMjI3YWUgcHkzaworNjAzMTkgODQzMTYxN2YyMGUyYTk1YWJkNjE4OTkzZjhkZjI0NWUyODhjZjM0YyBsZWdhY3ktdHJ1bmsKKzYwMzIwIGFhYjVjOGU4ZjM4ZGMwMzM5ZDIzMDhhZWI1NWFiZmUwZTE2ODY5YmIgbGVnYWN5LXRydW5rCis2MDMyMSBhYWE1YTc5NGY4ODdlMjFkMWNmYjY0YWY3OWEzOWQ1MjE3NDUyMWRlIGxlZ2FjeS10cnVuaworNjAzMjIgNWUwYjQ2MGYyOTRhNWM3Y2MxZTFhZGM4MWFkNzQ3MmU0MTVhMmNhMCBsZWdhY3ktdHJ1bmsKKzYwMzIzIGE3NTBhMjZiNWZhZGE2MmU2YTBlZDk5YTk2YmJkZTIwNDNmOTIyZTMgcmVsZWFzZTI1LW1haW50Cis2MDMyNCA1MWJiN2IxYWU3NjU5MTA1ODgzNmYxNjg3YmIwM2Y5ZmVkYjA0NjlmIGxlZ2FjeS10cnVuaworNjAzMjUgZGYyM2Q1MjQ5NTUwZDdmNzg4ODdmZWIwNzZlNjI3NWYwZjZkZDdhOSBsZWdhY3ktdHJ1bmsKKzYwMzI2IDY5OWIzNzE3MGNhZGM2YjAxOTRjZmE0YzM2M2ZmNWY1OWQxNjAwY2IgbGVnYWN5LXRydW5rCis2MDMyNyBjYjU4MzlkMTMyMjYxNmEwMTQ5Nzg4Mzc4YTJkODZlNGZmY2M1OTI3IGxlZ2FjeS10cnVuaworNjAzMjggOGNiY2E5MWUzMTU0OTcwYmI0NzU2ZDI4ZjI1YWVlOGQ0MTlhOTZiZCBweTNrCis2MDMyOSBmYmI5YWU5YTUxNGZlYmE5MGNhYzcyOWJiM2NkOTkyN2Q1NGQyMzMyIGxlZ2FjeS10cnVuaworNjAzMzAgNWQ3ODJjOGQ0MDE2NjhjYjkzZDYxOWM0ZDg0Njk3MTY3ZDQ1MDMxYSBsZWdhY3ktdHJ1bmsKKzYwMzMxIGRjYTNmNjQ2ZThhMWZiNTlmZjI4YWM2Njc4YjQxOTQyYWZlZjA0ZjkgbGVnYWN5LXRydW5rCis2MDMzMiBmM2I1ODQ4NDNmOWZiZGM5YzU0YWI1MTQ1NmU2ZmM3ZTA3NGRhMGZjIHB5M2sKKzYwMzMzIDk2MmM0OTFlMTdkNmNhOGM2ODAzYjAyZDBhMjcxZDA3ZGVhYjkyNDAgcHkzaworNjAzMzQgNWY5ODQ0NmUwZjFiYjdiNzU2MjRiYzU3MDI5NWU1YmYxZmE0ZGMwMCBsZWdhY3ktdHJ1bmsKKzYwMzM1IDUwZjJkN2JkYWJjOWE0NmM3MDljMTE4NmIxMWJjY2IxMzc4MzU2YzUgbGVnYWN5LXRydW5rCis2MDMzNiA5MDkzOTA4YTBjZjVkNGMyY2Y2N2Q2M2Y5YTI2YTk5YTlkODU4OTkyIHJlbGVhc2UyNS1tYWludAorNjAzMzcgZTMzNjI1ODk1NTUwMjYxN2I1ODMyOWM3ZmEwNzBiNGU3NzkyMTVkMCByZWxlYXNlMjUtbWFpbnQKKzYwMzM4IDViMTdiNDRiZTFiZjg3OGQ2OTFlZWNmOWYzMmM5NmU4ZTQyYmNkYjUgbGVnYWN5LXRydW5rCis2MDMzOSA2MzVhNzU2MzYwZjE4YzlhMTE1Y2NiZTI1NjRhNzYzNmRjYzYxMjQ0IHRydW5rLW1hdGgKKzYwMzQwIDcyYTY3MjdiZWQ5YzllMTRmM2U1NTQ2MDNhZGE3NDIyOTBjZTg4YWUgdHJ1bmstbWF0aAorNjAzNDEgNmFkYmQ2MmI5YWJmYTBlMzBiNTk3ZDdjZTExMGQ5ZTEyNDNiNmJlYSB0cnVuay1tYXRoCis2MDM0MiAyY2EyYjA4NDBiMzVkMzg0NWQ4MGJkNzc4NjM1YTA2NWQzNjZhNjQ5IGxlZ2FjeS10cnVuaworNjAzNDMgMjBiZjk0Mjg1ZWVmZTg2ODY1YzE0NDkyZmMwZGZmMDc3YzBmMzUxZSByZWxlYXNlMjUtbWFpbnQKKzYwMzQ0IDRkZDBmY2YzZGFmNzNlMjZmMDNjMmI4YjdlZDExODhlMTY5MTE1ODEgbGVnYWN5LXRydW5rCis2MDM0NSBmZjU4YjMwYThkNTI4NzFkNmNmMDU0MmNmN2VhMWE3MDRkOGExNGViIGxlZ2FjeS10cnVuaworNjAzNDYgNmJiZjZmZGMxNTJiOWU0MmVkYmYxMWE2MDVjMjE2MjMxOTk4MWU2MiBsZWdhY3ktdHJ1bmsKKzYwMzQ3IDQ2N2M3MWYzNjVmZGViNGY2OThlYzQ3MjEzNGFiODRiNzE5ODRmY2QgbGVnYWN5LXRydW5rCis2MDM0OCBmMDE4MTNiMzNjYTRiY2RmYjRjZTEzNTVlN2QzYjFlYTA5ODhlYTA4IGxlZ2FjeS10cnVuaworNjAzNDkgNjJmMGJhNzQ1MzU3ZjA1OWJlYzZkZGQzYTQyNTdiMjgyOGZhYzdjYiBsZWdhY3ktdHJ1bmsKKzYwMzUwIDdjMDIxODJlMjk3OWEyMmVlNzU4Y2EwMmYyNWY4ODJiMmI4NDBkNDggcHkzaworNjAzNTEgOWI3NGM5YzhiOTJjNzlmYmY5MDRmNDY3NmU3M2NkYThkYzM2ZjBkNyBweTNrCis2MDM1MiBmNWU1MmE1M2ZjZDE0ODM0ZjYzNzJiNmNlMWI2ZWFkOTg5MTNiMjA4IHB5M2sKKzYwMzUzIGVlMjQzY2E2NWY1ZjU0NjhiZDA5NjM5YzgwNzA0MmZmM2VjZGY2MmUgcHkzaworNjAzNTQgZjE1ZDNiZjRjYTU2YTEyZDFiMDZjNjI2MWI1MzBmZjE4MDQ1N2I0YyBweTNrCis2MDM1NSBlMjI0YWQ0YjhiOGNhZTMxNmZkYTA0YTI1OTc1M2FlYTJlNmEwNTU2IGxlZ2FjeS10cnVuaworNjAzNTYgNzA3ZGQ5ZjM4NGYzODk2MjRiMjBmMjEwYmFiOWI5YjQ3NTEwNjg3YyBsZWdhY3ktdHJ1bmsKKzYwMzU3IGZjZmExMzE5OWVjYmRhMjllZDk1OTFkNTJhZDc1ODhjOGJiM2ExNzYgbGVnYWN5LXRydW5rCis2MDM1OCAxZDcxYmY0NzVhODVmM2FjNjY3ZWY3ZTMwNTNkZWJhZTUxMWQ4NWJkIGxlZ2FjeS10cnVuaworNjAzNTkgMmU0ZGQzOWJmNjkwNTYzMjY5ZjUxNWU3NzQwNjE0NWUyNGY5YTljMCBsZWdhY3ktdHJ1bmsKKzYwMzYwIDYwNGFhYzQzMzdhNWM1YjEzNGFhOTVjNTFjNmJiYjM3MzQ3ZTUxNGEgbGVnYWN5LXRydW5rCis2MDM2MSBjMzE1YjY3MjQ1ZjdkNTRiMDMwYTUzZTI0ZDA1MDRkNDdkZGNjZjRkIGxlZ2FjeS10cnVuaworNjAzNjIgYTNkNTcwMGIxZDVhM2UwNjA3MDc3YjVjZmU0MTY1MjJiZTNmNjRiMiBsZWdhY3ktdHJ1bmsKKzYwMzYzIDFmZjJiYjUxODdkZmY5MmE1NDIzZmZjOTEzY2I5YTJkNTc1OTI0MTYgbGVnYWN5LXRydW5rCis2MDM2NCA4NWNjYzdjMTU0MjVkZTgyNzhhZDQzMzI5ZjJmMmJmNDA5OTE0OTA3IGxlZ2FjeS10cnVuaworNjAzNjUgYjA2NGUyNWZiODQyMzQxOWY3Nzk5ZTNlY2FlMzVkOTU0ZjhiNjBjYyBsZWdhY3ktdHJ1bmsKKzYwMzY2IDU2MWMwNjVlM2YyZDVmZThlZmEzYzU2NDkyZTM1YWYxY2VlNTdmOGUgcHkzaworNjAzNjcgMGE3MGY1YjMwYjhhYzE4N2E0Nzk3OTQ2NWZlNDJmNDJiYTEzMmU4MCBsZWdhY3ktdHJ1bmsKKzYwMzY4IDIyOTQ1ZGJjZDAzMDFmODY3N2JmNDBlMTI4OTE5NzM2YjBmMTE2YzMgdHJ1bmstbWF0aAorNjAzNjkgNDcyNWM4NGIwNDIyNzliOTU2OTJkMzJkMTYxNmNlZmYyMGY1YjliZCBweTNrCis2MDM3MCBmN2QyMzYwZTk1M2RlN2NlOWQ3MzljZTgyNmM3ZmJjMzQ5MDFiZmY5IGxlZ2FjeS10cnVuaworNjAzNzEgYWZhNTk5MzIyNGU1NTYzMDY0ZWFhY2MxM2YwMmY5YjY4ZWI3NjYyZiByZWxlYXNlMjUtbWFpbnQKKzYwMzcyIGJlMzE0MGVjNjdjOGY2MzA4ZjQ4N2EwYjNlNmNiMzRmNTg2MTlhNDUgbGVnYWN5LXRydW5rCis2MDM3MyA3OWY0MzlkOTlmOGMzYjhiMTkwNjc1N2VkYmMzMTNkNTNlYzVkNDlkIHJlbGVhc2UyNS1tYWludAorNjAzNzUgNjk1ZTViZjNhZjljMDU2OTIxNGZjY2QzN2FlMjVmNjcwMGRmY2JlZiBsZWdhY3ktdHJ1bmsKKzYwMzc2IDcyN2NjODEwZDY5MGJjZTg4NDY2NDM3MjFkNmM4N2YxMTFlZDVhNjEgcHkzaworNjAzNzcgZjA2MmRkYTU0ODk0ZjI0MGY5OGEwNDg1NGYwNzYwMzRkMzI2NGRlMSBsZWdhY3ktdHJ1bmsKKzYwMzc4IGVhM2ZlMzAyZDM5MjA2NDBmYzYyODg3NTA2YjVhOWE2M2ZhZjFkZDQgbGVnYWN5LXRydW5rCis2MDM3OSBlYmZiYWExMDUxZTJkMGQ3OGQ2Y2RkMjE5YjU1OTAxMTU1Yjc4Yjg5IHB5M2sKKzYwMzgwIDUyMzJmMDdkOWM4ZTNkYjM4OTI0ODRiMjdmMWZlY2UyN2U3YWI0YWIgcmVsZWFzZTI1LW1haW50Cis2MDM4MSAxYzlhYzAwYzQ3NTg3OTYxNWJjNzFjMWUzYzAxN2M3OTM3ODc2ZWQyIGxlZ2FjeS10cnVuaworNjAzODIgNDNjYWY4MThjZmYwNzI5MWMyODUzN2Y2ZDQxYzdkZmVhZjQ5N2JlOCB0cnVuay1tYXRoCis2MDM4MyBlZjJkM2JmODM4M2RjYmIyNTZlN2E3YTg2YTQ3Mjc3NjBkMjRmMjUzIHB5M2sKKzYwMzg0IGYwN2U2ZjMyOTc1NTNlN2M1ODRhODNjN2ZlNzQwNWZkNTU4MTM5NWUgcHkzay1jdHlwZXMtcGVwMzExOAorNjAzODUgZTYxNGQyNDhiZGQxMDE1N2JmZjc3ZTRiNTBkYzVjZDM4OTU2NWI3ZSBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDM4NyA1ODNhY2UxMmM1Y2YxMzFjMGU0NjlhYWZmMWY0MWYzN2FjOWZjYTk1IHJlbGVhc2UyNS1tYWludAorNjAzODggMTVmNWI3MzFlMDBiMzgxNWEzNmEyYmJkODFlZDZkZjUzNjQwZWRmMCBsZWdhY3ktdHJ1bmsKKzYwMzkwIGEyOGQwYjE0Yjc3ZGVlZjQ1YzNhN2I4YTBmNTRmZGZjM2RiMDllYjEgcHkzaworNjAzOTEgMmMzZDQ5N2ViZmQ2ZGJhYWZjMjc4MDY0YWRhM2Y2NmNmNWI4ZmI1NiB0cnVuay1tYXRoCis2MDM5MiA5NGYxOGMyZGVhYTVkYWFiZTJiMjIxZGFmNWZlMjc2YjU4YjM2OWIxIHRydW5rLW1hdGgKKzYwMzkzIDBkYTJlZjlmZWRjMDMyZjA5N2JhZTZhZjA0NWQwNmZiODcxMmJjYzAgdHJ1bmstbWF0aAorNjAzOTQgNmFjN2QyZTlhM2JjNDAyNTA3MTI4OGIyZjY3MmRjYmMwNjA2M2U1ZSBweTNrCis2MDM5NiBhYjY3MjYwNzM3YjFjODZlMTMxZGFlNTNhNmU3MGQ2NzI3ZTk0ZjNiIHB5M2sKKzYwMzk3IDE1ZThiMzQyNTRlY2ZiNWY3ODg1MWMzZDZkNDNkNGI3ZjUwMWNhMjIgbGVnYWN5LXRydW5rCis2MDM5OCAxZTU4M2ViNzFiM2ZiMzYxOTc5ODk4YmM2Nzg5NDBiNTJhMWVjZjA0IGxlZ2FjeS10cnVuaworNjAzOTkgNzdkMDUyY2UxZjRjN2M1ZDM1MDRjN2MxOTllNGJlZmU1ZDEyYjJmZiBsZWdhY3ktdHJ1bmsKKzYwNDAwIDc1NjQxM2MwZmYxZDlhYTg3ZTQ1MTE5MWNhNjNjMWRlODNiYWI1YTcgbGVnYWN5LXRydW5rCis2MDQwMSA3YTZhODBlODRhOGEwMDZlNDY5N2YzZTIzMDI4NDU2ODFlODU2MTk2IGxlZ2FjeS10cnVuaworNjA0MDIgZGM0NmE2N2E3YjdiNzBkMDExN2IzZjUzZjI5MTIzOTNiMDZmNGNjZCB0cnVuay1tYXRoCis2MDQwMyBiZDI0NmYzMzY4N2Y3NTc1YzQ5ZDZlMDMzZGQxN2MyMjBhYmE4ZTFjIGxlZ2FjeS10cnVuaworNjA0MDQgNTQ2NzNmNzI0MTA2ZWIxZmU2ZTFmZDgzMDg0NTFjZDJmMjA5MWYxNCB0cnVuay1tYXRoCis2MDQwNSBlZmVhNDIxN2E5NTQzM2NlMzBjZGEzZGM0YTgyYTE1NTQ5NGM2MTEwIGxlZ2FjeS10cnVuaworNjA0MDYgNDE4YWQxNTlmZTg0M2VlNDc3MTBjZTE1NjUwNTM0YTRkNDdmOTIyYyBsZWdhY3ktdHJ1bmsKKzYwNDA3IGNjMjJkM2YxMmIxMzdmNzI4M2Y5ZGY3MGM5YzU3MjUyODBhNDU0MDIgbGVnYWN5LXRydW5rCis2MDQwOCBjM2IzOGE4NTk4OWZjNzY1MjMyMmYxNDNlYmUzOTAwYWM2ZTM3YjEyIHB5M2sKKzYwNDA5IDg2MDk0YzQ2N2VhZmIxNDgwY2VhMzE4ZmEwN2ZiYWY4MWIyNWZjNmYgdHJ1bmstbWF0aAorNjA0MTQgZTlkM2Q1NjFkYmQxYWYyOTllY2Q1MGJlOTJkZTdmZTVmYzEwYjJiYiB0cnVuay1tYXRoCis2MDQxNSAzZjlmZTI3MTU1M2YxNmQ2MTE2YzllM2JhMzE4MGU2MzZhYTQ1MTRiIHRydW5rLW1hdGgKKzYwNDE2IDMwM2NlZjA2M2MzNTIwZWE2ZDU1ZjRlMjRlYzA1YzU2M2UxYmQ5MmMgdHJ1bmstbWF0aAorNjA0MTcgYjliZGM2YTk4YmVhMjI4OGI0ZDNhYmMwM2E4MzM3N2Q0NDIyYjY5YyB0cnVuay1tYXRoCis2MDQxOCBlZGQzNjdjMjJjOGZjYzQ0OTM4NjYxMjhhY2Y4NDE2NTdiN2IzMDU2IHRydW5rLW1hdGgKKzYwNDE5IDNlYmFhZTM0MWMxYjEyM2U1ZDllNTQzZDU2OWYxZDRlYWExNDA0YTUgdHJ1bmstbWF0aAorNjA0MjAgM2I0ZjBjNWVjZjUzZmQ2MmM4MjE3NWJmODkzNmFhY2QxNDcxNjE4ZSB0cnVuay1tYXRoCis2MDQyMSAyOWQ2MTVkZDFkOTcwNTVmOWRhNTJjZTQwNTBlZDRlZTc0YmMxMTFiIHRydW5rLW1hdGgKKzYwNDIyIGIzNzJjMzU0YTI4YzE3NDc1MmUwNjE0YjBhYzMyODJiZjVjYTQwYzQgdHJ1bmstbWF0aAorNjA0MjMgNTA5Y2RmNmQ2NDc5NWVkZmQ5NDk1MDQ0YzZkNTFlMjYzZjdkNGVkMyB0cnVuay1tYXRoCis2MDQyNCA5Mjc3M2Q3ZTY1M2U0YzFmZTQ5Nzg4MzhlMTNiNWY0ZjAxMTM2MzFiIHRydW5rLW1hdGgKKzYwNDI1IGU3OTFiYjBhZGNkZTgyOTA3MTdiNGFkNzMzODU5MzBmZTc1NmFkZjIgbGVnYWN5LXRydW5rCis2MDQyNyA3YWM3ZTA4OWEwNmZjOWFkNGNlMWFjYWMxMjYzN2U1OGJlZTA3OGIwIHRydW5rLW1hdGgKKzYwNDI4IDcxNjZlZDQ5OGM2ZDNjYmRlNWQxODUxY2JjZTlmZTMyZmYyMjMzNmQgcHkzay1jdHlwZXMtcGVwMzExOAorNjA0MjkgY2Q2NWJhMjNhNTBlNzYxMGU0MDEwM2YzNDM1ZTVkYTE3NmJiMGNkZCB0cnVuay1tYXRoCis2MDQzMSA5NmQwMjQ5MTY0ZmM2NTI2ZmNmYzJiN2QzMDBhNGVhOTBhYWY2ZWE2IGxlZ2FjeS10cnVuaworNjA0MzIgYjdhYThiZGU3YmNmNzBmNDhjODhkZmEwNDYyNmNlYTc2YjU1ZTAxNyBsZWdhY3ktdHJ1bmsKKzYwNDMzIDI1MGYyOWJhYjYxYjEyYzM2NmFiMzMwNmY1MmJlNDljZmRmYjM1MDEgbGVnYWN5LXRydW5rCis2MDQzNCA5MGU4NmVlMzY4NGIzYzFiNThkNmUzZWVjMDJiMDBiOWI2ZGMxNjdlIHB5M2sKKzYwNDM3IGU5NzY0YTY5NTgwOTdhMDRkODkzYzI0ZjU5ZGZjYWYwZWUwYzE4MzMgcHkzaworNjA0MzggNjI5MDlkMmU1NzNiOTc0ZjcwZDk2OThhYWE2ZTFhNTIzM2YxM2FhZiBweTNrCis2MDQzOSBlNDMyMzg3NjBjMzg3Mzk2ZTA3OWQ2ZTczYzBlMTI5ZjYxOWQwNTM3IHB5M2sKKzYwNDQwIDI2Mjc4Nzk2ZDRkYTEzMTlmMzkzODM3MDBmNTQ3Y2NkNjk5YThkZTcgbGVnYWN5LXRydW5rCis2MDQ0MSA1M2I5MGYzMWVmZDZlNjZhMjgwYTY5MGU2MzA4ZDQ4NGVlYjA4OTZkIGxlZ2FjeS10cnVuaworNjA0NDIgNTEwYTQ4Mjg5ZDFkNjg4ZDUxODFjYmZkODNkNGE5ZWI4ZmJkOTUzOCBweTNrCis2MDQ0MyBjOGZjYTliNWNkM2MzMGRjY2I1ZDRkZDcyZmZhZDQxZTM1ZjI5YTVmIHB5M2sKKzYwNDQ0IDc2MzhkNGFlMzEwYzIxZjk4MDA4OTYyMDE1ZTQ0ZGUwNDgwMTg5MDMgcHkzaworNjA0NDUgYmQ4ZDIzNjlmMTQxMWIzNTA2YjY0ZWM4ZTI1MmUwZTFmODA3MzI3NCB0cnVuay1tYXRoCis2MDQ0NiA1YWIyMzdjOTY2OTVkZjdhMGI3YmU4ZTY3N2YzNGYwZmUzMzA2NDYwIHRydW5rLW1hdGgKKzYwNDQ3IGFmZDBjYjI1YzczZTIxMzE4MDdiMDEzMDFkMGM2NWVkMzdkMGVjYWYgcHkzaworNjA0NDggOTYzOWE3M2FmYTQ3NzYxNGMwZWQzNmQyYTg5ODljNzQ1YTUzOWVkYyBsZWdhY3ktdHJ1bmsKKzYwNDUwIGMwNWVlNzdiMzlmMmRjMTA2ZGQ3YWFlOTFiOTEyOWUzYTgyMGY4NjQgbGVnYWN5LXRydW5rCis2MDQ1MyBiOWVlMzFhMjZmMzg1ZDNjZmE5NGM1YmY5MjRmYzg0NmUyNTBiZjg5IHB5M2sKKzYwNDYzIGJlMDZiMzM5NTc2ODRjNDRiMDk1NWNkNGY5ZDZlN2Q4ODJjN2I0NWYgbGVnYWN5LXRydW5rCis2MDQ2NCA3ZDBkZjVlYzNkMmY0YmU3ZWIzNjRhZmUzYmQ5NTJkMTkwMTI1MDVkIGxlZ2FjeS10cnVuaworNjA0NjUgZTg0NzZhZWY4NTdjMjFjMTBlOTE1NDNlNzk5OTBkMGEzZTYyNTMyNCByZWxlYXNlMjUtbWFpbnQKKzYwNDY2IDcxOTgzNjAzZWE5OTk5MDQyNzI0NTFiYTMzMDI2MTdjMjRhNmQxOGMgcHkzaworNjA0NjcgM2YyNDk2ZGM5MWRiM2Y2NzhjNzgyMjE3Njc3ODVhMzdjZmJhOWRmNSBweTNrCis2MDQ2OCA4OTMwZmYyMzBlZTllNDYzY2Y0ZjRkMDEwZDY1ZjNkZDc4ZmY5Zjg4IHB5M2sKKzYwNDY5IGRlN2MzMDk3YjJjMTA2NTJlMTdhODZiZmRhMmY4MDRhODQ1ZDBkNzMgbGVnYWN5LXRydW5rCis2MDQ3MCBlNzdiODJhZWQxYTgzMTMxZmY0MzUzOTE1MDA1ZjhiNTEyZTIxOTUyIGxlZ2FjeS10cnVuaworNjA0NzEgMDNlNGEzNmE1NmJiYTQ5NWUxMzE1Y2YyZmUwYTkwZTc2MTIyYTAwOCBsZWdhY3ktdHJ1bmsKKzYwNDc2IGYzODBkOTkxMzkwZTA5ZjIzZDEyODQ3MDllZTJiNDk2OTE4YjlmN2IgcHkzaworNjA0NzcgZjE4M2YxMTg5ODI0OGU3NTRlZmJiZTQzOTMxMjEzMDE3MDJiMjE0NCBweTNrCis2MDQ3OSBkNjM1ZjI5ZTU1ZjgyOTQ3MGY1YTJkZjFhMjhjZTg5NTNjNjdlZjEwIHRydW5rLW1hdGgKKzYwNDgwIGE3N2M4ZGNiY2VkOTEwZmZkM2UyZjkzZDEyYjgyYzBhNWFjNzZmNDggbGVnYWN5LXRydW5rCis2MDQ4MSAzYWE0YjhkZmJjNGE0Y2I1NDJjZTk0ZjhlNDIwNmE4MjgwZmU4NzI5IHB5M2sKKzYwNDgyIDg2NTllNTI2MTRkYWRkNjllMTFiYTZlMzcxNWY1N2NjYzg4ZGE3M2MgbGVnYWN5LXRydW5rCis2MDQ4MyAzZjE2YWM5MTUyMTRlZDM5ZTU2ZmU3NGJmYjc5Y2UyM2RjMTY4NjQzIGxlZ2FjeS10cnVuaworNjA0ODQgZjBlNmJiOWIyNGY2OGIxZWYzZGNiYjRhYWYzMGUyNTg5YzNhNTk0NyBsZWdhY3ktdHJ1bmsKKzYwNDg1IGE0Yjg0MjU3YzdmODU3ZjUyNzZkNWQ1MDE1NjdjYmRiOTI2YjNjYmUgcHkzaworNjA0ODYgNDkyYjMwMmFkZWQ2ODk0ODcyZmMzYWYyNWFkZmI5NjY0NTBiZDIyMyBsZWdhY3ktdHJ1bmsKKzYwNDg3IDY3ODUwOWY5YTAzZjcyYTFlZWI0MDRiNTViZGIzZGY3ODlhZmNlMzkgbGVnYWN5LXRydW5rCis2MDQ4OCAzMTY0YjRhZTI3YzNjMWRmMjUxYWVjNzJjNDAwYjcyMTIxN2ZhMWUzIGxlZ2FjeS10cnVuaworNjA0ODkgZDc1NDAwMzFiOTU5MjE3Mzk2MWVlYjc5OTczNmVhNmFhNTI5NzA5ZCBweTNrCis2MDQ5MSBjNjZkYTU3Yjk0ODg5ODBlNTQwNTVmYTk2MWMxMzVkNDMwYzYxYTczIHB5M2sKKzYwNDkyIDM4NjA0ZmEyYTQ4ZjFmZWUxNWI5N2ZlNDdiNmZhZDJlMTdiYmMwNzggcHkzaworNjA0OTMgYTI4MWUzMzE5OGMwYWUzNGQxYmIxNTU4ZjNlN2U2YWRiNWNjZmVmMCBsZWdhY3ktdHJ1bmsKKzYwNDk1IDdjYjZlNTYxN2RhMDlkODlmM2U5Y2YzMTg4YTUzYTc4OWI4YjUxM2EgcHkzaworNjA0OTcgOTllZjI0OGZiMzE1M2ZkMDk4OTU2MGEwNWM4NTUxY2UzMjIyOTc0YSBsZWdhY3ktdHJ1bmsKKzYwNDk4IDJiNjM2OTBkNTEyODU5N2M3MDFjZGQzOWYyYjZiM2JiYTVhMzc4YTcgcHkzaworNjA1MDAgMzNiYmRjNzZhZmI2MmUxNDVlZmQ2MmFhZWNlMmQ5MjVkNmJiMGNmZCBsZWdhY3ktdHJ1bmsKKzYwNTA0IDM5NzlhZTFlZWExN2E3MTk4MDk0YjY5ZTBlOWYwZDJiMjRkYTVmOTYgbGVnYWN5LXRydW5rCis2MDUwNyA2NDkyYTc4ZTkzYjRjMWNjYzFiOTM3ZjdjNzc2NzM5ZDg5ZmZhY2JlIGxlZ2FjeS10cnVuaworNjA1MDggZmFhODhmZjRjY2U0ZDI1OWZhYjEzNzkyNzliOTFiMTFkNjhmNzEzYSBweTNrCis2MDUxMCBiZGI3MDI5NTI0OGJjZmMzNWM3ODMzYzA0MDNhZWYyOGI4NDVhMTMzIGxlZ2FjeS10cnVuaworNjA1MTEgYmVlYTczY2EyYjg4ZTdkNjhjYWFmZDIzNDdiZDdjNzNiYzJhNjA4NiBsZWdhY3ktdHJ1bmsKKzYwNTEyIDVjYjgyODgzNjBlNzM4YzNiMjFhMDY4N2MyYzk0MzYxMDYzYWY3MGMgbGVnYWN5LXRydW5rCis2MDUxMyBkMTJjOTdjYzc0NjcxM2Q0N2EyNjczMmU0ZWM0YjU2YTNkMDExMjhmIGxlZ2FjeS10cnVuaworNjA1MTQgZjRiNDllZmNlZGMwZWUyOWU0ZDRmY2UyMjY1MWJmNGU3ZTlhYzBkOCBsZWdhY3ktdHJ1bmsKKzYwNTE1IGRmNWU1MmUwNTI0NmZjYTBlOTUzZjQ4NDFlOWNmMTVkYmU1YTBjMzEgbGVnYWN5LXRydW5rCis2MDUxNiBkMGIzMWYyNDY5NGRiZTcxYjlhNzNmZjQyM2JiZGYyMjk1ZjdiYjk2IGxlZ2FjeS10cnVuaworNjA1MTcgMGI0ZThhZmVkNjYzMTI0ZDA1Yjc3YjBmNmQzYWQ3ZTQwNDI3ODA4OSBsZWdhY3ktdHJ1bmsKKzYwNTE4IGY1ZTE4YzliZGU3MDE3NTIzODBjY2Q2OTJkODdjNjcyYjU3MGJlYzMgbGVnYWN5LXRydW5rCis2MDUxOSBjZTk4MTZmNTM2OTA5YjU5ZGVhNjk5N2I0NDU1MTYyYmQwMDFkZWJkIGxlZ2FjeS10cnVuaworNjA1MjAgNGM1OWE4Zjc5ZTQyODFlYzI1NWU5OTQ5YzhkNjZmZGJiMWQ3ZjljMyBsZWdhY3ktdHJ1bmsKKzYwNTIxIGUyYThiNjc2NWFiM2ZiMGM4YzViYzZkZDE0ZDVkMDE2Y2NhNDM1OWIgbGVnYWN5LXRydW5rCis2MDUyMiBkNTRkMTMzYzZhOGRiN2Y3NmY3ODA5MDg2Y2YyN2Q2ZmM0ZTUxYWU2IGxlZ2FjeS10cnVuaworNjA1MjMgN2UyZTYwM2Y0Y2JlY2UwODUyOGZhNmIwNTU5NzA2NTRkYjJhOWU4NSBweTNrCis2MDUyNCBhM2U2Zjc0NTMzZDYwY2QwY2JmM2IxNGRjYTBiNTRjNjAyMmYyZGY0IHB5M2sKKzYwNTI1IDY0MDkxMjQzYzA3YmNlYzk1OTJkMDQyMGRlYjlkMTI3MmM1Njk5ZmIgbGVnYWN5LXRydW5rCis2MDUyNiBhODFlZjYzYTEwMDlhMjk5NGNjYmUwMWQyN2NiYWE0MDkyNjFjMmI0IGxlZ2FjeS10cnVuaworNjA1MjcgZDk4MGYxNzVjODg2MzRiZGFiMDAwOTUzNWI3ODFjZWU2N2EzMWE2MCBsZWdhY3ktdHJ1bmsKKzYwNTI4IDZkNzViZTJjM2QzZTQxMmIzNTNmODY2OTc5MjcwNTUwM2Y0MzBjOGYgbGVnYWN5LXRydW5rCis2MDUyOSA2NjBkMjk4OWIxNjFjZDU0MGFjOTk3Y2ZmNjMzZGM0ZDY3ODY4ODgyIGxlZ2FjeS10cnVuaworNjA1MzAgMDQ2NTNmOTI2NjRmMzFkMjE2MTIyY2ZhYmQ5NDFmOTJhMWRlMGI2ZCBsZWdhY3ktdHJ1bmsKKzYwNTMxIDY1YjEyNTJjMWJjMTkwYWFmNjAyYzc5OTZmOTU2MGRkNzE1YzgwYmUgbGVnYWN5LXRydW5rCis2MDUzMyBmMDNhZjYwMTIyNWIxZGU5ZTBhYzlkMmI1MzFlNjNkNmYyYjc0ZTViIGxlZ2FjeS10cnVuaworNjA1MzQgYjJkZTk3ZWIxZjY3Yzc0MzA1NzJiYTk2NmZkODVlZWQ1NDYxMmI0NSBsZWdhY3ktdHJ1bmsKKzYwNTM1IDk1YmJmNTYxM2IxOGY0OWRlNTJjNDIyYjY4ZDZjY2FlMmIwZWFhNmMgbGVnYWN5LXRydW5rCis2MDUzNiBhZWZkY2I1MjQwNmRkNzFmZWI3ZjE0NTU5NzAyZDQ3YmY4Yzg0ODFlIGxlZ2FjeS10cnVuaworNjA1MzcgNTlkODlkNjFjM2EwYjMwY2U5MGVlZjNjZmI4NTVhN2M1NzQxMTAyMiBsZWdhY3ktdHJ1bmsKKzYwNTM4IGMyZGNmNTRlOTFmZDE4OGU2MWUwNmU4N2VjMWI5NjYyNDE3MjdjYjIgbGVnYWN5LXRydW5rCis2MDUzOSAyNDk2OTQwNWUxYWFkN2Y0ZGQwODBiNTY5YzM4MTk1OGE3ODNhMGI2IGxlZ2FjeS10cnVuaworNjA1NDAgZTVlMDI4OThiNmM0MmMxMTdhZjY4Yzg3ODk1YzE0YWY2YzNkNGY2ZCBsZWdhY3ktdHJ1bmsKKzYwNTQxIDM5NDA5MWZkMWQ1MzM1ODA2MTQ1YmRjN2UzYWZlZTE2NWI1ODIyNWQgbGVnYWN5LXRydW5rCis2MDU0MiAyMTU5NGM1YTA2MWE1MGUwNTgwNTIyYjM4YTk0ZWJkYWMyNzdjOWY4IGxlZ2FjeS10cnVuaworNjA1NDMgZjJjZGVkMGMxZmQ3N2E2YjQ1ZTliZjZjMmZiNjQxNWIyNjMxMzBkMSByZWxlYXNlMjUtbWFpbnQKKzYwNTQ0IDNhYzQ4Y2IzNDAyNzM0YzYyOWZhZTc3NTY1N2FlZDUxOWNhZWNkYjggbGVnYWN5LXRydW5rCis2MDU0NSAyN2NhNDcwMGJjNmRmMGZmNzhiNDU4NGI1YTYyNjk4YjIxN2QxMmI2IHJlbGVhc2UyNS1tYWludAorNjA1NDYgNDAzYTdlZTVhNTNlY2ViNmExNThkZWNmZjE1MTQ5ZjAyMTM5OTY4NCBsZWdhY3ktdHJ1bmsKKzYwNTQ3IDZjOGM2ZGU0NGZmNzU4NjdjMDJiNTgyMjMxMGFmZWUxZmYzZDhkYjQgcmVsZWFzZTI1LW1haW50Cis2MDU0OCA2ZTEzNGFhNzM4Nzk2OTUyNjk4YjA3MjNhMTEyMzU5ZDllYzc0YWE0IHJlbGVhc2UyNS1tYWludAorNjA1NDkgYjY2YWJmMGZkNTkxMjk2ZTU0Njg2ODU3ZjcyZTkyMzA3OTBjMTBhNCBsZWdhY3ktdHJ1bmsKKzYwNTUwIDViZGM4YjU5OTIyMmJhMTRmN2ZiYWRiZGNlMzU0NzViZTcxMjU0ODUgbGVnYWN5LXRydW5rCis2MDU1MSA0YWQwOTU2NTU3OWQ3YmNmNzIwOWFkNmJjY2ZhZTVlZmU2ZDVjMWVkIGxlZ2FjeS10cnVuaworNjA1NTIgYmRjZjQwZDFiMzhlYjRmNDc3M2ZjM2YzYzM0ODYyNTNhMmM2NjIzMiBweTNrCis2MDU1MyA1YmM1ODdmOTAxNjRjNWIwN2FjZGRiYzY2NzFjMmM4ODkxNGVkZGE3IGxlZ2FjeS10cnVuaworNjA1NTQgZWI5N2U4MzAyZmEzMTA2YzQ4NDM2Y2NlMDQ1ZGE5MWRlOGI1ZDE2MSBweTNrCis2MDU1NSA0YWE2MzgzMTMyOTgwYjNlNDJjMWZkMDFiODVhODdkYTM4M2VkY2M5IGxlZ2FjeS10cnVuaworNjA1NjAgNGY2ZjQ0YmM1MTk1N2UzMDJhMzI0YTRmMzg1YTczOWYzNDFmZmQyMiBsZWdhY3ktdHJ1bmsKKzYwNTYzIDc1MDM5ZDMxMThhZWVhZDY1ZTM3YTEyM2QyNzI1ZmM1NmY1ZTJjOTQgbGVnYWN5LXRydW5rCis2MDU2NCBhM2ZlNzQ4NWY1YzU1NmIzZmVlYzVlY2JmYzhjOTYzZGMyZjMxODY5IGxlZ2FjeS10cnVuaworNjA1NjUgMzg1MGQxM2JmOTZiNzUzOWI1ZTgyOGFjZWFiZGRmMmVjOTIxZDU2OCBsZWdhY3ktdHJ1bmsKKzYwNTY2IGYwMzk1NWZhZmZiNDc0YjYxMGRhMWY1NWE1YmRiN2ZiNGI4MzdhNTQgbGVnYWN5LXRydW5rCis2MDU2NyA4ZmRkNmQ2MmVhNTVhYjc0YzJiZTlhNjdlOWMwMGI1N2RlOWMxNjBlIGxlZ2FjeS10cnVuaworNjA1NjggY2MzMTlhNWY1MDNlNzQwNmUxZGQwOTg1OWU2ZDgzZWEwZGMwODk2MCBsZWdhY3ktdHJ1bmsKKzYwNTY5IDNkN2I4NGRhYTM0YTRkNGNiYTU5ZjQyZjE3NDM1ZjQ5NjNhMWYyNGEgcHkzaworNjA1NzAgM2JlNGZhZmQ5Y2MwZGYzNzdlOGVmNzk2YTJjZjBkZjcyNTQ5MDY1NiBsZWdhY3ktdHJ1bmsKKzYwNTcxIDFiZWI3ZDI5M2Y1NTJjODBjYjU1Y2QyN2I0YmUwYTQxNzU4OWQwYzEgcHkzaworNjA1NzIgMzhkZTBlNDFkMjU0ZDc0Njk0MGQ4YmJkZDIzOTVkOGI1ODMwZGQ4MiBweTNrCis2MDU3MyBmNjlkYTNmNTcyMTc2NmUxZmIxZGZhNjcyOTY2OGM0NWFhNmJlYTJhIGxlZ2FjeS10cnVuaworNjA1NzQgOWI2N2QyNTk1YTIzMWI2Zjg5MmQ3NTk0OWM2OGUzODFkMjAxZDk1NyBweTNrCis2MDU3NSA2NDNjMTM5N2Y5NTQwZjAyZWM4YmI0MjFlMmRiZDE1MmUxZjU2NTlhIGxlZ2FjeS10cnVuaworNjA1NzYgOTY4NmM0YjQ2MjQzZGE4NWMyZTUzYTA3ZjZkN2RkNmE2YzljNmRiYyByZWxlYXNlMjUtbWFpbnQKKzYwNTc3IGU2MTEzNWY3ZjliYmZhYjdjNWIxNjYwMmIxYzYwMzQ4MTY2ZDg1NGMgcHkzaworNjA1NzggY2IxZTVjMzdkM2QwMjQwZThjNTk3NWZlYjYyYWEzZDBhMzM3YzhlZiBweTNrCis2MDU3OSA4NjYwMmI2MDM0NjJjODE2YTg2NjIyYjMxYjRjZGM0YTYxZGEzODA1IHJlbGVhc2UyNS1tYWludAorNjA1ODAgMWY4N2VjOTkxZTU5ZGVhZjQ1YWU2MTc2Yjc1MzIxZGU0OGYyMDA1YyBweTNrCis2MDU4MSBlODdiZDhkZGQwMWIwYTA5MTFlOWQ2MGQ2YWZkNzA2NTUxZGEyZjIxIHJlbGVhc2UyNS1tYWludAorNjA1ODIgMGRmYWE5MmJkNTM0OGRiNDhjMWVhMTZiMDYxNTVhMThiYTYxMjVmYSByZWxlYXNlMjUtbWFpbnQKKzYwNTgzIGU2MDY5YjI0MDMxZWFlNGEwZTdhNTdmYTBkYTA1N2I1MmVhMDk1NjQgcHkzaworNjA1ODQgM2Y4Zjg2NDkzZGFhZTgyOTcwYjRiOTk4NjY1ODk0YjRjZTA5ZmZlOCBsZWdhY3ktdHJ1bmsKKzYwNTg1IGJkZjc0ODY4OTNiYWFhMmM3MWY1OTY0N2E5MmJjYjYwNjc5ZDUzYTMgcHkzaworNjA1ODYgNjQ2MzQ3NDQ0ZmFhNTJjYzEwNWRhMjU2YTVjOGE2NjlkZjAxNGNlNCBweTNrCis2MDU4NyA1YmRhNGY3NmFkOTJjNjc1MWE0M2E0MDQ1M2IxNjFhNTllYzRjOTRmIGxlZ2FjeS10cnVuaworNjA1ODggOTRkOTgwOTY2MDU2ZmUzZWU5MDU5ZWU0ZDE2ZTNhNmU3ZjZjOGE1YiBsZWdhY3ktdHJ1bmsKKzYwNTg5IGYyZjk5MTYzNDc4MTQ4NGE0M2IzYjBkYTcwNmNmY2RiOWE5OTJiOWQgcmVsZWFzZTI1LW1haW50Cis2MDU5MCA4ZDg5MDM3ZDVmYzFhYzIwYTExNzU2ZTBkMGNlNDJmYWU1ODRhODUyIGxlZ2FjeS10cnVuaworNjA1OTEgMDYwZjAzOWQyZmFiNTQ1NzU4YzBiY2JmOTdkNWFhMmE0Yzk3NmNkOCBweTNrCis2MDU5MiBjZmEyODA0MjRiNjUwZjg3OWVlMzA4N2RjMDc1ZWU3MmM4YWI4ZGRiIGxlZ2FjeS10cnVuaworNjA1OTMgYjAxMTM2NjEwMmRiYWI3NzlkN2JjNTcyNWM3YjliYTlmMDU5NGNjZCBsZWdhY3ktdHJ1bmsKKzYwNTk0IDRkNThjMGZhNmUzNDMyMDdiNWIxODkwYmE1MGU0MWI5Y2FlNDk1ZmIgcmVsZWFzZTI1LW1haW50Cis2MDU5NSBkYWM0MjE3ZTk5NjVhMGVhOWUyM2NhODY2ODkwMmNjZTc2MDAzZWI2IHJlbGVhc2UyNS1tYWludAorNjA1OTYgZDJiNDlhNjhlNmY3YmIwZWFkMjZiMmVkMDcxMTlmOTk4OGUxMWM3YiBsZWdhY3ktdHJ1bmsKKzYwNTk3IDVmZTU1N2M3NjBhMjAwZDY3ODZmMGJkZGM3OTdkMmUzYmJiZTA5MGMgcHkzaworNjA1OTggNjg3NDM3ZjdiNzg0OTE2OTJmYWNkNzEwY2YwMGU2ZTI3MzUwMjkzNSBweTNrCis2MDU5OSAxYzJhMjY2ODZlNTQ0MDFiZGYxZGMxMDNlY2NjZDNhNDlmZDljYzcxIGxlZ2FjeS10cnVuaworNjA2MDAgODNiNWQ2YjJhYTcwZjNjYjM1Y2Q5Y2VlM2UwYTgxMmE3NmVjOTJmMyBweTNrCis2MDYwMSAwMWQxYTRmZmQ1YjM1Zjk5ODFkNDdhYWRjYzk3ZDdkYzE1YTllZTk4IHB5M2sKKzYwNjAyIDY4NjM2ZWE4OTE1MzExOTM1MGY1ZmY4ZmJmZjc5ZmRmMWZjNzM3Y2MgbGVnYWN5LXRydW5rCis2MDYwMyA4YmMxZmRjNjMzNzBkMTRmYjNkMmFhZjA2ZGYzOTJjYzlmYzkyN2E4IGxlZ2FjeS10cnVuaworNjA2MDQgZjRjMGU1M2MzNTYxYTM2YjlkNmE1YjEyNzRiZmVjYjc5ZGYxMDlmOSBsZWdhY3ktdHJ1bmsKKzYwNjA1IDc3YjM3MWM2OTU4Y2VkZWRkMDU3ZDNlYzY0ZjE5Y2JiZmIyYWRjYzcgbGVnYWN5LXRydW5rCis2MDYwNyA4ZmVjNTBhMzg1OWY0ZDFkZjJhNGM3ZWZmMmI5Nzg1ZjA4NTMwNjFiIHB5M2sKKzYwNjA4IDExMWNiMmFkN2FmNDhkNjUxZjIxNDU3ZmJlOTRhY2ViZWZlN2NlY2IgcHkzaworNjA2MDkgM2VjZDUyNmMzNWM1NjcxZTVkMWQxZWNkYjcyY2U2YzJhN2Y2N2QyYyBweTNrCis2MDYxMCA4ZWYzYzdjMDA0NzAxNTlhZjBiZTA3ODA3Nzk4ZDNhM2M3ODI4MTMxIHB5M2sKKzYwNjExIGI2NWY3OWUzNWIwOGVjZTRiODhiZGJlMzNlODc2N2VhODUzYmFkYzcgcHkzaworNjA2MTIgZmRkOTkyOTFjYzQ1OTE2ZTllYzIzYWFmMjcyM2EyMTE1NjRhMjFlYSBweTNrCis2MDYxMyAxNjUzZjVmZjNjMDAxNGFhZjgzMjkxNjRiZTQxNDM3YjljNzUwYjk5IGxlZ2FjeS10cnVuaworNjA2MTQgYTRjODdjODg5NjQ4MzFkMzgzZjc4ODVkYzM4MGE2MzFjNjg0ODU2OCBsZWdhY3ktdHJ1bmsKKzYwNjE1IDczNzgyN2I0YzVkNzVmNTI1OTJiOTcwODNmZTJiYjUwYzZkZWM0ZDYgcHkzaworNjA2MTYgOTIwYTc2MzNhZTA4OTIyNTFkZWMxMmZjODIyMmQxY2Y0YTc2ZmYxNiBsZWdhY3ktdHJ1bmsKKzYwNjE3IDE0MmExMWIzMDU3ZTlhZjg3ZjI2M2RkMDcyNjk4Nzk2ZjdmNGIxN2EgcHkzaworNjA2MTggYjg0N2E5ODIzYjJmZmZhYTI1NDRhNjAzNjY2OGNkNTY1YjVjMzM4OCBsZWdhY3ktdHJ1bmsKKzYwNjE5IDMzYjc4YWFmYmJiMjIyMmM5OTAxOTBlYWJjODk0ZGFjMjY5MTFlYTEgcmVsZWFzZTI1LW1haW50Cis2MDYyMiA2NWZiMjE3NTA5NDI1YzllNzFlN2YxMjFiNWUxMGZhZTkxYzJhNzJjIGxlZ2FjeS10cnVuaworNjA2MjMgMDU3MWJjNGFiNmMyODIxYmE5OGMyNmNhZmE1NzliMjlhOGYxNzJiMyBweTNrCis2MDYyNCA4MTkwMGE5MTQyMmJmNzEyMThkNGRmNDFlOTRkMDM2NTU5MDZmNDYxIHJlbGVhc2UyNS1tYWludAorNjA2MjYgMGY3YzMxN2JiZTdmOGNkYzZmZGE4ZmY0ZTY0NWIwODk2N2MzNDU2MiBsZWdhY3ktdHJ1bmsKKzYwNjI3IDBiYTMxY2VhNmUwM2IyYzkyMzc5OGU3YTg5M2IzYWI3NzE4MWI2ZWIgcHkzaworNjA2MjggZGJlM2ExMzNiNzE4MzQyYWJiOTFhZjJmZDlmZjhmZGI1MDYzNDFkNSBweTNrCis2MDYzMCBmNTVhNGYxMTkxNDE5NWEzZmU4MDdhYzQyYTExNDUwNWQ3Yjk1MmJjIGxlZ2FjeS10cnVuaworNjA2MzEgYTIxMjZlZGIyMDdiMTI4NDBjZTA0Y2FlMzg1OGExNDY5NzA1MzI5MiBweTNrCis2MDYzMiAzNDY2MjViYTU5MDMyY2I3NDRjNjUyMmI3MWY3YjBkNjUyN2MzNTVjIGxlZ2FjeS10cnVuaworNjA2MzMgZmZlMmQwZjU3ZWZkNzFjZmNlNmM1NzE0OTYwMGI5YmEzMWUwMzNkZSBweTNrCis2MDYzNCBkMzllMWEwZTA5NjU0ODIzNTM1M2EwOGMzNTI4YzQyMTA4Mzg0M2M4IGxlZ2FjeS10cnVuaworNjA2MzUgMDYzZDAyMmFjMDExYjg1ZWU4NmYwMGQyMzQ5NjNkMGIyNGNjMWIxYiBweTNrCis2MDYzNiAzZjEyNDk3NWUwOTk1OTQ1ZDQ2ODRhZTNjMGQ2YzRkMGEyYjBmMWRjIGxlZ2FjeS10cnVuaworNjA2MzcgM2JiM2M3NDNmMTA1ZjcxMGFhOGM3MzMzNDE3MjkwYTU5Nzg5MzEwOCBsZWdhY3ktdHJ1bmsKKzYwNjM4IDkzOGJhNjIyYWNhMDNjZjJkZTZlNDhkODM3ODYzZWU3NzhmZGVkZWUgbGVnYWN5LXRydW5rCis2MDYzOSAwOTU4Y2M0NmIzM2YzNDlmY2MzMWYyMDUwZjYxNmNkNmEyM2Y2YmIzIGxlZ2FjeS10cnVuaworNjA2NDAgOGNiYjhhYTQ1YmE5YTlhZGI1YzY5NTk1MWI4ZmFkMjg3ZTRlNGZiOSBsZWdhY3ktdHJ1bmsKKzYwNjQxIGZlYjZkZDM2ZDUzZjMzZTk2NjMwMmE3ZmI0MTRmOWQ1MDJjYmY1YWIgbGVnYWN5LXRydW5rCis2MDY0MiBjNzNhMjgwMmI3Mzg2NjBkMTJhMzk0MTQyMDhlZjkxZjA1MjExM2MyIGxlZ2FjeS10cnVuaworNjA2NDMgZTgyYWIyNDIzYWFiNzA5YzZhYzk3YTY0OGYzMjZiODFiYjZkMTEyYyBsZWdhY3ktdHJ1bmsKKzYwNjQ0IDQ0ZTJkOTg5OTExNWQ3MjhhNGE5YTFjZjE4N2ExODJiMmI3N2IxZmEgbGVnYWN5LXRydW5rCis2MDY0NSA3ZGM5ZGVlMDk5ZTg4MGRhN2YxYjkwMTE4MTUzYTAxNzJlZDkyMjVkIGxlZ2FjeS10cnVuaworNjA2NDYgNWFjNjA1YzBmMjdjYThkODRiYTk4ZWRkODQ0OWY5NjU4MGYyYTEyZiBsZWdhY3ktdHJ1bmsKKzYwNjQ4IDIxOWY3ZjIxMzRkNDhlZjlmMDE1Yjc1MmZkYzNkMmRjZmRkYTM4OGEgbGVnYWN5LXRydW5rCis2MDY0OSBkZWI0ODczZmEwZjA0YzU3YmFkZWVmMjY2MjJhODgzMDk1MDNmZjcxIGxlZ2FjeS10cnVuaworNjA2NTAgN2ZhNDcyNWNjZTg3OWRhZWRhMTkxMTBhZGJjYmE5MzViNWNkYmI2NyByZWxlYXNlMjUtbWFpbnQKKzYwNjUxIDJjNjNmMTUyMmJiZTRlNzZlY2QzYTkzZjJlNTFjZWE4MDdhZThiMzYgbGVnYWN5LXRydW5rCis2MDY1MiBjZGQyZWEwODBlMjM2NWRkYWVkNjYyMjdmMGE3MDk4ZDE2NGY1YzQwIHJlbGVhc2UyNS1tYWludAorNjA2NTMgNGUzM2ZjODJlN2YzMTg4ZjU5MTU4YTVhMzU5MTRiOTVhZTJmOGE0YSBsZWdhY3ktdHJ1bmsKKzYwNjU0IDQwM2Y3MDVkNThjOTJmNmFhNDI1ZTk0ZThjMWQxZjg1YjFhZDNlOTUgcmVsZWFzZTI1LW1haW50Cis2MDY1NSAzODFmNGEyOTMzYjU4OTcwMTRhMWU4OGJiNWY5MmI4YzUwMDNlOTIzIGxlZ2FjeS10cnVuaworNjA2NTYgNWQ4ZmVjYTMzMzE1ZGU5N2I3ZDNhZGIxOTljZjNjZGMyMjQ1ZTEyYyBweTNrCis2MDY1NyA1OWE2NDg1YmFjMDIzMWQxY2Y2MmVhMjUxOWMzMzZlMWMzNjljYjBhIGxlZ2FjeS10cnVuaworNjA2NjAgNGU0MzcyMmZkNTAzZTE2MjdjMTA2NzQyN2I0MWI1M2IyMmQ1ODIyZSBsZWdhY3ktdHJ1bmsKKzYwNjYxIDI2MjI2MzczN2JjZTJkY2ZmMmJhYTMyNGQzYzY4OGE5OWJjOTAxM2YgbGVnYWN5LXRydW5rCis2MDY2MiAxYzMyNmRlYTQ5NGMyYzllYjg3MDBjYThiMzljODBmOTdlNGJmNDgxIGxlZ2FjeS10cnVuaworNjA2NjMgZTk0YWYwYzdhYTEyYmEyODcyZmI2NTNlZjI0MzFlZDVmY2I5M2Y0NiBsZWdhY3ktdHJ1bmsKKzYwNjY0IDQxNjY5NDVhMGNjNGZmYjc2Yjg2YjM4MWFjNjRjZGNjM2Y5YjAzMGUgcmVsZWFzZTI1LW1haW50Cis2MDY2NSAwNDYzZjgwMWQ3ZGM1MDk3Mzg1MmQyMDI2NzRlMzYwMzcyZWM0ODZjIHRydW5rLW1hdGgKKzYwNjY3IDU0ZGNmODA2ZGVkNjNjMTg3ZDg3MGEzOTJlNzAwMDVlNmExMTA4NzggbGVnYWN5LXRydW5rCis2MDY2OSA0MjQyMmNmMDIwOGIwYWRlZDZjYWZmNmQ1ZDc4NmIwMjk4MjJmNTE1IHB5M2sKKzYwNjcxIGVjYTkwYjhhYTdmZGI4ZTI5NzlkYzA5NGY4ZTZmZDdhYTQwMzVhOWIgbGVnYWN5LXRydW5rCis2MDY3MiAzZmE3ZmIzMjhkOWFhMjkwYmY3ODg0N2NkNTc5NTliNTI2ZDcyN2RhIHRydW5rLW1hdGgKKzYwNjczIDE5ODBkNzA1ODYyNzI1NzA3M2QyMmM0ODcwNDQwODUwMDA0NmRlNGMgbGVnYWN5LXRydW5rCis2MDY3NCA4MmQ0NDI4MGMxMzU2ZWFkMDU0MDU2MWUxYjIyMGU1OTRhMjlhNzEwIGxlZ2FjeS10cnVuaworNjA2NzUgNzdjNTc5MWI3YzIxMDE3NzgxYzc2NjNiNDI1Mzk0MmY2N2JmOGUzZCBsZWdhY3ktdHJ1bmsKKzYwNjc2IDE1YmM4ZTgzMjQyMDdjMjdlMzExYmZiMjI2NjQ3YTQyOWVmOGEwZTUgcHkzaworNjA2NzcgNjhkMzFhOTFmZGYzMjkyMjk2MzU1ZmRlZWQzNTQzNzZkODk3MTAyYyBsZWdhY3ktdHJ1bmsKKzYwNjc4IDU5NTBjNDlmMjI1YWRlYTQyMTYwMzUxODRhZDA5NjljNGQyZTY2YzggcHkzaworNjA2NzkgOTdiNDIwYjJkOGQxMGUwY2M1MjIzNjhkZTc5NDM3NjBmZDZkMjNmZSBsZWdhY3ktdHJ1bmsKKzYwNjgwIDViYTVjNGM5YTAxNjk2NjFmN2QxYmQ3YjRlNGEzOTBlYzMwNDUxZTggcHkzaworNjA2ODEgMmE4MjFlMDAxYTJiNDZkM2RhODEwNGJmOGU5NzI5M2ZjMTE4NGFjYyBweTNrCis2MDY4MiA4NTI3ZWQ3NTYzZDBiNGJjZjM4OTc4YzVjNjllMzZjYTg1OTZiYjk0IHB5M2sKKzYwNjgzIDBmM2Q1OGY5Y2QzNTI2ZGNiNmYyYjdjODE4NGFmZGIzYTZhMGRlYmYgcHkzaworNjA2ODQgNjQ1OTM4ZTBlYjUyYjI1MDZiYmFjNzU5ZGRlYjg3NDk4YWM1NjIxYSBsZWdhY3ktdHJ1bmsKKzYwNjg1IDI0OTA2Yjc5MjU0MjQzN2VmMDBmNmEzMTdhYTlkOWQ4ZDAzMjlmNDcgcHkzaworNjA2ODYgYWViZDljNGQxOWVkZmMxZDQ5MTBmNGM0NTc3Y2E5N2RjZmQ5MmZiNiBweTNrCis2MDY4NyAwMTU5ZTYyYjk3YzU1YzYwNDk3ZmYxMzZiNGE0NzMyOTgxYTQxZWQ0IGxlZ2FjeS10cnVuaworNjA2ODkgYTgyMTU3ZjUzNGE3ZTI5OTQ1NTA0OWNkNDYyYWVjMjE1NDZjYTJmOCBsZWdhY3ktdHJ1bmsKKzYwNjkwIGEyYmYyYTU5NDA0YTkwZWY2M2E0YzkyYjVlYWZiOTMyOWNkOWM3NGQgcHkzaworNjA2OTEgNGNkMWQwNDc0YTEzNGU1YTgwMDNjNWYyOTM5M2Q2NjhkODM1ZTUzNyBsZWdhY3ktdHJ1bmsKKzYwNjk1IDgzODIxZTBmMzk1YjRkN2M1MWRmNTQxMDE2ZTUxYzBkMmI5ZGIzZDEgbGVnYWN5LXRydW5rCis2MDY5NiAzMjljNmIyZTExMDUxNzk0YmFlODZjYzNiNTA5YzI5NTIyNzc2NjM0IGxlZ2FjeS10cnVuaworNjA2OTggYmM2Mjg1NGVlOWMyMTE0ODljM2I4ZDg1ZTdkMzMwMTQ3OWIxM2JkMyBweTNrCis2MDY5OSA2MjYwZGIyMmZmNzUyZjQ1YzQ4YzBiOGU3YzBjZmU0YjZhODJkMjNhIHB5M2sKKzYwNzAwIDU4NWFlYTkwNGYwZGI0ZGRhODI2YTczMTYzM2E1NTU0MTVkMmNhMTggdHJ1bmstbWF0aAorNjA3MDEgODcyOGY4MTZjYTc1MjAzZTQ0OWJlYTUzYjlmOGIwNDRjZTk5NjBiNyBsZWdhY3ktdHJ1bmsKKzYwNzAyIDg2ODliNjcyNjViZmJmMzZmMjY1MWM3OTQ1NDFiYzM2MzIyZDI1Y2YgbGVnYWN5LXRydW5rCis2MDcwMyA2MWViYTgzMzJjMTQ1ZTAyNWNjZWRjMjBhNmY0ZDgxM2EwZjVlOWYzIGxlZ2FjeS10cnVuaworNjA3MDQgNzQ1MjgwZDcxNDI1NWNlYzQ3MDk0N2ZjOWJhMTk5YmY3ZDU3Yjc1NyBsZWdhY3ktdHJ1bmsKKzYwNzA3IDg2OTA2YTVjZWNhNjM0ODgyNTY2MmM0ZDM5ZmYwMGM4NzQ1OGI0YzIgbGVnYWN5LXRydW5rCis2MDcwOCAyZDZmNjQwZjcwODEzOWM4MTBkZDQ0MGFkOGRlNzE0YmVlYzgzMmI1IHB5M2sKKzYwNzA5IDg1M2M3M2IwMjllM2UyOWU3Njg1NTAyNWNhZWUxMDMzZWI1Zjc0MTUgbGVnYWN5LXRydW5rCis2MDcxMCA3ZjRjZWYwNDE4NmYxY2JiZjVjMTM0MDYyNzU1Y2ZmZDYwZGNiY2ExIGxlZ2FjeS10cnVuaworNjA3MTIgNGFlMDM5N2VmMWM1ZjE0ZDljNDI3ZWVkNTdiOWYwNjAxNmRmY2M2NiBsZWdhY3ktdHJ1bmsKKzYwNzEzIDZlYmU4OTMyOGI1ZTczZTk2MjFkZTIxYzc0YjdmYTlhOWU1OTYxM2QgbGVnYWN5LXRydW5rCis2MDcxNCAxZGM3MWYwOGVhN2M3YzhiOWRmMDgwNTQ0NjUyN2Q4NjgyZGE1N2MyIHB5M2sKKzYwNzE1IGZiNTUxYzkzOGE1OThlOTNlNDE0MjQyODMxYjQxZGIwMjgxZDEyNmQgbGVnYWN5LXRydW5rCis2MDcxNiAwMTNlNjZjYjM2YzBmZTViMmFiNDRkYTcyYjljMGI5MGMwNDYzNGRkIGxlZ2FjeS10cnVuaworNjA3MTcgZmQ3Nzg5YTFiZmNkYTJhNjVkZDM0MjQyYzI5ZmUzMGZkYTRkYjU4ZSBsZWdhY3ktdHJ1bmsKKzYwNzE4IGY4ZWUwNmE1MWMwYjJmMjAzNGRlZTYzNjA0NjkxYmY1MjRiZTRhNGIgbGVnYWN5LXRydW5rCis2MDcxOSBjN2Y5ZjlmZGNmODI3MWMzMTIxMTI1MjMzMTk0NzNkNzMyYWQ0ZWRkIGxlZ2FjeS10cnVuaworNjA3MjAgYThjYTllMDY1ZDlkZWUxNWU5NWQzNDFhNzdlOTllYjhiOTg2ZGUxNSBweTNrCis2MDcyMSBhNTBjMWZiN2Q5MjBhODFiMTlhYWQ4N2UwZjAyYjI1ZDMyNGQzZTFlIGxlZ2FjeS10cnVuaworNjA3MjIgOWYxYTJjOTkyNTVmZjQxYzExMmY0Nzg1ZTYzOGRhM2NjMWE3ODI1MiBsZWdhY3ktdHJ1bmsKKzYwNzIzIDFkYzVjYTExNDQ4Y2QwNzMwODdjOWY3NjUyMzFiNzZmYWZkY2VlOGQgbGVnYWN5LXRydW5rCis2MDcyNCBkYzUwZGVlN2Y4ZTUyZTMxZmZkMDNlYmRjNjc3MDE2Y2I2ZGQ2OTQ3IHRydW5rLW1hdGgKKzYwNzI1IGU2NzA1MGQ2MmFkZmE0NmVkYWVhYmY2MGQzYjE5ZmMyMTFiMDVmNTYgcHkzaworNjA3MjYgM2U1YTc5MGUwY2Q2NWQ5ZTc4YTU4YmMwOGNiZjM2YzkxODhmMmVkZSB0cnVuay1tYXRoCis2MDcyNyBlZWVmMzlhNmY0ZGQ5OTVhZjZiMzMwYTcyNDQ5Y2RmOTU2NzVmMWE0IHJlbGVhc2UyNS1tYWludAorNjA3MjggNGFmYmNkZTM0M2VkYmMzZDI4MWE5NDJkMzg1YzMzMTdhNDQzM2IyYyByZWxlYXNlMjUtbWFpbnQKKzYwNzI5IDQ1NjVjNjk0MjBiOGNiMzRhOWYxMzllNGU0MDMxM2I0ZmNmNGE2ZDIgcHkzaworNjA3MzAgNzkwNTU0YWUyYjA0YWNiMzBhZGM3MjY3MTBiMDdiOTFkNzBkYzBmYSByZWxlYXNlMjUtbWFpbnQKKzYwNzMxIGMwYWE2ZDhmNWNkYjQyMGUyODhlMjdjNjY5Zjg3OTFlNjdkMTFlNTcgbGVnYWN5LXRydW5rCis2MDczMiBjMmZjMzE4YzRmYTMzM2Q2ZTgwYjVjN2I0ZjgwNzQ5Yjk0YTgyNWQyIHB5M2sKKzYwNzMzIGNhMDg1MzYyMmYxYTFmOWI5YWMxOTFiOGUyMTRkOGI3OTE0NDRkYmYgbGVnYWN5LXRydW5rCis2MDczNCBmODViNjNmNTY3MDYwNDE4YTc5N2I1MzVjZGJhNWMyOTYxZGQ2ZGM3IGxlZ2FjeS10cnVuaworNjA3MzUgODA4Zjg0YzU2NmYwZWRhZDZhYmI2OTc0NTllMjc4YzNmZGQwZTJhZCBsZWdhY3ktdHJ1bmsKKzYwNzM2IDg1YjY4ZDdkNmY0MTFlY2NlY2FiMWZlMjQ4Y2JjOWYyM2RhZmViMGEgcHkzaworNjA3MzcgYTM5ZmI4OThiZWIxYWQzZGEzZjYxMTEyYWNmZjk0YzdkZTM5ZmU4MCBsZWdhY3ktdHJ1bmsKKzYwNzM4IDkyYmQyMWU2YTgyYzRkMmM3NGY1YjJjZWU1MTJkYmFkMTFhNjhiYjMgbGVnYWN5LXRydW5rCis2MDczOSA1MDc2MmIxOTRhMDBhZDZiMTVhYTFkNjc1ZGExY2VlNTVlNjcwZWE1IGxlZ2FjeS10cnVuaworNjA3NDAgZWViNzJjZjM3YWViNGNiNDgxNTZlNGQxY2M0ZmRmYjRiMTFmNWZkOSBsZWdhY3ktdHJ1bmsKKzYwNzQxIDRjYTcwNjYzYTc5ZDA5YTdmNTA4ZDBhODgxYjQwNTIyMmVjMzMzNDAgbGVnYWN5LXRydW5rCis2MDc0MiBmMGU4YjU0MWYxMTMyMTU4NGYxZTRmNjIxOTU4NGVkOTM1YTdhNTA5IHRydW5rLW1hdGgKKzYwNzQzIDI3NWVkODU5M2VjNjFkMTYwZmY2YWVkMjJkNTljYmNlMTNjMmZlNjIgbGVnYWN5LXRydW5rCis2MDc0NCBiYTE3YjIxYWI5M2U2NjQ3ODY5ZjZhOGVlNzA1NTU1YWNlNDIzNDRkIHJlbGVhc2UyNS1tYWludAorNjA3NDUgNzg5YWE2N2RjZTZkODJiMjFmYmY2N2VkNTczOTAwYWU4NzA3MjAzMiBsZWdhY3ktdHJ1bmsKKzYwNzQ2IDVmNWI0NjQ1ZDkxMzJiNGJhOThlNjhlZGJkNGFiODZjYTdiNjBjNDMgcHkzaworNjA3NDcgOGViOGU5YTMyNjBkNmVlOWQwYmJkNWJjMGM2MjZmODI5MzZhZTU5NCBsZWdhY3ktdHJ1bmsKKzYwNzQ4IGFlNTVlNzE0ZDc0NGQyYTAyNjUzYTBkMTYyYTg3NzQwZjUwMTk3YzUgcmVsZWFzZTI1LW1haW50Cis2MDc0OSBhNDdmNWZmYzA4MjM1MzdmNzI1YTUyODk3ZGU5ZTJmMjkwYWYyYjZmIGxlZ2FjeS10cnVuaworNjA3NTAgMjdmODg1OTdkMDJiOGMxMTE4ZTUwNWI2OTAxNTk5M2ZiZGVkM2Q2MyBweTNrCis2MDc1MSBiMWNiNmI0NGI3OTg3MzMzNzZkYmE4OTI5NTgxMWUwMDZhNmZiNjA0IHB5M2sKKzYwNzUyIGQ2NzNkMDAzYjZjYTgxZTE0ZDc2NmU2NzhlZjY5OTdiMzgyMmM1ZjMgbGVnYWN5LXRydW5rCis2MDc1MyA5NWMwMDAyNjU0MDA5MDcwNTc1NjI0MTRjMmFkNTQ5ZWJkZWQyOWI2IHB5M2sKKzYwNzU0IGQzMTlmNDBjZDAwMGZiODRlZTQ4NzU3OThjYmE2MTJiMzk1ODc4MTkgbGVnYWN5LXRydW5rCis2MDc1NSA4ZjhhZGVjOTNjZjJjYmNkNmRjZDAyYzU5NTM2MWZiNDE0NDFmNmFlIGxlZ2FjeS10cnVuaworNjA3NTYgZjEyMDUxMjFlODQ4YTYyMzNjZDhkZjQ1NDg3NzdjMzZjOWZlNGM1NyBweTNrCis2MDc1OCBjZWVlMDk4MWYxNDFkNDAyMWNjNTUzMmE3NzE4OGY5NzcyZDEzODExIGxlZ2FjeS10cnVuaworNjA3NjEgMTE0ZGMyMTU4MzY5ZDg3NjAwMmUzZDllZGQ5NWI3ZWJiZWIxYzQ2MCBweTNrCis2MDc2MiBjNTIwNTU4N2IyYWJjMDY3ZjdmMjg5NWIzZWUwMDJkNGUxM2Y2ZGRjIGxlZ2FjeS10cnVuaworNjA3NjMgYWU5ZWNlZGI0ZjkxYzYzOGQ1MTZiODU5YThjNTJkOWU0MjcyODNkOCBweTNrCis2MDc2NCAxOGM3NmFmNGYzNjQ4ODU0NTc1NjVjMWFhMjU2NTE2NjMzYTE0NmMyIHJlbGVhc2UyNS1tYWludAorNjA3NjUgNmViNjQyZTBhZGQ4MGNkNWY3YTg3NjYwZDM4NjJhNTc1ZTBhZWIxOSBsZWdhY3ktdHJ1bmsKKzYwNzY2IDdlZGY3MjI1YjA1ZjhiMmI1NzYxN2JiZWJkNTEzNmVhOTc5NGYxNTYgcmVsZWFzZTI1LW1haW50Cis2MDc2NyBiZWVhMzViMGVkNTBhZDVhMWY1NTk2MGNlNTBiMmQ5ZjgwNzJkN2NmIGxlZ2FjeS10cnVuaworNjA3NjggYjBmMzgwYThiNDQ3YjRiM2ZmYTRiZDVmNWQyMzRmN2U2MTM0MzQyNCBsZWdhY3ktdHJ1bmsKKzYwNzY5IGY5MDNhNjQzYTg4YjFiNTFhNDY4MzczODRmOTQ5Nzk0ZjExZDdjODcgcHkzaworNjA3NzAgNWYyZWE5NjVmODUzZWNlMTg4MGJlMDQ4OWZmM2Y4OTkyYzg1MGIzZCByZWxlYXNlMjUtbWFpbnQKKzYwNzcxIDMwYjU2YmViZGU1NGFkYzlkNzhjYTk1MzIwYmFiZGE1YWVjMmQzZTggbGVnYWN5LXRydW5rCis2MDc3MiA3MzcyMzA4ZWI2MmY5ZjY0ZDBkNWFhY2Y1ODNiMDBmODExZTczNzhhIGxlZ2FjeS10cnVuaworNjA3NzMgMzMxMjJmZjgzNDA1MTU4ZWJmNmI4ZWMxN2FjYTk3ZGZjOWRhMGVjZiBsZWdhY3ktdHJ1bmsKKzYwNzc0IDdkMmZiYjRlNTc2ODZhNGZlOGI3MzdiMjhlZjE3YjgzNmFhM2JhZGQgcHkzaworNjA3NzUgNjA4YmQxMDE0ZmJlYTZmY2QzZGY5ZjE2YzQxY2IxZDIyYjNjMDViMCB0cnVuay1tYXRoCis2MDc3NiA1ODRmYzE1ZDQ3YWMyYTcwYWRiNmJiODk1NjEyMjg5NjEyYmZkYzc5IHJlbGVhc2UyNS1tYWludAorNjA3NzcgNDQwZTcxNWJiM2QyZWRhYzYwZjM1YzA5NDhhNTMzZmMzYTViZTFhZCB0cnVuay1tYXRoCis2MDc3OCBkNmVmOWNiNTQzYWY1YTgxN2JhMDQzY2FiYzU5ZTEzMjQ1MjNiMDcyIHJlbGVhc2UyNS1tYWludAorNjA3NzkgNjg1Y2VlMTQxMGY4ZTM0M2Y4OTI4ZGQ5NTEwMDNlYjk1ZmE5ZTBkNSByZWxlYXNlMjUtbWFpbnQKKzYwNzgwIGY4ZmIyNzEwNmVjYzAxODRmMmI2ZTU2MmFhOTI3ZDZiNWY1NGQwM2UgcmVsZWFzZTI1LW1haW50Cis2MDc4MSAwODNiZjZlMGFlNTA1MWNiNTVkNmJkNzQyYzhkMzRiZmIxNzgwNGExIHJlbGVhc2UyNS1tYWludAorNjA3ODIgNzZiMmRlOWM5YjBiN2U1MjNkYTVkM2U5NzliNzMwZDM0Yzk3NTkwOSByZWxlYXNlMjUtbWFpbnQKKzYwNzgzIDFlMGVlMzI0YzUxMzY2ODQzNGM4ODIyY2Q5MmViZDhjMWViMGU2NmIgcmVsZWFzZTI1LW1haW50Cis2MDc4NCA1Njc4NmEyZGVlYzQzYjg3MzZhYzVmZWI0NGQxYjcxY2NhMzhkODcwIHJlbGVhc2UyNS1tYWludAorNjA3ODUgYzdlNjgzZDUyYjNiM2UxMTI4OGQyMjNkYjYyZDY2ZDYxNTk4ZTZkYiBsZWdhY3ktdHJ1bmsKKzYwNzg2IDRmY2I3MDAxMTVkODAzYTlkYjM0YzM4ZmU5ZGUwOGMxMWE1OWIxNWYgbGVnYWN5LXRydW5rCis2MDc4NyBlNzBmNTZjZjY5NzIyZTIwMTY5MmM1MTA0N2NlNmQ3YTZhYmJkNDg2IHB5M2sKKzYwNzg4IDY4MDE2YTA4ODhiOTY4Mzc1YzBhYzlkMjE1MzA2NjgyZDEyMTJkNzIgdHJ1bmstbWF0aAorNjA3ODkgMDk1Y2E5ZmYwZDhlY2E5YzMxYzk1Njg4YmI2NzU4NGVhNWZhMWUyNyB0cnVuay1tYXRoCis2MDc5MCBlNTE4ZTM5ZjRhOWU5NTkxNzZkNWIwZTEwMmMxNWFmNzE0OWE2YTczIGxlZ2FjeS10cnVuaworNjA3OTEgZWY3NTQ4MTczZTYxNzFlOTk1NDk1Y2Q3YjgzMDc5MzU4MDExZmRlMiBsZWdhY3ktdHJ1bmsKKzYwNzkyIDBkZDA1ZWVkNjNkZTk4Njc3OWY5NTIyMDQwZTk2YzBmMDdiYjVlNWEgbGVnYWN5LXRydW5rCis2MDc5MyA4Y2JlMGJkOTNjMjhiMDEzMjNhMzg5MzIxYjEyOTU5MTIwZWRlY2ExIHJlbGVhc2UyNS1tYWludAorNjA3OTQgMTkwZDU1MzczZTUwNTdkM2M4YTc0YTY0ZjJhZDU5MjNhMWU2ODIyYiBsZWdhY3ktdHJ1bmsKKzYwNzk1IDVhZDhhZTRkNzg0ZTZhY2I4NmJkNzg1YzIwN2Q3MzNlYzQ2YjQyNjMgbGVnYWN5LXRydW5rCis2MDc5NiBlMjJiYzhiOTY1NDczZjU4MTc2OTNjZDU5Y2I5MzY2NTRkY2JhYmIzIHJlbGVhc2UyNS1tYWludAorNjA3OTcgNjVhZTY4YzdhY2EzODE2MmJhMDQ4OGUzNmY4ZGEwOThiYzFjYTIxZSBsZWdhY3ktdHJ1bmsKKzYwNzk4IDVjMWRhN2IxYjRhNmI4MjhkYmViMDA4NWU4Y2U1ZjE5Y2M2ZTFlMWQgbGVnYWN5LXRydW5rCis2MDgwMCAwYThhYWU1NzVjZGRkYmYzZDEzM2ZjYjRlZWQ5MTA4MGUzZmU0MWYzIHJlbGVhc2UyNS1tYWludAorNjA4MDEgMWRjMzIyYWRiYjY3NjQwMmU1MmY1MjY4ZDY2ZTM0ZTEwNzVmOGU2YSByZWxlYXNlMjUtbWFpbnQKKzYwODAyIDg5ZWM0MmIyOTg2MzBlODhiMWI5NjhiNTMzMDdiOWMwNTQ2NTE0ZTQgcHkzaworNjA4MDMgMTY3YTlmYzgyODQ0OTFjYjVjZWJlMTI1YTFkOTlhMmExY2VmZDQzNiBweTNrCis2MDgwNCA4M2QyYzcwNDQzZmI3MmIyZDYwNzBlY2E0NDQ0NTEyNjY4NGVjZjdhIHB5M2sKKzYwODAxIGEwMzM2MTc3OTJkMTlkZWM0YjFkZDBhNjc5ZDc1NGEyODE1MjIzM2UgcmVsZWFzZTI1LW1haW50Cis2MDgwNiBmMTk5ZGUzOGFkMDEwMTM3N2FhNDBmYTgyNzIyMmQwMDkwMWJlYzdjIHB5M2sKKzYwODAxIDk1NzAyMGVkM2FmYWU5ZWU0Njc1ZTM0ODViYTYxYzdjMWJkZmRhMzkgcmVsZWFzZTI1LW1haW50Cis2MDgwMSA3MjFhNTkxMGZiZjBkOTkwYTRjYjIzNWE4ODYyOTk5OWUzYWZkMGIwIHJlbGVhc2UyNS1tYWludAorNjA4MDkgMWNlYjJhNmM2MGVlYWU5ZDE1OGI1ZDRiNmM0NjY3YzczYjlkMDFkMyBweTNrCis2MDgxMCAyZDllY2EwYjQ2ZmQzZjA4YmJiZGRlYjQ0NGFmZmZkODIwZjZjMmUzIGxlZ2FjeS10cnVuaworNjA4MTEgMjE4MzZlMGI5ZWIwMzE5NzFkNmRhZGZkMDFlOWFmYWViODIyYzFmNyBsZWdhY3ktdHJ1bmsKKzYwODE0IDc0NmE4ZTFhNzg1YTU5MDVmODAzY2JhNzI1OTIxODM0YTkwZGNjNWYgbGVnYWN5LXRydW5rCis2MDgxNiBlMThjYjIxZjVmNWZmMDc0YzRjMmFmNDYzN2Y2MGM5MDNiNTY1NjM2IHRydW5rLW1hdGgKKzYwODE5IDQxZGMzNjg2ODg5MDhjM2YwZDEzOTIzNzBiYzY1OWI4ODgxNzlkNjUgdHJ1bmstbWF0aAorNjA4MjIgZWVjNjdhZjRkN2RmZjExNWI4ZGRlNzFlZjI1MTE4NjhiNGZhZjRhOCBsZWdhY3ktdHJ1bmsKKzYwODI0IDEwYjI2M2EyMDJjYWQzNzg2M2Y3MTA3MzcxODA3MzQ1NWEwNzZhNDYgdHJ1bmstbWF0aAorNjA4MjUgY2Y1YTVkNzMyZTNjY2IyOTI4YmY5ZWIyYWFiMGNlYzcwMDYwYzJmNCB0cnVuay1tYXRoCis2MDgyNiBmNDgzNzRiOGMxYzNkOGQzNTYxYTM5YjEyZjU0YjJjYzk0ZWJjMzA4IHRydW5rLW1hdGgKKzYwODI3IGEyMzU2NzNiOWY4ZWEyNGJhODE3NjI2MDRhM2Q0ZDIwZjk0ZmFhOWUgbGVnYWN5LXRydW5rCis2MDgyOCA4OTFmYjVjM2JjMTgyYTMxNzQ1ZTZjYjhmYmIxYjY3ZjUwMjU0ZmFjIHRydW5rLW1hdGgKKzYwODI5IGIyZjNmZDlhNGM2NTcxNDhkMjJkNmFjMGY0NWY1NzA3NmI0YzE4NTMgdHJ1bmstbWF0aAorNjA4MzAgYTk3Njg5YjNlNzQyNWU3ZDM4ZTEzOWU2ZmMwOWZkZTY3N2FjNDQ5OSBsZWdhY3ktdHJ1bmsKKzYwODMxIGIyN2RlMjlhMjMyN2E2MjA4NzY5ZmUxZjJlZmNiMDdlYzc1NTllMDcgdHJ1bmstbWF0aAorNjA4MzIgMzMyMjFhZGMwYzIwNmUzMmZmMTQxYWEyODU5OWUyMDc1ZDI1OGQwMCB0cnVuay1tYXRoCis2MDgzMyA0YjQzMjE0NjFhOWYwMjg3Y2E3YmRjMDBlNTRlYWJjMDNlMzM1YjhmIHRydW5rLW1hdGgKKzYwODM0IGE1NzM5MjVjOTFlNDJlYTBjYTdiN2ExYWE2YjYxODJhODAxZGJkOTkgdHJ1bmstbWF0aAorNjA4MzUgM2E1NWMwZmQ4MjJmYjMwNWE5Yzk4MTkzN2YwYjQ0NGZjYjRkYmZhZSBsZWdhY3ktdHJ1bmsKKzYwODM2IDdhMzU1YjZiMjFhYzhkNjRhNmMxNTczYzQ3NjVmOTRiNmMzYWMxODAgdHJ1bmstbWF0aAorNjA4MzcgZGY1MWJhZDg2NzEwMDU0NmFjMTcwMjNjZmIyOGIxNTJhOWIyZDQyYSBsZWdhY3ktdHJ1bmsKKzYwODM4IDQ1MDRkZmNjMTkyNGRkNWYzMDNlMjJiNWQ1MmZmNjA5NWEzZjAxYzYgcmVsZWFzZTI1LW1haW50Cis2MDgzOSAzYzRkNTkzZTE1Mzg2NWI3Y2Y2ZWRiZjM2Y2M2OTgzZGQ2YmI0NjI4IHJlbGVhc2UyNS1tYWludAorNjA4NDAgOTE1ZmRhY2Y3MDJkYTNhYjRlMWFmNTY5YjJjOTFjMzlkNWY2OGFkYiBsZWdhY3ktdHJ1bmsKKzYwODQxIDU1NzIzNmQ3NTJlMmQ5NzllZTJmZTIyY2Q5YjhmMzNiYzBmMjk2Y2EgbGVnYWN5LXRydW5rCis2MDg0MiAwZTJhYWE3YjliMWZjOWJiOWU1ZDlhYmE1ZGFiYWJjYTIxMTY0MzI4IGxlZ2FjeS10cnVuaworNjA4NDMgZDhmMTJiYWUzNzhhZDA3ZTU5OTAzNTE4ZWM4MWRkN2U3MjZjNmNhNSBsZWdhY3ktdHJ1bmsKKzYwODQ0IDE2NmUzYmE3ZGUyNDM3NzVlZDg5NTE4ODNkYjVhZTBjYjE1MjMyYTUgbGVnYWN5LXRydW5rCis2MDg0NSBjNDQ3NTJkOTBmZDJjY2U0MGQ5YjU2ZGQyZjRmYmUxOGEyNWQ1NDc1IGxlZ2FjeS10cnVuaworNjA4NTAgNjJkZjFlMzM5ODMyYjZmNjhmNDIxM2Q4NDc5ODhjNDQyY2FjNzE5MyBsZWdhY3ktdHJ1bmsKKzYwODUxIDcxMTM5YjY5MjQzOWJkZWQ4MTgyYjM4NmVkZDAxMmQyNjVkYmQxYzYgbGVnYWN5LXRydW5rCis2MDg1MiA5YWNlYjkwNTRiM2Y5ZmYyYTcwOTlkNjIyMjEwYTkwZjVjMTVmNWMzIHRydW5rLW1hdGgKKzYwODUzIDdjNGM0NjM0MjEzNzNiNTJlNGU3NTc1ZWYxNmY1Nzk0MDAyOGQwYjYgcHkzaworNjA4NTQgZDM3ODU5ZjI5ZTUxMWExMmM0N2NjYzgxMDU5MDMwODE2NWM3N2Y2NSB0cnVuay1tYXRoCis2MDg1NSA4YzY4ZGI4NmZmODdhNDEzYmJkYWQwZDU2NTVkZmQ2MmRkMGIxMGI1IGxlZ2FjeS10cnVuaworNjA4NTYgMWE4OWU5MTMzMzczOTUwN2UyNmU5NmRhYWFiZTBjNTg2MzM4YjIwNiB0cnVuay1tYXRoCis2MDg1NyAzMThjYTZiYzg5YTNkNWRmM2M2ZGY1ZmE3ZDhmYjU3ODg5ZDI4OTVjIHRydW5rLW1hdGgKKzYwODYwIGYzNzhlZGQyMWRmMjZmNjIyOTMzN2UxMDA4NmE0ZGRjNDM3ZDMxZjQgbGVnYWN5LXRydW5rCis2MDg2MSBhYzA5NWI3NzRlMTkzYmY0Zjg3OWI1NjZiMTI4NGFjOGI2ZjViMjU5IHRydW5rLW1hdGgKKzYwODcxIDI3MGZjZDJlOTc4MjY4YTQ0MzI4NjM0M2I0YWVmNmZjNDExZjE3ZWIgbGVnYWN5LXRydW5rCis2MDg3MiA2NTUwNjU5ZGJjOWRiNjZlMDU5OGZjZmQyZWVhODI3NDg3ZDNjZWU2IGxlZ2FjeS10cnVuaworNjA4NzMgNjIxMjM2NzM5MGUzMjRhYzcxYjcxOWE4OTc0OWJjOGY4YzhiNDNmYSBsZWdhY3ktdHJ1bmsKKzYwODc0IDE4NzJiZDZjZjRiNDViNThhZGE5ZTI5OGQzOWJjM2ZhODgyOWE1MjYgcHkzaworNjA4NzUgMTJmZjE0NmY1OWE3MDcxYWQ4ZDA4NTc1MzcxZWI3YTFlMWI1MjNmNCB0cnVuay1tYXRoCis2MDg3NiA5M2I2MTU3NDEwNzQwYzgzYjZiODIxNDgxM2U0MGUwNDFlMGM1ZmI5IGxlZ2FjeS10cnVuaworNjA4NzcgMDhjYjVhYmZiNWI2YTI0YjE4ZGYyZjMyNmNlYzE0MTk5YmJjMzViYiBsZWdhY3ktdHJ1bmsKKzYwODc4IGNjMDIzMmRlMDY2YzMzZGU2NTkyYTViNTA3MzgyYTExNzc2YjVjMDAgbGVnYWN5LXRydW5rCis2MDg3OSBiNzIzMWJmNmJmYjc5NTllMmM3YWRkOTIzNjg0MzQxNjk3YjgwZmExIGxlZ2FjeS10cnVuaworNjA4ODAgN2FmOTU1ODQzOTI5NjI5ZjZjZjM5YTA3MGNkOThkYzUyYmUzNmIzNyBweTNrCis2MDg4MSAyMWViMWU2ZWRhZmFmMzllNzE0MzkwYTNlMmM3Y2I3ZTMzNTI3MzJmIHB5M2sKKzYwODgyIDljYzdhODY3MzdjOTY1MmZmM2E1MzE4NjcyMGVjYjBmNGI5ZTcwNjMgbGVnYWN5LXRydW5rCis2MDg4MyAzZDJmZjAxNDY1NzQ5MGNiMGQxYmFkNzVjNThiNGU3NThlMjdhYWY0IGxlZ2FjeS10cnVuaworNjA4ODQgMWJjOTIzYTEwN2Q5NTZlNjllOGFjYjE3NDAxYTc2Y2QwZTFhOGM2MSBsZWdhY3ktdHJ1bmsKKzYwODg1IDBlOTJlZjU3YzBkNGE5ZWQzZjMyNmNjZTMwM2YxYjE1NDEyNDQwNDAgbGVnYWN5LXRydW5rCis2MDg4NiBkNGIwZjEyN2NmY2IxZTkwYjVhMDVmOGFiMzMwMzcyYzhmMzNiZTYyIHRydW5rLW1hdGgKKzYwODg3IDUwODc0MTUwNTRmMTkzNzg2ZWJkOWEzZDY5Y2Q3NTdiMzQxNTVjNWUgbGVnYWN5LXRydW5rCis2MDg5MSAyZWZjZDdmNjA2ZjhjZDUxYjJhZGYzYjIxY2EyM2FiYjdhNmFlMTIwIGxlZ2FjeS10cnVuaworNjA4OTIgYmY2YjI2OGU3N2YzYzQyZjBkYzg1MzU1YTkzN2VkNDU3Nzg5YzRlNyByZWxlYXNlMjUtbWFpbnQKKzYwODkzIDNmYzU4NjMwN2Q2NjkzYzRkM2UyOGI1NDZlZDc0NmNkZmViNzFmZDAgbGVnYWN5LXRydW5rCis2MDg5NCA4ZWNlNWNhNGE3ODVlMDc0ZGYxMzllOTc1ZjNkYzkxZTBjNzU4Y2UwIHB5M2sKKzYwODk1IDYwNmQ0Y2M1Y2RiMzBiYmFkMTZjZDM2MTU3NTI4YjMxOGY4Y2EyNmIgcHkzaworNjA4OTYgMjdiZWFlMjFhODJjOTY5NDNkNmFkMWRkODRlN2Q3ZWNmNzNhMjdmYiByZWxlYXNlMjUtbWFpbnQKKzYwODk3IGJjNzBlOGI4OWExYzA1NmM2NDU0MTExZWU1OWFjMGU2MTJiMDI4ZWIgcHkzaworNjA4OTggYjBjYzdhNmRhMWUwMzJlMmJkNTFjMmUxMzQ0NzUzNmU4OWI1Yjc4NyB0cnVuay1tYXRoCis2MDg5OSAzZWU3Nzk1OTg1N2FmM2FhMWY4NWFmYmNhOTQ5YzRkNjQxZjZiOTc5IGxlZ2FjeS10cnVuaworNjA5MDAgMjk1ZjM3ZmM2MjFiOTUzYzE3ZWI1ZjZiNzkwMTk0NTAzYmE0OTI2OSBweTNrCis2MDkwMSBmOWY0NzljZTUwZDBiYTRkZjA3ZWQzYjk4N2M0MTVlZjk3NTRkOGQwIGxlZ2FjeS10cnVuaworNjA5MDIgMTVkNTc3NmYyNzAzY2MwODc4OGE1ZDg1NWZkZTY2MTA1Y2ExYjYxNyBweTNrCis2MDkwMyA5ZTI2YzBiMjM5ODdmNWY2MzFjMzQ4NjY5NjVjN2VkYmFlZjI0YTllIHJlbGVhc2UyNS1tYWludAorNjA5MDQgYzQ3NGM5MjdlMDM2MGZlMjJlOGVlYmI1MmI2NjZmNmI5MGIyNmQxZSB0cnVuay1tYXRoCis2MDkwNiAyOWE2NmU2MjFkYmUzZjJkNzljMzUzMzYyODYwMjY5NTAzY2Q4OTI5IHB5M2sKKzYwOTA3IDJmZjUxYzQxMmU1NzdiNTQ1YTliZmRlMzJhMmE0NjFkMTc2OWMzZjQgbGVnYWN5LXRydW5rCis2MDkwOSAwZWEyMzZhNzFkNzc3M2M2ZjEyMjgxOTJhZjkwZWYwNGM4MWIzMDNmIGxlZ2FjeS10cnVuaworNjA5MTAgNWQ3MjZkYTIxZDc1NDMxMDVmYmVmYjQ3ZjhiYWNjNWZiYzAzMDU3OCBsZWdhY3ktdHJ1bmsKKzYwOTExIDA5YjE2N2E0MDE4YjZkYTY4ZTIwODEyZWJmMWEwNTM1N2UwYjYyMjQgcmVsZWFzZTI1LW1haW50Cis2MDkxMiAxNTFlN2ZmYzdlODkzNjhhMDYwZjVhYjA3ZDI0MWI5ZWE3ZGNlMmYzIHJlbGVhc2UyNS1tYWludAorNjA5MTMgZDEyMTk5ZDYwMmQzY2E5YWIzZGY4OWZkNDBkYmFkZTkyODEwZjM4NSByZWxlYXNlMjUtbWFpbnQKKzYwOTE0IDFkNTA4YmJiZGI0OWEyYjExNjI5ZWUxODZhNjM5MjgyOTFiMDg2OTQgcmVsZWFzZTI1LW1haW50Cis2MDkxNSA5ZjQyOGE1ZTYyYjMxNDI3Y2M1ZmFmMDdiNzc0ZDM5ZDM0NDZkOTBkIHJlbGVhc2UyNS1tYWludAorNjA5MTUgOTQ1NTAxNjVkNjI2ODIyYTBiZDUxZDNlZDJiNjAzZGYxOGFhZTk0ZCByZWxlYXNlMjUtbWFpbnQKKzYwOTE4IDgwZWNmNjczNDdlOTU0MWYxMzY0YTI0ODk0NTRhYmFlZjM5YzdjMGQgbGVnYWN5LXRydW5rCis2MDkyMCAxYzk1OGZlNzE4ZTNlMDg5MDIyM2EwNDA4Mjk0Nzc3NGExMjJiZDUxIGxpYmZmaTMtYnJhbmNoCis2MDkyMSBiNTI2NWFjYmVlNzVjZGZlNDlmMmRhNTc4N2MxNmNjNDk0NDJlYTc4IGxlZ2FjeS10cnVuaworNjA5MjIgZjZlZWVhMDE5YzFmNGNlNWQ1N2I5ZjNjYmRiZGRkZGNhMGMxMzMwNSBsaWJmZmkzLWJyYW5jaAorNjA5MjMgOGExODdmNTYyOTU5NDkyNWMxNWY0NDcxNTQ5NzI4MjU2NGY4MGFiOSBsZWdhY3ktdHJ1bmsKKzYwOTI0IGY4MmJkOWVmN2Q3ODgzYzQwYzdhODQ2MjY0ZDM4ZTc2NmZmMjI4MTYgbGVnYWN5LXRydW5rCis2MDkyNSAwMGJkZDk2ZGRlZGEzMWEzMjM1NzNiYjc4NjNlYzZiNDllNDQ0OTE5IGxlZ2FjeS10cnVuaworNjA5MjYgOTA0OGNlOWUzN2M4ZWZmYjEwYmZkYjcyZTVkY2UwMjljZGExNDhkOCBsaWJmZmkzLWJyYW5jaAorNjA5MjcgZjllMjU1NjJiMmQxYjk5ZTNmYTQ1MGE2MzdhZTE3YWNhNzAzZGE3ZiBsZWdhY3ktdHJ1bmsKKzYwOTI4IGU5YmM0ZmJkYTE5MTI1ZGU3MzE2NGEyYjM5NTRlN2UzMmRjOTUzNjEgbGVnYWN5LXRydW5rCis2MDkyOSA1OTUzZjZmYzAyMDQ0OTUxYzA5YzkwYTJiZGNiMWFmOTdmMTY4OGVjIGxpYmZmaTMtYnJhbmNoCis2MDkzMCAzMzc4MmNhOWY2ZGNkMzMzMWIzOTQ3ZjdkYjc3NzNhMTc3OGRjNzI5IGxpYmZmaTMtYnJhbmNoCis2MDkzMSAxODRkMWIyMjc1ZGM4NzZhYjVlOTVlM2U1MjA5NDI0NDllZDU2YmY0IHB5M2sKKzYwOTMyIDdkMjYyMzBiYjc2MzAyYjI2ZWUxZTFjZDllODk2MTU4ZGRkNGRmZmYgbGVnYWN5LXRydW5rCis2MDkzMyBlYzBhODU3ZTg5NmRkYWFhMWJiOTdhODc5NGE1NjYxYjk5ZTZlMGEzIGxpYmZmaTMtYnJhbmNoCis2MDkzNCA3YmUyMGY0OGZmNjcwZmE4NjAwOGVmYTUwNTQ1NjdkMzZjNjMwYTg3IHB5M2sKKzYwOTM1IGQ4OWQ0ZGY5NjdlNjBjOTc5OTE4ODZhNGExZWNlY2E2ZjA0NjFlYTUgbGliZmZpMy1icmFuY2gKKzYwOTM2IDM0YWZlNmNiMDJhMTU4YzE3NGUwNWJkNDc4NTIwOWQ1YzJkNzFiMzMgbGVnYWN5LXRydW5rCis2MDkzNyA5MzAwNTNjOWRiMWRjMzk2NWQ4MDY1MzJmY2I2MGQ2OTBhOGE4NjQxIHJlbGVhc2UyNS1tYWludAorNjA5MzggYzU5ZmQ4MmE1NmIwMzMzZWY2MDA4NGI4NjRiZmFiZTBlMTNjZjY5MiBsZWdhY3ktdHJ1bmsKKzYwOTQwIGUyODg3ZGM1YmRiNWE2YWI4MGRhZjljZWU0YzRmZGJlYWQ0NGQ0MGEgbGliZmZpMy1icmFuY2gKKzYwOTQxIGE5ZTFmZGFmNDEzZDlmZjI2YjI4ZGZkNTkyMzQ1MDcxY2MyYjk4YmUgcHkzaworNjA5NDIgM2NjNTdmZDg3ZDBlMGU5NjA5ZDhlYzNjN2E5MjM2ZjNiZTk0NmZhYSBsZWdhY3ktdHJ1bmsKKzYwOTQzIDAyZDRmOThhN2UxMzJlZWVlN2IzZDhkZWU5NWE1MDdmMjI0NTFjZmEgbGliZmZpMy1icmFuY2gKKzYwOTQ0IDNiYmY5NmQ5NjYzOTEyNDcyNGMyYzhmMjQ0ZDI3ZDRmMTkyODUzZWYgbGliZmZpMy1icmFuY2gKKzYwOTQ1IDZlYTZjODdhNzUwMTI3ZWFjMGEyYmM0NWM1YTNhODU4OGZiZDhjNmMgbGliZmZpMy1icmFuY2gKKzYwOTQ2IDkyZGI2OWRjOGQ0YjA2NTk3NDJkZGQyNWUxZGY2YTg5OGVlMzkzYjggbGliZmZpMy1icmFuY2gKKzYwOTQ3IDhlZWY1NmUwOTg2Y2YwMTIxNTJhNDFiODc0NTk3MmFhZTE2N2I4NjAgbGliZmZpMy1icmFuY2gKKzYwOTQ4IDk4YzNmOWExZDM2NjMwMGY1Yzg0NWJmZWM4ZmU3MmIwNDdiYTY0MzQgbGliZmZpMy1icmFuY2gKKzYwOTQ5IDg1YzYzMDM2Y2EwMTkxMjVkMWI0YjhlMDgyOGM3ZTIwYzI1MzQ3NWQgbGliZmZpMy1icmFuY2gKKzYwOTUwIGYwZjhiMjAwMTUxNWUwNWQ5MzU5Y2EzODBlZTZhYzdjYWE2MTg3ZmIgbGliZmZpMy1icmFuY2gKKzYwOTUxIGE3ZjM1MGIzZWQyNDkwNjNjMzZiZjgwMzA3YWYxYmNkMWEyY2E2MGIgbGliZmZpMy1icmFuY2gKKzYwOTUyIDFiNGNmYTAwNmJlMTU5MDkxMGMzN2UyNmVmMDQxM2E3MDEyMjgzZWMgbGliZmZpMy1icmFuY2gKKzYwOTUzIDM3MzA5ZTMzYzQyYzQ1MmRhZjYwZjQyZjM1ZmU2YWQwYmRmYmU4ZmUgcmVsZWFzZTI1LW1haW50Cis2MDk1MyA0NTQ2NjgxM2RlZjc3Y2IyYmJmNTU0ODVlMDc2MjRiMWM1Zjc4ZTBmIHJlbGVhc2UyNS1tYWludAorNjA5NTUgYjg4N2RiYTJiNWUxYzE0MjgxMDNkMjUyMzcyMzIzY2VkMGIzMzMzYSBsZWdhY3ktdHJ1bmsKKzYwOTU2IDg1M2FmNWJiYjQ5N2IyMzAzNzE2NWY1NTQ5NTlhYWVkNDcyYjYyNjkgbGVnYWN5LXRydW5rCis2MDk1NyBiYzlmZDg0YWZkZWNjZWIzYzk2YWNlMjhiNjdhYjYyYTE3NDQ0MjNmIGxlZ2FjeS10cnVuaworNjA5NTggYWIzOGQ3NzFmNTZkYTk5NmFkZjQ1M2UxY2Y1ZWFlY2Y0MDM0ZmViYiBsZWdhY3ktdHJ1bmsKKzYwOTU5IGQ0NjYyNzczMGEyYTMwM2VlYTlmMGZkZmVmYWM3YzY4YmRlNGE3ZjggcHkzaworNjA5NjAgNDI3YjU0YzdlZTI1MmQ2NDQ2MjVhYzI4YzQwZmU2ZTU2OWNiMzY5MyBsaWJmZmkzLWJyYW5jaAorNjA5NjEgNmQ2YTI5M2ZiYWYzYjUxMDhkNWY4ZGMwN2YzZGVkYTY4M2JlMjdiNCBsaWJmZmkzLWJyYW5jaAorNjA5NjIgNGE5NTIyZmQ3NWE2ZTJhYjU3NjVhYzZiODIyZGFlMmM2OTYwMTU5MyBsZWdhY3ktdHJ1bmsKKzYwOTYzIDA5MWIyNzg3NmExYjg2NGUxZjkwNDA0ODBiMjkwZjM2MGUzZWQyNDAgcHkzaworNjA5NjQgNDJiM2IxMTczOTFkY2I1MmNiNmJkMTAyYmJjZTRkYmRiMDc3ZWFmYyBweTNrCis2MDk2NSA2N2E5ZDMzODU4NTEzODBlMGRlOTNiNzMxODUzNDlmMjA5NDE1OGMxIGxlZ2FjeS10cnVuaworNjA5NjYgN2M1MWUxZDE0YzhjNTlkOWM2MDU2ZWEwMDEzZDE4MmFjNTg2NjUyMSBsaWJmZmkzLWJyYW5jaAorNjA5NjcgNmE2Y2E1ZTU3OWY2NmUzZTc0MDAzMWMwNjk5NzVkZDRjOTAyNDEyNSBsaWJmZmkzLWJyYW5jaAorNjA5NjggMDc5ZTIxZjU5MzE5M2FkNzgzZGU1YjE1MGJiMzIzNDEyZmE3OTdlMyBsZWdhY3ktdHJ1bmsKKzYwOTY5IDExYTczZmJiZjg2ZjJkZjM5ODA1NzhiZDY0MjQzNmZiMzU1YTQzMGUgbGVnYWN5LXRydW5rCis2MDk3MCA4ZWI1OTgzMzEyMzE1NzA4NWE4YjMwYTIxNDRmZGRlYjc3ZTMwYzQ2IGxlZ2FjeS10cnVuaworNjA5NzEgMWM3MmE3MzgyMTMzNmIxZDZkMzNmYWRhNGFmMDNhZDFiZWU5NDBiNCBweTNrCis2MDk3MiAxNDdiNDhiM2JjMjM0ZTY4MDY5ZjViM2VjMWU0N2JhYzNjNWJlZTVlIGxlZ2FjeS10cnVuaworNjA5NzMgOTAwMzQ3ZjcwMjU4NGJiNjI3MzUxNjE0Y2NlMmJmZTYwYjlhNmUyNyBsZWdhY3ktdHJ1bmsKKzYwOTc0IGNhNWYyZjk2MDYxNzRjMzY1MTkzNjQyMTlkMWZhZDA2NTU4ZTc1YTEgbGVnYWN5LXRydW5rCis2MDk3NSA5NmEzNGVlZjg5YTNkMWRiZmUyNDUxNDUxODhiODA4MGFiOWNjNzdlIGxlZ2FjeS10cnVuaworNjA5NzYgZGRhOTJhMDk3ZThjNmY2ZDIyNjBiZmVkZTIzZDVjNDU2MjAxZGRjOSBsZWdhY3ktdHJ1bmsKKzYwOTc3IDVlMDc3MmVkMjBkMWQ2OGE5NTY1MDIxNTJjNjBhYjkzMmZkZDQ5ZGEgcHkzaworNjA5NzggMzkzODIyZjJlZjkwMWMzNjU1ZDg0YjJiZjg0MDVlM2VhYjRjODVlYiBsZWdhY3ktdHJ1bmsKKzYwOTc5IGYxYjUwYWE1ZDVhZjQ4M2FhMjYzYWE5N2RjYTFhOTNjZTcxM2VjZTggcHkzaworNjA5ODAgNzM0ZmMwYTE5NjU3ZDVmMGYyYTg0YmFkOTE1YjA1MzE2NjY5NGUyYiBsZWdhY3ktdHJ1bmsKKzYwOTgxIDdhOGRlMmE3YjFhNTZiZGYyMjJmZTZmMTQ2NjA3M2ExZWIxNGVlN2IgcHkzaworNjA5ODIgOGY5OTRkNjk3NzQ3NTUwZDEyNmE1ZWVmMmJhODdiOWM2NDMxZDgwNyBsZWdhY3ktdHJ1bmsKKzYwOTgzIDM2NTdjMjdlYTJmZDJiOWE1NzQ3M2ZlZDU5MjczZjYyY2IzNzk2ZjEgbGVnYWN5LXRydW5rCis2MDk4NCA5MzBiMjgwMmMwMzdiOTM1NTQ5ZTNhMzdmMDgwNzIyNWYxYjY3OWIyIGxlZ2FjeS10cnVuaworNjA5ODUgZDdlMjMyZTlmMWExZWUxNWMyYjNmODU5MmY3YjdjNTEyNDk2ZmMyNyBsZWdhY3ktdHJ1bmsKKzYwOTg3IDFiMTlhNTcxNDVhNWIyZjVhNjZmNmMzODVlNGE0NzhhMDczMGYyZmUgbGVnYWN5LXRydW5rCis2MDk4OCA5NzcxMzk1NmMxYjBkZjNhZWQ3ODhhZTIxNGU4ZTgzY2M0YjAxYTIzIGxlZ2FjeS10cnVuaworNjA5ODkgYmEzNTliNmMzM2MzODE1NjQxZWE5MWIwMjc5NmQ1Y2Q1NTJkNzA5OSBsZWdhY3ktdHJ1bmsKKzYwOTkwIDlmMDM3ODg3NjNlMDlhMDkwMTM3MGM3MjVhM2IzNTcxMGY3NDVlYjQgbGVnYWN5LXRydW5rCis2MDk5MSAxY2M0N2UxMjlmZjQ3ZjRlYTZkNGQ2NGYyYmQ1ODBiZmU2NGM4ZGU4IGxlZ2FjeS10cnVuaworNjA5OTIgNThjM2YzNDM5NjcwOGFkZjM0MTdjZGY2ZGJkMmY3NTU4OTZiNWVkNCBweTNrCis2MDk5MyAyYzVkOTE2YmQxMWM5YTllMTE0NjVjYjk1YjdkZDBjMDBjNzNjODMyIHB5M2sKKzYwOTk0IDQyOTg1ZWJiZmM0NTMwOWI2OTQwNGY0MzJlMmNhYWQ4Mjk3NDg5ODcgbGVnYWN5LXRydW5rCis2MDk5NSBlODRhZDJhMjU4YTQ2OTQ5NDJmOTE0NzFkOGNiYmZhNDEzZGVjMDIxIGxlZ2FjeS10cnVuaworNjA5OTYgOTc0Y2ZmM2UwMDIxNjIxYWU0YWI0OGNmMGVhNzllOTBlY2ZmZjZjZiByZWxlYXNlMjUtbWFpbnQKKzYwOTk3IDEzMGZiZmIxNjAzNmFmNDY4ODAxMmQ2YmY1Yjg5OGE0MTRmNjIwZTEgcmVsZWFzZTI1LW1haW50Cis2MDk5OCA3NDhhZjBiODM2NzRjYzFjMWZlMGZjNWVmYzlkOTVlOWQxYzZiNmQyIHJlbGVhc2UyNS1tYWludAorNjA5OTkgZWM3ZjA4NzNiNjY0ZGY0NjM2ZWQzMWI3YmVkZTBlMDMxYTAwNjQ4ZSByZWxlYXNlMjUtbWFpbnQKKzYxMDAwIDFkODRiZjVmOTQ3ODZhODQ2YzA4MDI4Zjk5YjZjM2I4MjdhY2Y0NjMgbGVnYWN5LXRydW5rCis2MTAwMSA0N2E1OGNhM2UxMGViNzAyN2QwY2M5OTRlM2IxYWRkNjU3ZmI5NGJlIGxlZ2FjeS10cnVuaworNjEwMDIgMzkxNWQ1ZjY1MGZhOWRlMDdhYmI3MWQyNjEyYzg2MWMxMmE2ZTQ2ZiBsZWdhY3ktdHJ1bmsKKzYxMDAzIDdkZDJjMTc0NjI2N2QyZWNlMTc5MjgxNTM1YWIwZmVhYTlhZDY0MjAgcHkzaworNjEwMDQgNmJhNTMwOGY3YmE0MTY1YjhmZTIwZDk5ZWU5YmI1M2UzMDIyNjIzMCBsZWdhY3ktdHJ1bmsKKzYxMDA2IGVlYzRjMWU5ZTljYzg4ZmVkNjEyMzhjY2Y0ZTNmZWIxNmFlYjU2NzEgbGVnYWN5LXRydW5rCis2MTAwNyA2YTEzZmVjYWYyZGZiMjZjNGIxMDA2NTE0MGVjMTA4YjRjMDc3NjcwIHJlbGVhc2UyNS1tYWludAorNjEwMDggNGViNWE2NjdjODgyYjVhNGUyNzQxODA4ZTdmNmMwNDBmNmY1YmE2NCBsZWdhY3ktdHJ1bmsKKzYxMDA5IDgwZTBhMjkzMGM2ZDU5ODVlNTQ4NDdmMmFjNGI3MzJlMGU0MWEzNjIgcmVsZWFzZTI1LW1haW50Cis2MTAxMSAyNDFjZjgxYTA1MDg3OTdmY2M1ZDliNWIwMWFjY2M0Nzg4YWIzNTNhIGxlZ2FjeS10cnVuaworNjEwMTMgOWYxODNhZTM0NThiZmI4YTkzMTczYzNmNDI2NzdmNzljNGQ5NjJmMiBsZWdhY3ktdHJ1bmsKKzYxMDE2IDQwZDI2OWQ2ZGE5YzU4MzA3YzNhYTQ3N2E1MjQwODk2YTc5NWVkMjMgcmVsZWFzZTI1LW1haW50Cis2MTAxNyBhMDEyMTNhNTQyNWQxYzQwNTFlY2EyZWQ3ODlkZDY0NGI1MzI4MzNhIGxlZ2FjeS10cnVuaworNjEwMTggNjY5MzA0M2QyN2ZkMzI5N2NhOWZkOTFlOWMzZmU4YjYyZjdmZjM2MSBsZWdhY3ktdHJ1bmsKKzYxMDE5IDgxMGJkNjc3Mzg2MzZlYzg1OWM2ZjUwMjkzMTdkNjc5ZjEwYjA0ZjkgbGVnYWN5LXRydW5rCis2MTAyMCAxOWQ4NTI5NDJkZGRkMjJjMTA5ZmM2ODZmNDhkMmRiMjFhZTVlYWNmIGxlZ2FjeS10cnVuaworNjEwMjEgODUzMWY4OGI1NzhlMjBhNDI5NzZlMzM1NmFlMWViZmIwNzA0NzhkZiBsZWdhY3ktdHJ1bmsKKzYxMDI0IDMwNTc4ZTA0ZDM1Y2RjMGM4NjE1YTg3NzdiZjYxNGM2YmIwYzU4ZDIgbGVnYWN5LXRydW5rCis2MTAyNSAyN2JhYjM5ODlmNjM1M2NkNzJiM2Q3ZjNlMDMyYzA4OTQzNDY5ODg3IGxlZ2FjeS10cnVuaworNjEwMjcgODEzYzE0Njg1OGY3OGUxMjhiMTE0MWY4MWI2NDU4MGMxNjIzZWIxZSBsZWdhY3ktdHJ1bmsKKzYxMDI4IGMxMjZiZDliNTA1YmY4NmI4MWVhYmU0NzljZWY2Y2IyMTA3ZDJiYWUgbGVnYWN5LXRydW5rCis2MTAyOSA2YTk5MmI2NjgwYjFiNzY0NTVjZTBlMjExM2NlNDAzOWJkOGE3NGRiIGxlZ2FjeS10cnVuaworNjEwMzAgMWIwZWI3NmVmNzJhYmQ5MDgyYTA5NTE0ZTg3OTE4N2ZjYWE4NWNhMCByZWxlYXNlMjUtbWFpbnQKKzYxMDMyIDliMTE1YzVlOTExNTJiMDcyM2ZmZGU5NWI5YjU4MTJiMThjMDJiYTUgbGVnYWN5LXRydW5rCis2MTAzMyA5N2ExOTcyYjY3MmU3YjViNTM1YWIwM2ZlZjg4MmYxZjFmODM3NjZkIGxlZ2FjeS10cnVuaworNjEwMzQgMjFhNWU5YTU0ODNhNTIyNDBiNTFiNjJiZGY5MWI1NjQxMmYzNWFjMCBsZWdhY3ktdHJ1bmsKKzYxMDM1IDdlZmE0ZDFiY2VkMzhjMzBjNTc5OWQ1NzEyNmZjNGViZjU4MzJhZTYgbGVnYWN5LXRydW5rCis2MTAzNiA0ODQ4OGZhNTA3MjllNGYwYmEwMDVhNWUyYjMzNjAwMzc5NjgwMjhjIHB5M2sKKzYxMDM3IDAwMmE1YWM3OTJiMWU2YTdmOTk2N2NhMTAyMzRmODJkNjJkOWQ2NzcgbGVnYWN5LXRydW5rCis2MTAzOCBlYWE4YzE5MzkxMDhlMDFkMTRkZmUwMDI3YWU1YmYwZDNlM2ZhNzkwIHB5M2sKKzYxMDM5IDhjN2JhMGVkODQ0M2I1MTM3MmY5Yzc5YmU5ZDNkNTJlZGQwZGE5NjYgbGVnYWN5LXRydW5rCis2MTA0MCAxOGZlZDE0YjA2YjYwNjY0ZmMyZmQyMGZjMzE1YWJlNjliNGZhYTc3IGxlZ2FjeS10cnVuaworNjEwNDEgYzAzYWZmNmQwN2Y1M2IxMDZjNjJjNjI5NWY5MGNlNWI1NmJlMTgzNyBsZWdhY3ktdHJ1bmsKKzYxMDQ2IGQ4OWZlMWQyZmFkZDgyYTBjYzgzNjEyOGMxYTkwMzRkNDBjOTg4NGIgbGVnYWN5LXRydW5rCis2MTA0OCBhZGU3YWM4OGQyZDA5ZTIwZTYyMWI2MjExOWQ4YTcxZDA2ZDU4ZTUxIGxlZ2FjeS10cnVuaworNjEwNDkgYWY5MjhmZjBjNWM2OWQxYzU4M2ExZDY5ZTgzMTRjMGI4ZjdkNDU3YiBsZWdhY3ktdHJ1bmsKKzYxMDUwIDFiNmZiNTY5OTYzNDU3ODQwYWU5NzgzN2YwMzNhYzQxYWQxODAyYzcgcHkzaworNjEwNTEgYmY4ZWU1OTNjYmFkMDNjNzI0ZTVlNDk2YTBkZWRkZjdkYzMxNWI3NyBsZWdhY3ktdHJ1bmsKKzYxMDUyIDU1ZWVmYjQzZWY2ZjNhZDFhMDExNzdlZGFkMDJjMzE2NTZmNDU3NzUgbGVnYWN5LXRydW5rCis2MTA1NCBhNzdlMWNmN2VkMjUyNjJhOWNmMzUzNDdmZDg2YzMwMjczOGNkNDYwIGxlZ2FjeS10cnVuaworNjEwNTUgYjBmZGU5MzY2MWNlODc1MWVkZmM2YmIzOWNjZmMzYTRiNWZkNzhmNiBweTNrCis2MTA1NiAwOWM5Y2VlY2RkNTZkMDRiZjIzNzE5MWNkMTQ4NmQ0NzZkNjhjM2FiIHB5M2sKKzYxMDU3IDcxMjkzNzJmNTMzZjQxYjM3NDE1MjZhZjgyNjQ5OTVhOGM4OTU0ZTggbGVnYWN5LXRydW5rCis2MTA1OCBkYzViMDEwNzI5NGMwZGM0ZjdkNjg5NTNmZTUyNzExMTAxZDVhYzg5IGxlZ2FjeS10cnVuaworNjEwNTkgZTU3ZmZhMmI1ZDA3ZjAxMjVkNmM3ODlmNGI1MTRkZjk1OGZiZjZlYSBsZWdhY3ktdHJ1bmsKKzYxMDYwIGIyOThjYjQ5NzVkMmRmZGMwMTBlYmRlYTA4YzdjM2U4ZjBlYzI2YTQgbGVnYWN5LXRydW5rCis2MTA2MSBmY2U1YWY1Y2UxNmE2ZDcwZjAxMDY1NTk5YWQzY2I2YmE4MjM0NTFmIHB5M2sKKzYxMDYyIDhiNTJmZjQxZTBlMjc5NjMzMGRiNGU2YzNkZTJiYTg3OTBiNDk3ZWQgcHkzaworNjEwNjMgZjg4YmViZWViNjczZTk4NjA4NDgwZWYxOTI5NmM3NzFmZjQzNWQwNiBsZWdhY3ktdHJ1bmsKKzYxMDY0IDNhNmNhODllZjc2ZDQ3NDI1YWRkM2Q0OTUxZDRjOTkyM2FmYTE2NmQgbGVnYWN5LXRydW5rCis2MTA2NSAxN2M4ZWM4ODlmZjQyYjBjZjI0MjFiNTVlNTU3MWY1OWQyYTM3OGIzIGxlZ2FjeS10cnVuaworNjEwNjYgYzVlNzdlMGYyZjMyZmZhZjQyYzc1YTc0ZGRjYTFlNzRmM2UwMTE3MiBweTNrCis2MTA2NyAxNDRlODQ2NzJlZjkzNmQ5NzA4MDE1ZmQ3MjUyMzQzMzJhYWNkZmUwIGxlZ2FjeS10cnVuaworNjEwNjkgNDI4OWM0MTA0Mjc5MDM2ZWZiODYyZDIyNDkyMDgwYzY4M2RhZjQyZiBsZWdhY3ktdHJ1bmsKKzYxMDcxIGY2ZGMwOGFkNTY0YjFjNjk2ZTY3YTNmYjQyMzBjMzliNmI4N2NjOWMgbGVnYWN5LXRydW5rCis2MTA3MiA0ZjYzOWFmNThhMTkwYzA5OGI2NjVhMzdiMWRlMDViYjQ2ZDg5MGYzIGxlZ2FjeS10cnVuaworNjEwNzMgZTgxZTQ1ZjgwMDJlOGMwOWEzY2YxMDcxMjc2Y2EwNzYyZTAzNzdmNCBsZWdhY3ktdHJ1bmsKKzYxMDc0IDQ1ZmMzZWNiMzAyM2VkODBjOTc1OTAxOGIyYjkyZWZlN2ExMDFkM2QgbGVnYWN5LXRydW5rCis2MTA3NSA5YjM4MWVkMWRiMTQzMzJlNDE0Zjk3OTQyMjZiMjI1NGI2NmFhNGYwIGxlZ2FjeS10cnVuaworNjEwNzYgNjI0YWU4N2YxYzk2MWZkOTFmNWExNTVmYmE2ODljM2Q2NGVmZDEyNSBsZWdhY3ktdHJ1bmsKKzYxMDc3IDA4OGRmYzBmNzFiNDk4MGNiOGUyOTUzMDY1YTBlYTQ3N2Y4OTg5ZDAgbGVnYWN5LXRydW5rCis2MTA3OCA0YWU0MzMxNGI3NDYyOGY5ZjljYmVjNzM3YTdlZjk0MTY2NmIzMGM0IGxlZ2FjeS10cnVuaworNjEwNzkgYmYxYWIzYmY3OTljODYzNjgzODhjMjlhOGNiMTJmNGI3OGRkNjk0NiBsZWdhY3ktdHJ1bmsKKzYxMDgwIGNhY2Q3YmExMWI3NzU4YzE4OTI5NjAyZmYyZTBjZmI2YmNmM2NmMzcgbGVnYWN5LXRydW5rCis2MTA4MSAyYjM2NzI1MGIwY2QzMzU5MTdiMzIwMjU0ZWU5ODg1MzYzNGFjYmUzIGxlZ2FjeS10cnVuaworNjEwODIgZmU3Mzk0YmM3OWQ2M2UyMzUyMzk4ZjEyNDA5NDA0NDIxOTk2YWFmYSBsZWdhY3ktdHJ1bmsKKzYxMDgzIDdhZmVmOGY0M2U0YTUyZTA4MDE4ZDZjOWNjMDE0MjI4ODAzNzEwMTUgcHkzaworNjEwODQgYzU3Y2IyZjhjMzUwNTJjNTQ2NDYyODgwYzZhNzkzMGU1YTIyOTkxMSBsZWdhY3ktdHJ1bmsKKzYxMDg1IGQxMzIzZmNmM2FhMTc5NTNkYzAyNGM2NTJmYjIwYjZlN2MwOTQwZDQgcHkzaworNjEwODYgZjMzZjY2YTIwODJmYmYzMjZmZjc0ZTYyZjRiZjI0NGUwMDE3MzA5OCBsZWdhY3ktdHJ1bmsKKzYxMDg3IGZmZGQzMWYxY2QyMDk0ZDI2YjhiMGMwYWI0Zjg2YjU1MDllNjczOTEgbGVnYWN5LXRydW5rCis2MTA4OCBjYTQ1ZWI3MWYyZDJiYTMxZWNkMmFmYjJiMmZmNWRlYmJmMTM1ZTBjIGxlZ2FjeS10cnVuaworNjEwODkgZTQyNWRkYTRmNjMwMDYwZGY2YWU4MmFhZmU5NTE2MDJkMTUzMjZjMSBsZWdhY3ktdHJ1bmsKKzYxMDkwIGYyZjMzZGI1ODkyMDBiZWMzYmQzYjc5NjkyODA5MDU0YzdlMTI5MmYgbGVnYWN5LXRydW5rCis2MTA5MSA3ZDczNDdkZDk0ZTg3N2Q3Njk5ZDY3ZGU3YzkyZTVmZDJlNmY0ZmFiIGxlZ2FjeS10cnVuaworNjEwOTMgZjc4ODQxNjRmMDg4OWJlYjYxMjBjMWUyNjY2ZmI1M2E2N2U0NDY3YiBsaWJmZmkzLWJyYW5jaAorNjEwOTQgMmM5MzE4M2I4YTNjMjY5NDQ2YzUzNGYwNWFiYzI5OTQ5NDVlOTAyYiBsaWJmZmkzLWJyYW5jaAorNjEwOTUgNmM0NjEyMjU1ZjYwNTJjMmFhYTQ5YzgxN2QyYTc4NjAwMmY3YzY2MCBsaWJmZmkzLWJyYW5jaAorNjEwOTYgYjc4YzNhNDM3MWQ1MTExMGEzNzU0NjhkNzA0ZTYwZDJiNTE2NDhlMCBsaWJmZmkzLWJyYW5jaAorNjEwOTcgZDE3NjkwYzUwNzY2NjgzOGM2Y2I5ZjdiM2EzYzY0MjgwNTBhOWEyMCBsaWJmZmkzLWJyYW5jaAorNjEwOTggNjU5MmU1YTkwYzJjZDg0ZjIxMGZkOWY2NmRhMmE3NDhmNDg0YjUxZSBsZWdhY3ktdHJ1bmsKKzYxMDk5IDhhYWYxNDk1ZGEzOTU5Y2Q4NDRjYjVhNmRkMTZmM2UyOWEzNjMwMTQgbGVnYWN5LXRydW5rCis2MTEwMCAzZTQzNWEyMTEzNTY5NjhkN2U0MGViMjMxYjllNmI1YTVlYjEzM2EzIGxlZ2FjeS10cnVuaworNjExMDEgZDQ0MzRmMDNiOTcwMjJiMjc1ZjA0NTZiYTAzNjYyYWYwM2FlODRkYiBsZWdhY3ktdHJ1bmsKKzYxMTAyIDk2ZDVhMTU3MzE2ZTM1MTgwOTI3N2Q4M2U0NjI5M2ZkNGU3OGI1OGUgbGVnYWN5LXRydW5rCis2MTEwMyA4YzNjNWI0ZWVmNTU1NzE5Mzk4NTZiMzMxN2EyMDYyNTExYjY4MTlkIHB5M2sKKzYxMTA0IDhkZDMwZmUxMWE0YjM0ZDEwNzdiZTgwOGYyZTBmMTRhZGI4NDM0NGIgcHkzaworNjExMDUgMTE4OGVkZTE1NzM1YjliODY5OTEwY2M0NmY4N2Q1N2MxOTdlYzZmNSBsZWdhY3ktdHJ1bmsKKzYxMTA2IGNjMjIwNzQ1ZTRlNTkzZTZjMzZiNmY2ZGYyZjc0YTU0MGNkODJlM2UgbGVnYWN5LXRydW5rCis2MTEwNyA1MDRiNDM1N2JkZGQzOGU3M2EzY2VlYTYyNmQyOTkwMzAwNDEyZTMzIGxlZ2FjeS10cnVuaworNjExMDggMmQyYjBlMTU1ZjE5OGZiYzZmNjA3ZjFjODI5M2I4ZThhNjA5ODU2NyBsZWdhY3ktdHJ1bmsKKzYxMTA5IGJmM2ZhMzdmZTc5Y2QwMzhjMmVkM2ZiNjQyY2I1NjQ0NmNjNzk0OTkgbGVnYWN5LXRydW5rCis2MTExMCAwY2I0ODE5NTY0NTJmYzVmNWMxMDFlZTNmMjQwOGM5OTY1NWFhYThkIHB5M2sKKzYxMTExIDI0MjU0NDMwZTg5YTBjOGUwNWQ3NWQ5OGY4MGQ2YmUzMjZiYTZlNjYgdHJ1bmstbWF0aAorNjExMTIgMDEyOGNlNzczNTRmNjA1MjZkYjhkYzg3ZWU1MDc2OTM0YjNiYTRjMiBweTNrCis2MTExMyA3MTBkNTI1YjA1NGM4MWViMmNlN2I2MmVhYzQ5YTIxNmY0ZGYwODhmIGxlZ2FjeS10cnVuaworNjExMTQgYzM4ZGNiN2Q5NGE2ZGE5YmRmY2FiOGY0N2Y5NDNlNTM3MjhkMjVmNSBweTNrCis2MTExNSBlNGZmZTY0OTk1NDgxYTk3MTA1YjkzMDBiODllZmQ3Y2NlYzZmNWI5IHB5M2sKKzYxMTE2IDU5NzYyZDY3MTRhMzEzYjk1ZDkyZDViM2RmNjdhNjM1YTJiMDBlMWEgbGVnYWN5LXRydW5rCis2MTExNyA5NzJmYzdkN2NiNzI2OTc4YzI4NTUwMjZjNDQyOGI3MWU3NDE1MTAxIHB5M2sKKzYxMTE4IDQzZTA4NDg0N2U1MzMyMzQwMWU4Y2Y3YzJkMDI4YzI2OGNjZjgwMjggbGVnYWN5LXRydW5rCis2MTExOSA3ZGEzNmI0OWM5ZTVhYWUyZjg1MDVkM2VjMDZiMzZiNjEwZGFhZGEyIGxlZ2FjeS10cnVuaworNjExMjAgYzU0NjUyMzY2NzcyOGM5NTcwN2RkMzg1Y2UwYWIyNzgwNmI1ZTMxMyBweTNrCis2MTEyMSBkYmYxZGRjNWY0Nzk1Mzc5NDc0NWY2ZmM5ZmRlMmU1NDI5ZGFlMGYzIHB5M2sKKzYxMTIzIGJjZTRjNDBkZjdkZjc0ZWZkODdmZWUyOTIwOWViMWNlMzM2ZjE5NDMgbGVnYWN5LXRydW5rCis2MTEyNCAxMDk2MmIzZjc3YTliMzgxYjYzMTgxNmFjYjE2YThmYzQ5Y2Q2NTk1IGxlZ2FjeS10cnVuaworNjExMjUgZmFjZjAxZjE1YjE1MzU1NTljMmJhMDVjNGY1YWE3MjA0NmI4OGYxYyBsZWdhY3ktdHJ1bmsKKzYxMTI2IDkzN2EzYzVhZjY5MTkyYjhlZDE4ZjRlN2FlZjZjMWU1OWVjZDBkYjggcHkzaworNjExMjcgOGNkOTg0YzE3ZGVjODVhYzA3MzkxODVkMGVjY2U3ZDBlNDlmYzU4YyBweTNrCis2MTEyOCBiMjY5YzJkMDNmZDJkNmEyNzA4ZWNmNjYzMGI3ZmVhMjE5MjViYTk4IGxlZ2FjeS10cnVuaworNjExMzIgMDk0MDcxM2I2NzI2Y2EyNmYzYmQ5ZTZmZjQ1YzBlODdiZjVkMGY3ZSBsZWdhY3ktdHJ1bmsKKzYxMTMzIDA1YzM5NjE5MWU0MzI5MWY3NjBiYzIwMjkzNzkzZjZhOTRmZTNiNTcgbGVnYWN5LXRydW5rCis2MTEzNSA0YTk1ODhiMWU0Yjk1ZGYxM2JkNTEwOGViYTM0N2MwNjFlZmUyMzE0IGxlZ2FjeS10cnVuaworNjExMzYgODljZmIzOGE0Yjk4NjIzY2EwNTUyNmQ2YWI5MjI2MDdlZDA4ZWUwZiBsZWdhY3ktdHJ1bmsKKzYxMTM3IDIwN2NhMGE4YWZkMDAyMzBhYmI1ZWNlMjQ3N2Q2OGZiNzMwYjJhNDAgcHkzaworNjExMzggY2ExMWNmMjRlYjg1NWY1Yzg2Y2MxYzQwZjA0N2I0NjVjYmU3ZTQ4YSBsZWdhY3ktdHJ1bmsKKzYxMTM5IDY3ZDQwNDg2Njg0NjIwOTRlZGYzZWNlNzU2ZjQwMjlhNjJmZDUwNzUgbGVnYWN5LXRydW5rCis2MTE0MCAwMmEwMWU1NzhkNmM1YTBiZTM0Mzc4MzA2NjYwYzNmY2M0ZDU5YzYzIHB5M2sKKzYxMTQxIGI3ZWU5MDc0Y2EwZWIzYjc3ZWZmZDJiMjMxYjMwOTE2NzkxNjBlYTAgbGVnYWN5LXRydW5rCis2MTE0MiBmYzZmOTA1NDVjYjQ4ZTVjZWY1ZjZlY2JiMTBmZTZlY2NkY2Q3OTdjIHB5M2sKKzYxMTQzIDAwMjNjMDQyMjhlNmIzNTMzMDVkNWNhZGFhOGZlNjU5MTgzMTgxMDYgbGVnYWN5LXRydW5rCis2MTE0NCA4OTQ2ZTI3YTQ1NjNiYzJkM2RiMjllNDYwZjk4YzE4MWFkZTc1ZGYyIGxlZ2FjeS10cnVuaworNjExNDUgOWI4ZmM0MDVmOWIwNGZjNTExYTZjMjM4MTExOTk0ZTgxMjI4NWM0NCBweTNrCis2MTE0NiA5YWQ1NDJlYTA1YmExZGE5YjAwNjFlMmVlOTJlOGM5NTA3ZjQwNjYzIGxlZ2FjeS10cnVuaworNjExNDcgNDRkMTBkMzkwOTJjNjVlYzJmZWJjY2FlNzI2Yzg2MmZmNGI4NzU0NyBsZWdhY3ktdHJ1bmsKKzYxMTQ4IDZhMDRkYmIwZDE0YjQ5ZDE1ZjMwZGEzZjc3ZDM5ZjVmNjRhMDllNjYgbGVnYWN5LXRydW5rCis2MTE0OSAzMTI3OTU2ZjNiMzNlN2QxZGZhMmY1ZTI3MjE1NTg2ODhjOTU1YmIyIGxlZ2FjeS10cnVuaworNjExNTAgYThmYmQ5MjcxNGE5YTljNDcyMjdiOGYyNmU4NzZmNDRlZTgyNjA3ZCBsZWdhY3ktdHJ1bmsKKzYxMTUxIDJkMGJkMDk1YzQyMGIwNzExMDAwZDliZTY2ODQ4ZjZjZmQ5NzJiM2IgbGVnYWN5LXRydW5rCis2MTE1MiAwYWRmYmE4YWU5NTcxM2M0ZTBkNzJmMTVkMDg5NmRhZmJmYTZiOGQ0IGxlZ2FjeS10cnVuaworNjExNTMgODJjM2IwYjVhYTkyNThkODhlMTdmOTdkMTVmMDhmMDcyZjQ4ZTdlMyBweTNrCis2MTE1NCBjMDlkYjc4YmQwNjZjY2IxMmQxNTg3ODlkYmRmMzQ5OGE2MTM4OTNhIHB5M2sKKzYxMTU1IGNjNTU0M2I1NjEwYjJkMDY1Mjg0NDQ2Njg0OTY5ZGVkOWVmNjVmNDMgcHkzaworNjExNTYgMGUwMTY5YjBlYWNjNmRkZjgwNjhkNWM3Y2QxODQ3M2E3YzMwYjlkOSBweTNrCis2MTE1NyA1YmEwNjY5MGMxODQ3OTliMDVjNWRiNjAxMTBlMjNmYThjNzBhNTM4IGxlZ2FjeS10cnVuaworNjExNTggZGYxNTgyN2YzNDg4MWI5YWYwOTM2MzUwODEzY2VkNWMxMjNjODIzMCBweTNrCis2MTE1OSAzNjJhNDZlN2MzM2EyYTZhZjY3YTc5NzQzMGZkNjRmYjkwNTc2NjZhIHB5M2sKKzYxMTYxIDIwYTQyNjc0YjExMTA0YWI5ODU4NjlhMWRiZTc0ZDE2MGU1ZjU0ZDMgcHkzaworNjExNjMgY2QxNWE1ZTljMWRlNTliYmVmZGE3ZjZmZjg1ZjQ2MTIwMDU2ZDNmNCB0cnVuay1tYXRoCis2MTE2NCBjMTI1YzYxZTA2YTg2MDY3MzIwYjUyNmQ4MDFmYTlmN2NlYmNkZjU1IHRydW5rLW1hdGgKKzYxMTY1IDcwYzQxYmQ2ODBiNWU3Y2IwMWE0MjU2YmVjZTliMzI0ZWE2NGQwODAgbGVnYWN5LXRydW5rCis2MTE2NiAzNDM5ZmEyMTVmYWVjMGFlMThjYjI4NDM5NGYxY2M1MDQ1OTVkYmVhIGxlZ2FjeS10cnVuaworNjExNjcgNWI3MDc4ZWNjZWU4MzY5N2Y1NDQxNzQyZGY4ZTlhZGM1NGU3Y2M4MiBsZWdhY3ktdHJ1bmsKKzYxMTY4IGE2MmY5NWE0YWRmYzVlMmFkMjYzNmUwNzY0OWJiYzc3YTQwNzU1MDEgbGVnYWN5LXRydW5rCis2MTE3MCA0MDYwZGIxMjZlY2YzNmM1MDU0MjhjMjRkYzZkYjU0ZjFkNTdhYzU5IGxlZ2FjeS10cnVuaworNjExNzEgOGJiZTUzMWZjZDNjOGNhNzFmNWI0MWQxMjZiMzhkZTFjN2NhZWU0ZCBsZWdhY3ktdHJ1bmsKKzYxMTcyIGY3MmIyZGU5OTdiOTkyNzg4NWE5NGM3MzljOWFjOTc4MWIyODdmYmQgbGVnYWN5LXRydW5rCis2MTE3MyA5NmNhOGM3Y2VkYzRkMDMxZWJiMjA4ZTVhZGE5MzE4ZTYwOGNhNjI4IGxlZ2FjeS10cnVuaworNjExNzQgNzYyOGNiNDAzYzUzZTFhMzZhZTNkMmY5NDhiMTcxNTU5NmE2NjM2NSBsZWdhY3ktdHJ1bmsKKzYxMTc1IGJiZGYwNmE4NmEyNDMyOThiMjEwNzRlOWFlNTNjYWNjYWMwODRjMzEgbGVnYWN5LXRydW5rCis2MTE3NiAwYThlZWNhYzVhZDFkYzkzNDdkZTRjYWI0NzI1YjgxNjExZjA1ZmVhIGxlZ2FjeS10cnVuaworNjExNzcgZjY1M2MwYjg5MTZiOGU1NjViNzA3NjZkOTFhM2YyMjUwZDRlNjY4OCBsZWdhY3ktdHJ1bmsKKzYxMTc4IDQ3MzI4ZDc2ZThhYmJkMTc2MzFlZDY2ODA1Yjc1MmU4ZmMxNWEzYjggcmVsZWFzZTIzLW1haW50Cis2MTE3OSA1NGYxY2I4YTgxZjY2MDI1YzdlZjEyNmU4ZTdlNDRlYjQwMzU2ZDMyIHJlbGVhc2UyNC1tYWludAorNjExODAgMDU2NTEzMGQ3ZDlmNjRjMGRmNDQwZTVjMjE1ZjJhNGRlODM0NjBjYyByZWxlYXNlMjQtbWFpbnQKKzYxMTgxIDFmN2Q2MjhjNzBhOWFlZmU3NjJjMmMzMjIxMDg3NmZhZjhkNjRjNzggcmVsZWFzZTI0LW1haW50Cis2MTE4MiA3YTFmYzYxZDVjM2U0NWYzYTIyMTVkNDJjYTg1Njg2MWExODBkMTE5IHJlbGVhc2UyNC1tYWludAorNjExODMgNWNjYjZlYjIwMmZmMjFjMDE4MDA0NzU1NWVjYTY2OWJiOTI2Y2UxNyBsZWdhY3ktdHJ1bmsKKzYxMTg0IDg4YzFlMTdjZWZmY2YzNTkzZmIxYjViMGQ2MTc0NmFlYzBhZTk4MWMgcmVsZWFzZTIzLW1haW50Cis2MTE4NSA4OTNjN2JkNGE5MmJkODg5YTg1ZTY5MWY0OTE4OGMzN2IwYTcyMzU3IHJlbGVhc2UyMy1tYWludAorNjExODYgNTY2ODFkNWJlZTcwOTMwYmM0Y2Q4MWMyODkxZmNlNGMzMGVhNjcwYSByZWxlYXNlMjMtbWFpbnQKKzYxMTg3IDRkNzEzMDFhNmQ0YjdmYTk3OGUwZGUyY2YwYWIyNzFhMTRlYWUyNmIgcHkzaworNjExODggYTMxYjY1MDUxNWNiOWNhNDFjNTdjMTVkNGJkYjczYmMxMzhlZGNmMCBweTNrCis2MTE4OSBjZjNhODBmMWRhN2QwN2EwMzRmZTQ3MTNmMDQ4ZjM3OThlNmE0OWUxIGxlZ2FjeS10cnVuaworNjExOTAgNjA2OGI3NWVjMjdhMGYxOWM3MjAyYzgwZTA4MGRlN2ZlM2Q5ZjRhMiBsZWdhY3ktdHJ1bmsKKzYxMTkxIDQ0YWQ3OGZlMzVmYWIxMzE3Y2ZjZDAzMTg3ZjQ3Njg1MTFhZjFlNjggcHkzaworNjExOTIgYjkzMmYwMzVmYjNlZjQzNmRhYjAwNjIxYjUzZTdmMzEzZmQwMGZlMiBsZWdhY3ktdHJ1bmsKKzYxMTkzIDI0ZjQyMzBiYWViZTdkZmM2Y2IzNzY5ZmU5NzliMzFkYTY5MTc2YTcgcHkzaworNjExOTQgYzZkOWEzNGYwMjRmZGJhNDY2YTkyMjc5ZTNmMTE1NmMyOTE3ZGUyMiBsZWdhY3ktdHJ1bmsKKzYxMTk1IDJjNzNjNTgzM2YyMDA1YWU5ZjU2ZGNjYmM1ZjlkMjA5YTMyMDVmMmIgbGVnYWN5LXRydW5rCis2MTE5NiA3ZTRiNzUzYWZlYzZlMTc5NGUzN2FjOGVkYzY0MzI1MWU0MzVkMmExIHB5M2sKKzYxMTk4IGE1NTEzNmM3OGI2MDQxZDNlZTZmNTA1ZmUxMWQ1ZTlhYjQ1NWJmZmYgbGVnYWN5LXRydW5rCis2MTE5OSBhMThhNDI0YzJiZDM0ZTc4N2Y5MjMzODcxNmQ4MmQ3ZDQ4ZTkwNzA1IGxlZ2FjeS10cnVuaworNjEyMDMgNDFhNzA3NzQ0YmM4OThkY2EzZGZiMGQ0YjU3NzJmNTIyMzE1MWZmMSBsZWdhY3ktdHJ1bmsKKzYxMjA0IDYyODJkZmQ1ZGM0OTRmNDA5MWJhMzI4NTI5NWI2OWEzYmViNDczMmMgbGVnYWN5LXRydW5rCis2MTIwNSA4ODJlYmExNDUxMTk4ZDVhMGZmZDgxYmYyMTc4ZmYxN2FkZjg3YjMzIHB5M2sKKzYxMjA2IDI1NDA2YjNmZjk3YTZmZDI1ZGQ1NTExZGQ1MDVlMzE5YjI4ZTRhODkgcHkzaworNjEyMDcgNjVlZjYwOGRkNjZjYjA0MzIwYjVjMjcxY2Y1NzA1Y2Q5OWIwZTQzZiBsZWdhY3ktdHJ1bmsKKzYxMjA4IGU5OWUxZDhiODA3NzcwZWU4YmU2YjFhYjM1MTY0NTAzMGQyNzBkOTMgcHkzaworNjEyMDkgYzUxOGYzOTQ3M2ZkMGI5MDAzZDgzODAxNTIyMzY1YmVmYmM1MmJhYyBsZWdhY3ktdHJ1bmsKKzYxMjEwIGExNTRmMTk4MjU5MjhjYmFmMWYyZmM0MzI3ODliZGUzZjJlN2E0MGUgbGVnYWN5LXRydW5rCis2MTIxMSAwNzIzOTJlZDRlYTY5MTM5MTc3MWY0MDk1ZDM5Nzg2ZmQwODc1NTllIGxlZ2FjeS10cnVuaworNjEyMTIgODQwMTM4ZTI0OTgwYzg5OTc0NjNjM2Q4NjY0MzE0MDAwMGJkMGFjMSBsZWdhY3ktdHJ1bmsKKzYxMjEzIDJkNTUxZDA0NjAyMmUxYjc0ODY2YTY1NTQyMzc5YmU5MmZiZDNiYjcgbGVnYWN5LXRydW5rCis2MTIxNCA0ZDM2MWYwMTY0MWNiNjExYWIzZmE5MDNjMGVmMzQ4Y2M2ZmEzOTQ0IGxlZ2FjeS10cnVuaworNjEyMTcgOTFkNzU3MmUzNWExY2QwMTBlYTAxNGJkMzhkNDY3YTdjMDIyOGM3OSBsZWdhY3ktdHJ1bmsKKzYxMjE4IGQ3ZTRjNjNlYmNhZDA3YmU2YjJiYzE4ZTAzYzI1ZWQxYzMyNjRhMjQgbGVnYWN5LXRydW5rCis2MTIxOSA1NDg5YWY2ODY0MDhjMWVjMDcyYmEwYjg5NmJmMzMxYjEyZWQyZGUxIGxlZ2FjeS10cnVuaworNjEyMjAgM2ZjMDljY2YwMTQxODVkMmNiNGNlZjFjNWFlMzUwOTYxOTY1MGY4NyBsZWdhY3ktdHJ1bmsKKzYxMjIxIDBlMjI0YWEyMTlhMjFiN2ZhMjI1ZGExM2IxNWU3MTAxNGMwOTQwMjggbGVnYWN5LXRydW5rCis2MTIyMiBmM2ViNDU3ZTk2YTc1YzNmOTc3ZTU3MGIyNWUzMWJkODEyZGU1ZjBlIGxlZ2FjeS10cnVuaworNjEyMjQgZTQ0Yzc0NWJlYzBiYWRiNzkwMTZlYWNkMGNhNmIyZjNjZmU4MTBhZiBsZWdhY3ktdHJ1bmsKKzYxMjI1IDRlYTM2YzAxMmEyZGU1MjI3NDIxMjFkNDkzMjY1MjljOThjMGZiMTkgbGVnYWN5LXRydW5rCis2MTIyNiBkZDAxNmE2ZGRjYzVhOTAyOGYwNWJhNTE3YWRkMzc3OTQ3OTRiYTlmIGxlZ2FjeS10cnVuaworNjEyMzAgOTdiZWEzOTIzNmE5M2I2OWM0NGY5MWJkYTk0MjY3MTM2MjYyY2U1OCBsaWJmZmkzLWJyYW5jaAorNjEyMzEgMmQ0MjUzMDE1ZjU4NDBhMTRjYjRkYWFkZDc3MDc5MDhiYTU5MmMzMCBsaWJmZmkzLWJyYW5jaAorNjEyMzIgOTZhYTZkMDI3ZTJlNzY5MTgxNmU0OWIzMDRkOTc1ODI4MTQyMWNiMyBsaWJmZmkzLWJyYW5jaAorNjEyMzMgNTU0NmRjNGE0MjZhYWE2Njk5YjRjNzdiZDIxYWNkZTY3YmJjNTM3ZiBsZWdhY3ktdHJ1bmsKKzYxMjM0IGQzODdiMDFkYmMxYzlkYWFmOTA2NmIxMTY4MmU3Yzk1ZjUzMzMzYjAgbGVnYWN5LXRydW5rCis2MTIzNSA5MWNhOTU0OTkwNmFjYWJjOWFhNjU3ZTQxZjZjMjVlMDI1ZGM0N2JlIGxlZ2FjeS10cnVuaworNjEyMzYgNDk1NzAwZWUzMzQ1NmY3NjRjZWMxYzE0NTI5NTI2OGYxMzY4MmI1NCBsZWdhY3ktdHJ1bmsKKzYxMjM3IDhhNWM3NWVmYWU0YzIwYmU5YTc0MTliOGRiMTBhZTFlYzI1NjZmMGYgbGVnYWN5LXRydW5rCis2MTIzOCBkZDMxOGMzZjZjYjc5YTc0OTU5YmY2YTJmNTM1MWFjMmY0ZjE0NGRkIHB5M2sKKzYxMjM5IDAwY2IwYTM1ZmI0OWIyZmM5N2Y2Yzc0Y2JmM2M3NGNhMjUxNmRhZDUgbGVnYWN5LXRydW5rCis2MTI0MCBmZjNlOWFlYWE2OTIzNWI4OTI1OTIwNWVlYTMxNjZlN2MxZTYzMTM4IGxlZ2FjeS10cnVuaworNjEyNDEgMzBmYTY3NzcwOTZmMjEwMmVkN2Q0Y2NjODc2MmFkZGIzNjRlYTY0NSBsZWdhY3ktdHJ1bmsKKzYxMjQyIDExZTllMzY2N2IzNjVjZGVkNzdlOGMxNzZlYzI5YTkyMWNiMDgyYzcgbGVnYWN5LXRydW5rCis2MTI0MyBiZWFiOWUxMGExOGJkZTk3OGY0MjZmOTBjOGY4OWE4ZTA5MDgyYjYyIGxlZ2FjeS10cnVuaworNjEyNDQgOTk2MGZkMmY1ZWE5NDA4NWFlZTY5OWJjYWQ5ODBjNTA0NTVhZjllZiBsZWdhY3ktdHJ1bmsKKzYxMjQ1IDFhNjhlY2UxNTQ3YWI0N2Y3Mjk3Y2RmYmU4NjNhZmQ2ZGNkYWI1YTUgbGVnYWN5LXRydW5rCis2MTI0NiAyMzQ0MDFhZGQyOTk4ZmJmYTU0NTc4NDhjNWY0OTg1MmIzMjNlNGZiIGxlZ2FjeS10cnVuaworNjEyNDcgYzlkNjZiZGJjY2NkNDRhMzU5YzViYjgzODNiNGUyYWRiNWM4MWRlNSBsZWdhY3ktdHJ1bmsKKzYxMjQ4IDQzNjEwNTEyNTQ0NTkxZjc4ZTg3ZTFkMDcwZmViNzIzNzUzNmFmMzAgbGVnYWN5LXRydW5rCis2MTI0OSBmNTI0NjkxMWM5MDNmMGMzZmVlMWY1NGZhOGU5MTBiZTEzNWYwYjlmIGxlZ2FjeS10cnVuaworNjEyNTIgMGNkNGFkMWM5MTUzZWE4YTE0MTY1OGI1MTUyN2M1NDgxM2MyM2JiMSBsZWdhY3ktdHJ1bmsKKzYxMjUzIGQ0MWE0MjA2NDA1YzEzNWZmMGQ1ZDI5MWVhYjZmZTRlMTY5NDY3ZGYgbGVnYWN5LXRydW5rCis2MTI1NCAyMjE2YjEwMGIyZDJlZGVmZDIzZmVhZGFmNTZjMWVlZmI4ZWE2YjA4IGxlZ2FjeS10cnVuaworNjEyNTUgNDI4ODliMWE3ZGMyNTVkZDgwNTBjZjkzMDgwZGI4NmJkYWRmMTUxOCBsZWdhY3ktdHJ1bmsKKzYxMjU2IGMxOTdlMTg0NDliNDA0Zjk1M2E1Njk3NTVjODBhZDFkMDk2MmZhNjEgbGVnYWN5LXRydW5rCis2MTI1NyBlZWZjNjA0YWQ5MzVhYjg0MzA2MTE2ZDk5NmU1ODg2MzE0NWQ0NzY3IGxlZ2FjeS10cnVuaworNjEyNjAgZDBiZTJjMzZjYmY4ZDc5OTIyMGVmOTAwZTU4ZGY5NzVlYmUxMTQyMSBsZWdhY3ktdHJ1bmsKKzYxMjYxIDczOTVlZDBmMGY3Zjc3NDM5NjliYjk3ZmE2Mjc0ODU0OTk4ZWFiNjcgbGVnYWN5LXRydW5rCis2MTI2MiA5YjA0OTQxNjczZjE3M2YyMTRjNzQ5MjMyMjU3Njk4MTM4N2Q5YzJhIGxlZ2FjeS10cnVuaworNjEyNjMgZWY4OTMzOTA0ODdiYWZkMDFlODhhZmM4ZTNkZWE0OGNkNGVjNzlmMCBsZWdhY3ktdHJ1bmsKKzYxMjY0IDYxZDIyNzAxYTVlNWViNjI2YWQ3ZGQwOWZmMDYxMGE0NWNmZmRiZTYgbGVnYWN5LXRydW5rCis2MTI2NSBiMjYyYmVjZTEzMjNjYzNlOTExY2QwMWMxOWZkZTQxZjIwYTA0ODRlIHJlbGVhc2UyNS1tYWludAorNjEyNjYgYjhlZjcxYjAxNDQ2MTA3NjhhNTg0Y2QxNDg2MTQzMGQ5YmU5NTMzMCByZWxlYXNlMjUtbWFpbnQKKzYxMjY3IDRjNDc5OTNhZmIxYjEyMzBkY2FmOWQzMDc1M2I2ZWIxNmI4ZWUzMTcgcHkzaworNjEyNjggMGI4YjNlNjYzZTNhMTVjNzY0N2VjMTgzN2IxYTc2ZjUxNGJiYmQxZCByZWxlYXNlMjUtbWFpbnQKKzYxMjY5IDA2NWM0YTc2YWMwMWYxNWNhNGYzYmIzNDMwMThjMDNiMjQwYjJiYWEgbGVnYWN5LXRydW5rCis2MTI3MCAxNTc0NmJmNGEwYTYzYzQ5OTA5MzgzMjc2YTlhYTFjZjRlOTQ2MzcxIGxlZ2FjeS10cnVuaworNjEyNzEgYTRjMjY1NTY1Y2I2YjY3NzQ2YzZjNGRkMjI1MzE2ZTc3NDliZDY0MSBsZWdhY3ktdHJ1bmsKKzYxMjcyIDM5ODAzMTNkOWI4YjI3YzBlMjIzNzBjZjIxYzhiNDYwMzcxNTIyZGQgbGVnYWN5LXRydW5rCis2MTI3MyAzNmZlZjk5YWYxOGQxMjE0M2QzNjhjZGE4ZTE4MTAxMTRhNjk4MDE2IGxlZ2FjeS10cnVuaworNjEyNzQgZTliZTZhZWI0ZGYwNjIxZmIyOTIxOGU1MzQ0ZWU2OGIxY2Y3N2JkNSBsZWdhY3ktdHJ1bmsKKzYxMjc1IDg5OGRjMGY4YWI2MzVhZjdlODZmYTIyOWZjYzE4MTMzMWU3YmNkYTAgbGVnYWN5LXRydW5rCis2MTI3NiAxN2IyZWEwYWZhNjExODg4MjgxYTBmMjQ5YjBjNmViMTAxMzVjOGU2IHJlbGVhc2UyNS1tYWludAorNjEyNzggYWYyNjdlNTRiZjFkZGU4ZDhiNjdkZjAyOWYwNzk5ZWFkMDdlODQ4MyBsZWdhY3ktdHJ1bmsKKzYxMjc5IGJiYWI4ZjY0ZjhkNjJjNTY5YzZkM2M4MDFmMThjOTMzYmQ0MDg3MmUgbGVnYWN5LXRydW5rCis2MTI4MCA5ZWNiMDNlZjFjNjI0MTk3YjUyMzk2Yzc2YzVmMTE2ZGM1ODUwMzM1IHB5M2sKKzYxMjgxIDQ4NWIyMTk1NDc0NjA5N2IyNTA1MjIyNGNlNDllMTYxOGVlMGQxNTUgcHkzaworNjEyODUgNDRhYTU5Zjg1OTFkYWE2ZTc3NGRhOGM2YWZiYzUyODZkMmNlNWI5NiBsZWdhY3ktdHJ1bmsKKzYxMjg2IDBiZTliMWNmMWIxNjIxMTY3YmRhYTJmNzg1NzBkOGNiYWU0NWJkODIgbGVnYWN5LXRydW5rCis2MTI4NyA3MTIyZmE2NTY5N2I4YTczZTYxMGRiNDg2ODEzYTAzZTk2YTMyYWQ4IHJlbGVhc2UyNS1tYWludAorNjEyODggNWY0OWI1NjlkZWRmMTE0YzVmZWNiYWI1Y2Q2MDJmOWUyYTg1OWE4YiBsZWdhY3ktdHJ1bmsKKzYxMjg5IGE4NzU0YzBkYjUzZjUwMzEzZjVkZmM0MTc4ZWU2ZTI3ZjQ5NDdmZGYgbGVnYWN5LXRydW5rCis2MTI5MCAzNDM1OTdjN2Q2ODJiMzU1MjU4MDM1MmRlZGRkMGNkYjM2OTc4YTA0IGxlZ2FjeS10cnVuaworNjEyOTMgOWJiZTU1Zjk4NjdlZTk0ODU0ZTM0NWY5YWY3ODdmY2RlOTE0NDVmNyByZWxlYXNlMjUtbWFpbnQKKzYxMjk4IDM5MWRlMTQzMjI2ZmQ3YjM3Nzk2YmM5NzhmZjNmNzhmMDViMDg5MTkgbGVnYWN5LXRydW5rCis2MTI5OSBmODZmYTVmZWFmMzE0ZGZhOTdiMDYwYjAxYmEyMzY3NDIzMzc4NDc3IHJlbGVhc2UyNS1tYWludAorNjEzMDMgOWNmNzA3MjljMjNmMjA4OGJiNTAzMGIwOTA5MzliMzViZDIyZGVhZSBsZWdhY3ktdHJ1bmsKKzYxMzA0IDM3YWE0MTZiNGM0N2I0ZWY1ZjlmMDkzYWM4Njg3NTc0MjMwYTE0YmEgbGVnYWN5LXRydW5rCis2MTMwNSBlNWFhZGMwNWY2ZjUxZWNkNWJkMDZmNzYyYWZiMTZlMDEzNzIxZjkwIGxlZ2FjeS10cnVuaworNjEzMDYgNDUwNTBkMzc2ZDU3ZmI4NmY4MDQyNDVmYmZjMDY4ZWY2ZmY5MTQ5YyBweTNrCis2MTMwNyBjMjdhYWJhZTA2ZmRjNzViMjI4ZjY4ZDNkOTNmMTA0ZmQzYTIzMmQwIHB5M2sKKzYxMzA4IDlhNzI3YzlmOWJhYTI1Nzg2NGQ1M2E2N2UyZDNhMDAyMWE5OTdiY2EgcHkzaworNjEzMDkgYWY0NGNlZjFjZGY1YTU1YzkzZmQ5ZjE3OTJkYjBhOWJhODkyZTViNyBweTNrCis2MTMxMCBjODMwNjE2YmQyZmM5MzEwNTNjNDE3OTQzZjE0ZTk0ZjRmMjUzNmQ5IHB5M2sKKzYxMzExIDk0MDUzYjI3YTM1MjU5MGFjMjBkNjZiZjVkOGU2ZWVkNDExMTU4YzEgcHkzaworNjEzMTIgNTA2NTQ3ODIyYjhkMDEwMjJkYTY1NTAwZTRiNjFjYTdmZTk2ZDUyYiBsZWdhY3ktdHJ1bmsKKzYxMzEzIDE1ODQyMDk0YjA4OWEyYzc4YjUwMjVjNmM3ZWQ4ZDhjZDlhYWI2MmUgbGVnYWN5LXRydW5rCis2MTMxNCA4YmFiNDE4Y2M4NzkzYjhjMDA4NmEwMDI3YWE4MThlNWE4MjcyNDhhIGxlZ2FjeS10cnVuaworNjEzMTcgNWI0MjM5YzFmOGY4MmY2MDlmODg4MGE0MzRjMTM5YzFkNTk2MmUyMyBsZWdhY3ktdHJ1bmsKKzYxMzI5IDdmMjNiODA0ZTk0YzA0YWM0ZmI3NWUxNjU3MjljNGRmMzY3MzZlZmIgbGVnYWN5LXRydW5rCis2MTMzMCA2NjA3MGZkYmYwYjkzMDc3MzBjNzVkMTliN2MxMmI1OTkxMWU1ODlhIGxlZ2FjeS10cnVuaworNjEzMzIgNmYxOTU3NTVmMTQ0ZTgwMmRjMWQ4ZjcyNTE2ZGQwYWExZWI4OTcyZiBsZWdhY3ktdHJ1bmsKKzYxMzM5IDQ1NmNlZWM2NTM1N2MxNjY1N2IwYWRiYmJjZmUyNzIwYWYwN2FiMDUgcHkzaworNjEzNDAgYWVhYTMwMzE0N2VlYjIzZjRjMGI0ODAzMTZlYzM2NGU0MTI2ODlhNiBweTNrCis2MTM0NCBiOWQ2Zjg3MGJmYjE2OGM1ZmMzNmNkZWNjNzBhMTk1ODMwNzJjNTU5IGxlZ2FjeS10cnVuaworNjEzNDUgZDhkZjRhYTA2MjYxZGU1ZTRjMGFhMDUxZTQ0ODY5N2Q0NzkxZTQzNyByZWxlYXNlMjQtbWFpbnQKKzYxMzQ2IDIwMjI5NDNhZDQ1MGM0MWQ2NDcwOGZiNWNhY2EyZDI2NzJiNWI4ZjggcmVsZWFzZTIzLW1haW50Cis2MTM0NyA1ZDc2NGQ1MThmNjVlYmI5MTA4NTY5NzI3YTdjODhiMzIwYzI3ZWI4IHJlbGVhc2UyMy1tYWludAorNjEzNDggZTg1NzJkOWFjODVlZjNkM2U0YzAwYzRlZDhmMWNhN2E2YWVkOTlkZSByZWxlYXNlMjQtbWFpbnQKKzYxMzQ5IGY3YzM2NThjNzFjM2Q2YzMyMDM5ODI1MDczMjc1ZjVkNzgzYWE0MDMgcmVsZWFzZTI1LW1haW50Cis2MTM1MCAxNjJjNjk1MmVhMzRkNGU3MWY1Zjk5OTdmZDgwYTFiNjg4MzlhMmZkIGxlZ2FjeS10cnVuaworNjEzNTEgY2U1ZjZmZDU3OTEzMmY0Yjk1MGIwOTU1YWRjZjRlYjgxODQwN2JlOSBsZWdhY3ktdHJ1bmsKKzYxMzUyIDdmNGU2MDIxYmM5ZjYwOTRmZTJhMGQ2YTc1MGIwYTZlYTdjMGVlMDQgcHkzaworNjEzNTYgZTA5YmMxYzUyOTViYzE5ODQ1YTBmMzU0ZGEyZTgzMDY2ZmViOGVlNiBweTNrCis2MTM1NyA3YWRhYWI2NGViNzJlNDdlNTdmYmI0Y2NiYWY4NzAzZDBjMmY1ODEyIHB5M2sKKzYxMzU4IDc3NTJhNTdmOWM0OTBkMzFmMGYzYWY4YzYxMjE1NTM2OGUzOWRiZDEgcHkzaworNjEzNTkgZTQ0NjkxMGM5ZDQzN2Y0ZDRhMDMwYWIwMTQ0YWRiZDExYWZhMjRiYSBweTNrCis2MTM2MCA3NDBiNTgwOGM1N2FlN2IzZDRjNzkzYmFkZTUxMWNmYWY5ZjUyZmVkIHB5M2sKKzYxMzYxIDQyYTZhYWQzOWU1Y2U5YmQ0NWZiZGEzZjdmNjk5MThiN2Q2ODM1MzYgcHkzaworNjEzNjIgN2I5NWM1N2I1ODIxYmZhYzI3ZWU2YjE1ZTQ2MTZhZTM5MGMxZTNjYiBweTNrCis2MTM2MyA5ODYzMzhlYjBjMGRlNTI4NjI1ZDQ1YjlmYTUxYzNlZmM4YjkwN2EzIGxlZ2FjeS10cnVuaworNjEzNjQgNzQzMWYzZmFhMzU2OGE0MmUxZWQ0NDNmYTZkMzViNzlhOWFhOTQxYiBsZWdhY3ktdHJ1bmsKKzYxMzY1IDkzOTVhMjJhOTY2YTk0Y2EwODhiNWM0YTdkNTkxMjQ0ZjRiMjZkNTAgbGVnYWN5LXRydW5rCis2MTM2NiAwMTFkNzlhZjA1ZWE5MTNmY2JmNzMzZDVlMWVmMjRkNmJmMmFmOWVjIGxlZ2FjeS10cnVuaworNjEzNjcgZDUwMjRlZTllODhhMzFiMWI2Yzc0NDQ4NDIxZTEzYWQ2ODAyMzQzYiBsZWdhY3ktdHJ1bmsKKzYxMzY4IGQ3MmQ1MjdkZTcxMTk2NTY1YWY3MzVmMmE4NDdmNDg4OTc1NDdhN2QgbGVnYWN5LXRydW5rCis2MTM2OSBjYmI5ZTJmNGIyMDI4M2FjYTMzNTRhODljZGY4NDZmYjI3MTY1MWFhIGxlZ2FjeS10cnVuaworNjEzNzAgZGI1YjMyMWVkY2JiMmMxZjkzZWEwZWMxNDFmOGI1Njc2M2ZjNmRkNyBsZWdhY3ktdHJ1bmsKKzYxMzcxIDZhMzNkNGY2ZjE2Zjc4MjdlNmUyZjFlZjRlNzA3MzNhYWI2MTRkYTkgbGVnYWN5LXRydW5rCis2MTM3MiA1NDNlOGRkZTM2MWY4YTYxYzIxNmU3NzRhYzRmZmU3NDZjNzUxY2JjIGxlZ2FjeS10cnVuaworNjEzNzMgNDlkYzlhZjkwYjNkMWYyOWRlZGI1YmFlYzM4NzRkMzYyNjk2YmE0YyBsZWdhY3ktdHJ1bmsKKzYxMzc0IDY2MzQxYmVkODJiMzA1M2ZmZTY2Y2U4MWE0ZjE5MjU4ZTA0YzBmOWEgbGVnYWN5LXRydW5rCis2MTM3NSBkOTdiYmFkOWEzNWVlZWUyMDM3MWMyNDFjNjRjZmQ4ZGRmYjEwOGFhIGxlZ2FjeS10cnVuaworNjEzNzYgYmM4MTMyNjVlMmM2NTMzYzU1MGNjZWZiZmU3MzI2ZjFlZjhlYTM1NSBsZWdhY3ktdHJ1bmsKKzYxMzc3IGUyZTU0MmZkYWNkMDlkZWI4YWRhMzVmNjNmNzdiZmZhNzQ4ZjgwN2IgcHkzaworNjEzNzggZjZiM2NmMmYzMzMxMWZjZTcxNTFiNjFmN2M2ZDhkMWRiNzEzZTkyNCBsZWdhY3ktdHJ1bmsKKzYxMzc5IDdjNzhlYTcwNzIxOWVlNGQwMGU2NDYzNWNjZGExYWQyNzE5ZmI0ZDggbGVnYWN5LXRydW5rCis2MTM4MCBlN2FhOWI1ZjIxYjUwZDI4ZDg1ZDA2NzRhYmM4NTczNGM4YjBmNWVmIHRydW5rLW1hdGgKKzYxMzgxIDUzNzM3NTFhZDRiNDEwYjgyNzdmNTE0Y2YyNGMyZjUzN2ZjZmUyYzMgdHJ1bmstbWF0aAorNjEzODIgMGUwYzE0OThiZTFhODBmODZiOTk0NzRiNWNlMmFiZmQzM2RlYjNiZCBsZWdhY3ktdHJ1bmsKKzYxMzgzIDM1NGUzNzdjOTU5MDI0NGFiZTA3YTk3OTJhOGFhMDJjN2M2YzFhNjMgbGVnYWN5LXRydW5rCis2MTM4NiAxNjU4MGRjMTQyOTRlOTIyMzk4NGVhOTEyNDBjODljMTUyNThmOGU4IHB5M2sKKzYxMzg3IDAwNTNmYzlmNWExZjZlNzA1ODY0NDhjOGU5MmU1NGRmOWQwYzU3NWYgbGVnYWN5LXRydW5rCis2MTM4OCA5Yzg5MDllZTU3MWY0YzUwNWY1MTFkNWQxYTM3YjZmZGE1NTNmNWI5IGxlZ2FjeS10cnVuaworNjEzOTIgYjk0MGIxYWQ5YTNhYTIxOWEyMWE5NDhiMTIxN2YxZGQwZTA2MGZhZSBsZWdhY3ktdHJ1bmsKKzYxMzk1IGMwN2M1YzdhOTE0ZWUzMWY5ZDcwYzQ0YmEwZWZmNjQwMTQyYzBhMzAgbGVnYWN5LXRydW5rCis2MTM5NiA4MjNlMTFlYmY2NjgyOWJhZjU1MGI5MTYwMTNiNTM0ZmQ3NDVmNzA5IGxlZ2FjeS10cnVuaworNjEzOTcgYTVjOTM5MjI5ZmYyN2ZiNDY0NmQxZWVjYjFhMWVkZGFiYjhmZWQ4YiBweTNrCis2MTQwMiAyMTJlOWM4YWQwODdlYjE2Yzg5NGUwMGVjOTg1MjAxODQ1NTlmMmNiIGxlZ2FjeS10cnVuaworNjE0MDMgNTllYjVhZjYxY2Q3MzY4NTE3Mzk4ODdhNzA1MmI2NmVlMmM5OWJlYSBsZWdhY3ktdHJ1bmsKKzYxNDA0IDUzMWU2MjQxNmVlYjY3ZDVlOTI5N2UwNzg4MTNjMjI4ZmQ1OThkZTAgbGVnYWN5LXRydW5rCis2MTQwNSAwZDEwZjE5M2I5YmUyNWE2ZmVjODk5YWM0M2ZmNjIwZjExMWRiNTNmIGxlZ2FjeS10cnVuaworNjE0MDYgNGUzNThlZDdmNTE1NjE3ZmZjN2JhNTJiMDFlNTNlYzQ5ODMxOGIxMCBsZWdhY3ktdHJ1bmsKKzYxNDA3IGZlYTdiYTg5MTBhOTYwYmY3MGRkOTJlNGU3N2Q3NzAxNjE1Y2RiOTEgbGVnYWN5LXRydW5rCis2MTQwOCA4MzJjODIwZTlkMTQ0Y2I3NmM4Nzc4YWQ2ZmNmZmUyMzJiMWY1YzQ2IHB5M2sKKzYxNDA5IDA1OGZiZmI5ODVhZThhMGI2NWQ3MDQxNWE2MTk5MTVlOGM1ZGFkNDAgcHkzaworNjE0MTAgNzAyNjU3ZWZhYjliZTkxMzkzZDljZWI0YzkyNzA2MzYwZDk1OTRjNiBweTNrCis2MTQxMSBhZTIxYThkNzAzMDI2ZTE4MjIyMzBjNDZlZmI2ZDFhZjZmMTU2NTRmIHB5M2sKKzYxNDEyIGQwYzY3N2RkZDZiODljMDE0ZDY1ZjkxNzQ4NzIwNTdmOGIyNjk2YmQgcHkzaworNjE0MTMgMmUwZTE0MDI5NTlkM2RlNzA3YzUxZjllZTEyNjFiMDQyMTQ3ZmFhNCBsZWdhY3ktdHJ1bmsKKzYxNDE0IDM5ZmIyYzc4ODQxZWEyNTgyNGJiMWFiMDY5NmEyYTk3ZGI1YjlhMDEgbGVnYWN5LXRydW5rCis2MTQyNiAzNzk3MzEyNWIyYzBjYzBhZjk1NzhmYmQzYjU2M2I4Mjc1NDI1YTZkIHB5M2sKKzYxNDI3IGQ3MGZhYjk3ZWJiNWVhOTczMTA3NWUzOTdiOTE4MzFiMzE0NTBlNGYgcHkzaworNjE0MzAgMWYwZTdlMmRiZTE1Y2JhZTllNTY0NWM2MTM0ZmNlODI2MmJmM2MyZCByZWxlYXNlMjUtbWFpbnQKKzYxNDMxIDc5ZGVhNjUzMzJmODZmMzdmOWM2NTNkZTI0MGMxOGVlZjk2YWZlZDQgbGVnYWN5LXRydW5rCis2MTQzMyAyZmYzZTQzMjE3YjdlNTQ0YTM5ZTU0NTgzZTUwZWZkOTY0NzVhMTliIGxlZ2FjeS10cnVuaworNjE0MzQgNGQyOTEyN2YzZmEwZDdiY2E3MjljZGM1MDFkNjBkMjIwOTI2NzE4YyBsZWdhY3ktdHJ1bmsKKzYxNDM1IDE2NzMyZGIwMDgyMmVhOWRhZTE3ZTFhNGEzM2NlYjkzNGU3ZjNhMWQgbGVnYWN5LXRydW5rCis2MTQzNiBjNDQwMmVjNjBjM2E0YTE1MmVlNjI1ZTdkMTdjMjVmNmQzNTVjNTljIGxlZ2FjeS10cnVuaworNjE0MzggNGQzOWQ0YTZhOWRiYTVhOGQ4OWZmMWNjNWViNWRmM2Y0M2Y4N2E2OCBsZWdhY3ktdHJ1bmsKKzYxNDM5IDIyYTRhMTExZDU5OGFlMTNiYTcwZmI3MjEzMmIwMDJjNTIzZDhhZDcgbGVnYWN5LXRydW5rCis2MTQ0MCA0ODI0N2E0YjM4ZWRmMDk3M2QxN2E1NjQ1NDRlZWEwYzdjOTIyMmI0IHB5M2sKKzYxNDQyIDYyZWYwZWEwMzRmNGU5NjkwNzllMTY0YzgwNThmMjUxNmQwOTc3ZWEgbGVnYWN5LXRydW5rCis2MTQ0MyBiYjU0M2E4MDlmZTI0YzhjNTI1MWViMjU4YmYyZTlkNjBmODUwZjE1IHB5M2sKKzYxNDQ0IGYxMWMwMDI0NmZiNTI1ZDE3YzM0ZjI2ZTZhNGZiNmNiNjVjNjQzMmUgbGVnYWN5LXRydW5rCis2MTQ0NSBhY2JmOWNmNTk0ZjhiZDg1MjY0ZDZhNDRmNWVmYzQ2ODY2NGFhMGQ2IHB5M2sKKzYxNDQ2IDM2ZjNjNmJmMmM5N2JmYWZlZDY5ODFhZjIzMjljYjQzMWExNTc0YTMgcHkzaworNjE0NDcgMGRiN2ZhMTRjNzk0OGJmMTQzNjhmNjVjMGRkZmY2OGIzZDNlMzA2MSBweTNrCis2MTQ0OCBjYjM2MGZjODg5MTIyNzczZTNiYjIzZTQ3Njg4MzBlMjI2ZmRmMGY3IHB5M2sKKzYxNDQ5IDcxMDQ3OGExOTc3YWNmY2M0NWMzOWU4NjYzM2RmYmI3MjA3ZTYxYTkgbGVnYWN5LXRydW5rCis2MTQ1MCA4MDE4ZjUwNjU2NjFiYWEzMmEwNGNkMmI4NjI3YzM5ZDU4MWYwN2M2IGxlZ2FjeS10cnVuaworNjE0NTMgN2U4Y2ViMzk0NDdlY2JiYTY2YzBlZWQ3NjE4OGMxOWYxMThkZjU5YSBsZWdhY3ktdHJ1bmsKKzYxNDU0IGI1Y2I3YTY3OGYzODkxZmM0OTY3ZWFhNzUzMmE4ODcwOThjYzNhMzcgbGVnYWN5LXRydW5rCis2MTQ1NSBkZTZiMjgzNGI4YWY5OTBkMTFhMGQ3MzNjNTc3MjQ4OTg1NzY1ZjY2IHB5M2sKKzYxNDU3IDQzMTgyNWVhYzRhZTM3MzYzZTRlOWZkMDRhNjcwZDI4OTUzZmI1YjQgcHkzaworNjE0NTggZDMzY2FkYjU5NWY2NWRkYWY4YjAzYWY5ZTBlNmI3YzQ5MzQzZjZhOCBsZWdhY3ktdHJ1bmsKKzYxNDU5IDZhN2ZhODQyMTkwMmE5NTRkZWM3NzlmZTlhN2Y0YTQ2MThiMWE5NDIgcHkzaworNjE0NjAgMmMyNjBiZTEyNDJkOWFmZDI3MzE4NDdkNDcyZTM3ZjVlYjQ4ODY2NiBweTNrCis2MTQ2MSAzNGY0ZDQ3ZWM0M2E0ZjM2YzFiN2QwNzhjNDE4NmVkYWI0ODA0M2JmIHB5M2sKKzYxNDYyIDlkOWEzOGI4ZWIxYjExYTAyODI1ZWIwNDU5MGM5ZjI1ZTFhOGQ5ZjkgcHkzaworNjE0NjMgYTIwMGMzODdlOGIyNjUxMzVkZTE2YjZkOWU5N2Y2OGNlNDViOGEzMCBweTNrCis2MTQ2NCAxNmI0NDc2NDk0NGViOGEzZWE4MmRjNjNkOTA4ZTM2OTlhOTY2ZjRhIHB5M2sKKzYxNDY1IDZjMzkzZGNkNDVjNDhmMDcwNzMyYjFhOGQ4ZThiZmY4YmFhNDllYTkgbGVnYWN5LXRydW5rCis2MTQ2NyAzMjI2OTNiZjEwY2FjNmNkM2MwODdlMDAxZTZhOTRjMTAyMmU0MTFkIHB5M2sKKzYxNDY4IDk3M2EyM2NmNmYwYjdhMDk1OWVkNmFiNjJjZTc5YjBkZTI3YjEwZTggbGVnYWN5LXRydW5rCis2MTQ3MSA3ZjEzZDY5MDRlMTRhNDk0YWVlYzg4OTlkYWJkNzhjMjRlYzlkNGNkIGxlZ2FjeS10cnVuaworNjE0NzIgOGEzZmE4NmMzMGE2ZTJjNzJkNWM3YmJmYzIzOGE5NWViZjNmNjIyZCBsZWdhY3ktdHJ1bmsKKzYxNDczIDM3NDVmZGI5OTMyZjA3YzQ4NGU5ZjMxNTU3YmIyOGI2YWZjNTI5YjEgbGVnYWN5LXRydW5rCis2MTQ3NCA4ZGVmYTFkNWYwNjZkOTMwMThkOGI3YzdkOWY1N2RlMGQ0YzM3NmU1IGxlZ2FjeS10cnVuaworNjE0NzUgZmYwYWI3YjI4ZjQ5MTdjZDg2Mzc0MDc0ZDJlZjQ5YTk4MTViMTJlYyBsZWdhY3ktdHJ1bmsKKzYxNDc2IGUzMWQzMTc4MWE3NTNlMGRjYTQxZDI0NjY5NzI5ZTM4ZWY5MTNjYzQgcHkzaworNjE0NzggNzlmZGM4OGZmOWVjZGRlNWY5NzI0YWIwZTlhOGM2MjQ3ZmE3YjNhYSBsZWdhY3ktdHJ1bmsKKzYxNDgwIDRkYWJkOTA3MTg3ZWE3MzkxYTU0YjUzMWRhNzJmNDM0NmRkMmUxOTUgbGVnYWN5LXRydW5rCis2MTQ4MSA5NjZmZjE2OGI1NjY5NmMxMDVjMzA0NGU2NjJkMTdhYWYzNzg5MGNjIHJlbGVhc2UyNS1tYWludAorNjE0ODIgN2M0ODU0ZmZjZGNkODhjYzU3MmJlZGQ4MTk0ZmY1ZDBmYzYwNzAwZSBweTNrCis2MTQ4MyBjMGYxNjVlMWRiYzA1ZGNlNTMzNzgzMGZhNDMzZTlkYTBiNDU4M2YyIGxlZ2FjeS10cnVuaworNjE0ODQgYTdiYjAwNGU3ZjA2YTkzY2Q4ODU3M2MyYzc4YmY0N2Y2MDc2NmM5OSBsZWdhY3ktdHJ1bmsKKzYxNDg1IDNkZWI3MGU0MTgyYTA3YTJhNzkyOTgwNWIyMTYxMTZhZmNjM2ZlOWMgcmVsZWFzZTI1LW1haW50Cis2MTQ4NiAyN2U3ZGMyZTYyOTA1ZTkyMjhmOWUwYWIxYjY5ZTRhYjI1MmY3YjhiIGxlZ2FjeS10cnVuaworNjE0ODcgYWEzM2ZiOTBlYWE1MmE5YjliYTc5ZWMwYWUyNzZlMTkwYTJmOWU0NyBweTNrCis2MTQ4OCAwNDQ4N2FkM2QxYmVmNDE1MzUwZmQzY2NhOGNiNGRmNmQ3NDk1NjlmIGxlZ2FjeS10cnVuaworNjE0ODkgM2JiMGYxYTE5MzlkOTM4NzhiNGQ2NDliZWFlOGU3MWVkNTkxOWQxZCBsZWdhY3ktdHJ1bmsKKzYxNDkwIGIzNTk0ODBjYTg4NjQ2MGVjZmVmODUxNjA4OTE5YWY1YTBhMzMyYjAgcHkzaworNjE0OTEgNWMwYjVjYWJlZWM5NjZkN2ZlYzgzNjQyOTllMWFiODI3Mjk2ZDEzMSBsZWdhY3ktdHJ1bmsKKzYxNDkyIGVkY2IzNTQyMTc2YTUzZDE0ODJlZmM1ZDJkODQ5YjU1OWVkOTNiMTcgbGVnYWN5LXRydW5rCis2MTQ5MyAxMzcyOWM3MGM4ZDhjMjk0OTk2ZjA3OTg5OTFhNGFkZDlkZTY2YjAyIHB5M2sKKzYxNDk0IDA0MDUwMzczZDc5OWRjMGQ1MzkzMGM2OTE1ODVmYzI4MmUwNTc0OGMgcHkzaworNjE0OTUgMjU0NjMxM2E4YjI3YWQ0ZmFjOGFjOTJmMmYyYjM4YzljODAxYmEwNSBsZWdhY3ktdHJ1bmsKKzYxNDk2IGM1MjQxMDY5ZmZmZGFhOWU3ZjEzNWZjZmE0YmMxYWY2ODAyMjZkZDAgbGVnYWN5LXRydW5rCis2MTQ5OCA1MjY4MmJkNzM4YTc1Y2Y0Y2I3MTJlNmIxOGI0M2NmMzIyOWJhY2FmIGxlZ2FjeS10cnVuaworNjE1MDMgZTIyN2VkMmNhOWQxNWFiYmI2MTMzMTQxYjM5MWEwMjU0YmEzOWYyYSBsZWdhY3ktdHJ1bmsKKzYxNTA0IGQ0YmJmOWI0NzEwZjQ3ZDhmN2M2YzBmZDA2OTNiMDMyNGI5NDJmNDAgbGVnYWN5LXRydW5rCis2MTUwNyA2ZmM2YTgwNjc4NGY5NWYwNjBmZWVlZjQ0YmY1MzViNmIwNDk2MjZjIGxlZ2FjeS10cnVuaworNjE1MDggODY3MzY0MDFkMzk0NDQ3YWNhZmU5YzQ1NjY0NGQ0MDJjNjM3ZThlZSBweTNrCis2MTUwOSA5NzM2MWQ5MTdkMjJkNDAxYTM2Y2U4NmRmZjZhZDA5YmYyZWRhMjM0IGxlZ2FjeS10cnVuaworNjE1MTAgNDYzNDI0MzE3OTU1MGFmNTU4MmRhNDBjMzdhM2Q4M2VkZmE3MjAxNSBsZWdhY3ktdHJ1bmsKKzYxNTEwIDExN2JiZDQ0YWRhZTY0NmFlYjY1NGNjZWRiYzljM2FlNjI2NjVjYzIgcmVsZWFzZTI1LW1haW50Cis2MTUxNSA4ZjAwYTA5NDhmMDBlMmU1N2U3OTIwNjVhYjE3MzZhZGI1YWIzNTQxIGxlZ2FjeS10cnVuaworNjE1MTYgNmMxN2RhYzcwNTcxN2NmY2Q0MjQwYTM4NzEzYTdmOGY0N2VmNTZlZSBsZWdhY3ktdHJ1bmsKKzYxNTE3IDk2MzhkMmVhMmY1N2JhYTM2NDc1YTg1ODIzZDdkNzMwMDYzZjVhZTkgbGVnYWN5LXRydW5rCis2MTUxOCAzYjM5YjdiYjJjMDdjMjY4ZjlhNzE4ODQ4YjFlN2U2MzU4NThhMmJlIGxlZ2FjeS10cnVuaworNjE1MTkgZTE0ODI4NWJkNTExODM4OTBkMTU5NTZmYTMwYTkwMmMwOWMxOWZjMyBweTNrCis2MTUyMCA5NjYwMWY4ZjMzOTE0NDVkOTJiMmE1NzcyYjI2MDE2NTU5MTk1MGFmIGxlZ2FjeS10cnVuaworNjE1MjEgMzBjNGUxY2E4NDIxMjM2Njk4OWRmODMzYWUyMTc3MDI1ZjE3NDc3YSBweTNrCis2MTUyMiA5YjhjNGI1MTA3ZjBmNTVjYjczYzIwNzVmNmEzYzEyZmExMmNmMjJlIHB5M2sKKzYxNTIzIDIxMTM5ZWE1OWI2YmEyNTY1ZmI2Yjk0NzY1ODgwM2NiODI1ZDFlMDUgbGVnYWN5LXRydW5rCis2MTUyNCA3OGNhOGMyNTYxZGI4ZTc5NjY4ZDE1NzVkZjhmMWU3ZjliMDgzMTVkIGxlZ2FjeS10cnVuaworNjE1MjUgNmYwZWRhM2U5MmIzNjFiMjE4NzdlNjY0MDViNTVmNjhiMGQ3ZDY2NiBsZWdhY3ktdHJ1bmsKKzYxNTI2IDU4MWMzZTViMzQ5YjEyMGQyOTY1MGFkZDY2ZDE0OGRkMGQ4ZWFhOTkgbGVnYWN5LXRydW5rCis2MTUyNyA5MjMzODBhY2QxY2RkODA1NWM5OGJjNjc3MzVkMGQ0Yjk4Njg4ZWU0IGxlZ2FjeS10cnVuaworNjE1MjggYzQyNDA5OWI0Y2U0YjRkZTRiYWFhODNmNjAwZjEyYzA0ZGNmYWQ4YyBsZWdhY3ktdHJ1bmsKKzYxNTI5IDUwNzcxYTNmYWQyY2FhYTg4Zjk0MGVhMzllZmIwMDgyNGM2MGI4YTIgbGVnYWN5LXRydW5rCis2MTUzMCBmMzAyYmVmOGEwMDRhYWVmMTI3MTMzYjE0MjRjNWQ1NTgyMDVmZDMxIHB5M2sKKzYxNTMxIDFjZDkzMGI4MzVhNjM5MjhkMTcxODFiZmU3MzE4ZjZiNmJjMTQ4MTQgcHkzaworNjE1MzIgZWE5MTkxNGJjYjk3NzRmNTg1NDliZGE5MDM1YjVmOTc0MmNmOGI2ZSBsZWdhY3ktdHJ1bmsKKzYxNTMzIGE2MjhlZjgyZWI3ZTBjOWUzOTVjNWM4YjA0NjlmYzdlZTc3ZDkwODEgcHkzaworNjE1MzUgZTBlOGJlZjBkNWVjY2IyNzI0ZTE0NzM5OTY3ZjNlZWUwN2I4ZWI2YSBweTNrCis2MTUzOCBjYzc1OGU4ZGRjOWQ3OTQwNTJhYTBhZDA4NjU3OWEyMWM0Nzc5YWJjIGxlZ2FjeS10cnVuaworNjE1MzkgOTRhNjA4MmE3NzBmYTMwZmNmODVkMGJkMjFiZDcyNDk5NWYxMzg2YSBsZWdhY3ktdHJ1bmsKKzYxNTQwIDNhNzJjYmNjMWJiODA2YzJiNjljNmM1YWYyNTc1ZmQ0MTY4OWMyYjcgbGVnYWN5LXRydW5rCis2MTU0MiBlYjZkMDA3NDUzYmMyYzI3OWQwOTYxNjEzZTIwNzhkZmVhMzUwMjBjIHJlbGVhc2UyNS1tYWludAorNjE1NDQgZGM0ZDY4YWU5ZDNkYmYwNDE1OTc2ODdkYmZkMTZiMDQ0MzNkNTk3MiByZWxlYXNlMjUtbWFpbnQKKzYxNTUzIDBkNzY1OWMyYjk5ODUyNzRiNjYzMWM2YTFiMDcyNjViZjZmNTY3MzAgcHkzaworNjE1NTYgNTE1NjMzNjE1NzM1YWYwNmFiODM2ZjlkMWFkNjc4NDViMTQ3MWI0YiBsZWdhY3ktdHJ1bmsKKzYxNTU3IGJjZTY5ZGI3MmUwMDQzYzU4MTJiNzkwYTc1NDM4YTVjNjZlODU2YzkgcHkzaworNjE1NTggODNjNTVhY2ZiOTU5ODlhZTg5MWI3ZmMwNzdjMDM5NDA5NjhkZTM1MyBweTNrCis2MTU1OSAxYmI2N2U1MDNkZmZjYTQzNjRkZjY0YjUzYmZjZTY1YTJiZmI3Y2ZjIGxlZ2FjeS10cnVuaworNjE1NjAgMDA1ZGI5MzRlZTI1ZWY5OTBiZGFiNWVhNTZmZGVkNWI2Y2VmZWRmYyBsZWdhY3ktdHJ1bmsKKzYxNTYxIDBlNzk3OTNmZmU4NzA1ZTFkNWU4MTE1MGRmZjFlNGViODViODY2MTkgcHkzaworNjE1NjIgMTZjNTc2ZGVlOWQzYmFjMTg0YjQxNDkzNmZkY2RkYWVhMTI2ZDE1MCBweTNrCis2MTU2MyAyZjY0MGYwZjA2OTc2YjJlYWQ5MDM5MzNmNjYwYTIwMzEwYjIxMTgwIGxlZ2FjeS10cnVuaworNjE1NjQgZWUwZGZjY2Y4Y2VlNmVjZTg4N2JkNTM5MjY3ODc4NzI4YjY1OWFjMiBsZWdhY3ktdHJ1bmsKKzYxNTY1IGIwZDAxOTY5YmJjODdkZTQ1ZGMxN2M3NzZmNWIxOGFkNjYxMjVmZjggbGVnYWN5LXRydW5rCis2MTU2NiBmM2JlMTIyMjBmZDdlMDFiYmIyYTgwNjVjYmYxYWQ2ZjRjNmU4MDYwIHB5M2sKKzYxNTY3IGZhNzBlNmFlODMxYWUxZGVhZDFiOWFkYmFmZTBmZTVmNTYyYTFlNjEgcHkzaworNjE1NjggMDVhYzNjMTliN2E4MDM2NDMyNTZhYWFjOTc2MjFhY2IwNWZhMzhkNSBweTNrCis2MTU3MCA4NjBlMjNhNjFlNTUxMGZiYzMzZTM4YWYzZDU2NTExMGRjODdiNzJhIGxlZ2FjeS10cnVuaworNjE1NzEgMjg5M2MwMTI5ZmU1YzM2MDJhNjUzOTM2OGYzYWNkYTRkNzNiMThhZSBsZWdhY3ktdHJ1bmsKKzYxNTcyIGM4YzU0N2M1MWY5YTZmMGFlNTUwM2YwOTVlMGI5MWQwYmRjNzdhNGMgcHkzaworNjE1NzMgNTFlMjQ1MTJlMzA1Mjg1NTZjMmJiNzFhNGM2ODAyNjEwODc5NzcyYiBweTNrCis2MTU3NSAyMzg1ZTE2YWNiNDI3OWQ1MWZjNzFhYzA5MWYxYmEyNjA5YWZjNmJjIGxlZ2FjeS10cnVuaworNjE1NzYgOTZiZDk3MjJlMzFkMzAwOTI1YTZhNjMxZWZjZGNlNGJhODc3NjM3MyBsZWdhY3ktdHJ1bmsKKzYxNTc3IDcyN2Y3NDNjZjYzMGIxZDE5ZTBlMjI2YTE4NzI2NTAyZGY3MzkzOGYgbGVnYWN5LXRydW5rCis2MTU3OCBmN2E2ZjMzOTQzMTA2NzQwMjIxNDg3ZmFjOGIwNmM4ZDkzNGFkMTMwIHB5M2sKKzYxNTc5IGYwOTZlZjljNDExNGY3NTdmZmUzYTcwMmY5MmU2ODVjZWI0MzllY2QgcHkzaworNjE1ODAgZDg3ZDdmYzJjMmJmMzNhZDUwMmVmZTIwOWY3YzNhYjkyODRlYzJhMCBsZWdhY3ktdHJ1bmsKKzYxNTgxIDE5ZDRiNjk3ZmJmOWFkNTNjMDA0NTYyYzM3YjdhZjhjNTk3Y2RlOWYgbGVnYWN5LXRydW5rCis2MTU4MiA3MzNjM2VlMTk4OTk2NjdkNWY2OGNkZDFjYjc5ZTkxZWIxODAyNzE3IGxlZ2FjeS10cnVuaworNjE1ODUgYzc3ZTMxMTllMjY3NWUwODYxMmI5NjhlZGVmNjc4MDg4ODY2NDRkZSBsZWdhY3ktdHJ1bmsKKzYxNTg2IDFkZmI5YWU3OGEzNzI3Y2Y4M2U0NTBkNmJmMjhiZmRkMTYxODg5Y2EgbGVnYWN5LXRydW5rCis2MTU4NyA0Y2E3MTE5ZDE3MDA1ZGY2MTUxMWE1YTA0NGUxNmQ4YThjNDY0Mzk5IGxlZ2FjeS10cnVuaworNjE1ODggYjg0ZTBlMjNjYWJkODkwNDc1YTU3ODE2MTBlODc2M2NiZjE0ZmE0MSBweTNrCis2MTU5MCA3Zjc3NzA3MTllODQ4Njk5YzkxNDE4NDYyYTJhODUzMDAxNjYwNjYwIGxlZ2FjeS10cnVuaworNjE1OTEgZDRlMWRiODc5N2Y2ZGM4MGNhZmMxM2VkOGVhZjVkM2ZhMmQyZTYzYiBsZWdhY3ktdHJ1bmsKKzYxNTkyIDgxOTExNjk1MDA5OTA4N2JlYWZhZWI4ZGMyMzhjODAzZTc3ODk1ZGUgcHkzaworNjE1OTMgZDVjZmY3ZjlhMTQyYmU3MjA2MjRjYWJlODY5MDA0MzE0YTI0NjFhMyBsZWdhY3ktdHJ1bmsKKzYxNTk1IDJhMDEwNzVjZDkwMjE0MjcyN2FlNjVhNWY1OGM5OGQ1MDg1ZTA5MzAgbGVnYWN5LXRydW5rCis2MTU5NiAzMDI2MjVmYTZhMmE2OWFkYzhkNzkyNDI5ZWQ4ZTg4NDY3ZjgwZDJlIGxlZ2FjeS10cnVuaworNjE1OTcgNDU5NzBiMDRjZTgzZTJkNTM0Mzc0MjhjNmViMDQyYWI2NDIzOTk5NCBsZWdhY3ktdHJ1bmsKKzYxNjAwIDk2M2Q2N2RmMzcyMzdlNWRjOGExMTQ2ZjViYmNlYjZjYmNjN2ZjNjcgcHkzaworNjE2MDIgYTk4NTVkYjQwZmZiMzNmNGFiMGI0YzkzODYzOGRkZGI1ZmJjZTJlNSBsZWdhY3ktdHJ1bmsKKzYxNjAzIDFkYTI0OTk2ODNiNDNjM2UwZDE3NmU5NjEwMmJhN2I3OGU3Nzc4NTMgcHkzaworNjE2MDQgM2IzMjNmZjkzMDRjNWYwNTc2MjJiZmZjY2FiYzllNGViNjliOGZlZiBweTNrCis2MTYwNSA0MjJiNDlkZmQxNWI1M2MzZTc1NTBhNWJjNWUzNWU0YmI1NGU0NWI2IGxlZ2FjeS10cnVuaworNjE2MDYgZTBjOWI5ZWYwNDY2MGY5ZmI4MGVjMDQ1NjhiMWM0M2QzZjIyZDVjNCBsZWdhY3ktdHJ1bmsKKzYxNjA3IDQyODQ3MThmYjYzMWZhZGQzMjIyNmY0NTlmY2U5NDk2NGYwOWY5ZDQgcHkzaworNjE2MTMgYWQxZDYwNGJjOGVkMzUzMDE0YmIyZTRkNDMyYjhkOWM1NGE3MDViMiBsZWdhY3ktdHJ1bmsKKzYxNjE0IGFkYmM5MzRiZjFmZDUxMDI3NTU3MzI4NDBiNzhjNzY1NzcwMDg1MzQgbGVnYWN5LXRydW5rCis2MTYxNSAyMTQ3N2IxYmE1ODE3YzVjOGUyYjhhOWRmNzM1ZDc5ODY2MmI0YmQzIGxlZ2FjeS10cnVuaworNjE2MTYgNWNjMDRhMjA0NzY2ZjJlN2U1NDMwYTIyNDY0MTBiOGJiNzhiYjRhYiBsZWdhY3ktdHJ1bmsKKzYxNjE4IDg1NWM0MjkwZGZkN2FhMzRkYjA5ZTNmZmRiYmRjNzgyZTFkNGYwMzUgbGVnYWN5LXRydW5rCis2MTYyMSA3NGFiOGJkOTZjNWRlYjNhMmUwZjA0YjJlNWVjNDNmZmVkYTdmMjY5IGxlZ2FjeS10cnVuaworNjE2MjIgYjBiNjA4ZTU3OWNkNWFlMzYwZDcwYTFjZWE1MjQzYTYwNzI2MDEwNCBsZWdhY3ktdHJ1bmsKKzYxNjIzIGViYzEzMGE0YTI3MzgyOGY2NmFkNmZiYzczNjcwNGJmMWI2NDE1N2EgbGVnYWN5LXRydW5rCis2MTYyNCA5M2Y5NzA3YjY2NGNlNGFjZDk0NjliMTgwYjZiNTBjNzYzODZjYjYyIHB5M2sKKzYxNjI1IDMzMGY1NzRjNThmN2MzZGJlZDVlZDRkMDM3Y2I2ZjUzYTZiMGEzOTQgbGVnYWN5LXRydW5rCis2MTYyNyA4ODE3YThlMTJhNTU5ZWNhODczMjBjZmYxMTIwMWZkYzA2ZTRmMGNlIGxlZ2FjeS10cnVuaworNjE2MzEgM2JmMTljMzFjOTU2ZjE0MTI0ZDNhY2Y1YmYyZGMxYWJkZmNiMmI2ZiBsZWdhY3ktdHJ1bmsKKzYxNjMyIGRjNWJlMGIzYzNiZTdkYTQyNjQ2ZDQ2MzJlNjk4MDBkN2Y4YTkxYTcgbGVnYWN5LXRydW5rCis2MTYzMyBlNjY1YTBiMTZkYTBlODdiMGMzYTAzNmIzYjU0OTI2YjgzNGMwZTlmIGxlZ2FjeS10cnVuaworNjE2MzQgMjQyNzU1NTJjOTczMTcxNDIxOWUxMzVlZjJlZjg1OTQ1MmRhNjQ3MiBsZWdhY3ktdHJ1bmsKKzYxNjM5IDQ0MGIwOGEzMmUwYjNkNTA0ZjUzMjVlY2JiZTBiZTUyMmIwYmRlMmMgbGVnYWN5LXRydW5rCis2MTY0MyAxNjU3ZjBhY2NhNzgyMDIxMDVkNzczNjAyMDc4NTNkZjVjYTA1ZjIwIHB5M2sKKzYxNjQ0IGFlM2FkMDY1NzdjN2Q3YTVkMGZkY2U2OWM4Mjc0ZmE2YzdkNTZiMTcgbGVnYWN5LXRydW5rCis2MTY0NiAyZGEwYmYyZTJmNWNjMWYzYWM0Njk4NzRhNmNkY2M5N2YzNzI2ZTAzIGxlZ2FjeS10cnVuaworNjE2NDcgNjVmMzYxMDRmY2FkNzJjYTg5MjA0ZTZlYzQzMjE2YmI4YjFjNTU0ZiBsZWdhY3ktdHJ1bmsKKzYxNjQ4IDM5ODlmYzYxZTc4OWM4OTQ1MzY4ZDM2MGFmNWVmODIxZmE4MDU2YjQgcHkzaworNjE2NDkgM2FhNWViMTgyOTEzMTUwMTkwN2YzMDA1ZGJiNmM4MWMxYWMxODFhMCBsZWdhY3ktdHJ1bmsKKzYxNjUwIDI5M2M2MTA2ZmJlMzQ5Nzk4MmM5NTRkYzYwZTI1M2QxNzIyMjBhNzQgbGVnYWN5LXRydW5rCis2MTY1MSA2NTA5ZWY4YmZlOWMzNjNkYzdmYjU0NzY2N2U5ZWY2NjQzZDYxOGFmIGxlZ2FjeS10cnVuaworNjE2NTIgY2JhZDFmNWNhYmIxNTExZGNhMTYwNDVlYjdhYjUwNjRlMzUzYmUzYiBsZWdhY3ktdHJ1bmsKKzYxNjUzIGU4NjI4MjE5OTQ2NTE5N2IxYTE2NDExNzFkYzRhOTNiMDBhMGY3ZDggcHkzaworNjE2NTUgZmM5M2JmNWZlY2UxZDY0MmJiOGJkZTU4YzUzOWRlNGYxYzhmYzY4ZSBweTNrCis2MTY1NiA4YjBiODkwMjVkOTgyOGIzYTgwYjgyMjFhMWI0ZGRiZDcxMzY1YzBkIGxlZ2FjeS10cnVuaworNjE2NTcgNWJkMmJkYjM5ZTljZGVmNWYzNDkwZGUyMmFkMDQ3YmVkNzlhOTljNiBsZWdhY3ktdHJ1bmsKKzYxNjU4IGQwMGE5Zjc1ZDIyM2Q5MzRlMGNlY2I2Y2FjMmYzZjlhM2VmZWIyYmYgbGVnYWN5LXRydW5rCis2MTY1OSAwZmRiMzYxNjM4NDFkOGI2OTZhOTkwMmIwZGI4YzA2ZTljMjhiZTA5IHB5M2sKKzYxNjYwIGUwMjAzYzY1OGI4NjUwMWQ5ZjUxMmFhMGE2ODljMjVhNWZkZjhmZGEgcHkzaworNjE2NjEgOWE0NzcwOWEyOGI3OWY0YmM2YzE1M2Q4ODI0ZGIyOWUwYzIzMjUzOCBweTNrCis2MTY2MiBmYzIxMDY3M2VlZjAxNTQ0NDI4NjJiODk0NTU3NDhjMDU3ODNmZWMwIHB5M2sKKzYxNjYzIDYwZGI5YTY3ODU1MWQxNzUwNzBiMWRmMTdmOGI1ZThmZjQ3ZTEwZDAgbGVnYWN5LXRydW5rCis2MTY2NSA2YTNlZjNjOTA5NWMwNThmN2FkYmZkMGYwYjRlYmM5MDEzYjM4NjZlIGxlZ2FjeS10cnVuaworNjE2NjYgMTMyY2YzYTc5MTI2MWY0YzJiNTAyYWI4Zjg1ZmQzOTk4MjY0OTY2NyBweTNrCis2MTY2NyAwNmU2NDFjYjNhMjAwNzNmYTkwNmJiMTM4MWNiYWI3NDM0M2RiNWUxIGxlZ2FjeS10cnVuaworNjE2NjggMzlhNGY0MzkzZWYxOTgyNDA0MzY5NTI0ZmM4M2Q0ZTY0ZTdkNTM1ZiBweTNrCis2MTY2OSA4ZTVlYzY5Yjc2YTc0YzUwZGMxMmI1MTIxNzYzNjIzMWZmZThmMDQyIHB5M2sKKzYxNjcwIDM2ZTI5NmU2NmQyMTZhYzk3Y2U4YThjNzM0NGE1ZjIzOGI4YTc2MTcgcHkzaworNjE2NzEgMTMzNDk4YjkxZjFjNDAzY2Y1NjYxZmQ4OTdmODVkOTVjZmYxMWZkZSBweTNrCis2MTY3MiBjOTU2NjNjNjg0Y2FmOWExZTQyMWY5NDVhYmE1OTU5NDQxMmMzMDkxIGxlZ2FjeS10cnVuaworNjE2NzQgZDllYzA2OGIwOGYzMDk0N2U4OTVlY2ZjYTM5ZmViZjIxMTMwNmU2ZiBsZWdhY3ktdHJ1bmsKKzYxNjc1IDdkMmUxYWM4MzRiODVmNzhjOTk1N2Q1NjMwZGIwOTZiNzkzZmZkMzQgcmVsZWFzZTI1LW1haW50Cis2MTY3NiBkMTRhOWU1ZjgwYWU4ZmMyMzQ5YTUzNDFmZWZmNDAyY2EwNzc0ZWUzIGxlZ2FjeS10cnVuaworNjE2NzcgMWM3YzA4ZDI5ZmVlZTVkNzFhMTU4NTFmZGQ5ZWI5MTFlMmFmZWZhMyBsZWdhY3ktdHJ1bmsKKzYxNjc4IGQ1MTFlMzIxNzQzYTkxMWE1YjkxMjQ5Yjk2NDUzMWZiNTBmYmU4NWYgbGVnYWN5LXRydW5rCis2MTY4MCAyOTEzMTg5MjYxMWM1NWNkNDRlMTVlODc2ODZlMjQ2NzcyYTEyNzAwIHB5M2sKKzYxNjgxIDdjYTU3ZTIyYTUyMDc4OTQwZDg4ZjI3MTVkYTgzZjFjOWFiZTU0YjAgbGVnYWN5LXRydW5rCis2MTY4MiA5MWFjODA0OWU3MDkzNDIyZWI4MWFiNzE1MTg5OGIxMGQ2YzZlYmI5IHB5M2sKKzYxNjgzIGU4MzYwYjVkNWExMDc0ODQ0NGExNjI3NTY5OTJhYWRjZmEzOTRhOGMgbGVnYWN5LXRydW5rCis2MTY4NCA2OTYyMjViNWQ1NTU1OWFiMWQ3NjkyNzY1ODA3MTE2Y2I2YjgwNGI1IGxlZ2FjeS10cnVuaworNjE2ODUgZjNkODM4ZGFiNDBlZGJkNTk2OWExMGVlMGZmYTg2MGY0ZTUzYjRiNSBweTNrCis2MTY4NiAyODczM2FkYTRkMDMxZGUxODk4Nzc1ZWZlODc3YjBkM2ZlY2UwNmJjIHB5M2sKKzYxNjg3IDdjNjY2N2JiOGY4NTM0NzRlNWU3OTAxOTA1NmQ3Nzg1OWVjY2RlNGMgbGVnYWN5LXRydW5rCis2MTY4OCBhYTlkYTRhM2M5N2NlMDU2ZDdiNzNjODQ3ZjE3NmRjYzc2OWJiOGFkIGxlZ2FjeS10cnVuaworNjE2OTYgYzQ1YTQ1NjY5MDE3YjkyNTBlZmM2ZjM1YWRiNTEzNjQ1MTkwYzg4MiBsZWdhY3ktdHJ1bmsKKzYxNzAwIDhmOGIwM2MyYmJmZjAxNzJjOTY1OWNiY2FmODZjZDU0YjZkYTI4OTYgbGVnYWN5LXRydW5rCis2MTcwNCA5NDRkODdhOWJiZDBhY2RkNGQxYWY4MjNkMjdjNmY2NGNlN2FiZmIxIGxlZ2FjeS10cnVuaworNjE3MDUgOGVmMDVhY2VlZjJiNGE5ZTc0NzA2ZWExNmU4NDI1M2U0MDAyODdiNiBsZWdhY3ktdHJ1bmsKKzYxNzA3IDcwNGE4NjRlY2IwMTRjNTA3NjliNWE2NzczODdiYTQ3ZjlkNmRjYjUgbGVnYWN5LXRydW5rCis2MTcwOCBhZGI1Y2FiMzAxYTZlZTU1ZmFlODVmYWM5NDFhOGEwOWJhZjA0ZGM1IGxlZ2FjeS10cnVuaworNjE3MDkgNTQ0YTQ2ZGYwMjIyZGM5MjY5ODUzYjkzMGUwNTQ1YzE4OTVjMmNhOCBsZWdhY3ktdHJ1bmsKKzYxNzEwIGYwZTRkOWI0NWU3ZjM2M2EyYWEzMjljZGI4ZDFiYmFjODJhYjIzZWMgcHkzaworNjE3MTEgN2YwMzU1OTJkNmUxYmY1MGI0NWZkYzI3ZTEyZjg4ZjRhMWEwMzdkOSBsZWdhY3ktdHJ1bmsKKzYxNzEyIDg1ZmJkMWQyNjVhMjk1MTM5YjQwM2MxZTY5ZjMzOTVlNjI4NDVjOTYgbGVnYWN5LXRydW5rCis2MTcxMyA0NDE1MjdiZmM3OWNjNzNkMDVkMWM0Yjk1NzdmNDAzY2JlZTU0Y2JhIHJlbGVhc2UyNS1tYWludAorNjE3MTQgOTkzNTViYWE3NDhkY2Q0ZTYxNjNiNjFhZTRkMTU3YjBkNjkyYWYwNSBsZWdhY3ktdHJ1bmsKKzYxNzE1IDIyNzU2MTJjMTZhOWZjMTczOGQxYzBlNDRiODE3OGM4NDIzOTAyYjMgbGVnYWN5LXRydW5rCis2MTcxNiBiZjA3YmFkMWQ3MmY2M2ZjODkwNTNlMDg4ZjA3MzhjN2FjZDQzMjBiIGxlZ2FjeS10cnVuaworNjE3MTcgNzJkYzE2ZTgwMTc5MGUyM2YxNGIwMjA1NDZkMmZkNjI3MWQzZDBjZSBweTNrCis2MTcxOCBkNjc5M2VjZTMyNTQ0ZGU2ODMyMTYyM2FhMmU2YTkzMWExMzhhYzQzIGxlZ2FjeS10cnVuaworNjE3MTkgYTAyNTM3MTg0OTllM2I2YWE1YWQ5NDQ2YWY4ZmViNWE3ZjU0Y2JjMCBsZWdhY3ktdHJ1bmsKKzYxNzIwIDFmOGJhNWU4YTJmYTkzYmRiZTcwNDc4ZjdhMDZlZTExZTgyMDI1NGIgbGVnYWN5LXRydW5rCis2MTcyMSAyZTNmODZlNzNmYTI3NjFlNGY1Njc3YTczNGI2OWY3MWY3OTc4YjJjIGxlZ2FjeS10cnVuaworNjE3MjIgNzI4ZGMxMzMyN2IyZmI5NGNjYjkxYzNlNjgxYmIyYTgzMmExNzgwNyBsZWdhY3ktdHJ1bmsKKzYxNzI0IGU0N2MzYzdiYmRkYzdiN2JiZjc2NzQ0ZjY5MDBmZGFkOWU0YTQ2YmQgbGVnYWN5LXRydW5rCis2MTcyNSBhNzM3NmQxOTJhNmQ3OGFiMjA0NjBlZWUxNGEzOThlYjUzOGYyNzU4IGxlZ2FjeS10cnVuaworNjE3MjYgN2FhNTJlYjkwNzRmOWQyYTk5MzdkM2RkNzIwNzRmOTI3YWMzZDdhNCBweTNrCis2MTcyNyA4YzFmZjhlNTQ3Mzk3MTFhNWVlYWFmODIyMmM3NmU3ZGRmZDVhY2RmIHB5M2sKKzYxNzI4IDM3NmI1Y2I4YTAxNDM1OTlmYmMzNjJlOGUzZGM1ZDQ0NGE2ZjkwMTQgcHkzaworNjE3MjkgN2Y2YmNhNzhjMzY0ODU3ODk0NWIwNjgxMzM4NzQ2NzJhMzZjNzNmZiBweTNrCis2MTczMSBjZGViYTIwY2NkNmEwMWQ0ZWYzZDZiZWE5YzlhNDY5YTcwOTkyN2FlIGxlZ2FjeS10cnVuaworNjE3MzIgNzI2NGMwNTFhMzljYmI0NDBmMjU4MGQ0ZDg0MDM1YWNmZTI1Yjg0ZSBsZWdhY3ktdHJ1bmsKKzYxNzMzIDYxZjVjNjYzYjQ5ZDhiYWRlNDdmYjQwNjA4ZmMyMDczZDUyMDQyZTMgbGVnYWN5LXRydW5rCis2MTczNCBhOTljYTFlNTc1ZWQ5NzU4MWI0NzVkNTFiNGQ4MmQ0OWRkYzNkMDZmIGxlZ2FjeS10cnVuaworNjE3MzUgMjQwODMzMDVkMWM3MDQ2NjE1YTljNWI1ZmJhYjAwZjkxODc5ZmI5ZCBsZWdhY3ktdHJ1bmsKKzYxNzM3IDExZmJjOGFmZTMwNWZlMzM5ZWJhYjNjYzI0YTUyMzAyYmVmOTU1Y2MgbGVnYWN5LXRydW5rCis2MTczOSAwNGMyMTQ4NTY0ZTQ1OWNmZDliNDg0M2MzZjM5NTE0ZWY0ZGYxZDcwIGxlZ2FjeS10cnVuaworNjE3NDEgZWVlYjZiOTUyZDJmODllYWU0NmJkM2YyNjdjMWFiZDgyM2MyZTQ5ZCBsZWdhY3ktdHJ1bmsKKzYxNzQzIGY5Nzc4NWM3ZGU5YjYyMDFlMGNiMmY5OGY0NDEwMjMzZDVlZjYwY2UgbGVnYWN5LXRydW5rCis2MTc0NCAyMjY3Y2ExNGQ1NGJhYTY5NDBmYjNjOTYxMTg5NTAyY2ExNDM0ZGNiIGxlZ2FjeS10cnVuaworNjE3NDcgYjQ5NzU0ZWE5NGRiOTI2ZDE1N2UwMGE0ZWMyY2YwYzQyM2U4NDNkMSBweTNrCis2MTc0OCBiMGE0M2JkNWMyODE4MmJhZmMyNmEwNzU1M2UyMzJjZWE1NDIyMDA1IHRydW5rLWJ5dGVhcnJheQorNjE3NDkgNzA4MzRjMGU0OTFiZDhiZjE0ZDhiNGJjY2ExODQxOGQ4MWQzMWJhNSB0cnVuay1ieXRlYXJyYXkKKzYxNzUwIDQzNTY0M2I3ODBjNzE5YTcwMjFlYzhkNGY5OWM3YzYxMTU3NGIxMmYgdHJ1bmstYnl0ZWFycmF5Cis2MTc1MiBjNjMyZjllMWVhNWRiZDRhN2Y5MTg2MTA5NzU1MzY3MDZjOGY1NDY5IHRydW5rLWJ5dGVhcnJheQorNjE3NTMgZDRiYTViZDExNTgwYTg3NzkwYjYxMmZiOWM2MzRlYzFiOTVhNjgzNSBsZWdhY3ktdHJ1bmsKKzYxNzU0IGRmYTBhMDExYTI0MzVhNjM3MTQ0Yzk1ZmVkOTY4YjAyZmE4ZGNmNGIgdHJ1bmstYnl0ZWFycmF5Cis2MTc1NiA2NjY3MDA4ODk0ZTBkYjI2ZTFjZTkyODFlNjNhZTI0ZjJhM2Q0ZWFkIHRydW5rLWJ5dGVhcnJheQorNjE3NjAgMjQ4ZjkyN2JhNTdlYjI2M2MwZGQ2YzhjNDk5MWQzNDg3MzhjMjgyMiB0cnVuay1ieXRlYXJyYXkKKzYxNzYxIDc1MWRlNjE2ZTA4MDE3ZmMwYjE4ZDFhNmNkNTcyNjM1ZGNmMzJhZDAgbGVnYWN5LXRydW5rCis2MTc2MyAwMTIyYjQ2Y2U0ZTBiZGQ0ZjVhODQ0ZjMzYjQ1MjBmNjY0MWQ4NDBhIHRydW5rLWJ5dGVhcnJheQorNjE3NjUgZjJhYjUwZDBmYTkwOGViZTc5YTEyZWRhOGRkYjFlZjI4OTJmMTRlMyBsZWdhY3ktdHJ1bmsKKzYxNzY2IDJlNWFiMzVjY2FmMWFkZGIyM2NhNzU5MDNhOTgwNDAzNDlkNmQ2YTkgbGVnYWN5LXRydW5rCis2MTc2NyBkNmYwZTNlNTU2YTQ1MDllMzdhZGIwN2VlMmEyOWFhZDExODVlM2Y0IGxlZ2FjeS10cnVuaworNjE3NjggZTY3ZjQyMWEyMGIwYjFiZGJlYTVkM2I2MWY2YzU1M2NmYmMyYjgxNiB0cnVuay1ieXRlYXJyYXkKKzYxNzY5IDMxY2YzOGJkYWFjMGNiMDNlNzRjN2UxYjFkNWVmZDJhNjYyMzNmNDQgbGVnYWN5LXRydW5rCis2MTc3MCAxMGIwZDgxYTIxNDVkYmRlMGM0YjI0Yzg4YzMzOGRjMzU1MmU1MWJiIHB5M2sKKzYxNzcxIDk1N2NiYTc1NTMxNWI0NjUxNTI0MzJjMzQ3YzI3Y2I5NWZmMDFlN2IgcHkzaworNjE3NzIgZmIxZDM1Y2ZiOGQyZGRhODJmYjc0OTJkYTc0ODlhZTcyMGM1NjRhYyB0cnVuay1ieXRlYXJyYXkKKzYxNzczIGZhNDE4Y2RmM2JmZTlmMDQwZWVmOWJiMmJjZDNhZGFkNmNlOGVjYTkgbGVnYWN5LXRydW5rCis2MTc3NCAyOTZmOWJjNDJiOTYzZWZkMTM3OGI1NzJiZWNhOGQ5YzhlMGRhMTgyIHB5M2sKKzYxNzc1IDNmMGUzZmIyNzJhNjIxZTZkMzJlMTUyNzRlODIwMWU3NGY1NTFmNDMgdHJ1bmstYnl0ZWFycmF5Cis2MTc3NiBmNGM1MGE1MWQyNGYwYmYzMDAxMjRhZmY4ZTExZGIzZDI2M2RjZDBhIGxlZ2FjeS10cnVuaworNjE3NzcgNzIyYmVmNjgzNWI5NDRmZmEzMDE3ZjE4MDU3MGMyZmI1MjRmMzI5YSBsZWdhY3ktdHJ1bmsKKzYxNzc4IGFmOGZiNTNhNTRmZDNkNDRhMDg2Mjc4NGQ1YmFiZGRhZDMxMmZlZjkgbGVnYWN5LXRydW5rCis2MTc3OSBhOGY1NGI2YThjMTg1NWQ0NWYyNDVhMGU0ZTA4MjdjYTZjZmRmNGIxIGxlZ2FjeS10cnVuaworNjE3ODAgYzY0YzdiNzI3YzYyNThlNDM0MDk5ZWRkYjkzZGMwMGY4MTQxMGMwYSBsZWdhY3ktdHJ1bmsKKzYxNzgxIDdkYTViNjg5NzFhNWE5ZjBmZDc4ZGZkNGEzNzgwNjQxNzc4ZTRhNzQgbGVnYWN5LXRydW5rCis2MTc4MiA5NjM0YzE3ZThmZTU2MjA1MDljMWYxYzQ4MjU0YzhjZGUwNzFkMDE2IGxlZ2FjeS10cnVuaworNjE3ODMgZjFlY2IzZTk3OGRiNDlkNTdhNWE4MzJhZDY1M2ZkNmQ0NGQ1ODU4ZCBsZWdhY3ktdHJ1bmsKKzYxNzg4IDc1NjNmNGQyZjM2ZWE0NjhkYmNlMzI3MjhjZTIwNjI4M2Q1MTUwZmMgbGVnYWN5LXRydW5rCis2MTc5MyA4NzEwYmE3ZmJhMmJlYTdkNGNmYmNkYWM0ZGUxODdiN2YwNDA1NjRkIGxlZ2FjeS10cnVuaworNjE3OTYgZjFlNTE3ODU5NDdmNWI1ZjE1ZDMyZGY0M2U0MGQ2Mjc2ZWZkNDY3OSBsZWdhY3ktdHJ1bmsKKzYxODA1IDcyOTZjY2JiODU4YzJiODllZjUwZjk4NTczMjYwOTY4ZWEwZTRmOTEgdHJ1bmstYnl0ZWFycmF5Cis2MTgwNyAxZDVhMTE2MTllY2E4OGNlNzc5NDU5MjQ3M2Q4ZTNlMTgwOWU4N2QxIGxlZ2FjeS10cnVuaworNjE4MDkgZGY1YzhiOTdjYjJhMWZhMWZmNjQ1ZGZlYzY1MzNhMDFiOTgzMzE4MiB0cnVuay1ieXRlYXJyYXkKKzYxODEwIGMxZmM2ZTBhOTRiOWI3YzA0OGNmNDQwM2U0OTRlY2MzODk4ZmM0MTggbGVnYWN5LXRydW5rCis2MTgxMSBhZjFiMGY5OGRhZGY5ZDFiZGQwNjdmY2U0NWUyYTVmOThiYjU1MzE4IHB5M2sKKzYxODEyIDM5ZGM5ODVjNmZjNjA2NDQwOTZmN2U3OGY2NTRlZTNiYzU4NjBkMjAgdHJ1bmstYnl0ZWFycmF5Cis2MTgxMyA0NjdjMTZhNTAzOTJjYzBiNWY0ZTM3NDM2MzM3YWQ2YTA0ODlmZjAyIGxlZ2FjeS10cnVuaworNjE4MTggMGE0ODU1OTNhZTFjZTVkMzhlYjcwMTliNWMxODg0MWVmNmIwODA0MyBweTNrCis2MTgxOSBkMGI5MWE5MGJhY2M5NTNkNzQ0NzY2YTcwMTY3ZjEyMWI1ZmY4ZGE4IHRydW5rLWJ5dGVhcnJheQorNjE4MjAgNWU5MTY4NWQ5YzA2ODUyZGViOTc3ZmMwYWUxYWUzNDZhNzZjMjFkYyBsZWdhY3ktdHJ1bmsKKzYxODIxIGY1YjFmYTEyMTRmMGExNTRmODAxYmUyNTUxNWMwMTljMWI0OTk1ZTYgbGVnYWN5LXRydW5rCis2MTgyMiA3Y2FhYWIwNGE0ZDhkYTMyODBmMDk1ZmQwMjZjOWI0MWQ2YTI3MDJkIGxlZ2FjeS10cnVuaworNjE4MjMgNWNhOTI4NDAyZTU0MzY1Y2RkZTNiMGIzZjQxOWQwYTUxYTI3OGQyOCBsZWdhY3ktdHJ1bmsKKzYxODI1IGEzOWNmMzM1MzEyZTc3Y2I1OTJlNjNjZjUyZDQ3N2Y5NTM3NjVkYzggbGVnYWN5LXRydW5rCis2MTgyNiBiZmVlODczZWRmM2ZmNmY3YjA2ZGFhNjU4MmMwMzQxOGM5OWMyNGNlIHB5M2sKKzYxODI3IDY4MDUxZjhjNjYxOGVkYjhmZTlmMDE5ZjY5NDBlYzU4NTYzOWUwMjcgcHkzaworNjE4MjkgNGE2YjA5M2IzMTliYmZjODgwNzIxMDI2YTliZGZiOGVlYzY3NzczMyBweTNrCis2MTgzMSAzNzA4ZjA5MDZlZjVlNmYyM2MxYWQ2YTBiNmFmZmM1MmM1OTUyZjY5IHB5M2sKKzYxODMyIDVmMDRlMDJiYjQwYzVkNTZkYzk0Y2JhZTEwMzE0ZWNjOWZmYjI1OTkgcHkzaworNjE4MzMgMmNjZTkxN2Q3OTk2M2Q4ZDZiYWIwYTNlOGYxZDVmMjU1ZmYwOGJhNiBweTNrCis2MTgzNCA4YzI2MDRmZTU4ODY4YTU1ZjhjYjEyMGQzOTNhZDE2MmMzNDQxYzI0IGxlZ2FjeS10cnVuaworNjE4MzUgZGY5MDc3NGY5MmIwNjlkOTBkNzlkZTQ3MDJmNDQxZjlkOWM1ZGZiMSBweTNrCis2MTgzNiAzMGVmNTExMjgxMzI2ODUzNzNlMDFiNDk4MGJkZGZmZjllZTc5N2IxIHB5M2sKKzYxODM3IDg1OWZmNWM3YzYwYThjMGM2ZDUxNTUyZWViZmVjNzI1YWMxYTY5OTAgcHkzaworNjE4NDEgMjU0MzFmZjZjZTY5ZGY2NWNjODlhNjg2MDViMmM3YzEwNTYxNTdmZCBsZWdhY3ktdHJ1bmsKKzYxODQyIDM4ZGUwZDIwMjMzODY3ODE5OGI2ZWVmODY4NDY4MTUwMjBiNDM3NjggbGVnYWN5LXRydW5rCis2MTg0NiAyZDBlMDg5MTdhMmUzNjBmOTU5ZTE0ZTAwYmI4ZjY5MTU0ZjdjODI5IGxlZ2FjeS10cnVuaworNjE4NDcgNDYxZmY0M2U3NGQwMjJhYjk3OTMwZjEyODcwY2YyMGZiOTU2N2JlYyBsZWdhY3ktdHJ1bmsKKzYxODQ4IDQxZWU5YTQwMGFkMTE0MDI2NjQwYzA3NTBiNWI0NDgyYmIwZThlMGIgcHkzaworNjE4NDkgMDJhZTMxMTI1NmE3N2ExYTk0YjQ1ZDA3NThkYjBhNTQ1NGYzN2QwNyBsZWdhY3ktdHJ1bmsKKzYxODUwIGIyZjNlNDZlNzhhMjlhOTQzMTdjNmM0ZTNkNWYxY2EyYjY1YzI5MDcgcHkzaworNjE4NTEgYmZjZGE1NTI0OTJlNjVmNTY3YjZkMmM0MjViN2VjMjFiOGU2MWNiMCBsZWdhY3ktdHJ1bmsKKzYxODUyIGM4NmU5ZGQxNmI4ZDE0ZDVmYjljMmE3N2QwNDQ3YTBiM2E2OTQwZTcgbGVnYWN5LXRydW5rCis2MTg1MyBjOTIzMDA5MzA3NzJkNjY2OWZjZjk3OGJiNTJiYzI1MzllYzhjYTFiIGxlZ2FjeS10cnVuaworNjE4NTQgNDIyODVkNjM3NTVhYzM4ZjBjNDBiNjE3NzlhNTExMWY5NTkyNmM1OCByZWxlYXNlMjUtbWFpbnQKKzYxODYzIGYzZTY0OGZlZTRjMTlhZDViZThkNjQxMzNmODkyNmQwZDcxZTdhYzcgbGVnYWN5LXRydW5rCis2MTg2NCAwOWFkZmYzZDY2OTE1NGNmNTFjODQzOWY4NGFiNGNjMTkyNTY5MzcxIGxlZ2FjeS10cnVuaworNjE4NjcgY2U0NWZkM2E3YTNmYmU2MmRiY2JhYTk4Yzk2OTlmNDgxNzQxZDY2NCBsZWdhY3ktdHJ1bmsKKzYxODY4IGRlODNlZGNmZWIzZDMwOTA1Y2Q4MGIxNmJmZjIyMDNjMDFmNTA3MjMgcHkzaworNjE4NjkgZGU1NDQ5NWE0MTRhN2I5Mzc0YzgzNzBmNjYzNjIwOTA5YWI1NzExYiBsZWdhY3ktdHJ1bmsKKzYxODcwIDJiZmY1YTcyOTAzNjlkYjU1YThlMTc1NzY0MjM4OGFhZTcyYWVjYWEgbGVnYWN5LXRydW5rCis2MTg3MSA5NThjZjBjMjdkYTkzOTM2NzFlYTBlNzAyYjQyMjM1M2U1MmNmOGM1IGxlZ2FjeS10cnVuaworNjE4NzIgMzhhMGE3MzdjY2Q0MjUzMjg2YjI5ZGNkMWU3NjI0NjdjZDBjN2JkOCBweTNrCis2MTg3MyAxNDdmMzVmNmU2ZTU4NmFmMzk3MTZjYjU4ZjI3M2RlYjlkOTc3MTMzIHB5M2sKKzYxODc0IDRmOWNhODI3YTdkODdlOTdjZGU0OWZjOGE3ZDFlN2YxOThjZTkyYTggbGVnYWN5LXRydW5rCis2MTg3NSAwZGQ0NDFjYThlYjBjMzljN2UzY2Y3NTRlNjFmMTYwOGExNjYzYTRhIGxlZ2FjeS10cnVuaworNjE4NzYgYWJiZDgxZjJjYzY4ZTZiMTc5N2QzMGRlNDI3ODE1ODQ1MTJmYzBhZSBweTNrCis2MTg3NyAwNDFlOGQ3Y2M2ODQwOTMwY2RlYjQwOGIyNTE3YTFhYjYxMmQzN2QxIHB5M2sKKzYxODc4IDliM2YwZmE1ZDhjYTA3NjAyNDBkMDJlNTMxYmYzN2NmMTM4Njg0YWMgbGVnYWN5LXRydW5rCis2MTg3OSA4NGJiNzcwMWVmYmFkODIyYTA0MjU4MjQwZGY4ZDhlYTczNjhkYzI0IGxlZ2FjeS10cnVuaworNjE4ODAgMmExZjQ4MDFkNDk0ZmNhNDVkMDA3NTkyZTdlMjcxYWQyMTY5OGZlZiBsZWdhY3ktdHJ1bmsKKzYxODgxIGFlNjU5ZmYwNTI4YmMxN2I2MWYxYWRhYjE0MGIyOWY1MTViMzdjMGQgbGVnYWN5LXRydW5rCis2MTg4MiA0N2MyZmZjMzhkMWQxMDNjZWI0ZTVkNzgyNzA1M2Q0MmRhNGVmYmU0IGxlZ2FjeS10cnVuaworNjE4ODMgMWEyYzk2NDVmNzFkZjNjMDZiN2ZjZTgxMzlmNzMzMzhkYzM5NTdlMyBweTNrCis2MTg4OSAyYTg2NmVhNjY1MDliNjM3OGQzYTZlODFhZWNlZTJhYTk3MjkwMzdhIGxlZ2FjeS10cnVuaworNjE4OTEgYTdjYmZjYmFhNmIwNjE1NjdhNTk2MThiOTc2OWUxYzBkNDE5NjM1MiBweTNrCis2MTg5MiAyMmJkMDIyOTNlZmE1ZDVkNDA1MTFiMzFmMjIxMmQxZWVlNjhlY2VhIGxlZ2FjeS10cnVuaworNjE4OTMgMGI2Mzk5OTE1OGIwNzI2NGM4ZWQ3ZTk5MmJhMjczOGRhZjFlNWQ4MyByZWxlYXNlMjUtbWFpbnQKKzYxODk0IDZiZWEyZjEzNTFiMWY1ZjNhNGQ3ZDVjNjM5NjI5MzJiNTEwYmFiNDQgcHkzaworNjE4OTYgMjU2ZjkzOTRkOTNkYjVmMzIyZmRmZjQzOTg2MjRiYzNmMmZkNjRmMyBweTNrCis2MTkwMCA3MmNjNDAwZDgwNTM2ZDFlMTU0NTZlZjVlMzU3NDAzOTVlNjZkMTUzIGxlZ2FjeS10cnVuaworNjE5MDQgZTgxY2FjNzNkYWYyZjA4MTQ5OWJhOGMwZTc4Yjk3ZDlkNTQwNzkzNCBsZWdhY3ktdHJ1bmsKKzYxOTA1IDdkM2E2ZGM0NzFjZDkxMjM3ZmQwM2YxZmNiYmEyY2IzYTA0MTcyYTUgcHkzaworNjE5MDYgMTg5OWUwOGZhNDIxMTY0ZjRjZjI1MmYyY2UwZDQ1NWUxMzNmOWM4OCByZWxlYXNlMjUtbWFpbnQKKzYxOTEzIDVkZjcyYjk4ODdmYTY4OWU5OTQ5ZDM0MjYxNDczNjk2OWJkOTM4N2MgbGVnYWN5LXRydW5rCis2MTkxNCA0NmY4OWY0ODBiZDRjNTBjZDIwMTNkN2QwMGYxY2FkOWYyODU0MDBhIHB5M2sKKzYxOTE1IDYyMmQzYjExNjhhYTI5NGQyNTg4OTI4YjliOGUwMmMwMDllYTJlNDYgbGVnYWN5LXRydW5rCis2MTkxNiBmOTRhYzhmOWNmOTZkNGVmYzQ0MDFkYzBhZTVmNmQyY2VjNTM5ZTAxIGxlZ2FjeS10cnVuaworNjE5MTcgNjc5MDk1MDhlMDQxNWE0MGUwNTgwYTBlNThhNGM2YjFkZjYyMmI4ZiB0cnVuay1ieXRlYXJyYXkKKzYxOTE4IGI1MWU0YjUwZWQzMGVjMjhkNWZhNjlhODE2N2ZjOTE3YzM2NWVmYTMgbGVnYWN5LXRydW5rCis2MTkxOSAxNTExODU2NmY5ODcyN2JjMmFhZDAxZDhiNDY0ZjEyNDgyYWI2Njc4IGxlZ2FjeS10cnVuaworNjE5MjAgMTVkYTA5OGIzY2Q4NWMxNDdiNzc3ODgyZmJjN2IwOGQwYjM1YjYzMSB0cnVuay1ieXRlYXJyYXkKKzYxOTIxIDRlYTZmMTJiYmU4YzY5YmU2N2M0YjM5YWJiYWNmYjI2N2IzNTNkNjkgcHkzaworNjE5MjIgNTRiOTBkN2VkZGI3ODFhMGE1Y2E4ZGZjYzcxYzhkZTQzNTlmNTgwZCBsZWdhY3ktdHJ1bmsKKzYxOTIzIDI5NmMyMThmMzVjZjZjMzcyYWQ2ZmUxM2I2NzU5NTVhZTEyN2RmOGEgbGVnYWN5LXRydW5rCis2MTkyNCA4ZjZjY2QwNzVhMjRkODM2NjhhNGQzNzRlODZiOGRlMTViNzNjMDExIGxlZ2FjeS10cnVuaworNjE5MjUgN2RhODkxODEwMmZlZTE1NGMxOGUwZWNiNTBkYTViZmZhNDM1ZjE1MSBsZWdhY3ktdHJ1bmsKKzYxOTI2IGNkZGIyOTdjMjQ2NTNiNjg2Y2I0MzE0ODZkYzczMTg0ZmFiOTRjMmMgbGVnYWN5LXRydW5rCis2MTkyNyA4NWFjYzQwODExYjNkNjQ0Y2Y1MmUyNTYwOTMxOTI5ZDM5YmY1ZGU1IHB5M2sKKzYxOTI4IDFhYjVjYzI1MzQxYWQxODE3YzhmZmFhZTI5ZGY0YTM4ZGIzM2YzYTEgbGVnYWN5LXRydW5rCis2MTkyOSAxZGQwMDAxNmE2OWNlZDhlYjczZDM2NmY4ZWE1ZGJkYzAzMGE0MDE0IGxlZ2FjeS10cnVuaworNjE5MzAgZDU3ODRmYzE5ZTdhYzcwNjliMjg3ZjI5ZThlNzE5ZmQzM2NhMDkxMiB0cnVuay1ieXRlYXJyYXkKKzYxOTMxIDZlYTQxZDUyMzllMDdlNmVmNjU1OWUxOGZiOTgyNjM1ODRhODY5OGYgbGVnYWN5LXRydW5rCis2MTkzMyAxYzdmYTRhY2VjYjNhZDI1NjdhMGQ3NzQ0NDA4YzZmNDNlZGIxZDllIHRydW5rLWJ5dGVhcnJheQorNjE5MzQgOWZjY2NkNThkNjVkYmY5MzY3NzI3ODIwNzExYjE3YWMyYjMxZDBkNyB0cnVuay1ieXRlYXJyYXkKKzYxOTM1IDIwZmM0MWMxN2NjN2M2MDdmOWU5ZjM3NGYxODYyMWFhYzAyNTE3Y2MgbGVnYWN5LXRydW5rCis2MTkzNiA1MzQxYjMwYjE4MTI1YmYxOTI1YzBkNDRmMGM0NzIzODk4YjUxMjhhIGxlZ2FjeS10cnVuaworNjE5MzcgY2MwZDE5NzdmODIwYzc5ODIwZTZkNjQ4NmU3ODRiMWNjNDc4YTVlMSBsZWdhY3ktdHJ1bmsKKzYxOTM4IDJlN2ZmMzhlMGExODNlYTg4YzRlMmE1Yzk4NWUyMThkM2NhODIxNWIgbGVnYWN5LXRydW5rCis2MTk0MCBjY2VlYTk4Y2NmMzVmNzc0ZTgyZTQ1OWE0MzA0OTYxZmI0YTE0ZjMwIGxlZ2FjeS10cnVuaworNjE5NDEgMmJjYmQzODgyZWVlZDZjZjcwODVhYTMzYWQ4ZTIzMmQ0NjU1NjczOCBweTNrCis2MTk0MiA0ZDE5ODkyMDQwNjIwYTQ3NDE4YWYwN2E5YjRjZjU3OWQ3YWRlMTU2IHB5M2sKKzYxOTQzIDhkNmZkZTE2ZTQ5M2NiMjRjNzVkMTUyZDM4MmQwMTMwZjRiNGQ4MTYgbGVnYWN5LXRydW5rCis2MTk0NCA2NGJkOTZmZjk0ZjE0OTQxODMxMzRiMjY4ZDU2ZTI3OWNiYmY3YjUyIHB5M2sKKzYxOTQ4IDFiNmMwZmYxMzRmYTRhMWQ4YTdhOGYzYzAwN2E2Zjk4NDk3NDU3OTYgcHkzaworNjE5NTEgOTk1Yzk5NjBmN2ZmMzgzNGE5MWQ2YzNmZjE3NTRlOTBiODdjNGMzOCBweTNrCis2MTk1MiBkY2U5ZDJkOTJjODgxNDcyYTA3YzI4ZGIwNWNjMWVmYzM2OGNlZmQ1IGxlZ2FjeS10cnVuaworNjE5NTMgYzc4ZDM1ODZjNDc0ZjY2NDA2OTUzOTdiYzJkN2NhNWNmODgyNjhlZSBsZWdhY3ktdHJ1bmsKKzYxOTU0IGRhYTZhY2VhYmRmYzU4NDkwZjhhOGRhMjI2ZTk0MTk0MjcwM2U2MGQgbGVnYWN5LXRydW5rCis2MTk1NSA3ODUwNGQ2MDRiNDQ4YzhiNWNkOGRlNTFhMjgwNmYxNWU4ZTg0YTc2IHB5M2sKKzYxOTU2IGQwMGRlZDhiMjY3NzFkNDhjMDg5ODNmYjI2OTRlNzU2YzMxNTRkZjYgbGVnYWN5LXRydW5rCis2MTk1NyBhOTM1YzUwY2I1MWFhNDVlZWIxZTQyN2IzNDgwNTFhZWU0ZDIyN2UxIGxlZ2FjeS10cnVuaworNjE5NTggMjQ4Njc2OTg4YzU0OGZjY2NmOWIwNTU5ZjJhYjc2MjQ2Y2M0MTQzNyBsZWdhY3ktdHJ1bmsKKzYxOTU5IDM4ZmU2NGUzYjEzMTczYWZjOTMzOWVhZTQzYmRjZjM3ODc0YWY2OTggbGVnYWN5LXRydW5rCis2MTk2MCAzNmQ4MjhkMjdjMzY0MDkxMWU4NmNkNmE2ZmFlMjAyODQ5MjVmNzg3IHB5M2sKKzYxOTYxIGIwNmExNWVmZGM2ZDFmNDJjZjg2OTJhODhlZjk4N2I1NTA4MWZkZWYgcHkzaworNjE5NjIgYWUyODMxNTQyNTU4MTY3ZTg0M2RhNzI2N2Y4YTI2ODQ3YTU1NzVlZCBweTNrLWltcG9ydGxpYgorNjE5NjMgNWMyNzFlZjZjYjMyNjM4M2FmNzA0YzUwZmQ5NGQ4ZTkzNjIyNGFmZCBweTNrLWltcG9ydGxpYgorNjE5NjQgYjQ1ZTdiNTdhMGQ4MmFhZDU4ZGU3OWNiODE1ZmE5NzI0NmI5NzhmYiBsZWdhY3ktdHJ1bmsKKzYxOTY1IGVmNDBlYzMyYzVlNGQ3NzM5YjJhMjUwNWQ3MDI0ZDUyOGJiMGMyMWUgbGVnYWN5LXRydW5rCis2MTk2NiA4NDc5M2JmNWE0YmZjMGQyNjA5Y2M4YTBmMjNjMTY1OWZjM2U1YzJhIGxlZ2FjeS10cnVuaworNjE5NjcgNjE5MmQ1YjEyYjZhZTE3YjUzYTJkYWY4YzZhMzlhNjc2OTljNTFiNiBsZWdhY3ktdHJ1bmsKKzYxOTY4IGQ3NDBjNzFmMDJmZjI3YWI5ZDk1MThkODMzMmM2ODBlYmNlMTcxMzcgbGVnYWN5LXRydW5rCis2MTk2OSA1MDc4YjdlZTE2ZGMxNzFkNjk3YmEzMTUzOThhNGQwNWMxZWM5MmFkIGxlZ2FjeS10cnVuaworNjE5NzAgYjM1MDk2MGFkZTZkNjY5Njc3M2I3MWZlMDM5NmI2ZjYzNzc3NWI1YyBsZWdhY3ktdHJ1bmsKKzYxOTcxIDMxM2YzODFmYzBhNzE3MGNjMWU4MWE5NzRhNzdhYzA2ZDQ1MWNlN2QgbGVnYWN5LXRydW5rCis2MTk3MiA2ZjEzMWQyYzM2MjgyMDliZWZmZDU4OTVjZGQ1MjMzMTUzOWNkZmFhIGxlZ2FjeS10cnVuaworNjE5NzMgZWFjNDFmOTAyOTZjNjljNmQwN2QyOWYxZmViNDUzYTRjMGU0MDBkMSBsZWdhY3ktdHJ1bmsKKzYxOTc0IDYyMTM4YTBmNDIzMjZiYjAzNDBiZWU3MGZkNDdiMTExNGYyYjMxOTQgbGVnYWN5LXRydW5rCis2MTk3NSBhMGVhM2EwZWZjNzEwOTM0YWQ2NmUzOTA3MjExMjMwZmYyMjdkNmExIGxlZ2FjeS10cnVuaworNjE5NzYgZjFhZWM3ZGVjMDVjYTIxZWI4MzY3NDA2ZGVjOThlYjA2Y2ZhNmZkOCBsZWdhY3ktdHJ1bmsKKzYxOTc3IGUzOWY2OWJmNTYxMGVhZDM5ODUxNzc0NDU5MDlhN2JhZjk0ZjhhMWYgbGVnYWN5LXRydW5rCis2MTk3OCA1NjQ0MmRiNjBhMzYyYmZiNjJlOTA0NjNmNmRhMzE0OTM2YjJkZDllIGxlZ2FjeS10cnVuaworNjE5NzkgMzFiYTNmYTE1ODViMDlkYjBjODAyNzdkZTIxODBlYWNjMTYwNDhkMyBsZWdhY3ktdHJ1bmsKKzYxOTgwIGNiNTYzMzBkN2FkYzhjZDEwMzliZTQwNGVlY2ZmOTFiNTViYTJhN2UgcmVsZWFzZTI1LW1haW50Cis2MTk4MSA2YTY2ZDMyNjdkMGNkNGRjYTYzZjU2MWYxNmI2NzBhNjU5Mzk2NTYyIGxlZ2FjeS10cnVuaworNjE5ODIgZGE1NTk3YTVjMTk1ODJhOGUzN2Q1NDA1OGY0MTc1YjVmYWQxODcyYSBweTNrCis2MTk4NCAxMGEzOWE2NjJlNjljYTRkZGZmYzJiYmZlYjdiNTA4MDFhZDQ5ZmI1IGxlZ2FjeS10cnVuaworNjE5ODUgMThlMTlhYzk4ZDM0YzAxOTMzMTI5ZGM3YmE3NjE0YjQxOTYyMjBjMyBsZWdhY3ktdHJ1bmsKKzYxOTg2IDU5ZDA4MjU5MWY1NjgwNDFhMGM2M2Y0YTRlOWMyZGFmNmUyYzk0MjggbGVnYWN5LXRydW5rCis2MTk4NyA3ZmRmZjAyZTZmNDVlYTk4NDUxYTdiOWJiMzA3MDE4ZThkODYzNTdhIGxlZ2FjeS10cnVuaworNjE5ODggNGJmNjFmY2NjNGU2ODgyNDc3ZmNmM2E5NGY1OTQ1YWI5NzUyNmJmNyBsZWdhY3ktdHJ1bmsKKzYxOTg5IDZlN2IyODA4YjlhNjllNzdhOWI1YWYxYzhlZGIyYzJhYjE3YTAzNWEgbGVnYWN5LXRydW5rCis2MTk5MCAxZDUwNzQ3ZTUzZDM2OGIwZDgxZGE5MjA2ZjBmZDIzOWNhNmMwODg5IGxlZ2FjeS10cnVuaworNjE5OTEgNzIzMjI1OWEwNTI5ZTY5NjAyOWYzNDU4NDJhNDZlYzFkMWI5ZjA4NyBweTNrCis2MTk5MiAxZTEwYjMwZjc0OThjM2Q3MmRiOWRlM2EzY2JlNzYxMDk2NmI2ZDZiIGxlZ2FjeS10cnVuaworNjE5OTMgMzEwM2VhM2RmNDlkOTRjN2U3MWM1YTAxYmE3ZDZmNmRiZGRjNDkwMiBsZWdhY3ktdHJ1bmsKKzYxOTk3IGJiZmNiYWZlYWU4NDNkMDBhOTRiMWFkM2IzMGJmYzk0MjgxYmY1MWMgbGVnYWN5LXRydW5rCis2MTk5OCA2NGYyZWI0MTcwZjE5NjBhMjk1NjgwZjdmZTFlODM1NmI2MWFiYTYwIGxlZ2FjeS10cnVuaworNjE5OTkgNjlkMDA5MDc0MDg4M2ViOGQzZjJiNWVmOTg4Mjg2MGQ2YWQyYTI0YiBsZWdhY3ktdHJ1bmsKKzYyMDAwIGY5YTYyOWY0MTY1NmRhNzIwYTU0ZmRmYWZiMzM0ZjM5YmFmNDRkZGYgbGVnYWN5LXRydW5rCis2MjAwMiAyMzY1YzQ3ZmU2NGRkYzM0ZWYwY2NhNjNiNTdjYWZjMDQ4NTdlMGIxIHB5M2sKKzYyMDAzIDg0ODE2MGQxMDc4MDYxY2NiYjVkNjdjZTcyYjIyNDVlMzY5ZTU1MmQgcHkzaworNjIwMDQgY2EzOGY3YTRiNGM5NTk2OGI4NGEyNzQxZjQxYWUzMmFjMjQwM2JjNiBsZWdhY3ktdHJ1bmsKKzYyMDA1IGE0M2JlMDc0MzI0ZDJmM2YxYmU5OWY2ZTRkZDUyYzZkZjgwZTMxODUgbGVnYWN5LXRydW5rCis2MjAwNiAwOWZhOGNiMmJmZThmNGYyYWE3NTAwMTQzMWJlNTM2N2JiYTcwN2VjIGxlZ2FjeS10cnVuaworNjIwMDcgYWFjZjhiZTUxZjkwMzA3ODc3MDliYzVjZDQ0YWVjYWRmZTM4YTcwMyBsZWdhY3ktdHJ1bmsKKzYyMDExIGEyMTg1NGU1MTBiNDdiY2NjZWRlMmRlZmE4NzNkN2IwMjRmMTAyZDkgbGVnYWN5LXRydW5rCis2MjAxMiA2NTRhZDc0YWRlMTMxMjAxNmQ3ZjViZWU1NzU0NjRkOTg1MWEzYWJhIGxlZ2FjeS10cnVuaworNjIwMTMgMWI1YjZhYmIxZjJlZGU5YjE0NWFhODQ2MjdiYWJjZmYwOTQwY2Y3YyBsZWdhY3ktdHJ1bmsKKzYyMDE0IGMzZTY3NGNiZDcyZTlkOWFiNDUxN2Y5MDY3NmIwMGQ2OTc4OGY1MjUgbGVnYWN5LXRydW5rCis2MjAxNSAzYjk5NGY3NGIxMDA0ODIxM2VmZDI4YjdlNTVhYTgwOTk0NWU2ZjcyIGxlZ2FjeS10cnVuaworNjIwMTYgYzc3Y2MyM2UzOTRmMTQ0ODE2MTJjMDkxNGRmNGU4ZDI1MDYwNjUzNSByZWxlYXNlMjUtbWFpbnQKKzYyMDE4IDk3MzRhNDJjZmExNWUwMTVlY2RkYjlmM2VkM2IyYjkxNGYyNWRiYTEgbGVnYWN5LXRydW5rCis2MjAxOSBjNGVkNjY0YTFkYTFjMGIwMWIwOWE5NmVmM2VlYTZlMzVjMjExOTRjIGxlZ2FjeS10cnVuaworNjIwMjAgM2VhM2U1MWQxZWUzZmE4ZjY3YmM0NzNiMjU0ODU0ZDI3ODZhZTlmMiBsZWdhY3ktdHJ1bmsKKzYyMDIxIGVmZWY0ZTNmZWQxN2RhY2YyZjNiYzdjNDAyNzg0NWRmN2RkNWU0NWIgbGVnYWN5LXRydW5rCis2MjAyMiA4NzJhYmVkN2QwNjk0ZDg5YjRmZDU0OTcyOWE3NmYzZmQ4YjJhNTA4IHB5M2sKKzYyMDIzIDdjZTFhOGZkOGE3MWNhOTdlNmMyNmQ4ZmNlZWVlZTExYTBhZDExNWYgbGVnYWN5LXRydW5rCis2MjAyNCBlMDZlMDhlOGZkY2VkZWM2YmFkYTNiMWRhMjg3NmE5ZjhjYzBhMDcyIHB5M2sKKzYyMDI1IGQxZTFiNzQwZjY4NDM4OWMxZWViMmE4NjMzYmEyYTU2ZDkyNjA4MmYgbGVnYWN5LXRydW5rCis2MjAyNiAwZWE1YzA1NWFiNTRmNDZiNmYzZGMyOWMzOTI1ZmI4NGM4MjJmOTViIGxlZ2FjeS10cnVuaworNjIwMjcgMDkwNTNhN2MxY2RmZDgxOGYwOTJmNmE4YzRjNzA0Nzg0NDAzZWFjMCBweTNrCis2MjAyOCBmZTUzZDFhMzZlZjYzYjk0ZDFlNTk1ZmJmNGU1ZmRmMzUzMDYwMjJlIGxlZ2FjeS10cnVuaworNjIwMjkgYzQ0MGE1NzM3MTQ5YTcxMmRiOWJkNDVhYmQ4NDZmNTc2N2VjMzZkMyBsZWdhY3ktdHJ1bmsKKzYyMDMwIDZiM2FjODllMGRkNDkyNDlhMTA4ZDlkYzVmODVmODU1YzA5OTM4NGIgbGVnYWN5LXRydW5rCis2MjAzMSA5NThjZjdlY2NhZTI0OTYyZDc5NTBiYWIyMjc1NjViOTM5YmI1MjAwIHJlbGVhc2UyNS1tYWludAorNjIwMzIgMGE0ZGEzOTdlMWRiNDdiMDg2Y2ZkYjAwZGRiZjg5YjNhZWE0MzUzNyBweTNrCis2MjAzMyBmMTg0MzMzN2E2NmMxNWU1MzNjNjAyMGU5MGJiN2FlZTZmZTQ0NmZkIHB5M2sKKzYyMDM0IDQ2MzQ4ZGU2M2Y2MWEwZWJhN2ExZjM0YzRkM2E0YTVlOGVkOTk3MGIgcHkzaworNjIwMzUgNTExMGNmMGU1ZjhmZWFmMjQxY2I5MGRmZjJmZjc1MDAwNWU0ZGVjNyBsZWdhY3ktdHJ1bmsKKzYyMDM2IDE2NzM2ZWI0MDE1MGFhN2Q3ODg0MDc4ZmJiMTA2NzViMmFiY2Y3ZDQgbGVnYWN5LXRydW5rCis2MjAzNyAyM2U0MjU3NzIyNmE3Zjg1ZmI4YWIyNzIxZmZkNzgzNDgwODljNWFlIGxlZ2FjeS10cnVuaworNjIwMzggNmUwMmZmMGJkNmY4OTQ0YjcxMjI5YWIxNzEwODIwODk4N2YwMmFlZiBsZWdhY3ktdHJ1bmsKKzYyMDM5IGIwYmYwNmQ0OTY0N2RkMjVkMWMzZDM2NmM4NDFhNDYyOTA4Zjg3NjMgbGVnYWN5LXRydW5rCis2MjA0MCA0YzY3OGU5YzdhMzA1MGMyNDEyYjM2MTc0YTEwMDVhN2MzZmQzYmI4IGxlZ2FjeS10cnVuaworNjIwNDEgNTFlZmYyZmQ5NTI3MTM2NmNlODc4MWQxN2YyYTBjZDYwZWIwMDAyZSBweTNrCis2MjA0MiAwYzIxZjliNGE4MzFhNDYxNmE4NmQyNjJhZWFiNjdlZjYxZWZjYzMwIGxlZ2FjeS10cnVuaworNjIwNDMgMDFhN2U2NjUyNWMyNjI0Y2M3YzI4MWQzMzZhMzgzMjkwZWYwZTIwMSBsZWdhY3ktdHJ1bmsKKzYyMDQ0IGU0NDg2YzM0M2Y3ZmE2OGQ5YTA3MWIwMTc5ZDY3NWE1MWUxZDhkOWMgbGVnYWN5LXRydW5rCis2MjA0NSBlZDg4ZjRkZTQ5NmYxOTgwNmIzNjZhNzBlZjI5ZDc3MmJjYTE2Y2RmIHB5M2sKKzYyMDQ3IDJmZjg4YWU5ODUwYzUyZTVjZTdhZDljNWExMmVlMTUzYTYyMTRjODEgbGVnYWN5LXRydW5rCis2MjA0OCBlMzcwZDljZDE0OWVhMjYwNGJiNzhmNTFhMTcxNTU2MTllNTQ1Y2VlIGxlZ2FjeS10cnVuaworNjIwNDkgNDJjNWQyODdhODUyZTZmMjg5ODhjZDZiMjU5MzIzZGFjMDA3N2FlYiBsZWdhY3ktdHJ1bmsKKzYyMDUwIGYwNTFlN2E4MGFjYzc2YjQwMjllZTU4NjYyMTQ5NTgxZjJiMDZlMTkgbGVnYWN5LXRydW5rCis2MjA1MSAyOWVhNTA3ZmQ5OTgyMjMzNzQzODc0MTAyMTY4MmYwMzFjODIzMGMzIGxlZ2FjeS10cnVuaworNjIwNTIgYzExMjIxOTA2MTcxMWE0NTAxZTg3NmUwZDA2ZTczZTcxMWU5ODAwZiBsZWdhY3ktdHJ1bmsKKzYyMDUzIDA3Zjc1ZDU1MTliNDdiNGMwYjE3NWQzYzNmMjVhYWZiZTFiNjg5OTIgbGVnYWN5LXRydW5rCis2MjA1NCA1OWQ0MmU2ZDE4ODUzYmEwZmFkOThmOWJmZmU1MTU0MDQ4ZDVhYzJhIGxlZ2FjeS10cnVuaworNjIwNTUgZWE3NWIxMmZlOGU3NmY5YmZlODMxM2Y2ODYwNGM4ZDAxNGYzMjhiYyBweTNrCis2MjA1NiA5ODI3NmJlNjQ1NzlmYzNjMGM2MTMxZmYyZTJmMTUxZTU3MDU3ODNkIHB5M2sKKzYyMDU3IDFjOTcyMzJkOTNmZjNlOWFlMjBlNGExNjE4NWM0YWIzYTA2MWM0ODUgcHkzaworNjIwNTggZTg5OThlODBlYWYyYmY4YjU5OTAxODU4NDc4Y2NmN2NmNmY5NWJkZSBweTNrCis2MjA1OSBiZTE4ZGY2MzQ0MDU4NTkzOTU2MDUwYzg3ODc3YTVmODY3M2EzMTE0IGxlZ2FjeS10cnVuaworNjIwNjAgMzJlYTc2NTRmZjljNGVmMzVmZDNjOThjN2EwMmQ4MDcyYTQxNmVhNiBweTNrCis2MjA2MSA0YzdiYjQwOWRhZDZkMDBkOTBkNmRhYzQzZjgzNDk3MjJkNWQxMDU2IHB5M2sKKzYyMDYyIGE3ZmI0ZDg3Y2JkZTM5N2RhNGZlZjM1ZjZmNzhlOTkwYmQ2ZTI5ZWMgcHkzaworNjIwNjMgMmJjMWQ1YWE3MjllZTQ5NmM2ZTkyZmZjODBlZTQ0ZTRjOTJiNDk2NiBweTNrCis2MjA2NCA2MDQyOTE0ZTgyODY3N2NiMjllNmRhOTJmMzhhNWVlZDg4YjBiMWJhIHB5M2sKKzYyMDY1IGM1YjE0OWFkMzAwZjhjMDhjMWVjMzhlYjMyYTkxYjA2MjQ3NDdjMWMgcHkzaworNjIwNjYgNTdiYmFjNTMxOTE5ODI5YjMzZmRmZDNkMzE4NmNlNTRiODcwNGFkOCBweTNrCis2MjA2NyA2MDBmMmZmOGFhOWU5MTcwY2M2MDk3YjU3MzUxNmU2OTM2ZjNmMWNhIGxlZ2FjeS10cnVuaworNjIwNjggZmZiZTZjNzkwNTIzY2QyODhmMTg5MWY5MTcxZTJkZWEwNjU5YjM3MSBweTNrCis2MjA2OSBhZWQ2OThjODY0N2I5OTE0ZjAxNTdiYTdhM2ExOTI5MTEyY2U4MTc5IHB5M2sKKzYyMDcwIGYwZmE2MDViMmE3OGE2MDhiN2Y3MzI5MmVkY2FlM2RhMzczYjMxM2IgcHkzaworNjIwNzEgMzhmOGRmZWNlOThlNWJkODNhNzNjNmJmZDA3NTMyMzYzMjkxOWI5OCBweTNrCis2MjA3MiA4NjQ1NzRhOWNkMjZlYTZkNWY1NmE5N2VjOGU0Yjk5MDk4MDk3NjU3IHB5M2sKKzYyMDczIGU5MDMyZjVkZDUzOWIzYTY0OTI2MTY3MTVjYjJlOTQwMzFlMDdlOTAgcHkzaworNjIwNzQgYjJkOTNhOTYwYjk4OTBmNmQ4MzE2MzVlODhjOWZiM2FmZjc4YjkwNiBweTNrCis2MjA3NSBlM2RjODY3YjYxODJlZTEyOGMyNWIwMDE1ZWYwODJmYWEyYTViYzA0IGxlZ2FjeS10cnVuaworNjIwNzYgMDdiMzZkMmI3NTM0YzVjOGJiNDk2YTcyYTkxZjgwY2MxMWZjYzM3MiBweTNrCis2MjA3NyBlNDc0ODE3NjRlNTczMDg0ODhhMTllMWNiMzkyMzQxYzFkNjQxOTQzIHB5M2sKKzYyMDc4IDgxZWUyNzBhNmViNTRmMDAzNzIwMDcxMzdiZmZjNDgyZGYzNTMzMjcgcHkzaworNjIwODAgYzNlZTBmMGZiZWUxY2VmNjI0YjIwNGNiOGIzZWFlZmY2ZTQ5YTJhZiBsZWdhY3ktdHJ1bmsKKzYyMDgxIDYxYzkyOTIzY2Y3ZmNlYjNlOTJmMGY1YmM3NzNiN2I5ODg0ZWQ5YTMgcHkzaworNjIwODIgNDE1MTU2ZDRjYmQyMGM4YzYyZWE5MTg3NDg5MTZlMTBjYTE2NzNlMSBweTNrCis2MjA4NCBjNzAxNWUzNTdhMmM5NzljNDI0MmI2ZjIyNThkMDA4NTg2Mzc0OGRmIGxlZ2FjeS10cnVuaworNjIwODUgMTc4ODFmOTZlYTAxZTMwNDBmMWE2ZjkyYjMzYTRkMjAwOTZmM2FlYyBsZWdhY3ktdHJ1bmsKKzYyMDg2IDZkZWNmZTM4YTgwOTE5OWYxMjU4ODUwMjE4ODQ4YzA2OWM5NWQwZGMgcHkzaworNjIwODcgZDg2YjMzM2M3MmU3NDFiOWM2YTIwNzdiMGI2Zjg4Y2ZmNjA4ZGE5YiBweTNrCis2MjA4OCAzMGRkNjA2OTg2NzFmMWI4NjY2NTVkOGM3ZjgwMThhY2YyMjYwMjU5IHB5M2sKKzYyMDg5IDVhMTdkMTU3ZGYwMDE2NDdiNjIzMjRkODk5ODUyMmM3N2U0MGI1NWQgcHkzaworNjIwOTAgN2RmZjVlNDFmYTdhZTFiYjAyNzQ1N2ZjMDFiZTgwMGZmMWE0MDU1ZiBsZWdhY3ktdHJ1bmsKKzYyMDkxIDRjNTA2NWRkYjliZDYzODgzMzAwMmYyMzhmZTY0NTM2NDI3MmY4ZTggbGVnYWN5LXRydW5rCis2MjA5MyBhYjRmOGM0NmMzZDliNmRjNjk2NmE5ODM1MDllYTU4NzZiY2JkODg2IHB5M2sKKzYyMDk1IDQ3NzllMzQ5NmFlMWFmYmJmYjgxMmViNmU1NTIzMmRlYjM2MTI0YzUgbGVnYWN5LXRydW5rCis2MjA5NiAwNzMwZjNkNTBjZGNhMWIxNmQzZGQyYWZlNDhjYzU4YWM1ZTE4ZjcwIGxlZ2FjeS10cnVuaworNjIwOTcgMWM3OGQ4ZTg3NjUzYTVkZmIyNzkxODE1YTNjYjc1Y2Y2MDM1NjcxZCBsZWdhY3ktdHJ1bmsKKzYyMDk4IDBiMzc0NzcyNTRmNjQxODA4Mjc2ODdlMjRkY2QyZDM5ZWJiMjM4OTEgcmVsZWFzZTI1LW1haW50Cis2MjA5OSA1OTM5OTAwZDk4ZDIxNDk5MThhMWNmNGY5YjQxYWU4Nzc2ZDBkODE4IGxlZ2FjeS10cnVuaworNjIxMDAgZDZlMTMzM2U2MDc1Y2Y0MWNmMmQxY2I3NTY2ZGY5ZWI2NzA4YTdiMCBsZWdhY3ktdHJ1bmsKKzYyMTAxIGM3YzI1MjA0ODU1NTM3NjhlNDk5YTgzZmZkZmFjNDI2OTkzYjA3NWEgcHkzaworNjIxMDIgZjc1MzkxOGFiZTY1MjgzOGIxYjEzZjI4MzUxOGZhMWM3NjM5ODEyYyBsZWdhY3ktdHJ1bmsKKzYyMTAzIDBiMmE0YTEyNDVhM2M5NjY3MTY3NmFlY2U4NzYyNDM5NGQ2ODE0YWIgbGVnYWN5LXRydW5rCis2MjEwNCBiYjRhNTQ3NDMwZjg1Y2UwMzVjODgxNGZkMGRjMDMwMGU5NDhiYWY2IHB5M2sKKzYyMTA1IDAzZWQwMTE4ZTczMzc2MDM4Y2RhY2Y5MjA5OWQ0NTk3MWRjN2M5OTYgbGVnYWN5LXRydW5rCis2MjEwNiA4ZTZhNGNjN2RmYzA0ZGE2OTRiOWRjMzQ5ZmRmNDQyNDY2ZGM4YWY2IHB5M2sKKzYyMTEwIDgxMTc5MDZiN2JhNzVlNmUyYjQ5OGYwMjYxZGFhYTA1ODU2ZjRhNWUgbGVnYWN5LXRydW5rCis2MjExMSBhMTcyYzJlMzhhYzllMmVhNjJlZDllOGI1ZWJhMWI2NjY4ZTE2YjYwIGxlZ2FjeS10cnVuaworNjIxMTIgYTk0NDY5Yzc0YjllYjRiYjMyZDhlYjA2Yjg0ZDZjMjQ5Y2IwODQ3YSBsZWdhY3ktdHJ1bmsKKzYyMTEzIDBhNWM4NjM1MGE4OTI3NjEzZmE0NTI0OWEwMDkzY2MzMGEzMTk2M2MgbGVnYWN5LXRydW5rCis2MjExNCAyYjBlY2M3ZmQ3ZWVhMjgyZGRiMTJmNGViMzY3MGM1MWRhNDRjZmFiIGxlZ2FjeS10cnVuaworNjIxMTUgMjA1ZDdmZDUwZDM1YTk2Y2FiNjM2OTllZjI2MmZkMjNhZmU2ODk1MiBweTNrCis2MjExNiBmNTQ3ZWJmMDI4NDMyODliOTQ4MWQxOWU4ZjU5NjI4NzcxZmFkNjI1IHB5M2sKKzYyMTE3IDg3OTFhYzljYmNjZDViZjFmMmEyNTc4MWU2ZDQ4MmNiODNiNDVkYWUgcHkzaworNjIxMTggOTc1YmQyMTYwNTI3MGEwN2Q5MjU3Yzk0NmE3OTViNDg4OGM2YTkxMSBweTNrCis2MjExOSAxNWY3NzNmNzMwMGUzNzJjNTZhMjFkNTlmZTQ5Y2EyNjk1NWE2NDc3IHB5M2sKKzYyMTIxIGVjYWIwMzc2NmNhY2NmMzQxN2JmNGZmOWQ3NWEzZDlhNzc1YTQ5NTQgcHkzaworNjIxMjMgZWVjMTQ0OTE3YTE4OWJlMTFlZDVlZmEzNWM2NjA0ZDAzYmM2MmJjYyBsZWdhY3ktdHJ1bmsKKzYyMTI0IDc2YTgxZWY5YjM3OTFlOTRjMzZhNTAyYTliNjIwNWIwNDc2NWNhY2IgbGVnYWN5LXRydW5rCis2MjEyNSBhYTliYWJiOWE0OGVkOWNjMjliOTJkOGJmYmI2YWQ2NjE0MmRhMzkxIHB5M2sKKzYyMTI2IDE2MTdiYjA1YTc4YWQ4MTgzYzJkYTI2Mzg3MjEwMTg5N2IzNmExNmQgbGVnYWN5LXRydW5rCis2MjEyNyA0ZDgzYjhkMDMyOTlmNWFhMWZhNGU3MzQxM2FmMjRlZTQ0ZDAwNmZkIGxlZ2FjeS10cnVuaworNjIxMjggMjg0OGM2NTdhZjBhZTc0ZjYzMGJmMzdlMTIxM2M5OGY3OTUzZGQzZSBweTNrCis2MjEyOSA5ZGNkYTU2Yjg3MWUxY2VhMGIxZTk0OGQ3Y2Q0YzYxYmM5OGM1YjMzIGxlZ2FjeS10cnVuaworNjIxMzAgODE0MjJmMWRlODkwOWRhM2RkMzcyYTRjY2UzMzQ1MjI5YWJjMjAxMSBweTNrCis2MjEzMSA5NzM2YzIwZDI2ZWI2ZjY0OGFkMzFmNGQyNjNlNzY4MzA0ZmQ5NDE0IGxlZ2FjeS10cnVuaworNjIxMzIgZGRmZTk0NzQwZWRlYTU3ZThiYmVkYjAxOTlkMTc1YTM3YjcwMGM1OCBweTNrCis2MjEzMyBhNzJlOTE3NDkxYTQ4Njg0MjQzOGY3MzhmODM2OTAwZWIyN2VkOWFlIGxlZ2FjeS10cnVuaworNjIxMzQgNjdmMWM0NjUyNzljYmMxZDRlMWY4Yjc2Mjk2MjRlMmZkZjNjOTliOCBweTNrCis2MjEzNSBjYzMzMzNiN2JkOTM2NjY4YzE2NzgwZDgwZjAzZGQzY2Y2ZjllOTNiIHB5M2sKKzYyMTM2IDc2ZjU3N2E5ZWMwMzNmZGEwODE0MGFhZDc4ZjY1OTVhMDU4Y2U1YjUgbGVnYWN5LXRydW5rCis2MjEzOCAwM2IyNmY5MWJmNmQwNTAzYTM0MjJiZGQ1Nzk0NDUxMDk5OTJjMjQ2IGxlZ2FjeS10cnVuaworNjIxMzkgNGJhNjgxOTVhNTExNjMyNjNjZTkzNDMwNjlhMGZjMDhjZjQwZjEzYiBweTNrCis2MjE0MCA3YzA4MWMwYjBmNTU4OGRiYzFiMDM0OGVjZTlkYmQxYTQzYjllOTBiIHB5M2sKKzYyMTQxIGFjNWU0ZDU0YjIzZTlkNTZlMmUxNzM0ODc5MDNiMzM2ZmUxNmIzOTQgbGVnYWN5LXRydW5rCis2MjE0MiBmYjNjOWJiNzZiMjk0NThmYjMzODc1MzM5NDk3MTA5YzQ2MTgxOTkwIGxlZ2FjeS10cnVuaworNjIxNDMgZDgxOGY2ZDI5Mzg0N2E3ZjBiMTExOWM1MjBjMjJkN2E0YmM0ZTFhMSBsZWdhY3ktdHJ1bmsKKzYyMTQ0IGNjZGRjNTZiZDViMDcwZmI4ZmY2OGUyMzRhMmNjZDI0ZDUwZjYzYzcgcHkzaworNjIxNDUgYjI4YTJkMjVmZDkyZGMwNTZmZDU2ZTFlNTc0MWYzYzg4ODA2Yjg1YSBsZWdhY3ktdHJ1bmsKKzYyMTQ2IDNkMDM1MmE1NDFjZTU2NjJiNjlhZTRjNzQyNmM4NzQ3NGJhMTU5YWYgcHkzaworNjIxNDcgNGExMTMzMDNmMzE2NTQyZGM3ZDMzZjNhMjE5OTFmNzBhNWU2OWJiNyBsZWdhY3ktdHJ1bmsKKzYyMTQ4IDM5OWU3NGJiMTJjN2RkMGY5MDE3M2YwZGY2ZDk4NzY2ZTYzN2U4ZjAgbGVnYWN5LXRydW5rCis2MjE0OSA4MjczMTc2ODk4NmQ0NzQ5YTBhZTM4YjcxODExYmNmZmM3MDk5MGZkIGxlZ2FjeS10cnVuaworNjIxNTAgYzNhNzcyNTg4ZGI3NmViZGVjNWVlODZlODBmYWM0ZDhjMzZjMTEwNSBsZWdhY3ktdHJ1bmsKKzYyMTUyIDZhYmUyNWI5OTI0YmFjOWYzYWRjZGNjODE0YjZlNTM3YTdiYjQxODggbGVnYWN5LXRydW5rCis2MjE1MyA2MWEwYzc2ZWNmODc2ZWU1YzcyZDc1OThlNDgwNWVkMGE1NWMzMTlkIGxlZ2FjeS10cnVuaworNjIxNTQgYTE5ZWM0ZjE3Mjc3OTcyYTNkNWVlZDc2ZjlkZmUzNjM1Y2Y4MTlhNSBsZWdhY3ktdHJ1bmsKKzYyMTU1IGY4MDZmZDk5NDFkYTY4YzQ1NWQ2YzBiYjZjZGEyYjU0MmMwY2I2ZTcgcHkzaworNjIxNTYgMGNlN2EyMzUyYTUzZWEwNzgwMGZiZWE3MmQxMzNmMTVmMGE3OTgxNiBsZWdhY3ktdHJ1bmsKKzYyMTU3IGU4OTE2YzY0ZGY0YzVmYjUwMGZkMjZjNDA4MjA5NmMwMWQ4ODg3ZmUgcHkzaworNjIxNTggNDkwMWU3NWY3NzVhZTFhYzAyNTJhZDM1Mjc0ZjY1NzgyMzdiOTUxZiBsZWdhY3ktdHJ1bmsKKzYyMTU5IDM3MjZkZThjYjhlMWQzYzAwNDMwYWU3YTFjOGZhMTE1ZDA3Y2Y1OGEgbGVnYWN5LXRydW5rCis2MjE2MCBmNGJmM2U3YmNiZTgwYWUyNGE3MWQxODJjMTJlMzJlYzE4MDQ3MTIwIGxlZ2FjeS10cnVuaworNjIxNjEgZGU3Nzk3M2Q3ZTFhMGM0ZDJmYzU5NGM4ZTRhNGUxMDA4NjkxYTYzZiBsZWdhY3ktdHJ1bmsKKzYyMTYyIDM0NDJlOWU2YjJjZjE4ZGZhNjUwN2I1MjIyNzczYTRhYzU1Y2Q3Y2YgcHkzaworNjIxNjMgOWM5MjZiMGE2NDhmNDI0OGRkZDg1NGM3OTgzOTA3YTNiNjliMjk5ZSBweTNrCis2MjE2NSBiMTAyOTJlYWZiMDczNzE4Mjc1ZGU2ZDU0YzkzM2ZkZmMxZmFhNjA4IHB5M2sKKzYyMTY2IGMzZGNjMGM3YmZkOTU3ZTEyNjM4ZDFjZTA3YjQ5MWU0YWMzOWE5MzkgcHkzaworNjIxNjcgYTFhNTE4YmU1NDdkZDkyYzliYmE3YWQ2YTg3NGJmMGVjNjIwYmMxZCBsZWdhY3ktdHJ1bmsKKzYyMTY4IDEwNTVmMzY5YjFmY2VlMDc5YTJjZDk4YWZkOWQ1ZWM3MzU1NzYxZmMgbGVnYWN5LXRydW5rCis2MjE2OSA2MjUzYTcyMWQ4YTZhMmIzZTY5YjM1OWEyZjQ5MmJiN2ViMTAxY2QxIGxlZ2FjeS10cnVuaworNjIxNzAgZTNmN2RjZmFhMDMwY2JlODRmNWJkYTM0ZmZiYTQ5YWZjYWU3YTEyMCBsZWdhY3ktdHJ1bmsKKzYyMTcyIDg1MzJkNTY5MTg1MDlhYjhlMTEyYzMxMzVjYzEwYjQwOTFjNGFlNDkgcHkzaworNjIxNzMgMTBkOTRjOGM4NDE0YWI2NzJlMjI3ODBiMDJiYmVkZGJkN2JhNDc2MyBsZWdhY3ktdHJ1bmsKKzYyMTc0IGY4NGNkZmMyMjFkMTM1ZTBlMmUxM2U1YmQ5MjVkMTEyOWRmMTY0NmIgbGVnYWN5LXRydW5rCis2MjE3NSBiYzcwMGFkMDI5NjIzMTg1MjY0ZThjNWQyZDIxNmJlZjExMmJhZjJjIHB5M2sKKzYyMTc2IDQzNTJkNDFhZmZiMDFiMjVmMGYxNjI4YmYzY2JhZTk5MTllMTY5OTcgcHkzaworNjIxNzcgODY0YTU2NzFjN2E0M2NhNzcxYzQ2YmM2NzZlYTUyNmQ1Mjk5MDI2YSBsZWdhY3ktdHJ1bmsKKzYyMTc4IDIyYTc0ZWFmNmIyMjUzZmMxMjViMDc5MWMyZTcxMjk3YjkxY2Q5YTIgcHkzaworNjIxNzkgNDJhNzU4Zjk2MWExNzkzM2NlZTJiYTM2YzE4NjlmODAzMDJhZDVkMyBsZWdhY3ktdHJ1bmsKKzYyMTgwIDAxMmQ5N2JiZWVhZjZmNmMxOGVlZmQ0NTQxMGQzNDJlYTRhYjIzZTUgbGVnYWN5LXRydW5rCis2MjE4MSBlNTNmMmNjY2RmMWQ3MWIyNzk3MDE3OWM0ZjZjZDZiZjIxMTQ2YzM0IHB5M2sKKzYyMTgzIGZiNWVhYTRiZTcwMDkxYTZlZWM0NWRmNzJmNWNlZTJmNjFkODQ5ZWUgcmVsZWFzZTI1LW1haW50Cis2MjE4NSBmNDZjZDI0MGUxMDU4NWM5NDkwNTUyZjYyN2Q3ODA3NzIxNTNjOWY1IHB5M2sKKzYyMTg3IDAzNTI4OWU2ZmUyMzVkZDMwNGFlNDhkNmM4YjE1NTU0YTYwYTZhMDEgbGVnYWN5LXRydW5rCis2MjE5MCBjN2RhMzFjMmM0NWZmN2JkYTBiYTI3YzJiZWMzMzJlMjI4NTMxNjkyIHB5M2sKKzYyMTkyIDljNjQ3NTQyNzYwNTIxNDMyZjc3ODlmYzVmYWM4YWRjZjZmYTA3YTQgcHkzaworNjIxOTMgZTI4ZWQ4NWNjOTYyZGQ3NDFjODFmOTIxODg5OTI1ZjgyNjkxMmI0YSBsZWdhY3ktdHJ1bmsKKzYyMTk0IDI3ZDMyNDM2MGE2M2UzMTRlMjJhYTJhODEwMGNjYmEzZmYyMzkwNDEgbGVnYWN5LXRydW5rCis2MjE5NSA4NmRhOTI5OGI5MDhiOGM5NzZiODFkYTA5MjExM2JiOWM0MjViZTJiIGxlZ2FjeS10cnVuaworNjIxOTYgZGY3NjE5NTM5NjMxYTI2OGMyZTA2OWEwMjBjZThkYTRlYjI4OGZmYSBweTNrCis2MjE5NyBhOTNkMjkxOWVhNTliZGQ5YTBhMTBkNjQ0NjA3Y2I5YmYxYjIwMDk3IGxlZ2FjeS10cnVuaworNjIxOTggNGJkYmVmNzA5NTE1NWFiY2Y4YjJmOTYwNGFmODc1YzM5OTczZmQwZSBsZWdhY3ktdHJ1bmsKKzYyMTk5IDRlNzI0ODlmMTZkMDUwYWZiNTQ3MzQ3NWQ3M2U4OTE4YWQ0N2YxYzEgbGVnYWN5LXRydW5rCis2MjIwMCAzYWI1NDc0YmRlNDU3Zjg0ZWY1MDdjMzdhOGQyNjQ0MWFiZmYxOTQ5IHB5M2sKKzYyMjAxIDNkOWFkMjdkOTMwYjA3OGUwMTBkMTgwZmE3MzVjOWFiMjllZWIzMDMgcHkzaworNjIyMDMgNTZlNDk5NTJkMWE0ZjYzYmM1Mzk0OTJhMGQ3YjNiZDIwNGJkN2VjZiBweTNrCis2MjIwNCAyZDk1ZjdhOTgzZDgyZDgwZmQ4Y2JhYjRkYjE5OTdjZDQxY2IyMmZiIGxlZ2FjeS10cnVuaworNjIyMDUgMjdkZjNiODEzNTE4MjhkMzc0ZDdjOTEwZjE2OTQ5YzBkMTNmNTIzNCBsZWdhY3ktdHJ1bmsKKzYyMjA3IGMyNjY3MGYxZTUyMGZlZjRmMTgwMjFhYmEyYWRjNjkxNGM3MGZjZmMgbGVnYWN5LXRydW5rCis2MjIwOCAyM2I2NWYyZDc2MjE5ZDI5OWJmMGE1NmEwZTEwZDY2MzllYzRkMDRmIGxlZ2FjeS10cnVuaworNjIyMDkgMGJlNDAwY2JkNWI4YTAyYzZjYTllM2M2MzQ2NmEyMDQxY2ZlOGQzYiBsZWdhY3ktdHJ1bmsKKzYyMjEwIGQ3NmU1OWZiZjA2ZDQxN2M3NTIyZThjNTliZDkxMTYzZjZmODY1MDggbGVnYWN5LXRydW5rCis2MjIxMSBmZDQ3YTkwMDkwNWMyZDZmZjdiYzZjZmJmZWZhYzMxNGFjYzM1YzhiIHB5M2sKKzYyMjEzIDYwY2RiNjcwM2RmMzNlOGJiYjZiODNjYjZmMjYyYmVjMDEyODA3YjUgcHkzaworNjIyMTQgMDlmMzZkNTdjOWQ2MTNhOTNkNDBlYTQwYWI0NjcxYWJmMzk0NmY5OCBsZWdhY3ktdHJ1bmsKKzYyMjE1IGY5YzYxYzk2YTc2OTViMGE4NTFhMGE4MDkxYzRiMDQ4ODI3ZWQyYjYgcmVsZWFzZTI1LW1haW50Cis2MjIxNiBjZDA4MTg0NjM3YzU4YmVmMjRhMGM4MGY5YzgyZGZlMzdjNGY5MjIyIHB5M2sKKzYyMjE3IDg5ZGQxNjJmMTU1YmZjYTllM2Q5MjIxM2QzYzgzMThlMzVhMzg0MDQgcHkzaworNjIyMTggNDU4OWQ4MzFhYTgwYmJlNTE2YjgxODgwYTQ2NWYyMTJhMDkxNjY5OCBweTNrCis2MjIxOSAyMThmMmQ1NWRlNDg4MWFjMWQ1OGFiNzdmNTBkNzA2Mzk1NjAwMzc5IGxlZ2FjeS10cnVuaworNjIyMjAgNDM0ODM0MzIxOTI0ODlkOWM5M2EyZmNjNWQ1NjM4ZDM3YTFlMTlkNyBsZWdhY3ktdHJ1bmsKKzYyMjIxIDYzYTBkMzNjNGNkMzU0OTg2MzY3NjQzNmUzMmE0MjhlYTc0MDEyNDMgbGVnYWN5LXRydW5rCis2MjIyMiAyNzBkNzlmOTAwNzExZWJkNDY0YjExNWQ3MmQxMjJmMTJhYTA0ZjE3IHB5M2sKKzYyMjIzIGUwMjRiNzU1Mjc5NWVjYjllZDY2N2IzOTJlYTlmYWE4NTFlNWFlNWEgbGVnYWN5LXRydW5rCis2MjIyNCA2M2Y5YTg1MjYwOWUzMTg4NmYxMmZmNTBjZDlhMTJkZGM2NzdlNzBhIHB5M2sKKzYyMjI1IGFlNjRmYTFiYzljYmI0YjllNDJmMTBjNGMyZThmMzhjYjM0YTk5MjQgcHkzaworNjIyMjcgNTBmNTE4NGVlZWQ4ZDhhZjExY2YxYzgxODJkNjI2MjQwZDA5MWMwMSBsZWdhY3ktdHJ1bmsKKzYyMjI5IDM4MmQ1ZWExN2Q3OGE0OGQyY2FlYWEwMjYzMzdhNTNhZDE0YjNkZDMgbGVnYWN5LXRydW5rCis2MjIzMCA4NTQzZjhjODFkYTA4OGFkMjdkMmFlZmJlYmIyM2JmMTFkZjc1MTM2IGxlZ2FjeS10cnVuaworNjIyMzEgMWYxNTQ2M2FmOThjMzk0YTMxN2EzZmE3NjczM2Q0MWExNmQ4NmVjMyBsZWdhY3ktdHJ1bmsKKzYyMjMzIDdlYmU4MWIxZTQyMzJhNWE2ZmRlZWI2NjZhYjM4YzRlMjIyZTY4MGYgbGVnYWN5LXRydW5rCis2MjIzNCBkOTE3ZGEyYjE5NDZlMTJjNDZmNTIzMjZhOGU2N2EzZjVhNTE5MDMzIGxlZ2FjeS10cnVuaworNjIyMzUgMjdjNzEzOWE5OGVmN2U5ZTZkMTFjNDQ3NDk4YmUxOTMyODQ0NzhhOSBsZWdhY3ktdHJ1bmsKKzYyMjM2IDA0OThlYmI2YzQxYjgzMDk4MjYxODE2MzlhY2I5YmU5ZGIzNzE0MmIgcmVsZWFzZTI1LW1haW50Cis2MjIzNyA3ZmQyNzRhNThkNWMxZTBlYzVlYjg3ZTcxYzFlOWNlMmM5N2FiMzViIGxlZ2FjeS10cnVuaworNjIyMzggYWJkYzgxZTFjYjViYTY1NWJkYmMyZDQxMmVkYmM5ZTBiYWVhMmE1YyBsZWdhY3ktdHJ1bmsKKzYyMjM5IGFmNGM0NmJmM2QwOTcyYjc0NTcwMGVkMDQzZjE3NTRhNzJjNDM0OTkgbGVnYWN5LXRydW5rCis2MjI0MCA2MDg4NWY4ZTg1NzVjZTZlNGY2ZGE2MDkzMDA0NTRlMjQ4OTlmMzBmIHB5M2sKKzYyMjQxIGFmYzYyMWExYmM0MTkwMzk4ZmRkNDRiYjA4ZjZlN2VhNWYwNmMyMjQgcHkzaworNjIyNDIgMmU5MTdiMGM4ZjZlODkyYmM0ZGI4YTFmZGE1ZTZmYmZiY2RjZjI0YSBweTNrCis2MjI0NiBiM2NkMDMzOWNhNzdlOTc5MTg5OGNmMTZjMmQ4NzlkYWRiZjUzOThkIGxlZ2FjeS10cnVuaworNjIyNDcgMmM0NTUzZjY1OTI0MzUxNmI4NzEwYzAyZDkzMGIzYmUxMDA3ZDg1NCBsZWdhY3ktdHJ1bmsKKzYyMjQ4IGJlN2IwZWI1OTkwYzZiNjFhOTY0MjhhMTc4NGU2NGMyOTYyMWNhZGYgcmVsZWFzZTI1LW1haW50Cis2MjI0OSBhZmYzODM5ZDAzOTQxYWQ0NWFkN2MxYzQ5ZWQ4ZTMxNGJhMThhZGFmIGxlZ2FjeS10cnVuaworNjIyNTEgNWE1NjkyZTNjOWJlMjI5NTQ3MWE2NmU4NGI0ZmNhNDg4YmQ1ZWJmZSBweTNrCis2MjI1MiBmZjM0ZWYwYTgwOTY0OGNkYzNlMDliNTQ2OTc3MGU5YWE5OTMwNTUzIHB5M2sKKzYyMjUzIDE4ZGI4YzRkNDQ4N2FlNjlhM2RlZWUwYWZjNjVmYzU4NDIxMjc3NjcgcHkzaworNjIyNTQgZWZhOWNjM2JkN2YzZWJhNjhmYTc4ZTQ5ZGMyYjExYjZhZTA1OTVlOCBweTNrCis2MjI1NSAxMWIxOGRkMTU5MDNlYjljM2JhNjczMjAxNTM4Zjc1MTE5ODJjN2VlIGxlZ2FjeS10cnVuaworNjIyNTggZDhiNzcxYmUyMWRmNDQ5OWEyNGIwOWU1YTZiMzVkNWJiZTZjZjc0YyBweTNrCis2MjI1OSAzNjAzMjY3NjcyODgwYTQxYzVhODk3ZmEwM2I5ZWQyZDc1NDM3NzQyIGxlZ2FjeS10cnVuaworNjIyNjAgY2UzMTg3NDYyMDExZjY4Mzg2Y2I1MGViOTk5NGVmN2Q1ZDNkZjI3ZCBsZWdhY3ktdHJ1bmsKKzYyMjYxIDBiNTU4NzVjMWM5YzFkNjYwZjczMWEzMjk1OWE5MTZlOWUzNWY3MzAgbGVnYWN5LXRydW5rCis2MjI2MiBjZDRiMWYzZmQxYTk3NDA3NTAyNjQzYjMwNGYxZWE4ZmY1ZmE4MmM3IHJlbGVhc2UyNS1tYWludAorNjIyNjMgODQyYTZjMmM5YmNkMmE3MzBjY2M0NTdmMjFmNmIyY2Y1ZjRjZDQ1YiBsZWdhY3ktdHJ1bmsKKzYyMjY0IDIyODdhNGFiMjRkODc2MTE5ODhmNTE2YjRhYzVmMjVjMWZlODBmNWEgcHkzaworNjIyNjUgM2NlN2M3OTZiY2ExMjQ5NWJjYTA3YjdmY2NiZWE2MGRhNGJjMGFhMSBweTNrCis2MjI2NiA4ZDU1NTg1MGY3M2Q5NjhmZDY3Y2IyYmE2Y2ExNWY5MjcxNzRlN2IyIGxlZ2FjeS10cnVuaworNjIyNjkgN2M5OWNlZGMzZTU0YTVlZmJmOGRiM2E0MDM0NDk1NzEzYzgyNzZhYSBweTNrCis2MjI3MCA1ZTU1ZDQyNzVhMDk0MTBkMjk2Yjc3MWIwNmZjOTQ2NmU5ZmE1ZjBjIHB5M2sKKzYyMjcxIDFhYWFiMzIxODNmMjI3NDU4NTk2YWUwM2Y5YWQ5Y2JjNmZmY2MwZjcgbGVnYWN5LXRydW5rCis2MjI3MiAwNDEwZmY4MThlYzc4ZWYxYjIyNDBiM2EyN2UwMDkyZWNkYmQ1ODkxIHJlbGVhc2UyNS1tYWludAorNjIyNzMgNjQ1YzUzNWY4MjIzMjZlYjc3MDE4Njc2M2YwNzdkZDJjNjk2MzgyMSBweTNrCis2MjI3NSA4NDE2Y2RkMTFjMTE3MjE4MDJlOWQyNzU2NzE1NDc0MTg0YmNhZGU0IHB5M2sKKzYyMjc2IDYxOTY1MjlhZmQ3Mzg0NzVmNTliZjBiNzdkYWY1MTIxNWQ3YTMyOTEgcHkzaworNjIyNzcgMjlhN2JlYzYxMGNiZjIzOWNlOWQ4NWUyMDQ0ZjNiOTFhYzQ0Yjc1NiBsZWdhY3ktdHJ1bmsKKzYyMjc4IDQ1ZmRhZTRjZGI1NTdmMmE2Yzg1MGRlODk1MjEyNzU2Zjk5Mjk3OTggbGVnYWN5LXRydW5rCis2MjI3OSBkZGNlN2M5NDIxZDJlOTZmZDU1YTZlOWNkZWEyMjU1MGY5Y2U1YTAzIGxlZ2FjeS10cnVuaworNjIyODAgYWZhYzNmZjYwYzZjNWMxMDg4MTQ3M2NhMzYzNWMzMjNmNjE5ZGViYyBweTNrCis2MjI4MSAwOTRhOWNlNGI5YmQ0ZmRkZjNhYmY5NDZmMzg0N2U0NWIyYjdiMDRiIHJlbGVhc2UyNS1tYWludAorNjIyODQgOTc5NzRkOTY3MTI3MGI3ODdlOWFjMjQ4NmMxNTZkODRhYmY0NTYxZCByZWxlYXNlMjUtbWFpbnQKKzYyMjg5IGJjMzM3NzBjYTExNDhjNjAyOWIyNzQ5NDRmODA0YmE4Y2RlNzZkYmEgbGVnYWN5LXRydW5rCis2MjI5MCBhMjQ4NTZiYTc3ZmVkMzRjYWQ1MjU5OGExMzkzYzMzNWYzYWU3MDcyIGxlZ2FjeS10cnVuaworNjIyOTEgMzM2MWI5OGZmNGZmOGNlOGY3OWZkNzJlM2I5NTgxZjhlMjQxZTdhYyBweTNrCis2MjI5MiAzNjUzZmJkZDQ0ODM5YmJhMTA4NjA3NjBkZmMyNDQzOWJhY2JkOTY4IHB5M2sKKzYyMjkzIGMxZmEyZTc1OGUwNWI1YTRiMDdiYjY2NDVmZDI2YzI1NGI2NjFmNDQgbGVnYWN5LXRydW5rCis2MjI5NCA5NDc4MmJlOGYxZTc3YjU4YmY4Yzk1ZWRhNGU1YWRjNmQzN2U5MGZjIGxlZ2FjeS10cnVuaworNjIyOTUgZmUyNzUxYWNhZDNlMTNhNWNiYWZjMDQzZmY0NTAzMjFiMWFlOWU0OSBsZWdhY3ktdHJ1bmsKKzYyMjk2IGNhMjMzYmU2NDU5ODljYWRmZjQ0NjZkMTI1NjExNDU2NWU2MTlkOTQgbGVnYWN5LXRydW5rCis2MjI5NyBkNDZmNmViMDllYmNmYjg2NjRhZGI4OWE3MDk2MzE5YTBhNmM2OWUyIGxlZ2FjeS10cnVuaworNjIyOTggNzY0YWFiMGU4YjliMWU0NmEzNGUyOTFiNzNiYmI4NzAwMWExZDY4MyBsZWdhY3ktdHJ1bmsKKzYyMzAxIDhiOTE0ZmNlOWQ4NGMwODRkYTQ5OTZlMDQ4NDk4YWEyYzA5NTNjMjUgcHkzaworNjIzMDIgMmE5ODU4MjU1ZGUxMDg3M2U4OThiMzkwODczZTg0MDNmOGJlODZmMSBsZWdhY3ktdHJ1bmsKKzYyMzAzIDg0MDA2NDgwMjk1MmIzNzhlODFmNDYyN2EwMTc1YzZmODJkY2VhNjcgbGVnYWN5LXRydW5rCis2MjMwNCBmNzgxY2ExNDM5NWIwNjU3ZjJhYWU2MTllNTYxNmYyY2FkYjUyOGY3IGxlZ2FjeS10cnVuaworNjIzMDUgMzllYTJmYzQ1MDNkMTIzMTc5NWE3Y2NhNWQ3NGFlYjEzNDk1M2IyMyBsZWdhY3ktdHJ1bmsKKzYyMzA2IDgzZTY5NzVjMzE5OTg0NDE3YWIxZjJjZWUxODMzYWIyY2EyN2MzZDAgbGVnYWN5LXRydW5rCis2MjMwNyAzMzA3YTU0NTBjMzc5YTY5MWEyZTg5YTZkMWVhYTk5ZTMzNDY4YzcyIHB5M2sKKzYyMzA4IDM2ZDBhMWUwYzAyNGJhOWQwMDc2YjU4ZDFjMWI3MjNmOTI1Mjg4ZDQgbGVnYWN5LXRydW5rCis2MjMwOSBiNTQ0YmI2MWJjYTljYWJkMDMzNzhmOGNjN2I1NzIyZDVhODFiYjYyIGxlZ2FjeS10cnVuaworNjIzMTAgOWFkMzBjY2NlNDljMTgxY2RlMzliYzFmNTMwMmZhODIxY2VlNmVkOSBsZWdhY3ktdHJ1bmsKKzYyMzExIDAyMzQzZWNhZjBiYjAwODk3OWRmZWFhMjU0NGEzMDMxZmIwOTA3NzMgbGVnYWN5LXRydW5rCis2MjMxMiBlMGMzYWNiMTE2YTU1NGMxMGU2Mjk3ZWMyMjg5ZWUwN2E2OGE4ODJkIHB5M2sKKzYyMzEzIDhmMmI2NWVjN2JiYWI3OGI5ZDQwZTQ4NGEyZmRiNThiODNiYWRjMjQgbGVnYWN5LXRydW5rCis2MjMxNCAyOTIzMWE5NzM1ODBlYTg0ZDNlZTFiZmRmMGVlOTI4OGM1NmVhZDE3IGxlZ2FjeS10cnVuaworNjIzMTUgZmMzM2U3NWI5MjU3MGRjM2YxMmY0MTNjNDY0YzczMDA4YjE5ZDcyZCBsZWdhY3ktdHJ1bmsKKzYyMzE5IDdhNWE1ODBiYTZlYTIzYmE5ODA2MDBjNDcxYTE1ZDAxODE3MWRlM2YgbGVnYWN5LXRydW5rCis2MjMyMCAwNTI4Mjc5MDA3ODI2ZDdmODg0MmJmNjdkZGY2ZWVlMjRhNTE1YmE4IGxlZ2FjeS10cnVuaworNjIzMjEgODVmMGUxYWMwYmM5YjJiMTA2YjA0NTczMDhhMDUwODM3YjJlNTY5YyBsZWdhY3ktdHJ1bmsKKzYyMzIyIDQ3ZDliYmUxMDg5NzIwY2QxZTNkMzcwNzRlYTUzYmZjYzA5ZTJlMTMgcHkzaworNjIzMjMgMDI4ZDg2MjU0MDliMjIyZGFkN2NkYjY5YTAyZmQ2OWY3YTY1ZmFkOCBsZWdhY3ktdHJ1bmsKKzYyMzI0IDRhZmRjNjhlYTUyZWE1OGM2NTdmNWQ0NTBlNzc0NzBhNTlhOWIzMzQgbGVnYWN5LXRydW5rCis2MjMyOSA2OTUyZTcxODFmZmM4OGY4YmY5MTZkOTcyMzlmNWE4ZDc0MjQxZjdjIGxlZ2FjeS10cnVuaworNjIzMzAgYjQyMGVhYmY5ODM1NDU5NzQzMGFkODdiY2Q4NzI5ZDU3MDBjNDJmMCBsZWdhY3ktdHJ1bmsKKzYyMzMxIDdjMjFjYzE0Yjk0ZjVhNjRkMjg2YTNkY2M1YWI3NDg0MmZlMTRmMTEgbGVnYWN5LXRydW5rCis2MjMzMiAwM2Q5YzY2NGE3YmM4NzA1ZmQ1Y2U2ZmZhOGJmZWU1YTA0NGMzMmNjIGxlZ2FjeS10cnVuaworNjIzMzMgNDBmZGQ1Y2QyZWY1MWQ2MTY4ZDA3NjI4MjVmMjdmZWNkMmI0YTBjYyBweTNrCis2MjMzNCBmYjA4MTAyNWIyMjMwYmQ3ZDQ4ZjFlMTMzOTRlMDI1YzdlNGQ1YjU2IGxlZ2FjeS10cnVuaworNjIzMzUgNDY4NzllN2ZjNGQzMzU0YmVmMWRkNjA4OWQ0MGEyN2M0Nzg0MzYwMyBweTNrCis2MjMzNiBjNzQ0MjM1MTAzNjE4MDcxZDYwODhiZjNiN2Q0YzUyMjg5ZmJhNzY1IHB5M2sKKzYyMzM3IDcyYTc2NDg2OTlkMDgzODk5ZDIzNjkyZjFiNmU0NTliMTQ3NjIyOGYgcHkzaworNjIzMzggYjNkY2E4ZjU1MzVlYzIyMWY1MGY4YjEzODcwZDg3ZTczMWQ5MmVjYiBsZWdhY3ktdHJ1bmsKKzYyMzM5IDYxNDg3YmU2ZjQ0MjkyZGQzOGQ1Y2ViMjMzNDMwN2RmOTlkNzYwY2EgcHkzaworNjIzNDAgOGRkMjQ3NDFiNmFhZjBiNjI0M2JiNjdjODgwMTMyMjQ4MWJlZTkyNiBsZWdhY3ktdHJ1bmsKKzYyMzQxIDZlNGNhOWY3MmJiYTZkZGIyZDA2ZThkNzgwYTVhYzk4MjhlZmU3MzIgbGVnYWN5LXRydW5rCis2MjM0MiAwZmVkZTRkMWIxNGJhMmE1M2IxMjcyMTlhZmNmMmZlZGEzZGQ1OGZkIHB5M2sKKzYyMzQzIGFkMTcwYTMzNTk2N2JhYjIxN2FkMDNiNTA5ODViZWMwYzBhYjBkMDIgcHkzaworNjIzNDQgNTk3NTNiZGNlMDg5ODQ5Y2UxY2Q3Y2E5YmJlNzhlOGQ4OTFlMDIzMyBweTNrCis2MjM0NSAyNDIwNWIxZjk1NGVmNzVlNjIzMmQ3YjY4NjJhYTc5NDczYmZjYTM4IGxlZ2FjeS10cnVuaworNjIzNDYgOTliZmI4ZGUzNGIxZjZkMDE2MTM2YWViZTA4OGQ3N2U0Y2FmOTFhMCBweTNrCis2MjM0NyBlYWIxNTM5OGVlZjAwYWNiNjllODBiM2VlMTUyZGQxYzExY2RjNjkxIGxlZ2FjeS10cnVuaworNjIzNDggOTFiMDk5YTdmM2UyMmI4M2VhODIwMzRmODRmMmY2ZTZhMjhkNjQwZSBsZWdhY3ktdHJ1bmsKKzYyMzQ5IDk4MWRmMTNhYWIyMDA4YzExNGY0NTE4NTc0ZWZiYmMzODZmZjVkZGIgcHkzaworNjIzNTAgMTg0MWY5MmUzMGRlZjBhNWIzMTI3ZjVhYTFmYjBhMDNkM2U3MmYzNCBsZWdhY3ktdHJ1bmsKKzYyMzUxIGVmMDZlZDgwNDkxOGExYTQwMzIxY2FkZmJkMzM5Yzg5ZGJlZTk4MzAgbGVnYWN5LXRydW5rCis2MjM1MiBjZTU1OTdhZjk5YzdkOTVjYmY1YjE5YWNmNWQwMDczNGFjMjliNjkyIGxlZ2FjeS10cnVuaworNjIzNTMgM2UwOTVhYjc1ZmM4OWFlZDAyZjBjNGQ1Yzc5Y2Y4NzhhNDdlMDY2MiBsZWdhY3ktdHJ1bmsKKzYyMzU0IDE5ZmQ0NjNlYTcyOGU0MGU4NmY2ODc4YmNjMjU1ZjBkMDZkMDk0ZDUgbGVnYWN5LXRydW5rCis2MjM1NSAzOGM4MzFiNDdkYzViYjQzMWNjMDgyZTQ5NTQwM2Q3MzU5NGJjZjVkIGxlZ2FjeS10cnVuaworNjIzNTYgYjA0ZjIwNTJlODEyNjI5NjFkMmIzZDdmN2U1MTUwMTk5MDg2YjA2YiBweTNrCis2MjM1OCBiNzIzMTA2OTAxZTBjZjBmM2M0NDNiMWUxYmVmM2FhOGU3MmQ1MDc1IGxlZ2FjeS10cnVuaworNjIzNTkgOWYzY2ExOTE2MmE3MzhhNjIwYzYwMjc2MWE2MWNiZjAxZDJlYTJmNiBsZWdhY3ktdHJ1bmsKKzYyMzYwIDQ4Mjg5NjQ1Y2RlZjc3ZmZkZWI1NmNiYmIzZWIwYmNiZmI2NjE1YWEgcHkzaworNjIzNjQgMWM5YmE0MDExZjVkZDg1YmRkZWEzY2Y3ODVkODRjNmIzMWE2OWNhZiBsZWdhY3ktdHJ1bmsKKzYyMzY1IDA3ZDdlNWNkYzFhMDEwY2Y5MWEyNDE3MDg5ODA4NzUxNTQ0NTY1MWUgbGVnYWN5LXRydW5rCis2MjM3MCBiYzk2YmFjNTg2YjRjMjFmYzJiMTJlMmJmMmJjY2YwMTY4MzFlZmQ3IGxlZ2FjeS10cnVuaworNjIzNzIgMWZlZjI2Zjg5YmNlYTE4NmE1NDMyMjAyZDlmMGY2ZTc0ZDIxOTdhNSBsZWdhY3ktdHJ1bmsKKzYyMzczIDdjZDM2M2RmN2E4NDZjZDE4MjUwNGFmZGU4MGI1ODg4MzJiNTgyMWYgbGVnYWN5LXRydW5rCis2MjM3NCA1MDI0YjEyYTAzOWQxYzdkZTFhMGIyM2U3OGIxNDdiNDgxOGIwNDA5IGxlZ2FjeS10cnVuaworNjIzNzUgODkxOGM1MWRlMDEwOGFjZWM3MTEzYzY1ODE5YTM5MWM2NDNiMGVkNyBsZWdhY3ktdHJ1bmsKKzYyMzc4IDRmODI2MWI5MmZjNTYwZGVkNDMwNmVhYWVlNjUxY2NhNTZkZTgxYjkgbGVnYWN5LXRydW5rCis2MjM3OSBmYjhkM2UxZjYxNjEyZDQ0ZWZmMTNkYjA2MDEyNzMwMTViMTE0NjA1IGxlZ2FjeS10cnVuaworNjIzODAgNWJjN2IyMGRjMDRhOWQyNDlhODIzMzk0NTc2NDE1ZGE3ZmU4OGE5MCBsZWdhY3ktdHJ1bmsKKzYyMzgxIDVjNDMxNTlmNWFkMGIwNjU5OWI2YjdhMzliZWNjOWViYzAwYzZiY2QgbGVnYWN5LXRydW5rCis2MjM4MiA3NzljYWExZTBmZmIyZTBjODJlMWU3M2NlN2YxNDRkMjljMjNjMjIxIGxlZ2FjeS10cnVuaworNjIzODMgYTE5OTczOTlmODcyNGM0YWEzMzU0NTU4NWQwZWQ3MzE3ZTA5M2JhMyBsZWdhY3ktdHJ1bmsKKzYyMzg0IGI2OWY0NDNlZjQ4MDcxNzljYjExYjZiNTJlYjM2NTMzOTg5OGYyODIgcHkzaworNjIzODUgYmViN2FiY2Q2YzAxYTU0M2RhZGY2ZjgyNThkZmY1ZmI3YmRlMmU2OCBweTNrCis2MjM4NiBlMTY1OTNkYTQ4OTg5YzcwM2RhZTY3MzZhODBmZWQ1OGUyZmEwMGQ0IGxlZ2FjeS10cnVuaworNjIzODcgZTAyOWQ3YzdkZTgxMTQ0MTMzZmU4YTg5OTA1MDlhYzc3ZGI2NGM4NyBsZWdhY3ktdHJ1bmsKKzYyMzg5IDk3YzIxNDE3YWY0MGFkN2IyNzY2N2U1NDI5ODIzMGJlNGZhMGI3MDUgbGVnYWN5LXRydW5rCis2MjM5MCBiMWM3MGM4OWMzZGE2YzM5YzExMzJlZTEzMDZkNjg4NDdiMjcyNDQyIGxlZ2FjeS10cnVuaworNjIzOTEgMzc0ODMzZGU1NzBjMjQxYmUwNjM0ZmUxNGJlNDkyZjUwMmY2Mjk1MCBsZWdhY3ktdHJ1bmsKKzYyMzkyIDEwZGEyNzk4ZTU4ZDgzNjQxY2IwMzIyYzU3ZTAzODgzZTEwN2YyYWQgbGVnYWN5LXRydW5rCis2MjM5MyA0ZjcxODA2MWY0NWE0NDE4N2M1MjBiMmM2MDZiNDZmYWYxYzQxNTZlIGxlZ2FjeS10cnVuaworNjIzOTYgODJkODVhMDU5MjNiZjM5ODQ2YTQ1MTZiMTYwMjBmMGQwZTU3NTBiNyBsZWdhY3ktdHJ1bmsKKzYyMzk3IGQwZmE0NWU2MzdhMDUwMDE5MGNkM2RmYjNlODdlZWRiZDU0ODhmZDQgcHkzaworNjIzOTggYzM2NTljZTg5M2U3ZThiYmViYjkyN2ZiYWZiMDg3Mjc5MDZiOGM5OCBsZWdhY3ktdHJ1bmsKKzYyMzk5IDY0NGE2NzgzMDA2MWJhMzViNGY4YWZmYjhhMmI2NDUyMTJmZTRmMWYgcHkzaworNjI0MDAgNjQ4YjRkMDFjY2NmNTk1NTgxNTU1NjViM2IzYzRmYjlhY2RlYmNjYSBsZWdhY3ktdHJ1bmsKKzYyNDAxIDEwMjM2ZDFkMDg2MDc2N2E0OWE4ZWUxNGIxY2E1Mjk0YjNjOWViZWMgbGVnYWN5LXRydW5rCis2MjQwMiBkYTRhODdkNjNiMGVlMzAwYjIwMWRhMDJmZTE0MGFlMTJmYzhkNThlIGxlZ2FjeS10cnVuaworNjI0MDUgMzg1ZTIxOGQwZjZjNWFlNWIzZmY3Y2M3M2I4MDQzMTc2NTNmYTNiZCBweTNrCis2MjQwNyBmZjU4Y2I1YWE3NmRhNjAwOWNjZDhlMjFlNmEyNjkzZjBmNDM5NmRiIGxlZ2FjeS10cnVuaworNjI0MDkgZjY0MWU1MDVmZmY0NmUxNzY1YTZkMTBmMjM1MDIxMzNjYWQ0MWQ3NCBsZWdhY3ktdHJ1bmsKKzYyNDEwIDM1YmY4MDEyYTM3NmU2M2QxNWE5MTNlNjM4MjllMDdhYmYwMDkwMTEgbGVnYWN5LXRydW5rCis2MjQxMSBkMTY2MjUxZDgwMTQ0OTE2Nzc3NzI5ODllY2VjNjdlNzk2ODNmYTI0IHB5M2sKKzYyNDEyIDMxZmY1OWQ5ODRiZGUyYzhlN2Y4M2ZmNTY3MjBmNjU0MzdhMjAxMDEgbGVnYWN5LXRydW5rCis2MjQxMyA4MGIxNjU5NWU0NjI2Y2M4NGI5Mjc3ZjAwYTcwZDBmY2Q5MmVkOGE4IGxlZ2FjeS10cnVuaworNjI0MTQgYTIwZGVmMDEwMWRlMjY5ZTFhZGFkZDQ5ZTFiZWQwMTAzYzQyMTZhMiBsZWdhY3ktdHJ1bmsKKzYyNDE4IGYzY2YxMmJkMTExMjg0NmQwYWE0MTUxMmQwODliZTMwNzQwZTEwN2EgbGVnYWN5LXRydW5rCis2MjQxOSA3MzczMmQ2NmQwZDVmN2I1NzM1MzI1NmZhZjk3YTllMGJhNzQyNzA3IGxlZ2FjeS10cnVuaworNjI0MjAgYzc4Y2ZlMjEyNmRhMTg0NjEzNjg2YzE2ZTVkNzIwNGRhZDU5MTk1NiBsZWdhY3ktdHJ1bmsKKzYyNDIxIDYwZjQ0NTZmYTMzODNlMDc4M2MxNDE0NTFlMmYzNmI3MDZiMzFlMzQgbGVnYWN5LXRydW5rCis2MjQyMiA2Mzk2NTMyN2IzZWY2NWYxYmM3OWYxOWQxODQxN2M5MjA3OTM5NzIwIHB5M2sKKzYyNDIzIDYzMjNiZGMyZDY3MTFmYmYyYWQ1Y2NkNzFjZmVlYzk0ZWQxYjc3ZWUgbGVnYWN5LXRydW5rCis2MjQyNCAwMjIyOTYwMzJkOGY2OTY0YTBmZDVjMjEzNjZlNzlkMWRjZGNiMjBiIGxlZ2FjeS10cnVuaworNjI0MjUgZmRkNWEwMTk4NzY5ZDMwNzVhOTM2ZThlODNhNzIxMmM5Y2M2M2ZjMyBsZWdhY3ktdHJ1bmsKKzYyNDI2IDA1MmZkOGYxY2EzNzFjNjg3MzM4MTAxZTY1OTg0NWNhYjhjYWU2ZjQgbGVnYWN5LXRydW5rCis2MjQyNyA0MDZlY2EyZGRiYmM0Zjg5ZjZmYWFjM2IzNDQ3ZDI3YWQzODljMGE5IGxlZ2FjeS10cnVuaworNjI0MjggZGYxM2NjYWE1YWU5N2MwMWQ4Njc5NzU0ODg1MTlkZDg4NDA2MDJjZSBsZWdhY3ktdHJ1bmsKKzYyNDI5IDYwNzc2MDYzMzliYjlmZDAyMjA5OTcwZWFkZWU4NmE2NGNlODM1MjggbGVnYWN5LXRydW5rCis2MjQzMCBkM2FmOWZkMWNmYWZmNjc2ODY1ZWI4YzZhNDU1N2EzYWQ4ZDJjOGI1IHB5M2sKKzYyNDMxIGQwYjhhOTBjYTI3MDlmNWZlOTNiMDg4YTk4NDkyZjJmYmQ2ZGRiODMgbGVnYWN5LXRydW5rCis2MjQzMiBiYjBmNThhZGM5MWNlMDcyMGYwOTM2ZDU5Y2ViZTNhYTFkMDk1YzIyIHB5M2sKKzYyNDMzIGVjNDg0OTBiOTY5YWJkZWIzOGIwNmUyNDk5MmQxMWU2NWYxZDRlYWMgcHkzaworNjI0MzQgMzg3NDljMDljNTU2MzUwMWQwNTExOGZmZDM1MWJhY2Q3MzJiMjljMyBsZWdhY3ktdHJ1bmsKKzYyNDM1IGFlNTU0ZTVkNmUwNmRiMzBmYTU2OTNhYmM3YmI0ZDk3MzQzMDEzMjQgbGVnYWN5LXRydW5rCis2MjQzNiBmNTE5NTNjY2U2YWIxOWM2MzIzNjA3NGJjNGEyODM5M2VlNWIyYTIwIGxlZ2FjeS10cnVuaworNjI0MzcgOThlMDcyZjIyYzRmM2Q2MjhmMTE2NDhjMGI3M2U0OTM4MGMzNTNkZCBweTNrCis2MjQ0MSAxYWNkMDBmMmEzODA3Y2JhNjAxZDg1Yjc4OWJlNWZlMmNkMWI0NjMxIGxlZ2FjeS10cnVuaworNjI0NDQgYjdkZjMwYWM1YjVhMjYwODg3NWYxNDM1OTc4MjljZDAzNDE0ZjAwMyBsZWdhY3ktdHJ1bmsKKzYyNDQ2IDA0OTI4NDcwYWQ4NjA5YTk4NDczZDIxMmRhYjg5YWFmYWRmNDI4NDYgbGVnYWN5LXRydW5rCis2MjQ0NyBiYWUyZjRmZWVmY2NjYWNhYWRhMTU5ZDBhMjk2OTVmMWY2ZTAwMTVlIGxlZ2FjeS10cnVuaworNjI0NDggYzQ0YjhjYTNmNGQyOTU4Y2E4NmJmMjNiYTcyN2QwYjVmOWMzZmZhMCBsZWdhY3ktdHJ1bmsKKzYyNDQ5IGIxMjU4MzY0MzEyOGVhY2Y4NTQ3NDg3YTM1MzNiMzM5ZDBjM2YyMzAgcmVsZWFzZTI1LW1haW50Cis2MjQ1MCA0MzRiY2NlY2E3ZGYwODkwZTQyZTJjNzYyYjExODA5YWI4MTRmMTBmIGxlZ2FjeS10cnVuaworNjI0NTEgMTA4ZmU1N2I5YTY4ZTFlOTc4ZjhkZmE3NjE5OWFiMmMwNGI4MGRlZCBsZWdhY3ktdHJ1bmsKKzYyNDUyIDJmMDA2NTQ0ODg4M2FiYzU5ZjVhMmZmZTU5MjQ0NzdjYTk4OGU1M2QgbGVnYWN5LXRydW5rCis2MjQ1MyAwOTQxZDc5ZWE3ZDZlZmI2M2UwZGQyNTc3YzUyYWNjZWFkZjdlODM3IGxlZ2FjeS10cnVuaworNjI0NTQgODhhOGRlZjU4MDA3NzdhZTFkNzdlMGIyMzRhMzc5YjQ2N2YyMzRjYiBsZWdhY3ktdHJ1bmsKKzYyNDU1IDY0MmQ1NzEyMDkzYjgwYjA4ZTRiZDIwOGZhYWU4ZjJiMTkwNDg0NTYgbGVnYWN5LXRydW5rCis2MjQ1NiA2NmI3OTkzMDY4YmRhMzFlZTcyMzkxMmNjYjYzZjc4NjI4M2Q5ODcyIHRsZWUtYXN0LW9wdGltaXplCis2MjQ1NyBmYjNjYjA0MTk1ZTBmODIyYjA3M2RmNzU1Y2FiY2Q2OTJkNDgxYmU2IHRsZWUtYXN0LW9wdGltaXplCis2MjQ1OCAxNDQwM2E1NDI1OGZjNGU4OTU5NWY2YzNkZTFhYWMxODAyMGU5YWQxIHRsZWUtYXN0LW9wdGltaXplCis2MjQ1OSAwYzU4MjRiMDAyNjMzYmE0NjE1ODAzMjYyNzVlNGQzYjljNDZiOGJkIHRsZWUtYXN0LW9wdGltaXplCis2MjQ2MCBkN2ZlZmIzNWU5OTNmZmM5NDc0MmIwOWQ5YTdlODc2MzFlN2IwMGUxIHRsZWUtYXN0LW9wdGltaXplCis2MjQ2MiBjMGNkYWNmMDdmNTQwZDkyYzhlYzAzZGIyOThkOTliZWMyYmU5YTdkIHB5M2sKKzYyNDYzIGZlZDcyZmE5NjdiZjVhNGEzMWQ2NzI2YTA4ZmE4NDVmMzM0ZjNkZjMgbGVnYWN5LXRydW5rCis2MjQ2NCBhNzQ2NTQzNTIzNjZlZjM4NGY4MTE4MzI0MTU0MDRiYjU4NDY4OTcyIHJlbGVhc2UyNS1tYWludAorNjI0NjUgOThkY2FkOTA5MmE4ODllZjQ3YTkxNGYzZDU5MjQ0ZGZhNjJlYTIzNyBsZWdhY3ktdHJ1bmsKKzYyNDY2IGM5ZGU2NzA1YmQxMTI5NzVhNWEyYWIyNGE5Yjg5ZTM4ZWVkOGMzMTEgbGVnYWN5LXRydW5rCis2MjQ2NyAyZTFlYTYxYzk0Y2M3ZjE3MjhlODllMmFiZjNmMTdjNzhiY2E1OTJlIHRsZWUtYXN0LW9wdGltaXplCis2MjQ2OCBlZDI2N2M2OTg5YjZjY2I0NmM1NTg4Y2FhNzUyNzI2OTcyOTkwN2VjIHRsZWUtYXN0LW9wdGltaXplCis2MjQ2OSAzYzZhMjVlNGRiYjVmMGY5NjNiYjFhNjk4OGNmYTJjNTIyZjZiNzk2IGxlZ2FjeS10cnVuaworNjI0NzEgMDdjZjI4NDgwYWQxZWM4MzYyYWM1MDJkOTlkMGQxMGUzNzE4NmE2ZSBweTNrCis2MjQ3MiAzZTliNGZhOTNlNWM0MjkxYzZmMjg1YmUwYmQxZTcwNGUxMTZiZDRmIHB5M2sKKzYyNDc0IDYyMWEyZWFjYzI3YzQ4OTkzYzYyMjgzZDBhYzYzZTcwZmVhMWQ3MmQgbGVnYWN5LXRydW5rCis2MjQ3NiA1ZTYzNmM5ZDYxYWU1NzVjZDZhNDVlODE1MzQ0NDczM2NkODE1YWY0IGxlZ2FjeS10cnVuaworNjI0NzcgYTAyMjU2MDBiZmYxNDk2ODhhNWIwZTJiNTJmNzlmNTQzMTU2ZTUzZiBsZWdhY3ktdHJ1bmsKKzYyNDc4IDNlOGEwM2E2NDk3ZTE3MTQxZDNkNmJiZjE2NDY5MTVhZWU2MWU4OTIgbGVnYWN5LXRydW5rCis2MjQ4MCA0NTkwODNjNmJlMTUzZWJiNWZkYTZhMDM2ZmNiNmViYzQ1NzA4OTkwIGxlZ2FjeS10cnVuaworNjI0ODEgNGZmOGRmYWVjM2ZjNmRiOTQzYzc5Y2U2M2NiNGY0ZjhhYjcyZmQ2YSBsZWdhY3ktdHJ1bmsKKzYyNDgyIGE1MWIzMjkyNDViMTQ0ZGFiZjhhZDgxM2RhNjk0YWMyMTU5ZmE2MDQgcHkzaworNjI0ODMgODVkNDY3MTU2NWM4NzQ5Y2Q1YmZkMzhiNWNlZDY4YjdmMGI1Y2JjNSBweTNrCis2MjQ4NCA5MGUyMTQ2Y2I4YTMwOGEzMDEyZTczODAxNTdjYWMxMTgyOTRhYTM1IHB5M2sKKzYyNDg1IDk1OTQ3ZmRmNDBhZTQ4YWVkMGZlZmEzOGQ0YWZhNGUwZGU4MjUyZmUgbGVnYWN5LXRydW5rCis2MjQ4NiBkMWZiNDlhZWM3NjUxMDQ0YzllODBlNjIwMGM0NDA1ODNiYjU0YmZlIGxlZ2FjeS10cnVuaworNjI0ODcgODg2NGRmYTk5Yzc2MDJjZThmMjk5MWFhNTVhNTA1MjBkNTgxYzEzOSBsZWdhY3ktdHJ1bmsKKzYyNDg4IDM1MTE5YjAzNjg2ZDJkNDlmMzFjNDQyMzM4YjE5Y2QwODFhOTcxODYgcHkzaworNjI0ODkgMWNmM2IzNGRmNmM2MGVjMGQwNDA4MTg3YTY2ODEyZjBkMjhkODkzYSBweTNrCis2MjQ5MCA2NmM4YmQxYmVkZjMyMzJkZjBlNGEyZDJiOWYwMGUxM2M4NGQwNjUzIGxlZ2FjeS10cnVuaworNjI0OTEgOGI3MThmYzE1ZjNkNmI1MjMxNjJhZDJlODA1ZjQyMWMyYTA1MzlkYiBweTNrCis2MjQ5MiA1YmE2Y2JiY2FlZTczNjQ1M2M5YWJlMWI5YTA5Y2M4YmMyZDQ4NjA3IGxlZ2FjeS10cnVuaworNjI0OTcgMDRiZDc2ZTkyMDY1NDMyZmUzZjk3ZjMzNDkyODFlNTczYzkxZGVlYiBsZWdhY3ktdHJ1bmsKKzYyNDk4IDY4OTg2MzU1MjM4MDczMWZmNDdiYTkzMmJkMjgyNjUxMmNiMGYyMzcgbGVnYWN5LXRydW5rCis2MjQ5OSBjZTYyMGNjOWE2YTg2OTQ5ZDIzZDg1YjJjOTUwODJiNjRmMTNhNmU5IGxlZ2FjeS10cnVuaworNjI1MDAgOWUwNWYxNWY5MjFiMDEwY2RmNTA5Y2QwNGNmNzVjOWViYjQ2YTcxNiBsZWdhY3ktdHJ1bmsKKzYyNTA0IDBjN2NhNDcxZmI4ZDc3OGJjYjM1N2I5MWRjYjI1NTNkZjNjYmNmNzggcmVsZWFzZTI1LW1haW50Cis2MjUwNSBjNzM4MjgwNjIwMzEzMGJhNDExMzQ0NTM4MDc5MjNmMmE3N2U1YmE3IHB5M2sKKzYyNTA2IDJhMzFiYzI4YzEwZmZmMGFkODM2MzNkNjZmZjNiNzFjNWU2MGJjYjcgcHkzaworNjI1MDcgMGUxMTg1YmZhMzEzNGNkMjQwMWU1MDk2MDY1ZjA0ZmQxMzk3ODA3ZiBsZWdhY3ktdHJ1bmsKKzYyNTA4IDBjZmM4NDViODUyZDgyNGExZGU5ZTNmMGUwZjg1YTFjNjZiYTNiZTkgdGxlZS1hc3Qtb3B0aW1pemUKKzYyNTExIDUyMzgzMjdmNDViZDQwNDJjNzZiNWQ0YjhjZGNjYWY4ZGZmOTQxMTUgbGVnYWN5LXRydW5rCis2MjUxMiBmZmVlY2JlYmYzY2E3Y2U3NmIwZjg4YTVkNzYwMDkyZmRmY2YzYjMzIHB5M2sKKzYyNTEzIGViMjc0NmU4Yjk4MzMwZGUxYjEwMmYxZmFmMTM4NTNiOTVlZmRhYzggbGVnYWN5LXRydW5rCis2MjUxNCBhZDM0MTc1MDM2MzZjZjdlZTU3MTA5MmIzYmZiZWFjNDQ4ZDg5MzY5IGxlZ2FjeS10cnVuaworNjI1MTUgMzYxZDc3NmQzODBlYjk0MjczYzRmNDNlZjU5NWNhNmI3NTQwOTliZSBweTNrCis2MjUxNiA0NzIzM2ExN2U5NzA3OTc0ZWFlZjQ4ODM0YzAxZDMyNjU4MWJiOTc5IGxlZ2FjeS10cnVuaworNjI1MTcgZDU4ZWMzOGU2ZGIxYTk1OGIyOGE1M2ZmY2ZjMzJhMDFlOWJiMzU1MSBsZWdhY3ktdHJ1bmsKKzYyNTE4IGFlZjM1MDFkOGU3NzZlNjkwNzg0MmQwNDIwOTUxYWEyY2I4M2UxM2QgbGVnYWN5LXRydW5rCis2MjUxOSAwNmU2N2NiMjIxNTgwODZhMDRiOTQzNGUwNzA2ODdlZDdhMjY5OTVkIHB5M2sKKzYyNTIxIGRhZDg4Y2I2ZWYxZmRkNTk1M2JlOTZiZjgxNzMyMGE1NjQzZGRiZjUgbGVnYWN5LXRydW5rCis2MjUyMyBlZGIzYzNkNjYwMDY3ZWFlNTkyODIwMzI2YmI3MGI0NjlmNzg4Mjk1IHRsZWUtYXN0LW9wdGltaXplCis2MjUyNSBjNTg5NWI5ODFkOGYwZjRkYmIwY2JjN2NjMjRkNjRjYjc5ZDNhOThmIHRsZWUtYXN0LW9wdGltaXplCis2MjUzMSA2YjdjOTFkOWRjNTExYmYxNThiMTVjOTg0MjIzZmI2YTczNjY1ZjAyIGxlZ2FjeS10cnVuaworNjI1MzUgZjM2NWEwMThhZjViNjk0Njk1MDY3MjU4MTUyNDY1ZjVlMmJkZGMzMSBsZWdhY3ktdHJ1bmsKKzYyNTM2IDc2NzAwMDVkYThjNTY4YmViM2JlNDYxNGQxN2E0ZmI4OTI0ZGRiMTQgbGVnYWN5LXRydW5rCis2MjUzNyBkN2Q1NjcyZjVkNWUwNTBiYmMzZGU2ZWEwZjZmNjA2MTM4YTVkM2U3IHB5M2sKKzYyNTQwIDA2YWE4MDJiZmNiMThjNWIwMTllMmY2NTE0MzkxYjY1NDg0NTE3NTAgbGVnYWN5LXRydW5rCis2MjU0NSAzZDlkZGNlMmRhODUyMDQ3NzBjYWI3NTdmOWZhMzI2NDcyMzZjNTE2IGxlZ2FjeS10cnVuaworNjI1NDYgZWJjNDBlNTAwODY5OGE1NmQxNzEzNGI4NDU2NGQyMzE3NmI1MzI1NCBsZWdhY3ktdHJ1bmsKKzYyNTQ4IDE4ZTlhMzcyYTdhM2EwY2M3OTUwZjAxMjY3OTViOGE4OGU0NDg2YzggbGVnYWN5LXRydW5rCis2MjU0OSA4NGRmMDgyZGQyMTY3ODM1ODE1OGExZGNkMDVmOWI2ZGVlY2VhMWIwIGxlZ2FjeS10cnVuaworNjI1NTAgNTlkYjU3NWFlMzc0NjI1NjVmNDdkNmE0NWEyNTAzMzU1YTBhMzUxZiBsZWdhY3ktdHJ1bmsKKzYyNTUxIGM1ZGMwNWNkMzg1ODliYzMwYTdiZGZjYTZlZGFkY2QzN2I2ZDE3M2UgbGVnYWN5LXRydW5rCis2MjU1MyA1NzZmYTI0NDBhMGM4ZDhmODg5ZDNhZmE1NzZmZjA3NWI3NDYyYjA0IGxlZ2FjeS10cnVuaworNjI1NTQgZDJiYjVmMTMxODczOGIwMDY0NzVmYTdkZjEzYmM4M2E1NmVhOTIyYyBsZWdhY3ktdHJ1bmsKKzYyNTU1IDA3YTRlMTcxMDI2Mjk5Y2YyN2E4ZjBhMjM0ZDlhNTFjN2E4ZGJkMDIgbGVnYWN5LXRydW5rCis2MjU1NiBhNTE3ZWNjYzc4M2I5ZTBjODFhMDRlOTgwNzk5ZGRkMGVkZDE4ZGE2IGxlZ2FjeS10cnVuaworNjI1NTcgMWVhNGQxYjE4YWVkNThkNGI1YjNkYThkMDcwNTI4NGE0M2RlYzAzYyBsZWdhY3ktdHJ1bmsKKzYyNTU4IDRlNDc1NDhlZGQzNjZkMmIxMTZiZjNmMWJkZGZhOTFhMDRmNTIzNGIgbGVnYWN5LXRydW5rCis2MjU1OSBmZWY2ZDZiYTc4YTQwMTdhOGQwN2ZlMzQ5NzRjMzhjMzYwZjkxZDdiIGxlZ2FjeS10cnVuaworNjI1NjggYzM0ZjBlNjA5ZmE2YWU0MzBkZDFjNmQzNjQxZTM1NjhiNDk3NGU3NiBweTNrCis2MjU2OSA4ZDNhZDhhZjY5MmI1YTM0ZWZmYzgxMzc0MDc4NWExMDc3YjExZWNmIGxlZ2FjeS10cnVuaworNjI1NzQgNmZlYWQ0Y2Y3OTExMWRiMGZkZmNjN2JmMzRmMmFjM2Y3YzYwYjdlOCBsZWdhY3ktdHJ1bmsKKzYyNTc3IDdmNjBiMzM3YjA0OTJkNGZlN2UxN2I4OWI3MWYzMDZhNjIyMDVlNzMgbGVnYWN5LXRydW5rCis2MjU4MCAwMTU0ZGYyNTBlZjZiNTA5NGE1NWVmMjBkNWEzZjFjYzNmY2Y3ZGU2IHB5M2sKKzYyNTgzIGU0MmQzOTc3OGVhZDljY2I0NTg3NWJiMzZmMzhmZDBkYWM3NjQ4MzkgcHkzaworNjI1ODYgMzdkNjQ1YjAxNTIzMTZlNDFiMTE4NDAyOWQzNmJhNmVmNmIzYmIwMCBsZWdhY3ktdHJ1bmsKKzYyNTg3IDdiNDA4MWJlYzc4Mzc4OWY4NjcwNzdjYTc2YTg5YWNjN2VhYjk3YmEgcHkzaworNjI1ODkgY2JhMjgxYjE2YTgyNDVlMTU2ZmMxZjliMzgxM2I3YjQ4OTgyYjZkNyBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MjU5MCBlZjQyMWEzNjVhMWQ0YzcwMzEyMWU3YzUxYjgxOWUwNTY3NDM1NmUwIHB5M2stY3R5cGVzLXBlcDMxMTgKKzYyNTkyIGQ2YzZmMzY2YjIyMDYyZmQzZGVmMmI0MmMxZjE1NDcxN2FjYzE2NDYgcHkzaworNjI1OTMgOGY1Yzc1OWUwMTljNjZjYmQwYTM0NTc5ZTdkNjhlMDA3MjY1N2Y0YyBsZWdhY3ktdHJ1bmsKKzYyNTk1IDNkMGQzYTY4MDg5NmNkY2U3Njc5MTYxZDQyMWNiMjFmYzgzMWQ0NTEgbGVnYWN5LXRydW5rCis2MjU5NyA5NDhiZWE5NmRkMjAxYjMyMGI2YThlYmI3ZmIwNjRmMDhiM2Q3NDQxIHB5M2sKKzYyNTk4IGFmMGVmMDQ0MDFiYjJlNzliNjRmOTI5NTk5MjY4ZjVhNmZmOTJiMzAgcHkzaworNjI1OTkgN2E2ZDc0NzRjZTZlMDhiMDdjYjZhNTNhZDhmNzNlY2I3MzAxNTA3ZSBsZWdhY3ktdHJ1bmsKKzYyNjAwIGIxMDE1NTZiOThlYWU2MDk5ZTk2ZGEzM2FiYThlYmY5NzQzYWQyMWQgcHkzaworNjI2MDIgMDFiZTFjOGYwMDZiZGQ1NjM3MWFiMDg5NTRkOTA5YWUyMzVhMTUxNCBsZWdhY3ktdHJ1bmsKKzYyNjAzIDAxNDUzNTcxOTY2ODg1YzNmNGY3ZWQ2NzNiYTFhZGNhMWRmNDViYTUgcHkzaworNjI2MDQgMzAzNmUyMWFjNjYxZGRhMDEzZTY3NzcyZDlhMzlkOTdhMDI4NjAxNCBsZWdhY3ktdHJ1bmsKKzYyNjA1IDE0MjM4MzRiNzJkOGQ4ZDI2ZTE3MzNiODc3NmMxMzJmMmZiYTYyMzMgbGVnYWN5LXRydW5rCis2MjYwNiA2OGNmYzUxZTQzMzFlZmUxYjc3ZWJiNWI1MTE4YTkyZjc0NzYxMWFmIGxlZ2FjeS10cnVuaworNjI2MDggNjVhY2M1NWYxYTY5MGZhNDA2ZjcwZDc2ZjczNmI5MDIyMzQ5Mzg0NiBsZWdhY3ktdHJ1bmsKKzYyNjEwIGE0MGQ3ZTYwNWY5ZTExN2E2NjE3OGZmNDdhOTdhYzJiNWM4ZDZkNjQgcHkzaworNjI2MTEgM2YyMTE3ZDMyNzFmN2MwZjYwZDQ1ZDcxMmFhMzg5Y2YzOTMxY2VhMyBweTNrCis2MjYxMiBlNDJmZTE5YmE2ZmRmMzdlOGYyNmZhOThkMzM0NGEyYmZkM2Q1MzA5IHB5M2sKKzYyNjE1IDg3ZDMxMzdjMzFkNDM2MTAyZGY3NmQwY2EzMmEzY2U5YTUyMzE0NzEgcHkzaworNjI2MTYgMzMxNWY2YjQ0NDAzMGI4Nzg3YmNlYTQzZDY2NTA2YzQ5OTgyNWUyMiBsZWdhY3ktdHJ1bmsKKzYyNjIwIDU2ZjgxZWE5Y2I3OTUwZDRlNjJkNWU3OTc5ZTZmOTE4Yjg5ODI4MzggcHkzaworNjI2MjQgODBiZDRiYWE2Mzk4MTkyMDM2NWE3MjU0NTczMzc0NDA5ZTQ5NjQ1ZiBweTNrCis2MjYyNiBlYTFhOWNmNzM1YTU2OTQ1NDMzNjhkODQxN2M1MjE5OGE3N2E4MDA5IGxlZ2FjeS10cnVuaworNjI2MjcgNTQ2MDZlYTlmNGM3YjkzMzg0MmViZDcwZDA1MGRjM2UzY2RhMGE0ZCBsZWdhY3ktdHJ1bmsKKzYyNjM2IDBiYTEyYzMyZTJiNTY5NTkwMDg1ZTIwMTBjOWVlMmVkMGE2MDQ2ZTQgbGVnYWN5LXRydW5rCis2MjYzOCBjNGQ5MGZhOTM1ZWFhNDEzMDVmMTk0MWI1NGZmYmI1ZTA0YWM3OGY0IGxlZ2FjeS10cnVuaworNjI2NDQgYTFjNmYyYWI1OTdlMDM3OTYyMTQ1YWIwOGRkMjE1YzZmYzBkY2I1ZCBsZWdhY3ktdHJ1bmsKKzYyNjQ1IDIwYjcwNzg2NjQ1OWFkYTc0YTA2MzkwOGI4YmNhZDk2YmRkZjBkNGYgbGVnYWN5LXRydW5rCis2MjY0NyAxZmZlYzJhNjg3ZTk1OTZmNDhhYmFhMzhmMzAzNGM5ZWM2NzMxYjk5IGxlZ2FjeS10cnVuaworNjI2NDggM2Y4NGU2YWUzNmRhZDI5ZTA5MGE0YjQ3NDZhMDNiZDQ4Y2IyNjY3ZSBsZWdhY3ktdHJ1bmsKKzYyNjQ5IGI1NWM1NTY3Y2M3NjczM2Y0MWRjMTE5NmViNTU1MWY1ZWU5ZGJkMTAgcmVsZWFzZTI1LW1haW50Cis2MjY1MCBlYjlkYWI5NTZhNmViOGI4MGU1YWQ0YWZkYzIzMzg2M2UxZDZkOWE0IHJlbGVhc2UyNS1tYWludAorNjI2NTEgODA2MzU0ODllOGQ4MzE0NGI0YzA5ZDdmOTQ0ZDI0MmU0NzFjMjU1YSBsZWdhY3ktdHJ1bmsKKzYyNjUyIDZkOTQ5NzU5N2M0ZjNmZWZiNGMxOGE2YzUxM2I3NzI5MjVjMmI0ODYgbGVnYWN5LXRydW5rCis2MjY1MyBjYzY2MDI5ZDJlZmU1OTM5YWJjMjY0NDk0MTU1N2JjM2JlODcyMmQ3IGxlZ2FjeS10cnVuaworNjI2NTQgZmQyN2FjNWZjYzgxODA4ZTlhZmQ5MWU2YWQ3NjZiM2RkZTY4MWFkZSBweTNrCis2MjY1NSAwMzJhMGEwZDNmYTk2MDZjZmUxODcxZDliZmY2YTIxMmU2YWRiYzU0IHB5M2sKKzYyNjU2IGE4NTlmODM1ZWY1M2RhOGEyNjFmNzI4MDE3MTcyZWRmODVhZDAxOTkgbGVnYWN5LXRydW5rCis2MjY1NyAwZmRlZjE0OTgxYThlM2JiMGExYzJkMDQ4N2Y1MmM3YjNiNzVhNWU1IHB5M2sKKzYyNjU4IGJkOTEwMDBjOGU3M2RjNzc2YWY4YjZjNjc0ZGYyYzhhOWRmNzVmNzMgcHkzaworNjI2NTkgM2Q0Mzc3NTIxNzBiNTJkYzA0MTc4MTE5Mzg3NmNlMGU0ZGIxYWE2ZSByZWxlYXNlMjUtbWFpbnQKKzYyNjYxIGJmYTgyYjQ5MzMzNTQwOTcxZTY4OWY0ZmQyNzlmYTIzMjE3OTAwYjUgbGVnYWN5LXRydW5rCis2MjY2MyAwZGViNGFiMDQyNmUyODdkOTZlMDhjMDIzOTU1YTQ4Mjk5NjI3NDQ0IGxlZ2FjeS10cnVuaworNjI2NjYgZWMwOWFkNWJlZDFhY2NhMTBjMmNkNjFmZDRiYmJhZjkxYWY2MjFmNiBsZWdhY3ktdHJ1bmsKKzYyNjY3IGVhNTk0MzA2ZWE4NTQyYjk4YmUwNjg2MzdiMDcxMmE3ODMyYTE3MjEgcHkzaworNjI2NjggNjhiMWQ0NGI1Zjc0YTc5ZjAzNjAyNTdkM2RjODc2MTUxMWI2YWQ0NCBweTNrCis2MjY2OSBlYTMwZjAzYjI0ZjQxZjgyMTUzN2I2ZjNjMmRiMGEwNGMwMGVlNTBjIHB5M2sKKzYyNjcxIDk0MThkYzRhN2I5ODVkNWNmYmJkY2I5ZDE1Y2JiODgwMjA2NWVhNzAgbGVnYWN5LXRydW5rCis2MjY3OSA1YmI5NDA2NWIwNzk5OWNlMmUzNDc5NjU5ZTdlMzcwNjE2ZjcwYWMyIHB5M2sKKzYyNjgwIDgzY2MwOTY4MjA4MWRjMDQ5M2U5MjIzYjg1MjcxMmZmYzhhNmU5MzIgbGVnYWN5LXRydW5rCis2MjY4MyAzMzkwZWI3NTkxZjYxMjhiM2ZkNjY0ODg2NzI0ZjcxOTI5YzgwMDY2IHB5M2sKKzYyNjg0IGM5N2UzNmFiY2RkNTk1NmY1YjM3ODFkYzY5MzNmZjMwZDc1YzA1YWYgbGVnYWN5LXRydW5rCis2MjY4NSBhY2IyYTkzOTQyOTZhNDU3NTE0NDE2MWEzMzVmODU4ZWIyNGE5YWI3IHB5M2sKKzYyNjg2IDE4NzJlMWRjMDM1ZmMzMjliOWU4Yjk5ZjIzYzNmMDdlYjA0ZmRlN2QgbGVnYWN5LXRydW5rCis2MjY4NyBiN2M2NmQzZTJlMjhkYjAyZDZjYzdhNzc4ZWJkNjczY2IyY2Q2MWUyIGxlZ2FjeS10cnVuaworNjI2OTYgYTk0YjlkYjkyMjNmY2QyMGQwNDkwZTU3NWQzZjQxNWUzNzc0N2M0MyBsZWdhY3ktdHJ1bmsKKzYyNjk4IGFhYTBhYjQ5MDEyNmUwMmYxODQwNTVjZmMyODA0N2QwNzNiMzZjMzcgdGxlZS1hc3Qtb3B0aW1pemUKKzYyNjk5IGRlNzZiZTAyZGI0MjViM2U2YTRmNjBiNzFmODYxOWZlYmE5YmJjOGUgbGVnYWN5LXRydW5rCis2MjcwMCA2ZGIzOTJhYzlmNGViMTQyYjRiN2RlNzQ2NGY0MWVkZjQ2MTAzMjgwIGxlZ2FjeS10cnVuaworNjI3MDEgYjkzYTA0MWNjMjIxM2U1ODlkNDJhNGU0YTc3MjJkYTRlYWFmZGIxOSBsZWdhY3ktdHJ1bmsKKzYyNzAyIDI4YjA5OWFjNGNkOGY3YjhjNzUxZTZkNDM0YmQ0Y2YzODIyNzNiMzYgbGVnYWN5LXRydW5rCis2MjcwMyA2YzRlZmU1MmQ1OTRkM2ZmNGZhMDFmYWJkMjg3Njk4MWRkNTFhZjAzIGxlZ2FjeS10cnVuaworNjI3MDYgYzA3ZjE5YWY1NTRhOWY2MzBkN2ViZmMxOTUwMmQ5ZjY0YWJkMWUzMyB0bGVlLWFzdC1vcHRpbWl6ZQorNjI3MDcgMmU0NjM0NDJlNTcwNjA0Yzk1ZGE4Y2I0M2Y2OTk5NzA0OTA0NmEwYyB0bGVlLWFzdC1vcHRpbWl6ZQorNjI3MTEgZmUzMDBhOTcyZmI4ZGYyODc1MDQ3NTY5NThkMDI5YjVhZWY4ZTg2MyBsZWdhY3ktdHJ1bmsKKzYyNzEzIDcxNzJlMTFlOWZjOGM2NzZkY2Y2M2ZmZDk5NTVmNWQyMDI1OTliNWEgbGVnYWN5LXRydW5rCis2MjcxNSA2NDM0MTVmOTFhNTBjOTJmZjkzNTc4OTkyZmE4YTY4NTE5ZDdlOTBkIGxlZ2FjeS10cnVuaworNjI3MTYgMDMxZGZlNDU1NTg1Y2NkZDA3ODk3YjhlNmQwMDRmNzljYTQyNjc5YSBweTNrCis2MjcxNyBjN2MyNWNjOTk2M2RkMzMyNzgzOGE1Mzk1NWVhODlmMjQyZWQ1Mzc3IHB5M2sKKzYyNzE4IDA1YTgxN2UyNWYyMGQ0MmNjNzBhYTZiZTZjZDc0NjUyZDJlMzc1YTMgcHkzaworNjI3MjAgZDkwNzFmYTgyNDRhZjM0MzM2NjlhN2M3MDkwZTZhNTc2NjA3YWViZiBsZWdhY3ktdHJ1bmsKKzYyNzIxIDhhOWI4YjNjZTJlMTIyMjUwMzcxMTBjMDY5NWRhMDE0MTdjODFhNWYgcHkzaworNjI3MjIgOWIxMGJmNjRmMTI0MzIxNmI2MzA3MTFjNWE4MjhjMzljMDg1ODA0YSBsZWdhY3ktdHJ1bmsKKzYyNzIzIDRjOTBiZThhNGQzODI3ZGU0YTQzMjVhNGRmYTlmMTQ4ZTJjZjE3M2MgcHkzaworNjI3MjQgOGUzM2YzMTZjZTE0MGRhOTc1ODYzZWE0ZTk1ZGNkOGEwYjU0MjFmZSBsZWdhY3ktdHJ1bmsKKzYyNzI1IDE1ZjFkMjMyZWFlOTEzODU3YjgyNGU4NzFhMWQzZTk3NjJkYmUyZGMgcHkzaworNjI3MjYgMTBlOGVmOTViMTFmOWRiNjE4NGU1NTQwOTFmYjhlZjUzOTcxZmNjMSBsZWdhY3ktdHJ1bmsKKzYyNzI3IDg2ZjczODM4YTRiYjcxNTAxZjAzOGUzOTQ0YzVlYTczNjliODg1OTggcHkzaworNjI3MjggNTViZjhkNjkwZTY3YWY0NjBiY2E4ZTVlNTNhNDY1NzRiMjg5Yjc3YSBsZWdhY3ktdHJ1bmsKKzYyNzM0IDRkZWQzNTc1NGNiNzIxZjQ5NjEyMjA4YTBlYjg4NTE5MDFmYWRkMzAgbGVnYWN5LXRydW5rCis2MjczNiAzNGE1MzgwZWUyNzVhZTBjYTE3MTcxNWE2N2ZmYWUwZmUwNWFkMmZmIGxlZ2FjeS10cnVuaworNjI3MzcgODhhMDk4MDRiYmEzOTQzMTVmZThhMzUzYjQwNzA1Y2U3N2Y5YzgzYiBsZWdhY3ktdHJ1bmsKKzYyNzM4IGI3NGEzZjk0NmE1ZTY3ODEyZTliMDJmNDkyMzgwMjgwZDEwMGY5N2EgcHkzaworNjI3MzkgZGFjMjE4NDNjZjUzNTE0YzU3Zjg0ZTk5ZmZiYjgzZGRlZTZmM2Q3MiBweTNrCis2Mjc0MCBlMTlmODdhOTg3OGMyODhkM2U4YzllMmQ4MTAzNzdjMTM2NjFjODA4IGxlZ2FjeS10cnVuaworNjI3NDEgOTFkNWYwODQxNzAwMDY4MTkyNjViMWQxMmEwZTI2ZTYzZDBkMDQ5MCBweTNrCis2Mjc0MiBmMmE0ZDhkNGYwNjM0Y2RiMmM2OThmNWVhNzQ3NzdkY2Y4YWM3MDg3IHB5M2sKKzYyNzQ0IDI3MjllOTc3ZmRkOWVhN2UzZWRhYzUzMzFiNjhmM2Y3ODI2MWI1NTUgbGVnYWN5LXRydW5rCis2Mjc0OCA3MTA2Y2E4NzFiZmQxYjY3NWNmNmViYzIxY2FjMDAwOTUyNDYyYjczIGxlZ2FjeS10cnVuaworNjI3NDkgMmYzNTFmYTUzYTZiM2YwZWFmZTg4ODZiOTRlMGRkNzM2OGE0NWU0NiBsZWdhY3ktdHJ1bmsKKzYyNzU2IDVhZThkNTRkMDk1MjhmNjU1NjE4MWQ1ZWJmYWFjNzExNzdmMjAyZWUgbGVnYWN5LXRydW5rCis2Mjc1NyAxMWVkNDA1ZDk5Y2I4NmYzYjVhMTc4NTg1ZTY5ZjMyZTk0NDViYTcwIHJlbGVhc2UyNS1tYWludAorNjI3NjQgMWU4YjhkZjRkZjgzMTUzZGRhYjI3ODc2OTljZWI2YTk2ZWIwZjE4YyBweTNrCis2Mjc2NSBjODJmNjNlZmJjNDA4MzFiNDljYmJmYmM4MzIxYWJlZDE2Nzc3Nzg1IHB5M2sKKzYyNzY5IGIwZmI1NWVjZTg5ZmMzZWNjY2M1NGJjY2U1NzQ0MDBmNWEyODFhZTkgbGVnYWN5LXRydW5rCis2Mjc3NCBmODQ2OGJmZDQzNTc2MDRjZjQ5OThiOTg4YzQzNDBlYjdjZjc1ZTRkIGxlZ2FjeS10cnVuaworNjI3NzUgZGRkNWY0MjMzMmI5ODU2MzI1NzZjNzgyZWJiNTJlNmU0ZjNlOGYzNSBsZWdhY3ktdHJ1bmsKKzYyNzc4IGNkYTgxNmMzYTFlNDZiZTNhZjJlYjdkOGNlMjkyZGU4MjhkMWYzNGQgcHkzaworNjI3NzkgMDJhODE0MmQ4M2RiMjgzNzM3ZjUxZjdmOTk1MjcwOTQxNzk1MWY1OCBweTNrCis2Mjc4NSA5MTMwYjQ4YTcxMzBlMTVhNDljNGUxMjg0MjZiZmYxNjE0ZGViZDk0IGxlZ2FjeS10cnVuaworNjI3ODcgNGIxOWI0MWVmNjA2NGM1MzA1Y2FjYjc3YTVjYmFkZjhiYzhiZjZhYiBsZWdhY3ktdHJ1bmsKKzYyNzg4IDFhMmRiYzg0YmRmY2YwYThjNGM2ZGUwYjA3ZGI0NGViNmJmN2UzMWUgbGVnYWN5LXRydW5rCis2Mjc5MCBmNDA2NGI1YzhjNWQyZGY0YTBkYTZmMmY1MDQyYjZlZjkxYWMxOGZmIHB5M2sKKzYyNzkxIDkxMWM4N2Y4ZWQ1ZTU3M2E2ZTBmODU0YjM3Mzc5M2QxNWJiMDYwYmEgcHkzaworNjI3OTIgMGMyZTRiNTVmODBiOTdiNTZkNzFkMDM0ZDEzMjkxMWQwMjQxNjZjMiBsZWdhY3ktdHJ1bmsKKzYyNzkzIGZmZGI1ZjQxMzlmZTdhODcyYjJkN2MwYjhkM2ZjZjIxZTZjYjA5ZDkgbGVnYWN5LXRydW5rCis2Mjc5NCAxMGIxMzlkODc4NjAyMWMwOTVhYjM1OTUzZmI4OGEwNTZjYTdiNDg2IHB5M2sKKzYyNzk3IGNlZWE0MGRhYTg0OTA3OWI1MTVlZjgwMjRmNDQ2MDQwODBhYzE2Y2EgbGVnYWN5LXRydW5rCis2Mjc5OCA3YzgwYmFjN2Q3NzY1NmNiNzFkOWNhNjFjZTE1ZmI3ZWZjODQ3NGQyIHB5M2sKKzYyNzk5IGM4YWEyMjBjNmNlZWY5NThhZDVkOGQ1MzIzMWVmMGU1ZjcyYTk2OWEgbGVnYWN5LXRydW5rCis2MjgwMCA3MzdhMThiMmRlZDM2NWYwYmJmYzkxMGNhMThmZGMyNDZkYzc0NWYxIGxlZ2FjeS10cnVuaworNjI4MDEgNzRiOWM4NTM2MWY4OGUyNTNiOWY3YmI0OWRmYWUwNDY2MTliOWFkNyBweTNrCis2MjgwMiA3NDg2YzI5ZjkzYTNlZGQxMTIwNjE4YzU0OWY2YjAzNGM0ZTNkNjZkIHB5M2sKKzYyODAzIDBlNWE5NmZjOTQyMmI0ZTEzODU1MzcxYTQyYjM5MDI4NzNkZDlmYzEgcHkzaworNjI4MDUgNzdkZjk5MWVhNjM3OThmNWM5NWMzOTFmN2U0YWQ3MTQwMjM4OGUyMCBsZWdhY3ktdHJ1bmsKKzYyODA2IGQxOTY1MDg4Yjg1ZGQ3Mzc2ZjBiNzg2OGFhZWNhZjhiZDQ1NDFlYzEgcHkzaworNjI4MDcgOGI5MzFhNzk4MjdhOWI2NWUwMTMwYjdmYzlhMDU0YzdkNzYwMGE2YSBweTNrCis2MjgwOCA1ZmJkOTdmMWJjMzVlM2M5NmUzYWZiMGM1MmFiZjRkZGQ1Y2JhMTNhIHB5M2sKKzYyODA5IDM4Yjk0YzA5N2E1NTI2ZjVhYmFjMDE0Zjc0YjVmOTBmYWRmYzdlMTQgcHkzaworNjI4MTAgZDdlMjAyOWIzY2E0YmYxMTMwY2EzOTFiNDZkYWViOGQ4NzI2MTYxZCBweTNrCis2MjgxMSBiNjM1NDYyYTU3OThmMDNlNTUyZjFjYzEwMTU2YWE1M2UwM2EwNDJlIGxlZ2FjeS10cnVuaworNjI4MTIgODE1NDY0OWM1NTE2NjIwMWUwOWQwYjcwNGI0Y2FkMmU3ZTM5NTE3NSBweTNrCis2MjgxNSBhOWFjZjE4YThlNTc1MTFjN2JlYTg4NjRjYTM5ZTE4N2NjMDM1MDkzIHRsZWUtYXN0LW9wdGltaXplCis2MjgxNiA0MzA3ZWVkMWY3M2JlOWM0YjdmYjljNWQ3ZGUzMjk1Mzg3NTgwMzhmIHRsZWUtYXN0LW9wdGltaXplCis2MjgxOCBiOWEzYWJmNTlhNDU0NmYwMDJkNjZlNDE4MjgwMTEzYzU2OTc5MGUwIHRsZWUtYXN0LW9wdGltaXplCis2MjgxOSBhNjRmNDBiNjIxNjk2MzBjNjdmYWY0Y2JjYWJmNjQ3ZTFjNjkzYjA4IHRsZWUtYXN0LW9wdGltaXplCis2MjgyMCBiYjk1NmY0ZTMyNmVjNDYxNTVmMThmNWNlYjIwNjVkMzAyNmZhNjAyIHRsZWUtYXN0LW9wdGltaXplCis2MjgyMSBjNTM4MTUyNjYzNjBmMDVmZjVhMWVhMDY1NWM1M2JiODFkYmFiNGI2IHRsZWUtYXN0LW9wdGltaXplCis2MjgyMiA0YjAzOWVkZmVlNmJlZTQ5MjY4MWU3ZDg1MmY1MDM4YzIyZDU3ZTdkIHRsZWUtYXN0LW9wdGltaXplCis2MjgyMyA5NzQ3ZDExMzcwODNjYTUzYjc1NmFmZDBhMjEwYzY2OTY5Y2RiZDVjIHRsZWUtYXN0LW9wdGltaXplCis2MjgyNSA2N2JhOTNhZDAwZmRmMWI5MTM1NGRiYTExODMyYjM2YzRiZjY5ZjE3IHRsZWUtYXN0LW9wdGltaXplCis2MjgyNiAyYzQ1NThkZmY1M2Q5MDY0YTc3YTEyYjcyMDAyODhmYjJmNmFmODljIHRsZWUtYXN0LW9wdGltaXplCis2MjgyNyA0MWU4ZTcyYWE5ZWRiMWIwYjk2ZDA5YjgxNmRkMzI3ZmEwMjlmZjQxIHRsZWUtYXN0LW9wdGltaXplCis2Mjg0MSBlZjQ3ZGYyNTQyM2M3NmFhY2E0NDI1NGRhYjA5YjZiYjdjOWFlNWU0IGxlZ2FjeS10cnVuaworNjI4NDIgOTU3MGJjMTI4MzE0NDRhM2I4MzM1NGY3ZThkNzc4NWNiYzBhMWZlMCBsZWdhY3ktdHJ1bmsKKzYyODQzIGFkNzc1MWE5NTgwOThkNzEzZDZlZTgyY2ZjMTQwODZhMTgxMmYzMDIgcHkzaworNjI4NDQgODMxYTMwY2QyM2EyODIwNTJkOWIxMTJlOTcyODA4NTVlOTU3OTUxMSBweTNrCis2Mjg0NSBlMzQ1OWFkMDEzNjg2Y2JlY2U3MzY2MWViZjQ4YzY0YjViZDAzN2EzIHB5M2sKKzYyODQ2IDZlYzU2MDhiNjYzYzJjZjI4MDMwYTRiNzBjYzQwMmRmMzEzMDI4MTIgcHkzaworNjI4NDcgYWNkNjgyNzdjNGRkMDEyN2E3OTgyMTAzNTg0MDNkZmY1YmJkNTU1ZSBweTNrCis2Mjg0OCAyZWYxYzM4MTEzOGQ1NzNjZmQ5NGJmZWU5NGE1ZjZiMTFlZWY3Mjc3IGxlZ2FjeS10cnVuaworNjI4NDkgMGU3NmE4ZjM0NzY5NWEzNzUwZmI2ODExZDU1ZDZkYmJkNzc4Y2JkNiBsZWdhY3ktdHJ1bmsKKzYyODUzIGIxMjRlMzE2MTRlZDk2OTMzNmY3NWUxZTI3NmFhNTkzNjA3OTBmYjkgbGVnYWN5LXRydW5rCis2Mjg1NCBjNTYyNDAyYzFjMDgyOTkyNjliZWYzNjg3NTZjODIxYjhiMWNiYTFmIGxlZ2FjeS10cnVuaworNjI4NTUgYzY3YzA5NTU0ZDIzMDIwNDNmYjM3ODA5MWNkMDMyNTNjMzNiN2U5MyByZWxlYXNlMjUtbWFpbnQKKzYyODU2IGUzNTkzNTQ3NTE1MzM3N2Q2NzI3ZDY0ZTZjNTJmNzJjM2I4NDAxNWIgcHkzaworNjI4NTcgODE0ODA2OTI2M2FhMWYwMjEwY2RkMGQ1OGYxNTkzZmJhZDRlNmVmNiBweTNrCis2Mjg1OSBhZWQwNDIzOWEzZmMyNTg1MjA1MmRjNDZmMzkxNmQ2MDViZmUzNjUxIHB5M2sKKzYyODYwIGNlZjVhYTNlZDcxMzM1NDkwNDcyODY2MTg3YjYzOWZiNWE2NjdmYTggcHkzaworNjI4NjEgNDhlOWZiMGE3MjE3OTk4NzdmMjZlZGFlZjAxYWM2ZTYwMjliNjgxMiBsZWdhY3ktdHJ1bmsKKzYyODYyIDZiNzk3MGFhMGRkYTMyN2YyNWE4MzE1MTk1MWQ4YTdiOTY2ZWFiY2MgbGVnYWN5LXRydW5rCis2Mjg2MyA5ZjQ1OTc5NTU4YTliY2Q4MjE5NmYyMmM3MDA5ZDE1ZWVjYzM0NDRlIHB5M2sKKzYyODY0IGQ5ZDRjZWY0MjFhMmRjNDRhYzQyYWI4ZGM4YjFmYTA4YjRmM2RlMDUgcHkzaworNjI4NjUgZDQ0MzBlOTAyMWMyMjNlOGZlNTA2MDI5MjZiN2MyMWI1OWNmZGE5ZCBsZWdhY3ktdHJ1bmsKKzYyODY2IDcyYmUxMzkwYWU1ZjQ3YmY3ODliNGE3M2QxNWZhZWQzNzE4NGVmZGEgcHkzaworNjI4NjYgZTY5Zjg0ZWU0ZjNhNTUwMjJlMmYyNTJlY2UyYmFkOTQwN2QyMTU1ZiBweTNrCis2Mjg3MSA5ODFjYWYyNGRkOGE2YWFkOGMzOTI5ZmYwYWRhZmZiM2RiOTVkYjA0IHB5M2sKKzYyODcyIDE2ZGRkZmUwYThjZGM0NjYyM2UzYzdkMDU5Nzk2NDEyMWYxMGU2NTMgcHkzaworNjI4NzMgYzhiNDlkOGMzOTY3ZTdhZWRhNGFlNzk4MDMwNjE2M2FiZTE5NGUwMiBsZWdhY3ktdHJ1bmsKKzYyODc0IGYyZDc3MWYzNzBiZDhlMGJhMzU4OWZhMTZlMWRjZTJhNGJiOTZlNTcgcHkzaworNjI4NzYgY2E0MTAyNDE0YTM0NWNlZWM4MDliZmE2YjUyOTBlZDYzYjY4M2QyOCBweTNrCis2Mjg3NyAxMTQwN2MxZjY4Y2E0ODRjMjhiMWQ5NDY5MWRiNTg4NTdhZjNhMWZhIHB5M2sKKzYyODc4IGVhYWM1NjE5YTIxZmZjMDU0OWNkZjNlMzJiMjY3ZjNiMzdiODFkMWQgcHkzaworNjI4NzkgMjAyOGZhMmZjMWRkZmNjOTRhZTJlMTNmMWNmYWM2NzMyM2Q2Y2E3YyBsZWdhY3ktdHJ1bmsKKzYyODgwIGU5NWRkMjVkZmIwY2JlMDgwNWVlOTM4MzJhNjUwZTBmMzU1MGQ2MzAgcHkzaworNjI4ODMgNWM1YjM2M2QyZjE5YTgxYTllYWM1ZjM4MDE1MDQ2YmY5OTA4Y2JhOCBweTNrCis2Mjg4NCA5ZmJjMmRhNTRlMjkzZGU5MTMxYzUwY2M1NDE4ZWExMjZhYjQ3ZDM5IGxlZ2FjeS10cnVuaworNjI4ODUgMDQ3ZGEzZjZmZDdmZDk0YTJlYWQ3NzE1MDY0NGI4ZmY4OWEyNmMyYyBweTNrCis2Mjg4NyBjYWM2YTFhMzM0ZTA0Y2IwNmM4NzdjOWJlNTZkNDViODY5OGU2MzA3IGxlZ2FjeS10cnVuaworNjI4ODggYjcxMDlhMGNkMGY5ZjU3YTUxZmY1YjQ5MjVkMGNkNGEzYzA1Y2U3YiBsZWdhY3ktdHJ1bmsKKzYyODg5IGE3NjcwYWZiNWMwOTJkOTk2MTMzMjE0ODk0MTYwYTdlOTNhOTcxODYgcHkzaworNjI4OTIgNmFkYTE1ZDc5OTBmNzI2ODk5NzdmNDNhNDljMTQ4NzUyMzFlMDA2ZSBsZWdhY3ktdHJ1bmsKKzYyODkzIGI1YTY3NzI3OGI1ZmE4NTg0NjdjMGFlZGYwMjc0Mzc5NWFhZjBlNzkgbGVnYWN5LXRydW5rCis2Mjg5NCBiOGU3YTE2MTYxMWMxNGYzMmRiYmJkODM3NTM3Y2QzYzBlNDk2ZjdjIGxlZ2FjeS10cnVuaworNjI4OTUgMWZiMjQ2Y2IyOWFlNDExZWU4ZmNhODJmNWQxODEwZDVlNTY2NzAyNiBsZWdhY3ktdHJ1bmsKKzYyODk2IGRmYjBiYjVmYWE2YmM5ZjYzNGIwNDEyMzc1ZGJmYmI5OGFhMzc2MTQgbGVnYWN5LXRydW5rCis2Mjg5NyA2YmU2NDcxOWE1MDlhY2NiZjQwYzVmZDczYmQ5MTE4ODM1YzNhM2ExIHB5M2sKKzYyODk4IDJhMTczYThiM2IxM2Y4YWUxNDViN2FkNDg4ODE5ZDcyN2JlNTYzZjUgcHkzaworNjI5MDAgZmIxOTg0ZmIxODJkM2I5NjExMGUyYzE3MWYwNmVhMTFiODRlODcxOSBsZWdhY3ktdHJ1bmsKKzYyOTAxIDIyNGNhZDgyMzU5MDVmMDFkMThmYTU1ZmU2NGIzMzhjNjQwYjliMjIgcHkzaworNjI5MDMgNWU0YmQ4MjQ5ODQ2MjRlYjI5OWViYmZmZDIyZmFkZWU4NmYyYzhhYiBweTNrCis2MjkwNCBkYzU3M2VlMGQ5MDQxN2I3OWUyNmU1ODFjYWEwMzJjYTk5MWYzYWQ2IGxlZ2FjeS10cnVuaworNjI5MDUgYTEzMGNmNDhhZDY3Y2FlZjFiMTEzMzk0ZWU5MDgzNmM4MTA1MjQzMyBweTNrCis2MjkwNiA1ZDE1YThiY2M0NDU2NjI1N2E3M2FjNTNiZTFmZTdlZDU1MjRmMjdlIHB5M2sKKzYyOTA5IDhiZmUyYjA2NTI3ZGFkMDM0ZDM4ODJiZGRhMjhjZTU5Mjg1ZjcxMWQgcHkzaworNjI5MTIgYjkzMDA1NzEyZTM5OWZmMGMyZWVkYWZjYTNlYjcyM2M1MmRiMjQyYSBsZWdhY3ktdHJ1bmsKKzYyOTEzIDViNmVhNGRiYTQ0YzljY2ZlMWViY2IwODRjMDVmOGIxZGYzZDIwN2IgcHkzaworNjI5MTQgNGQwMDdhMzFiNDY0NTNkNzNjYjc1ZDQxM2MzYzQwNzQ5MmMzNTZlOCBsZWdhY3ktdHJ1bmsKKzYyOTE1IDM3Njc1ZjBjMzM4YTY2MDVmMWU1OTkzMDkzNGNjNjIxYTcyMTQ0ZjQgbGVnYWN5LXRydW5rCis2MjkxNyA4MTZjMjFjNzYyYzg1M2Y5NjYwOWRmNzgyZTFiMjNjYjQ4NDMwMWM0IGxlZ2FjeS10cnVuaworNjI5MTggZWJjOWY2NmZlOTkwMjkyODYzNDlhMzQ4YjRjNjkxZTljZjY0NDBlYyBweTNrCis2MjkyMCA5NDZmYmFlNGJhYWI1NjZiNDk1ZWVjOGJmOThlMzgxYjYzNTc5M2FkIGxlZ2FjeS10cnVuaworNjI5MjEgNGJkOTg5N2RjZTA3Y2ZhMTFiOGI0NWNjZjU2ZjQ1ZmUyODQ3YTY1OCBweTNrCis2MjkyMyBhODliZTI1MDcyZTNkZTdmM2U4MWQ1MzM2M2RiMjdhZGYxZDI0MmFjIGxlZ2FjeS10cnVuaworNjI5MjQgNWZiOGE1MDRmYTk2ZjExMTViNzVkZDU4MzFmNGJlMTNmOGYwMTE5YiBweTNrCis2MjkyNyAxNWM3MjIwMjg2MTU1YzFiN2I3OWJiNzM0MGY4ZDY0ZWQ0YmM3ZjNjIGxlZ2FjeS10cnVuaworNjI5MjggNTRlNjIyZWYzNTAwZTI3ZmI3ZDljOWZjZGFkNzk1YWJhMTM4ZTJjZiBsZWdhY3ktdHJ1bmsKKzYyOTI5IDg0YWYwY2ZhN2I4MWQ5NDM0ZTc0YWFiOWZjMjI3OTU5MzlhODIwZmEgbGVnYWN5LXRydW5rCis2MjkzMCBjZDZjNmRlYjdmODRlNGVjNDQzMzEyY2Y3Mzc5OGRkNDhmOGUxNDQwIGxlZ2FjeS10cnVuaworNjI5MzEgYzI0NDM4ZTlhYjU0ZmJhMzZlYTIwZWNkNTFjMTUzZTBkMGRlMGZjYSBsZWdhY3ktdHJ1bmsKKzYyOTMyIGNjYzMzN2I0NWIyZTMxYTAwY2Y0MDEzZTk4YzY0NTg3YTI3YzFlZmUgbGVnYWN5LXRydW5rCis2MjkzMyBlZmI5NzlhNDk0N2QwMDM4YzlkZjBjZjNiMGFhMDg1NzgzM2FiZTI1IGxlZ2FjeS10cnVuaworNjI5MzQgZjNmNmE4OTVhNTU1ZGYzNjk1Y2M5ZWRmZmRmY2VmY2VlYjAwMGUyMCBsZWdhY3ktdHJ1bmsKKzYyOTM4IDM5NTVjNTAyY2ZhMzcyMmZhMDk5NDIxN2Y1MjI4NDQwZDVmMTZlZTUgcHkzaworNjI5MzkgMTdjZDYxMmIwNmRhMWY4NGYyYzEzNjVlMTAwNmQ4YmVjMDg5MzRlNyBweTNrCis2Mjk0MCA4YjY3Njg1YThiYzNlZTY3OTIzYTFiNzg4MWEwMzdjN2YxZTgxYWQ1IHB5M2sKKzYyOTQzIDhiYWViYTEzYWU5M2Q0M2YwZTYzNjkyNmJlMjkyZDY5MWU5ZTVlZjEgbGVnYWN5LXRydW5rCis2Mjk0NCA1MWJhYmU3M2MwY2EzNWY2YTM0OGNmMTIwYjA0MDZkNWFlY2E4ZmE3IHB5M2sKKzYyOTQ1IGE0NDQ5ODVhNjc1YWU0ZWFlNDYwZDI5NzZiYjY5OTgyZjk3ZWIyMGMgcHkzaworNjI5NDYgYjQzMjUwNmVmY2U3ZmQ5NmVlOGFmNjgzMTQ2ZDhmYWExYjIyYjY4OCBsZWdhY3ktdHJ1bmsKKzYyOTQ3IGUwY2E3NGIzNjRlNDliNTU2MThhODIzZDJiZDllZWI0MTU2NGQ5MTEgcHkzaworNjI5NDggZmQwYjg5NGJjOTBjNTJhNDRmNTZlZjI2ODcwNzY0N2U1OWY0ZDFlZCBsZWdhY3ktdHJ1bmsKKzYyOTQ5IGJkMjk1NGM0OTE2OThjMTQyYmFmNTM2YWQzZDFhYzk5MTQ0Mzg1Y2YgbGVnYWN5LXRydW5rCis2Mjk1MiA0NDk1NGQ2NWE3M2E0NWRkNTI1YTMxYjRkZWM1YWM0NDk2YzFjZGE1IHB5M2sKKzYyOTUzIDg3ZDg1NGJjMWU0NWU3MWYwOTc0YTg2ODJkMTA5ZTljMDA2MmEzYjYgcHkzaworNjI5NTQgZGVjNTMxYzBhY2Y5YjYyZjlmODUzNDk2MDkxOWM0N2VkYjczZjk3NSBsZWdhY3ktdHJ1bmsKKzYyOTU2IDM3YjI3YTI1YTg0NzA0YThhYjA4MmE1ZDRmOGU5MDdiZDFjNDA2MTEgcHkzaworNjI5NTcgODAyNTE5ZjA0NzU0NWQ0MDExMjk3MjFkNzQwM2UzNmJmNzNkM2Q0MSBsZWdhY3ktdHJ1bmsKKzYyOTU4IGZlOWI5N2RiZDIzMmQyY2RhZGY4NzlhYjdmNjZjYWZhM2E1MjI0MzMgbGVnYWN5LXRydW5rCis2Mjk2MCA0YzVlZTFiMzgwNDUwMTdlODY1N2IzM2ZhZDVlYTFjZjY1MzNhNTY0IGxlZ2FjeS10cnVuaworNjI5NjEgOTFmZmQ5ZjNjY2VjOTAxMjA2ZGEyNzllYjFmYWE0MGJkZDU0MGZmNCBweTNrCis2Mjk2MiBjNTZlODNkMDhkMGIwNTgzNTM0YWI5NDBlYTAwMmFiN2U5YTk1YjE5IGxlZ2FjeS10cnVuaworNjI5NjMgMDdhMzVjOWE1ZDNmYjhjZmRjZjQ4ZWYxYjZhMzE3OWQwYjljMzg1MSBsZWdhY3ktdHJ1bmsKKzYyOTY0IDQ5OTg3NWNiNmJhMmM0MGQyNjA0MmZiZDA0YzZkOTViMzEzZTU5N2MgcHkzaworNjI5NjcgNDM5MjY5NDg1NTY5OTA5NzE0NzA3NmZiN2Y3YTdmOThjN2Y4N2YzNCBsZWdhY3ktdHJ1bmsKKzYyOTY4IDU2NzljZTY2ZTc0Yjg4MzhkNWRiNzdmN2M5MmFiYWVjOGQ2NGEwMTcgbGVnYWN5LXRydW5rCis2Mjk3MCA4ZGU1MWRhYTUwNmZkODU0OTZmZmE5MjBmY2IxZGM1MDEwNjQyNzVkIHB5M2sKKzYyOTcxIGFhOTI1MGU2YzQwOTM0ZTA1ODA1YzE4ZjJmYzYwMmQzMjllZGYyM2MgbGVnYWN5LXRydW5rCis2Mjk3MiA3NmVjNjc1ZTIwYjhjYmZkMTUzNmY5YTlkYTNlNjNkZTYwM2U1N2E2IHB5M2sKKzYyOTc0IDIzZWMzM2Y2NjczNjBlNGExNTA5ZTAxYTA4MGE5MTBjNDI4MDBlZTQgbGVnYWN5LXRydW5rCis2Mjk3NSA4ODRmODQyNmNjY2Y3ODkxMGNiOTNiZGMwNTg5MGEwZGZjYzAzMmMwIGxlZ2FjeS10cnVuaworNjI5NzYgZDBmNGMyNDY2OGYyMzdkYTY2M2MyZjQ1OGEyNTg1ZGQyMDI0YzAyZCBsZWdhY3ktdHJ1bmsKKzYyOTc3IGJlOGM0M2EzZmQ2MmZmNjI5NzQ3N2E2YTI2NWZjZDRmNDVkYzYyYmYgbGVnYWN5LXRydW5rCis2Mjk3OCAzODkzOGI3MTQwMTgyNDA2ODI0ODdiYzBmNDA2ZWNlZGQ3MjdlZmE2IHB5M2sKKzYyOTc5IGUzZDRkZTkzNTBmYjRkZGFkZjg5YjZmZjVkZGJiZDc3ZDBmOWJhYTEgcHkzaworNjI5ODIgMmVjZmM3MDEzZWI1YzMzNmNkMTBiMjM5Y2ViYmE3YmJmZjU4NDU5NSBsZWdhY3ktdHJ1bmsKKzYyOTgzIGExZjQ1OGIwMTQ5ZjA5MDIzYTdhNzBmNmU0NDY0YTIyYjdjZjhiMTMgbGVnYWN5LXRydW5rCis2Mjk4NCBhZDdkMzE5YWRmNzY3YWM2YTU3NzUwYTUzMTZiMzBkZjdjYTkxNWE1IHB5M2sKKzYyOTg1IDQxYTk3NjQ5ZGU2MTc1N2E1YTcwNjk4MTBjZDI4NDQ0NDc1YTQ0YjIgbGVnYWN5LXRydW5rCis2Mjk4NiAxMzJmODJkMjQwMjhlZDdmNzg2NWU3NzA3NjlhNWFjNDE1NWU0MDQxIGxlZ2FjeS10cnVuaworNjI5ODcgNDUxNjc0Zjg2ZDc1NDRlYTIzNTBmMDY0NjU2YzczYzk4ZDgzYzliNiBweTNrCis2Mjk4OCA3NjU0ZWI1ZDBhNjcwMWQyM2I0MjIxOTJhYTU3OTAwOTI1MDUyY2Q2IHB5M2sKKzYyOTkyIGJjOGIyMjY2MTFkZDQzZmJiYjhjMzMyODIyYTJmYzRmZWE1OGRlNDUgbGVnYWN5LXRydW5rCis2Mjk5MyBiMzhlZDdjMWNhYjFjMTllNzJkYzM2MDdkYTc5YTJhYWEyMmUxMGMwIGxlZ2FjeS10cnVuaworNjI5OTQgMmQxZWY5NDg3YzMxNTM4MzJlOTcwODc0YjE5ZDg4NmU4NjA4MTg5YyBsZWdhY3ktdHJ1bmsKKzYyOTk1IGJlM2M5Zjg4NjZlN2I3MmM5M2E5YTQzMDEzYjM0YzdmMGRmYjdmMTUgbGVnYWN5LXRydW5rCis2Mjk5NiBhYWM3YTIyYmVmODQ1ZTJhNWQzMzQ4Y2QyNTAzYTk2NTIxZDVmZTFhIGxlZ2FjeS10cnVuaworNjI5OTggMjcwZjU0ZTgyZDIwODFiMDBhYmNkYjE1MjBkNWJiZTM1YjlmY2IwZiBsZWdhY3ktdHJ1bmsKKzYzMDAwIDc2M2Q3MmQwMDAyNTdhMjg1NzRhY2Q2ZGViOTQzYjc3OTgzNzJhZjYgbGVnYWN5LXRydW5rCis2MzAwMSAzNDE4ZjJlYmNlODcyMzJmMzBjNjZlYjA5YjgyYjAwZTNkZDhmMzU5IHB5M2sKKzYzMDAyIDZiNGJmZjI4YzdiYTJiNWJlYTg0NTBjNDhmNTM3NjQ2NmFhZmFlYjUgbGVnYWN5LXRydW5rCis2MzAwMyA4N2RlNzU4ZGJkNjQ2NTViNmI3OTYyNjkwZGNmZjJjMzkyYmFjNWE2IHB5M2sKKzYzMDA0IDMzZDRlMDNiMjNiYWRlODE1MDU5YzU4M2ViMzJkMzk5Mzc3ZmJjZjIgbGVnYWN5LXRydW5rCis2MzAwNSAxMWEwYjIyMWYzNzI2NDMwNzQ3ZDgzMTEyNzQ2OTY0ZDJmMDBlNjE1IHB5M2sKKzYzMDA3IGI2YjJjZWE1ZDMwNmY3Yjk3MTRhZTkzMDI4N2EyNDI0YmNhY2ZmYWEgbGVnYWN5LXRydW5rCis2MzAwOCA0MjhiNjZjMDRkM2E5MTFiMjM5NDg4ZjMzNTNkZjhhYTFlNzBkNDNlIGxlZ2FjeS10cnVuaworNjMwMDkgNjBiMThiMzlhM2EyZTgzOWY2ZDVmMmVmMzJlN2E2MWJhNjRjYzAyZSBweTNrCis2MzAxMSAyZDA0ZTU2MDEyZWRjNmZkZDg3NmQ4YTAxYmNlMDI0MGU4ZDA3YWU1IHB5M2sKKzYzMDEyIDZlZGFhYTc3YWYyNzY4NmUyODM3M2I2YzFkMjRlNTc4ZmU5M2ViYTEgcHkzaworNjMwMTMgMGMwMmUxNWE3YzFmY2QyMDU0YWEwNGRkN2RhNTdmZTNkZTE2YjQzMyBsZWdhY3ktdHJ1bmsKKzYzMDE0IDJjYTdhMjc5ODE2MWM0MGM2YTgwMTE0MTFmOGMzZjdhNjc2YzMyYTQgbGVnYWN5LXRydW5rCis2MzAxNSBiZTFlZDYyZDhiODBjN2QwNzA4ZDhmN2NhNDliMGNjYmFhZWM5YmRjIHB5M2sKKzYzMDE3IGM3ZDUzMGU4YjdmNTNiY2QzZWMxM2NiYjA0NTU0NGIyYmMyNDZlOGEgcHkzaworNjMwMTggZjJhNjNlYzUwNTVlNmMyNDdlODAwZTQxY2E1ZjFiYzdiZjc5Y2E2YSBsZWdhY3ktdHJ1bmsKKzYzMDE5IDkxZmFhZTQ5Y2JlYmFhNWM4Mjk5ZDM3M2MwMGQzYTc0ZmZjOTIzODQgcHkzaworNjMwMjEgMWU0MjdiYzBmODE4OTRmYzUxYmQwMDgwZGJhZjNhMTg2NGI3MTFlZCBsZWdhY3ktdHJ1bmsKKzYzMDIyIGMwYzU3YmU5OGVlZDZjNDRhMzQxM2IwYzdjMTBjZmRkM2U4MzlkMzYgcHkzaworNjMwMjUgYzE1Y2YwMTQxNWY5MjU2NWVhNGFiNjk2NmVlM2MxZjYyYzBhMGEwMSBsZWdhY3ktdHJ1bmsKKzYzMDI2IGQ4ZTAwMGVjNzc5NmJmYzYxZTYxNTE5N2QzZjBmOTczOWYyOGY2NjggcHkzaworNjMwMjcgODkyZjliMjk1OWM5ZDE2NTYxYzVlODAwMTRkNDAzN2VkY2M2NmE4OSBsZWdhY3ktdHJ1bmsKKzYzMDI4IDM4NDk2OGQ0ZDY1NTg2ZTBlYzI3YWNmYmFiYzRkMjI4MzE5ZjUyYmUgbGVnYWN5LXRydW5rCis2MzAyOSBhYWFlNDg5YjlkODFjMWI0ODQyYzQxNDNlYTUyNmE3Njk5ZTFmMzE4IHB5M2sKKzYzMDMwIDJjYWMzMWZjMTdjMjFmYWFlZjM5ZmE0YjExM2UyMDNlMTRiYmJkODAgbGVnYWN5LXRydW5rCis2MzAzMSBkMjM0NTExOWEyZGFiZGIxOWYwNTZiZDFhN2I4NzE0OTEwMzQzZTEyIHB5M2sKKzYzMDM3IGZiMTRmZjA1N2MwOTY3NjZmZGQ2NmRkZTU1ODY5ZGQ3MWM0MjlhYTYgbGVnYWN5LXRydW5rCis2MzAzOCAxNmYxNmZjZTUzMDI1ZjYyYzE4NmJmODBmOTdiOWUwMjNiOWQ1ZTU1IGxlZ2FjeS10cnVuaworNjMwMzkgZjYzODhkYzAxOWNjODJmNmNiYzg1MWM0ZjU4ODA1YzVjNDhmMzM2MSBsZWdhY3ktdHJ1bmsKKzYzMDQwIDIyNGUwN2I2NTg2MWMyNTZiZWMwZjA4M2YzMWNkMGFiZTlhYTdlMGEgbGVnYWN5LXRydW5rCis2MzA0MSA5YzE4YmFhNzYwYWQwZDBkZDkxOGVjYTc0YmU0ZjgzYmVmOTJlZjIzIGxlZ2FjeS10cnVuaworNjMwNDIgYjQwODI3ZWI0YjgwYjc2ZWMzYTA4MWQ1Mjk1ZjQ0Y2U1YzAwMWQ1YyBsZWdhY3ktdHJ1bmsKKzYzMDQzIGZkZWY3MTc5N2U4MzIzMWJjYzIzOTQ5Y2FiZWQ3NTI3NDgwM2NkNTUgbGVnYWN5LXRydW5rCis2MzA0NCBkZDU1MTNiNDcyZGM5N2Y5MDlhNmRhMzI1YWQ5OGZiYjU1ZDFmZTBiIHB5M2sKKzYzMDQ1IDUyNTY2YjQ0NWZjNzU1NzAzMDE1YzlhYzg1NmQyNjQyNzYzMzJlNTcgcHkzaworNjMwNDYgZTVhZWIzZGYxNzRlNDk3ZWY1Y2YzNTQ4M2UyZjlhYzMxMWM0Mzk1MyBsZWdhY3ktdHJ1bmsKKzYzMDQ5IGQ4ODUwNzU4ODc5MDQ4OWU1Yjc5ZGZiYmJhMGIwZDRlODgyNWNhYTMgbGVnYWN5LXRydW5rCis2MzA1MCA4Nzc3ODMzMzNlYWVkZmU1MWEzMDFmM2ZmNmJmZmE1NDhlMGM3NjRiIGxlZ2FjeS10cnVuaworNjMwNTEgNmJkNjY2MDc1ZTE0YzhkN2U2OGI5OTQ3ZDBlMzNiMGJkYThhOWYzZiBsZWdhY3ktdHJ1bmsKKzYzMDUyIDVkYmJjNDQ5ZjAyYmUyMjVmOTA2OGYwZDA5NTEyNTg1OWM2MzkwOGEgbGVnYWN5LXRydW5rCis2MzA1MyBjN2QxYTE3MGM5NGMzNWNkMDE2NWRlNjVmYzgwNGFkZmUyNWZkMDEyIGxlZ2FjeS10cnVuaworNjMwNTQgYzIxMzZjMTRkY2Q3OTQwOWQ4ZTEwMmZkOGMzOWI1N2Q2YWFkYWQ3ZCBweTNrCis2MzA1NSBmNGU2MWRjZGI2Zjg1YTRkNzM1OTc5YWNiMThjM2QzNWZjNWI1YjkyIGxlZ2FjeS10cnVuaworNjMwNTYgYjI5YjQ2YTQzOWQ5ZjBjOGU1NWJlNDAzYjkyMTA2YjgwZjY2NGQxNyBweTNrCis2MzA1NyA5Yzc2NWY0ZWQ1MTIzNDUwMmY0NjFhMmIxZTVhZGYxZjNkYzFiZTIwIGxlZ2FjeS10cnVuaworNjMwNTggYWZhZWVkYWRiZGIzNmIzOGMxY2E2NWE3NWIzNzliNGZiYTA3ZWJlMyBsZWdhY3ktdHJ1bmsKKzYzMDU5IDRmYjZjMGMxNjlmZjBiNWNjMjQyMzk4ZTc2NjJhMDI1N2JhYjQwNGMgbGVnYWN5LXRydW5rCis2MzA2MCAwZGY2MTYxOTNiOTg4MDZiNDU5ZGQ5YzZkOTdjODlhMTFiODFhMGM2IGxlZ2FjeS10cnVuaworNjMwNjEgYTczZTg3ZjE1ZmZhNzQ5ZWUyODdhNzkwMzJmNDI1NjU4MDQzNjcwYSBsZWdhY3ktdHJ1bmsKKzYzMDYyIDA4MWYyYTY2MjYzNDY1YjU5NTdkYTIyNzEyYWRiMTQyOWE1MGI2MzQgbGVnYWN5LXRydW5rCis2MzA2MyA3Zjc3ZGI5NTBjYjQ0ZWZkNzZhN2RhZWRkNDVjZmU2Yzc2MDBkNzI2IHB5M2sKKzYzMDY0IDgxOGNhZWJlMzczMzExZTE5NDgxYzgxODg3NWFjNTU0ZTg0NTg3ZTIgcHkzaworNjMwNjUgMDc1NzJhODI1NDBmZGRlNzE3MGQzM2Y3OWMxNmQzZTU1OThhYTQwYyBweTNrCis2MzA2NiBiZTg3Yjc3MjY4NjYwYjVkODU4YzVlNjExZjBhYmNjNjA4NTFlMDA3IGxlZ2FjeS10cnVuaworNjMwNjcgZGVkY2U3Y2I3YTVkZmY3Y2EyMjBlYjUwZDY2MWY1NGQ0MjYzMGRlNyBsZWdhY3ktdHJ1bmsKKzYzMDY4IDFmZGZiMjlmNGZiODM2MDljZjZkYzkyYjA0MGRjZjZlOGM0ZmVhOWYgbGVnYWN5LXRydW5rCis2MzA2OSA1Y2NkMTY1ZjMwYTQ1MTIzMjliYWUxNjJmNDgzYzE4YTZkMWNjYzNhIGxlZ2FjeS10cnVuaworNjMwNzAgYjE3YjI5ZTYwZTliYmQ4ZGJlNTA4MjhhYzgyOGE4MjU1MzMzYzBiNSBsZWdhY3ktdHJ1bmsKKzYzMDcxIDQ5ZmYxZmMwMGM2YzUzNGUxZjQxYWZjZWEyMmI2NDY2MjYyMzhkMWQgcmVsZWFzZTI1LW1haW50Cis2MzA3MiA2N2U0MzYzZWEyZTA2NzRlN2ZkNDYyM2U5ODg1YzgzMGE3NzI0OTVjIHB5M2sKKzYzMDczIGFiMTkwZjcxYjkxNzY5NTYwNTFhMThmZWM4NDllMGI5ZTZkN2RkY2YgbGVnYWN5LXRydW5rCis2MzA3NCBlMzQwMWYzMTZhM2I5NGI4NmRlNDVkMzE2ZmRhZTY0ODZiZjk4NGU1IHB5M2sKKzYzMDc2IDIxYWUyYjY1YmJiYjM2OTdlMTY4NWE0NTA5NTM0M2ZkZTNiNTc0NDcgbGVnYWN5LXRydW5rCis2MzA3NyA3NjY4MWE2MzA2YTgwNzBlMDE2NTIzY2NkMTM3M2FlZDA4ODkwODJhIGxlZ2FjeS10cnVuaworNjMwNzggMjA2NzAwZDc0OWYwZjMyMzlkMDNlMmFjMzg2NjE3ZjQ3YzdkNDJmMyBsZWdhY3ktdHJ1bmsKKzYzMDc5IGJkMmM5NWMxNjVlYTRjMGQzZGVlZGUzMjI1MGE5M2JjMDJmNWM3ZWQgcHkzaworNjMwODAgYTk0OTVhM2ZlMmUwYjc4M2RhZDUxYWUwYTBmZjBkZTg3ZDQyNTc4NSBsZWdhY3ktdHJ1bmsKKzYzMDgyIGUwM2Q4ZDNlNjc1NDRmNzdkNzM5MGVjYWNkOGMwMjYzODI5NDdjMDYgcHkzaworNjMwODMgYjcxZmNmZDk4NjZiYWVlYjBkZWRmOGMyODljNDhlOTM0MzAxYzBhYiBsZWdhY3ktdHJ1bmsKKzYzMDg0IGFiZTNmMzA1ZjZjOTYwMWRiMjk4MDg1MTg4OWNmYzgzMmE3Y2NlODEgcHkzaworNjMwODYgN2U0NjllM2NlYmRhNmUwOTgzNzEyOTIwZGZjYzU5NzFkZDdlODc4MCBsZWdhY3ktdHJ1bmsKKzYzMDg3IGI3MTBkNzE5YTA4MmFkNTk1NWE2NTg4MGFjZmI2ZmFlZTBlNWRjNDEgcHkzaworNjMwODggODExMzEwNDZkMWIwOTI5MGZjYmMwYzQ5NTVmMmIyOWJjZTQzOWIyYyBweTNrCis2MzA5MSA2YzE1ZGI2Y2U1ZGFmNjRiYzNjY2JmZTM3MWU4MTMyZTE4YjRlOTFmIHB5M2sKKzYzMDkyIGVkMmMxODg4ZTE0MzAxNDFmOWJlMzBlNGRmMzgwYmI4Nzg2YzhiODkgbGVnYWN5LXRydW5rCis2MzA5MyBlZjRlYzk2OGZkYjY2ODBlZjMzOGYwMzZjNjIyMTNiMzA3ZmQ5ZmJjIHB5M2sKKzYzMDk0IDc0MWIyNjY3YWMwYjcxNGY2YWZkYzExMjJiMzc5OTBjZDgwM2Q3MDYgbGVnYWN5LXRydW5rCis2MzA5NSBmM2QwZWMwYjczN2ViOWMyYmZhZTc5ODIyNTM2NGViN2FjOTEwYWE4IGxlZ2FjeS10cnVuaworNjMwOTYgY2NjNjYzYWE0YTc2NDRjN2UxYjVlMWExYzU0M2ExNTkxYWEyODUwNyBweTNrCis2MzA5NyA2YTE5YjliZWExOGU3YmQyZTE4ZjBiZWFmMDRmNWYyOGY4OTRkZTQ2IGxlZ2FjeS10cnVuaworNjMwOTggOGVhOGZiMTRkZjcxNTNkYzcxMWMwNjI3ZDllMGVlYWU3ZTcxMTZmYiBsZWdhY3ktdHJ1bmsKKzYzMDk5IGU5NDU3NDQ1NWQ5ZGQwNzczYThlZDlkOGQ1M2JiYzJmZWYzNjcyZGUgcHkzaworNjMxMDAgYzhiNzcwMDdhMWMxNDQzM2VjZmZlZDM4NmI5ZjlkMWYwYzE3MDc2YiBsZWdhY3ktdHJ1bmsKKzYzMTAyIDIyY2RiNmVjM2U1NjkyYTI1ZDI1YWZjOGI2MzEzMDFhMzAwZjg0MzMgcHkzaworNjMxMDQgYTQyNzdjMWM5OGE4NTQxMmY4OTFlMDYzM2QzMDFlOGVlNGE4M2FlMiBsZWdhY3ktdHJ1bmsKKzYzMTA1IGQ3YzIwN2I4MGM0MGFhMjZmNmEwMWE0YzE1ODk5MGM4MWU5NGYwMzMgbGVnYWN5LXRydW5rCis2MzEwNiA5MDY4NjA0NWZiYThkMTJmNWJiMGNkNzRmMGIyYWNmYWRjNmU3M2UzIHB5M2sKKzYzMTA4IGE5ZmY3Mjg5MDgyYjIwZmM5MmEwNzFkMWQwN2UwYWI2Y2FhM2MxYTEgbGVnYWN5LXRydW5rCis2MzEwOSAwZDQ5NTc1NDBjOTZlOWY5N2QxOGViMzNmZjQxNGIzOGI0M2FhYmIyIHB5M2sKKzYzMTE0IGMyYWI3YTA2ZWQyNGJlYWQ0ZWM2MzZlYzVhMjQ5NWQ0MzJjYTU4MDQgbGVnYWN5LXRydW5rCis2MzExNSA1MjZkOGNmN2E5MjA2ZTNmNjQ0MjJmMzFhYjNlNzczZjdmNDRmOWMxIHB5M2sKKzYzMTE5IDRjODM3NTU3NGFhOWU3NDYxMGE4OTYyOTg0NWQ4MWVjMzZjMTI5NWQgbGVnYWN5LXRydW5rCis2MzEyMiA2MjJhMjU5NjcyMjhkOWEwODFiNzgzYzgyYWNmNzE1NDcyOGZjOTJiIGxlZ2FjeS10cnVuaworNjMxMjQgZjBhMjg1ZmMyMDFkMDA1ZTUwM2I0NmQ4MDAxOTIzNmMzODI2YWMyMiBweTNrCis2MzEyOSBiZGUzOGE3YjIzMTgzOTkyZTgxMjg5YzNkY2JlNjRjZjBhZGIyNGE4IGxlZ2FjeS10cnVuaworNjMxMzIgYTM3NWIxMzQ2ZWIzN2UzMjQ2ZWVmNTk2YzhkMzgyMGY2MWEwNmJhOCBsZWdhY3ktdHJ1bmsKKzYzMTM0IGRhZmRlMmVlZTNkMGQ4YTEzZTk2OTJhMTU0NDEwYmJjOGI3Yzk1YjUgbGVnYWN5LXRydW5rCis2MzEzNiBjOWU1ZmFhNDgyZThiYWYxZGU5YmUyNWUwZWM2MjllN2ZhNmJmYzQxIHB5M2sKKzYzMTM3IGIzMDVhOTZhNGJlMmU0NGFhMTE2ZWRlMGQ0MWYzMTVlYmRlZThkZTcgcHkzaworNjMxNDAgYWNhNWMxZDFjNTY5NGEzZWMwNTZmMTAyM2IxYTU5OThhNzIxNzJjYiBweTNrCis2MzE0NCBhOWFhMzQyYTM2N2E5MjJkMjM5ZmNlYmI1NDk0OWJkYjRjMWMyODBkIHB5M2sKKzYzMTQ1IDJmMTQ1MThmMzAwYjhmYzMzYTllYzY2MThmNjY0M2Y0ZWJhZmIzMmUgbGVnYWN5LXRydW5rCis2MzE0OSA3OTkzMjFlN2U3YmI0MzI5MTc2YmEzNzFkNzFhYjFiNWU1MjFjOWQyIGxlZ2FjeS10cnVuaworNjMxNTAgYzFhNjhmNTQwZDViYzNiM2M1ODczZTdkMjBhODM2ZTUwMzc2NGZhNiBsZWdhY3ktdHJ1bmsKKzYzMTUyIDgzN2RlMjRhYzFmN2E1ZmJmNTc3ZGE4NGI3OTJlNGJhZjlmZWNhYmEgcHkzaworNjMxNTMgNGFjOWNjMWQ3Nzk4NGJjOWMzZWNlMzMxMGMwMDUxZDllMWQ5N2M1MSBsZWdhY3ktdHJ1bmsKKzYzMTU0IDY0ZDE5ZjI4NTFlMWJkZjIxMzMyMjBkNTE2NDQzYjUxOTA3N2I4M2YgbGVnYWN5LXRydW5rCis2MzE1NiAxMjgwYjhlYzlkYTM4NTFmNmJhYzlkMGMyOGExMmIyOTNjZTU2ZTI0IHB5M2sKKzYzMTU4IDVhN2NjZDY1ZTU5YjNkMmVhZjc5YzUzZDhjNTdmOWMxMTJmMDI3OGQgbGVnYWN5LXRydW5rCis2MzE1OSAwODljOGQwZGY3NzQ0NGQxNTk2NGU4MjhhNDIxNDg1MjVkZGUxNTgwIGxlZ2FjeS10cnVuaworNjMxNjEgYmEyM2ZjMTU3NjE4YjM5OTcwMzBhMTc2YjNjZTc0ZmNjYjg5MzU0NSBweTNrCis2MzE2MiAzOWY2ZjdmMTcyY2E4ZTU0N2MyODg3ZmJjNDRiMDZhZjZmYTRjZjhlIGxlZ2FjeS10cnVuaworNjMxNjMgZmQyM2U2ZDE3N2U5ZGE2ZDdiNTM0YTU1ODVjODYzM2JkZDhhMTJjNyBweTNrCis2MzE2NCAwN2E1M2JiODJiYWEwNWJkYjE3YzgzNjRiZmRjNTdiMGQ2ZGE4ZTQyIGxlZ2FjeS10cnVuaworNjMxNjUgZGYxMWFmZjA5MmNkODRlOTVhYThhYWY4NWY1NDVhYzI2ZmNmYzllYyBweTNrCis2MzE2NiA2YTc3OGMwYTUxN2U2MGViZDgzNzY2NDRjY2U5NDc2Y2Q5OWY0M2RkIGxlZ2FjeS10cnVuaworNjMxNjggYjNlYWMzYTdmZGMzYzc1MTg0OTU4ZjE1ZjU2ZDYwYTU5OWU1ZjY1ZCBweTNrCis2MzE2OSBlOTk3MzkwMzY2MDY5YTQ5NzRmOTU5ZGFlNTcyMmY4ZDY0MDE1YTRhIHB5M2sKKzYzMTcwIGQyODEwYjhhZWQ2ZDFmYzA3OTE2NzMwN2RkYmFlM2E2YzU0Y2NmMjYgbGVnYWN5LXRydW5rCis2MzE3MSBmZjliMjA1NzcyMmNiNTA2YTk0OGZhMDlhYjBiNmVkNGRlMzIwYjNiIHB5M2sKKzYzMTczIDkwOTE2MzdlMzJiMWUzYjdkMjgxMWE2ZDU3NDFmOGUzOGEzYzdhYzcgbGVnYWN5LXRydW5rCis2MzE3NCA5OWY1MGFmNjkyZDAyOGMxMDQxN2EwOTRhZDU2OGU4MzI5MzQ2NGQ5IGxlZ2FjeS10cnVuaworNjMxNzUgOTJkMDBmNWYzYzBkMDQwMTk1ZTdhOWIzODc5NDM5ZGUzNzAxN2QwNiBsZWdhY3ktdHJ1bmsKKzYzMTc2IDlkNDZjMjg5ZDE2NjA1MWFkYzY0NmRjMjc5ZDJmYTA5NTJhOGFlNWUgcHkzaworNjMxNzcgZTY0MDM5YmJmZTI2ODY3ZTk1ZDRjZGViZTdlYTExZWUyYmYzNmVhMSBsZWdhY3ktdHJ1bmsKKzYzMTc4IDFlNTczYzJjZDliZTYxYTE4MDM1OTQ4MjFmMWUwZDY5MjI5OGEwODggbGVnYWN5LXRydW5rCis2MzE3OSAyZWJlMjcyN2ZjOTJhZTQwN2M2NzQ4MzVmMDFjODg5MTYwOTUxNjVkIGxlZ2FjeS10cnVuaworNjMxODAgOGE0OWY4ZWY3Zjg5NDIzM2E4YTEwZWRlYTdjYjhiZTcwYTkyM2I0YSBsZWdhY3ktdHJ1bmsKKzYzMTgxIDg5NDE0NGIxNzNjOWY2MmUxNTBkMGQ5OTI1OWYzYmY2NjliNThhNTYgcHkzaworNjMxODIgMDNiMTIzM2JmNWZlMDBjODZmZGU5MWU1OWQxMWE1Yjg2MGQ2MzBjOCBweTNrCis2MzE4MyA4MjZhZmY5NWNmMGJkMWIyYjQ4Yzg0Mjg1NDhmZjA5M2UxMTdmOTNiIHB5M2sKKzYzMTg0IDY1Yjc1Zjc4MzhmM2I3MzBlYzU3Y2EzYjgyOTgxZDkyNTY2MjkwZTkgcHkzaworNjMxODYgNTFhZmQ1NjZkYjJiZDQyNjNhNDg4N2IxYTlkN2IxMGM4ZjE2NDc1ZSBsZWdhY3ktdHJ1bmsKKzYzMTg3IDZkZjAzOTRhYmJmMWJkYTJiMGQ3ZTU1ZmQ0NzY1ZTZiZmFhMmFjYmEgbGVnYWN5LXRydW5rCis2MzE4OCAyODQ1MWI1ZTgxNmZkYmEwMmJlYmI2YjZiODUzNzIyNWVkNWFkODFmIHB5M2sKKzYzMTg5IDYyNjU4YjBhY2EwODIyZTRjOTY4NTdjMWUzY2EyOTk5ZGMwYmViNGYgbGVnYWN5LXRydW5rCis2MzE5MCBlZWFkMDhiOGUxZmQwNjNlMWQzZWI0ODU1MzI2ZWY4ZTdkOGVlNTExIHB5M2sKKzYzMTkxIGE1OTY0ZWU2NjE5M2E0YjAyYWRkMDkyYTg5Njg5NTA5NTVhMjg4ZDIgbGVnYWN5LXRydW5rCis2MzE5MiBkYTZlZjExMGMzNzM1MjQyZDcxNDI2Y2FjMWI0ZWI0MjJkZWU0NjA0IHB5M2sKKzYzMTk0IGU4Zjc0ODQ3MjczMGM3YmRhMDk3OTUxZjhkNjJjNjkyYzhmOTZiNTcgcHkzaworNjMxOTUgOTExYTdiY2RjMTdlNTkxMGNkM2ZlODg4MDQyOTFjZjg5ZWZmNmM4OSBsZWdhY3ktdHJ1bmsKKzYzMTk3IDc1NTY4Y2RkYTk0NDcwOWZiMTY3NDY5ZmY3NTUyMDdhNGIzYjM5ZmMgcHkzaworNjMxOTggMzg0YzU0ZmFkYWEyZmJkM2Q0NjY2ZDJjZWY5ZjliNzc1MzQ2YjlhZCBweTNrCis2MzE5OSBhOTU5NGE1Y2RmN2ZiODYyYjQ0OWJmNzg2OGMyYzVmZGM3NDI2ZDZhIHB5M2sKKzYzMjAwIDU1ZDhjMzUzMjJhNzBkYjNhZTk5YTgxZGJlZjI1NTg4M2Q2MDM3YjMgcHkzaworNjMyMDMgYzI2YzAyYTQyMDA4MjRiZmYyNWViMWQyODgzNzAxNjk3MmNkNTAwOSBweTNrCis2MzIwNSBlY2RlZWZhOGJiNmE4NDE2MDk1YWM4N2RhZjJlNDc3MWJhMTczZDE2IHB5M2sKKzYzMjA3IDY5ZGE3YTRmMmY4ZTJkMzA5YjRlN2NjZDYxNmZlNGYxODNmMGVmMTQgbGVnYWN5LXRydW5rCis2MzIwOCA0NzY5MmY2YzgxNWVkZGJhNDg0ZTIyYTFkN2E3ZGQzMjQxNmU2YmYxIGxlZ2FjeS10cnVuaworNjMyMDkgN2M4YWNhYTI3ZWFlMWQ0NTVkY2FlZWExYjhmZDQ5NTU2MDJiY2M4NCBsZWdhY3ktdHJ1bmsKKzYzMjEwIGU0ZTNiM2ViYTIyNmZkODliNjczMDIxMTlmYzQxNzdiYTJjNGQxYjMgbGVnYWN5LXRydW5rCis2MzIxMSBkMmMxZWQ0MDhhMWQ3NmE2NTcwMTVmNTIzYjUyZmU4NzUxYTM0YzBlIGxlZ2FjeS10cnVuaworNjMyMTIgNzY0NzdiOTc4ODUwOWI0OWE0OTI2YTg5ODQwNDkwOGMxYjEyOWFkMiBsZWdhY3ktdHJ1bmsKKzYzMjEzIGYyMmVkODAyODlkMzAxNDc5Njc5ZjI4NWUxYWE2Njg5ZjI5YmFmYjUgbGVnYWN5LXRydW5rCis2MzIxNCA0OTAzOGVlMGU1YjViNTMwMDM3YmM0YTllYTRmZGUzYzI2Yzg1YTFlIGxlZ2FjeS10cnVuaworNjMyMTUgODEyMmEzMjRiN2E1NTE5ZGRhYTRiODQ5NWQ0ZTU3MzlkZWIyMTBkZCBweTNrCis2MzIxOCA2MDNhOTM1ZWFhZGE5ODVhYjUyYjFmNDAwZTgyYjFhZGVmNmM3NjdkIGxlZ2FjeS10cnVuaworNjMyMTkgYTE3NTg1YTQ1ZWU3ZWEwZjBjODQ5MzllNjc4OTE3MmU4YTI4NTQ4MyBsZWdhY3ktdHJ1bmsKKzYzMjIwIDdiNmUyMjJlYWRhNzBhYjYyZWI4MDI4MTBkY2YxN2UwMDU0NTZlOWIgbGVnYWN5LXRydW5rCis2MzIyMSA1ZGQ2YzUxYWVlZGVhNDg4YzNkMjg3MGIwZGE4ZTkwMzZhMTVhZDU4IGxlZ2FjeS10cnVuaworNjMyMjIgOGIyMjNkMzUxYjA5NTkyYjAzY2U3OTQwMzVhYjI0YmFhMjNkYTk4MCBsZWdhY3ktdHJ1bmsKKzYzMjI1IDU2MWU1ZjUwMjZlYjBhNDRiMzhiNTBmMzg0ZWQ3YmEyYTY0YzlhNzggbGVnYWN5LXRydW5rCis2MzIyNiA4NzYwOTEyYTllOWZlMDU5MDQ1NDdmMDgyMjM0MzgyNTJhZmFmMzI3IHB5M2sKKzYzMjI4IDAzZDY4NzViZGUwZWJiMTkxN2IxODA0NDUwNmVjODM4MDU1MTVmODIgbGVnYWN5LXRydW5rCis2MzIzMCBlNTM2YzY1MDE0MDJjMTE3ZDBlYTRmZjgzOTBmZWQ0OGM5ZjFiNjI1IHB5M2sKKzYzMjMxIDhmYjliZDU5NjJlNDZmYTJmYzVkZmUwMjVkZWZjZDM5M2IwNzAwN2UgcHkzaworNjMyMzMgZjJjNGFiNzRjYzY1YmNmZmQzNzdiZmY4YzE2MDZlNjJiZjA3MmQ0OCBsZWdhY3ktdHJ1bmsKKzYzMjM1IDkwNWI2MjcxZWYxMThhYzNkMjA0MDBiOGY3YWQ4ZjVhNTA4MGRjNDQgcHkzaworNjMyMzYgNzFhYTkwM2ViN2FjMjI0NmU5YmU2YzM2ZTBmNTIwOTNlMGNlM2JiMyBsZWdhY3ktdHJ1bmsKKzYzMjM4IDgzZTk1MGYyOWQ0NDMzNjZlMjVlYmNkMDc2YmRmZGZmMjViYTZjN2QgcHkzaworNjMyNDAgYTNiNGYxZTY1Y2JlYWU1NjRmZmQ0YzllMTJjMTFmMzE0MDBmMGJjZSBsZWdhY3ktdHJ1bmsKKzYzMjQxIDQyZmM5MjIxMjBkOTZlOGMxZTgxNzkwYmZhN2IxMGNhYmVmNGY5ZDkgcHkzaworNjMyNDIgOTkzZDBiYzA3ZTAwMmE5Yjk1OWRiZTlmMjVmMjA1YmZhZjRlMzYxYiBsZWdhY3ktdHJ1bmsKKzYzMjQzIGM1NDZjNDBmY2VjZTBhNjc3YzJmMDE3ZDNkYTRiYTA0NzU0ZDhmZDQgcHkzaworNjMyNDQgOTU4Mjg2YjE1ZGUwNTBkOWNjYTJhNDQ4Njc4MDRmMzRiMDI3ZTJmMSB0bGVlLWFzdC1vcHRpbWl6ZQorNjMyNDYgZjI4YjcwNjQxNTk1ZjJkMTZmZGY4ZjA2ZTA1NTBmNzMyMmM3ZmE3MiB0bGVlLWFzdC1vcHRpbWl6ZQorNjMyNDcgMTc5NTZkYmFkMGU0MWUxYTRlZGY2MjU5MWFkNDI2M2ZmYTc5OGFlNCBsZWdhY3ktdHJ1bmsKKzYzMjQ4IDcwODIxNGYzNTFmZTdkOGJkZTRhOWQyMjEwNTQ0YzMwZmUxNzJkNzggbGVnYWN5LXRydW5rCis2MzI0OSA3ZTE4ZDY1OTM4MjQzYTUwNzVmNmMxN2ZhNmQ4ODlhMDk1YjQxODYyIGxlZ2FjeS10cnVuaworNjMyNTAgYzIyOWU3NWZjMjI0OWU2YWRlNDNiMDY1ZDFkZWY2NjkzZTMxMjZkNCBweTNrCis2MzI1MSAzNWE4ODk5MjU2YzJjYTdiMjkzOTNkYjI4MTkxZDgxZTIzM2RkYzczIHB5M2sKKzYzMjU1IDRlYjU5ZDhiYWM0ZDY0YzhiMzhhOTAyMTY3NjIwN2IwZDZmNjE1ODEgbGVnYWN5LXRydW5rCis2MzI1NiAwNjYzZjJmYWI5MzQ1MmM3YzM5MTRjOTc0OGFjZTJmODNiZGQ0ZGJhIGxlZ2FjeS10cnVuaworNjMyNTggNDE2MjhmMzhjNWEyODg3NGZkNjBhODY4MTQ1ZjVkMjA5YzdlM2JjNCBweTNrCis2MzI1OSA2ZjI1OWE5Y2NjODQ4MTg4NTM0MjdiMzQ2ZTBmY2MxY2RiZWEwZWQ4IHB5M2sKKzYzMjYwIGYwYTQ3MDkxYzhkODZkZDJmM2JlZGM5YThiNjFhZWMxZjgyMzVmZDIgbGVnYWN5LXRydW5rCis2MzI2MSAxZGY0NjY3MDJkZTJhOGFkMmNiM2NhNzdhMTAwYjJhNGNlNWExYzdkIHB5M2sKKzYzMjYyIGFhYjhiOGQ0YjZhNTA4NTVjZjNhOTE3ODVlNGE0N2VjMzJhZmVkOGUgbGVnYWN5LXRydW5rCis2MzI2MyBkNWVhYTdkYWVjMmY0NzMwNWMxNWI4OGY4YTYwZGNhZGFjNDU3NWRlIHB5M2sKKzYzMjY1IDA1NGZmNDEyOGY3NDRlZWRjMWRlMmZkMThiNDg1MGRhMGExYzMyM2EgbGVnYWN5LXRydW5rCis2MzI2NyAyN2Q2OWRjNzI3OTMyMWQwZDk0NGZkNGYyMzM1NzA2NDU2ZjA4YjAzIHB5M2sKKzYzMjY4IDVlODkzMjk5MWFkZmQxMjFjM2U1NTMyYWJmNTczZThhZmE0YWRkYzggbGVnYWN5LXRydW5rCis2MzI3MCAzYWJhNDQyNTYyNjU3OWVmZTA2OThlNjk2MjhhNjI4ZjRmZTYzMTNiIHB5M2sKKzYzMjcxIDYyZDllYzljOWVmZDEwMmE3NTQyNjZkMjIwZTc2ZjRkOTkyOGUzY2MgbGVnYWN5LXRydW5rCis2MzI3MyBmNTEzYmI3YjhkOTdlNTViODFmM2IxNDVhNWI4OWYzZmVkZDhlYWJkIHB5M2sKKzYzMjc0IGEwOTJkY2U2ZTlkNGE5NjEwMjg0MzNkZGUzYjg0ZDBmZTNhOWRiNmIgbGVnYWN5LXRydW5rCis2MzI3NiAzY2MwYmY3ZjA0YjZmNTUxMGRmYzUyOGM1MjhiYWQ2NjdhYWMxMWIyIHB5M2sKKzYzMjc3IDg3NmQyZjBlOTJlNGUzYTE1NDA4YTVmZjlkNjNkYTRjMDRlZGM0MjggbGVnYWN5LXRydW5rCis2MzI3OSBlNGJiNmYxNzRiMDA0NDQ3Y2ZlMzY1MDA4YmM4NGY3OWJmNzJiZDJkIGxlZ2FjeS10cnVuaworNjMyODAgNmRjOTFiMzY2ZDlmZmU3MmJhMDI0MDViNTkwZGM3NGQzZTI0ZjAyNCBweTNrCis2MzI4MiA1N2NmMDAxYWEyYTI0ZTg2Y2JmOGEzNDdkZTg4NDcyNDA5ZjJmZDJlIGxlZ2FjeS10cnVuaworNjMyODQgZmNmNWRhYzUxMzk0YjhiYjRmZjdlMTNjZTI0ODhkNzEwZjExZWNiMSBweTNrCis2MzI4NSBiYWRhMGU4NzFhYzFjZjE5ZWYzOTc1OWMwY2VlY2ExMDU0ZTIyZTAxIGxlZ2FjeS10cnVuaworNjMyODcgNWFmMzhiOTVhMTdmYWUyOTllM2E1OWRhNjVkYmIzZDZhZjMzMjZkMCBweTNrCis2MzI4OCA5NmE4NzZhZjkzMGE0Nzg3Nzc1YjNmZjM4ZDRmZjZjN2M2NTg4M2Y3IGxlZ2FjeS10cnVuaworNjMyOTAgOGExMGE0MTE5ZmMyNzU3M2FmZWFjZjk1NzI2ZTBiMjRiNjI4ODQzOCBweTNrCis2MzI5MSAxYjQ0ZWQxYTkwNDY1ZWU0YWRjNDA0YWZhMzExNWE0MTYyYjhiZWUzIGxlZ2FjeS10cnVuaworNjMyOTMgZGM0MDk4Y2E4MjNlMjg3OWJlZjM1YmU3MmZhYjIwZDQ5MGU2Y2Y4MyBweTNrCis2MzI5NCBkNGI3NDNiZGViYjE2YzVjOTFhYzVlOTZiYTNiNzllOTNjMmRhZGEzIGxlZ2FjeS10cnVuaworNjMyOTYgY2ZhOGM2MThlZDM1MzcwOWFhMjBiZTQwMzNmZDc0MTNlNDdhYmNmOCBweTNrCis2MzI5NyA4MDQzNWJjN2FhYzQ4MzhmODhiNWJmYTU0MGMyMjlhMjE4MGIwYmM5IGxlZ2FjeS10cnVuaworNjMyOTggMWU1NWIyZDFjOTNlZjM1ODdjZGMyNmM3MWVmMTNjMWQxYWViODdiMyBweTNrCis2MzMwMCA1OWJjZGZkMjc1MDFmZWE0Y2QxMzI1MWVmNWEwMjZkMWE3MTQ0MmY5IGxlZ2FjeS10cnVuaworNjMzMDIgNTI5ODczOWYwYTRkZmMxN2Y0YjFkYjQ5MWVkYTgyNTExMmRiNzhlMiBweTNrCis2MzMwMyBkNGFjZWQzM2Q1N2E1OTI0YzMyODdhOTVkYzg5N2Q5MWNhMWUzZmZjIGxlZ2FjeS10cnVuaworNjMzMDUgZTExNmNhMjZkOGYxY2E2YmJjMDBjNjlhMDhjY2EyZTk5ZDFhNDdjZSBweTNrCis2MzMwNiBlZDUzMmNhN2FlNzVjZmQ2OWFlNmFiODBlMTcwODdjZTA1NDY5MGI2IGxlZ2FjeS10cnVuaworNjMzMDggYTdjMWIzMTcwMTEzODMyYWZhNmVhMDQwMTE1MWRjZmZiMDVlNDk2NSBsZWdhY3ktdHJ1bmsKKzYzMzEwIDVhNDYwODI3MmM1MDZhNmMwNDI4ZGEyM2UxNjk4M2ZjZTZmNjUyMjcgcHkzaworNjMzMTEgZmRhNGQ0MWEwNzczODc5NTY5Nzg4MGM3ZjllY2EzMDI2NTViMGE3ZSBsZWdhY3ktdHJ1bmsKKzYzMzEzIDFkNjJkMzI2MTJkNmRjZmIyZDI2NDYyYjVlZWVjOWEzOTBmOWFkMDIgbGVnYWN5LXRydW5rCis2MzMxNSBhOGE1N2ZmNmY1NjhiYzRlOWQzNmQwZWE2YzBiYzEyMjZhNTIwNWZjIGxlZ2FjeS10cnVuaworNjMzMTcgMTM1NmE0MTg4MzBiMzRjYzE4ZmYzNzM1ZmMwZWNlNjZiNTRjODcwNiBweTNrCis2MzMxOCA2MjhkZDVlYzRkZDJlOGE3ODRhMjBhMmIzYjhhYWQwOTMxNGZkNWFlIHB5M2sKKzYzMzIwIDE1NzNjNzc2ZGY4MmVjNTU1ZThiZjc4NzhmY2NjZjkyODIxZTc0ZjcgbGVnYWN5LXRydW5rCis2MzMyMyBkNTkyOWNmODY4Y2JiYjUyMzFiMTkxNDNlOWIzOWJjMDlmNjNhNTVhIGxlZ2FjeS10cnVuaworNjMzMjQgOTE4OTYyMjcyNzJhNjkyYjUxZDUwYTBiNTEzYzJjOTBlOGM5MTc3MCBsZWdhY3ktdHJ1bmsKKzYzMzI1IDhlMDAxNzk4NmY1MGVlNjRhMTdlODdmOGNjYTBhNGQ3OGVjMjBmZDMgcHkzaworNjMzMjYgMzkxOTc5YWY2NjJiYzQ4ZGFkNjc0NDRlNGFlZjI2ZWY5ZjljZjY5MSBsZWdhY3ktdHJ1bmsKKzYzMzI3IGU2OGU2MTA4NjJiZWI1ZjlhNTcxMmNkZGIzMzJhOTM1OTVlMmNlZjAgbGVnYWN5LXRydW5rCis2MzMzMCA4N2E3OTM1MjM0MmM2MjE1ZWFjZTBmNmNjZTQzNjYxNzU1NTY2YzhmIHB5M2sKKzYzMzMxIDA4MWMxNTgwNmUyODdjMDM2NjE2YTUwODJjZjdhNGJlYjkxNTA2OTcgcHkzaworNjMzMzIgMGQ1NGM3MDU2NDY4YjMyYTY4YTU3N2YzOTIzNjRiM2RkOTZhNWFlMyBsZWdhY3ktdHJ1bmsKKzYzMzMzIDM5N2YyOWRkODJiZGM1ZGM0ZWYzZmY1YjcwNjYwNTUzNGFlYzczMTcgbGVnYWN5LXRydW5rCis2MzMzNCAzMWNjOGUxYThmZGY1ZjIzN2Y1ZTlhOTY5ODkzOTlmZjkyYzFmNmI1IHB5M2sKKzYzMzM1IDk2MGFkZTg1NjA3OGQ2NTcxMmFkNjdmNDA2NmVjNDY3ZDA4MjJlNzYgcHkzaworNjMzMzYgYWUxNmU5NGJiMDNhZThlZGZkNzAzNjQ4ZWU1YzQwNThlNmZkM2VlNCBsZWdhY3ktdHJ1bmsKKzYzMzM3IDJiOGY3NDRkYjc5YjcyMTU4N2FjMDZkY2JhNTVkNzhiMzI2NTI4NGQgcHkzaworNjMzMzggNjc4MGYwMTU5OGEyMzQ0Zjc5ZTczZjFkMjU2MTdkM2ZiNTNlMjhhOSBweTNrCis2MzMzOSA4ZDhlMDZmNGJlMWZmNGJmNmU0MjUyZGFlNDU3MGE0M2JjYTgyNmRhIGxlZ2FjeS10cnVuaworNjMzNDAgMGM3MTQyYzU2ZDdlZDllZjU3NTU4Yjk4MzJjMGE2OTRjY2ZjNWIyMCBweTNrCis2MzM0MSBhOGFlMmFhMDhlN2ZmNTMwNWY4NzVlYzkyYzQ5NDYwMTMzNzYwYTdkIHB5M2sKKzYzMzQyIDNjMDNlOWI0NjY5ODQxNzVhZjhmODY3MDhlYWRlZGMwZTc2MWM5ZDMgcHkzaworNjMzNDMgNTkzYjY0OTkwNGI4NjYzNjA0MGViYmNkYjFiNDFkMTYxYzM4M2E1YyBsZWdhY3ktdHJ1bmsKKzYzMzQ0IDM2NTY4NzM5ODUxODdjODgxMmUzYmY2OTI2MGQ3Y2YyOTRkMWJmOGIgcHkzaworNjMzNDYgMmUyYzcxMmZlMjZkNjk3ZGQ2NmM5Y2RhMDM1YTYyMGZiZDdjOGFmOCBweTNrCis2MzM0NyA1N2Y2MWRhZDdiM2I0ZjNmMzhiNGU2OGU2YWVkMWQ3MzkxMmMzMDgxIGxlZ2FjeS10cnVuaworNjMzNDggMzQwN2JmOWRhYzM4N2E0YzRhYjdjZGYwYmFmZGFhNmE4ODFiY2U5YiBsZWdhY3ktdHJ1bmsKKzYzMzQ5IDU4YTBkNTUyNGY5YTNiYTk1MDYxNTNkMWJmMDJhZjQ4ZGFkODc4ZGQgcHkzaworNjMzNTAgOThmNjg3MjZkYTAyZDUwYTZiNTljYzQ4YjAxMjFiZDU3MDdmODAzMSBweTNrCis2MzM1MiBiNjMwNzI5NTcxZTY2OGY0ZTRlMDcyNjg2YTdhMmZmYThjMGZjOWZkIHB5M2sKKzYzMzU0IDlhYzExMDQzYjM5NTM2M2UxOGVmMDNkZmFjOTZjNzdiNzYwN2VhZDkgbGVnYWN5LXRydW5rCis2MzM1NSA5NDdjYWVlMjM5OWVmMWY4OTFkMTQyMzkwNTQxZWI3MmZkOGRlOWUxIHB5M2sKKzYzMzU3IDNkZjA5MGVkNDgxMDNkNjIyOTIwOTQ1ZmU3ZjAzZTc0NmM5YzJmNGIgbGVnYWN5LXRydW5rCis2MzM1OCBkNmZlNTAyMzM2MjYwZjYwMTM0MTgyZGUyYmM5ZDlkZTYxNzI0MDM1IGxlZ2FjeS10cnVuaworNjMzNTkgNGVhOTkzMDllNTI1NGM4YjU2YTIzMmQ4ZjY1MDQ4MGMxNWQxOGJlNSBweTNrCis2MzM2MCA0ZjFhMDc5ZGY0MjdjYmQ5ZTgzYWE4ZmVhYTkwMWI5YjFlM2FiYWE2IHB5M2sKKzYzMzYxIGIwYjMyNzMyZjY2ZWI3YmUyNjBiN2NkMTQ0YmUzZjk5NDIzNTQ0MTQgbGVnYWN5LXRydW5rCis2MzM2NCBlZDEzMDQwYWMyZTZlNWY3ODQ3OThmYWZmMTlkZGJkMWRkNTNiOWFlIGxlZ2FjeS10cnVuaworNjMzNjUgZmYyZGMwMmJhNDFhYTNkMTExMzM4YTM3NGZhZWVmNzMwY2ZkNDM1YyBsZWdhY3ktdHJ1bmsKKzYzMzY2IDQ1NjUwYzI1YTAyODY1MjY2ZjM2NzM2ZjI0YzU0NGMzM2E0OTdkZWYgbGVnYWN5LXRydW5rCis2MzM2NyA1NGZkMDQ1ODU1MGM2YTc1MDM2MjE1ZGZkYTU1MGQ0OTI4MzZlYjIzIGxlZ2FjeS10cnVuaworNjMzNjggYWE4ZTEzMjc5YjViMWFjMWNjNTVlNWZmNzQ3ZmQ0ZjA2MjFjOTk4NiBsZWdhY3ktdHJ1bmsKKzYzMzY5IGEyY2VmOWU4OWI3YzJlNjk4M2UyM2Q1ZDA5ZmE1MjVlNzAwMjQ0OWIgbGVnYWN5LXRydW5rCis2MzM3MCA1ZDFhZmY0NmNjMGRmMWUzODNiM2JhZjFmMGEyMmExNWRiNTYyZTM2IGxlZ2FjeS10cnVuaworNjMzNzEgYjI0MDNkNDcwYjY5ZGQ3YzhiZmJmMDY4NTdlN2Q5MTZhYjYxOGQyZSBweTNrCis2MzM3MyBkZDBiY2MyMTZmZTM1OTIwYWY0NDZlMjg1NzM1NGM3OWMzZTNmNDFkIGxlZ2FjeS10cnVuaworNjMzNzQgM2I4MjdmMzY0N2NiMTg0NjhhYjY0MDY4YTU5ODJhOWY2ZTM3YmYzYSBsZWdhY3ktdHJ1bmsKKzYzMzc1IDg5M2E0ZGMxN2E5MWM1ZWJhMTM3MzUzNzI1YmU2NjZjNWVhNWU3NWIgcHkzaworNjMzNzYgODhiYjlkZjM4NWRjMGQ3NTA2MDBlZjM2Zjg0Yzg1YjdhMzNlNDRhMCBsZWdhY3ktdHJ1bmsKKzYzMzc3IDBmMTU3MzVjMTgzMWY1NGVhMGZhZDVjMGExZmRiMjdkYzc3ODY4YjIgcHkzaworNjMzNzggNjM3NDFjNzUyMWFhMGMyMjMzY2ZhOGFjNDFhZTU4NDU4OTRjZDZiZiBweTNrCis2MzM3OSAwZTY3ZTIxYTQxMTMyMGM3NzIyZmJhZjNjNTRkN2NkNWI4MTMyYWU0IHB5M2sKKzYzMzgwIDUzMDQwNDZiYjM1OGQ1NjAxNWNiNjk3NTA1ZGYzMmE3MzlmYjk2MTYgbGVnYWN5LXRydW5rCis2MzM4MSBhYmUzNWE4N2IwMWRhMzAzMTFiODk3MzVjZTk2ZWRkOTA3NDE0YmQ3IGxlZ2FjeS10cnVuaworNjMzODIgNjBiODU5MjRlYzZkMDI4ZTZhMmZiODdjNzZiNWI0NDBjZTE5N2NmNCBsZWdhY3ktdHJ1bmsKKzYzMzg0IGNlN2FhODhiNjY5ZWExMGRjMWNjNzk1YWMwYjRlMGYyMjA0ZTI2N2MgbGVnYWN5LXRydW5rCis2MzM4NSBhMDJiYzJhODRkMTljY2QwYjgwMmI4NDhkMjg0NzZkNjIwMDBmMzQzIHB5M2sKKzYzMzg2IDg4MGZlODg3N2RmOTc4YjllY2UwOTI3ZDIyMjc2YWU0YjkxN2U2ZTQgcHkzaworNjMzOTIgYWI4MGJiZmE2ZjBjMDg5MjU0YzVlNTZhOWRmYjMxZDYxYWRlZGZkYSBsZWdhY3ktdHJ1bmsKKzYzMzkzIGJlNTgxYWNlYTRlNzM5OTZiMzc0ODc3Nzk0ZTFmMTQ3ZDk0OWQ1OTQgcHkzaworNjMzOTUgNmFmNjQ1MTIyOTRhZDA5ZDcyN2IxZjBkYjEzMDRkMGQ1NTY3MmQyNiBsZWdhY3ktdHJ1bmsKKzYzMzk2IDQyYjc4ZTBlNjg0ODA3MzQ5NjIxNTA0MjQ5YzY1ZDE4YjhhMzAyYzcgbGVnYWN5LXRydW5rCis2MzM5NyA4NGJiNzJkOTBiYzcyNTI5NjM4MTUzYTdmZDVhODVkNmQzZmJlZGY2IGxlZ2FjeS10cnVuaworNjM0MDEgMDY4MDc5N2FlNDU0NjI5ZTA1N2ZmMjIzZTI2ZGIzMTIzMDExOGVhMyB0bGVlLWFzdC1vcHRpbWl6ZQorNjM0MDIgMjE0NGM5ZjM2NWM4ZmFhZmYzMTNmZTVkMmE1MTFmOWFiNDJlZGExZCBsZWdhY3ktdHJ1bmsKKzYzNDAzIDFjYTk2NzU2Njg4MGU4MDY0MjAzYmIyM2E3ODBmODdiNzI4NWM2ZDIgbGVnYWN5LXRydW5rCis2MzQwNCA2ZmJkMDZkYjcwNzc2MDE2ZDAzNWUyYzU3NTgzYmIzYmNiMDUyN2E2IHJlbGVhc2UyNS1tYWludAorNjM0MDUgNmI3OTc3MzE0YzAyZmQ2MWI3ZmVlMmFjZDc0Y2ZiZTU2MjhkYjQ3YiBsZWdhY3ktdHJ1bmsKKzYzNDA4IDNiYmY0NGQzMjM2MTIyYWNiOTA3ODAxN2E0OTM2YmZmOGUzMWU3YWIgbGVnYWN5LXRydW5rCis2MzQwOSBmMmMwM2Q3MTU5N2Q0OGIyYzRiOTYzYjY0ZDBjMjY3ZmFiYTkwOGVlIGxlZ2FjeS10cnVuaworNjM0MTAgNjk0ZDM2ZmI2ZjRkZmEyNjY4MGM0MTYyM2NlNzFkODAwMDY1ZDA2ZSBsZWdhY3ktdHJ1bmsKKzYzNDExIGE5N2ViMTc3ZjNhNzc5Y2Q5YTRhOTBiYmY2Y2Y1YTUyYjdiMTJjMGEgbGVnYWN5LXRydW5rCis2MzQxMiBhYzkzZWRjMzk2YTY0Zjk0YjAyN2Y2NGQzNDAzOTJhNmI4ZGEyNWRmIGxlZ2FjeS10cnVuaworNjM0MTMgYjY2MDUwZGI4NDFmMDViYWIyODIzZjE0NWY1ZTUxYzQyZjQ1ZDE3NiBsZWdhY3ktdHJ1bmsKKzYzNDE0IDY4MzZlOGYxZGVkYmNkNDZmMDNkOWY3OTk5ZDIxOGZmMjU5MjFkMzMgbGVnYWN5LXRydW5rCis2MzQxNSA3NDYwNDE1ZGE4ZmVjNzY5MTAyODZiN2U5MzNkYmM4ZDlhYTUzM2ZjIGxlZ2FjeS10cnVuaworNjM0MTYgZjNkZGE5ZDM2NjhmZDMzMjNiNzk5OGVkZTE3YzUyMWU2ZmRjYzY2MiBweTNrCis2MzQxNyBkNjMzNDRiYTE4Nzg4OGI2NzkyYmE4MzYyYTBkZDA5ZTA2ZWQyZjlhIHB5M2sKKzYzNDE4IGVmNGNjYTJkNjE3MTNkMzNjMmE1MDI1MjM1ZDQwMzBlMzY5NWQwMmMgcHkzaworNjM0MTkgMjQ5NjE4ODhhZDk1NmFjZTgwNzI3NTYyZTc1NTdjNmEyNzg5Zjc4MSBweTNrCis2MzQyMCA4YTc0NjEyZjNkMmJhZTFkYzIyYmY1NjA0ZmM4Y2Q0MTJkZTA1Njc0IHB5M2sKKzYzNDIxIGQ2ZTFlYTIxYzk0OGVjMjg4NTFmODdlZTExZjUyMjlhOWUzYWVmYjcgbGVnYWN5LXRydW5rCis2MzQyMiA5MjQwYTU5YTI1ZTlkZGM0MjJjMzU4NDgzMDdhMTNiMDU3YmFhNzJmIGxlZ2FjeS10cnVuaworNjM0MjMgY2NlMWIyNDNjMTFkMTM2M2Q4MTcxMjA0ZmVmOGVmM2RkZDE3YjdiNSBweTNrCis2MzQyNSA3MTE4ZmFkZTU3NWI5ZWMxZWQyOTgxMGRjM2JjM2Y4NjJhZjY0MmRmIGxlZ2FjeS10cnVuaworNjM0MjYgNjRmMzg3MzQzOGIxY2IyNjQ1ZDE4N2JmNGRkZGE0ZWRmY2Y1ODFhYyBsZWdhY3ktdHJ1bmsKKzYzNDI3IDVjZTkwNGM5MGU2MThjNzViMTQyZTNkMGI0NDFmNTVhNmJlNGI0NWUgcHkzaworNjM0MjggZDk1M2VhNThjYzhiY2EzNWU0MmE5N2ZkZmFkZmJiNmUwODcxZGY5MiBsZWdhY3ktdHJ1bmsKKzYzNDI5IDdhMWRjM2U3Yzc5YjUyNDM5OWViYTNmZDgwOWQzMDEwYTcwYjA1MTUgcHkzaworNjM0MzAgODAxYTA5ZGQwZWI4YWJkZjliMmZlYjc1OTVjZGE0NjBhZWMxNzA1YSBsZWdhY3ktdHJ1bmsKKzYzNDMxIGFjNTlmZGQ4MGU0NTllNjgyMDBkMjZkYTBhYTFjNDZmZDcyOWFjYjkgcHkzaworNjM0MzIgMGFhMWJkZTlkMTk0YTk3ZDYyNTdmNDQxZWRiNDYzMTVhYTM4MGQ3NSBsZWdhY3ktdHJ1bmsKKzYzNDM0IDMzYzdmZTg1ZTM1ZGZmNjAwMmQ5ZjlmZDJiOWMyZWUwN2U5NjUxNWIgbGVnYWN5LXRydW5rCis2MzQzNSAxMmMyMjlkMDIxY2MyYzYwYTQ2NjljMjI0ZWFjNzgxMjM0MmNmZDU0IHB5M2sKKzYzNDM4IGY4NjJkZmFmOWE0YmUzYTMwNWZiNWViZDlkNzRlNDA3MTgwMjk3MTEgbGVnYWN5LXRydW5rCis2MzQzOSA3Mjk2YTJmYjQ3ODZkZGE5MDdiNDZlY2Q4NjE5YzE4Y2RmNzRmNDdlIHB5M2sKKzYzNDQwIDNkNWNkZGM2ZTVlN2ZjNTAwMzY4YjUyY2E2YzZmMDQ4ZDIzMTkyZGUgbGVnYWN5LXRydW5rCis2MzQ0MSA1ODVmN2NhMzhhODVhZjgwOTcxMzVjOTM3MmY1MDcyNDdhOWNkYzcxIHB5M2sKKzYzNDQzIGJiZDMwYzQ5MmE5OThjM2VkNmUxNzA4MDc0MmViMmIyNmQ1ZmJjYTAgcHkzaworNjM0NDQgY2RiNzVhZjIzODVhMzFmZGE2OTNkMTYzOWVmYjg2MTY0NTllY2E0ZSBweTNrCis2MzQ0NSA5ZjM1NDAwMWVhMjUyNzExNWRhNWY5MmNiYzU2NTQ4ZGJkNDU2OTczIGxlZ2FjeS10cnVuaworNjM0NDYgZWZlMjJlZWYyNmJlM2UyNzVlN2IwOGU1MWVlYzZmNDRlODBlZjA0OCBsZWdhY3ktdHJ1bmsKKzYzNDQ3IDIwYjFjNWM0ZTMwNDQ1ZjJiNmE4N2M2OGNmMTJhZjJjOWVmNmI3YjggbGVnYWN5LXRydW5rCis2MzQ0OCBhOTM4NTI5ZjRkNmRkM2EyMTg5MTMyNzI4MDc5MGJkNzIwYzI4MjM0IHB5M2sKKzYzNDQ5IDJlOWY1NzJiNzMyMjdhODU5YTQ5Y2QyMGQ0MTVmY2QxZWFjNjJiOTQgbGVnYWN5LXRydW5rCis2MzQ1MCBiODZiMjllMGNmMzI5ZDEwYzE4NjMyZmRhNDg5Nzc1YWQ2ZTIxYTVmIGxlZ2FjeS10cnVuaworNjM0NTIgMzBmNjMyYjM2ODY4ZTlkNzBlYWQyMzEzZDU2MTViNDE5MjVhOTQwOSBsZWdhY3ktdHJ1bmsKKzYzNDUzIDM3NDk5Mjg3Zjc1OGE3MmRiMmQyYTliMzkwM2YwZmZhYjE4NjFjYmIgcHkzaworNjM0NTQgNjFhNjc1YmE3OTA2MDI1OWM3YTk5MjFkMDFkOTQ5MzFiYThmYmFmNyBsZWdhY3ktdHJ1bmsKKzYzNDU1IDM2YzcxZDNhNmVmOGMxZTg4ZmRhMjEwZGVjMzg0ZGVhYmNmNTY0YTggcHkzaworNjM0NTcgMzA3MWEzMzdkOTIxZjNlYmFlZTk0MjI0Njc3Yzc3ZjY0Y2U4MGJkNiBsZWdhY3ktdHJ1bmsKKzYzNDU4IDZhNmNiOWQ0YmY5NDUwMmQzOTg4ZjNmZmFmZDgwNWFhMTk3ODdlYmIgbGVnYWN5LXRydW5rCis2MzQ1OSA3OTZjYjkzYzk3MDdmN2JmY2Y4OTIzYjE2N2I5OGVkNWIzNGJjZDVlIGxlZ2FjeS10cnVuaworNjM0NjAgY2Q5MWRhZjAzMjdjNmVkMWUyNTJjZDYyMDkxMjFjMzVlZGJmYmI0NCBsZWdhY3ktdHJ1bmsKKzYzNDYyIDEyY2ExZTgyMDI4MmJmNDljNWQ5N2VlZmQ5NzcyN2FhMWMxOTA1MjMgcHkzaworNjM0NjMgNGVjY2U4ZmVkNmUxZGI2NDNmYWNjZGFlNjkwODNiNjc0MmZkYzA3MSBsZWdhY3ktdHJ1bmsKKzYzNDY0IDk1Y2IwMDkzNjZkY2I5MzA5NWU1ODUyYjI5MjNlOGI1OWI0MGI5YjkgbGVnYWN5LXRydW5rCis2MzQ2NSA4YjYyOGNhMjE4ZjNkNmMzNjI5YmVlY2E1OTA3N2MxNDNhZGQ5NTEzIGxlZ2FjeS10cnVuaworNjM0NjYgYTFmNzA0MzVkOGUzNzNmOTYwYjk4MjNlZTJmYzcyYjYzZmU5NGFlNiBweTNrCis2MzQ2NyBjYThkOGM4ZjI5NjAzMjUzNmVlYzA4OThmZGZmMTUwZThmN2Y0YmYyIGxlZ2FjeS10cnVuaworNjM0NjggODUzMjZmYjc1NWUyOTkwYTFkYzBiMGE0OGQzMjFhZDYzZmQxZGY0NCBsZWdhY3ktdHJ1bmsKKzYzNDY5IGU4MDg1MDA1NWI5MzE3MmMxNDBiYTIxMmFjY2EzYTFlN2NiMGM5ZWYgbGVnYWN5LXRydW5rCis2MzQ3MCBiODNkN2QwMjllMGUxNzVlYjQ5NTE2MjA0NDg3MjQ5MTcxMjJkZWYxIGxlZ2FjeS10cnVuaworNjM0NzkgNjNkZGQzZWU0YTJkMWQ3ODI4YWFjOTAwNTBjNDcwNDlmYzc0MjRmMCBweTNrCis2MzQ4MCA4NWJhMDg3YzBjYzc0YjJjZjc1ZTBkYTAwMTA3OGZkODQwZDEwMjgxIGxlZ2FjeS10cnVuaworNjM0ODEgNDU0ZDM4YzFmNDdlOTFhODAyNGU2YWZhY2RjNDYzNmM1MWI1NTNmNSBsZWdhY3ktdHJ1bmsKKzYzNDgyIGVhYWExOWU5NDk5ODNjNzE2YmIwNTZhMDdjNzY5YWI3ZTgzNzI4MzkgcHkzaworNjM0ODMgZDE3ZmFjODk2YTBiYzZiZmZjZjA5ZWIxNzRjYTkwZjFjZmJhNTAxYSBsZWdhY3ktdHJ1bmsKKzYzNDg0IDc3NTU3MjE2YmEzMjFhMTYxNjE4ZDdiOTczMzg5ZmVhYTk3NWQ3MDEgbGVnYWN5LXRydW5rCis2MzQ4NSBkNWRkOGE4NTI5NzA1NmFlY2Q3YWZjMTFlMTFjNWUzYzk4ZmY1ZjhlIGxlZ2FjeS10cnVuaworNjM0ODYgNWNlYzQzNmQ2NGEyODEyYWY3NTJhMGI5ZjI1ZjU2MTU5MDBkODljNyBsZWdhY3ktdHJ1bmsKKzYzNDg3IGI1MzYwNGZhZDU0YjBlNjYyOTAxYTdiYTViNDExYTc3YTQwZjFhNzEgbGVnYWN5LXRydW5rCis2MzQ4OCBhZTE5MTIwMjMyYjRhOGUzMzkwNTY2NGUxNTMyZTNlOGI1OGE4M2Q3IGxlZ2FjeS10cnVuaworNjM0ODkgN2ZjOTZkN2VjZjJlZDcxY2MxZjE3NmQyYjhmZmNiZTFiODUwZjc0ZCBsZWdhY3ktdHJ1bmsKKzYzNDkwIDUxZTMyNGI1NzNiMDk5NDZiN2YxMmE3NWJmZDVkNWI3MjAwODRlNzUgbGVnYWN5LXRydW5rCis2MzQ5MSBhOGYxNTgzYjc4ZjZmZWU3MTc2ZjdjZTJkMDhmMzBjYzBjYjA4NTkwIGxlZ2FjeS10cnVuaworNjM0OTIgNGFkNGJlZjkxZThlN2Y0NDg5ZTk3MWUxNjgyOTA2MGMyNGE5NGJhYyBweTNrCis2MzQ5MyBmNDE5YjJlOTZhOTg3YzFkMzZjNzhiODc4OWEyNmMzOGNlYWJkMDUxIGxlZ2FjeS10cnVuaworNjM0OTQgMTczZTVlOGIzZTU5ZWQyYTRhMGJhYTEwYjk5MDQxNWIwOTYyNjZjZSBsZWdhY3ktdHJ1bmsKKzYzNDk1IDA5MTI1MTFiOTg5NzYyYmQ0OTlkZGUwMjUwNzM5YzA3MTA4Y2ExYWYgbGVnYWN5LXRydW5rCis2MzQ5NiAzMmJkMTg3MDlkZmRmMDA0ZWFjMzlhMGVhMGZmMGI3NjUzOGMzOTM0IGxlZ2FjeS10cnVuaworNjM0OTcgMTRlYjgwNGIzZmM3ZGYxYzMyMzZmY2NmYzE5NTNkYjAwZTA0NDUzMiBsZWdhY3ktdHJ1bmsKKzYzNDk4IDU5YWIyY2YwMDJmYThiNWFkNjg3ODJjYTFjNTg3ZTljMzJiNjhjYTIgbGVnYWN5LXRydW5rCis2MzQ5OSA1MmE2NjM3MzQzN2QzMjM3YzRmOWIyZjJlYWRjYzZiMmI4MjZmNGI0IGxlZ2FjeS10cnVuaworNjM1MDAgMTJjNTZkMmViNGQ5Nzk5NTk0MDM0MDU3YTEwMTYxNWI2Y2U3ZmJkYiBsZWdhY3ktdHJ1bmsKKzYzNTAxIGRlMTFiZjg0NDkxZDZjZTQxOTUyMWNkYTZhNDIzZjgwYmIyMjBhY2QgbGVnYWN5LXRydW5rCis2MzUwNyA0NmJkOGNmYTc1NGM1ODlhMzY1ZmY4MTNmZDcxMmVhMTgyMjNlM2M0IGxlZ2FjeS10cnVuaworNjM1MDggMzI5MWNlNDkyOGJjNDQ2MjZjNmYyMGNlZTNhNjkyNTE4ZDUzMTI3YyBsZWdhY3ktdHJ1bmsKKzYzNTExIDIyZDJmYjc2MWFjMWQzNDkyOTk3YzMzZDIxZWIxMzM1ZDU4ZDdjNzMgbGVnYWN5LXRydW5rCis2MzUxMiA5YzkzMGEzMmNlYmIyNTc4ZWQzMTQ4YzI1NWQ2YjdlYmQwYmY5MzEzIHB5M2sKKzYzNTEzIDUzOGU0MTBjMDA4ODMxN2YwZWMyNWZmMzNmNWVjNDc0ZTAxZTBlNmUgbGVnYWN5LXRydW5rCis2MzUxNCA1NWE1MGQzOTFiYTlhODM5MjdhZWYwNjZhMTNhODI0Y2ViYTBmYmU3IHB5M2sKKzYzNTE2IDJkN2ZhODRjODc4ZGI1OTJiYTU5NWZmYWM4N2RmZDcwOGMyY2VlNTYgbGVnYWN5LXRydW5rCis2MzUxNyBkMjkwMDUwZWQ4YjIyYTJjNjE3MjA5MmUyYWVjMWU4NDNjMjkwMDFkIHRsZWUtYXN0LW9wdGltaXplCis2MzUxOCA3YWE5YWQ2NTgwMTRhNDNiYzQ2MDU1NDg2Nzg4MWU2YzA0Zjk5ZjMzIHB5M2sKKzYzNTE5IDlkYmNhMjc1NGI0MDZjM2MyMmU2NjIyZmFhMTAyOWY3ZjllOTBiZDUgb2trb3RvLXNpemVvZgorNjM1MjAgMWQyMjcyM2E1Nzg1MjQ2ZDZmMjc0YmJlZmI5MDg3NjY1YjZkNTVhNSBva2tvdG8tc2l6ZW9mCis2MzUyMSAzNjA3Nzc2NWUxY2Y0NThhMGM3MDk4NTQ2NjJlMDE0ODM4NGNkNGFjIG9ra290by1zaXplb2YKKzYzNTIyIDc3OThiYzg2YWJhMzJhMTVlNzY4MmU4OTIwN2ZlMzY2MjUwYjIwMTUgbGVnYWN5LXRydW5rCis2MzUyMyA4YzgxZmFhMjEwYzFkZGVmMjIwMGRmMTRkM2Y2ZThkMjgxMzk2N2M1IGxlZ2FjeS10cnVuaworNjM1MjggNWJlMmQ4MmFjNWFjZDU5NTc4NzdkODczN2JlNWNjZDYyZGIwMzI1NCBsZWdhY3ktdHJ1bmsKKzYzNTI5IGNkZDAwMDA2MzFjYzc4NWFlMzgwODExZmM0N2JhYzg4ZTBhNjMyNGYgcHkzaworNjM1MzAgMmMzNGYxOWUzOTIyYTZhZDE0ODk3YmZiNzMyOGM0YmExZjI5MjY0NSBsZWdhY3ktdHJ1bmsKKzYzNTMxIGM2ZGJjNDMyM2EyMmQyNWU1MDUyOThkZTk1MmIyNWUyNGJhNmNiNTcgbGVnYWN5LXRydW5rCis2MzUzNCA4MWMzYTZmOWQ4NWYwYTNkYzJhNjNjOTc2YWU4NGY4MDlkNmQ0YjY5IGxlZ2FjeS10cnVuaworNjM1MzcgNGY2ZWE1YzU5YWIzMWJhNWYwNWI5NzlkYjk4Y2U0MDZhNTYwODkzMSBsZWdhY3ktdHJ1bmsKKzYzNTM5IDM4YTk3ZGNjMmM5YzVhOTNlZTkwZGI0MDA2MGNmYWM4YzAzYTJkOTcgb2trb3RvLXNpemVvZgorNjM1NDAgNzExNGUxZWZlM2Y5Njc0ZTkyY2U5ZDM2NGI3NGM0ZjNmYTk0MjFmZiBsZWdhY3ktdHJ1bmsKKzYzNTQxIGM1MzRiNjlhYjg3MWQ1YTEyODYxYjRiMmFmYmQ0YTBlNmRjOTRlODEgbGVnYWN5LXRydW5rCis2MzU0MiAyZmZmZGVkYjEwZjhjNDgyNTU1YzU0MTNlMmM5OWY2ZjJlNzU3OWNjIGxlZ2FjeS10cnVuaworNjM1NDMgZTE4NTIzZjg0MmQ3ZDEzOTUwZGQ5OThhMjE1YmU1ZmE0ZjA5ZTMwYiBsZWdhY3ktdHJ1bmsKKzYzNTQ0IDVhMjk1NTI0MTJmYTJiYzZlZThhMjAyYjZiODViMjc3MDU4MTY3MjAgbGVnYWN5LXRydW5rCis2MzU0NSBiYjA0MzMyYzdmMDE3ODJiZmFmMjliMzJkZGIxNjE1NmI3YzlmMDk5IGxlZ2FjeS10cnVuaworNjM1NDYgNzFkZWVlNmI5NDFlOTNiODk1YzFlNGNkYmE2NTc2ZDkwODlmZTEyYiBsZWdhY3ktdHJ1bmsKKzYzNTQ3IDlmYmM0MWFiZGQ0YmVlMGI4ZjRlNDQxNjI0M2M5NWY0ZjQ2NTNiNDIgbGVnYWN5LXRydW5rCis2MzU0OCAzNDJmYmRjY2I3ZDk2OWZmZGY3MmVhOWJjMGJlNzJjMWQ1Yjk5NGMxIHB5M2sKKzYzNTQ5IDk5MTc2YjlkOTBiMzdmZjZmZDcxYmQxNGUwMzVmNWZhNzU5NTNhNTIgbGVnYWN5LXRydW5rCis2MzU1MCBlMmJlZjQ0ZjQ1N2RkYzIzNzQ0MDY3MDJmYTNiNWYzOGZmNjQ2Nzg1IHB5M2sKKzYzNTUzIDU5NDgyOGVhMDNhMTA1YWQ0M2VjZjZhMjZhMzAxN2EyMzY0MTdiODggbGVnYWN5LXRydW5rCis2MzU2MSBhMzBmZWRlODc2NDNkNWJiMDE2ZGFlYzQ2Y2EyNzdmYjg1MmYwNmYxIHJlbGVhc2UyNS1tYWludAorNjM1NjIgNWVjOTUyOGM5M2RlYWE1NmRmOTgyNTc5MmEzZDdiMzcwMWM0ODQwYiBsZWdhY3ktdHJ1bmsKKzYzNTYzIDVkMTkyOTllZTM0NjNlZDdkMzc5ODQ0ZWY0MjhlOWNiNzkxNzlkNWIgbGVnYWN5LXRydW5rCis2MzU2NCBjNWE4NWU0ZjllODY2NmIzZGFiZmE2YzdmMzYwMjc4OTlkYTQzM2IwIGxlZ2FjeS10cnVuaworNjM1NjUgYTIxOGQ1Y2IyNThiMjA4MzEzMjgyM2EwOWRkZjkyZDk1NThiMGIxZCBweTNrCis2MzU2NyA0NmM2Yjk3ODlkZGVjYzMwNjgyMGYyNmYwYTY5MWU5NmM1NTVhMmI1IGxlZ2FjeS10cnVuaworNjM1NjggMDM0ZDZjOWUyNjcxZjllNWQzM2IzOGM1MGI4MzQwZDgwNmQzMGRjNCBsZWdhY3ktdHJ1bmsKKzYzNTY5IDI3YzBkNzM1MWVhOGRmYWM0YWQzMjY3YjNiZDZkMTFjNWZlYmU0N2EgbGVnYWN5LXRydW5rCis2MzU3MCA3MjdmZGI5MDYxOTEzZTI2MmI4MzdjMjQ3MWYyY2E1NjM0NmE5YzMzIGxlZ2FjeS10cnVuaworNjM1NzIgNTU2ODAwNWQyMjE3MzIyNWI3MDY0MWVlZWQzZjJjY2ZjMTJmMGJmNyBweTNrCis2MzU3NSAwZDBkOTY0MWY5YmQ5NzdhNTU3OTUwNWE3MDVkYzg1ZmJjZTQ5MzNkIGxlZ2FjeS10cnVuaworNjM1NzYgNDVmZjczNzY3MWY2MzM5ZGE5YzU1YTRkZmU0N2Y0OWJjYWY0NDI5MCBsZWdhY3ktdHJ1bmsKKzYzNTc3IDZhYmM2M2M2MTUyNjVmOTFlMmE5MDZjYTE2MmZiNjRiYWZhNzA1YjYgb2trb3RvLXNpemVvZgorNjM1NzggOTA5MTJiMTBhZTcyZjM4Y2FjM2QxMjlkYWIwZmNmNTJiNzVlYWFiYyBva2tvdG8tc2l6ZW9mCis2MzU3OSBmZDFhMmY0OTk2ZWYxNjkwYzUzZmIzODdmMGIyNWFjMjY5MDM2YzJkIG9ra290by1zaXplb2YKKzYzNTg2IDI4Y2Y5OWMxOTNjN2Q1NmYyMDEzOGQ0NDY1NWE3ZGVkNWI3ZjI0YTEgbGVnYWN5LXRydW5rCis2MzU4NyAwZjVmMzJiY2RjOGZjZmRkMTUxMTUwZWRmYjJkMmM1ZjE1NzExNTYxIGxlZ2FjeS10cnVuaworNjM1ODggMDVhYTIxZDZkYmViZTYyOTlmYmY5NjU0ZjdmMTk5MGVjNzNkNjdiNCBsZWdhY3ktdHJ1bmsKKzYzNTg5IGJhMWZhNTExYjcyZDFmYzRiMTc1NTUwMmU5NTRmN2Y0ZjQxZjVlOTUgbGVnYWN5LXRydW5rCis2MzU5MyAyMThhMTA4NjcyOGFiNjg3NzAwN2M0MTRhNDY5NGUzMmMyYWVmZGNmIG9ra290by1zaXplb2YKKzYzNTk0IDg3YjE0NDE4ODlhNTMzMmYxNjk2OGNmZGE5M2ExNjEzM2I2YzQ2YmUgb2trb3RvLXNpemVvZgorNjM1OTUgZjViMDI5MDIwZTAyM2ZmZGZjZTVhMTZiNmQxYzM1Mjg1YTcxNmM1ZiBva2tvdG8tc2l6ZW9mCis2MzU5NiA2ODBiYjlkZDU4MDc0NGQxYjdmNDNlYzJkMWU4OTViNDkxOGEwOGIwIG9ra290by1zaXplb2YKKzYzNTk3IDBmZWNkMzg2NzkzZTYyMGE4ZDExYjUxOTlkMDY4Y2JmNTAwNTcxZDUgbGVnYWN5LXRydW5rCis2MzU5OCAzMzllMTcxODMxNWNkODYzNGQ3OGI1YmM1ZmMxOWFkNjU3NzQyNzA0IGxlZ2FjeS10cnVuaworNjM1OTkgMzc2N2E1YWE5NTYwMjViOGY5ZWIwYzBlYjAzNzIxOGQ4MmQxMzYzOSBsZWdhY3ktdHJ1bmsKKzYzNjAwIGNiMWM4OWE0NGVkYjY1MzQ0MmJjZTkzYTE5ZDM2NjU5ODIxMDA0M2MgbGVnYWN5LXRydW5rCis2MzYwMSA3MWZkYmNkN2JhYTlhNmE3NzUzMmE0ZWNjZmJmNjg5MzVjMTAwYWQyIGxlZ2FjeS10cnVuaworNjM2MDIgMjYwYjYyYWFmY2I0OTdiZDk4MGRjM2M5NTJjYmQ5ZDI2MjNjMTNhMiBweTNrCis2MzYwMyA5YWNiMzE0YjkwNzI3OGYwNDYxYmEwZTBjYWU0NWM1MzQzODY4MjZlIGxlZ2FjeS10cnVuaworNjM2MDQgNzNiMjQxMjdmN2I2M2RmOTc3MjgzOTQ5MmRhNTgyYTIyNTE0NzMzZiBsZWdhY3ktdHJ1bmsKKzYzNjA1IGNhZjNhY2RmZTVlNDM4ZDYwYzY4Mjc1MjVkYTU5MTYzYzMyZDlmMjQgbGVnYWN5LXRydW5rCis2MzYwNiBhZmUxNDhhNGFkMjdkZmM1MTZiOTVhZjZhY2Q4ODM2Y2M1OTZhMThkIGxlZ2FjeS10cnVuaworNjM2MDcgZTUzNGVlMGE0Y2QwNDQxYTcwMWNjMzkxNTYzNWI2MDkzMTA2ZDQ1NSBsZWdhY3ktdHJ1bmsKKzYzNjA5IDgwNjU5YjlhNGNkN2QzYjYzMWQxNjZmMjg0NmFmYTEzMjE3Nzc3MTMgcHkzaworNjM2MTAgMTU0NmMxZmI4ZjgyODM0NjZjOGI5NzVjYzAyNWY4MTEyNGExYTMyZiBweTNrCis2MzYxMSBkMTI1OWZmYjEwM2MyOGNlNTViOTIxM2U3ZmQyMTBiODhjNmY1ZWNhIGxlZ2FjeS10cnVuaworNjM2MTQgZDU1OTFjMTZiOTk3YjFhMDNmZTEyZTIyOTA2OTBlYmMxZjM3MjI3YSBsZWdhY3ktdHJ1bmsKKzYzNjE1IDYwZGY4ZjY1ODU3NWFjYmQxZjAyNDg4ZDg1NDQxZmVkZDlkMzc1YmIgb2trb3RvLXNpemVvZgorNjM2MTYgODk1NzA4YjA1NmI3YmQ0MjEwZGY2ZmViMTU0MTJjNWFiNDVhYTI5ZSBva2tvdG8tc2l6ZW9mCis2MzYxNyA5NjcwMjYyNTc5NjExZjFmOWE2NmJkM2QzZDY3NjQwYjI5NzAyNjI4IGxlZ2FjeS10cnVuaworNjM2MTggMDA5MTE5ZWI0ZDJkODAwMTllNjhjZDUyNThkNDFiNzgwNGE0ZDYxZSBsZWdhY3ktdHJ1bmsKKzYzNjE5IGQ2ODhmM2Y3YzhkZmQyZTBlM2MxZTViNjQzMDE5Y2YwZWJmOWE3MjcgdGxlZS1hc3Qtb3B0aW1pemUKKzYzNjIwIDc3MGU0ZTEzMjc3NWFhMGM1ZGFhNTc1MTM3OWRjN2IyOWFiMWFmN2YgcHkzaworNjM2MjEgNDk5MDZkNDMyYjQ3YmFiMDNlNDEyZGU4OGNmNjVhM2RlYmJiNWQ3NSBweTNrCis2MzYyMiA1NjBjOTczOThiOGU1MzRlZjZkMmQxMjBlYjVjODFkNzYwZjgwM2IxIHB5M2sKKzYzNjI0IDM4YjFhMDE3ZGJmNjAwNzFjYWZkZmMwNDg1MDQ0ZWE0NGJiNWUwZGQgcHkzaworNjM2MjUgODEzZTBmOGE3NDFkNTliZDVjYTdiNjUwNTc2NTVlYjlkZDc0MjUxNyBsZWdhY3ktdHJ1bmsKKzYzNjI2IDI2YjM1OWUyMzdiNTRkOWE2ZGI4MDUzMmU2NDgzNDRlMDgyYTQxZjcgcmVsZWFzZTI1LW1haW50Cis2MzYzMCA0NmYzNTFlZTlkNWVkNDEzMDM0ZjJlOWYzNzUzNGZmNDFhMjgxZGNkIGxlZ2FjeS10cnVuaworNjM2MzEgN2ZlM2E4NjQ4Y2UyNDJmNWIyZDZjYmYxNzAzYmVlOGM0ZWI5NDY3YiBweTNrCis2MzYzNCA2ZWRjODBkNDIwMjExNDdjNTJhYmY3ZjkyNTdiZTQyMzFiMmJiMjUyIGxlZ2FjeS10cnVuaworNjM2MzUgOTM4MjZiMzVmYWNjZTY2YmRmZTFhY2U0YTBiNzlkMWNlYzAyNmVmZiBweTNrCis2MzYzNiA4MjcyNTQzODQ1M2JhOWNlNjdhNjY3Y2ZkMDVmMWM0OGEyYjVlOWVlIHB5M2sKKzYzNjM4IDMxNjYxMWZiMTI2ODJmNzBiNGQ1NzYxNzAwNDdkOGE5OGRhNjk4MGQgbGVnYWN5LXRydW5rCis2MzYzOSA1MTE5YmM3N2JkNmRkZTMzMjU4NDZjOTMxZTcwZGI0YjI2MDAwMDU4IHB5M2sKKzYzNjQwIDQwYTE2MzBlZjJjZjg0NjFhMWQxNmY0YTc5NmNhYmJkZTc5NDJkMjIgcHkzaworNjM2NDEgN2RmNGJhNDg0MDU4ZmRjZjExMTlhMjRhMGEwMTdlNzU0NTI2MWU1OSBweTNrCis2MzY0MiAxYzUxYWJlYjkyNWZlNjg0NWFjMmJiNGMxMDY4NjYxNjViMzMwZjhmIHB5M2sKKzYzNjQ0IGFlMDE4NjlmNjJiZThiZWY1ZTY2MmJkODIwMmViZTQyOTlmZWExZGIgbGVnYWN5LXRydW5rCis2MzY0NSBkN2JmMjY2OWZlNjYwODhhNDRmOGYyMmRiNmFmOGY3OGVmYmYyMWQ3IHB5M2sKKzYzNjQ2IDA4Y2UxOTJmMjRiMDQyMzUyYjM5Y2IwNjA0MTcxMTZjNmRiYjQwMjQgcHkzaworNjM2NDcgZjc2MmE5YWI2OWRkMThiZTk0MDJmMjgzMGRkMzVhNzVhOWM4ZTNmNyBweTNrCis2MzY0OCBjOWQ3MTdiNWI3YTI0NmM0YTI2YzM2MDMwZjAyM2U5NDA5OTAwMGMzIHB5M2sKKzYzNjQ5IDY1OTUzYWU5ODEyMjc5M2RmODczMTIxYjU2NjUzODRjNjU2YTNjOWEgbGVnYWN5LXRydW5rCis2MzY1MiA4YzJmNWFhY2MxYmM5ODNjMGM3NDE0ODY3NDE0ZDA5MmNkZGZiOGY1IHB5M2sKKzYzNjU1IDcwZjlhNWRiMjc5YzIwZjIzZTE4ZjUxY2I2MDQ3Y2NiMWIxNDVhYzUgbGVnYWN5LXRydW5rCis2MzY1NiBmMjhjYmFiMTFhY2Q3NGNiMDE3NGY4MWJiNzk2ZDE5MTYxMzFkNzFiIHB5M2sKKzYzNjU4IGUyNDIwMjYxZDRhMzAwYzU1ODExY2E2YWQ3MDY1OWZmNGZiNTQ1Yzkgb2trb3RvLXNpemVvZgorNjM2NTkgNTQxMWI2YTIyNmU1YWIxOTUyODc1NzBlYTdhYWQzOTU5YzJkNGRmYyBva2tvdG8tc2l6ZW9mCis2MzY2MCAwZmQ1NTNhZDUzZjY0NjQxNDE2Zjk0NjQ2ZWMwZjY2ODA0ZjRhNDMxIGxlZ2FjeS10cnVuaworNjM2NjIgYWZiZGUzNjBkZDFhOTVkYWZmYzY0OGMwZDZiZTFlM2UzOTI3Nzc4NCBweTNrCis2MzY2MyA2ZDNlMTMzMGEzYWE4NGFkNzQ2NTMzZWJhMjQzMmUzNDg4OThiYmY1IHB5M2sKKzYzNjY1IGU3MjVmZjE4MzQyYjEzZmNhYzBhZjg2ZmI3YjcxYTc5ODk0NzA3MTIgbGVnYWN5LXRydW5rCis2MzY2NyAzNDZhOTlkZjU4ODlhYmE0ZGM5NGQ1YmU0MzNkYzllOGI1YWM2YmRlIHB5M2sKKzYzNjY5IDBhNDU1MDgxNDMyMDdkZDgyYWQ2Mjk3ZDZkYzZhZGQ3ZTgwOGZmY2MgdGxlZS1hc3Qtb3B0aW1pemUKKzYzNjcwIDBiOTc0MjU4ZTE1YjgzMmY1YTZiMDlmMTZjYjhiOGYwNzA2MmFmYWQgbGVnYWN5LXRydW5rCis2MzY3MSBiOWVhYjc0OWJhNjYwMDc1ZmIzMzViOTkyMWYxY2MzYjhkY2RhZWJmIHB5M2sKKzYzNjcyIDA0YmQzNjkwZmIxZmU1YTM4MTU2NGY2NWZmZDMxNDc4NmE4ZmVjOWIgbGVnYWN5LXRydW5rCis2MzY3MyBhYmFmY2NmZTc1MDFjMjMxY2Q4NmJiM2U0NGI0MTFjYjY2MzIyNTY1IGxlZ2FjeS10cnVuaworNjM2NzQgMzI2NGFhZjdjZjMwM2YwNWJhNzIyZmQyM2NkMjJlMmIxOWY1MWI1ZSBweTNrCis2MzY3NSA0ZmUxOTJkNDg5NjAzMmYzNTYwNjAwNWNkZGYxYTExYzUzY2Q4M2Q4IGxlZ2FjeS10cnVuaworNjM2NzYgNjUzZDA0ZjMwNDI4NzcxZDZhZGE1NGJiYTY0ZGQ4MjljYzUzMGFlNiBweTNrCis2MzY3NyBlOTIzOWFkN2I4YzA3MDI3Y2RhYjlkZTUwMzhiNGZmNjA5ODg2Zjc3IGxlZ2FjeS10cnVuaworNjM2NzggNGQ5OGViYWVkMjc4MzZmNzcyYTdjYzI5YzdiMDc2YzRlYzFhNmM4NyBsZWdhY3ktdHJ1bmsKKzYzNjc5IDE5NGJiZjA0YjAxNTQ0MjVjMTUzZWQ5MzczYjI5NGRlNzRlNjlkYmYgbGVnYWN5LXRydW5rCis2MzY4MCAyY2NiMzRkNTM3ZGI2NGU2NTBlYzFlMDNhMzg1NjYyNWU0YjI5Y2I0IHB5M2sKKzYzNjgxIDk2YjM0MjYzZTQ0OGQ0Y2IzN2Y1ZmFhMmVhMjI5MzE2NDI0N2Q4MGYgcHkzaworNjM2ODIgMjNhYjU4NmM0MjdhMzdlMjFmNjFkZTI3NmYwMzJhMmUyZDgyMDU4NiBweTNrCis2MzY4MyA4MTFhODA2NTEyMzJlOGQwODU0ZWY4MjYyOGM2NTZmMGE3MDYyZjU0IHB5M2sKKzYzNjg0IDhjYzNhZDhiZjdjNGU2N2FkMzk2ZTcxMDczODVlZjFlMmFiNzcxNDcgcHkzaworNjM2ODUgZTNlMGMxYTY1MjA0OWZlOWZlYzc1ZmZhNzVkMTcwM2Q1YzBjYjM2YyBsZWdhY3ktdHJ1bmsKKzYzNjg2IDcwOGE1NjEyNzljYWI0NjExYzAwZDFjM2Y0OTc0MGMzMDdjOWQwMzAgbGVnYWN5LXRydW5rCis2MzY4NyA5YTBkNGRjMDdjODk1NGNhYmU0ODc5M2Q2MDNiMTljNWNmNGU2NTM3IHB5M2sKKzYzNjg4IDM0ZTQxZjRlOTYyZjE0YzFkYTU1ZDQ5NGI1MzQ2MTYwOTViMzc1YWQgbGVnYWN5LXRydW5rCis2MzY4OSA0YWIzZTdhYzhiZjRhYTM2NjA0MjA4MTdkYzY1NTQ0MmFkODY2ODJmIHB5M2sKKzYzNjkwIDE3YjhmNDQ1ZDA0MzFlZDBmYzkxNmQxODAyNjVjMDc4ZGYyYjBiYmYgbGVnYWN5LXRydW5rCis2MzY5MSA2NjJkMTVhZjUyZGY2NjY1NGViNTQ2ZWFjOGRiYjhiZmI3ZWI1YjgzIGxlZ2FjeS10cnVuaworNjM2OTIgYTk0NmJmNzY2NjU0NDA4NjVkMDJmOGQ0MTRlZDI1N2U0NzYyNzk4ZSBweTNrCis2MzY5MyBjZTljZGNlYmFlZjAyNDdiYjhiYWM4ZjZhMWE2MDhiMTVlMmYwOGRkIHB5M2sKKzYzNjk0IGE2ZDYxNzcwODY2NWFmNjdkZWM5MGE2OTE1MTI3Mjg4MTJhZTY4YmMgcHkzaworNjM2OTYgNzAxMDRhM2UxZDlkMzk5OTMyNDJjN2FkOGJiNWQ2N2IzYzA4Nzk1ZCBsZWdhY3ktdHJ1bmsKKzYzNjk3IGJkYTE1ODU5ZjY1OGYyMjEwZmE1OGNlOWRiNTk3MTYxMmFjNzM0NDcgcHkzaworNjM2OTggYzU2MDRiZTdhY2RmZTBhMzc3OWIyYWZjNTA0ZmQ5YzhlNTg3MTZlNiBsZWdhY3ktdHJ1bmsKKzYzNjk5IGJhODAxNWUyMzQ4NzIwNTQ0M2MyYjU2NGIxYjhjNmU1MjZlNDNkYTYgcHkzaworNjM3MDAgZTFmY2MzODgxY2I2ODc1YjRkZjcxYzEzMTBlMTY0YzNkZmFmNWE3MSBweTNrCis2MzcwMiBlMDE3ZTFmZGUzNjkyZTI5ZWFiMDA5ZjU4NGFkNDZkYTkwMGI0YTVlIHB5M2sKKzYzNzAzIDM5NzVlYzJiMGRlMmFmMjQyNTc1YTk5Mzk0MDlmY2EzODZmNmY2NjYgcHkzaworNjM3MDQgZmNkNDU2YWU1MTViYTg4MTg2ZDIxNjlmNzI4MGJlNjFhMmNkN2UwZiBsZWdhY3ktdHJ1bmsKKzYzNzA1IDAyN2M4ODdlOWRhOTIzNjg3ZmE2N2E4NDc5ZTQ2ODQyOTBiYjFmYjIgcHkzaworNjM3MDYgYmM0ZGY1MWMwMWQ1MjU1MTcxZWQ2MmZlOTRjYjU0OGMyZThiMTY0NyBweTNrCis2MzcwNyA3YzViNWYwZWIzMGQ5NTBiOGYwZTUxMmY5YmUwNWYzYjc3ZDA2MjliIHB5M2sKKzYzNzA4IGRiZDlhZDUyYjRkMGU5ZmNmMTA3MTliMmI1YzRjZmQzNzNhMzM3OTIgcHkzaworNjM3MDkgNzljN2U4NDhlYTE3Y2M5MWM1MjY1ZmM1ZWViZDYzZmUwMTRkNjBmMCBweTNrCis2MzcxMCA2Yjk3M2Q5MzZiMDc5NzE2MGNjMTZiNWU0NzE1NjhmNTZlZThhZWJmIHB5M2sKKzYzNzEyIGMyYTBhNzA4NDYyZWJhMjdhMWIzNTAzMGVkM2Y1NDYwZWViNzg4NDUgcHkzaworNjM3MTMgMDYxOTNlM2RmNDE2ZjViMjcyYzk4NWRmNTUzNTAzY2VmMTlmZTNmNyBweTNrCis2MzcxNCA4ZmYwYjkyNWVhNjQ4ODU5OTU2ZDk5YjYxYWRmY2M2OTY0YTkwYTllIGxlZ2FjeS10cnVuaworNjM3MTUgMDUyNWNkNWIyNTgyOTAwNjhmN2ZkY2NkYmJlMzRiN2JjYWNjMmNjZiBweTNrCis2MzcxNyA2ZjFhNjMyY2IyZTUzMmI4M2Y5Y2I1YjdhZjk3OGZkMmNlMTJiNmM2IHB5M2sKKzYzNzE4IDNjNzBkNjhiZWIzMDk1N2E5NzY5YzdmMGEzZmVmZTBjODAyOTE4ZmQgbGVnYWN5LXRydW5rCis2MzcxOSBmNjFiNmMzMTAwMWNiNWZjNjIwZTUwZmEwMzFiMzAyNjIzMDdlZDIxIGxlZ2FjeS10cnVuaworNjM3MjAgNzg5ZTBmMTVjMzdiNmY2MjdhYTU4NThjY2JmYzM5YTE1Y2E1MTQ0MyBweTNrCis2MzcyMSAyZjkzMTkxNjlmZWM5YzYzMGQ4MzM4ZjE5NGIxNTJlNmU2Y2ZjNjllIGxlZ2FjeS10cnVuaworNjM3MjIgNTk3ZDhmZDU2OTNlNDM5NjE3MGE1NTJhZGQzNmMwMGNhYWI4MjU0YSBweTNrCis2MzcyNCAyNzNlOGRlMzQ2MDNkY2EyN2RlYzQ1NTI2YzIzMjJhZjIwNWZjMmM4IGxlZ2FjeS10cnVuaworNjM3MjUgYzRhNDU4ZWNkMmVkN2YwMDJlMWRjMGFkYmMyMjE5Y2ViNjIwNzkyNCBsZWdhY3ktdHJ1bmsKKzYzNzI2IGY2Yzg4ZjE3MmJiZWM2OGM4MjU2OThjOGFmNmYwMTU0YTVmZTM4OTMgbGVnYWN5LXRydW5rCis2MzcyNyBjOTFiMzdkYmJhM2YxOGJkYzM2MDQ3NjMyOTgwMDZmOWZiMzM3NTM2IHB5M2sKKzYzNzI4IGE4Y2M4ZTZmMGMxYTY5MDBiNDlkNjE1ZWNjMTcxZDVmNTY0YzJiMGYgbGVnYWN5LXRydW5rCis2MzczMSA2MWE1Njk3YTc2MjY1MWZmZWViZDFiNjQ4MDJiN2MyNDAwNzY3ZTZiIHB5M2sKKzYzNzMyIDE0NzRmMjUxMjhjNDRlY2E4MDNhM2U5NTBiZGQyNjE3ODdiODExYTYgbGVnYWN5LXRydW5rCis2MzczNCBlMWE0YmY5MWIyYWVkYzQwZTRkMGJiNTQzMGE1NjZhMWE0YzRkYmUwIGxlZ2FjeS10cnVuaworNjM3MzUgMjMzNzk2OTViNGRiMjgwYzQ3ZGNiZTUzMTI0OWRiNjk0NGJjNTBlMiBweTNrCis2MzczNiAzNDNhYWFhODAyZTgxMDQyZTVlYzlkNTcxMGE2NWVjZmE4Yzk5M2M0IGxlZ2FjeS10cnVuaworNjM3MzcgZGMyN2IzYjQ2ZjBkZmMyMGM5NWZhODY2MjQxMzE2MTYyZmY4ZTM3YyBweTNrCis2MzczOCBlNDEwNDU5N2MyYTNlZjc2MmQ5NjIxYmI1OTkyNGQ1NzVlYmQ0ZDkwIGxlZ2FjeS10cnVuaworNjM3MzkgNTFjNjNiN2VjMWE4YmNlYTg0M2M5NjVhN2Q0M2E2YmZmYjE1NWEzMiBweTNrCis2Mzc0MiA1MDJlNzJmMjhlOWVjN2Q1NTI0MGU1MWRjM2EyMTg1NGU4OWFjYjM1IGxlZ2FjeS10cnVuaworNjM3NDMgZjk0YWNhYjc4YWE5OWQ3YmUzNTNkZjQxMGJmNjI4ODQyM2M2NjcyYSBva2tvdG8tc2l6ZW9mCis2Mzc0NCAzZWFhNzIzNjcxM2ZhMTc2NWZmZTM2MmZhYzBkNjBkOTVhNGRhYzMyIGxlZ2FjeS10cnVuaworNjM3NDUgNGE3ZjM0ODBmNDU0ZGI3NjdkZTI0MjRmOTA0YzdiMGU3Mzk4ZjlkZSBsZWdhY3ktdHJ1bmsKKzYzNzQ2IDRkM2U5NTM3M2Q5ZTI0MGYxNWQ2M2NiNmI1YTgzNmI0YTQ2OWZhNWQgb2trb3RvLXNpemVvZgorNjM3NDcgNDM0ZjFkNWFjZmU0Y2U4NWVjM2Q4ZmMzYzI3ZTBkZDQwZDYzYzI0OCBva2tvdG8tc2l6ZW9mCis2Mzc0OCA4NDk0NmY0NTUzZjEzOTlmZjVhN2JmNTg4MDMyY2E2NTI0NGUzNTMzIG9ra290by1zaXplb2YKKzYzNzQ5IDQ5M2IzMmM3ZDEyMTIyNzdjY2Y5MGQxMzU3ZDJlZWIwYzQxZjdkODcgb2trb3RvLXNpemVvZgorNjM3NTMgNGVlMjlmZmQyODU2ODY1YTU0YTFlNTRmMmU4YWYxM2VjZDA4MTk2ZCBweTNrCis2Mzc1NCA3N2Y4YWU4ZmM3MGI0YTA5YjU1YmM5YzM1Nzc4ZDAwNzAwZjliZGM2IGxlZ2FjeS10cnVuaworNjM3NTUgNjdmNGI3NzY3YTBhYjExYWFkM2E2Njk2OTY1NDE1Nzk5YzEzMWJiNyBsZWdhY3ktdHJ1bmsKKzYzNzU2IGI5N2RkNTg4OTI0Njk5ZmIzYjVlMjFkYjU0OGJjZDkzOTBmNGY1MTkgcHkzaworNjM3NTcgOTNmZTkxM2ZhZTU1NDdhMTljMjEzZjYwMmM3MmJmMzM5NzdhNDcwMiBsZWdhY3ktdHJ1bmsKKzYzNzU4IDA5MDY1YjAxMGM5NTA4YTc3OWMwYzNmMTBhMDFlOGQzY2MxYTNmM2MgbGVnYWN5LXRydW5rCis2Mzc2MCA3YWU3OWU5NmZjNDJmOGYzZWZhMDlhODBkYzg2YWQyNTVkOTVhY2ZlIGxlZ2FjeS10cnVuaworNjM3NjEgMTI1MjQ3ZWNlNTYyNTJhNjgxZjVkMjViMTJjYjM2MzVjMDM5YjdiZCBva2tvdG8tc2l6ZW9mCis2Mzc2MiBhMWNiNTQzMDliNGQ0ZjQzNjBhOGRhMmIxNTA5NGQwNTlkZjllZmU4IHB5M2sKKzYzNzYzIGRjZDZiZmIwZGI0MzljOWQxNjdhN2FhNDI0MmQ2ZWI1ZTE4MGQwNTEgb2trb3RvLXNpemVvZgorNjM3NjQgMjNiOThmN2VmNDU0NzY3ODdiMTMyMTBkZmE4ZThiOGRlYTAyYzg5YiBva2tvdG8tc2l6ZW9mCis2Mzc2NSA3OWYzMTI3ZjFkNzI3MGRlYjA2MTA4NGVkN2NmOGQyODk1YTdhZTQ1IG9ra290by1zaXplb2YKKzYzNzY2IDA3MmJmYmI2NTQ4NDg1ZTQzYWIzZmIzODlhODBjMDM4ZTAxMzQxNDYgb2trb3RvLXNpemVvZgorNjM3NjcgMTU2NzQ2YTYzYTVjOGYzMzI3YzhiZWNjNzhmZjI1MjUzN2U0M2NmMyBsZWdhY3ktdHJ1bmsKKzYzNzY4IDc2NTI5MzZmYWQzOWY4YjdlMGY2YmVkMzNlZTAyZTQ3M2RmYzUzYTEgcHkzaworNjM3NzUgNWUyM2IwZmNjNzhlZTZhNDNkYzdlMzI3ZWYzZGEzOGU5MThlYTZjYSBsZWdhY3ktdHJ1bmsKKzYzNzc2IDI5Yzk1MzZjMDRhZDQ4NzY5ZWQ5NzM2YmEyNzdhNDI3NGI2MDZiZmMgbGVnYWN5LXRydW5rCis2Mzc3NyBiNmNiZWM0OTk3NTYyMmQ2OTcyN2JjMzllNDU1MWE3NzNjNTViMzMzIHB5M2sKKzYzNzc5IGIxNGM0YjViYWIwOGQzNmZmYjkyNTI5NjBmYWQzMGYwY2Q0NTExNGQgcHkzaworNjM3ODEgMDAxNTQ1NjdkNTkzNWIyODRjYWMyNTczMmJlODk4OGUwMzczMjE3YSBsZWdhY3ktdHJ1bmsKKzYzNzgyIGVmNTFmY2RhMzQ4YmY5MjNkZDk4MmVhNzJiYjIzNjY3YzA2MDEyMjMgbGVnYWN5LXRydW5rCis2Mzc4MyA2M2I0NzQ1NTYxYzM0MzZlZjVkNzIwM2FiZGQzNmY5YzU5ZmZjODYzIG9ra290by1zaXplb2YKKzYzNzg0IDllNmU2YjgxN2YzMjAyZTMwZGJjYzg4NDk1YWZhNjY1ZmUzMTA0NGIgbGVnYWN5LXRydW5rCis2Mzc4NSBmYjJkOWIwYjQ0NzAzMmExZjdkYWYzODFmNWVmZDkyOTk3OWUwZDRjIG9ra290by1zaXplb2YKKzYzNzg3IGU4MWQwMmQwOTY5NzRmMTMwNWU1MjQxNDIxMzk4MjA5ZDcwMWE4NjkgbGVnYWN5LXRydW5rCis2Mzc4OCBlMmM1YWUzMGNmZmVhY2Q0OGEwZWZkNTYxZDNkMjE2NzUxMWUwNjY3IGxlZ2FjeS10cnVuaworNjM3OTEgYzU5NWRhMDU1ZmQwOTIyMTJmYWE2Y2Q1NjM4MTFlNmNlMzVlNjcwMiBsZWdhY3ktdHJ1bmsKKzYzNzkyIGM5MGNkZDgzNTk2MDZlNDM3MTdiYTBkOTgwMThmMGIxODM3ZGIzOTMgbGVnYWN5LXRydW5rCis2Mzc5MyAzOTg2OTgwM2JmYWVlZGQwNjA0M2NlNDczODQ5NTZmODAzOTUwOTFhIHB5M2sKKzYzNzk1IGFlYTNjNTU0M2Q0M2YyYjlkNTFjMzc4NTY3ODNiZGNkMjliNGU5NTAgcHkzaworNjM3OTYgMzY2YTQzNTUxMWRkNWQ0YWM0MDU5NDIyZDAyNDhlZDQ5OWEwOGQzNSBweTNrCis2Mzc5OCAxZDI5YmZhMjczNjgxYjk0MmFkODhlYzgxMmU1YTJmNDRjZjU4NDA1IHB5M2sKKzYzNzk5IDkyMmU1YTI0Y2M4MmU5ZWZkYTQ4ODY3ODMyOTY2ZmU3ZWU3MDU5ZWEgbGVnYWN5LXRydW5rCis2MzgwMCAyMzkxZGE2YzQyZWYwOGExNmM3MWNkNmE2YjhkYzEyYzY0MzY5ZDQ2IGxlZ2FjeS10cnVuaworNjM4MDEgMjYzZmQ2ZmJhY2FjNTg0NWU5NDYyNDQxMzExZGIxYzAyYjgzYmJiNyBweTNrCis2MzgwMiA4ODJhYTE0NjY1ZTQ3ZjFmZDg4MDc3ODJkMDY0NDkxOGE1MDM5NTUyIGxlZ2FjeS10cnVuaworNjM4MDMgMDE5ZDNiMTEwYTZlZWU5YTRhM2Q2NjU2NDk0NTUyMzFmYTlmNmUyZSBweTNrCis2MzgwNCBjZjVmMjczMWZjNTYwNzE4YzFmMzkxYmIzYjlmMWIyM2M4NWJjMjAzIHB5M2sKKzYzODA1IDFlMWRmODkyMDk1YTcxNDE1NDEwNDVhNDZhNjZlNjBiNjVkYjhhZDggbGVnYWN5LXRydW5rCis2MzgwNiBlYTI3M2M4ZTNlYWEzMDU0NDBlZGYxZTEwZWQzNjA0ZmZiNmIwYzU3IGxlZ2FjeS10cnVuaworNjM4MDcgMzM4NjViYjU4Mzk2MmYyNTMwNTY5YTdhNDNiZjVkYTczOTdiYTAwNiBsZWdhY3ktdHJ1bmsKKzYzODA4IGQ2NjM5Y2Q5NTc1ZmYyMGFlZWMyOWQwYzhhMGRkZTc3MDYzNWExOGIgbGVnYWN5LXRydW5rCis2MzgwOSA2Y2U0NDM1ZjE1YWQ0ZThlZGNmOWYyODc2NWNmMmEwODAwZGM0YWM3IHB5M2sKKzYzODEwIDBlOTE2OTBkYWUyZjYzOTZjYWY0MjE4Y2UyNDE3Y2M1ZTk0NDJkMTkgcHkzaworNjM4MTEgZWNhODgyNzMxMTk0Y2RhYzQxNTEzZTc2MDk0Mzk5YzlmMDhkNmEzNyBweTNrCis2MzgxNCA0N2VmOWE4MDZjZTk3YmU3NjlhNDMxMTU0MjVlODQ4N2IxMDY5NzY2IGxlZ2FjeS10cnVuaworNjM4MTUgMGRhMjdmZGYwMTkyMDU3NDhmYzY2ODA3YzdlNmIwZWI5NTIwODAyYiBweTNrCis2MzgxNiBjNDFjMzk1NDU4ZWIwMjhjMWY4NDQ5NzJiMDhmODQxNDlhODcwOTI0IHB5M2sKKzYzODE3IGJiYTI5ZjQ2MmJjYzY5MDQ5NzNiZGVkMTdjODBlY2Y4ZDRhZGRiM2MgbGVnYWN5LXRydW5rCis2MzgxOCAxMDVhZDYxMzI1YWMxYzIyYTBjNTA4ODE0Mjk2M2RiOTgyODdhZjliIGxlZ2FjeS10cnVuaworNjM4MTkgMjE1MTBjYzBjMmU0MmI3YmYwYjU3N2YwYzI4ZjNkNWNjYWVmY2FmOSBsZWdhY3ktdHJ1bmsKKzYzODIzIDBiMjdjZTNjNmIyMWM5Y2FmNzhmNzQ2NTRlMWQ3MWI4NWE5NTdlMGQgbGVnYWN5LXRydW5rCis2MzgyNCAzZGNkNzAwMDQ2OTZmZGY4NzMzMDQxMTkwNWQ4YzBiMWIwYjY5MGUyIGxlZ2FjeS10cnVuaworNjM4MjUgYTJlNzJlY2RiZTAyYmU4N2UwODg3ZjQ3MDc5MzRlOThkOTNiYzA3OSBweTNrCis2MzgyNiBjMDRhYTRhYWJlMTdlYmQ5NWM4YzhkZTM3MTIyNmVmYTViMTkxNDI5IHB5M2sKKzYzODI3IDJlODc2OWQ1YTc4NmI5NTQ0YzJmYjk0ODZkMmQwYmQxZWE5YjVmMjEgbGVnYWN5LXRydW5rCis2MzgyOCBmZjZjYzlkNGZmZDM1YWU1MWFjMWY5NmEwM2Q0M2E2ZGYxYTU2MDMyIGxlZ2FjeS10cnVuaworNjM4MjkgMDNhZmU2OTg1ZTVkZjc4MDIwNmIxOTA1ODhjNjQ0NDZlNGUyMDkwYyBsZWdhY3ktdHJ1bmsKKzYzODI5IDgyYTQ3ZDc4ZDI3OGI5NzYzNWI1MTNlYmI4OWE4YWY1MWZiZWEzNDggcHkzaworNjM4MzAgYWYzNjg1ZmE5Y2E5MTQ4MjU2NTJhNGU1YmRmZDY4ZGFiNzU3N2Q4NSBsZWdhY3ktdHJ1bmsKKzYzODMxIDUxYTg2NTMxMjhlM2FkNWYzOWQ1NjYzZWFkZDE1NjlhMmJmM2Q1OTQgbGVnYWN5LXRydW5rCis2MzgzNyBiZWUyNzFlNzZhM2U1MzExYjcxMmFlOGQxN2QyMmNlZGZlM2UyMmExIGJlbmphbWlucC10ZXN0aW5nCis2MzgzOCAwNzVjNmJkMjBmMDc4MDRkYjZmZjlmZThlM2NhNDJkODRmOTQ4NjNmIHJlbGVhc2UyNS1tYWludAorNjM4MzkgMDE1NmMzMzZlNmIzZDUxZWFiZjZiYTU1MjY2M2ZjZTc1OWRkNTU0NyBsZWdhY3ktdHJ1bmsKKzYzODQzIDFiZGYwNzQwOTQwM2I0YjU1NzgyODcxZTZkYTFhYWFlNmQzNjJiNjIgcHkzaworNjM4NDQgMmY1ZWRlMDBmYTllZTE3YWFmNDRjYTExZDRmMTU0MmYxODFiZDMxMiBweTNrCis2Mzg0NSBjNGUyZWYwOWEyZjA0YjI5NzQxNGM4YTZjZjM0MjE2Y2Y2MDIzNmNkIHB5M2sKKzYzODQ2IDEwNjJiN2RlYzk1YjdhNjdhMGVkYzk4OWZiMWQ5NjRlYzI2MWM2ZTEgbGVnYWN5LXRydW5rCis2Mzg0NyBkMjM2MmY5OWE0MDM2OGM4OTdiNTMzNDI2ZDIwMmM5Yjg4ODBjMGUwIHB5M2sKKzYzODQ4IDYyMmNhYmJhZjJiY2U5OTdmNTliZGNhZjFhZTMyZWRiOGRjMDE5YzEgbGVnYWN5LXRydW5rCis2Mzg0OSAyYTYzYWIzNTk1YTE5ZTI5MzFkM2I0ZDliODIxNDVkZmIwZWE4ZjMxIGxlZ2FjeS10cnVuaworNjM4NTAgZWNmMmVkMDk1ODgxNTU3ZTZiMjhhNzk0YjA5ZTAzZDU0MzdkZjE3OSBweTNrCis2Mzg1MSBiMTMwNDRkNTU0YWZkYjMxMjA4MWRlMWM0ODhhMGM5ZTMyNDgwOGRiIHB5M2sKKzYzODUzIDgzYTEwMDAyZmVkYmRhODQ5NDE2MDMyOTQ4ZDNiNTVhNjA4NzUxNTkgdGxlZS1hc3Qtb3B0aW1pemUKKzYzODU0IDY1MzAyNjQxNDM3NmM4M2E2Y2Q4ZTgzNjhkMTA1NTc5MTJlMDQ1MjQgdGxlZS1hc3Qtb3B0aW1pemUKKzYzODU2IDg4YmQwN2MwYTg0N2QwMzQxMTc0ZTI1ZThlNjg0NmEwYmYyNGE3MzYgbGVnYWN5LXRydW5rCis2Mzg1NyBiZWEzYzFmNTJlMDViODg3NGViMDIwMTEzYjM3ZGNhOWE4NzdjMmI4IHRsZWUtYXN0LW9wdGltaXplCis2Mzg1OCBlODc5N2U2ZTA3YTc0MDVlYzUwNTM4NTg2NDBmMWNmZTNlZGQ4ZWIyIGxlZ2FjeS10cnVuaworNjM4NTkgYTY1ZjA5NWIyN2YzY2M0MDg1NmM1MTc2YTU0MTViYmY5MGJiZTYxMiBsZWdhY3ktdHJ1bmsKKzYzODYwIDM3MDI3MjlhMjQ3MDczYTA1Mjg4MDg1YjU0NjlkOTkzNDU1MzBmNDQgbGVnYWN5LXRydW5rCis2Mzg2MSBmY2Y5ZDk1ZWY1MGQ3OGIzMzFmNGM4NjNhMTQxMjIzYmZkYWU3YzIyIGxlZ2FjeS10cnVuaworNjM4NjIgY2ZiNTQ5MTAwMWQwMmFlNGI4MTVmM2E0YWJkMzc5ZmY1MmVhM2NlZSBweTNrCis2Mzg2MyBlN2YwZmQ4MzU4ZjVhZWY3NDE3OTgzZGFiMzA1ZmQxY2E5Y2JjNGViIGxlZ2FjeS10cnVuaworNjM4NjQgNGRlZGVmNGMwZGZkMjkwOTI1OTA1MTMyZDY2NmMwY2I1MTVkNDE3MyBweTNrCis2Mzg2NSBjMGZlNTRhMDI4ZTM2NTkyMDEzYWZmY2U4NGQ1ZmRlYjUzZDVhNTU3IGxlZ2FjeS10cnVuaworNjM4NjYgMzE0NzZkYjk5YWMzMWZmMmE4NDJjOGQwNWE5ODlmZGVkYzc2YWQ0NyBweTNrCis2Mzg2NyAwNmQ3ODU2Y2E5ZjQ2YThmZWI5NGEyY2ExMTk3MmMyMzg0NGJkMjIzIHB5M2sKKzYzODY5IDgyM2JlNGEyNzVlMmI5OWUxMmUxODJjZmFhYjJkOTQ4OTI2NjFlZDMgcHkzaworNjM4NzEgYzBkNjE2ZjBhZDg2MzlkMmM2MDlmODg4ZjdjNmZmMDljYmMzNWUwZiBsZWdhY3ktdHJ1bmsKKzYzODcyIDMxZDJmZjg2OTZiZGM4ZWMyMGM5MzdmNDIyZTE4ZThjOWZmZDA2NGIgcHkzaworNjM4NzMgMGJmMDhkZTMzOWEwZDIxMDNhZjIxNDliMGEzNDYxN2MyODk2YWZhYyBsZWdhY3ktdHJ1bmsKKzYzODc0IGYxNTAxNzdmZjFmZjc5NGQyOWRkM2NjNDY0MTEwMmVhNWQ2ZDk0NWIgcHkzaworNjM4NzYgZWJiZjg5NTA1NmVhOGFjZjExZTU3Yzc4Yzk1NmE3NDUwMGQzNjkwMSBweTNrCis2Mzg3OSBiNmRkNDllZTAzNWI1ZDNkNmE4ZjhjMDQwYzgxNGUwYWJkNWM1ZjFkIGxlZ2FjeS10cnVuaworNjM4ODEgNjQwNDQ0NmU1YWEzNmIyMTBiNzhmYWI0OWY4NWY3Y2U2YjIyMjkyNCByZWxlYXNlMjUtbWFpbnQKKzYzODgyIDdlYWFhZDA5YjZjZGQ0YjdkOTg2YmZiOWVmMjU4ZDc2NWFlZjY5MjMgbGVnYWN5LXRydW5rCis2Mzg4MyA3ZDY2MTEwNDY0MDQ5YjEwMmEwZWU5Zjk2MzNlNGJhODA5NDI0ODI2IHJlbGVhc2UyNS1tYWludAorNjM4ODcgMTAwZTMyNTA5YjU3NzY1MzZjYTZkY2FiZmIyMjY0ZDA0NDIxY2Y1NyBsZWdhY3ktdHJ1bmsKKzYzODg4IDA1ODA1MzFjMzc1NTVhZGU4MzFlZjcxMjZhODc0ZTBhYTcwMjJiYzkgbGVnYWN5LXRydW5rCis2Mzg4OSA1YmM3ZGE2NTAzYjA1ZWI3NzZlMTYxNGEzOWQ2MmI5OGQ5NjFjMTlhIHB5M2sKKzYzODkwIDc5MzczZTA3MGQ0ODYwMDllZmFkOTJkMTE4NWM2Y2U0NWFhNjkxYWQgcHkzaworNjM4OTEgYmIyYzRiZGMzYzY4M2I0OGZhOWU5NWJkODI4M2ZkOTQwNDhjMjRiZCBweTNrCis2Mzg5MiAxZjJmMTU3N2FlNzgxOWNkYjA0ZjQxMWI5M2FmMjZiZjU4YWI1ZTU4IHB5M2sKKzYzODkzIGI2YjUzNGI4MjhiMzM5YmJkNmVmN2JhMDIyNWZjOGViYjkxMTJjMDMgcHkzaworNjM4OTQgNjVhNjA2MDhhYjVhNTliMDI4NDkzY2Y3NTg4NGUxOTVlNDVhYjllMCB0bGVlLWFzdC1vcHRpbWl6ZQorNjM4OTUgZjllYmFjYWNlMzVkM2NiNTdjNjllYWZjNWUwNDdjZWExYjlhZDk5ZiBweTNrCis2Mzg5NiBlMGNhMDIxOGZmMzNjMDI0YjUxYzIxNGI1MDE2ZTJjOWM5NDAyOTYwIHB5M2sKKzYzODk3IDQ0NDAyNDdiOGE0NDgxZGZlNmU0ZjNmMDA1MTA0NDhmM2YxZDBlNDkgbGVnYWN5LXRydW5rCis2Mzg5OCA3NzA4OGQ0MWM3OTAxZmNkMGEwMWI0NDI1OTVhNmYxZGNhMTE3ZmE4IGxlZ2FjeS10cnVuaworNjM4OTkgZWQ0NzFhODAwOWE2MzE5MWY0ZGNhOWIzNTdkODFiZGQzNDNjODYxOSBsZWdhY3ktdHJ1bmsKKzYzOTEwIDQ3ZmYyNGJjNjExNjVkMmYzMjY3ODE5NDMyYjE1OTA0NjkxOThiNmMgbGVnYWN5LXRydW5rCis2MzkxMSBjMjNlNmQ1MzAwYTBhMjRjNGE1MTExYTI0NTQ4ODhhYTUxMzEyYTg0IHB5M2sKKzYzOTEyIDM5OTkxOWU2MWQyMzhjMjIyMGMzY2ZmOGYwMDMzMWUyYzEzMGQ2M2MgdGxlZS1hc3Qtb3B0aW1pemUKKzYzOTEzIGY3M2U2ZjZkOWJhNjk3Y2E5MjdlM2RjYjM0OWRiOGZiMjg4MGE3MzcgdGxlZS1hc3Qtb3B0aW1pemUKKzYzOTE0IDUzNTNiNTUwYzk2OTJjZTg4N2QyNjBhZGE5ZDAwNDU1YzljZDViZGMgbGVnYWN5LXRydW5rCis2MzkxNSBhNzZlNDliMjE5YTJjYTJjNzU0ZTU1NDc1OTY2Mjk1ZTFkZTY2NjQ4IHB5M2sKKzYzOTE2IDg2ZWQ5NzlkZTg5ODdmYjBkYzMxOGQyZTA5N2VlNDY5MTA0Y2EzY2UgcmVsZWFzZTI1LW1haW50Cis2MzkxNyAzMjU4YmJmYzQ1NmU2NzRjMWE0ODg0YTA0MDhkY2Q3OWE3MDUyZjgxIHB5M2sKKzYzOTE4IGU0YTE4NjQzNzQ0MDQyYjYzMTU4M2NlZTg4NmExODJmNGNhNzcxODUgcHkzaworNjM5MjkgZWYwY2NjZGU4YzI0NWNiNTU2ZjQyMWYzMjBmOWE2OGNiYmJmNDJjNyBsZWdhY3ktdHJ1bmsKKzYzOTMwIDU3MmQ4MWVjZjAwZDYwZTNkNmZkOWU1ZDI4ZjRhMWRmZjkwMTc0YjAgb2trb3RvLXNpemVvZgorNjM5MzEgZjgyMTE2NjAwYzBmMTgxYmNiNTM5ZmI4NTY0Njk0NmU4OTAzNmQ3YiBva2tvdG8tc2l6ZW9mCis2MzkzMiAyYTFjNjk3OGRjNTc2MTBlMDVmNzZiOWY1MWY0NzI1ZjVkMmMxNDBkIGxlZ2FjeS10cnVuaworNjM5MzMgMjFiZWIwZDVlMzI5OTUyNGIxYTQ5ZjJkOTY4NzU3M2E5NmJlZjlhMyBweTNrCis2MzkzNCBkNTdhYTc1MmE0MDExODI3N2Y2MGExZDM5NjUyN2E5YjIxODgyZTIwIHB5M2sKKzYzOTM1IGQwZjc4M2JhNzY2OWEzMGMxMWJhZTFmMTM1YWE4MGFiYmVjZTMwZDggcHkzaworNjM5MzYgYTY1NjE5YWQ1OWYyODczOGJjNWZjNjk4NzE0MGExNGEwYTc3MWVkNCBweTNrCis2MzkzNyA4ZmNjOWVjMTg4MjQ2M2FiZmUxOWFjOTFiZGViYmI5NDBkYzg1NWIxIHB5M2sKKzYzOTQwIDU4ZjRiNjA3NzNmZTYwN2NiZWM4Y2ZiNzU1YmU0ODRjNzUzMmFkNDEgcHkzaworNjM5NDIgOGFkNGViZGJkMzczYWE3MzkzNDI4MmM1MjAzOWU0NmRiMTEwNjM1MiBsZWdhY3ktdHJ1bmsKKzYzOTQzIDEwZmIyZGVjMzY2NWI0YjU4NzMzNjFjNGVlYzUwYzIxMGYxNTFmNTQgbGVnYWN5LXRydW5rCis2Mzk0NSBiMGQ0Nzk5YjBkYjg0NGU3ZDcxYTQ4ZDY1NTNlOGU5NDNmNDcwOWRjIGxlZ2FjeS10cnVuaworNjM5NDcgODQ4MGY1NGZjZDZkZjRjMzI0YTJmZDRlYjFlYjA0MjIxOTFlZGJlMSBweTNrCis2Mzk0OCA3MWJlZDIwOGZlNTA0MjQyZGY3Mzk4MzRhNWZjNzQzYjc3ZGE1NjY2IGxlZ2FjeS10cnVuaworNjM5NTAgZTk1YzE1YmI5OTUwMmI3YzE3ODRlOGY2YjI1YmJiZjBhMjM4MGRhZiBweTNrCis2Mzk1NSBjMzRlMzQwNTc3MTRhMDExYWI5Nzg3NzYwNzhiN2Y2YTFmZjU4ODZmIGxlZ2FjeS10cnVuaworNjM5NTYgNDU0YzdiMGI2OGE4N2JjOTc4MWIzMWE1OWEwNzRkY2EyOGVlNWUyYSB0bGVlLWFzdC1vcHRpbWl6ZQorNjM5NTcgZjA0YjA1OWU2Yzk4MjExNTVmZGM2NzU4OTM4NDQ0OGE5ZWE1OGYyYiB0bGVlLWFzdC1vcHRpbWl6ZQorNjM5NjEgNzM1MjU0M2NiYTAzYzQzMWVhN2QxNjUyZGIwYmIwMjUyZTMwM2UwZiBsZWdhY3ktdHJ1bmsKKzYzOTYyIGJiY2UxOGQwMGQ4NzUyNWFjYWY3Yjc0MjNhMTA1OGRhODAwMjIwMjIgbGVnYWN5LXRydW5rCis2Mzk2MyAxZDBhOGNhYzE1ZWYwNGU3NTZjNmU3ZmIyNDhkMzMzZDkyMzg2MDljIGxlZ2FjeS10cnVuaworNjM5NjQgOGUwYmMxZmMwOTVlNTBmYzQ2NzJmOTQ2NzZlMjJhMjg5ZTA4NTBjNCBweTNrCis2Mzk2NSBhZDEzY2I5ZTk0ZjFiNzRmOWRhMDQ0N2ZiYzZmZmY3ZTg5NDc5NmZjIGxlZ2FjeS10cnVuaworNjM5NjYgZmQ2ZjMwNmMwNGUwMGFmMmE4M2M0YTEyODJiN2FkMTlkODUzZmZjOSBweTNrCis2Mzk2NyAyYTQ5NmYxZWI5ZjE2NGY4NThjMjZiZGM1NzczY2I1ZGRiNDg1MjQzIGxlZ2FjeS10cnVuaworNjM5NjggMGQ3Y2NiNTAwMDdjZTJjMjBmODM3YTRkYWI5MDIyNzY3MjU2YzA3ZiBweTNrCis2Mzk3MCBiNTUzMDllZjU0Yzc3Mzg3ZmUzZGY3ZjlmYzUyZmQ1YjYwMTZjYWE4IGxlZ2FjeS10cnVuaworNjM5NzEgOTQ1ZGExNzI2Y2YxYTA4ZGYyYWU0ZWY4NDE2ZGViZmY5MzkyY2NiMyBsZWdhY3ktdHJ1bmsKKzYzOTcyIDllMjcxY2IyNWU1OWY4OWYyOTZmZDcxMjJjYzdiNDEzOWNkYWEyYTIgbGVnYWN5LXRydW5rCis2Mzk3MyBmNzQ1M2IwYjMzOWUwNWU2NzBiNTdhM2UxNDc2OWE2MTA1ZTk2YTAzIHB5M2sKKzYzOTc1IGIzODJiZWI3YmUzNmYyNTI2ZWE0ZjcyNGU0MDhmZDdlYjA2YTM0ZDkgbGVnYWN5LXRydW5rCis2Mzk3NiA3ODgwYTQyNzcxNTgyYmNlNWY3NTExZTY2ZjQ4NTZjY2FmY2U2NDMwIGxlZ2FjeS10cnVuaworNjM5NzcgNGY1ZTZhYWY1YTZhODBhNjUzOTA5NTVlYmU0ZGJiODlmMTE4MjZkYiBsZWdhY3ktdHJ1bmsKKzYzOTc4IDdhMWQ0ZTgyMzNmODkwMzEyODM4NGM1NzEyNzQ2NTk0ZDdkOTY2YzUgcHkzaworNjM5NzkgMzI1NWYxZjE2MGFkZWRjMTA0MWU5ZWJhZTRkZjQzNTA0ODQ5NjIyZCBweTNrCis2Mzk4MCAxMzBjZTg2ZDYxYjY3OTJlODJhMTBlMzJmYTQ3ZGRmZTg2YWIyNGM2IHB5M2sKKzYzOTgxIGViYmYwMTE1NTBjZDZhOTQ0ZjkwM2M4N2E5MmMwZTM2OTJjY2UxN2IgcHkzaworNjM5ODIgYWY2ODBmZDNmZmRjNzYzNDg4MWNhMWVjMTM0ODk4NTUzMGU3M2EyZSBsZWdhY3ktdHJ1bmsKKzYzOTgzIDllYTEwNGYxZTVjZDI2M2M1NjEwYmQyOWMyN2M4NDk5Y2YzZjVjYzcgcHkzaworNjM5ODUgY2FhOTBjZjZiZTlhM2Q1N2Q0OWY5Zjc0MTVkMWFkYTljZGJkZDU3YSBweTNrCis2Mzk4NiAyMjg0ZmE4OWFiMDhkNTU3NzEwZjQ3MTUwODVmODEyNTUwNzJmNTkwIHB5M2sKKzYzOTg4IDIyMTBmNDJlN2M4OThiM2RhMjMwMGU0Y2I5NjYwNWE4NTA5NGQ4NmQgbGVnYWN5LXRydW5rCis2Mzk4OSAyNDk1NGViODBiOWI2MTdiMzQyNWI2MjNiZTU1NTJjYTBhMjI5NDcwIGxlZ2FjeS10cnVuaworNjM5OTEgZjA4ODUwOGY2ZDk5ZGFlZjJlYzI3MWJhMDdjN2NlNDJhYjMwOGM2YSBsZWdhY3ktdHJ1bmsKKzYzOTk0IGEwMTkzYjA4ZjBlYjhmNzU2ZmJhZTc3ZDZjMWQ4OTc3YTc1MmU0MTMgcHkzaworNjM5OTcgYzlhNWYyZWI3MjBjYzU1YjU0OTRhMmQwYmI5MmQwMGNkYzk3ODcwMCBsZWdhY3ktdHJ1bmsKKzYzOTk4IGM4OTQzNGNiOTE0ZDhjYzk3NDEwMDQ3ZWNlMGE5MmZmZjM5ZWU5NWUgbGVnYWN5LXRydW5rCis2NDAwMiAzYWViYWM3ZjI3MjUyZTQ0Mzc3MGVkZDczNGY1ZjM4YTMwMWZkZTAzIGxlZ2FjeS10cnVuaworNjQwMDMgYmYxNDNiZWIwOGU4ZTYyMWE1MmQxYWRjOWFiOWJkYzg4ODk1NDY4YiBsZWdhY3ktdHJ1bmsKKzY0MDEyIDlmZGEwOTBjMDQ1ZjZlMzE0NGEyM2QzM2ExY2FjYmEzY2U4ZDJkYzYgbGVnYWN5LXRydW5rCis2NDAxNCBlYmY2ZjYzOWUxMTc4NWRiNDVmYWIwY2Y5ZDc5ZWI1NzIyZTMzYmVkIGxlZ2FjeS10cnVuaworNjQwMTUgOWJlY2U1N2NkY2UzMWI4MDkxMmRjZjY0ZTU5NmRlNzJjOGFlOWE5ZCBsZWdhY3ktdHJ1bmsKKzY0MDE2IGIzMmQ3YjgzMjk4YTk4ZTQwYjMxNzcyZmQwYjE0NzU0ZWYzNjY1OTggbGVnYWN5LXRydW5rCis2NDAxOCA3MjAxYzAxOTNhZGVkODNiZGZjN2NmNjgzZDYyNTgzZTU1ZjNiYzMyIGxlZ2FjeS10cnVuaworNjQwMTkgNDBmMmQ1YTRmYWRjYzMzYmUyMDkwMjJiMDgxYjQwYTA4YjIyOTdkYSBsZWdhY3ktdHJ1bmsKKzY0MDIwIDY3NzU2NGEyNzA3YWFjNzFiYjQyMWFkYmYyMGU5OTIxNzQ3M2QwNmYgcHkzaworNjQwMjEgNWY2NWM4MzNkYzg3MDZhMmQ1ZGRhZWFlZTZkYWJlMzU2OThlZWEwMSBsZWdhY3ktdHJ1bmsKKzY0MDIyIDRmNzBhOWRlMjg2NTE5NjA3ZTJjYzE1ZjBmNDRmYjJiM2MwZWRhZjggbGVnYWN5LXRydW5rCis2NDAyMyA3ZDM2MTNkYzNmMWNjZGU1MGNmYTY2ZWI4MzgxMzRkZDkwODRlZjQ4IHB5M2sKKzY0MDI4IDc4ZDNkMzU5NTU1ZWE1YmFmNTczMWM5OWQ4OTFmMGNiZTk2YmMxOWYgbGVnYWN5LXRydW5rCis2NDAzMSBmM2RmNTFiNjBkYzI2MjNiNTU2NTZiY2NkZjYxZTlkOGY4NzVkZmM1IGxlZ2FjeS10cnVuaworNjQwMzIgMjJjZmNlYjMzMzhlNjhhZjg0OTIxMmQxODk4NzE3YjM5NmQwMTdiNiBweTNrCis2NDAzMyBhN2IxNjIyMjc0YjM3NTJkZjBkNmJhZDRiNmMwOTE5YzEwZGQ2OWY0IHB5M2sKKzY0MDM0IDVkMjc0MmUzNjg4NmYwMWRlMDMyYTVlMzUyNTM1NDZmYTVmY2YzMGIgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MDM1IDFmZmU2YWI4NGExYjhlZGMyNDg5MzlmYzZkMTFkY2I4ZmY2ZTNjNDMgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MDM2IDFjMDMwOTBiMmEwYTJmYmU2MTRjOGUzNDJhNjhkZGFmNTlkODlmMDkgbGVnYWN5LXRydW5rCis2NDAzNyAyNGRmMzQzNGNjZjdiYzI4NDVlZTdkMmM2Y2UzMjUzZGUxMTU5YWNhIGxlZ2FjeS10cnVuaworNjQwMzggYzhlMjk1OWU4YjBmMTkyYTRiMzIxOGJmZjlhNjMxYjZiN2Q4NGJhNiB0bGVlLWFzdC1vcHRpbWl6ZQorNjQwNDAgMzFhZWU2NzAxOWEyYWQ0YjU4YzA5YjI4MzA2NDM2YmRiNTMzMzFiZSBsZWdhY3ktdHJ1bmsKKzY0MDQxIDAyNjUxM2JlMzhkYWE3N2JkMGM4ODI0Zjk5OTdhNTkxOGQyMTczY2EgcHkzaworNjQwNDQgZDU2NDUwZGI2MGEyM2YzNDM0ZDZiZDAyMDc0ZTFiZjM1YmM3MDY0YSBsZWdhY3ktdHJ1bmsKKzY0MDQ1IDUzMjUzZjM2MDE0ZTAwMWYxY2YxM2NhYzE5ZWFiN2RhNWJjMDJlMjIgbGVnYWN5LXRydW5rCis2NDA0NiA5NGUzNjMwZGFjYTczMGZjODVmNDhmNTcxNDM2OWVjNGRkMjdkYmQ4IHB5M2sKKzY0MDQ3IDI0NmE4MDI2MzdhZGY3ZWQ4YzYwYjMwNzlhYWVmYzY3OTJiOTdmNGIgbGVnYWN5LXRydW5rCis2NDA0OCA1MjI5NGFmNGI2NjNjYWRhOGUxZmQ5ODg3OWVkYzQ5MTk5NTQ2Yzc0IGxlZ2FjeS10cnVuaworNjQwNDkgN2FjYjdlN2E1ZjI4MDkwNTA0ZDk2MDBiMmFlZGVlYjYwZjRiNTg5NSBweTNrCis2NDA1MCA2NDI4YzRmMWFlMDk3YTQyNWMxYmNlNGVmYzMyZWU5MzJkMzA3MDBlIGxlZ2FjeS10cnVuaworNjQwNTEgZDRjZDcyMjNhZjNiZjI5YzNjYTdjZDVjNzY5YTczMTlkNDFmMWVmYSBsZWdhY3ktdHJ1bmsKKzY0MDUyIDc3MWY3YTgwNDg3NGZkN2RhMGIzZmNlZjg5NWMyZjAyNTMyYWIxM2YgbGVnYWN5LXRydW5rCis2NDA1MyAwMjA1OTI2OGM4MjVmYTM2MGYxMjM1YTIxODY2OTkzOThhZDEwN2NjIHRsZWUtYXN0LW9wdGltaXplCis2NDA1NCA2Y2ZhMjk3YzY1NTUwYzljMmY0MjI2MzA1ODNjMmNkN2M5ZDk1ODczIGxlZ2FjeS10cnVuaworNjQwNTUgMTA1NzdlMjVmNzhmNmMyYTA1YTMyMzRjMjYzYjdmYWFkNzg0OWM1MiBsZWdhY3ktdHJ1bmsKKzY0MDU2IDJkNWYxZDk1NmVmNmJjZjQyY2I3ZWE1NzUwYWRmOTdkOTE4N2I2MGUgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MDU3IGRmOWIzMzdiYTMxMTI0ODlkMjVmM2ZhZDkyMmI3YjQwNWRhYjFiZWUgbGVnYWN5LXRydW5rCis2NDA1OCAzOTM5ZmY4OTgzNGNmNjBjM2YyZTUwMzI4ZDZlMDM3MDgwNDZhZmJiIGxlZ2FjeS10cnVuaworNjQwNTkgMzM0OTJjMjQxZGFiNWNhODEyYzkwZmY0YmNlNmM1YzdkNWQ1YzdhMyBweTNrCis2NDA2MCAxMzllY2RiZjRmMTk2YTJlNzNiZTYwZTNhOGQ3OWMyYjNhYzY1NmRlIHB5M2sKKzY0MDYxIGMxYWViNmM5NGFmMTBmYjdhODExOTI0ODVjNDBkOGJiMDFiMzI4NzkgcHkzaworNjQwNjIgNTNjNjBjN2NjY2Q5ODM0YmE5MWM3NGNiNDgyNjQ5YmNkNDQ0ZWJkYSBsZWdhY3ktdHJ1bmsKKzY0MDYzIDQ5MmY4ZTEzMDVjZjYyZTA2MTJkY2Q1MzI1OWI2YzU1ODk4MWQyYjAgbGVnYWN5LXRydW5rCis2NDA2NCBlZDU3MmQyNjBmYTcxNzJiMzE2NDkxN2IwMTNlNjk2ODBkNjI3NWEwIGxlZ2FjeS10cnVuaworNjQwNjUgODk1ODdlYTE4ZWQ3ZTE4NzRmMTFiYTMzMjljZWViNjU3YmIyMzViNCBsZWdhY3ktdHJ1bmsKKzY0MDY2IDI5NmFiMTAzOGI3Zjc4ODAyZWI5NzQxMTlkOGM1Mjg2NmNiNzQ3YTEgbGVnYWN5LXRydW5rCis2NDA2NyBmNDk4OTUxNmI0ZDZhMjg2NzE0ZjBkNmQyZmNjMDhlY2E0NTMyNzQ1IGxlZ2FjeS10cnVuaworNjQwNjggZGM5ZjRkNmNkM2YxNzI2ODNlZTE5MWMyODkzNzRjYzRjNTViZDA5MCBsZWdhY3ktdHJ1bmsKKzY0MDY5IGNkNWQyNWRkNjEzMTEyZjdiYzk1YzJkYWFjZDJlNDA4MGQ5NmM2ZDAgbGVnYWN5LXRydW5rCis2NDA3MCA4MTNiODdiMTZkYzUwOTAyZjM3OGI4ZDE3YzZiZDVjZTRjNTY5Y2JiIGxlZ2FjeS10cnVuaworNjQwNzEgYzAwNTc2ZTIwMmRhZGNmZGYxM2E0NDlkZDMzOTQyN2U2OTVhYTYzNyBsZWdhY3ktdHJ1bmsKKzY0MDcyIDc1MjEyYjQwOGQ3YmFiYTJjMmMyZjFkZGM0NTVlOWM0YTFlYWQyZmMgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MDczIGQ1Y2MzYzVjYzE4OGVjMzI5ZTUxMzBjM2EyNGI1YjM0OWIxZGMzM2UgcHkzaworNjQwNzQgZGZjMzhlNWFmMTJkMjY1MjA1ZjZiZmNlZDlhYzVkYTFiZDAyYmRiZiB0bGVlLWFzdC1vcHRpbWl6ZQorNjQwNzUgNDA4NGE4NGU0ZDNiNzQwMDNhZDhiZTk2MzY4MjU2ODEwMmRhZmFiMSBweTNrCis2NDA3NiBlZTczYTZiMjdjM2FhNGE2YmYzNWUxYTliZmIwZTgwYWM0MzFlMzNhIHB5M2sKKzY0MDc3IDAzNjdhOTM3ODhkYmFhMTJmY2ZjYzliODE5M2MxZGVkMTg2N2VkOTkgcHkzaworNjQwNzggOTMwZDkzMDhiMzJhYTU2NWM4ZmNjZjE5NjUwZmI0M2JmMzM1YTk3OSB0bGVlLWFzdC1vcHRpbWl6ZQorNjQwNzkgMDllYjhkNjI2MjZhMDI2MzQ5OWVjYzM2YzdmMWUxM2M2MmFhOGFkMyBweTNrCis2NDA4MCBiYmUyMDc3YTQwMWJjNDliMzY4MjMxYjgyMDY2NGUzOWM3YzMyMTc3IGxlZ2FjeS10cnVuaworNjQwODEgN2Q4MjRmZDEzMWFkOTkzMzliYWVlNTk3MzNmMjgyMWU2OGU2ZDY2OCBweTNrCis2NDA4MiAyNmE3MjgzZjdmMTc5YzRmMTQ3YjU3M2RjMzQyNDdmMWIyODhmYzc3IHB5M2sKKzY0MDgzIDk4ODI3YTIxZTM1MjllYjQ1NzZiYjgyNjE0YWM3MThkZDJjZjdiMDggcHkzaworNjQwODQgOTFlYjI0MjA0ZTA4YTZjMGVjZTkxYmYxYWI4ZjRjYjBhNWIzMTdhMCBweTNrCis2NDA4NSAyOTI1YjU2OGFhY2NhNjA4ZmY5Nzk3ZjZjMzYzZDlkNDk4ZjFmMmZjIHB5M2sKKzY0MDg2IGFjZGE0MzI1MjcxMDAxN2JhNzhmMTU1Mjc3NGMxMWY5ZjJjODNlYjIgbGVnYWN5LXRydW5rCis2NDA4NyAyZWFlMzFhM2VmODkzMDBhYmIxMmNkYjBhNjg1ZTA4ODkzZGZiY2JiIHB5M2sKKzY0MDg4IGJkNTg0ZjEyMWM0YjUwMjI0NTAyZmM4ZTYzZDk1NGMwMjA5NjJlMDQgcHkzaworNjQwODkgZmZjNmEyZWY3NmU4YWQ3MjRjMTU0NDZmZDc0MTI4OTA4MjM4ZDIzNyBsZWdhY3ktdHJ1bmsKKzY0MDkwIDZkZGUzOTFiZTk3ZDg4YjdjMWEzY2QzZWU1ODI1MzE4MTFkYTk1MmIgbGVnYWN5LXRydW5rCis2NDA5MSBmNTI5YmYyZGY0MzY4Y2E4OGZjMmNjOTJhYTY4OTcwNzJkN2I3MmE1IHB5M2sKKzY0MDkyIGFmZDNiOGVlZTJmYjk4ODNhMWNlZmE3OTkxM2MxYTQ2ZGY2NGMwNzUgcHkzaworNjQwOTMgZTdhOWVhYjM2M2FkYWE1NzJiNzUxMTcxNzk3MDllMWU3N2U3YTYzMSBsZWdhY3ktdHJ1bmsKKzY0MDk0IDgyNDhjY2ZlYjUzNDI5YmQ2MjI5YmZkNjdlOTcxNjE4OGYyMDI3OGQgcHkzaworNjQwOTUgZWM4MjdmNmU0Y2M2YjY2OGU4MDk0Yzc0OTRlNDNjZDA5YWJhNjFlZiBsZWdhY3ktdHJ1bmsKKzY0MDk2IDBjYTI0MThjNzcwMjU3ZjVkYzcwMDhjZDk3NjgxOGMyMGZkZjkyZjUgcHkzaworNjQwOTcgMjcxODQ1ZjMyM2JlNDMzMmZkNzFmNzFhYjgyMWMzZTQzYjYwOGU2MSBsZWdhY3ktdHJ1bmsKKzY0MDk4IDAxM2JlNjMyMGI4Mjg2ZTQ4OGIwMzFkM2M5OWYyYmI2OTFmOGY2NzAgbGVnYWN5LXRydW5rCis2NDEwMCAxZWFjOGZmMDFkN2IwNjA3ZWRjZDIzZDA0ZTM2ZTU3MDdkZTMwM2NiIGxlZ2FjeS10cnVuaworNjQxMDEgN2Q3MGI1OWVlYWYyZGQ5MGQ0NmRmY2JiOWFkMmVkMjM5NGE0MDVmMCBsZWdhY3ktdHJ1bmsKKzY0MTAyIGRhMzA3YmVlZWJiOTIwMjA0YjRjNzAzNDg2MTVmNDZiOGI4NjhmMGMgbGVnYWN5LXRydW5rCis2NDEwMyAyYTdiNmU5OWNjNTRjZWViNDhjZTljN2NmMzc1NDZhZGI5MTNmZWFkIHB5M2sKKzY0MTA0IDQ1MTFlY2QyNTYzNDNjNmIyNDAyODJjM2NiODUwM2JkMmFkYmY5Y2UgbGVnYWN5LXRydW5rCis2NDEwNSBhY2RkYjAwYjFkZTVmMDQ1MTNkZGJmNmYwZmQxNTZkZGEyM2QwYjM5IGxlZ2FjeS10cnVuaworNjQxMDYgZTgxZGVjY2IxN2M2YjY2NzJmNjcwOWQ4YmJhMzJlODYwMGQ4NTU1MCBweTNrCis2NDEwNyA5NGY2NGYxMWZkZDAwOThlNGFkNWEzZDZmN2EwMDZmMmU1ZGIwMGI5IHB5M2sKKzY0MTA4IDI1MTE0MzE1MTlhMjIxYmMxODY0ZDgwYjE4NDE5YTEyMGJjZGZjOWYgcHkzaworNjQxMDkgODhhNDJkYjM3NzdjMjNiOTQ3Y2VmYmNhMTIzNGU4MjZkY2NlYTgwMSBweTNrCis2NDExMCBiODJlMDU0NWQxMTE1NGE5ZWMyMDgxNTExMjYxOTJiNGFiNmVkNjI3IHB5M2sKKzY0MTExIGI4MzNhNDAwOThjMDBmNzk5NzY2Njg2ZTU1NWFlMzBlMjRiZWE1OGMgcHkzaworNjQxMTIgYjBlZjAwMTg3YTdlYzE2N2I4MTUxOGEwYjBhZTNlOTZjYTdmNmVjZCBweTNrCis2NDExMyAyNTQzYzRjNzk1NDMzYTYzMTRkMDIxOWUyYzRmZmJmZTA2YWFkNTNmIGxlZ2FjeS10cnVuaworNjQxMTQgMWM5NjRlZDM1ZWY5ZmIyNzliNmNjMmRjYTM5YWUwZWVmN2NjMTI1NSBsZWdhY3ktdHJ1bmsKKzY0MTE1IDhmZTQ3YjJjOGJmZTM3YTQwN2RjZDMyZmMyZjJmNzhjM2YwNjc2ODggbGVnYWN5LXRydW5rCis2NDExNiBjYjg0OTRjZTEzMzdjODNmYjQzNjU4ZGEwODEwMWZmYTJhZTRkZjgzIGxlZ2FjeS10cnVuaworNjQxMTcgMGY1NTY0ZmQwNDBhOTRhM2VlOTk4MWUwYzE4NGQwYTExYTIzNGY3NSBsZWdhY3ktdHJ1bmsKKzY0MTE4IDI0NWRjYTI2NzEyZjc2MzEyMjYyNWIzOTQyMTBlYmNiZjk2OTQ0ODMgbGVnYWN5LXRydW5rCis2NDExOSA1MTdlMTQxN2Y3ZTJjZDllOTlhMGU4MzYxMDI4OTBkOWQ0OTk4MmU4IGxlZ2FjeS10cnVuaworNjQxMjAgY2VmOWYyN2E0Y2MzM2ExZmY4NWY4NzIxZTI4ZTU0ODQwODAzOGU0NSBsZWdhY3ktdHJ1bmsKKzY0MTIxIDIxMmExZmVlNmJmOTNmOGI3NGY4MWRkMzU2N2JmOTY0ZTYyN2VhMjAgcHkzaworNjQxMjIgNWM2Y2RmY2Q2ZWFlNDllZmE1YzdhMTUyYmY4MjA1ZjBmYWE3ZmM1MyBweTNrCis2NDEyMyA1N2M5YWJhYjQ4MzJjOGI2MjRlN2NiY2M4ZmNmZTc2Njc5MmM0ZDNhIGxlZ2FjeS10cnVuaworNjQxMjQgNGRkMTAwMzcwODhjMjgyZDE3NmI0ODE2NmQ4ZDg4OGI3YzE3YjgyNiBweTNrCis2NDEyNSBjMzQ5ZjlmYmM3MDQ0NGE3YjM4NWJiZTQ5YmMyN2UwOWRiY2U0NmExIGxlZ2FjeS10cnVuaworNjQxMjYgZTJlYjcwMjM1MzkyZmIwZGJjMTQzZWY0YzNhZWU4MjRjZDE4NWYxZiBweTNrCis2NDEyNyBiNzcyYmVlM2ExMGVmMGMwNTIyZjE1NzMwMWE4MWNkMGM4MWQ5YjAyIHB5M2sKKzY0MTI4IDhkYzQzMTJhMmY3NTc4NTBhNDNmZTVmZjk4ZDk5ZDg3ODRhOWRlN2IgbGVnYWN5LXRydW5rCis2NDEyOSA5MTIxYzVjYzRmMDU0MTBmZmQyMGI4MjVlNWY2YjIyYjMwODNlZTcyIGxlZ2FjeS10cnVuaworNjQxMzAgNzJiNDk0NmM0NDNhZTQ1MjYzZGZlOWEzNWJlMWYzY2JiZWFjMDcxMiBsZWdhY3ktdHJ1bmsKKzY0MTMxIGU2YmVhNzJlOTQzNzAzZWViODYxNTlhY2U3MTAyNzRjODJlY2E1MzEgbGVnYWN5LXRydW5rCis2NDEzMiBlOTM1OThiZDdmNDI4OTI5NmQwMjQzMTZiYzJjNmUyY2QyYzdkOWYxIGxlZ2FjeS10cnVuaworNjQxMzMgNjk2MzQ0ZWY4YmMwNDg4MTVhMGRmZDNmMjQwNmJkMGVkYzRhZWIxYSBsZWdhY3ktdHJ1bmsKKzY0MTM0IDZkZDNlYjQxMTcwYTU4ZGFiNTc5ZDEwMjE5NjMzNjJlMzhjYjA5NzcgcHkzaworNjQxMzUgMjgyMDEwOWM4ZDU1MjhmN2QzN2ZjYmJjNDZlY2IzODFjZDQxOGE2YiBsZWdhY3ktdHJ1bmsKKzY0MTM2IGNjNzJmNDFmZjAxNDFhNDdhYTZjYzhjZDM3NGMxODgwY2MxNzM0ZWUgcHkzaworNjQxMzcgMTc3ZjFhYWUzYmI0NDkxYzAyNmUzZmRjZTdmNDFmODY2YmQ4NTUxYyBweTNrCis2NDEzOCBkYTQ3ZTdlMTM1YWU5ZjMxNjgzYTRhMmIzNjU0MGJkNjdmYjY2NDkxIHB5M2sKKzY0MTM5IDZmM2MxMzU3YTdmYmRlN2ZhMmM2Yzc0NTA5NTMzNDYzM2Q5Njc5ZTkgbGVnYWN5LXRydW5rCis2NDE0MiA2NzM1MzJhYTM3OGIxZjhmZWE2MzBlYWFkM2JhMTVhZGJkNmEyMThkIGxlZ2FjeS10cnVuaworNjQxNDMgNDQ1Y2Q2ZWJhMzMxZTlkNTZiZTgwZWVlNTIwZGFlNzJmMmU2ZjFiNSBsZWdhY3ktdHJ1bmsKKzY0MTQ0IDA0NWY4M2ExYjg2NDFjMjRmNmY0NGZmNjkyNWFiNWYyYTE3ZDY0MzUgcHkzaworNjQxNDUgZDNlMmE4ZTdiZjQ1OTEyMmYyMTNkMzFkM2UzOGJmM2JhNDdhZTlhMSBweTNrCis2NDE0NiAzMmZlZjYzMWY3ODkzNGMwNmI5ZGExMGNhNGZkODU1MTlhOGQxODM1IGxlZ2FjeS10cnVuaworNjQxNDcgN2E1YmI1NTNkYTJiMTcyYmIzYWNlMGQ0ZTE1MGJmNzE2ZWFmMDY3NCBsZWdhY3ktdHJ1bmsKKzY0MTQ4IDRjNmI4YjkzOTcxODE5N2UyNGQ4ZmJkZWJhZTkzOTgwMmY3NWVhNDkgcHkzaworNjQxNDkgNmE3ZWIwYjcwMTk4MDk5YTgzYzgwZmViZjJkMTg0OTI5ZmI5ZjAwZSBweTNrCis2NDE1MCBiNDVhOTUzOTA2MjBhZTY3MDYzOWRhZDc2ZDM3ZmU4ZDQ1M2NiZDMzIGxlZ2FjeS10cnVuaworNjQxNTEgZjc1MWRhYjcxMzAyNGQ5NGVhY2JkMmU2YTZiMGM1NTE2MDIyNGZiOCBweTNrCis2NDE1MiBhZmRkNDljNDc1OTlkOGJhZjU2ZmI4NTcxYWM4YWQ2YzMxNWI0NDgzIHB5M2sKKzY0MTUzIDhiMGUyYzk2Y2U4MGUwNWNjZTc3ZTMxOWI5MmQwMjdjZmIxOWUzOTUgcHkzaworNjQxNTQgMWJmZWE5NTZkMGQ3MDk5YWQ5YjU5M2FiOTE4MWQ1ZWM4MjAzMDRhNyBweTNrCis2NDE1NSBiZmI4Mjc0ZTM5MzlhOTQ5YjRjMGEzNzk5NzdjMWJmOGFmNTk3OWQwIHB5M2sKKzY0MTU2IDdiM2EwMjdhYjc4NWI4NDUwYTMxZGZlY2JhYmYyM2Q0NTNjZGVjNGEgcHkzaworNjQxNTcgZDE1ZDg2ODBhMDBhNjBjZDE5ZGI4ZTQ1YTAzOWUxZWMwZjQxYjE0YSBweTNrCis2NDE1OCBmNTI4MTNmNDMxODlkMjNjMDg0YTA2M2Q3ZWIyYWI0YzliMjg2YWM3IHB5M2sKKzY0MTU5IGEwMjFmZjExNzE4YjZhOTVhOGUxZjE3OTY5YWM1NzczODNmZjc3NmIgcHkzaworNjQxNjAgMzhkMTc2ZWJiMmZhYjk2M2ZiM2ViNWQ2ZmYxMDM1MzE4ZTU5OTU3MCBweTNrCis2NDE2MSAxOGVhYTFkNWYzOTQyOTgxOGU4NGVlOGZlZWMyZmU5OGUxZjI2MGFhIHB5M2sKKzY0MTYyIDVhZjE1MDg5YTEwMDY0OGI2NmYxZDY0MWIyNmVhYjliZmJjZTI1MWEgcHkzaworNjQxNjMgODA5NzVlNjFmOGM4Y2RlNWI1Mjk5YWI5YTVkZGRjZTI1YzVkNThmMSBweTNrCis2NDE2NCBmMzFlMzJhMjAxM2NmNDBhNDk4YjcxYWY0MjMxNzk3ZmJkNWUwNzYwIHB5M2sKKzY0MTY1IGY2YWVhODA4YjM1Nzk5OTMzZGUyZjAyNWQ1NDg5YzM3YWFiYTE0ZDMgbGVnYWN5LXRydW5rCis2NDE2NiA1MjU4ZDRkN2RlNzdiNDk4NjVlMDUzZDc3NWYxODQ4ZmIwNDZjMDFiIHB5M2sKKzY0MTY3IDVmNGE1MWY2MzlmMWQ1ZmU3M2E5ODA5ZGQ1MTY5NjkzYWRjMGE3NmIgcHkzaworNjQxNjggOTFhODgyMDBmZGYwZGQ4OTM0ODM4OGIzNWZkYjUyMWQxYjI0OTY1MiBweTNrCis2NDE2OSA0NDAxOWUzN2FjOTI1ZTU1ZTQ4OTliZjIzNTE4MjQ1NzRmMTM1M2I3IGxlZ2FjeS10cnVuaworNjQxNzEgNjUwYjNmNjg0NWY5MzFlOGJjMzFlNGRlODcwYjhjMWRlYTNiZjg5NyBweTNrCis2NDE3NiA1YTljZmY3ZmQwOGY1Yjc5MTdmNzA3NjBlYmUwZjM3NWQxYjk4NzEyIHB5M2sKKzY0MTc3IDU4NzBlYmUyNWRkMDkxYTViZDU4YmI1MWFkN2YzOGVhZWQxNGJmMTYgcHkzaworNjQxNzkgM2EzZTIzMWI4NjZmYmUyYWZkZjM5MDFkMDdmMTY3OGUwNDE1ZjM1ZSBweTNrCis2NDE4MCAwYWU1MGFhN2Q5N2M1Mjc3ZTdiZjhlZjg1ZDliYmM4YTVhZWE5YTc4IHB5M2sKKzY0MTg0IGIzNzY5YjZiYWUwZjBhZDc4NzNiNjA2ZjFhYzYzNGJmNTNmYzUzZWMgcHkzaworNjQxODUgM2Q2ODY5ZTJjOTJhYzk5NjlhY2U4YTY4ZDJkMzk4YzIzZGI3NWZkYyBsZWdhY3ktdHJ1bmsKKzY0MTg5IGU4NmYzODU4ZGYyMGNhOTNkNmVhYzA0YjAzM2M5NTdlYTc1MTFlOWUgbGVnYWN5LXRydW5rCis2NDE5MCA1MDNmYjNjNWUwODE0YzEwNWYyZTU5OGUxYTcxNjE3NGM4YTEwNTY4IHB5M2sKKzY0MTkxIDMwMTdlNzk0YmJiOWFjMzVkNGE4ZWZjZTc4ZDE5MTE4ZmFlZDJlMWMgbGVnYWN5LXRydW5rCis2NDE5NCA0MTQxNDkzZGQzYTA1NTZhYmIyMzcwYmYwY2NiNmY2YzU5OTAzZmIxIGxlZ2FjeS10cnVuaworNjQxOTUgNDE0ODRkMTgzOTBjZmMzMDYyZDkxMjMwYTBlZGQyZGQ1OGMwMGQyZCBsZWdhY3ktdHJ1bmsKKzY0MTk2IGY0ZmY1OGUzNDZlZTQ5M2ViYTQyY2UzNjBkODQyNTg0YWIyZGE0YWMgbGVnYWN5LXRydW5rCis2NDE5NyA5N2NkOTUzNjdkNjBmZmI1ZDc0MTY4OGU4MjZjMDVlOWQ1MDY0Njc5IGxlZ2FjeS10cnVuaworNjQyMDIgZTI0ZjI2YzNjY2U0NjQ4ZTc2NzExODdiODM4YjcyOGMxODFkMTE1ZiBsZWdhY3ktdHJ1bmsKKzY0MjAzIGQ0MDdmOTU4YzEzNzRlYzlkNjRmNjQxMWZiYWRkMjRhYTMwZDFiNmEgcHkzaworNjQyMDQgMTA5ZTk3NDhjN2Y0MzUxYmY2ZjJhZDNiMzNlYzJlZDEyMmQyNWRmZCBweTNrCis2NDIwNSBmY2RmODE0YzliMTEyOGEyMTkzYjk0N2Q0Y2YyYWI2ZmFkNWM5YmNiIHB5M2sKKzY0MjA2IDY1ODVmZDFkOWFkNzEyM2Q2Y2FhOGM3NDRhMWVjY2M0ZmI2ZjM0MDQgbGVnYWN5LXRydW5rCis2NDIwNyA0Yjg2ODJlYTM3YzFmNDI0OGRkNmM2OWY5ZmU1ODg1NmU2MTdiODhjIHB5M2sKKzY0MjA4IGZkN2ViMjc0MTAxMjFjOTVkODAyOGU1NjdhZWQxNzkyNWQ3MmZkMjEgcHkzaworNjQyMDkgNTcyNmU5MTU3YmYwMmZiNWQ4N2RkMzdmMWI0NjQ3YmM5M2ZjNjdjNyBweTNrCis2NDIxMCA5MmI3OWI2ZDFhM2I5YmJkMGUxOGE4YWZlNWFkYWQ0OThiM2UwMjZhIHB5M2sKKzY0MjEyIGRiOTlmODc1MjcxMDZjYjczYmU2YTdkMTZiNmYxNDE4MzZlMjY0OTYgbGVnYWN5LXRydW5rCis2NDIxMyA3MWNiN2VhNGYxMTAzNjc1MjRmYjNiMWFiOGRkM2UxMzhmMGNmYTgxIHB5M2sKKzY0MjE0IGZjZmUxMGYzZGMxNDZjZjUwNWFjZWZiZmJjOWJkZjg2ZTdjODNkNzEgbGVnYWN5LXRydW5rCis2NDIxNSBiMWY0ZWE0ZWI1NTU2Mzk5MzQxY2Q2ZmZlZTVkNDZhNDczOTI4NDA0IHB5M2sKKzY0MjE2IDljNzllZTQ5YTJkOTUyYjhlYWZmOTgzNmYwMmNmOWVmMWU3MDg2MTUgcHkzaworNjQyMTcgMzE5ODhiNDAxNTM1Nzk1NDZhNWUyMTNlNzc3ZDk1OGJkMDkzMDA2NyBweTNrCis2NDIxOCAxMzA3MWFkZDhmNDhhZTU4Y2E0NWJiZjM4Yjc3MGQzNzZmYmFjMTcwIHB5M2sKKzY0MjE5IGUzMGFmMzI2NGEwZjU3M2FjMTAyODljNzhlYzkwMmUyNmUxNWYyMWYgbGVnYWN5LXRydW5rCis2NDIyMCA1ZWJjZGViMGNiMjZjNjdhODUxZDg0MzEzNWZkYTE2YTU2NjJiZDM4IGxlZ2FjeS10cnVuaworNjQyMjEgMTQ2NDM0NWExOTY4M2I3NGI1YWZkZmFhMDEwZTExYTYwOWYyYWFhMyBsZWdhY3ktdHJ1bmsKKzY0MjIyIDhmNjFhZTAxMTMwZjg4OTM5ZGE1M2M0MDI2NmUyNzFlNmUwM2Y2Y2EgcHkzaworNjQyMjMgZDVhYTI1YmY5MzYwM2ViNGUxYTgyODJmYTU1ODU2OWY2Nzc5MTFmMiBsZWdhY3ktdHJ1bmsKKzY0MjI0IDM4ZDA0NjdmNWVjNzY5ZDRkNGNjYzg1ODlmNzM3ZWJmNDQ5YzU0MWMgbGVnYWN5LXRydW5rCis2NDIyNSA3YThlZTA1YzY5N2Y1MGYxMjJkYzEwYjExNDRmNWIyOTNkZTcyN2Q1IHB5M2sKKzY0MjI2IGEzNWRhOTRlMDVmYzVhNThlZWE3ZTZjMjg4NTA1MzEzNDRhYmFlZWUgbGVnYWN5LXRydW5rCis2NDIyNyA4YzYwNjhmMTRlZThjZWYxMDEzZTBlMGNiYzE0ZDViZmIxOGUwMjAzIHB5M2sKKzY0MjI4IGI1ZTAyNzc1ZmZmY2IzZmM0Yjk5ZjUxODE4MDhmOGM3YjEzNGNhMjYgcHkzaworNjQyMjkgNjQzNGRkNzA0ZDYwZWE2MDgwMDM4M2FlYjY0MGI0ZTEyZmU4ODBkNyBsZWdhY3ktdHJ1bmsKKzY0MjMwIDJkZmFhMDY4M2JlOGI2NjNkMDYwMzg0OTcyYjAyZDAzZGMxNmYzODcgbGVnYWN5LXRydW5rCis2NDIzMSA0ZGE4YjdhOGNmMmU5NGJiZGM1NjVlOTAyNThmZmMwMWM5ZjJkZWQyIHB5M2sKKzY0MjMyIGExMDY4OGFkY2RkNjI1MzZmYmQ5NWVjM2FjZTlkOTFkODgzNTYwYjggdGxlZS1hc3Qtb3B0aW1pemUKKzY0MjMzIDE2OGM5ZTk2NzcyYzU3OTcyYmZhNzliZmI4OGNkNDZlMmFhYWNlMTEgbGVnYWN5LXRydW5rCis2NDIzNCA3ZmQ5ZTljYmQ3MjE1M2FkOGQ1ZWRmNTg1OWJlYjI0OTg0YzdhMmQzIHB5M2sKKzY0MjM1IGEzMzNjODc3MGUzMjEzMjczOWRkYjUwNGZjNjI1NmM4ZjdmNWM0MDkgbGVnYWN5LXRydW5rCis2NDIzOSBmYWE3Y2E1MjQyNzE4ODQyMmVkMTE3YWQ3MzY4NzFjYmMyZDBhNzc1IGxlZ2FjeS10cnVuaworNjQyNDAgY2RiZjEyOTEyZDRiODJhNDQ4ZTdmODY3ZjczNjJiYTcwMTM4MjE2ZCBweTNrCis2NDI0MyBmNTI1NDlmYjc0YTI2NTE5MTFhNmQ4OWIxMjE5MWRmZWJhOGU4MmE1IGxlZ2FjeS10cnVuaworNjQyNDQgYjkwNWNiMjc5M2NjOWFhZjNhZDVkYjQ1MzQzMzI2NGZkODQ3YjcyZSBsZWdhY3ktdHJ1bmsKKzY0MjQ1IGJiODE3YTVkNjhiN2MzMDgzZDIwZjc0OTY0YTcwYWJmNjg5ZDViYzkgcHkzaworNjQyNDYgYTQ1MGRhMjQwMDg5NmQyNDMzZjAzZWZjY2M1ODg0ZDJiNzc3MzAzNiBsZWdhY3ktdHJ1bmsKKzY0MjQ3IDg3MTQ3ZGI4MmViMWUzMzIyNjNmM2E5NGVjZjVjY2Y0OTI0MTY1N2QgcHkzaworNjQyNDggYWY4ODczZGYwMzIyNWVjMTBmY2RhNjRmOWQ4OGVjZWMxYTI2MWQzMCBsZWdhY3ktdHJ1bmsKKzY0MjQ5IDliOGZmNzNkMDE4ODU5Mzc2YzkwZjY1MmI2ZmQwYmZiYzY2N2RiMGQgcHkzaworNjQyNTAgZDAxMTY1ZmFlOThlOTAwNGUzZjgzNTliOTNhNjY3ZDE0OGFjN2UwYSBsZWdhY3ktdHJ1bmsKKzY0MjUxIDQ2ZTU4NDYxNTBkNWU5NWY4YTJhMTIwNGJmZWRlOThkNDJiYjFmYmYgcHkzaworNjQyNTIgNmQxZGM3NjFhYjRlMDg4OTg5ZDc1NDRiNGUxZDJiNzliZGYwNGRlOSBweTNrCis2NDI1MyAxMDY5NTc4Mzc5YTAxMmNkMWM5ZjhjMjRhNTM5ZjIwYzk0N2UzYzgwIGxlZ2FjeS10cnVuaworNjQyNTQgNDQ2ZDVjMjk5MDhhYTk4NTJlODM0YjNmOWYyOTRhNjYxZWU4YmZlZSBsZWdhY3ktdHJ1bmsKKzY0MjU1IDJmMTZjZWEyMjRmNWNjNDg1MjQxOTIyM2NkZjBkYjY3NGNjZGUxYjQgcHkzaworNjQyNTYgZGZmNzYyYWRmOWQ2MTEyMmE0ZWI2NjVjMGEzYWVkNGE2MWViMTRkMiBweTNrCis2NDI1NyBmMzZmMDkyZGJlOTc4NDZjMjI2ZTEwOTgzNmUyN2M1YmMzZWMxYzVlIGxlZ2FjeS10cnVuaworNjQyNTggYWJhNThmMjhlMTY2YjNmN2FlNzY5NWI4NTVlZTNlZjQyODc3NGIxOSBweTNrCis2NDI1OSBmMmUyZDViOTY0ZGUzOGMxZDRhMjk5MTA4NTdlYzhmMjY1ZDBjNzNlIHB5M2sKKzY0MjYwIDM3Y2Y1YTFlNjM5ZTkwZWZjY2RkYzNmN2IxZDZhY2FlMjk1YzU0MGIgbGVnYWN5LXRydW5rCis2NDI2MSA1N2FhODczZDk2ZmNhOGI5MjA0MDc0ZmM4ZjQ0MzUxYzJhM2EyYmVjIHB5M2sKKzY0MjYyIDA5NWI4NWQ3YTAxNDFlM2Y3ZWZhZDkxNTZkYmZmMjk2YmQxODgzNDQgbGVnYWN5LXRydW5rCis2NDI2MyBlOGRmOWU0ODczYjQ3ODAxM2ZlMjk5N2Q1ODU5ZWNkNWRmZDYyZGUzIHB5M2sKKzY0MjY0IDEwYThjZThkYjZiZmI0ZjdjNjExMDJjMzFjNWYwMmM3Y2MyOGY1NWYgcHkzaworNjQyNjUgNmYwZmUwNjZhODRiYjUwNGU0ZGI0NzFlYmY1ZGQ1ZDlmYzVlZWEyYSBsZWdhY3ktdHJ1bmsKKzY0MjY2IDYxZTUyODZkOTM3YzhhY2VkNjkxYWExZTM2ZjIzMzYwNjQwZTk4M2EgcHkzaworNjQyNjcgYWEyNTAzMTg4YmYzNGQ4OTI4ZDcxMTU5NWFmNDQxYmQ3NjVhZjk5YyBsZWdhY3ktdHJ1bmsKKzY0MjY4IGM4ZjhhNTc4YzAxYjk4YWRkY2EyMGRjNmYxNmRkMzk1MTFiN2QyNmMgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MjY5IGU5YzkzNWNkNzg4OGFlYmY5MGUwNTc5ZTI0NzgxMjA2ZmI2MmMwMmMgbGVnYWN5LXRydW5rCis2NDI3MCAxODk4NjdhYWJhZmEzNzc4ODNmZmI1ODUwM2Y3OGIyMzU5YmYyZDQxIGxlZ2FjeS10cnVuaworNjQyNzEgYjViZjE2NzkwZTNjNjlkMWY1NWQ0YWRkYTk4ZDQ5MWYxMmMwMTM3MyBsZWdhY3ktdHJ1bmsKKzY0MjcyIDUxNmMxOWQ4NTkxYTliNDYwMzVkODUyNTVhMTMyYzBiM2Y5NDEwMjMgbGVnYWN5LXRydW5rCis2NDI3MyA5NmJmZjdlMTM3ZmJkMTIzMGQzZDU4NDQ2ZjI4MjZkNzc1ODU4N2MwIHB5M2sKKzY0Mjc0IDRiMWUwMTUwNWQ0ZDM3ZTk5ZjE3ZWEyZWM0NDEwYzBlNjcxZjhiNDIgcHkzaworNjQyNzggOWFkNjkxMjdlNmFhNjU0YTM2Zjc3YmY0OGJhNmEwNTRhZjg4NTRhNiBsZWdhY3ktdHJ1bmsKKzY0MjgwIDkxNTVmZjc4ZmQwNjRkNjgwZjczMDhmM2RmYWE3OTExOGNlYTYzMDUgbGVnYWN5LXRydW5rCis2NDI4MSA3YmE3OTAxZGFkN2Y4YzZiNWEwYTJjYzRmNDA2OTNjMDZhY2YyNmI1IHB5M2sKKzY0MjgzIDI1ZmEzZGQwMjFmNTJhYmUxYTI2OTk2MGM2OWVkNGUzNmI4YzFmNGYgcHkzaworNjQyODQgYjMzZTgzMzRmODJmNzllMzM3N2EwNzg3NTVhNjdlOTRlMjQ3MzliZSBweTNrCis2NDI4NSA1Y2I1MGU3YTk4YTI4NThhOTEzNzQyODAxMjE5OGQ1MThkOWU4MGI1IHRsZWUtYXN0LW9wdGltaXplCis2NDI4NiA5OTFjYWFkODFhMmRhNmY1NWZjMDE2ODBlNThlODc3MTJlNTQ3YmRiIGxlZ2FjeS10cnVuaworNjQyODcgNGUzMDRhZGVkN2E4NTBiNGJmNjcxZmY4NmNjMDc1NjZkMGFjODgwNCBweTNrCis2NDI4OCA2MTNkYWY3ZjhlNDg2YjQ3MTE2NDExMmE4YmU3YmIwNjU3YmY2NTVmIHRsZWUtYXN0LW9wdGltaXplCis2NDI5MSAxNDM1MGU3NWQwMmE0YmUyZGIyZWQxZmU3Y2Y0ODEwYTQ1M2FhMmNlIHRsZWUtYXN0LW9wdGltaXplCis2NDI5MiAzODZhNzI5ODRhZjVkY2YzNWQwYjA0MjMwYjliYzliMWUwZjM2NDM0IHRsZWUtYXN0LW9wdGltaXplCis2NDI5MyBmNzdmOGU3OTk3MTQ5NGZiZmZhZGFmNGQ3N2NhMDg2NWVjZDQ1YzU1IHRsZWUtYXN0LW9wdGltaXplCis2NDI5NCAyNmU5Yzg3MWQyM2ZhMTI4MGQxMzNlYTk5M2U2YTNmMDkyM2YyNTliIHRsZWUtYXN0LW9wdGltaXplCis2NDI5NiA0MGQ2MDFkZTI4ZGMwODE3NjY3NWQxMjM2NmY2MWE0YWZlNmIxNzk0IHRsZWUtYXN0LW9wdGltaXplCis2NDMwMCA2ZjZmZWQ0ZjA2MjZiNDc3YWVkYmJmODRkODBjM2RjYzc3M2ZmZTg0IHJlbGVhc2UyNS1tYWludAorNjQzMDEgYTZkN2JmY2Q3NDU2OTFlMGE0ZGRjMDFiMjJhOWQwOTYzYjUyODBmZSBsZWdhY3ktdHJ1bmsKKzY0MzAyIGVlMjgyM2UxZjIzYjY1ZjhiZDQwZmU3OGJmYzA4MGRkYjljMjEwYjggcHkzaworNjQzMDMgNDY1MGVlZmI1ODM4ZTljOTYwNGI4MWJmNjA2Nzk3YjEzYmZlMWM3NyBsZWdhY3ktdHJ1bmsKKzY0MzA0IDM4NDMyODYwYjNiNDY4Yzg2NzZlZjE0ZDM1ODQwMzU5ZDBhNjkxZmQgcmVsZWFzZTI1LW1haW50Cis2NDMwOSBiOGU5Y2MyODAyMmM1NGY0NzEwMDI4NGViYTQwNjIwZTFlNjZiMDM3IGxlZ2FjeS10cnVuaworNjQzMTAgNGVkMTY1OTQwYmRkMDE5MjUxZGIzYTg4YzQ3MjUyNjAwMTcxMWU2NyByZWxlYXNlMjUtbWFpbnQKKzY0MzExIDVjODVkNTVjNGZiMmJkYTQ5NWVjM2Q3MDRjODUyMTExOGJlZjg1M2QgcHkzaworNjQzMTIgNTY2YzcxMzdhYThkYWVjNTRiOGJlZTFmYjI4Mzk1NTA5N2Q5ZmQ3ZiBweTNrCis2NDMxMyAyZTEzZmZhYjE5OWZmYmMyYzg5NjhiZjU0OTIwYTc2ZGMzNzc0YWRkIGxlZ2FjeS10cnVuaworNjQzMTQgNjA5YjA5YTlmZWViNDFmN2YyMzM1MmZmZTk4ZGU4MWQ0MjhhZWFhNiBweTNrCis2NDMxNiA4NDU5MGE2NGYzYTIyNjQzMzY4NDBiZTkwZDI5ZmJkZDc4NDhmODViIHB5M2sKKzY0MzE3IGY4YTg4OTRkYTc3YTRiNzI3NjViOGZlYzk4YzE3NTNjOGQ5NGY5MzQgbGVnYWN5LXRydW5rCis2NDMxOCBhMjliZjY5ZmIzNDQ2NDdjNmZmMDE3MzZmNTc5ZjgyYjJmMDJhNDI3IHB5M2sKKzY0MzE5IDMwMmE2ZDc2MzM3ODQwNjVlMjMxZWU4ZGEzMDBmZjcwNjE4MmE5NWMgcHkzaworNjQzMjAgYzA3NDE4ZGUzY2QzMzI4ZWM5NTM1NjZmY2IxMTA4ZDc1OTViNTg2YSBsZWdhY3ktdHJ1bmsKKzY0MzI2IGI4YzlhMzU0MzM4MTNiMjgzNTg5ZjVhZTY5NjgwY2MwY2M0MDllNWUgbGVnYWN5LXRydW5rCis2NDMyOCA5OGQwMTJhOGU0NDVmMDhiYzIwZDE4YmRkODg1M2Y0YjNkY2U3YjU1IGxlZ2FjeS10cnVuaworNjQzMzggOGU4NWM0NmNmNjczYzI2N2VhZmYyZDMxMDkwOTQ1YTVlZjI3NmY5NSBsZWdhY3ktdHJ1bmsKKzY0MzM5IDI4YWJjMjAyYzc3MTA1OTcxMmU5NzlkMjI5YmQ4ODZkOWRhNTM3N2MgbGVnYWN5LXRydW5rCis2NDM0MCAwYjFjMDFlZWM3ODg1MjlmZGYyNjAzNGU2ODk2NDgwNzAxZDAwNDNhIHB5M2sKKzY0MzQxIDAzNjM5YjA5YzM3NjAzMjhhYTZmMTFjNDkwMTRkOTE5ZGU4ODJjZjMgcHkzaworNjQzNDIgNDBhNzU5MTNmMDRhNjRiNGZmODFkMDRhMjZiNmY3ZjNkNTdkMWEzOSBsZWdhY3ktdHJ1bmsKKzY0MzQzIGY2NDk5Njc2MDk4NDcyODM5N2U3NmIzODVhYmE2ZjQxOGUxNGJjYTEgcHkzaworNjQzNDQgNmYyN2Q1MmU4ZDk1NmUzMjM3OTU2ODZhZmExODlmYjE4YjE5OGRkMiBweTNrCis2NDM0NSA2OGQ4N2JjMDZmYTM3MGQyNWMwMGU5OGU1MDBlZDVlOTJiYmMyNTE5IHB5M2stdXJsbGliCis2NDM0NiA4NzAwMTE4OTk5NWMxYWUwOGFkNjNhNjE1MDkxM2JmNDIzOWJhNGY4IHB5M2stdXJsbGliCis2NDM0OCBmNjcyNmYzMmVmNzA0NzdiZjNhMzhkY2M4NjE3YmNhNDU0MTlmNWI3IHB5M2sKKzY0MzQ5IGNhMDc0MjMyYjg3OTc2N2EyODFjNzZkOGEyMWYzYzE0ZjA3NTMwNTAgbGVnYWN5LXRydW5rCis2NDM1MSBlMzljODEwYTdlYjI3NzkxODAwNTdjYWZhOWRkOTg2ODk5MmU4Y2IwIHB5M2sKKzY0MzUyIGVmODgzZmI0YzA3NmRkNmY4NzViYzU5YzhhNGVjMmVhNzEzNGU4M2IgcHkzaworNjQzNTMgNzBkNzJhNzVjY2YxZTZmMDZkNDIwMWQ3M2QzOWY4N2NmNWY0YTc5OSBweTNrCis2NDM1NCA1Zjk0MzUzMTdkZTE3MDU1MjkyOTliNGRiMzE4OTZlODk3YzdkNzA1IHB5M2sKKzY0MzU1IGEwNTIzYzdjMWM0Zjc4NDVlYjY1NjNlNWVjNTQ3OWRkODU2MGRlZTAgcHkzaworNjQzNTYgYTE3NDE2MTdmMDZmNGQ1NGNmMWYwYzM0NmE1ZjIzYzBkYzNiYzg4YSBsZWdhY3ktdHJ1bmsKKzY0MzU3IGRmNWJiMGE2NTk0YmI3YjExNzk5NmZmMzQ1ODRmNzUwYzc4ZTE2NmQgcHkzaworNjQzNTggYTRiOGRiZTFiNjMzNmYxYmNiYTc1MDczYzMxNGVjNTYxMjcxOTM0OCBsZWdhY3ktdHJ1bmsKKzY0MzU5IDE4N2E4MWRkYWYyYmRmOGNlYTI1ZDlhMTZlMTY2NDVjYjZiNTk5ZDAgcHkzaworNjQzNjAgMDNhOWE5ZDMwODFlZGFiNjgxZjUxODcyNjk3YTUwNTI0NmUzNmUwMyBsZWdhY3ktdHJ1bmsKKzY0MzYxIGE0MDhhMDVkMGUyNTFiOGI2MDk2NjdkNmM5OTc1OTIyZTdkNzg0MWUgbGVnYWN5LXRydW5rCis2NDM2MiBkNTJhNzNkOGQyMGYwMzJiOTNkNzU4NmY4ZTBiZDBkMDIyZWM3OTVkIHB5M2sKKzY0MzYzIDY2YzhmNzZjYWM0NDZkMWE0M2Y3YzRkMTc4MDkzMTEzMWQ0ZjI0NjMgcHkzay11cmxsaWIKKzY0MzY0IGFjODU0Y2RlMzEzNWU1N2VjMWY0ZmM5NWFlNWQ3NDQ5NTBmM2M1MzEgcHkzaworNjQzNjUgNTY0YzI5YTBmYWIxYTA0ZmE5NDJkMjNhY2M5NGU0YjJiZmRmZWQ4NSBsZWdhY3ktdHJ1bmsKKzY0MzY2IDBiMTQ5ZmM0MDE4Njg2ZmEyNTc0ZjJhYmRlYTQ1YjBkY2VjNjQ4OTQgcHkzay11cmxsaWIKKzY0MzY3IDI4ZjU2N2E0MTNmNDE0YmNjMGUyNGQwZjhlNThiYmNmNzQxZjBlZTMgcHkzay11cmxsaWIKKzY0MzcwIGFiMTJlM2FkMmU2NjVmMmUyYzVhYWU5YmIzMTYzZGY2NTQ2NGQxZGMgbGVnYWN5LXRydW5rCis2NDM3MSBiNGQ4MjM0ODM0MjFlYjQwNGE3MDY1YzkyODA5MDU0MWZmMGQ0NDQ3IGxlZ2FjeS10cnVuaworNjQzNzIgYTY1MDNhZTNlMTljMWZmY2Y3MWU5ZDViOTI4MzI3NWJmYTE5YzBiMCBweTNrCis2NDM3NSA2YjdkZGMwZmRhOTM3ODI5NWY3N2Y3YmUwODNjZGRkNjIxYjU5MDJjIGxlZ2FjeS10cnVuaworNjQzNzYgNTcwMmVkZTQyMjdhNDFiZmVjYzMyNTFiZTU2YmZkYmU2N2E0YzUxMyBweTNrCis2NDM3NyA5NTQwNTk3OTEwYjk2OTVjMWZjNjlkZmYzNzkwZGQ1MGM0MDU2ODRhIHB5M2stdXJsbGliCis2NDM3OCA0ZGE3NzE1ODhiYTMxMDA2ODhkNWVhNjE2ODE3OTRjMjQyZDQ4MmMxIGxlZ2FjeS10cnVuaworNjQzNzkgMTU4OGUyZmEzZTdlNzRiMmJhMmYxMjM0YmMwYjk3YzE0MDM4ZGUxNiBweTNrCis2NDM4NCA2YWZkZDZmZTU1MTJkZjRkYTE1MDRjMTNiMDMyNmIxNDNiYjBjMzc5IHB5M2stdXJsbGliCis2NDM4NSA1YTQxNmE2NDE3ZDM4OWNjYmUyNDY4Nzg1NWJmOTdiZWVjYjNkMDQxIHB5M2sKKzY0Mzg2IDc0NGY5YzgwOWYzMDNmNDA3MTViYmYyZGFkYjZhZTY4NTkzNGZhZGIgbGVnYWN5LXRydW5rCis2NDM4NyAwMzIyODA4YzIwZmVlNjg1NjMwN2QwM2YxYzI4YzVjOGUxYjMwYmY1IGxlZ2FjeS10cnVuaworNjQzODkgNjkwNDAwOTJiOGY4MzE3NmM5OTNlOTMyODFkOWQwZTdlNzAyMTkxOCBweTNrCis2NDM5MCAyYzEwNjgzMjhiNWJhNDc2YjE3Mjg5MTM5OTg2ZmYyNjllOGZhNjc0IHB5M2sKKzY0MzkxIDA3Zjk0NzI2MDE3ODNlMTJjMjhjODc4YWY4YzQzMDg0YTZkZTczNzcgcHkzaworNjQzOTIgZWExOTRjOWE2YzJmOWRlNDQzYTE1YmYyNjkyMjI5NGRhZTM5MDBjNyBsZWdhY3ktdHJ1bmsKKzY0MzkzIDJkZGQ4NmUzNzAwYzIwZWRjYWRiMjg1MjZiMzdlZWNiZWRlOTMzZTEgcHkzaworNjQzOTQgNWJkNDNlYjllNTIwYzI3NjI3OWMzZjc2YTgxMjg4YTkxZTVhNTlkMCBweTNrCis2NDM5NSBhMzM1YzRkNjQzYjFjZmUxNDE5N2E5ZWYxOTVjOWIyODA0ZjYwOGZjIHB5M2sKKzY0Mzk2IGIxZWQyYjAwNWUzZGJlYWRkZjU0NjRjNTA1NTIxYzNmYTU5NDBjMzIgcHkzaworNjQzOTcgMDczMDIyNGVjZjVmZWUxYjA3Y2E4M2RkOGFiMDI2N2ExOTI1NTA5ZCBweTNrCis2NDM5OCAyZjJmMzJhZjhjNGVlOGY2NTk4ZjYzMmRjODM3MDFhMjA3MjZkMTBhIGxlZ2FjeS10cnVuaworNjQzOTkgMjU4MWVlMWYyNmY5ZTRiOGRkMzY3MjlhZGJhYzcxZmIxYmEwNmZiNCBsZWdhY3ktdHJ1bmsKKzY0NDAwIGVjZmYxYTFhMDdiNTU1Zjg1ZTg2MTg3NmY2NmYyYjVkNTRlOTMzZTEgbGVnYWN5LXRydW5rCis2NDQwNSBiMzRiYzYzOGI4YTdjNzhiMTkwZTNkOWY4NmE1NjkzODA3MjMxMGNjIHB5M2sKKzY0NDA2IGJlMDdmMzc5ZDg3YWRmMGRkNjRlNjhjNmU2OWY3ZDA3YzVjOTZkZmUgbGVnYWN5LXRydW5rCis2NDQwNyBhNGJlNGIxNzQ3NzExZGUxNGUxYjljYTU0N2ViZGIzY2Q2YmUxODRmIGxlZ2FjeS10cnVuaworNjQ0MDggZTEwNzA2MmFhOWNkNzc4Njg3ZjdhYTM5NWM4MWY1YjMyYWU1ODljMyBsZWdhY3ktdHJ1bmsKKzY0NDA5IDlhZjBkNjViYzNiMjc4NDYwNjAzM2UwZmY3NWVlMmI1NjM2NGNhZTIgbGVnYWN5LXRydW5rCis2NDQxMSAyN2M3OGNiZmE3YzY4MWI4YTM3YjIyMzEwZDUyMThjZWQ5ZTM1N2JkIHB5M2sKKzY0NDEyIDBhZWViMmI0ODM0MWM3NzI4NGRkMGUyYzU4ZTUxZTQxYTFiOTc4MzMgbGVnYWN5LXRydW5rCis2NDQxMyBkYjYyYzQ0OGEzNDllMmYxNWM0YzJjY2VlODk2OTFhZjI2Nzg1OWRhIGxlZ2FjeS10cnVuaworNjQ0MTQgY2I4NzFmNzM2YmUwMjRhNzVmNGFlNzkzNWI4YTQ4ZTY0YzZjOTJlOSBweTNrCis2NDQxNSAyYmY0MTEyY2Q2ODE1YzcwM2UzNjU1MjVlOWE4YWI0Mzg5N2M4OTYyIHB5M2sKKzY0NDE2IGI0MThkZDM5Zjc5OGJlZjg0NzFmYzE5YzhjZDAwZGMyNzE1ZmRlM2UgbGVnYWN5LXRydW5rCis2NDQxNyA1OGY0M2FjZTI5NWU1YzM5ODE5N2EzMmQzZjBkMWM3ODlkMTJjOWJjIGxlZ2FjeS10cnVuaworNjQ0MTggNmI0YjI5MmMzYTJkYThkYWJkNzYyMTFjN2E5ZDYxNDFlMWQwNzRmZSBweTNrCis2NDQxOSAyNWQ2YjJkMGVlNDJlZThhN2Y1YTg1YjNjMDNjNTk5MzExMjQ1ZDZmIHRsZWUtYXN0LW9wdGltaXplCis2NDQyMCAwN2RjZjBlYTc4ODBmNDBmOTExOTczNzRmZDk1MmQyNTZiZDc1NDgxIGxlZ2FjeS10cnVuaworNjQ0MjEgYzM5MjYzZTk0YzMzMDc0ZDRiNmZlNWFjNGRlZjRlMDRiNjFkZjEwYyBsZWdhY3ktdHJ1bmsKKzY0NDIyIDdiOTZmYWU0MDBkNjE4OWU5ZTA2NTI1MDY1ZmExYjc1ODllZWY1ZWUgbGVnYWN5LXRydW5rCis2NDQyMyAxYmZkNWU3MTJiOTRjYTE1ZWRiOTQzNjdjMDJhNDM4ZmNkODA4NjBjIHB5M2sKKzY0NDI0IGVkYzcwMWQwMGI2MjI0MTIwMmQ1MjVkZTcxNTg5OTU2NjYyMjFjNzEgbGVnYWN5LXRydW5rCis2NDQyNSA3MTdlOGFlZTRhOWQwN2Q3Y2RhOWY1ODNmM2E3Mzg4Y2VjZjlkY2QyIGxlZ2FjeS10cnVuaworNjQ0MjYgZDFhNDYzNTBiMDQ3NmM0ZmNjMzM5YzA0MzIwNGQyOTg3MzBmNjI0ZSBsZWdhY3ktdHJ1bmsKKzY0NDI3IGJmZGEzOThjOTE3ZTVkYTI1MGE5YzYwOWNjNjg4ZjJkYzg5NmFmYjkgbGVnYWN5LXRydW5rCis2NDQyOCBhNzE4NmZlZTc1OTZiNjYzZjUzNDVjNGE0YjA5NjU2ZTFlNjk3YzRkIGxlZ2FjeS10cnVuaworNjQ0MjkgNjI5ZWVkY2JiMjY1ODUzNTI4NDc5YjQ5MDgyOWMxZmEwOWNjOThjZiBsZWdhY3ktdHJ1bmsKKzY0NDMxIGQ4ZGM2YjM3ZmQ3ODllZjRmOWY4OTU0ODE5Y2JlNzVhZDY1ZjYzYWMgbGVnYWN5LXRydW5rCis2NDQzMiA1ZWJlZmY4MDQyNWM1NDk5YjRjMzJhY2IyOTJlNjVmY2VmOTc1OTZjIHB5M2sKKzY0NDMzIDRlMWNhZGI3ODcxZWVjZTE0MzhhN2U2NmFjMDkxYWMyNzZjNmUxNjQgcHkzaworNjQ0MzQgYTEwN2JjMmQ4ZjM0MjdkOTk3NmI2OTRiMGM1NWI3MDY4M2MyNTFmMyBsZWdhY3ktdHJ1bmsKKzY0NDM1IGIzMjEwMWMxOWJmODQ4NTYzMjBjZGQzODAxMGYzNmI3MzEyZWZiYWUgbGVnYWN5LXRydW5rCis2NDQzNiA0ZmZhOWJiYTdjNWYwMGI4Y2FiN2Q0OGQxYmU5YTI1Y2E5MGRiODRiIGxlZ2FjeS10cnVuaworNjQ0MzcgMjQ1MjBlODI0MTA3MmU3NDAxNzkxYTVkNjU5ZmIyMjZjMDAwNDhkMCBsZWdhY3ktdHJ1bmsKKzY0NDM4IDQyNjdhZGFjZGQ1Mjc4YWQ5N2FjNTg1ZmY2MTRkMWU2MzA5MmY4NzMgbGVnYWN5LXRydW5rCis2NDQzOSBhMDY3ZGMwNDM4ZDUzMmM1NTIzNmYzNGE5MGVjZmU1ZDU2ZmEwMDQ3IGxlZ2FjeS10cnVuaworNjQ0NDAgNzViNmIyNzM3ZWE3MTkzNjhiN2Y2YThhNjhjZWZiM2E3MmNjZjhiNyBsZWdhY3ktdHJ1bmsKKzY0NDQxIGFjNmVhYjI0NzNjNWI2ZjFlMzAyMmY0NDJjM2FjYzc0NjY1OTkzOTMgbGVnYWN5LXRydW5rCis2NDQ0MiAxNmI3YzUwMGI3NTNhM2M5NmU2MDQ4ZDMzNjNlODk0MDBiNDg2ZDI1IGxlZ2FjeS10cnVuaworNjQ0NDMgOWM2N2QzZGNlOTI1ZDk0ZmY1OTU3YzMzNjBmMDU3OTcwNjk1MGNkNCBsZWdhY3ktdHJ1bmsKKzY0NDQ0IGFlYWQwYzc4MWNiZWY2MTI2YTExZjk1MGVkMTIyOTE5YzBkNmZmM2MgcHkzaworNjQ0NDUgNTU2ZTRmNmVjOWEwOGNhY2VhYjc4ZDQ2NWVhZTE1MzY2NmE2N2NjNSBsZWdhY3ktdHJ1bmsKKzY0NDQ2IDAxNjE2NmI3Yjk3NmUzM2YwYmM2NDBhOGE0NzJkYzMxZmQ0YTY3ZDggbGVnYWN5LXRydW5rCis2NDQ0NyA1ZThhN2Y5ZDk1MjM5MzIxZjgyZTk3MmJjMTZiNjZhNTQ4MjhlODUzIGxlZ2FjeS10cnVuaworNjQ0NDggOTY4MTUyNzE5NjNkNWNhYjJhYzNjMGNiNjc1MDlkYzExNTFmNjE1MiBsZWdhY3ktdHJ1bmsKKzY0NDQ5IGUxN2I4MWE5NWFlZDJlOGE5ODU4MjM1MGYxMzQxNWExMmZhNDhmMmIgcHkzaworNjQ0NTAgNzBlMWEzOGM5ODA1YjZhNmMxN2E0OTJmY2NjZTRlMmY3MmVjZjk0NCBsZWdhY3ktdHJ1bmsKKzY0NDUxIGM1N2QxZTk1NGQ5MzQ1N2MzMTM2ZGFiZjVmMTZkNGMyNGY1YjM4MDggcHkzaworNjQ0NTIgOTZhZGY5NmQ4NjFhNDRkMWIyOWU5MTlhZjgwZmYwNDE5NWEzNzNjNCBsZWdhY3ktdHJ1bmsKKzY0NDUzIDdjZGJlMDFhNDU3NjRiMmUzODQzYjUxODg4M2YyNjIwMGUwNDZiN2EgbGVnYWN5LXRydW5rCis2NDQ1NCBhYzE1OGNhNjg2Y2I1MTlhMzgwMTIyYjkyOWE0Y2FmYTNlMzlhYWU2IHRsZWUtYXN0LW9wdGltaXplCis2NDQ1NSA4YjZjMjg1NmRiZTUxMDM3YzJmZDZlYTM1YzA0M2NhYjhmMTJjNTE1IGxlZ2FjeS10cnVuaworNjQ0NTYgZWI5ZmFlMmZhM2Y5NjY0MmViYmY1YWM3MWNhNWQ3MjZiOTE4YjNiYSBsZWdhY3ktdHJ1bmsKKzY0NDYxIDY1YzIzNjYzZDBiZDY5ODEzMmVjNzlmMDBiNTE0ZjIzNDUxMWU4ODggbGVnYWN5LXRydW5rCis2NDQ2MiBkYTY4OTNlMjAwNGY0Y2E3MDkxZDk5YzQzY2NkNzRkZDY4NTRjZDU4IGxlZ2FjeS10cnVuaworNjQ0NjMgNjhjZjNjYmIyMWQyNThkOGUwMjIxNmQ0Y2NlM2M3YjhkNjlkOGUwZCByZWxlYXNlMjUtbWFpbnQKKzY0NDY0IDdiNTFlYThjYzU1OGRiYjM0YjRjNDAyNzFhZmYyZjAyZTE1ZGI5OWQgbGVnYWN5LXRydW5rCis2NDQ2NiBiMTFiMDljMWVmZWYyYmViMjM1NzgzZjNkNjdjNDUxZTQwZWE2ZDYzIGxlZ2FjeS10cnVuaworNjQ0NjggODhiZDhlYWE1MTUyZWRjNTc5NzI0YzllNTM5MDYzNWZjNWMzMDZhMCBsZWdhY3ktdHJ1bmsKKzY0NDcxIGE5YWQ5OWQwYzcyMjRiZTE4YWRlMjM3ZWE4NGNiMzQ3MzQ1YjljY2EgbGVnYWN5LXRydW5rCis2NDQ3MiBlMGYxZTFjNTY2ZDlkNjc1NDMyYTE2ZjU1MTgzY2MzYzEyMTE0YTdlIHB5M2stdXJsbGliCis2NDQ3MyBmODQ2OTFmNDg5YzM4YzYwODM3YWQwNWYxMDBhODY5OGI0YzQ0YmQ2IHB5M2stdXJsbGliCis2NDQ3NCBkZDkwN2Q2YTdhODVkMTYzYzdlMTIxYzVjZTNkMGZmM2M3ZjNkY2QyIHB5M2stdXJsbGliCis2NDQ3NSBmMDAyN2JmZGY5YmM0NDUyNTZmNDc5NGU3YWNmMjkwOWU3NzUzNWRhIGxlZ2FjeS10cnVuaworNjQ0NzYgMWY2NzFjODVkZjA0N2M1Yjc1MDI2YzM0NjQ3MjIwMTU5MmQ4ZDJmNiBweTNrCis2NDQ3NyAxZGJkN2E1MjJhMjM2OWYzYjUyOTA1NjllNjY2MThhOGI0OGQxZDUxIHB5M2sKKzY0NDc4IDZjMDRkMTQ5OTRkMDg4MDEzYzRiODE2YmM4ZmVjNTQ3ZGE1YTYxYmUgcHkzaworNjQ0NzkgOTY3Njg4NDc5ODgzMGQ4MDE2NzRhZWU1YzljNmI3NGM1NjNlZTVjMSBweTNrCis2NDQ4OSA2ZTA2ZDRhODZlM2QwMzI4ZDhkMjA4NDAwMzg2NWJhNjJhYmJmYjdkIGxlZ2FjeS10cnVuaworNjQ0OTAgYjAxNTY5MzExNGY2Nzk3YWM0YjBmMWIxZTJlMWYzMWM2MzNjOGE5NiBsZWdhY3ktdHJ1bmsKKzY0NDkxIDc1MmUxYWJhZjE1YTU2YjViM2ZhZTg0MWQ3MGE5NTJiZGNiNTBkOWYgbGVnYWN5LXRydW5rCis2NDQ5MiAwOTgxNzNlODQ0ZDE1Mjg1M2M1Mjk2MjdhZjhmYTczNmFkM2ViN2ViIHB5M2sKKzY0NDk1IDVkNWY3Mjg1ZjVjNTliNGY1MTU2NjYyNGJlOTU3OGFjYTY3MWIwZWUgbGVnYWN5LXRydW5rCis2NDQ5NiBjODNlZWYwNzhmZDlmMGVjYTg4ZWU1ODczZTkwNjVjMTQ1OWUxNjY2IGxlZ2FjeS10cnVuaworNjQ0OTcgYjFiZGNiYzk3YTE0YzA5NGFiMDRlODJiMjE2OWYwODZjMjZmMWY3ZSBweTNrCis2NDQ5OCA2OGZkM2FiODQ4NGVlYjdkMGI1ZjM2MzM3Mjc4ZmY2Y2ZlYjRhOGI1IGxlZ2FjeS10cnVuaworNjQ0OTkgMTJiZTQ0YzZhNzAyZThiM2I3Y2FhYzlmNzdmMGM0MTFkOGU4MDQ5MSBsZWdhY3ktdHJ1bmsKKzY0NTAwIDdlNzQ3ZGUyMzFiMzgyNzM3ZjYzMThmM2IyMDUwZDNmNTYxZjBkNjMgcHkzaworNjQ1MDMgMjJmYmRkZjE4ZDQ4OGExMDAxODMyZTc0NzVhOGM1N2U5MmQ1NTVkYiBweTNrCis2NDUwNiAyNzBmZjZmNGQ5OWYzZmQwZGY5MmZmNzIyNzA2OWYyNWUyYjUxNDRiIHRsZWUtYXN0LW9wdGltaXplCis2NDUwNyBkOGFmYTQxYzY5NmFiYmRlYjAzZDJkZGNjNDc3MWVjNmFjYjA5MDdmIHB5M2sKKzY0NTA4IDNiNmZmY2ZlMjk3MWUxZmQzOTllMDJlMWNiZmZhYjZhNDZmMWVlNzcgbGVnYWN5LXRydW5rCis2NDUwOSA5NTc0ZmVkOTM2ODgzNmE1YmZmNzc5MmYyYTdmOTMxZTI2ZjgwYjdjIHB5M2sKKzY0NTExIDBhZjZmMDMwMGVhZmY0NDNkNjg2YjJhNThmN2JiZmU0YjdkZTdiOGMgbGVnYWN5LXRydW5rCis2NDUxNSA3Nzg4ZTk4OTNiODViYjkxYzc3M2M3MWQwYTM1M2E0NWQwZWQxMjlkIHB5M2sKKzY0NTE2IDNhZGE0NmYyMzIxZGMyNDQ2ODBiNDcyZGIwZTBiMGFiMDM4M2JmMWIgbGVnYWN5LXRydW5rCis2NDUxNyAzYzhkM2I5OGNmZDczY2QyMjM0NmJhZWQ3ZjdkNWVhMTJlYTEwMDhmIGxlZ2FjeS10cnVuaworNjQ1MTggMzgwYWEyZDE2MWQzOTI5NzIzODAwOGNlNGRlODFhMDFjMGZiOWZkMyBsZWdhY3ktdHJ1bmsKKzY0NTE5IDBiNTJiZGM0Y2Q4OTM5OTkxYjhhNGFhZTk3NTJhNjMwZjAxOTMxMzQgbGVnYWN5LXRydW5rCis2NDUyMCA2NGFiYjYxZTlkNGY3ZjA0NzNmN2I3ZmE0Yzg4MTM2MzBmYjVjMmZjIGxlZ2FjeS10cnVuaworNjQ1MjEgNTdjODJjYjBmYWZmY2U5YmZkMmNkMWQ4OWJhZmU3MTY5NDM0MmYwYiBweTNrCis2NDUyMiAzN2EyMWQwOTdkMzRkMzUxNDVlNjhjNjVmOTY1N2VjMjBjODJiNWYyIHB5M2sKKzY0NTIzIGU1YTUxZWQ5ZTYzNDI3MGUyNGUzMTEzYTJiM2MzMTY0Y2U2Mzc4YWIgdGxlZS1hc3Qtb3B0aW1pemUKKzY0NTI0IGQxZTg2NGE1YzYwYzhiNGYyZTA3ODg4M2YzODdjZDdlMDU0MzVjMDcgcHkzaworNjQ1MjUgZmZiZDRlMzMzZTJmOWJkMGUzZjA4ODE1YmFhZjYwMTkzYWRkNzUxOCB0bGVlLWFzdC1vcHRpbWl6ZQorNjQ1MjYgN2RlMDM4NTUwNTIzZGMyYjM4OGY2ZDQ1ZDU0MjdmMzcwZGVlNDY1ZCBsZWdhY3ktdHJ1bmsKKzY0NTI3IGJkZTJhYjk0MzU5M2MzYTlhYzE4MzdlNWM0YjkwZGRmMzAyYWVjYjUgbGVnYWN5LXRydW5rCis2NDUzMiBiMjYxMTY0MjViMTE0MzYwMDY1MWU3ZjQ4MzY1MzNiZmU0ZmFmODBlIHRsZWUtYXN0LW9wdGltaXplCis2NDUzMyA3ZWIzNzM3NjU3ZDEyZWZjODBjMDAyZjNhYTk2ZWFiZDI2NmQ2MzU5IGxlZ2FjeS10cnVuaworNjQ1MzUgODgyMWI0MDVlMGU2Y2Y5ZTg2YTQ5YTU2YTA0NTdmZjM1ZGRmNDI5ZSBsZWdhY3ktdHJ1bmsKKzY0NTM2IDA2NGIwYjc1YmFkNTNiNWJhNzM2N2QxYTkyZTVlZjRkNjEyN2I2M2EgcHkzaworNjQ1NDQgOGM5MjljZTBmYjQxYzA4NjUxZTVhYmQzNWU4NTdkODI0OTMwNGE1ZiBsZWdhY3ktdHJ1bmsKKzY0NTQ1IDcyM2MwZmY2OThiN2Y1NmY4MzVlNGU1MWYxMDU0ZTY5MTE3ZWJmMzcgbGVnYWN5LXRydW5rCis2NDU0NiA3ZmJjMzc0Yzk1OWQyZDc3OWY1Y2U2NjRmMzVlZjRmYzA4MDZmN2U1IGxlZ2FjeS10cnVuaworNjQ1NDcgNThkYzM2N2RjMWVhMDBiZDNjYzgzNTNkYzRiMjY1MmIxYzQzOTk5ZCBsZWdhY3ktdHJ1bmsKKzY0NTQ4IGM0Yjc2NmFmYWM2ZjY0NmU4NzFhMTMxNGQ1NDNmNjYxZmRhZDJhM2YgcHkzaworNjQ1NDkgZGM0MmVmZDcyOGVlYjgyMmQ1NjM0MmUzNjMzYmU4YzdjNTMyNjFhYyBsZWdhY3ktdHJ1bmsKKzY0NTUwIGVkZDQ4YjA4NDk0ZGE4OTZjYmZlNThkZDMwYmFiYzg0YjUzNjYxMzAgbGVnYWN5LXRydW5rCis2NDU1MSBiZmFmMTQyOTU3OTQ5ZTA0M2JkOGNmZTZjN2NkZDhlOWZkZmZkY2Y1IHB5M2sKKzY0NTUyIDYwNWFiNmY5MjgzODhhZjVmMWRmYWE5MjJjODk1YTQ5ZmQwNzkxOTEgcHkzaworNjQ1NTMgYzcxMmJjZDMyMDNiNGNlOTgwNGNhZWZhMDE3OGM4ZjY3ZTBiMGM4MyBweTNrCis2NDU1NCBjNTYwNzJlYWFjYzI2MThhMTMzOWQ4Y2EyNzgwMGQ5MzMxNGNjODQzIGxlZ2FjeS10cnVuaworNjQ1NTUgYTY5YmQzYWI5Zjk5N2NkYmFhMTk2MzU3Y2I1ZjI3MTE2YzVkMzI0NiBsZWdhY3ktdHJ1bmsKKzY0NTU2IDcyNDM0MDEzYjAzMGZkYzhkMDVhMGUyNWZhODJkNTFjYzBlZjI1NWMgcHkzaworNjQ1NTcgNDNmNmJiMGVhY2IyZjQwODNiOTY4YmZkNGI3YjcxODZjMjhhZmEyNSBsZWdhY3ktdHJ1bmsKKzY0NTU4IDViNGM4NzA5OTAzZDA3YTUyNTNlZTExNDYzNDY0NGIzNmZlNDY0NjEgbGVnYWN5LXRydW5rCis2NDU2MSA4ODM5MjAyMTk0MmE2ZGZkY2VlODZhMzE4NjRkODc2ZWFhMjc3N2Y4IGxlZ2FjeS10cnVuaworNjQ1NjIgZWQ1ZGMxM2I4OTliYTJkNmI1NDViZjhhYTE3OTRhODVjMTI4N2JkMyBweTNrCis2NDU2NSAxYzRiZDUwMmRlNjI5YjI5MGRjODcxZDFmYjJiMjEyOTZhNzU5Yjg1IGxlZ2FjeS10cnVuaworNjQ1NjYgNTA4NTlhZTRhZWJiYTRiZDYyYTM2NWM4ZDk5NzZmZjIxMDlmMzBjZiBweTNrCis2NDU2NyA4NDFhZTE3NjdiNGM1NDgzOGJlMDRiZjI1MDdlZjk2OWQ5MGE0NDdmIGxlZ2FjeS10cnVuaworNjQ1NjggMjQ4YjhhZGZjYzk3YTM4ZjVmMzgzZTBhMGI4YmE5ZTE1ZTM4ZjkxMSBsZWdhY3ktdHJ1bmsKKzY0NTY5IDkwM2I2ZTJhMzA0ZmIwYjMwN2NjZTRjOWE1ZmRmNzNkZjY5ODY0ZjYgcHkzaworNjQ1NzAgYjg1NzcwNDU5NTkxYjg4YjY4MmIwMjYyMmY3MGMzZjM5NTVhM2MwNSBsZWdhY3ktdHJ1bmsKKzY0NTcxIDJjOGUzY2NlYWM0ZWI0ZTA0MDFlNGE4NWQxYThhZmJhNjMyZGJhMzggcHkzaworNjQ1NzIgYWZjZDY4YTg3ZWVjYWQyMTEwZTFmODk4NThkZjU3OTk2MTdiNGUwNSBsZWdhY3ktdHJ1bmsKKzY0NTczIGJkYmI2NmJjMzdkY2UxYjNmY2FjY2UyOWQ2NzdhNTg0YTEwMmI0MmUgcHkzaworNjQ1NzYgYWZiZDUwYWQ0ZjM0ODQwNWQ2YmQzNWI5ODI3ZDUzMzcyZGNhYzkxNSBweTNrCis2NDU3NyAxZGQxMGIwNGRiNDc0MWI5ZmM5M2Q0MjI4NTliMjBmNDc3N2RmZDM4IGxlZ2FjeS10cnVuaworNjQ1NzggOGEyODFiZmMwNThkN2YwZDFlYThmNTJkOWI2Y2QxMmYyYzU1ZTZlOCBsZWdhY3ktdHJ1bmsKKzY0NTgwIDBmYzc4NjFlY2U1ZjZjZjBlNjIzYWI3NTY3ZjhmYWU3M2FhNTdkODMgbGVnYWN5LXRydW5rCis2NDU4MSA1NWFjNmM3Y2ViNTk4M2MyNWYxZmE5NmQ2ZjVjMjQ1OWY2MjZmYWUxIHB5M2sKKzY0NTgyIDNjNDlhZjJkNWJmMGFmZTY1ZDBhODExMDQzZjE3ZWU1M2YzZTY2NmMgbGVnYWN5LXRydW5rCis2NDU4MyBhZDliZWI0MWFhYzEwNTAwZjc2NTk1NzUyZDE2MWUxYmNkMGQ3MWQxIGxlZ2FjeS10cnVuaworNjQ1ODQgZTE3YWRmYWY0ZjY0YzljNGE0MTdhYjA3YTY5ZWNiMDg1OTRhNmI1NCBweTNrCis2NDU4NSBkOTRmYTRjYjUyZTczNDlhOWQwOTBjMzcyYjE3MjkwYWYyZDFkY2QyIGxlZ2FjeS10cnVuaworNjQ1ODYgZWY5MjcwMzc0ODQ0NGNjZTkxOGUxYzIzNjM3MTZmMWQ5ZjlkYzRiYSBweTNrCis2NDU4NyBmNWY3MGYyMGI2NzhmOTY2ZjY2YTQxYmZmZDdjMDA5ZTU0MjE3NzA2IHB5M2sKKzY0NTg4IDRkMmQwYTIxZDQ5NDhkYTljMmM3YjFjZjI3ZmI0ZDQ3ZjRkNDVhNjMgcHkzaworNjQ1OTAgYmU1NWI3YzJjOGU2OTI1Y2JiZTY4ZjU4YzE1ZTBlNzk0NjU2ZmNmMCBsZWdhY3ktdHJ1bmsKKzY0NTkyIDczY2JjZGU3NWUwNThjMzg3NDZlYWNlZmZlNDA5MmQ5MDQ0NTlhNmYgbGVnYWN5LXRydW5rCis2NDU5MyAyOTdlMTIxOGVmZTUwOWY5MzdiZjgxODY4MTc5NDNkZDYzMTE2ZTBmIGxlZ2FjeS10cnVuaworNjQ1OTUgZTE0NzM5YzU4NDAxMzY5MzQ3NWI2MTg0MzNhMmYzODhiM2I5YTk4MCBsZWdhY3ktdHJ1bmsKKzY0NTk2IDI1NDEyYzZkMjc3NjM1NjU4MGY4MjcwMTY1NzhlNjdmOGYyMmViNDUgcHkzaworNjQ1OTcgODJjNDY4MWNkOWJkMDdhM2FkN2VkNWMxZTYxZWQ0M2FhMzJkNjg2NyBsZWdhY3ktdHJ1bmsKKzY0NTk4IDc2MDQ1MTVhODE5ODVhYjcwNzI3YzNlNGFmY2JlNzVjZjA4YzhiODUgbGVnYWN5LXRydW5rCis2NDU5OSBhOTAwYmIxZGVkOWQ5YjZlN2U5NmZlZDVhOTA1NWFjOWIzYWFiOGFjIHB5M2sKKzY0NjAwIGI5ZDJmZjVlM2RjZmMwYWU5ZWFkZTk1NTE2NzYwNTFjNGZkMGZjNzAgcHkzaworNjQ2MDEgOGNjYjM1NzM5YTk2ZjIwYjJhZDc2NjBiY2QyZWUwMzk3ODIzNmNhZSBsZWdhY3ktdHJ1bmsKKzY0NjAyIGUyOWI0Y2U2NDFmOTQzMTk1Zjg1MWE4MTRiMWI0YzZiYzZmZGFiNTIgcHkzaworNjQ2MDQgZmQ3OWM0ZDk3NzQ1YWQxZWNkZmI3OThlMjViODJhMDRiYzRlMjllOCBweTNrLXVybGxpYgorNjQ2MDUgOGNmYjg5YjYxYzJlNTFiNzkyYjFlYmYzOWZmNjBkMjk3NmUyODJlOSBweTNrLXVybGxpYgorNjQ2MDYgYjZhZDY2NGNhZTQ5OTg4MjcyZGI4ZmQzYTJhOTc0ZTQ2MmI1OTdmMSBweTNrLXVybGxpYgorNjQ2MDcgN2IyZjIxODk1MzkyM2M5MGU0MTFlOWIzNjY2NjEzNjFkNzJjY2MwNCBweTNrLXVybGxpYgorNjQ2MDggNzM5Y2M5ZmRlZmU1ZDRhZWI2NDE3MDhiNWU5MDY4NWRkYmFmOTBkMSBweTNrLXVybGxpYgorNjQ2MDkgYWQ5ZmI5ZjFkNmQzYmRiYWY1MzE3MDQ0NTFkNmVlY2FhYmEyZWZkNyBweTNrLXVybGxpYgorNjQ2MTAgNDE2YTU2ZWIyNGYzM2FhZGJmY2MzOGMyMWZiMTk3ZjQ4YTM1NDIyNCBweTNrLXVybGxpYgorNjQ2MTEgNDQ2ZTNkYWMwYzMxYmQ0OWZiMzY2Nzk4MTg3N2U2OTM2YzYzY2VmMyB0bGVlLWFzdC1vcHRpbWl6ZQorNjQ2MTIgMzdjN2QxNzc0MGNjYTY4OTQyNjM1NzMxN2RjZWFmZDgzZDAxZjcwOSB0bGVlLWFzdC1vcHRpbWl6ZQorNjQ2MTUgZTI3MTk3NmFjMzcyNGVhMGIxNDMzNzg2N2UyZWY4ZGE3OTNmMTNiZCBweTNrCis2NDYxNiA1Zjc0NjhhYzE0Y2Q4N2E1YTIxMjMyYzU5YzljMTE3ZWQ0MGVkMTYyIHB5M2sKKzY0NjE3IDkxM2FhMjc0ZWQ3N2I1N2QxYzMxZmIwOTdlMWU0NGY3M2NjOGQ1ZWUgcHkzaworNjQ2MTggYWNkZmZiNWI0MzUyMjExM2RmZGI1ZGQwNWJjOGZiZDk2ZDNjOWVmNCBweTNrCis2NDYxOSBlZWQ1MzE3YWM4MzdlMjYzZDMwZWE5MDA0OGYzZmJiZWM3YzRlYTc4IHB5M2sKKzY0NjIwIGY5MmM4MDA5NWMxNGM5ZDkxYjQ1YzVkZGVhNTEzNDllNTE0MTk1MTkgcHkzaworNjQ2MjEgYmI2NWY5Yjc2YzFmYTUxYTAyZGM1ODNkZDA1MTdmNTM4ZjdlMWQ5ZiBweTNrCis2NDYyMiA4MDEwOWQ0MDQ0Y2RhNGZlOTFlNGM0YTY3YjQ5MDFkZDE0OTRhZTdmIGxlZ2FjeS10cnVuaworNjQ2MjMgZTEwZTI1N2NiZjYxNWViYjY3MTBlZGJiNjBiNjQ4ZWJhZTMyZTA0NiBsZWdhY3ktdHJ1bmsKKzY0NjI0IDdkMTUzMGZhYzFmNjY4NDE3NjkyY2M5NDQ3MTJkNzE4NmM2M2E3MmQgcHkzaworNjQ2MjUgZTY4ZmU5MGYxNWFiMDBlMDMyMTg2Zjg1OTBlZDBjZTRlYmJiZGQ5ZCBsZWdhY3ktdHJ1bmsKKzY0NjI2IDQyMzA5NDM3ZjFjYTI1YzAxNjEzODc0OThkMmIzNjEyZjI0MWMwZGIgcHkzaworNjQ2MjcgN2UyOTlhYjM1ZDk1ZTE5OTg5OTk3OTBkYzZkMzlkOGViYjRhMjJmYSBweTNrCis2NDYzMCBjYTEzNTNiZmQ0OGEzMjMyMzAxZGVkODE3OWQwZjU0NGNhYTIwYTMxIGxlZ2FjeS10cnVuaworNjQ2MzEgNzAzNTc4MTE3Nzg2MjdjMWEyMDE1MTUzMzAzZDZhNmViZWYwNzNkYiBweTNrCis2NDYzMiBkNjY0MDQ5ZWNhY2FkOGJlMTk4OTk4MmI1MGUxYzRmOTkxYzhhMzIyIHB5M2sKKzY0NjMzIDdkYmQ2YjYwNzcwNmEzNjNiYWE2ZDhmMTA4NzhhYmU1ZTQ2ZTY1MTkgbGVnYWN5LXRydW5rCis2NDYzNCA3MGE0ZWM0MTI4ODIyYWNjYjQ3NTRkNTc1MGVmZjcyNDU3ODE1YzdlIHB5M2sKKzY0NjM1IGNkYTU1NmQyMzkyNDQ3Yjk5MDQwMTY5OGFmYzhhYTVlZDEzNjk2ZGEgbGVnYWN5LXRydW5rCis2NDYzNiAyZDQ4NzdmNzUwMGVmYWMzODEyM2Q0ZjhiYzRjYTI1MzUzYjkxODM1IHB5M2sKKzY0NjM3IDZjMzg2MDkxNDI5MmM2YmU4MzA2YWVjNjM2NmNkYzA1MmIyZDM3ODYgcHkzaworNjQ2MzggYTA2YTBlMTEzMmVlMDJmYmFkMTFmODI0Yzc3MjUyYWRkOWZkYTk4MiBsZWdhY3ktdHJ1bmsKKzY0NjM5IDYwZmQwODg2ODExYzc1ZDU5NjA3MGU2NjgyZDJkOGVhNTdjOTlhOTcgcmVsZWFzZTI1LW1haW50Cis2NDY0MCA0YTgzMjk1MzUyMzRkNzViNWQ3NmM0ZGI4NzgyMDExMGYzYWM2NmQwIGxlZ2FjeS10cnVuaworNjQ2NDEgZThiZWUzMDk3ZDQ0MGU1M2JiZjNmNWU4OTYwNTg1ZWVkNWE0YjY0MyByZWxlYXNlMjUtbWFpbnQKKzY0NjQ3IDZjZDNjYmUwNzAzNWU5NGZkYmE4ODNkZGE0N2FmOTNkMDVhZGYyOWIgbGVnYWN5LXRydW5rCis2NDY0OSA4MDE3NTQyMDFiMTE0MTI4NjJiMzU5YjBlMzliODIyYWI2OTkyZmIwIGxlZ2FjeS10cnVuaworNjQ2NTAgMmQwMzZiNzhkZmE0MGJkNjEyNWQyZDYxZjhlMDYxYzQ0YjQ5MWU4YyBweTNrCis2NDY1NCBiN2YzZDk3MGU0NGYwMzE3MGYzNDZjYzhhZGI4ODY0NWJiYzcyZmYwIHRsZWUtYXN0LW9wdGltaXplCis2NDY1NSA2NWFmNTQ0ZGExMjFkNDg1MTUxOTRkMmVkODE2OWE0MTYwYzk1NzM1IGxlZ2FjeS10cnVuaworNjQ2NTYgNWQ4ZjQ3MDA1YjczZWIwYzg1OTcwZDZhZDBiMmFjMTlmODZhMDM5YyBsZWdhY3ktdHJ1bmsKKzY0NjU4IGY5MjcyNDBkZWYxYjczYzdlZDE5ZGI4YjkwMDJmMjU2ZTEzODNmZTEgcHkzaworNjQ2NTkgYjM5Y2VlYzgxYzE3NGY4MWRkZTEyZDljODgxOTBlNjExZmE2N2Q5ZCBweTNrCis2NDY2MCBlMjJkZWFlYjZjMWIwMmYyMTdiNzQ0Mjk4OTgxMWRhZjhlYWNjMjMyIHB5M2sKKzY0NjYxIGFkZjQ4ZjJmYWRmY2JiZTk1NzRiYjMwNmVlZTY5MjAwNTlkMmE0NGIgcHkzaworNjQ2NjIgZGFmOWZhZDdjNTUxOTEzNmUyMjg5Y2E4OWEzNzFhYTQ4MGFmYWU3NiBweTNrCis2NDY2MyA4MzJhZTUxM2QzNDQ0NTAxNjZhN2Y2MDVjZTQ1NzJiZjJmY2IzNzZiIGxlZ2FjeS10cnVuaworNjQ2NjQgZTRiYmIxZDNkZDE0NWM4Yzg2Y2ZhYzA2NTE2YTU2ZTI0ZDA4ZDU0MSBsZWdhY3ktdHJ1bmsKKzY0NjY1IDMwOTU0MmZkN2ZlOGQzMzgwNjc1YmYzY2YxNGE3YzExMzM2ZDFmNjcgbGVnYWN5LXRydW5rCis2NDY2NiA4MWZkOGE4YmFhOWE3MzNjYjUxOWNhMmU4MTFkOWE1OGViNDUzNzUwIHB5M2sKKzY0NjcwIDE4OTliZTMxMjJjMjIwZWM5ZmQ3YmM5OTgxODg3NjdiZDNlMGUyOTggcHkzaworNjQ2NzEgNWY0YTg5ODBjMWFjYmY2OTk3YzBkN2Y2MzhmZmE0MGQ4NWM2MjUyNiBweTNrCis2NDY3MiA3ZTU2MDE2YTY1NjU5ZTBkMmZlMGEwYTA2ODk5Yzk3YzI1MjE3ODM5IHB5M2sKKzY0NjczIDcwZTFkMmJiYmMzMmZhZDE1OGQ5YjMyYTQyMDEzNGJiMjU3ZGMxMTIgbGVnYWN5LXRydW5rCis2NDY3NCA0MDI1ZjYzODkxMWZhMTk2MWUxMTNkYjlkMDg4MTdmMTkxMDNkNmI2IHB5M2sKKzY0Njc2IGJkMjMzNDEyMGEzMGU3YzQ3MWI0NzU0M2YxNzY5YjRiZWY0ZjJmNmMgcHkzaworNjQ2NzcgNjkwMWQ1ZmYwZjdhYjZhOTMwMGRjNTVlZmM2NTcxYWNkZjEwMDEzZiBsZWdhY3ktdHJ1bmsKKzY0Njc4IGZiMDJmZWRmZTY0N2YyYzg4MmYzNDRhNjc3ZWI3MzU2Yzc1MjlkM2EgcHkzaworNjQ2NzkgMWY4YmUyNmQwOThhY2E2YmVlNmJkMWIzN2EwZWRmYTk4ZjY4ZjlhZSBweTNrCis2NDY4MCA5ODg2MGNmYTE5ZmQzOGJjZmJjODAyZGRhNDI4YjI4NmI1NzZiMTRmIHJlbGVhc2UyNS1tYWludAorNjQ2ODEgYWExZmJlMzIxYWNmMWYwYTJmNGU0NDBmOWU0OTk0ZWUwNzk1MTA4YyBweTNrCis2NDY4MiAzNTBhMjg5YjBlZDQ1YzQ0ZTQ3ZThmYjllOWE0MTQ4MWMwYjkyOTY1IHB5M2sKKzY0NjgzIGVmOGQ3NDg3YTA3NzczYzNmODMyNDM1NTViNTEzMTVjZGQ3ZmJiYzYgcHkzaworNjQ2ODQgYTU3MjNhODM2N2U3NmExODk2NjM0OWQ1Yzk4ZDMyMGE1NGEwZGEyOCBweTNrCis2NDY4NSA0MjI0ZmY3N2ExZGRjZmVmMjUwZTE5ZjZhOGI4YTEyNGZhZTI3Njk3IGxlZ2FjeS10cnVuaworNjQ2ODYgODkzZDkwYjc3MzFiZDAxNWYwNjFjYzg3ODMzYWZmMmU5Zjc4MDY0MyBweTNrCis2NDY4NyA3ZDFlNjE0OTJjN2RmZDc4YjIxZDQxMTk2MzI1ZjFlMTkyZjQ1NjMwIGxlZ2FjeS10cnVuaworNjQ2ODggYWNmYWQ4NjQwZTIxZmY5YmNlNGZlYjNlMzVmNGRkZWUyYWIzODFjMiBsZWdhY3ktdHJ1bmsKKzY0Njg5IGU1MDIwNDY2NjhiMTAwYzhmNjk2Zjk1YTA1MDJmNDY3Mjc4ODk3OTkgbGVnYWN5LXRydW5rCis2NDY5MCA4MDdkNjk5NWJhZmQzZWVkMjY3NGQ5ZWEwMDg2OTJkMzMzNTIzYjk4IGxlZ2FjeS10cnVuaworNjQ2OTEgY2RhYWM3OWE3MjM3NjhkOTI4MzAxMzQ2M2ZiNzQ0NzY3OWQyODdjZiBweTNrCis2NDY5MiAyZDBjMzY0MzIyM2Y2OTI2ODUwODYzMjIzN2EyNzczMjQ2MDhmNGZiIHB5M2sKKzY0Njk2IDQwZWNiOTEzMzk5ZTY3MzEzNGI2Njc0Y2RmYjEyZjkyM2M0MGI4ZWEgcHkzaworNjQ3MDAgYjFiM2FmODJhZGQ2ZmFkM2IyNDMzODA2YjU5N2YwMDYxNjJiYWY2ZiBweTNrCis2NDcwMSA0ZTY4NTljNmQzOGM4YTJjYWE5MzZhNzJkZTFiMjIzODA2ZDVmMzIxIHB5M2sKKzY0NzAyIDEzYzk4NTJkZTgxYTNkMDFhMjhmOTJmNjIyM2VmYzhlMDlhOWUyNjkgbGVnYWN5LXRydW5rCis2NDcwOSBlYTdjYzE4YzlhYzg2ZjIzMmNjYmZhNWE5MWQyOGEwNDhhYzgyMjdhIHB5M2sKKzY0NzE2IGRjOWIzZjI4OTJiOGIwYzQ5ZTMyYjQ2ODhiZWQ4YjJjNWM1OGVhMDIgcHkzaworNjQ3MTcgMDQ4MTc3OTNiOTYyNWIyNDYwOGRhYTE3YWIzMmU5MTNhOTE3ZTczYSBweTNrCis2NDcxOCBmMjcyMDYxMDFmZjk0M2MyYTAyZWI0Yjg1M2E0NGQ2N2RiYTIyZmQ1IHB5M2sKKzY0NzE5IGM5MzU5NmVjMWQzZGU2NjVkMzYxMGMyY2JhM2QxODRlZDUzYzk1ZGQgbGVnYWN5LXRydW5rCis2NDcyMSA2ZjEzMmEyNmIyMmY3N2NlNDRmZjEyODZhZmY1MmQzNWFkNmNkZTg2IGxlZ2FjeS10cnVuaworNjQ3MjIgZDc1MjY2NzBmZjBhZGVlZGU4MmQ4ZDMyZjMyN2YwZjgxZjNhMjgzYSBsZWdhY3ktdHJ1bmsKKzY0NzI3IDNiMDBlOWY5ZDY5MjU5ZjJjNTMyZjVkYWM5MTFjMTJiY2IzOGExMzYgdGxlZS1hc3Qtb3B0aW1pemUKKzY0NzI4IDhmMTM0NjUwMjIzNDVkZGIzMGZjMTY1NDk5ZjY3ZmY1ZWJmODAxODMgcHkzaworNjQ3MjkgNGJmODQwMzVjYjVmNTg0MWViNzA5NzhlNmIwNWI0M2YxMTg4ZjJmMCBsZWdhY3ktdHJ1bmsKKzY0NzM1IGY3NzI0NzZhZDkwZGY4ZTkyNzY0MDRjOWUwNjdiNzlhMzkzNTE2YmYgbGVnYWN5LXRydW5rCis2NDczNiAyMjc5ZGQ0YTJmNzMyYjc1Mzg3ODlkZWU0MjQ3YzE0Zjc4OTNmZGQ5IGxlZ2FjeS10cnVuaworNjQ3MzcgNDcyMWYyN2VkNmMyN2U4NzUzZDNhYWM2MDg5M2EwM2E0OTA5ZmQxNCBsZWdhY3ktdHJ1bmsKKzY0NzM4IGZiMjc5MjQyZjk3MTAyZDBkYTc2NTIwMDMzYTZiZGE3OWJhMWEyYWMgcHkzaworNjQ3NDIgNDgwMGRkMjJmNDU1ODM4ZjJkMjBiNWU2MGQ1NGRhN2I3ZTdmMTFiZSBsZWdhY3ktdHJ1bmsKKzY0NzQ0IGQ2NjU3OWY5MjVjNDZmODViOGIxZThkYTQxY2ViNGEzNTYxMzBiNjMgbGVnYWN5LXRydW5rCis2NDc0NSAyNDc2MzczZjU1NGQxNTM5MWY4YmIyYmE0ODNkODBmYTIzZDcxYTY3IGxlZ2FjeS10cnVuaworNjQ3NDYgNDViNjcyMzY3YjFmN2Q1MjJjM2NkZjA1ZjUwYTFmNzliNDhhZDM5YSBsZWdhY3ktdHJ1bmsKKzY0NzQ3IDRiYTNkMDdiODcxZjg3MzQzNzQ5M2JhNmUzNGFlODI5YWNhYWI2NTEgcHkzaworNjQ3NDggNGE3MmJlMWQ1YzIxODExYzg1M2Y4ZjBmOTBkNGFmZWQxN2EyM2Y5ZCBweTNrCis2NDc0OSA2YWU3MWY1MjJiMmYwYWJmZTZkMDA5NTJkNmVkMTVmYWZlZTI4YTNkIHB5M2sKKzY0NzUxIGZhMzQwODgzODBmOWJmMzA5Y2Q4MTA3MjY1YmQ2MjBhZGE0ODBjMWQgcHkzaworNjQ3NTIgYTA4ODJiZmFmNTRkOGQ3ZGEyZjliZTMwMTI5ZWEwMWY3NjQyOTk5ZCBweTNrCis2NDc1MyAwNzM4MTE5YzFlZjhmZDk1YTg4MTMyMmY5YzVhZWE1NmUyYjgwOWNkIGxlZ2FjeS10cnVuaworNjQ3NTQgYTMxMmUwM2EwNjMzMjUxZDFmZTNkMjVkN2E4NmY2ZGE2ODcxYTNkNyByZWxlYXNlMjUtbWFpbnQKKzY0NzU2IGMzMTkzYjcxNTZiYjY2NTA0MTM0ZjIxYTBmZjk2ZmYxZDFhODYzMzAgbGVnYWN5LXRydW5rCis2NDc1NyBjM2JjMDUyMzcyNzJlZGVlMDIxODYyY2M3NzRiY2U0NmMxODBkMGE5IGxlZ2FjeS10cnVuaworNjQ3NTggMmI5ZTEzMGUyMWJjNTQ2Mjk3ODhiOTc1YzhjZWFjMjMyZDk0NzdlYyBsZWdhY3ktdHJ1bmsKKzY0NzU5IDZjOWFmMTRkN2I4MTM0NzZlMjE5ODJiOTU2YzA1ZDIxOTE3Yzk3YmYgbGVnYWN5LXRydW5rCis2NDc2MCA3MWQzMWFiNzM1MDczMWZhY2I0ZmM3MDg4MzZjNmU1NjU4ZTkzYjhkIGxlZ2FjeS10cnVuaworNjQ3NjEgM2FlOTI5YzBlZTdhMjg1ZWJiZTU2Yjk3ZDQ0ZmIzMDhmOWJhZTJmZiBsZWdhY3ktdHJ1bmsKKzY0NzYyIDBjNjJhMjc5ZTRkYWZkMjBhMjJlNTIxNGFjMTFmNjZjMjBmYjdjOTggbGVnYWN5LXRydW5rCis2NDc2MyAzOTQ3YmZkZGE3NmQyN2NlMjJhY2JmNWZmNDg3M2FiNGU5N2YxY2QwIHB5M2sKKzY0NzY0IDY0MGFmNTQ0YTg2MWY3MDRhMzYzYWFhMzNlMTI2ODgxNzM2MzQzZGMgcHkzaworNjQ3NjUgMjIzMWE1Y2VlM2Y1NmVjODMxMDA4NzM4YTI5MmVmZjJjNDU5MDhiMyBweTNrCis2NDc2NiA0NjE0YWMzMTJjY2VlOTgwMjZjMmEwMjdiZWZlMTJmNjA5MDRmNDAxIHB5M2sKKzY0NzY3IDMwZmJmOGU0NTU0OWQwMjk2OTQwMTY4NzA3MzNlZTllYzU2ZGQwYzQgbGVnYWN5LXRydW5rCis2NDc2OCBkN2ZkMzJjZTA3YWE2MmFmNWVmZTk3NjkwYmU0NjQ4ODdhNGJjYmE2IGxlZ2FjeS10cnVuaworNjQ3NjkgYTI0NGQ2YjE0NTAxOGU4MGRkYTYzMmY4NzY0MzcwZjVkMWUzZGVmOCBsZWdhY3ktdHJ1bmsKKzY0NzcwIDViMmYwM2JlYmUzYmFmNmJiNThjMTliMjdlNjZkNWEyZjZjNWM1OWEgcHkzaworNjQ3NzEgMDhjNWM4YzExNGIyOWE4ZTgyOTAzYmMxZjczZTY0MTk3NmM2Yzg3NCBsZWdhY3ktdHJ1bmsKKzY0NzcyIDI2Nzk5ODYxZDMxOGNlMDdhNDYzYjdhOTRhYjk2ZDRkMDk1ZDdhZjggbGVnYWN5LXRydW5rCis2NDc3NCA2NWY2OWNiYWY0ZjBkNWIzYjZmODBhYTY5YWY3YzY4YjYwYTU4NmE0IGxlZ2FjeS10cnVuaworNjQ3NzUgYmM5NDNiYmZkYjFlY2IzMzNlZThiYWNiYTJjZTQ0ODM4YjlhZjg5OSBsZWdhY3ktdHJ1bmsKKzY0NzgxIDgzZjRiNzc3ZDk0YzVlMzUyM2U5YmQ2YjUwMzVjOWZjOWYxY2U2MGYgcHkzaworNjQ3ODggZjhiNzQzNjMyNTkzYWE0MTM3YTNkYzBhMGZhZTFjZjZhMDk4YzAyNCBsZWdhY3ktdHJ1bmsKKzY0NzkxIDFiYzU0Mzk0NGRhYTI4ZGQwZGFjZGRkOWEwNmJlZmM0MjcxN2ZiMDEgbGVnYWN5LXRydW5rCis2NDc5MiA0YzAxZDc4ZWM1OWZmZjRmMDFlNjEzNTU2MDVkZDRkMjE4MDcwODRhIHB5M2sKKzY0NzkzIDM2MTg4NTQ0YzU2MTAyNmY2ZjgzZDZlZmFmZDliODRhZjY3ZThiZjYgbGVnYWN5LXRydW5rCis2NDgzNSBiZWQzZGZkOTkyODFlNDFlNzU4YzE0N2M3MDM4MzQ1OTc2NGQ5ZmVjIGxlZ2FjeS10cnVuaworNjQ4MzYgYzMyZTkxNjUwYzE0NGI5MjdkYmMyMjI1Nzk3YjMxOTFiYmFiZTAzMyBsZWdhY3ktdHJ1bmsKKzY0ODQyIDY4Yzc5NjRkMjUzNDdkMjdkMWJhYWM4ZDk3OGQwNzEzY2EyOTYyYjkgbGVnYWN5LXRydW5rCis2NDg0NSA4ZTczODNjYmU1NmU0OWE3ZWRkMjUyNzgyNGZjNmQ0YzE2NTc2MDExIGxlZ2FjeS10cnVuaworNjQ4NDYgYmQ0MzVlOGIyZTI4MDA2ZGVlYzY0MDA3YzI0N2U1YTQ4NzRiOWU1NiBsZWdhY3ktdHJ1bmsKKzY0ODQ5IDA1ZmVkOWJmNDg5ZDc4M2UxYzQ2NjY0ZjNmMWI3OTkwNTEzZmM2YjIgbGVnYWN5LXRydW5rCis2NDg1MyA3Y2ZjMjhhYzA3MTUyMDFjOTM2ZDdhODQyOThlOWE1ZTI2NGE4ZTIzIGxlZ2FjeS10cnVuaworNjQ4NTQgMTI3NDIxMWEzODhmOWFkMWY4NjY2ODhkOTA3ODUzM2I1ZWYwMmU5MiBsZWdhY3ktdHJ1bmsKKzY0ODU1IDMyOGYzM2JhZmZhMzgyN2Q2ODE5MzQ3NmY3ZGJiNGIwMjQ5ZjA5OWMgbGVnYWN5LXRydW5rCis2NDg1NiBmZDA1NGU3M2UyZjIzOWUzMzVmNTRmZGY0NmZiNDQzN2Y5MmUwMTI0IGxlZ2FjeS10cnVuaworNjQ4NTggMWQ0NGUwMDRjOTFmOGEyZTk4NTVhN2I4MTVjYjVhYzU0ZGUzZGEwOCBsZWdhY3ktdHJ1bmsKKzY0ODU5IDc2MzI1YzE5YWY4NDA4NGQzZjQwOGM4ZDBlYjdmYjNhMjY1ZTVhZGYgbGVnYWN5LXRydW5rCis2NDg2MCAxY2Q0ZDYyNDQ0YjYxNDE0MTcyNTNmMmJlYmVlZjY0NjYzZTllODljIHB5M2sKKzY0ODYxIGUxNjM4NGUzZWUyMmE2NjQ2NmVmYjQ5OThkZjZlMTM2YWM4ZGRlNzIgbGVnYWN5LXRydW5rCis2NDg2MiA1NDVlNDQyMzZmMjg2ZDU2ZGIyYjllN2NiZDE1M2ZjYjM3ODRjNmI1IHB5M2sKKzY0ODY1IGMwM2IyMjNjMmI2OTBiNWI1MjAwOGU2YTY3Y2Y2ZmUwZGFkYTFjYTEgbGVnYWN5LXRydW5rCis2NDg2NiAzODFhZTJhZDgxMGI3NjMyN2UzZDkyZjkzMmMzZmE4Yzk1NzViYjAwIGxlZ2FjeS10cnVuaworNjQ4NjcgNTNiNTFjMjEzYjNkYjAxOGM3NzEwNzdmYWUzYjdmMTk2YjY5YzgyMyBweTNrCis2NDg3MSBlMjg2YmQwZjRlMWJkZjYwMTFlYTRjNDlmODZkNzVlMTcyYTRiZWQ1IGxlZ2FjeS10cnVuaworNjQ4ODAgMTNlNTI1ZDk3NGIxNThiZjZkYWE0MmU4ZTNkOTIzNDdhODFhMzg1NiBsZWdhY3ktdHJ1bmsKKzY0ODgxIDRmODA0ZWU3NzJlYjJmY2JjZmYyZDFkMGRiNWIxYzg5NjE0Y2U1MzMgbGVnYWN5LXRydW5rCis2NDg4MiBmYWVhNmU5ZGE2MzlhZjFkMDFkMmE2YjQyMzIxM2VlYzY2ZTkyYWE5IGxlZ2FjeS10cnVuaworNjQ4ODMgYzY1OWI1MzhmN2JhYzU2YTdhN2M5NTA1ZTllZGQ1YWQwYTdkNDUyMCBweTNrCis2NDg4NCBjZDc3NjNiMDU0NDZmMDM4ODQ0ZGMzM2YzMGRhY2RkYjRlOTY4YTQ3IHB5M2sKKzY0ODg1IDhkYTVkMzhkZGNhM2I4ZGNkMTRiZWEwZTZjNDcwZDdlMmY4NmJmYjAgbGVnYWN5LXRydW5rCis2NDg4NyA5MGI2ZDE5ZjA2YzFkOWZmMjhlZjY4MTI4Y2YwOTY0Y2Q1NGJjZTNkIHRsZWUtYXN0LW9wdGltaXplCis2NDg4OCBhNzQ3Y2QwNjZmMzIxMWY5MGRhMGIwMGZhNDQyYjljNTI2ZTg3NDllIGxlZ2FjeS10cnVuaworNjQ4OTYgYWQzMDkxMjI3ODRjZWZmNTZiYzY2OTRlMjdlMGUwMTE3ODI4MjQ0NyBweTNrCis2NDg5NyAzOGQzYTUwZGVmZWM5N2Y0Njc5ZTc5MWJiNGUyZTcxODgyMTQzNDM4IGxlZ2FjeS10cnVuaworNjQ4OTkgZDZkZmZkYjMwYmRkZDhhZGJlODQ1ZmE2NzBkNWUyZGRkZDYxNGExZiBweTNrCis2NDkwMCBiYzI3Yzg5NjdjYWMxZmFmYWI1YjkwZjgzNTJhZGEyYmRiOTAzMWI4IGxlZ2FjeS10cnVuaworNjQ5MDEgMmM5ZDBhN2UzYmM0ZDNkZDNmZjA0NzkwNWQwYzQ5MWZkNzUyYWM0ZCBsZWdhY3ktdHJ1bmsKKzY0OTAzIGJlYjBmZjVhMmEwZjU4YzU2YmJkOTg5NTY2NDVkNmFiYmNlYjM1MWMgbGVnYWN5LXRydW5rCis2NDkwNCA1ZjI0MzFkZTYzZDBhNTE0OGRkMmYzY2M0NjNjM2Y5MjY3NWU5YjY1IHB5M2sKKzY0OTA1IDJlYTgyOWRkNmI1YTFkZTcxNWRkNzQ0MzMyMmZmNDM3MTAzMTk5YjEgcmVsZWFzZTI1LW1haW50Cis2NDkwNiAxOWNkYWFkNzg4YjkwZjBhMzAxMDNmMjNjMjI4MTZkOGY1MmQzMjM1IHB5M2sKKzY0OTA3IDVlZTMzYjlkZGVjYzY5MzRmODdmNjE5YjJiNjA3NmIzZjQ3ZmUxYjQgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTA4IGE3MGQ5MDVlNTA0MThiMTE5NDJhMDg4YTYyMDMwNzc4YjA3NDEzZTYgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTA5IGUyMjk2YjUwMDYzZGYzZTdiOWQ0ZmE3MTM5ODdiMmM2M2VlNTE3OTEgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTEwIGIzNWM4YjE5NDBhZjUyMTAwZTllM2FlOTc5MzNmNmE5YmYzNDRiMjQgbGVnYWN5LXRydW5rCis2NDkxMSBiNWNmMGNiMGM3Y2U1OGI3MzAzNWQwNTBiOWU2YWFiZDI4ZTgxN2U0IHB5M2sKKzY0OTEyIDg2ODY1NjMyODE1Mzk1ODViZGFiNTc4YmQxOWE5YjAyNGVlNTY2MmEgcHkzaworNjQ5MTMgNWFhZmEyM2NiZmZjOTk2OTE2MmNiMzE4YTQ1OWM3MmNiNWZjMjJkYiBsZWdhY3ktdHJ1bmsKKzY0OTE0IDIzMjEwNDBlYzkwYmU2NzRiM2I4MmJiYzI3NTYzZDUyZWM0NTE3MGMgcHkzaworNjQ5MTUgYjkwNzUyYzVlOGMxNTNjNjlhOGU3N2YyN2IwMWFmYjEyMTIwZmFlOSBsZWdhY3ktdHJ1bmsKKzY0OTE2IDhjZmNmNzkzMjcyNDVjYzcwMzIzZjM3NzM5Yjg1OWMzNmRiYTQwMWMgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTE3IGFiMmNmZDdjM2JlODc2MjdhNmQyOTY5ZGNhZGRiODdmZmZjYWE2ZmYgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTE4IGU1M2U0YTcxZjU2ZmQxODZiZGU4MzY5ZGE2M2E0M2VlOTBjMzAyZGEgcHkzaworNjQ5MjAgZDYxMWIwMDkxZDVmNjRlZWFmZWM1NjZmYTY0MDE1OWMxNWUxYjdmZiBsZWdhY3ktdHJ1bmsKKzY0OTIxIDVkNjFhZDIxNGI5YzA2OWM4OGIxYTE5OGYxNzI0YTI0NTI3MGUzMTkgcHkzaworNjQ5MjIgMDQxNTUwNzM4MjAxZmRmZTQ0NjFlNzk3ZTc1M2NkZDVlMDhjMjY2ZCBsZWdhY3ktdHJ1bmsKKzY0OTIzIDhkMGE5NzY4MTZmMmY5ZGU3ODAzOGVhZmFlNDBiOGZhYzRkZGYyYTcgcHkzaworNjQ5MjQgMThiZjJhYWE4N2I1ZjI0ZTdiMzE0M2UwMjZkYjQ3NDJmOWYzOWEwYSBweTNrCis2NDkyNSBjNTcxMGYwZGViYWUyNzUxNWE3ZDhhMzA5ZDExZGNlMTQ2NzBlOTBiIHB5M2sKKzY0OTI2IGU1ZTEyZDMxMDU3ZWQ1MDViZWE3NTAyNWM4YzZmZGYwZjMzNTg2MDAgbGVnYWN5LXRydW5rCis2NDkyNyA1YWMyNmIxZjI1ZDkxZWVjNGJhYmE0ODliMjJhZWQwZmMyYmJkYjM0IGxlZ2FjeS10cnVuaworNjQ5MjggNmMxMjM3Y2I1YWFhNjZiZGNlODg1ZDA5MjExYTdkZjY1NmNjZmE3ZSBsZWdhY3ktdHJ1bmsKKzY0OTI5IDhiYWNlMjE0YWU1NGEyMGM5MGJhY2M5NjJhYjhmYjQ5NTZkNWZhNjYgbGVnYWN5LXRydW5rCis2NDkzMCBhZmU4ZDUxNWJmZTJlOWM5OWFiNzJmYWIzNzYxYzE4MTVhZDdmZmJjIGxlZ2FjeS10cnVuaworNjQ5MzEgODFlMzRkN2U0YmEwYTdmYTYzMWJkM2E0MTgwYTA3MzljMjM5YWI5YyBweTNrCis2NDkzMyA2ZmQ4YTFkODQ0OGJjZDE2NmZlMzcwYzQzYzJkYzRjY2ZlNjRhODhiIHB5M2sKKzY0OTM0IGJlM2QzMTA2ZGE2ZjI0NTFhYmVhNmRiMWZjNjdlN2M5OTNlNTQwODMgcHkzaworNjQ5MzUgYWZkZDY0ZWRmMTg5ZTVmOTY3OTM3MjEwNjI5MmQ1ZDQ2MzEzMWJjOCBweTNrCis2NDkzOCA5MmIxY2FmYTMyNjdiNjY4ODAzOWEzY2Q3YjgyNmYzYTU5OTNkNjMzIGxlZ2FjeS10cnVuaworNjQ5MzkgN2EzMGIzYzVjYjU3YTdiYzk2ZWFiNmJjM2I0MzMzNzg0MGRjZWNjZCBsZWdhY3ktdHJ1bmsKKzY0OTQwIGMzYmM0Mzg4ODJjYjgyZjRlMmU5ZGM4NDI4OWMyODNjZGNkZjA0NzkgbGVnYWN5LXRydW5rCis2NDk0MSBhZTM0Yjk1MWIzMzc3NjI2YWI0ZDdlYjE3NTI5MzQ3NTRmOTkyOWFiIGxlZ2FjeS10cnVuaworNjQ5NDQgMmFkNzQ5ZDU3ZTYyYzA1MDU4NDc1MjBmMWY2MWMxNzZmMzE0YTgyZCBsZWdhY3ktdHJ1bmsKKzY0OTQ1IDJjYzRlMWM0NzVmODEzYzE0Y2EwMDEwNzg2ODdjMmFiNWI4ZjJkYmEgbGVnYWN5LXRydW5rCis2NDk0NiBjMGMwNmZmYWVhODMxMDkxM2UwMzRhYzg0ZjI3MmVhZWIxOWQ0ODVlIHB5M2sKKzY0OTQ3IDE5MzY5YzdmNTc5MTRhNWNkNDJiNjAwODNkZGVjNTk3MGIxYTc4MTIgcHkzaworNjQ5NTMgZTdhNmE0NTE1YWIwYjM5YjU1YjI0MWFkZjIxNjg1YWNhNTMzN2E4OSBsZWdhY3ktdHJ1bmsKKzY0OTU0IDk5ODY4MjA3MjNlMGNmYzcyNzJkZTg5OWQ4MGExYjQwMGQ1YzlhOTUgcHkzaworNjQ5NTYgM2Q4NjgyNTRmZjdlZWZkNmUzYTFmYWJjMzcxNzM5N2EzN2M5MTc1NSBweTNrCis2NDk1OCBjMmIxMTRkMGUxY2Y0ZDczN2Q1OTAzNTg3NGIxMzVlZWMzZjJiMTBjIGxlZ2FjeS10cnVuaworNjQ5NTkgNzQxOTU0OTllOTA5M2NhNzVlYzExZjFhNGI0ZGI1M2VhOTIxNDM2YyBweTNrCis2NDk2MCBkNGU0NzMyOTFhMTdjZmIzNjc5ODY5Y2Q0ZDY2MTk0OGU3ZmNhNWFmIHB5M2sKKzY0OTYxIDJmYmUyOGRlY2EyYTI4NGNkODQzMTE1ZTQyZDEyY2I4ZTU3NmNiM2EgbGVnYWN5LXRydW5rCis2NDk2MiBmOWI4MGE4MjBhMjU2OWNhYmQ1ODJmYzk4YTQxZDlkZDk0NDY0ZmQ4IGxlZ2FjeS10cnVuaworNjQ5NjMgN2Q1NzBkZjVlOTBhNDEzYmUxNzg4NzAyNzlhNGVlOGZiYTQ0MmI2MyBweTNrCis2NDk2NSAyZWUwOWFmZWUxMjYwMjUwZmQ3OGQwMjc1Yjc3ZWVkZWE1YmZmM2FiIHB5M2sKKzY0OTY2IGRlZDIxNzA0MzcwN2MyZjVkNDM2NWJkOGQ4NzkyNzk0YTBlNDRjMDQgbGVnYWN5LXRydW5rCis2NDk2NyBmNGU3ZWY0MzI5YTk1N2U5MmFmYjExYTRmMGVmYzgyZGM2ZWU2ZmQ5IHB5M2sKKzY0OTY4IDFmZGJhMDk3OTMyYWY4NmZhNDE2ZTgzM2E3MmQ2Y2JkOTIxNTE4ZjEgbGVnYWN5LXRydW5rCis2NDk2OSBmODcyM2ViMTA1YWNkNWZhZGUwZDZlNmJhZjUzMjI0MzIxM2I3Zjk1IHB5M2sKKzY0OTcwIGUyNmM3MjRkNWUyM2UzNzQ4Zjg2ZWU1NzU0MGM4NjJlNDRiYWNiNDggcHkzaworNjQ5NzEgOTE2ZDMzZWM3YjVhZmVjYzBiNDNkZDNjNWM0NDgzODRmMTI1ODIxOSBsZWdhY3ktdHJ1bmsKKzY0OTcyIDQzMmQyNzgwOGJkMWVlNjM5M2E2OWFmZGI4Yjk2Y2Y1NGQzYzkwNWUgcHkzaworNjQ5NzMgMWYyNGNlYzBmMmUxZDY4ZDI2N2QxNzgxODZlYWYxY2NiMTM4Y2NmNCBsZWdhY3ktdHJ1bmsKKzY0OTc0IDk3YmE5MzZlOGRmODRjYTQ3YjBjOTYxZmYyMWY1ZTYwOGI0YTU3NTAgbGVnYWN5LXRydW5rCis2NDk3NSBkMDQwYTNiNjNkZjQyNTg4NjdhMTZhZTA5YmQzY2QxM2Q5Yzg2ODk2IHB5M2sKKzY0OTc2IDg3NWJlYjRhZDg4OTE1MGE2MDU4MjBmNDNkNDZlNDE1ZDE1NGZkNDcgbGVnYWN5LXRydW5rCis2NDk3NyAzNTAwNGQ5YmZkMTU2MDQwNDUzMWFmZjIyZGI5NTkzNTQ0M2I5NzVmIGxlZ2FjeS10cnVuaworNjQ5NzggZGEyZDM2MzM3OWYyNmU0ZTQ0YmQxNGRhZDg1YzEwMGYyMDQ0ZTRhYSBweTNrCis2NDk3OSBhNDQ4MmExYTMwYzZkOTNjYzMyMzQzYzhiMTI4NmVkODI3NWVlN2I2IGxlZ2FjeS10cnVuaworNjQ5ODAgMWUwMDkxNzA4ODc1YTc4NTEyZjQxMzczNTQzODI4MTBlYThjOWUzMCBweTNrCis2NDk4MSA5Y2IyOGFkNWE0MWMwMDEyNjkwZTU5NzE1OTRiMjViZTU2MGMxMWExIGxlZ2FjeS10cnVuaworNjQ5ODIgMDFmYmUzZmM4ODNlMGFlYjFlZGUzMTQzODJiYTkzYjQzNjQ2NzY5MSBsZWdhY3ktdHJ1bmsKKzY0OTgzIDUxYzBkM2EwNzFhZDAwNzgwNmZjN2Q1ZGZkZmNhMjJhYzNhOGMxODggbGVnYWN5LXRydW5rCis2NDk4NCAzZmE0NGU1ZTRlMmIxZjJjZDZkOGQ0MjU4MGQ0NWY3NDllMzg5ZTBiIGxlZ2FjeS10cnVuaworNjQ5ODUgYzY2MmU4Y2ZmZGRmNjFkNWI2ZTRjNWRhYTY5OTJlOTQ0YmYwZmI3NSBweTNrCis2NDk4NiBlZmY5ZDExYzQ3NjI2YWJjZTA3MjY3YWIyMmNlZmU4ZTU3MzQ2ZTRlIGxlZ2FjeS10cnVuaworNjQ5ODcgM2EzYTVhNDkyMTQ3MWMzNDgwMTQxZmRkYjQ1N2Y3MWNhNWIyYjQxMSBweTNrCis2NDk4OCAzYmIxZjhiYmEzMzY3NmEzNTk3N2E5MzY0ZGMzY2ZjOTE5NjJhMjZhIHJlbGVhc2UyNS1tYWludAorNjQ5ODkgYmJkMGM5MDAyN2JmYjc3YjQ2OGNlZWYzMTVmYjFmNjJiMjU3YjdjNiBweTNrCis2NDk5MCBiZDQ4NDEwNjljNjg0ODU4YjI3MmQyMjQ4YWE1NWYzZTYzZmMxMDQ0IHB5M2sKKzY0OTkxIGQxNGQwYjE1ZTE4ZTcwZjdlNzQ4Njk1MzgwNWZlNDI4NTA5YjlkNzMgcHkzaworNjQ5OTIgMzhkNzE5YmVkZGJkZDg2MzY1MWM5MGMxZDI2MWYxYTY0Mzg2NjNkMyBweTNrCis2NDk5MyBlYTIzZTdjNTYxNTQ1NmNjYzU5ZDNiM2Q3ZTAxZTZmNzIxZjJlZGI4IHB5M2sKKzY0OTk0IGZjZWZmOTU0ZjM4MDRjNjJiMWNlNjU1ZTI0ZGM5MTM0YzIzMWRjZGIgcHkzaworNjQ5OTUgOGU5ZTY1MzgzYWZiNjUwMmUzOWRlNzRkMTUwNzUwZTliMDVlYTEyOCBweTNrCis2NDk5NiA2NWU5YzAxMDJlZjljNGIwOTQ3YjkwZWQyMTU4MzhhZjFiNzIzYTk1IHB5M2sKKzY0OTk3IDkyNmIyYTE5NjA4MzE1Mjc4NTA4YjEwNWYwNzdjZWU0YTBiZTFlOWQgcHkzaworNjQ5OTggOWViZDNmMzg1NTc1OWQ1OGFlZTRlYjhiOTdjZWYzN2JkYWI4MjM0ZSBweTNrCis2NDk5OSBhY2E1YjJlNmE2NmYzMjRiNzQ1NDZlYjgwZjU0ZjIxOGM3MzU1MTBkIHB5M2sKKzY1MDAwIGY1OGUzYTBlYTk5YTE3Yjc2YzVlMDg2ZGY4OTU4OGNkNTM4MzFjZTIgcHkzaworNjUwMDQgOWFhMDc4MTYxNWZiMWM3YTc2MGFkYjZkZDVkNTI2ODFkYTAyZGI4NCBsZWdhY3ktdHJ1bmsKKzY1MDA1IGMwYWIyYmFmYjI2NDQwYjU5Zjk4NDkwNWM2NDFhMDc2NDc0YTQ2NTUgbGVnYWN5LXRydW5rCis2NTAwNiBjZWEwNjZkZWRmZGZiMjA4ODI1OTZlYTMzOTMyNzY3MWIyYWM1NmUxIHB5M2sKKzY1MDA3IGNhMGQ2MjBjZDYzYjJhNWZiZGFlZDQxYmU4NjY3NzU3ZmQxZmRjYWYgcmVsZWFzZTI1LW1haW50Cis2NTAwOCAyYmI4NjZkMjgyYmFkNTVkZmU2NWU3MTM5YjEyOTMzYmY4MmE5YmY3IHB5M2sKKzY1MDA5IDE3NzMwMmZlYWIzNjg5NTVlZWQwMzI1ZWU5NTE4ZGFmNWFhODliNDcgcHkzaworNjUwMTAgZGUwYmY2MGYxMjQ1YWM3M2U0NGJiMjVlMmM1OGVhZTZlNWQwODJhZSBweTNrCis2NTAxMSA0ZjZlZGVhNGI1NTg1NjExYzE1NGY1YTIwZmIwZDI3OTdjZDI3NzVjIHB5M2sKKzY1MDEyIGE1MTkxZDdlYTQwNTQwYzMxNjFlNWFjZDQ5NzAyYTcwMTM0YjhjODYgbGVnYWN5LXRydW5rCis2NTAxNiA1ZjZkYzJmODZhODg0NDE3NWIyYjliM2FkYzM3N2Y5MWI3ZWFiZTZhIGxlZ2FjeS10cnVuaworNjUwMTkgZWMzOGZiYmI4Y2NlYmUxZjI2NzA5MDdlNjg5MjY4MTU4ZjhhZmJmMSBsZWdhY3ktdHJ1bmsKKzY1MDIwIGI2NDVhYTJiY2E5Y2M3MTIxOWJjMjMzNDhjYjEwNDBiNGU2YzFhMTggbGVnYWN5LXRydW5rCis2NTAyMSAyZTkwZmVmMjI2ZWE2YzIwMmRhNzAxZGI2YTIwZWRhZDcwOGNmNmE0IHB5M2sKKzY1MDIzIGEwOTYzZTQ2ZjQzZTVlNzdlOTIzNTViNTU0ODdmMWY0NzZkNWUzNjYgbGVnYWN5LXRydW5rCis2NTAyNCA2NTRmZjU3NTU0MzZhZDUzYTZkYTFjMGQxMmIxNGI1NTc0YmIyYzNjIHB5M2sKKzY1MDI2IDY1NTIyN2M5ODhhNzhkNmQyMjgzYzE0YzhmOGMxYWI3NjJhNzk4OWMgbGVnYWN5LXRydW5rCis2NTAyNyBhY2FjYTExZDgwZGJjODRkMzEwOWFkODZiZDkxMDM0NTc2MDI3NjY2IHB5M2sKKzY1MDMwIDU5YWM1YWVmM2IyZDFmZjNjM2E2Yzc2Yzk0NDU5MmRlMTViMmU1NmMgcHkzaworNjUwMzEgYjJmM2RlMzU4YWY0MDgwMzI0ZDdhZjg0NWFiODIxNWVmNmI5ODAxNiBweTNrCis2NTAzMiAwOWJlYjk2YmEyMGQ0N2M2MzQxNzI3ZTFmZWM2ZmQwYzEwNmQ0Yzg5IGxlZ2FjeS10cnVuaworNjUwMzMgZWM4NWI1OGFkMmJhNGEwODBhNjAxYmIxMWI4NDc2Yjk2OThlNTJlYyBsZWdhY3ktdHJ1bmsKKzY1MDM0IDZjOGJhYzkxM2FhYmZjYzA4YzVmZDQ3ZjVjZTRlNGE0ZDZkY2I4ZTcgcHkzaworNjUwMzUgZWJlOTMyMzI5MjQ2OTk3ZDUzODEyMGEzOGFlZjdhNTZlZTJjMzgzNiBsZWdhY3ktdHJ1bmsKKzY1MDM2IDYwNGZlYmQyMDRjYjJkM2U2M2YyOWYxNGI5MWU3ZDY5NGY5MmFhNGYgcHkzaworNjUwMzcgZWM5N2I3YWFkMjMxYmVjY2Y3YTI3ODNlNGI0MDI4ODk4Y2FhOTM2NiBsZWdhY3ktdHJ1bmsKKzY1MDM4IGVmZTcwNmFhYjMyYjkxYWUyODNhZWYxYWVmY2I2OTczNDI2ZjJkY2EgbGVnYWN5LXRydW5rCis2NTAzOSAwMTgwNmNkZWRkZGUzNjA4YmYwNDE0OTQwYmVlODE5OWRjMTUyYTFmIGxlZ2FjeS10cnVuaworNjUwNDAgMDkxZGY0YzA4ZDk5YTRkZTUzNTdjOTk5OGY4NGU1NjkwOWE4YmI5OSBsZWdhY3ktdHJ1bmsKKzY1MDQxIGZiZjE2NWE3ODk1MzczY2FkMzBjYzYwZjFmMzY1ZjJiMjM3ZDVmOWIgbGVnYWN5LXRydW5rCis2NTA0MiA3ZTAzMGI2MjgyOTRkYjIyOWI4ZTA3MjQxNGI1NWM3MTU3YjcxMWQxIGxlZ2FjeS10cnVuaworNjUwNDMgYjk4MjhiMmE1MWMwZmYzNTFmMWNiNmYzNTIyZTc1Yzg0ZmU2MTMzNiBweTNrCis2NTA0NCA5MjFjNGE4MDk5MjM4MzE3ZDVkZjhmM2UyNzZmYmI5NjZhYzU4YzE5IGxlZ2FjeS10cnVuaworNjUwNDUgZDg3Y2Q1ZTczNjVhYTgyYWM3NzE3NTM0M2ZmODk3YzJlOTkxN2IxYSBweTNrCis2NTA0NiA3NjhiY2ZmNGMwZGFlZGE2NDdkYmQyNzQ0MTBkOGRmNzAxM2ZlY2Y1IGxlZ2FjeS10cnVuaworNjUwNDcgZjJjNzI3OTI1OGMxMmRjNDY2OTZjNDNjNWQ5MzQ0YWYzMTFkYjAwZCBweTNrCis2NTA0OCBkMzFkNjFmNDY0OThkMTQyMTczZmJiMjUxMjZiYWRkY2Y0ZTNlMzhiIGxlZ2FjeS10cnVuaworNjUwNTUgMzBmZGQwYzNiNmRlMWI4MjM1ZTc1YWI1ODAwOTA2ZjljN2M0NDNmOSBsZWdhY3ktdHJ1bmsKKzY1MDU2IDljNTZjZDk3ZmY0ZGVlMzA5NDY4YzM1MjMwZGJiOTg1ODVhNWY0NmQgcHkzaworNjUwNTcgMjdiY2E3ZmFjMzYyZDcxNTkwZGQ2M2JlOGVhNjE1MjU0ZjZjOTE3OCBsZWdhY3ktdHJ1bmsKKzY1MDU4IGM1OTExYTdiNWZhMDBiYzI3NWY2Y2Q3ZmI2ZDcyOWE4YjRlNWVkN2EgcHkzaworNjUwNTkgNDUyMzNkNGMxOGQyM2IwNjBhZWRlM2JiNWYyMzZmM2ViYWVjMmZiNSBsZWdhY3ktdHJ1bmsKKzY1MDYxIGEyOWM4NmNlNzY2ODcxMTEzYmUyNzZjNDI4NmIyYTFlZmY0MjE1ODEgbGVnYWN5LXRydW5rCis2NTA2MiAxYmU1YjZiZTQzY2I2OTg1NDJjODM5MjE5Njc1MjQ4ZGI4MmFjNTlmIHB5M2sKKzY1MDYzIDc5Zjg0YmMyYjE0OTIwODVmN2ZkNmMzZDdlNmFiNjU1ZTlhNGI1NmEgcHkzaworNjUwNjQgZGJjMmI3YWQwYzIyMTdjMDgwZWRjMDFjNDc5NzYxYWNkZTRmYmIyOSBweTNrCis2NTA2NSBlZWZiOTgzNzk2NDRkOWJmODRjNWUyZmViM2EyNTlhMTVhMzViNTBkIHB5M2sKKzY1MDY2IDc4YTI5YTA1MjA3OTgyZDI2ZTczYmEwMDZiM2U0NDlhYWZjYjc3NjUgcHkzaworNjUwNjcgOTkxY2FkZDQ3ZDk3MzJmMzExMjExZWViZGU5MGZhOGU5ZTdkOWEzNCBweTNrCis2NTA2OCAyMDY4NzEwYjMyYzM1MTNjMjQzNjJiMDhiNTE1OTMxNjM5NDY0YWM1IHB5M2sKKzY1MDY5IGYyODNlM2I1ZjkxN2FiMjZiNTM4ZjRlOGEwNDRmYjA3Yjc4NjlhZGEgbGVnYWN5LXRydW5rCis2NTA3MCA1NjAzODhjZGExNjNkOTNkZDhjODRmOWIwOGEyMmZlYjQ1YmRhMmUxIGxlZ2FjeS10cnVuaworNjUwNzEgN2M2ZWM3YTgwMTZhZGZhNzM0ZmI5NzIyY2UxMGRiYTY2YzlhODFjMSBweTNrCis2NTA3MiBiYTM5YjQwZWJmMmQ5MzM5Y2FiYzdkNWYwNDNhMGFmYjA3OTc3NDQ3IHB5M2sKKzY1MDczIDgzZDBkNGNiN2E2NjFjOTdjZjU5ODQ4YmM2NjE3NmY5ODhlODkyYTcgcHkzaworNjUwNzQgM2Q1MjY1MjViM2U4MWQ5NGFhNGYyZTRjNjcwODFhNTY4MzQ5OGY1ZSBweTNrCis2NTA3NSA1YzMzMDA5OTk0YjQ2MzU4ZDZlZjk4MzUzNzRkOGNlMzhkMjViM2ZiIGxlZ2FjeS10cnVuaworNjUwNzcgNmRkNTIwZTFiYzBkYjM2MWZhYTFjZDYzZWFlNDE2Yzk0Y2YzZWFkZiBsZWdhY3ktdHJ1bmsKKzY1MDc4IDRkZWFkYzhmOWUwYTM5M2VhNjFhYWRmOGQ5ZmQ5NGUzZTZiMjAxODYgcHkzaworNjUwNzkgMDMxYjVhZDU0N2U0MjdiNDM3Nzk0YjgxODFmMjkyNDkwNjJiMDgzZiBweTNrCis2NTA4MCAxNmVjNGJiMTRhNjhlYTQyOGFjZjA5ZWJmMGM5Mjk4MWRhMjY0NmYzIHB5M2sKKzY1MDgxIGE5NjgwMjliNjNkYjEyMWYwMDdhN2RjOTBhZjg4YWM1ODJkZDQ3ZTEgcHkzaworNjUwODIgODFlYzgyNjNiZDZlMjVjOWE4ODU1Y2QwY2U5YWU4ODE3MzI5NzJiZSBsZWdhY3ktdHJ1bmsKKzY1MDgzIDU4ZDRiZjMxNzI4ZmY4YjQyOTYxMWIzZjRiMGU0OTIxYjA4YTFhYzYgbGVnYWN5LXRydW5rCis2NTA4NSAxOWU3NzlkMDIwNTM1M2ZjOGNlMTkwMzU3MzRlMzc4MjhkMmQ0M2Q2IGxlZ2FjeS10cnVuaworNjUwODYgYjc0ZTlkMDliMTgwNjkzZDAwY2M1YjMzNDZjMTAxNGQxNDZjMTU3MiBweTNrCis2NTA5MCA3OGVlNmJhMjA5OWVlN2QyYzZkOGI1YjIyM2ZiOWUxMTliMzdkODVhIHRsZWUtYXN0LW9wdGltaXplCis2NTA5MSA2NDRjYTQ0ODc4ODFlODc5ZTAxMGVmNTNmZjk5NDY4ZjlhODM0MDVjIGxlZ2FjeS10cnVuaworNjUwOTIgMGVhZTliMjVhMmVkMGJkZTA1OTUxYjlhMDBlNWM5ODI3MmFkMjhkNiBsZWdhY3ktdHJ1bmsKKzY1MDkzIDhlYzE4MzBkNTcxOTk3M2U3MDczYTgxYjg5OGIzYTExMDM3YzFhMTAgbGVnYWN5LXRydW5rCis2NTA5NCAxYWNmZTQyOGU4ZjE5Yjk3OTBmNDU3ZDgyZmNkYjRjMmU0ZWMzYWY2IGxlZ2FjeS10cnVuaworNjUwOTUgY2VjNzA0Yjc5YmRmMWY1NTAxMzY5ZjE2ZDlmZDc1Mjc3MDA1OTU3YiBsZWdhY3ktdHJ1bmsKKzY1MDk2IDI5MjUxMzVjYTA1MGE2NDQ3NWRkZjMyYWIwYzM3NTRlNzk0ZTYwNjcgcHkzaworNjUwOTcgNGVjNWEwZWM2MzFhMDU1M2M1NTY4ZDM0OGJiODNhYjlkMmNlMWI1MyBsZWdhY3ktdHJ1bmsKKzY1MDk4IGU4NWQ1NjkwYzI5NmVmNmYzMGY1ZTk3MzBhYTYxYjBmZGE3Y2EwMmUgbGVnYWN5LXRydW5rCis2NTA5OSBhYzFjZDQ2YmY3ZDU3ZTliNGQ3NGYyY2YwYjViMzExMzVjZGUxYzZkIGxlZ2FjeS10cnVuaworNjUxMDIgMWIyMGFmYTQ4ZDU4YWU1MTI1NDkzZmMyMzM5ZTI5OGY3MGZjMmU0ZCBsZWdhY3ktdHJ1bmsKKzY1MTAzIGM0MzIzMDdlYzAwZGQ2ZDY4ODFhYjAxMWQ0MTRhOTFlNDg2MTExZDcgcHkzaworNjUxMDQgOTU3NmJiNzFhMDFiNDhjMGNkNDA5MzBkZTY5NzhlNjhjNTE5ZTMxMyBsZWdhY3ktdHJ1bmsKKzY1MTA2IGU3ZDY0ZTgyOTAzNTIyYjMzNjcwM2ZkZjFhOGMxYzNlZDJhNmUyZDggcHkzaworNjUxMDggOWJkYjc0MDRlZmU3ODg5ZGI4YmU3NDNlYjgyM2MzZjY2ZTdkZDE3MSBweTNrCis2NTEwOSA0OTcyNmRjYTE2ZDgxMWMzMThkYzMzZmE1MmVjYTI3YTU0NTg1NzhlIGxlZ2FjeS10cnVuaworNjUxMTEgYjkzMWEwMjI2NDY2NTZiZjE5Y2Q1NDgyZjIwZTEyZDQ4ZTY1NGNiMCBsZWdhY3ktdHJ1bmsKKzY1MTEyIGY5MDQwZDEwN2Q2NjQ3ZGVmNzlkZmUzNDkyOGU0MTM4ZTA0ODBmNjcgbGVnYWN5LXRydW5rCis2NTExMyAyOTc5NTEzMDY0MDA1MjFiN2Q3ODQwYjJjMWIwMDc1MGIwZTVkZmJmIHB5M2sKKzY1MTE1IDZlNzcxNmEzYmRlYzEwNjBiOGViNTNhYzZhNzdjMzkyZjA1NmY2MjEgcHkzaworNjUxMTggZGVjZTE3ZWRiZWQwOGFiNjljOTIyMWY4NjhiZDBkNDU1NmNmNjc5ZCBweTNrCis2NTEyMCBmZWZmZWMyNmM1NmNiOTZkYmNlYzMyZTdkOTZlNWJjOTEwZjIxMjliIHB5M2sKKzY1MTI1IDQwZGI0NWJmYzBmMmNkYmNjZGVmYTY1ZmE2NTU5MzhkMTdiNzdiY2UgbGVnYWN5LXRydW5rCis2NTEyNiA0OGU4M2U2NjkzNWE5YTZjMzM4YTU3OWE5NWYwMTJmNTQxYTc5NTU3IHB5M2sKKzY1MTI3IGE1ZmZlMzRjNzJjNDg5OWRjMGNhZTc4MzlkMmZmYzZjZmEyMzg3ODUgbGVnYWN5LXRydW5rCis2NTEyOCBjYWNhMzM4MzJhMWE1MTI3YzIyN2ZhYmY5OWQ5ODM1ODFmNWY5ZWUxIGxlZ2FjeS10cnVuaworNjUxMjkgZTZiYTZmNDE0NjliZjMwYmVkNGJlY2JiZTI1MmZhZjY0ZWJmOTBlYiBweTNrCis2NTEzMCA2YzVjZGRiMjY3ZmUyNGQ1OWQ1YjMxZWFlMGQwYjJjMmQ1OTRkZGE0IHB5M2sKKzY1MTMxIDdhZDZlNGNkNzcxMzY2ZDk0NTU4Mzc3YWUwODZiYzAwYzZlMTE1MTUgbGVnYWN5LXRydW5rCis2NTEzMiA0MGIwZTMzMThhOGJiYWRkMTc0NDdhNjg0ZGM1MjkwODQwMTk0YTBjIHB5M2sKKzY1MTMzIDMzYzZhZjY5YWUwZjE3NTMxZDJhZWE4MzQ3Njg4NzQ2ZDBmYTUyNzAgbGVnYWN5LXRydW5rCis2NTEzNCBlOTA3ZGE4MjUxNjkxOTI5ZThmZTU1ZjhjMmJkM2YyNDI5MTk5NTBkIGxlZ2FjeS10cnVuaworNjUxMzUgNDliZTg4MTJkNDMzMGFlZGU1MDBkMDhhOTYyMmE4YWJiMzVmYzZkYiBsZWdhY3ktdHJ1bmsKKzY1MTM2IDk2ZWFmYWI0ODkwMTJlZGYyZDk4MTNiZmVkMTAwYmVhNDZhYzQyNjggbGVnYWN5LXRydW5rCis2NTEzOSA3ZjU0MjJkMDQwOWY5NDQ0N2U3ZTE0ZTZkMTRiZmZjODMzYWI2NjgxIGxlZ2FjeS10cnVuaworNjUxNDAgZGZjMzc1ODNmMjA0NzY3ZWNhZTY5ZTQ2NWNlZTE2M2VjMDk5ZmI3OSBweTNrCis2NTE0MSA5NDhlNWIzMjMzMjkxYmUxNTI1NmNmMTA2ODliNTY3ZjM3NTE2ZjBmIGxlZ2FjeS10cnVuaworNjUxNDIgNDA3ZWIwMDQwMDQxNDFjYThlZjYyYWM3ODdiOTE3NDM3MjAxM2ZiYyBweTNrCis2NTE0NCA4OWY1Y2ZlYzA1NzNjNWVhMzMxMmI3OTljNTAwZmRmMzExYzhiZWFhIHB5M2sKKzY1MTQ3IDdjMTQ3YTc2YTBiMjcyNDY3NWQ0OTA0MDJiYjQ0ZjlmNmY2MGU1YjAgbGVnYWN5LXRydW5rCis2NTE0OCA4Y2RiMTgxYWE5YWZjNjc1ODA4ZTkyY2Y2NjZhZjExMTNmMjJlM2FmIHB5M2sKKzY1MTQ5IDcwYmU2OWM5M2UzM2FhNTNlOGVjMjVjMWQwYWYwMjg4MTBmOGZmNzggbGVnYWN5LXRydW5rCis2NTE1MCA0M2M2OTM0NTE0ZDdjYzM0MmU2M2EyNDI4MDJmOTJlN2M3Y2I2YjBkIGxlZ2FjeS10cnVuaworNjUxNTEgODk4OTIxM2YzODZiMjZiZTQ0ZGJiYzhlNGNkMmIxYWNhY2VlNDRmZSBsZWdhY3ktdHJ1bmsKKzY1MTUyIDY0NGZhN2EyNDBjOGI3OTYxZDZlN2FiMjRjYzJiMDkzM2FhMGUxYjggbGVnYWN5LXRydW5rCis2NTE1MyBiYjI2MzY4ODI1MDNkZDI2ZGYyZWQ3NGY5MDRmZWJiYjJhNmYwZWYzIHB5M2sKKzY1MTU1IGQyN2UyODAyMDcwOTJkODUwNmIyNTgzNzRiYTY3Y2UzOGI2Yjg4ZjQgbGVnYWN5LXRydW5rCis2NTE1NiAxZDRjYjI2ZWM4OWZhNjlkYWM3MTEzOTMxMzhiYTVlNWZkOTY2MzU3IHRsZWUtYXN0LW9wdGltaXplCis2NTE1NyA1NzhhNGIwYTUyMmQyNjBmZDEwMDg1NTM0YTI2NDM5MjgwMmM5NTgwIHRsZWUtYXN0LW9wdGltaXplCis2NTE1OCAxZWQ2OTRhN2FiNjAxNDczOTQxNDA5YzllMDYzY2UzYThmZmFkYmIzIGxlZ2FjeS10cnVuaworNjUxNTkgYTk3ZmQ1YTNiMDkwYjY5YzY5Y2NlNDFlMmQxYWZhNjE1NjhhMjViYyBsZWdhY3ktdHJ1bmsKKzY1MTYwIDYwNTM1MjUwYTYyYzZhNDBmNmRkYzUzNDdjYTNmMWVmZDU3N2VmNzEgcHkzaworNjUxNjEgNjI4MjNlY2E4ODFiZTRhODdlYzYwZGEwZWJlMmJiOTMwMDEzZjk3NyBweTNrCis2NTE2MiA3Y2NjZTJhNzM5NGEwMjgyYmU0MGFiYjRlNWNkZjEwOThkNWUwOWIzIHB5M2sKKzY1MTYzIDM2NDEwNjc5NmIyMTA0NzJlYTI5ZGY2ODI0NTIwMTlmNDdiZTUyMWYgbGVnYWN5LXRydW5rCis2NTE2NCBlY2M2YmUzODBjNWJjOGE0ODIwY2QyNDMzNDkyM2YwMWM4NjRhODQ0IHB5M2sKKzY1MTY4IDA2OGMwMGJmNWEyNGFmZmYzNjk1MTQwYjI2M2EwMmQ5NWU2Y2FlOTUgbGVnYWN5LXRydW5rCis2NTE3MSAwYTc0MWMxM2ZjODFjNmVjMjhlZjliZmJkZmZlMGJmYzBiNTZhNTkzIHB5M2sKKzY1MTcyIDNmNmQ0M2Q1NzU1Y2I5YmFmMzQwOGE0NDMwODQ3MmEyZDU5ODMyMWIgbGVnYWN5LXRydW5rCis2NTE3MyA5MjFiNjc1OWNiZGU3MDlkYjY2MmZjZTVjMWJkMDBhOTM0MDFjMzlkIHB5M2sKKzY1MTc0IGE5ZGZhMDg1MWIwNzM4YzQxM2Y2MzVlY2MyNTY3NzYwZmE2MmU3MTMgbGVnYWN5LXRydW5rCis2NTE3NSA5NzViYmRjY2M1NWVkNTgyOTUwYmUwYTU1NjQwY2Q0NTEzYmY0Y2M4IHB5M2sKKzY1MTc2IDgzMzFiYzRlODI3OGM4M2JmYzE5Y2Y4YzZlZGUzZDQ4ZDJhNjE2YzcgbGVnYWN5LXRydW5rCis2NTE3NyBiODM2YmYyNWYxNzZhMjlmM2I2MWI5Yjc4N2NiMWRhNmQwMzQyYzE2IGxlZ2FjeS10cnVuaworNjUxNzggYmEyNzY3YmQ0NjIwNTI5OTkwNjA3NmQzY2UzZTAzOTlhMDNjZTI0MSBsZWdhY3ktdHJ1bmsKKzY1MTc5IGQ4Nzk4ZDVlYzRiOTNhNTdlYWRhN2U2Y2U2MGY5M2JkNzliNWQ4ODAgcHkzaworNjUxODIgNWQzODMzZTZhYWUzMGVhMWE5ZjRiYmE5MTgzYmVlM2MzMzE0MjQ4NiBsZWdhY3ktdHJ1bmsKKzY1MTgzIDNiNWMyNjEzZWQwNWRjOTkwMWUzNGQ5NDQ4MDA4MzRjY2UwOWM1YjcgbGVnYWN5LXRydW5rCis2NTE4NCA5NmE5ZWJmZWUyY2QyYzc2NDVjZmY5Y2E5ZGY4MzNhNGE0NTQxZDAxIGxlZ2FjeS10cnVuaworNjUxODUgMWEyZjhkZGU4MWVjYzQyOGZlNGZjNmM0NjJiNzEzZWFlNjg0NmRkZSBweTNrCis2NTE4NiA3MzliYjA3MjhlZmU1Mjk5YmIzYmE3MWM4MDBkYzgwNGIxNzY5MjkwIHB5M2sKKzY1MTg3IGVhNTNlZThhODMzMzIxZDhlNzBmYzViZGUxMjc3OWJhMDA1NThkNmUgbGVnYWN5LXRydW5rCis2NTE4OCA5MGZiYmJjZTc1N2FmODcxNTFhMTdkNzdmMmNjYWRkZjNiOTNhY2Y0IGxlZ2FjeS10cnVuaworNjUxODkgOTU2MWFhZWRmYjczOGYwOWZiYWM4YTJhMjU3NzljMWM1MzYzMWY3NSBsZWdhY3ktdHJ1bmsKKzY1MTkwIGRkMzE0OTBkM2ViNmRlODIwNWQ4NmRlMDA2Y2FhZDAwNWMxZjkwZmMgbGVnYWN5LXRydW5rCis2NTE5MSA4MjFlNzNkN2JjYzU0YTRiODVjYjhlZGQzOWU3MzAxNWJlYWYwYjYzIHB5M2sKKzY1MTkyIDY3OWUzYzI3MmVjMjYyZTJkYmYxZDgzOTc3OTlhMzFmOTIyZWMyMzcgbGVnYWN5LXRydW5rCis2NTE5MyAxMGY0MWFkYzBkMjRlNjAyMjNjNTFhMWRjOWRiZGQ2YjZjMjliMzhlIGxlZ2FjeS10cnVuaworNjUxOTQgNzYxZGNhYWFhMDllMjEwNTk5MGNkZjhiOGY2ZDJkY2YyYmE0OWZkMiBsZWdhY3ktdHJ1bmsKKzY1MTk1IDZjYThhZjY0NzQ3YjUwOGM2NWM4MDkxNDE1MzlhNjliNzZiZmE5YjEgcHkzaworNjUxOTYgMjBiNGI4M2E1NGFlZmYxMjAxNDVhZGQ1ZTlkOTkxOWM3MWRjMjNjOCB0bGVlLWFzdC1vcHRpbWl6ZQorNjUxOTcgZmNiZDlmNGYwOTVjNGYwMGUwODQ4NWFhMmNkMWU4ZjE3MGE3YTVlNCBweTNrCis2NTE5OCAwNDQxZDMwZDY3MmJlMDY1N2RkMmU1ZjJmODRmY2QzNjNmYWYzNTAyIGxlZ2FjeS10cnVuaworNjUxOTkgODM3NWIzZjY0NzBmNjBiOTQxZDFmYjBiYzBjZDc0M2I3YWM0ZjJkNiBsZWdhY3ktdHJ1bmsKKzY1MjAxIDBkMzdhYjAwZjZkNmM0NmQ0OWI0MDZkNjhlNmY4ZWVmMGU4NDE0MjggcHkzaworNjUyMDIgYmRkYzFhMTcyNDdlM2Y5NTc2NmExNDMxNTdhMDg1Y2Q4M2RjZmNiZiBweTNrCis2NTIwMyBhYjIyMTc3ZWI2ZGM0OTU2NjNhMTRkNTY0NWE3MThmNmE4YTZmOTM4IHB5M2sKKzY1MjA0IDQ1Zjg4ZDdiZjA1NzZjMzRkYzRhM2RlNjQ4YmFjOGY2NjRhYmJjZTkgcHkzaworNjUyMDUgMTc5YTdmNDE2MjQwYWY1ZjYyZjdjZjlkZTljZmNkNjA2OWY3NjU1NyBsZWdhY3ktdHJ1bmsKKzY1MjA2IGI1MWNkNWQzNzk1Y2ZiNTE4Y2U1NTAxZTZkMWI2N2FiY2RhMWVlZDIgcHkzaworNjUyMDcgM2VmYTIwOTE2YTkwNDNmOWNkYjJjNGZkMjhiMTQ1ZmUxYzA5MDI2NyBweTNrCis2NTIwOCA4ODdlZTZiZDkyODRmYjliNmVhZTQxZmJjMjNlYWI0NzMyOWVlN2VmIHB5M2sKKzY1MjA5IGI2ODcwNDQ1N2VmZWYxMGYyNzc3NTZkMGJiN2RhYTY5MjQ5NDk2YmYgbGVnYWN5LXRydW5rCis2NTIxMCA3NTlhNzMyMzU5MWViZDk0MGQzNzhmODEyN2RhZTdmMjU0NWIxNTZlIGxlZ2FjeS10cnVuaworNjUyMTEgMzg1Mzg1NmY3YzUwNTVkN2E0MzgzN2YwMmQ1MzRlNjM3ZDc1YWZhMCBsZWdhY3ktdHJ1bmsKKzY1MjEyIDA4ZGRjYWQ4NTEzNDhlYjRmNzExYTQ0OWFjMjBkZjQ2YTEwNGNlMjIgbGVnYWN5LXRydW5rCis2NTIxMyAxYjFlMWY4NzJlMDk4MzFkYTkyM2E5Y2JkZWE3ODhmNGY3ZmQ0N2U3IGxlZ2FjeS10cnVuaworNjUyMTQgMDdiODk2NTMxNDVlMDMyYThiNDg0MDI3NmEyZDBiNjU3NGY1OGM3ZCBsZWdhY3ktdHJ1bmsKKzY1MjE1IDQyMDNiN2YwODdjMTAyMzY0YmE5ODMxZDRkMTVmNGU1MjI2ODkxZTcgbGVnYWN5LXRydW5rCis2NTIxNiA3NGZiMGRmMjlhNDg3NmEzNzU1MmIyOTk1N2ViNjg4ODQ1ZGI4MmM3IGxlZ2FjeS10cnVuaworNjUyMTcgMjkwMDc4ZTliNmEyMDJlZGM1MjNiNTViOWY0ODE0NjhkNWE3ZWI4YSBsZWdhY3ktdHJ1bmsKKzY1MjE4IDFjNzhhYTdlYTMzNjBmMzkyYzRmNmY2ODdkZmRjYzc1N2RlYTQ4M2YgcHkzaworNjUyMjAgMWNlN2U1YzVhNzYxN2U5NjZiYjc0MTExYzg5MTRlNGNhZjM3NjRhZiBweTNrCis2NTIyMSBkOWQ0OWY2NzM4OWY2Mzk5ZGIwODg0MTc2NWRmMTI4NTU3ODY2OTRlIHB5M2sKKzY1MjI1IDEwMWJiMThjMTBkNTc1ZGNjMzBhMjI0NDFmMzk0MzVhNTUzZmY4NTEgbGVnYWN5LXRydW5rCis2NTIyNiA3ODE2MzBlMjU1NDBhMzU2MjhjNmE2NmI5NmYyN2U4MzZhNWY0M2NlIGxlZ2FjeS10cnVuaworNjUyMjcgMzVhNDYyZmY5ODczMTczZmZiNzQyYzJmNmYyYjJhMDI0YTkyZTRhMCBsZWdhY3ktdHJ1bmsKKzY1MjI4IGEwMjhjMGIyYWNlZTc4OTYwMTJjZDE4NWUzZmIxYWQ5MDFhOTYyMTMgcHkzaworNjUyMzAgODYyYzBlYWIxYzUwOWI1MGUwYWZjZDEyMThkYjQ2YmI0MThkZTFhNCBweTNrCis2NTIzMSA4ZmYyNWRiMDEwNzgyOTIxYjI5NjdkMjIyYTJlOTJmNDUzNzg2NjQxIHB5M2sKKzY1MjMzIDE4MmZjYTAyNWNhMDRkNTVjYzRhY2Y3ZjliMTgzMzgzYTYwZDAxODUgbGVnYWN5LXRydW5rCis2NTIzNCBiNzFkNzZiZjQ1MDY2YmQ4NjkyNzFiYTIyMzUwZmY1NDQ1NjVkNGY0IHJlbGVhc2UyNS1tYWludAorNjUyMzUgOTcyZjQ4OWFlMzU2Zjc1ZmRiYTA2NDMxODFkMzI4OTIwODdjMDgyOSBsZWdhY3ktdHJ1bmsKKzY1MjM2IDU1NjQwMTUxZTBmY2MwZWQ4NDRiNTdjOTg0MzAyNWRlNjcwYTg0M2UgcHkzaworNjUyMzcgYmUwN2MzMDgzY2VhZTI5MGI5MDM4YWFiOTFhZjU2MGQ2YzY5NzY4ZiBsZWdhY3ktdHJ1bmsKKzY1MjM4IDc0ZWVmODViNGIyY2RkZTc2NGZhZDE2MGQ0MjRkMTBhYjRiZDQyYTcgcHkzaworNjUyMzkgMzAwZGY2YjFlNGIwZDc3ZjQyMzQ0YTZjOGY3NGVjMDM0ZDY3NTYyYiBsZWdhY3ktdHJ1bmsKKzY1MjQwIDlhNmY4ZmIxNzVlMDU3YjEyMWY4MjZlYWZhNGY3MjdmZjQyNmIwNDkgbGVnYWN5LXRydW5rCis2NTI0MSAzMDQ4NWJjMTcyNjgwNjE1YTFlYzk3YTIwMjI0YWVmMjRlZmM0ZWZhIGxlZ2FjeS10cnVuaworNjUyNDIgNDk3ZDIyNDBlMWYwZTk2YzkxNGU1NjQ0ZTM5NGU2YmJkMDdlMDU1NiBsZWdhY3ktdHJ1bmsKKzY1MjQzIGQzZDU4NjAxOWFmZmYwZTc1ODk4ZjgwMjUxOWJmMjYzZDY2Zjk5Y2UgcHkzaworNjUyNDQgYjIxMTdiMTgwNDljNDJhMGM2NzgyMzdkYjBmNTExZmEwN2JkYWJkOSBsZWdhY3ktdHJ1bmsKKzY1MjQ1IDYxM2IyNDAxNGFmYmExY2E3OTU1YWJjYjgwZWU1MmYwMGU0ZWI0YzggbGVnYWN5LXRydW5rCis2NTI0NiA3NjdjYzg5ZTNmZGVjNTkzNmM0NmM5YjcwOTJiNjM1M2IwNjk2YmYwIGxlZ2FjeS10cnVuaworNjUyNDcgNGE0NjIxYTY4N2E3ODdlYjNmODNiNjg3ZTYwMDQxODlmMzNhZDg1NyBsZWdhY3ktdHJ1bmsKKzY1MjQ4IDJkMGUwNDAwMWU4MWMzNmI2NGU5MDczNjRiYTk3ZDVmZmFlYWIwZWEgbGVnYWN5LXRydW5rCis2NTI1MCAyZmI1NWZmMDYyNzVlNjVjNzA4MjNmNTk1ZTA0ZjI5MjRlMjc4NzY1IHB5M2sKKzY1MjUxIDdiMDg0NDgxMzM4OTNiZTliMzI0YWIxMGFjZGQzYTY4OTE2ZTA0ZTEgcHkzaworNjUyNTIgNzE1MzJhZDdmM2VkZjYwOGQ5YTFlMTQ0OTNhODY3NjA2NDRkN2IxYyBweTNrCis2NTI1MyAwYzEyYTM3ZDVlNWQzZDQ2NDkzY2VhYzkxZjcyMjdjYTNkZmZmMzVmIGxlZ2FjeS10cnVuaworNjUyNTQgYjhkNGRiYjI5MzhhNTlhMWY5MzBjNmMxNDJiYWYzNDQyNzQ5OTQ2ZSBweTNrCis2NTI1NSA5ZjllNWZlNjNlYzJjZDc0NTkyYmE3YmRkM2M2ZDMwNTg4YzdiYTIwIGxlZ2FjeS10cnVuaworNjUyNTYgMzExMWI2NTQzZGQ5ZThhZThlNDBmNmJiMzVkMTExMWNiY2U4ZDE1OCBsZWdhY3ktdHJ1bmsKKzY1MjU3IGYzYmYyZTliYjg2OGM2ZTUwY2YwOWI2MjU4MmVhMmFlZTYwNzQwOTUgbGVnYWN5LXRydW5rCis2NTI1OCBiMDFlMjBkMzczMDQyNTg2MjY5ZmUzNWE5OGFjZTJjMzE1ZGM2MzYzIGxlZ2FjeS10cnVuaworNjUyNTkgZTNkYTg2OWRlOThlYWIxNWU0ZWYwY2QyYjc2ZjJhYTE1ZDNjMWY2MiBsZWdhY3ktdHJ1bmsKKzY1MjYxIDJkYTQyZGNiYjhjZWJiMDRlZGM1MDJkNDIyNjcxNWY2M2QwZWI5NjAgcmVsZWFzZTI1LW1haW50Cis2NTI2MiBjYzg0ZWU2NjY3YjcwZTU4N2Q1MWU3ZTRhMjI1YmEwNzczNjdkYWVjIHJlbGVhc2UyNC1tYWludAorNjUyNjMgOTVkZjExOGY0MmM2ZjIxYjAwN2FhNWU4MTAxYmFhOTNiN2I3NmI4NiBsZWdhY3ktdHJ1bmsKKzY1MjY0IDE1MWMxY2Q5NGE0MDJiYzBlNGUzZjNlMGZhODMzNDE1MTdlNDRhYmUgcHkzaworNjUyNjYgOGFmYzRlMmM0YzAyMzZkZDU5ZmY2NjVmNmVkNWE0Y2MwM2I5NTllYiBsZWdhY3ktdHJ1bmsKKzY1MjY3IDQwYTU3M2YwMWZjNGEyZDE3MWZmYTE1YmI1YTgxZThkN2U2YWI0OTcgcHkzaworNjUyODQgY2NiYzg3NzRkODJiNTVjNDFmYzcwMTIyNGE2OGNjMTFiNjZmYjcxNCBsZWdhY3ktdHJ1bmsKKzY1Mjg1IDc5MWE2MzFhMmM3YzgyODE5Mjc4MTFhZmY5NjYyZTY4ZTdjYmEwOTcgcHkzaworNjUyODYgMjYyZDJlYThhYjUwZGE1YmY0YjI2MjYyNTNiOTRkZWVkMTc0YzRhNyBweTNrCis2NTI4NyAzYTI2N2ZlNzM4M2M0ODExMjY2MDcyOGRlZTMxODc5ZDg5NDI1ZWU1IHB5M2sKKzY1Mjg5IDUwMjI4ZDJiMzJjMTQxMTRkZjJhMmFlYmU5ZWFmZDI0Y2VkNDA3ZjMgbGVnYWN5LXRydW5rCis2NTI5MiAyMWVhYzkxMzgyNDk1YmJiZTAwODQ4MTE3NDNkOTk5MmM2YWQ2NmUwIGxlZ2FjeS10cnVuaworNjUyOTMgMGM3ZmFiMGIwNWMwMzYzNzZiM2U0Yzc5MTg1Y2Y3ZDdlMThjNTAxZiBsZWdhY3ktdHJ1bmsKKzY1Mjk2IDY4OWI1ZThhZTY5ZDRiMTUzNWExZjZhODRhOGU0M2QzYzk3NjA0MzAgbGVnYWN5LXRydW5rCis2NTI5NyAwMDgzNDI1MTllODY1Njc3N2MzMjM5M2NmM2U4MWI4YzcwOGQ4OWQ1IHB5M2sKKzY1Mjk4IGZkMzA4ZjAzOGFmYmE3OTdiOWNiNTBhZTRhYzkwZjQwZDA1MTYzYmUgcHkzaworNjUyOTkgYjQwZTEzYmNiOWVhNWU4NjUzOGNmNzQ4YjVlZGZiZDNmZGJkNzExOCBsZWdhY3ktdHJ1bmsKKzY1MzA3IDQwZTk0OWE2ODM0NDY1YTQxY2RmNzY0NjhkZGJhOTljZjY0NjY5M2EgbGVnYWN5LXRydW5rCis2NTMwOCA4ZDA1ZGRhNzM1Zjg3OWM5OTQwZGE3ZTUzZWM4NjVkMDJmODViNGRmIGxlZ2FjeS10cnVuaworNjUzMDkgYjM1Y2U5NTRhMzkyMTBhYjk2NDRmOWFkNjEwOWYyZjVkMjYxNzgyNyBsZWdhY3ktdHJ1bmsKKzY1MzEwIDhmMzYyMGY1ZDY4YWFiZDU5OTBkMDlmYzk3OTBlNjMxOWIxYjBhMGMgbGVnYWN5LXRydW5rCis2NTMxMSA5MGMyNWIzNmUwYWQ2OTU3NWNhYzg4ODQ2MGNjNWJkM2U4YzJiOWUzIHB5M2sKKzY1MzEyIDgzYzdhOGZhZWI3OGU2OWI3ZDVlZjY4NDE0MmIyMTU4MWVjNTUyYjMgbGVnYWN5LXRydW5rCis2NTMxMyAxMmUzYzM4ZDMxNmUzOGRjMTNjMTY3ZmYyMGJjN2NmMzgyMTQwYzUzIHB5M2sKKzY1MzE0IDdmODIyYjVkMzY3MDE0N2Y5YzMxNGZjZjg2MzBhMWVmMTI2NDA3ZWYgdGxlZS1hc3Qtb3B0aW1pemUKKzY1MzE1IDY3ZDE3N2FhYjhhN2M1ZGIwM2EyYWUwNTVlODMyMGM5OTEwOWIzMDEgbGVnYWN5LXRydW5rCis2NTMxOCA4YTEzMzY2M2ViZGUwOWY2OWZiNTNkMmY0YzM4MDU2OWEwMjgxMDFlIGxlZ2FjeS10cnVuaworNjUzMTkgOTE1NDU1M2Y4NzZiYzdjMjU2MDc1MzMzMDEwZTQwODYwOTJmNzdkMyBweTNrCis2NTMyMCAwZmJkZGMwNGFlZTE1OWE0ZmNlMjE2MmJkZGIyMTVjYTY2MjE2YmQ4IGxlZ2FjeS10cnVuaworNjUzMjEgNWRiNDMyODRlYTdhYWMyNmExNDdjNzM4ZTVhMDgwOTg3MzYwMDAyMyBsZWdhY3ktdHJ1bmsKKzY1MzIyIDFlYzM4YjcwN2NkNmIxNDllNTc5ODdmMmNkODNjMzhiYTgyZDRkNjQgcHkzaworNjUzMjMgNmYyMzJmY2ZiNjU3NmM1NWQ0ZmFkNzU0YzU4ZjA5YTg3YmI3MDZmZiBsZWdhY3ktdHJ1bmsKKzY1MzI0IGJlNzUyMWFmODQ1YTBlODRjNmM1MDg5NDE3ZTViMDM2ZmM1MjljNTggcHkzaworNjUzMjYgMzQ3NjAzZjc5NGQxMWI1NGIwOTkzM2IzZDdlOTc2ZDM2ZDZjMTMxZCBsZWdhY3ktdHJ1bmsKKzY1MzI3IDFkZTcxOGEzMTAwNGUxOTY3ZTVjZDUxMzJjZDRlZDZiZDY1NjRkZTEgcHkzaworNjUzMjggNGNlYmI1Yzg0ZDdjZmJhODZmODFmNjA0NzY4NGI4ZTlmNmU4MDRjYyBsZWdhY3ktdHJ1bmsKKzY1MzI5IDAzNzgxOGNhZmMzOTM1OTk2MDZlYTBmOWMxNWVmNTk2MDk5ZjQ4YTUgcHkzaworNjUzMzAgNGMxMWZjM2IzM2EyMzNmYjRjMjZmZjMyM2YyNmM3ZTVjZDkxOTQ1YSBweTNrCis2NTMzMSAzNWIxYTIwNDcwZGIwNzljMDQ1N2M2YTRhYjdkOTczNjcyZTY5ZTEwIHB5M2sKKzY1MzMyIGIzOTAxYzU2NjBmNzFkMGE3MmMwZjE0NTU3MDdiMTRiMDI0NTkxNGIgcHkzaworNjUzMzMgMTg3Mzg4YzExNTA1MGM5OTEwNDA4MTc1ZDJmNWYyMjRhOTE2MGJiMyByZWxlYXNlMjQtbWFpbnQKKzY1MzM0IDBhYWZkMWFlNTEyMDhhMWI2Y2MzMTIwYmVhYWIzYWRkZjU3YzQyM2IgcmVsZWFzZTI1LW1haW50Cis2NTMzNSBjNGQyNGZjOGJhOGEyZWM2NWIyYTQzZDg4YTNiNTJkNTAwZGM0MjIzIGxlZ2FjeS10cnVuaworNjUzMzcgMTNiMmUxMWYzY2Y1YmQ3NDA2ZGFmYTQ4ZGYxZmNiYzM3ZDBkMGQyMiBweTNrCis2NTMzOCBmZWM5ODVjYmY1M2ZhYjA1ODM3OTk1MzcwMDEyNDY0ZDk3MDY5ODQ3IHB5M2sKKzY1MzM5IDQ1NTAxNDRiMTU2MDY2ZmZmYzhmYTZkZTg4NDgwYzMxNTU0OTZmMDAgbGVnYWN5LXRydW5rCis2NTM0MCA1NDI4ZjdmYTE3MWNmMWJhOTYyYzhkOWI2NGQyMjRmM2FiOTM2MTk3IGxlZ2FjeS10cnVuaworNjUzNDEgZGU3NWU3MjgwYjdhYTYxOGNjYTVkYmY3MWJlYzJlMmY5ODA1ZjdiZiBweTNrCis2NTM0MiBhOTRmMTM2YjUyODM4MmMzOTQyODM4NTEzMjNjODU3OGMzMDAyOTBkIGxlZ2FjeS10cnVuaworNjUzNDMgNjMxY2Q5YWU1YzhlMjJlMjNiN2FlMmZmNmVlNTJmYWU1NGQyZjE5NiBweTNrCis2NTM0NCA0ZmVjYzliOTlkOTg1MjJkZjJkZjU2Mzk4N2Y3NzE1YzkyYWZjOWM1IHB5M2sKKzY1MzQ1IGE0NzZlZjVlZWJhZGJlNDI5NzZlMzNlZDg4ZDVhNTU4ZTA2ZDljYTMgcHkzaworNjUzNDYgYzU5ZTkwZDhkMWM3MDgyMWNlMTIyNGU1ZjI1YTc1YWMyNGRiNDliNiBsZWdhY3ktdHJ1bmsKKzY1MzQ3IDNjMTU1ZDc4MTNjYzE3NWNiOTE3OWExYjJmNGJkMTQzNzllZDJkODQgcHkzaworNjUzNDkgYzJiNWEwYWIzMDcwNjM4NmI5ZjNjOTNhODNkZTk0NzRlZTQ2MjZiNiBsZWdhY3ktdHJ1bmsKKzY1MzUwIDcwZDQwZjlhZDFkN2FjZDI3ODRlMzY3NTZjNGI4NjlkYjdjYzMzODEgcHkzaworNjUzNTEgMGQyZDI2ZmZlMjBlYjI0OGFjMzZlMDI4MDE0OWI0OTMxMGY3Zjc5YyBsZWdhY3ktdHJ1bmsKKzY1MzUyIDE0ODAyMGI1YzUzMTJlMzk4MDNhMDFmYmExNjdjNDU0OGRmNGQzMGMgcHkzaworNjUzNTMgMTE0MDc3NGY2OWE1NzJjOTVhNDIwMWIxY2E5NDM4ZmI5ZGM0NWY4YyBsZWdhY3ktdHJ1bmsKKzY1MzU0IGYxZmM3ZDkzNTA5ZDNmZWQyMTkwMTFhZjU0OWE4NGEwZmU1YzNiNWIgcHkzaworNjUzNTUgNWQyY2Q5NmExOTZiZmQyMmE0MzgzYzA1NjhjYWMyYzMxYjc3MTg1MyBsZWdhY3ktdHJ1bmsKKzY1MzY1IGYxMjFhOTYzYWI2OTRkYmJmMzc1OGNiZGFmZjQ2YWIyZWMzMTA0OTggcHkzaworNjUzNjYgZWZmNGM5NGMwMmNkMWUxMmY4OGIwNTFiNDVkNzM4MGQwNjgzOWYyZiBsZWdhY3ktdHJ1bmsKKzY1MzY3IGMwZGYxYzY0NzdiYjkyNzdhZjM0OTI5ODgyNmEyOTI1YTZhNDA5OTUgcHkzaworNjUzNjggOTViYzBjZjMxMjAzY2Y4NzcyYjczN2QyMDFlY2Y4ZDE4NDExYjM5MyBsZWdhY3ktdHJ1bmsKKzY1MzY5IGNjMzcxNTcwZTE0MTMyM2ZhMDQ3ZDM4ZTcyZTI3NjUwNDIxNmM2ZTEgcHkzaworNjUzNzAgMTM4MTc3NDJhNzgxMGJhMTQzNmQ5YzgwM2M3NjQzZTY4Yzg1OWExMSBweTNrCis2NTM3MSAxOWI2YzYzNWY1YzFkMzMwMGU2OTEzODM1N2E5OGZhYjM2YWY4ZjQwIHB5M2sKKzY1Mzc2IDE1MjJmM2Q1YmU2ZTdhOTQ2OTczNDNhNTEyZWY4YjNjNzQwMTNkY2IgbGVnYWN5LXRydW5rCis2NTM3OCBiOGE4ZDExMzA3NmZiOTQ1ODRmOTE5YTk1MWM1ZDMzZTc0OGJhMTA2IGxlZ2FjeS10cnVuaworNjUzNzkgNGI3MmM3ZjYzMDc3NDVmNzg4NmJjZjNlZmNhOTlkODg3NzMyMjI5OCBsZWdhY3ktdHJ1bmsKKzY1MzgxIDEzZWJiNGI1ZDg5YWE4OWEwNjYxODZjYmQxNGM3N2RkNTUxN2Q5MmYgcHkzaworNjUzODIgNDViY2Q5NmU1NmQxZDQyMWZhZTc2YzZjNGEzMjdjN2Q4NjhlNDAyYyBsZWdhY3ktdHJ1bmsKKzY1MzgzIDBhZmYzYmYwYTM0MjZmMTI0NDE5Yjg0MDdjYWM4ODY0ZmJhMWI1MzQgbGVnYWN5LXRydW5rCis2NTM4NCA2OTIyZjg0YTcxNThmOWZjOTE1OGM0ZDc0ZDJmNGIyYTdkZjcxMzNkIHB5M2sKKzY1Mzg1IDZiN2M2MTAyN2ViMDRmYTM3MThlODdkYjY3OWNhZTU5ZmRlZDEzNzggbGVnYWN5LXRydW5rCis2NTM4NiA1Mjc5ZDc5NjEwOTM3YTViNGM0NzUwMTE5NzgxM2JlOTQzZjdkM2JiIGxlZ2FjeS10cnVuaworNjUzODcgNGIxYmE1MGQzYmRmN2FkZTI1NWJjNGRmNzkyNTUyNzkyOTExYTIzNCBsZWdhY3ktdHJ1bmsKKzY1Mzg4IDE2NjBiMzM1MzgyMTAyZGM2Y2IzOTA1MTcyMTUwYWE0ZTU3Mjc4MDMgcHkzaworNjUzODkgZjhkMmEzMTg1ZDlhYWZmM2MyZmExMmI4Nzk3ZGIyNGM3MjliYjRjNyBweTNrCis2NTM5MCA0ZjQ2ZjNmNzIzMWJmZjg5YzM5ODI5ZDhkN2NkNTkzNDM5OTZlMmQ3IHB5M2sKKzY1MzkxIGQyMWMwYTJiNmIxMWE0ZTlmNjliNDMyZDhjNWJiZWZkOTgzMTNlZTQgbGVnYWN5LXRydW5rCis2NTM5MiAwMDE4YjE4ZjVmNDY0MGE3Mjg3NTVlNzU3NzU1M2U5ZmUxNDAwZWViIHB5M2sKKzY1MzkzIGYwYmQzN2VhNjk0MDVjYjQzNWVlMWNhMWJiZWVlMzNkY2ExNjRlZWIgbGVnYWN5LXRydW5rCis2NTM5NCBiODk0NWQ4ZjAwZWEyNTMwM2Y4N2FkYWI0ZGJmM2NmNDY0YWU3MDEzIHB5M2sKKzY1Mzk1IGE3YmY1MDNjODU3ZTljN2VmMjNhZmQ4YjcxYzUxZDE3ZGM2MjdjNDUgbGVnYWN5LXRydW5rCis2NTM5NiBlODc5NmI1NWY4MWIwOGQwNWYyZjcyYzYxNGY4MWJhMjVmNDhjMDM3IHB5M2sKKzY1Mzk5IGJhODRjMWUzZGQ2MGNlZmIzY2E3NjFmMmIxYjFjODc3MGQ2NzgyYTggbGVnYWN5LXRydW5rCis2NTQwMCA0YTRjMjBhMjE2N2JiMTgzZTU3YTg0ZTYxYzU5MWM1MDljOTliODZkIHJlbGVhc2UyNS1tYWludAorNjU0MDEgZDU4N2FhNWU4MjRkNjUxOWJjZGE1YjNhY2M0ZjA5ZmRiMGI1YWVmMyBweTNrCis2NTQwMiBmZWRkYWYyMWMyYTQ5ZjdkZjk0Nzc1ZTZmZWNlZGNmMzdkMGE3N2QzIGxlZ2FjeS10cnVuaworNjU0MDMgNzQ3NWIwZmNjNWZmMmJjM2RlMzBlNTM3N2M3MjVmMGJhYjU0ZTI3MyBweTNrCis2NTQwNCA2NTQ0MjU0NjE3M2VhNDI4MjAyNDE3ZTg0ZGM2NjliMWU0MmNkY2QwIHB5M2sKKzY1NDEyIDc2M2ZmMWJhOTFjN2YyZDNlNTliMzMxOWRkOGIwN2M5NzE3YzcyOGYgcHkzaworNjU0MjAgYmY1MDA4NWZiY2QzMmQxYzQyZDQzZTZlYzM3NjkwNjMxZTA0MGFjMyBweTNrCis2NTQyMiA5NzYwN2ZjYjdiMjYxOTYxZWI2NzkzNjFjYzU3MTk5NTVlY2YwYTRhIGxlZ2FjeS10cnVuaworNjU0MjMgY2M0M2I5OThmNWI1MTgzY2IxYjEyMjg0YjVjOGFkYTVjMTM0NTcxZCBsZWdhY3ktdHJ1bmsKKzY1NDI0IDQzN2RkYmJjZGQyOTRiNzM1ZTY5MGE0NTAyZjQzY2NhMjBmNDkwYzggcHkzaworNjU0MjUgNGU2YTBhZTFhOGU3YWFlOTY4NDc0NGY2YTJiMjQxMDA5MDNhYWNkMCBsZWdhY3ktdHJ1bmsKKzY1NDI2IDc0Y2M5MzJhZDhkYjY4NmI3YjBkMDhhN2EzZWI5YjFlNjM0ZDIyN2EgcHkzaworNjU0MzAgOGYzMmIxMzI2OWI0YjFhZTk0N2RmZTgwNTZlOWZiZTAyZDhkOGY5ZCBsZWdhY3ktdHJ1bmsKKzY1NDMxIGJkNTFjZjcxNzYyNDViMGVlYmY2ZGRkNjgxOGY2ZjUzYmIwM2Q5NDcgcHkzaworNjU0MzIgZTAwN2FmNzlmNjdjNmE1MTcwYTViMjZmOTkxNjg2ZDlmNWNlMzliZSBweTNrCis2NTQzMyAxZGI0ODM5NDgxMDY3ODkzNjM4MWNhY2FmMzJhMzM4ZTE2ZDQzNWEyIHB5M2sKKzY1NDM3IDNlNDRkZWJjMmJjOTBhNzZiMWY2MTgzZGZlOTI0MWZjMTk1MThiMmQgbGVnYWN5LXRydW5rCis2NTQzOCBkZjViMzk0ZDFlMjQzOTI5NWE2MjA5MGU2OTIzNjU5NGY1NmUxMjAxIGxlZ2FjeS10cnVuaworNjU0MzkgZTkzNDk1NmRkY2UzNzJjMWUyMWQ3NTdjYzQwZGQwNjBiMDE4M2QxOCBweTNrCis2NTQ0MCA0ZTQ1ZDBjZmFmNzFiNTJiZDEzOTFjNjI5MGRlMTNjZmZmYmFiMzI2IGxlZ2FjeS10cnVuaworNjU0NDEgOGM0OWEzZTkwZjQwYTg0ZmI4MzQ5M2RjMzVkMTk4NmUyOWI2YTI2OCBweTNrCis2NTQ0MiAxODAzZGU1YWUwZGMzNzBkZjIzNzIyNzZkNWI4ZmZjNDZhMDc3ZTQ2IGxlZ2FjeS10cnVuaworNjU0NDMgMzNkYWFlNjMzOWVlM2EyNzBhMjkyZGI2N2M1MTY3MjNjMDMzYTFlZiBweTNrCis2NTQ0NCA5ODZjYmRhZjE1NGZjMjczYjM3MmJlOTg2YzQ5MWE0NjdmNDEzNjQxIGxlZ2FjeS10cnVuaworNjU0NDUgNWYzZWY2NDAwYTk2NzYyZTYwYzI3ZWQ1MWEwNTVlNmQ3OTExZGM3ZiBweTNrCis2NTQ0NiAyNTEyODI1ODAwNDFhMjgwNjg3Mjg3ZDg0YTk5YmZmYzNmMjNmYjM0IGxlZ2FjeS10cnVuaworNjU0NDcgMGM2YjZiZDg1YWNhZDM3MzcxYjk5ZmFhM2M4MWZjZWQ5Nzg0ODc1ZiBweTNrCis2NTQ0OSAxZjIyZGU5M2RhZjhlMzNjZmQwMGM3YWUwZTUzMzA1N2FmNzhlOGY4IGxlZ2FjeS10cnVuaworNjU0NTAgODJkNGQ2ZGVlMDM0NzVlM2U2YWZhYTRiMDM4N2I4MzVjZGY2MWVkZSBweTNrCis2NTQ1MSBkNGRiNWRlZDc2Y2UxZmMxOGM0ZGNjMTQ2NjE2NGQ4YTQ0OTAzMWY1IGxlZ2FjeS10cnVuaworNjU0NTIgZDdiYWU3YmQzOWQ2ZjIzMDYyMTUwMGQ3MmQ0ZTg2YTc5YjM0ODA0NSBweTNrCis2NTQ1MyAyZThjZGVlMzRkOTc3ZWVhYjhhMzlhM2E4MjliNTBhMmYwZDI4YmUzIGxlZ2FjeS10cnVuaworNjU0NTQgZTM2MjBiNzNhN2QxNGY3MzNhYzUyYzQ2MTk4Yjc1MjI4M2Q1ZWY0YSBweTNrCis2NTQ1NSAzNWU3ZGM5NzdhNjNjMzY0NDczZjJjNDFhODY3ZjgwY2UyMWRkNzg2IGxlZ2FjeS10cnVuaworNjU0NTYgODk3MmNlNTYyNGI0ZDkxNjA3Y2FmZWIyMDIzNTI3OWRmMDk2OTdjNyBweTNrCis2NTQ1NyBjNzdhYzhiZGQzZmViNGM3Y2RhOTQ2ZTQ5MTM2MzU3YzBhNDFmMjQxIGxlZ2FjeS10cnVuaworNjU0NTggNDMyMmFmMWI2ZDNkNmJkNWVlYjAxNjZlNmJkNTgzZGQxN2ZjZTYwNCBweTNrCis2NTQ1OSAyODhjYTFjNzI4ODgwOTRiNTkzMmJmYjI3NzM3NDg0OTc1YmYxNWE5IGxlZ2FjeS10cnVuaworNjU0NjAgZGM4NTBkYTA0YmQ1NDcyMTZlMzE0NzNmNjg1MDFmYWUyMTJjNjJlZiByZWxlYXNlMjUtbWFpbnQKKzY1NDYxIDE1MDhjZWEyYzZiNTZlNTgwMjIyZjgyOWZiNTY0MzA4MzQyMTQwMzYgcmVsZWFzZTI1LW1haW50Cis2NTQ2MiA1NmIzYjJjY2ZkNjg4ZDhhNTRlNTEyOThkMGFjYmE1ZjYwMmVhNTRhIGxlZ2FjeS10cnVuaworNjU0NjMgNTVlMzI1ODA5NGYwMzJkM2E2MDBiNWI0Y2I3MGRiMDIwM2I4OThlNyBweTNrCis2NTQ2NCBmZGYzYjZmNDk5ZGFlMWVhOTQwMTk5NDkwMTllMzYxYTcwODJhMDJiIGxlZ2FjeS10cnVuaworNjU0NjUgZGFkYTk0YTUzMjlmMmY4MjhkM2U3OTZjMzg5YzFjYjU1MjU2NGMyNCBweTNrCis2NTQ2NiAxYzI0YTA5YWNiOTdjOTQwOGY5NzY2YzcwOGU4NWZjMmYxMTg0MjhkIHJlbGVhc2UyNS1tYWludAorNjU0NjcgMjFmMTQ2Mzg3YTYzY2ZiNWM5Mjg4ZDdiYjVjOGIzMjJiZGJlMGNlYyBsZWdhY3ktdHJ1bmsKKzY1NDY4IDlkY2IxZDI4ZWZiYjhmMzlmM2E1NGQyNDYxMTAyOGE3NWY2OTIwN2MgcHkzaworNjU0NjkgOGJkNTY1MDE5M2M2MDg0ZTMzNjg1MDBhZjQ0MWM4NzgzMjM3OWE3YyBsZWdhY3ktdHJ1bmsKKzY1NDcyIDQwYmUzN2U2OTE1OGY2ZmNmNmY5MjhiZjg4NDNlNWQyN2FkM2Q5NTcgbGVnYWN5LXRydW5rCis2NTQ3NSA2NDFlZGVlNGZjYjE0ZjFkNjNjZTNiZTNjZGJmMjFmMTZjMTEyYWQ3IHJlbGVhc2UyNS1tYWludAorNjU0NzYgYzIzNWJhNzBlNTk0YjE0MDY3OGI1NWQ0OTM4ZmI0MThhYzQzNTg5YSBsZWdhY3ktdHJ1bmsKKzY1NDc3IGRmMGFjMDZjZGRjYzNlOGI1YzEwYTZkZGMwYWY5YWMyMTIxYjI4ZmQgbGVnYWN5LXRydW5rCis2NTQ3OCA1MTM0MDZhMzdlMzg1MzZmZWZmNWRlNDM5NjY0NjRmNDdjMWYzNDE3IHB5M2sKKzY1NDc5IGJjZjQwYzgxODkxZTEwZjlkMGUzODE1NmFhN2M3ZjgyZmVkZmJlNmMgcHkzaworNjU0ODAgYWI0YzljMzg0ZDMxODgwMjM3NGYwOTAxZGEyMTQ1Y2E0N2NmY2RhZCBsZWdhY3ktdHJ1bmsKKzY1NDgxIGE4YTgyMzJjYjU0MTlhMmJiZGQ1ODUzMDRhMzcwMzFmYmI2NzE4OWIgbGVnYWN5LXRydW5rCis2NTQ4MiA1OWY0Zjk5NDczMGZhNzlhODE5Yjg3MjA4NTVmZDNjNzRhYzBiYWUxIHB5M2sKKzY1NDg3IDQ5NDExZDdkYzI1NzQ3M2IwOGRkNjA0Mzc1ZTg4OGNkZjQyMDExYjUgbGVnYWN5LXRydW5rCis2NTQ4OCBlYTgzZmVlNTc0MjIzMGI5NjY0MGFjZjBiYjBiOGVhMTdkZmU3YWQzIGxlZ2FjeS10cnVuaworNjU0OTAgNmM4OGRlM2M0ZDRkZDg1MmE2YzRhNTcyMDYwODk0MmRlMGU1MzU3ZCBweTNrCis2NTUwMiAyMTc0NTU2M2U2ODBlMGQ0Y2ZmMWRhM2M5ZjVjMzM1NjE5OWI5MjczIGxlZ2FjeS10cnVuaworNjU1MDYgNmJjM2NmZTA5OGNlNDU3OGZiMGU3MjJkMjQ5ZGU5YmU3NjNiMDY2MiBsZWdhY3ktdHJ1bmsKKzY1NTA3IDUxZjVjOGU4ODVjYThjNDk4M2YxM2IwNDU5YzM4YWU4MTQzNjQyOTAgcHkzaworNjU1MDggOTNiY2M5MjAxZWUwN2Y3MzcyNGQ1NzBiZDFjMzYzNjg5ZjJkMTg5NSBsZWdhY3ktdHJ1bmsKKzY1NTA5IGZhY2Q4MTk3MjUyM2I5NjM4ZTljMzg5M2MyZGYwNzc4NjMyNzVjN2MgcHkzaworNjU1MTAgNGQ4NDI3ZDI1Zjg0ZTFjYzk3ZDYwMzBlNGI2NWJhOWI0NmVlNjY3MSBsZWdhY3ktdHJ1bmsKKzY1NTExIGNmZjgyYjk5MGEyMjk4YTI5MmNlNTAxMDc4M2U2NDI4NzQ4MzQyNDcgcHkzaworNjU1MTIgNDdjZDQ1MTY4NjNlZWE3YmJkZDY0YWZmZmQ2ZTQyYzdhY2Q3ODIzZSBsZWdhY3ktdHJ1bmsKKzY1NTEzIGU5YjZlNDQ4ODg3MWU5ZDJkMWNjNTRhYzA0MmU1ZmQwNjliNDJlYTggcHkzaworNjU1MTQgOTc5ZjBhODk5MDNmMjkzNTgyYjNlY2VlOGM2M2YyNzIyYjFiNzFmOCBsZWdhY3ktdHJ1bmsKKzY1NTE1IDU3YjhjNzc4ZGEwNzM0YzMxOTBkYWJmODMyMjA5MTQzMDM3ODdlNGQgcHkzaworNjU1MTYgZjc4NDZhNzFlMzhhMjExMDg2Mjg2MzYxNDMwMjhiOGYyNjNjMjRhMyBsZWdhY3ktdHJ1bmsKKzY1NTE3IDNkMDgzZTY5MjY1ZWYwY2MyNzUwYTJmNzc3MTI5YWNkYzY1ZTMxNzEgcHkzaworNjU1MTggNmM2YTAzMDU2N2RkMDYzMTJhYmU0NmRjZmNjZTFkMzNjOTQ3YzkyNyBsZWdhY3ktdHJ1bmsKKzY1NTE5IGNmMzMxZmVmMzI5M2M3MjAwZTk3YWZhNjg1MDk2YWZlOTBhZGQwYTUgbGVnYWN5LXRydW5rCis2NTUyMCA1OTRjOTljMGYwNzg0YTJmNjA0MDAyZWYxZWEzMjE2ZTBmYTMxNDkwIHB5M2sKKzY1NTIyIGRmMjc3ZTY0MmU1ODAwYjM5NGUyNjg4Y2Q2ZjdkMmRiODllMzE5MjkgbGVnYWN5LXRydW5rCis2NTUyMyAwZGEzMDJmN2ZlOTQzMmM3MzNkOTFmYjA4YTA0YTM5MzdmNWZkZTA5IHB5M2sKKzY1NTI0IDM4MWE3MWRmMDYwZTRmNTkzMTkzNTZlYTdjNmQ3ZjY4MTdhNzdlMjAgbGVnYWN5LXRydW5rCis2NTUyNSBmZmMxZDhmOGM1YWQwMjViNmUyOWQwZGI4ZmQ4NmNjMjBmMmMwMjZlIHB5M2sKKzY1NTI4IDlmYWE4NzkwMjExNDM0ZjQ1NDY1NGMwYmI2NmM5MTBlMDc2NmUyYzMgbGVnYWN5LXRydW5rCis2NTUzNiA2OGRmODQyZDYzMzA4NGZkZDVjOWU2YmZjZTU1YzJmMjE3M2U1ODRiIGxlZ2FjeS10cnVuaworNjU1MzkgNWI3NzRmZTA0YzdlMTc3ZTNkOGIzYjIzMTVlMGM4MjBjZDI4MGJiMSBsZWdhY3ktdHJ1bmsKKzY1NTQzIGI2NTRkMTRjYjlkOWVlMGQ0N2NmMjNlNmMxNjRjOGYwY2VhZTk4NzIgbGVnYWN5LXRydW5rCis2NTU0NCBlNWZjM2UxOThkZGFjMWM3Yzc5YzU3YWU5OWEwN2VhYzhjM2NiMmJkIGxlZ2FjeS10cnVuaworNjU1NDUgMTYzNTg5MWIxOGU4MWFkNmZjOTE3YzZhNDQwZTBiNmFlZGM3ZDI0OCBweTNrCis2NTU1OCAyMzY2MzczOTA0NTdlNmIzMTgxZWE2YjYyYjc2NWY0OGFhOTJjODNhIGxlZ2FjeS10cnVuaworNjU1NTkgNzllYTM0MGQxYTU5ZGFmZTBjNWQ2NDE5ZGFlMGRlMWRlOTViODFlNyBweTNrCis2NTU2MCA4M2E3MjE5MzY0YjEzNjcxODgzZDNlZjk0YTAyYzdhMGE1ZTExODA2IHB5M2sKKzY1NTYxIDU0OTEwOGU5YTBhMzIyMzE3YjUyODkyZDM0MjlhMDBjZjVhMDU0ODUgbGVnYWN5LXRydW5rCis2NTU2MiA5Y2NjMTY4MmUxOWI4Nzg5ZjQwMmQ3N2FiMWZlYjYwODA1ZTNkNDgyIGxlZ2FjeS10cnVuaworNjU1NjMgNTNhZGU5ZTY4YjU2MmUzM2I0ZTU4ZTM3NTMyZGFkZGI0ZDdhMTZkZCBsZWdhY3ktdHJ1bmsKKzY1NTY0IDEyMzczZmE2ODA0ZTRiOWY2MWUwYzM1NjVlOTdmYTFjOGViMjQzMTggcHkzaworNjU1NjUgMDNkYWUwMzdiMmI3Mjc1NTVkMjhkYzBkNmY3NmNmYTk2OTMzYzMxMCBsZWdhY3ktdHJ1bmsKKzY1NTc4IGYxZmM5NDc3MjJmMjlhNDNjYjI5N2Q0OTE4NjEzYzJmZTdlNmQ5MmIgbGVnYWN5LXRydW5rCis2NTU4MCAwNDJkMTZhMDUwMTY5MTFiZjA5YmNjODgxN2M4YjJhY2U5MWNmYTdiIHB5M2sKKzY1NTgxIGM4YzllNzhmYzA4MjM4MDFhNzM3YmYyY2IwYzAzZDUyMDAxOTMxOGYgbGVnYWN5LXRydW5rCis2NTU4MiA4NWI2N2ZiNTY3MmI5OWYzMTI5ZGUwMzNmMGM2MDFmZWI2ZDY1ZmE3IHB5M2sKKzY1NTgzIGNmYWQzZjdmNWU2MzhlYzFkZDg0NzE2NGYxYjc5NTA3YzYzMDdlN2YgcHkzaworNjU1ODQgMGJmNmM0MmFiNGU0MjM4NTZiODk0NjM4ZWFjOTMxNzhjZDNhOTc2YyBsZWdhY3ktdHJ1bmsKKzY1NTg1IDJiM2Q0MmVmZmU1YmUxNjlhNzlkOTE1OWJmNjc0MGIxNDVkMmE2OGYgcHkzaworNjU1ODYgNjQxNmU2MDQ0YTMwMTY3NmYwMmE2YTViOTJlZmRiODlmMjY5OGZmMiBsZWdhY3ktdHJ1bmsKKzY1NTg3IGE2ZDZjMmZhZDIyMDBlY2Y5ZjI2ODQzNzg1MDIzODk3ZTEyMjA1MjQgcHkzaworNjU1ODggNjU5MDFmZmZmYzZhYmU1YTMwYmRkMWNkMDMxMDhlOWE3NWJjNDMwZCBsZWdhY3ktdHJ1bmsKKzY1NTg5IDQ4N2UwZDlhMzgxYTgwMDAwNmFmNzY3NDI4MTBjMTk2NDFkZWU4NDQgcHkzaworNjU1OTEgZTZmZTgzYzJlMjYyMDZmNGFhZTYyYzIzMzZlNTlmZGQ4NGNlNGQ5NiBsZWdhY3ktdHJ1bmsKKzY1NTkyIGIyYzUwNWQ0YTIwM2Q4MmQ4MDJlNWQ4NDc0ZWQ2MmUzMzNkOTM0NDMgcHkzaworNjU1OTMgZmQ3YjkzYTAxYzA0YjdlNGVkMWQ5NzM1ZGU0YWYxZjc3NjhhMTk2OSBweTNrCis2NTU5NCA5NDliOWEyYjk4Njc2MTA5NjI3MGUxMGY1ZTZhYTAyZDQzNWIzNzg2IHB5M2sKKzY1NTk1IGUyYzcwNmY5OTA2YzM4NWI5NzkzNmVhMDU5NmM4NTI2OTJmYTI4ZmUgcHkzaworNjU2MDEgNzIyNGZmZjk4ODIzYmM5ODMwMDc5OWIzY2Y5Yzc2NmU3NmQ2NTY1ZCBsZWdhY3ktdHJ1bmsKKzY1NjA1IDQ3OTY3NjkwYjU4NTVlYzljYTMzMWFlYjIzMWVjZTQxOGE3NWExM2UgbGVnYWN5LXRydW5rCis2NTYwNiBhYWQ1ODA5ZmM0MTk1NWIxNDExZGE3NzcwZDhmNjc4MGI2NWY4NWU3IGxlZ2FjeS10cnVuaworNjU2MDcgZWUwYTUyYzk4MmU1ZjZhYTQ1ZGVmMDhhM2NjZThiYjYwZjBmZTJmZiBweTNrCis2NTYwOCA2M2FlYTk5Yzk3MWE2N2Q4ZWMwYmQ5Y2Y5ZDlkZjY3YzcxMDJiZGZjIGxlZ2FjeS10cnVuaworNjU2MDkgZDYxNWFhOWZkZjM2MTA0OGRlMmRiMTRmZjMwMzI5N2IwZDJkN2E3YyBsZWdhY3ktdHJ1bmsKKzY1NjEwIDZkOGQ5MjBjZDkzMjQwYTQ3Y2QwYjIyNmRiODIxNDc3M2RiYzhlNmEgbGVnYWN5LXRydW5rCis2NTYxMSAxYTExNzE3YTE1NGI0ZGYyMzA1ZGMzYjRmOWJiZWI0NGVmM2E4YjUyIHB5M2sKKzY1NjEyIGQzNTI5NjQ0YzY4MjNlYzRmYWM3ZDFiOGExNzQ5MGUyODg3ODY2MGUgcHkzaworNjU2MTMgMzg4YTRiZTdkNjc5YTE1ZjFmMjU4NmQ4MDFjZjgzMTY1MmE5ZjFlZCBsZWdhY3ktdHJ1bmsKKzY1NjE0IDk5ZjliZWE5MDliNTU5YTcyZjQ0Y2U0OTExNzRkYmQ4NWYxNDA2YWUgcHkzaworNjU2MTUgYjNhYmZmMTdlMmRkMTc0ZDQ3ZjUwOWEzODU1YzU4MTA1ZGFjMDExMSBsZWdhY3ktdHJ1bmsKKzY1NjE2IGFjYjk4ZGJiMWIwNGZlZTM1MDhkMzFiZDBjNjViYzMyMTEwNmRjYmUgcHkzaworNjU2MTcgYmM2YTM1NzJiYzg5NmQzYjE3ZmU0YzllZWI2NDc2NzE0OTY3Njk3MyBsZWdhY3ktdHJ1bmsKKzY1NjE4IDlmODQzMzk2ZGY4OThkYWViMzYwMTJiMjI5OGE5ZWVlZTI0ZDBiNzQgcHkzaworNjU2MTkgMzAxMzViNmUzOGZkYWY3MzIyMjJlMDkyNGIyMzk4YTA0YjViN2U1NiBsZWdhY3ktdHJ1bmsKKzY1NjIwIDMzY2Q2YzVkMWEwNGIxZjhkMzgxOTEyZDRhMWNkZTg2ZDkwM2FhZDkgcHkzaworNjU2MjIgNWExNWE3MDQ0ZTdkOGQ2YmE4YzJhOWMzMDNhMDcxNjI4Y2FmNGYxZiBsZWdhY3ktdHJ1bmsKKzY1NjI0IGFjODEwMzM0MWI4MGU5MDIwNWNkZmI0YjA2Y2RkMWFiOTU3Nzg0MWMgcmVsZWFzZTI1LW1haW50Cis2NTYyNiAwNTRkYzExMWIxZDljMTFhNzBkNzNiZTYzZDc2M2Q2ZjM3YTgxYWNmIHB5M2sKKzY1NjI3IDZlNGY0N2E2OWVmYTc1NDIyNzRlZWFiNjQyYWNiYzk3YWVhNGEwMDggcHkzaworNjU2MzcgNjk0ODE0ZDdiMTA0M2MxMzUwZWI0OGUzY2EzZWViMTcxYjYwMWJmNyBsZWdhY3ktdHJ1bmsKKzY1NjM4IDBiNjcxYmNlNjk0ZTQ4OTc4Mjk2NDFhZWVkNjBlNDhmZWU0ZTcwZGQgcmVsZWFzZTI1LW1haW50Cis2NTYzOSBjZTU5ZGFjM2ZjYTI0Y2I2YTNkZWJjODgzZDJhN2E0YzViZDM1MGE1IGxlZ2FjeS10cnVuaworNjU2NDEgY2Y2OTg1Y2I2ZDE1NmRkYmFjYjAxOGQ5YTA3ZWI3OGUxZDRjMDI4MSBsZWdhY3ktdHJ1bmsKKzY1NjQyIDc1MjdkYTJiMDVlOGE5ODgzNmQzOWI3MDI5OTE3ODc0MmU4OTYzY2MgbGVnYWN5LXRydW5rCis2NTY0MyBkMjFkOGNiZTZiZDRkZDc0MGFlMzY5MmNiNzVhYmM1YzU2YjZmMzE1IHB5M2sKKzY1NjQ0IDBhYWU3MmY4ZGRhOTA0OTkzZDdlOGJmY2MxNjQxNjNlMmViNDhiYmUgbGVnYWN5LXRydW5rCis2NTY0NSAyOWQ5MzZhNGY4ODU4ODZmZDA3NWUwNDY2YTY5MzkwMTNhZGVkNzgzIGxlZ2FjeS10cnVuaworNjU2NDcgZWJlYWE2NTM2ZDMyOGEzMTg4M2U0MzM3OTVjZjM3N2RlYTY3NWZjNCBweTNrCis2NTY0OCA3Nzc5YWYzODhhZWMxYTNlMDAyMzIyNTIzN2Q5ZTBkMWNmNTViZWI0IHB5M2sKKzY1NjQ5IGVmNDFkYWUzMGYzNWQzNmVkNDdlOTJkZmRlODkzZjMxMTQzMDQzY2YgcmVsZWFzZTI1LW1haW50Cis2NTY1MCBlZWZlNDQ1MGY3NzNmMmNmYTFmNDVkNDk0Mzk0MTcyMjcyYTc2YWY2IHJlbGVhc2UyNS1tYWludAorNjU2NTEgZGQ3ZTJkNjhiNmRkZGYxNjA4OTk2NzQyOThhZTgwN2NiOWEyNDNiMSByZWxlYXNlMjUtbWFpbnQKKzY1NjUyIGEzMzkzZTU4MWIxNWI4NGY5MTljZTI4ZWYxYWIxOGI3NzU4NzQwYjcgbGVnYWN5LXRydW5rCis2NTY1MyBiMjE5ZDU1NDA0ZTc2YWE2NjRlMmI5ODczNzA1ODEzMWYwY2M4MGZlIGxlZ2FjeS10cnVuaworNjU2NTQgYjhjNGJmMzkzNzk0ZTliMWU3NzM3ODhiMDdiOTQzYTk0N2E5Njc1ZiBsZWdhY3ktdHJ1bmsKKzY1NjU1IDc5ZmEzZTBjMDk4ODlhYWNiYWEwMDgyYjYyZDc2NDRmNzljMmRlODEgbGVnYWN5LXRydW5rCis2NTY1NiAzYzhlZjM0NjY5MjM3MTIzOGQxMDAyNTU2YWI1MjA5ZmJiNGJjZjYzIHB5M2sKKzY1NjU3IDcwMTUxNjU1NTM5MzczNmY5YzY5OWVjM2U2Y2U4MjM4ZWRhOWU3YWUgcHkzaworNjU2NTggZjA0NzI1MzNiZmM5ODkwNjM1Zjg5Mjg0NDc3N2Q3M2I4NzJiNTJmMyBsZWdhY3ktdHJ1bmsKKzY1NjU5IDc5YzI5MTZmZTU4ZTQxZTcxYzI5Nzg1Njg1YzZhOWQ4YTVjZDFmMzIgbGVnYWN5LXRydW5rCis2NTY2MSBjZDNiMGI3ZmQ4ZTFiN2UyZTNjYjNlZjFjZmVjNzAyYTRkZjJkNmY0IHB5M2sKKzY1NjYyIDEzMWY4NWJiNjkzMDBjNDhlNmQ5ZjZkYTI3NTdjMjIxNGY4YTBjOTUgcmVsZWFzZTI1LW1haW50Cis2NTY2MyBlY2NkOTQyOTcwMmU0ZjU3M2JkZjQ0MmI2ZmJiYmE4ZTljNGU5NGE1IGxlZ2FjeS10cnVuaworNjU2NjQgZDc4ZTI0YjEyZjYzMzZiODdhNTE2YjUyZGIwM2RkMDQyYmQwZmVlOCBweTNrCis2NTY2NSA1MGZmZmM4MDA4NDU3YTliZTBlY2VmODY3YWFlMTIxNDNmNDFlNTE5IGxlZ2FjeS10cnVuaworNjU2NjYgOWQ3OGZkNjBiZjJhNWVhY2Q3NDVhZTM0YWZjODQ2MTY4Y2E4Y2E2MiBweTNrCis2NTY2NyAwNjAwZmNlNjc4MzUyMjg4Y2RiNzc4NzY0MzcyODQ2ZTRkZTcyNTE1IGxlZ2FjeS10cnVuaworNjU2NjggNGYxZmU4ZjE2ZWY5M2Q2M2Y4ZjM4MTdhMmU2OWNlNWZhMDVhZmJhMyBsZWdhY3ktdHJ1bmsKKzY1NjY5IDA0NTU2ZTJhNzk4NGY5NDE4MTY5ZGExNTZjNDk4MWQ0YjZmOTU3ZjggcHkzaworNjU2NzAgZjYwMjZhMzc5OGQ0NDAxM2NjMDc0ZmJkNGIxMWUwMjMxZGI3ZWQzNSBweTNrCis2NTY3MSA2YjE5MDhlYTZiNTM1NDRmNjNkOWVhMWQ1ZWEwYzhkYmM1MmE0YTllIHB5M2sKKzY1NjcyIDcwZjI3OTVkNjkwMjgyNjE1MmU5MGI4ZmI1OWVhZTUyOTc3M2FjOWEgbGVnYWN5LXRydW5rCis2NTY3MyA2MWQ1MGRhNTgxNmEzODcyMGFiNDQ5MmUwMjcwMmNlYTQxNDlhY2YwIHB5M2sKKzY1Njc0IGYxMjYwZjQzMTFlZTc4Yzg1MTMyOTNjMmNhZDQzMWMyYzM4NTQ2NjUgcHkzaworNjU2NzYgYWRlMzNlMTNlYzY5MzA2NmM2ZGQ2N2Y5MWE1MmQ1MWVlOTc4ZjRjYSBweTNrCis2NTY3NyBlODUwOWFjNTAxZjMyNGQ4NTc3NWU0MDRmMDFiZDJjZjQyMzFhZWI3IGxlZ2FjeS10cnVuaworNjU2NzggYjc1NjIxYTQyMGVjYjI4ZTkyMzkwMGE0MDcxZTA0ZDE5OTZiZjc5MCBsZWdhY3ktdHJ1bmsKKzY1Njc5IGFmNzM4OGFkMzE2NGViNzRkZGRkOTg1MTBjMzAwZTA1MWQ0NDVlYzggbGVnYWN5LXRydW5rCis2NTY4MCAyOTNkZjgxNTNmNjE4NThlYWNiY2I5YTJjOGM4MDUwNTNlZDhjNjgzIHB5M2sKKzY1NjgxIGY4YTM0NmZjZDA0MTk2MzIxYWM2YjM3MzdjYzlmYjc4NzcxODlhNWUgbGVnYWN5LXRydW5rCis2NTY4MiA2MzNmYjAyNjBhYjMyMjU0NDNmZGVlMmVjYWNmNmY4MDg5YTExNGUzIGxlZ2FjeS10cnVuaworNjU2ODMgMzY1MGIxY2U0YmQ4NDY0MTBkYTY4YmY0Y2Q0MmJhMTdjNGMzZjFmMCBsZWdhY3ktdHJ1bmsKKzY1Njg0IDYwZTBlMDk3NjNhYjYwZDQ0MDZjMGJhOTVlY2M1NzM2Y2I2MTZhNjggbGVnYWN5LXRydW5rCis2NTY4NSAxMzZmNjFiNzRlOGZlOWQxYjYyZmYyZjVhNDc5NDYzMWM4OTBjMmIwIHB5M2sKKzY1Njg2IDY3OTM4NTc1YWZjNmNjNmNlNjg1N2ZjNWQ1ODU2MjFkNzViYzc5MTAgbGVnYWN5LXRydW5rCis2NTY4NyA1NGEyZGI4ZmRjNjI2ZGU5NGUzNGFjZTRjNDBjNzg1MGNlMGMxYWJlIHB5M2sKKzY1Njg4IDBhNDMzNzZiYWE2YmYyYTkwN2YwMmQ2OTdjZmU1YzgwYTk1ZDE2NzQgcHkzaworNjU2ODkgZTk2MWNjMDE0NjE5MTQxZDI5NjIzOGViNTBhYjU0YTRiYTg0MDM3ZSBweTNrCis2NTY5MCBjNmYwZGU1ZjJjNjg1MjNkNmIyMjJkYjY4Y2YxYzc0ZjViY2Q3YzY4IHB5M2sKKzY1NjkxIDkyMzMyODZjN2VkMGRjNWU3MmI4MzhjYmNlNjQwNDBiZmFmZmJjZGYgdGxlZS1hc3Qtb3B0aW1pemUKKzY1NjkyIDFkODE3MWQ2NDQ2M2VkMDI0ZWJjM2I2MWQ0ZGY4OGE2ZDc0NjlkOWYgcHkzaworNjU2OTMgY2RkODk4NDMzZDU4OGUzMGRmNWI5ODZhYTM0NTI3ZjY0NWJhMjgzMyBsZWdhY3ktdHJ1bmsKKzY1Njk0IGMwNTc5ODllODdlYjlkZGVhMTgxNTE5ZmY5OTNhODg5Mzg4N2MyNTAgcHkzaworNjU3MDAgMTgwMDYyZTMzOTU2OTgwZDU1YjYwZjQzYmNiZDA5ZjE5MjMxNDM5MCBsZWdhY3ktdHJ1bmsKKzY1NzAyIDgxNjNkYWVlNzg1ZDQwYTNkN2ZiNTVhZDBkOWZkYjE0MGYxMmE3N2UgbGVnYWN5LXRydW5rCis2NTcwMyBmNjI3ZjgwMjAxZDM5ZmUxNWVmOWIyZWY2ZGYxM2RiYmIwOWVhNjRmIGxlZ2FjeS10cnVuaworNjU3MDQgZTYxZGViNjkwZTcwODQwMmQ0NTJlYTZjZmU1N2UxNGNjMTFlZTE0MSBweTNrCis2NTcwNSBhM2Y5NTBkMTVjMDgzZjU2YWRkMWFmM2RhMDJkYzE0MjlmMDhlODg2IHB5M2sKKzY1NzA2IGMzN2Y0YjAzNjM3ZjIyNjU4MzkzNDkzMmQ4OTQwMmUwNDgwOWQ2ZDQgbGVnYWN5LXRydW5rCis2NTcwNyA3MTAxNDY4NWUwZTVmNWI5OWUzYzcxZDc4ODI5ZmE5NDYxNmRjMDNjIGxlZ2FjeS10cnVuaworNjU3MDkgNzgwZTE3MDM4OTAyOTlhYmFhZTEwNDM2YWIyMDlkNTIwZWViMDVlMyBweTNrCis2NTcxMCAxNzAyODczZjI0OTJmMjMwNTI1YTdmOTA2MWRhYWIwNGZmYmE4OTAxIGxlZ2FjeS10cnVuaworNjU3MTEgYzZkNzhmODY5NDA1ZDc1MTRkNGNhNzJiMTM5ODc5OTRkNWRjOWM0MCBweTNrCis2NTcxMiAxZWQ4NmNlMGJlYjI2NmEyN2Q5ZmNjZTJmNTIxNTZhYjk1OWU4NGRlIHB5M2sKKzY1NzEzIGVhZDM1OGNlNGQ4YWIwOWZmMjczOGJmYThmYWMyMDI2ZTg1Y2Y2YmQgbGVnYWN5LXRydW5rCis2NTcxNCA4Nzg4NjE1MTViMTYwYzlhYmI2N2ZmYjM2Yjc5NDA0MmE0OWFjOGVjIHB5M2sKKzY1NzE1IDlmYjEwZjNkMGY4NzMwOWU5NTQ4Y2UxNDQ2ZWRhOWZhNTU3ZjlhODkgbGVnYWN5LXRydW5rCis2NTcxNiA4OTRiNGFjZmZmZTQwZDBiYjVjZWQ2NzRmYTBhNThjODQ0ZjVjYjkxIGxlZ2FjeS10cnVuaworNjU3MTcgOGMwZjg1MTk2ZTM3YzJlMTFkZGZjMzY3OTI1ZGJlZjRmMzljMDM2ZCBweTNrCis2NTcxOSA5MThhOTE4YTk5OTZjNjA5MDcwZWQwOWQ0M2E5MmE3ZmVlMTNhZmQxIGxlZ2FjeS10cnVuaworNjU3MjAgYjk3M2ZjY2QwMmE1YjkwNzgxZWMyNzM0NDhiZTYwOWIzMzBhNzY0MiBweTNrCis2NTcyMSBjYTRjNTEzNTg2Mjk3ODhjMTdkYTE1MGE4ODJjZjIwYzk0Mjk3ZDgyIGxlZ2FjeS10cnVuaworNjU3MjIgMWQ2NWM4ZjVjMDhlMTM4MzU3ZGRhMWMyNDlmMGFhMGEzMjY0YWMwNyBweTNrCis2NTcyMyA1ZGY1NmNkNTUxOWE1Njk0N2QwNGNmOGViZDI3NTcwMmFjOTAyYTg1IHB5M2sKKzY1NzI0IDJkNzZhZjdmNzcwMjY4YTkyZGI0NDQwNzhhODJiOWY2MWVjM2EzOTMgbGVnYWN5LXRydW5rCis2NTcyNiBiNjBlMDkyOGRiM2VjN2ExMDUyNDAzYmIyODIwNWRmYjRiNTFhZmU1IGxlZ2FjeS10cnVuaworNjU3MzEgZTBjNjU5MjJiODc4N2RmOGE0MjllNTA3MGU5MGQ2MGI3NzljOTQ5ZiBweTNrCis2NTczMiA5ZGU2OGFkODYwNzhjMzYxYWIzMGExOGIyYzc2NzZjOWQ1N2NiYWIzIGxlZ2FjeS10cnVuaworNjU3MzMgYWVmYjhlOWQzODQ0ZjFlNWVhOGFkMzZjZGM5YzE2ZDMzMDBlNzNlNyBsZWdhY3ktdHJ1bmsKKzY1NzM0IDMxYzM5YTYyZDNmOTY1NWE3MmY4MDgwMDQ3MWJjNWY1NzA1M2MwOTMgcHkzaworNjU3MzUgZWJhNzQ1N2Y0YmI2OTNiOTBjMTEyNmE3MDViNzc2NjEyNTVjZTQ2MSBweTNrCis2NTczNiAxNTNlOWU2Nzg2NDY0YTE4NDM3M2U5ZWM5YTBmZTAwN2Q5YTQwZmJmIGxlZ2FjeS10cnVuaworNjU3MzcgZmY4NTY1MzU0NWY1Y2E3MGY0ZjBlZjJiMmQzNDdlN2NkNWFjN2JhMSBsZWdhY3ktdHJ1bmsKKzY1NzM4IGViMWU2NGU1MzVlNmExNzEyNmVmZGI0ZTkwMjhjMDk1N2RlNzc2YzUgbGVnYWN5LXRydW5rCis2NTczOSA1YTM1Yzk2M2U3NzEyMmVhNmMzNDlhYzllNTg2ZDY1NjE5OTE1M2Q0IGxlZ2FjeS10cnVuaworNjU3NDAgZDk5ZmU1NmY5ZmY4ZDY0MWMxNjAzZTc2MWE2OGJkMGQ5ZmQ4ZGZkMSBweTNrCis2NTc0MSBhZjRlNDBmODkzYmQ5NTBkMDQ3MTMxZmNmMjUwM2VmOTAxM2EyMGFlIGxlZ2FjeS10cnVuaworNjU3NDIgMmJlMTdkMzY4YTljNWI4ZmU2MDhiZmY4NWU3NjRiYjc1YmI2MjY3NyBsZWdhY3ktdHJ1bmsKKzY1NzQzIGYyNGYyNmExMjE4Njc1ZWUwNzQyMWY4YzMzN2U2YzU5Y2E4MThkMDAgcHkzaworNjU3NDQgNDhkZGRmZDJmYmYzYmMwMDM0NzFhMmJkYWIzZThhY2I1MGMyNzJiZSBweTNrCis2NTc0NSBhYWVmMDhhYTJhN2VmZmJhYzI5YjEzODdlZjM4OTUzYWE2NmM2NzIwIGxlZ2FjeS10cnVuaworNjU3NDYgNjEyYjBjMGU1YTBmMzNkOGI5MmQ0YWYxZjU0MjIxMWFhMDU2NTEyMSBweTNrCis2NTc0NyBkOWQ1MThjZDQ5M2MzMmVmYWZjOGEzYmM1MjUxMjQ4MjIxZjg0YzcyIHJlbGVhc2UyNS1tYWludAorNjU3NDggYzc0ODFjNzNjMTYzYTE5N2E3Zjk4MmEzZWIxODZiNmJlZGIxMGJkMSBsZWdhY3ktdHJ1bmsKKzY1NzQ5IDQzNWQ2NGZkMTNhOWNkOWQ0ZDMwNmU0MzYxNGZhNGZmNWQ5ZDkzNTggcmVsZWFzZTI1LW1haW50Cis2NTc1MCBmNGMyZWFhZDA5Zjg0NWUxMzgzMGM0OWVhODdiZmEzNWE0ZjljNDA3IHB5M2sKKzY1NzUxIDQ1NTY5ODk1ZjdiNTYxNGFhZDUzZmNlYzgzYjhkYjNhNGQyMWIxMzIgcHkzaworNjU3NTIgZGRjNjVjZDJmMGJiYmFjMzVmMWRmNGMwMWE1NjM5NjkyNDUyYTY5NSB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTMgOTBkMDQ5OTgzZjViM2RmZTZjNzczNjk5MDI3ZGIxZjhkOTlkNDU4NCB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTQgMDc0MDllOTg1YzM5YzlhYTE3MWNmZWI4ZGYxNzYxNTQ3ODMyMTYxMyB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTUgOWM0OTg5MDcyMThmZDdlODBiMmYzMjE5MTI1NjhmMzJkNDlkNTlkNiB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTYgZmMxYTBhY2ZjZWY4MDhiZjNjZjQzODE4YTU1NDg2MzE5ZWUxODE1YyB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTcgZGE1ODMzM2VjN2RhNzYxYzUxMTJmNzc4ZTU1YWJmZjA2YzEwMWZiYSB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTggNTA0OTNmOWRkOGM3MWE0YTQ3MWJjZWZjYjU5YjRjZjhiMTE0OTlkMCB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTkgMTZiOWVlMWVlZTMxZmEyNTk0Mjg4NWExODQyZWIwMjgwOTM1ZDc3NSB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NjAgOTNhYjlmZGE4MGFiMGM0YTBkNTM2MjlmNzc2ZGEwOWU0ODU4YzEwZiBweTNrCis2NTc2MSBmNDgyODc1ZTJhMDMxYWFiNmMzNDY5ODVmYTAzMmYzOTJiYWU5NjAwIGxlZ2FjeS10cnVuaworNjU3NjIgZjRjMjI2YzYxYjcxYzhmNmIzZThjNjRhYjczYWU0Y2JlYjJiYTExNSBsZWdhY3ktdHJ1bmsKKzY1NzYzIDJmN2U1N2ZjMWYzYTY2NmI1NzJjZWEzOGZiMzE0ZDMxODQwODZlMWMgdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY0IGE4ZjNlNjNiNDdlNDI0MmQzOTI3ODNlOWIwMTQ3YzVhYjUyMDM5NzggdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY1IDNkZTY5ZTZiMmNiMjUyMWQ4ZmI2YjViNTZkOWE4YjBiNzRiMDQzNDkgdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY2IGM1MDU5YjEyZGRjNmQxODQ2YjMwNTAwNTM4NThkZTNiNzNlZTYzNTggdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY3IDliOTg1NjdkNWRkZTUwNzA0YWU4YTU2ZDNhYmUwOWExOTRlOGNlMWYgdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY4IDdhMDM4MDIwYzhkZDYzZTZkYmFkMjZjNjMxYzg0ZDRhMWY3NGQ4ZTcgbGVnYWN5LXRydW5rCis2NTc2OSBjYWJmOTdiODIzMzA4NjFlNWI2NTEwYjRmMjYxNGJiY2VkMmI2ZThmIHB5M2sKKzY1NzcwIGIzNzdjMTQ3MzIzZWJmOWUwODY3MmIyMTRkNjQwMWZlMGUzNWZmYjQgcHkzaworNjU3NzEgZTRjOThkNjE1N2M3MDE5N2JiNGFjNmE0YjQyY2Y1ZGRjYmRhYzljNSBweTNrCis2NTc3MiA3MWI1M2Q2ZWE3YTQ1ZmRiNWUwZGI2NWFlYTE1MzIyYzQ5NDgxMjA5IHRsZWUtYXN0LW9wdGltaXplCis2NTc3MyBkN2Q3MTM5ZDU4NDA2YjY1NWNhOWJjMTgyYmM0OTMxZjcyZTExM2Y1IGxlZ2FjeS10cnVuaworNjU3NzQgMWQ4OGFkNWY0ZGVmMzM2M2YyNDg1MTdlZDM5NTA4MWEwZGRiODMxYiBweTNrCis2NTc3NSBjMzZjY2YyYTcxZTE2ZTYxOTVmYjc3MzRkNmMzMjFkZmNhZTkyZWVkIGxlZ2FjeS10cnVuaworNjU3NzYgYjI5ZGYzNjQyYjk3ZDNiNmZjNWJlMTUwMDAwNzdkYzdkODE0ZTBiNyBweTNrCis2NTc3NyA0MGMwN2E2MWUxYzI2YzFmZmEwNGRkMTk1MmI5NDU1NzIxN2Y0NDg4IHB5M2sKKzY1Nzc4IDEyYzNhMDMzODllN2YzZTIwYTdlYzgyYjVjNjUyMmFlZGZlMmE5YzQgcHkzaworNjU3NzkgNDkyMTNkNDI5YzY4MWEwMWRhZTBiMzdkYTlhZTk4Yjk5ZjE3ZjkxMiBweTNrCis2NTc4MCAyYmViYzBhNmQwNDI4MGQwYzczMjY3ZjVkZGJmNDc5MjQ3MGU3OTZjIGxlZ2FjeS10cnVuaworNjU3ODEgMDY4OTFhZWM0MWRlNmU2OWI3MWM1NTVlYmJjMzJlODIzMWQ1MTIwYSBweTNrCis2NTc4MiAxOTVkYTZkMGM3N2MxMDY4ZTI4YWQyOTg4OTNkOThjOWQzMmU5NzQ5IGxlZ2FjeS10cnVuaworNjU3ODMgODBhOWZmNTllYjAyMDJiMmMyYzdlM2I1MjUxNjk2N2E0OGNjMTg2NiBweTNrCis2NTc4NSA1MzBiNGNiMTk0NDI1YTIzYTQ2YWMyOGMyMTRiZjUxZGRmOWMyOTYxIGxlZ2FjeS10cnVuaworNjU3ODcgNzU2NTg1NDNiOTE5YmY1MzU0MjgzM2MwYjIxYjk3Yjg3NDEwZTEzOCBsZWdhY3ktdHJ1bmsKKzY1Nzg4IDIyYWQ4OGU1YzAwM2E0NmQzNDgxZWYxZTRkNjMzMDNlMjNjNDJhNGQgcHkzaworNjU3ODkgNDNmYTUwYjllYjEyOGZkNWY3MDJjNTI3NDA4NzkzZDE3OWNhNjYxZSByZWxlYXNlMjUtbWFpbnQKKzY1NzkwIDU1Mjk1MzMwNmQzNDJjNThlNjgxYzc2ZDg3NTA3ODcwNTdlOGM1MzggcmVsZWFzZTI1LW1haW50Cis2NTc5MSA4ZDk5ZDAzYTA2ZTQ0YTc3NDdjMWQxYzBmNTI1OWY4YTU5ODExNGEwIGxlZ2FjeS10cnVuaworNjU3OTIgYjBjNGFiODIzM2ZhOWI1Y2ZiZmNiZDgwNTgwOWU5N2Y0ZTJiZDk4OSBweTNrCis2NTc5MyBkN2ZiZTczZmU3Zjc0NDc4ZWU3Mjc1MzE1ZTUxYTY0YjVjYmEzMjI2IGxlZ2FjeS10cnVuaworNjU3OTQgZGQ5OTJiNjQwM2Y0Y2ZkYjgwMzVhNDhhZmRkMzM1NjgzNDg0NGM4YSBweTNrCis2NTc5NSA2MmM2OWQ4OGU5ODVkN2M5N2E3MGM3YmE5M2ZlZWIxZTU2ZDBhMGFiIGxlZ2FjeS10cnVuaworNjU3OTYgZWRiNWE4NTkzNzQ5ZTZjZWM5YWY4MjZiMjBjMDg5YjBjNDMwMmZjNCBweTNrCis2NTc5NyA4OTUzOGQ1ZmI4MWFkYjJmYjIwNDAzNmFiZDM3YmEyYzE0NDdmMzIxIHB5M2sKKzY1Nzk4IDk5YTJlZTRlM2EwNTczYzBmNGM1MmU0YTcwNWNhODdiYmY1MTI3NWEgbGVnYWN5LXRydW5rCis2NTc5OSA5NWYxYzdkYjg5MjNmNDhiZjQ0YzQ3OTZhOWE3OGNmOTdhNTY3ZTM0IHB5M2sKKzY1ODAwIDM1MWFkNjg0MDdlN2ZmMWY0NTE1ZGEzOTM4MDYwZjUxNjdjYjE4ZTggcHkzaworNjU4MDEgZjI4N2JlYjM1MmZlMTYzOTM5MGZlYzlhYTMwNDc2NDE1ZmJkZjU3YSBweTNrCis2NTgwMiA1NTA4ODYyYTFkZTUwNWM4MGQzYjM2ZjJmMDNmOTJmNzM0YWNhYjQ2IGxlZ2FjeS10cnVuaworNjU4MDMgNWE4N2IwZDFjZTkxZTE4YTMwNTc4ZGZmNzY5ZGNlYjQ3NDE0OTExYSBsZWdhY3ktdHJ1bmsKKzY1ODA0IDYwMTk0YWIyYjc1NjI1YjRkMzI5YWU3NzFmYjAxYzAwZjFlMTgzZWUgcHkzaworNjU4MDUgMzE5NWJkNmI2ZGQ3Y2RhZWZiZThkZjE0NTRkOGQ4NjRjMTY5ZjMzNCBweTNrCis2NTgwNiBmYzkwYjU4MTUxNmViZDhhMTkyMzE4MGQ0ZGU0N2VkOWU0Nzc1MjAwIGxlZ2FjeS10cnVuaworNjU4MDggMWE0MWQ0NTZkODAyYmZlNDE0NzU0ZTYyZjcwYTFmNDJiMTYyOWQ4NSBweTNrCis2NTgwOSAyMTE5MjcxNDdjNjA2ZTJkN2Q4NTA3Mjc0OTQ3NzM5YTRlM2M2OTNjIGxlZ2FjeS10cnVuaworNjU4MTAgMjI1NGFhODI0ZDRkYTNiZmUzZTA5NTFjNDYxZjkzYmViM2U1YmMyNiBsZWdhY3ktdHJ1bmsKKzY1ODExIDc1MTdiZGNjNzY5YTFlMTc1MDBhZWE3YjJjMTI3ODUzMzY5YmM4ZjcgcHkzaworNjU4MTIgNDIwNzIxOWFjYzdhODAzOWMzZGU0NTljNWY3MzMyY2FlMTlmMjIxZSBsZWdhY3ktdHJ1bmsKKzY1ODE0IDRiNDU2NGJlYjZkYTJlMGIxMzRmOTNhZjAxYjRmMTEzYmQ1Nzg0YjYgbGVnYWN5LXRydW5rCis2NTgxNyAxN2YwMTA1MTdiMzM1MDYwNTJlNmFjYzI4NTc5MzY3NjdhNzJmZTg1IHB5M2sKKzY1ODE4IDFkMjllNTNjZTJhZjY2N2Y2MTBhNTVkZWI2ZWFhZWI3NzliZDE3NTAgbGVnYWN5LXRydW5rCis2NTgxOSA3NjYyMDAxMGQ3ODI5ODYzN2ZiZDYzZDJkZGI0NDVjYmFkYTUzMzIyIHB5M2sKKzY1ODIwIDVjMGU1ZjJjYmM3ZDg5YzBjYjBmMDAyZTcwODc3YmVkNmQ2ZjdkZTcgcHkzaworNjU4MjEgMjYxNGQ1MDFkZTlhZWZjMTdlZTc4NTBjZjNjNDg1NTI4OGFlNGVlMCBweTNrCis2NTgyMiBlMTQzYThmMzUyNDE3Y2YwNDljYzkwYWQxNTIwZDIxZjZlYjhiYmZiIGxlZ2FjeS10cnVuaworNjU4MjMgNDcxYTRhODhmNTFjNjRjMDMyMzEwYTc5ZjExODJhOGI5Mzc0NWYzMyBweTNrCis2NTgyNCAwMjRiMmI5ODQ4NjY3NmNjNDFiNGU3Yzc2MzI3ODczYTg3ZTdjNTNjIGxlZ2FjeS10cnVuaworNjU4MjUgMWZkZmEzODJhZTEzMmUxMDNiODQ5OWM3ZDg2NWE3NjI5NDRlZDA4NyBweTNrCis2NTgyNiA5ZDE4NTZhYmE5ZjI0OTNkYTgxOTc1Yzk2MzlkNzg3MDY1M2QxZjNhIGxlZ2FjeS10cnVuaworNjU4MjcgZDY1MzdhM2UxYjczYzAzOWJjM2RmY2MzNjEwMWU0NDA4ZjVjMGUzMiBweTNrCis2NTgyOCAyOGQ5M2M5YzNhMDMwMzVjYjFkM2I1MTA2YzZhZGE2YTE1MjI5ZGNlIGxlZ2FjeS10cnVuaworNjU4MjkgZGI1ODkyNDFlNmY3NGM4OTU1ZjU2MDY2ZjY4ZjgwNjNjY2YxMmM5MyBsZWdhY3ktdHJ1bmsKKzY1ODMwIDZkZGEwMTY0MzEwNmNmYjJkMjcwYjBiNTg5OWFjODdmNjk0NGZmYzEgcHkzaworNjU4MzEgNTlkOTdhM2VlMjE5ZTQ2MTVjNjBhMzk5Y2U3ZDEzMTU5ZjdiZWVkOCBweTNrCis2NTgzMiA5MmY0YmIzNjYzN2MzNGU4Mjk5MzZkYWJjOTVmMmM1MGQwMTRkMWMyIHB5M2sKKzY1ODMzIDhkODgzNTA1NTNjM2Y1YTY3NDk1MjkyMTNhNDVkYTNiZTI0NzVlNGMgcHkzaworNjU4MzQgOGE3YTI1NDU5YzZmMDIxOWEyMzllZDEyMjA1OWEwZTc3Y2E1MTA5OCBsZWdhY3ktdHJ1bmsKKzY1ODM1IGUxMDcxM2IyZDU0MzM4ZDk4NzkxMzRhODlmZGY5MzkxMzlkMjM4YTAgcmVsZWFzZTI1LW1haW50Cis2NTgzNiAzMjkxNDkwNDhiOTBjYzk1NjU4ZTEzMjFjZjAyZjNiN2YzZTEzMjdmIHB5M2sKKzY1ODM3IDJiYWMwZDQyMTkyOWU0NTY5ZTlhYmFlMzUyNzU2OWQxNTAzYTQzY2QgcHkzaworNjU4MzggNDI4ZDM4NGVkNjI2MzQ5OTZkZTViZDc0NDk0MTAyMmZjM2FlOWY3MiBweTNrCis2NTgzOSA1YzEwNWY5YTc4ZThlMWY5OTljZWUxMTJkMzJkYmJjM2E1Nzc4ZjJiIGxlZ2FjeS10cnVuaworNjU4NDAgOWE4OWZiNTgwOThiNmJhNWNmZTJkMmYzYzUxOGI1OWY2ZGNkNGEyZSBweTNrCis2NTg0MSA1NDEzOGVlMjBlNTdjMmU5YWQyZGZiYzQxODY1NTFjNzUyZGIxODcyIHB5M2sKKzY1ODQyIDAyNzVkODFlMzFkMDljYmUzN2FjOWIyZjUxOWY1ZGJiYzc4NmQ1ZmEgbGVnYWN5LXRydW5rCis2NTg0MyAyOTFhNmYyMjAzNjA3MGM1YTAzMDQxZTE5OTIxMTJjOTBjMzk0MDdjIHB5M2sKKzY1ODQ0IDgzZjc3OTg1MjRmMWM3MDE5YWMxMDk5MTMxMjRmNWIwODc5YTYxNmMgcHkzaworNjU4NDUgYjBlM2FjODZjZGQ4MDJhMzFmNWU2ZjI1M2EwNzExZDMwMDI2YTdmMSBweTNrCis2NTg0NiA3ZDY0ODA2ZmViMTU2MDhkNmFmMmVlYTk4MDA3ODE3NzBkNWI0NmJmIGxlZ2FjeS10cnVuaworNjU4NDcgNWUzZmFhZTZlZmM2NzE5ZDQ0YmMwZWRiM2IyN2JjMzIxMzhkZjU1YyBweTNrCis2NTg0OCAxNGYyYTRjYjU3ZGUwNDM1NzZiODc4YjI2ZmQ1MGExODZlMmU4NDRhIHB5M2sKKzY1ODQ5IDdjODFkNWFhNWY0MTdkMDg1Nzc2ODUyYzIyZmNkM2JkNzk2MjRjNmIgcHkzaworNjU4NTAgMThhYTkxOWRmMjQ1YWI5ZmVmMTE4NjI5ZTgxZmMyZmY0ZmNhMmVlNCBweTNrCis2NTg1MSA5NGE3ZmIzM2FmZWE1MjkwMDg4N2Y3MTA4NTcwNDg2ZTQ4NWFkNTBiIHB5M2sKKzY1ODUyIDQzYTg4NTg0NGFkOGQ0ZTE1MTZmMGRiMmFhZGVhMTBkNGY0NGY4YzEgcHkzaworNjU4NTUgNGRmMTIyYWRhNzZmYWY0NmRhMzBhMTgyZGUyYjdlZWZhNmI1ZTU4ZiBsZWdhY3ktdHJ1bmsKKzY1ODU2IDgzZWIyYWFhNWZhYWE0NDU5Y2E2ODMwN2EyNjNkMzZjZDcwZDkzMTUgcHkzaworNjU4NTcgMTRlODE5YmVlZWFiOGMwNGFjNjRjZTYxNWM3ZGEzZGQyNmUxMjUxYSBweTNrCis2NTg1OCAyMDlhNDU4MWJkOTE5YTAzNTQ2YmZjOWQwMzdmZjBkZmY4NjA2Y2UxIHJlbGVhc2UyNS1tYWludAorNjU4NTkgN2YwMzhhNDcwMGIxYzA4MDRlYzM5OTZlYWJjNWNiZmI0MTk5OWM1OSBsZWdhY3ktdHJ1bmsKKzY1ODYwIDgzYjJkMDdiNDc1YjUwMzA3YjQ4ZjZhZjU3MzllMTZiYWI2ODU4YmYgcHkzaworNjU4NjEgMjQ4MDYyMjk2NWU2MDA4Yjc4ZDUwNzRjMDg3MmRkOTVlZmVmOTk1NyBsZWdhY3ktdHJ1bmsKKzY1ODYyIDc1MTFmM2U2NzJhMjlmMzcyOTVkZTUzZDgxZWQ1MGNmZDQxMzYyM2MgcHkzaworNjU4NjMgZWEzZDEzY2Q3YzFlNmI2ZjVlNGRlNjczN2Y2NzJjMzRlNjA1OWMxZCBweTNrCis2NTg2NCA3ZWE4MDVkODc5ZTFhYjU3Y2IyODYyMTg4YTI0ZDExODkxZGUzNDU4IGxlZ2FjeS10cnVuaworNjU4NjUgMWEwNTlhYWZlNDlmMGU0Yjk5NGVjMTg0NDc0OGVkZTRlMzk0NGQ1OCBsZWdhY3ktdHJ1bmsKKzY1ODY2IGFhNjEzMjA5MzMyZDUxYWI2ZWM2MjliODJhZWYwZDcxYmNhYzkyZTggcHkzaworNjU4NjcgMjVmMDZhNzAzZjg5YTllODk2ZjU1MDg3NGRhZDFjZDNlNzQzMmRjOCBweTNrCis2NTg2OCBiZDM3YTE4NjYzOGYyODNkNDNkY2M1ZDQzZmFjMzc0ZDU5ZTYwY2MwIGxlZ2FjeS10cnVuaworNjU4NjkgZjA0YjcwM2YyZGRkYTFiMTE3YTE5NTU2YjAyOWRlNGY3Njk0MWZmNyBsZWdhY3ktdHJ1bmsKKzY1ODcwIDk3YTI0YzYwOWMyZWU4ODA0MDA5OGE0YzhmM2I5Y2FiYTAyYWE1ZjkgbGVnYWN5LXRydW5rCis2NTg3MSA2ZDIyZWU4YzczY2EzNDhjMTE0YTZmYjc5MzIyZmZiNGQ2YmNjZWUxIHB5M2sKKzY1ODcyIDQ5ZjUyZTI4NWE2NDAyYmNkNWY5ZDBlNTU4MDA5ZGQ0NWI3YWYyZWEgbGVnYWN5LXRydW5rCis2NTg3MyAyYjgyOWZmYTQ4MWI1NzQxZDBlMDQ4MWYzMDRjMDU5NWMzZjgxNjFhIHB5M2sKKzY1ODc0IDk2YTRjZGE2NWM1NTJmZmFkODNjM2M4YjVjYjQ5M2M4ZDE5ZmY0NWQgbGVnYWN5LXRydW5rCis2NTg3NSA1MTA5MTkwNzMxMTlmOTE5ZTI2MjM4ZGVmMTU5Mjk4OWYwN2FlY2QwIHB5M2sKKzY1ODc3IDZhYmFkYTA1YzMxMzEzNTkxMjQ2YjJhZjc4YTBiZTQ3ZWM2NWQzMmYgcHkzaworNjU4NzggZjQ5ZDkzMTRkNDM5MTExYTFmYzBiMjc1YzM3NDhiZDJlNjBiZWVlNyByZWxlYXNlMjUtbWFpbnQKKzY1ODc5IGVmMTk1NTg0NTUwOTRmYzFhYWI4M2MwYmZmMDRiOGQxYWUzYzkzZTEgcHkzaworNjU4ODAgNGI4ODA2NDU2MDc4NzFjMDA1ZjkwOWFhZmUyMTBlYWM4ZDBmZGI2NyBsZWdhY3ktdHJ1bmsKKzY1ODgxIGM3ODIzYjM1MWZiY2I3NTY0MDI5MGI5OWViOTAwZmEyYWU5ZTFiNjIgcHkzaworNjU4ODIgODJjNjk2ZjA0MjRhNDdlNDZhOGEzYThiNDBjODg1MTU4ZTBkODUxZSBsZWdhY3ktdHJ1bmsKKzY1ODgzIDk5ZTc4M2VjNzc4MTU4NzFjNjdhY2IyMTY3YzY3ZDlkNjQxYzIyYzIgcHkzaworNjU4ODQgYzFhN2ZkYjI0NjI4ZjI0M2UxY2YzMmViMDE3NDE4ODljMzJmMzE1NCBweTNrCis2NTg4NSA1MDRlNmQwMzBlODRjN2RmYzQ1OWY0ZWI2MjZhYmJhNmI0ZWYyZTUzIGxlZ2FjeS10cnVuaworNjU4ODYgNTAxMjU2YzU0Yzg0YTY0ODUxZThmNjdlNmM5MDExYzNlNWQ4NTI1NiBweTNrCis2NTg4OCBmN2E2Mzk2YjQ5NmYwMjJhYzk5NTY4NmFjNWQxOWI1NzNkYjNlZjJmIHB5M2sKKzY1ODkwIGU3ODAyNGFmMGNmMDNhNDdmZDk3NTg1ZjkxNDQzNmY4ZjIyMjlmMzAgcHkzaworNjU4OTEgYThmOThhNzI3MzcxMjEyMmFiOWU3NGNjNzM4NmU1YmM3M2IwNzc4NyBsZWdhY3ktdHJ1bmsKKzY1ODkyIGJlZTQwMDMzNmZkNWM3YTA0MzQwN2Q3OTU0MDJkZGU4YWQ4YWEyMjQgbGVnYWN5LXRydW5rCis2NTg5MyBhYmRlNGRiMzA3YTU5YzU2MTE4M2RlN2ZlZmNkMDM2NDljMjQ5MzNhIGxlZ2FjeS10cnVuaworNjU4OTQgMWFmMjExMjM2OTA0MzBkZTA3MDEyZGJkMDgxNWYyOWE5NWFjNzIzYiBsZWdhY3ktdHJ1bmsKKzY1ODk1IDhmMjE1NmIxNWJiOGU2OTBjYjQzNjIwNjc5MWUxZjZmNjM5MTU2ZTYgcHkzaworNjU4OTYgNmNkN2IxOGJiNzQyYTM2YTJjNTRmY2UxNWU4NWY3N2M3MDExNDZmOSBweTNrCis2NTg5NyAzYTExZTc5Yjk0NzE1ZGRkNzEwMzY1YTM5OGVmNjEyNzUyMDhmYzdlIHB5M2sKKzY1ODk4IDBmZTZjYjBjMzEwZDcyOWRhZDUwYjM2NWNiNDFhZDYxZThlMThkYTAgbGVnYWN5LXRydW5rCis2NTg5OSA2ZDZkM2UwMzc1NTAzY2QyNWJlNzI3MzZjNWM2ZTU4NWYwMGFiOTFkIHB5M2sKKzY1OTAwIGQ0MjYyOTE4NTM4MmViM2Q3Y2ZkYTFhNzBhZjM4YWIzNGE2NjJlNTkgbGVnYWN5LXRydW5rCis2NTkwMSBjMTI1ZTc1ZDIxYTA0ODc3NGY2NWM1YTdjODRlNjM5MTczNjM2YWMwIHB5M2sKKzY1OTAyIGEzNmI2YzFjZWM1Njc4MjI2OTY3MTg0NmRmNjQ3MGNmNzQzNDA4MGEgcmVsZWFzZTI1LW1haW50Cis2NTkwMyBlODk0MjA0YWRmYmRhYWEyN2QwNTM5ZWFkMTU5MzY4YmJjMjUwNTY0IHB5M2sKKzY1OTA0IGFlNWI3M2M1MjA5N2U2YTM0NjZmZDVlMGVmZTQ4YjE5MGU3YWQ3MTUgcHkzaworNjU5MDUgNTFmMmY4ZmVlNWM0NTBkMjFmZjZhYzg4MDE1ZTc1NzY4MzgyZjAxMSBweTNrCis2NTkwNiA2Y2M4OWM2MGY3NGQ2Yjk3NjVmNzZlOTU0YTc1MzMzMDc3N2M5N2NiIHB5M2sKKzY1OTA3IDRmNTAyMjgyMzE5OTBlYTFkZWI5Yjg5Mzc2YzBhMDg1NjBmMjRiYTAgcHkzaworNjU5MDggNjdjYjMzODgwMzc3YmMzYWRlMWE1OGM4OTYyZDZhZTIzZWZlNTA1NiBsZWdhY3ktdHJ1bmsKKzY1OTA5IDExZTcyZWJmOTA2YWVmZWJhNmQ4MTNmNTI3NjY4ZWNkOWY3Y2IzMzMgcHkzaworNjU5MTAgMWJlNzg5MGNkNzU5NzgwMTZlZmQ3NTg5ZWM2NGNlZGZjMTNjMDhkNCBsZWdhY3ktdHJ1bmsKKzY1OTExIGMwMzAyNGRiODAxZjk2YWQ2NTk0MDE3MDgwODI4ZDNiNzQwYzQwNTQgcmVsZWFzZTI1LW1haW50Cis2NTkxMiAwNDBkOTU4MDUwMGNkYjY3MjM5OTY5ODYwYTM4YTllNzAxZDE0ZDgyIGxlZ2FjeS10cnVuaworNjU5MTMgZTk5NjE0Y2EwMjA0YjdlNjAzMWJmYzIyN2Y4ODI2NGQ3MGFlZWJiYyBweTNrCis2NTkxNCAxY2I5MDhhMDQzYjNmMGY5MzgzOTc3ZTU5N2NmNGE2ZWViNWMwMTQxIGxlZ2FjeS10cnVuaworNjU5MTUgNzYwOGFmZTExZmI5NjA0OWU3ZTQxNmZjMGNiZmY0YmFkNzIxMWIxYyBweTNrCis2NTkxNiA4MTMzZmJiNzQ1ODc1NGE3MjVlNjcyNTAzNjAzYmIyZWQ0ODE4MWU4IHJlbGVhc2UyNS1tYWludAorNjU5MTcgYjE5OWYzNDE5ZTY1ODAyYjlkZDY3MmJkZmQ3OThmMTZiNjBkYWY3MCBsZWdhY3ktdHJ1bmsKKzY1OTE4IGExOWQ2N2Q3N2IyMmY3ODdiZTE2NWM1MjA5NzhlMmI2Yjk5ZGE2MjkgcHkzaworNjU5MTkgODhjYTUxNzU0NmZkMDIzNTdjZjcyMzNkYzk0N2JlMGNmM2I0NTE1NyBweTNrCis2NTkyMCAwMzNkNjNiZjcwOGVhMmFkNDFjNTJkNGI4NDE0NmRhMjMxZmE5YzY4IHB5M2sKKzY1OTIxIDAxM2Q0ZDg0MDdjYjlmNjhlNzY1NmQxMWY2MmI3OTE4YTk1MjFlNDUgcHkzaworNjU5MjIgYzYyODYyZDczZjllYzY0ZDY1NTQ5NGNmMWY2MTQ0MzQ0NmYyZGVhMiBsZWdhY3ktdHJ1bmsKKzY1OTIzIDczMTY0NTY1YjkyMGUyMDU5NmQzM2E5OTNiOTllZDdhNzkzN2U3NjUgbGVnYWN5LXRydW5rCis2NTkyNiAyN2QxOWI2NjUwMzU3OWQ4YjNhNDFlNTJhY2FiOTA3OTlmMmJiM2RmIGxlZ2FjeS10cnVuaworNjU5MjcgNTA5ZTMwYTc5NjhlMDFiZTMyOWVjMTIxNTQwYjNlNzU1ZmM0ZTU2NiBweTNrCis2NTkyOCBjNDExY2Y2OTQyODk2Y2MyMTYwODlhNjk1MDY0Njg0NDMyMmYyZWE0IHB5M2sKKzY1OTI5IDAxYjllMThkNjlhYzQ0OWVlOTU5YWI1OGExYTFhOWZkY2Y4YjFiNDkgcHkzaworNjU5MzIgYTBhYmFmZjk3ZTAwMWE0YjkwZTQ2ZGYzNjdkN2YxMmFjNTBkYjllZSBweTNrCis2NTkzMyA5NTlkMWFhOGI1OGFlYmUzMjYzMGVmMDJiZDQyYWVhZmVmMTk2MzNiIHB5M2sKKzY1OTU4IDU3YTg3MzU2NDdjZjg3NDVkMGI2MzI2NTBhYjQ4NDQzMDBjZTY0ODMgbGVnYWN5LXRydW5rCis2NTk1OSBhNzcwMjJkYzNmNjFkMjIxZDE1OGZhOTgxN2Y0MGYyNTI3YWNmZTMwIHB5M2sKKzY1OTY0IGUzOWQ0NGFkYjYxODA2Yzk2OTJjM2MwZTBhMjMyNDU2ODdhNzUzNGQgbGVnYWN5LXRydW5rCis2NTk2NSBhOGQ2OWMxYTNmNGVmZDM4NzY4YTM3OTM4NjNiZGVlM2VjZDcyNjZhIHB5M2sKKzY1OTY5IDRmYWFiYjE4NTYyYzYzZDcyNmQ1NmE3YzBlMGNkNTQ1ZDlmMDk2MDcgcHkzaworNjU5NzEgNGIxZjI2MmNlYmRmNDAwMzI3MTlmMjUzN2Y5ZThiMGYxMGVmZjczNCBsZWdhY3ktdHJ1bmsKKzY1OTcyIDJkYzY0NjlmYzRjNGQ0YjNjNmM3MzhmODk0NzUxYzM0YzgzZjEyY2MgcmVsZWFzZTI1LW1haW50Cis2NTk3MyAxOTQ0ZDMxMDQwZTMwNjYxYjNiYzZkY2M5YmMwMzhiMDRjYzMzYTVmIHB5M2sKKzY1OTc1IGFmYmZkOGYyMTRkZDEzMzdkNmQxNzVjOGNmZmFmYWQyZTdhNTAxZjEgbGVnYWN5LXRydW5rCis2NTk3NiAyYWE3OWFkNGViODUyZGRkZDZhN2FhNWEwNTI3N2U4OWYwN2E3OTA4IHB5M2sKKzY1OTc3IGJjZTAzZjg3ZjY1ZGIxYTEwNDRhMTRjOTg3YWM4YTBjMDkwZjUzMTYgbGVnYWN5LXRydW5rCis2NTk3OCA0NmMxYmNjNGMxZDMwMzc0MDU1M2FiNjg2NGJjMGFmNTJkODYzMTVlIGxlZ2FjeS10cnVuaworNjU5NzkgZDk1MmU3NTNjNjExZjc1YWFjZGY1NzUyYzVjMzRlNTY1MDM0OTIzZiBweTNrCis2NTk4MCA3NDg5OWU2Yzg3YTVjNWRhNmFlYjljM2U1ZTgxODI1OTdhYmQwNGYzIGxlZ2FjeS10cnVuaworNjU5ODIgZjk3MGE0Zjc1NjBmZmEyMGU5NGI1NWE1ODk2N2RkZDRmYWE4OWY2OCBsZWdhY3ktdHJ1bmsKKzY1OTgzIGUzZTUwNzM1MGVkNGQ0ZGU4OGYxZGExNDNkYTAxNjI0Mzg2ZmIxZjMgcHkzaworNjU5ODQgMjA0NDMxZDQ0Y2RjNDkyODRjMWMzY2RkODE1YmU3ZWRjZjRmNTk5NiBsZWdhY3ktdHJ1bmsKKzY1OTg1IGNmZDc5YTRjMTYwNDMzZGQ1NDg1NmM0MjhlZmQzNDFkOTc1Y2QxMTggcHkzaworNjU5ODYgNzVmNjRmZDFmMTEzNzg4YmVjNGZlN2VjZWE3ZGZkYjhlYmFhZGYxYiBsZWdhY3ktdHJ1bmsKKzY1OTg4IDY1YjJkZDQ2ZTE3MTE4OTdiOTMxM2NiYzg4NDFlOTczMTI1ZDhlMmEgcHkzaworNjU5OTQgYjUyMTM4M2I4MWE3MTU3MTVlYWY3ODk1NzNkOTlhNzUzZWVhNmI4YyBweTNrCis2NTk5NSA5NjllZGMzYjcwN2YzYmZhODQzYjE1Nzk2MmViMmM0OTk0OGFmYzZiIGxlZ2FjeS10cnVuaworNjU5OTYgZTdiODU4OTBlOWIxMDczNTA0ZDE1ZGMxMzBiMjUxOTllN2JmNmRjNyBweTNrCis2NTk5OCA1ODdjZDRmNjZjMmRjZDk1ZmJjOTUxNDFjZmM2NWY3MWY1Yjg1MmFiIHB5M2sKKzY1OTk5IGRmZTU0NmI2NmVlZmQ3NTgzYWQ1MTZjZDY3MmEwNzE0ZGJlYzYxYzYgcHkzaworNjYwMDAgNzZlNzFjZWNjNGQzMTNjYmMwYTZmM2UyNTMzMjg4MTU5ZTg3NjAxMyBsZWdhY3ktdHJ1bmsKKzY2MDAxIDA3ZWM3MmNmMTljN2Q2MWM4YTJkMjY4MGVmMDI5NTk5ZGRkYmJlYjcgcHkzaworNjYwMDIgN2JiMWM2MGVhZjY0ZjU5ZTViY2VjODVmNjI2NmY0MmY2ZjcyNzZhZiBweTNrCis2NjAwMyA4NWMwOGNmMDhiMmI1ZWVmNzUzZDRlZGVjM2JmMTk3OGQ0MDdkZTJiIHJlbGVhc2UyNS1tYWludAorNjYwMDQgZTE0NTUyYjczMTdiY2M5NTU5NDNiYWJkZjM1OTIzMDZlNGIyZTAxOCBsZWdhY3ktdHJ1bmsKKzY2MDA1IDY4MmU5YTQyYzE1ZDUzYjQwZjAyYmYzNGIyYmNjNzc5OTYzZTkxNDQgcHkzaworNjYwMDYgYjE2ODJjNjkzYjlhMTVkODc5ZDY3NTUyMWY2MWQ1ZGQzZDk3YTc0MyBsZWdhY3ktdHJ1bmsKKzY2MDA3IDVjNzVhMzNlZjViMjc2MzYzN2Q4ODgzYzVkMWNhNmM1OTI3Y2U0ZTIgcHkzaworNjYwMDggZDJiYTM2YTdhNzEyNzQ1Y2I4YzU3MDEzNzRlZmEyNmY3ZWE4YTk2MSBweTNrCis2NjAwOSBhZmI5ODA4YjBmMzBmYTI1YjM2NjhjNzQ4NWRjYjIxYjAxMGUwNDQxIHB5M2sKKzY2MDEwIGEyNzIwMzUzZjBkMzQ5ZDc0MWU5YjU4YWMyM2QyYzFjMmFlOWM1ZjQgcHkzaworNjYwMTEgOTg0ZTFjNjAyOTc5MmM5ZjI5NDU3NGFhNmQzYzU2NjgyM2ExNjFmZSBsZWdhY3ktdHJ1bmsKKzY2MDEyIDJhNmFlN2U4YzdjMzZlMDMzZjIwYmFmMzU5NmE2ZjZiNmIzMTJkMmEgbGVnYWN5LXRydW5rCis2NjAxMyA2ZWExYTcyMGIwNTdlZTFiYzhlZjE2OWUwNTQzYmMyNzYxYjMzOGQyIGxlZ2FjeS10cnVuaworNjYwMTQgNzBlZGFjODkwZjJiNmRmNjJkYzkzMDhmN2UwNTE0YThkYjNjYjg3YSBsZWdhY3ktdHJ1bmsKKzY2MDE1IGMwMDE5ZDQ1NTUxZGM3NTBjNzY2NmYyMzA5ODM3YjFkNWM3OGJlNTEgcHkzaworNjYwMTYgYzk1ZjM4N2VkMWY0MjZjZTY1MjFjMDhiNjU5ZjZiMThhZjMyM2Q3ZCBweTNrCis2NjAxNyA1OGQyOTVlNzgwMGY3YTRmMmZiN2EyZjIxZjVjYTFmOThlMzBhMjVmIGxlZ2FjeS10cnVuaworNjYwMTggZGU5NTRkZDY3OTdiNmU2Nzk0NWRhZTcxOTljN2IxMjE1NzRhZmZmOSBsZWdhY3ktdHJ1bmsKKzY2MDE5IDg4MTE5ODNkZmNhZjhiMjI2ZjQzNjczZDNkODY0NTA1NjFkYWRjNjUgcHkzaworNjYwMjAgMWE0OTIyZmE1MTYwNjU5MjFhY2QwNzQ4N2ZjZWEyMmZjNzUzYjliMiBsZWdhY3ktdHJ1bmsKKzY2MDIxIDY3OGEwZjBlNjFiYzVkNmJjNTI2MWVjNzNiN2E1NTE0MjZiY2E0NjggcHkzaworNjYwMjIgMmE0N2IzYmIxMWZkOGJkOWVhOThmMmU2NzE1NzAzZDkyMDI5ZmI2YiBweTNrCis2NjAyMyBkZjYyNGRmNmVmYTNjZGEwNDFlYTRjNGEzMGJmYjk1ZmI0ZDhhNTRiIGxlZ2FjeS10cnVuaworNjYwMjQgM2RjNGRmYTNlYmExNjhjZmJhNDAxNmY5YmY3ZTAzOWQ4YzM0MjM2NyBweTNrCis2NjAyNiA2ZmFjNjM2MTMzZjAxMDZlZTRhMjllMTQ4NjI1YTI1YTA1OWI2MTg1IGxlZ2FjeS10cnVuaworNjYwMjcgNGZiN2U3YjJjOTYyYWMwODY5YjlhZDRkZDI1YmFmMGJjNTg2NjhkMSBweTNrCis2NjAyOCA5ZWIwY2QzMDMyNmQ4YjY1NDRiZGIwYmJmYmI5NWFjYmRiODVmZmQyIGxlZ2FjeS10cnVuaworNjYwMjkgZGQxNzdmNTc2YmU4YTk1ZTZlMWM4YThhMWVlOWE5ZGEwM2IwNTI3YiBweTNrCis2NjAzMCA1YTIwNTkzYTgxOGZjMjMyYWJjZjYyMzUzMTIyZjg2ODRmNDEwOWU3IHRsZWUtYXN0LW9wdGltaXplCis2NjAzNCA4MmY3M2IwYjVhMzA4ZTk4MmM1MDMyMmY5ZmNkYTM5NzNiOWYyODQyIHB5M2sKKzY2MDM4IDU0OGRjY2M0MDA4ZWQ5MzRiYWZhZDVmN2I3MTBjYTQyZGJiYjIxYWIgcHkzaworNjYwMzkgZWRkMmNhODk0YTY3ZGM2YjRmOWNjOTJkNjhmYTQ1YTc3NTk1MDMzNiBsZWdhY3ktdHJ1bmsKKzY2MDQwIDAzYzIzYzUwNjU0ZTVlM2E2MmE4ZmVjNmY0YTdmYjRkMWIyMWNmNmMgcHkzaworNjYwNDEgNGRiMWY1MDk4MTc1YWJjYzU2ZWFkNmYwNWQ4OTIxYjVjM2U0YmIyYyBweTNrCis2NjA0MiBkNmU4NmE5NmY5YjM1MDg5Y2IyYTk3NDYwNzNkMDVjOGMwYWM2ZTA1IHB5M2sKKzY2MDQzIGQwMWMxZDc2ODg0MTUzNDBlMzJiNmI3MzE3ZmMxZjk2YTc4ODA1ZGQgbGVnYWN5LXRydW5rCis2NjA0NCAxMmQyNzYyMDc2YmFhNjExZjc2OWJiZTgwNmZlZGQyNTg3NjA1ZmVlIHB5M2sKKzY2MDQ1IGM0MmJmOThiMjYwZjM1MjA0Njg0Mzg3MjU2MjQ3NDQ1ZTAyNTM2MDUgbGVnYWN5LXRydW5rCis2NjA0NiBkOWZlMjllOTVkNjAxNWI3ODM3NTRjNDJkYWI3NzM3MTFhODY1M2I3IHB5M2sKKzY2MDQ3IGRlNmZiOWYzNDUxMzI3NWQ2MzZmNTAxMjg0N2MzNmEzNmM1Y2ExOWQgcHkzaworNjYwNDggNDdhODAxYzI5ZjEzZDQ4ZTZjMGZjZTc0ZmY5OWQyMzQ3YmRiZTI0YSBsZWdhY3ktdHJ1bmsKKzY2MDQ5IGFhM2M5MGNlMTkzMmJhZTc3Y2E5YTY0OGQ4MTFjODEzMWY5NzNmYzAgbGVnYWN5LXRydW5rCis2NjA1MCBmZGQxZWUyMGFiODZiMDk4MDdkMTlhNDQ3ODEwZGRhNmYwNjM5ZjZlIHRsZWUtYXN0LW9wdGltaXplCis2NjA1MSBmMjdjY2ZkZWE4MzQwMTIwMzhjYmEwODI3YjM2ZDc0N2I1OTk0ZjdmIHB5M2sKKzY2MDUzIGVmYzQ5ODYzY2Q4ZmY5YmIzOWQxMzZhZWI1ZThiZDIzOWQwMWUyN2EgbGVnYWN5LXRydW5rCis2NjA1NCA0NzE5MmQwYjczMWYxMDQ5NmYzZTYyMzJkOTliNjVhNTBjZDZjOTM3IHB5M2sKKzY2MDU1IDZjZWI3Yzg5ZTc3NmJhOTI0NDk5NzY5YzY5NjliNWUzYjA2N2EwMTkgcHkzaworNjYwNTYgYzU2MmM4ZGFlNDlhNjA1ODcwZTZlOGFhNmZhN2I4ZTJlZTkxN2NhZSBweTNrCis2NjA1NyAyN2UxNDJkOTlhNzE3MzkzNmE2NThmZGIwM2NlZjg4YzEyNjdkYjg2IHB5M2sKKzY2MDU4IGJiZmZlMDkxNGM1NmU2MTBmMTE4ZTEzYmVhYTA3OWIxOTE4YmUxOTIgbGVnYWN5LXRydW5rCis2NjA1OSAwYzY1YzgwMjc1MmEyYjgyMGQzZWIzYmRiZjBjYzY1NzY2NjIxYmNlIHB5M2sKKzY2MDYwIGE4YzUzNTgwYzVlYzQ3MjI1YzE4ZjRjNTFiYWZlMWMzZGI0YWIxM2EgbGVnYWN5LXRydW5rCis2NjA2MiAzMDgzNGI5YWExOTM3ZjFmZjgyZDQ4Nzc0MTMxM2RhODUwNTJhMGE4IGxlZ2FjeS10cnVuaworNjYwNjMgMDEzMTM4Y2RiODczYjJlY2MxN2ZhNmI0MTRjZjM0ZjRhNzM0ZWY4YyBsZWdhY3ktdHJ1bmsKKzY2MDY0IDAzZTIxNmRjOGZlY2NiOTFhNDEyNzQyNjAzOGRkYzc0MGIxNzA1ODggcHkzaworNjYwNjUgNTZlZDQ0NWZhNjFlNjAzNGQ0M2IyOWNkNzI1MTk1NDZmMThiM2JmNCBsZWdhY3ktdHJ1bmsKKzY2MDY3IDk2YmM1ODk2YTI0MDU1MWNkYjc2NDM2YmZjZjdiNDk3NDFiNDUxYTAgbGVnYWN5LXRydW5rCis2NjA3MSBhMmYyMDI4YjczZWQzYWJlNTY4YWI2OTBiNDZhMGM0YmU5YTQ4ZTBmIGxlZ2FjeS10cnVuaworNjYwNzIgODRiZGQ1M2UzOTA2NDg2ZGViMWMxNmZmMWZlMzg1NzMyNGVmMTdjMyBsZWdhY3ktdHJ1bmsKKzY2MDczIDk2MDU4OWQyYTEyZDlhZDQzNzhlNTc3YzcxZmFkOGNiZDZkZThiMDkgbGVnYWN5LXRydW5rCis2NjA3NCBmYTdiNjFkMmJiM2Q3Y2M3Y2I3ODFlNjBmYmE5MTcyZDQyZTRkNGY1IGxlZ2FjeS10cnVuaworNjYwNzYgMTFkOGZhM2M4OGQ4ZTgzNjgxZGMzYWVjNDFiYzYxZmRmODFiYTA3ZiBsZWdhY3ktdHJ1bmsKKzY2MDc3IDQ4YzVlYjUxMzM3MGQ4ZmE4ZDRlMmU0OWQ5YzU3YTVhNDQ3NjYwYjcgcHkzaworNjYwNzggYjUxNTY5MGIzNzlkN2RkZWFiNTI4M2VhM2UwNTcxYzMzMDBhMmRhMyBweTNrCis2NjA4MCBmNjc5NjNjZDQzOTUzY2MxZDllZTA1MGExYjE1YWM4YzQyNzhlZjljIGxlZ2FjeS10cnVuaworNjYwODIgYTFkOWU4M2JjNzZkYTNhZWUyN2RhNGY5N2RkZTJkYTkwZjg2OTBhNCBsZWdhY3ktdHJ1bmsKKzY2MDgzIGViMTM0ZWVlMzIzMjI2MDAzNzNmNTQ4ZjY4NmIzNWJmOTBkYzA3ODQgbGVnYWN5LXRydW5rCis2NjA4NCAzNmFkNWU3ZTM5YjRmYmQ5NmNjMTk4MTRlZGM3ZTcwNmEyMjVhYTEzIHB5M2sKKzY2MDg1IDljMTc1Zjg4NjBlMjNkZjM2ZTE4YTBkMzE4MmRhMGVlYTQ4ZDA4ZmUgbGVnYWN5LXRydW5rCis2NjA4NiAyMjFkZTEzOTQ2ODExM2NmNTg5MTExZDg0NzMyNjRjMmJiMTNmODQzIHB5M2sKKzY2MDg4IDgxYTFhMTU0NTE3MjJiODE5NWY1Nzc0YTZkYzk0ZGM1NTNhZGZjMzEgbGVnYWN5LXRydW5rCis2NjA4OSA1ZGE2ZjIxY2Y4MDU5NDIxZDFkMjQ2NDg0Y2VkY2M0ZjhkZDU1YmZkIHB5M2sKKzY2MDkwIGZjMTFhOTA0ZjZjZDE3OTBhZjkyMGU4NDYxMjM5ODEzNDVlM2I5ZDcgbGVnYWN5LXRydW5rCis2NjA5MSBiZWU2ZWI3Njc3NDI3ZjgzZGE5NTY2YWI2NGE0Y2E3MGVjODBlM2ExIGxlZ2FjeS10cnVuaworNjYwOTIgNjI0YjQ0YjdjZGYyOTIxODRmZjc0MDFiODBkNjc1NTRiZGQ5MTVlZCBsZWdhY3ktdHJ1bmsKKzY2MDkzIGJlNjNlYzc0OGVlMDY0YTIwNmYzYWNjYzAyYWJiMWMxNDdhMmZiYzAgbGVnYWN5LXRydW5rCis2NjA5NCA3ZTE5NGI5Y2MwYTJiNGQxZjI0ZDBmNDljZWRmZjVjZmIwOWZiYmFlIHB5M2sKKzY2MDk1IGI0YzE0YjcwZmUwZjgxOTlhYzRiZmQxMjk2OWZiZDY2M2MwNGIzZTEgcmVsZWFzZTI1LW1haW50Cis2NjA5NyA3YjM5NTAxYjBhNzYyNDdjMDkyMDZkNzBlYjM5M2U5YjA4M2ZlYmE3IGxlZ2FjeS10cnVuaworNjYwOTggMTNmZGY5OGVhMjkwMDEzMDcyZTc2YTFlMDk3Mjg4M2M0MjBjODZhYSBsZWdhY3ktdHJ1bmsKKzY2MDk5IDE3NmM0MDlmZDc0N2U4MTJhMDY3MmRkYWE4ZGFjMDAwMWFmMDU2ZTcgbGVnYWN5LXRydW5rCis2NjEwMCA4Y2RhNjE1ZWYyMmJiNzQ4ZTBlZTM1OTQ0ODE0ZWQ5YWY5ODNhZjNkIGxlZ2FjeS10cnVuaworNjYxMDIgNWZhMGQzMWE2NzFiNzgxMmIwY2VmNGUzOTM3NjJhNjNmYmYxY2U2MCBweTNrCis2NjEwMyA1NzY0NDE1MjdkNGY3Y2MzZGI3MDY5MmQzNDQ2YTE5YTIyYjExODkxIGxlZ2FjeS10cnVuaworNjYxMDQgZWQ1OWYzYjY3YjNhZTNjMTE4NzRiODc1ZWI0YzJlMzllNjg0M2Y3YiBsZWdhY3ktdHJ1bmsKKzY2MTA1IDlkYjNmZTc4MGJmYzZhMTAyMGU4NDZjZWFmNWE4MGMwMjg4ZDJlZjAgbGVnYWN5LXRydW5rCis2NjEwNiA5MjUxNTMyMjU1NzBjM2I4ZTIyY2U1ODkxZGNjOWI3MWY0NDY5M2I4IHB5M2sKKzY2MTEwIDUxOWUwNDc1OTkxZjc2YjgxZDUzMDE1ODQ3NTYzMTAzOTU5YTZmOTUgbGVnYWN5LXRydW5rCis2NjExMSA2OTZmNWQ4NDE5ZjIwOTM5NWIzZjYyMTcyMzQ3OWVkNjUwOWM0ZWIwIHB5M2sKKzY2MTEzIDdlY2VjMWIzMGMzZjQwNTMxNzEwNWZkODM1ZDU4ZjAxNDJjNGIzZTIgcHkzaworNjYxMTQgOTg4NjYxZmZkMTAyOWNiMDM3ZjYyNGZlMjQ0OGMxMDhjZjg1YjliYSBsZWdhY3ktdHJ1bmsKKzY2MTE1IDUxZjc5NWM5NTMwZWMwYmNiNDQxNmU5YTljNmMwYWJkMzA1NWExY2EgbGVnYWN5LXRydW5rCis2NjExNiBhNWEwNzFjODBmMmQyNTI5NGUxYjQ3MjM0MTk1MDJjOTgxYjU3NDI5IHB5M2sKKzY2MTE3IDEyZmIzNjI2ZWU1OWYxOGRlZjgyN2UwNTI5NGQxMjE2MzRiMTg0ZjMgbGVnYWN5LXRydW5rCis2NjExOCAzN2E5ZjY5MGE5NGE5YWNiMzkyMzI3NTE2ZTQzMjMwNTk2Mzg1NDVhIGxlZ2FjeS10cnVuaworNjYxMTkgYjUzNjVmMzQ2NDBmMmM2NjRjMTkyMjk0ZWI2MDM1NTI5MWZjZTdhYyBsZWdhY3ktdHJ1bmsKKzY2MTIwIDY2ZTFhZmQzMzQ1ZmRiMGJiNGMxZjk3YTlkMTRkMGMxYzBjODE4ZDQgcHkzaworNjYxMjEgMTZjMDNmN2NiYzIyMWY5NDA1YzEzNTliYjJhNzNmZmQ0NGYyMjg5MiByZWxlYXNlMjUtbWFpbnQKKzY2MTIyIDMyY2U0MDJhN2UzZGYyMGMwZjVjZTUwZTkzNTQ4NzRiMjQwZGJjZWIgcHkzaworNjYxMjMgZTYwMjFhYWQyZGUyZDVlYzk5NGY2NzY2MTAyZDFlNWIxMjhlZTVlMCBsZWdhY3ktdHJ1bmsKKzY2MTI0IDY4MGIwNzZkMGMxM2EwM2YzMzRhNjc0OWZhNDQ2M2E1ZTNiMTE1MTkgcHkzaworNjYxMjYgNGZjNDgwYmUxZTRkMmM2NzhhMzkyZDQzYTM5YTQ4NzYyZjE5ZjkzNCBweTNrCis2NjEyNyBiYzU4NWI0ZDQ2MDZiNTJjM2M3ZTUxZDk2MmU1ZmYxNzhmOGM4YjZiIGxlZ2FjeS10cnVuaworNjYxMjkgOWVkMzI4N2JlZWYxOGE0YjdiYWJhMDQxMDFkYmMyMmRjM2FmZGY4ZiBweTNrCis2NjEzMCBhYmE4NTk4Yzc4NWNhNTNlMzM2MjFkMGE4YWE0YmEzNjQxNDljZjIwIHB5M2sKKzY2MTMxIDIzNmZjZjI5MzljN2Q1MjM4OTM0YzZlMGQ4MzAwNWJkMmQxZjVkMTQgcHkzaworNjYxMzIgM2I5NjA4MTE4ZjhkODdiODgxMWIzN2E0NmEwNzQ5MDk1MjQ5MWZmOCBweTNrCis2NjEzNCA4YTEwOGQ1NGVmMDNjYWExYjhkN2JhODIwNzYyZGYwYWViMzU0YjA1IGxlZ2FjeS10cnVuaworNjYxMzUgZDU2MzYyMWQ3NmRiNGY5NGU3NDVlYmM2MmI5MjE3OGVhMzNkYjJjYiBsZWdhY3ktdHJ1bmsKKzY2MTM2IGNkMTg2MzA2ZjM4NWFjOGNmYmU2MTg3OWY0ODRjYjExYmZmMDlkNTQgbGVnYWN5LXRydW5rCis2NjEzNyA4YzRmNzUwNjYxZWMzOTQ0MDQ5ZjBiZTUwNTIwZjRkMDcxODk4MWY5IGxlZ2FjeS10cnVuaworNjYxMzggNGMxNzcwYTU1YTg1ZTVkYTMzM2U3ZTRlZGUwYWUxMzA0Y2I1ODhjYyBweTNrCis2NjEzOSBjYWE0MWUxNjFiMDQxMWY0MDZjNzNlMThlODhjZDg3ZjE3NTkzYjQ5IHB5M2sKKzY2MTQwIDNiZGM0NmZhZWY0ZGE4YjA2ZDA3Mjk1Y2NmYWQ4YzA3MmM2YzEyN2MgcHkzaworNjYxNDEgNGIyOGJmNWVlMzkzYjQzYmE0OWJiOGU4NTVjOWQxNjA5MGQ2NTdkNSBsZWdhY3ktdHJ1bmsKKzY2MTQyIDk5ZWUzYjc3YmMwZGIyZjJhZTJhM2E4N2IxMDU4NDNmMDA1MDE1OTAgbGVnYWN5LXRydW5rCis2NjE0MyAxODk3NzQzYjMxNWRlMmFmNTRiYmNhNzA4YzJiYTIxNzUwMTBlZWMyIGxlZ2FjeS10cnVuaworNjYxNDQgNGRhNGY5Njc5NjcyNTc0NGZjMmQ0ODdkMmY1MjVlYzM0MzQ0YmZhZSBsZWdhY3ktdHJ1bmsKKzY2MTQ1IDM3NzlmYzlkZmU1ZjczODkwYWFhNDZlM2M3ZWYxMmU0ZTA2ZmQ5MDAgbGVnYWN5LXRydW5rCis2NjE0NiAzODg4OWNiNDUxODgxMDVkNzFmODM5YzUzNmI1NmNmNDMxYWY1NjdhIHB5M2sKKzY2MTQ3IDdhNmU2YTA0ZTI4ZDE0OTJiYTExYzA3OTNjZDg4ZTQ5ZDU5OGE5YjcgcHkzaworNjYxNDkgZDgzY2U0YjU4MWU2MTU2ZDNhN2JhZWEwMTYxZGI0YTliNGZlOTgyOCBweTNrCis2NjE1MCBkMGQ1M2RlOWQ4MmUyZjFlOTc4YzA1NTFjNDc2NWUzNzI3MjZmNTg0IGxlZ2FjeS10cnVuaworNjYxNTQgMzgxN2M5NmZkNTQwOGEwYjNmNDE2ZTdkNjMyZWZmNjhhNmQ2ODc5ZSBsZWdhY3ktdHJ1bmsKKzY2MTU1IDFjMTRjZTA4NTQxNTFlYTA0ZTE2MzFiNjZjMTk0YWFhNmFmMzVmMDAgbGVnYWN5LXRydW5rCis2NjE2MCBiYTVjNGNlMTJiYmRmMTZkNTk0ZTAyNjg0YjJmYWMxOTFjYzYxMjhlIHB5M2sKKzY2MTYxIDc1MGRhMmQxODA4OTJlYTk4YjJlMGRhZmZlMGUzYWFlYjM3NjdhMmMgcHkzaworNjYxNjIgYzdmZDBlODgxYzQ1MzAzYWQ5YTQxMjkwM2NhNjExMDgyYWVmNDE2MyBsZWdhY3ktdHJ1bmsKKzY2MTYzIDg4YzkzYTliNDEzNzNhZDFjZTJhNjg5MTFlODNmNjQ3MWE3MmJjM2UgcHkzaworNjYxNjYgM2I3NGQxNDYyZTNhMGY3ZDRkNjMyYTUwOTIyYTA4Mzg2NTI2MzIzZCBsZWdhY3ktdHJ1bmsKKzY2MTY3IGYxYWU2OWNkZDRmZmRiZmFiNjdhYzYwOGMzM2NjZmE0OTA3ZmFhNmQgbGVnYWN5LXRydW5rCis2NjE2OSBkODI2YTc1NTcxYmM5NzlmOWQwNTk3OTg3MTg4N2QyMjIyZTVkOTk5IHB5M2sKKzY2MTcwIDc4NGQyNGE1Y2U3YmFjY2Y5N2M0MzhiMzk0ZTYxOWVlMGJkMWM5MTYgcHkzaworNjYxNzEgMmQ4MGQwMGIxZWYzNjAzMzBhN2NlMzQ4NDc4ZTA2MjZmODM5YTM3YyBsZWdhY3ktdHJ1bmsKKzY2MTcyIDNiZDkwMDJlNzQxZmZjMzA2NjJiM2U4MGI5NGY5YTcxMTdjYzIxOTMgcHkzaworNjYxNzQgZTJlZGMxYzExZTUwNzc0NDI5NTI1MmYwMjg1N2EzMmNlZDY0YTI4ZiBsZWdhY3ktdHJ1bmsKKzY2MTc1IDYzNTZhNTQxNGQwMTljZmE5OWM0NDNkNGMzNDdiYjk4NGZkMjMwMTggbGVnYWN5LXRydW5rCis2NjE3NyBiZjA0M2QwZGI3ZGZjOWZhOTdhYWJiNTVkMjQ5ODIyM2Q3OGZmZDY1IGxlZ2FjeS10cnVuaworNjYxNzggNzVjNWEyYzkzNzZlOWI0NWQ2NDFjNzcxMTM4NzI1NzBlMGRmNDg0NiBweTNrCis2NjE3OSAyYTYwZjdiNDIzMjhkYjE0YTJlOTdiNDg5NTBjZWNiOGM1ZDRmYTUzIGxlZ2FjeS10cnVuaworNjYxODAgNWZkMzliODRmYzI5MmM5ZTUwNmZiZjBmNDAwOTEyNDRmMjQzNjMxMyBsZWdhY3ktdHJ1bmsKKzY2MTgxIDRjNjgzZWM0NDE1YjNjNGJmYmM3ZmU3YTgzNmI5NDljYjdiZWVhMDMgbGVnYWN5LXRydW5rCis2NjE4MiBiOWVkMTRlYjllODdiZmM2YWY3ZDM2MTlhNWI1Njc0MDg0YzBhOTJmIGxlZ2FjeS10cnVuaworNjYxODMgMGY2OTMwYTQzMzYyOGM3YjU1ZTFhMzRkODMzNmRlZmVmNGQ3YTcwZSBweTNrCis2NjE4NCAzMzgzMDhjOWNjY2JjYWY3MGIyYzMwNWZhMGViZmFkMGFiNmMxMGMwIGxlZ2FjeS10cnVuaworNjYxODUgMDZmNTRlMTFhMDhiNGFiNTAxYTEwOTdkYjdkNjE3NzQ2NTgzNGExOSBweTNrCis2NjE4NiAyMmFiMTA2ZTMxODZiNTg0OTQ2MGQxZmYzZjk2OWIyNGY3MDMzZTE0IHB5M2sKKzY2MTg3IGY4M2RjY2Y0MTdmMGRhNmQzZDA2NzVhMjVkZjdjOTQyNDc3MzU1MTggcHkzaworNjYxODggOTJhMDFmZTI0YWUwNjQxYWZlZDFhOWU0MmVmODNmZDFlODExM2RjMCBweTNrCis2NjE4OSA2MTU0NTE2YmU0OWNkYzk0ZmIzYmE5MzMxYTI4Mjc3MGEwMTMxZjhlIHB5M2sKKzY2MTkwIDE0ZmMxNjkyNmMwM2ZjODU4OTIwOTc2NmJlNjJlZGJlOTgxN2NlYjEgbGVnYWN5LXRydW5rCis2NjE5MiAwMWYyZGNlMDZmN2QxMDJmYjlkNDMyNjMzYTczNWE5NWU2MzE3YWZhIGxlZ2FjeS10cnVuaworNjYxOTMgZTZjN2I2ZmEwNzcxZTQwYjg3YjA3M2MyN2Y5ZTJiM2U2NzI5MTdlNSBweTNrCis2NjE5NCBhNTM4NjEwMTg2NWI5N2UwZTM4NzM5ODZiYjQ2OWJmZTYzMTZmMWJlIHB5M2sKKzY2MTk1IDE3N2U4YTYxYWY0NWM1MTQwZGUwNmI3NjIzMzViNjAxOGI1Y2VkZTQgcHkzaworNjYxOTYgMmI4NTVhOTQ3ZjBmNWY2MDQ0OGMxNmJjNDk1YmI4NzRmNzExZTliMSBsZWdhY3ktdHJ1bmsKKzY2MTk3IGUwYWI1YjI4NjEyNDU2Y2U3OGY5M2E2ZDRkNDlhODNlODY1NjQ2ZTMgbGVnYWN5LXRydW5rCis2NjE5OCBlN2JjZmQ3MjA4OThhYmE0MjU3OWQyYWQ5NTcyMTQ4NDY0ZTcwOTk0IHB5M2sKKzY2MTk5IDY1ZTIzNjgzYzAxMGMzZGE0NzE5YzE1OTAzNWIyZTY4ZDIxMTdjYmMgcHkzaworNjYyMDAgZTM4NDdlN2MyNGUwMzJlNGExNDc3N2E4YzhmZWZkZTE3MzZjOWQ1NSBweTNrCis2NjIwMSA5OTU3YTM2ZmMxNjdlY2NkMzczY2M2ZDkwOTFjYWFiZWNlNmM5MjU2IHB5M2sKKzY2MjAyIDViNzg0NWVmNGVmZDBkOWFiYzRhY2E1ZmY5ZjdmYjUzMzU2OTQwNTMgcHkzaworNjYyMDMgYzUzMjM0ZmY2MWIwMGY0ZGZlYTA5YWFlYzAwM2U1OTQ0ODM5ZTU3MCBweTNrCis2NjIwNCA4MTJlYTEwNWIxYjBlZDBiOWYxMTMwNTgyYWM2ZDk3MGQyZWJkOWU2IHB5M2sKKzY2MjA1IGY3MWE4OTI4YzFiN2I5NjNhNzY4YjQzMTA5NGFiN2U4ZGU2ODc1Y2IgcHkzaworNjYyMDcgMTQyNDliY2I5M2QwY2E2NWQ5YThhNGI2ZGNiMTA5NDNiNDE3YTYxYyBweTNrCis2NjIwOCBjNWJlOTQ4NGIxNGJkMDdhZjRlOGQ0NjNhYjhhN2JhMzgwMTBlOThiIHB5M2sKKzY2MjA5IDQ1YzQzODA4OTc5ZTk1NzYzNmVkM2Q5MGYxNDIxYTkwOTIwMjBlYTcgcHkzaworNjYyMTAgZGM3NzRjZTAxYzFmYTJiNTkzMjI2NWVjZWJlZjliMDlkNDdkOTFmMyBweTNrCis2NjIxMSA4MzNkM2VjZmJiZjA5MTA5NDM3YjAzNmI0Njg0ODIwNTU4NjI0NTUwIGxlZ2FjeS10cnVuaworNjYyMTIgYjI2NjU4NDc2ZDU1NTlmMDMxYjk0M2I4MmJjMDlmOWI5NjBkNmI1ZiBweTNrCis2NjIxMyAzMTY5MjM2NzczZjFiNzViMzFkZmNlYzI4NTA3NmU0ZTkxMWEwNWQzIGxlZ2FjeS10cnVuaworNjYyMTQgMmMyYmVmOGZmY2ExMzhmZGQzYjFiMWYzMTc5MGIwMTUyZmFlMDVhYiByZWxlYXNlMjUtbWFpbnQKKzY2MjE1IDVjMTBhZjhkMzNmNWNkMmRlMzJkYzE1MGMwMmUxZDE1MDk5YzVlMDggcHkzaworNjYyMTYgOTRjYzExZWM3ZWMyMDJlMzM2NDc5NWU3MjhhYWRiNjk1M2NjMGYxZSBweTNrCis2NjIxNyA1Yjc2YTNlNDVhYjNlMDFiNzlhY2VmZjRjMGQwYzNhMTJjNzYyNmNmIGxlZ2FjeS10cnVuaworNjYyMTggYWUyYzFiMjc1ZmViM2FhZGIyZTI0NDU3MjM3YjM1ZThkZjc5MmEyMiBweTNrCis2NjIxOSA0NDUyZmYxZmJjOWQ1MTM0MmMyZDVjZjNlNTFkMTk5OWM4ZjZmZmQzIGxlZ2FjeS10cnVuaworNjYyMjAgYjc1NzNlZjI0YzcxOWVjMTViZmEzNTEyMzIyZDQzMDI5NDZkMWFhMCByZWxlYXNlMjUtbWFpbnQKKzY2MjIzIDdmOGVmOTgyOTRiYzExYzM3NWNlNjJiY2ZlMzRiZWI5NmY4Y2NmODkgcHkzaworNjYyMjQgM2ZhMDY2ZDJhMzk3ZGM3MDg1NGFhMzJkODE3MjNlNTdhNjBjMjI0ZCBweTNrCis2NjIyNSA2YjA0YmM0MmJhYTViYTdhOGQ3NmUzZTI1YWRmOTc5ZjUxMDM5ZGNlIHB5M2sKKzY2MjI2IGM2MTgzYTg5ODgwZTYyODEzYjRkNGNkYjZiZjdlN2M1ZDczOTc0MjEgbGVnYWN5LXRydW5rCis2NjIyNyBmZGQ5M2JmYTZjMWJhNWU3NWI4OTBmOThmZTA3N2M5YmI0MWEwZTk0IHB5M2sKKzY2MjI4IGE2NjIwMzQzZTNkYjQ3ZjhiZTZmMjYyNDBmMTg1ZGYyOGQwNGVkZDAgcHkzaworNjYyMjkgOGFmYTc3MjNhZmE3NmFkMDdhMzgxNDg2OGY0OGRlZTdlMGY3YjU2MyBsZWdhY3ktdHJ1bmsKKzY2MjMwIGI0ODY2NDljYThiY2UyMDE3YTJhMzI4NDllYmFhN2IzZmJlMDUyNDAgcHkzaworNjYyMzEgODlhOWJjMTg1ODZhMTczMmYxYWQyMTQ4ZGU1MDc2NDJkMTZlYTI0OSBsZWdhY3ktdHJ1bmsKKzY2MjMyIGI0NTg2OGZlNDg5Y2IyMzkzZmRhMGUxNDUzMGEwYzgxNjQ5ODY2NDAgbGVnYWN5LXRydW5rCis2NjIzMyBlN2U3MGU4ODExNjBiYWIzMzk0OGNlZWUwZDdhZTlhNDEzNjljZmQ1IHB5M2sKKzY2MjM0IGE2NzdkNjhlODEwNWM5YWZkZDhhNDJlM2QyMjJiZjMzMjlmY2JiMWUgcHkzaworNjYyMzUgNDMzMjIwYTYwYThkMDM1MGY0MDZlMWIxNWYwNzEyZDliN2I2YzE1MSBsZWdhY3ktdHJ1bmsKKzY2MjM2IDk3YjlmMGJlOTM4NTI0OWYzMmI2NjYyYmZlZmYzNWFmNGRhYTI2NGUgcHkzaworNjYyMzcgZTc0MDk2OTczOGVmMWY4YWY1ZmJmOGVjODU0MDkxNDk0MjUyNTVkMCBsZWdhY3ktdHJ1bmsKKzY2MjM4IGVjZDdmNTkwZTE0MjQ3OWMxNmVlYWFlZDdiNWY3NWM4YzIzOTkzN2UgcHkzaworNjYyMzkgZGFiN2FiYjc3ZThmODU1MzJiMjdiNmM0Y2YzNjdiZTdjNzY3ZWQwZSBweTNrCis2NjI0MCBmMzI1MTdmODc2YjY3YzFjNWYxYzhmMjE0MThkOWE0NGNmMWViYWI0IGxlZ2FjeS10cnVuaworNjYyNDEgMjZiZGQ5NGE0MjkzNzc2YTA3N2RiMTQxMDU4MDg5NWQ4MDQxYWMxZSBweTNrCis2NjI0MiBjM2I4MTEyMTRjZThmYWFkMDE4NjgzMzNmMmNiNGIwYTliY2E2YTkwIHB5M2sKKzY2MjQzIDIzOGEwODlkNDJiZDYyZTA4NzZlOWMzYjA1ZGQwM2FkMjk0YWExMTIgcHkzaworNjYyNDQgZGMwNzA5YTJiNDJmNTc3MjM0YTg2MjgwZjU3ZjVjNGUyNDkwMTZlZiBsZWdhY3ktdHJ1bmsKKzY2MjQ2IDQ4ODJlNGM0MWNlM2VmZWI1YmMyZjM1M2FhOGU3ZDU5MzQwNzM2MjQgbGVnYWN5LXRydW5rCis2NjI0OCAxOTMzODI0NzkyNWZjNGNmOWNlMzE1M2MyNjcyNjFkM2UyZWFkZDQwIHB5M2sKKzY2MjQ5IDc1MWYxYjU2OTliYWRlNGU4MDY1N2E4MTE4YThkMWU4YTA5MTZiOTQgbGVnYWN5LXRydW5rCis2NjI1MCAxMmVmN2E5MmU1OWJiYjI0NWQ4YzkzMzc1MDAyMThkNDQ2MGRlNzI1IGxlZ2FjeS10cnVuaworNjYyNTUgNjYyMzM2ZDU2N2E5ZWNlNmUxYjM4YWY0MTU1YzdjMTNhNjI0YmUwNyBweTNrCis2NjI2MCA2ZTcxYjM5OGI2Y2NkZmY2ODNhYzEyMDAxMDI0ZjAwZWZiZTY0YTk2IHB5M2sKKzY2MjYxIGY4MzY4MTQyZjhkM2I0MjlmMTFjODRhYzk5MzkyZDEwM2MzMzhlYWUgcHkzaworNjYyNjIgMTVkZjI5NzA1ZTE4MmExMjc2MjlmNjQ2Y2VjZTJmNGQwMmM5Yzg2MCBsZWdhY3ktdHJ1bmsKKzY2MjYzIDRkZDU5ODkxNDM4MzQ3YzU4NDQzNmY4NThkYTQ1ZTQxMDFiNDhmMTIgcHkzaworNjYyNjQgNjcwMjhmNWIzMzIxY2MzZTk1MjNkMTU3MGUzYzE3ZjVlOWE3YzAyMCBsZWdhY3ktdHJ1bmsKKzY2MjY2IGMxYThmNmI2NDhlYTUxZjFjYTlhMmU1N2Q2MjUxYWYzYWU5ZmI5MzAgcHkzaworNjYyNjggYmIwZjc0MjhhMTUwN2RlYmE3MjJmMWFjYTk5ZWMyYjIwOTBjZTNmMCBsZWdhY3ktdHJ1bmsKKzY2MjY5IDY3NDZjNmJlZTI4NjA5M2MzMWVkYjg5MGZkYmYyMzU5NTU1NTkzMGMgcHkzaworNjYyNzAgZTI3Y2Y3ZWUyOTY4YjNmYWU5MGEzZWQxZGFkZjRlY2ZjZTJhNTkxNCBsZWdhY3ktdHJ1bmsKKzY2MjcxIGNhMWE4YWM0N2QwNDYxZDEzMmE3MzRjMzEyNWZiZmJiMGI2OTFkNDUgcHkzaworNjYyNzIgNDQ1Y2U2NTc1MTYyZWJkM2Y5OTRhZjdiMTYwMDdlMDJjOGZhMjljNSBsZWdhY3ktdHJ1bmsKKzY2MjczIDhmZmVjMzcyMDQwZTQ3YTliMjYwNzAyMTkxNzc0NWVlNzRiYTY4ZDcgcHkzaworNjYyNzQgMTc5ZjhkODlhZDE5YTZiYTRmNDRhNmVkYzlmYjVmZTFlODdmYWE0NCBweTNrCis2NjI3NSBmZGE2ODk5NzBiM2Y4MjhhNmRhMjI1M2E0YmNiYWMyYjYzNjAwNjQ3IGxlZ2FjeS10cnVuaworNjYyNzYgMDI2MjdiOTI1YTQzYzcxOTRiNTgyNGIxYjEwYWRmOWJlMWM4Yzg4MSBweTNrCis2NjI3NyBmZGMwOTQ4Yzk1Y2YxOTc5YjA1MDI2YjkwOTZhYzQ4MjE5YmE2OWZmIGxlZ2FjeS10cnVuaworNjYyNzggMTM5NTViY2QwOGJlMWE1YWFjMjU3NTgyMGJhZjk4NmEyZmUwYmY2MSBweTNrCis2NjI3OSA3N2UxYjk1ZjE0MThiMTMxZDQzYjFiZjNiNmUzYmViNWRhY2IxZmFmIHJlbGVhc2UyNS1tYWludAorNjYyODEgYzZiMDJmNzliMmJjM2EzNTYwOWNiYWY4YjIwNjEzNGNhMmJiODQwYSBsZWdhY3ktdHJ1bmsKKzY2MjgyIDJlY2I1NmU2ZTBhNmNkMTMyYWE5MTE0MGE0Mjc1MmQ3NTY1OTdlNzcgbGVnYWN5LXRydW5rCis2NjI4MyA3NTEwZDg3M2I4OGMzMDMwZTE0OTkyOWNlMjhmM2Q2OWRlZDYxMTU4IGxlZ2FjeS10cnVuaworNjYyODQgM2YyYzRjZTMyYmE0N2EyZDM4YTQxMjJmOWM4NjBlYzc4OTcxMmJhYiBsZWdhY3ktdHJ1bmsKKzY2Mjg1IDkwY2ZjNmI5MjZjNmY1NDRiNGRkNjQyOWY2N2EwMmJmYTZkZmZiMGEgcHkzaworNjYyODYgNDczM2Q4NGYzNDg4YjRkZTExZmU1MGI5MTRkMzNiMjA2NTVlNjUzOSBweTNrCis2NjI4NyA3MzUzNmE1OGFiNDI2MWQyYjViNzc2Y2ZmMjhmYmY1OTA2OTU3OTRmIHB5M2sKKzY2Mjg4IDhjZmJiMmUyNzVkOWM5MTU0YWEwZWMyYjFkNTI1NDU4ZTU4MzQ3YzggcmVsZWFzZTI1LW1haW50Cis2NjI4OSA5ODdkYjdhZjA3MDAyYTEyYzAzZWJlZjliMmEwMWQ0ZTliZTJjNjE4IHJlbGVhc2UyNS1tYWludAorNjYyOTMgNTIzZDZkN2U1ODI1YzI3YWMwNjNhNzM5M2I5ZTExNDFkMzQ3NjJhNyB0bGVlLWFzdC1vcHRpbWl6ZQorNjYyOTQgM2FmNmE3MDIwNzBiNDNhNGVhNGQ0NTViY2Y2ZTUzYjY0ZDQzZGUzNCBsZWdhY3ktdHJ1bmsKKzY2Mjk1IGExY2FlOTU1NWY1ZGY4Mjg1OWM3ZGRiNjVjZDczM2I0MzQxOWQyMjYgbGVnYWN5LXRydW5rCis2NjI5NiAyYWIwNTI5MjM3Y2IxYTUwMDA4YThjMDQ1ODA1NmI4NGI5MmQzOTZmIGxlZ2FjeS10cnVuaworNjYyOTcgMjYxMWU4YWUyMzhmZDZmMWNlNjM0NThiY2JhMTNhNWQwMjUyYjNhNiBweTNrCis2NjI5OCBkNzk0MjM4MTUwZDIyZmM0YWFmMTAzZmU2NzI0YjU3OWRjNGM5NGQwIHB5M2sKKzY2Mjk5IDA1ZTI1ZDdhMDdlMTk4N2Y1NWMxNDc2ZDhkMDg1NWExZDM4OTUyMjQgcmVsZWFzZTI1LW1haW50Cis2NjMwMCBhOTM0N2NiOGFjMzgwNjcyZGFiMjYwNDg4YzZjMTg0ZWE4NDhhN2Q1IHJlbGVhc2UyNS1tYWludAorNjYzMDEgN2IxZjhlZGU5YjUzNDNlOGNmNDY5YjZmYmQ2MDk1MTJmOGMyNmYwZCBsZWdhY3ktdHJ1bmsKKzY2MzAyIGYwODVmMzlhNmY0ZDEyMjMxZTZkNjY5ZmI4NzJjZGUwZjQ5NmMxNTUgcHkzaworNjYzMDMgMjcxZGNlMDkxN2MxMDU3NTRjMDI2MTBiMzU5YzMwMDI1YmViODExOSBweTNrCis2NjMwNCBhYTBlZjVkZTM0NWE3ODhmN2NjYWZkMjQwZTNiYmYxNDYxOGFjNzE3IGxlZ2FjeS10cnVuaworNjYzMDUgNTY4YWI1ODM3MTk0ZDg5OWUxMWZlZDAxYzI3MDVjYmMxYTk4OGE1YiBsZWdhY3ktdHJ1bmsKKzY2MzA2IGZlNTM2MmQ5MzU0MjU4ZTE5MTljOTBkMDY2OGUwNDM1MGU2ODU4MjUgbGVnYWN5LXRydW5rCis2NjMwNyBkNjFiOTU2YjBiZjY0NGMzMDlmMGRmMjg1Njc4YWNjZTI5OTlkNGFhIGxlZ2FjeS10cnVuaworNjYzMDggZGU2ZWVmMzFhYTVmNzI5OGUxYWE3YzgzZGI2NjE5ZWRhYWFlZTJiZCBweTNrCis2NjMwOSA1MDk0MWJlZmYwMzI4YjRmNmIyNjVhMDMxZGFjN2U3ODcyNjVjNmQ2IHB5M2sKKzY2MzEwIDM3YjcwY2Q0YTBmMGQxMGZmOTg4YTA3ZjA1MmRhYjViNGIwOGFmZTYgbGVnYWN5LXRydW5rCis2NjMxMSBhYzNiNjcwNDMzNjFlYTYyOTIxM2VjZjI4NTM2NjRiYWU3ZjRiZjQ1IHB5M2sKKzY2MzEzIGJmNGJjOTczZTJhYWZiMzM4ZmY3MDdhMmNiOWVlMGQ2MTgyYjA1YjkgcHkzaworNjYzMTQgNDQ3MDJlMjczNzUwNmM1MjdiZGMzYjFjNTBhMjk4OTNmMGRhNTAzZiBweTNrCis2NjMxNSBjODcxM2ZiMDVmOWU0ZTgzNDMxOGU1NGE1ZDBkNjU5MTRiYzM3MTA3IHB5M2sKKzY2MzE2IDk3M2JkYjJkYjZhYzk2ZTI3MGZjNTMyYzc2MTk4ZDNkYmQ3YmYzYTkgbGVnYWN5LXRydW5rCis2NjMxNyA0ZDE0OGJiODRhMDc3YjJhOWZhMzczNGZmNGQzZTM2YWYyZTY2NTgwIHB5M2sKKzY2MzE4IDg2YTQyZTlmNzNkYzIxOTMwMTY5MmEyN2RlNWZmYzM3ZGEyODhkMmYgcmVsZWFzZTI1LW1haW50Cis2NjMxOSAyM2I0NTJhYzFhNTBhNDlmYzQ5YzcyMDFmZTc1ZjljMDNjZWU4ZjJjIGxlZ2FjeS10cnVuaworNjYzMjAgOTY0ZGI4NzlmMTkwZTlkY2NiMWQ2ZjVkY2U3MTA3YzVkMTU0NDE2MiBweTNrCis2NjMyMSBmZjk2YTMxM2NkMWM4MzliYTMxYjM1NDIzMWVjZWRhZGY0MjA3NWE4IGxlZ2FjeS10cnVuaworNjYzMjIgM2U2ZTU2NWVlMzBhZGNiNWVjMDNhNTgwZTdmYTE5OGEyNGRhOTdlMiBweTNrCis2NjMyNiBjNDZiY2NjZjJhZjJlNDc3MjU3NDk1ZDlhZDVhNmIzNzk3MDkxNDNjIHB5M2sKKzY2MzMwIGI1MjhjYmVhNjBlMWM1MTVmMDgwMjY5ZDRhMzkzZTQwOGE2ODcxNGQgcHkzaworNjYzMzEgZjcxMjNkNDVkMGM0M2U5YWUwZTgxNmE2MDc4ZDJkMGQxNTNiMzUxZiBweTNrCis2NjMzMiA5NzQwNDBjOGYzNjk2MTEwNzQ5ZjkwMzQ5NjY3MmUzOTU3MTkwYWQ2IGxlZ2FjeS10cnVuaworNjYzMzMgZjY2NTBmMjQ3NTk4ZTJkOTg2Zjg2MjBmYmQ0M2ExN2M0YzM2ZTMxZiBweTNrCis2NjMzNCA3MDg3ZWE4MjhkZGEyZmI1OTI3MDQyYzU0OTE5NjYyYWZkNTA2NGYyIHB5M2sKKzY2MzM1IDBmNDQ1N2NmMjViMmNlYmEwOThmNTRiYjhjNzM5YTM2YWQyZTk4NzggcHkzaworNjYzMzYgNzU2NjM3YTNhYzRiYTI2MTAxNDBhMWU0M2RmMDQzMDgzZWUzNzNiMCBweTNrCis2NjMzNyAzNmIyZDY3NGZjOGM1M2ZkNDMwM2MzYzRmNGE3YTE1NWM1ZGM1YjU3IGxlZ2FjeS10cnVuaworNjYzMzggY2Q2MWQ1NGZjOGMwNjRkNzM2NzE4MTZhOTYxNDczYzZhMjliNjJkMiBweTNrCis2NjMzOSAyOTA5NDg0MmIzNzc2YTlmOGJlOWM5ODY2M2JiNGQ2MGQ2MGQ2OWY5IHB5M2sKKzY2MzQwIGE5MGIyODU0NThhYjAxN2UxZmUyNzRmMzQ0OWI2OTMzMzA3ZGNiMWUgcHkzaworNjYzNDIgMTM5ZjZiYWVmNmMyMzA4MzEzYTE0MmY3NWE2M2ExZDI0YzgzZTZjZSBweTNrCis2NjM0NCA0MjQ5ZTU4Mzk3ZWYwMWMxZjJlMmE3YzI4MGQyYTFmZWM2ZTE5YWEwIHB5M2sKKzY2MzQ3IDZmMDgyNzhiZjhiMWY1ZWE5ODdhZTU1OTFhOThiYmRjMmVhZjY5YTQgbGVnYWN5LXRydW5rCis2NjM0OCBkYzBjYWUxZTZhZGIxNTYxOTQwZGQwYjY4Nzk2ODM5MTMzYTVkMDJjIHB5M2sKKzY2MzQ5IDQ5YTkzYzAyYTZkMjEzMTdmYTUyNjFmNWQzNDViNzlkNjdlMjg0ZmQgcHkzaworNjYzNTAgNzUzYTc2YjNlZWE5MWRkMTljYTg5YjYyMWNiYmU2ZGM0Njk1MWRhMSBsZWdhY3ktdHJ1bmsKKzY2MzUxIDVjMDM4ODFjMjA3NTUxNTI1NTJmNmEyOGJhNTUyZmRlZDM1MjRiYzMgcHkzaworNjYzNTIgNzNjYzdiNjM1NWI4MTc2YTk1YjU1OTE4NTg5YmU0ZWZkNmJlM2ZjMSBsZWdhY3ktdHJ1bmsKKzY2MzU3IGRjMTlhMWI3YzVhNjM0NDgwNTM1N2M3NjhiZjVkNWJhZmZjMzk3YTEgcHkzaworNjYzNTggMmMyZTNhNTZjN2JjYzg2NzIzYzE0ZGE4YTk0MThhZDNlNDZiZjRjMSBsZWdhY3ktdHJ1bmsKKzY2MzU5IGU5MGEzZjBhOTkyOGFkM2ViNGVlN2VhYzk2MjBlNTY3N2Q3Nzk0Y2EgcHkzaworNjYzNjIgYzM3YzdkYmQ3ODgwZGIwMzQ1Y2E3ZTk3YTIyNmIxMWNiZjRjODVjZCBsZWdhY3ktdHJ1bmsKKzY2MzYzIGRjNjAyOTNiMjlkNTExOWJmNjc3Mjk5NmFlNzU0ZDEwZGIyYzlhOWUgcHkzaworNjYzNjQgOTVhYzY5ODM1OGFiYjM0ZDgwMzRlNGRmN2JlYzRmMDdlNGI1ZDg5MiBsZWdhY3ktdHJ1bmsKKzY2MzY1IDc3NTY1YmUxYjk1NzcwZDFmMjY0NDc3N2U4OGRhNGIzODY5YWY0ZGYgcHkzaworNjYzNjYgNTEzMjY2YTc1ZWMzMWUxMWUzMzc1ZGUzNjM3YzI4ZmU1MDczNjI3NSBweTNrCis2NjM2NyBmMTAwZWZjYTE0ODcxYmI4MjFhMzFhZWM4ZGQ5ZDFiMDI1YmRkZmZkIGxlZ2FjeS10cnVuaworNjYzNjggMjVmMTQxMjhhOTdjMThlNDRiZmRmNDE4NGJkOTcxOGE4NTc5NjJjYiBweTNrCis2NjM2OSAyYWI4NWMzOTJhOGRhZTAwYTVlMTcxZDhjNmJhMDk2OWUyNDdhNTBhIGxlZ2FjeS10cnVuaworNjYzNzAgZGQ5NjE0NGU2ZTgxZmE0ZTZjYzU4YWFlMDcwMzVhODk0Y2NiMWQzNCBweTNrCis2NjM3MSBmOTc3NzkyNjJiYWMxYjM1ZWRhMzAwYjZlN2ZlMjcwYWMwNzJlMTZmIHB5M2sKKzY2MzcyIGFmNDAyMzhhNjhiOTVjYTA4M2E3YmJjNTdkNDc4OTA0NjIxZjk3ZmUgcHkzaworNjYzNzMgNTg5MDczY2VlMGFlNDdhNjZhMTBiOWM1YWQwMTFlMjFlN2EyMDNmYiBweTNrCis2NjM3NCAzNDhhMzMwNDhlYmY0OGZiNTA3MjU2M2Y4NmJlNzQ0MmY2M2M3NDI3IHB5M2sKKzY2Mzc2IDE3NDc1ZWI1NTA2N2FjMWQxOTU2MDgxZGYyY2VkZjYxNTAxNDQxZmYgcHkzaworNjYzNzcgMTQ1NDQ5MTA5YTMxY2ExNmIzNGI3OWUyOTg1MDhiYWJiNDM2MWUwYiBsZWdhY3ktdHJ1bmsKKzY2Mzc4IDZhZTJkNGI1MDdhMjUyZjYxZDQzMjQwODJkY2MyMDlkZGI2Y2QyNjkgcHkzaworNjYzNzkgYTRkZjQ5MDNiMzU1NTY0ZjJhNDdlNTIxOWM0NTg3ZTNkNzU0NTg4NyBsZWdhY3ktdHJ1bmsKKzY2MzgwIGQyN2RmMDgzZDRlNjc0ZDk3MmU5NTRjNDRkNzhmNjNkNzZjZTI1YjUgcHkzaworNjYzODEgNTFmZjkzNDU2MmMyM2VjYTZkY2YyMWVjZWFmYjk3YjViYjNkYjgxOSBweTNrCis2NjM4MiA4NzUzMTMwMWJhNDhjODdlMjhjZGJkZWIxMDViYmYxZmVlNDdkYzkzIHB5M2sKKzY2MzgzIDNkYzMxODA5NjMxZmUxNzkxNWM1NjZiNDEyMjZlODJkYzZiYzNjOWIgbGVnYWN5LXRydW5rCis2NjM4NCA5NmQ2Mjc2ZDgwZTIzMjQ2YmEwMTI0MzFkMDcwMzA2MDU0ODJiNWFkIHB5M2sKKzY2Mzg2IGYyOGI5OTlhNjlmODNiNjUwMzcxZjU3Y2U0MzE5ZmIzNzRlZTc3OGEgbGVnYWN5LXRydW5rCis2NjM4NyA4OWMyYTY5N2Y3NzJmMGZiNjVmZWZlYzQwMzFjMWRlMDNhNGI2ZWU2IHB5M2sKKzY2MzkwIDBlZjdjYjM1YjIxNjcyNDY3NjY0ZmNiYzMyMzRlYTFkZTJkZTQ2NmEgbGVnYWN5LXRydW5rCis2NjM5MSA0Y2Q5N2Y4ZGU2OWUyMGE5ZTY0NWZjZThiMzZlNDI5OWEzZGM5MjdjIHB5M2sKKzY2MzkyIGMwNWY1YWJlZjc4YWQ1MjUyZTJiZWRhOGUwZDEzZTk3ZWQ5MGI3ZTggcHkzaworNjYzOTMgMjgwMzQ3ZDJmNzY1MDFlMjM5NDQ1ZGU2ZjE1Y2NiYWI1N2ZiNDQzZSBweTNrCis2NjM5NCAwZmNkNGRiMjNkZmZlYjM5YzU0YzZhMmMxNjUyMTczNzk3Y2IyMDFhIGxlZ2FjeS10cnVuaworNjY0MDQgZmYxNWU2MmEzNDliNzhiZDc4OWVhZTViMTdiZTU5NzcwMTRjNTlhYiBsZWdhY3ktdHJ1bmsKKzY2NDEyIDRjNzdkMTAxNmY2MGFmNDUyNmMzM2NiZGQzOTNhZWQ3ZWFkZTU0M2QgbGVnYWN5LXRydW5rCis2NjQxNCA3NmJjNzU3NzI3MzZmMzJlOWQzNDE4YTVmMWYzMTU3NWRhODBmM2FhIGxlZ2FjeS10cnVuaworNjY0MTUgMzgxZWNmNDZkZmFlNDRiODNlM2I4ZGI0ZjEwY2RiNGEwZmZmNDFmYSBsZWdhY3ktdHJ1bmsKKzY2NDE2IDFlYmIyYThjYzA2Yzk0NDcxZDcyYjU0NzZjMjA1MGM0ZDExNWExYWEgbGVnYWN5LXRydW5rCis2NjQxOSA0ZjdkZTFjYTkyZmY4MDY3MWVhMjJhNTgzYjBiOWE5Y2UyNjE0ODM1IGxlZ2FjeS10cnVuaworNjY0MjIgNzM4YmE4MzE5ZjQ5MjA0ZTQ5NjE5Y2I1ZWM5YTU3M2Y3YjYxNWY1MSBsZWdhY3ktdHJ1bmsKKzY2NDI0IGM4ZDQ0NmVhOTZkYWJkM2JiNGRkNzY2NTdlNmQ5MmFlMTAyOWNlYjYgbGVnYWN5LXRydW5rCis2NjQyNSAwOTMyYjliYWE3YTQ1OGYzNWNkNzFmZjdlZjcwYWY5Y2Y5ODFjMTczIGxlZ2FjeS10cnVuaworNjY0MjYgYmIzZDFiZDFlMjkzM2U3ZTExZWJkZGI5YzliMWZiYjIwM2Y5NzBhNCBsZWdhY3ktdHJ1bmsKKzY2NDI3IGU3YzI4MDBiMjNiZjgyYjU2OTM5YzNjYmRkOWY3M2ExMGFlMjEzMDQgbGVnYWN5LXRydW5rCis2NjQyOCA0MTUyNGY5ZTJhMmY5ZmI4NTljOTdhM2MxZGQxM2E1NTkyODBmNmQyIGxlZ2FjeS10cnVuaworNjY0MjkgNWNlMDE0MzhiYWFhNTk1Y2Y5MTUyMTkyYmVkZGQ2MDU1NzBmMDZhMCBsZWdhY3ktdHJ1bmsKKzY2NDMwIDU5NmExYWQ4ZmViNjFiMjUyMzdjOWY3ZDIyNmI3ODYxY2EyZTkwM2EgbGVnYWN5LXRydW5rCis2NjQzMSA3NDI2NzFjNWQ3Yzk1YzY1YWJkM2EwZTNjZDIyYjdhN2NjNGUyMDhkIGxlZ2FjeS10cnVuaworNjY0MzIgYzBkYTdmMjM2MWVjZGMzODVmOWZiMmQyMWQ5NTk1MzdkNDc3MTcwZCBsZWdhY3ktdHJ1bmsKKzY2NDMzIDA1MTM2MjkzZjBjOGJmZDVjZDI4MzU0NjI5ZGU1YzJjZjdlYTIyMWMgbGVnYWN5LXRydW5rCis2NjQzNCBjM2YwZjk3ODM5ZTM4Mjc3ZWY1Yzk1MTJiYjlmY2IwZjFhZDU2YjA5IGxlZ2FjeS10cnVuaworNjY0MzUgNTJlZjk1YmRkODAxZTQ0YmU0ZmZiYTJiNTUwN2FhZWM3ZWE0N2MyNSBsZWdhY3ktdHJ1bmsKKzY2NDM2IDA2ZjMyM2FhNzJjNDk1MDc4MGJlMTY0Y2M4ZGM4NWM5ZWI1MDhhNDQgbGVnYWN5LXRydW5rCis2NjQzNyA2NzA5ZmY4Mjg3ZDk4Nzg0YWE0MWJkOTY2NmJiYmYxZDg1ZTAxNjgwIHB5M2sKKzY2NDM5IDY2NjVlYmZmNjRmMWYyYzIwNjYxMmMwODg2MWY1N2RmMmRjODdiMzggbGVnYWN5LXRydW5rCis2NjQ0MCAxZWFkZGQyMzg4Y2MyNzQ3MWZiNDAyM2RiMDdmMThjMzc0MDNjZjM5IHB5M2sKKzY2NDQxIDFhZjE2OTcwZGFjM2ZkNDU2NWRlZmEyMzI4OTExYzgyYjc2YTU0YmMgbGVnYWN5LXRydW5rCis2NjQ0MiBkNDA2OTgzZWQ5Mjc5Y2NjNjU5Yzg2ZmIyY2ExZDBiMGY0Nzg2NjBhIHB5M2sKKzY2NDQ2IDhmODg2YWNhYTE0MmNjYWE5ZDliNjIyODg2MjBjYjFmYmI0NTlkODcgcHkzaworNjY0NDcgZmViN2JkZTFhNGQ5MzAxMTcwODZhMjg1NmJmYzBmYTk2NjJkZjdmOSBsZWdhY3ktdHJ1bmsKKzY2NDQ4IGM4N2I4NGRiMjQ0Y2Y2MzBlMzAzNzA5NzM2Y2Q4ZGZmMTdhMmE1MjEgcHkzaworNjY0NDkgMDk1ZGU1YjkyOWRkYmI1NjRkZjk1NTQ5NzVlMTAyZjk5YmEwZTljNiBweTNrCis2NjQ1MCA3NWIwZGNiYzNjYzcxODE1ODg5MDMzMmVhZTRjZTczNDU0ZGVmMjE3IGxlZ2FjeS10cnVuaworNjY0NTEgM2IwNDhlMzFkZDllNzdhYmRmNmJkNTk4OTJkZDExODdkMjVjNjc1MSBweTNrCis2NjQ1MiA1OWRiNGIzYTA2YjAxYjUyZjc4YzRlNzQ5YmY4MjM3YWM0N2RlZDRkIGxlZ2FjeS10cnVuaworNjY0NTMgNTZkNWMwM2I5MmI2Y2VmMTU5ZWFmN2ZlM2U0MDgyZWE0OTJhYTY4ZiBsZWdhY3ktdHJ1bmsKKzY2NDU0IDQ3ZGI2MmJmNmFhNzBkOGU4ZjVhYmY5ZTBkYTVhYTlkNmU5OTk3YmMgcHkzaworNjY0NTYgNjI3MDBiYjdmN2I1OTA5ZWE3OGNiMDcyOWY1OTY2NGEyOTI1NTIyMSBweTNrCis2NjQ1NyAyYzViYjQ2MzRkMmQ5ZWM2YTc3NzY1MjZlMWQ1ZjU5YTQwYjUwY2MyIGxlZ2FjeS10cnVuaworNjY0NTggZjk5ODAwMTY2YzJiNzNlMzNiNzIyYmZkMzVhZmQ3ODVlMDAzMzUxZCBsZWdhY3ktdHJ1bmsKKzY2NDU5IGNkZGY1ZDY0NzZjZjEyN2I4OTZmNDIzNjU0NjY4YWJmYTkzZTA3ODEgbGVnYWN5LXRydW5rCis2NjQ2MCBlOTY5MjMyMDU0YTJjMzhiNzI1ZmZjYmFiMmI0OGZjMDQyZmNlZTkzIGxlZ2FjeS10cnVuaworNjY0NjEgNjkyOWI3NDI3MmM0MGVmNTMyM2NiNTY4MTMwZTJiZmVjMjNjYWEwZSBsZWdhY3ktdHJ1bmsKKzY2NDYyIDYyZTVmNzNkMDViNDlmNDI3ZDZiYmY1YTg1MThiZmE0NTY5MzJkMDQgcHkzaworNjY0NjMgNjRiZTlmOTA4NjRlMTRiMzM1YjY0ZmQxZTBkNWM1MzM5NTE0NDM5MSBsZWdhY3ktdHJ1bmsKKzY2NDY0IDI2MDU0NjViYmEzYzE4YTFhYjMwZTZiYmE2YWZlZmMzZTMxNDcwNzYgcHkzaworNjY0NjUgYTNmMGQ2NjdlMmNlNTU3Yjc4M2UwNzgwODE3ZGI5NzZmYTA1YjEzMSBsZWdhY3ktdHJ1bmsKKzY2NDY2IDNhODJlNTAyNDc0MzI4MDA1YTRkYjY2NGVjYTk4ZWExZjExYWQ1YTYgbGVnYWN5LXRydW5rCis2NjQ2NyBhYWViZGM0YzQ2OTAzYjMwZjI1ODU3ODZmMzc5YzY4MDZkMzBmYzQ1IGxlZ2FjeS10cnVuaworNjY0NjggMDJhNmNjNWQ3YTIyNzZlMTkyMzkwMDUyODJjNGJkODY5ZTE5NmQ1YiBsZWdhY3ktdHJ1bmsKKzY2NDY5IGJkYjY2MGRjYTc0ZDZhZjRjMjZmNjI3OTdmMzQyNWQyZDYwMjIxM2EgcHkzaworNjY0NzIgZjk3NGUwZmE1NGNhYTc3ZDM2MTI5ZTVhNGZiYTdiYTkyZTFkOGQzOCBweTNrCis2NjQ3MyAxMTY3YWU2NDVlOGMwMjc1NDNhYTE5YjRkZDg2Njk1ZjVlNmI2NGIwIGxlZ2FjeS10cnVuaworNjY0NzQgMjBkZjA2ZTFiMjY2OWY1OTI4ZWQ2ZjViNzBlMjhmODhhMTU1MDg5NiBweTNrCis2NjQ3NSA2NzA0M2ZiOGFlYTVjMGU4MTA1MDVmYWNmMjMzYWI0ZjZjOWU4NTQ4IHB5M2sKKzY2NDc2IDMzMDIwNDViYWU5Nzg5NjExYmUwNDVhMDc3N2JmNjgxNDU3ZDY5YjggcHkzaworNjY0ODAgYmIyYTBhMzdmYWE5N2JkYmVjYmRlZjkyMTIyY2QxNGM1MDI5YTE2YiBweTNrCis2NjQ4MyBkMTdjYzRkMTc2NmNhMTNhZjU0ZTJhNjg0M2M0OGYwYWE1ZjQyNzBkIGxlZ2FjeS10cnVuaworNjY0ODQgNDQ1M2UyYzZhYTdmZDJlNTRhOTY2ZDhiODU4NzgyMWMxOWQyM2I1MyBsZWdhY3ktdHJ1bmsKKzY2NDg1IDk3ZjI4ZGZhMTU0OWIzYzFkMDk2YTNlMDA2MDNlMmY4YmM2NzJlYmQgbGVnYWN5LXRydW5rCis2NjQ4NyBhMWMxOWYyNjNmNzk1NWZmMWY3YTBkZTIxOGRlZDU2NTJiNDRlOTJkIGxlZ2FjeS10cnVuaworNjY0ODggNWQyZjE2MTE5NDU5NGIxYWE4NTczMTAzZTQxNTM3NjZmYmU5OGI1NyBsZWdhY3ktdHJ1bmsKKzY2NDg5IDJmOWIwNmY5NWM5YTZhN2QxZmUwOTU2OTU3NDAzMGQ5NmRhMTcxMDUgbGVnYWN5LXRydW5rCis2NjQ5MCA3YjE2ODYwMmY0NGRiMmFmYzRiZGNiOGQxMmJkNmVlMGVkZWZjYmJkIGxlZ2FjeS10cnVuaworNjY0OTEgZTI0MjllMjMyNTc2YTY2NmZkMmY1NDNkOTU2ZmRkMjk5OWMwOTY3MyBsZWdhY3ktdHJ1bmsKKzY2NDkzIDMwZWYyMmE4MDI2N2MzZDY5ODI1MzBhYjZmZTg4MjFjYzEyMDRjNWIgcHkzaworNjY0OTQgYWY0YzRjZjNlMDFlMDkzMmU2NDQwYTI5NWZjZDBlNWE5YzdhM2JjYyBweTNrCis2NjQ5NiAyNjA2ZDlhMDBjN2I2MjIwMGY0NDA2NWFlZDQwOWNjMGEyYjc2ZjNmIGxlZ2FjeS10cnVuaworNjY0OTcgNTg4MTg4NDYzNjNiYjVlMGM4MWFkNjJkNmFmNDY5ZTU1ZGFjNWEzMSByZWxlYXNlMjUtbWFpbnQKKzY2NDk4IGZlMzU1YmQwNWM0NzQzODI1NDZjZjg0N2FiNTc4NjhlYzVlOWM3YmEgbGVnYWN5LXRydW5rCis2NjQ5OSA1MDdlZGU5YzdmN2Y0NzVkZmFmYmQ0YTUyYzIyZDc2N2QxMGEyYmMwIHB5M2sKKzY2NTAwIDVkNjFjNjU0ODQ5Nzk1MDE3ZGNhNGMwOTY1Y2Y5MDg3YTY4OTRjMTAgcHkzaworNjY1MDEgNDI4YjA1M2JiMDk4MzkzOTMzMDE4YjcyMTU5NDEzZDBmYjBhZTM4YyBweTNrCis2NjUwMiBjNjcwM2Y0OTg5YjM3MzBmNDM5NWZhODBiNzI1MTAwNDdlMGFhYzM4IGxlZ2FjeS10cnVuaworNjY1MDMgMGFkOGNlYTYwYmZhMGI2MDQzODI1YTZiZTMzOTc2ZjRmODU0Y2RhYSBweTNrCis2NjUwNCA1MjU3OTIwOTdjNjMwOGE3OGE3NmI3YjVmNTZiYmQ4YTI0YzI2YWNmIGxlZ2FjeS10cnVuaworNjY1MDUgNTU0OWI1ZGY4YmNiZGVhNzIxZWQxZTljZTcxOTU0YzI2MDNmNjZjYyBsZWdhY3ktdHJ1bmsKKzY2NTA2IDBlZWMzNDc1NTA0MTRlZWZhM2I1ZjUyYTBlMWI1MzdkZjlmYzM3NDkgbGVnYWN5LXRydW5rCis2NjUwMyA0OWI5Yjk5NjVmMzEyYmExNWZhN2E5MmJkNGRmNWMyYzdjMzgzODdkIHB5M2sKKzY2NTA4IDc2M2U0Yjg0ODgxY2MxYjkyMDc4YmI4MDIyYjgyZWExYzY1MGQ3MzEgbGVnYWN5LXRydW5rCis2NjUwOSA2NzAwZmQ4MTI1YmE1ZTBkMWM5NjgxNDFiNTEyYmE1ZDRlYmJiNTUwIHB5M2sKKzY2NTEwIDlmZTQ2N2ZmMGMwODYzNGIzY2RmMjFjOWE5NjYyNGNhOTQ3NmVhMjUgbGVnYWN5LXRydW5rCis2NjUxMiA1YTcxYTYwNjhlMzAzNTg0NjI3Yjc2NWNhZmUyZTQyYmFjYmZiY2Q3IGxlZ2FjeS10cnVuaworNjY1MTMgYzQ1YTY5NjViYzQ2Nzc3ZTQwMTdiOTc1MjJjZGU3Y2RiMTRlOWIzYyBsZWdhY3ktdHJ1bmsKKzY2NTE0IDYyNjAzMjU5NzcxMjAzMTAxMjUwZmVhYmUzYWJiOWY1YmE4MTNjZmEgbGVnYWN5LXRydW5rCis2NjUxNSAxNWFjNDk2MDJhMDY0OGIxYjU2ZjkxMjIxYzVmMjZkZWM3YWNmNzJhIHB5M2sKKzY2NTE2IDU3OGFkNDkxZDRhNDg2YmQwMDE3ZDU4NmQxZjA1YzM4NjUwOTkyMmUgbGVnYWN5LXRydW5rCis2NjUxNyBjMTM3MjkzMmFlODdjYzk1NTU3MGUyNDk3MDgyY2Y2NmMxMWEwNmI2IHB5M2sKKzY2NTE4IGYzZTVhODUzNDIwNjI5MzYzMDk5ZTczNmI1Y2IyMTA1MzRjNzU3Y2MgcHkzaworNjY1MjAgYjZhODAzMTg4NDU0ZDc2MzJlYzIzYTI0YjdmNzAzZWJhODQyYWE1YiBweTNrCis2NjUyMSBjYzlkOWQ5NjZiMWE0ZmY1MDJlZjRmNjhhZTBmODBkZmVlNTAxMzUyIHRsZWUtYXN0LW9wdGltaXplCis2NjUyMiBkNmI4ZDQ2YTM0MzFiYWM0YmE0NjBjMzRiOGRmZDc2YTZmYjE5Njk0IHB5M2sKKzY2NTIzIDUwYjFlNTU3NTZhNTA3YzUxYWRlMGU4YWJiMzZhZjc4N2RlNjcwZWQgbGVnYWN5LXRydW5rCis2NjUyNCA0ZjlhOTcxNDBmMGVmYjlhZWM4YTM0M2Y5N2I1ZWI0NDc2YTUwMDg2IGxlZ2FjeS10cnVuaworNjY1MjUgNjFjNjhlMmM1NzFiMDdkY2U1YTY2MDQzNjViNzNkM2ZmMDhiM2U4NyBsZWdhY3ktdHJ1bmsKKzY2NTI2IDg1YjQ4MGVmMjYzNWM2N2E5MjQyNDA5NzIzNjVlMTE1MjBhZDZhMjggbGVnYWN5LXRydW5rCis2NjUyNyA4YjE3ZjkyYmJjNGRiNjY0MzU2MjRjZDBkNWNlZDUxYzdmNzVhNGY2IHB5M2sKKzY2NTI4IDZiOWYyY2U1ZmU5MjJlODZjMDIwNjQ2YTU2ODRkMzE4ZmYxYmVkODUgcHkzaworNjY1MjkgNzAxZGI1ZTk2N2I1ZGIxMmYyMDgzMzQ2MmIzMmRlZGYzMzNhZDY2ZCBsZWdhY3ktdHJ1bmsKKzY2NTMwIGI4NDE1NTJhOWE3M2I5NDFlNDFhMDBmMzEyYTQwYTJjMzkwN2Y4ZmEgbGVnYWN5LXRydW5rCis2NjUzMSBmNzFmNjRhZTY1MTk2NmU1MDRlMmJmNWQwMzY4N2E3OGJmMjNmNWE2IHB5M2sKKzY2NTMyIGU1MmEzNTk1ZGZkYmM1MDZlN2JkYTM3NDhkM2U3MDIyYWYwMmEwZTkgbGVnYWN5LXRydW5rCis2NjUzMyAxNzc3NmRmNmZkYTJjYzMwNDE2MjMzZjNkM2ZlMzkzYmE3YjMxMjk0IHB5M2sKKzY2NTM0IGMyZTJlOTI2MmI5OWIyMDhjZmI2ZTljOWI1NDI3YTFmNjE0N2VmNTkgcHkzaworNjY1MzUgOTIzZmI0NThiZDBjNjllZjliMTE3ODY5YWQ2ZTRlYjUyZTA1YTBhMCBsZWdhY3ktdHJ1bmsKKzY2NTM4IDM4NmEwM2VjMWZmMDE0ZGY3YjNlZGNjY2ZlZDM0ZjQ4ZmYzYjM4ODIgbGVnYWN5LXRydW5rCis2NjUzOSA1NWNiM2UxMWJkZjc0ZTY2MjdmYzhlY2I4OWI5NzZhOTgyNzZjZTUxIGxlZ2FjeS10cnVuaworNjY1NDAgYzIwMDVjMWNmNmNkZThhNTVmNTZhMTRiZTlkMjUyZjU0YmZhY2Q4ZiBweTNrCis2NjU0MSA0OTkyZmQ0OWE5ODVkNjc4Y2M0ZTBiODFhOTkwNTNlZWZjNjg5ODQ0IHB5M2sKKzY2NTQyIDI1ZjgwOTEyM2RmNjA2M2Y2NjVjNTYxYmJjNjY1NGM1MjUwYmFlOWYgbGVnYWN5LXRydW5rCis2NjU0MyBkMWFiODNhZDVlMmI5MzRmMzQwNDU0NDc3ZWQ4NzVlNmMyNmUxOWQyIHB5M2sKKzY2NTQ0IDZiNjc5Y2EyNDM2OWZhMWQyMzRkMjFhMTJjNzYxOTk3MmMxMmNiM2EgbGVnYWN5LXRydW5rCis2NjU0NSBmMGMyNWU2YmJhZDU4MGI3Y2FmNjA1ZTkzOWM3OWUwODhiNWE3ZWNmIHB5M2sKKzY2NTQ2IDM5YTk0NzE5NTQ1NGRjMjA4YmMxMmE5MzJlODI0YTdmZTQzYjVjNzcgbGVnYWN5LXRydW5rCis2NjU0NyBjMTc3NzAwNzRhNGJlOTU0OTE3OWFlYzI2MzBlOGMxYjRmNGQ0ZTA5IHJlbGVhc2UyNS1tYWludAorNjY1NTAgNTQ2MTNiYTFkY2FkZjUwMzdhNzYzNDdlYzAzNDAzYTM4OTBlZjcwYiBweTNrCis2NjU1MSA2YWUyOGE1MDNjOWQxNmE3ZGIyZGNiOTllZTQzMGY3ZTQ0ZmMyNGZiIHB5M2sKKzY2NTUyIGYzZGE1NmUzZmNlNGIxNDJmMjM2MWE4YWZiOTdiMWM0YmJjMmQzMGUgbGVnYWN5LXRydW5rCis2NjU1MyA5MjJiOWUwM2IyNjBlYzU5MmYxNjRmOTAwNzZmZjczODZkZjFhNDAxIGxlZ2FjeS10cnVuaworNjY1NTQgZmU2NjBlOGM2M2JhNjkwY2Q1OGI5MTUzNzFkMzAzNWJhM2RlOGUyMiBsZWdhY3ktdHJ1bmsKKzY2NTU1IDA2Y2YzNWU2ZTMwOGVhYmZhZWE4M2NhMTMwNWU0YTI3YzkzMmE2ZTUgcHkzaworNjY1NTYgZTg2ZWQxMTM1MzVjZWYwYThiODhiNDg3YmNiMTFhMDc0MzY4MGRlZiBweTNrCis2NjU1NyBlZjc1ZWIzZGM0OGU4MjAyZGU5MzkyMzZjNWJlNWYyMTIzZmI4NzdiIGxlZ2FjeS10cnVuaworNjY1NTggMjdjMWJhNzE4NmQ4ZjcyOWM0N2ZjNmE2YzA0YzhhYWM3MjM0MTIwZSBweTNrCis2NjU1OSBkZTkwYTcyZTNlMjM0MzhhOWFlZTNiNjZkZjFmZTQ3ODlmNmJlNjIzIHB5M2sKKzY2NTYwIDFkNWMzYmNmMzVhZDM5ODZjMDhiYmNmNWJmOWNkZWIxNGVlMWQ0NmYgcHkzaworNjY1NjEgMDE4YmNkNjRjMzNlNGY2OGM3MDJjNGI1NzljZDdlZWZmZWU5N2E1YSBsZWdhY3ktdHJ1bmsKKzY2NTYyIDBkZTVhMzg4YTI2MTgwNGU3N2ZhMDY3ZDU4ZmEzYWQ5MzE4ZjI3OWYgcHkzaworNjY1NjMgNjQ2MTZlNWQ4MGI0YjI2NGI5YTljZjkwODM1ZDI4ZjE4YjI5OTVkYSBweTNrCis2NjU2NCBmNmRmNTY3Y2NkNjI4OWE0ZDYwNWVjOTJkZmExM2M4NGUyN2ZmN2RkIGxlZ2FjeS10cnVuaworNjY1NjUgYmU4OWQyYTM0YjJmODlhMzE3YmFmY2UwNGY2YjQ4NDUzODA3NmIxZiBweTNrCis2NjU2NiBhNWYyNmIzYTI2ZmQ5ZWU4ZTU0Y2FjMTUzYjM3MjhhNTA1MTNkMGFiIGxlZ2FjeS10cnVuaworNjY1NjcgZWRmOGE2YzY5MDI4Yjc3NTg5NWExYWVhOGU3YTc3ZmEzZDg4OWE2NyBweTNrCis2NjU2OCBmM2ViMDAwNDg3YjkzNjJjMmZjZjU0M2UzOTk5NjdkNDdhODVjNDgzIGxlZ2FjeS10cnVuaworNjY1NjkgZjg0MzBiNjg3NmZiMzZjZmE5MGNhZTZiYWJjNDI0NzY3ZWZlMmUyZCBsZWdhY3ktdHJ1bmsKKzY2NTcwIGJiZTJlMzU4NTJjZDRkOGEwMmM3Y2E3MjJmZjViZDkzODUyN2VlZTMgcHkzaworNjY1NzcgYjNjMjlkYTkzNGY1ZWRmODhmNmRlMGFkZmQzOTBmNjYzNzNhMTBiNSBweTNrCis2NjU4MCAyNWRhMDdmZTM2MzBjMDFiODk5MThmMTBjNzM3OTNlODkwYTc5ODQwIGxlZ2FjeS10cnVuaworNjY2MTAgZGI5OTllYjJiYmRjNzU5ZDJiNDk3MjdjYjc1MWIwMzI0Mzg1MTk5ZiBsZWdhY3ktdHJ1bmsKKzY2NjExIDYwNmFiMjVkZGVmMWIwYmUyZmRlZTMxZDU4YzY5MGUzZWMyOThmZGEgbGVnYWN5LXRydW5rCis2NjYxMiAwMWZjMDgzZTFkZGQzNTEwMWMyZTIzNjA1NjM0NmRiNmVhMjdmNWU1IHJlbGVhc2UyNS1tYWludAorNjY2MTMgYTg3MGMzYzZhOWFkMjQxMzU4OTJjNzdlOWZhNTgwNzNlZjZjNzU5NCBweTNrCis2NjYxNCAxMjBiNGJjZjA5ZmY3MjBlNjMyZjRlZGU1ZDc5MWU5NGY5ZWU1OGJjIGxlZ2FjeS10cnVuaworNjY2MTUgYTAwNjI2ZjJkNzA1NzkyMzVhZDAxMDQyZjEzODEwOTE0OTJiMTM4YSBweTNrCis2NjYxNiA5ZDFjNTMxMTY4Y2FkN2ExZTg5NWY2NzBiODgyYTkyMWM4YzYyNjg0IGxlZ2FjeS10cnVuaworNjY2MTcgMDkxYTZjNTIyN2E5NDc1YmEzYWU2YTNmMjExMzNkNDhmMDZiM2Y1OSBweTNrCis2NjYxOCBhOTFlNzhhYjRkN2QyMDMxMzZmODZlOGYwYzlhZWMzM2Y4ZTAwZDBiIGxlZ2FjeS10cnVuaworNjY2MTkgM2ZlYmNiZmQzNjAxYzQyM2EzMWIyNzA3NDVhZmUyYWUyZGNiNjE5OSByZWxlYXNlMjUtbWFpbnQKKzY2NjIwIDVlNWIxNWI2OTJlMTQxN2Y2YTk4Y2ZiMjkwMGMxZWY4NTBmNjEzOTQgbGVnYWN5LXRydW5rCis2NjYyMSBhY2M0NGI3ZmFkZTA5YTZmZTcyYzA5NDE0ZjU4MWU0NDEwN2EwOGJkIHB5M2sKKzY2NjIyIGRiYWVjMjQ5ZDU2ZjEyYjVmODk2OWE0ZTM0YmNiNWY4M2RiMWZkNTMgcHkzaworNjY2MjMgNzhhMjFiMjc4ZTFiOWI3NGE4MmRlZjQxYmY1YTUzYzQ0MDZkYzJlMCBweTNrCis2NjYyNCBmMzIzZmE0ZTQ4ZDc5YTI4NzE0MTI2ZmY3NDM4ZDI4Nzg4MDJlOTAwIGxlZ2FjeS10cnVuaworNjY2MjUgYjU1MGRlNDI4NTFhODVjMTA2NmMwZGM3ZjdmZmE0MTVhMjQyMzQ1ZSBsZWdhY3ktdHJ1bmsKKzY2NjI2IGIyMzJlMmU5ZTc5MzdlMzQ1NzMyMjkzNmY5MTllMWQwZmE2M2RjNjIgcmVsZWFzZTI1LW1haW50Cis2NjYyNyAwNmViZjEyYmZhNjJjYTViOWVjYTJlN2FkNzBkNjU4MjhhOWMzZTJkIHJlbGVhc2UyNS1tYWludAorNjY2MjggNGVlZGU1ZTQ4YWU2ODVhYzdiZDk1OTEyZDI3YjY3YTRhMTMwYTVjZiBsZWdhY3ktdHJ1bmsKKzY2NjI5IGUxM2MwM2UwY2UwYmI0YzkyM2QyNmZkNzNmNTY2NzI1MDBmZDIxYjcgbGVnYWN5LXRydW5rCis2NjYzMCBiYmFkYjk2MGZkNWMxYTk3NjhmMDlkOWJiNzFlNzAyN2IxNmMyNTUwIHB5M2sKKzY2NjMxIDMwNGJlYTg3MzFkMjFhNGUwOGViZGNjZjYwNWFlZmZjYmI1MjMxMWMgbGVnYWN5LXRydW5rCis2NjYzMiBlMGMwNmNhZWZiZmYzM2ZhNDcwNmNjZTU1ZTM4MGYxNTAyYWY2YzBhIHJlbGVhc2UyNS1tYWludAorNjY2MzMgNjQwM2YxZWRlY2MxOWQyNGM0ZWJhZWI2MTc1YzQ5ZTEyMWE5MmQzZSBweTNrCis2NjYzNCBlYjM1ZmNiYTY1OGVlMjViMzEwYmE0YWQ5MjQ0M2VjNjY5MGIzN2I5IGxlZ2FjeS10cnVuaworNjY2NDMgMDc1MDQyYzc3MjRjNzRhNDliNmIzZTA0ZmQxNDQ1YWM4NzRkZGZjMyBsZWdhY3ktdHJ1bmsKKzY2NjQ1IGRlNzVmYjRlODAwY2VmOTNiOTIzNDUzMzZlMDA2OGFlZjUxZDBjMWMgbGVnYWN5LXRydW5rCis2NjY1MyBjZGM3ZjYzNjc3OGI2OTIzZDBmZjcxZTk1ZjMyNjAwNmVmZTFkNmI1IGxlZ2FjeS10cnVuaworNjY2NTQgOGExZGJlNWMyYjc0NWMxODU1YmE0MDE2MzhkOGRiZmI1ZjI0ZjkxNCBsZWdhY3ktdHJ1bmsKKzY2NjU1IDUyODQ3NjhjMjY0YzU5ZDU1MDM0YWM1MTFhNmQwYmM4NjczZDdmN2EgcHkzaworNjY2NTYgZDcwYmNmM2I2MjhkN2EyZWQ2MTliZjkzZjRlYjkzOTA1YzBiYjAxZSBweTNrCis2NjY1NyAwNjk5YTcxMmEzZGJkZDhjNTJmMThkYWQzMDY5MTI2MTMyMTJhMDBmIGxlZ2FjeS10cnVuaworNjY2NTggNzY1MWI5NDEzYzg1NGNiNjBkMGMxMDNlMzFkNzM0YTkxMjFhMWJjMiBweTNrCis2NjY1OSA3YTNmNzUyYWRmMWNmODk0NTJiODgzOWM2NDMxZGQ5MjUxN2IwYWJjIHB5M2sKKzY2NjYwIDUzMGM4MTQxOGMyODM4Y2M4MjJhOTkwYTJhM2UzZWFiYzMzZjljNzMgbGVnYWN5LXRydW5rCis2NjY2MSAyY2E0MTU5YmJlNjU0MDY2MTczYTkyNTAxZjllMjVkNDZjOTNiNzQwIGxlZ2FjeS10cnVuaworNjY2NjIgY2UyZmNhNDhhY2U0MzI2NjgxODU0NjMxM2M5YTFkNTNmYTg2ZjM0MSBsZWdhY3ktdHJ1bmsKKzY2NjYzIDc1NWYzNGFiNDM4YjE5MTY3YzM3MTBkNWIyNDhhNmUzNGMyNTU5YzIgbGVnYWN5LXRydW5rCis2NjY2NCAyMzFmM2EyNWNjZjViMmRlODhlZGE5MGYyNGU2MDlkYjkwNDMwMmRiIGxlZ2FjeS10cnVuaworNjY2NjUgZGEwNzM0ODRmNWFjMzA2YzU4YmNjODE5NWQ0ZDA2N2ZmNGI0N2UzYSBsZWdhY3ktdHJ1bmsKKzY2NjY2IDQ4NDRjYWMwODY1MjVkMmE5ODVmOTY5MDJhN2I4MmE2YWU5OGY3YzEgcHkzaworNjY2NjcgNmNjNWFjZTlmNTEzZTAwODAwZTEwMWE3ODI1NmU3ZGU5MjViMDFlYyBsZWdhY3ktdHJ1bmsKKzY2NjY4IGVjNDJmNzk4ZjU5NzM2NDQwYTAzMWZlNjJmMmQzMzcyZDU4MmJlNjcgcHkzaworNjY2NjkgNTZhM2ZhNDQ5YzZjNmMxMzU2OWY4YzRhZDNiOTlkMzA2N2QwMTdhNyBweTNrCis2NjY3MCA1M2FjZTM5N2I5YzViYjViZjUyM2MyOGQ5MmIzMTBlYWQ3ODZkOTMwIGxlZ2FjeS10cnVuaworNjY2NzEgZGJjNmVkYmE3MGE3Yjc2NGFhNzQ2OWMyMjIzNmM4NTZkYWRkYjFlZCBmaXgtdGVzdC1mdHBsaWIKKzY2NjcyIGNjNjliOTMxYTYwODJkOWQyNDI3NDkyOWJlZTI0MTkwMDAxYTk3MzYgZml4LXRlc3QtZnRwbGliCis2NjY3MyA1YTlhODNjYWU4ZjFiMmFiOWZmNzM1MjRjNTc2N2NlYTFjNmE5NDZlIGxlZ2FjeS10cnVuaworNjY2NzUgYzVmNWQ2YTMxM2U5OTczZGQ0ZjA5NGNmY2U5MTQ3MDkwM2RjZTc3NCBweTNrCis2NjY3NiA2NGJhNTI0MGFmMzFhOTJiZDgwYTk0MWYwMzJjZjc5NjBiZDRlY2JkIGxlZ2FjeS10cnVuaworNjY2NzcgNzRlN2Y5N2RhZDdkZWRkMTA1YTE3YTJmYzhhYjBkODAzY2EwYTM3MCBsZWdhY3ktdHJ1bmsKKzY2Njc4IGE5NTAzMGY5MzllZDA4ZGViOTM0MzdkMDZiMjYyZGE4NWVlMTM3MGQgcmVsZWFzZTI1LW1haW50Cis2NjY3OSAwMjQxN2I1NmU0YjIxYTk4Y2Q5ZDg2ZmFkNmMxOTM4MGM5NWRkNGU1IHB5M2sKKzY2NjgwIGQ1ODYxODVhN2E1MTY3YWVlMmJkZThkYjk5NzVjODk3YzkwMmY0NWEgcHkzaworNjY2ODEgY2FkMWQyYThhOWQzYjliMGUwNjZkODQ4YTg2Y2EzNjFjYTkyNDRlOCBsZWdhY3ktdHJ1bmsKKzY2NjgyIDQwNTM2ZGRjMjZhMTliOGZlZTI1MGY0MzczMDVjZjI1NjYzODM3YTQgbGVnYWN5LXRydW5rCis2NjY4MyA1YjM1Mjk0ODU0MjE4YThjYWYxNjE2YjFmN2ViZDJmYTYxZDhiZjQyIGxlZ2FjeS10cnVuaworNjY2ODQgNjllMTg0Yjk5MGRjNzdiMmU1OGMyMmZmZjNhZThiZjNmMDQ3ZDc3ZSBweTNrCis2NjY4NSBlZGI1ZWVjZjNiYjhiZGViNjg1ODk2ZjcyOTg3OTJjODU4YjUwODcxIHJlbGVhc2UyNS1tYWludAorNjY2ODYgZDg4ZjFmMmYwMjEzNWY2ZTQ1N2Y0N2IzODkwNjE5NzkzOTMyMGIzMyBsZWdhY3ktdHJ1bmsKKzY2Njg3IGFiMzRhNjQ3ZTIyZmNlYjUwNDUxNGZmYmJlMWYwNWVhM2U5MmI4ZjggcHkzaworNjY2ODggYjQ5NjRkZjY0Mzg0MGU0M2IxYmFkMzZiNDNiNmExMTAwOGE4YTViOCBsZWdhY3ktdHJ1bmsKKzY2Njg5IGY0YWViMTEzYzllZmFkY2U2OTViNmRkN2QxODY4M2M2MmZhNGZhMDMgbGVnYWN5LXRydW5rCis2NjY5MCA0MTU2NTU1ZjM5MTE4MWJjMGQ4ZmNhY2U3MzUzZTcwNjI3M2ZhYzg2IHJlbGVhc2UyNS1tYWludAorNjY2OTEgMzc2MzI3Y2I2ODIxM2M0ZDE0MDIxNDFkNTJlMDA1NmU0YTAwZGQwYiBweTNrCis2NjY5MiA3YzU2NjI0NTQ4ZmQ0ODJmNWJhZmZkY2QwN2U2YTUxOWY1NGFjNmJlIHB5M2sKKzY2NjkzIDZhNzMxMzRmOTYwMzJlZjExNjJlNWZmMjc1OWIwMmVjZWM4ZDg2NTYgbGVnYWN5LXRydW5rCis2NjY5NCBiMjgwMWFjYTlkNmI1ZmJlMWExYTBlOGU4NGQzNDMyMWJiMmJjMTMzIHB5M2sKKzY2Njk1IDU5OGQxOTkzNjE4NmEzODA0NDhlZTM5MWZlNDBlNTg1YTNmZTU4NmIgcHkzaworNjY2OTYgYWY2ZmU5YWRiMzljM2YzYWQ1MzhiOTYzMjg2NzQ5YTU3OTc4YjhhOSBsZWdhY3ktdHJ1bmsKKzY2Njk3IDZjZWFjZDAxNWQ2NzhhNTNjMzFlYWNhZTljNjhlNDNlM2M5ZDkxNTEgbGVnYWN5LXRydW5rCis2NjY5OCBhNGVkNTRkNTc2NGM5MDYzMWMwYjdiNTUwMzVmMWMwYjRhMWYyNjM3IGxlZ2FjeS10cnVuaworNjY2OTkgNjc2NTk0NmUxYWM0OWZmYjM1NGJhYmE4NWZmYzM4MjBiZjMwOTEwMSBsZWdhY3ktdHJ1bmsKKzY2NzAwIDdmMWY5ZTE4Y2RmYTMyNWFlOTU2NTI1NDcwZTIyMDU3NTk1NmQwNzcgbGVnYWN5LXRydW5rCis2NjcwMSA4NjA0NWUxZWU1OTUwYzRhMDAwNjMxZmQ2YWU2NGQ2YWEyNzRmYjFkIHJlbGVhc2UyNS1tYWludAorNjY3MDIgMWY0ZWEwMjI5ZWM2NjhjYzA1OTBiYjk1ZTYyMTk2MmZhMDlhMjkyMSBweTNrCis2NjcwMyBlZWQ0ZDUzMzMzMmYwZmQ5MDFhYjMwZDI5MmQ1ZmFmNmFhZThiOTM2IGxlZ2FjeS10cnVuaworNjY3MDYgZDMxODIzNGEwMGQ3NTg2Yjk1ZmRkMzY5MzQ0ZDFmNmEyMDI3MTVhNCB0bGVlLWFzdC1vcHRpbWl6ZQorNjY3MDggZWE1MzE2M2IwNmRlMzJhNmZiYjM5MGNiYmIxNDkwMTMwMTFhYjE3YyBsZWdhY3ktdHJ1bmsKKzY2NzEwIGI1ZmI5YjAwMmVjMzE3M2NhOWEyM2Q1NjBmMjQ2YmFjODA5NGFhOGYgbGVnYWN5LXRydW5rCis2NjcxMSBhZGE2ZDdmNzFiNWRmMDc2ZDllMGIzNmVmN2YwZWQyM2Y2Nzg4NjZkIHB5M2sKKzY2NzE0IDU4YTk4ODRkMmJjM2QzM2Y5ZGY4NTUyODU3NzA5ZGZlOTlkMTgzODQgbGVnYWN5LXRydW5rCis2NjcxNSA5NWZmZjVhNmEyNzY1MjBiMmU3ZTBmNzVmZTMwM2Y0OTM3NjU2N2E1IGxlZ2FjeS10cnVuaworNjY3MTYgYmM0Y2E4MGJiNWZkNGM5MWE4YjdlNzA3M2U3YzRkMWNjMWI0NzcwZCBsZWdhY3ktdHJ1bmsKKzY2NzE3IDU0Y2QxY2M3MGE0NzhkODUzZWY4YzM2NGEyZTAyN2I2ZmE2MDI0ODIgcmVsZWFzZTI2LW1haW50Cis2NjcxOCA3MjkyODkzZmMyYzVmOGI4NTA4MjdjZjI0ODIzMjk2MDE5ZGJmZTVmIHJlbGVhc2UyNi1tYWludAorNjY3MjEgNzQ4ZWM5YjJhZWYxMDI3YmQ5MzNkZTZmNzg5YmFiOGJjYTg4MGU2MSBsZWdhY3ktdHJ1bmsKKzY2NzIyIDlkMmYyODE4MjgzZDVlODljNDEyZGQ2ZjkyOWQ1NmRjMGRlYTA1MTUgbGVnYWN5LXRydW5rCis2NjcyMyBhNWYzMGQwNjQ5M2NiZDRjOTVkOWE4ZDZlNDZkODIxNTM2ZDY2ZmFlIHB5M2sKKzY2NzI0IDg4ZTYxODNjZGIzOGM2YmNhZmNjNjQ4MWU3NTA3YjY4OTNkOTA1ZGQgcmVsZWFzZTI2LW1haW50Cis2NjcyNSAwMzNiYjVjYWNkMGEzNDE3YmU2ZjRkNDVjMjI3NjBiZDFmMzE1MjA0IGVtcHR5Cis2NjcyOCA2ZGQ4N2RlODUwM2Q1NjUyNmNjZjhlMTVkN2JmMzE5ZDYyMTYyZjJmIGVtcHR5Cis2NjczNiA1NmQxNzg4NzQ4MjEzM2Q5YjdlNWRkMjg3YWIyMmZkMWNlYWE0ZmI4IHJlbGVhc2UyNi1tYWludAorNjY3MzcgZWViNWZhM2VmODg5YTIyMTkwYzY1NThjMmFkY2U4ZmMzNDAwODlkNiBweTNrCis2NjczOSA5Yzk3MWQ1MmEzYzM1ZmFiMmFhNjdlMzM5N2E1M2U2NzE0NjBlYmQ0IGxlZ2FjeS10cnVuaworNjY3NDAgODczZDFlMzY5NzlkYWU2N2Q5NGU0NTViNTllMjgyNTRlMjgxN2I1MiByZWxlYXNlMjYtbWFpbnQKKzY2NzQxIGY5ZjAxNDg0ZTQ4YjAyYzFkMWM4ODYxYzk0ZmFjODhiYTJjN2MwNGUgcHkzaworNjY3NDIgMDY4ZDliNjE0ZTdiZmZhYjY4ZGQyODExMmJiMGZmMTM4ZThmNDIwMyByZWxlYXNlMjYtbWFpbnQKKzY2NzQzIDhhN2M5MzBhYmFiNmEyYzI2ZWFiNjk4OTFmNDlkOGJlNDlhZmU1ZGUgcHkzaworNjY3NDQgYjlhZmE3YzljYzM1ZTE1ZmI2OGE5ZDQwMWE2YzEyZjNmNjEwMWQxYyBsZWdhY3ktdHJ1bmsKKzY2NzQ1IDc0MjZkOGQ3Y2UxYjRhNWRhZGY1OWRmN2E2NmNjZjhlZDU0NzlmYmEgbGVnYWN5LXRydW5rCis2Njc0NiAyODFiMjFjYTAzZjYzNjMwNGY5N2U5MzhmNmJkNjM4MTcwM2RiNzhiIHB5M2sKKzY2NzQ3IDAxMzg5NTI2YmEyNTU3OWUzODU1NmEyYzI4MDEwNGMxZWUyN2UwNjUgcmVsZWFzZTI2LW1haW50Cis2Njc0OCAyN2Q3ZWZhM2UxYWMwMDU1MTkyYThiZDc0MTBkNDJhZDMzNjg5Y2Y2IGxlZ2FjeS10cnVuaworNjY3NDkgNjQyZjIwYjIyNTc3OTU2MjhlNjM4YTcyNGJiMGYxMWZjNTExOTc0MCByZWxlYXNlMjYtbWFpbnQKKzY2NzUxIDg2ODkzYTM5N2RkMDUxZDRiMTUyMzVhOThlY2UyZDhiMjhhMzRjMTYgcHkzaworNjY3NTIgZjgxMmJjMmI2YTdiZmRmODcyYmUxNzg1NDJlNGIyMThkMDMyZmM5YiBsZWdhY3ktdHJ1bmsKKzY2NzUzIDk4MTMwNmY0YjQwNTAxMWUyZWMyMDVhZmRjMGUwYzViMjYxMWUxZmEgcHkzaworNjY3NTQgM2FlYWM0YTZhMmNmY2I1YWU3N2JiYTc1MjBiOTgyOWM4OTFiZTFmNSBweTNrCis2Njc1NSA0MTllNzIxYjNjYTllMjAzMDUyNjkyMzg0YWU2OWJlOWMxZDBhNmIzIHB5M2sKKzY2NzU2IDIwMGRkMWQ4MjBmY2Y0ODU5M2ZlODNiNGIyNjYwOTY5MzBlMGJkYjIgbGVnYWN5LXRydW5rCis2Njc1NyA1N2IyZDlhMjI1OTRhMTVkNTc5MDJlYmNiYzlmODFkODhjOTFkMjExIHB5M2sKKzY2NzU4IDRmNzcyMDA0YTg1ZGNhYzUyNjNmZTllZGJjNTQyNjY3ZTU2OTM2NzcgcHkzaworNjY3NjEgNTVmOTE0YWU5MGVkNjRjYTAzMDUyZWM0ODJhY2QwZDRlMTVlZmY5YyByZWxlYXNlMjYtbWFpbnQKKzY2NzYyIDAzOTEwYjg5MjY3OTFjZDY2ZGNlNDVmZjI5NWQxMGU3MGUyMTBiNTMgcmVsZWFzZTI2LW1haW50Cis2Njc2MyAyMjIzNjU2ODJjMWJlMjA2MjMzYTE4OTcyY2FjNGVkN2E1OGYzOGY5IGxlZ2FjeS10cnVuaworNjY3NjQgMTA5MTAwOGYyY2JkMDdkNGE2NzQ4MzQ1NDgzMTdmMDMzNGVjM2ZiNCBsZWdhY3ktdHJ1bmsKKzY2NzY1IDI4M2U1NDI2NGMwZDY3ZmU0ZGZiYWQyNjE4MDhmMDAwYjRmNzI4OWUgbGVnYWN5LXRydW5rCis2Njc2NiBmYTA0MGQzMGNmY2FhOGE2MzI3NjU5OGVlZWFiN2UyZmIyZmYwN2Y3IGxlZ2FjeS10cnVuaworNjY3NjcgZThlMTk2Mzk3ZjQ1NzFiNGIxZDYxZjFhZmQ2MTYxMmIxOTk5ZjI3MCBsZWdhY3ktdHJ1bmsKKzY2NzY4IDc0OTgxZGM4MzlmZDIyZmZmYTY5MDZlOGY4N2E5Zjk4MzA2NjRlYmUgbGVnYWN5LXRydW5rCis2Njc2OSBlODIyOTkyY2Y2Y2VjY2NmZGY4YTI0YjgxMjI1MDAyODE5YTJmYzRjIHB5M2sKKzY2NzcwIDhlYzg0OTc2MDRjNzdlN2Y1NTQxZDk4ZjQ2ZmQxNzlmMjA5YWQyMGQgcHkzaworNjY3NzEgYThmOTU5NWI5ZjU1MzZkZDk3OGEwOTk3ZDU2ODJiN2Q4OWVkNTM4ZCBsZWdhY3ktdHJ1bmsKKzY2NzcyIDA4YzQ4ZWEwNTA0NWJiMDNmYWQwNjVlNDU5MDYzNGI2YWVmNmUxMWUgbGVnYWN5LXRydW5rCis2Njc3MyBiZjgxY2I4ODkyZjUxY2U3MzYzZTk4OTM0Mjc0NzNkMDJlOWFiNTY4IHB5M2sKKzY2Nzc0IGI1ZjM5YzhhNDQyMzllNGNjMGZjMzc0NGQ3ZTVjMDQzZDgxYmFhNDkgbGVnYWN5LXRydW5rCis2Njc3NiBmNWI5YzZmNGM1OWM3OTA1ZDAwNWMxMGZjMTc3NTE1OWRhOWJmZjBjIGxlZ2FjeS10cnVuaworNjY3NzcgZWY0YmI0ZDVkZmRlOTdhNjVjYThjNDcyZmFkODgyNjc2NTJjZmE1NCBweTNrCis2Njc3OCAwYjFkYjI0MmQyMzJlNDdmN2U5NWVjNTE5NGM2OTk4NjYxMGMzOGEwIHB5M2sKKzY2Nzc5IDg0Y2NmOTFhMDZjYzU0NTJhNWY4YzczNzRjYTU5MWY5NGM1YzIwMjggcHkzaworNjY3ODAgOGE4OTJjZjI1ZTdhYTZiMzVmNWEzMjUyMWNjMmIzMGVjOGU3YTk0MSBweTNrCis2Njc4MSAxNmExOTRkYTc3ZGU5NmU1NzdjMjdmNzE0NmNlMWUxMGNiZTc2OTMzIHB5M2sKKzY2NzgzIDg0NDJmMTM3MjBhNGRjMGU2OTY1YmQxNGU0ZTcwNzQwYjY2MmNlMjMgbGVnYWN5LXRydW5rCis2Njc4NCBiZTJmODViZTU2NmU1MTYzMjNmYjRjN2UyNjEzZDJlNTY2MGQ3MjYzIGxlZ2FjeS10cnVuaworNjY3ODUgYzU2ZmJiN2MxNjg5Y2E4YjBkOWE0N2ZkYWFiN2JjZTI4OGE2ZmQ2NSBsZWdhY3ktdHJ1bmsKKzY2Nzg2IDg4NWZkZjU5NzBjYzU2M2E1YzBhYWE2ODQzOWRiODBjNTJjMTE3MmEgbGVnYWN5LXRydW5rCis2Njc4NyBiMjFkZTA0MjEzOTVkNTA4MzI0NzI2ZjkwMjlkYzg3YWU4OTUyYjE1IGxlZ2FjeS10cnVuaworNjY3ODggNTgwOGE3YWUwM2FjZDkwN2YwOTAwYmRkMjIxNWI1OGFjYjBiZWM4ZCByZWxlYXNlMjYtbWFpbnQKKzY2Nzg5IDM1NmU4OGQ0YWYzMDIzYzdiZWIxNmI5N2Y0YzI0NmNkNjcyMjUwZjkgcmVsZWFzZTI2LW1haW50Cis2Njc5MCBlNTkxZTc1ZTgzYTJmMWYwMjcwMmM2YWIzNjliYWUyOWJmNjUzYTNjIGxlZ2FjeS10cnVuaworNjY3OTEgZjIxYTNkODU4NWM2NTU0NDlmZGRjY2EyMTJkMWFlNDQ0NTkzOGI5NSBsZWdhY3ktdHJ1bmsKKzY2NzkyIGFmN2EzOTlmYzI3MjIyYzIwNjczYTE2MmIwNzJjZGM1MjdmNjMwYWUgbGVnYWN5LXRydW5rCis2Njc5MyA5ODRhOGJjNmQ5NTZmMzU1MTQ0NjA3OTJkODM1YjI3M2M0NjdiOTdmIGxlZ2FjeS10cnVuaworNjY3OTQgZjczMWYwOWVhODM5NGM0ZTQ4YzM1OWE2ZDk5MWJkOThiMjc4ZjJkMSBweTNrCis2Njc5NSBhYzMxNmYyNTIyOWM5MjA0ZTI2N2NmYTIyYjk2ZjhkYWZmODc2NzlkIHB5M2sKKzY2Nzk3IDczY2UzYTExMDQ2ZmJkYzAwOGJjYjM0ZWU4MWM0OTM4OGRkMmM1NzEgbGVnYWN5LXRydW5rCis2Njc5OCBmZjVjM2RkNjhkMDdjMzg4YWFkMmYwOWJhZDBiYzY2NTMyZmUyNDUzIHB5M2sKKzY2Nzk5IDA1NjA0NTU1YjhkNDAwZGJiYjE3MmY4NGYwZjJjNTg0OTRiZmY3MWYgcmVsZWFzZTI2LW1haW50Cis2NjgwMCAyZTc5NDc1N2JkYzg0YWI3OGFkMzY0NjdmNjkxMGYyMzI3MTk1NWJkIHJlbGVhc2UyNi1tYWludAorNjY4MDEgZTA5NmM1MmNkNWNhOWExM2U1MTk0ZmNkMWUyY2ZkMjVkN2UyMDA0MSBsZWdhY3ktdHJ1bmsKKzY2ODAyIDhmNWE4ZWE1YmE3NmVhYTNmNWZiNjkyMWYzNzhjMjhiMTFiMjA0OTYgcHkzaworNjY4MDMgZGE5NTVjMzM5NjViNDkyMDMyNTBkZjNhNWQ2YmEzM2JhNTNiYmNmMSBsZWdhY3ktdHJ1bmsKKzY2ODA0IDM1NmExZjZlZjM0ZmQyODc3YWVkOGM3YWY3ODJjOTg1ZTljYWQ5YzQgbGVnYWN5LXRydW5rCis2NjgwNiBjNWIyN2RmNzlkN2Q2ZDliZjZiMjU3NjIwMTBiYmE0MzBlNmMyY2NhIHB5M2sKKzY2ODA3IGMwNDc4NjUxNDYwZmNhZmQ3YThlMTliM2U0MDFlMjZhNThhYzM3ZTIgcHkzaworNjY4MDggOWU0MWM1ZTdlMzYwMTk5NjliMGIyZWQyM2Q0ZDVhNjZiOTRiOTI5ZiBweTNrCis2NjgwOSA1MjRhYzc0NGFlMDQzOTY2NjQwMDkzMDlmMTBhZmEyNjhiYzBlNDU0IGxlZ2FjeS10cnVuaworNjY4MTAgZGM5NWU0NmYxZjNlODlhOWJkNjIwZDM0MjdlNjI4NTAzMzIwOTI1NCBsZWdhY3ktdHJ1bmsKKzY2ODExIGMyZDAxOTZlYTU4YmQ0NmJlZTM5MDg0NzJjZjI5OGU2YTE5OWQ3NTAgcHkzaworNjY4MTIgMDJkZDVkYjYyOTBmNDViZTJlZWExZWJkNTczYWU5ZmNiODkxZTQ1NSBweTNrCis2NjgxMyBjOTMzYzg0NjdiZGRhYWVlYmY0YWZjMmYyM2I5ZmE2NDhlNTcyM2VkIGxlZ2FjeS10cnVuaworNjY4MTQgYzljNzhlMDBkZjY3M2U2NDM1NzNlNWJjNWIwMzRmYjQ1MjNmMzgyNiBsZWdhY3ktdHJ1bmsKKzY2ODE1IGM1YWU5MzJmNjNjOWRhMzQ4YjZhZDUyOWY5NTk2YzljZjk4NjEyZGEgcmVsZWFzZTI2LW1haW50Cis2NjgxNiBmNTExNWMxMzJkNGFhNmI0ZDkxNzA1MGQ4MDUyNGMzYzZlNTQ3Zjc4IHB5M2sKKzY2ODE3IGRmZTMxMGE0MDI0NThkMTE2NmI2YjBiMTRmOGJiZjkxYzk0MTRhMWUgcHkzaworNjY4MTggN2FlYzAwMDE1YTllMTU4OTRkYmRlNDljZmQyMmE4M2I1NmUzNzc5MiBweTNrCis2NjgxOSBkOGI0YTYxYWJmMjVmNzE1YWUzYTY2OTYwMzE0ODU2ZWExZDYxNDZlIGxlZ2FjeS10cnVuaworNjY4MjAgZGJkMmIxODE3YTc1ZDQyOGYwNDIxZjY4ZmQzYzYyMjM5MzJiNmJmMSByZWxlYXNlMjYtbWFpbnQKKzY2ODIxIDEyNTk4NGI3MWE3NjhlMjAwNTU1ZTg0YTIzNWRlNmJkYjIzYjdmOWUgcHkzaworNjY4MjIgZTk5MTUzOGI5YTg3NmM3NzRlNjA5MDg4NzFiZGM4MDg2ODZhODA5OSBsZWdhY3ktdHJ1bmsKKzY2ODIzIDljN2VkNzBhYTJjM2ZlNGY4Y2Y0Yjk0MGJlMDE0MTIyNjMyMzc4ZGEgbGVnYWN5LXRydW5rCis2NjgyNCA3ZWZkZGFlNTBkMjU1MDM5MTUyMWVjMzYzMjk5MDMyYWIwZThlNTQ2IHJlbGVhc2UyNi1tYWludAorNjY4MjUgNjY3OWMzMjUyZjliMGViMjVkZDgzMmNiMzhkMTA2NTc0ZjE2NzliYiByZWxlYXNlMjYtbWFpbnQKKzY2ODI2IGRkOTdkYzc5YWUwYTA1ZjE0YjdkZGMxODM4MGU0YzU5ZGU0ZWRkZTAgcHkzaworNjY4MjcgOTE1ODc4MThhZGI4MzgwNGEwZGVhZGFkOGM2NTdiMTgzNDMwZmIwZSBweTNrCis2NjgyOCBkMjE0MGRlNzY0Nzk0ZTdlNGYyYWIwNDU4ODgyNWEzOTRmMjI2OGE3IHB5M2sKKzY2ODI5IDFjOTgwNTU0YjU0YjJjMTBkNGJiN2VhODA1YmQ0Zjk1ODkyZDNmYjQgcHkzaworNjY4MzAgMGIyZjc2NWJhNGY3NzVjZjU5Y2Q1ZTQ4YTVjNTdlOTJjM2M4NjQ1MyBweTNrCis2NjgzMSA4MjA5MWRmNjUxYmU3YTkxNzY3NzcxOTMxOTM3MWZjNWZmMTMxMWY4IHB5M2sKKzY2ODMyIGNiNzg4ZTA4NDRlN2Y5ZDA4Mjg1NGEyM2ZkNTQzMzMwNzM0M2ZhMDQgbGVnYWN5LXRydW5rCis2NjgzMyBjZTdiOGMzMTdkYTIwZjhhNzQ1YTUyZjkzNjQxNTAyNzdlZGNlNzBlIHJlbGVhc2UyNi1tYWludAorNjY4MzUgZGVlZjI4NDgyMmY3NWQwN2E5MjhjMWE1MjVlODYzNzY1NjE2OGIxNCBsZWdhY3ktdHJ1bmsKKzY2ODM2IDIxMDYwYTU2ZGVmYzg4MWU2NzdhMTFkMTEzOTNhMWQwOGI0MjE3NWQgbGVnYWN5LXRydW5rCis2NjgzNyA2ZTdiODUzZTg2MTYwOTMzNDI3Mjc4ZGIyNzNhNTVmZDBmZTA4ZDdmIHJlbGVhc2UyNi1tYWludAorNjY4MzggMWU1YjIwNTBlYzZhY2Q0ODJmODk5M2E2MTUyNGRjNDRmMmVmNjhmNyBweTNrCis2NjgzOSA1OWRhYTdjZjhjYTA5Nzk1MmQwOWRiODUzM2E4YmQ4MzdiMzA1OGJmIHB5M2sKKzY2ODQzIDY5ZWExMmRiOWIyOGI1OTgzMjJkMWM2NTdhZjY2NWI5ZjI3M2RlNjIgcmVsZWFzZTI1LW1haW50Cis2Njg0NCA4NjBmNjI4NDhhZjAyZmJkODM4NTU3ZDI4MDVlMmMzNmVmMzIxMTk3IHRsZWUtYXN0LW9wdGltaXplCis2Njg1MSAwMjA1Y2YwYjFhZGI5ZmJlM2NiN2RlZmFkZTMyOGRlNWUxMjFiZTY0IHJlbGVhc2UyNi1tYWludAorNjY4NTIgOTRkMTdjZjNkOGJiYmUwMjQyZDIyZTQ4NDkzMDI1MGU5ZmJlZjgzZiBsZWdhY3ktdHJ1bmsKKzY2ODUzIGI0ZmNiMmY0NzEwMWNiYmRlMTMzY2Y1MGFiMTRiN2I2ODZkMjRjODQgcHkzaworNjY4NTQgNDg0NTgxMGY1ODhlYTI4ZjA0NzAzMDMzZDA4NGM5ZWUzYTc1YjM5MiBsZWdhY3ktdHJ1bmsKKzY2ODU1IDU3NWY2NWYwMGM2YzA5MjNjMGIyNmVhOTNmMGMzMWMxNDhlNGFmMGEgbGVnYWN5LXRydW5rCis2Njg1NiBkNGI2MTNkYTM4ZGNjZjY4OWI1MTg1NjAyNDc1YWExOWJiYmYxNmI0IGxlZ2FjeS10cnVuaworNjY4NTcgMmJmMWMxYmQ4ZDk2ZWIwZWFmMjhjNjVmYjY4Y2MxMWViOTkzY2VjZSBsZWdhY3ktdHJ1bmsKKzY2ODU4IDljMGVkNGFlY2ZiZDkxZDNiYzgyOGY0YWJiYWU0ZTYxOWExZmMzMWYgcmVsZWFzZTI2LW1haW50Cis2Njg1OSA1MTg3NmE0MDNjMGRmOWJjNTY5NzA1YzdiOWIyZWU3Yzg2N2FjNzBlIHJlbGVhc2UyNi1tYWludAorNjY4NjEgY2U2NGNiYTUxYzJiN2Q5ZTNjMDZjNTU5MmI1ZjA0ZGE1YzE4OGZhZiBsZWdhY3ktdHJ1bmsKKzY2ODYyIDBkYTNjMzBmZTliNTIzYWFmMTdjNDMwYjE4YjYwZWI3MDlhOTc4YTcgbGVnYWN5LXRydW5rCis2Njg2MyA1NTBkNzUxNjBjYzRmNzM4MWI5YjUxZjI1ZGZlMDU1NmJkNDMxNDMwIGxlZ2FjeS10cnVuaworNjY4NjUgYTAyNThiYWVkMDA1N2MwNjUzNTQ0MTcxZjliN2U2MTUxMTlkMGQ3NyByZWxlYXNlMjYtbWFpbnQKKzY2ODY2IDBlMzU5YWZjMDY0NjgxMjUzZDAxZDA0Y2E0ZjBkNjczMjE4MDczNjUgbGVnYWN5LXRydW5rCis2Njg2NyAwYjdlMDIzODAzZmIzNzJlMDQ1MjUxZDNiZjE4NTZjMDQ0NWFlNjA3IHB5M2sKKzY2ODY4IDJhMmNkYjI4NTY1NmRlMmYzZjY5MzNmNTk4MzYzYjI1ZWRjMThhOTUgbGVnYWN5LXRydW5rCis2Njg2OSA2NjVmYTA1NjMyZjdhYjY4M2NjNGZjNTQ3YmQ2Nzk3YWFhODczODhmIHJlbGVhc2UyNi1tYWludAorNjY4NzAgMDhkNmRkNjg0YTZiMzEwZjNkNGUxYjgzOTc5ZmNiM2E3NjZkY2Q3MSBsZWdhY3ktdHJ1bmsKKzY2ODcxIDNkZDE2NTFhZjM1ZGQ0YmNiMjU4ZWYyOGJkZDM0ZmZjMDQwNmI1ZGQgbGVnYWN5LXRydW5rCis2Njg3MiAzNDJmNzAxODllYTllNWI1OGZjOTc4NTA5ZmUzMTk1YmMyYWIzZTNiIGxlZ2FjeS10cnVuaworNjY4NzMgYzBhYzQ3OTg0YjExMDRkZGJjMGEwNzQwZmVkNDcyNzJiYzY5ZmY0NyBweTNrCis2Njg3NCA3OTZiMWJiOTU1NGNiN2VhNjI1MjU2MTEwYmQ0YzVhMWZkYzU4OWU5IGxlZ2FjeS10cnVuaworNjY4NzUgNWEwOTIxMDFmMDY5NjNlMjUwZTViZjE0Yjg4OWQ5NTY1YWU3OWFjYiBweTNrCis2Njg3NiBiZGY0ZGE1ZDA0YWQ5YmU1MzU4YzBmNGEyYWQ1NWVkYmM3YjFjNDE5IHB5M2sKKzY2ODc3IGQzZGUwODJjYTAzMTRhOWVhNGIxOWM5NGRiZWEyMzNmZWNiZGQ0ZTYgcHkzaworNjY4NzggZTY3MDJjMWEwN2Q3NTJiM2VlNTk0N2I4MWYzMDcwNjQzMzZmNjgzNSBsZWdhY3ktdHJ1bmsKKzY2ODc5IDE4NzAwNGRmNTc5Y2IwMjEwZDc3MTg4YTNmMDVmMjlmMGU1NmVlZTIgdGxlZS1hc3Qtb3B0aW1pemUKKzY2ODgwIDk5Yzc4ZDYwYmUxMjVlM2UzOGUwNDA4NTk1ODU2MTMyMjBjMjVjM2YgcHkzaworNjY4ODEgMmYwZDczODRjYzFjMGE4MzNkMWJlMWU4YWY3YTJjNjJmZGI3ZmNmYiBsZWdhY3ktdHJ1bmsKKzY2ODgyIDA4YTNlNjhmMWZjYmIxMWNiNWEwNDY4OTQxY2Q2YzJjYjBiMDZkY2QgcmVsZWFzZTI2LW1haW50Cis2Njg4MyA3MWZhN2QzY2M0YzU5ZGJlZjc2NzM0ZTk4NmIxNjg2MWU5NGJhMmZhIHB5M2sKKzY2ODg3IDlmZGY4ZDhkZTI4NzVhN2Q1NTZjOTU0MGZjYjM3YjI5OTZjM2ZhMmQgbGVnYWN5LXRydW5rCis2Njg5MSA2MmMyNGQ0YTFmOGY2MjA5YTAyY2JkZGFmMWEwMDA1N2M3MzM3OGU2IGxlZ2FjeS10cnVuaworNjY4OTIgZTFhODhlOGI5NjQ5YmZhZTdlZmJmNzkwZmFmZjk2NzZhMGFjNTYyNSByZWxlYXNlMjYtbWFpbnQKKzY2ODk0IGIwOWU3MDUzYjQ3MmMzOTVlMDVhNGFiOWI0ZWY1YzljODM5OWFhZWQgbGVnYWN5LXRydW5rCis2Njg5NSA1ZTY2NjMyODZhYmM1N2M5YjhjYTI1NTUwYjEyYzU2MGNhNTQ2OTI5IHB5M2sKKzY2ODk2IGFjODZlOTUzNTU4ZjQ0NmNkNGZmNjZiNDEyODJmMzNmYmM2Mzg5ZTYgdGxlZS1hc3Qtb3B0aW1pemUKKzY2ODk3IDBmMGMyMjgzNTgzZWViODcxMDJjMTcwMWNiNjdlMzIxMjc5ZTIxN2YgcHkzaworNjY4OTggMjMyYTIyY2ZkZWE4ZmE5OTNmYmE0NTdmODg2MWJlZDYxOTIwNWU0OSB0bGVlLWFzdC1vcHRpbWl6ZQorNjY4OTkgODRmMDE3NDIwYjliOGUxYjZhOTE0MTkwMTA5Zjc1ZGY5MTY1NTdiMCB0bGVlLWFzdC1vcHRpbWl6ZQorNjY5MDAgYmI1MTE1OWU3MWRmYzMxNTJlMDNhMmIwMDI2MmE2MTAzZTg0YTJjYSB0bGVlLWFzdC1vcHRpbWl6ZQorNjY5MDEgZDE3Y2ZlZTRmMjNkZWZiZWE1MzZlNjA1MGFmMDQ5NDM5NzBjZWU4MyBweTNrCis2NjkwMiBmZGNjOGEzMTM1Mzc0NDhmNDYwYzI0YmVjNTljYWJkOTM3Yjg5Y2Y5IGxlZ2FjeS10cnVuaworNjY5MDMgNDA5ZGFiOGIxZDM0NDk2OTkxZjU5MmFlYTA4ZjJkMDJjMjgzYmI0NSBsZWdhY3ktdHJ1bmsKKzY2OTA0IDQ4MTk0ZDdhZjMyZjAyNjgxYTc3NmYwZWNlNzY3MjdkNTdiMmU3ODcgcHkzaworNjY5MDUgMGFkZjZiZGIxNzBmOTczY2E1N2FlODA3ZmRjMzkxODY2ZDY4MThmNCBsZWdhY3ktdHJ1bmsKKzY2OTA2IDQ3MzdlNWRmNTBmNGQ3ZmU5ZWE4MmI2MzA3MGYxY2FlNzYzOWQ2MTEgbGVnYWN5LXRydW5rCis2NjkwOCAyYTEwOTZiNDgxN2EyZjZmZTJjNGQwZjAzZTdlNzFkZGY2ZDU3NDNmIHJlbGVhc2UyNi1tYWludAorNjY5MDkgNWFmYzlmZmE4MGJiNzllZjZiMmJjMTNjMGIwNDJjNjM4YTJkOGRhNiBweTNrCis2NjkxMSAwMTExMWM0MDYxNmY1OTBiOTFmMjliMjliYTAyY2FkODhlN2RkMzEzIGxlZ2FjeS10cnVuaworNjY5MTIgOTJkMDg5MDMzNWMyNDk0OGNhMzBjZTFjYjM1YWU2YmYxZWE4NWZiZiBsZWdhY3ktdHJ1bmsKKzY2OTEzIGI4ZmM3OTBhMjdhZWM4YjY4YjM4YjgwMjBhYjRmYmZiNDM3YjNiNmEgbGVnYWN5LXRydW5rCis2NjkxNCA4ZDJhNjk3MTFhOTdjZWQ1YmIwNDNhYmU0OTljMTdjOTNjMzFiODVkIHJlbGVhc2UyNS1tYWludAorNjY5MjAgZDA2MTllMjEwYWM0MmZlMDk3Y2MwMjUwYzhiY2NkMGI0ZWVhM2MzNyBweTNrCis2NjkyMiA2OTM4MjE5ZGM1YTY0NjQ4N2JmZWM4Mjk2MDlmM2IxNzU3ZWNmMGM0IGxlZ2FjeS10cnVuaworNjY5MjQgZDdhNzI4NDIwYjAzYTdiMzdlODE1YjNkOGU0NWQ3N2EzMWNjNjkwOCByZWxlYXNlMjYtbWFpbnQKKzY2OTI3IDE5OTI4ZTQ1ZDE4YjIxN2JlYWQ5NDM1YTU0NzA5ZGVmZTcxNGFjYjMgbGVnYWN5LXRydW5rCis2NjkyOCA5ZGVkZmI4ZTU2NWM0NDVkNTM0ZTE3MmMwYTk0OGZhMmM4MmI1ZGFjIGxlZ2FjeS10cnVuaworNjY5MzIgM2MzYWJkNWZjODMzOTIzNzI0NzJkM2QyZGNhMDM1YmFjZjA4Mjc1MSBsZWdhY3ktdHJ1bmsKKzY2OTM0IDAwZTQ2N2RiNjE4MjU0MzZiZDBjMDU4NTk5OTlhMGJhOTIzMTIwNDggcHkzaworNjY5MzYgYTU3ODE0N2JiNWMxMzA1NTk0ZjJlY2IwZjRjOTg1ZmQ1NDk3MzA1MCBsZWdhY3ktdHJ1bmsKKzY2OTM4IDQ2MjI1MjExZTUwM2ExOTU0YmM4MDYxYmFjMTJlZjQzMTcyNzE0NjkgbGVnYWN5LXRydW5rCis2NjkzOSAyNDFlMDMzNzFjN2U0MjYzMmUyN2VmMzIyMjFjZTU3ZDE4N2IwMmRiIGxlZ2FjeS10cnVuaworNjY5NDAgNjAyNGUwY2FiYTY0ODAyYWQ5MzJiZmNjZjFlOTU3ZmEwZjRmZTk2NSBsZWdhY3ktdHJ1bmsKKzY2OTQxIDRlMmU2ODg0ZmQyODg3NjIyYWFlYmY5NTliNjEyZjI0N2RjZDVhMjIgcmVsZWFzZTI2LW1haW50Cis2Njk0MiA4YTg5MTMyYjg1OWYxZWI0YzI1ZDJkODQ3YjVlMzJiMTIzMjE2Yzg4IGxlZ2FjeS10cnVuaworNjY5NDMgYTUzYmI4MzMwYTY0YzUxYmNjMGE0OGQ2OGEyNDZjZGU0MDYzNTNlYSBweTNrCis2Njk0NCA1MGM4ODZkYWVkZjBkODE1ZDY0OTk1ODI2NWZjMmZhYjI2OWQyM2RjIHB5M2sKKzY2OTQ1IGNhNzIyNzFjNjI0YzJkZmJlYmMwYjYwMzJmMDFiOTI0MTNjMTRjMDQgcHkzaworNjY5NDYgMmEzOTEwYThkYzM3N2FmYWRjMjFiMWVjNDFiYWM1ZjE2MjhmZTkzYyBweTNrCis2Njk0NyA0OTFlZDgwYThjYzE1MTAzMTBmYzMxMmUyNmIzMmZlODNmNzg5NDZjIHB5M2sKKzY2OTQ4IGNiYzNhZmMxZTQwYTIwOWQ4ZDQ3MDJmZmQ0ZmVkMGEyNDQ3ZDA1N2UgcHkzaworNjY5NDkgMmMzYTZjOWRmZjYyZDVjOTYwMDY3OTI3NGM5Njc4ODBhMTViYjM3ZSBweTNrCis2Njk1MCA2NDVmZTU2YzExN2FhNjNmOTFmMGMzNDkxOTc3YTA1ZDgxZDkzMDcwIHB5M2sKKzY2OTUxIDQ4MWFkM2Q5ZmZkMWI2OGRmOGRhODU3OGUyNTc5ODE5NjIzYjZmMGUgcHkzaworNjY5NTcgZjY3ZGU2MWMyY2ZhOTIzODgzZWM0MmUxNzNjZDE3Zjc3MThkY2MzZSBweTNrCis2Njk1OCBiNTU1ZDRkOTU3NWM0NThlOTdjMDVlOTViOGNjMzZhMjc2M2Y4NTg3IGxlZ2FjeS10cnVuaworNjY5NTkgNjZjNTQ1Zjc5NjI2OTMyYzFhYmEzYmJmY2UyYmEzZjgxMTExMzYwNiByZWxlYXNlMjYtbWFpbnQKKzY2OTYwIGRmY2U2MmFiMDdiYTBhMWY2Y2U0NzI5ZDA2MjA3Y2FhZDBlZDM0NGQgcHkzaworNjY5NjEgODNkMDk0NWVlYTQyMjg0MDkyNjc3NWI4NWVkZGYzM2U2MTRlNzYyOCBweTNrCis2Njk2MiAwMTIxZGYzY2Y1YTAxMmMyYjgwNjBkZWVhYzdmODMzNGZjZTE1ZWVhIGxlZ2FjeS10cnVuaworNjY5NjMgYmMxZjQzMjUyYzkyMjBmOTJhNjAyZWU1ZDcxMzY1MDk0MDFmYzIzNiBweTNrCis2Njk2NCA5NmU3ODU0ZDdjNmUxYTEyYjJhZWM1ZWI0OGQzYzZjZTM3MGM3NDkwIGxlZ2FjeS10cnVuaworNjY5NzAgNjg0YmY3OTkwMDk0YmNmZjFkMzg1NGQyM2Q1ZmU0MDhkYWNjYzg5NiBweTNrCis2Njk3MSBlODg0MWMzNDY2NTE5NDcwZDQ1MGEzZjQ4YWNkMDBkZWQzNjQ0YWI2IHB5M2sKKzY2OTcyIDU3ZTJiNWM0NTc5NWE4MDUwZTc0NTAzMzUzMDQwN2MxZDM5YTQwOTMgcmVsZWFzZTI1LW1haW50Cis2Njk3MyBkYmQ1NGJhYzBiNmY3Y2ViNWE5YTFlMTRkMzlmZGYzMmE3MTVmYWFiIGxlZ2FjeS10cnVuaworNjY5NzQgMmUzOGNhNzA5YjFkMjk2YzdmZmE4MjFmYjAyZWJlNzMyMjZhNjljYyBsZWdhY3ktdHJ1bmsKKzY2OTc1IDNmZjdiYjgzMDUxOWMyN2RlMTVmMGQ3YWExODUxODAxMmY5ZWNmYWIgcHkzaworNjY5NzYgMjZiYzBjZDAxMDhiNDViNmRlZjA5NGM5MTM2OTNkNWRmOTQ2NDUyZCBweTNrCis2Njk3NyA2Y2RlMmEwNTFiMjc5ZDIxMGM1NjYwYmJlMGNkMjZhODNiODhiZTc2IGxlZ2FjeS10cnVuaworNjY5NzggODliYTAxYjYxNGVlZDMxODA2OTgwYmQyMjkwMWJlN2E0MDdmMjZiMiBweTNrCis2Njk4MyA4N2VmODk2MDgyM2ExODQ4MTZjZWY2NWU1MTUyNTUyYmE1NjM1OTYyIHB5M2sKKzY2OTg0IDg0OTZmNTQwM2E4MjI1MTA3MDY2YjE3ZDI1OTc2YzE3ODY2NzkzMTYgbGVnYWN5LXRydW5rCis2Njk4NiA0MTUxMzdkMGUyMGE1MjdmZTMxYmNmYjRjY2MyM2JmYjdjMjEzZGVkIHJlbGVhc2UyNi1tYWludAorNjY5ODkgYzIwOGY1YzFlNGZlN2I3MzJiMjQ1NmUwMjllYjgzN2U3YWIzMmU2YyBsZWdhY3ktdHJ1bmsKKzY2OTkwIGMxZGNmZjc1OTc2ZTA1NDZiZjc2NGQ4MTE5MzMwNWRhNTk0YmMxZTAgcmVsZWFzZTI2LW1haW50Cis2Njk5MSAxZWIxNzEyMmI0Y2NiN2RmYzViMTZkYzFmMmM2NDhmMGIzOWVjMmIxIHJlbGVhc2UyNi1tYWludAorNjY5OTIgODBkMmQ0NjdmMjM4ODZkN2Q0Zjc1ZmVlODQwZTM3OTc4OTA4NDY4ZCBsZWdhY3ktdHJ1bmsKKzY2OTkzIGRkZDBmOGNjZTU1Y2QyMDgyYTU1YjliNjJiYWM3OGYwMzg3ODcxNjAgcHkzaworNjY5OTQgMGFmYTczZDRiZjk5NDc4MTMzOTFkMTUzN2EyMzc2YzY0MmFkZDk3YyBsZWdhY3ktdHJ1bmsKKzY2OTk1IDEyNDk4NDBhNDJiMmRhZWEyYTVkNzY5MDU3ZDc2ZTFiNzRiZjI5YjUgbGVnYWN5LXRydW5rCis2Njk5NiAxOTY4NzgzMDMzOGZiYjBkYTY5N2UxNjdkNjE1NzU3MGY5Zjk0Y2EwIGxlZ2FjeS10cnVuaworNjY5OTcgZGY3NDIyNDYwNjYwNjg5MWI2MTJiMTZjMTliMGQxNzNkODVmNjgxYiByZWxlYXNlMjYtbWFpbnQKKzY2OTk4IDU0NzlhODc3YmEyODI2YTBkMDBiOTVjMDFhOWZiOWUwZGMyZGIwY2UgbGVnYWN5LXRydW5rCis2Njk5OSBkODQ3YzRmYjdiMzk5M2I2YmM0OTZiNjY5ZWI0M2FhM2UwM2NhMzU2IGxlZ2FjeS10cnVuaworNjcwMDAgNzEyODRlOTE1NzA2M2JhN2U5NDFjOWRjMDc3YjNmMDhhOGVjMDE2MyBsZWdhY3ktdHJ1bmsKKzY3MDAxIGM2YzMyODQyZTcxZGM0Nzk0MjViNDgzNjdlMzQ1YjQyN2ZlYjUxZjAgcmVsZWFzZTI2LW1haW50Cis2NzAwMiA3MTRkM2MxNDQzYTc0NmQ4ZmFlMzE4NDFiZTJkYzY3OTQ4YTA4MDBlIGxlZ2FjeS10cnVuaworNjcwMDMgYmJhYjExY2RiMTc1NjEwMDY5ZDFmMzEwOThkZTIyYzNjOTcwODkwNSBweTNrCis2NzAwNCAwNTcxNWYwY2Q3ZTc3OTQzNGMzN2U0MmZkOTI2NDM4ZDQ4NTI3ZDhmIHB5M2sKKzY3MDA1IDg5YWU5ZDdkMThkN2JjZGVmNjJhOWYxODhjZmFhZDEyNjAzM2U3NzMgbGVnYWN5LXRydW5rCis2NzAwNiAyYTg1ZTVjOWUxZTJhNzdmNzhiNzNlN2NmY2ZiNGJmNzRmNjVkMGIxIHB5M2sKKzY3MDA3IDYzZjNmMDQ1ZmU0OGEwYzY0YTEyODI5YWVjN2I0ZTE3YzJmN2U3NzggbGVnYWN5LXRydW5rCis2NzAwOCAwYmMyY2QyZDk1OTgyYjMyNTlhYjE3MDRlOGIzNDBlMzJkZTlmNjBhIHB5M2sKKzY3MDA5IDhiNjVkMTNjMTc3YzZiZGE4YzA0Y2U0NmEyNGVkYjM4OTNjMTZkNDQgcmVsZWFzZTI2LW1haW50Cis2NzAxMCAzMWE2OWVkMDlmYmI0MGUxNGYxMmE1M2YxMThkOWQxZDA5NWU1YjQ2IHB5M2sKKzY3MDExIDg0MjBhZjZjMzNlZGQ5MzNkYWE5OWNhZmY5YjhhZGM1YzA0YWI5ODIgcHkzaworNjcwMTIgMmEzODc3MWNlY2RkNWFkMzc0MjE1ZDY4NmUwYjFkNDdhYzY0OGVhNiBweTNrCis2NzAxMyA2NjM0NTMwYTA0ZTAzNDUyMWEyZmQwMDEwNjU5YjY5NTc4M2FiN2RkIGxlZ2FjeS10cnVuaworNjcwMTQgMWE0ODdhYjBkNjViNzQyOWY1ZjE3MDExNzk5MWRjMjA1OTNhOWIzMCBweTNrCis2NzAxNSBiYmUzNzMyMjEyZDY0ZTZmM2IwMDA2NWM0MTFjMDRjMjI3MzNiN2QyIGxlZ2FjeS10cnVuaworNjcwMTggZjY2Njg4ZTY5ZjY2YmY1ZWIyNWRjMzZhM2E3MzMyY2EzOThlNTVhYyBweTNrCis2NzAyNiA0YTc0NTkwZjM4ZGE1YjIwZDRkNTdiYjAxMTliM2MyODYzZWMwNWYxIHB5M2sKKzY3MDI3IGRmMmJiZGU5Njg4MDJkOWNiYWI2M2YxMzdhZThhNWFkYzQ3YzMzYWMgcHkzaworNjcwMjggMTk1Y2Q3ZWJmNjJjZGJjMTU1NmY5ZWE4ZjU3ZTBjZDE2NmE5MGY5MiBsZWdhY3ktdHJ1bmsKKzY3MDI5IDg2MDczN2M5NmU5NzgyYTIxZGM0MGRjOTM1MDE0ZDdmNWEwYWIzOTQgcHkzaworNjcwMzAgYTU3NjhiZDYyOTM4YjlkZjljODVhMmEwYjBmMjNjYjQ2N2YxZTRhNyBsZWdhY3ktdHJ1bmsKKzY3MDMxIDBhMTg4YTJkNTA0ODgyYWEyOWJkZTA0OWMzNGIyNTc4YTQ3ZWEzNDQgbGVnYWN5LXRydW5rCis2NzAzMiAzMGMwYjI2NmFmMDYyYzE3YzY4MTA2NzI3MjY1YmMzNWZmZTZkOTFiIHB5M2sKKzY3MDMzIGU4MGQ5ZTZlMjZiYmQxZjYxNzFhN2UxN2VmZWE2N2YzNTc3NmQ5N2EgcmVsZWFzZTI2LW1haW50Cis2NzA0MCA0MGZkNmVmMGVhYThmMzNiY2VjZTMyMDMyZDIwOTBjY2M2MjYzNTliIGxlZ2FjeS10cnVuaworNjcwNDEgOGJkZThmNTFhZGUxNGRlNDljYWNhMzJiOTA4ZWM5ZDI2ZGQ2MjgzNiBsZWdhY3ktdHJ1bmsKKzY3MDQyIDQwZDhmYjEyOTMwNmFkNGYzOGM4MWIzYmE3MTQzOTNjYjM1OWVmM2EgcHkzaworNjcwNDMgNGI3MjY1MDBhOTY5OWNmZDE5NTM5MzZkMWYzZjFiMjI1MDgzYmU5NSBweTNrCis2NzA0NCA4MDRlNjM2NTgxN2M0YjEyY2MxYWY0YmY3N2RhYTA2ZTk4ZTMwMDZlIGxlZ2FjeS10cnVuaworNjcwNDUgMmFhNjliOWQxMjczOGRmMjBmMDhiYzQwZGRkMDY5ZmUxMGM4MDMyNSBweTNrCis2NzA0NiAwMjFiYzlmODgxMDM0OWRjOGJmZTY2YTg0MmY4ZjIzMjkwM2NlNjUxIGxlZ2FjeS10cnVuaworNjcwNDcgMzQ4NWQ5NTk1N2MxZDJjNTgxZTAxZjEzYjJkNDliYmU2NTJhMmY0YSByZWxlYXNlMjYtbWFpbnQKKzY3MDQ4IDcxMTM5MGQ0YWMyMTM5MGIwYzZkMWRlMjk4MzcyZWYwMzQzNDlkMjYgcHkzaworNjcwNDkgMjRmNjVlMzA5MGU4MGEyMmFmZGU2YTg5MTc0OTE5ODQxZTM1YjkxMiBsZWdhY3ktdHJ1bmsKKzY3MDUwIGJiMTA5YzRiZWQyNzZhMzNlYWFjYzZjMDk0MDE2Y2FlZjFmZTlhYzIgcHkzaworNjcwNTEgYzBhZmM0ZWViYTdkNmE4NDMzNTc1NzljNTJiNzU5NDEyMjVjOGU5YiBweTNrCis2NzA1MiA2YTIwZThjMTc0NWE5ODg4ZmY4YTgwMDcyMGIxZWUxZDk3OGFmMDFkIGxlZ2FjeS10cnVuaworNjcwNTMgYjNkZjU4Zjc2ZTQ5ZDg3ZTBjZjNkOTczNDdjOGQyNzY3MmE5OGRiNiByZWxlYXNlMjYtbWFpbnQKKzY3MDU0IGQyZWM2ZDViMmRiOTcwMWJhMDYyOTUzMjVlODY1OTM5YTY5ZDA3MGIgcHkzaworNjcwNTUgOWZjNTczZmJhZjVlMzRiZGFjZGYyNGU0MzA5YWY4YWEyZmM3NWZjYSBweTNrCis2NzA1NiBlOGMwYTVhNjQ2Y2E2Y2NkYTAzMWViZmFkMDkxNTEzYTI4YmVlOWUxIHJlbGVhc2UyNS1tYWludAorNjcwNTcgZWZlZjVmYzQ1YTlhNDc3MjUwYmVmY2Q3ZGVmZWI0ZWUwNTJiZjhmNiBweTNrCis2NzA1OCBjMzIzMTAyNzM3YmMyM2NiOGZmZTQ5MWZhOWFlM2E3OTY3ZWVhMjRlIHJlbGVhc2UyNi1tYWludAorNjcwNTkgYTVjYTg5NTFiZWYxNzI5YjdmNWQ0ZGI3NjMyMmZmYWE5ZTQwMGFhMiBweTNrCis2NzA2MCBiMGNjY2I1NTk0MWM0MTcwZTE5NWMyZDA4ZjY1MjQwYTNjYmQ1ZmFhIGxlZ2FjeS10cnVuaworNjcwNjEgODA0NWQ1NTk2YjFjOGI5MzM0MDU3MDc0ZTE5YzgyNDY5MGZjNzM1NSBsZWdhY3ktdHJ1bmsKKzY3MDYyIDljOTdiYzg2MTIyYTBmN2M3ODMyMjU4NGFhN2E2YmU4ZTUxOGRjNWIgcHkzaworNjcwNjMgMDZjZjJjZWEzODdiN2U0NTAzZmFiYzk2ZDVkZjhkNTE2MGI4NDYwMSByZWxlYXNlMjYtbWFpbnQKKzY3MDY0IDNlMmRlNDg0Y2UzNDIxN2M2ZGE0N2ViYWMxNDhjYjEwZGFkMmUwMDMgcHkzaworNjcwNjUgOTY0MThmODEyZjA2ODAwZTA3Nzk2Yzc5MzM2ZTZiMmEzOTVkNDQxOSBsZWdhY3ktdHJ1bmsKKzY3MDY2IDdlNDAyNjNkYmZkMzQ1NDk5Mjg1ZmJjOTJmODI0ZjJmNjRiNmYxYzAgbGVnYWN5LXRydW5rCis2NzA2NyA2Y2FjMmUzMDc3YTM0ZDcyYTNlMTgxOWZiNGJiYWI1MDQyY2Y2OGYxIHJlbGVhc2UyNi1tYWludAorNjcwNjggZjMyMzRlNDNlMWZlODBhMjk0YTg1MTU4ODFiYTY5ODAxOGNmNDI5MyBweTNrCis2NzA2OSA5OTA2ZjY5NmI5NDE5NWFmYWYwNTY4ZDFhOGRmOWI5NTYwMjlmNTQ1IHB5M2sKKzY3MDcwIDBkZmRiNTJhYmRmOWY5NTg3YjEwN2ZhMjM4ZmE5ODhhNzI2MjlkZGIgbGVnYWN5LXRydW5rCis2NzA3NiA1NzhhYTQzZGM0MDA0MzA3NTAxOGU3N2Y5MmI2YzMyMWJjZmIzMTNlIHRsZWUtYXN0LW9wdGltaXplCis2NzA3NyA5MWFiNDM1NDQ0MGVmYzgxNDRjNTI0YTMyY2Q2YzIzMzBkNGQwYzM1IGxlZ2FjeS10cnVuaworNjcwNzggMmVkM2Y4OTI2YmI4OTFjOTlhODRkMWMxMGM5MDc0YjBiMTFkMTVkMyByZWxlYXNlMjYtbWFpbnQKKzY3MDc5IDQ1YWM1MTk2ZmE2NzlkZmFlMTk5NGUwODdkMTY5ZjE1NzM1YTI1YTggcmVsZWFzZTI1LW1haW50Cis2NzA4MiAxMTg0YWJjNWY5NmM5NmQ2MTJmM2U5NmQxMDQxYWNmMjUwNTZkOTc4IGxlZ2FjeS10cnVuaworNjcwODMgMDBlNzFjZDg5MTI4NGE1N2NlZjBhOTY1ODU3ZDJlNjM5NDc5NWRkYyByZWxlYXNlMjYtbWFpbnQKKzY3MDg0IDQ1MDQ2ZjA3MjI3YWQzYWYyNzFkNTE3YWYyOGFiZTViMTk2NjhjNDggcmVsZWFzZTI1LW1haW50Cis2NzA4OCBiZDBlOWE5Y2QyODNhNTU0MGFlY2Y5ZjFhMGI4NzViODYxMTllNTZkIHB5M2sKKzY3MDg5IDBkZWM1NGFhNTNlZTc1ZTM3YWY2YTE4MmI1OWJlMDIxMmE5ZjZkYTYgbGVnYWN5LXRydW5rCis2NzA5MCBmODQ5YzU5YmJmZDc2NGYwMjUzZjQ5NTljZDEzNmEwODk0ZDFlZDEyIHB5M2sKKzY3MDkxIDBjOGZhZjZjOGViMjk2MGQ0YWI3MzgwMWJiMWE4MzJkNjc4ZGMzYmYgbGVnYWN5LXRydW5rCis2NzA5MiA1ZjgwMWFkZDIwZmJiYzMyYzY5OWU0NWY5ZWY0YTExYjY4YzEzNDRiIHB5M2sKKzY3MDkzIGYyYmIxMzNlZjUxN2Q0NTBkMDJmYTZjZmZiYmY1ZWVhYTNmZWVkYzEgcHkzaworNjcwOTUgZjY3YjJjOGZhOTNhZDIzMjJkZDI2OWU3YzFhOWQ0NmE2MzNmZTdmOCBweTNrCis2NzA5OCBlNjhlNDJiMTdlNWUzNDE0NDkwM2U5M2E0YzU5MDVhNDZiZGQwNWViIGxlZ2FjeS10cnVuaworNjcwOTkgYTUyOWUzZGM2OTVhOGI2ZWRkZTQ4YmMxZGY4OGZhMDIxMjkzNDNiOCByZWxlYXNlMjYtbWFpbnQKKzY3MTAwIGMwODllYjY0ZWU1NzZlNTdiZGFmMzJlYzMwZThiNmUzMDIwZDkwNDUgcHkzaworNjcxMDEgOTcyYjQwNTQ2ZDc5NTU0ZjNhODk3MWYwZjE2ZWYyOTM4MDA3ZmMyNiBsZWdhY3ktdHJ1bmsKKzY3MTAyIDUwZTc4MjJjOTU4NWZlZjU2ZWQ2NjYxMWZhYzRiODU0MmFkZTNlOTMgcmVsZWFzZTI2LW1haW50Cis2NzEwNiAyM2Q5Y2I3NzdkOWE4MTZhMjU2MmRlOGI3N2ZhZWM0NWMzZDQ4MTA1IHB5M2sKKzY3MTA3IDk4ZjMxNzU2NDYyMDNlZjRlYTM5MGQ0MzQ1NGJiZGU3ZWFiZjM2ZmMgcHkzaworNjcxMDggNDAwZmJjODA1MmFkZWNjMTc2OTI2ODVkYjM1MzM4YjNjYjkxNTE5YSBweTNrCis2NzEwOSAxYmMzZDFiMzlhNGI3OTVlMjY2NTNmN2M2NjllZDAyYWM2MTgzYjJmIHB5M2sKKzY3MTEwIGUyYTQ3MmYzYjc3ZjZjMTBlYTQ1NTE3ZjM5MThjOGVjMTkxOTA4ZmQgcHkzaworNjcxMTEgNWI0Y2I4Y2Q1MDUxZjdhMDEzOTc5YjQ2NDdhYjFhOGI0OGMwMmY1ZCBweTNrCis2NzExMiBhYTZlNjQ5NTk5YWQwOTBkZjkxMmRhNjcxNGQ2ODhkYzMyYmNjNzQ3IHB5M2sKKzY3MTEzIDNhOTQ3NjhhMmE4YmU1ZDA5MjgwNmRjNjhhNWFiMWFlY2IxNzJhMGQgcHkzaworNjcxMTQgZDcxOTZmYjk0ZjI1ZmM4ZGE1Yzk5MzQ4MGQ1ZTA1NTE0MTQ3M2JlNCBweTNrCis2NzExNSA2ZTBhMzYxMDc4ZTUyMTY4YWE1ZWM5MmE3N2MzODliNjRiMjFjYTkzIHB5M2sKKzY3MTE3IDFjMjNlNzAwMTUwNjc0MDQ0YTA2ZWM3MDdjMmFkMWYyOTFjZjYyNjQgbGVnYWN5LXRydW5rCis2NzExOCA3OWM5YWI2NDk4ZmRmYjlkZmZhMzMyNDY0ZmU0ODc1YTc0MTRkZmFiIGxlZ2FjeS10cnVuaworNjcxMTkgOWEzZTkyNDNjNTE4OWJlNjQ1NjAyOTNmYjMwMjc2M2U1NTVjZjE3ZSBsZWdhY3ktdHJ1bmsKKzY3MTIwIDI2ZjAxZWVhZjU0ZTgwZTljZGJiZWMwYjg5YzhmM2VhYjhhYTg3M2YgbGVnYWN5LXRydW5rCis2NzEyMSBmM2Y2NTBjN2QzYWFjNjNjYmJmNjZiZjA1ZjU2YWRlZTdkNzIyODNlIHJlbGVhc2UyNi1tYWludAorNjcxMjIgZjc4NjdiNzdkYzU1NzgxODFkMTk2YjJmZjRkYTNmYjVmMDJlNjVkNyBweTNrCis2NzEyMyA4MzcwZTllZjdmMGZkYzk2N2Q5OWE2YjkyYjZiN2EyZTM3MWUwZjZlIGxlZ2FjeS10cnVuaworNjcxMjQgN2U2M2ZlYjMwZWE1ZGRjNjkwNTk5MzAxOWJlZDA5NWJkMzMzZjA2ZSBsZWdhY3ktdHJ1bmsKKzY3MTI1IDIxMGM1ODVmOTViZWU2ZjQ1OWQxMTM0NjRjZmJiMmM4NzY0ODlmNWQgbGVnYWN5LXRydW5rCis2NzEyNiAxMDQ1MzdhNTQxOTY1MGQzNzk4ZjVhZmQ5MDc3ZThhZTg4M2IzYzI5IHJlbGVhc2UyNi1tYWludAorNjcxMjcgMzI1NjE4NzkyNWQxZTkxZWYxZTMxOGIxOWQyYjNlZGVmOWZlZDc4ZSBweTNrCis2NzEzMiAxNGQ0NDEyZDJiZjg0ODEzMGViOWQ2YjUxYWUwMmFhOGQ5MGUwY2VhIHB5M2sKKzY3MTMzIDgyODA5NDg1OTJiYjJjZGRkOGEwNTQ1NTg5Njk2ZDkwY2ZjMDk0NDMgcHkzaworNjcxMzQgOTc0Y2FmMTY3ZmYwNDUyOTYyYzBiNTMyYTYwYmNkZGE4NTU3NzdmNiBweTNrCis2NzEzNiA1MzRiZTgwNjZjMzZhNmFmYzI2MWI1YmZjN2M3NjIwMGQ1NGRhMWI4IHB5M2sKKzY3MTM3IDhmYWU0NjVhMzk2MjdiNTkwMzg1NDYyZTYwOTVlYjYzYWY0NTI0MGEgcHkzaworNjcxMzggYWM0MmRjOWEwMjAzZWZiMzdlNjVmNzc3MzdmZDE5NDRhOTE4MDMwOSBweTNrCis2NzEzOSA5MmJhMTJmOTMyODIzODRhMjM4YzBmYjA1NjllN2NmNDkxZjAzMmRlIHB5M2sKKzY3MTQxIGQyZjczMjNmYjcwOTY1YmU2MjJhZmQ0Y2M3YTU0MjE4NTA1NzljNGMgcHkzaworNjcxNDMgYzk4M2ZhNjhkNmZmMjU1Y2ZjN2IyYTU5MDUxODljM2E1NTczYzNlNSBsZWdhY3ktdHJ1bmsKKzY3MTQ0IDYyMzhiNmNmNzdmMTA1N2NlYWM1MWE0ZDY2MTdmNTliNDE4MGRmYmQgcmVsZWFzZTI2LW1haW50Cis2NzE0NSBlYTg3ZTg4MTQzNTliMzhlNzcxOGJiMDA4YzUwOTljZTFhODhjZDdjIHJlbGVhc2UyNi1tYWludAorNjcxNDYgODJjY2M3ZTc3ZWM1NTczZDU2OGQyZjUxNTZkNWZkNWM5MGQzZmYxMCByZWxlYXNlMjYtbWFpbnQKKzY3MTQ3IDQ3OWRhZDlkYzk2YzFlOGRjZjYwNDZkY2M1Y2JlOWUxNzgyOGY2NGIgcmVsZWFzZTI2LW1haW50Cis2NzE0OCAxZjdmNDFmMjBhYzU5NjY2ZDg3N2RmZGM5MjZiYzJkMTUxMzBiMTBlIHB5M2sKKzY3MTQ5IDlkYTUyOWEzZmQ1YWU3NDJkMjhhZWU1ZWYzZjgxNzE4Mjg3OTljYjMgbGVnYWN5LXRydW5rCis2NzE1MCBmYWNjYjk4ZDk0NzRlM2MzNTA0MDgzZjM0N2M5MWEwNzJjYjgyZDY3IHJlbGVhc2UyNi1tYWludAorNjcxNTEgYWNiNzhlY2U1NmE5ZTEwMmZjOWU2NzYyNWIyZTc0ZDljYWM1NTFjZSBweTNrCis2NzE1NCAzMTczNzE3YTg5ZjMxN2NhNzEzODgyOTExMTIzODI4MjhkMDIyNmUwIGxlZ2FjeS10cnVuaworNjcxNTcgNTcxOTM4MDU0NzIxZGIzZmZmM2U5YjA5M2E5ZTUzYjFhOTcwZDRhYSBsZWdhY3ktdHJ1bmsKKzY3MTU4IDAwOGFjYjBjYmJmYzI5ZWU4Yzk0ZTJkMDBlYzVlYzJkMDA4OWIyOGUgbGVnYWN5LXRydW5rCis2NzE1OSA1ODIzNWI5ZGMzYWUyNGM4OTdkYjFmN2RmOTc5YTQ4NTU2ZTAzMmVlIGxlZ2FjeS10cnVuaworNjcxNjAgNmYwNjU3MWE4YWVmYWZlOTY3MDkyNTdiN2YxNzlhNDFiZjhiZmY2OSBweTNrCis2NzE2MSBkMGFhMTBmZjI4YzY1NzAwNjU3MGIzNWM4Mjk1ZDVhNTQwZWE1OGZiIHB5M2sKKzY3MTYyIDIwYTQwODk0NTM5YTQ4YTFhN2ExZmU2YWI0MmM1ZWRiNWYwNzRkZWMgbGVnYWN5LXRydW5rCis2NzE2MyBkMzRjY2IwMzQxZWE1M2FhODZiYzM3MGRhZDE2NDRkMGYxMDk2MGVkIGxlZ2FjeS10cnVuaworNjcxNjQgZWY4ODBlMmNjNTY4Y2NjZjk4YjhjOTQ1MzJlMDM2YzU3ZTJjYjc2YyBweTNrCis2NzE2NSA3MWY1M2QzZDE1NTEyMWNmMDNhOGViNzcwODkwYzNmMjFjMDU5MjI0IHB5M2sKKzY3MTY2IGJjNGY3NDJlMmMxZDUzODQ0NTFjYzVkY2VkNWIyOTUyZmNlMjUxMWQgbGVnYWN5LXRydW5rCis2NzE2NyBmMDdiODJhMzIxZmUxOTA1NTM3OTg0N2Q1NTdlN2I4ZTVkYTk5OTMwIHB5M2sKKzY3MTY4IDc2ODMyYzA5ZDJmZGMxYjA2OWViZjBmNjFhMjZjNzVhNDVmZDIzNmUgcHkzaworNjcxNzEgMmUwODU3YjBmYzY3NTc4NDRhOWUwZGRiNTY3YmE0NWNkZjcwOWUyNiBsZWdhY3ktdHJ1bmsKKzY3MTcyIGNkZGQ5MTgwYjhjODgwNjIyNzA2YWQ3YjQ4ODlhYmVhZDU1ZDg1OTEgcHkzaworNjcxNzQgMjExMTUxZmRjOTI0NDQyY2NjM2NhY2U1ZWMwZmNhOGJkNDFhMzBlNyBweTNrCis2NzE3NSAyYmIxMmNhMmZmNDRlMTFiOGMzZGNiYTg0MjQ2NTdhZjllYjM5NjdjIGxlZ2FjeS10cnVuaworNjcxNzYgYzJhNzViYTQ2ZjE0ZDlmYzI2ZDRhZWM3ZTZjOTRlNTU3YmQ2YzA0OCBsZWdhY3ktdHJ1bmsKKzY3MTgwIGFlODNkNGFhM2UwZWQ5NzQzY2MwM2ZiM2FjOGE5NjQ1YmE4NjA2YjggbGVnYWN5LXRydW5rCis2NzE4MSAyYjMzNDBiNWNhMzg2YjUyNDY3YTViZWViM2ZhZjU3OTAwY2I5MDlmIHJlbGVhc2UyNi1tYWludAorNjcxODIgYjI0ODFhMTUzNzYzNDhmZjgxYmNmMWNkMDA1MTdmMzlmNDdiZTlkZCBweTNrCis2NzE4NCBhY2Y2OWUwNzliODQ2YjVjM2Q4NGU0MGU3OWE5NGVjMWJhOGZhZTM5IHRsZWUtYXN0LW9wdGltaXplCis2NzE4NSA1NGNiNTAxZjYyMTVhYmRjY2Y5ZTQxMTU1MmEwYWZlMzM2NGJhMjczIHB5M2sKKzY3MTg3IDIxOGE5ODk4MTE4M2QyYTNjN2YzZDE1ODc5ZTBmYTExYzA5Mjg0ODggcHkzaworNjcxODggNjNlYTIyYjU4ZDU0MjU5MjE5NjZkZjA1OWNmMjJiM2VmZjhjMTllNCBweTNrCis2NzE4OSA3NDQwYTMwYTJmMTM0MDNhNDI3ZTEyMGNjNmYxZjc4ODBiYWUyZDVkIGxlZ2FjeS10cnVuaworNjcxOTAgZmI3MjUzNjZmOWFjOGJlZDRlMzJkNjZkN2ViOTIzYTU1NWM2ODI4YSBweTNrCis2NzE5MiBiMDcxM2ZiYzUwNjFiYWEyNTJhNDQwYjI4ODY1NzRlOTJjZTA5ODdjIHB5M2sKKzY3MTkzIDgxMTkwY2IxY2FlMjkzMDZhMjI4MmQyZTE2YWM0NTBkNjVhZDYyZTQgcHkzaworNjcxOTQgZjJiNDNkMjgyNTFkY2RjMDIwYjhmZWY2MzgzZWQyY2E5YzZkODY2YyBweTNrCis2NzE5NSAwM2U3NGRkOWNjODNmNTkwZjg1ZDkwMjVhMjk2OTM2NmQ2YzU3NzM3IHJlbGVhc2UyNC1tYWludAorNjcxOTYgOGQ2ZTI0OTk3MjZhNTI4MTNhMTMwMTlhMDZiMjc4OTg5NzFhNTBjOSByZWxlYXNlMjQtbWFpbnQKKzY3MTk3IDYxYTMzMDUwNDQzZDIwZjBkMjRhZjkyMjc5MTI4MDU2ZjllOWE4YjYgcmVsZWFzZTI0LW1haW50Cis2NzE5OCA5NzgxZWVmMzE5MmM2YWIyY2NiMjVjZjhiZjExODU2ZTA5ZTBmZTIzIHJlbGVhc2UyNC1tYWludAorNjcxOTkgMjAwYzhhYWIxOTE3NmZiZjcxODYwZDQ3MDI2YmRiZGE2NGE3ODYxMiByZWxlYXNlMjQtbWFpbnQKKzY3MjAwIGNlNzIyNGNmODdiYTIwZjQ4YzBmZTBjOGY5ODczMWE5NWVjOTY1ZmMgcmVsZWFzZTI0LW1haW50Cis2NzIwMSAyMzI4NWZmMTBjMDRkNzkxYjRlNzAxYTRkYTcyMTE1OGQyZDBkNGQ0IHB5M2sKKzY3MjAyIDlhMTNlOTY2ODg5Y2I0NGM4N2Y2ZjgxNDhmNmQxZTIxNzAwYTE5NjEgcHkzaworNjcyMDMgY2QwOGIwMGFjZDZhMWNhNTM5YjAyNzAwYzE0NTY3NTg4OWI5MGM4NiBweTNrCis2NzIwNCA5ODYyOGRjNzMwZGFlNzcwZjQxODEwNGY4N2I0YjMxYzlhNDBkNzBmIHB5M2sKKzY3MjE2IDQ5NGJiOTY3MTM5MTc5MDVlY2NlZDRkNDM5NmJkOWJiMTM0NDZmYzcgcmVsZWFzZTI1LW1haW50Cis2NzIxNyAwNTlmMTE2YTI4MTk0Zjg4MzZiZDE5ZDljYjc3Y2MyMjRlNmJkMmE3IHJlbGVhc2UyNS1tYWludAorNjcyMjQgYzI3NzJjYmZlMTgxZTFmM2E5YjYyYWJiZTRhN2MzMjcyNDQ3NDZiNSBsZWdhY3ktdHJ1bmsKKzY3MjI1IDE2NjAwY2FjZTMxNWRjMmMxZDcyZjM0MGI4NzQ5MWIxMGUwNjM0ZjQgbGVnYWN5LXRydW5rCis2NzIyNiAwYWQwNzA3ODQzM2EzODc5YzUwMDYzMDZhMjVlZDc2NTk2YWJiZmM3IGxlZ2FjeS10cnVuaworNjcyMjcgNGM0NjMyM2FmYWI2Zjk5Y2JlOWYzOTI4NmQ4Yzk1YTkzNjU3MDdiZCBsZWdhY3ktdHJ1bmsKKzY3MjI4IGRiZTRiMTZmODA0YmE3YmQxMTE1M2E5MWE0YjU2ZWIwNzE1NTE1OWMgcmVsZWFzZTI1LW1haW50Cis2NzIyOSA0MjBhNWU4M2UwMmU3YjRjMTc1ZWE3NjY4ZDYyM2Q0OWZhY2U5ZTQzIHJlbGVhc2UyNi1tYWludAorNjcyMzIgYzcwN2RhMzQzNTU3OGNkYmE1MDI2YjUzMDFjZDM1Y2E0YTNlODhiOCBweTNrCis2NzIzNCBlNzRkZDU0MThhMzNmYjAwMGI5MzM4YTlhMzVjNGRkNmUwMDJkYjM0IGxlZ2FjeS10cnVuaworNjcyMzUgYjQyOGU4ZjZiMTQzNDYyM2Y2ZTFkZmZlODQzNDQ0YWQ0MDIyNTBlMSByZWxlYXNlMjYtbWFpbnQKKzY3MjM2IDdkZTFiMmFkMzgwNDg1ZDBlOTcyOThjNmNiNDljMjJjYTgyYTQ3OGQgcmVsZWFzZTI1LW1haW50Cis2NzIzNyBiMGZjYjE3ZjdlZmE4MTUyNmQ2ODcwMGQ0YTc0ZGNhYTg5ZWQ5NDFkIHB5M2sKKzY3MjQxIDFlNDRlYTUxNmUwZTcwYzVjYTUyZDNjM2I1MThjNTAyOGZiNmY4M2UgcHkzaworNjcyNDIgNjIwYTM0ZGMxMGY5MDY2MzdjZWM1MDZjZmNhOTBiODVkNWZmMTVjYSBweTNrCis2NzI0MyA3NTU5YTMyY2MzMGVmOTYwNTRlMGFjZGQ4OTgyMmIwNjlkNzk1Mjc3IGxlZ2FjeS10cnVuaworNjcyNDQgNjc0ZWY0YTdjZDczMDE3NWY1ODNiN2MzNzA0ODZjMTFlMGVmZWQyZCBweTNrCis2NzI0NSA0YjMyMTk5YThhZmVjNTc4NWRkNmM5ZWI3Yjk2MGQyYzM4MGRlN2UzIGxlZ2FjeS10cnVuaworNjcyNDYgMDgxMzVhMWYzZjVkODg1MGRjNTVkODNlMzZmNzk3OWRjY2IyZGE2NiBsZWdhY3ktdHJ1bmsKKzY3MjQ3IDczYjlmZTFjNTM5NzNkM2VmZjM3YTY4OGRiOTIxYTQwNDU0NjBkOTggcmVsZWFzZTI2LW1haW50Cis2NzI0OCAzNTZjM2UxOGRhNWU4NDhhOWY5OTIyYjY3MDdkNzNkZjdkNjNkZDRiIHB5M2sKKzY3MjQ5IGE1ZTQxYTc5NDk1NDQzNzlhZmU3YjEzMmU1MTljOWIxOGNlOWM2MTcgcHkzaworNjcyNTAgZmM0NmFiZjE3MGZkZDhkNzVjZDljNmI5OTYzNDFiMWJkNWYzYjBkZSByZWxlYXNlMjQtbWFpbnQKKzY3MjUxIDkzNmE2ZTYwZjNlYjdhM2JlNDdmYmFjMjY5NWJhNDZmYzBkNTBlNTEgcmVsZWFzZTI1LW1haW50Cis2NzI1MiBmMzlhY2ViY2U2MjhiZTFmOThjOTEwOGIzNjJhN2UxNmYxMzc0Y2U5IHJlbGVhc2UyNC1tYWludAorNjcyNTMgZWQwZGFjMjZiMzk2ZGEzZmI3NzY0NDlhMGU1NmVjY2M0M2U0OTg3MSBweTNrCis2NzI1NiBlMmQyYTdhNmU4MzE1ZGM4MjY3YjM2YzQ4ZWY3MWMwZGU0MmViYTVmIHB5M2sKKzY3MjY2IGVhNmVlMjgyMDc1M2JjZWZlZTUyZGI3OTA2MDFmMDhlNmYzOTVjYmIgbGVnYWN5LXRydW5rCis2NzI2NyBkNmU2Nzk4OWZmNTE0OTczNjJmZTNmZGI3ZGU4ZGFmOWIwZjdiYjBjIHJlbGVhc2UyNi1tYWludAorNjcyNjggYzZkMTZiMmE4ZWZhNGQ1NjI2YWRhZThlMTYxNDkxNjJlNzkyZWEwZiByZWxlYXNlMjUtbWFpbnQKKzY3MjY5IGNlNjkyMzU0NWU1ZWMzYTYzOTBkNjYyNGFkZDg0YTYwNDBhOTdhZjYgcHkzaworNjcyNzAgNmQ2ZTM4Y2ZmMjQ0MGUyZjlmZmQ0NmUxZWUyNTUwMWQ2MDkyODYwMiByZWxlYXNlMjQtbWFpbnQKKzY3MjcxIDBjMGJiMTA0ZWM0YjdhN2Y2YmRiOTk5MmM1Nzg2M2JiZThkNmEwZmUgcHkzaworNjcyNzcgMmQ5YjE3M2RjM2EyZWI3YTgwNmU1MWIzM2M5Y2E5NWNmYWU4MzdiMiBsZWdhY3ktdHJ1bmsKKzY3Mjc4IDE1M2ZlZDdjN2I2MGI5MGQ1ZTk0NjYzODkyYzllZmVmY2M4MTA0MTAgbGVnYWN5LXRydW5rCis2NzI3OSA3MWE1MGU2NzVmYTFlNDQ4YWVmOGI2ZGYyZTViNDM1NDBhMWU3OWMwIGxlZ2FjeS10cnVuaworNjcyODAgN2JiMjA0NjEyZmM2NzZiYmM3ZWZlMGVhNjM0YWE0OTg1OWFiMDVhNiByZWxlYXNlMjYtbWFpbnQKKzY3MjgxIDhiOWJkYTViOGQ0YTlkMWJhM2E3YTI5YmEzZWZmN2JiZDUwNDhkZWIgcHkzaworNjcyODIgNzIzODk1MGQ1YzYwNDAwNzdkYTcxNWQ4MWQ1Yjc0MWM2M2MyYzczOCByZWxlYXNlMjYtbWFpbnQKKzY3MjgzIGJmNmE1YmU4MjdiNGMyZTZkMGNhOWNiNjcwOWU3MDgwNTgyZTQ4NmEgbGVnYWN5LXRydW5rCis2NzI4NCAxZjdiNmM0MGM5OTA4OWE2NjViMTlmMTc5MzZkMzdiY2NiMDk5OGMyIHJlbGVhc2UyNi1tYWludAorNjcyODUgYTkzNzZhZGMyODRjZTc5MGMxMDMyOGIzNmE3MDRlZDZjYWM5NjkyMiBweTNrCis2NzI4NiAwNzIyZDcxYWZhMmYyODZlZTQ1MWY0MjkxMzc5ZDIxMDM5M2QyYTk0IHB5M2sKKzY3Mjg3IGE0NGNlNTU1NmE3ZmM2MzAyNzkzNDkxYWExYWRmZmFlOTMzYjRlYTYgbGVnYWN5LXRydW5rCis2NzI4OCBmMDRkZjEwZTIwNTAxMWU4YmNiNGNiNjEyNWVhOGQ0NTYyOTA4MDczIHJlbGVhc2UyNi1tYWludAorNjcyODkgZmZhZTU4Mzc4NTFjYjRhYWIyYmM0YzdkMjhkMDQyOTMwMWRmZTI0ZCBsZWdhY3ktdHJ1bmsKKzY3MjkwIDFlN2QzMjIyNzRjODNlYzc3YzlmNDM4MTZlZTJkMDhjZTFmNTg1NDEgcHkzaworNjcyOTEgN2IxODc5OWU5NTE5NDU4Mjk0Yjk3YTRlYjE2Y2Y4MWRlNThiNzJkOSBsZWdhY3ktdHJ1bmsKKzY3MjkyIGZkYzkzMzk1MTk2NDZmNWNiM2FhYjkwMGFhYjMyN2Q4NDNmYWJlMzEgcHkzaworNjcyOTMgY2FjYzAxOGZhMzQxYWI1YzU3OTZkNWVmZjYyYmZkZDkyYWQwMGI2ZiByZWxlYXNlMjYtbWFpbnQKKzY3Mjk0IDA4OGZkYWRmOTYwOWQxOTNlYjEwZjhhNDBmMDliNTBkZjkwMWZmOWMgcHkzaworNjcyOTUgYTI5MGE1MWZmOGUyN2Q3MmI4ZDFmMWZiMzBiOWFlYzc2MjYzOWIyZiBsZWdhY3ktdHJ1bmsKKzY3Mjk4IDJkYTNmY2Q0OTM1ZjE1NGY5NDE4NmIzNWMxZTkxODAyM2UxM2JmZTAgcHkzaworNjcyOTkgMmNhOTY0ZDcyNGQ1ZmY5YTE2NzQ2NzQ1MTliMzQzNmQzODAxYzFmYiBweTNrCis2NzMwMCA4NDEzNjlmMzczMzQ4NjFlOTAzZmZmMzdhY2U5ZjFiYzE3YjgxNTlmIHB5M2sKKzY3MzAxIGNiODAzOWQ4MmFmM2YxNDBmOTZjYTEzMjE5YzBhNmYxY2YyYWI4ZmEgbGVnYWN5LXRydW5rCis2NzMwMiAyNDY0NTg3MDc3OWFiOGNjYTM3ZWFiOTY4YWQ0MTEyNDVlNzJjM2ViIGxlZ2FjeS10cnVuaworNjczMDMgZjQxY2IyMDZkMDYxZWQxMzU4Njc4ZTQwMGMxOThmYzY5OWYyMGZkMSBsZWdhY3ktdHJ1bmsKKzY3MzA0IDg4ZmY0NWU1OGU5NGI2YmE2NTUyZDg4ZGYyNzYxY2M2NmUyNGVhZjcgcHkzaworNjczMDUgZGMxZGI0NmQwYTQ0YjliOWEzZjY4YjQ2MDBkYzAxZjdjYWI1Mzc5ZiBweTNrCis2NzMwNiA1ZmZkNjdkZjhjOWYwODE5ODYwY2EwYjVmMjM4ZWZkNWU2OTBkYjQ2IHB5M2sKKzY3MzA3IGVhZGU0N2RmYzFlNDcwNDc4NjVkNWNhZTFjNGI1Zjg4NDM3NzFkNzAgbGVnYWN5LXRydW5rCis2NzMwOCBmOTVmZjk2ZmQ3OTJmMmYxZGUzMWU4YjQ5ZDc3MTg2NWM4MDdhODY2IHB5M2sKKzY3MzA5IGJhYzA0MGI1ZWYyMmE0MjQ0NWU2NDhkOGU5NjYxNGNkZjJhZTM2MDIgcHkzaworNjczMTAgNTRlNWQ4NTNiMGRlYzdlNzRlZjMxMjY4M2FmYzFmMDUwNzU2NGY2YiBweTNrCis2NzMxMSAxNTlhMTFiMWQyNDQ1MGE0YTUxYTQxZTg3ODkzNjQ2OTI2NTVkMjM3IHB5M2sKKzY3MzEyIGU4M2E2MGM2OWQ1M2Y1NTUxYTMwNmU3N2E2ZDM4ZTliMTE0ODU0OTYgcHkzaworNjczMTMgMzRmYjY2NmZmNTJmNDEzNGYzMmVlYTY4NTk1YWU2ZDZiYzM4YjAwYyBweTNrCis2NzMxNCA3YWFhM2FmZmVjYzE1MzJlMTEwNGJjMTdmMWQ4NTliOTUxNTczYWJiIHB5M2sKKzY3MzE2IDM0YmMyMjc5ZGM1NmRmZGFiMWRhMzI3NmE1M2MyNjFmOThhNWEyMDQgcHkzaworNjczMTcgZWRhNDY3ZDY1YjY1ZWZiMjExYzNlNDQ3NTM4YzExODI2MWIxZTU5NiBweTNrCis2NzMxOCAyMzI3ZGQ2ODQyMWNjZmZjMDA1MzhiN2RmN2YwN2Q4N2RjNzZmODgyIGxlZ2FjeS10cnVuaworNjczMTkgMzI1MGZiNzFhOWUwOGMwNmE4NmVhYmYyYjE1MGFhYjlkM2JkYTUyOSByZWxlYXNlMjYtbWFpbnQKKzY3MzIwIGI2NGQwNTNhZmQ4NGRhOTE0MDI5M2NhODU2NzlkMDFjODI2ZDhhYzQgbGVnYWN5LXRydW5rCis2NzMyMSAwYmNhZmE2NGVjY2I0NDM1N2RhY2FiMzU3ZTU1NGFhYzdhOWI3OGQwIHJlbGVhc2UyNi1tYWludAorNjczMjIgZjQwM2Q5NDE1N2IyMTBkY2Q5MzhkMmM2MzNlYTQ0YzExZGY2YjYwNiBweTNrCis2NzMyMyA3ODQ2ZmU0OTUyMTI5MDBkNjEzNGE4N2VhNDRiYjhjMWQxZmQ2MTdjIHB5M2sKKzY3MzI0IDBlYjVhZGQzMTYwYTI0OTA5MDEzN2VjYjIxY2FjY2Q4YWYxMzBhYzEgcHkzaworNjczMjUgNmFlZjI4ZWJiZDZjMTE3NGI4NmZkODUwYTdlMmQ2MmI3N2M2OWZkOSBweTNrCis2NzMyNiBkYzRhY2Y3NTMyOTYyZDNjOWI4OWVjNDA5ZWVkZjljMjI2N2Y2M2Y5IGxlZ2FjeS10cnVuaworNjczMjcgYjE4MGIyNzFhN2IyYjQ0ZmQ3NmY0MmRjMGVlMWE2NGVkZmExZmI1MCBweTNrCis2NzMyOCAzMWQ4OGZmZmI5OGExMDRhNDgzNDk4MjM2MzliYzFjM2JmMjgzMTJmIHB5M2sKKzY3MzI5IDhmMGExNzVmMDRiZWFhZDVkNDA5OTAyNjY3NTNmZDYzOWNmMDcwNTUgcHkzaworNjczMzAgM2YyZGRiM2RkMTQ3YTViMzI3MjY2NjA5ZjhhOGEyYzg0NGZkMDhkZCBsZWdhY3ktdHJ1bmsKKzY3MzMxIDJkOGMxZWE3ZjhiN2VjNDVkOGI5MjgxMjJjYjEwYTMwODFlMDFhZGUgcHkzaworNjczMzIgNWUyMDA3ZmEzY2Y4MmM2YzRjNGQwZDQ5NGZhMmIyMjYzZjlkMGIzMiBsZWdhY3ktdHJ1bmsKKzY3MzMzIGEwZjRkNDVmZDQ0Y2Y2ZjE4NzljOTUyMjE4OGI5MjU4N2EyZDM4NDEgcHkzaworNjczMzQgYTQyMjBjOTJmN2NjZjQzMzAxNjZjZTZhZTA1MzdlYzAwODMyMDE5NyBweTNrCis2NzMzNSAyZDk3MDY5MDEyNDE3MTc1YTMwODE1YjUxZWYwMDdjNzc5ZmI2OGRiIHB5M2sKKzY3MzM2IDc4OWEzYWIwYWU5ZWE3Zjk3OTRhZDgxMGU3ODQxNTMzNTM5MmY0ZjQgbGVnYWN5LXRydW5rCis2NzMzNyBjMDA5ZjAwYTQ1MGZkYTc3NGIxOTgyYjVkMjc2ZDEwMzM1ZDYyMzkxIHB5M2sKKzY3MzM4IGI2YTgyNDU5OTIwY2VmMGEyMDI5MjdjMzE1ZDVlMmVjYzZhNjU5ZTYgcHkzaworNjczNDAgMTMzMjFjYjJkNzUyMDMxMmY4ZDUyMjM4MWUwOTdhNzBhMTIwODI2OSBweTNrCis2NzM0MSAwMzBhMTUzNjllYWM3N2NiM2JjMjY4YzhiYWUxYWQzYzBlNjM3NjZkIHB5M2sKKzY3MzQyIDVmNzA3MDZhOGU2NzE4ZjFjMjIyZTBiMjRkMTA5NzJmMzliNjMyMmIgbGVnYWN5LXRydW5rCis2NzM0MyA1ZmVjZDFlOTUzMjQ5NzkwZDNiYzk2MzJlNjhmMDEyZjcyNjU4OWUxIGxlZ2FjeS10cnVuaworNjczNDQgNWQ5YmU2NWU3ODkxZjcyMDQ1MzlkNDUwNjY2YTUzYmNiNTY2M2QwYSByZWxlYXNlMjYtbWFpbnQKKzY3MzQ1IDYzMGMxNzRiNDY1ZTk4MTY5YzQyOGU5ZmUzNTllNjU4N2I3MDU0ZTQgcHkzaworNjczNDYgN2MyYjFiNTJmMTM0MjhmOTU2MWNkMWUxNTY2MTA2YWRhZmRhZmJkNyBweTNrCis2NzM0NyA5M2QyZGQ2NDFiNzAxOTQzNGM5Y2IxZjJjMTA4ZTRhYmNiNzlhNGEwIHB5M2sKKzY3MzQ4IDhhM2VhYzdmOWNkNjQ5N2ViMzVkZTc3YjM0ZjY5NGJhMTYwZDVmZTYgbGVnYWN5LXRydW5rCis2NzM0OSA1M2ExMjdhZWE1NmU5MzU5NzMxNmVkZGFjZjc2ZmE4MzNjNWUzMTMzIGxlZ2FjeS10cnVuaworNjczNTAgYzlkMGQ0ZGE5YWM5N2RjNjk3ZWNkNWYwM2ZmYjgyMzFjZWYyNmNkMCBweTNrCis2NzM1MSA3YmJjYTI3ZDM1NTllMjdlZDg2ZDU4MGViODU5YTVkMDRmMmZjZjc3IHJlbGVhc2UyNi1tYWludAorNjczNTIgNzVlOTkyMDM1MWYyNWUxM2QxYTI1NjgwMjZjN2U1ZDk2M2UyMTEyZiByZWxlYXNlMjYtbWFpbnQKKzY3MzUzIGU3MDRlZWRkNzdkY2RlN2EzMzE0YzVkZjVlYmZiY2E4ZmRjYjI0OWYgbGVnYWN5LXRydW5rCis2NzM1NCBkNzMwM2FiY2YwNjkyODJiZjI0ZWVmNzQxN2M0Mjc5YjM2MGVmMjg2IHB5M2sKKzY3MzU1IGNhNjczYmJkZTFhM2Q4MWE1YjQ0YTJkMGY5N2UwNWMzY2VjMWVjNGMgbGVnYWN5LXRydW5rCis2NzM1OSAyNDE2NTAzYTMwNzhiNWRmMWNmZTgxNjAyZWE3MDg1YTE2NTE2ZTE5IGxlZ2FjeS10cnVuaworNjczNjEgZjFiYjI0MWJhZDI0YmJmMDYyNjI4Nzg2ZjUyYWRkYWRiMzY3MjdmMiBweTNrCis2NzM2MiA0ZWFiMzQwMTYwZTBhMjJjZmZhZjM5MTI1NGJkZWFhYjhjMjc4NTlkIGxlZ2FjeS10cnVuaworNjczNjMgMWU5MTlkMzRjOTgyNTE2MWI4NDkxMDJiNDczZDhjMDA3NmVjMjQ0MCByZWxlYXNlMjYtbWFpbnQKKzY3MzY0IDlmZWFhNmExYmYyYzIyYmFlMzFhNzRlZjg2ZjYyZDMxNjhkYTRlYzEgbGVnYWN5LXRydW5rCis2NzM2NSA3NTFhOGVmYzVkNDY2MmFhOTJmNzMzMTgyOTYxMzZkNDM3ZGE5MDdhIGxlZ2FjeS10cnVuaworNjczNjYgOTk1OThhNjFjYzM1ZmQ3YWYyMmU4MjQxNWU5ZGFlNWY0ZmI4NjdlNiByZWxlYXNlMjYtbWFpbnQKKzY3MzY3IGMzZjQ5YWRhYzJmZTY3ZTE2YjBjZmU2ZjQxOTJhZTAwNGYzOWZhYjMgbGVnYWN5LXRydW5rCis2NzM2OCAwNmZiNjQzZjY1NTNjNGY0YjM2ZjM4ZDhmMzczMTFkNDg1NmVkOGNjIGxlZ2FjeS10cnVuaworNjczNjkgZTQ5NzYwOTA5ZDJiYTUwNmJkOTMwYjc0MDYxOTc3N2FlZDc5YWM2OSBweTNrCis2NzM3MCBiNzFjYzAwM2VmOWY4YTUxNTBiZTg2YjhjYzNiODZkMzY3ZDFiN2Y5IGxlZ2FjeS10cnVuaworNjczNzIgZDY2Njg2ZWIxMWY2MzFhN2Y0ZDQ1MTZlMmRiODU0NDI1MTJlZjFlNiBweTNrCis2NzM3MyBmZmFkNmMwZjI1MmViMjA4MGIyYWY2NjE0MWE4MDQ4NTFkMTgzMDFjIGxlZ2FjeS10cnVuaworNjczNzQgOTZmMzhlMzU3MTk0ZWM2ODdmYTQ0ZjBjMmU4NTEwNjAxZDlkZDMwMSByZWxlYXNlMjYtbWFpbnQKKzY3Mzc1IDQwYjcyNzdlNjY1ZjAxNDUyZTliY2U5Njk2NzZjNDA3MmQ0ZWQ2OGUgcHkzaworNjczNzYgMGQxMGQ1YWIyODQ0MGE5NGI0MThkNTIzNzkwZWNmN2ExZGUzZDAwOCBsZWdhY3ktdHJ1bmsKKzY3Mzc3IGYzN2JmNTVkYjQxNmNhM2NjMGRlODEzOWQ5NmJkZTJmOGMxNzQ5MTQgcHkzaworNjczNzggNmMwODcxZjBjN2E2OWQ1NDJmZjUxMTAyZGQxOTFjZWY1Y2M3NjI1YSBweTNrCis2NzM4MCBkZmVkYTBkM2Q2MzZkNDAxNzNhNzFjZGEzYzAyMzMwNTU4NDYwMDY3IHB5M2sKKzY3MzgxIDRjZjAzZTE0MjAwYzg5ZDA1NGQyODViY2U5NThmZWFmMjY4NTVhMTMgcHkzaworNjczODIgZWZiNDlkZjBkODk5ZGY5ZDJhMjlmNjYwNTFjYWJjN2NlNTA2YzgzOSBweTNrCis2NzM4MyAzNTI4YjVjMTY5Mzg3OTliODk1YzMzN2IyMzZkYTg3YmU4NThiY2YyIHB5M2sKKzY3Mzg1IDMwZDAxYTVmNTE3ZWQ3YmU1MTI5Mzc3YzIyZTYzOWVmOGUwZmU5OWQgcHkzaworNjczODggMmQzZjFkMGMyYTEwZWNkNTdhYTg4MzgxM2U1N2UyNDM5NDFjM2JiOSByZWxlYXNlMjUtbWFpbnQKKzY3MzkxIGQzN2I0ZmU1MTMyODc1NDFkZTViODk3NWNhODk3NjdhOTQxODVlOWYgcHkzaworNjczOTMgOWZkOWNkODUyNjMxYWQ2ZjMxMzc3NzNhYzEyN2E2NjlmYjJkNWQyOSBweTNrCis2NzM5NCA2OGYzYmViN2VlYWRmMWIwMDE5NTkxZjQyMWU4NGUzZDMxZjc4ZWE3IHB5M2sKKzY3Mzk1IDczODk1ZWFkYThiZDFiMjIzMjZmN2E5MjA3NTNlOTRkYjZjMDEwYzcgcHkzaworNjczOTYgYTBjYmU0MGRhYzhmM2Y0NzVjYjdjZWE5MGY2OTQ0MjM4YTMyNzM5NSBsZWdhY3ktdHJ1bmsKKzY3Mzk3IDU2ODRjZTk2ZTYzOWY3ZWUwOThmMzNjMGVkNGZmZWY0NmJkYzJkYTkgcmVsZWFzZTI2LW1haW50Cis2NzM5OCA4NWIxZGU4NTVhMTNmYTRhZmYyMDU2MmFkODYwMTk5NWFjYTY5NDIxIGxlZ2FjeS10cnVuaworNjc0MDEgZGViMzA2NjljMzU1YzI4YTFhNWI4YWE1NjY3YmU3ODg5YjgyNGEzZSBweTNrCis2NzQwMiA3OTdiZDMzM2VmNmJhMjJlOWYzYWU4ZjA5ZWZjYjFlODMyMTY5NGQ4IHB5M2sKKzY3NDA2IGEzYTVmNjQwNGFkNWJhM2NlMTNjZjZmM2RjZmE1MjQ5NDRkOTQ4NjkgcHkzaworNjc0MDcgNWNiYzNkZDQ0OTE2MTA4NTNkMzE4OTE5M2MyNjkzNjViNTc1OWE1NSBsZWdhY3ktdHJ1bmsKKzY3NDA4IDBhOTk0YjMyZGU5ZmU1MTYyMGI0NzFhZDQ3ZmQ4NjU3YmJhYzRmMWYgcmVsZWFzZTI2LW1haW50Cis2NzQwOSBmODA0NGI4ZmY2ZWVlYmJhZmJjZWQwNTc5NTg5OGY1NTYxYzExYWJlIHB5M2sKKzY3NDEwIDhiMTRmYzVlNWYzZjVkMzljMzQ3MmZkMWIyYTliNDg4YTM2YzJmOWYgcHkzaworNjc0MTEgMzk3ZmJkNmMzNDcxYTMxMDAyY2UxMDIyMDhhMWE3ODZjMzBkNDlkOSBsZWdhY3ktdHJ1bmsKKzY3NDEyIGM1NDY0OTdiNDIxYTFhMmM1NjM0ZTExNWZmODZmYmQ4ZWJlNTMwMDcgcmVsZWFzZTI2LW1haW50Cis2NzQxMyBiNThhNDM1MDAyYzExMWQ5MzgxZTg0OGZiMmJkMDQxOGY1ZjZiZGMzIHJlbGVhc2UyNi1tYWludAorNjc0MTQgZmNhZTE0YmNlYTczMjM3ODViZWMzMTA3NjBiMDM0YjFjOWZmODc1MCBsZWdhY3ktdHJ1bmsKKzY3NDE1IDM4MWM2MjgxOWYyZWM4Mjk3OGFjYzkxMmIwMzU2OTA3ODZmNjFiN2QgcmVsZWFzZTI2LW1haW50Cis2NzQxNiBjNTEyNjJhZDU2MDNkZTk3MmFkZDc5ZDViZWI5MzVlMWEwMTQ1OTk0IHB5M2sKKzY3NDE3IDM4MDNiNmM0ZmY4ZjMyMDEwNTA2N2QyNTRmODkzOGYwOTM0OTdiMjAgcHkzaworNjc0MTggMDZlNmMzOWFkODAyNGY4N2Y5YThhNjQ0MmJmOGQ2MzJjMzNkZDBkNSBweTNrCis2NzQxOSBjYzllZmI5ZjhlNTdkODRkMDcwOWViNTQxOTM4YzgzYWYwYzQxYzYzIGxlZ2FjeS10cnVuaworNjc0MjAgYmYyZDE5MjkzZGI3N2NhM2EwYWFhMGZjMmMxMTdhNWIwZDdlMjY3YiByZWxlYXNlMjYtbWFpbnQKKzY3NDIxIGE5MDM1MmU1OWNlNjFkMzJmNDMyZDRlOWM4NDQ4MzJjNDZmMzVmOTQgcHkzaworNjc0MjIgMThhYTcyOGU5NTJkNTExZjkyYjExNjdhOTc5ZWQyMjMwMGU0YTQwNSBweTNrCis2NzQyMyAwYjNiNDRiOGM3ODI2MjU3YTI3ODFmYmI5NTY4ZWRiZGJlOGY3M2M1IGxlZ2FjeS10cnVuaworNjc0MjQgNDZiNWNmM2NhZGU0YWY3NWM2NWVjZmUxMjFjMDdlNGViN2Q4YTg3MyBsZWdhY3ktdHJ1bmsKKzY3NDI1IDBmY2ZlMThmZjhmNmQ1NzA2OGFhNGI3M2VkODliYmUxZTE3MTliODggcHkzaworNjc0MjggYzhhZWQ5YTM2ZWNiN2Y5OGM0ODA3ODlkMzhmMzc1ZTNhZGRlNGIwMCBsZWdhY3ktdHJ1bmsKKzY3NDI5IDhkMzI5ZDJhMzY0YWI1MjVjYjljZjJjOTExMjBjNjAxNDIyOTYwZDkgcHkzaworNjc0MzAgMDYwN2M5N2E4MTI0YjRlMzg1MWY4ZjRhNDkxMjE2NGQ3NzI2MmNjNCByZWxlYXNlMjYtbWFpbnQKKzY3NDMyIDIzYjQzNDhmZGY1MmZmNmVjZTA1OWVjN2QxYjBkMGY1OGNkZGI1ODMgbGVnYWN5LXRydW5rCis2NzQzNiA1NjBiMmY1Mjk1MmM4N2M0YzgyZDdjMTkyZmMyYmYzNTgzODYyMjJiIHB5M2sKKzY3NDQwIDA1YzEyZjZkMTQwNDA5YzEwOTk4MWQ3N2Q5OGRlODgyZGVkNWRjYzAgbGVnYWN5LXRydW5rCis2NzQ0MSBjYzI5NGZjOTBmNmM0ZGNlZDkxOWJkYTRkY2JlMjI2NGI1NzM4MWRkIGxlZ2FjeS10cnVuaworNjc0NDIgZWYwYzVjYTQ1NDQxMjM0NGM5NmE2YzIwMjhiMDc1YjJjM2U1MDAxMiBsZWdhY3ktdHJ1bmsKKzY3NDQzIDgwMzdmYTdhY2U5ZWVjM2M5MGI4MjhjMTUwNmRkMWU4NThkYTZlYjQgcHkzaworNjc0NDQgZTI5ZjY2ZmRiNDJjMjBmOWE3ZTNkMzI2NDYxZTY4YTNiZDUyOTk1YSBsZWdhY3ktdHJ1bmsKKzY3NDQ1IGY5YWE4N2ViMzM0YzFlZGM0NjNhOWVjYjdhMTUzMTIzYThiNzcwZDggbGVnYWN5LXRydW5rCis2NzQ0NiAzNTY5ZjdiMDkwMjU2ZTBhYTBlY2Y3ZTNhMTQ4OTk2NzRkMThhMjlhIHB5M2sKKzY3NDQ3IDI3N2E4ZjI5NDRiNDIzNWFlZWNkNGQ3MTVmYzMyNGI5YTA4MDlhYzkgdGxlZS1hc3Qtb3B0aW1pemUKKzY3NDQ4IGJlZjNjODVhOTA4ZDRjZGRkMGIxYWZkNjEwNjU1NmI4MjI2ODViNzcgcHkzaworNjc0NDkgYTFkZTkxYWQ5Mjg4MmRkYjdiMjlkZTRiYzhlYjNkYTlmZGE0ZWNkZSBsZWdhY3ktdHJ1bmsKKzY3NDUwIDdmZGY5MzZiMzBiZjZmMmNhZGNiZTNjNWY0MjE1ODIyNmQzMTIyZTkgcmVsZWFzZTI2LW1haW50Cis2NzQ1MSAzYmYxOGJlN2NlNWE1YjQ4NDI3YWU2NGUxYjk4ZTk0NDI4MmQyNDFjIHB5M2sKKzY3NDUyIGYxZWJiYzE4NmMxMTI3NjNkZWVhMTYxMjdkZjdjZWQ3MDk5MjRlOWUgcmVsZWFzZTI1LW1haW50Cis2NzQ1MyA5NDJiNGEyYzJjMTNiZTlhZjU5NjY5Zjg4ZjdiYTQ1ZWY0MTQwMWZkIHJlbGVhc2UyNC1tYWludAorNjc0NTQgMzlhNTZkMzU1Mzc2YWFmZjQ5MmU1ZjE5ZmY2MzVjZjQxNTY1YzcwYSBsZWdhY3ktdHJ1bmsKKzY3NDU1IDM3MTJkMWY2YmZkNTViNWE1OTk4YmMwNDllZTYwZDMyMjcwYjdiYTggbGVnYWN5LXRydW5rCis2NzQ1NiBiOTYyZDA0YmI3ZjAzMzRhZWQxZGY4YTZjY2UxY2I2YzRiNzRlOWZkIHJlbGVhc2UyNi1tYWludAorNjc0NTcgN2VkMzhhYTEwZGU2YTUyZTY4NjQ2ODFiMzM0ZWRhMzNiNzA0ZjZjOSBsZWdhY3ktdHJ1bmsKKzY3NDU4IDE4OWRlZjA2MjUzYzZhN2E5NzI4NWJkNDdlOTU3NDdiNWE3NGFkMmQgbGVnYWN5LXRydW5rCis2NzQ1OSAwMWY2ZWE3ZjdhNzU4MWY0YTQ5NGZjOWY2YWU4OGRhODQ1MmIwM2ZjIHJlbGVhc2UyNi1tYWludAorNjc0NjAgNzVhOGNhYTI0MTg2NTk1OWU1YjY1ZmYzN2UyZDVhOTZmMzkxZWEyOCBweTNrCis2NzQ2MSBlZDhhZGZlZjI2YzY1YjNhODg2YzgzYjBiZDM0YTYyNjc4ODgxZjY3IHB5M2sKKzY3NDYyIDZlODkxMzUzY2U5NjU4ZWJlYmQzZjY3ZTc5MGMyOWFjNDMyZmFiMGYgcHkzaworNjc0NjMgNjgxNzMzYjQ5ZmEyMzk4YWY4ZmI4MWY5OGNiM2UxNjFlYjZiNTRjMSBsZWdhY3ktdHJ1bmsKKzY3NDY0IDYwZTc3NWVhYWFlZWU4YThlZWM2ZjFjNWM2OTcyMzFjYmUwZjkxMmIgcHkzaworNjc0NjUgM2U1OTk1ZjZhYjhmNmE2YzQ0ZWU4ZWI0YmE4NzI5MDExNjY2OWRmMyBweTNrCis2NzQ2NiBhYjEyZDcxNmE3YTgxZWQ0YTA0YmE2NzAzMDM5M2M3NzM3NDAwYzViIHJlbGVhc2UyNi1tYWludAorNjc0NjcgN2Y4ZjcxZGM4NmM3NDA5NWM2YTkxYTQxZTNmNzYyM2YzZjE4ZTg3NyBsZWdhY3ktdHJ1bmsKKzY3NDY4IDA3MzJkMTNlZDA2NzhhZDg1NjViOGU5MDQwMDI5NDJkYjgwMzQxYjggcHkzaworNjc0NjkgMGY3NzI1ZTE5YmMzYjkzZjMyODE4NjQyNTBmYmY1NjI4MDgxMDE5MCBweTNrCis2NzQ3MCA0NDYxZjE4ZjI2NDNjOGZjOTlmMTAyYjQxZTE3OTA3MThkOTUxMThlIHB5M2sKKzY3NDcxIGIxZDJhZjUyZDgwMTUzNGE4YmQ4MmJlOTc0NGJkZGFlMzQ0ZmRmZmQgcHkzaworNjc0NzIgZWQ4NDc2ZDdmNjRhNWQ2MTY1MTgxMDY0MmQ3YTRiMzQ0ZWNhMzZjZCBweTNrCis2NzQ3MyAwOWMyZDE1ZTRkMWRiNjJjOTlmYTEzNTUxZmQ1N2U3MGJjNDE3ZmZhIHJlbGVhc2UyNi1tYWludAorNjc0NzQgYzE4MmUzYjllOWZjM2FiZGZkNTBkYTViNmZjNWJhN2Y3ZGRjZDY4YSBweTNrCis2NzQ3NSA0MGVjNmQyODk1NTJlN2YzMzljZGYwNzdmNTk3MzM1ZTcyNzBkNzA2IHB5M2sKKzY3NDc2IDZhMTIxZjA0YmM3ZGY2YTI0OWZhOTk5MzYwMzhiMWU3YmYwYTUxMmYgcHkzaworNjc0NzcgZDE3MmRkOGQ5ZTA5ZWJkODhmNTE0ODFlYzdkODU5MDNhYjc3OWVmNyBweTNrCis2NzQ3OCA4NmVlMmUwZDRkNDE1NDk1NTA3MDNmYjRjN2YwMmFiNjdlNDExZTUzIHB5M2sKKzY3NDc5IDc4YjBjOGRlM2E5ODgzODIxMzM4MWUwNjU0NmIwNGNhMTQ5YzM4ODQgcHkzaworNjc0ODAgOWM4MWMzYjcxMTE5NTJmMTRlYTI4ZWIzMjEwNjFlMmE0MjRkOTlmNSBweTNrCis2NzQ4MSBjZGRhMjA5M2Y2ZjUzMDhiNjJiZDI5NjM0OTVkMTJiNjk5MTUzNTI0IHB5M2sKKzY3NDgyIGNjNWE5NWYwZjU2YTUzNGY1ZmI0MzBlOTA4MGI3MjdmZDczNDI1ZDUgcHkzaworNjc0ODMgYzgyNmU0NjJmYTUxZjUzZjIxNWRmYmY2NjE1YTJlZWI3ZGI4MGEzZiByZWxlYXNlMjYtbWFpbnQKKzY3NDg0IDVkNGRmZWVkZDUxMmIzMTk0NDMwOGRjYzY5ZmZmNDE0MTIzMDA1ZTEgbGVnYWN5LXRydW5rCis2NzQ4NSAwNDUyNmEyMjJjYWYyNDNiMzU0YTU1MGQxM2QxMDhmNjk4ZTUzODk5IHB5M2sKKzY3NDg3IGNmNDdmN2M3ZGRiMzI2ZTA2OGE5NDY4YmM0YTcxODdhMDZjZmI4NTcgcHkzaworNjc0ODggZDFkZTMwMmU2ZWZjNTM4NjE2ODExNjcyMWY1ZWNiM2QxZWNkYTI5OCBweTNrCis2NzQ4OSA4MWNhN2JiODgwNGYwMmM1OGNiOTllM2M2MTkyMTQzYzM5YWEwOGZjIHB5M2sKKzY3NDkwIDEzN2I1MGVlOTZkNWMxYWQxODBhZTY0MDY5N2E5Y2Q0YTNkNGJhZmIgcHkzaworNjc0OTEgNTRmZWFjM2QxMTY5MDY0OTc0MzZjNTdjN2I4ODc4MjM0NTY2N2U5OCBweTNrCis2NzQ5MiBmNDQ3YTFkZTJmYWU5YjAzMzJmOTcwMzU1NGQyZGIzMDQ3MzI5NDJlIHB5M2sKKzY3NDkzIDg0NTMwNWEzZGEzNjNlYmJkOGZmYzMzYTIyNDk3Y2VhMTZlNmEzMWYgcHkzaworNjc0OTQgMzM0NDgwNGYzMjdkNmU1YjVlMWUyZWZhM2VlMDc5NjFhOGEwNmI2YiBsZWdhY3ktdHJ1bmsKKzY3NDk1IDZhNGNjNmJhMWMxNmFlY2JiMmU5ZmVlMTNmZDFmOGEzYTg5NDFmYzIgcHkzaworNjc0OTYgYTNkMDI5OWI0YjFkYWZiYWE4OWY3NThmY2QzNGM1NDg1ZWI0N2U1ZiBweTNrCis2NzQ5NyBjNmE0YTJjYzU2MTI2YTM5NzQ1ZWU3ZGY4MDcyYWUwOTEyN2Y0YTRmIHB5M2sKKzY3NDk4IDU4OGE5NWVmNzk3MTc2YTU1NzhjYzM0MTMyOWRhYmQ3YWI0MWNlNGUgbGVnYWN5LXRydW5rCis2NzQ5OSAxMDdkNDUzMTc5YmUyZWRlN2U3OGY3YWE4Njc4YzIyYzYyMDViZDQzIHJlbGVhc2UzMC1tYWludAorNjc1MDAgNTIzNWRjZGE5MDc2ZjI1YTljZGNjNzI2YTliM2FjMzk0NzkxYWJkYiBweTNrCis2NzUwMSAyYTVlYzA2MGJiOTk4MTliNmQ1ZDVlNTFiNjBkOGRiYTk3YjRhNjFjIHJlbGVhc2UzMC1tYWludAorNjc1MDIgNTlhZGZlNDM2OThkYzg0OGQ4MzExNTI3YzBkZTM0NDRiZTZmZGE5MCByZWxlYXNlMzAtbWFpbnQKKzY3NTAzIGE2NTMyMTQ2MDI3MDdiZGUwZTUxMDY0ZDdjNzc4OWNlMjk1ZTQ0MzIgcmVsZWFzZTMwLW1haW50Cis2NzUwNCA5ODA3Yjc5YTE2MmU2ZmZiMGJhNDJlMmM2OTU4NDg0N2E2YTdlM2MyIHJlbGVhc2UzMC1tYWludAorNjc1MDUgNTg5Yzg4YjIwYjViN2UwMDc3OTEwMWMxN2QxNDkxYTMzYThmYjljNSByZWxlYXNlMzAtbWFpbnQKKzY3NTA2IDY4YTZlM2FjNDFjMThjOGExOTBhZGEzYWExNzY0NGI2MTBkZTJjNTcgcmVsZWFzZTMwLW1haW50Cis2NzUwNyA5YTJiMDYzODcwYTMwOTFmMjMwMTlmN2JjY2M5ZDQ1YTY0MTNkYjQ2IHB5M2sKKzY3NTA4IDc1YjhlZTA2MmIwZDRmYzkxN2IxMzczOTNhMjg5YTBmNTQ4YzFjZDYgcHkzaworNjc1MTEgODc4ZDQwNDY4YzRlN2QyZDEyOTNmYWI2YTY5NjVhZjIxYjE0ZjkyOSBsZWdhY3ktdHJ1bmsKKzY3NTEyIGUwN2EzMjJlZjU5MzRjZTM1YjQ5Njk5ZTM5MzhlMjFmZDMxMjYzMTMgcmVsZWFzZTMwLW1haW50Cis2NzUxNSBjYWJmMzAzZTc4N2FhNWNkNzIwOWI0MGUzYjJjYWJhM2VlNzVjNWE1IHJlbGVhc2UyNi1tYWludAorNjc1MTYgYzlkYTg1YzE5NzE5Yjk1NDZkYTdiZjZlNjNjYWYxYzA1Y2Q2NDkxZSByZWxlYXNlMjYtbWFpbnQKKzY3NTE3IDUzMTQ1N2NmYTNlMjQzZTFmZDMwODU0OTU2ZTU1NjRhNTgxNTU2YmIgcHkzaworNjc1MTggNzFhY2E4NTNiMjQ0MjEwNjZmZDQ5NDcwMzdhMGJmMzUxODBjYTNhZiByZWxlYXNlMzAtbWFpbnQKKzY3NTE5IGU3OTNmYzNjOGFiZTk1ZTMxOThmODQ5MWM1NDljYmViZmU1MTRlYzkgcHkzaworNjc1MjEgZjNjNDg1ZTJiNDUxMzY2NTc4M2RiOTE5Yjk5NGIxOGVhM2MwYmQzZCBsZWdhY3ktdHJ1bmsKKzY3NTIyIDQ4ZjI5ZDg5NGIzY2M3YWZiYWViNGFmNTExMzA4MWE3NjRiZTIzMjkgcHkzaworNjc1MjMgNDI1NjAzNzRhYjI1MWFiYWQzNDczZTNkMGQyODUyMTgzZTM3NzM0OCBweTNrCis2NzUyNCAwN2VmY2UxMDdhYWVmMmU5ZDRlY2I5MWVkMjIwNmMxODY5NDhiNThjIHJlbGVhc2UzMC1tYWludAorNjc1MjUgODU2ZmMzZWEyZGRiODczOTdiY2M0YTM4ODZmYzIwMTM4Yzg1OWYwMyBweTNrCis2NzUyNiA3NTIwN2EwYTllMTU4NDUwZTA1OTk3NWIwMTJiYjdmZDJmNjMxYjFmIHB5M2sKKzY3NTI3IDQ1OGQ3YmMxMjk1MDkxOTc5YWRiNjgyODRlYTExYWY2MTU4NTllMWIgcHkzaworNjc1MjggZThhYjI3NTgyYjE4NDNmMTgyYTA0N2E0NTZlMmUxYzk5Y2Y2NDNjMSBsZWdhY3ktdHJ1bmsKKzY3NTI5IDNlNjUwMDMyYTVkMWNiYjEyMjE0NDJiOWNmZDEyYTcyOGQ0OWMwYWMgcHkzaworNjc1MzAgYzExNWFkNThlYWRmZTlhMGZiZDhiNjk2MzhjMmUxMzJjOTAxMDJmZSBweTNrCis2NzUzMSBmNmU1M2MzMGFlOTZjNWJjMWQzNGEwOTQwNWYwNGZjOTBhMzk2MjYwIGxlZ2FjeS10cnVuaworNjc1MzIgMjMxNjgwMjQ0YzE3YjMyMzBjNWMwYTkzOGNkN2U3YzYzZWJhM2UxMiBsZWdhY3ktdHJ1bmsKKzY3NTMzIDc0YmZlYjM2NGEyM2IzN2ZkYjM5ZDYxMGIxYTA2NWFjOTk4NmZhMDIgcmVsZWFzZTI2LW1haW50Cis2NzUzNCAxMDNjNjhjYzI5ZTVlMmY2NGJiMjlmNTU0OTlhODdjYWNiZTQ0MWFkIHB5M2sKKzY3NTM1IDg5ZTczOGM3OTJjMGJjOGRjMTYxZWZkY2M5NmQ4Y2I2NTNkZjE2YWMgcmVsZWFzZTMwLW1haW50Cis2NzUzNiA0NzkwYjMxZDkyNTc3N2YyZjFjNjY4M2Y1NjRiM2IxYTk1NDFiNzYyIGxlZ2FjeS10cnVuaworNjc1MzcgOWY4ZTUxZmRjZWEwZmJjNjZiY2I4ZDgxZGJkMTg1MWIwZDk4Mjc2NSBsZWdhY3ktdHJ1bmsKKzY3NTM4IGNkNWY1NmE4MWNjZTFkMTY1ZTNkZmJjNWI4YTYwYzgwOTBkMGE5NjQgbGVnYWN5LXRydW5rCis2NzUzOSAzZWNhNWE3MzY1MTYxMGFhOTMxZTNhZGU4YjdhNzNkZjc3ZWIwYjI1IHB5M2sKKzY3NTQwIDI3YmEwOTk1Nzc1MTQzZWJhOTE0NWFkODU3N2IyZjE5MTQyZTBmYzcgcmVsZWFzZTMwLW1haW50Cis2NzU0MSA2OTI5NTYzZGFkMDAzZDY1MWY2MGUzZWExYzk2ODI3NGM0ZDZjYTNmIHB5M2sKKzY3NTQyIDY3ODYwN2NlMTIyZmE4Nzc3YzA0Y2QyNWYwODc3ODVlMzkxMDcyYmQgcmVsZWFzZTMwLW1haW50Cis2NzU0MyA1ODljZGU2MTRiNWJmZTRiYzYxZDZiMDU1YzZjNTIxNGM3ZWJjNjYxIGxlZ2FjeS10cnVuaworNjc1NDQgZGVkOTllNGY2YjNkYmMxMDUyNWU4NjAzMTdiZjhlMDA0YzBkMjU4MCBweTNrCis2NzU0NSBhOWQwMDY3Y2JlYTQ2Mzc1Y2YyMzJmYmI2YmM2MGVlZjk5Y2ViNDMxIHB5M2sKKzY3NTQ3IDU0YzE5YTFiYmFiZDllNWVjOTk1ZTA4MzcwN2QyYzVkM2NhOTI5NDEgcmVsZWFzZTI2LW1haW50Cis2NzU0OCA0ZTEzYjM3YjM3MjNiOTIxNzNkODA4OGM0ODMzOGU3NzFjZDdhNzMyIHB5M2sKKzY3NTQ5IDliYjg2ZjdmYjk0NDc5NWFmOWY5M2ZjMTEwNWI4YjhiOGVjNzk3N2IgcHkzaworNjc1NTAgOGRkMzU2YjE0YjBkN2Q1NmUxMjgzMzc3MTc0MDEzNzliYzliOWQ5OSBweTNrCis2NzU1MSA3MjlkYjk0NjRlZjY4OGFhMzNiYTJjNzljZDZiMTkyOGVhNTcyOGNhIHB5M2sKKzY3NTUyIGJkYjAyZWFkNzU5Yjk3ODNjNmFmMmRiY2UwZTY1Mjg4OWZjNjZmZTQgcHkzaworNjc1NTMgODUxOTBmZjIyNGUwYzQ3MWE2YTE2MmJhZGM5M2M3NTYxZDAwZGJhZCBsZWdhY3ktdHJ1bmsKKzY3NTU0IGMzMTlkMjQ3NGY1N2UwZmNjOGZlNThiYWYwMjEyZjQzZTNjMzExNzAgbGVnYWN5LXRydW5rCis2NzU1NSAyNzk0NmYxZWI4ZmE1NzdlYmUyOGY0NzZkNGNiZTAxOTQ2ZmE1YjYwIHB5M2sKKzY3NTU2IGEwY2VhMDFlY2U1M2NlNmVhZmY2M2E5MTczNTVlMDU2MmU0MDQ4YjkgbGVnYWN5LXRydW5rCis2NzU1NyA3NjU5ODQxZDI3MTRkZWQwZGNmZmY5MmE1MzkyNjdlNGM0NzI0MDIyIGxlZ2FjeS10cnVuaworNjc1NTkgODZkOGE1MjJmNDQwNzNkMTIxMTM2NDIyYTQ2NGU4ZDY0ZThkZGQzZSBweTNrCis2NzU2MCBiNDdiN2Q5YzU5MzYwNmE3YTBhMWNlNjA4NTA3MzdlNzE2MWMwZjEyIHJlbGVhc2UzMC1tYWludAorNjc1NjEgODliYzMxZTA2NDg5MGJmOGE1YzllYTU4NWIyODU1YzZjMWI0ZjA0MiByZWxlYXNlMjYtbWFpbnQKKzY3NTYyIDAxMzcxODk3Y2IxOTAwMzVkNTZiYmY0ZTYzZDIxYjdiY2U1MGM3NGMgcmVsZWFzZTI2LW1haW50Cis2NzU2MyA1ZWY4YjVhNzRlZmEyMWNkYjlkYTU4N2E1YTA0NzUwY2ExMmU5NDNkIHJlbGVhc2UyNi1tYWludAorNjc1NjQgODU5ZjU1MGI0MDAzYWNhMWQyNmZkNGU3Yjg3YmE0MDhjMGRlNGZjNiByZWxlYXNlMjYtbWFpbnQKKzY3NTY1IDNjN2VlZjE4N2JlYTM0ZGFhZDFmZmEzM2QxZWMzOGI0MTU4MmJhMWEgcmVsZWFzZTI2LW1haW50Cis2NzU2NiBmMDhkMTQ0OGI5MGZmNWQ2YzA4NTMwZmU5MGU5OGM4ZmI2M2VhODZmIHJlbGVhc2UyNi1tYWludAorNjc1NjcgNmU1MWZlMWI3ZWQ5ZWE1NDJmYTJjZTZhZTZiMzkxMDRiYzM4ODZlYyByZWxlYXNlMjYtbWFpbnQKKzY3NTY4IGExNzJlYWE0ZDVlYzEwNDk1M2QwYzFkM2RiYTBhZGNlMzc2MjI1MWEgcmVsZWFzZTI2LW1haW50Cis2NzU2OSAxMWJmNTlmZTEwYjkyNDEwN2I3ZGE1MmVjZjUyNjI4MzBhNDNlMTk5IHJlbGVhc2UyNi1tYWludAorNjc1NzAgMmUyNmU4MjE5YWE0MjBjNTRlYjViMDQwZjExMDNhZjVkN2Q3NmZjMyByZWxlYXNlMjYtbWFpbnQKKzY3NTcxIDM2MzZmZTk1NzMyYzEzN2EzMTRiOTdmZmYxYTZlMmZiYzk5ZTIwNTkgbGVnYWN5LXRydW5rCis2NzU3MiAyMGFiMjI2MGRjOTNiYzA3MmRiNDdkYWE5NDI2OTcwNTEzOTFhZTMyIGxlZ2FjeS10cnVuaworNjc1NzMgYzQzNGI3NzE0NzdiZmExYjY0NzhmMWIzOTRjYzQ1MzhiNTQxMzRmMyByZWxlYXNlMjYtbWFpbnQKKzY3NTc0IGIzOGVhYjhjOTkwNGRhN2YyYmRmNzE2YmNiMDE0YjUyZjc4NGNmN2YgbGVnYWN5LXRydW5rCis2NzU3NSAyMGNkOGNmNjEzNzNkOTM1N2QzZWVmOWQzNjRkOGU3NzNmNTBlYzg0IGxlZ2FjeS10cnVuaworNjc1NzYgYzQ5ZDZkN2MxODFlMWYyZjRiOWNkNmVlYmI5ZDRkN2Y3M2I1NTg5YyBsZWdhY3ktdHJ1bmsKKzY3NTc4IDEwMGU0MTYwYWRmYmEyOWYzYmMwMjkyYjQwNjBmY2UwMWNiY2Q3ZDkgcHkzaworNjc1NzkgOTRiNGY4OGU1ZjZiZTQ0NDViNWU0Y2RkMDg0MTBjNzY2NTA0YzFlNCBsZWdhY3ktdHJ1bmsKKzY3NTgwIDAwNzk2NDgwOTgwM2ZmM2NkN2VmMGZhNWU5MjhkMTY3YjAzMjE5ZjEgbGVnYWN5LXRydW5rCis2NzU4MSA5MmNiNmU1ZWI0M2NlNjFmMjU4YTBlMDNjOTgyNjcwNzlkZmMzZGUwIGxlZ2FjeS10cnVuaworNjc1ODMgYTNhYjk1MzQ1YjUyYjI0YzJhOTc1ZWRkMzBiNTgyNDYxNTY4NzI5YiBsZWdhY3ktdHJ1bmsKKzY3NTg0IDA1NTA0NTgyY2VkNjdlZDNmMjgwMjRkOWI2NmM2OWJiZjI1NGNmY2YgbGVnYWN5LXRydW5rCis2NzU4NSBjMDYxODNiMmQwNmY0OTA0MzRkZWVkZDk3MjUxN2FlNGJhMzNjNmY2IHB5M2sKKzY3NTg2IDA5OGRiZDk3MzE0NzdjNWM2NDZiMWY5MmU1YzZkN2I4M2U3MGQ5MDUgcHkzaworNjc1ODcgZmYyMjYzZGUwZDZmNGFiNWJiYzk1NmFjYWE4MWQ2YWU2YTUxZTMwOCBsZWdhY3ktdHJ1bmsKKzY3NTg4IDdhOTJhMTY0ZmMxMmYzYzRkZDAwMDc3NzQyNTJiNmVhYzZmNDI1OWQgcHkzaworNjc1ODkgZGUzMDk0YmIxNDIxZDdkNjdiN2YxZTA0Y2JjMGY0OTdmZjgwZTA0NCByZWxlYXNlMzAtbWFpbnQKKzY3NTkwIDU3YjVjNDYzOWE1ZDIzZjRlY2Y1ZWMxNDNmNDdkYjg2ZWM3ZjYxYWQgbGVnYWN5LXRydW5rCis2NzU5MSBjMDMwMWI1NDMwZDUyNGIzM2MzNDQ0MzI4Zjc1ZjgzMGU2MzMxYWUzIGxlZ2FjeS10cnVuaworNjc1OTIgMjBhMWNjYWRkY2FlZWU3NzYwOGFmNmJhNTBmMDI4YWM3ZmNkMTE0ZiByZWxlYXNlMjYtbWFpbnQKKzY3NTkzIGJiYjEwMWE1ZjhjY2RlNWRlYzU3ZDUzOTAyYjliZmM4NDllMTliZDkgcHkzaworNjc1OTQgNjUxZGZiMzQwNWQyMThmNGJjMTYwNDBiMmQwNmQ5ZjEzZGNhMGZmNSBweTNrCis2NzU5NSA2MjRiOWVhZWRiODBmMDlhYWNiYmZhYTg3Mzg5MDY0MmQxNTZiZDlmIHB5M2sKKzY3NTk2IDI1ZjIyMmJlZmVjNGJkYWVlYjNhNWJjOTVmNTBhODlmYzRhYmNkNTggcHkzaworNjc1OTcgN2YwODIwZDczMjk5MzdhNTA0Mzk3MzE2M2Q1YWVlNzYyMjQ5OGZlOCBsZWdhY3ktdHJ1bmsKKzY3NjAwIDRjOTg0NGNmMmEzZjc4NGUwM2JhMjFhNTYyMTUyM2RlYzMzYzU3MzkgcmVsZWFzZTMwLW1haW50Cis2NzYwMSAxZjJhM2IxM2U4NmQ3YzRiYTg3MDczZTAxOGU2MGNmZDQ3NTNmYjJlIGxlZ2FjeS10cnVuaworNjc2MDIgYWJhMmNlMTYzYjcxOGQxMWFhM2NjNzhiMDc2MmMwODY1MzU0MmM5MiByZWxlYXNlMzAtbWFpbnQKKzY3NjAzIGIwMWRhMjZjNGJmOTQwMGQ3ZTExMDE0NGVmMTc4YmY5NjhmYTY2NTggcHkzaworNjc2MDUgODMyM2YyZGY1NjE3NDc0NmRhNGE1NGNjNmFjNjUzM2JiZTMxOGE3NyBweTNrCis2NzYwNiAyYzc4ZjgxNWUxOTJhYmZmNmUxNDIzNTdmMDQzM2E4N2IxNjA2YTRjIHB5M2sKKzY3NjA3IGFjNDJhOGY3NWY5MjViNzZiOTdmOWJlMGI1YWI3NzRiYmJmODBlNzIgcHkzaworNjc2MDggYTkwNjgyMDNhZmQ1YzAwM2E0MGU1NTQ4MTg2MmM4MDI4MDg2ZjA3ZSBsZWdhY3ktdHJ1bmsKKzY3NjA5IDdjM2FmMzIwMGUzNGI3MjU3NzFiYWM3NTA1MzQ2MzU0NGI2NTk0YzMgcHkzaworNjc2MTAgNjdjZTc0NWE3NDdhODg0NDE2NDRkNjYzY2E5NmY4ODg4OWUzZTQ0YyBweTNrCis2NzYxMSBiYThmZTNhNDBhNWJmNzNkNDUzMjQ2NDJiZDNmNTU2YzY4YWY3MTAwIHB5M2sKKzY3NjEyIDYxOTYzNTQxY2JmNWJkOWZiZjc1MmEyNjYxODk1ZjgxZmM0MTcwYjEgcHkzaworNjc2MTMgZTAwNzNiNzY1MGNjM2NhZTliNzExY2NhMWMwNTVhM2Y0Y2M1NmVlZCByZWxlYXNlMjYtbWFpbnQKKzY3NjE0IGRkNWUxYTA0MmRiYTRmYmEzYzk0MGY3NTVhYTJmN2FmOTM2NmJhOTYgbGVnYWN5LXRydW5rCis2NzYxNSAwYmUxMDM5MTM0N2I5Y2RkMGVmZWM1NzJhZGFmNjZkOTQxOTZjNmQyIHJlbGVhc2UzMC1tYWludAorNjc2MTYgYjEyZDZmNjA2NjE4YWJmZWZkYTQ1N2JjY2NkZjllZjdjNjliOTQ1OSBweTNrCis2NzYxNyBjZTM2Mzg4NzI3YTc4Yjc0NGUyM2RjNzM1NWUzMTNlN2VlOWMzZGRjIHB5M2sKKzY3NjE4IDUyYWQ4YTcyNDcyZTg0NjZjYzM2ZTU3MTc1Y2IxNWVkZDdkNmQ0MjYgcHkzaworNjc2MTkgMTM0OGRjMjQ0Y2EzNGI3YjY1MWI3OTEyZmQ2NmRhMzI1MTA4NjM1OCBsZWdhY3ktdHJ1bmsKKzY3NjIwIDNkZTcyMGNkMTc2NmE1MmUzYWNjYjBiYWVmYTJkYjMxYzAwYjZhZjAgcHkzaworNjc2MjIgNmRhYjI1ODc1MmMxOGIwNGE4N2M2MmI1Yjg4YzllZDlmZjE3MThiYyByZWxlYXNlMjYtbWFpbnQKKzY3NjIzIDE2OTNmZDk0ZDgyOWQxZjEwNzc3MWMzNGQ4OTNiMTExZjhiODVmNjEgcmVsZWFzZTMwLW1haW50Cis2NzYyNCA0YjlhZDNlNzQ4M2UzNWQwMThiNmMzNTFhYjNjMzQ3NTczNWFmMjUwIHJlbGVhc2UzMC1tYWludAorNjc2MjUgZWZmNGFhYjk1ODQ3OTVhMTEwYjIyZDkyMjBjODc3NDI0YmNkNzdiNyByZWxlYXNlMzAtbWFpbnQKKzY3NjI2IGU5ZjkzZTJmOGZiY2E4ZmY5ODU0ZjIwNjc3Y2MxNzk0NzNjYjc4ZmQgcmVsZWFzZTMwLW1haW50Cis2NzYyNyBiMTRmNTg3ZjUxMGU2OTgyMDFhZDAwMDE1MzIyMzliYzgzMmVkYWJlIHJlbGVhc2UzMC1tYWludAorNjc2MjggMGZlNDlhZWMyNTdjYmE0ZWI1NGJkMDM2MTc4ZmEyMDU5MTBjMjU2ZiBsZWdhY3ktdHJ1bmsKKzY3NjI5IDZhYTA5ODVhYmJhOGM2ODRlYzYwOTUxMTM5Yzg1OTgzY2IzNGRhMTIgcmVsZWFzZTI2LW1haW50Cis2NzYzMSA3ODc0Mzc3MTQyZjY0YzFhZDNiNGYwNzU0NDkwMjdjYjU5NDBiYWVlIGxlZ2FjeS10cnVuaworNjc2MzIgNWQwZTkzZjAzOThhM2NmNGMwZmFkNGY5MzJkZDMyN2VkNDlmNGJjZCBweTNrCis2NzYzMyBhZTk4NjgxMDU4YjI0N2NhMzBiNWI0YTQ1ZDU0M2ZmNjhlMTc1NmZmIHJlbGVhc2UyNi1tYWludAorNjc2MzQgZWVjOTI1MmIzZDQ1NDgwMThiYWJkMTkyNzMyMGE2Njk1NDJiMGRiNCByZWxlYXNlMjYtbWFpbnQKKzY3NjM1IGRhYmVkNjlkOGEyYWIyY2QyOGE3MjhhOGRhZDQxNzZhYWFiZjk1ZmUgcHkzaworNjc2MzYgMTcwYTk3NjhlN2FlZWY5NGZlODM4ZGJhNWRiODliOGVkNTI3MjlhZCBweTNrCis2NzYzNyAxNTgwN2UyNjJlYmYwZmE1OGQzOWExMDAxNDdlNjZjZWEyN2YwY2ZlIHB5M2sKKzY3NjM4IGI4YmU5ZDFmMGQ0NTVkMzhhNjhiNzJmNjlkOTVmNTgyOGUxYzE4ZjcgcHkzaworNjc2MzkgMjFhN2U4YzExNzA3MjYyZDExMmM4NWZjYjA4YjFmNjE4NGZkZWMxYSBweTNrCis2NzY0MCAwZDNkZWJjYjhkNDQ5MTQ3MDRkMzNjZGQ0ZTdhOGVlMmZmMGQ4YTAzIHB5M2sKKzY3NjQxIDYwZWU5MDFiNzM1Mjk4ZTgyYWFiODMyZDNkMjgwZGQxNmUwMjliNGQgcHkzaworNjc2NDIgMDI0YTk4OTdjNjUxMGFjZDY2ZjAzYmVhODNkNWFiNmU2OTA3ZmIyMyBweTNrCis2NzY0MyA5MmM3MzQ4M2MxZjdhNWMyMDhmNjJjM2I1YjRiNWYwYjNkZWIzMjM3IHJlbGVhc2UzMC1tYWludAorNjc2NDQgYzdhYmZhYjRkY2RiOTg5ZWM1MjVlY2QzY2E4ZmUyZmViZGE2YjkwOCByZWxlYXNlMzAtbWFpbnQKKzY3NjQ1IDkxNzAwZDIxMjFjODJkM2E4NTUyMTBkNzNlYmU5NGRiNzkxYzU4MjYgcmVsZWFzZTMwLW1haW50Cis2NzY0NiA2M2VlNmEwZjczNTg5OTU0YzcwZWM5MWIwNmViZjlhNDM1ZjhiN2M0IHJlbGVhc2UzMC1tYWludAorNjc2NDcgYTg2Y2RmNDliODIxNDQ2MjNkM2M0ZWRjMDUyOThmZDc4NWZmMzk0OSByZWxlYXNlMzAtbWFpbnQKKzY3NjQ4IDAwOWI0NjZjYzZjYTk0NTJhOGU0ZjZmNzI1MTRkYjcwNzk5YTdkNWYgcmVsZWFzZTMwLW1haW50Cis2NzY0OSBlMDdiYzM3OTg5ODEyNWVmMGE1MjNiYWFlMDRhNDY0MDVlZGNjMmEwIHJlbGVhc2UzMC1tYWludAorNjc2NTAgODIwYzExMmNjMmE4NjVmN2ZiY2M2OTM1OWIyYzExZjhjMGY0N2NkZSBweTNrCis2NzY1MSA3MjUxOTJjNjRjMjg0OTI5NzA4YTQ4OGU1OTI3YTFiZTUxZGM0ODVmIHJlbGVhc2UzMC1tYWludAorNjc2NTMgYzhhYTMxNTRkYjBlMzYyYzg0M2ViOGU2MjhhNTRjMTZmMzRiZWUwMCBweTNrCis2NzY1NCBhOWUzMDI1MGVkMjA2N2ZmZTlhMmI3MzY0ZTIzNThlZTM1N2FjODU5IGxlZ2FjeS10cnVuaworNjc2NTUgOWUxMWM5MmRhNDc2Y2VkNWM4NzM5ZjNhMjEwOGMzYWMzMTVhNzkzYiBweTNrCis2NzY1OCBmNGIxNmMwMmQxZjU5ZTYzZGU1ODZjZTBmZThiOTkzYTBhOThlOGRjIGxlZ2FjeS10cnVuaworNjc2NTkgZGNhNTdjYjBjMjAwMWIwZTNlOTMwNWNmZTE3OGRlYmZmYWJhMGU0OSBsZWdhY3ktdHJ1bmsKKzY3NjYwIDk5ZGQwZDAwNzI1YTU5NWY5ZGRlNWQyYzk2MzFmNmZjNzRjZjk4NzYgcmVsZWFzZTI2LW1haW50Cis2NzY2MSBkY2FjODg1ZDAwZjFkYTlhZjgyYjBjN2I2ODkwNjUzY2FhNmI4ZDM4IHB5M2sKKzY3NjYyIDQ2M2JmYTA3MzA4MTAwYTE5ODY2MTFkZjk0MzQwOWU0MjY5MGZiNGYgcHkzaworNjc2NjMgOGI5ZDA4ZGM4NTAwNDhiMzE2NzQ1MmVkNWQ4MmY0YTAzMDQwYzRmNSBweTNrLWlzc3VlMTcxNworNjc2NjQgMjZhMDlkMzg2NjRhMDFjZjU3NjVhZWQyY2Y0MDI5NTg4OTJiNTIwMSBweTNrLWlzc3VlMTcxNworNjc2NjUgZDA0MGM0MzVhZGU4Yzk4ZGRmNGM1ZjQyZGMyZDhlOTgwOTRmNWIzMSBweTNrLWlzc3VlMTcxNworNjc2NjYgZGM2OTZkZWIyY2YyNmRhMjQwOThkOTY0MGVjN2U5Y2Q3OWRhZmM1NyBsZWdhY3ktdHJ1bmsKKzY3NjY3IDgzZDY0MmEzNDM5YjNlOTlkN2ZkMjg5MjUzNGY3MDMyODU5MWY0MGQgcmVsZWFzZTMwLW1haW50Cis2NzY2OCAzZGFjOTkyODE5NGI3YWI0MmQxMzFmMTU0NWIyMzQ1NmI1ZmZkZTZhIHB5M2staXNzdWUxNzE3Cis2NzY2OSAwOTNlNGZhNTBkODRiNjRkNzJiMjhiZDc2MWU0OTgwODdiY2JhZWJkIHB5M2staXNzdWUxNzE3Cis2NzY3MCAwNWNhZjQ0MGNlOGYwMGIxOTdmOTAzYWNhYzA5ZGEyOGY4N2MxZDY1IHB5M2staXNzdWUxNzE3Cis2NzY3MSAzOGU2MTE2ODQ1NGIyNTZhZmFlOGZmZjFmOTdhZjk3ZWUzMmQwMzY3IHB5M2staXNzdWUxNzE3Cis2NzY3MiBiNzlkMWQ3NmYxOTVhNzFkYmYzNjNhMzY0ZGQ1ODdiMjE4YjU1NzJkIHB5M2staXNzdWUxNzE3Cis2NzY3NiA2MWNiNmM0YWIyMGRiNzQ2ZDM3MTQ3MWQ0ODkzZWIyYmZkZTg4MWJkIGxlZ2FjeS10cnVuaworNjc2NzcgYWQ2NDc3MTY2OTZjNDg4ZGU0YjlmMjFhMzU0N2U0OTE4NjU0NTllNiBsZWdhY3ktdHJ1bmsKKzY3NjgwIGQ0NzBiOWE3ZTllMTg5NmRjMTlkNDZiZjBjMTBkNGUzMmE3YThkNzAgcHkzay1pc3N1ZTE3MTcKKzY3NjgxIDlmYTBhNjVlY2UyM2EyOTFlY2UwOTAxOTdmNTA2NWFmZTMyMDk4ZjQgbGVnYWN5LXRydW5rCis2NzY4MiA0MGY3NTY2MTU1NGRiODA3NDA2NWU5MWM5YzRlZGMxYWNiZDZiYTE0IHB5M2sKKzY3NjgzIGQ5ZTgyOGU4M2QxMjVkZWY3NjIzNWMzZDk4ZDVmNzNhYmVmOGRmNjYgcHkzaworNjc2ODQgNjk0ZDA0ZWQyYjQzZGFjNjU3YWJmNWNjZTgxN2ZmMzVmMDM4N2E5ZiByZWxlYXNlMjUtbWFpbnQKKzY3Njg1IDYyYzg5Y2JmYjUxMWI4NzI1MTY5YjM1ZTQxZjRhYzBjZmQ5YjM3NWUgbGVnYWN5LXRydW5rCis2NzY4NiA5OGFiZTljZGU3Y2U3NzcxYjU2ZjE5NWEyZTRkNzlkMWRlOGE2MWY1IHJlbGVhc2UyNS1tYWludAorNjc2ODcgYTZkZGQ5NDk4M2VhM2QzOGExYzE2NDNiYjEyOWQwN2E1OTY3ZGJkMiByZWxlYXNlMjUtbWFpbnQKKzY3Njg4IDlhMTBkNDQwNGJkMDAyY2Y1MzRhYTFmOTRjYjcyOTc5NWVmMmVkYjEgbGVnYWN5LXRydW5rCis2NzY4OSA0ODIzOWY2MjA5YjA2NGRiZTllMDBiZmI5OTBiMzBiZDc1ODA3NTU4IHB5M2sKKzY3NjkwIDI2NTE4ZDQxYTE4NjhjNDk1YzQ3M2JhNTExMWQ0NTYwMzZkNDk4ZGQgcmVsZWFzZTMwLW1haW50Cis2NzY5MSA1OTY3MGI3Yjc3YTZiNTMwNzc1ZGRjN2Q0MzBjOGU5YTZjNGI0NjBhIHJlbGVhc2UyNi1tYWludAorNjc2OTIgNGFmNWUyYTYwOWFiMzU4ZmM5MDA4ODViZTIxNDk0Y2M5MGEwNWQ1ZSBsZWdhY3ktdHJ1bmsKKzY3NjkzIGIwODlhNTc3N2Q4MDZlNzE3MzkyOGQyNWEzZWMyODFlYWZkNWZiYTMgcmVsZWFzZTI1LW1haW50Cis2NzY5NCBhZTgxOTc1MTAzYjA4OWMyYTAxZWM4MDYwZjhkNGQyYWRiNmRjYTZiIGxlZ2FjeS10cnVuaworNjc2OTUgMjJhYTdkZDBlYTgxYjkxOGE2ZGY2N2U3NGQ2YmYwZTU1YzhhMGZkOCBweTNrCis2NzY5NiAyZjhjMzE3ZGZmMTdlN2Y2YTkyYTgxMzJiZWI0MTcwNWFlZmM2MTdhIHJlbGVhc2UyNi1tYWludAorNjc2OTcgYWJmODE1YjgwYjVkNTU3YTA1MzM2MGIwMzJlNDNkZDEwYWZmYjRlNyBweTNrCis2NzY5OCBmYjI0NTZhMzZhODNhODg1M2UyZTI3NGE4ZjVkNzNlYmJlNjgwOWUyIHJlbGVhc2UzMC1tYWludAorNjc2OTkgZTM1NDY4YmM0ZGY0MTFkZGQzYjhkN2YyZTM3NWJhOGYzMGIyZjllMSByZWxlYXNlMjUtbWFpbnQKKzY3NzAwIDIxZGU3YTkxNDZmNzRhMGM3OGEzM2VjZTBhOGNjOWMwNTBiNGQxMGEgcmVsZWFzZTMwLW1haW50Cis2NzcwMSAwMWMwMjNkOTIxOGViZDk5MzZkYzI2YTQ5YjU3NGQ0NWZkMGI1MWUxIHJlbGVhc2UyNi1tYWludAorNjc3MDIgNzE2Nzk3NTY0NjllOTAxOWQyZWE1MTZkNjcyNGZkOWEyOTkxMzg0MCBweTNrCis2NzcwMyA5YzMxYTk4NzQ0Nzg4YmY2ZmVhM2E2MzU4MTdkODc4N2YyMTUxMzg3IHB5M2sKKzY3NzA0IGU0ZTBmZjdkZGM4NWVjMWUxNTYxOTc2Yjk3ODhlYjVjMTVhMWZmZWEgcmVsZWFzZTMwLW1haW50Cis2NzcwNyAwZGYwZmRmYzhlMWIyYzAzYjEwZTBlMWM4M2ZiOTljNjBmYmM5MDgyIGxlZ2FjeS10cnVuaworNjc3MDggYTI1MjUxNTRlNDRmMjQwZTkwMzU2YWIyYTMxM2ZiNmJmYTFkMTY4NSBweTNrCis2NzcwOSA3NzZhNmNhZmMyMWEzNDgxOTU5MzEzMThlNTc3Y2NjMjZmOTUxOTQyIHJlbGVhc2UyNi1tYWludAorNjc3MTAgMjBhODRlMDYzMDUyNTcyMzJmZjc4NmVmOTI0YmIwM2UwMWZhZTMwOCByZWxlYXNlMzAtbWFpbnQKKzY3NzExIGQ5MWU2Mjg2Mjc2NDUxYmQ3YjJiYzRjOWJhZmZiOGU2YTU2MzcxMzQgcHkzaworNjc3MTIgMjZlNzg5NDIxNjVlMTBmYTY2NjI5MDAzYWI3Y2QwZWFhMGI4YmRlOSByZWxlYXNlMzAtbWFpbnQKKzY3NzEzIDNlMWM0NDlkMTFlMGVhZTAwMmEyZTFlYTRjYjMwYTNiMTg5MTdmMGYgcHkzaworNjc3MTQgZGY2NjQ5OTUxNDEwZWM4M2Q4ZWNkMjY5OTBhYzE4YTJlNDMzZjQzOSByZWxlYXNlMzAtbWFpbnQKKzY3NzE1IDMwMGI5NWZhN2I0ZDNmOWIxZDQ3MTc0MGI0NzNlMThjNjE0YWY4YzEgcHkzaworNjc3MTcgYjQ1NTJlMmZmZDVhNDE4NDUyZDJjMTBjMjU4OGQ4NjY3ZGY0ZjE0ZiBsZWdhY3ktdHJ1bmsKKzY3NzE4IGY5Yjk1Mjk0YWM4NTc3YTg0NjFhOWRlMWE2MjU2MWVlZGU1ODI5YjQgcmVsZWFzZTI2LW1haW50Cis2NzcxOSA1ODU1ZTNlMGU4NWIxNDljNmE4MTFmZjVhM2Y2OTg5Y2RjZGI4MDhmIHB5M2sKKzY3NzIwIGZkZWM1NzY2MTFiZGZhNjM3NWMyNTJjMjNlMDdkOTc5OWRiYjEzZjQgcmVsZWFzZTMwLW1haW50Cis2NzcyMSAzM2ExZTEwMDhlNTQwZmJlNjY1OTgwODllYjk4MThjZTc3MTgyZDJlIHJlbGVhc2UzMC1tYWludAorNjc3MjIgZWVlZjcxZGQzY2NlMDJmOGM2Njk1ODlmMWZkNDk5MDNmMzQ2ZjlhNyByZWxlYXNlMjYtbWFpbnQKKzY3NzI0IDQ2NDZjMzM1MzFkYjMwM2Y5YmJhMTEzOTBhY2RlNjQ2NGJmMGY2YzcgcHkzaworNjc3MjUgMjQ1ZTc4N2I5MGZjMTBlYThmZWQ4MGUzODk1MjkzMDZkZjMxZWMwZiBsZWdhY3ktdHJ1bmsKKzY3NzI2IDYxZDA2NDA5YTY2MDY5M2I0NzhhNjUxNjM0ODhhYWUwYzJiMTE4MDQgcmVsZWFzZTI0LW1haW50Cis2NzcyNyAzM2NkMDY0OTE4NTg1M2VlZjdjMGFhZjFlYzE4N2U4ZGE5OGMwMDViIHJlbGVhc2UyNC1tYWludAorNjc3MjggYTZjM2M3MTVlMmI3MDc0MGM0YjZiNGY3ZGM2ZjQ3YjE2YTdlNTkwNSByZWxlYXNlMjQtbWFpbnQKKzY3NzI5IGZiNWY4YWZmMjNmZDFjY2MxZTYxMmZmYTYzMThhNTg0ZGMzMzZmYjYgcmVsZWFzZTI0LW1haW50Cis2NzczMSAwYjdkY2RiNWNhM2FhYzg5ZTA1M2I2NzkyYTQxYmE5NTI2MzlkNjBiIHJlbGVhc2UyNS1tYWludAorNjc3MzIgMmUyMWNlYTQzNjcwNzFjMjY0OTI1MDM3YzZhMTM3OTJmOGJiNWI4YiByZWxlYXNlMjUtbWFpbnQKKzY3NzMzIDRkMjQyMjk4OTk4MWFlYmNmYzYwMTVhNjcxMjFjMDNhNzYzNjU0MzUgcmVsZWFzZTI1LW1haW50Cis2NzczNCA5Y2FhMWU1ZGQ4MmJkZDAyZTU5NTZjZTJlMzUwOTVkMThjMjE0NDNhIHJlbGVhc2UyNS1tYWludAorNjc3MzUgMWYxYTExNzc2Nzc0MDMzMWU4YjE4MGU1MzAzMWU0M2U4ZTMzZTZiNCByZWxlYXNlMjUtbWFpbnQKKzY3NzM2IDhkOTAyYzUxM2JhMGY4NTlmNTc0MmEyZWU0YWFlZGJjZWIzMjBlYzggcmVsZWFzZTI1LW1haW50Cis2NzczNyA3NmYxODllYTU1MDlmMWIyNDk3YTVkNWQ4Njc3MWU4NTBlMDExNzVkIHJlbGVhc2UyNS1tYWludAorNjc3MzggM2EzMzJiZjA2ZGEwNjllZmE3ODdkZTQ3YmE4Y2VmYWRkMDI1ZmEwNCByZWxlYXNlMjUtbWFpbnQKKzY3NzM5IGU2ZGJhZGFiMDFkOGE4NTAxZjg1YjAzMmNhZjM2M2QzMGI0MmMzNGYgcmVsZWFzZTI1LW1haW50Cis2Nzc0MCA1ZjRmNmI3ZGE4Y2JjYTU3NGZlYmFkOTNkNDM1OGZkZGJhMWVjYWIzIHJlbGVhc2UyNS1tYWludAorNjc3NDEgMTJkZDJjZjVlMGM4MDAyNjUwNWE4M2Q4MTY3MzAxNTU3NDE0NzM0MCByZWxlYXNlMjUtbWFpbnQKKzY3NzQyIDk1MzBkMzM0ZDI2MjQyMTllN2VlMWFlY2FmMzM1MzJlOTEwMjY2YmMgcmVsZWFzZTI1LW1haW50Cis2Nzc0MyA1ODQ2OGZjZGUwNmU5YmY1M2JhNThkNWM0ZjQyZTg5ZTc5YjlhMzUxIHJlbGVhc2UyNS1tYWludAorNjc3NDQgODhjMDhhNjNjYjc0MTU3MGNjMjUwOTZjZWU5MTQ0MWY5YWI2M2YwMyByZWxlYXNlMjQtbWFpbnQKKzY3NzQ1IDZlODBlYzQxMzA5NzNkZTU1ZjUwODczOGEwOWFjOWZjYjMwZDAwNGMgcmVsZWFzZTI1LW1haW50Cis2Nzc0NiBiYjFkOWFlODAyYzMxNTJkMGUzMGIwZGYzZjgzMDk1MDc1OGYxZjBjIGxlZ2FjeS10cnVuaworNjc3NDcgNzQwY2U5YTUyM2ZmYzRhY2M5MTEyMDAyYmM5OTIzNGQ4NmNkNDNlMyBweTNrCis2Nzc0OCBhMDkwYWFiNTc1YzZlZjZjMzIyZDQ5NDc2NzA0ZTI4ZGQ0NWVmOGViIGxlZ2FjeS10cnVuaworNjc3NDkgOWM0MjhkYzNkNmZiNzc4MmUxODA1NzRhYmIzYjM2NTdmMjI4M2FjNCBweTNrCis2Nzc1MCBiNWVmY2EzMDRkMmFmOTFlMWNkMGU2ZTZmYTllMTEwYjBlMDcwMDBkIGxlZ2FjeS10cnVuaworNjc3NTEgZjIwZWI4MDk1MzVlOTFjMGIxNDQxNmNjNTQ0NzM1N2NmY2JiZTk1YyBsZWdhY3ktdHJ1bmsKKzY3NzUyIDQyNjRjZjAwYTc1YzBmZTIwNjJlZDg0NjI3ZjA0ZTQ2ZjM4NzgxOGYgcmVsZWFzZTI2LW1haW50Cis2Nzc1MyBkZDFiOGRhMDFkMDJkMThiZDNkZjdjM2NlZTIyNzU2Mjg4N2M4ODNiIHB5M2sKKzY3NzU0IDI1MjkyN2EyZjMyZDZmZTBmZDBjY2YzOWM1YzczOTJhNzgxN2I1MjMgcmVsZWFzZTMwLW1haW50Cis2Nzc1NSBjYzcyNzIzOWU1MWIxNjQ3MjBmZWU2MjQzZDMxNjU2ZjZkYmYxZWU0IHB5M2sKKzY3NzU5IGViMDcwMDljODY2MDU4MTFlNjkzNWFiYmZlOTgxODkwODYwYTc0ZDMgcHkzaworNjc3NjAgMThmOTZmNjg4M2FmNWQ1MDkyN2U2Yjk3ZDQ2MzMyN2VmMDAyODU4YSByZWxlYXNlMzAtbWFpbnQKKzY3NzYxIDcwMzNiMjg2ODVhMTNiZjQ1NTQ0NWE0MThjOWIwYzViOTY0MDA1YWMgbGVnYWN5LXRydW5rCis2Nzc2MiBiMDk1MTc4YzA0OTI4YTM0NmMwMmI4YTQ3NDA0NzA0Yjc4MmJiNjcxIGxlZ2FjeS10cnVuaworNjc3NjMgMThiY2UyZjJhN2M1NmJhZDRjYjM2NGY2ZjFiMGRjNjdjYzc2MWRhOSBweTNrCis2Nzc2NCBkMTU3NDZhYmY2Yzc4M2M2MjJhZmU0YmQyMzk5MDAyZGM1Mzg3YzI0IHJlbGVhc2UyNi1tYWludAorNjc3NzcgNTc1Zjk3M2ZmMjQ0MzNlMTUyZTg4YTQzNGM0YzhhNjc0NTI0ZDI1MCBsZWdhY3ktdHJ1bmsKKzY3Nzc5IDcyYTdhYzIxOGVhMzI4M2NkMWQ0YjEzYjhlZmQzMmY5YmFmYWIyZDcgbGVnYWN5LXRydW5rCis2Nzc4MCA5NmFiMDhlZDk1YTQwMmFkN2Y5ZmJkNmFkYTFjNDIxN2IwOTgxNjFkIHB5M2sKKzY3NzgxIDRkYjY2YzIwY2E2OGU1YTE4YTI2NjZkNWRmYTZkNjlkODc1MGJhNmIgcHkzaworNjc3ODIgZWE5YzYwMjZhZTdlYTI0NjJjZjNhZmNlZWJiNTU4NTc2OTFiODAwMSBweTNrCis2Nzc4MyBhZDk4MmMyNmMzZGQ1ZjRkNzc5YTY1OTFhOWU3NDZiN2M1Y2U4NjQ3IHB5M2sKKzY3Nzg0IGUzNmJlMWVjNzI5NjVjMDBlNmIwYTZmYTA3ZDMwOGM3YWEzZmZlNGYgbGVnYWN5LXRydW5rCis2Nzc4NSA5ZTlmY2E5NGQyODYyMTY4ZjE0MDY5OGZhN2NiNzI0MTA3ZDY3NmFkIGxlZ2FjeS10cnVuaworNjc3ODYgMzMzNmU0Yjc3YTA0MTJlYWU4N2FhMzJmYTNmMGZjNDIwZmVhZjU4YSBweTNrCis2Nzc4NyBkYzZmOTc0ZmI3ZDRmODMyNDM1ZDA2MTljMzU3NzRmODdmMjc1NWUwIGxlZ2FjeS10cnVuaworNjc3ODggMWFmMmI4YjBhZDg4Y2I5NDc5Y2I0N2RhYmNhZGI1ZjUyNmM3MjhiNiBsZWdhY3ktdHJ1bmsKKzY3Nzg5IGRhY2FhMWY0NDE5ZDcwM2M2ODY1ODZjMmFkOWU3NjdlOGUyZTc2NTMgcHkzaworNjc3OTAgYWI1MWMxNTA5YmMwNGE0NmJmOWE1NDMyOWNhMWNiZGFhMjk4YmNmMSBsZWdhY3ktdHJ1bmsKKzY3NzkxIGVkZDcyNDM3Y2VjM2YzNTdiMjBlYmEwZjQwMDEzZjdlN2U5MTZkMmIgcmVsZWFzZTI2LW1haW50Cis2Nzc5MiA3ZGFiODgwNzBiYzdkZmFkMDg5NTA3MDRlMjkyZDdkMjE1YTc1ODViIHB5M2sKKzY3NzkzIGViMjg3NmFlMDQ3Njk2MGZlNDc2NTRlMmU5MGYzMmIyMzIxN2I1OTMgcmVsZWFzZTMwLW1haW50Cis2Nzc5NCAyMGYxNWMwZjIxZjg4YTlhZjg4NWI3YzA1YzJmMDgwYmU3MzA5NGI3IHB5M2sKKzY3Nzk1IDQ4MDU3NDVkNTU5OTM3N2JmOGI5YzM1YjYzNDVjMGNiY2M1NGE4YmMgcmVsZWFzZTMwLW1haW50Cis2Nzc5NiAyOTk2ODM5NWY5MjA1MzY4OTU4MGRiYTY5YmRkYWVjYWJmZDc1YzdhIHJlbGVhc2UyNi1tYWludAorNjc3OTcgMTRjZDU4ODU0NGZhMWIxYzlhMzU5NWIzMmI4MWExOGUzZmFhNjFkZSBsZWdhY3ktdHJ1bmsKKzY3Nzk4IGQ1MGRhZDJiMjc1MDQyYWRlYWYzMDlhOTU2YjNhZThiMjQ3MDAxMjQgcHkzaworNjc4MDEgOTU0MWEyZWNjNGZiYmNlZTRmYzhlNjI4NjdlNGY4ZTgwYWZhZDA2ZiByZWxlYXNlMjYtbWFpbnQKKzY3ODAyIGI3ZDlhZGM0YzM0Mzc5NmJhZTNjODc4MGFhYjgyOGVjODM3NGIxZTcgbGVnYWN5LXRydW5rCis2NzgwMyAyMmZmOWE0NjI5ODc1NWRlNTg3YjU5NmE5YTRjN2NlMzM0MWJhOTk2IHB5M2sKKzY3ODA0IGExNzViMTliNGJmMmNlOTg0MTBlNjFmMjc5OWYyZGVhYTdmNDdmNjkgcmVsZWFzZTMwLW1haW50Cis2NzgwNiA4YzQyNGYxMTZmYjhkMGVkNzVkN2E5YjJlNGMyNmViN2ZiYzc4Yzg5IGxlZ2FjeS10cnVuaworNjc4MDcgMjFkMzM1N2RjYmVjNDFmYzZmZTAwYzA0OTg1MTE4YWM4OTBmYjEzNiByZWxlYXNlMjYtbWFpbnQKKzY3ODEwIGE0M2E2ZGYxOGJhNGJjNjg5YzIyMThkZDA0NjAwMTcxYTJjOGM3NmMgcHkzaworNjc4MTEgYWVmMDczMGRmOWJhMzI3YThlMTVkMzcyYWU3MzdkZmI2ZWM0MmU2ZiByZWxlYXNlMzAtbWFpbnQKKzY3ODEzIDY4OTg3ZTkzMTE5M2ZhZjY5ZDJiYWJkMTA0MDU3MDY4NzU0MjhiM2YgcmVsZWFzZTI0LW1haW50Cis2NzgxNCAwNzQwN2RlMTgzOTQ4ODNlNGZkZDQ2Y2M5Y2Y0ZDlkMTZkY2FmNDUxIHB5M2sKKzY3ODE1IGQwNmIwNGM1N2I1MzYxODAxOGY3MWJiZWFkOTUwOWNiZTBjMzU1MDggcmVsZWFzZTMwLW1haW50Cis2NzgxOCA5NGU3OWQ3OGRmZjBkZmI1YzUzZjQ5ODQyYzdkZjY1YWQ1Yjc5ZTY2IGxlZ2FjeS10cnVuaworNjc4MjIgZjBkYjA2ZjQ5YTRlMzBlNDk2NjYyNTFmNjQ4Y2U5NWU3MDllMTU2OSBsZWdhY3ktdHJ1bmsKKzY3ODIzIDMzNjY4NjQ4MTQ0NjYwMDBmNzhhZDk3NWI4YzdkZWJiOGEyMzhlNjcgcHkzaworNjc4MjQgOTJlMjE2NTJmMmY0ZDMyZGJiY2Y2YzVhYjM5ZGQ0YmMwMTI2ZGMyNyBweTNrCis2NzgyNSBjYmJlMjU4ODY2NDg3YTQwNjBlZGZhNTJjOGQzOTYwYTFhYzY1NDJkIHJlbGVhc2UyNS1tYWludAorNjc4MzIgZmM5NzI5YzgwYjc5MWE3Y2JjZTdhNmI5YzQ2OWFhY2E1MjI4YTg4NCBsZWdhY3ktdHJ1bmsKKzY3ODM0IDE4OWI0NjJlZTlkNGYyNWJmYzJkMDMwYjY5MTg0YTA5MDhkNzcyMjQgcHkzaworNjc4MzkgMmVlNDY1MzkyN2Y3MmY5YmIzZmYxNGIzMDgzZDRhMjAzZDY4NGRmYyBweTNrCis2Nzg0MCBkYWY2ZDNhZjQwYzRiOTM5ZGQxZGNmMTVhNzc3OTVmY2Y2NzM2ZjdjIHB5M2sKKzY3ODQxIDAwMWEyNTE1ZDU3YjAxODhhNGFjNDViZTlhOGM2ZjRjN2VhZjI0ZmUgcHkzaworNjc4NDIgYWViZjcxMjRkZDMyMmE4ZmI1NTk0ZDQ2ZTlhNjUxZGJlNWI2YTkxZiByZWxlYXNlMzAtbWFpbnQKKzY3ODQzIDgyZTZmZTM3MDc4MjlmNjZmNGQ0ZmQwYzhhMzVhMDNkYzUzMGRjYmEgcHkzaworNjc4NDQgMjRiODBiNzk3OGVjMjE5NGM0ZmM3ZTExMDBhYTQwYjFhZmUxMWY3MyBsZWdhY3ktdHJ1bmsKKzY3ODQ1IDU2YjdlYmYxMmVhM2FkZmQ5MDMyNDYwNmUwZGIxN2NjZjY5NDgzNTggcmVsZWFzZTI2LW1haW50Cis2Nzg0NiA0N2VjYmUyZDNlZWZiYzUzYzc1YmJjMWE2ZWRlNzNkY2UzNDk0ZDk2IHB5M2sKKzY3ODQ3IGJmMjBjMzg0YmU1NjM5YWVhMDUwZTgwMmFjZTg0MTNjMGM4Y2JiM2UgcmVsZWFzZTMwLW1haW50Cis2Nzg0OCA2ZmE1Zjk2OWVmZTY0N2EyM2Y4ZjJhMWI0NjIyZmQ1NWMzMmViOGZjIGxlZ2FjeS10cnVuaworNjc4NDkgNWU4MzkyOWY3ZWViNjFkNmUwMDliYjFmNDY3OTYyMzgxZWVkNWVmYSBsZWdhY3ktdHJ1bmsKKzY3ODUwIDlhMTg5MDk4MjQ4OWU1NDY5OTcyNDAwYzYzNzlmNGIyOTE5OTE5ZjQgbGVnYWN5LXRydW5rCis2Nzg1MSAwZGI5MDdhNzA3MjM2MDlhYjFhODcwNWRhN2YwYjczOWY2MTZkZTA3IHB5M2sKKzY3ODUyIGYzZjFmMTQ2MmM4MjUzNmJiMjM3OTZlNzBjODU1MjIxNDRlZTI0ZGIgcmVsZWFzZTI0LW1haW50Cis2Nzg1MyA0OGYyNzM3MzM3OTU2ZWUxNWUzOTEwZDc4M2YyZWY3NDI0OWIwNjM5IHJlbGVhc2UyNC1tYWludAorNjc4NTQgNjA4ODU2YTdlNTY4Yjg2ZTUxNjNlYTZhODdlYjAxNjcyODhiYzY2OCByZWxlYXNlMjUtbWFpbnQKKzY3ODU1IDNjYzA1NmQyMWMyZjQ0MzVhNTM0ZDIzMzQ1YmFkOWMwYTlkOWIzY2IgcmVsZWFzZTI1LW1haW50Cis2Nzg1NiBiNTYyMzEyMjQ3MjhhYmYyY2IzZWFhM2I0N2FmZDc4MDlmODVkYjkzIHJlbGVhc2UyNS1tYWludAorNjc4NTcgNDk2ZGZmNDdiYzdlZjZmYzFhNmUxNzQyMjQ3NTk5ZjJjOWQ4ZGJiMyBsZWdhY3ktdHJ1bmsKKzY3ODU4IDliZGViMGJlMWRhZDRkYzhiMGYxOWQ2MWM2NmRmODk5ZTYzZTlkZmQgcHkzaworNjc4NTkgMWM5NGU3OThjODViMWE2MTM5NDg4MjdhMDA5YzZhYmJjMzBjZjRmOCBsZWdhY3ktdHJ1bmsKKzY3ODYwIDQyOGY2YzRlODQ0NjIxMGRjMTM5NWE2ZjAxYWNjZTVkOGI2NTY4ZTcgcHkzaworNjc4NjEgZDAyODJhMjkyYjBhYThjMjUyNTFjY2U0MGM5ZDc4N2QyOGY2MGNiMyByZWxlYXNlMzAtbWFpbnQKKzY3ODYyIDlmYjJhMjNlYWM0MzVhMmJkMGQ2ZjI5NGE1YmYwNWI5ZDQ4YTYzZDcgbGVnYWN5LXRydW5rCis2Nzg2MyAwNjQ3OTQ4YmU4NDBlZmQzYmU4OWFlMDg4ZGFhMjVhNTVlNDlhMWJiIGxlZ2FjeS10cnVuaworNjc4NjQgNjcwMjA0Y2YyM2UyMjU2ZDJiZGNkNDIyMjFmN2EwYWM0ZmNiNTZiZiBsZWdhY3ktdHJ1bmsKKzY3ODY1IGE3NjU2MThjN2U5NDRmM2UwNzBhNjUyNGRmZmFjOGVlNmE0M2EyZTMgcHkzaworNjc4NjYgNDYyNzljZWJlYTljZjE0M2NjYjkwYzQ5MzczMzY1Y2VhZTBhNzcxZiByZWxlYXNlMjQtbWFpbnQKKzY3ODY3IDc3M2FmMTg2MDhlM2E2MmE0MDllOTMzZGI0ODA4ZjAzYmFlMGQxZWUgcmVsZWFzZTI1LW1haW50Cis2Nzg2OCBlZGIyZWVmYjY4NTZmNmZiMGYzMTE5ZDU4YmQ5MjQ0ODllMDExNDE0IHJlbGVhc2UyNi1tYWludAorNjc4NjkgNzhmYzA5NmU1MDg1Mjk4ZmQwMTFhNTMxZDY1MmRlNDk3YjlmMjMyNSBweTNrLWlzc3VlMTcxNworNjc4NzAgN2ZlNzJhZTE5YWIyOTBhMzRjNDgzMTNkYjBlMTBlYWZhMWVlNjM4NiBweTNrLWlzc3VlMTcxNworNjc4NzEgNDViZWE1ODQ2OTRlMzUwY2YyYjkxMjQxNWJkYzY4MWE1YWQyMjE2MiBweTNrCis2Nzg3MiBlZTljOWNjMDI4Y2UxNTkxOTU3ZTdjOGQ3MTAxNmUzZDJiZmZlZWY1IHB5M2staXNzdWUxNzE3Cis2Nzg3MyBhZDI0NmNiNGY2NjJlMjExYzQ3MDFmZTNiOWZkY2I2MzljOTk0MDgwIHJlbGVhc2UzMC1tYWludAorNjc4NzQgNmUzZTU4MmZlM2YzODhlZDhiMDI3Y2FiNWU2Y2NiNGQ2ZTU3MmFhNyBweTNrLWlzc3VlMTcxNworNjc4NzUgMGMwYjlhYmI1ODQyNmRkOGE2N2Q4MGQ0NmM1OTdmYmQ0ZmY3MWJjOCBweTNrLWlzc3VlMTcxNworNjc4NzYgOGJiOWE4NTQ2MzliNjkwNWUwMzlkZWY4M2EzYmE1YTcyZGFkMTExYiBweTNrLWlzc3VlMTcxNworNjc4NzcgZmI5OTNmMDkzY2JmNDNiZGQxYzJiYmM0ZDYxNzUzNDM4YWJjZmJjNyBweTNrLWlzc3VlMTcxNworNjc4NzggYTY1NGYxZTFiZTIzMWZkMzNiODkwOTE1ZWE1MzY4ODViZDdjN2NhMCBweTNrLWlzc3VlMTcxNworNjc4NzkgMGRjYTJiNDU3Nzc1ZDQ3MjVkZDQ4MjAyZjVmNWY2N2RhODhmNzA5ZCBweTNrLWlzc3VlMTcxNworNjc4ODAgNTg5ZWRmNjE1YWRiNzI2MmRmOWNhM2JhNzNmYWU1ZDMxNzMxOGE2NiBsZWdhY3ktdHJ1bmsKKzY3ODgxIGE3YjM1N2Y5ZThhNDhlYWQ2MmVkNjFhZjlhOGM1OGM2Y2Y5ZTcyOTcgcHkzaworNjc4ODIgYzRmZmZhMDk3MmUzNjhlMGQ3Mzk5NWJmYzg2OThjZjZhOWNiMzNkOCBsZWdhY3ktdHJ1bmsKKzY3ODg0IDFkOTYxZmU1NGE2ZjlkM2MxOTQxMDY3YTEzMjcyNmJmZjU1ZTFkYzMgcHkzaworNjc4ODUgZjMzZGNmN2U2ZTFjM2VkOTQ1ZWJiOWI5YmIyYzgzZjgxNzcyNjhhMiBsZWdhY3ktdHJ1bmsKKzY3ODg2IDAxYjgwNzUzNzkxNTY1MWJjMTQzYmQxMDMyMzcxNTQwMWMwOGE4ZTggcHkzaworNjc4ODcgZTg3YTI1NjExODhiNTMzNTIzMWZkNmViYWJjN2IzMmExYmZmOWIxMCBweTNrCis2Nzg4OCAxYWRmYWJjYmUwNzMxN2ZhZDVkZmZkYWRlZWI1NjBiMGFkNmJiODE0IHJlbGVhc2UzMC1tYWludAorNjc4ODkgM2FiMTAyZDljZjU2MDZhNzQ5NjgzMzZjMTkzYjExMWIyNjdhYjBjMyBsZWdhY3ktdHJ1bmsKKzY3ODkwIGFmNTZlM2YxNGViNzRiMzBkMzk3M2Q1YmRjZTEyMjA3ZWIxNDg3YTEgbGVnYWN5LXRydW5rCis2Nzg5MSA1Mjk0YjIxNGUxYmU5OGU3OTc5YmJkZjk4MTM1MzQ2MGM2ZjY5YmRmIGxlZ2FjeS10cnVuaworNjc4OTIgNGZkYTRmNTQ1Zjc5MDY5MDEzMzI1MTM1NmFkOTJkODJiODUzNGJiYyBsZWdhY3ktdHJ1bmsKKzY3ODkzIDExNjY3NjEwZTlmNTZhNzNlOGI2ODdmMDk5ZGVlMTY3YTY3MWY5OTggcmVsZWFzZTI2LW1haW50Cis2Nzg5NCA1MDJmNjFkMWZiYWY0YjUxZWMwM2RlZWI3OTg1YzVmOGYxNTNlOTI4IHB5M2staXNzdWUxNzE3Cis2Nzg5NSAxYmY3MjdlMmIwOGZkZTRlMGNhYjg2NTM4MDE2NjM0ODE5YjIwYmYzIGxlZ2FjeS10cnVuaworNjc4OTYgZTQ2NzUxMTNkMTBlZmE3MzljNWQ4YWMzMmUzMmI0ZWRiYTUzZTAzZiByZWxlYXNlMjYtbWFpbnQKKzY3ODk4IGRlN2JiYzRkMGIxZDE3MjVmMjI5MjEyMGU0Mzc5N2U0NGU2OTMyNjAgbGVnYWN5LXRydW5rCis2NzkwMiBkNzlmZGQ4NDIwZjM2ZWM4NWRiZjY0MmZhYjcwZDlhYTBkMjM5Y2ExIGxlZ2FjeS10cnVuaworNjc5MDMgYzNiOTc1OTlkN2ExOTc0ZDFmMjg4NWU5N2Q2MTQ4MTVkYTAzN2IxOCBweTNrCis2NzkwNCAwMzc5OWJiNDQ3NzIyODNkODEwZTYyMWUzOWVlZWViOWUzOGMwN2EyIGxlZ2FjeS10cnVuaworNjc5MDUgYmQzYzVkZTRjYzU0MWJmMDlkYjUxMzlhNjdlNDc3NTdiNTBlMmMyYiBsZWdhY3ktdHJ1bmsKKzY3OTA2IDI0MTAyN2IyNGI0NWQ5NDMwYWMxZTgxOTE0MTMxNTQ0NDNiOWQ5ZjUgbGVnYWN5LXRydW5rCis2NzkwNyA5NGMwNTQ2NjMwNmUyMWYzMjA2MjNiMDFkMGJmMjlmMjNhZTk1YWU3IGxlZ2FjeS10cnVuaworNjc5MDggNGJkZWNhYTRlY2FiMmI2YzQ1NjFkYzRlNjY1NjM2NTk3NmQ3NDNjMSBsZWdhY3ktdHJ1bmsKKzY3OTA5IDNhMjU5YTFlMWQ5YzVlMDkxOTg3YTFlZjk0NjNlOWQ2Y2U1MDU4M2YgcmVsZWFzZTI2LW1haW50Cis2NzkxMCBhYzg4YjM0MzIwNjYwYjBkOTVlMDg4Mjc3MDdhNzI4MDFlNTkxNWZlIHB5M2sKKzY3OTExIDM5NjUzMTRiYjkyMmMyNzY1YzU3YmM1MTAxMDAwOWRlOTdhMmI2M2QgcmVsZWFzZTMwLW1haW50Cis2NzkxMiAzMTMyZWQxMmVjMTAwNmMzN2JiYzIzZWRjZjUyYmJmNzg0YzVjNWUzIGxlZ2FjeS10cnVuaworNjc5MTMgMDVlMDEwNTE1YzRiYzU3MTAyMzBkYzQ2NDI3NTk1NDgzYTZjYjUyZSByZWxlYXNlMjUtbWFpbnQKKzY3OTE0IDBmOWE3ZWRiOGU1OGM4ODFlM2Q1NjUwMjI0NTAzOTk0ZTY4ZDI5MWMgcmVsZWFzZTI1LW1haW50Cis2NzkxNSBhYTQ1YTE3NzNmNmUwY2U0YTQ3ODdkZjVlMmU1Zjg0NmZkYjE0NGVlIHJlbGVhc2UyNS1tYWludAorNjc5MTYgYTBhNmQ5OTA5MzEyYWQ5YzFkODQ0YWY2NmU5YzkxOTMxYjkzODUyYSByZWxlYXNlMjUtbWFpbnQKKzY3OTE3IGM3NGZkNzUxODdkOTA0ODkxZTIwNDdmNzdiNTQzMjllY2VjZjM1MWEgcmVsZWFzZTI1LW1haW50Cis2NzkxOCA3OTI5NTY0MWZjZjBiZTVkN2M1MjZmMmZmZmMyMzhmNmFmZDFlNDVkIGxlZ2FjeS10cnVuaworNjc5MjAgODc1MTI4OGRkZDk2MWM2Mzg4YWJmYjE0NTE5ZTNiYmI0YzRjNzc0OSBsZWdhY3ktdHJ1bmsKKzY3OTIxIDEwMDk3YmQ2NTU2NGYwZGJkY2QwZmQxNjhlNmRlZWUyZDY5NzMzZTMgbGVnYWN5LXRydW5rCis2NzkyMyAwNjlkOTVkZWVhOTE1NGUyYTMyMDUxMGU5NGJiN2Y3MTRjNjYyNDY4IGxlZ2FjeS10cnVuaworNjc5MjQgZWZkNDAwM2VlOGVhNWFhMzQ1MDI3NjBhN2VhMjk2MDQ3MTAyOTQ5OCBsZWdhY3ktdHJ1bmsKKzY3OTI1IDUwMjc5MjYzODAxYjVjZmQyNGRlOGI5ZWE4NDI5NDcwZTM4YWVmNTggcHkzaworNjc5MjYgZjZjZDFhN2EzMWJiODY0Nzc1YmE0ODNlOTY0ZGZkNGMzN2UwODc0MCBsZWdhY3ktdHJ1bmsKKzY3OTI3IDExMmJhM2RmODUxZDJmZjYzOTBlYTJlNGE4MWMxODE1ODhlZWE0ZTIgbGVnYWN5LXRydW5rCis2NzkyOSAwYzg1MmMxMTZlMjM1ZGYwNWUxYmRjYmRhZTI1MDViNTg0OGJjMjRlIHB5M2sKKzY3OTMwIDkyYmMxNGU4YjM3ZTZhYzNkNDVlMDhhNGIwYzlhNTZiYjQ3ZWRhYmQgbGVnYWN5LXRydW5rCis2NzkzMSBjM2I0M2NiNjcwM2M2MmY2NjcwY2ZiZTU2ZThjMTY5NzQ5NGNmMWRkIHB5M2sKKzY3OTMyIGY4NTlkODI0MzY5ZWE5ZmIwNWVmZWRiMjg3OTJjMjIzMDhhNzhmMWEgbGVnYWN5LXRydW5rCis2NzkzMyBhZGI5YjU0N2M3ZmU4M2E1OGY1NzZhZTQ1NzMyMTg0NjA4Yzg5ZTdmIHB5M2sKKzY3OTM0IGY2YWU3Y2M5ZTJlODVkNzc2YTE0NDc1ZWIxMGE4Yjc1YTQ0ZDkwNzIgbGVnYWN5LXRydW5rCis2NzkzNSA2OTlmZGQ4MjE3ZjNiYTgyZDI5MmFkYTAyMWRiMjFkZGVkNjI4ZGQwIGxlZ2FjeS10cnVuaworNjc5MzYgZDI3MDI0NzU1NTkzYjhmNzkyMTBjM2I5YmMzMTY1ZWE4NmVmNmY5NSByZWxlYXNlMjYtbWFpbnQKKzY3OTM3IDMwM2FkNDVhOTY3ZmM1MWVlNzY1MTQwOWVkNGExNjc2YmRkNmUzNzIgcHkzaworNjc5MzggNjY1YzRhYzQ3MDczZTczZjg5ZGQ4MzIwMWZkOWQ2OGJiYWMzYzNjOCBweTNrCis2NzkzOSBkYjUwZGMwMDYxZWRlYjNiNWMwNjJkMDFjZTE3MzljNzRhOWUyYzJmIHB5M2sKKzY3OTQwIDJlNTMyNjJjNTVlYTY3ZWNhZWEyZGUzYWJkMjdhNjczOGQ3ZTc1ZjggcHkzaworNjc5NDEgMTEzNzUxYTg5OTBjOTQ4NzJkOWI3ZGE3NWIxZmE0NzhmMTQ5OWNjNCBweTNrCis2Nzk0MiA0MDhhOWZmNGY4YjJjODFlMzZiNmUzOTMzNTEyYmQ4ZmQ3YzllYzQ4IHB5M2sKKzY3OTQzIDdiMWQwY2VhOTg3MDY0ODI1MDdkZDAzMDdhNmI4MmUxOTVlZjNiZWUgbGVnYWN5LXRydW5rCis2Nzk0NCBmYjE1MGZjZjE2NWQwZmE2M2EyZjM0ZTE3ZmM2MWY4YTRiNmI2NWE4IHJlbGVhc2UyNi1tYWludAorNjc5NDUgNGJkZjllMzQyMjkxYTY0ZTVkZjllNzhmM2QzOTM5NDA1YWM2MjVjYSBweTNrCis2Nzk0NiA5NGY5OTZiYzY0YjNiZjg0ODZmMmI1NjcxM2EyNDlmODdiYWIwZWZjIGxlZ2FjeS10cnVuaworNjc5NDcgZmVjNzJjOWIyNzFkODk2NDUyNTRjYjZiMDVlNTI5MTBkZTk0MWE3OSBweTNrCis2Nzk0OCBhZDc0NDdhMTY1YmJmYWI1YzAyNjJmYWZkMTNiNzk1MDY1OTIzMGEwIHB5M2sKKzY3OTQ5IDFlMTIxNDQxMDM3NWFhZGVlMWNlNjMwZDRhOWI5NmNmZjVlMDljYjMgcHkzaworNjc5NTAgZDI4MWViZjhlYTMwZjQ2OTU0YzEyYThjOGJjNmE0ZWE3Nzc5NzY3MCBweTNrCis2Nzk1MSBlNjczNjMyZTE4ODU2NTNjMGZlNmE0ZTExY2U1NjFlY2QzN2U4ZTlkIHJlbGVhc2UyNi1tYWludAorNjc5NTIgNDFkN2Q4ZjA4NTJiMjg0NzljZDViZWE0ZGRkZDE0ODg5OGU4N2YyYyBsZWdhY3ktdHJ1bmsKKzY3OTUzIGUyYmJiYzA2ZDkyYzgyNjFmZjNhYzdiYTVhOWY1NTBhZTY2MjQ3YmMgbGVnYWN5LXRydW5rCis2Nzk1NCA5M2RhOWYxNGU1YjU4YmRhNWYyMjkzMzMzMjc0MzQwYzVkZTY1Y2FiIGxlZ2FjeS10cnVuaworNjc5NTUgYWZmNmU5ZGRkZDlmODI5ZDY1ZTRlYmYzYmFjOTYzZDEwMjFlNzFiYSBsZWdhY3ktdHJ1bmsKKzY3OTU2IDM5OTFmMzdlYmNhMzFjY2M3NzEzZDYyMDZlYjhlZDFjMDk4NTg0ZTEgcHkzaworNjc5NTcgNzViNGUzMjM0MGE4YWIxMGIxYmNiNjA1ZjU1NDdjNDkyZmRlY2UwZSBsZWdhY3ktdHJ1bmsKKzY3OTU4IDFiODg5MzJkZWZkYjI4YjRkNzk5YjJlNzhiN2M5ZjFlNGQzMWViZjEgbGVnYWN5LXRydW5rCis2Nzk1OSBiY2RmZGMzNjk1NzA4NTBhMjNhN2ZiMTE0ZmE1YzQxYzc4NjQ1NWYzIHB5M2sKKzY3OTYwIGEyOGY5ZTc1MGI2NDgzM2VmYzkzZWJmNjk5ZGY2MmUxNjI4ZDM1ZmEgbGVnYWN5LXRydW5rCis2Nzk2MSBlOWEwZGU0OGI3NDc4NGQwNTAzNzE0ODExNTg2NjEwZDkwOWNiOTM1IGxlZ2FjeS10cnVuaworNjc5NjIgMDI0MzBlNDRkNTBlY2RlZWJkMWZhZTA5ZGFhZWQ5MDE1OTE5ODdmYiBweTNrCis2Nzk2MyBmYmZhMWQ2NzI0ZGU4YzIxYTAyMDBkNmUwY2YzNmI4MDllY2YzNWE2IGxlZ2FjeS10cnVuaworNjc5NjQgMWVmYTEzMDRkZmIzMjUwOTVhZjI1MTQ1NGRhZTNiM2I2M2U3MzRiNiBweTNrCis2Nzk2NSBhOWU1YWM0ZjA5MWNkNWRjM2Y2N2E4YWUwYTA0ZDJjZDkwNWIxODA3IGxlZ2FjeS10cnVuaworNjc5NjYgYTY0OTg4NGM3OWE4MTQ2OGE2YmIzYmNjNTQyNDMwYTBhYmEyNDA2ZiBweTNrCis2Nzk2NyBjYjM1MjRiNjQwN2Y2ZTM4Y2VmNTk1NzI1OGRhZDcwYjhlNzkyYzQyIGxlZ2FjeS10cnVuaworNjc5NjggZWE4N2NjMDY4YzU2ZjQ4YTA5NTk1OWNmODQ1ZGY1YjliMTRkYzUyMSBweTNrCis2Nzk2OSA4YmZiNDY2NDE0YWM5YjU3NDY3NzQwMWVjNWYyODExNDEyM2E5ODAzIHB5M2sKKzY3OTcwIDAyN2E2ZjNhYzg3NDc3YzVlYzk0MzY2NDIxNDE5NzQxY2RmMDYzYWYgbGVnYWN5LXRydW5rCis2Nzk3MSA1ZWMzZTNkNTRhYTY1YWYyNjM4MDRmZTUyMTU1NzgyNzU0OTUwOGEyIGxlZ2FjeS10cnVuaworNjc5NzIgYTRhODlkM2U0MWFmNTljNGI1NGNlYTE4N2E3OGIyOTZjYzcyZTAzOSBweTNrCis2Nzk3MyBkYjBkZGNlMjhkMGY4MjczNGZhNmQ2ODk0MGZkZWI3ZmVkMzU5YWMzIGxlZ2FjeS10cnVuaworNjc5NzQgN2EwMTE2ODBlMTUxYmEyZTIzZTIxN2YxYzAzMTI4OTQ3ZTJhMTNkNSBweTNrCis2Nzk3NSA0NDIwNzhmMDc5YWEwMjUxMWE3YzI0YTg4Y2UxNmU5YzViM2RmYmExIHJlbGVhc2UzMC1tYWludAorNjc5NzYgOWRiM2QzZDM5Y2MzZTc1NzVhOTJiYWMxNDE1ZGU5NTg4MjAyNGQ1MCBsZWdhY3ktdHJ1bmsKKzY3OTc3IDFlMGQyMDVmZThkNzBlNWY5ZjFkNjEzMGVjNjMwYWJhZmE3OTUyNzEgcmVsZWFzZTI2LW1haW50Cis2Nzk3OCA2YTA1NjZhNTEyMTg0YmQ1NTc5ZmM0M2NlMGRmZDAxODcwYmJkMzkxIGxlZ2FjeS10cnVuaworNjc5NzkgMzQxYmY3NmViNmViNzJiNTI4NjVkNDM0YWZjYzZmMjAyNWUyZDI2YiBsZWdhY3ktdHJ1bmsKKzY3OTgwIDBlYTRiZDU5YTQwZDY2YzcxMzUxNjliNGUwYjA2NjhmZjc3NzFjNWMgbGVnYWN5LXRydW5rCis2Nzk4MSBlNzcyMDYxMmE3OTY5ODU5MDkyZjMzNWM1YzQ3NDdmNDU4MzMzNjhiIHB5M2sKKzY3OTgyIDY0MWQyNzkwM2JjNTc0OWFlMGY3YjI3MWZiOTU3YmZmOTQ5ZjQ5ZTggbGVnYWN5LXRydW5rCis2Nzk4MyBiZGVkNWJkNjBlOTU0ZGE2NTM1Y2IyYTI2NTQ0Yzk1YjE0ZTYyNTk4IHB5M2sKKzY3OTg1IDdjNzYyNGEzM2Y4YjMyMzM0NGI5MTA0YWFiYTkzOTI3OGE0MDZlMjggbGVnYWN5LXRydW5rCis2Nzk4NiAzNzU1NDNiOTgyNDQ2MDI5ZWQzYzc0ZDlkZjk5YTNmMjU2NjBmMzA1IHB5M2staXNzdWUxNzE3Cis2Nzk4NyA3M2RjYjhiNDIxZjgwZDE5NWM2YTI3ODMzMDBhY2U5Y2Q1MWVjZTQzIHJlbGVhc2UyNi1tYWludAorNjc5ODggMmYxNWQ1OWRmYjgwNDg4MDE4YWJlOWIzZGUzMTIzN2NjZDcwODA5MiBsZWdhY3ktdHJ1bmsKKzY3OTg5IDQ1N2VjODg0YWYwNDVjMzVlOWQ2OWU5MWM0MDc2ZWZjODk3MzA5OGIgcmVsZWFzZTI2LW1haW50Cis2Nzk5MCBlMmViYWMwNjI0MzIyMTNjZTQyZjg1MTJjYjc1YzliMzdmNDEyZmU1IGxlZ2FjeS10cnVuaworNjc5OTUgNmZiN2Q4ZjQyNzNmMmIwNzUwMjExYTI3ZGIyYTBmYzU0YmJjMGM3ZiBsZWdhY3ktdHJ1bmsKKzY4MDA2IDJhZDY4ZGQwYWM5MGY3YTQyOTc0YjZkMjQ1ZTk4MWNkNWJiZDUxZGEgbGVnYWN5LXRydW5rCis2ODAwNyA4N2Y1NDMyYjllZGM4ZDlhNTFlNzIwMGVlNmE3ZGRmMWEzOTFjYzZkIHJlbGVhc2UyNi1tYWludAorNjgwMDggYjk1ZGRlOTU5OTZhOWIzYTE0N2RiYmRjYWMyNGI0NWVlZmNiMGI1NCBweTNrCis2ODAwOSA4N2Y4NmNjZTQzYjE1MzViZmJhZGFhMTkyYmNjZWIzMjUzODZkZmY1IHJlbGVhc2UzMC1tYWludAorNjgwMTAgMzgzNTdlMWQyMWU2YWI5ODI5ZWExMTQxZTU4MWM4Y2RhMmMxNjIyZiBsZWdhY3ktdHJ1bmsKKzY4MDExIGI5ZWZkZDhmOGIzMDkxZWZjODc0MjM3ZDRlYzU3MzM2OGJjNzg0MmYgcmVsZWFzZTI2LW1haW50Cis2ODAxMiA5ZjgzNjMwODg1MzZhNzI3ODE1NmYwNTk3OTgyODEwMzY3MTJmMzM4IHB5M2sKKzY4MDEzIGExYWJmZTAyNzA3NGM5OTRlNmU0YzY2MjEzOGY2Yzc4ZjI4NjMyMDAgcmVsZWFzZTMwLW1haW50Cis2ODAxNCA4OWEzZjVjOWI1MDMyMjRjZWE3MTA1MDhjYzJlOTE1NDU1ZmQ5MTUxIGxlZ2FjeS10cnVuaworNjgwMTUgNzFlNzMyYzkzMjM0NDVhMjBkMzMzMzRjZjA2MWI0YWE3Y2M4NmIxMSBweTNrCis2ODAxNiA3MGRlMmUwOTFlNTgyNmMwZGY5YjFiNmJiYmQyYzg1ZTk0ODYyZmNlIGxlZ2FjeS10cnVuaworNjgwMTcgMThkODE3YTdhMzlmYTlmOGFkZTNkNDAyNDllMjMxMTdkMzBkNTVmMCBweTNrCis2ODAxOCAzNGM3M2E0NjNiMzU1YThiMTIxNjFjYWJlYTM0NzJjYzRhMDIwYzAxIGxlZ2FjeS10cnVuaworNjgwMTkgMjkzMmIzN2YxZjA0NDIwNWNlZGFjZjNmNGY3YTk5OGI3MjFiZGRhOSByZWxlYXNlMjYtbWFpbnQKKzY4MDIwIDQ0ZWE5ZWFjOGM1YjUyNTIyYzRiMGRlODA0NGE3Y2Y3ZTYwMTJhMmIgcHkzaworNjgwMjEgN2Y1YWE3ZTU0YWQ1YTEyNDI3M2FmY2E4NjA3NjcyNTljYmMyZDY0OSByZWxlYXNlMzAtbWFpbnQKKzY4MDIyIGY3YTNmMTQxNjFlMTc1NzdjZmU1MjE2N2RhOTE0NzFhMzFmOWZjNWUgcHkzaworNjgwMjMgYWUxZTExNDIzNzI5NWQ5ZmYxYzE1MjdiNDBmMjVjNzZlMmEwZWNkNCByZWxlYXNlMzAtbWFpbnQKKzY4MDI3IDFhZWE4M2UwYWU5ZjAyZWJjOTM3NWVmYTBkNzY5MGRhYmQyYjg0MWMgcHkzaworNjgwMzAgYmMxYjM3NDM5NWY0MDAwMWE5MmQ4YWFkNDE0ODYxM2JiOTQwNDFmYSBsZWdhY3ktdHJ1bmsKKzY4MDMxIDNkNDQ3YjdiMTM2MzRmZjM0YzBiOWM3ZGUzNDFjYTllODVhZTNjZGIgcmVsZWFzZTMwLW1haW50Cis2ODAzMyBmMTQ2MmQ5MjRhOWMyMWVlOTgwNGRhNmIwYTI5NzgxYzAzNjQ4NTQwIGxlZ2FjeS10cnVuaworNjgwMzUgYWQyMGI2OWIxOGI3MGIxODI3MTU2NmE4ZWJiNTM0NTEzMzljODM5YiByZWxlYXNlMjYtbWFpbnQKKzY4MDM2IDljMDZmYjdkMTI2MDJlYzdkNmNkZWI2ODAxYTY2MGJiNGU4ZGU2ZjcgcHkzaworNjgwMzcgOGZhNjExYmJiMDc3ZmY3MTA5Mjc1OWJkNThjNjNmMTgxOTk4MTRhZCByZWxlYXNlMzAtbWFpbnQKKzY4MDUxIDdhYWVmNGQ1Zjg4MGU3ODYzZmQ2MDYyZTJlMzFmZWRjZDRlMWU0ZjQgbGVnYWN5LXRydW5rCis2ODA1MiBlNzgyZjk3MTE2ZGMxY2YxMjgyMTQ1ZWFiZGJlMmViNWQ0NTk0NGYxIHJlbGVhc2UyNi1tYWludAorNjgwNTcgZjczZmM0NDE3NDRmMDY1N2Q4MDczMzhkYjExZTllZTg2M2I0NjhkYSBsZWdhY3ktdHJ1bmsKKzY4MDU4IDYxOGQzMzk3Zjg4OGNlNTQzMjUxZjgyOGNmMmI2NGJlNGE2NDFjZTUgcHkzaworNjgwNTkgMjhhZWNiZjFlODMyYjA1ZjY3OTRkYWM3ZTFjNWU5YTZjNDNmYTJlMSBweTNrCis2ODA2MCA0M2FhY2JlNjQ3Y2IzZjQ5YTU3ZTA1MjFlZjY0N2FiZDE3NjEwYTE3IHJlbGVhc2UzMC1tYWludAorNjgwNjEgNzI5OTk5OTI5ZWY0YjViZDZhYjFkMTUzMDRjYTE0ZjM1NTczYmUyNyBsZWdhY3ktdHJ1bmsKKzY4MDYyIDExNTRkMDI0NWI2NjEzOGI0ZDNkMzc1ZDUxZmNkYTdkZjI0OWU1NzMgcHkzaworNjgwNjQgYWZhYjMxOTI1MmU3OTIzZGY0MThkMGI5ZjNhY2ExYWRhYzQwY2FjYSBweTNrCis2ODA3NCBmYTZmYzU1MjZmNzFmMTIzNDE2NDY5NjA2M2RjMzQ1OGNkNTkwMmFjIHB5M2sKKzY4MDc1IDJjODQ0Y2ZjMzc1YTMxYzIyODZlMzgyMjllOWFiM2FkNjhjYmNmMjUgcHkzaworNjgwNzYgYzMzOGJlZTIxMTczOTcwNTY3MDZlMGViNzhjOWRiNGM1NmEwNDEyZiByZWxlYXNlMzAtbWFpbnQKKzY4MDgwIDc0MzE2MzhlN2RkOGZhY2M0NWY5YjNjZGNmYjVjZDU2NmM2OGExMjQgcmVsZWFzZTMwLW1haW50Cis2ODA4MSA4YTQ4MzQzOWNiNTVmZWIzZmU5M2NmM2YwNTcyNTkzYzUyYzliMTI1IGxlZ2FjeS10cnVuaworNjgwODIgZDg5NzVmMjRhZjhiNThkZjljZWRlZjdkZjQzZjZiYjg5Y2RjNzlhNSByZWxlYXNlMjYtbWFpbnQKKzY4MDgzIDdkNTUwY2I1MzY5ZTA1YWU2YzdhMTc0NjdiOGEwZDhlMjhjOGUxZTIgcHkzaworNjgwODQgM2UxOGI0NTlkNGM4ODQxZGU3OTAzODk3NTExOTA0N2RlNmMwODY1YyByZWxlYXNlMzAtbWFpbnQKKzY4MDg5IGI3NWQ3NjkxNTFiYWE4ZjBhMTE0OWRhYThjNDMxYzc0NzYzZDJlZTIgbGVnYWN5LXRydW5rCis2ODA5MCAwMmZjZDljNWZlZmJmOTgwZmMwMTY4YmJlYTZjNjgxNGFiMTQ1N2JlIHB5M2sKKzY4MDkxIGVmNjQ5Y2U5Yjc4MzlhMDc0N2M0MTA4Nzc2MzllNTdjYTkyNjcwNTUgcHkzaworNjgwOTIgMDZmNGMzN2Q2NWY5Njg5YWE1YzIzODBmOTBlMmZlNjU0Y2MyYmViZCBsZWdhY3ktdHJ1bmsKKzY4MDkzIDE1YTY2MjYwODVmNGE1MTNlZTQyNGM3OGU1YzgyYWVhM2M1MTJjYjMgcHkzaworNjgwOTQgNmQxNjNjMmFlZjU2YjhkYWFhMjRlZDQ4ZGFlYjZmN2JhNWYwM2Q1OSBweTNrCis2ODA5NSAzODUzYzE1NTMyYzRlZGUzM2RkNjlhNzU3ZjIxYzVmMjBjOGNkMzA3IHJlbGVhc2UyNi1tYWludAorNjgwOTYgMDIyZDk5OWM0ZDFhOTRiMTdiNGFjODFmMGVkZjc3Yjk2ZWUzMGY0YiByZWxlYXNlMzAtbWFpbnQKKzY4MDk3IDljMmFjNzg2NjZkNDU3ODMyNTBmZjYzYmNmYzAwMGNiYzc4NTczNjggbGVnYWN5LXRydW5rCis2ODA5OCBkY2JlOTliMGNlODMyMjc3MTM2Y2E1MjUyNDY4OTAyODA0MzE4YWRkIHJlbGVhc2UyNi1tYWludAorNjgwOTkgMWM1ZDk0MjEyOGI2ODgwNTdmZjk1ZjUzNGY4YWU3OThiZDczMDY1MSBsZWdhY3ktdHJ1bmsKKzY4MTAwIGM0MzIyNjg3NWJkNDEwNzliMjU5ODBiNjRkNmEzY2YzY2ZhM2ExYjYgcmVsZWFzZTI2LW1haW50Cis2ODEwMSA3ZTFhOTViMjZhNWNhNmNiZDQyOTdiNjVmYTQ5OTAyM2Q2NDljYjg0IHB5M2sKKzY4MTAyIDVjYzA3M2Q2NjFmN2I2ZDMzYjJjM2VjNTQwNmQ2ODhhMjUxZmRmZWEgcmVsZWFzZTMwLW1haW50Cis2ODEwMyA1MDc0ODMwZTliOTk0NjQxZjE1NWZhODk1YmVmOWFjY2FiMWQxYzNlIHB5M2sKKzY4MTA0IDcyMzlmYmNkY2Q0ZmJhNjViMWNhMzRjYTM5ZTY5NzMxMWQyZWU1Y2UgcmVsZWFzZTMwLW1haW50Cis2ODExMiAxM2RhZjk5ZGIwMzU3NzBhNDI5ODcxYzQzMzY3MGY5NGRmZWMyNjZkIGxlZ2FjeS10cnVuaworNjgxMTMgYmY2ZjJkZmMzMTBiYTE0ZDk5MzU2YTEwYWM3MTk0YjIyODUxYzgxZiBweTNrCis2ODExNCBkMzJhNjY5Zjk2ZGE5OTNlMDkzZTU4OGQyZGUzYmEwZTU1MDBlMTYyIHJlbGVhc2UzMC1tYWludAorNjgxMTUgOTJhZDk2NTQ0MjUyNTgwNGE3ZGM2Nzc3YzUwMDU2ZDExMWU4Nzk3NCBsZWdhY3ktdHJ1bmsKKzY4MTE2IDU5ZjNiZjJhMzI4ZDQ0ODQyYzZjMjk5M2YwNjg5NzFlNzUxYzYzZTkgbGVnYWN5LXRydW5rCis2ODExNyA5MjdmNWQ5MDg3ZjVhMTVlNWE0OTRhYzlkYWYzODZjZmM2OTVmZTllIGxlZ2FjeS10cnVuaworNjgxMTggMzk0ZTM4OWU4OWYwOWE2ZWYzOGEwYjRhNTg2MjMwNjRjYjQyYTExNSBsZWdhY3ktdHJ1bmsKKzY4MTE5IDIwZWRiN2U1MTU5ZjRkYzJmOTM1MWRhZmQwYzBiZDkwZDczMzAxOTEgbGVnYWN5LXRydW5rCis2ODEyMCBkMWU1MzZjNmZhMmNiMjA1ZjRhZGUzYTcwODAxYTMxZmYyZjM1NjAxIGxlZ2FjeS10cnVuaworNjgxMjEgNjgzYjNmOGIxMmI0NGEyMzc4OWYyYzRiNzE4NDliYjk1NDdiODhjNSBsZWdhY3ktdHJ1bmsKKzY4MTIzIGYzNTQwM2EwMTFiOTRjNThhOWNiNjU4YzAxYTNlNjc2ZGExOGU3NDEgbGVnYWN5LXRydW5rCis2ODEyNCAxYzRlNjc4YTFkM2IxZWRmYjEzNzJiMWNjYTlkMWVjOTVjY2E4MWExIGxlZ2FjeS10cnVuaworNjgxMjUgMWI4MmYyYjgyZmQ5MjExYWQ1MjZmM2Y4ZThmYTkzNzU0NGIyODljMiBsZWdhY3ktdHJ1bmsKKzY4MTI2IGU1ZGJmMzhiMWRhYzFhNzFjODllZGZhNDExZDRhNDFjOTQ0NzAyYWQgbGVnYWN5LXRydW5rCis2ODEyNyAzNmU5NzkzZWJiNWQ0ODNjNDgwZTIzM2M5NThkOTc4ODk5YTNkOTkxIGxlZ2FjeS10cnVuaworNjgxMjggMDk5YjQ4ZmU5MjJhMGRmMjY3ZDM5ODQ0OGZjOGNmNGM2ZmNkYzZmYiBsZWdhY3ktdHJ1bmsKKzY4MTI5IGNhYjg1MDFmOGFlNmIzM2IyOTVkMmZjMGI5ZDRlMGNlOTE2NWM2OTcgcHkzaworNjgxMzAgODQ2M2ZmODYxYTI2ZDg0ZDcyOTljZmRhMDYwMjJjM2U1MzQ5MWI4MiByZWxlYXNlMzAtbWFpbnQKKzY4MTMxIDQzNmU2MzE3YzdiNGI5MTM0MDMzZDFjMjUwNTA5M2Y3MDk4MjQwZmMgcmVsZWFzZTI2LW1haW50Cis2ODEzMiA0ZmJmNTJjOTliNmVkNDM0ZGIyNDBjN2EwOTU0ODA1N2MyMzk4NDM1IHB5M2sKKzY4MTMzIGM3YTQ1Y2JhMDc4NWQ2Y2E1NmIzMzIxMjM2OTBhZjMxNmVhMjY2MGEgbGVnYWN5LXRydW5rCis2ODEzNCAwZTViMjRhZGU0YTIxNzZjZTBjNTE1YzRiZWM1ODYwNDM2MmZjM2RlIGxlZ2FjeS10cnVuaworNjgxMzUgZGYzOTIzYzM2ZWM1OWY3ZDIzOGY3YWM4ODRlMDhlOWQyYmEwOGZlMCByZWxlYXNlMjYtbWFpbnQKKzY4MTM2IDA2ZTFmN2Q5ZGE4M2RlNTQyYWQ5NGE0NjZiZGQ4Njg3MzI3NzhhYzggcHkzaworNjgxMzcgOWRkMmUyNTdhYzdjMjJlNWY0YjQ3MzI3ODM4YjJlMDA5NThmMDA4YSBweTNrCis2ODEzOCBiYjMxMjIzYWJmYWE4YzVhZDYyZDI5NTg0YmE4YWU5ZDBmOTJkN2NlIHB5M2sKKzY4MTM5IDlmNjA0ZDMzYTQyZjcwYmU4ZTA0YTQxNmU0MmUwOWNiNGE0NzExNWEgcHkzaworNjgxNDAgMmIxM2QyMDJhNDdkNzM4NmFjYTQ0MDI0NDQzODhjNzAwNjllMmUxMyBweTNrCis2ODE0MSBhZDRlNTJkMTU0ZjRhMjk4ODM2ZDc1N2VmNDIwMGY3MTY3YWQyYjg3IGxlZ2FjeS10cnVuaworNjgxNDIgNWM2ZmVkNzNiNmE5MTgyYTk4NThhMWE4OTdjYmQ3ZDVhMTgxNGU5MCBsZWdhY3ktdHJ1bmsKKzY4MTQzIDJkZWJiZTY0NDVlMGZkOTFiY2EyMmZlNDYzMGU4Mzc0MWYxOTA0NzIgcHkzaworNjgxNDQgNDgwMTk2OWRhZGVlM2NmZDdmMmRlNjRhY2UzMWFkZGUxYzU1Yzk4NyByZWxlYXNlMzAtbWFpbnQKKzY4MTQ1IDYwOTdmOTdiMGQyMjA3M2JhMGUzMjA5ZTY4M2M4ZDUwNGE0MWI3MjMgbGVnYWN5LXRydW5rCis2ODE0NiA0MGZhODY4OTgxY2NkOGY3ZTZmMGJlMzk4N2UxMzU1YzZiMmQxMDU4IGxlZ2FjeS10cnVuaworNjgxNDcgY2IzNDc5Y2E4MWFjY2FlYTg0OGY0ZGRmNzNmYmIxOTViNTZiNjNiNiByZWxlYXNlMjYtbWFpbnQKKzY4MTQ4IGJmMTczNGM2YjZlZDIyM2NmMWQxYzkyMTJmZDVkM2UzYWUxNDkzMjIgbGVnYWN5LXRydW5rCis2ODE0OSA4NGNiMDFjNTY0OGIxNzRkMDdkYjM1NmI1YmQwMDRkODMyOTgyMDEzIGxlZ2FjeS10cnVuaworNjgxNTAgMjUzZTFjNzNmZGU2OWNhZWI3ODQyMGEyMTk3OGQ0MjU1MGM0ZGEyYSBsZWdhY3ktdHJ1bmsKKzY4MTUxIDVjNGY2MzljOTIwMDg5ODYyYzJmMWYwYzY1NTIwYjhhZjQ3MTU1MGEgcmVsZWFzZTI2LW1haW50Cis2ODE1MiAwOGRiYTdmOTcwMzAxOWE4OTAyZTdlY2ExOGZkNTE1ZWQxZmJkNzEyIHB5M2sKKzY4MTUzIDJmMDFmOTk1ZjcwNDEyYjcwMjNkNWIxOTEzZDBiMjg4NTkzODgzODkgbGVnYWN5LXRydW5rCis2ODE1NCAzNGQ1MWMzMGE0ZjRiZjFjOTIzNGRlZWFjMmZjNGY3NTAzZjM4MjYyIHJlbGVhc2UyNi1tYWludAorNjgxNTUgOTRjZmJmOTNkNzFiNGM2MTI1YTYxOGY2OGIxM2RlZjEyNGJmZWY5OCBweTNrCis2ODE1NiAxZGNiMTkyMTZiNjRkNjIwYTgwYWM0ZWMwYjNiODA1ZTI3MjlkNGUxIGxlZ2FjeS10cnVuaworNjgxNTcgZTdhZWU3Yzk5ZDNiNzdjMGE3YjE4ZTRjN2E4MTFlZDcyMjBmMDA4NSBweTNrLWlzc3VlMTcxNworNjgxNTggNzUzOTU0ZDE2ZWQyMTYwMTJjNDlkMzA3YjNhOWMwZjc2NmExMjM4OCBsZWdhY3ktdHJ1bmsKKzY4MTU5IDI2OTZhMzliY2YwYjA1Nzk4YzJkMjY1ZjU3MjE3YTU1YWY0ZmY5ZTcgbGVnYWN5LXRydW5rCis2ODE2MCBjNTBiMTE4ZWFmMzQ3Nzk0YjRmMjRmOWU5NDIwNWQ1ZDYwNTIyMzQ2IGxlZ2FjeS10cnVuaworNjgxNjEgMzU1YmMxMjJjMTQ1NjVjZTIwY2RjOTg5NWRkMDQwMzYyNjY2ZDBiMSBsZWdhY3ktdHJ1bmsKKzY4MTYyIGRlN2QxNjdiOWZmMTBkYWYyYmVmMzBhNzc0NTZmN2Y3M2E5OGU2NDcgbGVnYWN5LXRydW5rCis2ODE2MyA2OWEyNDBlNWYwMWRjZmY2ZjM4NGI1M2RiMmMwYzk5YTI1YjhlZmFmIGxlZ2FjeS10cnVuaworNjgxNjQgZTBjNjZiYmI0OGRhODNlYzc1MTQ3ODFiZmMyYjFmZGQ2YTdjMWIxZCByZWxlYXNlMzAtbWFpbnQKKzY4MTY1IDQwMGNmY2FhOGQ0NmVlODVjMTFjYjYxYjA4YTVjZWIwNjZjOThlNGYgcHkzaworNjgxNjYgY2E4NmFiZTE1OTI2MzlhNzZlMGJhNWU5YjQ3M2Q1ZTJhYzgwNjFjNiBsZWdhY3ktdHJ1bmsKKzY4MTY3IGZmMTA2NDUzMjU0YTFkZDlmZTkwNWI1ODU0MGIzNmFmMjMyZTAyZDcgbGVnYWN5LXRydW5rCis2ODE2OCBhNTQ5YzkyNzA3NzY3M2VhZGU5NTRlNzkxODJlZGI3YTdjOWYyYTZjIHB5M2sKKzY4MTY5IGFiYmNlNDhiOWFlNDBhNjlhY2M2ZTQyNDFiYzk0ZDBhMjI0NDM2M2YgcHkzaworNjgxNzAgYmNmNDZmMzNiZDkwNTE2ZDczYWE3YTQ5YjAwMTRkODJlOGQ1MDc2MyBweTNrCis2ODE3MSA4ZWRkZDY2NWU5YjlmYjZhZmVkZGM0YmIxMWJlNmE4M2IyY2Y4OTIwIGxlZ2FjeS10cnVuaworNjgxNzIgNjM2YTBhYzk2MDdiN2EzYTQwY2EwZmNiZjMwNDQxYmMxMGU2MDI4MCBsZWdhY3ktdHJ1bmsKKzY4MTczIDEyOTdiYjcxZGM2NGIxNmMyMDgyZTZiN2NhZTAwYTNhOWRhOTE3YmEgbGVnYWN5LXRydW5rCis2ODE3NCA2OGM5ZjhiNjU4NGQ0YjFlZTFlMmZmMDFhMGY4YTdlMTRjMjBmZmE1IGxlZ2FjeS10cnVuaworNjgxNzUgMjAzODRlYmZjNzE2ZjJlMGE5ZjRhOTBiNmM3ZmVmZDMzZGNlNDRmYyBweTNrCis2ODE3NiAwNTg4YTk4NzkzY2QwODc1ZjBlNDVkMWY4ZTMwYWY4NmJlYTNhZTY0IGxlZ2FjeS10cnVuaworNjgxNzcgZWIzNThkYWUwY2NhZDhhNWE1N2VjN2RlMzZjOGJmMTNlOTRkOGRjZiByZWxlYXNlMjYtbWFpbnQKKzY4MTc4IDBjOTcyODM3MmQwOThhZjRjZTRmODk5MThiMTM5MjI5NjY5M2MzYjUgcHkzaworNjgxNzkgMDA1MmQyM2QzOWY2MTVjNzYzZTczNWM0ZTYyYTgyODM0NTY3ZGZiNSBsZWdhY3ktdHJ1bmsKKzY4MTgwIDBlMzhjNzBiOTc3NmVhN2FjMWRiYWRjNTY5NTU4MzE0Zjc3YjU2NWUgcmVsZWFzZTMwLW1haW50Cis2ODE4MSA5MzAxMzM5NzlkN2EyOTFhZDAxYzUyM2U0OGZlNDEzZWUwMDA2NWQ0IHB5M2sKKzY4MTgyIGFkOTIxMDRkNTA2MDdlN2E3MzNjOTVjZmU1NjRlZGUyMmMwMTk0Y2YgbGVnYWN5LXRydW5rCis2ODE4MyA5NGZmM2RlMWUxYTQ1YmViZmZiNWM1NzhkZDcwZWQ1ODE0NDkyZTA4IHJlbGVhc2UyNi1tYWludAorNjgxODQgNWUxNjQ5ODhiZDUxYWVhZWVkMzgwMTdhNzUwNjkxMmE0NTNmYzMxYSBweTNrCis2ODE4NSBkMzY3YmU1NDNmNmNlOGFmNDA3NjRiMTlkZTc1NmJjODdhNjFjZDA0IHJlbGVhc2UzMC1tYWludAorNjgxODYgNDQwYWRkNTE2Y2YxZTFiNzEzZmU4MDY5OGJmZWRlMjg3ZGNjYzE1MSByZWxlYXNlMjYtbWFpbnQKKzY4MTg3IDM2ZDAyNzAzNzgxMjMzMzI3ODhmYmIyMjNkNmQ1OGFjM2FlOTA0NjUgcmVsZWFzZTI2LW1haW50Cis2ODE4OCBjNDVmZWQwM2Y3NDc1YzJkMmJhYzVjZTQ2NmExZWIzMThmZGNkNDIzIHJlbGVhc2UyNi1tYWludAorNjgxODkgZmM5NGM5YzQyYzZjODAwMDYzNWE1NWZjNDZhYTcyMGQ4YTQ1YTFmYiByZWxlYXNlMzAtbWFpbnQKKzY4MTkwIGZhNTVmYTQ1NTZmMDk5MTRjZGE0MWVjNDY3MzdiMGRlZDFiMTNmMjkgcmVsZWFzZTI2LW1haW50Cis2ODE5MSBjMjcyZmNhYzI0YTRhMjViNWNhNzU0ZDhmZjc0MjcyMDE1YjA3NWI2IGxlZ2FjeS10cnVuaworNjgxOTIgZjJhNWQ3ODI4YjgzZTcyMDBiNjQ2ODIyYTQ2MzY4ZTk2YTU5MGY3NSByZWxlYXNlMjYtbWFpbnQKKzY4MTkzIDczODg2NjA5MjZhYTE0OWViYWIxYmFlMmM3YzljYmY0YzU3MGNlNjggcHkzaworNjgxOTQgMTM0ZDE3M2I5MzUwYjJmZTQ1M2QxODNiYWYyZjc1ZjRmNjc0MGI2OCByZWxlYXNlMzAtbWFpbnQKKzY4MTk1IDQyN2Q4Yjc2NWE2YTAwYjAwNjc2Nzc4MDkwNzk1N2E0YzIyZDUxZGIgbGVnYWN5LXRydW5rCis2ODE5NiBhNzg4ZDRmMTBiOTc4M2NlOTNiYWZiMmY1ZWEzOWJhNDYyYWZlODE2IGxlZ2FjeS10cnVuaworNjgxOTcgYjk5MWZlNWY2MzdhODVmZWFiOGFhMDA3ZTQxOWUwOGQ1MDk5ZWMwMyBsZWdhY3ktdHJ1bmsKKzY4MTk4IDhlNzcyODY3NmY3ZTg1YWFlYmIxZDg0ODIzYTA0NWJkYjg4MjRhMDIgcHkzaworNjgxOTkgYTkyZjcxZDQ2ZGM0YzFjMzI5MDZjM2IxMDQ5MjllNGY5MWI2MDJmZCByZWxlYXNlMjYtbWFpbnQKKzY4MjAwIDI5ZjY0MDc3YzQyZjg4ZDFiMGQ1NDVkYTk0OTU5Nzg5YWMxOTc4YTQgcHkzaworNjgyMDEgNzkzNDcyM2Y3ZGM0ZmJkYTE1MjU1MzhiZjk2ODY4OWI4ZTg2YTE2ZSByZWxlYXNlMzAtbWFpbnQKKzY4MjAyIDI2MDQ1ZWQwYzI2ZTJjY2UxZDZmNWIxYzVmZGIyOTI3MDhmNjkxY2UgcmVsZWFzZTMwLW1haW50Cis2ODIwMyBlY2YxYmI3YmFlYjFlYzc2Zjg5ODgwNTUwNTY0OGZjMDMzODg0NWExIGxlZ2FjeS10cnVuaworNjgyMDQgNGQxYTY4YmQ4MDc2YzBjNmUzNDY1ZjYyN2UzMjlmMWY5NjllZThkMSBweTNrCis2ODIwNSAyNTNmOWU2ZTllMDc5OTc1NDRhOTU0MTUwYTAyZGFkNGNjZTA3NDgzIHB5M2sKKzY4MjA2IDEwY2M1M2U3MWIyMTIzZDU0NzlkOGYwY2QzNmZjNzY0Y2UwYmVlNWIgcHkzaworNjgyMDcgOWE0MjVlYjBmN2VhNTRhYjRlNDgwY2RkM2MyMzdmOTNiMDYxNGY1ZiByZWxlYXNlMzAtbWFpbnQKKzY4MjA4IDdhNmUzYmM2MGJhNmRlMTI3YmNlZTk0NGIxMzE2M2Y4Mzk0MDY2MzggbGVnYWN5LXRydW5rCis2ODIwOSBlNzhkY2Q4N2Q3MzNmNmY3YjI0YWIxYTY1OWU2NTA5NDRlYmNlZmRmIGxlZ2FjeS10cnVuaworNjgyMTAgYWE0Njc4N2I5M2NjNjUxYThkZjIzNzI3YWIxMGM0ZTFjN2EzNGM0ZiBsZWdhY3ktdHJ1bmsKKzY4MjExIDEwNDAwNWQwN2VhNTE5MGUzZDIyMDZlMjY3NmUwZDc1MmFhMmU3NTEgcHkzaworNjgyMTIgODQ1ZmE3ZDM2NjQyMDkwYzI0MTkwZDQ0MmViODdlOTJhMWVkMzA4NSBweTNrCis2ODIxMyBkZTI3NzEwNzBkODUyYjJjODNjMzZmZDhlNzlkNmRmNTNmMGE4NjY1IHJlbGVhc2UzMC1tYWludAorNjgyMTQgNmU0ZDZkMzkwNWE3OWRmMWFlNzNmNzJkYmQ1MjEzNWIxMGZmYmQ5ZiBsZWdhY3ktdHJ1bmsKKzY4MjE1IDYwODU0YmRiY2YxZTVhZjc5MGM4OGEzMWIzNmM5NTM1OWYxM2Y1NTUgbGVnYWN5LXRydW5rCis2ODIxNiBiMDY2ZmJiNmE4YmMyOWZhYmQxZWY4Yjc2NjlmNzc1Y2RmOTU5OGNiIHB5M2sKKzY4MjE3IGM3NTcyMGMzZTE2ZWUwMjgzZWIxZDU4MmE0MzFkMjIzMGFjYzYyYTAgbGVnYWN5LXRydW5rCis2ODIxOCA2ZWZjMWRlMzQ1ZjVjOTE3N2U0MDVkYWM3ZjY3NWIxZWI3OWUxZDIzIGxlZ2FjeS10cnVuaworNjgyMTkgZmIwOTgyYzMyMTdlNDU4MDQ3NzJhYzZiZGYzM2ZhZjA1ZjgzZmIzZCBsZWdhY3ktdHJ1bmsKKzY4MjIwIGM1MjE3N2YzNjg1Mjc2NDBlN2YyMjk5YmNjZDU5ODQxMGRmMjYxOWMgbGVnYWN5LXRydW5rCis2ODIyMSA3ZmI0MzFmYTQ5NDYwMTg1Yjk0N2I1ZDg1ZmZjMDA3NDc2NzA3MGMyIGxlZ2FjeS10cnVuaworNjgyMjIgOTg5MzE0ZDdjYzVlZmIyZGZjZWZiNTZjMmNlYzI0YmI5NGNhYjUzOSBsZWdhY3ktdHJ1bmsKKzY4MjIzIGM5MTg0ZjUwNzM0ZmJiOTc0YmUzODJmMTJjOTJhZGI4MTQ1ODFjZTEgcHkzaworNjgyMjQgNWFiMzA2M2NhZjRjMDg4Nzg4NDQ3NmY4N2FkY2UyZjQyMzMxMTkyNiBweTNrCis2ODIyNSA1ZjI0NzVmZTUyMzk5NTMzY2UwZGU0YmMyMzlmM2VlZTZjMjIzNDQ2IHB5M2sKKzY4MjI2IGMzZDNiNzYwZDhiZmIwZWY1MzFhMzY0YWNkNjcxN2RkMjg4YjNlMWIgcHkzaworNjgyMjcgMGUwNWI2Y2E2YWZkM2JhN2M1OTFmYTQ0NDgwZjg0NDU2NzE3ZmRjZCBweTNrCis2ODIyOCBlNDc5Yjg2ZGExMWRlNjRhZWQ4ZWM4OTRkMWZkODkwMzYzMmVmMzM4IHB5M2sKKzY4MjI5IDgzZWZjMjQ2N2ZhZjM0N2I3NjZiMzkzYzFmMTQ4OTI2MzJlYmU5OGEgcHkzaworNjgyMzAgMDcyZGVkZWU3N2ZhNmRkNDg0NTY5NjdhZjU3MGY2OWFhOThjOWIyOSByZWxlYXNlMzAtbWFpbnQKKzY4MjMxIGNkZDVmYTA1YzE0ZDAwOTUzNjcwZWZkOGI2MjRlNDBiZGU4OTk5YWYgbGVnYWN5LXRydW5rCis2ODIzMiAyNGEwOTM3ZDc2MjQzNGJiM2NlZGIwODQxYmYxOTFiMGQzYjg5NTc3IGxlZ2FjeS10cnVuaworNjgyMzMgYWVlNTVjYTA0YzhmYTMwMWY4MmU1Y2ZhNWYyNDE0Mjk3ZWE5NWFjZiBweTNrCis2ODIzNCBlZTljZWQ5Mjg0M2E3YTU5OTIyN2RkOGU2YjAxM2EzMGFjM2ExMTY5IHJlbGVhc2UyNi1tYWludAorNjgyMzUgNzEzYTNhMzhmOTc1Y2ExYzQzOWQ3MmE5NWI1MTg2NWVkYjAyNzBiNSByZWxlYXNlMjYtbWFpbnQKKzY4MjM2IGY4ODVjNzZmMWU5NTUxMjI2ZDgyZWQ5MjM1NDk3NjliNzcyZGMyZDUgcmVsZWFzZTI2LW1haW50Cis2ODIzNyBkZGI3M2E0ZGZjMjA0ZDUzOWI0MGRkOGI2YjlkY2QxOTFmNTljOGZmIHB5M2sKKzY4MjM4IDZkZjNkMDhiODllNDUwZGFkMTRhOWEyMDg5OTdiZWVmYmZmZmNiNjEgbGVnYWN5LXRydW5rCis2ODIzOSAyMWQ3ZTllODc1OTFjNzI5NTM1ZmI3MTVkMjA2OTZmYWRmMWQxNzhmIHJlbGVhc2UzMC1tYWludAorNjgyNDAgYjU2MzlkMjQ1YWQ1MzU0NzlkNzE1YTIzM2JiMDNkNjBhOWUwNDRlZiBsZWdhY3ktdHJ1bmsKKzY4MjQxIDczZGVkOTRmYjhiZWFiMzk4ODE4N2RkODFhMzEzNmM2N2NjOWM3NTQgcHkzaworNjgyNDIgOTFjZjllZDQ2YjcyMzJlMzU1ZTBjZDk5NWI4ZTM5NDcwNWNmODc4OSBweTNrCis2ODI0MyBkM2M3ZTlkOWFkYTdjMDcyM2IzYjAwYzgyNjUzNTY2N2U0MzJkMWQ3IGxlZ2FjeS10cnVuaworNjgyNDQgNmM4ZWQ2Njc0MzI4OTJmMjczYzc4ZTg2NTVlM2Y2N2FiMWFmODEzZCByZWxlYXNlMzAtbWFpbnQKKzY4MjQ1IGFmMjBkZDE5Y2MwZDk5ODA3ZjNiYWYwZWIzNDVmOWFlYjk1MmFhMGUgcHkzaworNjgyNDYgOTFhOTIzMzk3MzQ3ODM4ZTlmMmEwMGQxYjkwY2U3MTU4YThhMGY2ZiBweTNrCis2ODI0NyBkMDkxNDMwMGUxMmViYzVhOGVlMGY0ZGQ0YTc1Y2RiYzVhNmFmMmY5IHB5M2sKKzY4MjQ4IDhhYTE5NTMwZjlmMjI4ZjllODNkYjI1NjMzOTJkYmNjYTI4ZDgyNzQgcHkzaworNjgyNDkgNDUwZWNiYjU2YzdiNTBlYjkyYThjZTZmOWM2MjUxZTcyN2I2ODMwNCBweTNrCis2ODI1MCAyODMyMWRiZGZkYzBjMDZiZDM4ZTNhMWIzOGEwZDY0NDYwMjM0MGY5IHJlbGVhc2UzMC1tYWludAorNjgyNTEgOTYxODgwMzFiMWI1OTc2YmI3ZWEwZTY4OWU2NGMwM2Y5NGJmNzJmMSByZWxlYXNlMzAtbWFpbnQKKzY4MjUyIDQyMjlhNGIxNGYxZDg5M2MzNGI3YTFkMTk2NzQyNDRjNjI4YzM5MDggcmVsZWFzZTMwLW1haW50Cis2ODI1MyA3ODI1NzhjOTJlMWQzYWJjMTIxMGNmNmU3ZGYwM2UwOTVmNjZhMzkyIHJlbGVhc2UzMC1tYWludAorNjgyNTQgNWViZjgyNjg5ZDM2YjRlNWU5MzQ4OWU4YTY2NTcxODNmNjliYzk3YyByZWxlYXNlMzAtbWFpbnQKKzY4MjU1IGZkNGRhODU1ZDYwM2Y1ZjdmNTg1NDMzZTFkNTQzMWEyOTJlODUyZjAgcmVsZWFzZTMwLW1haW50Cis2ODI1NiBjOWU1YzFmYTI4NWU4M2FkNWM5NWRlNmIwY2JiNjU4Mjg3MzRmNDA2IHJlbGVhc2UzMC1tYWludAorNjgyNTcgZTgwYzgwNmNlMDJiNDY0NDBmYjMyY2MwMTMyOTQ4MzliMTg1ZTAzMyByZWxlYXNlMzAtbWFpbnQKKzY4MjU4IDQ0Mzg3ZjFhMjhhMjBiNDY2OWUwNWYyMGZmMzc4OGVkZDc0Yjc1Y2MgcmVsZWFzZTMwLW1haW50Cis2ODI1OSA5MWYyZmJhMDJhNTAyMjI4OWY3ZGU5NmIyYTYyZTFkMjI4NDgwZmQxIHJlbGVhc2UzMC1tYWludAorNjgyNjAgODFjNDliYTdiY2NmNzc3OTY2MjJkMTkzNTk3NDIyY2VlMjJjNGU1NCByZWxlYXNlMzAtbWFpbnQKKzY4MjYxIGZhZGY3OGY1ZjhhZDM2ZWRlNjM1ZTZiYTU0ZmM0ODllOTEzNWUyODkgcmVsZWFzZTMwLW1haW50Cis2ODI2MiBkYjQ2NDQyNmEzNjUzNzIxNzlmYmQ3OGJkMGNjOWVjZDdiOGQyNmUzIHJlbGVhc2UzMC1tYWludAorNjgyNjMgMjRiMThlODdkNjY0ODkxOTA4NTI0MTVhMTc3MzAzYTI1MTQ1NjE4ZCByZWxlYXNlMzAtbWFpbnQKKzY4MjY0IDE1NDgzNjFiZmQyZjNiYjZmODVlZWY1Yzc2NDM3ZmQxZDhjZjA1M2UgcmVsZWFzZTMwLW1haW50Cis2ODI2NSBiYWRiNDcxZGJhZWJlMDFhODVjYzQwMGQ3YzNkNDA0OTI0ZTFkZjMwIHJlbGVhc2UzMC1tYWludAorNjgyNjYgMjc5YTUxMDA2ODg1MDBlZGI3MmRlYjk3ZTI3Mjg4NjE3MTczMTU5YyByZWxlYXNlMzAtbWFpbnQKKzY4MjY3IDA0N2RmMGE1ZjE3NDM2MDRjNjY1ZjI0YTI1MTkzNjBhNWFmY2JhOTcgcmVsZWFzZTMwLW1haW50Cis2ODI2OCA1YTViMGIyZDAxYjkzZWM5ZmJhNTUxZTBmMDc1YmMxNTIxOTY2NjQ2IHJlbGVhc2UzMC1tYWludAorNjgyNjkgYmQwZTM2MWJkNjQyMTUxYjdiMjEyMmE1Y2NjMzM4Mzk1ZDk3NmEzMiByZWxlYXNlMzAtbWFpbnQKKzY4MjcwIGZiZjdmNTNmNDg4OGQyOTJmOGIxZWU0MTExMmNiN2NlYzcxYWE4NTEgcmVsZWFzZTMwLW1haW50Cis2ODI3MSA2ZjMwYjk3MTQ4YjY1OWMwNmRlMzQxYTQ2MDRlOGQxNzcyNDEzZTNlIHJlbGVhc2UzMC1tYWludAorNjgyNzIgODUxYzJmMDRmOTVkNWFlYmE0OTBmNzBkY2EzOWMwYzdhZmZhYmFmYSByZWxlYXNlMzAtbWFpbnQKKzY4MjczIGI5NmQ2MTY4OGI4N2NmMDNlNDA0ZjAzZWE1NDEyZWI1ZThkN2RhZjUgcmVsZWFzZTMwLW1haW50Cis2ODI3NCBhNmVlMmZmNGRlNGQ4NzNmZjI1ZjgxNTcxYTI2YzJkZjcwOGJmMGVmIHJlbGVhc2UzMC1tYWludAorNjgyNzUgOTNjZjNhNmVhZDYzOThjZWFjZDQ1NTNkOTc1MjY5NzRlZTJhZTFkNSByZWxlYXNlMzAtbWFpbnQKKzY4Mjc2IDA1YmY3MDAyZWM5NDI2NTEyMDczYTU4MzQxYWM4ZTcxNmViMjVlZjkgbGVnYWN5LXRydW5rCis2ODI3NyBhZmFjMGNhYmMzYWQyMDcyMzUwNmIxYmMxNjE2ZjliNTgxZDkzZmIzIHJlbGVhc2UzMC1tYWludAorNjgyNzggZWE3ZTMwN2RkZDUxYWYzNTRmMTg1M2NiYjJhNDE4YzcxMGRkMzNkMiByZWxlYXNlMzAtbWFpbnQKKzY4Mjc5IDdhYzFmNmJlOGFkNTU1MmIzNTc3NjM1ZTY4YTU3ODlkMWE1ZTM2ZDcgcmVsZWFzZTI2LW1haW50Cis2ODI4MCBmYjkwNTg5MGQwNDlhYTMzYTQ1ZWVkY2M0NjY5MzM0NTgzZGYyN2VkIHJlbGVhc2UzMC1tYWludAorNjgyODEgOGIyYzFhMGE5YTJiODEzOGU0MDVlMTZkZTU5YTViYWY4ODc3Zjk3NSByZWxlYXNlMzAtbWFpbnQKKzY4MjgyIDIyYjExYzIyY2VmODQ1OTc5OWRkMmI2NmExMWYwNTNmM2M3NDdkZGQgcmVsZWFzZTMwLW1haW50Cis2ODI4MyAzYjA4Njc0YjliNDgzZjc3YzI3MDY5MjRlNmZmN2Y5ZTI5OWRlNGY4IHJlbGVhc2UzMC1tYWludAorNjgyODQgMWVhNTAxM2Q5ZGFlMGYxMjE1NDM5MmM1MzdlZDgxYzcwMzNhNzE0MSByZWxlYXNlMzAtbWFpbnQKKzY4Mjg1IDllYzk5ZmRmODA0ZjE4MzQ3ODE1YmRjZDgwNmIwMjRjZjZkZjQ2OTcgcHkzaworNjgyODYgOTQwM2RlZmI2OWZiMTliZjliZGI0MjUxZjU1ZjExZTNhZmY0ZmZjZCByZWxlYXNlMzAtbWFpbnQKKzY4Mjg3IDFjYThjNjg1OWEwNzg1NDgzNWQ5YWI3Y2NlNDZjYjE1NzQ1YTU0MWEgcmVsZWFzZTMwLW1haW50Cis2ODI4OCBiYWVkYjA2OWU0MjU2YmFiMzQ5NjNiOWQ3ZDQ3NDY0MmVkMGI0YWVjIGxlZ2FjeS10cnVuaworNjgyODkgNTM2Nzk4NTk4YWYwODhkM2E0MDkwMzA0OWZlOWYyNWUxZWRjOGQ5ZCBsZWdhY3ktdHJ1bmsKKzY4MjkwIGQ0MWE4Njg3NTMzMmE3NmE0MGEzY2UwYjUwZmQ3YjYyMGNkOGM3NTcgbGVnYWN5LXRydW5rCis2ODI5MSA1NGE1YWZmYjZhZjAxODU4Njg0NWViNzYzZTVlZjM1NGVhM2NjNThiIGxlZ2FjeS10cnVuaworNjgyOTIgZjRlZTAwMDZlZTM5MmY0ZWU2NTBjY2UzOGQzYjI3NTc1NzNmNzRmMCBsZWdhY3ktdHJ1bmsKKzY4MjkzIGRhMzRmMDI2NjRlZGM5ZDUyMTgyMGM3Zjg1ZDc3NjA5YWMwZTkyYTUgbGVnYWN5LXRydW5rCis2ODI5NCAwNTdjYjQ2ZGRhYWQ3YTllNzIzOTY4OTQ5NTkzNWI3NGQ3Njg5MGY0IHJlbGVhc2UyNi1tYWludAorNjgyOTYgZjg1NDM3M2E2NmU1NWJmZDNhMjI1YTM0OTA3ZWE3NzQyOTc2MmU5YiBsZWdhY3ktdHJ1bmsKKzY4Mjk5IDNhNTQwZWQ3OTVkM2IwNjhmODQ2MmYwNTcwYTkwY2E5MjVjNGUxMDkgbGVnYWN5LXRydW5rCis2ODMwMCBmYWM5MzUwYjQzN2RjOWRkMWM4ZmU3NTllMTNjM2Y0NmVlZWUxYTg2IHB5M2sKKzY4MzAxIDExNDZiN2IwZDUxOGIzYzc5ZTU2MzFjYzZmMTVmMmNiZTJmNmVhYTAgcHkzaworNjgzMDIgNTg0YjI2M2I5OGRhNjRhNGI3N2JiOTYzZDU2ODY5ZjU0ZDQ4M2E0MyBsZWdhY3ktdHJ1bmsKKzY4MzAzIDlkNTA2M2I0MTFlODc5NTZiNDNmNzNlNjMwMTM4ZDBlOWU1MGNjZmMgcHkzaworNjgzMDQgZTE4ZjMyMmI5MzFlNzkwNjQyMTUxYmI0NGU0YWMzMDk2OGMxZjkzYyBsZWdhY3ktdHJ1bmsKKzY4MzA1IDZlNGRkZTJlOTVmN2QzYzQwZDE5N2Y5ZTBlZmYxNDFlYzhiNGVmZTMgcHkzaworNjgzMDkgMTNmMTg1N2RkOWJmNWRhOGU0ZWZlZmJhOGExZmM0ZjgzNTI4ZGE1NCBweTNrCis2ODMxMCBjMjVlNWI2MjBhNGNmMjQ4MTc3M2Y4ZTI3NjVhMTA3MWE1OGY0ZjliIHJlbGVhc2UzMC1tYWludAorNjgzMTEgOTJjZDM1NTFmYTEzMWI3OTljN2ExZjRmODU2MjM3YzQ1N2NiM2IwZCBsZWdhY3ktdHJ1bmsKKzY4MzEyIGJjOWY4MGRkYmJlMjVmNTJmOGE3OGNkMGZhNzA3NWI3NzllNDVlMTMgbGVnYWN5LXRydW5rCis2ODMxNCAyY2FmZTk4OTExN2EzM2RlNzkyZDkzNjIwNmMxODcxNGU4NjI2YjVkIGxlZ2FjeS10cnVuaworNjgzMTUgNDc0NzQ1YjdhMTJhNmNhOWVlNjUyZTc5YTAyMGMzZmNlZTI4ZjM4OCBweTNrCis2ODMxNiA0MGJhMmExMjUzZmE0YmQ0ZTE0NmIwNTBkZmE0ZmQwMDMxYzBkZTkzIHB5M2sKKzY4MzE3IDA5YTQ5OGViMTgyMDU1ZGVjNmI0Zjg2ZjQzZWJiYTVkYjViMzViOTcgbGVnYWN5LXRydW5rCis2ODMxOCBmZDBiYjY4YWQ1YzhiYzFjZjg1MjM4OGYzM2MzODg0OTE3YmMzZDk4IGxlZ2FjeS10cnVuaworNjgzMTkgOWRlMjFlNjE1NTc3ZThmYzRiMGZiOGIwNjQyYzhhZjUzMzkxNDhkMyBsZWdhY3ktdHJ1bmsKKzY4MzIwIDJiZTQ5MGFiZjMzMzNjMjAxMzk1M2U0MzRlNDU2NzFhNTdlNTQ3YmYgcmVsZWFzZTI2LW1haW50Cis2ODMyMSA1NDM2ZTUzNGRhNmU0YTM3OGY5YzhhNzNhZGZkMjM5ZDYyMTIwZDczIHB5M2sKKzY4MzIyIGRkYWVjNDdlNmRkOTlhNmUxYjVmZTM0MmEwNGVmNWYxMGM4ZTk5Y2UgcmVsZWFzZTMwLW1haW50Cis2ODMyMyA2YTZmMTM4ZDQxNjJjZjAwYmQ0NzJlNTIyMDU5MzhmZDc3NmJhYmY1IHB5M2sKKzY4MzI1IDE1YzRjOWUzMzBlOTIwZmI2YjI1MDEzMDA0YTgwOTNkMzdjYzllZTkgbGVnYWN5LXRydW5rCis2ODMyNiA4Njg1ZTU4NTVhNDc5NzM5ODg2NjAzNTcwOTAyMTVjNzk5N2RmNzg3IGxlZ2FjeS10cnVuaworNjgzMjcgZTE3MWNkNTNhYzRiNmVkNzU3ODc3N2Q0NmUxYjk5YmRlMGUzYzcxMSBweTNrCis2ODMzOCA3NThkOGZiN2JkOTkwODk3NTI4OTQzNTkxZjk1M2NjMmM2ZmEzZjEwIGxlZ2FjeS10cnVuaworNjgzMzkgOTE3NDg5NTk3MmNiMDkxYzEzMDhkZTU0NWFiZGY4NmMwMTY1MjJmNCByZWxlYXNlMjYtbWFpbnQKKzY4MzQxIDZkOWIwMzMxZDA3M2EzZWVmNTZlYjUxNWIxOTZjMDg0NjIwMDBkZTkgcHkzaworNjgzNDIgMjU1ZTY0YTEzNzU1MWRiNWFiNjg2MDZlYWZiNWEzMmI0YTVkNmU1ZCBweTNrCis2ODM0MyA2NGY5MWZmMjRmZTZjMjQ4MDFjOTFkZjEzNWY5ZmI2OWNjZDBjMTQwIHJlbGVhc2UyNi1tYWludAorNjgzNDQgNzI3ZWUxNjY1MjE5ZGRjN2RmMjZmZTNkYTk5MWEwNGExMmM4ZmZmZCBsZWdhY3ktdHJ1bmsKKzY4MzQ1IGU0YWNmMDc5YjUwOGRjMDEyNTFmNGRjNDQ5ZDliOGZjMjY2YWVjYWIgcmVsZWFzZTMwLW1haW50Cis2ODM1OSA0NWFlZjUzZjVjNzFhYzRiM2NiODkwZDQxYzFiOTc0NzBjYTg5MjgwIHB5M2sKKzY4MzYwIGZjMDAwMDY4MmJmZTdjMGVkNGRmYzMwMzdlODAwYjIwYzFlNWIwMmEgbGVnYWN5LXRydW5rCis2ODM2MSBiZTliMTViZjY4MjgzMWNhZmMzOTVhYjM4MjZiYjZkNDEwOTFjNmY3IGxlZ2FjeS10cnVuaworNjgzNjIgNjE3MTk5NzY5YmQzODRiNTE4NGJjNDZhMjg2NGU3MThmOThhMjNmNiByZWxlYXNlMjYtbWFpbnQKKzY4MzYzIDJmZjk5MTBmMTUyNmM4OTM0NzIwNGRiZDk3MjM5YmFlMGU2MWNkMmQgcHkzaworNjgzNjQgZTk4N2UwZGY4ZjQ4ZjQxMDA1OTJhNjY3YTQyMzIyZWViNmZlNjQ1NSByZWxlYXNlMzAtbWFpbnQKKzY4MzczIDg5MzNkZWJiOTMwOGViNzA0OGQ3NTc1Y2Y0YzM0MDYwMmJjZThkNmQgbGVnYWN5LXRydW5rCis2ODM3NCBhNGFmNWU2ZjZiMTdjMzkyNDZhNzllNmQ0ZmU0MGVlMTNlNzhmZTY5IHJlbGVhc2UyNi1tYWludAorNjgzNzUgODFkMjM2ODRmNjk0ZGUxMTE0M2FjZjJhZmI5MTIyNzgxMzlmZWU1NCBweTNrCis2ODM3NiAwMjc2YjhmZGRkYTdkNWQ1OTRmYjIwYzY3YWM4M2NkYTVhNDkwYjg2IHJlbGVhc2UzMC1tYWludAorNjgzNzggOGE1YTk1OTExMDBkZTcxNzRmYWE3OGYzNDM3MTZlNTc4NWNmNDI1YyBsZWdhY3ktdHJ1bmsKKzY4Mzc5IGZlZDJhZTFlNTBjMmZkNTVmOTczMzE0OWY1ZjkxOWJhYTY4MTU5NDIgcHkzaworNjgzODEgZjBlMGMzNTM2ZTIyNzI1MmEwNDNlOTE5ZDkzM2QyZjU2NzAyMzExYSBsZWdhY3ktdHJ1bmsKKzY4Mzg4IDQ0ZjE0ZmQ0ZDljMjczMTM5MmZiOGQyZTUyY2FjZTJiNTZlODBkNDggbGVnYWN5LXRydW5rCis2ODM5MyA1YWM4ZjBiNWE1OWJmY2M1N2RlOWQzZWE5NDZhYzk3ZTNhZjBjYWUwIGxlZ2FjeS10cnVuaworNjgzOTQgMGI4ZDJjZjNmNTViNDJiM2I4ODY2NDk4ZWQ0OWIzOTQ4Y2QyZmFkZiByZWxlYXNlMjYtbWFpbnQKKzY4Mzk1IDc2ZmExZGUyNzQyYTk4YTEyN2YxMjYzOGZhNzNmMTkyNmFjOWJhODYgbGVnYWN5LXRydW5rCis2ODQwMSBhMjI5Y2EzYTEyYWUyYzQ2ZGE4ZGFkMTc5NGViN2U1YzgzMWJlZjkzIHB5M2sKKzY4NDAyIGU2YTI5NzkwZDc1YWUwYmE3Y2VmZTM3ZGUzNjc4NGFmM2E1ZGRkYzIgcmVsZWFzZTMwLW1haW50Cis2ODQwOSBhZGM0MzBjMTZiNTdiNmE3NmI3ZGNjYzk3NzUxOWRkNWY5NmE1YWFkIHB5M2sKKzY4NDEwIGZmZmQxMGMxMmExYjc3MjM5ZmI2YmUyZTc2ZTJmZDcxZDFkYzJlMTMgcmVsZWFzZTMwLW1haW50Cis2ODQxMSBmOWY1ZDkwNDdhMDU0MWZhMTZmZmI1ZWMzNjQwNWYwYWRhNTc4YWM3IHB5M2sKKzY4NDE1IGEzZjMyOWYyM2IyMzZlMzMxNTMxODY0ZDU5MWFkMzI2YmZjNzk4NjQgbGVnYWN5LXRydW5rCis2ODQxNiBlYTQzMTk0M2E4ZGU1MjYxN2JjNWE1NWE1NzYyZWQ3YTA5ZjgzZDQ1IHJlbGVhc2UyNi1tYWludAorNjg0MTcgNTg5ZjY4NDRkOGUwZWMzYWFlZjE5ZDJjOWI2MjY5ZDIyYjEyNjQ0MyBweTNrCis2ODQxOCAzNjhkZjAwNjA3NDBjNzI2MDE3MjMyOGNiMzIyNjAwOGNjMjZmOTlkIHJlbGVhc2UzMC1tYWludAorNjg0MjMgZWQzZmRiZjEwNzc1NTZmMmQwMmVkZmZjNWZhNTUxNWYxNGNhZDgwNyBsZWdhY3ktdHJ1bmsKKzY4NDI0IGVkZWI5MDM4YzQwNWIxMTQ3MDRjMzVhNDgxMTQ5OTNkMTZmZjM0MWIgbGVnYWN5LXRydW5rCis2ODQyNSBkOTdhYTk0M2JlYmI1NWQzNThjYjJhYzA2MjlhZTljOTI4MzJmMmUzIGxlZ2FjeS10cnVuaworNjg0MjYgZDhiNjRjNjc2YmNiMWRlNWY2MjU0ZmQzYzFhMzY1MzhiYzcwMmVkYiBsZWdhY3ktdHJ1bmsKKzY4NDI3IDVmMjkyZGViZDI0YzM1NGQyNWI4NjNlODc5N2ExMTcxMDE0NTk1ZGIgcHkzaworNjg0MjggZTQ5NmZkYjkyN2ZhNjJkMDQ4M2EzMzk1ZGUxZWU1NzhmN2MwNzViNSByZWxlYXNlMjYtbWFpbnQKKzY4NDI5IDVjNjI0NGQyMTdmZjExYjk3M2RjOGQ1YjRkMGJiMDhlN2Q5Y2VkNDggbGVnYWN5LXRydW5rCis2ODQzMCA2OWEyYTRkYmQ5YjRmNGRhNGY0MDZkNWFhZGM0NjY2ZGJjMjJhZmRlIGxlZ2FjeS10cnVuaworNjg0MzEgNzJmZTUxZDZmODAwYmNlNzdjYzZjNDRjODkxZjM3MDEwYmIzYzFiYSByZWxlYXNlMzAtbWFpbnQKKzY4NDMyIGVmM2ExZWNkNDY2M2ZlNjU0ZTI5MmVhMDMxZTFmNzZmOGE1ODhlYWMgbGVnYWN5LXRydW5rCis2ODQzMyBlM2MyMTI3OTk3MDZlNjZmYWM3M2M3OWJhMGY0YTNlZDMwMTYwY2Y5IHB5M2sKKzY4NDM0IDQ4MGZjZGQ4MjAxNjIwOWRkNzI5OWFmNTMwZTRjM2RmZWI0ZmFhYzMgcHkzaworNjg0MzUgMzY2ODZkNGQ3ZTcyNzViYzI0NjFmMTAxOWY1NjIxMjA2MmFiM2QzMiBsZWdhY3ktdHJ1bmsKKzY4NDM2IDNiOTMzNTg1NTQ3MTk2YWVjMDQwMTA2NjEwYThkNTgxNjZjMTMwMmYgcHkzaworNjg0MzcgMGE2NmUxZGMzMGYyMjM1Njk4MzdhN2QxZWU5YTI4YTc0MmZkNTI2OCByZWxlYXNlMjYtbWFpbnQKKzY4NDM4IGM3YzM0NGI2M2VjY2ViZjYzMjczZmM4ZTJhYTdiNWE4MWQ5MWVlZDkgcHkzaworNjg0MzkgN2I4NmQ2Y2FjMmIxODVlMWM1NjAxZTc3ZGFlMWUwODE2YjA3NDE0YSBsZWdhY3ktdHJ1bmsKKzY4NDQwIGYxMjdiY2IwYWE3MTIyNWZmYjRjNWFiZDc2YTgzZmY4Y2RmMjQ1ZjcgcHkzaworNjg0NDEgOWYwNDFiYTNlNGM5MWZjMzNmM2NhMzkyZjdmMTI3MmEwODhkYzU2MiByZWxlYXNlMjYtbWFpbnQKKzY4NDQyIDlkMDkzZWY4OWM1NjA3NWJlZjBkYzBiZDUyZjBjNmI4ODdlOGQzNWIgcmVsZWFzZTMwLW1haW50Cis2ODQ0MyBjZTM3MzMxMzlmYWM4MDNlZmE4NGE0NGRiZWIzM2IyMzNiNjE0YTljIHB5M2sKKzY4NDQ0IGM5NGYwMjc5ZmVkZTk3N2IyNDc5NTYzZGNkNzA5NjY3NzE1NDUxYTQgcmVsZWFzZTMwLW1haW50Cis2ODQ0NSBjY2Q5NWIxYWFkZTlkNGM5OGRhYzkwNWM3MzNhNThmMmU0ZWJhYzA5IHB5M2sKKzY4NDUwIGI3M2JkNWE3NGEyNzg4MzdiYzJhMDIyOTdjZjg0MjNlZjEzNDNhMzkgbGVnYWN5LXRydW5rCis2ODQ1MSBiYzMwZTM5NWFhMTRhZGVmMDAyM2QxMDIwM2UxNTM2ZDMyMGNlY2RlIHB5M2sKKzY4NDUyIGI5OGZlOGRjOGFjZDZhMTA0NTBiZDlkM2FmODY0MWQzZWFjZjA0MjEgcmVsZWFzZTMwLW1haW50Cis2ODQ1MyAzODg2ZTRjODhmYTU5NmQ5MGUyNDgwYjNlMTI4NWUzMmEwMDViZWUwIHB5M2sKKzY4NDU0IDhjNDlmZjBjZTE3YWYzNmVlOGQwYjg5NGEwMjIyZDI4NDgyNDNmMTEgcHkzaworNjg0NTUgZmRjY2E4NzkzZWI5ZjdlMjUxMTgxMGZiMmUxMDBjZWU2MDQxNzk4NSBsZWdhY3ktdHJ1bmsKKzY4NDU2IDliMjc2Y2UzNTY5N2IyNTZhOWNiZTNhZjlmOTE1MGE4YTRlYzUxYTYgcmVsZWFzZTMwLW1haW50Cis2ODQ1NyBjYTA5OGZjMThlYzYwOTgwMzRiZTJlNGYxNGU0ZjI3ODc4ZDliZTZhIGxlZ2FjeS10cnVuaworNjg0NTggMDdiYmMyZTIwYWE0YjUwMmZhMWQ3NjY0NWEyZWUzZmUyZDg5MzJhNSBsZWdhY3ktdHJ1bmsKKzY4NDU5IGYxY2E1ZGQ1OWFjYTgyNjRlYjhiYzZiOTVlMjA5OTcxODFjMzliNjAgbGVnYWN5LXRydW5rCis2ODQ2MCBjOGY3OTNlMTU5YmJiYmU5NzVlN2QwZGE0NmQ5Yjg4OGEwMDQ5YmU0IGxlZ2FjeS10cnVuaworNjg0NjEgZTZmNTVjOWVjM2QwMTRhZmU5NGMwOGI3Nzc4MTYzZDZkZjI0ZWQ3ZSBsZWdhY3ktdHJ1bmsKKzY4NDYyIDc5Mjc2MzE2Yjk0YjM4ZjNkZWVhYThiMDM3MDEzYjkzY2I2MGE1ZWIgbGVnYWN5LXRydW5rCis2ODQ2MyA2MmNhMmNjY2RiNmZjMjBlYTMzM2FmNTg3NGRiZmZjOGM4NTA2OTBlIHB5M2sKKzY4NDY0IDljMmJkNjQ3YjY0NjRlYjY2NWRkYzAyMjhlNTcwMTExYTY1NTdiNTggcmVsZWFzZTMwLW1haW50Cis2ODQ2NSA1ZDBlYWMwMWEyODVkOThlYTM4MmRhOTcwMjViNjY1YWFmM2MzMDNkIHB5M2sKKzY4NDY2IGJjNjcwYThkZjQ0YmIyYTM4YTI0MWE0MjNlOWYyYjE3MjM2ZGQ5NmIgcmVsZWFzZTMwLW1haW50Cis2ODQ2NyA5MWUzODUxYzhjYzdjYTIyNDNhOTQ1ODUxZGM1ZTU2YWIzNjZhMGExIHB5M2sKKzY4NDY4IGUwMGIzMjQ3NDliMDRlMjk2MzVjYmIxY2FmNmYwMjQ5MTIyZjBjNDQgbGVnYWN5LXRydW5rCis2ODQ2OSA4YWY1MWNmZGQ1ZTkwYzEwNTExMzFjNTBhMTJkZDU1N2M3ZGYyYTQ1IGxlZ2FjeS10cnVuaworNjg0NzAgMWUwNzBiODNjZmE5NGI3MGE1M2U0YzJiMDFiOTc5MDY3OTFkOWU1OSBsZWdhY3ktdHJ1bmsKKzY4NDcxIDkzN2Y1MDBlMGYwNmQwODA3ZmU0ZTA1ZTFkMGI3ZTNmMmE3Y2RhYmUgcmVsZWFzZTI2LW1haW50Cis2ODQ3MiBkNDQ4M2ZlY2Q2ODczYzBlY2M0MDc0ZDQzMGRmMzZlZDhmNGFmZmFiIHJlbGVhc2UyNi1tYWludAorNjg0NzMgYzM0ZDcyMWMyZGM3MjQ2MjliMmFiNTFiZjEwNTUyMzNkNjUwMjQ1NiByZWxlYXNlMjYtbWFpbnQKKzY4NDc0IDYzOGUzMDllY2M5OGFlODFhMGFkYjdkNTc2NTBiZDAzOTBlODVjNmUgcHkzaworNjg0NzUgYTBmZjkwMDdjMmFhM2U3ODhiYzkzNDAyZDU1NDg4ZWVlMDZiZmM1OSBweTNrCis2ODQ3NiA1MzAyZjgwNjUzN2E3YmJjMWY2ZGZiYmQxNTFjMTZmMzAwNzc0M2UxIGxlZ2FjeS10cnVuaworNjg0NzcgZDMyNmE2NzNjYjY2MDVkZjRlYWZjMWQxZjQ4OGVjMzRhZmVhZDBhMSBweTNrCis2ODQ3OCA1YzZjYmI3YTYyYjA3NmJlYjUxZmQ1MjU4MzJmMTVhOTdiOWJiOWRhIHJlbGVhc2UzMC1tYWludAorNjg0NzkgZmE5MjI5ODVhZjczMjE3ZWI4YWQ4MWZkZDkwNjRhMmFmMzdlMTNjZiBweTNrCis2ODQ4MCBkYmUzOWViZDMwMjU0ZmVmMzUxMjJkMzhmOTBiNGM2YWFlNTJlOGRlIGxlZ2FjeS10cnVuaworNjg0ODEgY2RjMmZlMWJlOGE1ZTIwZDg5M2Q2ZWUwNjZmZTIzNWZiMmIxMzE4NiBsZWdhY3ktdHJ1bmsKKzY4NDgyIDJkNDcxZmQ4OGFmZmIyOTQ4OTI4ZGRkYWEyMWQxN2EwYTUxNzQzNzkgcHkzaworNjg0ODMgOGU2MjNiNzhhY2JmNmMwZDY2MWU0NjMwYTVmYjg3MDI1MGNiMTI4YyBweTNrCis2ODQ4NCA1ZDVkOTA3NGY0Y2FkNDU3MDJmNGE2ZmJkNTBiYWVjNDViY2U2Mjg4IGxlZ2FjeS10cnVuaworNjg0ODUgOTljNDQxNjQwZjcwYzcxMDRmNzg0NDBmNzllZjJmOTQ0MjRmZDhkNSBsZWdhY3ktdHJ1bmsKKzY4NDg2IDE1YTA1NmUwZjg5ZmVmMjY0YWIyMDlhYTFiMGU3ZTViYjBjMmQ1MDEgcHkzaworNjg0ODcgNzQ0NGY1NjRlMjdkMWU5ZjY1OWIzZjhhNDRmMDU3YzdmNDY2MTdjMiBsZWdhY3ktdHJ1bmsKKzY4NDg4IDhkY2FiMjQzOTdhOGQyZjAwNzA3ZTBmNGNlZTc3MmVmZWI4NjJlZDIgcHkzaworNjg0ODkgMjkzYWM0NGQ3ZmYwZGY2NmU0YTQwMWQxMTYzNzBiMjA5MDBjMjBhOCBweTNrCis2ODQ5MCAzYjViZTBlZTMyZWFjOTc5OTFiNjdhYzU2ODc5YjQ1YmFmZWI0OThmIHJlbGVhc2UyNi1tYWludAorNjg0OTEgZTk1YzNhZWI0Yzg1ODM4ZGEyYWEyMDlmNmRjNzAyNTE4NDNhNWMxZiBweTNrCis2ODQ5MiBlZjRiZDc3MDhhZDdiM2RjMjg5YzczM2UyM2E1ZmE2M2U2NjcxNDgwIHJlbGVhc2UzMC1tYWludAorNjg0OTMgNDBjYThiMjEyMjA4MWRlNTNmNTIzNWI2ZjUxMjE0NWNmYjM2ZWQwYiBsZWdhY3ktdHJ1bmsKKzY4NDk1IDEyOGUyMGRhODllYjQxZmNmNGI2ZTYxMmM5MDg5MjRiZWVjMGViZTUgbGVnYWN5LXRydW5rCis2ODQ5NiA1ODYxZjZlMTA4NjA3NTNkMGU3OTlhMjQ1Nzc3ZjgxMzhlMGYyMjAwIGxlZ2FjeS10cnVuaworNjg0OTcgOTU1NzZkOGFmNzk4OWUzNDM1YmY5NTAzMDdkODJjYjg5ZjI5NDMwMyBweTNrCis2ODQ5OCAwMjQ0OGNjZjQxZTAxYTU5MDM4NjBkMDRiYTVlNzc4ODk3NTMxMTQ2IGxlZ2FjeS10cnVuaworNjg0OTkgOGUwM2RhYWFmYzc0MWRiODk4ODZiODE5NDEwNDc0YTg0NmQzN2JhMiBsZWdhY3ktdHJ1bmsKKzY4NTAwIGQ4N2NiZmM2YzVjNjc3MTQzMTVkYzk3MGQzZjc4ZWQ5M2YwNzA0M2YgcHkzaworNjg1MDEgYmJmNDY0MjEwOTg0MDQ1YmExNTE5YTIyYWU2ZTA3NThjYjk2NWRmMCBsZWdhY3ktdHJ1bmsKKzY4NTAyIGVhZjdjZWI4YWI0NTRhM2YwM2JmNTEzNjdlOGRhNGU0M2NkMDk4MmUgcHkzaworNjg1MDggOWUxODFlZWRjOTVjYTJiYjlhNTA0NGExNTc2ODYwMDc3MjIwZTIxMyBweTNrCis2ODUwOSAwNDk2OTYzZmNmZTlmYjY0Yzk0NThjMjFkMzU2MzU5MzIyMzYxZDExIHJlbGVhc2UzMC1tYWludAorNjg1MTEgNGQzNTBmMmIxZjJlODM4MGNjNWU4NWRkN2FiNjcyNWY0YTNhZDAzOCBweTNrCis2ODUxMiAxOWRmZmRlYzU1NDdhYjk0MmQ0Y2NkY2MwOWQxNWI2YWVkNmQ2ODRkIGxlZ2FjeS10cnVuaworNjg1MTMgMGYxZTRhYjk1NjU1MTcxZmY2MTBhZmIzYzg2ZDJlZjVlY2ZjMzQxOCByZWxlYXNlMzAtbWFpbnQKKzY4NTE0IDQ0ZTBjNjlhNTMwNDgxZDdjNzgyYzZhMGYyNTc4MTNkNTI4NGQwMGYgbGVnYWN5LXRydW5rCis2ODUxNSA0M2VkYzY1ODFlNDRkZmM0ODJjYWI0MThlM2FkZGNlNGFlOWY5OGMxIGxlZ2FjeS10cnVuaworNjg1MTYgOTNiMmE5MTNkOGFjZmQwNzNiZTZhNWY4ZDY5NDAxNzdkMjZjMjJiZCBweTNrCis2ODUyMSBhYjA4NmFmZGNmMGNmN2UwZjQ0NWY2ZjI0ODhkYjhkM2Y4NjQ0ZmJiIGxlZ2FjeS10cnVuaworNjg1MjIgMmQ4OTc3MmNjMjU2ODhhNmZmY2Q0MjI1OGExNmJiMDZiMjExNDk2NSByZWxlYXNlMjYtbWFpbnQKKzY4NTIzIDI5MzVjZWRlNTk0ZTM3N2ZlYzFiZmFkZjY4NzE0MjgwNTdmODY5MTggbGVnYWN5LXRydW5rCis2ODUyNCA3NTY2MWJmOGNiMmM2NzNjMzY3MTM5NzBjODgyYjlmMDFkOGQxNzYyIHJlbGVhc2UyNi1tYWludAorNjg1MjUgOTVhNGY1MzA4YmUyNGNkZWFhMThiOTY4MzRkNzNhNmY0Mjc3OWViOCBweTNrCis2ODUyNiBkYzQyYWRmODg3YjU3NWYwNDIyZTNlMGU1YzFmZmZlYTIxZWY3NGE0IHJlbGVhc2UzMC1tYWludAorNjg1MjcgZDg0MWZmNjdjYzYxYjhhMjU1OGZhNzVhM2UwY2UwNDI4NDFiMzY4MyBsZWdhY3ktdHJ1bmsKKzY4NTI4IDcwNDQzYWU3NmIxMDVjODE5YzA1NzRhODVkOWZlODM5NTU1MTAxZWIgcHkzaworNjg1MjkgOTJiZDAxNDE1OTA2OTdiNTkzMjFjMzdiNmI0MTA1N2YyODQwNTY2NCBweTNrCis2ODUzMCAyZmZkZjhkZDNlOGI1MDY0YTI5NWU0MjU5ZjI1OTQ4ZDIyNGYwMWRlIHJlbGVhc2UzMC1tYWludAorNjg1MzIgZDA5ZDZmZTMxYjYxOTk4N2Y3OWZhOTQyNDNjOTAzMzRlZjJkMWU1ZSBsZWdhY3ktdHJ1bmsKKzY4NTMzIDI3ZGI4MmE1Y2RhOTE5ZGNjYTIxZjRjZmM2ZDQ3OTZhOWE1ZTYyODcgcHkzaworNjg1MzQgYjdmYmUzN2ViODkwNGRmOWNiZjk5ODVhNWRjZGIzZTJiMjgyNGViZSBsZWdhY3ktdHJ1bmsKKzY4NTM1IDQ5MWVjNDExZTVjOGZmMzZmZDE4MTQwYjJlM2ZhMGRmNDYzMDgxMmYgbGVnYWN5LXRydW5rCis2ODUzNiA3NTQzZjEyODIwNzM2OTRhNDY0NGQxNTc0YmJmOTA1NDljMzgxMDA3IGxlZ2FjeS10cnVuaworNjg1MzcgMGYxYjNmMzExYWUwMTAyZDJmOTQ4NmJiNTJkOWRlMzI4NTlmZWI4NiBweTNrCis2ODUzOCA2ZWVhODBiZGNiZjVlOGY2MTY4ODA0ZjJiMGQyZjBhYjJiMGIxNzA3IHB5M2sKKzY4NTM5IDVmNGMyZGU5NTA5MWI1MmMwNmNjZWZkOTI1ZGQxMzhiYzNjYmEzMzUgcHkzaworNjg1NDAgYWQ5NjkxMzUwYzkzMWRmNjE0Nzk1ZTAxMjA1ZTg0OWIyZjc4NDkyZSBsZWdhY3ktdHJ1bmsKKzY4NTQxIGU4MTU0YmQzMjJjYjU2NjEyYzI0MWY4MmM2NDdlNTE5OWViN2JkZGMgcHkzaworNjg1NDIgODU0MDI2ODA0MGZmMDQzZjAwODJmNDcyYTZiMmVlMGZlM2MwYjMyNCBsZWdhY3ktdHJ1bmsKKzY4NTQzIDJiMjcwN2ZmOGJiN2E5ZjI1YzVjYzBmZjg0MDVjNmU5ZDU1MzhmYzggcHkzaworNjg1NDQgZTQwY2U4ZmZlNjMyZDE2YzZmNjNiNzRiYTYyNTI4YzI3NzVhZWUzNCBsZWdhY3ktdHJ1bmsKKzY4NTQ1IDM4ZTE4YTg4NGYzZmVlNjVkMTIwOWNjN2IwZmU5ODY1N2Q5ZTI5ZjYgbGVnYWN5LXRydW5rCis2ODU0NiA4N2FkY2NlNDhkZWZlNjRmNTRmOGViNDBlMWE0Y2UwMTg2N2Y1NmI5IGxlZ2FjeS10cnVuaworNjg1NDcgYmJjZDQ2MzRhZTczM2IyZDg0MWQxN2FhOGVmNDc0MjJkNzAxMjcxNSBsZWdhY3ktdHJ1bmsKKzY4NTUyIGJjOTJiYjIwODE5ZmM5Y2I1NTZjYWJiNzU3ZjdlYmFmMDg4YzgwMDMgbGVnYWN5LXRydW5rCis2ODU1MyBmNTViODU1MzIzOTI3YmQ1ZTUwMjllZjk2ZGEyMGY3NmFlNjA2MDllIHB5M2sKKzY4NTU2IDg3MWExZmY0NmZhNjljM2RkNmVhNTQ4MzMyMTUyODNlYTQ0NjdkOGIgcmVsZWFzZTMwLW1haW50Cis2ODU1OSA1OTM0NjEyZDUwNzA1YjA0OWE4YjliMzc5NzAxYTYzNzU4ZjVlYWZhIGxlZ2FjeS10cnVuaworNjg1NjAgZTk3NDhkYjQ3NjM1N2NjNjE0MmZiOWMxZDAyNjMxYmUyODNkOWFmZCBsZWdhY3ktdHJ1bmsKKzY4NTYxIGM5OWNlMDE2NDY5OWMzZDRmNmI1OGRkMGFhMmE3YTU1MWMxODJkZDkgcHkzaworNjg1NjIgZjQ1OTk3ZDlhYzU1NTYxOGFkZDFjMGM2NmNhOWU3OTE5MWE3YzM0OSBsZWdhY3ktdHJ1bmsKKzY4NTYzIDEyYTc4N2I0NGRiNTQ0OWYwMGYwMTM1NTFjNjMzNzZmOGI3YzMzM2UgbGVnYWN5LXRydW5rCis2ODU2NCAyYzAzYzc1ODBhYTM4YmQzNmYzMjZjMDQ4MDgwYWQ2YjQ3M2Y4YzY5IHB5M2sKKzY4NTY1IGJhMTUyMWYyNDc0OTA0MzQ2MjU1YzUzODJjZTZmY2JlMjExMTU0NDggbGVnYWN5LXRydW5rCis2ODU2NiBlMzAxMTQxZTkxYjEwNDY3ZWQxZTA3ZGM0YjM0MzA2MjE0ZDFlNjI3IGxlZ2FjeS10cnVuaworNjg1NjcgZTVmOTk2Y2RhMzIxNmU0YjAxMWRiNWUwMjNkMmVjMWE3YmIxODMzMiBsZWdhY3ktdHJ1bmsKKzY4NTY4IGExOWQ1OTZkMzUwMGNmYTYwNTUzNGM0MWFiMWFjYzU2MzRlOTM0ODUgbGVnYWN5LXRydW5rCis2ODU2OSAyYTgyYmQyOWVjMTg4ODU4ZDllOGY2YWE5NWVkMmJhY2E0ZDUyNGRiIGxlZ2FjeS10cnVuaworNjg1NzAgNDU0YjY5NmMxZDczMGUyYzY2ZTI1N2RjYzdkNGZiMjBjMTFlZTQxZSBsZWdhY3ktdHJ1bmsKKzY4NTcxIGM3NzZiNmQ4MTRjMjNlOGJhYmM3YTJlZjI2MTIxMmU5MWJkZWMxNGIgbGVnYWN5LXRydW5rCis2ODU3MiA1OWIxMjEyYTRkYmYzZmUwMTMyMmYyZWM4NjlhY2YwN2FmZDJmNjAzIGxlZ2FjeS10cnVuaworNjg1NzUgYmU4ZTk1OGRlZTk0Y2VkNGFlNmM1NDcwMDY5NGU0OWY0NzY3ZThkNiBsZWdhY3ktdHJ1bmsKKzY4NTc5IDA4YWM0NDA0MDhjOWQzMmE2ZWY0M2QzYjBhZjAyZDJjYWNjZGFhMDYgbGVnYWN5LXRydW5rCis2ODU4MCA5YTVkMTQ1ZjE5YTUxMmI2YjU4M2VkZWM4OTYwZTQyY2MwNWY1ODk0IGxlZ2FjeS10cnVuaworNjg1ODEgNDM5OWUzZjEwYjE5YjBhMTcwYThjYjJjMTNhYzRjNjUyY2EyNmIzNiBweTNrCis2ODU4MiA2ZTMzYWVhZWU3N2RkMzk2ODA1N2E4ODg1MDgwNzk5M2M1ZGRkNjRmIGxlZ2FjeS10cnVuaworNjg1ODMgZjU3MTg0NGJlZjVjOWE4ZTgwNzcwZGIzNGFhNjYyNjZkNDg1MzkzYiByZWxlYXNlMzAtbWFpbnQKKzY4NTg0IGEzNDk0YTViMDQ5NTY0NmNlYzk3YjUxNjk1Y2VkYzFlM2NmMmM0YWIgbGVnYWN5LXRydW5rCis2ODU4NSAwMmFiMTYxNDIzYTU4NmQyNGQwZjBkNjM2ZGIzOGZmY2MxMmNkOTAyIHB5M2sKKzY4NTg2IDQxM2NjYTNlYmU4MmUwMjE3ZWIyOTViOGJmYmNkNTM3MzU2MjdkYjAgcHkzaworNjg1ODcgMDIyOTA1NWM4YmUwNmYxMDFkM2RkYTczYTA4ZTdiZGIwZjlhYmU2NSBweTNrCis2ODU4OCAwOTQzMzQ0YTUyNjFiYzc2MDgzN2JmYjg2ZTJiYTZlYmYxNThmNWEzIHJlbGVhc2UzMC1tYWludAorNjg1ODkgMDhmM2ZlNjkxNTFhYzZkMDQ0OTM2ODEyYzdiNTcwZDQ4ZGU5OWU0ZSBsZWdhY3ktdHJ1bmsKKzY4NTkwIGZhYjUwMTI3N2JjMmMzYzMyOWMwYzY0ZjMyYzg3NWIwNmEyNTg0OGYgcHkzaworNjg1OTEgZGRhMzEwN2Y2YmM3YTdiYjYwMDAxNDYzODBiMjBhMTQyZDNiMjM0MyBweTNrCis2ODU5MiBhODU4YjYxZGIzMjRkN2VkM2M2ZWY0OWI3MThkN2RjMzc5MjhkYTgwIGxlZ2FjeS10cnVuaworNjg1OTMgZTQ2YTA2YTI2NGIzMmRkYjRhNmViMTI2ODkyMjUyMWVjMmMzNDBhMyBweTNrCis2ODU5NCAwZmRjZTM5OWRjZGUwYTIzYzgxNzkxY2U2N2EzODFkYTFiMzM0YTAyIHJlbGVhc2UyNi1tYWludAorNjg1OTYgNjVjMTkzOGZiOWZmZjI3OGFjYzRjZTY1MmExZDU0OGFiNTE2Zjk5OCBsZWdhY3ktdHJ1bmsKKzY4NTk3IGJjZjY2NjNjNWMwNDhiYTlhMTdhYzRlYjdiM2VkMjY3MWYxMDBjNDcgbGVnYWN5LXRydW5rCis2ODU5OSAyZDQ1M2IyMjFiZWNkN2U0ZWFhZDBlZTNjMmZiYjE3ODc1ODc3ODFhIHJlbGVhc2UyNi1tYWludAorNjg2MDAgMGVmMWU2NjRhNGE0NWEyOTBkYWEyOWZiOGQ4ZWM2MTcyNTkyYjlhOSByZWxlYXNlMjYtbWFpbnQKKzY4NjAxIGUxMWM5OWUxZTZlN2VjODAxNjJjYzg4MTBmZDc4MDNmZTczOGZjNTEgcmVsZWFzZTI2LW1haW50Cis2ODYwMiAyZDVhOWM3ZTliNGUzMGI5ZGIxOTFhNjM0Yzk3OWJiZGY2NWRlMWE3IHJlbGVhc2UyNi1tYWludAorNjg2MDMgNDgzMmEwYjEyODdiN2M2Yjc5YzQ2NjM5MDViMTYzNzUxNWE5OTdjMyBsZWdhY3ktdHJ1bmsKKzY4NjA0IGQyY2MyNmJkYTZhOTM1ZTg4YTczMWYyNDY0OWYyOTZkOWZmMDQzZWMgbGVnYWN5LXRydW5rCis2ODYwNSAwNDEzMWM3MDJkMTcyNjA2NmQ0NjExYzJmNDdiN2I3YTVhMzJmZDY2IGxlZ2FjeS10cnVuaworNjg2MDYgMGUwNWUwNzhiY2VkMzMyNmFjYTk3NzA4OGRkOTM5YWRiMGIxMjc4ZSBweTNrCis2ODYwNyA4ZGY4MTk0MWRlMDVjZDU5Yjk2ODczOTAxZWY4ZGZhMmIwYjExMzBhIGxlZ2FjeS10cnVuaworNjg2MDkgY2ZmNGZjNTJjNzA4ZmQzYzAxMzAyNThmNmE0NWUxMTNiZjQxZGFkMSB0bGVlLWFzdC1vcHRpbWl6ZQorNjg2MTAgNjZiODFhY2FjYmMwNTI4M2YyZmU2MTIxYzBlZTRmOGUyNjhiNzBiOCBsZWdhY3ktdHJ1bmsKKzY4NjExIDMzNzhlYWZkMjdkZjU5YTU3MGZhYTVlYWYzMmMxNGYyMDFjNjQyZWUgbGVnYWN5LXRydW5rCis2ODYxMiBhZTVlZDE1Nzc0YjRmNTdhZDlhNzJhMmExZjFiYzc0YWM3MzA2MDU4IGxlZ2FjeS10cnVuaworNjg2MTMgZWJmZTkxN2QwZWVhMmQ3NWZiZDZkNDM4NWUzYzEyY2I5MzgwMzU5OSBsZWdhY3ktdHJ1bmsKKzY4NjE0IGQwMDg2YzE3NmU4MjRlMWQzZWIzOThhYmI4NjllZDgwMTIyNGZjNmEgcmVsZWFzZTI2LW1haW50Cis2ODYxNSBiMTdlYzRjNGE3YzM4NTAwYWViZGE5MzA3YmQ2OTZjMGIxZjIzODkzIHB5M2sKKzY4NjE2IGJiODZmMmVkMThhYWIwZTJjMjQwYjMxNWI1NGYzODI4NjZhNDIzMjkgcmVsZWFzZTMwLW1haW50Cis2ODYxOCBiZTU5YTIzYjdjMDQxNWFlYzFkODQwMzRmNmVmZDI0MmIxNTY1MWI4IGxlZ2FjeS10cnVuaworNjg2MTkgZTgzYWI5NWU5Yzg3YmRiOTM4ODI4ZTI1OTlmNzgyM2YxNzg1N2UwZCBweTNrCis2ODYyMCA0MjdlNDNkMGUwMzFjZjVjMGJjYzVlNjQzOWU0NGQwMDU4MzUxZmUyIHJlbGVhc2UzMC1tYWludAorNjg2MjEgNmRkZTBkZjNiYjRlY2I3Y2MyYWM5NWM1MGFkMmVlZWRmMTI2ZTgxZCBsZWdhY3ktdHJ1bmsKKzY4NjIyIDY1YmViZTRhMWFhM2Y5MWY1MTNlYzdjNWZiYjlkNjZmMjQ3MWJkYmQgbGVnYWN5LXRydW5rCis2ODYyMyA4ODRjZDNmMTliMjBlYzZmOTUzZjUyOTM2MjQ0YzE3MTA2ZmZkYTRkIGxlZ2FjeS10cnVuaworNjg2MjQgMjY4MGE0YmVhZWExODY5YTA0Njk3ZWEyMDFiNTBiYzJjMjM3ZjA5MSBsZWdhY3ktdHJ1bmsKKzY4NjI4IGFkYjIzNjllYjdiYmQwNjJmNDE5ZTkzMjFjMDVkYjE3MDRlNTk1YTkgbGVnYWN5LXRydW5rCis2ODYyOSAxMmE1YjY3ZDU2N2QyMjFlOWQ0NTEzODM1ZjlmYTY4ZjdiYmM5MGUxIHB5M2sKKzY4NjMwIGM2OTk1ZGFlOThhNjljODNmM2Y0ODFmNDk2MDZmYmExNzNjZDJhODUgcHkzaworNjg2MzEgYTA0YjFjNzE2N2JhZGRkZmE4MmU5Mjc2ZjIxZWI3MjczM2ZjZjY0NCByZWxlYXNlMzAtbWFpbnQKKzY4NjMzIDhiZTE1OWQ2ZmQ0MDQzY2M2ZjYxY2FkZmM2YTM0ZDFkYjExYmM5ZWIgbGVnYWN5LXRydW5rCis2ODYzOCAyY2M0MmVmZGQzZmVkZTUxY2JkZjcxOTYxNDdiMzI3ZDRiZjc2NTM4IHB5M2sKKzY4NjM5IGMxMGY2ZjExNmFmMGMxYThmZDEzNjY0NmFiMDUwM2IwNThkNTI0YWUgcmVsZWFzZTMwLW1haW50Cis2ODY0MyA3NDlhNmI4NTMzNzZiNjk1ZDY2ZGFmMjUxOWEyMzExNDk1MTdlNmQ2IHB5M2sKKzY4NjQ3IDBiMWE4ZjU2MTE3YWM3OWY4MTE5ZDEyMDgyZWQ0ZmZkMDJlMTAyZjMgcHkzaworNjg2NDggY2IyOTA0ODJhMWE3Zjk4OWQ0ZDllM2QyMmY5ODRkNGVjZGYwN2M2YiBsZWdhY3ktdHJ1bmsKKzY4NjQ5IDFlMmQ3ZjA3NTMyNmE4YWJmMzM3MGRiZWY5NDc2NzY1MDY1NjA3NjIgbGVnYWN5LXRydW5rCis2ODY1MCAxYjgxNzcyY2Q1OWQ3ODk5NzMzMTQyMzBlOGZmZTBkNWNjMTUzMTc5IHB5M2sKKzY4NjUxIGRmM2ZhNDBmZGJlZGEzYTk3OWVmMDAyZWVjYzNjNzE1MGJlYzE5NTkgcHkzaworNjg2NTIgN2JjOGUyZWVkNjkwYmMwNDcxZGExOGUwNmIwNzY5ZTNjMjA0Zjg2OSBweTNrCis2ODY1MyA1N2VkZjgzNWRlYTM2NjEzMzZiNGI0NzlkOTdkNDhmZWYyZGFjYzg2IHB5M2sKKzY4NjYxIGRjMzFiZTUwYzQwNTM0YzQ4YTAyNzdmMzIzZDhjOTcyMmRiOTE3ZDUgbGVnYWN5LXRydW5rCis2ODY2MiAxYWFkN2QyZTg5NDU5NDg1ODM5NWViOTZmOWY3MTI3Y2U1OWVkMWVjIHB5M2sKKzY4NjYzIDQ4NmUyNTc5Yzk3OGI5ZDI4MDk0YjY3Nzk5ZWJmMzNjZjE0OGJiNzYgcmVsZWFzZTI2LW1haW50Cis2ODY2NCA4ZGZlM2M0YWJkNWIxMTY2MGUwNTZmOTBiNjdjMjdmY2JhMjg1ZDczIHJlbGVhc2UzMC1tYWludAorNjg2NjUgMjdiYTgwM2JkZWE5MDU3MWJlZjFiN2IzYTBiOGM0NzJkZjhjZGJjNyBsZWdhY3ktdHJ1bmsKKzY4NjY2IGFmMDJiNmU0MjE0MmIzNDZhMjA2OTYyMTFjOTFiNWU4NjJjZTY4N2UgcmVsZWFzZTMwLW1haW50Cis2ODY2NyBlMTU4YzcwNTExZmVhZGI5ZmU1NTM3YTdmZGY3YTQzM2UyMDk3NWYzIGxlZ2FjeS10cnVuaworNjg2NjkgZTU2YzVmM2I2ZTE4ZmE2OTYxOGIzMTEyMjczYThlYzI0MjNlZDg5ZiBweTNrCis2ODY3MiA0M2UwYjFlZTFjMWI5MjdkZmZkNzAyNzg4NzRmOTEyZmFlZTk3YmNjIHJlbGVhc2UzMC1tYWludAorNjg2NzUgYTYwYjg2YTczZTIwNDI2YmQyODBmZmJkYWU3MmIwOTdhYjU3MDY3ZSBweTNrCis2ODY3NiAzNWJmOGY3YThlZGNjMmQ0OTFjZWVlNThkYjgxYmVkNDgyMGRhZDlkIGxlZ2FjeS10cnVuaworNjg2NzcgZGIyMWQxMjFiYTUzZjVkMzMyYjg2MzVjMzY2MDc3ODBkNmRhNzE2MSBweTNrCis2ODY3OCBiYjljNjUyNGZkY2E0NTkxOTE1YjFkOTdjYTgzZjZjNDU4MTBjMDk2IGxlZ2FjeS10cnVuaworNjg2NzkgNTYyMDUyYTAzNDc2Zjk3N2IyNzYwODU1NDg0OWRkNDJhZTU5M2M2MiBpby1jCis2ODY4MCBhMDI5YzU3OTBlNDFmYzJjN2MwYjExMDQ3MmVhYzU3ZDNhNDY5ZDBkIGlvLWMKKzY4NjgxIGQ3MjIwZmViN2QwYjg4MGI1NDFiNDRlY2Y4YWM2MjQ5ZjU5Y2Q1ZGEgcmVsZWFzZTMwLW1haW50Cis2ODY4MiBmMzk2OWY0ZjQ5ZTM2N2E3NGZiZTJkODZmMTAzZjUyMzE2MDc5YzY1IGlvLWMKKzY4NjgzIGIzYzE5YjY3NmY1ODY4M2JmNDQyMjhkYmFhODBlOTQyOGY1ZWU1OWQgaW8tYworNjg2ODQgNjI2ODI0ODcyMGQ2NjRjYTFkNjQ0Nzg5ZGY2ZmY0ZDQ1ZDE5MTU5ZSBpby1jCis2ODY4NSAzYzU1NTFhOTRjN2M5OTg4YTkyYjUzNGM4NTc2NzViYWQ3M2VlN2ZlIGlvLWMKKzY4Njg2IGQ5NmY1M2Y2NzdkYmVkMGM3ZTBmYTE0ZTlkZDY3NDlmYTVhZDEwMzkgcHkzaworNjg2ODcgOGFiNzBlYzJhZjViYzMwOGFkNzZkY2Y5YjVhZDA0YTNlM2U4MTNhYSBpby1jCis2ODY4OCAwZGRjMjFkZjk3OTliOWM2M2FhZDNkNGM1ZTQ3ZGE1YThkZDNiZjVmIGlvLWMKKzY4Njg5IGFlZDBjNzk4MDllNDlmMGZiYzdlZmQ5Y2YzMWEwZDNlODk1YTgyYjYgaW8tYworNjg2OTAgNzUwMDlkNDg2M2M5ZDM0MzQ1YzcxNzQxOTIxNzY1MWNjZmFhMWEwOCBweTNrCis2ODY5MSAyOWVkZjI2YjljMjNlZmRkZjBkM2YwYTdhZTEwZmI0M2Q3MjllNWFjIHB5M2sKKzY4NjkyIDk5ZjNjMzRkNzMyOGUyYzFhYTJkM2U0ZTJjN2VjOGRiOWRkZWEwMmMgcmVsZWFzZTMwLW1haW50Cis2ODY5MyA4ZWExN2YyN2RhNjdkMjQxYzBkYTRmYjJkYWQ0ZGEwOGE1NzEwM2UxIGlvLWMKKzY4Njk1IDUwNzg3NGY2NTVhY2JhNDI3ZjE0YWM5MWMyMDVhYzA4MWYyYTg1YjAgcHkzaworNjg2OTYgMzNjNGY0MjNhZWJmMjEyNzdjNzM3YTYxMmQyYmUwOGMzNzlmMmIyNyBweTNrCis2ODY5NyBmYTY1MWExYzM0Y2M2OGE4NjE4NmY5MTJiNDgyZDc1M2NjZmJlNTQxIHJlbGVhc2UzMC1tYWludAorNjg2OTggYWFjNTFiNzBjNzRjYjJiMGYwOGQ1NDhmNDExYjEyMzY2ZTc0OGRmNyBweTNrCis2ODY5OSBlMzUwNDMzNWY0ODBhNzFjM2I4YWMzZWM1NTJkNzFhNGUzMGExODY4IHJlbGVhc2UzMC1tYWludAorNjg3MDAgNDI4ODU0NmE0MjM4YzJlNDhkZGJkYjRkZjM1ZWYzMzJiYjZlMTFiZSBweTNrCis2ODcwMSA2ZTk3ZDcxZDYxYzI1Y2IxYjM5OGU1YmJmNTVjZDNiMWE3NDgyNDRkIHB5M2sKKzY4NzAyIDFjZTFiZmJlNzA1MWRlMTdjZGNjNzI2MjAwOTJjNmI1NTZmZWE1NTcgcHkzaworNjg3MDMgOWM3ZjE5OGY5YjI1MjBmOTA1NDRlZmJmZjI0YjY2MzZiN2FjNWRjMyByZWxlYXNlMzAtbWFpbnQKKzY4NzA0IDIwYmQxMTc4ZmM2NDJkNjk1NjBiNDU3YWMwMjk2YjdjZTZiNzFhMWYgaW8tYworNjg3MDUgYjljYjM2NDY1ZGQyYTA3ZDFmMDk3ZDdjMzc3MzRiZjI3YTNiNjE4MSBsZWdhY3ktdHJ1bmsKKzY4NzA2IDEwYzM4YmM2NzM3ZGViNGUyZGI4NDRjOTNmODg5MTY1ZmQwN2Q2ZDMgbGVnYWN5LXRydW5rCis2ODcwNyBlNTU0YjhiYmRlZWFhOTIyZDAwNGQzNDExNWNmM2VkN2JlZjU3YTg4IHB5M2sKKzY4NzA4IGI0YmFhNzI1Mjg0YTZkMjhiOWU0YzAwZTBkMjA3YTViMGY0YmRlZDkgbGVnYWN5LXRydW5rCis2ODcwOSAwOTk2MjcxZTIxZDhjNGM5M2UyMDg0MDM4OWMzOGIxZWVmNzYzYzRkIHB5M2sKKzY4NzEwIDllMmFkNDQwMTk2YmYyNDQwYTA0N2NkM2RlYWY5MWI4YjkyNDQ4Y2YgcmVsZWFzZTMwLW1haW50Cis2ODcxMSBlOTFmNjRmNWQ5NTU4MjFhOGYxOTVmMWE1MGM1NDcwMWVkZTdlY2Q1IHJlbGVhc2UyNi1tYWludAorNjg3MTIgYzg2MzQ3YWM2NjYzNTIyMWJjNTgyNmYxYmNlMjg5NmQ1MjMxNzE5OSBweTNrCis2ODcxNiA0MDhjOGRjZjAyNDhhMTY5MTdlZDg1YmY2NjEwNWM4MjBiN2MxNjAyIHB5M2sKKzY4NzE3IDQ0NDI0OTU3ZWFkZjY3MDUzNzQyYmRjZGY2ODJmN2Q3YTEzZmY1ZDkgcHkzaworNjg3MTggMTg5ZDUwODMwMjk3MDU1MjViYjRmOWI4ZWZlYzIzMDczMDMwOGExZiBsZWdhY3ktdHJ1bmsKKzY4NzE5IDhmMzJiYTUyYjIwZDg5MzU5OGJiZGNiODQwOTBlOGNkMDg3YzgzNmMgcHkzaworNjg3MjAgZDJkYzZkMDQzYzIxZGE5NzA4YTA5NzdlY2IzY2U3MzgwMWU0YmM4ZiBsZWdhY3ktdHJ1bmsKKzY4NzIxIGJiZGEzMWRkOTc5NzViZGQzNWMzMTRjODFjYjQzOGEyMzdjYmZmMDMgbGVnYWN5LXRydW5rCis2ODcyMiA5YmJiOWFjMDYxYzBkNDhmZDQ4OWExM2IzYzc4Y2E2NjY1YTM3MWY1IGxlZ2FjeS10cnVuaworNjg3MjMgODMyNWViMDQxOTIxMGMyYjY3N2UwN2M2ZDk5ZDVmMWRjOWQ3MzMzZSByZWxlYXNlMzAtbWFpbnQKKzY4NzI0IGY2YWVmYmJkNzA0NWU5ZGNiYjg1NDQ2OTJkYmZhMTQ3ODg1MjU1ZWYgbGVnYWN5LXRydW5rCis2ODcyNSAxMWNiZjM5YzMxNmY3Zjc0NWIyNmEwMGI2ZWM5MzAwZjYzZGJhYzVlIGxlZ2FjeS10cnVuaworNjg3MjYgZDcxNTgzODYwNjM0NjcwYjgzYzMzMzM4ZjY1MmUyY2FjYTBjNzBhZCBsZWdhY3ktdHJ1bmsKKzY4NzI3IGU3ZDZlNWY1MTllZjI1ODExYjlhMDg2ZTJjMWE3YzExMTU3ODQ4Y2UgbGVnYWN5LXRydW5rCis2ODcyOCA4ZGM0NzliNjNlMDM2NzNiMjg0MjY1ZDA2YzI3NzMzMzQ1YTcxNTlhIHB5M2sKKzY4NzI5IGE4MTk5MjdjMmExMzk4YzhkZjEwMDM3ZjkzNWRlNjk3ZDYxYTk1MjkgcHkzaworNjg3MzAgZjNiYTVmOTlkYTUwZDBiMzYzZDc5YTBiN2ZlMjUxYWY5ODRmNzBkNSBweTNrCis2ODczMSBiOTJlNjk1ZDU2MWU1YTgxMDc4MzhhMWZjY2YyMmI5ODEzOTEwMjczIHJlbGVhc2UzMC1tYWludAorNjg3MzIgNzU4Nzc5OWNhZTFjYjBkMzE4NTEwYTk4OGU5Mzk5ZTcxYTliNzYzYiBweTNrCis2ODczMyA3ZTVjZmJhNTRlMzQ4MDFjZmZmMWZjZDY2N2JlY2RmNjJjODA0ZDAyIHJlbGVhc2UzMC1tYWludAorNjg3MzQgNmE3NmFiZDYxNmRlZGIxNjQxOTkwMGU5NmNjNTFjZTk2OTQzNDU2NyByZWxlYXNlMjYtbWFpbnQKKzY4NzM1IGFlM2ExMDYzMDZhODA4YjM4NGViYzYyNjIzOTgyMjBjOTcwZjYxM2MgcmVsZWFzZTMwLW1haW50Cis2ODczNiA1MGY1YzI5ZmNlMjZkMzFjYjg0ZDZiNDdhYWE2YTRmNWNmNGExN2IzIHB5M2sKKzY4NzM3IGMxYzQ0YTBhYjQzOGU2YWIyNzg3Nzk0ZTc4YmE0ZjFlOTk4Yzk3OWEgbGVnYWN5LXRydW5rCis2ODczOCBjNTEzYzY5MTE4ZGNhNjE0NDIxZjE5M2JjY2ExMWE3OWE4MDhmODA5IHJlbGVhc2UzMC1tYWludAorNjg3MzkgNWI0OGQ2MDAwOTE2NzYyNjgxNmU5NTk0ZDRjNTYzMTVkYjUxN2ZjZCBsZWdhY3ktdHJ1bmsKKzY4NzQwIDllY2JkOWExMDFkODM3ZDE1NzMxNDI2ZmM4YjExZDg4OTdkYjljMDggcHkzaworNjg3NDEgNDlkOTcwOGQ3ZWEzOWFlYTE2Njc3MGU2ZGMzM2RhMWUzYWViYTg0MyBpby1jCis2ODc0MiBjOWU1YzJjYTYyYzNlMmMzZTljZjg0MTA1NGE0MDQzNDgyNDc3Y2I5IGlvLWMKKzY4NzQzIDlmNjI3NGZkN2E5ZGY3YzM3YTgyMGJiZjI2YjRlMjUwYWVkMTUyYjMgaW8tYworNjg3NDQgZTE0ZWM2ZDE4YWI4MWY1MjNlYWYzZDM1YWZmOThlNjI4YzAzMmFiYyBweTNrCis2ODc0NSAxZWMzNWJlZWQyZDAxNGRjZjYxMWFjYzAwNjJjNzQ4NWU1ODdhMTRjIGlvLWMKKzY4NzQ2IDlmNDVmYTI3YjgzOGFlMGI2OWY3MDI1ODI0MjUyNWFhNzQ5NGQ5MmYgcHkzaworNjg3NDcgYmFkMzZmNDkyMDgxZTdkZDFiMzkzZGRlYmJlM2M2YWRiMDczZmNkYiBpby1jCis2ODc0OCA1ODFkODYwMmYzZjc0MmY0MDMxMjgzNjA1ODcwYWU4MjJiZTk3M2EyIHJlbGVhc2UzMC1tYWludAorNjg3NDkgMWIyMjllN2Q4MThiZDUyNzQ3OTQwMTU3Y2YwNzFjMzZkZThiOTg3MSBweTNrCis2ODc1MCAwNzg4ZDQ1YmY3YTQ3ZTk0NzBkMjdiYTFjNTAzZWJjOWViYjc2MGQ1IGxlZ2FjeS10cnVuaworNjg3NTEgZmI3ZjIzMWNjZDNlYzc3NzFjZWYxMWVkZGRjZGQzZDRmMmE0YzQ5YSBweTNrCis2ODc1MiA1OWRlMDY1NDcyMzJhNDkyOGMzYmRiZjU2ODE1NzBkMGIxNzFlMDc3IGlvLWMKKzY4NzUzIDU5ZWYzMTViZjAwZWZjZmE1MjRkNDI1ZTA4YjAwZjNkNzA0OGFmNDEgaW8tYworNjg3NTQgNjU4MThjZmQ0ODI2NWZkMjIxM2QxMWVjOTc3Mzc3NDJiZWQ0MWRjZSBpby1jCis2ODc1NSBhOTkxYmU2YTExMWQ4Njg0ZmZlY2Q5YmM0ZjUyNjdiMDg4YzFmZDM3IGxlZ2FjeS10cnVuaworNjg3NTYgMWMxNmVkYTMxMDllNTQ1NGY0M2MwNDRiNGUzOTUzZjE4M2I1M2MwZiBpby1jCis2ODc1NyAxZmFlZDdjZWQyNDI0NThlN2Y2ZDVhYWI3N2I3YzFkOWJlMzk2NzNjIGlvLWMKKzY4NzU4IDY1ZWY0NjI5MjFmNzM5MjZkYjczOWZmY2ZlMWVkNTBlNDM3OWY1NWIgaW8tYworNjg3NTkgZTEwOGM5ODA2Y2MzZjIxMDJlZjM4OGE1ZjRlNmJmNThmMzhiY2E4OSByZWxlYXNlMzAtbWFpbnQKKzY4NzYwIGE2NjExNjE1Yzc2YmFmZjVjOTEwYWJiMGViYzdhZDM2MTlkNTgyMmIgbGVnYWN5LXRydW5rCis2ODc2MSA2MTE0NjFhOGM3ODUxYmQwNTUwYjI4OGNlOWFiMDgzNWY3NDgzOTVkIHB5M2sKKzY4NzYyIDFjMTdkNWNiMTVkZDU5OGFjNmNhNDlhOWM0ZDNmY2FhZjMxZTAxYWEgcHkzaworNjg3NjMgMzkxODdiM2UxMmUwNTEyOWIzNzhmNTEyYjQyMjQwZTg1NDQyYjQxZCBsZWdhY3ktdHJ1bmsKKzY4NzY0IDA2MWM1MTI5NWQzMjZkZGE0NWVkOTA3YjI0Y2FkZTA2Y2U1Y2IwNDMgbGVnYWN5LXRydW5rCis2ODc2NSAxODQ0MWI4ZjcwMDBjMDUxZDkzYzAzOWYyNGM3NWRhNzIxMTA3MTcxIHJlbGVhc2UyNi1tYWludAorNjg3NjYgZTdjMTAwYWY4MWVjMjhiZWZhNTMyNDQ3ODBiYWNkZGI3N2U3NjE3NSBsZWdhY3ktdHJ1bmsKKzY4NzY3IDM1MmYyOWRiNWViZjYwYjg3ODA2OGQ2ZDg5MWJmY2MyM2I4YjFhZDYgcHkzaworNjg3NjggOTVlOGQ4NTU5NGJjOTJkMGY0ODZjYWQ2MDJkMDQxMmM3YjE0NTQ3ZSBsZWdhY3ktdHJ1bmsKKzY4NzY5IGZhZTk2YmM5MTk2ODQ3OTVlOWExMGMxZWNiMDVhNzk1M2Q4NzExMjAgcHkzaworNjg3NzAgYmEzNGRlYTVkMThjM2YzYTBjZTYyOWM3ZmRiYmRlZDFkNWI1ODhkMCBweTNrCis2ODc3MSA0ODhlOGU2ZjFjZGM2MzNkMjExYmFmMGNiYjM5MWY2NzA3MDg1NTY1IHJlbGVhc2UzMC1tYWludAorNjg3NzIgNmVkZDI5YTM0MzU0OGYyMmQxNmY5MjhiZDdkMDY5NWEyMzM4ZGFmZCBsZWdhY3ktdHJ1bmsKKzY4NzczIDdjZmI1OWUzOTc4MjYwOTA0MmE1Mjg1Nzc0N2I3YzY4OTEwZTA0MmMgbGVnYWN5LXRydW5rCis2ODc3NCBhZWIyYmRlMjAzYWFjZDlmMDM5ZWNiNzNmMzM4NGFmYTJmMWY3NjM3IHJlbGVhc2UyNi1tYWludAorNjg3NzYgYWFmOTZlZmM2MWU1NDJkYjMyNmEyZjY2YmQ2YmRjODIwZmNkYjliZCBsZWdhY3ktdHJ1bmsKKzY4Nzc3IDAxNWVhN2IyMTk1MGEzODNjOWEzNjA3YTE4ZTE1MTM0NzE1MDZmZGMgbGVnYWN5LXRydW5rCis2ODc3OCBhMmY1ODIwNGU2ODBiODdhZTM0ZjkyOGIxYTQwZTMwMzAyMDQ5YTVjIHB5M2sKKzY4Nzc5IGZhMTJjOGU1YWU4YWNiYTg2NmVlNzY1OGQxMmJmN2U2NWYwOTQ4ZjQgbGVnYWN5LXRydW5rCis2ODc4MCA3NWJjZWMwMTFlZWY2ZDJkYTVhNjZiNjk1NDI0YmIzYjI3YzQxOWMyIHB5M2sKKzY4NzgxIDYxMWQ5NTcwYjRjYWIyNGY2ZTFkOTk1YjJlNjAwNTMyMmNiMGEzYjIgcmVsZWFzZTMwLW1haW50Cis2ODc4MiAxOWZhNmY5YWI1YjUwMDczYWIzMmRmNmYzNTJiNmFkNjEyYWE2ZDE1IHB5M2sKKzY4NzgzIGNhYTc5ZDIzODkxNzJhZWFmNDg5MDM0YmYwNzY0ODEyYTBkNDBjMTUgcmVsZWFzZTI2LW1haW50Cis2ODc4NCBhZjM2YmExMjNjMWQyYWNmYTI0NzQ4YjUxOTk0NjdiYmMwNmU0ZDhhIHJlbGVhc2UzMC1tYWludAorNjg3ODUgYzNhMGVlNTFkODY3ODEzMGM1MDkwNjRjZGZlZTdjMzAxMGM4M2YxMCBsZWdhY3ktdHJ1bmsKKzY4Nzg2IDJmNTRlZWZkMDA3M2ExN2EzNmQ5YzQ3ODE3MTMzNDBmNThkZDc5NDEgcHkzaworNjg3ODcgNjA2N2ExZTYyODlhMTM1N2M3Zjk5MTNiZGViY2ExZTNmOGVkY2ZkZSBsZWdhY3ktdHJ1bmsKKzY4Nzg4IDUzN2U4ZDcyODQyNDY5NDljNTlkOGEwMTc0OGU3NjU1OTA4MGZjMDMgcHkzaworNjg3ODkgMTkxYjdiM2RkZjRmYTRjZGJhNWEzMzFiN2NkM2E1MWE2MDA4ZGNjMCBsZWdhY3ktdHJ1bmsKKzY4NzkwIDM4MDIxYjhlMTRhYWIxMjc2ZjA3MmMxMGVkOWMyMjcwN2FjOTFiODkgcHkzaworNjg3OTEgYTYzZjdjZjM3OTNhYmZlMGFjNjdhMzMwYjc1ZjYwYjM4OTcwN2NkNyBweTNrCis2ODc5MiAzOTA2NjhlMjA2MjhlNDBjODMyZDRjMjVmYWZiMzYwNmE0NTkyYWE2IGxlZ2FjeS10cnVuaworNjg3OTMgOGQ2NmI4MmExMGEzMDg4YzYwYWRmODQ2NDA5ZmE3YWY2MzU2NWVlZSBsZWdhY3ktdHJ1bmsKKzY4Nzk0IDZhNmI1OTA5MTJmZTZmMzIyNzY3MzlhMTU4MjRjMTcwY2IyMDViYzYgcHkzaworNjg3OTUgNWRkODc5ODY3Y2RlMjAyNjBmMzkwYmJlOTgzMmUzMWRjNjIzOGJmZiBweTNrCis2ODc5NiA1YzNiZjMxZDA0ZmQ2YThkNzE5NjkzZjFmODJmZjc1YjI2NWJhNmJjIHJlbGVhc2UzMC1tYWludAorNjg3OTcgZmUyODcxYWFiOWQ5ODg0OGQzZTIwNjk5OTRkMzFhYjBhODIxZDJhNiBsZWdhY3ktdHJ1bmsKKzY4Nzk4IDIzNDRjZWY3ZmY0NDQ3NDU0ZDk2MWE4NTQ4YmMxN2I2ODVkY2FlMDIgcHkzaworNjg3OTkgNWEwNDFkOWE1MWNkNjZmYmVjNTIzNDUzNWJjOTQ1MWRkMWFhZDgyOCBweTNrCis2ODgwMCBjYzlkZTE5N2RmN2UxMTkxZDE2ZjYxZDM5YTk4ODA5MTY2NGM1YjIyIHJlbGVhc2UzMC1tYWludAorNjg4MDEgY2MwNzhhNTc1ZWVkMzA3Y2Q4OTAzM2M3MzExOWI2ZDczMmJjMWQzYyBsZWdhY3ktdHJ1bmsKKzY4ODAyIDFhNjRkMmY1NmI3OThmZjYwMzk2YTYxMjNkYWEyODAyODUyMjkzNTAgcHkzaworNjg4MDMgYTgzMjY3YWQyZmQyNzIwNTRjMWFmZDRmOWYwYzJjZmRiY2UxMGFjMyBsZWdhY3ktdHJ1bmsKKzY4ODA0IGZiNzFjMTU2MjBlZTZmOTk5ZDk1YjMyYzA4ZDY4MzQ5ODY1NjgwOTMgcHkzaworNjg4MDUgZGJjMTRhY2RkZTM3ZjE4ODk3YWIxMzJiODcxYzljNjRlODRjMGU0ZiBsZWdhY3ktdHJ1bmsKKzY4ODA2IDFmMTQ4NDI0ODhmMDhmYWI4ZmNiODQ1YTI0ZGQ3YTFmMTY3N2M0OWQgcHkzaworNjg4MDcgNjFmMWNiMTZlN2I0MmU3OTZlZmEzMGNjMzA5NjY3YzI0YmM1NmNkOCBsZWdhY3ktdHJ1bmsKKzY4ODA4IDM2ZTI2NmIyZTQ2MDk4ZWJjMzFkMGM4NDkyOGI2MDYxMWQ2MGZmZDggcHkzaworNjg4MDkgYzdiYjMzMjA3NDk1YThjYjFjNzJiZmM3YmJhYjEwMDQwNWEzY2NkNiBweTNrCis2ODgxMCBkZDU2MjQ0MzliZTUwOGZkNDQyZWE0NDU2NGU3NmU4YzBjMTRjZjZlIHB5M2sKKzY4ODExIDczMzM4OGFjZjBiNjVjYjc5YmZjYTY0MmM5M2FjMjZiNzJkYzdjYjIgbGVnYWN5LXRydW5rCis2ODgxMiBmMTM1Mjc0ODRiYTNhYjQ0ZjZhMWMzNDUyMGUyNmYxZGMxZTM4M2MzIGlvLWMKKzY4ODEzIDQyNGE1MDliZWJmZWEyMDMwZjhlNTZiMGMzOTJkNjA4OTJhMzVkMTIgbGVnYWN5LXRydW5rCis2ODgxNCBkMWRlMDc3NDQ3YWE0ZjM0YTMxY2RjZjAwMTkzNDE3NjkyOTNiYTJmIHB5M2sKKzY4ODE1IDMyYTIyZmExM2I5OWM3OTYwMzBlNTgyMTBlZmExNDNkNDQzMDY5ZWQgcHkzaworNjg4MTYgYjIwZTIxOGQ2ZjAwZjc4OGJjYTRkNWE4NTRiNmY0MzlkZjY1MDYwMiBpby1jCis2ODgxNyA1YTg4MGJkYTZhNmI3ODVmNDU1MjRkYTdiMDY3ZjM0MWE1ZjgyZDFjIGlvLWMKKzY4ODE4IGE1N2QxMGQ2YmM4OTMxZjAwMDIwNjE3NmQ1MDVhYTBmMmNhMTllYTUgcmVsZWFzZTMwLW1haW50Cis2ODgxOSBhYjBiMzg1YWVmYzNlOWI2MDQxMjJjM2M1ZDk4MTg2ODNjMWJiZjA1IHB5M2sKKzY4ODIwIDlmMjk0ZWIzODE5MGU2NDM0ZDU1MzU1MTI5NDRlYzRhZDJkNjUwMzYgaW8tYworNjg4MjEgYzc3NTIwN2NlZGFkNzk0MDU2MDk1NjQ5YTZmMGI3MjAwNGMxYzRlNiBpby1jCis2ODgyMiA1MzkwMWU2NjkxYzM4MjQ4ZjExZDRjYjVjZTk5MmE1ZGQ0ZTMyZWFkIGlvLWMKKzY4ODIzIDBlNzlkNWEzNzIzMzgyMDM2M2Y2YWI5MzNmNzc0MWM3ZThjNGUxNTMgaW8tYworNjg4MjQgYzk0Zjk4YzU3NTNmOTcwYjVmMTEyNmU4NjNjODhiMjQwMzY0ZTFjYyBpby1jCis2ODgyNSA3ZWQ5YmVlZDg3MTU1MzMxOTI1Y2EwOWFmNzZmMzM1YWMwOTJlYzM3IGlvLWMKKzY4ODI2IDc2NmRlNDk2YTQyZDdmMGQxYTc0MmE4Yjg4NDYwOWY3ZTRhMTRkNGQgbGVnYWN5LXRydW5rCis2ODgyNyA3YzMwYWIwMTM0YTFmZTYzNDZmYWJmYTFjNzBmN2NkMzc4M2YxYmFkIHJlbGVhc2UyNi1tYWludAorNjg4MjggMmIzZWNkZTE3NmZlNTAxNzkzYzU1MDUwMjgwNWFkNzQzNjk1OGVlYSBpby1jCis2ODgyOSAyNTJmODI0YmI4MGIzYWMyMTcwOWZjOWQ3NWU5NTlmZGIwY2Q2NTExIGxlZ2FjeS10cnVuaworNjg4MzAgY2M1YjQ2MGZmMWFiMTI0ZjIyYzNlMmQ4YWU2OGIzMTUxNDJlNDlmMiByZWxlYXNlMjYtbWFpbnQKKzY4ODMxIDEyZTljNWY3MjY1OTA0OWViZjAzMjYwMmUzMDQ4Yzk5YTIyYjFkMTUgbGVnYWN5LXRydW5rCis2ODgzMiAzNWZiNGEyNjBhMjUzZDhmNzUwOGZhNjA2YjMzODJiN2QzOTNiNTI1IHB5M2sKKzY4ODMzIDY2OTI4ZGFkODFjYTE0OWI1MTBmMTNmNGNjYzU4NjBiMmYwMWQ1ZWYgcHkzaworNjg4MzQgNzEwNmZmNTZlOWQ4YmRmNjk2ZDZhMThkZDg4OGNmODE3MzhjMTM2ZCByZWxlYXNlMzAtbWFpbnQKKzY4ODM1IGI4OGNjN2UyYmZiNGMzMTNkNTBiYmFiZTI5NDBhMDhiNzRlNjA4N2QgbGVnYWN5LXRydW5rCis2ODgzNiAwYWQ4YzU2YTdhNzBkMGNiMDkxNDA1ZmJkMmYzNTg2YWE0YTdhYjI0IHB5M2sKKzY4ODM3IDc2MmY5ZjE4OWUyZTg2Mjc4ODQ1YjUxMmYyYTNlYTJkNGMxODIwNWMgcmVsZWFzZTI2LW1haW50Cis2ODgzOCBmMGM5NTUzNzhjYTNjNTFlZmZjYWFlNTMxMDc3NTUyOTgzZDM3MjIzIHJlbGVhc2UzMC1tYWludAorNjg4MzkgZDI3NDA2MjgxNmZmNjU4YzhkMmEzNDc2MzBkZjJjNGU3M2VmNGYxOCBsZWdhY3ktdHJ1bmsKKzY4ODQwIDBlYzM1NDcwM2QwMWNhYTRiZmQ4MTJmY2Y0NDgzMTQ0NGFmMWRhYzcgbGVnYWN5LXRydW5rCis2ODg0MSBhOTlkZWNlZGY3MmQyMjBhNTYwZjJkODI3NDFiZTA1NWNhYWFlNDdhIHB5M2sKKzY4ODQyIDg3NjNjZjJmN2UwYzU1ZmZkODAxNTMyMmY4YzIyMjE1MzI2NTQ2YzAgbGVnYWN5LXRydW5rCis2ODg0MyA4YmYyMDRhZjk2OTEwZTY0Yjg3ZTllMThjZmU2NTZiZDgxMTFmZTlkIGxlZ2FjeS10cnVuaworNjg4NDQgNzMwMGQ2ZmJkOTE0ZGJkNzRkYWRkNTgwZTY2ZjMwMTY0MTczZGM0MyBweTNrCis2ODg0NSBjYmU1NDY1MWUzYjk4NTM3ODRlOWVhMzRmNGNkNDY0MDJmZTBlNThlIGxlZ2FjeS10cnVuaworNjg4NDYgM2Y2MWY4MGU5MTMwZDE3NTM4YTZmMmE3Y2EyMzBiNjY4YWNjNDgxZCBweTNrCis2ODg0NyA0MDkyYTQwMmVkM2U3NTVhMjA0OTk3MmNiNDcyZTRmODk4YzZjMThlIHB5M2sKKzY4ODQ4IGVjNzBiMzkzZTE3M2Y4NGRkMGU5ZTE0ODY3YmViN2Q3OWI2MzIzZTQgcHkzaworNjg4NTAgM2M1YThhMzQ3OTkwN2YwZDM4MzAwNDdhOGZmZmUyM2EwNTk4ZWExZiBsZWdhY3ktdHJ1bmsKKzY4ODUxIDA1M2YzZTgyNjYwMTZlYzlhMGY0MmY3MzJlYTJkMmJiOTk2NzVjNzcgcHkzaworNjg4NTMgM2YxM2M2NWFlYzA1NmIzZmU1NDY2MTA0MGQ0NDM2NDEzNTBkZWM3YiBsZWdhY3ktdHJ1bmsKKzY4ODU0IGY1ZDdkMDYwOTExYWUxOTM4MzM0MmM2NThiZTc1MDQ5NTJkN2UyOGUgcHkzaworNjg4NTUgYjQwZTRiNTI5ZjY5YmFkODk5ZGZiZjQ5MDEwYTdiYjU5NTI4MjI5ZSBweTNrCis2ODg1NiBlYzZmMjk2MDhiZjA5ZmQ0NDlkZTZlYmUxNDQ3MzM4YjFkMDFhODVmIHJlbGVhc2UzMC1tYWludAorNjg4NTcgOGFlZDc4OGJmY2M4M2M3NTFkYmFmY2Q2NDI3MTBlOGFiMzZmM2JhYyBweTNrCis2ODg1OCAxZjBhM2FjOGJmODVkZTQ0MDRmZjRkYmI4MDc4MjE4MDhjYzYzZjcxIHJlbGVhc2UzMC1tYWludAorNjg4NTkgZGUyZGMwOWUxZjdlNjYxMWRmNDJhODYzZmU1ODQ5YzM0MmFkY2E2YyBsZWdhY3ktdHJ1bmsKKzY4ODYwIDI3MzVmYWM2YjBkNGQzZmYyZTAwZjJlMmZjZTIxN2EyZjE5YWZkYmQgcHkzaworNjg4NjEgZTRjODZkYzE4MWU5YTIwNDRlMDQ1MGY2MjQwNzNlODM2OTM4ZTk0MyBweTNrCis2ODg2MiBiMGI2MjFmMmFmNWRkZmM1MmZhZDM5ZWIwMGI4YjQyMDk3Y2VhN2I5IGxlZ2FjeS10cnVuaworNjg4NjMgNzJiY2YwYTBjYjMxZDQxYTM3YjNhOTc0ZTQwZWUzZjhkNTA0ZGQ4OSBweTNrCis2ODg2NCAwOTQwYTRmMjUwNmU3NzgyNDYwNjBjYjgzZGZiYzk0MDQ3YWQ0OWY5IHB5M2sKKzY4ODY1IGRkNjM4YjdlNzQ3ZTNmYTU1ZTZhNWE2YmVhNWE3YWU4OGU0YWU3MTYgcHkzaworNjg4NjYgMDljMTcxMjdhNGM5OTIwMWZjNTdiYmZkZWNmYmE0ODM2Yzc4ZjE1OSBweTNrCis2ODg2NyBjOTU0NDUwZjdhYmZjYzI1MWNkOTAyYjJhNGY0NDQzYzIzOWFmOGMwIHB5M2sKKzY4ODY4IDA0Yzk1ZmMzNzY1ZmVkN2M1OGE4ZjQzMjk3NTU1OTY3M2NjYjE3YzYgcHkzaworNjg4NjkgYWNlNzViMDZhNmY3NGRjNTk2Y2E4ZjRhZTQ2M2EyZGU5MzlmYzBmYyBweTNrCis2ODg3MCBhZWFhMjM3ZWJhZDdmNzk1YjcyY2IwYzg4OWZmOWY3ZTkyZmE1MGE5IHB5M2sKKzY4ODcyIDNiZjc3ZWExZGIzZTIzZGViOTQzMDMwNzE0YzY5NGVjNTkxZjU2ZGMgcHkzaworNjg4NzMgYTgyM2M5ZjNhNDUyYmMyMTkxODRmZDZiOWI1MGFiM2Y0ZTUyYmY4ZCBweTNrCis2ODg3NCBiMGQ1OTNkNDEyMTIwYzdhZjE1ODk1NWJmZTIwZGJiNzJmMDBlNmM1IGxlZ2FjeS10cnVuaworNjg4NzUgODU3ZDY2MzQxZmY5NDA4MjkzOGYxZDk4YmYyZDgzZmQzMmMxZjMwNyBweTNrCis2ODg3NiAwOGU5YmVkNmExZjg1ZjllNTY0NjVkZDg2NmEzYjE2MmYyMzcwOTZiIGlvLWMKKzY4ODc3IDFhZjRmYTE4YmNjMjA2NWFlNDFjOGYzZDcwNWM3MjE1ODZkYzcxY2EgaW8tYworNjg4NzggNTJmZjA1NzlhNDFmMTlhZjQ4YWE0NDJiMzdmZjQwYjk3ZmY2NjNhZiBweTNrCis2ODg4MSBhNGYyNWMzODBmOTZiN2YzZmYyMDY5NTI4ZGQ4ZTg0ZmUyY2MxOGQ2IGxlZ2FjeS10cnVuaworNjg4ODIgNWM3MzEyY2U1ZGJkMDYyZTg4MjA2MjUyNTEyNGFhMDM5ODI3MjE0NCBweTNrCis2ODg4MyAwNDhlYjVhODM0M2JlMDljYTc0M2FiZmM0ZmMyNTdiYzk3ZDU0OTJmIHB5M2sKKzY4ODg0IGJkNzRlODY2ZjljYWY4MTdjN2VkYTA5OTlhYTZjNDExNGMyMGMzYzggbGVnYWN5LXRydW5rCis2ODg4NSBmYzM4ZjJlY2QyYWMyNzczZGY4ZjY2ZWEwNzMwMzQzMWY0Nzg1N2E3IGxlZ2FjeS10cnVuaworNjg4ODYgNmY3NjFlNTcxNGUwOTE5ZDRhMjc2N2FkOTA2YzU5MTQyYjQxNmVhNiByZWxlYXNlMjYtbWFpbnQKKzY4ODg3IGNlZjBmY2M5MTU1OWViYjVkMTYwZWM5MTkxZGNiOWU5MDI2YzFiNWQgcHkzaworNjg4ODggYzliOWE1MDQxZWY1MjFmNTZiMWRkNGQ3YzM4OTczYTQ2ZmU2NGUxYiByZWxlYXNlMzAtbWFpbnQKKzY4ODg5IDU0MDYxMWFlNjFiODZmYWRhYTMzOTQ0YmZhODJkNzcxMzMwYzhmZWIgcHkzaworNjg4OTAgNGVhYzk5NDE1MzhjNWJkZWM4ZDI5ODg1NjgyMGRmMTRiZTIzZmMyYSBsZWdhY3ktdHJ1bmsKKzY4ODkxIGRiMGZmZWVlNmU1MDcwMzY5ODVjNjJiZmQwODkyM2YyOGNhOTI0OWQgcmVsZWFzZTI2LW1haW50Cis2ODg5MiAyNTAzNGM4MzI4YzdjZjdhZDUxYTRlODEyNTExNjIwYWNiYTQxN2VmIGxlZ2FjeS10cnVuaworNjg4OTMgZjFhZjQwODA0YWRlOTNiOWIzYjVhMmQxNWMwMGIzNzEwZDAyODgzZiBsZWdhY3ktdHJ1bmsKKzY4ODk0IDUxMzJhMTNmMTY5YTM0MTRiZWY3NWNmNDUwYWVhMzNiMjkyNzJiMjQgcmVsZWFzZTI2LW1haW50Cis2ODg5NSAyN2QyZmExOTA4NGE1ODJlNDY4NjNlNjdmMGUyNzFkY2EyYzNlNTJhIHB5M2sKKzY4ODk2IDdlZTZmYTA2MDJiZTkyNzEyYjA0ZGUyZGYzZjJhYzMyZGRjM2VkN2QgcmVsZWFzZTMwLW1haW50Cis2ODg5NyBhMWE1Mjg3M2Y5ZmNmMDY1Y2I4MzhiNGVjMThmMjJkNTZmOTE1Y2QzIGxlZ2FjeS10cnVuaworNjg4OTggZmViNGEwOTJiODcxYzY3ZWNkZjRjM2ZkMDY4ODIwZDU5OWYxYzZhMyBweTNrCis2ODg5OSBhNmE2MzY5Y2ZiY2NkYWRmOGE2ZTU5NGY1ZTNkNWFhODc0ZmZkNzZkIHJlbGVhc2UyNi1tYWludAorNjg5MDAgOTlmMGIwMjY1NTE2YjI0Mzk2ZDMzNjQ2ZmQ5NWEyMTFiM2Y0MDM2ZCBweTNrCis2ODkwMSA1OWQ1ZTcwZjM0OTQyMzBkYmQwMTcxYzc1YTM2MDgzOWU2OTc3OTUzIHJlbGVhc2UzMC1tYWludAorNjg5MDIgNTc4ZGQ3OGZiNTU3MzUyZGE4OTg0MjgyNGNmOWFhMTZmMzI0NWFhNCByZWxlYXNlMzAtbWFpbnQKKzY4OTAzIDZkNTUxNzk3NWZkMjQ1NzM0YWU1ZjJmZjk5NWUzOTczOWVhMzk5OGEgbGVnYWN5LXRydW5rCis2ODkwNCA4NDNjMTc4NjhiNTJiNGY0OGVhZmU0ODU2YjhhM2E3ZTA0MjVmYWU3IHJlbGVhc2UzMC1tYWludAorNjg5MDYgODYzY2U2YzAzNjE3OWY0Yzc0ZmE5ZjcwYmNiOGU3MTg1NjViOTBhMiBsZWdhY3ktdHJ1bmsKKzY4OTA3IDAxMzk2NDg1MjZkOWE4ZmNmN2MxMzgzMDhjN2IwZTI0MzAwYmVmNDUgcmVsZWFzZTI2LW1haW50Cis2ODkwOCA5YTQ1ZTJjYWQ2YTFmM2YxYjRmZTMyMGJkNTg5ZGJiM2E4ZjJlMzc3IHB5M2sKKzY4OTA5IGY3ZjNkODQxZGEyYzZjMWZhNmUwMDE3ZDU5MjU3MjA2Y2JmNTA5NjQgcmVsZWFzZTMwLW1haW50Cis2ODkxNSBmNWJlNmNhZWFkMDNkODkwY2I1MWJkZGY5ZDIyYWFjMjQzZTZkZTBkIGxlZ2FjeS10cnVuaworNjg5MTYgNGU4ZjI4YjNlYTBhOGVmYTAzNTczMDczZTA3NGRjNTg1YTUzODEwNiBweTNrCis2ODkxOCBlYTU3NjdlYmQ5MDMyYWQ4YThiYjQ4YWU5MTU4ZDk4MDA1N2VlYjA2IHB5M2sKKzY4OTE5IGMyNmYxYWYyNmJmYzIyYWY5YTA5NTMzYjllOTFjYjkzM2VmZGY3MWYgcHkzaworNjg5MjAgYzRjNGU0YjFkYzFhZTYzMWVmOTg1OTFhOGYyMTUyYzA1NTBiNWNmMCBsZWdhY3ktdHJ1bmsKKzY4OTIxIDk5YzEwZDY0N2YzMjZmNjM2MThiMmQ4YzkxZTE5Y2ZiYTdjOTExNjAgcmVsZWFzZTI2LW1haW50Cis2ODkyMiBmZDhhZjQ2ZDM2MTU0M2M3NGY1Njc1OGVmNmQwMTJkZWEzMmM2NDUzIHB5M2sKKzY4OTIzIDJjN2QzNTY5ODgyZGUzNWNlZWEzNWRhYTk2ZWIwODRhOWEzMjVhMTIgcmVsZWFzZTMwLW1haW50Cis2ODkyNCBkODZlMjMzMThiNDE1ZGZhZGQzYjIxM2NjODk2OTUyODc3ODlhZWU4IHB5M2sKKzY4OTI1IDU1MTI1N2M4MDU4YWYwM2E3NDZiMGMwNTFmNzQ5YjMxODM1NTM2YjMgbGVnYWN5LXRydW5rCis2ODkyNiBlM2NlZWI3ZWI5MDEwZWU3ZmRkZTRhMTM1OTRhYmU5ZDJlZTg5MDAxIHB5M2sKKzY4OTI3IDIxY2Y5NmNjMjIxNjNhOTU2OTM4YzYxMDZjYjg1ZWJiZDQzNjNhNjMgbGVnYWN5LXRydW5rCis2ODkyOCAyODE5YTQ3MDZjODExMmY0YmE2YzYyYTdlMzczMTMxZmE5MmRhYThiIHB5M2sKKzY4OTI5IDdkNWZhNTIzNDFlMjMyMzAwY2I3YjkzMDg1N2IwOTk3MmUyNWY5MGEgbGVnYWN5LXRydW5rCis2ODkzMCA3NWQwZjYxOGUxZGVjNWFmOGRkODgyZDk3ZmFiNzc5M2EyYWE4NDhjIHJlbGVhc2UyNi1tYWludAorNjg5MzEgNTBmNDBmMmMzN2RkYTU3ZjRjMzg0YTFiOGJkZTA5NmE5YWJlMDhkNSBweTNrCis2ODkzMiBjYzgxMzBhZmIwMzkxMjJiOTQxMzUxMTM0ZDQ0Yzg3ZDYxYTMyNWYzIHJlbGVhc2UzMC1tYWludAorNjg5MzMgN2E1NzU5ZTg1NjM5NGZkNDczYmRmOWM1YTg0MGY1YzczMTgyMjgzOCBsZWdhY3ktdHJ1bmsKKzY4OTM0IDQ3MWJlMmM2NDU3ZWVhMzUyNTI4MDhiOTEyODU2MWExZDJkYzQ2MTkgcmVsZWFzZTI2LW1haW50Cis2ODkzNSAwMTEzMjE5NWY1NjI1MTU4ZTc4ZjI2YTFjNzdhZmI5MWRiMWIzOGJmIHB5M2sKKzY4OTM2IDMzNjlhNWFjYWY3OTgzNjVhZjRjNzgxMTg1NzYxYTQ1NTE5NWVmYTIgcmVsZWFzZTMwLW1haW50Cis2ODkzNyBjOWZlYTM1Yjg3M2VhMWE3ODM2MjNjMWVjNjM5Y2E4YTFkYjYwMzBlIHB5M2sKKzY4OTM4IDEwZjRhMTYwNDM4ODkxY2ZkMGU1M2ZkNWNhZTM2NTk3NzcxODI5Y2UgcHkzay1pc3N1ZTE3MTcKKzY4OTQwIGUwZDljNjU5ZjdhNmMwZTI3ODkxMzY0YjlkMGYzNzE0ZTkzZDJiNTUgcHkzay1pc3N1ZTE3MTcKKzY4OTQxIDE0YWNlMjA1NDQ3YmJlMjM4ZWFkNjQ1OGEzMzAxOGFmZWY4NGVjYjIgbGVnYWN5LXRydW5rCis2ODk0MiBlNDcwNWZmNjI2ZjA4YjQ5NGRkODJjMGY3MTRlZjg4NThiNWNhODA0IGxlZ2FjeS10cnVuaworNjg5NDMgYTUyMjkyMzdlYjUwY2JmMzY4ZjkwMDYyZjkwN2Y2N2U1OGVjZmY0ZCBsZWdhY3ktdHJ1bmsKKzY4OTQ1IDRlODJmYjFhZWIwMjIyYTBmOGM0ODBjNTJmODg4OTg3OTIyNzQ4MTMgbGVnYWN5LXRydW5rCis2ODk0NiA2YTkxYjNhZGNhZDZlNjA3MmE0MTdhYTAwZTcyYzk0Nzc4NDYwN2IyIHJlbGVhc2UyNi1tYWludAorNjg5NDcgYzg1MWVkMGNmNjVmYmM2ZWIzOGVkYTIwOTVkYzhjZjg3MzljMDQxZSBsZWdhY3ktdHJ1bmsKKzY4OTQ4IDA5NmI0ODg0MzhlOTI0ZWM4OWU3YzI4NDc1YzQ1ZTMwMjAyZmZlNWQgcmVsZWFzZTI2LW1haW50Cis2ODk0OSBjMTU1Y2IzOGY3NmQwZTY4MDU1OGY4Y2QwMTA4Y2Y3ZjU4OGQ2NWJiIHB5M2sKKzY4OTUwIDQ1YTUyNzZlNWRjYzY1ZWJlMmQ3ZDZkMzQ4Y2MyZWY4OTllZjQ1NjAgcmVsZWFzZTMwLW1haW50Cis2ODk1MSAyMWZiMTAxNDI5NGNjNjdlMjY3M2NhZGFkYzZiNmNiZjZiMDkyMzg1IGxlZ2FjeS10cnVuaworNjg5NTMgYjRhY2UyYjZjMjhmMGY0MjE1MTI4Yzc2ZjVhYjk3MTQ1Y2ExMGQzYiBsZWdhY3ktdHJ1bmsKKzY4OTU0IGZiOWQyZDJhNDM1OTU2NzIwYjY3ODBkZDRhOWRlMjczMWMzN2NhOTIgcHkzaworNjg5NTUgZGZhY2VjOGJhNmRiNGU5NjEyMjQ4ZWQ4ZWZlZjc4NzY5NWRjYWU2NSByZWxlYXNlMjYtbWFpbnQKKzY4OTU2IGI5NGU5ZWQzNTU5YzI3MzQxMzNkZDhjMGYxNDhkMjM1YWJjMTZhYzIgcHkzaworNjg5NTcgYzRkMzFmOTc5OTBlOTVjMjkwMDhkNTU4YjY1YjBlNTQ2MDQ3OWMwOSBweTNrCis2ODk1OCAwNGEzM2M0N2FiYjVmMTE3NzNiMGI5MGU5MzgyMmViMTVlNzY5MjJmIHJlbGVhc2UyNi1tYWludAorNjg5NTkgNTIwMzc5NGM3ZWEyMTQ3MmRmNmNkZjExNmQ5MTE4ZDU1YjU4MDRhZSByZWxlYXNlMzAtbWFpbnQKKzY4OTYwIDM1YzY5MzdjMDEyNzVjMWUwMjI2YWY2ZjhhYzZjZWZmMGI3YzQxZmEgcHkzaworNjg5NjEgYWQxZGIwYWU5OGM2YTg3OWE5ZWI4YWEzYWViNTA2ODM3MTMxYTE3YSBweTNrCis2ODk2MiAxYzUwYTE3YzBmMjFjOTYyNzkxNWIxNjU5M2QyMjQ3MmE5OWRiMWE2IHJlbGVhc2UzMC1tYWludAorNjg5NjMgNjk2MDUyM2ZhZGMxZTRiZmI0NGE2Njc3YWQzZDBlYmFhMWE4ZjEzZSBweTNrCis2ODk2NCBkNTEzMDI0ZjUxNzc1YmFhNWU4MDI4NzhhOTNjMDM2NTA4OGYyODdkIGxlZ2FjeS10cnVuaworNjg5NjUgYjg4NTA2MDZkOTIxYTBhZTgzODlkZDc2MWEwYWVmNjMzODAzMDcyMSBweTNrCis2ODk2NiAwMmUxYzVjZTZhNjlmOTZlYzE4MTNkZjAyY2IwY2Q1MTJhZGE1Y2NhIHJlbGVhc2UzMC1tYWludAorNjg5NjcgMzZmYmFmNzUzOGNlYzI1YmRhODBjMzhlMDcxNmEzODJmMjZmYTAwMiByZWxlYXNlMjYtbWFpbnQKKzY4OTY4IGQ0MjM3NGQwYWE1ODRiYTlmYTk0MDY4YzU0ZWZkNDIyMjczOGNiOGUgcmVsZWFzZTI2LW1haW50Cis2ODk2OSBkMzYyZGE5OGQwZGU4NTZhNjRhMDZiZmNjMWJmNzBhZjZjMTcyYWMwIHB5M2sKKzY4OTcwIGIwNDg5NmNhYTI5YmU5YmJlZWI4NzQwM2EyMDA5NmNjOTE5MzU0ZTEgcmVsZWFzZTMwLW1haW50Cis2ODk3MyBjOTRhMjM3YmY0OTcwMDBjNzlmMzFjODkwMWFmMTM0NDc5MDAwOTdkIGxlZ2FjeS10cnVuaworNjg5NzQgMjAwODI5MjU1YTZhN2ZhN2FiNTJkMDM3ZTI0NzE4YjZkY2RjNzFhYiBsZWdhY3ktdHJ1bmsKKzY4OTc1IDJlYTc1ZjYwZDllNWQxZGE0ZWE5N2MwNzU3YWQyNGViZDFjMmNkMjYgbGVnYWN5LXRydW5rCis2ODk3NiBjYThlYTUyYjQ1YzMzOGFmZTc4OWRlMDUyMjg5MTQxMWU4N2I0MzY0IHJlbGVhc2UyNi1tYWludAorNjg5NzcgOThmMjIzZWNlOGYyNzI5NzBmNTk5YWY1NThiMTYzNjhhOWU1YTU5ZCBweTNrCis2ODk3OCAwNjg3ZDQ0N2RlNjFmZjhkYWM5NmI5NjVmNmI0YzZjNzFmYjM0MGY0IGxlZ2FjeS10cnVuaworNjg5NzkgZTE5ODgwN2M1NTg2N2IyNzQ0ZGNiNmNlMzFhOGY2M2ZkMzRhOGEzMSByZWxlYXNlMjYtbWFpbnQKKzY4OTgwIDg1N2RmNmMwOWUxMmY5Y2MxNTU4YThmMzdiM2JjZDY5NDIwZTZhMzAgcHkzaworNjg5ODEgOTRjMmRjNWY0NDZkNjc2YWNlZTU0ZjlmMzE4ZWQ3YmRkNmJmNWE5YyBweTNrCis2ODk4MiAxNGMzYWI5YmQ3MDYxZjYxMGMyMGJiOGQ0ZGMxMjkzMDU3YTFkMTgyIHJlbGVhc2UzMC1tYWludAorNjg5ODMgYzIzZTQwZDFhYmJjOGQ5MWVjNDZhMWE0YjhmOWM0N2YyOTY5ODM0ZiByZWxlYXNlMzAtbWFpbnQKKzY4OTg0IDgwMjUwNjY0NTY2NjRkZGM0OTljOGQ2OGRiYTlkMmY0MzEwZWFiYzcgcmVsZWFzZTI2LW1haW50Cis2ODk4NSAyY2IwYzUyZDc3OWZjMjNiZTBmYzJiYWRmNDI5YzY3ZmQ1M2M5YTA5IGxlZ2FjeS10cnVuaworNjg5ODYgZjU3MjkxNzE4M2ZhMmVjYzJhZjRlNzc3YTI2ZTkxY2ZlNTk1ZmMyYSBweTNrCis2ODk4NyBmMTM4ZmJlMjk0NWU1NTg5YjBhMmQ0MmRmODI1MDc1MTVmZGUyMzIxIHJlbGVhc2UzMC1tYWludAorNjg5OTEgZjA4NWFhYTQ2ZDg3NDhmZDU4ZGVlZDA3NmNiZDkzMDcwNWUxZTE2MyBweTNrCis2ODk5MiBmZmU3MzJkYWRiMGQ4ZDk4NDFkODk3YjljNzJhMWUwN2EzZTI1OWJiIHB5M2sKKzY4OTkzIDI1OWZhOGY2NGE5N2U2MjQ0N2Q2ZTgxODM0ZTlmNTFjYWMyYjMwOWUgcHkzaworNjg5OTUgNDQ1MTIzMTFmMmJjODIwMDcwYjgwNWQ2MmQ0NGI4MDllMTJkOGE3YSBweTNrCis2ODk5NiA5NmQyOTZjNzhmYmE4NjZhYTlmNjhlNzc3ZWY2OGQyZDc4YTZiMzdkIHB5M2sKKzY4OTk3IDU2NzliYjliNTE5MGM5MWFjMWFiMTI4MWQxYjU0NDBjMTkxMTZmZTYgcHkzaworNjg5OTggNmMwYmI1NDhhOTQ2YzdiN2U5NWViYjc4YzFkNWE4MjZmNzUwYjQ0NyBsZWdhY3ktdHJ1bmsKKzY4OTk5IDc3MjBlMzYzYzFjOGNlZDc3OGYwM2Y2ZDM2MjBmNzNjMzYxZjAzOTQgcHkzaworNjkwMDAgODRkNjQ4Y2RkYzMzNDYwYWQ3ZTJiNjIyMDMyOTE3YWMwYjRjZDIwMSBweTNrCis2OTAwMSBiN2NlNjc1ZmViYjkwM2NhYWEwYTA1NzhkOTllMjQzMTdkMWNhZjQzIGxlZ2FjeS10cnVuaworNjkwMDIgZjExYTQxMDk1NzI2Zjk5MzVhZGU0Nzc5YzlhOTQwN2ZmZThlMGI2ZSBweTNrCis2OTAwMyAzMzI5MWUxZTg3ZWM3NDNmODViYjdhMWY1NmFlMTQyNGYxOGYyNjlkIGxlZ2FjeS10cnVuaworNjkwMDQgNDAwNTAxMWQzYTA5ZWNhOTllMTEyODUxOTExMjJlY2M1NWYxMjVhYiBweTNrCis2OTAwNSA3ZTgzM2NkZWIyNDE3NDU4NmE1MWQwOWQxNzMwMGQ4NjQ4YTI0YTgyIHB5M2sKKzY5MDA2IDRiODdmMzE5NzhiN2UyMTc2YzY4ZGI2OGQ5NWVjMDVjZTQ3YTA5MjkgcmVsZWFzZTMwLW1haW50Cis2OTAwNyA0OGI3MDM3ZmYyMGU4NWI2ODhlMGJiNzQ1YTdlMGI5MGRkZDRlNDI5IHB5M2sKKzY5MDA4IDdmMGU0ZTQyN2VhM2Q3MGFlOGRhZDRjZmQ3ODY1NWY3Y2I1MjM1MTAgcmVsZWFzZTMwLW1haW50Cis2OTAwOSA5OGE4NTVjOTdmZjIxNGZhYWJhMGNjYzMwMjg5NDg2YTM4NDI3MDdiIHJlbGVhc2UyNi1tYWludAorNjkwMTAgZDE3MGZkZjRiZGZiNDUyMmE2NDQzM2QzOGY5OWU0ODQ2NTRiMTJlMiBsZWdhY3ktdHJ1bmsKKzY5MDExIDE0NjMxYzYyN2UwMzc0MmQ4ZTlkODFlNjIxNzYwOGJlZjE3ODIyYzggcHkzaworNjkwMTIgM2U0Yzg3MmQwMjQ2N2E1NzE2YTVmYjRkMmJkOWI5NzZkYmU5MDExZSBsZWdhY3ktdHJ1bmsKKzY5MDEzIDM0MDI3ZThkMDQ0ZjAzYzg4OWFjZDk4ZDkzNTljODhmMjRkMzNhNzcgcHkzaworNjkwMTQgYTI4NzY1ZmQzMmYwMGE1ODdmODJhNmJiYzVkYmE1MGFiMGE3OTc5NSBsZWdhY3ktdHJ1bmsKKzY5MDE1IDdlZDljY2MwYjUxOTdlNzMxYjg5ODMwZDU0ZTIwMGE3MzIyYWQxMzUgcHkzaworNjkwMTYgOGNkM2NlZDFlZDI5OTlkZTYwYzljOTY3M2E4ZDFkMDljN2MyNzc1NCByZWxlYXNlMzAtbWFpbnQKKzY5MDE3IGU3MThkMjk4NzRkNzVjN2Y2NTdhNjg2YzlmN2Y5MmM5Mzc4YmVhYmUgcmVsZWFzZTI2LW1haW50Cis2OTAxOCAyMjU0Y2QzMjAwZjA2MDJkYTFmNjc2YWE0NmQ0OTg5Y2JjM2M5YjNlIGxlZ2FjeS10cnVuaworNjkwMTkgNTMyNDRjNGVlZjIyM2UxZWU5MTJkNTBmY2I2ZjQzNjkxOWQzOGM4MSBweTNrCis2OTAyMCA1NDdiN2ExN2MzNzk5ZTc3MjA1ZTExMzljMjBjNDAyZDA2NTI3ODdkIHB5M2sKKzY5MDIxIGE2YjAyNTIzYjkwMzVmNWNjMTQ5MDZkY2Y1ZDRlZDQ0YmExNTlhMGMgcmVsZWFzZTMwLW1haW50Cis2OTAyMiAxYjMyMGZmYzBkYjhjYWU4MzA4OGI5OTU0ZjNmNzY0NjJiOWM3ODY1IHB5M2sKKzY5MDIzIDlhNGZkYmNmMmQ5ZjJhYzc1YmJhOGQ0ZDk5MzA3ZDNkM2YzODg2OWQgbGVnYWN5LXRydW5rCis2OTAyNCBmYzUxMDI2YWJkZTZjNmQ2NWFlYzA1YTdmOGRhOGU3OWUwNzZjZDM1IHB5M2sKKzY5MDI1IDc0YWE0M2RkODc1ZGQ5ZTVkNzk4YzQ2MGQ0YjRhNDhjMGY1NTExOTUgcHkzaworNjkwMjYgYWRiZDc3YTkwYmRlYjVhYzFkY2EzZDAwN2M4ZGZkNTQ4NmU5NzY5NyByZWxlYXNlMzAtbWFpbnQKKzY5MDMxIGM1YTUyYWVjMmRkZjkxZTEzZTBlN2YzMDkxMDJmMjllMWQwYjMwZjUgcHkzay1pc3N1ZTE3MTcKKzY5MDMyIGI2ZGU2OTEyZmUxNDZiYTZiZWQyMDU4ZGY1NmVjNTU4ZjkwZWFjNmEgcHkzaworNjkwMzMgZDJjMDY3ZjlmOThiOTVkMjE5Y2Y0NDgwZmNlNTMzYTcwNWNjNTBhZCByZWxlYXNlMzAtbWFpbnQKKzY5MDM0IDVmZWI5NzZiMThhYWM4Y2U5MWY2ZWJhYTkwMTQzOTY0Zjk0MDE5MGMgcHkzay1pc3N1ZTE3MTcKKzY5MDM1IGJlYTZiN2EwYjlhMjJmODk1MTk0ZDI2Mzg0YTQ2NzZjZDI5Zjk0ODkgcHkzaworNjkwMzYgMmE2ZTBiYzRiYzAzMTlhZmE0ZTY4NzFhNTE5NGJkY2JlNTNkZjM3ZiBpby1jCis2OTAzNyAyMzFjNGU0OTBiMWY1OWY3NGRhNWU5Mzg0YThjMGFmNGUxZTRiMjZiIGlvLWMKKzY5MDM4IDYyY2E4MWRkMmFlODg3Mjk2ZGVjNTcxM2FkM2UwYzUwMWYzN2I0NTUgbGVnYWN5LXRydW5rCis2OTAzOSBiNjc0NzA2ZjNiMTBlZGUyYzZlNTQyZDQ0MjkyYWQ4Y2VkOTg4MGE1IGxlZ2FjeS10cnVuaworNjkwNDAgMTQzNGQxYmM2NjdmNzI4Mjk2ZDY2Mzc1YTJlMTc1NmYxMDQxYjU3ZiByZWxlYXNlMjYtbWFpbnQKKzY5MDQxIGFiMTE0NjU1MTI1NTIzMWFhYTg3NmM4NDZhYWRmZWZlMzgyYjJlYzYgcHkzaworNjkwNDMgMDUyMmNmZWU4NzlhMTFkMzNkNGMxZDlmMGYwM2IyNzE0ODQ5MmVlZCByZWxlYXNlMzAtbWFpbnQKKzY5MDQ0IDg0MDAyODIyNmVkNTNlYjZmM2I1NGU0ZmQxYjUwZDgwOTBiNzVjNWUgaW8tYworNjkwNDUgMDRjYTU3YmI3MTA4MzkzOTM5NGQzMzBkMzM4YzY1MWIwZjJmYjA1OCBweTNrLWlzc3VlMTcxNworNjkwNDYgNGFiNTA4YTVjZDdlZDBhMzUyMTgzNTY5NmZmMmI1OTYzMDViNmIwMCBweTNrLWlzc3VlMTcxNworNjkwNTAgYzEwMWY3OGFlZDhiNTFiMzg1MjRhODhmNzQ5YzNlODgyMzdhYmIzZCBsZWdhY3ktdHJ1bmsKKzY5MDUxIGM5MDkzZDQxNTkwZWVhMjI0M2M5YjBlYzk0MzI1OGJkZjQ4ODlmNDggcHkzaworNjkwNTMgZjA2ZDkwMDI3Mjk5NDg2NGIyNWZhNTc3YjM3Njg3M2RjZGMxMjI0MyBsZWdhY3ktdHJ1bmsKKzY5MDU1IGQ2OTAxMjlkN2RhYzI1NTYyZTljZGVmOWQ1ZmE5MDgxNmVhMzVmMWIgcHkzaworNjkwNTYgZmQ0YmViZjlkZGRlZTdhYzk3Nzc3ZWFlNzgxZjgwZGFkOWJjY2Q4OCByZWxlYXNlMjYtbWFpbnQKKzY5MDU3IDM5NzU3MjVhODViNTE4NGFiNzI1NWZlZjdiM2QxY2ZhODJlN2RiM2EgcmVsZWFzZTMwLW1haW50Cis2OTA1OCA4ZDYwM2U0OTM4NDZmODdiMGFjMDI2NjFjNzIyZWY0YWI3Y2E4ZWEyIHB5M2staXNzdWUxNzE3Cis2OTA1OSBiZmY5OWE4MTgyNGE3MDk2NGQyZDFlZDI3NGE5MjVhYmRkODFjYWVkIHB5M2staXNzdWUxNzE3Cis2OTA2MCBjYTRkYmU0YWU2MjlmNDMxNDI1OWNlODhjNDE4YzA5YTg1MWQ3MmIzIGxlZ2FjeS10cnVuaworNjkwNjEgOTQ2MzQwZmIxMTRiNTMwZjM0ZTFlNGRmODQxYTEyOThhODMzODIxMSBsZWdhY3ktdHJ1bmsKKzY5MDYyIDE4ODRkMDg4ZTBhY2NlY2Y4YjEzYmEzODM3NWI5OTFlNmY0NDc5ZDIgbGVnYWN5LXRydW5rCis2OTA2MyAwYThhN2M0NTdmMWJiZjliZWM5NmI5OTg4ZGNjYjEwY2Q4MDUwYzI0IGxlZ2FjeS10cnVuaworNjkwNjQgNWZjNjA3YjZlNDJkN2I3OWE3NmYzN2UxNzljNjFmNDA5NjIyNzkwNyBweTNrCis2OTA2NSA3M2JhMGY0ZGIwZDU5MTBkY2YyMjg2MWRmYTAxMWI3N2NjYjRjNmNlIHJlbGVhc2UzMC1tYWludAorNjkwNjYgZDhjNTIyZDYwMGU0ZTNlNDk2MDZhNjE0NjJhODk1MjkwNTM3YjFjZSByZWxlYXNlMjYtbWFpbnQKKzY5MDY3IDQ0NDdiYzFmNWE1MTIxNGY2MGY2ODk2M2E5ZTlmODljZThhYzdlNWEgcmVsZWFzZTMwLW1haW50Cis2OTA2OCA5NzQyZThhNGRjYTFmMGNjMzliNjUwODMwMzlkMTVhNDIxNWEzOTBiIHB5M2sKKzY5MDY5IDljMWYwNmIyNzNmNzJjNTYyM2U5MWYwOTQxN2YxZTJjZTBkOWJkNTMgcmVsZWFzZTMwLW1haW50Cis2OTA3MCA5NDQwNDY4MDgzNTkzYzUyMmRiOTg0ZTk5YWQyZmYxMDk0ODRjMGYxIGxlZ2FjeS10cnVuaworNjkwNzEgOWM1YWVmOWYxZmE3MjdlNzlhMmJiMjI1NDRhNjRjZDAwMGM0NzYyNiByZWxlYXNlMjYtbWFpbnQKKzY5MDcyIGYwYTFiZjI0OTAxMDVlZGQ4ODY1YWIzYWVkMTQ1NTg4MDM3ZTlhN2IgcHkzaworNjkwNzMgMDFiOWM1ZDk5ZWJlMjM0NDIxZDZkYTAwNjgxZGZiZjA2ZTAxYjQ4NCByZWxlYXNlMzAtbWFpbnQKKzY5MDc0IDUxOWIyMWY4OTFlYmQ1YWE4Yjk5YmQyNmIwMWQxNjc2ODMzOGRjODkgbGVnYWN5LXRydW5rCis2OTA3NSBiYjYzOTE1ODI5NmU3NjU2MjZhMjgxYzVlYjM3OTA2NjQyMzM3NWU3IHB5M2sKKzY5MDc2IGQ4NzdkYmZkNGJmOTM5ZTEyOTU2ZWZjYzgwMDQyOTIwYzRkNWVkN2EgcmVsZWFzZTI2LW1haW50Cis2OTA3NyBiZWRjNjg0Njg0NGRiZjBmNTkxNGE0NDI4NWM5YmZhN2U2NTQ2M2NjIHJlbGVhc2UzMC1tYWludAorNjkwNzggMjM4NGMwNGVkYmI2MGJiNmNkZDI5ZTczNzQzMWFjOWYzMjZiYjBlOSBsZWdhY3ktdHJ1bmsKKzY5MDc5IGEzMzA0MTkwZDhhYWFhOTE1MDg3Y2M1YjRmY2E2OTFhMjU3MjZlNjggbGVnYWN5LXRydW5rCis2OTA4MCA5YTlkMjZlODQyYjMzMTVhNjdiMTc3MzYxMmI2MGQzOWMxNDQ5MDRiIGxlZ2FjeS10cnVuaworNjkwODEgMzIyODkyOWVjYjZkODQ4MzM3OWQyOWY2ZDBkMjI2OWU0N2M3YzAyNyBweTNrCis2OTA4MiBkNjZlMWFiYjNhOThjZmQ2YzdiYjg2MDU5NDY1OTdmYjIzYTdiZDhiIHB5M2sKKzY5MDgzIDdhZDk5NmVlMzMzNDFkZjA2ODFmMzQ5OTAzZWMwMTMzZTZhYmIwNWEgbGVnYWN5LXRydW5rCis2OTA4NCA3MjViMjA4NzMwYTU5MzQ5MTRmOTdhZDczOTcwMDBkNDM2NDE2MzQ4IHJlbGVhc2UyNi1tYWludAorNjkwODUgMDdmZjI4MWJlMDJjNTU3NmFhYzQwZDYwNDQxZjAyNWRhN2Y4MTIzZCBsZWdhY3ktdHJ1bmsKKzY5MDg2IDRmNjA3YzNhZThlMmQxNzNmMmFhODNhYjA4Mzk2MDA2NDAxYWI4YTQgcHkzaworNjkwODcgN2NiMzUxYzljZjQwMjQ3ZTI2OTM3MmU3YWE4OTQxMDU0ZjUwMWQ5MCBsZWdhY3ktdHJ1bmsKKzY5MDg4IDRiODk3NmVhNjk2NjBhOGIyNDQ0NWU3NzUwZDU0MGU3OTY3ZjgwODYgcHkzaworNjkwODkgOWViODRmYzQzNmZjMWIzYTVhNGM2YWJiYjQzZTBmNmNmMDM0ZjhiZCBweTNrCis2OTA5MCA0YWJjZjlkMWI5MzgwZmJhMDE2ZTg4YTQ5MDQ4ZDhhNzY0ZTZjZDBkIHJlbGVhc2UyNi1tYWludAorNjkwOTEgMTRlNWI2ZTgzNjgwMGY4MmE5OTc3ZTQxMWViMWYwNThkN2NlMGFhNCByZWxlYXNlMzAtbWFpbnQKKzY5MDkyIDBiNjY3ZTM5M2ViMzQ4NzAxZmJjMWFhZjYxMDc1NTcyNWY0Yjk2Y2EgcHkzaworNjkwOTMgOTY5MzQ2ZGJmMzFlMjA0YzYxNmRmNmNmMDc2MGRmNjIwYjY4YjVhNCByZWxlYXNlMzAtbWFpbnQKKzY5MDk0IGRhYWU4YzMyNGJlMWI5MTkxM2Y1NGNmZGNhZTY5N2M0NTNlZWUyNzIgbGVnYWN5LXRydW5rCis2OTA5NSBkMTYyOWE5NTljYjg1MDQ2OWY2YmNkMWNkYzNjOWJhMzNhNjVhNjZlIHJlbGVhc2UyNi1tYWludAorNjkwOTYgNDYzZjZjMTJmMWQ0YzI1MTEzZjYwZTNiNzA5YzlkZjM4MTgzNTI3NCBweTNrCis2OTA5NyBkODU3MTQ1NzRjOGE1MDM1YjBkOTQwYjRlYzY1ODk0YWU3NzVkYjJiIHJlbGVhc2UzMC1tYWludAorNjkwOTggYmNiNmFkMWNiNTVkZmEzMmE0MjQyZDZlMzhjOWFjNWNkZWMyZjFlYyBweTNrCis2OTA5OSBhZjk0ZWYzOGI1YzBmMjdiY2U5NWQwOTEwNDU0ODU4MDY2MDM4ZjVkIHJlbGVhc2UzMC1tYWludAorNjkxMDAgM2MyOTBiYzIxZDJjM2RhYjk1ZmNhNmE5OWNlNzlkY2QyZjA0MzQ3OCBsZWdhY3ktdHJ1bmsKKzY5MTAxIGU0OGM1OTE0ZGE4MThmYzkxMTc2N2FlN2JhNjRkYjgxYTk2YTM0MTYgcHkzaworNjkxMDIgZTJkY2FkNTZlNDBlMDMxNzQ5ZTdkMzgwMDhkN2JjN2NjNTI5NmEwMSByZWxlYXNlMjYtbWFpbnQKKzY5MTAzIDVkMGVhZWI0MTM0ZDdlYzlkMzc4N2JiYTNlOTI3ZDNkODhlYzY2YzMgcmVsZWFzZTMwLW1haW50Cis2OTEwNCA0YTRhNzQzN2M1ZTFjZjY2YWQ0ZmYyNTY2ZWU4NTg3MTNmN2MzMzk0IGlvLWMKKzY5MTA1IDkxZWQzZWNlMGM3NmEyYjI0NWIwNzRjZjYxZmJjNjVkNTg2YTc4YjkgcHkzaworNjkxMDYgZmM1ODZiMzgxOTg3M2U2M2Y5NzVmM2E2MjJiNTQzZGQ0MmJmMzE5NyBsZWdhY3ktdHJ1bmsKKzY5MTA3IGMyNjI4YmZlNmE2ODQ4ZjI4N2UxYzkyYzY0MmE2ODY3MTNmZjFhNmQgcmVsZWFzZTI2LW1haW50Cis2OTEwOCBjMzc4YzRmNGE3OTY5ZTFmZDA1NTk3N2FmOWNjM2I3ODdhNDE3ZDRiIHB5M2sKKzY5MTA5IDIwZjRhZmNkM2IyN2VlNjMwMGM4ZmY5MTkyMGMwZGUyYjYwZjFiMmMgcmVsZWFzZTMwLW1haW50Cis2OTExMCBiODhkMzc3MDExZjUwZGE5ZDM0Yjk4N2NmNDM2ZmQ3NDk5YjViZDRkIHB5M2sKKzY5MTExIGI0OGI1ZGRhZGE4OTQ4ZThjOTUzMjU5NmM4N2UwYmZjYjViYThjMjAgcHkzaworNjkxMTIgNmEyODk2ZDkyM2UzYTJjMjZiOTI2ZTkzYzgyNjA2NTY2M2Y5ZTkyYyBsZWdhY3ktdHJ1bmsKKzY5MTEzIDRhYjM4MWFlYTY1ODAyMGJmMmQ0NmM0NTRmMmE3Yjg1MzY2NzdlZGUgbGVnYWN5LXRydW5rCis2OTExNCBlMjI3MDU0ZDQ5NmRmZTg0ZWM3NDNiMWJlOWUyYWI4OTk2YTAyNzBkIHB5M2sKKzY5MTE1IGEwMzhlOGZiNjdjMjEwZWNlMThjYWJhNjcyM2I3ODdiMzE0MGYyOGMgaW8tYworNjkxMTYgN2I3OTY4ODYyNmU0ZWYwZGJjOTFkNjJjYWU0MjZkYTY1ZDU4Y2ZhNiBweTNrCis2OTExNyA5ODY3Yzg0OTUzMGJiYmYyNjdiYzgwOWZlYjMxNjNiMDU4YzAxMWU3IHB5M2sKKzY5MTE4IDhjMmM3MmNmMmEwY2ZiNjJmYjMwM2NhNjNmNWVlZmE1YzZmZjk3MWYgcHkzaworNjkxMTkgNjE3ODc1MzMzOTVjMGRhYWRhYWFkNTU3YmViNGYyMDc4ZmU4YWE2MSByZWxlYXNlMzAtbWFpbnQKKzY5MTIwIGU2N2RjNGRiOTY0Yzg5YTY3NjRkNDgzYmFhNDc0ZjVlZDQ0MzMzMWYgcHkzaworNjkxMjEgM2MyYjM1YTEwNTkzYmQ2OGNmOGZmNzlkZDZmMzFmNWE3MmE0M2YxZSByZWxlYXNlMzAtbWFpbnQKKzY5MTI0IDM1OTM5NGI2M2EyMzg4YWMyN2MwOThjZWVmMmY0OGJlYTIwNjE1MzIgcmVsZWFzZTMwLW1haW50Cis2OTEyNSA3ZmMwYWQxMWIwYWYwNzRiMDU0YTExYzA2YzM2Y2RhMWFhYzJjOTg4IHB5M2staXNzdWUxNzE3Cis2OTEyNiAzNzhiYzE4ZDIzNTA5YmJmMTljOGY3YTViNWFlODFjODUyNWFlM2E4IHB5M2staXNzdWUxNzE3Cis2OTEyNyAyMzk0NGYxZDUzZmRmYjljZDAwMGRiYThhYjcyNmMzYWM0MmZmODkyIHB5M2staXNzdWUxNzE3Cis2OTEyOSA0YzllYTY0N2VhZjQyMWRlNTc2OTJkMGVmMzYxN2QzZWUyMDkyZDY4IGxlZ2FjeS10cnVuaworNjkxMzAgYzVlMjgyODViNzRkMDEyMzIxYjU2YzdiN2EzZjllZmJkM2M2ZWM3YiBsZWdhY3ktdHJ1bmsKKzY5MTMxIDc1NDAzMTRmZjI2N2I0ZDVlZTAzY2Q1MzlmMmEwMmViZGRjMDY3YTUgbGVnYWN5LXRydW5rCis2OTEzMiAwMmE5MGRjMGMyOWE4YWY2NWIwYjJiOTExNmU2YzQwYjRiYTY0NjVhIHB5M2sKKzY5MTMzIGRmMDkwNTk3YWZhYWYwZjc3OGI1YzNiNjFhNzUxZmQyZjc5NTFmYzcgcHkzaworNjkxMzQgYmU1NzM1NGRkYjExNDQ2MjMwYWNiYjRiMTlhZmU1NzEyOTFhZTQxNSBsZWdhY3ktdHJ1bmsKKzY5MTM1IGRjZmQ0MzY1NjdjZWY5NDg3ZGQ5MGE1NDdhN2ViYTNmMWZkYTQ2OWQgcmVsZWFzZTI2LW1haW50Cis2OTEzNiA0MzE3MWY1NTdhZjgwZmVhMGM4ZTBhMmEzNjlkMWQ3ZDBiZDg1MTM3IHB5M2sKKzY5MTM3IGMwNmZhYTgxOTZiM2EwN2U2NmE3MGY3ZDhlMmJlMTA3MTgxYjE0ZWQgcmVsZWFzZTMwLW1haW50Cis2OTEzOCAxYzBhNWE5ODI3ZmE5N2Y2ZTFiOTUxZjYwNjA3NTlmOWM0YWFiOTY0IHB5M2sKKzY5MTM5IDVmNmQyMjVlM2MxZGFjMDlhYmI3M2VmNTg4ZTYzNDhhOGY0MTQyMjYgbGVnYWN5LXRydW5rCis2OTE0MCA5NDI2ZWViN2Y0ZTZhNTFjY2RjMGQwZDM2MGYyODI4ZWI3OGQ5NjUyIGxlZ2FjeS10cnVuaworNjkxNDEgOWQzYzJjZTg2ZjQyOGUyMWZjNGViMTgzYWEyMzhiZWUyNjcwOTM3NiBsZWdhY3ktdHJ1bmsKKzY5MTQzIDBjYWEwMDJmNWYzZDI1OGU0ZDVkNDJhMWQ4YjcxODQzZjllNDcwY2UgbGVnYWN5LXRydW5rCis2OTE0NiAxMGRhZWUzYTM2MDk3OGI5MzkzNjBjODEzMTVlNGI4Y2Q3NjVmNjYyIGxlZ2FjeS10cnVuaworNjkxNDkgY2Q1ZGI0M2RiYjY1YjkxNzAyMTIwMWIzNjk0YjFhN2ZjZjc0NjI0MyBsZWdhY3ktdHJ1bmsKKzY5MTUwIDE3ZDQwMWFkNmEyMTU5ZmY4YzBhNzRiOGY2OGFkNjc5ZmRiNWUyN2QgcHkzaworNjkxNTEgYmMyZDk0ZmQ5MTBjMGM4MzUwODkzMWY3ZTg0ZWE2NWQxMmRiNjlhNiBweTNrCis2OTE1MiAxZjI5MjJiYTVhMmExMDE4OTVmMjk1YTkzMzk0NGU1Mjc5ODczM2VlIHJlbGVhc2UyNi1tYWludAorNjkxNTMgNGMyMDU4MzUwODMzOGNmOTBhNDk1ZDRlYzkxZTM3ODJmNDM0YTg5NiByZWxlYXNlMzAtbWFpbnQKKzY5MTU0IGFhMDdhMTIzMTk0YTBiNzg5YzYzY2I0N2Y3ODg2NmJmYzJhYTE3ZTMgbGVnYWN5LXRydW5rCis2OTE1NSA3Mzk4MWJjZGE1YTJiYmNhYTU4YWY0YjRkYjcwMGVmNWRjODU2NTMxIGxlZ2FjeS10cnVuaworNjkxNTYgZWIyNjA3YTY1MTZlNjdiY2E0NTA4YTJkYWVkNjM4MWY3YjY3MTI1ZCBsZWdhY3ktdHJ1bmsKKzY5MTU3IGJjOTJkODNlNTUwODI4NzdkZmZlNTIwMjM4NjQyYTJkZTQ1YjJiYjAgbGVnYWN5LXRydW5rCis2OTE1OCA4NjcyYjBmNjU3NWQzYjFjYzZhZWNmMTAzOGI4OTk5YzczZTY2NDE2IGxlZ2FjeS10cnVuaworNjkxNTkgOWEyNDRhZmExYTlhMTgyZjRhODdkOTU3YjQwODNmZGQ3Mjc5NTE3OSBsZWdhY3ktdHJ1bmsKKzY5MTYwIGI0Nzc5NThkZjk3OGVkMWFjY2Q0MWVjMjEzYjYyZDYxMTk1ZTdhNDMgcmVsZWFzZTI2LW1haW50Cis2OTE2MSBmZWI5OTM0MzA3YjliNzg5NWViZjQxYTQyN2YwNjQ1ZGJmMmY3ODRkIGxlZ2FjeS10cnVuaworNjkxNjIgMTQ4NDIxNzJiMTUyMmY5YmEwYmZkNGRhNTFhMjkwYmEzNzc1MzdlZSByZWxlYXNlMjYtbWFpbnQKKzY5MTYzIGI4Y2U5NzljZGRjZTIwNmM3MWMwNjg3ZjQ3ZWQ3NzJhYzI1NzEwMzUgcmVsZWFzZTMwLW1haW50Cis2OTE2NCAzOTU0YzliOTBiNTI3YTExMDJlZGU3ZTZlODNjNWZhYzVlNjI1ODIzIHB5M2sKKzY5MTY1IDA2YmJjYjc5MmYwNGUwYTM0ZDcyNTQxYmE1MjdiMDIyMjJjM2ZlZDcgcHkzaworNjkxNjYgOGQzZjdkZDliNmNjZTA1M2RiZWEwMDZkY2EwODQ0M2Y3MTExMjRhNyBweTNrCis2OTE2NyA1MGJkMmMxOGVmZjA2NTI5NWMwOWI4ZDQ0OTlkYzU1ZWRhNjg3OGE0IHB5M2sKKzY5MTY4IDgxNTU4OWQ2MmE5YWUyMDFhOTA0NTRkYzY4YjEyOTE1NDY4MzAyOWYgcHkzaworNjkxNjkgZDI2ZDk3OGQwMDY2NDg2OGMwY2NiOGZlOTZlYzA1NDM4MWMwNDZkNCBsZWdhY3ktdHJ1bmsKKzY5MTcwIDRiMzI0NmM4M2UzZjJjY2FjNzQxNTYxY2JhNWE0N2RmMjJkOWRmNjAgcHkzaworNjkxNzEgNDI3ZjRhNzRmNTM4YWJmNDY3MzFjZDg1ZThhZGQ5ZmVmZDRkMjc0YiBweTNrCis2OTE3MiBkODVlZjI2ZWZkMTAzNzZiYjIxMzVlMWUxOGE3Y2YwNmJkZjBmNzJkIHB5M2sKKzY5MTczIDEzNGZiY2UxMTFlOWI5YzJkODFlZTA0OGQ4OGEzMTlmODI4NTlhMGQgcHkzaworNjkxNzQgZGVlZGRkYzdlMGI0ZDkxZTNlOWQ2MTE1OGJlMjkwOTQ4NDUyZTgzMCBweTNrCis2OTE3NiAzODZlYjRiNWNiYjNhYzYxZmI1ZThiNzA3YzNkZWZlNjFkZjc1ZWMzIHB5M2sKKzY5MTc3IGZiYjE3Y2FiNTcxNmUzOTM3ZDM1MGZkNDcyYjY3NDIxYjkzMGM0YWYgcHkzaworNjkxNzggNmJjZjg0ZDYzNzk3NTJiZTg2ZDFmOWIzNDk5MzhlN2Q3ZjVjMGQxNSBweTNrCis2OTE3OSA3NjY0MDVjMDRiZGMyOTQ0NTMzYzRkYTY4MjA4NmIxZjYwZjZjZGFmIHB5M2sKKzY5MTgxIDdjOTFmNDc5YmQwZDkxMGJmOWQ0YzM0NDkzZDBhNDFlMDhiODhmYzYgcHkzaworNjkxODIgZTk2NzVkNzJlM2UzYjk0MDNkZTQwYzJkMTExM2YxNTEwZGQyMTZmYyByZWxlYXNlMzAtbWFpbnQKKzY5MTgzIGU2NjMwNzVmZDFhZTRhOTk4MDBlNjc1MDc4Y2FmMmJhNmY3OTAzNzYgcHkzay1pc3N1ZTE3MTcKKzY5MTg0IDljYTM0YzE4ZTFiZDNhMWVmMWEzMTg1NDYzNTk5YjgxN2VjMjhlNzkgcHkzaworNjkxODUgMDE2MmNkNGY1NWJlMzFkMWJlZDJhZmY1YTdkYzY5M2RkOWY5YTA4OCByZWxlYXNlMzAtbWFpbnQKKzY5MTg2IGYwMDg5NDEzYzEyZmQ0M2U4MmM1NWU5YTk1MTJjMTZhYmMzOWI5ZWYgcHkzay1pc3N1ZTE3MTcKKzY5MTg4IGJhOTRkN2MwOTVlODBmODliZTI5YjIyMzNkYmYzM2FjODViOTc4NzggcHkzaworNjkxODkgNDEwZGZkNDIzZWYxMmIzYzM0N2Y0ZGU5Y2U3M2E1ZjU4YTZmODIwZSByZWxlYXNlMzAtbWFpbnQKKzY5MTkwIGUyZGIxNTE5NmE1NGI1MzkwMjk0NjI4MDYzMWQ5OWY1ZjNhNTY2MGUgcHkzaworNjkxOTEgMjM1ODI5OTU2NGVhODA0OWY4YmNhMWFhMTU2ZjFlMGQ0NmFhNWY2MyByZWxlYXNlMzAtbWFpbnQKKzY5MTkyIGU5NDU3ODI0Nzc3NDBjOGZjMTlhOWRmZDAwODVjZTMzY2IxZDkwYjggcHkzaworNjkxOTMgZmRhZTRlNzQ5ZDJiMzgwOWYwNTc5ODQxZmE1OTcwMzYxN2FiYzdkNyByZWxlYXNlMzAtbWFpbnQKKzY5MTk0IDU3ZDdkNmMyYjExYmNjNTQ5NWY3ZTg5YzlkYzU0ZmEzZTJkY2ZiMDkgaW8tYworNjkxOTUgNDdkNzQ3MTI0YTNlMGM0YmM3MDg5YmQ3MDZlYjJlNTFkNDdiZTJlZCBsZWdhY3ktdHJ1bmsKKzY5MTk2IGFlZjI5YTllZDQ5MTg0NzJjZjJiNDczZTBmOTNkMThmMjA2YmFhODcgcmVsZWFzZTI2LW1haW50Cis2OTE5NyA4YzQ0MTBkMDY3ZWU3YTE5YzdiNmM2N2Y4OGIzOGFlMWFiMzI5M2MzIHB5M2sKKzY5MTk4IGFlMDI2ZDI1OWQ0MTExMzhlNTBmMDcxNDc3MTljY2IxOWE5NmFlM2YgcHkzaworNjkyMDAgOTIzNjM1MWI1MjlhNGNiZGJhOGI4NTZiN2E2ZDUyOGQxZmFiNWFlZiBsZWdhY3ktdHJ1bmsKKzY5MjAxIGMwODNjMjc0ZjlhZmVjY2FkODJiOGI0N2IzMDY3MzAyYjk3YmJjNTIgcmVsZWFzZTI2LW1haW50Cis2OTIwMiAyYzE5MjcyZDhlNTY1ODZlMTk3YTJiMTQ0ZTcwYTk5YThiOTE1OTExIHB5M2sKKzY5MjAzIDZlNWNhOThhMzBhYzM4NTMxMDVkZDFlYjcwNTViMzk2MjY2OGM2NjAgcmVsZWFzZTMwLW1haW50Cis2OTIwNSAwMWIzYWNkMTA5ZGJiNTYyNDgyNzRmNzUxNGZjMjAwYWJhZTcwM2YwIGxlZ2FjeS10cnVuaworNjkyMDYgMmFkZjllZDZiYTdlODk3NGU3NzI4ZWExOTlhODI5YjkxNDE1N2NhZSByZWxlYXNlMjYtbWFpbnQKKzY5MjA3IGZmNjgzYTkyODQxOTM0MGQ1YTAzMTgzZTU2NzFiN2M1MzUxNDBiNjYgcHkzaworNjkyMDggODdhOTg1YTFiNWM5ZDBkYzI2YTE3ZmQyZGRiZjk4ZTZiZmUxMGE4NCByZWxlYXNlMzAtbWFpbnQKKzY5MjA5IDA1MDc0Yzg4MzczODQ3YTNiZWM0ZjNkZTA4ZTIzY2UwN2FjMzUxNjUgcHkzaworNjkyMTAgNjMzODZhZTc3Zjc5M2Y4MWY3MGE3NTg5OGViZDc2YTEyNjc3MTMyNSBweTNrCis2OTIxMSBmYTc5ZjEyMmExYjI1ZjNlNDMyMTM3Y2NlMWJmNDJlOGIxNzg4NDE5IGxlZ2FjeS10cnVuaworNjkyMTIgN2I3YTYzOWI5NjBmNWMyZDNjYjgzNzAyMTk4NWY1NjY0YzhkNjZlYiBsZWdhY3ktdHJ1bmsKKzY5MjEzIDBjMzIwZjhlN2UyMDM0NTg3MzIyZjhjOWJmZjZlM2QzMzVkZGFlMDIgcHkzaworNjkyMTQgZGViZDE0YzQ4OWI5MjE5YTU0OGZjMzIwMDJmNGE0ZWU4M2QyYTQxZCBweTNrCis2OTIxNSA4N2ZiYmYyMmFkZjM3YmE3OGNmOGNlYjEyNDM3MjcyN2ViMmYxMTRlIHJlbGVhc2UzMC1tYWludAorNjkyMTYgNWM3MDJhN2Q0YzQwOWFmY2MyMzFkOTNhZGU0OWZkZTc1MjE2MjA4YSBweTNrLWlzc3VlMTcxNworNjkyMTcgNDBmZjgzZTAyMzk1MzFlYzM4ZjZlYmQxOTRkOGQ3ZjYyNWQ2ZTlmNCBsZWdhY3ktdHJ1bmsKKzY5MjE4IDkwODIxYzdhZDg3NGY4OTMzNDc5ZDk5Mjk2YzQ4NDU0MTRmZDY4MTEgcHkzaworNjkyMTkgOTkxM2M0NzE1MjYxMDY3NDI2NTBjNjhiOTlmNGRhYWY0YWJiMGY0MiBsZWdhY3ktdHJ1bmsKKzY5MjIwIGZhZTE3NThhMjM0NjUxODcwMmUxZjk2NmM4ZDUzNjhhNmE1MDY5ZDQgcmVsZWFzZTI2LW1haW50Cis2OTIyMSA2MzBhNDM0NTFkMDRhYTBhNGRhMTQ1YTdlYmM4MTQyY2U2MjYxMzBhIHJlbGVhc2UzMC1tYWludAorNjkyMjIgYTk1MzQzOTFmZmY5ZjFjYmUwMTViYmVkZGQ5Nzg5NGIwMzYzYzg0YyBweTNrCis2OTIyMyAzNjJkOTZkYmU5MmM1NDEwMmYxMmYwNmQyOWQzZTFhMmE2YmNlMWM1IHJlbGVhc2UzMC1tYWludAorNjkyMjQgNzg2YzEyNzg1NzJjYzZmMzc4YjU4ZWUxMGRiMDEyYmZkOTU4ZjAxMCBweTNrCis2OTIyNSBjMjFkOGNkY2NhZTEwZTcyYzYxZTFlN2U1OTI5OWFmMDNhYmUzMmYzIHJlbGVhc2UzMC1tYWludAorNjkyMjYgMTQ3OWRiMmVmOWNkNTNiNWVmMTkwMTQ0YzRlNDcyZTE1ZDlhYWI1YiBweTNrLWlzc3VlMTcxNworNjkyMjcgNmM4ZWRkZjI0MDM1ZDM0Y2M5YzJkNmM5ZjJiMTdlMTRmYjI4OTI4YiBsZWdhY3ktdHJ1bmsKKzY5MjI4IGNhNzFhNDRkNTQzMjIyOWI4NzAzZmUyYzgyYzIxMzAxNzU2ZDI1Y2YgcmVsZWFzZTI2LW1haW50Cis2OTIyOSA2MjUxYjlkMzIxYWY4ZDk1ZmI0MjJhN2Y3ZDc0NWU2NWE3MmIwOTU3IHB5M2sKKzY5MjMwIDc0NDM4ZmMxMWQwNWRjZGE5N2EwOWMxMmY2MGEyZDk1OWY4MzY5MzcgcmVsZWFzZTMwLW1haW50Cis2OTIzMyBmNWQxNDM0ZjRkM2Y5N2UzYzM2ODJhNWM1NzEyZmQxNWExZTY2Y2Y2IHB5M2sKKzY5MjM0IDk4ZjRjOTA2ODc3NTA3MTBmYjRlMWE2Yzk2MmMwNDI1YTcxNDEwYmQgcHkzaworNjkyMzYgYzgyMDcyNTI2NWFiMTkwOTBiY2FkMTYxN2E5YmU4YWI2OGMyZWNkZiByZWxlYXNlMzAtbWFpbnQKKzY5MjM3IGQzZTZmMjYwMjMwMGNhZWE3NjVkNGEwNTEzMzc4ZjYyZDJkM2I2YWEgbGVnYWN5LXRydW5rCis2OTIzOCAzODgwYTE1OTIxMzdlNjhiODkxYzg0ODE3NmExOWUxNjY0ZjJlMmE2IHJlbGVhc2UyNi1tYWludAorNjkyMzkgNjc2NTQxMDZlZTc5NTc0YTZmNGE4OGQ4YzViNGU2YWZlM2JjZDhjYiBweTNrCis2OTI0MCA3MzU0ZjFhZmFlY2I0NWIxNDFhMDQwOTI5OGU3OTZmZjI2ZGIxMTBhIGxlZ2FjeS10cnVuaworNjkyNDEgN2JhNDFjMDkxN2ZmN2IxMDQwNmVmNGJjOThhNjRiMDk2MGU4MWI5NSByZWxlYXNlMjYtbWFpbnQKKzY5MjQyIDVjMjU0Nzk1YWEwN2E3MjcxOGNjMDZjODZmNjExNjhmYjE2ZDUxMzcgbGVnYWN5LXRydW5rCis2OTI0MyBhZWE5MGY1ZjM5OGJkZWMwYzNjYTM2ZTE3NjAxMjNjMmJiYTQyYjlkIHJlbGVhc2UyNi1tYWludAorNjkyNDQgYTFhNzFkNTE1ZGQyZmQ5ZjliNTBkOWEyZGZjZjQzMDVjODJkYzk5YyByZWxlYXNlMjYtbWFpbnQKKzY5MjQ1IDBmM2FhYmFlNGNjNjQ2NTk5MjI5Y2RhOWI1ZmRkNjE4NGYzYjAyNzcgcmVsZWFzZTMwLW1haW50Cis2OTI0NiA1YjcxMzA0NWVhOTA2ZTBmZTIxYmJmMWExNjRlMzE4OTM5YTA3MjFmIHB5M2sKKzY5MjQ3IGYzNzcyNzc0ODJhYjU4NjA4MDI3MjM1MDRjOTY0MWM4Y2M2NmJiYTUgcHkzaworNjkyNDggZjM1MWZiN2VhMTc5NmFjMDk0YWFlYWI0NmIwYzg3YTA1NmYwOTFkYyByZWxlYXNlMzAtbWFpbnQKKzY5MjQ5IDg1N2EzZjlkYTkxNTMxNTllNTIxNmZmZWJhNTNmZDdiMWJmMWQxMjcgcHkzaworNjkyNTEgYzUxM2U3MjhlMjRjYmY1NjY4ZDhkOGJhMDE2MWFkYzAzZTgyYzE3ZSBweTNrCis2OTI1MiBlMjBmNWE2ODRhZWZhNTg4YjQ1MGIzMzBhNGI2YTFhMmNiNjVlYmI5IGxlZ2FjeS10cnVuaworNjkyNTMgZWM2OWRiMjRkZTE5MGE3ZTkyMjQzZDA3NmQwMTgwMzViOGNmMmJhNCBsZWdhY3ktdHJ1bmsKKzY5MjU0IDhiMDg4MmM2N2I2Y2ZlMWYwODUyYzYyZTBhMWMyZGJhNGZhNDE4YzAgcHkzaworNjkyNTUgZTVhYmFmYWUzNjA0NWM1ZWJiY2Y0MjcxN2UzYTdhMDE2MjQwYTFlOSByZWxlYXNlMjYtbWFpbnQKKzY5MjU3IDc1NTIxYzEyMzYxM2FjYWJiN2VkZjJjYzRjNGY2MjkzNjUyNWZiYmYgbGVnYWN5LXRydW5rCis2OTI1OSA1ZjMzNTRjNTJlOGI4YWFhZTRhMTc0NDQ0MmViYjMwNTllYTI0NzA3IHB5M2sKKzY5MjYwIGU5NzA3Y2MzNjg5ZDM4ZGJhYWQwMGU0OTQ3ZTMxY2I1OTJkM2VhYWUgbGVnYWN5LXRydW5rCis2OTI2MSA4YzAxOTg3NzRlZDZkYWJlZjNmZTVhY2FjMzI5YTlkNWE0NTkzOThlIHB5M2sKKzY5MjYyIDFlN2EwNmE3ZjVlNzhiMDc1MWNkOTQ1NjM5MzVkNWQ3NTY4Yjc5NjMgbGVnYWN5LXRydW5rCis2OTI2OCBiNTg2Y2EzYTMwNjIyNTJhYTk4YTYyNDU3MWZiNzBlYTg4OTBmMDY4IGxlZ2FjeS10cnVuaworNjkyNzEgNDg0NWFiZjU3MmYxNDZiODRmYmE2MjEzYTE0MTFjZWRmOTc2NTMxMyBsZWdhY3ktdHJ1bmsKKzY5MjcyIGVjNjM0ZTU3YmM1ODYyMzY3YzBmOGJlODkyMTA0Yjc5Mjc0OTBiNTcgbGVnYWN5LXRydW5rCis2OTI3MyBmNzQ1Mjg3NzZjMTE1ZjQzZWExM2VmMDJkZjNhNGViMjM2YzJkZTE2IGxlZ2FjeS10cnVuaworNjkyNzQgMjQ1NjZlNDk5N2FlMmY2NzVlNmJjOGZhNTAwNDEyNjhhYTgxZDdlNiBweTNrCis2OTI3NSBjZTA0ZTM2ZjJhNTU5OTI5NmI0NzRjZGJhNzEyYjlmMjZkMmQ4OTg1IHJlbGVhc2UyNi1tYWludAorNjkyNzYgMmI2MDNmNzIzMjYwNWRmMzU3ZmYwMDU1YTdlNTMwMzU1NDBhNTI5YSBsZWdhY3ktdHJ1bmsKKzY5Mjc3IDQ3M2ViMzcwZGUyY2ZkNjZhYmZiZmY2MWZmNTc3Y2YwZmNjYzc2MTYgcmVsZWFzZTI2LW1haW50Cis2OTI3OCBjOTFiNzZkOGVjMGE5NzE2NWU1OGM5NjBkNmE3OWI5MWVlOTMzY2ZiIHJlbGVhc2UzMC1tYWludAorNjkyNzkgYWEyZWIwZjI0MmZmZDk1ODhiY2M0NzEyODI2MzIwOGM3ZWRlNjQzZiBweTNrCis2OTI4MCA4ZTE1ZGYzNzI2ZTEyMDlhMDFiMTNmMTJlZmU4YmIzOTU3ZTdiZTlkIHB5M2sKKzY5MjgxIDUzZDY0NDVjNmM1YThkOTg2MDNlN2MzZDMzMzg4OWU5YWFmNTRhOTEgcHkzaworNjkyODIgYjQ2MTg1ZDdlOTVhN2EwYzMzMWYyNzY4MzRmZjVjYjU2YzAyMDY1MCBweTNrCis2OTI4MyAzNzhhYmIyODFlMzE1Y2QwODQwMGRiZjI0ZjVmMjk2YzUxMmU0ZDdiIHB5M2sKKzY5Mjg0IDhiMThiMzg5MGUzMTYwOTRjZGQwMWJhYzcyMDIxOTU0Mjc0NWE0YzkgcHkzaworNjkyODUgZTIxNGJkZDU1MmZjMjZmNGY2YjJjMGNhYzYzNGY4ODJiNjg4ZDYxMCBsZWdhY3ktdHJ1bmsKKzY5Mjg2IDVhOTQyNDg5M2I1ZmQxZDZlYzU4OTQzZGQyMWY1YWM0NjhiNGQ4ZDMgcmVsZWFzZTI2LW1haW50Cis2OTI4NyAyMzMzYTU3ZmViOTg1MDJkZTBiMGFiZjIwYmJkMTNlM2UwMWQ5MDM1IHB5M2sKKzY5Mjg4IDFiMjMzYzgzZjJhOWI4MWFjZjBlZjJmZDQ4MjlmNjQzZjVlODM5ZTkgbGVnYWN5LXRydW5rCis2OTI4OSBjYTQyMzAwOGZhNGFlNjUwZmMyZGQwYjNhMzU1ZTg3Yzc2YmEzNjRhIGxlZ2FjeS10cnVuaworNjkyOTAgOTIxN2IzYTQ3NTI4NjI4MGYwNjFhN2FmMTlmNDY3ZDc0OWEyMGQ0NiBweTNrCis2OTI5MSA0NDUyZWIwNTdjYzRjZGFlZDRmOWU4MTU2Yjc0MWIxNzJmNTgwZmI3IHB5M2sKKzY5MjkyIDNmMjc3YjU2NWY3NmVjNjhkMjdmY2RlOGE3ODY3ZDY4ZjhkMzQwZGUgcHkzaworNjkyOTMgOGFhNzFjMTlkY2I4MDhjYTgxYzZjMmMzZDFiNGExNzU0OGZkOWJmNSBsZWdhY3ktdHJ1bmsKKzY5Mjk0IDE4ZDM3MjllMmJhYzAxMmMyN2ZiN2IzMWVhNzU3MDFjYTk2ZTgyMDMgcHkzaworNjkyOTUgYjEyNmNlNzA3YTM0NmU4MDNmNzM3ZGNiY2I4NDg3NDc4NTliOWRlZSBsZWdhY3ktdHJ1bmsKKzY5Mjk2IDUyZjc4YmIyNmJmNTBmMzRlNmMyYmJmMDA1ZWIzNDViZGUwZTc0NjkgcHkzaworNjkyOTcgZWVhYTI1OTA2OWEzM2JmOTIwNWJjYjBlMjNjZDA5YWE5ZTE4Y2ZiNSBsZWdhY3ktdHJ1bmsKKzY5Mjk4IDhmODkxMGYzYjY1MWMyODNlZGE0NzlmYWVmYTM5NmZkYmExNjNjZjUgbGVnYWN5LXRydW5rCis2OTI5OSA4Yzg4MGJiYmU2ODVjMjIwMTYzZDE2YmQxZDIwZGYzYjgyNDg5Mjk4IGxlZ2FjeS10cnVuaworNjkzMDAgMGM5ZDU5OTgzNGI4YjRjYzRjZWVhMWMwNTRlZmFkMTkxNjg2YWY4NyBsZWdhY3ktdHJ1bmsKKzY5MzAxIDQ1Nzk1N2E3ZDZiYTliYWY5YWNiMjA4Y2FhMGUyMjY3NGEzZGE1MWMgbGVnYWN5LXRydW5rCis2OTMwMiBmNDAxMmU3ODI2MGM1ZDkwNDRmMDE4NzljODc1ODk2ZDcxZWQ4YmIwIGxlZ2FjeS10cnVuaworNjkzMDMgYmYzYjhlMzAyMTNmNmFmZWU0MDA3NTk5YjYwMGE4ODRkZjVmOWE1OCBsZWdhY3ktdHJ1bmsKKzY5MzA0IGYwZTVmODU4OWEwYzNkNDY2M2NmMjUxOWI1MGJhZGU0Y2U4ZjdmNzUgbGVnYWN5LXRydW5rCis2OTMwNSA5MGE0YzY2NmY3N2E4NTczMjkxNTNlMDc4M2FiZTExNWViZDc0YjgwIGxlZ2FjeS10cnVuaworNjkzMDYgNDFjNzFhZDQ3Zjg5M2QzMmRmMDBmMjA2YjhkMmIxNTQxMDQ4NWYwYSBweTNrCis2OTMwNyAzMjFmMjdhNDE0ZTg1NGFkZWY1MGY0ZWQ4ZmMwNDRjY2Q2MGJmNTEyIHB5M2sKKzY5MzA4IDc2MjM5Nzk4YTYwODQ5ZDllYzM3YmI1ZTNlZTU2MjE1YTNhYjBiZmUgcHkzaworNjkzMTMgM2ZjMjVhZTE4OWU5NjhhNTA3NmZiOWFmMTIxYzgzNTZmNWZjNjgzYSBweTNrCis2OTMxNSBlMDVjNmJlNmFmMTAwYTg5N2I5M2I3NGEzNzNmMDcwY2U1YjY3N2RjIGxlZ2FjeS10cnVuaworNjkzMTYgNDY2ZWI5Nzg0ZThiYTkwOGFhNGI2MmU5ZDUwNDAxOTczODU5Zjk3YSBsZWdhY3ktdHJ1bmsKKzY5MzE3IGVmM2M2ZDliNGZlY2E2NzdiOTQ2ZDQ1MzgzZGYzMzRlY2NmYTMwN2QgcmVsZWFzZTI2LW1haW50Cis2OTMxOCA5OTdiMjYzMmM5Yjc1YTFjYjY4MjBkZTJhOGQxMjZjMTliOGEzYzVkIHB5M2sKKzY5MzE5IGZkZTAzZTc1YmMxMDBhZGRiYTNkOGU4OTI1NTExNWI2ZTQ0YzU2MDQgcmVsZWFzZTMwLW1haW50Cis2OTMyMCBkYzg1Y2E0MTIwNzlmNzgzYWRhYjIzMzVkODFkM2Q0ODBlYmE3MjYwIHB5M2sKKzY5MzIxIGU1NDI1YWY2MGYzMDQxNjE1MDcyMDMzYTkyZDM1MzBmZjIwMWI3MDIgcHkzaworNjkzMjIgYTE4OTNjNjkxODc5NGQwZjRiMjcxZWQ5ZTJiZmZjNzk2MTYwOWZhZCBsZWdhY3ktdHJ1bmsKKzY5MzIzIGU2YTE0Njg4NTgwZWY0ZGQ2MjdlY2JhNmI0MDc2NTI0MTk0ZDZhMzUgcHkzaworNjkzMjQgNTBkODk0MzZhZWFiNzNkZWViMGJhMzdmZGRmNjAwYjRjNjRiYjg2MyBsZWdhY3ktdHJ1bmsKKzY5MzI1IDE2NzEwMDQ4MzlmOGJmZmUyOWViMDdlYjhlMWYxMWNlMjFlYjk4ZTYgcmVsZWFzZTI2LW1haW50Cis2OTMyNiA3ZTFhMzg1ODQ3YTk4ZGI4ZjUzNWRlZjI4NjA2NDg5YmU1NjVlNjE2IHB5M2sKKzY5MzI4IDM3NDMxY2QxMmJmMjc0YWRjNjk4YmFlZTNmZTcwMWNiYTllYjRjNzQgcmVsZWFzZTMwLW1haW50Cis2OTMzMCAyMWMzZTM1MzE1MDQ2MzYxYTAwYzdjZTNmZDUzMjkyZmJhMGZhNTAxIGxlZ2FjeS10cnVuaworNjkzMzEgZTIzOWU5NzdiYjMyYTJkM2E2MTYyMGY2MDUyNDViZDVkMjdiOTljMSBsZWdhY3ktdHJ1bmsKKzY5MzMyIGEzZWE2NWJmZTM3MDZhNDZlODU4OWIzNTFiYTA0MzllOTFjZTVhMGYgbGVnYWN5LXRydW5rCis2OTMzMyBmNzhkN2ViYjk2ZGE4NGM2Mjg1MWM1Y2IyOGMxMGZhMzFkNjI2N2JlIHJlbGVhc2UyNi1tYWludAorNjkzMzQgYzUwMjJiMTA2NGVhNjZlZTM1MDdlZTBhNmFiMWEzMDk1ZmM5ZDg2NyByZWxlYXNlMjYtbWFpbnQKKzY5MzM1IGU0MzlmOTcyMmE3MzQ5ZGZmZTVjZmIwNzI4MmIxOGNhYzQ4OGUyMjkgcHkzaworNjkzMzYgNTQwZmJlNWM4MTYzZjQ5OGY2ODA5NDJlYTZkNmZlYTZlMmNkMDg3YiBweTNrCis2OTMzNyA3YjhmYTI2NTI4NjY5MTA3ZDFiZjM0MzEzY2M2YWI4NTk4NmQ5Mzg0IHJlbGVhc2UyNi1tYWludAorNjkzMzggZGI4ZWZjOTQwMTZmNGRkY2MzYzIwOTY3MmUyMGVlNTkxZWM2YWRhMyByZWxlYXNlMzAtbWFpbnQKKzY5MzM5IGQxODU1MDI5OGFmODc3MzAwZjM0NTExM2ZkNmZhMmEzNGNlNzQ5ODggcmVsZWFzZTMwLW1haW50Cis2OTM0MiBmZGVjYjkxODI2MDQwZGZhNzY5N2NjNjJlZmRhNzFlNjY4ZTAwYzJmIGxlZ2FjeS10cnVuaworNjkzNDMgMTNmMTM1MmEzZjg3NDNlMzljNjJhMGJkYjZkMTUwZDUwOGQ0ZDA4NyByZWxlYXNlMjYtbWFpbnQKKzY5MzQ0IDIwNzA5NzY5MTk3Mjc0YWIwMjJkYTU4MDcxOTc2N2U2OWNkZDE0YjUgcHkzaworNjkzNDUgOWM0NmQxMDkwMDdlNmM4ZjJkOTk3OTYyMWQ4OWRkNjUxMzc5NTJhNiByZWxlYXNlMzAtbWFpbnQKKzY5MzQ2IDRjYzQ5ZDk3OGVjMjNhYTU1ZmJhYTMwYWFmZjgzZWVlZjM0ZDc0NDAgcHkzaworNjkzNDcgYmJjMWM2ODE1M2FiZGViMmU5NzRjYzBkZjI3ODNkMGE5MDU4ZGFiMyByZWxlYXNlMzAtbWFpbnQKKzY5MzQ4IDBmNzUxMTUzMzA3ZjQ2OWUzZGMwYTgyMDlmNmZhNGNiNWMyZjMwOGYgbGVnYWN5LXRydW5rCis2OTM0OSBjNGM2MTJkOTVhOWI2ZDk2MzYwNDkyNjdlZDE1ZmM2Yzk2YWNlN2YyIHB5M2sKKzY5MzUwIDdlMjhhMmIwYzFiMWYxOWI1M2U4MzRmOGM3MjNiMTM4YzFiZTY2ZWQgcHkzaworNjkzNTIgYTAwZTVkY2VhMTZjOGUwNDg4NDVmOTFjMzkyOTc5MjAzN2NjMDcxOCBweTNrCis2OTM1MyA3YTA1MjU2MTM2NDQ3ZTBlNWVjMTI1ODE0M2Q2OTIzMWJkYmRjMjVkIHJlbGVhc2UzMC1tYWludAorNjkzNTQgZjk4MWUwNTU3YzM1MDdjYjQ2ZjVjOTk5YTg2NjhmM2RmZjBjOWE2MiBweTNrCis2OTM1NSAwNWQxY2IwNTNkNDdlNGZjYWQ4MTAyNTQ3MTFlOTllZjFmODEzMmVkIHJlbGVhc2UzMC1tYWludAorNjkzNTYgY2M4MjUzMTE2Mjc1ODBiMTAxNGEzMGJkYjg1ZjdjZTllYzZmN2YxNCBsZWdhY3ktdHJ1bmsKKzY5MzU3IGYzODc4MzRjZTVkY2QzNGU3MTMxNjI2ZDYzZTI1YWI0YTg2OTViZmQgcmVsZWFzZTI2LW1haW50Cis2OTM1OCA1NGU0MDljMmY0OGQ2YTEyNjBiMTQ4NWFkZDkwZWE4NzA5NWU4NTAzIHB5M2sKKzY5MzU5IGZiNDUxMTFmMjQ0ZWI1ZTlhYzYyMzhlMjA0NjRkODNlOGI3YTZkNzUgcmVsZWFzZTMwLW1haW50Cis2OTM2MCAxODNhNmMyOWJmOWMxOGRmNTliYjgxMmU4NzY2YmFlOWIyOGU2MDBlIGxlZ2FjeS10cnVuaworNjkzNjEgNmY0MDc2OGQwOTA5ZDY5YTQ2MmU1NGU0NjFlM2FhOGU0OWQ3ZDU1MiByZWxlYXNlMjYtbWFpbnQKKzY5MzYyIGI0ODIwZmNlZGEyNDFiMjVkN2Y5MTYwZjI5ZGZkZjI1NTBmMDgxMzMgcHkzaworNjkzNjMgZGI0NmY4MmQwYTFkMWRlNDM2ZDJmMWIwNGYyZjBiNmNlNDVkOWU3YiByZWxlYXNlMzAtbWFpbnQKKzY5MzY0IDQzMjdkZmE2ODExOGY5OWIxYjk3ODAzNzIwY2Q5NDkyYTUwNDdiYzAgbGVnYWN5LXRydW5rCis2OTM2NSAxODIxMGFmZDAwNWE3MTA4NDViYjQ2NTAzODIyODViZTc2MDI3NzIzIGxlZ2FjeS10cnVuaworNjkzNjYgYzlhZmZiYTA2OWVhZTU5NTQzNjVlZTQxOTY1NDVmZDgwOWJkOWQ2ZiBsZWdhY3ktdHJ1bmsKKzY5MzY3IDI4ZTQzMGYxNGMwZGNmNDMzNzYyMWJhYzdhMjhmZDNlNDEyZjFiNzEgcmVsZWFzZTI2LW1haW50Cis2OTM2OCAxOWRiMzc5YmFjZjgzMzc3MjgyYjIxNDdiMjdkODIzNzM2N2U0YjI1IHB5M2sKKzY5MzY5IGYyZGYxMGJhNjA1NDg1ZjNkMDYyOGQyNTQ0NDAyZmMzNGExN2IxOWEgcmVsZWFzZTMwLW1haW50Cis2OTM3MCA5NmZlNDVkZTdmMjZmZWZhNjVkNThlZGMxMjgyZGIzYzVhNGVmNTc5IHB5M2sKKzY5MzcxIDFjZTAzNmI4ODA5MzY0MDFlYTE1OWJhZWRmYzI5MjNiZTUxNjc2MzggcmVsZWFzZTMwLW1haW50Cis2OTM3MiBkMWU1NDA3ZDU1MDliYWQ4Y2YxNzY1NzNmOTU5ODEzOGMwOTk5Y2Q0IHB5M2sKKzY5MzczIDQyZmFhODA1NGMzZGNiYTJiMTY5OGQxYWE4YTY1YWI3MDMwZTY4MjUgbGVnYWN5LXRydW5rCis2OTM3NCBiYWE4OGU5ZTk3NjZjYThkOTI0NjVhMTMwODBkNDVkNWM1ZGJjYjc4IGxlZ2FjeS10cnVuaworNjkzNzUgMmE0MGQ5ODFjNjUyYTJjM2NlZmE3Yjg0YThiZTM3YzkwZmFkOTljMCBweTNrCis2OTM3NiBkNDYxM2U5NzA0OThhNGFiNWU2Y2E2YTQ4YjY1NjE1MzVhYjViMDY5IGxlZ2FjeS10cnVuaworNjkzNzcgOTg1NmM0ZmFhYzA0ODFiZDcwNGZlMzI2MTBkYWQ5ODA3MzI0ZjNlYSBsZWdhY3ktdHJ1bmsKKzY5Mzc4IGI0ZTE1NGM4YTM4YTU1YjdjOTIyNzc4Njg1ZDJmMGQ0YjU3NzU4Y2YgcmVsZWFzZTI2LW1haW50Cis2OTM3OSBkMmRlNWRhMGY1NjM0ZmI4M2ZkODY4MDg1YjhjNTMzOTMyMzU3ZGEwIHB5M2sKKzY5MzgwIDU4YjdkYzljOTU1N2I3YmQ5MmQ0OTdkZjEwMTY1ODVhZjgxZWQzOWIgcHkzaworNjkzODEgYzAyODk1YTNlZDZkNTdmM2Y4NmI0NGMwNmJlNzBiZTI3YzZmNDgyNiByZWxlYXNlMzAtbWFpbnQKKzY5MzgyIGUxN2IzN2MzNWM3YmIyNDA1MWRjOTViNWI0OWNjMmM2NjMwYzlkYjAgcmVsZWFzZTMwLW1haW50Cis2OTM4MyAwM2FkZGQxNGU2ZjJjMzFjZTdmOTVjODMyMzhiMmU0NGQ1ZGE3NDk0IHJlbGVhc2UzMC1tYWludAorNjkzODQgODE5NzE2NmFhMTliN2RjMzNlNDdjOTBjMzgwZTY2MmM5NjRmNGJlZSByZWxlYXNlMjYtbWFpbnQKKzY5Mzg1IGE3MTMyZGI2OTA5MjE4ZjAyMWUwM2YwMTQ1OTJiNmI2NzUzZTFhMzUgbGVnYWN5LXRydW5rCis2OTM4NiA3YWQxYWI5OTA2ZWU1YWFkOGRmZjg0OGVmZTliZTE3MjIyN2FlZDk0IHJlbGVhc2UyNi1tYWludAorNjkzODcgYjA5MWJmODM0MjI2YTM5YTAyOTJkZDBkNGVjYzVhZTkyYjQzZjk0NCBweTNrCis2OTM4OCA2ZTkzZGQ1NzhjYjg2NjBmZmUwYTE4YmMxM2IwODhkYTc5ZjBlZTcwIHJlbGVhc2UzMC1tYWludAorNjkzODkgMDE1MWM1MTRkZjU2OWVmMWIxODUyZDRmZGE3ZTEzYzczY2I0ODVhZCBsZWdhY3ktdHJ1bmsKKzY5MzkwIDIwN2QwZWE5NTNkZjE4NTUwY2ZkNzBkYTAwOGJhNTUxZTQ4ODI5ZmMgcmVsZWFzZTI2LW1haW50Cis2OTM5MSAwYjM4MWI0MjNjZGY3MjM5Y2MxYjE4NzcxMzQ1NDNiM2ZkYzMxYWY1IHJlbGVhc2UzMC1tYWludAorNjkzOTIgNjZlY2ExM2VkZTE4M2MyZTI4MGRkOGFhNmJiZWQzODgyNjM2ZjkyYSBweTNrCis2OTM5MyA4MTE1NDY3NzBkMjBmNjBjZDQ0ZjgyNzkxYjQ1Mzk4MjU2MGEzNDAwIHJlbGVhc2UzMC1tYWludAorNjkzOTQgNDgwOWFmYTg1YTliNmJlOWJhNjMwMjkyNGRlMDViOWU3YWRmZWZiZCBsZWdhY3ktdHJ1bmsKKzY5Mzk1IDdhMTM1NmQyYWVlZjMzYjg2MWJmYjY3MDJjYzExYTg4MmU1ZDBjNjIgcHkzaworNjkzOTYgYWI2MGJkYzcwNzEwNmI5OGUxYjU2Yjc1NThkOWUzN2IzZDhkYjE1ZSBweTNrCis2OTM5NyA2NmRhNTI4MzMzNGYwNjFiMWQzODA1YTZkZDdhMjIyMzM5NGVkMjNiIHB5M2sKKzY5Mzk4IDM4OTYxMzNjOTVjYmE4ZmNkMDBiNDgxMmQ5NDc1ODMzODdlYTQzYTYgcHkzaworNjkzOTkgNWNkYzVmMGMxMzRjOGU2NDU3ZjQ0ODAxOTA2YzQyNzFjYjk2NTBhOCBweTNrCis2OTQwMCAzMjk1NzkwYTY1YmU3ZmNhNzlhODk4ZGJiZDk2OTAwNTNjODExNThhIHB5M2sKKzY5NDAxIGJjNThhNjFmODE3YmY5MjhmYjg2N2FkYTEyNzZhMTljMzM2NThhYjUgcHkzaworNjk0MDIgNDNkM2E5NWVkNjYyMTk3MjAwMWZkYjAzYzVmN2U5NjRiODJiYjFhNSBweTNrCis2OTQwMyBlZWYzOWI0Mzk2ZmZlNDYxZjY1NmUzNGExNzgxZjgxZDk1MjljNDFmIHB5M2sKKzY5NDA0IDJmMWVmZmYwNjZiMzg4MmQ3MDMxYzA3ZTE2Yzk2NTY0YzliZjgyMWUgbGVnYWN5LXRydW5rCis2OTQwNSAwMjUwNzg4MjdiNTQwODZjNzE0ZThiNzJkYjNiY2RmMzJkYmU4ZTM1IHJlbGVhc2UyNi1tYWludAorNjk0MDYgOGNkOGUyMzY4ODIyMTFlNGJhODYzOTY5OGIxMTc5MGVkMTE0YjRhOSBweTNrCis2OTQwNyA5MmZhMzliOWFmMTNjODM2MWQ1MjQ3OWJlMjY5Zjk0NmZiZWI1NzRkIHB5M2sKKzY5NDA4IDg3MzE3YTg4OWRiMDQ0YTY0MTY2ZjhmNjRmYTIzOWZiNjZhYzE4NzcgcmVsZWFzZTMwLW1haW50Cis2OTQwOSA2OWIyNmU5OTBlYjg2MTBmZDBhZWY5MDViNGE4NjUxOGEwYmE2ZDljIGxlZ2FjeS10cnVuaworNjk0MTAgOTllMjY0ZmUyMzgzMGIzYzZhMjM1ZWNhZDZiNWM0ODZiOGRmZTg3MyBsZWdhY3ktdHJ1bmsKKzY5NDExIGMyMWZiNWVmYzYzOGRhMjVlZjQxODZlYTFkYmU0NTVhYTJhOTQxMzAgcHkzaworNjk0MTIgOTAxY2IyMDdiMWQzMTdlNjhlMTgxODUyNzdjM2U4MzMzZThhNTE3NSByZWxlYXNlMzAtbWFpbnQKKzY5NDEzIDQ5NGRhMmM3MTkwMmQzYjZhMjkyZjRlOTk1MzgwN2ZkZjVkNTI4NzAgbGVnYWN5LXRydW5rCis2OTQxNCA5ODk5YWZlMGZmOGMxOGNmZDkzZWNkZGZjMTIwYTg2ZjgwOWUxNWQwIGxlZ2FjeS10cnVuaworNjk0MTUgMGFiMzY3OTZkZDc5NTg5MGM4YmM2NDA2NzM4MmZiNTNmNDNjZDgzOSBsZWdhY3ktdHJ1bmsKKzY5NDE2IDMyMGNkNzFlMmM1NjJjYWQ3M2E3ZDljYzBkYmZlZmUwNDU0ZWI1MzEgcHkzaworNjk0MTcgMTAwYWU2YThiYzJkYjM5NjdjZTY4YzUzZGM5ZTlmMTg4MDRkMGNiMyBsZWdhY3ktdHJ1bmsKKzY5NDE4IGNjYzcxODhmZGQyOGZjM2QyMjA3N2NlMGIwNGE2NzVkOWQ5NDYxY2IgcHkzaworNjk0MTkgNWNjZTk5YWExZjU4YWM3YjkyMTNlM2Y1MjI1MmVkNmI4NDhkZGY0MiBsZWdhY3ktdHJ1bmsKKzY5NDIwIDU3MDhhMWUwMTY0NTkwZTYwOTQxYzQwM2JhYjIxMzYxMmNlN2IyNmMgbGVnYWN5LXRydW5rCis2OTQyMSAyZDM1NGY0ZDc3YmNiYzZjNzVhNzQwZDhmYjUwZjhjODdlNzRiNmY0IHB5M2sKKzY5NDIyIDE3NThkZWQ0NGI0ZTBmYmI0NzFlNjEzZjc2OTBhMmVjNmYzMThlNzUgcmVsZWFzZTI2LW1haW50Cis2OTQyMyBmODVlY2Q3NTY0MTE0YTIwMjAxNGE5ZjQ1YWE0ODI4MjQyNjdlYTNhIHJlbGVhc2UzMC1tYWludAorNjk0MjUgMTE3ZTE1MmU1MTNhNjUwY2RiMTg0MjQ5NWVkM2JkN2MyYmE2MjdhOCBsZWdhY3ktdHJ1bmsKKzY5NDI2IDc0ZDE5NmM1NDJmNzhhYjhhOTQ5Y2U2Zjg3NjJjMDE4MmZhMzc1Y2MgcHkzaworNjk0MjcgMWNjNjFjNzliOWNlYWZhZjJiMGUzZTczOWM0ZDY3MWYzMmYzZDhhMiByZWxlYXNlMjYtbWFpbnQKKzY5NDI4IGU4ZmExMGM2NmQxODNlMGU5YjdiN2I2M2RiNmI5NGM2MjY0NTEyNTIgcmVsZWFzZTMwLW1haW50Cis2OTQyOSA1MDFiMWYwMzVmMjk5MGI4MmM2ZmI2Zjg1ZjYyYTg3OTBlMmFjZjAyIHB5M2sKKzY5NDMxIDBlZDIyZjFhZWQwNDYzOTQwODBlOWVhYWViNTZlZDhlMWVhMzE2OGQgcHkzaworNjk0MzIgN2JmYTY0NDkyZDAwMTYwYTRlMGY3NzIyNzI2Njc1YmJjMTFjZWM4NCByZWxlYXNlMzAtbWFpbnQKKzY5NDMzIGM1OTM1Yzc0OTdmYjYzMWY0MWQ2NTY2ZDAzZGQ4MGY5YjJkYWU2NzAgbGVnYWN5LXRydW5rCis2OTQzNCA0YzdlZDQwZGI4MWVhYmFmYTkzMGQ0NmQ2M2RmNzcxYzQ4NTg2MmQ0IHB5M2sKKzY5NDM1IDBlYjQwNWQwMWUwODNkM2UwNjZlODgxZWZlMzMxZTljYzA4NzVmOTMgbGVnYWN5LXRydW5rCis2OTQzNiBiYmI4MzUwZGRiZDI1OWQxNmZjN2ViYTA2OWE3ZTQ4NTBhYTBkYTA3IGxlZ2FjeS10cnVuaworNjk0MzcgNTg0OWE0ZjkwNGEyYTAzMjU4ZmQ4Y2JmYzJlZDRiNGJkNDM0YjgxYyByZWxlYXNlMjYtbWFpbnQKKzY5NDM4IDk0NWNiOTViMzViZjU1Y2FiNWViYjA0YThmZTlmNmEyMzQ1OGVlMDQgcHkzaworNjk0MzkgNDMxM2I0ZDRiZGM3M2QxNmJmZTU5OTI4M2YyMTRiNGI3ZjMyZDk2NCByZWxlYXNlMzAtbWFpbnQKKzY5NDQwIDIyNGQwZWZjYmY2Yzk0OGQyNzEyYzljOTQwZjJlYjZhMzQwNGJiMjUgcHkzaworNjk0NDEgZmQ3NGIwYzA2OTI3YzkwNDkyMzIyMjFiN2U3OTc5YWM2NDBkM2Q2NyByZWxlYXNlMzAtbWFpbnQKKzY5NDQyIGMzMzJmN2I0NTY0NzIzY2EwMzFjOGM0ZTM0YTBlN2ZjYmI1MDY3MDcgbGVnYWN5LXRydW5rCis2OTQ0MyA5OTRmZTRkZjRhZjcwZjU3YTIwOGMxODE4NTAyMzI3NTQ0Mjg0NTk4IGxlZ2FjeS10cnVuaworNjk0NDQgNjU1MGRiNDkyZjI4OGE3NzJjYTZiMjU5NDZlMzIxN2FiYmRjZmMyMSBweTNrCis2OTQ0NyBlNDkwMTNmMWQ4MzE0M2IxYTJiMjE0MWFmNDZlZDE3ZWFmNTllNzM2IGxlZ2FjeS10cnVuaworNjk0NDggYzE3ZjkyODFhODU2YjFkYTk5NTFlNGFiNDg1ZmE4MjgxMjQ5NTQyNiByZWxlYXNlMjYtbWFpbnQKKzY5NDQ5IDRlYTEyMjk3MzkxNDNlODUyNjFkYzcxNTIwNzIxYWQ5MTEyZGIxNzggcmVsZWFzZTI2LW1haW50Cis2OTQ1MCAzNmJjOGQwZTAxYmY3MzUxMTQ2NjQyMzE1OTdmODZjNDY3ZDczOGM2IGlvLWMKKzY5NDUxIDhjZmExMDhlN2JkYzNiOWM1NDBhYzQ2OTBmOWNiYTBmMjgwODY0NWQgcHkzaworNjk0NTIgZGEwMDcwY2Y0NjU0NGYyZDhmZGVjYzZjNzQwOWYxNjYwOTJkNGE0MSByZWxlYXNlMzAtbWFpbnQKKzY5NDU5IGU0MjNkMDdmMDhhZjBhN2M1M2ExYTk3MmI4YTZlNDQzZDA2NGFmZTAgbGVnYWN5LXRydW5rCis2OTQ2MCBkY2ZmYzcyMzgxZTczNGYzZGE3ZTRmMTM5ZWM3OWUyODlkNzIyMmMyIGxlZ2FjeS10cnVuaworNjk0NjEgN2JiZGNlNWM5MjUwNTI2MTUzNmYxMWNjNzkxMDFiZTJlZTE2MzJkYyBsZWdhY3ktdHJ1bmsKKzY5NDYyIGU0NTUyNTE5NTMxN2QzOTk0ZWIyYjY2MTNjZDg2ZGNkYWRkY2I4NGEgcmVsZWFzZTI2LW1haW50Cis2OTQ2MyA0NzI0NWFlMzIxMWJhNjllZDRkZmRjOWU3YzE3MGZjMjc3N2Q1YTJiIHB5M2sKKzY5NDY0IDY2M2NlNzRkNTE3NTdkNDYzNWIxNDhlNjQ5ZWM0N2E3MWQ0YWQ3MjggcmVsZWFzZTMwLW1haW50Cis2OTQ2NSBmOWYyZWQ3OWIwMGZjMmJmMTU4MzAyZjZjYzI0OTUwODUwNDUyMTAxIHB5M2sKKzY5NDY2IDE1NGU3YzQ3NGFhZDA0N2M5YmRjNWFjYWY5ZTU1ZGRmZTc1ZDQxY2IgbGVnYWN5LXRydW5rCis2OTQ2NyA2NzQ1YmRhYTliNDliNTkzNmRkZDg0MzAxMDhhYTJkZDcwMTI4ZWY0IGxlZ2FjeS10cnVuaworNjk0NjkgYWM2MjQzMmZiMzQxZDdlY2ZkMDk3ZDJhZmU5ZWIxZDZkYjA0ODQ4ZCByZWxlYXNlMjYtbWFpbnQKKzY5NDcwIGJkZGU0NGFmOTc0NDA2ZjM0ZTZiMTUwZDJkMTEwOGE2NDEzYTcyZGEgbGVnYWN5LXRydW5rCis2OTQ3MSAxYTdkZDlkMmU3ZWMzZTEwOWQxNTQ1M2QzYTU0ZDY0MjRkOGVhOGM3IHB5M2sKKzY5NDcyIDYyYTFlZDZlNjM2YWMxZTU2YTA1M2NmMDI4Y2YwOWU1NWJmNjM3ODggcmVsZWFzZTMwLW1haW50Cis2OTQ3MyBmYmJiYzI1OWI1Y2U4OGRhMjkyMzBjMGVlYzk1MDM2OTU5N2M3ZTgwIGxlZ2FjeS10cnVuaworNjk0NzQgZDdjNGQwNzFkYWZhZjE5YWM1YzJiMzFmNWE2MzM0OWI2OWQ2MzY2MyBsZWdhY3ktdHJ1bmsKKzY5NDc1IDI5ODgwNmY2NGRmYTM2NDZkOTMxMDU2YmUwNWQyN2EyNzc0ODg5M2EgcHkzaworNjk0NzYgNGU3YmE2N2NmYTA1MzczOWY3YzZlMDJjOTE2ZTY1ZTA4YWIzNjczOSBweTNrCis2OTQ3NyA4NzIxYzIxM2I2ZjQ0ZDBlNDk3MzcwZTdkNGY3MmUyMjQyNWNiNDJiIHB5M2sKKzY5NDc4IDg3ODIwZmM2NWQ3Yzk4OTkwN2RkNWRiZDNlNDNmOTZkMGY5Nzc2MjcgcmVsZWFzZTMwLW1haW50Cis2OTQ3OSBhOTBjOTI5OGRiYjQ4OGM5Y2MwYWEzMmRjZGU4ODRiYTA1Mzg3YmZiIHJlbGVhc2UyNi1tYWludAorNjk0ODAgYmVlZjg4MThhNjZjMjFiZTU4MTI3OGFjNjEzYWYxMjE0ZjgxZWUyYiBsZWdhY3ktdHJ1bmsKKzY5NDgxIDU4NGM0N2Q4YzkzZjFhNzU0ZmFjZDI3NmIzOWExMDgwNzFkMmUwNGEgbGVnYWN5LXRydW5rCis2OTQ4MiA1ZTdkN2ZkMWRhNWE3ZmFlYjVlNGJlYWMyYWJhZWYxNjRmMjZhMDA4IHB5M2sKKzY5NDgzIGFjOWVmNzQzMWM4ZjEzNGMyMDcyYmQ1ZmZlNzQ1YzkxNzhlZDAyMjUgcHkzaworNjk0ODQgZTc1OWRhOTNkZjY0N2YyNTJmYzQ1YzIxMTQyNjU0OTdkYTYwMmZjOSBweTNrCis2OTQ4NSBjNjFmMjRmZjA1NWU0MGQxMzMzY2M5MzhiOGMwYWM3YjA0ZGU0ZDIwIGxlZ2FjeS10cnVuaworNjk0ODYgMTMwN2E2NmEzOGY4ZDQ4N2YxNjRjMmFhNzdmZjI2YjlhZDU5MDIyYSByZWxlYXNlMjYtbWFpbnQKKzY5NDg3IDhhMjhkOTlmNzg0ZDc3YWM0MWZjNzFlM2I4YTJhNGI5ZTM1NGM2YTEgcHkzaworNjk0ODggMzQyM2Y2NDdiNTRhNjVjMmNjMWNkYzg3ODAyOTU0M2U2YWFiN2U2MyByZWxlYXNlMzAtbWFpbnQKKzY5NDg5IGRhYjgwNjM1MDM2ZTg4MjI4Mjc3NTViN2EyYzFmZDYzMmUzMDhmMzYgbGVnYWN5LXRydW5rCis2OTQ5MCAyYWU3NzBlZTYyODQxNzAxOGM0NzA4Y2NhYzhjY2E2NDYyZDIzNjdkIGxlZ2FjeS10cnVuaworNjk0OTEgMzg2NDIzODViMWUwYWYxNDMwYTgwMWNlYzEwZjczNWVhODNhNGM5YSBweTNrCis2OTQ5MiA2MzE2ZjM3NmI4MTRiYjFkZTNlMTIyZTBlMWVhZDQxYzExMDNiY2Q2IHJlbGVhc2UzMC1tYWludAorNjk0OTMgYmRiMWNhOWFiY2UzNjJkODhmODliYjE1NGY4NGJmMjlhYmRlOWUxZCByZWxlYXNlMjYtbWFpbnQKKzY5NDk0IDFmZWMwYmI1MDlhMmI1ZTQ4MmJkODcxNDE4MmViNjVhZjgxZTgxYmIgbGVnYWN5LXRydW5rCis2OTQ5NSAwNDE1NDE3Y2ZkNDgzYjk5ZmRkNDBiZjE2OTY0NGI2NWYzODNiNmQ1IGxlZ2FjeS10cnVuaworNjk0OTYgZjBjNzQwMmNjMDAwNjkzYTdjZDIzNDk2MzkzYmY1ZjJlZjRhOThhZSByZWxlYXNlMjYtbWFpbnQKKzY5NDk3IDA4ZTBmMDNiYTgxNzI4YzFlOGM1ZTNkYTJlM2QyNDRjY2U2MjRlOTUgcHkzaworNjk0OTggMjA2MDlmYzEzYTEzNTc1NGJiYzgxMTQ5N2Q0YTNmMzdkZWZiMjY0NiBsZWdhY3ktdHJ1bmsKKzY5NDk5IGEwMDc0NTQ4MDEyMGRmOTA3NzcwMDFiNDc1ZDhkZDRhNmQwYzBkZDIgcHkzaworNjk1MDAgMDU4ZGNhNzNlZTMwMjk1MWZlMGZkMmExODg5YmFmZDg0MDZjMjk1MCBsZWdhY3ktdHJ1bmsKKzY5NTAxIDk0ZDlkNTI1NDAxYzE2M2VmZGUwODljNjVlYzRjZjcyODU4MjMxOTAgcHkzaworNjk1MDIgN2Q2Y2RmMzM1YTU3MDI5MGFiMDhjMzIwYzI0ZjE4OTU4ODc0YjhjMyByZWxlYXNlMjYtbWFpbnQKKzY5NTAzIGZmYjljZjk0YzlmMTM5OWZiNjgyYTIyYzNlZDdmZjA5MDY5YzhmZTEgcmVsZWFzZTMwLW1haW50Cis2OTUwNCBmMzU4YmEzZDFlNTM2MzcyN2RjZjVlMjU3NjEyMDhmNjJlMWUzOTg3IHJlbGVhc2UzMC1tYWludAorNjk1MDUgOTViYjc3MzllMzg2Y2JiODkyNTViM2MxNGE5ZmZjMzk2ODFmODdmMiBsZWdhY3ktdHJ1bmsKKzY5NTA2IGQzZTg4Zjc3OGNkYzE2NWFkZTc3ZGFjMDYxOTVkNWM2YmU4NzhkMmEgcmVsZWFzZTI2LW1haW50Cis2OTUwNyA2ZGJlM2Y5YTA0MGNiOGU0ZTRkNjAzNTA3OWEzZGY1ZGUwYmExOTMxIHB5M2sKKzY5NTA4IDk3MmU4NjE3ZGZkYTZkODVhODI3MjdhNzY0MWYwMTMyZDFlY2VjMmEgcmVsZWFzZTMwLW1haW50Cis2OTUwOSA4MzUxNWJkMjg2MjZkNDI5NWZjYTMzZmYyNDAzMGUwODhkZTQ3ODM0IGxlZ2FjeS10cnVuaworNjk1MTAgNzJlZTQyY2M5NTMwZjNmNmY2ZmRkY2MwYzFlNGUwM2VlYWFlZjE2MSByZWxlYXNlMjYtbWFpbnQKKzY5NTExIDUxOTZlYWZjYmQ3MmM2MmVmYjIxM2I0YmZiM2YxNjFjZmY0ODhlYzcgcmVsZWFzZTMwLW1haW50Cis2OTUxMiAyOGJmNDU3ZmIzNGQwYjljMjcyNWRkMzFmY2NkZTgzZDI3ZGZjNDA3IHB5M2sKKzY5NTEzIGFmNDY5ZGMxNWZhN2JiZDk0ZGMxNWY3N2M4NmVhYzNhNTU5MzdkMTYgcHkzaworNjk1MTQgN2JiM2Q1MTViNjc3ZWFmMmRmZDJiZjYyMTc1MDBjZTJhZjBkZTVkOCByZWxlYXNlMzAtbWFpbnQKKzY5NTE1IDljMGE0ZmJiNTZiOTBhZDM3NDM3NDEwNDBhZDAwY2Q4NTEwNDA4ZmYgcHkzaworNjk1MTYgZGJkZDk0Y2QwN2ZiNDZhYzA1MjUyYjY1MWFiYzE5ZGJlMzMyMmY0NCBsZWdhY3ktdHJ1bmsKKzY5NTE3IDdkODk3MDY0YTZlZmI2ZDY3MjNmOWU5NWIyNDUwYjYzZmNlNTFiNWIgcHkzaworNjk1MTggNGQ5YjUyZmNiNWRmOWQ5OWQxNDJkNDQ1MWM5OTljMjk0MGVmNjk0MCByZWxlYXNlMzAtbWFpbnQKKzY5NTE5IGVkY2Y5OTZmMDdlOThmZmExODY0NmJjOTEwMmRkMzQzZWU3MTNlMjggbGVnYWN5LXRydW5rCis2OTUyMCAyOWE5ZTg1ZjMwYmY3Zjg3MTg1OWNkODUzZGU3YjYwMzQ4MTM5OWRiIGxlZ2FjeS10cnVuaworNjk1MjEgZDY5NzY5YjRmZDIwYTQ1ODIyNDk3NzIzNTQ0ZTliODk2ZTI3MWJiMyBsZWdhY3ktdHJ1bmsKKzY5NTIyIGNiZDUzZmY0OTU1NzBiOGE2NWEzOGE1NzU4NmQwZTgzMjI3ZDRkOTggbGVnYWN5LXRydW5rCis2OTUyMyBiMGRiMTA5MDg5Yzk2OGVkYjY4N2I0NmI4M2U0NDVhOWRhYjhhYTc0IHB5M2sKKzY5NTI0IDJhYzAyZGFlZjJlZTM4ZTk4ZjFhODA5ODI5OGJmODM3NDA0N2QzOTUgcHkzaworNjk1MjUgNDM1ODVkYmY2MWQ1N2ExODllODczMGNjNGQxYjVlZDFjYTZmMGM1MyBsZWdhY3ktdHJ1bmsKKzY5NTI2IGNiODE5MGExYmZhYjljNTM5ZjhlZmM5MzIzOGYyOTYwZDBhYTZjMjggcHkzaworNjk1MjcgMmJmNWVkNjcxZDAyYzExNjJiNjhkNmZkYmM1OWNhNzNiZDE4NDU5ZiByZWxlYXNlMjYtbWFpbnQKKzY5NTI4IGRmNjliY2NkZDM2M2JmMjc0MjA0MWViNTk0ZTA3YTY1NDZmMjdiOTAgbGVnYWN5LXRydW5rCis2OTUyOSA3ZDI5YzZlOGJhMDU1ODA3NTEzOWRmOGE4ZGYyZGIwNWFjZDVkMjlkIHB5M2sKKzY5NTMwIDA5OWU5NjA2NzZiOWYwNjRkMTlmMDQ2MWE4NDE1M2IzOWYwZDJiYzMgbGVnYWN5LXRydW5rCis2OTUzMSAxYWUzNGE0OGI3MzkyMDA4Yzc3ZGVlYzQ4OWQ4MzMxMmUwMWE5NjA2IHB5M2sKKzY5NTMyIDk2NzdkZDBiMDllNmI2MjdmN2E0Njc4MDAyZjc5NjdjYTNlNTYwZWMgcHkzaworNjk1MzMgN2ZhOGI3YTJmNTBhMjE1ZTQ3NjE2ZjJkZDg1Y2Q3YTQxNjhjMmQ1ZSByZWxlYXNlMzAtbWFpbnQKKzY5NTM0IDIxNzQyNWVhMjc2OWMyODE1NWMwOGY1ZWYzMDBjMDJhYjQzZjc3YmYgcHkzaworNjk1MzUgOTJkZGJhNTc3OWY5NDk0OGFiMzQ0NGIxNGI4MjE4NTYxNmM1N2I4MCByZWxlYXNlMzAtbWFpbnQKKzY5NTM2IDg2MTAwOGRlZWQ5N2EzZmQ4NzhjMTNlYmI5NzFiNzA1ZTQ2ZGQ1ZGMgcHkzaworNjk1MzcgNWI1MDExOTZmYzM4M2ZjMzIzYWY0MGZmODA4NmVkOWM1NzJmOWJmNiByZWxlYXNlMzAtbWFpbnQKKzY5NTM4IDY1OWQ4ODkwNGY1ZmIzM2U3MDYzZTgxZTE3Zjk4Mzc3MGZiYTUwNWMgcHkzaworNjk1MzkgMDhjYzU3NGFmNGY2MDllYzIyNzQ5YzlkMmNiMjk2Mjc1ZTI1MjE5MiByZWxlYXNlMzAtbWFpbnQKKzY5NTQwIDE4OTY5NmM0NmMwZTdmNGZhMjUxMDFmNDY3MWU0N2NkMjM3NDMwMTAgcHkzaworNjk1NDEgY2FiNGUyZTQ4NGEyYmU2MDhhZTJhMzZjN2I5YTFkM2JiZWFhODNlZSByZWxlYXNlMzAtbWFpbnQKKzY5NTQyIDgzYmQyZDE3NGNjOGQwMmU3MjVmMDcxNmZiNTM0MWYxM2ZhMjNmMTggcHkzaworNjk1NDMgMjdjNTg5ZjA5YTIxNzRmZjkyYzZhYzU2NTdjYWM3NDI2Mzg4ZTJhNiByZWxlYXNlMzAtbWFpbnQKKzY5NTQ0IDk3MWJiNDdmZjcwYjYxMTIxOTIzMTBmYTViOGVlZTNhZjk0NDNlN2EgcHkzaworNjk1NDUgYWNkYjMyMzQxZDg3YTMxNzk3OWZjNjkzODI5ODA3ZTY5YTNjNjA3ZSByZWxlYXNlMzAtbWFpbnQKKzY5NTQ2IGEwZDhjNjE2ZjM0MDVjYjk0MTJhOTJmOTc3YzIzODJlMWY2NzM1YWIgbGVnYWN5LXRydW5rCis2OTU0NyBjMDliNTAxNTE2YmQwY2M3NjIwYWZjMjBjY2Y2NDhlNTcxMDdkNWQ5IHB5M2sKKzY5NTQ4IDVkMjg0MDUwODBlZGZmMzkyYzc1NDIzYTVmYmQ2M2UxODZkNDg0MzQgcmVsZWFzZTMwLW1haW50Cis2OTU0OSAzMTY0NWVhZDRjMzViYjQzYmVlMmMxYWQwYmE5NmNlMzA3MDEyOTRjIHJlbGVhc2UyNi1tYWludAorNjk1NTAgOWE5MzJmOTJmMzk0OTk3YWIzNWQ4YmY5MmZmYzkwMDRkNmY1N2YzNCByZWxlYXNlMzAtbWFpbnQKKzY5NTUxIDY2NDFkODI4ZDc2MmQ2NTFjNWY5Y2EyYmJhMTcyOGZkZGNlNWQ1NmYgbGVnYWN5LXRydW5rCis2OTU1MiAxMzMyOGYxMWFkMjk1NjYxYjg5NDk2ZjVhZGNkNTFiZWUzNTc4ZGNhIHJlbGVhc2UyNi1tYWludAorNjk1NTMgM2VmNWEwYzVlNmI1N2ZkOTU5M2NjNThiM2I2YTUwYWMwYWJjMDRmYSBweTNrCis2OTU1NCBlMzc1MDcxZjk1MGVjNzU3ZWM5OTlkZjdkYzk1NWMxZGMyNjkzNGE1IHJlbGVhc2UzMC1tYWludAorNjk1NTUgY2UyOWZhZWQ3ZjY5ZTIwZDNiYzFlMmE5ODQxN2U3NjcwNzVlYmNhNyByZWxlYXNlMzAtbWFpbnQKKzY5NTU2IGU1MDJlMmJmMzVlODZkYmZhM2I1ODhlZjI4ODhlYmVhYTAwMzdlNzAgcmVsZWFzZTMwLW1haW50Cis2OTU1NyBjZDQyZTg1Y2FmZTdlZDZjNWMyZGI2NTgyNjc2YzE1YTY4ZTljN2JmIHJlbGVhc2UzMC1tYWludAorNjk1NTggMDdmOWUwMDQ4YjBiZGRmMTI4NmE4ZjFhYzg4YzJiOTMyY2Y2YzUwZCByZWxlYXNlMzAtbWFpbnQKKzY5NTU5IGUyZWEwZjgzZjAzOTQyYmQ4ZDEzZjhkNGEyOWIzNTdjODRmNWM0YzUgcHkzaworNjk1NjAgNjQ4ZTA3ZGQwODI1OGY2MGYwYTU5MzU1NjZmYzFjNGJkZTQ5MTUwNiBweTNrCis2OTU2MSAxZTdhYzE0ZTQ5Mzg3ZWI2NDQyMTFjMDU3NzNmMWI3MzA4OGIwM2NhIGxlZ2FjeS10cnVuaworNjk1NjIgZTZhOGExNjQyMzNhNDNiNTlkNDU1OTUzN2IxYjllODA4MTRmODNkOCBsZWdhY3ktdHJ1bmsKKzY5NTYzIDhkMzZhYjA5M2Q0NTZjMjRkMThlZGEzYmNkMDMyZWM1M2YyZTlhM2UgcmVsZWFzZTI2LW1haW50Cis2OTU2NCA0N2E3OWQ3ZWVlZGM5MDZkZmYzMGE0MDcwOGJjNGQ5Y2ZmMWExZWZjIHJlbGVhc2UyNi1tYWludAorNjk1NjUgM2JkNGFlMjZiMzY0OTdlZjhhOWJhMDQzYmNjOTE5Y2I3MWUzNjMzMiBweTNrCis2OTU2NiBiZDJiNzc5ZjVmMzEyMzQyNzc2YzA4ZjAxOTEwNTA3Yjg0MzQ1ZTQxIGxlZ2FjeS10cnVuaworNjk1NjcgMjEwMjc3NGU3YTJkOTNhMDNiNzgxNTU4ZGFiYzQ4NTE2MDQ3MDNlOCByZWxlYXNlMjYtbWFpbnQKKzY5NTY4IGI4ZjEwYzZmYWQ1Mjg1NDE0OGYyYWY3NWNmNGJlY2M0YTI2NTZjNmMgcHkzaworNjk1NjkgNzJmNmYxNzAxZWUxYWE0YjAzOWZjYzEzZDE2N2Q4MTk5ZmY4MzE2MyByZWxlYXNlMzAtbWFpbnQKKzY5NTcwIDdmNGExMTVhYWU2ZDk1NGRhMGI0NThkNzRjYmI3NDUzZTViZTM1ZjAgbGVnYWN5LXRydW5rCis2OTU3MSBhNDFlOGZmNjUxOGMyMDM1OWRiZGEyZjQxMjJkNzlmZjA5OTUxMDEzIHB5M2sKKzY5NTcyIDUyODUxYjlkOTc1OTAxMWRlZjg1OTk1ZTQ2ODQ2OWExNDkwMDgxNzcgcHkzaworNjk1NzMgMDk0NmNmZDY4NTc5OTk5ODdhNmIzOGE3NWYwZjY1NGEyNmM2M2FjYyBsZWdhY3ktdHJ1bmsKKzY5NTc0IDY4YjhhZjQ5NGJlMjgwZmUwY2I0NTc2MGVkNzg4ZDA2MjY4Y2E1Y2EgcHkzaworNjk1NzUgY2ExZDk5ZDlkNjkxZWRkYjM0ZjZkZWU1NzFlYTkwNjU2YWVjZDc5NCBweTNrCis2OTU3NiBjMDE0YTNiMWFkMzE1NWIxMmUzYTFkZGY2ZWI1YWI3NTE3MTliY2RjIGxlZ2FjeS10cnVuaworNjk1NzcgYTgzZjEwZWRiNmZmMTU5MjhhZmY2M2ZjOTNjZDdhNTJkNWM0OWRjNCBweTNrCis2OTU3OCBiZjQxOWNmZDdiMGFiOTRiMDg5OGYxZDg5N2IzZWI5MWIzNjQyZjcwIGxlZ2FjeS10cnVuaworNjk1NzkgNTEyYzVhNWRlMDBiODBiMjg5NjAwMDQxMjY0NjIzZGViNWM4OTRiZiBsZWdhY3ktdHJ1bmsKKzY5NTgwIDY5ZmRmODg4ZjExM2E3NmNjYjM0ZDY3MmI1OWZkZTU1MzFmOWRiNjMgbGVnYWN5LXRydW5rCis2OTU4MSBlYzMwYjFmY2MxYjNkZmY4N2JjNzMzN2NkNTdmOTRlZDgzODliNmYxIHB5M2sKKzY5NTgyIDVhNzJlZWQxZWIxYTc5NWY5OWQzOWZlOTZkMzk5ZDQxYTZjYzE1MzQgbGVnYWN5LXRydW5rCis2OTU4MyAwOGRmNGY1NTgzZmY1MmMyODRhN2JjZGExZDE4NjJhMTNiMWZhYmI5IGxlZ2FjeS10cnVuaworNjk1ODQgZmYwOTZkNmE5MjIyYmNiOTIzZDBiZGRkMGJjNGYxOWFhZmIyMTNjZSBweTNrCis2OTU4NSBjNmZmNDdiM2ViOTlmYmQyYjI0MmIwNmNiZWI2NzRiY2IzNmNjOTgyIGxlZ2FjeS10cnVuaworNjk1ODYgYTkzYjE5YTJmOGQ5MzQ5MThhOWQ2NTgwZmNmNzQwYTYzYmFiZDQ2ZCByZWxlYXNlMjYtbWFpbnQKKzY5NTg3IDQyODM4YjRkNmFhMWI3NjQyYTUwMzI0Yzk1ZTUyOTgzYzA3YTA1YTggcHkzaworNjk1ODggYWUxNmUyYjg2ZmViNTIyM2NhNzA4YWQzZmNhNTcyNTE4ZmZkZjkyMCByZWxlYXNlMzAtbWFpbnQKKzY5NTg5IDAyYzNlYjFjYTBkNWYwZDRlY2YwNzJkMTdiMmYzNTdmNGMyYmE5NzEgbGVnYWN5LXRydW5rCis2OTU5MSAwNTkwYzBiNzZlNjQ2MWU1YmNhNjYzNjhjMmJmNzNhZjcxYTc3YmNjIGxlZ2FjeS10cnVuaworNjk1OTIgODdhYjZiYzIxMzQ1YmFkMDg1NjYwYThkMGNjYTE4YzRiZTI5NDU0NiBweTNrCis2OTU5MyBkZmNmNjkwYTY3YzhlOTA5OTU3NWI1OTk3NjA5YTc3OGIwNmYyYjg1IGxlZ2FjeS10cnVuaworNjk1OTQgZDM2NjNmMDlkNzY0NWEzYzM2MGVkYWRmNzA4MTc3MTI2M2E3N2ZhMSBsZWdhY3ktdHJ1bmsKKzY5NTk1IDUxMjA3MGRhNzQzM2RkMzc4YmUyMmZkY2JmOGNmY2QyZTk4OWVmNDkgcmVsZWFzZTI2LW1haW50Cis2OTU5NiA2MTM1ZmY3MjQzZGQ3OTZlMjNjYzM1NWE1YmNhODgxMjUxYjE0MzE3IHB5M2sKKzY5NTk3IDhjYjhlY2NkNjYzMzljOTYzZWE2NDZjZTZlZjFlODE2NTgxMDRhZmQgcmVsZWFzZTMwLW1haW50Cis2OTU5OCA4ZGMyOGExMjZiMmM4MDFlZWEwMGNmMzhjN2MwMWY4MzZmZTdiZTJlIGxlZ2FjeS10cnVuaworNjk1OTkgOWM3NTgwNmJlYzY0YWY5MWU2ZThhYjk2MmQzNzZiZWQ0ZDc5NmRmYyByZWxlYXNlMjYtbWFpbnQKKzY5NjAwIDQwZWQ1NzgzZTI0YTJkYTVmNTRhMDU0ODFmMmQ2ODEwMDI0MGYyYTIgcHkzaworNjk2MDEgNjE2MTM4ZWVmMjI0YmNkMDZjODMzNDhhMjliNWI2ODBjZWFhMjJhMiByZWxlYXNlMzAtbWFpbnQKKzY5NjAyIGU1Y2EwYmRiMzkwZmQ3ODE1MzJmMjE3ZTRjMjA3YmM1MWFkNDNhNTIgbGVnYWN5LXRydW5rCis2OTYwMyBlOTFiMDRkYjZkMTk2ODBiMmViZTY4NWU0MTBhNmZlNGJkMmMyOTIxIHB5M2sKKzY5NjA0IGM1NjA3Y2Y3NjgwMTI3NWQ1NGIwNDY4NDNkMDRjN2U0NmNjOWY0NmUgbGVnYWN5LXRydW5rCis2OTYwNiA5Y2M3Njc1OGVlMDljMDc1MTMzY2I0Y2I0OTg2NGJiMjYzNTM4NDAwIHJlbGVhc2UzMC1tYWludAorNjk2MDcgMmEyNjNkNjZkNjU5NzgwMDE1ZjFlMzUzYmQxNjAxMzdkOTc3MmVlOCBweTNrCis2OTYwOCBmNDNmODY3ZDVlYjYwYTRkMzIzZTNjMmVhY2QwZmYwN2FjMmI2ZjRiIHJlbGVhc2UzMC1tYWludAorNjk2MDkgZTU1MjI4NzViOThjMjZhNjI1Zjc1NTM5MGM2ZjcyM2Q2M2YzMDAxZiBsZWdhY3ktdHJ1bmsKKzY5NjEwIDk0OThlN2Q1YjI2NTk5ZmU2YWY2ZTJlZDcwNzFlNDkyOTBhZTJiMDQgbGVnYWN5LXRydW5rCis2OTYxMSA2YTdhMGUxZTI3YmMwNDQ4ZGUzODlhMThlMWE3NzMxMTA4ZGRhMmViIHJlbGVhc2UyNi1tYWludAorNjk2MTIgNzFhNjhkY2NhMDQ0ZTMyZWZlZGUwYzJhMGExOGNmZGZlZjVkNGFmMCByZWxlYXNlMjYtbWFpbnQKKzY5NjEzIGUxM2VkNDg0NDIyZTgxNTVmYjI2NWI5Y2M4ZmIwZjlkN2NmMGY3NmYgcHkzaworNjk2MTQgYmI5OWVkYTM4YzFiODJlZWJjN2EyY2MyNDZhOWY5MDBkMjU5MmZiZiBweTNrCis2OTYxNSAzY2VhNDA1MWRjZGI2YzBlNmNiNGUzZWU3YmRmMWE3YzhhODhmNTExIHJlbGVhc2UzMC1tYWludAorNjk2MTcgZDQwODM4YzVhNDIwNmZlOWIzZDU3OGI4YmRiYzQ2YTFiNTM1NjQ3ZSBsZWdhY3ktdHJ1bmsKKzY5NjE4IDk2OTM3OGVhNGM3NzcxYzdmNTExMzFkY2EyOGZmYjA1MTNiMzgxODEgcHkzaworNjk2MTkgOWQ3YTEzMWRjYjc4OTVhMDJmMGMzNzY5NzQ1OWZkYWJjN2M0M2EyOSBsZWdhY3ktdHJ1bmsKKzY5NjIwIDU1Njk5MGJiNGYwYWNhYzdkYzk5ZWZjOTg3OTRmZWFjMDMzZWYyNTMgbGVnYWN5LXRydW5rCis2OTYyMSAxNWQ4YjJkYjJiZTQ1N2E0NjZkNzE5ZDYxNWE3YWEyNjcyOGYwZTQ2IHJlbGVhc2UyNi1tYWludAorNjk2MjUgZjY3YjQ4YTE1MTNlYmJhYWY2YjdjNmExNTY2NjA5ZGQwNDk3NGFkNiBpby1jCis2OTYyNiA4YWU1YjBjNWMyNGQyYWU3ZTJhYTViODM1M2MwODU1N2M2NDZlNDFlIGlvLWMKKzY5NjI3IGMxN2NkOWJlYzNkODUwZTQwNzkzOWMzMjg2ZDAyYTQ5ZTg2MjI3MTkgaW8tYworNjk2MjggYWRlNDU1MTFiNTY1YjFlYmM5NTM2M2YzYzk2MDlkNDZlYzk2YTAwNCBpby1jCis2OTYyOSA3NzMwNmFkOTMwYTMzNGViYzNlN2VlNGU3ODRjNzdjMTQ2Mzk5YTVkIGlvLWMKKzY5NjMwIDVmZDNhZDU0OTkxN2NiNDM5MjZkOTdhMWE3NjMxNzI1MzI4NGIxMjMgcHkzaworNjk2MzEgZWYyY2JhODBjOTc1YmI1ZDk5MTFjOWI5YmJkNTgxOTg2ZDYxNDE3YyBweTNrCis2OTYzMyAzZjdlMDczZGFkN2I1ZjQ3ZDEzYTVjZTAxZWIwYTg2Y2JiNzRhNmQ0IGxlZ2FjeS10cnVuaworNjk2MzQgYjU1YTNiNWQ3MDA4ODI5OWRhMDljOWNjZWY0MmRmMWJhZjc5OGQxZSBsZWdhY3ktdHJ1bmsKKzY5NjM1IGI4YzQ2NjRhNjUzOTE2ZTIxNjQ5N2JjY2E2YWQ0OTBhNDFlN2YxMzEgcHkzaworNjk2MzYgNWYyMjU3Yjc3YWIwOTkxZGQ4MDdiMjlhNjdmZWI5NzRiYWE0NGYwZSBpby1jCis2OTYzNyA3OWMyMzExZjMzY2MxZTJmYTFkZWQ0OWVjYzIwOGU5N2EzZDU3MjNkIHB5M2sKKzY5NjM4IDNmNDc1NzQ1YTNjMzA1ODk4OWVkYmY2YTVjYTI1MjY5YmMxOGZhYjQgaW8tYworNjk2MzkgYWY3ZDc4MGY3YTBiZTRiYTA0YmM3ZjU1Mzg0YWQ2NTY1OTBhNjJhNCBsZWdhY3ktdHJ1bmsKKzY5NjQwIDY1ZTA3NTVlOWJiYzlkN2ZkNDAwMDk0MGZjYTRmMGVlYjFhNmZiMDkgcHkzaworNjk2NDEgYWFkZWYyMTg4Y2ViNmZiNmJhMDRlYjk1NzRhZDc3ZmQwODhmNzJkMyBpby1jCis2OTY0MiAyYzRhMzMxY2QzMmE4ZDc3YjNkNmEyYzY0MmYxNGMxNGRiMzBkMDQ5IGlvLWMKKzY5NjQzIDk0ODc5NGFjNWE1MmJlMjcwZmNhZDQ4YWQ0YmJlYjA2OGQyNDJiMmQgcHkzaworNjk2NDQgOGM2ZDY4OGU0ZjE2MTA5YmM1Y2JhNjk5N2M1MDk5OTAwMTUyNjEzNiBpby1jCis2OTY0NSA5NWQ3NzVkOWFiNDdjNzdlZGRiOGIxMDkxMzliNzU2ZTQxMWFiMTc3IGlvLWMKKzY5NjQ2IDRmZTI4ODVkMDY1NDkzYjUxYzUwZWI1ZWUwNWIwM2RkMTc2MTdjZDUgaW8tYworNjk2NDcgNDBjOTU0MWU2MWZjODk2NWZmMTkwMmZjYmNmYzE3ODg4ZGIzZDYyZCBpby1jCis2OTY0OCA5OGRkMjA1N2UwODhiYjRmMjIwZWI0Y2RkZTM1OGNkMDJhMTBjYzlkIGlvLWMKKzY5NjQ5IDkxYTNjY2U2OGU5YjQ2MTBlZWMwOWI1N2ZjZGEwYmQ2MmI0ZmQ2ZTIgaW8tYworNjk2NTAgZDljMWQ5YjEzMzc0ODMwZGE5YjE3OTE4MWI2MGRkYWUwM2I4MTMwMyBpby1jCis2OTY1MSBkYjNjYWUxMjhkOTFlYWU1ZTRmMThjMWNlYjFhM2ZiNWE1NmFlZTNlIGlvLWMKKzY5NjUyIDE5MjAxNDg3NzlkNDQ2YmI4ZTk2YWM0ODk2MjczZmVhYjgzYzI2ZTAgaW8tYworNjk2NTMgOWY1MzlkOGNkOTA0MmEzYzM5OTk2YWNhNTNhMGI3MzZkYTk5ZWYwNCBpby1jCis2OTY1NCAyOGNhMWRmNTQ1ZTIzNjY3M2U1ZmE1NjM3ZTZhMzc1ZmNjZTFlYTNiIGlvLWMKKzY5NjU2IDI0MDZjN2RkOTg4NDEwODY1ODJkOTRiMTk2NWM2YzBiMWUwMDUxYjQgaW8tYworNjk2NTcgYTI2ZGIzMTQ0YWU3MTMwNDUyMzgxODQ0MzNhNmVkZDViZjM5YzQ4ZCBpby1jCis2OTY1OCA0YjEyMWJiY2M5MmFmYTAxOGVkMDg0ZGU3YWIxNGQyMWI5YWUxMWRjIGlvLWMKKzY5NjU5IGYzYWY0OTkyYjgwYjgzZDlhMGQ5NGYxZGM2M2U0NGI1ZGUxNzIwYzUgaW8tYworNjk2NjAgNmRhMzBlM2FiYzBkZDAwZDljZWFkOTIzNmMxNWVlZmE5ZWYzYjllZiBpby1jCis2OTY2MSAyYzcxOTAyYjM3NzQ3ZDY5NzU4MzBkOTNkZWNiY2NjMzZmZjM3OGMwIGlvLWMKKzY5NjYyIGY0YzQ5Y2Y2MDFhMmNkYzZlMTQzY2Q1MGU3MGYzNDE5Y2Q4YTJiM2YgcHkzaworNjk2NjQgYTQ1MGM4NmZjMmJjMDQ2ODU1Yjg2MmE4OWQ0NjUxY2UzNmY2OTAyNyBweTNrCis2OTY2NSBjNTcyNTRhOWMxYTMyMzAyMzUxYzU0MTRkOTBlOWRjYzA5N2I1NmFmIHJlbGVhc2UzMC1tYWludAorNjk2NjYgMDc2YzQ3OTEzMTM0OWQ0NzVhZDdmOTU0ZmUwNTFjYjVjYWQzYzE3OCBsZWdhY3ktdHJ1bmsKKzY5NjY3IDk4NTc1ZjlhNGVkMzg1ODIwNmY4NjFhN2FkNWMwNDk0MDI5NjA0OWIgcHkzaworNjk2NjggYTVjNjIxNWE0NWFmMDllMTc4ODI2ZjE5Y2ExYmE1ZjM0NzMwMmU1ZiByZWxlYXNlMjYtbWFpbnQKKzY5NjY5IDBlNTVhY2QxYTQyNjY5ZDJkYWEyMGZjYjZjYjc0YjgzMGRmOTA5MDggcmVsZWFzZTMwLW1haW50Cis2OTY3MSBlODczZjgwODQ2NGEzMzYzNzY5YzcxM2E1ZjYwMGZkOTBhNjg2OTkyIGlvLWMKKzY5NjcyIDZhMTE4Y2M0ZjNiNzhlMTk5MzA1OGE2NjFiMTYyNGY1MDY0MjIwYjYgbGVnYWN5LXRydW5rCis2OTY3NCA1MWRiMTgwODRlY2JhYWQ1MDg0N2E2OWI2YjdiZWY4YzNhNTU5Njk5IHB5M2sKKzY5Njc1IGIzOWQ1NDA1OGEyYmJmNzk1MTdiOTg2NDBjNGNmYWYzZmFmNDQ2NTIgcHkzaworNjk2NzYgNjI3ZGI1OTAzMWJlYjAxMjYyZTcxMjViOTY2ZWZkNzlmYTgyMjhhNiBweTNrCis2OTY3NyA0ZDYxZmJiYjQ1ZDc0MTc0YWU2YjRlMWNkZGEyMDBiZmY5ZjAwOGQ5IGlvLWMKKzY5NjgyIGRmN2M2YmQxYjYwOTJiODU2NmIxZWMxZDExMDAzYjFmZWY4OTNiMjQgcHkzaworNjk2ODMgNWRjYWEyZTFiYzg2OWE2ZDY3OGI2ZTgyM2NlYzg2YjczNTllNGQ5ZSByZWxlYXNlMzAtbWFpbnQKKzY5Njg1IDBlYmJjZjU5ODhkYmMxODNlYmVhN2MwY2QzMjNkYjM3NDYxYTNlYjkgbGVnYWN5LXRydW5rCis2OTY4NiAwMDNlMDA3OTdlOTEwMGIxNTBkYWE2MDg0ZDRiZDI2MzQ0YzBjOTRmIHB5M2sKKzY5Njg3IDg2YjYwZDA1MDYyYmE4ZGJlMzA0MWRkMDc3MTlmZWU2OGUzMWFiZDIgcHkzaworNjk2ODggMjdkNDNkNjZiZDA5Y2VlYzFlY2JiMzFjNTY2NDhlYmVhNGVhMTZlZiBsZWdhY3ktdHJ1bmsKKzY5Njg5IDE1NDk0OGUyZmQxYzU3ZjE5NDI2NzVmNGEyYmI5ZWFjMmY5NGVlYmUgbGVnYWN5LXRydW5rCis2OTY5MCAwOTIzNTg4OWM1NGQxNGU2YTY2OGM2OWE3ZTY1NWZiMTE0NGNmOTQzIGxlZ2FjeS10cnVuaworNjk2OTEgZjMwODk1M2M3MDFmYzRmNjE4OTljZmVlOTg1MjdkYWRjZDBlMTg2YSBweTNrCis2OTY5MiA5ODJmOWUyOTI1YTQ1YzU0MDY0OGRkMWI4OWI1ZWI5MjQ2ODk5NGRiIGxlZ2FjeS10cnVuaworNjk2OTMgYWI0ZGEyZWRiMjg4ZGVhNTgwZGJlNzk5YzEzYTI4YWQ5ZmQ2YjljZSBsZWdhY3ktdHJ1bmsKKzY5Njk0IGU3OGJhODgwMGUyY2UwMWVhYzQwODRlOWFlZDQ2NTQ1ZjFhMjlmYzggcmVsZWFzZTI2LW1haW50Cis2OTY5NSA1MjI3ZjhjNDE4M2VmNTFlYjRmYzRkNTRkMWEwMTYxZjRhMTI5OGQwIHJlbGVhc2UyNi1tYWludAorNjk2OTYgNTRjZjY4ZmM3MzEyN2VlMTM3ZjAxYmRmMjE5YmNjNDAzM2YyNWFiOSBweTNrCis2OTY5NyAyOWIxNDliYzMxMzAxNjI5ZTg2OTE2YWE5NjcwMjc5NWNmMmYxYWIyIHB5M2sKKzY5Njk4IDI3MzI2ODUyMmU1ZWU5Mjg3MDgxNTliNjExMDM0MDUwOGM5ZWUxZDIgcmVsZWFzZTMwLW1haW50Cis2OTY5OSAwYzg3NDc5OWExOTBkNTA0ZDFkMDMzZmM2ODk2MmJkNDcxNmJmY2UzIHJlbGVhc2UzMC1tYWludAorNjk3MDAgNzEwMTc3MmVhZTgwNWZlZjkxMTIwOWNiN2UyOTAwMDQ1Yzc0YTRhNCBsZWdhY3ktdHJ1bmsKKzY5NzAxIGY1MDVlYmE3MjZjODY1M2M3Zjc1NDc2ZGM3NzZhYjVjMTlhZjk3ZmEgcmVsZWFzZTI2LW1haW50Cis2OTcwMiBkYmEyZmFmMDk5MDY0OTU1ZGQ3ZTVhOGVhYzNmOTYxN2M2ZTdiOTM4IHB5M2sKKzY5NzAzIDAxZDNiNjg2MzM4N2RiYjU5NmVhZjBmYWU0ZmE1NDdmODU3MWNiOWIgbGVnYWN5LXRydW5rCis2OTcwNCAwN2ZhZDMwMTAyNWYwMTllZTMyNjE3NDVkZmNiZDU2OTA4N2NlZWYzIGxlZ2FjeS10cnVuaworNjk3MDYgZGQyMjEwYjJkYzIyY2JlZDRhMDMyZjBlZWI0Y2U1ZjI4MmI2YjZlMSBweTNrCis2OTcwNyAxNDdmY2ViYWNiNWJiMGQxODkwYjYxOWZkYTFlZjdlM2E3ZTFjMzA5IHB5M2sKKzY5NzA4IDE5ZTc2ODVkOWI5NDZmMjU4NDdiMDhhOGNhOTE0N2FhNmIyOGMwYzkgcHkzaworNjk3MDkgNDRmZDJjYzllOWNjNzQ2NzliMmM2NWIzMTQyNjQzMjg0ZmY2NjU1NCBsZWdhY3ktdHJ1bmsKKzY5NzEwIDI3MjY4ZWYwNDcwOGQ4ZTNjMzBhNGQ2NmZjNzFhNjFlNWJmMDI0ZTUgbGVnYWN5LXRydW5rCis2OTcxMSBkNzcyNjc4MjUzNmQ5NTAxNmE2YTc1YjZlMTViODAwNGMwYzNmOGY4IHJlbGVhc2UyNi1tYWludAorNjk3MTIgMjU3Yzk4ZmE1NWQ3NmNlYTliYWFiMzE0OGIxOTU2ZGJjMjRkMmY4OCBweTNrCis2OTcxMyBlNTQ4ZGYzNjE4OGVmNzM1Mjg0OGMxZGNjYWY4YWYyNjQzYjg2ZmM3IHJlbGVhc2UzMC1tYWludAorNjk3MTQgMGM2YzA1NzJjMjQ3M2MwZDI2N2NmYjNkNDliZjU2ZGMwNWE4NTNiZiBsZWdhY3ktdHJ1bmsKKzY5NzE1IGQ5ODJiOTViZTNlMjE4MGQ1NTVmYThmOWJmYmJmNmExNmFmOTA4YmYgbGVnYWN5LXRydW5rCis2OTcxNiA3OThhMTZhYmY1NDYwODg2MTBmZTUwYjlkNGQzMGEyMWU5MDNhZGRjIGxlZ2FjeS10cnVuaworNjk3MTcgZDY3NDBhOTZhNzBhZGFjMTZhNzYzZTA3YTY3NTZiNGU4OWI2ZWRhOCBsZWdhY3ktdHJ1bmsKKzY5NzE4IDlhZDY2MmE0M2ViMzUwZTQ3YTdjYTZlZmE2NzVhYjc5MDA3ZGU5MzcgbGVnYWN5LXRydW5rCis2OTcyMSA4NTQwN2QwNDc3ODIwOTgyNjMwNWFkZjUyNjZlOWQ4NjJkOWRiZjNiIHJlbGVhc2UyNi1tYWludAorNjk3MjIgMDllNjMyMTRmMGJmODY1MDZmOWNiZjUyN2NiNjM2NDg2MDA4YTQxYSBweTNrCis2OTcyMyBmYjg2MDZlMDg2ZWE4NDQ1ZjY5ZmQ2NjIwN2Q4M2RlOGJhOTY4MGIxIHB5M2sKKzY5NzI0IDkyZTQyYjFiMGE2ZWVjMGYxMTc3Njg5YjNjMDE2YWUwOGJkMDNkMGEgbGVnYWN5LXRydW5rCis2OTcyNSBkNzg2MGJiMGIxNWEwYmZkMTM1MmFiNjZjOWVhM2Q4ZWMyMDllYmZkIHJlbGVhc2UyNi1tYWludAorNjk3MjYgNjA1ZmZjMDUyYjQxOTVlMzM0MDE5YzYwZmE1ZDU4NWFlMjMwNDI5MSBweTNrCis2OTcyNyAyMDVhMmI0YzFmYTU0NjU1ODQ0MWExODM4MzcwMDhkZTc3NGEyYmNkIHJlbGVhc2UzMC1tYWludAorNjk3MjggMWZmNGI0MWE1N2MxMjZkMGY5NDY2YzAwNDQzYWM0OGUyYzliNjVlYiBsZWdhY3ktdHJ1bmsKKzY5NzI5IGU3ZTU0NGNkMmMyYjk0NjJhOTI0ZDFhYTIxZDhlN2Q0OGRjZjM3YmIgbGVnYWN5LXRydW5rCis2OTczMCA2ZWE3ZDM3MTRiZGY3OGYyODQ1NDM5ZDVmZDVkYWU1Mjk3NDMyOGUzIGxlZ2FjeS10cnVuaworNjk3MzEgNTUxOWI5ZGNjOWI2YjY0NDdhZjAyMDNkYWYwMjNmNDk2ZDAwYzgzYSBsZWdhY3ktdHJ1bmsKKzY5NzM0IDM5ZjA5YzllZDVhNWIzZWQ2YzNmMTE5NTUzZjg5OGIyNzNhY2I2ZGYgcmVsZWFzZTI2LW1haW50Cis2OTczNiAyODc4YmY4MTVkYTFlOGJhYzhiY2Q3NDc0ZTUzODQ1YzU1Njk3NjNkIHB5M2sKKzY5NzM3IGNiMGFkZTMzNTU1MTU2MGMxNTY4OWUyODAyOGM4ODExY2QxNTAzOWUgcmVsZWFzZTMwLW1haW50Cis2OTczOSA3MmQxM2VjZjRmY2E3NWZiMjU2YWI3MjNkMjNkMjY0NzBmOTMzOTU4IGxlZ2FjeS10cnVuaworNjk3NDAgNzZkNzdhZTk3YjM4ZmY2MDczZWVjZWVhYWRkYTNlYzlhYjYzZWJiNCBweTNrCis2OTc0MSA3NTU5YTAzY2JkMzBhYjc1MWI3NGZkYzdlZDQ5ODhmZjc1MTE5NmU5IHJlbGVhc2UyNi1tYWludAorNjk3NDMgOWJmZjEzMGQ3OTJkZWE0NzFmMmVhOWNmMWU2MGFkNzI5ZWMxZTM5NSBsZWdhY3ktdHJ1bmsKKzY5NzQ0IGVlNzAxMTg2Mzk0MzI2N2RmYzUwZWQ1NTVhZjZiZjJlZjBiNGE5YzQgcmVsZWFzZTI2LW1haW50Cis2OTc0NSA4YTI5MjU0M2U4NzE5OTc0MTA2YjQxYjc5MDcyNDVhNmZmYWE3NTYwIHB5M2sKKzY5NzQ2IGIyZmYyMWJiYjljNTQwNDQ3NjZiM2Y4YzM4NGY4NGYyZjBkOTE4YzcgcmVsZWFzZTI2LW1haW50Cis2OTc0NyA3YzdiODA1ZDBkMGE4ZGFmN2ZmNGY2NThkZTBjN2EyMTVmOWZkYWJiIHB5M2sKKzY5NzQ4IDc0OGRmZTliYjg1N2ZjMWVmYTcwMjE1YTA4NTk0MzI4N2UyYjY1YzAgbGVnYWN5LXRydW5rCis2OTc0OSA4NWZlODg3NjE0Y2U0NDIwZTkwMWNmMTE2ZjY4OWQ4MTYzMTZjYzMyIHB5M2sKKzY5NzUwIGUyNjBkNmRhZjc4NDhkODQwMGQ3ZDM5NWVkNmYwNTE5MTUwZjE3ZTQgcHkzaworNjk3NTEgZDI1ZmMwMjA5Mjk1NTAzNmE3MDM2ZmIxNTdjOWVjOGM2MTk2ZTU5NiBsZWdhY3ktdHJ1bmsKKzY5NzUyIDNkYmRiYzVlNmQ4NWFkNWVhMTNhNTEwNGVlNWFhMmFjYTA0NDdiYjMgcHkzaworNjk3NTMgMDNmMDdkOGYwNmU0NmMwM2FiZjJkYjk4Y2Q4NzU4ZWIzNWNmZDA2ZSBweTNrCis2OTc1NCAzM2Q1ZDdkYWE4Yzc0NjlmMTNjYzkyZWUwZmRjNWQyN2M4Njg5NGE2IHB5M2sKKzY5NzU1IDQ5N2VhYjc5YjFiZThlOTE3MjVhM2UzMWNkNDdhNTkwMTg0ZjRiOWMgcHkzaworNjk3NTYgYTk3NzRiNjFlNTJkM2Q4ZDZhYzUzOTIxODU1ZTcxN2QxYTk0MDViZCByZWxlYXNlMzAtbWFpbnQKKzY5NzU3IDMwMjI2M2UzYzhmMWQyYzU1YzdkMWEyMWU0YzY4YWZlNDlkNTczMTIgbGVnYWN5LXRydW5rCis2OTc1OCBkNDdjMjU4YTFlMWNlZmJlYjVkNWMzOTlmZDk2ODY3YmQyYTdlNGNlIHJlbGVhc2UyNi1tYWludAorNjk3NTkgYWI0MGM3NjEzOWFiNGQ3N2M5MjBlZjk5ZTUxNmIwZTdiZTY3ZTBkMCBweTNrCis2OTc2MCAyZjUyNTc0OTRhMmUwZmViMjZhMjI0MmE1YjU3MWUzM2FmOGE5ZGMxIHJlbGVhc2UzMC1tYWludAorNjk3NjEgNTU5ZTRmYzMxYzhhNzNiNWY2NGYzMmQwODNmNWNkZjlhOWEzNWU1MCBsZWdhY3ktdHJ1bmsKKzY5NzYyIGVhNDdjZWY2NzgzN2IwZWVkNWM1OWI0NzliM2Q5NmE5YzYwMWM5ZmIgcmVsZWFzZTI2LW1haW50Cis2OTc2MyA5MDAxZDljOGY3MWUwNTE3YTNlZTNjMzIxMTIzNGVkOGZkOTdhMzkzIHB5M2sKKzY5NzY0IGQ2NzNkYTkxNTkxNGQ3YzU5MTM0NGM5MzM4YWQ5YmJkZDQ3MmEyMmYgcmVsZWFzZTMwLW1haW50Cis2OTc2NSA5ODAwYWIyMzZjMDlkNDU1Y2Q2MmFjYjcxYTAzODIwNGUzYWRkN2U1IGxlZ2FjeS10cnVuaworNjk3NjYgZjBlYWM0NTJhNmNhZmQxOGZhMDg5MTJiMjdjODFmMmQ1ODY1MzliNCByZWxlYXNlMjYtbWFpbnQKKzY5NzY3IGJkNDY3MTc5MmQ1MDE2ZTVlODE0NzY4YWZiNTczNTZhNmRmNzA0MzYgcmVsZWFzZTMwLW1haW50Cis2OTc2OCA0MzQyYzBhMmYyZGM5Y2FkNDQ4YjE2ZDVkOTI4NWZhYjBlMTczMjIyIHB5M2sKKzY5NzY5IDg0NjhiNTJmNWVlMmMzNzdjZGJlMjczMTViMWYwOTUxMWI2YWE3NTYgbGVnYWN5LXRydW5rCis2OTc3MCAwMGY3YmUwMmFlMWYxYzJkMDA5M2JkM2NmMzNjYmIwZTQ5YjU0M2Y1IGxlZ2FjeS10cnVuaworNjk3NzEgNzhlMzExZjI3N2E3MDI3ZTFkYjUwMmY5MjE2NmY0ZjVkNGFlMjEyMiBweTNrCis2OTc3MiA4YzEzZjQzMGUxNjA2YTA4NTRlNmMzZWY0YTFjNWQwMzBiZGNhYjU0IGxlZ2FjeS10cnVuaworNjk3NzMgODMzZGRmZWMwYmM0NTZiZTA0ODhhNWU5ZmMxYzY4MDU1ODZhMGY5NSBweTNrCis2OTc3NiBjMDJjMmE5MDhjYjA5OGYxZjhmZGQzZmM4MDMzZjViODBhNzIxZmJlIGxlZ2FjeS10cnVuaworNjk3NzcgNDM4NTkyODkwZTJiN2VmNTkyOWEwMWVlYTA5MGQ5MWVjM2VjYzQ2ZCBsZWdhY3ktdHJ1bmsKKzY5NzkzIDI3OTMzNzUzYTM4N2Y5MWE4MmM5NGVjZmZiMzQ4NWE5MTI5ZTQ4ZmMgcHkzaworNjk3OTQgNjdlZWQ4MWJhNzRmYTZhMzBhODA2ZTQ0NTZkN2Y3NWIyYzBmZWY2ZSBweTNrCis2OTc5NSA5ODE1ZGE0M2ExY2VmYTQ2ZDBhMWQ4MTE3MDk3YmI4Mzk4OTY2ZmFmIGxlZ2FjeS10cnVuaworNjk3OTYgYzFiZjAzN2ZlZWZlMDZiMWVjZTkwMDk4MTFjNWM0MDVjOWEyYzMxZSByZWxlYXNlMzAtbWFpbnQKKzY5Nzk3IDYyNGI1NWQwZDZiNzJkYjExM2Y0MDUwNmM3NjI3ZDIzNWRkMDY3YTIgcHkzaworNjk3OTggMmYzYWZhY2Y5ZjBiNzJjY2Q2MDg3YjgyODk4YjFmNWU3YTQyODkyYSBweTNrCis2OTc5OSAxNDA4ZmVlYzAwODQ5YWVlMDU4NmY5YWZkMmIxMGRkMjkxNjY0MTY0IHJlbGVhc2UzMC1tYWludAorNjk4MDAgZGI4ZGIzMWZkYjRjNDdjMDFmZTBmNGRkNzViNmEwOTRhZGZmMzhjNSBweTNrCis2OTgwMSAwYjk4ZTM3OTFiOWVjODcyMGNhNzgyYmQ1YWNjNDU1MDUwYzUyMTZkIHJlbGVhc2UzMC1tYWludAorNjk4MDMgNWExNzg4OGM1MTUxM2U5NWRhODExNmEwN2UyY2ZiZDcxZDcwYjdkMSBsZWdhY3ktdHJ1bmsKKzY5ODA0IGVmMTljYTAxM2UxNmVlMTUxZDgzOWE5MmY0YjgzMWYxMjlmNDU3NzQgbGVnYWN5LXRydW5rCis2OTgwNSAwODI0MDkzMTRiMDA3YTg4YjNlMDdhNmRkMTc2NDkyYjhlYzNmNDc0IGxlZ2FjeS10cnVuaworNjk4MDYgNjVhM2Y1NTVmYWI3M2RhNGU3NGViNDViZjYxMmIwYTdjNjQ1YmUyNSBsZWdhY3ktdHJ1bmsKKzY5ODA3IDE2NGJhN2ZmYTBlZWU1NDRiNGMzZTEzNDc2OGJjMjgxMDFjODZmYzMgcmVsZWFzZTI2LW1haW50Cis2OTgwOCA5MjUwYzhjNjFhOTEwOTVhOTVlZjU2ZDNjYzIxNjhmNWRlNmU0YTlkIHB5M2sKKzY5ODA5IDRkM2JhYWMyZTFhMjBkYjUyYjE3NzliYTVmMWNmMzhkNTYwOGFjNmQgcmVsZWFzZTMwLW1haW50Cis2OTgxMSAwODQ4ZWJiOGY5Yzg4YzkyNzBkZTY3MmZhMTU2YTQ2YjRlNmNkZGQ4IGxlZ2FjeS10cnVuaworNjk4MTIgYzZlZDViZmUzOTY5YTM4YjRjMDdmNzE4M2NhZjMwYWJkZmY3ZmI1NiBpby1jCis2OTgxMyBlMDhlNDA5OGE0ZTc5YjQxN2M1NWVlM2QxMzczY2RjYmJiNzUxMzUxIGlvLWMKKzY5ODE0IDQwODJlZGE4YjQ2NjNiMTQ1MTZjZTY5NjBjMDUyMzkyYzZhOTc5ZTcgaW8tYworNjk4MTUgN2Y4M2FmZjY4YzE2NmNkODRlMzJlZWMxNmY2MmRlOTViN2JlNTE3NyBpby1jCis2OTgxNiAxYWFjNzUyMDQzN2E2ZmQ0YTc1NzQ5OTA3ZTY3Zjc3ZjZiNjI5OTE2IGxlZ2FjeS10cnVuaworNjk4MTcgYzA1YzMwZmMxMThiZTEwMDllZWZhYmJmNDQ1NDI3ODQ2NmIyYTYyYSBpby1jCis2OTgxOCA2Y2U5NmNlNGQ5YWZlNDE1NmQ2MTAyMDQxODNkMjE4M2QyYmZkNmQ2IHJlbGVhc2UyNi1tYWludAorNjk4MTkgNWY1OTVhYzhhZWZjMzk2MmY5ZWMwMjVmMzA0ZTkwOGRiM2I3MTI4ZSBweTNrCis2OTgyMCBlMDgxNWZlZTI0ZjZlMzgwYjI2MjNlZjY1MWYxZDQ3NWZhYTc4ZTIwIHJlbGVhc2UzMC1tYWludAorNjk4MjEgNjdiY2ZmMjkzYTIxYWQ1ZmViNTc1MWMzODdhMDc4NTc0NDJhOWRmZSBweTNrCis2OTgyMiAzN2U0ZGY5ZmRhYTZkNDAwMDU3YmVlZmUwMmFhMzBiYjNmMjgwZWE0IHJlbGVhc2UzMC1tYWludAorNjk4MjcgYWRiMTEzM2Q4OTJhYjZmYzJmNDJjN2M5ZjZjMDk4ZmE0N2VhNjRjZCBpby1jCis2OTgyOCBjNjE4MmNjN2U2ZDcwZTAzMzFjNDExMTVhMmIwMWYzY2VkY2I1NGNmIGlvLWMKKzY5ODI5IDcwMmMzYjk4MDNlOGM3NTNkNzFmYjcyYzcwYzgwNDkyMTllMDBjNGIgaW8tYworNjk4MzAgNmZkODkwYjIwZDYzZmM3YWQ4YjBkNWM5MDM3MTVlZmMzNGM1OTcwYSBpby1jCis2OTgzMSBkY2MxNjFlMWFmN2VjZTI3YWQ1MzNjYzRjZWY2MmY5NGU5NmQyNDBmIHB5M2sKKzY5ODMyIDQxZTM4YTYxYmM0YjQ5MTY3ZjJkNTliZjFhNTY3ZWFkOGRmYjYwMDQgcHkzaworNjk4MzMgYTFmYWZmNzRmZjg5ZTJkYWFjMDQ4ODkwMTU0ZjE4ZGJiYWFlYzk4OSBweTNrCis2OTgzNCA3MTQ5YjdlZWYxNTNkN2IzN2UyZTQ1YWQ1MzAxMTAyZTUyZTBmMjE2IHB5M2sKKzY5ODM1IDc0YTJmZjQwNTE4YWU2NjUzYjE4ODZjYjczYTQ3MTlhYWRiNjE3NzkgcHkzaworNjk4MzYgZWU3MDI5NzEwYzA1MGRiMjI2ZDNiZjg0NDIwYTljMzljOTY5MzRkNiBweTNrCis2OTgzNyAzZTI3ZDYwNmQ2MjVmOGU5MTdmYzVlMWY1NjU5YjBiZGVjZTdlZTdiIGxlZ2FjeS10cnVuaworNjk4MzggMzI2ZjZmYWNjMWFhNGY0MzZiNzNkOGNjMGQzMWJjNjg4MGRhMjE4MCBsZWdhY3ktdHJ1bmsKKzY5ODM5IGE1YmE5YzE3ZjhiOWQ1MGUwOWMwZjE0YWQwNjYwYWRmYzRhNWY2ZTEgaW8tYworNjk4NDAgOWU2ZmJhNWFjY2U0NmJmODQ3MTFiZmRmYWVmYmI3N2ExYTVkNGU0MyBsZWdhY3ktdHJ1bmsKKzY5ODQxIGMyNzJlMzE1ZGQ4NzIwNmE5ZDk3NmMxMDRiZjE2MWQ3NmMxN2YyMmMgaW8tYworNjk4NDIgOTU1NzZiZjNhZDczNTg5NjkzODQ5OWE1ZjZhYTA2YjJjNjA2MDQwNyBpby1jCis2OTg0MyAzNzZkODA4ZTFjMDVmYWFhZDllNTAwMmVlNWFmMDI5ZTQzZmJhOTVjIGlvLWMKKzY5ODQ0IDUxNDQ1YjA0MDk4NjE3NjI2NGQ1MGZmYjY3ODJmZjdhZTM0MzA0MGEgaW8tYworNjk4NDUgM2YwMjNmYjgzZjJiOWI5YTFiNGE4NDg5ZTVkNmNlMDcwNGUxZTQyMCBpby1jCis2OTg0NiBhZjliNmM0MzgwNGUxZTljNDkzMzJjYTY2MzQzNjNkMDhhZTJmMmFjIGxlZ2FjeS10cnVuaworNjk4NDcgZDA2YTNlYmYzMDZmYTk0NWU0M2Y1OWRmMDYzNzA1YTNmNGMzZGNjZCBweTNrCis2OTg0OCA2YmE1NTg4ZWY2NDU4N2YyMmE0ZTQxYzhlNjNkOGMxOTBiMDQ4NmFkIGlvLWMKKzY5ODQ5IGVjNDkwOTMyZDkxY2I1MmRiMTJjZTM2MzNkNzM0NzE4OTg3MzIxMjYgcHkzaworNjk4NTAgYzI5NTJjMmI1YTRhZTY4ZTczMzI3OWM2YWZiODRmYzQyY2FlOTc5NCBpby1jCis2OTg1MSBhYTI5ZDA5NjcxMDU4OWU2NzZlYTgyMWUxMGNhYmYyZDZkNzk3NjA5IHB5M2sKKzY5ODUyIDk5ODhlOWYwMDQwOGY2NTkyMjc5YWU2ZDY3NDIxODgzMWM0MjhiZDkgaW8tYworNjk4NTMgOGE4MjVhMTdjYjI3MzU4MmJmZmY5NGMwNWNkYzVlZTkzODg3ZGU2MCBweTNrCis2OTg1NCA3YWU4YTg3Mjg0MjFmZTVmMzI0ODBjMTFlODRjY2VjOGI2MDUxODc5IGlvLWMKKzY5ODU1IDk2YWJiNDM5ZTJkMDdkMGNiYWE4N2FkN2I1YjZiMTVhY2MwMzdjNjcgbGVnYWN5LXRydW5rCis2OTg1NiA2YTViZWUxODkzYWQ4MzZjMTEyMDQwOGEyOWVhNWU3NDFiMDJkZDkxIHB5M2sKKzY5ODU3IDkxODI2NGZmMDJlMWMwOWVhYzQ5NDQ3YzM0Yzc1ZWZhMWRmNjJiNGMgcHkzaworNjk4NTggNWJlMjRhNTZmMDkxOGFkZGM2ZmU1MjIyMjg1ODI5ZmVmNzI4OTMzMiBweTNrCis2OTg1OSA3NjU3MTk4NmEyZjQyMDgyNjYzNzZiZjBlYjI0YTI5MWNhZmVjMDQ1IHJlbGVhc2UzMC1tYWludAorNjk4NjAgOGU3YTRhNzc0MTM4NDI2ZGQ3ZDA0ZDMyZDg3YTE1MWJhZGYyODZhNSBpby1jCis2OTg2MSBlY2Q4ZWY0ZTc5ZTZiNzFiMTFiY2IyMzRhM2EzNjZlY2U3Y2FkNjBiIGxlZ2FjeS10cnVuaworNjk4NjIgYzMzMDRhNGI2NGVhMWE3ZTU1OGMyMmVkMzFkY2VmZTVjNWVjOTM3OSByZWxlYXNlMjYtbWFpbnQKKzY5ODYzIDg0NjBlNWVlMDZjMzkxNWRlNzgyNTgxMjMxYWZlNzY1MzQ1ODFjN2IgcHkzaworNjk4NjQgM2NhMWZiNjIyZjVhNGI4YTc1N2YwODkxNTNjMDk4ZDE5NGE2NDY0MyByZWxlYXNlMzAtbWFpbnQKKzY5ODY1IDAwMmRhY2E2NmY5ZjZiZGZiOWQxOTcyZmNhN2VkOThjNGJjN2NkNmYgaW8tYworNjk4NjYgZWQ1Y2Q5MDRmMjAwN2M1Y2VlNTY5OTM2NjQzNWIxNWI1MjEzNWVmMSBpby1jCis2OTg2OCA1ZmZkOTMyODBhNzFiNDA3YWM4NTQ5ZTE3Mzc3NzQ0ZjFkMmQ0MWNjIGlvLWMKKzY5ODY5IGEwZWRhMWUyMjhiOGY4ZjM1NGE0MGRmZjc3NzgyMjUxOTc3NGE1Y2EgcHkzaworNjk4NzAgMGFiOGJlZjY3MWEzZGY1OThhMDA4OTU4NGNlY2ExMTQ4Y2U3ODhhYiBsZWdhY3ktdHJ1bmsKKzY5ODcxIGMyMDFjOGNmM2NiNDBjMjY2YjhjZDY2NGI0NzE1YmE0ZjhmMGJiYWMgbGVnYWN5LXRydW5rCis2OTg3MiA1YjVkY2NjNTBlMTJjNDY0YjE5MDRjMjk0NDM2ZWQ5ZDA0NDBlODFmIGlvLWMKKzY5ODczIDQ5OTE0YjNlM2FhODEwMGY1MTA1YTc1NjAwNDIxZmM0ZDFjYmE2ZTYgaW8tYworNjk4NzQgYjM1MTVlZDI4MTM1MDQxNjBjNmE3MzNkMDU4NjEwODUxNDhhN2M5NiBsZWdhY3ktdHJ1bmsKKzY5ODc1IGQzNjI5NjY3Mzk3NGEwMjJkYTc5NjE3NzM3Mjk4NmEyMjQ2NGQxODYgcmVsZWFzZTI2LW1haW50Cis2OTg3NiBlODljN2VkMWNmZmY0ODBmZTVkNDM0MTIxZDlkNTNkZWM3ZDY2MDQ3IHB5M2sKKzY5ODc3IGFhMzAyMTY5OWM1OWFiODBhOWE5ZGNkMDU3MjY1OTBjOGJjMDY3YmQgcmVsZWFzZTMwLW1haW50Cis2OTg3OCBjZDJlZTgxOTA5NTdjOTQ3MDBmOTM1N2ZlOGFlYjllNjVhYmExNjFkIGxlZ2FjeS10cnVuaworNjk4NzkgMzM5ZjVjMWVmMGVkZjQzMzJhYWQ5ZGIxMWJlZmY2MzU4NDNmZjc4MSByZWxlYXNlMjYtbWFpbnQKKzY5ODgwIDBhNWMyNmQwYmU1NDBkY2MwMmQzOTZlODc0NTE4Y2MzYmExMTg1ODcgcHkzaworNjk4ODEgNjIwZTc0MmNkZjY4YTc0NWIwNjAxODc1YmVlYWY3ZjZlYjEyMDI5MSBsZWdhY3ktdHJ1bmsKKzY5ODgyIDBlZmZkYTU0ODE5ZTJjNDY3YmQ5YjI2YmNkNjkwYWExZGJkNWVjZTggcmVsZWFzZTI2LW1haW50Cis2OTg4MyBlNWU1Y2EwNDkxYjg0MDgyNWEwMmZkNmVmY2QzMDgwMzZiOWRiMzYwIHB5M2sKKzY5ODg0IDEzYTFjYmYxMWEyMWVhZDE3ZmYyNGVhOGIxZTZhMzQ5MDA5ZjU5YWEgcmVsZWFzZTMwLW1haW50Cis2OTg4NSBkMjJkNmU5Zjc5MWMyY2Y3MzY2ODdjNTA5YTM4YjEwNzkxYjVmNTc2IGlvLWMKKzY5ODg4IGNlMGE5NWFmNmIxZDQxYmJjMjkwN2QzYTQ4ZDE3OTEwNWY3MWJjMTUgaW8tYworNjk4ODkgMjcyYWM2NTRmZDFhZjIwMDc0ZThjN2U4MDc0ZTgwOWM2ODVlNDVhZiBsZWdhY3ktdHJ1bmsKKzY5ODkwIGZiN2JlNDVhOTQ0MThlZjYxY2E3MDM2OGRjNWQwOTc3YTJkNDRjZWMgcHkzaworNjk4OTEgM2RmOGJlMDM2MzI0M2UwYThlZWVlOGZkOWEwMWIzMGQ1NGM2OWI5OCBpby1jCis2OTg5MiA5ZjZjYjA0MzdiZTgyMzQzZWZjYmY5ODY4NWM0YTdhNWYzMzg5MjcyIGlvLWMKKzY5ODkzIDQ0NDk2Y2QwYmM3ODAzZTQ4NTE4YzM1NmM5OWFhMWU3OGQ1NWQ2MzUgaW8tYworNjk4OTQgZGIxNGVjYTAxNjM1MDZkY2ZhZmFiMzFiZGE4NzUyMDRkYmMwOWI2YyBweTNrCis2OTg5NSBiNjFmMzNhZjM3NGJjYTcyYjhiNGZlZWYwYzUxMTgxZTVkNWJkZjZiIHB5M2sKKzY5ODk2IDhhNGRjMDA4OGU4NjI2YjU2Y2RmOWZkNzVkYTAyM2E2ZWZjODQxNmMgbGVnYWN5LXRydW5rCis2OTg5NyAzMjE5YjM0YTMzMjA2MTI4OTRmYWE0YzlmMjk1YzE2NzcyNjc4NjUxIHB5M2sKKzY5ODk4IGEzNjY2ODhhOGYwZDNjOWUyZGU0NzE2YjAwODBmMzIyNDcxYjcyNmQgcmVsZWFzZTI2LW1haW50Cis2OTg5OSBjOGQwNmRmZDRjMzlmNWM5NmUwZGE3ODk5MTY4OTA5YmU2MjM4OTVjIHJlbGVhc2UzMC1tYWludAorNjk5MDAgNWJkYjljNjQyY2NjZDE2MmU4ZjM5NzFkZTQyZjg3YmE2ZmVjMTY0NiByZWxlYXNlMjYtbWFpbnQKKzY5OTAxIDNlNzczM2NmMjc5ZTM0ZGE1ZmFjOTMwYjRhOGMwMDFlMmE0MzRlZGQgbGVnYWN5LXRydW5rCis2OTkwMiAyYmYxMzM3YzNhNjA1ZGNhMDQwZjkxNmVlM2Y0M2U2NTg3MmUyZTE0IGxlZ2FjeS10cnVuaworNjk5MDMgMWYxZTIyZWY1NTYwOWFlMTU4Nzk5NzY1ODg2NjVmN2QyODAxOGIxMCByZWxlYXNlMjYtbWFpbnQKKzY5OTA0IDVjODU5YWVhNDZiOWM3ZGNhNTVkNDFjYTE0ZWUwMDE3NTdhNTg3MTkgcHkzaworNjk5MDUgMGE1OThkYmVkNjc5MjY2ZjYzZjE5NmQ5MzBiYjk5MWYzMGIxNjZmOSBsZWdhY3ktdHJ1bmsKKzY5OTA2IDAxNzRiOTM2NjljZDQ4ODllNTc3YzFjMGFmOGI5MjM0NjBkY2IwOTggcmVsZWFzZTI2LW1haW50Cis2OTkwNyAxNmNjYTMwY2YzZWI4M2IxZTI2MDVmMzI5NGQxNmYyZTc3MjYwMzhkIGxlZ2FjeS10cnVuaworNjk5MDggYTBmZWNiZTczNjE2ZjYyODNlM2RlMGY2OTk5MmJiNzhjM2NiNDNjNiBsZWdhY3ktdHJ1bmsKKzY5OTA5IDA1MDQwODdhMjcyMzZiMzc4NTAyMDkwMjU3YzY2M2E2ZDAyMmI3ODYgcHkzaworNjk5MTAgYzFmMDI2ZTA4NzVlMDQ5YjA4YzI3NWRlOTU1ZGY2NjZmNjdhOGVjYiByZWxlYXNlMzAtbWFpbnQKKzY5OTExIDlmZTUzMTU2NTQzY2Y1MmY4MmIxNmZkMzc5YTI3MDc1OTRmNWYzNzMgaW8tYworNjk5MTIgZjllYWQyZTFhMDNjZmQ4YzIzYzg4ZWFjNGNjNWU0MTNiYzU4NjQwMyByZWxlYXNlMjYtbWFpbnQKKzY5OTEzIGJjM2IwNzNhZDE0NmQ1OTE1OWNkNDc3MzRmNjQxYjY4ZjYyMzY5NTcgaW8tYworNjk5MTQgYTUyZTE0NTQ1NTYxNGU3ZmNiNjczMTgxODk2ODlmYTkzZWU0Y2ViZiBpby1jCis2OTkxNSA2NmNlODBlOGU1Mzc5OGU4MTk5NjYwMjYzYzljNmM0OGUwZjc4ZGNlIGlvLWMKKzY5OTE2IGVmM2E2YzE2ODM3NGM0OGRjMDEzYThjNDEwZGNmZmU0OGQ2M2ZhMTIgaW8tYworNjk5MTcgODM2NjRlN2Y3MDhhYjM5N2NkZGJiOTZkNzVmZWFlMWUwNmU5OTM2ZiByZWxlYXNlMzAtbWFpbnQKKzY5OTE4IDk0OTQxYjA1OTgwMGUzNDZiMTU3MWJjYzE0OWE0OGVjZWRkMTMxZGQgcmVsZWFzZTI2LW1haW50Cis2OTkyNCBmYTc0NzY2MGQ0ZDQxNjhjZDViMjNiYmM3MDk4YjA1M2VkYjViMThlIGxlZ2FjeS10cnVuaworNjk5MjYgMDRmM2NmMzJhYTc3ZjgzNjA5MDZlMTIxNTZkYjdmNGYwZDZkODE4MyBweTNrCis2OTkyNyA1Yzc0ZTQwZDE5MjZlNWE2ZTg0ODM3OTA4MzM5ZTkzYTgzNDBjNjgxIGxlZ2FjeS10cnVuaworNjk5MjkgYjFlNjBiNDdlMTYwMTdhNmExZmMyYjBmNzg2ZDEzNzA5NjkxZmViNiByZWxlYXNlMzAtbWFpbnQKKzY5OTMwIDU2MTc0NzEwMzdiYzdhZjVjY2JhNmI2OThiNmY3MDQ3MGJlY2M3MDQgcHkzaworNjk5MzEgODNmYTI3NDgzZmRjOTM5MWJjNDBjN2QzYzZmNWU2NDc5ZGYyNDFmYSByZWxlYXNlMzAtbWFpbnQKKzY5OTMyIDU5NTJkNDExODlhZDFhZjExMTEzZmM4ODAwYWU3NjJkOTI1NjIzYmMgcmVsZWFzZTI2LW1haW50Cis2OTkzMyA5MDQxMmRmZGFiYTMwNmEyNDk0ZGJhMDQ0YzYzZTFiZjc0ZmVkYTg0IHJlbGVhc2UzMC1tYWludAorNjk5MzQgMTJjNjllZjQzZGRlODMyYWMwZDdmMjJiYzMxMzY4ODc4ODgwYmFkYiBweTNrCis2OTkzNSBjMGI5YmMyNWNlYmJlMzk5N2FiM2I4NTQ1YzU5ZTAwMTEyOWUyNmZhIHB5M2sKKzY5OTM2IGJjNzBlYzk3ZTM5ZmFmNTc2NjlmZDAxY2Y3YzkzYzcxYjc1OGVhZjcgcmVsZWFzZTMwLW1haW50Cis2OTkzNyA5YzI1YTA3OTAwMjJjMDYxNzViYTZmNWJkYjgwN2VjYTQ2YmUyOWQ2IGxlZ2FjeS10cnVuaworNjk5MzggZmFmOTY4MjEyZjMxZDZhMDdhYmZmN2ZkNzRkM2U3MDBjYzMxNzk4MSByZWxlYXNlMjYtbWFpbnQKKzY5OTM5IDU3NGZlZjUzYTdlM2RlNDllMjkxODk1NzcxMjU4ZDE3MTA4ZWNhZGUgcmVsZWFzZTMwLW1haW50Cis2OTk0NiA0NWI0NGJkMzJmNDE2NWQxNjljMzFiZTk2MjZiYzY5YmE4YzRmNDczIGxlZ2FjeS10cnVuaworNjk5NDcgYThiYjgyZjVmZDY0N2FkNzBjM2IwMjg2NTBmOWI2Yzg4Yzg4ZTBhZCBsZWdhY3ktdHJ1bmsKKzY5OTQ4IDJmNmIzNGY2N2VmMDIwMTY1OWVmZGFkNTdmNzkxYmYxM2IzMDAyODAgcHkzaworNjk5NDkgMmUyNTc3MWQ3MjAyMTYxZjI1NDBmOTMxYmYwNTgxMDhmZTg1NjUyMSBweTNrCis2OTk1MSA2MGQwOWE3MTY1NTY4MGJkNzZjMjE1MWM4YWExYzM4MGM2NTBhMzI2IHB5M2sKKzY5OTUyIDFkMjQ3Mzk1MTFjOWM5MjlmZWZiY2YwMjZhOWJhYjg4Y2M2NTdhODIgbGVnYWN5LXRydW5rCis2OTk1MyBiOGM0YTM3OTNkMGY1MTJhN2YwZDlhMjhjYzAxMmZlY2JhZWRiOTE5IGxlZ2FjeS10cnVuaworNjk5NTQgYTdmZGY2OWNhZTEzNWMwYWM0OWNmYmNhMTA3MDA3ZGZjMGFkMTg1YiByZWxlYXNlMjYtbWFpbnQKKzY5OTU1IDQ2Y2JlNjdiOTY2MWY3MTE5ZGM2ODliMGI0YTMxYjI3ZDMwOWIxYWUgbGVnYWN5LXRydW5rCis2OTk1NiBkYzMxNWRmN2U4MDg2MzI3OTVjODE4MmVkYzQ5YjI4OWQ0ODAzMzE0IHJlbGVhc2UyNi1tYWludAorNjk5NTcgNjU3NjJhMDZiODhmM2NmMzAzMTM1OGFiMWUwM2Q2ZDEzY2M3OGI2MiBweTNrCis2OTk1OCAzMzdiZDUwOTQ1NWExOTcxODcwMzc1YTU5NWU1MDMyMTY0NWFiZjZkIHJlbGVhc2UzMC1tYWludAorNjk5NTkgMTc3YmExMjJiYjFiMDJjM2EzMzJiMzE1ZDliNTliZTU1NTYxZDc5ZSBsZWdhY3ktdHJ1bmsKKzY5OTYwIDI5YjEyYTg5YjJhMDZjODA1YjE1NzI1NTgwODA4Mzk3OGYxNDkwMDcgcmVsZWFzZTI2LW1haW50Cis2OTk2MSA2NDNkOGQ0ZmM4ZWJjYzY5MTU1ZDM0MTYzNTdhYWRjYTljMDUzMzg4IHB5M2sKKzY5OTYyIDA4YTI5NmE4OGMzZTBiMzRiMTYxZTliOTUwODZhMTgxNzk1YWVmZmIgaW8tYworNjk5NjMgOGUwY2ViOWY1YzJhNzNmMzRmZDI1OTYzN2EyZjg3ZWI4MmM5MjY0YSBpby1jCis2OTk3NCA0MjFhMDM2OWYyMzk0YTRhNDc2M2FjMjViNTI0ZjdiYTBlYmU4NjVjIGxlZ2FjeS10cnVuaworNjk5NzUgYWMyNjc2NWZiMWJiOGIwNDYxZWY1YjU4YThlNDQwZGM4ZDUyMTIxYSBweTNrCis2OTk3NiA3MDJmMTg5OTE2MWUxOTQxZDM1MDQ1YTBjN2Y0MWFkM2JlZmRkMDdkIGxlZ2FjeS10cnVuaworNjk5NzcgNjkyYzhhOTg4MDI2NGIyZTZmY2YxMDIyYTdlZGFlMjIyMGUwNDcwNCBweTNrCis2OTk3OCAwMmVlY2RiMTczNTgwNzljZTA3MzZmMmVlZGU3MzRjMmRhZmVhYTVhIHJlbGVhc2UzMC1tYWludAorNjk5NzkgZjdiMDMwMTAxNjJjNDExN2Q3ZDdjY2FlZWZmNGU1ZDMxZmM0ZmNhMCByZWxlYXNlMjYtbWFpbnQKKzY5OTgxIDBlZTNiOWE3ZjIwOTdlOWRhNzc2N2Y5ZDc1ZTRiZWUzNzdhYTc0NDYgbGVnYWN5LXRydW5rCis2OTk4MiBkNzhiMjhhMzUyNGM1YWFlNmFhNWJlM2Q1YmU4YTg4MTMzOTBiMTc0IHB5M2sKKzY5OTgzIGMwN2Q3ZmQyNzQ2OTkwZTAyNzc5YmRiZTQ4NmU0YzA5OTY1NjhmZTcgbGVnYWN5LXRydW5rCis2OTk4NCA4ODczODU0YmI1ZjkwNzJlNWI3M2I2Mzc4NzQ0OGQ0MGNlNjcyOWRhIHJlbGVhc2UyNi1tYWludAorNjk5ODUgYzgwMDQ4MjE1ZGU1ODAwYjA2ZDM0ZmJmZjIzNmE5ZDlkMDkwMDA3OSByZWxlYXNlMzAtbWFpbnQKKzY5OTg2IDA1MmZiNTFmOGRjZjNiNzkyNTg5ZjlkODBjNjc1NmI5YzYxZDcwNWQgcHkzaworNjk5ODcgM2VjZDQ4NDc1NmIwMjNiM2ZhODAyNDc4NDBjN2IzODUzMzBhNjRhYiBsZWdhY3ktdHJ1bmsKKzY5OTg5IGU4NzJmNTg3ZjE5MDFhNzQyOGU5ZWFlYjliZjkyNTU3ZDhlNmUzM2UgcHkzaworNjk5OTAgZTk5YjU2ZGE0MzJhZjZkMWQ1NmIzMjE3Nzg0ZTkwYjdkMmE4YWZhZSBweTNrCis2OTk5MSAzMjNhNWE4ZDEwZmM4NjAwMmI5MzExZjVhZTc4ZTM4OTFlMGUzNGE1IHJlbGVhc2UzMC1tYWludAorNjk5OTQgNjk4MTc1ZmU4YjNkZTk5MGQzYjZiNzJjY2M1ZWEwMjQ5MjY2NjRjZCBsZWdhY3ktdHJ1bmsKKzY5OTk1IDNmNzNiN2FmMTMxYzE1ZDI5N2JkMjYzMWQwNDZlNTcyOTM2MzNmY2EgcHkzaworNjk5OTYgMzcyMmNlNDU4MzE4OTQ3YTlmMjViZDg4OTliZWIyMDZjZGRlNjU2YiBweTNrCis2OTk5NyBhMWIzZDAyMTY4MjBhOWQ2MjgxODcwNTA0NmM3ODJhODFiZmJmNjg4IHJlbGVhc2UzMC1tYWludAorNjk5OTggNjMyNjY2NjkxZDNkNDgwODMwNTNjNmQ4YzA3YTkxNTFlNDgyZWI5MSBsZWdhY3ktdHJ1bmsKKzY5OTk5IDU4YmJlYjMzZjU4MzMzMWM2NjA4YWZmYTYzMmE3MzFkMWE5YmYwODggbGVnYWN5LXRydW5rCis3MDAwMCA3MTJhYTViYjdiNDhkNWQ3Y2VjM2EwYzk0MDdmZTI3ZWQzZmVmZmVjIGxlZ2FjeS10cnVuaworNzAwMDEgODYyMjg5NDdiNjVkMWY5MDZmODhkMjMzZjNmMGI1OGRhMmY3ZTg0YSBweTNrCis3MDAwMiAxNDlkYzRiYzhlY2EwMzEyMzA4NzYwMWNlMGJmY2E4NThkZDk1MjFlIGxlZ2FjeS10cnVuaworNzAwMDMgOGI0ZGExZjQ5Mzg0NWNhMDc4MjMxMDIyYTkxY2JjOTFmNWNhOWM5MCBsZWdhY3ktdHJ1bmsKKzcwMDA0IGYxNzA3MjllMzAzODJkOWMwMjU5ZWZiNzExN2U1MWJmYzZlZjczN2YgcmVsZWFzZTI2LW1haW50Cis3MDAwNSBmMmU2YTVlYTEwZmUwYTA5NjhhYmIwODgyNTg5N2I0NzUyY2RjNWUzIHB5M2sKKzcwMDA2IDM2OTVjYWZlZjU4ZDkzNDRlYTI5Y2E1Njk3ZGFlZTBjMDkwNzVkYTEgcmVsZWFzZTMwLW1haW50Cis3MDAwNyBiN2IyMzg4N2ZiZGU2ODE1MGU3NTRkODdhNjI2NGM5NTRlNmNhMjBlIGxlZ2FjeS10cnVuaworNzAwMDggZWMxZjhlYjRkYTU5NGY1ZWQ5NDA3OTRiNDgxNjdlZDM2MDUyY2ZhNiByZWxlYXNlMjYtbWFpbnQKKzcwMDA5IGU5ZDAzZjZiMGQ1OTA1NmZhOTU0NmExZTI3NTVhMjEyMjU3ZmZhY2EgcHkzaworNzAwMTAgMjI4Zjg5YWU1NWIxMDA4MjdiYzA5MDU5YmZkMzY2NjA2NTQxMjRlYSByZWxlYXNlMzAtbWFpbnQKKzcwMDExIDJiNjBiNDY1MTNkMjYzZjkyMDVmYmY0Y2Y5ODg1NjdkN2U4ZTgyYzEgbGVnYWN5LXRydW5rCis3MDAxNSBjNGYyN2U1NDZjZjUxNzVlNTJkYzM2NTdiZmRjNWZmMmY3MTM5MjBjIHB5M2sKKzcwMDE2IDEwNWE1MzE3ZTY4ZTEyOTA5OWZmOWU5NDFlMjBkZTJmZjM5MmY2ZGUgbGVnYWN5LXRydW5rCis3MDAxNyA4YjY4OTY4ODc5YzcwZGYxMGEwMmUwMmUzYmE2NjkzY2NkMzM4NmQyIGxlZ2FjeS10cnVuaworNzAwMTggMTY3M2Q5NTczMTFhMGJiNGE5MzNkNmJhNGFjZmJiMWI5OTBlZGZhMiByZWxlYXNlMjYtbWFpbnQKKzcwMDE5IDRmZDgwZTY2YjEwNzIyZjNkNDBmMzc3NDUzYTJmMTY0ZDc2MWFjNGUgcHkzaworNzAwMjAgZGIxZGJmMDU3MTQ3YTRhOTk2NDk5YzdiMWIwNzNmOTE4MzFmZjlkOCByZWxlYXNlMzAtbWFpbnQKKzcwMDIyIDg2NmY3NDdjMTk2ZjEzNzRkOWRmZjA1NWVkOGRmZGIzMWUyOTNkMWEgbGVnYWN5LXRydW5rCis3MDAyMyA4MDAzYTJmYjYyNWJhMTAzODdkYzkxMWU1OWEwZjYzYTI5NzY3ZmNjIGxlZ2FjeS10cnVuaworNzAwMjQgNWRhYzA4MWU3MzBkMDgwNWNhNTQ4ZDk1ZDgwODg0OWY2M2M1ZDA4MCBweTNrCis3MDAyNSBlYjAzZTVhZTcxMDlhNjk3NGNjMjE4YWRkN2ZiNTdhMmEyZDdmYTg4IGxlZ2FjeS10cnVuaworNzAwMjYgODM5OTgzNTk1MzM4MjkyYTM0MGQ0NjAzNmI0NTg5ZWUwZjc5ZGVlYyBsZWdhY3ktdHJ1bmsKKzcwMDI3IDFmODQ3MDZlODE2YzJlNzBlY2Y2MDI2Yjg2ZDc1NGIxNmQ4MjkzMjcgcHkzaworNzAwMjggMWYwZGU0OTRiYzEzMTA3NmQ0NTRlMzFlM2NmNDdlYjI2M2I3MjIyOCBweTNrCis3MDAyOSA5YjYyY2I2NTM4OTIyNzY1YTgyNGM5Y2I0NWM3MTlhZmU1OTdiZjQ1IHB5M2sKKzcwMDMwIGE1ZjAzNzE4NTBmZjU0ZjQ1ZjJhMjc5ZTYyMDVkM2RiNWUyNWNmMTggcmVsZWFzZTMwLW1haW50Cis3MDAzMyBiMzA2YzcyZmZkNzAxMGVkMWE2Yzc2N2Y5ZjRkMWU4YjQ0Yzc0ZTAwIGlvLWMKKzcwMDM1IGQxNTU2YjgxOTVmMjhhZDQ1NzIzNmU5OTkzMDViODAyMzdmN2QyMGQgaW8tYworNzAwMzcgZTA5NDJjNjc1MzcyOGI3NGJmNmNjYWE5ZjFmZWQwZTkwYzMyMTk1MSBweTNrCis3MDAzOCBiNzFkZjQ0ZDViYmYwYTZhYmNhMTIwOGNiY2FiZmNlYjM4ODAxYTA1IGlvLWMKKzcwMDQxIGZjODNjYTFhYzExMDg4MTNlMWFmZWM0ZGIwMmRjMjMxMjljNmY5ODMgaW8tYworNzAwNDIgMzVjMWQ1MjYwN2M4NGY5ZjcyMTY2OWU2MzExZmE0Yzg4ZTZjOGYxMiBpby1jCis3MDA0MyBkMjQ1MzNmYjNmNDdhMTlmZDA0ZGNhYjM2ZjZiMjE5ZjAyZTAwNzNhIGlvLWMKKzcwMDQ0IGY3NWZiOWY0NzFkMDliMjVjZGRiMGM1ODVkNjVlMmVmM2VmMGNhNzYgaW8tYworNzAwNDUgMzE0N2IzYjc4ZGNmN2ViMzA1NjI2ODQ5ZmQzYjI1NTlmNTg1NTllOCBpby1jCis3MDA0NiBhMjY1ZjU5OTYxZjY2YTNkZWJjNDMzZDE0ZTUzMjlhYjEwNTNiZWQ5IGlvLWMKKzcwMDQ3IGM4NGRjYWM3ZTY5YTE4NTBlODVmZGM2ZjdkZmMwMTM5ZDc2MGJjMDAgaW8tYworNzAwNDggZjMzOWRhODM4NThkOTkxMDQ0NDRjMDA3YWM5Y2YzN2ZlN2NkMTFkZiBpby1jCis3MDA0OSA3ODlmZjhiZDE5MGE1YjgwMTVkNTE3MjI1OWI4NmUwYTExM2Q5YmRlIGxlZ2FjeS10cnVuaworNzAwNTAgYmU1YTljODRmNmJjY2E3ZWM0OWFkNmQzMjgwZWEyNTFkMDUxOThjMiByZWxlYXNlMjYtbWFpbnQKKzcwMDUxIDIwNjAzODEyMWFkZWM5NzU1MzU3YjM1MGZiZjgwMjNhYjNjYzhjOTcgcHkzaworNzAwNTIgOWRlNWQ2MmFkNDAyMjhlZjYyZTI3ZWNhZThhZTc0YTQyZDQzMWM2ZSBsZWdhY3ktdHJ1bmsKKzcwMDUzIGJhNmMzMDZjZjJjZWU3NzFmY2MxNDI5NTQxZWNmYjUwNzY0NmM4YWMgcHkzaworNzAwNTQgOTAwMzdmOTdkODcwN2JjZmRkZjgwODNlZTUxMmM1MGVjZWQwNmE4NSByZWxlYXNlMjYtbWFpbnQKKzcwMDU1IDc1OWRiYWNlNTFkMmVkMWJlZGI2NDA1NGFmZTJjYmE2YTFjY2MwMjQgcmVsZWFzZTMwLW1haW50Cis3MDA1NiAyOWQ2NTJlM2YyZDMyYWI5Y2Y4M2JiZTQ0ZTZhYmZiOTlmMjAyODZhIGxlZ2FjeS10cnVuaworNzAwNTcgMGU2ZmFmMjdiNTMxZjI3M2UxNzIyNmM3OGU4NDAzNmJhYmI1MjlmOCBweTNrCis3MDA1OCBjNjRkNGE4YWUyYjJlY2I4MDlhYzZkODVmNGU1YzM4NmExN2VhMzEyIHJlbGVhc2UzMC1tYWludAorNzAwNTkgMmEwZjg0YWM0OWYwOTAzYzMxZGQ1NTlhYWUwNDVmODQzYzYyZWYzYSByZWxlYXNlMjYtbWFpbnQKKzcwMDYxIDY3MjQyNWJlMzg4YTY5MjFkYzhhNzZhYmY4M2Q0MTkyY2ExZjY1ZDggbGVnYWN5LXRydW5rCis3MDA2MiA0ZTE1NTYwMTI1ODQ1ODNhMTg2ODliYzViNzg3MDZiMjY2N2MzZmNlIGxlZ2FjeS10cnVuaworNzAwNjMgNzllNjZjMTFkYzgwY2EyYTBhZDgwYjA1ZWE3NTQ5M2UxOTI2ZGRlMiBweTNrCis3MDA2NCBhZTIyNjMxYTc4N2M0OWI5ZjQ5ZTE1MmQ4OWVhZmJmNWFlZTA4ZTcxIHJlbGVhc2UzMC1tYWludAorNzAwNjUgNjc2NTY3ZTJhNzExOTIxMjZmMDM0MmRjYTVmY2E3YmI4NzA2MDY2NiByZWxlYXNlMjYtbWFpbnQKKzcwMDY3IGQxYTMxNGUwZWZmNzIwMDM1ZmJkNDUyMjBjZGY5YThlN2RhMzU3YWEgaW8tYworNzAwNjggNjAxMWMwOTJlMjEzNDZlZTdiMzViNjY0ZmM1MzM3YjYxOTc2Zjg1MSBpby1jCis3MDA2OSA3ZmFjYTY5NThkYWMwMmRhYjkwMzgzY2M3MGQ0NzY5YWY3N2Q0MzYwIGlvLWMKKzcwMDcwIDBhZDNkZTIxNmU4M2U0M2ZmZWE1ZmE3ZTYzMGZjNmNjNzI0NjVhYzggaW8tYworNzAwNzEgZWY4ZmU5MDg4Njk2OGIxZWI0NjhjYjkxZWJhZTEwM2Y3NzNmYTE3ZiBsZWdhY3ktdHJ1bmsKKzcwMDcyIDc1ZmY2NjliZjk5NmRlYTlmMGUzYmNiODZhNTQ0MzZkYmNmM2YyZGYgcHkzaworNzAwNzMgYjQyMTQ0MWVlNjc5YzVlOGMzYjEyNzRlNWYxMjExYzY4YzY1MTQ1NiByZWxlYXNlMzAtbWFpbnQKKzcwMDc0IGU0Mjg3ZDhjOTc0MTdhZTUyNjBiY2M5MjViYWFhNDcwM2JkN2E1NWIgaW8tYworNzAwNzUgOWYzMDAzNjEyNGY2NzhhMDM2ZTBhMDFjMDM4YTdkMThkYmQ3ZGVmYyBpby1jCis3MDA3NiBlMWNlNjY2ZDc0MDVhNjM3ZTQwODVhMTE3NGRiMTJmNzcxNjBjZjFjIHB5M2sKKzcwMDc3IGZjMmE2ZjZkMzZhY2E1MWU1YzI2MjVhY2U1MjkzODZmNDFlOTk4OGMgcHkzaworNzAwNzggZDcwNzczYzlhZGFkMmQxYTc5MGEyYjQ0MzA0ZDE1NWNiNTY0MDc3MCBsZWdhY3ktdHJ1bmsKKzcwMDc5IDVkZjY2ZGZhNmY2NGFjNjZiMjNhOTdiMmQxMmZjZTllZjdiMWFiMTcgcHkzaworNzAwODAgMmE0NTgxMDZhZmJmZTM1Yjk2ZjM4MGExMzAyZDAwZGUwMDUxYTA3MiByZWxlYXNlMjYtbWFpbnQKKzcwMDgxIDJjNTkwM2EwMmIzNjNhMzhlM2M4MDQ5OGU2Yjk4YzIwMjliYTE1NzkgbGVnYWN5LXRydW5rCis3MDA4MiA2MTJmYzZlZTY4Zjc0NTE4NTk5OWVmN2FjMDM3MzQzZThhZGU1ZTJkIHJlbGVhc2UyNi1tYWludAorNzAwODMgYjc2MzJkZjExMjFmYjcyMzVmZmIzM2Q0ZTBhMTg2ZDFhNjU0N2M2YiByZWxlYXNlMzAtbWFpbnQKKzcwMDg0IDZmZDIzMTkxN2VmN2MyMzFlMzhiNGIzNGFlNjRmYzRlNGJlM2VkZGEgcHkzaworNzAwODYgYTZjMjRhYWNlOGNiZDc0MTMyZTZkYzUzNThlZjY1NzI4ZjJmYmVjNiBsZWdhY3ktdHJ1bmsKKzcwMDg3IDJjZWIyYTc2ODgwZDVmZjMxNDBiOTVmYzExMjBjYTY5ODY1Nzc0ODYgcmVsZWFzZTI2LW1haW50Cis3MDA4OCBhZGM5YmI0NGVjNDcxMDFkZjE5OGRhYWM3ZTBiMzJkMTQ0YWJjZTk3IGxlZ2FjeS10cnVuaworNzAwODkgOTkxOWMxZjQ3OTVlZjg1MTljYjc0YmE5OGU1N2Q2M2EwMjE4ZjcxNyBweTNrCis3MDA5MCA4ZjVkOGYyN2M2ZmNkYzlkYjUwNTA5Mjc3NzcwMTZjZjVkNGVhMTJjIGxlZ2FjeS10cnVuaworNzAwOTEgZGNkM2JjMmUyMzc3M2MwMGQ4ZGNkYjQ3ZmM2NWI5ODgzM2U1YmFjNSBweTNrCis3MDA5MiA2MGZjZmQxMzdhNzI5MmNmMmZlYmRiNjY2NWZhNWQ0MzdlNWMzODJmIHJlbGVhc2UyNi1tYWludAorNzAwOTMgMDhhNGEzZjljNTBlOWMwMTU1ZDk4NmI0ZjVmMGQ3ZjljNGEzNGI4NyByZWxlYXNlMzAtbWFpbnQKKzcwMDk0IDBiOTdmZmI4MTFhMDEyMTJhNzU0ODQ0MGJlOWMzMjU5NDg0MWIwOTUgbGVnYWN5LXRydW5rCis3MDA5NSAxOWMxYTFjZWIxMjk1NTllYzM2NGE0ZjU4Njg4OTIwZDllZmE5ZjM4IHJlbGVhc2UyNi1tYWludAorNzAwOTYgYzJhOGE1MmI4MTFkYzhjNWQ5ODhiN2FjNjc2ZDkxYmJjNDIyNTFjNCBweTNrCis3MDA5NyBkZTExM2I2ZDI2ZDMyNzQwMWMzODc4MmNjY2M4YTUzZjhlYzhmNDFiIHJlbGVhc2UzMC1tYWludAorNzAwOTggZDVmMTM0YTNhODE2YzcwOTMxZjE1NmMyNzA3OWI3MGEzMmZhYjk2ZiBweTNrCis3MDA5OSA4ZTAzYmZlN2VmMzMxYTlhMzk0NDI4YzdmM2I4NDI4MzAzYTMwNzViIHB5M2sKKzcwMTAxIGM5MTBmNmUzYmIyODcxOTgxY2JhMzhiNDI1OTAyOTQ2NzFkODBjMjMgcHkzaworNzAxMDIgY2E4N2M0NzA3YmZkZGQ4NzM5MGVhMTgwZWMzYmQyMDc2MGJjOWFhNSBweTNrCis3MDEwNCA4NWFjYTQzZGFiYzQ5MzAzMmNjOTQyNDU1NjI0Y2Q0YjhiN2YyYTM5IHB5M2sKKzcwMTA1IGQ1MTNjZTI5MWZiZDIyZmE4NmJiMWE4YjFlODY5MTM1ZTUyNzhiYzggcHkzaworNzAxMDYgZGIyOWEzZmJjYmEwZmRmZmQ5NWFlYTk4NGZhY2IwMjQ5NjFlZTYyYyBweTNrCis3MDEwNyA4NzExNWM3MjcxMDJiNDIwNTYyY2RiZThhODc0YWRjMDRjNjE1NWJmIGxlZ2FjeS10cnVuaworNzAxMDggMmQ2OWQwZDNhOWNhNWUzZjA2NDkxNTg2NTA0YmIxODA3Mjk4MjExYSByZWxlYXNlMjYtbWFpbnQKKzcwMTA5IDljNTZlYjE3ZjMzNGZjZjk1OGY0NmYwYWQ2YzQ5NmUxM2UzM2U4YTEgcHkzaworNzAxMTAgNGRhNWYwZGVkMzYyMmUxMmUxNmI5YWI4ZmE2NGFjOTgwMGNjNjljNSByZWxlYXNlMzAtbWFpbnQKKzcwMTExIDExNmQ5MGVmMzE2NDk0OTQ5OTQyNWJiOGMzNTYwNzE0NWUyZjcyYTUgcHkzaworNzAxMTIgMzc0YTlhZTVkZDBmNDJhNGM0NDZjY2Y1ZDI5OWI4ODgzMmJmNjkzNiBpby1jCis3MDExMyA4ZmUyOTg4Y2Y1NTA5MmM4MzJhODBkZWJiZmNlZWQ4MGM5ZjM4YTY1IHB5M2sKKzcwMTE0IDdiMTc0MWQ2ODA5ZTg5NjNiNWE4ODg4YTcyOGNhMWJmZWY2OTljMzQgcHkzaworNzAxMTUgMDQ1ODczMGViMDM4Yjk3ZmY2MjhjYzY1ZGM2NDFhNWM3MjZiMDUwNCBpby1jCis3MDExNiAxN2VhMThkZmNhYTU1ZDJmYTZjZTQ1ODAwOTc2YWIxMzMzMTFkMDk3IHB5M2sKKzcwMTE3IGQzNDJhNzI1YjJkNTg5OGJlMzViNzU1NDhlZmM5MTAxYjdjNWVmZmYgcHkzaworNzAxMTggMDM4MzIzNTZjMDk2NzQ0OGUxODk4MTYyODk4MjY4ZTEwOTVmODc1MyBweTNrCis3MDExOSA2YzA4YmZlNzhmZmZlYjJiNjU0N2FmNDg1OTJhM2MwM2U4Y2FjYWYwIGxlZ2FjeS10cnVuaworNzAxMjAgNGE0ZGE5NjhkZTJhOThjODc1NmY5ZWEyYTk0OWZkMzVmMDMzZjdmZiBsZWdhY3ktdHJ1bmsKKzcwMTIxIDBjNjM1NTc0YjEzOWUwY2NkYTI4MzI5Mzg5MjkwN2Y1MWFmYjgxNjQgbGVnYWN5LXRydW5rCis3MDEyMiA2YjFiMmU3YTA2ZTk3ZDU5ZjRjZTNlYjZlZTI2ZDRmYWEyODg1ZmQ4IGxlZ2FjeS10cnVuaworNzAxMjMgYjM3M2I5OTYyYzM1YWMyZDQwNDUxYjM4ODRhYzJhMmE3YzNhNGE5NyBsZWdhY3ktdHJ1bmsKKzcwMTI0IDRkMDc4ZDUyMmYyNTk3NTJkN2E2MTcyN2FjOGNjYzgwYjlkODcyZGQgcHkzaworNzAxMjUgZmQwOGU5NDQ5YTQzODgzZDRkNGQwYzY1MDA3M2JjNjZiYWJkNDU4ZiBweTNrCis3MDEyNiA4ZjdiZTQ4NzdhNjA2ZjAwYTk1YTVmZDUzOTE1OWYzMWMyMzk3ZDM2IGxlZ2FjeS10cnVuaworNzAxMjcgZThhZjRlMjRmMDhmOGQ0ZDZmNWZjYWZhMjI3Y2JlNzdlYjUzZDU1OCBweTNrCis3MDEyOCAyNTk2ZGRkYmQwNTdiN2RmMDJmNWYwNzM5Mjg1ZTAyNjc0ODgxMTEwIHB5M2sKKzcwMTI5IDVhZDg4YjkxOTMxOGE1NDUzNTM4ZjdiZjliYjdlMmRmODYyM2RhNTkgcHkzaworNzAxMzAgMGE2MDliYTU0ZjVjNjU5NDVjNGY5OWY4NjRlN2JmZTkxMTE5M2ExYyBweTNrCis3MDEzMSA5ODI1MDI4MjZmNzg5ODc2NmUyOWRkZTYwNWNlMzQxYjM5MTA1Yjk1IGxlZ2FjeS10cnVuaworNzAxMzIgYWU3MWRmOTM5NGRhYzhiY2QwMjE1ZTA2MDRlNjYwYTdmYTU0ZWQzNiBsZWdhY3ktdHJ1bmsKKzcwMTMzIDExNzcyNTg2YmM0Mzk3ZWQ2ODVlZjRjZWFlYWJjZThlNmYyMjE4ZDAgaW8tYworNzAxMzQgNzM4ZmFkMzhhNGJmZTViNjJjYWM4MTg3OTEzOWMwYWY4OWEzOTliNiBweTNrCis3MDEzNSA1YjRlOGY0ZTljYmQ2MmU5OGQ1Y2RkNGRjZmQ2ZjgxOTRkNTcxZjFlIGlvLWMKKzcwMTM2IDYxZDIwZTkxOWE5ZTY2Zjk1MzM1MmI0YWYyZWI2ZjIyZTZjMjU1YzIgbGVnYWN5LXRydW5rCis3MDEzNyA4MDIzM2RmMjRmOGNhZDVhYjJlZWJlZDQyNGEyMWRlNTk0NjRhYWUyIGxlZ2FjeS10cnVuaworNzAxMzggOTIwYTQxZDU4MWI1OWVlZjM0Mzc2ZDBiYTc1YTdlZGJkYmY1OGY1YiBweTNrCis3MDEzOSBlNjczZjkzOTI0MDJkNzU1NDc3NjdiZTQyYmI2Yjc1NGU1OTdkNGI2IHB5M2sKKzcwMTQwIGM5NmUxYWI0ZGFiM2FhMDUzODdjNWI5OTg3N2VmYzc5ZGI4NTM5MzIgaW8tYworNzAxNDEgMzhhYTZmMzZjZTRmYzEwMWMxYzA5Yzc4NmJmY2VlMjAzODY0MGUzNiBweTNrCis3MDE0MiBkNzcxNzJlYjZmZTc4OWQzM2I5MTVjM2VhMmRmZGUzODgxMGE5YjhlIHB5M2sKKzcwMTQzIDNiODg1YjkyYWY2Y2RjZDQxODI0Zjk2NTkyYTA1NzlkODlmYmYzOTggcHkzaworNzAxNDQgNzdlZmJiM2MzMTEwYzAyOTc3NGY3ZmQ3Y2VjZWYzY2Y5OGQ3YTI3ZCBweTNrCis3MDE0NSAwMWY4M2JiNGExYzRkMmJmOTc2Y2UxMjY0ZTVmOGUzYzU1ZDU2ZGE1IGxlZ2FjeS10cnVuaworNzAxNDYgZjYzMmE0ZTZlZTMxNDJjZmRhYjcyMGFiNThlMzYyY2FmNDNkNGM1ZCByZWxlYXNlMzAtbWFpbnQKKzcwMTQ3IDcxMTE4NDVjMmY1ZTNhMjJlNTE5MGQyODRmNjA4ZmJjZTVkNTIzYjcgcmVsZWFzZTI2LW1haW50Cis3MDE0OCA3ZDY5MDcwYTNkNzgzZGViMGYxMjQwMWUwZTU4Y2I2MDJlYWY4ZTFmIHB5M2sKKzcwMTQ5IDc3ODU5OWNlODFhMTRjNjhhNmM3ZGJkOTViYjBlNzhmNmEzOGM3ODkgbGVnYWN5LXRydW5rCis3MDE1MCA4YTNkYWRjY2QyMDc1M2FhYTQ4NTdkZWYyMzYzMzgzZjIyZGRmOTEwIHB5M2sKKzcwMTUxIDcxZGFlMjJlMTgxZDk4M2UyOTRjYWNmOGIyOGM3OWJiNjBkYjkwNDMgcHkzaworNzAxNTIgMzA0OWFjMTdlMjU2YmIzMGI3OWYxMTM0YTM3YjY1N2UzMGQzYjc4YiBweTNrCis3MDE1MyA1OGRiNGRlYjdhYjE2ZDc3ZGEwOWIyMDU0NDI1YjFlZWI4NDFkZGE5IGxlZ2FjeS10cnVuaworNzAxNTQgZWJlMTA4MTBlYmVkZWNiZmZlYzc5NjhjZWVmOTFlZGZjOTY2ODUzMSBweTNrCis3MDE1NSAwMTU5YWMyYmM3ODdjNDk5ODM1ZGQ3ODQzMGQzNzYyNjAwNzcyYmM1IHB5M2sKKzcwMTU2IGUzN2JiMzAyNTVmMzExNzM2MDM5OWNjNDBiYWJjYTdmNzJhN2UzZWMgcHkzaworNzAxNTcgNDU2M2U2MTIwNTQ0YzA3ODFmOGVmNDliNmYwMTQ4YzI1YjU2ODUyMyBweTNrCis3MDE1OCAxOTRmZDQwMTkyMmU2MDdkYjkxMTc4Yzc2OTYzNjk3MGI5ZDI2ZmEzIHJlbGVhc2UzMC1tYWludAorNzAxNTkgZjg2NzBhN2RhMjI5NmIwMGJlOWE1ZDdhNzk2ODU5MTIxMmNkYThiZSBweTNrCis3MDE2MCA3NjhhZWVhMmJjMGZkYmEzNzNkMDUxZTNmNDk2OTNlMjBjZmJkY2YxIHB5M2sKKzcwMTYxIDU1ZjNiODgxY2VkMjYzNzFjNjk1ZmUwYzU1OTc2YmUyZGIwM2JlZDggcHkzaworNzAxNjIgMGE1MzNkYzFkZWIyMjc3MjQ5ZTFhY2I0YmM0MTM0YWE3ZjViODQ4NCBweTNrCis3MDE2MyA3NmE1NzliNmJhZGU5NWQxZWExOTRkNGY1OGE4MjgyMDdmZmJkZTk1IHB5M2sKKzcwMTY2IDBjMDI4Njg1YjQ0YzNiYjRhMTBiMTYxMmVjMGIwODkwNjA1ZmJjOWMgbGVnYWN5LXRydW5rCis3MDE2NyAyNDAyMzFhYzc5Y2ZkMDE3MWQwODc1ODI2ZjA2YzI3MmY3YzFjMGRkIGxlZ2FjeS10cnVuaworNzAxNjggZWIyYzM1ZGQyMjVhYjM0NDM5ODJkOTI2N2VjODA2Yjk0ODU3ZWJhMCByZWxlYXNlMjYtbWFpbnQKKzcwMTY5IGZhOWNjNGQ0MTg1ZjdmZDJjOWQxMjQ5ZGYwN2YzZGViYWEzNWMxYmQgbGVnYWN5LXRydW5rCis3MDE3MCBjZTJiNzU5ZGM3ZjM1ZjE2ZmI2ZDI0ZTgzNDdhMWE5YWZiYmMyNzZhIHJlbGVhc2UyNi1tYWludAorNzAxNzEgNGQwZDYxNWQzNzg0YzJkMTg0N2M0MzVkNDIyMTc4YzczYTA0Yzk2YSBsZWdhY3ktdHJ1bmsKKzcwMTcyIDI2MjljNDdmYTZiY2U0ZjQ4N2NjMzg3ODA3YWZhYWExMjhiMGIxZDkgbGVnYWN5LXRydW5rCis3MDE3MyBjOGE4ZWM4N2ZmMWYyZjNlMzI3MjJjMTAwZTQzNTczZGE0M2JhNzMxIHJlbGVhc2UyNi1tYWludAorNzAxNzQgNDFlNDA3Mjg2NjEwNWQ3OTQ5OTBmYjg1Mzk2M2U0NDUxMTkxOGMyNyBweTNrCis3MDE3NSAzMGVlYWRjNDY1MjBmYmU0NjZhZjY0ZmYzN2MxNTYyM2IzYmY1Y2IxIHJlbGVhc2UzMC1tYWludAorNzAxNzYgMzllOWEyMGI3ZDdmNTA1NGViZWQ5Y2IyNDQ5YTYxZjVhYmY2ZGVlZSBsZWdhY3ktdHJ1bmsKKzcwMTc3IGRjM2QyNDgyNGI2MDI3YTdjZjM3NTdhMmY2Yjg5OWYyZTRiNGJmMzMgcmVsZWFzZTI2LW1haW50Cis3MDE3OCAyNzYyNDRmZmNhZWVlMWNmYTQ2MmFhNTBmZWZkZGZmNWY2NmJlODhmIGxlZ2FjeS10cnVuaworNzAxNzkgNWYyNDVjNzAwYmJiMTUwYTVhYWI1MmNhNGJmZGJlMTZiNWNkNmFjZSBweTNrCis3MDE4MCA0YjU0MzFmYjJlOTIwMjFkYjhkNDI4NjRlMjEwOWIwNjI5YTMxNzk0IHJlbGVhc2UzMC1tYWludAorNzAxODEgZmJjNzc1OTc2M2IyYzhjMGJkNjczN2ExZDM0Y2ExYjEwOTcwZWMxZSBweTNrCis3MDE4MiBlZWFhODdmYzNiZmQwY2I3NWM3N2U5ZmUzMjYxNTA0ZmIxMjZmOTAwIHJlbGVhc2UzMC1tYWludAorNzAxODMgNzU3OTI5MjhmY2U4OWJjYTFlOGM1MDFkY2E3NzM3MGE0ZWY5YTFmMSBsZWdhY3ktdHJ1bmsKKzcwMTg0IDMzZTlhMTQ1ZmQzODM1N2VkNDJhNTJlYmY1MGNiMmU5OWE2M2Q4NjAgcHkzaworNzAxODUgOTliNjhkN2Q3YTg5MmYyOTlhMjA2NDFiZGM3MzQ3YjAyODczODQ5OCBweTNrCis3MDE4NiBmZGRlZTU0NTYwMTNhYzAxZTVmZjU5ZmI2ZWY1ZWY5MDkxZWFlOTk4IHB5M2sKKzcwMTg3IDFmYzFjNDFkMTM2ZjRiY2Q4OTZmYTBjYWM1YjIzMzc3NWVlYzZkNWQgcHkzaworNzAxODggZjQ4YWY3N2VlODRlMjA4MjhiZDUzYjY2YTJhYjBmNTdjZjRkMWZmMyBsZWdhY3ktdHJ1bmsKKzcwMTg5IDc5ZWEwNjY3NjA0YjM3MjJmMmQyY2QxNmEwZjA5OTYxZmY3ODAyZDggbGVnYWN5LXRydW5rCis3MDE5MCBjZGQzZjYwZDk5NzRmNDQ3NjljZjc5ZGM1OTc0YTk4YmFkMzE2ZGFjIHJlbGVhc2UyNi1tYWludAorNzAxOTEgMjc1YmJlZTE0NmFiMDViZjQ4N2YwOWI0YWNiMzQxOWM2YWYzMzc5MSBweTNrCis3MDE5MiBhOGI5YWEwMjg4OTliZTk1OTBiYTBiMGY4MzdlMjE0ZmJjNGE5MDYxIHJlbGVhc2UzMC1tYWludAorNzAxOTMgOWNkMzU1YTc5ODQ1NmY4MDgzN2JkODRiNDMzMjg4NGZlM2ZkNWY4MiBsZWdhY3ktdHJ1bmsKKzcwMTk0IGQwMWRjODQ3YjU4NjIxYzJlNTQ1ZDljYzc0NDMyMTlmOThkMTY4NjMgcmVsZWFzZTI2LW1haW50Cis3MDE5NSA3YjI3OTY3OGE2YTFkYjQ0YTA3OGE4M2I0NDVmOWRmMzE3MjA0NzU0IHB5M2sKKzcwMTk2IDI2OTg0NDUwYzdlOWE4MTg5YThiZWYwNzEwZTk3OTU0ZDAwYzA5YzQgcmVsZWFzZTMwLW1haW50Cis3MDE5NyBhZmVmYjc3MTY0YWQzYmYyZGMxNzRlMDdmNmQwYTllMTk0YjcwNzgyIGxlZ2FjeS10cnVuaworNzAxOTggNzc1ODI5Y2YwMGQyYWJlYzRiNGNkYjU2MTk1MjMxNDcyMGRjNGNhOCBweTNrCis3MDE5OSA4ZGJkMWI5NmZhNmI2OTBmZDdkYzM5MTVkMTBiZTJiNWY3OTE3NWQ5IHJlbGVhc2UyNS1tYWludAorNzAyMDAgYzc3MjM2MjZlNGUxMDY4MDgzN2E2M2NlMjRjMDgwZGYyZTNmNDRjNSByZWxlYXNlMjUtbWFpbnQKKzcwMjAxIDFmOWRlNTM5ODNjMTU1MTMxODBlMTM0Njc1NzJlNDY1YTFlM2JkNjggcHkzaworNzAyMDIgYmViYzRlZWY5ZTg5M2M0MDE5MmM4YWVhMmVkYzg5NjZhMTc5ZDFkNSBweTNrCis3MDIwMyA5ZmE3OTQ5NjQxZDMwMDliYjYxOTg1YWJlY2ZlOTJiM2FiNDdmMDY3IHB5M2sKKzcwMjA0IDRhM2I0NGMyMWI0ZjNkYTdjODJkNWI1MzIxZmE1NmEzMTg2ZmE4ZGYgcmVsZWFzZTMwLW1haW50Cis3MDIwNSAzYjlmNWZhOGJjY2Q5MWQyZDNkMjFhNGM3ZTE2M2JjMDNjYTU4MDQ5IHB5M2sKKzcwMjA3IGNhYmIwZGRjYjg4ZTRhN2UzMTBlZmE0NmU0N2RkMTIyMzUzMmFkNjcgcmVsZWFzZTMwLW1haW50Cis3MDIwOCAwZjZmNzg3ZjEwM2IyOGI0MzIzNTg2ZDE3MzQ0NjE0MzYyODMxMTM2IHB5M2sKKzcwMjA5IGFlZjVjZmU3MzM1OGQ0OGZmZGFkOTIyYjMxYjAwYzBhZjg3Mjg2ZTcgcHkzaworNzAyMTAgZjViODFiZTU5MTU5NDZlM2Y5MjI0ZDZkOWJiNmFiYWM5NWVkZjdhZSBweTNrCis3MDIxMSA5MGE2NjkxNWNhOTE5NzAwYTI0OTk1YTY2MGM2NjA5ZWY3NmYyZmVjIHB5M2sKKzcwMjEyIDQ2NTBlY2RmY2ZiNjQyMzdkMjljMjI5MjQzODMyZDRiZTgxMjlkZDMgbGVnYWN5LXRydW5rCis3MDIxMyAyYjJiNTFmMzA0MDc5OTc3ZmExODk1ZTcyMzBjOGI3ZGMwYjAyMTM2IHJlbGVhc2UyNi1tYWludAorNzAyMTQgZmNjNjIxMWUwZDcxMDVlM2Y3YmI5M2NhN2ExNmYxOTc3YWI0MTVhOCBweTNrCis3MDIxNSA2ZjBkMjExM2RkMjIyNjAwZWY5MGZlNDQ1OGVkYzJmZGY4YzAxZjk1IHJlbGVhc2UzMC1tYWludAorNzAyMTYgYTk5ZmE3NjcxM2ZjNjY4OWNlYzA2NTQ1NjkyMzJjZDVjMjk5ZGIzZiBweTNrCis3MDIxNyBiYmJjOTc0NmM3MGRjNDA2YjllMDhlZTNhNzA1NTJmOGNjZDFkOGMyIHJlbGVhc2UzMC1tYWludAorNzAyMTggNDMzZTExNmMzMzVkYmIyZWNjODYzMDUwNTlhOTY4Yzg5MjYyMDRkMSBsZWdhY3ktdHJ1bmsKKzcwMjE5IDExNDg1MGY3M2UzYTVlYmU3MTVlMjVmZjJlMWExNTdhOTU2NWRiNWYgbGVnYWN5LXRydW5rCis3MDIyMCA0ZTc0NDkzNDhjMWE0ZDVkZTExMzZkODRiZDE4YjVjNTI3ZWU5MjlkIHJlbGVhc2UyNi1tYWludAorNzAyMjEgMDNjODBlMDc0MmMzNDQwOGIwMWY1MTk1YzM0ZTkyNjc5NzhiNGJlMyBweTNrCis3MDIyMiAxMDY2Nzc2ZTI4MjAzNjI0Y2MxOTJkMTM3Mjk5NzliOGJlMjY1Y2E0IHJlbGVhc2UzMC1tYWludAorNzAyMjMgYzc5ZWM2M2U2YzA4ZWQzZTk0NmEzNDJkYmUxMjY5NDhkNTAzMDM2NCBsZWdhY3ktdHJ1bmsKKzcwMjI0IGI5Y2Q2OTM5MjY2NjdkMTg2NGQ5ZTJlNzdiY2JkMTAzOTdlZDZjMmEgcmVsZWFzZTI2LW1haW50Cis3MDIyNSA2ZGJiMmMxYzA5MDA5ZDY2MjIwZWU2ZDIwMzkyMGFjNjMwZDdkYjBlIHB5M2sKKzcwMjI2IGY1MTQ1YWJkNGJhMjZiMTBhOThjZDYyMTM4NjhmNGQzZWUzZmE1MjYgcmVsZWFzZTMwLW1haW50Cis3MDIyNyBlOWU0NmFkZTYxYzc4Njg0OTdkM2ZmMjg3ZjUwNGNhZTM3NmYwMWQyIHB5M2sKKzcwMjI4IGE1ZTMyYzA2ZTE0YjEyODdjOGVjNjkyNDZhNTk3ZDVhNmZhYWZhY2YgcmVsZWFzZTMwLW1haW50Cis3MDIyOSBhODlmZGJiMjNhNGE3ODU2YzdjNmQyMjNmODhiZmYwYWY5YTFhM2QwIHB5M2sKKzcwMjMwIGJjMWNlMzY4OTg2ZTQ1YjFmYWY5NmY5Mzk5NWRmNDZiY2Q3NWU3YjggcHkzaworNzAyMzEgMzZkN2ZhYTVmZjk2MTRlNjI3ZGYwYmRkNWM2N2M4ZGJmMTc1ODA0NSBweTNrCis3MDIzMiBhYmE0NDA0ZjVkOWZmNTE5ZWVkOWJmMzBhMGU3MTZmMTYxMDk1MmI1IHB5M2sKKzcwMjMzIGJmYzJmYTRjODQ0NDliNjFkOWRiMWEzN2ZiNmI3NzQzYmE1ODczMDQgcHkzaworNzAyMzQgZjdiMDZhOTY1OWI4NTMwNWE4MWFiMzA1OGJkZGZiZWRkNTRkOGZjOSBweTNrCis3MDIzNSA0MzcwNDRlNjJkM2QzYmQ0OTQ2NTI0MzBhNTBmNjk5N2FjMDg5YTFjIGxlZ2FjeS10cnVuaworNzAyNDQgOWYyZjg2ZGY1YjI2NDhjYTY5YTFiNzU5YWZkNzhmOWM5ZDYyODg2MiBsZWdhY3ktdHJ1bmsKKzcwMjQ1IDU2OTgzY2ZkZjVkNGUyZThkOThkYWUyYTA4Y2ExNWRjMzY4NzNkZDYgcHkzaworNzAyNDYgZGNlMjhjNmI5ZTg1YTI4ZDhkYTJjOWUwYThkNmE5NzAwYjA5MTAzOSBweTNrCis3MDI0NyAyMDMzZDQ1YTViOTk2ODFlMTQwZGZhM2M0MTRhNDk0MTA0MmFjYThlIHB5M2sKKzcwMjQ4IDg5NWY2OGVjYjA1NWMzZjE1NjY1NjAwYTUzMTk0NWMwN2M1NGNlZmQgcHkzaworNzAyNDkgODM2ZTRkYWRmNmQyY2M2NWI4ZDBmNDU2ZTk0MmIxMTUxMzQ5MmZiMSBweTNrCis3MDI1MSAxMDQ1ZmQ2M2ZhNzMzNWZmOTE1YzU2ZGI4NTQ1YTZjOGU0M2ViMjFkIHB5M2sKKzcwMjUyIGNmMDkzYTc2MzA1MzNjZmJkYTQ3OGNmZWU3NTJiMWVlNTM2MWUyNmIgcHkzaworNzAyNTMgNjUzNzFkZjQxYWNhNjI0MWVlODgxMzA1NGIwYjdlNmM0NTk4NzFmYyBweTNrCis3MDI1NCA1NTQwNzQ5YTI5YmI4NzMwNmFjNWY5M2Y4OGM5NjRhYWUzMjE1MDJlIHB5M2sKKzcwMjU1IDcwZGVjYjU4MGRkOTFmMGNhNzNkZjEyYTZlMDQ2OTZlYzRhNDI2NWYgcHkzaworNzAyNTYgYzA2ZjAyYTVlOTYyN2IxOTA4NWY2NjNlNTE4OTg4NGY1MDU3NTI0NiBweTNrCis3MDI1OSBiYzAyZGUyNzg3NDkwM2FiZDkzMGE0NDE2Y2VmMDA2ZTJjMzliMTFhIHB5M2sKKzcwMjYwIGI5YmQyZTNmNzliYThhNjU4NTI5OTY2MmE1NDdkMDU2ZmVlYTZiMGYgcHkzaworNzAyNjEgNTk4MjUzZGIxZjVkMTEyYzM4MjNlODRlMGJkZDMyNWJhYTVhYmQ2MiBsZWdhY3ktdHJ1bmsKKzcwMjYyIDRkN2Y2M2FjOWQyNDY1ODg4YWVkZWM0NjA5ZTY2OTA3ZmE1ZTIxYjIgcHkzaworNzAyNjMgYjFlY2ZmNWUyNzA0MDQyMmMzNmE2OTk4MjI1NzA0NjkyZTkxYmFkZiByZWxlYXNlMjYtbWFpbnQKKzcwMjY0IDUwMzk3NmNlMzM3M2U1ODliYzEwYmNhMDM4MjYwZTdjNDkxZDE0MjEgcmVsZWFzZTMwLW1haW50Cis3MDI2NSBmNDY3ZDQ3ZjZkZTUyYWRmNjNmZDRkMWQyMTVhYjJhYWJmNmVjNjRmIHB5M2sKKzcwMjY2IDdmY2I3ODVlYzBmNTI3ZDQ4YjIwZGNiMThkYTVlYTkxZDJjZWY1MGYgcmVsZWFzZTMwLW1haW50Cis3MDI2NyA5N2FjODNlNDUyNzA2MWI5MWNhMGM3ZGZkYTc2NTYwNDhkMzcyYTMwIGxlZ2FjeS10cnVuaworNzAyNjggNTQ1N2U0NmQ5ZGZkNDYyOWE2ODE1NTdkMDY5YzNhYWEzNjcxZDE4NSByZWxlYXNlMjYtbWFpbnQKKzcwMjY5IGMxNTQyM2Y5ZmFjMzUwZjM5MjhhMTY5YjhmMDA1ZTczNTBjNDE5MjAgcHkzaworNzAyNzAgM2U2NzZiZjI4MzEwM2VlMDE2ZjdjOTgxODM3ZTY5YjZkYWU0MjM1NyByZWxlYXNlMzAtbWFpbnQKKzcwMjcxIDYzNDU2ZDJiZjVhMDg5MTdjOTExYzM5NjFhNDYxNTZlNzI5YjYxMGQgbGVnYWN5LXRydW5rCis3MDI3MiA1YzkxYTZlMTg1NjRmMDRmMzM0ZDZiMTZlNzBkYWY3ZjM5NjI2MzI4IHJlbGVhc2UyNi1tYWludAorNzAyNzMgYmNmYjdkNjc5MTYxNTliY2ZhNDU3NTJhNDRmNmViY2EzYzEwN2YxNSBsZWdhY3ktdHJ1bmsKKzcwMjc0IDdmNzA3NDkyOGM2ODE0MmQ4MDUyNjc0NWI5YTU1ZjdiNTc5MGVkODMgcHkzaworNzAyNzUgMWE4MzkxY2M0YjQ0Y2Q2NmVhOTg0MjU1YTFiMGJhMWE1MzFkOTNhOCBsZWdhY3ktdHJ1bmsKKzcwMjgwIDc5ZmUwN2UxMzM4OGVjN2E4NDhjYTIyZTQzZjU1ZTUyNzllNmIzYWQgcHkzaworNzAyODEgNDI1NTNlMzVmOGU0YjQ5NjY1YjliMDRlMWVlODY4NGVlOTA3M2UwZSBsZWdhY3ktdHJ1bmsKKzcwMjgyIDNiNDM1NzdlMTk3MWM4YzEzODBhZjBjYjJhMTdiMzlhZGY5YzdhNDIgcHkzaworNzAyODMgN2NiZDQ0YzIwM2NmOTVjYWE3NjA0YmZmYzU0NWMyZWViOWI3MTA3YSBweTNrCis3MDI4NCA4ZWQzY2JhYzE2YmY1NjUzZmE0MmMzMjI4Yjc5YWE5YzRkN2RhOWZjIHJlbGVhc2UzMC1tYWludAorNzAyODUgZGFiNDU5NzFjNTY4ODQxZDIzODUwODc2YWY0MWY0MTBlODgyMGMwZSByZWxlYXNlMzAtbWFpbnQKKzcwMjg2IGY4MDRiOGEyNTExNWU3YjIxZWEzMTQwM2YzZmEwMzY5MGFmN2E0M2IgbGVnYWN5LXRydW5rCis3MDI4NyBhZTMwMDZjN2Q1YjAxOTljNTZmODBlNjRlNDZlNzFhYjdkNWRjYmZkIHB5M2sKKzcwMjg4IDg5ZDhhZjI1OTM1MzI3NGU3NzAxMDE5YmRhOTUxMDZjZjE5NjEwMzggcmVsZWFzZTMwLW1haW50Cis3MDI4OSA1NjNiNGY4ODNlZDg4YjE2NjI3ODdjYjkxMDVkMGM0MjM3YWVkYzlkIHJlbGVhc2UyNi1tYWludAorNzAyOTAgNTRjZmFjYWM2ZDBhMTU1ZDE4ZWQ4ZmM2M2FlODQ3YzQzZDc3NDEzZiBsZWdhY3ktdHJ1bmsKKzcwMjkxIDAzMDgwZmEwOGRmZTdjY2RmMTViY2UxNWI0YzcwYmRjMTQ2ZGZjMzAgcHkzaworNzAyOTIgNWJjOWY2Y2M1NjFlMDQxN2E0MzM4NDlmNDUwYWVhM2Q4Nzg1NzljMyBsZWdhY3ktdHJ1bmsKKzcwMjkzIDRmZGRjZDRlOGViNTE5ODYzY2EwYTY0YTMzNGQzNTExMmIyZWI1NjcgbGVnYWN5LXRydW5rCis3MDI5NCBhZmQ3MTE4YzhjY2ZiNDBjYTU2ZTdkM2YxMTViMGI0Y2FkYmM0NjFlIHB5M2sKKzcwMjk1IGRjYmZmZTkxOGE2ZjhlYzZlZDdmYTE1OGFkOWNiYzI0YWI1YWUwZjIgbGVnYWN5LXRydW5rCis3MDI5NiBhYjdhNzIxNWU0NjM2OTUwZjBhY2Q4OTk5YTNjNzU5NTNmYjE4MWZlIGxlZ2FjeS10cnVuaworNzAyOTcgYzVlMjNiOWNlZGNjOTk3NDAzNzY4MDQzZjRkYjZmNTQ5MGE0MTc1NiBweTNrCis3MDI5OCBiMDkxMWI1YTAwMmVkODQxYjZjZjI1Y2Q4MDRlOWU4NDJhMDU4YzBlIGxlZ2FjeS10cnVuaworNzAyOTkgMjE4NTBkNmQ1YjRkNDBhOTZlYzI4ODg2MDRhY2QzOTk4MWI4ZmVlOCBweTNrCis3MDMwMCAwMzgyOTAxYzZlYmQyNzk0NjExNzM2YWZlY2Y4YTdhMTM4Y2Y1OTFkIGxlZ2FjeS10cnVuaworNzAzMDEgM2MwNGQzNGMwNDk3MTdjZThiY2RlOWMzYjY3ZDkzNTU1ZGM0MzQzOSByZWxlYXNlMjYtbWFpbnQKKzcwMzAyIDQzMjJlNmRkMmE2YzllZDY0ODJlMTk5YzRhYzMzNjgwZTNkODM3MDYgcmVsZWFzZTI2LW1haW50Cis3MDMwMyAwYzdkYWM3ZTJmYjA4MTEyYzM3MDE3NWQxZjc5MzBhNWUyODJkZDYyIHB5M2sKKzcwMzA1IGE2MGZhY2M5ZjdjZjU1NWIyNTRjMGNmNzU4MmZjNTA4OWQzMDU3M2YgbGVnYWN5LXRydW5rCis3MDMwNiBmNTFhMjhiMTA0MjY1MTQ1MTBlMzNlNWJkZmM1MDJhYjBiZWYzNjlkIHB5M2sKKzcwMzA3IGNiY2IyMTQxYWVlNTllODRiOTdkZjlmYThlZGFmOTgzNTFjNzAzZDEgcHkzaworNzAzMDggM2VjZjZjM2NjODFlMGViN2ZkZjQ1ZjQ1NjU5N2EzZGZjM2QzYjM3ZSBsZWdhY3ktdHJ1bmsKKzcwMzA5IDhiMGI5ZWU1OGY2N2I4MWFhYmVkY2FlMzEyZGY2NTg5MTY5ODg1YTIgcmVsZWFzZTI2LW1haW50Cis3MDMxMCA0OGZlNjIzMTcxYTQwZDUzYzZmMjYxNjQ1ZDE1MWY3ZjU0NzkzNWUyIHB5M2sKKzcwMzExIDg3NTg4MWZmNjlhNGQ1NDhhY2M5NmNjZTcxZGRhYjNjODUwZjJmZTggcmVsZWFzZTMwLW1haW50Cis3MDMxNSBiZWI3ODgyOTFjN2ExNmE2ZjM3OWVkOGVhMjAwMGMwOGVlODYyZWI1IGxlZ2FjeS10cnVuaworNzAzMTYgNWRmYzQ1YmRhOTZkMDk1MGNlMjRkOWU2Y2E5ODYyMTU1MTEyYWVkZCBweTNrCis3MDMxNyAzNDAwY2IxMGQ5Y2Y3ZDQ2MWVlZjNkMWE4YWYwOGZhYmY2N2U3ZGUzIHB5M2sKKzcwMzE4IDFlYjU3YmRkZmIzOGJlOWQ2OTk4ZmVlMGM5OTVlNDcyMGRiZjk4M2MgcmVsZWFzZTMwLW1haW50Cis3MDMxOSAxZDhlNGJjZWNmMmFhYTk0MTNhNjMwYWQ1NzEwOTNhMGJiMzg0ZWI0IGxlZ2FjeS10cnVuaworNzAzMjAgYmY2N2U1YTg5M2Y4ZWMwYjU0NmRhMjcxMTUxMGE4NjAzMjU1ZmE2YyByZWxlYXNlMjYtbWFpbnQKKzcwMzMxIDZiMDI0ZmY1YjU4ZjZiMmQyZjQ3MGUxYmRiMmY3NTViYTBhNGNmZDcgcHkzaworNzAzMzIgMmU4ZTg5N2ExMjQ0N2YxYzJhZjQzYmZlNDZhOTJjMDA3ZTE4ZTZhOSBweTNrCis3MDMzMyAxYThiYmM1ZmIzZWZjMjVjY2JlYTc4NDA3MjkxNGZhMzZhZWE4ZDJjIHB5M2sKKzcwMzM1IGYxODhkZDY4NjIwZTZhNGFkYjE4NWFkNzFhZTFhMDMyYTY4Y2UyOTggcHkzaworNzAzMzYgMDRhNWI2NDM4NTI2NGU5NjM4YzNlM2I0NDNlOWMwYzhmYjcwYTk0NSBweTNrCis3MDM0MiAwZTg4NTgyYWEzY2U3MDRhMjA3ZDI2MzIzOGE3ZWU2N2M2NzlmOTM4IGxlZ2FjeS10cnVuaworNzAzNDMgZTVlNjRhMGM0YWEyYzMxZTUzN2ZkMTM5ZjllZmRhZmJhZWFhZThjOCBweTNrCis3MDM0NCBiMzYzZTI5NzU2ZmYyNTg2M2M5ODk3MWQ5YmJmNWEwYmU5NjI4OTllIHB5M2sKKzcwMzQ2IDQ4MDQ4M2MzZDkzZTMxMzhmNzFlMDdhNWFjZWE3OGI5ZGY4NDRlMjMgcmVsZWFzZTI2LW1haW50Cis3MDM0NyAyMjc0N2U4NzRmNDZiOTA1MDZjNmRiZDYzZjdkYzU2ZGVmNjMxMzFmIHJlbGVhc2UzMC1tYWludAorNzAzNDggNjMyYWE1Njg0NzRjOTg0ZjEyNmY5MGM5M2RlMDM5YWNlNGRkODhhOSByZWxlYXNlMjYtbWFpbnQKKzcwMzQ5IDhiMTI4ZTA1ZWM3NDU1OWQ4MjE1MGE2ODVkYWU3YTU4YjE0ODA4NTEgcHkzaworNzAzNTAgNzkwY2I5OGY4YjRmYmYwNWQ4ODJmNTM0ZGYyMDAyYzQ5ZWQ2ZTYyOSByZWxlYXNlMzAtbWFpbnQKKzcwMzUyIGE1OTk0NzViNjljMzAwODAxYmI5YTE4MmUxZjRjZWJkYmRjOGM4MTcgcHkzaworNzAzNTMgMWY4ZDExY2Q0Njg0MjAxOWE5MmI0ZWUxOTQyOWZhODJjYTY4YjFjOCByZWxlYXNlMzAtbWFpbnQKKzcwMzU2IDg2MWNkNDZlZWFlZTdmNTM2YTQyNzYzOWJkYWQyMDdkZmQ4NTJhZmMgbGVnYWN5LXRydW5rCis3MDM1NyBhNGM5YjBiMGE4ZTRiZDc0NzI4OGZmYTE2NjZjOGE3ZWNhNjJhZmE2IHB5M2sKKzcwMzU4IDMxNjU5ZjkzNzYxM2NmNjYzZWFmYzA3MjEwYTI2OGIwNDY1ZDgzYzMgcmVsZWFzZTI2LW1haW50Cis3MDM1OSBmMjdjYWFjYjc0MjY3OWU1MGRkOTA2NzliYTdmNzdmNjlkYzFmMDYwIHJlbGVhc2UzMC1tYWludAorNzAzNjQgM2YxOGQ2MDlhYzFiZDg3MjE5ZGVmYTQ4ZmViYmY4YWYxNTg1ZDcyNiBsZWdhY3ktdHJ1bmsKKzcwMzY1IGM1ZmViMDU4ZmZjNGE2MWQ1OTdiOGVlMDhmMzU5OWJhMjI0MTE0ZDcgcmVsZWFzZTI2LW1haW50Cis3MDM2NiAxYzBhMGY3YjRmNzZmOWQ1OGQxNjc0NWYyNGFlZmY2YjA5MmQzYjU0IHB5M2sKKzcwMzY3IDczNzdhNGQ5NWE0NGNhMTM4MGMzNzVlNGI5Y2ZkNDc1MTZjZjUxYzUgcmVsZWFzZTMwLW1haW50Cis3MDM2OCAxZjk2ZDczM2E3NDM5MGU2MTYyYzNkM2RiY2FhMGJiZjE5NzMyMGI1IGxlZ2FjeS10cnVuaworNzAzNjkgNGUxYTE1NzZmMWU1Y2Y1NjhjMGEzMDYyYTk0ODIyOWQ0ZTlhNDFjNSByZWxlYXNlMjYtbWFpbnQKKzcwMzcwIGMxZGM4N2JkODgzYzllN2ViOTc2ZTAyYTZmODI3NDFmMTk1MWU3ZTkgcHkzaworNzAzNzIgMGIxOWJhMzE4MDcxYjFkZTFkNWEyYWFmYmU3NGY2ODY3MjYzZjIyMiBweTNrCis3MDM3MyA2MmY5ZGFkNjI4ZGVmYzE5MzI0YjIwNzBiMzZkNTMyZGNkODNmMzhlIHB5M2sKKzcwMzc1IDY5Y2Q2MTViNzZmYmQ0NjZkNjc3NGZkZjY2MDdmNGE4Y2VhM2VjODAgcHkzaworNzAzNzYgZThmZDc5NzYzYmNjY2ViOGMyZjY3ZDY3YzE3ZGZjNWYyMDc3MWY3NiBweTNrCis3MDM3NyA3MGY1ZjkxMTNhZTExZWM4MGRjMzNkODg5MzQ3Y2M5NzcwYTA2M2M4IHB5M2sKKzcwMzc4IGJlYWYwMGM5OGI3MWU2MzEzYzZjNWNkMDMxMWY0YmRlNThlMDQ2MzggbGVnYWN5LXRydW5rCis3MDM3OSAzN2Q3NmI1YTgyN2JhM2EyNWNiNjI3MzU0MTY0MzVlNjM0ZWE0MzUxIHJlbGVhc2UyNi1tYWludAorNzAzODAgNGU5MjdmYWYzMGVhZWVjMWE0YmMyYWFiMGQwNjQ4ZDNkNTQyMGYzZiBweTNrCis3MDM4MSBlZjdlNDdlYjJiNjk3NWQ1YjVjMmZhYjdjN2MwMjM2OTVmYzczYjM4IHJlbGVhc2UzMC1tYWludAorNzAzODUgNDQyYmRmZTkzYjI5MjFhOWNhOWJhNTFjYjQ5YmU5NjVjMmMwYTdhYSBsZWdhY3ktdHJ1bmsKKzcwMzg2IDIzYTM5Njk3ZmQ2N2U4NTg0MTc3MmRhZGIxNmMyZWIyMjIyZjM4N2YgbGVnYWN5LXRydW5rCis3MDM4NyAxYmUwOWM1YzY4ZTk4YjRmN2M4Zjg5Yzg5OTJlOWU0YTAwNTQwYjY0IGxlZ2FjeS10cnVuaworNzAzODkgZGU3ZTQ3MTZkOWNiYTk3ZWJhYTU2MjdlZTdjYzRhYTMzNmI3NjgyNyBsZWdhY3ktdHJ1bmsKKzcwMzkwIDY4NTUxYjJhNWZhYTI4MDNlNDNmYzNjZGNiMTlkNmQyNmZkNGVkY2IgbGVnYWN5LXRydW5rCis3MDM5MiAyZmU1YmFmODk1Njk1ODFkODVkMjNhMDU2OGJiYjRlYTZhNTZlMTRjIGxlZ2FjeS10cnVuaworNzAzOTMgMGQxOWUxMTY4M2ZmZWI3NWU0ZWQ5NWEzOTRkMDgzODhjZDI5Y2Y5MSBsZWdhY3ktdHJ1bmsKKzcwMzk1IDRlOTRlYWI2YzdhMmQwZGVkMTA2MDFmY2E2NjY1MzM4OGFiYTJjNDEgbGVnYWN5LXRydW5rCis3MDM5NyAxMmViZGE4ZmI2YjMwMGFmMjdhNmI0ZThlNzEyY2Q3M2M4ZDI4MTllIGxlZ2FjeS10cnVuaworNzAzOTggMGJlMWMxZjEyN2UwNDA3NzljZjNiZTQ4YWU5ZDc3NmNlYTdiZGU0NyBweTNrCis3MDQwMCA2YmYwZjNhYjAyNzlhYzEzNzFlMDBkNjcwZDk5MGZmNzE1N2JkMDhhIGxlZ2FjeS10cnVuaworNzA0MDUgZTRkOTg0NGFiYTI1MDFhOWI3OGVlNDQ0YzE0ZjAwYzYwMDQ4MjlhOCBsZWdhY3ktdHJ1bmsKKzcwNDA2IGNiYTYwOTM4MzA3ODFjYjlhYmQxZWM2MGFlMmQzODNiZmQzZDRlZmEgbGVnYWN5LXRydW5rCis3MDQxOCBjY2VkZWYyOGZlMDQyMDIzNzJlOTQ2NTY5ZGJiMWFiNDZjODhiYWZhIGxlZ2FjeS10cnVuaworNzA0MjQgYTMxOTNjMDQxNDk2ZGVjZGZiNmQ5MjI5N2IzMjc1MGY4ODRkMDg2NyBweTNrCis3MDQzMCA2YjczOGI2ZjdmYzY3OGI1NDEyN2M4YzBiMmFlZWRhY2RkNWI1NGJmIGxlZ2FjeS10cnVuaworNzA0MzEgZmQ0YzgzOTI4MDgwOWFjYWE1ZDliOWY5Y2U0MjgxMGUyNTZiZTlhNCByZWxlYXNlMjYtbWFpbnQKKzcwNDMyIDM5ZjRmYTUxYWNmYjgwN2I4OWUzNDQyZWMxYmE5ODhkYjMyNzY3ODcgcHkzaworNzA0MzMgYzM1N2Q3OTI2NGY4Y2JmNGY1ZDcwMmIwOWVkOTNiNDQ4M2FhYzk5NyByZWxlYXNlMzAtbWFpbnQKKzcwNDM0IDdjM2ZlMWE0YTJjZTM0ODhiZWRhZjUwYTAwZTI1NjM4NDJiNTdkOWYgcHkzaworNzA0MzUgMTU3MjQ3ZWI3OTNkYmJlNjc1NmFmMDNhYjNiOTA3NTYxNzlmZTJmYSByZWxlYXNlMzAtbWFpbnQKKzcwNDM4IDE3MWVkNmZmYzg2YzY0Yzk2OTZlN2FjZjgwOTFlOTM2Njc5MDAxMTYgbGVnYWN5LXRydW5rCis3MDQzOSA1ZGVlOTNhOTc1NThlMTgxZTdlMjhhNmZiYTljZmFlZjI4Mjc3ZmQwIGxlZ2FjeS10cnVuaworNzA0NDAgMTJlMTRlNmYxZjJkYjFlZDc1YzVlMzQ4NGZiMWY2MmM5ODBiMmQzMiBweTNrCis3MDQ0MSBhZDRhNzJiMDhkM2U0MTBlN2U1M2JiZDVlYWJmZmIxNTM0N2NiOTE4IHJlbGVhc2UzMC1tYWludAorNzA0NDIgY2FjMjA3MzczYTM0Zjc0YzZkZDE2ZTgwOGUxZmIwMjU2NTYyODMwMiByZWxlYXNlMjYtbWFpbnQKKzcwNDQzIGQ5NWU1YWRkM2NhNGNjZTMyOTA4ZmI3MDFmZDhkZGMwY2EzYzg3YzYgbGVnYWN5LXRydW5rCis3MDQ0NCAyZDk0YzhmZWQzNzZmNzZiOGZlOTZlMjg3NDg2ZjAxMTA4ODM4MGJiIGxlZ2FjeS10cnVuaworNzA0NDUgZmNkZmZkODVhOGJkM2ViZTBlYThiOWJjMDgxNDBkNTMzNGRlMzRlOCBweTNrCis3MDQ0NiAyMDdhNGMyN2E5MTZhZDlkMGEyYjRhMjQyOGRlZmFmNmNiZWQ4ZDlkIHJlbGVhc2UyNi1tYWludAorNzA0NDcgYTUyNzQwNWE5YzEwNjEwODMyNDkyZjZhOWViODljNzM4MjAzNjAxMiByZWxlYXNlMzAtbWFpbnQKKzcwNDQ4IGMzNDBlM2Y0OWJmMzY0OWU3N2FjYTYyYmY2YmZlYTAyMWYyMDFkMTAgbGVnYWN5LXRydW5rCis3MDQ0OSA1OGIyODZlMTVlYmNlNGNkZjk5Y2Q0MDJkYzU3MTA4OGJjNzk4NTI3IHJlbGVhc2UyNi1tYWludAorNzA0NTAgNTkzODBiMzkwYzQwNjI0OWEwNDg2NDljYjJjNmYwYjRlNDAxYjEzOCBweTNrCis3MDQ1MSA2ZmU2NDAxZGE1MWY5Y2FjYmFmMDY2ZmIyNThhZjY2YTNiNTQ0OGU4IHJlbGVhc2UzMC1tYWludAorNzA0NTIgNzk2NDJiNTg4MWUwYTZiMjIyZDc5NmQxNjA0MmVmNGI4ZDk0NDkyZCBweTNrCis3MDQ1MyBkYTQ4NDBiMmJhMDYxMmY3NGMwMmUzZDI1MjZjNGM3MzQxYTRjMjllIHJlbGVhc2UzMC1tYWludAorNzA0NTQgYzczZGQyNWMwMWMxMjA0MTA3MGUxMTAyYmQ3MzBlOTc5MDQxYzdiYiBsZWdhY3ktdHJ1bmsKKzcwNDU1IDZiYTVlZTVhMjIwOTQzYTMwNzIzNzc2YjA2MmU2ZjdkNjJlNjk4NjggcmVsZWFzZTI2LW1haW50Cis3MDQ1NiA3ZDhmZDc5NTVkMTU1NzQwN2IxNGY0NmVmMTI0NTMzMWY1ODJmN2M0IHB5M2sKKzcwNDU3IDNlZTI1OTQ2OWJhODI4MDQ2OGQ3MzY3Nzk2NjJhNzQ0YWQ4MDE2Y2UgbGVnYWN5LXRydW5rCis3MDQ1OCA3YjUzNjBmYTNlMTlmMjkwNmJmNGVkMDM1ZmMyYThiMzYwZGJhZDE1IHJlbGVhc2UyNi1tYWludAorNzA0NTkgYmI1ZGUyNGEzNDNmNjk3MTViMjRmOTk0MWE4MGVlZDllODQyZTg4YyBweTNrCis3MDQ2MCA5ZjQ2MjhiNDY1NWIwYmU5ODIwMTVkNmZlZmRiYzA3ZDA5YTYwYjdiIHJlbGVhc2UzMC1tYWludAorNzA0NjEgZmZlNGI5YTEwMzVjZDM2ODkxNDZhNDkxMGMzYzJjYTJjMjVlNzcyZiBweTNrCis3MDQ2MiAzNzAzMTdmYjk1MTU1NjE4MzhkZTVkNjUwZDk0Nzc3NDMyZjczMzVmIHJlbGVhc2UzMC1tYWludAorNzA0NjMgZDJiNzg4N2Y4YzlhZWMxMDFjYjlmYWMxNzZjYmY2YjdkZDY2NGM2OSBsZWdhY3ktdHJ1bmsKKzcwNDY0IDkyZmVmY2RkYmZlODQwMTUxYTlkZTFhNTI5MmQ4MGY1MDYzODBhNTEgbGVnYWN5LXRydW5rCis3MDQ2NSBmYjgwYjI4MWUwNWFhMGFhZmViNGYwZjg0NDVhZDcwMjNmMTFkYTYzIHJlbGVhc2UyNi1tYWludAorNzA0NjYgN2NmYmJmMmQyOTRlNTEyYTM3Y2ExNzUxOTQ0ZjlkZWNhM2FmYTU3ZiBsZWdhY3ktdHJ1bmsKKzcwNDY4IGUyYzFjYmRhMmE5NTcyNWExMTJjYWE0MzliNDk2ODBmMWE1MzhiOGMgbGVnYWN5LXRydW5rCis3MDQ3MCAxZjczZTA5ODRkNTU5ZTdkYTcyOTVkYzMwYzI3NzYzYmVjODhjMWM0IGxlZ2FjeS10cnVuaworNzA0NzEgYTExYTY3NmZlNmMwNWFhYmUyOTU0MmMwMDIxOWJiYmVlZWFkOTBmYyBsZWdhY3ktdHJ1bmsKKzcwNDcyIGVhZDNkZTQ4YWFkZDc5NmZjYjVkM2ZmNmI3MDMzOTVkMzAzMmMxZTEgbGVnYWN5LXRydW5rCis3MDQ3MyA4ZmQxNzIxYzMyYzQ3NWMzNGIxOTZiMmMwMjgxOWNkYzgxZDZkMjU1IGxlZ2FjeS10cnVuaworNzA0NzQgMTEwMGE1MDZlZGNmMDUxMDY5MjY4ZmJhNzM4ZTBjNjgyZDJlZmQzNSBweTNrCis3MDQ3NSAyOTBjNzUxM2UxMjUzNzVhZTM5NjhmODk0NmVhY2JiMWUyZjI1YjFkIGxlZ2FjeS10cnVuaworNzA0NzYgNDIyZTJlNjc2M2U5YTE3ZWY2YTBjMjM4NjNmNDk4ODhmODhjODYwYyBweTNrCis3MDQ3NyA0ZmRiMTBkYmM3MzY3NmM2MGJiOGQyYTAyMTQxMzFjZjhhZDU0ZDU2IGxlZ2FjeS10cnVuaworNzA0NzggNjY0NjliNjVkNTQ4NDQ0Y2JmOGMxOWU1ZTRjZDQyNmE2MzZhNDk1YiBweTNrCis3MDQ3OSA5YjM1OGVhZTUzMmE2MjFmNTI0NTU2OGUyYmM5Y2ZiZmE2MjAzMTdlIGxlZ2FjeS10cnVuaworNzA0ODAgZDFjMGY1NTA0MGJhZDUyNGIxNmY2MTY4MGEyZTA2YTU3N2UwNmFhMCBweTNrCis3MDQ4MSBlN2NmNDY5ZDBlMTI4M2I3MmJmYzNmNzY2NmY3YTUzNTAyY2E1OTQwIHJlbGVhc2UyNi1tYWludAorNzA0ODIgNWEwMmYwY2YzYzM4MWVkNWNjZDE4YThkZDhjZWQ2YjhjOGY4MGI4OCBweTNrCis3MDQ4MyAzOTU5ZDUwNGI1NGMzNTM4OGRlOGVmMjUyYTk2ZjhlNWQ4YWEwY2E4IHJlbGVhc2UzMC1tYWludAorNzA0ODUgNzg3ZjI1YjEyN2VlNjFkMGE3YTdmNWRkZmE5ZmVlOGVjMWMwZWVlNSBsZWdhY3ktdHJ1bmsKKzcwNDg2IDczZmRjMDc2ODFlMzdmMGI5NDk4YWE3NTA5M2ViYjJiZDM0YmVjZjMgcmVsZWFzZTI2LW1haW50Cis3MDQ4NyA1MDU3N2FlMmMwYzBjNTM5MzMxY2Q1N2UzZDBhMWFjZDIwYzU1YWViIHJlbGVhc2UzMC1tYWludAorNzA0ODggMjI3MzdlOTVmNmY3NTU0NDJhNTAxOTY1YTMzMjdhOGMwNzA3ZjdhYSBweTNrCis3MDQ4OSA2YzBjMTVhMmVkMmQzZmU5NDhhNDY2ZGYxNDA2ODgwNjg1Yzk0MzU3IGxlZ2FjeS10cnVuaworNzA0OTAgYTQ3MGQwYTAyNTZlNzQyZjJjOWY3YTc1Mjk1OTAxMjdkZGVjZmZhMCByZWxlYXNlMjYtbWFpbnQKKzcwNDkxIGQ5MmE2ZGVjOGJmZWQ3NTIxOWU2NWVlZTYzYzdmMTllMzk4MDRjMGYgcHkzaworNzA0OTIgYmM2ODFlNTNmOTRlMDZhZGQwMmRhMGY0MjZhMjg2M2U2YTlkYTU0YSByZWxlYXNlMzAtbWFpbnQKKzcwNDkzIGM1Yjc5NThmNDI5MjA2ZTA5NWVlOGMxNjAzOGRmOWI3OTdhOGE2OGUgcmVsZWFzZTI2LW1haW50Cis3MDQ5NCAyYTNhZjIxMWYwZTExZmE3NDM3NWYyNDkxZDZkOWE3MDQzOGUxMTcyIHB5M2sKKzcwNDk1IGM3YjJjYzgzNThmNjY1NmUyYzdlYjUwMjhjODQ0NDVjM2FiMzI5MWYgcHkzaworNzA0OTcgNWNhY2U3NWJjYjA1NmNjNjI3MjZmMDFmNDY3NmJlZTQxZDc1MTAwNiBweTNrCis3MDQ5OCA1YWE2M2RkZDE1MTM0NTRhNzdmNDE0NjFlZWUwMDE0ODdkMmY4Y2Y5IHJlbGVhc2UzMC1tYWludAorNzA0OTkgYjg0NmQ3MDljYjc2MzI3MDFiMDE1MmQ1OGMxYTRiODY4ZWExNDY2MyBsZWdhY3ktdHJ1bmsKKzcwNTAwIDAyOTI4MTIxMzM4ZDkzMWU0MDIxNTk3M2FkY2Q2MzY4YmViZmU2ZTYgcHkzaworNzA1MDEgNWM1ODIzNjY3ZGRkNWNlZWRlOTQzNWYyMDk5ODFiOTUxNjIyZjA5MiByZWxlYXNlMzAtbWFpbnQKKzcwNTAyIGI4OTM0ZGQ5MjY3ZGUwM2JkNzZmOTkxODZiOGQ3NWExZDZmNjM4OTcgcmVsZWFzZTI2LW1haW50Cis3MDUwMyAyZDZmZjVjZDI2MDAxMjQ2YTE4ZjU2NzViZWE2MGZlNmU3ZjJlNmFkIHB5M2sKKzcwNTA0IGYyNzc3ZWE5NTRjYTI1YmVmMWMyZTkxNGY4ZmIxM2JiOWFkNDdjNjEgcmVsZWFzZTMwLW1haW50Cis3MDUwNiA1YjFmMDJkYzY5YTM5MTkwNWU3MGIwMzc3N2I4NWIzZjg4NTg1MjQyIHB5M2sKKzcwNTA3IDNhYjJlNTJkOGQxOTY5YzE0M2FmMDBmMTZiMWMwYzJiYzA0ZGQ2MTYgcHkzaworNzA1MDggZTQxZjVhODlmNWMwNmU5OWJmNjQ2ZjYyNzY3YmVhMDAxNmQ0NjI3OCBweTNrCis3MDUwOSBjNjY4OGU5MTU2YjU5MTdlZWQ4NjU1MzE2N2ZhYmQwZDIwMmJlNTVkIHJlbGVhc2UzMC1tYWludAorNzA1MTAgMThkNjU2NTEyMzVlNDg5MTMyZDFiODQ4NjJlNWZkMTUxNzViYWIwOSBweTNrCis3MDUxOCBmYjIxZWFiYTk0ZjY4OWVlZDI3Yzk5Y2RhYTkxYjkzMDA3YTkxOTk3IGxlZ2FjeS10cnVuaworNzA1MTkgZDFiMGJkNDhiYTE1NjM4MWI3OWY5ZjFlNDRjZDM4NmNkNDdiYWE4MCByZWxlYXNlMjYtbWFpbnQKKzcwNTIwIGM4N2U1ODI2MmQ1YmNiM2VkMjM1NDI5ZTEzNzJhMDYwNTEzNWNmMzEgcHkzaworNzA1MjEgZWZkMTdjYjU4MjNhOThmZWE2MDE2OTEyNjVkOTdhNDNjMTQxNDg1MSBsZWdhY3ktdHJ1bmsKKzcwNTIyIDc1MmYyZTNlNDc1NzdmYjAzMDNlZjAwODk2ZjU4NDdmMWUyMmY4YTQgcmVsZWFzZTI2LW1haW50Cis3MDUyMyA0NDVkNDA0MjcwZWFhYmYxOGJmNjMwZjliMTBkMzIxMTc1MTY1MzdkIGxlZ2FjeS10cnVuaworNzA1MjQgODU2ZWQ0MTg3NjhjMTkwNjhhYTcxYTIwNDAwMDlkMTJhOGYzNTQxZCByZWxlYXNlMjYtbWFpbnQKKzcwNTI1IDA5NWQ4NzRhMzA1NDlmYWJmZWRmZWEyZWQxMjY5YjQ1NTQ2ZmNkM2YgcHkzaworNzA1MjYgNDM1YjhiYTFhOTAyMzQ0YTUxZTRjMGUzOGJkMzM2NWFlYzliYWRkNSByZWxlYXNlMzAtbWFpbnQKKzcwNTI3IGRkOWZkZGIwNzIwZGFmOWIyY2I5NTc5MmJkN2Q3ZDY0NThkODMxN2YgcmVsZWFzZTI1LW1haW50Cis3MDUyOCA2Y2I4NDMwNzVlNjkxMWYyZGNiYTg2ZjEwMTJlODMxMDYzODFmYTUwIHJlbGVhc2UyNi1tYWludAorNzA1MjkgNWY4YzhjOTE4ZjliMDI5YjRlOTdjNzJhY2U2MzM0NDIyYzJkYmJmMyByZWxlYXNlMzAtbWFpbnQKKzcwNTMwIGFiMzg5ODc3ZjE1MmY0Yzg5YmUyMDViOGQ0MWZhN2QyNTRkZGFhMDggcmVsZWFzZTI1LW1haW50Cis3MDUzMSAxZjcyYWM5MDk0MDhkYzQxNDIwNjE3ZTE0ZDFlOWUyYTE3MTdmNjk3IGxlZ2FjeS10cnVuaworNzA1MzIgNDQyNmU0OTIyNjRmMDdhZGE1MTZlNTczODcwNzBkYWZmMGU2MWMxMyBweTNrCis3MDUzMyAxMTllM2ZjNmNkZjM1ODFkODk1ZjNiOGIyNWY0NjNhNWI4NjE2YjUzIGxlZ2FjeS10cnVuaworNzA1MzQgYjE2MjdlN2U2NzhkN2Q5NTk2ZDVjZGI1NGE1YTk5ZDlhN2EzNjMxMiBweTNrCis3MDUzNSA4ODk3NGNhNTAwM2ZmOWRhY2Y2MTBiYWY5YjQzMDc4ZjI4MmNiNTZkIHB5M2sKKzcwNTM2IDA1YWU5Y2NmZjUxNDRjNzU4NTA1YzA4MzYzZjEwNDY2MjE0OTFhYzQgcHkzaworNzA1MzcgODdjYjk1MDU5MWJlZTFiOGFjYzRmMmQ2ZDI2ZThjOGQxNWM1NTkwOCByZWxlYXNlMzAtbWFpbnQKKzcwNTM4IDY4N2U3NTFjMjg4ZTZmYTU0ZjhjZDAzM2E4NzIwMWNjZGI3NWVkNzAgbGVnYWN5LXRydW5rCis3MDUzOSAxM2Y4ODdlNWZhMGQ3NTAyNTVmZWZhNmM1MWY1YWIyZjNhNzNiNDg4IHB5M2sKKzcwNTQyIGE1NGVmMThhYjBkODlkY2QxZjg3MzRmNTRiZTQ0OTZiZDFlMmVkZmEgbGVnYWN5LXRydW5rCis3MDU0MyBlZGQ0MzAyY2NlYWZlZWU4YjNjMGUxYTEyM2FjMGNiZDE0ZmM3MzAwIHJlbGVhc2UyNi1tYWludAorNzA1NDQgYTFkZGI0ZGU4NWE1MzY4MTk1OGI3MDcyMmMyZDNhOTI2YjAxYTNkYyBsZWdhY3ktdHJ1bmsKKzcwNTQ1IDYwZDA2Yzk4YTYwNWIxMTAyNTlkMDU1NjI0ZGMyYjYyZDNlZTg2MTIgcHkzaworNzA1NDYgMGU0OThhOWZkZTNjMjI5M2Y4OGI5ZTFjZTk3M2Q2YjdmYTdmYTNkZiBsZWdhY3ktdHJ1bmsKKzcwNTQ3IGExZDE2ZDk4YWE0MGRhZjBlYWM0NDllZDEzOWQ1OWUwZjYwMzhjZDIgcHkzaworNzA1NDggYzcwOTEwYWM0OTJkNzk4NDYyYjY4M2FiOTY2NTc3OWI2OGRmMTEwZCByZWxlYXNlMzAtbWFpbnQKKzcwNTQ5IDk0YmQwNjY2ZmZhNzkzM2Y1MWY5YzIwZGUxYjg2YTgzNDUyNzE1NGEgcHkzaworNzA1NTAgYjM3OTEzMDllNjkwNGM3M2I5MGM1MDQyNDMwODI1MTY0YzE3MjcyYiBsZWdhY3ktdHJ1bmsKKzcwNTUxIDY3ZmI5MDMyZDQzYTQ3YmRhZjk5YzYzOGU5MTYyNjAwZDgyOGNkMzUgcHkzaworNzA1NTIgZjZlZGM2ODZiZGU3NTMzYTkwMDMxODNlMjdlNDkxYTQyZjhhYTVhYyBsZWdhY3ktdHJ1bmsKKzcwNTUzIDdlZGQxNDNjZDRlNDJmMzk4NTEzZmJlOWQyNzRiZWQ3MGI1ZjE2MTYgbGVnYWN5LXRydW5rCis3MDU1NCBkY2EzZDY3Mjc1OGUzY2RjNTNkNGVlYmIxYzkxNmE2NTg3MWRmYWNkIGxlZ2FjeS10cnVuaworNzA1NTUgZTRhYTUzMGU1NzYwYjhhY2ZiODQwYzcyZjg5NzM4M2VmNjgxOGJhOCBsZWdhY3ktdHJ1bmsKKzcwNTU2IDEwODQ1ZTE1ZWQ5YjFiNjAxODExZmJiYzZiNjdmNzFhOGIzMDI2M2QgcHkzaworNzA1NTcgZDc0NzYxMmY4YTJmZWU5OGEzNTU0MjY4NzJkMDEyYTI4MTBhMzZmMCBweTNrCis3MDU1OCA2OGFjMjU1MmY0NGUxOWY1ZjU4NjA1MGZlMDkwOTljY2ZiNDA5MDRkIGxlZ2FjeS10cnVuaworNzA1NTkgNmQ1YzhhNTA2OWIwZmZmYzlmMmMwOTFlODY0N2NmOTVjOTA2ODQ4OCBweTNrCis3MDU2MCBhZWRhOTJmMWFiOWI1NzAzYmJjMjc2ZTk3NGUzNDk4YjRiMDc0MGNkIHJlbGVhc2UzMC1tYWludAorNzA1NjEgNTVmMTUwOWM0NWI2N2YwY2M1Yzg1OGRjNTY1ZWMxMzNhMDIxNmRlZCBsZWdhY3ktdHJ1bmsKKzcwNTYyIDU4Njk0Yzc2ZDc2ZDgxNWY4YTRiNmY4YTZiMjA4ODUzZjAxZGE5NTggbGVnYWN5LXRydW5rCis3MDU2MyAwMDI3YzA4M2EwZDRiNDA0Y2VjNzU4ZWM4Y2ZiZjQyM2MwYjE4ZGFlIGxlZ2FjeS10cnVuaworNzA1NjQgZWMzZTI5ZjE2MGRmZDEwMTI2ZWExOGJkNGU5OWU3NGQ1MjNkYmFlMCBsZWdhY3ktdHJ1bmsKKzcwNTY1IDcwMWY2OGY4YjdjZjc1M2Y5NDYwMTQxMjNiMTc1Mzk2MGU0NWM3NWUgcmVsZWFzZTI2LW1haW50Cis3MDU2NiBhMmY2YjJiMzgyYjRjMTFjZDFhZjA4YTJmOGI4YTgxZmNlMWE1NjM3IHB5M2sKKzcwNTY3IDk4NmFjY2UyNjY0MTBiZGFiN2JhZTM2N2FmOWU1MmVhNGE1MGNlOTYgcmVsZWFzZTMwLW1haW50Cis3MDU2OCBmMGE1MDc0MTRlOGNjNzg2Nzc3YjZiYWNhNGZjMGVhMmRmY2I2ZWM2IGxlZ2FjeS10cnVuaworNzA1NjkgMjNjMTJhYzdmMzE3MzZjNjY3NGQyMWI4NGMxZDMzOGYxNDNhZjY5MCBsZWdhY3ktdHJ1bmsKKzcwNTcwIDZlZGI3NDIxNjM4YzBiMjFjYjBhYWQ1YzUwMzkyYzY3NDA0ZGMxZTYgbGVnYWN5LXRydW5rCis3MDU3MSAxMmFkYjgxOTc2NDc5YzQwMzE2NDc1MzI5MGVhYTFhOGUzYzU3YjIxIGxlZ2FjeS10cnVuaworNzA1NzIgYThhOGNmOWIyODE4M2Q0NGQ3MDM3MjhjOGFkNDM3NDA2NDk2ODZkMyBweTNrCis3MDU3MyA5YjU5OWI2MDEyZmE1NGRmNzJhOGYxODM0ZGQ1YjVhMjA3NTkxY2E4IHB5M2sKKzcwNTc0IGQyMTM0MTMzYmYwYzk5NTI0ODM2OTlkMGQyNzdhMTFmOTQ5Y2NmMzUgbGVnYWN5LXRydW5rCis3MDU3NSA4MjBmMzQ3NWIwOGQ3ZjJjNzQxMjI2MzY5ZWY3OTgyMThhNDE5N2VmIHB5M2sKKzcwNTc2IDExZDU0YzdlMDg5Yjg4NTEwOGFhMmI5ZWI5Yzk1OTM1OTgwMjgzYjggcmVsZWFzZTMwLW1haW50Cis3MDU3NyBhOGRhOGFjZGExMjg2N2Q0NzRhZTk0MzI5NDBkNTM0NDhlMDZjNjVlIHB5M2sKKzcwNTc4IGE5NTE1ZjI5YjM4Yzg3MzJmZDNiNTY2OWVhZjE2NmQ5Y2VkM2UxOTQgbGVnYWN5LXRydW5rCis3MDU3OSAyNDk0ZmZkNjBlYWU5OWQwZTU2YjYxMDk3ODJjNmIyNzAxN2M2YjUwIHB5M2sKKzcwNTgwIDYwYjk3ZmM4ZjA2ZGEzNmE0OTE2NzRjYTQ4YjM4Nzk1MjIzMjQyYzMgcHkzaworNzA1ODEgMDA2YzgxZjliMGU4MGVkNjBlMWQwOTI3YWU1Zjg0MWYzZTc5OTRhNyBweTNrCis3MDU4MiAyY2M5MDBiZDZiYjAxNjJjZDBmMmI5MzY3MGQ2N2ZjNWIwYmI5MzYzIHB5M2sKKzcwNTgzIGJhNDI0MDE2ZGI3NDY5NjAzZDU3ZmUxMzVjOTdjNzBiODhiOTFmYjcgbXVsdGlwcm9jZXNzaW5nLWF1dG9jb25mCis3MDU4NCA3OTJhN2Y5MzlmZGRlYWMxYTFjZWRjMTZlYWY4MTVhMzAwYmEzMjY3IG11bHRpcHJvY2Vzc2luZy1hdXRvY29uZgorNzA1ODUgM2FkYjM5NzRlNzc3YzA5MDcyNDQ5ZDFmMzZmMDllYTI2NGRiMGFmNiBtdWx0aXByb2Nlc3NpbmctYXV0b2NvbmYKKzcwNTg2IDhhZDI1MWRhNDc0Mjc0ZjE3YWIwOTNiZGY1NThhMmE5MzMzNDE3NmMgbXVsdGlwcm9jZXNzaW5nLWF1dG9jb25mCis3MDU4NyBmZGM4MDZjNzdjZDZlNDIxNWY1ZjZkMTBiZjVmZjVkM2JkYjlmMTFhIHB5M2sKKzcwNTg4IDNkZjdmMTE4ZTUwNDIyZjZhMzhkNDgxZWRjYjI1NGNhYmYwMmUxMWUgbGVnYWN5LXRydW5rCis3MDU4OSBlZmZmYzdlYWFkNmQzM2U3NGU1NzNkYzc3MTVhNjE4NDI2YWRkOTQyIGxlZ2FjeS10cnVuaworNzA1OTAgNWQ2YzBmYzg3YTcxOGViMzY0M2ZmZjE3M2JkZTczYjJkZWNmNjYzYiBsZWdhY3ktdHJ1bmsKKzcwNTkxIDA2MGVhOTc1ZDU5NzEyOTc2MTQwYjQ3MmViMDc1MTYzNzVhNGQ3MzYgcHkzaworNzA1OTIgNDFlMzQ0ZTU3MWExNjAyMzYxM2FmMTAzMzlhNGFjMjcyYjA0NTM3MSBtdWx0aXByb2Nlc3NpbmctYXV0b2NvbmYKKzcwNTkzIDczZjRlOGFkZmViZmQ4ZDI1ZGEwMWRkN2RmM2NiNDQxNDQ0MTAwZWEgbXVsdGlwcm9jZXNzaW5nLWF1dG9jb25mCis3MDU5NCA3ZDBlM2E4YzJlOWUxYjE2Y2QwM2I2ODgwYTM2YjUxYzU5YzliODJmIGxlZ2FjeS10cnVuaworNzA1OTUgOWY4OTc2NTY1ZjgyNmVlMGU5YTdlMjRkOGQ5NWY2ODE0ZDdiNDFlNiBsZWdhY3ktdHJ1bmsKKzcwNTk2IDhjZDYxN2MzZTc0YjAyOGVkMzcyMTcyMWU5MThlMjMwYjc4NTA4ZDEgcmVsZWFzZTI2LW1haW50Cis3MDU5OCBlZTBmNzUxYjgwMjAwM2M1M2FkNTdhMGFkNTY3Yjk1ZDhlMmNmOWExIGxlZ2FjeS10cnVuaworNzA1OTkgMWZiZWMyOWY4OWU4ZDAyYzUxNWZjNDVmMjdlOTAzZDgwZmM4MzQxNyBsZWdhY3ktdHJ1bmsKKzcwNjAwIGE2NzZkMzZjMDdkZDUzOTlkYjBhMWJjYWRlYTE3ODk3MDU2ZjA4OGYgcHkzaworNzA2MDEgZjVkNjcwZmNkYmU5NmJjN2Y0MjFiOGI0MjhhMjllN2Y5N2MyY2IzYSBsZWdhY3ktdHJ1bmsKKzcwNjAyIGYyNzcwNGY0NWQ0YWYzMzEzNDMzYzJmZDhkM2MxYmU5NGRlZGExYTAgcHkzaworNzA2MDMgOGI1YTgwZjUzMzE3Zjg5OWU3OTkxMmRkMTBkNDM3MWE2YTBmOTcyOSBweTNrCis3MDYwNCBiNmY4NjEzMjFiNDVjZjBmZGFhNGRhNWVhMGQwZDc0MDE0ZjdmOTBiIHB5M2sKKzcwNjA1IDNmZGM0YWEzNmQ3NjcwNzhhZDhkMmIzNmVjMDFjZWIzNjBhNjMwMzYgbGVnYWN5LXRydW5rCis3MDYwNiA2MWVmNjU5YWI3OTlkZjYyMzdkZTI3MDk4YzVmZmRjY2U2OGYzODY5IHB5M2sKKzcwNjA3IDMzODI5Yzc5MWJmNjIyNzBjNmU4MmJmMjNlNGRjM2Q0ZmM5MjgxZDUgcHkzaworNzA2MDggYTEwZDk5NTEzZjllOWVlM2EwNTdlZjI4Y2Y0Zjg4YjFkZDI0Nzg0NCBweTNrCis3MDYwOSBjYzEzY2MyMjRmZjU2OGJlMTFiNmNmNmE2YjNkYjFhYTU2ZTBlYmE3IHB5M2sKKzcwNjEwIDA3YjZmY2RmN2Y5NDk5NGU5ZWFlNmI0YWM4Yjg1ZjdkMDU2NjA5MzYgcHkzaworNzA2MTEgMWUyMzM1OTYyYmFkODU0NmExZTExZmY5ZGQ4ZmEwYzA2MTE0ZDRjMSBsZWdhY3ktdHJ1bmsKKzcwNjEyIDc4ZmVkYzM0MmE2YjEwN2RiYzFiNzIyMDgyY2Y3OWZhZDcwZjJlODkgbGVnYWN5LXRydW5rCis3MDYxMyAwYTA1MmEyODczYjI0MTlkZjY5ZDg4NzI4NDY5MDQ4NmYxODdkOTZhIGxlZ2FjeS10cnVuaworNzA2MTQgMDA3ZTljODZmYjU1YjVlMDg4NGI2Y2E1YTE4M2QyNzU4NTZjMWE1ZSBsZWdhY3ktdHJ1bmsKKzcwNjE1IDRmZTc2MjQ5YTkwOTA3MGVkZDFlOWY1ZDIzODJlNTA4MWFjMjAxNTYgbGVnYWN5LXRydW5rCis3MDYxNiA1NTcyOTBmZmE3ODQ3NjhlN2E5NDNlNzk1YTg0YTViYzZkNTIxYWNiIGxlZ2FjeS10cnVuaworNzA2MTcgOWNjZjgyZTY1MzMyOGYxZDgzOTQ0M2Y4Y2ZjZmY4ZjlkYjAwMmQwYyBsZWdhY3ktdHJ1bmsKKzcwNjE4IGU2MDA5YjljZDkwODRmZmNhZmUwYjI1MzhiNjkzMGUzNjk5ZmVhYTYgbGVnYWN5LXRydW5rCis3MDYxOSAxNGNjOTJhZTk0YzkwNGQwYWNlMzEzYTlkYzkzYjgwMDM3NWUwNTU5IGxlZ2FjeS10cnVuaworNzA2MjAgMjI4Y2ZiNmUyOTAwYzE0NDZjYTA2MmY1ODgyZjEwZTBjZjRhZWMwMSBsZWdhY3ktdHJ1bmsKKzcwNjIxIDc2YmYzNDFhYzIwMjM3YjI0ODllZDYyZmJmNzE3YWRkNTNiZDdhZDggbGVnYWN5LXRydW5rCis3MDYyMiA1MDIzODQ5NGYwZjA1ZGVkNTMyYjUzNTkyY2RkODZkZThmOTEzN2QzIHB5M2sKKzcwNjIzIDcwNTU0NWVjMzI0M2Q0MjcyNTRjZmUxN2NhYTcyMjhmYzZmNjhmY2YgbGVnYWN5LXRydW5rCis3MDYyNCBmMjZjMWNkNmM5ODUwMDVmZWQxNTlkN2UxNDYxZWIxM2UwYWMwODg5IGxlZ2FjeS10cnVuaworNzA2MjUgZWRmNjI3MjYxYzdiNTU4YjBmOWMxZjFkYzU1NmQ5ZDA4MmY1YzY2YiBweTNrCis3MDYyNiBkYWRiZTAxNGJkYTRlMjc1MGUyZWRmMjVkYjEwMjQxZGI4NWE0ZWU0IGxlZ2FjeS10cnVuaworNzA2MjcgZDIyNzU4NGMxYzdkOGU3MDY0N2I5Njg4YmQ0MzA3ZTcyZjQxZThiOCBsZWdhY3ktdHJ1bmsKKzcwNjI4IGRhZjY2MWQwNTQ0MmE3YWRkODhhMzM2ZWM1YjZhZjcwZDgwOTA3MDEgcHkzaworNzA2MjkgY2EwMmJkOGM5NmYyOThiZjlhMmE3MGM4NTMyYmQ0NjhkMDM3NWE4YiByZWxlYXNlMzAtbWFpbnQKKzcwNjMwIDQ3NTgwODY5OGVhZmFhYjYwZDc1OTBlMjgwOGI3ZTAzN2Y4OTNjY2EgcmVsZWFzZTMwLW1haW50Cis3MDYzMSA3NWUzZmUzYzA3MjY3MGQwNmI4YTFiODQ2ODQxN2Q4MjAyZmE2ZjhkIHB5M2sKKzcwNjMzIGVlNGEwMDZkMDE3MWVjMTQ0YWU4YTY5NDEwZWE4ODRiOGQ4ODA2ZjUgcHkzaworNzA2MzQgMTBhODRjNjM4ZWRhMTI5NTY4ZTYyNmNiYzVmZTBiZmUxN2I3ZDg2OCBweTNrCis3MDYzNSA4ZDY5MThhZjIzMmJhZjdlOGU4ZDIwMjE4NmFiM2ZiYzc1ZWI4MjU2IHB5M2sKKzcwNjM4IDhiNjkxNjkwYmFiZDcwODA3NjRlNGFmMzZkNmM2YTkxOTM2Zjk4MjYgcHkzaworNzA2MzkgOWFiNzU0MTEwNDMxNWZhZWFjOTk1ZDM0ODU0M2U0NzE5NTMxN2QwMiBweTNrCis3MDY0MCA0MjY1ZDZjN2MwNzQzY2QyOTkzZmI3YTk2MWRhNWYzODc5NDAwNzA5IHB5M2sKKzcwNjQxIGZiYWQ0MmM0NWM5Y2I2YzQxZjkwZDVlNWI1YmUzOWQ3ZGM2ZjU3ODggbGVnYWN5LXRydW5rCis3MDY0MiA3YWZmOGE3NjZlMjUwNmRhNzZhYTM2NzQ1ZmVmOWFmMGM0Y2I4MTg3IGxlZ2FjeS10cnVuaworNzA2NDMgYTcyNmY3OTI4NTYxODU0MmRiYTZkN2Q0NjBhOWEyZmExYmUxODk5YiBweTNrCis3MDY0NyA5ZGY1ZDA2OTQ5MjFhNjJkODBiMTgzNWIxMTMxY2Q1MTViMDNmNGM2IGxlZ2FjeS10cnVuaworNzA2NDggYjczY2RhYzZhMGMzOGM4NWE4NjQ2NGEyYWJlOTBmNzAwODI3YjlkZiBsZWdhY3ktdHJ1bmsKKzcwNjQ5IGJiOTBlYzY3ZjMxNDg1NzI2N2ZlNTQ2OTEyMDJkYjAwNWM0MTA1ZWMgcHkzaworNzA2NTAgZGE0NTZmNDJlYmU3ZTdhOGVhOTExMjRlNzk1ZThhZjVlYjljZWIwMCBsZWdhY3ktdHJ1bmsKKzcwNjUxIDNhZGQ0MDBlNDE5ZmYwMzIxZWU5ODVmODMzNGFmYmQ5MWM0ZDRkM2EgbGVnYWN5LXRydW5rCis3MDY1MiAxZjVkYjk0MzdkYjg4YzVlY2Q3ZmZmYzJkN2Q3NjJkY2JiZTU3YTAzIGxlZ2FjeS10cnVuaworNzA2NTMgNDk4M2ZkMTk1MDM2NmJjYTllYzkzNjViY2ZjNjJmNGI1YWUxYjM1NyBweTNrCis3MDY1NCBiZGZjNGIzYTkzNDcxOTUxYzgxMTMyODA1MzI4OGVkYjgzNjM0ZDdlIHJlbGVhc2UyNi1tYWludAorNzA2NTUgMzkxODcxZjZjMTY0MmJkNjhhZDQ4MWQ3ZjM4ZDQyYWYwYWQ0ZGRjYyBweTNrCis3MDY1NiA1ZWYxYzFkNzRjNTEyMjdhZDc2MGI5M2YxNmNhNWE2ZmIyMzc5ODc4IGxlZ2FjeS10cnVuaworNzA2NTggOTc2YjA3OTk5NTg5OWI3OWIwNTViZTRkMTg2ODhhMGFlNGM2NDQ4ZSBweTNrCis3MDY2MCAzNzQ5Yjg4ZGJiNjEyNzVmNWI0ZWIzODg1ZDQ0YzJkODNmZmJkNTNhIGxlZ2FjeS10cnVuaworNzA2NjEgNTVkNTQyM2JhOTg3Y2VjZTY0MjY0NjUzODUxMWZkMmViNjA5NDZlOCBsZWdhY3ktdHJ1bmsKKzcwNjYyIGQ0ZTc0NzBiZDY2MDQyYzJhYjk0Y2MxNWVhMzk0ZWYzZjQ2MzBiMDIgcHkzaworNzA2NjMgMTUwZjU2OGQxYmEyZDAwYjQ0NmJiMmM0YTNjYzc5Yjg3ZTJlMTA2YyBweTNrCis3MDY2NCAzYTZkMjdkODA4MjI5NWUyZTUwMTg2N2MzMTJlMzM2YWYwYzEzMTEyIHB5M2sKKzcwNjY1IDFiNzI3M2FlZDM2Y2VkMGJmN2E2YjA3OGM5MTE2Nzc4YWY2YzVkNTMgcmVsZWFzZTMwLW1haW50Cis3MDY2NiBkMDU5MzkyNjNhMGU1MTVhMDAyZWUzZGQ5NGZkYjlmMTMyNDA3NTljIHB5M2sKKzcwNjY3IGI3OTQzMTljMTI1ZWI0NWNhZDAzMGRlYWJjMjlhOTc2NTRhZjYwM2QgcmVsZWFzZTMwLW1haW50Cis3MDY2OCBkNTVlMDViMDZlNGEyYjBlN2ZkMGZlNjNiNzg5ZWFmNGIyNjY0OWJkIGxlZ2FjeS10cnVuaworNzA2NjkgN2FkZDQyM2FmOTcxMDk4ZjM5NmUzYTliODM0NjNjZjJhYzAyMGNlNCBsZWdhY3ktdHJ1bmsKKzcwNjcxIDM2YjM1OTJmMzAyM2I4NzQyMTVjMTBkNTZmZDNmZTFjYTQ0OGFiODMgbGVnYWN5LXRydW5rCis3MDY3MiA5MTM0YTIwOTEwMTNjNWZhMzk5NjM1YTQ2NmJjMzcwNjk0YTc3YzU5IGxlZ2FjeS10cnVuaworNzA2NzMgZTMxNGI5NmZiNWFkMzYyOTJmY2FkOWM2YTU3NjdjYTAwNzMzYzI2YSBweTNrCis3MDY3NCBlOTg5MTU5OGE0MzM0NjRjMjc0OTJiY2M3MDBhNDYxMzBiNmM2OTI3IGxlZ2FjeS10cnVuaworNzA2NzUgZWY2MTJiZTc3MWVkY2VmYjVlZjQ5ZGE4NDhjZWEyMWUwNGU3MGM4ZiBweTNrCis3MDY3NiAwMDEyODhhNjhlOGIwNzQ4NGJiNGY1ZTFhMzdhZTMwMWY0NmYxNmMzIHB5M2sKKzcwNjc3IDQ2YTQ1ZWNjYzlmNzAxZmFjYWI2MzBlMzc3NjYyZWU0ZDYxZWZkYzcgcmVsZWFzZTMwLW1haW50Cis3MDY3OCAwMTk4MTViYzM3ZWFmMTJkOWQ4YTQ3ODJjNDYxNTc3YjMyMGQwNTEyIGxlZ2FjeS10cnVuaworNzA2NzkgNDIzYzk0NzdkNmVmZTZlYzgwNzhjOTUyM2ZhMWI5OTA1ZjAzNTBkNyByZWxlYXNlMjYtbWFpbnQKKzcwNjgwIDAyZjI5NGEyODIwNmZiMGNmNzllNzE3YWZkNTJkMmZlMDA2YTIxMzEgcHkzaworNzA2ODEgZjQ5YTk3YTk3OWViMDkwOGUwM2E4MjM3OThjMTFlNjNmN2UwMjE2OSByZWxlYXNlMzAtbWFpbnQKKzcwNjgyIDFhZmIzNjVmMjQ0ODIyMjdlOWIzZmM4NTMwNjU4MjFjYzUyNWMwMWEgbGVnYWN5LXRydW5rCis3MDY4MyA2ZTU5MWQ0ZGM2Yzk2ZmI0ZjA1NDBjOTk4Yzc4Mzk5NjZmMzg1ODdhIHJlbGVhc2UyNi1tYWludAorNzA2ODQgZjA1YjZkOWFkYmU2NDc3NTc2NGFiODY0OTg4OGZmZDFmZjU0NjlkYSBsZWdhY3ktdHJ1bmsKKzcwNjg1IGJhZmFkNjFjZjMwMjYyZDc3MmRkNjUxMDM1MDQxODUxOWNiZjJhOWQgcmVsZWFzZTI2LW1haW50Cis3MDY4NiBlNTA4NGQ1MTQ4MDllZjAxYzYyZDQyOWY3NDdjMzgyMTNjYzliZDQwIHB5M2sKKzcwNjg3IGIwYzVkZjhjODRhMzQ0MDRkNTEzNDZkOTRiNTUzYmUxODkxYWE3MTUgcmVsZWFzZTMwLW1haW50Cis3MDY4OCBmMTcxYmFjOWY5NjFkMWQ3MTM3ZmQ0ZTBmZmNhNGQzMWFiNmMwMGM2IHB5M2sKKzcwNjg5IDk4MDdjMjZjYmM5OWZhMWUwMTU1ZGY5NTgyMDdmODY5M2VkNDIzODkgcmVsZWFzZTMwLW1haW50Cis3MDY5MCBhM2I4ZDE5MWVjNjgxMmVlYjViZDJmNjk2OTJjZjU4MmVmYTMxNmQ5IHB5M2sKKzcwNjkxIDA1MDdhYWI1ZmIxMTlmNTkwZTI5MDBhMzQ2M2YyNzY0OGMwMWVhZTUgbGVnYWN5LXRydW5rCis3MDY5MiBiYWVlOTA1MjExMTBkYTI1NWI4YWNlMDJlOGYzN2Y5ZDNmNTM5MDQwIHB5M2sKKzcwNjkzIGJlZjAwY2E0M2VmYWU2ZDliZGMyYmM4ZTNmMjQ1ZmI0NzMwOWYzYzMgcmVsZWFzZTMwLW1haW50Cis3MDY5NCA5MmJjMWRkYmM1NzI0ZjRlMWZlZGFiMGZjYTFjOTZlNGVhMDlmMTE0IHB5M2sKKzcwNjk1IDk3NWIyMDM5OWM4ZDAyOWNiZWRiYmUxN2IyZWJkOTViZjJlNGY5NTUgcHkzaworNzA2OTYgN2I1ZmJiZTdiMDA5YzRmMmJkZGZjOGIwZDg0NmEzNmFhNjdkZGFkMiBweTNrCis3MDY5NyA2ZTFjNGEyOTYzZTRjNDFkNjMyZjI2NDkzNzBlYTJhNjdiNTI2N2YxIGxlZ2FjeS10cnVuaworNzA2OTggOWMyM2M1NGU2YjE1OTY3NDZiYTM4YTU2ZTU3Zjc0ZTUyOTcxODlmOCBsZWdhY3ktdHJ1bmsKKzcwNzAwIDZhZDliMDFmOTVmOTk5MWE2ZTQwNDExYmY5ODRlNTU5Nzc2OWNlMjkgbGVnYWN5LXRydW5rCis3MDcwMSA3MWI2OWE4NzNkMjEzMTY3MDgyYzEzZDQ1ZTJkZjlhNmVmNWM0YzQ1IGxlZ2FjeS10cnVuaworNzA3MDIgNjg1ZjE3OTFmYmM1OWE5NzQxNTk3ODliM2VlOWUyOGMzOWYxMGEwNSBsZWdhY3ktdHJ1bmsKKzcwNzAzIGE3YWU3M2EzNzgwNTk0ZjMzN2ExNTIxOThkNDljMGZiZjlkYmYxYzEgbGVnYWN5LXRydW5rCis3MDcwNCAyZDgzNjQ5YTk0Yjc1YWM2NDU0ZjUyMWY0MDViMWUwZDk0YjBkNjA0IGxlZ2FjeS10cnVuaworNzA3MDYgZmNlOGYyMzg0NTJlMWNhZDlmNTgwYzRlOTdkYzE1MTE5OGEwMWI2MSBsZWdhY3ktdHJ1bmsKKzcwNzA3IDExYzMzNWE5NmY2MGYxZDljZGMyYWI4ZjI2MDFkMGI0MTNhZjg5MzQgcHkzaworNzA3MDggOWU0YmI5NDFhMWVhNTVjNTBhMGZkYjdmOTQ5YzgxODcwOTlhZGRmYiByZWxlYXNlMzAtbWFpbnQKKzcwNzA5IDAwNTcxMzk0MWExOTNhMDY5Mjg5MTZhMDQ2Zjc1ZDE1NWQ3OWY2MDUgcHkzaworNzA3MTAgY2MwMmM5YzI5MGE5NDg0YmI5MjY5YWVmYTk3MTQyOWU1MTI0NGE4YiByZWxlYXNlMjYtbWFpbnQKKzcwNzExIGI5ZDZmZGYwZmJiMzYxZjk4YTkzYTIwNzQ5OTE4OTUyMWU3ZjgzMTUgbGVnYWN5LXRydW5rCis3MDcxMiA4NGU5OWVmYzY3YjJiMWEwZmFjYmZjY2JiYjNmOWQwMzg2MmNmMDc3IGxlZ2FjeS10cnVuaworNzA3MTMgZjVjMmJjYjA5NDdiOGFhNTZmOTYzOTZmNmUxYzhiZjBhNDBjYjNiNCBsZWdhY3ktdHJ1bmsKKzcwNzE0IDE0Y2FlMTE2MDY5ZDNjZjVkYzc4N2I5YjBmMmQ2YTUyZTc4OTlkMmUgbGVnYWN5LXRydW5rCis3MDcxNSAxYjdjY2NhMzRmMmZhNjhmYzljNWVjODM1ZmY1MmY5MGI1NDA5ZjEzIHJlbGVhc2UyNi1tYWludAorNzA3MTYgYWFhZjMyNjk0ODc2YTc2OWIwOTA4MWU4YjQ1NzkwMzcwZDcxYTEyNyBsZWdhY3ktdHJ1bmsKKzcwNzE3IDk2NTIzMGIzMzc5ZjFiODI1YzJmMDA5YTYwNzgxNDA3OGJkYzg2M2EgbGVnYWN5LXRydW5rCis3MDcxOCBiOWM0OTllOWY3NGRhOTViOWQ4MzFlNDkxZDhhODA5YTViYTNhMmNmIHB5M2sKKzcwNzE5IGI0YTRmNGI2MDhhYmIxZDBkZjA1YWE3ODcwZjQzNzI1OGMwMjk5NDAgbGVnYWN5LXRydW5rCis3MDcyMCBhYzE2NGI1NGM4YThhM2MxNmM0MzU1Mjc1NTUwNmE0NGRlYjM1ODA0IHJlbGVhc2UyNi1tYWludAorNzA3MjEgYjRhZDU5NDhlMTk3YjI2YjQ5NjRhOGMxNTFlZmVlZGM1MmUyYjRhYiByZWxlYXNlMjYtbWFpbnQKKzcwNzIyIDEwMTRmMGFiZGI1NzIxMDNjZjc5N2UyMzE2ZTZiZDA1ZmNiODdlNzAgcmVsZWFzZTI2LW1haW50Cis3MDcyMyA0MmU4N2ZmOWY2NWRiZDI2NzRlOWY3MjliMDBiZWIxNTkzYjY0MTFlIGxlZ2FjeS10cnVuaworNzA3MjQgZWI1NTJhNTkwOWZiOGQyMTc2ZGM1OWRiMmViNGViNjdlNWE2ZTNhOSBweTNrCis3MDcyNSAzOWI2MmIyY2IyYzc2MDIzZTBkMzkwMGJhZTVlZjU2NGYzNzI1MGIwIHB5M2sKKzcwNzI3IDhkZjRlMGMwNmU5NDAyNjNhMjg0ZWY5Zjg4ZTRiZmQyYmQ5NWI4NWQgbGVnYWN5LXRydW5rCis3MDcyOCAyZDM4ZGUwMDJiYmViYmYwOTdiOTY1YmFjM2FmNjk4OWNlNWQxYzFhIHJlbGVhc2UyNi1tYWludAorNzA3MjkgMDhiZjMxODQ4YTQyMmFjMTkxNmM2MGU0MTI2NDliNTdiMTYzMTNkNyBweTNrCis3MDczMCAyYmZmOTEyMWJlMGY2NGM5ZTQ3OGM2M2JlODQ4ZmY1MzVlZmMxYmQ1IGxlZ2FjeS10cnVuaworNzA3MzEgMTc1YmE3NmU5YzJiNzRiMjhjZDBjMjkwNjhhMjM4ZTkzYzMzY2NlMSByZWxlYXNlMjYtbWFpbnQKKzcwNzMyIDk4NjU1OWRhNTRkZTE0MTA0YTRhZTBkMWMwNzg0Mzc0YzM4MTJlZmQgcHkzaworNzA3MzMgODFhYTQwYWIzNDZkOTYxNmIwMjgzNThmMmZkZTc4OTQwNmVmZWE0ZCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzM0IGYyYzkwZmQwNWQ2NmRjOWM3OGQxMWMwNjA5NGQyYTdkN2NjYzllNmUgbGVnYWN5LXRydW5rCis3MDczNSAxNGUyNzUwZTI1MDZlNTY2YjUzMjI5MzdjN2VlNTdjMmRiMmRjYmEzIGxlZ2FjeS10cnVuaworNzA3MzYgMzk1MjM0NjFlZjdlMjQ3MDM1ZThmM2ViMDM4OGUwNGM4YjRmNTEwMyBweTNrCis3MDczNyA5NzRjMmJlZjI4MDBmMGFkZTRhNThkMmVjYmE5MDU2YjY4ZWYwOGQ1IGxlZ2FjeS10cnVuaworNzA3MzggNTczMDg1MDE1YWE4OTM0Njc0OWQyNDU2ZjM5ODFiZTllMzIzNThiZCByZWxlYXNlMjYtbWFpbnQKKzcwNzM5IDg1N2JlNWQ5NTEyMDhjYWUwYTEwN2Q5YWQxYjBjMDY4Mjg5MzRlNDQgcHkzaworNzA3NDAgMzc2YjgyMWRiNDI4YjhmNzVkNWUyYzQxYWU5ZGE5NzA2ZjA5NTY3MyBweTNrCis3MDc0MSBkZDk3ZDNjM2ZjNjYxOGY0M2ZiYWE3OTI1MDc0YTlmNTM5Mzk4YmRmIGxlZ2FjeS10cnVuaworNzA3NDIgM2I1YmNiOTNiZDExOWRiODZkMzdmMWZkNGYyMGRlOTJjMjE1YjgyMCBweTNrCis3MDc0MyAwZTM4Yjk0MWQ5ZTQ5MGJlYjZhMzAyZjJkNjcyZmRlMmM1OGEyZDNkIHJlbGVhc2UyNi1tYWludAorNzA3NDQgNTRhMTA3NjM4Mzg5NTU4M2I5ZDFkMTkwMjk1ZGExY2ZjNGU3NDYyOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzQ1IDJlNWUwMDFkN2QzNmFkM2I0NTIxNGM5NTU0ZjNkYTQ1NjYxMzcxMTYgcHkzaworNzA3NDYgOTk4MjljOTA4MDU4MTI3ODNlZDNiODE4OGRlN2I0MjAxMGU0MGEwOCBsZWdhY3ktdHJ1bmsKKzcwNzQ3IDEwYTYzYjkzMGNiYWUxNGYwMDM0NDk0YjBkMWQzMjMxZTIyODNhNTIgbGVnYWN5LXRydW5rCis3MDc0OCAyNjhiOGViMzFmNDkzNmUyZWZhZGM0ODcxMGZlOTJlMGNjODJiMTljIHJlbGVhc2UyNi1tYWludAorNzA3NDkgNTJjMzZlNDUwYTQ4YWM1Y2E2NWI2Mzg3ZDVkOTI1Y2FhZjE3YmY2ZCBweTNrCis3MDc1MCA3NTcxYWFjM2UwYzIwYTM3M2EyNWZiZjU2YzU0ZjU3NTQxNjZlOGYxIHB5M2sKKzcwNzUxIGI4ZTg3ZWRmMmY2NjI4NzJmYjU2ZTMwNmEyNDE4NWFiNWUwNzk1OTAgcHkzaworNzA3NTIgZWNhOTM5MDIyYjgzMmUzN2I3ZDY4ZjBkNjM2MTQzMTkwMDQ4N2I3ZCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzUzIGMzNzFjMDkyNGYzNTNjOWE5MTY2NDQyZmViMzkwZjg4ODY1N2Q3YzkgcHkzaworNzA3NTQgZGU2M2NiYzU2MWI2OGU2YWM4YmE2ZmE5NTY0M2FhZjMwZDBiM2I2NCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzU1IDQ1YTcxNzQ1MDk2MWM2OGM5OGRhODE1N2EzOTljZjhkMGVkMTVlZTUgcHkzaworNzA3NTYgNzgwZDY0MDFlZWQ2ZDVmZmFhNTA5MGFjYWZmZWQ4ZjYxNDMzNjgwMSByZWxlYXNlMzAtbWFpbnQKKzcwNzU3IDJmZjg5ZjBmMWQxOTAyYjgxNzEyNjViZDYwZTRiMGE2YzUyMDA3Y2UgbGVnYWN5LXRydW5rCis3MDc1OCBmY2ZjMmM5OTRhNGFhMGU3NGQ5NDBkOGFhMDBlNTU4NTRjZGU1ZTE2IGxlZ2FjeS10cnVuaworNzA3NTkgODM0YTNhOTZkM2FiNDgzYmFhYWIxYTk1ZDBlMmM5ZWZlODYyYzk2ZiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzYwIGU5ZmYwZWZjZmZhOTA4YWQ4Y2YwN2NiMzVkN2I1OTg5OTNkYWMwYTAgcHkzaworNzA3NjEgMWU3OGIzZGNjYTQyYWYzY2ZkN2ZlMWRlM2QyNWExMjc4YTYyYjFjNSByZWxlYXNlMjYtbWFpbnQKKzcwNzYyIDgwMjcxY2UwOWE2NmZiZDk5YjgzM2Y3NThiMDFhNmJkNGM1NzM3ZDkgcHkzaworNzA3NjMgOTRiYTJmYWQ5Mzc4YTY0M2E0YWM2M2UwMTA3YjNhNDYxMjYzZmZlMCByZWxlYXNlMzAtbWFpbnQKKzcwNzY0IDgwZWM1MGQxMzg1N2YyODk0MjZlMzdjNmM5NTQ4YmYyOGMyZDBjN2UgbGVnYWN5LXRydW5rCis3MDc2NSA0MjM5ZmE1NjI3MzVhYjExNTRiODhiZWY3N2U5MDg3ODZmMjMwZjUxIGxlZ2FjeS10cnVuaworNzA3NjYgNTZhMDlkZDBlMGYzMzAxNDdlM2YxOWEzNGNjNmY1NThjOGQxM2I4OSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzY3IGY2YjA1MDVhMjJiMzlkOTY0NzIyZDM2MWY4ZmU3YzQ2ZjYxMDY1NGUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDc2OCA0M2ViYTc4OTE1OGZkY2EzOWIxMWYzMjJlZDE3N2Q4ZTgzNWM1NmExIGxlZ2FjeS10cnVuaworNzA3NjkgMmYyMjI3MWNmOTI0OThiODJiZGZlNTJmOWMyMzE2M2IzZTE5ZDRiNyBsZWdhY3ktdHJ1bmsKKzcwNzcwIGEyODg3MTA5ZjM0MDY4ZWQwZmMwNmE1NGQ1ZTgwZTlkMWZiNWYzZGMgbGVnYWN5LXRydW5rCis3MDc3MSAwYWZiNWQ4OTQ2NjE2NGZkZDhlOWFiNjA3MzVmNmUwOTg4OWI4NDRhIGxlZ2FjeS10cnVuaworNzA3NzIgNWRlYjI3MDQyZTVhNzllMjQ3ZTNhZGM5MWNjNjBiNmIzNGViMDA3NiBsZWdhY3ktdHJ1bmsKKzcwNzczIDNmODFkOTk0NWU4MmEwZTk4MWJiYTEzOWJiZmJmMjNjZTNkYzkyYjIgbGVnYWN5LXRydW5rCis3MDc3NCA5ZDE3OGNiNTQ2NmEwZDc0MmNhOGE2NjE3NWVmZjE4YjJjM2NkNWE0IHB5M2sKKzcwNzc1IGY0YzVlM2E2NGJlMjNhNGVjYWZkYmNkOGY2Yzc4YTA3MzY5MjMzZjggbGVnYWN5LXRydW5rCis3MDc3NiA1ZWNlMDc4NWRmODEzZDU1Y2NhYWFkYTQ3ODg0NWI1ZjE1ZDRmYTkyIGxlZ2FjeS10cnVuaworNzA3NzcgZTAxMjRmNTQwZWU1NjQ4ZWE5MDMyM2NjNzE0NGFjYTkxMWYxODVhZSBsZWdhY3ktdHJ1bmsKKzcwNzc4IDg5NzZlYzJjZGZlNWRiN2U4NWI0NmUyMGE3NmZlODYyMTA2ZjliOTYgbGVnYWN5LXRydW5rCis3MDc3OSBlNGVmY2IyOTkwZTI1ZWI1ZWMwZTM5NzE3ZGNiNWU0NmFlZDUxOGY1IGxlZ2FjeS10cnVuaworNzA3ODAgOTcwNDk2ZGIxNGJjZGI5MTdiYzI5NjMxODgwZTI2NDUxMWFhOTYyYSBweTNrCis3MDc4MSBkY2FjMDQ1OTIzMDI4NDg0M2RhZjIzYmJlNWFkYjU4OWE1ZTUwZmM2IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA3ODIgMGQ2MmNjNWI0OGQ1Y2VjZTQ5NzQ2ZjYxN2E5Mjg4ZTZmNWZkNDcxZCBweTNrCis3MDc4MyBlYTRjNWMzYmM3YWJiOGMzMGM1MjQ5ZThmYzAxNGI0ZDcxMmY1NTM5IGxlZ2FjeS10cnVuaworNzA3ODQgMTFhNDU2NDc3ZTgyNTg3MzNmMzI1ODlmN2EyYjRmZWRjNmNmYjhjZiByZWxlYXNlMjYtbWFpbnQKKzcwNzg1IDgwM2QwMjczY2JmN2MwOTA1NjkwZTY1YjEyNjUzY2RjNWY0ZGIyZjIgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDc4NiA3NWVjMTJiMjQ0NDhlMmI0ZGMxY2Q1NWRmNGJiMDYxMTU2MjAyNjNmIHB5M2sKKzcwNzg3IDg5ZGVhM2RmNGNiNTc1MGJhZjdlZmE1MWQzZGY3NzY4YWMwYmVmMTYgcHkzaworNzA3ODggYzY5OTU0NzA1M2E5OGMxOTdiOWEzMTYwZDExM2IwYzE1ZWMzMTBjZiBsZWdhY3ktdHJ1bmsKKzcwNzg5IDEwNGNjZDA2NDYxYTg4OWEzNmU0YjQzMDlhYThjMzQ2NjA1NWUwZDcgbGVnYWN5LXRydW5rCis3MDc5MCBmMjhlNmY3ODIxYjMxYjc0NmUyZjZjYjNmZDk3Y2QyODJmNDI0ZGU4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA3OTEgYzFhM2NlYzBhY2Q0MjdmMzE4YTFmZDMwMjUyM2M1MTBiNmM5MjhkZSBweTNrCis3MDc5MiA3MmJiYjBmOGIwOWE3MjE0YmZkMDExOWIxYzM5ZTQyZjViZDQyYzgwIGxlZ2FjeS10cnVuaworNzA3OTMgMjZiMWFkMDlkMWE3MjM3ZjJhMGRiNTJiMmFmYjlmYzhiMzU5NGY3MiByZWxlYXNlMjYtbWFpbnQKKzcwNzk0IGVlMjIyYzRkMTI5YTJmNjg1YjhiOTI2NGYyYTRmYTI5ZDMwNjBlYWIgcHkzaworNzA3OTUgNTIxOTVmY2FiMTkzZDY5NDdlM2JjZWQyMTlmM2ZmZTkxMzQ0MGUzOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzk2IDM4MDkzY2JlZDZhNmRjNjM3OGQ0YzZkNjY4MWQ1NGUyNzAwMjU5M2MgcHkzaworNzA3OTcgZDEyYjAyYWJlNmRjYjQ3YWIyYTE5NGMxNjdlZDIxNjVhOGViY2NhYiBweTNrCis3MDc5OCAyMzFkNjFjNDNlOWNkZmRkNzY0NWVhNDNmZTU1ZTAyZWJhZTYyMmUyIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA3OTkgM2RhOWRjMGM2NWM2YjFmMGFkNDJmMDZlYjgyNjc3MDFhZTQ2MjM0NyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwODAwIGE5MWNmMGRlZmJkNjc2NjhlNGMzN2Y2ZWMxODRiZjAxYmJlMjY0ZDkgbGVnYWN5LXRydW5rCis3MDgwMSBkNGY4NjY3MzliYjI0YzM0MTJlZDc0ZDM1MWFlMmE2YWIxYzE0MDMwIGxlZ2FjeS10cnVuaworNzA4MDIgOTYyZWJhNjIyOTlmYjg4ODg3ZWQwOGZhNzRhMTQ2ODk0ZTAwZTk1ZCBsZWdhY3ktdHJ1bmsKKzcwODAzIDIzNTYyMjYxNzQ5NzFlYjgxZjdhZTA2MzJlOGE5MDIyZmVmYmU2MmUgcmVsZWFzZTI2LW1haW50Cis3MDgwNCBlY2Y4NDI0ZDc0MjIwYjQwMDY5ZmI5NWJjZjk5N2JhYjdiZDdkMWQzIHJlbGVhc2UyNi1tYWludAorNzA4MDUgZDI0NzVkODA2OWFjZGM2Zjg3MjdjZTNmODU2MGE2Y2I3YjgwZGJmOCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwODA2IGU0Nzc4ZWE4ZTRiMjhkNTQ2YzkzN2NlMDIxMTYyMjk1MmNiZDQ3MmQgcHkzaworNzA4MDcgNmY0NjBiN2FjZjhmNGJjYTcxMGE5MDg1ODdhYzM3ZTIwODQ2YzI2NSBsZWdhY3ktdHJ1bmsKKzcwODA4IGM5OGE3MWU5OTE2MmFjYzg2YTJlNDBhMmIwMzhjODE0YmViYmNkNDAgcHkzaworNzA4MDkgMDdkNjUxNzFhODAwNjkxMWM3OTczNDVhMzUyMWQxNTc1MzllZTQ5YiBsZWdhY3ktdHJ1bmsKKzcwODEwIDRhZGFiNzI0MzMzOTk1YmExN2IzNTdiZDY1ZmZhZDg3NGM4ZTIxMDAgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDgxMSBlZWQ0YzdmYTNlMDU4NzQyZGIxODFjOWMxNjFkMDMxNjMzOGZhZDM3IHJlbGVhc2UzMC1tYWludAorNzA4MTIgODk5YWEyZDE4OTg0N2I3ZjVjOTU4YThhZTFjOTdiMmRkNGIyMzNhMyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwODEzIDY5MTA3OTJmY2Q0YjY0NTllM2ZjMjRlZjEzM2M2ZDMzOGU5ZTYxOWYgcmVsZWFzZTI2LW1haW50Cis3MDgxNCA0ZWViMTRhOWM1ZDJkNzFjNTEyZDNjN2ZkMmFmMGQ4MWRiOTNkMjA0IHJlbGVhc2UyNi1tYWludAorNzA4MTUgOWVjZWI2MTgyNzRhNTIxZmM1NWMwYjVkMWZjOGUxMTFiOTFiZjZkNiBweTNrCis3MDgxNiA5MzJhMWU1MTRjMTYyMzRmY2NiNDIzZGY3YWIzYzJmMWEwMzA4ZDA0IHB5M2sKKzcwODE3IDIxYzE1OTRhYzM2OWZhMDlhYjdlZjlkMzhjZjMyZjg3OTJhODBmOTUgcHkzaworNzA4MTggYzJiMDE0YjU1YmFjMjQxZTFmODI5MjYyNDYyZWIwNGQxZDBiNTcxOSBweTNrCis3MDgxOSAyMjQyYzJlNmM3M2FjNmQ2OTEwNDZjY2NlN2UwM2IwZTY4ZmZjNjMxIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA4MjAgMDVmOTBjZWNiMmEyOWUwZGUwNTRjZDljNjg0NGQ2ZjZjZTY4MTRjZSByZWxlYXNlMjYtbWFpbnQKKzcwODIxIDY2OTRmM2ExYjZlNzI3OWVlOGJjNjc0NGZjMDNhOTFkNzI0ZDg5N2EgbGVnYWN5LXRydW5rCis3MDgyMiAyMzQ1MWIwOWYxNWI5MjNhODFkYWI4ZDA4YThkNmE2YWI5YmIxZWY5IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA4MjMgMmI0MzYzMTBmYzhiYjA1ODk5YzZmNDRhNGZjZDljMmNmMDkyMTU0ZCBweTNrCis3MDgyNCA0NDM2MzkxZDJhOWYyNGJlODIxMDdlNzIxMjJkMDJiOGM4NDMxNDY4IGxlZ2FjeS10cnVuaworNzA4MjUgYWE3Y2YzMjgzZDZlMDYyNmQwZTlmMDhkZWFmMzk2ZGUwOWM4MmViZiBsZWdhY3ktdHJ1bmsKKzcwODI2IDQ4NTdjY2E0NWFhNTQzMDgwODA3NDZlMTdjMDM2MGY2ZDdmOTkwY2UgcHkzaworNzA4MjcgMzk4ZWM5NDAyNzdmNjQ3NmNkYmMyZTJhM2U2NjBjNzg0NDMwZDc2MCBweTNrCis3MDgyOCBlMTI5NDQ2ZGZiZjlhMWMyZDNhYzkyMjU3NzgxOTBhODIwZGYzYWI3IGxlZ2FjeS10cnVuaworNzA4MjkgNTE0MjlhMTk2Yzc1YWUyM2EzMjg4M2JkZWIxM2M5NmFjNzkxOWVhMiBweTNrCis3MDgzMCBhZTYwZTRjMjBhZTMzZjg0NjQ2MmVkNTJiYjNjNDllZjNlODRjMDIwIGxlZ2FjeS10cnVuaworNzA4MzEgZDhjZWIyNmM2NmM0OGMyZGZkZDUxODNmMDI5ZjNlNjk1ZmY3MjE3YyByZWxlYXNlMzAtbWFpbnQKKzcwODMyIGRhZmQ5ODJkZmNmNGEwZTIzYWQ1NzM2ZjNiNjAwYmY1OTcxYjI4OGMgbGVnYWN5LXRydW5rCis3MDgzMyA1MzRmYWY5MTg3ZTg0MDBhMGFhNTNlMGFjNmJhM2YxMDgwYTRlYTE3IHB5M2sKKzcwODM0IDM3NTI4NzMyN2NlOWVmYzcwMzMxM2EwNmVlY2M5ZjQ3MDEwNTUxNDggcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDgzNSBkMTg2ZDM1M2NjODE3MGZhZTFhZTcwMjM2MTVkY2I5NTM2NWRkYjczIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA4MzYgYjk4NTIzYmUwYTE1NzA5ZmFiOTMxMDcwZjViYzBlZDY0MTY1ZWY0YiBsZWdhY3ktdHJ1bmsKKzcwODM3IDExZDZlNTM4YTI3OWI0YTI4Nzg0ZGE4ZWQyYWNkNWUwYWVjNjI1YmMgbGVnYWN5LXRydW5rCis3MDgzOCBhM2IyYTk3MDZmYzM2ZTIyYzE4NTQyYTE4MjBmZGI1YmNkYmZjMGUzIGxlZ2FjeS10cnVuaworNzA4MzkgNmE2ZGQ4YWIzZjIyODdlZDY3MDE5YjYyYmNiYTBmM2IxMjUyMDdlNSBweTNrCis3MDg0MCBhMzk4YTJmNzVkNDQ0ZmY1ZDEzNGRjYWEyYjY4ZjhlNDliMjlkNWRmIHB5M2sKKzcwODQxIDFkMWViMTQ5YjMyMzcxYjExMmVjYzhkMmQyOTdkZWMzNGUwNWI0MDQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDg0MiA3MDcyOWU3MzUzZGIwMzU0ODRmMWZlOWQ1YjUwN2RjODI3NWU2MjVjIGxlZ2FjeS10cnVuaworNzA4NDMgMmQ4MGMyNzk3NTAxMmRmMjk5MGJkYmYxNzlhNTA2ZWJiNjU3ZGYyOSBweTNrCis3MDg0NCBkYjUwMTg3YjRjMGNiOTE1YjZlNTNmYjA0MzBmNWFiMDY2NjY0YTZmIGxlZ2FjeS10cnVuaworNzA4NDUgNjI1OWY4MGRjMjRkNjA4NDRiNjcyYTk4ZTVkMTIwOGU2YzAyZTQ5NiBweTNrCis3MDg0NiA4NDAwMzJkOWVmZDYyY2FiN2Y4ZjI1NTlhNTdlYzk0Mjk4MjdmNmI1IHB5M2sKKzcwODQ5IDg3MTcxMjgzZDAyZjhkZGYzMTY3NDRmMGRlOTNlMjdlNWY4NjE5ZDAgbGVnYWN5LXRydW5rCis3MDg1MCA2ZGRiZGZkYjdhODZkOWFkODBlOGZlNWY4NTg5MDE4MDc4MWE1NTUxIHJlbGVhc2UyNi1tYWludAorNzA4NTEgZDQ5NWExMWM3NmU5ODg1ZWFiNGQ4YjM4NzYxN2M1OWUxNDNlZTAyNyBsZWdhY3ktdHJ1bmsKKzcwODUyIDc2NjNjNDljOWJmNmRjYzdhZjM5OTc5ODM4ZTM5MTRiYmEwYmQ0NmIgbGVnYWN5LXRydW5rCis3MDg1MyAwOGM4NmY0NWFjOTE1NWM1Y2VkNzdlY2NlN2E2NjkwMzM0ZWNiNjMxIHB5M2sKKzcwODU0IGZlYTc0ZDliMmE1ZjMyNjE3Zjk5MDcyYTA3NDUxNTJjZDIwOGY2YzQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDg1NSA2MTU0OGIzZTRjYTgzZWYxN2M4M2JhMmEyM2E4Y2Y0ZDU0YTAxYjQwIGxlZ2FjeS10cnVuaworNzA4NTYgNzY0MWEzZjBiMmVjMzVlY2I4NzBiYmRhNjVkZWYyMmQ5ZjgzMjk1YyBsZWdhY3ktdHJ1bmsKKzcwODU3IGU1ZDhmMGMwZDYzNDA2MTMyNWQxNTRhYWY4ZTE3ZWYwZjJkM2M5ZWEgbGVnYWN5LXRydW5rCis3MDg1OCBhMDIwZTY5ODM4YmE3MmFlODg1NzEzZDMyYzA1MjczNjRhNTQzYjVhIGxlZ2FjeS10cnVuaworNzA4NTkgZDAyNzU1NzRjN2NmZTNhZTdkZGY5NTRiYzQzZDBkZmNhY2E3Yjc5YiByZWxlYXNlMjYtbWFpbnQKKzcwODYwIDNkNTk4MTc1MDY4Y2JiMmM4YTQwM2ViMDRhNjE2MzY3NjgzYjA2Y2MgcHkzaworNzA4NjEgZWYyODE2YzU2YWMyZWU2NzI5MTEyZmQ5YjVkNzc1MWJkYmM5NTc5NyBweTNrCis3MDg2MiA4ZjUxZGQwOWYzZjIzYzdmYWRlOThkMjZkZDJkOWFhNjlkYjAwYzk1IHB5M2sKKzcwODYzIDE1MTZmYTIyM2ZjMTRiNDI5MmYwNjFkODI0ODRmYjdlNTllYjE2NTYgcHkzaworNzA4NjQgNTEwZWQwNTdiOTVmYTg2YzYwNWY0OGE4NThiNjZhZjgzNTE4OWRmMiBsZWdhY3ktdHJ1bmsKKzcwODY1IDU0NmM1MDIxZjAyNzhlMzMwZGQ1NjNjNDg2ZTVlYTczYjEwYjIwOTYgcHkzaworNzA4NjYgZTE2MDdmNmQ5YmU4NzU3OThhMjU3YTAyYWQxNDEzYWM0NTA0MDZkYSBsZWdhY3ktdHJ1bmsKKzcwODY3IGU3MGE2YzQ2YjNhYjQwZjMzYmVlMzllYTcwOGJlNjJhMGM2ZWNkN2IgbGVnYWN5LXRydW5rCis3MDg2OCBmNGI5MDAxNWVmMDA5OTIyNjhhNjllNGM5YzE0NmIxZjBiYzM4ZWI1IGxlZ2FjeS10cnVuaworNzA4NjkgZDNlMzFiZDU0MzBhYjY5YWFlZDY1NDM4NmMxZDQxZWY0ZDU0YmU0NyBsZWdhY3ktdHJ1bmsKKzcwODcwIDAyZGIyZDM0MDEzMzRiMzVjZWI5NzI0OGMxYzFkYmFjZmExOTc4ZmMgbGVnYWN5LXRydW5rCis3MDg3MSA1M2MxYjVmNjY5NjUyZmZkMTUyODBkOTVmMDIyZjcwY2EwMGI3MjE2IGxlZ2FjeS10cnVuaworNzA4NzIgZTZiM2U2OTZkYmNlOGQ0NGMzZjU4ZjkxYTkyNTViYmI0MjEwMTY4NyBsZWdhY3ktdHJ1bmsKKzcwODczIDYwOTZlYTgxZGUwYjdhOTM4ZjQyNjBhMjE5YWUwYjQyYjkxOThlNjkgbGVnYWN5LXRydW5rCis3MDg3NCA2OGI3ZTgyMTdjN2U1MDQ2MTkzYTExZTc0NjUxZGU4NjUyYjhjMzU2IGxlZ2FjeS10cnVuaworNzA4NzUgNDViYTQ3NWQ0ZTk4YzcyNTY2NzBmMDFjNTdlNDZiOTNlZGQ3N2QzNyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwODc2IGIyYWRiN2ViZGI1NGYyNzkwYjBkMDcyNDE0YjE4NmM5ODkzMjAxMjggbGVnYWN5LXRydW5rCis3MDg3NyAxMTI2NjlkZmYwNGFiYWYzNTFmMjUyMjViMGYyYzUxNzYzZjA0MTlmIGxlZ2FjeS10cnVuaworNzA4NzggYWI5YjdkNWRiOTM1OGZiM2RkYjdhNmRmYjJhNmQ0ZDBhY2YzNTU4MiBsZWdhY3ktdHJ1bmsKKzcwODc5IDNhZWE3NWEzNDMzNzNmZDk2OTAyZWU3NjczNGFlMzI2ZGUwZTYzNDggbGVnYWN5LXRydW5rCis3MDg4MCAwYzE3ZjdiZWUyYTA2OTBkZTY1ZDg5ZDk5NDllYTVhY2RhYzYyYjJiIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA4ODEgZDljOGQxYTVkZGVlMjM1NTg5NTc1OWU3MjEyYTBlYjE3NWUzZGQ4MCByZWxlYXNlMjYtbWFpbnQKKzcwODgyIDlmOGQ2ZGU4OTAzNTIxYWI2OTJkMTRmYWQwNDEwYjU3ZGRkZjMxOGUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDg4MyBiNWFhOGFhNzhjMGYxYzExNDMwNjQ3MDY0MjhjMWJlYjUwZDVkNTlkIGxlZ2FjeS10cnVuaworNzA4ODQgYTUzMDFlZGFhNzA0Y2IzMGNiNjYyMzY2ZDZiZTM3NWVhZDA5YTg4NyBweTNrCis3MDg4NSAxZDdhNzcyYjNiMTgzN2JlOTBiZDA3M2QxMTFiYzIwMTNjOGYwNmQ1IGxlZ2FjeS10cnVuaworNzA4ODYgMmI5YzkxNjY4Nzc3NGY2YTMzZTc2ZWIyZWFmY2MxMTY1ZmNhOTUxOSBsZWdhY3ktdHJ1bmsKKzcwODg3IDA5YjcwZDU4ODhiZmI0YTIxNTBlMzZjOGJlNGRlOTA1NDVhZTExZmYgcmVsZWFzZTMwLW1haW50Cis3MDg4OCBlZmFhNjdiYjNmMDZmYThlNDE2YTYzY2Y1NTc3YjI5YTgzYzI3MGIzIGxlZ2FjeS10cnVuaworNzA4ODkgY2IwOTY5MDcxZjJhZDk0YzlmNTg0N2M3MDA5MDdjYWZmMjc1NmQ3MCBsZWdhY3ktdHJ1bmsKKzcwODkwIDk2MDllZDdkZWFmODkwNTMwNzE4YTBlYTdhYmRjMDE2ZmI2NzExZmUgbGVnYWN5LXRydW5rCis3MDg5MSAwN2M1YzBkOWU3MDAwYWNkMWZlNDE5ODg0Y2JlMjQxYzZhM2RhMzcyIGxlZ2FjeS10cnVuaworNzA4OTIgMjFiMjdlMTE1ZGQyNTAwYjYzNmM0YzhjZTQyNjIxYzk1YjZkN2Y4OSBsZWdhY3ktdHJ1bmsKKzcwODkzIGZiZDQwNTQ4MTMwZGU3Y2I2MGMyNjIwMjkzZTFhMWY5MWU0YjA3ZDQgbGVnYWN5LXRydW5rCis3MDg5NCA1NzQ0NDY4ZTYwOWJkYmY1OGRmMTY2NjJmMTRiOTQ2MDYyMzBkMmI2IGxlZ2FjeS10cnVuaworNzA4OTUgODBmZjg1ZDg3ZjY3NWJkY2E2Y2I4OTVlMzExMjE2YTUxMjU4OTFjZSByZWxlYXNlMjYtbWFpbnQKKzcwODk2IGY2ZDljMjA4OTE3MDc0MTcyMmFjYzliMzY3ZTkzNzFjYzRlMjc0YmMgbGVnYWN5LXRydW5rCis3MDg5NyA1ODdmY2ZiZTA4YjYzODk4N2E5YTBmYWY4ZTQwNzA5ZjFkMDAzNTJjIGxlZ2FjeS10cnVuaworNzA4OTggNjY0MDk5NmYwNGU3NDcxYmY0ZDY3ZjhlOWM3ZjJkYjA2Y2Q1ZTFkMyBweTNrCis3MDg5OSAzYmY5YWU0Mzc2MDZjNGEyYzZiMzJjYTZlOTkzZjM3MDQ3ZWViNjYzIHJlbGVhc2UzMC1tYWludAorNzA5MDAgMjFiYTBiM2ZlODE5ZmQ2YzM3ZTc4MjEyNjk4MGE0NDNjOGUzM2EwYSByZWxlYXNlMjYtbWFpbnQKKzcwOTAxIDBkMDgzZmIwNjY1ZGY5N2IwMzIxMWM0NDhhNjk5NmI5NDdkYTE1ZmEgbGVnYWN5LXRydW5rCis3MDkwMiBmYTkyNDNiZjUyNTY4NjYyMmIzZDYyOTYxMjFiZWJiZjFjNTAyY2IyIGxlZ2FjeS10cnVuaworNzA5MDMgZTUyODZiZTI0ZWQ1MTA2YWNjODRhMzVmNjZlZDY5ZTY0ZDg4MDZkZCBsZWdhY3ktdHJ1bmsKKzcwOTA0IDdkZjI0NDExMGRkNWZhMTc5NWU4YjNhYTY4N2ExMmQ3YTI1NWNmY2YgbGVnYWN5LXRydW5rCis3MDkwNSBiNjU3OTc4ZDU2YWQ2ZTIxM2M3OGM0NzM4NGM5OWVjNDFlMDJmZDFkIGxlZ2FjeS10cnVuaworNzA5MDYgNWYzZmUxZjI2YjM2ZDA5ZDhmMGQzODM2MWY3NmNlODk2ZDI0NDRkMyBsZWdhY3ktdHJ1bmsKKzcwOTA3IDE4MzliODU1M2EyZGJkY2FlOWVhZWI4MDljMTRlMDhlOWE1MDZhYzIgbGVnYWN5LXRydW5rCis3MDkwOCA1Y2Y3NDEzN2MwZjg2MDhjZGE5ODg0YjMxNDI0OTkwYWIwMjc0NTQ0IGxlZ2FjeS10cnVuaworNzA5MDkgZTI4MThiOWY5NjRiZTgyYThlNjU3NjZlY2UzNTgwZTM1NzA0NWE2ZiByZWxlYXNlMjYtbWFpbnQKKzcwOTEwIDU4NTZmYWUwMDllODZkNTYzY2EzNTEwYmY0NWFlZTYxZTk0MjEwZTQgbGVnYWN5LXRydW5rCis3MDkxMSAxZTA1MzQzMTlhM2VlN2U2NzUxNGY0ZGI4ZDc1Mzg1MGMwMWM3NzhhIHJlbGVhc2UyNi1tYWludAorNzA5MTIgOWI5NmJkMDkwOTA4YTY3OTM4YjE3NTdhYjJlZjU5YWVhYmUzNGVmYiBsZWdhY3ktdHJ1bmsKKzcwOTEzIDExMTM1MjExMmFmYThlZjJiOGI4MjJjYTc2M2MxYzYwMDg4YzZmY2IgcHkzaworNzA5MTQgZjdiMTFiZjAxYTEyNjRkMjIyMzY3MjE4OWJiZGE1MWI2OTMwMmZlMSBweTNrCis3MDkxNSA2OTY0NmY5Y2Q3MGI1MTE4NWY3NTJmNzNjYTVjYmFkODRmZWU2Mjk4IGxlZ2FjeS10cnVuaworNzA5MTYgZmEzYjJlZDIwZDg1NzI4ZjIzY2QwNzFjYzFjMmJmODlmN2ZlZGM2ZSByZWxlYXNlMzAtbWFpbnQKKzcwOTE3IDkxNGE1ZGVkMWJlM2M5ZjZmNjBlZmI2ODdlZmIwY2MwNWVmZWJkMjcgcHkzaworNzA5MTggZmZhMTNhZmYyOWRiMWRjMDA3NjNkOGM2MDI3ODlhNGQyOTI1ZjlkYSBsZWdhY3ktdHJ1bmsKKzcwOTE5IDg4NDNhODQyN2E4YzgyYWYxMTg2OWI3NWVhNWY3Y2Y4MTYwMDM3NDkgcmVsZWFzZTMwLW1haW50Cis3MDkyMCA4MmFkZWRmZDIzMjRmNGIzOTBkOTUzYjJlOTc0NGY5YThmNGVmZGQ1IGxlZ2FjeS10cnVuaworNzA5MjEgZjc1OGRkMmE4OTY4OWJjMjAwNjRhY2JhNjc3YzNhMDYwYTNkMDFlMyBweTNrCis3MDkyMiA5ODFhOWIzZDk3ZjNhZmUyZDcyYWY2ODlhOTBhNjNlZTZjNWM3ZTI5IGxlZ2FjeS10cnVuaworNzA5MjMgZDNmNWE5ZjA0MWQ4NDBjZmYxNDgxNGQ1ZTUyMWUzYzk1OWQ1YzFkNyByZWxlYXNlMjYtbWFpbnQKKzcwOTI0IDMwZDg3NGIxYzRhNzIzNDNlZjY0NzhlYmExMTZmYzE0ZDA5MjQ4ZDMgcHkzaworNzA5MjUgMDAyZmE5MjA1YWFlMWFiZDg0MzVkMTNmMmE0NzNmYjdhODI4MjExOSBweTNrCis3MDkyNiA3YTc3ZTRiZWFlNjY1ZDgwNzMzYmJhNzIzZGRlNTViODVhN2FiYTQyIHJlbGVhc2UzMC1tYWludAorNzA5MjcgNzY1NTE0MmY1MjI0MTRhYjkyOWU5MWQzOWMyNTA2ZGZkODE1ZDc0YyBsZWdhY3ktdHJ1bmsKKzcwOTI4IGI0MDI2YWM3ODExNDY1MzU3NTJhYThmNzk3M2M0MGIxNDdkOWEyNmEgcHkzaworNzA5MjkgZjg0MzQwODg2OTM2Y2IyZTg1Y2NmOWY0ZmU2YjJkNWE4ODBlZWU3MCBweTNrCis3MDkzMCA1NzA0NGEzNjUyZDhiNDJlMDgyZWE5YTBiZjUxNDMwZWEyNTljMmFlIGxlZ2FjeS10cnVuaworNzA5MzEgMTg0Y2E2MjkzMjE4Zjk2ZjQyYTY3MjkxNDk2NzAzMTRiYTAxOGE5MiBsZWdhY3ktdHJ1bmsKKzcwOTMyIDA0ZDQxODhmYjQxMTYwNWU5NWJhNDBlZmVhMTFjY2Q4NDU0ZGQ2MzUgcHkzaworNzA5MzMgMWFjMTE5M2E2MWQyZjVmN2QyODRhZTljMDA5OTgxYzQ4M2Q3NTA2ZSBsZWdhY3ktdHJ1bmsKKzcwOTM0IGU1NTVmZDhjNGI2ZWU3OWVmMDM0MmExNjY1NTU3Y2UwNDM3YmQ0Y2IgbGVnYWN5LXRydW5rCis3MDkzNSBkODUwOTBhNDgwYmE0YWIwYmE0YWZhNDVjYzVkZmJiYzNlMGM3YmRlIHB5M2sKKzcwOTM2IDUxM2Q5NmJmMGQ3MDM1MjZkMjFjNTI2MWI0ZjI0MjAwNTVhYzI2MjMgbGVnYWN5LXRydW5rCis3MDkzNyAxYmE2NWE5MWU1NmJlOWNiZmIxNjRmNDZjNzM5MzFmYTdjZDhkMzFiIHB5M2sKKzcwOTM4IDc5YTQyMDYxNzY0MTNjZGFmOGRjMWEzMWYyNTVmZjdjZmZjOWJkYzMgcHkzaworNzA5MzkgY2MyYzcxMzNkYTRmNWY0NzYyYjgyYjU2NWFiMzhiZDdjMjg2ZmQ0NCBsZWdhY3ktdHJ1bmsKKzcwOTQwIDc2MjM1NTgwYWEzZDQ3YzA0NGI3YzljMjNmZTdmNDc1ODM4NzQ4ZTEgbGVnYWN5LXRydW5rCis3MDk0MSBmZmE4MWJkMmVjNzJkNjdkYzYzMTM5NTU3ZDVjYzU5MDU3M2NjODA2IHB5M2sKKzcwOTQyIGFjZmMxOGNkY2RmYjc3MmJlNDZmZDdjNzY3YWVjNzJiODk0MmE0ZmUgcHkzaworNzA5NDMgMDgyYjI1MGQ1ZWU1MGZkYjkxNGU5OTE5NGQ3MTdkMzFiMGU5OTUxZSBweTNrCis3MDk0NCBmYTdjMzc2NWQxMGZmNGMzZWZjYTkxYWIyMWY3YjhkMGEwZmU5NDVhIGxlZ2FjeS10cnVuaworNzA5NDUgMDUzMGFhZGZmNjk2ZDFiNjZjNjY3Y2JkMTliMTBkMmNjMjU5MGVjNSBweTNrCis3MDk0OCA3MzQ3ZDkxNmYxM2FlNGNlMTkyMzQ2NDFjZjFjYzRkNTMzZDUxNDJiIHB5M2sKKzcwOTUwIGRhNzQ0OGViY2U4YjExODY1Nzc4MjhiMjE0NTlmYWNmNDRlNTlhMjUgcmVsZWFzZTI2LW1haW50Cis3MDk1MSBkYzUzZjM3MGNhOWQ3NDc1M2E5NTAwNTU3ZThkYzNiZTAyZjVlYmM1IGxlZ2FjeS10cnVuaworNzA5NTIgMTkxOTBlMDU4ZDU5NDMwNWYwOTE0NDBkY2Y0N2IxM2U1OWMxZmRlNiBweTNrCis3MDk1MyA5N2ZkMGQ3NmFlOWNlN2IxZjU0ZWJjOGVjNDg2Zjc3NjdlOGMyNTEzIGxlZ2FjeS10cnVuaworNzA5NTQgMDI3YTNhZGMwZDhmNTYyMDAwZjI0NmEwNzRiY2MxOGQ2YzEzOGIzZSBsZWdhY3ktdHJ1bmsKKzcwOTU1IGFiZjZkYWQ3ZDY0ZmUyODM4NTI3YTBmNDYyOGY4NzRmZTllODI3YWQgcHkzaworNzA5NTYgNzZkNjFjMTI2MjNjZjkxZTc4NTVkNmMwN2FjY2UxY2QxYzI3ODMwNyBsZWdhY3ktdHJ1bmsKKzcwOTU3IDQ2ZjFjZTc2MTk5ZWI0NTE5OWZkZTEzNDg5MTI2NTAyNWNhY2I3NjIgcHkzaworNzA5NTggZGY1Y2IzODM2YjI4MmFlYjJlMmFlMzYxMTFkYmY4ZTRjZGU5ZGI3MyBsZWdhY3ktdHJ1bmsKKzcwOTU5IGNlMGUyOGRjY2JjMjI4YWJiOWU4YTE3NDYyNjA2ZjNhNzdiZTYyMTcgcHkzaworNzA5NjAgOGI1MWQ5NjM2MGIwM2M1YzY1MjFiNTBiZTBkYzljYTQ5NGE3ZDVhOCBsZWdhY3ktdHJ1bmsKKzcwOTYxIGMzZjA3YjY3N2FmYTY3NDkzNmQxZWEzNDhhNjkxMTFiMWMwNmRkMTggcmVsZWFzZTI2LW1haW50Cis3MDk2MiBlOWZjNTIyYWFlOWE3MzljNTM3MzFjMjJiYjliZGRkM2UwM2JiM2ZiIGxlZ2FjeS10cnVuaworNzA5NjMgMzQ1NjY3MWE3MmJjMTY2YjUxMTgyMzNlNzAwNjQxNmU4YTBhOTNjMCBsZWdhY3ktdHJ1bmsKKzcwOTY0IDE4YmQzY2Y1Mjg3ZmYwMDg5ZGRjNzZhOThjZDQyODU3YTJlMDU0ODEgbGVnYWN5LXRydW5rCis3MDk2NSBiNWQyM2ZhOWI4YTQ4NDdmMjM5YjdhYjQ5Y2UxNjM0OWU3NDEwN2ZhIGxlZ2FjeS10cnVuaworNzA5NjYgMjg3ZGYzYTA5ZjM1MzBlMzU1YjdjNmU3MmQ1NDUxM2FkN2Q3ZGUzMSBweTNrCis3MDk2OCBlOGVmMTNjOTg1OTcwOWM1ZDViNjMyNzNiZTgyNjljM2EwZDdjM2ExIGxlZ2FjeS10cnVuaworNzA5NjkgMmU0ZGJiMzk1NDE3Y2I2ZDQwM2Q0NWViN2VlNDgwNDJmYTdiMWI3MyBsZWdhY3ktdHJ1bmsKKzcwOTcwIGMzMzdmMjAyOGQ4Yzc3ZTA3NmVlNzBmNTI1OWE0MWEwM2VjYzQ0NWEgcmVsZWFzZTI2LW1haW50Cis3MDk3MSAxNmMxNDQyNjIzNzQ2MjIyYjAzMGZhOGJhMDZhZGNkNmEzYjZlMWQ0IHJlbGVhc2UyNi1tYWludAorNzA5NzMgY2UzYjVjYWY0NTIyYzhhMTk4MDJhZjFlMWRmNTE2YmU3OGQ2ODliMCByZWxlYXNlMzAtbWFpbnQKKzcwOTc0IDhkZmY0MDY0MDNiZTJmZjdlNDBiYzYyY2U3Y2IyZTU1NmQ3NDVmMTIgcHkzaworNzA5NzUgYjgxNGIwYzM1MzQ3MWNmYjRiNzQ3MjA4MzJhNDVmZTU2YWYzMGI5YyBsZWdhY3ktdHJ1bmsKKzcwOTc2IDJkOTVjMDE0MTIxNGY4NGU0ODViMDJjOGVjZmM0ZWY5YTZmNzkwYjAgcHkzaworNzA5NzggY2VmOGI4MjU5YWM5OGViOTc5ZmYwY2JhMjE2MTU2NGNkNDkxMDE2NiBweTNrCis3MDk3OSA3ZTJiYmI0ZGJmODc1OWUxNTQxZDc1YzNiNDAzODhhODI1MTM4MzYzIGxlZ2FjeS10cnVuaworNzA5ODAgYTczMzczY2NjY2MyMWUwZGYyNTNhZWVkYzM1NDEzZDI4NzM1OWQxYiBsZWdhY3ktdHJ1bmsKKzcwOTgxIDQyZGE3MTU0YjI3MGJiZDk3OTI5YjMxZGFhOTc0Mzc0ZGQzYjdlMGQgbGVnYWN5LXRydW5rCis3MDk4MiA2NzU0MTVjNWI5MTI1NzkzOGRhZTBlZTJjYWM2OWM3OGIzYTRhMjBmIHB5M2sKKzcwOTgzIDZiNmFjNmFjNTU2NmE4NDU3NGM1ODI3NjM1MGQ5MmM1YWRmMWI0NzYgcHkzaworNzA5ODQgZDdmNDc4YzY4MWI5ZTMwNWU4ZmZhMzI4ZGY2OGE4NGQ2YWMwYzA5NCBweTNrCis3MDk4NSBmOGFhOGQzZDY2MDc4ZTliYTAwMGI5M2EzYWViYmE4OTc1OTM3ZjNmIHJlbGVhc2UyNi1tYWludAorNzA5ODYgZTllODdkMWEzODljNTNkMGJiNzUxOGFjOTc0MjM3YzhhMDlkZjBkZSBsZWdhY3ktdHJ1bmsKKzcwOTg3IGYxNWU3YTkzMTMzNGQ1MDBlNTdjZDUzNDgyZDFlMDFiMTA1NzAyZjcgcHkzaworNzA5ODggYWZmY2YwNzA1NDM5YTViNmQ2YmJiMzI0OTc5ZmE3NzYzOGFmYmNhMSBweTNrCis3MDk4OSBmOTQyODkzZmE0ZDhkOTJiNjRiNmUxZmE4NzY3MTU2YzQ0YjNkMzllIHJlbGVhc2UyNi1tYWludAorNzA5OTAgZGEyYzZkZDI2ZTg4ZGFkMDIyNDVjYWI2MjE3MDk0ZDk3NWVlNGQ0YiByZWxlYXNlMzAtbWFpbnQKKzcwOTkyIDllNTc5YmFiNzZmMWM1NzJhNTIwNjFhYWU3MGUyMDQ2YTc1MmNkYTIgbGVnYWN5LXRydW5rCis3MDk5MyA1MTAyYmJmNGFiNzQ5NWM1OTE4YjI3M2YxY2ZhMDFkYTRiNjZlYmYwIGxlZ2FjeS10cnVuaworNzA5OTQgOTg1NmI1YmUyNmM0Y2FiZDkxYzNhMTdlZmUzZWJjMjgwYzBhNjc1NCBsZWdhY3ktdHJ1bmsKKzcwOTk1IDNiMzRjOTM3NDk1NTJiMDMyMzMxMGY1ZTFkYTNhNzc1ZjRlOWFlMmEgbGVnYWN5LXRydW5rCis3MDk5NiA5ZWQ5ZDIwNDEzMDY2NTQ0MWM4ZmVlM2E3ZjRlMGFhYTBhNDAyNTk1IHB5M2sKKzcwOTk3IDgzZjllM2QxMGVkYzQ4OGZjNzhlMTFlZDYxMjIzNWVmODFlOWU3N2MgbGVnYWN5LXRydW5rCis3MDk5OCBlM2ExOTY5ZmRiZTVlMGFmZTk5MGJhODQxNDBhYzRmNjRhMzcwMzg2IGxlZ2FjeS10cnVuaworNzEwMDAgMWUxZGFkYmJkZDAxYjk3OTM5MjQ2MzdjNGQyYmIzOGZhOTY5ZTUzYSBweTNrCis3MTAwMSBjZjczZmI1Y2MzYWM5ZDgzYmVjZGE0Y2ZlMzliMmQzN2ViMmU3MzJkIGxlZ2FjeS10cnVuaworNzEwMDIgYjQzZjE0YzEwM2JiYzNhYWQxODMzMzM1ZDFhYWEyNzQ3NmM0YTFlMyBweTNrCis3MTAwNCAyZGZjMzM3MTc0OTM4Zjg1NWI1YjMwODU0NWMzNzYxZjNhY2E3NzFiIGxlZ2FjeS10cnVuaworNzEwMDUgNzU1YmIxZjliMGU1ODZmZmYxNDc1ODEwZjEzYWY3NTRmZDQ5ODc5NCBweTNrCis3MTAwNiAxYjhkNjhkYWU1NzIxMjU1MzMzOWQ1Zjk3OGUzZDRkMzhiZDkyYzQxIGxlZ2FjeS10cnVuaworNzEwMDcgZWI2MjIxN2JiYjUzNzM3YmU3NGM3MGFiNzMxM2IyM2MxOGQwYTdkNyBweTNrCis3MTAwOCA4NTAzYTNkMDI1NGQ4ZjY0NzBiZWEzNzIwNDBiZmZjODlkZTk4ZGVlIGxlZ2FjeS10cnVuaworNzEwMDkgZDM0M2U4MDJiMjc2MGFhNzAwY2YyZmY3ZjE3Y2FjMzZjZTU0MDQ3NyBsZWdhY3ktdHJ1bmsKKzcxMDEwIDA4MGZkZmM0M2Y5NDE4Njg2NDdkMzkyNzBkMDEwOTY1MGQ0YmJhNDggbGVnYWN5LXRydW5rCis3MTAxMSAzNmYyNWJmYjNhMWJjY2RkNDQzZDcyOGYzMmE1NzU3ZmE3N2JmMGUyIGxlZ2FjeS10cnVuaworNzEwMTIgYzVhN2ViZWM1OTg0N2FmZDU2ZDQ2OWI0NjcyZmU0Njc1NDYzNWQ5ZSBweTNrCis3MTAxMyBhNzNkNzMyNjMxMWRkOGM5NTA3MTU2NmJhYTEzNTYwNTg4MDg0ZTAzIHB5M2sKKzcxMDE0IGYzOTA0NjQ2MzlmYmU4NTgwMTFiMGM2NjBiM2I2MDc1NDBkMTM5NjYgbGVnYWN5LXRydW5rCis3MTAxNSA0NzViYTQzY2NjYjFlNTIyZDNiOTU1NjhmMTQxNTkwNzM3YzliNGRmIHB5M2sKKzcxMDE2IGMwMTM4YjJkNGVlZGM5OTA1MDBiYmJmZTFjZmU0ZDU0ZGNhODUxZTggcHkzaworNzEwMTcgOTI2ZmQyMTdlMmRjYTEyNTMxMDRhMDE2ZTA1MTg5YjU5NmI0ZWI1OSBweTNrCis3MTAxOCAzM2ViMTY5N2MzODJkZTg1ODNhOWJlZmY2MTBkM2NiNTUxYjhhOWYxIHB5M2sKKzcxMDE5IDM1YzNlMWQ3Y2ZkZjYxNDcxNzMxMThjNDQwYWY1YjgyZGM2YTllMmMgbGVnYWN5LXRydW5rCis3MTAyMCBiYzE1YjQ4M2QzODQ2ZGEwZDllYTMwNmI3NGI3YmMxZDhkOGU4OTdkIHB5M2sKKzcxMDIxIGEwZTIxMWIwNGIyZTBjODRkMDI1NDZjMWQ1OTQ1MWNjMWYyZGE0YWEgcHkzaworNzEwMjIgMTA4NmQ3ZWU4YjBiM2ZlZmQ3MDc4ZTI1ZDM1ZjliYWEyMTRjOWQ3OCBsZWdhY3ktdHJ1bmsKKzcxMDIzIGI5ODQ0NTYxOTZhZjI2OWQxM2Y1YTk0N2UzODI4YjRmMDI4NzVmZjIgbGVnYWN5LXRydW5rCis3MTAyNCA3ZTg2ZmEyNTVmYzIyNWNkNzIwYjE2ZjhhYjYyZWQyNGIyMjAyYmMyIGxlZ2FjeS10cnVuaworNzEwMjUgOTA2OTBlYjg1MzgwYmQzYjhjMjEzMDRmODBiYzM2MjQ5MzU1ZGUyOSByZWxlYXNlMzAtbWFpbnQKKzcxMDI2IGY2MzRjNTQ1NWI0ZjNhYjUwNTFiMjYzZDU2MzIyZWMwZTMyZTIwOWEgbGVnYWN5LXRydW5rCis3MTAyNyAzZTFhODA1MjVmMThhMDExMWVhODE2NGM1NjNkNDU3MmFjMzc2Y2ZjIHB5M2sKKzcxMDI4IDk1MzU1M2FlOGI4NGZmMGVmOTgzZDhjMjBmYmQwMmFjODkxZThhNmMgcmVsZWFzZTI2LW1haW50Cis3MTAyOSBjMzM5NTkzOTI5NTNiMDFhZmU2MjE5MzNjYjk5YWYxZWUwNGY5ZDBkIGxlZ2FjeS10cnVuaworNzEwMzAgMzdmZmVhYzNhMWE2OGQ2ZmY1N2I3NmQwMzE1YWE4MGE3OGM3NjU5OCBweTNrCis3MTAzMSAxZWYzZGE2YzQzNGNmYjIyOTdiMmQyYWEyNzMwYTU5NjhkZmU3OTM4IGxlZ2FjeS10cnVuaworNzEwMzIgMWI1MGY3OGNkZGNiYjg3MWE0MzI4Mjk5M2I0M2U2YjMyYmZhNDlkYSBsZWdhY3ktdHJ1bmsKKzcxMDMzIGZkNWVlM2QwZjU1MjhmNjU2ZDY4NmE2OTY1MTQ4YWY4OWJlOTcyMmEgbGVnYWN5LXRydW5rCis3MTAzNCA1NGUwOTNiZDg4N2VhNzRkMzAzYTViNzEyNjU2Y2ViNmVlODdlNmQ0IHB5M2sKKzcxMDM2IDIzYTJlMTU4NGMwMmFmMmVmNGY5MjMzZTk3YjQ1Mzk3YTE1MjAwOGYgbGVnYWN5LXRydW5rCis3MTAzNyA4ZDg0ZjIyMGZmMjc3MDhlMDc1N2M5NWQ5ZTk1MjQwNDA3Nzc0ODM0IGxlZ2FjeS10cnVuaworNzEwMzggNWYxNzlmNmYwN2UwZmY4MzQ4NTQ4MDg3YWFhMWIwZmU1NTA1ZmY3NSBweTNrCis3MTAzOSBmY2JlMWFkMjRkNDEwZWQ3ZDgzMWRlNDhkZDliZjIwZGVjNWY4ZjI3IHJlbGVhc2UyNi1tYWludAorNzEwNDAgMGJjNjJkN2RiZjU0OTJmNDIwNGQ2NjJlNjBjMGQwYzY2YTRkNjI0NiByZWxlYXNlMzAtbWFpbnQKKzcxMDQxIDcxZjYxMjlkZGFkNDY2Zjk2M2RhOGMwZDQyOWUzMDg2MGFlMjZhNDIgbGVnYWN5LXRydW5rCis3MTA0MiA1MzkxNmFhY2NmMmNjMjNjODY1NzQ5MjAxYjJiMDkxMzY1YTg1Y2JlIHB5M2sKKzcxMDQzIDFhYmY5ZTMwYzE5ZjlmMjJlZTI4ZmUyMWViNTM1YzUzYTRjMjNjNGUgbGVnYWN5LXRydW5rCis3MTA0NSBhY2RkMTFlMzlmMGIwMjI1NzQxYWUwMmZkMjQxYTRkOWI5ZDZmMDQ5IHB5M2sKKzcxMDQ2IGM1ODk0ODNhNzJhY2E1NTRjZGFlOWNmMjU0OTljYzIwMmI0ZTUwY2QgbGVnYWN5LXRydW5rCis3MTA0NyAzNTgwZDNjMDcyYWU1MDMyYjEzYWRhMzg0ZTY5YTlkYmFmZjM1MjMwIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEwNDggYTMzYmM4MTgzZTRjMTc2ODI2OWI1NGEyNWU1ZTY2MzkxNDk2Y2YyOSByZWxlYXNlMjYtbWFpbnQKKzcxMDQ5IDJlMjIzODY4ODMyYTgxZmZmOWY3M2IwZDMxZTQzZTFlODBlMjZlN2YgcmVsZWFzZTI2LW1haW50Cis3MTA1MyA3NTlmNDNjOTc4ODc4YWY5MTUwNzU2Yjg2ZTI0ZDNhYWIzZjg4Yjg4IHB5M2sKKzcxMDU0IDk0ODlhOWU3YWZkNDM4MzI2NDRiNjUxMTQwNTY4YWIwMzYzNjA2M2IgcHkzaworNzEwNTYgYzgwMWE2N2NlMjkyZTZjYmI4NGI4Njg4YThhY2U2YTlkZGQyYzMzZCBsZWdhY3ktdHJ1bmsKKzcxMDU3IGY4MTQyNDk3MmFkMTE4NzdjZDEyYzc0NzE1MGQ1Mzc4MmRkZTgzY2EgcHkzaworNzEwNTggNTRiMmNkMjFhYjQ2Y2U0ZWRiMWI2NzlhNTJmYmFmMmIzMzRmYmI0MyBsZWdhY3ktdHJ1bmsKKzcxMDU5IDdmYTBmODFkNjA3ZTcxYWU2ZmYyYjk5MGY4MDJlNmQ3YTM1Y2ZmMGYgbGVnYWN5LXRydW5rCis3MTA2MCBjZGQ1NDcxNDc1NjY3ZmMwOTg1Y2UzNTI5YzEwYzU4YTc0Y2EwYTYzIHJlbGVhc2UyNi1tYWludAorNzEwNjEgZDFjNTM2N2Q1N2Q2NTU2MThjMDEwMWUyY2RlZDUwZTliMzJjNTdiNCBweTNrCis3MTA2MiBlMDJjNWI0ZTRlOTJlZGM5MGEwMzYxZjkyODQwYjQxYmUyNjYzMWE2IHJlbGVhc2UzMC1tYWludAorNzEwNjMgOThjMzQ0OWRhMzY5M2JkMmZiZTIyY2JhZGVjYWVhOWE0YTcyOTZhNyBweTNrCis3MTA2NCAxYjQ4MzkxMWIyZTY2OGUwNDBjMzM0MTRjZjljMTNlODRhMzJhOWEzIHB5M2sKKzcxMDY1IGJlZDUyNGVjMDg1MGNlYjZkNDc3ZmM4MWIyN2Y3MTIzN2JmMThkYzggcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTA2NiA2NjQ2NGRiMzgyYjE0ZDViYzA0NmQxMGY4ZTM0N2Q0NGU3ZjcyZmExIHB5M2sKKzcxMDY3IDliNTM1Y2U5OWQyZGFhN2JkMjFhM2E5YjUzMDEyZGI0ZDMxMTdjOGQgcHkzaworNzEwNjggZDI4ZWEyZWU3MDcwZDM2MDUwNTA1ODAxMzE4Yzk5OWQ4ZWMxOTEyYiByZWxlYXNlMzAtbWFpbnQKKzcxMDY5IDY3MmZkN2E0MWQzNWYyYmQ4YThmMWExODJiYmVjOGUwNmI0M2ZhMTAgcmVsZWFzZTMwLW1haW50Cis3MTA3MCA3NWVmZDc1NzQzNGI4NWY4NWM1ZTdmMjI1ZmUwY2YxYWMzN2FiZjYzIGxlZ2FjeS10cnVuaworNzEwNzEgYjNkNWY2ODVkMjdhY2NhNWVhNjY5ODQyMjk5MjE3Njc5YTQ2MDYxMSBweTNrCis3MTA3MiBjYmUxOTEzMGIyZWI2MzExMzY2NmU4N2I2NTQ2NTU5ZTE0MzgxZGU1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEwNzMgMjBlN2FhNDJkNmZlNGQ5ODE3M2MxOTczNWMyMjU0OTlhZDZjZDViMiBsZWdhY3ktdHJ1bmsKKzcxMDc0IGYxM2VlOGFjNmQ1NDUyNzc1MWQyODFiMzk4YTFiNTk4NWRjNDE3ZTggcHkzaworNzEwNzUgZjNjNGZmMjE0YjExZWM2ZjEyMzljZmI2ZDAxNTU0MGJjMDlkZjhjYyBsZWdhY3ktdHJ1bmsKKzcxMDc2IDVjMzdhYjA3YTdkYzM0MTk4ODI2ZWNmZjM1YTc0YWU5Mzg0MGRmMjMgcHkzaworNzEwNzcgOWJlMmUxNmE3MWRmNWI2NTU4NDM0NGZiMTFhMTJjNWMxODY4ZGQyNSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMDc4IDM5YmU5YWM4OWJlOThmZmNjMjlmOGUyYmViYzFkNGE1MTU0ZDZjZTYgbGVnYWN5LXRydW5rCis3MTA3OSBmNjIwMmIzZWY4ZWE5OGU0ZTBiZTJiYmFmZWJmMTQzZDgzOTA0ZDVkIHB5M2sKKzcxMDgwIDE4M2Q2MDcyZTFlNWRmOTNmOGNmZjM5MGIxZjg0N2IzZDY5YTA4YTYgcmVsZWFzZTI2LW1haW50Cis3MTA4MSAxYmY2NzEyMTdhYmYzY2Y3OWY3ZWViYTJjMTYyYmU0ZWM1OGM4MzY1IHJlbGVhc2UzMC1tYWludAorNzEwODIgZGNiMzY4ZmI2YWRiZmFlNWFlOGM5YzMzMThhMjZkZTVlNWNmMjliZCBsZWdhY3ktdHJ1bmsKKzcxMDgzIDk4Njg2ZjMwN2RlNDI2YzYwOWZjZGUwZDkxOGYzMzMxNTJkYjM2ZDIgcmVsZWFzZTI2LW1haW50Cis3MTA4NCBjYmZiZmYyMzNlZjVjMTdjZjZkZWE5ZTQ4YjE0YmRjYzY5ZjQ1NTgwIHB5M2sKKzcxMDg1IDJhMjdmOWFkYThlMzNlNDc5NDgxMWYxYzcyNzQzOTY2YTI4MjQwODggcmVsZWFzZTI2LW1haW50Cis3MTA4NiBjYWMyMDljZjVlNGNjNzM5MDIzMzllODcwMzE3YzU5Zjk1NTgyMDk1IHJlbGVhc2UzMC1tYWludAorNzEwODcgYWU0ODJlNTJhMTZiYzA4OWU5MTVlZWMwYjBiMzE5NGQ1ZmIzYzRjZiBweTNrCis3MTA4OCA0ZTVmZThiNmQxMDFjOGYzNjFkNjRiNzAxOGQxNWQ2ZDA3ZjcxZDFhIHB5M2sKKzcxMDg5IGI0MWMyOWRlYmRmNjlhNzkwOTI2Y2QyOTljMzA3NTYzZmE1MjMzZGQgcHkzaworNzEwOTAgNjk2NjJiYzNhOWY2YjZkMzIwODcxYmU5YzkwNmZmNjQzZTJiZjViOCBweTNrCis3MTA5MSA2NDNmNDRhZDM4N2ZiNDY0MzBiMDY1YWZhODY2NWU2OTYwZWUyNjAxIHB5M2sKKzcxMDkyIDhhMjZmOTYyMGIyMTE4ZDdiYjI0MmUwMGUxMDg3NTU3NzliZmM3YWIgcHkzaworNzEwOTMgNDc1N2RkYWE4OTdkZWM5M2YyZjVhM2QxYjg5OWRkMTdjMjA1NDEwZiBweTNrCis3MTA5NCA2ODk0MzQ0NTRjYjhlNTMxMjg4YzUyZTg4MzhhZTRkNGJlYWJlZTY1IGxlZ2FjeS10cnVuaworNzEwOTUgYTk4MDkxMDY2ZTAxYjIwNjM4ODE0N2ZjNWZjZTA2ZTQ1Y2I5YTAyZSBweTNrCis3MTA5NiAyODA5NmVkNzMxNTNlZDY5Njg3MGJhZGVjYjBkODI5ZTBkZDc0Yzg2IHB5M2sKKzcxMDk3IGMyZjllMTM1NDJhYjJhYzJmOTVkMGYwZGE2OWIzNTAxZmZiODdmMzMgcmVsZWFzZTMwLW1haW50Cis3MTEwMSAxNWM4ZTlkZDE5OTY3ZmQwMTExNzE3ZmNjYzY4ZmEyMjM1NWQzNzE3IGxlZ2FjeS10cnVuaworNzExMDIgNWY1NTg3ZjNjNGQ1NWFiYzIzZDFlZGM2YTJlNGY5ZDAyZWVhMGU5OSBsZWdhY3ktdHJ1bmsKKzcxMTAzIDQ0OTU0ZTZhMTM1MzIzYjQ0MDE3MDFmNGNhZjRhZGNhYTkyYTE1NDYgbGVnYWN5LXRydW5rCis3MTEwNCBmYWEzNDczZTQ1MzQ0ODRiYzIzZmRiZTAyMTYxOTkzOWIxN2NhNWE3IHJlbGVhc2UyNi1tYWludAorNzExMDUgYzNjNmI3Mzc0YmRhMmVkOGQ3MWNhOWNmMzMyYjg4NGU3OWRhZDViMiByZWxlYXNlMjYtbWFpbnQKKzcxMTA2IGQxOWQ4OTAxMzhmMWVjYjFmODQ5MmNmMzY5YzA1YTVhN2YxMzg3MjkgbGVnYWN5LXRydW5rCis3MTEwNyAyZGYxNTE3ZDg2OGM5YWYwNzBhODU1NTI5MmU4MjQ2NTUxOTBiYjY5IHB5M2sKKzcxMTA4IDdiZjYwZDdiMDllOWEyMDYyZDI1NTYwODc5YWRiNzViNWM4OGNiM2UgcHkzaworNzExMDkgYjRmMTU3ZjhlNGE3Yjk4YjUwMjk1ZGY1MGJmYjY5OWEyN2EwYmVlNCBweTNrCis3MTExMCAxZmRiNTY1OWVlMDg5NjgyYzFkZDVmZmQzODRjYjNkMmFhYzRjNjYyIHB5M2sKKzcxMTEyIDA1NWIzMDI3ZDU2OGI5NjM5NDEzMjE2YzcyNjYxODA0ZDdkYjZiMjQgcHkzaworNzExMTMgNmNmMTZlYThhMTZkZTZiNzM0N2UzZWI1ZDdiNjQxZGVlNWQzZjA4MCBweTNrCis3MTExNCBiNGRlZmRkN2Y0MzFiNTE2OWMwNjZkMzU5NzVkYjM1MGNlZDEzYWZlIHB5M2sKKzcxMTE1IGZhMmFhYzQzNGQwNjM2NTZjNzdlOWE1M2ExNjU3Mjk2MDc3MjBhZjkgcHkzaworNzExMTYgZmI3Yjc3MjdhNzMxYWM2MDlkODM0YmZkNDIyZjUxNTVmMmQ3YmEwYSBweTNrCis3MTExNyA1MTc0Y2NmYjAxYjgyMTM5NTI5NDg3YjA2YTA2ODQ5MDBkYzE5YzZlIHJlbGVhc2UzMC1tYWludAorNzExMTggNDkyNTE5NmEyZmQ4YmQ1MjJjMGQwOTViNDExZTU3ZTAzOTA2NWM0ZiBweTNrCis3MTExOSBmMTIxYmQ5NTZhZTA1MTA5ZjM1ZjdiZTMzYTM4ZmMyOTY2NmY2NWY5IGxlZ2FjeS10cnVuaworNzExMjAgOTA0MTllMWI0NjU2YjU4ZmJkNjljZDI0N2Y5NTgwNTdmZTBjY2EwNSByZWxlYXNlMzAtbWFpbnQKKzcxMTIxIDhiNTNiOTY5YjYyODFkODAxN2M0MDhkM2M2Mzk2MGVhYjE2ZDYwODIgcmVsZWFzZTI2LW1haW50Cis3MTEyMiA1NDdhMjM4YTJhYzQ5MjU4MWQzOTU3MDM2ZjMyM2RmZjk3OTkwYzI2IHB5M2sKKzcxMTIzIDE0NmE4ZmRkYmJhMjc3ODc3OTQwZjVhMzkzZDE4Njc2NmRkYWJjNDggbGVnYWN5LXRydW5rCis3MTEyNCBiMzg3Y2E3ZDBmZTYyY2ZlZGJhNTQ4YzM0Mzk1MThiMGVmNTc5YjIxIHJlbGVhc2UyNi1tYWludAorNzExMjUgYTFiZWIxNmNmMjM2OTRkOGUyZDBmNGMzZDBkZWY0OGNmN2YwMTI3YiBweTNrCis3MTEyNiBiYzA4NGE5NzMxOGI5MzM0MzcxZjNmY2M4ODg2OTU4ZTVhZTllMDZmIGxlZ2FjeS10cnVuaworNzExMjcgNWY2NmRlYWQxMTc1YTA4ZDg0YmNkY2M3NmFjNGMxM2Y3ZTlkMjU2MiBsZWdhY3ktdHJ1bmsKKzcxMTI4IGM0Y2FjYmM5YjNmZDI0NDIzZmU5YzY2OTk3M2I0YzIxOGU3NTljNDkgcHkzaworNzExMjkgYTgwZTJlYTM4OWUzMGIzZjA3NzMzMmIyYmM0ZDA3YmNkMWQ0ZTAxOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTMwIDU0NDdlMWY3ZGJmZjRjYjY4NjU5ZDBmOGUyOWYyMGE0MzRlNjc4OTEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTEzMSAyNDc0ZmE5YzM4NTU5MzIxNjJjYWYzMmY0M2UzZGYxZGMxNDFjMGUzIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExMzIgN2Q4N2U3YzA2YjU5ZDA0NDA5YWNhYTIwODdhZjllNDAyMWRhZGYwMSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTMzIDQ4YTAyZDVmNWQ0MjhkMmRiOWRiZTA4NWNmMWRhMTJmM2Y0NTE5NmQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTEzNCAyNGYxYTk4OTJkNDljYmU5NTkxN2U3NWMxNTQ5YTE3NTM1OTJlNzU4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExMzUgNDIyMjQ4ZTZiNzNiOTBkM2Y3NWRiNjYzODRkMjlmMjllNzZiZTExYiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTM2IDgxNzViYzAzMTM0ZTMyYjhhYjAzZGY4NDc0NWY1ODlhNGVkMmFjNTEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTEzNyA2NjFiZDU1ODM2MzIxMGMxZGYzOGVkMGIwMzMxYWNhZmQ5MWU4ZGJkIHB5M2sKKzcxMTM4IGUyNTQyYTdkNGFjZmNmNzZmZDZkNWE5NDY0ZThkY2EwMzk0NTk2YmUgcHkzaworNzExMzkgYzllNDhlMDA4YmI1MzZhNDZhN2Y5NjQ2MTYwMGZmMjUwMTMyMjYyYyBweTNrCis3MTE0MCA2ODMwMGRhMTJkZmUwZGM4YmRhMTliMGRkYjA1NjZhZTdjZDlkMjkwIHB5M2sKKzcxMTQxIDk0MTUwMTc1MTk2OTEyZGE3ODE0ZGZhYTA2MTU0NmUwMTk1M2RlY2UgcHkzaworNzExNDIgNjAxOWZiMWRhOWUxMTM1MGI1YjhmNjhiNjVjNmViYzg3NGE5YTEwYyBweTNrCis3MTE0MyBjYThjZWJhNzM3MTQ3ZmNkZjMwYjAyNjU2NzVjOTllZTQzYTE0ZTFiIHB5M2sKKzcxMTQ0IGQ2MzhlY2RlMzU3MjU5NDRiZGU1NzkyMzk3YmI4MjE0ODkxZjY3NzggcHkzaworNzExNDUgNzRjZjIwYTYxYmVjYjY3MjYwYzNhMzlmYTBhZTM3ZWE1ZGMyMTBjNiByZWxlYXNlMjYtbWFpbnQKKzcxMTQ2IDcxNmFjY2Q0YjYwM2U5MjY0ODMzMGM2ZjljNDFlMDM0ZmYyYWU0ZWYgcHkzaworNzExNDcgOTNlOTI0MDljYjQ2OGU5NmQzOWU4OGM1YWJkYjUwMTliZjdhMWIwYiBweTNrCis3MTE0OCBkMzZhZmQwNThkOGJiNmNlNTBkNDI1N2ZjOGVmYjE3Mzk3NjNhYTU2IHB5M2sKKzcxMTQ5IGY2NWYwMTE4MzMxYzI5MTgwNTU3NzEwNjM1MmUzZjUzZDc4MTc2Y2YgbGVnYWN5LXRydW5rCis3MTE1MCBlNzQ1Y2VmOGY0MDc1YmM5MzcyMzc3ZmMxZjFhYzlmZWJiZTJkMjRhIGxlZ2FjeS10cnVuaworNzExNTEgNjFiNTExZDA1ZWU5NDcyMjQ3YzYyMzQ3NTVmOTI5OGYzZjZmMTZhYyBweTNrCis3MTE1MiA2MzQ1MDJiZThkY2NiZGU1NGE0NTdlOGM5MjZlNjZlMzQ0MTg3ZjAzIGxlZ2FjeS10cnVuaworNzExNTMgY2I1OGM5NzM5ODVjOWMyZWQxYjlhNTA0ZGE2MWY5ZjRkMDljYzU1YyByZWxlYXNlMjYtbWFpbnQKKzcxMTU0IDczYTdlNmFiYTdiMjEyZjBlOTEwMzVjZjFkZWIzYjU0ZjM3ZmY5NmQgcHkzaworNzExNTUgMzczNDZkZjJiODg0ZmRlZjM3Nzc0NGZlODU2NDRjMGU3YWNiZTY4MyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTU2IDhjN2M1YTM1OGRiOTVlNDFlZTFmMGJhNjZiYjE1OWIzZWNjOWUzY2UgcHkzaworNzExNTcgMTc3ODQxODVhZDkzNTI1MWZlZjYzZGM2Mjg2ZDA1MjdmNDVhNDA2NyBweTNrCis3MTE1OCBlNjU2OGIzYzJhZTc1YjY3NDQ1NTIxMDhmMjdjNDE0ODAwNTI4MDQ5IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExNTkgMmY1MmEzZDE4NWEzMGQ3ZmY5Y2YyYWFlMWVjNWY0MGIyYjQ3ZmRjNyBsZWdhY3ktdHJ1bmsKKzcxMTYwIDNlZjk3NTZmZmRhY2RhMjE1NGNmNDBlMTU2NjAyOTZkNjI1MTQ5M2IgcmVsZWFzZTI2LW1haW50Cis3MTE2MSBiZDc0YzRlZDAzYTQ2ZWUxMzZmNDVhNGU1OWFlNGI1OTI0M2Y2YTAyIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExNjIgMWRmMzdmMDk3NDdjNGE5Yzc3N2UxMzk5N2JlZDNkMzViN2UxY2ViZiBweTNrCis3MTE2MyA3MTM1NWRkZjM3M2VkOWQ3YzlmMzMyYWYzMzhlODgzZjU0ZTNmNTkwIGxlZ2FjeS10cnVuaworNzExNjQgYThmMTdjZDgyZDg5ZjAyMTI0OTkzNmY4MTY5OTBiMjI0ZmUyZDYyZSByZWxlYXNlMjYtbWFpbnQKKzcxMTY1IGFhODkzMDY3MmFhNGQ4MjNhMjVmZjc4MzI3MTE4Mzg1ODg0MjAxOTYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTE2NiAxZjgwNzllY2QzNzAwYzg2NWFiMjAxZTQ3MjFiM2RiYjJjM2QzMDYxIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExNjcgNzNiMDE2ZWM1YjhmYTc4YWM1ODYxMzkyYmEwM2RiMjE2YWJhYmViYyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTY4IDM0NzZhZDc1OTBiNzgwYzhjNWMxNjE0NDQ3NWMwODE0MzZhODAwYmEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTE2OSBjNTBjMDc5YjA5ZWI2NzE2NjE5MzUyMWQ5OTIwYzQ5MTA4Y2RjZTA1IHB5M2sKKzcxMTcwIDI4ZTMwYTVjNjM5ZDdmMGRjZTYxNjBhMmY3ZGFmYTVjY2U0YTYzOGIgcHkzaworNzExNzEgYWRiZGU1YzNiNWZlNGRmNDBjN2Y5ZmY2M2QxN2YxMTM4M2IzZWY2NiBweTNrCis3MTE3MiA0NThlYmU0ZjVhNTg4ZjY4NjFkMjQyOGZjMmRiOTNkNjgwYWQ4YWY0IHB5M2sKKzcxMTczIDdlZTFjZWZhNmQ2MmI5MjlhMWM1ZTRhYjM2ZGY5OWQ1ZWI5MTNjZDIgcHkzaworNzExNzQgNThhN2M1MDk0NTIzMDk3ZjYyNzA3YzJkZDg3NzcwZWNkZGMwYTkwNCBweTNrCis3MTE3NSBhM2JiZGQ5M2IzODlhNjY1MjQwYzUyYzBmODNjNzRmZDhmMDkzNTlkIGxlZ2FjeS10cnVuaworNzExNzYgZDdjOTc1NWI2MTc3MzMwMDQwYTI2NTEzYjBmZmIzNGI4ODM3YWIxYSBweTNrCis3MTE3NyBjYjQ3ODE1MjQ3MDQ5NmRlYmNiOTUzZGZkNzg4MWY1MzhlNzdjODU4IHB5M2sKKzcxMTc4IDJhYWRjMWFmYzlhMTk0ZDBhMGNmNzExNWQxMGQxMWI3ZDNkYWJjOTcgcHkzaworNzExNzkgNTM0Nzc0MGQ0ZDVkZDRlYjMxOThmZmYyNzYyN2QyNjZmYzMxZWFmOCBsZWdhY3ktdHJ1bmsKKzcxMTgwIGQyZTE1NjI5ZmMyOTdhMDA3MTdmYmY4NGMyNzNiZTIxMWIwOGZmMWIgcHkzaworNzExODEgN2MyYTA0ZTIxOGYyMWI5M2QwYzdkNTc2Y2U2ZTI2ZmU3NWJhNjRiMyByZWxlYXNlMjYtbWFpbnQKKzcxMTgyIDQ2YjZiODQxNWRlZTc2Y2ZhYWMxNTM2YjMzZGI3YjllNWM3ZGE5YjYgcmVsZWFzZTMwLW1haW50Cis3MTE4MyBiMTRlOWVjOWQ5OWY1ZWNjMWI2MWEzMmNjN2JjYzllYjY0NDlkNTQ4IHB5M2sKKzcxMTg0IDlhOTEyYTU3MTY0ZjY1YmI1MTNhYmU5ZTIzOGE1MzQ0NTRlOGVlMDYgcHkzaworNzExODUgNjhhOWU2ZTM4YWZhOGRkOTJhYTUxYmM0YzcwY2VjYzU3MDEwZGQ3ZSBweTNrCis3MTE4NiBjMTdlZjE0YmRmNDFjYWEzZWFkNDZjOTYyOTZiMDA3N2EyNzljNzVkIHB5M2sKKzcxMTg3IDM1NjMwYzNlZGQzM2M4MDkwYjU0NzdhNzljMjg4M2I5OWUyNzNmYTQgcHkzaworNzExODggZmY3OTMzZjQ0YzQxNjJmNTk0NGEwOGRlN2FlNzkyYzUxOWZlYTgzYSBweTNrCis3MTE4OSBhYWNmNTA5NGExYjU4MGZlY2VjZTRhNjE0ZTc0MzVjMDYxY2QzODk3IHB5M2sKKzcxMTkwIDFkNzkzZWUxNWI2ZjZlOGQ4ZDEzOTI0ZTkxYTg3YWUzODUxNWVkZWMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTE5MSA0OWFlZjQxNDFiOTNmMjg3NTNmN2NhYTU1ZThiNGVmODcyOWQ1NTcwIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExOTIgNWJjOGNmM2Q5MGIzNTUzMTI4MzM1N2FiMDYyYWRhYjdmYWIwZGU1YSBweTNrCis3MTE5MyBhMDE0ZGM0N2I1NTJlYjdlMzcyYjc0MWZlOGRlYmVlZDU1MWE1YzliIHB5M2sKKzcxMTk0IGVlNDMwZTUwNzVkYjJhZGY4MTI0ZTZiOTQ5MTZhODljYTQxZDMxNzEgcHkzaworNzExOTUgOWVmN2JmNGQ4NTkwODYzOTkyOGJiMTVmODg3YTRiMTIzOGFhMzk3MSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTk2IDZkZTg2MzZjZDgxNzMxZTk0MzUwOTM4ZGY2YTY2OWMwMTc0MDNjZjggcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTE5NyBiNGVmNTAyZmNjYTAyODdlY2M3OTQ1ZDIyOTU0Y2NkYzEyMjY2MDZmIHB5M2sKKzcxMTk5IGJkYzU3NDc4MjkxOWQ3OGMxMTUyMGQ0Mzc3NDQyNTYxYjAzYjU3ODMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIwMCBlMDJiZGQ2MDg1ZmZiZWI1YjZkMjk5MDZjZmE0NjY3ODZiOTI2YmNmIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMDEgNzYxMDQ4YTBhOGQ5OWI5NjcwZGViZDU4NjNiNGNmZjNlMmQxN2QzNiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjAyIDMyNzI2M2ZkMmU2NjYzYTExY2Y2YjM0ZWU0NmMxYWFiYzdkNGY0YjYgcHkzaworNzEyMDMgMTliMGRiMTM1NGY3MGU3NmI5YTU3YzkwYmMwNmU3NzE5YWU0NzA1MCBsZWdhY3ktdHJ1bmsKKzcxMjA0IGQ5MDAyNDYyMDU2ODdlOTFkMTQxNTMxN2JjZDlkMmQyM2QwNDYwNDggcmVsZWFzZTI2LW1haW50Cis3MTIwNSBmZGNmY2E3MTViZjNkYWQwZGU4YmI0NjQ0NjM5OTA5NDU5ZjcyOGZiIHB5M2sKKzcxMjA2IGU2ZTVhMGU0MzU0MzQ2YjUzZDk3YjdmYTg4Mzg1NzQyOGQ1YWU1NmYgbGVnYWN5LXRydW5rCis3MTIwNyAwZmUzOGJiZDk3M2NkZjFiM2NhNWIzZDBkMzViNzMzNjMyOWY5MDQ0IHB5M2sKKzcxMjA4IGRlNWYxODYzOWE2Y2UxZmMzOWYzNjZiMGZiNzU2NTU2N2JhYjQ3MDcgbGVnYWN5LXRydW5rCis3MTIwOSA3OGYzMTBiOTYxYzAyZmNiYzcyM2IwZGIwNjYzOGYxZDUyYTJmNTllIHB5M2sKKzcxMjEwIDkzODRiNDNkNDI2ZmVlNWZhNGQ1NWRlNTZlNTI1ZDM4ZmQ4YTk0NzAgbGVnYWN5LXRydW5rCis3MTIxMSBhZGRkNzUzYmE0ZDk2YjczNjZiZDM4YmE1OTc1ZGZiYjkzN2ZkYmZhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMTIgMThmMWM1NmNhNmZkYmYwZDMwZThhNGI0OGFjMzQ0ZDljYzIwM2E1MSBsZWdhY3ktdHJ1bmsKKzcxMjEzIDBmNzcwOGIwMTI4YzA3YWVhNDQ1NTc3OTQzZDIzYzM3YTM1MjVkZmQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIxNCAxZWYwMmVmNDhjNDI0YmZjODlmMzU0Y2M4Zjg5NTkyMjkyZmUwMGE1IGxlZ2FjeS10cnVuaworNzEyMTUgNWU4ZGU2YzNlMDAyNzUyNjIzMjY2NWQzYjRiMTBkMWUyZDQxMTVkNCBsZWdhY3ktdHJ1bmsKKzcxMjE2IGU0MjFhOTJiMjUyMDc4ZGE3ZmE2MGFmNTBkNjk4M2NmYWFkZTkxODMgbGVnYWN5LXRydW5rCis3MTIxNyAwMDA2YjJhZGM3ZTQwNzgzOWI4NjZkY2Q4MmNhZmY4NjEzNDg3ZTk1IGxlZ2FjeS10cnVuaworNzEyMTggNTg3YTJhZWQzOWYyZWQzZGE0MTA0NmJkZjMzODY1YjdkYjczNmU5MiByZWxlYXNlMjYtbWFpbnQKKzcxMjE5IGViODQ1MzA1NzdhNTNhMjk5Y2VlNmE3NGE1MDljNjMyNmVjZmZhY2QgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIyMCBmNWNiM2IzM2I3OTQxYTcwNGEyOWYxZmM2MjU1MzE3ZjFmMTUyMzIyIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMjEgZjU1MGUyNDYzMDYyOTkzYWU5Y2JhYmQ1ZThmNTZjNTZjYzI4M2QyYiBsZWdhY3ktdHJ1bmsKKzcxMjIyIDJiYmI2MGMwMGViNzI1NzgyMjQwYzM4MGRkMmY2OTdjMTViMzMyMWEgbGVnYWN5LXRydW5rCis3MTIyMyAwMWY0ZTg4MDNlY2RlMDA2MTQwZjQ3NjgwNzY3NDZkMmRhODFhMDQzIHB5M2sKKzcxMjI0IDk4ZjQyMzkyODM1YjY5YWVkNWZiZjgwM2Y3YjlmMzUzMjgzMjI5MDIgcHkzaworNzEyMjUgYTdjNzRlMDlkZTNkZjBhZTAwMTZjNWQyZmNiN2MyNjE2ZTA3MGQwNyBsZWdhY3ktdHJ1bmsKKzcxMjI2IDE1MmUwOGRmYzFhZjVlNTdhNGUzMjJjNDhhNDk0OGM0ZTcwNTE5ODkgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIyNyA1OGQxNzE3ODBmZDg5NTQ1MzljYjU2MWY0MjBjYjE5MWE3ODVjZTlhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMjggNWNiZGI1MTU3ZmE3NmM1MDA3YjRmNmU3MzVhYzdjZjZhNDA2ZTA2YyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjI5IGJmZmE3NzY5NjkyNmRjZjU5MWMxZmUzNzJlMDA5ZmJmMjg5MWRiYjIgbGVnYWN5LXRydW5rCis3MTIzMCBlYjMyYTE1MzdkZDdmOGI5ZWZkMzdkNjNkZWNlMzQyZmY5NDEyOTI2IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMzEgZjFjZWMzNzY5OGZlOGQwNDE5NDU1YWIxZDQxMDBjMTAwNDE4ODUyOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjMyIDY2MzU0YmRkZGNmNzZkZDRmMzE4OGIyNGUxMDQwNGY4ZTcyYjY1MDYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIzMyAxY2JlYWJmODg4YTE0NjQyYzFjMTBkNjgyOGEzMWM3OTk4Mzc2NWQ2IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMzQgZWI5NDUxN2RmYmQ2ZDdhZmIwZWJiOTgyYmZjMTM0NDhhZDE3ZDA4YyBsZWdhY3ktdHJ1bmsKKzcxMjM1IDg1YzVjZTZkN2Y5YzdjYjA5YjYyMTRmNDA0OGQ5NjczNmFmZjEyNzQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIzNiBlZDc4MzNkNDgyYzgxZjJlNzdmZjhjNGU5ZDVkOTJlYmIwMjQyZDk5IHJlbGVhc2UzMC1tYWludAorNzEyMzcgOTc2YjMwNWFhZGQyOWUwZTJmZjkwMmY5ZTM3ZWQ1NDgwNDUxN2M0YSBsZWdhY3ktdHJ1bmsKKzcxMjM4IDZlYWY5NzcyMWQzZDhhZDFmMTEwY2Y5YzVjMWVkMTE4MDJiODdmNWIgbGVnYWN5LXRydW5rCis3MTIzOSAzN2Q2YWY2Zjg1YWFjNGRkOGQ0NDdkOWVlMWUxNDJlODdhMGVkOTNmIHB5M2sKKzcxMjQwIDhjNjFlN2NhYTA2Y2Y3ODBhNDU4NzUyNjc4Mjk5ZWQzN2ZkYTUzYmEgbGVnYWN5LXRydW5rCis3MTI0MSBkYTFlNTQ4M2FjYTAxMzZhNWI1ZDhkZGViOTA5MTdhZTRmOGY5NDFlIGxlZ2FjeS10cnVuaworNzEyNDIgM2JiYzY4NDQ5Zjk0ZTdlYmMyYTExYmMwOGY0NmEzNDAxMjcwMWE4YyBweTNrCis3MTI0MyAxM2VmMTE5MGVkYTlkNjRlMTViZGU4MWIyOTdmMzc1MTI3OWNiN2Q3IGxlZ2FjeS10cnVuaworNzEyNDQgMjRlZDVkODUxNzIwY2VlMGUwMmFkNWEyYWQ3NjdhMzE0ZWNhN2JhMSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjQ1IDhjZTllZGM4ODk2OWI4ZDhlMWZkMzE4MzY3NzU1NDczNTFiOWI3ZDIgcmVsZWFzZTMwLW1haW50Cis3MTI0NiBiOTA4N2I2NDVjZWZiYzQzYmMzOWM3YzIwYTAzNzg2NmFjZmI1YWEwIHJlbGVhc2UzMC1tYWludAorNzEyNDcgNzYxMmFhODliZjA2MGVjZDJjYjVjN2NjNjRhYTdkMjdjOGJmNjZhMCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjQ4IGE3ZTViOWQ5MGIxMjVmY2U2ZWQ3ZDBjMGIzYjNkY2VkNGM3ZTA4YzEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTI0OSA4ZDIyODczZTliMjZkMWQ1OWNmMGQzNzU4MWZiNWIxNWI2ODIwZWUxIGxlZ2FjeS10cnVuaworNzEyNTAgNDNjODg5ZmVkYTQwYjExNzYyMzk5NzcxMWQ2M2ExZjJmZWNhOGJjNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjUxIGJkMTMzNmEzYTY4NjNhZTI3NTFjYTI2NDc3Y2EzYWRmNjNkZDI4MjggbGVnYWN5LXRydW5rCis3MTI1MyBiMmM2OGRmOTQ0NjM5ZGQ0MzRhZDNiMzhjMzQ0Y2FiODExOGM5MjU2IGxlZ2FjeS10cnVuaworNzEyNTQgZTc0MDgzMzAxYTM2ZTA4NzU1YzQ5YWVjOGFmMTZmYmUwNTViODdlNSBweTNrCis3MTI1NSBhMTZhMDQ1Njk3OGY3ZWY3ZTk4YjMyY2E3NjcyZjY5N2UyOGM1YTFiIGxlZ2FjeS10cnVuaworNzEyNTYgY2ZkNzEzNjk0MWEwOTk5MjNmODkwYzJiMTg1ZmVmM2RhOTg4MDdkNSByZWxlYXNlMjYtbWFpbnQKKzcxMjU3IGVjYjIxMDNiYTAyNzlmZjU3Y2Y0MmFkMzQyNDdmMjc2MTgyMDVlOTMgcmVsZWFzZTMwLW1haW50Cis3MTI1OSA3YjRlZjBiODdkZGNmZjkzMTM1Y2MxMDM0NDE0NzUwOThkNTVlMTAwIHB5M2sKKzcxMjYxIDc5MmJiODg1MDI5ZmJmYjI4NWZjOWQzOTY1OWYzZDJlOWJhODk3MjkgcHkzaworNzEyNjIgNGQ5NzYxMWQxY2NhNDhhMTRmZmExYjY5Mzg5NTY2NDMyYzgzOWY5ZSBweTNrCis3MTI2MyA2NzJiMGMwNDFiYTYzODRhZDg0YjNiYzNjNjY5YmQzODlhMmRlNGUyIGxlZ2FjeS10cnVuaworNzEyNjQgYzllY2Q0NWE1ZWEyZjEwM2EzNGU0OGNkZWEwOTE4YzFlOWJhYjg4NyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjY1IDE0ZTAwZjBmNzhiNzRjZjQxMDRmNzVjOWZhMGMyMDFmZjc5NWQ2YjEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTI2NiAyZDAwZmYzZDJmNWEzYzVjY2E4MzU4ZmQ1MWJiM2I1MDFlZmU4ZmRkIGxlZ2FjeS10cnVuaworNzEyNjcgYTE0ZGViOTQ4MGY0ZDMyMGRhZDJjNjIzM2FjZmQ0NDc4NGRlYzY0ZSBweTNrCis3MTI2OCBmOGM1NzZmYWE5YWQxM2U5YWE2NjA2M2I4YjhkZjkwY2U1Yjg1MzljIGxlZ2FjeS10cnVuaworNzEyNjkgNTRkNWYyOTg2YWY0MmNkZDc4YmI3MjZhZjBmYzA3OTc4MTc2OWFkZiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjcwIGZiMmVhOGJiM2EzM2RjNzZmZDg1NDE0MmRmODgxNzQwNmI0NjNlNDIgcmVsZWFzZTI2LW1haW50Cis3MTI3MSBiMDQyOWM3ZmE3MWFhZWQ1Y2M5MzI2OTZlMDkzZDVhNTI0NmMxMjgxIGxlZ2FjeS10cnVuaworNzEyNzIgNGFjYmJiM2U2NWUyYjA1ODIxZDQzNjg5ZWUzYWY1YmE1NzMwNDM0MSByZWxlYXNlMjYtbWFpbnQKKzcxMjczIDI1MWJmZDJkOTk2YTJkZmY4Y2MxMzI2NGFhODViZmFlNThiMTg0NjIgcmVsZWFzZTI2LW1haW50Cis3MTI3NCBkMzg4N2RmZTY2MWY5MzYyYzNlMmNmYzEzNDMyNDIyZTYwZTE0NTk3IHB5M2sKKzcxMjc1IDM4ODlkOTUyODYwMWUzYmUxOGE2MmI4NDg2MzZhNjBiMmQ0NTBjNTggcmVsZWFzZTI2LW1haW50Cis3MTI3NiA5NjlhZDEwYThhNzI1NzBiODFjNTg0YTVhNGExM2JiYzRhOTBlMjJlIHJlbGVhc2UyNi1tYWludAorNzEyNzcgZDA4ODQzNmFjMzZiMTBhOWYzM2NlZTkxOGY4MThkMTdkMGNjNDliMSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjc4IDgyMzdkZTYzMmQ2ZjY4MTVhMzY4ODJmOTY0NTNlNGE5YmUyZDgxYTAgcmVsZWFzZTI2LW1haW50Cis3MTI3OSA4YjUzMTUwMTM0ZjVkYjE0ZDIyM2RlMGEyM2I5ZmRmMDVhNzU2NTJmIHJlbGVhc2UyNi1tYWludAorNzEyODAgOWE0YjE5MzMwYWE5MzFhYmQzNTg2MWZjZmVlNjI0ZmY0ZTBjNDQxMiBsZWdhY3ktdHJ1bmsKKzcxMjgxIDdlNzgxM2FkYTJkMTgxYzQ3MjQ5Yjc5YTkzZmRlZjMzZjhmYTBkMGIgcmVsZWFzZTI2LW1haW50Cis3MTI4MiBmM2IyNmE3MjllODJmOGZmZmIxNzRkNDkzYzY5YzZlOTlhYjg5MDU4IHJlbGVhc2UyNi1tYWludAorNzEyODMgZjY3YTRmMWYyMzBkNzQwZmRlY2JhNTNiMzU5NGY4ZmRmOTMyNDA5ZiByZWxlYXNlMjYtbWFpbnQKKzcxMjg0IDkzNGQ5YzNjYmE0MTg0Yjc0MDI2OTM4ZTY3ZjRlNzg5N2M2NjI3YmMgcHkzaworNzEyODUgYjY5MzQ5ZDRiOWU4ODMxNmI3NWRjODI4NjQ3NTY0ZDQ5ZjQ2YjcwNSByZWxlYXNlMzAtbWFpbnQKKzcxMjg2IGQ2ZGU2ODQ0ZmQ3MTQxYjM2YzY0NmQwNjBiODk3NzU1NjY4Y2YyZjcgbGVnYWN5LXRydW5rCis3MTI4NyAyNGZhN2RkZDRkY2NlNDhiMWRlZGYxMGQ2N2VhZDMwYzVkOWMzZmNlIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyODggMWQ4Y2I3NmU3MTliN2UwNTA4NDI5MWIyYzhkMmNjMjE1YzkxYmU0OSByZWxlYXNlMjYtbWFpbnQKKzcxMjg5IGIzNmIwMGFlMjlmZmJmNmU1NTNiYzY0NDI3MGUzYTcyZjZjODVjZWEgcHkzaworNzEyOTAgYjMzYmRkMjQxNDAyMzU4OWM2ZWZjYWRhNWVlMjI1NDA1M2MxZjUxYiByZWxlYXNlMjYtbWFpbnQKKzcxMjkxIDQzM2RlM2Q1OTYwNzhkMWFlNTVhZDI1OTc0ZjA4N2FiMDgyYjVhOTAgbGVnYWN5LXRydW5rCis3MTI5MiAwYzZiMTZhMmY5MWI3NWVmMjE3MGEzNmJkNTlmMmE3Zjg2MjVlNmRlIHJlbGVhc2UyNi1tYWludAorNzEyOTMgNTQ4Y2EzNDM1N2NkYWU1YzdmMTk1NTJiMWE2Y2YyYmM3YzlhZGRkNyBweTNrCis3MTI5NCBkYTBjMWY3NGNhMjAwYmM4YTFmYmFmMDFhMmVkNGIyNjBkYmMyOTk4IHJlbGVhc2UzMC1tYWludAorNzEyOTUgNGI4ODFiNGE5MGU5NWVlZDdmZDQ1MjZjOTlhZmIxZmIyMTUxMGU5MyBsZWdhY3ktdHJ1bmsKKzcxMjk2IDM2NGJkMDAyYjdmODY3OWZlYzEzYmI1MWYxMjgzMDJkYzBiMGIxZjUgcmVsZWFzZTI2LW1haW50Cis3MTI5NyA1YTdhMzNjOTRkMDAxYzhiZGM3Yzg4NjZmYmQyYTUzNTk2NDQ2NzJmIHB5M2sKKzcxMjk4IGVjMmU0YjVhMGU5MGRjNGQ2MGRjMDI0MWYwOTEyZWVkMjMxMTg0NTMgcmVsZWFzZTMwLW1haW50Cis3MTI5OSBkMzZhNGY5MjAzNzgzZmE5OWFkZjhlYzM5NzNhNWI2ZDBiYWE0YmIyIGxlZ2FjeS10cnVuaworNzEzMDAgNDE0YTMxMTgxZTlkYzM4MDFjYjczZmE3MGUxNzc2ZGRjMTAwMmYxMyBsZWdhY3ktdHJ1bmsKKzcxMzAxIDczNjAwNTE1OTk5YmNhMGYxZGUwNDk2NDM5MjUwNmQ2NTlhNTNiYTcgcmVsZWFzZTI2LW1haW50Cis3MTMwMiBlMzYzOTU4ZmNkNzBhNDNhZDA3YjM5ZGY5OTk1NTJkMGZhMWNlZmMxIGxlZ2FjeS10cnVuaworNzEzMDMgYzZjNDM5ODI5M2JkNjgyYjM1NWYxMDUwYmIxNmJiM2UxOGM4YjQwZiBsZWdhY3ktdHJ1bmsKKzcxMzA0IDk4NjIwMWFjYTY4YjQzNDRiZmJhMzlkZjhjZjk0MTQ3NDQ4ZmUzZTcgcmVsZWFzZTI2LW1haW50Cis3MTMwNSAyMDc5ZWRkNTI4NTg3NDJjYWQ5MWIxOTMxOWNjZjIxZDZiODc3NDk1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMDYgZWZjN2UxM2E3NTQyMzI1YmIzZjczMDlmYmViYjI0ZWM1NDg3ZDc1NyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzA3IGI0ODgxZjhlYzcwNmY4MTIxM2JmYmNlYzFkOGZkNzFiM2IwNDQwNWMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMwOCA4NTkyNjc3ZWIzNTJjZjg1YzYwNTViOWRiZmQ5MDU3ZTdlYjY3ZmIwIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMDkgMDY2ZmEwYmE4MjkwMGZiYzI0OTg3MmYyYWU3NGExOWRkYjk3ZmZkNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzEwIDdjMGZmMGRlNjI5NTZmMTc3N2VjNzMxNjY1NjI4ZDQzNjE4NDI3ZjEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMxMSA5OTY4N2Q1MWJlMGExNDI3MWZhNjJhOWNmNzJkZDc1ZjI5MTFmZGI4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMTIgZTAxMjk4NmJlNGY0ZTUyZjlhYzE2OGRhZmVmNWQ4NDU0OWFlZGE0MSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzEzIDUyNmRiMjhmMTAwZDIxMjViYjgzNTU1MzRlNThiMjZhYmVhNzMyNWYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMxNCAzMGI1MGNiZTVjNWU1ZmM4ZjllOWYwZWQwYTJhMTEwNmNjMWQwMjYzIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMTUgZjdmNzAxMzllZjU3MGRmYjNjNjQ5N2I2MTM2YTFmOWViOTVkOWIwNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzE2IGNlZTFhODZjNjljMTVlNjQ5YzFkNzU1OWI5MzQwMjU5ZjY0MmY5YmMgcHkzaworNzEzMTcgMDI2MzU0NjAyNjFlOWFmMWE5MzdjOWY2MGNmMGQ1YmFlOGJiMWViYSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzE4IDk4NjQ1MmI1MjZhMWRmNmNlMGE4MzNmNDAzMTVjYjAxZTBkNmMzMDMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMxOSAwNmZhODdmM2VjMzYyNzFmZDA0NzQwZjMxODlhMDA5ZWZkYTljODVhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMjAgNTU2MGEwNjhjMDU3OTVmYTA1MDA1MjE3YmZiMzg5NWZlNzFhOGZjMyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzIxIGU0ZWViMGRhZjYyNTQ2Y2ZkMzc2NzM3N2ViNjJhYzcxZDBlZWYzMDYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMyMiA0NWZkMjI3MGFlMWI4YzFkMDg5NDk5YTJhZDkyMTFjNTY3ZjI4ODFjIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMjMgYzVlMGM2ZjY1NmU2MzY4NWUxYTk4NjBjNmJlZTFlNmMwOTI2MzkyZiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzI0IDA3NmM3MjIxMTU2MTExOTY1OTY0MGEwMjY3ZTY2MTlkZTNmNmVjMDEgcmVsZWFzZTMwLW1haW50Cis3MTMyNSBiOTg0OWVmYjI3NTQ1YzY4M2Q0MjRkYmQ4NjQ2ZTA0MmZlYjhjYjg3IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMjYgOGQ2OTc2M2EyMzE3YjU0MDYxOGZjZmIwYWEwY2I3Y2I1ZmRlZjQ2OCBweTNrCis3MTMyNyBkMzQ3MGJjNmQxOTE4ZGE5Nzg1NzZmOWY1ZDhlZTE4N2Q0NzllOTUyIHJlbGVhc2UzMC1tYWludAorNzEzMjggNGE2N2Q2OTE0NzI1ODUxNTA3MzQ1ODBiOWI4NjVlNWQwYTcxN2U3YyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzI5IGQ4MTk4NTE4MmEzNmQ2MDg2MGFkNGVlNjQzMmQ0Yzc2M2I0MDQ4MzAgbGVnYWN5LXRydW5rCis3MTMzMCA5MjBiMDc5MDk2MDAzZDRmNzRkNmU3MzFlZDhlOWQzZTdhZTkxZmFmIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMzEgNWIwMWZlNTEzZjkyODY0ZmY1YmQ2OTE3ZThmMDgwNjM4ODAyN2Y0ZSByZWxlYXNlMjYtbWFpbnQKKzcxMzMyIDU1NDllOGZmMjhkMmNlYzdhM2IyN2JlMTY1NTIzYWNkM2U3MWNkMDQgcHkzaworNzEzMzMgZjY2NDA2ZjI2MDQ0MWYzMGY4NmFjNmEzZjJkMjRkYzJmMDBkYmFkZiBweTNrCis3MTMzNCBhMGVkZDkxZTljNmYzMTI2MmJiM2ZhMTI0MjRhMDU4ODYzNGQxODc1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMzUgZjgyNGRjNjAxMDZmMTA4ZjJjNjU5YjJkMGVkZGNhMDg1ZWRjOTA5NSBsZWdhY3ktdHJ1bmsKKzcxMzM2IDYwOTNmZGM1ZWU5NjJkZTBjZWU5ZmJiMjY2YjJkODY1ZjliYWI4YTkgcHkzaworNzEzMzcgN2EzOWY3ZTQyYmQ5N2NmZjI2YmM5MTMzNTM1OWE1NDcwYWU0ZTcyMCBweTNrCis3MTMzOSBmMzkxZGY5M2M5YWJkNDlmN2QwMjBkZDUyZDQxNzM1Y2I1MjI0NWVkIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzNDEgMzc0NGVmYTQ1NjY4MWVhODQ3ZDgzYzNlNzU2NjVjODdkYzk5OWM1MyBweTNrCis3MTM0MiA5NzY4ZGE4NmNmOGUzMmFmNjE3OTVmMmI3NDgyM2Q1MGYxOTdhYTU2IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzNDMgMjhiYWU1Y2E1MjE4ZDA0YjJhYzQ4NTJmOGIzODY2NGMzMzEwODNjMCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzQ1IDY5MTE0YTM1NmNmMGRhNzJlYmY0M2Q0NTVjMTU4MWQyNDliOGI2ZmMgcmVsZWFzZTI2LW1haW50Cis3MTM0NiA4ZmJiOTkzNmQ0ZGEyYjE3ODI5Mzk3ODAwODY2YjdkZjllYWNmYmY5IHJlbGVhc2UyNi1tYWludAorNzEzNDcgNmZjZDEwZWE5OThhOTI2ZDUzN2MwNjQ1NjBlYjBkNDRmNmU3OTM5NyBweTNrCis3MTM0OCBkYTczYzQzZTY5MWVkZjg3NWQxYTcyMjNmOTFhYWQ3ZTgxY2I0ZTI5IHB5M2sKKzcxMzQ5IDcxNmY1OTU4YjVmMGRhMGE2MWZkMjcxODAwMzJmZmNlZWI2OTg1ODAgcHkzaworNzEzNTAgNmY0YTA4OGQzNTlkNmNlNmY5Nzk4OWY4NDM2MDcxOTYwMWMwZWM3YyBweTNrCis3MTM1MSBjMzdiYjFiN2E0N2E4NDNlMjBkODBmY2U2ZTg2NzdhMzRhZGVlMzA4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzNTIgNDliMjQ5MjJlYjJkZGY1N2Y5MzMyMWZhNTcxNDQ5ODBhMzI1ZGE3MiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzUzIDY3NGIyMDAwMjI0Y2M4OWU3Y2JjMWFlNGQxMGVkNTg5MjYzMmIzMjkgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTM1NCAzMTU4MjQ4NWZiZmNkMTUzNDcxZjBkODkyZDlmZmFkMmMzNTUwMzczIHB5M2sKKzcxMzU1IDE1MzkxN2MwMDFiZWZhZmQyNmFkMzdlYzI1MTE5YTcwN2UxMTk4YjAgcHkzaworNzEzNTYgZjkyNTMzOTI1ZWE2NjI3MDVhYmEwYjA3YmQ2NTMyYzA4MTdmNDMwYSBweTNrCis3MTM1NyA5NDgzMjQ1NWUzN2Q1OTBjY2FkNzg0MDE5ZGJlODFhNmMyNDQ0YjM4IHB5M2sKKzcxMzU4IDc1ZGVmN2VkOWQ1ZmM2M2Y5MDVhYmIyZGQ4MDM5YTdhYmM0YjU3ODcgcmVsZWFzZTI2LW1haW50Cis3MTM1OSBjMzljMWMyOTc4Zjk0ZjViNGY4NDJjOTZhYTQ1MzhlMTE0MjM1OWVlIHJlbGVhc2UzMC1tYWludAorNzEzNjAgMmIwODMxNDZhY2Y1YzI2Njg4NDZkNTZmN2E0YWJmZjMyZjAzOWIxNyByZWxlYXNlMzAtbWFpbnQKKzcxMzYxIGI1MGYxMWI4Y2FkN2Y0MWVhZWNkZTEzNDkxNDRhMDRkNDI0ODk0ODkgbGVnYWN5LXRydW5rCis3MTM2MiA5MGQzMjM4MWEzNDBmYmU0MjVjZTBkNzE5YmZjNGQyOTIyZWI5YmU0IHJlbGVhc2UyNi1tYWludAorNzEzNjMgMDFmMWFlODM2MzFhZTgyYmQ4NTk4YTExYzE3ZTNmOWIzZjU2YzM4YSByZWxlYXNlMjYtbWFpbnQKKzcxMzY0IDI3NWMwYmE3NDg1ODllOGE2N2YxZDZhMWEyYjI3NWEzNmJhMzNlM2YgcmVsZWFzZTI2LW1haW50Cis3MTM2NSA1ZThjM2U3NDUxZmZiNzljZTExOGZjMjk3ZDg2ZWMzZGMwMTBjZjk5IGxlZ2FjeS10cnVuaworNzEzNjYgOWFiNTI0MTcwZjY4MmYzMzJiYTBiYmE4MTU2NWE4MmExZTgwMWFkOCByZWxlYXNlMjYtbWFpbnQKKzcxMzY3IGZjZTNhZDRiMjNkNjBjMzVlZmZkNWJhYmU5ZmMyZDRhN2ZjZTc1OTAgbGVnYWN5LXRydW5rCis3MTM2OCA1Y2UyM2NmYjk4YzdmNWZiZGY2MjA3MDc2ZWRlNmIxYzEzZGU2N2QxIHB5M2sKKzcxMzY5IGM4NDIwMTE4OTM4NzNlYWYwYjg3Nzc4MmQ0NDg1MTkxZjc0MjUxNTYgcmVsZWFzZTMwLW1haW50Cis3MTM3MCBlMjMyNTJhOGZmNTkyNmZjZmMxZGVmODc5NDlkY2RlNmVhNDE1OGU0IGxlZ2FjeS10cnVuaworNzEzNzEgNWE0OTQ2MjNjZjNhODE0YjllMmUwYmI3NjY4MzViNGFlYjNkODQyNSByZWxlYXNlMjYtbWFpbnQKKzcxMzcyIDZjNDZkNmRiMmZkNmE5ZmIxYjU3ODBkMzQ3MzI3Y2U0MWZjMTdjYmEgcHkzaworNzEzNzMgZDE2Y2FkYTk2MzcwMTkwNzM4MDUxZmM1NzMyYmY5M2NhYTIxYmJlZiByZWxlYXNlMjYtbWFpbnQKKzcxMzc0IGJhM2E5ZWJjZTgxZTdjMmNhYWYyYWJmZTYxMWI3Yzk5ZjBkNDVjMzIgcHkzaworNzEzNzUgMzc5OTcwMzA5NDc1NTY0ZjlhNmQ4OTMxYWVlN2Y5MGU2YjUxNTcwNSByZWxlYXNlMzAtbWFpbnQKKzcxMzc2IGJjNzliZWY1NWFhODA2ZTgzMTU0ZDY0OWEyMmRmODFkMDBiMGU5ODAgcHkzaworNzEzNzcgNDFlNzIwMmU5ZjkzMDQ2ZGZkNTNmYjNjYmRhNzU3ZGE2YmQ2OTdkYyBsZWdhY3ktdHJ1bmsKKzcxMzc4IDI0OGFkZmNiYjcxNTQ0YzZhNTczNTBmZTc4YTZjYzFmZWE1N2QwYzYgcHkzaworNzEzNzkgZGIxOGU3OGI5MmQ4NmEwMzFmMGJiMGNmMTkwYjg4Zjk4NmFjODEyZSBweTNrCis3MTM4MCAwYTFjZGExZTdjMWM3OTY4NzMxY2NmYmQyMTg5ZjAzZDFlZjI4OGUyIGxlZ2FjeS10cnVuaworNzEzODEgZDA0NDkwYmVlMmVkNDhkMmI5ZGI2Nzk5Yzg0MjU4ZDAyYzAxZTFmYSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzgyIDA5MTcwNmUxNDA1NjA3YTc2MzNjODcxNzBmODgwMTllOTRmZTRmNTcgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTM4MyBhZTVmNTE1NmI4ODI2NmFkZTRhYTgzODg0ZDQ5MDRiZDJmYzBkNTE2IHB5M2sKKzcxMzg0IGY3MTA1NTUwNTNiZjJmOGY2MmUwMzYwNWNiZTA4MjBhYTgxMTlmYzYgcHkzaworNzEzODUgMTA5OTQxMDE1NzAzMzA3NGI3ZWJhYjllNWE4NDAwMjNhNzc3NzlkNyBsZWdhY3ktdHJ1bmsKKzcxMzg2IDI1MWVmOTlkZmI0YzQwMWE4NGU4OTBjOTkwY2QyMDFiZmRjM2E0ODkgcHkzaworNzEzODcgNzRkOWY3NWQ5ZGMxZmNmZDBmNDRmZGRkYzc1ODQ2MDc0YjZhYTJkYSBweTNrCis3MTM4OCAxOWY3ZDNhYmU3Y2RlMjdmZmExNDYyYjk4NTIyOTc3YWIyNDA4ODRkIHB5M2sKKzcxMzg5IGRmMGVkOWViNzljMzY1NDVmMWNmMTMyYjEyYzAxZGQyNTZiY2U0NzUgbGVnYWN5LXRydW5rCis3MTM5MCBmZDE4MGJmNDcyMjdmZDZhNmUzNDViNGZhYWNiYTQ1ZTEyZDdjMjRlIHB5M2sKKzcxMzkxIGE5OGM1MDkwODRlYjM1NjJjYzY2Y2ZiZDYzZmU4MjVhZWE0ODVhN2MgcHkzaworNzEzOTIgN2I4OTYyZjY1OTE4YjNlNDk1OTdjMjM3NmI0Y2JmMzE2MjI4ZjI3NCBsZWdhY3ktdHJ1bmsKKzcxMzkzIDYxZTM3ZWZmYWUzYWVhZjMwZTg3ODQ2MTU0ZDE4YzViNWZkMWM5OTYgcHkzaworNzEzOTQgZmQxNmU1NzkwOTZlM2EzOTBmZGZmYTAxZDYwNzYxODUzN2MzMDBiMiBweTNrCis3MTM5NSAwYmMwNTI0ZDE3Y2ViYzIyMWE5MDljNWYzNjc0MDA3YmZkZmJkMDJmIGxlZ2FjeS10cnVuaworNzEzOTYgMDIyMjRjYjIxZDdjYjk1ZWI0NTFjMzMyNWNkZWI2M2M4ZmRhNjRmNiBsZWdhY3ktdHJ1bmsKKzcxMzk3IGIxNDA0YTg2OGQ4ZjQ4ZWQ1N2ViYzU5NzgyYWE1YTQxYmQ1Zjk3NzQgbGVnYWN5LXRydW5rCis3MTM5OCA1YThlYmFiYTFhMDllZmRmZTY0MzJkZGM4ZmM3MjUxN2Q5MDgxYWJjIGxlZ2FjeS10cnVuaworNzEzOTkgYWZmMmIxNWNjYzY4NDlhZDFjNjM2ZGEwMTNmZmI4ODU1MTgzZTI5ZCBweTNrCis3MTQwMCA2N2Q5ZDYxNjBjMTM0Y2RkOGZkOGVkNzJjMWNmZmJlZTg0OWQ5ZTEwIHB5M2sKKzcxNDAxIGQzNWM2NDg2YWQ5NGE2ODU5NjAzNzc2ZmU2ZmMzNThjNDIxMTJjZWUgcHkzaworNzE0MDIgNjNiNTc1MTNiMWJkZDQwMTIwYTMzNDlhZjM3ZWJiNWY5YTJiYzcxMCBweTNrCis3MTQwMyBkOTA4OGVmZDU1OGJkMGIzNThkYjE3Y2Y1OWVhZDk3NWU0NzdiNzQ5IHB5M2sKKzcxNDA0IDE4MDUzY2Y2MTE1YTUyYTc3MDA0YjUxNThkNTExMDhkODkyZjNjNjkgcHkzaworNzE0MDUgYzIzMzY5NTdjNTM1NGRjMGIyMzg2MGZlNTFjMzViODI0MGIzMWQxMCBsZWdhY3ktdHJ1bmsKKzcxNDA2IDMwODY0MjdiMDcwOTIyZGM0YWZmOWFlYTA2ODdkYzVkY2JkNjM3ZjIgbGVnYWN5LXRydW5rCis3MTQwNyAxY2M5NDk5N2NmYTdlZGM1ZmE5OTE0NThmODFhNDgxMDBiMjc5YWYxIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE0MDggOWE3MzE3Y2U2ZGI5OTRhYWUyMGFiZWE4ZTZjYTg1YTkzZWI3Mjc1MSBsZWdhY3ktdHJ1bmsKKzcxNDA5IDUzNjc2MWMyYjZhNGEyMGQ1NDc5M2FlMTUwMzI2YzBmMmE3YTJhNTMgbGVnYWN5LXRydW5rCis3MTQxMyA0MGVmZjNiMTgyZTRkMmZmOTFiYzMwZmJkNDE5NWM4ODYwMjYyNWUwIGxlZ2FjeS10cnVuaworNzE0MTQgZGZhOTFkZmVkMGIwNTQ5NmMyMTZkMzgyMGMwZTJhZTMwYjQ0NmY4MSBsZWdhY3ktdHJ1bmsKKzcxNDE1IGE3ODhmYWNlZTZlZjRkNzgzN2QwMmQwYmFkNzdmNWRhYWU2NjkzZTIgcHkzaworNzE0MTYgNWFkMjA0MzEyYmNjMzA2YjQ4MTJkYTlmNTg3ZTM3NjgxZDIyYjA4NCBweTNrCis3MTQxNyAyYmEzM2MzNGRjMWE3OTY0NmE3MjZkNjNiMTEzODYwMjEyNTJlMTYzIHJlbGVhc2UzMC1tYWludAorNzE0MTggMDdjM2FjMzBkYTg3MDQ0MTliZDU2YTBmYTMwNWU1OGRkNzI1NmFkZSByZWxlYXNlMjYtbWFpbnQKKzcxNDE5IGFkZTVjMjcxOThkYmVmMGM5NjI5MmE3MDU3ZjZmYWI5NDc1OGE3YTcgbGVnYWN5LXRydW5rCis3MTQyMCBiYzk0YjgzMjNiMzliMjliZDM3NTM2NWViMjViNzg5Yjg2NGRhNGNiIHB5M2sKKzcxNDIxIGY3MGIzYjVmNTM4MGNlNTQ1ODQ5ZGU1YWZiMDQ3ZTEyMjRjNGJkMzYgcHkzaworNzE0MjIgNzllNTdjODY2YjVmNGUyZmMxZGU4MGM0NWE3ZmFhMGNmYzk4ZjJkNyByZWxlYXNlMjYtbWFpbnQKKzcxNDIzIGI0YjI1MTFlMDNjNzUzMGE5YTM0ZDUwNTU2NjUwZGZlNzIzZmU0MWUgcmVsZWFzZTMwLW1haW50Cis3MTQyNCBkMzYxMGUzMzkyY2Y0OWEzNWIyNDE3ZTdmNzhiZjBmNTBmYzJlYWI2IGxlZ2FjeS10cnVuaworNzE0MjUgMDk1MDNjZTY2ZmYxMjNhY2YwMmU3MzI5MzQ3NzBmN2JmNWRiNGY5NCBsZWdhY3ktdHJ1bmsKKzcxNDI4IDhhNDU2M2QzYjVlODg5NWI5OGNiMWQ3ODRkY2ViMmY1ZWVhNDUwNWUgbGVnYWN5LXRydW5rCis3MTQyOSBhMjFjODQ4YWQ2MWVjNDQ4Njk0ODc2NWZlODc3NmUwOWVhNmFlZmM2IGxlZ2FjeS10cnVuaworNzE0MzAgNDBlYjk5ZTg5MzVjNjRkZTRmN2Q1OTA3OWY1N2M4NDA1MTBhNjZhZCBsZWdhY3ktdHJ1bmsKKzcxNDMxIGE2ZmYxN2E0MmFkMzFjN2E5N2Y1N2YwMDRmM2MyNWI4MjljYzIyMDggcHkzaworNzE0MzIgMTA2MzQ4MWEzNmY4YTJhMmEyYTQ1ZDE0YTk0MTUxMjJiOGY1MGYyNSByZWxlYXNlMjYtbWFpbnQKKzcxNDMzIGE0YmM4MGY1ZDZhMGY2YmNjNTE5YmYyYmUwZGYwODExYzVhY2VhMjggcmVsZWFzZTMwLW1haW50Cis3MTQzNCBjYmFhMWJjMzUwYmEyMDU5OGJlZDNjOWFkYzM5MWJhMmUwYzIyZDJhIHB5M2sKKzcxNDM1IDVmMzVjNTNhM2FkN2I4ZTEwZWYxZDNhODFlN2MzODlhNDdiMzhjZjIgbGVnYWN5LXRydW5rCis3MTQzNiBmOTY4OWQxNTBiYjlmZDgyYzMzMjE2YjYzYjg0NjY1YzI5ODJkMGY3IHB5M2sKKzcxNDM3IDBiOWU2ODk3MWExZTJmOTIwYTA5NTc4OGI4NGRjNTgyYTYyYWRkOGUgcHkzaworNzE0MzggOWVhOTU3NGRhYTViZjY5NGNhNTc3MTQ2NTdhYmZjNDY5ZDExNDU4MiByZWxlYXNlMzAtbWFpbnQKKzcxNDM5IDRhN2RiNDEyZmRkMmFmOGUyZjAxOWFmNTBhNmMzY2IxOWZmZTkwMTkgcmVsZWFzZTI2LW1haW50Cis3MTQ0MCBhYTliMGE2ZDdhZGRkNmExMTA1NzllNTRmYWRmOTliNzVjMDZiNzczIHJlbGVhc2UyNi1tYWludAorNzE0NDEgMDg5YzcyMTA3ZDdiMWM2MTI1MmE4MzAxMmMzMDk0YjBmMGE4MTFkZSBsZWdhY3ktdHJ1bmsKKzcxNDQyIDkxNjk0M2NmNTI0MzZmNzc0M2NlMzkwMDQ4YmNiMGEyNGRjMTVlM2MgcHkzaworNzE0NDMgZGJiOWI3MTc2ZWVmMGM2ZTA2NTU1YWFmZWFmYmEzMGZiZGVhMTc0ZCBsZWdhY3ktdHJ1bmsKKzcxNDQ0IDlkOTJlZWJiN2MzMDUwM2RjMDA2Yjc5ODRlYmEyM2IwODY3NmU0ZDggcHkzaworNzE0NDUgYjYxNGE1MWY0NDIzNmE2ZjhhZGZmMDk3MDZmZDUxMDFmMzE2ZTIzYSBweTNrCis3MTQ0NiA2YmY0MjZlNTUxZDU3MmUwYzJjZTUxZmE5Y2YyYWI5OTQxOWZmMDg0IHB5M2sKKzcxNDQ3IDAzMjc1MDRhNGY2YTFhZTQ3NDEwMzE4YzQ4NjE5YmE0Yzc4NDUwN2QgcmVsZWFzZTI2LW1haW50Cis3MTQ0OCA0Y2RkZWYxNDQ0MjgyNDRjZjBmOGUwZTJjZTRjZjQ2ZmM2ODcwOWI0IGxlZ2FjeS10cnVuaworNzE0NDkgMzIzNjZiM2UwY2E5OTA3MjUyNjc5ZGE3Njk3NTE5NGMzZjhmMmJiOCByZWxlYXNlMjYtbWFpbnQKKzcxNDUwIDBjMTFjMzQxOGQ4OWQ0ODZkM2VkMTk4YzgwZTI5MDY3NjA2NDMzYjQgcmVsZWFzZTI2LW1haW50Cis3MTQ1MSA5YTg5OTk5NzczNjM5OTRlM2E5ODY4ZDM0YWIxMzI4NjFlZGVhYTUzIHB5M2sKKzcxNDUyIGI5MTI1MTVmZTljZTIyZWE3YWI5MGNmOWQ4N2I1ZjkwZDY3MmU3NjAgcmVsZWFzZTMwLW1haW50Cis3MTQ1MyAyNzk3ZTVlNjAwOGYwZmU0YmFjMjNhZGU3YjZjNGZlNmVlODE0MGQyIHJlbGVhc2UzMC1tYWludAorNzE0NTQgMTVkNjA3NWMwODViMWUwM2IyODNmMDc3ZDg3NTZkODUzMjMzYmI4MCBweTNrCis3MTQ1NSBjOTUwMjZjMmYyYmEwYzNlMWUwZDY1NmRiMDdjYTIyZDYwNzU5MmI0IHJlbGVhc2UzMC1tYWludAorNzE0NTYgZjBmNjA4OTJjYmExYzkzODAyYzcxNTA1ZjEwNGIwZTQyNTU0ODhjMyByZWxlYXNlMjYtbWFpbnQKKzcxNDU3IDA2YjY0MTc4YTMwZDBmY2IwODY0Y2FlNGRkZGY1ZmE2MjM0OTdmNzIgcHkzaworNzE0NTggMGJlNjNjNzUwNDFhZGY3YzQ2NDc1NDE5ZjU4MzAxYmQxZjYyNjAzZiByZWxlYXNlMzAtbWFpbnQKKzcxNDU5IDFhOGJkZTE4ZDM1MzUzOTkzZGY3YTJhNWNiNWNlZmQzNGQ4ZGVjNzUgcmVsZWFzZTI2LW1haW50Cis3MTQ2MCA3OGE5NzM5ZGFmYTQxM2ZjMjNjYjhlM2RmNTQyYjY0ZWUzOWFkYzdmIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE0NjEgZjcyNDk3NGI4ZDg5YjMzNWE5NGI0NmM4N2ZjZTgyM2RiMDMyM2ZkNyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNDYyIDdlMjI5Y2EwYjkyYTVlODYyYjQ2NzA3MjY1YmIxYWEyMWFlNTc3Y2MgbGVnYWN5LXRydW5rCis3MTQ2MyBkOTM5MjBhMjVkYTRjOGM2YzJlNTc1Y2M5ODFmOWYzNTAzNmIxYWI1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE0NjQgOGYxM2E0MTRkODQzMjk1OGU1ZDcxNmIzMTI5MjRiN2FiYjc1Yjg4OSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNDY1IGZiNDFmZTY3ZTA2MWEyOWM0NDgwOWVlZTdlNjg3Y2NlNmRmODlkZmUgbGVnYWN5LXRydW5rCis3MTQ2NiAxYzUyYjE0NTRmMWUyMDJmYWExY2ZkY2E4MWVjMmZlN2UzZmY1M2M2IHJlbGVhc2UyNi1tYWludAorNzE0NjcgNDQxMTIyNGNiODA2ODhiNDFiZWY3ZjA1MjVjOGI2M2YzZjY1ZDY1YiBsZWdhY3ktdHJ1bmsKKzcxNDY4IDJhMDNjZDA0ZDhmNDA4NjFiMjBjNmNjNzJmYWI3Mjg5Y2Q0MjkxNjAgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTQ2OSBmNjUyZmUxNjQ5ZWQ4ZjM4NWJiNDY2Nzc1MjBjNmNiODMyOTU2ZWYyIHB5M2sKKzcxNDcwIGYzOWQzMzc1MjU4MjE1NWM2Y2E3MWFlMjNiMWUxNDQyOWRjY2YzZmQgcmVsZWFzZTI2LW1haW50Cis3MTQ3MSA4YjJjZGZkNWFhYjZmYzMzZTBhMGE0NjgyMjE1ZWQzMWQzNjUyMzQ3IHB5M2sKKzcxNDcyIGVmMzU5MmU5ZTAxZTVkNTlmZWU2MGUyYzNkOTg1OTk2M2FlMmNlOTkgcmVsZWFzZTMwLW1haW50Cis3MTQ3MyBlYzIzOWNmYTNlNjE3ODU4MDRlZTQ2NDU4NTkzYmYxZmUwZjg0NTQxIGxlZ2FjeS10cnVuaworNzE0NzQgYmYyZWVkODY1YThhNGMzNTkyMGI2Njc2MDI4NDU5ZTA5MjgyM2MxMSByZWxlYXNlMjYtbWFpbnQKKzcxNDc1IDRhMzVjOGE1YmU0NmZlOWNjYTU2MmYyMDE3NGZkZmI5NjEwY2Q1YmIgcHkzaworNzE0NzYgMDAwM2I1YjRmMGMwMzQ5YzQ1NTUwNWZlYjkwZmQ5ODIyNWIxMzZhZiByZWxlYXNlMzAtbWFpbnQKKzcxNDc3IDYzMjg5YjgyYzg0OTAzMDEwYTgzMDk1MTdmZDc4N2VhZDY3YTA0ZWUgcmVsZWFzZTMwLW1haW50Cis3MTQ3OCA5MDM1NjliMTMyYzI0Nzg4MDVhZjA0MTE2MzViY2NiYjI1ZGVlOWQ4IGxlZ2FjeS10cnVuaworNzE0NzkgMmUzOGM2MTdmZDNlY2NlYmMxZWIzNDcyNWM3ZmJhYzkyODhhN2RlNyByZWxlYXNlMjYtbWFpbnQKKzcxNDgwIDM0NTVmZDc4NDY3ZTY1ODM3YjczYThkOGE1MDA2MWJkYjAxNzE4ZGMgcHkzaworNzE0ODEgMzczMjdkMTkxMmE4MTQ2ODYzMTgwYjQ4NDQ5OTc5MDQ3M2YwNjMzNyByZWxlYXNlMzAtbWFpbnQKKzcxNDgyIDUyODJjNjZkODk3MjViZDQ3NjViMzVmYmFmZjJkMWIwOTM0YWJkMjIgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTQ4MyAyZjljN2I5MGE3OTU4MGE4ZTRiMTRlN2MxYTlmZDYwOTRhYWFlYzU2IHB5M2sKKzcxNDg0IGYzNzZhM2NhMTdkMzdmOWEzMmE1YTY4Y2IyZmZlZjQ3ZmQwOGZiOTUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTQ4NSAyZDM3MjA5ODg1ZTI3ZWI5ZDQ5N2VkM2U5YzM0ZWNjZGVlM2E3OTdmIGxlZ2FjeS10cnVuaworNzE0ODYgODg2MTI5ODU4NmMxMGYxYzViZTU5NDYwOWJiZTdhOTEwOTk3N2Y5OCBsZWdhY3ktdHJ1bmsKKzcxNDg3IGQwYjc0NDMwM2I4NGUzMjU0YmIwNTllNDg5YjA3MjMzNzQ1OWZlMzQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTQ4OCBjOTQ5ZGRjNDk0ZWI4NjZhZWQ2ODI2Yzc0ODVkZGVmODFkMzA4YmU5IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE0ODkgMjk3MDUwYWI3YWNhNDc2OTY5NWEyZjNlZjJjZDQ2ZTdiMzVlNjU3NCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNDkwIGYzNDI4MWRiNDdlNjFhYmJhOWRhMzM5YzZkYjE1MmU3MDZkN2QzMzggbGVnYWN5LXRydW5rCis3MTQ5MSAzNjI5OTgyODY2MzVkMDRmYTdmM2ZmNWE5MTA5N2FlNWI2YmQ0M2JiIHB5M2sKKzcxNDkyIDRhZjMxMTQwZGUyOWRhYWZhNGU5MTFhOWQ0ODBjZTNiZmFkZmNiMDkgbGVnYWN5LXRydW5rCis3MTQ5MyAxOTg5MzQ5Mzc5YjVhYzVkN2MzNTlmNjkwN2Q4NWQwYmMxNmE4ZmFiIHB5M2sKKzcxNDk0IGQ1ZGRkMzQyMWM5YWU2OGM0YjIzMTQ5M2NmMTdmMzQyMjJlMmQwMzEgbGVnYWN5LXRydW5rCis3MTQ5NSA3ZTk3OGNhNDI5MzBhOTA2YjBjY2JmM2MyMzdkNzhkNmU2MzgxNGVlIHB5M2sKKzcxNDk2IDNiMWI2MTQyNjkwYWEzYjMzZDViMGUyMmY1NDU2OWIzYzdmMTRlNDEgcHkzaworNzE0OTcgMDM3ZjVmN2U3YWIxZTZkYTA2ZjMzYmUyZjgyMDlhZmMzMjY1ZTI3ZiBweTNrCis3MTQ5OCBmZTVkMDdiZWI1ZDM3Zjg3N2Q3NGJiMWU0N2QyMDczMzk5MzNjNWZiIGxlZ2FjeS10cnVuaworNzE0OTkgYmI4MTY0ZGIxYmRhNjdmNmM0YzRiYzM3YzIxZTNmODhhODllYTJlNiByZWxlYXNlMjYtbWFpbnQKKzcxNTAwIDQ4NDg1NjA0ZWQ0ODdiMWRkNDNhZDAzMDgyNTc2Y2U1YTM1MmE5N2UgcHkzaworNzE1MDEgY2FkZjk1NWJjMThiZDE1ZTI4NTk3Y2FmNzljNjA2NDJkY2M3YzY5MiBweTNrCis3MTUwMiBmMjIxZmNlM2Q2YmEzOGNmZDhjODhmMDQyNjhlOGE0NmJhZTFkN2NiIHB5M2sKKzcxNTAzIDAyMWQ4YzgyZjI4NDQ3ZmU0NzhkNDIxMDg1MWYzMDNiOTg2ZmUxYjIgbGVnYWN5LXRydW5rCis3MTUwNCA5M2Q0Zjk4MjYxNWYyNjRlMGRmOTYzMTRlNTU0YjE1MTFmNjBmMzFhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1MDUgZDIzZTg0ZTQxOGNlOGQ3M2ExMWExODNlZGJmOWQxMGNjZmNmYjMyMSBweTNrCis3MTUwNiA0ZTA4YjE4ZTM4ZmJlMTRmZDM0YjFkZjhlNTgwMWNmNGRiNTc5Mjc3IHB5M2sKKzcxNTA3IGFkM2YzZDMwNDk2M2NkZmIyMjhkMWRmYzcyMWE1YTBmZDQwNjZiYzYgbGVnYWN5LXRydW5rCis3MTUwOCAyMWVmNDc1OGNhY2Q0MzBmYWU4YTIwZTU0NWU5NjJmMWNmYmZlYzZkIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1MDkgYTgyNDQzMTI1MmUwZjI2MWQ1MjM5MWE0ODAyMWIwMDc1YTMzNTEwYiBsZWdhY3ktdHJ1bmsKKzcxNTEwIDI5M2RjNWYwOGU5OTBlM2QzNjViOWUyNTE2OGVhM2Y3ZDg4YTA0OTUgcmVsZWFzZTI2LW1haW50Cis3MTUxMSBlMDcyM2NjZWU3NGRmMTFkYjc5NjdjOGVhNWJkMmU2NTFhODkyMWE4IHB5M2sKKzcxNTEyIGE0OGZjZWIwZjBiM2ZmZDBiZmI5ZWRhOGQ1ZjM3N2Y1N2MyMTAxYTggcmVsZWFzZTMwLW1haW50Cis3MTUxMyA3NTRhM2Y3M2ZmMDdmYTU2ZGVmMzBlOTVlZWJkZDk3YjljZmJkMmE5IGxlZ2FjeS10cnVuaworNzE1MTQgM2IyNTkxMWM2YTRlYTZhOGUwNmFlNmFmMzZlOTA3ZGNhMDAyMmNlZiByZWxlYXNlMjYtbWFpbnQKKzcxNTE1IDE2ODQ4MmVhZmI1NjFkYjg3OTc0NWVlOWI0ZTk5NzU1YzJlYmNmNjAgcHkzaworNzE1MTYgZTJiOWIyYmM3MGIwZWNmZjBiMjY5ZGIyOTBlYjNhNGNkODA1OTkzOSByZWxlYXNlMzAtbWFpbnQKKzcxNTE3IDcxM2VmNjhlN2ZmZDAwYTUyNmVlNzBmYjA0MGRlNjI2ZTY4MThhZWUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTUxOCA0Y2ExNDcxYmQxY2QzNjg2MDk5NTMyZDUxMWM3ZjI1YjE2ZTVkNDYzIHB5M2sKKzcxNTE5IGY0ZDU1M2VjOWRkYzk3ZTcyMzM5ODI3YmQxODcyNmY3YzRkOGU4ODAgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTUyMCBkN2M1N2UxNmI3M2M1ZjNkZmZmNjNlYTg4NzQ5YzFkOGRhMTcyYmEyIHB5M2sKKzcxNTIxIDQ0MDdlNGQwNzA4NDIxZGU4M2E2ZjBiNDZhNTBjODdjMjcxYjU2Y2UgcHkzaworNzE1MjIgMWNiM2JjY2U4MzE2N2NkZDJlYTBiZDExYjY4NTE3MGMyZTcxZWIwYyByZWxlYXNlMzAtbWFpbnQKKzcxNTIzIDI2MDY5ZDNiNjg5MTlhZGQ5NTExOTQzZGM2M2E3YzRjYmNlN2IyNmUgbGVnYWN5LXRydW5rCis3MTUyNCA0NjE2N2FkM2FiOTNmYTg0NzA1MDVhZGYxMWMzMmIzMmI2YmExMjgyIHJlbGVhc2UyNi1tYWludAorNzE1MjUgYzkxNmY4NTRmYWViMmI4NWUzYmZmOGRiOTExZmMzZTNmYmE5OGM3ZCBweTNrCis3MTUyNiA4ODY3YTViNjBhOTEzMzQ2YTlhYjkwYWExNDRlMjk1ODU1OTJjMGMxIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1MjcgNjUwNmNjMzNlYmFkYzE5NGJhODdmOWNkZTRmZmM0ZWUzYTExZWExNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTI4IDUzNmYxODBmNjZhNzc2MWM1NWZlODU3Mjk1NGI5MDk3MThkNGExMGEgbGVnYWN5LXRydW5rCis3MTUyOSAxNDA5MjhjNmNmNTFmMDEzZjgwYTg2YjY5NmZmNzBhYmI4NDIwYzZkIHJlbGVhc2UyNi1tYWludAorNzE1MzAgOGM4MmI3YzUxYmRkZTMwYTVhZjRjNGQwMDVlMWRiOTJmY2EwMDkxYiBweTNrCis3MTUzMSA0MjcyOWVkZGJiNmMwYjAzMmU5ZmJkZWIxNjJhYWM2ZjczYjY1OGFlIHJlbGVhc2UzMC1tYWludAorNzE1MzIgZDBhNzNjZjQ2MTgwZDQxMmE3NTQ1NzZjMGJiMWZjZDFjMDM4OWRiMSByZWxlYXNlMzAtbWFpbnQKKzcxNTMzIDA5ODg4NWM2YjEwMWQwODU3OGFmZWVhZjI0MzA4YWJjMmM4MzdiNWUgbGVnYWN5LXRydW5rCis3MTUzNCBiYmI2M2M3MWE5ODMxOTE0MzQxNjA1NTZlZTcyZmY4MWYzOTUzZDgwIHJlbGVhc2UyNi1tYWludAorNzE1MzUgOTNhMmQ4MGNkMzRkMDM4MDE0ZDJhN2JmZTMwZmFkMzg0ODhhYzMwZCBweTNrCis3MTUzNiA2NmRhNTE0ZTNmYTM5NTI5MDBhOWZiODk2ZDY0YWQ2ZmFhNjQ0MTg1IHJlbGVhc2UzMC1tYWludAorNzE1MzcgYTI0OTJiNGU1MDVkZjNmYzMzN2FkMjVmZjY4YzkyODc4MzI3NmM1YyBsZWdhY3ktdHJ1bmsKKzcxNTM4IDgzMjI4YmJlNTkwNjc4ODE0ZTRlNDRmZjI0MTM1NGY5NjAyODc4N2YgcmVsZWFzZTI2LW1haW50Cis3MTUzOSA3ZTMxOWVlZmFiOGM4ZWY4NGU1NGQyNGU5MDc4NmJjYTFlMGExMWY5IGxlZ2FjeS10cnVuaworNzE1NDAgNDgwZjdlYzNiODY5NjA4ZmZkYjg4MjJjZGNjZWU1YTJiNWNhMzk1ZCBsZWdhY3ktdHJ1bmsKKzcxNTQxIDJlZWM1N2FiYzUyMzhmMzk3YjJlN2Y3M2ZhZTM4ZTM4ZDM5ZDE3YTggcHkzaworNzE1NDIgZTllMmFlM2JmYmMxNDA0MzMwYzFjNDUzMjk4NjZiZmYxNTkzNDdmOCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTQzIDhiYzRiYzg3Yzg4NTllNTg5MTdkMzc5OGIwNDY5NTU4Njc4YWRmMGMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU0NCBhZTc0MTQyMDg5ZDJiYmZmMjY5M2U0YjBiZTVkZDBiMjE1MzY1Nzg1IGxlZ2FjeS10cnVuaworNzE1NDUgZGEwZjdmYzc4N2Q4MjZkOGNkZjdmYzIzZjc2MmQ0N2FlZDU2N2U0YiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTQ2IGJjNWM1ZDdhMmExNDc5YTA1NzZkMzc5ODg5OTI2Y2ZhZjRjYWMxMDEgbGVnYWN5LXRydW5rCis3MTU0NyA3ZDQ0OTk3MTFhN2Q1YWRiMmMzOTY3ZTA1M2ZiMmMyOTIzZmNiYmIwIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1NDggNjIyYWJmNmFjOTdmYWIzOTBkMzJhMzE4OTkxYTJiMTllYjQ1MzgzZCBsZWdhY3ktdHJ1bmsKKzcxNTQ5IDEyYThkMTk0NzE2NzkxNGFkMDM5YjRlMWY0MDhlMTBhMjVkYzYxNWIgcmVsZWFzZTI2LW1haW50Cis3MTU1MCA1NDcyNzg5NjUxZTE2MTEwMjI4ZWU2MWRjY2Q5Y2QwZTk0MGQxYTVhIHB5M2sKKzcxNTUxIGM3NDBmZWZhZTFiYWIwZTkxZDFmMGJiZTU3MjMyNDRjNjdjY2RkN2EgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU1MiA0NjA3ZjU0ZTc2OTM2Yjg3ZGFjNzg4YjRjN2JlZjhiMTkwOTMyYjZkIHJlbGVhc2UzMC1tYWludAorNzE1NTMgYWI3NWRhMjY2ZTU3YzU1ZTc3NzAyNGZiYjg0YTZhMzAwOGRjNDgzNSBsZWdhY3ktdHJ1bmsKKzcxNTU0IDM3NzA2NTJlYjBlNTA5OGJmMWM0MjYwNDExOTEwYzRjOTNlYjUzMjEgbGVnYWN5LXRydW5rCis3MTU1NSA5ZTNjOTc2ZGE1ZjQwNTI3ZDM5ZTcxNGQyMWNlY2I3ZWNlMmMyZGExIGxlZ2FjeS10cnVuaworNzE1NTYgNWVmMThmMGY0MzEwOTFkMDVjMmI0YjI2MWUwOWExODA1OWQ4NWZlMCBweTNrCis3MTU1NyA2ZjhmYzZiMTY3ZWE4YjAxMDgxNDg1OTQzMzhiNjc2NDliMDk0YWYyIHJlbGVhc2UzMC1tYWludAorNzE1NTggZTQ5Y2Q0ZjQ3Zjc2MjBiMDI3ZTk2YmMyODAyYTY2OGIwNjc1N2ZiMiByZWxlYXNlMjYtbWFpbnQKKzcxNTU5IDk1MTMyY2MyMmVlNWFiN2I4ZGFlYzYxNjJlYjMyZDgyNjMyZDMwODcgcHkzaworNzE1NjAgZmJjMzdmYmQ5NDE1ZmY1ZDQ0ZTcyYzVmMTFmNThjMTRkOGVkNTQxMyBsZWdhY3ktdHJ1bmsKKzcxNTYyIDBlNDY5ZGE2N2Q2M2E1ZjQ4YjVmZTFmNGMwYzk2YTY1NGMxZmU2YWUgcmVsZWFzZTI2LW1haW50Cis3MTU2MyA5OTBmMjU3OWVhZmVjOTUwNWViMDMzYWIzMWI5ZjhiMzQzMTJjZTM4IGxlZ2FjeS10cnVuaworNzE1NjQgMWRjNTNlMGExNDdhNzA0MzZiZDk2MzZmNjFhY2U4ZTg2NGM2MjhmZCBsZWdhY3ktdHJ1bmsKKzcxNTY1IDUzMDk4ZjI3MGJiZGEwM2Y3MmViYTA4ZTY1NjdlZTNmNTE3NzlmNmYgcHkzaworNzE1NjYgOTNkMmJlZmNhMGE1NGZlZTc2YTk5MDc3MzUxNjkwYWU3ZDE4NTdjZSByZWxlYXNlMjYtbWFpbnQKKzcxNTY3IGFhYzcwYTNiYTI1MGYzYTQ2YTJjOTEyZDkwOGNmZjljYzRlM2VjNjQgcmVsZWFzZTMwLW1haW50Cis3MTU2OCA3NGE0YTI3ZWEyOTFjYjFmZTY5Y2VhZWEwMDYzYjZiNzMwNGFlZmY3IHB5M2sKKzcxNTY5IDhhMTczMDU3ZDkwMzFjNTJmOGUxNmQ4MjU1Zjc4YjYyNTJjZjdhOGIgbGVnYWN5LXRydW5rCis3MTU3MCAzYmE2NWVlNDFmZTdlYThkZmRkMzkzODUzY2Q5MzkyNDk4MWMyNzIwIHJlbGVhc2UyNi1tYWludAorNzE1NzEgOGVlZTk0Yzc0ZTljOTg3YzkyZTI3OGMwZjJiMGVlZGFmNmUwYTRlOSBweTNrCis3MTU3MiA1NmFjM2Q1MDk1MmM4NzdkMDFhMDVmMzc0NDFjYWZjZjk1MjA5YjgwIGxlZ2FjeS10cnVuaworNzE1NzMgNzc0ZjdiY2FkMjJjNjlmNjdkMzFlNTMwNTE5NTMzMTExOWIxYTI5ZSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTc1IDlmZDY2YTIxYWJkMTk2N2QzZjA4NDE0ZDE5OWE2ODVjOWFhMDQwNGQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU3NiAyOGVhNTRhNmJiNjQ2MjU5ZWE2M2RmYWNlMzVmOTEyMWVjZGVmODU4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1NzcgYzY2ZDRlMzA2ZmI2ODUyMTI0Mjk3MTUyYTJjZGE3ZTMzZmJiMDRmMiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTc4IGE0Y2M0NmNhYjZhNzQzMTJiYWNhNzIwOGQ3ZjQ4ZGNiNjU0OTg1MjYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU3OSBjOGZiMzk4ZWNhMjM3MzM2NDdkZGZjZTQwZTZhZjQ4ODRhYzJiYzhiIGxlZ2FjeS10cnVuaworNzE1ODAgNTdiOGRjNGE4ODg4ZmY5MTMzNmEzMzc2YWU5YWRjYzkzYTE5NWM4ZCBweTNrCis3MTU4MSBjY2YwZTY0MDk1MzZkOGMyYzg2YjZkMDUxMDgzMzFjNTA2OTJhOTdjIHB5M2sKKzcxNTgyIDU4Yjc0OTY3YTU0MjVjYjcxZDExZTQ2NjIxOGQxYjQxMGQ5YmM4NjggcmVsZWFzZTMwLW1haW50Cis3MTU4MyBjOTdlNDVlOTA1OTllNjVhODVlMDhmYjM0ODQ5OWQ4NDQ4MzYyMzgwIHJlbGVhc2UzMC1tYWludAorNzE1ODQgMTc3ZTEwNzMwNTJjODU5YmVlMTdlZDI1ZDQ0NTYzMDcwNzExOTgzOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTg1IDQ3MDM5NjVkYTJjZWE5ZmY4NDNjMjBmMTc1MWUzM2RjN2ZiYzRhZGUgbGVnYWN5LXRydW5rCis3MTU4NiBlMDlhNjcxYTU5MGI3YmE1ZTI3NjQ2NDA3OWYyYmZiYTNmNDE5YzQ2IHJlbGVhc2UyNi1tYWludAorNzE1ODcgZTAzYmE1ZjZmNDk0MDYwM2UwNzU5YWYzNmZlMTJkMTk4YTRmMzM1MiBweTNrCis3MTU4OCA4NWJjMjUzN2U4M2UzZDk2MjQ1Zjk2ZGJlNmJkNzFhN2Q3N2QzZTQzIHJlbGVhc2UzMC1tYWludAorNzE1ODkgN2JhYTY4ZDY2YzhmYzc5OTg0MzM1MGZkMDA4NGI1MzNlZWQzNjQwMCBsZWdhY3ktdHJ1bmsKKzcxNTkwIDcxZjQ4YWRhZDg5MjNlN2Q5ZTc5MWQ2YjM2ZGYxYzM1ZDZiMzdlM2UgcHkzaworNzE1OTEgNjA1MTM4MDg1NzdmMzIzOTRmMjk3ZThjYzJlYTNjN2NjNmQzNTkwYSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTk1IDA5Njc2N2IxODQ1MDE4NjU4ZjRhM2ZkZDNlZjM0NjI2NTc3NTIzOTEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU5NiBlN2RiZmQwMjNmZjUyMWVlZjkzY2QzM2U2MTM0ZGI2OWYwNjM2MTQ2IHJlbGVhc2UzMC1tYWludAorNzE1OTcgNzk0NTI1ZWQ2NGZkNDIzYmM1Y2ExMzFlNzBiYTE0Y2E5MTBhYmE4NSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTk4IGRhZDNkMmI5YTg3NTNmNDVmMTk2YjcwMDY0NGNmOWVmYzI2YmNkOGUgcHkzaworNzE1OTkgYzE3YzViYTliYjZjYzdiZjc2YTI1MzM0MGNkYWVkZmRhNGRiMDMzYSBweTNrCis3MTYwMCA0ZmViYTA5YTgyNmJhOTllNWI0ODI3MDdiM2Q5NjQzZWJhMzQxNTZmIHJlbGVhc2UyNi1tYWludAorNzE2MDEgNjk4ZmEwMjRlN2QyMzlmM2FkYjdhMDNmNzdlMzU3ODdlNmYwNDk5MyByZWxlYXNlMjYtbWFpbnQKKzcxNjAyIDZkOTVkOTc5M2ZjZjUwMDAyMDczOTQ1ZTRhZWIwZDNlZjE1MGZhNWUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYwMyAyZmQwODgzMGE5M2YxMzI4MTkwNTA1ZGQ4YzE5NjczNTMyZDUwYjdhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MDQgNTQyODNiNGExNjU3ZmNmYjZmZDQ3YWQ0M2VkNzNkMDVmZDNkN2RiOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjA1IGFkM2FjY2RlMGVlN2E3YmM1ZTA4OTI3N2RkZTk3MThkODExZTY4NTQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYwNiAwYjdlNDE0MTgzNDMzMjY2YmU3ZTY5YmQzNjQ3MjlmNDUzMmFmOGFmIHB5M2sKKzcxNjA3IGZkN2YzNmVhZDBjODE3MGJmZWE2M2Q5ZjU3MDFlZmJjMWZmMmVkMTAgbGVnYWN5LXRydW5rCis3MTYwOCA5ZGY1ZGRjMTk4YTgwMGJlYTI0YTIwNmE5NmY3NDFlYTA0ZDIwMDZlIHB5M2sKKzcxNjExIDE2NzA0YjE1ZGYzZWJlN2Q1M2Q1ZGEwNjJlZDFiNDNlZTAwMjFhMDEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYxMiBjMjQzYjEwYWI3MzA1NTI1ZTUwZjg1MzFhMmM5YThkMWZiMWFmYTkyIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MTMgMjk3MjliOTA4YTgyMGRjYWMzMGY4YzBmMDY0NDI5OTVmYzU1MzBjZiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjE0IGI4ZjQxZGI4ZjZhZGEwOGE1N2UxZjM3NzIyZGY4ODJhY2QwMTNlOTggcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYxNSBhYmVmY2EyZmQ5MmUyMWQzYzM3NjVhNmQ3YTJhYThiOTY5OWIxNWVjIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MTYgYTc0ZTEwMTkxODU0ZDIxYTA2MTU4ZjM0NjY0MTRmMzYxYzJkZjIwYiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjE4IDQwODc2MWNhM2Q5NjYzYjZlYWQ1OGQ3N2I5NGY5N2NkMDBkZWI5OTkgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYxOSA2MTlkY2FjOGQzODkwOTY1YjQ0NzcyZGNmNzdhN2M1MjNjYjRkMThlIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MjAgMmNhMjA5ZjNhYWEyOTQxNTFiYjM3Y2U3ZmZjODUwNzgwZjVjOTk5NCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjIxIDEyYmRiMzk3MmUyYTdhYTVjZmMyY2FkMzYyN2MyNjhiYjc0NzI2NTIgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYyMiBkODgxYjA2ZGNhMzg4YWZiZWVkOTE4MTdmOWExNTU1Mzg4YWY4Y2I0IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MjMgNjczNDBmZDZhYzhhM2JhODg4NDFlZjM5ZWVkMDkzNTE0MDc1MzY2MiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjI0IDJkNjExNmVlZjJiMzY3YjNmOTJiODc4ODkxODlkNzhiNmVhOGI3NWYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYyNSBjZTY3ZTc4M2E2ZWQyM2Q4NjM2MmY1OGQ0Njc5NDYzMzM1ZTQ0ZDkzIHJlbGVhc2UyNi1tYWludAorNzE2MjYgMDdkMjM5ZWVhYTYyZWY5MWI1OTRiYTU0Y2E5YWY0Zjc5MGM4NWNlMyBweTNrCis3MTYyNyA1YjEwOGViYmZjMDgzZTdmZDMxZjczMTYzNTk0Mjc4MTlkOGQ4YmQ5IGxlZ2FjeS10cnVuaworNzE2MjggNDQxOWUwNjIxOWNhYjg5MmNkNTY5MTAzNDNjMGYyZTY5MjQwYzM1NCBweTNrCis3MTYyOSBkZjI2MzhiOWJlZTJlZGMwZjYzNmY0ZTMxZTA1MzY5MDAxOTI0MzRhIHJlbGVhc2UzMC1tYWludAorNzE2MzAgNmJjZGMxMzFmNTNjYmUzMTA4NzYxMDhmOTk4NmM1NjU0ZDkxOGUwYSByZWxlYXNlMjYtbWFpbnQKKzcxNjMxIDQ2MjgyMTdiMDEzYzQwNGZmZjBmNmZiMjRkZWJiYzAxZDk2ZWVjNDIgbGVnYWN5LXRydW5rCis3MTYzMiA3YTY5ZmZjNGY0YWUzNjZjNWUyNTMwNjY5YWRlZjYyZjM1N2E4MjJkIHJlbGVhc2UyNi1tYWludAorNzE2MzMgMjBjZjdmOGE1NDA1MmZhMDJhMmM3ZWE5YmNkYmUxMDQxYTIyNzEzZCBweTNrCis3MTYzNCBmMzI1ZWRmZTBjM2FjYmMwYmI5ZmQzNDBhYTUwMGMwYmQxYjA3ZmZiIHJlbGVhc2UzMC1tYWludAorNzE2MzUgYzU0Yjc4NGE1NmQ1NWFkZGI5NGVjMmRmZjUwMmQ1NzE5NGEyMTFlNCByZWxlYXNlMjYtbWFpbnQKKzcxNjM2IDVmZjkwMzMyZjkxMGUzYjdkNmIyODA2OTYxMDgyMGU3YjE3MTRjN2UgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYzNyBlZWJlNWY3ZGFmMWU3OGIwNDlmMzZhY2FjNzBlNTIzMDQzMjZjZWIxIHJlbGVhc2UyNi1tYWludAorNzE2MzggNDNlZjc0YmZjNTY5NjE5YTkyZTgxYzAwZTkxYTNkYmFiNDU3ZjEyZCBweTNrCis3MTYzOSBhYzkzYzNkOGUxOTIwNWI4N2Q4Yzc3YTY4NmUyMjQ2NzkwZGFhZmRjIHJlbGVhc2UyNi1tYWludAorNzE2NDAgNDhiNWZhZDljZTFiMjg0YmE3NWYyZTFkNjViODBkYzczMDY0ZmUyMyBsZWdhY3ktdHJ1bmsKKzcxNjQxIDc3ZjkwOWFjM2UxMDIyOTY4ZDYwNTFhZGZhNzRhM2Q4YWQzOTAyZjQgbGVnYWN5LXRydW5rCis3MTY0MiBkM2YwMjA0MDBmZjI3ZWZhMzNhZWM2ODJhOTk3NmY3ZGQwNTdhYjI1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2NDMgYzUyNGJmZWU3MDNhZTUyYzhhNzQzMjA1ZTJiNjc0ZmRlNjI3ZGMyNSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjQ0IDNhMTFhMmFkOGY3YjgwOGU2MGM4NjhhM2M2ZDZiYjJlMmJlNWY0NGMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTY0NSBhNjc5MGEzYjgwYzNhMjQwYjNjYTljYWUzMmRiYmE1MDZlZGQxZTRkIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2NDYgY2U0ZjdmNDg5YmQzNjFhYzg5NjY0ZTlmNTk5NzFhOGI2N2M0YWRlMiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjQ3IDQ1MDBhZGMzMWJlM2I4YWVjMDVkM2ExMDUwYzFjMTkxNzZlMTRlYjYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTY0OCBlZGViYzg5M2IwMmNlMGZiMjcxNDNiMTAxZGI0YzFlNGZmZDdlNzgzIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2NDkgZGI3MzA0YmZiZjdkYzNjZjcwNjJkNjVkMjI2NWYyOTkxOTliMWVkNyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjUwIGEyOGFmNTVjNmU1OGYwMmE4ZGQxZGZkZmM3MzE2MmVhZmI1M2NhY2EgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTY1MSA1ZDQ3MjljNDcwMzM1OGQ0ZmRhNzY4MWI0NDIyZmYyMTk4YjQ4MmJmIGxlZ2FjeS10cnVuaworNzE2NTIgNzNiYjQ5NDUxOGRkNmQzOTA1YzgzNTY4YmExYjliZjNmYTg3NzE5NCBweTNrCis3MTY1MyAxZjVmOTkyODAxZjlmNjljMmFmOTA2YTljMmI5MmJhM2Y2NmMxNzU0IGxlZ2FjeS10cnVuaworNzE2NTQgOGY2NTM1NjcyOTFmMGJiYmEzZmIzN2UyNGE0ZGZlMGFjYzljYmU5NyByZWxlYXNlMzAtbWFpbnQKKzcxNjU1IGYwYTE2ZTFkZWVhMTNkODhiYmFlMThhZmY0ODM3Y2MxY2U3Y2YxZjkgcmVsZWFzZTI2LW1haW50Cis3MTY1NiA5NzViZTFlYjNlYmYzN2RiNWMxYzBhYTQzZDE5MTBhMjgyNjY0Zjg2IHB5M2sKKzcxNjU3IDczYmZjYjM5ODg4NjJhYjgzYmY1MDdkMTVmNzUyZjg5MjlmYTdkMGUgbGVnYWN5LXRydW5rCis3MTY1OCBjZjE5MGZmMmE3MmM0YzQ3NjJmZjc4MzYwNmIxNzRiODVlOWIwN2QxIHJlbGVhc2UyNi1tYWludAorNzE2NTkgYTYzYjQ2YWRlMmI3YjYxYzdkMDYxNTFjNzM3ZDRlODdjYTFmNDkxYSByZWxlYXNlMzAtbWFpbnQKKzcxNjYwIDkyZjdhNDYwZmY4MjhkZGFiZWU3ODAzMzlkNDE2YWQ5M2M3YTQ0NjcgcmVsZWFzZTI2LW1haW50Cis3MTY2MSBmMDIyMjhkMWY5MDgwYzJiZWY5ZmNkNWE3YmRlNzRlMTQyZDQ0M2FlIHJlbGVhc2UyNi1tYWludAorNzE2NjIgODlkZWI2YmM4MmU0YmY4NTA0YTliYzEzZjllNmQ3NjUxN2JmZjdjMiBsZWdhY3ktdHJ1bmsKKzcxNjYzIDk3YWU3YTcwOWMxZDQxMWE1MTI3NmZjNzhhN2YxOWYyYWU5OTJlNGYgcHkzaworNzE2NjQgODY2YThiZWVjMDY1NTA5ZTE2NmI0YjBjZDYxNGM0ZDAyMzMwNjlhNiByZWxlYXNlMzAtbWFpbnQKKzcxNjY1IGI2NTNlYWIxM2I3MzI4NmU5NzVkYWQ5MmE5YmU3NjhiMWE0M2VhNzUgcHkzaworNzE2NjYgMDdjNmIwODg5NjhiMjA1OWRjMmRjOGQ2ZTgzY2M4YjYzZWRjZjcxZiByZWxlYXNlMzAtbWFpbnQKKzcxNjY3IDA3YzExMTQ2OTVlOTlmMmY1YjFiMWVlNTkyNDY3NjNmMTkyNzQyNGMgcHkzaworNzE2NjggZDg0YWQ5NzNjZGUyNWY2NjVjM2YyNmI2YTY2ZjdjNTUyZDIyZWRmNyBweTNrCis3MTY2OSBjYzU1NjU0MTVhZGE0MTdkY2EzNzcyNDcyYTRjOTYyMDQ5ZjBkZDNlIHB5M2sKKzcxNjcwIDk3M2Y0ZDdhYTg3Y2ZmZGFhNjhhMjhjY2Y2YzExMDZmNzUyM2RmNzMgcHkzaworNzE2NzEgMGNmNzc5OWZhMTkwMmE3YzAyMDE2NWI5NjEyMjYxOWU1YWI4MGE1YSBweTNrCis3MTY3MiAwMGUwNTcxMzZmYzY3N2Q1NDNmZWMwNjk5MTYzNGYyMjhjOWFhYjFmIHB5M2sKKzcxNjczIDBlZjVjZWRkYjFjM2RiYTQxYmQzMmI1NjRkODBjZWYyZWI2MmNmZmYgcHkzaworNzE2NzQgYzYwYzFkMzlhOTUxNjUxYzBiYTBjMmE1MGU0MmVhNjc4ZjVlNWYyOCBsZWdhY3ktdHJ1bmsKKzcxNjc1IDk4YTUwYTQ5ZGM4NjUwYmM5NTdkZjIyMDI4NzkwY2MzMjI3Y2Q3YjkgcmVsZWFzZTI2LW1haW50Cis3MTY3NiAyMTI0OTViMDQxMGMzM2VmZTRlMTAzNjJhNzBhMzY5ZDkxMjlmNmVjIHJlbGVhc2UyNi1tYWludAorNzE2NzcgOWVhYjA1NzNkODQ1NDgxN2I2ZTMyMjYyYWYzZTZhYzEyN2VkNTgxOSBweTNrCis3MTY3OCA4ZTUxZmFlOWJiNzU0MjlkNGQ0MzI1NjJiNTk3ZDJlMzkyYTBjYjBkIHJlbGVhc2UzMC1tYWludAorNzE2NzkgODJhMmVmNTk2M2UwZjA5NWNmY2MzYjY5ODAzODMxZDE4NmE2OGE0MiByZWxlYXNlMzAtbWFpbnQKKzcxNjgwIGRiMjkyZWJhN2VjMWFhYjE2ZjU0YzQ1ZjEwMGY3NDUyYWNmNmFmMmEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTY4MSBjNzQyOTIwYzQ1Zjc3MWM0Yjc2YTJjN2UzNDlhOTI2MDQ5ZjQ4M2VlIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2ODIgNjg3NGQ3MDU0NjA0MzI1N2JiY2YxMzI2NTgxNjNhOTI3ZDdlZGFlNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjgzIDkwOGM2Mzk4MGVlY2UwNmNiM2I2NDMxOWU0OTYxODE0ZWYxZGNlMGIgcmVsZWFzZTMwLW1haW50Cis3MTY4NCBhYjA2YTM4YjU5MGNjNDk3OGQ3ZDEyMzk3MWM0MTU0NjI4MWRkMTlhIHB5M2sKKzcxNjg1IGE3MDliYjVkZmFmNTExNjU1MDBlZWVmNmIxNWJjYzcxMjI1MDgwMTIgcmVsZWFzZTMwLW1haW50Cis3MTY4NyA5ODYyZDUyNzJkODU3YWE3ODQ0MDEyYjI4OGUxZGZkMjlhMGYwMjNmIHB5M2sKKzcxNjg4IDY2ZmRjZmE5NDAwYjAxZWNkZDQzNzNmZDk2N2UzZWQzMDM1OGM0Y2YgcHkzaworNzE2ODkgZmU5OWE1NjJiNzA4NWIyODQzNmI4NTlhYzkxOWI1NGUyMGE0MmQ0MSBweTNrCis3MTY5MCAyNjk1MWU1OTU4OTMxYjhkMjkzMmUwOGU2ZDc1ZTk5ODJiMmFhOTFlIHB5M2sKKzcxNjkxIDhkOGYyZjk4YTc1MmE3NjVkZGIwNWE1N2U0NDM4ZTQ3Y2Q0YWY5NDkgcHkzaworNzE2OTIgMTM5MTZiYjJlZmYwN2NjNDM3ZTdkYzcwNTQwNTEwZjhkOWJlZmNkMCBweTNrCis3MTY5MyAzZTMxOGM0YWY5NjFjM2EwOTY5M2Q3ZDk3N2ZjMzE2NDdjYjkzNDkxIHB5M2sKKzcxNjk0IDI0OWQ1MDBhNzc5YTg3Yzg4YTNjZjc5MmQ3ZGM2NTMwNWI5ODk3NTUgcmVsZWFzZTMwLW1haW50Cis3MTY5NiAwMmNiNDIwZDg2MmU2OWFlMjBkODYwZDMyZmQ2OWEzMjM1NmJhOTgwIGxlZ2FjeS10cnVuaworNzE2OTcgODU4YjlkMDhlMzRiNGVkZWU0YThlMzY5ZjI4MDY2MzBmYzg5YTA1YyBweTNrCis3MTY5OCBjODRjNzU1MjViYjM1YWVmMmYwZGVmMmU4Yjc5ZDBjMDI3NmUwOTBlIHB5M2sKKzcxNjk5IGQ4OTVhNDJkZmM5ODkyZGE2YjA0OGYwY2YyNDhkMjZiOGIzZDIxNmUgcmVsZWFzZTMwLW1haW50Cis3MTcwMCBkNmRhNjQ2MzU0ZDIxZTcxZGQ2NWE0OWUwZmJjZTc2MDhhZDBkZWFiIHJlbGVhc2UzMC1tYWludAorNzE3MDEgZDQzZDY0MjUyZDM2MTFkOTY3YmE3OWM3MDgzYmYwNjQ0Mjk0N2VhZiBweTNrCis3MTcwMiAyZWQwZDdlMWQxNzczNTc4OGI0NDZjYTE5NWU3MThjNTgzZjg2NzRhIHJlbGVhc2UzMC1tYWludAorNzE3MDMgZmUxNTUyNmViZThiZjY4Nzk4NWRlYjMyMGYzYjI5ZjlhY2Q1MGE4MiBweTNrCis3MTcwNCBjNWM4NjgwZWUwYjFjMWZhNGNmZTc0YTVlYTRkMDFlY2UxZjgxNDg2IHB5M2sKKzcxNzA1IGFkNWM3ZWFjY2VhMTEyNTJlZjg0MmU3OTA3NWZkNDg1ZDExNDBmMjUgbGVnYWN5LXRydW5rCis3MTcwNiA4MjA5YjZjMzJlNjEyYmM0NTdkZDYyZmY1NWIxOGIyNjJlNjBiYmFiIHB5M2sKKzcxNzA3IDhhOGRjN2Y4NTQzZTg3Y2Y2NjFmODcwNTgyOGJmZGNiZjYwMjYzMzggcmVsZWFzZTI2LW1haW50Cis3MTcwOCAzNDEyMTU2ZmI4ZWY2YTcxZmM0M2E4MmFmMWMwZTFkNjU2ZWY0MGNiIHJlbGVhc2UzMC1tYWludAorNzE3MDkgNzlhNmM2M2FjNWIwZDIwZWNlOWFiOWVjMDhkOWJjYmY3N2MyZjRhMiByZWxlYXNlMzAtbWFpbnQKKzcxNzEwIDk2ZDgyZmFjZDg5MGU5ZjZkOGU4MjI5NzNhOWUzMzdkY2ZhYzg3NGYgbGVnYWN5LXRydW5rCis3MTcxMSA2YTdmYTA0ZDgxMTFlNDgxM2IzNDc1YjkxNzE0ZThiMGY1YzU4NzcxIHB5M2sKKzcxNzEyIDU2ODg3YTJhOTBhZWY2MzkzMDE1ZmEzMzJjZDgxZDQ5YWRkMzdiMDggcmVsZWFzZTI2LW1haW50Cis3MTcxMyBmYjA4ZjYwYWI1MTExN2M4ZDQ2YjljYjdhOTJiZWMyNDRhNGUyOGE2IHB5M2sKKzcxNzE0IDRmYTQ3Njg2YzBkNzBmZGVjMzAxMjc0MDk0NDg1ODk4MTZlNTJiZGIgcHkzaworNzE3MTUgOTMyMjM2MDNjOTkyMjA2YjhmZDk4MjU3YTI3NTVmMGFmZmQzNWZhOSBsZWdhY3ktdHJ1bmsKKzcxNzE2IDRkOTk4MjA3Y2ZjM2U5Y2MzMjgxZTBhMWVmOTkyZWI0OTk2MmJhMDQgcmVsZWFzZTI2LW1haW50Cis3MTcxNyA3MmE3MDAwYTg2MDk0MmM1MDk2Y2ZhOGU1ZGRkMWYzZDA3YzBjZTA1IHB5M2sKKzcxNzE4IGE0ZjExN2U5MjBmZGE2MGUwZmVjNmY4YjM3MjNkZjY4YjBmZTBhMGYgcHkzaworNzE3MTkgYzRlOWE4NzVjOWE1NGZiNzJjY2I5YTYzMGZlMzdjMTQ1Y2E2NzdlNyBsZWdhY3ktdHJ1bmsKKzcxNzIwIGRkYTE0YWZhMTJiODViMGQ3YTBjNTZkMDljOTQ0ZWUyODNiMmY2MGUgcHkzaworNzE3MjEgOTc1NWQ4ZGQzMzY2YWNjZDI0NjIxZjQ5NDczZDdhMzYxYTBiYmZhNyBsZWdhY3ktdHJ1bmsKKzcxNzIyIDc3OTBiODVlNzAwOWJlN2FkMjFhMTVjZjlmOGU0N2U0ODVmYzdjOGMgbGVnYWN5LXRydW5rCis3MTcyMyAyODY0NWE5NjEwMDQyNDA2YTY1ZTk1OWM5ZjUwMDkxNGVlOGY2ZTc3IHB5M2sKKzcxNzI0IGMyNzdjZjQxOTNkMTFjNzY5OTk0ZmQyZmQ2ODVhY2VlMDhkZDYwZTUgcHkzaworNzE3MjUgM2U4ZGM1OWQ2NGRlNDQ0MDM2NDVjMmVkYzQ0ZDY2ZTc5NjI5NmZmNiBsZWdhY3ktdHJ1bmsKKzcxNzI2IDMyOWNiMDJmMThlNmYyMmU0ZTdlZDUwM2ZjZjg0YzdiYjQ2MDc0MmIgcmVsZWFzZTI2LW1haW50Cis3MTcyNyA2ZWMzZGYzNzVmNWE4MjY2NzYzZjQ3OTYyYTgzMDAxMzMzZDFiNzNlIHB5M2sKKzcxNzI4IGNmMjFlOWQyOTA2MmYxNmE3NTgyZjAxMWE5NzRmMmZlNWJiM2JhMzIgcmVsZWFzZTMwLW1haW50Cis3MTcyOSA3MmZmNDRjMDUyOTViOTU1YzQ2M2NlYTJlMmE0ZTJhNTgzZGNiMzhjIGxlZ2FjeS10cnVuaworNzE3MzAgYTZkMzI0MTM2ZTAxNDViMjk1OGY5YWFjZTIxNTU4NjdiYTJkMTc3ZiByZWxlYXNlMzAtbWFpbnQKKzcxNzMxIGE4MmI1M2RiYzY1NjU1ZGFhZTE1ZDUyYzRkZWI3YzVjOTA2NzgyOTAgcHkzaworNzE3MzIgMWJjZDU1ZGIzNWRlZDYxODlmZWI4YzVhNTg3YjlhOTkwNzlmMWI1ZiByZWxlYXNlMzAtbWFpbnQKKzcxNzMzIGNmNjIyMmNhMGJjYzA2ZDYzYzU1NjlmY2YyMjMxYWUwNDNiZDc3OTQgcHkzaworNzE3MzQgNTg5MTVmYzU3NmFhY2UzZWNhM2YwMzFhZWM4NTk4NDE2MjZmOGYwYSBsZWdhY3ktdHJ1bmsKKzcxNzM1IGFkYzc3YTVkNmE5NjI2ZTY5NDI5MGU3ZjhhMGZlNDA1YTg1ZTcyMTMgcmVsZWFzZTI2LW1haW50Cis3MTczNiBkNzRiOWE4ZTY2ZjYwMzZjMTZiNDRkM2NmMzczNmQ5YTQzYzAyZmI1IHB5M2sKKzcxNzM3IGQ5OTUwM2I2ZjIzOGFlYzI2MjgzOTZlZmFlNWM0OTZhMzM0ZjQzY2YgcHkzaworNzE3MzggNzU1NzcxNmI2YjFjYjk0YmU5NzQ5YjBhYWM3YTRlMGUyMDNlMWI5ZSBsZWdhY3ktdHJ1bmsKKzcxNzM5IDQ4YmY0MmMyZmY3YTgwMzhhYjkwMzRkNGYxZGUzYmQzNWI4YjBiMTcgbGVnYWN5LXRydW5rCis3MTc0MCA3ZDJjODIyMjY5Yzc0Y2Y0NDg0ZTAxYjY2MTE5M2YxNWFhOGE3Y2ZlIGxlZ2FjeS10cnVuaworNzE3NDEgNDFhNzVkZDlkZjc4ZjQ1N2RlYThmZmQ0MjAyMWZhYzc3ZTExMDYwMCBweTNrCis3MTc0MiBiN2I4ZmJkMDEwY2E5YjAyNTA2ZTY1MjE4M2Y2NzhiM2JlMzgzNmU0IHB5M2sKKzcxNzQzIGQ1MGQ0ZjA5Y2RmN2Q3NTJkNzRmMGI4NmZmYTFiMzJhYmQ1NzVmMzIgbGVnYWN5LXRydW5rCis3MTc0NCBiN2M0MTJkMWE1Y2M0NmI4ZTY5MzdlMTdlM2EyZjA1YzE5NDkwYTllIHJlbGVhc2UyNi1tYWludAorNzE3NDUgNjA3MjllZTg0ODIyNTg0NjI3ZWRjZjNlZjhiMWE2NDdjMDAyMmVmMSBweTNrCis3MTc0NiBlMmM3ODVmZjBhNTBmZjA1NWFmMmVkZWQwODFlMjk3NzljNzE2OGQ4IHJlbGVhc2UzMC1tYWludAorNzE3NDcgNDRlZjhhNzNhOGI3YmNjYzI5MjgyMjdjZTIzY2M2NTJkNjJhMzdmZiBweTNrCis3MTc0OCAxNzM3YWExNTEzMTA4Njc4M2Y3ODM0ZWI5ZmIwZWIyZDEwZWE3N2MwIHJlbGVhc2UzMC1tYWludAorNzE3NDkgM2YyOTIwYWE5MTBjYjM5NDMwZTgzZmVlNDYxZTJhZDUzMTM0MGQ2NSByZWxlYXNlMzAtbWFpbnQKKzcxNzUwIDEzODA3NzAzYWZkMGY1ODM0OWUzODIzOGM4MjQyZjA4NGI3Y2QzYWQgbGVnYWN5LXRydW5rCis3MTc1MSAwMzk3NmExMDg3MDA4M2RjOTVjOTc5ZTdjNjE1YWFiZGE0NDYyYjJmIHJlbGVhc2UyNi1tYWludAorNzE3NTIgMGIzYjhlZDM2MjI0NjQwOTVlNWNjNDdlMjI1NTExYzc2ZDM0NWRkNyBweTNrCis3MTc1MyAyYjE3Yzk5Njg5ODFiMjFjZmRmNjEwNGU0NTUyZDE0MGQ1ZjdlNDg4IHJlbGVhc2UzMC1tYWludAorNzE3NTQgNDUyN2MxNTJkYWE5MzljMmVlNWU0YTZiMWU1MDVkNTAwZmNmOTc1YiBweTNrCis3MTc1NSAyMjc5NjdmZTQ0YTQyNmM5NDQ0MjE1NThjOTFiMDdkZjM1ODVkM2U0IHJlbGVhc2UzMC1tYWludAorNzE3NTYgNDJiZjU2ZTM0ODI1OTZiYTUwNzJiMWU1YjY1NmMwODg5NzdiYTZmNiByZWxlYXNlMjYtbWFpbnQKKzcxNzU3IDg1MzNjZmMyNDIwYWRjMTM2NmE5NDA0MjBjMTdmZGRhNzc0NzM2MzEgcHkzaworNzE3NTggMDRmZmU2YjYxNzA5MTA2NzJmMDVmZGEyYzEzZWZkYTVkNjI0YzBlMCBsZWdhY3ktdHJ1bmsKKzcxNzU5IGNkYjYwMTQ0MWQwNDU1MjFkOGVkMGEyMjk2YjcyNzEzZjc5NWFkZGIgbGVnYWN5LXRydW5rCis3MTc2MCBhMmQ0MjMxMDE0MmJlODEzOGVhNjIyZGRhZmYzNGU4MGQyNWY5NWJlIHJlbGVhc2UyNi1tYWludAorNzE3NjEgZTQyMDIwYTUyMjBhZTk5YjRhZmZlMGVlYjU2ZjYzNTU5YzExMGE3YSBweTNrCis3MTc2MiAwNTM3NWMyZTA3NDI0MDA2YTU1ZjE5YzUzZmFhMGRlMGY1YTdiMTg2IHB5M2sKKzcxNzYzIDgwOTFlMDU2NmZlMzIwZjJjNWY4MTM0MTY1YzIwYzU4Y2RjODNiYWIgcmVsZWFzZTMwLW1haW50Cis3MTc2NCAzNzA5M2U5NGFmYzc3OGM5MGI0YmE3NTAzYjhiMGNhN2VmZmNhNmY2IHJlbGVhc2UzMC1tYWludAorNzE3NjUgOTZlZWQ3Mzg3Y2VhMzg5MGViNTliNmM1MTFjZDE3NmQ2NTg3ZTM0ZSByZWxlYXNlMjYtbWFpbnQKKzcxNzY2IDg3ZmI3MjEzMmQ2YmRmYTExNTcxOTY3YWJiNGI3Mjg5ZDM2MDAzZTEgbGVnYWN5LXRydW5rCis3MTc2NyAxMzc4MWIwZjc0NWE2MTg5MGU0ZDA5ZTZiMjRlYTJmOTdiODdkNTdkIHJlbGVhc2UyNi1tYWludAorNzE3NjggYWE1NDRhNTQ3NTNiYThmNjgyMGU3NzIxMzQ4YTY2NmQ3ZDM5MTU4MyBweTNrCis3MTc2OSBiZDE4OGZmMzQyYTRjNjg5MWUyYzBlNzI5N2UyZTNmNDcyMWVkMzgyIHJlbGVhc2UzMC1tYWludAorNzE3NzAgNzNhYTM3NTZjMGIyNmIwMTEzOTI2NTgyNDRiNzRmNWMxMzQxZmU4ZSByZWxlYXNlMjYtbWFpbnQKKzcxNzcxIDQ1NWY0MGQxNzM4ZThjMDY5MjZhOWI3YWU0OTc2MmNhNTAwNWY5M2MgbGVnYWN5LXRydW5rCis3MTc3MiA4ZjI4Y2U3YjhlNjlhMTQxNTE5NWI0YzA1YmVmMzlmNGNmOGQ1ZjA5IGxlZ2FjeS10cnVuaworNzE3NzMgNDEyOTNmYTZmMGRkNDNhNjhmODk4NjU2OWRhYTQ1ZmNkOTNlMTVhZiBweTNrCis3MTc3NCBkMGIxMzM2M2FhMjE0NTZhZTAwYTc3ODBkZTM1YmQ0ZmRkYWExZmE1IHJlbGVhc2UyNi1tYWludAorNzE3NzUgMjdhYzhjODc0MWNkNTkyYjkwZGVmZWI4YTA5NzEwY2U2ZmQ0YTg1NyByZWxlYXNlMzAtbWFpbnQKKzcxNzc2IGNlZTFmYzA3NjM0NDNiNGU4N2JmMWE3M2EzNDhhODJjNzZiZjgzZjYgbGVnYWN5LXRydW5rCis3MTc3NyA5Y2VhZTI4YWIyNzA0MDExYTFlOTBiODM4NjU0NjdjOWJiNjE3NTcxIHJlbGVhc2UyNi1tYWludAorNzE3NzggZGVkNDY3MzUyNTUzNzlhZDhhNDRmYTRjOGNiZmY5ZTNlZjBkMDE5NCBweTNrCis3MTc3OSA5M2M5MjlhMmZhYzdkNzIyOWVmYzJhZTc0N2FkMGI3NTE3MTkyZThiIHB5M2sKKzcxNzgwIGM4YTc1NzEwYWIyNTAxNzMwZGNhMzAzZTdhMjRmNGY4ODMwZGZmNzEgbGVnYWN5LXRydW5rCis3MTc4MSA3MmM5OGI0YmYwYjU2ODE5MmMzN2I1MGY1ZjQ5ZDgyYjc3M2M5NzY2IHB5M2sKKzcxNzgyIDY5NmRkMjI4MTg0MTU2MWVmZjRlYzA3MmQ3YTE3ZmNjZDNjZjZjZDcgcHkzaworNzE3ODMgZWQzZjUxZjJhYmZiYjcyOWNhYzYxMTJiNGFjMDUzYjEwMDZkYWNhYyBweTNrCis3MTc4NCBhNjhlMmRjNWY1MTQ0ZDIyZDg4OWRhYjczYjQwOTYzODU0Zjk2YTlkIHJlbGVhc2UzMC1tYWludAorNzE3ODUgZGU2M2I3ZTg1MDBkYzJmOTA4NTRjZDM1OTMzNDY4MDE1YzgxYjlmMSBsZWdhY3ktdHJ1bmsKKzcxNzg2IGY0NGQ0MmExMWI5YjQzYTNjZDg5MDRjMjk3MmQ5OTFiMDJhOGFmZjcgbGVnYWN5LXRydW5rCis3MTc4NyA3NzMzNmQ4MmFiOTUwYjY4YjllNWMyYThmODU5YzExMDA3NDZhZjIyIGxlZ2FjeS10cnVuaworNzE3ODggYzMwNjgxYzY2YjNmZWYyNjU0YjUyNGRjMjc2NjNmNDI1Mzk4YzgwYSBsZWdhY3ktdHJ1bmsKKzcxNzg5IGMyZTRhN2FkMDVmMmI0NzU5Njg1ZDdiZmZmZjA2ZjQyZTQyZTdhNTYgcmVsZWFzZTI2LW1haW50Cis3MTc5MCA0MTRiYThlZmM4MDQ2YWU0YWVlZTUxNjA2N2JhODc5ODhmNTI0NDIyIHB5M2sKKzcxNzkxIDJiMDU3ZDJiOThlYjA3NGYyYzExZjJjMWUzN2U4NmQ5NTBkNTBjNWEgcmVsZWFzZTMwLW1haW50Cis3MTc5MiBiMGZlYTNhZTNiNmVmNTYyMGQ5NjgzMjQ3OTgwZmM0ZTliMzZjZDRkIHB5M2sKKzcxNzk0IGY5ZjIzZjM2YzM2Y2E4ZjQxZDBlYzVlNzdhOWQ5ZDQ1ZmIxY2E2ZTUgbGVnYWN5LXRydW5rCis3MTc5NSA3OGJmZDQ0ODE3NjMzMWM4YjIzZjNmN2Y5OWZhMDFkMjk1MTJjMjYzIHJlbGVhc2UyNi1tYWludAorNzE3OTYgYzVlMGQ5YmVlYmY5MjMwODUzMDY3MDE1YWM5MTcxNTcyMWM4MTlhOSBsZWdhY3ktdHJ1bmsKKzcxNzk3IDYxOGQyZTNhY2E2MmViZGExZmU4MjZjMzkyNDVjOWY2ZmMxNDg4ZTYgcmVsZWFzZTI2LW1haW50Cis3MTc5OCA2MTE1MThkNjgwZGVjMjRhYmQyYmRmZWQ2YWY0MDQ3MmJiNDI3YWY5IHB5M2sKKzcxNzk5IGU5NTk1Y2I1Yzc4NjBiYWViYTAzYjU1MjBkYmI2ODE5NzA4MTE2NWUgbGVnYWN5LXRydW5rCis3MTgwMCAzMzBkYjk1NGU1OTM0ZTA5YjJiYjY0OTI3NmQ2NTc3ZmE1ZTU2ZDIwIHJlbGVhc2UyNi1tYWludAorNzE4MDEgYjVkZjA5NGQ4OTQxZDJkYTQ4OTZlYzllODA4NmY0YTk5YjYwMzRhOSBweTNrCis3MTgwMiA0NGE4YTUyNWVjZWI4MDY3Zjg0MjExZWMwOGY0ZTczNDg2NTk4ZWFiIGxlZ2FjeS10cnVuaworNzE4MDMgNmY0MmRlNzJjMmRjZTg4Y2ExMGQ2M2E1ODQwNjk2NmJkZDFlY2MyYyByZWxlYXNlMzAtbWFpbnQKKzcxODA0IDUxM2RjNmZhNjFjMGI3MGE2YjVkZjFmYzY1MGFjNWU4NzIzZmFlMjIgcHkzaworNzE4MDUgYzZlOGM2NTcxNTg4NzZmN2YyMTM5OGIyY2I0NTNhNTdkMjUxZGUwNCByZWxlYXNlMzAtbWFpbnQKKzcxODA2IDliZjRiM2ViMDQ0NzI2OTkxMzUzOGU2N2Q0Y2UxMzEwM2ZkNDNkNjggcHkzaworNzE4MDcgMjRkODFmY2IwZTMzMzVmMmUyYTRlMmVhNDJkNTg5NDBlMWQ1MTc2MSByZWxlYXNlMzAtbWFpbnQKKzcxODA4IDg1NTk3ZTU1NjY4Y2QwYzkzOGIyZTZiZjQ5MWEzMTMxNDNlOGM4OTUgbGVnYWN5LXRydW5rCis3MTgwOSAxZjFlY2E2ODE2NzVhMzllNWExMzIyMGJlZjNmYzAzNWMyM2M3MDk0IHJlbGVhc2UyNi1tYWludAorNzE4MTAgMWExMjkxMzg0OTI4OTMyZGY1M2I3MjJkZTA2YTBiMDU0MzIzNmJkMiBweTNrCis3MTgxMiAyZDA5YmNmNzAzOTU1NTg0NWU0NDJhNWM1ODgxNWMzYmJiN2YyZGEzIGxlZ2FjeS10cnVuaworNzE4MTQgMTcwMDU1ZDdiNDk0MmIyM2I2OWJiMmY4MzZhN2U5NmYyOTNmNWVkNiBsZWdhY3ktdHJ1bmsKKzcxODE1IGZmOWVkY2IzNjg3OGVlODYxZTkzY2FkN2JhY2U5ZmY2YWUyY2E1M2UgbGVnYWN5LXRydW5rCis3MTgxNiA2MjkyYmQyNjMyZTJiZGQ3ZDU4ZGVmMDdhZjliN2MyNGUxNTYxOWEwIGxlZ2FjeS10cnVuaworNzE4MTcgNDFiYzMzZWUxNzMwNGZhNmIxZWJiNjNhNDJiMTVjOGM2NTFmN2RlZSBsZWdhY3ktdHJ1bmsKKzcxODE4IDMzMDExNTEzNzQxNDc1Y2RkNzIwNmRkM2I1YmY4OTlkZWMxOTY0NzIgcHkzaworNzE4MTkgZDI5NTI1NGQ4NGI3ZjY1ZmU3ZjYxYTdhN2Q1YmJhNWUxMDdhOWQ1ZiByZWxlYXNlMzAtbWFpbnQKKzcxODIwIDViYmQyZTZkNjEyNjIwZTRmZWVlMzEyMGUxZDA3ZTU5MDVjNjM3MzkgcHkzaworNzE4MjEgYTdjNGEzN2M5ZGYwNzcxNjhkNzNlYWNhZTY4ZGNiMWE4NTBiNTA0MSByZWxlYXNlMzAtbWFpbnQKKzcxODIyIDgyOTViN2IyOTRiZDYyZGJiZWRkM2ZjMWQyZGEzMzM5ZGNmY2UzODkgcHkzaworNzE4MjMgODMwMGIyNzRmZGQzY2NmOGQyMTgxMTU3YzJhODgwNzlhYzE0OWVkOSBweTNrCis3MTgyNCAzMzMxMmI5MTA3NzM0MDFkZDUzNTRiZDljZGU3NjhiNTI3ODIwOGI1IGxlZ2FjeS10cnVuaworNzE4MjUgZmRlMDE1YTJjOGIzZWJlMjQ5NmI0NTZhMWRiZjE5OGNmNWUwNTkwOCByZWxlYXNlMjYtbWFpbnQKKzcxODI2IDMyYjI0NzMwMGZmOWQzMjM5MTkxYzE4YzNlNTQ5MGQ5ZDFiYTQ2ZjcgcHkzaworNzE4MjcgMDc2MWVlMjhiNmVkNjI0MDJhZjBlYmY1NmI1ZjU2NmIzMWI1YTUwZiBsZWdhY3ktdHJ1bmsKKzcxODI4IGQ1NTczMjBkZTg1NmNiYjIxMzk0ZDdlY2E1MTNiYWNlNWYzMjZkZDUgcmVsZWFzZTI2LW1haW50Cis3MTgyOSAwNmRiMWQ5ZDI1NWZmN2M3ZDQ1ZDQ2M2E1YjYzNmYwN2JiOGE2YTIyIHB5M2sKKzcxODMwIDFmYzliNjUwODcyMzIyOTI1MzY0NDAzZDkyYzY0OGYwOTJhZWUwYTYgcHkzaworNzE4MzEgZWM4NDJjYzYxMGU2ZjE0ZjNlMTJhMjVkMmYwZDQ5M2NlYzRmN2UyOCByZWxlYXNlMzAtbWFpbnQKKzcxODMyIDExNDA1OWMyNjc5NGYxYWQ3YzQyZTFjMTU5NjZlOTg1OTdhNDY2ZjggbGVnYWN5LXRydW5rCis3MTgzMyBhMWE2ZjVkMmIzZGNiNWU1MjM5YThlNDRlYTRjYTFiNzM0MmQwNjMyIHJlbGVhc2UyNi1tYWludAorNzE4MzQgNTlhMWZiOTM5NTc3NGNlYjNiNzhhM2YwYWE1ZTU5NjllODM3OTczYiBweTNrCis3MTgzNSA0NmEzMmQ0NDYzYzgzYTZmYmQwMjdlYjU0MzJlYjJjZWJmNzQ0ODU4IHJlbGVhc2UzMC1tYWludAorNzE4MzcgMTMzYzY2MDI3ZjMzZTRjMmY2MzExMzg5NWRjYjg5ZjFkOWYzODBkZCBsZWdhY3ktdHJ1bmsKKzcxODM4IDMyMjI2Nzc2Zjg2NjEzNDY4Mjg5MjI4Y2QwMjAxMmYxMWM1MDExZWIgbGVnYWN5LXRydW5rCis3MTgzOSA1NGI0NDg5ZjFjMjg0ZDYxMjc1NzBjZDdjNmMyNzc3MjkzZDljYmQ0IHB5M2sKKzcxODQwIGZhNGYxOGVkZTI2MGJhNzkyMzlmZmRmY2YzNWRiMDQzOGQ3ZGE4NmEgcmVsZWFzZTI2LW1haW50Cis3MTg0MSBhNjVlM2MwNzI2MGU5ZWIwNzgxZDU1YWRkZDE0ODcwMjhjOWNiMTE5IHJlbGVhc2UzMC1tYWludAorNzE4NDIgMTE2Nzg3ZjliOWZjZGJmODEyMTczOThjMTFhNTRhNTgyNTA2ZTJhNyBsZWdhY3ktdHJ1bmsKKzcxODQzIDYzY2I1YzkxY2UyMTQ4YzVkMDVmY2RhMmE3Mjc2OGFlM2RiODZhOTAgcHkzaworNzE4NDQgZmY3YjRlNTgyYzQ5MDgzZjcxYjQyYjlkNzE0NmRiYTIyNTJjYjAxMSBweTNrCis3MTg0NSBkODgwMmIwNTU0NzQzMDI5ZTE1NDg2NjFhY2NjMzkyZDBhMzcyZGQ5IHJlbGVhc2UzMC1tYWludAorNzE4NDYgNDNlNDZlNGUwMmYwMzYwYjMzZDczZjBhODYwMTkwNGUzOGE1NWFlYiBweTNrCis3MTg0NyBmYmIxZGYyNTQxYzM2YTA5Y2U5YmU1NzdjYWI2MDkzNDJhZDMzNmYwIGxlZ2FjeS10cnVuaworNzE4NDggOTY5MWU3MzQ1OTY0ZGExOWRmNTJmYTg4OTI3NjJmMGZjM2FjYTNkNiBweTNrCis3MTg0OSAwOTY4OTIxMmIzZWIyODE5NGFhODExODY5Yzc4NjAwMGJmMjA0NWZjIHJlbGVhc2UzMC1tYWludAorNzE4NTAgMmVmNTRlOGE0NGRkNDg5OWVkOTFkYTVlZTZkYmUzZDA5NDNlMDk3NSBweTNrCis3MTg1MSAwMGE5Mjc4MTVkY2Q2MmQ0Njk0OGJjNDhjM2ZkYTIzZjVhMGE0MTk4IHJlbGVhc2UyNi1tYWludAorNzE4NTMgZDUxZTRmNjJiYzhjMDQ1NThkMjA4YWY5Y2Q0MzA0NTE5M2UyOGRiYSBsZWdhY3ktdHJ1bmsKKzcxODU0IDAyZjNmODVlMzkzNmI4YzAwMDhlYWRlMzMzNmM3MTBiYzRlNjE2ZWYgcHkzaworNzE4NTUgYzYyY2MyYTU3NjRiNjM0MjJlYjVkMjZiMzQ1ZWY5MTAxOTZlMWQzNCBweTNrCis3MTg1NiBiNWUyYmNiYmZhNzQwMmMyNjk0ODRkZTc4NjdkOTA5YzFkZDlhYzczIHJlbGVhc2UzMC1tYWludAorNzE4NTcgMGY1NWUwOWMxNmI1NjgwNjBhYzFiMmJhMDM2NWNmZTU1ZmZjZWZkMyBweTNrCis3MTg1OCAyOThmMjhhZmYxOGQyMzk0MGI5OWNmYjgwODI2YTIzMWQyNDAxN2RjIHB5M2sKKzcxODU5IGIyZmNiM2YyMjRkZTJmZTNhZjA3YjJjNDdhNTk2YWQwM2JjZWZiMzQgcmVsZWFzZTMwLW1haW50Cis3MTg2MCAzMTg5NTE4OTBhYmI1N2MzOTUzMDQ2MjliZDUxYjIxNTE2MjZiYmZlIGxlZ2FjeS10cnVuaworNzE4NjEgNjQyOTEwYTAxZDdmMzkwMGYwMGQ0YzNkNGMyMmZiM2ZmZmZlNzE0OSByZWxlYXNlMjYtbWFpbnQKKzcxODYyIDJlMzcxOTBmOGVhN2Q0OWNhY2I4OTZhODdkMjc3ZWI3YTdjM2JlOGIgcHkzaworNzE4NjMgZmRiMmJlNDcxYTNmZGJkMDM2OGQwYzAwNjRlMjRkYzM4OTVhYTUwYSByZWxlYXNlMzAtbWFpbnQKKzcxODY5IDVmZDBkYTJhOTc3OGUxNjhmZjVjNzRjYjQ5ZjVlNTdjZWVhOTRjNjcgbGVnYWN5LXRydW5rCis3MTg3MCBhMzRkOTQ1YzA3ZWRiM2VjYmU4ZjdmMDA1MGM4YTRlM2RlNDAzN2JkIHB5M2sKKzcxODcxIDgwZGE1MjQ2NmZlODdkZTViNjMzMzU5NTE1MGM0NTA1OWYzMzhjMmMgcmVsZWFzZTI2LW1haW50Cis3MTg3MiBhNWVjNTdlODVmNjVjMThjYzMwMzY1YmUyMzBmNjQzNTYyMzJhNGExIHJlbGVhc2UzMC1tYWludAorNzE4NzMgOWY5NDEyMTkyNDAyZDlmNTkxNzczZDY4NDdhNWY1OTkwODNkZGMwZCBsZWdhY3ktdHJ1bmsKKzcxODc0IDk1NTZlOTNmMmFiYjQ5OWI2ZjM4MzllZmVmYWYxZWU4NzM4NmNhYTYgbGVnYWN5LXRydW5rCis3MTg3NSA1YTQ2YTgyMjA2ZTdiYmYzOTg0NWFmNTI5ZWUzNWMwZGUxOTY4MGM3IGxlZ2FjeS10cnVuaworNzE4NzYgYjM2NmE0OTZkNDk5ZWIxOTE3NzBiYmVkNmNjZDAxOTM3ODViMGI3YSByZWxlYXNlMjYtbWFpbnQKKzcxODc4IDg4YTc4ODdkN2ZkNGFmOTZjMzg4YjMyMzE3M2FkYzkzOGI5N2E4MDAgbGVnYWN5LXRydW5rCis3MTg3OSBjZTQ3ZGVlMWI1NDQyM2NhY2EyYjg0NTA1OTAwMDAyZmE3Mzk5YWVjIHB5M2sKKzcxODgwIGM1NzEwOGRlZjNlM2JlOTk3YjQ2NGQ1NTA3NGUyYzJiNjRjOGMxMTIgcmVsZWFzZTI2LW1haW50Cis3MTg4MSBkMzUzMzdmNjUwMTU5OTljY2MzMzE5MGIzOWJiNTVmNjQ1NWUxODJlIHB5M2sKKzcxODgyIGFkMGMyNjk3MmIyMjIxNzU5ZDI3YzE1MjNkMzA5ZGRiYjA2OWU2ZmUgbGVnYWN5LXRydW5rCis3MTg4NCBhZDAzYmI1ZDBmN2RiYmM1Y2ZjNTU0ODNhMTA3YjI0N2I1MjZmNmJhIGxlZ2FjeS10cnVuaworNzE4ODUgNmRjOTgwNWNiMGZhOTc3OWFkYTliZjZmZmU1NWFmZTBkMGRmYzA4MyByZWxlYXNlMzAtbWFpbnQKKzcxODg2IDNjYzVmYzMzMzJmNmFiY2NiOTkzMTFiNTE5NzMzNWZlOGU3M2ZkMmYgcHkzaworNzE4ODcgODA2YmM0NjUxYjlkZTM1ZWU2MGZlNjZjNDM0MWJhM2JkMWY2NmJjYiByZWxlYXNlMjYtbWFpbnQKKzcxODg4IGNhZGI2OWUxZGM5YTYyZmNiNDc0YzMxNTZmMzhmYTg3MTQ3NTM5MmEgcmVsZWFzZTMwLW1haW50Cis3MTg4OSAxODM3ZThlMjI5Mjc3NzExMTUzYzRhZTAyZTBhZDRkMzM3YWJiMDgyIHJlbGVhc2UzMC1tYWludAorNzE4OTAgMDVkZTg2NDA3N2JhOWI4M2U4OWNmOTU4NzNlZGU3NTE3NTQ5NjdlMCBsZWdhY3ktdHJ1bmsKKzcxODkxIDU4N2M4ZTM5MTdjNmE4MjVmMjkwOGY1OWY4NTg2NTMwNzY3MmEyYWYgcmVsZWFzZTI2LW1haW50Cis3MTg5MiBkM2ZlNmU5NjQ4NGM5N2NkNGUwMDc0MWEzNzdmMjVjNDJiNmQ1NTZjIHJlbGVhc2UzMC1tYWludAorNzE4OTMgZWFiZTZjZjk3MzRjODMyYjI5NmFmOGQzM2E5NjJlN2RhN2I0NjE2NiBsZWdhY3ktdHJ1bmsKKzcxODk0IGEyZWY0ZGQ1NWNmMjU2MTk0YmY4Y2RmNGNmNTk5YWFlMzQ2MmZkNmYgbGVnYWN5LXRydW5rCis3MTg5NSBmMDhmNzc2MDgyZWNjYjNhN2UzYzEzOGQwZGZhMDFmYzViZmMzNjI3IHJlbGVhc2UyNi1tYWludAorNzE4OTYgZmYyOWU5NjZhYmI2NWE5MjA2MmI4OWUyNjhmNDc1Njg2NDA4MmYwYyBweTNrCis3MTg5NyAyZjhlNTM1ZjlhOWJmYTQ0MWE3MzFiMzhjYTYwNDUzM2M1OTI3MGRhIHJlbGVhc2UzMC1tYWludAorNzE4OTggYmI4NzZhMTMzYmRmM2E3YTlkZDU4YzI3ZjhkNzcyNjAzODgxZmFhNCBsZWdhY3ktdHJ1bmsKKzcxODk5IDY3NmRhYTFlZjIyMzcxMjllMzY4MGUwNDI2MjJiYWZmZTIwZDJjMzEgbGVnYWN5LXRydW5rCis3MTkwMCAzMDVmZmFkZjgzMTViM2I1OGQzMzYwMWE1OGNkM2JhN2QzNmE3ZTRlIGxlZ2FjeS10cnVuaworNzE5MDEgZGRjYzJhNmZkZTNhZTNiOTczNjEzNDRlMjUwYjk5ZTVlOGFmYmUwNCBsZWdhY3ktdHJ1bmsKKzcxOTAyIGM3NTZmMzBiYzQyYTdlNjRjMDRjNTZmODdiNzgwNTFkZTQ3MDllNGQgbGVnYWN5LXRydW5rCis3MTkwMyA4NTI0NmU0ZTE0MjgzZTZlMTlmMzQyYzA1ZDA4YWNlMDgyYmEzMDM3IGxlZ2FjeS10cnVuaworNzE5MDQgMTQ2N2NiYzIyM2U2MDA3OTkyNGU3MjFhY2VkODYzNzlhMmViOTJiMiBsZWdhY3ktdHJ1bmsKKzcxOTA2IDI0ODBlYTc1MDY4ZmEyMWU0ZDExYTNiM2IxZWY5YzZlMTZiMjRkYjYgbGVnYWN5LXRydW5rCis3MTkwNyA3MWI3YjQ5MjE1MTIxZjU4ZDA5MWNlZTZlNTcwZmUwMTUwNWE2NGFlIHB5M2sKKzcxOTA4IDRhZjA2YjJiYzNjYzI1ZWE2ZDNmYmIyZjdhZWJkYjA1YTBiZGQ4YzMgcmVsZWFzZTI2LW1haW50Cis3MTkwOSBjNmJmNTJlMTUzYjRhM2QyM2ExMmU1MTYwOTI2Mjc1MjBmNGQ2YzgxIHJlbGVhc2UyNi1tYWludAorNzE5MTAgODVjYzk1MTJiNjBjNTM3ODE2OWExMzIzZGQ1OTFkOTUxODM1ODQ2MSBsZWdhY3ktdHJ1bmsKKzcxOTExIDdjZDIzYjJlYWE5M2JlZGUyNThlNjRhYmU3N2M4OGYyMjY4MTlmOWEgcmVsZWFzZTI2LW1haW50Cis3MTkxMiAwODNjZWEwZjI3YTJjMjEzYTc0NTEzZTM5ZGMyMWY5ZTM1YWU0OGFmIHB5M2sKKzcxOTEzIDAwNmE0MGI1ZTBjM2I1ZjllZjJlYWY0ZGI5ODE3M2MxNDAxM2IwYTQgcmVsZWFzZTMwLW1haW50Cis3MTkxNCAxNzlmNDU5M2JkM2VkMDgxZmIzZTc3MGMzMzI3YTQxYjQzOGVjYjI1IGxlZ2FjeS10cnVuaworNzE5MTUgM2QwN2M5YjIzOTUxNDJiMDJhNTQyNDc5MTM5MGZjYzQ4MDhkYzJmNSBsZWdhY3ktdHJ1bmsKKzcxOTE2IGY4ODMwNmM4MjY1ZTNkZGMwYjI5OGViYTI1YTU1NDgxNTM3NmRhZGEgbGVnYWN5LXRydW5rCis3MTkxNyA2MmIzMTg1MzU5ZTM2NWEzNzhjZmJkNjlhOGM2N2U4Y2VhZTFhNGQ1IGxlZ2FjeS10cnVuaworNzE5MTggM2I0OWQzMGNhNTQxM2JjMDljNzM4YWE3Y2Y2ODQzMDEzZjZkYzA3NyBsZWdhY3ktdHJ1bmsKKzcxOTE5IDJlMjk3YjFlYzkzNTYwZjEzMjBhY2RkZTk3ZmEyMGI4MzdkYmZiMjEgbGVnYWN5LXRydW5rCis3MTkyMCA2OTRkYWY4Y2RmOTkzOGJmMmJlYThjMGIzNzg3NmQyYWMyMzIxMWJmIGxlZ2FjeS10cnVuaworNzE5MjEgNjI1NWE3MmE0YzFlOWVhYmI5YjBlNGVhMzBiOTc5ZDA1NTRhYWI3NSBsZWdhY3ktdHJ1bmsKKzcxOTIyIDhmYmEyNTg0ZjM4YmVhMjMzNWZkYTA4ZGRmMTQ2MmMyMmUyYmZmYjYgbGVnYWN5LXRydW5rCis3MTkyMyA2MzI4NjI0MmRkOWRiMTQ0NWU0ZjkyMzA1Mjk5YWI0NzAyMWU2NmViIGxlZ2FjeS10cnVuaworNzE5MjQgY2EyZjFlMzRmNTYyZDFiMjkxNmNhNWIwYmFhN2MxYmZhYTU5NGYyNCBweTNrCis3MTkyNSA3YmIxYTRjZDVlZTViODZjNmNmZDJmZGUxNWM5NzdiNmM0YjM4OTkxIGxlZ2FjeS10cnVuaworNzE5MjYgZWRkOGYwZDUyYjM4ZTJlNTBjZDYwMjMwMTlhMWQ1ZDVjNjdmYjZiZSBsZWdhY3ktdHJ1bmsKKzcxOTI3IDQ1NmIyYTA2ZDAxNzAwZjcwNjVkYmExODU1MDQ5ZDhmNmMwYzZlMmEgbGVnYWN5LXRydW5rCis3MTkyOCBjN2VhODI2ZmFkNzczNDdlZTg1MmVlOTRmMzJhNzA4ZWRjYzgyNmY1IGxlZ2FjeS10cnVuaworNzE5MjkgMjVjMjBhNzdmMzczM2Q5NDAwZDkxYjM1YzA3OGQwZjA5ODhiYTM3YSBsZWdhY3ktdHJ1bmsKKzcxOTMwIDBhZDQxNTA5NGEwNTA2MThkODU4Mzc5ZDI2M2VkZDZkMzgzNTc2MWQgcHkzaworNzE5MzEgMTI3OTE4MTI3ODhkZmU5ZWE1YzUzZjRiMDIxODM1MmM0OGEyMzcyYyBsZWdhY3ktdHJ1bmsKKzcxOTMyIGVjYWNhNzE3N2Y2Njk2MWM2OTQxMmU1MGZhOTMwOGFlNmJiNGNlNDIgbGVnYWN5LXRydW5rCis3MTkzMyA0ZTVhZDU2NmJmYmI1YTkzOWIyNGViMzI0MGJjNDAwZGEzMjM5N2Y2IGxlZ2FjeS10cnVuaworNzE5MzQgYTA3YTliNzU5ZjI3YzI1NmZmM2MzNWM1YzNiMDhiYzk0ZjRjZGQzOSBsZWdhY3ktdHJ1bmsKKzcxOTM1IDljOTg2MDUwNzI2NTA0ODNlODI0YmZjNjgwZjM4NTMyNGNjZWZjOTYgcHkzaworNzE5MzYgZjExNDJkZTQzZTdkZWE4ZmRmMzcyZWZiYzBlYjE3OTAzMTc3YWViMyBweTNrCis3MTkzNyA4MWFlYjhiYzY1OWQ1NzBmNjM2MTdkMWI4MGFhMjdlZTI5YWVlMjA4IGxlZ2FjeS10cnVuaworNzE5MzggNjk0N2JjM2RkNDMzMjE2NDJmYzI4YTU1Y2NlNzFkNGY4ZTYzMmM5NiBsZWdhY3ktdHJ1bmsKKzcxOTM5IDMwYjAzZTFkZWE4YmI3MTIwODc4MWMyMGMyYWU0NjFhMWY0NTIyNzQgcmVsZWFzZTI2LW1haW50Cis3MTk0MCAyY2RkYWY4ZDNjM2UwYzk5MzEwN2UzOTQ1NjcwYWI5M2U1NTRmYzAxIHB5M2sKKzcxOTQxIGEzZDQ4YjJlOTU3ZGU5NzFjMDk1NWY5ZWIzMTE4NDI1MjUxZjgwYjEgcmVsZWFzZTMwLW1haW50Cis3MTk0MiBlZjBhYzQyNjk5MzQwYjVkODg3MTViZWY2OTE1NmU0NWYzNDRhYWMxIHJlbGVhc2UzMC1tYWludAorNzE5NDMgOTMzMjk3ZWJhYzdiYWMyMGY5YWE2MmY5YTIzY2JjMDIwYjhiNzA5MyBweTNrCis3MTk0NCA3NTAxMGNhZTA0NzkwMDc2ODgyYWYyNzliOGI0NDVmYjkzYzMzNzgwIHJlbGVhc2UzMC1tYWludAorNzE5NDcgNzJiZDQ1MGQ1MzlmMTU3ZTY3ZWI2ZTFiN2RkZTFlZjYzZTNiNDhhOCBsZWdhY3ktdHJ1bmsKKzcxOTQ4IGM5MmU5M2E1NDI5OGE4MzA0ZjFlY2UxNTRmNGQxNTlhNmFjMmM1Y2EgcmVsZWFzZTI2LW1haW50Cis3MTk0OSA4ZmRjZGYwYjUwODBlYTkyZTVhZWQ5NWQ4M2ZiYTFkMjA5ZGJjM2YyIHB5M2sKKzcxOTUwIDkxMjQzODY1NWY5MzA0MDQ4YmY4Y2I4Y2VkOTMzYWY1ZDIzYzc2Y2EgcmVsZWFzZTMwLW1haW50Cis3MTk1MiBhM2EyNDZkYTE0NGI3ZDM2YmIyYmI3ZWNmY2FhNjQyMDJlODEzMDM4IHB5M2sKKzcxOTUzIDlkYTFjZmNkMmFjZjdmNjdkMjkxMDI5NDY3ZDgxODU1M2UyYjIyODggcmVsZWFzZTMwLW1haW50Cis3MTk1NCAxMzM4MTlhZTgwZmE4YWNlMTgxNTYzYTlhMmZjMTNiNzhjMTJiYWM0IHB5M2sKKzcxOTU1IDFjMmQxMWE3ZWIyM2Y0MTIzNGVmMTQyMzJhNzVkNTBiZWYzNGFiNzIgbGVnYWN5LXRydW5rCis3MTk1NiAxNzI5MTNlMTcwMTllZDI5NjAxNTc4NGZiNjdmZmNkNzg2M2NkNDI3IGxlZ2FjeS10cnVuaworNzE5NTcgNzNiNTAyZjU3NjkwNTljMDk0NWRlMzhlMDIwNDg4MmIyMjhkM2VkOCBsZWdhY3ktdHJ1bmsKKzcxOTU4IDAwNjk0ZTBjMmU2YjJlYjMxY2JmYjE1Y2ViNDU3NDFkMjJlMzRlNTMgbGVnYWN5LXRydW5rCis3MTk1OSA1OWM0MTE0Mzc5YjM0YTdiOWNlY2ZhY2Q2MDg5MzhhYTgyNjdlNzBkIGxlZ2FjeS10cnVuaworNzE5NjAgNjQxMTBjMGFkNTMwNWU3YjcyNWZiOWI3YWYzMDJmOWRhZWRhN2VmNyBsZWdhY3ktdHJ1bmsKKzcxOTYxIGRiMDMwMTZiZjY1MzlmNDZkZDA0NjU0YjY3ZjZlOWQ0YTMxODEzMzAgbGVnYWN5LXRydW5rCis3MTk2MiBhMTVjMjhiZmJiMzhjODZiYmI2N2FmMzNkZTYzZTY1NjU2NDIxYTg3IGxlZ2FjeS10cnVuaworNzE5NjMgNzU5NjMzNzJiNzE0OWQ5NjYxNGFlZjA5NDY2OWZmYTQwY2FjNmNhMSBsZWdhY3ktdHJ1bmsKKzcxOTY0IDU5YTFiMDJkZTkwNjcxMjBmMmQ0NDA0YWI5MTQxNmY5YWFkMTA4ZTcgcmVsZWFzZTI2LW1haW50Cis3MTk2NSA3ODM1YWRhM2NkYTJjNmFiZDZiOGY1MGJlYjVkMTE0ZjAzNTg3ZDM4IHB5M2sKKzcxOTY2IDFhNWQxZDFjOTQ3OGE5NGQzOTg4NzQ4OWQ3YzhjYmUyMWI4YTc1Y2UgcmVsZWFzZTMwLW1haW50Cis3MTk2NyBmNzY1NzIxMDhkZDdhNDUyODA2ZWM1MWJmYjE3N2NlNGNiYzY5M2JiIHB5M2sKKzcxOTY4IGI0NWEzMjM1NWQzNzhjY2M4ODQxNGVmNzYzYmMwZWYxYWZkZWE1OWQgcmVsZWFzZTMwLW1haW50Cis3MTk2OSAwMWMzMzYzYTM1N2Y5ZmY3MTY4YjFkYzYyM2RjYzI3NmQ5YjE0ZTBlIGxlZ2FjeS10cnVuaworNzE5NzAgNDYzM2Y4NTM3YmI3N2M3ZjUxYzRlM2RkNjQ1ZDIxODY3YjJmYmZlZCByZWxlYXNlMjYtbWFpbnQKKzcxOTcxIDM5MTIwY2M3ZTMyMWVlODA4NjA5ZDUxODQyNTdmZmU2ZGQwOGJhMTcgcHkzaworNzE5NzIgZmI0YmIwYTM4NTZlMWIwNDkyMjA2YWQ5MTQwOTkyNDQ4N2QxMmZiYSBsZWdhY3ktdHJ1bmsKKzcxOTczIDM1NWJlYjBiZDAyYmVhMzg3ZGNiMzk3MmEwNzg2ZGVkNTZhNDc1NmEgcmVsZWFzZTI2LW1haW50Cis3MTk3NCA3MjM3NzMwNDI1ZmIzNzNmZDJiZGVhYzU0NzkxYWNmMGNkM2ExMTU1IHB5M2sKKzcxOTc1IDk1MWE2MmI4NmRlOGI5OWNlNDZkZWZiNjc5MDc3MWE0NWNhMTRhMmIgcmVsZWFzZTMwLW1haW50Cis3MTk3NiBiZmI0N2JjMWQwNTExNDQxOGFkN2FkOGE2MDZhZWFiNzhkZjNhOGYxIGxlZ2FjeS10cnVuaworNzE5NzcgZjdlY2NmNzY5YzFhZTJkZjlmNThmMGVlZTI4ODMyYWM2ODNhOTU2MSByZWxlYXNlMjYtbWFpbnQKKzcxOTc4IDc4NWVhMjk5ZmUyMzZkYjYxMzNmNDk4NzM1Y2MzODI0ODhkMmZiZTQgcHkzaworNzE5NzkgMzE2MmViMDljMmMzZGRhN2RlMmUyNDE2ZjAyOWNmMzJmMWM2M2UxNyBweTNrCis3MTk4MCAwMjFjMzlhMzdlZGY3NjE1ZGFjZjRkYTQwMjI0MWEzZTQyYTg1ZGNmIHJlbGVhc2UzMC1tYWludAorNzE5ODEgNTRlZTZmZDE4MWYyY2E3MzM1NTUyM2E1ZmU2NTQ4ZmFmYWM4YzQ1MSBweTNrCis3MTk4MyA5ZjYwZWRiYTVhZWFiZmZiNzAzNWY5MWUyOGUzYWFiMjQyMWI0OGRiIHB5M2sKKzcxOTg0IGFiZGMxNzY0ZDhlNWExYWQwMWM3ZWM4MzJlN2RhODAzNDUyNWJjMGMgbGVnYWN5LXRydW5rCis3MTk4NSAwNjg4ZThiMjQ2MzI2YTA2ODA2MWUyMTYzNWE2ZDk2ZDJmOTBlZDUzIHJlbGVhc2UyNi1tYWludAorNzE5ODYgMGIxNjc0ZjI3YjcwZmEwNGM4NTEzYzY4MmFlNDc0NzZjZDg2OWIxOCBweTNrCis3MTk4NyA1ZDRmYzE2NmEzZDQ2MTQwNjgzMDBiZWExNGE0NGVlNzAyOWIxOGM3IHB5M2sKKzcxOTg4IDQ1NmU1ODQzMDIwMjA2YzdkN2Y1M2E3Njg3MjI1ODNjYzI3NWZiZGQgcmVsZWFzZTMwLW1haW50Cis3MTk4OSBkZTFkMGY3MWUyMDliNTJiMGQyNjUyNGVhOGYyN2I4NDQxOWY0NThkIHB5M2sKKzcxOTkwIGVjYzNlYjE1NjQ4ODhjODRhNmUyNTE0ODY3ZGFlNDU1ZjY0NTYyNDIgcmVsZWFzZTMwLW1haW50Cis3MTk5MSAzODNlMzJhYjYwN2M0YWMxYmUzNzZmOWNjMzAzNGJiNTM4OGEzZTc5IHB5M2sKKzcxOTkyIGUwZDQ1ZDMyZmI4MjQ0MjY4OGY3Mzg5ZjQ2N2Y0MGJhMzRhZjcyYTAgcHkzaworNzE5OTMgMzVkNzNhOTg4MDM5ZmQxMzM2ZWYwNzk2ZWZkZDhiODc3YWRlZWMxMCByZWxlYXNlMzAtbWFpbnQKKzcxOTk0IGNhZjJiOTFlZjA2YTU5Y2Y4NDRhOWRmMjVmYTRlMTBjZDMzY2U2YjYgcHkzaworNzE5OTUgZDJjZmQzZDNiYzU0OGY0Zjk1YWY3OWVkMzEyOTE2ZjkwY2ZmNzQwMSBsZWdhY3ktdHJ1bmsKKzcxOTk2IGM0MmI3ZGQxNTUwNWNlOTgxNjFjOWVkM2RmY2JkZjA1ZDBhOWE4YzggcHkzaworNzE5OTggZDMxYmU4YzljOGEyOWJmOTFjZTc0M2I2MzIxYTUyNDQ3ZDhlMjZmZCBweTNrCis3MTk5OSAxZmNhMWM5MzI2OTYyNTE3M2VmMzk2MjZmY2IxOGM1MmI1OGNmMGE4IHB5M2sKKzcyMDAwIGZiODk5ODMzNTNhZDNjM2NmOGZkYTFhYzIwNGI0YzllZjlmNzQ0ZGUgcHkzaworNzIwMDEgZDA1OTRlN2E0NWQ2MzY5MzcyZDllNWJiOGE1YmIzYTk0YTdhNzNjMCBweTNrCis3MjAwMiA5OGFhNjMxZGFjMmJjZDAxZGM2ZDIyZmZjZTA3ZTEzNmU3YTdjNzViIHB5M2sKKzcyMDAzIDU1M2NhZjZiYWU0N2UxMGFkYTk0NWY1NDg1NzhkY2MwODIyZmVmMDAgcHkzaworNzIwMDQgOTczZDI0ZjQ0YjA3ZjYwODg2MWZhNjU0NTMzNWRlNDQzYTEwNzcyOCBsZWdhY3ktdHJ1bmsKKzcyMDA1IDI5M2FkYTFkYmZkYWRlMjQ1M2RhYWYyMDYxN2JlNzFmNWEwN2I0NmEgcmVsZWFzZTI2LW1haW50Cis3MjAwNiAxNzU0MGExNjQ3OTc5OTU2NTg2MDVkMGUwNDQwMWJkZGViYmNkNjAyIHB5M2sKKzcyMDA3IGQwNTEzNGE0ZjAyY2U1OTI4OGU5NjYxYjQzOGQ3NjZlZTE4YTI3ZDQgbGVnYWN5LXRydW5rCis3MjAwOCBmNTIxNTlmODczMzJiYmJmMjE4ZjFhNGM3ZmIwMWYwNzQ4OWUzMjk0IGxlZ2FjeS10cnVuaworNzIwMDkgNTc4MTI5NDRjOTYxYjc4OTQ0NWE2ZGVmNTJmMzJhODM5Yjc0YmQ0NSBsZWdhY3ktdHJ1bmsKKzcyMDEwIGNjMGRmZjJiZjFjMmU2ZDUzZmM0NmU2MDE2ZmYyMTM0OWQ4MWE1MDggbGVnYWN5LXRydW5rCis3MjAxMSBiZjdmMzQwNzM0MThiZWRhMzZmN2NmNWIxMjYyN2RhYmEzZWVkODNiIHB5M2sKKzcyMDEyIDExYTU0NTJlMzMwNWU2MDc0YzVkZjJiY2MyZmM3MjgzMGViYWM4ZDEgcHkzaworNzIwMTMgOWI0NTFmYTU4NTAzYTUzNDBiOTdhOTQ4MWI1ZWI4MmI1OWUzMWUzMiBweTNrCis3MjAxNCBkMzdhNGM1ZDZkMmI1MzhiMWYxMzQ2ZDY4MThmNzI0YzY1MmMzYWRhIHB5M2sKKzcyMDE1IDM2MmI0YWUyMTI5YTRmMjJiMGMxOWE3Y2JlYjY4ZTRkNzczMjk3YjkgcHkzaworNzIwMTYgODA2OGFiNTE2MzJkNjEzMWU2MzNkZTViZmM0YjZlN2M0MzJiNjliOSBweTNrCis3MjAxNyA3NDMyMTFiNjBjOTQ2N2YxOGE0NGJkMGM5NWJhMTk1NjdmYWQzNzVhIHB5M2sKKzcyMDE4IGNlN2MzNTNhMWU5NmJkYTA4YzBhOTE0MTNhNmYwYjc4ZjYyZGExMTcgcHkzaworNzIwMTkgN2ZhYThhN2Y4NjNlMWNmZGUxYjkwZTcxMTczZmUyN2QzMWJiZmViNSBweTNrCis3MjAyMCA5ODg4OWVmMTU3OTU4ODRmNDJkNjhiNGIwZmEwYjViNGNhN2JiZjQwIHB5M2sKKzcyMDIxIGU0OGY4NjBhNWNhYzIwYjU4ZTk4MThhNGZjOGE1ZjI4YzFiZDkxNWQgcHkzaworNzIwMjIgNmJiZGExODUxNzMyZTE1NTBjZTYyZDcxYTE3MTAyZmZiMTUxODY0OSBweTNrCis3MjAyMyAyMTgwMDA4ZDAyZWVhMmMzYTc0NWYwZWY0MGFjYmE0OTk2MTgyNmNmIHB5M2sKKzcyMDI0IGVhNGUxOTJkOTQxNDdiNDhhNTE3ZjU0NjMwZWFkODUxYTgwMDczOTYgcHkzaworNzIwMjUgNGFiYzRjYTQ0NjFmZGJlZDAxNDExYTljY2ZlNmNmZWNmNzE4N2U3MiBweTNrCis3MjAyNiBkNTgwMTc1OTk3Y2Q1MDljYTgyMDE4ZDljYTFkZDBmODlmZjEwMzU3IHB5M2sKKzcyMDI3IGY5NDNkODI0YzhjMzVkZDc2MmRjM2EzMDkwYjEyZWM2NzMwZmFhNGIgcHkzaworNzIwMjggZjJkNzEwZTQ3OWUyZWRhNzIxZjMxNjg3NGIzMGZmNjA3M2FkODA4OSBweTNrCis3MjAyOSA3MWEyYWFkNWJhZDY1NWZlNGUxNmJiZjk3MzY1MzY3Yzg4NTMxY2ZmIHB5M2sKKzcyMDMwIDI5MzU0YzQ5NTBlNDk0NjgzYzdhODQ3NzgzNTY3MDBhODJmNDJkODMgcHkzaworNzIwMzEgMDFkMGJkOTUwY2NkMTM0NDUzZGUxZDE4YWNmZjljYTY0ODhmNTUyOCBweTNrCis3MjAzMiA0MWZhMWExMDYzNzNhZGIyNWQzODhkODE5ZTViMThiYzhhOTBhMTY4IHB5M2sKKzcyMDMzIGMyNWU1YTk1NTRmNTMwOTA2NmFhZmViYjVlZjQ4ZmUyN2MzZWIzNjIgcHkzaworNzIwMzQgOTc1MDY2NzJhZmUzZmI1MjQyYzU4ODNhODg0NjYxMDZiYjRkYmE5MiBweTNrCis3MjAzNSAyY2UyNmM0Njc5Y2I5NzU4M2IyM2ZlMzJjMmIyOTJlNmVkODYwY2EzIHB5M2sKKzcyMDM2IGM2YzRjMDYzZDg3NDBlZjI1MjAxZmE5M2E4NTIyZTgyM2NlOTkxNDEgbGVnYWN5LXRydW5rCis3MjAzNyA5ZTA5NzgzY2UyMjg4ZGVmYWQxMDJmZDQyMjIyYWNkM2Y4OGQ1Y2ZiIGxlZ2FjeS10cnVuaworNzIwMzggNWQ3NTIwM2M4NzEzOTJjZWZiNmEzM2ZhMDA1MjI2OTE5Y2ExZmY4MyBsZWdhY3ktdHJ1bmsKKzcyMDM5IGI0ZWJiMzAwZTYxMTljMGZiZmM3MWNjNjY3YjFlZGUzODdmNjU4YjAgcHkzaworNzIwNDAgNGJkZDg0N2I1N2MyN2EyNWEyZWRkNjdkZjRkYTY0YzQyZTRiMGRkYSBsZWdhY3ktdHJ1bmsKKzcyMDQxIDFmOTViYTRkMWVjYjE4NTk4NjIxNWMxOGZiZmZkOGNhYzE4ZDVjZTYgcmVsZWFzZTI2LW1haW50Cis3MjA0MiAxYTQ1MWZmNjU4M2M1NDhmOGIwNjY0NzEzNTJlNDQ1MTY2N2I0NWRlIHB5M2sKKzcyMDQzIDc4ZGZiYWY2M2IxN2M5Mzk4YTE0MjJjMjFjMjk4ZDNhODQyNDVlMGMgcmVsZWFzZTMwLW1haW50Cis3MjA0NCA0YjRiNTlmMjc4YmYzMzhjYjI1MzIyNmRkNGJkODBlMmVkNGIyYjcyIHB5M2sKKzcyMDQ1IGIwY2NmMmFjZmExZTY5MDgwODllZmRiOWNiMDYyMTZiMjk1NDdhNWYgbGVnYWN5LXRydW5rCis3MjA0NiA1NDI3OTE2MzM4OWQ0NWY0N2VjNWI5MjdhYTY5ZWM3ODk2M2M0ZDhhIHB5M2sKKzcyMDQ3IDg0NTM3ZGVmNDU1MDUwMTk2MTFkZjkzZDVhNTk3ZThmZmI0YzY3MWIgcmVsZWFzZTMwLW1haW50Cis3MjA0OCA3YzM5NTc0YWQwMzc1NDE2YTJhYWFhYTQyNjRhZTUwZDg0ZTBhZWYwIHJlbGVhc2UyNi1tYWludAorNzIwNDkgNzhmZDE1ZTA1MjU4NDA3MGNhMmNlMmQyZDFiOWUwOTk0MGY1NzlmMSBweTNrCis3MjA1MCBlNTZmZGJhNjFlOTc1ZjExODQ5MzE2ODBiNzhmMjJjYTlkNzE2Y2ZmIHB5M2sKKzcyMDUxIDM4NTIyZWEyYWRkMGE4NzYyNmUzMTdkOWNjMmNkMzY4NGRhNWJiN2EgcmVsZWFzZTMwLW1haW50Cis3MjA1MiAxYzA2MGQ1YzQ3Y2YwYWVkYWM3YzdlNGYyYWE1MGQ3ZGVhNDU4OGE1IGxlZ2FjeS10cnVuaworNzIwNTMgMmIzOTQ1ZDc1NWE3ZmU2MWI3OGY1ZGUyZTA5M2I2MjllN2VkMDUzYyBsZWdhY3ktdHJ1bmsKKzcyMDU0IDAxOTI0NGY0YjBkMGQwZTVkOTMyZjZlNTQwMWIxMWU0ZGM4MTNjNmQgbGVnYWN5LXRydW5rCis3MjA1NSA0MjNmOGY5YjA3YjE0YTg1NDRjNWZmMzMwOWE2ZDI4OWRjZGEyODRhIHB5M2sKKzcyMDU2IGQ5Yjk0MjJiNDA5Yzg5ODQwMWY5ODBmZGM4ZjM0YmM5MThiMWE4ZjggbGVnYWN5LXRydW5rCis3MjA1NyA5N2NmZjU5M2EyNTdlOWQ1YmE1ODFmNTlkZTRhMTZmZDdiMmZhOTM5IHJlbGVhc2UyNi1tYWludAorNzIwNTggNmYxNTg4ZmI3NTk1ZTFiMjBmZTZkNmY1Yzc4NTZlNTQ4MTBiMzg1MiBweTNrCis3MjA1OSBiMGFlOWZmYzc3NzlmZDc1MDNkYzRmYmQ0MjExNWU4YzMwNjkzZjVlIHJlbGVhc2UzMC1tYWludAorNzIwNjAgMzI0NjBiMDRlN2I2ZTBkNTA3NzI5MmE3NjVjZWE1Yjg5NTEzYWQxZCBsZWdhY3ktdHJ1bmsKKzcyMDYyIDdiMjA2ZTJjMDA5MmM0YjJiYjgxZmYzOTg0MTNkNDQ4OTA5YjhmZDMgcHkzaworNzIwNjMgNGFmMmJkYzliMWI3MzU1Nzk1ZjY5NzcyZGE0Y2I4MzBjZmJkZTIyYyByZWxlYXNlMjYtbWFpbnQKKzcyMDY0IGNhYmNlZjdlNmYyNTZjZDE4MjU4YTUxYjU1MDZmMjQ5OWE4NjE5NjggcmVsZWFzZTMwLW1haW50Cis3MjA2NSAxZWM0YmYzZGRkYTZmNWVkMjkzYTliOWJkZGQ5M2Y1NzY5Y2Y0ZWVkIHJlbGVhc2UyNi1tYWludAorNzIwNjYgZGNiYzIyMDNiZGYzNjI3NmIyYzhkMDcxNjk1MjlkZWVmZDcwNzgyMyByZWxlYXNlMjYtbWFpbnQKKzcyMDY3IGQ2NWRiMTY5ZTNhZDcxNTE2ZTA0YThlZWM3YmJmZTNjZTZiYjdmMmYgcmVsZWFzZTI2LW1haW50Cis3MjA2OCAzZjE1YTA2ZDAwNDczYWM5NDYzMmEzOGYxMjQ0ZWI0YmY5ZmI0ZGZkIHJlbGVhc2UyNi1tYWludAorNzIwNjkgYmYwNTIyMmMwNzQwMGUyMWI2MmRlOTEwZWM2YWE4YWRlYjZjZmRlOCByZWxlYXNlMjYtbWFpbnQKKzcyMDcwIGY3YTM5ZTYxOWUwYTFmNjJmODU1MGM1MzA0NDZmMjZiYjU1NjUwMjIgcmVsZWFzZTI2LW1haW50Cis3MjA3MSAwMmQ2ZjNhNjk3N2Y3OGI1ODg1ZTFlMmQ0NDk4MTEwMWMwNzVmZmNkIHJlbGVhc2UyNi1tYWludAorNzIwNzIgZjI0NjcxNTI4OTgwZTdjMzQzMjcwOGUxNTI4MWMyM2I5M2JkZmM3ZSByZWxlYXNlMjYtbWFpbnQKKzcyMDczIDcxNGY5NWVhNmI4ZjZjOGM3OGVlNGI4OTdiZDkwZTIwZTBiNjNmN2IgcmVsZWFzZTI2LW1haW50Cis3MjA3NCAzNmViNTM3YWJiMTc5MzYyZjRhZmUzYjRlMTY4Y2VhYjcwYzU3NzgzIHJlbGVhc2UyNi1tYWludAorNzIwNzUgNTAzZjBmNDFmMzVmOTFhZjQyNTRhMGE0YTg4OThiZGVhMGViZGJmYyByZWxlYXNlMjYtbWFpbnQKKzcyMDc2IGIyOGRkZWJiZDgzNTU3NTk4OWNlNDUzNTMyMWY0MTFiMjAyYzRiYTEgcmVsZWFzZTI2LW1haW50Cis3MjA3NyA2ZjEwZDUyNWUzYjg0YjUzMDJhNDdiNWFhYjc0MDY5NjczYzdiY2I4IHJlbGVhc2UyNi1tYWludAorNzIwNzggMzE2NmRlZDZiYzRhMjZjMmQxOWEwODk0Njg5MTExYzI3NTNhODgzNiByZWxlYXNlMjYtbWFpbnQKKzcyMDc5IDlkYzM0ZWYyMjczNTM4MjdhNDM3YWIxNDRhOWNhZTk5N2FhZTkyZDUgbGVnYWN5LXRydW5rCis3MjA4MCA5MDAwZjk2NmNjYmJiZjAzNTg1ZmJkNGU0MzJiYzljZGIwMDAzMjZiIHJlbGVhc2UyNi1tYWludAorNzIwODEgZTI4NDNiNjQxNzVlY2Q2OTRmMGRlNzhmMWUxOGQyNDNlMWNhZWY4NSBsZWdhY3ktdHJ1bmsKKzcyMDgyIGM4Zjk0MDA3YjFjNDZlMGUxOWUzZTAzYTIzNzVjY2RhMTU2ZmUzNGYgcHkzaworNzIwODMgMjMyZDIyNTBkNzAzNTVkZmQzMDMxZGU1MDhkMThjODdmYjcxOTAyYiByZWxlYXNlMjYtbWFpbnQKKzcyMDg0IDAyNWJhMTJjN2RhNTQxODgwOGYwNGY3ZmY3ZDRjYjc0MzBiMGMzMWQgcmVsZWFzZTMwLW1haW50Cis3MjA4NSA3NDU5MDIzZmY4NjFhZTVmYWNmYTU2MjFjNjkwZDVkNDBhMTgwMWYwIGxlZ2FjeS10cnVuaworNzIwODYgN2ZkYTVhZjJhZjdkMTBjNjZkZDY2NGQ4NjlhNmJhMzJhZjMyZjJkNiBweTNrCis3MjA4NyBhMzhkNmNkOWFhNjM2OWNmZmUzMmYwZjMyYzI2NzdhMWQ1YWE2MTUxIHB5M2sKKzcyMDg5IDE0NjlmYjFhZWE5MjRkZGNmYzhmNmQ3MjliMDQzYTNjY2ZmZjZiYzkgcHkzaworNzIwOTEgM2I0Y2VhNDNmOWU2Mzk5MmMyMWRkOTFmZjhhOTIwMDFiMzYyYTc2YSByZWxlYXNlMzAtbWFpbnQKKzcyMDkzIDgxN2Q4YjI4Y2Q2YjNlMjYzMzY2ZDZmNTJjYzZhYjQ0YTYxOTMyNjMgcmVsZWFzZTI2LW1haW50Cis3MjA5NCA5YzJhYzFlZjNhNmZlNGQ3ZjM3YTMyNTE2YzZmZjJlODBhOWZhMTc1IGxlZ2FjeS10cnVuaworNzIwOTUgYjQwODk0MmZiNDM1Mzk4ZTlhMjFiMjY4MmQxMzM0NzQwYTkwZGQ1MCByZWxlYXNlMjYtbWFpbnQKKzcyMDk2IDY5YmVhMjZlYzg3Yjk5MzdlNTY1ODdmNDUxNmRhYTVkNTExODEwYjEgcHkzaworNzIwOTcgY2VhNjQxZmY0NTM0YzM5MGRiYTQzMjkwMmJjYTNiNGM0NmZjMmQ2ZSByZWxlYXNlMzAtbWFpbnQKKzcyMDk4IDNkZmJhYzc5OWNmNTFjOTFiYTA5ZDYyYTBiODczNzRlNDgxMjFiN2IgcHkzaworNzIwOTkgMDIwNjg4NzdjMTkwYjNkNzc5YWFjNmYzYjRkMDUyMGQ2NjQ1M2UyNSByZWxlYXNlMzAtbWFpbnQKKzcyMTAwIDRlZjdmOTNkNjFhMWE4ZDcwNWY2ZTg4YmI1ZWU1ZGMzY2RhMDcxOTUgbGVnYWN5LXRydW5rCis3MjEwMSA4NjE3ZTgxMDE2YjZiMGMxYzg5ZGM5NDNjYmM3ZjA0NjczODg3NmIxIGxlZ2FjeS10cnVuaworNzIxMDIgNWY4MWM0NWJkZjZkMTAxODA4MDZhNDNiNjFjOTUzODQ2NjU4ZjI1NCBweTNrCis3MjEwMyBiYTYzOGQzYTQ5ZDE1ZjVkZjY5OGE1ZGNmZTRhODExMWFiMTY3MzM2IHJlbGVhc2UyNi1tYWludAorNzIxMDQgZTk1Yzg3OGFjNzlhZTdkNzk5OTYzNTdkNDdlMTdhMDRmZWE4NWNjYSBweTNrCis3MjEwNSA3MzcwMmFiZTFjYjk3MTg0ODNiNTAzM2M0YTM3ZmY1YWYxZDg3ZjE2IHJlbGVhc2UzMC1tYWludAorNzIxMDYgYjg2MzNjNzg5M2ZlZjQwMmVkNDY2OWJlMzU3YzQ4NDMyYjAxM2Q4NSByZWxlYXNlMzAtbWFpbnQKKzcyMTA3IDJlZjJjYjU3NzNmZTJlNGVhZWFkY2RiNDE4YmVkZDg2NTY5OWU1MjAgbGVnYWN5LXRydW5rCis3MjEwOSAzNzU5ODM5YjlmYTU0OGJjZTBkNDAwYmNlYTJlZjkxZmFiODEwMGRlIHB5M2sKKzcyMTEwIDIxODAzMDc1YjQxMTE1NzgwNmQ3NTdmZjQ5ZWQ5MzhjMGQxYjgzMjQgcmVsZWFzZTMwLW1haW50Cis3MjExMSBhZTdmODJiYmYxNmM4ZTZkZjNhZDMwMzJmODA0N2ViZDE4ZGJhNTA2IGxlZ2FjeS10cnVuaworNzIxMTQgYTM4MTRkYzk5YjgwZDFjMjNkOWNkZWM4Y2Q1ZjA5N2M2MWYzODQ4OSBsZWdhY3ktdHJ1bmsKKzcyMTE1IDNkNmJjNDI2NDZiNTFlMGMyZjNiZDMyMjAwOGYwNjgwNTVjYzI0ZTcgbGVnYWN5LXRydW5rCis3MjExNiBjODU1ZGY3YzZiYjU5MTA1MGJjOGEwMjMxODNlNTc1YTUzNWFkNDU5IHJlbGVhc2UyNi1tYWludAorNzIxMTcgY2NmNzg1M2IwNzkzMjQ0YmZmYzU0MmY4ZDRlYTI3NjZjMzUzMmNjMyBsZWdhY3ktdHJ1bmsKKzcyMTE4IDY0N2EwNDBkZjRkMTFjZDQ3MTk5OTkwZDNhMmIyYzJhMzFjZjZkNmYgcHkzaworNzIxMTkgYTNmY2NjZWU4OTU3YTBlNmExYTRkNTdiYmFiMzc3NGM1MzkxMzI3ZCBsZWdhY3ktdHJ1bmsKKzcyMTIwIDQyZWY3NmY1NDRmYmYyMWI2ZTYzNDAzMDU5ZTYzMjAwNTQzZjNkZjkgcmVsZWFzZTI2LW1haW50Cis3MjEyMSBmZTA2MjE4NzYyNGNiZTczYzMxNzdkNmQwMzFkNjgyN2UwMGZlMjk4IHB5M2sKKzcyMTIyIDc2MTdmYTcxNjRkZTZkYzcxNDBhYjllOWFkOGIwYzE4NmMxNjMxYjAgcmVsZWFzZTMwLW1haW50Cis3MjEyMyBjY2ViYmFkNWY4ZGZmZTlmZDhkYmYxYzY5NTllMjI4YWM2YWZjYzMxIHB5M2sKKzcyMTI0IDkzZmU2MTFjYmQzYWExMmYxZmRmZTBlMjEzYzUyNTMyODJjZjUwNDEgcmVsZWFzZTMwLW1haW50Cis3MjEyNSBiMzljYjI5MjE5NDU3M2QxYmI0MGEzOGYxY2ZmNjcyZjFkNGY4MTU2IHB5M2sKKzcyMTI2IDQ3NjIzOTRmYzI2YzUyYzE5YjkzMDBmODA0ODhkMjM2YjE1ZWZlYWEgbGVnYWN5LXRydW5rCis3MjEyNyA1ZDk3NzFkN2NjNDZjN2YyOGI0NjBjMTZjZWQwMWVjNDgyZGJkN2IxIGxlZ2FjeS10cnVuaworNzIxMjggOGE4NTlhYzdlNWI4MWUxOWJlY2NhZTA2ZGQ0ZmM5NWYzNDU1OWQyMiByZWxlYXNlMjYtbWFpbnQKKzcyMTI5IGUyNzQ0OWRlNjFkYjY0OGM1NDc3MGE2Yzg4MGMwMzI2NGFjMGFjNzIgcHkzaworNzIxMzAgZTg5NDQzM2M2NDY0MGYxOTc4N2MwNmRjYTVhN2E5NjE2NDAxZDIyZCBweTNrCis3MjEzMSAyN2M2YjYzZDFkYjM1NWY2ODc3MTc1ZDNkYzE3NmM5MGE3ZGY0MDFmIGxlZ2FjeS10cnVuaworNzIxMzIgNDExMzc0YzVhYTQyMjc4ZDMwZjE2YTA3MjExYmFkYWViNWY1ZjIyNSBsZWdhY3ktdHJ1bmsKKzcyMTMzIDk0Y2RmZDA3ZDRmNDhkNzI4NTI0OGM3YzAzYmUwZTQ4ZDVmNGJhNzMgbGVnYWN5LXRydW5rCis3MjEzNCA3OWRjOGQ1ODhlYjMwNjZjMjk4YmY0NzllOTA3YTg1N2FhZWM1OTY2IGxlZ2FjeS10cnVuaworNzIxMzUgZDY4MmM5MzQ2ODQ4MDg4MzI4MjU4NDI0NjM2NDRjMmM5MmI2ZjBhMiBsZWdhY3ktdHJ1bmsKKzcyMTM2IDBmMmIzMzU2NjhlZWJjOGZkYTlhM2IxMjA4NjBiYTAzMTU4ZTg4MzIgcHkzaworNzIxMzcgMzRlN2MxYjE0NDk1MDFhMTgzZTFkOGIxYTE4ZGRlODViYjk4Zjg1OSBsZWdhY3ktdHJ1bmsKKzcyMTM4IGExZWZhZjAxNTEwMDE3NDcwYmZjZGFlYTgxNDFjYzE0Y2VmNThmYmEgcmVsZWFzZTI2LW1haW50Cis3MjEzOSA0MGQzNDMxZGIyNDA4NTVjNDNmYjVhYmRhOGUxZjI4Nzc2YjExYmI0IHB5M2sKKzcyMTQwIDJjZGUwZDAwM2ZmYzAzZTgwMTBhMWE2ZGExZmVmZDcxNDBjZmQ4ZGUgcHkzaworNzIxNDEgZDY2ODhlZDA0MGNmMzZiNGNjMjE2ZjY0YzM1ODE3NzVhY2JjNjg4YSByZWxlYXNlMzAtbWFpbnQKKzcyMTQ0IGM0YTFjNDg4NDA1NmQ0OWI4ZDgxZWFhZWE4NWRlZjc5ODRkM2FlMmYgcHkzaworNzIxNDkgYWJjODBmOGIwZGZkYzFmZmRkNWM4ZDFmZjAwZDI3NGZkMzc1YWI0MSBsZWdhY3ktdHJ1bmsKKzcyMTUzIGVkOGMxMzk1ZDAzMzBjZGY3NDZhMmI1ZWVmMjYxYzQ3YTViN2MwZjQgcGVwLTAzODMKKzcyMTU1IDI5NjU2YTAzY2NlMmZhNGMxMDRkODA4MjlmMWRjYmRhODRmMDI5NDQgbGVnYWN5LXRydW5rCis3MjE1NiBiYzYwZGUyMzIyMDMxY2VkNWI0Nzg5OTFmN2IyYTA1NzMzZTI3M2UzIHB5M2sKKzcyMTU3IDRiODZlNTNmOTAwNmY2MTcyYTliOWNkMjZkMjQ0NmM3OTM0ODFjZjYgcGVwLTAzODMKKzcyMTU4IGJkYWI3Y2NkYzdiNDg2NDExY2Q0ODQ2OGIyZmVhZWI5YTE5ZjEzODggcGVwLTAzODMKKzcyMTU5IGU3YTllMmZkNzEzZjAyNDE3MGE4NDUxNmQzNmE5NTUyNWNkZDZkNjQgbGVnYWN5LXRydW5rCis3MjE2MCAwOTM1ZTI0YzgxYzA4ZDVkZGI3NjI3MzQwMzMzMmQ5MDYxYjNkMjYwIHB5M2sKKzcyMTYxIGUwOGU4MGU3NjhjMTFmMDk0ZjFiNDA3MDczOTUzNDIxYmY2YTE4NzMgcHkzaworNzIxNjIgYTgwYjNiYjRkMWIwZGIyNjU2ODc2YjFlM2YwMzRjZTExMDM0MjFmMyByZWxlYXNlMzAtbWFpbnQKKzcyMTY0IDU0YzdiYTNkZGZjNjU2ZWYxZGQzOWJlZmE0NzNiYjM0NzgxNjFkZTYgcGVwLTAzODMKKzcyMTY1IDYwZDBmMzczYTg5NDZhMjBhMGQwMjhiODA0ZGJjZTRkNWQyNWJmZjkgcHkzaworNzIxNjYgYWViOTE0MTkzYjQ1YTYwYTFkN2RkNGYxYWEzMTdkMTgyODk0MmU1OSByZWxlYXNlMzAtbWFpbnQKKzcyMTY3IDg1NTQyNzE1YTI0OTBiZDYxYjRlNWQ2MDMxOGM0ZjYxNDQ1ZTQ2YzcgbGVnYWN5LXRydW5rCis3MjE2OCA2MzQ4MGI5MmE1ZTEyNWY4ZDliZjAzMTY3ZDkzYTVhMjg4YzEwNmIyIHJlbGVhc2UyNi1tYWludAorNzIxNzAgOTZjMDRlNmE2ZDg4MmQzNmM1MjA3NTRhMTdhZmQxYmRmODliNGMxNiBwZXAtMDM4MworNzIxNzEgY2M2OWQzZGZmODdhMjIyYWE3NWVhNDQ5ZjRjZGMyZTRiZWQ1Mzg2YSBwZXAtMDM4MworNzIxNzIgNWM1NWI5YzgwODQ2YTRkMWZhMzE0NmVlZDI2ZTkxMmIyNGQyYWQ1MSBweTNrCis3MjE3MyA5NjNmMGY1MTk3MDk1NWVjNzQ0MjMwMWY5YTBjOTljMDc5OTg5MjY3IGxlZ2FjeS10cnVuaworNzIxNzQgOTg2NTFlNGY2NWZlNTlhYTA3NTljZDU5YTA4MDZiNTQ3OTY2OTY1YiByZWxlYXNlMzAtbWFpbnQKKzcyMTc1IGJjMDRjZWJjYTdlNmI0Mjk4M2NlN2Y4ZDAxZTg4NzZkOTJhY2IxMWIgcHkzaworNzIxNzYgODlkNWVmODJjMDA2NzcwY2YzYmY2OGFmMjRjZGQ0NTJmZWYxNzhhYiBweTNrCis3MjE3NyAwMWFlZDQ4MTk2YjAyOGViOTFhOGQ3ODc4ODA1MGU4Y2FhYmEyN2RmIHB5M2sKKzcyMTc4IDQwOTQ0OGQ0NTVlM2U0MjYwZWFmYzljNzExMWM2Y2U1YzFlZTg0NjYgbGVnYWN5LXRydW5rCis3MjE3OSA5NjBlZjAwZDUyMTQxNzc5ZDgyNDlkZmFkYmIzNjdlMmY5OGFjYTlkIHB5M2sKKzcyMTgwIGIxOGJkMWE0OTRjNzFmMDU1OTYyNTQ0MWQ2OWIwNDYzOWU4MjFiYTUgbGVnYWN5LXRydW5rCis3MjE4MSAyMjgwMzY1ZWFhNzJjMTA3NDZkNzQzYmY3MWQwYjg0NjRlMTU2ZTg1IHB5M2sKKzcyMTgyIDk1MDYxZGEwNmNiODQ1Yjc5MDNmNGJiNTk0YzZhZGQ4ZjAwNWZiNDMgcmVsZWFzZTI2LW1haW50Cis3MjE4MyA4OTYzY2Q4NThhZDYxMDZhNjNjNTMwN2ZlZTAzOWVhNDNiMTNkOWQ5IGxlZ2FjeS10cnVuaworNzIxODQgOGZiMTljYTYyZTcwZGZjNWY5Njc5ZWVjN2I3NTNlZDY5MTc5MTlhYiBsZWdhY3ktdHJ1bmsKKzcyMTg1IDEzNTVkYWMyMzhmZWNhZWI4MjczMWMxNmYyNzFhMmEwMzEzMDM2OGUgcHkzaworNzIxODYgMGQ4MTdlOGVkM2ViZjlkZjdhYmFmZmEwOTJhYmFiNTU0MjE0YmY4NyBweTNrCis3MjE4NyA0MmQyOGU1ZGM3Y2IxNGM5NDUwYzJmNjJhMWRiNmI1ZjQxMTA3NzVjIHB5M2sKKzcyMTg4IGViODExNWFiZmY1ZTU1MjE1NGZkZjBmYTEwNjYxYjg1MzUwNTFmY2UgcGVwLTAzODMKKzcyMTg5IDIzYmM0YjM5MWMxMDIyOWI2OTQxOGExNDBjNmY0M2YxODk0MTU2ZjYgbGVnYWN5LXRydW5rCis3MjE5MCAwYzhiZmRkYmZjYTI2NjY3NWYzYmUxY2Q0MzdjMDFjMmJiZWFkZjE5IHJlbGVhc2UyNi1tYWludAorNzIxOTEgOWQ4NDBhNThhMGQ1ZDFiNmFiYzhmZTJjNWE2MjBiODdiM2MzMWZjNiBsZWdhY3ktdHJ1bmsKKzcyMTkyIDUxMWEzN2VmMWE0MTBmZjRkMjVmNzQ4MTk0ZGRiM2JjNjIzZWJlMGQgcHkzaworNzIxOTMgMDUxMDE5ZjBkZDlmZTM5YTVhZDhjMzQxZjhmMTMzNDhhZDE4MTA0NSByZWxlYXNlMzAtbWFpbnQKKzcyMTk0IGY2ODZhY2VkMDJhM2U0ZDQzYzM0OGM2M2FkNmQyNzgzMmNiYzVkZjcgcHkzaworNzIxOTUgZTE5Y2MzZWJiNThhMGJlNjI0NGE0MzdhZDQwODRjY2RmYzI0NjFkNiBweTNrCis3MjE5NiAyMDZjY2Y5YWEwMjVmMDE2NDVmYzFiZjkxZDdhY2I3MmVjNzc3MGM4IHB5M2sKKzcyMTk3IGU2MmJjNTdhNjJlYWJhMGFhYmU4NjQyYzczYThlZmJkMDJkNTk1ZDYgbGVnYWN5LXRydW5rCis3MjE5OCAwMmI2MTUzODlkM2VmNTA2YWNkNTAzOWUwYjc3Mjg2YWVhYjA3OTU3IGxlZ2FjeS10cnVuaworNzIxOTkgZDdiNTFlYmY2ZGU0MjQzNjlmZjVkNTYzNmExNWI0OWNlOTE2NjBhYSBsZWdhY3ktdHJ1bmsKKzcyMjAwIDFiNzFhNTcwZjU0ZWFjZmQ4NjAyYjQxNjk0MWRiNDlkMDE2NzYyNjIgbGVnYWN5LXRydW5rCis3MjIwMSAxYTg0OWVlNWYwOGNjODY0MTY4MjFiOGNiYTE3MjkzMGFlNTg0Yjg4IHB5M2sKKzcyMjAyIDVhYWYyNGVjNDNkYzEwYWZhNGFlNzU2YzU2OTkwNmEwNTdjNWQyMWUgbGVnYWN5LXRydW5rCis3MjIwMyA5MDNlODBmM2U4MTE4ZWYyN2M4MWFjYjRlODk1NmIwNjE0NDg0YTg5IHB5M2sKKzcyMjA0IDExYjFmYzk5MjFiZDBlMDNkMTE0N2Y2ZWU4YmRjNzBiM2UyODQ2MGUgcHkzaworNzIyMDUgZjI3N2E4NDA3MWYxNGVlMjg1N2I0ZmExYTQxZjhmNGUxYWMxMjE5OCByZWxlYXNlMjYtbWFpbnQKKzcyMjA2IDIxYmRhNjExZjBlNDAwZDc1MGU1OWZkODZmNmQzMmEwYmIzNDg4N2EgcmVsZWFzZTMwLW1haW50Cis3MjIwNyBlYzNmYzY0NjMxZDk5ZWVmYTFlZjAxOTRkZWYxOGU4NTQ2OTRjNzQ2IHB5M2sKKzcyMjA4IDUyYTc3ZWYwNjljZGJhM2ExMmZlNzc2M2UzNzk0MDdlMzhlOWRiMzMgcHkzaworNzIyMDkgNjYyMDBhNzZkZTI2NjJiNDcxNTY1YzgzNWY5Njk2MWNlZTM4N2MzMCByZWxlYXNlMzAtbWFpbnQKKzcyMjEwIDliNTVlOWI5OWE0MzZiZGEzNTdkY2M5MjJmOTg1YjRkNDZjNWFjNmYgbGVnYWN5LXRydW5rCis3MjIxMSA1ZmU5MDRmZmM2YjgyM2M0ZjliMjE2YjhhOGYwNzUzN2UzMTE1OTUwIHB5M2sKKzcyMjEyIGJlM2MwN2FkZGU5NWRhNDM1ZWZiZDZiNDEyN2I0OGI0OTkzNjVhNDUgcHkzaworNzIyMTMgZTBjZWRlN2Y1MjFiNDM5ZmU5ODEwODViNmJjMjA4MjAzYzg4MTc4YyBsZWdhY3ktdHJ1bmsKKzcyMjE0IGE4OTMxOTQxNTVhMjI1MjNmYjc0Yzg2OTg0YjI2NWY2YWVjMTZhZDEgcGVwLTAzODMKKzcyMjE1IDRmNjVlZTFmNDg0OGY2OWJmNGU3YzkyNjQ2NGMzZDMxMzEzNDkzODggcGVwLTAzODMKKzcyMjE2IDU4NzA1MDgyZTdjODVjYjc1ZjY0ZDZhZWMxZWE5MmY5OGRkZDQxMGUgcGVwLTAzODMKKzcyMjE3IDUyYTg5ZDcyM2I2YmMxMmQ4MzczZmYxN2YyNWNlNTI5YjFlNjM1MWYgcHkzaworNzIyMTggMGVjYzViOTA2NDc3OTUyMzVkNmRmOWU3NGYzOGE5MDNjZDEzZTIxNSBweTNrCis3MjIxOSA3YmNlMDUyZjBlN2I3MWU0ZWY2M2MyYmQ0OGFkZTc2NjMzMWU3ZjY0IGxlZ2FjeS10cnVuaworNzIyMjAgYzVmMTRkYmVhNDNmYmNjY2ZhYjdjZGI3OTE5OTRkMTIwNDIyMDUxMSBweTNrCis3MjIyMSBiMDZmMTFmM2I2NWIwZDg4NTllZGU4Y2VjYTA0ZmYyNmRjZWZhMDEyIGxlZ2FjeS10cnVuaworNzIyMjIgYmE0NWUxMjY1NzRkYTFkNmJmNjFkNGJlNzEwOWM5YWY0MzkzN2I4YyBweTNrCis3MjIyMyBlNTQxNDFkNjNlMDE4NzRiYTJiODkwMDI1ZDgyMGRhYmUwYjdmMjcxIGxlZ2FjeS10cnVuaworNzIyMjQgNjRkOWE5ZTdmNjhlY2Q0MjBhMjk0YTkyZjlmZmUyNTFhNmRhMTRmZiBweTNrCis3MjIyNSAzMDNiN2VlOGU3ZmVmMmJhZjNlYWMxYmZjNGM4MmIyNDc0NTQxMWVlIGxlZ2FjeS10cnVuaworNzIyMjYgMDAxYWM1OWMxZTY3MmNlM2RhNjRiYzFjODRlM2NhZDM0YmJlMmZjYSBsZWdhY3ktdHJ1bmsKKzcyMjI3IDlmZWYxZjE2NTdjOGE3NTUxNGMzZDI4Y2QzNjFhZjQwNWVkNDFmODYgbGVnYWN5LXRydW5rCis3MjIyOCAzNThhYjFmZmFhODA4NGVhNzczYjFhYTkxYzNhOGQ3Mzg5MGU3ODY5IHB5M2sKKzcyMjI5IGFlZTJiMTBkYmFiOTM4ZWMyYWE1NGQxODA3MWJkYzZhZDA4ZGJlNDYgcHkzaworNzIyMzAgN2ZmZDk2MjVjOTFjZmQ3OTg0MzY1MWQ1YTJiMDk5MzQwZWVhZjM3NSBwZXAtMDM4MworNzIyMzEgMDAwNjNhZGYwNTU4NDU2NThiN2RiMjAxZTQ2YmFlMzIyOWMyYzllMiBwZXAtMDM4MworNzIyMzIgMDcwOWM2ZDM2OWRlNjcwN2NjNjlhODdiNTNkZDM5OWFhYzRmMzk1MSBwZXAtMDM4MworNzIyMzUgNzY0ZWFlNTIwODgwOGY1ZjA0YTMyNmFlMGIwNzYxMDIwYjNiZmVmNCBwZXAtMDM4MworNzIyMzYgOWIxMDdhNzk3ZGY4OWUwODYzZDdkM2Y3N2RkMTlkNjBmNmRlNjUwMyBwZXAtMDM4MworNzIyMzcgZDZiM2I3NGJkYTBlNWFlY2JmM2Y2NDU4ZTQ5NThjMjNhMzJmM2YwOCBsZWdhY3ktdHJ1bmsKKzcyMjM4IDUyNmIwZGMwOTEzODIxY2Q3MDc4MTRkMGU3NjRjOWZlNmYzMGEwMzkgcHkzaworNzIyMzkgZjc4MDE2OTk4MTVjMTI0M2ZmOTllYTgxN2Q2M2VhNDI2ZDVjMDZhYyBweTNrCis3MjI0MCA2ODc3YTFmNGEwOTI3ZmVjNjVlMWJhM2VkOGU2MzE1ODY1Yjg2YjYyIHBlcC0wMzgzCis3MjI0MSBhZTI0ZGU0OGFkYzQxZDExOTZlOGJhMWI0YjI0MmYzMWUyZWFmMjE2IGxlZ2FjeS10cnVuaworNzIyNDIgYmQ2ZDI1N2E5MTMwZjc4NmNjNWM2ZjJmNzJiNWEyNzI4NTJkOTdhNSBweTNrCis3MjI0MyA4N2ZjMTE2MmQ5ZjRiNjk0MDljOWIyYzk1MTQ3NjgzYTM4NmY5YzNhIHBlcC0wMzgzCis3MjI0NCBhYmY1NzRlOWYxZDNkNTlkNzk3NWUxZWY1ZjVmNGI5NDZhZjM0MDAzIHBlcC0wMzgzCis3MjI0NSAzOTQ0NjJlYWI2NWRiMDUyNzRhNmY2NjQ0NWFjODE4Mjg2YWY5YTk5IHJlbGVhc2UzMC1tYWludAorNzIyNDYgYTY3NzgzZDgxMmY2ZTZjZDM3NzRmYjE0YmMxYjFmNmU3MGU0NDdjNiBsZWdhY3ktdHJ1bmsKKzcyMjQ3IDMzMjcwYWQ2YWRlZjgyZjYwNTNiYzNiYzhlODk5ZjU5NWY2NzVmZGEgcGVwLTAzODMKKzcyMjQ4IDEzYTgyYTcxMGYxOWI0Mzk4MDBhOGM5ZTQ5OWY5NDFhN2ZkZjU4YmMgcHkzaworNzIyNDkgZjcwZTkxZjVmYzljZmYyNDhiNmMyZTE2YWJmOWI5NGU0NGY3ZmMxOCByZWxlYXNlMzAtbWFpbnQKKzcyMjUwIDYzZGRjZTlmYWY0YTk4N2ViNGE4Zjg5MjgxZTJkMGU3Zjk1YjcxYzcgbGVnYWN5LXRydW5rCis3MjI1MSA0YTc2ZDZkMjk3Y2ViZTVlM2IwOWExMjlhNWEzOTg3OWYwODRkNzIyIHJlbGVhc2UyNi1tYWludAorNzIyNTIgZmI1MjFmOTk2ZGUxM2JkYTc1MWRkOGE5ZTcxMmM3NmI1YzI2NDE0MiBweTNrCis3MjI1MyAxZjAwYmMxZDExNWEwYmY0MGZhMDJkOWI1MDYwODgzMDA3MzExYTY1IGxlZ2FjeS10cnVuaworNzIyNTQgNWIyOGRlYmExY2Q2YjdhMDEzYjY1ZWFhYThhM2I5ZWQ3M2M3NWU0MSByZWxlYXNlMjYtbWFpbnQKKzcyMjU1IGUyYjU1M2Q3MjA1ZjM5YmViMTA1ZGRmZDg3ZjBkMmQzZjg0YjNjMTQgcHkzaworNzIyNTYgYThiNWE1YjlhNDlhYWQyMTgzOTFiYTJhYzM4YmFhYzFmYTMxNDgwZSByZWxlYXNlMzAtbWFpbnQKKzcyMjU3IDRmODY3ZjE0OTRkNTVlOWMxZjAwOTE4MDM1MDc0ZDdhNTY3YjRjMmEgbGVnYWN5LXRydW5rCis3MjI1OCBjNmY5OWQ0YzgxMjJlMTJjYjRjYjdjODZlNjZlZWY4OTVkNGZiYTY0IHJlbGVhc2UyNi1tYWludAorNzIyNTkgMGI3ZWVmZTdiNmQxN2Q4ZjRjYTJhODFlMWYyZjA5OGRhYWNjN2Q1MSBweTNrCis3MjI2MCAxYzI3ZWNiZWQ4YzQxYTcxMjllYjRhM2E4ODI5NTczOTQ4NTg2ZjdjIGxlZ2FjeS10cnVuaworNzIyNjEgY2U5NDcyMDBiNzY4OGE5Mzg0ZDNmZTljNDcxNTRhMGU3YzI0MDRiOCByZWxlYXNlMzAtbWFpbnQKKzcyMjYyIDE4YTVhZTk2YWU1YzlhM2ZkZTFkZmJmNjgwYjNiNTE5MzMxODIxNzkgcmVsZWFzZTI2LW1haW50Cis3MjI2MyBlNGFmOTcxYjkxODQ1NjA5ODEyZjkxMTYzZjhkNDBiZjA3YTJhYjQ5IGxlZ2FjeS10cnVuaworNzIyNjQgNWFkZTBkZTc0YjVhOTEzYTBhNzE4ZDRiMWIyYjQ1MjZiYjlhZTc1OCByZWxlYXNlMjYtbWFpbnQKKzcyMjY1IGQ3YmJkZTkzNmQ2MjkwNWFkYTcyOTU2YTlkOTZlNzAwYWM0ZjViZjUgcHkzaworNzIyNjYgODM0NmQzYzdjNGUyM2I4OWU4Y2E3ODMyMGI1YzRhYzFiZWFhOGIxYiByZWxlYXNlMzAtbWFpbnQKKzcyMjY3IGU0ZmY0MjczNDkzYmQwNDhiZTBkYzlmNzliODk2MzgzYjhkOGE4NTYgbGVnYWN5LXRydW5rCis3MjI2OCA0Y2Q0MzdkZmFjZTg5ODMyYmU4YTIxMmJlODY1M2NkMTAwZTJjZTViIHB5M2sKKzcyMjY5IDY2Zjc1MDA4YzNhODcyNTAyOTM2ODJkOGViMjJmOWQxZTllOTJlNTUgbGVnYWN5LXRydW5rCis3MjI3MCBkOGQ2N2FhNzU1MjUyMDFkOGM4OWFjOTYwMGZiYTViODQzNTNmNjI4IHB5M2sKKzcyMjcxIGU2ODY4NWNmMzY1MWQ5OTg3NjZjYzQxYTFmZjA2ZWJmNTdhMjE2ZmEgcGVwLTAzODMKKzcyMjcyIGRiMjgzOTBjYTYxNzI2MDY1MWY5NmQ4MzQyYTI3YjBkMDM5YzMyZWIgcGVwLTAzODMKKzcyMjczIGQ2Y2JhZWE5NzU2OThlYmY3OTU4NGU2ZDZhOGI1OWUwYWI1ODE2YWQgbGVnYWN5LXRydW5rCis3MjI3NCAyY2Q5YWVlNmY2MjQ2MDMyODg1ZjU1NDYxMjM3NGI2OWYwMjI2NjhmIHB5M2sKKzcyMjc1IGJjMWQxOTY4MzZhNGZiYThiYzExNmVkZTNlMTBhOTEyNzQ4NjZiZjcgcmVsZWFzZTI2LW1haW50Cis3MjI3NiAzY2I1YjdkNTYzMDk4MWNmMjQ2NzkxYjMxZmQwNWY0ZTY4ZmIwMzA5IHJlbGVhc2UzMC1tYWludAorNzIyNzcgNjkyMzFjZWZkODBkM2ZhZmViMmQ1NGI4NTJmZDIzYjk3YzZhZTY2YSByZWxlYXNlMzAtbWFpbnQKKzcyMjc4IGFkMTJkOGY0MTRjNzM2MWE5ODVlMmYxODA0MDFjZTlmMWViNTQ3NmQgbGVnYWN5LXRydW5rCis3MjI3OSAzMDg4ZDJlYmY3YmU1ZWEzZDEzMGQ4YWY4MTIzNDdkNmU0Mzc2YzViIHJlbGVhc2UyNi1tYWludAorNzIyODAgZmU1NGYzOTQ1OTljMjUzNTg4MTkwZDk2MTg2MTA3M2NjYWI1ZDg2MiBweTNrCis3MjI4MSA3M2FmOTAyMDZjYmUzMjRiOTk2M2FlNTY4ODhjY2RmZGEyOTFiNzgwIHJlbGVhc2UzMC1tYWludAorNzIyODIgNWNiODVlZmY4YzAzNWFlYWEwNDA5ZjNjNTkxMzc3ODJmZTJmYjhkMCBweTNrCis3MjI4MyAxMmQ4ZmQ0OTk3MjJjMmRjZTRiYmIxYjc5NDY5OWMwMWMxNzA3NTE3IGxlZ2FjeS10cnVuaworNzIyODQgNTM4YTdkNTgzMDY0NWQwYTc2MTRiNGYwYzZkNGM3MDlmNjk0ODUzMiBsZWdhY3ktdHJ1bmsKKzcyMjg1IDliOTU5MDAwN2U4MjQ5ODFiNWRhNDhhOTBjNTg4NzI2NWJlZjRiMWQgcHkzaworNzIyODYgMTAwMzgxYzVlNzNhYmI3ZjBjYjg3NjlhYzQyZDcxYTNkMGM4MWFmZiBweTNrCis3MjI4NyA0NzkxMjE2YmZjMWViZGI5ZTg2OTUzYzk3MTU0NzVlYTRjNWYyZDM3IHB5M2sKKzcyMjg4IDc1ZDQxZjQ2MDg1MjEwOTE3YmMzYTRlZjA4OGJiM2EzNjYyYzU0MDkgbGVnYWN5LXRydW5rCis3MjI4OSA4MmZmZGZiYzQyZTU2OTY0OWRjZDRjYTljODcyYmY3MjY1MWI4Y2Q3IHB5M2sKKzcyMjkwIGY3MjI4OTJiNjBhZTNiZWFmZGM3ZjYxMDRhODJlZTRlYjdkYzBiODcgbGVnYWN5LXRydW5rCis3MjI5MSBiZDQ5MWI1YTg4MDg2OThiNjU4NWVmMWYyNzU0MGE3YTYxNmRkYzEzIHB5M2sKKzcyMjkyIDVjY2VjNGIzNjY0NmQxMTdhZmI3YmU2ZTM4OTc1MjgyNjQ1ODIzODMgbGVnYWN5LXRydW5rCis3MjI5MyAzMTBkYWE5OWQ2MDczZDMzZmNmMDdiMTRjZDIxNzcxZTk4YmMzMjcyIHB5M2sKKzcyMjk0IGMyZDEwN2UwNzgzOTc0NTJjZTg2ZTVlMTQwMTRlNDJmODM5ZWFjMzEgcHkzaworNzIyOTUgNTM5OWJlN2EzOWJhMzcxN2JkODAxZDVjNmE0OTc4MmQ1OGM5Nzk1YSBsZWdhY3ktdHJ1bmsKKzcyMjk2IDc1NzQzYWFlZTUwNDBjMGIzYmJkMjE2ZWJmZTg3NzhjMjU4MjQzMzAgcHkzaworNzIyOTcgZDM3NDdiMGEyZjM2MWFhNGQ3MGM0MGY4ZGI4MThiMGFmZTU2YWM2ZSByZWxlYXNlMjYtbWFpbnQKKzcyMjk4IDNiMDlmMzMyZjFmYTNiNDIxYjFmM2UyMTdiYzc4M2UxZTZjNDVhMmMgcHkzaworNzIyOTkgYjMzMTljMDg0ZDI1NzFjMzAzODMxMDE3NWVkMzljYzVjY2U5NzVhYSBsZWdhY3ktdHJ1bmsKKzcyMzAwIGRkOTM4YTJjYzJmMGM3NGE3MDdiZmY1OTNlZmJiYWIzM2MzNWIzYTIgcHkzaworNzIzMDEgNWJlY2M4NjU0ODEyMjA4MmMxYzkxOTNlMmE4NmVmODUwMmZjNTAzYiBweTNrCis3MjMwMiBiYmE3ZWU5ZGFlZTA2NDU4OWM5NzMxNTY4Mzc3YzQxYWRjN2FiZDU2IHJlbGVhc2UyNi1tYWludAorNzIzMDMgNjM5YTc5ZmE2YTIzOGE2NTJjOTQ4ZjE0MDA2NzMyOTA3OTExNzE0YyBsZWdhY3ktdHJ1bmsKKzcyMzA0IGFlYjQwNTBjZDQzMTg1MjYyZmM4OWViN2NjZjY5ZTJhYjk2MWFhOWMgcmVsZWFzZTMwLW1haW50Cis3MjMwNSA0ZmNmYzUzZmNjNzRiZDZjZTk5NWZjZGVjNTM5MDVkMDgxODZjMmVmIHJlbGVhc2UyNi1tYWludAorNzIzMDYgMjQxNmYxNjZkZTRiMDBlMmFiN2IwMGJiZWY2NTExNDk3ZjZlOTM0ZiBsZWdhY3ktdHJ1bmsKKzcyMzA3IGIxZWE1ZjczMTNmZGU1NGQzMWY1Mzg1ZjFlYTY3MWQxMWVmYjk5MDggcHkzaworNzIzMDggMGJmNWJiMmYzYzA4OTg2ZGMwNjBkMGFhNGZiNzA4MzNiMWJlYTk2MSByZWxlYXNlMzAtbWFpbnQKKzcyMzA5IDY2NjgyZmMxNzJlOTBlOThlOGExNDc0YWUxNWYwZjFlZGZlZTc1NWEgcHkzaworNzIzMTAgNzMyMWQ0NTEwYjQxYmFiY2UzZjljMmE0NzQ4ODY4YmQyYmU0ZDQwMiBwZXAtMDM4MworNzIzMTEgNGRkNWE2YTkzZTcwODhjMDNiMmFjMTYwN2RiOWIzNTZiYjk0NTE2NyBwZXAtMDM4MworNzIzMTIgNmUxMGI3MGE0MTEwMzc2MDI5NGQxMzAwYzllYmJlMjgxMDY4NTZkNCBwZXAtMDM4MworNzIzMTMgYWMyMDlmMTMyYjE3YjI4NDAxNGQ0YTEwY2Y5N2JhNzdkZThiN2NiNyBweTNrCis3MjMxNCA0ZTU4MzRiMzIyYzEwYTJjZjAxMGYzZDQ0ZTRiZWQ4NmM0ZTU5MGIzIGxlZ2FjeS10cnVuaworNzIzMTUgMmUwNDRjOWY0YjQwNWY3OTYyODA4YmUwOTMzMTE1NWViY2U3OWUyMCBweTNrCis3MjMxNiBiMDBjZTZmMGZhM2E5Y2ZiOTM3YzZhZGExZGJhNjhlMmI0NmZmMTdhIHB5M2sKKzcyMzE3IDFlODJiZWY2OGY0ZGZlODdkNmVkMjg5MGM3ZTExMmRhNWVjMDVhYTYgcHkzaworNzIzMTggNWRmZDIyOTA2MzQxMWZmNjFjMzcxZDY2YTNjZGI4YmYzZWZmMWI2NCBweTNrCis3MjMxOSBkZDQ4OWY0NzU3YmU4MjY5YmU5NmViYWNhMzZlYjAzMTQ1ZmI3ZTBlIGxlZ2FjeS10cnVuaworNzIzMjAgYWY4Zjg0MzI1Nzk3M2YxOGI5ODgwNDQyMTVlNDc0NmZlZDFmN2RhZiBsZWdhY3ktdHJ1bmsKKzcyMzIxIGIxMmE0NGVlZjQwYjZjNTkyNzA2ZWMzZjViNjYzNzA5MmU3NmM5MzUgcHkzaworNzIzMjIgYzQ5YmMzMzAzMjdjZjI5ZWNlNWExMGRlYWFjMjUyYmZjMTZjNTYxNiBsZWdhY3ktdHJ1bmsKKzcyMzIzIDU4NTc0Mjg4YTViZmVhOWRlYWM2MTA3ZTMzYjI3ZDcyYTY2MmRjY2MgcHkzaworNzIzMjQgNGM2MzY3MDYzOWVjNzBiNWFhNmI2NGU1ZGJiZmJlOWJhZWNmNDNhMyBsZWdhY3ktdHJ1bmsKKzcyMzI1IDU4YWEwYWQ3NzI1M2Q3NzU0YzY4ZTlhOTYxMDBmM2I3N2IxZmVlNWUgcHkzaworNzIzMjYgNTg3OGNhNzg0YTg0OTZlNGQ1ZjRjZDViZmZjMDg4MjhhMDhmODU0YyBsZWdhY3ktdHJ1bmsKKzcyMzI3IDMzYmJkZDNlZWE0M2Q5ZmNlY2U1ZWY0YzdkZjdlMzljZjdlOTA0ZWMgcHkzaworNzIzMjggOWY4NTMyYTBmMWFiY2M0NjFiNjAwMDlmYjE1NTFmZDdkMjgyZWY4MSBsZWdhY3ktdHJ1bmsKKzcyMzI5IGVjNWYwM2QxZTgxOTg5MzEzZjBhYzE3N2MyZmJjYWQxMjQ0ZmI1YjggcHkzaworNzIzMzAgZjZiZmZiOWU4MzRmOTllNjA4MDY2OGQxOWU3MDE1OThlMDQ5MWEyZCBweTNrCis3MjMzMSAxNjdjZDM3OGI1YmQ4YjM3ZTY3NjZiM2RhNWRjMGQ4MjlhYzM4NjNhIHB5M2sKKzcyMzMyIDJjYzExNjkzYTE4MGVkNzQxNzg0MzA5ZGRlYTc2NGE0OTQ0YzllMzUgcmVsZWFzZTMwLW1haW50Cis3MjMzMyBjNjM3NmQzZmE5Njg3ODE3YjJhNDFiZjU2OWVkYzA1NDljZTZiYTkyIHB5M2sKKzcyMzM0IGQxN2NjNzJmZmU4MDc2NzFkNDk2MGQ1MWJhZTA1MjFmY2RhMGM4ZDMgcmVsZWFzZTMwLW1haW50Cis3MjMzNSA5ZjZiOGNlMjAyM2YwYzI0NGZiMWExMjFmZGQ1NzQzZjdhMTBjNGY4IGxlZ2FjeS10cnVuaworNzIzMzYgMjE1YjdiNjZlNjJkZjI4NWUxNWQ5MTdhYjJkZjI5OGM0YmQzNzdkNiBweTNrCis3MjMzNyA0ZjNlZGI2YWY4YzFiYmQzYjM4NTUyNWM2ZDAwY2Q1Mzg0NzVkNGNhIHJlbGVhc2UyNi1tYWludAorNzIzMzggOTc2MDM1MzY2MDY1N2FhYTIxZDJjZDM3Y2M5YjFmMDUwMGExYjY4MiByZWxlYXNlMzAtbWFpbnQKKzcyMzM5IGNhNDUwYjI4MjdlZjM4MDliMzQ5N2ZlYWMxOGMwMmZhZDQ4YmY0M2UgcHkzaworNzIzNDAgZDg2MDFlOGIzYWJlOTFlYmEwN2QzMjVmMTczNDc3NDdjZDI5OWQ5NSBweTNrCis3MjM0MSBhN2M5OWUzNGUyMzllMjE3MmE2N2M4MDc1Mjc3MWZiZDcwYzk2ZmVhIHB5M2sKKzcyMzQyIDhlOGI5NTkwOTE3YWQ5NGM1YjgyYzYzOTU3MzhhMTQ3MDdhMTMyZWYgcmVsZWFzZTMwLW1haW50Cis3MjM0MyA3ZWE3ODcwZGQ5NjZkMjIxNmQ1MTQ0ZDczYmFkNTE1ZGMwM2Y0MDliIGxlZ2FjeS10cnVuaworNzIzNDQgZWEyYTkwMDgyYzgzNzUyODM5MjUxMTBkZDliOWZjZjE0NTYzZmY1MSBsZWdhY3ktdHJ1bmsKKzcyMzQ1IDZkNjRjZDY5ZjM4NDRhNTVlZGI3MzRiM2JhYzViZWUwY2ZhY2NmN2YgcmVsZWFzZTI2LW1haW50Cis3MjM0NiA5ODc0MjFkM2Y4YWU0MGI2ZDkwNWZjY2IyZjc3ZmM1ZmU1NWQ5Njc0IHB5M2sKKzcyMzQ3IGIwMzc1NTY3ZmFlODBhNDZjYWM4YzEyNWZkNTg5NmMzNDIyODdmNDUgcmVsZWFzZTMwLW1haW50Cis3MjM0OCAxZDhmMjRkNDBjMmM2OGZiOWIzZWM0NDFjYjE3NTA0NmM5YzgwMjFhIGxlZ2FjeS10cnVuaworNzIzNDkgNGQ1ZjA2NjU3NWVkNTBkOTAxOTYxYTMzMTNhMzhiMGY5ZDdhYjAwOSByZWxlYXNlMjYtbWFpbnQKKzcyMzUwIGI5NzdhZjE5YzZmMDEzN2ZlNDdhNzU2MWEzYmMyMTFjYWM4ZjhkZTcgcHkzaworNzIzNTEgYmJlMmFhNDMxNjkyMzIzNjA1ZmRlMWFiZTRjMjM0OTc1ZWQzY2NlNyBweTNrCis3MjM1MiA1ODFiNTY0ZDhmYzNiMmZlNjdjY2QzYWUwYzI1NTIyMDQwODFlYzgwIGxlZ2FjeS10cnVuaworNzIzNTMgYTg1ZTY3NTZkZWQyY2ZlN2UyYjE4Y2RkY2Q0OThjOWMxNmQ2ZWU2OCByZWxlYXNlMjYtbWFpbnQKKzcyMzU0IGUwMTc5ZjA4ZDM0ZjIyMDMxNDNlOTQyOWU2ZmJhYzUyYzY2YjY3OGQgcHkzaworNzIzNTUgZDNmZmIzNzAyYzNhZjYzZmE1MGVhMDZmYTUzMjY0MjJhM2VjNmJjZCByZWxlYXNlMzAtbWFpbnQKKzcyMzU3IDhmN2NmNWNiMjFiYjU4M2FiNGU1YWVkYjJmNDIzMDRiMGViNGZjNDIgbGVnYWN5LXRydW5rCis3MjM1OCAwMjZkMzkwZWVjYzE5NmFkMDUxNGNjMTg3MTBmNTg3NTJkMDJlOWI5IHB5M2sKKzcyMzU5IDE1ZDNiZGU3MGQ4N2IwMDBlY2NlOTQ5N2MzNTg5ZDRlY2U3MzdlNDcgcHkzaworNzIzNjAgZjBmYjRkZGZmMWFiZGFhYTMzNTZmZDZkMzNhY2EzOTAwNzNlOWRlYSByZWxlYXNlMzAtbWFpbnQKKzcyMzYxIGFlNjg1MDg2OWQ1MmY0ZjZlYzc4MmFiMzRjYzgwOGY1ZTY4MjI2ZWEgbGVnYWN5LXRydW5rCis3MjM2MiAyNTkyYzZhOWRkZDZjNDRlY2Q5NTllZmQ2YzI3OTUyZWVlOTNkNjU2IHB5M2sKKzcyMzYzIDkxMWRmODJiYzI1ZGZiNjJmYWVmNmVhMWI5ZDBjZjcwNDE3YmI5N2MgcHkzaworNzIzNjQgNWI5MDIxYzE5NTEyYmIyZTNhM2JkMDEzMjUyZDI4ZjkyOGY4MzUzMyBweTNrCis3MjM2NSA1NGRjNTc3N2JkZmJmZTYzNjlkODNmNzI3OGIyODQ2YzM4YTg4NmI5IHB5M2sKKzcyMzY2IDdiYWY0Y2MxM2JjZmY2OGJiNWI0ZmI5ODgyZDJkZmJlZGY3NWRkNzkgcHkzaworNzIzNjcgM2I1YzQwMGM5ZGNkNDUxMDM1ZDg3YzQyMzA2ODZiYmJmZGU1ZGQ2NSBsZWdhY3ktdHJ1bmsKKzcyMzY4IGZiMTBiODhhZmQ0MDFlODEyMTJhNWNhY2U0YjE2OGUxODY3MTNiNzMgbGVnYWN5LXRydW5rCis3MjM2OSA1YjRiMDllOGYzMmJhOWNiZTVlMWFiNzdiNzc0NTgxODY3NjI3NDQ0IHB5M2sKKzcyMzcwIGEyMzAzYTc0YTc2MTBjOGUyYzZhNjNkZDIxOWVlYmI4NmJmMmEyZmQgcHkzaworNzIzNzEgYjY2NmU3MmY2MDJmYTg1MjhkODMwMGFkYjRhMDgxNTk2N2QzOWFmZCBweTNrCis3MjM3MiA5ODk1NDgzZTk2MDEzYTUyY2ZmMmQ4MTk3ZmM1NGU4ODY5N2E5YWQ4IHB5M2sKKzcyMzczIDljNGQ5MjlmNDA1OTk0MTcxOTFjM2Y0NWM1YzMzYmJiZTZjOGQ3ZTAgcHkzaworNzIzNzQgNGIxYTlhZmZlMzRjZDRmOTIxMmRlN2I1MjNhZDdhMGE5Mzg4MjJiZSBweTNrCis3MjM3NSBlYjNhZmJkNmFhYTk2ZWY2NzYwMmJiYzAwZTk2MTZlZWRlNDgwMDA4IGxlZ2FjeS10cnVuaworNzIzNzYgNGYxNzM4NGFlOGNiZmU0NjhjMDExMmVkN2U4MjRhOWY2Zjg5YWM1MSBweTNrCis3MjM3NyAwZjZhNzg1Y2YyODZlM2QxZDgzYTVlN2M0MjRmMjc5YWZiMWU2ODgyIGxlZ2FjeS10cnVuaworNzIzNzggNTU2ZDExMzE0YWQ1Y2Y5MTM4MmM0ZmY5MmFiMWRiZDVjZGJhNjAwZiByZWxlYXNlMjYtbWFpbnQKKzcyMzc5IDU3ZTliMWIwODM4ZTUyZGU5NDBjZDA0NzEzNGVhODQ0NzBjNWJkMmQgcHkzaworNzIzODAgYTgxNWFjY2Q4OWU0MGIzNDFhNWQ2MGY1ZDAyMDE5M2FhODFiNGM4NCByZWxlYXNlMzAtbWFpbnQKKzcyMzgxIDg1Nzc1ZDEwMGEzMmM1OWYyY2JkMmExMmNlZjM2YzBiNDEwZTRmZTcgcmVsZWFzZTI2LW1haW50Cis3MjM4MiBlNjIwNzAxYTNlYzg2NDBhZmM2YTQzMjMwYTU1ODFlYjEzYzI0NDM3IGxlZ2FjeS10cnVuaworNzIzODMgYWVjNjJlOWNjNmU4ZWVmYTZhMWUxYmNjZGIzMzQ2YzdmYTVhYzBkMiByZWxlYXNlMjYtbWFpbnQKKzcyMzg1IGJjYmI5NGQ2OTJlZmQ3MTI5NjJkNGVhOWJjMjI0NWEyZWQyY2M3MDggcHkzaworNzIzODcgMjkwMjViNTMwMDQ2Njg1MDBkMDg5YmRhNTlmODg5MmM2NDQ0NmIwOCBweTNrCis3MjM4OCBjYWMyYTVmNGI5ZmFlMTI4NGI5OWNmZGU0MDllYTg3Y2Q3OWZmM2RmIGxlZ2FjeS10cnVuaworNzIzODkgYzZlZmU1OGVlZjY2NTdlZTRiOWYyODk5NDllZmUxYzY2Y2JkOGJkOCByZWxlYXNlMjYtbWFpbnQKKzcyMzkwIGYxYTNkZTlkZjQyNWRiNGMzZjFiNjc5MTMxMDQ4NDdjYTliOGQ3YzMgcHkzaworNzIzOTEgZmI3ZDEyMTk2YzM1YzJiNWY1ZGFhYmNjZDQyOWNlZWNlOTUxYzY3MiByZWxlYXNlMzAtbWFpbnQKKzcyMzkyIDM1NTk3ZDNkYmQwODIwMmNjODg3MWQxZWMxM2QxODA0N2JhZTQ1ODAgbGVnYWN5LXRydW5rCis3MjM5MyAwMzg4YTQyNzI1OThlMzg2NGU5NTU5ZTkxMWI2YWFmMDA3MDMwMWRhIHJlbGVhc2UyNi1tYWludAorNzIzOTQgMGM1MjZkMTg5NTI3MmI5YTUyNTdmODJhMWMxNGI4NzM3MjExZjUzYyBweTNrCis3MjM5NSBhZGM4ZWM3ZjdkMjMwMTlmMDI5YTc3NWYyMTQyNmI1M2JlMGVlZWJkIHJlbGVhc2UzMC1tYWludAorNzIzOTYgZGYzZjVkYjUyOGYwMGIzNzFmNzE2MWE1YmRjMGQ2ZmFjODE5M2Y4ZCBweTNrCis3MjM5NyA3Y2I2ZGYwMDY5OWY0YjM0ZDcxOWJmNmM4ZmNiNDIzZmQ3ODg0NDI5IHB5M2sKKzcyMzk4IDA0YmRjOTQ0NzE4YWY5ZWVmZjE3OThiZGQ1ZDE2NzRlY2M5YTE0M2MgcHkzaworNzIzOTkgOWM2NTQwNDA0MDBkZWZhNGMyOWJiZTYzZTA0NzBmNTM3Y2UxZGM0YyBsZWdhY3ktdHJ1bmsKKzcyNDAwIDBiOWQ3Y2NlZDkzNzFkN2ZiNGM4NTNmNWRhMzMyZjY0YjgxMTBhMjUgcHkzaworNzI0MDEgMDM0ZTBmY2Q2OTRlODgxYTU4YWU0ZjFjYWM5OWVkZmE3NDAxMWI2OCByZWxlYXNlMjYtbWFpbnQKKzcyNDAyIGVjZTdlN2E4MDA0M2MxNTgyNTExNGI0M2E4ODM2NDNmN2MwZmE3MTQgcmVsZWFzZTMwLW1haW50Cis3MjQwMyBjNTJlNTU1YzkxOGQ5YmJjNGZhNjAyYWY5NTczN2EzMGIxOTYwOTc2IHJlbGVhc2UzMC1tYWludAorNzI0MDQgN2RjYTI1MDM0M2VhNDFjOTYzOThlYjY4YWVlNGZjYmQ1YWQ4ZjdmNiBsZWdhY3ktdHJ1bmsKKzcyNDA1IDRhODQ3MDA2NjRkOTI2MjFhZmU4YjQxZDhhMzFmZjhlMDU2YTJmMzkgcmVsZWFzZTI2LW1haW50Cis3MjQwNiA0NjM0MmZmYTI5NjM1M2YzNTA3ZWU3OTQwMWY3YzEwNzg5MjY0ZTJmIGxlZ2FjeS10cnVuaworNzI0MDcgYzBhZDIzYWUyYTNlMWNjZTQ1OTIwMDZkOWEwYjY2YTg2YzlhZTM3NyByZWxlYXNlMjYtbWFpbnQKKzcyNDA4IDYzYjIzYmQzOTA0ZGU3MTY5YzYyY2YwZWJhMzc3OTM1NzVlODhmNjkgcHkzaworNzI0MDkgY2E1NTdmODUwZWVlNjRjZDNmMmZiMTEwYTA4YjU4NGM4NjRhMjhmYyByZWxlYXNlMzAtbWFpbnQKKzcyNDEwIDdhNjdiNjQ3YjllNzc3NzllY2ViMjBhMzQ4MTkyMmU5ZTA5ODNhZGMgcHkzaworNzI0MTIgYjYzMDIwNzk3Zjk2NzhhZGFmNGQyYzNlMjY1NzRhOWVlZjJlZjAyOCBweTNrCis3MjQxNCBhNjI5OTI0MWZiZDliY2M2MDU5N2Q1NDZjMDZkNDQzZmM2NjI3MmU2IHB5M2sKKzcyNDE1IDNhYWFiYjMxMDJlOGU3NTlhODk5NzE5ODEzZWRhNTk5MzY5ODE2OTUgbGVnYWN5LXRydW5rCis3MjQxNiAzNzZmZTE1ODYyNzYwMDA3YjA3NGNkNGVjM2NmNmU3ZTU1ZDE0MzhkIHJlbGVhc2UyNi1tYWludAorNzI0MTcgMjA1ODY5MGE1M2UxMmNlMmUyYzcxMDMwNWMzYmI0MGVhYWJiMzE4OSBweTNrCis3MjQxOCA2NWQ4ZGI1YmViMjAxMjIxOWNiZmYxNzM5ZTQ0NzE3ZGVjOTE0NGI2IGxlZ2FjeS10cnVuaworNzI0MTkgMmEwZmFjYTNkZWVlNTk4M2E1MGRlMTQxMTI2ZmQzMzNjMTliYWUxMiBsZWdhY3ktdHJ1bmsKKzcyNDIxIDc3MTQyOTg1YzY0MTBhNTM1MDRkZjc3NDIxYjY1Y2FkMWY2MDExZTAgcHkzaworNzI0MjIgYTdjYWYyOWQxNDA2MzNjNDUzY2E3ODI3ODJjZjk4MzA3MmE1NDVmZiBsZWdhY3ktdHJ1bmsKKzcyNDIzIGZhYzUxYTAyMmJmNTA5MzA0MDNlZjlhNmYxZmFjYjJjOTg0YjA4NDAgcHkzaworNzI0MjUgODViOWRmNTI1ZTEwNzBmNjM4YWU1NDBkODljODE1ZTA1ZDJhMGU5NyBsZWdhY3ktdHJ1bmsKKzcyNDI2IDIzOGNhZmNjMjUxNWY1ZGIwM2QwYTUxNjhlYmUwZTc2ZmFmNDFhNjcgbGVnYWN5LXRydW5rCis3MjQyNyA2MmJlNWFjOTg5ZjRmODZjMDRiMjQ4OWZiOTRhNzliZmM2NTNmODU2IHB5M2sKKzcyNDI4IGE4MTkwZTg4MWZkZmYyYWY2M2NlMjNjYzkwOTUwNDAxMjc1NjA1NTQgcmVsZWFzZTMwLW1haW50Cis3MjQyOSA3YTNiZDE3OWIxODBkY2MxODk1ZDI4OTdlMmFlMTNiOWYxNDQ1MjQxIHJlbGVhc2UyNi1tYWludAorNzI0MzQgNmM4YjM4MGRiNzI3ZmMyMjFjMjI2ODdlM2JiZDFkZjM0OGE3NjRjYyBsZWdhY3ktdHJ1bmsKKzcyNDM1IGU3ZmUyMTdjZTAxNTdkZDgxNDRlYWFmN2Y2MzMyZWQwNzAyNTE1NzUgcHkzaworNzI0MzYgZjg3NTgzNTNjNmMyMDJiNmM1NmI2ZWU3YzA0ZDM1ZDgyM2E0MGZhYiByZWxlYXNlMjYtbWFpbnQKKzcyNDM3IDU3MGQzZTU4ZWVhOTU4YjIxYTAzZjM4ODRjMjdlNzQyYTBhYWEwMjkgcmVsZWFzZTMwLW1haW50Cis3MjQzOCAwZWYyNDJmMjdkNzY5OTc3YTI2Y2YxMjdmODkxZjEzZTgxZWIyNDZkIHB5M2sKKzcyNDM5IGQ3ODAzN2MxNjIyNTAwNzI4ZjE0YzRjOWY0NjQ0YmMxMDY4YjkzODkgbGVnYWN5LXRydW5rCis3MjQ0MCA1NTAyZmYyZmJkZDYzZDI3ZmVhNjkyYWRiMDAyZDEyNmVkOTVmZjNmIHJlbGVhc2UyNi1tYWludAorNzI0NDEgYzY5MzAwM2IxNWUyMWQwNDUwZjc2ZTMzMTMzMGVlMmMwNDdkYTYxZiBweTNrCis3MjQ0MiBhYWM0MDU1ZDA2NmEwM2UzOTRmZDMxNTI3NGZjMjJiMTc4ZDQ4ZmY0IHJlbGVhc2UzMC1tYWludAorNzI0NDMgNGMzYTg0ZTU0ZDA4MjY4MTZhOTAzZWIzMzdjYjMwMDc5M2QxZDhkOCBsZWdhY3ktdHJ1bmsKKzcyNDQ0IDBkNWUyYTkyODZhMmE0Yjg1M2VjZTM1MTMzYjJjMzNiMzc0NTE1YTYgcHkzaworNzI0NDUgOTE0M2QyMGQ4YjI2MzlkMzg2YzFmZjY4ODY4YTEyNjYzNTkwNTYyNCBsZWdhY3ktdHJ1bmsKKzcyNDQ2IDE5OGI2OGFlMmMyZGY1MzczYTA3N2RmMmVhMDZhYTcwMWIyMzhiNmQgcHkzaworNzI0NDcgZjVmNTA3YjU1ZDQ2NTc5NTE1ZTRlNTA1Y2NkY2M1MzIyYWZkNjczZCByZWxlYXNlMzAtbWFpbnQKKzcyNDQ4IDhmM2RhNzEzNGNhNWYwN2EzNjVjYjAyZTY1Zjg3MzNiNjE2ZGJkOWIgcmVsZWFzZTI2LW1haW50Cis3MjQ0OSBlNTY3MTJlMTg2ZjlkZjhjNWI2MWVkYjA0YzZjMDQ3YTFhZGZjMTg4IHJlbGVhc2UyNi1tYWludAorNzI0NTAgMmRmMmQxZjA5ZDU4NWQ3MmY0MmRjZmIxNmRhODM4NTlmYTE1ZjNjMyBweTNrCis3MjQ1MSA2YTcxNTcyN2YxOWY3NTVjM2I0NTM4ODYwMDg4YzlhYzdmYWIwYzBlIGxlZ2FjeS10cnVuaworNzI0NTIgNDdiM2ZlZWE0ZTFhNTFjMjAxOWQ5NmY5YTJiMjU1MjEwNzFhZDUyNyByZWxlYXNlMjYtbWFpbnQKKzcyNDUzIGMxNDJlNDUzODk0MWU2M2RkMGIyNDdiYzhmYzM3YWE2MGY5NzhmNzkgcmVsZWFzZTMwLW1haW50Cis3MjQ1NCAxMWFkNjU0NTgwOWFjN2JmYzUxOTFhZmM3Yzk1NDUxN2FkNDRlZjY2IGxlZ2FjeS10cnVuaworNzI0NTUgYjNiMTU1NTgzZTA1NWQzOTgxN2RkYjg4ZmQ3OTUzMDUyNTg4NDdkZiBweTNrCis3MjQ1NiAxN2Y3Nzc0Zjc0ZGRlYjZiNDQwYmUxNDM5OTViMDViY2UwZGM4OWJmIHJlbGVhc2UyNi1tYWludAorNzI0NTcgMWNkMWIyMTQ1MmQzOTUyNjY4NTlmNmM1ZWRlYzdkNjZhOGQyMjYxYiByZWxlYXNlMzAtbWFpbnQKKzcyNDU4IGEwMTVhMjk4NTQzZGRlYjE4YzI3ZTg3MzU2ZDQzN2JmMGEyZWU2YjAgbGVnYWN5LXRydW5rCis3MjQ1OSAwNDZiZDJhNDEzMjJmYWVhZGE3ZDhmYzdjYzlkZmRkM2JmYmIzOGQzIHB5M2sKKzcyNDYwIGEzNmZhMmNlNjFiMWYzY2I2ODQ2ZjU3MmY1NDc5ZTNmNWE5ZjA5NDAgcmVsZWFzZTI2LW1haW50Cis3MjQ2MSAxZWNkY2ExMWViOWVjMjg2NDAzNjM0NGM4NWE5YjU2NmZiOGZlYzM5IGxlZ2FjeS10cnVuaworNzI0NjIgMjk5M2YwNDllMmM5NTMzM2U2ZDcyOTIyMjQ2MzYwZTc0MjcyMDdmMiBweTNrCis3MjQ2MyA1NDIwZGFlMzU1ZjczYzYzNTAxY2Y5YTcyNjVjZWE3NmRiODFkMWJlIHB5M2sKKzcyNDY0IDM3NDk3YTc3OTNiMmZmNzNiMDgxYWM2MDZjOWZkYjEzNTIwOTFkZjYgbGVnYWN5LXRydW5rCis3MjQ2NSBmMWZmODdiOWI0MzczYjJiNGM4Y2Q0MGE4MjIwZjNkMjc0ZmViYmI3IHB5M2sKKzcyNDY2IDIzODUwMjQ2MDc5NWJjNjBmZTc5NzM0YzAxYTUxMzMyOGQwYTI2OWQgcHkzaworNzI0NjcgNjZlY2M4OTZiN2U3M2EwNTRiMTY2M2E4YWYxOTJhZDZmMzAyYzllNCBsZWdhY3ktdHJ1bmsKKzcyNDY4IDljN2JjYjdlNzQ4YzE2MjQ3ZGU0OTRlNzIxYmE0MmUxZTc5M2U3MmYgbGVnYWN5LXRydW5rCis3MjQ2OSBhNmU2YTU3Y2NjYzI5YTRlNTVlOTM5MjRkZmY4NDQzODBlOWFjMmM5IGxlZ2FjeS10cnVuaworNzI0NzAgNTI4MGY3NTViNDhhMTRiNDFhMjg0YTY3M2ExYjdmZDcwODZjZTM2YiBweTNrCis3MjQ3MSA2OTRlZTIwYzhjNzQzYmViNjlhYTE3MTRlNWJmNjMxZDhkZjhiZGMxIHB5M2sKKzcyNDcyIGJhNGU2YTNhZjU2NGVkNzBmZWJlODdjOWY3NjUzYjVlYzkxNmNjY2QgcmVsZWFzZTMwLW1haW50Cis3MjQ3MyA1ZWE1NDYzNTcyMjZkZGFkZjQxNWRlMzVhY2QyN2ZkNjNjNDVlOTJhIHJlbGVhc2UzMC1tYWludAorNzI0NzQgMTcxMjUyM2Y5MzZjNTBjZTUwY2E3YmQ3Mjc4ZWMzYzdiZDY1YWZiMCBsZWdhY3ktdHJ1bmsKKzcyNDc1IDVmMjE1NzQ3OTc0OTVkNTYwNmJhNTg5MGYzMDMyZDIzNzJkNDA1YmQgcHkzaworNzI0NzYgZDRlZmM3MzM4NzA2YmM0YmFlOTc1NDY3YzVkYjIyOTY0MTA3MjMwMyBsZWdhY3ktdHJ1bmsKKzcyNDc3IDdhOWUwODFlY2U0YzNkYTFjNDYwYTQ3ODhmMmNlODk5NjhkODdhZDkgcHkzaworNzI0NzggY2I3YmU2M2I5MWQ4NWVhOGFlZmVlMTY1ZTk3ZmRmZTRlODczYzZhOCBweTNrCis3MjQ3OSAwZGFlN2ZlZmVkNDQwNWM4NDJlNGQxZDMyZWRmNDJjMTUzYjc0NjI1IGxlZ2FjeS10cnVuaworNzI0ODAgOGI5ODk3ZDE1Y2ZjODBjZWU2ZTgwMTYwZmQ1NGEyZDNlZGE1ODdhMSBweTNrCis3MjQ4MSAyMDg2OWQ5NzhiOGI0MzA5YTkyYjI3YmE3OWI2NzNmOGQ4NmIxMWU0IHJlbGVhc2UyNi1tYWludAorNzI0ODIgYjg2N2NlMzc1ZTk4Y2QwZDIzM2Q2NzQ1ZDY4MWZmMjkyZGFkZDVmOCBweTNrCis3MjQ4MyBmNDk1MDA5NmU3ZDdiNDc3ODg5NjQwYmJmYWJiMGQ0NGJjOWUwNjNkIHJlbGVhc2UzMC1tYWludAorNzI0ODQgMDY3YTYzOWQ1Zjc2NTkyMmIzYzRhZjhkNDI3OGYxZjMwMDIxZTdhMCBweTNrCis3MjQ4NSAwNzIyZjIwNGQyNmUwNDViZWVmZWRiOTYwZGUwYjllNTU3NzQ1ZjVmIHB5M2sKKzcyNDg2IGY5MTdhYWU3NDFkNWU2MWZmZmRlMWU5NmRiMjI5YWE0YWIxYjkyN2QgcmVsZWFzZTMwLW1haW50Cis3MjQ4NyBhMTcxMDQ4ZGFmNzZmNDI1Nzc3MDgwYTNiNjllMjJmZmQwYjA2NTY1IGxlZ2FjeS10cnVuaworNzI0ODggOWVmNjgzZDQxYzliMjIyOTdiY2M0YjA1Yzk2NWQ2ZmFiYzNlNzMyYiBsZWdhY3ktdHJ1bmsKKzcyNDg5IDUxMGZmYzVkYjIzMjU4OWM3NjkzYTRlYWM4ODIxZDM1ZmNmZGJjY2YgbGVnYWN5LXRydW5rCis3MjQ5MCA0NDZhMTVhMWJlZThmZDA2OTQ0MDhjZmM0NDZjMTBhNjdkNTBkMDFmIHB5M2sKKzcyNDk0IDExOWU0MzIzNDAwZDAxYzgyMmViMWUwYzc1ZmE1ZWYwZTZiY2I2MTUgbGVnYWN5LXRydW5rCis3MjQ5NSA3Mzk4NmE5Y2ExZDYzZGZiNTk1NGY2OTg5ZThmY2U2NmM1YjBlMzhmIGxlZ2FjeS10cnVuaworNzI0OTYgMWQ3OTQ4Y2I1NDMwMDBhZjNkMWZmMTQ2MDYzN2FhNjM2YjU0M2E4OCBweTNrCis3MjQ5NyBjY2ZkYTE0ZDE1NTQ4MWY0ZTQ4NzBlZWIyYWU3NWZmNDc2NjIzMGQ4IGxlZ2FjeS10cnVuaworNzI0OTggZDY2NjAzZGQzYjJkNzE4YWJlMWY3NjY3NzM3Y2UwYjY1Yjg2YTMyMSByZWxlYXNlMjYtbWFpbnQKKzcyNTAwIGY5ZDllZWM2YmU2NzAxNzg0N2ZkN2Q3YzI3N2ZjNGQzOGJhZjcyMGQgbGVnYWN5LXRydW5rCis3MjUwMSA5ZjcxM2Y2MDVmNjBlZmQ1ZjQ0YjViYzVmMWQzNzA5OGM2MjA5NmNlIHJlbGVhc2UyNi1tYWludAorNzI1MDIgMzZmYzA3OTg0MTdmMTRlNmQ2YzNjNDM1NDU3MTdhOTg1ZDQ5OTM1YiBweTNrCis3MjUwMyA5OWRkMjllMjRiZGUzZDRlZTVkMDY5ZjBkYzk2NjRjYWM3NDdjM2M1IHJlbGVhc2UzMC1tYWludAorNzI1MDQgOTYyYjRmZjc2Y2NhMjEzNDU3NTMzYzhhZDc2MTU0YmJhYzA1NmI0ZCBweTNrCis3MjUwNSA5MjA3ZDQyOTIwM2ExYzVhOTY1MmQ4Mzk5ODlhNTQ0MGZiNmU4YzZlIHJlbGVhc2UzMC1tYWludAorNzI1MDYgMDcyYThhN2NlOTczY2RkZTQ2NGU4OTUwZjQxNGRiNTMyMDVkODI1MyBsZWdhY3ktdHJ1bmsKKzcyNTA3IGViNmViNDlkYmFlOWVjN2RjZjIyMWU0NmI3ZTgyN2UwZDZkOGMyYzUgcmVsZWFzZTI2LW1haW50Cis3MjUwOCBmOTBiM2VlYzdjMzI3OGM1ZjkwZGFhZjM4ODYzMmMxNTJiMGJjMWM2IGxlZ2FjeS10cnVuaworNzI1MDkgNWRkM2IzOGEwOTc3OGE2NjczY2JmYzZlMDhmN2I4NmU1MTRiMmMxYiBsZWdhY3ktdHJ1bmsKKzcyNTEwIGI3OTIwZTE4MzQyMjhmNWVmNzg0YmJiMmE2ZmNkMzI0MmEyZTFiOTUgbGVnYWN5LXRydW5rCis3MjUxMSBhZmQ2MmViMTY5MmVmMWFjYmFiZWIxYzlhMDU5ZjFjZDYzMGM5MThhIHB5M2sKKzcyNTEyIDMwZWRkN2Y2MTAxYmQ5YTdmNmRhOTNmMmJhZDA4NzIzOThmM2E3OTcgbGVnYWN5LXRydW5rCis3MjUxMyAzMjdlMjNhNmE2MTAyMGFlMGUxYWY2ODVjZTg3NzM1N2JiZDdjNjQxIHB5M2sKKzcyNTE0IDI2MWY1OTQwMTRjNjIyNWEzZTk1YzY1MTU3MGM2NmViNjhmYTE2NGEgcHkzaworNzI1MTUgMWIxNWE1N2UxZjAyZjRiYmUwMTM1YTI1YThiZGUyMTE1ZmE5MWUyMiBweTNrCis3MjUxNiBkMmIxNzYxNjFhYmYwYjM2NmNlZmM2ZTM3NmY1ZjQyMjQyZDg4YzRhIGxlZ2FjeS10cnVuaworNzI1MTcgNzJhNTAzOTRjMmRkZTgzOWI3MzZjYzA5NGYwZGVkNTI0MWZiYzk2YSBsZWdhY3ktdHJ1bmsKKzcyNTE4IGFhNDFjOGM5NjA1NTAwNmYwNzNmYmZiNzk1MTlhZTk4MDllYWQ0YTQgbGVnYWN5LXRydW5rCis3MjUxOSAyYjQwNjUzODg2NmQ5MDkxNzZkZjJlOTk2MDZhZmY0OTgwZDA4MWUzIHB5M2sKKzcyNTIwIDI5YjUxOGYyOTZkZTAzZThlNDcyNzhjOTQ2NDI1NDIyOWY4NGExYTggcHkzaworNzI1MjEgMDU2YWE3NjlkYTg5MWExMGYyZTc2NDVkZmQzMDAyNjY5MjdiNjYzMCBweTNrCis3MjUyMiA1NzAyZDJkYWQwZjllYzhlZTBlNzViZTBkMjQ3NGEyMzg0ZDZhYjBiIHB5M2sKKzcyNTI0IDEzMTE3NzI4ZDA4NmRhNDI1OWQ0NWYzOTE2NGQ5ODM1NDZhY2RiY2QgcHkzaworNzI1MjUgYTdjNTNmYWQxM2JjMzZkMjIwMmNiNjExMmMwMGJmM2NiODkzOGNlYyBsZWdhY3ktdHJ1bmsKKzcyNTI2IDNlODRkNjAxMjZiN2UwMjljMDgyZDA5MWQ4Y2M0OTc3NGM4ZDc5OTcgbGVnYWN5LXRydW5rCis3MjUyOCBmYmNkYWUzZTBjYTFiZWMxMGY0ZGVkZDk5YjM1MmM0YjNiY2JlZmY4IHB5M2sKKzcyNTI5IDdjMjliZmJmZDM1MjQ0ZDA0YzQzOTQ1ODUxNTFjMDE5NzgzNzQ4YzEgcHkzaworNzI1MzAgNDFjMDllMTQyYmQwMDZlMjA5ZmZmMTQ0OTBiNTEzYTE3N2VmZjkwYiBweTNrCis3MjUzMSBlOTFhNzdhNDgyZWJlNGUxZGE5NWU1ZGQ1NGQ5ZGU5ODRjNzkyMGFkIGxlZ2FjeS10cnVuaworNzI1MzIgMzVlOTgwM2EyZjRlNDVlNDRkZTk4YTVmMzk3MDJiN2VjZWIzNDAyMiByZWxlYXNlMjYtbWFpbnQKKzcyNTMzIDA1MDc0MmJiNjBkNWIxNzM3NGExOWQ1YWFkZDJjYWMwMTJkMzFhMDcgcHkzaworNzI1MzQgOWU2N2MyZjk5OWM5Y2NjNjNkNzcxNGU2NzIwZmI1YmU3MTUzYjM3YyByZWxlYXNlMzAtbWFpbnQKKzcyNTM1IGM2MGNkYTM0MThiNTRmNjUwOGNhZjIxN2NiYTM2YTU4NTU1NjZlOGUgbGVnYWN5LXRydW5rCis3MjUzNiA4YTA0Nzc3YjU5Y2JkMGFlODUzYjFmNmQwNjJjZjM2OWJiZDdlMjBjIHJlbGVhc2UyNi1tYWludAorNzI1MzcgNTIyNGEyNThkNWJiMDRlMjA3OWIzMzAzYjFkNTJkNGZjM2VlZjQ2MyBweTNrCis3MjUzOCA5YTZmNWUwNTMxYTYzMTg2MzA0ZDJhMmZjNjkxYjM3NWYzM2U5ZmI3IHJlbGVhc2UzMC1tYWludAorNzI1MzkgMWJlYzY0YjhkZDE3NmFhOTUzNmZjZjUxY2EzZmE2NTViZjJhYTllYSBsZWdhY3ktdHJ1bmsKKzcyNTQwIGFjNDg5NDY5MzQxMWQ0MTdlZWEyZTUzNmRjY2I2Yzc4NTFiYzBmMzEgcmVsZWFzZTI2LW1haW50Cis3MjU0MSA4ODhkYWEwMDNmYzNjZTM1OGJmZjdkMmY2ZThlNTYxNzc4NTU1OTU0IHB5M2sKKzcyNTQyIDg2YTNjOWE5YzZkZTQxYWFiN2I4MWRkYWY4NDZkNjlkMzQ4NzA3OTggcmVsZWFzZTMwLW1haW50Cis3MjU0MyAxN2M1M2ZhMzc4OTAxNjcxMGRjYTFkYzIyMzcyY2QyY2UwMDg5MGMyIGxlZ2FjeS10cnVuaworNzI1NDQgODgwM2FlMGRmM2YzYTU1NmU0Mjk3ZjUxNjZjMWE2NzZkNzQyNDg0MiByZWxlYXNlMjYtbWFpbnQKKzcyNTQ1IDI0MWRhYTI1OWFmOTZjM2U5MjE3NzY2ZDEyZjdkMjhkNTdiMmIzNWUgcHkzaworNzI1NDYgMjgxZDJlMjNiZGIyZDNmYzI1OTcxZmY5MDc1NDhmMDRmN2M0ZWFkZiByZWxlYXNlMzAtbWFpbnQKKzcyNTQ3IDE5MjdlOGQ3OTE0Nzc5NTdkMTk5NzlhNTIwZTU0OWUxMmUzMTY5MDQgbGVnYWN5LXRydW5rCis3MjU0OCA0YWUwMWEyNDE2NTBkNTY0OGY4M2RlOGYxNDcwZTNmNzVkYmI5YzcwIHJlbGVhc2UyNi1tYWludAorNzI1NDkgZjk4MjI4OWY5M2NmYjhlMzQ4MGI3NTJhZTI2OTliYWViOThkZTc5ZSBweTNrCis3MjU1MCBiZGNkMDVhODFhY2JhMGVlMzg4YmU4MGUzNTI2YTdkNDc3MmQ5ZTljIHJlbGVhc2UzMC1tYWludAorNzI1NTEgNjMwZTY4MTEwMGUwOGU0OTJhODUwMjljY2E4N2FkY2JiMGQ5YTZjMiBsZWdhY3ktdHJ1bmsKKzcyNTUyIGQ2NWQ3MTg5ZGUzMmNkM2VhNTYzZTQ2MzU1YmUxNGIyODc1ZDFlZWYgbGVnYWN5LXRydW5rCis3MjU1MyBjNzQ3MWM5MTFhZDI0ZWUzZGFmMWU2OTlhMzI3NDI5NmFkMjFiNDQ3IHB5M2sKKzcyNTU0IGVhMmU0MjVkMWY2MDBjYjFiZmE3ZWI1MzY2NDAzMTg0MzYxMDcyYTkgcmVsZWFzZTI2LW1haW50Cis3MjU1NSBkMDJiMGU3MDczNzdkM2VjNjYxYTY5Mzc0M2NjNGE0ZDgyY2QwOWY1IHJlbGVhc2UzMC1tYWludAorNzI1NTYgNmU3YzdmNDI0NDM2YjY3ODgyYjc0YjkzOWM4Y2IwZmU5ZWRmMjE0MyBweTNrCis3MjU1NyAzNDE2NzIxNDgwYjIxYzVmOTYyYTM2YmM5OTIyMTFhNzJlZGIxYjZmIHB5M2sKKzcyNTU4IDRlYmNkMDE0ZjNkMDZhMDcxZGY2MTQ0NDhlNzc1OWZiZmE0NTMxNjQgbGVnYWN5LXRydW5rCis3MjU1OSAwNDk1YmM0N2NkMDg2YTk3YmNkYzg4NDM1ZTYzNjA2Mjk4MmVlNjhlIHB5M2sKKzcyNTYwIDRiNDE3NDNmNjUyN2NiYzhmMzE0NGZiODU1M2EzODMyOTM5M2I1NDkgbGVnYWN5LXRydW5rCis3MjU2MSA2MWM1YmRiMjk0Zjk1MTg1YTlkZWZjZTVhNWQwZjNiNjg4NTY2Mjk4IHJlbGVhc2UyNi1tYWludAorNzI1NjIgZjIwMDkzNzE5YzBlZmYxMDU2Yzg2NTJiYzIwNjllNTdiZjRlZWQ5NyBweTNrCis3MjU2NCAxMTlmNDIzMmFmNDYxODBhNjQ4Njk3M2M2OWJjYWI2ZWQ0MzJkMTQwIGxlZ2FjeS10cnVuaworNzI1NjUgOTQxNGMyYjE5MjNlZGVhOGQzNWNjNzk1MGM0MzVlNGRmNDYzMmFlNiBweTNrCis3MjU2NiAzNWM2ZDQwN2QzYzllZDQwYjAyM2RlMGE0M2E4YjhmM2U1YjUyYTNhIHJlbGVhc2UyNi1tYWludAorNzI1NjcgZTllZGNhZjQyNTQ3M2Q5ZjFhYTYzZDg0M2Y1NWQ4MjcxZDA4NWUyMCByZWxlYXNlMzAtbWFpbnQKKzcyNTY4IGMyZTJiNDdhODdjMTQ3YjQ0YmI3YzVjY2MwMjVkOTZiMjc1NWI3ODcgcHkzaworNzI1NjkgOGE3ZTg0YWU0NmM1ZGQ4NTZmMzkxOWE3ZTQ3MWZkYzYzYWM4MjYxYiByZWxlYXNlMzAtbWFpbnQKKzcyNTcwIGNjZmNhMjU4Nzg4NTNlOTE3Y2YzMTczZDVkM2MxYTA1MDQ5NmYyYTEgbGVnYWN5LXRydW5rCis3MjU3MSAyMjI3N2RmZmM1NzFjYWU3ZmJkODFhNTM1ODU0M2I0MWMwZGNiOTQxIGxlZ2FjeS10cnVuaworNzI1NzIgODkzMDU0OGFmNzM0ZTAyNmYyNmJkNGMwYTEyOGE0ZGJmOGY4NjhjNiBsZWdhY3ktdHJ1bmsKKzcyNTczIDg0NjE2ZWJmMmI0ZmMwODdiODg3NmQwOGY1NGZkOGRhODRhMTgzYTQgcmVsZWFzZTI2LW1haW50Cis3MjU3NCA1ZDBmNWM1NzEzNTc5N2U5Nzg1YmFiZGQ0MGIxZmM4M2VjZDVmNDIzIHB5M2sKKzcyNTc1IGEyNmFmODVhYjg5NTBiNWYyYzcxMDg0ZTZmY2UxY2VkNDEyYzlkMGEgcmVsZWFzZTMwLW1haW50Cis3MjU3NiA1OWNiOWMwNzRlMDk3YWM3YzJiN2ViNDRjMjJmMjcxZTNiMmE4NTQ2IHB5M2sKKzcyNTc3IDk0MmYyZDZkNWM1Y2MzYzZkMmQyZWM1YzA3MWI1YjE4NDljYzMzOTMgbGVnYWN5LXRydW5rCis3MjU3OCBiZDgwZmI4MzZiOWU5ZmQ4NThhZDViYmQ1MGE0ZWU3Mzk5YjVkNGJiIHJlbGVhc2UyNi1tYWludAorNzI1NzkgNTQ2MDQ2ODhiM2U5N2JkMzBmMzA2ZTdkM2E3MjljYjA5NDk0MjVlMSBweTNrCis3MjU4MCAxMzU3MzAzNDExNDg3YzU5ZGM0NjViYWRlZGI2YWQ3YmZjNWMxYjdhIHJlbGVhc2UzMC1tYWludAorNzI1ODEgMjU4MjE5NjQ2ZTNhZGI5ZGVjMjAwYjRhNzgzZDM3YzI3OGE4ZmQ4MSByZWxlYXNlMzAtbWFpbnQKKzcyNTgyIGRmZTU4NjVlNWY5ODA5Y2M1ZTRiYWY3MTM3NTA1ZTY0MWE5NjM5NWMgbGVnYWN5LXRydW5rCis3MjU4MyBiZWFjMGI0MWNmYjE0ZmVjMTAyNjQ4MTNiZGZlYTRhNjBhNWQyOTkyIGxlZ2FjeS10cnVuaworNzI1ODQgZWZlMTJhYThlZjE5Y2QxNTFhNjAwZDFiNDNiNjE0M2ViNTMwOTQxOSBweTNrCis3MjU4NSBlODIwOWFiNDk2OTE0ZTI4MzgwNDUyNDZiMDA5YjQ5ZmMwZDc5YmIyIGxlZ2FjeS10cnVuaworNzI1ODYgMTVhOGY0ZjJiYzg0ODQ1ZTIzOWUzMGU1ZjExYjZhZTc4NDJkZjdlMSByZWxlYXNlMjYtbWFpbnQKKzcyNTg3IDkyNGRiYjdmYzZjNTdmYjA2MWI4YWE2NDc1MjFiNTU5NTU3ZGEyYTggcHkzaworNzI1ODggYjYzODU3MDM3MDNlMWNjNzgxZDM1Y2RlZTQ4OTc4YzFlNGFiMDliZiByZWxlYXNlMzAtbWFpbnQKKzcyNTg5IDVmY2UxNGUxZDcwMzJjMmNlZTMzMDNlOTViMThiNzk5YzBlOWQyZTkgcHkzaworNzI1OTAgNzhmYjdmOGNkMzQ5MjJkZjE1NzFlMmFlOTA1YzY0YWE3YWI2NWUyZSBweTNrCis3MjU5MSBjMmM4ZDBkZGYxODc3YTliYWU0ZTcyNWIxZTc1NWYyYzM5ZTU5Y2FmIHJlbGVhc2UzMC1tYWludAorNzI1OTIgZDg1YmQ0OTlmM2Y0ZWNlN2EwZDJjMDcwM2NiOWE2ZGE3NTg4OWVmNSBweTNrCis3MjU5MyBkMjIxMjRjNjQ0ZmZhNGI4NDUwM2M4NjZhYzA0NDRmZTdjYWU4MGJhIGxlZ2FjeS10cnVuaworNzI1OTQgNzM1ZWQxNzhkZmFlNTI1YmVjMTk0OTIxOGVkMjg0YThkZTcxMmZjOCByZWxlYXNlMjYtbWFpbnQKKzcyNTk1IDJjMWQ4ZjJkMzgzOThmZjI5NWE2ODJiN2ZmZDY1OThkNmM1MDhmZGYgcHkzaworNzI1OTYgMDU0NjgwNWIzMDIyYTA2NWY4MjUxNzBlMzM4N2ZmOTcyOWVlNDZlOCByZWxlYXNlMzAtbWFpbnQKKzcyNTk3IDY0MTk4MjhlZjY1YWM0ODEzY2MxMDU5MDc5NzJlZDg0MDdhYzQzODAgbGVnYWN5LXRydW5rCis3MjU5OCA0ZWJlNmIyNjBjNTViYmMwMzQyNGY2NzRkZjNhZmIzNWQ2MWFjNDllIHJlbGVhc2UyNi1tYWludAorNzI1OTkgMTllOTU5NjI2MTA5ZjMyNDU4M2E3YjJmYzU3YTk4NWJhZWQyNDdkOCBweTNrCis3MjYwMCAyZDZmZjRhOTQ5NTNjZjk0MzVjY2NkZDY2ZDU3ZGU4MTk4ZDBjYmUwIHJlbGVhc2UzMC1tYWludAorNzI2MDEgYmJiOTExZjdjMGMyOWYzY2FjMjdmYjIzZjMwZGQyZGQ1MDc5NDViMiBsZWdhY3ktdHJ1bmsKKzcyNjAyIGY1MGVkZDRiYjQ4ZjgzYjg4MjhmOGVkZTdjODYwYTg4OGE0YWU5YjMgcmVsZWFzZTI2LW1haW50Cis3MjYwMyA2ODhkOTRlODZjYTI4OGRkNDViYWQzNDk2NDU1ZjI4N2RiOGQ4MzYxIHB5M2sKKzcyNjA0IDM1YmE2NWYxY2M4MTc5NjM1ZGYwNjAwNTdlMjQ1MzQyZTdjMjAwYjMgcmVsZWFzZTMwLW1haW50Cis3MjYwNSAzNDdlNTllYTFhNzFkYTY4MWRiZmU2YjQzODllMjE3NTQ2NzIzNmY1IGxlZ2FjeS10cnVuaworNzI2MDYgMzE5NTI0NTI0ODViZmEyYjQ2MGE0NWNkZDI3YTRlOWJiNmRjMzIxOCByZWxlYXNlMjYtbWFpbnQKKzcyNjA3IGU5YTdhZWU4ZTgwMDQxZTEwZDI0NjEzODUwZGYwZDYxZmM4YWVkNjggcHkzaworNzI2MDggYmQyZjdlMTNmZDczZWRmZDA0ZWQ3ZjVjZjVlMzA2MjMxMDRhNTM1MiByZWxlYXNlMzAtbWFpbnQKKzcyNjA5IDAyMzE4NzZmMzEwNDNkMTg4NjEzODAyYWI2NTZmZmVmYjQyYmE1MjEgcHkzaworNzI2MTAgYzUxODA4MjY5MjE0ZDIyMzA4MGRiNjRkNWJlYWRlYTYxZTQ1YTExOSBsZWdhY3ktdHJ1bmsKKzcyNjExIDkxMzc3ZGE1NGVkZTk1ODRhZWMwNGMxOTU1OWJmNmRjYjEzMmJhYzEgcmVsZWFzZTI2LW1haW50Cis3MjYxMiA4ODJkOTc5NTQ1MjYwYWI1NjA4NGY3YTA3N2FhNWJiZGVmZmRiZjA3IGxlZ2FjeS10cnVuaworNzI2MTMgOGY2ZTkxMjM3MDI3NDIyODAzYWRiN2Q1ZDlkYjg5MGZmNTkzOTRkNyByZWxlYXNlMjYtbWFpbnQKKzcyNjE0IDMyM2UxZDg0OGI1ZmZmYWY3MjE3Yzc1NTUwNjgxOGNhYzVkMDhjYmIgcHkzaworNzI2MTUgOGM3Y2MxNmRjNzljNDhlZDc1Y2I3ZmJmMjRhMzlmZTBjNTgzYjMxNyByZWxlYXNlMzAtbWFpbnQKKzcyNjE2IGE2YzRjZGZkYTlkNmQ1MDc5NTZkNzJjMTI1ZWYwZDI3ZDQ2Y2IxYmEgbGVnYWN5LXRydW5rCis3MjYxOCBiZjY5OTAyNjQ1OGU0OTAyNGE5OGEwNmYyMGM4NjIwY2U1NWFiMzkwIGxlZ2FjeS10cnVuaworNzI2MTkgZGRlZTRkMDVmYTE3ZWExZGE3MWNjMTY4NmNhMzYxYTZjNDkxYzdlYyByZWxlYXNlMjYtbWFpbnQKKzcyNjIwIDc4MTRiZTY5NjdiOGJhMDg4NTgxZmRjYTA5ZThlOGExYzA5NjYzNTEgcHkzaworNzI2MjEgYmVjYTZkN2NjYzkwNzcxZWNkZTk5NjE3NTc1Yzg4MzA2NjNhODg4YiByZWxlYXNlMzAtbWFpbnQKKzcyNjIyIDNhNWY2YjYzMzQ5OTM0OTQ2OTYwMjdiNzc0ZWU5OGE4MzYwMGJlM2EgcHkzaworNzI2MjMgYTY5ZTdjYzA0OWJiNWVjOTllNzg0ZTkzOTk2ZGVmMTRlMjgzMTlmNCByZWxlYXNlMzAtbWFpbnQKKzcyNjI0IDY3YmFmMmMxNzM2OWY4NGY2ZTZjMzg1OWQ5NDM5MTAyNzgyOTI4ZWQgbGVnYWN5LXRydW5rCis3MjYyNSBiMDVkNDc5ZDFjYjBhZGZhYmE4OWU4NTExOGFmZTE2MzBhZWE5NTY5IHJlbGVhc2UyNi1tYWludAorNzI2MjYgMzkxZGI4MGQxYWY0Y2YyNmNiYmIzYTljOGI0MzA2MDFiNzVmNTgwMCBweTNrCis3MjYyNyAzN2Y5MGYyZjQwMzQ5YThjZjBlZmZiNmFlODBkMTI0Y2EyZmQ4NGIxIHJlbGVhc2UzMC1tYWludAorNzI2MjggMWQwNDhjOWY0M2RjNjZhMDJiNjJjODdjNzIyYzk4ZDg1MGI4Zjk1MiBweTNrCis3MjYyOSBhYTc3ZmQ4NjI2YmE5Nzc3MTBjNzIzNjY4NjcyNWRmOTQ1Nzc2NTUyIHB5M2sKKzcyNjMwIGU5NjIxMjk2NjVkODA0NDc1YjJiZjExNjU2OWEzOWU1M2YzZjhkM2IgbGVnYWN5LXRydW5rCis3MjYzMSA5MGE4MTAyZDdlZmJkNjkwMGRkMTNhYjgwNmY2OTZiNWNjN2ZhZTA3IHB5M2sKKzcyNjMyIGM3MmQ0ZmNlMzAwMDU5N2RjMTI1OTEyMzA1ZGZhYTYxMzgwMWRkZjIgcmVsZWFzZTI2LW1haW50Cis3MjYzMyA2ZDY5MTQxNzdmNjAyNjZiNWRhMDQ0NzMzOThkNmMwNzU0YWRiOWNhIHB5M2sKKzcyNjM0IDkxMDMwOTI3NjM3Njc0ZGY1YjEzMjE5N2M4NmVjMGFhNmY0ZmY0ZWEgcmVsZWFzZTMwLW1haW50Cis3MjYzNSAwN2I1ZjIwZDAyNWE4N2Y3OTNiNmEzMTJmOTQ3MDdkZmFkNzFhOGFiIHB5M2sKKzcyNjM2IDM4ZTM1NDYwOWNmMmQ1NjYyZmZjODhjMDU5MjVjYmI3NTEyZDIwNDYgbGVnYWN5LXRydW5rCis3MjYzNyAyYTdjZTEzY2VhMjUwODNmOTk2MmVhZTFiYTc1MDlkZmQ3NTBiZWVlIHJlbGVhc2UyNi1tYWludAorNzI2MzggZTY5MTIwYmU2NWM0NTI3OTA5ZDlhMWYwMjkxMDQ5N2YxZDE0MDdjMiBweTNrCis3MjYzOSAwZmNmMmFjZGU0NzM2ZDJhZGUwOGY2N2YyZGUzNDNmNjlhYTlhNzI4IHJlbGVhc2UzMC1tYWludAorNzI2NDAgZTRkOTM3Zjc4OWExMTMxNGZlMWJkMmU4YjBlYWRmYzMxNGIwM2I3ZCBsZWdhY3ktdHJ1bmsKKzcyNjQxIDczZDliOTczNTQyNDhhOTBhODgyZjU0MWZmNzIxMTY1YzA4MTFhNDQgcmVsZWFzZTI2LW1haW50Cis3MjY0MiAzYzRiMWI0NTAxYzFiNGQ4NzIzMmI0YjRhODdiNDVhNTExNzVkNTFiIHJlbGVhc2UyNi1tYWludAorNzI2NDMgNmJlNTg1NGU1ZGY3YWFiYWQ2MjQ4NWE3MzE3YTc5MTA5MGMyOTE0NyBweTNrCis3MjY0NCA3ZTNkN2I1MjI0YjFlYWI2YWVhZDIyM2UwMjQxOTg5MjNhM2M0ZTk1IHB5M2sKKzcyNjQ1IDkxZWE4ZmNkNDU3ZTVjMTQyMzRiOTY4OGQ4OTZjNDQxZGMxMTAxMGYgbGVnYWN5LXRydW5rCis3MjY0NiBhYjMwYjIzN2I2MDAwOWI3MjdmOGNhYmM4Y2IyM2I1NGY5MmYwOGNjIHJlbGVhc2UzMC1tYWludAorNzI2NDggMTdkMTk0NjU0MGQ0Nzg3MTk2MDJlYTU0YmI2ODhmYWYwMTU0YzI4ZSBweTNrCis3MjY0OSBlZTIxNTY0OWZhZTA2MDhjYzRlOTI1ZjMzYTQ5MjhmZGVmMWMyYjQwIHB5M2sKKzcyNjU0IGZiMDE5NzE5NDlhNTU0NTUwMjBkNGVhMDM3MGYyNDYwOWQ3OGRmMTMgbGVnYWN5LXRydW5rCis3MjY1NSBlNDUxODZlZGFjOTE5YWRiYWE3NjQ5OTg3Y2YzM2VhMDExY2IzMWE4IGxlZ2FjeS10cnVuaworNzI2NTYgZjc2ZjIzYWYyMjk1YWU1MzY4NThmY2I1YTQzNWY0NTA2NzMyMzE5NiBweTNrCis3MjY1NyA5ZDUwMzcwNzQ0NGU0MTg3OGI1ZjZiODMzY2U2MzY0Mjc4NTc1NzZjIHB5M2sKKzcyNjU4IGI2MDBlNTEwM2M2M2UyM2ViZDZiODY5YjY5ODU1OGY0ZTA1YjAzZTQgbGVnYWN5LXRydW5rCis3MjY1OSBiMzNiNDI0OWIxODU4NTIyMDhjZDg1YTExZjk2MTU4ODVmOGQ2ZTYzIHB5M2sKKzcyNjYwIGUzZGZjZDFmZTIxMGQ2NTVlNjk2ZWM4MWYzYTQ4ZDQ2ZTBjZmE1NTkgcHkzaworNzI2NjEgYTdjMzRmNzI4ZjBlOGFkMTM5YWFmNTM1YTUyNmQ5ZjAxZjBmYzA2NyBsZWdhY3ktdHJ1bmsKKzcyNjYyIDkzZWQ2OGI5OTllNzU3Y2VlOTgyODI1NTMzNmFlNGQ1ZGQyY2VlZjEgbGVnYWN5LXRydW5rCis3MjY2MyA4OGQ5NjViZTg2MTcyNWRmZjIxNTM2MmIwYjAwMjhhMGJkYWU5OTBjIHJlbGVhc2UyNi1tYWludAorNzI2NjQgZDkwMmYzNDk0NDk5NjA4YzJlYzA0MzQ2ZGM0NjZmNzIxMGU0NjFlYyBweTNrCis3MjY2NSBkZDkxNThmYjA4Njc4M2Y0OGY5MWRjOTE2OWI0MmFjODE5ZTU3NDNkIHB5M2sKKzcyNjY2IDliYjJhMTM3MWRkYzQwMDUxOGYyMGRhNjcxZTU3ODY3NzUyMzQzMWIgcHkzaworNzI2NjcgZTVmMjg4NzZhZTZjOTNiYWU5ZTg3MGViNGQ2ODEzYjQ0N2I1YWU4ZCBweTNrCis3MjY2OCAwZDhkYjgxYTc4NmM2OGFjZjFhZmUzN2ExZWQ4ZGE3N2NkODc3NzczIHB5M2sKKzcyNjY5IGM0MGYxODdhZjZkZGJjZjc5OGExNzRhMmMzOGNiNjRkYzYwNzE4ZmUgbGVnYWN5LXRydW5rCis3MjY3MCA4NWZiNGMyMjlhOWNlYzIxYzgxMzU0NmUyOTg2NjYyZDY5OTBlNGUyIHB5M2sKKzcyNjcxIGI0MjYxZGE0ZWE1MGMzNzZmNDA4NDZmZTVlZTk2MjYxMDhiOThmMGEgbGVnYWN5LXRydW5rCis3MjY3MiBjZDRhNzgyN2VkYjY4YTU2OWQwZGM2YTVlNjI2MzRmZjZhZTg1ZjViIHB5M2sKKzcyNjczIDE4YjJmMmNkMDc0MWY0YTIzZDNkMGU5MjNhZmQ5YTQ2NjM1NGI2M2IgcHkzaworNzI2NzQgOTYxMDk0NzA1MzcwMjkwY2M1ZmQ3ODM4OWY4MjU2MDEwZDlhMWMzMSBweTNrCis3MjY3NSA5MGUyYmZlNGY2MGU3YTI1MjQyZDJiNWIyODE3YTg4YjkyNzU5ODY1IGxlZ2FjeS10cnVuaworNzI2NzYgMzRiNjBiNzM2YWQzM2Q1NDgzNjY1ZTlkMDM5ZDdiMTU2YzIxMjI4MyBsZWdhY3ktdHJ1bmsKKzcyNjc3IDJjYTExOGNhYWU3MTZhN2M3NmQ5ZjBiOGRhZWY4YTY1ZTAxNzNmZGEgbGVnYWN5LXRydW5rCis3MjY3OCA3OTA5OTJiZWRkNjFkMWU3YWZjMTJmZGNlYzg1YjY0YmZlMGQ1YjlkIGxlZ2FjeS10cnVuaworNzI2NzkgOGU4ZTg3YzFlY2I3ZWM1N2RlMTUwM2MxZDRlMDgxMTk5N2Q3MmZjNiBsZWdhY3ktdHJ1bmsKKzcyNjgxIGQ1MTRhOGI3YWU3OGFlMmFiYWM1MGQ3ZTIzMzdlZjdmYTZhMmQyZGQgbGVnYWN5LXRydW5rCis3MjY4MiA0M2ZjNDVkM2NiMjE2YjVlNTQ4NjU4MTNlOTk1ZWFhYTE5YzE3YTliIHJlbGVhc2UyNi1tYWludAorNzI2ODMgYWM2NjBlYTM1ZjUyNWRhMzYyYzFiYjYwZmYyYzUwYzU1MWE5YzRkMiBweTNrCis3MjY4NCBjM2Q0ZDkzYzg5ZTI1N2VlNmNhMDM5NmFiMTdlOGRmMzk4NWQ4YTQ5IHJlbGVhc2UzMC1tYWludAorNzI2ODYgZjFiZjUzODc4NmI3YzllYmI1YzIxYTUxN2UwZGNkZWJjODljZDlmYiBsZWdhY3ktdHJ1bmsKKzcyNjg3IDk4OGNhOThkOTE5NjJiZmIwMmZlYmE2NGFhNjFiMDQzY2I5MWM3ODggcmVsZWFzZTI2LW1haW50Cis3MjY4OCBjYTc4NDdkM2M0NTE5NGYwYjg5NGNmNDQ1NGIzZmYzZWJjNGI1OTlmIHB5M2sKKzcyNjg5IDFmOGFjY2QxZjQyYWQwMDRlZmJjMmQyNWNhODVmNDhlNzgyYmE3MGYgbGVnYWN5LXRydW5rCis3MjY5MCBhZTAwNjM4NmVjMzkzYjI2MzRmM2E2NmZmNjM0ZTAyZGI3NjljNTMyIGxlZ2FjeS10cnVuaworNzI2OTEgZjlmOTk3YzFmZDgxM2M3NTMwYTU1NmFmNjYwYzE2NzdmN2U3ZGZmNyBweTNrCis3MjY5MiA2OTU2N2EwNWQ1ZTY1NzM2ZGMzMDRiYjc5NTdkOTkzODRkY2EzOWZiIGxlZ2FjeS10cnVuaworNzI2OTMgM2FhNmE4NjNmZjA2OTFlNThjZGIyNTkyYjJjNDA1MjJlOTlkZWI4NyBsZWdhY3ktdHJ1bmsKKzcyNjk0IDFjYjgwNGEyZTAzODc5Njk3YTJkNGFhODk5MmIwZGY0MmVkYmRlNjggbGVnYWN5LXRydW5rCis3MjY5NSBhMTk4ZThkMzZlYzNiNTc4MDFjZjI5MzIyZTM2MzUwNDdkNWU1ZmY5IHB5M2sKKzcyNjk2IGE1MzU5NjA5NDQ0NDEzODZlNDQ0N2Q4MGU4N2UxZTY0OTI0ZTAzMjEgbGVnYWN5LXRydW5rCis3MjY5NyA4M2RkMmIyNTJhMjc2NDZjOGFhMTU2Yzk0OGIxMTZiOTRmMzI4Mjk2IHB5M2sKKzcyNjk4IGQ2NGQ0N2VlNTRhMTgxNjhmZDkyZjJlYjQxMzM4ZWMyYzAwYmU2YWMgbGVnYWN5LXRydW5rCis3MjY5OSBkY2RhNDQ4Y2E2NmU4NzI2YjY2OGY2ZWU0MDZjYjRlN2NjZjIxYmQzIGxlZ2FjeS10cnVuaworNzI3MDAgMGUzYWNlOWY3NTE2ZGI0ZmY1ZGY5M2I5MDNmNjFkZDI4MzExZjU4YyByZWxlYXNlMjYtbWFpbnQKKzcyNzAxIDc3Y2ZlZjU5NmQzMzUwYjU5NzAyZGYxZDQ1MzJlM2JkNzEwMmM1OTMgcHkzaworNzI3MDIgOTAxYjRmZmZlYTFmODBkZWNhYjcyNGUzNDMyNjg5ZmM3NTI2N2YxMCByZWxlYXNlMzAtbWFpbnQKKzcyNzAzIDliOTJkMmI4NmJhYWVmMjExNGUwOGY4ODBlNWRlOTQ3YTkyNzgwMjEgbGVnYWN5LXRydW5rCis3MjcwNCBkMjczMmVhOTliYTA4ODgzZjU4Y2MyYjRjY2I1YjY5YWM3NjNjNTIwIHB5M2sKKzcyNzA1IGU4ZjFhMDA3NzcxYWE5MGI4ZjA5MmM5NTEyMDMyYzRlZjAyMTUwNTAgcHkzaworNzI3MDYgYjIyYjJkYWFlYjQ0ZjM5ZTliMzI3NGNjZjA5YTExZTlkZTNkYjAwNCBweTNrCis3MjcwNyBkODQxZjk3MjQzYjU3NGFkODUzM2U2OTQwODc5MDk4OGUyYjZhZmMwIHB5M2sKKzcyNzA4IGI1MmI5MmYzMWZhODg5YzFhNTQ4YWVlZTFiY2YwYzc2YWQ4YWVhM2QgbGVnYWN5LXRydW5rCis3MjcwOSBmNDNmYzExOTNjMmFiMzg4NDc1NjlkZWE1OWQ2NzAwOTBlOTE0ZDU5IHB5M2sKKzcyNzEwIGU5YzA4ZmZhOTg5NTEzNWE4ZTFkOTMyMTAzN2E2MTUzYTY5NTAyZTEgbGVnYWN5LXRydW5rCis3MjcxMSAxMGNhMTFlNTk4ZTY5M2NmMzcyNjgyNGNjNzA4MjNjYjBiMDY4MmM2IHB5M2sKKzcyNzEyIGM1Yjk4MmFmMjA5ZDdiYzM4YjM2YzkwMmQ3OGFiM2NjOTBiMjJiMGUgbGVnYWN5LXRydW5rCis3MjcxMyBmZThkM2ZkNjZkMjY0ZWMyMDkyM2FmOWRiZDg4Y2Y2ZmQ5YmFjNzA4IGxlZ2FjeS10cnVuaworNzI3MTQgYjZiNDU0YjA2YTdiMzVjYTExYTBhMjY1MTY3ODZiNmI1MzlkZjcxZSByZWxlYXNlMjYtbWFpbnQKKzcyNzE1IGZjNzkzNWRlOGU4YWRhOGM2Yzk0ZDM1Mzk2OGU1YTc1YWJkNjE1MTUgcHkzaworNzI3MTYgZDQwNzI5NzU1ZWRmY2MyNzJlZWNhZDNmMDE5MDAyMzQ4OGZhMzhkOCByZWxlYXNlMzAtbWFpbnQKKzcyNzE3IDM1YmNlODBhMjVmODk5ODZhZWJjYTE0NzgyZjI0ZjM1NWI5NTQ3NTcgcmVsZWFzZTMwLW1haW50Cis3MjcxOCA5OWI0MDA4NjE1NDNlYTQ0MjE2N2NmOTZmOTJlMmM4ZmMyZWE5YTQyIGxlZ2FjeS10cnVuaworNzI3MTkgYWRiYzY2MmZmNGMxZDI4YWJiZDA1MjFkYjU3MmEwZmMxYmExN2Y1ZSBweTNrCis3MjcyMCAwZThjOGIwZDg2NjllNDlkNTgxYjU4NDIwYjNlMjhjYWJjZDcwM2M0IHJlbGVhc2UzMC1tYWludAorNzI3MjEgZjI1MzgxODNkMjYyMWZhMDA5YWUyY2RkNzJkMjgxMWIzMzNlOTFkNSBsZWdhY3ktdHJ1bmsKKzcyNzIyIDlkODFlMmM0MzhkYjk3MWI1Y2IwOWE5MDVlZWIxYWYzYTE2YThmZTggcmVsZWFzZTI2LW1haW50Cis3MjcyMyBlMjIxNzM2MWViMzdhN2JjODRmMTcxMjZlZGM4ZjZlZmFkODJjMGVkIHB5M2sKKzcyNzI0IDEwOGU5MGI4OTIzZWEyZWE5NWNlMGNiMTg4OGNiZWM5ZDEzMjZlNWUgcmVsZWFzZTI2LW1haW50Cis3MjcyNSA4MDZlZjNhMWY4NThkMTQyNmJkYzMwYjQ5M2QyNDlkZDlhNmI0YzI5IHB5M2sKKzcyNzI2IDM2NzhiMmQzNjBjNjk4NTQ4OWQ1MDYxMTk2OWIzYmM4MTU2MTEwODggcmVsZWFzZTMwLW1haW50Cis3MjcyNyBkZjM4MjY0NzJlM2JmOTFjZGVkN2I5NDBlZDJjNWI4ZTg2ZGIyOWFiIGxlZ2FjeS10cnVuaworNzI3MjggZjBiMDlkMDUzOWMwOTk1NzRmODU0MjU5NWJkMTkxOTBjZGFlYjA5YSByZWxlYXNlMjYtbWFpbnQKKzcyNzI5IDU2YWRmODY0ZjM4MDhkZDIyOGJjYTg0YTlhOTg5ZGY5NmU2MWRmNjEgcHkzaworNzI3MzAgOGZmZWFmNjQ5OTcwOGVkNmY3NmNiMDM0Y2RhMzhjMjIzZjQwMjk1NSBsZWdhY3ktdHJ1bmsKKzcyNzMxIGMwMDliMmIzNDgxZjljZmM1ZWQ2MjE5OWE1OWUwMDQ0NGJjM2NmMmQgcmVsZWFzZTI2LW1haW50Cis3MjczMiA4NzgzMDQ2MWFiNDI5NzJjODFmMzZlMjZlOTBhZGI2YWRlZTkyZDRlIHB5M2sKKzcyNzMzIDc2YTlmOWNiNDM4ZjUwOTNmM2ViMDYxYWQ2YmNkM2JkY2FmMDljNjMgcmVsZWFzZTMwLW1haW50Cis3MjczNCA3MTE2ZGUzZGJlOTgzYTZkZjM5NTI3YzBlYjIyYjUwMWM2NGMzMGU3IHJlbGVhc2UzMC1tYWludAorNzI3MzUgZjY1ZGUzNmYxODVjNWNkNTAzZmQ2MDI0ZDMxNDc1Y2ZhODc3OWYyOCBweTNrCis3MjczNiAxNzhmNzBmYzQ3OGQ3OTZiNmE5YTllZTI3YzhjY2NhMzMyMTMxY2U5IGxlZ2FjeS10cnVuaworNzI3MzcgM2JmZGI4ZDcyNTYwZmNmYjJkYzdhMGEyMzk1OTM0NGEwNDE2ZThhOSByZWxlYXNlMjYtbWFpbnQKKzcyNzM4IGZiNTlhNTI2NGFlMjVjOTUwODhiNTViMzQ3Njg4YWZlYmJhMzg3ZDAgcHkzaworNzI3MzkgODFjNTc5MDBhMTgyNWE4MDNhOGZkOGJhMDUzZjA2YjhlZTM4YmQyOCByZWxlYXNlMzAtbWFpbnQKKzcyNzQwIGZiYjMzMzkwYjI1NDliMmY0ZTA1MDk1YzY2ZThiMWU4ODdmMTdiZmMgcHkzaworNzI3NDEgOTA0YTFiZDM1ZTAwODkyYjU0Yzg3MGY0NGVlMjJhOWU1ZmYwMjU0MCBweTNrCis3Mjc0MiBkMTQzZWI2MjRjZjVlMmZiZmI5YzJkM2ZiZTJmZjAyMTRjYTMxYzE0IHB5M2sKKzcyNzQzIDc0YjY3NDhiNjNmNWZjYWIxZjMwZGI3N2ZjNmZkMDQ1NjNhOWZiMjIgcHkzaworNzI3NDQgZDA5OTRhNDJiNTk3NWIyNjBlNzViODAxMzA0ODdhOGE3YzFhNjUxMCBweTNrCis3Mjc0NSA0MWE2OTI2MjdlZWIzYzUzMzgwNDdmMTQ3YTE5Y2Y3Njk3YWFmZGVmIGxlZ2FjeS10cnVuaworNzI3NDYgN2NiMGE0NTQ3ZjBhMGY4MzJiZjY2ZTczNmMzZThlYjZhMzJjN2UzZSBsZWdhY3ktdHJ1bmsKKzcyNzQ3IDBmZmM5NTU4N2Q3YzQ1NjAzNDA1YWJiYzg5NzA0NTFjOWYxNWJjNDggcmVsZWFzZTI2LW1haW50Cis3Mjc0OCAxN2QwNzhjNWQ2NWI1MjI5OWYxMWJjYzg2ZjU0MDZhOTU0YTRlYjk1IHB5M2sKKzcyNzUwIDU4ZDNjNDU0YmMzNzI0MzhiN2EyODE2NTZiNzM2N2ZiYWExNjhkNjMgbGVnYWN5LXRydW5rCis3Mjc1MSBmOTM1Yjk1OTgwMzk4ZDBkMWFmNDI1ZjEyMWZlYmUxMWZjZGJhYWVhIHB5M2sKKzcyNzU1IGE3YWQxNjk2ODY2YjRkZDk2OTJmMWQ0NTExYjhkMDY3OWNiY2MwN2YgcmVsZWFzZTMwLW1haW50Cis3Mjc1NyAyYjdjYjQyZGRlMTE2N2YwNTc3NTcwNTg4NDU5OGM0ZjA2OTZiZjBmIHB5M2sKKzcyNzU4IGUzYmI2YjYyYmQwZjUwNzVkNTdjOWUzMWMxNGUyYmY0YmY2MWI2MzUgbGVnYWN5LXRydW5rCis3Mjc1OSBkNDczZmJhNGVjNjc1N2IwODU0MDM4MjRhZjFkMGM2ZjkwNDc2MTczIHJlbGVhc2UyNi1tYWludAorNzI3NjAgOTRkMjgzZDNkMDBiZjc0YjcxNzUwNzQwYTI5ZDVmYzM0NDYxMDkxMiBweTNrCis3Mjc2MSA2YTM1OWZkMjQ2NjkzZjQ5YWY2NDBiMGMzYTIzZDY2NTFhYzc1MTVlIHJlbGVhc2UyNi1tYWludAorNzI3NjIgMTcwZGRmOTYwZmRkZDhkOTM5MjA1Nzk0MTg5OTc5NWY1Njg3NDcyOSByZWxlYXNlMzAtbWFpbnQKKzcyNzYzIDcxZWM0ZmM2ODNhZjkyNjM0YmMzMDk3MDgzOTBiYTkxOGNkNjA5MzggcmVsZWFzZTMwLW1haW50Cis3Mjc2NCAxNDNhZWNjODBiNmI2ZDViMDM0MzU2YzlkN2FkNmYwMGYyNWZjMjNkIGxlZ2FjeS10cnVuaworNzI3NjUgMmQwNmEzMmExMmUzNzA2ZmUwYjVkMzFjMDY1Y2ExNDEyNDkwZTMzOCByZWxlYXNlMjYtbWFpbnQKKzcyNzY2IDczN2IzZDRhY2JiOWZiNzAxN2FlNDJmZThjMDYzZjdhMmRmZDllZjQgcHkzaworNzI3NjcgNjhkY2U2NTUwNmQ5ZmFhYjAyNmQzZDRkNmRmOTU1ODhiM2U4OTJkMSByZWxlYXNlMzAtbWFpbnQKKzcyNzY4IDhkMjYxYjc2ZGE0NmJmOTRiNjBlZjFmMzBlMTIzMGVlYWYxMzE4YTIgbGVnYWN5LXRydW5rCis3Mjc2OSBjZWU4MGQwNmY3Y2U5YzQ2MzhhZGZiMWFlZjViOGNlMWMwOTZiOGRmIHJlbGVhc2UyNi1tYWludAorNzI3NzAgOWEwN2U5ZDYwOTNhZGE0MmUxMWQ0OGQwMjdjNjA5NjlkZWNiNzFjZSBweTNrCis3Mjc3MSA3ZmY3YmVmMzI5MTE2OTQ0MzFjMTc3MGI1ZmI3ZDY1OTc0YTViNWY1IHJlbGVhc2UzMC1tYWludAorNzI3NzIgMDBlYmJmMWNlOTM2MDI2ODAyOWEyYWYyNzk5ZjZiYTEzZWVlNmYyZSBweTNrCis3Mjc3MyBhZTIwZjFlYmVjMjFjY2VhMzg5MzhhNmJmNjgxNWUwMGIwYjJjZTUzIHJlbGVhc2UzMC1tYWludAorNzI3NzQgZGFjYWQ0MjgzNmRkNjAwYzc4OTRjMGY0OGFhNTBkMDJjZjI1Nzk4MSBsZWdhY3ktdHJ1bmsKKzcyNzc1IGMxMzY4ODdkYjdlZmY0Y2IwMWZjM2UxZTM0ZGM1ZTk5ZDg2NWI3YzkgcmVsZWFzZTI2LW1haW50Cis3Mjc3NiBkODM1MGQwNDRjZjIyOGNkNmY5ZjdjZGI3NjcyMzFkMzEyMzMxNDExIGxlZ2FjeS10cnVuaworNzI3NzcgNjM5NTM0N2MwMjc2MjZhZDNmZDdiNWQzNTA3NzllOTU4NzI1MTJlOCBsZWdhY3ktdHJ1bmsKKzcyNzc4IDk0NWM2NTc0NDdkMjFlNjY3OGQ4NDU2NTBjMDllMWNlZmRkMWMyMjQgcHkzaworNzI3NzkgOGYxNzM2M2I5M2U2ZWQxYzRhN2NiMjZmMWI2NjNkMjJkYTI5MWY5ZiBweTNrCis3Mjc4MSA4ODNhY2U3ZWE0NDY2NjQwZWExZTdmNmU2MzQxZWI2YWRlZTk1NjMyIGxlZ2FjeS10cnVuaworNzI3ODIgMjkwMWIxM2ZiZDdlNjJlNGY2YjIyOGJmOGNhMmEyYjgzODQyYzVkOSByZWxlYXNlMjYtbWFpbnQKKzcyNzgzIDkzOTRhODJkOGRlMTY5NWYyZTE5OGI0Y2EwMzM2MjMwOTdkOGM0ZjUgcHkzaworNzI3ODQgNjllOTQzNGU0NTBhZGViZGNhMmE3OTE2MmVmNDM1MTMyMjk3NDcyNSByZWxlYXNlMzAtbWFpbnQKKzcyNzg1IGY3NjUwYTBlOTBhZGI1ZjZjODRmZjQyYTEwYzRhMjFkYmM0YTE4YjcgcHkzaworNzI3ODYgNzRiZGIwZTUyMTJiZGYyMjE2ZDUxNGEzNzdlYjY0Njg1OTExZWY5YSBsZWdhY3ktdHJ1bmsKKzcyNzg3IDc2YzQ0MTRkMTBhNmMxYzE2MmU0NTQ1YTNjMGU1YzRjNTIxODExNjMgbGVnYWN5LXRydW5rCis3Mjc4OCA2ZmQwMDllYzIyNGE3MzlmOGZkMWRkY2MxNTU5YWMxMGZhZjUwYzQxIHB5M2sKKzcyNzg5IGFiMjNmZjIwNDdhYTBkOGE5YTk1ZDY0NzQ0ZDY4NmUyMDFkYjExN2EgbGVnYWN5LXRydW5rCis3Mjc5MCBjN2ZkNzQxYzcyZWJlYmRmNGMyYTQ3YzljN2VkMWYwYTM2MmU1NTc5IHB5M2sKKzcyNzkxIDA1NjI4M2E1YzVkYTAwMmVkZGExZmI2ZmY2ZGIwZTA2YWM3M2U1ZmUgbGVnYWN5LXRydW5rCis3Mjc5MiBmMjc1ZDZhMGExZDE3Nzk3M2U0MTQwYWJhMDMxMTk0MDZjOGYxMWU5IGxlZ2FjeS10cnVuaworNzI3OTMgNmZhYjhiZDE1ZDcxMGQ4NTE3N2ZmN2YxYmUyYTgzZjViYzAyOGNmMyBweTNrCis3Mjc5NCBhNTJjZWNhYmZmZDRjMzI4MDAxMDQzZTU5NGI4MzFjMzRiYTQ0NGNlIGxlZ2FjeS10cnVuaworNzI3OTUgYmRkZjExZTYyMjAwMDJhOTJmNjU2MDA3MGI5Nzg1N2RlZGI2ODM0YyBweTNrCis3Mjc5NiA0Y2VlZWZiODU1NWU2MzlhYTlmODg3ZTQxYzE0ZWMwZjIxYzJjNmJmIGxlZ2FjeS10cnVuaworNzI3OTcgYWQ3NzIyNjExMWIyNjMwYWRiMzY1NWIzZDVlMTYzMTQwYjE3MjYyYiByZWxlYXNlMjYtbWFpbnQKKzcyNzk4IDA4M2JhMjQ5MDVhZDkxOTc4MjhmMjRhNTYxZmRkZjYzMWNjZDBmYjUgcmVsZWFzZTMwLW1haW50Cis3Mjc5OSA0ZmE0Y2E0NTAzYzhkZjYxZTc5YmUwNGQzNTBiYWQzOTY5Mjg2ZjZmIGxlZ2FjeS10cnVuaworNzI4MDAgN2UyYTZjMWRjOWQyMjM2M2Y5MWI5MmNhZWE0ZjNkZDU4YmRjZTk2MCBweTNrCis3MjgwMSA2ZTQwYWRkM2VlMDJhN2FlY2MzMDc2MWVhODU3NjQ5ZWU5NzgzN2QwIGxlZ2FjeS10cnVuaworNzI4MDIgMDIzYTM0MjhmMWFlZjY4ZDQ3ZmFjNzIxZDJhOTg1NDBiOTg3OWU4MiBsZWdhY3ktdHJ1bmsKKzcyODAzIDY3MGZhMGMwZmY5YWYyZTY3MTFmZmRmN2RlM2M4MDcyNjFhZGU4NDQgcHkzaworNzI4MDQgODkyMTMwNGI1ZjkyMmE0MTViZGI3YTBkZDI0YjBiOTcwMmE4NmRjMSByZWxlYXNlMzAtbWFpbnQKKzcyODA1IGQyY2NkODllOGU2Yjk1MTNkMmU4YzY0OWVkNjZlOTJhOGI4MDI2OWIgbGVnYWN5LXRydW5rCis3MjgwNiAzNzllNjNiY2JkMDQ0OGY2YTIwNjcxZWM2OWUzODI0ZGQ0ZWY4YWViIHB5M2sKKzcyODA3IDkzZjRhOWFkMjZmNjhkMzNiZjgxYjgyYTA5MzRmNjQxMThmYzE0YmYgcmVsZWFzZTI2LW1haW50Cis3MjgwOCBiMzMyNmZlNjMyZTVhNzkzZTE5NmQ5MTRlZDM4MGMyYTZiNTQ2MDYwIHJlbGVhc2UyNi1tYWludAorNzI4MDkgMmQ2ZmZmOWZlOGFiNzM2ZmYyMWE1OGFhZjllNmZlNTliZTBhOGQ0YyBweTNrCis3MjgxMCA0NTAxYjYzOGZjM2YyOTQwZDMyYmViNmFmNjYxNWZiMWI3Nzc4ZmE3IHB5M2sKKzcyODExIDlkNjQ1N2YzYTNlZGY0NWEwZTJjOTQ5ZWZiMGZkNDhkZjUzNjVlZGMgcmVsZWFzZTMwLW1haW50Cis3MjgxMiBlYjliMWFjM2Q5ZDg3MDQ2ZmVmY2U1NjY4Y2YzMGExOWFlMjNlMWQ4IGxlZ2FjeS10cnVuaworNzI4MTMgY2MwNTU3MzU2MDE0YmQ1ZWJkN2YyYTc1MWQ3M2U5ZjY5YzEyNTRlYiBsZWdhY3ktdHJ1bmsKKzcyODE0IGQ2MWFiMDQ0ZmRmNGQxODBiNTRlNDE4ZDc0OTk3MWI4NDFlMDEwZWEgcHkzaworNzI4MTUgNjA0NDQ0NTAyZWEwMjc3ZjM4ODAzNTg0MjA1ZTVkOThmNTI3ZGMxZCByZWxlYXNlMzAtbWFpbnQKKzcyODE2IDJjMzViODE2YWMwZGFhZGFiOWMwYzA4MjBhZWI2MWRhNDFkOTUwNzUgcmVsZWFzZTI2LW1haW50Cis3MjgxNyAxYjYyYmZmZDJlZjJlMGQ1ZmUyYmZhNDI4Y2NlOGJkNjg2ODNlOWMyIGxlZ2FjeS10cnVuaworNzI4MTggNDJkYmJlZTY2YzMyMmFjNjQ1OTBmNTFjMjRkNmNmOGQ5OWIyYzQ0NiByZWxlYXNlMjYtbWFpbnQKKzcyODE5IDRmYmNlNmQzZmU4NjFkZTdjZDVhNzYwYzk1MDc0YjE5YzhiN2JiZmMgcHkzaworNzI4MjAgZmFlM2E3N2QyMDMyMTkxOTdjMGM2ZTkyYzk1OTY0ZWM4YjRmZDBhZCBsZWdhY3ktdHJ1bmsKKzcyODIxIGI2NmRhZmI0MDY0OTQzMzVlOGIzM2VlNWIxMjRjNTIwMDY5YjNmZGUgcHkzaworNzI4MjIgNjA3NGZiNDExNjIxNmQxMjNlN2FlZTk2Nzg2ODY2ODUzYzBiMWU2OCBsZWdhY3ktdHJ1bmsKKzcyODIzIGM4M2ExNzJlZTkzMWU1NzljMzcyYzhiOTY5MGEyZjBmNzA3ZjJhMjIgbGVnYWN5LXRydW5rCis3MjgyNCBkZmU4OGQyMDIxODBlZGQ5ZmY1OWI0NTNmNWJmZWUxM2RmNjI0N2ZlIGxlZ2FjeS10cnVuaworNzI4MjUgYWFiMTE3ZTZiYjE2YzI3YTJiMTAxYTU4YTBmMmVlNzFiM2MyN2FhMCByZWxlYXNlMjYtbWFpbnQKKzcyODI2IGM0MDgwNzQ3M2EzNzlkNDFiM2IzNWZiM2E5OTA2OTY0ODY2MGFiYmYgbGVnYWN5LXRydW5rCis3MjgyNyA4NDBhMDlkZTY4YzNkMTQ1OGRkZmU1NDkyNDE2ZmU1ZTViMTVhNzMyIGxlZ2FjeS10cnVuaworNzI4MjggZjIyN2ZmMzRlMzNkNDhmMjM0MWU1M2RkMTUzOTliOWM3N2NhOTkyZSBsZWdhY3ktdHJ1bmsKKzcyODI5IDM1NDA0NWJiNzMyNjE1ODliZGUzNTNkMTczZjAyY2I5NDM0ODI2MGUgcHkzaworNzI4MzAgNzNkYzcyODQ5ODUzZDE0YTE1NjA3YTRiYmRjM2YxOWNhY2Q0OGI2ZCBsZWdhY3ktdHJ1bmsKKzcyODMxIGRjNDdmN2M2NWQzMDhhZDk0YTA3OGU4NTY2ZjMxYjEzNDkwMDgwNTIgcHkzaworNzI4MzIgNjM2NGU5MTFlNGNiMzYxZmVkNTQ0OWJhNDI5Y2NhYjhiZjczNTg2NSBweTNrCis3MjgzMyAyNTljODY1NWM1OTIzMDNhNTRlMDI3YjAxMjhkNjViMzU2MWQ3Nzk3IGxlZ2FjeS10cnVuaworNzI4MzUgOTg3YmI3MzRlMzc2YzE4N2Q4MWI1MTBmNDk3MmM1NjMzZDk5NWFiYyBsZWdhY3ktdHJ1bmsKKzcyODM2IGU1ZGQyNDI5YWNiMzNlYWEwZGJmNmMxOWFhYmYzYWI2ODQ3ODVmM2UgcHkzaworNzI4MzcgOGJlZDZlNmJiOTg0MmIxZDM2MmQ0ZWZhZjAyNmIyMTQ3NWU4ZWU5YiByZWxlYXNlMjYtbWFpbnQKKzcyODM4IGQwZWE3OGU5MjRhNjkxYWE0ODhkMTg1ZWZmNDcwODNmMjEwMTg0MGYgbGVnYWN5LXRydW5rCis3MjgzOSAwNGE0YjdkZjJkNGQzMGY2OTE2ZTNmMGY2ZjMwODMxYzMxZDUyZGRiIGxlZ2FjeS10cnVuaworNzI4NDAgYzhlMWQ3ZjIyNTJjNGYwYzQ4ODRhMjQ1NzA5OWQ1OTI2ZjNjNDBkMiByZWxlYXNlMjYtbWFpbnQKKzcyODQxIGYyNDU0ZDcxMjk4YWNkNTlmM2NhMjQ5YjA1NGVmYzZlNWQwYWFlODQgcHkzaworNzI4NDIgYWIxYjVhYzM0NGQ3OThjODE0MjM2YjQ0MDY5OWUzMDk1Yjc1NDI4YyByZWxlYXNlMzAtbWFpbnQKKzcyODQzIGViMjBjOTUwMDZjNzYzYzNmYTJlYzljNzdhNWNhOWYyMjc3ZGZhN2YgcmVsZWFzZTMwLW1haW50Cis3Mjg0NCAyNTNlY2FlNjQ3OGE0YzU3OTVhYmRlNWY4Yjk1MjE5MWEzYWQ4NzE3IHB5M2sKKzcyODQ1IDQzNWJjYTA3ODFlM2RiYjgwNjU2NDMzNjY5YWY5ODQzYzE1NGZjNGEgcmVsZWFzZTMwLW1haW50Cis3Mjg0OCA3M2Y2MjczMWIxZTZlNGU5ZDQ1Y2M3MzczYjBiYzY0ZGE4N2FiZmQxIGxlZ2FjeS10cnVuaworNzI4NDkgZDJkMDI4ZjY1YzdjNjIxNGY0YjNlZDVmZGFlMjdjNDAyMzAxNzFjYiByZWxlYXNlMjYtbWFpbnQKKzcyODUwIDJiY2FjMDhjZmM2ZGJkOTY2ZDY2OTljNzQ0ZTAyOGZkNWViODk0OGYgcHkzaworNzI4NTEgZTk2NTczZTdjNTE4N2RlOGE3ZjgzNDFkMDY5NWYzMmMwYTViNGY1MSByZWxlYXNlMzAtbWFpbnQKKzcyODUyIGMwOGJiYjg0MDYyZTAxNTVkNDUyYzhkNzBiZjMzNzc1NTc5MWM4Y2MgbGVnYWN5LXRydW5rCis3Mjg1MyAzZTdiYzc0OTM0YTFjNzA3NjY2MjQ4NzcyODM0ZDgxZTNiNjgyOGE2IHJlbGVhc2UyNi1tYWludAorNzI4NTQgZDVjNTgyZjQ2YmM5NGM4YzQ3MDI1MDEyYTBlMTM5ZmUxNmIwOTA2MCBweTNrCis3Mjg1NSA3Y2MwZmIwNzY4NDcxYTg0YzY5NTg0NTVmN2EwOGY1NmMzNGU0ODdjIGxlZ2FjeS10cnVuaworNzI4NTYgMWI2ODlkNTc4ODhkNTVlNTExNGJmNGI0NjMwMjZmMDFkYjYzZjFjYiBweTNrCis3Mjg1NyBlMDY0NTRjMmNjMGJmZmFlY2I0MjFlODMyZmMxYmE4ODM1YjA1MDdiIHB5M2sKKzcyODU4IGIxZTM1MWNjNTliNzQ3NWEyNmQwYTllMTE3MTllYTQ0ZDAwOWRjOWMgcmVsZWFzZTI2LW1haW50Cis3Mjg1OSA1NGJiZmQ0MWJlNjY4ZGZjMjNjMDgzNTEwMjExYWNjZGE3ZTU0MTMzIGxlZ2FjeS10cnVuaworNzI4NjAgOWZkMWQ1NGY2MTdjZjBmN2RjMDQ1MDgzNjk2YjM3YjUxMWM5MjA1NyByZWxlYXNlMjYtbWFpbnQKKzcyODYxIGRkYzlhMTZmYmVhOGRiOWFmZGE1MmQ4NWY1N2FmMGFmZDM1M2RlNGUgcHkzaworNzI4NjIgZTc4ZTBiZGJiYWM0ODE3NjhkYTAyNThhY2MxOGU3MzRiYzRkMmExZSBweTNrCis3Mjg2MyAwYTc4ZWZmYjVlMGI1MjA0M2YyYjQ3OGI1MmNiOTU4ZTkzODQxMDA4IHB5M2sKKzcyODY0IGJmMjg0MzA4ODU2NzE3ZGIwNGQ5ZGU1ZGZhNDQyYzFmYjQwZjlkYmUgcHkzaworNzI4NjUgZjlkMjYwOGUyNGU4YTM3YjRiN2ZjZmI3ZTY4MmU0NjBkZjFlNjdiYyBweTNrCis3Mjg2NiA5OTdlZjY4YmZhMTUxNzkwZDdlMTgzZmJjZTdmNDFhOTE5MDI5NmQ0IHB5M2sKKzcyODY4IDMzYTdjYjIwZjU1OGNhNTNjNTA4MTBmNTQxMGFiOWNkOTlmYzQ1Y2EgcHkzaworNzI4NjkgMjUyZDgxYTRmNjlkMmVjYjY0YWFmOWUyY2NhMzJmODE2MTU3ZDIyNiBweTNrCis3Mjg3MCA4NDYyNzdhNDIyNDkxMDQ1NTgzZDE3NWM0ZWZkODkwZTRlNTJiNDcxIHB5M2sKKzcyODcxIDE1MDk4NmFiM2RiMjg0Y2ZkMzhkNjdhMWFjZTJmMDRjMjc4MGJhZTQgbGVnYWN5LXRydW5rCis3Mjg3MiBiMjc4YjRiZGZmMWUyMjM5NWM1MGVkYTRmM2U0Nzg2NzU1OTUwNzY5IGxlZ2FjeS10cnVuaworNzI4NzMgZTE3YzE4YTZjYWVjNDc1ZGM2MzhlOTE0NjUzOGUxYzc0ZWU4MDRmMiByZWxlYXNlMjYtbWFpbnQKKzcyODc0IDg5NjMxZjYyNzgxMGU4ZDYyMjFlNzdiZmNjZDUzNTA1NTZlZWZkOTkgcHkzaworNzI4NzUgYmQyZmIxYmUxMzBlZjRmYmYzNmI4N2U4YjQ5MDZmODRlMDUxNjAzMSByZWxlYXNlMzAtbWFpbnQKKzcyODc2IGRiYTc2N2JjMzE1NWZkMmJhNDM2ODdmZmNkNzQ2ZTllOTZkYmJjZmMgbGVnYWN5LXRydW5rCis3Mjg3NyBmOTlmM2Q4YzUxZDU4ZmJmMGY0YzBkMzExOGUzNTZkYWVlYjNlMWViIHJlbGVhc2UzMC1tYWludAorNzI4NzggZDljZTNlNzQwNjc2NTU2OThiYTA2Nzc5NWU2YWE3OWJjZDdhNjU1MSBsZWdhY3ktdHJ1bmsKKzcyODc5IGRkZGY0MjRiZDY2OTY4YzA1OTVkNDJlZjQ0NGZjNWY2NGQ1YmUxM2QgbGVnYWN5LXRydW5rCis3Mjg4MCBlN2I0YTQ0M2Y3NjRhZWZiZGUxZjFhYmYzNGFmYWRkZWZjNjJjZGYzIGxlZ2FjeS10cnVuaworNzI4ODEgNjFiYmU1YzkwNTFiZmVmMmMzOWFjODIzOWI3NDE1MDEyNWUyNzcwYyBweTNrCis3Mjg4MiBhNTgwYTJlZTMxMjg0Mzg2N2U0NmQyNDkwNGQzZjJmZGI5OTA5MzE4IGxlZ2FjeS10cnVuaworNzI4ODMgNjI1YTAwNmEyNTNiOGYxNjQxZGU4ODA2NzE0NTZkOTI2YTg0MzFmNyByZWxlYXNlMjYtbWFpbnQKKzcyODg0IDk4OTc4ZTRmZDYwZmExY2M3NjIxNDk1ODgxMjdjMzlmYTZmOTQ0ZTggcHkzaworNzI4ODUgODMzZTQ2YzE0OTliZDc4MTJhMTNhMzY2MzY2ZDU5YzFlNzQ5YzgxMSBweTNrCis3Mjg4NiA0OGI3NWViMDI0MzRjYTYzMTQ2OGUxMTM3ZmJhYWRjNDkxNmQxOTBjIHJlbGVhc2UyNi1tYWludAorNzI4ODcgMzQyOGFjZDMxZTQ1NjQyNTcwNmNlZDhjYmRlZGM3YTE0ODEwOTU4NCBsZWdhY3ktdHJ1bmsKKzcyODg4IDFlMmMzZTdmZTYzY2Y0N2I0MmRhOGQ5NGM3MzI5MWM4MzI3YWY3MTQgcmVsZWFzZTI2LW1haW50Cis3Mjg4OSAzZDMwNWRlY2U1Njc0ZGM2ZGQzNDI5NTE4ZDNiNTkzMGRjMjE5ZWUwIHB5M2sKKzcyODkwIDVkYzMzZjQ2N2ZmNDZmMmY2MzA3ZGE1ZTNhMjYxMGM0Y2NiN2ZiNzYgbGVnYWN5LXRydW5rCis3Mjg5MSA5Yzc0NGRmY2Y0ZGU3NjVlNzcyM2I3NTViZjkyYjUzN2IwZDBkMWU3IGxlZ2FjeS10cnVuaworNzI4OTIgYjVlMDAwZDAzYjJjNGY5MjZmYzgyYmJkMWEwNGVmYzlhZTQwM2FkYiBweTNrCis3Mjg5MyAzYmUzN2VjNDNjMWJiMzg1ZmE1YmZkNjAyODc1MTRjZWM2MTcxYjQzIGxlZ2FjeS10cnVuaworNzI4OTQgZTY3YjFkMDcxZWQ2MWY1ZmRmYjgwMzZjZjcwYTNiYTM0OWQwZTJhMCByZWxlYXNlMjYtbWFpbnQKKzcyODk1IDUzOGY0ZTc3NGMxOGUyN2Y2NWVjMjIxMWE0NjYyZDNjZTE0ZjRkOWQgcHkzaworNzI4OTYgMWY0Mzc1NjE5YzljM2Q5YzIyNDc1NDczMjdjNWM3NDc5Nzg4MWIxNyByZWxlYXNlMzAtbWFpbnQKKzcyODk3IGIwNWY4NGFkOGVjYjBjM2UwZDllZmYxZTNiMDdhMTA1OTMwNjhlMWMgcmVsZWFzZTI2LW1haW50Cis3Mjg5OCBmOGNhZGZiNGExYTIzNzM4M2UyNjQxYzY1NjE4ODJhYTNlNzBiZGIxIGxlZ2FjeS10cnVuaworNzI4OTkgODAyNDE3NWUzY2M2OTk5YjFhYjZhYTlmYTJiMDYyMzEyZmMwZDkyZiBweTNrCis3MjkwMCBiZmU0MDI4NTkzZTExMThlMTVkN2FjZTVjYzMwZjhiYTE1NjdhZTAwIGxlZ2FjeS10cnVuaworNzI5MDEgMDQ2ODhhYTU2NGM4NWVmMmJiNjUwZWNiNDVkOTJlN2E2NjA3NTAzZSBweTNrCis3MjkwMiA1NjU0MTNlZTljMWIzNmQ2N2ZmNjNiNmZmNmQ4ZjExNWY2ZmU0OGJhIHB5M2sKKzcyOTAzIGQ3NTA3OWRlMmU0NmU0MDBiMjI4ZWU5OThmZTM5YjhmM2NjYTEzZWEgbGVnYWN5LXRydW5rCis3MjkwNCA3MzkxZDg4YjNkODJjZDE4MjdhODQ1NDgxMTY1MDQzNWM3MjY1OTFiIHB5M2sKKzcyOTA1IGI5Yzc4ZmI2ZDcxZGJkMTY2MmIxMmRjMTVlNDYxMmQxZDA2ZWVmYTAgbGVnYWN5LXRydW5rCis3MjkwNiBlYjBjZDgzYzg0YWJmZjM0NzQ0N2I2YWRjYmYxNTM1MzBlOTYxMTIxIHB5M2sKKzcyOTA3IDBjNjE3YjdhNzI3YWUwYWFhYWM5ZWRlNmIyOTJiNjFmMWVhNTM1NDUgbGVnYWN5LXRydW5rCis3MjkwOCBkYjIxMjg2OWQ4MTQ2Y2RhYjkwYWNlYTAwZTlmZWI0OGVjMjAzMTZlIHB5M2sKKzcyOTA5IGM3NDk2N2ZlYjAyMWFhN2E5OGY5MmFhNmZhZjI0ZjBkM2I1MzFkMjEgbGVnYWN5LXRydW5rCis3MjkxMCA1YWIyZjZjYTY1YWFmYTAwOGI3NjVlYzE0NmY3ZTQ1YmI3ZDI4ZDA5IHB5M2sKKzcyOTEyIDE0NTM3NmRmM2FkNzI4ZjcwNTJmZGQ4YjZlYmE2MDBhODMxN2ZlY2UgbGVnYWN5LXRydW5rCis3MjkxMyBmMjliZTcxMGMxNzRkMWMzNDM3NzcxZDE2OTg2NTE5MTg3MDI5Y2NlIHB5M2sKKzcyOTE4IDM5ZDNhNzVmYTgyMTg0MTAyZjM0Njg1ZDViNjM5YzhkZjdhMTRlMWUgcHkzaworNzI5MTkgNWFlYTYwM2IyMzA4OTNlMmNhODc4NzE2M2Q0MzU3ZDEwOTNiYzJhYyBweTNrCis3MjkyMCAwZDc0NjFjMDYzZTc5ZWRiYmJiYzM4MWFiYjJkYzcxODY0ODc3ZjI4IGxlZ2FjeS10cnVuaworNzI5MjEgMTQ4MGZhM2ZjYWI0MDExNDUxZTU5OWVkNjJmNzEyNTM2NTZiMjAwZCBsZWdhY3ktdHJ1bmsKKzcyOTIyIDVkZDFmNmIxNDkzOTFmYTdmYzNhMWZhZmQzM2JlMDkyZmY2MmU1NGMgcHkzaworNzI5MjMgZGFkZDg5NzBiMzAzNzU2YmM3Mzc2ZjYzNTE2M2NiNDQ0OTQ3NmU3NSBsZWdhY3ktdHJ1bmsKKzcyOTI0IDE2NzU5ZjYyZWIyMjZjZDcwMWUwMWNhMWQ3NWE1MGY0NmI1N2I3YjcgbGVnYWN5LXRydW5rCis3MjkyNSAyODdjZTMwZDA4YjU0NDA4NDZlNjEzNjkwZWVhNWZlZDk0Mjk1ZDRjIHB5M2sKKzcyOTI2IDY5OWRhNmM0NjdkYzM4Yzc3YjMyNWFjMTIwZGJkZjA1NDNmMmQyZDYgcHkzaworNzI5MjcgMzU1NDA0ZWExMTQzZmVhNzkzY2Y1Mjk4YmRhNTY5ZmQ0MWNiMWI0ZiBweTNrCis3MjkyOCA0ZDY3NDUyOTIyZjkzZmU3YmU0ZGVhOTExOTBiODVlOGI3YjY1MjgyIHB5M2sKKzcyOTI5IDg0YTYwZTcxMDU1MzA4M2NiNDRhNmQ4OTExMTE0ZDE1OTBhOTRlOTkgcHkzaworNzI5MzAgYWFjMjZkZThiNWQwZTRkNmUxZjJhNjE1NGZjMmU5ODcxOTAwZGJkMiBsZWdhY3ktdHJ1bmsKKzcyOTMxIGQzZGFhZDBlN2Y2ZjU3ODdjZjdmZWM4NGE2Y2QwMjYwYjFlMjM5YzMgcmVsZWFzZTI2LW1haW50Cis3MjkzMiBjZGZkMDE3Y2VlOTA4YzhmYzM1MzkxZmRmYWU2ODYxNjdkOThmZWUxIGxlZ2FjeS10cnVuaworNzI5MzMgM2I2MTI1NjlkNTM2MWY3MTdjMTgzOTFlODBmMmU2YTBlOTc5YmJmNyByZWxlYXNlMjYtbWFpbnQKKzcyOTM0IDk4M2QyNTY5MWI2OGQ4MGY4ODVjOTE3YTRkZWFhZTlhYTQyNDdkMjYgcHkzaworNzI5MzUgYTI3YTczOWNlZjdmODc5YWJlOGFkMTI2M2Y5OTJiODNhNWFjOWQ5NiByZWxlYXNlMjYtbWFpbnQKKzcyOTM2IDAyNTgzNTFkZmE2MDQ0OTJmNDVhMTc3ODU3MmY0N2RiMGE0M2MyNmQgcmVsZWFzZTI2LW1haW50Cis3MjkzNyBhY2MwNzg2NmIyMzMwM2ZkZWU2NWU4ZGYwY2I0ZGVhMzc1NDU3MWNlIHJlbGVhc2UyNi1tYWludAorNzI5MzggMzQyNTdhNzczZWMwZGNkMzY5ZGJiMzNhMmQ2ZjEzNjdlNDMzNzIxZCByZWxlYXNlMjYtbWFpbnQKKzcyOTM5IDY1NjQ2MzgyZTRlMDNkZTllZjE1YmU4YzhhMDU3NTg2MzNiN2E5MGQgcmVsZWFzZTI2LW1haW50Cis3Mjk0MCBiYTMwNWZlOGU4MzEyMDM0NzQ0OWZiMzU5NDQ0NTEwMmViZWJlOTI1IGxlZ2FjeS10cnVuaworNzI5NDEgMWNjYjZkNjI1NzE3MzA1M2MzMWY4NjFiODNmYmIyMzgyOWJjMjY3MCBweTNrCis3Mjk0MiA5MDEyZmY3ZDc1YTIxNjVkMWJlODFmMTYyMWZlOTZhMmMxZmI4NmZjIHB5M2sKKzcyOTQzIDI3MjFiZTdiZTM2NTdhNDI3ZTE4ZmFmOGI4MDUwZjc2NTE5YzcyNTMgcHkzaworNzI5NDUgMjllNWMwMTY1ZTEzNTE2YWEyOTczM2NhZjkwNjNhZDAwNWNmMjA0OCBweTNrCis3Mjk0NiA4ODMwNWQ3MzlhZTUyNmUzYzc5YTg1YjI4YmEyYTllZGNlYjI2MGFlIGxlZ2FjeS10cnVuaworNzI5NDcgZDcxZmE2YzQ2OGNjOGIxZDg3YzEyNmM0YjRjNmRhMTE0YzQwMDllZSBweTNrCis3Mjk0OCBmZGYzZWI3ODIyZTQ1NmJkNTIxNDVkOTVlZmZjMzU2Mzk3Njk4YTEwIHB5M2sKKzcyOTQ5IGE0ZGQ5MjE3ZWExMzFjZjFmMzc2NWI0MGU0NDNiYThkNjNjNWMyMTUgcHkzaworNzI5NTIgNDdkZDI5MGQyZDc0NWI0NDM2NDY2ZDVjOWRkNGE5MjNiNGZjNmU4YyBweTNrCis3Mjk1MyAwZTc2MTAyZjQ3OGI1Nzc1ZDQ0ZGY5YTY1MGU4YTFlOTZkN2M0YzM3IHB5M2sKKzcyOTU0IGYxM2JjZDkyMmY3NjAyOWNkNTYyN2U4N2VjNzMxYzkyZjk4MzE5ZmUgcmVsZWFzZTMwLW1haW50Cis3Mjk1NSAzZjc5ZWNhYjVlNTI5NzQyNDkwNDllNGFjYzcwMDRmOWZkNTUyZTNhIHJlbGVhc2UyNi1tYWludAorNzI5NTYgMjNhMzczYzhlYzFiMzg4YjcwMzc2MWZmNDkyY2Q0Y2VlNzYxNDgyYiBsZWdhY3ktdHJ1bmsKKzcyOTU3IGJhNjM3NmRmZjZjNGY4MTE1YjI5YmM0NzMzZGE5MTMyNmNiY2JhNWMgbGVnYWN5LXRydW5rCis3Mjk1OCA3YjRiOTIxZjMzMzU2NzczNjQxMzUxMzBkOWRlNTBkZWY0ZjE3YmRjIGxlZ2FjeS10cnVuaworNzI5NTkgNmFiOTM0NzAwMTFiYjk0ZmRkNWVmMGU3NDFhNTY3MDhlZTRjMGYwYiBweTNrCis3Mjk2MCA0ODYwZjc0OTNiOTE0NzlmNjQzZTVhNzg2NTM3YmY1Nzk3ODA4NmM4IHB5M2sKKzcyOTYxIDFjMDc4YmJjYTIzM2Q3NjEwNjQ4MmIzNzRmMGJlYzI0MDY2NjRjODIgcHkzaworNzI5NjIgMWQwOTZkMWI5OGZkMTNlMDI3ZWRiNWY5YmJiMGM2Nzc3YzIxZjc0MSBweTNrCis3Mjk2MyAyMmZkOTY3NTE4ZWVjMDMxZjNiYzdjNzdiNzRhNDI3OGVjN2VjOWY0IHB5M2sKKzcyOTY0IGI2MWU2YWQ1YWU3MGU5ZjUyYzQ2NGU3OTcwOGNlNDEyNDE5NjA2NTYgcHkzaworNzI5NjUgOGNiMzQ5ODczY2RhZTJiZDc4ZGJhM2M3OTM4MjIzOGNkNGI5NTI2YyBweTNrCis3Mjk2NiAxNTRjYTM3N2Y1M2M3YjUwZTVjNjc5MjFjNDQyNWM4OGE2ZTQzMzM5IGxlZ2FjeS10cnVuaworNzI5NjcgOWI4YjYwYmMwZjViNzMxODJmM2M2NjYwYmZhZjkyYWQzNzNlYmQ2NyByZWxlYXNlMjYtbWFpbnQKKzcyOTY4IGFmNGZkMjM2NTRjZWIzZjQxOWVjZTZmMDNhOWZiOWQ1NmRkMDRlNzYgcHkzaworNzI5NjkgNGM3N2Y5ZTFhMTlkY2U4MTk2ZmQ4MTAzYzJhYzBkNWI1ZWJmZTljYiBweTNrCis3Mjk3MCA4MzdhZGI3NmEwZTFhYzBiYzIxNDdkMjA3ZGE1MzdkZDE5ZDc1YzI3IHJlbGVhc2UzMC1tYWludAorNzI5NzEgMTM5MjFmNTI2ODQ4MzBhM2I4MTRhNjlmOTk4MTFiMDU5ZGM4Y2EwOSBsZWdhY3ktdHJ1bmsKKzcyOTcyIGU2ZTNhMGU5MWJlYWMzZDEyN2I1ZWYyMWYxNGYwMDRiNGJlNzUxMzIgbGVnYWN5LXRydW5rCis3Mjk3MyA4MjFmN2Q0MmJmNzQyMmEwZmRlNjgzYmU3YmVhYmJmNzg2N2IyYzYwIGxlZ2FjeS10cnVuaworNzI5NzQgZmM0ZTI0NDNmNTA5NjRlOTY0NjI2Yzc2OWNhZDMwOGMzZmUzNzZjNCByZWxlYXNlMjYtbWFpbnQKKzcyOTc1IDYwMzg3MDIyOGRhYzU0ZTFhOTZjNDlkZTNkNWJjMDc1ZTgyMDk5NDUgcHkzaworNzI5NzYgNjBkNDliM2ZkM2JmZDJiNzYzNDQzMDZhMTBiNzE5MDUyZmMyYTA1OCByZWxlYXNlMjYtbWFpbnQKKzcyOTc3IDEwMjlkOWFhZDQ5MWM4ZjgyNmM5NjY3NzgxZDEyNjJlYTNjZjVmMmQgcHkzaworNzI5NzggMWQzYjFiZTZhOGIyNmJmMjQ5OWQyY2U2NDQ3ZDI0NmMxZDQzN2VkZSByZWxlYXNlMzAtbWFpbnQKKzcyOTc5IDcwZmI4NDg4NzBhY2Q0MTRhY2M1N2MxOGY0YTg1ZWY0OWRjMzdkYmUgbGVnYWN5LXRydW5rCis3Mjk4MCBhNmI3M2Q4MGZiZTI3NWE5ZjYzYTdkN2ZjZTdjMDA3NzBmMzk2ZWM4IHB5M2sKKzcyOTgxIDExYTU0ZGFiZmIxY2Q1ZDMzNzhjNDNmYzc5ODRkYjVhMDA2ZGVhNTIgbGVnYWN5LXRydW5rCis3Mjk4MiA4YjI5OTY1MmIxZTg1ZjdkMTJlODRlYTFmMzBiODI5YmYwYTIxNTkzIHJlbGVhc2UyNi1tYWludAorNzI5ODMgOWRkZmE2ZTA1ZmIwZGExMTk5NDM0MjFhMTJiOWRjMjg5MGE4NTM5MCBweTNrCis3Mjk4NCBhYzBiODVmNjgyOTdiZDMwZjFlNTBlMjllN2FiZWJiZDM1NmFkN2Y2IHB5M2sKKzcyOTg1IDViMjEwMGU0NmQzYjQ4YTAyZjA0YzBkZGIxYWY3NDg1MmQzZTI0YTQgcmVsZWFzZTMwLW1haW50Cis3Mjk4NiA2MDU2Yzk2YzJkMzI3NTU4NzBhNjg1ZGU5YjcxMWYxNzRhYzI4MTQxIGxlZ2FjeS10cnVuaworNzI5ODcgZWQwYTlkNjg0MDIyNjlhODkyYzA0MTc3MTIzNmI0ZmY2YzQyNzY4OSByZWxlYXNlMjYtbWFpbnQKKzcyOTg4IDk5NjczNzkyNzBhMDk0MTNhMzViOGViMmZiOWZiMjRiZDFlODQ4NzMgcHkzaworNzI5ODkgY2U5OWU4ZTIyYjFlYWMwOTYwNzNmZDM3MTc1OTUyNzU3ZTZjMDUzOSByZWxlYXNlMzAtbWFpbnQKKzcyOTkwIGIwMDQwNDk0YjRhNjlhYWM5NmNhOTE2OWQyYzBmZTc1YzgyNGIxNjggcHkzaworNzI5OTEgZjU1ZDhkZWQyZDA1ZTVhY2VjYmY2MWFjNDNkMjM5NDk5YWFiODc4MyByZWxlYXNlMzAtbWFpbnQKKzcyOTkyIGI3MjZmZmQ0OTUyNDUwZDIyYmY5OGI5NGY1ZDVmMTIyYzU3NWU1NzggbGVnYWN5LXRydW5rCis3Mjk5MyBlOTBiMDY3ZDgzZjI1MTY0YWI2NGU5NTY1ZjkyZTQ3M2ExZGFlYWE0IHJlbGVhc2UyNi1tYWludAorNzI5OTUgM2ViNTIyZGMzMzM3ZGVhMjFmMjc0ZWQzZDlmYjNmODJjMzE4NGVhZiBweTNrCis3Mjk5NiA0MDM1MzgzMzk0ZWNmYWE2YTcyNTBjZmU4NmQ2YjJiNWQ0MTgyM2NiIHB5M2sKKzcyOTk3IGJjMjUxNjgxMGNjNDExM2MxMGQ4MmYyODM3Y2EzY2M1NmQ3MTVmMDAgcHkzaworNzI5OTggYTBhMjVkZWVjZGIyMzZlMzU1MWE3Yjk3NjZjY2NhY2VhYTIxOTA0MyBweTNrCis3Mjk5OSA2MThlNDZhNjlmMjc4ZjA0MjAzNjlkYWRkOGI3YzQ5NWFhMTE1MWM4IHB5M2sKKzczMDAwIDJkM2MyY2YxYjUxZTM0Y2M4NzcyZDcxYmQ3MTk2MjMwNzgzMjFjYzEgcHkzaworNzMwMDEgODhiZDg3NjBiMzQyZWM4N2I3YWJmMDg1MDQ4MzEzNzQyMzk2NWJhYyBsZWdhY3ktdHJ1bmsKKzczMDAyIDI2MGM4ZWQzZjVkZjk3YTY1MzVmNzQ1ZmQxNmU0OGQ2ZjZhOTIwYmYgbGVnYWN5LXRydW5rCis3MzAwNCAxZDhmMjRiZjQzOTk2MzM2MGZjYzEzNjg5MzJlZmI5YzE3OWYwNGU4IGxlZ2FjeS10cnVuaworNzMwMDUgZjNjODcxYmRlYTU3MWQ2ZDY5Y2Q4ZDQzNzVjMTg2NTZmYzc0NGZjMCBweTNrCis3MzAwNiBkNzVhYjE2NDEzZGE0MmMxNDdiZWE4YTI0NzVlYzQzNzVjYjRmNWFhIGxlZ2FjeS10cnVuaworNzMwMDggMWZhMTM3OTQyMDg1ZGZkMWYyMTNjYWY1ZGMwMDA5ODNlNzhiNGY2YyBsZWdhY3ktdHJ1bmsKKzczMDA5IDc3YjkxMjRmMWM4YzE0ZDhlNzZjMjhiOWFkYmExZGE3YWVkN2QyYzggcmVsZWFzZTI2LW1haW50Cis3MzAxMCBkMzljMTkwMzE2ZTc2OWQ5Y2ZkNjA1MDVmMDY0Y2QwODJiNTZiZmU2IHB5M2sKKzczMDExIDQ5YzBiMGNhNTExM2I5MzM4MzE4NjEzZjY4MTIyMTY2MDllYmU0Y2IgcmVsZWFzZTMwLW1haW50Cis3MzAxMiBjNWQzNDk1ODJlOWNhZTdiMDNmNTQxNjk2N2ViOGZlNzYxZDM1NDdjIHJlbGVhc2UyNi1tYWludAorNzMwMTMgYjY3YWJkNTFiMjcwNGMwYWNiYjBmNzI4NDJlOWQ5NTMyMmU2ZTAxYSByZWxlYXNlMzAtbWFpbnQKKzczMDE0IDExZGUzNWRhMjgxYzE3NTVlZTk3MzlhMWY4YWE5YzdmZDQ4ZWM3MGMgcHkzaworNzMwMTUgMjhkNjQxOTJhYjVhMmNmNzJhOWJkNmJkOTEzOTAwNzUxOGNkYzI0NyBweTNrCis3MzAxNiA5YzE3ZTM2NjkzMzZhY2E3MGVlNWI5Zjg5NWNkYzZhZTZlMjZhODgxIGxlZ2FjeS10cnVuaworNzMwMTcgNzZmMWJlOWQyODE4MmJmNDliMzFlMjg0NmVkYTJkMWU1MjE2MTUyZSByZWxlYXNlMjYtbWFpbnQKKzczMDE4IDEzNGQxMmMyZTc0NTAwZThmYTJiZGJiNGJmNTAwOGQ1NjBiZjViYzEgcHkzaworNzMwMTkgMjM1NmU5ODVlY2U4MzVmMWJkZTNmYzg3ZTQyZDA5ODJjMzZkNmVkYyByZWxlYXNlMzAtbWFpbnQKKzczMDIwIGVjNWQyMjhhODNlZmNhMjFmNTdhZDc1NWUxZjA0M2ZkYjA0ZDczZmEgcHkzaworNzMwMjEgYTVhODljNjBkMzJlNGVlZmY0NjY5MDY4ZTQ0M2FiYTUwNmRhMmNiZSBweTNrCis3MzAyMiA2NDc1MDA2NWVjZDRkMWMyOTNiZTEyMmEyZWUxNTA0NjExNDg1NGM1IGxlZ2FjeS10cnVuaworNzMwMjMgMjVhMzE1NWRhYzc2YzUxNjM5NzRjOWVhZjljNmI3NjFiY2NkNTY1YiByZWxlYXNlMjYtbWFpbnQKKzczMDI0IDlhNGNlMWU3MWFkODE2NTE2MjEwOWZiZDFiMjc2ODk5NTY4ODkzYjIgcHkzaworNzMwMjUgNGVkMmVlMGIyMjkwYTA2NDZhZDgxOWZkOGNiOGU4MTMzY2YyOGU1NiByZWxlYXNlMzAtbWFpbnQKKzczMDI2IGU0NzQ1ODM4ZjY1NWI1Zjk1MWIzNTRlYTEzYjQ3MDkwYjlmNGRiYTYgbGVnYWN5LXRydW5rCis3MzAyNyA3YTEzNDcxZjRlOWJkMWRjZTUyY2FmODU1NTYyZmQ3OGRiMDdhNmNkIGxlZ2FjeS10cnVuaworNzMwMjggMTQ2YTM5YjI1ODQ1ODVmN2I5MjRhYWVlOTBmZmYxZGE0Yjc5ODljOSBweTNrCis3MzAyOSBjOGZlMzAzY2VkYTQ1MTU4YzcxZmU3OWRjNGU5M2E3YWRlNjEyNTY1IGxlZ2FjeS10cnVuaworNzMwMzAgNmUyYThiZGFhNTQwMjA4Y2QzOTA2YmU4OGRkM2I3ODUzMjQ0MDM3YSByZWxlYXNlMzAtbWFpbnQKKzczMDMxIGIyZWNkMmJkZjE5NTJiOTE0MTg1ZDgzZjhjZGIzMDE3YWRkMTRhM2MgbGVnYWN5LXRydW5rCis3MzAzMiA2ZDRjNDdmZWM0NDlkYWJkNWZmMjMxMDdiZWY4ZTIzY2FjN2Q2MmRmIHB5M2sKKzczMDM1IDFhNTIxYzA2YTcwZGI1MTZhMjVkNjJiZmRjZWQyNzcxNjFlMTYzMDkgcHkzaworNzMwNDIgNmQ2YjRkMzc4MWYyNzU4NGM1MDUyMjZjMDhiYmFmYTJjMjJkNDVlNiBsZWdhY3ktdHJ1bmsKKzczMDQzIDY5Y2Q4MGY4ZTEzM2EyNDAyMjAzZmY2M2Q2MmFiZDViMWIzYTFmYTAgcHkzaworNzMwNDQgZjVkM2ZmMDNkZDViY2RkNTUwZjFhMmY1ZGE3MjIwNTIyZDI1MTY5MiBweTNrCis3MzA0NSA1YmI1ZTkzNDM1YjA0ZTExODExMDgwMGU4N2RmNjUwNTc3NjVmNThjIGxlZ2FjeS10cnVuaworNzMwNDYgNDMxY2E1Mzk5YTI0NDg2YzBmZjhjOGQ0NTY5ODQwM2Y0YjdkN2E3YiBsZWdhY3ktdHJ1bmsKKzczMDQ3IGM2MmI2NTIyNTFkODk5YzEzODdkNTU0Njg1ZTY3ZmQ3YWJhNmI4MWUgbGVnYWN5LXRydW5rCis3MzA0OCA4ZDJmMzljMjFlOWU1MmYyYzUwM2M0ZGZkMDg1ZGYxYTJiNjRjYjEwIGxlZ2FjeS10cnVuaworNzMwNDkgYjAxYWVmZjcyYjY1MmE3ZjE5OTg3MTYxOWJkNGMwM2IxNTY1YjM4MSBsZWdhY3ktdHJ1bmsKKzczMDUzIDU1M2M4MTUxYzljNmUwMjVhNjcyZDUzZmJjNDE0NjRmMGEzNmNiZWUgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMDU0IDQ5NWNmM2MyNWViMTQzYjAyMmY2ZjI5OTM4OTUyMDM5ZTk5OWI2NTAgcHkzaworNzMwNTUgMjM0NjJiMzgxNzFkNjllY2ZhMDljYjA1MWVhNjU1M2I1ZDI0NTRmZCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwNTYgNDM1M2ZkMDg0M2NiMzFiMzU2YWRjNTBmOTNkMjIwZTJlNzI1NWVmMiBweTNrCis3MzA1NyAzZmZiYTZhZDMxOWMyZWFlZjUyZWE5NDIyMDQwZjU4MDY3ZmQxZjQ3IHB5M2sKKzczMDU4IGNhOWJlOGZjMDI1ZGMyNzczY2RjNDNjNWZlMjQ1OGJjMjY0M2NjOTUgcHkzaworNzMwNjAgZTQ3NWNjNzFmMTg4YTRhNTlmYjQxMGJiNWYyOTRhYTM5MDhlZDMzNCBsZWdhY3ktdHJ1bmsKKzczMDYxIDkxNjJjZGYzNGRmYmY0NTYyYmNhZWI1OWRiMzg4MTU0NjY3MWI0MWYgcHkzaworNzMwNjIgYjQwNDMwNzkyMmM2ZThjNTA4ZGQwNzQ2OTE5MGI4ZjVhMTUwMWQ1ZiBweTNrCis3MzA2MyA0OTQ4NWY5OGEzMDgzYmMxYzE4MjQ2ZDI2MmFlNTU3NDc0ZGJiMmQ0IHB5M2sKKzczMDY0IGEyNTNmZWE4NWFmMTVjYTk5ZTAzM2EwMDU0YTNkMTllNjlkOTI0OWEgbGVnYWN5LXRydW5rCis3MzA2NSBmYTJmOTE3OTA2ZTczYjdkMWRkNjc4NGRjYTZmZmQ5NWExYjgyZmY5IGxlZ2FjeS10cnVuaworNzMwNjYgNGU5NmQ3ZGFmNzlmNGM1YjQ0NjJlZjdiZjRkNGY2ZWU3Mjc4M2VhYiBweTNrCis3MzA2NyAxMTQzNTRiMWUwZTU3ZDhkYzY0Mjk3ZTcwMDA3NmI3NjIwNjY5MTgwIHJlbGVhc2UyNi1tYWludAorNzMwNjggNzU2NjIxODE5ZjVhNTFmNDE0NmFjN2M1ZjhlMDA0ZDhmZGQzYmFkOCBsZWdhY3ktdHJ1bmsKKzczMDY5IDVkZWM3MjQ3YjI0OTZlYjg1YzhhZTA5YmJhOTk5MmU5MDhmODI2MDkgbGVnYWN5LXRydW5rCis3MzA3MCBiZjBiZDZlYTFjNzJlNTUwZTgwOTRiYjk1MzBkMWEyZjYxZTA2YTg3IHB5M2sKKzczMDcxIDFiNDNlNmYyZDMyOGE5NzFmODA5NGRiMzJjZTk4OTViNGZiZWI3NDEgbGVnYWN5LXRydW5rCis3MzA3MiBkNzRiOGVkZDdhOGNmMDQwNjA0N2Y4ZmZmMGExNTI5MzQxNTM1Yjg5IGxlZ2FjeS10cnVuaworNzMwNzMgZWYwNzg1Y2ZhNmFmNTFiNjJjNDc2ZjJiOTdhYWI3MWY1M2EzYTExNiBsZWdhY3ktdHJ1bmsKKzczMDc0IGJiYjBiNGY4YjVlMTFhZjUxNjc2N2E4ZjkwMjUwZTc0MjEyOWIxM2YgbGVnYWN5LXRydW5rCis3MzA3NSA4MWJhZjc2ZDA3OTc3M2Q2NzQ3Y2U1MDgzYmJkZjcyZTc0NDA0YWZmIHB5M2sKKzczMDc2IDUxOWY4MGIxZjVlM2E2NDNkNDNlZWMxNTE3ZWZkMGIyNmMwNWEyZTcgbGVnYWN5LXRydW5rCis3MzA3NyAwNzA1MzBlOWYxOGYyOTg0MjI0ZjUzNzQyZDU0NDhkOGI0YmQxYTkwIGxlZ2FjeS10cnVuaworNzMwNzggYzNhMjY1NTZkZDE0YWQyYjU5NDgxN2FjNDliZDY5ZmZlMTlkMjQwMSByZWxlYXNlMjYtbWFpbnQKKzczMDc5IGYxNGI1MDVkMzlmNGFlOGE5YjU1MDkyM2UwMTc4MmYyZDk1NjcwYTcgcHkzaworNzMwODAgZjUxZWFhZWQ2YzcxYTYwZDYxM2ZmYmNjN2ExZjM1ZTEwYjdhOGM5OSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwODEgMmFmZjcwMGUwY2E5MThjMGQzYjRhYmU2NzZmYjE4OGY5Y2FkMTZlYiByZWxlYXNlMzAtbWFpbnQKKzczMDgyIGE2YTc0YjlhN2NkMzcyYjAzMjM4MTZhMzYxMjU3N2JiNDA3NjhkZWYgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMDgzIDVkYjA1NTZlZDEyMjM1YmJmZTFkZWEzNGZlNGZjZDE0NmJlNTE4OGMgbGVnYWN5LXRydW5rCis3MzA4NCA3Yjc3MmVkNTM2Yzc2OWNlOWNlMDIxMjY2YjU1YzYwNzkyNmRlYmU2IHB5M2sKKzczMDg1IDc1ZTEyYzVlNGVhZmJhMWEzNGIyNGYwN2U3ZTAzYjY0ZDY0MzFjNzMgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMDg2IDUyZDI1OGViMDE3NmZhZjQxZGY2NjczYmRlNTI2NTlmY2EyYWM1YmUgcHkzaworNzMwODcgYjRkZDQyODNmZjgyMGRkYTIzZGZkMTRjNzdlNjNlMDVkM2M2OTM4MiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwODggMWUyYzAzNzFjZTU3MzdkYTQ2ZGIwYjQ3YjFlYmZmOThiYWMzMTIxMSBweTNrCis3MzA4OSBmNTE3ZjJlNGZiM2JiNTZjYjY3NDk5N2Q5Y2Q0Y2E4OGUxZWFkNzMwIGxlZ2FjeS10cnVuaworNzMwOTAgNTBmMzEzMDhiNTBhZWQ2NTE0ZjY1MGRmMjRhZDQyMTcyOWFhOWQ2MyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwOTQgNDIxMTgxMGRjNzljZTdhZDdlMTk0ZTcwYTg5MDczNWJlZjNkMWQ4NSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwOTUgNTdhMmQyNzEzZjE5NTNhMGNhNTQyODkyN2UxYmM0N2NkMjY2YzY0YyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwOTcgNTI4YzA5M2FiOTg2ZDIwN2Y4NGVmNjkwYTc1N2M0OGE1ZjQ3MDM0YyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwOTggNzU3YTdjMGY2NzllM2JhZjM5NWUwNjk1YTk4NTZhMmUyNzlhNTA4YiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxMDEgNjAwMTY5YWU1NjgxZDNhOTU4YTk5MDZlYjYxYWFhN2NjZGZhYmUyZCBsZWdhY3ktdHJ1bmsKKzczMTAyIGZiNzllZTQ1Nzc1NDI4MDlhMDc4MThlNDIwNThmYmFlN2JmMmZjMzcgcHkzaworNzMxMDMgN2M0NDQwNTM4YWJiMjQyZjk1YjA0NDM2NDM4ZDkwZWU4MzI3ZDI1YyBweTNrCis3MzEwNCA4NTY3ZGYzYTQzYjYxMjMwZjBlODBmOGMwZjBlMDk3NGY3OTVlNWMwIHJlbGVhc2UyNi1tYWludAorNzMxMDUgYzA1MWJhNjE3ZjA0NjE5OTBhY2FlMjJkMDE2YjYzN2QyMDdmZjRmNCByZWxlYXNlMzAtbWFpbnQKKzczMTA2IDY4NDZmOTVmOGUwNzdhOWFkNDU4NzVlM2FmZjk0NzgxMmZjYmE5YzAgcHkzaworNzMxMDcgMThiM2Q1YjM3ZDgzZmJlNjI2YTE1ZmEzMjMyNTU4MzJjMjliNTUwZCBweTNrCis3MzEwOCBjNjc4NTRmMWNmNzkzMTVlNzI0ODg0MDFiMTIyNGE1ZGQ4MTc2YTc4IHB5M2sKKzczMTA5IDQ0Mjc4NTlkODE3YTcyYzMzMmM0ZTA4MDg3ODg2NGFiN2Y1ZDZmNDkgbGVnYWN5LXRydW5rCis3MzExMCA4YzEzMDY3MWM4NDI1MzI3ZmJlYmNhZjM2MGUwMjkxOTg3YjNlYjExIHB5M2sKKzczMTExIDkzOGNjMTZlN2Y4ZGViZDllNzkzNDlmMWNhNjU1ZTY2OTUyZmUwYzkgcHkzaworNzMxMTIgMzUyMmMyYjBkNTFkNDdkZTNjZjZkNjVkOWE1MWY2MGQ3MDk0ZmJjYSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxMTMgYmJmOGYyNWViMzc3YjIwMTUyMTJiMjAzMjhjNWEyZDljNTk3MzNjNSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxMTQgYzM3YWU1NjJlZjgyMmRkNTU2MGFmZjE0MzMxZDI4YjA5NWNiZDAxMyBsZWdhY3ktdHJ1bmsKKzczMTE1IDFkZmNjNTNlODM2YTBlNjAyOTA0MmIxY2QxYzE0YTNlOGU5NjU0ODYgcHkzaworNzMxMTYgZDBlOTYwNzliNmFjYTlhOWI1YmE1OWI0OGNmMGZhNzJmZWVlMDQzNyBweTNrCis3MzExNyBhOGQ5Y2M5MzI2NzU2MTdhNTQwNWM1ZDBhYWFhOWEzNDU1NjE4NTIyIHB5M2sKKzczMTE4IDUyMjk1ZWJjY2EzMTI0NGQwMWQ0NWY2MGYyN2U2NDc3NjdiY2UwZDIgcmVsZWFzZTI2LW1haW50Cis3MzExOSBhNTYzYmNmMWE2MmQyZjY5YzQ4ZDI5YjM5NDdmNDVlNTU1YmM1MzE2IHJlbGVhc2UyNi1tYWludAorNzMxMjAgZTI1ZmMzNzc2NzA0NzAyMjNkNjYwN2RjYWFiMjMzNDliYmQ3ZDFjMCByZWxlYXNlMzAtbWFpbnQKKzczMTIxIGQ1MDcxZDlmNzQwOGJkYjg4ZDU3YmM1ZWM3MmQ3NmIyMTA0ZjM2MjggbGVnYWN5LXRydW5rCis3MzEyMiA1ZjhkZWM4NDZmNDZkZTliODE0N2I5OTEzZjA5ZjdhZDJmYjNhNmVlIHJlbGVhc2UyNi1tYWludAorNzMxMjMgNTQyOTUyN2UzYTI4OGZkMjFhNWQ2MWVjNGVhNGU2YWY1NTc2Njk3YiBweTNrCis3MzEyNCA0OTkzZTExMGZkNzc4NTg0OGI4YTM2YWI0NTFmZDE3OTdkMDZhMjE3IHJlbGVhc2UzMC1tYWludAorNzMxMjUgY2VkMzgwYjQwMDA0MzYyYTdhOWFjNTM4MGJmNDkwMGNkMDNhYTZjMyBweTNrCis3MzEyNiBiZjRjZmU1MWI0YjUyMTc0NTI1MWY2ZGVlNzFiNzdkNjdlMDRlMDJkIHB5M2sKKzczMTI3IDYyNTQyYmI4ODczYTFiMzdmN2E4YjBmNDhjMDQ1NzExZDkyNjE1NmIgcHkzaworNzMxMjggMmMwMGJkYWFkN2E5ZmZmZTFhN2Y5NTczYmVhZGVkZDNlMTZjM2JlNSBweTNrCis3MzEyOSA4Yzg1MDQ3MTViOGEzODc5ZDU0YjAzZDQ0YmY3OTYyYjc3NDA0MThlIGxlZ2FjeS10cnVuaworNzMxMzAgZGI4OGE2N2UzOGVlYTFhMzFmYjNlMDg5ZWQ4ZGVkMGU1YzBmMzgyYyByZWxlYXNlMjYtbWFpbnQKKzczMTMxIDI5OTA0NDBhMjBmNDJhMTA3ZDA0Y2IzMjE5MTk0NmM0MTc5ZGM4NWYgcHkzaworNzMxMzIgN2ZhODMyOTI3YjkxYzg2NDE0NDYxZDg5NGM0OWZhYmJiMjgzOTg1ZSByZWxlYXNlMzAtbWFpbnQKKzczMTMzIDdkNDc3NTU2ODBkNzg0MzNiNzI3MTg3OTE2YjY5NDBjMDVhNjliOWQgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMTM0IGUxM2E0ZjYyYjZjYWNjZGFkYWJhNjk5ZmRmYjYzYjVmOTg0YWI1M2UgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMTM1IDEyODE0N2RjYmMxZDUxMTM3OTUzYjY0NTgzYmY3MzE2YzgxNmI4NTcgbGVnYWN5LXRydW5rCis3MzEzNiAzZDEyZmI5Y2VkOTI2Y2FlNzVkYTY0YWNlYmUzZWM5NTM1OTE1NGMwIHB5M2sKKzczMTM3IGY4YjVhMTUzMmJlYzU2MDQ0YzllZTE1OGRiMDg2MzFiZDdmYmQzNWUgcHkzaworNzMxMzggZjBmODRhZjE1OTU3YmM4M2M2ZTNlNWI4MTI3NTMxOTZiMDQyMmFlMiBsZWdhY3ktdHJ1bmsKKzczMTM5IGJhODIyMjgzOTkzOGRiMDY5NDJmMDQxOWIwZmJkNjc0Y2ZmMTQwOWMgcmVsZWFzZTI2LW1haW50Cis3MzE0MCA3MjM0YTgzYThiMTlmZDhmMTU1MGVkMDVhMDdjMWQyMDg0MTA5MjY4IHB5M2sKKzczMTQxIDA0NDljYmU5YWM5ZDZiNTk1NTAxYzNhZTdjMWI1ZTkzMWYyM2Q3NDkgcmVsZWFzZTMwLW1haW50Cis3MzE0MiAxZTcyYTU0MGMxYWE2Nzg3MzY1ZDBhZGI2M2NhOWYwZDkxNmFkNTRhIHB5M2sKKzczMTQzIDYyMWE1OWJiMzQwNDViYWJiMmRmMjkzMzAwODMyN2FlNWFmYTcwYjIgcHkzaworNzMxNDQgODg1YjBhOTJiNTA2MjYyZmM3ZDk4Yjk2M2MwZDgwNzAzMjdiZDVhMCByZWxlYXNlMzAtbWFpbnQKKzczMTQ1IGU4MGUyNWU2YTE4N2I0YzVkNWM0NWFlNGYwMzNiNzJlY2EzNGE0NWQgbGVnYWN5LXRydW5rCis3MzE0NiA5MDQ4OWYyNjdiMzAwZGE0ZDk1ZGY0YjVhNzFlZTk0YmY5MjI4MmVjIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzE0NyA0MjgzYmM4YzkzMDY1MWNhMzEyODAxODMxNGJlZmVmNTZiMzYyOTk3IGxlZ2FjeS10cnVuaworNzMxNDggYjJmOTYyMzg1OTY5YTIwOGMyYzFjY2NmMGI1Zjg0ZWQ3OTJmZmY3YyByZWxlYXNlMjYtbWFpbnQKKzczMTQ5IDVlNGQwNzA1NjVlNzI4YzkzMjRlNjM4ZTI5Yzc2NWM2N2EwZWUxYjggcHkzaworNzMxNTAgZjYzMmUwMmMyNjQyZThhMTdmZmIxYjViOTk4NjAwMGE1ZTA0OTdmOCByZWxlYXNlMzAtbWFpbnQKKzczMTUxIGI3YjczNTI5OTRjODg0MDUwZWI1NzE3NjFhZDNjNmRmZWEyNmJiMmIgbGVnYWN5LXRydW5rCis3MzE1MiBjZmU1NzdhYTE1NmFjYzRlZDA0OTZhZjExMzJiZDA4OTc0YjExYWJiIHJlbGVhc2UyNi1tYWludAorNzMxNTcgMmY3ZDlhYmQ2NTViYWI5ZDIyYjRhZmZmMWEwMzlhZWFlNDYwNDE4YiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxNTkgMzJhNDlkMTA4MDFlZDFlY2JkNTBhMzUzMTdjOTY1M2Q3ZDM0MDY0NSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxNjAgY2YxOWNjMDZiMDkzMDhkZDA2ZjZiMzAxMGE0Mjk1ZmVlOTlhZTZhOCBweTNrCis3MzE2MSAzM2E4YmE5MjVjOTIwOWY4NWMwMDBhNjBmOTQxNTRhODE4NWZhNmIzIHB5M2sKKzczMTYyIDUxZmVjYmI3ZmM4NzI2NWZlMGMyYzdkNzI1NDAzNTkzOWFkNjNkZjQgcHkzaworNzMxNjMgNGEyNzcxZjZiOWRkNzg1MDQ2M2ZkZDEyZTViODIzZWUyNjQ1ZTRjNSBsZWdhY3ktdHJ1bmsKKzczMTY0IDJmYmM3MDM5MzgyZDFjNThmMjgwNjZjZjhiZTZjZjMzYjI3NDE2MmIgcHkzaworNzMxNjUgMmQ1MDBkN2IyMGJlNjg2YzYyYmRjOGFmMWVjMDliMDRlNzJiM2M4NyBweTNrCis3MzE2NiA5OGQ4YjhiNzQ5ZjQ3NDY1ZTBkYzMyYjFkYTFlZTFiOTMxNjM5MjQwIGxlZ2FjeS10cnVuaworNzMxNjcgMTZlNDVkOGI3OTU3ZTdlZTAwMzM0NTRmMzBlMmQxYzU4MjM4YTczNyByZWxlYXNlMjYtbWFpbnQKKzczMTY4IGZjYjI1ODBjMWFiM2U4YjMyOWFhOTRkNmE0YzgxOTYxY2VmZjk2Y2UgcHkzaworNzMxNjkgZTFhNDY2MDJiOWQ3MmFiMDY2NTI1OGQyMjM2M2M1YjY1NWIwMWIyNyByZWxlYXNlMzAtbWFpbnQKKzczMTcwIDFhMDI5YjdjOTc3MDUyNzdkNzg5ZjdjZTM4Yjc4NjRlZjQzOTIyYzEgbGVnYWN5LXRydW5rCis3MzE3MSA2NWY1NjFhM2UyOTFiODBlN2FkMzE4MTg0YzMyNzBlZDA1OTJmNDAzIHJlbGVhc2UyNi1tYWludAorNzMxNzIgYWU1ODVjZDVjYTU0YjNmYjQ3YTg1NmJiMTYyM2QzMTlkMmVlMTU2YiBweTNrCis3MzE3MyA2MjU0NGM5NDZlZGEyYWYxZDQzODRhNTBmNDI3MDMxZDQ2MjhiZmQ0IHJlbGVhc2UzMC1tYWludAorNzMxNzQgYjhiMzJmZGNjMjhkNDFlMzgzNGVlYjNhMmQ0MDJiNGQ3M2M2NzFiOCBsZWdhY3ktdHJ1bmsKKzczMTc1IDljMmUwN2E4ZDIzMDJkM2Y2OWVlMDM2NDY2Y2E0ODkwN2U0OGY3YjYgcmVsZWFzZTI2LW1haW50Cis3MzE3NiA3YzBlNzllNzFjY2RjNWIzZGI3YTAxY2U2Yzk0NmRiMzIwZDA5NzI4IHB5M2sKKzczMTc3IDAzMGEzZmU0YjYwNDUyMWUwZWEwMTAxZmZkOTY1MzFjOTEyM2NmNzEgcHkzaworNzMxNzggYjAxY2NhYzMwNDczNTA5ZTBjMDJhZTQwYTEwYmE2Yzc0YmM5MjM2NSBweTNrCis3MzE4MiBlODZiY2NlYmMwNzU4NmU4NGY4Yzk2ODBjMzEyM2IwOWM0MmQ1MTZjIGxlZ2FjeS10cnVuaworNzMxODMgYmZhYWYyZjRiMmU1YmQ1YjA3MTk5MWM4MTI0M2YxZWY3ZDcxYjQ2NyBweTNrCis3MzE4NCBiYzc0YjJmNjExNTk1ODkwYzFjNGQwMjgyZTZiZDdjMDhhYmYzMzQwIGxlZ2FjeS10cnVuaworNzMxODUgYTI5ODQyZTVlMTM4YzM3NTFiN2I1Y2FjYWZkOTEwOTYyODFiNTNkMyBweTNrCis3MzE4NiA1YTMyZjNkMDYxNThjM2U0ZTAyMzhhNzZlNTE2Y2FkYjNmNTg5M2E2IGxlZ2FjeS10cnVuaworNzMxODcgMTRhNGI2ZmIwMGZlYmE4MTg5OThhOWEyOWMzYjdjMzFmNjIzMDEyMSBweTNrCis3MzE4OCBhYmQxM2FjZmY1ZGJlMmJhOTRmYzAzZGI5YTg5YWI2YWU0Mzk1NDQ1IHJlbGVhc2UzMC1tYWludAorNzMxOTAgNDQzOWIyMmNmNmVhZmRlNzkzYzEzY2Y5ODhkMWI4NjA5ZjhlYjYyOCBsZWdhY3ktdHJ1bmsKKzczMTkxIDI4Nzg4NzE5OGUyZmE3MjRmZjQ2YzhhMmI2NjU2MmMzODlhNTJkYjkgcHkzaworNzMxOTQgMGM5NGM1Y2E1NWQ1N2Y1MzE3MjVmYWZkMzMwZTFhMWRkZjY0ODA0MiBweTNrCis3MzE5NSBmNDhhMDUyMTQyODFjMDgzMzE5YjAwYzc5ZWZjNTI0NzMzN2ViODljIHB5M2sKKzczMTk2IGQwNDM3OGY5ZmRiNDU2YjcxMDQyYjZkNjlmNWJjODE0NDQzZTRiNDYgbGVnYWN5LXRydW5rCis3MzE5NyA3ZGYyOTI5YTNkMDZmYzQ4NTJhNTUyNDc3MGFlMTM3MTExYmZjZWQxIGxlZ2FjeS10cnVuaworNzMxOTggYjc4MmZkMDVhODA2NDI1MmU1ZTYwOGFiMDcxNzhhODA1N2EyMjI0NSByZWxlYXNlMjYtbWFpbnQKKzczMTk5IDBkOGVkOWU1NThmMjhlMzJiODU4ZGM0NmU4MTFlYTJlMWQzMmIyYTEgcHkzaworNzMyMDAgYWZmOTdlNTBhMjA2MGE3N2I0ZWViMDg5NjYzODEzMGY1MzMxOWVlZiByZWxlYXNlMzAtbWFpbnQKKzczMjAxIDk3YTBhODU4OTAxNGQ3ZWQyYTYyMDFmYjAwYTk1N2QzODk4ZDI1YjcgbGVnYWN5LXRydW5rCis3MzIwMiAwMGQ1NzcyYzg2ODY2MjUyNDZjMmEzOWZhNDYzZjBmN2Q5YTc0ODM0IHB5M2sKKzczMjAzIDVlY2RiODI5NDM0Zjk4NjNiOWFkYjNjMzk4NmUwZTBiMTRhNGNlZGUgcHkzaworNzMyMDQgMThkODIzZThiNjAyY2VkZTY3ZTI4NjJmNDNiMWZkOWRkOGQzYjFhMSBweTNrCis3MzIwNiBkNWJmMDhjODYxYTY0MjVlOGYwZGFiYzAyNjE0MjQyMjlmN2ZlMzhmIGxlZ2FjeS10cnVuaworNzMyMDggM2Y2MjExNDBlZmM0YTJlMjNlOWFiNTBhNWYwYTBhZmJkOTI4MjI3ZiBweTNrCis3MzIxMCA4ZmE0Y2NhOWEyMmNlNDkzMDYzZGZiMTc0MTA3MTQ2OWJjN2JjZmMwIHB5M2sKKzczMjExIDAzMWI5NjNmMmJjMjc2ZDVmZTAwNTI0ZGY5ZDQ0OGViODdmMjQzOGIgcHkzaworNzMyMTIgODQzMTc4Y2YwODk5ZDdjOWZlNmU4NGNmOTg4YTA4NjAyODk3NGU3MyBsZWdhY3ktdHJ1bmsKKzczMjEzIDBlMDU0YzY1NzA2MjQwMmQzNzhhYjQ1ZGQwZDk1NTRlZjIyNzZiNDcgbGVnYWN5LXRydW5rCis3MzIxNCBlOWIwZGI1NTNkMDFmYTgwZjM5NDRmODM2MzA1YTU1Njk2NWYwY2ExIHB5M2sKKzczMjE1IDNjNDE1NzM0OTBjYjg1Yzc3YTJlOWQ4OWE2OTFhZDhiYjMyNWI1NzkgbGVnYWN5LXRydW5rCis3MzIxNiA1MGJlYTUzMzlmMTgyMmM5ZGY5ZThhMWYzZjc3ZWUzNzkwNDlkYTViIHB5M2sKKzczMjE3IDc0MjQ2MTI5YmQyMjMzYWNhYWRlOTIzZDkxZDY1NWZjNGEwMDNlZWUgbGVnYWN5LXRydW5rCis3MzIxOCBkZGI1MGMzYjg2ZjJlM2QxYmVjM2Q1NTJiMjRjMjI3ZDRhZjRlNTZlIHB5M2sKKzczMjIzIDBiMDc1MzE2NzNhY2QyYjQ1YWQ1ZDFhNzA5YTRhMzE1ZTYwNmMxOTAgcHkzaworNzMyMjQgYTA3ZWE4MmE1YmIwY2M4MTkzOGVkODU4NDIxOGYyYmY4NTA2OTRkYSBsZWdhY3ktdHJ1bmsKKzczMjI3IDM5Y2IwMWIwZmM2NDhmMzFmYWUxMTUzYmNjYWI2NDJkMDk0NTlhYWUgcmVsZWFzZTI2LW1haW50Cis3MzIyOCA2ODZjMTViODY3NDg5OGNjZTk5MjUwZjc3NWMyMGZmOWYxMmJkZWExIHB5M2sKKzczMjI5IGVlZjVkMWNlNmY0YjcwZDliY2YyMzQzOGZmY2Q5Yzk2OWY3MTk4M2IgcmVsZWFzZTMwLW1haW50Cis3MzIzMCBkNDUyNjk5NTZlZmZlMjJkYWNkNWVjZGYxZDQ2YTA1ZTUxMGRjNzY1IHB5M2sKKzczMjMyIGVkNmVkM2M4MzlmNWJjOTNhYWFkM2VjMDQ3ZDBmNGJkMTRkNzQ5YzMgbGVnYWN5LXRydW5rCis3MzIzMyAzYTc4NGIyMTcyMjA5ZjNjOTI0NDA2YjFhY2Q5NDFlN2MzMTRlMjNmIHB5M2sKKzczMjM2IDA4MDVlYTIxMTEyMjBlNDBiZTQxZDk2MjY4OGEyYzI2MDliZjZmODIgcHkzaworNzMyMzcgZDk5MjI4MjljMjA0MzQ4MjZjOWIwMjMyOTVhNWQxMDA0NWU1MTMxNyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMyMzggMDNiZWFkNzI5NDdlZjliNWFmZGM1NGYxODNhZmIxNmRlMWM0NmVlNiBsZWdhY3ktdHJ1bmsKKzczMjQwIDgxMGMyNWYxOWNkOTRiMmI5MDMwMzQ1M2RkY2ZjZTRmYzU4Y2I2YzkgbGVnYWN5LXRydW5rCis3MzI0MSBlYmViNGQ2N2RiYWU5NjY5NzA3ZGIzMjhmYzg3ZTAyMzExYjhkYzQxIHB5M2sKKzczMjQyIGMyY2VjNTZkMGI4YTExNWFjMjNkNDU2ODgyMTY4YmYyMTZhMzk2NTggcmVsZWFzZTI2LW1haW50Cis3MzI0MyBjZWVmMGE3OGJmODc5ZjMwMTc0NGViNWJmMjQ0N2UzYzM1OTRiZDQxIGxlZ2FjeS10cnVuaworNzMyNDUgMDk0ZmQzMzVhNDcxMDIwNDViMGQ3N2RjYTAyOTlmNjcyYTIwY2I3NiByZWxlYXNlMjYtbWFpbnQKKzczMjQ2IGVmNzQzMTJkNzIxNTVmNzE4MGQyOGViMDEzMzYwMTg4MzJkYzQ5ZWMgcHkzaworNzMyNDcgZTRhN2M0OGRlNjAzYmRkMGUwMGMxMDI4MzA3YmU0ZDNjMjBhNWM4ZCBsZWdhY3ktdHJ1bmsKKzczMjQ4IGFlOWI1ZDRmMTIyOWFkNmMyZTQyZjA3NjU0ZWY1OGIwYThkOTZhNzEgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMjUwIDYwMjU1OWZhNTI5N2Q1MTkxYzI0NjI3ZjAxMWNiMzY3ODAxY2FkZjEgbGVnYWN5LXRydW5rCis3MzI1MSBkYTMzYmVkNWQ4YzQ4NjI5ZDIwZTcwMGNjNzcyMjFkNWUyY2YzNGYyIHB5M2sKKzczMjUyIDExMmUxYmI1N2U3YjJkZmE1N2YwMTY1NzMyNjQxM2VlMTMwOWZmYmQgbGVnYWN5LXRydW5rCis3MzI1MyA5YzA5MTU0NGUxZGYyNzhlZWE3NGRlZThmMTQ5ODZkNjQ1NTJlMjE0IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI1NCA1NzhiYWY3ZDMxMTQ3MzIwMWI5MjRjY2I2MDMyNjFkNzM3ODA5MmY2IHB5M2sKKzczMjU3IDgxYTViMWVjOTEwNWFhYjdiY2MzY2EwNjBiNmExMTA1YTgxMjFjMzEgbGVnYWN5LXRydW5rCis3MzI1OCAxMjg1M2RiM2VlYTM3Y2VkNTYyMDFiOGRmMGFiNmRlMjlhMTYxZTcyIGxlZ2FjeS10cnVuaworNzMyNTkgMWY4ZDk4NzIwYWNjYzk5OWQwMTlkN2EzZDcwMTYxYjQ5OWIwMmVmMiBweTNrCis3MzI2MCA4ODg4YTZmZTlkZDdmMjkwZDkzZjZlODc4YTkwZmI0ODJkNGUyODgwIGxlZ2FjeS10cnVuaworNzMyNjEgOTU0N2Y0YmJkNWE0NWY4NTk4MTBjOWU5MDEyNjNmYzliMzk1OGI5MiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMyNjIgMzJlMzQ0ODNlNmRiNzIzM2VlNGU0MTgzNzRjZTQ0NTg0ZGM0YmRjMiBweTNrCis3MzI2MyBjZTg5NTkyYTkzYTQzNmUyYTFhNWU4N2FlZGYxOTdmZjg4NGNlNzllIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2NCAzMTdhMTc1ODQwNTgwMzdjOGJmNTYzYTA3Y2RjNmYyM2NiOGYxZjc2IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2NSA3ODdmMjdlZDcyYzI4ZDNjN2I1MTU4ODRjMWYzYzRmNDU1MGQ5OGQ3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2NiAxOWQ4YTNhNGUxNDk2MDJlNWQ5ZmY2MjE3ZTE0YTIzMGFkYWVhZDE3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2NyA3ZWU1Nzk5YTdiNTE5NTYxMmUyZTYzZTQ3ZDUxNDA2ZjNmZWZiN2JkIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2OCAzZDgzNTdjY2Y1ODMxZWZkOWY2MzU5NGRhOWQ0MGY4ZjUzM2FhMmI1IHB5M2sKKzczMjY5IGZhZmI5OTFiZWE2YjFiMDc5N2U1ODNlMmFhYmQ1YjJiNjFkZmEwNjcgcHkzaworNzMyNzAgNzgzZDQwNDRkYzJkZjkyOWE1OGNkODQwNjFlMTY0MzE1MmM0OGNhYyBsZWdhY3ktdHJ1bmsKKzczMjcxIDBlYmU4ODlmMTA2ZmU5ZGZlMDcyMTU5NjQzNDRlNmU1Mjc1YTRiOTAgcHkzaworNzMyNzIgZGE2ODcxYjlkODg0YzRlODdhMjg3MDViNmJlNDdkZmFhNTVlNjA2OCBsZWdhY3ktdHJ1bmsKKzczMjczIDY2YTViYjNkOGE4ZDgyZDhmOTFkYzA0YTBjMWY2NzI2NGU5N2EzMTkgcHkzaworNzMyNzQgZDY3OWI2MDkwN2Y3Njk4YjBjMGE5YzEzYzM4OWI5ZGFhYzI1MGNhMSBweTNrCis3MzI3NSAzZTJiOGRlNGIxNmNjODJkYWE3MDljMjExZTQ0YjI3ZWViYTAzZGIzIGxlZ2FjeS10cnVuaworNzMyNzYgMDZmNWY0MjZiODQ5MTE4NmQ1ZTg0MmY4MWRmNjg3NTY1ZWEyOGRkZCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMyNzcgODg5YjVmZDhkYTMwOWE1NWNkYWQyNjU2YWY0NzFiZmE2OGM1ZmQ4MSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMyNzggODUxNjM2YjYyYWQ5NWFiN2NjZWRiZjQ1NjQxOGVjZjc0OWNhNGFiNCBsZWdhY3ktdHJ1bmsKKzczMjc5IGQ5NDVlNmRlNTIyN2I2YmJiMmJmN2FlNDcwMTAxMDdiOGJlNjRlYjYgbGVnYWN5LXRydW5rCis3MzI4MCBkNzlmZGUxMDQxYmRjMGFmNzRmOTA4YTc0ODY4MWZhOTEwNjkyZTgyIGxlZ2FjeS10cnVuaworNzMyODEgMDU0ZWE0N2Q2Y2M3MzgzNmQzN2VlOTc0NTdkNWFmMDcxYjg5MzU2OSBsZWdhY3ktdHJ1bmsKKzczMjgyIDBhYmY1NjJiMWU2Y2Y2ZTg4ZWZlZThkYTgxNzFjYmNhMzQxYzE2YTggbGVnYWN5LXRydW5rCis3MzI4MyBmN2M5ZTczNDIwODQwMDgyZDI3NmYzN2VmNjA0MGE4ZDAzMDVhOWIxIHB5M2sKKzczMjg0IDZiZmI1OTUyMTEzNjQ3ZDM2NTNkOGQzMmYyMDFhZmMwYzUwMTllODcgcHkzaworNzMyODUgZjAwMTlmZjZiM2U1YjMzNGJlZDBkMDE3OGI5NzliMjZjODUwZTgxMiBweTNrCis3MzI4NiAxZWYxNDIxYTYxMjI1NTMwYjQyN2VkNTE2N2ExYWFjNWE2M2Q3Yzc4IGxlZ2FjeS10cnVuaworNzMyODcgZWY2NWNjNDAyYzkyMzE2MmFiNTQyZjdhMzA4MTI0MjkyNWIwY2VlNiBweTNrCis3MzI4OCBjZjhmZmFiNDkwMDMzNWE3N2VhZDUyOWQ2YWY2NjFlZGU0NWYxNWU0IHB5M2sKKzczMjg5IDk4NTUyMTMxZjY0MWJjM2IzMTQ0ZWZjODc5YTQ3OTI4ZGE4NGNlNjcgcHkzaworNzMyOTAgNTVkZDllZDIzZWVhZWNmMjgwYWFiNWY5NWQwYWMzMmJmMDZmNmY4MCBweTNrCis3MzI5MSA4ZjkyODc5MjU0N2NhZjRlNjAzYmI4ZmE5MTgzNzI1NmY1ZjgyMDdmIHB5M2sKKzczMjkzIDI3ZTA4OWNhYjcyOWExZGZmNDkxNzRlMmE4OTdiOGUxN2UyOTAwMmYgcHkzaworNzMyOTQgYjUwNGQ2ZDM0ZmNkNzA4MGYxNjdkOTM4NGU0MjBhMmNlOTdkNTNlYSBsZWdhY3ktdHJ1bmsKKzczMjk1IDdhZDJmMjJmMTNlNmEwMGM0OGRiNzBmNWM3YzU5NTk3MjQ2MDA5MjYgcHkzaworNzMyOTYgNjk4NTU3Y2M1ZGM1MDdmOGIyMjU4MjczYmY1NjNmN2EzZmZjZjkyYSBsZWdhY3ktdHJ1bmsKKzczMjk3IGMwMTdkMTkxNjczMTQxNzM2YjVjNzA3YjRkY2JhZDYxN2U3ZDNjNmMgcHkzaworNzMyOTkgY2E1MTk5NjA5OWZkZDI0NzQ0OGY2M2I3NWEzYmM5NjRkZDgzMzM2MyBsZWdhY3ktdHJ1bmsKKzczMzAwIDI3OTVkNmZiMjFlMjYyZDljNzAyZjQzMjI0OWY5MmJhMDg1NmU2YWYgcHkzaworNzMzMDEgNTQxODlkNWE2Njc0Nzk3NDQ1ZDdjYzU5MTcyMGIxYzg5NmQyZTkyNiBweTNrCis3MzMwMiAyNTVkYjcwYmIzMTZhYzBlMmZlYWQzOTEzY2MxNDAwYWNmMWUxMTZlIHB5M2sKKzczMzAzIGNlYjI2MmQ0NGQ3NDY0MTQ2ZDYzYjg0YmU0NDRhYzJlMjY1OTM1MWEgbGVnYWN5LXRydW5rCis3MzMwNCA3MWNiNjAyOWU4OTI3OTUwZTc1ZDRmYWMwNzBhYTg4MGY1OTdmNjRhIHB5M2sKKzczMzA1IDFjN2ViNWI2MjI5ZGRmNTI5MTJkNzFjYzQ5MmE3NjVhMjZmNDJhYTEgbGVnYWN5LXRydW5rCis3MzMwNiAzNWM1YzFlMDdhNDRjZjMwNzVkMzYyMjY5ZmI5MDY1ODA1NzUyOWEwIHJlbGVhc2UyNi1tYWludAorNzMzMDcgZmQwYWQxMTVlMjM4MjlhYjk2YzhjMmU2ZjE5YTU2YzU5OTc2MzdiYSBweTNrCis3MzMwOCA4NmIzMmUxZmQ5OWYwYzdmODFlOTU1MzYyMzk5ZjkxNjMyNzQwMGQ1IGxlZ2FjeS10cnVuaworNzMzMTIgMWI4NjAyYzM4ZmQwYzdhYWE3ODY5NGI3OGJkMWJiOWFkOTUyM2Q4YSBsZWdhY3ktdHJ1bmsKKzczMzEzIGM0YTgxY2UzYzg5MzI3MDIwYzc2YjNhZDUxN2U4ZmZhZmVjYTlhZjUgbGVnYWN5LXRydW5rCis3MzMxNCBlYTMwYWFjYjMxODE2MzdlOGY5ZTAwOWNjYWQyNTQ0ZTBhNGY0OWQxIGxlZ2FjeS10cnVuaworNzMzMTUgODc1MzRiZmQxYmU4YjdiZGQyMGM5MGM4MjFmYWNhYTZiODkwN2VhZiByZWxlYXNlMjYtbWFpbnQKKzczMzE2IGQyZDU0ZGM4ZTQwMGZhYTYxNDBiYmQwZTE2NTYzZjVhN2E0ZDNiZjUgcHkzaworNzMzMTcgNTE3N2I2NzgwY2I3NDJmMDIzMWQ1MGFiYWY4Y2MxYmY5MDFlYTYwYiBsZWdhY3ktdHJ1bmsKKzczMzE4IGI5NmM5ZDhkNWY5ODVkYjZlMzhiYjY5ZWFjYjU2YWY2ZmZiOGI3N2MgbGVnYWN5LXRydW5rCis3MzMxOSA3NjBhODg2NmFlZmZhMjQxMGE3MzRmMjMwNTk2NmQyMWNkODdlZGUxIHB5M2sKKzczMzIwIGFiM2EyMTMzNmE4NGQ2Yjc4OGQ1NGQ1MWRlNGIwMWJiNzg2OTRiMWUgcHkzaworNzMzMjEgNDQ2MDMwZjMxMGE5NTE1YzdhMTZkODlmNjIyYzJkOGIzZjc2YTE1MyBsZWdhY3ktdHJ1bmsKKzczMzIyIDkxZDRjNTE0ZTc4YzAyOTkxZTVjZmViNmRlOGI1Mzk0MTZhZTI2NDYgcHkzaworNzMzMjMgZjU4Mjg3NDJiNDZmZWQyNDc4ZDFiYzRjODRiMDQxM2VhNzYzNjRjMCByZWxlYXNlMzAtbWFpbnQKKzczMzI0IGQ0OWQ0OGYzMzVjOTAwOWJhYmQwY2M2ZDc3OWMxZWU4ZTExNDhkMDMgbGVnYWN5LXRydW5rCis3MzMyNSA5MTQ1ZjU4Zjc0OTk5YTczMzBiMWIwNTljN2NiMzQxMDY2ODYxZGU2IGxlZ2FjeS10cnVuaworNzMzMjYgZmE2N2JmNjc0YWYzNjNlNDQ2NDU1ZjhkYTRkYjQyYTY1ZWM1YmNjMiBsZWdhY3ktdHJ1bmsKKzczMzI3IGVjODQ1YzRlM2Q3MzZiNmE5MGRjNjVjZGZkMjc3N2E5YzRmM2RkMWUgcHkzaworNzMzMjggYjhkMTYwYWQxYzkyNTYzNjU0ODBmNDM5NmE1MGM1ODFkNmVlMWViNyBsZWdhY3ktdHJ1bmsKKzczMzI5IDY2Mjk3YTA3NGQ4YmU5YzA0NTE3NzkyYjlkZWYxZGMwMTZmZmQ0OGUgcmVsZWFzZTMwLW1haW50Cis3MzMzMCAwNDgwNzAwNTUzYWIyM2ZjZWU4NWY2Mzc5ZjUwNWIwZjBjOWQ3MTJhIHB5M2sKKzczMzMxIDc0NGU5ODRmMTg0MWFhMDVmNTA5NGNmZjAyNjE3ODI2YWFlYTJmYjkgbGVnYWN5LXRydW5rCis3MzMzMiA0ZmQzYTRhZWVlNDczZTcxMDczODI3YjRiYjRlNGE4ZTM0YjAwNGM5IHB5M2sKKzczMzMzIDEzYTk4NzRkOGY0NzZhNDJkYjNmNTVmMDBiNzNmMjdiNmU3ZDlkYjggcHkzaworNzMzMzQgYjYwOTVkYzhmMzVjMDcwYzQ3ZTgyMjE4YjFkM2FmNzNkMzBjMjU2NSBsZWdhY3ktdHJ1bmsKKzczMzM1IDRhY2Q5MzZjZjZiNmY5NzI3MjYwYmE1YjQ1MmIxNzM3ZGY3MDU3YWEgbGVnYWN5LXRydW5rCis3MzMzNiBlZGYzZGRhYTM0NmJmZDEyYjA1NjZmOGJmYjg0N2UwNzkyMjgyYmU5IGxlZ2FjeS10cnVuaworNzMzMzcgMDNkMzhhMmFiYzQ2YTk4YmIyZWMzNDZiOTVmZGI5OTY1NzY4NWRlMSByZWxlYXNlMjYtbWFpbnQKKzczMzM4IDY1N2E4YWUwYmJjOTQ2Nzg4NGU0OTA2NWFiNDcxMjMyMzkyYzk4NDMgcHkzaworNzMzMzkgZjQxYjI4NWYyYjU5YWNmZThjNmVhNjEwM2NkNTAyNjcyNGJmYzE1OSByZWxlYXNlMzAtbWFpbnQKKzczMzQwIDI3MTlhODhjMjI5NGY0MDRkMWRjMmIyMDZmNGFhMjBiMWE3MTgyMGEgbGVnYWN5LXRydW5rCis3MzM0MSA2NTc5M2FjYzAwOTUwMDJmYTBmNjIyYWMxZDkyMmI1Y2NhZmQ2MWRkIGxlZ2FjeS10cnVuaworNzMzNDIgMGFkZjBmYTc5OTNiY2VhNDBiMWM0ZGY1ZjU2NjAwOTgyZmZkMDBhZiByZWxlYXNlMjYtbWFpbnQKKzczMzQzIDhiM2FlM2EzODI1MDc2MTQ4N2U5ZDZiOTFlOTE2YmFlODRlMDQwMGUgcHkzaworNzMzNDQgZjYzMTQ3NWEyNjQyYjNiMzhiNDc1ZGRjNWIzMTU1YmUxMzZmYzgzYiByZWxlYXNlMzAtbWFpbnQKKzczMzQ1IGI0NjM1ZGEzMTA5OTkyMjg4OTM3NDY0MGE2ZDUxYWYzZjFjOGI3YTEgbGVnYWN5LXRydW5rCis3MzM0NiA4MGVmM2I3YTRlMGRmNDVhMWRlMjBjNDg2NWFmNWYyNWQ2Y2JhYWFhIHJlbGVhc2UyNi1tYWludAorNzMzNDcgNDc1NWY4OThiOWZlMGQ0OWMxZDY1NjVjZDZmNTQwNmZiMTFhZjliNSBweTNrCis3MzM0OCAwZGU2NmZjZWYwZmE4OTcyZTk0M2YxZDcwZWQxNGUzOGYxZDI5MTlmIGxlZ2FjeS10cnVuaworNzMzNDkgZWM1OTE3Zjc3YWMwZTY4OGZmMjYzOTk2OWZmOGEyMjI0NTgwZjE2YyByZWxlYXNlMjYtbWFpbnQKKzczMzUwIGEyZjIzNzZlMWQyMDFhMjg4ZDY1MTk3NjRjOTI2ZDY1MDRiMDhhMmYgbGVnYWN5LXRydW5rCis3MzM1MSA2MDAzNmU1MGNkMTg2NzU1NDdkOTVhODMwMmU3NzJkODM1ZmE1NjMwIHB5M2sKKzczMzUyIDAwMzFiYTIxMzkwYTFiM2FlZjhjOTk5NDJiOGRiNGJmOTkwM2I1MzEgcmVsZWFzZTMwLW1haW50Cis3MzM1MyAxMTI4ODIzOTc5ZGRlOTQzMjViYzMyYTI1Y2I2MWI3NzhhM2JhODYwIGxlZ2FjeS10cnVuaworNzMzNTQgMGQ5YmQ5MWViODVjYjVjNGU0NGExOGYyOWMyZjJiNjVmMzhmN2JhZCBsZWdhY3ktdHJ1bmsKKzczMzU1IDIwOWE1MzllYmZmODA2YzI5YzYzMjc5ZTA2YmNhYzA4YWZmMDE3YzkgcmVsZWFzZTI2LW1haW50Cis3MzM1NiAzMjQ0ZmM0NzczZjU3NzI1ZWYzZGFlZjBkZGJkNzkwOTIwYjY0NzY1IHB5M2sKKzczMzU3IGJiNjNmZDk3OWZjZDBhODE0NDdhNjcwZWYxZWQ1MjA5MTllODAyYjAgcmVsZWFzZTI2LW1haW50Cis3MzM1OCA1YTM5ODVlNWRhZTNiNTczMDM2ZTllYTVlYTNlMzc1MmIyZDkxMTIzIHJlbGVhc2UzMC1tYWludAorNzMzNTkgMTQwMTgyYWNjZDFmNTgxN2VhMTk2ZGU5NDI3MDBlYjIwZDFlYjkyNyBweTNrCis3MzM2MCA0MTc5YTNlNjYxMjMxZjkzY2M1NTAyNzZlNTFkOWU5MDg1NDRhMGQ4IHB5M2sKKzczMzYxIDk2YTBjM2Y2ZWY4YmVhMjcyODk1NWM5ZTVmMGE3YjUzNjc4OGYwYmMgbGVnYWN5LXRydW5rCis3MzM2MiAwMjc0NDQ4MTBlM2YzOWNiMzU4ZTYxMTQ0ODE0YzUwOTVmNTQwMzEyIGxlZ2FjeS10cnVuaworNzMzNjMgYTFlMDY4MWFjYjM2ZjFiN2E3ODczYTQzNDA4ZTYyOWM4N2M3ZmM5NiBsZWdhY3ktdHJ1bmsKKzczMzY0IDQxZTZjZjY4NWVkMTZiMjlkZTc4OWE4NjFiZGVjYzg4NTgzNzFjOTUgcHkzaworNzMzNjYgMjAxNzBiZDBhZjI1NGRlZDk3YTFmZDczM2VhY2UxZTA1MmI1ZDhmMiByZWxlYXNlMzAtbWFpbnQKKzczMzY3IDcyODg5YTBiOGYzMjJhNzM4ZjE2ZGVmODg1NmM1ZmRjNjVjYjdkZjUgbGVnYWN5LXRydW5rCis3MzM2OCA5ZWU5ZTdhYThhYmMyNDQyNTg1ZDlkN2E5ZmEyOThiZDIwNzZlMTc2IHJlbGVhc2UyNi1tYWludAorNzMzNjkgZTIwNDFjNWM2MDA2M2Y5M2RlZDBjMTc3YjMwMTk0NjliYTczMTQ1YyBweTNrCis3MzM3MCA3NzAwNDA4ZjY1ZmM0MWZmZjYzNTYxNjE4MGQ3NTQyYjE3NGE4OTc5IGxlZ2FjeS10cnVuaworNzMzNzEgZDY2Y2FmZDZiYzIxYjA5OGQ4ZjcyMGRlZmY0NzE1YmQ2NTQzODU1ZiByZWxlYXNlMzAtbWFpbnQKKzczMzcyIDVlYTg1MDdkOWJlMTJhMGY2NTY3NGFmNmJiMGMxODgyMjA5NGQ2ZWQgbGVnYWN5LXRydW5rCis3MzM3MyA2MGEwYWYzMmE2NjNlMmFkMjY1ODc2NjBkYjQyOGEyNTc3OTUyNzE5IHJlbGVhc2UyNi1tYWludAorNzMzNzQgMTJiZjg3Y2QyNzQzMGUwYWRmNzM2OGZmYjk2NTY3Mjk1ZGI2NGVkNSBweTNrCis3MzM3NSA0ZjhhNDRiNTFkMGMxZWFkNGRjNTNmZTg1MGE4YjkyNTEwOWQ3OGVmIHB5M2sKKzczMzc2IDUzMDZiODRkNGZjZWVjNjlmYTc2ODE4MDNlNTMwMGRiZGU4OGY3NTAgbGVnYWN5LXRydW5rCis3MzM3NyA2MzcwZDcxZTNjYTMyNzE4NjJhNTkyNjMwODdmY2RjZWFiY2M3YmU1IHB5M2sKKzczMzc4IDU1ZDIyYjAyNDQ2NGRiMjVhNWNjNTBkNjRkMTE1ZmQyNjhjNzVjMTYgcHkzaworNzMzODAgMGUxYjNjMjRkM2UyN2E2NmYyZThkNzhlZTc1NDUxNWMzNWYxMzQ1YyBweTNrCis3MzM4MSA5ZjNhMjU3NDNmMDNmYjUwYTlmMTBiNGRmNmYyZTE3MmZlYWUyMzI2IHJlbGVhc2UzMC1tYWludAorNzMzODIgYmExMDI1NDBlYTM3Mzg4YWMwOTU1ZTlkOGE1MmQ4ZmVlMDhmZmE3ZiBsZWdhY3ktdHJ1bmsKKzczMzgzIDdjZjg5ZWQ5MGY5ZDA2NGFlNGExZDJjODk4NGQyMDk4MGQ0ZjgzYTkgcmVsZWFzZTI2LW1haW50Cis3MzM4NCBkYWU5YmU2Mzc5YjNlNTg0MTg3ZGE4NmRlZTI2NzkwM2JhNWM0ZTEzIHB5M2sKKzczMzg1IGZjYmNkOTMxMzM4Yjg5MzllOTI1ZDYxZjJkZWU1OWY4YmQwYTFkNDkgcHkzaworNzMzODcgYzk0OTRjODg3ODhmNWI4NTJiZDJlZjlmNzE4ZWNhYzZhYWMyODJmNSBweTNrCis3MzM4OSBmNTc2ODA3NDhlY2JkNjk1NWM3Njk1MTBkN2Q3NDhhZTdiODQzZDZiIHB5M2sKKzczMzkwIDY1MjU1MWFlNDc2NzAyZjM2YWYyNWQ2OWYzZGY2OGFmMTYyNjA0YTYgbGVnYWN5LXRydW5rCis3MzM5MSAwN2UyZWUyZmQzNmQzMmZiYzRmNWRiZWY0MGMzNzNjZDVlYzI5NDNjIHB5M2sKKzczMzkyIDY0OTJiNmVjZTU5ODdhYmU0YzFmNDA2NmZiYTc3NGQ2YTMwMmJmODEgcHkzaworNzMzOTMgZjM0NzU0YTc0NWFlMmEyYTg0NTc4OTMwNzU3MzZlMGUxNzk2YjRlNSBsZWdhY3ktdHJ1bmsKKzczMzk0IDc2MGE3MTBlYjZjMTU2NTRhOTlhNTI4MmNhOThhYjlhNzNiYzdiYTkgbGVnYWN5LXRydW5rCis3MzM5NSAwMTdiNGI2NDRmYWYyNDUzMTNhNGE1Nzc4Yzg1NGUxYTdmMmI4OWE2IGxlZ2FjeS10cnVuaworNzMzOTYgY2RmMjUyYzg3NDMzNmIwNWMxYWE0NTlmNDg3OTViMjQ2ZThkNDVlMyBsZWdhY3ktdHJ1bmsKKzczMzk3IDI0YzhkMWFhYmFkZTMxOTkzNWJkM2I3ZjA1ZDY0NWNiODkwZmU4MDEgbGVnYWN5LXRydW5rCis3MzM5OCA5MjFlNTY5ZDEyMTU3N2Y1YjAzNzQ2N2M5MjQ0NGY0ODVmZjk2Y2E0IGxlZ2FjeS10cnVuaworNzMzOTkgZDgzMzhhOWExZTNhODgxMDBkZTQzMzM2ZjhmYzZkNDU5M2EyNjFkMiByZWxlYXNlMjYtbWFpbnQKKzczNDAwIGViNjFjY2E1ZjU0ZGUzYWFhZGM0ODI2NWZmMmQ0OTk4OGM2NmI2MTUgbGVnYWN5LXRydW5rCis3MzQwMSBiZWU0NmZmMGU1NzgzNWFmMzQ4ZjEzMWY2MjY5ZjZiYjIzMDFkOWI1IGxlZ2FjeS10cnVuaworNzM0MDIgNDUzZmU0ODg0MmQwYjEwODQ1YWNiMzVmZTU5MDNlZDc1Yzk1OGUxNCBsZWdhY3ktdHJ1bmsKKzczNDAzIDc1YzRkM2JjNmNjODg0MDM3N2Y5OGQxMzBjNjFmMGQ0OGY4NTFhYWQgcmVsZWFzZTMwLW1haW50Cis3MzQwNCAwYzM1N2UzZmMzZDAxN2M2NmE5NDAxN2NkYTc1ZGUzNjg2Y2M0MzljIGxlZ2FjeS10cnVuaworNzM0MDUgNzg4ZTEzOTdjZTc3NzQ1OGZiMGRjOGYzYTBlOTZiNThiZTRhOGNmMCBsZWdhY3ktdHJ1bmsKKzczNDA2IGI0MzM5OGVhNTQ5ZGU0NDBlNjI4NTNjNThlMGI4ODNlNjNlZDkzYmQgcmVsZWFzZTI2LW1haW50Cis3MzQwNyA0N2UzMzY1ZTIxNzdlODhhMGE5OWRlMTJhMzJmNDQ1OTVhYmM1YzNjIHJlbGVhc2UzMC1tYWludAorNzM0MDggMDMyYzJlNWUwNjE0ZjM3MGU4MGY5NmE1MzA0NDY5YjQ2NWQxNDkyZSBweTNrCis3MzQwOSAwNGNjZWMwNDQxYjJhNjM5NGFiOTRkNmE2NDA1MjRkMDE0MWVjOTZiIGxlZ2FjeS10cnVuaworNzM0MTAgMDNhODQ4ZDFjYjY4Mjc2YTg4YTA2ZmI3NjczYmMxYWRkNGE1M2IwOSBweTNrCis3MzQxMSAyNWVkYzVmNzJhNzJlYTNjOTNkNjYzY2VmNzVmYjk4NTA0NGVmZTljIHB5M2sKKzczNDEyIDBiODdlNDM4ZTFiNTNlM2Y4MTJjYWQ5NjNhN2ZkYjY1ZDE5OGJhMmYgcHkzaworNzM0MTMgMTllNWRmY2UwZmJiMDI5NWJkOTA1ZGM1NzQ0YmNhYzUwZjZlZWQ4NCBweTNrCis3MzQxNSAyNmY4YWU2ZjAzN2Q2YjVlMjNjMjBlNDVlYjc2NmE5MWFkZDFmZTg2IGxlZ2FjeS10cnVuaworNzM0MTYgYTc2NGRiNjQwMjg0MmJjNzYxODRhMWZlY2EzMjc4MjY4YWYwNTJkOSBweTNrCis3MzQxNyA5MTI0MjMxMzU0ODM4MTYwNmVjYmQ3N2M2ZWI4ZDU0MTZmNTgwY2Y0IGxlZ2FjeS10cnVuaworNzM0MTggMjIxMjc0MGY0NTQ0NjliZTgxMTg3NWI5NTI3MTVlZGEyZjI4NDM4MSBsZWdhY3ktdHJ1bmsKKzczNDE5IGNiNjY0NzNjYmJmODhkOWYwMTg1NzFhYmFlYjE3YmE5ZTY0ODBlYTAgbGVnYWN5LXRydW5rCis3MzQyMCAzZWI4NTEwODA4YzlkMGU0MzMwYjQ0ZTQ3YWE5YjFiNTM0Zjc4ZWEwIGxlZ2FjeS10cnVuaworNzM0MjEgNDBjOGMzNTQ5MmYxNGEyODk3NjU0ZmVhZDc0MTRkM2NjMTczODkzNSBsZWdhY3ktdHJ1bmsKKzczNDIyIDI0N2Y4ZDI2OGQ1OGM0MWEyNDQ2MmIzZGQ3NzNhNjY0MjQ4Y2I1YzUgbGVnYWN5LXRydW5rCis3MzQyMyBmMTE4YWFiNjUwZGQzZTljMjRmYWZjYzMyMzIzMjAwZTdlMTViMDY1IGxlZ2FjeS10cnVuaworNzM0MjQgMGJlMzc3ZTYwODAxYjZhZmViMzI5ZjJmNDcwMDliZWYwYTYzZDBjYiBweTNrCis3MzQyNSAwMTUxMDI5ZGUxZDkxNzQwYzRlMTVmZTcxNzQ3ZGEyYzBmZmQzMDNmIGxlZ2FjeS10cnVuaworNzM0MjYgM2M4ZjRmN2U0YTYyZWIxZDBlMGEzYTkxODE2MTE4MWViY2MwOTA5OCByZWxlYXNlMjYtbWFpbnQKKzczNDI3IGU0MTE5YzkwYmYyOTUzOGQwMDJiYWY5ZGU5ZmRhZDU3M2Q4MWQ0N2IgcHkzaworNzM0MjggOTAzZWZiZjUxMWI0ZmVlMTc5NDlhYjI0ZmRmNGViOTgxZTk4ZmZkMiByZWxlYXNlMzAtbWFpbnQKKzczNDI5IDkwMDBhMDgxMTU5OTQxYmZlN2FmZWYyNWYyYTRlZGE1ZmUxMmFjMDEgcHkzaworNzM0MzAgNDY1OGZjYWFmYzczMjg4M2ZhOTczNzA4MjQxMDUyOGY3OWZjZWY1ZCBweTNrCis3MzQzMSBiNjM0ZDBlYzhkMzUxNTgzMDdlODBiNzEzZTc1ZWQwYmRkODlmMmJmIHB5M2sKKzczNDMyIDMxMTEwNzQ0M2NjMTM2YjBjM2I1MGU1N2ZiMTdlMTUyYzZkMjViZTMgbGVnYWN5LXRydW5rCis3MzQzMyBkOGFhNDg1NDg1YTZjZjhhYTBjNDczZDUxMDAwYjZmZTVjYzZhNzNiIGxlZ2FjeS10cnVuaworNzM0MzQgZTE4MzE4Zjk4NWVkMmUxY2VkNjZmMGE2MjBlNzlmN2QyMzAzNGQwZiBweTNrCis3MzQzNSAxYjNhMTkwMzdmNzY0MTM1ZDE0YjgyMWNhZTE3OGYwYTQ1NDNiZTcyIGxlZ2FjeS10cnVuaworNzM0MzYgNDM3M2YwZTRlYjIxMzJiOTFkZTk3OWE1ZDAxYzc5NjFkZDY5NTk0YiBsZWdhY3ktdHJ1bmsKKzczNDM3IGM3YWM3MGE5NDRiNTAxZDkxZjA3ZjdkNDg5MmRmMDIzZDBjZDMyMTcgcmVsZWFzZTI2LW1haW50Cis3MzQzOSA0YTUwZjBiZGM4MDYzYTdhNjk5NmE1MDYyYjk0MWM0ZjYxNDEyZWEwIGxlZ2FjeS10cnVuaworNzM0NDEgMjAzNDNhYTJhM2ViNzkzZDE0ZmQxNGI4ZjgwMGI5Y2YzYzgwY2ZiNyBsZWdhY3ktdHJ1bmsKKzczNDQyIGNiNWFlNDQwMWViZmRjNjkzMjkyMWM3OWE3NzdiYjllMzJhMzg4ODkgcmVsZWFzZTI2LW1haW50Cis3MzQ0MyA5ODE0ZDdmNjU5YTAwZWRmYTc3MWI5MjdiOWI5YjFjNjYyMTU0ZGEwIHB5M2sKKzczNDQ0IDI3N2ZkMDY0YjUzMDFhNjBhNmUwOGJjMjRiNTc1Mzc4NzA1Nzc0NGEgcmVsZWFzZTMwLW1haW50Cis3MzQ0NSAwNzZkYjRkZTAzN2FiMTAxZWQwZTdiZjFmZjdkMjhlZjFkYmNiM2MxIGxlZ2FjeS10cnVuaworNzM0NDYgYWQyYTU5NjAxMjZkYTIxZWQ2N2QxODVkNDZlOWQwZWEwYWViYWNlZCByZWxlYXNlMjYtbWFpbnQKKzczNDQ3IDQ1YzA1ZmRkOWIzMmE4ZjY1ZDg4ZjdlNTZhMDg2YWZhZTMyM2JmYTggbGVnYWN5LXRydW5rCis3MzQ0OCAzM2ZlZmRlNzkzYjBjYzRlZmFiMjI2NmJiZGI3MzZjZGM4NjhmMTk1IGxlZ2FjeS10cnVuaworNzM0NDkgZWVhNGQyMzdjMTZkNzUxMTEzOWNiMTJhZWVkNjVhNzVlYjFlMmEwNCBweTNrCis3MzQ1MCA4NjU1MDZmMzZlNTg4ZGRlNTMwMjU1MjBjNjhlYTU2Zjk1ZTM1ODk2IHB5M2sKKzczNDUxIDk4MmY3YmEwZTE0YTI3ZjZhMGZmY2JiYWVmMGNkYzA5ZjdlZGFhYzEgbGVnYWN5LXRydW5rCis3MzQ1MiAzOTAyZTRmNzRlZTI4MTdhMjFiNmQwM2U5OTc4NzBlNGI3M2ZlNTVlIHJlbGVhc2UyNi1tYWludAorNzM0NTMgZjAxOTVkYWFkZmZiYjI1OGY2OTRhZDg3YjNlNTU5ZDdiNmE1YWY5YyBweTNrCis3MzQ1NCAwOWU1Zjg4YzliZGJlZDQ2YWVjNGU5NGMwM2ZlNDRkY2FjZWVkMGZhIHB5M2sKKzczNDU1IGM1NjgyY2UyMzQ2NzU5YjhjYTAzYTNjMDE1ZGVhMmM0ZDI1MTIyNzIgcmVsZWFzZTMwLW1haW50Cis3MzQ1NiA2YjY3MDFiYTEyMTFlYTVmODgyZjc2Y2UxMWExMzAyZGEwOGFlMGUyIHB5M2sKKzczNDU3IDRjNmNkYmExYjBiYjNjYTAzNGM3NTc4MDMwYmUwYWI5ZDAxOTk5ZjEgbGVnYWN5LXRydW5rCis3MzQ1OCBjMzg3ZGE4MzdjNGEyM2ZmYmU3N2FhNWFjYzEyZGJkODdlNTc5YTZmIHB5M2sKKzczNDU5IGMxOTg2YmI0MzAwYjcyMmJmYWJhYWJmODBiNTM1ZDlmMWUwNDg5NmUgbGVnYWN5LXRydW5rCis3MzQ2MCA2ZjMwNTRhZmExYTBkOGFiMTBmOWI2MGU0YzFiNjk3NjEyZTYxMjg4IGxlZ2FjeS10cnVuaworNzM0NjEgYTVmMzFiMzBjN2MzY2NkMjljYmViNTAwMGNkODlkMmQyODA5NGJkYyBsZWdhY3ktdHJ1bmsKKzczNDYyIGIwY2IzY2JkZmM0N2FiOWI0YWE4MjA4NmI2M2MxYmY0ZTRlNjM3ZDcgbGVnYWN5LXRydW5rCis3MzQ2MyAyMmM3OTM0MWU1ODBjYTJjM2M1YjBjNDZlZDI3NmJkMWU5ODAwN2U2IGxlZ2FjeS10cnVuaworNzM0NjQgZDExZGJjZjg0M2RmOGMwNGNkZGU4NGMyZTk4YTQ1ZGMxNDhkZTdkYSBweTNrCis3MzQ2NSAzMzQ4OTExN2RhOWM1NjA5YzZkODUwNjgwNTY5OTk3MmM2Mjg2Nzk2IGxlZ2FjeS10cnVuaworNzM0NjYgZDRjNjZmZjEyOWMyYzgzMzA1ODcyNWIwYWJiNjI2MmI1NDM0ODM5ZSBweTNrCis3MzQ2NyBhZDZmNmMyNjE4N2Y5NDRhODkzYWUwMGViZjFkMDhiMTUxZTZjMTk1IHJlbGVhc2UyNi1tYWludAorNzM0NjggN2VkYzM3ODgzZThhMWQ2ZDNlMTVjOTZjNjkzNThhYzUxNjY5NTc1ZiByZWxlYXNlMzAtbWFpbnQKKzczNDY5IDMxNWQ3YWU0MmVhNzAyNTM1Mjc1NjJjMTlhZDIzM2VjYzUxMmY0YTEgcHkzaworNzM0NzAgYTc1ZTE4ZDgxNjZhYzJhZmZhMTFmM2Q1NmQxNDM0MGFhNGUyODI1MSBweTNrCis3MzQ3MSBhMjMwZjhkOWI0MTkyOGM1MmNmOGIyM2VmNmUwYmJhMjQ3ODY1NGVhIGxlZ2FjeS10cnVuaworNzM0NzIgMzcyMjNlZjRkNDcwZDQ3MTdkMDQ0MGY5NDcxZGY3YzVmM2RiNDYzNiBsZWdhY3ktdHJ1bmsKKzczNDczIDk4YTY2ZmEwMWUwYTRkMGE4NjA1MWI1MjBhNGU3NWM4YTY5ZDAxMjYgcHkzaworNzM0NzQgYjgxODkzZDM3ZTdhOWU5NTkwMGM4MjRjOWRlN2JiMGIzOTY2NWI5MCBweTNrCis3MzQ4MCBkY2M5NjJiNGQ4ZmY5MzBkZTBhMzU0ODlkMzRiY2RkYTRkZDYyNGQyIGxlZ2FjeS10cnVuaworNzM0ODEgZTI1YTRkMjdjMzhiNjA2NjA2ZjdjZmYxMjAxZDQ1MzM0NDJiZWEwYyByZWxlYXNlMjYtbWFpbnQKKzczNDgyIDVmYWZjYjMyZjA2MjI3Y2Q5ZjU3ODNhZTg2ZTY1OWIyYTc5ZDQ0YjcgcHkzaworNzM0ODUgZTdkMzhjNDA4MzYxOWIzY2RlM2UwYjZiN2MxZTAzOTUzMjA5ZmYyYyBsZWdhY3ktdHJ1bmsKKzczNDg2IDZkZDUwN2I5NTJjZjkwNDVlNWUwNGJmZWUzODc0NDc0MGU0ZmYyNTkgbGVnYWN5LXRydW5rCis3MzQ4NyAwNzI0OTg4OWE3NzNmMTg0NGUzNzBkYzEyODcwMDNmOGYwNzhkYTM1IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzQ4OCBlMWMyMzBmMDJmZWI5ZmRlY2U3OGMwZDkwMzgyZDA3ZGY3MTFiNTU2IGxlZ2FjeS10cnVuaworNzM0ODkgOTEzYzliZjk4ZDYwOTAxNmEwMWVjNjcwN2VkNzNkNDdlOGRiNjNjOCBsZWdhY3ktdHJ1bmsKKzczNDkwIDdkMjQ1YTQyM2U5NmM2N2M2Y2I0MGE5OTI0ODY5Mzg0NTkxOGE4YjEgbGVnYWN5LXRydW5rCis3MzQ5MSAwMWQxMDcwNWE3MWIxYTIxNGYzMmNmN2QwNGE1YjJhNDY4MWMxNGY1IHJlbGVhc2UyNi1tYWludAorNzM0OTIgM2U0NTQwYjdmZWM5ZjFhZTRmMGE1ODIyZTc1MWE2NjYxNjZmZTgxYiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzM0OTMgZjMyM2MyODBkZjU4NmE0OTJkYzUzNzUyNjdkNjM1MjZhNDdkYmExNSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzM0OTUgZDY2MjI3ODlhZDI3NTYyMGZhZGNlMDM2NWViOTgxZjVhNjE3ZWRiMiBsZWdhY3ktdHJ1bmsKKzczNDk2IDQwYWZiNjU1MzZkYTI2YjE3Y2M5ZTg2ZjA3ZjFmZmQwYjJiYTQ3YmQgbGVnYWN5LXRydW5rCis3MzQ5NyBhOTUwYTQ0MzRmOGJiZmE3NTgwNTVkMDBiZTQ4NDc2ZTE1MDQyYWQ2IHB5M2sKKzczNDk4IGQzYjQ0Y2U1NDNhZTQ0NTE1ZWI0ZjFkOTVlZTg5ZjBlZTM1NjUxMjcgcHkzaworNzM0OTkgMTFjMTZiZTRkMjFjMjEzY2UyMmNiNTYyOTU5ZTNjZmQ5NWJiZDI1NyBsZWdhY3ktdHJ1bmsKKzczNTAwIGU0OGJhOWNlODgzNjI0NWViNjViZDdmNjkxZjJlODJlM2E3MzBhMzggcHkzaworNzM1MDEgODcwMDA4OWVjY2Q0ZDNlMmM4MTE3NGM1NzUzNjEwYTYxNTAzMzJlMyBsZWdhY3ktdHJ1bmsKKzczNTAyIDkxNzQ5N2UyNTA5Y2Q2NmZiYjZkYTE4Y2JiNDM4NzRiMTBjNjZhNmMgbGVnYWN5LXRydW5rCis3MzUwMyBjNGZiMDcxMjE0N2ZkMmU1YWQ5NzgxOWM0YjJmN2RhZDFhOTg4NTE0IHB5M2sKKzczNTA1IGFjYzU4YjU5M2JiYzFiYmJlYmMyOTgwZGY5NzQ2ODQyZjkzMmRmNWQgcHkzaworNzM1MDYgYmM2MWQyMzFhNjUyNmJjOTY3YzVmZjNiN2UzOWQ1MmMxMzAwM2VlZiBweTNrCis3MzUwOSBlMzNiNjU2MjcxODhiZmMwYjMyNzM0MTE5NTJlZWRjMTE1NzM1N2NmIGxlZ2FjeS10cnVuaworNzM1MTAgNWNiNGU1MWE0NDA4NTEyN2NhYWJiMTk0YzFhNDQ0YjVjMTc0ZTQ4NiBweTNrCis3MzUxMSA4YWQ3ZmM4MDlmNjg0ZjliN2YxYzU0NTRmYmUzNWVhNmE4ZDlkNjVjIGxlZ2FjeS10cnVuaworNzM1MTMgMzg2OTIyYjYyOWMzOTA1NGUwOTJkZTJmMTU3YTJmMGUxY2M0OGM4ZSBsZWdhY3ktdHJ1bmsKKzczNTE0IDUxNGZjOTM2NmYyZGJiZjI0MmU4OWYxYjVkYTc2ODFiMDc4NWViOWQgbGVnYWN5LXRydW5rCis3MzUxNSAxNzMyYTU0YTAyNzI1ODgyYjJlZWYwZDI2YjJhN2RiOWI1OGQ5OTg1IHB5M2sKKzczNTE4IGRjMzgxN2E4ZjU1MmViNjhmNGFkNjBiMjZhM2E5Nzk3NGE0Y2YwNzUgbGVnYWN5LXRydW5rCis3MzUxOSA4MGQwZjIwMmI5ZWYyYTYzZjFiNDRjMTE0NzZkYWJhMjM5OWNiNGYwIGxlZ2FjeS10cnVuaworNzM1MjAgNDU1MDZiZTQ0NTE0NjYyMTlmMWM4MjE2MjU0OTI5MGI2ZmQ1MjRjNyBweTNrCis3MzUyNCBkZmQ5YjllNzFiMmViMmI2ZDg0MWFjODIzMTg2Y2MwOTlhM2MzMzQzIHJlbGVhc2UyNi1tYWludAorNzM1MjYgZGJmZTBhYmNkODkzYTI2M2ExMjdmM2UyOTYyNTgwNDNmZjg4ZWY4MiByZWxlYXNlMzAtbWFpbnQKKzczNTI5IGM5NDU5NGU2ZWRiNzMyODM5ZjFlNTJiZTg3OTJiNjcwMjc3NmI1ZmIgbGVnYWN5LXRydW5rCis3MzUzMCBlNzM3MTM1M2EzMDIwZWQxN2M0NWQzMzFlZDM5YjFiYmExM2M2MDMyIHJlbGVhc2UyNi1tYWludAorNzM1MzEgYjRkMGMwMjBlMzU3NzBmZTk0MTA3NjYzMDE3ZTA1YjhkY2ZhYmZiNCBweTNrCis3MzUzMiBmNjVhZGFkMzk4OGQ0YWE3MzA3Y2I0MjQ5NzBmODliMTBhNTU5NzI5IGxlZ2FjeS10cnVuaworNzM1MzMgYTZhMWE2MWY3MmJmODNlOWU0NDk2OGVhMDBlYjFjZWUwNjBlYjJmNCBweTNrCis3MzUzNCAwN2Y3MTFkODdmZmRiYWJjMWViZjc4MDkyZDRmNzZlMDI1MTM4MGUxIGxlZ2FjeS10cnVuaworNzM1MzUgZDE2Mjk0Njk3NjU4ZWNjYThhMTRjYTdiODdmYmViZGM3ZDhiYmYwZCBweTNrCis3MzUzNiBhZDYwNzM3OGE0ZWZkZDMyODU5OWM1OWY0YjgxYjJmMmE4ZWMyMGY4IGxlZ2FjeS10cnVuaworNzM1MzcgOTVlNTc5MWZjM2M5MmQ3ZGI3NTRkNGZmMzEzNTdjOTI4OTU3NDI4ZSBsZWdhY3ktdHJ1bmsKKzczNTM4IDdhMTMxNWE5OTJmMGI2ZWMwYTJhZDQ1Y2E3NjA3OThhN2ZmZGM5ZjcgcHkzaworNzM1MzkgY2IzZDMyMzQzOGQ5MjI1ZTM3MzgwMDBjY2E0ZjdmNjI0NWE5MjY4YiBweTNrCis3MzU0MCBiZGM5NzU5NGU1MDk4YThmNmQ5MWI5ZjU0MzQxNDVlZjE4ZjJlZDkzIGxlZ2FjeS10cnVuaworNzM1NDEgYjkyYjg5MmM0MzYwMzc1MjRkOTM5YWY4MWRjYTZmYTBkZjdiM2EyNSBweTNrCis3MzU0MiA2YTMxYzRlMGRmYzEyYTlhYWE4ODM5ZDViNTc1NzE2Y2M4NDhjN2ZjIHB5M2sKKzczNTQ0IDJhZWVkNGVjYWQ1Yjg3ZDg1NGU1MTQxZTcwZjkxZTQ1Njc3Njk4MDIgbGVnYWN5LXRydW5rCis3MzU0NSBmNmNiMjkzMjAyMmNhZjRkY2Q2OWQ1ZDIwZGEyMDllODI4NDFlMWU5IHB5M2sKKzczNTQ2IGEyMGEzNzdjYzMyN2E4MmRlNzkzMDBmOGMwNDM3OWQzYmE5MTBjNWUgbGVnYWN5LXRydW5rCis3MzU0NyA4YTk3NmNkNTdjYTY1MTE0MmMyYjUzN2ZiOWNiNWM3Y2NjOTAyNGIxIHB5M2sKKzczNTQ4IGYzMThhZGZlMjI2NGFlNmFhMmY2YWFmNmVmNDA3MzM5NzhhYTFiYTAgcHkzaworNzM1NDkgZjRkODRjNGYyODliZGE5ZGM1ZWY0MmQzYzZiZTViMWExOTU0ZDA3MiByZWxlYXNlMzAtbWFpbnQKKzczNTUxIDc5YTYzMGRhOGYwMGUwNjU5OWY2YTFiMWI4YzM3Y2NiYTA2NjIyYTYgcHkzaworNzM1NTIgNTViMzAzZDVkZDU1MTVlMThjOTJmNmZkMzdmYWQwOGJmYTBhYTdjYyBweTNrCis3MzU1NCAzZmUyZDFkMzdjZjFmMDYzNDIzZTgzNmQyYmRlMjBmZjFhNDliOTg5IGxlZ2FjeS10cnVuaworNzM1NTUgNDQ4Njk5MTU2ZGZlYTM1Yzk2N2VjODM5YWVlNDA0YTk2ZWQxOTUyMSBweTNrCis3MzU1NiBhMWE2ZTZkYmRkNmE3MmYwNjZhNzIwZThmZjI4Mjk5ZGNmYWE2NzJjIHB5M2sKKzczNTU3IDI3MzU4OTNjMzg3NDc0NDM0NzZkMzk5M2M5NDI1MDllZjJhN2RmNmEgbGVnYWN5LXRydW5rCis3MzU1OCBhOTM3ZjA0MDk1OTI4MWViYWFiMzQzNzU4ZjVjZThiNDVhNmIyYmY4IHB5M2sKKzczNTU5IDUyYzg2ODczNjgzZWFlOWNlOTliNGVhYWI3NmVjOGQxYTdkZWNjZDggcmVsZWFzZTI2LW1haW50Cis3MzU2MCBlNjkwYjczNmFmNDc4MTM3NmM5OWU1ZTFiYzVhZmI3NDUxYWVlYzkzIHB5M2sKKzczNTYxIGE1Nzk5MmE2M2NhYTA3ZTg4MWNjMmM3ZmFmNzFkMWI5OGI2NjViYTggcmVsZWFzZTI2LW1haW50Cis3MzU2MiBjZjljZWI2ZjVhM2E3YWY2NWJkNDdhNDI4ZDRhYmU1N2ExNmM1YjMwIHB5M2sKKzczNTYzIDg4ODJmOGZlODIzYzY0YjM1NzQ0OGMyMjlhMmJmMDRiOTJkOTI5ZjkgbGVnYWN5LXRydW5rCis3MzU2NCBhNjY2MTM0ZTZjMGMyMzRiMDk2ZjI5YzRjY2ZjMGZmNzk0Y2NiNTEyIGxlZ2FjeS10cnVuaworNzM1NjUgMGZmMGEzOTZmZGE4MzdiMzFhMjA1NGFhODMwNDJiYjAxZWJlMDRmYiBsZWdhY3ktdHJ1bmsKKzczNTY2IDAxNzBjOTYxZjI5MDU0YWY1M2I4N2U4OTI2MTlmMjQyN2E3ZDNlMDAgcHkzaworNzM1NjcgMjUzZGM3YmU1ZDFhYmI0YzE3OTVjZWM4NDVhMTZjMjgyNzgxODQzYyByZWxlYXNlMzAtbWFpbnQKKzczNTY4IGQwNDg3NzM5MWU4MDdjZmY2NjhmZTllNmY0OGI0YzkxMTA4YzIzZWMgcmVsZWFzZTI2LW1haW50Cis3MzU3MSAxNTBlM2ZlYmRmMTc4NWU0OGRkZTQxMGZkNjdlMDNhMWRiZWVkM2ZhIHB5M2sKKzczNTcyIDEyZTk2MGNjMzdkNjFlZDZkMDc3MTRiNWZiYTBjZDhmYWU1MzM1ZjMgcHkzaworNzM1NzMgYTY5YTAzMWFjMTQwMmRlZGU4YjFlZjgwMDk2NDM2YmNhNmQzNzFmMyBweTNrCis3MzU3NCA3YzllMWM5ZWM1ZGZmODIwYTNlMjYxY2Y5MmM0Yjk1ZTU2ODdkZDI0IHB5M2sKKzczNTc1IDRhY2NjOGEzZjlhZmU4NmZjZDQ2NmMyNjlkMGYyZWMxMDUxNjU1NjQgbGVnYWN5LXRydW5rCis3MzU3NiA4MzFiZWVlMjJhOWZjYWNhMTllMzg5YWQxMDU5NzM2ZWMzOWQyMjE2IGxlZ2FjeS10cnVuaworNzM1NzcgOWQwMGZkMDA4N2ZmOTE2NWRkOWZmOWZkZDZmOWQxNjlhNmI3YjExNiBsZWdhY3ktdHJ1bmsKKzczNTc4IGMzZDVkM2M4ZTQ5YmE4YjJkOTkzNDdlMWVmYjNkODdkYjE1MjYwNDMgcmVsZWFzZTI2LW1haW50Cis3MzU3OSAyNWQ4NWU0NDg2YWNmMTAzMzFkNDM2NWRmYzQ4NDJjOTNjZjUxODM0IHJlbGVhc2UzMS1tYWludAorNzM1ODAgYTI0ZjA5NjA2YjgzMjY5OGUyNmFmYjMzZDY0Mzk3NTUxZmQxNzY5MyBweTNrCis3MzU4MSA3N2ZiN2QzYzZkZGU3YTRmNTdjNzA0YmRmZjJiMTBhNTUxOTM2YWI5IHB5M2sKKzczNTgyIDk2MDMzNDQzNTg1NThjYzY1ZjczODZiODY4NGIwZjNhZjk5NWM4YWUgcHkzaworNzM1ODMgNWY0OWVhOGY1OTA4Y2ZkY2U0OGIxYjM0MWNmNGY4MTI2ZGQyZjU3NiByZWxlYXNlMzEtbWFpbnQKKzczNTg0IGI2NzYxNTk0NTY4MTU0NzZlNzliYTkyNzNiMjRkZWM5MDc5NWEyZjYgcmVsZWFzZTMxLW1haW50Cis3MzU4NSA0ZDQ3NmY2ZjFiZTNiMjE1ZGIxZDFkMjA4NzQzOGZkOGExMjY4MTE3IHB5M2sKKzczNTg2IDZkYzg4NGIyZGVhN2FhYzIzODYwODQyNWNjYzU3OTcwNTVmM2ExOTkgcmVsZWFzZTMxLW1haW50Cis3MzU4NyA0NmNmMmU1YTU3ZDRmN2IwOTBiNmU4N2FiZDRiY2E3ZTZjMTQ4OTgwIHJlbGVhc2UzMS1tYWludAorNzM1ODggZGM3NDU2Mzk3OGRmNDk1NGMzYTZlNjk1ZTMwYmU3MjI1MTgwNzkyMCByZWxlYXNlMzEtbWFpbnQKKzczNTg5IDE2NTFlMmYzNmFmMTJhZWFlZGYyMjhlMzNmM2Q5ZGEzYjI2YjI3NzEgcmVsZWFzZTMxLW1haW50Cis3MzU5MCAwNzBlMWUxNWM1MTYxZWI4ODNiNmYzMWRkOGJmNGZhMTE4ODUxZDhlIHB5M2sKKzczNTkxIDJkYTA1ZjgwZDM2NWFlOWY1NWY3NTMxN2VmZjNjZTU4ZDQ5NTIxMmYgcmVsZWFzZTMxLW1haW50Cis3MzU5MiAxZDNiZGRmYTg1MDkwY2M1NjBjNGY5ODdhMjM4NjVhMzg2ZjFiNTRlIHB5M2sKKzczNTkzIDU4ZjJiMjdjOTFhMTRjYjk3NWM5MDA3MjEzYTdjM2Q1ZDJlNzNlYWYgcHkzaworNzM1OTQgZTI1MjJlNGQyZGM4YmYyZjgyNDUyYTg1ZTgyZjMyODJiZTJjYTY2NyBweTNrCis3MzU5NSA1YjNkMGJmYzhkMjg5MWJjNDEwZGQyYTE2OWYyNGRhY2Q5MzI2ZTkxIGxlZ2FjeS10cnVuaworNzM1OTYgMWY2MDU4M2I2Mjg3Y2YxY2FjZTIwZGE0OThlZTFhNTc5NzRhYmIwOSBsZWdhY3ktdHJ1bmsKKzczNTk3IDNhYWYyZTA2NWRiMDU0MDE4MDM3MDVlZDRiZmEzZmQyZjkwMzBkZjggcHkzaworNzM1OTggZjRlZWEwZDIxNjVkYWRjZjFlOGExMTRlMzJhMmE3NzI3MWMyNTMzOCBsZWdhY3ktdHJ1bmsKKzczNTk5IDFmNGY0ZDllYzc5MzA3YWRhMWFlZDNmMTRlMGNjY2ZhODBkYjdiODYgcmVsZWFzZTI2LW1haW50Cis3MzYwMCBjNTM1NzgzNmMwNzlkNzZmZWY4YjgyMDdiNTE1MGQ0MzQyZDFiMjU4IHB5M2sKKzczNjAxIGFjNzhlZWViNDZjMjk1ZjBiNjViOWNiODc2M2U4Y2Q0ZjYwYjU0NGMgcmVsZWFzZTMwLW1haW50Cis3MzYwMiAxMGEyMjljOGJlYWRiOTc2ZWYxYzFiNzE4N2U5MGNmMDIwZTlkNzEzIHJlbGVhc2UzMS1tYWludAorNzM2MDMgNTU4ZWQ3MmQ0ZDMzYmJjMzg2MDE2NTlhYjYzMGJhNTNiNGJlYWUyNiBsZWdhY3ktdHJ1bmsKKzczNjA0IGM0MWZlMTMzZDg4NzMzMDUyZWFlNjliNzE5YjlmNjExM2JlY2Y4YjYgcHkzaworNzM2MDUgMDhkMDU4NTYyMTRhMzU4MWNiN2FlNmUxMzI2NTVlMWRmZDE5YWU2YSBsZWdhY3ktdHJ1bmsKKzczNjA2IDExN2U4NWNiZjE2OWI0YjgwNGIxYzA0YjVkODAwNDlkMDlkMThkODkgbGVnYWN5LXRydW5rCis3MzYwNyA1NGVkMjc5MWJiMTViOGM3MmUwNTMxOTllMTVlMDAxZDA4Y2MwZDc4IHB5M2sKKzczNjA4IGVlMjUzZWI2ZjA4YzA0OTIwZmIyMjVjNmZiOTJkNjdiN2IyM2I3MzEgcmVsZWFzZTMxLW1haW50Cis3MzYwOSA2ZThkNjMzNDRkM2UzMGQ5N2M4MTBhNmFkMzNjZTkyYjBkZTE5NmIyIHB5M2sKKzczNjEwIDRhMjI1ZGU4OTIzMzYyN2M4NTFlMjMyMjMzYjA3MjM3NzdhNmU0MGYgcmVsZWFzZTMxLW1haW50Cis3MzYxMSA1NDRjNWJhZDE2MDc3ZmFkZGUwOWZiZTVjMDUzYTcwZGI2NTI2OWUxIHB5M2sKKzczNjEyIDI2MDJiNTZhZDAyZGM2ODIwNzI5MTU3ODk0ODI1NDk5ZTA5MjhkYzkgcHkzaworNzM2MTMgYjU1YTc4YjM5YmQ1ZWQ2ZmJjOWUyMzQ2YzZhZTBmZjY2Yjc0MTAwMCBweTNrCis3MzYxNCBkZTg2NmY0N2QzOGE4NTdkNzg0MmRiYTBlYWFiNmUxY2NiZjg5NmZhIGxlZ2FjeS10cnVuaworNzM2MTUgMzY4NDc4ODU5ZmUzYWFmOWMyNjMzM2RmMzM5OGUzOGVhYmNmZmI1MyBsZWdhY3ktdHJ1bmsKKzczNjE2IGFhOTUwZjc5NjJmZGM2YTUzNmZlMzJkNzE4MTJiNGIzODIyZDE4ZGUgcHkzaworNzM2MTcgMGMzMTllMDNkOWExMGE5ZWVjYWQyYTNjNjhkYzFlMDNlNjBhYzE1NSBweTNrCis3MzYxOCBjOWU2NWU0OTM2NWRjMzhiZDY3ODkwNDRlNTE1NjUwYTJmNTY5N2JlIHB5M2sKKzczNjE5IGNiNjAwZTAzNDM3ZDY0MGUxZTE4ODUzZDRmZjJkNzY2MDJjYmY1OTkgcmVsZWFzZTMxLW1haW50Cis3MzYyMCA2NTQ0MDc3NDZiZTBhOGYzN2E3OGZiMDkxNzYxOGFkYTk2MWY5NDE3IHB5M2sKKzczNjIxIDkxMDliNDIyYzEzOGZjNGJlYzIyMjBmZDMzZTJmYjJmYTZhMmJiY2EgcHkzaworNzM2MjIgMjIyODkxNmFiNDc4OGY5YWU5ZWJiZDI5NzUwNjM1MmQxZjI5NmQ3YyBweTNrCis3MzYyMyAxZTU1ODlhMTdjZjA3ZWQ5NWU5NDNkYjk0N2QzNGYzMzU1ZTZkNzM4IHB5M2sKKzczNjI0IDdjMjg3ZDMwMDIzYzM1NTkwMGEyMmM3ODAwYTNhOTY5NGJkZGExMTIgcHkzaworNzM2MjUgZjk0YzA5YWE0NDQ0M2JhZmRlYTE5OTYwM2VhYzIwOTQ2NzE5MzA5YiByZWxlYXNlMzEtbWFpbnQKKzczNjI2IDA3MDRmMTViNDY4MjcxYjYwOWNhNGE0YTAwMWMyNDM3NTc1MDI5MTQgcHkzaworNzM2MjcgNDExODg0ZDAxZjhiMGY5NmFkNGQ4MTExODlhNGZiYTNhZWY0MmFkZiBsZWdhY3ktdHJ1bmsKKzczNjI4IDRkYjRhZjBjZjgyYzViOGEwNmNmYjU2MmNmZjBkMDk4NmE3MzllMjQgcHkzaworNzM2MjkgNWM3MDJhNGQ3NWU0NDVkNTJmNmQ3Y2YzMDhmNmNjZjA2MjhkYjM5MSBweTNrCis3MzYzMiA2NzZlNzRjMjBjNmVhM2Q2NTg2YjQ3YjRlMWRmNGQ2Y2ExYmQzNzkzIHB5M2sKKzczNjMzIDBjYzIxYzk3NTFmMTQ3NWQ1NGUwOGU3ZTkxNjAzNDhjNjA1Yjg0MTIgcmVsZWFzZTMxLW1haW50Cis3MzYzNCBkYjkxYTA0NTMwNTBjMjhkMTU0ZDQ2ZGQ1NmUyNjVkMWJkZTI2YzgzIHJlbGVhc2UzMC1tYWludAorNzM2MzUgYjMyZDEzNmYzZTIwMDRlNzllNGQ2ZGFiYmEyMWZmZWRkMDVlYzBmMyBweTNrCis3MzYzNiAxYTk4NDcyMzQwZmEwZDg4YWUzMTE4YzBiMWNjYWI3YjJjZWE5NGE4IHB5M2sKKzczNjM3IGUzMDI1YTRjMGFkNzg1MzNmYTUyNTk4Y2JjZGRmYjYzNGVhNzEwOGUgcmVsZWFzZTMxLW1haW50Cis3MzYzOCBmZmQ3Y2Y1YzcyODVmODlkM2EwZjJmZmRkYjBhNmFmY2ZiYjcwMzcwIGxlZ2FjeS10cnVuaworNzM2MzkgNTJjNDhkZWRlNWY3N2Y1YjYwNTg4OGZkODhjMzQ1OTQ2YjI0YzZmOCBweTNrCis3MzY0MCBhYjkxZmE1ZDBjNWNjMjIyNTU5ZTU1MmI2NzM4ZWEzMjRiMWM4ZTZlIHB5M2sKKzczNjQxIGQ5NGIzZWQ1ZDUzNjVjNDc0MzE4OTZmODM3OTQ2NDYxZTRjOWMzMzcgcmVsZWFzZTMxLW1haW50Cis3MzY0MiBhNTExZmU1MTY2ZmQ3NzhkYWI2NjcwMDIwOTQ3OWM0ZWI5ZTM5ZDdiIHB5M2sKKzczNjQzIGQ3NDk2Y2MxMGRmZWVlYTA3MTlkMDYxOWU0MDk1NWM4YmYyMTc4NmMgcmVsZWFzZTMxLW1haW50Cis3MzY0NCAwZjdkYzU3MDRjNTkwNjU5NGVhNmVkYjg5MTVkY2I1MTdhYmQ4MGUzIHJlbGVhc2UzMC1tYWludAorNzM2NDUgZjQ3Y2UxMWUwNzJiNjE1NTc4NWZhMjc4ODEyNzBiMDlmZjc4ZTMyYSBweTNrCis3MzY0NiA2NmNjNTA4OTA4OTRjMTNlYjE5NjllNzY1MDhmNDE1ZjQxNTRiNTQwIHB5M2sKKzczNjQ3IDU2M2NjNGRjYzcwMzI5MGI3MGE5MmFkMGU0ZjQ4NDBkMmM0YjE3ZmQgcHkzaworNzM2NDggNTI4NDBiZTQyNTMwZjc2MzA3ZGM0MjhjZDliNWIzOTJmNjc5ZmM4MCBweTNrCis3MzY0OSBhMzdiYjU5ZDRiNTNhOTI4NmVjN2Y0NjNhZTNjMmYwZmJkN2QxZmFiIHB5M2sKKzczNjUwIDA5YzQ0YzkzMzk0MmI0NDg4YTYwOTM0MGJkYTdkMTNjMjgyYjVlYmYgcHkzaworNzM2NTEgNDM2OTgyMjQxNGMzYWJiYzA3MzA0NGRkYWM0NDc5YWI3NjdiYjI4ZiBweTNrCis3MzY1MiAwMDgwMDI4ZjVjYTAwMTIzZWYxMjQwMjE5MDc1ZDMyYjIxYzI1NGRiIHJlbGVhc2UzMC1tYWludAorNzM2NTMgYTkyNTJiODg0N2YwN2Q3NjYzMWQxNTQ2MTdhMDBhYjIyYTIyMjY4NCBsZWdhY3ktdHJ1bmsKKzczNjU0IGRjZjcxMjFlZGIyZTg1ZDAwZGUwMTYyODk0ZDJjYWJlNWZhYjNlODQgcmVsZWFzZTI2LW1haW50Cis3MzY1NSBmZGMyMTBhOGEzMjhlMjVjZWExNDEzZjhkNTEwMTQyNWMzMmU4NTcyIHB5M2sKKzczNjU2IDNmNDY2OGI0OWYxMWUzOWJkY2E5YjM3ZWY1YTY4M2ZmMmFkNTFkYjYgcHkzaworNzM2NTcgNTIwZjEzMTBhZTYxMzkwMjQ4ZDNlY2ZkYjYwMWQ2ODdmMmZhNzc1ZSBweTNrCis3MzY1OCA1MjdiYWRlMzA0M2IyM2E3N2I3ZDYxMDUzZDExZmVkODM1MmUyOTA1IHB5M2sKKzczNjU5IGQ1MTAxN2RjYmEyNDdmODk1MWZhYmEzNjkwODBkNDVkNDhiZDI3N2UgcmVsZWFzZTMxLW1haW50Cis3MzY2MCBmM2RhZmZkNGNiMjhjNjI4ZTJmOWY1ODVmYzdlMTc0MWFiMzRiNmQxIGxlZ2FjeS10cnVuaworNzM2NjEgOTgyOWI0MjM5OWU1NmQ5YjJhZDQwNGMzYTdlZDU0ZjI4OWJmMzdlZSBweTNrCis3MzY2MiA1MDg4MDY0ZDYxNzA2NTg2ZjY4YWM1MWNmYzA5OTJkNmNjNDVhZDMzIHJlbGVhc2UzMS1tYWludAorNzM2NjMgNzA0ODk0ODY0NmIwODdlZjAzYmE0NTFlYWRhZTI5YTg5ODZlMzlmMSBweTNrCis3MzY2NCBjNDVlMzMxMjM4YWU3OTZhZWIwYWY4ZjM3MGRjNmJkYjAzMjc1YzUwIHB5M2sKKzczNjY1IDE2NGQ2NGIzOWFjMDZjMDE4N2JmOTZiN2MzMWM5MDg2NDI1MGE5ODUgbGVnYWN5LXRydW5rCis3MzY2NiA3ZWNjMDc1ZDE3MWY3YTIxYzVkNDIwNjM1YjIwMTY0OWFhNmMyMTY5IHB5M2sKKzczNjY3IDM4MGFmOWU4MGMyZThlZmQ4YmY2Yjk5YjhjNmJkYWZlZmZhOWFiM2YgcmVsZWFzZTMxLW1haW50Cis3MzY2OSBhNjY0YTQ0NDNhMzk0ODQ1MGFkYjRlZDRmNjA1NjEzYjE5NjJhMzc2IGxlZ2FjeS10cnVuaworNzM2NzAgNjVhZGJhOTVkN2UwZTczZjJjN2VlN2YzOTY1ZGU2OGFiY2M0OTU2ZCByZWxlYXNlMjYtbWFpbnQKKzczNjcxIDBkMDU1YTA2MmNjZTFlMDIxODM3Mzc1ZmY1ZDU2OGQxOGE0MjYzYzQgcHkzaworNzM2NzIgMjk3ZmRlYWY1ODIyMjUwMDkzMDI5MzA2NDA4MWU3Y2Y1M2RhYjgzNSByZWxlYXNlMzEtbWFpbnQKKzczNjczIGRiNmQyY2UzODMwYWY2ZDZhNDVjYjY0MDQzMTlmODAyMzk2NmY0NTIgcHkzaworNzM2NzQgOTQ2M2ExMDI1MTVmM2QzOTkyYzNkZmZkOTA0OTJmNjRhNTU3MzE1YiByZWxlYXNlMzEtbWFpbnQKKzczNjc1IDRlMzU1NjQ1M2ZiY2NiNjhkZjA5ODk4MDdiOWE5MzE5NmU3OTQ3MmQgbGVnYWN5LXRydW5rCis3MzY3NiBhNzlmNzRkNmY1YjM5NTA4NmNhMzIzOWM2ZTg1MTUyMzAzZWU4ZWE3IHB5M2sKKzczNjc3IDZlN2ExNmE2NDQyZjZjODQzYjZlYTk5ZjA0NDhlMWMxNzkzZTZkZjggbGVnYWN5LXRydW5rCis3MzY3OCA4ZjIzYmQxMDkyZmMyNGYwMzZiOTE4MmMyZjU5YjY3YTVhODc5Njg5IHB5M2sKKzczNjc5IDFiOGEwMWRjN2Y0NWE0YzhkMjQwNTJlMTVlMDg0YTliMmU5NTcxNzYgbGVnYWN5LXRydW5rCis3MzY4MCA2Mjk2NzQ0NDhkODRmYmJmMmQ5YzI0MjAxNTAxYTg0YzVhMmY5YTk5IHB5M2sKKzczNjgxIDIxMGE1MWVmZGM4MjY3MGQ5MGRlNGM2ODVjYTZmZTg1NjVmNjU1MzMgbGVnYWN5LXRydW5rCis3MzY4MiBhMjc1ODNjODM2YjIyOGYzMzJkNDM0YTQ2ZTcxZTkzMWNlNGUxODNjIHJlbGVhc2UyNi1tYWludAorNzM2ODMgZTBkMjdiNzZhMmU4ZDE0NGUzMTgzYWM0OTA0NzVkNTQzMzAwOWY2NSBsZWdhY3ktdHJ1bmsKKzczNjg0IDc5YzJlZDYxYTAyNTNkMzk5NGQxODk2MmE2MDc5NDhkNzEyODZjN2IgcHkzaworNzM2ODUgNTEzOWU4YjBmMjFjNzMyMzgxZDg4OTlhZWRlNmNiMTkwYmJmZmZiMCByZWxlYXNlMzEtbWFpbnQKKzczNjg2IDcwZWRhMDJjN2E5OGUzMWJkODM0YzQ3ZWQ4YzQ1N2VhY2I0NjMwOGUgbGVnYWN5LXRydW5rCis3MzY4NyBlNzhiOTliMDQ4YmFhODdjNzhjY2YyZmQ2Mjg2MzY0OTA1NDFiZTRlIHB5M2sKKzczNjg4IDNkY2M4ZmM0MzU0ZWZiZTkyNTY5MjZiZjY4NGI3OGE4YWY3MjY4ZGQgbGVnYWN5LXRydW5rCis3MzY4OSAzOTE1ZGVkMmQ2MGYxZmE2Zjc5ZjE1ODA3NGE4NmRlMWZlNjc0MzdiIHB5M2sKKzczNjkwIDY4MTAyZTdlMWViN2QzMzY3YmQ4ZDlkMTcyNTYxNzdlYzY2NjRlNDMgcmVsZWFzZTI2LW1haW50Cis3MzY5MSA0ODdkNmYwMTg0MmE5M2ZkYzMxYmRhZTcwY2JhOWNkMTUwOWE0ZmI0IHJlbGVhc2UzMC1tYWludAorNzM2OTIgNTE0Y2FlNjJjY2RhNWYwNzM2ZTQ1NDk1MWE5MGZlODdjNDYzMGZjZSByZWxlYXNlMzEtbWFpbnQKKzczNjkzIDU5MTc4NWNlZGNjOGE1ZTdjZDJmZTMxZWE1OTFiMjc1MzEyNzk1NmYgbGVnYWN5LXRydW5rCis3MzY5NCAzZDU0Y2JmZDM4MDk5ZWQ0OGZjYzZkNTBiNGZjOWEzOGM5ZDcyMTY4IGxlZ2FjeS10cnVuaworNzM2OTUgN2UzOTIwMjhhMDllZGEwMmZjYTg2OTllNTQzZGM5YmFhZDRlNjQ2NyBweTNrCis3MzY5NiA5MzIwMzNjMzA0ZWY3MjA1NDk3NzkyMDg3ZWEzNjljMzFhZGJlM2EyIHJlbGVhc2UzMS1tYWludAorNzM2OTcgZDJiMWY1ZWYyYWUzZDJkZWEwM2JhNjg2Mjk1ZDQzM2M4OTNmNmYxNCBsZWdhY3ktdHJ1bmsKKzczNjk4IDAxZTEyNWQzMTlkNDgxODAzZDA2Yzc3MDMxOTQ0ODZkZWZkMTQ2MTcgcHkzaworNzM2OTkgMjlmYWM4ODQ4NDg5ZmQ2NmJiZDc3ZDAyOTQxYjNlNGYzODBjZDZhMyByZWxlYXNlMzEtbWFpbnQKKzczNzAwIGQzZDZjY2M5YWJiNDEzNzg0ZWU0YTQzZTdkZGFkODVlZTQwOGNhMzMgcHkzaworNzM3MDEgYzA2NWYzM2Q5YzljZjliNmFhMDcwMTQ0ZjExMTJmYzk1YjZlYjY4NiBsZWdhY3ktdHJ1bmsKKzczNzAyIDViNjYzOTA3NWM0NzljZThmYzBjNWM0YTViZmNlMmExZmU5MmIyMTAgcHkzaworNzM3MDMgMzJmNzExMjBlYTU1MDQ0ZjgzMjFlZmYwYjM3ODUyZjcxYTI1ODI2NyByZWxlYXNlMzEtbWFpbnQKKzczNzA0IDBhZTEyMDJlNTM2MjBlNTk0Yzg0N2Y2OTUzNDcyOGM1ZWFiOWJiN2YgbGVnYWN5LXRydW5rCis3MzcwNSA0M2ZlY2MzOTQzN2IzMmNlMzFjMmNiNGM1MGU0NmU5MjcwOTdlNTgzIGxlZ2FjeS10cnVuaworNzM3MDYgMDhiNzYyOTM0NDg4YTI1ODVjZjFhODhhOTY2YjE5M2MxNWU4YmQ5ZSBsZWdhY3ktdHJ1bmsKKzczNzA3IDg0OGM4NmY0YmVkNjA2MGJlZWUxYWJkMjRiMGI3MmFlZWY0MGRlZjQgbGVnYWN5LXRydW5rCis3MzcwOCA3MGFkZjBmNjhmYmNhMWNlNzc4ZjNkYzAxMDFkOWRlM2RkNjNjOGQ3IGxlZ2FjeS10cnVuaworNzM3MTAgMmZhZjJmYTJhNDIzNTU3M2E1YTI2OWFmMmVlZDk1ZTkwNTM0NDY4OSBsZWdhY3ktdHJ1bmsKKzczNzExIDk5ZDUyZDhhZDAyNjZlZjZhNDBjYTEzMDUzMTI1ZWNhMjcyY2Y4MmYgcHkzaworNzM3MTIgNGY5MGRkYzZjM2I2NGFjODE4ODA3YjNiOGJkNjUzODBkMzQ3ZDM3MSBsZWdhY3ktdHJ1bmsKKzczNzEzIDM4MzY5OTg0NWM5OWIxYjkzNzE3MDYzMjE2ZmM5MjdmNGNkMWM5ZjUgbGVnYWN5LXRydW5rCis3MzcxNCA2NzY4YjIzNTBjNTc2YTY2ZDIyZDM3YmEyOGE5ZGYyMjZmZTczYTk0IGxlZ2FjeS10cnVuaworNzM3MTUgYWRmNjZiNTIwMjJkYWQ1ODVhNTRiZDZmNDFmNWMwNjFjMDg2MWRjMiBweTNrCis3MzcxNiAzZTAwMWVlYjgzODFiOTM2MWEzNDU2MGUyMGNmNjQ1NGQzMzUxNGMxIHB5M2sKKzczNzE3IGU4OGNkNDJmZjI4MmRiYzZjZWIyZTJhOGUxNTNhYzUyZTIyNmVhOGEgbGVnYWN5LXRydW5rCis3MzcxOCBjNDBkNmZlZDZiNmJhNTVlMmNmZmM5YTU5MmI1OWY5Mjg4ZWQzMTZjIHB5M2sKKzczNzE5IGRkNDcwYjcxMjkwMTQ3MzU2ZTYwYTJhOTMzNzNmODkyYjA2NTQxOTMgcHkzaworNzM3MjAgNmQ1MDc1ZWNjMTRjMGEzMzk2NWY2Nzc1Mzk0NjFiZDFhZTUzZTU1ZCBsZWdhY3ktdHJ1bmsKKzczNzIxIDFjNzY5MmQyNTA5ZmEwMTBkNWUxNGQwN2QzZjBiZDczZWU2MmY4ZmYgcHkzaworNzM3MjMgZjJiNjViZDY3ZGYyNWRhOTdhMmEzNGM0MGYyMGQ2OTVhNzcxN2E3NyBweTNrCis3MzcyNCBlZDJhMzM2MjA0ZDZhYzNhYTE3ZmU5MDZlOGJmYjg1MDJmYTg4ZGFmIHB5M2sKKzczNzI1IDU1MDJmMjU1YzI3Y2VhNTQxMzM2MTBhOWE4ZjY5MjMyNjAwZTI2M2QgbGVnYWN5LXRydW5rCis3MzcyNiA3NjU0ZmE4NTdiMDNjMmFiNjdiOWQ0OTk2YzQ0ODAyMDI0OGQ0YmY5IHJlbGVhc2UzMS1tYWludAorNzM3MjcgOTIzMGMzYTgwZGNhZDM4ZTViMmNjNjVlN2YwN2FmNjdkODUzMDQ2NSBweTNrCis3MzcyOCA3MmFkMTE5N2YwZmY5N2E4M2ZjNDc1ZTYzNzdmNmVmMDE2MjZiM2JmIHJlbGVhc2UzMS1tYWludAorNzM3MjkgNGI2Mjc5NjFiNDQ3MzYzOWY5NGZmYTJiMzZjYjBhZThkZmZlN2YyOSBweTNrCis3MzczMCBhMDdmZDQ3ZGY3NmIzMjY1ZWFlY2M5OGNiOTRmYjAzYjBlZjc0ODBmIHB5M2sKKzczNzMxIGUzZmEyZGRiYjNhMzE1MDkwMTBjZjM1NjliY2E1MzVmOGYyYTg3NzQgcHkzaworNzM3MzIgN2U0MjgzMzYyZDI3N2ZhYWMzZTA2ZWQ1ZWEwOTk5ZTI3ZGYwYzUwNyBweTNrCis3MzczMyBlODA4NTk0NjFkZThjZDBjNGFiOTRlZmZkZjZjY2YzYzE4MjIzZDM5IHB5M2sKKzczNzM0IGIxNjhkY2NlZTYwMjY0NGFhMjc2NjcwODhmNzA5ZWIwZjc0YmQ1ZGQgcHkzaworNzM3MzUgYzI0MjcwZjU0NWI4ZmE2ZmI2ZWE3MGU2MTg0ZTYwYTM2MmIzNDE4ZCBweTNrCis3MzczNiA0M2YyMjVjN2I3N2VjNDczNTg1MGZhOTE3YmRhZGMyMzE1YzY4MTIzIHB5M2sKKzczNzM3IDljZDc5ZGVlNWJjZTRiZWZlOTEzYWM5ZjgwOGM1Y2IxOGMwN2M3ZmUgcHkzaworNzM3MzggZTBlZDYyN2VhNjc5NDg1NDYzMzUyYTBmMDY5OGFjNjk1MDMxMTcxOSBsZWdhY3ktdHJ1bmsKKzczNzM5IGYwZWVhZGRhZjgzYTRhOGZhMGFkNTViOGE0N2JiOGU0MzE4OTE5MTQgcHkzaworNzM3NDAgMTUxYjdkNTM2YjVjNDViYjIzNDVmZDc5ZmZlNzhkMmFkODc3NTM0MSBweTNrCis3Mzc0MiAzNjZjOGE0ZTVhNDZhMGExYzcxYjJkZTk0ZjIwOTI0Mzk1MzVlMWRiIHB5M2sKKzczNzQ0IDc0ZmM0NzZmZTcyODMzZDBmMTU0OGY5YzZhZGVmN2U5NWRiODJiZmYgbGVnYWN5LXRydW5rCis3Mzc0NiBmMmE1MjZjYzNmMmFmMjY3NTA3NDExMThmZTU4N2VlOTc5NGE3NzNhIHB5M2sKKzczNzQ3IDY1MTgxMTRmYjA2MzgxZjk1NzJiMGNjOGU3MjYwYTI0ZWMwZGUwOGUgcHkzaworNzM3NDggMGM2ZmQ1NTYxNDlkYjJmNjc2Nzg2ZDQ2MzA5ODEwYTc2NTQzMDdlMCByZWxlYXNlMzEtbWFpbnQKKzczNzQ5IGNjNDNlOTIzZWY5NjE3ZGVjNWExMGM3Y2JkMGUzMWU3ZmJjYjY2MTggcHkzaworNzM3NTAgNjIxMGRlZGQyY2Y3OTU0OTNhYzJlMjI4OTk2NWFmNmI4ZGQ3MzBlOSBsZWdhY3ktdHJ1bmsKKzczNzU2IDliZGRiYTZlNzY0ZTZkNDU1YzE1NTdiYzdjM2UzMzRiNTZjOTM0ZTYgbGVnYWN5LXRydW5rCis3Mzc1NyA0NjYzMTYzZTY0NDk0MmUyYjk0NjlmZWE1MDgzYjIxNmExMzY0OTFmIGxlZ2FjeS10cnVuaworNzM3NTggNWM4OWI5MjczZTYxMTJmZTdmY2ZiNzZjNDgxNmZlMjM1MTQyNDQ3ZSByZWxlYXNlMjYtbWFpbnQKKzczNzU5IGNhNTNmODZmZTY3ZGIyYzhlMjFkMTA5ODBlYWEzN2MzMjYzNzljYmQgcHkzaworNzM3NjAgNmNjMTg1ZjQyYmY2NmFiNTdjZjQxYmMzODc2ZmY2Nzk0NDdhYzM4ZSByZWxlYXNlMzAtbWFpbnQKKzczNzYxIDNiZGU4MWU3YzlmNDAzY2U4NjFhMGFjMWI1NDUxMDEyMTk1NzkyZTEgcmVsZWFzZTMxLW1haW50Cis3Mzc2MiA1ZDc0OWJkZGE5NzljYWQzYTcwNzEzNzkwN2EwOWZhNGZlMTlmNmJjIGxlZ2FjeS10cnVuaworNzM3NjMgMmE4ZGFmYzg0NTI4Yzc4ZTcwZTIyNTM5YWE3ZTNmNTVlOGUwYzIwNyByZWxlYXNlMjYtbWFpbnQKKzczNzY0IDdkNTE0OTE1NTE1ZTVjNmQwM2VlMjJjMDAwNzc2NTRjMWM2MmQyMjQgcHkzaworNzM3NjUgZGE2OTgwNzk5NjM5OTA4ZjRhZGUxMjBkYTg1OTk3NzRlOWFkNDdkZSByZWxlYXNlMzAtbWFpbnQKKzczNzY2IDFkNDhjNzAxZjA3YzYxNDZmZmNlNzE4NzNiOWNlNmNiZDZjOTM1MDYgcmVsZWFzZTMxLW1haW50Cis3Mzc2NyBlZGNmZTNiOGY3MzYxNjcxOTQ1Mzc2NzNjMjI3ZmE0NDc5NmM5M2I5IGxlZ2FjeS10cnVuaworNzM3NjggZjE0OWY1N2Y3N2Q2ZmU4MDA3ODIzMTkwMGYzMWIyNTA3NjcxNDRhOCBweTNrCis3Mzc2OSBlNWM4MjkwYzc5NDliZDYwMGJmZjYyNjExODY2YmM0OGE0Zjg3ZTI0IHJlbGVhc2UzMS1tYWludAorNzM3NzAgNzRjMGE3ODExNGFlNGUyMzBkYTJlOGI0ZjJhM2UxNzA4YWFjZDEzOCByZWxlYXNlMjYtbWFpbnQKKzczNzczIDU2YzY2NGI5MTU0NWI4MTgxM2ZiYjVjODUwNWE5Y2Q0Zjk4ZjI3MzMgbGVnYWN5LXRydW5rCis3Mzc3NCBmZWE1NzE2NGJkNzkxY2VkNDUyZTVmMzI3NGIwNWQ3MTEwYjZkMDhiIGxlZ2FjeS10cnVuaworNzM3NzUgN2RjMGQyYzRiNTIwMjMwNmIyZWIxY2FiYWNkOTI4ZGVhOGU0NTEwZCByZWxlYXNlMjYtbWFpbnQKKzczNzc2IDA2NTNjMWEwY2IxZTEyNjRkNWUzOGY5NWMxZjA3MzI4MDEzNjhkODMgbGVnYWN5LXRydW5rCis3Mzc3NyAxNzgzODgzZTc2ZDc3OTkzMmFmZjdmMDQ5MWNkMzZlMWQ0NzI2MDk3IHB5M2sKKzczNzc4IGVhNDRhMTY1YjljZTU0NmQyMWE5ZGNlYzk2M2VlNjZiMmM3OTdjZWYgbGVnYWN5LXRydW5rCis3Mzc3OSBmNjVkNjI0NzM0NjViMTU0YzU3MDEzNmI0NjhhYTNmYzEyZmI2ZjBlIHJlbGVhc2UyNi1tYWludAorNzM3ODAgNDY2YTcxZmM2MjVjMWU2ZDMxODJlNDEyMzdiODIwM2M5NGQ3ZTA3NyBweTNrCis3Mzc4MSBmYjU0MmVkOTFlN2Y1NWI4MDdmYWU2MWUzNjZmZWZjZDFlNGI0MDM5IGxlZ2FjeS10cnVuaworNzM3ODIgMjYyNTVmMjlhN2U0OWQzNzcyOWQ3OWUxYWVjYzEyOGI2NmQyNWQ0ZiBweTNrCis3Mzc4MyBjYzZiOTFjM2Q3MTliNjljYjc3YjBmNDA0OTA2Y2M0Y2NlNmNhNDAyIHB5M2sKKzczNzg0IGVhOTMzYzI0YWQxMDMzZDg2MTM0NzMwYzc5YzkzMDI4YThhN2YyODYgcHkzaworNzM3ODUgNjVlNDFiY2JjMjVkNGQwNmM0MDBmMzQzZmUxZGEzMTMwMmM3OTdmNiByZWxlYXNlMzEtbWFpbnQKKzczNzg2IDdiNzU4ZjgwODMzMDViMzMwMjc4NjJiNGEwYTExNzNiOWY4MDMyMWIgbGVnYWN5LXRydW5rCis3Mzc4OCA1MjJhZDllZWQ1NThlNzhhYmYwZWNjMjgxYzRiYWEwNDQ1YWM0OGI0IHB5M2sKKzczNzg5IDU2YTI3NjM5NmUxNWY5Yzc5NTNhMzNjY2EzMTM4ZjBhNTcwMDUxMmYgcmVsZWFzZTMxLW1haW50Cis3Mzc5MCA4NTY3N2EyYzc4NTVkMjIxNDM0ZDRiMGE1MzAxYmJjZTg3NTJiYTQzIGxlZ2FjeS10cnVuaworNzM3OTEgZWVlYjM1ZjI4ODEyY2U1ZTg0YzBiOTg2YjhiYTgyZGVkZDJkY2I0NCByZWxlYXNlMjYtbWFpbnQKKzczNzkyIDg5Njg2NzczYTYxOWE3NzBjZDhmMWUwNDAxODY3ZDBkZjM4N2IwYTQgcHkzaworNzM3OTMgZDhjODNjYzBkM2ZkOGM1NGM3YzU3MjdhZGM4MmEwNjI4NzczMGY2NSByZWxlYXNlMzEtbWFpbnQKKzczODAxIGE1MDE1NzNjMjNmMmE1Nzg2NjE4N2NiNzFhZjYxMTY5NDkwYzc3NTMgbGVnYWN5LXRydW5rCis3MzgwMiA0MjdmYjYzM2M0Y2NlYWY2NjYzMTk3ZjQ1ZmYxNzg0NzA0ZTE4NmNiIHJlbGVhc2UyNi1tYWludAorNzM4MDMgNDZhOWIxOGExYTE3NmUxMTMyMTNlYWM0YjE0MWRhODQxOTZiMTg5ZiBweTNrCis3MzgwNCA4Nzc2M2M5N2Y2OGVhM2YwNGEwOTA4OTcwYTRhNDZmNjRjMDUxYmQ2IHJlbGVhc2UzMS1tYWludAorNzM4MDUgODU0YzA5NDhiMDhkMDQxOGQ2ZTFlNjc2OGVkNDgxZjUwZmRmMzdmYSBweTNrCis3MzgwNyA1OWM2NmFkZTNjMjY4MjJhYTg4ZjlmMDJkMTVkZDBmZTU4MDk4NTNhIHB5M2sKKzczODA4IGZjNmFkZmZmOWE5ZWZkNTI3MTEzYWVmOTlhMDJjNjU0NDUwMzMwYjEgcmVsZWFzZTMxLW1haW50Cis3MzgwOSAxYzUyOTIxOGJhOTY0NDQwMDIzOGY5NjNmMWEwODQ0N2NmOGFiYmEyIHB5M2sKKzczODEwIDNhMjE0NjIyYzk0M2NhNGE4ZDAwZDA0NzM4YjE5Mjk1Nzk4OTE3ZjQgcmVsZWFzZTMxLW1haW50Cis3MzgxMiBmNmZhNWZiMDEwYmY3ZmNhZDY5YjE2MjRmNTJhODc3ZjI1Yjc4MmIzIGxlZ2FjeS10cnVuaworNzM4MTMgMGE0NmUwZTNmYzA3NDg1M2Q4MmM1ZTUwNjRhNDI3ZGFiOWI0NGQ5YSByZWxlYXNlMjYtbWFpbnQKKzczODE0IDdiMGU3OTdmNmIyYzg2ZWMzMGQzZTZiNjE3MTgxNDUwZjdjODZjMmQgbGVnYWN5LXRydW5rCis3MzgxNSBiMmM3NzY4NTdkYzRjODczZmY1OWVmYzdmYzg5ZTUzOTkyZDJiZDUzIGxlZ2FjeS10cnVuaworNzM4MTYgODg0MmY0ZTJmYjFiNzRkYjA2OGRmMDdmZTU5ODRmNzdjYWY2NGVjYiByZWxlYXNlMjYtbWFpbnQKKzczODE3IGRmYjk4NWE4ZGU2ZjY1Yzk2M2VlNGM1N2ExYzBlOWZmNzA2ZThiYWYgcHkzaworNzM4MTggOWM5ZmU5YWFmYmE2ZDZkMDhkZGZmZDA0ZTc3ZTdkNGNjYzlkZGEzNiBsZWdhY3ktdHJ1bmsKKzczODE5IDAxYWY3YjUyZTBkYjU5ZTM1MmYxYzhlMGQ1ZDdlZWRiY2QzMTQ1ODMgbGVnYWN5LXRydW5rCis3MzgyMCBjN2RhMGRjNmViMGM2YzQ0MGIyYTIxYTVkMTlkMjU5NzBiNzQzZmUyIHB5M2sKKzczODIxIDhhN2MyMDY2YTliMmU2MTRkNTIzMzk0NjNhNDA1OGVlZTk4NDk4OWUgbGVnYWN5LXRydW5rCis3MzgyMiA0NjE3ODgzYWMxZjMzZmNlYzQwZmI3YThkYjcyZjViOWU2Y2U2MDM2IGxlZ2FjeS10cnVuaworNzM4MjMgYzJmNDI3MGJlMzYyOTJkNTRmN2U1MzlkNmM5NWI1MWM3OTQzMjJkYiBweTNrCis3MzgyNCAwZTM5MWJmM2ViOWRmOWNhYjhhODY2MjU1YTkxMTBlNGRhMGJiYTkxIGxlZ2FjeS10cnVuaworNzM4MjUgOTgwOGUzOGZkZTcyYjZiMzJiYmJlNjFhZjQ2ZDU0MDU3YzY0NWIyNyBsZWdhY3ktdHJ1bmsKKzczODI2IDU0MGZkNDYxNjNkMWM5YmU0YzViMDFiYzA0NzNkYWI1YTUzYmU5ZTEgbGVnYWN5LXRydW5rCis3MzgyNyA1MmFhYTc3YTVkYmZjN2ZjYTQ5MWZhYmQ4OTFlMGFmOWQxOTNkYzM5IGxlZ2FjeS10cnVuaworNzM4MjggMDhiNThjYmVjZTc5ZWVkZjk2OGIzZDBiNTMwMGZkMTQ2NmI1Y2FiYyBweTNrCis3MzgyOSAwNDkxMjI3ZTU0MGVjZTU5ZjZmYmNlODA3MjEzMDc4Y2I1N2M1OTE4IHJlbGVhc2UzMS1tYWludAorNzM4MzAgODNjZTMzMmEyODM0ZjliZjg0N2RkNzQzZTZjYzg4YTRiMWU1ZThmYyByZWxlYXNlMzEtbWFpbnQKKzczODMxIGY4ODI2OTZmZDEzNGY3NzE3NzRiYjMzYmIzMzg3YWZmZDRhYjZmOTkgcmVsZWFzZTI2LW1haW50Cis3MzgzMiAwNmIzNjBhMzNkNTcxMWUzMTBmMTkyNmQ0YTY1YjE1MGJhNGQyMmM5IHB5M2sKKzczODMzIDdiOWFkOWFhYTkwMjRjMTRmNmY1YjQ0MzQ1OWNiMTFhMjcyMWRhZmMgcHkzaworNzM4MzQgZDExZDg5OWFhYjFkODBlNGFiMjc1OGZlZmQ1YWI5MzYwYTgzNjZlNSBsZWdhY3ktdHJ1bmsKKzczODM1IDdkZDhkYmQyNzAzMzM4M2VhMWI3MjRiMTgwYzg5NDQxNTNkNGVhNzEgcHkzaworNzM4MzYgODY4ZmYzN2Y1YTgwMTI0NzY3ODFlOWI1MDRhZjhkY2ZlNzEwMmI3ZSByZWxlYXNlMzEtbWFpbnQKKzczODM3IDFkZWE3ZWQ2ODY3ZDdjN2QwODUwMmNhMjA5Y2ZlMTY0ZjRlYTIwNzggcmVsZWFzZTI2LW1haW50Cis3MzgzOCA3ODk4N2JjZjFhYmZiMDgzNTRjMjQyODhhYmYxYzM4MDFhNjA5NmY2IHB5M2sKKzczODM5IDdmZjE0MDVjY2I2NGJiNTFjNGUxOWMxOTgyMzcyNTUyMmE4NDFlZTQgbGVnYWN5LXRydW5rCis3Mzg0MSA0NGZjZGJiNjIwMzhiMTE1ZjNlOTcxZmZlOWY2NGNlZWUwMDRjMTJmIGxlZ2FjeS10cnVuaworNzM4NDMgZjc0MmMwODc1Mjg4N2QzODhkMDAzMDU0NDQ0OTQ0YmU0ZWY3MDM2OCBweTNrCis3Mzg0NCA0ZmY0YWE4ZDY1ODMyOTkyMDc2ODMwODNkZDYxNjJkNDBlODJmYjRlIHB5M2sKKzczODQ1IGMyMzM2MTViMzRhYWI4ZTUwNTdhMmU4OGNkZGNiNDAwMTdiYjUzNjIgcHkzaworNzM4NDYgNDY2Y2E5NmJlMTgyNDAwOWEwZDRiN2EzM2EwZmFkYTdhOGJmZDExMCBsZWdhY3ktdHJ1bmsKKzczODQ3IDc3ZWJlYWNjMTA3YTgwNjBlOWYxMjJiNTJlYWU5YzAzOWE4MTQ2YWUgbGVnYWN5LXRydW5rCis3Mzg1MCA4ZTgxNTc0NDVhNTU2NTcyNGYyNzY2MWUxZTRlZDJiMzUxOTcyZGM2IHB5M2sKKzczODUxIGFiNDM0ZjBkY2IxNWQ5ODRlOWU2MzMzZTM2OTk5OGQ4MWZkOTM1M2UgcHkzaworNzM4NTIgYTc2YjM0Y2ZjODk3YzEwMjZmN2JmMDBjZjkyNDNiMTE3NWE0ZGEzMCBweTNrCis3Mzg1MyBhNDBhMjI2NjFlNTA0ODdkMmE3Mzg3OTkzNTQwZWJhYzA4NGE2MGQ3IHB5M2sKKzczODU0IGM2ZjEzOTM0ZjRjNjY5YjQwM2U0ODJkM2MzYWJjMzU3MGE0OTAzMjMgbGVnYWN5LXRydW5rCis3Mzg1NSAxMGE2Y2EyYzBjY2IyNzI3YTI1ODZmYThmNDcxZTNhZDYzNzkxODQ5IHB5M2sKKzczODU2IDI2ZjYwZmQ0N2FkM2ZhNGQ0MjQ4MjdhMjNkMDIzZmEwYTMxNGU2ZmQgcHkzaworNzM4NTcgODVkYjZhNTQzYjNlNDRiYWYwZTYxNjhjMjNjZjE2YThlNTM5NmY3MyBweTNrCis3Mzg1OCAxZmMzN2ZlY2FmOGYzM2Y3NzczMGViODhhMzkyMjIwZjIxZjQyN2FiIGxlZ2FjeS10cnVuaworNzM4NTkgMjQ0NDZkYzg3ZjczZTdkZjA3ZTJmZGI2NTdhMWUxMzA1MWFhNjg4ZSByZWxlYXNlMjYtbWFpbnQKKzczODYwIDA1MjJlNTcxY2U3NDk0ZmE3Zjc1YjBiNmQ2YWJiNzM0MzM2NGVjOWUgcHkzaworNzM4NjIgN2JiNzc1OGU2ZDY0YjhmOTBmZjI1N2NiNzY4ZjczZTNjNWE1NzJjYSBweTNrCis3Mzg2MyA0MjYzOTRkYmJjZWUyMmY4NzExZGU2OWJkYjNlNmQzYmQzOWNhZWZiIGxlZ2FjeS10cnVuaworNzM4NjQgYjQ2YWJjMmYyYTFmYmFjYWVjMDNlOTI5OTljNmZjMTA2YTA2OWM0NSBsZWdhY3ktdHJ1bmsKKzczODY1IGQxZWRhNzBiMzgzZTllZWJkMzlhMGUyMThiZTBhMTQyNGE3MWRhM2YgcmVsZWFzZTI2LW1haW50Cis3Mzg2NiBjMjNhOGYxY2ZhYjhmYWNhMWJjMTA2M2U4YjQ4MTAxOWFjMGE5MDA2IHB5M2sKKzczODY3IDQ5ZmYyMzQyMDkxOWI0MWVjMGI4Nzk0MDI0NmZiMDllODM5ODQyMjUgcmVsZWFzZTMxLW1haW50Cis3Mzg2OCA3NDljZjA2Y2QwNzA5OWE2MGUzZmI1MDAyOGQwY2QxOGMzNWEwNGE1IHB5M2sKKzczODY5IDU5Y2Y1ZjgwOGMyNGE5OTllMzc1MGM4ZGNhYjY4OTQzMWFiMTdkYmUgcmVsZWFzZTMxLW1haW50Cis3Mzg3MCBlOWZjODk0N2M0OWE1NTYzOGE5ZWE0YzNlMzI2YzljZGQ0YWZkMGVjIGxlZ2FjeS10cnVuaworNzM4NzEgMzhkNmU0ZTUxYWYwODk1MWIwZTk2Zjg5NjA3OWU1MGRjZDZiYWQ2OCBsZWdhY3ktdHJ1bmsKKzczODcyIDFjZWY3ZTcxNjI0NzhiOGY4NmZkZmVmOWFjZGRjNGEwNzVmYWZlNzEgcHkzaworNzM4NzMgMzA2MzcxNGZmOWYzMWMwZmFiNmExODE3YTJmODYwZGE2ZDA4ZmMwMCBsZWdhY3ktdHJ1bmsKKzczODc0IDYzOGVhMTM0YWE4MmQ3MmEyYWMyMGJhZjIxOGUwZjRmOWU4MjBiZmUgcHkzaworNzM4NzUgZGU1OGY2MTM4NmMzYjQ5ZTU1ZmMzZGM5YWE0ZThiMjI3NjI1MDUzZiByZWxlYXNlMjYtbWFpbnQKKzczODc2IDQxNjgxMzhjMzcxZTVkMzUxMDRmN2I3NTYwNTc1MjRmMGQ5NGYwYmQgcmVsZWFzZTMxLW1haW50Cis3Mzg3NyA0ZWE4MTMwZWUwOWU4NGI0NDQxNjkxN2RhMTJjMWQ2YzE1MDI4NTk1IGxlZ2FjeS10cnVuaworNzM4NzggODEwMDJjNzYwMGJkNWQzMjAxOWVjODYxMjk5MDhiNTNjODFmMzk4NyBweTNrCis3Mzg3OSBhZGZkNmI3M2QzNjQ3NDFiNGQ4OTc5YTEwNjRmNDM4YTNmNDFkZWJkIGxlZ2FjeS10cnVuaworNzM4ODAgODgwYjUwYmNhMWIxOTIyZjdkMmI0ZTFlYjQ1MzA5Yjg2ZGIzYjlmNCBsZWdhY3ktdHJ1bmsKKzczODgxIDk5ZTMwYWY0MTE2OWYwNWE3NTYxNTJiZjkzMGFmZjhkNmNiNjVlOGYgcmVsZWFzZTI2LW1haW50Cis3Mzg4MiBlZTE1NmVjNWVmYmY5NmQwMGQ1NDYwZWZhOTdjYTAwMDlhYmY0ZWU1IHB5M2sKKzczODgzIDFmNDhjYmQ0MzIyNmQyNmVkNTYxZjc0ODE1YjE4MWFiODU1OWJkZWQgcmVsZWFzZTMxLW1haW50Cis3Mzg4NCA3ZmEyMWJkYzM0OGI0ZjZhMWI3YTgyMmY1N2I1MTQ3ODMzYTU5Yjk0IGxlZ2FjeS10cnVuaworNzM4ODUgMWZkODM5YjgzMzBhMWI2NDUyYTA3Yzg0ZjAxNmYzYTUwNjFkMmFhNSByZWxlYXNlMjYtbWFpbnQKKzczODg2IGRlNmM0OGQ3M2I3MTZlZWFmM2JjYTdjYzBhNTMyMTlhM2I3ZDUxZjUgcHkzaworNzM4ODcgZmEwODBjNGY1MzlhOWVhOThiOWVhNDA2NGY3OTk3OTZiOWQyN2Q5NSByZWxlYXNlMjYtbWFpbnQKKzczODg4IDg5N2JkZWQ4MDAyMDZhNmY1NTIzZDIxOTBjNWFjMWJmMDAwYTNkODAgbGVnYWN5LXRydW5rCis3Mzg4OSA4YTg0NGE1YjE2ZGJiZjk5MzIzNDQwYmM4MzMzNmJlM2RmMTRjOTMyIHJlbGVhc2UyNi1tYWludAorNzM4OTAgODYwYTA2OWQxMjZjOWJhZjYwYWExMDVmMWM1OTVlNGZjMGFkMWY5MyBweTNrCis3Mzg5MSBiM2ZiNWU2YjdlODJkNjNmYmM2N2E3ZTFjMjg5ZGYyYzA2NmQzNDZkIGxlZ2FjeS10cnVuaworNzM4OTIgZjAyZTQ3MTIxOGI3NzkxZDQwOWQ1M2Q3MWJhYzMwZWY1NGY1N2M1NCByZWxlYXNlMjYtbWFpbnQKKzczODkzIDhiZWYzYTI2N2UxZWU4NGYzZjdhNmUzYzdlNGI4YTZlZTJkYzdhYmYgcHkzaworNzM4OTQgZDliMTliMzdmODFhZWNiODMxYWYwZjk4MzE1NGFjNDllODc4NTliMSBweTNrCis3Mzg5NSAyN2I1MTYyNjMyNjkxNmU3NDc2YTE0MmFjZjgwYzA3YzZhOWFkM2JiIGxlZ2FjeS10cnVuaworNzM4OTYgZDYxYzRkY2Y2MTg5OGRiYjcyNWQ5MTI2MDVhMDEwMDljN2VhOWEzNyBweTNrCis3Mzg5NyBkNTk5MjU0YzIwM2JjNjk3YjZiYWJjYjAyY2VkZTdkYzUwZWRlOTRiIHJlbGVhc2UzMS1tYWludAorNzM4OTggYmEwNDU5ZjJjMGNiNDAwNWNkZGIwNDA2ZDgyNDA0OWRkZTJlNWY5YyByZWxlYXNlMjYtbWFpbnQKKzczODk5IGJlNzM2YjQ5MGFiMmM4YmNkNTkyYWFjYjMyZjJjYzI3YjlkZTU3N2YgbGVnYWN5LXRydW5rCis3MzkwMCA0NjhhNDBhZGY1NmY1ZTNmNDU1MDcxZGYyY2IxZTdlM2E3OWFhMDQzIGxlZ2FjeS10cnVuaworNzM5MDEgYzkyYjkzNzc1NTY5MGI5NDRlODY5YTE2MjEwN2FiMmU2YjQzMWY3NiBsZWdhY3ktdHJ1bmsKKzczOTAyIDlhZmVhZTBiYWJmOWM0ZjY1OGZiM2UzYjcyMmQ1NGYyNDk0MWIxNzAgcmVsZWFzZTI2LW1haW50Cis3MzkwMyAxM2M1Y2Y0ODk3OTdjNDViNmJhZDg4YjZhNGQzNTA1MmQyYzJkODVhIHB5M2sKKzczOTA0IDgyOTA1MTkxOTllYzJmYjdhMDllYzdkOGE4NmMxODAyNGQxMDMxOGMgcmVsZWFzZTMxLW1haW50Cis3MzkwNSA0ZjFiMmE0NTdlODNjZTEzNGEzNjBlZTZjYzYwOTI4MmJhZjhkODY1IGxlZ2FjeS10cnVuaworNzM5MDYgMGYwNjViNDhhY2Y5NTEyOWQyNzc3ZTJkMmE3YWMxNzcyNzMzNDA5YyBsZWdhY3ktdHJ1bmsKKzczOTA3IDVmNDUzNTIyNTgxOWJlZTE0OTUzMzc5OTAzZWY1NTUwOGUyNzYzZjYgbGVnYWN5LXRydW5rCis3MzkwOCA1ZDliMzIzMDE4MTU0MjM4OGYwYzYwNTY3ZWUyODQ5NmJiZjJiMzc4IGxlZ2FjeS10cnVuaworNzM5MDkgZGEyYzE0N2U5MjlkMGExZDBiMWIwNjgxMzgwMTgzMjllMjZmOWM4NyBweTNrCis3MzkxMCA1YTI4YTk1ZGVjMTkzMDVlN2ViMGZmNjE0YmNkOTkwMGQ2Zjc3YWFlIHJlbGVhc2UyNi1tYWludAorNzM5MTEgOGE3N2VkZTRlMTc1YThjNjRkMmY3ZTA1YzFlNGY4MWYwMzJlNzI5NCBweTNrCis3MzkxMiA0YWUxZTk2ZTkzNzc0YzA3ZWU0NDFlYTU0Y2FhMmJmM2I3OTk3MjNkIHJlbGVhc2UyNi1tYWludAorNzM5MTMgYzQ3ZWY0ZTEwN2RmOTA4YzcxOGU5YjUxNGZiZDFhZGEzMDZmNjg5NyBweTNrCis3MzkxNCBiNTNlNDJlNTBjNDE1MzJjOGM5MDQzMGFhODc5NmRkODk0MWI0MWQ3IHJlbGVhc2UyNi1tYWludAorNzM5MTUgMzg5OGQ1MjBmMTA3ZmY0MDFkN2QwYmJkZTM0NDY5ODM2NGU3MDMzMyByZWxlYXNlMzEtbWFpbnQKKzczOTE2IDU2MDkzNTJmZWExMjBlNTlkMjE4ZTUwZjY1NGI0ZjVhMmUzYWZkYjggbGVnYWN5LXRydW5rCis3MzkxNyBlODlmYWFhZmEzZWVhMjQ5OWUyYzdkMDIxZDNhYWZlOGM0ZmRmMDU5IHB5M2sKKzczOTE4IDBiMmFiYTdhYzFmYWY2MDA0ZDhhOTViN2RjMjFiMWU5MzA2NWE0MDMgcHkzaworNzM5MTkgYWVkYzIyMGNjOWJmODkxMTIyOWJmZWFkNDcyYTE0MTNjY2M4ZDVmZSBweTNrCis3MzkyMCAwMTEzN2UzYjllYmU4ZjhkNWFjZDA1OWEyMTcwZWM4YWFhYmMzNjJjIHJlbGVhc2UzMS1tYWludAorNzM5MjEgODc3YmQ3ZDUwZDg5N2Y0ZTZmZmE4MmIwZjliODNiYmJhNzczY2ZmNCBsZWdhY3ktdHJ1bmsKKzczOTIyIDZmMGU1OWZhYjYyY2ZmMjU3ZWE3N2FmNTIyNjU3NTMxNTgxNDY5MmQgcmVsZWFzZTI2LW1haW50Cis3MzkyMyA2MjY0MTMyNzI0NjQ5YmE0NjU2NDMyNjg4ZTVkN2MyMmFhYWJkNzNlIHB5M2sKKzczOTI0IGQwYjNhZjU2NWVhYTVhOTBlYWQ0Yjk1ZDRhNTM0ZmViNTY4NmRmMmMgcmVsZWFzZTMxLW1haW50Cis3MzkyNSBlNTNkMDMxZTU0ZDQ3NWM0MDY3MGUwNDE3ODdmOGEzMzIzMThjMzI1IGxlZ2FjeS10cnVuaworNzM5MjYgMDNiODY2MDZjZTBhMmE3OGJjNWU1OTFlMDllMzFmMzYzOWZhZWFmMiBsZWdhY3ktdHJ1bmsKKzczOTI3IDliNWQyODE4ZTJkMGU3MDI3NzljODQxZjg0NWJhYzVlNjJhYTEwODIgcmVsZWFzZTI2LW1haW50Cis3MzkyOCAxMzkzNDdiMDBjMThmNzljMDE2OTY5ZWQxY2Y4MzY4ZmM3NGNlZGEyIHB5M2sKKzczOTI5IDJmZDc0YzUwMjYwMDM2OTExMWRmZTAyYjFhMzY5ZmEyZGQ3OGNlOGQgcmVsZWFzZTMxLW1haW50Cis3MzkzMCAxNGNkMTlmZWFmMjBkODU5MGU1ZDZkN2NiZTJhZGRhOTdhYTMwMzFkIGxlZ2FjeS10cnVuaworNzM5MzEgY2RkZDUxNjRkYjAzY2E3NGUwYjNhZGEwNDJjNjI3NTM2ZmY0YTNhYiBsZWdhY3ktdHJ1bmsKKzczOTMyIGIxYzYzNzJhODA5MmMzZWI4NzFjNzk1YWEyNmEwZTIzNTE3NzRmODEgbGVnYWN5LXRydW5rCis3MzkzMyAyMjE3MThlNzU3YmFmYWQwNWJmZWU1MmJkMzlmMzc5ZDhlNjA5MjE4IGxlZ2FjeS10cnVuaworNzM5MzQgZmVhYWE3Y2MwMmQxMjJjZjAwYmUxOWI5Yzk0YTcyN2U3OTk1YTY1NSBweTNrCis3MzkzNSBlNTM2YTNiM2E4ZDBlNWIwYTczMTI1ZjJhZjM2NjExYzRkMTJkYmU3IHJlbGVhc2UzMS1tYWludAorNzM5MzYgZTIwMGVlOWNjYzRiZWQ2MTI2YmYyZGQ2Y2U2M2EzYTVkYjhjNTkyZCBweTNrCis3MzkzNyBhY2FhMGM4N2Q0MDFmMzU5M2MzYzdkMTAzOTkwMTRhYzczODljYWE5IGxlZ2FjeS10cnVuaworNzM5MzggN2IyNDY5NDVmYzhjYjBkYjU2ZjYyZDBlNmY0ZjQ4NzJjMmRhZjU0OSBsZWdhY3ktdHJ1bmsKKzczOTM5IGIyOGRhZGQyMGQ5YjdiNDllZDA2YzY5ODBkOWFjNjBhYTI0ZDJmNWIgbGVnYWN5LXRydW5rCis3Mzk0MCA1OWMzNGE5MWM1NGQ5ZmQwYzQ5ODdiYjUxM2VlMzQ2ZDFlMmI1ZDQ3IGxlZ2FjeS10cnVuaworNzM5NDEgODQxYTFlNjhiNGVkY2NjYjIxODRmYmNiMjFjNWYzZmMzOThlMDk3MSBweTNrCis3Mzk0MiA2N2Y1ZTAxZDVhNmE3MWUyNTc4NzZkZmUwNWM1YjE2ODVjNjdlZDg0IHB5M2sKKzczOTQzIDgwNjYxNjA4ZDRlMjA1N2NjZGM0NzQ3ZDEyMThiZDEzNWU1MDFkOWMgcHkzaworNzM5NDQgNGM1ZTA3NWY1NDczZGE1NjNjZDllYTQ2NTY3MjJhZjdkYmI5OTJlNSBsZWdhY3ktdHJ1bmsKKzczOTQ1IGYzYmYwODMyOWYwNzk2NmI1Y2UwOWY0MmZmMjA1NjAyZGY2YmZhNzcgbGVnYWN5LXRydW5rCis3Mzk0NiA4MjJhMDJiNzFiYmViMmMzN2I3YjljOGI0NjE0MDg1YTdmYjIzOGQxIGxlZ2FjeS10cnVuaworNzM5NDcgYzY0ZjlkYzNjNmE0OTg1YjM5NDVkNDc5NzQwMjNkMzRhNDM3YjQ3NCByZWxlYXNlMjYtbWFpbnQKKzczOTQ4IDU3YjM1OTFmMGNiMjMyYTQ3ZjI1ODdhOTcwZjMxNzE1ZGY2ZWRkOWUgcHkzaworNzM5NDkgNTZjY2VmMzQyMGU3ODEzMzM2MDliOTE1NjMwZjg3M2E4YjcxOGU0NCByZWxlYXNlMzEtbWFpbnQKKzczOTUwIGQyN2ZkYzcwMzc5YzI2YTEwOWFjNjZlZWZmZWI2MzFmNjk0ZjBiZGUgcHkzaworNzM5NTEgMGI1MGU2ODQxYTgxYmRiZThlODk2YTVjNDliYTA3NWQ5MDAxMDVjNCBsZWdhY3ktdHJ1bmsKKzczOTUyIDg2ODIwMjI1YTRkNWFmYjc2MmRlOWFmZDAzNjI5OWQ4MDA4NTAyNjYgbGVnYWN5LXRydW5rCis3Mzk1MyBhMWI3OTc3OGYyMmUzZTI0Y2EzMmM1NTljOGYxYTAyZjVhNzIwMTdhIHJlbGVhc2UyNi1tYWludAorNzM5NTQgM2RhZGYzNDUzZDA1NTA5ZDY4YzRlMzU4NDA2MjZkMTRkYTc3MGRiOCBsZWdhY3ktdHJ1bmsKKzczOTU1IDkzYjQ4YWI5MGVhZDBlNWM1ZjZhYTZiYzc2MmYzMWMyZmNmOGIyZWQgcmVsZWFzZTI2LW1haW50Cis3Mzk1NiAxMDI4YTk5MWI2OGVjM2U2YzZjZGFmMzgyMDk3ZTA0NWYxYmE0OTU5IHB5M2sKKzczOTYxIDBjODEyODcwYTk3NWVjMGI4Njk2N2YxZTlkNGRlNDVhOTFkNzRjMDEgcHkzaworNzM5NjIgMjYzMGMwNzViNTdjYjM1N2NhYTM5MjRjMDA4OGU0MGI2MjE4OTRlOSBsZWdhY3ktdHJ1bmsKKzczOTYzIDQ5M2M3Zjk1MGEyYjliNWJhODE1ZGQ1OTVmYzM1Y2EzOTJjZmUwMTUgbGVnYWN5LXRydW5rCis3Mzk3MCA4NDhhNWFjOTI0YjliNTAwOGIwMDVmNDg4YzUxMzUyYmNlODZhYmM5IGxlZ2FjeS10cnVuaworNzM5NzEgMmEzOThlZGViMDhkOTUzYzQzNjI0Njc2ZjkwMzI3YjBlYTE1ZTBlZSByZWxlYXNlMjYtbWFpbnQKKzczOTc1IGQwZjIyNTg2NWJlNjU2M2NiODMwYjBkMmEwNDRkNGRhNjcyNTA2MjMgcHkzaworNzM5NzYgMzE4NzYzZWNjNGIzMDQzYTYxMTk2ZTE4MjdiN2U5N2VjZWM3MzYxNSByZWxlYXNlMzEtbWFpbnQKKzczOTc4IDU3ZTlmMmQzNjdhODFkMzViZDdiMmQwYTYwYTI2MWFmYWU5MzI0MGYgcHkzaworNzM5NzkgYWNkYTY5MmE4NDdmY2U5ZTk1Mjc3NjViNjEwM2FiYzU5ZDQ1NDE0YyBsZWdhY3ktdHJ1bmsKKzczOTgwIGYzYjljNTBhN2FhZDVjMDBmMGQ1YjMyNDc0OGIxYzA0NWMwOTkyZjUgcHkzaworNzM5ODIgODhhY2MxMGNhYTZlMTFmYmNlOWFmN2Y0OTVjMTQ1ZmVmOGYyYWI2MyByZWxlYXNlMzEtbWFpbnQKKzczOTgzIDViZTA0ZTIzMTdlOGQxMmE4YmUyODI1NzJlZTc3ZDIwYWEwZGVhMGYgcHkzaworNzM5ODUgMDEwYTQ4ZTk0MjIzNzIyN2YwNzMzMzE1ZTIxMTMxNjdkYmE1NzEyYSBsZWdhY3ktdHJ1bmsKKzczOTg2IGQwNzZlNjVhOTBkNmMxOTM4NWE5NWZlNzljZWQ4NWIzZTU0ZTg5MmEgbGVnYWN5LXRydW5rCis3Mzk4NyAyYjY3Y2I5MjViYjE5ZTg2OTlmNDk2ZTQwOGZhY2Q0MTI4YmNhNTFkIHB5M2sKKzczOTg4IDk1MDdlNGI5Yjk4ODU4ODUyOWQ3NTM5NmI5MjBjYTYwYWNkM2EzNzUgbGVnYWN5LXRydW5rCis3Mzk4OSBiNzRlMzkyNjI4MTUxM2EyMDkyMDE2ZGQ0ZWY2NmE2ZjM2NDkwZjkwIGxlZ2FjeS10cnVuaworNzM5OTAgYjFkMzRkZmZmZTJkZTAxZWM4MGQ1MTQzNWY1MDU4MzU5OGVkNDdhOSBsZWdhY3ktdHJ1bmsKKzczOTkxIGUxNzJhODg2NTBjZjlhZTU3MTZkZGJkMWU3ZmViNjRmYmU1Mzk1YmIgbGVnYWN5LXRydW5rCis3Mzk5MiBiZDc0ZTJjOTczNDg5YTg2ZjFkZDg3YzQzNzRlMDQyMjA4MTEwOTdkIHB5M2sKKzczOTkzIDRkMmI1MzI1ZWU0OGU4NWRjMjJiOTI4ZGM0NWRhZjgzMzczZTcxOWMgcHkzaworNzM5OTQgZGFhYmNiZjI0MTVkZDBhMzg5MzllMTJmNGMxZWIxZjhkN2UyZWM1NCBsZWdhY3ktdHJ1bmsKKzczOTk1IDMyZDQ4NjYyYWE1ZjM2MzA1Mjg2ZTM0YmI1YzM0ZDYyN2U4YTU1MDMgbGVnYWN5LXRydW5rCis3Mzk5NiA4ZWJiOTBkYzNiMDQ1MGIzOWJkOGE5YmQwYjI4NWVmYjBhZTA5OTFhIHB5M2sKKzczOTk3IDdiZWM2YjQwNzRmNTg0NzFlMzQxN2VhZGU1NTJjZDk1OTQzZTE1YTMgcmVsZWFzZTI2LW1haW50Cis3Mzk5OCA3MzdhNmIzMzc1MDU2M2MwMmY3NTA2MTMwZTJlMDVhNDZkMTNlOWFmIGxlZ2FjeS10cnVuaworNzM5OTkgNmQ5NjI1ZGQ5MmU3ZWJjNWFjZjU5NDE0OTJjZjUxZjFjMGI4NTdiNCBweTNrCis3NDAwMCA0MWViMTEyOTAxNDJlNzYzNTYyZjI4NTM0YzM0OWIxOWU1NWM3NTE0IGxlZ2FjeS10cnVuaworNzQwMDEgYWEyMmU3ZjMyNTE3ODJhN2NlNmY2MGY0NTQ2MDlhODg3N2ZmNTdiZiBsZWdhY3ktdHJ1bmsKKzc0MDAyIDcyYzVlMTczYWFjNWE2ODFjOTU3NzBjZmY4NzkyMzAyYzNiYzM1YzQgbGVnYWN5LXRydW5rCis3NDAwMyBlZjFiMTE5ODMzOGJmYWQ3MDQ4NzhmMDVlOTQyN2NmYzc1ZTdkMzFhIHB5M2sKKzc0MDA0IDEyNDM5YTAzMzk4OGE0ZWUyMTgxMWI0NjRjNzczOGQxY2ZmOTA3ODQgcHkzaworNzQwMDUgMjllN2E0ZGQ0MTdjYTI1NWZmZDg5Nzc3NDAxMjhhMGZlNTgzZTU3YSBsZWdhY3ktdHJ1bmsKKzc0MDA2IDBlZDQwNWMwNWNjMzA0YmZmNTdkODRmZTdhNWY0MmI4M2ZkMjJmOTggbGVnYWN5LXRydW5rCis3NDAwNyA5OGJiYjk2MzQ2NzJhNTgxZGZjOTkwZjdjY2QxMmNjMDdhOWVmMWM1IGxlZ2FjeS10cnVuaworNzQwMDggMjA3M2E5ODljMDE5MjZiMTMzZmYyMjI2YTgwZGVmMTc0ZTQyZTk1ZiBsZWdhY3ktdHJ1bmsKKzc0MDA5IDhjNjYwNmIzMmNiMWM5MGYzNTBlNjViMzgxMDM0NjBhZDFkNWJkODQgcHkzaworNzQwMTAgODdiMzEyMWNlNTgwZWYyMTNkY2FhMmJjMmNlYzk0MTk5ODA4OGZhZSBweTNrCis3NDAxMSA5MzkwNmIzOWZmZWNjNGIxNTA2ZmZjNzhmZWQ2MzhkMGFkNWQ4Nzc2IGxlZ2FjeS10cnVuaworNzQwMTIgYTUwZWI1OTZhNmQzZDFjMmU3NDAzNmZjNGNhYmQ1OGY0NzFiNmY2NCBweTNrCis3NDAxMyBlZGM3MTRmZmU2Y2NjM2EzM2I4OTRlY2ZiNWRjOTQ1NDcwMGZjYzFiIHB5M2sKKzc0MDE0IDNhMzE2MjQzYmQ2YzZmNWY2MzUxMTRhZjA5MWE1NzJhZDhkOGRkYjYgbGVnYWN5LXRydW5rCis3NDAxNSBhODkyMjcyM2E5MmQwMDFmMjQzYzQ2YTljYWI4OGRlNzE1NzYzMGQxIHB5M2sKKzc0MDE2IDczZGNkMTgzZmFlMmQ2ZDY4OGE0NTkzNjcxNTJhMjZiMDExYmJjNzAgcHkzaworNzQwMTcgZDEzNDBhNTBhMWIzMDc2YTVkNWE5MjA1YTZmNjA3Y2MwM2JlZmM3YiBweTNrCis3NDAxOCBiZDQzMWEwZTY4Mjc0OWY0MmQ4ZTk5YWU0NWMwZTQ2ODlmNDIwMGVkIHB5M2sKKzc0MDE5IDFmZDBmNTY5N2I0MGRiYzFiZmUyZTQxMTY1ZjMzYjViNDMyNDVlZGQgbGVnYWN5LXRydW5rCis3NDAyMCA2OWEwNGRiZDVmMGEyN2Q5NTA2OGQxY2Q2ZWNiODI3MzExNWU1NTQ5IGxlZ2FjeS10cnVuaworNzQwMjEgZGMwODRmNDAwM2JiYmY2ODBiYzdmODQwODg3MzFhNzg0YzEzNjIxOSBsZWdhY3ktdHJ1bmsKKzc0MDIyIDk4MjcxNDY4YWIwN2ExODlmNjc4Mzk0YmQzOWJiOGRmZjI0ZTQ1MDAgbGVnYWN5LXRydW5rCis3NDAyMyAzMzcwZDYwOGU1YWE0ODU2MzhjZTljMjBiOGI4MWE5ZGM3NTg4Y2I5IGxlZ2FjeS10cnVuaworNzQwMjQgMzg2NDUyYjJkOWQ1NzMzNzg0NjQ5YTk3ODM2Y2YwNDEzNjVkMzkxOSBsZWdhY3ktdHJ1bmsKKzc0MDI1IDA3NzUwYzU1ZmQ1NWZiODA1MTQ2MTM4N2IyNmJlMzUzMDAwY2E2NzAgcmVsZWFzZTI2LW1haW50Cis3NDAyNiA5YjE3ZDU0Njk4MjFiM2Y4ZTFlMWQzMmVlYjY2YjhiMWRjMTY5Y2JlIHB5M2sKKzc0MDI3IGY5NzhkZGRiOWI3MWZkODhiZGNjZTBkZTY4ZjljYWQ2Nzk0MGU4ZWMgcmVsZWFzZTMxLW1haW50Cis3NDAyOCBhYjYzYTI2MmExMTNiOTU0ZWIxOWM3Y2UyOTI1OTM0N2RkMTgyNjU3IGxlZ2FjeS10cnVuaworNzQwMjkgN2YxNTQ3ZjY2Y2NmMzBjMWUxYmYwMGU3N2VhODhkNDAyMGRkY2RkMCBsZWdhY3ktdHJ1bmsKKzc0MDMwIGZjOGZiOGVmZjIwZWM4NjM4MDhlN2M2NmU2ZDYzNDMyMGRhMzFmZDkgcHkzaworNzQwMzEgZTgzMGU4M2YwZjVhZTRiYjg2OTk4OGM0MmY4YjljYjVlNGMxMDNlNCBsZWdhY3ktdHJ1bmsKKzc0MDMyIDBjYTgwYTJjNzdmZmRlODg1NDM2NzIyODk4NzFiM2U4NDA3NGEwNWYgbGVnYWN5LXRydW5rCis3NDAzMyBjZmEwMDRjMWZkOTVkNzYyYTAzMThiNTE0YzRiMjI5MzY3YWQ0MTUxIGxlZ2FjeS10cnVuaworNzQwMzQgYjE2YWU2OWQ2NDg0YTcwNTIzYjYxOWJiYmQyNGU2NjMyMGYxYzYwYSBweTNrCis3NDAzNSBlNjIxZTNlMzE5NmVhNDFmZGMzMWIzYjIwYjE4Y2M4YTcyMWY3MTkwIHB5M2sKKzc0MDM2IGNiM2FhOGJjZDdiMDJkOGEwMWU3NmJkNjlhNWY0ZDI0ZTFiNGI3ZmEgcHkzaworNzQwMzcgZGNlNDdjMTBkM2ZhZTFmZWYyZmMyZmY1MDgwNDgyNzU1MzYxYjU4MCBweTNrCis3NDAzOCBkMjA3OWQ1YWRjZmFhNDRhMWVmNTFkYjVkNjcyZmUzMDZkMWY2YjczIGxlZ2FjeS10cnVuaworNzQwMzkgN2Y2ZDAzYjU5ODY1YzMxNzBiMzEwOGZmM2IzYTRmMjZkOWNlMjdkYiBsZWdhY3ktdHJ1bmsKKzc0MDQwIDJkYWI4ZDYzZWI1NTU2ODNlYmQ0OWMxODBhMmNjM2FmYjc4OWIxODUgbGVnYWN5LXRydW5rCis3NDA0MSA5ZTc1MjllZjQ0ZDQzNWQxOThkZGMyNjI3OTg2ZDUzNTMwZWZkOWU0IHB5M2sKKzc0MDQyIDEyYTEzZTUzOGExMWQ5OTRmOGZkNTZkY2YyZDE3YmM0NmZiMmYzMjEgbGVnYWN5LXRydW5rCis3NDA0MyAxMzBmMTkxMWQxNDY1YjQ2MDQ0ZTliOTAxNjYxYmMzMmRkZTU3ZWQzIHJlbGVhc2UyNi1tYWludAorNzQwNDQgMjdlNzBkODFhZDU3NWViZTIzMWE3NjRiZGJlMWQ0YmYzYzg5YzFmMSBsZWdhY3ktdHJ1bmsKKzc0MDQ1IGI3YjgyNmY2NWU3NWRiZWNmNWE0NDdjOGQ5NjJjZTVlYTEzODMzNGIgcHkzaworNzQwNDYgOTA2ZWQxMTljYjE5YjQyY2FkMjQ3ZTQ1NzI0ODk0YTVlYzZkZDg2YiBweTNrCis3NDA0NyA4NTExYzdjMGQzZWZmYmNiZmViM2Y2Y2QwOWNlY2NjOGFlNjljNWZiIHJlbGVhc2UzMS1tYWludAorNzQwNDggMDFhYmNkMzczMDE0NWY5M2RmM2IyZmQxOGRkZTEzNDdlNDg5ODQ5YiBsZWdhY3ktdHJ1bmsKKzc0MDQ5IDEwN2U0ZmI5MzYwNWZkODkwMTUxNzZmZWY1N2YwY2U1MWNiZDc0ZjEgcHkzaworNzQwNTAgMWVjNWMyNjZkMzkwZGY2MWZhODkyMDFjYTQxYWNlZWE2YmMwYjZhMiBweTNrCis3NDA1MSBhMjliYWJiNTQ4ODRiNTE2ZGFlNjE2MThhYzRjNGM1YTM2ZDI3ZDU4IGxlZ2FjeS10cnVuaworNzQwNTIgNWQ3ZDg1MjQwNDI2MzJkM2Q5MTZhYjM1ZWU0M2Q2MTEwM2Y5ZmMyYiBsZWdhY3ktdHJ1bmsKKzc0MDUzIDU5MzkyMTgwYmY0NDVlY2UxYjhlM2FiYWVlNzRlNGJiMDFkODc2MWUgcHkzaworNzQwNTQgYjQyODdmZjE2NGU1YmM5MzkxNDk5NjQ4Mzc1YTM1NGViZDcyOTM0MiBweTNrCis3NDA1NSA3MjRkZmVhYjNlOWI5MTU5MGFhZGUxOGNlODc5YjM4MDM3ZDc0MTdlIHB5M2sKKzc0MDU2IDJmY2RmOTY3Nzk3ZGU2NTQ2OWU5YWJmYjhjMjQ3ZGI1OTcyODJiMzggcHkzaworNzQwNTcgMWM1N2RlYmY5N2JjMjc0ZDE2ZmEyMmVlOWZmOTgzZmJkOTJhMDAyMyBweTNrCis3NDA1OCBjMDc1Yjk3NGMzNWNhNGQxMmZjOTE4ZjRiZDJmZGNhNDA3NjdlODAwIHB5M2sKKzc0MDU5IGEwNjE2OWE4NzJiMzQ4OWNiYzRiNWRhYTAxMGU1NDNmZTVlM2Y0OWIgcHkzaworNzQwNjAgMWRiOTdjZTRhODUwYTBjZTFjMmRkNDU3M2Q4ZGRlNWVjZTdlOGRkYSBweTNrCis3NDA2MSAyMGNjMGVhYTg5MjY0NjdlYmFiZjdkZDdlM2JkNGRmYzE1NTJjZjc3IHB5M2sKKzc0MDYyIDc2M2U1MTI5NjVmYTc4MDI0YWNiOTFjOTdjYzhiYTc3MzkwZDY0YjAgcHkzaworNzQwNjMgZWE4ZmY4ZDYyOTI4YTNjYmM0NDZkMGUyNDJmZmNhZTgzNTlkOWVmNSBweTNrCis3NDA2NCA4YWE4MGI3MTVjNTFjNzZlNzRmOTMzZjRhYTkwMzViNjJjYjc3NmI5IHB5M2sKKzc0MDY2IDM2YTdlOTZlOTBmYjNhMjY1MjA1YTUzN2U2NzZkNmMwNWI5MmY1OGUgcHkzaworNzQwNjcgZGI1YjNkMzE4NjQ5MzNiOWFjM2M1ZGYyMzNlMGM4NjdkODMzNTBhMyBsZWdhY3ktdHJ1bmsKKzc0MDY4IGZlMmIwMjZkZGYyMWNkMWU1ZTdkNmZhODRlMmUxMjNhYTk5ZjgxMTIgcHkzaworNzQwNjkgZTIzOTFkMzYwYWMyNDc5MTljNDU3NTNiOTFmMzljNTgxMzc4YmM0YiBsZWdhY3ktdHJ1bmsKKzc0MDcwIGJjZGI3YjE4N2ZhYTA1NDNjYzRkYTE2ZTc5ODg0NWRmMzU3NmZhYWYgcHkzaworNzQwNzEgYWIyNGZmNjQ2ZGE4OGY1NWM0M2JlNWM0NTNkZWQ4ZDdlNzhiMzRhNCBweTNrCis3NDA3MiA2ZTA3NWVlNDhkNGJhZWEyMmZlYmYxY2EyNzQ3MjBlMmE0Yzg4MWFkIGxlZ2FjeS10cnVuaworNzQwNzMgYmE3MzhhZjE0ZGZjZDQxYjMyZDU3YzUyNjYzZGM1MjY3MDA4YmFhNyBweTNrCis3NDA3NCA1OGI1MTJlZGZkYmI0MWFkMGZhYmY3ZWVmOGM2ZWE4MDhiYWEwNzNkIGxlZ2FjeS10cnVuaworNzQwNzUgMjU5MTM4YTk4OGE1MjcwYTFkODcxOGRjOTIxZjhhNWZmNGE2ZTRjZSBsZWdhY3ktdHJ1bmsKKzc0MDc2IDVlZTJlOTY1ZGE2ZWRlMTMzYzIxMDExNTUyMDllYzAzMWZjMDdhMjkgcHkzaworNzQwNzcgMGFhNTMyMTE3YTRiYjY5ZjA3YzYzYWU0N2M1ZWE0MzAzY2EzYjc4MSBsZWdhY3ktdHJ1bmsKKzc0MDc4IGIwNTEwNTViNTlmMTk0MmNjYTNiNjE1NjQ3MmQ4MTA3ZDc3OTMyMzIgcHkzaworNzQwNzkgYTE5ZWI5NjM3ZmY3ZWRmZmExNWE2ZGQ2OTA2YThiNDZkM2ZmZmEyNCByZWxlYXNlMzEtbWFpbnQKKzc0MDgwIDlkYzVhYTYyYmU3MmZmODdiZjhmOTk5MzU2ZTIyZTVlMWI5MTkwZjAgbGVnYWN5LXRydW5rCis3NDA4MSA2NmJhYmU2MzEwMzdmNzQ2Nzc3MWFlOTRmYjQ3YjE0MDYyMmY3NjBiIHJlbGVhc2UyNi1tYWludAorNzQwODIgZGUxZDUyMDY5ZDJkZmNiNzI2Yzk4NTJkYTc3NGFhNjU3MTBkZGM2OSBweTNrCis3NDA4MyAzNzU1NjNjNmQzMjQ0YTE5ZDc4OWNjMDZiOTVlNTM4Y2VkMjc1YjdjIGxlZ2FjeS10cnVuaworNzQwODQgNTRiMWY4MDI0YmM4M2MzNjM0ODA0ZGRmNWE4OTBkOTI1NmU1OTJkZCBweTNrCis3NDA4NSBmMjA3MDU4NzVlODA2NTA5NzUyYTZlNTMyYzRkNzFhNDc1YzQyZGE1IHJlbGVhc2UyNi1tYWludAorNzQwODYgYzcwNDIxMjcxOTZhNTE1ZmFlZjI5ZTJlMDRjY2VkMjc1MjlkYzZjOCByZWxlYXNlMzEtbWFpbnQKKzc0MDg3IDRmMTc4ZTU5NTgxMzEyZTc4ZGUxN2U0NzYxMGYyODRjOWYyZjZiYjYgcHkzaworNzQwODggZWUwYjlhOTMxYzk0YTQ5NjQ0N2E3ZTM3OGIwOWRhOGViZjlkNGEwOCByZWxlYXNlMzEtbWFpbnQKKzc0MDg5IGMzMzZiMzAzOGQwNTQ2NDJhZTQ3N2EyNjM3MTNlNDFlMzMzYjhjYjAgbGVnYWN5LXRydW5rCis3NDA5MCA0NjEyYTJhY2RmMmY2MDdkNzQzMmIzZGVlYzI5MzdkYjU1MDBkZjczIHB5M2sKKzc0MDkxIDYyMzZhZGIzNjYxODFkNjI1YmEzZGM2YjY1NmY0OTBhMzA5MTk4NDEgcmVsZWFzZTI2LW1haW50Cis3NDA5MiBkNjBiNTU5ZWVhZDlmMjk3NDg3OWRmNTk0ZGMxODljN2I1OGQ2Y2M2IHJlbGVhc2UzMS1tYWludAorNzQwOTMgMzY2MzZmYTU0ZjMzMzM5YWNiNzY1YmE2ODBlNjM1YjAxZDY0YmQ2NiByZWxlYXNlMjYtbWFpbnQKKzc0MDk0IDZhZDI1NjEyNDA4MDQzYTBkYWJlOWNmZDdjOTY4MGU3M2I3ZDBkMzkgcHkzaworNzQwOTUgZjMxMTM5NTQ4N2M5NzBmMmVhODUyYWE5YWU3MDUxYmEwMDg2MDM5MiBsZWdhY3ktdHJ1bmsKKzc0MDk2IGVjMWYzMmI3MmFiZTgxMzI2Nzk0ODUzMDM0N2JmNzcyOTEzN2VmYmEgcHkzaworNzQwOTcgYWY5NzdlOTRlMmZkZDRlM2M3NGVlNTNmMmVkZTY0YzI5OTZmYWVkNyBweTNrCis3NDA5OCAzYTYxM2UwMGY2NmQzNDhiYzNjYWUyMmFiMmI2NTgxYjE5Zjg0OTI4IGxlZ2FjeS10cnVuaworNzQwOTkgZTYyOTU3YTBlZTE0MjM3ZDAzOWZjYTYyMjgwMTE2NzRjZmNlMjY1YiBweTNrCis3NDEwMCBlZWFkNzgwN2RmN2NjMDc4ZmNlYTk5YzVmYmU5YzFlNmExODRlY2VmIGxlZ2FjeS10cnVuaworNzQxMDEgYzBhY2FlMTliNDg3Njc2YTc2MTc3MDg4MGI3YTM5NmJkY2RkYWMzZiBweTNrCis3NDEwMiBlYWY0YTAwNDg0YmRiZDgzZWQwMjEyZDBlNGE0N2NmZmU3YTRhZmEyIHB5M2sKKzc0MTAzIGFlMmMwNTZjNDZkMzQ0NzAzZTJkOWJkNTNiZWYyNTBhMWQ4Yjg0ZTUgcHkzaworNzQxMDQgODFjOGIzMDQxNjNlM2FkYWQ4ZjVjZDI4ZThhZDYyODdkOGRiYWRhNCByZWxlYXNlMzEtbWFpbnQKKzc0MTA1IDBhZjk0MDdjODhkMmU2ZWYxYjQxMTUwN2NmMzI0NzdlZDg5ZjhiZDMgcmVsZWFzZTMxLW1haW50Cis3NDEwNiA1Y2Y2OGQzYjY1MzI0ODk5ZjVmYzQwZDBmZjQ5M2E0OTIwZGQ1NDdiIHB5M2sKKzc0MTA3IGE2NDBiYjNiOWMyYmI2YmQyYjcwYWRkNzY4ZWQzZGUyZjIxYzMzMTMgcHkzaworNzQxMDggZjUwMjkwNzk3ZmI1MGE1MzBkODdiY2RkZDcyNzk2OGVmNjcxMDQ3ZSByZWxlYXNlMzEtbWFpbnQKKzc0MTA5IGZlNzk4OGE1NzBkZmYyMTNlMDA3ZDUyNjgzNDMxZGJkNTk5OTFhZGEgcmVsZWFzZTMxLW1haW50Cis3NDExMCBkZmFmNmRlMmM4Y2U3YTM0NGVhODdmODhlZjcxYTJkYjkwY2VlNjVlIHB5M2sKKzc0MTExIGQ4MjZhMGNjMmMwZTBlNjFmNzlhYjMyZTE2NjFlMTIzZGZiY2YyZWEgbGVnYWN5LXRydW5rCis3NDExMiBkMWQ4MjU0YzRlZDVjNmY4ODljY2Q0OTRlZmU1NTRjMmE3MzBhYzI0IHJlbGVhc2UyNi1tYWludAorNzQxMTQgNzMyZjcyY2JhZjdkODRjY2NmNjEzZDVhZTkwOGVlYjExZGNlZjMzMyBsZWdhY3ktdHJ1bmsKKzc0MTE1IDBhY2YyNDkwMTVjYTRjYjNkMDk1ODEzM2Y5MmNiZDU5ZDdjOTUwZGQgcHkzaworNzQxMTcgMDFiNzYzY2ViNDA4NzNlODkzNGY3N2Q4MzlkZjVlMzllNjU0MTRiYyBsZWdhY3ktdHJ1bmsKKzc0MTE4IGFhY2RjNzM1ZjE5YjE4NWMyZmQyMTE3MDFjMWE0NjNkNjdlN2NmYjEgcHkzaworNzQxMTkgN2JmOGZjMjAwMzdhMWNiMjFiMDNkMWRmMDg4NjM1MmE4OWViMjFiOSBsZWdhY3ktdHJ1bmsKKzc0MTIwIDg2MGU3MTJlMzJlMGRmZjhiZjMwZGZlZDJkYTNmYWJiNjY5YWJiOTQgcHkzaworNzQxMjMgMDFlMmU5YWRkMDcwZmI0MjIzNWJhOGZmYmFmZDI4MTQyZTUxY2E1ZCBsZWdhY3ktdHJ1bmsKKzc0MTI0IDM4MzJjZjAzNjg3YmIzOTUwYTVjMjVhZjkxZTNhOTA2MzBlODJlNDcgcHkzaworNzQxMjUgY2M5ZmVmY2RkNTMzYzRiNzNhN2YzNDJhODBiYWU2MjNmNWY0NWYyZCBweTNrCis3NDEyNiBjZmFiMTFkZDNlNzNlNTg2ZjAxNDM5MzRiMjIwNDM0OTllN2Y0MmZlIHB5M2sKKzc0MTI4IDYzZmQxN2JhOTg3NTMwNjI5NzhiYTExYzU5YWVlOWMxMjJiNzA2OTUgcHkzaworNzQxMjkgMmNmOWQxOGQzZGY1NGM5ZmM3YjE4ODcyOGRiZDFkMzE4Yzg5NTQxZiBweTNrCis3NDEzMCAwYjFmMWQ3YjJlNmRmZDA1OTZjZTQ0MjlhODFmNzYyYzZjN2UyNTY5IHB5M2sKKzc0MTMxIDNjNDQ5MGFkMDFjZjA3NmRhMDQ5NjJmMjkyNjgxY2I0NDNjYjBmODMgcHkzaworNzQxMzIgNzk3MThlZTAzOTg2MjlhYzQxYzAzMmQ3YzA5ZDgwM2Q3OGUxNjRlMSBweTNrCis3NDEzMyBlYmM5ODU2YTliZGIyNjAxZjQzMWQ2M2FhOTg4ZTJjNjk3YmNjMWI3IHB5M2sKKzc0MTM0IDU2MTM2NGEzNGIwYzQ2ZDEzNDRmZTI5ZjgwYWQyYmNlZmJmMDZiMDIgbGVnYWN5LXRydW5rCis3NDEzNSAwYTIwZWRmM2Y3ZGI4OWViOGRlZjY3NjhmYTk1MzM4ODY2MjAxYjE2IHB5M2sKKzc0MTM2IDZmODczNjczNzk5NGRjMTE5YTk4MzQ1ZTk2ZDZlMmVmMGFlYmUwNDAgcmVsZWFzZTMxLW1haW50Cis3NDEzNyA5ZmY1YmQxNjAxNmI0MDdjNjc5NzRiYTI2ZWEwMGUwODVkMzkwYWUwIHJlbGVhc2UzMS1tYWludAorNzQxMzggMjFlNTgzMWNiYWU4YWJiYzMzOWFlMjhkMTU2YmFhOWNiNDRjYzdlZiByZWxlYXNlMzEtbWFpbnQKKzc0MTM5IDM4MTVhYmVkOTI3OWI4ZDgxMWM4NGJjNGY1ZThhYjE5OWE2YjY1ZTQgbGVnYWN5LXRydW5rCis3NDE0MCBjMjhlNjFjNWJkZjgyOWZjMGZkNDdhNGNkYmE4ZWU5N2I2OTg2ZWE3IHB5M2sKKzc0MTQxIDk0OTljMjMyZWRiNzNmYjcwMjY5Zjk1NzIxMDZiNDRiOWY0NWY1ODcgcmVsZWFzZTMxLW1haW50Cis3NDE0MiA0ZGY3MDUwMGRiZTM0ZDU3OGI4MGNjMTU2MDg0ZjMxMTQ1ZmY1ZGRiIHJlbGVhc2UyNi1tYWludAorNzQxNDMgMDNmNWM2N2RmMThlMmI2YzU0ZDgyNTIxYjhmYzY1ZjYyZmMzYzMwNiByZWxlYXNlMzEtbWFpbnQKKzc0MTQ0IDhkNmVhZDJhY2NhMDA0ZjU3MDU3YTAxNTIwNjcxNzEyNTU4YTYzMWUgcmVsZWFzZTI2LW1haW50Cis3NDE0NSBmZGE5MDYyZWJmYTRjODcxZTljYTdjNzhmNTBjMDE1ZTQyMjFlOWRmIHJlbGVhc2UyNi1tYWludAorNzQxNDYgY2RjNzQ5ZDljMDIxYjk3ZWM2N2VjNzQxOTBmZDFlMGY1ZWU3NjI4ZCByZWxlYXNlMjYtbWFpbnQKKzc0MTQ3IDdkY2U0MDRmYzhlYjViMzNjMzA2YjU4NTk3MzFhYzk1NjRjZjI4NTMgbGVnYWN5LXRydW5rCis3NDE0OCAzNjEyYTRlY2E1ZDUxY2NhYjFlZmM3OGYyZjZiMGIzNzgyZGZmZWJhIGxlZ2FjeS10cnVuaworNzQxNDkgYjQwZWViOGY2OWNhN2JiNjQ1OTJjNjlmYWZmZGViMTJiZTA3YzZjMCBweTNrCis3NDE1MCBjMzBmYThjNWUzMjQ2Zjk2YzA5YWM5ZTgwZWQzZTNhMTExMjc3MjZiIGxlZ2FjeS10cnVuaworNzQxNTEgZTQwNTA2ZWRjYjNlMTU3YTA5ZWU3MjBkMDI3NDcxNTMxMDc0ODM3ZSBweTNrCis3NDE1MiA2YmIwMTg4N2Y0NzU2NzY3NjExZjI4MTM5ZTVmNjgyNDRlOTMzNzFlIGxlZ2FjeS10cnVuaworNzQxNTMgMjRhMmFjZjEyOTFjOTQxMzcyMmYzMWEzYTU2NTE3ZGIwMDFmN2JkMyBweTNrCis3NDE1NCBhYmZkNWY3OGY0NjZhZTE3MDMwMDg1OGQ2ZDM3ZDliNmFkOWQwNWM5IHB5M2sKKzc0MTU1IGQ3NDdkNTJmOWE2NjkwNmU1MmMxN2NlMzM0OTUxZDE4ZWUxNjE5NWMgcHkzaworNzQxNTYgZjc5MDQzMzY5NjI1ZmY5ZjZmMjhiMjRkMzE2MDViYmZhNDhkNGUxZCBweTNrCis3NDE1NyBkNjgyY2E4ODhlMjc5NGIxN2E1NmYxOWFlYTJlZjNjZTQwNzY5YzQ2IHB5M2sKKzc0MTU4IDUzODg1MGIzODkzMTA5MDcxYzUxNDgwYTg0ODhjNTIyOTAxYzI3YjQgcHkzaworNzQxNTkgYjdhYWJiYTg0ZWUxYTBhOTlhZGIwMjgzZGQ2Yzc5ZTAyMWI3ZjRlOSBweTNrCis3NDE2MCA1OWU1ZjI5OWRhYTAyMGM1Y2JlZWUyNDU4NDI3ZWM0NjNhOTJkYzAwIHB5M2sKKzc0MTYxIGVjODVhNTFkZTljZjQ4ZTkwMjhlOTUyMTc5ZTRlODAzOTY1Mjg5NDQgcHkzaworNzQxNjIgZGY1YTcwODYwNzgxMGJmMDk2Mzg1MzcxOTk4Y2I5NGY4NWVlOTJkYyBweTNrCis3NDE2MyBjYzlhMWEzZTNmYjgxZTQzMjg2YzRjM2NiODBiYzhmZDkzZDY1YWNjIGxlZ2FjeS10cnVuaworNzQxNjQgMWVjYjA3ZTExYTJkY2M2MWZlM2U1MjMxYzQyMzNjZmM5ZjgyY2FhMSBweTNrCis3NDE2NSA5YzIxMTFjZmQ5NzQzNmRiMmEyMjRmZjMxZGI4MDBhM2JiOWM2ZTY0IHJlbGVhc2UzMS1tYWludAorNzQxNjYgMDc2MzQ2MGIwYjM4MWRmZWQ2MWRmMmMwNzgwZDU4NjhlN2Y0MWU0MCByZWxlYXNlMjYtbWFpbnQKKzc0MTY3IDE0ODBmYWUzYjcwM2ZjZDdkMDA0ZDZlOTgyYmFjM2IwODBkMDEwMDcgbGVnYWN5LXRydW5rCis3NDE2OCA3NGFhZWI5YzM1ZmJkMTE0ZWEyMWIzYWJkYmU5OWFmY2YzNjFhYTZjIHJlbGVhc2UyNi1tYWludAorNzQxNjkgY2I0NmEwZDc4OWM2NzBmNTRhOGQ5MGY0MDFjMjgxYTQxNDg2M2JlMSBweTNrCis3NDE3MCAyNWNmNzc1YTcxNTE5ZmZmNjA2MGI5NTdlNTliMjFiZDU5ODhhNWE2IHJlbGVhc2UzMS1tYWludAorNzQxNzEgMDNjZjRjYjRhMTUwMWQ1YTM2OWJjZmIyZGM0NDkyOGRlNDRmZjFlYSBweTNrCis3NDE3MiA5MDhiMzk3NjRjNzM4ZDcxNWM5YWJjZmFmMGJmNjhlNDNmOGI3Zjg5IHJlbGVhc2UzMS1tYWludAorNzQxNzMgMTMyN2FmNTZlYTQ5YWI4NWIxYjIzNTI5NTBhODYzMThjNWVmY2ZjMSBsZWdhY3ktdHJ1bmsKKzc0MTc0IGU2NTBhOWQ2NGFiNWM2ZTI4YmRmOGU0NjliOGVmZTRlMGEwMDlmZjIgcHkzaworNzQxNzUgOTRmYzQzM2M0MzczNDZhYjYyODA0MjFmZGZiM2VjOGI1ZWE1MDRmMiBsZWdhY3ktdHJ1bmsKKzc0MTc2IGEwZWFjYjVmOWQ4YWEzNTJhNmU2MmViYTI2NzhlZWU0MmI4MzQwZTIgcmVsZWFzZTI2LW1haW50Cis3NDE3NyBkZjE3NDQzMTk0NjZjOGNiZjg3NGU4ZWM5YmQ3YmUzYzY1M2Q1MDFjIHB5M2sKKzc0MTc4IDI2MGZiNDIxYWMwN2ExNDA4OTUwODBlMzYyMGI1ZGY4YzhmZmYzZDYgcmVsZWFzZTMxLW1haW50Cis3NDE3OSA5ZGRhMDJhZmE4ZWQwMDdjN2ExMzg3MjY0MGY0Mjg3N2M1YzRmODExIGxlZ2FjeS10cnVuaworNzQxODAgMDI1YTY0MjhhNzY0ZjVlNDUwOTE5MmI3ODI3YzJlMWI4NTIzOTEyYiBweTNrCis3NDE4MSBiOTY0MDY1NTEyYjE1NTdhZGRhZmEyYjVmNGI5OTliYmU4OGY3ZDBkIHB5M2sKKzc0MTgyIGIxMWE3NTI0ZTU1OGYxY2EzZjIyZDgwZGY5YTNjNTRmZGU1M2Y0NDMgcHkzaworNzQxODMgMjA3NTQxYzk4NzQ0MmQ2YmJiZjlmNmRmNGY4ZDA1NjQ5ODFmMDNhNSBweTNrCis3NDE4NCA3NDIyZDc4OWZkY2E5YjJlOTFiYzBjNTg5ZmNiY2E4MWFiOGMwNDA0IGxlZ2FjeS10cnVuaworNzQxODUgOTc3NjAyYjNlMTQwZGNiZGEzOTE5MTk2YjdjYTFlMWUxNjUzZTM3YiBsZWdhY3ktdHJ1bmsKKzc0MTg2IGVjYTAyMDdiYjc3ZjA5MWE5OTQ1ODQ2Yzg5NmFiNDI2MjdiNGI2YTUgcHkzaworNzQxODcgMmU5NDcyNDU5NThiMDFjOWUzMmJiZTJiZjRjOWYxMTljNjk5ODI5MCBsZWdhY3ktdHJ1bmsKKzc0MTg4IDYwNTIzNDE4ZjhjOGU5NTUxNzkyZjNlZTFjNDc0NTZlZTE0YTM0ZjAgbGVnYWN5LXRydW5rCis3NDE4OSAyZmIxMDU3N2M2MjFlMjlmZmI5NWU0NTJiYzViMjU4MjE0MmU5NzUyIGxlZ2FjeS10cnVuaworNzQxOTAgODY4YjRlNjM5YjVhYjFiOGU3MWE2YWQ4MmMzMmMwZjVjNmE4NzllNSByZWxlYXNlMjYtbWFpbnQKKzc0MTkxIGI3N2JiNTMyMTEwODg5MWVmMjY0Nzc0ODMxYzg4NDZiMjE2YzI0NTggcHkzaworNzQxOTIgYzAwYjA4ODQyZDdmZDRiZDMxMzhiNDk3ZTY5MjAxMmQ5Nzg1MjI0MiBsZWdhY3ktdHJ1bmsKKzc0MTkzIGU5OTAxM2E5ZDJmOWNhNGUwYzM2M2RjMGFkZjQwNmFlNTZhYzQyYjEgbGVnYWN5LXRydW5rCis3NDE5NCBkOThiOGE2ZWMyYjg0YzViNzgwMTE3MzQ2MDRlYTU2YzRkZDRmMTY4IGxlZ2FjeS10cnVuaworNzQxOTUgNjFhMDY1YjMwMDFkODdkNTZiMzliYzA3YWVkYzJkMTc5YmMxOWIzOSBweTNrCis3NDE5NiA3NTk2MjJkMGFlMjg0NzU2YTRhZGZlOGEyM2M0OWVmYjhlYTA1MDNlIHB5M2sKKzc0MTk3IGNmZmIxZTk2M2RkOGEwNzcyMjExYzA3NTRkYmFkZjc3MjAxZjZmMmUgbGVnYWN5LXRydW5rCis3NDE5OCBkMWVjOTVhZTBhYzI4NDZiZDhjOTZlMmM1OGM2Y2YzYzU4NThkZTk1IHB5M2sKKzc0MTk5IGExNGMwOGY4ZTc3YjVmOGQ5ZmQxM2VkOGFlNjVlNzQzNGJkMzg5MDQgcHkzaworNzQyMDAgN2Q0NjA4MDA2Y2ZhYzM3Y2M5MDg0OWExMmFlNWU4NDlmZTI0YjYxZSBsZWdhY3ktdHJ1bmsKKzc0MjAxIDZjN2I0YjQ3MDgyNzc1YWI3YmQ3NmU0OWMxNDEzZjRjNzBjMzk4NTcgbGVnYWN5LXRydW5rCis3NDIwMiA0YjEyMTZmNGZjYjViMGMyMjExMDYwNzg4YmFlOWUxYTk0ZDcwMWExIHB5M2sKKzc0MjAzIDBmNTdiMzBhMTUyZjQ2MTkxZGE2YzI4ZjllYjY2MzFkZWY3N2Y4MGQgcmVsZWFzZTI2LW1haW50Cis3NDIwNCA1MTEyYTU2ZGY5NzdhMWMxZjlmOTg0NDBiMzI1OTU4ZGJjYjRkY2MzIHJlbGVhc2UzMS1tYWludAorNzQyMDUgNzI0YTEwMTFlODk3YTdiOWYzMmFlMjdkNDEwMWE4OTc4ZTVkMzE2MiBsZWdhY3ktdHJ1bmsKKzc0MjA2IDBiODkzYzZlYWQ0YzczNmZlOWQ4YzI4NzJiYzYzOWJmMDEyY2RiMDMgcmVsZWFzZTMxLW1haW50Cis3NDIwNyAxYmRlODQ1NTIyMmMzNDg5YTZmM2IyOGE0YWQ5N2ZhOGNmMDM1ZjQyIGxlZ2FjeS10cnVuaworNzQyMDggYTU1NjM0Y2U4MTE4MzhkZTgwY2VmNDExYWMwODY4YmU5NGU4MTMwMiByZWxlYXNlMzAtbWFpbnQKKzc0MjA5IGJiZDFkOTBkMTU4YWJkZGQ1NTE5MDNhZTc0NzhhNTdjOWY3YTg0YjIgbGVnYWN5LXRydW5rCis3NDIxMCA0MmRiMWNmMzlhZmRiYWM1MGMyODUxYzUyNTNiYTIyN2MyM2QyMzQ3IGxlZ2FjeS10cnVuaworNzQyMTEgNjc4OWQ4NDA2MjFmNGQwZGNjNmU1NTRkOTk2Y2VlOWQxZDc1OGJkOSBweTNrCis3NDIxMiAyZjhhMzYyZTM3M2Q5NTBjYzliODBlZjA0NWY1MGFkYzFlMWYxZjUwIHB5M2sKKzc0MjEzIDE1YjYxZjMyN2Q1MDk1ZGJhOGI1Y2IyZGJlMGMxNWNmOTJmM2U0OGQgcHkzaworNzQyMTQgOWJmMjA2ODU3ZDdlNzljZTJkOWY1MGIxMjEwZDIzNTUyNzgxMjQzMCBweTNrCis3NDIxNSBjMTA3NzNiYmFmYTAzNTkzZTZiNjAyZDU1ZTFiNTFlYzRjYzA2OTA5IHJlbGVhc2UyNi1tYWludAorNzQyMTYgYjcxZWViOTA3MDkzN2I1NjJmMjcyMzNlZWQ1M2U4MDY1NjI0ODk5ZSBsZWdhY3ktdHJ1bmsKKzc0MjE3IDBmMDE2M2Y4YzViNTZjZmQyZmZmNWE5ZjliYzgzNzRlMmUzNjViOTkgcHkzaworNzQyMTggODllYmU0MzI0NGFlYmY2YmMzY2JmMWU3NzMxNTc1MmFmYzBiN2FmYiByZWxlYXNlMjYtbWFpbnQKKzc0MjE5IDBkMjAzY2EzYWM3OGVkZjA0NTllY2I0Y2I1NTIyOTBiZmI3ODk1OTkgbGVnYWN5LXRydW5rCis3NDIyMCBhOWI1MDdlY2RhNGM5ZDI3MmIzMzM4NzE4Y2YzNjIxZGNlNGZhNGQwIHJlbGVhc2UyNi1tYWludAorNzQyMjEgOGMyMWZmZmIwNmM0NjE0YWNhYmI3OTExZTdhNjBkNGQ5NzllYWQ3OSBweTNrCis3NDIyMiBmYzQ2OWFmNmViNzAyNmJlOGRhYzhjN2EyY2MxOTI1NDM2Y2NmYzIyIHB5M2sKKzc0MjIzIDA2Yjg2YTZlMjhmMWExNDM1N2VkNDc1OGE3MWNkZTQxYWQzYmU5MDkgcmVsZWFzZTMxLW1haW50Cis3NDIyNCA3NGRjN2JiNGY0NjQzYjNkNmZlODAyMjdhNTlhZjJmNjliMjJkY2JjIHB5M2sKKzc0MjI1IDYwN2NkMTE5ZmU0Yjk3OGEzZDlmNTFmNTI4N2UzMjAxNDUyOGJjYTcgbGVnYWN5LXRydW5rCis3NDIyNiAxMzI2ZWY4NmYzZTQwZDMyNmY2Y2NmNWUyZjI3N2NjNWFmZDliNGY5IHB5M2sKKzc0MjI3IGIzNGNhZTc4NmNiMDNlNDY3MjQyYmY1NDhjZWJmZGM0NjBlYjc1YzEgcmVsZWFzZTMxLW1haW50Cis3NDIyOCBjODUzYTNkMmExOWQzNTkyZGYyMjkxMDIzYzk5MTlmY2FhOGZlODBjIGxlZ2FjeS10cnVuaworNzQyMjkgNzIxMmUzZTBjZDE3NTA3MDc1MjI0ZmYwMDViNjkyNzNiMzVmYjliYSByZWxlYXNlMjYtbWFpbnQKKzc0MjMwIDBmOGI1NmVmMGY3ZjRkZTE5NzBlYjRkMDg3ODhhMWEyM2RkZGE4ZjEgbGVnYWN5LXRydW5rCis3NDIzMSA3ZmQ5YWRjODEyODAwYzEzNWRmMGQyNmI0NTMzY2E4ODdhNDc1MTM2IHJlbGVhc2UyNi1tYWludAorNzQyMzIgNDQzMTgyMTBiMDNjNzBhYmVkMmVkNzY1MTE2NzhmMzg5NGI2NTI1YSBweTNrCis3NDIzMyAwMWY4NDhlYTExMGFlM2Q1OTBjNGIyZjMwZmFmZmQzMWY5MzVlMGViIHJlbGVhc2UzMS1tYWludAorNzQyMzQgZGE5OGNiZWJkYWNiYTI5ZDA2NjQ4ZTliM2E3YWY0M2Y1YjViNTE4NSBsZWdhY3ktdHJ1bmsKKzc0MjM1IGJiMGI3ZDBlNTUwZDgwYTg3OTgyNzZkZGNkZjA5ZTFiNDE1NWUzYWUgcmVsZWFzZTI2LW1haW50Cis3NDIzNiAwN2RiZGYwM2U4ZjUwMzA3Mjk4YTJmMTUxMGNhMmM3NzFkZWMwYjllIHB5M2sKKzc0MjM3IDNkNDUzNjdjYzYyYWE3ZmZiOTkyMmE0NjkwYjUyYWRhMzY2OGFhMTMgcHkzaworNzQyMzggYWRmNDg0ZGY2Nzk0OGU0OGIxNjI1NmJlMWVkN2U3ZDQxOGYwYWU1NyByZWxlYXNlMzEtbWFpbnQKKzc0MjM5IGFhOWZmNDdiZDFjOGVlNTY1NDliMTVlN2FlYjhmNTBhOWZiOWZkMTIgbGVnYWN5LXRydW5rCis3NDI0MCA1NmIyZGE5M2FkOWM4MjMyZGU1YWEwYjk1ZWIzMmYyNzFlMzkwNTg1IGxlZ2FjeS10cnVuaworNzQyNDEgODlhZDIwYTMyYTI2MDMxMDc4NjM1ZWI2N2RmMGE0NzNkMWY0M2Q0NSByZWxlYXNlMjYtbWFpbnQKKzc0MjQyIGJjZDM5ZWZmZDMxZTM3ODZmZGI2YjM2NTg3ZWEyMWZhMjAyYjk2YzEgcHkzaworNzQyNDMgODg5OGYyOGU2ZDJjMWE5NTRhNjVhNmIwZjA0NDRhNzZhMWM5NTVmNCBsZWdhY3ktdHJ1bmsKKzc0MjQ0IDU3MmMxODdkZjYxMmUyNzZhMjczZjY3Yzk1Zjg4MDNmZGEzMGQyOWIgcHkzaworNzQyNDUgMWRmZDZmNDA3MzM2Y2EwMjczM2FlNDUyOTIyOGI5M2FkYWZiMGM4ZCBsZWdhY3ktdHJ1bmsKKzc0MjQ2IDVlMDU4ODkwOTZjZDA4MGU3MTIyMDIzNmZmMzU3MDg4YTFjMGNhZTUgcHkzaworNzQyNDcgOGEwMTdkM2NiOTI4YWU3MmVhMDEwYjkzYTY0MjkwOGE0MTlmMzdlMCBweTNrCis3NDI0OCA5ZmZmZDNlZGI2Njg5ZmRhZDI1NTQ0Mjc5MmJmYjBjOGZiZDI1MDE0IHJlbGVhc2UyNi1tYWludAorNzQyNDkgYTVkMDI1YWQyMWM4ZWExNGZhZDM4MGFkMDJiOTMyZTMyMjlhZThlNCBweTNrCis3NDI1MCBmMzU3ZTI2MDNkOTNiZWIxNWZhY2M1N2EzZjdmY2JmYjQ0NGQzY2I4IHJlbGVhc2UzMS1tYWludAorNzQyNTEgNjBiMzFmMGRiMDE2Mzg0NmFlMmEyYTZmNjc5ZTU2YWIyOTJlZTRiNiByZWxlYXNlMzEtbWFpbnQKKzc0MjUyIGVlMjU0NTllOWI5MWZhY2FjNDc2ZDQ3ZDFiNmNiMjY1YzEyZDQyYmYgbGVnYWN5LXRydW5rCis3NDI1MyAzZWQxNTkzZGQxNzQ3MjAyNzZiYTcxMjU4YzEwM2JjYzU1ZDZkMTJmIGxlZ2FjeS10cnVuaworNzQyNTQgMTU2ODNjMGVhZjI4NjMyZDYyN2VhMGE1MjBiZmY2MWVhOGI3ODI4YSBweTNrCis3NDI1NSA2NGFmNDE2MGNmMWViOWY5M2RkYWM4NzY3M2NhMDA0NWVlYmU4MTE2IHJlbGVhc2UzMC1tYWludAorNzQyNTYgZmExNGY4MTMyMmNlMDcxODc4ZjNkNmNkMjViNjAwNDMzZjBjN2U1NiBsZWdhY3ktdHJ1bmsKKzc0MjU3IDFkZjI4MWM5ZTE4MjFmYzljNTBkZWM4N2Y4ZjFjNzM5YTc3ODVlZGYgcHkzaworNzQyNTggMTM3NTk5YWNiOGJhYTMxODAwNzYyYzdmZDUxZmM3YzQwYmNjNDNmMyBsZWdhY3ktdHJ1bmsKKzc0MjU5IDkzODgzZjM3ODdiNTc5Yjk3ODExNDIxODIwYjgzOWJjOTI4YjVmZWIgbGVnYWN5LXRydW5rCis3NDI2MCA0ZmU1ODAxYmY3MTIxN2JhNDc2ODg0MTZlMjFmODg4ZGNiNzFhM2EzIGxlZ2FjeS10cnVuaworNzQyNjEgNWJlNGMwOWU0YTY2NjI4ZTQ5OGNhM2E1MzhkZDZlYTE3N2E2OTA1MyBsZWdhY3ktdHJ1bmsKKzc0MjYyIDdhYTBkNmZhNjM1OWYxNzhhMzRmNjEzZjdkMzQyNTU3ZjdhNzc2ZDMgcHkzaworNzQyNjMgZDI5ZDFkOGUyY2Q2MzY5ZjEyMTRjYjYwNmYxZjYyZmYzZGFhNjE5ZSBweTNrCis3NDI2NCAzZTBjZTk0YzJlMWUwZjEwNDE3OTQwZGZlM2M4YTEyM2Q1Yjc1ODM3IHB5M2sKKzc0MjY1IGJkMDNkNmQyZWZiMDk1MGRjMzc3NzlhYzM3NmE5ZGQzNDMxYTc3MTcgbGVnYWN5LXRydW5rCis3NDI2NiA0ZDQ0ZjJhMzhlNTFlZjIwODIxNDg3ZmY4MTc5NzE0NTZmYzdkOWRjIHJlbGVhc2UyNi1tYWludAorNzQyNjcgMDUzNTc0MWI1N2JiMjBiNmQ2NDc1YjNkZGQ1Y2UyOGZmYTM4OGRkYiBweTNrCis3NDI2OCA2NTA1MGU4MjZhOTZkYjU2MDVlZDdkYjMyYjM0MDYwN2IxOGMyZjVlIHJlbGVhc2UzMS1tYWludAorNzQyNjkgMTZmYTU3MDYyOWUzZjQ0Y2NjYjc5MGQyZjA3M2NiZGNjNGVhNDk4YSBsZWdhY3ktdHJ1bmsKKzc0MjcwIDE5NjExYTI5YzhkZTdlODExMjEwMjc0NGMxNGYzN2JkYjFjYTYzMmQgcmVsZWFzZTI2LW1haW50Cis3NDI3MSA1NWUwMmZhN2ExMWMwZWE5OWEwNGRkNjAzYTM3NDYxNTY3MjFkZWRiIHB5M2sKKzc0MjcyIDA0MTIxNjE1OTU1YTI4YzA1MzZkZThjZDQ3MGIyZTdlZDdlOTQxYmUgcmVsZWFzZTMxLW1haW50Cis3NDI3MyAyYzdlMDc2YjRjYTlkODI4ZTNhMzE1N2U1YWZjYzVmYTNkMTY0YzQ5IHJlbGVhc2UyNi1tYWludAorNzQyNzcgM2FmM2ZiMTY4NjM4M2FmMWVhZjE0YjRmMTYwMWYwOTZkZTY4YTE2MCBsZWdhY3ktdHJ1bmsKKzc0Mjc4IDgzYjQ2YTU5ODhiMGViNTEwZGU0MjM4ODk3ZDQ5OGU3NzFlMTY4MTMgcHkzaworNzQyNzkgNzQ2YTgxOGJkZDM1MmI2YTk0ODU5MzMyNTc1YTEwZTJiNDE2YjRhMSBweTNrCis3NDI4MCA4ODI1NWNiNDUzNGRhZDVlNGU2NWJlMjk4OTgwOGRlMDQwMTlmNDcyIHJlbGVhc2UzMS1tYWludAorNzQyODEgN2MyM2YwYmNjYTg1Y2VjNTgzMDE2MTQyOWZkZmJjNWEzNWJhZDNjNSBsZWdhY3ktdHJ1bmsKKzc0MjgyIDhiNDhiMjgyZWJhOTM5NjBjMDRjYmM0YTVlZGY2MDI0ZWExZTc5YTYgcmVsZWFzZTI2LW1haW50Cis3NDI4MyA0YWUwNGUwZjY4NTAzOGU0ZDY5ZGQ5NmMyZjYxOTczODkxYWUzMWZjIHB5M2sKKzc0Mjg0IDc5Nzg5ZTg5ZmY3ODQ4NWEzZmQ3YzVmOGE2MGFjNjYzZmExOWRlZjggcmVsZWFzZTMxLW1haW50Cis3NDI4NSBkMjUzNzMyNjY3Mjk3NjM3NjhjMjUyZGE5OTE3YzNhZjJkOTA1NjM3IGxlZ2FjeS10cnVuaworNzQyODYgZjQyZTA3YWIzMjZlYzVhZDg5NjliZjU0N2M5ODc5NTRmN2Y5NWJlNSByZWxlYXNlMjYtbWFpbnQKKzc0Mjg3IDQ2ZjliZTI1MDkxMmY2MTM1ZDBlMDc0OGIwOTk4N2UzMGY2MTMxODEgcHkzaworNzQyODggY2ZiZWZkY2MyNmRiMmY1MmYyOTg3MGQwNmM5YTMwMGYyZGYwYTJjNiByZWxlYXNlMzEtbWFpbnQKKzc0Mjg5IGUxYWM1NGJiMDhlZDI5YzI5MzM1MWVlNTY1ZGUwZmUzZTA5ODQxZDcgcHkzaworNzQyOTAgMDhlY2E2ZThiMGJlZmJiMWM4ZGQzOTAwMzRjNDBmYmRmMjU2M2M0NSByZWxlYXNlMzEtbWFpbnQKKzc0MjkxIDQ2ZTQ2YTBlNjIyZTYwMmYwZTI5NGNlNWY1NmE1NWI0MmJhNGM3YjEgbGVnYWN5LXRydW5rCis3NDI5MiAwMDI5NDZiNTJmYzNlN2U3NjMyNDA2NmQ2NTUwZmRlYjQwNGJkMmYxIHJlbGVhc2UyNi1tYWludAorNzQyOTMgZDk5Y2FkZjBlNWYwYzk2MTQ3MjkxMjAzZjkwZWE0NDdjODZiM2JkNyBweTNrCis3NDI5NCBjZmE3ZTk0M2ZmYzNmZjAxOTRmNDc5ZGUzMGUwYTcxNjE3ZGFkYTYzIHJlbGVhc2UzMS1tYWludAorNzQyOTcgNTAyY2UyOGZlYmFhYjc0Y2QyNjQ1NWE5ZGEyNTVjNmUxYjQ0MjUwMiBweTNrCis3NDI5OCBmYTZmZDFlZDczNzg4M2E5N2MyYjg2ZTVmNGMwYWUzNDY2MWI1YTM5IHJlbGVhc2UzMS1tYWludAorNzQyOTkgZGQ0ZGE3NWViYzk3MTVkYjkzMzkyM2NmNTg3OTRmY2U1ZWZiZWU5MCByZWxlYXNlMjYtbWFpbnQKKzc0MzAwIDI3MWQzODJkY2FiZGZmYzJlZWYyNGMzYjVmYzlmZTVhOTgwYTU1ZDcgbGVnYWN5LXRydW5rCis3NDMwMSA2NThkZTg0MzgxZDdmMzdjNGYyZTdkYTU2ZTFjZDAyYzQzYzdmZDZkIHJlbGVhc2UzMS1tYWludAorNzQzMDIgNTM0NWUzYmM5ZTQxNjJiZmY1ZGQ4YTUyMDg1ZDNjZTExYTQwN2ZhNiBweTNrCis3NDMwMyBhMGUxZDYyN2I3MTgzNTU1MGRiNDIyODUzOWY5NjIwYzAxODJmMGU5IGxlZ2FjeS10cnVuaworNzQzMDQgMzQyNzdkYTM4ZTM4OGI3OWQ4ODQxN2IxYjg5N2MxZjVmYmRkZjU5MSByZWxlYXNlMjYtbWFpbnQKKzc0MzA1IGNkOWZhODFlYTQ4MDEzODk5MTgwYzlkZGFiMWNiNmM4YWFhNGMzMjYgcHkzaworNzQzMDYgODg0OGM0OWVkNWY1Nzc0NzQ4OWE0MGU0M2YzZTAxMjQ3ZTRjMmUyNiByZWxlYXNlMzEtbWFpbnQKKzc0MzA3IDJmYWU4MDk0NTBjZDExZjcxMGE2ZjdhNWUxZGQ5NjJhNWVmMjVkNGEgbGVnYWN5LXRydW5rCis3NDMwOCA2YTA1ZWM0OTNjZTllM2YxOGM2OWVkYzIzMDRjNzM1MjViOTY1YjVhIHJlbGVhc2UyNi1tYWludAorNzQzMDkgZTgwMjViODVhYjE4MjdjNjUwMzRjOWZjZjU4YTRiNzRmYmY2OThlNSBweTNrCis3NDMxMCAzZmYxNzI1ZjgzN2VhZTE2NmUwZDljNDdjMzQyNWEyNmRiZTMzMDU4IHJlbGVhc2UzMS1tYWludAorNzQzMTEgNWRlMTljNTAxMWNhOTM2NzQxMDkzNjY1ODlmNzhiYTc5ZWFkMjQxMCBweTNrCis3NDMxMiA1ZDg3NWZhZGY2M2Y1MzU4YzczYzY5YTljNTNkNmViODkyNjMxMzFkIGxlZ2FjeS10cnVuaworNzQzMTMgYjE3NzUxODdhYTMwZTczNzJlMTgzNzQ2NzljYTQwYjhhOTE2Y2FkMyBweTNrCis3NDMxNCAwODM4NmM3OWUzNGYwZmNkYzI3NDM5Y2JlMzE5ZDBjMzM4YjRjNzg0IHJlbGVhc2UyNi1tYWludAorNzQzMTUgZWIyMjQ0MjE5NDE5OTkyNWVlN2Y2MDZlMzk5NGM4M2RlOThiNTZhMSByZWxlYXNlMzEtbWFpbnQKKzc0MzE2IDlhNDNmYWM4NzYwYzJmOTNmOTcyYzAzNGM0ZTEwZDk0MTg2ZTJkYTMgcHkzaworNzQzMTcgYzhmNGMxMzJkNmRiMDRlOWE0M2U4MTc0Yzk1YzM3N2RlODkxOWY1NyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQzMTggNjQyNDg1ZGJmZmJhYTEwMzBmM2IxOTk4YmM4YzYwZjdjMDY3MWZiZiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQzMTkgYmQxYmNjZDhlMzQ0YjlmZGQ0M2NlMTM2NmE1NjJkMDgyNjNiZGE3MyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQzMjAgYmE4MDJjMGI1MzhhNzk2OTIzNzY2YjNlYWE4OTNhNmRjMTI4ODY0YyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQzMjEgZmNlYTdiYTRiMDM0ZGNiMjQ0MDgxNGVmYjliOGQwYmY4Y2I4MWJlMyBsZWdhY3ktdHJ1bmsKKzc0MzIyIDc1OTQyYmM3NGY3MTIzMTMzMmZjZTZiNmYyMzJlNTI0NGVmNTcwMDAgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzc0MzIzIDBjNGVlNjJkZjBlMTkwYmU2ZTBmMjhlYzE4NTMwYTkxZDkzNzE1OWYgbGVnYWN5LXRydW5rCis3NDMyNCAxOTJlMzQ0NGI4ODhmYTQ1MzFmNGYwODllOTMxYTE4NDNlN2NkOTlhIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDMyNSBlNTczM2Q1OGZkYjE1YTc4MDRhYzY5YTRlMTE5YTlhMWU0Mzc1NmE5IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDMyNiA1YTEzMGI3NTg1YjFjZTVjNTE1MjUxZDM4NmJlZmU1MDcwMTQ3NWJjIGxlZ2FjeS10cnVuaworNzQzMjcgNjVkMTY4MmRjZDVlMGU1OGIwZGFiMmMxNTFmMzlhNGJhNGQzNDNkNyByZWxlYXNlMjYtbWFpbnQKKzc0MzI4IDFiZTNkNDI3YWNhMjQ0NjZhMGJiMTBhYmNmNTJjNTllZGFjMmVkNDUgbGVnYWN5LXRydW5rCis3NDMyOSAwNmNlOWQ4NDY4YzJmMDY2OWU5ZTZiMGIxODRmODUxYWM2NWRlMzVjIHJlbGVhc2UyNi1tYWludAorNzQzMzAgN2YzZjZiNTVlNDdhMjhjN2ZjZTRkZjE1OWY5ODU2Y2IyMGU0YThhMiBweTNrCis3NDMzMSA5ZmRmMTgyZjE5YTkxM2QxMzkzNThiN2IyYmZjYmYxNzRlOWJiNmRiIHJlbGVhc2UzMS1tYWludAorNzQzMzIgOTNhOTZkNmRmZmI1ZTkzMmRhZTBjNTUwNmIwOWQ4ODcwOTNjNTY0ZiBsZWdhY3ktdHJ1bmsKKzc0MzMzIDdiNjZjZDAyZDYwYmE4MDFhNTA5ODc4YmZkYzI0YjY1N2U0NjE2NGUgbGVnYWN5LXRydW5rCis3NDMzNCAzMTU5NzI2ZDBlNjU5Y2M2ODViY2Y4ZmVhZjkyZGY0ZWIyYjkyOGYzIHB5M2sKKzc0MzM1IDRmMjA0ZWI3NmUwN2EyNmE2NjdmOTMwMmNkNDNmNGJlMDMzMDQwYTUgcHkzaworNzQzMzYgMmY2NDFlMzM3YzlmOTZhOTI5ZDQzYjg1NTk0NDJmZWYxZDRlOGEyMyBsZWdhY3ktdHJ1bmsKKzc0MzM3IDAwZmQ2Mjk3ZWJlN2IwZGY4ZTFhMDhiNmZiOTA4YjY3MmY1MmZjOTAgcmVsZWFzZTI2LW1haW50Cis3NDMzOCBmMTM2MDJhODRkYWFhZmQ2ZjJjMjE4MDY0MDc1OGUzZDUxZTU1NWI0IHB5M2sKKzc0MzM5IDMwODg3OWVjOTAyMzRkZTM1YzVjYmYwMTA4NGEwMDg0OTg1ODUxMDEgcmVsZWFzZTMxLW1haW50Cis3NDM0MCAxOWU3Yzk5NmU2N2FlYmU0ODNmYzQyMTZlNTQ1OThmYTk0YTQ3MjM3IHB5M2sKKzc0MzQxIGVmYTg4MTFiMjUwYTNjNjU5ZjVhYTU2MGQ5M2M0YTU3M2EyZjQ4MjAgcmVsZWFzZTMxLW1haW50Cis3NDM0OCA4NWMwZDhkODNjYmZmYjYyYWI4Mzg2MjUyMDI5YjZlOTkwMzQ1MmY5IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM0OSBiMDAyZTkyYTM2Zjc3NDY4ZjhmNjY4YmUxMGNmMDNlNTRhMDBlZWU4IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1MCA0MTJhODVjZTU4NDRhZDhkNmU5MDJiN2MwYTIyYjE2MTgwZTZjNTBlIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1MSA5NGQ4YzM0MWZiNDJmMjI0MGVjOTEyNjBjZWE4NWE4NzNhOThkNDYyIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1MiBjZDIwYTllZDg0ZTVhM2JmMTBkZmI0NjgyMjEyYzQzMDg3NTM1ZmU3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1MyAxMTI4NmI0NTNmY2ZmYjM5NTU3MzQyMTNjYTQxOGE2YjNkOWIwMjE3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1NCBlNGE2NzQ0Y2U0YTlkN2FmOTU3MzY2MDcwNTcxODUxMDU4MDYwYjI3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1NSBjYTZlOTA0NzBkOTZmZDNhY2MyNmYyNWVkMTg1ZDBhYzEzMzRkMWFhIGxlZ2FjeS10cnVuaworNzQzNTYgMzYxYTAzYWQzYzM3M2JjNWM3NTdmNmZlYzIxZjkyZjFlYTVkMjU1NSBweTNrCis3NDM1NyBiYmVhOTgxNDhlMTI2NjEwNDUxZTEzYjU0NGE2NGJiOTQ0M2Y0M2IzIHB5M2sKKzc0MzU4IDVjOGIyMjM4YTJmNTI0YzhkNzQ0NzE1MTVlMWUyZGIzOGMwMDY3ZDMgcmVsZWFzZTMxLW1haW50Cis3NDM2MCBlNWFlYmQwMzhmMGMyYWQyNWU1ZDZkMTU5MGQ2ZGE4Mzg2MGMzMzJiIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2MSAyYzY0ZTliZmIxYjY2NjVlNmJlYmY0YWI0MjZmNDE4NDVlMjVjZGQyIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2MiBiMDEzYjNjOGM5YzdmNWQ5ZWUzMGY1YjdhZDFmYjcyZjE4YWRmNzNiIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2MyBjMTllNzkwZDk0MmY3OTA5ZDY2YWNiYThlMjk2MDY3YzMyY2UwMDkwIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2NCAwMDI1ZTA3MmZlOTdhZDc5MmI3ZTVkYzFkNzFjYTZlM2QwYmY3ZDAxIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2NSAxMjNjOTVmZTA0YjYwODMwNTNkNjE4NmI0YTM1ODliM2U1NGU3MGJhIGxlZ2FjeS10cnVuaworNzQzNjYgZWY1NjUzNWY1MzU2MTgwOGU1MzE4MWU0M2Q3OWM3MDBkZTE5MmZjMiBweTNrCis3NDM2NyA0YTFhYjJkNzAzODU5YTRiOGM5ODA4MjVkNDUxMjIzOTBhNWJkMDkxIHJlbGVhc2UzMS1tYWludAorNzQzNjggOTg0OTg1ZWEyNGM0ZGNlMjk0OTZkNDQ5Mzg4MDE4NWU4NjhhYjU5MiBweTNrCis3NDM2OSA0YTliODU5MTY0OWZiZDZlNDQ0MWVlZGNiMGI2OGMyYjRhYzQ2MTc1IHJlbGVhc2UzMS1tYWludAorNzQzNzAgZTAwYjUwYTNkNDk5ZDVlMWQ0YTA0ZDAzYjBjNTIzOTA4M2RmZmEyZiByZWxlYXNlMzEtbWFpbnQKKzc0MzcxIDdiNDk1YzhmMmEyNDBlYTgwNzUwNGM1OGRjZGUxNzI4ODM0MTgxZTUgcmVsZWFzZTMxLW1haW50Cis3NDM3MiAxYWNkMDI3N2QyMjUzMGU1YzEyYjk5OTI1ZWZkMDlhNGNkN2YyOGI2IHJlbGVhc2UzMS1tYWludAorNzQzNzMgYTQ5MmIyYmM5NTFiNDM0ZTU3NTk5MTg5MzFlOGVjNjc4NzI1ODA4MCByZWxlYXNlMzEtbWFpbnQKKzc0Mzc0IDUwOTVhNTI3NmQ4YzI2NjcwY2IxMGUzNjU3YTg0ZWZlMjAyNGFhMzcgcmVsZWFzZTMxLW1haW50Cis3NDM3NSA1ZmJhYzA5YzBlOTFkYjJmYWI2NDRjOWUwZWI4NTdhYWRiODNmNWMzIHJlbGVhc2UzMS1tYWludAorNzQzNzYgNThjMTBjZjA0NjE2N2UxMDAxYWE1ZThlMDNjZDA4MTk3ZDkzMmViYyByZWxlYXNlMzEtbWFpbnQKKzc0Mzc3IGRhZDBhNTRmNWE1ODNlYjkzZDkzNGEzZDg2M2NlMGZkOWNiNGU0MGYgcmVsZWFzZTMxLW1haW50Cis3NDM3OCA1OWI2Yjg1NTdhMzMyOWYwYzYyMjBiNWZlOWUyZmZjMmJlMzBhZGYxIHJlbGVhc2UzMS1tYWludAorNzQzNzkgMTdlNzE0ODUyODdmNzFmMTZiMGU1MjQ1YTY1MDE5YWVhY2Q0NDVmOSByZWxlYXNlMzEtbWFpbnQKKzc0MzgwIDU0NmFhMTM0ZDc3MzdhMzA3MWVjNGFhYjU2ZmI1MTM5YjI2YjUyM2QgcmVsZWFzZTMxLW1haW50Cis3NDM4MSA3NzBhOTNjN2FiZmY3N2E3NzQwNDczZDhiYjQyZTUwZmViM2JiZDMwIHJlbGVhc2UzMS1tYWludAorNzQzODIgYzRkNmI3N2MzNDY4MTU0ZjZjZjE0NjkwMTU5OGNmMzdmMTczYzI4MiByZWxlYXNlMzEtbWFpbnQKKzc0MzgzIDEwOTQwYmNlZGM5OWU0Nzg1NWYzY2IzZTU5M2U2OTQxZDllYjVhNmEgcmVsZWFzZTMxLW1haW50Cis3NDM4NCAwYmIyMzIwNzhiOGNiODE1ZjA5ODM5MGMxYzExNzQ1OWQ3ODI2NzYxIHJlbGVhc2UzMS1tYWludAorNzQzODUgZDdmM2NkZjJiMDdmNzg5YTFhY2E2N2RiNjUzYmE5Y2NmODU0NmMwMCByZWxlYXNlMzEtbWFpbnQKKzc0Mzg2IDBmN2E2ZWIxODIyMzE3NGQ2NDY2NDNiNTZiOGIxNjY4MjlkOTE5NTIgcmVsZWFzZTMxLW1haW50Cis3NDM4NyA3ZWU3ZmRjZWEwZDcxNmZhOWFiZjNkMTg5NTVjNTFjYTgxNGJlMDE1IHJlbGVhc2UzMS1tYWludAorNzQzODggZWZlODA4YTVmNTllODg5N2I1NTYzOWI4ODVlZGFlODlmOTk4MzNhZSByZWxlYXNlMzEtbWFpbnQKKzc0Mzg5IDc0M2ZhMjgyZDc0ODEzODQ5OTAwNDQ4ZmFmMDZjZTdkM2Y3YTI0NWIgcmVsZWFzZTMxLW1haW50Cis3NDM5MCBjZTY2NDIyMThmZmVjMWE4Y2M2OTE0YzMwM2U2N2Q0NzQ5YTc5NjM1IHJlbGVhc2UzMS1tYWludAorNzQzOTEgMzRlYTU4OGFjM2M1ODgzY2E2MTNmNDYzZmY5NWViZjFmZTg4Y2YxYSByZWxlYXNlMzEtbWFpbnQKKzc0MzkyIDk0YzI4YmE2NTZiZTA3ZDQzZTNhMDZkM2M0MzhlNTAzOGQ1YjZhNzQgcmVsZWFzZTMxLW1haW50Cis3NDM5MyA2ODBhZDhlZWQzM2IyN2Q5MGExNjM0MjJlYzc0MzMwNjU4ZDYyMTM4IHJlbGVhc2UzMS1tYWludAorNzQzOTQgMTJmZWM3M2NiOGU1M2Q5NjA5MWEzYzM0YmRmYjEyMWFmYjQ4ZjE3MSByZWxlYXNlMzEtbWFpbnQKKzc0Mzk1IDZlMmJhMjM3NjgzM2I2YmYxYzg1YmZhNmQ0N2NiYWVkZDQzODQ4MzIgcmVsZWFzZTMxLW1haW50Cis3NDM5NiA3ZTUxNDE3MDQ2YWI4NzEwYjgwMGYyYzFiN2M5ZjMyMDZlZDkzZmY1IHJlbGVhc2UzMS1tYWludAorNzQzOTcgZmY2ZWVhMDE3YTdmNDY0MTg0MmIxZmYyODllNWVlOTMyNjY1NWFjMCByZWxlYXNlMzEtbWFpbnQKKzc0Mzk4IDU0MTRmZjczODllZTk4MWVkNzJlODA0ODMxNjViYjRlMGMzZmQ1Y2MgcHkzaworNzQzOTkgODdmZGYyNzk1YTdjZDQ0MzY4NDNhZTFkZDQwNzMyNjRjMDNhYjI1MSByZWxlYXNlMzEtbWFpbnQKKzc0NDAwIDlkNDA1ODZhNmFmY2RlMDFlZmNmYjZmYTk1NjM0Y2MwMGRhY2NlZjUgcmVsZWFzZTMxLW1haW50Cis3NDQwMSBmNzI0MzE5OWQwYjFjY2IxMmRlYWY2NThkNWRlMWIxNWNmMzc5MjIyIHJlbGVhc2UzMS1tYWludAorNzQ0MDIgNGQzOGU1MWU3Y2RjOWE5Nzk0M2Y2Nzg1M2ZjMjllMTEwZDE5M2I3ZCByZWxlYXNlMzEtbWFpbnQKKzc0NDAzIDAwNTBiNTcxMWZhYTZiN2I4ZWJhZWVlYzdkNzYxZGY1ZDNjYTQ4MmQgcHkzaworNzQ0MDQgZTA1MzIyZWZjYTg1N2E5ZjUxYzBhNGM1ODFlNmEwYzI4ZmRiNjMzOCBsZWdhY3ktdHJ1bmsKKzc0NDA1IGJlMzQ1MzFjNmQwYjc0OWY4NTk5Zjg1ZWQwMzRkZThlY2QwYTMyOTQgcHkzaworNzQ0MDYgNTZlOGMyMmRmNzFmMzE2Njk3NjVkMjJjNDM5MmQwZWRlYzY4ZTY2NiByZWxlYXNlMzEtbWFpbnQKKzc0NDA3IDkxZTQwZWI0MTk1NmEwNDVkMTAyMTI3MWZlNWNmMjRmNTIxN2QxN2YgcmVsZWFzZTMxLW1haW50Cis3NDQwOCBhMjY3YzYwNDQ2NWYzNzRkNjM4OTRiOTU3ODUxOTM2NGI0MjJjNThlIHJlbGVhc2UzMS1tYWludAorNzQ0MDkgMDE0ODQxN2UxMzAxZDg5M2Q4ZDQ1MTNlNTE3MGMyZTMyOTRkOWRiZCByZWxlYXNlMzEtbWFpbnQKKzc0NDEwIGJlMzQzYWY0OTA5OTk1MzU1MjI1MDZlYzNkNDNlNDJmOWJkZTk2MTMgcmVsZWFzZTMxLW1haW50Cis3NDQxMSBhZjExMGE0OGQxNTQ3ZmFhNmU0ZGUyNTBlNWE2ODE5ZGE2ODcwNGJlIGxlZ2FjeS10cnVuaworNzQ0MTIgNzg1ZWMzNDQ3NmJhZmE1ODU2NmU3NzY3NDNlOGE5OWZmMTQ3ODdhYyBweTNrCis3NDQxMyBlM2Q1MTMxOWI5ZDBlYzgzN2NjMTM3NmRjNTcxOTgwZmNkNzRhNjgwIHJlbGVhc2UzMS1tYWludAorNzQ0MTQgMTIyNGFhM2ZiNmEwZDQ2NzY4MWFjYjBhYjdkZDcwZGY3M2NkMjNiNiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MTUgN2M4ZjQ4MTE2MGMyMmUwNzEyYjVlY2EzMWZlOGYxOTgwZGM1YjU1ZCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MTcgZjJhMTJmNTI1OWU3ZWRkMjIzYzc1MGUwNWVmNTYxNjJkNmE1MzQ1ZSByZWxlYXNlMzEtbWFpbnQKKzc0NDE4IGY4ZGI0OTNkZDg0ZmI4MzBkOWFjYjQwY2IzNDRhZTYwZmYyOWUzYjkgcmVsZWFzZTMxLW1haW50Cis3NDQyMCBmYWY4YTEwMDk5MGQ2NmNkNTEwMWQ0ODdiYmY5YWU4MDdkMDJlMjNiIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQyMSAzYTM1ZTMzYjA3MWJkNGVkMjc2YTFhMGQ5ZDAwNTYwMmYzYTJiNDFkIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQyMiA5YmM5NTg4ZWI2NGMxOTEwNjgyM2FmYTVmN2YyNjY5YWJjYWM1YjhiIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQyMyAzODFjNmY5Yjc0YWVhZTZjYzNmYTVkZmFhOWI2OGMwOTNjZWU0NWYwIHJlbGVhc2UzMS1tYWludAorNzQ0MjQgNDk2MjkxMDM3NTgyMDk2NjJlYjM5NjM3ODRjMWNjMDQ1NWVmODE4NCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MjUgZmI1ODU3ZjkwM2ZlOTM3NWFiZGEzM2FjMDU0Nzc5ZDFjYTgzZWU0YyByZWxlYXNlMzEtbWFpbnQKKzc0NDI2IGZiZjhiNzkxY2U4MTFiNDkwM2M0MjBiNTVmODhjZDUwOTQyNjJmODIgbGVnYWN5LXRydW5rCis3NDQyNyAzNWVmYjEwNTRlYzZjZWNhNzIwMTdhNTg3MjYzY2I2YTkyNTczNDBiIHJlbGVhc2UzMS1tYWludAorNzQ0MjggYTFhZDE5MmY4ZGY1NjQzNzM5MGMyYWQ4OGNkMTMyZDk2MGIwNjIwZCByZWxlYXNlMzEtbWFpbnQKKzc0NDI5IDk3NTIyZTI3YjA1ZDBjODIzOGRkNzRmNTU3Zjk0YzM1YTZiMjZjZDUgbGVnYWN5LXRydW5rCis3NDQzMCA5YTZiZWIxYTkzOTc1NzNkZGY5ZDhkOThiZDE2NGFjNWNjMjQ4ODYxIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQzMSBlZWFmZDg3MTY0MTBhNmM0ZGMzYjc5OGEzM2UzZDU3NGEzNjdlMDQ1IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQzMiA2YWMxNDc4ZDliMGU2NjE5OGY5ZmM2Nzk3NTIwYjlhZjk1NTkyZmRiIHJlbGVhc2UyNi1tYWludAorNzQ0MzMgNTE1MmI1MzY2MTJlNDg3OGZkMDBkNTc2N2E1YTcyMWE0Nzc4YzMxNyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MzQgMDFkYjQxMGYyZjIwN2ZmMDA1ZTU5YTdiOTNkM2JiMTAyMzhkMWE3ZiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MzUgODk5MjdmNWU4M2Q2Zjc5NDUxMjY5MjU2YTM1YzVkMTljMjk3OGNhOSBweTNrCis3NDQzNiBkNWE2MmRkOTA3ODk4ODc4MDNiOTUwMTcwY2RkMzY3ODQ2ODY1YzJmIHJlbGVhc2UzMS1tYWludAorNzQ0MzcgYTVlNmYzZmYyZTJmNjQ3OTlmOGMwNmMwZGI4ZjE3ZTI3ZmI0OWQwMCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MzggNDlhNDI4NjY5Nzg4ZDY3OGQ1MjZjNjY3ZjZmZjM5YTY2NjE2YjY2MiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MzkgNDI3NTlhNmVlOThhYzVkMzZhYzIwNmQxMDhjNTEwMzI5M2QzOGFmNyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0NDAgMWZjODkwMTRiZDgzZGIwOGI1ZTVhOWJlOGQ3MDg1Y2JiMWIwMDFjOSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0NDEgZmUyODY0NWE2MTIyNmY4MDU1MjE4MzdmNTgyNGI4Y2YyZDc0NmU2NyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0NDIgYmViMTJiYjc3OTFiZjc3OTMzYTI3N2YyNzRkZTc0Nzg5M2Q5NmU1OSByZWxlYXNlMjYtbWFpbnQKKzc0NDQzIDFmYjdlMmY3ZjBiYjRlMjRjYmVhOGEzZDYzNzUzMDdiZTk2Njg1YWQgcHkzaworNzQ0NDQgNWVhM2Q0Njc1NjRhNTJhMWU5MTgzYjZlY2RiMjhiNmM1MDJiZDAwNiByZWxlYXNlMzEtbWFpbnQKKzc0NDQ1IDUxZTVhNDE0YjNjMjQ3ZjJmNzVhNTM4MGRhMWZiYzg5MDJhMTVjYzUgbGVnYWN5LXRydW5rCis3NDQ0NiBhMGY4MGRjMDlkZmUyMjg5ZjhjNDUyMTYzZDY3YWYyOGEyZDc5MTdlIGxlZ2FjeS10cnVuaworNzQ0NDcgYzZkMzI3NjZlOTRjODBiNDZhMmM2ODNkNjZmMjY2NGRmN2YxNmM4OSBsZWdhY3ktdHJ1bmsKKzc0NDQ4IGI3YTU3MWQ0YWFhN2UxZjRhNGJiNmY3YTUwNzgyOGRhZmE3OTkzZjEgbGVnYWN5LXRydW5rCis3NDQ0OSBhZTgxN2ZhNGU2MDU2NmVhY2I0Mjg2N2Y5NDJmOWJiY2UyNzEzYTFlIGxlZ2FjeS10cnVuaworNzQ0NTAgZTRhODNlOTE1MjFhMzY5ZGM4ZDgyNzYzYjM1YjQ4ODhjMTM4MDAxNyBweTNrCis3NDQ1MSBkNzI0Y2E4YzU4MjM0N2IzYTEwNDA3ZmQ0NmM1MmVmMmI3ZGRiMzE0IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1MiA0MWIwMWJiOTA2ZTM5NjljZGZhYWM2NTIwZWE1OGE0YWVkNGJkZWY4IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1MyBkNzE0MGJiYzY0NzNiZTQ5YjdiNjI5ODE2ZTZmOTlhNjc4MjNhNTQ5IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1NCBkNDRlM2FhNDJhNWJjNzgxNzI2MzdmYWM2ODU2MGI0NjgzMDg5NWUwIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1NSAwMDIwODcxODdiMmZmNjcwZmMwNzEzNjc2MGFiMGQ5MzdhNGQ0ODM0IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1NiBmOTFjMWQyODgzNDM0ODk1NjZkYWE3ZDdhZGU1ZDJkMjZjZWU2ODJiIHJlbGVhc2UyNi1tYWludAorNzQ0NTcgMTEzYzBiODZmZDc0OWE3ZmNiZjg2YWM5OWM2MDYxOGM2NGZlOWY0ZSBsZWdhY3ktdHJ1bmsKKzc0NDU4IGJjMWM0MDMwNTRlMWM3N2ZhNzIwZWE3ODk2Y2Q5N2EzNzg0NTcyZjkgcmVsZWFzZTI2LW1haW50Cis3NDQ1OSAzMDk2M2NmYjY5ZmQ4MjBiYjgwZDZkM2U1ZjhiNDQ0ZDI3ODUyZWU5IHB5M2sKKzc0NDYwIDRjNTFjNGJmZmIyMWE3MGY5MWU3ZjkxMGUzMTlkYjBiNzM2OGFmYTAgcmVsZWFzZTMxLW1haW50Cis3NDQ2MSA2NDNjNmM3Njg0YjE2NWM4ZjI2ODk4YTBiMjI0MTFkYTM4ZGMxMzI2IHB5M2sKKzc0NDYyIDIyNzdlYmNlZGE0M2E2YzE4NWEzZWRhOTgxMDE3ZmI4ZmU3MDU0NDkgcmVsZWFzZTI2LW1haW50Cis3NDQ2MyAxMzc3YThjMjY3OTIyNTc2NDExZTNlYjllYTMzZDk2OTNkNDk1MTFlIGxlZ2FjeS10cnVuaworNzQ0NjQgMWUyODc3MDI2NDM1ZWJkYjNhZWMyZGNiYWZjZmQ5YzdmNmVmMDI0MyBsZWdhY3ktdHJ1bmsKKzc0NDY1IDAwNTMwMjg3YmRiNTExMzFlOTU2NmU2ZTYwZDlkZWFjYTJiNWJkNzggbGVnYWN5LXRydW5rCis3NDQ2NiAzODQzMzRkOGI5ODc1YmU2MjgxMjkwYzk0YjI1ZmQzYjAxOWUxMGYyIHB5M2sKKzc0NDY3IDBmY2Y0MGExNDBlNWVkYmMwOTc2NTU2ZDMyMGI4NGY2YzU5NzI2YmMgbGVnYWN5LXRydW5rCis3NDQ2OCAxOWZjMGQwNWZhN2E0OWJkNWQzZGVlOTg3YzQwZmMyYWRhN2FlMmRmIHB5M2sKKzc0NDY5IGZiN2Q1ZWU5MDhhNTAyYTk2NTBiYmZkN2U0ZWZjZWRkOTMxNmQzMzYgcHkzaworNzQ0NzAgNmFjMmE2NGU4MjZiZTQ1NDQ4NjJmMjM5MWJmMzE5NGRlYzZlZTBhMCByZWxlYXNlMzEtbWFpbnQKKzc0NDcxIDEyMjdlN2NjMWQ5YjE4Y2RlODgyMmI0MjU1ZmUyNTc4MWZjNDVhMDggbGVnYWN5LXRydW5rCis3NDQ3MiBjNjMwYmYwNWNlMzhkZmUyZTcyMDkwNTY0YTRiNjUzMzQ0MjhjNjljIGxlZ2FjeS10cnVuaworNzQ0NzMgYmVjMzQwNWUwNzNmMzQyZjk4ODEyYmYwNzYzZDgwNTE3ZTdkZmNhNSBweTNrCis3NDQ3NCA2YWZhNWJiZGMzNzU0YjY0NjVmODQ4MjdlOGYzOWY0ZDAxOGI1Y2Q0IHB5M2sKKzc0NDc1IGQ3ZTFkMzk3OGRkNjAwNTNiZThmMDc1MzI1MDY5NTBiZmVmMjlkOWUgbGVnYWN5LXRydW5rCis3NDQ3NiBlNTIwMDllMjIwMTdkNTFhNDBjZGU4ZWI4MDE4NTYwN2MzN2E3ODM4IHB5M2sKKzc0NDc3IDZkYTZlZGZhNjI5NmMyYmQwYTlmY2UyMzc1ZjIwNDRhYmY1ZWNiZjkgbGVnYWN5LXRydW5rCis3NDQ3OCA0OTVlZWZmM2I5ZmYwZGJiZjljNGY0MDljMThhNTM5Y2MzZjE4N2Y5IHB5M2sKKzc0NDc5IDc0NmYxMGUwNjI0ZTlmM2U0NzkyOTg5MWViZDg2NTljNDgzNDg1M2UgbGVnYWN5LXRydW5rCis3NDQ4MCA4YjljMGY1NzNhYjI5YzQxYzZjNWZkY2NhODJhMWZlMGZmNTM1NWFmIHJlbGVhc2UzMS1tYWludAorNzQ0ODEgNWVmNmJjMDA1MjBhYjAxOGQ4N2FhOTdiM2U3MDM3MDEzNDJiZjgxOSByZWxlYXNlMzEtbWFpbnQKKzc0NDgyIGRhMjFiNDgwZmYwNTIzNTU2YmM3OGU5OWVmNzkyMTMxZGU1NzUxNjEgcHkzaworNzQ0ODMgZGVmZmU2YWE0M2QxMTRlOGJmNWVlMTM5MGY4ZDhlOTIxZDM0YzgyMiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODQgMzRjNmY2ZDI2OTc2ZDNhNjlmZTQ2ZmJhOWNlMWU3NGQzNDA0NWNkMyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODUgNDI4NjMyYTU5MGFkYWNlM2I4N2E0NzBhZWI1ZTMzNjFiODZjZWE2YiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODYgNzg3NWRlYWM0MTBjOWMzYmY0MDQxZGU3ZDlkZmNiYWY4N2VkMDRhNiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODcgZjZlMTdhZWI5MmFiYzg4ZTBkNTRiY2UzOGQxNmM4NjUwYjlkOTMwNSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODggNDJiMjU2Nzk0ZTZjNTEyMTliZmZkZjFmMTA0YjIwZGRhZGJjZTU5ZCBsZWdhY3ktdHJ1bmsKKzc0NDg5IDRkMDg4MThiNmM0YTFkODg3M2IwZDgzYWQ2YmNiM2YyNGExNTFlNTkgcHkzaworNzQ0OTAgMjE3YmNiODYwM2FhZDE1YzkzNzU0OGY1Zjc4ZDQxY2I2MTVlMjcxYiBsZWdhY3ktdHJ1bmsKKzc0NDkxIDBiMDdjMDNhNWYzYzM2ODQ0MDE1MDc1MDQxZjBhMGI0ZDEwYTFhZGMgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzc0NDkyIDRlYWMxMzJmYWM5NGI4NGYyYmI0MTMzN2FiYTJmYjliZWY0N2I0ZTUgbGVnYWN5LXRydW5rCis3NDQ5MyAzODRmOTY1ZTEyY2RmMWQ4ODlhYWYwZTk4MjQyMDdiNTA5YTMzOGE4IGxlZ2FjeS10cnVuaworNzQ0OTQgNmIwODhkY2YyNWY4Yzg5YmFhODhkOTAxNmI4ZGU4ZWZkNTE5NTQzOSBweTNrCis3NDQ5NSAyYWFmN2QxNDFiZDBmZWQ5NmY5YTI3YmQ5Nzg0YjY5ODcwODY0NjMxIGxlZ2FjeS10cnVuaworNzQ0OTYgMjgyMWU1ZTc2ZTgyOTFjMjc4ZmE4ZDlkMDVmOWNkNmRlMThmYWU5MCBweTNrCis3NDQ5NyBiNTYzYWIwMTcxZDkyMzhiMWRjOGU1YmQ5NTM4YWEwMzI1YmNjOTJlIHJlbGVhc2UyNi1tYWludAorNzQ0OTggZTNhMGQ0YjBkN2FhMDIwOTJjMzdjMjk0NDM3NTRlZGI5OTlhNzVlNyByZWxlYXNlMjYtbWFpbnQKKzc0NDk5IGM4N2FhY2NjNzBiNjE4MDAwMjdmMjlmYWVmM2FiOGI5MDU0MzM5MDIgcmVsZWFzZTMxLW1haW50Cis3NDUwMCBkNDI4YmMxODRlMWZiZGMwOWFjODQ4YWMwMjc5YzBmZDc3NDJlMDE0IHJlbGVhc2UzMS1tYWludAorNzQ1MDEgZWIxMDA5OTM2NmVhNTIyNjA0MGE2NDBhZDlhNGFlY2JhYjRlZTIyNiBsZWdhY3ktdHJ1bmsKKzc0NTAyIDI0Yzk1M2YzZjhkYWYyYzk1OTQ3YmI4MDM3ZGJiYjA0NGFjMzBjMjMgcmVsZWFzZTI2LW1haW50Cis3NDUwMyBhZTJmNzVhYTNmYWE5NDQ0MWFmOTJhNjhmOWMzNjJjNmFkYzA2Y2Q4IGxlZ2FjeS10cnVuaworNzQ1MDQgOTUxNjYzYzAzMGI0OGM4Y2FiZTI3NWNiZmYwOTE5YjYzNThhMTgzMSBweTNrCis3NDUwNSAzYmYwM2FkNGE2YTA2Zjg1ZjQ2Njc1MjM5NmQ3MGZkYzZhMWFlZTlhIHJlbGVhc2UyNi1tYWludAorNzQ1MDYgZDg3NDA2NDZhMDMxY2NjZGFjNmIzNGRjMzc5MDMzNjJmODIwNzIyNiByZWxlYXNlMzEtbWFpbnQKKzc0NTA3IDczZjQzMmNkODJkZThjNzBlOGU5NzgzNjQzYTM4NzM0MmExY2Q3ZDYgbGVnYWN5LXRydW5rCis3NDUwOCBhZDkzMDA2N2MxMjRmYmNjY2M5MmY0M2M0NTVhYzEzY2ZlOGFiNzYwIGxlZ2FjeS10cnVuaworNzQ1MDkgMzdmMmYzNjdhZDhiYmM1NzVjNTU2NjcwZmIyNzFkMzI4ZTQzNGU4MCBsZWdhY3ktdHJ1bmsKKzc0NTEwIGNkMTgxYTZmNGRkNzM3NTExYTI4MDgxOTZkY2FjZjRhZTQzNjFiMDkgbGVnYWN5LXRydW5rCis3NDUxMSBmODAxMmZkZGE2ZDNkZTBlNTExMzI5OWNkOWFmZGRmMjRkZWNjZDY5IGxlZ2FjeS10cnVuaworNzQ1MTIgZjc0NjZhYzFkZDcyNWY3Zjg1YjNmYjQ4M2JlM2MxMTBhMTk0Mzc2YiBweTNrCis3NDUxMyAyY2ZiZGU4Y2JmODg2MTg3MzUwNzFhNTQ3ZWQ2YmZjNWJkMDRjZTFlIGxlZ2FjeS10cnVuaworNzQ1MTQgMDMxZTQzMTY0Yjc2OGQxOWU3NTY4NGY0ZTI4Y2U5YmM5Y2IzNThmYSByZWxlYXNlMjYtbWFpbnQKKzc0NTE1IGUwMWExOTkwNzE3MTExODc1YzQ2MzE5MDM2MDc3OTAzMzE4ZmJkNDggcmVsZWFzZTMwLW1haW50Cis3NDUxNiBmNWU3MDExZmJmZjEyMDVmOWI0NWViODc1NTY4NzE3MTNlODFlNjUwIHJlbGVhc2UzMS1tYWludAorNzQ1MTcgNjUwZGYwZWMwYzEyZjZmMThiNWEyMGI5ZjNhOWI5NmIxYzk4NzQ5ZSBsZWdhY3ktdHJ1bmsKKzc0NTE4IDNhYmJkNzIwOWJlODUwMDVkYmMzY2VhNDcyMTI1Y2U4MDRkNWVlOWUgcHkzaworNzQ1MTkgY2QwYzhhYzljYjQ5NDMxN2Y2MjBiYzE3ZWM2YTRlOWQzZmYwZDZjOSBsZWdhY3ktdHJ1bmsKKzc0NTIxIGZlZmQ5ZWI3YTgyMmRjZmUyOGJjNjE2NWRiYjlhMGE4ZWVmNDhlYmUgcHkzaworNzQ1MjIgYzdjZDI3ZjY2NWQxZGRjNzcyZGMwZDQzYjE4YWNlYjhmMGExODQxNyBsZWdhY3ktdHJ1bmsKKzc0NTIzIGU0NzFkNmQzMjcyNGFhNmUyMzA1MWZmOTU2MTYzMGNiMjhjYTRhYTQgbGVnYWN5LXRydW5rCis3NDUyNCBlMjFjNGM1MjdlNjYxZWExYTk0YjAzMGVlODNiMmYwNTZjNzA5NWRlIGxlZ2FjeS10cnVuaworNzQ1MjYgOTc0NTUzZmI1OWRjYjMzY2I1MjgwZjY0ZmM4YWY2MjIwZjU2OTI5OCBsZWdhY3ktdHJ1bmsKKzc0NTI3IDAyZDQwODlmMzFkZGNjYzc3ZTFiOWUyNTA0MGJlNDQ4MmJiNmRhODAgcmVsZWFzZTI2LW1haW50Cis3NDUyOCAzOGI5N2MzZTk4YmRhYTU2YWE4N2JkNTBkMTc1ZWNjOGY0NTEyNjA1IHB5M2sKKzc0NTI5IDg2ZWY3NGM0YWQ5NzdiMzMwNTIyNjczZmJiM2E4OTRiNWU0MTQ2ZGYgcHkzaworNzQ1MzAgMGU1NWZjY2IxOWVjNTVkMzAzZGY0MmRmNGY0NmZiYjAxYWI4NjMzNiByZWxlYXNlMzEtbWFpbnQKKzc0NTMxIDQ4NzFmODFkNzEzMjAwNGMzZjhkMzM4YTFjYTBiZTNkMGM4NTgxNTYgbGVnYWN5LXRydW5rCis3NDUzMiA1OTRlMTk3ZWQ2M2Q1MmVmYzk5YWQ2N2NjYmM4YThkZTZjNGU3YjhkIHB5M2sKKzc0NTMzIGYzNDA4NzYwZDQ2ZTVjNWFhNjkyZThjZmQ5M2VhMGY5NDYzNzNjMWQgbGVnYWN5LXRydW5rCis3NDUzNCBiYzE2NzA5MmM5OGNiOGVjMTE1OTg4ZWMwYWFiN2IwOGIxMmYzZjZjIHJlbGVhc2UyNi1tYWludAorNzQ1MzUgMTNmMTlmYjkzZjhlY2Q3YWJjZTIyNjBjMDFmYTU2NTM3YmQyODMwZCBweTNrCis3NDUzNiBhODg5NDFlMmJmMjczZDI5Y2Y4NDRhMGQyOTYyY2RhYmYxZjliOGM2IHJlbGVhc2UzMS1tYWludAorNzQ1MzcgMTU0NWNmNzM3MmFmOTY4MTc1MzkyMGQxYWM1MmRmZTc4Zjc5ZmRmYyBsZWdhY3ktdHJ1bmsKKzc0NTM4IDVkN2Y2MGJmZmU4ZmM1YzY0N2IwNGVlNTRlYmRjZmVkNGFkMzkwMmIgcmVsZWFzZTI2LW1haW50Cis3NDUzOSBjNGQ1ODFlNzA5Y2E1NGFmMzUxMjZiYTBhM2U3ZWExMWQ5MzM0ZDc5IHJlbGVhc2UyNi1tYWludAorNzQ1NDAgY2ZhN2FlNzE3YTkwYjZjOWYxZjVlYWE5YjJiNTY3Y2UzNWMzNjc1ZSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ1NDEgYzQwM2I2NmQ5MmIwZmEyM2JhOTI5MzljNjQxOTlhNzcyNGNiYjgyMiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ1NDIgOWEwOTY5YjZmOGU1ZTYzMjZkMmI1ZGQzNDNjYjY1ZDVkYzZkMjczYSBsZWdhY3ktdHJ1bmsKKzc0NTQzIGM0ZDhjYmFmZDhjODkwNjFmYjkyNGNmOGNhYzc5OWUxYTUwN2RiZTYgbGVnYWN5LXRydW5rCis3NDU0NCA2NzVhM2MxODI0ZjQwNTkxMDhhMTA0ZTk1ZmZjNjAxZTJkMTZkNmNkIGxlZ2FjeS10cnVuaworNzQ1NDUgMDkxODMxMmEyZDdiOWFiMTgyYTFiNDQ1Yjk5NTNlOGM0OTMwNTJiOCBsZWdhY3ktdHJ1bmsKKzc0NTQ2IGZmY2ZjOTkwZTRjYTE5Y2E3ODdkNGU0NjQ0MmFiNmRjNTNiYzZmOWMgbGVnYWN5LXRydW5rCis3NDU0NyA5MmUzODU4Y2NhNzBhZTZjYTRhNjU3YTA0MmVhY2M1YTRlNjViNGQyIGxlZ2FjeS10cnVuaworNzQ1NDggZWM4ZDI1ZTA1MDBhODhjNzgyZDZlMDA0YTIwZmY2MWQwNWE4ZDVhMCBsZWdhY3ktdHJ1bmsKKzc0NTQ5IGRiODZkM2NjMWU2YjkxNWYyOGQ3YTE1MTkwNjE2MmI0OWQ5MWYwYzMgbGVnYWN5LXRydW5rCis3NDU1MCBiNjAxMzRlZTVlYjQ1YzNmYmU2NTEyM2E0MmEyZDZlMGYzZWQwMjAwIGxlZ2FjeS10cnVuaworNzQ1NTEgZjc1ZjI3OWJjZDM0MDQ5ZDQyYzUxMTQzMjI1MWFkOTM0NDg1MTgwYyBweTNrCis3NDU1MiBkOTFhZmYyMDZkZmRlMDMwYmU5NmE1Y2FkNzQ3NWZkMTVkMDU5MjFkIHJlbGVhc2UzMS1tYWludAorNzQ1NTMgZDAzZTUyOGVmOTQ2YWE3YzRlOTM0N2EyZmEzNmNkMDljYjFjMWM0NSBsZWdhY3ktdHJ1bmsKKzc0NTU0IDQ4ZGY0MDdiNjA2ODI3NzA1ZGIyYzg2ZTE3MGEwNzIwMTRiNjlmNjIgbGVnYWN5LXRydW5rCis3NDU1NSAxNGM1ZmFiM2VjYmY0NjZjNGU2NGMxZDhlOTZjMzAzZjJkOTBlMjA1IGxlZ2FjeS10cnVuaworNzQ1NTYgODAwNThkZmU0NjlkOWM3N2ViYjJhMDNhYTU1ZTVkMGQxNjdjMmI0MiBsZWdhY3ktdHJ1bmsKKzc0NTU4IGFlMDBhM2E4MDQ3MzkzMzg4Njk1MjFjY2IxNGU5Yzk0YTBkN2Q5OGMgbGVnYWN5LXRydW5rCis3NDU1OSAwZDliNTU2YTQzNzgwNjliODI0YzRmZDg0YTQ1YjAxZDczMzZlYjI0IHB5M2sKKzc0NTYwIDczNTMyMmFhNzFkMWFlNmUyNTFhMDlhY2JjNjE5MjEzOGIwYWI2ZDYgcHkzaworNzQ1NjEgYjY1ZWJlZDA2ZWIwNDU5ZGExNzRkNTcyZjMxMGQ3NGJhZWFkYTcxMSBweTNrCis3NDU2MiBiODlmNTgyZWU3OGE4YjgwYTQ1NjVkNTJmMjNlZmExNjdjOTkxYmFmIHB5M2sKKzc0NTYzIGUyMTMwM2NhYzEyMDVjNDU5M2QyNjllODIwNTI5OTVmZjdkZDQ4YjAgcHkzaworNzQ1NjQgZjI5YjU5YTQ5MjQ2MWUzMWUxYzczNDAyZjY4NTE0MzEyMzIxYWEzMCBsZWdhY3ktdHJ1bmsKKzc0NTY1IDFmMWI0YzAzZTg5MmFhMDQ1ODhkYjVhYjkwNWYzYjkyYjY3NTI0NmUgcmVsZWFzZTI2LW1haW50Cis3NDU2NiBkMjEwNzdlNjM5ZmRkMWJkNGVhZjA1YmEwM2E1Mzk5YTcxOGNjYmEyIHB5M2sKKzc0NTY3IDA5NGE2ZjE1ODY0MTc0MjAxYWFhNzM3ODQ0YzE5YmI4ZmFmMjk3ZDIgcmVsZWFzZTMxLW1haW50Cis3NDU2OSBiNmJmMmE1ZjQ5ZGRkZDBiNzdlZjlkM2QwMzEwMjZkMjNjZmU3YTVhIGxlZ2FjeS10cnVuaworNzQ1NzAgMDI5NTBkNTgwODA4YmExZWVjNTU2ZTUwMzQxMDI2OWQ0ZDA5MzFlNCBsZWdhY3ktdHJ1bmsKKzc0NTcxIDVmOWUxMzA2NmQzNjY3NGEyMzYyNjI4NjE4YjMwMTMwNzcyOTYxZGYgbGVnYWN5LXRydW5rCis3NDU3MiAzM2NlNGM1YmMyZTU2MGNjYmE0NDZlMmY1YTFhZTg0YWYyNTczMTIxIHJlbGVhc2UyNi1tYWludAorNzQ1NzMgOWE3OGUzZDkwNjE3MWM3MjE4YTFhMTZkZjk3MmEzMDUzNmI4M2ZiMyBweTNrCis3NDU3NCA0NzRhOGUwNmU5NjYxYTAyYTUyZDliNzgwNDg0NGM3MTBkYzBlMzQ3IHJlbGVhc2UzMS1tYWludAorNzQ1NzUgNjA2ZTk3Y2FlYjc3MzZmNWJhYWVkY2Y1ZGYxZmFjZTEyNzMyZDk4NSBsZWdhY3ktdHJ1bmsKKzc0NTc2IGJmYjIzMzc0NTFlOWFjNWJlZDFkNzZiYjY3OGY5NjM2MTFhNTI5NDUgcmVsZWFzZTI2LW1haW50Cis3NDU3NyA2ZGVjYTczYmQ1MTJkZmNjMzhjMTQ1YjQ2MWE2MzljZGIzYTkzMTZlIHB5M2sKKzc0NTc4IDA0OGE5MTM4MWJkODBhZTFjMGM5YTFkZmZkMTMyMzk5MWNlNzIzMmYgbGVnYWN5LXRydW5rCis3NDU3OSA3ZGUyMDdkZDQ3Mzk5MjY0OTE0NjI1Nzc0NjgxMWIxN2M3MjI3ZjgxIHJlbGVhc2UyNi1tYWludAorNzQ1ODAgYTRlYmFiODQ1ZjcyNDFlZjQyM2M3NDM0NTI2NDU1NzIxYTA5YTVlOCBweTNrCis3NDU4MSBkNDAzN2ZiODU2ZDIxMDhhYWU4OWY5ZjQwMmY4NjFlNDNkY2E4ZmVkIGxlZ2FjeS10cnVuaworNzQ1ODIgMWI5MTI3ODcxNzIzMjA1ODk1MGE3ZmFhYTFiMTg2NzA0MTBkNzhmOCBweTNrCis3NDU4MyBlOWJhYTJkZThiYjRlY2RiYjAwNTVjM2U1MDNkOWQxYjhiZTIxN2ZlIHJlbGVhc2UzMS1tYWludAorNzQ1ODQgZTRjMmNiZDNiZjkzODMzY2YwN2NiZTExOWVjMjI2ZDNkZjZkNzQ5MyBweTNrCis3NDU4NSA2OGM5MmVkOGQ5NjA0ZDMwYTUzMjA3MWNhZjE3OGYyZjg2ZGUzN2M5IHB5M2sKKzc0NTg2IGQ4MjgwMzY0YzU4MTRmODQxNWU1YTM0YTVkYWM3YmI3MGUwZTczOGUgcmVsZWFzZTMxLW1haW50Cis3NDU4NyAxZjc3MmY4ZmVjOTIyYmY1NDdjNmI5ZGY1ZjllMzY0OWQzMDkwNzU2IHB5M2sKKzc0NTg4IDZmYThhODExOGRmMGMzZmRiY2RkN2Y0YjZiMWMwMjAwOTE5ZTU5N2YgbGVnYWN5LXRydW5rCis3NDU4OSBhZWRjNGVjMmZlMjQwMDc3NzcxYjExYTFmY2E3YTMyMGNjYmNmZmIwIHB5M2sKKzc0NTkwIGI0ZmM4Y2JmZTFlZTkxZjBjNGVmODg1NzI2YjdhMWI4NjQ5OTBkYWUgbGVnYWN5LXRydW5rCis3NDU5MSAwODA5MGI1ZTk2YzJmY2U3NzIwZTc2M2RlNjI0MzhhNWFiYjFlMWQ2IHB5M2sKKzc0NTkyIDY5NjE2ZTIyODcyOGUzZDljYTVlYTcyODY3Y2I1NzMxZWZmNmNmMzggcHkzaworNzQ1OTMgNThlNjMxOTdkNGVhYjMxMThkZmI4OWQzZDUxNjhjYjUwMjc4NDIyOSBweTNrCis3NDU5NCAzNjhiZmMxOGE3YTEzOWFiOTVkNjZhZTJmZDA1YzVmYmE1NTRhZThjIHB5M2sKKzc0NTk1IGJmNTAwZDg4NTc5NjZhYWY1ODdiM2EyYzUzZDY3YmNjYTc4NDZiZTkgcHkzaworNzQ1OTYgNTYwMDA4ZDA5OGRkYzcxOWUyMDMzMWM0ZWQ2M2EyOTQxNDIxYjcyNyBweTNrCis3NDU5NyA4NmZhNDNjNmQ1N2M2NjFmYjhjNDBlYTU2NDlmY2FiNjdjNDM3NzgxIHB5M2sKKzc0NTk4IDgwMWFhNTJiMTIxNzA1OThmNzg4ZmM0ZWMzMDA4MjRmYWI1MTFjYjMgcHkzaworNzQ1OTkgOTlkYzIyZWYxZGYwNDg4MGI4YmZmM2FhNTY5MTQwNTdiN2YzMDY1YiBweTNrCis3NDYwMCAzOWJjYmYzMTZkYmE2N2I3OTAwN2YzZDQyNzFkYTE0N2M2OGYzYTc0IHJlbGVhc2UyNi1tYWludAorNzQ2MDEgOTQyNDlkMTQyNWEzZmRiNjc0Y2ExZGMzZWRjMjU2MzcwZjljMjIyNCBweTNrCis3NDYwMiAwMjcwMDdiNDNmMTY1NjBkZjJiODQzMTFkYTc5M2IwYzc3NDU5YTQ1IHB5M2sKKzc0NjAzIDc4Yjg2ZjhiZjVjNDU5YzE3NWRlYWY4NWZjNGU2M2QzZmZhMmE5MDAgbGVnYWN5LXRydW5rCis3NDYwNCA0M2E2NjY3NjhmNDc0YjU2MWZjNjRiZmFmNzJlYmNlZjMzNjg1OWIwIGxlZ2FjeS10cnVuaworNzQ2MDUgMzVhMTYyM2MxMDIzOTA4OGIwMjZjOTUxNjE5OWEwNGJkMjAyNjMwNSBweTNrCis3NDYwNiBlODE0NTNiYjA3ODkzZjdlNjRhNjQ5NjRmMTg1MjUwM2JmM2EwOWYzIHJlbGVhc2UzMS1tYWludAorNzQ2MDcgMDVhZDllYzYzMDg3NzQ5MzYzOTk2ODhkZmExMjIzZDE2MTg3NWQ2MyByZWxlYXNlMjYtbWFpbnQKKzc0NjA4IGFjZjIxNWJiZTcwMmUwNTU3MGQ0Y2MyY2MzZDQ4NzhkZTNmNzcyMDkgbGVnYWN5LXRydW5rCis3NDYwOSAxMWI0NTUzNWExYjNlNjE5Y2U2ZGI3ZmFhZjI2OThkOWYyM2I4NWQyIHB5M2sKKzc0NjExIDg0OTkyOGQ3NWQ2ZTM5ODhlMWM4NWM5YWI2YjQ2Nzc0OWNlNGRkMzYgcHkzaworNzQ2MTMgMDdjMjM4MDZjY2M2YzJlZGJlMDZjYjQyOTNmN2YxZTk1NTZjODdhZSBweTNrCis3NDYxNCBiYTViMjY4M2MwNjQwYzYwMTMyYjU4OWY0ZTE1MGRkODc0MDlhYzNmIGxlZ2FjeS10cnVuaworNzQ2MTUgZTViNDYzYTYxZWUyNjllYThjZjA5NDM2NDcyMjBkOTM2YTk3NjEwZiBweTNrCis3NDYxNiBlZDdkYmM5MjJkMDVjOWY0NWUxN2Y3MDk3ODc4MzFhNjczODM3Yjc5IGxlZ2FjeS10cnVuaworNzQ2MTcgZTE1N2NlYjU0YTQzOGIxMTY1OThlOTRmZGE0MTRhY2JjZDI4YTQzYiBsZWdhY3ktdHJ1bmsKKzc0NjE4IGI3NGE3YTNlNDFjNTcyZGYzOTgwNzJmNWZmNDllNTgxYzYxMjc4MTEgbGVnYWN5LXRydW5rCis3NDYxOSBkNTEyY2JiODVhZTAwMWQzOTZjOGQ5ZGQ0NjUxYmFjNzY2MzcyOGVjIHB5M2sKKzc0NjIwIDgxOGJhODk4NTI4MTA0MzVlMTY4MzU5MjQxZDIxZmJjZTMzMWUwMjUgcHkzaworNzQ2MjEgNjZmNDhiYzk0ODE0ODc1MWJhYTc4MzU1ZmE3NjIwMDM4ZTJhMTgzOCBsZWdhY3ktdHJ1bmsKKzc0NjIyIGFjNzU1YzU2NjEzNmQ1MTMwNzYxMzJmY2IzMDhhZGU1YTY5OGM1NmIgcHkzaworNzQ2MjMgMDA4ODg0NGQwMTA5YTRmN2I3M2Y3ZTcyOWJhYzk0YjdiZGVmY2NjYSBweTNrCis3NDYyNCBhZmJiMmIyZmY2Zjc4MTBkOTVlYTc0NDhhZGYxMmQ3OGE1OTkxNThhIHJlbGVhc2UzMS1tYWludAorNzQ2MjUgNWQyYjY2ZTAxOTY4YTNmYWFlM2YxYTI0NWI3NDM3ZjIwZmMxOGM3YSBsZWdhY3ktdHJ1bmsKKzc0NjI3IGZkOGE1ODkwMDhhYzIwZTQ1MTg3NWUxNThlOTk4ODczMzU4NDY0ZDUgcHkzaworNzQ2MjggYTQ3YWExMTBmY2FjZjg0YWVkNDRkMjg5ZmYyMjY1YTM3OTk2YzQzNyBweTNrCis3NDYyOSA2YjgyYmEzMDRhN2VkZTg3NmEwYjc3ZWE3ZmVjM2UyMGRhMWIzYWM1IHB5M2sKKzc0NjMwIDEwNmVlNGViNTk3MDVkY2VmZjNmYjRiYzRlMjJlOTVhYmVhYTg5OTIgcHkzaworNzQ2MzEgOWZmYThmODg3NzUwOTQ4N2VlMjU4YTJkY2NkZTJlZjk0YmY0ZDk3YSBsZWdhY3ktdHJ1bmsKKzc0NjMyIGUwY2VmMDIzMzAyMDNlNDZiMjE4MTk2MDVmZDYxYjQ2M2FiZGIwZjIgbGVnYWN5LXRydW5rCis3NDYzMyBiYjkwMDUxYjQzNGMwM2VlNzMzYmZiYmI5NmRmMDhmNjg1YTVhOWVhIGxlZ2FjeS10cnVuaworNzQ2MzQgNjM3MWUyZDBkZWEwMDkxNmY4YWY4NWRhMWQ2NzRlYjgyOWYyMDhjZSBweTNrCis3NDYzNSBkNTVjOWEwNjMyNThhZTc5M2I2NDY3ODM3MWQyNDQ0NWVlMmEzMWRmIGxlZ2FjeS10cnVuaworNzQ2MzYgZWI2NzNhNDAxYjlkNTUwODYxYjUwMmFmNDJhOTFjNjA0NTZmZmI1MiBsZWdhY3ktdHJ1bmsKKzc0NjM3IDk1ZTU3MzhjYjMwOTgxODE4YTViYzgzZmJkZTdjNTQ4YThjMDQ3ZDYgbGVnYWN5LXRydW5rCis3NDYzOCA3NmFlYmM1ZWE0NWNiYWQzNjE1ZGY1ZmQwMGExZmRkNDQzZWFjN2YzIHB5M2sKKzc0NjM5IDNiOWU3NTMxMWU0MzBhMzY2Zjk5YjgwZjdiOWY5YmQyZDk2YmQ0MzggcHkzaworNzQ2NDAgY2U3ZTAwMzg5OTZmNGI0ZjgzOWQ5YzViNDkwODBmNmI5ZDg1NWNiZiBsZWdhY3ktdHJ1bmsKKzc0NjQxIDFmMDNmMjkyMGM2MTcxZTg3NTU4OTE1NWU0YzExYTJhZTliNzlhNGYgcHkzaworNzQ2NDIgNzdhYjkzY2EwNjVlMzY3YWYxZjE0OTE5NWU3Yzk2ODA2OTQxZGE4ZiByZWxlYXNlMzEtbWFpbnQKKzc0NjQzIDdkMzllMjEzYjc1NjM2N2Y4YTFjODJhZDI3NzBjMzcwZjdlNTYzYjMgbGVnYWN5LXRydW5rCis3NDY0NCA2MWRiYzFkMWI4MDRkNjI4NGY2ZmI0MjNlMTFjMjU3ZjAzMTcwZDA1IGxlZ2FjeS10cnVuaworNzQ2NDUgYTA3ZjMwZDdkMGYxY2VmMDg1NTEzYWE0YzIxODYyZDlmMzg3ZDAyMiBweTNrCis3NDY0NiAyNWIxM2Y3ODJmZmU4NDhhMWQzZTAyMTM1OTRmMzk3YzEyMjM3NDk5IHB5M2sKKzc0NjQ3IGM1MTcyMWQ2NDQ1MWE0OTJiMmZiOGNkODk0ZDY1NzFmZmI4YWJkMWEgbGVnYWN5LXRydW5rCis3NDY0OCA2M2I2YTkxYWQ5ZDk3ZGM4ODhlZDkwZGFlNjRmNjUwYTM5NDlkNWQ1IHB5M2sKKzc0NjQ5IDE3ZTgzZjAxNjllODFmZjFkYWUzMDg5YWMxY2VlZWY5YjA5YWRjMzEgcHkzaworNzQ2NTAgNjc1OGJmMjAwMmRhYjdjMTY3YjRhNzc5MmI4YjBkOTkxN2NjMzkwZCBsZWdhY3ktdHJ1bmsKKzc0NjUxIDhhOGUzYzE2NjhhMDk5NzQ0MWUzMWFkYzcxY2M3ZmQzODg3M2Q5ODEgcHkzaworNzQ2NTIgMTUwMWExMzYwY2U0ZTQ4NTc1YmU0N2M0ZjA1ZjdmYWRmZTFiZTAwOCBsZWdhY3ktdHJ1bmsKKzc0NjUzIDIwYmZjMWQzNTk4OWMwNDUwOTc1NjY5ZDZmMThjMzAwZjE5NDZjMTcgbGVnYWN5LXRydW5rCis3NDY1NCBjMjE2NWJlMDAxNzFhNjgzOTQzYjVhNGVhZmZmNTMwN2MxZThhZjY4IHB5M2sKKzc0NjU1IDc3ZGIyNWM3NTI2YTEyOWU0YzJjZTA0OTcwZDllNmFlNmJjNTU4YTggbGVnYWN5LXRydW5rCis3NDY1NiBlODQ0MTg1MDc5MGY4NmRkODEyZjRhMzIwZDc0Y2E2MWRiOWM1YjhkIGxlZ2FjeS10cnVuaworNzQ2NTcgNzU4MzdjZmU5ZmZiZjlhZmFkY2U2OTY1Mzk0MDQzZjZlMzE1MjdlYSByZWxlYXNlMjYtbWFpbnQKKzc0NjU4IGQ1NjdkOTYzY2IzNzA0YThjMzhkNzg5ZjE1MzAzMzY1ZDc3YTAyYTAgcHkzaworNzQ2NTkgMGY2ZGMyZTZmMDkxZTQxMjI3MWQ1OTQwNTJlMjcwNjQyMGVkMzJiNSBweTNrCis3NDY2MCAzYjBiMzcwMTRhYWViMTc5YzcxYjZlN2JjYmZlMWIxMzU2ODZiMzNjIHJlbGVhc2UyNi1tYWludAorNzQ2NjEgNGRkYzA1OThkZjc5ZjYzMDVhNzI1YTMwM2E5OGE0MmU0ZjNjNGQ3OSBweTNrCis3NDY2MiAyNjZkN2RjM2Q2NTUxMDNjYTRhNmI2ZjA0MDc1YmE4YWQ5NDE2ZmUxIHJlbGVhc2UzMS1tYWludAorNzQ2NjMgZmZiYjhmZmYzNTIwZWY4YTBiMWYxMzgxM2U0NTBiMTMyN2NhNzE2MSByZWxlYXNlMzEtbWFpbnQKKzc0NjY0IDZmN2U3MTkyZmViYjBmZDE5YTgxNjIxZTM4ZDRlMDE3YWU4YzhjNGEgcHkzaworNzQ2NjUgNzgzNzA1YjA0MjU4MGUzMTAwNTg4ZGY1ZTNiZWJiMTk2ZDFhM2M2OSByZWxlYXNlMzEtbWFpbnQKKzc0NjY2IGQxOTExNDQ5MjI4NjAwYmE2ZjlkYzM4YjBjMjgyNWFhYTExN2I1MDIgbGVnYWN5LXRydW5rCis3NDY2NyAxZDQzODEyYWFkYjYxODg3MTcwMTIwYzBlYjY4NTljOGY2YzJiNGRlIGxlZ2FjeS10cnVuaworNzQ2NjggM2M3YzliODFlMzYxNDQ0NTFkYWU0NzQyY2Y3YTdiN2Q0YmIxNzM3YyByZWxlYXNlMjYtbWFpbnQKKzc0NjY5IDYyMzE0N2EyYjViMWFiNDM3N2NjMTdjZTNiMTg0ZGNiYzFkMmMwYjcgcHkzaworNzQ2NzAgZGM2MmRkMzMyNmVkMGJlMjNmMjA2NzkwYTY0Y2RjMzIzZjlkNTI5NyByZWxlYXNlMzEtbWFpbnQKKzc0NjcxIDkwNjQ5MGFiNmFmZmI0ZWVkZGMzOWM5NTJkNTMzZjczZjdkODg0ZWUgbGVnYWN5LXRydW5rCis3NDY3MiAzNDQ5NmJlZDkzNjVmNWRkNWJiOTc5OWVjZDA5MDcyZDkzMzU1ZWI1IGxlZ2FjeS10cnVuaworNzQ2NzMgNWQ5NzYxZTQ0NTU1ODdmNWE3MzE4MTFhMjZmODhhOGZkMzdlODFiNiBsZWdhY3ktdHJ1bmsKKzc0Njc0IGQ2MjdiMGZmMWQxN2U1ZWU0Yjg2N2FhNjY3MzRiOTI5OTZlNTM5NjIgcmVsZWFzZTI2LW1haW50Cis3NDY3NSAxOTdjMmFlNTFjYzYxMmE5NTZkM2E0Y2VkN2ZlZDU0NTBjYzIyNzY4IHB5M2sKKzc0Njc2IDFmNGYzNDJiZmUyZTgxZGU3OGE5MzlkMzM0N2Y5ODBlZTQ3OGFiMmMgcmVsZWFzZTMxLW1haW50Cis3NDY3NyAyMGI5YWYxZjAwYzg3NTNjYTg4ZWJiNzJiMDMyYjRjMjhjZTlkYWQxIGxlZ2FjeS10cnVuaworNzQ2NzggOTU5MDBkYmQ1ZGQzM2Y1MjEyNjFhNTVkYTZlYzVjN2RhMTk3MjFiNyByZWxlYXNlMjYtbWFpbnQKKzc0Njc5IGExNTJjY2NhNTM4OTYyZWVlNDgyNTVmNTc3YmJjMmY0OTEzNmFmMTQgcHkzaworNzQ2ODAgNGYwOTg4MGJlYmJiYTZjYjNkMjMxMmEzNzFlOGFjNTE4OGFlOGQxZCByZWxlYXNlMzEtbWFpbnQKKzc0NjgxIDg5OWJiY2JhZjlhNmVhODUxNWM4YmZiMTJhMDFkNjA4OWNkZjk5MzAgcmVsZWFzZTI2LW1haW50Cis3NDY4MiBkYjE1YzdhZjAxNGZhMDg3MjU1NjM2MzlmZmYyYTE4MTRmN2FiMTFlIHB5M2sKKzc0NjgzIDBjNDk0ZTU3ODdkZjZiZDBkMDk3MTUzNWQ2YjJmNGRmY2NlYzVjZDEgcmVsZWFzZTMxLW1haW50Cis3NDY4NCAzNGE3YTkxNTgzNzIzYjU4ZjkzOTIyMzBhZDZmYzE2OTU3NGJlYjQ2IGxlZ2FjeS10cnVuaworNzQ2ODUgN2U3NjlmZGRlNDM5ZmZjODA1ZDQxM2NlY2JhNTllOGJlYmRmMmNlNiByZWxlYXNlMjYtbWFpbnQKKzc0Njg2IDllN2I3ODMyZmQ0NTEyNzhhN2VmYzk3MjI4OGIxZWM1MTIxYWIzMDIgcmVsZWFzZTI2LW1haW50Cis3NDY4NyA5MmYxNmM4Nzg4OWRhMGY0MmRlM2VhYmE2NmZiZjNkMGZlMjFjYzc5IHB5M2sKKzc0Njg4IDY1NzJkMmVmYzhiMjlhYWFmMjgwZDg0Y2QzNWFjMjdkZTQ0MGE2MDQgcmVsZWFzZTMxLW1haW50Cis3NDY4OSBjNjY0NTVhNDE2ZWM3YmZkOTM0MDEwMmM4MTcxZmYxN2ZmYmJlOGZkIGxlZ2FjeS10cnVuaworNzQ2OTAgNTNjNGVmZDE3MGMwNTE3ZjE2MWE1YjA3ODM4NmY3OTMwMzEyNmJlZiByZWxlYXNlMjYtbWFpbnQKKzc0NjkxIDc1MDAwOTZiZjFhMDdlYjA2NGM1ODhkODdjMjRjZmIwZmY1Njk4NDQgcHkzaworNzQ2OTIgODY5MDFjYWU2YjY0ODNmOWEyZDU2ZWEzZWUzNDA2YTc1YjMyNzk0NSByZWxlYXNlMzEtbWFpbnQKKzc0NjkzIGQzMGEzZDU3NzE2NGViY2RhODJhZDJiYWY4NjkzMDUwMDg4YTVmNmQgbGVnYWN5LXRydW5rCis3NDY5NCBhNzBlNzJlZmMyYWQ2OWNkYjk4YTM2ZmRjZTIzMzgwMzcxMDExMzZhIHJlbGVhc2UyNi1tYWludAorNzQ2OTUgNWUxMTA4NTQ1ZTc4NzRhNDljMTc3NDNkZTNkYTQ3NGJkMmM1Zjg4YyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ2OTYgZWQyYzVlMDA3NDExZDA5NmQ5MzgzNGExZWFlZGM2MTE2YmIyYWUyNSBweTNrCis3NDY5NyA0ODAzZTc2ZjIwYzU2ZmU5ZTk5YzliNWJiNDI5ODhhZTU1MjcwYmZmIHJlbGVhc2UzMS1tYWludAorNzQ2OTggNzkwYzAxOWY2NDAzODg3MzAzMDkwODJiZmY1NWRjNzczNWQyYWY0OSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ2OTkgZGM3MjE3Y2I3M2I3YjNiZjI3MGNmZjNhODBjYzQ0YmZmN2Y3YjdiYSBsZWdhY3ktdHJ1bmsKKzc0NzAxIGY2NDU3MGQwZjcxZDlkYmQ3MDA1MDY0YTM0NjQ0Nzg1NjRlMGM2NWYgbGVnYWN5LXRydW5rCis3NDcwMiAzN2Y1ZDE3ODViYjNmZThjMjczOTY1ZWZiMzAzYzhiNzYyNmJjZmM5IGxlZ2FjeS10cnVuaworNzQ3MDMgMzAwZGEzY2NmOWZjM2Y3MTRmMWQ1OTgxNWFmYjY0MWIxODY0MzI5YSBweTNrCis3NDcwNCAwZjczMzNhY2E0NTUzMjMxMGM2ZjU3ODM0MjMwZDA0M2VkYTJjZWQ3IGxlZ2FjeS10cnVuaworNzQ3MDUgZTg5NWVmODJjMDg2Y2NiODNiZDE2NTQzNGJkY2U0YzkwNjAyNTA4MCByZWxlYXNlMjYtbWFpbnQKKzc0NzA2IDhhOGQ0NjdjODljY2VhMDRiMTdkODI3ZWQ4OGRhMjY4ZDkzOGI0ZjEgcHkzaworNzQ3MDcgMGRkMGIwZGU1ZTMxZjAxYjY0N2M5NzI0MmE5OTI5OWJmM2YyZTE3YSByZWxlYXNlMzEtbWFpbnQKKzc0NzA4IGQ0MTAyNDU5MzkzMWY2OWFhNzY3MzQ4Y2JiNTRlOWFjNWU0NWI3YWMgbGVnYWN5LXRydW5rCis3NDcwOSA1ZjVlYTc0N2UzMWExYWZkOWRlZWI1ZjNkNGE2YmNkYTZjMjRmNmRkIHB5M2sKKzc0NzEwIGNlYjc1ODE5NTM3NzE2YzVhYTdlNTNlYzk3YTQ4ZDA0ZDdlZjNhYzMgcmVsZWFzZTMxLW1haW50Cis3NDcxMSA2NmEyZGUwZDQyOGU2NWRiNGU2NTc4ZDA4NDRmMDE0OWFhNGI4ZThmIHJlbGVhc2UyNi1tYWludAorNzQ3MTIgNmZlOWRmYjEzOWMzMWM3NTQyODBhMTMwMTEwZmM0ZmM2M2MxM2ZkNSByZWxlYXNlMjYtbWFpbnQKKzc0NzEzIDFkMWQyZGI0NTZkODZlMjY3YzA1NDBlMmRkOGY2ZDUyYWEwOGFhMmIgcHkzaworNzQ3MTQgZGU2MjdjZmVlZDE0NjZjN2M5MjFlYjI0YzI2NDdkOTc4Yzk2YTllMyByZWxlYXNlMzEtbWFpbnQKKzc0NzE1IGZkMzRmZmM4ZjgwNDJmM2U3NmI4ZDI5MTgwNDMwOGRmZjUyYjgyN2MgbGVnYWN5LXRydW5rCis3NDcxNyA5MWRjNjMyMjcyMmRmOGIyYWM4Y2MyZDU0ODE1YzkwZjlkOGE3OTllIHJlbGVhc2UyNi1tYWludAorNzQ3MTggZmM5YTAwNzk5Nzk1YzRkMDQzYmFmZGQ4MzAwMzUxMjgxZmIzMGQ0NiByZWxlYXNlMjYtbWFpbnQKKzc0NzE5IGUyZmEwNjA1MDhkYTA1M2M1NzQzZTJkNTE3NzJjMzlmYTU2OTAyMjcgcmVsZWFzZTMxLW1haW50Cis3NDcyMCBkZDZhOWJjMzk5NDYzZjA2MmVkYzgwNzExOWVmMDA0ZGQ0ZGUzNDQxIHJlbGVhc2UzMS1tYWludAorNzQ3MjEgZTA0MDlmMDM4MjJmYjMwZjdkZmE4NTk4MzQ5OTRhMTkyODEwN2RiMCBsZWdhY3ktdHJ1bmsKKzc0NzIzIDQwZmQ4ZmQ5NmQ5NmNkYTFjZTdjODI2NWQwNzU5NmZmMzA4ODY0NjUgbGVnYWN5LXRydW5rCis3NDcyNCAzMmU4NWQ1MGM1MmRiY2I0M2E5NzFiZmRkODdiYTNjZjU5MzU1MzZiIHJlbGVhc2UyNi1tYWludAorNzQ3MjUgMGJjNzU5ZjZkZWQ1YzhmYmVhYTRlOTAwOWExZWIyMTNmZmI4ZDhiNSBweTNrCis3NDcyNiBlMDE3OGI4YWVhZjA3OThmYjZjNDM2NGJhYmY1ZjMzYzM0YjhhYTE2IHJlbGVhc2UzMS1tYWludAorNzQ3MjcgOTMxYWY2NjExYWU5Y2U0NTRlNzFjNWZlMmJmNWFjNmQzMDE1ZTQxMCBsZWdhY3ktdHJ1bmsKKzc0NzI4IDY3ZGU0MmNhMGEyNmE3MDQxYmY0MjZmYWRhNzY2ZDY3MTlmYjlkZjkgbGVnYWN5LXRydW5rCis3NDcyOSA0YjYzOWY1YjdkM2ViZWUwYTBhZWU0MWFjODJkZGY0NWMwZDYwNzRhIHJlbGVhc2UyNi1tYWludAorNzQ3MzAgNmZhOTQ2ZDA3NWY0YWMzNDcwOTg3YmQwMTE4YjI3YmM2YTMwMjgyYyBweTNrCis3NDczMSBkNWZjNTE4OTE5OTdkYWVmOThjMzA1MGFkNjVlNWYzMzUxMmI1ZWQyIHJlbGVhc2UzMS1tYWludAorNzQ3MzIgZTFlZmNhNjFlZTRlZDlmOTM1NjkyMTU2ZGFlMzRkM2JkNTdhZjc0NiByZWxlYXNlMjYtbWFpbnQKKzc0NzMzIDVkZWM4YTEyZTQ1NWFlOThlNzAyYTFkOTEzOWQzNzJmN2ExMzI2NmYgbGVnYWN5LXRydW5rCis3NDczNCA4ZjZjZjM5Yzk2ZGQ2MjM2MDMwMTBkMzg1ZGMzNjM1Njg4NDdkMTM4IGxlZ2FjeS10cnVuaworNzQ3MzUgMDBkNmNiNjI1NjY3ZjM3MTRiNGFkYjc0YWE4YmZlMmI5MTJjMDg1OCByZWxlYXNlMjYtbWFpbnQKKzc0NzM3IGFiN2ZkNGJjMzgyOGY4Y2UwNzY5NTg3MTM5ODJhYWVjOGI2NmQ3ZTUgbGVnYWN5LXRydW5rCis3NDczOCAyNWE2MTdjYTgzZTIzOTI1NDc0MDc0OTQzNjM5MTRiMTY0ZDg0MjBlIHB5M2sKKzc0NzM5IDVkMTUyOTZhMmE0ZTFjNzViZDVlYzdjOWNmZDU0NjhhYzA2YjFlOGMgbGVnYWN5LXRydW5rCis3NDc0MCA4MzVmYzg1NzdkYzc5MGUyZWU0NWVjNTI5OGEzM2YyZThjMTk0ZWIyIHB5M2sKKzc0NzQxIDdmMmE4Nzk0Mzk5YTFlNjBjNDA5ZjM3NDVlNDVjNWJjMmYzYTM5OTQgcHkzaworNzQ3NDIgMGY2ZGIwMDJiM2ExZmVjOTk4OTMyZDA2ZWRhNTc2ZjE0ZTZjN2QyZCByZWxlYXNlMzEtbWFpbnQKKzc0NzQzIDk1ODBiYmJiNTUyZTEzYTAxMTBkMmM4YjZkMWI1MmU1MWRiNjFmYTcgcHkzaworNzQ3NDQgNmFmZmQ2ZGRhMjI5ZDE0NmM4NjIzODcxYWQ0ZjQ5OGNjOTJkNDU2OSBweTNrCis3NDc0NSA3ZTZmNjE0YTZhZDE4YzJjZjJhY2ExYmQ5NWE3NGNhMTY3NzJlNmIzIHB5M2sKKzc0NzQ2IGQ0ZTNhZjM0M2UzMjBhOTI5OTk5ZjEzNmRmZWUzNjk4MTkxYWI5NTkgcHkzaworNzQ3NDcgM2ZiMWMxZmJlMjZjYWVmNGQ0ZDU0NGQ0MjNhYzk2MzM3MDNhYWQ1NCByZWxlYXNlMzEtbWFpbnQKKzc0NzQ4IDYyMjUwMjFiZGMzNmIxODA5YzRhOGU0MmYwNTEzZDM3M2E5MjE3ODcgcHkzaworNzQ3NDkgOTJkYWE5YzQxZDU2MWRkMDFkZGU2NDY2YzAyNWRjZmRhODVkYjhhYSBweTNrCis3NDc1MCBlY2QyMjg1MGQyMDFjYTRiZjI3NzQxMmQ2N2QxMTU5Y2M5MmEwMTE3IGxlZ2FjeS10cnVuaworNzQ3NTEgNTFiYWFkMjhmZTdhMTQxZWQ0ZDgwMTRmYWIxMmEzOTFkOWNjY2QzNSBweTNrCis3NDc1MiA2YmYyNTM5ZDNiYWE0MjFlMTliNjg0MDFlNmRjNjYyYjQ3MGQyZDQyIHJlbGVhc2UyNi1tYWludAorNzQ3NTMgZDlhNjY5MDVmMDNlOTVjMjA4ODJiN2VjNGY4YTIxMTU1NGQ0ZWExMCByZWxlYXNlMzEtbWFpbnQKKzc0NzU0IDM5YmUzZWY4MmQyMzM2ZTMyNzNmMGQ1MmQwNjNjMzBmMWQ3NzU4NDcgbGVnYWN5LXRydW5rCis3NDc1NSA1MTExZDMyOTk3NDE2MGM5ZGMzNWRiNWFkYmEyZGUwNmI0NDE5ODc5IHB5M2sKKzc0NzU2IDNkZjk5MTRlZmM4NGUzOTM4YzI4NGMxYWFhYzhkYzkzNTA4MmFjNTYgcmVsZWFzZTMxLW1haW50Cis3NDc1NyAyYzllYzRlN2Q4YzIxMGI3NzI3NmE1OGE2YThmYjgzNjM0ZjBjMmVhIGxlZ2FjeS10cnVuaworNzQ3NTggZmFkMDI1MTMyNGQ3YWExNDczMDhkZTRmNDgxMzg1ZGMwNWUzM2U0YyByZWxlYXNlMjYtbWFpbnQKKzc0NzU5IGZmZjU5YjBhZGQ5OGE1NjE1NzRlNzY0MGYzMzEwN2Q4MWVmMzMxZGQgcHkzaworNzQ3NjAgMDc4MWFjZmRjOTQ1ZDkxZWJjZDNhMDkyN2Q3Yzg0ODM2MzY0OTU0ZiBweTNrCis3NDc2MSA4YmM0YzhjYWM3ZDcyMmZiYjZkZDFkOTllZTVjMzM5ZTQyMzU0OTc0IHJlbGVhc2UzMS1tYWludAorNzQ3NjIgN2Q5Y2M0YmNkNzc2MGU1NDFmZTRiY2M4NDA5YjkxZmE2ODJhZDkxZiBweTNrCis3NDc2MyBkMGJkYjE5MzBkNDllNGUyYTkzODM5NTA5M2VhODA0ZjgwYjAyYzcyIHB5M2sKKzc0NzY0IGRkMDI3OTE2NjZlMDViODA0ZDQ3ZmNhNDE3YTA2OGQxNDg1NjhlODggcHkzaworNzQ3NjUgMjI5MzBhZjRkZGY3MzRmYzliYTViZWY4MTNhNjQ1N2FjYjVhZWNkMSBweTNrCis3NDc2NiA5MTE5NDY3YWE4NGU4MjhlMzQ5NzZiYWE3MWNkZGU1NTQ3MzkwZjRmIHJlbGVhc2UzMS1tYWludAorNzQ3NjcgZjNhMzAwODNmZDk2NGZjMjUyN2FkNGMwZWQ1MTU5M2MyY2NhNWM2ZiByZWxlYXNlMzEtbWFpbnQKKzc0NzY4IDNjNTdkMjZiNDBjNDY3YmE2NmRhZTYyMDcwMTE5MjBhY2UyYjc4NGIgcmVsZWFzZTMxLW1haW50Cis3NDc2OSA2NTk0MDY2ZTUwNDE2OTQxODM3NWRkOTA4MjExN2M0NTlkNmM4NDcyIGxlZ2FjeS10cnVuaworNzQ3NzAgZjQ0ZjQ2ZmU4ZGE1MmUzODBjYjEwOWE4M2ZjNWNkZWNjNTdhNzA4MSByZWxlYXNlMjYtbWFpbnQKKzc0NzcxIGQ3YWU4YjA3MzllNDdhZTY0ZDg3NTIxNzMzOGIxZDhkM2FhMGFlZjUgcHkzaworNzQ3NzIgMzE2OTIxY2M5MDRhNWRiMmU1NTlhNzM2NGQ3ZDMwZDU0MzY2ODMyOSByZWxlYXNlMzEtbWFpbnQKKzc0NzczIDBjMGE2Y2ZkNGJlMjIwYzg1MDhhZDE5YzllYzRjYjZlYzhkYjBiODMgbGVnYWN5LXRydW5rCis3NDc3NCBhYWE2YjcyNGE0ZmNlNDYxMmVjODI4YjNkNGQwNTk5ZTYyN2VlMjNiIHJlbGVhc2UyNi1tYWludAorNzQ3NzUgNDNkYTUzZTUwMmUxNWRjNDRhZGEzZTNkZjg3Yjg2NGEzZDQzNTNjOCBweTNrCis3NDc3NiA4MzkzYTkwMjE2YjM4NmM0M2RmNDIyMTBjZTViNzFjZGFkOTA5NGQ3IHJlbGVhc2UzMS1tYWludAorNzQ3NzcgYmI1ZmMxNWIwMzRjZTNhOTQxYmE5YzhmNjVkNzI4NjhhMjA3YWQwMyByZWxlYXNlMzEtbWFpbnQKKzc0Nzc4IDFhMzlhNGRkMjc3YzQ5NzQ3YjAwMDRjZGI0MTAyZmRmNTBkZGU3MTMgcmVsZWFzZTI2LW1haW50Cis3NDc3OSA5YWNlODYyOTliYjhiZjRiZTE1OTcyYjQ1ZjQxZDkzZWFiYWY5MjM5IGxlZ2FjeS10cnVuaworNzQ3ODAgZThkNjgxYzQ0OGQ3MmRkYTY0YTJmNzk4ZDIyZWZlNGQ4MWE0YmVhZiBsZWdhY3ktdHJ1bmsKKzc0NzgxIGFlZmYzMzE5YzQxOGI0MDdiZDZjOTc0ZDJhMzA2YWFmYzk0MTI3MWUgbGVnYWN5LXRydW5rCis3NDc4MiA3MTVlNjk3MjUzZjI0YWM1YmI2ZTU4OWI4Y2VmNjQ4NmU3NjI3NWVkIGxlZ2FjeS10cnVuaworNzQ3ODMgOWYxZDZkMWRiYjAwODBjNmU1NWM3MzRkOGE4NDBjYmVmOWNkY2NjYiBsZWdhY3ktdHJ1bmsKKzc0Nzg0IDFhMWFmOWZiZDgzMTc5OWIxNjM2N2FlMGU0ZTBiMTY3NzIwNDFhZjYgbGVnYWN5LXRydW5rCis3NDc4NSAyNTEzYWZmNDQ1YzJjOWVjMTU2MzQ4MGZkMWRiNzFhNDgxOGU2YWE0IGxlZ2FjeS10cnVuaworNzQ3ODYgNzY0M2UyNzMwNDM3NjRlNmUwNjQ1MDQzYTFmYTZkZTk2NTljOTc3ZCBsZWdhY3ktdHJ1bmsKKzc0Nzg3IDk1ODRiOGUyMmY3NmZiYTgyY2YxZWY4MzEwNDBhNjI1NGM2NWNjZTcgbGVnYWN5LXRydW5rCis3NDc4OCA2ZDQ1ZmJjODViZGYzZmRiNDIwZGU1NWEwMTNkNThiYTc1YzA0MGZiIHB5M2sKKzc0Nzg5IDliMmE0MmZiZDA0YjQyZGFlYTVhYmRiYzA5ZmEwNGQyOGE1YjYyNWUgcmVsZWFzZTMxLW1haW50Cis3NDc5MCBjMDRhN2MzNjU1ZmMwZGI3Y2U0ODlhNmJjN2EzMjc1MTY5MGJhZDhjIHJlbGVhc2UyNi1tYWludAorNzQ3OTEgNjg1NTk1MWFmZjE5OWUyOGQ4NTAwNWE2YmI4MGZmMDcyNzQ5ZjNhYiBsZWdhY3ktdHJ1bmsKKzc0NzkyIGNmNGUwODE1ODQ2YzU4NGM5MDlhNjRmZmZmMDdmNDZmNzQ1Y2EzN2EgcHkzaworNzQ3OTMgM2FmZjU5NzkxMGM0MWI5ZjJhZjBiZWE1ODIwZjAxYTg0ZTQxNjA1OSBsZWdhY3ktdHJ1bmsKKzc0Nzk0IDhjNzc3MWRjZTA0NzRhODdmMmU2YjdhNDUyMTUyY2E1MjJjMmQ1NzggcHkzaworNzQ3OTUgZDliNWI3ZGQ4MmEyMjI0YmRiNTJjYWFhNGMzOGE5MTcwYzkxMDU2OSBsZWdhY3ktdHJ1bmsKKzc0Nzk2IDFmMWY2YmZkNGRmYjA0NDQ3YmZhOWU0YzU1MTJkMzQ0ZGRiYjdiMmUgcmVsZWFzZTMxLW1haW50Cis3NDc5NyA0YWIzYjVlYWU4OTc5ODIyODRlZWI4ZjI3NjRhYTliZmQ3MzcxMGU3IHJlbGVhc2UyNi1tYWludAorNzQ3OTggOWFkNmQ3MmJjZGE1YjU0N2JmYjUyYjVmZTExYzg3NWFjZjFlOGU0ZSBsZWdhY3ktdHJ1bmsKKzc0Nzk5IDIxZTkwN2EzODM2ZjNjOWUzNzRlMWMzYWIxNGYyYWFmYTc1NTIyMWEgbGVnYWN5LXRydW5rCis3NDgwMCA3ODQ3YjQwOWI3OWMxY2I3NDVjMmJjMzdhNDg0NDI2ZTdjYzg2YjEyIHJlbGVhc2UyNi1tYWludAorNzQ4MDEgNGNjY2YzY2UxNWEwOWM2MjdkYTZkNDNhNTA3OTFiNWVmNDkyZDM5MCByZWxlYXNlMjYtbWFpbnQKKzc0ODAyIGRhODUzZTk4M2YwODI0ZjNmYjVjN2M5NmYxZTNiMDEzYTNiOTkyM2UgcHkzaworNzQ4MDMgMmQ1NzVmMTZiY2VjZDlmNmUwODM3ODRiMzM3YmMyM2FkMmRlMzcxNSByZWxlYXNlMzEtbWFpbnQKKzc0ODA0IDg1MGRhZmQ0YTI0NTNkNTI0NjEwMTgzMTc3ZTk2YmZiZDdlYjQzYmIgcHkzaworNzQ4MDUgNGU3ZjZiYzgxMGIzNjBkOWU4NTc0ODNlODQzY2MyZGEzNGJjOGU4NyByZWxlYXNlMzEtbWFpbnQKKzc0ODA2IGJkNDIwMzg4ZTZiMWRhMTg5ODVhODc0MzYwNjhmMzhiMmRkYTZiNzAgbGVnYWN5LXRydW5rCis3NDgwNyBhNmRmMDc0ZDJlMDkzZmJiMGIyYTViMjNiOGI1NmNmYTI2YmJlZTg1IHJlbGVhc2UyNi1tYWludAorNzQ4MDggOTQ2MjQwNGRmNGUxMGNmZGExZWJmZGZjNmFmYWM2ODA0ZTQzNzc3OSBweTNrCis3NDgwOSBhYjRhODdmZWYxYWU2ZTRhODRlN2Q4MDRjY2Y5MWQyY2NjM2RjYmE5IHJlbGVhc2UzMS1tYWludAorNzQ4MTAgYTMzZjk2YjQzZjI0YWNiMjE2M2M2YzVjZjYzNWE1Yjc0Mjk1ZDQyNyBweTNrCis3NDgxMSA0MTAyYjVmMmEyZjFlM2NlNjRmZDBiYzY1N2Y4MDdiYmZiYzBhYmZlIGxlZ2FjeS10cnVuaworNzQ4MTIgODUxOWUyOGIyODRmNzk0YWI2ZjYyMDZkYjdhYWMxMWQ3ZDM2YzQxMCBsZWdhY3ktdHJ1bmsKKzc0ODEzIGEyYmFiMmQyMzc0NmI1NTJjOWY4ZjhiYzJjZTc1MDhhMjU3MmExNTEgcHkzaworNzQ4MTQgNTYwYzA1NGEwMWFhMmZmZTEyZmZjZmJiN2EzM2RkMDczZjQ3NDgxMyByZWxlYXNlMzEtbWFpbnQKKzc0ODE1IDdkNGMzYzA4M2YzNjE5N2YyZjM4ZGUzNDYxZWRhNThiYWVjYTAwNjIgcHkzaworNzQ4MTYgODg1ZGExNDZmZWE1YTNkZmEzNWQ5Yjg1MmViNDY5NzY5NWZiN2MzMCByZWxlYXNlMzEtbWFpbnQKKzc0ODE3IDUwN2JhOTdhMmVlZWYzMzk0NTVjYmVjNjk3YzgwNmI5NmI3YjhlNzIgbGVnYWN5LXRydW5rCis3NDgxOCBiYjZhZGU1MWEwYjYyMzhkMTM1YzRhNjBiYjYyYmIyNGIxNTEyYWQ1IGxlZ2FjeS10cnVuaworNzQ4MTkgMmViZThjODFhZmYwNjkyOGM3YmVhMzg0N2EzYTc0ZDNjMGY5OTJlZSBsZWdhY3ktdHJ1bmsKKzc0ODIwIGMyZGUzMjg2NmQwZTNkNjQwYWJlOTJiMzQ3Y2E4NTQxMTM5MWQ0N2MgbGVnYWN5LXRydW5rCis3NDgyMSBjMDE3YTQ1MGY0YTU3NjhmYjUwNjMxYTUxOTQxMDMzYzI0NDJmMTVkIHB5M2sKKzc0ODIyIGQ0YzI3ZGE0NmRjYTBmNzk5YmE0NWU0YzBlOGZiNGY1NjE2Y2ZmMWMgbGVnYWN5LXRydW5rCis3NDgyMyA3NDJjZTU4YTMxNzFiYzEyZWU0NjAzNTA2YWU5ZWRjMTZlOWQ0NzM5IGxlZ2FjeS10cnVuaworNzQ4MjQgM2UxOTNkMGIxYWJhODlkNGJkYWFkNGMzNjIwZjg3MjQ1NmY4Nzk3MyBsZWdhY3ktdHJ1bmsKKzc0ODI1IDMzODVlNjE4MjExMjk0OWE3MmQ0YjQ5NWFiYjA3YjcwZmJhNGQwNGUgbGVnYWN5LXRydW5rCis3NDgyNiA0ZTYxZDdiZDFiMzY0NmJhM2ZhMjkwOWU0YzE2MmUxOTMzOWRkYzZmIHB5M2sKKzc0ODI3IDk2YjY0NTc1MmMzMzQ3NWIzOTY2ZGM1MjUxMmJlZGY4MzJiNmE2MGUgcmVsZWFzZTI2LW1haW50Cis3NDgyOCAyNmRmMGI4NTZiY2JjNDgwM2Y2YTA1N2QzMThkMjRhZjQ1MDczN2M2IHB5M2sKKzc0ODI5IDRjYmRhYjYwMWI4N2ZmMzhiNGVmZDJiYzM4ZTYwMjQ0MGQ0ZWQ4NDMgcHkzaworNzQ4MzAgNGI2NGRiMzZmMDliOGZkZGMyNjI2NmYwN2E3NTQ4OTc2NzQ5YzhjMCBweTNrCis3NDgzMSAzMWMyMzZjNTNiMDI0NTdlNGY5Y2ExN2ZiOGRlZGQ0ZDViYjM5Yjc1IHB5M2sKKzc0ODMyIGYxMzkxNDQyYmQwYjVkODgzMzdhMGQ1ZmQwMTY1MGIyZmQwN2JkYjAgbGVnYWN5LXRydW5rCis3NDgzMyA5YjAwM2JiY2E1ZGJmNWM4MmM1NTVhZDViMmU5OWMyMDZmNTJjOTFhIHB5M2sKKzc0ODM0IGQ4MDcyMjA2ZmRjNjFlYTY5MjliNjUzMGY5OTFlMzVlMzAxZWJlMDYgcHkzaworNzQ4MzUgYjZlMzllZWExYmJmNmVmM2ZiMzE1NWNmMGE0ZDUxM2NkN2M3ZTlhMCBweTNrCis3NDgzNiBmYTkxMjcwYjYwODdiMGZkZjM5M2NjMDg1YmU4ZGM4ZTYwOTliNzBmIHJlbGVhc2UzMS1tYWludAorNzQ4MzcgYmU0ZDQyMDA5ZjdlNWJjYjdiZWVlYjM0MDIzZTY2YzAzMzA1NDg4MCByZWxlYXNlMzEtbWFpbnQKKzc0ODM4IDMyNDQ4ZjhhNmM2MzZmMzlhNjE3OTg1ZDEzN2E1NmFkYjlhYzM0NzggbGVnYWN5LXRydW5rCis3NDgzOSA3YTNlZDFiNDM0MTA5NzUzYTU3ZGU4MmQ3YTljMzNiMjdlNjk0ZDc4IGxlZ2FjeS10cnVuaworNzQ4NDAgMzM0YzYwZjUxMjU5NGM4Mzc2ZmMzMGY1MjllMDM5N2ExODgwZTZkMiBweTNrCis3NDg0MSBiMGQwM2ZhMDczZWM1ZDE2N2EwMTY0N2ZmZjM2MjUzOTYyZDE3ODRmIGxlZ2FjeS10cnVuaworNzQ4NDIgMWFkOWYyYmRhMjBhMjZjNzQzMjYxZTNhYTAyZWVlYWIwNzU4M2I3NSByZWxlYXNlMjYtbWFpbnQKKzc0ODQzIDNhY2QzMWVhZGJiODgwNzA0NWNkYTA5NmI3ZjQxNDE2NGM2YTNkMTEgbGVnYWN5LXRydW5rCis3NDg0NCA2NjFjOGE5Mzg5MmZmN2MxMGRkZTAxZjBkOGE1ZWI2MWVjY2ZlYzQwIHJlbGVhc2UyNi1tYWludAorNzQ4NDUgMGYwOWQzOGY4NTJlODQ3YTg2YTU3YmQxYzJlYmY4NDI5OTg0MjYzMyBsZWdhY3ktdHJ1bmsKKzc0ODQ2IDc4ZmY5YTc0Y2I0ZTliN2RhYTE2MTE2ZWQwNjYwNjYxYmMzMDhhYzAgcHkzaworNzQ4NDcgMWIxODk2N2ZiZDQwODEwNjkxZWE1ODI4YzhlMDE3ZDE5NDQyYmEwNCByZWxlYXNlMzEtbWFpbnQKKzc0ODQ4IDhhYjMwNDAzNDAyMWE1NzcwZjczMGYxMTdlOGY2ZTg1NzVmYTBmZjUgcmVsZWFzZTI2LW1haW50Cis3NDg0OSBmYWI5OWU4ZDI4YzMyNzViZWQyNTMwMGQ2YmJmOWQzZDhiNGRjMzhkIGxlZ2FjeS10cnVuaworNzQ4NTAgYWUxYjFjZjQ3YzBjYTFmMzM1ZWM3YWMzODYzZWQwZjA5ODEyZmY2OSByZWxlYXNlMjYtbWFpbnQKKzc0ODUxIDFlMDlkYzY4YzhmMzYzOGJmNmNiZDgzMTU2NWZmMjBiYWQ0ZDRlYmMgcHkzaworNzQ4NTIgMmU5ODU4YzBkMzY0ZDFjZTRiZGYwMDI4YmE0ZWE2ODYxZGM5NGZlMSByZWxlYXNlMzEtbWFpbnQKKzc0ODUzIGEyY2JiOTQyMWExMTQzYWM1YWYwMzI3ODUyNWQ3ZDE2M2E4N2NkNTIgbGVnYWN5LXRydW5rCis3NDg1NCA5MDY5ZTUyYzBiZWRjMjUzMzJmMDIyOTk1M2M4NWM1MGFkMzYzZDEyIHJlbGVhc2UyNi1tYWludAorNzQ4NTUgYzhjYjllZjBjZDBhMDRkOWJkMDBkMDEwYzZhOTRiZjg5NjI4MTUxNyBweTNrCis3NDg1NiA0NjYyNWJjYTBjZmI1NmY0OWVmZWNiZGI4OWU5MzYxYTQ0MTNjODVmIHB5M2sKKzc0ODU3IDc2ZTA4YjkxZDk4ZTBhZGI3NDA4N2M2ZjdlNWRhOTBlMmZmZjE4YjQgcmVsZWFzZTMxLW1haW50Cis3NDg1OCBjZGFlYjI1MWQ0ODhiZTM2NDUxNDNkNDc2ZmU5MzBhMDAzMzY5MWUwIHB5M2sKKzc0ODU5IDE3M2JlZDBlMDRjNDg5NjUyZTU3MmZhOWUwM2VjZGJlZDRiODI2NDcgcmVsZWFzZTMxLW1haW50Cis3NDg2MCA3N2I5NmE1NDI0YTJjNjUyZjc1ZGZhM2UzN2I2NzQ3M2I4ODJkMzE4IGxlZ2FjeS10cnVuaworNzQ4NjEgN2M0ZDUyODYwMTMxYjZkYTljYmU0OWUxYjFkYjk4ZmY3MWFjMGJjZSBsZWdhY3ktdHJ1bmsKKzc0ODYyIDlhMTA5NzE0MDNhNWFkMGQ0OWMxN2ZjNzExM2YyNDk1ZmM4YzdjZjggbGVnYWN5LXRydW5rCis3NDg2MyA3ZjcyNjExNWJhMjlhMGU2MDQ2MTQ4MzAyOGEyNTVmMTJhMDY4ZTA4IGxlZ2FjeS10cnVuaworNzQ4NjQgMTcyYjJkMzZkYTc3Y2QyODMxMzY4MmU2ZjJmZDlkMWNlODRkZmNkYSBweTNrCis3NDg2NSA0MmY4ODA4M2RkYmRmM2UxOGY1MWIzMDRmMDFiZTkzNjhmMzg4ZjY5IGxlZ2FjeS10cnVuaworNzQ4NjggNWZlZDVlOGVhOWNjMzMzMjY3ZmM3ZDY4ODJiYjQ3NWVkOTQ5ZjJhOCBsZWdhY3ktdHJ1bmsKKzc0ODY5IDM4YTUyYjY3MjQyOTI2MDMwZDBiZDQ5MTQzODc5MDRkNzUwNzU1YzIgbGVnYWN5LXRydW5rCis3NDg3MCAwZmYzN2UyMDAyOTJjOTM2YmY2OTQ0YTRhYzliY2QwNWQ5NGYzZDU4IHJlbGVhc2UyNi1tYWludAorNzQ4NzEgMTJmMTQ1ZDc1NTEzZWI5ODZhYTc4ZjA0OTM2MTM3YmU3NjY5ZDgzNyBweTNrCis3NDg3MiBhOTgwOWYzYjE2NGZmYTZmMGQ4ZWYzMGZjYTYxOGQyMDI4M2MyNWIxIHJlbGVhc2UzMS1tYWludAorNzQ4NzMgOGMzYjJkZGE0NzAzNjBlNTIyNTFkMzY1ZmUxNzRiNjMwZThiOWJmNCBsZWdhY3ktdHJ1bmsKKzc0ODc0IGRjOTIyYTg5Y2NmMTBjMzhmZDZkYTVhMGRiYWQ3YjQwMDI5NGViM2UgcmVsZWFzZTI2LW1haW50Cis3NDg3NSAwYTU4MGRjN2FmMTM3NjQwNDU1M2ZmNzUzZjE2MGE1YTc3NjUxNTVlIHB5M2sKKzc0ODc2IDZmNGI4NTJiODJmMTc1MDdjNTlhZWFhZGQyOTk3YjU2Y2U0NzlmODUgbGVnYWN5LXRydW5rCis3NDg3NyA5YWNiOGViNzJhOTJmYTVmNTMxODdiNjJmOWEzMjk5YWRlYjFlMGIyIGxlZ2FjeS10cnVuaworNzQ4NzggY2E5MjBjMTZiMjA1N2U4ZTQ1NTIxMTEwMjM5NmIyOTNkZGFkMjJlMCBsZWdhY3ktdHJ1bmsKKzc0ODc5IGUwZDVjMGMzODA4Y2UxOGQwZjkxMmRhMTNlZDA3ZjcyMTRmZGU3MzAgcHkzaworNzQ4ODAgYTI3YWJkMzUzZWQxY2ExMzRjODk3M2NjNmU0ZDRhYzBkYTk1YjBjZSByZWxlYXNlMzEtbWFpbnQKKzc0ODgxIGIxYjYxNWE5MTFmMDMxZjBiYTRkM2NkOTk5OGIzNjhmZjYxOGJkNTYgcHkzaworNzQ4ODIgZTQ5NzRlOTVmYTY0OWVlZjY4NWZlMjgwMjVjZGFmZTc4ZjkxODNhNyBweTNrCis3NDg4MyBiMzk4YWZlZmQzNjk2N2EyYmZiMWY4Y2U5MWI5YmU4MDFkNjY3YzdkIHB5M2sKKzc0ODg0IGJhMjI4ZTVjM2RhZjc5NmM4Njc4ODA5ZDYxZmJlMWMzNjZlNmY2YmUgcHkzaworNzQ4ODUgOWNlZWI2MDJkZGEzYjliNmUyNjQ2OTk2YWQ2YzcxMjFkZWEwMWExMiBweTNrCis3NDg4NiAwZTQ0ZGNjMGIyMGQzOWQ3MTkzYzY1M2FmMjA4NDE1Y2UxMzdkZjZjIGxlZ2FjeS10cnVuaworNzQ4ODcgMmVhMWZjMjY4NTQyNTJjN2NkMjIzYTk3YTM4YTMxZDY2NDBhOWVlZCByZWxlYXNlMjYtbWFpbnQKKzc0ODg4IGQzZWU3MzhmZGNkYjE3Y2ZjMzZkNGIyOTRlYzljYmQxMDg1ZjgwZGIgcHkzaworNzQ4ODkgMDcyZTNlMzBiNTBjYzIxZGIyMmNmMzU5Mjc3ZTczZjE4MjcyOWUyNSBweTNrCis3NDg5MCA1NDdkNDFiMWRlOTczODFiZTUzMTJmZjJjYzYyYjZhZWJmZGM5YzkyIHJlbGVhc2UzMS1tYWludAorNzQ4OTEgMWM1NDZjZjNlYjEwZDZkNmVjYzQzMjEzZDZhNGQ4MjQ2YTcyMTIyMyBweTNrCis3NDg5MiBkNjAxZmUzN2ZjNTRjZTAxOGYzNzZiNDNiYzg3YTJmNjBiNDA4ZjJjIHB5M2sKKzc0ODkzIGZkMmY0YWU5M2QwMTI3ZWRmYzU5MzY5OTg4MDE3ZjFkZDc1NzMyMWYgcHkzaworNzQ4OTQgYjYzYzcxODA2MThlMzQ4YTQyN2NkYzUyMmVhOTlhOTQ2YWU3M2VjZCBweTNrCis3NDg5NSA5OTNlZTM5ZThiY2ZlZmE5ZGE1ZTA5NWM3ZGJkYzZiNTg0YWQyNGVhIHB5M2sKKzc0ODk2IGJhZTlmNDgyM2I4ZTExYjU0NjQ4NDc3MmU3NWViZTNkZjUzYzllZjkgbGVnYWN5LXRydW5rCis3NDg5NyA1YTFlODc5ODMyZmUzM2M3NzE2NTZhYjYxMDI5ZmIwMGZlMDA0MzBmIHB5M2sKKzc0ODk4IDk4MTc5MTVlYmRlYmM1MWE4MTljOTRiNTcwMGRjNDE1NzQyYjk2Y2EgcmVsZWFzZTMxLW1haW50Cis3NDg5OSBkZTMzNTdjMjYwYjYwN2NhY2YzNmU3OTU1ZTUxZjAzNWFhZWI0ZDRmIHJlbGVhc2UzMS1tYWludAorNzQ5MDAgZGEwNGIxNTJhNmZlM2Y2NmZiOTQ1MzhjZjhmNTQ0YWI5YjdjYmY2ZiBweTNrCis3NDkwMSBiMzI2ZTdkNjY0MTM0YTgzZWRmYWUwZDdjNmQ0NGU0MDIyZGU1YTU4IGxlZ2FjeS10cnVuaworNzQ5MDIgN2E1YzExOWI4NjY5MDJmNjIwNjJjZmEzMjMwNmY2YzlmZmRlMjdkNyByZWxlYXNlMjYtbWFpbnQKKzc0OTAzIDg0ZjFjOTViNGU5NzQ4ZjlhNTQ5OTNjYTY2OWVmMmVlNTdkODhhMjMgbGVnYWN5LXRydW5rCis3NDkwNCA2ZmNhMzUzNTJmN2I3ODE2NGJmMmIzMzhjMjE2MWQ1ZjU2YzhlNjljIHJlbGVhc2UyNi1tYWludAorNzQ5MDUgNGYxNWExMzFhYjA3MTk1Y2NjYzgzNTM4NzNjZDY5N2M2MmMwYTAwMCBweTNrCis3NDkwNiBjNzZmODQzODM4YTVmYTA1NzVkZGZiNDgxNzljOGI0MmQzYjNhNjI4IHB5M2sKKzc0OTA3IDMyODlmZmMwNWNjNzg0NDk0NTEzZTJlZTdlNjBhZmEwNTIxNTkzYTMgcHkzaworNzQ5MDggYjM1ZGQxYjYyNDhlMzkzOTY4NTliOTA0MDk5NGFiMmQyNTRlYmIwYSBsZWdhY3ktdHJ1bmsKKzc0OTA5IGE0NDJjMjUwNGE1N2UxYjViNzE3Yjc4ODU2MWYwYjI2OWYzOWVmYWEgcmVsZWFzZTMxLW1haW50Cis3NDkxMCAzN2U5NjI0NmJkYTFjNjQ5MjY5MjFiZTIzMjUyMjUwNmYyYjZjNDg3IHB5M2sKKzc0OTExIGRhODE4NjE2ODRlODkzYTY0NGY3M2M3MTUwOTJkODA4MDc4ZjkyYzMgcmVsZWFzZTMxLW1haW50Cis3NDkxMiAxZDJlNmM0NDFhNTNmMDE1Zjg2OTEyYjNkMjA0ZDQ5NjBiYThmNWExIGxlZ2FjeS10cnVuaworNzQ5MTMgNzdlMDdhZjZmODdhM2M4NDU1ODE0Mjg0MDA0YjU1Y2IyYmMzODdmNSBsZWdhY3ktdHJ1bmsKKzc0OTE0IGQ0ZTAzNmM2YzYwZDRhNDAwZGY2ODYyYmUwYjFmZmUyZTRlMzMxYzYgcHkzaworNzQ5MTUgODVlZjFjMDRkOGRkZjVjZWE4YWE5NmY3NzBjMTIwZDUzZjdlZDc1YyByZWxlYXNlMjYtbWFpbnQKKzc0OTE2IDUxNzQ4ZGZjYjQ0NGM3MDA0NGU1NGI5MTBmOWNiMzE1OGI0NzI2ZDMgcmVsZWFzZTMxLW1haW50Cis3NDkxNyA5OTMxZTE3N2RhODEzOGViMDliODI4YmI5YjRkYThkYTUwMWJlNTg0IGxlZ2FjeS10cnVuaworNzQ5MTggMzc1MzhiNTUwZjY4NWFmMzgxYzM0YWUzNjk1ZjBhYmIwYTZjNDA2NCBweTNrCis3NDkxOSBmZDE4Nzc0NTMwNjA2MjUyNzM3ZDM5NGJjNTdiMjUwZmJhMWRjMTZjIHJlbGVhc2UyNi1tYWludAorNzQ5MjAgZDFkM2EwN2EwZWQ3ZjQ5ZjBmNjExM2UwMmU2ZmYzZDA4YzQyMDgxMSByZWxlYXNlMzEtbWFpbnQKKzc0OTIxIDNjODNhM2NhY2Q3Nzk4NWJlODM1NWQzY2JlZWFmZGRkYzAwMDE1YWUgbGVnYWN5LXRydW5rCis3NDkyMiAwNDNmZGRhNzA2YTM3NmZjZmMzMjUzODU5MjgzMjkyMDlkOGQ0MjIyIHB5M2sKKzc0OTIzIDgyMmEyOWY3NjYwYjUxN2ZlZDY3ZGMwNGI1YTBkODdiZTY4NDM2N2QgcmVsZWFzZTMxLW1haW50Cis3NDkyNCBiNGNhNTk0ODQ5MTQzZDY1NjNlYzcxNWIzZDk5YzU0YjE2NGZlY2E1IHJlbGVhc2UyNi1tYWludAorNzQ5MjUgZjI1NTVhZDVmZTA5ZWEwMDBjNjBhYWMyOWRiNWI0MzIyYzZhYWUyZSBsZWdhY3ktdHJ1bmsKKzc0OTI2IDIyMTFhZDNlN2JiZWQ0YjkzODY4Yjg1ZDdiYWZhZjg0NTdlN2Q3MmMgcmVsZWFzZTI2LW1haW50Cis3NDkyNyBiMGU1MTA1ZmY5N2JiOWNjNGYyYWI5YTI5ZjZmZjUxNDRlYWE5ZDg2IHB5M2sKKzc0OTI4IDdiMmJkMzliMjFjZDFjNmJhZDU5ZDIwNGIxNjlmYmRiMmE5MmI2NGEgcmVsZWFzZTMxLW1haW50Cis3NDkyOSBmNjRjMGViOGNjNjIwOWY0YzI0YmZmNWMzM2ZiYWQyMGQ3ODM2OTQyIGxlZ2FjeS10cnVuaworNzQ5MzAgZmRhMjkyZjMxNjMyNDIyYzY1ZGRjMWVlNzI1NDIzMzRmNjQzYmY0MyBsZWdhY3ktdHJ1bmsKKzc0OTMxIGYxMmNlN2FkYmQzMDAwOTBkNDJiOGEzMjEzZmM2NGVmMDQ4NTY3YWIgcHkzaworNzQ5MzIgNjE2YTY2OWM5MDIzZmU3NDczYTc1YjA5NzkzYzI3NTllNmE5ZDRiOSBweTNrCis3NDkzMyBiNGJiNGJiODY4OTI4OTk2NTNjOWMxNjI3NTAyMjFkOGM5ODdhOWY4IGxlZ2FjeS10cnVuaworNzQ5MzQgZGU2NTkwODk3M2QwMjQzOTFlZDljMWVkY2VmZjlkNDM3MzJiNmI3MSBweTNrCis3NDkzNSAxYjdiZGFlMDIxNzk0NzBlZWIyMmIxODc0MWVmNjUzN2YyYWQzMzdkIHB5M2sKKzc0OTM2IGNjMzI5YmIxOWRhNWYxYTlmYzM4NTM2MjhjZmNhMWU0NjNlYWVhMTUgbGVnYWN5LXRydW5rCis3NDkzNyAyNDNmYWYwZjVmNWU0MzEwMzVlYjQzMjRkNGViNmQyMGJjODJjYzY1IGxlZ2FjeS10cnVuaworNzQ5MzggYTJiMmNjMGZhN2FkNGQwZjQ5NGE0MDBlZmQxZjFiZTY4NzQ0YTIwNCBweTNrCis3NDkzOSBjZjc1YzBkMmUzYzc2YjEyZDg5M2M2OTRmOWJmMWExNTA5YWJhY2QxIHB5M2sKKzc0OTQwIGM1YjE1MDAxNzJmODljZjc1NWEyMTMzYTIyMzgwNjQwMDUxM2YwMWMgcHkzaworNzQ5NDEgODMxNTI1ZjE1YzU3MDI5MTIyYTEyYWEzY2Q2NGNiMWQyNGJmZDk1YSBweTNrCis3NDk0MiAwNzUyMTM5ZjNkYTFkM2FjZTcyN2YxMGM5MTlkZjRmMWQ3MDA0MDJiIHB5M2sKKzc0OTQzIDZhMjc4ZTRkOWY2MThkYjJkMmJiNTc0OGVkNTY1MTMzMjcwNDFjYWYgbGVnYWN5LXRydW5rCis3NDk0NCAzMGNjNGYwNzMyOTJlZWEyNmQxZjEzMTVmYjExNDM2MTQxZWRiNWJjIHB5M2sKKzc0OTQ1IDU4YmE4NWMwZDRiMGIwZmU5YTBmODJhODBjOWY1ODZkYzdiYjliNTAgcmVsZWFzZTI2LW1haW50Cis3NDk0NiA0NTE0NWFlYjYzMzEwYjIzMjIzZjNkYzIyNDRlNWJjZWFiNWVmNjI5IGxlZ2FjeS10cnVuaworNzQ5NDcgMDAwNzAyNGU5ZTIzNDhlNzgzNTdmOWY4ZTU2NzhlNDZlNTZjMWEzZSByZWxlYXNlMjYtbWFpbnQKKzc0OTQ4IDRjNzM0OWI5ZDE1OWE3YWRhMzUwMWViYzE5MWE4ODFkNmRjNGEzZWUgbGVnYWN5LXRydW5rCis3NDk0OSAxZWI0MjQyNTczNDVjZGI3NmJlYmMxNDkzNmQzNDE3N2QxZDk1ZjZjIHB5M2sKKzc0OTUwIDFiMTgzNmNmY2YyNjJhOTA4MTg5YWQ0YzUyOWVhNmE0NjcxN2JjOTYgcmVsZWFzZTI2LW1haW50Cis3NDk1MSA4MGEzOGY4OTNiN2YzZjA4ZTY0OTI3Mzk4ZGY1ZTJkZWQ0OWE3ZmJiIHJlbGVhc2UzMS1tYWludAorNzQ5NTIgYTA5ZGE1NmU0Nzk2OWVmYWUxM2JhZGU5ODNlZDA1OTg0MWJmNGUzOSBsZWdhY3ktdHJ1bmsKKzc0OTUzIDM5YjQ2MzA3OTdmYWNlN2Y0YzA0YWFhNzhkNzBkYmFjMjNjYWFmYjUgbGVnYWN5LXRydW5rCis3NDk1NCA2NzkxYzJiMWE3ZGM5ODhkZjE2MGEwODI2ZjhjYjNjNjA0NmQ0M2QzIGxlZ2FjeS10cnVuaworNzQ5NTUgNDE2YjY0NTUwN2QwYTg0Mzk4OWRmYTY1MmJiYWQ4ZGJhMWRkMTYyNyBsZWdhY3ktdHJ1bmsKKzc0OTU2IDhjY2MyM2FmZWEzZDE4OTY5OThmMmMyM2Q5MmE1ODA2MmQxYjRkMGEgcHkzaworNzQ5NTcgZWE2OTdjZGU2ODgyMzRmN2IyYmM1ZTBmZDUyMGQ3MDJhNzJlZTAzZCByZWxlYXNlMzEtbWFpbnQKKzc0OTU4IGY1NGQzMWU1ZmQ0ZDZmMDBiZDk1OWMxYTRkY2I3YmY2NGVmMjQyNjQgbGVnYWN5LXRydW5rCis3NDk1OSAyYzVhNzc1MGI3MWQ4MjFkMDkwMTRlMzljZmYyMmFlYzA2MTFlN2ZmIHJlbGVhc2UyNi1tYWludAorNzQ5NjAgYmQ4NGY0MmMzNjMzOTU4YjlkNTJjYTEzYTMyZjUzY2VhZjhhMTVlZSBweTNrCis3NDk2MSA1MjJiZTM2YjI5Y2QyMTQ4MWI4ZGIyNTY1YzYwNGM5ZjViOTQ1ZGUzIHJlbGVhc2UzMS1tYWludAorNzQ5NjIgMmRkZGRjNjQxYTk4NzNmMDJmYTlmODNmMWU2ZmEyMmY3ZWQyZTBjYiBsZWdhY3ktdHJ1bmsKKzc0OTYzIDI3MTdkODVhYmEyZTZiYzNlNzMwOTE1NmVhMzMzMTBjNmEwZDE1ODMgcmVsZWFzZTI2LW1haW50Cis3NDk2NCBlNTYxZjEwYzdiMzExOTI4YmU3NjA5MWJhZTI2ZTAzY2JjZTVjMjU3IGxlZ2FjeS10cnVuaworNzQ5NjUgZDEzMTk1NjUzM2JmMWNkOWNhODgzN2UxNmYxZmU1NDFiNGUxMzJlNSByZWxlYXNlMjYtbWFpbnQKKzc0OTY2IDY5ZWUxNTAxYjEwMjY5YzNmN2VkMzFhMDM5MmNiMTgzOWE3YWZmODUgbGVnYWN5LXRydW5rCis3NDk2NyA0MzZjYTc3NWYyNmNhYTg4NDllNGY5YmRmN2I5MjAzM2E3MWFmZDhiIHJlbGVhc2UyNi1tYWludAorNzQ5NjggMjI1NDhjN2VhZjM3NWJkNzZlM2M3MDVmMTBhMGQzZTE0YzllZDk4MCBweTNrCis3NDk2OSBiM2QyNWU2ZjY2ZjEyZGU1NjQ5NzQ1NmM1Y2EyM2JhZDQzMTljOWJmIHJlbGVhc2UzMS1tYWludAorNzQ5NzAgYjBhMmZiYTAwNDU4NjExOTA4YThkYmJjNmE4MmQzMWYwZGI3MjEyYSBsZWdhY3ktdHJ1bmsKKzc0OTcxIDFjNTBkYzIxMzMxMmRjNjQ1NzMzNzkzNWQyNzk1ZDlmZGYzYjZhZGMgcHkzaworNzQ5NzIgZDhjMjQ4YTU5MzEwNTBhMWY5NzVjM2ZmOWI3NjQ5ODJmNzQzMDg5ZCBsZWdhY3ktdHJ1bmsKKzc0OTczIDk4MTA0YWI4NTlmYTk2N2I1YWI0YjVhYzlkZTRkOTBiODFhOThiNWQgcmVsZWFzZTI2LW1haW50Cis3NDk3NCA4MDZjNjM2Mzg1ZmNjZGJhYmI1ODY4ODE0ZDFhZDIyODRiYzNlMTc0IHB5M2sKKzc0OTc1IDdlMzk4NWZhZjlhOGFjZmUwMjdiMGQ4Yjg5M2VhYTc4MGEzOTFiN2YgcmVsZWFzZTMxLW1haW50Cis3NDk3NiA3YTNmZGQ5M2I1NjY0ZGEyNTE0ZmZiM2E0OTVjNWQxMDFkOWQyMmIzIHJlbGVhc2UyNi1tYWludAorNzQ5NzcgMWRiNmVlOWQ3YmU3YTFkNmM1MzNhYTA3YmEyNWIwOTg1YzZlN2Y1YyByZWxlYXNlMjYtbWFpbnQKKzc0OTc4IGRiOTdjMDQyY2MxZWQ1Yjk1ZGE4ODQ0YTM5NTA3ZTRjY2UxMzI4ZGIgbGVnYWN5LXRydW5rCis3NDk3OSBjYjM0MjhiMWY0YWYyOWIyNWI0OGQyOTc2NTVhZTJlYTg0MGJjYjdhIHB5M2sKKzc0OTgwIDMzOTNmZmMwZGU0NGU2YTNjYmNiYmQyY2E3M2Q3OTRiNWZhM2Y1YzYgcmVsZWFzZTMxLW1haW50Cis3NDk4MSA5MjM0MzA1ZDM3NDAzODdhNzMyNmQzNDlhNDdlMzU2MTA4OTA3MjI5IGxlZ2FjeS10cnVuaworNzQ5ODIgNmQ4YjU0YjIxYjg3N2VmZmNjYjJiMTU1NDI5NDg0YjFjMzkyZDdlNSByZWxlYXNlMjYtbWFpbnQKKzc0OTgzIDI3M2MyMzQ4MDBjMTg0MWQzMGJiZTdiNjQ4NTFiN2QwYjdiOGMxMGEgcmVsZWFzZTI2LW1haW50Cis3NDk4NCBjYzNkOGFmZjQ1OTU2MGNhNDRmODg1NTMxZTNlNzVhMjM3ZGUwYTYzIGxlZ2FjeS10cnVuaworNzQ5ODUgYzU5NDllMTJjNjkyOWVkOGRiNjFiNGY1MGFlZGQ2ZWM0N2UyYzhkNCByZWxlYXNlMjYtbWFpbnQKKzc0OTg2IDljOTE2NWJkMjkzYWUyNDk4NjYxYmM3MDU2OWZjYTBhMjU2MTk5N2QgcHkzaworNzQ5ODcgYzYzZjg5MjNlMjRmNjhiNmVmM2JlYTJkNWU1ODAyMTE3ZjRiZjk5MiByZWxlYXNlMzEtbWFpbnQKKzc0OTg4IDJkZjhiZWRlYzZkMzMzOGMzN2RmNzYzMGM1NWI5ODdmZTNlZjNkOWMgbGVnYWN5LXRydW5rCis3NDk4OSBhOWNlMTU4OWQ2OTRkMjk4NjU1OWI1YmRkZTk3NTc1MDg5Y2Y2YjRiIHJlbGVhc2UyNi1tYWludAorNzQ5OTAgN2M0MzQ2ODdiNDI5Mzk2ZTE3YWE1ZTIxMWRjMmJiOTM3NmQxNjJiMyBweTNrCis3NDk5MSA0MDA4YTAxMzdkZTdiMGQ2ODAyMWFhZTg4NDY3YmU4MWU3MjVlYTA5IHJlbGVhc2UzMS1tYWludAorNzQ5OTIgZDYyN2M1ODkyZmQ1NDhlZjQ2M2JmNTEwMzFhM2M3NWUxMjUzMGNhZiBsZWdhY3ktdHJ1bmsKKzc0OTkzIDVjODcwMGNjOWQxNmVkMjZiOTRjNGZhZTViZjEzZDk3MDBlNDYyYTQgcmVsZWFzZTI2LW1haW50Cis3NDk5NCA3YTc2NDJhYjExYjM5MjdjZDIyYTQ3ZWY5ZTMyMmY5M2FjYzlmNzRhIGxlZ2FjeS10cnVuaworNzQ5OTUgNjI3YjM0OWRmMGU4ZTI3OTE3ZWM0ZmU3ZTEzNDUwOTdjMDYyNDFmMyByZWxlYXNlMjYtbWFpbnQKKzc0OTk2IDAxOGYyZWFlMjUyNmZlMjRkZGQ0OWQzZDQwZjFiNmY4N2I2MWViMTQgcHkzaworNzQ5OTcgZjhlNjk2ZTRjZmYxZDgwNGI0Y2U2YTA2NTI3OTdjYzMwZGVkYmI3NSBsZWdhY3ktdHJ1bmsKKzc0OTk4IGFmN2ExMjAwZmIzZjM1ZjAxZDQyMGZhZjc1YjNmNWIzNmU1MDIxM2QgcmVsZWFzZTI2LW1haW50Cis3NDk5OSA0YjgzZWE2ZmM1YmRlMjE2MjczM2UxNTk3NTdkMDQ0Y2NkYTcyZTFiIHB5M2sKKzc1MDAwIDNhM2UxNDVkNTUyYzVjOWIwMjkzYTJhN2YxZWEzODMwN2RkZjMwNTUgcmVsZWFzZTMxLW1haW50Cis3NTAwMSAxZmZlNmZiMTlhMThkZDA5ODliYWNhODU1NzVhMjU5YzU0NWFmYzMwIHJlbGVhc2UzMS1tYWludAorNzUwMDIgNzQzNWQ1OTFhMzI1ODNhZTEyNjFhYjlkZWRlMWE0NGQ1MjNmODFmMiByZWxlYXNlMzEtbWFpbnQKKzc1MDAzIGI3NzdlMGYwYjU3Y2EyMTE5MDhkMzQzNjMwODJlN2U0NTMxZDU4MjQgbGVnYWN5LXRydW5rCis3NTAwNCA1ZjYzYjUxNDI3MjUyMGZiOTcwMGM2MmZlNWIyODYxOThmYzI1MDZlIHJlbGVhc2UyNi1tYWludAorNzUwMDUgYjczNGQ2YjUxODUyOTRjNWM4NDMwZTJiZTI5YWRlM2I1ZDVkOTk1MyBweTNrCis3NTAwNiAzNTdjNzVkNTljZTk5NGJkNjY0NDgwZjAzMTQ3YzY2NTU4MjExNzY2IHJlbGVhc2UzMS1tYWludAorNzUwMDcgZjczY2RhZTE5N2M0ZDFlMmEwOGE0YjMzMzViYWNlYWE2NDQyMzZiMyBsZWdhY3ktdHJ1bmsKKzc1MDA4IDc4ZTAwZWI0NWRiYjQwZDhhZjRlYThlZWQ5MGQzMzZkZDgzNWU5ZDkgcmVsZWFzZTI2LW1haW50Cis3NTAwOSAxZjVmNzg4MThjNTFlODM0ZDI4YmUwNDg3YzlhYWYzMGYwMjQxMTYzIHB5M2sKKzc1MDEwIDgyZDc5N2ZmOWFhM2MzOGJmN2YyOTY4YTM5YjYxY2Y1YTEyZjBhYjUgcmVsZWFzZTMxLW1haW50Cis3NTAxMSA0Y2U0ZGE4NDdkOTNmMDUwM2QyOTA0ZDIzNzY5NTVkMTdmNDM2YTdkIGxlZ2FjeS10cnVuaworNzUwMTIgYzIzOTJhNzk3MTVkNjFkNmEyMTBhYzYyYTk0Y2RmOWM5MWFjMzBlNyBweTNrCis3NTAxMyA1NzRhNTMyZmI0MGIxODZlOGU3YmEzZmE1NzY2ZmJmNTliODFiMmJiIHB5M2sKKzc1MDE0IGFmZGEwODc3NjNhZjFlZGVkOWUxMjc4NDBjMTc0NDU4Mjk0ODUyMTAgcmVsZWFzZTMxLW1haW50Cis3NTAxNSA3NzE5MWYzYTFkMjdkZGM3MDE0OTU5YjdjMmMxNzdjMGE3MTdiYTVkIGxlZ2FjeS10cnVuaworNzUwMTYgNWI4YjE4YjAwZDRjZmYwNWVjZjNlMDg0MjFjNGYzMzg1MDZhNWZjOCBweTNrCis3NTAxNyA1NTU3YmM4Y2JmNjVmOTk0Y2U2MTUyMzhjOTBkNTRhYzdlNmYzNmM1IGxlZ2FjeS10cnVuaworNzUwMTggMDZjZTI3YTgyZTk5ZTdmZTNlZDg0YzQ1NjEzMTJkNGU2YzUxYjE5MyByZWxlYXNlMjYtbWFpbnQKKzc1MDE5IGNhZGJmYzczYTNiMGQ2NjJmMWE2NDBkZDEyOWM4MjNhYmJjYjIzNzYgbGVnYWN5LXRydW5rCis3NTAyMCA5YzZhOTgzY2Y2YTkzZTVjZTdmZmU5YTUzZmYxZTQ1YThlYzMyY2ZiIGxlZ2FjeS10cnVuaworNzUwMjEgMmFlOTNlYWM0MjBlMmFiOWE5YzZjZjk0Y2M5YzZiNWZjOGM2N2JlMiBweTNrCis3NTAyMiA0Y2ExMTVmMzNiNmI4Zjk2ODMzYWRjMzk5YTE0YjllMGNkNDMyMjcyIGxlZ2FjeS10cnVuaworNzUwMjMgNGFhN2RlNjYxMzdmY2MzZjM2ZGIxZDA1ZTg3N2ZlNDg1MGZmMDJmYSByZWxlYXNlMjYtbWFpbnQKKzc1MDI0IDMyMjhiYWZiZTZjOTM4NjU4YjllODRiMzU0NDYwMGFkZGU3MmFhMzkgbGVnYWN5LXRydW5rCis3NTAyNSAyZDM0YTc0ZjAwMTcyMDZmZThkNzBjYTcwN2UzZjM1MTIzMmU4YTMzIHJlbGVhc2UyNi1tYWludAorNzUwMjYgY2FlMDUzYzlmOWNhY2U0YmZlYThlYzUyZDkyZGM4OGM0MjcxNTYyMSBweTNrCis3NTAyNyBiMTlhOGFkZDExMmY4ODJkNWNmMDkzMjkzM2RkMTVmMDNmNDU3YWUwIHJlbGVhc2UzMS1tYWludAorNzUwMjggZDU5OWEzZjJlNzJkNmUwYzQzZTU3YTNhOGRiZDM2Mjc3YWIxNzA4NiBweTNrCis3NTAyOSAxZDBkNmY3NDM3OGM2YjUyYzdiYTc0NTM3NzgyMDExZmQ2NmQzMjJlIHJlbGVhc2UzMS1tYWludAorNzUwMzAgNjAwZWQyZGQ3NjcyODkxOTc3ZGQ4NGI5OTQyMDVhMWFlNDUxNDg3YSBweTNrCis3NTAzMSA5Y2FjOGJhNmY0YTlkYzU5ZWNlOGYyYWUyYmYxZjMwM2UyMmY3NGYyIHJlbGVhc2UzMS1tYWludAorNzUwMzIgYzI0ZjAwMDE4MmY0NTU1Y2Q1OWViODZhODAxNTlmNmZmZmNmNDNkNCBsZWdhY3ktdHJ1bmsKKzc1MDMzIDY4ODk5ZGMxMTdlYjM1ZmQzOTZiZmI0YjBkMDdiM2RiNmU2MGI2NjMgcmVsZWFzZTI2LW1haW50Cis3NTAzOCA1ODRkYjAzZTUyNDgwN2E0ZTc5ZTUwM2I5YjMzZWYzNmFjOTYwYjM5IHJlbGVhc2UyNi1tYWludAorNzUwMzkgYjRhYjQ5ZTI4MzA1MTAzYzkyNTFkZjQzYzMyNjY5NjlhM2QxMjVhMyBsZWdhY3ktdHJ1bmsKKzc1MDQwIDlkYWY4ODQwYTQ3M2UwOGU1NDcwNDUyYTc4MDRhZGE3NWE0M2JhMGQgcmVsZWFzZTI2LW1haW50Cis3NTA0MSA1M2E2YjM5ZWU0YjY2ZDk0M2MzNzVkYzI1ODIyZGI3NTEzMjY0YTU3IHB5M2sKKzc1MDQyIDNmZDdmMTIyNTU2YTk2MWE1YTlkZjVjN2UxNzFiY2JiNjc5ZjgyYWMgcmVsZWFzZTMxLW1haW50Cis3NTA0MyA3ZjdjZmFhMzgzMmUzZTI1YTNkYWZkOGUwNmMwN2RjYzY1Nzk3OGJkIHJlbGVhc2UzMS1tYWludAorNzUwNDUgMWQwZjQxNmQ0YmE2NDJmMzVlOGIwMTIwNzEyNmI0MGZjYmU4MjQxMSBweTNrCis3NTA0NiA4OTY2NzBkNDFjOWY3NGIzMWE4MjI3NDIxOTMwNzExYmQ0OWVlMTBmIHJlbGVhc2UzMS1tYWludAorNzUwNDcgZjlhNzBmMjI1NjI1MGU3MWFhMzBiYTMzM2RmNzZmOGMzMDEwYzE5YiBsZWdhY3ktdHJ1bmsKKzc1MDQ4IDc4NWVjY2MwMjVhYzZlOWZkZDA3MzdkMTM3MGYzYzJhMDZmNzA0NzYgcmVsZWFzZTI2LW1haW50Cis3NTA0OSA2NTZkMWQ0MGZlY2JmYzU1OWM1ZjdkYTgxMGQ4ZDhlMzRkMDkxMjcxIHB5M2sKKzc1MDUwIDU5MmJiODI1OWM1NDI3ODA0NWEzYWMxNThlNzJkNTliNTdiZDkzZWEgcmVsZWFzZTMxLW1haW50Cis3NTA1MSAwZjRlOTVmZjg1OWQyY2FjNjAwODRkMzU1ZDczMGQ2YjFiNmU2NTc5IHB5M2sKKzc1MDUyIDI4ZTJjZTAwZjU0NWJmNGU1N2E3YWVhYWM0NGQzY2RjODk1OWI0ZmMgcmVsZWFzZTMxLW1haW50Cis3NTA1NCAzZGVmOTUyYjUxNWMyYjQ1OGQ5NGQyMDRmZjhhZWNmNTE4MmU2MDU3IGxlZ2FjeS10cnVuaworNzUwNTUgMzU2N2U4NzE1N2Q4MzYzMWExNjNhOTFhYjM0ODNjNzc0ZjgzYTFhMSBsZWdhY3ktdHJ1bmsKKzc1MDU2IGUwNzNmYzg4ZGM4OTQ3ZjIxMDE2ZWQwZDU4MTljNjExNTA3Y2VjMzggcmVsZWFzZTI2LW1haW50Cis3NTA1NyA4ZWE5MjFjN2QxMGZhMTIzNzBmNTk5NzE3NTRmNTJjOWE4MjIzNmJkIHB5M2sKKzc1MDU4IGEwNzU2OGM3YTgyYWNhNTI3YWYwYWI5NjNhYTE2OWQwMTFiMzhlMmEgcmVsZWFzZTMxLW1haW50Cis3NTA1OSA1MGIxOGFlOGNlYzQ0OTI3ZTRhZWE5OTNkZGQ2NGIwYTExMGM2MTI3IHB5M2sKKzc1MDYwIDE0OWJlZDIxNzM1ZTA3NGFlMzFjZmFjZjdlZGE5ZmJjMzQxNTlkZmEgcmVsZWFzZTMxLW1haW50Cis3NTA2MSAxYjlmMTRlNWU5ZTUwN2Q3OGU2YjVkODA4YjVlNWExNDYwNTYzZjMwIHB5M2sKKzc1MDYyIDhjYzgyZGM2YmJiMDIzZjFlYzc4NGIyYzAxNDcyMmFlZjVhZmE4OTggcHkzaworNzUwNjMgMjY0NGY1NGUzNjc2M2UzODY2NWQxOTRhMjNmN2MzMWNkOTA2NDMzYiByZWxlYXNlMzEtbWFpbnQKKzc1MDY0IGJhODQxYmEwMGQwNjIyMmQwOWJlZGVjYTE3NmM4YzMzOWUyNmRmODQgcHkzaworNzUwNjUgNzgxZWY5NWNiNzgxODc2Y2ZlMTRiZWQ1ZjdhOTU2NTZmYmJhN2NhMCByZWxlYXNlMzEtbWFpbnQKKzc1MDY2IDJiZmFkZGIxOWMzYTFjNjViYmFmZGQ2MGRlZTFmZjdjYTUyOTg2YWIgbGVnYWN5LXRydW5rCis3NTA2NyAwMGE1Y2YzNzQzMTQ2MjQwMWExZDc2MjdkYjRjM2U2ZTVjYjMxNGVmIHB5M2sKKzc1MDY4IDg1ZTFkZGRlNTY5ZTI2M2FjNDg1YzAxYmNiN2ZkMmU5NTg1NWNiNGYgbGVnYWN5LXRydW5rCis3NTA2OSBlOTkwMjRlZGRmYjQ1YzYzM2I5YjlhOTU3OGVlYTNmOWY3OWYyYTA3IHJlbGVhc2UyNi1tYWludAorNzUwNzAgODlmYTI2NDE3MTVkMzQ5YTk0Mjk1YzI2YmExYTc5NzA0NmIyYmI0MSBsZWdhY3ktdHJ1bmsKKzc1MDcxIGFjYmZjNjliNTVmM2UwZDY0ODA3Y2VkOWM2NmRmYjQ5MGQzOTZkZGQgcmVsZWFzZTI2LW1haW50Cis3NTA3MiAwNzZiMjMzMzUyNjM3ZTIyYzk1MWE4YWJlMGNlMjBiNzY3NzQxZDNjIHB5M2sKKzc1MDczIGJmOWJlZjcwZjdlOGFjNjI5MWQ2ODViMTA3MDA2YjUwYTQ2Y2IwNDUgcmVsZWFzZTMxLW1haW50Cis3NTA3NCAyMDA2YTJmNDgxMmQ3NjdmNjllZjdjZmMwZjk2ODU5MGVjMTMxOWNhIHB5M2sKKzc1MDc1IGYzYzU5NTIxNGFiYzQwMDYxZDgyN2MxMmQ2M2RiNWVmODliOTdhZWIgcmVsZWFzZTMxLW1haW50Cis3NTA3NiA3MzkxNDM2ZDhhNzQ4OWQ0NjFiMjc4YWM5NWVlZmQ0Mzk1YzcyMjdjIGxlZ2FjeS10cnVuaworNzUwNzggZGQ0NTY0OTY5MDljZDRjY2FlZjNkN2Y2NjYzYzAzZTU5NTcyNWFkMSBweTNrCis3NTA3OSBiMDUwZWE3YmFmNDBkZWJjOTRhYzFkNjMzM2JiYWMxMTQxYTE4OGUwIHB5M2sKKzc1MDgwIDdlZTE0MGI3ZWY5M2JhZmRhY2E4ZGZiNTM0MjY2NjUxNDE2MTFhYzkgcHkzaworNzUwODIgMDQ1M2QxOGM2M2E0ZTg1ODE3NmU5MzM5MjNkZDRmNTI4YzRhZGI0MiBweTNrCis3NTA4MyBkNjg4OWRhMDY1MmM3Zjg2YmIzODM3YWU0MzQzOTQ1NTc2YzQ1NGFiIHJlbGVhc2UyNi1tYWludAorNzUwODQgNTQ2MTAxYTY2NzdjODRlMzM5N2ZiNmJhNDJhZjVlYzU4NGFjZjAxMCBsZWdhY3ktdHJ1bmsKKzc1MDg1IGIwZTk2MTliMzFkOGQwYTFkODcyNzI2MWI0ZDUzNmEzZDkwOGQ0M2EgcmVsZWFzZTI2LW1haW50Cis3NTA4NiBmY2IzMWJlMjEzNmQ2NGQwNDZhNTQ4OTE3M2I5MmY3YmFjNjFhZWU3IHB5M2sKKzc1MDg3IGMwZDk1NjI1ZjE3ZGU3OGZkZDc0NjU4Y2M2MmQ5YTAzYTQ4YjVlYWIgcmVsZWFzZTI2LW1haW50Cis3NTA4OSAxYTY1ZGRkN2Q5ZTE1MWRmMTNlN2YyN2I3ZDExNGM5MzRlNTkzMTZmIHJlbGVhc2UyNi1tYWludAorNzUwOTAgZjNmYTM5NjdmNDQ2NDFmNTg5YTBkYjYxOWNkMzg5NzQ0ZWUwOTUwYSBweTNrCis3NTA5MSAzZGVjM2I3N2I3ODc1YmMzNzFhZWFmNGQwMTA5ZGY4Zjk5ZWFjODI1IGxlZ2FjeS10cnVuaworNzUwOTIgYTA0MTA4NGMxZmRkNjYyNzBkODYwYmUxZTMyMzg0M2M1MGMzMzg1OCByZWxlYXNlMjYtbWFpbnQKKzc1MDkzIDkxMGRhNTQ1ZTE3YmM1ZjFhNDQxMGJjMjllYTc4OTJmYzNhYTc5ZjcgcHkzaworNzUwOTQgN2QwMjZmNzA2NDUwZDk4MDNkNGZiYWRjMDEwZGY1ODE2MmIyYWIwYyByZWxlYXNlMzEtbWFpbnQKKzc1MDk1IGJiOGI3NzBjZTg5MGU5MWJkZmYzZTU2Mjg3Mjc4ZWRhYWY2ZDViZWEgbGVnYWN5LXRydW5rCis3NTA5OCBmMDRhMWYyMDIzZWNiNjg4MWJmMTVkNjkxMzY3MGI2ZWRhMTg3MGEyIGxlZ2FjeS10cnVuaworNzUxMDAgZGViYjI0NWViYjQwMThkMThiODNjZDA3MTAyNGI0NDRkYTA0OTk4YyBweTNrCis3NTEwMiBjNzY2NzRjMmQ3NGQwMzlmOTE2ZmQ1N2I3MDNkZGViZDQ1ZjJkOGEyIGxlZ2FjeS10cnVuaworNzUxMDMgZTk1MjE4NjA1MzAwZWQwNjRkYzhlNTlkNzRkZGJiYzFkM2Y4ZGE5NiBsZWdhY3ktdHJ1bmsKKzc1MTA0IGFiNDllMGFjOGM4ZjEzMWUyYzNkNWNiN2FkN2Q1OWRiNDA3MjYxYmIgbGVnYWN5LXRydW5rCis3NTEwNSBiNmFmZjdhNTk4MDMwMDlkOGZmYzlmYjBhY2I1NmQ5ODZkYWY5ZTE3IHB5M2sKKzc1MTA2IDk0NTcyOTQ5YzFjYTRiZGUxMzM4MTc4YTg5Yjc4NWMyYzhlMTVhOWUgbGVnYWN5LXRydW5rCis3NTEwNyBkMTA4ZmU3N2MwNmMyNTZjZWVhZTg5MmNhZDMyZjIyZjE5ZWY2MGZlIHB5M2sKKzc1MTA4IDcwMTNlMzY1MTFhOGNlZGVmYjgxZWI5ZTViMjE3ODEwZWRkYTE4NTggcHkzaworNzUxMDkgODkyNzcxOGMxOThmZjdiN2E5ZjY1Y2E2NzY5NTE3NTQ2ZWE3Mzk0NyBweTNrCis3NTExMCAzYWI0NjRmZDVlMDFhNWRkZGE2ZWJhNjg3Yjg4ZGI1MmE4OTU4NjEwIGxlZ2FjeS10cnVuaworNzUxMTEgNTIzMWVjNTEyYzdhZmQwNGExZTU2Njg4ODMxODllMzYxOTkxOWRhOCBsZWdhY3ktdHJ1bmsKKzc1MTEyIGNmOTBhYTU3YjIwYmMzNjc1MjE2OTU4YTExYWQzZTRiNGQ5NDEyODMgcmVsZWFzZTI2LW1haW50Cis3NTExMyA5OWUzNmY0N2NhMGY3NjZmNDExMDFiM2MwYmIyYmJhY2Y2NjMyYWIyIHB5M2sKKzc1MTE0IDRlYzkxNWE1YmI0ZTBjZmM4MDhmZmZjYWZlYTAxZDE1ZjczNjVhMWMgcmVsZWFzZTMxLW1haW50Cis3NTExNSA3ZjY5NWRkNjRmOTAxZDMyZjJlZDVlNTY1YjgxMjI5YWViMDFmOTQzIGxlZ2FjeS10cnVuaworNzUxMTYgNTZiNTMwMDI5YmFjZjZhYjI4ZTg1YTAwZDIwMDRjZmMzNmE0MmJhOSByZWxlYXNlMjYtbWFpbnQKKzc1MTE3IGI1MGRkMTdkZmUyNjJhNDcyNWY0YWUzZTZlNDcwYTFmZDQwMGQzNWUgbGVnYWN5LXRydW5rCis3NTExOCA1MGMzMGE4Mjg0ZmJiNGNlNGNhYjIwYjk0NDI0MjEzODdlYTIxNzdlIHB5M2sKKzc1MTE5IDQ3YjgyZmJkYzJiYjFlMDBmMDM2OTY3ZTUxMjRiMGE0YmRkNzk0ZDkgcHkzaworNzUxMjAgMjAxMjRlYjg4MTFiYmZjODU2YzJhOGNhNjJmMmE5M2U2ZjIzMzc4NyByZWxlYXNlMjYtbWFpbnQKKzc1MTIxIGI5ODViY2RiOGI5MTRiM2NhZDRlNzRmYjQwMDk1MzA5ZDBhYmViYjggcmVsZWFzZTMxLW1haW50Cis3NTEyMiA4MjUwMjE4MjU0NjM5MGVhYWFiY2U5MjY3ZjNhMDcyYzdhMzk0MTYzIHJlbGVhc2UyNi1tYWludAorNzUxMjMgZWViZjNkNTFkM2E0NmYzNTgyZWQ0N2IzMmFmNWQwZWNkYmNkMDc1MSBsZWdhY3ktdHJ1bmsKKzc1MTI0IGVlOWE1NTFhODc1ZWQ0ZmU2ZDVjZTRiYjliNGNiZGY1YjRmNjRiYTQgcmVsZWFzZTI2LW1haW50Cis3NTEyNSBjNjNlMDYzODdiOGZjZGY2YTFlMjhlYjY0MjY0YTZjNjZlMzg2ZjRjIHB5M2sKKzc1MTI2IDc0YjE4YTI2N2NkNzUyYWRhM2IzZGI0ZWZkZmUyZDUyY2U3ZTUxZTYgcmVsZWFzZTMxLW1haW50Cis3NTEyNyBlZGQ5YTVlM2NhZmI2ZjA5NmUxYTI2NjAzYmY3MjcwYmEyNzQ4NjdmIHJlbGVhc2UyNS1tYWludAorNzUxMjggMzU3N2FmNTEyZGY1NzMwMzNmNWI4ZTE4ZmU4MzQ3YWQyNjM2ZGYxOSBweTNrCis3NTEyOSBmMjZiODAyYzAwM2U1YzAwMzU0MDc0NmU4NDFiN2ZiMjdkMDg4ZDc4IGxlZ2FjeS10cnVuaworNzUxMzAgYThkMGU3NjRlMzRiMWNhMmVkY2I0NWZlMWM3YWFhYzM0Yzc3MzBmNSByZWxlYXNlMjYtbWFpbnQKKzc1MTMxIGU1YjgxMjEyZmRmZDcxNzY5ZjQxMmZhZmQ1NGJhYTg4M2IzOGJlODQgbGVnYWN5LXRydW5rCis3NTEzMiA5ODY3MDljMjQ1MzE4OTQwNzAxZDFiZmExNzYzMThmNWZkOThiNmJkIHJlbGVhc2UyNi1tYWludAorNzUxMzMgNGQ3NDczNDQ5NWNmZDY2ODdkMTE5MzViOTEyMzZkODllNzU5YjI4MSBweTNrCis3NTEzNCBlMGYyMzQxMTZhYjE0OTgzNTY5Mjk0ZWZjYWYzZDEzYTBkYjI1MjgxIGxlZ2FjeS10cnVuaworNzUxMzUgMmUyYzE0MmJiZWFhOTlhYzE3M2M4ZDg0Y2Q2MWJiNTFmYjFkZDZjNiByZWxlYXNlMjYtbWFpbnQKKzc1MTM2IDE4NDM4ODZiMmIxZDg2MGIwOGNmOTZiZjhlMzQ2MmI4ODY1NjFkYTYgcmVsZWFzZTI2LW1haW50Cis3NTEzNyAxZjczNjFjNzQyMzRjNWNjYzI0NGJiMDE1MjY3Mjk2MDAxY2VjOWIxIHB5M2sKKzc1MTM4IGU3MmE3M2FkN2UyOTRjYmVmZmExZjVjNWI5MGE4ODY3OWVlZjYyZDMgcmVsZWFzZTI2LW1haW50Cis3NTEzOSA4ZTliZGM2YTEwMGZhMDg2YmQ0NjZmYmE2ZjJhYzYyYzMwYmIyOTJkIGxlZ2FjeS10cnVuaworNzUxNDAgMTlhNGE2MjNkOGI3MDQ0YzJiMWI5ZTI1MWIyYzhiMDhhNDI0MjRmYyByZWxlYXNlMzEtbWFpbnQKKzc1MTQxIDkxZjlkZjUzNjdjMWE1ZjFjNjE0NmNmODRlOTZkYjM5MTcxZjVhNzAgbGVnYWN5LXRydW5rCis3NTE0MiBhMTdjZDlmY2RkNDY5ZWQxZjM4NTA5MmNkODA4MTQ2YmYxZjIwNjBiIHJlbGVhc2UzMS1tYWludAorNzUxNDMgMWVhMDNmODZlMDgxM2RkODBlNTlmMGE2NzU1MmIyZjVhOGQxMTU1NyBsZWdhY3ktdHJ1bmsKKzc1MTQ0IDdlMTg1NjE2N2M0YTgyZWMxNzU0MDI5OGNjODI1ODNlNThlNzQwMDIgcmVsZWFzZTI2LW1haW50Cis3NTE0NSBiYTE5NjYyZWIyMjFiODNlNjM4MThlZTRiMTNhMTQyZjMzMTRkMjgzIHB5M2sKKzc1MTQ2IDA4ZTU5MDc2ZDg2YjJjYWUwZGZlMjdjZjU1OTBmYjkzZTgxNjBhNTAgcmVsZWFzZTMxLW1haW50Cis3NTE0NyBmOTliY2E2YWIwZGNjODVlNzhhNGZjMDk1OTNjN2NiMzI0MTFiM2FmIGxlZ2FjeS10cnVuaworNzUxNDggZGFkNzQ1M2QwZDA4NjJiYjczMDI1NTM3ODhmODViNGUxYzMxMzYzNyByZWxlYXNlMjYtbWFpbnQKKzc1MTQ5IGRmNThmZjJkZTA5YmEyMTg1YzIxMTlmMjY0YjYzOGU5NzljN2QyNTMgbGVnYWN5LXRydW5rCis3NTE1MCA2NzE2YzVmOGM2MGQ1Y2U1NDYwMzRhNTRhODM0MzI4NTM1ODUzOTA1IHJlbGVhc2UyNi1tYWludAorNzUxNTEgMTg3MzU0MmMwMDAwMGM0YjdjZTJjNzk5MmQxZjJkODdmODY2MjMyYSByZWxlYXNlMjYtbWFpbnQKKzc1MTUyIDBlZmZkYjM5YzQ3YjdhMDdiMTk5N2E1ZGJiNWJlZTY2NzY2MTNlM2YgcmVsZWFzZTI2LW1haW50Cis3NTE1NCA3YmNhZjA2NGUyNDA1Njc0ZDhiNTZlMGI0ZWNiZjE4NjUwMjI1OTk5IHJlbGVhc2UyNi1tYWludAorNzUxNTUgNWFjYWU0NmFmODQzZmE4YzNhZDkxMjcxYTQxYjBkMGJkZTMyZGRjNyByZWxlYXNlMjYtbWFpbnQKKzc1MTU2IGQ5MTIwOWQ4MjUxZGU2MDUzMGMwNjZhNTZmNDQ5NzQxMmViNDU0ZjggcmVsZWFzZTI2LW1haW50Cis3NTE1NyA1ZjI0NWRhNzJhZWJiNGQyNzdmZWE0NGIzYmUwYmM0MzU1ZTA1MjYzIGxlZ2FjeS10cnVuaworNzUxNTggMWMwMTZmMGU5NGJhYzFmNjQyOTBmOWIyY2Q4NjkxZGRmMWUyZWVmNCBweTNrCis3NTE2MCAxNmM5ODVkYWFlYjA5ZDY1M2I2NGNmZWI3NmQ0ODRmODk5NDdjZjUyIHJlbGVhc2UzMS1tYWludAorNzUxNjEgZTdlNDUyNDQ5YTVlYWM5YThhY2NiYmZjYTc1NTAxODNkMWIzMzkzZiBweTNrCis3NTE2MiA3MDNkZTU1ZTAwYjg1ZDY3ZWUwNGQ3MzhhZDE0Mzk1MzE5MDRmMjEyIHJlbGVhc2UzMS1tYWludAorNzUxNjMgMDg0NTgwYTM0OWI3MTEzNzg2NTc2MjE1ZmJmZjRiNWNiOTFkNzY4NSBweTNrCis3NTE2NCAzMzliODIzMjFmOGVmNjM5YTFjYjQ4ZjQwM2I2NTBjYjIxZTVjZWZkIGxlZ2FjeS10cnVuaworNzUxNjUgM2UyODgxNmFhMGEyMzI1YTcyN2VmNjFiYmExNWNiNTg5YjUzODJjYyBsZWdhY3ktdHJ1bmsKKzc1MTY2IDgwN2IwZDU5NzMxNGIyZjQ0YjU1ZjcxMDlmMjA0YmVlMDBkNzQ1MTcgbGVnYWN5LXRydW5rCis3NTE2NyA5MjE3YmQwY2MzZmNkNTAzODAzNDJjMzMxM2EyMjEwMzRlOWE4YTg1IHB5M2sKKzc1MTY4IDEwNjQ1NTUyMzdlMjE4Y2ZkMzlmMDk2ZTAzMTgxM2MwMTdjYmQ1MjcgcHkzaworNzUxNjkgZTFkNjk1MWJmMzlkN2RmY2RhNjBhYWZjZmZmZWFlZWI4YjA1NjlmYiByZWxlYXNlMzEtbWFpbnQKKzc1MTcwIDVlYzE1ZGExZmM0MjIwNWExZTEzZTE5YzBmMzdiNDViOTBlMzA3YTIgcmVsZWFzZTMxLW1haW50Cis3NTE3MSAxMTdiMzA4YmUzMjE0MzZiNmJhOTE5YTkwMTFjODMzOGM4NDc3NDUwIGxlZ2FjeS10cnVuaworNzUxNzIgY2UyMTRlZTQxMTY0OTI4YTMwYjY2ZGRlZmI0ZTFhMDhhOWU4YmI0YSByZWxlYXNlMjYtbWFpbnQKKzc1MTczIDE3MDBhNzg5NzNjZDgxNDZiMGI4MmVjZTE5MWZkMWYzNTZmZDM5NDEgcHkzaworNzUxNzQgMmM3YjFkNWM4YjY1YjFjZWMxZTI5ZWJjMzI1Nzk0YzMzMzQyNTcwZiBweTNrCis3NTE3NSBkYzM1MDBkMzllZjE0ODk5MTgxYjMwMGY2ZmI1ZTQ2MGI3MmJhODM2IGxlZ2FjeS10cnVuaworNzUxNzYgZmU4YjliNzNkOWFmMGQ0ZDZmNGNkMjk2M2QzODljZGUwYzZhNzc0MSByZWxlYXNlMzEtbWFpbnQKKzc1MTc3IGUzMDRkOWYzNGQxNTI4NzA1MzBiMmQ4MTA5ODRiNzM4YmE3MGFjOGQgcHkzaworNzUxNzggZmU5NjRiM2M5NjYyYzc3MmVlNDBjMzc4NzRlYzZkNTY1ZDI2NTYxYyByZWxlYXNlMzEtbWFpbnQKKzc1MTc5IDlmMTk4YjBmMzY3ZmJhMDRkYWMzNjFiYTBhM2E1ZTRiYzMxYzI2YzMgcmVsZWFzZTMxLW1haW50Cis3NTE4MCBlNmE1ZWJlNWFlZGQ4ZWUzMDJiZDQyM2NkNGNkYjJhOTI2ZTg2ZjM0IGxlZ2FjeS10cnVuaworNzUxODEgNzgzZTZjYzJhYjYyMzUxOTZiOTI3MDUwYjZhYTliNWNjOTIxMmRjOSBsZWdhY3ktdHJ1bmsKKzc1MTgzIDAwYzMzOTZkN2E4YzRhYjRjMmM4NDFkNjEwMTNhMDczYWU5MjFkMGYgcmVsZWFzZTI2LW1haW50Cis3NTE4NCA4ZTdhNjkyNzg3OTgxNTg4NzMyZjY1MGFjMmZjYWE1MDM3MmEwYzJhIHJlbGVhc2UyNi1tYWludAorNzUxODcgYzg1MGNlOTc3YmI5ODJkNzI1MWQzZjdmYTQ3MzBiZTRjZmI1ZjZhMiByZWxlYXNlMjYtbWFpbnQKKzc1MTkxIDRjNTk5ODNiYjA1Nzk2NjU3MDYxNmMyYzNmZDIwOTU0YzI2ZjljNmIgcmVsZWFzZTI2LW1haW50Cis3NTE5MiBjMmM5MGQxZjNjMzNlYzY5NzI0ZTY5ZjgzMmQ0YzM0YTVjZjZmMTA1IGxlZ2FjeS10cnVuaworNzUxOTMgNzI5MDE0MGNkMzMwMjcwNDQ0NDBhNjNiMWQ1NmI4MjBhOWQwNjAwOSByZWxlYXNlMjYtbWFpbnQKKzc1MTk0IGM0MTE5Mjg2ZmFhNzVkN2RlOWUyMWQxMDc3YzZjM2E3ZWM2YmRiZTUgcHkzaworNzUxOTUgOWIxZWI1ZTc1ZTE1OWU3ZTdlZDNlM2Y5ODUzNjY5OTQ4M2YwNjhkNCByZWxlYXNlMzEtbWFpbnQKKzc1MTk2IDdkN2Y5NzgzYzg2ZGIxNDkzZjM1NjA0Mzg5NWQ4OGRhOTgzYzdlMmYgbGVnYWN5LXRydW5rCis3NTE5NyA2NzQwOWJjOTlmYTJiY2YwMDAxNDBjYTAzZmE5ZjVkNGVhYTUyMTMzIHJlbGVhc2UyNi1tYWludAorNzUxOTggNzdlZTIyMDY4NmNjNTAyYmIwMjk1OWI5MTQ2Y2EwYzgzOTU3OGIzMCBweTNrCis3NTE5OSAyNzVkNjBmOTNkM2M1ZjYxOTA4ZThkN2QzNWZlYTkyMDEyNzQzMWEwIHJlbGVhc2UyNi1tYWludAorNzUyMDIgNDMxMzUwZjIxZDg3ZTlkOGVjNzBjNmY1YWM2NWMzMjNmYmFlNzBhZiByZWxlYXNlMjYtbWFpbnQKKzc1MjAzIDkxMzBmZTljNThiZjk3ZGY4ZDQzZmQyMzM2NGFmMDU2YmYyYTcwYjEgcmVsZWFzZTI2LW1haW50Cis3NTIwNCBmYzc0ZDUxYTY3OTc0MWE5ZDUzNmMwYWE1ZDQ4OGU3YTM0ZmY5NDdhIHJlbGVhc2UyNi1tYWludAorNzUyMDUgZDQxMzYwOTBhYzM0ZjkxZWRhMTFlN2UzNGQ5MzNjZjYwNGFmNTcwNCBsZWdhY3ktdHJ1bmsKKzc1MjA2IDI1Y2ZiNzBiY2Q1ZTlkZDA4Y2YwZTU5MGRmNDU3NjU1ZjEzZjkzNGEgcmVsZWFzZTI2LW1haW50Cis3NTIwNyAzZWUwNGVhOWNjNmUyZjczMWY3NTEzZjJhNWRlNzI3ODg4YTBiZTkyIHB5M2sKKzc1MjA4IDk0NmNlY2FmNjRjMWYxZDA3N2Y2NmMwMjBmNjUzN2Y4NzNjNzk5MzMgcmVsZWFzZTMxLW1haW50Cis3NTIwOSA1Mzg0YzhlZTRhMjZjZTAxZTc3MDRhZjM5ZGI4YWYzZmU3ZjJmYmQ3IGxlZ2FjeS10cnVuaworNzUyMTAgMzliOTk5NGU4NjY5M2IzNTFkMmMzZWY5YWMyYWY1ZjJiYzZmY2EwMyBweTNrCis3NTIxMSAyOGZiY2M3OWMyMGE5M2M2YTY1Mjk5MGMxZmUzNDQwZGIzOTJlMzU4IHJlbGVhc2UyNi1tYWludAorNzUyMTIgNmQwZGZlM2ExM2NhMThhYjM0YjUzZGQ2M2Y0MmQ1MjkwMmRhOTBhMyBweTNrCis3NTIxNCA4NDlmYjI3YzU1OTQ2NjI0NGJlMmMzODNmYThhZWQxNmQ2NWNmNDRhIHB5M2sKKzc1MjE1IDUyMjdlYWJkYmI2NDc1ODYwOGI1MWI4ZTQxOGUwNTkzOGQzMWNmNDUgcmVsZWFzZTMxLW1haW50Cis3NTIxNiA1M2YxN2NjN2JmZjY3YzZjMGM4ZWUzNjA5YjFkMzgwNzExNmI5MzQ2IHB5M2sKKzc1MjE3IGQ1NDkzNjZkZDIxOGIzMjQwYzNhYmFmM2Q4ZWQ0OTc2YzE5MWFkMmMgcmVsZWFzZTMxLW1haW50Cis3NTIxOCAxNTBjZGFlYTU4ZWM2OTE2YWM1MTlkMDkzMzdiM2QzZTZkYmNiMjQ3IHJlbGVhc2UzMS1tYWludAorNzUyMjAgNmNmZjY4MmEzMDk4MWZlMjAzMzUzODE2NDQ2ZDA2Nzk4YThiNWUxOCBweTNrCis3NTIyMSA1YzBhNzgwMDIxNWE2NzQzYmYxN2JmY2M0Yjc5MmUxOTYwNzNkZWJlIHJlbGVhc2UzMS1tYWludAorNzUyMjMgY2NlYjYyZWIxY2YxODMyYjI3NjJiZGZlYWY3YzlmMWVjNWFjODYyNCBsZWdhY3ktdHJ1bmsKKzc1MjI0IDQ1ZmNlMzEwZDQ3OTJjYzNmOWFkMzM2MTE4NjUyZTg2NjUwZjQxNjcgcHkzaworNzUyMjYgNGY0OWJkMmU3YzU4ZDI5ODQ5ZDIzN2ZhZTY4MGZkODY0ZDA0M2JjYSByZWxlYXNlMzEtbWFpbnQKKzc1MjI4IDIxOGNkZDZjNjg0Mjg1ZDgyYjhiMDgzYTQ4MDI4NTc0YWJhMTM4MTYgcmVsZWFzZTI2LW1haW50Cis3NTIyOSBkNWQ4Y2I5OGViMmFlZWEwOWQ5ODUzMGFhY2Q1OTU0ODUwNjUyZmNlIHJlbGVhc2UyNi1tYWludAorNzUyMzAgZjQwNTZmOGZlZWMyNmJkMjkyNTM2ZGY2MThlZmFhZDgwOTUzNTJlZSBsZWdhY3ktdHJ1bmsKKzc1MjMxIDQxYmI1ZTJkYzk0N2FjM2Y3YzRhZjk0NmMwMWExNGUwYjBhZDA2N2IgcHkzaworNzUyMzIgYzliZDYyZWZlNmNlNTUyNGUxNzRkMTA2M2QxNjViOGM5YmUwYjM2MyByZWxlYXNlMzEtbWFpbnQKKzc1MjMzIGJlYzJlNDQ1ZTIyNGI2NWEwZGYxMjFkNjFmOTk5ZTgwZDRiMzEyMGMgcHkzaworNzUyMzQgNWJjZTNhNTliZmQyYzVlZmM3YmE4ZmM3MWJmNzllY2VmZDE0YzlhYiByZWxlYXNlMzEtbWFpbnQKKzc1MjM2IGJiMmExMjNjZGQ3YmIyYWY1ODAxOTIxZDgzNTMzYjBjNDhiMWUwNDkgbGVnYWN5LXRydW5rCis3NTIzNyAzMjFjMjIwN2Q1ZjhmYTk0NWI1MjkxN2Q0YTg0NTliYmUxMDc3NDJkIHJlbGVhc2UyNi1tYWludAorNzUyMzggOTE5YTI3ZGRiNGEzMjExODZiMTMzNDVhMzU4OTIyMzJlOWIxYjZjMSBweTNrCis3NTIzOSAwNTM4OTAxNGJmNDQ0OWNkYTA2MjVjZTJhNGIyNjRlYjBhOTcwZWZmIHJlbGVhc2UzMS1tYWludAorNzUyNDAgYTJjYWJiMzYyNTdmM2JjMDEzMDVmOTVkOGMwMzJkMzUzYjYzYzYwMSByZWxlYXNlMjYtbWFpbnQKKzc1MjQxIGMyMTlmNzI2MWQ5ODYzNTYzMTE2ZDU0NDdkYzY3NzZmM2ZlOGFhY2UgcHkzaworNzUyNDIgOTIyYzExMjJjOTI1YjZhZTU2MmYxOGZlNzIwYTk5MDdhMWRkNGM4NCBweTNrCis3NTI0MyA4ZGJiMGZjMzk5OGFkMDg5MDQyNDE1NTI0YjdlY2VjMjlmNWYwZDgzIHB5M2sKKzc1MjQ0IGM4Mjc3MTBiY2RmZGIyZjYxYzQxOGVjNzQ0YmMzYmM5ZWNiYjU0ODYgcHkzaworNzUyNDUgMTM4YzdmYzE5YjVkNmVlYzRmYzM0MGNiNjRkZjk2OGYwMDBjOWUzNyBweTNrCis3NTI0NiAyYjdlMGVhYWM2NGVkZDQwMDBhM2Y2YzQ0ZDM5YTY0NTVkOThlYzdhIHB5M2sKKzc1MjQ3IDJlNGQ3YTQwYzJkZDdlMTMzYjcxYTk4Nzk3NDc5OTZhN2I5ZGUyM2QgcmVsZWFzZTMxLW1haW50Cis3NTI0OCBiMGI5ZTU5MjhkYTk5ZGRkYTJiNzVjNzRjNGM2NmNkZTgyZDIwOTY3IHB5M2sKKzc1MjQ5IDZiMjNiMGViYTQwNTE2NWEwYjFhMmRjOWI2N2RkNzhmNmM1ZDAzMWMgcmVsZWFzZTMxLW1haW50Cis3NTI1MCA3YWE0YTQyMTE1MmY5MjRlMTFmMTA3MjFjYTMxMDFiYjI4ZTVmNDg2IHJlbGVhc2UyNi1tYWludAorNzUyNTEgMzhiZTI2MzkwMzU1MDA0YjYxYTVjMDIwZDY3MzQzOTA2Mzg5MjRhNyByZWxlYXNlMjYtbWFpbnQKKzc1MjUyIDQ5MDE5MGNiNGE1NzcyMjg2NzMzNDZkZDY1ZTE5NzVlNjk2ODk1OTEgcmVsZWFzZTI2LW1haW50Cis3NTI1MyAyNzhjZjVjOGYxZmE5N2MyNjY4YzkzOTEyZjMzNjg0ZWRjODQ0MGRlIHJlbGVhc2UyNi1tYWludAorNzUyNTQgZDUyNTBkYTAwNWNhNzM5ZjJlYTg2OGYzY2QyODkwMDM5NmZiMDRiMCByZWxlYXNlMjYtbWFpbnQKKzc1MjU1IDk3NGMwM2M5ODg4NDgwNmNmZDM4NGMyNmRiNjA3ZmU1YmEyYmNkYjEgbGVnYWN5LXRydW5rCis3NTI1NiAyOWMwMTk2YjFiZGQ3YjUxNzYwYzEyNmZiM2E3MDg3MGE3MjU4YzI4IHJlbGVhc2UyNi1tYWludAorNzUyNTcgYTAxZjQxM2VhMDhiNmQ5MTdiNTdmN2EwYzBmMDJkNDc4ZGNjMmI5NiBwZXAzNzAKKzc1MjU4IGI0ZDFiZTcxMDJiMzFiMDExMzdjZjE3MjdiODU4YjQyNjE2Y2JmYWMgbGVnYWN5LXRydW5rCis3NTI1OSBmN2VlYTYyYjA4YjA1YTNiOTJhOWRmN2FlY2QxZGFkN2YyNDg3YTg3IHB5M2sKKzc1MjYwIGVlOTAyMDE2MjQzYTI5ZTc3ZGQyZTZkYWFkNTFmZDNiYzEyYTJmNTggbGVnYWN5LXRydW5rCis3NTI2MSA5ODdlNTk2Y2Y1NzM3M2U5ZmMzMTE2YWYxMzRhNzJhNzFkOGNmYmEzIGxlZ2FjeS10cnVuaworNzUyNjIgMWM3ZjJiOWExNjc4MmMwNmM1MTA1NGQ3NTdiOGE3NTAwNjgzODMzMiBsZWdhY3ktdHJ1bmsKKzc1MjYzIDJmYTlmZmU2ZDE0NTFkN2ZlZGVkZmQzOGIxMjQwYjVkMWYwMGY5ZWUgbGVnYWN5LXRydW5rCis3NTI2NCBkMmY5NTkxMTU0Mjg2ZTU0ZjIxMjQzY2QzMmI3YzAzZDlmZTQ2YzgzIGxlZ2FjeS10cnVuaworNzUyNjUgYTEyZTcwMWQ5N2NhYzc4N2YxNWU1ZjQ5MzNiMWE4ZjU2ZDRiOWZkNyBsZWdhY3ktdHJ1bmsKKzc1MjY2IGE0NTk1MDcyNmJkZmJhZGJlZTE1NWVkYjgwNWQ3MzNlMjAzY2ZiMWYgbGVnYWN5LXRydW5rCis3NTI2NyBhNmU3ZWQ1MmRmOWIzMTdlNmFjODgwYTJiNmExYjZmMTlhZDM2MjQ2IGxlZ2FjeS10cnVuaworNzUyNjggYzlkOWI3ZDA5NDIyZjdhNmE5MjAyMTA4MWY4MDAzYTliZmVjZTI4YyBsZWdhY3ktdHJ1bmsKKzc1MjY5IGE0YTMyNGMyYTAwYzc4MDg0ZWFkZGQwMDNiNjU2ZTM2NmM2ODA0NjcgcmVsZWFzZTI2LW1haW50Cis3NTI3MCAyNWFhOTBhNjg2NWI2MzEzMzk2MmRkNjQ2MjZjNTNjN2I2ZmQ0N2Q1IHJlbGVhc2UyNi1tYWludAorNzUyNzEgNDMzZjcyN2U1ZTgyM2YwMGQxMDIzYjQzOTAyZWJiMzhmYzJmOTIyZCByZWxlYXNlMjYtbWFpbnQKKzc1MjcyIGE5ODY0NDE3Mjg2YjkzZDVjYjU2OTQ3MWEyOTgxNjE1MTdkNWQ0MWMgbGVnYWN5LXRydW5rCis3NTI3MyA1ZTNmNmU4ZDZhZTU5NTU5N2M2NGQ1Y2FlYTA3OTQyNTRmYzRiMzViIGxlZ2FjeS10cnVuaworNzUyNzQgNmM5MWQxODAzMTgyNjgxNmE5OTExOWEzOWZjYzRmNGY0ZTY5ZTdkYSBweTNrCis3NTI3NSBjNWEzZDQzMTQ2NzY5ZGEzNjc3MDhjMTFiYzRjNDczOGM5OWUxZGM5IGxlZ2FjeS10cnVuaworNzUyNzYgMzI5NjkzNTI5OWNlNjI3ZDc5MjEwYzYxZjU2OTZiZTZlMDY4OTk3NyBweTNrCis3NTI3NyBkYzA0N2Q5YWJmN2I2Y2Y5MGZkYzEyYmRlODYxN2I5YTAwYmU4ZjBiIHJlbGVhc2UzMS1tYWludAorNzUyNzkgNjE1NWI5NTlmZjcyYmRmNWVmM2NhMGYwZjE5Y2U0NjY2MmE5OTk0YSBweTNrCis3NTI4MCBmOTliM2ZjMDFmYzA2ODk2YzM5MjkyYjQ5NWIwYmJkZmJhMDYxMDFiIHJlbGVhc2UzMS1tYWludAorNzUyODEgYzQ1Y2UyODVmNTUyYjk2M2U0Mjg2MTUyNWZkMTJiYzBjY2YwYTlkOCBsZWdhY3ktdHJ1bmsKKzc1MjgyIGI3ODUyMWFlN2E2MjQ1ZTQ4YmQ1Yzg4MmRiZTU5ZjM3ZjU1OGIwODcgcmVsZWFzZTI2LW1haW50Cis3NTI4MyBlNzU5Y2EyNTcwMWQ5YTY2N2RkYjg3MmJiYTViNTc3N2U3NjZlZjdkIGxlZ2FjeS10cnVuaworNzUyODQgMjQ5YjBiZTc5N2E4MmUyZWRmNjNjNzgzMGU1ZmEzNjcwYmM1NzJmYiBweTNrCis3NTI4NSBkZDk0ZjFkOGM5YTVjYTQ0Njk2MzQ5MDY3MDE3ZmJiZjIzYjFkODM3IHJlbGVhc2UzMS1tYWludAorNzUyODYgNDhhYjJlNjJkZThiYzZiZDM2NWFjMWEwMTQzMTE5YTY1YWIwNjE3OCBsZWdhY3ktdHJ1bmsKKzc1Mjg3IGVmNzM0NjQ0OGI2MDBkZmNlZWI1NGFmMTAwM2QwZjdlMDI1NGQxZjggcHkzaworNzUyODggMzA3MmY5NDBmMzVhMzZiNmQ0OWY1ZTI0ZWYxZmRkNTViODg5YTFiYiByZWxlYXNlMzEtbWFpbnQKKzc1Mjg5IDk2YWZmMmMyYTlhMWQ1YjcyZTBmNGYxZDBjMWVkNzk1OGQwNzhjNWYgbGVnYWN5LXRydW5rCis3NTI5MCBjYjQ5ZjJlYjA0NTc5Zjg3YWZiZWNhNzA5ZDA2ZTc2YmNmMmEwNjM1IHB5M2sKKzc1MjkxIDlmNjMxYTNiYjU0OTNmYWQ5OTgxNzkyOWQ4OTk4MTNmODBiMGViZDAgcmVsZWFzZTMxLW1haW50Cis3NTI5MiBkNzkwMjAyYzE1MWRiMGM2ZmI0MzUyOTg4ZmQ4MTdjZmVmZjU0YmE4IGxlZ2FjeS10cnVuaworNzUyOTMgYWJiYzc5NzU3NWM0MjM3MGE5ZWNlMWJjZGI0NTA2MWM4ZWQxNTVkMiBsZWdhY3ktdHJ1bmsKKzc1Mjk0IGViMGMzOWY2MmRlMTljYzdjMjQ3ZDY0NDkwOThjYzlmZTBiNTQ4NTAgcmVsZWFzZTMxLW1haW50Cis3NTI5NiA1NDU4YzIwYWEwY2Y4Mzk1YmY0ZGI0OWIxYzE5Njg1N2RmZTM1MDk3IHB5M2sKKzc1Mjk3IDk0NmUzYWYwMGIwYjhmMTNiNjhmOTdkODdhZjViMmUzZWI3NmQ1MWQgcHkzaworNzUyOTggMmM2MGU5NDYwNjJlYzBhZmFhMjFkM2JlYTdiNzI0M2Y2MzU5NmJiYiBweTNrCis3NTI5OSAyNWU1MWM1YjA2OTZlODVjNDkwMWI2OTZlZDdhMjQ1ZGM2NmFhOTZiIHB5M2sKKzc1MzAwIDg5NmE0ZmIxM2YzNWM5MWRmZmIwNTRkZjg1ZWVhODJkZTNlOWRlNzUgbGVnYWN5LXRydW5rCis3NTMwMSAxZWM4YzdmYjg4MDdiNWFmY2Y2YzUzNjU0MGE2OGE1ODE1NTg4OThiIGxlZ2FjeS10cnVuaworNzUzMDIgMTJjZDk0ZDM5ODc0NjQ4ZWIwZjNjZmI1MzdjZWRmYzBkZDAwZjIzMSByZWxlYXNlMzEtbWFpbnQKKzc1MzA0IDU3ZWUwNzkzZTQ2MjdiODBjZTEyYjZmZjQwMzRmZWE3YWRjNDVkNzUgbGVnYWN5LXRydW5rCis3NTMwNSA2ODQ5NjBmYjFjYmY2NGU4NTc5NzljYzJhOTY4NWYwNjcxNmJjMTE5IGxlZ2FjeS10cnVuaworNzUzMDYgYWI0MjAzM2ZkZmRiZTVhYjRlMTI2ZWU1ZTFhODA4MWVjMWNlMDIzMSBweTNrCis3NTMwNyA5MWFhMDQ0MTAxMzkwY2VkMzk4YWFkNjFlNzEwMDFhMDY3MGQxNTlhIHB5M2sKKzc1MzA4IDI4MzY5MzllN2M1NDdmZmVkNDA2NDZlMTIyZmYzYWJkMGViMjM2MmIgcmVsZWFzZTMxLW1haW50Cis3NTMwOSAyOTkwOGYyYmM5M2ZkOGNkZWMzNTc0Y2U0NzBhNWFkMDFlZjA1N2JiIHB5M2sKKzc1MzEwIDZkMDkyYTUxZTE4N2U0NTIyZDZiZGU4MzU4NDljYzI2MTUwZjZmMGUgbGVnYWN5LXRydW5rCis3NTMxMCA0ZjkxMzEyZDZlYzJhYjM1ZTdhYjgyMmE4M2RhMDA5MjMwZjEyNGFhIHB5M2sKKzc1MzExIGI1ZWE0NzczYWZmMTAyMWEzNTYxMWJlYTIxZDBlNGJhOTY3NGUzNTUgcHkzaworNzUzMTIgYTJmMDJhMTI1ZmViMGI5NjlkODM4NjRhMGU5NDdmNzlhOTgxNDNhOCBsZWdhY3ktdHJ1bmsKKzc1MzEzIDMyYzM1ZjliMjQ1Yzg3YzBjMDc5Zjg0MWI5ZDdjNWQ1YzZmY2E4YzMgbGVnYWN5LXRydW5rCis3NTMxNCBkNzNmMjIxNWVmYzE5ZjkyMzcyNjhmOGI0NzMzOGQ1OGEzOWM4MGUwIHB5M2sKKzc1MzE1IDMzYjA0MTM1MDAzNDJhZjcwYzI4YjljZDM1NDkwYzFhNTRiZDU3YzMgbGVnYWN5LXRydW5rCis3NTMxNiBlZjMxYjA0ZGU1MDU2MmZmYzQ1MGE2YTFkNDBlMGFlZWY4OGQ3NmFhIHB5M2sKKzc1MzE3IDM5MzFjNzhhZjExNzViM2M3NDI0ZjMzMTNkZjAwY2I5ZjA1ZWRjZWQgcHkzaworNzUzMTggZmY4Yzg2YTI0YjE1OGZiYWUxY2Y0NTQ4NTVmZjU4Yzg2ZjAzNDE0YSBsZWdhY3ktdHJ1bmsKKzc1MzE5IDM1NjE5Y2ZjZDBiNWJmNWE0MzAwMWY2MjEzZmIyZDJmMzM4ZDg0NTggcHkzaworNzUzMjAgMjIwZjdkZWZmYmFmYjU3NjAyYmE3MzVmNDMzYjJlZDA3MDEzM2ZiZCBweTNrCis3NTMyMSA0MmE2YTIyNDk0NzRjYTZiMjBjMTEwNGFhZTg2YmEwNzhkNWYyNTdmIGxlZ2FjeS10cnVuaworNzUzMjIgMzQ5OTlhMWFlYTliMjYxNzYxM2ZjMGViYzE1OWJmMjExZDYwZjdmYiBsZWdhY3ktdHJ1bmsKKzc1MzIzIGJmYTYwZGY3NjkyOTBhMTIzZTM2YmNlZTQyZDBiZjA1YTM1NDE0MWQgcHkzaworNzUzMjQgNDQzMTQ5ZmIzNTc0OGY1Y2RjZmJhODk5YTk3MjZkZjI5MWRmNWQwZSBweTNrCis3NTMyNSA2NTg3ZWE2ZDNlNzg0NWRlZjlhMjNjNTJhMjEyNWI0ODJhYjc1MDhmIGxlZ2FjeS10cnVuaworNzUzMjYgZjMyZmVkYTY1Yzg1NmFlNGFkMjU4NGRkOGMwNzc3NGZkZWUwODJjZCBweTNrCis3NTMyNyA0NTgxNTNkNWQ4MmQ2ZjcxYzdmZThkYjQyMTZlYThlNDhmNjllYjI2IGxlZ2FjeS10cnVuaworNzUzMjggMjE2OGI5ZDQ5ZTNiMTkwOGIyYzEyZmFkYTg1ZGQ1NDZmYWNjM2MyNiBweTNrCis3NTMyOSA1NTk3YmE3MGEzMzZjODY1ZjA2YThhMTkwMmQzMjE2OTczNzlkODA0IGxlZ2FjeS10cnVuaworNzUzMzAgZjc2ZTJlNjM3NzMwMTg5YTRjZjE2MDhlZjRmNDdmMWEyNWY5N2Q3NyBweTNrCis3NTMzMyAyNGU5MmNlZjI2NjQ2MzU5ZmUwMjYxM2M2MDMxY2I5YzFhYzU3Y2JkIGxlZ2FjeS10cnVuaworNzUzMzQgYjk0MmM3MDZlMzM4MTIyOGMyYWY3OWNkYjlhOGIyNTUwMDEyNWY0NCBweTNrCis3NTMzNSA2OTZhY2ViNzYzNWI5OTk2NTU3OGNhNTdhOThmZjRmM2I4ZDNmZjhjIHJlbGVhc2UyNi1tYWludAorNzUzMzYgODY3NjMzMzMwYTkzOGU3NDYzOTk3Zjk1NDI4MDM3ZTMwZDdiYTNjNiByZWxlYXNlMzEtbWFpbnQKKzc1MzM3IDYxOTRmZDc1NDMyMzk4ZjhlNWViZTg5MjFhMDI2YjkwMmViYWYyZjIgbGVnYWN5LXRydW5rCis3NTMzOCA4NmI2ODRjOTY5NDI0YjJlYWU2ZjlkNjUxYTRkMGEzNTE3ZmMzZThlIHB5M2sKKzc1MzM5IDMxMzBiN2U4MTJiMDRlYWYzOTg4NDA2M2Q1Y2Y1ZjUzZTNjMTgzMzUgbGVnYWN5LXRydW5rCis3NTM0MCA4OWI0YmIwYWE1YWNmODM4NjI5ZTYxMDkzZjNlMzYzNGIzY2ExZWFkIHB5M2sKKzc1MzQxIDRkZDA5MDEwMGVjYWZiNWI2OTI4OTQxZDBjMTZlZTNiMTZmZjAwMGMgcHkzaworNzUzNDIgM2VkNjU3MTZkN2FkMjQyYzk5OTZjYjZhMDFmNDg2MGI3MDI3YmVmMiBsZWdhY3ktdHJ1bmsKKzc1MzQzIDVjMzY1YWFiMTBkMWNlMzBmZTc0NTA2NzBlYmQ1NmFlOTgwZWI0ZGMgcHkzaworNzUzNDQgYzEwNWI5OGU2NDlkZTlhNDU4NDNlODM2MzM1ZTIwNjkzMzAxZDg4YyBsZWdhY3ktdHJ1bmsKKzc1MzQ1IDBhZDdmOWM5NTJiMDhjYTEyODkwYjRhZDRiMDM0MzhhYTg3MTlkYjcgcHkzaworNzUzNDYgNGJhMjdkMThkZDkyZGFhZmI3M2IxN2Y5ZmY1OTU1NDc4NTY0NDdjYiBsZWdhY3ktdHJ1bmsKKzc1MzQ3IGJkZThhMzk2MjI4YzJhYWMyMWU0MzljYjJjYjEwNzk4ZThhNDJmNTkgcHkzaworNzUzNDggYTE1YzdkNTBiM2NiNjRlMDE2ZWQyM2UzOGI3ZjEzMmZhY2Q5MzQ5NSBsZWdhY3ktdHJ1bmsKKzc1MzQ5IDM5N2UwMmUwYmU5MzE0YjU0MjEwM2ZkNTZkNDk4YTJhMDRlMzZiMTMgcHkzaworNzUzNTAgY2EwMThlMmJiODY1NGI5YjU5NGY2YTdhNGE0NzFhMjA0MmY2MzNiYiBsZWdhY3ktdHJ1bmsKKzc1MzUxIDUyZDY5NzNjYmQ5NGViMzM0NGIwMzczYzJkNmJhMzEzZWIxYmRhZWIgbGVnYWN5LXRydW5rCis3NTM1MiA1M2M4M2ExMzJlMWVhMjFiYjZjNjZhZTk0YmY0NDI3NDc5ODAyYTMzIHB5M2sKKzc1MzUzIDY5OGUwZTY5Yzc2NTdiMjY5YzBlNGYxMjg2MDdkZWFiYzk0MzU4YTUgcHkzaworNzUzNTQgNmE1ZTBjOTEzYzdjZWJhYWM4ZmE0MTdmMzU2ODc0MDM4NTllODA2NCBsZWdhY3ktdHJ1bmsKKzc1MzU1IDkyMDQwOGU2MDMwMzIxMzM3YjkxM2ExYzM5ZmIxYmVjZGEzMmZkNzAgcHkzaworNzUzNTYgZTQ2MTljZjllNjJjYmUxMjhmOWVhYWIyYzFjZDRjOTkyNWY2YzVkMyBsZWdhY3ktdHJ1bmsKKzc1MzU3IDhlZTQ1MTc5YzUwMzk4N2IwM2IwN2YxYTUxYjdjZjk3MGE5YzU3ZDcgcHkzaworNzUzNTggYTVkN2I1Mjc3OTUxOTNjYzZhYWM2YzFkOTFlYjcwOGVmYmY2NDNjNCBsZWdhY3ktdHJ1bmsKKzc1MzU5IDE1MjFhNjU3YTg1YWQ5YjU2MDE4OTc3YzU1OWIwMDQ4YWM0MTI1YTcgcHkzaworNzUzNjIgMjA1Yjk2ZWZiNzkwMGExMjhlNzMwYzNjNmM4OTJmZTljYjE3ODQyNiBweTNrCis3NTM2MyAzMjAwOGQyM2Y2Y2I0OGExZWRhMGIyN2YxYjFhZjY4OGIwZWE3N2ZkIGxlZ2FjeS10cnVuaworNzUzNjUgOWY3NjUxMThkOWI5NzEzOWQ2ZTY4M2Y4YmY2NjM1N2I4NTg5ZGEyZCBsZWdhY3ktdHJ1bmsKKzc1MzY3IDIyMDA4ZDkzNGU2Mzc1OTJjNDcyN2NiYTkyZjE2NmExOTMyZDg3YTEgbGVnYWN5LXRydW5rCis3NTM2OSA0M2FkNTU0NjE1YjZkMjAwYzYyZmVkNzU2NGVmNjgzNTE0Nzk3M2UwIHB5M2sKKzc1MzcwIDA1MDc0OGNlNWFkOWVhZTI0MjgyZWFhYjY3YzY4YmRhZDgzZGRlMzYgbGVnYWN5LXRydW5rCis3NTM3MSA0YjVkMzk4ZWI4NjY2NDMzZGVmZGY4ZDdhMjM3YzI2YzgyZjhlODM0IGxlZ2FjeS10cnVuaworNzUzNzIgOWEyYzM3YzMyYjdlNzE4MGE3MzE1ZGFhOGNjNDhiZjU5MzcyMGQyZiBsZWdhY3ktdHJ1bmsKKzc1MzczIGNkZGI2MjBmMGNkYTBhZTE0YjMxMWI4MzQ3OGRmZDU1NWY1MGJlYTAgcHkzaworNzUzNzQgMTY4ODQ3OTU1MzI0OTRiZDZlZTAxNzgxNmFkNmQ0OGM2ZTdmNDk4OSBweTNrCis3NTM3NiAzOTIyZTczNGM5YmI3MzJmOWY0ZTRkZjk4Y2U3OWJjNTJmMTgwYjg5IGxlZ2FjeS10cnVuaworNzUzOTAgZjU5ZGE5YzkzNDI1YTlmOWNmNjE3Yzg3Y2FjMDQ4NThhYTVhZWU5ZSByZWxlYXNlMjYtbWFpbnQKKzc1MzkxIDk1YTY5NjQwZWJkM2JkMTc5N2ZhOGJhMmFhMmY3MDFhNzI3NTE3ZDEgbGVnYWN5LXRydW5rCis3NTM5MiA5ZDE3YmI0ZjExNzBmYWIyMTBmNzg3ODgyMzNiMjIxOGY1Njg0MmRhIGxlZ2FjeS10cnVuaworNzUzOTMgMjA5ZTM4MjU0YWU4Yjg3OGQzNDUzNTRmZWYwZGUyOWU5ZTIxMjU3OCBweTNrCis3NTM5NCA5YmQ2YTdhZWUxM2NhODBlODU2OTc5ZWUzOTc5ZmFkMjNjNWU2MTYwIGxlZ2FjeS10cnVuaworNzUzOTUgMmE3NTgzNzE4ZDI1M2ZkNWEwZGEyNmNmOTgwNTgwZjM2NTg5ZDJlZiByZWxlYXNlMjYtbWFpbnQKKzc1Mzk2IDdmZThhODMxM2E1YjJlN2UyMzQyMmVmYWNmOTY3NmZiMzVlYmQ2NGQgbGVnYWN5LXRydW5rCis3NTM5NyBlOGUxMDM0ODhmYjM3ZTMwYjlkZmY4ZjRhODFmNjA3NmMxMjQ2Y2E0IHB5M2sKKzc1NDAwIGJkYmRhN2E5NGMzMzNlMDM2NWRmNjE5MmMzOTQwYTczOTA3ZDg0Y2UgbGVnYWN5LXRydW5rCis3NTQwMSA3NzU2MWNkMzlmZDM5N2JkM2ZhY2UzMmVlZTVhOTZjYmI5NDM2ZTY2IHJlbGVhc2UzMS1tYWludAorNzU0MDIgMDM4NTQ3MzJhNmMyOGU3MzlkNTU0NmYyNGI5YWE3MmUxZTAwNWJkZSBsZWdhY3ktdHJ1bmsKKzc1NDAzIDE4MzQ3NGJiMDIxMzhkYTg4YzNiNDk2YzUyYTdiMWIwYTA1ZGE0Y2EgbGVnYWN5LXRydW5rCis3NTQwNCA2MzUwOGVjNzY4NDBhYTY0ODIwOTg3NTcxYTc4OTVlYWRkMTBjZjBiIHB5M2sKKzc1NDA1IGRjNzVkMTdkZDMwNGE1MDZiZDE1N2U1YzJhNGVhZWZmMzE3Y2FjZTAgbGVnYWN5LXRydW5rCis3NTQwNiA2N2JiMTdjMmU4Njg1MjE5ZmFiM2M3YmZiMjAwYzA2ZTRkZDg1MGMyIHJlbGVhc2UzMS1tYWludAorNzU0MDcgMjQ3ZDVhNWVhZmE1MzQzOTc1Yjk5ZjNlZTk4ZmE0YzFkOTQ1ODE2OCBsZWdhY3ktdHJ1bmsKKzc1NDA4IDU4ZTU3NjMxYmU4Y2I2MzhlZDMxZTRiNDIyOWEwMzZlNDc3YTkyOGQgbGVnYWN5LXRydW5rCis3NTQwOSAzODZhNGQ3YzNjOTljZmE0OTI0M2MzOGM4NWZhNDQ0OWJmZjc4ZDY4IGxlZ2FjeS10cnVuaworNzU0MTAgY2RjZDgwNWVlZTg1ZDY1MDU3MzAyMTEyMmUwNjI1ZmI2ZmY3MjJhMiBsZWdhY3ktdHJ1bmsKKzc1NDExIGU4NTMyY2M4YTE0ZTQ5NzRmOGEzZjI3NGMyYzNlYzdjM2IwNGI5ODkgbGVnYWN5LXRydW5rCis3NTQxMiA5ZTcxOGQ4ZjcxZThmMDE0YTY3NzZiYTJjMWNhYjU3NmQ4ZTcwYjY2IGxlZ2FjeS10cnVuaworNzU0MTMgNGVlMzQzYzRiYzQ5ZDA3ZTNlZTY2NWIxMmM2MDIzNTk5N2M1ZjYwMiBsZWdhY3ktdHJ1bmsKKzc1NDE1IDZkNTBjNGMxYThiMzQ2ZmUwMzY0ZjIzN2ZjMjgwY2FiMWFhYTI3OGQgbGVnYWN5LXRydW5rCis3NTQxNiA1ZGZjNThmMzliOWY1NDIxOTBlNjlkNzBjYTIyN2NkZmVjYzM4YjQ1IHB5M2sKKzc1NDE3IGJmOGM5YmY3MTE1YzkzYTIzMGY5ZmI5ZjMzOGY0OTliMmE1ZGNjMWMgbGVnYWN5LXRydW5rCis3NTQxOCBkMjQyOThkZjJhNjYyMDZiZDAzODU4ZDkzZTczNGMwNmE1MTUwNWFiIGxlZ2FjeS10cnVuaworNzU0MTkgOTMzNTBhY2I1NDI1YmE0ZjAwYjVjZDgwOGM3YzYwNGVlN2E1MDI4MSBsZWdhY3ktdHJ1bmsKKzc1NDIwIDY0ZTE5YTY4OTg4NjE3ZWY1NDVmZDQ1MTgwZDBmODg3MmVhZTE0ZTEgbGVnYWN5LXRydW5rCis3NTQyMSBmZTM4ZDNjMTc4ODhjOGMwZWJlYTEzYjhhYWUxZjFmY2RlMmQyMDdiIGxlZ2FjeS10cnVuaworNzU0MjIgMTZkYjJhOTMyMjQ4OWMzOWViZjJiMDVkN2I2MDZmMzk0ZmIwYWE2NyBweTNrCis3NTQyMyA1MGI3ZjU2ODE0ZjllM2VhM2M2MTBiMWZlYjI2YTU3ZWQxMDNkOTFiIGxlZ2FjeS10cnVuaworNzU0MjQgZDBmMDA1ZTZmYWRkMDY0ZDc1MDMwYTlhZGJhZmIxMmU3YTI2Y2E3ZCBsZWdhY3ktdHJ1bmsKKzc1NDI1IDkwNDRmNjRiMTBhZTA2YjhjMDFhZjNjZDQ3ODZmMmVlMjc0MTQ2NDggcmVsZWFzZTI2LW1haW50Cis3NTQyOSBmYTYxODhjNDdiNjNmYzUyNWQ4MzljODc5NWIyNWQyZjM1NzZhZDAwIGxlZ2FjeS10cnVuaworNzU0MzAgNDViNjI3MjUzNzdhNjEyODU5N2RiY2ZkYzZkOWZmNWU3NGNkZTE2MSBsZWdhY3ktdHJ1bmsKKzc1NDMxIGE0YjE5MjJhMzA3NDkyMTg0YWE0NDY5NGQ5MjhjYjUxYzEyNGQ5MGUgbGVnYWN5LXRydW5rCis3NTQzMiBlMDBjNzg4NjliM2NkMzU2OGQxNzdlYWQyNzEwOWJmMTE4NTJkNmNlIGxlZ2FjeS10cnVuaworNzU0MzMgOTgzZWVmYmY2NjQ5MzQwZTc3ZGIyNTIwMGVjMTk3MjM0MzZiNzM5YyBsZWdhY3ktdHJ1bmsKKzc1NDM0IGU0YTBiODczOWU1YjhhYjdiZjllNGZhNmViZmZmZGE3M2Y0NjdhM2MgbGVnYWN5LXRydW5rCis3NTQzNSAzYjM3YjhkZDc2ZDc1MDI1ZjE0MTI0N2VmNGQ5NTNmY2I2MjE5ZmIxIHB5M2sKKzc1NDM2IGVjNTA4Yzg5YWQzNjgyMDc4Y2U0M2MwN2RkNjVkZDJkZGRkNGM0NzIgbGVnYWN5LXRydW5rCis3NTQzNyAyMGQwOTU0OWI4MmMwYjk5Yjc3MGMxMTQ4MDJkN2Q4Yjg5ZDI1YTkzIGxlZ2FjeS10cnVuaworNzU0MzggMTYxN2MxMTU1NmFmYTI4YzFiY2FiNTQ4MjQ5MGE1ZjNmMWRmYjBkYiBsZWdhY3ktdHJ1bmsKKzc1NDM5IDdlNTg0OTQyMDRjOGY2ZTQzZGRlYjA5YTk2NzQ4YWVjNDc4NDNjMzYgcHkzaworNzU0NDAgMjc1NGQ2NDE4MGQxZGM1NTdkYWIyOTc5YTc5MjU4YTg3MGQ0ZDYwMiBsZWdhY3ktdHJ1bmsKKzc1NDQxIDNiYzZmYjNjMGNjZDA5YTA1MDc0ZmJhMmZhNGU3YjMzNDIxZmQ4NzkgcHkzaworNzU0NDUgZDllNDhhYjYyNTYyYzE0ZjAzYjI1MmJiMTE5Y2YzYjhkODI2YWYzNSBsZWdhY3ktdHJ1bmsKKzc1NDQ1IGQ5NjMwNTE3YzcwYzE5NTA0MjJhYzdlMTIyZmUxMzg5ZmYxYzFmMTUgcHkzaworNzU0NDYgN2ZhMTRiZThhZDczY2IzNTc1NzY2NWQ4MTM4MWUxNzMwZDRkMWM1NiBsZWdhY3ktdHJ1bmsKKzc1NDQ3IDhkZmE4NDNjODM1MDFhMGU1ZGI5ZGFmM2M3NDEyYmY2OGUwOGY0ZWIgcmVsZWFzZTI2LW1haW50Cis3NTQ0OCAyNGQzMjFmZDNkMWEyMGIxNDc0NjQ4ZWIxYjNkNGJkZjIyNDVhMjVkIHB5M2sKKzc1NDUwIDllNDJjYzE5MmE0NDY1OWY0ODJiODc3MGFhYmYzZDJkN2VmNDhiODcgbGVnYWN5LXRydW5rCis3NTQ1MSA3NjAwNDM2ZGIyYTliODY5YjlmMDMwZjRiNjhlMGY3YzhlOTFkNGZjIHB5M2sKKzc1NDUyIDI2YjExZTZmZTVlMzFjNjdlYmZmODhjZmU2OWM0ZGUwYWU4M2M4Y2UgcmVsZWFzZTMxLW1haW50Cis3NTQ1MyAzNjU4YzBhOTU4OTIyYWY5MjZmMzk5NzY3NGZiMWZjN2M3NTdkODFkIGxlZ2FjeS10cnVuaworNzU0NTQgNjI0ZjgxYjVlYzI0Zjc3M2JiMDFmMDc5NDY1ZDhkYzdhYmU1YmNkNyBsZWdhY3ktdHJ1bmsKKzc1NDU1IDdkNzFjNTFmYzMwOGMxYjI2NTNiOWYyM2QzN2M0MWU0NTlhMTc1NDQgcHkzaworNzU0NTYgNWVhNmNkMjgzOWNjN2MxMDI3NmU5YTI3NWMxNmY1MDJkOTlhNzUzNCBsZWdhY3ktdHJ1bmsKKzc1NDU3IDljMDZjNzMwOTc2NTY2YzRlZDlhOTExMWI5ZWFkZmI3YTkwOGIwZjEgbGVnYWN5LXRydW5rCis3NTQ1OCA1Mjk5NTc5ZjU3OWE4NTRhZmI4ZTA3MTczMzIzMDRkY2E3ZTI2YzY5IGxlZ2FjeS10cnVuaworNzU0NTkgNGMxZmY3YjI0ODJlZTE4YTRlOThmMDAzYmNmNTllODY5MjU3NDg5NiBsZWdhY3ktdHJ1bmsKKzc1NDYxIGExMDg4YmI0ZmNmOGE2ZDIxMzQ2N2VmODE4NDA4ZGIwYmQ4MTk3OGYgbGVnYWN5LXRydW5rCis3NTQ2MiAyMDQ4ZDA0ZGVhYjQyYzU1NWI4MzViYTdiNDE5ZDRhMjhkOWMxOTJjIGxlZ2FjeS10cnVuaworNzU0NjMgODE0MzNhNjc2YThiYWZlMWZlMzY1ZjlkYzM4MGIyMmFmZDViOWIwYyBsZWdhY3ktdHJ1bmsKKzc1NDY1IGI4MThhN2E3MGE0Nzc4MTFhMWYxMGE0M2JiY2ZmZTQ0ZWQ1NWM3NGIgbGVnYWN5LXRydW5rCis3NTQ2NiA5ZjA1M2U1NTBjOTc3NjhiMGZhZGY4Mjk1YjAyNDZkM2Q0MzE2NjI2IGxlZ2FjeS10cnVuaworNzU0NjcgOTkzMjA3ZGNlMzk1NWI0MDhmNmE2YTI1MTU4NTE5ZDYwOTg5NDViYiBsZWdhY3ktdHJ1bmsKKzc1NDY4IDAwNzUwNWNjMWUyYzczNTZmNjRhZDVlZmY0ZGFlNmI1NGQ5ZDI4OTUgbGVnYWN5LXRydW5rCis3NTQ3MCBhYzNjNjMyZTFjMTNjMzFjNjYwYjc5MjIzZmY3M2U5OTNjNTBmMDgzIGxlZ2FjeS10cnVuaworNzU0NzEgZTZkZWIxNWM1YWU2YTA2ZmMxZDQ2YTkxYjMyNzQ3ZjdkZjY2MWJlZiBweTNrCis3NTQ3MiAzNTRmYTU2MWFhZGY2Y2RhMTA1NjhjYTU5OGUzYTQxMDdjZTNjYjcyIHB5M2sKKzc1NDczIDQ5ZTNkNGFjNjljNmY5ODBjMzUzNTViMDA1YzgxNzQ4ZjIzOWRlZWMgcmVsZWFzZTMxLW1haW50Cis3NTQ3NCA4YTZiNjE0ODRhOTg0YjhhOGZkMTg5NzA3YWFiZmFiNTdkNjlkMDRlIGxlZ2FjeS10cnVuaworNzU0NzUgYzM3Y2E5YWNkMWY5YWFjYjllZWIzODBmMTc5MmM0NjNkZmE5NmEzMSByZWxlYXNlMjYtbWFpbnQKKzc1NDc2IDMwYmI0YzM1NTU5ZDYxNjUxZTc1MWU3MTgyNTc0NGNmY2NiNzVkNTEgcHkzaworNzU0NzcgZDA3OTg3N2RhMzM1ZTYzODI4Zjk3Nzk0NjUzZTgxMTNhY2I1MzkyYiByZWxlYXNlMzEtbWFpbnQKKzc1NDc4IDg0YzE2ODA4YmEyYzgxZGEyZWViY2MwYmNkYWUyN2RjNTgwMzcwZDggbGVnYWN5LXRydW5rCis3NTQ3OSBkOTQ0NDAwMTE0ZTUwMGQ1YzYyOWE1ZmVlZWYzM2JiNTgyYzU4NTc5IHJlbGVhc2UyNi1tYWludAorNzU0ODAgYWE1M2EyZDRlZjJmY2JlOWIzOGEwNTFiNmI3OGFlN2E2Nzg5NGY2MSByZWxlYXNlMjYtbWFpbnQKKzc1NDgxIDVlN2M1Yzk0YzU3MjFhMTZiOTdjMjNjY2RhMzAxNDc4MjBmMDE4NTUgbGVnYWN5LXRydW5rCis3NTQ4MiAzNDljMDMzNzg5NmEyNzJmNjA2ZjkwZWU2NmUwNmE4NjAyNjE3NzdmIGxlZ2FjeS10cnVuaworNzU0ODMgZWQ3ZGVjMTM2NDMwZmU1NWI2NWI5YmZiNzM4YjczZjdhMTg0NzEyZSByZWxlYXNlMjYtbWFpbnQKKzc1NDg0IDc3N2JkNWRkMWQ5YWM1NDFhMmEzYTkzN2ZiYTkyNjhjOWJmMmUzYTUgbGVnYWN5LXRydW5rCis3NTQ4NSBlNjdlYjk2NjAwNDE3OWZlYmRiZjk4NzQxYWFmM2U4ZGYyMTAyYWFjIGxlZ2FjeS10cnVuaworNzU0ODYgNzdlY2M1ZTRmNjY0YzcxNDI0ZTRkNTFhYTVmMTM2M2ExNjA5MmNiMSBsZWdhY3ktdHJ1bmsKKzc1NDg3IDI5MjhmMWU4YjM4NTgxNTQyM2FkMmU4OWI1ZDhjOTAxNzEwNTIwNjAgcHkzaworNzU0ODggY2I1M2IxZmE3MjA2ZjJmNTIwNTA1Mjc5ZDVkODU1NDRlYjZiZmMzZCBweTNrCis3NTQ4OSAzZGJjNjIwN2NiZjZkZTRmZmE1MWNhMGI5Yzk3ZGIxMmRlMDM4NjM1IGxlZ2FjeS10cnVuaworNzU0OTAgODkzYzJhNGM5NTQ0NDU1Zjc5ODcxODgwMWU5Zjg3YTIxZGVmMDQ5NiByZWxlYXNlMjYtbWFpbnQKKzc1NDkxIGRlMmQ5OWFhNDZlYWZmNDgzYTlmNWNhYjI5MDI3MWExZGU0ZTU2NjYgcHkzaworNzU0OTIgMmI2MzU5NzA5MTg4YjExYjY5ZjMxN2ViMGVkZDNjZGQ0YjAxZTk2MiByZWxlYXNlMzEtbWFpbnQKKzc1NDkzIDA5OGJhM2E2MzczMGNhNmQ3NjRiYmFkZjU5ZjBjZmE3NGJjNjEwMDEgcHkzaworNzU0OTQgNTM5NzAwMmY3ZTVlOGZiOTE4MTIxZDBkMGY2MDM3NDcyNWNmN2M4ZiByZWxlYXNlMzEtbWFpbnQKKzc1NDk1IDBmOWU4ZDNlY2FjMzhjNTc2MDcwZjU1NTUyOWE3OWY2OTIyYzFkNTggcHkzaworNzU0OTYgMmM2MGFjNGVkNjVmNjkwMGI4NGFiYWFjYzlhOTI0M2JlNDM0YmFlMiBweTNrCis3NTQ5NyBlYTFmZGFmYmU0ZmUyNDU4YWMxNzI4N2UwZDZjNzA5ZWQwMGZjZTVjIHJlbGVhc2UyNi1tYWludAorNzU0OTggYmZlNzU2ZWIwOWZhYWQwNWU3YWQwYTlhNWEwOGRjNjdiZTEzZmJhZiByZWxlYXNlMjYtbWFpbnQKKzc1NDk5IGEwZTQxZGZiOTcyYjUxODc4MzM5Y2ZhYjFmMTc0OWQ5MDViZjVlZDcgbGVnYWN5LXRydW5rCis3NTUwMCAzODY0MTRiODQ2ZWJjY2RjYzc4NGVkNWQ3NzAxMzBjY2U2NTIzZGRlIHB5M2sKKzc1NTAxIDI1ZWY2ZjQ4MThhMDU3ODk0YmQ5ZDc3MGZmOTc0ODk3YzA4NTY0MTcgbGVnYWN5LXRydW5rCis3NTUwMyAwNjk5OTI1Mzk4N2JiNTM4NWU3MTk3MmU1MGFkYTY1MTAzNDNmOTE1IGxlZ2FjeS10cnVuaworNzU1MDQgMmE2ODUzYTEzYTJmNzk3ZDliODQyZmMyNjA5ODE3MmRlNzA4YTQ0YyBweTNrCis3NTUwNSAzY2NkMWQ2ZjA1YTZiNWM3MGM1YTVkOThmNGYzYzRhMTE4NjYwYjE0IHJlbGVhc2UzMS1tYWludAorNzU1MDYgZDE2NjZjYzdiYzc0ZjNhZDlmZTRmY2YxZjBiOGU0OTFlOWRiYTUyYSBsZWdhY3ktdHJ1bmsKKzc1NTA3IGQ4OWU0YTRlMGIyMDdmZGI0MGM2Zjk5Mjc1ODNjYWRiOTU0MDZmMTEgcmVsZWFzZTI2LW1haW50Cis3NTUwOCBlZDk5MDI2ZTA3ZmNkZGU4ODZjN2ExYzQwN2FmYTk5ZTMwODVkN2Q3IHB5M2sKKzc1NTEwIDc5Y2IwN2ZhMzZlYzEwZTAwM2M2YTA1NjNhOTFjZWVkY2MxOGFjMmYgbGVnYWN5LXRydW5rCis3NTUxMSA2NzQ5YzhhZGM0OTg1N2NkZGMyMWVlZDZjN2RlZjA2ZWI4YzZhNzYyIHJlbGVhc2UyNi1tYWludAorNzU1MTIgZTY0NGVlNGU3NmM3YmNmN2FjMWY0ZTU1NTdjMTY1NGZjMDAzZTNkYSBweTNrCis3NTUxMyBmNDI2M2E5YmQ4YWRkYTczYWQ0YTU0NWIyMWFkNTZiMzE5MzhjMDBhIHB5M2sKKzc1NTE0IDk4MjVlYzIyOGVmYjEyY2IyYmY2NzgxM2I2OTc4Y2YyNjE0YjUxZWYgcmVsZWFzZTMxLW1haW50Cis3NTUxNSAzNzE5MzdiYTZmYTYyY2IwYmM4ZjU3NzZjZTY5ZDg2YzE0ZjY4NzhiIHJlbGVhc2UyNi1tYWludAorNzU1MTYgZDhhN2IzMTRmYzUwNTAxMjUzOWZiZGU1ZDFkNWNhMzhkNTI4Y2UyOSByZWxlYXNlMjYtbWFpbnQKKzc1NTE3IDcxODgwMDI5ZmU3NTYyYTQzODBlMjBjYTlkZTFiYTMyMzg5ZjFkMTkgcmVsZWFzZTI2LW1haW50Cis3NTUxOCBmMzA2NjdjZDQwNDNjNDNiODllMDM0ODkwZThiMDQ2NjhjZTQwZjc4IGxlZ2FjeS10cnVuaworNzU1MTkgMTYwZjE2YTkxZWU3Mzg1YTUwYjM2YTEzZjFhYmQyNTgzYjM4MjVjNiBweTNrCis3NTUyMCBiZDZkZWU2YTc4YzM5NWVjNjE3ZWI0MWYyNmJiYWQxMGE2ZTg3ZmFkIHJlbGVhc2UyNi1tYWludAorNzU1MjEgNDIzMDNjOGNhYjMxNWViZTcwYTliYzRjOGIxMTFjNzFlNDcyNmJmZCByZWxlYXNlMzEtbWFpbnQKKzc1NTIyIDRhOTU0MmFjY2QxMzM0NWU3NWUwYmZmZDk3ZGY1NWNmZTE4NWE2NTAgcHkzaworNzU1MjMgNjcwZTIyMmFmZDQ4MTdkMzhhZTFiYjhlOTY0OTZkNzRkMjQ5NDU2NCByZWxlYXNlMzEtbWFpbnQKKzc1NTI0IDNkYWFjZDk4OTI1ZDc4Njc3NzgwOTUyMTdkZmE3YTcxNzU2ZGEzYjUgbGVnYWN5LXRydW5rCis3NTUyNSA3MzI3MmJkOTRkN2IwM2ExOTk3OGFkZTg0ZmJmMDA4OTcxYmM2ODE5IHB5M2sKKzc1NTI2IDM0MTgyZjk4NTg5YjhjOWEyMzkwYjkwNmEzNmY3MzZiNzAwNGE3OTMgcHkzaworNzU1MjcgZjc0MDMwYmE2NjEwODhmNmUyOTIwNzlhMDc5OGNhOWQ5NmIyNGIyYSByZWxlYXNlMzEtbWFpbnQKKzc1NTI4IDkwYzEwZGNiMjkxMzM5MjIyMThhN2UxZDZkMjllMjQ4OTYxODcwNzYgbGVnYWN5LXRydW5rCis3NTUyOSA0M2QwYjQ3MTA2ZGY4YjhlZWRlZDg1NzlmMWY2NDdjZDhkMTAzZjk3IGxlZ2FjeS10cnVuaworNzU1MzAgNTU0MWU0MmUxYzgxMWQxZGJlNDZlMzkzZTM3MjNhMGE2NGM0ZDlmYSBweTNrCis3NTUzMSA4NTY4NWU3ZDcyYzcxODRiYzZiNzM5YTU4MmQwZWE4Y2ZlMWIxYmU5IGxlZ2FjeS10cnVuaworNzU1MzIgNTQwMzFlY2U0M2EzM2FjYTE2ZGMwOWYzMmExMjQ3N2UzZWE2YjU2YiBsZWdhY3ktdHJ1bmsKKzc1NTMzIGNhZjNjOTNkMDE5MzZhNGIyZTQ3YWU2MmU4NWU3OGNmNTlhYTU1ZjIgcHkzaworNzU1MzQgZTZjNGRiYjVkYjAyZTUwOGE0OWU3OTdmYWY5MzQ2MzYwNTAzMTkwYyByZWxlYXNlMzEtbWFpbnQKKzc1NTM1IDdhZDZlNzhhOWM3ZGNkYjE1NmRlZGEyY2M0NTVhMjY4YzgyNWY2ZTMgcHkzaworNzU1MzYgY2VjN2Y0YzU4NTQ0MTQyOTBmNzU2ZTU2MDQzNzc5OWFmNzc2YjkwZiByZWxlYXNlMzEtbWFpbnQKKzc1NTM3IGVkZjIyNjM3YmQ5MDhkMzdjOTc0MDg1OTE2ZDZiNzk2NjRlNzFlMWYgcHkzaworNzU1MzggMmYxNGIwZjQ1NTFhZjJhMjkwMDczN2VjMWI0OWVkMTY0YTVkYmQ0OCBweTNrCis3NTUzOSA5MWVlODFmMWE1MjQyYjY2ZTViYzlmNWU1MjYwMDBmNjIzYmVmOWM2IHB5M2sKKzc1NTQxIDdhZTZkNWU0Zjc5ODM1ZTdiNDA3ZjhhNzJkMDhhZjMyN2MyM2QyNjggcmVsZWFzZTMxLW1haW50Cis3NTU0MiA5NWJkNzBkNWQ3MTVjZjA4ZGI1MzFkNWU3YzcyMGE5NWNkZmQ3ZGQ5IHB5M2sKKzc1NTUxIGJkYzM5MDcyMWY5NzVjOGQ5ZjYxMGUzYWY4NTQwOTQwNjliN2VhYmMgbGVnYWN5LXRydW5rCis3NTU1NiBhMjE5OTg4OTNiMWRlNDY2M2RiZWYxYjhkOWQwN2UyOTU3ZTQ4MDMwIHB5M2sKKzc1NTU3IDk0MWYxYmU0MjNhYTE4ODcxZWJkOWY1MWFkYTFlMzZlZjFkZDAwOTIgcmVsZWFzZTMxLW1haW50Cis3NTU2MSAxYjYwMmEyZDgxZWY1MThiN2UyODcyNDJhMTY3MmI1NmUxZGM4MGNmIGxlZ2FjeS10cnVuaworNzU1NjIgNmU0YTQ5MGU3MTQ3MTNlYzA0YTdlNDU4MTNjNTBjMDY4NWQ4ZGY0ZCBweTNrCis3NTU2MyAyNjAwNzM5NTYwN2U4OWRjM2Y5OTYxMTA5ODQ4YzBjMzBiM2RmMWFhIHJlbGVhc2UzMS1tYWludAorNzU1NzAgMTIwNzljM2Q0Yjc3OWNjY2ZiZjJlM2FkMzA1YjE5M2NlMzdlZWE5NSBsZWdhY3ktdHJ1bmsKKzc1NTcxIGJmNzYyNDEyMGVjN2ZlMWFhZTA4NmJkYTBiZTIzODk2MGVlM2VkOGEgcHkzaworNzU1NzIgMDI5OTk1MTM5MWUzNmFkMjMxNWRkNDBmNWY0ZjU4NDNhZjczZjQxOSBsZWdhY3ktdHJ1bmsKKzc1NTczIGIzYmVmZTBmMmI4ZGRjMmRlNDdiZjMzZmEzOTU4ZGQ2Y2MzOTBmMmQgcHkzaworNzU1NzQgM2NmZDIwY2Q2NDU5ZjVjYzQyZmNiYTFmMDYyYzg0YjdmMzIwNzZlNSBsZWdhY3ktdHJ1bmsKKzc1NTc2IDE3Y2U5NGFlZTcwNDZhYjkwZjI4MTRiZjM2NzQ5YzQ3YTljYzNkMTIgcHkzaworNzU1NzcgMWU3MDM1ZmE2MTU0YzZmNjVmMDYwZjZkOWE1MmMzYjEyOTQ1ODhlOSBweTNrCis3NTU3OCAyOWIzZTEyNmMwYzI0NjcyZjdmNDM4YTE0OGVjNWMzODY4MTMzMGViIHJlbGVhc2UzMS1tYWludAorNzU1ODAgMWI5NDQ0OTdlODFlMWRiZmRmMjU4MjBkNWU1YzcwODkxOTk1MDU1ZiBsZWdhY3ktdHJ1bmsKKzc1NTgxIDhjMWI2MWU3NDYzYTQxZjdmMWQ3ZTZjNjg5MDQwYmFjMjc1YzI1NTAgcHkzaworNzU1ODQgNWQ4YjJkNmRjZDYyMjlkZWEyYzRiNTdmMThkYzRiOTUyNzYwNzM3NSByZWxlYXNlMjYtbWFpbnQKKzc1NTg2IDcxNmVjM2VkM2ZjZjhmYWY1ZTNkYjhiYTVhZjE5MzkxMjAxNGFjMTMgbGVnYWN5LXRydW5rCis3NTU4NiA0MTRlMDNjMTQ4MTU5ZjQ5YmQ2ZGViZmU1Y2E4YmJjZDhmZGUwNzk3IHB5M2sKKzc1NTg5IGViZTE5YzRjNzFmNTcwNmM5N2UyYmE3YjgzYWE4M2U3ODcyZTZhOTYgbGVnYWN5LXRydW5rCis3NTU5MCBhOWJhNjM3ZDRkY2QzNzU2NTRjNGJjMjAxNGMzOTA0ZTIyMTlkYTY5IGxlZ2FjeS10cnVuaworNzU1OTEgOTc4MzQ5YzA3NGNlMDgyOGJmNTVjMDFhMmFhMWU2MDQzMzYwMjA1NyBsZWdhY3ktdHJ1bmsKKzc1NTkyIGZlODVlZjI3ZGM0NzkxZTY2ZGY1NGM5ZDE3MDk1NDU3NTY0YjZiYjAgbGVnYWN5LXRydW5rCis3NTU5MyA1ZGUxYWMyNDJiZmI1NjNmNDQ1ZjczNmI1NjQ4ZDc1ZjhhYTE3Y2VjIGxlZ2FjeS10cnVuaworNzU1OTQgNThiZGExMjA1YWNkOWQ4OTFjMzRlMzg5ODU3YzRmYjJiYWM3MDA3YSBsZWdhY3ktdHJ1bmsKKzc1NTk1IDBiYTliMjE3MTgxZWQ4YzU2MDU4M2M5OGY5MGU5YzZhZTJlZDJkNDMgbGVnYWN5LXRydW5rCis3NTU5NiAzYzI2YzZiNGRiNTAwYjdjY2FmNDBmMTFiZTUwZjhmYjRkODNiMzc4IGxlZ2FjeS10cnVuaworNzU2MDAgMDdlZjU5NzY2YjAyNmUwMzIxNDk4ZTYzMjRhMDE4MTU0ZjJiYWZlMSBsZWdhY3ktdHJ1bmsKKzc1NjAxIDI3ZWFhYzA3YzVkNmE4OWExYTYxYTA3Njc2NTQzZWU4MGRkYTZlZGQgcHkzaworNzU2MDIgZjU1NTY4YjM5OTI1NmMyNzMxODM3OGExZGVjZDcyOTRmNzIzNThiMCBsZWdhY3ktdHJ1bmsKKzc1NjAzIDA2NTM0ODY5MzViNjQxNjhkZTM0NGQwYTUyMDY4NmEwMWJkODA5Y2IgbGVnYWN5LXRydW5rCis3NTYwNCBiYWNkNGQ0MjI1NmI2Njc4Zjg1ODEwOWQ0ZmI3MTFiYzQzMzAwZTdmIGxlZ2FjeS10cnVuaworNzU2MDUgNzJhNWZjNzkwZDAxZmMyMzIyODZiZWM3Nzg2YzdmZGE4NzZkZGQ3NCBsZWdhY3ktdHJ1bmsKKzc1NjA2IDhhNThhN2VjOTJkYzU2ZDY5ZmQ4OWI1YTVhNGEyNzhkYjUzNTIxM2YgbGVnYWN5LXRydW5rCis3NTYwNyA0Y2ZhZjZhZWM1ZWJjNTU5OTA1ZjI5YzY0ZThmN2I1M2ZiM2QzYTE1IGxlZ2FjeS10cnVuaworNzU2MDkgYzQzODhlN2U3N2U5ZjY2ZjY0MTIwNjAxY2Y2MGU3Nzg0MWNiMmE0MiBweTNrCis3NTYxMCA1NjlhMGQxNzBmYWM3MjAzNDUyMmRiNjhlNDk1NGFlOWQ1Yzg0ZDczIGxlZ2FjeS10cnVuaworNzU2MTEgMWI4ODgzNDMwMTM5MTFmZGZiNmUzNTU3OWYwYTEyYzQ5ZTdjN2FkMSBsZWdhY3ktdHJ1bmsKKzc1NjEyIGExN2I1OGE0ODZmNDBiNTg1MWM2NDk2ZTMwMjUyY2Y5M2M1MzE1Y2QgbGVnYWN5LXRydW5rCis3NTYxMyA5ZmZhMTUxMzA5ODQ2NTMxNWU3Yzk3NTVmNjYxZmM1ZDdmZmU5NWZlIGxlZ2FjeS10cnVuaworNzU2MTUgNjgyNzljMTMzZmQ5OTIyZDQ2MTc2MDY2MWZmMDI5ZDI5Mjc5NzA2OCBweTNrCis3NTYxNiAzMjFlNjM1YzlhYjgyNmE4YWZhNWYzZjQ2OGQwNTY0NTY1MzkyMjVjIGxlZ2FjeS10cnVuaworNzU2MTcgZjNiN2JkNmU3YWRkOWZhNzE3ZjExMWM4ZTM2OTI0OTFmMmFkYTRlNCBsZWdhY3ktdHJ1bmsKKzc1NjIwIGRiMjFjM2MwMDlkYjM5M2NlMjdkOTczN2ExMTgxYTI2MDg5YjZkMjkgbGVnYWN5LXRydW5rCis3NTYyMSAzYzA2NjQ0ODBmN2ExNjBiZTNhNDAzZDdjYTE3NDRmNDQxOWFlNTI3IHJlbGVhc2UyNi1tYWludAorNzU2MjIgODgxOTU4ZGEyMTlhN2EzNGQ4MDE3ZGYxMTMxYzQyZDJjMTY1ZGQxNyBweTNrCis3NTYyMyA2ZDI3MmZkMWNkZDFlN2I0NWNkYmQyODQ3OGQxOWY5ZGU1ZTA3MGUyIGxlZ2FjeS10cnVuaworNzU2MjQgOTJkZGUyODIxNTNkZWY1NGI0NjQ5ZDBkNDc4MjM5YmM3NGY4OTEyMyBsZWdhY3ktdHJ1bmsKKzc1NjI1IDllYjc5ZTk0MjA0ZDI2NWM4OWY0NzkzOGY5MWZlNTgzNzQwNGFmYjggcHkzaworNzU2MjYgNjIwMDg1YWI0OTViNDE2NDg0MWEzMWUzNzkxYmVmZjEyMDVkODM3YiByZWxlYXNlMzEtbWFpbnQKKzc1NjI3IGIxMWYwMmNiMTEyNDRmN2QyZjU1ZWVhMTVjZGE1YTZmNjNlNjk5YmMgbGVnYWN5LXRydW5rCis3NTYzMyA5ZGYzMzkzNzE3MWY2NTE2Y2I1MDcxMWMzNDUzYmI5NDdmZTNjYmVmIGxlZ2FjeS10cnVuaworNzU2MzQgZjA5MTQ0NGRlZWEwMTA0MGZmMmY4M2I4ZTBiZjAxNmViZDk1NmIyZSBweTNrCis3NTYzNSA5NmQ2YzE0NmNmYTkxNzYxYTg1YmYzNjQyMzU2Y2QzMWIxYTg2NWIxIHJlbGVhc2UzMS1tYWludAorNzU2NDAgZjM4ZGFiZjI0MGNiYWVjNDE1M2Y0YzQ3ZGE1ZTg5YmZlMjI5N2M2ZSBsZWdhY3ktdHJ1bmsKKzc1NjQxIDM1YmI0MzM4NjczNDRmZTMyN2JlNzEzZmFkODBmYTcwNGQwYmUzOWEgcHkzaworNzU2NDIgMTYxZDMzMmFmYzg4NGQ3YTc0NzI0YmNiNGQ5MDQ0MGIxMzY3MzE4OSByZWxlYXNlMzEtbWFpbnQKKzc1NjQ3IDgwZjIyOTNmZDY2YWM4NTFiNmE0ODVlNzgwMTQ4N2E2ZGRiYzY2N2QgbGVnYWN5LXRydW5rCis3NTY0OCAxMGU3MjkzOWQyY2Y5MTY2ZGI1ZDhhMzA3YWY5OGYxZDJjM2RkNWI5IGxlZ2FjeS10cnVuaworNzU2NDkgOWE5MWQ0NTJhMGY4OGY3ZTg2NWZhNjJhMjdhYmVkMmVhNjQ3NDVlZiBweTNrCis3NTY1MCAyZjMwN2M3YWRiOGZjNWIxMDc3NTI3MjFmZmVjNDIyMTQxNThmMDAzIGxlZ2FjeS10cnVuaworNzU2NTEgMjE0NmJiZGY0ZWQ3ZGEzOGI5ZDJkMGUwMmI2MTVkMDZhYzEzM2FhNCBsZWdhY3ktdHJ1bmsKKzc1NjUyIDBjOWNmYzdmMWU5NWI3N2Y1YzhjODc1Y2JiZjM2YWNlYjg0NDg5NWQgcHkzaworNzU2NTMgZWI5MjVhZGJhOGY5MDE0YzRjMjFlM2I0ZjRjNTkyYzkwZDVmOGQ0YiBsZWdhY3ktdHJ1bmsKKzc1NjU0IDI2NDYwOWZiZGE0ODE1NjM3YjU4YWM0NWI5YjQ0ZWQ0MDFjMTRlNzQgbGVnYWN5LXRydW5rCis3NTY1NSBhZTAyYjE2ODE2MmNlOGY0ZGRlYTIxNDBhMTYyNDk4YzIzYjEwZDQ0IGxlZ2FjeS10cnVuaworNzU2NTYgYzcwNDc1MGU2ZjNlNWIwNTA2ZTE3NGNkMmZhNGE2YzlmYjQ5N2EyNCBweTNrCis3NTY1NyA2ZDI5Y2U5ZGNhOTAyZGEzZjIxZWNiMDc1MWYyMTQ2MTZkNWZiYjFjIGxlZ2FjeS10cnVuaworNzU2NTggMmFiMDhjOTE5NjQ4MjRjZjA1YWM5NWM4NWJhZGQzOWNhZTdmY2M3MiBsZWdhY3ktdHJ1bmsKKzc1NjU5IDI0ZDQzYTkxNDJkMjVhZjBlYjIwMjNkNDAwMjlmOTFiOTNmNTdkZTQgbGVnYWN5LXRydW5rCis3NTY2MCBkYWJlMWY5MmNhMjc0Mzc3NzlhMTgzNzgzN2NmM2ViNzQwY2RlMmI0IGxlZ2FjeS10cnVuaworNzU2NjEgNzIwNjZlNWI5NDIxN2UxMzg2YTk4NTY1OGYzNzg0ZTkwYWM0MWMyZSBweTNrCis3NTY2MiBjYmUzOTNmYTQ0Zjk2Mjg4NzdiMzMwZTcyZTdjMjQ5MzhjMTI0ZWE5IHB5M2sKKzc1NjYzIDU2N2IwZjM0YjFlYjEzZTMyMzJmNzEzZWFhMmU5NmU4ZmZiZjdjYjIgcmVsZWFzZTMxLW1haW50Cis3NTY2NCAwNmU2NjM2NjE4ZDcyMWI4M2Q0NDFkY2ZhNjljZmQ3YzI5NTE1MjdlIGxlZ2FjeS10cnVuaworNzU2NjUgY2M4OGE3MDM0MjhkMDExZjJiYTg0ZmUzZTM5YzU2ZmE1Y2ZjMDk1NyBweTNrCis3NTY2NiBhYWNlZTk3NDlkMTU0MzVhOTcxYzc5NDZiZmQwYzA3ZTgzYmU1MDJiIGxlZ2FjeS10cnVuaworNzU2NjcgOTJmMGExY2E0ZTk4Njg0M2QzY2IxNjcyZjZiNTUxMjIxMzY4OTkxNyBweTNrCis3NTY2OCAwYzM4NDA4YWQ4MTllMGU0YjI0NzFiMzNkYWM2ZTYyNjZlYzA0NGYzIHB5M2sKKzc1NjY5IGIyYzhiOTg0MjUwYWFmOTE3OWMzMTExOTYyMmZkYmM3YmQzOTdkZGUgbGVnYWN5LXRydW5rCis3NTY3MCA0ZDY1ZjEyMmIyYjNiN2Y0ZmFkYWU0ZTBlNTE4MzNiMDExODE5MzNhIGxlZ2FjeS10cnVuaworNzU2NzEgZGFkMjJhMWVkMjhiMmY2ZjViNTcxYzg3ZDZkNzlmY2M3YWViYjRhNCBsZWdhY3ktdHJ1bmsKKzc1NjcyIDVjZjMyNDMzMTViNWJiOGE4YjdlMDNhNzRlMzk4NWJkYzIwODE2YTUgbGVnYWN5LXRydW5rCis3NTY3MyBmMDIxOTkxZWNmOGQ2YjMxZTBmZmQ5ZjA2NTI5ZTE3M2EzMjIyNmJkIHB5M2sKKzc1Njc1IGVkZjM1YzNhNDhhYjhiMjRhMmI1NzYwYTE2Yzc3ZWEwNGVkNzJiOTggbGVnYWN5LXRydW5rCis3NTY3NiA0M2Q0N2NiNjY4OGNmZGUwOTk1MDk2Yzk2ZDQzM2U0YzgzMmY1YzkzIHB5M2sKKzc1Njc3IGNiNzIxYzMxOTVmYzc0ZGY3MzJkMjkyYzQ5NTdiYmRjN2RhY2IyOWMgcmVsZWFzZTI2LW1haW50Cis3NTY3OCAxNGI1NWE0ZTg3MjVhYzhjMzM0NDNlNjY2MjBiZDNkYTgyNGE2OTY0IHB5M2sKKzc1NjgwIGI1NGRhNWNhYWIzNjUwNTAxMTY2YTEzOTZkNzcwMWJmMmY4YjY2NzUgcHkzaworNzU2ODIgMGMxMjM4Y2FiZTkyMTVlYmNkZGE1ZTFlOTdlMjVhYTAwNjg2ZjA5MCBweTNrCis3NTY4NCBmNWM1NjNhN2RlNzVkMzkyY2IyNGU5MmIxNTE3NjM4NDllZTYwM2YwIHB5M2sKKzc1Njg2IDZjYTY0MmQ0ZjQyZmQ1Zjg3MDU0NjY4ZTFjMTBjN2FiMDgwNWEzNDcgcHkzaworNzU2ODcgYzcxYmE1ZDFmMTdkMjJmMTY4NzVjZmVmMTkyN2IzZTZmYWUzZGQ4ZSBweTNrCis3NTY5NiBkM2Y2ZmJlYmVhYzkwM2Q1Mzk3ZTA5MTE5NDM3NGViMTFiMTEyMTE5IGxlZ2FjeS10cnVuaworNzU2OTcgZmJlNmIyNjViZDFhMDk1M2I2ODdmMjcyOWU4NGQxNDEzNTFiODEwMyBsZWdhY3ktdHJ1bmsKKzc1Njk4IDQ4MzRhNDI4NTQxMWI5MTIzOTc3NDcyZmQ2MDRmYjUwNTFlZWZhNjcgcHkzaworNzU2OTkgYTM1M2UxMDhjN2U0MjM5ZDRhMzk2NDhmNWQ4Mjc1MTFkYzU0Mjk2NCByZWxlYXNlMjYtbWFpbnQKKzc1NzAwIDk3NzM2Yzc4OTBhNmI1MzZhY2JhNDgwMmVkNjkwMjcwYTU4YzRjOWYgcmVsZWFzZTMxLW1haW50Cis3NTcwMSBkZDQ2NmFjMTkyYmU5ZGVmZDkwZWJmMzZlOGYxYjFiNGE4NjllNWU0IHJlbGVhc2UzMS1tYWludAorNzU3MDIgOGFjOTA3MDE1NjA1OTU1ZTNjOTA2NDIxODgzNzhlMzkzMWU2ODQ0MSByZWxlYXNlMzEtbWFpbnQKKzc1NzAzIGY4ZTY1Y2EzZmQzOWNkMGIzZTE5ZDk2MTBmNDk1ZTVmNTYyN2FkMjggcHkzaworNzU3MDQgY2I5YzU3ZTJlYmQzNDc5MzBmMDIwOWY0YzI5YjQzMDEyMTEyODE2NCBweTNrCis3NTcwNSBhM2NiODEyZDgwZjkwNzZjNWIzYTAzNGEyODhmOTMxYWEwMzZmYTBmIHJlbGVhc2UzMS1tYWludAorNzU3MDYgODgwM2MzZDYxZGEyNzVjNzFjYWJlOWU5ZDAyNzRkYWM5OTAyZTJjMCByZWxlYXNlMjYtbWFpbnQKKzc1NzA3IGVjNGExYjRlY2IzMTQwODg0NGFmODRjNjcyMjRmZDUwMWI1M2I0ODEgcmVsZWFzZTI2LW1haW50Cis3NTcwOCBiNTE5NjA4YTk3MDFmMDEwOGU3YTE2MTgzY2RkZDVlZjMxZDM1YmNlIHJlbGVhc2UzMS1tYWludAorNzU3MDkgN2I2MDM2ODBiZjI5NWEyMDAyNDRkMGE0ZDYzZTU4NGU3MmYzMjFlMCBweTNrCis3NTcxMCBkM2NmOGViODcyNzRhNmM2NGYxNjJjNzk0ZjRkNWJlMWFjZGYxNWM2IHB5M2sKKzc1NzExIDc2YzY2NjkwZDFlZWE1Mzc2ZTkyODg5MTkwM2ZiNWFjZmEyNjhiN2IgbGVnYWN5LXRydW5rCis3NTcxMiA4ZWZmNzU5ZDA4MGY5ZGIxZDdiZDdiZjM4YTY4YTVhYTg4M2Y2MzE1IHB5M2sKKzc1NzEzIDk3MTM5M2Y2MGJkODc0ZGM0ODE2NWJiZDdhZDQ4NjI0NzAwNTAyMGQgcmVsZWFzZTMxLW1haW50Cis3NTcxNCA2ZTRkODk2OGUyNDY5NmJkYTkyOGY5NDVmMzA0ZDU1Y2UxYTUwZWVlIGxlZ2FjeS10cnVuaworNzU3MTUgN2RjNTdiOTkxZDgzYmRkZDJjNWY1MmFkNmQ2MDhlNzVmYWM4ZjVjYSBweTNrCis3NTcxNiBmNTk4ODQzZjM2OTViY2NjMWY4YzMwOWM5ZWNkNjMxZWZhMDg4YWEzIHB5M2sKKzc1NzE3IDA5NWFmOTllNmI2NDBmNTI3Nzg0NTg3YWI2YjlkZTJhOWY5ODFlZDAgbGVnYWN5LXRydW5rCis3NTcxOCAzOGE1NzU0YjMwMzc3MWQ4MTVkNDNmNTBiM2UyNzhhODc1MjBmNTA2IGxlZ2FjeS10cnVuaworNzU3MTkgZjRjN2ZkODVmMjMyNDA5NjRhNDEzNDJlOWM2ODE1ZjkwMTA2YzA3NyBweTNrCis3NTcyMCAzOGZkYTNhNDJjMGIzZjU4ZjZhNzZjYzEyMTRiN2VmOTBlNTA5ZWM5IGxlZ2FjeS10cnVuaworNzU3MjEgZGE5NmIzZmVhZjUyNWI3NjFmY2E2NGYyOWYxZGE0OWQ0YWJjM2VmYiBweTNrCis3NTcyMiA3NDQ3MmRhMDlmNmNkZGViODUxOWY3NmU2N2NkOGE1YjQxMTU3MzdlIGxlZ2FjeS10cnVuaworNzU3MjMgYjU1YzJlZWUzNDhiNTYzNjYxZDYxMGM5Y2JkYjc2NGYyZDY0NzRmZSBweTNrCis3NTcyNSBmM2JmOTJjZDExOTE3NGMzOWMwYTY4N2U3ZmNmNTQyMWZhYzI4YWQwIGxlZ2FjeS10cnVuaworNzU3MjYgNDUwMTA1ZGQ5Y2E3NDUzZGMzYzBhN2QyMjA2OTJiODc4YzI3YWMzNiBweTNrCis3NTcyNyA2ZGEwYWU2ODBmYjYwMmRjZmE2OWM0YjYwMzY3OWFlNjkyZmY2YmE4IHJlbGVhc2UzMS1tYWludAorNzU3MjggMDNlMWRiZTJmNGQ1OWM4Mzg5ZWE0NTI0ODVkY2Y4MGE2YWViZTU0MyBsZWdhY3ktdHJ1bmsKKzc1NzI5IGI1MDQxNzU2ZmQ5MTQzYzgwNWJkNWJiNWU5NWQxYWFhMzI0NTQ1NTggcHkzaworNzU3MzAgNDFiZTJjNjk2MTliMmM2YzY3MTAyZWM3YmE4YWZmZTU4M2IxOGYxZCBsZWdhY3ktdHJ1bmsKKzc1NzMxIGM1NjQxOWNiZGQ0ODY0MzcxOWNkMzM5OTEwYjdlMDhjOGQyNGVhYjEgbGVnYWN5LXRydW5rCis3NTczMiA2ZDIzOTZlYTdiMDNiNDRiNzQ3ZmIxYzQyNWZkOTAzMTk4OWNhMmUzIHB5M2sKKzc1NzMzIGU1NWZmYjg3Y2I3MDJjYzVmMzU2OWIwODg3NTZjNjA2MGEwNjUwYTggcHkzaworNzU3MzcgNGNiZWE5ZTc4MzU2ODE4MTMxYWZhODc0YmMyYWNmOTYwMDBjMWQwOCBweTNrCis3NTczOCA1YThlODE1OTRmMGYxNjFlMzgzYjgzNzIwMjlhMThiOTUzYjEzNjQzIHB5M2sKKzc1NzM5IDBiMWEwODgwMTJjNzRhMjE3YzZkOTcyNmVkYzM1ZTBiMjk2OTc4YzMgbGVnYWN5LXRydW5rCis3NTc0MCA4NzU1MDA2ZWRmOTczZGNhYjU2YTI0ZThhOGUzYjIwYmYyMmYxMjYwIHB5M2sKKzc1NzQxIDg5NmY5NDU0MWY3MmVmMzViYWUxNTFkMzAxZjE3NWZmN2MzM2ZmZDggcHkzaworNzU3NDIgNDIyNTJkNmQxMDMwYTJjMmYyNGI3ZTg3NTQ1ZDY3Y2I0M2EwODA4MSBsZWdhY3ktdHJ1bmsKKzc1NzQzIGE3NzgxNzFjOTNkZTVlYzY5YjFjMzhmNTgwZDg3MjA4ZjgzNGY1MGYgbGVnYWN5LXRydW5rCis3NTc0NCBiZTU0YjQwNDg3OWU2NWFlOTUxNmY5YmM4MDY4MDc3ZTMzMzA3NjRhIHB5M2sKKzc1NzQ1IDkxYTBjM2M2MDIwOTRlNTFhYWZiOTM5MjAxNDIzNzc5Y2FlYmNiNWUgbGVnYWN5LXRydW5rCis3NTc0NiA1NWQ4YTkxMTdkZTc4MGZmOWI5YWVjMmI5ZjhlYmJlNzczYTFjZmYwIHB5M2sKKzc1NzQ3IDE5YTgzMmI4NDY0YTJlZjkwMTNmODkwN2NjMzQxNmJkYmJhMGM0MDMgcmVsZWFzZTI2LW1haW50Cis3NTc0OCA0MTY5ZDNjZWNiOWRjZDI3Mjk2OWM0NzUwMjUyOTJiYTQ2MDkxMDA4IHJlbGVhc2UyNi1tYWludAorNzU3NDkgMmFiYzNiNGJjZTdjZjU2YTVlYTRlYjlmZjhkNDIzMjdjYTY5MzE4MyByZWxlYXNlMjYtbWFpbnQKKzc1NzUwIDE3YWNkZDY1OWVlOWU1MGYwZGM5YTI4ZmY5NGExOWEwZDc4MGNlMjkgcmVsZWFzZTI2LW1haW50Cis3NTc1MSBhMGVmNGVmNWZjODg3NWFiZjc1MzQ0MjY3YzI2MzY3YzM4MjVjYjM5IHJlbGVhc2UyNi1tYWludAorNzU3NTIgZjljZmVhMjAxNWIyMGE2MTQ5N2ZlZjBmNTBjYjk0YjkyMWUyYzc2OCByZWxlYXNlMzEtbWFpbnQKKzc1NzUzIDgxNzgxZDFlMmZiOWNkMjgxNGU5Zjg4MWUxYWVkNmIwODQ1YTA1YTIgcmVsZWFzZTI2LW1haW50Cis3NTc1NCBjMWMwYTBjN2Y3YmMzMDI0ZjU4OTVmYzg2MzZkODM4NmQzMjM3ZDY1IHJlbGVhc2UyNi1tYWludAorNzU3NTUgNTI0NTI2NzQ1ZjJlOTk0N2U1MGM1ZTQzMmQyZDRlY2NjZDY0YmQ4YiByZWxlYXNlMjYtbWFpbnQKKzc1NzU2IGZhYzRlM2ZkNzQ3YWNmMmM5MTcwOGJhYzlhMmQwYjQ3YWY3MzAxYmEgcmVsZWFzZTI2LW1haW50Cis3NTc1NyAyNTBiYzgyNDJlN2VhYmZlNDVmZGQ4MGI2MzI3NjdkODIzOTFkNzMwIHJlbGVhc2UyNi1tYWludAorNzU3NTggM2Q1NDA0Njk1ODViZTgzYjhjMDFiMDQ2YTQ3OGUxYTM3NTBiODk5NiByZWxlYXNlMjYtbWFpbnQKKzc1NzU5IDgzMDlhZDZhZTRjMGU3ODhhMjQzY2M0NDI5MTQ0YmU2OTUzZmVhNzUgcmVsZWFzZTI2LW1haW50Cis3NTc2MCBjN2RjYzIyM2Y5MjVkMzk0NjFiMWU4NzljZDc2NDczODZhNDljMDk3IHJlbGVhc2UyNi1tYWludAorNzU3NjEgMzU1Mzk1NDM4N2ZhNWIyNjY1ZGMxZjg3YWQ0NmI5MzJjODBjYTk1MCByZWxlYXNlMjYtbWFpbnQKKzc1NzYyIDI2ZWM4ZGJkNmY2OTdlZWYzZGQ4N2YxODczODU0Mzg2YTkyMmRjMzggcmVsZWFzZTI2LW1haW50Cis3NTc2MyBiNzE4ZjMxODhjNzZmZGMzOWIyMzlmMjI0YzRkYWE1OWE0MDQ1ODM5IHJlbGVhc2UyNi1tYWludAorNzU3NjQgNDdlMmMxNGIxNTAzMzUwM2QxMzc4OTgyMDhkZDgyNWEzYjZkY2FlYSByZWxlYXNlMjYtbWFpbnQKKzc1NzY1IGNjYmY3ZWJlZjQ3NTEyNzJmYzFiZGNmNTQwYjdmMzc1NjMzN2M0NGYgcmVsZWFzZTI2LW1haW50Cis3NTc2NiBjNzYzN2I2NmIzNGJiZTM3YTJmZGU3NmU0NmM3OTU0ZDkyNzMyYjk2IHJlbGVhc2UyNi1tYWludAorNzU3NjcgMGRkNWQzNjcyMTM0ZDhlNWEyYjExNjE3ZTVlZmJiNGE1N2I2MjEyOCByZWxlYXNlMjYtbWFpbnQKKzc1NzY4IGYwMGNjZjhlMTM1ZTEwYTNhMjVjYmQ4Yjc2NjU3NTFmZDdjNzZmYWYgcmVsZWFzZTI2LW1haW50Cis3NTc2OSBlM2U1M2I4OWMxNzg0Mjk1MzMxMWU5ZjI3YTY0YmY0YTI0MzZhNTFjIHJlbGVhc2UyNi1tYWludAorNzU3NzAgNmQ0MmYxZWVmNDVkOWRiZTc2NTE1NjMxMGI3OTI2NDFmOGQxYTgwMiByZWxlYXNlMjYtbWFpbnQKKzc1NzcxIGJiODE4ODczNmEyOWI0YTY0MTQwZjExNTc0M2ZhNzI3NWNkM2Y1YjEgcmVsZWFzZTI2LW1haW50Cis3NTc3MiA3ODZhYmFiYTQ2MmQxZTc0ZDY4M2I1ZjM2ZjgxMjZkYjYzZjRiNjBiIHJlbGVhc2UyNi1tYWludAorNzU3NzMgYzg2MzBmNzMwOTA3MThlYjI2ZDFlNjdhOGEyMDdhMTM3NGRhYTI0NiByZWxlYXNlMjYtbWFpbnQKKzc1Nzc0IDEzMTQ3MjdjMDlhZTdhNjkzNTRjOTc1YTk0ZTk2NzBmMzA4YzdmN2MgcmVsZWFzZTI2LW1haW50Cis3NTc3NSAwOTZiNDJjY2IyNThmNWM2M2QwZGZmZjA5NjU1OWM1ZDkyYWVlMDA3IHJlbGVhc2UyNi1tYWludAorNzU3NzYgOGFkZjhlZjdhNGRiYWFjOGEwYzgwYmUzYzA1YjRlMWM1MzRiNjkyZCByZWxlYXNlMjYtbWFpbnQKKzc1Nzc3IDA3ZTNjMGI0MWQ1MDAzY2M1YTg1NmE3OTI3NDNiMDlmYzA2NjhiZGQgcmVsZWFzZTI2LW1haW50Cis3NTc3OCA2OGY3Mjg4ZDE1NWNlM2MxN2ZlMjNmZjdmYTAxYmNmODA5NjVhZGZhIHJlbGVhc2UyNi1tYWludAorNzU3NzkgMGQ1MWE1ZDU2YjVhMjIxNTlkYzZkMGJmYjVmOWQ4MzI5ZmY3ZjkzNCByZWxlYXNlMjYtbWFpbnQKKzc1NzgwIGExYjA5MzZiMDI3Y2YzZjA2YTllNGU1OTA2ODljNGRhNmNjNjkyY2EgcmVsZWFzZTI2LW1haW50Cis3NTc4MSA1ZDkzYzc1NDA1N2NmMjY2NzVjMGY0YzY0MzEyMjQzZjgwMDgxNmI4IHJlbGVhc2UyNi1tYWludAorNzU3ODIgMTI3ZDYyMzM5NmFiOTNhYzk3YTA1YjFkZTQxMDkwYzkzY2M2MGQyYyByZWxlYXNlMjYtbWFpbnQKKzc1NzgzIGZhYjY2MGMyZWY4ODg3YmNjOGIzOWZiMDgwZGVmNDhhZmM1ZDIyMTIgcmVsZWFzZTI2LW1haW50Cis3NTc4NCA2NmRlNzExMTIzMGFiNDVkNDkzNmZiMzI4NTRiOTlkNTRjZjkzNjgxIHJlbGVhc2UyNi1tYWludAorNzU3ODUgNmIwNWQ0OGNjYTI4NzIwNjMyMDMzNjkxMmJmNjQ0Njg1NTEwNjc5NiByZWxlYXNlMjYtbWFpbnQKKzc1Nzg2IDNlMTVhMDdhMzJmYWY5ZDQwNGNmMjJlNmM0NjgwZTE2MzU4OGRhYjAgcmVsZWFzZTI2LW1haW50Cis3NTc4NyA5YjI0ZDAxMDEzM2YwYTYxMmYyOWMzYzM2MjE0ZGZmZGE1MmYxNmJhIHJlbGVhc2UyNi1tYWludAorNzU3ODggODVhYTcwNmY3MTI2ZDIxMTQwNjk5OTEwZjg3N2YwOTM5MTcxMjUxMSByZWxlYXNlMjYtbWFpbnQKKzc1Nzg5IDQ4NTIxMjMzYmQ2ZThkNGQ5ZTI0NzA2NmUxZmZiNGQyOGM1Zjk4NGQgcmVsZWFzZTI2LW1haW50Cis3NTc5MCBjNGM0MjliMDhhNTc1OTkyMmIxMmM1ODc5ODRlZWU0Y2JjMzBkZDBmIHJlbGVhc2UyNi1tYWludAorNzU3OTEgZWYzMTk0NzQ5Mzc3MDAwMzhmNGExNGY4NjgxMTQ2NDBkZTE3MGI4ZCByZWxlYXNlMjYtbWFpbnQKKzc1NzkyIGI3Yjg5NzBjZDVhNTc2NDA0ZDRlODIwMzA0MDYwNTU3OGEzOThmNTAgcmVsZWFzZTI2LW1haW50Cis3NTc5MyAyODg1MjUwYmE1ZjQ5ZjU1ZGZhZTdjOTA5ODk3NGE5ODBmMWFjYmJhIHJlbGVhc2UyNi1tYWludAorNzU3OTQgNDAyZGFkYzdiNGE4NjI0MjNlZWUxMWI0NTliMjYxZTczOTM1MTRiNyByZWxlYXNlMjYtbWFpbnQKKzc1Nzk1IDFkNjhiMWRjNDEwOTM2ZmI4NzIxZTg4ZTg0NjcxMzZkNzI1MzMyMDAgbGVnYWN5LXRydW5rCis3NTc5NiA4ZDllZjVhNzliYzdhNTkzMThkNTJhZmE0NGI1N2E5ZTUzOGQ2ZDk1IHJlbGVhc2UyNi1tYWludAorNzU3OTcgMzAzNTljMzNiNmY2NzdmMGM0YzU0ODY1NzMyNzM5ODc3NDM0M2M1ZSBweTNrCis3NTc5OCA5N2Q3Y2QzNjVkZDUzNDRmNTFhNTkwZDlmMjUyMjlmYjFkNjkyYTVkIHJlbGVhc2UyNi1tYWludAorNzU3OTkgNTk4YjliZWU3NGVjODgyYzJmYjIxMDI1ZGViNzIzY2UwMThlYjcwMSByZWxlYXNlMjYtbWFpbnQKKzc1ODAwIDcyODQ1MDdiYWRiMmEwOTc1ZjE4ZDc4YTFmODRmOGQ4MmNlZGM1MzkgcmVsZWFzZTI2LW1haW50Cis3NTgwMSA4MWI2M2FiNmQ0NWZiNGIzZjA3ZDYzMDU4ZDY2YjA2ZDNjMDdmYmM4IHJlbGVhc2UyNi1tYWludAorNzU4MDIgNWIyOTUzMzA4MzBhMDk2ODY0Zjk3ZGFjZjFkNTNkYjQ4NDg0NTIzZCByZWxlYXNlMjYtbWFpbnQKKzc1ODAzIGU5NDA4Y2IzZTI3NGUxNTAyNTMwZWMzNWI3NzA0NTZjMWFmNWZhYWQgcmVsZWFzZTI2LW1haW50Cis3NTgwNCBiZDc3NmUwMTk5M2FjYjkxYTAwODlkZmE4NGRkMDcwMWFhNmNkOTQ0IHJlbGVhc2UyNi1tYWludAorNzU4MDUgOWVkODk5MWE5MTQxYzY0MDkwZGMyNWM5NjE5Yjc4MDUwMzM5Yjc2MiByZWxlYXNlMjYtbWFpbnQKKzc1ODA2IDY3MGNhYTk3NzVmNjBhYjNkZTU2NjIyZmZmY2U5MDlmNWQyMjk5ZDIgcmVsZWFzZTI2LW1haW50Cis3NTgwNyA3NjRhZTJlYzRhNzA2MzFiMjM0MDYwYWViNTQzYzBjYzFlNWI4NmU5IHJlbGVhc2UzMS1tYWludAorNzU4MDggYTA1ZTFhNTczNjNkNzVhMTE3ZTJlMDY1OGM1MGI3YmE1YTA3MTY2ZiByZWxlYXNlMzEtbWFpbnQKKzc1ODA5IGJlNTM0OGIwNTRiNGY1YzBhMWQ4MjZjMDdlZWM1OTdlNzU4NmQzYTggcmVsZWFzZTI2LW1haW50Cis3NTgxMCAwMGU0NWQyMWYyNWJmODVhNDdiYmM0YjIyMTBmY2Q3ZGI2MWNjNjc5IHJlbGVhc2UyNi1tYWludAorNzU4MTEgMWMzMmI5NWZlNTc4ZTcwYmY1NDUyYjA3MWRjYjliYWE2YTI0ZTI3YyByZWxlYXNlMjYtbWFpbnQKKzc1ODEyIGI5N2U4Y2ViZThlZGE1ZDFiYzI0YzI4ZWRhYzFlYzRiMjQwMWU0MTUgcmVsZWFzZTMxLW1haW50Cis3NTgxMyBlNTBiYTJhODE5NzM2NzI5MTI3ZmY5N2M2MzgzNmU2YTQ1MGQxMGY4IHJlbGVhc2UyNi1tYWludAorNzU4MTQgZTRiY2ZlMmU2ZDU3NmMwZTdiMjEwZWY2ZDNlOTNlOTMyYjIyY2YzNiByZWxlYXNlMzEtbWFpbnQKKzc1ODE1IDA5N2MzNjBiNGJhNTlhMWM5YzE0MDg3YTFiNjhlYmM4ZWE4ZTYxOTYgcmVsZWFzZTI2LW1haW50Cis3NTgxNiA2MDRkYjlhODNkMTg3N2UzYzZhYWEwMTk2NGZhNWJhOTkyYzc1MzM4IHJlbGVhc2UzMS1tYWludAorNzU4MTcgZWYwODI1M2YyOTBiYWJmMTFiMTRjODBhODE4M2ViMWE5OGQzMzdiNSByZWxlYXNlMzEtbWFpbnQKKzc1ODE4IDNhOTkyMjkyY2NkODVmMTZmNGM2NzkwNjc5NzhhNmZkYzZlNDczMDkgbGVnYWN5LXRydW5rCis3NTgxOSAyNWJjM2Q2OWU4YWZlMzAxNTZkYzVkZGEzNDY5M2JiZTNjYmY3YWYxIHJlbGVhc2UyNi1tYWludAorNzU4MjAgMTlmNzZmYWJhOTY1NGRkZmRkM2M1NjI4NWE5YjdlN2FjMjBjZTM1YyBweTNrCis3NTgyMSA4NjUzMWRlNzU4OTRmMWZhMjI0ZTczNGJhMGU5NTRkZTZlMjljNzQxIHJlbGVhc2UzMS1tYWludAorNzU4MjIgNTk1MDVlN2U3MDczMmExZWIyOWNkMTc5YmJiNzJiMzUyMDI1NWI4NCByZWxlYXNlMjYtbWFpbnQKKzc1ODIzIGU0NzMxZmQyN2Q5MTY4MDUxNDgyMzJjZTU2ODljZDkxZDRiOTYyZTkgcmVsZWFzZTI2LW1haW50Cis3NTgyNCBlOTlhZGZjOTJkYzJlZjU3MzExNTIzZTQ0Yzg3YjZiMTI1MTliY2Q5IGxlZ2FjeS10cnVuaworNzU4MjUgMzU5NjJiNTQxNTk1N2VkZDMwNmY4NmZjOTA5ZmM4ZDc1YzY0MmEzNSByZWxlYXNlMzEtbWFpbnQKKzc1ODI2IDQyZmQ3ODU1MzQ3ZTg1OTFhNDFkYTNmNDkxZTBiMDBhMDM0ZGUzODYgbGVnYWN5LXRydW5rCis3NTgyNyA2MzJkZGIyNzUzMjFkZTI1YWY3YmZhYzBiNzM4YTlkZTA5OWQ5Y2IyIHJlbGVhc2UzMS1tYWludAorNzU4MjggZjhmYTM2ODBjNWQzNTU4MjI1MmRlYzE5MjY5NjhjODhiZjBmNmIwYiByZWxlYXNlMjYtbWFpbnQKKzc1ODI5IDYyOWQ0NWJhNDZkNzljZjMwZjQwNTYxYjQ4ZmNhNGE0N2JjNTUzMDEgcmVsZWFzZTI2LW1haW50Cis3NTgzMCBlMWJiYzYyMzJmMjlkMGEzODkxMjM5NTE1NTMxNjFkM2ZlNzg1ZmVkIHJlbGVhc2UzMS1tYWludAorNzU4MzEgZjhlZDg0NDBjZGI0NWZhMWIzZjRkM2ZiZTZiNTA2OTcwM2FiNmEzMiByZWxlYXNlMzEtbWFpbnQKKzc1ODMyIDEwNzUxNzk0NTFiNTYzYjc1OTExMWZkOGQyNDMzNmNiNWMzN2FlNWUgcmVsZWFzZTI2LW1haW50Cis3NTgzMyBhZTk0ZjY4NTUzMTAwYzA4NmM3NzJiNDRiMDMyYTRhZjA4NDc3NzlkIHJlbGVhc2UzMS1tYWludAorNzU4MzQgYjQwZmE4MjZlMWNmMGQ4YzNhN2U3ZTdiYmM1ZjM0NzBiZDFkZTg1OCBweTNrCis3NTgzNSA1ODBhYzE1MTE2NTIzYzFkZGFiMTI1ZDkyZTliN2ZmNDBkNzAzNDEzIHJlbGVhc2UzMS1tYWludAorNzU4MzYgOGE3NzRhZmU5OTAwOTBiOTlhOTE1MTQ1YmIzZjQ3OWNmODY0MDY0NCBweTNrCis3NTgzNyBjN2ZmMmZjZDJiNmJmMGU3ZTk2ZjY1Yjc3NDYxMjA1MTBlZmNlODkzIHJlbGVhc2UyNi1tYWludAorNzU4MzggMjY5ZjFkOWM4NmNkMjI2YTI4OGZkMjc5MWE0YmU2NTFhMGU4YmViNiBsZWdhY3ktdHJ1bmsKKzc1ODM5IDhmYjhmZDNiNjdjZjY0Mzg4NzE2ZDc2ZDNmMmI4YTcwZTM2MWJkNDMgcHkzaworNzU4NDAgOTM2YWFhMTI0OTJjNzA2YjMxZjBjYTExNDcwM2Q1YzZkY2I5NWZjOSByZWxlYXNlMjYtbWFpbnQKKzc1ODQyIGIzMWZjYmFiMDUyMGM0ODNjNTBhNTZkMTVlNTVlYjYzOWY1Y2I3MmIgbGVnYWN5LXRydW5rCis3NTg0MyA5NTVkOGZhMTJhZDU0YjVhY2I4NjAwYWYzMDIyMzhhNDg5ZTc4YTllIHB5M2sKKzc1ODQ0IDVjNTQxNGE4YzdjMjQ3MTY5YmJlNTY3NGMwMjViNjc2OGI2ZDllMjIgbGVnYWN5LXRydW5rCis3NTg0NSBlMWQ0MTI0ODkxMDdiNTMwYTY3NTdhNjRiNTcyYjU1OGIwMzkxNmM5IHB5M2sKKzc1ODQ2IDE0MGQ4OGQxYjE3OThmYjJmN2M4NWMyNGZhMzgwODY4Y2EzMTY2MWIgbGVnYWN5LXRydW5rCis3NTg0NyBlMjU5YjM0YTBiODgxNDQyNzkzNzc3NDA2MDFlNmFlYzk4N2M0NDEzIHB5M2sKKzc1ODQ4IDExZmMxNjBkNTNjNGRjYTUxZjViN2E1NTJjYzkxZWRmMWU5MjU4NjUgcmVsZWFzZTI2LW1haW50Cis3NTg0OSA0M2JmZjY5MDNhYTVhMzU0YmMwNzg1YjgyYzc1MmU2NTEyNzVjYzZhIGxlZ2FjeS10cnVuaworNzU4NTAgZDdjYzBlYjNmMjM0Zjg0MGM2ZjA5ZjkwNGNhODA5ZGRlNDgyNjRmNiBweTNrCis3NTg1MSA1ZjYxYmQzYWE0MjdiMjJkYzg5MDczNmU1MzcwMjkyMjYwMDlhZTRmIGxlZ2FjeS10cnVuaworNzU4NTIgZTRiZmJlOWI3NGM4OTI5MmU0ODllZDM0MmVlMDUyMWVlMmM1MTI1NyBweTNrCis3NTg1MyBkOWQ2OTA2MGY1ZTRiZGMzYzExZGVmYzBhNjZkZGU2Y2EwZGQ4M2VkIHJlbGVhc2UzMS1tYWludAorNzU4NTQgMWJkYTQ2MDJmOTM5YTJmM2QxMjE3Yzk2N2M3OWQ2YjEwNDQ2ZTJlNyByZWxlYXNlMjYtbWFpbnQKKzc1ODU1IDVjODg3Nzk0NzNiOTI5NjM4NGQ0OWQxZWMzMjA5Y2FmZDBlYTM1MTggbGVnYWN5LXRydW5rCis3NTg1NiBhZjc4ZmRhNTdhZjg2NGY5ZThlNWQxNmQwMjU5ODkzMDM3OWYzNzJlIHB5M2sKKzc1ODU3IDAyMWQzYTM4YmQzNmE0YTA3ODQyYTdhYTgwNGJkMDdjMjg3NzJiMTYgcmVsZWFzZTMxLW1haW50Cis3NTg1OCAwMjlkNjk2NTliNWY5OTU0OGZmNGU4YzcyZTA5YmEyNThiYzliNzdhIHJlbGVhc2UzMS1tYWludAorNzU4NTkgY2VmNWNiMjcwZmRmN2M5NjZjNjJhNTEyODUyZjczNGYwNzk3NmE0ZCByZWxlYXNlMzEtbWFpbnQKKzc1ODYwIDBkZjQ3YjFiMzBiOGEwNzk4MTk5NWNiYjNkNmNiNGQ3YzdlY2I2ZmMgbGVnYWN5LXRydW5rCis3NTg2MSA4MTQxZWM4MWFkMmQzODg4ZjIzOTliYmM2ZThjMDdiY2NjOGI1YTcwIHB5M2sKKzc1ODYyIDcwZWI2YTEzYWJjZDY4NTY2MDVjZmJjYjI2NGE2ZmFjYjM0MDVlNmMgcmVsZWFzZTMxLW1haW50Cis3NTg2MyBiMDg1ZmQwNjExZGUwZTgxZjFlN2RlMTFjYzc0NGY1MzRiNGRlYWJhIHJlbGVhc2UzMS1tYWludAorNzU4NjQgMmYxYzUyZDlmZWVjYWRhMjRiNzI1ZjMyYWI0M2YxODRiNTgzNmIzNyByZWxlYXNlMzEtbWFpbnQKKzc1ODY2IDk4OTllY2E5Yzg1N2Q5MWQ1MmViNzAzZDQ3ZDJiNWM0ODg2ZTViMmQgbGVnYWN5LXRydW5rCis3NTg2NyAxODUyMDRkNTQxZmU1NmUzMTY4ZTUxYzEyYWFjMDg2YWEwNjk1OTgzIGxlZ2FjeS10cnVuaworNzU4NjggNDExYjZhY2JjZjEyZTc2MjcyODk1M2EwNGQ1YWEzNTE3OTAxY2FjNiBsZWdhY3ktdHJ1bmsKKzc1ODY5IGI0YmFlYzFlNmEwYzMzOGFmZTFkYTRjOTAzMzRmYzIzODc0NjY3MGUgcHkzaworNzU4NzAgZjVjNzJhY2E2YjYwYTNiMDU2ZDIxMWEyMGNlMTg2OWYyOWI4YzU5ZiBweTNrCis3NTg3MSAzYWU0ZDM2Njc5MjBmYzM0YWFmMzk1NmExMTJlZGUzOTY5ZTY3OTRlIGxlZ2FjeS10cnVuaworNzU4NzIgZmIxYmZhOWNhYmYzM2JjNmU0ODRjZDY1M2MxYTA3ZWRmNDM5MWE4MCByZWxlYXNlMjYtbWFpbnQKKzc1ODczIDQ1YTI3Zjk2MWFhMWRmNGU5N2U3NmMzYmM2MDA0MWY0MGQyNDc4OTUgcHkzaworNzU4NzQgMjA0ZjMzZDQyNzYyYjI0MTM1OGIyMTZlNjlmM2RhNTRkZmRiYTgzMyBsZWdhY3ktdHJ1bmsKKzc1ODc1IDM5NTlmYTEwOTcxOGVjMzdmMGYxMDM0M2UzYTgxZjczZmQ4ZjMxZTQgcmVsZWFzZTMxLW1haW50Cis3NTg3NiBjOTI2OGZlYTgxMDQ5MTI3ZWM1MzYxNDNkOWYxNjc2MGFmNmIzYjM4IHB5M2sKKzc1ODc3IGJlYzI2NmY2ZDUwODFlMjU5NWNjYWVmOWEwYTVjZWFiOWI2MzZiYjUgcHkzaworNzU4NzggYjZjYzAxMzRhZjMxNDBlMTE2ZGIxNTA0MzZjM2IzYzIzMDNmNTM1NyByZWxlYXNlMzEtbWFpbnQKKzc1ODc5IDIxYTNmODNkOTlhYmY3ZDdhOWVhNjFlMTI3ZTBiZGRjZWRkMDJhNWEgbGVnYWN5LXRydW5rCis3NTg4MCAxMjhkYWY2Njk5Y2NhMjhkMzMzN2VmYjRkODVjNTZlMzY0OTY0ODVlIHJlbGVhc2UyNi1tYWludAorNzU4ODEgMzkyN2UwZTEzODI0MTI2ZTczMTI0M2VkZjc3ZGNjM2VjM2FmZjdiYSBweTNrCis3NTg4MiAxNThiMjExZTZmYThjMWM4OGI2ZjEyNjQyNjQ4MWM4MmYxZmU5NDA3IHJlbGVhc2UzMS1tYWludAorNzU4ODMgZjEwMTA0MDUxMzM5YjhhYjY3NzE1YzRmNTFiZmY4NjQxMDNmYTlhOCBsZWdhY3ktdHJ1bmsKKzc1ODg0IDQ0ZjY0NDcyZTkyMjFiN2VjMzk2YTM5OWJlNmY1MTU4Y2UwYTEyMDQgcmVsZWFzZTI2LW1haW50Cis3NTg4NSAxMjQzODlmNGViYWRjMzljNThjNDAxZTI4ZTU2MThjNGMwZTI2ODRkIHB5M2sKKzc1ODg2IDY5MGM1NjVjMTVhOWUxZmYyMmNmMWY4NzJhMjc5ZWQ5YTJlNjdlNDAgcmVsZWFzZTMxLW1haW50Cis3NTg4NyA2OTQ5Y2U3OGMwNjU1ODFlODNjYzBhNzI1NjlhOWQ2MmVhN2U1ZDRiIGxlZ2FjeS10cnVuaworNzU4ODggN2U2NmZmZGJjYmVmZmJmNmE0MmZlODk5YTVkZGZiZjY5NTg5YTZiMCByZWxlYXNlMjYtbWFpbnQKKzc1ODg5IGQwZDdlMTViNDk1MzVhMDA5MGNkZmRlNjY2YTMwNjBhZWVmZDJjNmQgcHkzaworNzU4OTAgNWU0ZDFiNGY2MmZhMWQwODc4NWZiYjhkMWI1ODA4NGRlNzlmZjk3OSBweTNrCis3NTg5MSBhZDYxMTI5YzQ0MjIyNTY5MmRjMjUwYjRkYmE2NmQ5ZGY2MzAzYWQxIHJlbGVhc2UzMS1tYWludAorNzU4OTIgZTFkY2E5NzJmYTM1ZDMxYTU0NmNiNzA4ZjY2N2E4ZGFmN2E2YzIzYyByZWxlYXNlMzEtbWFpbnQKKzc1ODkzIGZjNWE3NzE4NDMzYTg1NDRmMWVlNTMzMDY5MzUwODQ1YWQ3OWM1MmQgbGVnYWN5LXRydW5rCis3NTg5NCA2NGFkMzY1MDc5NDQ2NmU4NGNjYzUyMmIzZGM5MDE2ODJiZGUzZWVjIHJlbGVhc2UyNi1tYWludAorNzU4OTUgMTc3NzlhOTRlODI1MDg2YjY2MzFjZmViN2YzMDNkZmE5N2NmZjZhMyBweTNrCis3NTg5NiAwZjI5YWEyZDQ4NDRmNzE3NDc5ZmI5ODJiMDQxZTliNWI1MmMyMzQ2IHJlbGVhc2UzMS1tYWludAorNzU4OTcgNzE1NzRmZTQ5NTc2N2IxMTg3NDE3ZjcwNmM2NmM3ZjI3MTE0OWQyMiByZWxlYXNlMjYtbWFpbnQKKzc1ODk4IDAzZDc2YmRmOTM2MmFhNTQyZjM5ZDAwNTg2YmRhMTNkNzA3NzgxNjMgcmVsZWFzZTI2LW1haW50Cis3NTg5OSA5ZTI0ZmQ2YTU1ZjA4ZWE1NzI3MWIzYTA1YjY0NmViNWI4MzQ0NGNlIHJlbGVhc2UyNi1tYWludAorNzU5MDAgMDQ0YTY4YmMwZDJlZmI5NjIzZTI2YjM2MGI3Y2ZlZGMxMmU5ZTE4YyByZWxlYXNlMjYtbWFpbnQKKzc1OTAxIGMxODIyNDk4OGJiMWM4NmY4NDQ1ZjdjMDdiMjg2YzJmZGRmMTU2ZjUgbGVnYWN5LXRydW5rCis3NTkwMiBjZDlmNzJmYmE1M2IwMzE1MDM1NzQyNzkwNjgxZmFiZmE2MzJmZThkIHJlbGVhc2UyNi1tYWludAorNzU5MDMgZWY2YWI1ZDBhMDA2YTliYzFkY2QwMzI0ZmE3OTllNzM4YzhhMGRmYiBweTNrCis3NTkwNCA1MmIyN2MwODE2ODY4YTgwNTVmNjI1MmRmMzVkMTYzNTY1ZDc1OWQzIHJlbGVhc2UzMS1tYWludAorNzU5MDUgYWFmYTY2YzU3NDQ0ZTNiMjVjYWZlZDAxYmIwZjdhYTljOWI4M2I3ZSBsZWdhY3ktdHJ1bmsKKzc1OTA2IDFlOWVlYzczNDQ3ZjI4YTBkMGViNmUxYTMxNDA2NDNmZTRiMTJhOGEgcmVsZWFzZTI2LW1haW50Cis3NTkwNyA5MGM3MTQ2ZGRmNDIxOWY5NDMzNDNkMTEyMDEyMGM4MWYxYWUyMGU3IHB5M2sKKzc1OTA4IDc2ZDA0MjE0MzhhYzM2ZjRhNWMzOWFmZDJlNjhkM2NhOTIxNWFmN2QgcmVsZWFzZTMxLW1haW50Cis3NTkwOSBlN2NlMjUxYjNiZmI2ZDRkMTY1YjI2MGVhMTZkYzBmZTMyMDFhNGQ1IGxlZ2FjeS10cnVuaworNzU5MTAgZTc1MGI5MGJkOTgyYjMzNTJhYzg4N2M3NDg3MjBkOTZhYzczMWFiZCByZWxlYXNlMjYtbWFpbnQKKzc1OTExIDQ0ZGUzYTQwMjQwMTQ1OThlNGY0YTBiZDViYjkyNjRhMTcyZGE0MjMgcHkzaworNzU5MTIgYTFkZWM1N2JlYTVkYzI2MDUxN2Y2M2I3ZTliNWQ3N2YyYzYwYTdiOSByZWxlYXNlMzEtbWFpbnQKKzc1OTEzIDJhOTYxZDdmMjAyOGJiMzUxODNmZDY2YjQ1MjRhMmQ0NDViNWI3ZDEgbGVnYWN5LXRydW5rCis3NTkxNCA4NGI4YTJiOGU5YWU1MWUwMDk2MmVjZmNkMzI5NWMzNWEwMDUwNWFiIHB5M2sKKzc1OTE1IGI2YmUzMDAyZDNjYTJlYzdkNGYyMTY0NzZmYjdmNzUyZGY1YTEyYWMgcmVsZWFzZTI2LW1haW50Cis3NTkyMCAyMTQ3YzJlYmNlZDg1OTNkNjZiZThkZGNkNTdjYmNkYzlkYTk5NmJlIGxlZ2FjeS10cnVuaworNzU5MjEgMjBlMjFjMTU1YzA1NjJmNjRmYTczYWQzMjM3MzcwYjk3ZjBjMGQyMSByZWxlYXNlMjYtbWFpbnQKKzc1OTIyIDA2NjY4NWY2OTgzYWQ0MGVkYjJhYWE1MWUzMzZkMzQxNjRkYmI5NzAgcHkzaworNzU5MjMgYTc5NTUyOWIwOWM5NjZhMjdlZmE0MWYyNzYxODJhNDlkMzQxZTMzZiByZWxlYXNlMzEtbWFpbnQKKzc1OTI3IDllODJmMTdiMmM4ZGEyMzAzZjlkY2MxNGQzNWRmM2I2YzVlN2FkYmUgcmVsZWFzZTMxLW1haW50Cis3NTkyOCBkYjRkZmRjNzQwMjlhZDk4NDY1MmMxMzUyMDYxZjFkMDIwZTdkZWQ2IHB5M2sKKzc1OTI5IDg0MDJlNDc3ZWI0ODdkZDRkMDI5MTM5Yzk5MjJjNmYxZTBlMjFiNDAgbGVnYWN5LXRydW5rCis3NTkyOSBlMzU4YWYyNTY5Yjk4YzEzYTQ3ODg2NjBkY2JlN2FmNTdiMmE1MTg2IHJlbGVhc2UyNi1tYWludAorNzU5MjkgNDQ4OTA5YTk0MGMwNGRhMDNiMzlmNThkM2VhZjc0OTIzMzZmY2I4MyBweTNrCis3NTkzMCBmMzJkYzg0YTg3NmNjNTk5MWI2N2Y5YjhlNzhkZjZjYTk0MDE5MTFmIHJlbGVhc2UzMS1tYWludAorNzU5MzEgODQ0MTgwYjdlNmZmMGUwZmE4NzI1MmI0M2YyNDMzN2Y4OTQwZmRjMiBsZWdhY3ktdHJ1bmsKKzc1OTMyIGM3MTVmODI1NTVhNGM5MzQ5NmVhODJiOTRjMWI3ZmM4MWRiMTdlODggcHkzaworNzU5MzMgZTgwOTk4MjYyOWM0ZDgzZGY3MjA3YjY2Y2E2Njk5MGM3OGMyNzVjNSByZWxlYXNlMjYtbWFpbnQKKzc1OTM0IDAzMmQ5NzQ5MDQ3ZDdlMTNkZTYzNTJhYzYwOTQ0ZTZjYjVkZWVjODkgcmVsZWFzZTI2LW1haW50Cis3NTkzNSBiNTcxYzY2ODUyMjlmM2MwODE4MzQ5YWVmYjY0OGNhMDgwNjQyZGVkIGxlZ2FjeS10cnVuaworNzU5MzYgM2NmZWNiYzdhZTk1YTdmNjI5ODA5MmNkMjg3MGQyN2ZmMjQ5OTFjYyByZWxlYXNlMjYtbWFpbnQKKzc1OTM3IDhjZmY5NDkzMjNjOWU2NmJjMThkY2U5MjRlNDljNGJkYTc3MWY5OTMgcHkzaworNzU5MzggYjAwOWEzODc2OTliMzJkMWM0NGFjYTJjYjkyZGVmYWExZGU0Yzg0ZCByZWxlYXNlMzEtbWFpbnQKKzc1OTM5IDU1ZTUwOGUyNTM1YzlhMzM0ODI4ZjIwNDU0NmFmZTkzZjE3NTMwYjIgbGVnYWN5LXRydW5rCis3NTk0MCBmZmM3ZDllYTI0ZDkwMjJmZjZlNzZkYmFjYzcwYzIyNjM3ZDcyZWU0IHJlbGVhc2UyNi1tYWludAorNzU5NDEgYWFhMmIwN2MyYzQyNThiNDE0NzBkNTNmYzg2ODUzNDRlY2I5NmQxZSBweTNrCis3NTk0MiAwNWZkNDhkYzJhZGE5YmYwYmYxOTUxNjM5M2UxMjQxZjk2MGFiMDAyIHJlbGVhc2UzMS1tYWludAorNzU5NDMgMTVmMTg3MjQwN2JlMjY0NmExMDFmZGI0ZDRjMTRiOTc0NmY2MmM0MiBsZWdhY3ktdHJ1bmsKKzc1OTQ0IDYzZWIyODgzOTI2YjJkNWI4MDI0YjUyMDQ2MTJkYTNmMGRmYzU2ZWEgbGVnYWN5LXRydW5rCis3NTk0NSBkNWEzNGVmMmZjYTdjMzIxMTc0Y2MwYTM0Yjk0ZDY5MjhjNjAxYjJmIGxlZ2FjeS10cnVuaworNzU5NDYgNTNlMzgwMDVkNTA3YzRiYTdlYjZjY2ZmMzlmYmRmZDExNDhiYTJlMyByZWxlYXNlMjYtbWFpbnQKKzc1OTQ3IGViZGRjZWQyYzljNGQ0ODQ1ZDA5MDA2MTY1ZWJkZWI4NTk2ZDY2OTMgcHkzaworNzU5NDggMGVkNGJmNDMwZDRlNWVlMGE3YjhhYmIxYmM1MThlZmY4MWIwYjlkNyByZWxlYXNlMzEtbWFpbnQKKzc1OTUyIGM2ZDYyMzQwYWViZjBjMzE5MGY1OTYzMjNkNGQwMjMzZTJkZWZiYjUgbGVnYWN5LXRydW5rCis3NTk1MyBlNjY1ZDIxNzBlODUyYjE5ZDYwOWIyMmZlYTk0MzAyZTYzZmRhNjJhIGxlZ2FjeS10cnVuaworNzU5NTQgNWY1ZTNjN2RhOGNiNDVmZTc0YTFjYzEzN2Q0ZDE3OWY0NzZiNDM3ZiBsZWdhY3ktdHJ1bmsKKzc1OTU1IDdlMDIzNzFhYTUwNjAyZjA5ODE1NGNhNTk4MzVjMDY3OWI5ODY1OTUgbGVnYWN5LXRydW5rCis3NTk1NiA0MTFmMjUyYTI5NGE0ZmUyMTg2NjE2YzdiMjQ3ZjdjMzNjODAwM2I0IGxlZ2FjeS10cnVuaworNzU5NTcgOWRkYmQ2OTgxNWNhN2EwOTZjNzQxZjg2NWRjNzQ0NDlmZDcxYzI4MSBsZWdhY3ktdHJ1bmsKKzc1OTU4IDI5ZmU1ZTdiZDZlZTE5MDBhODUzMTAxYmZjMmEyZTEwZTUxZjIzM2QgbGVnYWN5LXRydW5rCis3NTk1OSA2Y2Y4NGU1YTZkZDdlNTU1ODhmNTNkN2M2NzI4YTRjNTE2ZTMyNDNkIHB5M2sKKzc1OTYwIGUxMWQyNDY3ZDEyNjc5N2I5ZjNkZWE3OGUyNDE4MGZiOTIwMTBhNTQgbGVnYWN5LXRydW5rCis3NTk2MSA3MTNlMjFhNTQ3MWVkNzYzNjQyYzg1NjBmYmRhMzk4ZDUwY2M0MGQ2IHB5M2sKKzc1OTYyIGFjYWZhNTE0MmJmOTE4ZjQ2MGY3MWE3N2I4NjlhZDAyZGVhMWJlYzAgbGVnYWN5LXRydW5rCis3NTk2MyBjMTQ2OTI1MjM0ZjAzYWMwOWM0ZjBlYjUxMzM1YmY2YTA3YjQwMTQ4IGxlZ2FjeS10cnVuaworNzU5NjQgYTE4M2M4MmI2Mjg5NDdjZmUzOTg3ZmRjNTk0NTllNmMwMzAwNDY4ZSBweTNrCis3NTk2NSBlODdhNjY5OGEzMDVhNjQ1MDEyNzY3MDlhNmNmOWU0MjRkMmE4YTA2IHB5M2sKKzc1OTY2IGZkMjE4YWIwZTIyZWZlNTNiODMxNGRjYmE5YThjM2EyYmY5ZGQ3YzcgcHkzaworNzU5NjcgMzM4NjFjYTFmYjJiMTE4MTYwMjNjZDNkNzNhOTlhM2U1MzdmNWE0MyBsZWdhY3ktdHJ1bmsKKzc1OTY4IDA1NjQ3MDQ2OGZlMjllMThlZjFlMmE0NzNmNGEyMjQ5ZTBiZTk1ZjMgcHkzaworNzU5NjkgZDU2YjEwMzQ5MGE1NWIwMDNiY2FkNjYyZjQ4N2Q3OTQwMTc4YmQ5OSBsZWdhY3ktdHJ1bmsKKzc1OTcwIGJmOTNlNGRmN2JmYjFlNjMyNDkyNTgzNjRmYTI4MGFlNzFhYmVlZGUgcHkzaworNzU5NzEgOGQzNmRlYjM1NmYxOWY0YjhjODAzZWY5MDNhOWU5NzFlOWU0MmQxZCBsZWdhY3ktdHJ1bmsKKzc1OTc0IDdjODY5OTNiMTNjOWZkNzRkNDIxYTc0Y2I4MzM0ODNmZjI1NjE4OGQgbGVnYWN5LXRydW5rCis3NTk3NSBiNGU5MzM5YjQ5OWQ1NTI1YWM1ZWQ1NDA5OWZmZjllMjQwN2FkZDg3IHJlbGVhc2UyNi1tYWludAorNzU5NzYgZmNmOGE0ODY3OTIwNjNkZTY1YjAyYTE0N2MzOWM1MDY1ZGRlYjNmMyBweTNrCis3NTk3NyA2Y2I1MzI0OGU1YmU0YjA2YjM1YmZkMWQzM2RlYTlmNTQyOTI0ZGFiIHB5M2sKKzc1OTc4IDZhNmYzMmIwZmFiZDBkOGVkMzNmY2MxNTM3ZjY1ZjRhMGM0NmMyNWMgcmVsZWFzZTMxLW1haW50Cis3NTk3OSBiYWIzZTNjZDc2ZjFkNTI0NTExNmUyN2NjMDc5MWU3NWYyZGM5MjFkIGxlZ2FjeS10cnVuaworNzU5ODAgMTdkYzBiNTNiNDhlZGIxYWUxYzA4OThlNTFkZGI0MWJhYTFhYWE2ZCByZWxlYXNlMjYtbWFpbnQKKzc1OTgxIDE4MmZlMGFmNjA0ZTM1YWY2YjFiNjIzM2Q3NzYzYmZhZDYwYWYxM2YgcHkzaworNzU5ODIgZjU5NDMxM2I5MzY0NWFiMjRmODEyZjA3Nzk3ZTk0ZGEzYjllYTkzMyBsZWdhY3ktdHJ1bmsKKzc1OTgzIGZiNDk4YTBkZTBiOTVhYjYxYWYzZGMxMjE5MGMxNGY3ZjljNjBhMzQgcmVsZWFzZTI2LW1haW50Cis3NTk4NCA1YTk5MDAzYzliODNkODQyZjFiOTk1OWYzMzI2OGJmYzZlYTgwYTY4IHB5M2sKKzc1OTg1IDI2NGE3MzVhOGFmNzc2Nzk3ZGNiZDFiMDdmYTcyNGNmZDU1OWM5OGEgcmVsZWFzZTMxLW1haW50Cis3NTk4NiBlOWI4Nzc1NmFkM2IzYzI5ZTg5YjJjOTI5M2QyOTZiNGMwNmQ0ZjMwIGxlZ2FjeS10cnVuaworNzU5ODcgN2VjZDNlM2M5NTY0MjcxMGQ5MDFmMjU4NmU3MDhkMzExZWE1OTFhZiByZWxlYXNlMjYtbWFpbnQKKzc1OTg4IDhkNjc3MjVjYmI0ZTM1ZDhkODUwYTM0YTQ1NThiOTVjODU5NjQ1YzEgcHkzaworNzU5ODkgNzA0OWIyYzg2ZjA2MTBkMTE0OWFlMzM5YjIxNjVjOWI3ZDY1ZWY5NiByZWxlYXNlMzEtbWFpbnQKKzc1OTkxIDRjYmMzZmU5MzY3MWQ5MTViMDY5OWM1ZGU3MzFiNzRmNzIxMDkxNzkgbGVnYWN5LXRydW5rCis3NTk5MiA4OWU5ZDA1ODQ4OTAzZTU2YjNjMTUzOTE5NjBjNTg5MDBlYzJlZjI1IHB5M2sKKzc1OTkzIGFiMzg2OTBmZTAxY2Y5MzViYWZiZDIxMzE4ZDRiNGY0YWYyMmJmOGUgcmVsZWFzZTI2LW1haW50Cis3NTk5NSA3MWIzYWE4YTczMjBmZTQwY2MyMGQ4Yjc0MDcwYTNlYWNlZDJiYjg0IGxlZ2FjeS10cnVuaworNzU5OTYgMzcyNDZiNGMzY2NlMzllZTU4MjFkYWY3MDFhZTRmZjJiNjVkYzA5MCByZWxlYXNlMjYtbWFpbnQKKzc1OTk3IDE4MmNkMDRlMjlkYjExODdkOTY2Nzk5MmE1OGQ3NzgxMDZjNTNlZGIgcHkzaworNzU5OTggNDcxNzgwNGJiNTdkYzc1MGJkNTcwY2UzNjFjNTVmMjlkZDA5N2Q4ZSByZWxlYXNlMzEtbWFpbnQKKzc1OTk5IDlmM2Y4M2RmNjk3NWJlNmYwY2NiMDlhNzU0Y2I5MDgwMmRjYTlhYzggbGVnYWN5LXRydW5rCis3NjAwMCA4NDZmMjZhZDU4MDAwMjNiNmRlYTc2NmJjN2JjYWVmYzhiNmJlMzRmIGxlZ2FjeS10cnVuaworNzYwMDEgMjkxMzg2NGRkYmU5NTg5ZWEyOTZjZDNhMGQ5YTI0M2UzMTg3ZTE3YSBsZWdhY3ktdHJ1bmsKKzc2MDAyIDQyYmIzZTM2MTNmNmM5MGExYjU3NjVjYWVlYjBjMWQ5ZjYyYmVjYmIgcHkzaworNzYwMDMgZjgzYjQ4OTYyNzM5OTNhYjdmMTE0YWYwOGZjZTdlZWQ1MDljZTFkYSBsZWdhY3ktdHJ1bmsKKzc2MDA0IDAyZjVjNjAwODMyN2FmZTU1NTY1NjgzMDFhOWI1OGU3ZjlkODU4YmQgcmVsZWFzZTI2LW1haW50Cis3NjAwNyAyMTFlN2I1Yjk5OWMxYTNkOTFkNjM5YTA1N2I1YmMzOTg3NjdlYjZlIGxlZ2FjeS10cnVuaworNzYwMDggNzAwMDJmMjdkMjgxZWY2YmVkZTgxZDZiMDQ1ZjY3ZGU4ZjhjZTQ2MiBweTNrCis3NjAxMCA0MDI2OTZhYzRmOTgyY2ZiMjdlYmI4ZmZkNDVmNTAyOTNhYTY3ZTYwIHB5M2sKKzc2MDExIGIwZTRlZmI4M2Q2MGM3N2YyOTk4NDAxOGI4NjNhN2ZhZTIyYzc4OWUgcmVsZWFzZTMxLW1haW50Cis3NjAxMiBmZjhlMzU5ZTI4MDg0MzI1OGQzYjJlYWNhYWQyOTQ2YmVkNGM3NzgzIGxlZ2FjeS10cnVuaworNzYwMTMgNmI0YzczMjBiYTNhMTdmMjQyMmJkZGM0MzY2MjQwOWVlMzkwZjY1MCBweTNrCis3NjAxNCBiNjkwMTc3NjIyMDhhYWE2ZjJlODkzY2NkODk1MDE4MTY1ZTk1MTA5IHJlbGVhc2UyNi1tYWludAorNzYwMTUgNTkyNTkwMGVkZjE2ZjBjOTRiNWJjMTg5YWQxYWFjOGMzZTcwOGM4MSByZWxlYXNlMjYtbWFpbnQKKzc2MDE2IDc1N2I5N2M2MTY5MWUyOTIzMDk2NWY1N2I5Y2EyYzM4YTlmZjQ5OTkgbGVnYWN5LXRydW5rCis3NjAxNyA1Yjk1ZTRlYWM3YThiOThhOWE2OGIxM2FmZTk2ZWNjZTY5ZDk4YzUwIHB5M2sKKzc2MDE4IGVkMTY2ZmY3ZDk1MjM4MWM0NWRmMjFkMGMzNTE5MWMzMzBiMzg1ZWIgcmVsZWFzZTI2LW1haW50Cis3NjAxOSAxMGZlMjBmZDZmYjNkOGM4YWRhN2ZmZjYyZjIwNjY5YjgwZGYyM2MyIHJlbGVhc2UzMS1tYWludAorNzYwMjAgNGRiODQwNDVhN2YwMDcxYTBhODJhMGYxZjQ4MDgzOTQ3MzRiNWNkZiBweTNrCis3NjAyMSBkYTZhZDk4ZDVkYWVmMzA4YTNlNDBhZWNiNWQ5NTRhZTE5ZTE4NzI1IHJlbGVhc2UyNi1tYWludAorNzYwMjIgYzc4YTAwYTFkNmRiMTgzMGExODU3NGNmMTg3YjFmOGI4MjhiNTE1YyByZWxlYXNlMjYtbWFpbnQKKzc2MDIzIDkzYzdmNjUwOTM3ZjdlOTU3OGE2MTRjN2FhY2Y3Y2E1NGI1OGE1ZmYgcmVsZWFzZTI2LW1haW50Cis3NjAyNCA5MDEyNTliYzBiNjJlYTAxOWZmYTZhNTA5MGI2NDZkMDdiY2RiMzNlIHJlbGVhc2UzMS1tYWludAorNzYwMjUgYjdlNzYyNzdmNTQ1MjY3YWY4MGRiMGQ5ZjU3ZDlhYjNhZTNiYTIxNyBsZWdhY3ktdHJ1bmsKKzc2MDI2IDFhYTZiNjhlODUyMzA0MTdjM2E3OWMyZjAzYTQ0Y2RmMTUzOTA0OWQgcHkzaworNzYwMjcgNjU4ZWI1OGQyZTY4Yjc1NDA4MzU0MzJmNjYzNDY2ODlkOTFlNTBhZCByZWxlYXNlMzEtbWFpbnQKKzc2MDI4IGM3ODVhZmE2Zjk1YzU2NDlkMGY2NTNhNWQ4ZTQ3OGJjZDU4MmQ5ZjkgbGVnYWN5LXRydW5rCis3NjAyOSAzMDM5YTRhZDdlMzlhMTFhY2I3NmRmOGNhMTVmZmEwODM0ODlmZDZkIGxlZ2FjeS10cnVuaworNzYwMzAgZGRjMTQxZDllZjFiMWJmMzFiODUyMWViY2MyZmU0M2Q5MGYwN2I3MyBweTNrCis3NjAzMSAzODcxOWI4ZTBjOWY3MGUyZjI5MTJlZmU0Y2Y3NDIyYTg3ZWYyMGQ2IHB5M2sKKzc2MDMyIDM4ZWI2YThhZGMyNDJiMDI0NGIwYTIxZmZiYTk0YTRmZjI4NzczNDQgcHkzaworNzYwMzMgOGNhNGQ3NzY4MGM2ZDI0MjE0Njk5NTdmZmMyMTlkNGMwMWIxNTY0YyBsZWdhY3ktdHJ1bmsKKzc2MDM0IDUxYjk5NzNmNzYxZWM0MDBjNzQ2ZGVhMzNmNmY1YjkyZTUzNzhkMzcgbGVnYWN5LXRydW5rCis3NjAzNSA1NzU0MmI1MDJkMzIyM2E2YjUxZTI4MzkzMWEzODljYmY3MzFhNjllIHJlbGVhc2UyNi1tYWludAorNzYwMzYgM2JmNzYxZGY4MDJhYWRkYWI5MGIyZWIwMTcwY2QzMDhlZTIyYjFiZiBweTNrCis3NjAzNyBhMDFlNmNlZjEyNTZjOTEzOWM5NjMxNzZmMDEyYTA4ZTIzODczZTgzIGxlZ2FjeS10cnVuaworNzYwMzggMzQ0YzQ3ZGYzNjNmOGI5YzI4YTA2MDI5MjU1OTYzMzJhMzZiZDY0ZCByZWxlYXNlMjYtbWFpbnQKKzc2MDM5IDQ1ODBmZTA3MTllNzAyZDIxNjEzZTQxNmY0ZDZhNWI1MDUxN2I0ZjEgcmVsZWFzZTMxLW1haW50Cis3NjA0MCBmZDA1NDI3MTZhODA1NTFmYTJkODkwNWYzNDIzOWIyOWJmY2YwZTk4IHB5M2sKKzc2MDQxIGI1OTFmYzg3MjFmMmZkYzUwNTg2NjFjOTlmMzY2ZTUzOTQ1MzI1OTMgcmVsZWFzZTMxLW1haW50Cis3NjA0MiA2ZGM0ZmFhNDVjYmQwODkwMTBkZjVhOWNjMzBjOTE2YjA3ZjgzZDY1IGxlZ2FjeS10cnVuaworNzYwNDMgMjhmZWY3MjY0NGI3YzY0NDRjZTViMjlkYjhhMGIzNWMwZWZjZGI2NiBweTNrCis3NjA0NCA0YTg0NTllMzI5MTkyMzJiZWVjZjUzMDNiZjJjMzYyNWFjN2Q3MjQwIHJlbGVhc2UyNi1tYWludAorNzYwNDUgNmU0ODlkM2Q3M2I4ODA0OTE1MzdhZWFmNGFlZmFlZmE2MmU4MTYwMyByZWxlYXNlMzEtbWFpbnQKKzc2MDQ2IDFlMWJlMWEzOWE3OTJlZjc2MGQ2OTI0YmMwMWU2M2M3Y2NiMDljZjEgcmVsZWFzZTI2LW1haW50Cis3NjA0NyBmMDEzMDJlNmFjZDU0NDYxMzU1NjliNzUzNDI5NWNkMzQ4NDE3ZDk4IGxlZ2FjeS10cnVuaworNzYwNDggNWQ2ZWQwODgzYmY1NzljM2Y4NTNmMTI0YTY0MTQ4YmYzM2U2Mzg3MyBweTNrCis3NjA0OSBhNWU0NzNlOTViY2VhZDVjNWRiM2Q3NmZmZGUxYzUyYTI0NTQ0YmJhIHJlbGVhc2UyNi1tYWludAorNzYwNTAgNDUzZjU0NzhhNjkxZGQxZGY5ZDViNGYwZjBlYWUxODlkZTZlMzExMyBsZWdhY3ktdHJ1bmsKKzc2MDUxIGI5MTkzNzBmMTgyMGZkYmExNTU4YjlhNzM5ZWNjY2I3NmMyZWI2ZWEgbGVnYWN5LXRydW5rCis3NjA1MiA2OThkZTUwMTc5OWQ5OTM1YWMyZDY4NmI2MzA4MDk3N2M4NmQwYzBiIGxlZ2FjeS10cnVuaworNzYwNTMgZDJkOGNhYmI5ZTNhOTIzYWIxMDM3YjBkZThjY2Y2YjllZDQ3YzYzMCBsZWdhY3ktdHJ1bmsKKzc2MDU0IDk2YTg1M2ZhZTgzYjIzNzRjODBiOWUwNDQyYWUzMTU5MjNmNzA5ZGUgbGVnYWN5LXRydW5rCis3NjA1NSAxNDAyYzc1Mjc1NjU1ZmRhM2ExOGY5NjI2NjM0ZTY0MmVkYzVlYjBjIHB5M2sKKzc2MDU2IDhhMGQzYzY5YWUyMWFkYmRhNGMwODZiYzg1NDU2NjJiOTU0YzU1ODkgcmVsZWFzZTMxLW1haW50Cis3NjA1NyA4OGEzNjQ2ZWYzMmMyYTc4MmJiNDE5YmMxZmM0NmE4Zjg2ODQ3ODVjIGxlZ2FjeS10cnVuaworNzYwNTggZTYwOGY1OGQ1ZDE4YjYxZDQyZDQwNTU0MjZiNmUzMTYzYjI3YjY5NSBsZWdhY3ktdHJ1bmsKKzc2MDYyIDk0ZTFiMTRlYzgwNGI4YWM5MjkwYjIwNTI4NjU4Mzc0ZGZmY2M1MzAgbGVnYWN5LXRydW5rCis3NjA2MyA5NTljNjhkMWQyOGEwYTBjNzJlZmEwZWRiZDc3NWJiZWEwMmY3NmUyIHB5M2sKKzc2MDY0IDNjZmQ2OTU2NGU4ZjA3NmZkNmJkODU5NGE3YjFlZDA4MDJiMmI5NDUgbGVnYWN5LXRydW5rCis3NjA2NiBmMjk2MGYxMTZlNzdhMmViYWQ1MTAzN2UyMmEwOWI3YTdhMzBjMmEwIGxlZ2FjeS10cnVuaworNzYwNjcgYmVlODk5NGIxM2RlZGI4MTcwMzk5YmNiMjRhMDY4NjAwNTQ5Yjg2OCBsZWdhY3ktdHJ1bmsKKzc2MDY4IGEzZjIxY2VlNjRkMWYxMjhhNjM1YmQxYzJjNGQ2MjdiMzBlNTAxZTggcHkzaworNzYwNjkgYTgwODZiMzE0Y2QwN2U2YzNlYjkyMDliMmQzNWYxZjNjNGU0NzgzZiByZWxlYXNlMzEtbWFpbnQKKzc2MDcxIDIwMWE0MTllOWUwNjYwYmU0NDhiZjEyNjdjOWJjOGQxZTE3YTc1MTAgbGVnYWN5LXRydW5rCis3NjA3MiA2NWIxMTIxYTI0NzNmZDIxZTYyZTliNGJjOWIxM2MxNjI2NGNjYTBhIHB5M2sKKzc2MDczIDZjMTNiZjM1ZDE2NjExNzRhYmVlZThlZjBjYWIwMTViMTg2OTIwYzkgcmVsZWFzZTI2LW1haW50Cis3NjA3NCAzMjAxZmFiMzUyMjBmNzg1Mjk5ZGQ4MjhlNTYxNDg4YjQ2NzI5Y2M3IHJlbGVhc2UyNi1tYWludAorNzYwNzUgYzkwMDhhM2U3ZjdmZDIzNDhiOTVhNDhhNDJhNjVjOTViMGJmNzUzMSBsZWdhY3ktdHJ1bmsKKzc2MDc2IDY4NWEyNGE2Zjk4Njg0N2YyNDIwY2ExNTY2MjI0MGYyNzIzMzRiMzEgcHkzaworNzYwNzcgMzJjN2Q5ODEwM2JhZWMxYTM3MWNmY2UyMTk4NmY3NDdiNDAzYWJkOCByZWxlYXNlMjYtbWFpbnQKKzc2MDc4IGI0MTFjZTU4NGI3ZmYwNDFhOWEzZGZhNmUzNTkxODE1MzBlMTZmYzEgcmVsZWFzZTMxLW1haW50Cis3NjA4MCA2MmRjZDlmZGQ3YjM0ZWU2NzJhNzIxODY0YmM2MDZlMjQ2OTM5MDNjIHJlbGVhc2UyNi1tYWludAorNzYwODEgYmIzN2M3YzI2ZmE0ODY1MTUyNzBmYzA0YWQ1ZGMwNWNmMzMwM2U2YSByZWxlYXNlMjYtbWFpbnQKKzc2MDgyIDE5YTU3M2M0NGFlMTFjMmJjMmRhNTEzYjMwNGMyN2I4MWQ5YzNjYjcgbGVnYWN5LXRydW5rCis3NjA4MyA5MmNjN2VkODNlOWMwMWExODNlODRiZjM1M2FhNjViMjc2MGI5YzcyIHJlbGVhc2UyNi1tYWludAorNzYwODQgN2ZkOTBlNWEwYWQ1ZjliMzMyMDQ1ZDMwZGI1MWJmZWNhNmViNDFmOSBweTNrCis3NjA4NSBmZTgwOGQ2NjQ4M2Q3YjVlOWRkY2IwNjZlOGMxZWFkODNmNDkwODVlIHJlbGVhc2UzMS1tYWludAorNzYwODYgOGM4MDdiM2E5MDUyMzIyNzA1NzJjNWIxZjliZTMzOWVkZmE5ZDEyZCBsZWdhY3ktdHJ1bmsKKzc2MDg3IDU5ZTlhZGNhNzcxYjM0YWFmNDQ3OTNhNDA3YjllYmNjYmNlYTIxMWMgcmVsZWFzZTI2LW1haW50Cis3NjA4OCAxZGY5MGUyMmJiNzA2MWU0ZTc3MjZhZGVmOWFlOGMxM2M2OGU1NWYwIHB5M2sKKzc2MDg5IDlhZjJlOTQ0MzlkMWI0NDZmMTA2NTc4YzdhNWZmMzIyMTI3MWY3ZDggcmVsZWFzZTMxLW1haW50Cis3NjA5MCAxZThhMzNmNjE4ZmIwNjNmNzRjYTZiNmM3YTk0Y2NhNzY0YjExNzJiIHB5M2sKKzc2MDkxIGZmYWY2NjVkMmQzZTVkNTZhZWRlMGJjOTkzMDdlMGRmYzE3OTA2MjUgcmVsZWFzZTMxLW1haW50Cis3NjA5MyA0MmZhM2UwOWI2ZTc5ZDMxZjhmZTFmMzk0N2U5MmI3ZDEzM2I2ZGYxIHJlbGVhc2UyNi1tYWludAorNzYwOTQgMzM2NGFjYmFhMTUzY2VjZmUzY2JiMzFmNjFjZmU0ZDcxNDlhZTcwNiBweTNrCis3NjA5NSBlZGE5NzljOThhN2ZiZTAzZDY3ZDBjNmRkYjcyZTMwMjQzNDJmZWM0IGxlZ2FjeS10cnVuaworNzYwOTYgYzk0ZTNiZjgzOTJiYTAzNTNiYTUxZTk5YmVmYWY2MTk2MjYwNDQ0OCByZWxlYXNlMjYtbWFpbnQKKzc2MDk3IDFmMTc1ODg0OGM2Y2IzODBkYzQxYzQyMGEzN2RmMzI2MDg4ZmVhNGYgcHkzaworNzYxMDAgZjk1YjVmYWExM2NmNWY0ZjZmOTk0ZjdhN2Q0YjU1OTk1OGU4ZDhjNyByZWxlYXNlMjYtbWFpbnQKKzc2MTAxIDUxODY5ODE0YmE5YThmOWRkYjc0M2Q3MGU2OTE0MmViMmZiMjcwZTYgbGVnYWN5LXRydW5rCis3NjEwMiBlYTczOGZmMTgwMTY2M2JhMzJlMzM0NTBiOTI0MTAyMmFhYjQxYjdkIHJlbGVhc2UyNi1tYWludAorNzYxMDMgNjA1ZDJmNGM3NTM5NDlkMmI5YTM4ZmQ1NzQwZTY5ZDMzZjlhMDg4MiBweTNrCis3NjEwNCBjOGJmYzRkYWZmM2Q4ZjQ4ZjM0YzYxNDhjYWU2OWFjMDU5M2NhOTIxIHJlbGVhc2UzMS1tYWludAorNzYxMDUgZjVkNjg2MDRjNmI5NTJhOGUxNmMwYjlhYTIyOWRjOTBiZDc5MjUyNyBsZWdhY3ktdHJ1bmsKKzc2MTA2IGQxNjE0NDI2OWQ1NThkNjcxZjI1YWNlNzE0YjkwNDhmZTk0NGEyMmMgdGFyZWtfc3lzY29uZmlnCis3NjEwNyAyOThmNmIzNDEyNWQzNThlM2Q4NTZlMmExNTdmYmNjZGNiMDk2NTYxIHRhcmVrX3N5c2NvbmZpZworNzYxMDggMDY4Zjk0MzBjYzI0MGIwOTVlMjUyOTNlMjJlMjE5Y2E3MDc3OWEyYyBsZWdhY3ktdHJ1bmsKKzc2MTExIGY4OWE5M2E3NzhhODFkMDY4ZGM4OTI2MWQ0ZTdmYTIyYzliZDU4MTEgcHkzaworNzYxMTMgZDNhODEwNTE2NjNiNmI1NmI4Y2RjNzRlYzQyMjAyMGIwMmQ5YjRkZCBweTNrCis3NjExNCA0NDQ5ODljZTVmNzcxNDhjYmVhNDI4YjM0OThlZjFkYTZjNjA4ZmNiIHB5M2sKKzc2MTE1IDkzYzc1Mjg3NTAzM2NjNWRkZWIzMWZhNTIxNjlhODA0ZjVlZGY0ZDAgcmVsZWFzZTMxLW1haW50Cis3NjExNiA2M2M5ZTYzZTBkZTNmMDJhYjZmMWQwMzI2YjRkODlkMDYyNmNkMDlkIGxlZ2FjeS10cnVuaworNzYxMTcgZmQ3ODI4MDUxODY1NTFhOThlMTA1MTI4YzUxNWVhZmRmMGQ2ZjUyOCBsZWdhY3ktdHJ1bmsKKzc2MTE4IDJlYmFkM2RmY2RlMzc2MjdlZTEyOTU1MmRiY2I1YTQzZjI4YzBjZjggcmVsZWFzZTI2LW1haW50Cis3NjExOSAwY2I5NDM5MDBlNTMxZTRmYTJlMjI0ZjQwMWQ1NGMwYmU0YmUwYWJiIHB5M2sKKzc2MTIwIDRlYTBhODBlZDc2YTYzOTJjMWM1NWZlMmY5MDM0ZjYyYTUxYjI5YzYgcmVsZWFzZTMxLW1haW50Cis3NjEyMSBhMWM5NGYwNzYxZDQxM2JhZDZmMTA4ZTA2NWQ3YmM4MjlmMjI5NDIyIHJlbGVhc2UyNi1tYWludAorNzYxMjQgMzVkZGZiNDQ3MTY4ZDA2ZjQ0NjJhMzlkYWE5OTVjOTdkYzg0MGRhZCBweTNrCis3NjEyNiBkM2E3NjM2MzkyYWY1NTRkMWVlZjYyNWU0NmJmZmM2MWU5ZTMzNzkxIGxlZ2FjeS10cnVuaworNzYxMjkgZTNmZjM5NzZiYmFjZWY3NTIzYTU4MzNiMTI5NDgxYjVjOTY3YmRmMiBsZWdhY3ktdHJ1bmsKKzc2MTMyIDg1NTJhMjY3NzJlNmZjMWJkODFiNjYwNmZjNjI4NjQyNDAwMTk0NmQgbGVnYWN5LXRydW5rCis3NjEzMyA2ZGIyMjBhZjhjYTNmZWM5MDQ2NzljZTc1ZTljMWYyMDRiNzFiOGVjIHB5M2sKKzc2MTM2IGQzNDZmZmI4Y2ZkNzQzMzE5Y2RhODVmY2NlMzU2N2IwNzdiOTUxY2IgcmVsZWFzZTMxLW1haW50Cis3NjEzNyBjZDM2MGFjNThjZDJlYTA2YzZhOTBiMjMzYTYxNzdjMmY2ZTE5OTNjIGxlZ2FjeS10cnVuaworNzYxMzggZTBkZGVkYTBkOWMzM2Y4NDI1MTAyNGEwNTY5N2Q4MmI4ZWFmMDgxMyBweTNrCis3NjEzOSA5MzA5ZGFhZjMyZDE4MDcwMjZlYzM2NmU1YzBkZDMyNzdiZTM0Njk4IGxlZ2FjeS10cnVuaworNzYxNDAgODE4YjBiMjg3YWE0MjQ0YjdjYTdjN2Y1YjY4M2JiOTg3MzI2YjBkOCBsZWdhY3ktdHJ1bmsKKzc2MTQxIDQyZDRjZjgyN2I5ZTg5YzgzZmNhZTNhYjRlNzYxYmUyYzAzZWRhNDUgbGVnYWN5LXRydW5rCis3NjE0MiA5MmJkYzNjN2Q1YTQzZWYzZDlhZjhjMTI4YjJjNWY2OTY3ODNmZmUyIHB5M2sKKzc2MTQzIDFhMzA4NjBiY2EwMzdmODQxMDk0YjIyOWMzMjVmYzllMzJjYjhkYTIgbGVnYWN5LXRydW5rCis3NjE0NiAyN2UxMjBmOTIwOGIzYWE4YzBjODkxYTVkYTNmMWY5ZGZhMjg0NTg5IHB5M2sKKzc2MTQ3IGUyNTI4OGJiNmZhZjE3YWU4MjQwZTViOTRkODViYTFkNjgyNGUwOTMgcmVsZWFzZTMxLW1haW50Cis3NjE0OCA2ZjVmNDgxZDYxOWMyY2RiYmViYzM1ZTliOWQ4YWEzYTgxZmQzNDgxIGxlZ2FjeS10cnVuaworNzYxNDkgMDRjZjk1Y2Y5NDk2ZmZmNTBiMWYyZWYzNjY4Y2E3OTIyZmE4MjU1ZCBweTNrCis3NjE1MCAzYTBlNjkwMDEyMTU0M2E0YmY1MTY0OGQ3YmQzYmQxNWZjOTFkN2ZjIHJlbGVhc2UyNi1tYWludAorNzYxNTEgMzgxYTYyZjFlNjM1ZjJjMDIxNDRkZDkxZDRmOTNhNDk5MDVkNDI5MiByZWxlYXNlMzEtbWFpbnQKKzc2MTU0IDYzNzcwYTVhMGM3OWRmMmI0ZDIzZjc0ZDkwN2JkZWQ4NTU2NzkyODYgbGVnYWN5LXRydW5rCis3NjE1NSAyZTRlNDc3MjE5YzU3M2Y1Y2FiMGYzNDlkOWFlN2QzM2FlZTRlNmU0IHB5M2sKKzc2MTU2IGRjZDY4ODdiOGEyNzc0N2RhOGI0MjczNmUzY2ExYWQ1ZjRhNzQxZTQgcHkzaworNzYxNTcgOTc5ZWIxYmJmNmU2ZTQ2ZGEyNzA5NTZlOTQzMWUyODc5ODE2ZGUzZiByZWxlYXNlMzEtbWFpbnQKKzc2MTU4IGQ2MWIyNGM4NzY3NDQ3NTY5NTRmZmQwMDllMTliMmM0MmMzMWRiZGUgcHkzaworNzYxNTkgNDg5ODllY2ZmODA0N2JiZTQ0MGU3YTE0NzMxMWI0MzkxNzE5YmVlOCByZWxlYXNlMzEtbWFpbnQKKzc2MTYyIDY5ZDYxYWY1YTk1ODkzNjQ2ZWQyNTY2MmY3NGFmMGExMWYwYjMwZTUgbGVnYWN5LXRydW5rCis3NjE2MyBkOTcwNTllOWU4NTJlYWMyYjg1NjNhY2RkM2JmYTE4NGVlOGNjYjk3IGxlZ2FjeS10cnVuaworNzYxNjQgZjE5MDMxNWYxODVlYTdhYmU0ZmMzYzE1ZWIyNGUxN2UwNjA0ZWI3NiByZWxlYXNlMjYtbWFpbnQKKzc2MTY1IGVkMTFiMzE1ZDM2YTM4ODdmMTY0MDA1MDcyMzdkYTNlMjBjMTYzZTggcHkzaworNzYxNjYgMTQ0N2Q3NWRlZjhiMjU3ODEwZjIwOGE2MDg1MjVhNDUyZWFkMjY3MyByZWxlYXNlMzEtbWFpbnQKKzc2MTY4IGM3NmQ1ZmJlYjY5MTkzMzljZDJiZDU5YTIyM2UyOTdkZGUxZjBkNzggbGVnYWN5LXRydW5rCis3NjE2OSAyNjdhNDE4ZWJiYzliNjRhMGIzNWY4N2JhZWM5OGU3MTVhOTc0MmQ1IHJlbGVhc2UyNi1tYWludAorNzYxNzAgYTdhYzRkYmRlNWRiNjIwYmEyMDBmZGM4Y2NkY2RiNzVmZDkyNDk5MiBweTNrCis3NjE3MSA2NjdkOTc3OWNhZDZhZmY2NjA0NzlhM2YxMjU3MDA4ZDI1YTIyZjBhIHJlbGVhc2UzMS1tYWludAorNzYxNzIgZmJmNDFiMTEyNGQ4ZWNhZjFlN2Q4ZDdlZDA1Y2I0NDNjZWZkMjhkYiBsZWdhY3ktdHJ1bmsKKzc2MTczIGVkOGIyOTY5MTE5ZTI2YWU2ODI2OTY0NmRiYjQxYzkzZmI2NGE5Y2QgcHkzaworNzYxNzQgMGViNTZhOGU2MjYyZjNiOWQyMGFlMzk1MDM1MzUyNDU3ZDIyYzdhNCByZWxlYXNlMjYtbWFpbnQKKzc2MTc1IGZlMzM1NjJkMWY5NWEwZmRjYjk4MDEwMmI5ODQ5ODU4ZDI0Y2I1NDcgcmVsZWFzZTMxLW1haW50Cis3NjE3NiAyZDM5NGQyZDJkMzdkN2RhYTFjNmI4MTM2MzM5YmNkMDQ0MTNiNzc1IGxlZ2FjeS10cnVuaworNzYxNzcgMDUwYTY1YTNkZjUzOGIyODc5YTNlOGY4YzBkMWUyZGRhMDE4NmE1OCBweTNrCis3NjE3OCBiZmNhYjFiYTBmNTFjYjNjZTUxODk4NWIzMTUxNTQ4YzBkMzNlOTdkIHJlbGVhc2UzMS1tYWludAorNzYxNzkgYmNhMDI3YjZkZjUzM2Q2ZGMzYWIzMTNhNmFjZWY0ZjA5MGI1MTliZCByZWxlYXNlMjYtbWFpbnQKKzc2MTgyIGZiZmNjZTExMjRhZTI3MGE0NmM0YThiM2JiYTUzZjIwNWY4OTEyMzUgbGVnYWN5LXRydW5rCis3NjE4MyA1MjE0MDczOGQ2YzNiNWVlZDZhNDJkNjFhMDNlNDQzNDU3N2Y1ZTFmIHJlbGVhc2UyNi1tYWludAorNzYxODQgOGJmYjMyYjVmZTZkNGQyZjk2NGRkOWRmZmU3MmY1ZjY0MmY3NzM0ZiByZWxlYXNlMjYtbWFpbnQKKzc2MTg1IGRkOWY4NWE1ZjEzNDdjZmIxNjIyNjg0ZjBlYTYyNDYzZWM4OWMxNDkgcHkzaworNzYxODYgOTIxOWE5NjJhZDFjMzA3YWUxYzc4ZWZlOTJjZDM3ZGIwNmQyNjE0OSByZWxlYXNlMzEtbWFpbnQKKzc2MTg3IGZmZjU1ODI4NmFhZTNmZTM2YWQyYzY5Mzc0N2ZmM2MyYjg0M2Q5NDkgcmVsZWFzZTMxLW1haW50Cis3NjE4OCAyM2NjNzU5Y2ZhZTM1ODI1MjdmM2I1MmVkODJmMjVjYzE2NTZhZmRiIHB5M2sKKzc2MTg5IDZkOTFhYWFkZGRkMDgxZGU3M2U0ZjI5YjZlNzM0MzdhYzRkYjdiYjMgcHkzaworNzYxOTAgODY3ZDJmMjczNWI4OTA1NTc2MDFiOTQyNTc4NDY1ZDgzNjYzZGVhZCBsZWdhY3ktdHJ1bmsKKzc2MTk0IGNhMDIxN2M1MmE4YmYzODRiMzQzZGFiMmYzODMwYzVkYzc5ODBhNTkgbGVnYWN5LXRydW5rCis3NjE5NSBmZGQ2NDg0ZjEyMTBkNjBjMTY4ZTIzNzY2YmQzNDJkZThhNjZmMjE3IHB5M2sKKzc2MTk2IGNiNTkwNTgwNmRlOGRjODc3Mjg4MmY5MjRjNWVjOTExYjYzZTI2YWYgbGVnYWN5LXRydW5rCis3NjE5NyA5N2MzMTg3MTQwNzBmNmYxN2RmN2U2ODVlNmY3ZWFiNmNiMmE0M2UzIHB5M2sKKzc2MTk4IGZlNmI5YmFiZTRiZTkxNmY0ODQ5MDVlNTNmMWYyNWEwNWNhYzBmZGUgcHkzaworNzYxOTkgOTc2Y2M1MDRkOTlmMjgzODViNWQyYWZkODFiYjNkMjg1NWM5Mzc1ZSBsZWdhY3ktdHJ1bmsKKzc2MjAwIDEwNzY0ZmZlNzU0M2NlOWJjMTJmNjNhYzQxZDQ1ZTk2NjEzOTI5ZWEgcHkzaworNzYyMDEgYjFhNzc1YWEwNzEwZDQ5NjFlYWVkMTM4NTA0ZTc0YjBlODdjN2IwZCBweTNrCis3NjIwMiA0ZWJkZDJlMGFhYWRlNzUzZGMzNGUwZTcxMjc2NTY3Y2NhZjU4OTUxIHB5M2sKKzc2MjA4IDU0YjhkNzgwYzliOTllMGJiNTcyZDQ5YzZmN2RhZDdmNmYxMDY1MDAgbGVnYWN5LXRydW5rCis3NjIwOSAyOTUwZDk3NzEzOTU5ZTcwY2Y1ZTk1Yzg5NjAxYjBiNmNlOGYxODc5IHJlbGVhc2UyNi1tYWludAorNzYyMTAgMTJlMGM5ZWEzMDRlZWViNTY4MWI3ODU0ODc5MjlmNTY0Y2VlMWE1ZSBweTNrCis3NjIxMSBjODVlYjU5NDY2MTQ1NjViZDNmOWYyOGZmZTBlNWUzZmEzZjk0OWM3IHJlbGVhc2UzMS1tYWludAorNzYyMTIgNzk1ZWY0NjM0OWU1MDFjYmM5MzRmOTE1MDQ2OWYxZjYxYmExYzBiZiBsZWdhY3ktdHJ1bmsKKzc2MjEzIDIxNDg4NTFmMDgyYTE5MDBhNjBjNzNmYjU3MmMyYzE3MmVlZDhjMTcgcmVsZWFzZTI2LW1haW50Cis3NjIxNCAyNTdjYjYxYmY0MWI1NjdiYzI5MzAwMTBiMzkzY2EwODRhYTUxMzU3IGxlZ2FjeS10cnVuaworNzYyMTUgY2U5ZjU1YWQ1NDZlMTRhNTQ3OGQzMjBiNTY3OGU0YjcyYjE2ZDhhNCByZWxlYXNlMjYtbWFpbnQKKzc2MjE2IGM3MTdmZTk5MzA4NWNkYWExZmJjOTRlY2E5YTZjZWI4MjJlYmVkMDAgcHkzaworNzYyMTcgMzNiZTgyZmEyNzdhYzlhMWVhNTAwZTljYzViM2E2YTE0NjlkMzg0OSBsZWdhY3ktdHJ1bmsKKzc2MjE4IDQzZjMyZGIxYmY0NmZiNmUwNGM2ZGFkM2U1ZDA0MDYxYzU5MGE1YjggcmVsZWFzZTI2LW1haW50Cis3NjIxOSA4MTE2NmQ3YjQxNGM4YWYyNzhkNzlhMTBiZjI4OGYzOWMwODE0YWVhIHB5M2sKKzc2MjIwIDEzOGMxZjc0ODA0ZDY4YzZmNTYxYWExMmIwY2Q5ZGU0NWM2OTNhNDIgcmVsZWFzZTMxLW1haW50Cis3NjIyMSAxYzI3ODg4YTk1NWZlOWM2ZDkxZTExMWU1ZjQ4YTI0ZmM3ZThmYmZlIHB5M2sKKzc2MjIzIGQ0NGZlYTIzZmQ1N2ZkNWI3MmYyMjU0YTEzMjJjNGEyMzQ0ZGZlYWMgbGVnYWN5LXRydW5rCis3NjIyNCA5NGNkMTg1ZjUzYjQ3NjEzNmUxNDIzNTBkNzdjMGNlZGU2ZWMwZTliIGxlZ2FjeS10cnVuaworNzYyMjUgNTcwNzdkZjAyZjlhY2JjNzkzMGYzYzIxZDZmM2Q5MzZiYzI2MzAyNyByZWxlYXNlMjYtbWFpbnQKKzc2MjI2IDVjMGQ0YjNlY2Q2NWQxOGYyMWE4MDIwYTkwNzQ1ZWRjNTNjMzdhNzAgcHkzaworNzYyMjcgNGYxYzdiN2JmY2JkYTQwM2FhZGMzNzE0Y2YyMTY4NzFmNzg0MjU3ZCByZWxlYXNlMzEtbWFpbnQKKzc2MjI4IGNkMDQzNmMzNGVmNDZkZTBmNDRmMDU5M2RiNDBiMThhZTE1ZjllMzkgcmVsZWFzZTMxLW1haW50Cis3NjIyOSBmOWE1MGNlZGU2YTkyMmIwNjdkNmQ2Y2U5NjgwMjYyZjQyNTJhMWQ4IHB5M2sKKzc2MjMwIDg5ZjQyOTM4ZDVjY2I3MzNjMzM2YTRkNTE0MTYzZjQxZmZlNDI4YzIgbGVnYWN5LXRydW5rCis3NjIzMSAxMjhkZDZkZTEzNGNhODljMmM3OThjZmJkMzFjZjJkNGI2YTY5ZWYyIGxlZ2FjeS10cnVuaworNzYyMzIgYjJkOTBjMWM2MzdkYzU3Zjk3NTgyMTg4ZDRmMmQ1NWVhNzJkODZjZSBweTNrCis3NjIzMyA3NjNkMmZmNzhhZTdlOGM0NTI5YTYxZjNlNGNiNjU1YzExYjQ1MTQ1IHB5M2sKKzc2MjM0IDdjZWI1ZWI0NjJjNTAzZjk2ZjBmYjllMTEyMTJjYWNlMjM2NTkzYzQgcHkzaworNzYyMzUgYjM1NGMxYjZiNDc2N2MzN2I0YzM4MzYyNTViN2FmYzAyZGE3ZjUzNCBweTNrCis3NjIzNiBhMDk1MWYxMWJlM2Q3NmU2ZGE5OTk1NDM1YWZjZTU0OTVmMTAxNTMxIHJlbGVhc2UzMS1tYWludAorNzYyMzcgYjdmNzNiMDJkNmQyNDhjZWQ4MmI2ZTExN2I1YTcwMTQ2MjIxMWIyMSBweTNrCis3NjIzOCBiMjE4ODM2NTczZmFjZTg3ZjRmN2M3NDM2YzlkNmU1NzI2ZjQ3ODZkIHB5M2sKKzc2MjM5IDk4NTc5ZTk1MmI1NGFmOTdkMGE4YzZkMzMxMDgwMDhiNTEyMzk1NDEgcHkzaworNzYyNDAgNjg1NTI3YWU0MzdkZjkyYThmNGNhNDMwZTFlYzMxODc4MjNiNjgxOSBweTNrCis3NjI0MSAzNTdlMzk3MDA0ODk3ODNlN2EwZGNmNDY4N2FkMTVhMTQ5Yjg2OWFkIHJlbGVhc2UzMS1tYWludAorNzYyNDIgOGU2YjQ3OGE3MDUzZWViM2ZmZmIzNDMzMzhlMDgyOGVhMzZiZWY3MyBweTNrCis3NjI0MyA2NWUyMzA4NWUzY2FkZGRiY2QwNWMwNDI1NmUwMTQ0ZjJhNTM0MWM1IGxlZ2FjeS10cnVuaworNzYyNDQgMzIzMzViYTNhYTBiYjE2MjYxYzAxNzVlZDZkMzA3YWZhYWFiOWVhOCBweTNrCis3NjI0NSAxOTZmMmFiOTc3MThjYmRiNmI5ZTFlYjM2NWFmMWZmZmViYTdjNjE0IGxlZ2FjeS10cnVuaworNzYyNDYgYjgxNDVkNmRiN2Q0M2Q3MDFkNTUxMDZmY2VmODRjZTA5ZGJiOGU3ZiByZWxlYXNlMjYtbWFpbnQKKzc2MjQ3IGM2MTNjNzI0ZTMxNTlhZjg2MTE5M2NmNDNjYmRjMTcyZDliOWU3ODggcHkzaworNzYyNDggOTBmMWY1NzMyMTg1OWQwYzY1ZmFkNDY1NzkwNjQyYTEzOTVjODRlMCByZWxlYXNlMzEtbWFpbnQKKzc2MjQ5IDVjOTA1MDQ4MTMwOWQ4YjY4MTM0ZWMyYWI0YWI3YmU1YWYyMDgyZGMgbGVnYWN5LXRydW5rCis3NjI1MSAyNzdiODlkNWIzMjA5NzQ4MDIwNTJmYTFkY2NkYWE3MGMxZTg2YWZmIHB5M2sKKzc2MjUzIGExZGY1MjRmY2JjNjIyYjA3OWNmOWE4ZjIxOWIzOGFjMmNiZWYwZTAgcHkzaworNzYyNTUgZjAwMTNhZGU5YzFhZDM2ZmMxMDRkMDk5YzM0ODU0OGIzZDdkNTM1YSBsZWdhY3ktdHJ1bmsKKzc2MjU2IGFhNjRhNTBhZDQ5MDVlNzkzY2Y1YjY3ZjU4YmRlZmI2MWYyMWExNzUgcHkzaworNzYyNTcgYTJjYjdkMjcyMWEzZTRlNGU4YTJkZDlkYTVhZDJhM2YwNjdlMWE5ZCByZWxlYXNlMjYtbWFpbnQKKzc2MjU4IDIwN2E0NjI2MTNmM2YzZTI3NTE2ODYxMGFlNGRjNjk3YjljN2NkOTkgcmVsZWFzZTMxLW1haW50Cis3NjI1OSAzZjJhNzZmYTI0OTZiMmExNWMyZGU2MTEzNGEyNjU5ZDY5MDk5YmZkIGxlZ2FjeS10cnVuaworNzYyNjAgYzFjMWYyOGFjYjA1MzI3OTE5OWJlM2I1OWI2M2QwMzBkZDNlMGY5MCBsZWdhY3ktdHJ1bmsKKzc2MjYxIGIyYWIwOGM5M2EwMjgyOWY2NGRiOGM0Y2Y1MmQ2ZTcwZTM2YjEzYzEgcHkzaworNzYyNjIgOTJmOTE3MDQzOTE5OTlmZDMwNzJkN2Q3MjE3ZDU5YTU2YjM0OGFlMyByZWxlYXNlMjYtbWFpbnQKKzc2MjYzIGJlYzU4OWI0NGFhZTdhNmMzMThkNjRmNjM5NWZlYmQ3OWViYjkxMzIgcmVsZWFzZTMxLW1haW50Cis3NjI2NCA1NTUwNDU1NDE3OTRlODNmZTU3NjBjNWM0NzhiYmExODI2NjM5MjdmIHB5M2sKKzc2MjY1IDNkYjFmYzNjZWZkMGY4NjNmN2JlNTU5NjZlOWQxM2QxYzM2YzNjM2MgbGVnYWN5LXRydW5rCis3NjI2NiA5NGYyNzA1ZGVmNWNmNjU2NjgzZWIzODZjMTAzNWVlYzU2OWU1OGMyIHB5M2sKKzc2MjY3IDdkNGFiOGNkMDAyMzk1NTQzMjg2Mjg0ZTA0NWY1Njc2MWJkNWQ0ZTcgcmVsZWFzZTI2LW1haW50Cis3NjI2OCA1NmU3MDFmODI0NWU1NjM2YTBmZmY5ZDlkZjlkYWM4ZTU0ZjdlNzJkIHB5M2sKKzc2MjY5IGZhNjAyNzBhYjc5YWU1YzhkZGRjODUyYTkzNDg2ZGU5ZjRkMTg4ZTQgcmVsZWFzZTI2LW1haW50Cis3NjI3MCAxMjU3YTU5N2M4ZmFkYTA1N2Q2MTQ2ZGIyNjkxYWVjY2NiZjE2MDkxIHB5M2sKKzc2MjcxIDNkOTAyZDY3YWY5Y2EwOTJiMmQ3NDNjN2FhZDM1YTU4MzFiNjZkNWIgcmVsZWFzZTMxLW1haW50Cis3NjI3MiA3OWVhNGIxZWYwNGYyN2RlNTdhNzU0OTViYjIxOTkzOWFhYjM0MTQ3IHB5M2sKKzc2MjczIDdkNmJhZDVjMmQ2NGUwNmIyZTI3ZWU4N2RkZWI2YzMwMDUwNDVlZTYgcmVsZWFzZTMxLW1haW50Cis3NjI3NiAxYTNkMzk2ZDFiNmZjYmY1NDJiZTU5Mjc0NGU0OGEzODljOGE4MWJlIGxlZ2FjeS10cnVuaworNzYyNzcgNTNlZThlY2MxOGE1MjJhODIyM2NhY2RmNTE1YjhjYWJlOWQyOGIzMiBsZWdhY3ktdHJ1bmsKKzc2Mjc4IGJiNGZkYTIyZTY1NzgwOGJlMDRmZjY1OTQxOGY0ZTJmZWI1NjdjZTUgcmVsZWFzZTI2LW1haW50Cis3NjI3OSBjNzc3ZTRiNDU1MDA0ZTI4MjZkMDI5ZTAyYmJjYmIwYjgzMDdlYThkIHB5M2sKKzc2MjgwIDg3Njg4ZmY2YWNjYzRkZDZjZTQ1MGQ3MmQ2MmQ1YmY2ZTExNDY2ZjcgcHkzaworNzYyODEgMDVhODljODY2M2NjNzJlODQ1ZmVjZDQ2OGRhY2JiOTEwZDJhOGY0OSByZWxlYXNlMzEtbWFpbnQKKzc2MjgyIDA1YzRlYjAwODljNWYxZTUxMmJjMDA0MWE4NDRiMWU1NTM1ZjYwZTkgbGVnYWN5LXRydW5rCis3NjI4MyAzYjBiMTliNTNkMzJiZjU1OTg1NTc2YjdlN2Y2ZjYyNGZmOTM4NWVlIHJlbGVhc2UyNi1tYWludAorNzYyODQgNTk1ZWMxZDkwYjJmZWZjNjQxMDBjODE3MzQ5ZmJiMzg4ZjBmYTE3NSBweTNrCis3NjI4NSBmYjdmYzgzMDI3MjFkMDA4ZDA3NWFkZDczNWZjMGFmYzhjMTMyNDNiIHJlbGVhc2UzMS1tYWludAorNzYyODYgNDA4ODFkYjMxNjg5MzM5MmRjMmU3ZWQxOGE0YTFjNTEwNTliMzJlOCBsZWdhY3ktdHJ1bmsKKzc2Mjg3IDZhN2ZjMmU4NTY1ZjczYTdmNDZjOTM2MmMzOGVmYTMzOWE3ODZmZGYgcmVsZWFzZTI2LW1haW50Cis3NjI4OCA1OTA0YWJiN2VlZjdiM2M4ZWNjOTJiNjlkNWIwYTIzM2VhOGFjNzcyIGxlZ2FjeS10cnVuaworNzYyODkgNDlhNWYxY2IxYjI1NDcwYWQxYTkyNGViYzI3NjFhZDVjYWQ1MTQyMCByZWxlYXNlMjYtbWFpbnQKKzc2MjkwIGY2NDBmNTVlODg3Mzg1Nzg5ZjQ5ZDJlMjc2ZGYwMWYzYjY3MjRhNmIgcHkzaworNzYyOTEgNWIwNWI1ZTlhOGU5Yjc0MmE4Y2M4ZGQ2ZmMwNWEyYTk2Y2RkNDk0MyByZWxlYXNlMzEtbWFpbnQKKzc2MjkyIDM3MGQyMThhMDFiYzMyZDlmYjc5NjQ5OTYyZDI3M2Y3YTZhOTE0MzQgcHkzaworNzYyOTMgMmFhNjJmY2UwYmY4NjUzNjFlYWE4ZWRmMWRjMTI5OWIxZjMxODM1YyBweTNrCis3NjI5NCBiMmEzOTBjNWRlNWY4OTMxZDFjOGUzZGE0ZjNkYzUwMzYyZjYzODljIHJlbGVhc2UzMS1tYWludAorNzYyOTUgNjJiOGRlOTgzYjI2NDJiODc5NDI5ZGVlOWUyNDhhMzIxNjZjZDYwZCBsZWdhY3ktdHJ1bmsKKzc2Mjk2IGMyMTdlMDMzMWQ0YjJlM2E4ZDU0ZjI2MzdmYWNkMGQxMDBmNjljOTkgcmVsZWFzZTI2LW1haW50Cis3NjI5NyBjNDU4ZjgxM2E3MDk0YmZmMDU4MGMzOGFiOWFlOWEwYmJiOGQ3MmQ2IHB5M2sKKzc2Mjk4IDNlYmY5MDdkYjAyOGUxMmJhN2MxNzNmZTIyN2JmOWFiOWU2MDYxMGQgcHkzaworNzYyOTkgOTUwNWFmZTg4MjNmOTRjMDc5MWI0ZTdhMjMwODZiYWFkMDU3NDEwOSByZWxlYXNlMzEtbWFpbnQKKzc2MzAwIDA2OWI2NmNmYWQzZmQ5ZjY1ZGU3MDg0MjdmZDIxODc2ZjVlYWMwY2QgbGVnYWN5LXRydW5rCis3NjMwMSA3ODUyMzFjMWM1NWE5MTkxNTY3YmI3MzM4NGQwYWZlZmE1OWE0MDJiIHB5M2sKKzc2MzAyIDJlY2M1OTM2YjFmMjMzM2Y4M2QzMzJkZWY4MzE3MjlkMjExZjM0MzAgcmVsZWFzZTI2LW1haW50Cis3NjMwMyBmMTM1ZmRiNzNkODg1NDM3YjdjYjU5ZDRjODU3NWMzZjg3YjM3OTFkIHJlbGVhc2UzMS1tYWludAorNzYzMDQgYzUwOTk4MThlMGQ0ZTU5MGNkZTM3YTY3ZmM5NTMyZDEyYWQ2ZTBlMSBweTNrCis3NjMwNSBhYmFmMzcyNGJlNzExNzg2ZTIxNjBiYWZhYzY4OGI0NTdlZGNhOWRkIHJlbGVhc2UzMS1tYWludAorNzYzMDYgYWZiMzM0OGIzNzE1NjIzMmYyMDE1OWI5Yjc0NmZlOGYwMTRiNzdlYyBsZWdhY3ktdHJ1bmsKKzc2MzA3IDE1MDYxMGNhZTgwNDkyOWRjOGQ1MzBkNDc5YzAyZGRiOTBlMDFkODMgcHkzaworNzYzMDggNTEwMjg3MDlhYmMzMjdjZjc3NTZmZmM0MGFmMGU0NDM2MDI1MDA0OSBsZWdhY3ktdHJ1bmsKKzc2MzA5IDgzNjY0MjI0MDQ2NGFiZDRhOGUwMWZiMGVjYzM2ZGYxNTQ0YjEwZjYgbGVnYWN5LXRydW5rCis3NjMxMCAyM2MxMzhjNGVjMDVlYzEyMmY4YTUxY2IwYTYyNjU1ZTY2YmI2ZDZjIHB5M2sKKzc2MzExIDE1NGZiMjcwYTgyMGYzY2QwMDI5ZWJjNDFhNmE2NDNhNjUxOGI5ZjEgcmVsZWFzZTMxLW1haW50Cis3NjMxMiBlYjFjMDNhMzdhMDI5NWQ1YWE2ZGUzZTE5NmY0NWJhYTUwMjVkYWU2IGxlZ2FjeS10cnVuaworNzYzMTMgYzA4NDIzZDcwYjlmMjFhNzExNjM5NzNiMDlkNTQ1MGI5MWFlN2EzYiByZWxlYXNlMjYtbWFpbnQKKzc2MzE0IGRmNTM2NGZjMGU1YzlkNDkwMGI3NjBlN2E0YjBjZWNkYzBjNWNkODEgcHkzaworNzYzMTUgMjViNjQwZDIzNGY5NTU1YzNiZDE1MWUyOGU0OTdiNGI4MmFhMGRhNiByZWxlYXNlMzEtbWFpbnQKKzc2MzE2IDI1MGUxZjQ3NTU2OGFhMmU2Y2UyNjYxMjRhZjhhYTJlNTE2NGU1ZmUgdGFyZWtfc3lzY29uZmlnCis3NjMxNyA2NjRmNjMwMTk0MGY4MzJlNjNmNWFmNjIzYjEzNzA2Njc0NWQ2NTk4IHRhcmVrX3N5c2NvbmZpZworNzYzMTggNjE1NDUyOTBjYjUxNDQ5NjU3NmIyZjU1ZjE3ODI0MDFmYzM3YmEyYSBweTNrCis3NjMxOSBlYjIzNWViNDVkMzI5YmQzNjM0MGRjMmM0Nzc0NTRhNmYzZDViNjk1IHB5M2sKKzc2MzIwIGYxMTEyYzI3MDBiMWU2NTExMmE5ZmM1YjU4OTI5ZjczYjIzOWJjOTUgcmVsZWFzZTMxLW1haW50Cis3NjMyMSA0MDFkMjIzNzA1Yjc3ODFmYzg5ZDgxNmYzNzc3MmQxMjc0N2QxMWJkIGxlZ2FjeS10cnVuaworNzYzMjIgMWUwM2ZlNWExMWI0MmYyZDBjNWI2ODdhODk2ZTgzNDU2NTRjZTlmYSBsZWdhY3ktdHJ1bmsKKzc2MzIzIDk2NzBmZTZlNmQxNGRjYWFhM2YwMDk3NDU4MmU4MjhmMjk3MzkzNDggcmVsZWFzZTI2LW1haW50Cis3NjMyNCBmZDQxN2NkNjQzNDE4NWFiNjBkNzA5NTQ5MTQzOWEwZGQyNjNjYTJlIHB5M2sKKzc2MzI1IGY2MjkzMGQwZmE3MmQyNTU0MDQ1ZDc1NmE4MzY3MjgwZjZmZDk3MWUgcmVsZWFzZTMxLW1haW50Cis3NjMyNiBjODQ3YzY4NGMyYzVlYTA5MmI2NjAyYzA2ZjU2YjdkYjFkYmJhZDQzIGxlZ2FjeS10cnVuaworNzYzMjcgZDNiM2E4YTgwOTBmYTE5ZGFiODUzNTVmNWNmNTdjZWNjMTEyYWIxYyByZWxlYXNlMjYtbWFpbnQKKzc2MzI4IGFjNzY4YzhlMTNhY2E4OGFkNmI1NzdlOGEyZjA4ZmQxMTQ2NzRmM2YgcHkzaworNzYzMjkgMmQzY2RhNmI4Yzk1MjIxM2YzN2YwY2Y5YTU5ODdkNzljN2Q3MDc4MyByZWxlYXNlMzEtbWFpbnQKKzc2MzMwIGY2ODBjMWZiNzgwNGY4MzIyNWZkZDBiYjY1NzQyYWJmMmVhOWNkNGYgbGVnYWN5LXRydW5rCis3NjMzMSBkMTI3Njc5ZWNmYWE2ZGU0OTU0NThjZjNlODYzMzhkMmFhZDFkMTlmIHJlbGVhc2UyNi1tYWludAorNzYzMzIgOWQ5MzQyY2JmOTM1M2U0ZTU5MjE5NjNiNGZlMGNlNmNiODAwNDAwMiBweTNrCis3NjMzMyBjZWIzYjM2ZGQ2ODFlY2MwODI0ZWI2ODAxNzNkYjA1MzhjN2M1OGZkIGxlZ2FjeS10cnVuaworNzYzMzQgYzVhMTIyY2IxMjg4YTZjNDdhOTY2ZmUxZGFkZjM5YTNkY2M4NWE0MSByZWxlYXNlMjYtbWFpbnQKKzc2MzM1IDQzOTFhMjJhYjFmMDRhOTM4NjhjZWM1ZDcyNmMxMGY1OGFlZjU0M2YgcHkzaworNzYzMzcgNGFhNGMxOWRmYWVkZWNmN2Q0MWIzYzRkMDBlOWNhNjUxZDA4NjdjNyBsZWdhY3ktdHJ1bmsKKzc2MzM4IGFkZjkyNzRkM2VkYzQxM2ZjMjZkZjA3ZDNlZjI4YTUzNmZmMzQ5ZWEgcHkzaworNzYzNDEgZjkzYjJhNjhkZmI0MjA3NGZmNmQzNzllNmY2MzhkNDhhMWE4MDFmYyBweTNrCis3NjM1MCAzNDliOTdmZjRjMmI3ODMyNGZhZjNkNDczOGU2ZWFmZmIzN2UwOTY2IGxlZ2FjeS10cnVuaworNzYzNTEgNzE4M2Q2YjkzMGJhOTEyNGFjZjhiNDEwY2UxMGQyZDFjOGM0ZTBiMCBweTNrCis3NjM1MyAyNjI4MjE2YmM2NmQ0NzZmNzc2OTNkODJjNzIxNDYwMGYyMGE5ODgyIHJlbGVhc2UyNi1tYWludAorNzYzNTggYTc3YTJkN2NlZDdkZDdjMmUzY2VjODAwNzdlZWExMDI4NmQxYjkwZiBsZWdhY3ktdHJ1bmsKKzc2MzU5IDE4NGViOTBiMmUzZDc1ZmI5MWM0MGY5MjE0ZWU2NzAzNzI5YTE5ZjggcmVsZWFzZTI2LW1haW50Cis3NjM2MCBkNmMyMTA2Nzc5YjkwY2UyY2IwOTQ2NzZkMmIxMjVjOTJjNzFjZTRiIHB5M2sKKzc2MzYxIDNjNjIwMzFiMjUwNmRlY2Q1N2U3NWMzNTFlY2U5NzIyNjViMDkxMjMgcmVsZWFzZTMxLW1haW50Cis3NjM2MiAzZDJiMDZhYTdiMzZmYTBjNjRiNjNjNzRjM2Q5ZDAwMDYyM2NiMzI4IGxlZ2FjeS10cnVuaworNzYzNjMgZjAxNDhkOTJkYjdmZjUwNjMzMzczYzM4MGYwYjAxNmI2YTFmODdiMSByZWxlYXNlMjYtbWFpbnQKKzc2MzY0IGVkYTU2ZDA3NzViYWNkN2RiMmZjNjYxOTU5OTI3NmFjNmFjMDYwMmYgcHkzaworNzYzNjUgMjRhYjkxZmIyNWFiZjA3ZWRhYWE0MzUxZDk5ZDUwMGY0N2JkNjRlMiByZWxlYXNlMzEtbWFpbnQKKzc2MzY2IDNkMThjZDFkMDRhNDQ2OGYxODFmMjA4NzZmNGI3NTQ2ODZhYjMwZmYgbGVnYWN5LXRydW5rCis3NjM2NyA0ZWQxMzJkNmJiNzAwMTIzOGYyYzEzMDcxNTkyYmFjMzcxMDA3ZTJiIGxlZ2FjeS10cnVuaworNzYzNjggNmUzY2MzYWRmMWRjNDQwYTNiMmRjMThiMjYzNjNiYWM3NTMwYjg0MSBweTNrCis3NjM2OSBhN2Y2MTk0Yjc4Y2M5MmQyODA4OGM3YTRjMTliM2IwZTc2Y2ExNzBjIHB5M2sKKzc2MzcwIGVkNTRhMWE5MTRiNGM2NjA1MzAwZTJiZTBhMjZjNTVkZjVhZjdkZjEgcmVsZWFzZTI2LW1haW50Cis3NjM3MSA1ZWYzNGIyOTc2NmNmMWEyNzYzMTdmODljYmQyNGQyMmJhN2JkZWVmIHJlbGVhc2UyNi1tYWludAorNzYzNzIgMmM1YzY2ODdmMWM4ZWI1NDBmMGYwYTc5NmUzY2ZjZGYwMGYxYWE3ZiByZWxlYXNlMzAtbWFpbnQKKzc2MzczIDkyZTA2Y2RiZWFiOWI2ODQyNWVjMmY5YzUyMjU3N2E2MDRlZDc0ZDEgbGVnYWN5LXRydW5rCis3NjM3NCA1MGQzNTUzMjRjNTA2MzI3ZGRhZGM3MzYyZWMwMTFlZmNjMjBlYzA3IHJlbGVhc2UyNi1tYWludAorNzYzNzUgYjk2Zjc4Y2U4MzgzMzkzYmMxZGJmNDQxMGM0YWQ0YmU4ZjA3ODBlMSBweTNrCis3NjM3NiAzMzNkZGEzMWJkNzMzMWVlNjExN2MyMTkyNGY3YWNmNmI3ZTBkZTMxIGxlZ2FjeS10cnVuaworNzYzNzcgNDFkMjljMTdmZDQwNWQ2YWUxMzJkMGJlM2I5ZTJiYjQxOTRmYjMyZCBsZWdhY3ktdHJ1bmsKKzc2Mzc4IDQ2MzNlZDIzNzk3MGQ3NDZmODRiOTFmYzAwZGUyNTY0N2E5ZDM2NmUgcmVsZWFzZTI2LW1haW50Cis3NjM3OSAxZTUzNGQ3OTUwZjgwZTg5MzM3MTY4N2VhNWViYWFjMDFjMTdiYjMxIGxlZ2FjeS10cnVuaworNzYzODAgOWVkMDJkZjcyYmQ2MmYzZTcxMmZkZWI0MzcwZjdiZWVkZTM2NDE2NiBsZWdhY3ktdHJ1bmsKKzc2MzgxIGQ4YmNjOWRlMTYwNTRjNzllODQwZjNmNjhlYjdhYWIzNjcxYjU4MGEgbGVnYWN5LXRydW5rCis3NjM4MiAwYmNjMTJjNDYwMTVhNDg4ODU1N2NkYWM5ZTFkMjBlMjQ1ZjdjNGFhIGxlZ2FjeS10cnVuaworNzYzODMgMDVhZjA0OTAwYjZiOTFlMmVkMDBkYzQzNTlmNTBmYWNkYTAzN2E5ZCBweTNrCis3NjM4NCA3MTVjMGJhYThiMmM4Yzc4YWNkNWFkYmIyN2YzMjUzYzE3NGM4YzRlIHJlbGVhc2UyNi1tYWludAorNzYzODUgNWU1Yzk3YjljODI3OWY2MmM4MzgwODM2MmI3ZGQzMTFkOTU0ZTIyYyBweTNrCis3NjM4NiBhMzQ1YmI1MGVjMGY4OGM1ZGE4ZDMxYjAxMjgyOTQ3OGZjOWZmMjk5IHJlbGVhc2UyNi1tYWludAorNzYzODcgZDgwMTlkMWQ1NmYzMzRmNTJlOTZiNzgxYmJjNGFiYzQ3MjE0YjE5NyByZWxlYXNlMzEtbWFpbnQKKzc2Mzg4IGVkNTkwNzc4MzhhZGU5OTI3YWY2ZDQ5MjA3NTNjMTA2ZDkwYmYwODUgcmVsZWFzZTMxLW1haW50Cis3NjM4OSBiMzFhMzNjMzZmMDg3NGNhMTcxNjhhMTRlYTY3ZDVlNzRhYTZkMDRhIHJlbGVhc2UzMS1tYWludAorNzYzOTAgYjhhMGIzMzNlNDY5ZTFhODk4ZjMxNDNhMDc4ZTE3MWE4OTA3ZmYzMSBweTNrCis3NjM5MSA4ZDA2ZTQ1MGJjOThjYjZhNGY3M2JhOWNmYWYyZGE5NzhjNmY3M2MzIHB5M2sKKzc2MzkyIGYxNTI2NjcyMDBhZTkwNDI0Y2YyZmRjYjVkYTBiODY2MDRjOGM1NTEgbGVnYWN5LXRydW5rCis3NjM5MyBhNzkwZjg0ZmJhZmEyODE4ZWU2ZDk4YTE2YTFjNTA2NTBiNmU4MmMwIHJlbGVhc2UzMS1tYWludAorNzYzOTQgZjczZDEzN2NmYmQwNDZmN2E0YWRhNjEwZWM1ODUyMjRiNzQ5M2JiNyByZWxlYXNlMjYtbWFpbnQKKzc2Mzk1IDg3OTNmZjhmNDgyNjFkOTE0NmQ0ODgwY2M0ZjVlZDc2MWQxYmYyMzMgbGVnYWN5LXRydW5rCis3NjM5NiAxNjZmN2EzYjczZmM2MGM2MzZkNjYyYWFiYTAyZWY5ZjNkYTc0YjNhIHB5M2sKKzc2Mzk3IDQyYWFlZGFlZmJjYjY1ZTBiOTU2OWU3NzVmNmM1MmJkYzBmNjBlMDUgcmVsZWFzZTMxLW1haW50Cis3NjM5OCBkNTc3OWUxNTlkZGIxYThkYTIxYzdjYjc2YzdhNThmZmRkNmMwYmJjIHJlbGVhc2UyNi1tYWludAorNzYzOTkgYzBkZmE5YmQ1YzdmODIzM2I4MjY1ZDkyZTQ4ZDM0YjFjZjE2Y2NhZSBsZWdhY3ktdHJ1bmsKKzc2NDAwIDRiNmI0OTQzZDY5YTQwYjBiNDlhOTJjM2VkYjNkYWUxNDExNzNlMmEgcmVsZWFzZTI2LW1haW50Cis3NjQwMSBmNTdmMGM2YWFlOWQ4MmQ4M2JjY2ZkOTE0YzU0MDY2M2Q0MWZhNDE3IHB5M2sKKzc2NDAyIGFiNWI3ZTBhOTEzMWFkYmMzZmFhZmZiOGRiN2Q4OGIwMDI1ZTA1YWYgcmVsZWFzZTMxLW1haW50Cis3NjQwMyBjMDc5ZmNiZmM3NjE3YjZiOTgxZWM2Y2ZlZGZmNDllOGNlNmViZTMzIGxlZ2FjeS10cnVuaworNzY0MDQgNWI1NDMyNWVmNmY1NzYzMTM4YWNlZGE5NTExMmYxYjMyZmQ0MmUwNiByZWxlYXNlMjYtbWFpbnQKKzc2NDA1IDM5OTg5YzY2ZGIxNzhhMjE4YjU5MTNmODU3MzM4ZWMyNzlmZTI5NzUgcHkzaworNzY0MDYgYTkyZWYxMzZkOWQwY2ZmOTE2YjgzYWE1MWNkZTI1OTM4NDI4YmM3NyByZWxlYXNlMzEtbWFpbnQKKzc2NDA3IDRmYWU4MTY4YzQzYjEzMTg4ZTMwYzQxMTA4ZDA1MzdiMjg0YTdlYmUgbGVnYWN5LXRydW5rCis3NjQwOCBiOTZhZTNkOGFkZmQxMDhhYjM3ZThiMDIxMjcwODNkODYwZTFiOTM1IHJlbGVhc2UyNi1tYWludAorNzY0MDkgMmRkNzk0MmRjZmQ1MzkwYTY2ZjkzMTU0OGFmOGI3MDM1NWIyNGMzYSBweTNrCis3NjQxMCAyNGQxZTA2YzYyOWMxYTg2MGY5ZGM1ZjVlMjIzYjE4YjFkZjhmODMzIHJlbGVhc2UzMS1tYWludAorNzY0MTEgNjdjMGY5MmNlNTVjNzdiYTJlNmNmN2VhZGE0NGZhYjVmNThiZGZlYiBsZWdhY3ktdHJ1bmsKKzc2NDEyIGE0ZDlhM2RiYzUzM2ZiMmVmMmUxZmQ3MGM1YTJlNjQzNmYzMjRhMDggcmVsZWFzZTI2LW1haW50Cis3NjQxMyA5OGFiM2FkYjA0NWNlMjZlYTZkZjY5ZDQxNmY5NWIwNDQwMDBjODkzIHB5M2sKKzc2NDE0IDIyNTRjN2RhOTc3ODgwNDYzMzBlZDkxZDQ0YzkwZGFlZTg3YjNmOTcgcHkzaworNzY0MTUgODIzODA4MTZlN2RiM2IyNjQ3MWMwNjgwNjUxYmFhOWM4Mzk4NmQ1NCByZWxlYXNlMzEtbWFpbnQKKzc2NDE2IGVkMzBiY2ZmYTE0NjcyZjBlMzM0OWZjMDc3Y2U1OWRlNzdiMDk2MGEgbGVnYWN5LXRydW5rCis3NjQxNyA2YWE1MjhjNTAxMjg0YzVmN2MyZDE1YjJhMzk2NDIxMjE3YjczNDdlIGxlZ2FjeS10cnVuaworNzY0MTggNDc1YmY4YjU4NGE5MjNiMDQ4ZjIzODcyZjNjZTlkYmI2ZGNmMjE4NCBweTNrCis3NjQxOSBmOWYzOTUwYjVlYzc1NjUyMDcxZTUxNzk5MjM0ODBiYzFkMWM5MTAwIHJlbGVhc2UyNi1tYWludAorNzY0MjAgMWMzNTI3NTBlYmYyM2Y5NTE2Njg2MzZmODE1Mzc4ZGUzODNkYTQ2NyBsZWdhY3ktdHJ1bmsKKzc2NDIxIGYyZGE0ODhiNGI3YjM5MzU2ZTM0MDY3YmQyZWZkYjU0NzU3ZTJhNDcgcHkzaworNzY0MjIgY2Q1YjE1YzI5YTM5NmVlOTljZDBiYmY4NDRiYTM1MzRiMzNmZWI4NSByZWxlYXNlMjYtbWFpbnQKKzc2NDIzIDZlMzcwMDEzZjNhMGE1OWE3OTk0OGI2MzNiMmVlNWJmMjhjYWUzYjUgbGVnYWN5LXRydW5rCis3NjQyNCAxMzcxMTVlMzk1ZDhkZGZiNTdlZmQ0MjA0YWY0ZTExNmFkYmQ2ZjgwIGxlZ2FjeS10cnVuaworNzY0MjUgMThhZjBjZTBhNThiZDhiNmJiYzcyYTI4MGExY2RjYjk4OWVhMGYwYyBweTNrCis3NjQyNiBlYWViZTI0NjAzNzdjNTViYWMyMDc4OTVhZTU5YmQyNmFhMDA1NjY0IHJlbGVhc2UyNi1tYWludAorNzY0MjcgZmQ2ZTJhYmFlMTRlNDJmNTJmZjY4NWZiMmQ2NTA0NDM1YzEyNGYzMSByZWxlYXNlMzEtbWFpbnQKKzc2NDI4IGUyYjJjZWVmYTgyYWNmZGI1YTk4Yjk0MGEzZDA0MDAzMDljYmFmZWIgbGVnYWN5LXRydW5rCis3NjQyOSBlODNlM2RiNjJmYzc4ZDRlM2ZkYWE4ZjM2NWRlN2MzMzI3YzRkNzJlIGxlZ2FjeS10cnVuaworNzY0MzAgZTNjOTk0YzI5YTIyOTI3YTI5ODY5Y2I0MDViYWE2NWMwMmM1YTFmYiBsZWdhY3ktdHJ1bmsKKzc2NDMxIGI4MWQ2MDExMGY4NmY3NzgxMjI5ZTVkMDNiZDAxMDIzMWEwNmJlMjYgbGVnYWN5LXRydW5rCis3NjQzMiAyZTNlYzNiYjRiZTdjYmZkMmE2ZGViZTEwMjZhZjJmYTUzMjczNTZlIGxlZ2FjeS10cnVuaworNzY0MzMgMWQ5MjNlYmI0NzYwMGY4YTMxYzY4OGIxZWZiNjNmZGVhM2MyZmUzZSBsZWdhY3ktdHJ1bmsKKzc2NDM0IDdhNWNiNGRlY2Y2ZjI4ZThhNWYwOWQ5MTRhY2JlMWQyODdhNWNjYTggbGVnYWN5LXRydW5rCis3NjQzNSBiOGJkNTM2MDg0MWJhYTVkZTViOWZjMTE4ZGNkMzIzMGM1ZjhlNjY1IHB5M2sKKzc2NDM2IDVhZWVlZTBlYWU1ZmNmNTM2YmUzM2Q4NjcwZmFiMjQ2Yzk4MjgxNjUgcmVsZWFzZTI2LW1haW50Cis3NjQzNyA2MzliYTAzNmMyMDk0OGM0ODhlYjdmOTQzN2EyM2Y2YzdmMTJiY2M0IHJlbGVhc2UzMS1tYWludAorNzY0MzggYWY4OGIxZDI1YmYyOGViYzk1NTFlOTUxODAxOWM2YWUxMDBkZTQ2MCBsZWdhY3ktdHJ1bmsKKzc2NDM5IDUxM2M0YjE1NzVmMjY3MDJiYzMxZmVmZTcwNDFmZjQ1YWQ5MTg2MTEgcHkzaworNzY0NDAgNGM4NzA4YTc5MWU2MDMyZTAyOGNkOTU0YjQ0MDQ5NDdmNjg5NmM0MSBweTNrCis3NjQ0MSA0ZDU1NmMyNzkyNmE2MWM3MzI3NjdhZWYyMDIzMmIyZTI5YWYxNzAzIHJlbGVhc2UzMS1tYWludAorNzY0NDIgZGNiY2M4YzE0MTc5MzUwMDc3NzU0ZDczMmUwNmNlZDRjMTY0MmY1YSB0YXJla19zeXNjb25maWcKKzc2NDQzIDRlMjcwZWFiNDUyZGYzMDgxNDBhOWI1ZDc2YzA1NjkzZjUwMTY3NGEgbGVnYWN5LXRydW5rCis3NjQ0NCBkNmY4NTUyZmNlNzlmYWZkNGFhMWUzYzg2ZTg1NmNjZDAyYjMwMWYxIHB5M2sKKzc2NDQ1IGJjNzY0M2E3YTVlN2IyODdmZjNjOTg3NjM3MmNiNmRiODA2ZDI4YjYgcmVsZWFzZTI2LW1haW50Cis3NjQ0NiAwZWViM2EzZTc5ZWY4ODhmNzJhOGJhN2EzMTBjODk3ZDdlMmRlZjExIHJlbGVhc2UzMS1tYWludAorNzY0NDggZWM1MmM0MTliODI0ZTFjNWUwOGYzYTliZDQ3ODJjZTA2OTM5ZWQyYiBweTNrCis3NjQ0OSAzNzNkNDJmMjZlOTY2YTdkYTgwNDkxOTZlMzRkMzVhMzYyODY4YzkxIHJlbGVhc2UzMS1tYWludAorNzY0NTIgZGUwNzg4MGE1M2ZmYTc5MDRiMzNlMzNkYTA2NWYzNWVmMjEwMWIyNyBsZWdhY3ktdHJ1bmsKKzc2NDUzIGQ2Y2UxOGFkODQ2NzE2OWUxODJlYTdlMjE1ZDkwOWI0MGU4ZjM2MmQgcHkzaworNzY0NTQgNTZmMTkwODFkN2JjZTk3ZWNkMmFjMGE1ZjgyZTMxNzRmZWY0OTU3ZSByZWxlYXNlMjYtbWFpbnQKKzc2NDU1IGUxZDczMjUyN2M3ZTM0NDU3Yjc5ZGYwNzA2MDRjYjhjYTc5ZTRlM2EgcmVsZWFzZTMxLW1haW50Cis3NjQ1NiAyNDhjNGZhNWZlMGM5ODc5NWE4MzYxY2JiMzg1M2ZhZjJjZGM4ZjQ0IGxlZ2FjeS10cnVuaworNzY0NTcgMDg2OWUxYWI1NzJlMzdjMzM1NDlhMmJkNzcyMTNmNjQ3YmI0MzNmOCByZWxlYXNlMjYtbWFpbnQKKzc2NDU4IGM0OGZkNjNjMmY2MWEwOGIwMjJkMjdhMzNmZDEyODQwNjFjNTBmYWYgcHkzaworNzY0NTkgMDk4NDA5OWE5NDMxM2IyZWZlYmQ1MTBhYmE1MTBhMTZiNTA2NDI3NiByZWxlYXNlMzEtbWFpbnQKKzc2NDYwIDcwNDIxNGI5Y2I3NmM3NzNkMTA5NWU3NTAxYzk2ZjU2NjE5NzQ4ZDUgbGVnYWN5LXRydW5rCis3NjQ2MSAyNjM5ZWE3YjkyZWQwNGM2OTZlNGQ3NTBkMjEzMWZlOWI5MWRhZWZlIHJlbGVhc2UyNi1tYWludAorNzY0NjIgYWRhNWY2ZWVlMWNiMTIxZDQzNzJiYTJkMzliZGNiN2M4YjRhMWU2MyBweTNrCis3NjQ2MyBjMmVjY2E1ZmY2NTkzY2RiMDliNDBjNDE1MjQ1OTI3YjE0ZTk1MjVmIHJlbGVhc2UzMS1tYWludAorNzY0NjQgZjU1NGRmZmY3NDUwNTc2NTZmNWNhNzMyMGQ4N2Y2ZGUzNmI1MjU1YiBsZWdhY3ktdHJ1bmsKKzc2NDY1IDgwOGY5YzBkNGFjNDAwY2JmNWIyMDM5YzAzN2IxY2E0Y2E0ZjVmY2QgbGVnYWN5LXRydW5rCis3NjQ2NiA1Y2Q5NWU1Nzc3MmM4MGM3ZmJiNzVlYWU1YmVmNzhiYzc0NjE4ZGMwIHJlbGVhc2UyNi1tYWludAorNzY0NjcgYzhkNjlhMDZiMzNiYmY2MTY0OWE5MGQzNjc3MjFiNWNlNzQ2MmNmZCBweTNrCis3NjQ2OCA4MThjZDQwZGY4NjVmMjY3ODMxMzBkNTAzYTJiNjUwNTUyMTU3Njc5IHJlbGVhc2UyNi1tYWludAorNzY0NjkgYWE5NjI3YzQxMjIyY2FhMmE0YTJmYjZjMWQwODgwNzIxZTYzMzM3ZiBweTNrCis3NjQ3MCAzYTJiMTQ5YWU2NmU4MTVmMDgzZjIzNmMwMzJjYjk5NDM1MDE5MDg5IHJlbGVhc2UzMS1tYWludAorNzY0NzEgZjAxN2EzNDg2NGUyYmE1MzcwMjk4NjlkN2E4OWY0N2Q2YjRhYTlhOCBsZWdhY3ktdHJ1bmsKKzc2NDcyIGE3ZWIxYWU0ZTkxOTA0YmJlNDlmYzNjNGVhZjRlMWUwZmY1NTI2ZDUgbGVnYWN5LXRydW5rCis3NjQ3MyAzMDE3ZDgyZjA3NWFjZGIxMTRhNmM5ZWIwZTUxNjM4MmFlMjQ1NTY3IHJlbGVhc2UyNi1tYWludAorNzY0NzQgMDhhMGM5NTg4ZjEzZjBmNTg1Yzc5ZDExZjIwNjZlMTY1YmE0MmY5ZiBweTNrCis3NjQ4MyBiOWI2ODNlZWRlZTExNjc5MGMwMWQ3NWI1NTYxYmZmMDEwMmU4MGM2IGxlZ2FjeS10cnVuaworNzY0ODQgNTExNmVmNzc5YTgwMWYxY2RiMTJhYjJlNzhlZjZlMjc0OTk1MGUxMyByZWxlYXNlMjYtbWFpbnQKKzc2NDg1IDM1N2FkOTBiODExNGNmNDBmNzJiYzg4OGNlZWM3YTY0ZmE4NjdjZWIgcHkzaworNzY0ODYgYjdmYmVmMDc3ZWFlMTNjYjUwYmZhZTg4YWJjOTQ2ZmNhZjk5NDdmNCByZWxlYXNlMzEtbWFpbnQKKzc2NDg3IDM5NDhiNGM3MjlkN2FlOTRhZDc1ZjY0MWZjNDNmYzc0YjY2OWViZTAgbGVnYWN5LXRydW5rCis3NjQ4OCA1MTZjNjIyYTRmOWUxMzgyYzI2ZDM3NjdiMTcwOWY4ZWYzODMwMWUxIHB5M2sKKzc2NDg5IDMzN2ViYjgyOWI4Y2EyZTM3NzIxNDFhODRhM2U3ODRjOTI1ZjNiNjggbGVnYWN5LXRydW5rCis3NjQ5MCA5ZGNhMzg0NzQ4NTQ5Yzg2ZDg0NmQxZTVlZDMzMGE2MDlhZTU2ZWU4IHJlbGVhc2UyNi1tYWludAorNzY0OTEgNTM1ZTA4Y2U0M2Y1NzljYzZlOTY0ZTdiZWU4MGJhNGZmNzFkNTRkNyBweTNrCis3NjQ5MiA1OGIxMTkxZTQ1MWZhMDAzZmUzMzlhZTM5NDU1MjNjMGVkYWJlZDI2IHJlbGVhc2UzMS1tYWludAorNzY0OTMgNmYwNDhiMWU1MjgwNjIzMjNmOWU1MWI5MGY2OGY2NDk3OTI3YTBiOCByZWxlYXNlMzEtbWFpbnQKKzc2NDk0IDc2NTkwOWZjN2RlYzk2ZTNlZTRlMTE4Mzk5ODE2NjA1Zjc4NTdhOTggcmVsZWFzZTMxLW1haW50Cis3NjQ5NSBmYmVmNWZjY2IwYzg4ZjljZmJkMDc1NzY1MTA1ZTI0MzU5MzVjMDJiIGxlZ2FjeS10cnVuaworNzY0OTYgODNkOTRlNzJmMDFjZmZhMGIyNjFkZDU1Y2Y5YWE0NDRlZDhmYTgxYSByZWxlYXNlMjYtbWFpbnQKKzc2NDk3IGZiNzk5NGIyOTEwMTczYTRjN2FlMTQyMTFiMDdiMDlhZGNhYTliZjIgcHkzaworNzY0OTggMTdlNTkwYmU0YzVhYTJhNjY4ZWU0OTFhMzdhYjE5ODRmNGFlY2NlNCBsZWdhY3ktdHJ1bmsKKzc2NDk5IGNiM2VhYzQyMWNmOTZlZjhlMTgzNzRhMWUyMmYyMThjYTJhMjI5ZmMgbGVnYWN5LXRydW5rCis3NjUwMCBiNTFmZGE3NTRmNWE1ZTMxNzA0YjNmZTMxM2M5YWZhNzdmODIyZmRjIHJlbGVhc2UyNi1tYWludAorNzY1MDEgOWU3OWE2YWZhM2Y1MzEwMGI2YWE0MWE4YWQ2ODFlM2ZmMDFjYzM2OSBweTNrCis3NjUwMiAyY2QxZmIxMDQyMzM0ODFhMTBlNTcwZjc2OTdjYWI4NDM4OTg3OWY0IGxlZ2FjeS10cnVuaworNzY1MDMgOTAyODI4MDRjZDUwMTY3ZWEwYzI4YjQ5YmZiYzkxNDA2OTNkOGM5OSBweTNrCis3NjUwNCBhZDUxNjllMDVkYzNiMzhhNjk4ZmQ2Mzk0ZWFjYWZjMDE1MDc3NGZjIHJlbGVhc2UyNi1tYWludAorNzY1MDUgMDE4YjIwYjAzOWE4NTRiNWExNmVjZjgwZmI3MzVjN2YxODlmYmMxYiByZWxlYXNlMzEtbWFpbnQKKzc2NTA3IDVlYTIyNmQzMmY2ZDc3ZTU4MTk3ZTU2YjNlM2E1ZDZjNmQ5OGM5ZGUgbGVnYWN5LXRydW5rCis3NjUwOCAxZDE1N2UyY2U5NDkzZjQ4MzQ4NmZhZDI5MTMxZTY3ODk0OGYwY2JhIGxlZ2FjeS10cnVuaworNzY1MDkgODVjZDkzNTI1NTY4N2QzYjgwM2Y0OTg2NTg0NDM0NTM2MmM1NzIzNCBsZWdhY3ktdHJ1bmsKKzc2NTEzIGM3NzMyZjg4OWM0NTQ4YWU3MGNmOWJkMTg4ZTMzYWJiOGZkZDNiNzggcHkzaworNzY1MTQgMDIyY2QwZjNjNTU4ZWRkZTE2OWY2YmE1NjJjN2QxNDE1MzU2Y2I0MyBweTNrCis3NjUxNSAwZGI2NzE1M2QyNWYxNGMzZTk3YzdkOGJmMTA5NmI4OTFiZTA2ODk3IHB5M2sKKzc2NTE2IDEzODZkMGU5ZTBmYzdhNGQ2MTdkODBiMGJkYWIxYjQwZGU2M2Q0NzYgcHkzaworNzY1MTcgNDFiZDMxMjM4NjRkODlkMzUxMWJiYjc3NWU1ZmU0MmZmYTNlZWU2ZSBsZWdhY3ktdHJ1bmsKKzc2NTE4IGU1YmMzODJjY2Y3NWIxZWQ4YTMwY2E3ZmI1ZDI0ODhkMjMxNjMzNjEgcHkzaworNzY1MTkgNTA4NjU0Y2VlMTM3YThlZDE1ODE1YWU3MzBlZGY4MGExOGNhMDQxMCByZWxlYXNlMzEtbWFpbnQKKzc2NTIwIGU2MTMzZDE1NGY5ODE5YzY0OWQ4ZWFkYmNiZmU0MmU0OGNmMjFlMDUgcHkzaworNzY1MjEgZmVhNTMyNThhYjdlYmVlZDEwOGRjOTcxZWE5MzYyYWFlNGZmYWVlOCByZWxlYXNlMjYtbWFpbnQKKzc2NTIyIGRmODZjNDIwZTk3YTBjYzE1N2M2ODdlOGYzYjgyYWMyYzA1ZWQ3ZGUgbGVnYWN5LXRydW5rCis3NjUyMyA4NWUxZTEzYjQ5OGE3MmMwMzJkODBkOTJmNmE5ZmU1NGVjNjhmOGJhIHJlbGVhc2UzMS1tYWludAorNzY1MjQgMmQzODhkMWE4M2Y0MmUyNDQ2YWVmOGU4Y2MxZmU0ZjI0NDY5YWQ5NyBweTNrCis3NjUyNSBhMWQxNjZhYjE4YzQ0YmE2MzYzYWNjYjllZjJmZmE0ZjA0NGYzOGMwIHB5M2sKKzc2NTI5IGE2OTgxZjRhNzRhMWQ4NjZjMDliNTllZTdjYTA2MDNjOTRlYzBhZmYgbGVnYWN5LXRydW5rCis3NjUzMCBhODU0NzFjNDc1MTQ4ZGYwNjc3YTkxMjE5ZjE2NmM4YjhkMjE1ZDc3IHB5M2sKKzc2NTMxIDYxZTZjZTcxODUwMDg5YzBkNDgyOTY4ZDFhYTE3YjI4ODI0YTIxMjMgbGVnYWN5LXRydW5rCis3NjUzMiAzZjcxZWJlOTFmOTA1NTA1YzllNTBlNjU2YjY5MDU4ODVmMDhhM2M2IHB5M2sKKzc2NTM0IGM1NDU4YmEzODlkNzY1OWY4ZTkxMjE0NWY4YzQ0Y2UwN2Y1NjU1Y2EgbGVnYWN5LXRydW5rCis3NjUzNSA3Yjc0YWJiODAzNTY4ZGJlN2Y1MzA4ZjkzM2FiMmM5NDM5ZDVkNWE3IGxlZ2FjeS10cnVuaworNzY1MzYgNzQyMzBlNWFiMzczOTA1NTljOWE0MmYyMmUzMTU3ZmY3MmY4OGZiMyBweTNrCis3NjUzOCA0NTIxZjU5OThlN2M2MmU5NDEzNjAzOTk4MzlmZTgzZTlmY2NhZDEyIGxlZ2FjeS10cnVuaworNzY1NDYgYThhYjYzZmQzMDk4OTdjMDAzNWQyYzM3M2MzNmYwMTg3YjEwODMzOCBsZWdhY3ktdHJ1bmsKKzc2NTQ3IGM5MzY5MDkyZmVmY2Q0NDViOWM1NjNkZWZmYTJjMWRmMGE2MGU0MjcgcHkzaworNzY1NDggMTM3NDhmM2RkYzdiNTQ5YjRlYjZkNjZhNjU5OTUyMWQ2NjQ0ZjE5YiBsZWdhY3ktdHJ1bmsKKzc2NTQ5IGM3ZDdkNWNhODQ0NjRmMmFjZDdjMDRkYWQxZmY1NDg5YTVmZjkxMzUgcHkzaworNzY1NTAgOTg4ZGIwYmJlZTNhM2UwYTk0NjY2ZWNkOTA0MTBkNWM5NDk2Yzc3ZSBsZWdhY3ktdHJ1bmsKKzc2NTUxIDY3MjFkMzNmM2NkMWYzYWM2ZGQxNmJmMjQ4Y2JhZTcyN2ZiNzdiZDEgbGVnYWN5LXRydW5rCis3NjU1MSA1MzY2OWNiZjBlZDJhOWIyNDk3MzNlZjA2OWRlMTRiMzdiNzE1ZWI4IHJlbGVhc2UyNi1tYWludAorNzY1NTEgNzI2ZDEyZGJhMWY2MGUzZGIxNGZmMjQ0MDRmMzE2Y2I4MGE1OGQ3ZiBweTNrCis3NjU1MiA0ZWY3YjNlMmQ2YThiMGIwYTliN2M4YzJlOThmMzQ0OWU2ZTAzZDJmIHB5M2sKKzc2NTU0IDUyN2I3YzA3NTg0OWZiZjY0NTg3YTU0NmMzNDI3MmQ5OWI2ZTRjMDYgcmVsZWFzZTI1LW1haW50Cis3NjU1NSA1NzRkZDhhY2E5MTRlNDQzYjY2NzVlZTdiNWI2ZGU5MDg4NWYxOTM0IHJlbGVhc2UyNC1tYWludAorNzY1NTYgNmU3NDAzYWQ1MzM1ZWE0ZDEyZDI2ZTFhZWMwMjc1M2FiZTY1YmNlMSBsZWdhY3ktdHJ1bmsKKzc2NTU3IGZkZTUxMzBiZjZjZGJkMzJjOWY0YWE4ZjUzZTIwYWJiYWIyMGYzODMgcHkzaworNzY1NTggMzM5ODY2NDg2MzBiYzRjMDlmMDFmZGExNzRkMWJjMDI0NjFkNjgyYiBsZWdhY3ktdHJ1bmsKKzc2NTU5IDE4MDI0ZDI5ODY5Y2IxZjVkNWUwOTAxZWMyMGFiYmI0N2JlZDZmOGQgbGVnYWN5LXRydW5rCis3NjU2MCBjNGMzZmQ1OTNiMGFjMjk2ZDM4NTJhYTZjNGUwYTVkMjg3ZmE0YmQ1IHB5M2sKKzc2NTYxIDI5N2RmNzdiYTM5NjQ3MDY5NmZhNWViMjdmN2ZhYjE4M2MxODc3OTEgbGVnYWN5LXRydW5rCis3NjU2MiA2OTZkOTYxNWEyMzgzYjk1M2JhYTY3NmQyMjQxMTRkYmE4YjM3ZWY1IHJlbGVhc2UyNi1tYWludAorNzY1NjMgNWI2MDdjZDhjNzFiYjU4ZGEzZmM4Nzk2ZTc3YjEwM2MyMGNmYjgzZCBweTNrCis3NjU2NCAzZDExNTc4MmZlMWJiMDRmMTFhODNlMzRkMGFlNDczNDNlMjdhN2QwIHJlbGVhc2UzMS1tYWludAorNzY1NjUgMGMxOWJlNDUwZTY3YTAxZWM0YTJkNmYxMjNmN2E0YzdiMGU1OGVmOSByZWxlYXNlMjYtbWFpbnQKKzc2NTY2IGNiODM2MzAxZGI2MDU3ZWRkY2U0MjliMzIwYTBkNDQ0NzBjOTczYmEgcHkzaworNzY1NjcgM2Q3N2Q3YzE2YzkwOTc5NmM3ZjJhZjM3ZWIxZWZiZGY4ODY5NzUyMCByZWxlYXNlMzEtbWFpbnQKKzc2NTY4IDE0ZWU3NWI4NmE1ZjA0MWQ1MzFiY2I0MWU2Mjk0N2JkZWVjZmM3ZDEgbGVnYWN5LXRydW5rCis3NjU2OSA5MzZiNmYwNjU1OTM4YmVjMDQyN2MzOWEyZjI4NjczOTYzM2Q4ODA3IHJlbGVhc2UyNi1tYWludAorNzY1NzAgOWZkOGU5NWI0ZmNlMTdkYjM1NWVmZmMxMTlkMjcxOGNjMjE4MDQzYiBweTNrCis3NjU3MSA4M2M3MDJjMTdlMDIxOGRmOTY1OTJlYjI3YTk3YThiYTYzYzc0N2UwIGxlZ2FjeS10cnVuaworNzY1NzIgOTE2YTNkMzUwNzQxYzdmNmNmZTg4NjA4ODJiNDA5MjliZGFkMWIwYSBweTNrCis3NjU3MyAxNDljMWE3ZTcyYzE1NDcyZjI5YjkyODBkY2Y3OGZjOTU1MzI0YmExIHB5M2sKKzc2NTc0IDRiZWQ3OTZlZTBkNzg2OWFkMmZmMDAxMTdlZWQxY2Q5OGIzYTE3ZGUgcmVsZWFzZTMxLW1haW50Cis3NjU3NSBlMDZjM2Y2MmZjYzk4YzAxMjZhMjJhMGZkZjFiYjY2ZTJhMTVkOTVjIGxlZ2FjeS10cnVuaworNzY1NzYgODMzNTJlZDkyMjlhM2Y2MzBhMjM4MTIzMDdjOGE5NDdlNWZkYTlmNSByZWxlYXNlMjYtbWFpbnQKKzc2NTc3IGIwZmM1NGM1ZDIzNGY3YTQ5MGY5NTUwNDlhZjg3NTA1ZTI3YjI5MjcgcHkzaworNzY1NzggZjJlMWFjNzUwZjExODUzNGVkMDI4NTkxM2VmMzVkMGMxNTU4OTY0OCByZWxlYXNlMzEtbWFpbnQKKzc2NTgzIDkzMGFlZGVkOTAwZGM5ZDdhNzM5OWEzZGQ2ZjIxMzg3ZmM5YWFmNTIgbGVnYWN5LXRydW5rCis3NjU4NCA5ZmI2ZDU0MTRkZDg4MmU4Mzk5NjU0ZWUwZTAwM2Q3YTExYWNjOTY4IHJlbGVhc2UyNi1tYWludAorNzY1ODUgMGVhZjVjOWVkZDcyOGYyN2M5ODgyMzljYmMyMmM5MjM5OTIzZDhhYiBweTNrCis3NjU4NiA5MTVhMDQ0YmU4MzRjYWQyZGQ0YzQ1YjEyZmNkYzg1YTUzOGQ3ZDE3IHB5M2sKKzc2NTg3IGU4ZDU1MGE4OWYwYmExMWE2NTM1ZGI3MWE4ZjMzNGRjZGI0NWEwZGYgcmVsZWFzZTMxLW1haW50Cis3NjU4OCBhOTQ5MjU1ZDQ1MGZiYTE2NmRkMGVhY2FhNGE4ZTA1ZTlkYzc2ZTQ3IGxlZ2FjeS10cnVuaworNzY1ODkgNmNkNDVmNWNhYjU4YTczYzk0MzZiMTY3Mjk0ODFjNGQ1NTA5ZjFiMyByZWxlYXNlMjYtbWFpbnQKKzc2NTkwIGU5NjA2OWExMzI3ZjkzNmI1ZTc4MWY0OTQyMWY0MGYxNTk0ZjY2MTkgcHkzaworNzY1OTEgMjE4YTdlYjQwZDI2ZTM4MzRhMDI1OWE4MTljMThhOGUyNjNjOGZkMyBsZWdhY3ktdHJ1bmsKKzc2NTkyIGQ1MTAxMmZlMDliMzQyNjIwNmQwMjNhZTM4NzU0YzU0YTY1NzU1MWUgcmVsZWFzZTMxLW1haW50Cis3NjU5MyA2YmRlZGUxOGZjODBkZjZkNmI2ZjhiN2E5MGU3NWUwNjViMjljZGRiIHB5M2sKKzc2NTk0IDllNTFhMTQ5OThhMmE2MDFiYmNhMzUzNTkyODc4Mjk1MTdhNjI5OTQgcmVsZWFzZTMxLW1haW50Cis3NjU5NSBmMzdmNmI5YjIyNGIwNzkwNWVkOGUyOGU1ZGJmNGNmNjgwMjIxOWUyIHB5M2sKKzc2NTk2IDc0YWM4YzEyN2E2ZmYxNmVhMDFhZTExZWVhMDg5ZDdmODM1NmFkMDcgcmVsZWFzZTMxLW1haW50Cis3NjU5OSAxZmYyYzNlZGMxM2NlODcyZmIxYmNmNmY2MGQ1ZDIzNzE2ZTU2OGYwIHJlbGVhc2UyNi1tYWludAorNzY2MDAgMjgxNjY1MGQ3Njg4YzMwMzg0ZjczZTk4MTUzZTg3OTZmODgwNGNhYSBsZWdhY3ktdHJ1bmsKKzc2NjAxIDg0ZTNkMzZkYTRjMjcwYzZlZjM2ZDM5OGQyODQ4OWM0N2M4NWQ4MmEgdGFyZWtfc3lzY29uZmlnCis3NjYwMiAwY2Y5OTE1OGZhNjM2MDAxNzI3ZmY4NWRiYzAzZmRhMWMwMzUyOWIzIGxlZ2FjeS10cnVuaworNzY2MDMgMzE1ZTZhZTY0YmVmN2FjZDg1MzllMDg0ZTdmNjg1ZTRkY2M2YjUwMCBsZWdhY3ktdHJ1bmsKKzc2NjA0IGZmMmFlZmM5Nzg4MWYyNTg0NDM1ZmExMTVmYjhjNjM1ODQ2YzFjMzggcmVsZWFzZTI2LW1haW50Cis3NjYwNSBlMzIwZjg4YTY1YzlhY2IzODlmNmI4NGRiOTk5MDkzOGUxY2VkMDVjIGxlZ2FjeS10cnVuaworNzY2MDYgZGRhYjNkYTk0NzNkYjU4NzYyNTNjMGIxN2Y4MmQ1NjAyYzVkYjA2NyByZWxlYXNlMjYtbWFpbnQKKzc2NjA3IDg4OTZjNDg0NzQyM2Q1OGJkYzFiZGQzM2MxYjQyZTFiZGVjNmZhYTYgcHkzaworNzY2MDggMGE2MTM3OTQ0ZTYxYTA3NjdkYzZhNWRmZGZjYmVjNzRmY2E4YTdhNCByZWxlYXNlMzEtbWFpbnQKKzc2NjA5IDY1MzZhMWNkNDdjZDNlZTgxZjU3NWUzOTc0Zjc4NjgzNWE2M2NmN2MgcHkzaworNzY2MjMgZDk5ZWY0NjRlZjMzZmVmNjMwY2E4NzJmZjdmODdmNDUzOTcyZTgyZSBsZWdhY3ktdHJ1bmsKKzc2NjI0IDRkN2NkZjdhNmM3NWRiNWY3N2FmOGJlZmEwMTRlMmZiNTRlZjBlNzggcHkzaworNzY2MjUgMWIyYWZjYzNjY2YzOGE4M2I3MTUzYWJhOGFlZTNjZmYwMGNmOTFiZCBsZWdhY3ktdHJ1bmsKKzc2NjI2IDVkMmM5ZDg4NzdkZGI5YTNhZWIxNTEzZGU2YTUxZGQ0ZjY4NWEwNWIgcHkzaworNzY2MjcgMjgwMzY5Njc3NjAyYzZiZTY5MzZmMDhjNDQ0ZjEyNTg3ZTZiYzg0ZSByZWxlYXNlMzEtbWFpbnQKKzc2NjI4IGNmOWM2NDlkY2M0ZjRmMjE5MTRhYTUwNDA5NDJiODhkODBkZDUxOWIgbGVnYWN5LXRydW5rCis3NjYyOSA4ZjZlZWU0MmY4MTBkY2Q2MzBjYzRjY2JmNjM5MWI0ZGM1ZmNjNWMwIGxlZ2FjeS10cnVuaworNzY2MzAgY2JiNmU5MmMxYTBkZDI1NDE5YjQzNTM5ZjA4MTMxYWQwM2VmNmU3MyByZWxlYXNlMjYtbWFpbnQKKzc2NjMxIGQ5Mzk4YmRkNDEzYTAzMjUzMmE1ZjQzNGJhYmY1Nzk5MDg4M2E5ZDggcHkzaworNzY2MzIgMGZmNDcwMzRjNjkxY2FiM2MyN2I4YjY1NTk4ZmUyODQzZGE0YmE5NSBsZWdhY3ktdHJ1bmsKKzc2NjMzIGQ2OGE2MDA1MmM2NjUwNjVkNzU2MDJlN2MxMTcxZGIzYWViNDI1MzYgcmVsZWFzZTI2LW1haW50Cis3NjYzNCBiNDA1MTJjZWMyZDZjOWYwMzdkMzdlY2JlYjc2N2UzYWViMzNmYjNiIHB5M2sKKzc2NjM1IGFjZmQ1NjE1YjUyYzE0YzgyY2ExNDhjOGUxMDZkYzI0OGY5ZTU4ZDUgcmVsZWFzZTMxLW1haW50Cis3NjYzNiBhNTRjMTk4MDJhY2NjYWZhOThkMWY1Njg0YTg1M2JkOGM2ZmQyNGFlIGxlZ2FjeS10cnVuaworNzY2MzcgZTlkYWMzZWZmMzE3NDNiNTE1MmQ4NzRlMDllODU0YWFkY2E3YTFlNyBweTNrCis3NjY0MCBkN2NjOTAxN2FjNGM2NjAxOTVlMTU0MzMyMjdiZGExNDFlZTAwMTZkIGxlZ2FjeS10cnVuaworNzY2NDEgMGFmODE4MWRhNWNlNTE1MTYxOGNhOWY1ODM3MWIyMzBkZGNiOWViNiBweTNrCis3NjY0MiAyNjJhMmNlYWYwNWYxY2RkNmVlODc2ZDUyZTg4YmEyYjUwNWUyYTdlIGxlZ2FjeS10cnVuaworNzY2NDMgMTVhYzMxOTFmOWJlMDVhNDViZmUwN2U3YmQ2MjVjYTBjNmZlNDI4MyBweTNrCis3NjY0NCA4MTgwOTI1Yzc1YmE1MTljYjQ1NTE5NWNkNDk5Zjc5Yjk0MDRiNDJkIGxlZ2FjeS10cnVuaworNzY2NDUgYjc5ZDA0MjBjMjA0MGQ4MmQ3ZTg2NjdhOTc2NTgyMzcxNjU0ZWJmNSBweTNrCis3NjY0NiA1YzY4MWVjYzk5NjdjNDFkZjllNzdlY2M1NDQ5NzUyMDU3ZjdkMWM1IHB5M2sKKzc2NjQ3IGI2MGYyYjJiOWMwNDU0ZDM0MWVhYmUzNTE2MzJiZTRhYWU0MGE3ZDAgcmVsZWFzZTMxLW1haW50Cis3NjY0OCA3NWUxYjhjMDVmNDNkNGFlNDJkNGFlMGY0OTFmNjU0NWNhY2ExYzQzIGxlZ2FjeS10cnVuaworNzY2NDkgOTE3MDU4ZWVhNDQwMjQ5OWNmZjI2NDgxN2Q1M2RhN2ZlMjEyMGU0MiByZWxlYXNlMjYtbWFpbnQKKzc2NjUwIGZkZjdkMGVjOWQwNDFiNDUxYzViMTYwMWQwOGNiMGVhMmYwNTdlZGUgcHkzaworNzY2NTEgYjVjZDNkMmVjMDI3NmQyNDkwMzgyNjViMGI0ZDY4MTY5MGQ2NTY0MSBsZWdhY3ktdHJ1bmsKKzc2NjUyIDk2OTU0ZTdkZDliNmUyMWM2OGU1NTUwOGY4M2FkMDNmOTY2NGIyNjYgcmVsZWFzZTI2LW1haW50Cis3NjY1MyAxMTQzNGI2MmQ4Y2Q4MDYyZmVkYTE1OGNmZjM0ODBiODRiOTNlYzg5IHB5M2sKKzc2NjQ3IGVmOWY0MzJlNGQzOWRjZDk0MjJjYWFiMzkxOWE2ZWZjNDEzZGUyYWIgcmVsZWFzZTMxLW1haW50Cis3NjY1NSAxZmExODU0MDMxYWEyYTQ2Mjk2NjYzODE1OTQ2NDc1ODZiODc4OWNkIGxlZ2FjeS10cnVuaworNzY2NTYgZjA0MmRiNDM0NjM4MzkyYzkzOTc2NTQ0ZGE4YjdmMzVlYzdkZWE2ZSBweTNrCis3NjY0NyBkMDBlYzI2MGQ2MmFhOWM5YjFjNDA0MWIwM2UzNzZjNWMwMjQzNjgwIHJlbGVhc2UzMS1tYWludAorNzY2NTggYjhlMjkyMzY5ZWE4YjgyY2YxOWU1YzI2NTJlMzg5ZWM2NGFjYmRiYSByZWxlYXNlMzEtbWFpbnQKKzc2NjU5IGQzMWIzMzUwYWFkYmU2MzBlMGEyNjI3YzEyYjNjMGViZDM2ZjViN2UgbGVnYWN5LXRydW5rCis3NjY2MCAxZWUxZmE3YmVjZjJhZDIzZWUyOWIyMWI0MTU3M2JjNDgzZjA3MjQzIHJlbGVhc2UyNi1tYWludAorNzY2NjEgNTk4ZGU4ZTZjNDhiMzQ2YzJlNmZlODM1NjVmYjQ0NzIwMzNmZDMwNSBweTNrCis3NjY2MiA5ZGY0ZDViNTI2MDljZmU0ZGI1YTBjZDc0YmEyM2VlYjQ3ODMwMzRiIHJlbGVhc2UzMS1tYWludAorNzY2NjMgNzMzMTM4ODU4MTU3NGU3ZWJiMzUwYjRjYjI2ZjU3MTMxMjFkNzQ5ZSBweTNrCis3NjY2NCAzZWM2YjUxY2RiZGRiYjcxNjNmM2E5ZDZmZTM2NDE4MjY5YTNlODUxIHJlbGVhc2UzMS1tYWludAorNzY2NjUgMDQwYzM4ZWQyMjUxNWY5NzM0Mjg3MTVhNWYxNDQzZDc1YTg3NmNmYyBsZWdhY3ktdHJ1bmsKKzc2NjY2IGQ1ODdhNGU1YmE1YTU5NDkxZTI1MDA5ZmIzOTFlYzJhOTYzMDczN2MgcmVsZWFzZTI2LW1haW50Cis3NjY2NyA3M2E5MTI1NzAzYzMyYWMyNDYxM2ZjOGY4ZDYxOGJiMWFjMGM3ZGE0IHB5M2sKKzc2NjY4IDU1YzgzMmJkMzIzMzNhMWFmMDAxNzk2ZTljNDU0MDgxZGRkMGIzZmYgbGVnYWN5LXRydW5rCis3NjY2OSBkMzA4MDI5ZTlhZDIyYjViOGZhNDg5MTE0NDY0NzMxMDA0Nzc2M2JjIHJlbGVhc2UyNi1tYWludAorNzY2NzAgMGZlODk4NzVlZGVmMzQ3NmRjMjRhZmUyOWViNTNiMDYwZmIxMDAxMyBweTNrCis3NjY3MSAwMTQ4Zjc2ZDZmY2RmZDlmMjUxOTZhYWEwMzE0YWE4YTczZDFkZmE1IHJlbGVhc2UzMS1tYWludAorNzY2NzIgNmJiNjNiZTcyOTljYjYzY2JlNDIwZDMwOWNiNGNmYmUzMWI0NDIyMyBsZWdhY3ktdHJ1bmsKKzc2NjczIDRkNzQ0NWNhMzA1MTRlZmY5NWNhOTI2NGJjYzZjMzVmN2VjZTU5YWYgbGVnYWN5LXRydW5rCis3NjY3NCBiNDEwN2ViMDBiNDI3MWZiNzNhOWUxYjczNmQ0ZjIzNDYwOTUwNzc4IGxlZ2FjeS10cnVuaworNzY2NzUgYjllOWQ1NDBjOTBkMzEyOTZiNDViMmJmZDFiNTc5MTQ2ODBhYjZiNiBsZWdhY3ktdHJ1bmsKKzc2Njc2IDM2YTBkZDIxYzViNDNkOWFlODY5Y2MzYTU2ZDQwNzdhMDJkYTliOGUgbGVnYWN5LXRydW5rCis3NjY3NyBlMTlkZTk0MzNhNGJmZThjZmEzODZjMWJiODVlMDc0ZWI5ZDA0YzUzIHB5M2sKKzc2Njc5IDI1NTMyYzk5MzJkZmZhN2Q5MmU0Mzc3YjUxZDc1YjZmOWI3ZmU1MzIgbGVnYWN5LXRydW5rCis3NjY4MCBlYWIxMjNkYzEwN2Y2NGRjMmZlMTFmMjczZGVmNzhiMTg0NDRkNDU0IHB5M2sKKzc2NjgxIDFjOTJmYmIzYmFmMjZhYzVmYmVhNWY0NzU0M2FiODc1OWEyZGQyMjUgcHkzaworNzY2ODIgYWQxNDU1NTgyMjZiODdhZWM3MDJmMDk0OGFlNjExOGEzMmZmZDQzNiByZWxlYXNlMzEtbWFpbnQKKzc2NjgzIDY4NTY1ODE3YzE3Zjk1YmU0NDFhYzdjOTA2MmZjNTViMTIyODEyMGMgcmVsZWFzZTMxLW1haW50Cis3NjY4NCA2YTQ4YTA5MWMwZDM4NmM5NDZhYTk0ZjA2ZDZiZGRkOGI5ZDdmNmFiIGxlZ2FjeS10cnVuaworNzY2ODUgMWMyZWNkNTlkNjVhZjk5ZDc1MDQ1MzZlNmJmODE1OTdjZWExMmUzNiByZWxlYXNlMjYtbWFpbnQKKzc2Njg2IDllNzUxNjAxZjUzODI3ZTBlYTdlMzEzMDNmNWY2YWZjNjM5NDBmMGMgcHkzaworNzY2ODcgNTY4NjE4YjVmNmZkNWQ0NTVjZDA4ZGY0YTJiNGRkYTA3ZjI3ZGRmNiByZWxlYXNlMzEtbWFpbnQKKzc2Njg4IGE2YjFlNjk1OTM4MmUzNWY0MGMxOTE1OTdlZDNkYmM4MjgxNDA2YWEgcHkzaworNzY2ODkgZWVhODAzZDIzNWQzNDFjYzViYWFiMGE4N2RmYzdmNzAxMzg4ZTVkMyBsZWdhY3ktdHJ1bmsKKzc2NjkwIGJlMWNiYzE1ZDlmNTFjY2NmYWNjZmE3MDE2NDI2YTc3NjZhYzFlODggbGVnYWN5LXRydW5rCis3NjY5MCBmOWJkYmNjOGQxZThlNmVjOGM0NTgwOWYyYmQ0MDM4ZGJhNDYyYmEyIHB5M2sKKzc2NjkxIDYwN2Y1MThiZDNjZmI4MGIwZmQ2YWM3NDc2YmU1YTE1ODM5ZDA2OTUgbGVnYWN5LXRydW5rCis3NjY5MSBiYWM4ZWEyYjZkYTM1ODg0ZWFlOWFmYzEyOWI3ZWEyYzE5NmViZGY5IHB5M2sKKzc2NjkyIDg5ZjZhNzU0NjJiMjdlZGIxNTEyMGE4ODBmYjZhMDA5NTMwZjdjYzIgbGVnYWN5LXRydW5rCis3NjY5MyA2ZWY0YmNjNGE0NTAyMTY2YjZjODM0YjJiNmIyOWExZWUzMTE1Yzc2IHB5M2sKKzc2Njk0IDU2ZmNlMTg4YzZiZTA3ZWZmOTQ4YmE1NjVjMTMzNmY1Y2IwM2VlYjAgcGVwLTAzODMKKzc2Njk1IGMwZjhlNGEyM2RkZjRiOTQ5NTI0YTg1NWQzYmEzMjJiOGIzNjIwZGEgcGVwLTAzODMKKzc2Njk2IDY4NTUyMmM2ZjMwZmJlMWIxNjUzZmEzYzQyZDdjZGJkNWQxOGVhMjUgcGVwLTAzODQKKzc2Njk3IDljNTk3YjBhNmE5YjcxZjg4MDNmNjRlMzc4YmRhZjRkNDc3MGZjYWYgbGVnYWN5LXRydW5rCis3NjY5OCAzNWYzYTE5YzQyNjVhNzZjODJhOWJmZmYwYzlmZTdmYmE1YjQ4MjY2IHB5M2sKKzc2Njk5IGY1YTQ0N2IzZjI2ZWJmNDk1YmQ1NzFjZjdlOGY1OWE3OTkwNTk2ODEgcmVsZWFzZTMxLW1haW50Cis3NjcwMSA0NTA4MTg2MWVmNzRhZmY4NjhmMDFlNjliYTZhOGJhZmM3NDU3YTFlIGxlZ2FjeS10cnVuaworNzY3MDIgMjVhZWRlNjJmYzE3MmE2Njk4ZWMwMzY2MmQ0MjhjODJjODFmMmRkMiBsZWdhY3ktdHJ1bmsKKzc2NzAzIDI3NTA5NzNlMzg5M2M0M2JhOGIxY2I0YTA1ZGUwZTNiYzNlMDRiM2QgcmVsZWFzZTI2LW1haW50Cis3NjcwNCA5ODg3OWM4ZDUzZjE2NWRjOGM4MDBkOGQ4NGNkZmUxNjAzZjlkYjVmIGxlZ2FjeS10cnVuaworNzY3MDUgNTFjNWM5MTJlYzNlYjQyZTE2OWIwNThmZDU0MmFmYzgxZjg1ODM1NiByZWxlYXNlMjYtbWFpbnQKKzc2NzA2IGQ5YjRmNmVhM2UzOTc1YjNiNDlkODVlZmU2NDY4Y2JmNGZhNjhkMTggcHkzaworNzY3MDcgNzY0N2IxNGVmZTcxZmE5MzY1ZmI0MmUwOTFjZWFlYTlhODM0MmE0NyByZWxlYXNlMzEtbWFpbnQKKzc2NzA4IGRiMjhhZWIyZmI3YTdiYmEyMmM2YjZjNmUxODkyOTMwNjIyOTNlYzUgbGVnYWN5LXRydW5rCis3NjcwOSA0MDc0Njk1NmIzNzkyYjM1Nzg1M2MyMzQ4MjIyZjJiNzEyZmFkOWE5IHJlbGVhc2UyNi1tYWludAorNzY3MTAgNjgzZDVjOTdlNDc2ZGU0OTlmZWNmODZmOTA0YjQ4NjVjNDkyZmFlYiBweTNrCis3NjcxMSA2ZWZiNDZjMmIzYzNhZGRhZTJhNWIzNGI5MDhiYmJlYmFkOGI4OGZlIHJlbGVhc2UzMS1tYWludAorNzY3MTIgMjRmZmIwYTNhZTRiYTkzNDY4N2RmY2M3MGUwMDM0NzQ0MWNmNzdiZSBsZWdhY3ktdHJ1bmsKKzc2NzEzIDQwYzM2MmE1OGU3ZjBhYTEwNDc1YWQxNmZiZTM4ZWNmNjUyNWUwMWUgcHkzaworNzY3MTQgY2YwYzY5YmUwMTFhNTg3Y2MxY2E3N2RjNTQwNzcwMzkyNzNiZjFlZSByZWxlYXNlMzEtbWFpbnQKKzc2NzE1IDgzYTc2MTkzOTk3NTMzYTI3NGQzYjkzMGI3NTg2ODBmMzEyNzdkODIgcmVsZWFzZTI2LW1haW50Cis3NjcxNiA4M2MyYmYzMTkxZDg1YTQ4YTAxYTg0ZTg2MTg0MjllYTZmN2NlMjRjIGxlZ2FjeS10cnVuaworNzY3MTcgNWI4NjgzYTk1ZWFlYzY1ZjAzOWU3OGNkMTY1MzJkZTlkMDUzZDYzZCBweTNrCis3NjcxOCBlNzI4YWU4OWFlNjlkODhjODVkMzA5Njk0YmQwNTZmYzJiZDNmNjZhIGxlZ2FjeS10cnVuaworNzY3MTkgNWU4Yjc0NDlmOTYxNWMzMDdkNWZiMjFjYjZmMWYxMmQ2MGIyYWZiNCBweTNrCis3NjcyMCA2YzY0MjU1NjM5MTgyODI4YjY2MGZhYTEzZWIwMjE3YzQwZmQ4NzE2IGxlZ2FjeS10cnVuaworNzY3MjEgMmM1MmQ0ZDNlNTRhZWQ1YzQ3NmJhMTlmZTQ3MDJiOWJhYjkzNjg5ZCBweTNrCis3NjcyMyBlNjM0NzAzOGRmOTc2ZmNjNDNhMDhkNzBlN2E4YWNmMmVmNWUzZWEwIHB5M2sKKzc2NzI0IGNjYzU0MDZjYjM4MWRmYjk1NWY2YmZkZTJiN2JmMDgwNWY2NTY1MmMgcmVsZWFzZTMxLW1haW50Cis3NjcyNSA3MzhiMzliMTJkYzhmMDUwNTVkYmFjNDNjOWU3MDQ1MjMzZWI5YTY1IHB5M2sKKzc2NzI2IGVmZWFiZWU2ZTA2MWFjNDk5M2E0MWNiNzdhMDVhZTY1MzZkMzdmMDIgbGVnYWN5LXRydW5rCis3NjcyNyA3NTBlNzVkOTMwMjE1NTUwZGRmY2E3YTI2NTFjNTg4OTczYWZkZTBlIGxlZ2FjeS10cnVuaworNzY3MjggMGE3NmFiM2E2NzNjNmZkNmUyMGM5MzQ1YjEzMTAwYTc3YzA4MzM0MCBweTNrCis3NjcyOSA4MTYzMDNhMDc3NjI3NzhmZDEyZTVkMDkwZmRkZjliNDYxZDY1OGMxIHB5M2sKKzc2NzMwIDI3M2VmMDlmZTgwNDhlMGQ0Mjk5MTJjMWQwZDE3MzBhMzMyMTdmMmIgcHkzaworNzY3MzEgOGI4YWVlMjFkODVlNmE5MmRlMWYwZDMzZWNmZTE5ZDE5ZjI4YTg1ZSBweTNrCis3NjczMiA4OTc0YWI2ODViYWUwNjQwZTBjZDU2MWZkZWJjZmM1NDAzZDVlNjI0IHB5M2sKKzc2NzMzIDE2NjkxYmM4YjE4OTRjNDg0ZDcyYjhmYTQ4MGNjODZkN2IxODllNTggbGVnYWN5LXRydW5rCis3NjczNCBiYzcxNmQ4ZjQzNDVkNmE0MzlmMjY2ZjY4M2M1YTI0ODRlOTgzOTYxIHJlbGVhc2UzMS1tYWludAorNzY3MzUgYjVhNGFjYmVhYWExNjFhZWYyNTAyNTA3ZTZlOWI1MzNlYzZkMzFjNCByZWxlYXNlMjYtbWFpbnQKKzc2NzM2IDU3YWU1ZDQ0ZTczMWZiYzI0NGE0ZDVlODVjZmQwZGIwODNhOWFlODIgbGVnYWN5LXRydW5rCis3NjczNyA4Mjc2ZDAwZDMxMDBmNWFmNjYxNWM1MjFjMTlkMjZmMTZjNjdjMzE4IGxlZ2FjeS10cnVuaworNzY3MzggOGI2Njg5YzBlNWE2ZTZjNThiOWZmNTNkZDgzZWE2ZWQxNWNkYmQxMCBsZWdhY3ktdHJ1bmsKKzc2NzM5IGIyN2Q5NDYzODllNzY3ZTY0NjcxZTVhNTA2ZWUwMmJkMzBhZjM1ODggcmVsZWFzZTI2LW1haW50Cis3Njc0MCA2MzE2OWNiOWU0OWEwMWYxMWM2NGE4NTM2NTg1ZmY2YTk2MDg0MTVhIGxlZ2FjeS10cnVuaworNzY3NDEgOTJmN2M0ZWU2YWFkZmM4Y2YxMzA0NzEwNjEyYzc3MGI0ZTI2YTRhMCBweTNrCis3Njc0MiA3NTJlODYwOGUxMzFiNzFkYTJmZDFmYWI5Zjc0ZGNjMmZkNjBlMWU1IHJlbGVhc2UyNi1tYWludAorNzY3NDMgYTQ0MDljZjZiNTU2NGE2YmUzZGI0ZjQ5ZTBmZDIyYTQxYWMyN2JlMiByZWxlYXNlMzEtbWFpbnQKKzc2NzQ2IDkyMTFhNWQ3ZDBiNDI0Njg2MTVlNzI3MjRlMzQ3OGQ5ZjY0ZGVjNDQgbGVnYWN5LXRydW5rCis3Njc0NyAzNzRkNGU5YWFiMDUyYjVmZjljNTc4NjAwZjk2Y2Y0ZGU2ODhjOWNkIHJlbGVhc2UyNi1tYWludAorNzY3NDggNmY5YWQwNDE4ZjcwZjE5Njc5OWFhMDMyMGI0OTE1ZTM1MmM1ZGU2NyBweTNrCis3Njc0OSA0ZWUyMjY4OTBiNTk5MDlkNzhjMDk3MDlkYzI5MjcxOWMxYjczZTI4IHJlbGVhc2UzMS1tYWludAorNzY3NTAgZDI4ZmJhYzM3ZTIwMmY1N2ZjMTgyNzRkZTZjMzgxNzQ3ODlhZDAyMSBsZWdhY3ktdHJ1bmsKKzc2NzUxIGUyOWE0NTMzMWRlYThiNTQ4YjNlZDM2MmVlNzhlYTE4NzAzMGExMmMgcmVsZWFzZTI2LW1haW50Cis3Njc1MiA2NmZiMWUyNzYyZDM0MjNkN2YzYTk2YTdiYjhkNTFhNzg2OGQ2YmU1IHB5M2sKKzc2NzUzIDc1NjJlMzc2ZDliNTUxZTdhM2Q1MGY4MzcwNjc5ZTcwMGRlZWRjMTYgcmVsZWFzZTMxLW1haW50Cis3Njc1NCBhZTkzOTYyNjA4MzU5ZWRiYzI5MzFkOGNiMWRjNDc3OTk4ZmM0OGU4IGxlZ2FjeS10cnVuaworNzY3NTQgYTZiZjA3ZmZmNmZjYmZlOGQ0OTA1MTg2NzZkOGJiZjcyYWJiMjJmNiByZWxlYXNlMjQtbWFpbnQKKzc2NzU0IDBjZDdhYzhjNmJiM2JiY2RlMDJkZDcwYmE5ZTJjOTU5ZGVkNmU3MjkgcmVsZWFzZTI2LW1haW50Cis3Njc1NCAxOWI0ZTFmNjQ0M2UxOTk5MzMwYmJhMzBiZmZlMDU5NGVjZGIxMzViIHJlbGVhc2UyNS1tYWludAorNzY3NTQgOWI2YjFjMWMxYjMzMGYxMjE5MTQ0YmM1NGI5YzNjNjczODI4ZmU0MCBweTNrCis3Njc1NSBjYjIyZWFlZTg2YzkwYzBmYTMyMjlmZGRiZTBiNTE2MGQ0ZGU5Mjg1IGxlZ2FjeS10cnVuaworNzY3NTYgOWI4M2JmZWZjNWU3ZjZmYWVlNDg1M2FmOWNmNGEyOWZhZTMxNmRlNiByZWxlYXNlMjQtbWFpbnQKKzc2NzU2IGJiYWI2MDJkYTExNDlhNjk3MmI3NTY2N2Y5MTUwYzQxMzkzNWMzYzAgcmVsZWFzZTI2LW1haW50Cis3Njc1NiBlNzAwNGRhMjlmNTEyZGRiNDYzYmQ0NzFlN2RhZTE3ODdhN2Q5NTQxIHJlbGVhc2UyNS1tYWludAorNzY3NTYgMzc4YmI3MDViZTkwNGJiMmRkOGRjYTRiN2Y0MjRmZGY1MmVhNjU5MSBweTNrCis3Njc1NyA3Y2I3M2U3YzE3NmQzMGNkN2I3MzlkOWNhOWJlMmU0NjU5YzAxMDBkIHB5M2sKKzc2NzU4IDE2Y2QyMWJhMjY4YTQ5NjlkZmFjYzY3MjA0MmE0ZTkxNjkyZDRmNzEgcmVsZWFzZTMxLW1haW50Cis3Njc1OSBhZWU4ZWI3ZjVmMDIxZTYyOGEyMGI1N2NjNTFmYzdkN2JlNGVjZDk1IHJlbGVhc2UyNi1tYWludAorNzY3NjEgMjU2ZTlmMDBkMDYxZWY4ZDU0NjRlNzBjYTkxZThlNjRjM2Q4M2VlYyByZWxlYXNlMjYtbWFpbnQKKzc2NzYyIDRkNTFhYTU3MmU4YzlhYmU5ZjllNmI5NjVmYjZmNDMyYTk3ZWMyNDYgcmVsZWFzZTMxLW1haW50Cis3Njc2MyAyZmZkMTlhMjI0ZDQxZmE0NjMwZTQ0M2VhZGI1NGE4NGFmN2ViZWFiIGxlZ2FjeS10cnVuaworNzY3NjQgZDk3ODU5MDljM2E3MmI3NTZkZWYyNjk2ZDgxZjE2MGQ0YmMxM2MwOCBweTNrCis3Njc2NSA3OWUwZGJiNmM0Yjg4Yzg2NDE3ZmU2OTlkZGZmY2I3N2Q3YThkN2EyIHJlbGVhc2UzMS1tYWludAorNzY3NjYgODY5MGE3ZWZmODJhMWUzZDhhZDU3ZDBkMGQ3YzFiODViODYzOWQ4MCByZWxlYXNlMjYtbWFpbnQKKzc2NzcwIGFkOTE3YjhmZDY0Y2Y2MDE0NzIxM2NkODc4ZWU1ZWUzZTE4OGI4ZGYgcHkzaworNzY3NzEgYjdlYzRhZmNmYzNmMGJkZjg4MGIzNWIxYmYzNTNlOWQyMjg0ZjYzNyBweTNrCis3Njc3MiA3M2E2YjliMDU0M2Y0YzgwMTMxNTI1MmYwZTIwOTE3ZTAxMzE0M2ViIHJlbGVhc2UzMS1tYWludAorNzY3NzMgODA0ODU2OWViNTNmNWY3MWUxMjVlODI3YThjY2IxNDQ1NDEzYzhhZiBweTNrCis3Njc3NCAyMGI3ZGViNTNkNGU1OGIyOTRkNjhmOWU2ZDhlNWY1ZTZlYWU5YzMwIGxlZ2FjeS10cnVuaworNzY3NzUgMmI5MzRkNDY2OTkzZGQxYjcxYzhjYWEzMDk0MTJmODc5M2RhZWU3NSByZWxlYXNlMjYtbWFpbnQKKzc2Nzc2IDA4N2ZlNWZhMTEzYzFmZDEwZDliNTQ3NzliYjNhYThhYTkwYzY0NzMgcHkzaworNzY3NzcgZDhjNWUzODUxNWI2Y2RjNTIzMDk1NWNiMTkwMDI5MjA1Y2ZiY2ExNSBweTNrCis3Njc3OCAxNTU4ZGM2OWFhY2YyNmQ4NjBlYjdlZmM2Y2Y2MzM2NmM5ZTU3YjU4IHJlbGVhc2UzMS1tYWludAorNzY3NzkgYTc2OWE5YjM0ZmJjMmM1YWNhMmFjNzlkYzZjZWZjMDBjNWRjMmQ4YSBweTNrCis3Njc4MCA0OTM3ODBlYTM1Y2Y4MjFhYTdhODM0ZDI1MDYxYzExNWJkOGQ1YTY0IGxlZ2FjeS10cnVuaworNzY3ODEgZWQyYjY4ODNmYzk2NzM0YjFiYzE1MzdmMzMyZWNmMGNjZjFjNjM5OSByZWxlYXNlMjYtbWFpbnQKKzc2NzgyIDQ2YzIyOTc0MmM2NDIxM2ZmMGQ4YjRkNzRkMGEyOTRmZDlkNDdhNTggcHkzaworNzY3ODMgOGM0N2Q3ZDJhMDIzYjUxOTEyY2U5ZjJkZGQ0YzgzY2FjNzNkZDk4MiByZWxlYXNlMzEtbWFpbnQKKzc2Nzg1IDExNDIzNzE5YmFiYjQwNDVlOGUwY2U0YWRjZjQ2MmNjYTNhY2NkNWMgbGVnYWN5LXRydW5rCis3Njc4NiA0NjQ4NTFiZjIyZmRlYjUwMDc3ZTE0YTBhZTI4ZjNmZWMzNTJkZDEwIHJlbGVhc2UyNi1tYWludAorNzY3ODcgMmZkY2Q3M2MzMmFhYmI5MjZlNTA5ZmYzMjEyMDgzYWMwN2VlZjdjYSBweTNrCis3Njc4OCA1NDgzMzVjYjAwN2IxZmU4NzRmZWVlMGYyNGRjMzE0ZjE2OWU4Njg4IHB5M2sKKzc2Nzg5IDRhOWU0M2EzYjk4NTMzYWE3MDUwYzEyNGQzOTg3MGIwYTgxYWNkNWEgcHkzaworNzY3OTAgYzkxNWZmNTkxYTJmMzM0MWQ4YzgyYmFhYmJkYTBjZTZjZDQyNGNkYyByZWxlYXNlMzEtbWFpbnQKKzc2NzkxIDE2Y2VkZGU5YWYwMDkwNGM0NTBlMmQwYjlhYmIzYjFhYTgyYjE1MDMgbGVnYWN5LXRydW5rCis3Njc5MiBjNzA4N2VhMWMyMWRkZDNhM2VkNjExZTFiOTQ1Yzg5MzI5MGFmNzA5IHJlbGVhc2UyNi1tYWludAorNzY3OTMgZTdjOTRjYjcyNjc4OTkxYmFiN2JhNTI1YzBiOGRiYjAzNTkxMzY1OSBweTNrCis3Njc5NCBjYjI2Mjk5ZTBlNTI3Yjg4ZDVkM2Q0OTY5NWVjNDM4ODZiNjUwZWJhIGxlZ2FjeS10cnVuaworNzY3OTUgYzJlOTRlZjBkN2U1ODU3NzJmZWI2Zjg1ZGIzMmNkNmEzOWM3MTQwNCBweTNrCis3Njc5NiAwZGJlY2NkN2UwZTZmYWVkZDFmZDJiNjY3ZTcxZWVlMGRiNjJjM2IwIHJlbGVhc2UyNi1tYWludAorNzY3OTcgNDJlMzExYTQ3NmU4MGIxMDRiZjE2NTE0MTY1ZWFlNTAzMmYwMjdjYyBweTNrCis3Njc5OCAyMTVkZGZmMTk5YzFiNjdjZTc4MmVjNzQ2ZTE5MTY0NmY4OWQxNTRkIGxlZ2FjeS10cnVuaworNzY3OTkgMjdjNjNkNjUyNjIwOWE3YjgyYjgwMzUwZTNkZjk1YWI4NGVjNjczNiBsZWdhY3ktdHJ1bmsKKzc2ODAwIDEzOTJlMzZhZjFiMjZhMjNiMDdlMGMxY2Q5YWZiNjJjYjdiMmU2ZGMgcHkzaworNzY4MDEgNjA1Mjc1MWEwNGM4MjMyNzJhZWEzZWYxOWJkYWE4M2E2ZDFkYzAxMiByZWxlYXNlMjYtbWFpbnQKKzc2ODAyIGE3NGUwNGZjOTNlYjlkY2ZjZDMzMDI1OTkzMGQwY2M2ODU3YzQ1NzUgcmVsZWFzZTMxLW1haW50Cis3NjgwMyA2NTRjNjg1MzY5NzUxNDY1MjRhYmE0YzVlYWU5NWQxYjQyZGM2Y2UxIHJlbGVhc2UyNi1tYWludAorNzY4MDQgN2NjZDIyOGI4OTVjYzlmMDhkYjU1YzJlMGRjNGI5Zjc4YWI3NTBiMSBsZWdhY3ktdHJ1bmsKKzc2ODA1IDU0Zjg0NTU4YWQyYjJmNjcxMTA3NzQ2NDMxZmVkMmNmMGEwZDZkMDkgbGVnYWN5LXRydW5rCis3NjgwNiAyNGE4YTI5YzhhNGEwNDZlNjQ0ZjNmYTNmYjA2YzNhMjJjMTRkOWE1IHB5M2sKKzc2ODA3IDNhN2Q1NDA0M2FiYThlZjk4MDQ2OWRmMjkzMTQ4MWI0OWU2NmU5MWYgbGVnYWN5LXRydW5rCis3NjgwOCAxMjA2M2E3YjZhMmEyOWVkYmJkODhlNjgzMTUwMDM2OWM2YjQ4ZDFmIHB5M2sKKzc2ODA5IDM1ZGY2Nzc5ODljYjk1NTEwNGEyYjEwYmJmMTg4ZTM5Njk1YjI4ODggcmVsZWFzZTMxLW1haW50Cis3NjgxMCBmYzcwYzhkNzQzZGI3MmU2YTlkMmI4ZjQ4NWZmZTgxY2M4MDMyZGI1IHB5M2sKKzc2ODExIDYyMTA2YjZmNTU5NmM4OTNjNzZhNDg3N2M5YzRhZTRlOWEyNGI3MjggcmVsZWFzZTMxLW1haW50Cis3NjgxMiA3YzQyMTI0NGU2ZWE4ZjBkMzIzYmQwMzU1ZjRmNWQ5NTkyYWQ1ZDVhIHB5M2sKKzc2ODEzIDUzNmU0NmVkMTBhY2Y0MzYyMDA3YWYwY2YyMDhmNmYxZGJmODNjNjYgbGVnYWN5LXRydW5rCis3NjgxNCBiM2EzNjQxOTJjMGFkOTdjOGMzMDA2NDI4OGVjMDFlMzA3N2U2YWE0IHJlbGVhc2UzMS1tYWludAorNzY4MTUgYmM5MzQwOThjYWExMDFlMTgxOTk5NWUzNzFlMjU3YTMyYTczY2EyYiBweTNrCis3NjgxNiAwNTZmZmI4ZTE3YjNmNTRmMDk2MDZhM2ZmMDM3NjJhNzNjNWQyMjYxIHJlbGVhc2UyNi1tYWludAorNzY4MTcgZGQ1MzkxZDRiYjY4MGQ0Zjg0NDljODBkMmNkOWRhOTk4MDI2ZmU2MSByZWxlYXNlMzEtbWFpbnQKKzc2ODE4IDZiMjg1MjIxOTdkYjEwZTQ0ZDhjZTk2M2Q5OGUzODA4N2MxOTczMDggcmVsZWFzZTMxLW1haW50Cis3NjgxOSA5ZjM1N2M5NmYyNDZlODg0MDU0Mjc4NmRjZjBlNGZjYTBhNjVlNDFmIGxlZ2FjeS10cnVuaworNzY4MjAgNzJlZjNkYjVjNmIzN2IyODE0N2MxNjBkMDRkNTgxNGEzNzZmZGE2YSBweTNrCis3NjgyMSBlNWYyMDEzYjI5YTE5N2UxY2Y4YjNhZGYzZjEwNjllYjIzNWE1ZjI4IHJlbGVhc2UzMS1tYWludAorNzY4MjIgNmUxMzFlMDcxMzEwNWQwOWJhZDM0NGI4YzE1ZmVjYTcwOTA0NjhkYSBsZWdhY3ktdHJ1bmsKKzc2ODIzIGRhMWZjZTU0MDg4NWUxZDc1YWQ2YWNjYTQ3NTYyMjRlMjRkZDE4ZmMgcHkzaworNzY4MjQgNDBmM2I4YjgzY2M2YTNlOWNiYTVlYjRkZDM2YmI1ODI3M2U0MDY3NSBsZWdhY3ktdHJ1bmsKKzc2ODI1IDc3MDVhYzIxOGM4NzBiNTE1ZjNhNDBjYWI5NDg3OGNhNWVmM2QzOGIgcHkzaworNzY4MjYgYzBjODYxZDM4YzRmZGFlZjZiYWQ4ZWM0YTEwNDg0NTk0NTIxMWQ0MSBsZWdhY3ktdHJ1bmsKKzc2ODI3IDM1NDY3NzliMjFjNzA4M2U1Mjg0ZDQ5N2FhNWQ5OWYzYWNkZWI2YjIgcmVsZWFzZTI2LW1haW50Cis3NjgyOCA2ODI0OWVkODgwOWU4MTMzYzgzYTQ2Y2JlOTdkZGExMmFiNGE0YTcwIHB5M2sKKzc2ODI5IGJjNTVmNWQ1MGRlYzg3MGE5NDY1NzBkODIzYzY2YTAxM2M2NTk0MDMgcmVsZWFzZTMxLW1haW50Cis3NjgzMCA1MTAzZjY4Y2NhNjkwOTVlNzBjZDczNjQyYjAyZDhkNDFiNzMxZGMyIGxlZ2FjeS10cnVuaworNzY4MzEgMmI4ZjQ4NWIwZDAzOTdlMTI1MDJhM2M5MzA2MzIzNzBiYTdjZmY2NiBsZWdhY3ktdHJ1bmsKKzc2ODMyIDc2YmQ1YmRjZWNjZGZkOTY2ZWMyYjhiMGMzNjc2ZjFiMTA1YmY2MWEgcHkzaworNzY4MzMgZDJlMTQ2NTNhNDNjOTk1YzdmNjIyYzQxNTg1ZGVlZmVjODI5M2VlMiByZWxlYXNlMjYtbWFpbnQKKzc2ODM0IGQ4OTlmMjhkYmI4ZTk3YzIxMDk2MmY4MDBmOTM5NjQwNjI1YzM1OTIgcHkzaworNzY4MzUgMGVlZWE3NjU2YzIyZjAzMGVkMDFkNWYwM2NkZWE5NjIwZjI4ZDY1ZSByZWxlYXNlMzEtbWFpbnQKKzc2ODM2IDQ5YzY4YTJiMDU4NTJjNTQ5MTVjYWJjOTI3ZWE4M2M0NzRkZWEzZGYgcHkzaworNzY4MzcgYmMwYTZlNGNlMWIwYmJmMWUzOGQ2NmQzOTAyYTE1YjdiY2IyYWViYSByZWxlYXNlMjYtbWFpbnQKKzc2ODM4IDkxOWUyMTQyNzI2ZWZlMmJhMGJkMTU1NDQwNDc4ODBkMmE3YjdhMDAgcmVsZWFzZTMxLW1haW50Cis3Njg0MCBmYTRmMjNiMTgyZGU2NzkxYWJmZjg3YTU2MzQzN2IzNjYwMDI2ZTJmIGxlZ2FjeS10cnVuaworNzY4NDIgMTU5MmU4OTUxYjJiZDM1NDQ0NGI5ODgwZTIzNmM3MjA0YmRlYzhmMiByZWxlYXNlMjYtbWFpbnQKKzc2ODQzIDMyOWVmMjk0Y2MyZGI1NmQ0MmQ4MmQ4MjA5YzcxNmIyMDY2NGY3OGIgcHkzaworNzY4NDQgZTljZWJiZTlkZTVjMzFhZjkzMGMwYzFmOGNiNjhkYTYyYTRkMTk3MSByZWxlYXNlMzEtbWFpbnQKKzc2ODQ1IDk2MGU5ZTg0Y2E1OTc1NWM2YjVkZGFkMmU2OWRlMzcwMjE0Njc0YzEgcHkzaworNzY4NDYgN2MzYzAwZTc2YzI0ODhiNjZlOWRjMjE1M2RlNzQ4MTJhYTczNmQzZSByZWxlYXNlMzEtbWFpbnQKKzc2ODQ3IDY2NjQwZmM2MDdjYTA2MzU1ODhkNjA1MmY5YmNhNjUwOWNiYjcyMTIgbGVnYWN5LXRydW5rCis3Njg0OCBkODYyMDAwZjFiMDE1NTNmOTdlMjY3NmRjNjA0MzA4MzhlMGFhZjcwIHJlbGVhc2UyNi1tYWludAorNzY4NDkgMjRiNjg1MzE4NjMzYjNhM2UyOTM0ZWIxMGVkMmE4YTM4ZGEzYWI5OCBsZWdhY3ktdHJ1bmsKKzc2ODUwIGU1MGU0OWQ2MWZlYTVmMzQzOTBiMmI5OTdmODQ5YmZhY2NiMjJjOWIgcHkzaworNzY4NTEgYTliNmYyN2QxZTI5MGVjOTdjYzE1ZDU5ZTFmNTRiYzZjZWNhYzNkMSBsZWdhY3ktdHJ1bmsKKzc2ODUyIGMyZTRjZmJiMzk4Y2I4NWYxMWIzM2ZjZWY0ODVjODUzYjE4NTgxNmIgbGVnYWN5LXRydW5rCis3Njg1MyA5NDI4MjNkZGQ4MThmYzM4OTJiMTg4MGNhMzczYTBlNDM2ZmQ5MGQyIHJlbGVhc2UyNi1tYWludAorNzY4NTQgOTdhYmQ3YWFiYWRjMjhlMjg4MzRkYjYzZWY0OGUzMWZhNWFiMGEyZiByZWxlYXNlMjYtbWFpbnQKKzc2ODU1IDdlYjA1MGMwZTY1NDY3YzBkMWVmYTA5MTM5OTM4ZWRmOWIwMGFiNDkgcHkzaworNzY4NTYgMmJkMGYzOTE1OTM4NDBjNzYxYWJhYjk5Zjk2MDE5OGY3ZjRkZDI2NiBsZWdhY3ktdHJ1bmsKKzc2ODU3IDlmZTE1YzFmOTljYzliMGM5ZjJlY2FiMGYxNzIzNjBjNjk3ZDNhODggcHkzaworNzY4NTggNGZjYmUwZWE5YjMxNzgxMzg1YzU3NjU0NzQ4NzlkNWIyZjMxYTU4MyByZWxlYXNlMjYtbWFpbnQKKzc2ODU5IGJmNjljM2YyYjc3OGU0MDNjNDVlNTQ4M2FmNmI0YjlmZDU2YWU4M2YgcmVsZWFzZTMxLW1haW50Cis3Njg2MSBiMjA2YWQ4Y2Y1YmYyZTQ0NzVlNTZmMWZjODlmNzczZTZiYTQ5OTljIGxlZ2FjeS10cnVuaworNzY4NjIgMjJhMWVhOTBmYWE2MTc3Mzc2Njk5YTQ0NDYzOGRmZGM3NmIxODhjNyByZWxlYXNlMjYtbWFpbnQKKzc2ODYzIGI0NWNhMTFiOWEzZWM3NDhlYTRkYzBiNzU0ZmI1ZjkyNDA5NDRkMjEgcHkzaworNzY4NjQgNTRhNTAyZGIzYjhjZTBkOTNkY2ZhNmYzNjg5N2JjMWI0NzY3OTI4YSByZWxlYXNlMzEtbWFpbnQKKzc2ODY1IGIzNTZlZDk1NjRlNjhjMmMyMjBkOGUyMGFhN2QxYzY0YjZhNzE1MmQgbGVnYWN5LXRydW5rCis3Njg2NiAwYTFjMzljNWYxYjljOWU0MzEwMGJlMmNlYmIyNDZhYzJmMzBhMjczIHJlbGVhc2UyNi1tYWludAorNzY4NjcgYjE4OTY2MjBjMjk2ZDJiZjJjYWY4Yzc3MzRlZWE3ZmE0YmY0ZTJhNSBweTNrCis3Njg2OCBiMTNmNzE1MzlhYWMwMGE2ZGNhNGI4MWQ5YzZkYmVhMmMxN2VjM2NkIHJlbGVhc2UzMS1tYWludAorNzY4NjkgNjJhZmNmYTNmZTE4OGI3YjdhNDhmMzU4NTZjYWY2MWQ3NTVjMDg1OCBsZWdhY3ktdHJ1bmsKKzc2ODcwIGJiNjY0ZDIxOTM5YjY4OGRmYWZkNDBiNDk5NmM1NmEyYmEwYWMzNDkgdGFyZWtfc3lzY29uZmlnCis3Njg3NCBlMjZlZThkZGQyOWQxM2M3MDlhMTdiYWRlOTBjOTY5NDU4NTRkNDY4IHJlbGVhc2UyNi1tYWludAorNzY4NzUgNTFkMzdlZjQzZTFlOWRlNTgxM2M0ZjM4YjYyNGQzNTBmMGFhMGE1OSBweTNrCis3Njg3NiAwZDM5ZGFiMDU2MjJlN2IxZTMxYWNmM2I1YjcwODlmYTQ3ZGFlMGMyIHJlbGVhc2UzMS1tYWludAorNzY4NzcgMDE5NDkxYjI2YjM2Y2ZlNzAxOGJmNGQyMTNhNTIxZDkwY2NhODU4NiByZWxlYXNlMjYtbWFpbnQKKzc2ODc4IGQzNTBhZmMzMzdkYzY0YzQ3Y2ZhYzc4OTQ1ZmQ4OTI4Y2FlMjljYTYgbGVnYWN5LXRydW5rCis3Njg3OSAxZTgxNjRiNWYzNmRiYWYyYTU5ZTljMGYyYjFjYzFhZjhhYjM3MjIwIHB5M2sKKzc2ODgwIGU1ZGY5YTFkYWI2YTA4M2I1NWU2MGFiMTY4MzFjNGRiODE4ZDI0ZWIgcmVsZWFzZTI2LW1haW50Cis3Njg4MSA2NGY1ZjM3NWQwNzNlYzYyOWE4M2UzZDlhNDg4ZTRhMmRiMDJmYWY0IHJlbGVhc2UzMS1tYWludAorNzY4ODIgNzY1MjMzNDZlMjBkNzZkNWE5ZjM0NDA0Y2I3OWUzNmU3ZWIxMDg2ZCBsZWdhY3ktdHJ1bmsKKzc2ODgzIGQxMDZiYTYxMjZhMThlYzBiOTEwZGIzZmYwZTUzMDY2ZjVjNDk5YzAgbGVnYWN5LXRydW5rCis3Njg4NCA3MjM0NjBiOTBhZGQxNGFjMDA0YjQ1NTQzZWViNTIxOTEwMzdmZDYyIHB5M2sKKzc2ODg1IDBlZWM2MzNlZjBlMzIwZTI3NzkzZDhjYjQ2NGQ4M2RjNjVmMWJjOWIgcHkzaworNzY4ODYgOTYxM2VjNDFhZWFhYTA1NjYyMmZkOTVhZmIxNjFlZjc0MTllMjk3ZSBsZWdhY3ktdHJ1bmsKKzc2ODg3IGEzNDlkYmVhYmFlZTVhMmZkNjFmZDYwYWI4NjY3ZjQ0OTdkMTIzOTMgcHkzaworNzY4ODggNWIzNzU4ZWU0MzU2NmY5OTNiYjhlYjA3NGI3ZTA1ZmJjMmZjMjI2NyBweTNrCis3Njg4OSAzNjIxOGI2ODFkOWVkYjE2N2UzMTg3ZjI3YTExODRjOTExYzE4MjVjIHB5M2sKKzc2ODkwIGRkZDFkYjVkMmZlMDBlNjg5YmMxNTZmYzczYjBjZDg3OGE1MWJkYTYgcHkzaworNzY4OTEgMjYyMTMwZDcwMzA2Y2JjYmMxMjhhNDA0MjQyYmY4YTBkOWM2OTNiNiBsZWdhY3ktdHJ1bmsKKzc2ODkyIGI4Y2E2MWQ2ZTI2MjNhNWNmMDJlMDgzNWIyMTlmOTc5NzFjODM0ZjIgbGVnYWN5LXRydW5rCis3Njg5MyAyZDc1ZGE2NWQyOTBlNWRlNWQ5NDA2OWI1MDE4ZjE4ZWM3NDczZTdmIHB5M2sKKzc2ODk0IGFlZWYyZjI3ZjlmMGNmNmM5YTU0MWVlMjk3YzBiYTQyNDdlYjE3NDcgcmVsZWFzZTMxLW1haW50Cis3Njg5NSA3YmFhNTViNmU4YzkxODhkMDI4OTQzYjk4NjFmZmM4ZjJjNWI0ZDhhIHB5M2sKKzc2ODk2IDEwMTMyMDg5OTA0MTdmNGVlMGJhMGExN2VmMTJiNzA1YTM1MmIyYzcgbGVnYWN5LXRydW5rCis3Njg5NyA2ZDQ3YjI0OTQ3MTM3ZDFlMWJhMTg2OTI3ZTA0MWI3YWUzZmFiMzA1IHJlbGVhc2UyNi1tYWludAorNzY4OTggNzdlMjMxMzEzNWRkOWJhMDE4YmE2OWU2OGFiZGE5M2M2MDNiZWY2NyBsZWdhY3ktdHJ1bmsKKzc2ODk5IDliODQ3MDk4Y2JmOTMwNmYzNGNiMGJmZWYwZTkxZGViZGM2MzU0MDkgcmVsZWFzZTI2LW1haW50Cis3NjkwMCAxOGViMDA5MTRhZWU1YmFjYTk4Y2QyODQ1ZWVjYjU1ODFkODY4ODFlIHB5M2sKKzc2OTAxIDZmOWMwNzQ2ZjFlMjA1MDY4YTgzNmE5NGFiMDNiMmU1NjE5OWY1ZmIgcmVsZWFzZTMxLW1haW50Cis3NjkwMiBhMDg4NDBjZTg4ZDM0YzFmMDM3OWRmYTlhMmY4NTkxM2E5YTA4YTlkIHB5M2sKKzc2OTAzIGVkNGQ1Y2Q0N2VlOTYxMDIwN2M0YzBkNWU5MTY3MzQyMTRhYjU0NjQgcmVsZWFzZTMxLW1haW50Cis3NjkwNCBmN2Y1ZTFkMjdlMDYzMDJlNTUzMmZlMWRiYzFiOWFjMWE0OGYwNGNlIGxlZ2FjeS10cnVuaworNzY5MDUgODk5OTY3NTVjZjM5ZTcwYmM0NmU3NGM4NTM4OTYzZWI5NzBjMzNmOCByZWxlYXNlMjYtbWFpbnQKKzc2OTA2IGE0NmRkOGRhM2MzMDgyN2MxMTAxOGZlMGE2MTBkOTg2ODFiMDliZjAgcHkzaworNzY5MDcgZTIzZjVlYzkzMzE1ODU3ZDcyMjliN2JkMmQ2YjFiNDk3MDI4NjVmMiByZWxlYXNlMzEtbWFpbnQKKzc2OTA4IDEwOTcwZjY0YmEzMzFiMTg5YmQ4ZTk1NDJmOTU5MTMyM2RkMDZjZjMgbGVnYWN5LXRydW5rCis3NjkwOSA3MGNjMjg4ZjkxOWUxN2VhNjAyMzYzOWE5NTMyMmU3NDY2M2JhZDZkIHJlbGVhc2UyNi1tYWludAorNzY5MTAgNzI0YTBkYTg1YzQyY2FlNzkwODZiZDc4NDlkNmU4OWZmZDkxODAyMiBweTNrCis3NjkxMSBkYzFhYWRmOWZhNGEzYzZjZTI0NjAwZTdkZDZiZGQ2Mjc1MzliNGI5IHJlbGVhc2UzMS1tYWludAorNzY5MTIgOWM5NTc1MmVkZTEyNTNhOTMyMGZkY2RjNzdlMTRlZWQzZWFmOTU3NSBsZWdhY3ktdHJ1bmsKKzc2OTEzIDUzMWIxMWE2YTEyNTVjZGVhZjRkYTA0YjRjNmVhZGRiOTc1NWZjZDIgcHkzaworNzY5MTQgZWJlYjJlNzc2M2Y1YTNhNTgzYmU1ZTc4YjUwYjA4YzE3NWU0Y2UyMyBweTNrCis3NjkxNSBlZDEzMTJjZGI5YjIwYTk5ZjA0MzE3ZTVjMWQ5MTBmNzcxNjc5ODE5IHJlbGVhc2UzMS1tYWludAorNzY5MTYgNWNjYzVkNDA2OGMxYWVlMjYyODY2NGE0MzQ4NDc5NGUyMDRlZTQ4YiBsZWdhY3ktdHJ1bmsKKzc2OTE3IDUzZjIxZjA4YWYwZDQ0Yzc3NGQ0Y2Y4MjFjZTIxNjNlMDJlOGQzYTUgcHkzaworNzY5MTggZDUxNTBiMjkzNGZhNjBkMzc0MWJmNTM2MWNhNTI5MjA2ODcyN2ExOCByZWxlYXNlMjYtbWFpbnQKKzc2OTE5IDZmNjAwZTkyYTBmNTI3ZGE2ZTVmN2IyYTc5NzhiM2FkOGQxMmZlNDMgcmVsZWFzZTMxLW1haW50Cis3NjkyMCA4OTZiZjQ5NjI4YWJmZDNiMGZkODg1YzQ3YjgxZDYwMjk1YmZkOGNkIGxlZ2FjeS10cnVuaworNzY5MjEgY2NhMDk3ZWEyN2I5YzFkODY4M2ZlNDJiYjdhMjNiNTJkMTRlMjljOSBweTNrCis3NjkyMiBlOWRhODEyZjRmZmY0MzE0NDIyOWUxNDRmZWQ4MTlkZWU2NjU2N2JhIHB5M2sKKzc2OTIzIDIwODlkOWMxYWUxM2UxYjNiYTBkNzQ4MzZjOWZlZTkzOTVhNjk3OTcgcHkzaworNzY5MjQgOWU0YzkwMWYwMDkzY2ZmMDRjN2M2OGVkZmYzZjE1ZjUyNWRiMjFlNSBsZWdhY3ktdHJ1bmsKKzc2OTI1IGQ4OTBjOGZmYWQwMmY3YzAzZjIyODA4ZTU5OGZiMWZkYmZjNTc0NjUgbGVnYWN5LXRydW5rCis3NjkyNiBjOWE1YjNhNDYwZmY2M2ZkNzUwZTI2NGM1OTY4Y2RiNjdlZGYyYjA2IHB5M2sKKzc2OTI3IDY1MGIzMjY0MDNjZDI2YmY1ZjJlNzk1MzA4OTE5ZjA4MDhmNjZjOTkgbGVnYWN5LXRydW5rCis3NjkyOCAxZjhiMzYzMjAyMThiODQ0NTJlNDQzMDAwZDg3YTcyMjk4Y2M1OGJlIHB5M2sKKzc2OTI5IDc4NGJkYzdiMTlhYWYzYTFjY2ZlYmU5M2MyZDcwNzc1YTNjMmM2MDMgcmVsZWFzZTI2LW1haW50Cis3NjkzMCA3OTQxYTlmODY1YzIyODNjM2MzYzEyZTczMDIxMzA5MWFlY2M3ZGMxIGxlZ2FjeS10cnVuaworNzY5MzEgNmQ3NDY0ZGJiNzE0YjE0ZWE3YzJlMTNiYzI4YTU3YTM4ZGFiODBkMiBweTNrCis3NjkzMiAzOTE0OWQyMjVlYzdhMTUyM2NlMmE4NTUwMjkwYzM4MGU5ZmU1N2VlIHJlbGVhc2UyNi1tYWludAorNzY5MzMgMDIwNTRhZmEzNjJmMWIzNjRhODk1NmZkMWI1NmFiMWM1NzY2YWEwOCByZWxlYXNlMzEtbWFpbnQKKzc2OTM0IDA0NTg4ZWZmMjVhMTkwOTU4YTM1NzMxNGE4NzNhNjBiZDVjZTE0ODkgbGVnYWN5LXRydW5rCis3NjkzNSAxYzJiM2Y3OTVkMWIyM2UyMTliMDRkYTRhYzgyZjc4YjNhZGQ4YmVhIGxlZ2FjeS10cnVuaworNzY5MzYgMWRhYWMyY2VlZGJmMjVjMjZjYThkMDY3MzljMzM1ZjY4OTk1ODA0NCByZWxlYXNlMjYtbWFpbnQKKzc2OTM3IGNiMDVjY2Q3NTk5NmJjYzAxNjVlMDBlODQyMjFiMmVlOWIxZDM3ZWQgcHkzaworNzY5MzggNTgxMzM3MTQxODljYWE4NTg0M2JmZWU1NGUzMDA4NDg3Y2Q1MTdmZSByZWxlYXNlMzEtbWFpbnQKKzc2OTM5IDY2MzBlMzZhZjljMzliMDYyNGNhYzE1NGRjYTIzYTU2ZjljZTMyYmUgbGVnYWN5LXRydW5rCis3Njk0MCA1NTAwNTNiYWFmZmE3OWQ0YzQ1ZTcyNzg3YmVmNWM1ODhhNjQ4ZTE4IHJlbGVhc2UyNi1tYWludAorNzY5NDEgNGFjZTA4YWFjMzc2MzljMzY1NTA4M2YxZmUzZmZiNTRiZmM4NzI2NCBsZWdhY3ktdHJ1bmsKKzc2OTQyIGQ4NTYyMDAyZjhlNWMxYjZiY2RhNjFiYjkzODk0YjM0NDFmYjQ1NWIgcmVsZWFzZTI2LW1haW50Cis3Njk0MyA0NjU4MDk0MTZhODJmMGJmMWU5MDhiOGUwZDBmYWVjZjEzMzFlZWFhIHB5M2sKKzc2OTQ0IDRkNDMwZTU1YWQ3YzU4YWRlYTQ5ZmQzYzRmYTZmM2NhYzBiMGY4ZWEgcmVsZWFzZTMxLW1haW50Cis3Njk0NSA2YzFiMjA2NWQzNWNiM2JjZmUxY2VjZDBiMTJmN2EwN2NjOWQxOWVlIGxlZ2FjeS10cnVuaworNzY5NDYgYmYyZWZmNjBlYWUyYmFhMTc3ZDkxZTdjOGFmY2JkNDZkNWRkZGRlYSByZWxlYXNlMjYtbWFpbnQKKzc2OTQ3IDk5YzBhYjNjZDFmOTU2OTgwN2U3N2ExODIxMTczZWIxZDQyMzE1NmUgcHkzaworNzY5NDggNzk3MTdiN2QzNzlkYmZmZWJiNjc2NjhjYjk5MDIxODk5YTg3MTExMCBsZWdhY3ktdHJ1bmsKKzc2OTQ5IGIxZDcyZDg5NDYyMTdiMTEzMTgyOThkNTU0MzQwZWFkMTNkMjAwNTUgcmVsZWFzZTI2LW1haW50Cis3Njk1MCAwOGRmMWM5ZWE2NDNiNTVjY2FjNjQxMDRiYjg0YTIyM2JkYTMyM2JlIHB5M2sKKzc2OTUxIGQwMjVmNDk4NzMxOTFhMDM0MjU4YTAyNmZhOTc5ZWUwZDdjZGI2MmMgcmVsZWFzZTMxLW1haW50Cis3Njk1MiAwOTZiMWQ5OTc4NTM4YmIyYzg4NjBhNDM3YjA2N2ZmYzc4ZTJiMjExIGxlZ2FjeS10cnVuaworNzY5NTMgMTc3MjE5NTQwNWU3ZWE3NTdlNDllMGZmNTY0NjBiM2U5MjdlOGVmMyByZWxlYXNlMjYtbWFpbnQKKzc2OTU0IGVhNWU1NGJkNjI3NGMzMzQ4NjlmYzUxYTE1Y2NmZGUwNTQ4ZjJlMmQgcHkzaworNzY5NTUgODZiNWRmMDQ2MzRjMDY2ZTMzNmQxZjczZTM3M2NiMGViY2YwYjhkNyByZWxlYXNlMzEtbWFpbnQKKzc2OTU2IDNlMmI3OTY1YWRhOTk3YmVhZTQwMmFjMGY1NWRlMWI0MjNlZjk3NDAgbGVnYWN5LXRydW5rCis3Njk1NyAwZWUyYWU3NWNlOGY0OGI3OWJiYjNmNzhiOWE0NDkzMDk2ZjQ0ODBmIHJlbGVhc2UyNi1tYWludAorNzY5NTggMzlhYjFhMzZiMjA5ODY2YTI1MWQwZGVjMjgzYjhiZDFlMTk2OWQ3NSBweTNrCis3Njk1OSAwOWMxNzFmYTU5MzVhMWUwOGZkMjJjMTJhMDAxZGFiYTZkMjE1NjI4IHJlbGVhc2UzMS1tYWludAorNzY5NjMgMjhkZTgzZjE3ZDA4OWU0NTQ3ZGE2MzYxMzhlMjg1NDQ1YjZkZTZhYSBsZWdhY3ktdHJ1bmsKKzc2OTY0IGE3YzRjNzE3YTljNzg4MWFjYjMwMjUyM2UwMDAwNTkzNTA3NTQyZjIgcmVsZWFzZTI2LW1haW50Cis3Njk2NSA0OGE5OWNmODE4YzkyZGVmNjA4M2M4YWFiOThhYWI2ZGIxYzhjYzRmIHB5M2sKKzc2OTY3IDdiMmVhYTM0Yjg2YjM2NzA3OGY3ODY4NmU2MDQ1NWNhM2QxMDAwOGEgbGVnYWN5LXRydW5rCis3Njk2OCA2ZDA5ZTNmZGY4NDBjYmQ4MWI4ODk3NjhiZGRkM2YwNTMyYzE1MDUxIGxlZ2FjeS10cnVuaworNzY5NjkgNzYxM2RlZjA5OWQwYmMwYWY0MmI2Y2RiNzg4MDZjYmM5YzdiM2Q5MiByZWxlYXNlMjYtbWFpbnQKKzc2OTcwIDgwNzE5NTliYzMwNmM1MWU0NjU2NjZjMjZhMmU2NWMwOThjMDI5NDMgcHkzaworNzY5NzEgNTBmMzA0NmQ0ZmEwMDI1OGZmMjZkNWU0ZmEyMzJjODJhMzg4Y2M1ZSBweTNrCis3Njk3MiA4Yzg2Y2Q4MGFlMjYxYTBiNzliNTQyY2MyYjY2MTk2ODM4NzkxZDZkIHJlbGVhc2UzMS1tYWludAorNzY5NzMgMTNlNjJjZjAyYmMzYTEwODIyMjhjODA3ODMzZDBkNThmODk1Yjc5NyBsZWdhY3ktdHJ1bmsKKzc2OTc0IDA5YzRmMWI5NDM5YzlkZTdlNWRkOTUyOWE3YjhiNGNiMjdkNDZhYjggcmVsZWFzZTI2LW1haW50Cis3Njk3NSBkNzYxMGVjOTViY2UyOGNkZjgxN2FjMGNhOGFmZjUxODUwMTY5OTkwIHB5M2sKKzc2OTc2IDc1NTliNzBmOTg5OTM4ZDFmYjFjYzEwMWVjMDYwYzQ0YjNhMWNjYTkgcmVsZWFzZTMxLW1haW50Cis3Njk3OCA3ZjVjYmMyOGY0MzMzYzliNDNhMzY4ZWNlZmU1Y2I1NzUyNjRhNDI5IGxlZ2FjeS10cnVuaworNzY5NzkgZTczMDAxYWZjNTZmMDZkY2Y1YTY1MWVkMGFhYjFkOThhOTVmYzg3YiByZWxlYXNlMjYtbWFpbnQKKzc2OTgwIDk3NTFkZGNjMTg4MjgzYWI4MmY4NWE5NTk1NjVhYTQ2OTYzOThlNzcgcHkzaworNzY5ODEgMzdhMDU5OGQzMzJmNzUzOGIwZDNiNDY5OTM1NTE0ZjFjMDFlNjFhYiByZWxlYXNlMzEtbWFpbnQKKzc2OTgyIDJlNDg0MTkwY2ViNWExOTk0ODAzM2FiNmZmMDFmMWM2NzdmNzljMjkgbGVnYWN5LXRydW5rCis3Njk4MyAxYTI1YjQyMGVjMDBjYzRmOTZkZmNiZWFiNjExYWY2MmNiZmQ3OWM5IHB5M2sKKzc2OTg0IDYwNmE0NWRiZDEwY2U1ZTNlNWM2YzdkYTJiYTJhZDg0ZjVhMmJkOTMgbGVnYWN5LXRydW5rCis3Njk4NSAzNTI0OWU5NTYzYWFmMTkwZDMwYzU1ZmRhYTNiM2VjZTY1YjQ0YzdlIHJlbGVhc2UyNi1tYWludAorNzY5ODYgZGIxOTdiMjhlMDQ1NDQzYjVhZmM2OTg3NmUwNGYzODkzYjM2NGZiZSBweTNrCis3Njk4NyAyMGZjZWJkMGNiNWRkODZmZTU1YmFkMjkwNjIzMTRlZmNkYTNhODM5IHJlbGVhc2UzMS1tYWludAorNzY5ODggYWVkMzIxODc2NDkwOWVlM2ExZjdjNzRlNWZhMmUzZjEwOGNmNWMxNSByZWxlYXNlMjYtbWFpbnQKKzc2OTg5IDRkM2I5YjRjYWZmMDZiMzVlNWUyMGYxNzNlODZkMjY4Yzg5ZDhlYmYgbGVnYWN5LXRydW5rCis3Njk5MCA0NDJkMmI5ZDgxZTA5OGYxODE3Mzg4MDBkZTdkNGM2YTVkYjMyMzk0IGxlZ2FjeS10cnVuaworNzY5OTEgZjMxMTUwZDg0N2MzZmU0M2I0MTg2YTQ3MjY3MjEyYTY0N2QyMjllMyBsZWdhY3ktdHJ1bmsKKzc2OTkyIGJlNzg4NjYwYTkzOTMzOGY2MTAxNGYxNmM0MjIxNDExZjEzNjQ3NTkgcmVsZWFzZTI2LW1haW50Cis3Njk5MyAwN2EyODMwOGNlYmIwNjk0MTNjYmVmMGIwZDI2NmQ1Y2YxZmZhYzJjIHB5M2sKKzc2OTk0IDY1ZGUwYmVlMGZmMmVjYmFlNjVhODZhZjcyNGI2YWJhOWJiMjIzN2YgcHkzaworNzY5OTUgYjk5MjdlZWUyYTY5ZmE4MjI1YzdiOWYyN2UzMWZkMDhhNzg5YTQ3NiByZWxlYXNlMzEtbWFpbnQKKzc2OTk2IDMwYmVkYmMyOTc2MzUyMzI1NTFhYmYxODI2ODBjMWIwZDRiZWU2N2YgbGVnYWN5LXRydW5rCis3Njk5NyA2YzgxMzAxNTJlODhhMjAxZTUwNjVjY2JmZWY0OGFhOTI2NWFhNjBiIHJlbGVhc2UyNi1tYWludAorNzY5OTggY2Y3NGQ5YWY4OTVhNjk0YmYwY2ZlYzJlODg1ZDJmN2U0MDdhY2MzYiBsZWdhY3ktdHJ1bmsKKzc2OTk5IDE1MjA2OTc5MjAyMDFiMDI4OWQ4MWRmYmJiYTFjODQ4MmM0NjJiN2EgcHkzaworNzcwMDAgOWRjNTczYjZmOGY1ZmE3ZjRjN2M2YzY2ZGVlY2UzNDM0MGRkZmQzYiByZWxlYXNlMjYtbWFpbnQKKzc3MDAxIDUzZTMyMTI1OTU1NmU1YzBhNWNlOWI3ZWNmZDhiZWE2ZmZjOTFmNGEgbGVnYWN5LXRydW5rCis3NzAwMiAwNzJjM2QwZjA1MWU5YjhiYzA1NmY4Mjg0MGM4OWYyNzZhZmQxNGZkIHB5M2sKKzc3MDAzIGRmMjYxMDkzYjMxY2Y0ZGRkYzgxMDZhNWZlOGM5ZjA5NzYyYTJlN2IgcHkzaworNzcwMDQgYmQyODc0NWM2ZmU3MGQ3Mjc4ODYyZWE3ZGY4NGJiMThjYzhmOTM2NyByZWxlYXNlMzEtbWFpbnQKKzc3MDA3IGJhNzRkNTg3NzRiNzBmNmE2Yzg3NjY2NjYxMjdjZjE3OWIzMDU1OGQgbGVnYWN5LXRydW5rCis3NzAwOCAxOGE4YjJiZmM5YzJlYmM4YWI0ZDRiZDAyMTZhZTg4YTZiYjYyZjFkIHJlbGVhc2UyNi1tYWludAorNzcwMDkgNDI5YTNlMzhlNDZiZjVkNzg1NzNmN2EzYzM4ZWUzZTY2N2QwNzRlOSBweTNrCis3NzAxMiA5M2Q1Y2RmMWM0NTczZTg2YTQ5MzJkZjdjNGViYTI5ZDc2NWJmNzU2IHB5M2sKKzc3MDEzIDNhNzM2YWQ2NjFmYjY0M2MzODNhYWY3YmE1NDE4YmNlMDNkM2Q5NGMgcmVsZWFzZTI2LW1haW50Cis3NzAxNCAyNTE4NjBkYjM0OTNmMzhjYjgwN2Y5N2ZmYWZlZTBhODMxYjJlMzNhIGxlZ2FjeS10cnVuaworNzcwMTUgMjQwMDZjYTU2MmQ1YWI5NWNmZWQ1ODU3Njg0OTQ0YzJlNzY0OWE4YiByZWxlYXNlMjYtbWFpbnQKKzc3MDE2IDRhYTBkODE2ZWU1YmEwNWQzNWMzMmQxODI4N2Q5ZTNhODVjZmMxMzggcHkzaworNzcwMTcgODAyMWI5MGI1NmVkYmI3ZjQ4Y2FlNDJlMzQ2NzAzNDUyNzM0YmQzZCByZWxlYXNlMzEtbWFpbnQKKzc3MDE4IDFjNGU4OTUyMTg0N2UwMDM4MjIzOWIyYWZjOTNjMjk4ODhjZjliYTEgbGVnYWN5LXRydW5rCis3NzAxOSAxM2UyZjhhNzQ5YzQ2NDIwYTliMGEwZTU5Yzk1ODg1ZTA5NTdhNDkzIHJlbGVhc2UyNi1tYWludAorNzcwMjAgODg2Mjc1ZmZhZmQ2YjNjNjU2MzhmNmRiZTljMDZhNjc0YjI5ODUyNyBweTNrCis3NzAyMSBlNzU3ZmE3Nzk2MDFmNTA1M2U0MDJiOWJhYjMyYTU4OTYwYWYxN2FmIHJlbGVhc2UzMS1tYWludAorNzcwMjIgZGYyY2ZjZjlhMDczOGUxZWE4NDE3NTJlNTAwYTQ3OTQ5ZGI2ODFjNiBsZWdhY3ktdHJ1bmsKKzc3MDIzIDFmODZlMGU0Njk2OWZhNDIyMzEzZGM1M2ZjMTIxOGQ5OGNmNzExNWMgcmVsZWFzZTI2LW1haW50Cis3NzAyNCA1NTk0MjUzMzMxNzg3ZTEyMDQyMDlkNGNiNTQyNjMwODZlYmVkN2M5IHB5M2sKKzc3MDI1IGQxZjFhMDU5MTU0YmE5ZjEyMzA4MTRiYTdjMTdjYTNmMTI5NDRkMDUgcmVsZWFzZTMxLW1haW50Cis3NzAyNiBjYTI0ZWExYTJhZTJlZDg3MjYyNWFhYzQ0OTkzYjQ0MTg1ZDY5MTVlIGxlZ2FjeS10cnVuaworNzcwMjcgMWRmNzNiZjM4YzU1Yjg1N2RiODAyMTFiYTQxZmE4YjRlMzcxMjc0NiByZWxlYXNlMjYtbWFpbnQKKzc3MDI4IDM1ZGU1N2Y1MTU5OTU3MzQ5NGNmN2EyZDhlNzI3NWI2NmE3NmJmZDkgcHkzaworNzcwMjkgNzFlNmEwZGZhZmM4NDcxNmY0NjdlOWUzMzIxOTRjNzUzMzllOWVmZCByZWxlYXNlMzEtbWFpbnQKKzc3MDMwIDlkYTBjZjJkZmZjYzllYTU4YzUyMDE5NzE0MTA5Y2FkZTE2NmQ1OWIgbGVnYWN5LXRydW5rCis3NzAzMSBhYWViNjViYWIzYzA1MWZiNWJiOGQ0OGUzYmVlMjQzN2M5YWFjNjVkIGxlZ2FjeS10cnVuaworNzcwMzIgOTRlOTU3Y2ZkYTM4M2FmOThmOGQxODg1MmExNmNjMGY1YzBlMjBjOSBweTNrCis3NzAzMyA0NjM3MWIyOGZkZDExODUxY2U1MDE1MDE0NDA3YTUzNGY4NjJhNzkxIGxlZ2FjeS10cnVuaworNzcwMzQgYmM1ZWM1MGM1MGY5ZWFiMzMzNDU3NDAxY2Q1M2YzNmU2MTEyNDA4NyByZWxlYXNlMjYtbWFpbnQKKzc3MDM1IDNjNDEyNDQ3ZWZiMjAzMGI0NjY1ODViNjNiNDU5YzU2YjkzMmUyNDYgcHkzaworNzcwMzYgZTdkY2M3NDg1ZDBiZDgxYzU4ZjgxMDdhMDRmZDdjYzRkNDAxYTExYyByZWxlYXNlMzEtbWFpbnQKKzc3MDM3IDA4NTU4MTg4NGU2ZjYzMjJlYWNkMTRiNzVjYjkwMDZmODUzNmI5NDMgbGVnYWN5LXRydW5rCis3NzAzOCA4NzBhNDZjOGE2NzA1ZGIyOGNkOWM4ZmE2MDc1YjgyOGI3YWRjZDE0IGxlZ2FjeS10cnVuaworNzcwMzkgMGVmOTRkYTc1YmZkYTZkNzNlODgyNzc5YmMxMzVkODU1ODczY2EyZCBweTNrCis3NzA0MCA0MjdjMjE0M2UyYzliYTFmODdjOTYyMTc3NTE0NzliN2Y3ZWM0OWJkIHJlbGVhc2UyNi1tYWludAorNzcwNDEgODQyNjM0Mjc2ZDAxMWRjYjFmNDJmMGNhM2I0NjNiZjFhZjE5NWIyZCBsZWdhY3ktdHJ1bmsKKzc3MDQyIDNiODZiMjNjNThmZTQ0MGJiMGQ4OGMyN2UyNDMzNjMyOGQzODk2NTcgcmVsZWFzZTI2LW1haW50Cis3NzA0MyA3MjYzMjNmZDg3Y2E1MGM2MDg5NGU4NTc3NTJhYmYxZTZiZTEyMGU4IHB5M2sKKzc3MDQ0IDM0MzRlNmIxMWE5MjE4ZWU4ZWFlZWM3YjViYTRkNTIxNWIzNWMzY2EgcmVsZWFzZTMxLW1haW50Cis3NzA0NSA4NjM4N2I4YjlhZjhiOWQ1ZmY2M2FiMzhhMzk4ZjNlZmZkMDc1MzA5IGxlZ2FjeS10cnVuaworNzcwNDYgOTQyNGI4NGEyZWM5NTJhMzBiOTQzMDJmZThjNzdhNDkyYjQ2ZGMyMiByZWxlYXNlMjYtbWFpbnQKKzc3MDQ3IGY1NjBlMWE3NzQ0ZWZhZDYyYjk4MmI5Njk3MzVjODcxNjM5YzVmYjUgcHkzaworNzcwNDggOTYyOGViN2U5OGRmYjc4MDEwYTY3MDNhMDk0NmUwMWRkMDFiNGMxMyByZWxlYXNlMzEtbWFpbnQKKzc3MDQ5IGRiNzk2NTY3MTA5Y2I0ZWNlZmUyOTY0ODc2YjJmZjI2Yjg0OTVmN2IgcHkzaworNzcwNTAgNmNhMWI5Yjc4YzNmZDc5YmI3MWY3MWY2OTA4YTFjYTlkYTYxOWE1YiBsZWdhY3ktdHJ1bmsKKzc3MDUxIGU1YzRjOTcxMjY2MWFmM2UyZTgwNTI4MmRkZDlmNjU1YzkwMGRlYjEgcmVsZWFzZTI2LW1haW50Cis3NzA1MiA0OWRmM2NmOTE5ZjdkYmNlZmZkMjViOGMxODk4NzQyZjM4MjEzZThlIHB5M2sKKzc3MDUzIDIxMDYxMTJmNWIwNzYzOGVjYjRiOGY5ZWE1YTBjZTRkY2I1YzI4OTEgcmVsZWFzZTMxLW1haW50Cis3NzA1NyA1ZGM1ZDZjNmY2NDE3ODk4MzZjZTU5ZDRmNTNjZTdmMzYwYjFlNGYzIHB5M2sKKzc3MDU4IDY0Njc2NDk5NDEyMDA5M2QwMDZhNjJlYjUwZDlhODMwMjZiMDdhYzAgbGVnYWN5LXRydW5rCis3NzA1OSAxNTEyOWM4MGIyZmVkN2M1MDA0MjRjNjAxNDRkNWM3YTFmN2QwNjkxIHJlbGVhc2UyNi1tYWludAorNzcwNjAgNjg4MTFkZmU3MDZjZTk0ZDMxZTQxZWEwNTRjMTY5Y2RkZWU0ODgyNSBweTNrCis3NzA2MSBlMzcyYTgwNTZjOWQ1MzdkNmZkNDk0MWFmNTEwNjU0MjAxODdjMmUxIHJlbGVhc2UzMS1tYWludAorNzcwNjIgYzRlNjA5ODg4MzRkZjBmZDQzN2FlMzQyMmRhMGNhYjRhY2Q2ZmNlMCBsZWdhY3ktdHJ1bmsKKzc3MDYzIGFhYTVhYjdiOTQyYThlNDQ1M2YxMzEwZGNhZGQ5YzVlNTdiMDA2YmYgcHkzaworNzcwNjQgNTYwYjg3NjY5MTlkNWQxNWM0NDJhMTJjOTk5NzlkZmI1MWEyZjgyYSByZWxlYXNlMjYtbWFpbnQKKzc3MDY1IDIyOTA3OGU0NzAxMGM4YzhhN2JjZDA3OWM4ZDA0ZjdlOGEwMzkxNmEgcmVsZWFzZTMxLW1haW50Cis3NzA2NiBlYjBiYmFiYTAzNjFiNzQ2ZmJhOTcwZWRiNTg5OTU3MmM5YjBmN2YxIGxlZ2FjeS10cnVuaworNzcwNjcgZGQ2NzI2Yzk3OGM2NjY5OGY0ZDY5MDUzOGQ4Mjk2MmQ2NmUyYWVjYiBweTNrCis3NzA2OCA5NTcyODkwMjljMDUzNGU1ZGUyNGZjYTkyNzJjYWY4MGZjMjYyNDg4IHJlbGVhc2UyNi1tYWludAorNzcwNjkgODVlNzgxZjU5OWJjOGE5NGY1NjdiMWEzNjQwNGZjZGFkZmIyNzExYSByZWxlYXNlMzEtbWFpbnQKKzc3MDcwIDhlODJmYjA0M2FlODc4NTllOWRjYjVmZTAwYTcwMGRjODUxMWQxOTEgbGVnYWN5LXRydW5rCis3NzA3MSBhZDdlNDE0MWEzZWI4M2Y4NmM2YzU2OTA0MGRlMzUzYjE3NTQ0NGQ1IGxlZ2FjeS10cnVuaworNzcwNzIgNzMzNjViYjI2ZmQ2NTBjYzA0NjBjZjM1ZDcxZmQwYjZiMTg4ZWZjNCBweTNrCis3NzA3MyAxZTM3MTgwZWVjYWVhNDQzZjE0OGY0YjM3OTBiYjYxNGJkNWNjM2ZhIHJlbGVhc2UyNi1tYWludAorNzcwNzQgNWE5MzcxMDE3ZWRmOWExYTUwMTNmZjhhMDFkMGE5YWVmM2VkZWEwZSByZWxlYXNlMzEtbWFpbnQKKzc3MDgxIDUyNWY2N2JlZWI4OWM3ZmEyMGNhZmM5ZTg3MTg2ZWUwMDExMjY3YWEgbGVnYWN5LXRydW5rCis3NzA4MiAzMDc0MWVmNjU2MTczOGRmNzBjYmUyNzU5ODc1MGRlNDA0ZWNlMGJhIHB5M2sKKzc3MDgzIDU3NDMzYjgzM2IyYThkZjM0MTE0NWVkMGUzMjlkOTljNjNjNTFmZjEgcHkzaworNzcwODQgY2JlMWJiZTU0NGM5ZTQ2YmRhMTU3OGYzNjBiMTczMTVhY2M5NDMwNiBsZWdhY3ktdHJ1bmsKKzc3MDg1IGExMWE4ZTUzYzQ5NWNlOGJjNzcxMjM1NWRiZGY1NmQ4ZjVjYzQ2N2MgcHkzaworNzcwODYgZmUwNDU5ZGM5ODg5ZjkzNzZlNmRlMWE1MTQxMzNjOTA1MjkzOGUzMCBsZWdhY3ktdHJ1bmsKKzc3MDg3IGZmZDgwMGVmNDZlYTA1NGU5MmVmYjQ5MDZjZDI3ZjE0MzE2M2U4ZjYgcHkzaworNzcwODggY2YzOWM1ZTQ2MmY5NGJjZTU4MTViMmQ2OGIwYmFiNTNhZGY1YmFlMiBsZWdhY3ktdHJ1bmsKKzc3MDg5IGMxOTcyZWVmMzU3OTVjZTJkNGExMzEwNDIxNzNmMjg3YTExZTNlMGQgcHkzaworNzcwOTAgYzE0YTAxNGFmOTU0ZWJhY2YwNDBjNjljNjRhNzA1MWMxNjNlYmVjYSByZWxlYXNlMzEtbWFpbnQKKzc3MDkxIDVlODRhYmZkZmVhYmQ3NWE1MTVjNDY4YTE4YzNlMjE2ODgxZTFiMGMgcmVsZWFzZTI2LW1haW50Cis3NzA5MiA5YjRiNDNhOGM5MTMwNTk1NTBmY2Y4NmU1Yzg3YjhlYmQwODBkNGMyIGxlZ2FjeS10cnVuaworNzcwOTYgMzc0MTkxZTEwYTQ1YmU2ZDU2ODIzYWNhMTc2ODljZGIyZmFmYWRhMyBsZWdhY3ktdHJ1bmsKKzc3MTAyIDVjOGM0ZDJmOGI3MTIwZDFkZWE4Yjk1MWM5Y2EwZGI5MDg0YzM3NjEgbGVnYWN5LXRydW5rCis3NzEwMyBmNzY0ZTQxMjZhMjMxYmEwYjdjYzY4YjViZTQ4ZDEwNTdhZWY3ZGRmIHB5M2sKKzc3MTA0IDNiNDZmMmQzYjc1ZDAyZjM1NmMxYWZiZWNhM2ZiNWNhZmQ2N2E3ZDIgbGVnYWN5LXRydW5rCis3NzEwNSBlYzhiYjE1MTRkNjcxYTYzYmQ3YzczY2IzNWRlYmRjOTYwMGVmM2ZhIHB5M2sKKzc3MTA2IDE1ZWFjNzY1Y2MzNWQ5NGQxY2E5ODc0NjA0MjEyYjUwZTZkODVlYWQgcHkzaworNzcxMDcgMDQ5ODAyNzcxMmJmNDJjMzBkNzJiOWM2OGVkOTM1YmVkZWE1MmY3MSByZWxlYXNlMzEtbWFpbnQKKzc3MTA4IDNhZWE1N2RjMjFhOWIxZDNiODYxNDhhZjUwZGNkZWI4NzgwMWRjZTYgbGVnYWN5LXRydW5rCis3NzEwOSAzOGY1OTNhODNjZmM4NDIzZjQ4MGQ4ZDZiOWExMzZkOGRlOWZhNzcxIGxlZ2FjeS10cnVuaworNzcxMTAgOGFkMzM5OTIyMDJhZWEzYTZhMDE3ODJlMDIxMzEzNTI1OTNlMzBhMiBweTNrCis3NzExMSBhYmU1MDA4YjkzZTlhNGM3MzJlYzUzMTRkYWRkNjU4NjIzNGI0MTI3IGxlZ2FjeS10cnVuaworNzcxMTIgNjFhNzcwZjdiOTUxYjNmOTIwN2U3ZDY2Yzk4ZTRjOTAwY2JhOWUyZiByZWxlYXNlMzEtbWFpbnQKKzc3MTEzIDU3NDU2ZjE2OTQyZDk5MDBlOTQ1MzY2MDZkYTgyZGViYWRkYzU5NGIgcHkzaworNzcxMTQgNzBkNzQ3M2FmY2ZlZjY3Yjk2NjJkYTJjMWNjNTRjMWNhNDJlN2ZmMCByZWxlYXNlMjYtbWFpbnQKKzc3MTE1IDcyMzNiYzM0ZmQ0NGUyODhmYmU2ZTE1ZmRkNzM3ZjllNTI5MjFjN2YgbGVnYWN5LXRydW5rCis3NzExNiBlNDg0ZmRhNDYyYTYwYjcwMDYxMGRhYjg1OTgwYjgyNmU3YWVlYWE4IGxlZ2FjeS10cnVuaworNzcxMTcgYmQ2YjAzZmI3MWEwNjQ2NjliMGE4ZDIyZTA2ODU2ZjhiOGMzNzJmMCBweTNrCis3NzExOCAyNTllZDVjYjkzZWFjZGZjNDkxMGJhMTNhMjQxZTMyYWY1NzY2MTI2IHJlbGVhc2UyNi1tYWludAorNzcxMTkgZWFmYTA1M2FmMDU3MGRiMDdhYjc0NTVkNTlmMmFlNGRhNzc1NTNkZSByZWxlYXNlMzEtbWFpbnQKKzc3MTIwIGViZDA2MTgzOGZiMTc0NTVmOTg1ZmJjNTZkMzMwZTZlNTgxOTBmMzMgbGVnYWN5LXRydW5rCis3NzEyMSA1ZTBhOTQ3MTYwMWY2MzQ5M2JiZmRhZTk4NGJjNDc3NWViNTU4MjdmIHB5M2sKKzc3MTIyIDhjNjBhOTU1ZDAyYzBhMmQyNDk4NmI3Y2M1MjhkN2RkODVjZjU1ZGYgbGVnYWN5LXRydW5rCis3NzEyNCBlM2Y1OTE0ZDliYjNmZWE3Zjg5YzU1YzVmZDMxYTZkYTcwNThkNjZlIHB5M2sKKzc3MTI1IDIzZjQ2NzE1MTc1NmE3YzgzZTg3MzVmMTEzMTM3YWYxMmRhZjBlYTYgcmVsZWFzZTI2LW1haW50Cis3NzEyNiBjNTAyZWMyNDM0NTg4YjhiY2U4MDk5NmM1YmIxYzAyNzNlNjk5MWU5IGxlZ2FjeS10cnVuaworNzcxMjcgNzkwZThmY2Y1MTc5NWYzMmFhNThkZjllMmY1ZjkxNzY5ZDZhZWI1NSBsZWdhY3ktdHJ1bmsKKzc3MTI4IDZmZGUxMWY0ZDg0MjY2NmYzMTllYjg4NzNlZDQ1YzA3OTVlY2RlMWYgbGVnYWN5LXRydW5rCis3NzEyOSBmYjY3MWRmMGY1Y2M5NjZhODE3MzUzZWY5MzdjYWI2NTFjZTk1YjI2IHB5M2sKKzc3MTMwIGU1M2U1NTI1MmJhODRiY2UwZTliZjEzM2UwYmJlZDA2MTFkNTRkZmUgbGVnYWN5LXRydW5rCis3NzEzMSA5MmE1OGI4MDEyMjA2NzMzNDk3N2E1OTBjZjgxZDMwY2EzMWJiMDQ2IHJlbGVhc2UyNi1tYWludAorNzcxMzIgMTlmMjM1OTk0NGViNDM1ZDFiNmU1Mjc2NDU5NjI1ODViMTUwMjUzOCBweTNrCis3NzEzMyAyNDRiOTc5ZDU0NGMxMjQ4NDY0MDE4NmU5YTc0MzUwNzkxNDBlMDA1IHJlbGVhc2UyNi1tYWludAorNzcxMzQgZDRhYzNhODAwMGM3NTE4OGQwMjlkNzUxMzljN2I1MjBlN2U5NGIzYyByZWxlYXNlMzEtbWFpbnQKKzc3MTM1IGE3ZjZhNTNkYWExMmQxYjVjNjU2ZmJlMzdiOWQyNWRkYjUxOTNjZjAgcmVsZWFzZTMxLW1haW50Cis3NzEzNiA0ZjA5ODhlOGZjYjE1NmRkZWJjNDQ5ZWQ0MTFhNTMyMDk1ZTgxNzYxIGxlZ2FjeS10cnVuaworNzcxMzkgYWM1ZmQ4OTA5OTk4ZmVkOWY2MjhmNWM1Y2NhMjlhZDZjYjAzMzE3ZCBsZWdhY3ktdHJ1bmsKKzc3MTQwIDM4NTdjZDRkNWIzNTk3M2I1YjkzMzIyM2I5ZTI2YWMyZThjNDdjNTYgbGVnYWN5LXRydW5rCis3NzE0MSAyYWEwZDlmMDFkNDc1M2I1NjUwOWNmNWUwOWIwYmQ1OTZlYzczOWFkIHJlbGVhc2UyNi1tYWludAorNzcxNDIgNjI0OGI3ZmRlYzBkYmI1OWY5ZDdhNDQzNzE2NDczNzA1ZTViMDRkYSBweTNrCis3NzE0NSBhZDYwOWQwZjUxNTA5NzQyYTE0MmZlZWFhYWFlMGFlOTMzYWU1MzMyIGxlZ2FjeS10cnVuaworNzcxNDYgNzQwZGJhZTJlMzBjZmZkMDEyMDRkODNiMjQzYzdjZWI5ZmM2ZGI5NyBweTNrCis3NzE0NyAxNzRhMjhjOWZiNDA3MDI1MGYxZGUxMTRhNjkwMTlkNWFmNDYwZDkzIHJlbGVhc2UzMS1tYWludAorNzcxNDggNWFkNWExZDYxMmU1ZDE0OGM3ZWY1Njk3ZTEyNjJiNDQzYjA2MzdjMiByZWxlYXNlMjYtbWFpbnQKKzc3MTQ5IDljYjI3NWRiNGQ2ZDU4NGMxOTJlZWRjZTI2MTVhMWU1Zjg4ZDUwZjYgcHkzaworNzcxNTAgMDBmZTY4OWYyYjc4ZDU1YzUzNjIwZjkwYTVjZTJkODY4NWYzMjkyOCByZWxlYXNlMzEtbWFpbnQKKzc3MTUxIDhkOWM5MzQwYjEyZTE2YzhjMzU1NTBhYTM1Yzk0N2I4ZmUzZjIzNGEgbGVnYWN5LXRydW5rCis3NzE1MiA3MzYxZWUyZGRmZGI3YTQ0MGViNTNhYzI0YTUzYmY2MTRjODNlOTg3IGxlZ2FjeS10cnVuaworNzcxNTUgZGI2Mjk3N2M1NzEzZjkwYTdjZTdjODA5Y2MwN2RkODA3MWY1M2E0MiBsZWdhY3ktdHJ1bmsKKzc3MTU3IGFlMTljMjg3ZTljMGY4NTU2YTFlYTRhMmU3MjQxYjQxM2I1NjQ5NTUgbGVnYWN5LXRydW5rCis3NzE1OSA5NmEyMzcxYjExNGI5ZGNhY2VjMmIxMTRjYTM3NDMyNWJkMmRhN2FmIHJlbGVhc2UyNi1tYWludAorNzcxNjAgODFjZjI0ZTVjZTkyOGU5YzkwM2E5ZTYzYWI2NDNhYzI4MDU5YmE3ZiBsZWdhY3ktdHJ1bmsKKzc3MTYxIDZjMTlhNmE2OTdhNjExZDRjYTZkMTMxYjUwMmFhZTA5ZTYwZGZlMDMgcHkzaworNzcxNjIgNDZmNGI3YjViNGRkZTQ3ZWE5YjVhYmRlYjNhNjA5OTE2YTQ0MzY1YiByZWxlYXNlMzEtbWFpbnQKKzc3MTYzIDhkYzZkZmE0MWZkNTY1Y2VhYzc2MWZlZjFjMGI3ODViNWViZGQ1ZTIgcHkzaworNzcxNjQgMjUyODU4MmQ2OGY2YmY2OTY2NDJiYjVjZTdkYmNiNjU5ZjcwMGYzMiByZWxlYXNlMzEtbWFpbnQKKzc3MTY1IDM2YWVkOWUzNjQyZGM0ZDMzNjc4ZTdhZjU2ZTJkYjQxMjA2ODgzYzMgcmVsZWFzZTI2LW1haW50Cis3NzE2NyBlZmE1OTc2MzMwMTBlZmUzYzhiMzZhMDQxNWNmODkxODk4NzdhNDljIHB5M2sKKzc3MTY4IDk4MGM3OWZiZDRjNWRmNDVjYzJmMTNmYzkyYjIxNWZiZTg2NTM4OWIgcHkzaworNzcxNjkgOGZlZTJhYjUzZTcxNmFjZWM5ZmQ5NzZmODg4YTZiYmI3MGFhOTAzZSBsZWdhY3ktdHJ1bmsKKzc3MTcwIDIyOGJiYTJkMWYzZjc1MDg2ZjcxMmFkZTcxZTMwODQzZjQ3OTEyYzEgcHkzaworNzcxNzEgZTA3ODU3OTk4NGE0ZTRmYzEzODI5YTc1ZTM2MjUwYjUwY2YwMmNmZCByZWxlYXNlMzEtbWFpbnQKKzc3MTcyIGIzZDM3ZWI5NjMyMjM1NDYzMjYzMzI5ZjU0YzFkOWVhMjNlOTdlMmUgcHkzaworNzcxNzMgNGQ2ZDk1MmZlMjg4MTE4MzM0NzIwZTExOGM0Mzk0MGI0NTI2NzM2NCBweTNrCis3NzE3NCBkNTJhNzE3OWVlY2VlMmVkNWM4NmY1OWU2MDlkNGIyZDU1NjUzZDIzIHB5M2sKKzc3MTc2IDQ0M2Y3MWRkNWNmMDJhYmQ5NTE0NzM0YjUzNzIzNzc3MWUxMjU1ZTggcHkzaworNzcxNzcgYTkyZjBhMGFmZTU2NzQ5OWQ4YWMyZGUyYWJiMGVlMGExZmM0ZDVmMCByZWxlYXNlMzEtbWFpbnQKKzc3MTc4IDM4NGE3YTM3MDlkYzhmOWUwZWQ4YTY4MmZlNmQxZjI3MmUwM2VmNzggbGVnYWN5LXRydW5rCis3NzE3OSBiZjk3YWNmOGVjYjE4NzBjMWRmOGMwOWRkZjlmNmMyOThiMGQ5NTY0IHB5M2sKKzc3MTgwIDdjNjMwOTMxY2M4MzFjN2U2Yjc0NDQ5YmUwZTVkNjFiYTk0YjZlZGEgbGVnYWN5LXRydW5rCis3NzE4MSAyMzZkY2YxNzFiNzQ2ZjIyM2QyZWQwNGU0ZGQ4N2I5MTc5NjYyNTM1IGxlZ2FjeS10cnVuaworNzcxODIgMWU5MmZlNTkzOTE2ZGMwY2UzNjMzMGViMDQ1YjY5ZDViMDI1NzA0ZCByZWxlYXNlMjYtbWFpbnQKKzc3MTgzIGRiYWE0ZWVlYWViOGQyNmZhOWQxZDA2NzIzMGI1YWFmZDY4YTBkYWQgcHkzaworNzcxODQgNWFmYTE2OTE0Mjk1ZTVmN2Q2ZDQ4NWFmMTllYjkzMDg0Mzk2ZjJhMiBweTNrCis3NzE4NSAyNWFhNDNlNDMwMmJmNWRiM2MzOTJlZWFjZWI3MmUzMmFmNjkzOThjIGxlZ2FjeS10cnVuaworNzcxODYgN2Q2YmZmNzIyMTk1MGZlOGQyMmQwYmMyMmY2YTkyYWIzMzAxYjBkMSBsZWdhY3ktdHJ1bmsKKzc3MTg3IDg1NmE0NWMwYjZjNDFjNjU4ODZiNzBjNzJlMzEyNGZjOWRkMDY5NWYgbGVnYWN5LXRydW5rCis3NzE4OCA1YjQ3MTg0N2Y2ZWE2ZWM3MzdlM2JjYjkxZGYyMDBiNTAyODNkNjA3IGxlZ2FjeS10cnVuaworNzcxODkgYWI0MGI5MzZiZDFjMTQzMTc4NjQ4OTk5NzgwZGFlYWEyZWUyMzRkYiBsZWdhY3ktdHJ1bmsKKzc3MTkwIGU2MmJlMDg0NzhiY2RhYjY4NDhlYzk3YTBjMWZkNWUxYjFlNjI5MjQgcHkzaworNzcxOTEgMTY2NmVlOGRhZjliMTI0OTMwMWFmZWNmMDY4YWI1ZGQxM2NiODVjNiByZWxlYXNlMjYtbWFpbnQKKzc3MTkyIDUzMTAwZGIzNTEyODRmN2I1MGViNzZkMWQwOTM4YjUzMjgxZDZiNGUgcmVsZWFzZTMxLW1haW50Cis3NzE5MyA4NGIwMGU2YmQ2OWIyMWZlM2Y0YjRmMjIwMTYzZDhiZmQ3NDZhMWYyIGxlZ2FjeS10cnVuaworNzcxOTQgNjIxMmVkYzIyY2JkZjhjZTlhZGRiMjU0ZmU2YjczYjFmMDdlODAxMiByZWxlYXNlMjYtbWFpbnQKKzc3MTk1IGJhYmZjMDYxMjEyYzE3NDNmMzExNWFmZGEzMTc3MWFlYTFjODA5ZTggcmVsZWFzZTI2LW1haW50Cis3NzE5NiBkOGU2NGE4NDQ3M2NkZDU0YTljMTMxZDI2N2MwYmIzMjU1N2MzMTJmIHB5M2sKKzc3MTk3IDNlMjJjN2U5ZjMwN2NiMWM5M2Y1MzhkYWUxOTg1YmY2ZmMyNjg5N2IgcmVsZWFzZTMxLW1haW50Cis3NzE5OCBlNDU1M2I2MDdiNDNkZmMxN2NiMzRjMzgyNDQ2MTIwNzcwMzg5NGFmIGxlZ2FjeS10cnVuaworNzcxOTkgNDJjZmI3MjdmZjQ4NWE3OGZiNTM5MjFhYjA4ZGZjOWE0NmE5YWFlYSByZWxlYXNlMjYtbWFpbnQKKzc3MjAwIGUyMjYxYjYxZGYwNjYwNWIyYmQ1YjQ5MmZkZDUxNjZlZDEyNDE3MjEgcHkzaworNzcyMDEgNzFiYjg0MmI3OWFiMmUzMGE2MGVjNDhiYjc1NmE3M2Q2ZmQ3NDlmZiBweTNrCis3NzIwMiAyMTJhNzIyODY0YTFhZTg3NzRmNTJhOTI2ZmQ5MTFjNTZhMTgwN2FjIHJlbGVhc2UzMS1tYWludAorNzcyMDMgMGJlNDViNWNmMGQ2M2RjMzI0YmY3NTQ5YzViM2FlMTI0NmE5ODA3ZSBsZWdhY3ktdHJ1bmsKKzc3MjA0IGZjZTY2MTEyNDFkMTA5MmNhMWI3ZDZlMzM1NGE2Zjg4MDIyNWRiNjggbGVnYWN5LXRydW5rCis3NzIwNSAxZDBmZGU1OWRkZWE4ZmE0ZjFkMGI2ZmYzYTJmMDE0NmY1OGZhMGI5IHJlbGVhc2UyNi1tYWludAorNzcyMDYgNjhhNzU0YWJjZmI2OGIzYjAzMWNhNjlhZDRiOGI4ODI2NzJlYTZhYiBweTNrCis3NzIwNyBjMDI2YjkxMGE1ZTQ4NjVlZTJmMmE4Yzk1NzIwYjY0NDQ3MmU5YTE5IHB5M2sKKzc3MjA4IGZjNzVhOTk4YWRiZmVhNzQ3NTM5OTQzNzkxOTZjMmIyZjgyZTRhM2MgcmVsZWFzZTMxLW1haW50Cis3NzIwOSBhZGI5MjFmMDRiODc3NTc0MDNmYWI4YmIyOWIzMmRiYTUyYzg4ZWYzIGxlZ2FjeS10cnVuaworNzcyMTAgZmYyYWJiOTRjNjhlYmY1MmUyYTU5YmZlNzQ0M2FkM2NlMzExODNiZSB0YXJla19zeXNjb25maWcKKzc3MjExIDlhNTViMTE3M2QyMDA2YzQ2ODRiZTE5MjZlMWZmNDJkMDc4NDNmMDUgdGFyZWtfc3lzY29uZmlnCis3NzIxMiBmMDI4ODEzMzIzNDJhMWE3NmYwMzcxYjAwMTU0MWEyMjI5OWVhMDFiIGxlZ2FjeS10cnVuaworNzcyMTMgYmFhNzBkNDFjOWJkYjViZWQwZDc0ZGMwOTlkNjEwMzg3MWRmMjM5NCBsZWdhY3ktdHJ1bmsKKzc3MjE0IDk0MThmNGIwMTA0NTFmN2I0ZDFmZDAyYjVlYjAwZmI3ZjkzNDJjNzAgbGVnYWN5LXRydW5rCis3NzIxNSBjMzUwNzVmMmE4ZjMwZTVhZmRjM2JlZWY5ZWZmZDYwYWE3MWVhZGM5IGxlZ2FjeS10cnVuaworNzcyMTYgYjBkZDZjMjFkY2JmNDQ4M2IxYjA1ZWI1YWIwNGE5YTU0ZGMwM2IyMSBweTNrCis3NzIxNyA0ZmZiOTMzODkyNTY4Nzg3YWYxMzUxODY5NjZlNGRiZTNlOGQyNzY3IHJlbGVhc2UzMS1tYWludAorNzcyMTggMmRlMjRiYjMzY2M1N2M1MGNmYTY0YzA1NDIwOTdhNTNhZWUyZDcxZSBsZWdhY3ktdHJ1bmsKKzc3MjE5IDEzOTRhNDAzZGM4OWU1YjQyYWI0NDJmNjI3NjE2MWM5ZGFlZWMxODMgcmVsZWFzZTI2LW1haW50Cis3NzIyMCA3OGNhNjljZmM4OTc4YjczOTk5ZjNjMTQ0NTY0YTg5MmExNjg0NzA5IHB5M2sKKzc3MjIxIGYwOWViOTJlZDBhYjJhZjU1MWE2N2IxZWZiMjEyZjFlZjEyMzMyMTggcmVsZWFzZTMxLW1haW50Cis3NzIyMiBhYzUyOGE4YTM2Y2Y1YzUzNDJjODNjNzY5NGU2ZjNiNDQ4NDQ4ZGMzIGxlZ2FjeS10cnVuaworNzcyMjMgNzQ3YjAxYTA1MzAwNjg3NmMzOTg5YWEwMjU4NWJiMTdmODFjMzAyYSByZWxlYXNlMjYtbWFpbnQKKzc3MjI0IGE3MjhmYTQ4MWFkNDM4ODc0YWU2M2UxYTZkN2NhZWFjYjU5Y2JkNzUgcHkzaworNzcyMjYgYjVjMWNmZGM2OGI5MjlmNDQ5YTVlNWVhNjZjYjBmYzg2OTYzZThiMyBsZWdhY3ktdHJ1bmsKKzc3MjI3IDZjOGMwNDBjMTQ0M2I3NTJhMmM2NDgzYzUyY2YwOTMyYzYyODEzNDEgbGVnYWN5LXRydW5rCis3NzIyOCAxOGJkMWM2N2Y1ZTJkNGJmODExNjE1NWU2NTVlODdiN2E4ODdjMDIzIHB5M2sKKzc3MjI5IGI4ZTM4ZDBhNTJkN2UxMjc4OGIwOTJkYmIzNTk0ODQxZjhjOTJmNTYgbGVnYWN5LXRydW5rCis3NzIzMCA2ZDE3MDI1Yzg0YzE0ZTRhOGYzMWViNDNjY2FkN2UxZmMzNTA2YzA3IGxlZ2FjeS10cnVuaworNzcyMzEgZmM4N2EyZmM0N2E1OTVlYWJiNTZmNWQxMTlkNTgwMDgyNDZmYjAyMiByZWxlYXNlMjYtbWFpbnQKKzc3MjMyIGJkMjRlMWU5MGY3Y2MyNjZmZjhiMzM5ZTk1MmNmNjkyMDliODVlZTggcHkzaworNzcyMzMgYWRjOWNkYzAyZGYxMDA5Yzg4NzM0NmUyN2RhZTQ0MTU0OTRhZTE1OSByZWxlYXNlMzEtbWFpbnQKKzc3MjM0IDI3Yzk0NmZmNzZhM2E5MmM5OTA5YmE4YzM5NGY1YjI0M2M2OGQyZTIgbGVnYWN5LXRydW5rCis3NzIzNSA1OGE1YmI5NzFlOTUyYjdhNWU2OTI0ODE1NzdiOWFjZjI2ZGI1NDM2IHJlbGVhc2UyNi1tYWludAorNzcyMzYgYzJmYjA3NzQyNDQ1Y2Y4OGZmZWFkMWY0MjQ5NGE2MDY2YTEyMWU5ZCBweTNrCis3NzIzNyA0NmQ2MGU1ZmYxMDNlOTVjNDUxYTE0NDU0ZWUwOTM3YmM1YTAyZjQzIHB5M2sKKzc3MjM4IDM5MGQ2NzRlZDRjNzMyNDc4NjM4OTljMzBjZjcyODcyMWQwNGMxYzAgcmVsZWFzZTMxLW1haW50Cis3NzI0MSBkZGY2MWNkNzc1ZTAxOWQ0YmYzY2E5NzM4MTRkMmI1ZjFjNWMzYTBmIGxlZ2FjeS10cnVuaworNzcyNDIgNjI2M2E2ZmJmN2Q5MzQzZjg1Y2YyNTRlMGNlM2UyMDRjOWVmMzVjMSBsZWdhY3ktdHJ1bmsKKzc3MjQzIDJkNWFiNGQwOGM4ODUwYjRmYTdmYmQzMWE5MDhjMTYwZDEzN2FmODMgcHkzaworNzcyNDQgYTMyNjYxYjMzNGY2NzY4MzgzOWEzZWYzN2RmNjk0ODM0YTgyYWQ4YSByZWxlYXNlMjYtbWFpbnQKKzc3MjQ1IDMxMzI2NWQ0ZTAzMjgxMmVmYzc4MDNlYmI1YjM3NmE2ODFhMzdhNTkgcmVsZWFzZTMxLW1haW50Cis3NzI0NiBhMTAzNWNiNGE5MjVmYzgyMTc5ZTQ2ZDQxN2VhYmU5ZjkwZWNjNTQyIHB5M2sKKzc3MjQ3IGY1ZTQ5NmE4NDE3ZjMxNWM0YTNiZTQxOGY2NTU3YTdlOGMxNjQyYWEgbGVnYWN5LXRydW5rCis3NzI0OCBhNmFjZTMwY2I5MTIyNGE5NWEyODE4NWVlZmZlYTEzMjNkN2RmNDI4IHB5M2sKKzc3MjQ5IDRhY2Q4ZmFlYTJkOTMzYjQ5NzcwMzkxNGMyYWFiYjVkMDhmMDg1NTAgbGVnYWN5LXRydW5rCis3NzI1MCBjYzk3YTk2ZTRhMDkwODI2NzU2NzVmMjA4YjQ2ZGIwMWJjMzQ3ZDgwIHB5M2sKKzc3MjUxIDkyNjExODQxNzk3OTJhODgwMWU1NGI1ZmMyMTI4NGY4YTRkN2JlYmUgbGVnYWN5LXRydW5rCis3NzI1MiBmZjViYzJmYTM4ZDY2ZWVjOWVkZGI4MDIxZmRjYzA0Nzg4N2NkZjVkIGxlZ2FjeS10cnVuaworNzcyNTMgYmUyN2VhMmIzNjc5ZjA0YTc0YzZjMGU2YjZmN2JkNDZhNDM2YzQ0MiBweTNrCis3NzI1NCBlYjk1ZmQ5NWU2NWVkZWJiOThhYjgwYTA2Njk1MDliZGJlMjAyNTdlIGxlZ2FjeS10cnVuaworNzcyNTUgNTdiOTk2YzNkOGZmYjM4ZGM5YjJmNzkwODc4MzljY2QwNTFmOWNkZCBweTNrCis3NzI1NiBlOTgxMmI4MTZmZmRiMTc5NWMzMGZlNWIyZWE4MWE4NTQzNjZlOTllIGxlZ2FjeS10cnVuaworNzcyNTcgOTFhNTdjYzAwMjBlNGFhYzZmZjkzZDMyZDIxNjJmOWEyYjA4MjM5OCBsZWdhY3ktdHJ1bmsKKzc3MjU4IDJhMjM5OTUzNDU5MTdjYTcyNmQyZjE2MjkxYjFjNzkwYmNkMzQzNGIgcHkzaworNzcyNTkgMzg1NmM3NjRlMWY1MmMyMDRlZDgxMzU3MmUxYmZiNzgzMDU1NmRkZCBweTNrCis3NzI2MCBmZTExN2U1ZDEzYTFmY2FlZTZhMGI3ZWE4YWE2NDdiOWE1OWZhMzdmIGxlZ2FjeS10cnVuaworNzcyNjEgYWJiZGMzMWVhNzkwN2IwNTRkMDFjNjdmMDZhNTMxNmQwMzRlOGU2NyBweTNrCis3NzI2MiBmZDkxNzQ0YjFjYWFiNDlkMGZiN2I0YjAzOGQ4OGVlOTk2MzQyODU0IGxlZ2FjeS10cnVuaworNzcyNjMgNzJlM2U4NWJhYzhiMGRjMDI5YzVjNTQ1NmE2YmMyNDZhNGJhYzY2YiBsZWdhY3ktdHJ1bmsKKzc3MjY0IGExOWFkMjk5MDk1ZjI3ZGIwMmE1YWZmNDg4ZDNkZDY4YTc1MzhhMWYgbGVnYWN5LXRydW5rCis3NzI2NSBiMDM4NmZlNjUwYzc1OTYwZmQzOTY5YzA4MzZlMzZhOWU1MThmNDBhIHB5M2sKKzc3MjY2IDhjNGE3MDdjMGJkOGVlYzY5OWEwZTAyNGNiZjZkMGNkYTM0Y2Y5MWMgbGVnYWN5LXRydW5rCis3NzI2NyBjM2FkY2ZhYzA3NzIyODYyYjYyMmExZWQ5MzgxNDUyMmE5MmU1ZDM3IGxlZ2FjeS10cnVuaworNzcyNjggYTBmY2U5NjY1ZjQ0YWQ5ZjEzYmNmZjNmODE1NjNkMWIxNjk5NjNlZCByZWxlYXNlMjYtbWFpbnQKKzc3MjY5IDI0MDJmMjkxZTgwMTliYWViOWJhOTA4YTk2ZGI1MTU2NDFjNDUzMjIgcHkzaworNzcyNzAgZTU0NDM0ZDJlMmE3ZDM3ZTI0YjI0NDU3OTU3NWNiNWRmM2M4ZmIwMyByZWxlYXNlMzEtbWFpbnQKKzc3MjcxIGY2ZTM0MDAxNGY5Njk2OWRmNmZkZjU5NzM5M2ViNTU3Nzg1OGU0ODUgbGVnYWN5LXRydW5rCis3NzI3MiBlYjkyNGZhZDkyNzIwNjIwZDk0ODYyYTZjYmNlNTc1OTQ0ZTVlNGY4IHJlbGVhc2UyNi1tYWludAorNzcyNzMgMDNiZmUzMmVmODQ5Y2E4NjNkNjg0MDM4MTBkZjZkNjY0NTljOTk2MiBweTNrCis3NzI3NCAzNTFmYzQyNTBjMWIwYzdhNjU5OWQ4MjVlYWQ3ZmY2NWEyZGU0OTdkIHJlbGVhc2UzMS1tYWludAorNzcyNzUgMGY4YTU4NzkyNTYzYzMzNTRiYTFlYjM4ZGE5OTU2NTNmY2U5YTA2OCBsZWdhY3ktdHJ1bmsKKzc3Mjc2IDliOWFkYzQyYzczYTJhZWJiMTQ4Y2U0ZmNjNGFmNmY5N2NiOGZkOWIgcHkzaworNzcyNzcgOWMxZjMwNmZiMGRmYTU4NDhiNTMwMzdkYWIzZjQ0NDBkNWQ5NTZkNyByZWxlYXNlMjYtbWFpbnQKKzc3Mjc4IDc0NGUzOTFlNDJmZGYxNjAwZTVkNTA3ZjQ1NTRkYzExOTg2NWFmM2IgcmVsZWFzZTMxLW1haW50Cis3NzI3OSA1MTc0OWI2ZDYyZDNlYjJhNDAwZjhjMzM1YjY2N2RlOWY2ZjJlYjk2IGxlZ2FjeS10cnVuaworNzcyODAgOTBmMWU5MmRiNmYyMjU1OGUzZWM0YzMyOTFhMjFmOWNjNjU3Y2YyZCByZWxlYXNlMjYtbWFpbnQKKzc3MjgxIGI1NTg1MDA3MGE1NTE4ZTM3MTJhMWZjYTc5YjY4NWI3YmZmYjIzOTEgcHkzaworNzcyODIgMjM0YmVhYWZkMGM2ZGQyYTA0ZjMyNjE4ZDYzYWFiZDQxMzdkMjhhMCByZWxlYXNlMzEtbWFpbnQKKzc3MjgzIDA2Yzk2OGViNGI0MDNjMjg1NTMyNTBkMjQxMmMxZDZjNDI3MGZmZGUgcHkzaworNzcyODQgN2JjZTcyNmVjNDQwYjE2ZGMxZTk4ZTA5NTJlZjk0N2U0ODQ4YzMxMSBsZWdhY3ktdHJ1bmsKKzc3Mjg1IDM5MTE1MjRhZmMyZDZmMWZlODIyNmY0ZmZmMDIzNjVjZDM1YTYxNDcgcHkzaworNzcyODYgYzcyNjUyMTQ1YjIzNWQ3MzcyYzg4Y2NlMzBhNzNhMTM3OGI5YmMxOSBsZWdhY3ktdHJ1bmsKKzc3Mjg3IGVjYzhhNDU4OTRjOTQxZmEyYWYxYzZiNjI0YTgwNjk1M2ZhOGYzOWMgcHkzaworNzcyODggYzg1N2I1NjY5OWI1NzJkNmFiNjhiZDhkNWI0MjYwYzdkNTg4YTU0ZSBsZWdhY3ktdHJ1bmsKKzc3Mjg5IGM1ODAyYWI5ZTM0ZTcxNTRmNGNkNTBiNjc1NGJkMGE3YmYxZmNhYmYgcHkzaworNzcyOTAgZmM4MzNlZGJhNzY5OWZiYmNjZWFkOGZiODQ1NWY1NTM0ZjRjZDVlZSBsZWdhY3ktdHJ1bmsKKzc3MjkxIDJjYmRhYjI0OTg1ODk3MGQ4NDIzYjhiNzkyNDdmMWM1OTYyYjMxMWUgcHkzaworNzcyOTIgNGJjMjZhODBlNzM3ZWEzZDNkNTU2YmU5MzY2NDQ5OGZmNWI2NTY2YyBsZWdhY3ktdHJ1bmsKKzc3MjkzIGY3ZTA5YmEwY2I1NWEzZjNiOTYyMjljYmIzMTJjYjJmZTE1NWNiZjUgbGVnYWN5LXRydW5rCis3NzI5NCA2MDQ5ZmU0MDIyZmZhNDY3YzBmMDU0NjgxYTdmNjMxYWIzNWNjZTAzIHB5M2sKKzc3Mjk1IGQzOTlmNmRjOWVlNDgzOWYzZWQzNzM0ZmQ4NjAwMzZmMTMxMjdlZGIgcHkzaworNzcyOTYgMGZmMmRhYTgzZDBkN2Q1M2ViMzlkN2VlZDJjYjdiNDY1ZWRlYmI5NyBweTNrCis3NzI5NyBlZmJhYzdkM2EzNjg1MDQ0ZmI1YzJkODczOTk5NjI5ZTI3NTU5NTFmIHB5M2sKKzc3Mjk4IDBmY2VmOWQzOTU5NDAxYjE4NGFkYzJhOTEyYTIxYjZmOTY4MThjYjUgbGVnYWN5LXRydW5rCis3NzI5OSA1OWM0NzE0MTg3MTg1ZjA5MWQ4MDgxNTcwODM2NjdmNzEzYzBlY2Q1IHB5M2sKKzc3MzAwIDJmNjc2MjU4ODZmNjAwMzU1N2ViN2Y5YThkNDgxOTZlNDc5NjdiZmYgcHkzaworNzczMDEgZDU3MjkxZjVlNjY4MTFjMWIxOTk1NDA2MTJjY2ZmOTMyOTg2Njc4OCByZWxlYXNlMzEtbWFpbnQKKzc3MzAyIDhjYTM3Nzg1MzMyMWUzZWQ2YTcxNDFjYmJmNTc3M2QyZWY3YWRiZWQgbGVnYWN5LXRydW5rCis3NzMwMyA0ZmI4ZWFmMTRmMDljYjE5ZjdmNzk0NTMyNDVmYWVkY2Y4OTlhNTk2IHJlbGVhc2UyNi1tYWludAorNzczMDQgZTFmMTMxM2NlNmRhMThmNzJmOTA0MGU1ZTY5NjZmMjg1OGY0MTkwOSBweTNrCis3NzMwNSA3MGY2ZmEzMDg0ZTY3ZGQ4ODI4ODY3YzA2NjQyMTBjYmUxNDc0NDUyIHJlbGVhc2UzMS1tYWludAorNzczMDYgYWZmNWRlNWNjNDQxMGZkOGQxMmVmYWJhNjc5MTVhMjYxOTZiYTQ3MiBsZWdhY3ktdHJ1bmsKKzc3MzA3IDBmZTI1ZTA3Yjc3YjNjY2FkMWIzNzliZGJmOGQ1M2VkZDZjMTM1MzYgcmVsZWFzZTI2LW1haW50Cis3NzMwOCAzMTc1MmNhMDA3Y2YyZjNlNDBiNTNjMmYwN2NmZmMwMjExYjAxYjAwIHB5M2sKKzc3MzA5IGZhMmIyN2ZhNTQxOWU4MWY5ZmM1NGRkOGQ0MGVkY2U5ZDVmMWMyMmIgcmVsZWFzZTMxLW1haW50Cis3NzMxMCA0NDJlMTcwYjU2YzNmN2Y0OWZkYWVmMzBhMTE5YWRjOTU2YTM0MDcyIGxlZ2FjeS10cnVuaworNzczMTEgZTYyMmIyY2ZlZjEyZDZmZjE5Mzg2NWRhNGI5YmQzZmJkNGVjYmUwMiBsZWdhY3ktdHJ1bmsKKzc3MzEyIDc3NjY0N2UzZmIwN2RkMjRjNGI4Y2Y5YmQzOTNkMjkxM2ZlNDQzZjYgcHkzaworNzczMTMgYjA1NzQzY2U1ZTk0MzJmZjU2NzU5MzBhM2FlZmM3YmI5YzI2Zjk3YyBsZWdhY3ktdHJ1bmsKKzc3MzE0IDRhYWIwMjk1NGRlMWQ5ZGNkZDQyMTQxMDI2NmUyN2Y4NTNhNTRkNzcgcHkzaworNzczMTUgMjJlMGZjMjBlOTExMzNkODczY2U4NWQ4ZWFkMjZmZjM4MmMyM2IyMSByZWxlYXNlMzEtbWFpbnQKKzc3MzE2IDJjZGJhNTE2N2RmMWExNTU4ODQ1NDg2NTUyYjVkYjM3YjgxYjNiYzggcHkzaworNzczMTcgYTJkNmQzNDU0NzBlOTRhMzgwNjg1YWIwNTdjZTJhZGUxNTkwOGI3OCBsZWdhY3ktdHJ1bmsKKzc3MzE5IDNlY2VlZjM3ODA2NWE1NWE5N2Q2YjJkMjJkNWM2NzVjYjgwYTNiMTAgcmVsZWFzZTI2LW1haW50Cis3NzMyMiBmOWQyYzM0MjZlMTQ4YzUxMTVhMzMyODZmZmEzYTAxNmE1ZGY3MzNjIHB5M2stY2RlY2ltYWwKKzc3MzIzIGQ2YmEzN2UzMjc3NjM3MDY3ZGQ4MmE1OGNkNTcxZmE0MWRkNTI1ODUgcHkzay1jZGVjaW1hbAorNzczMjQgODgyYzllNzExYTJkMDU5M2Y0Y2JkNWZkM2MwOTY1MDg0MTE2Y2VmNCBsZWdhY3ktdHJ1bmsKKzc3MzI1IDg2YmY0NDBiZjliZjM1N2FjZGNiNDMwNzYzZDFkY2U3ZWY3YmQzNzAgcmVsZWFzZTI2LW1haW50Cis3NzMyNiA2MTNiOThkMGQ4OGJlMDJmN2Q1NDdlMjA4MjNkZTM4NDUyYWU4MDE0IHB5M2sKKzc3MzI3IDA3YTc0OWYwNjZhMTE3MWYzNWIzNjRlODIyZmQyOGM5M2U0NGYxMTMgcmVsZWFzZTMxLW1haW50Cis3NzMyOCBhMTkwMTcxMWIyMjViNDAzOWJjYThlZjE1OTdhZTJiZGVhODdhOTNjIHB5M2stY2RlY2ltYWwKKzc3MzI5IDMwNzA2NmYwMmFjNTJhNDIzM2Q3Yjc5OGJlNTI1MWUwMTdiZmE1OWMgcHkzay1jZGVjaW1hbAorNzczMzEgZjU2MGE4MTdiZmNiNTEyNTIwNDYyODU5NjYzNzA4ZWJhYzQ2ZjQzZCBsZWdhY3ktdHJ1bmsKKzc3MzMyIDhlODJkZDU1MjJmMDM5Yzc4Zjg2YzAxNjFkZmYzMzkzZjlmODY4NmIgbGVnYWN5LXRydW5rCis3NzMzMyBhOGZiZjI5NGQyMmU1YzVmZDk4NGY1ZDFjYzY4MjNhNmM0YmQ2MDk2IGxlZ2FjeS10cnVuaworNzczMzQgOTllN2MxYjhiMWUxZWUxOTgzOTdiMjNlNGNjMDExNjIyMzcxNjZlMyByZWxlYXNlMjYtbWFpbnQKKzc3MzM1IGIzYmI4YjNlNWU0ZWJhNWU2OGFhMjI5Y2Y5ZTM1ZDIzZWE3NmFjNDIgcmVsZWFzZTMxLW1haW50Cis3NzMzNiAwZmE5ZWU0ZWFiODg3NDNmNTgwMjBlMzkyNjY4Mjk0ZDRjZTNhODBjIHJlbGVhc2UyNi1tYWludAorNzczMzcgNmFkNTNmNjcwNTZhODQyMDc0N2JjMWE5YTJmOWQyZDFjOWM0NTk3NSBsZWdhY3ktdHJ1bmsKKzc3MzM4IDI1YzFlNTdjYTFiM2UxODk3ZDhmYzNhMmZiNzg2YzdmY2JhOTRiYzkgbGVnYWN5LXRydW5rCis3NzMzOSA2MTQ0Y2Q0ZDQyMWJhMzI2ZGNhYWE4NGZhNmNiMjVjMTRjNWFjZjI5IGxlZ2FjeS10cnVuaworNzczNDAgYzYxODEzN2YzZmQzYjdkNDk1YjE5ZDk5ZjE0MjExYzJiN2RlOGQ5NSByZWxlYXNlMjYtbWFpbnQKKzc3MzQxIDdiMTI1NDU3MzY1NjRiYzk5NzA3NTYzODI5YWMwNWJmOGEwODljZjEgcHkzaworNzczNDIgODcxNjEwNjllZWYyM2ZjZWUyN2E1YWUzYzRmNjcxODBkZTE3MTRjNyBweTNrLWNkZWNpbWFsCis3NzM0NCAzMTViNThjYjEzYTYzN2M5ZGY1MTBhNjdhNGI5Y2Y3YTk2MzJkYWEzIHB5M2stY2RlY2ltYWwKKzc3MzQ1IGQ4OGUzZjU5OGFhNDEyY2YzYzNkN2I3NzgzNTBkYjhhNzJkZDA5ZjYgcHkzay1jZGVjaW1hbAorNzczNDYgZGU3M2I4NThkZTExZDIxMzljYzRmNjRmZGRjYTQ4NmFkMjE2ZmJiNCBweTNrLWNkZWNpbWFsCis3NzM0NyBmZTVlYzk4ZGU5ZGExZTczMDlkZjU0MDdiNzEyMDJkNWIxZjk4MDZkIHB5M2stY2RlY2ltYWwKKzc3MzQ4IGI4MjY5NDEwNzE1MWMyOGE1ZTFjYzQwNmQ4MTcwZTA4NDg4NWJjYzUgcHkzay1jZGVjaW1hbAorNzczNDkgMjI0NTg4NGM4NmU2MTU3MWJkMjdkYjcwODNjMGY1OGM5ODYyMDk5ZCBweTNrLWNkZWNpbWFsCis3NzM1MCBlMTNkMDcyNDNjNzNhMGM4MmMwOGFkYjAxZDRkODZmOTY1YTU5OTg0IHB5M2stY2RlY2ltYWwKKzc3MzUxIDc0MGE3ODdkYzU5YTBiMjNmNGNjZDZmNmZjYjYxZWM2YzlmNzFiZDMgcHkzay1jZGVjaW1hbAorNzczNTIgMTU5MDRkNWI5OGRiNDc2MDBhNWI4OTkzZGVmYTk3ZDAxYWYyNDE1MiBsZWdhY3ktdHJ1bmsKKzc3MzUzIDIyYTMyOTJjZjY3MjJjN2QwZWRmNDRlYWZkNWFiODM0ZjJlMzY2MTAgbGVnYWN5LXRydW5rCis3NzM1NCBlMGI3ZTgxYWNmNmYzMzI1Yzk3MTk2ODkyYjk0Njk3MDhiNjU4Mjk5IGxlZ2FjeS10cnVuaworNzczNTUgODkwM2VhNmE5ZTY0NzkxNTY3NDU1YTRmYWFhZjRlYWIzMGM5MWUyZiBweTNrCis3NzM1NiBkMzk0MjBhMjdlNjQ2MDhjNjA3NzY5NWYxNDJiMWQ2YTJkYTA1ZGE5IHJlbGVhc2UzMS1tYWludAorNzczNTcgYWZlNmRkZTgwYWJiMzlkNjE4NjRiYWEwNzRmNTA4NWNkMjA0YzdhMyByZWxlYXNlMjYtbWFpbnQKKzc3MzU4IDUxOGFjYjEyZjM1N2ViYTAwZGRhYzFlODlhNjFjZjg0Y2VmZWY3OTUgcHkzay1jZGVjaW1hbAorNzczNTkgYTY0Y2ZlZjFkYTA3NTM3ZjM2NzE0ZmUzMWQwZGZiNDIxMTE1YThlNCBsZWdhY3ktdHJ1bmsKKzc3MzYwIGYyMWYyYzkzMzI5ZWIwODc4ODhkNThlZmViZjRjOWQ2MmI5Y2JmYTcgbGVnYWN5LXRydW5rCis3NzM2MiAxMGI2Njc4ZjVjMDRiM2I2MDViNTQ4ZmViYmY2OGFhNjY3ZGNmYTQxIGxlZ2FjeS10cnVuaworNzczNjMgMzVmZTIwNjlhYjFkOWVhODRmZGE4YzdkNTIwNTNiZjZkNzkzNmFmYSBweTNrCis3NzM2NCA1OWUxYjAzMDZjMGU4NmI0Y2RmNGM3ODU5NGViYTIwYTViNTk4NzM0IHJlbGVhc2UyNi1tYWludAorNzczNjUgODRjYWFjNzFkNzliZDNlOWVlN2U3NGU1Y2NiYjhhM2M4ZDUxMmRiMiBweTNrCis3NzM2NiBiMGVkMzVjOTlkYzZkOWEwM2YyZDFiMjM5M2MwMmUxNzFlMGUyNjE3IHJlbGVhc2UzMS1tYWludAorNzczNjcgN2E2NzUxNWJmOGUzMDhiNjg0ZjA4YmVmODA3NTU2YzM5NzcxMzUzZSByZWxlYXNlMjYtbWFpbnQKKzc3MzY4IDdjYWY1NGNlNTI5ZTdkMjFiM2NjNGY0ZWIwMTJmZDQ5YmZmMzM2Y2YgbGVnYWN5LXRydW5rCis3NzM2OSAwZGQxYWEzMzI2NWYzOGMyNDY2ZGM3NWY5YjIwNzFhMmZkZmI3ZDU2IGxlZ2FjeS10cnVuaworNzczNzAgOWU4ZDc3NTBlNDcwYjhlMDI5N2E4MDk2Yzc3ZTUxMWZhZWU0OTFjOCBsZWdhY3ktdHJ1bmsKKzc3MzcxIGJiNzI3MDMwMDA0N2Y0NDM4NjUxOGVjM2E1YzE2M2I2ZWIwM2RkZTAgbGVnYWN5LXRydW5rCis3NzM3MiAwYzdlYWQwMzRhMDNhOTJlZDVkNWQ3NzliMjY4ZjUzMmQ0ZmY5ZWUyIHJlbGVhc2UyNi1tYWludAorNzczNzMgZGEzZmQ3YTc3OWFjZDI3ODA3ZGZiNDk0YzVlY2YyZjgyOGE0NjhlZiBweTNrCis3NzM3NCBmM2ZlNTc5ZThmMTQ3YWYxNTkzYjI5NjA0MzEzYTBmYWEyMTE4YjdjIGxlZ2FjeS10cnVuaworNzczNzUgZjVjZWJmMTFkNWUwODk1MTgyODA3ZjhkODA5N2I4ZWNkNTI5MzllMCBweTNrCis3NzM3NiBhYzQ5MzFhYjAzNjllNjNkZGUwYmZmZWQyZTE1ZWQ3MzAxYzQ3NzkyIHJlbGVhc2UyNi1tYWludAorNzczNzcgNjE1MDI3MTBmY2U5ZjM2OTM0ZTk3MTAxN2M1Y2EwMzUzZTE5MGI5ZiBsZWdhY3ktdHJ1bmsKKzc3Mzc4IDFiZGExZjZiODVkNGFlMGFjOTc5ZDRiMDcwOWU1M2RjZmVjNjIyZGMgcmVsZWFzZTI2LW1haW50Cis3NzM3OSBkODQ2ODIwOGU4ODI0NjA5ZTRkNDg4MGQ2MzZhMWFjYTY0MTU4MjI0IHJlbGVhc2UyNi1tYWludAorNzczODAgYTFmYjU3NTUzMWIxMDM0Yjg4NjUyMjVlODgzYjExMjc4Nzg1NDU4YSBweTNrCis3NzM4MSBiNzc0OTVjNzdhZTQwN2EyZTE0NGU2MjljMzlmNTU0ZGQ0MTM1ODZiIHJlbGVhc2UzMS1tYWludAorNzczODIgYWVlNWExZjMyYjAwYmY2MDFmNWM2MmJlNmNhNjRlN2I3YzViNGQ4OCBsZWdhY3ktdHJ1bmsKKzc3MzgzIDQ0MWJmY2Q1NWYyZDliN2EzNGI5ZGI3N2Q1NWUzMzY5NGViNzVkMDEgcHkzaworNzczODQgYWRjODVlYmM3MjcxY2MyMmUyNGU4MTY3ODJiYjJiOGQ3ZmEzYTZiMyBsZWdhY3ktdHJ1bmsKKzc3Mzg1IGIzODZlNTNkZjkwNjkyYzZhMjZhOWUzYjU3MGM0MmNlZmE5ZWYxMzEgbGVnYWN5LXRydW5rCis3NzM4NiBlNTdjZmM1MjY2NTZmNjZkM2ZjM2VhMGJhN2M5MjI3NmM0ZGY5YmM1IGxlZ2FjeS10cnVuaworNzczODcgNWFiMmJjMmY2ZGI4MTVlZTUxNDRmODg4ODRkZjlmNDA1ZDVhMWFiMiBweTNrCis3NzM4OCBhZjFlZDE5NzE3ZWYzOWM5MzIyNzBiMmZiZDQ4MzQwZDA0MjU2YjQ1IHB5M2sKKzc3Mzg5IDg5YTlkZDhjNjI4ZDRjMDU0MWMxOTg4MWIwNWQyMzY0Mjg0ZTZhMzMgcHkzaworNzczOTAgYWFkZmMzMWIzZjE0MWYzODlmZWU0YzVlZmFjZTM1ZWYwYTc0OTBmMiByZWxlYXNlMzEtbWFpbnQKKzc3MzkxIDQ2NzVmMTFmYjEyNWQ2OWU5MGJiZjhiNDE0ODU2NjM3NjJmYjM1YjggbGVnYWN5LXRydW5rCis3NzM5MiBiNDA3ZThiZWNhNGE0N2U0MGJhNGFhNmZhNDIwMWJkMmRmZDZkY2Q5IHJlbGVhc2UyNi1tYWludAorNzczOTMgZjJkNTQwOTZkYzhjMjgzOTM5MDgxYzZhYTgwZGRlNmZiNGY4ZDgzYiBweTNrCis3NzM5NCBmOWMwYzQxMWY4MGNjZDE2NjI4YmU0MGQxNzljYzllOTY1NTUyODU2IHB5M2sKKzc3Mzk1IGFiODhkYWE0ZDJjZTJjMWYzZGQ2NGZkMGM0MDk3ZWNlZjAxY2E3MzYgcHkzaworNzczOTYgYTdhYjFhYmRlYjkyMGE1NGM3Mzk5OGM3NzZkODFkOWVmMmU2MjZkYSBweTNrCis3NzM5NyBjMWJlYzJkYjFmY2Q3MzVlNzAyYWZjZDNmNTVmYmYwYjBlZjc5ZTFjIHJlbGVhc2UzMS1tYWludAorNzczOTggN2UyYWY0ZTU3MDM5ZmJiNjcxYjRiNmY5NzE0MjBiYmMxM2M0ZmI0NCBweTNrCis3NzM5OSA2N2Y3YTBlOWUyMzMyNDM5YzcwMzJhYzRmOWY0NzVkNjhlZTYyY2YzIHB5M2sKKzc3NDAwIGMyZmRmMjUzMjlmZjMwY2Y4ZDY4YzBjMGU3Y2Y0NzlkN2IyMDM3NDUgbGVnYWN5LXRydW5rCis3NzQwMSAyY2ZmM2JjZTQwOTY3MjgzNzhiMDFhNzczODkyNGQ5NmQzZmVhNTYwIGxlZ2FjeS10cnVuaworNzc0MDIgMWYxNzc4MThmMWQwYTczNGZjNjE0MjJjM2JmMjI4OWEyNDg2NjUxMyBsZWdhY3ktdHJ1bmsKKzc3NDAzIDc1NTBiNGI5MDVjNzA3Y2ZkYmY0N2ZiNjVkNTMwODZhN2QwNDg5MmEgbGVnYWN5LXRydW5rCis3NzQwNCAzZmE2NzA3ZGY5OGNjMDRjOTI0NjJmOTI5NjIzNTQxNDdjZDVmODRmIHJlbGVhc2UyNi1tYWludAorNzc0MDUgNzhjM2ViNWMwNWZiMjg2MzM1NWI5ODAxNTM5NWZiNjY5NDFiZjA2YiBweTNrCis3NzQwNiBlN2ZhMzk1OTkzNTU0MWE5Y2IxYzUyZTJiYmZhZWIzMTkxZjRmYmJiIHJlbGVhc2UzMS1tYWludAorNzc0MDcgMzM5OGE4Yjc0MzNkMDYyNmU3NjBmOWZlYThhMWFiNzdjMDdhYzQwMyBweTNrCis3NzQwOCA0MDVjOWI2MzllMDU1MTc4Mzk3ZjRhMmM2NjRjZGI1Nzc3ZGIzZWQxIHB5M2sKKzc3NDA5IGZiZjQ5ODdlNTE0YTI3MjgzZjE5MmNmNzU2NTQ5ZDYwYzQ3YWQ5NzMgcmVsZWFzZTMxLW1haW50Cis3NzQxMCAzZTE3MTIyMjFmYTY4NjdmNWRiZTMxMzEzMGQ4ZWI0YzA5MTE0ZWVlIGxlZ2FjeS10cnVuaworNzc0MTEgYTY2NjY3NzA0YWIwZTZlODFmYzY5Yzk0YjAyNGIyY2E4OGUxMGIyYSBsZWdhY3ktdHJ1bmsKKzc3NDEyIDk3YTQwNDE3OWU1OWQ0OGU4MGQxMmI5MTFmOTYzNjdhYmRjZjk3MmEgbGVnYWN5LXRydW5rCis3NzQxMyAyNTQyNTU3YTEyYmQ3MGNkMjdjZWJmMjY0MmVkODAwMmI1MmQ1YTM2IHJlbGVhc2UyNi1tYWludAorNzc0MTQgNzFmMjQ5MWQ4ZjJmNGE1N2E4MzA1MTZiZmNjNGFhZTgyNzcxZTE4ZiBweTNrCis3NzQxNSA2OGZhOTUzYjVlNzZiMTQxZmQ3NTc1ZmYyZmEzZTVkNWJiZTJmMGVkIHJlbGVhc2UzMS1tYWludAorNzc0MTYgY2MzMmQ1N2UwNmIwNDE3NjFiYWJjNTljOTIwYWVlMzM2Nzk2NTliOSByZWxlYXNlMjYtbWFpbnQKKzc3NDE3IGYwMDEwOWUxNmVhYjkwODMwMGZlOGZlOTAzZjIwYzlkNDM4ZmQzYzYgcHkzaworNzc0MTggZGQzMWIxYzAzM2IyYjBhYWIwMjcwZWE5Y2Y0ZTkxZDg2NWY3OWNjNSByZWxlYXNlMzEtbWFpbnQKKzc3NDIwIGRjZTc0YTg3MzBmNTdjZWJjMDczZTQ0NWFiZGUyMjNlYzBiN2NjYjcgbGVnYWN5LXRydW5rCis3NzQyMSAzM2U0MDI5MDljZjI5YmEwZWYzZDE4MzE1OTM5N2JlYTE2ZDNmOTBhIGxlZ2FjeS10cnVuaworNzc0MjIgZWRmZWQwZTMyY2VkZjNiODRjNmU5OTkwNTI0ODZhNzUwYTNmNWJlZSBsZWdhY3ktdHJ1bmsKKzc3NDIzIDhhNWFjOWZmNTA1N2YwZTY2ZjY1Njg1YzRlZTUzNjI3NWRiOTUxYzMgbGVnYWN5LXRydW5rCis3NzQyNCAyZjkzNmI3ODMxYjY3Y2ZlN2NmZDcwNDg4NWMzY2Q1ZjNiNTM5Mjk1IGxlZ2FjeS10cnVuaworNzc0MjUgOGEzMjA2OTRlNTNiNWZjNzk1NjY1ZTYzMjYwYzJjMTA3Y2NmZmYyOCByZWxlYXNlMjYtbWFpbnQKKzc3NDI2IDA1ZmI3MWYwMjUzZDhkYTIyYTUzZGI0YmY5MDcwNmY3MmYwMjdiMTYgbGVnYWN5LXRydW5rCis3NzQyNyA4ZjVjZDNlYjdjNzM0Y2Y2NmVmYzVlNmY4MGUwZTQ2ODY3MGQ3ZTkzIHB5M2sKKzc3NDI4IGQ5ODA1YTk2MzUxYzA2MDFhYWRmMDMzOGUwMDI2OTUwYjQyZWVkMTkgbGVnYWN5LXRydW5rCis3NzQyOSBiNGNlMGM4YjBiY2ZmZTg5ZTRlMjI4MzczY2NjMzY2MTk0YWZjZTRiIHB5M2sKKzc3NDMwIDljODUyYTMxZTg3Y2UwMWY2ZmMwMmE5ZTBjYTVlODY3ZmUzY2MyYzUgcmVsZWFzZTMxLW1haW50Cis3NzQzMSAzZWVjMmU5ZDY0OTNmNTVhMGQyZjkyMmFkMzY3ZTIyOTE2ZDg2MTYxIGxlZ2FjeS10cnVuaworNzc0MzIgMjM1YzgyNjQzNDc0Yzg5NzMwMGQzNDg1ODBhZTNmMjQ5OTkwZmFjNSByZWxlYXNlMjYtbWFpbnQKKzc3NDMzIDMyZWFiNDQzYTk2YjEzNTFkMGY0YjE5YjUyN2E2MmFkNjBlMjU3MmQgcHkzaworNzc0MzQgM2ViMjlhYzdiMjBhNjRjOTFjYzc0NTI3ZTAzOWJkYWU1YWNmODk0ZiByZWxlYXNlMzEtbWFpbnQKKzc3NDM2IGYyMzU4ZDMzZjEwOWRkZGQ1ZGY4MzM5OTJhZTIzMGVjMWYyNTI2MWIgcmVsZWFzZTI2LW1haW50Cis3NzQzNyBlZmE1ODY3ZDhhMTRkMTljYjkzZDdmMzU0MTY5YzM3Y2ZjMWU4ZGU0IHB5M2sKKzc3NDM4IGUzMGZjYjk1NmI1ZmNmMjJiMWRiNjBjZGZmY2M3MTY3MGU5MmUyYWUgbGVnYWN5LXRydW5rCis3NzQzOSA0MWNlYTY2YTI0MjZhNTQ2MGUxNTFlMjEwNzU5ZWQwNjc0Y2FlMzBjIHJlbGVhc2UyNi1tYWludAorNzc0NDAgOWY5MGRiMjc2MGQ5YjgxZWJhMTdjMjIzOGI4NjYzZjI3Y2RiNmQ5MSBweTNrCis3NzQ0MSBkMDhkODZlYWQzNzVhMjJkYmI4MzAyMDExNmIwZDBkMDRmY2FjZGI2IHB5M2sKKzc3NDQyIDhmZDEyZWE2M2M2YWM2ZTJkNWQ2Mzk3NDAxYThjZTNhNzc4NDVkNzggbGVnYWN5LXRydW5rCis3NzQ0MyAyZjU0ZjdlOWMyYjE5YjYyYjU5NTQ0YzQ0MTRlN2JhOWZmMjk4NmZjIHJlbGVhc2UyNi1tYWludAorNzc0NDQgN2NlMjI1OGRlZThhNTg5YzY0NjI4YzY2YTAyMTUyNzE2NTUwZmRjYyBweTNrCis3NzQ0NSA3ZDdiNTc2NWI0NmY3YzRlMTIyMTI2MGQwZGY0OTk0MTZkMzU0YjhhIGxlZ2FjeS10cnVuaworNzc0NDYgMWNjYThkOGY5ZWU1MGU2YmM2NjZiZjZhNDAwNzNkZWU1YmVmZjYxZiByZWxlYXNlMjYtbWFpbnQKKzc3NDQ3IGM1ZGJlZmJjOTMyMTJjYjc1ZTJlODlhYTQ4MDE1ZjMxZjZhNDFiZTEgcHkzaworNzc0NDggMjNmMjFmNDgyMjk0ODU1ZWFiOWFiZDdjNmYwYWUxMTUzM2FjYWQ3NyBsZWdhY3ktdHJ1bmsKKzc3NDQ5IGI3NjQ5NzMzYTM1NDVlNDFhYzgxYmZkNzQwMmQ1MzQ2ZDZkMjU4YTggcHkzaworNzc0NTAgMmE5ZjY2ZGY0ZGM0Njc5MzYzZjVkMzM1OWEzNTk1ZmFiODA3ZWYxNCBsZWdhY3ktdHJ1bmsKKzc3NDUxIGI0ZjMwMWNlYTExNTZhNGNiZjllOGM2MDY4ZTExMjFiMzdiNTQ5MjggbGVnYWN5LXRydW5rCis3NzQ1MiBjMzJkM2IwOGZjZGMxNTU5ODc2YjZiYmIzMDA0MzM2NzY2NTA4MzljIHB5M2sKKzc3NDUzIGJlMzJmNjExMTgzYjkwM2Y0NjUzN2Q2NTQxMmRhOTE0ZTljZDU0YmYgcmVsZWFzZTMxLW1haW50Cis3NzQ1NCBmNWZkMDFiYTQ3YmUwYjdlODgyMjk0NTQ0MmQxNmJkYzI2NzI4NTVjIHJlbGVhc2UyNi1tYWludAorNzc0NTUgYjgwZDI5NjI5NzhjOGNmMTlkMmU1YmQ2YzU5ZmViMGYzZWRhYjViYSBsZWdhY3ktdHJ1bmsKKzc3NDU2IDJhOWNmZTJjZTU5YjQwYmM5OTk3NjNjMGY1ZmJlMGU5NWZhNGFlMjEgcmVsZWFzZTI2LW1haW50Cis3NzQ1NyA2NjJkZmZjMWIzNGQzZjYwZDVmNjE2MDc5N2RlZTA1NDNjMTg0ODhlIHB5M2sKKzc3NDU4IDdiNWY1YWY0ZjVhY2IyZGVmY2E4ZWUzNzEwNzZiODVmM2ZlYjA1MDAgcmVsZWFzZTMxLW1haW50Cis3NzQ1OSBhNmJmNjhlNmU4MjRjNzkwMTg2YTI4NjQ1YjU3NGE0M2YwMGM0OGJmIHB5M2sKKzc3NDYwIDNjMGE0MzNiMjZlMWZjYTFmNDg1ZDYwNjlhNGE3NDA2NGM4NTA2ZGUgcmVsZWFzZTMxLW1haW50Cis3NzQ2MSA2NmYxZDRhNGM3OTk0ZjkzYjJiNDEyYjU3Nzk3YmQ1MDg3OTljYWExIGxlZ2FjeS10cnVuaworNzc0NjIgNWNhMTk0OGE4ZmQ2OTMyMjJlNDc1ZDBiZTlkYmI0NTk2NGVlOWYzZSBweTNrCis3NzQ2MyBkNTEzNTg2NDVlNjA2Mzc1OTkzMTYxODAxNGYwMzZmZjNjZDFmY2U2IGxlZ2FjeS10cnVuaworNzc0NjQgODUzN2MzNzM2ZTk5Njc3ZWM1YjI0NzVmZjIxOTVlMmFkMmU0MjQ0ZCBweTNrCis3NzQ2NSBkMWZkMGEzNGJiMzY4MjkwMDA1ZmU2NTYzNGU1Yzg5N2JmMmNiNjZlIHB5M2sKKzc3NDY2IGJhZDFhZTNmZDA2MDczYTI5ZmQyYzRmY2VjNzg5NWVlODJkZmE2MzYgbGVnYWN5LXRydW5rCis3NzQ2NyAzMTI1MGMzNDgzM2E0NDIyZmFhN2EwNzkyZjk0YmEyYzM3MTgyNmEyIGxlZ2FjeS10cnVuaworNzc0NjggMTViMDY2OGYwZGM1OTdmZTY0ZDFhMmU0YTkwMjc0MTk5OTAwYzVhMSBweTNrCis3NzQ2OSA2MjJmNzliYmE1MjMxYTgzYzZlOGMwYmY4OTAwODRiM2QyMWJiZjgxIGxlZ2FjeS10cnVuaworNzc0NzAgOTIyNWVhNjc3YzRiMjcxMzc5MDAxYzQ5N2MwMTc5MjcxNTA2ZDNiZSBsZWdhY3ktdHJ1bmsKKzc3NDcxIGU1ZTU1ZmZlOWY3MzhiMDhkM2U4MTk2YjIyZjRjZmVhYjI1YmExZjkgcHkzaworNzc0NzIgYjIxZWZjMGNmZThiYmU1NTIwOTc4MjgwNzQ4M2E1Mjg3ODE5NGIwNyBsZWdhY3ktdHJ1bmsKKzc3NDczIDhlMjdkM2I4ZDJlYzQ1OTY4ZjBhZDZjMDdiNmNhMzQ1N2RhMmQxN2MgbGVnYWN5LXRydW5rCis3NzQ3NCBhYjkwNWY3NGJmMTE3YTFhNjhkMDdlODViNjIwMGI3YmFhMTA1NDE3IHB5M2sKKzc3NDc1IGM1YjZhNWI4M2FiNWRjNjcyNzA3M2YxYTIwODY3ODBiZTQ0Y2JlOTYgbGVnYWN5LXRydW5rCis3NzQ3NiA5ZmM3ZjI5N2QxMzJiOWE1YTEyOTMxZTFhYjc1MTFmMmMxZTQ2OWZjIHB5M2sKKzc3NDc3IDU3MTAyMjgzYWI1ZWNmNTUzMzlkMGY4YTkyNjhkZmNiNjgwNWNkZjcgbGVnYWN5LXRydW5rCis3NzQ3OCBjNWEwYTVkNmFjYjA3YmE5YzIzODYwNGIyMzhhY2FjOGYzNWU0MGYwIGxlZ2FjeS10cnVuaworNzc0NzkgNGY0ZjAwMWM4MWY1NTllMzRmYWVjZDAxOTU3YzljYjg4YjJkYmQwMiBweTNrCis3NzQ4MCA0NzhhYmM3YmNhYWFkY2EzMzYzMzM2ZjM4ZjJiZjY4MDc0OGI1OWQ0IHJlbGVhc2UzMS1tYWludAorNzc0ODEgMGY5NzRiYjIzOGVkYWEzZjFjMmQxZWJmZmM0ZGU0MDVhNGJkZmNhZCBsZWdhY3ktdHJ1bmsKKzc3NDgyIGM3ZjMzZDUyMTZmOWM0MGMyMmEwMTk3Y2RkODg5OTVkMDg3NTIyODYgbGVnYWN5LXRydW5rCis3NzQ4MyBiMzlhMDIxOWY3MjdlOTNiNGQ2OTFjMTcyODNkZTI1ZmJkNGM0YTdlIGxlZ2FjeS10cnVuaworNzc0ODQgMTAzMDY3ODBlNWMwY2Y1ZGRmNzM0NWNmY2I3MmMzMTZjYjhmZTQ4OCBsZWdhY3ktdHJ1bmsKKzc3NDg1IDIwMWI0NjFhMTJiZGZiMWM4MmRjNzAwMTA0NGQwZGY1MGEyNjUwODIgcHkzaworNzc0ODYgZThmODQ2MWQ2ZDFkZjUxZjE2OGY5YWJhZDRkMjI4YzdkMzk5NDNlOCBsZWdhY3ktdHJ1bmsKKzc3NDg3IGM0MzBlNjY0ZTYwNWJmZTBkNjJlMjQwNGRkMjcxZmJhYWEwZTFjZTcgbGVnYWN5LXRydW5rCis3NzQ4OCAwM2ZhNjFhMzdlMmQ1MmQwMDFiZTkwNzI2NmI2YThhMzgyNjlkZGVlIHJlbGVhc2UyNi1tYWludAorNzc0OTAgYWYxODA5ODEzZGU5NmQ2NDMxZjFhYTllNDllYTdmYzQ1ZmYyMzU1YyBsZWdhY3ktdHJ1bmsKKzc3NDkxIDc2ZmI3ZGJkNzM4ODQyMzJlMzBhZTFjYTAwOWExNmM0Yjg2MjViZTkgbGVnYWN5LXRydW5rCis3NzQ5MiA5MjM4NGQ3ZjQyNWE1OThlZGZmMjkyODIxYTk0ZTUxYjZhNjRmNWRiIGxlZ2FjeS10cnVuaworNzc0OTMgMTY4MmI5NjJlOGRlZTFjOGY1OWViOTUxZGFkMjhkZTY3ZDdlZTQxZSBsZWdhY3ktdHJ1bmsKKzc3NDk0IGNlMTFjMTI3MGI2OTA2Zjk0MjhhNjVmOTNjMzE1YTdmZTA4Yzc0YmMgcHkzaworNzc0OTUgZDc1OGViMmM4MjhlODZhNjIxOGVjYjFmYzE0ZWZjNmE5MWU4YmRlMCByZWxlYXNlMjYtbWFpbnQKKzc3NDk2IDliYWIzZDdhYjRmNTFiNzNlOTY0NjY1MWQ1MTEwNTRmMzA3YTY1MTMgcmVsZWFzZTMxLW1haW50Cis3NzQ5NyBiM2Y1MGQ2Y2I2NDA2YmEyYmMzMjk2NDIyZGE0ODYxMzIwNWY5OWNhIGxlZ2FjeS10cnVuaworNzc0OTggZDE0MGY0OTAxYTQyMzgwNmU5ZmFiZWU3NmZjZDA4NzdjYjViZTFhNyBweTNrCis3NzQ5OSA5ZTczYmU1ZmE4MGY4NmNjNWMwMjk5NmEyMDAyMTBiMTVhM2NjYWUzIGxlZ2FjeS10cnVuaworNzc1MDAgMzU0NjllNzlmZjgwNDZmZTJhMTNjODJmNjE5OTFkNmNmZTgwNGRmNiByZWxlYXNlMjYtbWFpbnQKKzc3NTAxIGViODRmNzIxN2M2NWQ5Mjc4ZTRjZjBjNjYwMWZjYjg1ODkwODBlNmEgcHkzaworNzc1MDIgODA0MTNjMTgyYTI4YjY4MDBlNzM5NzEyMjViMTJhNTdhNDMwY2YzMSByZWxlYXNlMzEtbWFpbnQKKzc3NTAzIDY1N2YxNjU4Mjk0MzczOWI5MDZmNjZmN2VmYWQ0MDE0NDkyYzhiMWMgcmVsZWFzZTI1LW1haW50Cis3NzUwNCBjNzZkNDFlNzQ0YzIzMTkwMzAwODk1MzZjYmJmNWU1NWJhM2IxNjYzIHJlbGVhc2UyNS1tYWludAorNzc1MDUgZDNiZWExNjY5ZjJkODkzZjI4ZDc1MTdjYzRkZDJkNDU3NTQzN2ExMCBsZWdhY3ktdHJ1bmsKKzc3NTA2IGVlZjJlYmMwODFkZWUwMDZmNmUzNzFiYzk4MDI1YzA3NzQ1MmUzZGUgbGVnYWN5LXRydW5rCis3NzUwNyBiZTBiZjBiYmQ5NGFmZmVjNTQxNjRmMDY1Y2U0MmMzZTZlZTI4ZTMxIHJlbGVhc2UyNi1tYWludAorNzc1MDggYjMwNDhhNTJlM2M4NWFjODMyMzViN2I5ZDUxNWYxNTQyZWIyMjIwYSBweTNrCis3NzUwOSAzYWFlZjJlZGZkYjM1NWRlNThiZGQyZTExZTg0ODIxZmJjYjJiYmUyIHJlbGVhc2UzMS1tYWludAorNzc1MTAgMWY4NGRkYWZiNmEzOTJjNGIwMDExMzU1NmZlMDdkNjkyYTc3MjE4MCBsZWdhY3ktdHJ1bmsKKzc3NTExIDc4NjEwYjQ4YzM5NmMxNjRmMzVhNzM1ZjA0ZDU2N2QxM2ZiOTVmMjggbGVnYWN5LXRydW5rCis3NzUxMiBlZjBkMDRkZTRhNDNmOWUwYzg0MGQ1MDIxYzZjNmVkY2JmMjM2YWJiIHJlbGVhc2UyNi1tYWludAorNzc1MTMgMDgyZDBlYWY4ZGRhZGM5Yzc5NThkOGVmMDlhNzc1YmIzMjc1NjA3MiBsZWdhY3ktdHJ1bmsKKzc3NTE0IDc2MDc2NjU5YjIyNDllMDQ0MTdmYjhlOTQyYWUzOTJmZTc2MmExNzQgcmVsZWFzZTI2LW1haW50Cis3NzUxNSBmNDdkMTk5ZWU2Njk3ZjBmNjA0NjNiYmIwYmQ3ZmZkMjY3MzI1MWE0IGxlZ2FjeS10cnVuaworNzc1MTYgMjAwNmZkODE2ZDIyNTIwMmMwNDZiYmZhNjI4NGFiZGFmYjUzYjYwMyBweTNrCis3NzUxNyA5MDA2MjQ1YjE5YWZmOWNmZmMwMDAxYTYwZjlmOWEwZTJhOWRiZTRlIGxlZ2FjeS10cnVuaworNzc1MTggNDI4OGM0MGM4NDQwNzViM2NkZTE3ZDg0ZWE3MGRmYmNiYzNjMzM5MiByZWxlYXNlMjYtbWFpbnQKKzc3NTE5IDU2NzNkYzNiNjQzMmU0YzkwYzk4NWI1MWU0Y2FiMzg0YmIwNTUxYTUgbGVnYWN5LXRydW5rCis3NzUyMCBlYWZhYmFkNWU2MDFlZWQ1NTUxMjA3ZTk3YWYxYWIwZmFiNjA1M2VmIHB5M2sKKzc3NTIxIDE4OWE1YWJiMjMyM2UxY2YzNWY5OGI5MTU0YmIyNjhiMTA0YmIxN2EgcHkzaworNzc1MjIgMzJkNmE5NGNkMGZhMzlmZTU4OGNiYzdjZTE5ZTljOTk5NTJmZGE1MCByZWxlYXNlMzEtbWFpbnQKKzc3NTIzIGExNmIyNGIyNWFjMzFhN2JmODk1YmE3YmI4NGJjYzk2YTk5NTU3N2QgcHkzaworNzc1MjQgMGZhYjNjMmRkMzE0Y2ZhZjgzMWI2ZWMxMGI5Zjg4OWY3Yzg0MWYxMyByZWxlYXNlMzEtbWFpbnQKKzc3NTI1IDI2OWMwOTkyMWJiMmZhNDdiYWVkNDFmMTBhZmQ0Nzk1N2VkN2U5MjkgbGVnYWN5LXRydW5rCis3NzUyNiAwODk1MDQwYWRlZmY1MjYyYjRhMGUxYmI1NDkyNGYzMzc1ODA1ZDI4IHJlbGVhc2UyNi1tYWludAorNzc1MjcgZjIyMTgzZTY4ODVjOTk0YzdjNjk5MmJkZWY5ZTU3NjlkMDVmMzk1MSByZWxlYXNlMjYtbWFpbnQKKzc3NTI4IDExYWQ0MmE3ODZhMjEzOTY0ZmEzNmI5ZDUxMjVlMjM0ZDE2NDc0NTYgbGVnYWN5LXRydW5rCis3NzUyOSBkMTQ5M2NkOTEzMDA2ZDUzYWQwNjY0ZTlmZjhlYmMyOGVhMGUwN2RhIHB5M2sKKzc3NTMwIDhlMTc5YTBmY2I1ZWI4YjU0NDE5YjBlNjRiZGQ1YWFlM2MwMGZjMzMgbGVnYWN5LXRydW5rCis3NzUzMiBjYTAwYWNjOWMzMDRlYjdhOWZmYTQ4NWY2MTg5ZTBhODc4YjEwYzE4IHJlbGVhc2UyNi1tYWludAorNzc1MzMgNWMzMmYzYjY1ZDIxNmZiMzRkZDc5NGEzYjAxNTcwYzRmYTUzZDQ4YyBsZWdhY3ktdHJ1bmsKKzc3NTM0IDE3NGJkYWIwMjRlYjgzNTAwMzk1MTQxN2RiMjAxNWQxZjU2NWYzNTggcmVsZWFzZTMxLW1haW50Cis3NzUzNSA2MzUxZDNkNTNkZWQzNzgwZGRiZjNlYjQ2YWU5MWUwMjNjYjM2OTBmIHB5M2sKKzc3NTM3IGQ4MWU0ODg0NmI0ZWJmOGEyZjhmMjE1YjI2NDJkYjU2NzE2Mjk0MjAgcmVsZWFzZTMxLW1haW50Cis3NzUzOCAyOWExNDEwY2Q3ZGM4MmM1MTAwN2JhNTkyOGIxZGJmNTA3ODQzOTJiIHJlbGVhc2UyNi1tYWludAorNzc1MzkgMWVhN2ZiZDk5Mjk0NTQzODk1NTNjYzMxNDE4ZmMwMTdhYTZlNjhmNiBweTNrCis3NzU0MiBiNWVlNDc4MjFmNGJkODdjY2MxYmQ5NzNjN2ZjOGJmMmRiMjZmNjg1IHB5M2sKKzc3NTQzIGVkOGIwZWUxYzUzMTFjZWZhZGQxMmI2ZTM1N2ZjY2UyMDNkNDEyNzcgcHkzaworNzc1NDQgYTZjYzQyMTJjZDU3ZTMwZDM1YTFkZWUwNTllYjgyYmRhOTlkMWQ3YSBsZWdhY3ktdHJ1bmsKKzc3NTQ2IGE0YTNlNjg4NDQ2ZTRlZTI1MWI4ZWEyZmE2OTk5NjNkMGYwODY1ZDIgcmVsZWFzZTMxLW1haW50Cis3NzU0NyBlMzUzZjVkNzlmNGNjOTM0ZjJmNjgxNzcxOGVmZDIwM2QxYTA0YjI5IHJlbGVhc2UyNi1tYWludAorNzc1NDggODFiMzE0NTA2MWQ5OGNlYzRjMmZmZjI0Zjg0Mjk4YzFkMzc1ODUyMiBsZWdhY3ktdHJ1bmsKKzc3NTQ5IGZiNzNhYTI0NTAxNGFiOTY1ZWUxNjlkMTY1YzNlZTM1ZDhiZDQ5MTkgcHkzaworNzc1NTAgNTM2NmQ1NzVlMmNkMWQyNGJhYWYzZDlkZjNiYmVhOGQ4OGE4MTM5OSBsZWdhY3ktdHJ1bmsKKzc3NTUxIDYwZTA2OWM1OGEzNWRjMjJjZThlYjJhNTNiZjk0NjMzMWQzZDE5OTAgcHkzaworNzc1NTIgN2FlY2ZhNDQzMmRmM2E4ZGVhZTk2NTE4NzJjMDNjOGFlZjEwYTk1ZSByZWxlYXNlMzEtbWFpbnQKKzc3NTU1IDcwN2Q4Y2E1ZWEwYjAyM2IwYjNlNTFlY2E0OTkzZGRmYWQ5NDk5YzEgcmVsZWFzZTI2LW1haW50Cis3NzU1NyA5M2ZhMTBiZWYxZTIyZmY5NTliZjcwOGRhNzk4ZDdkNGM2MTNlNGUzIHJlbGVhc2UzMS1tYWludAorNzc1NTkgOTJhNjJkZmZhNDA0OWNjNzg0MDExNDJkYTEzYjE5OGNiZmE3ZjZjNSByZWxlYXNlMjYtbWFpbnQKKzc3NTYxIDM1ZjdlMjMwOTdkODMwYTZkY2VkN2E0MGFmMmE4OGE0ODNlMWUxZjkgbGVnYWN5LXRydW5rCis3NzU2NiA5MzA0NjRmMzIyMDQ2NTNhZmNiNDQwNzlkMGIwYjg3OTQ5ZmNhZDkzIGxlZ2FjeS10cnVuaworNzc1NjcgMjNmMTJjYmYxMjJjMTMxNDdhMDQ4OWY4NzllYzE4MTRhYzc5YjgxNiByZWxlYXNlMjYtbWFpbnQKKzc3NTY4IDFhZTMzNzljMDIwOGY2ZWM4ZjRjYTI0ZTk1ZjhjM2RmZGY4MTM5ZjggcHkzaworNzc1NjkgYTMwNjgwYmNiNzU4OWNiZWZkNmFjYmFhYmUyNjU1MjA1OGJhMzA1MiByZWxlYXNlMzEtbWFpbnQKKzc3NTcwIDQ1NDdhOWJmZjdjNzdlNzczNzBkYmNjYmIxYTg2MGI2NjEwODE2ZmQgbGVnYWN5LXRydW5rCis3NzU3MSA2NmU1N2ViNTk5NTEwODE4Mjc2NGFjNGQ0NTZjOTM0YTY4MDUwZTcxIHB5M2sKKzc3NTcyIGE5ZmIyMDM3MDhjNDExOTc2MDQ5YjQ2MTBhODc5YzcxMDk4MjRiNjYgcmVsZWFzZTMxLW1haW50Cis3NzU3MyAxY2VmZmIzYzhjYjJlNTVjOWM4NDEyOGEwY2NhYmY4ODljNzZmMDI5IGxlZ2FjeS10cnVuaworNzc1NzQgM2JkNmRmMTFkMWQ2YzI2YTI0ZGRhZTE3NDA3NWQwZjBjMGQyYTdmOSByZWxlYXNlMjYtbWFpbnQKKzc3NTc1IGRmMDIwMDc5ZTI4ODlkNDBhZTIyYzg1NTg0ZjE4NDllYjMwYTlkYzkgbGVnYWN5LXRydW5rCis3NzU3NiA4Zjc5NzFiODIwYTQzNWIxMDVlMWU0NzFmMDFhZjBkNjRmYzU3ZjFiIHB5M2sKKzc3NTc3IGZiMzM3Y2I0NmI5ZGU4NWZmZDUyYTZiYjBkZDdiYTU0OTkxMjAzMmYgcmVsZWFzZTMxLW1haW50Cis3NzU3OCA3MzIyYzU2OTEyOTRkNGRjMjU3NjVkOGFlYmJjMzAxOGYyNjY2ZjI3IGxlZ2FjeS10cnVuaworNzc1NzkgYjk4ODhjMTMzOWRmNTIwYmFlY2M5YjhjOGE0MWJmZjA2NjIwYjk2OSBweTNrCis3NzU4MCA2ZWMxNGJjNmFiMGM5YjU2NWQ0OTgxMTY0MDAzNzkxMDlmNzgzMzdhIHJlbGVhc2UzMS1tYWludAorNzc1ODEgODAwNTU5YzlkNTA0YmZlYTFiNDk2ZmE0MTQ1ZDRlMGVmNWE0YWEzZSBsZWdhY3ktdHJ1bmsKKzc3NTgyIGQ2MGI3YjJjNGExZjUxNzRkODlmYmNhODZlNmNlMDFiNDkxYmQzYTUgcmVsZWFzZTI2LW1haW50Cis3NzU4MyBhMTE3Y2I5MjZkMjA3ZTA5YWUyOTMxMTFmMGM1OWVhMTUxNjcyM2E3IHB5M2sKKzc3NTg0IDhlOTY3NzAwN2ExZThjM2MzNGMxN2FiODUyYThmN2I4NjllNzdkOGQgcmVsZWFzZTMxLW1haW50Cis3NzU4NSAwYzhjYmRiYWZhYWRkYTdhZTdlZTE5YmI1ZWNjNTRkOWIxZDRlMjkxIGxlZ2FjeS10cnVuaworNzc1ODYgYzI0NzUyNmQ1YTViMDM0MmNkYjgzYmNiYmJiYzViOGU4NzkyMGQ2YiByZWxlYXNlMzEtbWFpbnQKKzc3NTg3IGE0ODVmY2RmZTg1OTYwMzg5Y2E5NTVhN2U1NjY3N2NhNmNjN2RmYTUgbGVnYWN5LXRydW5rCis3NzU4OCAzYjQ5ZWY2YjA5ZmZhMGE5NThhMjgxZDM2MmYyNzVmZjFlOWU1ZWZmIGxlZ2FjeS10cnVuaworNzc1ODkgNWM5YzUzYTcyMWE1NTRiZmIwMjVmMTRiMGRkNjUyMjNjYWJmNGZiMiBsZWdhY3ktdHJ1bmsKKzc3NTkwIDNlNjI5NDcxODUwYWZlODM5OWY3YTc0YTgyZTUzNjFlOWYzYTkzZTIgcHkzaworNzc1OTEgNjAzNmQ3ODY5YmQxZjg0MTE2ZGRlMTM1Y2MyMjM0NGVjY2VlOTVhYiByZWxlYXNlMzEtbWFpbnQKKzc3NTkyIGJiMTBmM2ZmYWUwMjgxZDM2OWFjMmI3NDgyMDdiMjk2YTM2NDY4MmUgcmVsZWFzZTI2LW1haW50Cis3NzU5MyAzYWFkY2UzOWQzNDUyZDliOTZlYTM5ZjNmZDRkNWRhZjhlYmM5MmVhIGxlZ2FjeS10cnVuaworNzc1OTUgZmVhY2FhNmU0MGI4NGI3MDQ4MThmZTYxMmY4ZTRlODhjMWIxZGZiYyBsZWdhY3ktdHJ1bmsKKzc3NTk2IGE5ZDUxOGZhZGE1OTk1NjVlY2M4MWQ1ZmZlZTU1ZTExNTVhZjA4OWQgcmVsZWFzZTI2LW1haW50Cis3NzU5NyAxMjFkZWVkNTk2OGVlNjhlNDFlOGQ0ZjI5ZWUxODEzZTZiYjA2YmE1IHB5M2sKKzc3NTk4IGQ1OWY3NmQ2Yjc5NTc3ZGMxYTNkYzFjMjhmMGY4MTAwZWJhNDUxZTEgcmVsZWFzZTMxLW1haW50Cis3NzU5OSBlYzE5MjY0M2FkY2JhMjlhNmViZGFlNGRjMzdiMzE4NzdiNDViZDhlIGxlZ2FjeS10cnVuaworNzc2MDAgODZhMzVlNTliNmIxOTU4NWU0YzRhMmEwN2YwNTU1ZjVmMGQ3YjZlZCBsZWdhY3ktdHJ1bmsKKzc3NjAxIDllNTliZTFkMGMzNzEwYmIxZWFmMjM0YTg4MTg2ODU2ZWM0M2JiMjEgbGVnYWN5LXRydW5rCis3NzYwMiAyZGVmMWRmZGYxZjYzOThiZDBkOTVmMTIzNTE3MTFkMzkyZjU5Y2QxIHB5M2sKKzc3NjAzIDE2Y2RjMTVlNWQ3NWJiMWIzMDY4NDFiOGI5ZWMyNzBjMjBmODA0ZmIgbGVnYWN5LXRydW5rCis3NzYwNCBmNmE2MjZmMzQ4NDBmYTBjM2Y1ZWJhZDhiODYwMjg4MGI2YmRjNzcwIHB5M2sKKzc3NjA3IGRmNGQyMTU4ZmEwNDg2MWQ1ZjFmNDMxMTVkY2NiZTg0Njk0YWEwMTAgbGVnYWN5LXRydW5rCis3NzYwOCA3NWJmYTVkYTFiZWI1MjUyN2Q3NGJlMGM5MWNlMDMwMjYyNjY3NzU5IGxlZ2FjeS10cnVuaworNzc2MDkgZjgwZTZiZDRmZDRlNmE3Y2M0YTYxNWVjMTYzYTlhNzAyMDc2YTMzMSBsZWdhY3ktdHJ1bmsKKzc3NjE0IGJhYzgyMWRmZmVhODA0ZjFlZjkxNmYzMGRkYzVmNTZkZGM2ZTI3YzAgbGVnYWN5LXRydW5rCis3NzYxNSA1ZGJiYzQzYzU5MWI5MmQ3MjViN2Q5MTAxNjFmNTY3MDM4MTgzYWQ5IGxlZ2FjeS10cnVuaworNzc2MTYgODg2MzIwZjFiYTgyYTA1YTJkN2RiMDFmMmQ5MDE2ZjA3MDkwZmI3YiBsZWdhY3ktdHJ1bmsKKzc3NjIyIDczZmVjZDRlN2ZlYzM0ZTkzODgzMjA0MDQxNjFlYzZiN2Q4NDRmNjkgcHkzay1jZGVjaW1hbAorNzc2MjMgMjY1ZWIyNTBlNGE1ODE3NTg4MmViYTI1ZWI5Mjc1MjI0MTc2ZjYzYSBweTNrLWNkZWNpbWFsCis3NzYyNCA5YzU2M2E0ZjNmOWEyNDRiNGFjZmExYTg5YzZhMjU4OTVmMmU4M2M0IHB5M2stY2RlY2ltYWwKKzc3NjI1IDQ2NGEyMzY3NjU0MDk4MmFmMDA5ZTBmODFjMTI3ZWM3ZDQwYTA2YTAgcHkzay1jZGVjaW1hbAorNzc2MjYgODc1MjViZDQ5YTlkNjE1NDNkMDViMWZiZTk0MGEzZTBjOGFiYzk3ZiBweTNrLWNkZWNpbWFsCis3NzYyNyBkNjZjNmViYmM2MTc0MGYwZGI1NmViYWRiMzBlMDA4YzJkNDNhMGU0IHB5M2stY2RlY2ltYWwKKzc3NjI4IDgwYjA3OGQwNTU3NzM2NjE5YTkxZWJmNTNhMzdiZDVlOWFkNDYyMzkgcHkzay1jZGVjaW1hbAorNzc2MjkgZDgyOGNjOTFjMDliNTA4MDcxMWQyZGM1NDMwYTQyNmE0ZGYyMWQxYiBweTNrLWNkZWNpbWFsCis3NzYzMCAxM2JiOWE5N2UxYzUwMjRiNTg0YjBiMTQzMTExNDA1MmY3YTYzN2VlIHB5M2stY2RlY2ltYWwKKzc3NjMxIDUxNzEyYzQyYzVmYjFmNzZiYzFhMjg5NzhhYmFjMzY2OWRhZThkMzMgcHkzay1jZGVjaW1hbAorNzc2MzIgY2VjMTQwZjcyZDAzZmJlZmQyYTQzYWRkMDVkNTM0YTM5MWRmMDM0YiBweTNrLWNkZWNpbWFsCis3NzYzMyBjMWRjZTk1OTZlNzcxYjliNDIxOTdmZGJiMjU5N2FlYjQwYWM5MTI4IHB5M2stY2RlY2ltYWwKKzc3NjM0IDA0ZGVhMDA2MDI1N2JmYTI3ZTJkMWJkMjQ3MzAwNmI4MDRjNzhhNGMgcHkzay1jZGVjaW1hbAorNzc2MzUgNDBhM2JlNzhiYzk5YmQwOTdhOWIxNTkzMzZhZmRiZDM3YzI2MmZiZiBweTNrLWNkZWNpbWFsCis3NzYzNiA3M2UzZWU0NjNjOTQ4NzcwZDhlMTZlMzk3NDBmNGEzMTRhYWIzY2E5IHB5M2stY2RlY2ltYWwKKzc3NjM3IDAwMmY3YWIzNWUxN2QwNmVlNTlkZTI4NDdkMzhjMGRkYjU1MTcyYTEgcHkzay1jZGVjaW1hbAorNzc2MzggM2RmOWI0MGZmNGZjZTk2YjgxYWQyMjE0MjVjZTM4M2FhNGVkMWU4MyBweTNrLWNkZWNpbWFsCis3NzYzOSBmNjQ2YWFhOTFiMGU3Y2QyODRjODY4ZjY5NTdkODFjNTAzYTliZDY1IHB5M2stY2RlY2ltYWwKKzc3NjQwIGZmMzU2M2JiYmI4MDM5YmFlYjU2MzU3OGIzM2YyMDAzZWZkMTRjMTEgcHkzay1jZGVjaW1hbAorNzc2NDEgOWNmMjBiZDE1MTZiOWM5NWZkZTM0ZjNiYmQwYWM2MzllMTkxYjgwNSBweTNrLWNkZWNpbWFsCis3NzY0MiBlZWY3NmM4MTJiY2JkY2FmODlkMzIzNDM4MDUyODZkMjQzOTg0ZDBiIHB5M2stY2RlY2ltYWwKKzc3NjQzIGMxNGM5NDUzMTI3MzdiY2JmYzZmNzU3OGZiYjRjNTk4OTc4NWI4ZmUgcHkzay1jZGVjaW1hbAorNzc2NDQgYjQ3MWUwN2EyMzc1YzZhMjg3MmNiY2UzMTg5MzU2MWVmYjExN2RkMSBweTNrLWNkZWNpbWFsCis3NzY0NSBiNGFmMjE0NTY3OGI4ZTkyY2UyNjYxMDNmMThmYmU1NjFhMThiODk0IHB5M2stY2RlY2ltYWwKKzc3NjQ2IDY5NGFmZjE2Nzc3ZjgwNGZiYzBhZjdjZDkxYjgxZDQxM2Y5MTg0MzYgcHkzay1jZGVjaW1hbAorNzc2NDcgN2QxOTk2NzI3ZDA4NGQ4N2I2MmMxZmVkYjhjZjAyOGE3NmRiNjc5OCBweTNrLWNkZWNpbWFsCis3NzY0OCBkYmMwMGZlMzc3NzE5ZDQ0YWRmMzZiMDJhMTZjY2Y2NDE1YmE4Y2RlIHB5M2stY2RlY2ltYWwKKzc3NjQ5IDFjYWJkZjI4OTM4ZWU0ZWYwZGY5MWMwZDExNDFjNzEzZmM4Nzg3YmUgcHkzay1jZGVjaW1hbAorNzc2NTAgMGJkMmIwNzIwODMyOTg1YzhjMTQ0ODEwMTgwNDFjYmQ5MzBiNGU0ZCBweTNrLWNkZWNpbWFsCis3NzY1MSA5MzFlYzU1ODkyNzE2NGIwNzVkNDgxMWIzODY1NjEzYWYzNmMwYmY0IHB5M2stY2RlY2ltYWwKKzc3NjUyIDBiYWMzZGI0ZDVlMjhjNzhhYzNjNjM2ZWQxOGVhZTcyNjllMTgwN2UgcHkzay1jZGVjaW1hbAorNzc2NTMgNjMyNjNjY2RiMDgxYWEyYWJlNmU0MDA3ZDYyNGRlYTU2ZDE4MTczZiBweTNrLWNkZWNpbWFsCis3NzY1NCA2ZDg5NmU0MjRhM2RhNDM2ZTgzOTUwOWY4NmM2MjBkMGJkM2FmZTFkIHB5M2stY2RlY2ltYWwKKzc3NjU1IGIyMjE0ZWUyNzk4Nzk0ODFmYzZjM2I4NGNjNzU4Mjk3NDVjYjc3NDYgcHkzay1jZGVjaW1hbAorNzc2NTYgMDgxM2U4OWQwMTkzZjY3OTkzZjg2NTdmNWJmMjJkMTg1ZWMxOTkwNCBweTNrLWNkZWNpbWFsCis3NzY1NyA0YWQwM2Y3MWQxZTEzY2Q1MzBkZWM5ZjRlODhjZGUxNDdmMGM1NmU3IHB5M2stY2RlY2ltYWwKKzc3NjU4IDU3N2MwOTlhZGE4ODE3MDE5Nzc4MzdkZTU5MGFjNmYzY2UwZjEyYTQgcHkzay1jZGVjaW1hbAorNzc2NTkgZjA0MDg2MzdiZTc3ZjI5OTc5ZTg3NzFiN2MwMjMzODAxZmI0MTQxMyBweTNrLWNkZWNpbWFsCis3NzY2MCBiMTk4YjBlMjFkNjJjYzY4ZDZlYWNhOGMzNTVlOTgwNzZmZTBmNmQwIHB5M2stY2RlY2ltYWwKKzc3NjYxIGQ0MmE4NTQ2M2Y5Y2Y0MjhlMjRkZDQ1ZjEzMzA4MGYzZDc3ODgyZTcgcHkzay1jZGVjaW1hbAorNzc2NjIgNWVlYzNiMTFlNDFlMTkzN2RhMDkwODQ0M2Q5ZjI3NjAwMzAwM2RlMyBweTNrLWNkZWNpbWFsCis3NzY2MyBlMDNiOWJkY2Q0MDVlOGQ5NGJjMWEzN2VlMDk5NjdiNTJlNWIzNTg0IGxlZ2FjeS10cnVuaworNzc2NjQgYWU2ZmIwNWI0YzE5ZGU2MzM3Zjg3Yzk0ODYxODVkMjMyYmFkYTY2MCBweTNrLWNkZWNpbWFsCis3NzY2NSA3ODJhNDBmZjNmMGRjMjJjYjY2NTRkODNjZTFiOWFkOTEwZjQ3NTgyIHJlbGVhc2UyNS1tYWludAorNzc2NjYgZjM0ZjhhZTc2NDZlNzA2MzlhZTQyOWE1MTcyYzVhNmFmZjlkZWNlYSByZWxlYXNlMjUtbWFpbnQKKzc3NjY3IDRmOTViNDM1MjE3OWM4MmQ4Mzk3ZTUzOWU0YmUwZGJhZDJmODMzYzUgbGVnYWN5LXRydW5rCis3NzY2OCAwNTllMWZkNzg2NWNmZTdiNWVhMTc5ZWYyN2U5NGMxMGZlNTllYmNjIHB5M2stY2RlY2ltYWwKKzc3NjY5IGZlZTdhODhiMDZkMWZlYzk1OWQ3M2RiM2VkOGRjZmExNWIyMTgxZjIgcmVsZWFzZTI2LW1haW50Cis3NzY3MCBmMzhjMTE5NmQ5ZmYxN2U0ZjM4ZDJkMTVhNDBmYTZiYzgxNzRkY2Q2IHB5M2sKKzc3NjcxIGYxYWNkMDE3MjVlMDE4NjUxZDBiYTgyZWQ3NWMxNWViODA1ZWJlMDEgcmVsZWFzZTMxLW1haW50Cis3NzY3MiBmYmU2ZWNiOTFjNGJlNTk1OTg0YzE3NDY0YjY5NDhhNTRlM2JiNjIyIGxlZ2FjeS10cnVuaworNzc2NzMgMjJjZGVjN2Y0NGM1MmYyYmM2YThiMmIzM2MzMjJkNWRhMzIwYjk0NCByZWxlYXNlMjYtbWFpbnQKKzc3Njc0IGNhYTY0ZGM0NGQxNmVmYzJhOGJlNjExM2E2YzMwZjY0MWMzMTAzZDcgcHkzaworNzc2NzUgZjU2ODM4M2FjYzlmODAyOTBkMGJjM2UwZDc0M2IxMDczMTJmYzZkOSBsZWdhY3ktdHJ1bmsKKzc3Njc2IGE5OTZkNjZmYWVkMGNhMmRkZGI2YjZlNjQwNzZiNzQ1N2I1ZWM0ZjYgcmVsZWFzZTI2LW1haW50Cis3NzY3NyA1YzIzNjcwNGRhZjE1YTkwODNhNWQ2ZGIzODRlMDQ0MGNiNjIyZDlkIHB5M2sKKzc3Njc4IGI2MzZjYzcyZDJkZTczYjNmMTlmMTlmNzFlYTM3ODk5ZDQwNTBiNTggcmVsZWFzZTMxLW1haW50Cis3NzY3OSBmODUzOWI0OTdkNGFhMTMyYTY1MTVhMjNkMDhmMzE4YTZmY2QyNjcwIGxlZ2FjeS10cnVuaworNzc2ODAgOWUxMjRlNjQwMmJjNzIxZDdhYzBjOGFjZmU0NTBiNmI5YjlmNDJkYiBsZWdhY3ktdHJ1bmsKKzc3NjgxIGVkNDAyN2U2NjYwMDZlNzM4NjgyMDVhYTU5MjkxNTAwOGUyNzEyMjcgcmVsZWFzZTI2LW1haW50Cis3NzY4MiAxZjcxNWEzNzdlZDA5ZDI1ZTVhZGM3Mzk2Nzg3YWZiNTNjZDcwZTU2IHB5M2sKKzc3NjgzIDRjZmRjOGI3ZmIzYWYyNmY3NThkNTg5NDAwOTJiYWM3NTc4NTEwN2IgcmVsZWFzZTMxLW1haW50Cis3NzY4NCBmNmZjZWMyOGFmOWU0NTk2NDZkZTMxZTVhM2FjMWU1MmJjZTc2ZTA2IHJlbGVhc2UyNi1tYWludAorNzc2ODUgZmU0ODg0YjA0MWI5M2Q4Mjc1MWI4NTMzYzMyMjU4ZTBmNmFlZGY1ZCBweTNrLWNkZWNpbWFsCis3NzY4NiBkMGQwNTc5ZGQxZDEzY2YzMjdmZGQ0MGZiYzA3ZmEyZTFmZWEwZjlhIHB5M2stY2RlY2ltYWwKKzc3Njg3IDRlNjk5ZDdjMzJlY2Y4YmEwMjRjOTNiZjVkMDZmZTZlNDc3NDc0N2EgcHkzay1jZGVjaW1hbAorNzc2ODggMmNmNDFkOGY3ODdhYTEwOTk1OTA4YTUwOWNjZGRlOWVmODUzMTQxNyBweTNrLWNkZWNpbWFsCis3NzY4OSBhZGM5OGJmMTUzZWMwNGJhYjdkZDBlYWNhOTYzZjg3MzhmZjBjOGI3IHB5M2stY2RlY2ltYWwKKzc3NjkwIDAxY2U3YTg1OGRhZGIyM2E1MjM4NDhkYjkzMDNmZWVhNWI5OGQ3N2UgcHkzay1jZGVjaW1hbAorNzc2OTEgNmI3NjE4MTdiNzE3NDFhYTJmMDQ1NjgxZTQ3ODQ3Yjc0YmY4YzU3NiBsZWdhY3ktdHJ1bmsKKzc3NjkyIDMxY2RlNmU2M2MwM2Q4YjM5Y2M2Mzg2ZGE1YThiNDUzYTQyODg0YzYgcHkzay1jZGVjaW1hbAorNzc2OTMgNjA3ZTI1MjVjMDUwN2Q1MzI5MTc2MWI5YTA5MzY5NTlkZDJjZmYyZCBweTNrLWNkZWNpbWFsCis3NzY5NCAwZWM2MDM1MzY1NmUwNDEzMzg2ZWY4ZjEwNWZjN2EzN2Q2Y2E2ZTBlIHB5M2stY2RlY2ltYWwKKzc3Njk1IGNlYzJmMjgxMTE4MjM3ZjUxNzA5ZTlhZTMzM2RhNDdiMjc4NzhlYWMgcHkzay1jZGVjaW1hbAorNzc2OTYgZDBlNGJkNzZjNjkyNzQzNmU2ODYyYjMxNGJjMWU1OGEwNTI4Y2I4MCBweTNrLWNkZWNpbWFsCis3NzY5NyBkM2I4M2ZkYmM4MWE0NDE4N2FlNzY5MGQyYjVhNzUzZjU5MTY3ZTg4IGxlZ2FjeS10cnVuaworNzc2OTggN2E5ZjM2Y2M2ZGYxMWFlZDI3NGNjOTllZTEwMzdmZWVlM2Y0MWI1ZCBsZWdhY3ktdHJ1bmsKKzc3Njk5IGE2NzhmZTFjOWM4YmU5MzYxNDFkMjE5MDE4NWNjNzAwN2ViM2EyZjQgcmVsZWFzZTI2LW1haW50Cis3NzcwMCA2ODAwNjY2M2E4NTIzMmI5NmVhZjViOWE5MWFmNWIzNDI1NTI0ZTU1IHB5M2sKKzc3NzAxIDc4N2M2ODBmMWZlODhjZjg1Njg0N2E1ZmI1NTQwMjQyM2M1YzM3NmYgcmVsZWFzZTMxLW1haW50Cis3NzcwMiBmNjY5Y2YxMDBlYmJlZDNmZWM4NTM3M2JiNjlmY2FhNGU3NTVjYzhjIGxlZ2FjeS10cnVuaworNzc3MDMgOTcwNWVmM2ZkYjIyNzgxN2U1ZTgwNWVjNjkyYTY4N2U5YWNkOTkwMCBsZWdhY3ktdHJ1bmsKKzc3NzA0IGZhNjllODkxZWRmNGU3Y2RmZGJkM2QzODc2NTk2NTU1YzU4MzYzNWQgbGVnYWN5LXRydW5rCis3NzcwNSBhYzZlOTYwYTAxNGQ4MmFlMmQ2OWZiYTBmN2MxZDQ5MDk5MDEwMzEzIHJlbGVhc2UyNi1tYWludAorNzc3MDYgMmRkNjRjMjQ4NTRjOTEwZDEyNzY0YzhiNmVlMGE5ODc2MTMxODZkYSBsZWdhY3ktdHJ1bmsKKzc3NzA3IGJiMWMzM2VmZmY5MzI5M2ZlYTE5YzQwZDFhNDVhM2M2MWI1MTVmZWMgcmVsZWFzZTI2LW1haW50Cis3NzcwOCAzMDFlZDY5ZWRkYzRlYWNjYzFhYjgyMTYwM2Y3YWE4ODU3ZTQ4NzE5IHB5M2sKKzc3NzA5IDkwMjIzZTM0NThlYjMzOWRmMDIzNmU0NDU2NDJjMDNjYWNjZjkyZDQgcmVsZWFzZTMxLW1haW50Cis3NzcxMCAxZWE2Y2ViYmQ4MThmN2Q1NzEyZjJlMWMzNWY1OWIwM2U1OTMzMjJiIHB5M2stY2RlY2ltYWwKKzc3NzExIGYwZjIyMWUxYTdjMDMwZjdmN2RkOTViYzc5ZTgzZTc5YmQwNGVkN2MgcHkzaworNzc3MTIgYmFkNWUwM2UyNDQ1ZTNlNTQ2NjI3NjAxYjI5YTYyNTY2MjE0OWQ3MyBsZWdhY3ktdHJ1bmsKKzc3NzEzIGQ3N2M5NDdmZjdkYjVhZWVmMjE0M2NhOWFlYzM1OTZhYjY1YTQwODcgbGVnYWN5LXRydW5rCis3NzcxNCBiNDBhNWE1NjhlNzZlNDRiMGQ2NjUxMTlhYmI1MzUyY2RiMzBhZGEyIGxlZ2FjeS10cnVuaworNzc3MTUgMTc4OTE1NjZhNDc4YzQyNDk0YTA0ZDgwOGQ2NGE0NTE0OGFjYWY4NyBsZWdhY3ktdHJ1bmsKKzc3NzE2IDVhYjMwMTJmOTBiNzRjODA1NDYwZDA4M2QwZTEzMDE3ZDM1YTk5NDIgcHkzaworNzc3MTcgODA3ZDgzZjU3YmM4ODM5ZDU3NWE0ZjJmNWYxNWUwYzljMTNhOWIzMiBsZWdhY3ktdHJ1bmsKKzc3NzE4IDVkYjgyYTU3ZGRkMDY2YmU2ZTQ1Y2ZiNjI3ZGJkMDZlNWE3NWY2NTggcmVsZWFzZTI2LW1haW50Cis3NzcxOSAzOTQ3ZmRjYTJmNDBkZmZjMWUwM2E4OWQzYjg0ODk5MDQyY2RlNzQxIHJlbGVhc2UyNi1tYWludAorNzc3MjAgZmZjNGE0NGJmZGI5OGYzZjlkNzBlMzIxZmU2YWUwZDM3YjlhZDUyOSBweTNrCis3NzcyMSA4NzY1NmU4M2RjMTk2ODMyMTZiNDU2YzRmNWI1ZDgxOTgxNWZlNjliIHJlbGVhc2UyNi1tYWludAorNzc3MjIgYmUxMmQzNjIxNTE5NTUzZTIwOTQ3MmU0NDBhMjYyY2JjM2M3MDlhZiBweTNrCis3NzcyMyA4YzNkMmE3MWVkMDE1ZWVjMTFlODhmMmQ0YTFhMjEyYWJmYTFlNWNkIHJlbGVhc2UzMS1tYWludAorNzc3MjQgMmQ3MjM5Y2FkNzEzMmJlNWJkYjNkYjJiYzY4YWE3NThkYzUxMzdkYiByZWxlYXNlMjYtbWFpbnQKKzc3NzI1IDFkYzkxZTlkZDVjMTNhNGJjMmQzYmI3ZDRiNTg5NmFiMjY0ZjIzMjUgcmVsZWFzZTI1LW1haW50Cis3NzcyNiAyMzI1MzNmNzFhYmQ2ZjZkYTk5Y2RlMzEyZjI5ZjRiODAzNDZjZGFjIHJlbGVhc2UyNS1tYWludAorNzc3MjcgNmZmY2RhZmEwMTE4OTk0NDg1YTE3NGNlNDEyODMxNDFiODM0MTIxYiBsZWdhY3ktdHJ1bmsKKzc3NzI4IDcxYWNkNDQ4MmU2NTViN2QxYTEzNzY0MzcxYjdlNTkwZWE0NDc3YzIgcHkzaworNzc3MjkgZGFiMzRiNjBhNzJlMWFhMjM0NDBkNmNjMmQ0MjMwNDFiYTAzMGZkNSBsZWdhY3ktdHJ1bmsKKzc3NzMwIGU5OGVlOTQ1ZTI2MjczMDQ3OTgzYjM2NjBhZTBiOTIyNzExODZmZDEgcmVsZWFzZTI2LW1haW50Cis3NzczMSBjMTBhY2U1Yjc2Y2U5NTRkMGM0MjViZWIxYTZkYzJiMmJmMjZlMzU3IHB5M2sKKzc3NzMyIGZmYjk0OTIwZWZmM2FiOTdiMmUwZWI0NjQ4N2MyMjU1YzZkZGZjZTEgcmVsZWFzZTMxLW1haW50Cis3NzczMyA2OGQxYzgxZmZmMmVhNDM4MjYzYWNiMWE0NDIyZjhjODVmZDBmYzYzIGxlZ2FjeS10cnVuaworNzc3MzQgZWFiNmNkZTJhMzFjODQ1YWY5NWEzODI2Y2E1ODVmNTdkMDhlMTQ4NSByZWxlYXNlMjYtbWFpbnQKKzc3NzM1IDVjMWQ3YTNiYTI5YzE2ZWVjNzg3NTQyMWEwZGRkYjJlN2U2YjMwMTkgbGVnYWN5LXRydW5rCis3NzczNiBhMjU2NzkxYWExOWQwZjhmZTFhZTNkNGYyN2ViODFhNTE5MWMwMjU3IHJlbGVhc2UyNi1tYWludAorNzc3MzcgMGNjZTYwYjY4ZTQ2NWMwOTE0NGI0MGQ0NzkxZTJmYTkyOWM5NTlkMiBweTNrCis3NzczOCA2YTA1NzBlZTIzNjZlZDZkZTY1MWQ4NTExN2Y1ZGM3MTcwYjMxYTc5IHJlbGVhc2UzMS1tYWludAorNzc3MzkgNjdmZjA0MDc0MjcwMzIxMTk4MWZjNmUzNzkxZTJhMWI2YmVjMGI2MSBsZWdhY3ktdHJ1bmsKKzc3NzQwIGZiZmU1ZTQyMzQ5ZjZhM2UwMmQ2OWJlZDhmZmY5NWM5NmY3NDA4ZjQgbGVnYWN5LXRydW5rCis3Nzc0MSAyNDE4YTBhOWE5YTkyNWM3ZGI5OTQxMmZhYjVjY2UyM2FlN2NkOTEwIGxlZ2FjeS10cnVuaworNzc3NDMgNWU4OTMwZjM3MGQ1NDU3ZTMwNDk5OWRiNzg5MTNlMGNhNTZjZTdiMiBsZWdhY3ktdHJ1bmsKKzc3NzQ0IGZmNjYzMjRmNTJhMTI0MjJkM2RmYjliOGM0OWI2YjkxMjEzOWU1MDEgcmVsZWFzZTI2LW1haW50Cis3Nzc0NSAwODM1N2Q5ODc4MmI5ZDNlOWFhZTZkNzcwOTI2MmM1YjUzZTIyNjUxIHB5M2sKKzc3NzQ2IDIzNTkzM2Q0ZGE4ZWRlMDkzYzNkYzdkMTg4NGY4YTEyNTMzMjU3NjkgcmVsZWFzZTMxLW1haW50Cis3Nzc0NyA2OTg1YzBlODViNGJjOGFjZDU1MjY2MzcxZTJlZmJjMjZjZjU2ZTA5IHJlbGVhc2UyNi1tYWludAorNzc3NDggNzhjMGFjMDdhYTllYjI3NmU2NTkyY2ZjZTU1Yzg1MWQ2YTYxMzdhNiByZWxlYXNlMzEtbWFpbnQKKzc3NzQ5IDhkZDQ5YTg2YWRhYTU0ODMxZmE5OWYxNjViYTU5NjFhMGFjNjJiYTQgbGVnYWN5LXRydW5rCis3Nzc1MCA3NzIzODk1MGM2ZGQ0MDVmNzI2YjEyMzdlZmI3NWUzYjk0MWZkNWEyIHB5M2sKKzc3NzUxIDFmMTY1YzQ0MDMwNjRiNDFlZTY3ZTlhYjdmMzY1NmQ3M2VjODdjMjcgcmVsZWFzZTI2LW1haW50Cis3Nzc1MiA2MjA4ODM2ZmVkZjk5YTU0NjI4NDZiODM1ODg3NmJhYmY5YjkzNjA3IGxlZ2FjeS10cnVuaworNzc3NTMgM2UwZmVkMjVjMGFlNTljN2QwNzA2ZDM0YzBmN2FkZjAyYjMyMDI2MCByZWxlYXNlMjYtbWFpbnQKKzc3NzU1IDIyYWVhMTMxYjZhZmMxOTE5Y2Q3NzUwMWY1YWVjNzY5NmJhZTc4NGEgbGVnYWN5LXRydW5rCis3Nzc1NiAyYmRlNmQ0YTEwZWRlZGZhNWY2ZTBmN2RhNzFmNjYzNTk5ZTNhYTFkIGxlZ2FjeS10cnVuaworNzc3NTcgNzQxMTg3YmZjNjEwMmVlNTEyNDcwY2JkZGVjNGRjMTk1YTQ4M2JjOSByZWxlYXNlMjYtbWFpbnQKKzc3NzU5IDU4MjY2ZjFhMmU3ZjNlMzYxNmUxMTNiMDc2ZDk5Mjc2ZTZmNzAyYzcgbGVnYWN5LXRydW5rCis3Nzc2MCBiMjViNzhjZTc5OGRjODdlY2M3Y2MwMThlYzkyMDhmY2Q2NWRiNzBlIHJlbGVhc2UyNi1tYWludAorNzc3NjEgZjlmZDE3OTVmY2Y3NGUxM2Q5MDkyYjZhNzljMDM0NGY2ODgwOTYxZiBsZWdhY3ktdHJ1bmsKKzc3NzYyIDEwYWQ3ZDhlNWQxNzE1YTU0NWNlMTlkYjM1ZjYxOThmMjg5MTBkY2YgcmVsZWFzZTI2LW1haW50Cis3Nzc2MyBiYzJiODhiZWFlNDVkYThkOTdlZDU4NWNmZTFlNjM5NDZhNzE5OWQ1IGxlZ2FjeS10cnVuaworNzc3NjQgOTA3ZmYxM2JkNGUyZTE0NTYzNjMwNmRjMDY0MTJmMjZjNDgwMDM1MCByZWxlYXNlMjYtbWFpbnQKKzc3NzY1IDczNzljZjcwZmQ2MDNhZjVmOGVjYzc3OTUwZDEyNzJjNGM0YmE0N2QgcHkzaworNzc3NjYgODIzMmIxMGUzNGUxMzg4YmRhZWEzMjhjYTNjMTdkNDRhZjI0OTJiNyByZWxlYXNlMzEtbWFpbnQKKzc3NzY3IDkyZTZlOGQ5MDRhMjllZGVjMzBiMDliODlkNGM5NWIyYzAyNDJjZjkgbGVnYWN5LXRydW5rCis3Nzc2OCAzYzBjZDdhN2RiOGVlMzAxNzFjYzRiZDA0Zjc3MzMyOWMzZDk1OGZjIHJlbGVhc2UyNi1tYWludAorNzc3NjkgODA1NjIwNTFiYjcwYWI1NzEwNjUyMTE4OWQ1ODNjMWVmMmRkOGFjYiBweTNrCis3Nzc3MCBkODE1ZGQyZmI1YmY5MTg2MjczNGRhNTU1ZDRiNTUxNjY0YTcxNWY2IHJlbGVhc2UzMS1tYWludAorNzc3NzEgMjc0NmMyMTdkZDllMGE4NGNkYTU3YzkzMWU0ZDNhMTUyY2E1ZmMxMiBsZWdhY3ktdHJ1bmsKKzc3NzcyIGZkZTk3MTllMjA1NmY0M2FlYTU2MzYyYjFjMDE0MjI3YjAxMGRkMTQgcmVsZWFzZTI2LW1haW50Cis3Nzc3MyBkZjMzNTk5MTg1MTdkMjE2MmEzYjk2YmQ3Mzc2NjE4N2NjY2NiNzQ2IHB5M2sKKzc3Nzc0IDBkZGY4ZDk2OTBlNWFlN2QxZDI0YmRlZGNhODZhMGY5YTZjMzBlY2YgcmVsZWFzZTMxLW1haW50Cis3Nzc3NSA2NzI2YWViODY3YjkwMDIwY2FkYmNiOTA4ZjQ5ODQxOGYyNjA1YzVjIGxlZ2FjeS10cnVuaworNzc3NzYgNDk4MzExZmQ4ODIyY2U3OWFjZGU0OTg0MDA1NTVhNzJhYWU3ZjNhZCByZWxlYXNlMjYtbWFpbnQKKzc3Nzc3IDM0ZTJkNTE2MmNlOTNjMjEyMzIxZjg3YmJhNWM4NTAzYzk1ODNiNWMgcHkzaworNzc3NzggYWZkMjBkM2Q4NWRjODhmNDZjYmNiNDdjYjI0MmY0YTMxNGExYTEwOSByZWxlYXNlMzEtbWFpbnQKKzc3Nzc5IDc1ZDI0YjI0NTJhNTliMzU2ZjRjZGY0ZGMwMDMyNmY4ZThiYWUxZGMgcHkzaworNzc3ODAgMTIwNTQ2MzQ2ZjkzOTc5NDYwNDg5MTRjZDNhYmYyNTEzZWUyMTI4OSByZWxlYXNlMzEtbWFpbnQKKzc3NzgxIDc0OGUyODJlMDkxY2U0M2Y2YTI3NTRmN2RiOGRkMzA5OGRkMTI2M2QgcHkzaworNzc3ODIgMWRkODIzMmQ0ZWNiOTgxYzQ1NDZkOGFkNmNiMTI1NTBkYjY4MTgwNyBweTNrCis3Nzc4MyBkNGUyMmZkNTI4ZTJhMmUyNjUxNzlhMTQxZDY3OTM1ZjZhZGJkZWZjIHJlbGVhc2UzMS1tYWludAorNzc3ODQgZjZmOWVlODNlY2JmM2M0NzVmYTQ1NzkxMzJhODBlMWM1NDA1ZjM5YiBsZWdhY3ktdHJ1bmsKKzc3Nzg1IGRjNzE0N2QxYjdkOTRkYmYyOTkzYTBjOGFjMmUxYTE2NGY1ZDNmNWMgcmVsZWFzZTI2LW1haW50Cis3Nzc4NiA5NmQ1YzcwMzE0NDA1MjkzNTE4Njk4NTE5ZjkwMDI5NzczOGQ3ZDI0IHB5M2sKKzc3Nzg3IGUyMGUwMmZjMTQ0N2ZjNzMyZWU1NzdkMWE1YjNmZDUyYjY4YWFlNTggcmVsZWFzZTMxLW1haW50Cis3Nzc4OCBhZDdhNjE1NzRiZDY4OWU2MDY4MzczZWVkOTUxODdhODVjODE2N2U1IGxlZ2FjeS10cnVuaworNzc3ODkgOTU3NWNlMGRiMjA0N2MxYzU2NmFhNmU5ODlkOTYxMjZhMmJlOWIxNSBsZWdhY3ktdHJ1bmsKKzc3NzkwIGE4YTRiYzY5YmVhMTIyNTBkZmY1MmZmZGEwZDk5YzE2YjJiZmNiZmUgcmVsZWFzZTI2LW1haW50Cis3Nzc5MSBlNjYwY2I1MmJmMDA2MGRjYzcxYjBhNTlmN2E4ODBmM2VhMTAxZWI4IHB5M2sKKzc3NzkyIDJiZmVlZjYyOTkzNjI4MDQ0MWIyYmU2MzM5NDVmZWRlMTU5OTFiOWMgcHkzaworNzc3OTMgMjAwNzA4ODBlYTQ4MzM0YjFmY2UxNDc5MDYwMmQ0Nzk5M2UwOTU5NiByZWxlYXNlMzEtbWFpbnQKKzc3Nzk0IGRlYmU2MTY3M2E4YjEwNWJlYmIyMThiMDc1MWI3OGZjZDdiZDY4YzQgbGVnYWN5LXRydW5rCis3Nzc5NSA3YTM2Y2EwNDc0MmRhOWIyOGM2NGMxZjIzZmU1OTQ0OWEyYmY1OWZiIHB5M2sKKzc3Nzk2IGY5ODlmNGYzMDI0NTIyN2Q5YTE5NDE1ZmY1MDgwMTc3NmU5OWFhNDggbGVnYWN5LXRydW5rCis3Nzc5NyA0ZjhiMmExNzNjOGRjNWMzYTRlZGRkMDYwZDQ1NGUzYTZlNzhmNWIwIHB5M2sKKzc3Nzk4IDFhMDA4MWI4NWMwNDg5NWRhZTI3ZTJmZjc5Mzk3YWZlNTE0ZDIyYWQgbGVnYWN5LXRydW5rCis3Nzc5OSAwMTFkOTY3YzFhMDQ5NjZiMGRlZjJkM2I3ZjQ5MDA1OGExYzlhYjg3IHJlbGVhc2UyNi1tYWludAorNzc4MDAgZjQxZDM1M2ViNjYwMjY2ZGZmNWFjNmNlNzc0NTc4MWNiNWZmMGM5MCBweTNrCis3NzgwMSA2YTQ3OTJjYmY0YzlmMzY5YTVlNGFjOGJlNWZkZTg3YWY5YzFlZjRlIHJlbGVhc2UzMS1tYWludAorNzc4MDIgMGJkNjE2ZGZjOTc3ODVhMzExNmQ4N2E3ZjU4YzAxNTQ4YTZmOWVjYyByZWxlYXNlMjYtbWFpbnQKKzc3ODAzIDdmYjc2NDRhMGJjNjhhNzU4OTg1NWY1OWEzNzVhYjVjOWY1ZTAyYTAgcHkzaworNzc4MDQgM2YzNmM5ZTZhNWFmN2YyNDQ1NjUwYTk3ODczZTUyNzgwM2MzMzg2NSByZWxlYXNlMzEtbWFpbnQKKzc3ODA1IDFhYmMyMTkxYmVhZjQ5NGM5M2E2YmFmZjMyNTRkOWQxYmQxM2NmMjIgcmVsZWFzZTI0LW1haW50Cis3NzgwNiBhNWU2OGFiNzg5NWJkODFjNjdmZDAwMTRkZjc1MjEyZTdmMjM1NWRjIGxlZ2FjeS10cnVuaworNzc4MDcgNjcxMGE0M2YxOTNmMGY4NDgwZDgzMWM5ZGU1ZmU3YzY4NGE2MmIxZSByZWxlYXNlMjYtbWFpbnQKKzc3ODA4IDRjZjVhZTcwY2IxMTllYjJiNGFiZWMyZWRkMjhjMDkwMDI3YWU0NTUgcHkzaworNzc4MDkgZjYwNjQ3NGEyMTBkMWNlOGFjM2M5MWU0YjhmZGY1OGZhYmM5ZWI2MCBsZWdhY3ktdHJ1bmsKKzc3ODEwIDI0NWYzNjI4MjExMzZjNzkwZjYwZGFjNzNiY2I2YzJmOWM5M2MyMzYgcHkzaworNzc4MTEgNjU4ZWI1YWU0NjE1ODEyNjAyNmRkY2E5ZGJhZTZmMWE0NTA4YmFiNSBsZWdhY3ktdHJ1bmsKKzc3ODEyIDgyYWQ3ODcxMWVkYjUyOWQzZWE1YjM4Y2JjNDYxNjQ4ZDRhY2NmYmEgbGVnYWN5LXRydW5rCis3NzgxMyAzMjE4NzBiNWQwMzBhZDA2NWM1ZDIwY2UxOWI4ZGFkNDY1ZjhjNTE0IHB5M2sKKzc3ODE0IGYyZjU5ZDdiNDYxNDYwY2EwNWU2MGI0MDE4OGFiZTBjNTBjYTJhZjcgcmVsZWFzZTI2LW1haW50Cis3NzgxNSA1NDcyNWUyZThhZGQwZTkxNDFlNmQ2MzE5MGJjNDZjNGYwNGMwYWY3IGxlZ2FjeS10cnVuaworNzc4MTggNWFhOTAyNDhhOTlmOGZhZWM3OWNlMTlkODkzNTQ5NDY3Yzg0MjZhYSBweTNrCis3NzgxOSAzOGI5MGZlMzQ2MjM3ZTlhOTNjMGJlZGQ3YjQ2MTEyMTE2NzY2ZDMyIHB5M2sKKzc3ODIwIDBkNGIwNTg5ZmJjNzIzMzI1ODAwZTZjYzQ0NTg3MzI3ZGZlNGM0ZTUgcmVsZWFzZTMxLW1haW50Cis3NzgyMSBjNTc5OThlM2JlMzNhZjkyZDFhMWI4ZDJhZGEzY2E5NGQ0N2UyNDM3IGxlZ2FjeS10cnVuaworNzc4MjIgM2NlODYwYjllNzMyMzdhNDJmOWQ4NTJmMTkxZGNmZWFlNzExZDJkYiByZWxlYXNlMjYtbWFpbnQKKzc3ODIzIDJiMDhkZTlhMWZhMDEyMDBmOTA5Y2U0MGYzYjMyMGM1MmJhZmM2Y2QgcHkzaworNzc4MjQgNmRlNjQ4OTZjNmY4ODE4MWUyMzkzMTdmYzRiYjIzNGFhZDU5MmJkOCByZWxlYXNlMzEtbWFpbnQKKzc3ODI1IDJkYWI0NzYwNmFiNjNjZGE4MmVmOWQzZjIyMWFjZjAxNWUxY2M2NGMgcHkzaworNzc4MjYgM2I2NTA2ODA4N2M2MmY1MDgyZjIzNjE0ZWZhNzg2ZDYwZWQ2ZmY4OCByZWxlYXNlMjYtbWFpbnQKKzc3ODI3IDIwZjBkYTMxZmEyY2Q3OWIzZDAxODkzMjBlYjc2YTVmYmI1MDJlMzQgcmVsZWFzZTMxLW1haW50Cis3NzgyOCA4NzkxMDFhMGI1Nzk3MDI1MWU5ZmQzNTE3OWRkM2MxNzY4NTJlODIxIGxlZ2FjeS10cnVuaworNzc4MzAgMjc1Y2Q5ZmUwNGYxYmY5NmQ1MWU4ODdhNDMwZWU5ZWMwMTczNTg5MCByZWxlYXNlMjYtbWFpbnQKKzc3ODMxIGRkZTIwYWU2N2Y5ZjMzYWIwOTBiOWY0NWIyMmNiN2I3OGRlODUzODYgcHkzaworNzc4MzIgOGVmMjUyM2MzYTVjNTcyMTAyM2MyOGEyYzdlYWFjYjI4MWFmNjIwMSByZWxlYXNlMzEtbWFpbnQKKzc3ODMzIGEyYzkxNzM3ODQxMWUyM2VhOTkxMGJiOGRmYjZmZTQzNmVmNjk4NTAgcmVsZWFzZTMxLW1haW50Cis3NzgzNCA2MDg1M2MxYWM1NjJkMjU5ODkwZGRmNDcyNThiNTVmZDRkYzFiZjgxIGxlZ2FjeS10cnVuaworNzc4MzUgZWJmNGYyMjZhZWVmOWRlYmZlNmJkNTQ4OGIzYWQ4ZjJhMjE3MTc3OSBweTNrCis3NzgzNiBkMDE0NjIzZWNmNzIwYzJkZjQ1MDhlYzFhYzI1Yzc1ZWUwYjgxNDYzIGxlZ2FjeS10cnVuaworNzc4MzcgZjIwZjhmYzZjZmFlMzQ0MWQwMTllOGJiZjQ2MTNiMDkxNDcyMTA3NCByZWxlYXNlMjYtbWFpbnQKKzc3ODM4IGQ2ZmIzNzhkNzY1YWY5MTVlM2ZiMGYyMTdmZTlkYmQyMTBiM2E5MjAgcHkzaworNzc4MzkgMTA5ZWMwNmJiY2YxYjgwNTExZjQ0NzE3OGE3YmE5NGFmNDUyODk2ZiByZWxlYXNlMzEtbWFpbnQKKzc3ODQwIGUwYWQxZjNjOTFhZjIyY2NhZTlkZDM2MDJhODlkZGRiNTE4YWMzOGQgcHkzaworNzc4NDEgYmZjMTNjZTYyZmFiMGRiNDJkMmU1OThjYzg3YzBmOTAyMjVhOGZhOCBsZWdhY3ktdHJ1bmsKKzc3ODQyIDYyOTVlMTYzMDNhNzE4M2Q2YzUzZWQxYmJlNjM3ZmFjNzgwMmVmMGUgbGVnYWN5LXRydW5rCis3Nzg0MyA1ODkzZWY5YTliODRiZjg4YjBhMWRmODk0OTZjZDMxODc2ZGU0MGMzIHB5M2sKKzc3ODQ0IGVmYzIwMzBjZTZiMTZkODhlYzM4YTEyMzFmMGExYjc0NGY4ODdjNzcgcmVsZWFzZTI2LW1haW50Cis3Nzg0NSA3NDUwZTAzYTUwMWRiYjliZjdjMWMyOGRhOGE5YTcyZmRmMDM3MmUyIHJlbGVhc2UzMS1tYWludAorNzc4NDYgODZiOGY0Y2I5MjNhYzMzOGQ4NDhiZWUwNzUyMWNlYWI1MzZkNDZjNiBsZWdhY3ktdHJ1bmsKKzc3ODQ3IGMwYzc2ZDQ4Y2QyYjhlYzE5ODJmYzk0MmY5ODQ5MDkwZDI3ZjFmZWMgcmVsZWFzZTI2LW1haW50Cis3Nzg0OCA1YzQ3Y2QxNzM2YzE2MmEwZDVhYjFjMzFkMjA1MzE4ODFhZjExMjdiIHB5M2sKKzc3ODQ5IGQzNGQzYjhmOWRlZTRlMTdhYjM5ZGVmZTU1NDhiZWU2NzBkZGZjOGQgcmVsZWFzZTMxLW1haW50Cis3Nzg1MCAzOTMzMmMwYWY4NTY1ZWE5NGJiMzk5MGNjZjVjNjU0YWUyMDI0NWMzIGxlZ2FjeS10cnVuaworNzc4NTEgODI0ZTVlY2Y5MDIyNWI1OWYzNjJkNjc5MWQ5ZWM0MmFlMjhjNWUxMSBsZWdhY3ktdHJ1bmsKKzc3ODUyIDkzNGQ0OTU4YTQxNTFhZmU1OTg2MzZhMGFjYjkyMDdhODcxNTdkYWMgcHkzaworNzc4NTMgZDc5YWE1YjY2OTcxYzlmMWMyOTBhZGUxNDMwZjUwMTVlYTM5YmM4ZSByZWxlYXNlMjYtbWFpbnQKKzc3ODU0IDAxOWY1MmFlMGZlOGNjYjlmYmNiZDRkM2E0OWM4OTM1ZTA4NWM4N2YgcmVsZWFzZTMxLW1haW50Cis3Nzg1NyAyYmY3MzU3ZDEyMmMyNmMxMzE5OGVkYjk4OGUxYTRmNTIyZjUzNGUxIHB5M2sKKzc3ODU4IGQyMWIwNWZmOTIwYWZhZjAyM2RhNjUyZWNmYTlkNGNkNmJlMDFlMWIgbGVnYWN5LXRydW5rCis3Nzg1OSA1YTdkN2VlYjg4YzExMzI1YTVkZDUzYzQ4MWU3NzI4Nzk5M2FlODc5IHB5M2sKKzc3ODYwIDA5MGZjMzljZTVlYzM1ZGQ1YTQyZjM2MWIwN2ZlZWU2MDcxODQ3OGEgcmVsZWFzZTMxLW1haW50Cis3Nzg2MSA5NzZlYzQ1ZDkwOTBhZjg0ZDkwZDQ4MmZhYTU0MTc1YTRlYWMwOGFmIHB5M2sKKzc3ODYyIDY5MDhiYTQ0NWQyYjM1YzM5MGQ4MTdmMjNlNzY5NDhjZDQ1MWM1ZWMgcHkzaworNzc4NjMgZjU2MjA3YjkzNmNjMzU5NDg1YjRhOGRlNmFlYTUxYzQ0MDBkNjQzMiByZWxlYXNlMzEtbWFpbnQKKzc3ODY0IGU5NTY1NzBiYzNiOWYwNGQ5Zjk1NDViYTdjZDM3ODk2ZmU3Y2MwMTggcmVsZWFzZTI2LW1haW50Cis3Nzg2NSBmYzVlYzdlMDQxNzczY2ZiNTJmMjM4MGI5YTRiMTU5NWJjMjdkN2RhIHJlbGVhc2UyNi1tYWludAorNzc4NjYgZmUwODZhYmI0YWViZTllNjA5MDhhNTVjZjUyMGVhMGRhNzJmNDBjMiBsZWdhY3ktdHJ1bmsKKzc3ODY3IDY4YzU2YzRiODYzMWNiZDljODc3MjczNDQ5YTVmNmVlMmQ2MWU5MTcgbGVnYWN5LXRydW5rCis3Nzg3MSBmMGJjNmQ4YWEyMWUwMjUzYzJkMmRkZWNmMDFlYjA4YWM3OTQxZmNhIGxlZ2FjeS10cnVuaworNzc4NzIgNzA5OGE0NmYwYjc1ZTVhYWNmYWY4MWQ2NWQ3MmUzNjEzYjAyMzUzMiByZWxlYXNlMjUtbWFpbnQKKzc3ODczIDM4YzljY2NiYmU1YTRhY2Q0MDA1MTU3YWNhMWY2Y2U4NTk0MjFmMGUgcmVsZWFzZTI1LW1haW50Cis3Nzg3NCBhMjA0Nzc0ZDljNzBiZGRjMmNmYjgwNzU3NWFkNWM0NmJiOGFhODc0IHJlbGVhc2UyNS1tYWludAorNzc4NzUgMmRkYmU2MmE2ODIwZmE1ZDdiNzIzNjU1ODI0OGM0NmIwOGU0NzA0MCBsZWdhY3ktdHJ1bmsKKzc3ODc2IDZlNmI1OTQxM2ExMzg5OWI3NWRmYjFiMGM5YTk3YjI4ZWM3NjIwZDcgcmVsZWFzZTI2LW1haW50Cis3Nzg3NyA1NjZkNWM5NTdjMTk3NTk3MjM1MzdhMzc5OTg3MDExYTFmNjk4ZDQ3IHB5M2sKKzc3ODc4IGNlMGQ0ZGM0ODhkMjkwNWRjYTE5MWZkM2VjNzQwZDUzNmMyMTdkYWYgcmVsZWFzZTMxLW1haW50Cis3Nzg3OSBmNjI4NDJjMjViZDgzM2ZkNjYxNzI4NmQwZjNjYjRhZGUxOTZmYzQyIGxlZ2FjeS10cnVuaworNzc4ODAgNmIzM2VhOTQ4ODk2NjE4MTFlMDlmNjI4MmY5OGZjYzRjZmZhMzcxMiByZWxlYXNlMjYtbWFpbnQKKzc3ODgxIGZkNTgwMWI4Mzg4ZDE1NzIyYTA0N2ZjZWQ0OGViN2UwNzBlNWU5MWEgcHkzaworNzc4ODIgOTgxYTM5ZjM1OTE0ZDQwYzJiNjRlNGMyMzBjYzU2YjcyY2FjMWM1NyByZWxlYXNlMzEtbWFpbnQKKzc3ODgzIDY5YmZmYTNjNzgyZTMyNTg5NGVmNTVmY2VhNjhmNTVlYTgwNThjMDggcHkzaworNzc4ODQgMWU0N2JkNmJiZWQ1NGY4NDRkZGQyYWMyY2Y5ZjBjMTJlZWEyZjUzOSBweTNrCis3Nzg4NSBhNzNiOTJkMWU5ZmQ1ODJlNzVhYTA2YjVmMzg0Zjg4OWFmYzE4NWM1IGxlZ2FjeS10cnVuaworNzc4ODYgMDUwOGVhZDE4ZDZmNWEwOTJlOWQ5NTBjNzJjMTQ2NzA1NTA5ZWVmMyBsZWdhY3ktdHJ1bmsKKzc3ODg3IDU2YTIyMDgyNzIwOWNiYjMzZDIwZDQ0NTEzNzk4YmMyOTgzY2EwYzUgbGVnYWN5LXRydW5rCis3Nzg4OCAxNTlkYTlhNDJmZWYxYzZhYjAyYjkyZmJjYzA2MzViZTAyNTQzNDRjIHB5M2sKKzc3ODg5IGJjYmI5MDQ4ZjQ4MDM3M2FmOWM4YjdiMzRjMWUzZmRlOTgxZTZjYTQgbGVnYWN5LXRydW5rCis3Nzg5MCA3NzEzMGYyZmU5NDRlNGFjZDEwZjAzNWI2Nzk0YTQyZDEyYjFlYTkxIGxlZ2FjeS10cnVuaworNzc4OTEgZWY1NjM5YzcxOTY0MzVjZTBiZTdlNGUzMTFmZDE1M2M1YmQ1YjMzZSByZWxlYXNlMjYtbWFpbnQKKzc3ODkyIDI0NjY1YTlkODgxYWRlMjU2OTdhNzRjNGQxOThkYTdlZGY0Nzg3NDQgbGVnYWN5LXRydW5rCis3Nzg5MyA3NWJiMmYxNjkxYzBlYTk4YjE3NmU2MzJmYjkwMTE0YjNiZmEzYzRmIHJlbGVhc2UyNi1tYWludAorNzc4OTQgMzhlMzA3ZmI4Mzk4NTZhYzk3MGVmYmMyYzcwY2ZmYTY3Yjg0ZDYxNyBweTNrCis3Nzg5NSAzMTFkYjdhNjhhODI5MzZkMTM0YWRkNzQ3NzY4MmRhZjdkZDMxYzcyIHB5M2sKKzc3ODk2IGM3ZTMyYjRlMzg3NGJiYmNlMDQ4Mzg4ZDVlZjM5YWRmY2IxMjI0NzUgcHkzaworNzc4OTcgZDg4N2RiNTAxYTIyMTFhYTM0ZDcxZTFiZjcwYTFmZjNlYTkzYTM1MSByZWxlYXNlMzEtbWFpbnQKKzc3ODk4IGZkMjRkZWRiYTU5ZWE1ZjBlMDEzY2QwOWM1ZTEwYTQ3MGI5NjZkMDUgbGVnYWN5LXRydW5rCis3Nzg5OSBiMmRiZjExZTJhYzRjZWYwNDVkMDNlYWM0NGU5YWIzMDU2OTQ5NWQ4IHJlbGVhc2UyNi1tYWludAorNzc5MDAgODYwNGU5YTI1N2NjOGZjYTg1MGRkYjYyZGI2NjYzNTk2M2FiYzllMiBweTNrCis3NzkwMSBjN2RjYmQ2NWMyMTM1MjNlMzQzNmQ1NmQ5ODdkZjA4Nzg1YWM0YzNhIHJlbGVhc2UzMS1tYWludAorNzc5MDIgYzk3OTU3ZjVjZGY5MjQ1YTJlOTQ4ODRhN2ZlMzYzMGYwOWU2ZjIwYSBsZWdhY3ktdHJ1bmsKKzc3OTEwIGFmNDk4YWIyYWZiNGE1ZDE2YWQ1ODZhOGE4YzI5NWQzNjk3Y2YwMjYgbGVnYWN5LXRydW5rCis3NzkxMSA2NTJlMGI3NDg4NWFjNzc4MTgyMGIwNzVkZGJmZTI4YjRkMmFjNDUwIGxlZ2FjeS10cnVuaworNzc5MTIgZDA1MTc3OWM1YmJkNmRhZDhmNDRlOWNmZTkzMGU4ZGY1MmVjNTRhYiBsZWdhY3ktdHJ1bmsKKzc3OTEzIDViYWRlYmRiNDM4Y2VmNzU1YmMwZDQ0NGI1NmE1ZDMyNjliZjg2N2UgbGVnYWN5LXRydW5rCis3NzkxNCA0Y2JmZjAxMzlmNWI4MDg5ZjhhMGE4Y2Q3MjFlNTNhOGQ3OGNmMTliIGxlZ2FjeS10cnVuaworNzc5MTUgNTI1YjZjNWQ1YjEyY2NmYTY2ZWY0MWZkZTY1MjBlY2IzZWQ4MjVhNyByZWxlYXNlMjYtbWFpbnQKKzc3OTE2IGMzN2Y5OWI1NGQ3Y2Y0NTNlOTJmNjM5NzljZWVhNDRiMGE4YWNhMTkgbGVnYWN5LXRydW5rCis3NzkxNyBjNzcwM2I2NDk1MTZiNzMwMzYwYmFiNGMxNjQzZDczZDVhMzNjOTNjIHJlbGVhc2UyNi1tYWludAorNzc5MTggY2QwMGE5NDE4NmM5MzQ5NzdhNTNhZmM0M2EyMTZmOTNhMjg2NzQ4MCBweTNrCis3NzkxOSBmM2YwOGVlODNjNTU4NjM4YWRkNGFjMjM1MzkyNDg1YjcyMTIwNzc2IGxlZ2FjeS10cnVuaworNzc5MjAgZGYyYjlhNmQyOGFlZjg1YjlhMmU1NjI2NGE4MzgwNmEzNjBhYTA2MiByZWxlYXNlMzEtbWFpbnQKKzc3OTIxIDk5MmNhZTI0NmEwYzdmYTdkYWRiMzFjOTY5NjlmMzk1ZmIxNmRlODMgbGVnYWN5LXRydW5rCis3NzkyMiA3Y2IxNGI1MjJmODFjYmM2YjBlOTk3OTMxY2YwZDdkZjk2MDVhZTRkIGxlZ2FjeS10cnVuaworNzc5MjMgNmZkMmI4MTQ3ZjJhMzdlNWFhY2FhNDA1OGRmNjQ0NjU2MGFiZDEyNCBweTNrCis3NzkyNCAwMGQ3ODM4ZWFmM2FkMzZlNzk5ZWY2MzMzNDNhMmMyMWQxMTlkYTRmIHJlbGVhc2UzMS1tYWludAorNzc5MjUgZDMxMjdmNmRlMTZjMDg3ZDkxZmZkZGFjZjFlNGZiN2E3MWFlZjNlMyBweTNrCis3NzkyNiA3Y2QxODJiZWU2MzBjMzM1MDMyZDljNDk2MTI4MDVjYmQyZGFkNTZmIHB5M2sKKzc3OTI3IDA4Y2Y0YjM1MzFjOTQ2NDhlMGVkODE2OWYwOGIzNmI3Yjc1MzAwMTIgcmVsZWFzZTMxLW1haW50Cis3NzkyOCAzODA5NDI4OTJkYzBlMGViYTM5ZWY0M2U5M2ZkMjU5ZGUzMmExM2E3IHB5M2sKKzc3OTI5IGI3ZmVjZTE1YmE1ZmI5ODc0ODU0ZGZmMzhkN2MwNTBhMzg5NTA5MTYgcmVsZWFzZTMxLW1haW50Cis3NzkzMCBiODg4ZGI3NjQ1YWE4Y2ZmMjdlZTY3ODcwMTNjMzcwOTBiNzRiNjVhIGxlZ2FjeS10cnVuaworNzc5MzEgZWI5ODdjOWRmMzc4ZmM0NmI5ODczYWEzMzk1Y2VkMzA5Y2Q1NTQ5NCByZWxlYXNlMjYtbWFpbnQKKzc3OTMyIGE4N2ZjZTAzYTM0ZGQyMDQ0OTc4YWFhMDZkOTE0YzcwMjY3MzIwZDggcHkzaworNzc5MzMgOTY3YmZkMzY5NzM2Njk3MzExM2UwNzAyYjBiZWM2NTg5MjFkMmVkMyByZWxlYXNlMzEtbWFpbnQKKzc3OTM0IDliMzUxY2I5ZWY5ODMzOTU0ZWQ0MGZkOTcxZDdkOTE3Nzk2ZDVmMWEgcHkzaworNzc5MzUgZWY4MTc4NDc3NTY3ZjdjMDRhOWNiMjdjZjdjNmFiMDRlN2I0NjIxMyBweTNrCis3NzkzNiBjY2M2ZTVkNWEzYjM4NzkwZDUyNzdmNzRhNTNjNGI5MmNmZWZmNmE3IGxlZ2FjeS10cnVuaworNzc5MzcgOTkzZjcwM2E2MWJhZTA4ZTkxMGNhN2E3Yjg2YTUyMDE4OGQwOGQ0NCBweTNrCis3NzkzOCAyYjFkNjY1ZTY2Mjg0Njg2YzA1Mjk5ZTAyYTcwZWUxMDI3OWFjOTg0IHJlbGVhc2UzMS1tYWludAorNzc5MzkgZGFiYjc3MzQ4NTAxYWExNmQyNmE2YzBiMDk5NmFjODA0MTlhY2U2YyBweTNrCis3Nzk0MCA1NGQwMjViMmY0NWE5ZjNlMTdlMDM2YzQ4NjY2ZWMwZGQzZTRkZTYzIHB5M2sKKzc3OTQxIDcyZWNmZmZlOWYwMjU2NmFjNzZiOWUwY2E0NjZlMTVhZmFhYzk0MTAgcHkzaworNzc5NDIgZmYwNDA4ODBkMWJlOTg0OTJhZGViZjc1OGFmOTdhZjk3YTJkMGZhNyBsZWdhY3ktdHJ1bmsKKzc3OTQzIDQ1ODdiMDYyYjhkMDY1Y2I3OTA2ZGQ0M2Q1MGQ4ODE5ODVkZGI3YTQgbGVnYWN5LXRydW5rCis3Nzk0NCBjZTRiODRjMDJlNWE3NTU2Yzg0ZmY5YzZlOGY4YjVmMWEzNDFkZTVkIGxlZ2FjeS10cnVuaworNzc5NDUgMzIzNDRjNWNmOTMyZWEzMjY4ODJhY2MxMWNmYmRjZGU1YzE2MzBjMSByZWxlYXNlMjYtbWFpbnQKKzc3OTQ2IDc0NDJkYjU0NzY0NWUyMGUzNGEwY2FjZWUzMmY3NDkzOGRjMzcxYzQgcHkzaworNzc5NDcgMGQ3ZTVlZGM0NTI2ODA4NzE5MjNjZWY3ODU1YjY5MTMxODEyMjk3MCByZWxlYXNlMzEtbWFpbnQKKzc3OTQ4IDhkODA1YzZjMmRiMzdiZTY3OWM1ZmMxMmNjYjQzZjI3NzIwNjQ3N2YgcHkzaworNzc5NDkgMzljOGI0NzgyNGM1MDkxNTQ2ODliYzYzOWE1ZGEzZGJmZTViODQzYSBsZWdhY3ktdHJ1bmsKKzc3OTUwIDFjN2ZlYWMwZDZkNjM4OGJjNmI2ZGEyZTFlY2I3NTU0ZTkwMWNjZjMgcHkzaworNzc5NTEgOGEyZWI3NzYxMjMwOTcwYWRhYWNkMTA5M2MyZDhhOTgzNzIxY2QxYiByZWxlYXNlMzEtbWFpbnQKKzc3OTUyIDRhZThiOWNhNDBmZmU3YWNhNzIwOWY2YWI0MDJkMjBmNGU3MmIxMzYgbGVnYWN5LXRydW5rCis3Nzk1NCBkNzVmODg3ZGE3NzJmODFlY2Q0NjJjYTZkNjcyNzYyZjEwZjFkMTBmIHJlbGVhc2UyNi1tYWludAorNzc5NTUgYTY0YTAxMzRlNjZjZTA4OWM1ZTE0MjI1MDk0ZDc3YTBhNTUzZDgzNSByZWxlYXNlMjYtbWFpbnQKKzc3OTU2IGE3YTc3MGJjZTkzZDI1ZjE0MGNlNjFlMjgzNjVkZmJlYmZjOWQ5N2UgbGVnYWN5LXRydW5rCis3Nzk1NyAzMGU0MjQ2ZWU4MDMyODUwOTE0ZDMxMmVhMjAwN2IwN2JjM2YyMjg1IGxlZ2FjeS10cnVuaworNzc5NTggZmJhMWM3OGYxMDRlOWMzOTc5Mzc5OWQ2ODViNGZmYmVkMjFhODU2YiBweTNrCis3Nzk1OSAzYzE4OGVkOGU1MjFlZTM3YzQxNGUxMzVmMGVjZmQyZDY5MDJjMmRhIGxlZ2FjeS10cnVuaworNzc5NjAgNzAzYTA0ZTI5Y2U2MzQyM2UxNmRhMWFmNDZmZTI1ZmVlMDJiZjBlOCBsZWdhY3ktdHJ1bmsKKzc3OTYxIGM3MjU0ZThiYzFkYmQxZmQ0MTc4MTUyYWM1YWU4MTUxN2ZiMGJjN2MgcmVsZWFzZTI2LW1haW50Cis3Nzk2MiAwYzJiMDg5ODY0M2UyOTZkMWVmZmY2MjNjYjU2NzY0MzUyZGVlZDFhIHB5M2sKKzc3OTYzIDUxNGI1NmVmZDg5YTI0MzlkODQ4ZGYyYTIzZGY0YzJhMmE2MTk1NzAgcmVsZWFzZTMxLW1haW50Cis3Nzk2NSBlZWI4YTk5Y2EwYzVhMmY4ZjE5M2U0NzcwZGFmMzZjM2UxY2ViNTkyIHB5M2sKKzc3OTY2IDJmODI5Mzk2YTU0ZTM3YmVkY2E5MjRiZGQwMDFhMGViNTViYzIxYjkgcmVsZWFzZTMxLW1haW50Cis3Nzk2NyBmNDQxNDIyZjZmNTU3NGM5NWNjNjA5ZjNlNmQ4M2U1YmRjZGQ4YWQ2IGxlZ2FjeS10cnVuaworNzc5NjggM2MwMjAzNDk5YWU1MzVjNWU1NTdkY2YxYzE0MDQ0NjA1OTgyMWM5NCBsZWdhY3ktdHJ1bmsKKzc3OTY5IGJiNmY4M2I5YmE0OWUwMmYyMGNjOWUwNWJmZWNiM2RkZDQxNjNkMTcgbGVnYWN5LXRydW5rCis3Nzk3MCA1NGU5NzU1ODJjNjU0YTg4NDY1NmU5ZTYwM2MyMWU4YTA3NGJiYzNkIGxlZ2FjeS10cnVuaworNzc5NzEgNDUxZWQzMmNmYzUwNjI0MjMzYjg5NTNlOGMxZTkwNTMyMWU2NThlMyByZWxlYXNlMjYtbWFpbnQKKzc3OTcyIDM3ZjYyNjRkMWFhMzM5ODkxYjM2ZDY4MTY0YjY2MWJiNWEzNDNiM2MgcHkzaworNzc5NzMgNGFhYjE0YWY1ZTJkZjcyMDVlMGI4M2NlMTg1MDYyMTE4NzgxNGM0NCBsZWdhY3ktdHJ1bmsKKzc3OTc0IDMyZTBmMWFhMzRiY2Y3MzEyMGNlYTVjNDFiNGQ2N2Y2NWUyMjczYWMgcmVsZWFzZTMxLW1haW50Cis3Nzk3NSA3ODEzYzQwOTQyZTk5NGE5NGEzYmI2NTYwY2U1YjBlZTc1MWNhMzM2IHJlbGVhc2UyNi1tYWludAorNzc5NzYgZWUwOGZiODM1YmYxMmFhODUzMDA5YTdiNzhiNTU0YmZhZmQ1ZTcxYiBweTNrCis3Nzk3NyAxNTE1MGNkOGZkMzY1MzQ5ZmM0YTRhODU1NTc1N2M4ZmJiNzI2ZDJkIHJlbGVhc2UzMS1tYWludAorNzc5NzkgMzA0Y2U4ZmNjMzJhMWY4MzA4MmZiZGY0NWQ2NTg3N2FlZTNlNjk0NSBsZWdhY3ktdHJ1bmsKKzc3OTgwIGRlNWZhOTI1ZGZlYTYxNTEzMjg3YjA2OTkzM2ViYTZmNTI3ZDM2ODQgbGVnYWN5LXRydW5rCis3Nzk4MSA4MWYyZWNkM2IxM2U4ZmRmMmM4MTczNzlkMDcxMDZiZjg3MGZlNzBjIHB5M2sKKzc3OTgyIGMxYTdjOTQ5YzExMDBkOGZhZGRlNTA1Y2RiNDY2ZmY5ZWRmMzk1MGQgcHkzaworNzc5ODMgNzZjZjYwZTJkMDA1Nzk2ZjYwMDJiNTgwN2Q0YjgxMDljOTRlOTIzMyBsZWdhY3ktdHJ1bmsKKzc3OTg0IGNmYTg3ZDQ2NmMwNDQ4MDNlMjA5MWI3ODZiZjQxMWZhN2E2YTk2M2QgcHkzaworNzc5ODUgYjVhZDIxOTBkY2U4YzBmNmVkZTliZmZmMGJjOGE2OTc2OTQ2YjVmYSBsZWdhY3ktdHJ1bmsKKzc3OTg2IGUxYmRlYmQxMzY4NTllZWRhMWFiOTM4YTBlYTBhYTZjZmQwNzQ0OGEgbGVnYWN5LXRydW5rCis3Nzk4NyA0MjZjYzVmMmFkMjQyMGEwYmI0OTYzMTAxNGQxZGZlMjgzNjBhNTBlIHB5M2sKKzc3OTg4IDU1NTA1ODQyZTk3MzllYTBlM2VlYjgyNjk4ZjAxMTdhYzVmMjczMjIgcmVsZWFzZTMxLW1haW50Cis3Nzk4OSA3YzkzMzY4MzAxMGRjYjI5YThlM2Y3ODIxMWIyNDczZWJkN2EyNDdiIGxlZ2FjeS10cnVuaworNzc5OTAgZWI1NTBlODM5NDYwOTc4ZjAwNjdlZmQ3Y2IxNmUyNDQ3NmZjZmUwMiByZWxlYXNlMjYtbWFpbnQKKzc3OTkxIDUxM2M0YTI2MDBhOGJlMDc2MzZkOGM5NDVjNTFhY2NiNDg1YTk4MzIgcHkzaworNzc5OTIgNWU1MTgzNWY4NTk1MTJlZDJjMjQ4YmMxMTM3MmYyZjEwMzExOTg5ZiBsZWdhY3ktdHJ1bmsKKzc3OTkzIDFjZjE2Y2U0MTVlYWUwNmU0NjE2OTkwYTZmNmIwNDNhZTRjZDI4OTcgcmVsZWFzZTI2LW1haW50Cis3Nzk5NCBiMTFiODAzMDI2OGRkYzNhMGVjMDQ3MDllNGRhMzJjM2JhNmZkZTExIHB5M2sKKzc3OTk1IDk3OWMzYjYyNTA4Mzk3YWM5ODc1ZTQ4MzdhYzM2NDc4ZTIyMTdjMDMgcHkzaworNzc5OTYgMTFiN2M4MTA4MTZiZWY0ODkyODdkYmYyNTM4YzEyNzBlZmJjN2I1ZSByZWxlYXNlMzEtbWFpbnQKKzc3OTk3IDMyYTM2MGIxM2ZhMzIwNmFlYjQ0NGZiNzk4OTIzNTc1Y2U0ZmQ3ZmEgbGVnYWN5LXRydW5rCis3Nzk5OCBjZDMxYTlkNjdlYjEzOWY1MzA2MWM0ODYwZjBiNWZkYTEyMjFjNzk4IHB5M2sKKzc3OTk5IDI3NDE2Y2U2MmFjNmIxMTQwYmZjMTUyZjA5OTg5YTg3ZDlkOGQ4NTYgbGVnYWN5LXRydW5rCis3ODAwMCBjMDNjOTNhYzgxNTFjMzMyMTdlMWZmZTAxYzViZWU0YmFiMGNlZDFlIHB5M2sKKzc4MDAxIDJhNzBjNzJiODdjN2YxMmY5ZDA5ZWFiODMyMTc4M2JkOTI2NjE0MjIgbGVnYWN5LXRydW5rCis3ODAwMiBlZGVhNDhiMTIwZTMzOWJlYjVkYmEyZjRhZWI5NTE5ZmY2N2IyY2RkIHB5M2sKKzc4MDAzIDNkZDkyMWExOTBiOGUxYzYwZjVjYjY2NjFiZjY4OTE0ZTdkMzQyYmMgbGVnYWN5LXRydW5rCis3ODAwNCA0MmFjOGNiMTNlZDBkZjgwM2VmMzdjYjNmYzcyNDg1MDNhMTBjN2I1IHB5M2sKKzc4MDA1IGExM2U4ZDFkMzc5OGM1MDE4MzNmZTZhNjYxNWJiNGU3M2I2YjgyOTkgbGVnYWN5LXRydW5rCis3ODAwNiBmZjBmY2Q1MTU0ZDMzMTY2N2Q1YTg1NjNkNGY5NWU5ODc3MmQzNjZhIHB5M2sKKzc4MDA3IGU5ZGJiY2Q0YWQ0MGFhN2Y4NjhjM2Y2YjExNWI3NjI1ZmU3OGFjZDYgbGVnYWN5LXRydW5rCis3ODAwOCA5NGQxNDgwYmM1NjMwNDFjMjJkMTVkNTQ4ODEwNmJjNWExNzhmMjEyIHB5M2sKKzc4MDA5IDc4ZTc5OTJmMjg1NzlmYTVkMzI1YzhjZWI3N2Y5MjVjODBlYjkxYTQgbGVnYWN5LXRydW5rCis3ODAxMCAwZDhmMjBlNDZjMWZhMTk0NzQ2YTJhMzMzNzBjNGU3ZmY0NTQ4YTJhIGxlZ2FjeS10cnVuaworNzgwMTEgNzhjODhiMDc3ODQzMWE3MGEyYzJiNjljZGMxYjM1MTJmYTY2NWVjYiBweTNrCis3ODAxMiA4ZTU5ZjlmNzg4ZjViMDRlNjA1NjUxZWViNzFhZGRlMTUyNTE2ZmZlIHJlbGVhc2UyNi1tYWludAorNzgwMTMgZmFiMzgwNjc0OTU5NmYzMTFhZjk0NTcyNjFmOTUzZTJkMzY1OWE4MyByZWxlYXNlMjYtbWFpbnQKKzc4MDE0IDJiOGY0NThiYmNmNThlOGQ3MWFmNmZiNGNjYWQ0YjQ2NWNlMTIxN2IgbGVnYWN5LXRydW5rCis3ODAxNSAxM2Y2OTVhYjkxMTFjYzY5ZGYxMDEzMTEyZTJiYWEzZDRiMjAwMjQ4IHJlbGVhc2UyNi1tYWludAorNzgwMTYgMGViNDIyNjI0ZGI1ZWZhM2JmODJhODgzYmQ1OGM3NzQwMzA4NmM4ZiBweTNrCis3ODAxNyA5Y2VlMDg3OTE1YWExZGIyZDg0MzdhMzY4Zjg5M2YwNTQ3Mjg2ZTFjIHJlbGVhc2UzMS1tYWludAorNzgwMTggNTBiZDljZDJlZDQ4MTQzYjdiODlkNDQzODczNjcyNjRkOTJjNTYwMCBsZWdhY3ktdHJ1bmsKKzc4MDE5IDcxZTA4OTI2NWIyODUzY2NiYjNmNTI0MDk5YjM3YmU4NzQwMzYzOWMgbGVnYWN5LXRydW5rCis3ODAyMCA0MTgwNTU3YjdhOWJiOWRkNTM0MWExOGFmMTk5Zjg0M2YxOTllNDZlIGxlZ2FjeS10cnVuaworNzgwMjEgZmU4MzJjNWQzMDY2YjE2MzI3ZDNkMmQyNTM2ODUzZWU1ZDE1ZGE1YiBsZWdhY3ktdHJ1bmsKKzc4MDIyIDVlOWFiNGMyNWI5MTRhOGI2Njg5MDgwOTY4MGY4OWVlY2YzZWU3NjggbGVnYWN5LXRydW5rCis3ODAyMyA4MmNlM2EwODU3MWM5NTI3YWZiNTg5OTMwZDA4N2UyYTQ0YmFiMTk2IHB5M2sKKzc4MDI0IDQwMDJmMWM0NmI4NjljZTM3ZDMwZGM2OWVlOGM1MGM5OGI5ZjYyN2EgbGVnYWN5LXRydW5rCis3ODAyNSA2M2IzYTY1YWZmNTJhOGUyZWZmODlkMjNlYTdmOTMzNTBiNmFhYzNmIHB5M2sKKzc4MDI2IGFkNjgzY2VkZmJiM2E5YzI5MjZhNmYyNmQ0MGQ0ZmYzYWE1YTIzOTAgcmVsZWFzZTI2LW1haW50Cis3ODAyNyAyMjJiNmQ4MGU3NjkyNDAwMWYyZjM4ZGZhMDM3MGZmOThhN2MxZjljIHJlbGVhc2UyNi1tYWludAorNzgwMjggZGQyMjMwYThjNDFkYTExN2UxNTZhYWMwOTU4Y2JkNDFjYThkOGRkOCBsZWdhY3ktdHJ1bmsKKzc4MDI5IGNhY2YyMDdmYmRlZDQzYzRiNDA2YzQyMGIyMWExYjliMTk0NTVjMGMgbGVnYWN5LXRydW5rCis3ODAzMCBlOWNiM2ZkMzQxZTk4MmU1MzMyNTI3YmQ5MTk5ODQ3MzU3N2Q3Y2ZhIGxlZ2FjeS10cnVuaworNzgwMzEgODdkOGI5NWY1Njc1NjA2MTUwY2UyZTZmZWMzNTk1OWEyMDZhMWM0ZSBsZWdhY3ktdHJ1bmsKKzc4MDMyIGQ3ZDQ4YTMwYWRmMzAzNGI4Yjg2Nzg2MjM1MTAwMzY2Y2YwN2M2MzAgbGVnYWN5LXRydW5rCis3ODAzMyA2MDlmYTE4YjI0YmZjYzZhYjg0YjllZTEzYjUwNDkyZTRkMmJhMTZkIGxlZ2FjeS10cnVuaworNzgwMzQgODFiMjMwNmU2YmYzMWJlM2RmNDFmZGRkYzA1YjdlZDYyYjUxZWE2OCBweTNrCis3ODAzNSBmMmM5MWJmNWI3Yjk2NjFlNjYwZjI4OTIzM2U4NGNiM2M4Y2JiZTY5IGxlZ2FjeS10cnVuaworNzgwMzYgNmNhOWQ5NmYxNDBlOTA0Mjk1MTRiYWNlMGE5NDk1NzAxYjA3NzFmZCBsZWdhY3ktdHJ1bmsKKzc4MDM3IGNjMzY3YzA3NzI0NThkM2VkYzA4MTY5NTA1MjUyM2ZlMjg5OGQxMWIgbGVnYWN5LXRydW5rCis3ODAzOCBlZjhmMWMyY2I1MWY5MGI1YmE2YWQ2OTdkNjY3ZDBkMWM1NGU0ODBhIGxlZ2FjeS10cnVuaworNzgwMzkgZTRhZTc5ZDUzZTIzN2EzNWU5NTdkMmU1NWQ1OWNiZjVkZWY3OGY4MyBsZWdhY3ktdHJ1bmsKKzc4MDQwIDg3Mzg3NTY1N2FkMGYzZjIyYmUyODQ5MTQxNjA2MGQwMjYzNTRiYjYgbGVnYWN5LXRydW5rCis3ODA0MSAyYmE3Njc3YmZhOTUxNDhiYzQ2ZTZkOGE0NGNjZmM2MGI0YWQ5YWQ3IGxlZ2FjeS10cnVuaworNzgwNDIgNzM0NjU3YjRiM2U1Y2Y4MDVhNmZhYTRjNDliZmYzYmI0MTI5Yzg5MiBsZWdhY3ktdHJ1bmsKKzc4MDQzIDAzYmFmNmRmMzJkMjY4ZTMxOWQwYmMxYzk4YWI5YzdmNGVkYWM0MzQgbGVnYWN5LXRydW5rCis3ODA0NCA1NTE0NGNhZTAyYmFiMWQ1MTM3ODczZjg5N2E1ZTg4ZWJlMjJmMzM5IHJlbGVhc2UyNi1tYWludAorNzgwNDUgMGI0MmUxYWE0YThiYmIzMGY1MDgxNDg0ZmY5MmQwYmQ5NDU0MDlkYiBweTNrCis3ODA0NiAyMjM1ODcwMGE0ZDBiYmI0NzcwNjU0ZmI1MTQzY2U1NWJiOWUzNzk3IGxlZ2FjeS10cnVuaworNzgwNDcgYTJhYjI2YzVmMDhiNWE0OGI3Mzc2ZWEyODBlN2YyYWE4YThkMTJlNyByZWxlYXNlMzEtbWFpbnQKKzc4MDQ4IDIxYTQ3MWMzNDRlM2EwNTlmYWRiYzlkZGYwZTFkYjA2YzAyNzQ0NDYgbGVnYWN5LXRydW5rCis3ODA0OSBiN2E1ZGYxNDA4NjllN2FkNjZhNjRhZTcyZmQ4MzI5NTFkY2UxYTIxIGxlZ2FjeS10cnVuaworNzgwNTAgYzU4ZWQyNTU0ZjVjODczNmJkMDEyMWExZGJlMDhlNTE0YjYwMzZiZCBsZWdhY3ktdHJ1bmsKKzc4MDUxIGVkZTBmMDVkYzZjMDgxNmYzNTc0NDIyZGMyZDNkODhlZWQ0OGVhMGUgbGVnYWN5LXRydW5rCis3ODA1MiBhNjZlYjhhNjNkNWI2YTg1OWNlYmRlZTQwYTA2ODAzNTI3Yjg5ZjFkIGxlZ2FjeS10cnVuaworNzgwNTMgMTAxMDFjZjg5ZDIwNGE4ZTdmNzQzODdhZjE3YzY0N2MwM2EwMTY5MCBsZWdhY3ktdHJ1bmsKKzc4MDU0IDdjMjRmZWZjMmNkNGIxYzM1YmUzNzVkNDQ5MGI1YTVkZDZiYTAxMzkgbGVnYWN5LXRydW5rCis3ODA1NSA2YjgyYTIzMjM1MDEyYTc0YTM3ZjA4Zjg0YjY2MjQxZTk4M2Y4NDBlIGxlZ2FjeS10cnVuaworNzgwNTYgZjRjNTFhZTE2N2M1NTJkNTM2MGNlNDFlODk4NGY0NWM0NjBlM2YwMiBsZWdhY3ktdHJ1bmsKKzc4MDU3IDgyMTRkNGZjMzIzNDM2NWI3NmQ2ZDNjNmNiNTc4ZDgzODNhMzk3YzAgcmVsZWFzZTI2LW1haW50Cis3ODA1OCBmZGVjMzBhZWI5M2YzYWYzN2JjZWNhZGJhNDIxYjgzN2UxZTA4YzIwIHB5M2sKKzc4MDU5IDUyYmI0MDMyODYzZTE2MjE3ZGEyNmEzMmQ5Nzc3Y2Y5NzViOTAzOGEgbGVnYWN5LXRydW5rCis3ODA2MCA5MzdlYjBmZTFmOWMxYzMzZTMyNjJhODJkYTIwZDM0MDJjNTk0ZWY4IHJlbGVhc2UzMS1tYWludAorNzgwNjEgM2QzNzUzMDExMTVkYjNjMDFiMTFiNDY1MWYyZWFkOGFjYTM2ZmUyYiBsZWdhY3ktdHJ1bmsKKzc4MDYyIDZhNmZjMGMwOTFjZGVmYzY1ZTk3NzM3ZGQ5NWZjMTkyZWQxYjUyNTcgcmVsZWFzZTI2LW1haW50Cis3ODA2MyA0YWNiYmI1YTQ4ZmNkMDFjY2MzYzgzOGQwYTU5Njg3ZDI0YTM3NmI3IHB5M2sKKzc4MDY0IGI0N2JjY2EwMDE1YWM2MGQ1MjI0OWE3OTBmM2EwYWU3NmM2NDk5MzQgcmVsZWFzZTMxLW1haW50Cis3ODA2NSBkZTUzYmFhNWFjN2RlOGIzMWI0YjZkNDI1MTQ5YWJhNjQ4ZDhiNDQ4IHJlbGVhc2UyNi1tYWludAorNzgwNjYgMzc3NmMzMWMwZTgyMDhiYTcwNTNjZDAzZWRhOTAyOWRhMjg5YmZmNCBweTNrCis3ODA2NyBjOTY0NTdkZjQwZTBkOWNhYmEzMDk3ZmE5NzU3OGY0NGZmYjdlNTU5IHJlbGVhc2UyNi1tYWludAorNzgwNjggNGU0MGEyOTExNzUwOTMxYWUwMzNmNzI3MzVlY2Y3MTkyYTViZTJhYyByZWxlYXNlMzEtbWFpbnQKKzc4MDY5IDEwZjE5ZDFjM2I3NzE4YmY5ZjU4NzMyYWFhMTQ3YThlM2E0NjdjNjYgcmVsZWFzZTI2LW1haW50Cis3ODA3MCA3OWMwMjJkNzcyMTNjMjRhMjJjZDBjZGUxM2YzZDVjMDBmMWEwMTM3IHJlbGVhc2UyNi1tYWludAorNzgwNzEgY2E2N2MzN2NkMjZkYzAwYjg4ZTBmYzJhYTlmOTE5N2U1ZTZkZDQ4NSByZWxlYXNlMjYtbWFpbnQKKzc4MDcyIDE5N2YyNDNkZGFiNTNlODg4OTBhNWJmYjQxZjI5NmQ5MjdkODI1MGYgcmVsZWFzZTI2LW1haW50Cis3ODA3MyBiMGM3NDNjN2Q3ZWVhZjBiNGM0YjFhMDUzMjY3NTljNzI1OGY2OTIxIHB5M2sKKzc4MDc0IDdkMDdkYTJiN2RjYWI3M2YwYmUzNjY0ODYxMzAyNDFhZjg3MzZiY2UgcmVsZWFzZTMxLW1haW50Cis3ODA3NSBiNmRmNzVjMTdlMDJkYzA5MDYxYmM1Yjk2Njk3ODRjODdmMGUzMjM1IGxlZ2FjeS10cnVuaworNzgwNzYgNTY5NDQ0NGZkNWQyZTlmZTdlNmNmMWUzNWU3NDY0NGE5YTc3YmFkMSBsZWdhY3ktdHJ1bmsKKzc4MDc3IDUzZjgzZjIwMmE2ZDY4NDY5OGQxNGRkM2I3NGM4OTQwMWY5NmNkZTMgbGVnYWN5LXRydW5rCis3ODA3OCA5MTg5ODAzZjgzNDA3ODYzZDQ2OWE2OWRmMDM5NzNhYjMzNzM4OTViIGxlZ2FjeS10cnVuaworNzgwNzkgYjExNmZmYmNkMWIwNzExOWExNjQxNjdlNThjNTI5YTZhNWZkMGQ5NCBsZWdhY3ktdHJ1bmsKKzc4MDgwIGQ1MzBhNzJiNDZmYzgyYjljODhhMDYyNGI4ZjljMjNhZjNhMWYzZjMgbGVnYWN5LXRydW5rCis3ODA4MSA4N2NkODkzY2I4YmEyNmQyNTM5OWFlM2EyYmY5M2M5ODA0YWU3MGY3IGxlZ2FjeS10cnVuaworNzgwODIgMjE4MDRkYzdhZmY0YjQxOWIwZWVkZWIzZmQwMDY1YjA2Yjg3Y2ZlMCBsZWdhY3ktdHJ1bmsKKzc4MDgzIGRmZDQ2YTVkYjg3MmJlYmZkZjVjMTVhNjU4NWY0NmI2MzMzZjcwNjcgcmVsZWFzZTI2LW1haW50Cis3ODA4NCAwY2ZlODM2YzRhOGQwNjEwNGIyMGUzYzc0ZGNiOTEyOGE5YzI5YWJkIHJlbGVhc2UyNi1tYWludAorNzgwODUgNmE4OTJjZWRmM2E0M2FmMjUwM2UwOGViN2UyMWI1MzUwODZjNDc2YiBsZWdhY3ktdHJ1bmsKKzc4MDg2IDg2YTg0YmUzM2U2YWE4NmMzYzdkZTJlMTZmYmVlZmMzMzg2NjA0ZDAgbGVnYWN5LXRydW5rCis3ODA4NyAxYmU3MTE0NDczZWI1YTlmZTcxOGRkNGQ5ZWM0ZDdlMDExYmQyOWE2IHB5M2sKKzc4MDg4IGJkNWVlMTNmZGRhMWVjZDgwNTk1NGM2MWM0ZmY3M2IwNmRiNDNlYTYgbGVnYWN5LXRydW5rCis3ODA4OSA1N2ZmNzcwMmVjNzRlN2I4ZmJiMzA1Y2RmMDE3YzRkM2I2NjYwYTM5IHJlbGVhc2UyNi1tYWludAorNzgwOTAgMGNmOTdhZDJmZDFmNjFhOGRmNWI1YWEyNmNiOWEyMWE5N2E5OTBhMyBweTNrCis3ODA5MSA2NDAwNGE5ODYyZTQ3MjFkNTg2ODQxYjYwMjM3ZTAzODkwNGUxZjlmIGxlZ2FjeS10cnVuaworNzgwOTIgODBlMDIxZmUzNGVkN2IzYjkwNDlmMmQ0OTk3NDUwYzU3ODJhNjFmNyByZWxlYXNlMzEtbWFpbnQKKzc4MDkzIDcwZTExNWMzNGY5NzA4YTQyMWYxYzhjZjQxNmRmMjYwY2EyNTc0ZjQgbGVnYWN5LXRydW5rCis3ODA5NCAzZDk0YjFlNzc5YzU4MjkyYjU2M2ZmNmExMTQ4NWZmYjQ5Y2YzOWIyIGxlZ2FjeS10cnVuaworNzgwOTUgYjgzNGM4ZWU4ZTdjOTJkZGI0NDBhZWRjYmM4NmQ5ZmRiNDIxOTA0OSBweTNrCis3ODA5NiBmMTA4ZjYyNzU4NTU1Njc0NzQ3YmZiOWUyMTU0NjRkNjg0YmM4NmJjIHJlbGVhc2UyNi1tYWludAorNzgwOTcgYTI4MDg0NGI2OGY0ODU1NGNmODYwYzY0ODdkOWIwNTUzNjI3ODFjNCBsZWdhY3ktdHJ1bmsKKzc4MDk4IGZhY2E5N2M1ZjAzODA0NjExNjQ2M2I2MzFiNjZkYTBjNzg0MTA2Y2YgcHkzaworNzgwOTkgMTNmY2FhNzkzMjRiYjg1MTRlMmMzYmE4Y2IxYTEyYWI1NWM0NGQ5YyBsZWdhY3ktdHJ1bmsKKzc4MTAwIDNmMzkwZjQ4YjExMzE0ZWRhNDZlY2Y0ZjRkNDZhZGY4MDljYWM2MjEgcHkzaworNzgxMDEgYzhjMGFhMWZkNGE2ZDUyOWUwMzA3NzU2YmQ3ZDI0MTQ2OGQyMGJkOSBsZWdhY3ktdHJ1bmsKKzc4MTAyIGM4NmQ5M2FlY2Q3YTI1MDJkOWI3NTYzNzViZDVmMDdlMTY5Yjc1ZTUgbGVnYWN5LXRydW5rCis3ODEwMyBkODRkYWNkYjJkMTI1MjQ5ODBhNjkxZTU0ODIyMmM3MmI4Y2IzYmY2IGxlZ2FjeS10cnVuaworNzgxMDQgNjAwYWI5Y2VlNDAzNTBlNjNmYzA0MmNlMmNjNmQ2MWQ1Y2U3MmU4YiBsZWdhY3ktdHJ1bmsKKzc4MTA1IDRiY2Y5NjgyOWQxYTNkODk3ZjQxZTdkYTVlNTZlMTFjNDgxMTM2MGUgbGVnYWN5LXRydW5rCis3ODEwNiA5MzY3NmFlOTdjNjhiNTNlNmEwOTY4YzM0MTU5OWEwYWZlMzVjZmZhIGxlZ2FjeS10cnVuaworNzgxMDcgNDg0ZGExM2YxMjUzNTNjN2M4NDllNmQwZjMxMmMxZThiZmY0ZWQ0NSBsZWdhY3ktdHJ1bmsKKzc4MTA4IGRiZjAzZWI3YzEyZWQ0MjBjZTY4ZDQ3YTljMTdlMTdmZTRjODRjYjggbGVnYWN5LXRydW5rCis3ODEwOSBhOThiMTM2MDhkMjNhNDVkYjA2MjZlYTI5OTdiYmI4Njk4MzNhYTU1IGxlZ2FjeS10cnVuaworNzgxMTAgZTdlODliNDU4MzQxOGI5NDFkNTI5OWNmODg5ZDkyN2UxYWMxOTA4ZiBweTNrCis3ODExMSAzN2U4OWRlYmVmNmEzZGU0OTcwZmE0YjM5NmRmMzgwNjNmZGZkYzg4IHJlbGVhc2UzMS1tYWludAorNzgxMTIgNzU4OTYwNWRhZWQxMDQyYWY5OTMyNTE0Y2NkOGRmYjk3YzlkYWEyZiBsZWdhY3ktdHJ1bmsKKzc4MTEzIGE5MWZmYzk2NDRlYjllNmYyNjg3MjE0YTc1YTQwN2FhNjhjOTlhYTAgbGVnYWN5LXRydW5rCis3ODExNCA0N2ZhNTRkYWIzOGNhNzBiZDYzYTQ1YWQ5ZGIwOTM4YzczNWM1NjBmIGxlZ2FjeS10cnVuaworNzgxMTUgNGUwZGI0NDU2NGIxNzNkMDlmOGE3YTVjMDEyOGE0NDFjYmNhZWI0MCBsZWdhY3ktdHJ1bmsKKzc4MTE2IGY0OGM0NzFhYzhjOWUwZTk4YmJhMTY4ZjEzYTMxNzY0ZjY2NzgyMWIgbGVnYWN5LXRydW5rCis3ODExNyA5NmMyNjcwM2I0OTBhNGI1Nzk3YzIzMjUzNDg0MzE2NzBmZWY0OGExIGxlZ2FjeS10cnVuaworNzgxMTggOGJlOGQ1ZGI5NmEyNWNhZDhlOWMyNjRhNjNkZWNkNmY5ZjNjN2Q4NCBweTNrCis3ODExOSA1OWUxNjJiOWYyMjU0M2Y3NDhiNTgyZTFlMjI2ZjQ2YTlkNzViYzMxIGxlZ2FjeS10cnVuaworNzgxMjAgM2VlZjM5ZTdiNzRmMzIyOTRjODFlNjFkZWM4YWQxNzM2OGQ4MTA4NyBweTNrCis3ODEyMSBlNWM1NjQ2NTkyMDM3MzZiMTM0Mzg4OWU1YzJkYTAxMjRkZTAzODgwIHB5M2sKKzc4MTIzIGVhOGNjMTM5NTFiMGJiYTVjNDgyMGNjZDNhYmZjMTNlYjliNTNkZmQgcHkzaworNzgxMjQgNmE2ZWRkYjQ1OTk2N2IxMDAwZTY0NzA5ZDBkMmYyYzdhZTQ1YWE5ZSByZWxlYXNlMzEtbWFpbnQKKzc4MTI1IDI2NTI4NTkxMjE3Y2YzNzNlMzU2ZDU4MGZmYjE3ZjQxZWRkMDE0MzIgbGVnYWN5LXRydW5rCis3ODEyNiBiZGJlMTM3OWYzZWFmN2YyZmRjOTZjNjFmMTA4YjJmMzFhNTk5MWU0IHB5M2sKKzc4MTMwIDBiZWI3YzgyOTRjN2Y0MzljMjQzOGQyMGQ1OGM1MzMxOWYxY2VmODUgbGVnYWN5LXRydW5rCis3ODEzMSAwYWY2OTlmMDllZTNlMmNkMDViNDhiZDhkYzNkZGVmNzRkN2M1ZTEwIGxlZ2FjeS10cnVuaworNzgxMzIgNjFkMTcwMWQ5YzY2MmVjYjM5NDQyODQzMjQxM2YxYTkxODc4NWM5NiBsZWdhY3ktdHJ1bmsKKzc4MTMzIDExNjU5NTk0Zjk4MjI1ZWVlMzUxMDQ0ZjE3MjE1OTYxYjBkYTA3NmIgcHkzaworNzgxMzQgYzUyOWU1MWY4Mzc3NThkYmQ1YTE5ZmFkODczNjVhNDFlNzIwYzAwNCBweTNrCis3ODEzNSA1ZGNlY2FjMWM4ZDY3NWVjMDE4MzRmMzg0OWY3NDQ0YjdkNGNiYzk3IHB5M2sKKzc4MTM2IGQxZTJmNzk0ZDAyMDY0MjVmZDlmNzdhYzVlZTBiMjQ2MDBiMjJjOTQgbGVnYWN5LXRydW5rCis3ODEzNyAxNzJmZGIxZDczMzdhZGI0YmM4YzEwZjQ3OTUyNWU4YTFkNjNkZDAzIGxlZ2FjeS10cnVuaworNzgxMzggYzJiZGJkOTM1YjVlNTBjYjY3YjBjN2JiYjJhNDgxYjM5NmJlNTE1ZSByZWxlYXNlMjYtbWFpbnQKKzc4MTM5IGE3MWRlYTg5ODc3ZDg5NmY2NjA5MGY3ZDFmYmY4MjY0ZmU0N2QzMWMgcHkzaworNzgxNDAgNjg3Y2E0YjM3NGY0Yzc1NjhiNDA5NjIxOTIyYzllMmY2ZTNkNjYyOCByZWxlYXNlMzEtbWFpbnQKKzc4MTQxIGM0NWRjYmRjYWI4NzM2MmRhYzZiNGQ3Y2MyNjA5ODhiZGE4YjRlNmEgbGVnYWN5LXRydW5rCis3ODE0MiBiZmQ0Nzk4YjFmNzdlMDBkYjZhNzlkODEzYzZiNzYzMzk1NjZjNzRiIGxlZ2FjeS10cnVuaworNzgxNDMgMTRlZTNkNGM3YmQ1Yzg1NGUzYjY2M2M0ZGJiMDNmNDE0NzRjNjA5NSByZWxlYXNlMjYtbWFpbnQKKzc4MTQ0IDgzYzhkZmI1NDQyMTIwZWJlMWQ5OGNiOGZhMTI4MTIzOTM0ZWE1ZDEgcHkzaworNzgxNDUgZmIwOTgwZTFhNGNlNDJmNmMzNDM0NGVkNWMyNGQxOTg0M2UzYzNiMiBweTNrCis3ODE0NiA1ZWZmYmQ1NTIxZTNmNmVmNTdhNTEyNmQzMzJkNzQwN2VkMGRiNTY2IHJlbGVhc2UzMS1tYWludAorNzgxNDcgMjM2YWI0OGVkZDBjZWE0OTg4OGQzOTgwODY5YjllNDI1ZGU1YmM1MiByZWxlYXNlMjYtbWFpbnQKKzc4MTQ4IDJiOWIyMWI4MzBkOTI0NjAzNWRkOGQ2Mzc0ODRjMDVjZThiYTg2ZTQgbGVnYWN5LXRydW5rCis3ODE0OSA0NzEyMzkxNWVhMjBkOTBkZmZhMzc3ZmJhZjQ2ZjBlODMwY2E3ZDY4IHB5M2sKKzc4MTUwIDNiZDY1YjM0NmJmY2ExNjc3OGViNjE4MDk0YTMxM2Y4OTI4ZGU2OTggbGVnYWN5LXRydW5rCis3ODE1MSA2YWU1MGMyYzBhYjlmM2I4MTQ4ODUwNDNlNTI0NGRjNTI3OGU5YjRlIHJlbGVhc2UyNi1tYWludAorNzgxNTIgZjE1NmI1ZTczYjBkMWExMzM5MzVmMTVmNzllYmM5MTRhZmE2MDQ4MCBweTNrCis3ODE1MyA4Y2YwN2E2NWQ2Zjg1NThmOWNiNDc1MWI2YzU0MTU1ZDY1NDc2MzExIHJlbGVhc2UzMS1tYWludAorNzgxNTQgODJhYTk2OGE5NTA0YTZiMzUyMzU3ZjgzOTcxMWRiMmU0MmYwMGIyNSBsZWdhY3ktdHJ1bmsKKzc4MTU1IDMzNDUyZDk1MzAxZjE2MDczNzVlZTNlMzY4YWM0YzcxZWJiZWUwNzUgcmVsZWFzZTI2LW1haW50Cis3ODE1NiA1OTAyOTQ0OTVlNWYyZDMwNjE2MDhjMTU0NzA1YzRiNTU5N2VkZGU4IHB5M2sKKzc4MTU3IDM3ODhhYjI4Y2NhZDcwZTZlNDg4OTM1YjhjMTQzNmU4MGE0ZjZlMGMgcmVsZWFzZTMxLW1haW50Cis3ODE1OCA1NmZlMTY2OThlZTgyODhhYTEwNDFlM2ExNzVkMDJkZjlhM2UzOTAyIGxlZ2FjeS10cnVuaworNzgxNTkgN2IxNjJjNmE5MzQ0ZmMwMmRkOTY1MjRlNjVlNWU5ZTllMTk3YWNlOSBweTNrCis3ODE2MCA2ZjY5YjhmYzJiYTNlZjY4YTcwZDViNWMyYmU5ODZlOWQxMmU3NDY4IHB5M2sKKzc4MTYxIDEyMThhMmEyMjUzY2NhMzQzYWE3YzAxMmVlMGE5MDY1MTk3NzVlNDQgcmVsZWFzZTMxLW1haW50Cis3ODE2MiA2OTRjOTdhMmNkZGMxNmRiMzFlZTMyY2MyZWNkNTRjYWI0ZDc5ZTVmIGxlZ2FjeS10cnVuaworNzgxNjMgMjI5NmM1ZTZhZDBkZTY2YmM2NDM1ZTc3NGZmMWU5MGJlMGNiN2QxYSByZWxlYXNlMjYtbWFpbnQKKzc4MTY0IDgxMjk0NjJjYWEzMDdhNTg5MWM2OGY3MGJmMjRkOGFhMzI0ZGU5M2IgcHkzaworNzgxNjUgNTM3YjY2N2FkNDUwMDNjOGQ2NjdkNmYwYzgwNzgyZTJmNmE1MWE4YSByZWxlYXNlMzEtbWFpbnQKKzc4MTY2IGIxYzlkNmJjZjNkNGM4NDJjMDY5NzBjYjgxOWEwNzI2YTViM2I2NmQgbGVnYWN5LXRydW5rCis3ODE2NyA2YWNiOWFmYzc1Y2RlNGFjZDg2MDhmM2EzN2MyMTk0ZWZkM2Q1MGY5IHB5M2sKKzc4MTY4IDMzNDdiNGVlYWI0MDRlN2Q5MzMwN2QzOThmZmNkZjg2NjZjZTFiZWYgcmVsZWFzZTI2LW1haW50Cis3ODE2OSAyNjNhOGY5MDU3OGQwNmZkZjc1MWI3M2ExOGZhZDM3YzU5YjJhZDQyIHJlbGVhc2UzMS1tYWludAorNzgxNzIgZDQzNzQwMjQ3NTAzMzJiZDA5YTE3ZjE0YWY3YTkzNTQ5MjQ4ZGFhMiBweTNrCis3ODE3MyAzMmE0ZWUyNDgwNjk0MzRlMDhmODVmYTMwOTJmZGVjYTA2NThhOGIyIHB5M2sKKzc4MTc0IDQxNTc5MjAwN2ZmOWVlYjM3ZTY4MzA1NjhiN2JkZTQ5NjhhNDExNjEgcmVsZWFzZTMxLW1haW50Cis3ODE3NiA4YzRjMzkxY2FhZWJmNTc2MTczNDRmOWNmZDI1YTM0N2I1YjM5OThiIGxlZ2FjeS10cnVuaworNzgxNzcgYTMzNzVhMGZmZTJlNDU5MDQzZWUyMTUxNjM0OTkxMDk3MmZlOGUxOCByZWxlYXNlMjYtbWFpbnQKKzc4MTc4IDcwZjQ1NmJmNzYzODdkNDk5MDJkMzlhZmZmMjI5YTA0NDhkMDQ0MTggcHkzaworNzgxNzkgZTBlYjk3NzNhZjgxODM0ZDNkNTk4YTM2MTM0MjU4MjlkMWE1NzQyNiByZWxlYXNlMzEtbWFpbnQKKzc4MTgwIGE3OTZmMjhhY2VlMmU3NWRiMTk3YzAyNGIzMDMwYjc0YzVlYjgzYTIgcHkzaworNzgxODEgNjhiZTQ0NDI4OTA5ZWQzNGM3ZmY2MjBmOTJiZWM4NDU1NTkwOTAxMSByZWxlYXNlMzEtbWFpbnQKKzc4MTgyIGRjMTMwNGYwNDVhNjBlNTI0NjQ5NjA3MGE3Zjc2MGI1NTIxMzBiOTEgbGVnYWN5LXRydW5rCis3ODE4MyBhMGVmY2Y5YjZlZGQ1NDJlNmU1ZTY3YWZjYTFkYmQ0ZGZlZjc4NTRiIGxlZ2FjeS10cnVuaworNzgxODQgMjAyMmVkZThjYTBjNjFmNDRmZGY0NGMwMTZlYjAyNzg1ZjMxNDJmYSBsZWdhY3ktdHJ1bmsKKzc4MTg1IDkwMWZjYWFlNTI3NWNkODQ0ZWM1Yjc4N2RjYzk2MTAxN2M3OTkxOTcgcHkzaworNzgxODYgODc1NmMzZGU2ZDI0YjhlMjI5ZTQ5M2UwYzE2ZTVlNDNiMmEwYTZjNSByZWxlYXNlMjYtbWFpbnQKKzc4MTg3IGQyOTFiODMwNDJmYjZjOThlMWE0YzQwYmQyYjU1ZDgyOThjYmRiOWMgcmVsZWFzZTMxLW1haW50Cis3ODE4OCAzMWY1OGQ5YzcwMTZlYzhmOTZkMDY1MTlmZjc4ZDdkNDhmNGZlYmJiIGxlZ2FjeS10cnVuaworNzgxODkgNWU2ZWRiNGU3NmY1ODM3MDExMGM2MDBhMDAzOTFkMTJmNGE1ODU4OCBsZWdhY3ktdHJ1bmsKKzc4MTkwIDZiMjliOWY5NjgwNTk5Y2I2NTYxZTBmNzkwOTMxMTM0YTY0ZmZlZWIgcmVsZWFzZTI2LW1haW50Cis3ODE5MSBlZjc0NzY0YTYzMjA5ODM2MTA0MzFiMzE2MTRiNWEzZTY0NTNlOGRmIHJlbGVhc2UyNi1tYWludAorNzgxOTIgM2JhYWJkMWQ2OGEyODZmNDMzYWRkYjQyMmQ1ZmYzMGQwYTZiMGVhNyBweTNrCis3ODE5MyAwMjkzMTgyNDY5YTc3MzRkZDMyZTQ4ZDhhYmYzZTRjYjRkODU5YTI0IHJlbGVhc2UzMS1tYWludAorNzgxOTQgNDExYjMyOTkzOGRjNGNhZDc4MTQxMzgwZjI0MzhhYzUxNDdiMWZiNSBsZWdhY3ktdHJ1bmsKKzc4MTk1IDE3MjVmYmFiZTczYmQ0MDVhMDg1MjBhYzc3ODM5OGY2Nzk0NDM0NzEgcmVsZWFzZTI2LW1haW50Cis3ODE5NiA3YWU0M2MwNTExNmQzZjkzNmEzYzIyZWY4YTQ0M2Y5NGYyOTFhMGQ3IHB5M2sKKzc4MTk3IDYzNzRlMTg1OTM0NjQxN2Q1MjUwOTg2Nzc4YWQ2ZTQ1NGUyYzI5YTQgcmVsZWFzZTMxLW1haW50Cis3ODE5OCBiNjQxYzFhYTY0M2UxOTI4Y2E5MDRiZDA3ZjMxNDA0MTY2YTE2Y2YyIGxlZ2FjeS10cnVuaworNzgxOTkgNDY1YzA0N2VmMzExYzBjYzQwZjBlN2QzYmFhNTJlYTAzNzczOWM4ZSByZWxlYXNlMjYtbWFpbnQKKzc4MjAwIDc3ZDg1OTAyNjkxOWNlNGFiZThlMjM2ZGEzZWZkODhjYjk4Y2JhOGEgcHkzaworNzgyMDEgNGY2YzFiODI3N2ViNDM2ZWNiYmRhNTA4MDY0OGY3ZTIyNjA5YmI4YyByZWxlYXNlMzEtbWFpbnQKKzc4MjAyIDdhNTZmMmNhZTNlY2Q3ZGEyNzYyZmQ4ODk2MjgyZDViN2E5NjlkNjAgbGVnYWN5LXRydW5rCis3ODIwMyAxNWIwNDlmYWMxOTFhNDA2NWNiMDg2YzhjNzc5NTc3ZjkxOTU1ZmI2IHJlbGVhc2UyNi1tYWludAorNzgyMDQgZDRmYmI3ZTUzYzkyOTJiOTRkZmE4MmY1ZTRkMjM1ZDllN2E5OWQzMSBweTNrCis3ODIwNSBiNzMyNmY5YjU5OWI3MGYzNTFlNzlhYzEzNGIwMjFiNGY4ODBhYjI4IHJlbGVhc2UzMS1tYWludAorNzgyMDYgZWJmZDBlYWViZTI3MTE4ZjI5YTRmN2FiZTc4ODhjNDIwZTJlNDU5MSBsZWdhY3ktdHJ1bmsKKzc4MjA3IGJmYjNlODRmODVmZmY1OWVmMzRjODk1ZTJiZDkyMTgyNWM0NWExNjIgbGVnYWN5LXRydW5rCis3ODIwOCBlZWNmMWJlZjA1MmQzZGE1MTEyM2QyODViODNkMThiNGM0MWE1ZTE3IHJlbGVhc2UyNi1tYWludAorNzgyMDkgNThiMzBkYmNmOTljNDhkNmI4NWU3NTMzYmUwYmQwYTA2NzIzYTc0NCBweTNrCis3ODIxMCBhNjcxZWUzYmJjYjQ5OGU3NDk0NjNlZjRkODkzN2I3NzQ2OGNkODE5IHJlbGVhc2UzMS1tYWludAorNzgyMTEgMGRiZTI5MzBlZTNmMGRkMjU5MGQ1MGIzMzRiZDMxMDhhMDU1OWYzZCBsZWdhY3ktdHJ1bmsKKzc4MjEyIGEyNzI0NDRmMGVmMGM5MDIyZjM3ZWM4NmZkNDU3ZWZmNWM2MmRkOGIgcHkzaworNzgyMTMgMjI1MzU1N2Q2ZmEyZmU2MTEyZTgzYzIzNWQ0OTA5NWM3OTAyYjk1MiBsZWdhY3ktdHJ1bmsKKzc4MjE0IDRjMGJlMzdiNDZiMDM2OGMwM2I0ZDdiZWJlYmM4Y2I2NzZjMGFlOTEgcHkzaworNzgyMTUgZGZjNjdhZDRkY2VlNTdiNjY2MjdjYjBmOGQ4ZGQ0MTFhNjQyZGRiNSBsZWdhY3ktdHJ1bmsKKzc4MjE2IDhmMDJjNTRhYzJhYzhhNzBmZTcxMmQ5MGNiZTMwYmZjNzU0NzBiMmEgbGVnYWN5LXRydW5rCis3ODIxNyBlM2QwNzEyMzNiZWZjMGFlMTUzNjJiNzUzN2QzYzEwZjlmYzhmNDljIGxlZ2FjeS10cnVuaworNzgyMTggZWExYWRjNjgzNWNjZDE5MmZkMzg5YWM5NDZlOWNiMTVhYzcxNjM3NSBsZWdhY3ktdHJ1bmsKKzc4MjE5IGYyMjVkNWU2ZTBlNTBiMGNmY2ZlMjA4NDhlNWY2YWFhMDVkZjIzY2EgcHkzaworNzgyMjAgOTNlM2U2YzUxNTEzNzU3ZWI4MTUzMzg4MTdlYWQ1NWM0MTAyMDc4ZiBweTNrCis3ODIyMSA5YTU4MWMwMjEwZjJlZjc3NzdiYWUyOGZlZjM2NzlhMjEwY2JlNjM2IHJlbGVhc2UyNi1tYWludAorNzgyMjIgNDFjNWU4ZWZlYWEzYzU4YzkyNTlhMWRiM2E3OWYwZTdhNjkyNTgyYSByZWxlYXNlMzEtbWFpbnQKKzc4MjIzIGZiOGMwMzg4ZTM4NWU0ZWQ5Yzg0MzBlMzJiYzA5YThjZTJiZjA1NzEgcmVsZWFzZTMxLW1haW50Cis3ODIyNCA5OTJmZDA1NDdmZjhkNTdkODRmMzhlYTVhNjQwZTgyNmFiNWU5NjA4IHJlbGVhc2UyNi1tYWludAorNzgyMjUgMjg2YWYzMDhjMWJiYWFhODhhMTE1ZTA4Mzg5NDRhYzY3NzVkZDBjZiBweTNrCis3ODIyNiA4YTllZjJjZjc5NGZlNmU2Y2I3MGJmYjgyYTZmNzQ2ZjZlYjkzNmZjIHJlbGVhc2UzMS1tYWludAorNzgyMjcgNTk3ZDZkMzYyZGRlNDBkODBmYjcxN2RiMzM4Nzk5NTIzODUwNTcwOSBsZWdhY3ktdHJ1bmsKKzc4MjI5IDVhYTlmODNkZDAwZDlmZTJkNGMyNDRkMjlhZWIwZTkwMDc5MDE5NzkgbGVnYWN5LXRydW5rCis3ODIzMCA3MmY0NmNiZmE1N2FhZDIyMzdiNmYyOGZiOGVjYTViN2Q4MmVkZjI2IHB5M2sKKzc4MjMxIDVlNjE0ZWFhYTUwNTFhYjk0ZWIyYTEzMWIzN2Q2ZWEwZjliYzg3NjMgcHkzaworNzgyMzIgNmU3NGQzZTUxZDMzZTlmNzkxYTYxZmRkNGU1ZWYwMzc5MzJmMzI1NCBsZWdhY3ktdHJ1bmsKKzc4MjMzIDRmYzhiNmZlNGFmODY3YTJiYWZkYzRjODc0MGJkZmMyM2IzMGJhZjMgcHkzaworNzgyMzQgN2RhN2Y5YmZkYWFjMDE3ODlkN2QzNDVhN2VhMzA0ODY5ZDZhMDBjMiBsZWdhY3ktdHJ1bmsKKzc4MjM1IGM0ODVlNTVhYWY5NjVmNTQ2NTk2OWE2MDdkY2YwZGFkMTY3OGEzMWUgcmVsZWFzZTI2LW1haW50Cis3ODIzNiA4YjE2ZjE0MDgyNDllOWFlMmY5OWE2NTE4ODBlYjhiMWNhNjRlZjI0IHB5M2sKKzc4MjM3IGY3MjVjZjEyMzM0Yjk3YzAxMTI5YmI5OGY5NWFlZTkzMmQ2M2M5OTkgcmVsZWFzZTMxLW1haW50Cis3ODIzOCAwOTA2YzZmNjQ4NDc0NDlhN2EzYTUwMzBmZjlkYTA3NTk3YzE3ZDM5IHB5M2sKKzc4MjM5IDQ3NGVjNTY4NWEyZGYwZWVjZjczYjcwOThjNWEyN2JjZTM4YzcyYmIgcHkzaworNzgyNDAgM2M3MDQ0NjFlYWRhMDljYjllMzdmOGI0OWI5NjYwN2VkMTA1NzdlMSByZWxlYXNlMzEtbWFpbnQKKzc4MjQxIGY5ODE3ZWM4YjU0YzA0YjM2M2Y0Mjk1ZWVjZjhkNDg4YmQxZTAwNDUgcHkzaworNzgyNDIgNjc0YzI3ZDg3ZWE5OTIxYjViZDBmZjUzYTk3YWUxMjUzMTQxZjJlNCBweTNrCis3ODI0MyAxYmYwNDNlZGI4ZDU3NGZhZWU1OTZiMzAzOTdmOWFkODc1MjljYzQ1IHB5M2sKKzc4MjQ0IDUyODIzODIwZGNlMTNlOGQxZjI5OWNmNTA4MWIzNDgzNTdjMTkzMDEgcmVsZWFzZTMxLW1haW50Cis3ODI0NSBlNzQyM2JlZDBlYzQzZTJhNDRmZmFjMDkyNTE2MWY2MjJkYzMxNTQ1IGxlZ2FjeS10cnVuaworNzgyNDYgOGQ4NzFlMGZhNzAxODYyMjBiNDQ4YTE1NjRmYTIzMmRmYTZjNGFiZSBsZWdhY3ktdHJ1bmsKKzc4MjQ3IGVhZjhhOTNjZGJmZjRjYTg2M2U2Mjc0Y2ZlMjgyNmNiYmI0YWEzMDIgbGVnYWN5LXRydW5rCis3ODI0OCA3YWI2Mzg4NGQ2OGI2ZjU3ZjY3MzU0NTNiMDc2NGNiZGNlZjA3NDNjIHJlbGVhc2UyNi1tYWludAorNzgyNDkgM2E3MTMyZjY1NjIzMTM2ODEwODRiODkyMzVhODdiYTk5ODM5MjBhYSBsZWdhY3ktdHJ1bmsKKzc4MjUwIGFjYjI3Yjk3OTIzYTNhN2VhNDI5M2ZmOWI5MDMzYzgxYmNmNWM1N2IgcHkzaworNzgyNTMgZGU0Y2E4ODE0ZTBkODgzMTdmNGM3YTNmMDI4MjAyMzgwYzMyZGY2NyBweTNrLWNkZWNpbWFsCis3ODI1NCA1NTdlNDU3OTk3YTgxNjRjZTI3NjE3MGI3ZjJmZDdhMWFkYTg3N2I1IHB5M2stY2RlY2ltYWwKKzc4MjU1IGJhNDA3YzNkODIwY2Q4NTZkYzNhY2U3NmM5MDdmNjA0OGJjMjQ0OTUgcHkzay1jZGVjaW1hbAorNzgyNTYgODY3MjcwZDNjYTg5ODkwNGMyNTM5M2VmOWQwN2FkNDhjMjRiZWM0NiBweTNrLWNkZWNpbWFsCis3ODI1NyBhYzVjMmNmZWE0MmY2ZDA2N2MwMTFiNGUxZTgwYTJiOTdhNTVhOTMwIHB5M2stY2RlY2ltYWwKKzc4MjU4IDlmY2MwMzBhOGU3MDFiODExNWFmODQxYmFiOWZlOGZlNjc3OWIzMWYgcHkzay1jZGVjaW1hbAorNzgyNTkgM2U3ZGQyMDY4NWQ4ODVhOGE3YTY0ODhhMDE1ZjhhMmYzNGRjMmMxNSBweTNrLWNkZWNpbWFsCis3ODI2MCBmNjdiY2Q0ZWNiZWVmZDU2YTVhNDEzMWFiZWFlOGI4MDA1ODA4MGNmIHB5M2stY2RlY2ltYWwKKzc4MjYxIDY2Zjk3NTBiYzZmZjM2MWRjZWQ2ZGM3N2NhNDlhYzc1MGQyYWJmNzMgcHkzay1jZGVjaW1hbAorNzgyNjIgZmJjMTU5NTMxYmUxY2M1YzA2YzNlYTlmNjhjMjkwZDg1YTcyM2ZhNSBweTNrLWNkZWNpbWFsCis3ODI2MyAxMjliYmM2NjM5YmQ4N2YwOTY5Y2NmNTc4NTNhYmQwYTljNDZhM2E4IHB5M2stY2RlY2ltYWwKKzc4MjY0IGJhZGQ0ZTcwNTczM2FiZjQzNTQ5YWVjMzY1MzRmOWJiZjA4ZmM4YzkgcHkzay1jZGVjaW1hbAorNzgyNjUgNDIwOWMzOThjOTI5N2FhNTViOWIwZWFhOTBhOTg4ZjVkMDcwN2U5YiBweTNrLWNkZWNpbWFsCis3ODI2NiBlMGUzZjYzNDE1NzA0NmY5MDFjYjI5MjFlMDNhZDgzODUzZmM4MGFmIHB5M2stY2RlY2ltYWwKKzc4MjY4IDNjMTJiZGY2Y2M2ZDE3ZjNiMDg3ZTk2NDQwMmJhOGE4ZWQzNjRhOTggbGVnYWN5LXRydW5rCis3ODI2OSBhYjIxYTA0ODFkNzI2NGU2MTUxNDk5MDY2YmI1NmRkMDM5YzY4MmJlIHJlbGVhc2UyNi1tYWludAorNzgyNzAgZDMyZDAzZDQxOTQ3Njg3YjBkMjZmOGU1N2I5MzhmODYyZTU0MjdhYSBweTNrCis3ODI3MSBiOTgzNzc5ZjIxMjFiODU0NTExYTk1MGYyNzQ3NmIyZWRhNDljYWZlIHJlbGVhc2UzMS1tYWludAorNzgyNzIgZGNkYTk4NWM2NDAzNDI4MDhjZTdkYjA3NmFjYWIyYmUxOTVjNmYyMiBsZWdhY3ktdHJ1bmsKKzc4MjczIGFmMDBmNzBhMWZmMTA0NGMyN2NlZDFmOWUxZDBhZDRhMmY3Y2E2NWMgcmVsZWFzZTI2LW1haW50Cis3ODI3NCBkYjg2YmYzOWNjYWE2OGYzYmYzZjllNzFjMTc2MjhjMmZmYzMwZDIzIGxlZ2FjeS10cnVuaworNzgyNzUgZDNhZTA0MWU3YjhjMjZlZDk1ZDRhNzcyZWY5Y2M4N2NlNzhiNjE1MyByZWxlYXNlMjYtbWFpbnQKKzc4Mjc2IDM3OTBmM2VkYTFjNTZiOGFjNmZiZWNlNDc3OTMxMTMyMTllMDk1ZGEgcHkzaworNzgyNzcgMzkwYjBlNzA3ZjU0YjVkYzA5YWMxNzE0NzQzYjZjMGQzMzAwN2IwNCByZWxlYXNlMzEtbWFpbnQKKzc4Mjc5IDFiMjQyZmIzM2JlNzEyM2NhYTY1MDBlM2Y4Y2I4M2UyMTkxNmQzZDQgcmVsZWFzZTI2LW1haW50Cis3ODI4MCBjOGVhNzU1OThmZDZkMmU0MGMyMzQ5Y2EwODYyMjY0NDc1MTgwODk1IGxlZ2FjeS10cnVuaworNzgyODEgYjkyMmUxZWJlMzgwMjI2OTE5ZjQxNDU1Mzg3OTU3M2Y5ZDZmMDZkZSBsZWdhY3ktdHJ1bmsKKzc4MjgyIDBlZDE5Mzc2OWE1ZjFlZGJmNTU3MTkwMDUwZWUyMzZlMDFmMGQzZDggcmVsZWFzZTI2LW1haW50Cis3ODI4MyAwMzQwODA0YWQ3MTNlMDQ4NjRiYjlhYzE1ZGJjMmQ3NjgwMGNlNmRhIHB5M2sKKzc4Mjg0IDRmMzA0NDUyYmJmNjlhYWZlMDZhOWI2ZmI5OWIyYmQ0YjAzYTRhMDQgcmVsZWFzZTMxLW1haW50Cis3ODI4NSA4MGI2MTJjZDk0YTRlN2RlMWRlMjk5MGEwYmYyZjE0Mzc4MDQ4YTBjIHJlbGVhc2UyNi1tYWludAorNzgyODYgNTAzM2E0Mjk1Yzk2YWViNzJhMDNjMzg1NzI0OTMwNTU2MmUwMmY0MyBweTNrCis3ODI4NyBlMTQ0YzYzZTFmYTYxMTI0ZTM3NzFmMmY1NTU5NzgzMGU5YjEyOGIzIGxlZ2FjeS10cnVuaworNzgyODggMGQzYzk3MWViMjA2OTc1OWJiNzI2Nzk5ZmNlOGI2ZjM0NWEyMGUyNSBsZWdhY3ktdHJ1bmsKKzc4Mjg5IDIwYjg1N2JiMTBiODA4NWQ5MmNmNTE5MzJlODA2ZDViZWQ5NDYzYTEgcHkzaworNzgyOTAgYjc0OWE3OWE1MWNjYjRjYmE3MmQ0NzYxZTUzODVmNTRlMTNiZDhhNCBweTNrCis3ODI5MSAwZDJkNjYwNjEzMDNiZDViNWQwOWI2MjgyNGVjODhiNjVhOWM0NmQwIHJlbGVhc2UzMS1tYWludAorNzgyOTIgMTcyMGVlMDgzZWVlZjY0ZmMwOWFkM2VkYjk3MDlmMjM1MWMzZmQ5NyByZWxlYXNlMjYtbWFpbnQKKzc4MjkzIDZkNmJlNjVkMzg4MWZiNjIxYzYwODQwZWFkNGFlNTE0MGE3NDU1ZjkgcHkzay1jZGVjaW1hbAorNzgyOTYgOTZhNGFhMWYzMWMxMzY5MTAzNGYxNDZjMzQ5NGI5MDhlNWNkZjExMCBsZWdhY3ktdHJ1bmsKKzc4Mjk3IGFiNmZkOWU0NTQzNjIwNDIxY2Q5MzVkODhlNDYyYmVmYWJiYWZmYTcgbGVnYWN5LXRydW5rCis3ODI5OSA1ODFlMjFkN2ExOTI4NTdhNTVlODBiNGEyYzUzOGViNmU0MTc4NDgzIGxlZ2FjeS10cnVuaworNzgzMDAgY2MwZTY5YzhmMGMyMzcyOWY0NDM4ZjJlNDQwYTgyYTc2YjcwMmM5YSByZWxlYXNlMjYtbWFpbnQKKzc4MzAxIGY4ZGRmY2VkMmEzNDdhN2M3ODlhNmM4Y2M3MWI0OGUwYTFmZDZiYTUgcHkzaworNzgzMDIgMDM2OWJiYWE1ZDJkZmJmOWFhMWY3NWRlNTc0NjRmODAxMDA5MjQ4OCByZWxlYXNlMzEtbWFpbnQKKzc4MzAzIDNkZTliYWNhZDk1YmMyYmE0YzJkMTFhNTg2ZmE0NTdjZDJiNDUxNjAgbGVnYWN5LXRydW5rCis3ODMwNCA4Yjc0NTVlMDFhMTExNTBkN2M3MWJiNmE5MTVmOTc3NGU3NTNhNWQ1IHJlbGVhc2UyNi1tYWludAorNzgzMDUgZjg2MTJkNDEwZTJjNDE4YjI4ZWExOGRkZTdkZmE3NjgyY2JiNDU5NyBweTNrCis3ODMwNiBmMGFjZjIxMzhhOTY2YTdlM2VlN2Q5NmJjMDI1YTE5ZmMwODMyYzIwIHB5M2sKKzc4MzA3IDIwNDU0ZmIwYmU2ZWY3NzQ0ZGJlMWRhODEwOTg2OGVkOGM1Y2Y0MTUgcmVsZWFzZTMxLW1haW50Cis3ODMwOCBjMjU0ZTU0YWM4NTY0NmZkZGY5OTlkYTg5NTU3OTRlYWYzODY5YmY3IGxlZ2FjeS10cnVuaworNzgzMDkgYzFhNGYyN2FlOGZlODM2Njg4ZDdhZWU5MzA3OWUzMDcxZTU0MTQ0MiBweTNrCis3ODMxMCAxNWQ4ZWQ5NDhmYjU2MTFiNGFmNmVkMGQ1OWYxYzU3MTkyYmVjMWRhIHJlbGVhc2UzMS1tYWludAorNzgzMTEgOWVjZTNkZDFlOTAxMGQzMjZmYjkwNzI4ZGQ0MWYyMjM4Mjc1Nzg4ZSBweTNrCis3ODMxMiA1MGY4YmY2MTcwNmE0NjBhYmI2N2M1YTQwZDdkYmZiZjk4YjdjYjZmIGxlZ2FjeS10cnVuaworNzgzMTMgYzQ1ZWMzYjExYmJhOWVkODI0YWU3ZWI4YjM5ZWU3Y2FkYTU5NDcwYyByZWxlYXNlMjYtbWFpbnQKKzc4MzE0IDUyMjdhNTVlZDcxNDJiZDk5NTMxY2ZlZDZiMGQ4YWEzMGU4MmEyZDggcHkzaworNzgzMTUgYWU2NWM3ZDM1ZjI3YWEyYjhiODE3MDA2YTc3NGFlNjIyNWEyOGNiZCByZWxlYXNlMzEtbWFpbnQKKzc4MzE2IDM4ZjczMjgyZjAzODMwYjAyYjU0M2NmNzllMmZhMDI1Nzg2MGQ2ODYgcHkzaworNzgzMTcgNWQ3NzQxZTFlNjcyODZlMTM4ODFkNjhlODMyMDAzMGNkMmU0ZTQ2MSByZWxlYXNlMzEtbWFpbnQKKzc4MzE4IDIzMTE1MDE1ZTViOTZlNzQxYTg2MWJhNTJkODAwNDgxNmE4MTQ1ZGIgbGVnYWN5LXRydW5rCis3ODMxOSAzMWM3ZGVmOWJmNTFlNzhiY2FlYjBlMzUzMDE1NDc1ODc0YTc5MjUxIGxlZ2FjeS10cnVuaworNzgzMjAgMTMyZDQyMzQ4MjE2YzczZWRjZjY0NzRlMWFhOTFhOWFmYTM3OGYxOSBweTNrCis3ODMyMSAyZWIxMzY1OGY1NzNhOWJiNmVlZDA0NzQwMTQ5MjQxNjhkZTExMTZlIHJlbGVhc2UyNi1tYWludAorNzgzMjIgOGYyZDEwMDE0YzA4NDY0ZjkwNmEyZDkxNTQ1MTcyOWIyOWM1ZGExMyBweTNrCis3ODMyMyA3YTBjMzBlN2U0Y2FmMDQ2OWRlNWZjNTZmZTRhZGUyY2U1OTM4Yjk4IHJlbGVhc2UzMS1tYWludAorNzgzMjQgZDdjMzM3N2Y4YTdiNjc0MmY3NjAwZTMyNGY4NGZiYzE4NDlkMTRkYSByZWxlYXNlMjYtbWFpbnQKKzc4MzI1IGM4OGI2NjAyZjgyZDc1ZjZmMGRjMjI4YTQyNjRlNGFkZjlkOTg1ZWUgcHkzaworNzgzMjYgYTYwOGZjMzc4ZDkyMjFkNDQyMGExNWRlZDg3ZDNiNjAyNWM5ZTZjNiByZWxlYXNlMzEtbWFpbnQKKzc4MzI3IDQ5MDJlYTAyNTYzMDc5OTViYzk5ZDU0ZDEwNGNmMjIwMjUxYzhiYjQgbGVnYWN5LXRydW5rCis3ODMyOCA1MzJkYTg2OTczY2Q0YTFkOTZkMWVlZjUxN2YxZWQzOTNiZDdmYmQzIGxlZ2FjeS10cnVuaworNzgzMjkgZmY4NGUwODkzY2IxYWI2ZjdmNmQ0NDczNTViYjI4ZDdhZTI0OWE0ZSBsZWdhY3ktdHJ1bmsKKzc4MzMwIDk3OWFjMTdlYzgyM2QwNmY2NTRlZGNmMTJhZGJkYzUwNDk1OTFmZDIgcmVsZWFzZTI2LW1haW50Cis3ODMzMSA0MGNiMjIzM2Y3MjZmMWM2MGZjMjNlMTI3MzBlMGNkZjNiODVkOTEwIGxlZ2FjeS10cnVuaworNzgzMzIgZmQ5NDg4ODU0MDg4NzczY2M0NDI3ZTkzMjA5NDM3ZTIxNDFjMDcwNSBsZWdhY3ktdHJ1bmsKKzc4MzMzIDVjNDQ2NmIxNmQ2ZDU3NmUzMTUzZjNjZDQzZjRiNDA0OGQxNDAyMGYgcHkzaworNzgzMzQgNzNjZDgzNzA2YmM0NTQyZDM3ODhjMDJlNWY1OGJjNWI1ZmY5NGI5ZSByZWxlYXNlMzEtbWFpbnQKKzc4MzM1IDMzNTdiOGViYjI1OTVjMzM1MjRjNTRmOThlOTBkNmNiNzg2OWRkYTMgcHkzaworNzgzMzYgZWEwMmVjZTMyM2ZlMGU4NDQ0MTYzOTY3ZjkwMjI0ZTBkZTA4Yzc5NiBsZWdhY3ktdHJ1bmsKKzc4MzM3IGVmNzMyYzNkYjYzZGM1OWY4NDZjNWQ0ZjY1ODM0YWI0Y2Q5MzIyNDYgcHkzaworNzgzMzggYmQxM2VlZWRjM2IwM2NjMDM1YzM5NjUzYTE3ZWI4NGExNzMxZmQ1ZCBsZWdhY3ktdHJ1bmsKKzc4MzM5IDA0N2YxOTk3N2M0Mjg0MzZjMmFkY2VlOTJlODhlOTc3YzM3YzcxMjUgbGVnYWN5LXRydW5rCis3ODM0MCBiODNmOTcxNmYxMzViODY3Zjg5NzI0NTRlMDcxNmU1MjQxZmM5OTZjIHB5M2sKKzc4MzQxIGQyODhlNTQ5MWJjYWFiYzAxNmNkZjVjYjRhY2NmMTZiMTk4NjEzMDQgcmVsZWFzZTMxLW1haW50Cis3ODM0MiA3ZmIwMTNmZjAxNGYxOTVlODUxZGI1ODk3OTBkNTYzZmE1OWU1YjU5IHJlbGVhc2UyNi1tYWludAorNzgzNDMgNWZjYjBlMGJlODllOWIxMDEyMTMxZTdiNWQwOThlM2FmMjY5YjE0OCBsZWdhY3ktdHJ1bmsKKzc4MzQ0IDg3ZjFiOGZmYzI4ZDc1ZGUxNjUzNjA4MmVkOTNlYjViNjRhNjQ3YTMgcmVsZWFzZTI2LW1haW50Cis3ODM0NSA3N2Q4NzdkMGJmMDZkOTNlZDQzNTNiMzkyOTk0NDNlMDU1YWYxMDFmIGxlZ2FjeS10cnVuaworNzgzNDYgMzFjYjYxZTBmMmJjMDA4NjZlY2Q2MTgyMDE3NDBiNTg5NzljYTk3MCBsZWdhY3ktdHJ1bmsKKzc4MzQ3IDliNTgwNmEwMDhlNzE0ZWMyZWVkNjNjZGNiNjg3ZjdmZmExYzY2ZjQgcHkzaworNzgzNDggOWQ1NWIxN2EzYzY0N2FmMjUxNmRhYjg3NTI2M2E1NGEyY2JlMmEwZiBsZWdhY3ktdHJ1bmsKKzc4MzQ5IDE1Mjg2ZDlmMWE4ZTM4MDMyNWM3MDlhZmJlYjUyZDE0NWYyNzhiZmUgbGVnYWN5LXRydW5rCis3ODM1MCA4YzBlNDg5NmRiZmM1MjQ1NjI1OTBhMDMxM2NlZjM1N2MyODcyNDNmIHB5M2sKKzc4MzUxIGE0YzQ1ZjhlNzBhYWUxZjM5OTMzMDQwMzgwMzAxNDJiY2Q2MjQwOGYgbGVnYWN5LXRydW5rCis3ODM1MiA4ZThjNDVhYjQ0ZGNmN2Y3ZWE3MjgyZmE5NjIxNmYwMDZlMWJhNWY3IHJlbGVhc2UzMS1tYWludAorNzgzNTMgNTc2N2Q5MjQ5ZjU4OTIzZTMzMzM1Njc1ODUxZDdkZjkxYTg3MzU0OCByZWxlYXNlMzEtbWFpbnQKKzc4MzU0IDBiZDE3MzZlMzI5NzNkNjYxODA2NmQ1MmQwYTAzNDJiNzY3ZDlmMGEgbGVnYWN5LXRydW5rCis3ODM1NSBmYzRiMDA1Y2JkMjhmNDIzMDlmMDU1YWZhYWUyM2UzYzc2MDBhZDgzIHJlbGVhc2UyNi1tYWludAorNzgzNTYgZmMyODZmZTQ2NjEyMzMwY2IyYTRhYWZkODJkNzJjNjQ0MzRmMzRkNiByZWxlYXNlMjYtbWFpbnQKKzc4MzU3IGE1ZmFhYWI5OTVjNDJjOWE2MzMxNDYzNTM0ZGQ0MTk1NzFlZTdjZTQgcHkzaworNzgzNTggYjRjNmI3Njk0ZjBjMmVjODMxOTlmYTQ5OWE1M2ZlYTk4MzJlYzM2MyByZWxlYXNlMzEtbWFpbnQKKzc4MzU5IGFjMzZlYzhiYWU2YzY1MDY4ODYwNmI5MmRmNDQxMWQ3MmMwNTIyOTUgbGVnYWN5LXRydW5rCis3ODM2MCA0NjBjZTllODQ4MzgzZTVmNGZmZTY4MmUyYzE0YjJkMWUwNWFjNjM1IGxlZ2FjeS10cnVuaworNzgzNjEgNGExMTgxZWM0MDM2NGZmYTU0YTc5Njc2NTQzZWY4ZTlhZWU1ODUzMSByZWxlYXNlMjYtbWFpbnQKKzc4MzYyIGExZDA3OGI4ODI0NzJhNDI0OTE2NDBjYTUzYmY0ZDlkNmI5YWIyY2EgcHkzaworNzgzNjMgMTM5YzEwNDhmMzFiZDUwMGE4ODYxZjgzNDhiNDE4Y2JjMjIyZjM2OSByZWxlYXNlMzEtbWFpbnQKKzc4MzY0IGI1MmUzZmYwYTRjOGIyM2ViNjhjYjc0ZTUwNGJhYzI5OTRlMWU1OGUgbGVnYWN5LXRydW5rCis3ODM2NSA4YzkzMGU0ZDUxYmQyOTBlMjAxN2M0OTJiYWQxNmZmN2E5OWYxNTg2IHJlbGVhc2UyNi1tYWludAorNzgzNjYgZGY1NmJhMWNiMGFmMjgyNThhOGI4ODlhNzVlZGE3MGQ4NzM1ZTMzZiBweTNrCis3ODM2NyA5MjY3MGNjMWE2YmM0MDJkZDExYWQ1MTAyYWNkMTgyOGZjMTg2YTgyIGxlZ2FjeS10cnVuaworNzgzNjggZmVjNTVmNTI3NzVjZTc3NTE4NTNlMjQ2ZDIxZTM0MDQ5NWY5YjEwOCByZWxlYXNlMjYtbWFpbnQKKzc4MzY5IGJmOGQ5ZjAzNTljMTIyNjAzZWI2NzkzZmI1NjM4YWQyOTg3NmZmZWEgcHkzaworNzgzNzAgMjQzY2M4MGQ0YTA2N2I0OTM0OTFmYTlmMzEyN2I3OTkyOWEwNjMzMiByZWxlYXNlMzEtbWFpbnQKKzc4MzcxIDc2YWM3YTFkNzFiNzVlYWU2ZWE3NTE1ZWI4NzY5MTI1ZGE0OWEzODcgcmVsZWFzZTMxLW1haW50Cis3ODM3MiA4YTU2YjgyYzEyODQ1MjkxMWQ1YmRiMDNiYWVlZTcxMTE0OWZmOTU5IGxlZ2FjeS10cnVuaworNzgzNzMgZGEzNzNkYWMyNDE1ZTMyYmMyNWZlM2M5ZmMzZWYxYTIzNDljMjU3YiBsZWdhY3ktdHJ1bmsKKzc4Mzc0IDg5YmMyOGYyMDAyMWZiNDYwMmE0ZGVjNzM0NTBmMzlhNWUwNjc5ZjkgcmVsZWFzZTI2LW1haW50Cis3ODM3NSA4NjkwZDA4ZDk1M2Y5N2U1NThjZjE3YWZiZTk0MzQ3MmE2MGNlNGIwIHB5M2sKKzc4Mzc2IDBmNTRkNDMyNzM0Yzc2NjU4ODM4Yzg1YWUwMmM4MjM1MWFiOGUyMDMgcmVsZWFzZTMxLW1haW50Cis3ODM3NyAxZGQxZWFkYTQ2YzJkNzBkZWFkNGVmZjIzNDIzMGFjNzE5YmQ1ODllIGxlZ2FjeS10cnVuaworNzgzNzggYmQ0YzkxNmYwZWZhNWQxZWY2N2QzNzJlODI0OTNmYjQ1NjlhZTFmZCBsZWdhY3ktdHJ1bmsKKzc4Mzc5IDllMWNhMWMxMTkwMjFjNDgxMmJlNDE4NzE2Yjc3YmNlMmVkYmM5ZGYgbGVnYWN5LXRydW5rCis3ODM4MCBiMTc4MTRiZTA1ZjFjMWY1YTY3MjU4ZDFmM2Y4NTMzNjJkMDg1NDA0IGxlZ2FjeS10cnVuaworNzgzODEgZTJhNDQ0NWIwZTdjMzAwZDBhNzIwMmVhOTYxNGIzNTk5NGEzNGRmYyByZWxlYXNlMjYtbWFpbnQKKzc4MzgyIDlmZDgwM2FiZTE0MWM5NDY4YjhmYTY3ZWMzYjkzYTg0ZDc4MjVjYjYgcHkzaworNzgzODMgYjkwOGE0MGYwMDIwNTA5MTMyYzFkNGJhZjE0YjJkNzA2YjM3Mzc1MSByZWxlYXNlMzEtbWFpbnQKKzc4Mzg0IGRkYTUxNjVhMjM3NGU3ZDg2NjE4Y2Q3NzE0NDg4MjE4YTlkOGRkYjYgbGVnYWN5LXRydW5rCis3ODM4NSAyODc0NTBiMmQ3YTc4ZDVkMGQzMzIzNzI5NDY5NDBmZDk2YzFiYjQwIGxlZ2FjeS10cnVuaworNzgzODYgZWE2OGQ3NTUyOWIxMWNmY2RjMTdlNzNiMGFlYTg5MDRmZjBkYWM0YiBsZWdhY3ktdHJ1bmsKKzc4Mzg4IDc3ZGU3YjFiY2Q1OWRhN2U2NzY4ZGQ4MDRiNDlmYmEzNGMwZGVkOTIgcHkzaworNzgzODkgYWIxMDc5M2E0NmE3MDFjMmU4M2IzYzAzNGJmZjk4NTQ5NjQ4MjU0OCBweTNrCis3ODM5MCAxMjQ5NzA3MmY5ZGFjZTIwY2U3YjJiYjVjY2YwODk0NzNmNjM5YTMwIHJlbGVhc2UzMS1tYWludAorNzgzOTEgZmNmMjEyYTkzZGQ0MmYwNGYzZTBmZDdjMmM5NTBhZDdhNjRjZjViNyByZWxlYXNlMjYtbWFpbnQKKzc4MzkyIDMyYjIxMDYxZWU5ZmZmMjU0YzMyMjI0Y2I2ZjJjNTlkNWRjZmU3MzQgbGVnYWN5LXRydW5rCis3ODM5MyBkZjU3MTljMjk4ZGIyZDhmYmJiOTE5MzYwZWJlN2RhYjI3NGM5ZGZlIGxlZ2FjeS10cnVuaworNzgzOTQgNzc4MDQ4MmE2NGRhNjlmNjE2NmY5YmNkN2I5NDg3YTAyY2ExMTcxYyByZWxlYXNlMjYtbWFpbnQKKzc4Mzk1IDQ0ZWU0ZjI3MWQ3YWViZjhhZjIwZjBiZDg5ZjQ3MTk2NzU2Mzg5MWIgcHkzaworNzgzOTcgNzk4ZTBkMGM3MjQ2ZGRiMjA3YzI3NWQyZGE5YTVkM2U1ODhhMWEzYSBweTNrCis3ODM5OSA0MTBjMWM4MGQ2NjNhYjNiOWRlOTkzZmM2MjJmMjRjMmM2Yzg2NTA2IGxlZ2FjeS10cnVuaworNzg0MDAgOGQzZmYyZmJiZTRiNGE0OWExYjNlZWQxOWViNWI1NDBmYTcwM2Q3NCBweTNrCis3ODQwMSA2OTZmNzY3ZTc3ZmY4Yjk5YzI2MjY1Mzk3Zjg3MTczM2JjZmYwNGRhIHJlbGVhc2UzMS1tYWludAorNzg0MDIgNjc4MjU2ZTgwZmM2MDFkM2IzNmVjNjMxMjZjMjFmNzZjMzQxOWNkMiByZWxlYXNlMjYtbWFpbnQKKzc4NDAzIGU4NTQxMmY1NDRjODNlMjMzZjJhYmE5MDlkNDdkNTRiYWRkOTg1YTkgbGVnYWN5LXRydW5rCis3ODQwNCA5NTRiOGUyNzY2NzQ2MzIxZWY3NGM2YjMxMTBlNWYzNTZlZGI2NmE1IHJlbGVhc2UyNi1tYWludAorNzg0MDUgZTgwMzI3Y2I2ODQ2ODFkNGY1YzQ2NjAwYWZhMzg0OTZmODEzNGM3ZSBweTNrCis3ODQwNiAxMDdjNGM2ZWM2NDk1MWZhODg3MGU1OTAxYjA2NDJlOGJkMTFmMTcyIHJlbGVhc2UzMS1tYWludAorNzg0MDggYTVmNmRkMTg5MjgyZjAxZGE2NDlmZDdhOWZjOTIyMjFiNGE2ZGFhMCBsZWdhY3ktdHJ1bmsKKzc4NDA5IGE5YTQzODEwMGY4ZDRiMmNhYjgwNWUzNzNhNDQzNTcyMjQxZDIzMjggcmVsZWFzZTI2LW1haW50Cis3ODQxMCBhOTk0NWFmY2M0ZWQ0ZDcyYmNiZGU2YmQ5YzFlZWEwZDhlNjRjM2NmIHB5M2sKKzc4NDExIDE3NzE5ZDM5NWYxZTZkZTQ3ZjBmODdhODlmMWUwNmE0MmY3NDMxNjAgcmVsZWFzZTMxLW1haW50Cis3ODQxMiBjNDY1ZDIxNDM4NzRkY2FmNWZjOWU1YjcyOGIwYzVjMDc3YzQ5N2M0IGxlZ2FjeS10cnVuaworNzg0MTMgMDc5NWRkN2IyYzlkMWIyNDAxMmM5YmNkN2UzNjI4ODU0Mzg0NTk1ZSByZWxlYXNlMjYtbWFpbnQKKzc4NDE0IDgyMGVhZjkzODgwNDViY2QzMjM5ZWNmNGI5NDA1NDMyYjc0ZjdlMTUgcHkzaworNzg0MTUgNGY3NTAzYWVlYTg1ZmM4NWMwNTNiNTgyYWYxOGI0OGNlODA5NDIzNiBsZWdhY3ktdHJ1bmsKKzc4NDE2IDllYmJjYjdhMzk4OTcwY2M5ZGRhNWJkOWNlOGEwOTlhYTBkMjJiMWMgbGVnYWN5LXRydW5rCis3ODQxNyA0NTIxMmEyNDdlZDRkNWQ0YWM0OTAwMDYzYzY4MjViZTVlMmM0YjY0IGxlZ2FjeS10cnVuaworNzg0MTggMmI4MmIxNmE2Mzc1NmM0Njk1YWM5YzY2ZTg3YzNlM2IyMjI1ZTBhNiBsZWdhY3ktdHJ1bmsKKzc4NDE5IDVhYzM0OWMzMjJmZDNmZmM3NTdmYzY0YTRhYjY4YzNjYzg1MTk4OWQgcmVsZWFzZTI2LW1haW50Cis3ODQyMCA1OWVjZWExMzc2OWIzOTg4MDNiMmViOGExN2Q2Y2ZmOTc4MDRmMWU0IHB5M2sKKzc4NDIxIGM4ZWY5MDZiMTFiODgzMjAxN2E1NWEyMzcyODBhNzM2MDhhOGUyOTkgcmVsZWFzZTMxLW1haW50Cis3ODQyMiA1NmY0ZDZjNTE0NTAxNmU1YTVmZjJkYzlhMGY3N2E5NzA1OWI4YjZjIGxlZ2FjeS10cnVuaworNzg0MjMgOTIyNWI0ZjhjYjFlNzNjODExNWFjNWRkYmNmN2I1MzA2ZmFmYjNkNSByZWxlYXNlMjYtbWFpbnQKKzc4NDI0IGFmNTg3YjRiNTkwOTE5NGYzM2UxMmU2MzI5ZTI4MjczYmU3OWY2NmQgbGVnYWN5LXRydW5rCis3ODQyNSBjMGZhMTQ1MzcwZTQxZjQxMDI4NDk1MTExODk5ZGIzNDVjNzFlMmIzIHJlbGVhc2UyNi1tYWludAorNzg0MjYgM2Q0ZGIxZjViM2IxNTVkNWJmNzQ3ZjFkZDJmNTg4MDQxY2U4NDViMCBweTNrCis3ODQyNyBlNzA5ZjZmNmY0NWNhOWNkOWZkZTJmYjlmZTU4YmI3MzYxNGQ3MWJjIHB5M2sKKzc4NDI4IDVmOTkzOWFmMmY3MWFjZmRjZWZlNTZjNmI0MjBkZTNhMDI2MGZlZWUgcmVsZWFzZTMxLW1haW50Cis3ODQyOSBhZjllNmVkYmIwZmY3OTZhYmZhNTU2MjhiZDg3YWMwNzFmYTcyNTg4IHJlbGVhc2UzMS1tYWludAorNzg0MzAgZTQ3YTY0ZjljYzc3YmZlYWNlZjAwNjNkNjFhNDU2ZjRlNmI4OTc0MCBsZWdhY3ktdHJ1bmsKKzc4NDMxIDMxODEyNTVlMjhjOTlmOTZkODMzM2Q1NzA2ZDZlZGI2Y2Q3N2NkMTggbGVnYWN5LXRydW5rCis3ODQzMiBjOTUwZmFjNzQxMWJhNjQwYzkzYTFkNGIwYzZiMjQzN2RiOTEzYjU0IHJlbGVhc2UyNi1tYWludAorNzg0MzMgMjg3ODhmNzJkOGMwZmU1ZGE1Yzk2NTU3ZmM5NWFmNjBlOTE2MjA5ZiBweTNrCis3ODQzNCA5NGUyYjY5MDI5Njk2ZDBhMGEwMjA5OWQ4ODI5MDRmNjA1ZjkwOGE5IHJlbGVhc2UzMS1tYWludAorNzg0MzUgYjdkZTdjNWFmYTA0MjkzYzcxOTNhNTAzYTFlNzRkMmExMmIyMWE4MiBweTNrCis3ODQzNiAxOWNmNTI2YmVmYTQ2OWI1OWNiZmNmOWFmMWEwMGMxZTYxMzFmOTA4IHJlbGVhc2UzMS1tYWludAorNzg0MzcgMTIyMjFiNmNjOGNkYzdkMDg4YWNlZjRmY2Q4NWRjMTM2MzRlY2FkNyBweTNrCis3ODQzOCBmNWVhMTI2NGI3YWUxNzg3ZjNhMGE5MjAxMGUyYTFlMGJlMGY5YjVhIHJlbGVhc2UzMS1tYWludAorNzg0NDAgMzgzZjQwOTc1Yzc1YzNjMzFjZWU5YjQxYzMzYTg2ZTBjZDE1YzA2NiBsZWdhY3ktdHJ1bmsKKzc4NDQxIGJkODM1N2E5MWQzZTYzOTI2MWJhMWQxMWQyMmI4NDA4MmEwODBmMDggcmVsZWFzZTI2LW1haW50Cis3ODQ0MiA4NWJmODQ0NjlhMzJjOWRlNDZlNDlmYzlmZDM4NGRmMGI4YjNlMDE0IHB5M2sKKzc4NDQzIDIxODMyNzdjYmFiMTg3NjZkN2FiMTMzOGYyNjQyODkyYWM3ZDNlMTggcmVsZWFzZTMxLW1haW50Cis3ODQ0NCBhY2NhYjRiYWI2MzRjZDYxYzZjMzA4NjY1Mzg5ZWY1ZDVjMGI1YzVkIGxlZ2FjeS10cnVuaworNzg0NDUgZWNmZTljZmFhMzM0NzMxMTM0YTk1N2FlNTczNTA3MDJiZmRiYzE3OCByZWxlYXNlMjYtbWFpbnQKKzc4NDQ2IDg5YTUwYTExODIwMTkxMmRlN2U2ODdkNzkyNzQwZDFjYjk4ODUzNjggcHkzaworNzg0NDcgNWYwNGUwY2Q4MTcxNzkwM2I2MzAyNjNkMDY2N2JkZDEzMWJjNmU1YSByZWxlYXNlMzEtbWFpbnQKKzc4NDQ5IDZjMTRjMjc5MjViOWU1ODNkNzdlOWI0NDFkNDAyYTFlMTQ1Y2E4ODQgbGVnYWN5LXRydW5rCis3ODQ1MCBhYWNjMGQ0OGQ0NGQ3ZTEwNWI2Y2Y4ODYzNmMyZGZiMDcwOWMwZDE3IHJlbGVhc2UyNi1tYWludAorNzg0NTEgODU1M2Q0MmM5NGIxYTlmY2FlY2Q3NWYwYTRiMzc5OGUxNDE0YWI1NSBweTNrCis3ODQ1NCAxYTYyZjQ4OWE2OGEwYTkzNjYyOThkY2RkNzI1NTY4YTE5NmIwNTc4IGxlZ2FjeS10cnVuaworNzg0NTUgNDc4MGUwMzc3ZTEwZjY4ZDFiMzhmZDUyNTBhNDkyOGIyMzg4NTA2ZCBweTNrCis3ODQ1NiBlMWJjMDAyMmIyM2IyZDkxMGEyM2I4NWYzZjY2YmNhMmZkNjg0ZTEwIHB5M2sKKzc4NDU3IDk1YjNiYjZiOWZhYWI5YzQ4Zjc3ZTU5OGQxNjBlNDM1YzU0YjdjM2MgbGVnYWN5LXRydW5rCis3ODQ1OCAzYWI3NDA5NDA1ZmEzYTNiOTJiZGRiN2ViMTcxMmJiMjM1MmJhZjMyIHJlbGVhc2UyNi1tYWludAorNzg0NTkgYzEyYjk1NTM1MDk0ODgzOWU2NzIwZWNkMDk5ZDgwZWRlZjVhMTIyOCBweTNrCis3ODQ2MCAwODNjOGU1MzU0YWRiMzNiNzk2M2JkMDM5NDZmNDY3YzIzZTZjYTc4IHJlbGVhc2UzMS1tYWludAorNzg0NjEgN2UzYzQ3MzU0ZGEzNDI2ZTdiY2ZmMjNmMGJkYzJhZmVmNWQxZDJkYiBsZWdhY3ktdHJ1bmsKKzc4NDYyIDdkMzQzZDViZmIzZjFjZGZjODM5NjczY2JmMjUzMDEwNTAzMWFlZjIgcHkzaworNzg0NjMgYWQyZjVlYWNkMmEwMzZkNGU4NGFiNDA5ZDI5ODRjYTUzOTNlOWI5YSBsZWdhY3ktdHJ1bmsKKzc4NDY0IDlhYzM1MjE1YWY0YThjOTdjMmJlMmQ5NzQzMWM3OGJhOTIxYjcxMTggcHkzaworNzg0NjUgM2RjZGNhMDA3MDk1NTY2ZTQyNjYxNzYzNzc3MWQ4MmM3OWM0MzliZCBsZWdhY3ktdHJ1bmsKKzc4NDY2IDI1MmYxZTIzZTk4NjAzMTY4NGRjODI2YzBiMzQyZTM2YzMyZTU0M2UgcmVsZWFzZTI2LW1haW50Cis3ODQ2NyA4YjIwNDhiY2EzM2MxZDQzZTE5YWI0YzdmMTYzN2UwZGU3NjZiNzY2IGxlZ2FjeS10cnVuaworNzg0NjggNTM1ZTIxNTVhZjFhODJlMTAzNGFjODE1MDliMDI1MWQ0ZjNiOWQxNCBsZWdhY3ktdHJ1bmsKKzc4NDY5IGRjMWNkOGVkZmE0NjU3MmUxZTY5MTA0Y2MxODE2MDMxMzIxZmRmYTYgcHkzaworNzg0NzAgNjA0M2QwYmQ4YmY3MGE1NzRkODI3ZTY1NGVjNjQ1ZWQ1ZGI1NDk5NSBweTNrCis3ODQ3MSA2MmJhYmY0NTYwMDViNjdjZGRlZDYyMDgyZGU3NWE3MWU3MTQ3NWQwIHJlbGVhc2UyNi1tYWludAorNzg0NzIgOTQ4NmZmNDAyYWNjMzg4MTk0ZDI4NzVkNGZhZjBkZjI2ZTVmM2FhYyByZWxlYXNlMjYtbWFpbnQKKzc4NDczIDMzM2ZlOGQ3OTMyOThiYzE2ZGNiYzE2YjA4ZjVjMTRjY2JiYmE0MDEgcHkzaworNzg0NzQgNzg3NGQxM2M5YWE3NjdhNzg4MTBiNDBkYTUzYmZmMjI1ZDY0NTA5YiByZWxlYXNlMzEtbWFpbnQKKzc4NDc1IDhlNjQ2MTVhNGM4NjM1ZmFlZDRjNzRjNWRiY2M0YWU3YjEyZTIxNjcgcmVsZWFzZTMxLW1haW50Cis3ODQ3NiAyZjJkMjI1Nzc3NDI4MDZiZTYxNmY5NmE2NzQwNTU4ZWM5MTdlOTRkIHB5M2sKKzc4NDc3IDVlMmE1ODQzMDdiYTk4N2M4YzExMTI0MmQ2OWM3ZmM2YjU0ZDk3MzYgcmVsZWFzZTMxLW1haW50Cis3ODQ3OCAyMzFjODhlZTg4ODVjMTAzMGU5NjA2ZjI3NjE4OGFhZDI2NTVhZDE3IHB5M2sKKzc4NDc5IDMyNzBiYTFiZWM3NmEzODliMDczYzMxMTllZjg0NDgwYWI1OTVhYzAgcmVsZWFzZTI2LW1haW50Cis3ODQ4MCAyYjY4ZTMxNDJkMTdlODMzZjYxNmYxNTE3OTljNTNlYzk1ZTI2MWQ0IHB5M2sKKzc4NDgxIDU2ZjUzN2JlZGFmZWQ5ZmY3ZGE4NWE3YTkzYTQ4OGQ1MzY4OGI4NzAgcHkzaworNzg0ODIgNDA3MGY0Y2Y4Yzc3MmNkNTM5ZTJiNjdlMWY2NDEyYzQyMmYyNzY1ZSBsZWdhY3ktdHJ1bmsKKzc4NDgzIDQwNjZiNDVkMjhhYjI4YmQ2ZTI1ZGY2OTNjNWEzY2ZhMmM5MTgzNDkgcmVsZWFzZTI2LW1haW50Cis3ODQ4NCBlNTQwMzIzZDg3YThiMjAyMmEzZTVkYzZlNzdkODE4MDc4NTExZjcyIHB5M2sKKzc4NDg1IDBkNTkwZTVlODQwYzYzNWIyYjVmZTcwMWZiYTI5ZDE2NDAyZmFmZjkgcmVsZWFzZTMxLW1haW50Cis3ODQ4NiBhYmE5ZjY1NDFhZDY5ODNiNTA0OWM3Mzk1OGYwOGM1MDAzZDEyMGRhIGxlZ2FjeS10cnVuaworNzg0ODcgMmEwYWM5YmRlOTlhZmQwMjdjM2Q3YzJhZGM4Njk4YzY0NzEyNTEyYyBweTNrCis3ODQ4OCBkMGMyYjljMmJhYmIwZWQ5NjY4OTdkYmMxMDU4ZGMzYzA1MGMyYWQ1IGxlZ2FjeS10cnVuaworNzg0ODkgMGI0ODQ2NDg5MDU1YWNlNGZiNjczNzgyYTg5ZjJkZDQyNTM1MTViZSBsZWdhY3ktdHJ1bmsKKzc4NDkwIGYxMzljYTAzNGMzYjc1MDM4MDRlYTU2YTA1Y2U5NzgzZmFmMzFjYjcgcmVsZWFzZTI2LW1haW50Cis3ODQ5MSBiZjE0NmYxMDNlZTY3M2YyYzI3ODdhNDdiYTMwNWM2NDcyZjRlMDdmIHB5M2sKKzc4NDkyIDAxOTRkOGE2YjFlZmZjNDIwNjY2NDc3ZWJlNzA1YzQ1ZTlhZGE1MzIgcmVsZWFzZTMxLW1haW50Cis3ODQ5MyBhZTA5YWIyNjg2ZWQwNDk0NjEyZDQ4YmU4YjA1YTgyZDAwYWRiYzI2IHB5M2sKKzc4NDk0IDg5MWU3OWQ3NzBkODhlNjdiMDRiNzZiNWE0OGMwNDk0MTE0NjI4YTkgcmVsZWFzZTI2LW1haW50Cis3ODQ5NSA4MTUwOTJhNWU1YzEyOTgzYTgzNmE2NzYxNGNhYTBmYjUwOWQ0Nzg2IHJlbGVhc2UzMS1tYWludAorNzg0OTYgZDYyYmRkODRkZjBhM2JkYTVlZTIzYTk5MjE4YmU1ZTYwNTFjNTU3YSBsZWdhY3ktdHJ1bmsKKzc4NDk3IDc3NTkzN2EzNGY5NjYyYjM4ODU0N2YxN2ExMzY3YzlkOWJkYjgxN2YgbGVnYWN5LXRydW5rCis3ODQ5OCA4NjQwMmZhMGM1Yjg4ZWNmOWVjMDUzNDgzMmEyZjE4NjVhNWY3YmZiIHJlbGVhc2UyNi1tYWludAorNzg0OTkgNTYwZjNmNGVlOWE3ZDgxOWU3YTYzY2RkY2YzOTk4ZWY5N2ExOTc1MSBweTNrCis3ODUwMCA1NjIwNWY1NDdiNzQ2MDU5YzU3ODdiMDM1NDk3MzliMzAyNzQxYWZjIHB5M2sKKzc4NTAyIDg4NzEzYzBlZDAxMDI1YTgwNDU0NGZhZTEyMDJlOGQ5ZjY3MWIxNDcgcmVsZWFzZTMxLW1haW50Cis3ODUwNSA4MWQ2ODMzYzYyNzhiZWZkMDEyMzBmNWY4ZjUyNDJmODE1MWZhYjQzIHB5M2sKKzc4NTA2IDg4ZjE0N2QyNjM3MjYxZjYzMzc1M2RiMDhmNjJlYzIxYzM3Y2RkNzIgcHkzaworNzg1MDcgYTllMWYxZDM0Yzk2NzFiYmVlMTVhY2U0YzkxMmIwM2M1MjI1ODQyOSByZWxlYXNlMzEtbWFpbnQKKzc4NTA4IDY3OWY1MmI4YWVmNGM2ZDJmNjlkMjliMGQ0YTA0ZmZhNGE2ZDllMzMgbGVnYWN5LXRydW5rCis3ODUwOSA4MWRjYzBjODQ1ZGZiNjY4ZWFjMDE4OGM1YzFmNjk3NzIzMTYwMjFjIGxlZ2FjeS10cnVuaworNzg1MTAgMDFjNThjZWY4MmQ0OGE5YThhYjE2MjdlY2Y3MjE2NDMwN2UxOTdjOCBweTNrCis3ODUxMSA1ZDlmM2FmYmM0ZTRiYzBjNTEzZWU2YTE1MTY3MzhmNTNlNGExM2IzIGxlZ2FjeS10cnVuaworNzg1MTIgMTNmZjlmZGI4NDMxYjcyOTNmMzFiZGE0YjgxN2M2YjM3M2U2ZDc5MyByZWxlYXNlMjYtbWFpbnQKKzc4NTEzIGYzNzg2M2E3ZWQ2NzdhODcxMzJlNzliOGQwNjAwMDgxZDBiMTM0ZmEgcHkzaworNzg1MTQgMjA4MGFiODgwYTgwZWQwYmFmZWNmMDEyNzk4YjVmMDE2Y2U1MWI5MSByZWxlYXNlMzEtbWFpbnQKKzc4NTE1IDc5OWJjNDk2NGExZDkzMDJkNmNhNzQxYTUxMjE4NTZjMzFkZDM1ZGMgbGVnYWN5LXRydW5rCis3ODUxNiA3NTA4MDI3NTkyMWI4ZTg2YjU0NTk3NzY1MTkyM2I2OWRhOTg0YTQ2IGxlZ2FjeS10cnVuaworNzg1MTcgZWFiZmE3NzhiMDc2YjYwZTg1NWEyMDZlMTExZGVlNDM0NTYwODJkOSBsZWdhY3ktdHJ1bmsKKzc4NTE4IDJjZGVjODQ4Yjc0YzYxNDAxMjZkMTQ3YWVhY2RhY2YyY2IwYzhhM2MgcmVsZWFzZTI2LW1haW50Cis3ODUxOSA5OGU5YzRmZmQzNDNhZjFjZWM1MDQ2ZGQwZTg1ZGNkMTdlYzg5ZTkyIHB5M2sKKzc4NTIwIDllODExM2U3NmFkYmYwMTQ1NGNkYWYwYmMzNTQzNjU0YWI4YjdlOTMgcmVsZWFzZTMxLW1haW50Cis3ODUyMSA4ZTNkMDNiODA5MGJjYjIxZGFjZWNkMWQ5ZmZiM2U1MjA4MGI0M2YzIHJlbGVhc2UzMS1tYWludAorNzg1MjIgMWM2ZmM3MGY0OWQxYWJlZWY5MTY0OGQ0MjlhZTQ4NTYzZWEyYzBkNCBsZWdhY3ktdHJ1bmsKKzc4NTIzIDZlNjY0YmNjOTU4ZDYwZjIxZTc4ZGNmMTBmODQwZmQzNWM3MzEwMTggbGVnYWN5LXRydW5rCis3ODUyNCA1NTc3ODg1NWNkMjVhOWFlOGZiNjY3NWU5ZjhjMjkyN2RiOTg5ZjVkIHB5M2sKKzc4NTI1IDEyNDY5ZjIwNjU2YmVlMDU3OTUxMGU4N2NmZWI5ZWU0ODM3ZjY5M2QgcmVsZWFzZTI2LW1haW50Cis3ODUyNiAxZjE1ODIzOGZhNzY0ZDcwMGFjOWZjZGU3NDhiMGVhNGE3YjM0ZjMwIHJlbGVhc2UzMS1tYWludAorNzg1MjcgNGFmYzUwZDE1NTQ0NWQwMWQyYzkzZDZjYTg2Y2VmYzYzOWI3MDJmMyBsZWdhY3ktdHJ1bmsKKzc4NTI4IGUxYjcwYzZkZjllNzczZGZkNzAyOTFiOGRkNWVjMWMxMGNjZjQzMWEgbGVnYWN5LXRydW5rCis3ODUyOSA5YjRlMGNkNzgxN2FkYTFlMmYzMTMzNDk3ZTdkMjAxZDZkOGRjZTFlIHB5M2sKKzc4NTMwIDM3MGUxYTFjMjM4NjlkZjgxOWQzMWI0NGFhOWYzMmRmMjI4NDhmOTggcHkzaworNzg1MzEgMDc3ZjJiOGIzZTU3MjkwOTMzZGQ5MmJjZTRiNTBmMDMyMDI3NjI0NyBsZWdhY3ktdHJ1bmsKKzc4NTMyIDg1NGIzNGEwNjg5NmZkNmU0N2ExNmU4ZGUzZTRjMjhmMGMzMzQ0OWEgbGVnYWN5LXRydW5rCis3ODUzMyA5MjRjYTI5NWIxNDYwMDAyNjMwYjBhMzdkMWYwMmU4M2EwMjc5YmI2IHB5M2sKKzc4NTM0IGQxYzYyODgyYzczYmQwZGM0ZmYyYTE1NjQxZGNkMzAzMDI3ZDllODggcmVsZWFzZTMxLW1haW50Cis3ODUzNSBmNTNmZTMzZTAzZWExYjQ5YmY3Njk2YmEyNGM5ZTMzYWRiY2U2YjA1IHJlbGVhc2UyNi1tYWludAorNzg1MzYgYzQ1ODA1YmEzMjNmN2ZhYTlhYTE3MDIzODdiMGUxZTQyM2Q4MTJlNCBsZWdhY3ktdHJ1bmsKKzc4NTM3IDk0MWUxYmYwNGY1NTMyZTEyZjBmZmM5MDI3ZGJmMGYzYjUyNmU2YzcgcmVsZWFzZTI2LW1haW50Cis3ODUzOCBmMDI4M2JiNjIzNjE0YWQ5NTJhZmFhN2NlY2QzYzlmNmIyM2EzMDc0IHB5M2sKKzc4NTM5IDc4M2YwOWIwODcwNmVhMzBlMjBjNWYwZTQ2MzY2YTJiMjM4ODE3MmYgcmVsZWFzZTMxLW1haW50Cis3ODU0MCAwMjY1Y2RjOGQ1YmIwY2ViYjRkOTFjYzQ5MzI2NzQ4NGUxYTc0NGMyIHJlbGVhc2UyNi1tYWludAorNzg1NDEgOGQ0OGY5YjU5Njg5YmE0Njk4MjY1NTdhOGRkZDk4NmJkNGNkZTNmNSBweTNrCis3ODU0MiA5YjcyMjc3ZDZiMzBhN2MwOGM5ZDZkMGI2YmQyZjljMTQyNTEzODBlIHJlbGVhc2UzMS1tYWludAorNzg1NDMgZDVmNTBhZTRmMWY3OGUxOTlmMTM3MzkxYWRmNDhjN2VmMmJiODM4YiByZWxlYXNlMjYtbWFpbnQKKzc4NTQ0IGY1YmFjNDczNzA2OWE0MTNlODkyZDdhNTEwNzg5NWRjMWQ2YjFkYjIgbGVnYWN5LXRydW5rCis3ODU0NSA2ZmFmYjY0ZWMzMjgwOGQyMzlkZDVkMGM1MGY1NmU2ZDQ3NzcyMzkxIHB5M2sKKzc4NTQ2IDU4OTAwNGIyMmY1NGMxMzQ3ZTdmZWMzNTZhN2RmMzEwZjQ1YWE0ZWMgbGVnYWN5LXRydW5rCis3ODU0NyBhZmY2OTJiZGI2ZGIxMDc5NzgzMzE5MWYzNmFmMzJmODMyNTgxY2MxIHJlbGVhc2UyNi1tYWludAorNzg1NDggODg3ZGU1ZGZkOTYwMTVhZDQ0MDI5Y2ExZWJmYjQ0NGViMDVlNTJhOSBweTNrCis3ODU0OSBkYzg0NmEyMTFjNjU4YWFhZTBmMDkwOGUzYzI4YTc0MTBhZjAxY2M3IHJlbGVhc2UzMS1tYWludAorNzg1NTAgNDZhZTE2NGIxNWJhOTFkYzY0OTFlOTFhODY4YjJkMjcxYzMzMTdjNiBsZWdhY3ktdHJ1bmsKKzc4NTUxIDRlMzA0MzEwOTc0OWYyOTU3NDY2OGU0NDY1ZTQ5YmNjYmI5N2JmN2IgcmVsZWFzZTI2LW1haW50Cis3ODU1MiA1OGMzNTQ5NWE5MzQzODdkMDY0ZWRmNTk2MzRhZDczY2I4ZmUyOGU0IHB5M2sKKzc4NTU0IDRiYzViMDQxZDNhYTZiYmUwOTAxZGYyMjY3ZTU4Yjg4ODg3NzdjOTUgcmVsZWFzZTI2LW1haW50Cis3ODU1NSA0MGE0MDZlZWRjYWM5MmUxMWE5MjM1OWRkNjc0ZGZjYWM1NzkyYWU5IHJlbGVhc2UzMS1tYWludAorNzg1NTYgZDU2MTVlZWU1NjNlNTY0MDUzN2RlOThkMmJiYmExYzc0MGFlODZmMCBweTNrCis3ODU1NyBjZGY1OTYwNGExNzQ0ZDZiNTNiYjcyOWU5OTQ2NzYyZmVjOWM5ZTM1IHJlbGVhc2UzMS1tYWludAorNzg1NTggOGI3YjVjOWU2N2Y0ZDY3MDNhNzg3MTRlNTQ0OThmODhhYjMzMWY4NCBsZWdhY3ktdHJ1bmsKKzc4NTU5IDkxMjdkNzA3MzBjNWIwZDYxZjAzN2ExMDFmM2FjMDZmNzAyM2Q4ODIgbGVnYWN5LXRydW5rCis3ODU2MCAwNDU5MGVjNmYzN2RkZjY1NzUwMjk1MDg5NzY2ZDkyOWIzMTc1Yzg3IHJlbGVhc2UyNi1tYWludAorNzg1NjEgNDM4NjgwYmU1NDcyYjdhYzIyZTY3NjY0Nzg4NTMyZmFhNzM1Mzc0ZiBsZWdhY3ktdHJ1bmsKKzc4NTYyIDM5YTUwM2M4ODAwMmE4ZjYxZWM3MDJmY2U1NmI2NTNkODhmM2U1OTUgbGVnYWN5LXRydW5rCis3ODU2MyBmYmRlMTFkMWMxZjViM2I3OWZkNTNjNzBiM2Y5Njk3MmE3ZTkzODQwIGxlZ2FjeS10cnVuaworNzg1NjQgOTM0MjM5YjI2OGFkYzM1N2JjMDk1NDU1MzRlZjM4MGZhZmJmODQ2YyByZWxlYXNlMjYtbWFpbnQKKzc4NTY1IGM4YjI2Mjc2YzU4Nzc5ODViNGIyNDUwYThjNTRhN2UyODgxMmY1ZjkgcmVsZWFzZTI2LW1haW50Cis3ODU2NiA4OWY0MmI2ODFjZTU1NzczMjdmODA0MTAzMmY2MTQ2OGEzM2MxNmU1IGxlZ2FjeS10cnVuaworNzg1NjcgNjlhMTAzZWZhZThkNGViNjk0MjE5YjhiNTJhNzI4MTQyMGY4ODFmYiByZWxlYXNlMjYtbWFpbnQKKzc4NTY4IGY5OWU3YWU3MTJiMGIyNGYzZWVjZDRjYzUxMjFmYjIyOGUzYmRiNGMgcHkzaworNzg1NjkgODQ5OGYwZDlmMDI2MzYyZTlhZTExNTQ1MTZjZWE3MjhhOTFlYjlmZSByZWxlYXNlMzEtbWFpbnQKKzc4NTcwIGFjYTE4ODk3MGM0N2QwNmViMzA2NzcyNjFkOWI0MWQxMDAyM2M5MWEgcmVsZWFzZTI2LW1haW50Cis3ODU3MSAyYzliZjIxOGNlMjk4NzhmNDcxODQ1ODk5YmVjM2M3ZGNmNzBjYTRiIHJlbGVhc2UyNi1tYWludAorNzg1NzIgYzlmNjhlNDJhYjc5NmEzYmFiNGY4Y2YzY2M2OWNlMTA1MDNjYjk5MCByZWxlYXNlMjYtbWFpbnQKKzc4NTczIDExMTAxM2RkNWE4YWEwZWUwZTI1MTdjZmI2MmVhYjliODA4NzRkNDggcmVsZWFzZTI2LW1haW50Cis3ODU3NCA0ZjE4OTQ1ZmI4YjE3ZmRiYzQ0YmZjODI3ODc2NGM4NmVjZjU5ZWYzIGxlZ2FjeS10cnVuaworNzg1NzYgODNlZjY3NTI2MDExYWZmNGZkOTRiMTAzOGUwMzYxZjQ3Yjg4MjgwYSBsZWdhY3ktdHJ1bmsKKzc4NTc3IGY5MjNmZTU1YTQwYzNiNzVlOTUwYmE0MjRjZDJhMmY3MjVkM2EyNmIgcHkzaworNzg1NzggNzU1ZDdhM2E2YmI3NTZlM2E2MjNjMjk1YWM5MjczMmMzNTU3NTYzOSByZWxlYXNlMjYtbWFpbnQKKzc4NTc5IDM4YjAyZGQyZDQ1OWJhYzY2MTA4YjNiMTdmODBjY2U0NDM0Y2YwYWMgcmVsZWFzZTMxLW1haW50Cis3ODU4MCA0NzI4YWEyYzhhMTI4NDVhMjhkMzc4ZGVlOThkYmFhYTllMjIxNTdiIGxlZ2FjeS10cnVuaworNzg1ODEgN2E4OWUxZWM0ZjAwNWNlMGUxMzllMjNjMWQ1N2YyMjE1OTM5MDk5NiBsZWdhY3ktdHJ1bmsKKzc4NTgyIDZkNWMzMWYyNGEyMWIyZDg0ZjZhOGM2MWRiNGY3MmEyMjg2NzRjM2MgbGVnYWN5LXRydW5rCis3ODU4MyA2Yjk2OGUyZjA1ZGRiMGQ5MDMxYWI1ZGI1NDA1NTNiYzJhOTAxZDc3IHB5M2sKKzc4NTg1IDFhY2I2NDNiMmNmNDQ1YTAwOWNkYjdhNTVhZDEzZmM1Mjk1ZGVhZTkgbGVnYWN5LXRydW5rCis3ODU4NiBlNjRjNGI0M2ViM2MyNzY4OTI0MjI1MjgzYzNkNjkyNDNiZmU2YzAxIGxlZ2FjeS10cnVuaworNzg1ODcgNGNhODNjNWI4NTUxYmZlY2JiOGMwNzBjZDRlYTc1OWI4Yzg2Zjg1ZSBsZWdhY3ktdHJ1bmsKKzc4NTg4IDg0MDFkZTY1ZTEyYTIxOGMwNGI0NjM4MDA1MTZlODQ5OTE4NmYzOTEgbGVnYWN5LXRydW5rCis3ODU4OSBkYWJkZWVjNGY5YzFkMzMxOTU0Njc4ZjJmZWRmNjU5ZmU0YjFlYTNiIGxlZ2FjeS10cnVuaworNzg1OTAgODJlZGEzNDVhNWY2ZTEzZDljZWI2MDhlODJkYTQyM2Q5NjE0MGIxMSBsZWdhY3ktdHJ1bmsKKzc4NTkxIDRiN2I2OTUzY2QwNjQ5NzBmNTA2N2NmY2NmOTNjM2E0OGIxMDA2MWYgbGVnYWN5LXRydW5rCis3ODU5MiAxMzdhMjFmY2QzODUwYWI5NTk4NjM0YzhlZjBjYzBhNWZlZTYxNGJmIGxlZ2FjeS10cnVuaworNzg1OTMgODNlN2VlMTg1MTYyM2NjYWUzNmMyNDI5Y2E5OTBkYjQwYmE0NzgyMCBsZWdhY3ktdHJ1bmsKKzc4NTk0IDk3MGZiNGE4ZTY1NGFjOWJmNzlkNDkzYzBlNmVkYzFiNjAyOWM1NTkgbGVnYWN5LXRydW5rCis3ODU5NSAxMmJjYjY5OTM4YjNjMDEyNzc3YzI0NTA1NTVkYmJiY2E0YjE3OGI1IHB5M2sKKzc4NTk2IGMzMWE3YzBjNjM5OTg1NWU5Zjg0YTg2MTdhOGQ5OWIzMGJmYjdiMDcgbGVnYWN5LXRydW5rCis3ODU5NyA1YzY3YzFlZjhhZDNmNDRmNmQ2NmEyNGI3MWYxM2Q2ZGExMWNiZTYwIHJlbGVhc2UyNi1tYWludAorNzg1OTggMDFkNmExNGFiYTY1MTc2ZmIwOTY4ZmYyYjMzOGYxYzFhN2Q2MDRmOSBweTNrCis3ODU5OSA5NTFjOTdlMjg3OGQ3MWQ4MjQyNWMxOWMwNDMzOWQ0ZjhlMGQ5ZTJhIHJlbGVhc2UzMS1tYWludAorNzg2MDAgOGQ3MjE0N2Y0NDJjZjlkNWEyZjc3NDZhYmE5YzQyYjA3NDdiNzE2ZSBsZWdhY3ktdHJ1bmsKKzc4NjAxIGViYTk0MmU3Nzg5NTdhMTE2MTRhNDM2NmU0MjMxZGYwMDkzNTk3OTAgbGVnYWN5LXRydW5rCis3ODYwMiBiMzBmOGNlODIxNjc3ZDkzMGY3MDRkZTUxMWE5ZDZiYzdiYTE0ZWViIHB5M2sKKzc4NjAzIGIwNDQ0MDVkNjJlNTVjMWU1NTAyYmNlMzFhNmZhY2E1ZjgzY2ZjMjIgbGVnYWN5LXRydW5rCis3ODYwNCBmNTQxMTEyNTI0NWVlMjczZjczMTY1OWNlNTM1ZDRkNTAwNWMxNGJkIGxlZ2FjeS10cnVuaworNzg2MDUgMmQyNDE3NjVlNjMxNzRmNzk5MzRjM2E1ZjFlMWQzOTBjZjRkYjY2ZCBweTNrCis3ODYwNiBhYWI1Yjc2YWEwNTk3ZDgxNDk5N2Y4ZmI5ZmRiYjZmNWRmMWIxN2E0IGxlZ2FjeS10cnVuaworNzg2MDcgNjgxNTk3ZDBjNThkZjEwNzBlYWQyMjhlZWUwMTY5NWQwMTBlNDdlOCBweTNrCis3ODYwOCBkNGExODhkYWMyMjI4NTY5MGY5ZWM1OTc1Mjk2ZjRhYzUxZmUyMDc0IHB5M2sKKzc4NjA5IDY1Mzc3NjFjMzEwMTgzZjA0MzljY2VjODYwMzY5MGE5ZWZjOWI0MzkgcmVsZWFzZTMxLW1haW50Cis3ODYxMCA3ZWVjNjIzOGUxNWFjNGU3ZmEyMjNhYjFmYjRjYzBiZmFjYzJkYTk0IGxlZ2FjeS10cnVuaworNzg2MTEgMDg2ODQ2MzgxZThmM2Q2ZmIwZTBlMTljNjY3ODJhOGU4ZDQ3YWEzNCBweTNrCis3ODYxMiAxZTRjNGIyMzVhODlkZDc1NGYwNTM0MTg1N2I3YzVlOGE5YzAwYzUyIHJlbGVhc2UzMS1tYWludAorNzg2MTMgMjVjMGY0ZDdhZTU2OWU0M2ZiNGIzYTYyMGViOWU4NzUyZmRhMjJjOSBsZWdhY3ktdHJ1bmsKKzc4NjE0IDM4Y2VmOGRlYWUyMmVmMDE3MzNlYjcxZGRmYWZhNjYwOGI5NWMyNWEgbGVnYWN5LXRydW5rCis3ODYxNSA1ODRlYzdhNzI1NWIyNDBlOWY1N2ZjNDA1NmYwZTczMzYyY2ViMDQ2IHB5M2sKKzc4NjE2IGJkOWM3OTkzZWU3NWUzNjU5ZDljNjNmNDA4YjFmNDNhNzc5NmYxNjQgcHkzaworNzg2MTkgYmZmMDUwNDUwMjgzZWM3NWM2Y2UwYWIwOTU2MjA0YmM2MGE0YzYwZSByZWxlYXNlMjYtbWFpbnQKKzc4NjIwIGI4NzUwYzcyYjliYzQ3ZmNiNmJhZTExYTBjNjM2ZWUyNGUzZWY3ZjMgbGVnYWN5LXRydW5rCis3ODYyMSA2ODdkODUxN2EwYzM4Y2ZhMmU2NjYwNmZjYjI0OGU1ZTU2Y2ZkZmUyIHJlbGVhc2UyNi1tYWludAorNzg2MjIgMjlmYWM0YjFhNTFlNzYzZDNmMDcyOTQzOTIxY2YwYWMzZjI4ZTUyYSBweTNrCis3ODYyMyA4YWNlMmVhZDU1MjM3YjFlNzJjNmYzNGQ4ODQzZjk4ZTA2MDk3ZjA4IGxlZ2FjeS10cnVuaworNzg2MjQgNGI0MTNkZmEyN2Y5OTJhN2JlMjMyMTgzNGM2OWNkZWUwYTFkNjk5MyByZWxlYXNlMzEtbWFpbnQKKzc4NjI1IGM1M2NjNmJkNmI2MTMwODA2MDcxMDk1MDk0NDY3YmMzNmU2YzNmMmYgcmVsZWFzZTI2LW1haW50Cis3ODYyNiBjNGZjYTc3OGI1NzNhNTI2NjJkNmEwMzY3NDFjNTcyNTI1MTQ1MzFkIHB5M2sKKzc4NjI3IGI5OTk5ODQ1M2Q1MjNhZTEwZWJiYTNkZmIxZDRhOWRmNzUwMGQ0NmMgcmVsZWFzZTI2LW1haW50Cis3ODYyOCBkZTA2YjU5YWE0M2M3ZjlhYTU4ZDFhY2VkOGQ2ZDZhY2VkNDg5NmI4IHJlbGVhc2UzMS1tYWludAorNzg2MjkgNWJiMjk1YTk0YjBmN2QwNGQ0YTI3ODM0YmJjYWUyMGNiMTg1Mzc5YyByZWxlYXNlMjYtbWFpbnQKKzc4NjMwIGMzNTlkNWFjZGM0YjViNDA3YzgwZDU4ZDFjMmIwMmQwZjI0NTU5ZGUgcmVsZWFzZTI2LW1haW50Cis3ODYzMiA2ZjFlMmZmZDdiZGU4OWUwYWJmM2Y5ZGJjOTI3ZDYwNWNkMzhmOWUxIHB5M2sKKzc4NjMzIGRmYTc0OTExNDBkOTRjNmUxZTJlMzQwMzQ5ZDUyY2IwYzcwOTI3NjIgcmVsZWFzZTMxLW1haW50Cis3ODYzNCBkZjAyNzBiZWY5NzE4ZjRiMjA0MzZkM2Q0MjdjODQ2ZmE2ZDNmMGZkIGxlZ2FjeS10cnVuaworNzg2MzUgODY3ODUzNDI0MmEwOTM4ZGExN2E2ZGEyMjRkZGY4MmU4NzVmYTA2MyBsZWdhY3ktdHJ1bmsKKzc4NjM2IGJmZWE2YzIwMmVkZTU3Njc3YWNiNTNkNTRjZTc4MWIwMTlkOTVjYjMgcHkzaworNzg2MzcgNjBlN2U2ZDNlNDVhODkwN2JlOTFhODA3MDVlYTFhYzQ5OTJjY2M4NSByZWxlYXNlMzEtbWFpbnQKKzc4NjM4IDdmNTAwNjQxYzA2YTFkOTRjNzM1MGJiOTkyOWQ1NTU1OTM3ODc2ZGYgbGVnYWN5LXRydW5rCis3ODYzOSBkZDg1MjczOTk1ODIzYWE2MmI4Y2RhMGU4MzI0OTE3YThhYjQyMDYzIHB5M2sKKzc4NjQwIGQ3YTYyYzE2NTA1YjEyY2NjMjY3ODQ2MGQ0OWI2ZWI3ZTQ3MDgzNzQgcmVsZWFzZTMxLW1haW50Cis3ODY0MSBkNWZiZGEwM2M2MDMzY2UxYWVhMDQ1YzE1ZWQyMDYwZmYzOWVlZjNkIGxlZ2FjeS10cnVuaworNzg2NDIgOTk0NGU1MTA0YTU1OTcwMzk5MDNmMzhmOGQ1NDkzZGZjNWRhYjc1YiBweTNrCis3ODY0MyA3NTk1OTIxYTE0NzQ4MmYyMTA2MGFjMWI1MTk1NjAyOTU4Yzk4MzIyIHJlbGVhc2UzMS1tYWludAorNzg2NDQgNDYxZDljZDE5NWI3M2IzMDY2NzI2ODhmMjMwMmFiMTJiYTBhZjcwYSBsZWdhY3ktdHJ1bmsKKzc4NjQ1IDc3OTAwZTdkZWFhNTg3MDA1ZGYxMmYyZWZlNDg0YjA2YWY3ZWU1ZDAgcHkzaworNzg2NDYgMjYyNjlkZmMyMmFiNDdlNDExNGVkN2RkZjQxMjBhMzM4NWYxN2YzOCBsZWdhY3ktdHJ1bmsKKzc4NjQ3IDBiMjdjM2YxOGNiMzg2ZjU2MjQ3N2YzNGZmYjZmOGZlNDAxMDg5ZjAgcHkzaworNzg2NDggZmQ4ZmRkMzg4OTYzYTk2MjFkOGRiNWZkMDY4ZmQwNmE1MjI4ZTFhZiByZWxlYXNlMzEtbWFpbnQKKzc4NjQ5IDMwMmRiYzZjNDgwNzFlZGQ0NGQ3ZTVmYWQzNmEwMzUzNmRhMjZiNDkgcHkzaworNzg2NTAgYjZjYWIyMWQ4MGI5NWI2N2EwNWYzMDllMWM1YmRiZmViYTlkMjlkZiByZWxlYXNlMzEtbWFpbnQKKzc4NjUxIGEzYzAwNTY2YzJkNTljMmRmOTFlN2NkNDc3ZDA0ZDBmNDUwMTZjYjUgcmVsZWFzZTI2LW1haW50Cis3ODY1MiA4NDEzMGMyMjY1ZGNhNmY5MjA3MmM4YTYxMzI4MjlkYWIyZmVjZTZlIGxlZ2FjeS10cnVuaworNzg2NTMgMjk1ZDU5ZmE2ZTYyZTFkMmM1MTkxOGFmM2Q5N2Q3OGU3Mjc5M2Y5YSBsZWdhY3ktdHJ1bmsKKzc4NjU0IGRiNGRhMWVkZjM0ZjVhMjUxZjVkMDQxNGJjNGIwNDllMGQxOWMwMTkgcHkzaworNzg2NTUgNmZhY2JjMTgzYTRhMWZmN2NjNmNhYTViZWZhNTE0ZmRlMjU5YmYwNyBweTNrCis3ODY1NiA5ODdiYTM3YTU0OTQzYWQ0Mzk1MzgzMGM2OWIwNjFhYzZiOTEzZDQxIGxlZ2FjeS10cnVuaworNzg2NTcgZWVhMTVmYjAyNDRlMmViNTYxM2I5OTIxZTE0NGQ3ZWJlNDk4OTA5YSBweTNrCis3ODY1OCA5NTFmZWMxOTZlZGM3MGE5ZGFkYzQ2NGIzOGRkZTYzM2RjZTdiZTk2IHJlbGVhc2UzMS1tYWludAorNzg2NTkgZjgzNWUyODI3ZDFhYTYzMDNiNzA0Yzc4ZmRhYTkwMGE5ZmU5NGNkMSByZWxlYXNlMjYtbWFpbnQKKzc4NjYwIDAyYWVmYzQyNTdkZTc2ZjYzZWUwYjZjMzE2OTdlYTBkNjhiMDJkZTYgbGVnYWN5LXRydW5rCis3ODY2MSBjZThiZTY0YjM0YThhNmQxM2Y0NGM1ZWIyNjUyMTQ2NTRmZmMzMjU0IGxlZ2FjeS10cnVuaworNzg2NjIgZDhiMmZhODg3ODhiMWY2YjNkNzNkZWNiMmI2MzA1YWM2NTFkYzc1YSBsZWdhY3ktdHJ1bmsKKzc4NjYzIDA0OTU1ZTdlYjU5NzA2ZmI4NjIzMDI1ZjYwNDBkMTUwNTBmZDFlYWUgcHkzaworNzg2NjQgMzE5ZTYyMTVjNTZjYjk5NWViZjhhYzViOTk5OWJjZTJlYmQ1ZTkyOCBweTNrCis3ODY2NSA0ZGYzM2U4M2YyNmYxMGI1N2I1NzQxMjlmYzdiMjMzOWZmZDA5YTg5IHJlbGVhc2UzMS1tYWludAorNzg2NjYgYWQyMmJjMjJkZGRjYmVmMzYxOTE2OTZhMDA0MjljN2E2MDhkNTAxYSBsZWdhY3ktdHJ1bmsKKzc4NjY3IDM1NzRjNWZlMjA3YzQ2NjEzMzc2ODljZTUwNGRkOTFhOTYzNGFiYmUgbGVnYWN5LXRydW5rCis3ODY2OCA2OWIyYWJiOTUzNDg3N2RkZDY1MjYyZmFhYzBmZTVmMjY4NDBmMDU0IHJlbGVhc2UyNi1tYWludAorNzg2NjkgODFkYzE3MmJmZGFiZGNmMzQ1NjFiODhmY2UyNWM5OTRhZTIwNzYwNyByZWxlYXNlMjYtbWFpbnQKKzc4NjcwIDc1NTcxNWIzY2YyM2EzZTkwNzI5MGNiZTcwYjE3OTFhZmNlMTAzY2MgcHkzaworNzg2NzEgNDVjNGI2ZDZlMmE1MzRjZTdiYzYyZmE1Y2JkYmEyNjNiODFiZjkzMyBsZWdhY3ktdHJ1bmsKKzc4NjcyIDAyMWNiNGY0NTU5YTVmYWFjNGJmMWE2ZTliYjRlYjhiODRkN2M0MmIgcHkzaworNzg2NzMgNWI4MTllYzRlMjA1ZmMwZmQ5ZDEyZDQ2ZGYwNDljMDU0OTdhYjFlZCBsZWdhY3ktdHJ1bmsKKzc4Njc0IDQzMmY4YmE2NzM4MTgxMmI0N2JkOGEwYWZmNjVhMDZkYjA3Y2QwNDAgcHkzaworNzg2NzUgZmVmNGUyNTNlODhhZjM1YzEyYjdiZDI0ODczZTYwM2JjZmRkN2I2NiBsZWdhY3ktdHJ1bmsKKzc4Njc2IDBmY2EzOTdkNTBmN2ZlNjQ0NzQ2Mjc2NDc0YTc2NDFkNzAyYjkzYzUgcHkzaworNzg2NzggN2I0OGViYWFkYjYwMDBjZmI1NDZmNmFhNzI4ZTk0NDU1NzRlOGRmMCBsZWdhY3ktdHJ1bmsKKzc4NjgwIDdlOTZiMGJjYmEyN2VkNzlkOTk0NjMzZTAzOTU5ZWNmNWEwZjI3ZGQgbGVnYWN5LXRydW5rCis3ODY4MiAwMTk3NTk5MTZhOWJhN2EyNGM5MWQwYWI3MDNkODQ2NmUzMmIyODdlIGxlZ2FjeS10cnVuaworNzg2ODMgZTUwMzAzM2UzMTQzNmI5NDljYWRlNDc4OWQyZGEzNmRjZTFhYTJhZSBsZWdhY3ktdHJ1bmsKKzc4Njg0IDgyNDQ2M2M0NDg5ODQ0MDU4ZDdiY2NkMWU3ZjFiNjExZWE2NTlmYmYgcHkzaworNzg2ODUgN2NkN2ZmNmIwYWRiMjg5MTI1ODJjZTA5ZmVlYWVjMmZhOGFhOGRhMyByZWxlYXNlMjYtbWFpbnQKKzc4Njg2IDhiODY0YWE3OGU5MjUxN2EzZGY0MDlmNmVkNmRkZTRkNGU1ZmJkZjMgcmVsZWFzZTMxLW1haW50Cis3ODY4NyBhZTdmMjZkMjRlMWRjZjc0OTdmZTI5YjdkZjhiZDU3MWVkMjlhYzdlIHB5M2sKKzc4Njg4IDA0ZDNhZTUyZmY3MzAyYTM4NzliYmJiM2I2ZjQyMWQ5NDA1NWNjNWIgbGVnYWN5LXRydW5rCis3ODY4OSAzMjYxOTk5NmEwMTQ4YzRkNzk2MzE2ODgxYzNiOTkwZjdmMTk0NzM3IHB5M2sKKzc4NjkwIGMyZDlkNTBmMzdjNTliNjMzYjRjYjhhOTU5MDRhYjc5NGNlNTJjNjIgbGVnYWN5LXRydW5rCis3ODY5MSA5MWZiMzk0YzA0ZDYzZDk5ZmVlMmFjZGY4YzcyNmZmYjIzNzRjNWFjIHB5M2sKKzc4NjkyIDgxNDc3MTkyY2Y3YTk5YTIyOWY5NjM4N2I5NmI3ZmEwYjU5ZWVmOTEgcHkzaworNzg2OTMgY2VkNWYxZjQxNGIwMGM2NTQ3ZDMzN2QyZGY0NjBiMDAwZTEyNjc3MCByZWxlYXNlMzEtbWFpbnQKKzc4Njk0IGZkMTU1YTM2OGY1YmQ0NjVkNjUzMTMxNzcyMDVjMDJmNjZhMWQwOWQgbGVnYWN5LXRydW5rCis3ODY5NSA4MTc1MjJlMzUyZDY2ZjZkNTQ4YjhiMjBlMDEzNjZhYTI4MDllZDg1IHB5M2sKKzc4Njk2IDE5ZjMwYjQyMmNhM2ZkMTdiYTk0NDgyNzk3NzViMGViMWZjZTlmODYgcHkzaworNzg2OTcgNTA0ODA4M2U5OWZmY2U0MzA5M2E3ZWRmMmY1NzhiM2Y2MmVhZTBhNSBweTNrCis3ODY5OCAzMDAzYzE2NTZlMmFkZWViNWZhZjViYjIwMjBjYTY1MmMzMzNiZDNiIHB5M2sKKzc4Njk5IGJmNTg2YjI3NzZmNjdjYzhlY2QzZjllZGM2MTRhNTg5ZmIwNWVkY2YgcmVsZWFzZTI2LW1haW50Cis3ODcwMCBlY2NhNzAzYmMwZGY0ZGI0NWViYzk1NmM4ZDczMjE4NjZhODUzYWNmIHJlbGVhc2UzMS1tYWludAorNzg3MDEgMzE5N2VjYzA5NDRhMTdmNTU5NDMwYmQzYTQxY2E0OGM5OTdiNzI1MyBsZWdhY3ktdHJ1bmsKKzc4NzAyIGQ5ZTZmMzE4NTY4ZmM5MzYzYTM0NmY3NjBhMDM3MDk3MDVkOWI0YTUgcHkzaworNzg3MDMgY2M3MGY2OGU5YzExMTNjOTdmYTRiMDY3MjFiM2M0NzdlMzBlNmNmYyBsZWdhY3ktdHJ1bmsKKzc4NzA0IDQ1NGVmZjg0MGJkNDIyYWYwOWYwZWIyNTA5N2M1MDEwYjUwODM1ZTQgbGVnYWN5LXRydW5rCis3ODcwNSA4ZGM0MGM2Mzc2MWM4ZmRjYjU1OTRlNTM1ZGY0MWUxNDU0ODdkMWZhIHB5M2sKKzc4NzA2IDI1ZTlkZGJjZTEwYWJlNGZiZWUzODk3NzRmMzQyNzA0M2ZmODdlNDEgbGVnYWN5LXRydW5rCis3ODcwNyAyYjUwOGFhMmE0MzZiYzU1YjI0NzU0NTdlNDI4M2Y2NGVmM2ZlNmFlIGxlZ2FjeS10cnVuaworNzg3MDggMmQ1Y2EyODA1ZWE1ZjFiY2Q3NzQ4ZTZhOTc0M2M0NmM0YjcyM2M3MSBweTNrCis3ODcwOSAzMmFjNDI4Y2QxOGIzNDJlNGQ5YjZiYjk3ODllY2I3OGFkY2UxOWNmIGxlZ2FjeS10cnVuaworNzg3MTAgMjE1NjM4ZmNmMDliYTA4NjMyMGQ4MWNjNjVmNzUwYmI3YjE2NmMwZiBsZWdhY3ktdHJ1bmsKKzc4NzExIDVkNWJjYTZlY2IxNTE4NDI5M2Y1MzQ0MGYwZDk1YjgyMmEyY2I2ZjIgcHkzaworNzg3MTIgNWMzMTc2Nzc1ZTg3MzBjYjNkN2MzMDQyOThlYTM4NWI2ZGMzYzdmOSBsZWdhY3ktdHJ1bmsKKzc4NzEzIDRhMTE5ZDg0ZDBiNTc1NzQzYjAxNzdiY2Y5ODZlYTFiMDg1YzZjOTggbGVnYWN5LXRydW5rCis3ODcxNCBiNjhhOWE4YzJjMWY0OWYyYzAxOGMxNjExZTk1YjI3ZGQyZjg4OTMxIHJlbGVhc2UyNi1tYWludAorNzg3MTUgNjc0MzA4NzVjMWEwMzYzMWFlZWMxNDA4ZGE5NzA3ODVkZTBhZjdmOCBweTNrCis3ODcxNiBhYTQ4NTI2NDUxZDE3MDU2ZTEwM2YxMTU0MjhhNWRkMTdkMGIxMGE4IHJlbGVhc2UzMS1tYWludAorNzg3MTcgNWFhM2JmYzQ4Y2JkZWJiOGVlNWJlOTgzMGJlZjhmMjcxYmExNTZkNSBsZWdhY3ktdHJ1bmsKKzc4NzE4IGJiMDhhM2VjMTU0ZGE3Mzc2NWUxMTQ2NjU4NzAxYWMyMTU3ZWJhZmMgbGVnYWN5LXRydW5rCis3ODcxOSA1YjE3NjQzNzQ1NDVhM2YyZGYxNzM1ZjE5YTE4YTdiMGVkNGNlNDdmIGxlZ2FjeS10cnVuaworNzg3MjAgOTY2ZWIxYjllOWRiYzNkYmY4ZGNlMDM0NWIzOThkMWRmNjQ3Njg0MiBsZWdhY3ktdHJ1bmsKKzc4NzIxIDc0NDRkMzQ4ZDc3MWYwZjk4MWMzODAzNmFjYWUyZDZkYzg4MWE2NzUgbGVnYWN5LXRydW5rCis3ODcyMiA0OGE2YzI2MjEyMjY1YzUzYjZkZmZiN2JhYzU0ZTA5NGM1ZmZiMDYyIGxlZ2FjeS10cnVuaworNzg3MjMgNDg2YzFjOWVlMDA2YzA2N2FlZjRmYjRkMDdhOGVmYmVmOTRlN2UxNiBweTNrCis3ODcyNCBlZmU1MjhlZTk1OGE2YjIxZDVkNTg1NjQ3NDFiYTNlNTFjYWIwY2NiIHB5M2sKKzc4NzI1IDI0YzZhNTgzYTg2NmFjOGQyMDVkYTNkMTA1Y2M3YmMyOTEyNzM0YzcgcHkzaworNzg3MjYgNGM1YzViNDY2OGI0YTZhZDQ4YjY4YjcwMDM5ZTcxMTliNzBhNjQ1YyBsZWdhY3ktdHJ1bmsKKzc4NzI3IGYzNjJjZDRiZDJjNTFjNmNjMDU0OTI1MjY2NjkyN2U1YzIxZDQ4Y2QgcHkzaworNzg3MjggMTIwZDZjY2YyNmIwNGU5OTQ2OGMxNjRhMTg0YTA4ZTAyZjJjNmZhNCBsZWdhY3ktdHJ1bmsKKzc4NzI5IDkyNThmNDA1YTdhYzQ2NmI0ODU3MmFkYTAyM2Q4ZGM5ZTRkYjg3NjMgcHkzaworNzg3MzAgOTdjYTliMTRhNjYwN2JlYzdiZmJjNjllMGI1Nzk4NTYxNTY2YjY0MiByZWxlYXNlMzEtbWFpbnQKKzc4NzMxIGQwYmJiZjNjNTVmNWUwMTVjMzlhMTA1MWQwYmM0NWFlM2NjOWVjNWIgbGVnYWN5LXRydW5rCis3ODczMiBiZGY2ZDc2OGE4Y2M1ZjhmYWQwNzVjOGQzODNkMmVkMDA1OTdkZmI0IGxlZ2FjeS10cnVuaworNzg3MzMgYzJjZjZjNzE3MGM1MTUyYjA1MjgyYjhiMzY1OWNkOTUyNjkzNDE0ZCBweTNrCis3ODczNCBlYmRjMmFhNzMwYzBiZDFjMjczNzFjMzJlNzRlNWNhMDM4ODIzODVlIGxlZ2FjeS10cnVuaworNzg3MzUgYTA3ZjcwZmM4MmExMTAyZjFiYjVkYWQyZTMxODNmZGU0NjMzZjNiMSBsZWdhY3ktdHJ1bmsKKzc4NzM2IGU4YzExODkxNTc2MmU3NzE5ZjU2OTM4YWJlZTRmZTBlYzA1NmY2MzkgbGVnYWN5LXRydW5rCis3ODczNyA1YTk2MzFiOWRkMjI3NjE3YjYzYjJmNzZjMDcwMDNhYTJjMDhhNTg1IHJlbGVhc2UzMS1tYWludAorNzg3MzggZDJlMTAyN2VkZGU4NGEwMjg1M2ZjZjk3OTBmMzExZjEwZjQ2Y2YwYSBsZWdhY3ktdHJ1bmsKKzc4NzM5IGRjZmJjMzRiMmUzYzZhYjc5OWU2ZjZhOTVkNTIyYzhmMTNmOTJiYTIgcHkzaworNzg3NDAgZjllYTkxN2FmZjEzZjJhYWVlMzI1ZDgzODdiY2I3YTViY2NiZjIyZCBsZWdhY3ktdHJ1bmsKKzc4NzQxIDE0OWI4Yjg3NTE0ZDEwNDE2YjU5ODg4NGRiNWY3NDY1MWY2MjViMzggcmVsZWFzZTMxLW1haW50Cis3ODc0MiAyMTI0Nzg2NDBiMWMyNjM1MzVmZDBjYmZhNmQ3ZDVkZmE4ODRmN2M1IHJlbGVhc2UzMS1tYWludAorNzg3NDMgMTZhMjZkNDM3NGU0NmJmYzk3N2VlZTQxZTA4MDRlYjVmODBkNjBiYiBsZWdhY3ktdHJ1bmsKKzc4NzQ0IDRmYTk2YTkxMzgwODcxYjY4ZTFiODRlN2E4NzU3OGU3YTExOGJlNzMgcmVsZWFzZTMxLW1haW50Cis3ODc0NSBhZDI1NmE2YzY1OTkwYzhhMzUzODdiMGQzYzkyYWMwZmY5YzIxMDhmIHB5M2sKKzc4NzQ2IDMxN2QwYzQzYWIyYjZiYzg2NDQzNWI0NWZmNjUwYzVlMzc1ZGYwMmIgbGVnYWN5LXRydW5rCis3ODc0NyBmNzM1NjExMjdmNTdlM2UyMzg3M2U5YTVlMDQxYTJiY2RiMTU1ZDE4IHB5M2sKKzc4NzQ4IGU2ZDE0MTU4NzU4ZTE4YjYzYWY1MmJkMGI1OTE2NzJiMjUyNDJlMjQgcmVsZWFzZTI2LW1haW50Cis3ODc0OSAwODAyYmM5NzNiMzI0ZGEyNTFiY2ZmYzEzYWQzYTliZjUwZmZhNjA5IGxlZ2FjeS10cnVuaworNzg3NTAgY2U5NzNiNWM3NzlmMDMwNGFkM2FhMjBlNWU2MzIyMzQ1YWJmZTVkMSBweTNrCis3ODc1MSBjMTZiMzdiMTg5MWIwMGMwNjU3OTE0MjFlMWQwMzU3ZTBhMjBkNjYwIGxlZ2FjeS10cnVuaworNzg3NTIgZWU4ODAyODE1YmFkMmI3ZmY5ZjU2MGY5MGFmY2VjM2U1ZGY3M2E5MCBweTNrCis3ODc1MyBjZGUyNjg3ZTM3YzE2NTA5MjY3ZjgzNTM2OTcxODkyYjE0Yzc0ZmMyIHJlbGVhc2UzMS1tYWludAorNzg3NTQgNGYwMjE3OTQ5M2MyNWQxZmNiZDE5NTVjMGIwN2E0ZWIwZTdhODlmMSByZWxlYXNlMjYtbWFpbnQKKzc4NzU1IDI5OTBiZDNhZTg4MzhhNzZlZmYxOWRmOTFkMGZmN2M0MGNkZTgyZGMgbGVnYWN5LXRydW5rCis3ODc1NiA0OWEwYTk1MGQyMTliMjJiOWY1ZjlkY2EwMjc1Zjk0NGNmYWNjNzMzIHB5M2sKKzc4NzU3IGUyZDQxMDc5ZDA1OTY3ZTViYjZhNmY4N2NiOTczMDU4ODliYTVmYTkgbGVnYWN5LXRydW5rCis3ODc1OCBlMjNjYmEwM2NjNGIzM2Q5ZTEzZjU4ZDAyMWJjYmNmODAxOGFiMmJmIGxlZ2FjeS10cnVuaworNzg3NTkgMjc0MjJkMTczMWU5ZTQ2OTY0OGY2OTY2MTI3MzAzMTEyOGVjYTczNiBsZWdhY3ktdHJ1bmsKKzc4NzYwIDE3NGIwODc5YjdkMGVjYWNiMjZiNzUzZmI2YTlhNWY5NTk5OWQ2MTEgbGVnYWN5LXRydW5rCis3ODc2MSA3MWU0YWIyMTM0NmQ0MWU1MDQxMTI4NTgyNDk3YTcyNzhjYjM0ZmZiIGxlZ2FjeS10cnVuaworNzg3NjIgY2ZiNDQyZDcwMmNkNDcxYTY1MDJhOWQyZmI2NmU4YWExZWY2NzY0NSBsZWdhY3ktdHJ1bmsKKzc4NzYzIDBhMjczY2ExMGZhNWU0ZGZlNjU2MTg0OWRkODE5OTM2ODc5MmM1MmEgcHkzaworNzg3NjQgNGE2YmU4NjRjNmI4OWIxN2M2MzY4ZDk4MzU3MGFjOTJkNDExMzg2YSBsZWdhY3ktdHJ1bmsKKzc4NzY1IDg1Yzk1ZmQ1ZDdlM2EwNDRhMjA0MGNkMTU1ODUxYWFhZjY4NGZjZGQgcHkzaworNzg3NjYgZWRhYWZjYTg3NDMxYzdjZGZjMTU5OTAyYzg0YTM4Y2ZhMTY0M2I2ZCBweTNrCis3ODc2NyBhYjdjODdlZDVjYWRkMDRiYTkzZTc4ZTI1Y2M3YzEyODU3YjAxZWUzIGxlZ2FjeS10cnVuaworNzg3NjggZGExOTg5NDk0NmUxZjYxMmMxZWM0MDQ1NjgwNDIxNmQwOTY3NWU1MiByZWxlYXNlMzEtbWFpbnQKKzc4NzY5IGU0NWZmMDI3NDgyZmU0ODc5M2RkN2ZlMmIxNTdlNDZkMjc1ODg2NmEgbGVnYWN5LXRydW5rCis3ODc3MCA4ZjJjMzYwZDAyMTRiNTA0NTA4Mjc2N2Y2Mzg0YTk1OGViYTMwZjEzIGxlZ2FjeS10cnVuaworNzg3NzEgNWIxZGEzMmM5ZDRlMmQ0YjBkODdkOTc3MzdiYjA0MGM4ZTBkMjIyOCBsZWdhY3ktdHJ1bmsKKzc4NzcyIGM3NTIwNjRmYzI2MjcyMTQ5ZTJiZWEwNzU4N2M1ZjQzYjRmMTBjNWUgbGVnYWN5LXRydW5rCis3ODc3MyAzN2E4NDI0OWFhMDQ3NzdiMTYwNGFlZGIxNDdkOThlYjYyZTExOThjIGxlZ2FjeS10cnVuaworNzg3NzQgODVlYTQ1NGExM2RjZGExMzYzZGZhNjE2YTk1YWUzZGJiMWQ3MjNmNiBsZWdhY3ktdHJ1bmsKKzc4Nzc1IDEzMWMyMTA4ZDJiMWFmOTg3ZWQ4N2IyY2U0N2ExN2EyOTk2OGFjMGIgbGVnYWN5LXRydW5rCis3ODc3NiA0NjYwMzg3YjliMzUyMzMxNjhiOGY3ZGQwOGRlZTY3MTE5MGIwMzJiIGxlZ2FjeS10cnVuaworNzg3NzcgNDFhZWYwNjJkNTI5MzFmNWM2ZTQzMzg5YWQwYmUyYzczMzVkMmZlYyBsZWdhY3ktdHJ1bmsKKzc4Nzc4IGRhNzE0NjRkMmNmZjIxOGU1MGY2MDFiNDcyMGZiOTU3NzM3ODI1MmMgbGVnYWN5LXRydW5rCis3ODc3OSA1NzViMTJiMTk4YTE2NDRhOTkxYWUzYmU3MzczMDFkMmE1N2E1ZmJiIGxlZ2FjeS10cnVuaworNzg3ODAgMGY0NjhlMmQ5M2QwYWQxZDA2MjI3YmQxMTZhYWFmNmM3YTIwNzdlMCBweTNrCis3ODc4MSBjNjc2ZmYwZDg0OTVmNTc4NzdjNGI0NjZiYTYyZDAzZDQ4OGFhNTgxIHJlbGVhc2UyNi1tYWludAorNzg3ODIgYzZlZDMzMDM1ZDY5MmFmMDU2MmNhZDliMDViZWFmMjk0NWE0MmQ0NCBweTNrCis3ODc4MyBkYTNjNWVmZTQyNTJkZDIzMzAwNTUwZjA5OTY0NTk4MTgzMzAxYWYyIHJlbGVhc2UzMS1tYWludAorNzg3ODQgYjBiODBlYzJlM2EwZmUwYjc1ZGQ0OTBkY2Y0M2JiMzM5ZDEzNmIzZCBsZWdhY3ktdHJ1bmsKKzc4Nzg1IDM5ZDcwNDc4MDdkNTI5NWE2ZDQ4YWQ5NDM0ODM4ZjBkYjM3ZGZkNzcgcmVsZWFzZTI2LW1haW50Cis3ODc4NiA0NDVmODAxY2EyZDBiNDI5MWM1MmFjZDc5Mjc0Yzk4YThhMzYyNWExIHB5M2sKKzc4Nzg3IDU1ZjZhM2Q1YzE3Nzk1NzM3YWQ2OTRiNjQwMjg5MTI3MDNlYzFjZGQgbGVnYWN5LXRydW5rCis3ODc4OCA2NjcxOTMyYmQ4YjhiZmQyMDgxNDY1ZGRiNjdhNjhlYTc1ZjMxN2VlIGxlZ2FjeS10cnVuaworNzg3ODkgYTNmNjE3ODM1NGY1ZGMxYzA3NTQzNjhiMWI3NDk4MGZiNTRjN2E4OSBsZWdhY3ktdHJ1bmsKKzc4NzkwIDk2ZTAwMTFlYTBhNDRjYTZhOTc0YmFkYjQzMTViMDc5MjJkYzQ2N2IgbGVnYWN5LXRydW5rCis3ODc5MSAyYWM0ZjRmN2UzOTExNjFjYTAyMTM3NjZjM2VlOTM2ZjRiYzNmMWVmIGxlZ2FjeS10cnVuaworNzg3OTIgYTJmMWMxNWNhZTZjNDA1ZTIxZTg0MTVmZmI4MzU2MzkzNjJhNjkzZCBweTNrCis3ODc5MyA3MzNjY2MzZjNhNjgwNWIxMWJmNWQ2MzhiZGNlMGQ4ZTIxMzkwYzhiIHB5M2sKKzc4Nzk0IDE0NjE2ZGY5MjQwNzlkMTE1MmRhZWJlYmY0ODMxNGQyNDc4YjQxZDYgbGVnYWN5LXRydW5rCis3ODc5NSBjZGZkZWZlYzk5YWJjZGExNGRjZGFhN2Y0MTUxZTgwNWY4MDE2M2MyIHB5M2sKKzc4Nzk2IDY4ZTA1MDc2MzJhOTFmNzkwMDZiYjY4YzQzY2Y4ODc3ZWY3NDQ5ZGMgcHkzaworNzg3OTcgYWM4MDg4NGRkY2MzMjY2OTQ4MzM5NzQ2YWI2NWFjMDU0YzMwMTI1YSBweTNrCis3ODc5OCAwMjRjNTNhODY1MjFmOTBjMDA0MjEyY2Y3NzQ5MDE3MDFhYjY2ZGZmIHB5M2sKKzc4Nzk5IGIzZTY2NzNiNmFlNGQxZTA4ODJlYWRmZjcyNTZjZTY1NDNkY2Y1OTUgcHkzaworNzg4MDAgZDkyODc4YmJhN2JiZjcwZmVjYjNiYWUzNzRmNzJhYWE5MDRmY2YwMSBsZWdhY3ktdHJ1bmsKKzc4ODAxIDg5NWNmZWJkZTE3MjdiYTdkNTc5OGNjZWFiMmViMGZjOThiNmYxZGUgcHkzaworNzg4MDIgYzU1N2E1NGFkNmQxZjg3ZmFlZTA0NWUwOGI5YmU5NGVmZGIzNGM3NiBsZWdhY3ktdHJ1bmsKKzc4ODAzIDFjZGEzZDc3NzdhZTdlM2Q1NWFhMGY1NjFkNDIyZDJkMmM0NThjYzMgcHkzaworNzg4MDQgYzg3MDM5NmI2YWUxYTExYTk1YTQ1NzlkNGM5NTdlN2EwOTE3N2Q0YSBweTNrCis3ODgwNSA1OWExNTczYjgzYWM0NmIxOGUxODRjN2NiNjk2ODNhYmU1ZjE2OGEyIHJlbGVhc2UyNi1tYWludAorNzg4MDYgZjEyNjgyYWY1NTdiNjFhYTdlMDM5NGYxMzQyNjU1YjVmYjE0YmFiYiBsZWdhY3ktdHJ1bmsKKzc4ODA3IDJhNGU5MmVmZjMwYTc0MmE3ZWE0NTlmODg0MWZiNWMzMjBiMmM0OGQgcHkzaworNzg4MDggZTQyMTU1YzQ3NDk0YWZmZGM2NWI3YzMwMTllODU1ZTAyYmE0N2EwMyBweTNrCis3ODgwOSA4OGQyNjVkZTdkYWUyMDZkMGNkYmJiMjM2OWNjZDZkOTJjZGU2M2E5IHJlbGVhc2UzMS1tYWludAorNzg4MTAgMmVlZjliMGViZDVjZGY5NTg0ZmQ3MWQ3NmNmMThjMDc4NGZiYzYyMyBsZWdhY3ktdHJ1bmsKKzc4ODExIDU2Njc5YWZhZjA3ZGIyYWQ4NjBhODcwMDY1YmVmYjNhN2VkMGU4ZDYgbGVnYWN5LXRydW5rCis3ODgxMiAxZjVkYTU1ZWU3ZDdmMDAyNjY4MzkwMzMzN2FlZmUzZTE0MjNkMGY2IGxlZ2FjeS10cnVuaworNzg4MTMgZTI3NjJmNDk1MzkzNWU1MWEwN2VjOWQ2NWRkNWZkMjg3YmFlNGQ2ZCByZWxlYXNlMjYtbWFpbnQKKzc4ODE0IGJiZjJlZGQ3NTJiNjMyZjA4OTY5NzM5NzNkNDA1NTUxNmY1ZTMzNDcgbGVnYWN5LXRydW5rCis3ODgxNSAyNjlhMTJhNTAxMjNmM2JkOTRjYTRhOWUyZTIzYTAwMzA2MTRmOGRkIGxlZ2FjeS10cnVuaworNzg4MTYgM2M4ZTIwMDA0M2Q2OWU4OWU5YmE2ZWI5ZWFjNTI0MmJlMTM1MjkwMCByZWxlYXNlMjYtbWFpbnQKKzc4ODE3IDU1ZjRkZTVlMzc4YTg5ZWI5Mjg4Yzc4NjlhYWY3OWMxYjZmMjk3MTQgbGVnYWN5LXRydW5rCis3ODgxOCA2NTMzNDMwM2ZkZDNmYTI2NmNkNmIwZDc5NTMyYmVhNzFlZjJjNmI5IHB5M2sKKzc4ODE5IDZkOWJlMWE5N2MxNzIyZTZhOTFkNmIyMTUwMmYxZWE1MGY5ZjUyMTIgbGVnYWN5LXRydW5rCis3ODgyMCBkZmIyMzljNTAwODkyZmVjOTU3N2Q0M2JjODEyNGM1M2U4NGM0ZjQ4IHJlbGVhc2UyNi1tYWludAorNzg4MjEgOWRkMWVjYjVhMjRjMWI0NDIyNzUzMzlhMDJkNTdmYmZiY2M2YThiMiBweTNrCis3ODgyMiBmYTQ2MzA5MTY2OTkwNDYzNTdhNWFjMTY4ODRmM2ZjNDdiZDBlYWE2IHJlbGVhc2UyNi1tYWludAorNzg4MjMgMDE3YWFmZTgzMjZmYWM2ZWExOGRjNzI1ZDM4MTI4ZTlkZTg2NTc4OSByZWxlYXNlMjYtbWFpbnQKKzc4ODI0IDUzMGI3MWNkM2IyOTYxMmU5OGQ2YmUxMDgxZmY2ODNlNTMwYzFiMWYgcHkzay1qaXQKKzc4ODI1IGJjMGNjNjc3MWNhYTc4OTI0MDI5NmQ3NjNlZmYyMTA1Mzc0N2FmNGIgcmVsZWFzZTMxLW1haW50Cis3ODgyNiA0NDY4NjY2ZDAxYzRiYTUxYTY3MjkwMWZjOTcxMGVmY2RlNjJmMmNjIGxlZ2FjeS10cnVuaworNzg4MjcgNTU1MWZlNjY2NzBjMjQ0ZDBkNDUwYWY5ZjBjZmNhYmQ2YjZmY2FhZCBsZWdhY3ktdHJ1bmsKKzc4ODI4IGFkYmIzN2QzZDBlNTAzZDFiMDdiZjY2M2I5MGY3OGU5MmM4ZmUxNmQgbGVnYWN5LXRydW5rCis3ODgyOSAxMzVjZDgwNjRkNmZiODVlODQ5ZjdiYTNjMzlkYTUxODNkZWEzYmE1IHB5M2sKKzc4ODMwIDViNGE2NmQ2MDFjM2E0NDYzMDIzNGVkZDg0M2Q2ZjE5Zjg4Nzg4YzIgbGVnYWN5LXRydW5rCis3ODgzMSAwNTNlZjZlODNjZWQ3YzVkMzg4ZTQwZDViMDVjNmQ4NjMyYzkzMDkyIHB5M2sKKzc4ODMyIGFkOGY2M2Q5ZGNkODAzNDhkMWJlNzhiNmJjZmU2OTVhNTE3ZmE2MjAgbGVnYWN5LXRydW5rCis3ODgzMyA2ZTM3ZTEyNzU4MWI0YzEwMzBjOWMwODc0ODk1MzYzNmFiMDM1NzhiIGxlZ2FjeS10cnVuaworNzg4MzQgYTExMTAyNGEwYmNiNmM3MmQ0MzAxMzZhMjMxMDc3NTNmY2E4NDBhYyBweTNrCis3ODgzNSA4YjI0NmU4NTYwZGI1ZDAxYWU4MWY5OWZlOWRjZWFhMWYzNmQ5NGQzIGxlZ2FjeS10cnVuaworNzg4MzYgZTUzNjdkNjdhN2Y4YWJiNzg2ZjI5NTBlODU4YWRhMDg5MTEwZTU5ZiBsZWdhY3ktdHJ1bmsKKzc4ODM3IGI4ZWRlMGZlZTYxYTEzOWZiZmY3OTE3YTI4NzRiMDY5ODg3ZGQ4OWUgbGVnYWN5LXRydW5rCis3ODgzOCA4MzFlMzBjMGZkNzMwNjg1YWNlMjUzNGFiYjFlYTZmY2JjYmFlNjdmIGxlZ2FjeS10cnVuaworNzg4MzkgOTAzZDNlNjMzYTkyNTdjOTNkODMxZmNkOTBmMjZlYTQ0ZDM3M2NhYyBsZWdhY3ktdHJ1bmsKKzc4ODQxIDA2YWQzMmMwMzQ4NjRiNmFkODk0Y2RlMDExZjliMzIyOWZmYWE0YjkgbGVnYWN5LXRydW5rCis3ODg0MiA5MzQ3Mzc5YmQ1ZmI5N2QzZTYzZTdlNDM5ZjNkOGQxNDAzZjk2NjBkIGxlZ2FjeS10cnVuaworNzg4NDMgYjYyZjc2YWQ0MzBlMjgwMjJlYjc2OWY3NTQyODg0NTMzN2M2YzM2MyBweTNrCis3ODg0NCA0ZGQwOGE1Y2NhOGFkOWM0YTY2NTQ2ZjIxMjJkODBhMmMxYmUzNmJlIGxlZ2FjeS10cnVuaworNzg4NDUgMjAxNjBiNDYxY2QzYWViMzA0NmZhZjk5ZThmZDRhYWEzNTU2NTVlYyBweTNrCis3ODg0NiBlZjQ4ZTQ4ZjA2NmU5OTkxNTczNTY4MmIyOWE1YjEyM2IzNGNmZDIzIGxlZ2FjeS10cnVuaworNzg4NDcgM2VkOTU0OTBiYTlkM2RjNzI4YzBhOWJlZjU1ZjM1Yjc3NjRhMzc4MCBsZWdhY3ktdHJ1bmsKKzc4ODQ4IDZlYTBhNThlZDgzNzY5MDRkYjk5MWJlODU4NmNmZWEwOTU4ODEwMTcgcHkzaworNzg4NDkgNDkxMmNmM2IwMTkwYjM2ZGFlNWI0YWNhNzcwNjI3NzcwNjVkZTE2OSBweTNrCis3ODg1MCBmY2ZlMzI0NjYzYTYxNzE3YTQ5YjU4MmQ0NWU0MTcyMmU1YmM3MzQ5IHB5M2sKKzc4ODUxIDVjNWRlOGFjYjMzYzFhNTExNjkzMGVhODYzOWRmOGMwMjdkNjQzYzkgcHkzaworNzg4NTIgOWMyZDkxOTAxNGQwN2FhZGJlNjE0YjEzODg3MjhhMDc1ZjQ3MzYxZSBweTNrCis3ODg1MyBhNTY2ZTUzZjEwNmQ2MGZlYWJhY2E5MDQ1MjlhZTZiN2Q1ZDBhNzg5IGxlZ2FjeS10cnVuaworNzg4NTUgMTM1YWE3ZWRmNzkyYjgzNzQ5YWZhMzk0NWYzMmE3NGM4NzQ1ODc0NyBsZWdhY3ktdHJ1bmsKKzc4ODU5IDUzOTRkODFjNDUxM2JhYjg3YzJhMzJkODFkNGJlMzZjYTQ3Yjg5ODQgbGVnYWN5LXRydW5rCis3ODg2MCA2MmQ3ZjA0OTcwM2I0ODMwNTc4YmExMGQ3ZGQ1MDRmYjUzZTk4N2ZiIGxlZ2FjeS10cnVuaworNzg4NjEgOTAyN2IxNWY5YmI3NjJhNTc0ZWJmMWQ4YWRmYTQwOTU3ZTYzNzMxMCBweTNrCis3ODg2MiA5OTQ4NzE0NTMyZjkyMTE1YTAwNTQwMjk5ZGU5YjE0ZWNlNGUzNGYxIHB5M2sKKzc4ODYzIGRkNDhlM2YzMmRlNTU0ZjNlYTYzMzM1NGI5ZDZkNmRiZGYwZWJhNGEgcHkzaworNzg4NjggMjM2ZmIwYWY0NDA0OTcwOTY4M2FiYjUxZGYyMDVkOTYwNzUxZDFiZCBweTNrCis3ODg2OSBiMDU2YmM3NjdhZTFlYjE4ZjkyODVhY2IyZDE1YWU5NjEwZjc4ZDIwIHB5M2sKKzc4ODcwIDI2YjE5ODA5ZDgyZThmMzdhNjI1YjE5NDk0OGRlNWVlYzJkMGY0MjcgbGVnYWN5LXRydW5rCis3ODg3MSA2OWI3MWMzMzg5OTI1YjEzNjU4OGIwMDkxMjIxM2QyOTA3N2RjNTM1IHB5M2sKKzc4ODcyIDQyMjYxYzZjYTU2NDMwMWYyZGVmY2JmODEwODU3ZWRhY2IzZmI0YmUgcHkzaworNzg4NzMgMWJjYjQ2NTQ3MmJlNTlhODM2Y2EzNjQ0YzJmYjY3NjVlM2Y2ZjA2YyBweTNrCis3ODg3NSBmNDlkMjRiNDQ1NmVjOWU5NDFhMjg1M2M0MDIzZjEwMmQzZmZjNTQ0IHB5M2sKKzc4ODc2IDA2ZmRjNWUwYzJjMjQzYzgzYzViZTlhNDZmY2RjYjg5MjJkYmFhNTcgcHkzaworNzg4NzcgYzlkZDgyM2MxNDZkMWI2ZjIyZmZjODMxZGU4ZTBkNjY0MzExYjE4ZiByZWxlYXNlMjYtbWFpbnQKKzc4ODgwIGFjNzU0ZmFlYjYzZTg4ZjVlMTFkZDJlZDAxNWUwNGJkNWYyYmY0NzYgbGVnYWN5LXRydW5rCis3ODg4MSA4MmEyMzA0NzE5NGJmZDA1ODZjM2JkNjYwZGU5MWE1MTllY2Y0NjJmIHJlbGVhc2UyNi1tYWludAorNzg4ODIgMDdhZGIwOTQ0MGVmODk2NjUyNDhlNTY1OGE5NDJhOWUxMTFmOGY4YyBweTNrCis3ODg4MyA2YWUwOTBmZDk5ZmUzYjEzMzIwNzI0YjMzNTlkNzdhNTY0OTFiZDBjIHJlbGVhc2UzMS1tYWludAorNzg4ODQgMjczZWI1YzFiOWI5NzM1YWU2M2Y1ZjhhMGIwMzZkOGEzYWFlYTEwZiBweTNrCis3ODg4NSA5MDBmY2FjYzY0MDM0YTE3NGNhOTRjNzEyNmVjNDVkMGM1MzQ1OTQzIHJlbGVhc2UzMS1tYWludAorNzg4ODYgMWUwMWVmOTc1ODk5OWY2ZmNmZmYwMTQ0N2ZhMGRiNzNhNzcxNGJkYSBsZWdhY3ktdHJ1bmsKKzc4ODg3IDc2ZjA3Y2NkN2RiNWM3NWVlYzJmYTZiYmM5M2RlNTVhYmM1NjFmYjEgbGVnYWN5LXRydW5rCis3ODg4OCA2NzI2NDYzNjQ2ZmI0MDg4ZWYzMjMzNzZjZmNmNDQzMjFmOWY3NTIzIHB5M2sKKzc4ODg5IDk4MDgwOGRlMzBjOTFlZjM1OTUyOGY1NzI0NDMyYmQ3YWI5NmYwNDIgcmVsZWFzZTI2LW1haW50Cis3ODg5MCBlNDc0Mzg2ZmY5NmU4ODU5YTk5MmUzOTJjYTMwMjBlZGQ5NDhhM2MwIHJlbGVhc2UzMS1tYWludAorNzg4OTEgZjgwOGIxNmNjZmQ2YWRlMzFhZDUzNGNmN2E1MDdmOGYwMjBjZWZlOSBweTNrCis3ODg5MiBkNmYyMDRkNDA2OTVlYmVmNjEzYWQ0ZmRlZDdmMWQzNGQ2YWEzMWU1IHJlbGVhc2UzMS1tYWludAorNzg4OTMgYzFmYjA3YTU3YzhkNjc5YTMyN2I4N2JlNzE0Mjk4NmMyN2M2MmRkMiBweTNrCis3ODg5NCBjMjFiM2UzMmVkN2I4ZTJlNmE1NDE0NmViNjEzNDVjYzFhOTBhMjdkIHB5M2sKKzc4ODk1IDVkY2MzNjE5ZDZkMWRhODNhMDhkZDQwM2JjNWQzNzY0OTRjOGJlNTEgbGVnYWN5LXRydW5rCis3ODg5NiA2NzM1M2ZiNDA1ZWM5MmJlMTA4ZDU5YjI1MmY3ZGM0YzAxMTA3YjgzIHB5M2sKKzc4ODk3IDIyYzg3NzBmOTkyMzk2YjNjZGExYmVlY2I0MWRkOWZlZDg0NmU4ZjQgcmVsZWFzZTMxLW1haW50Cis3ODg5OCAxZWUyNDUyY2U5NDI2NjE2ZTUyMjYwMTMzMjUwZTQxYjlmNzA4OWUyIGxlZ2FjeS10cnVuaworNzg4OTkgZjQwYTgwODUyNDgwMzViMTcxYjNkNmM3MzM4MGUyYzM3YzhiYzNjMCBweTNrCis3ODkwMCBlMTBkNjFjYTM2OGVkZmFkZmM2ZGI1MDMzZjRjN2ZkZGRhMWFhZWQwIGxlZ2FjeS10cnVuaworNzg5MDEgNzdjNWM5MGJlZWYwMjhkOGM5OGQ0MzA5ZmYwMmI2YzAzNmUxNzA0ZSBweTNrCis3ODkwMiBmNjU5NzdkY2YyMWFjYWQwM2UxZTY0YjQ1NDZjZWY0MjhmODllMmU0IHB5M2sKKzc4OTAzIDRmYmYzZTcwOGZjNDAxYjcxNWY4OTBlMWViOWJiZjdjOWNiM2I3ZDcgcmVsZWFzZTMxLW1haW50Cis3ODkwNCBiM2VlNWZlZDhkYTQ4MTA0ZmQ3OWVhMGNmOTg0ZjJmYTgwYjA3MDhhIHJlbGVhc2UzMS1tYWludAorNzg5MDUgODAyODM3MDk3MTkxNzY5MjZlODQyZmIxMmEyMmQ0NjM1Nzk3MWNiNSByZWxlYXNlMjYtbWFpbnQKKzc4OTA2IDkwZGFhMDdhNDNiZmU5NDdiZDVjMjQxNzM1ZTkzYzdhODQ1ZTEyOWYgcmVsZWFzZTMxLW1haW50Cis3ODkwNyA1YTE2YmY2ZGE5ODkyZjg1ZGFjYjEzNjViNjIzYjhmMDhiNjdkYzVkIHJlbGVhc2UyNi1tYWludAorNzg5MDggZjI1NWE0NmIzMTVhZjYyOTVkOTUxNzQ3ZDA1NzIzNTc1NDZjNjc5OCBsZWdhY3ktdHJ1bmsKKzc4OTEwIGRhOTRmMTY2NmRhMThkMTdjMmE4YzU3YjU2ZTA0Mjg1OTc3NjFmYWQgbGVnYWN5LXRydW5rCis3ODkxMSA1NWVjZGI3OWM2NjAyZGQ2ZTRmZWZiZmMwNGJiZDliNjE5YWRiNGU1IHB5M2sKKzc4OTEyIGIxYjIyYzYwMjIyYjQwMDJlYTcwZTNmN2MwY2NlOTUyODYxNmRlNWUgcmVsZWFzZTMxLW1haW50Cis3ODkxMyA0NjA4MjNjNjc1Zjg5MzhiYjFmNTRhZTllNzVjMzU4M2Q1MTdjNWEwIHJlbGVhc2UyNi1tYWludAorNzg5MTQgNDNjYTY3YmQ3MDBhNjk4MTAzYTY1MmJhMjE1MGMzZmNkZWQzYTM4MCByZWxlYXNlMjYtbWFpbnQKKzc4OTE1IGFkMDE3ZDFiODA3MmUwZmE4OGQ2N2I2M2VhZGE0MzA2M2NlMGY4MGIgcHkzaworNzg5MTYgNWE2ZTg5NzA2NGQ2YmIxOTIwODU5MWQ4ZDUwMzRhM2UwZTJjNjFkYiByZWxlYXNlMzEtbWFpbnQKKzc4OTE3IDZkNWFiZmY3ZmMzMTM5OGIxZGZjNmViZGMxMWNiZmYxN2UzZWY2MTAgbGVnYWN5LXRydW5rCis3ODkxOCBkMWVkZjI4MjQwMDgyNWYxZDE0YjFjOGZlNzJhZWVkY2NlM2Q0YjUwIHB5M2sKKzc4OTE5IDI3YWE0NmQwMjE0YWJjMDA2NDQxMDBhMzk4ZjFmNWI3MWQwMzZlYzAgbGVnYWN5LXRydW5rCis3ODkyMCBhN2I1OGYxZThhZjA4NWQ4NzQ1ZGI4N2M2ZDFjYjRjYTYxOTRkYTY0IHB5M2sKKzc4OTIxIGI4NzhhMGFkNGQ4YzZiNGNiNjVkYTgyYzY1ZDc1YTkyOTBjMWI2ZTcgbGVnYWN5LXRydW5rCis3ODkyMiA1MWQyNmYzMWJjZTk1NTJiNjIyY2NmNWUwZGVmZjU4MjJlNWM3MWQ2IGxlZ2FjeS10cnVuaworNzg5MjMgZTFkNTFjZDMxNWQwODUzNDE2YjZhMmRjZGRiYTVmMjVlYzI0OTdmZCByZWxlYXNlMjYtbWFpbnQKKzc4OTI0IDMyYzVhZDI5NjYzY2RlMzc0MmNhZDEwOWJmMGUwYTJlZDM0N2I5OGUgcHkzaworNzg5MjUgMTllOTY2MGQ5YWE1MTJmZTM0NmJhNDI0ZjUzNTU3ZjkxNjgzZWM5ZCByZWxlYXNlMzEtbWFpbnQKKzc4OTI2IGU4MDhmYzU0OGNkNjY1YzlhNjE0MmU1MDgyODdiNmFhYzQyNDE3MjkgbGVnYWN5LXRydW5rCis3ODkyNyAwMDI2ZTQ0MzYyZTU3ZDA0ZTU0ODViNGJhM2RhMWM0NmNmZmZiNzI1IHB5M2sKKzc4OTI5IDY3NzRlOGM2YzM5ZjM4NGNlNTdiOGY4NTBkZGI2NWRlMjc3MTE2YzUgcHkzaworNzg5MzAgODU5Mjk2YTcwOTJmMGNiYjZmMWMxMmJlMTJkY2MzZWZhY2NhZDRmZSBweTNrCis3ODkzMSBlMGExNzcwZGY1Mjc4NjEyZWRlYzQzM2I0MTE1ZWI4OGFlMTE2NDgxIHJlbGVhc2UyNi1tYWludAorNzg5MzIgNzI4ZWYwMDcyZGFmMjJkODlmM2M4MzE4ZmZiOGQ4NGJmYzJkODNjZCBsZWdhY3ktdHJ1bmsKKzc4OTMzIDI5MDlhNGNiMWJhNzJmMTNjZDUwMzk4NDM3NGUxYTcwOTQxMDI1ODAgcHkzaworNzg5MzQgYWRjMzkwZTY2ODkwNDAxZDc2MWYxNzc0ZmMwOGI1Njc3ZGVhYjk1YyBsZWdhY3ktdHJ1bmsKKzc4OTM1IGNjMTMyMTIxMmU3MzQ2MGNiYjFlNWU5ZDkwNzAwZjlmOTYxYTM5ODAgcmVsZWFzZTI2LW1haW50Cis3ODkzNiBkNmUyN2ZhMjJmNDJhMjY2YzY2ZWViNjM4ZDA1NmNjMDJlYTFmODFiIHJlbGVhc2UyNi1tYWludAorNzg5MzcgNWZlNWEyNmUzMTY5ZTg5Y2RhOTU4MGJiZjg5ZjM3ZmY5OWFkNjc1OCBsZWdhY3ktdHJ1bmsKKzc4OTM4IGQzOTA1YTlmNDBmNDA1OWQyZDViOTdiMjU3N2Q1MTJjN2ZmZWJjMzcgcHkzaworNzg5MzkgMGI0NTdmMTQ5NzYxZGI2YWFmNzBjMjhkZTI1MDViMGVmMjRlNTMwZiBsZWdhY3ktdHJ1bmsKKzc4OTQwIDFhODEwY2UxM2RiZDdjNDNiYzdiNzMyMzM3OWNjNDVlMWI3NTIzZjkgcHkzaworNzg5NDEgOTY5NjkzMmFkODI3NWU3M2ZhOTdjNTA4MGE2ZWFiMTFlNmNhZTNhOCBweTNrCis3ODk0MiA3YTE4YzI3NjI4ODYxNjU0MzA5YWRkYTQ0M2FhYzhiMjc2Mzg3YmU1IHB5M2sKKzc4OTQzIGQzMGViNDIyYzU2NGJmNjFhMGMzZDgwZDA4MjIxZjlhYTIwNDIxNjAgcHkzaworNzg5NDQgNDYxYjg5Yjk1NTVkMGNhOTMyYzU5ZjQyMTNkMWUyODUzOThiMjIzOSBsZWdhY3ktdHJ1bmsKKzc4OTQ1IGYwOTdmMmJhMjMyOTM3MjczMzNhNmZiOThlNWFjNWMzY2MxNGU2MGMgcHkzaworNzg5NDYgNzY4NzIyYjJhZTBhNTk4NDA3OTBkZTE1MDI1ZGQ1NzdiYTIzM2JjNyBweTNrCis3ODk0NyAzNzJkMWRlODZkZTlmODYzMGRlNjg4NmM5NzkyZTYwMzhiYzU1OThjIHB5M2sKKzc4OTQ4IDNkNjgwOTQ5Zjc1NWQ4NmJhOWFlNzEyMzRiNTMxODUwMjQwYjdhYTYgcHkzaworNzg5NDkgZjEyNzBlMDBmNTg3ODc2YzNjYWYxYWVhNTY5N2YwYzQ0MzA0MjgxYiBsZWdhY3ktdHJ1bmsKKzc4OTUwIGRmOGY4MWRmODU5NWNlNWY5NGQ0YjUzYjRkOTFmNjgxMjlmNjQ1NDYgcHkzaworNzg5NTEgMzA4Y2ZmN2RmNjRmMTc0ZWRlODY5YTM2YWJiOTBlMGYyNDM1Nzk3OSByZWxlYXNlMzEtbWFpbnQKKzc4OTUyIDQwM2QwYTI3YmQ1NmVlNTUzNjRjN2NmZmM0YWI4MGYwYjQwOTM5ZWEgbGVnYWN5LXRydW5rCis3ODk1NCBlN2YxMWY0NGQ1MTQ1NWY0MmNmMmU4NzhkZGMxNGQ4ZDUzOTY5Y2I0IGxlZ2FjeS10cnVuaworNzg5NTUgNzdjNzFmMjU4ZGY3Y2E3NWY4NWI0OTg3YjUzNTk3NzI2Mzg0YTVmZiBweTNrCis3ODk1NiA1Yjc1NGU4ODI4NTdjZmQxYjMzNDVmNDMxMmRkODgyNTlhM2NhOGUyIHB5M2sKKzc4OTU3IGI5M2NmYWZjZGNhZDdjMzNjYjk1MzY4OGQwZTExMTU2YWQzMGViYjEgcHkzaworNzg5NTggOWNmNzAyYzkxYTllOGFlZjg0OTNmM2E1ZjUwZjc0NWI2ODVmYjBiYyBweTNrCis3ODk1OSBlN2I1ZmM4NjQ2YWJmYTkwMWU3MmEzM2FjMzk4YWY5ZWQ1MmVkNzY5IHB5M2sKKzc4OTYwIGM4Y2NiNGUwYzZmZWE3ZDNkMDMzZDJlN2JkNDY1OTg4ZjJlNWRmNDYgcHkzaworNzg5NjEgYzQ1ZjIxNzA1ZWNiNzllMzQxYmZiNGMzOTNmMWM1NzUyM2I1MzZiMiBweTNrCis3ODk2MiA4YTkwOWU2ZDJjYWZhNzkzZWZlNDdiYjQxNjIzNTUwMDM3YTNhYTY3IGxlZ2FjeS10cnVuaworNzg5NjMgYzE2ZTA3NTVmY2Q3ZDA3OGQ0NjUxNDk0NjU2NmIwYjk0MmUxYzk2MSBweTNrCis3ODk2NCBiNTcwYzViOWIyZWYzNTQ4NDM2N2U1NjE0NTMwMTkwOTlkYjRiYWMzIGxlZ2FjeS10cnVuaworNzg5NjUgNTllMjIzYTA1NjgwZmEyOTFiZmQzM2UzMTMxYzY3NDE5NzVhMDIxMyBweTNrCis3ODk2NiBkMzYwZjM3YTRiNTk1ZmI5YTM0NTMwNTc1ZDFmZTQ1ZTk2ZDc2Mjg4IGxlZ2FjeS10cnVuaworNzg5NjcgOGYxOTkzYjg2NmY3OTAyMTQ4MDFjMGNjMTgxZDRiMzBhYjdiOGMyOCBweTNrCis3ODk2OCBlZWZkNTIxZjE5Y2UwNWYzOWY3NGIwMmM3MTkyYjZiZjJhODBjYjBjIGxlZ2FjeS10cnVuaworNzg5NjkgYmIwNmFhOTE4MzgyMWQ0NTIyN2IzODJmOTcyODBhZTBhOTZiMDJkMyBsZWdhY3ktdHJ1bmsKKzc4OTcwIDA4YzU0NzNiZWRjYzM5M2VmZTU0ZjJlY2E1MWUxMWE4YWMxMTE5OGYgbGVnYWN5LXRydW5rCis3ODk3MSBlMWRlMDgwYzQ1NTZkMzk1MDAwNGI2NDM0NThiYWE0YzA5ODlhZWExIGxlZ2FjeS10cnVuaworNzg5NzIgYjc0ZjFiYjg4ZTYwOTRmMzMzYjgyYzc4YzZkNWE2YmRhMjJiMWQ0MyBsZWdhY3ktdHJ1bmsKKzc4OTczIGFkYjVlOTI4YmRlMjBmNzJlNjU2MWUwZTBmZmUwYmNkMmZlOTc1NWEgcHkzaworNzg5NzQgMzhmMmY1MjYyYjIwM2FkNTZmMTA5ODBkNmE3NWI0YWIwODUwYWU2NCBsZWdhY3ktdHJ1bmsKKzc4OTc1IDM3YWQ0MGEyOGQzYmY0MGI5YzcwMjBiZTRkZTk0OTYxYmFhYThlMjIgcHkzaworNzg5NzYgOTVmMjFiMmMyMTZjMDhmZGQ5NmIxZmI2NTA5YjBkY2IxZDg2NDBlZSBsZWdhY3ktdHJ1bmsKKzc4OTc3IDhlMzhiN2JlZjcwMDA0MmZmNmNlM2ZhMGFmOTU4YjUyZTAxOGVjNDEgcHkzaworNzg5NzggZGIzNzlhOTBiNDZlNDA0MDJkNDUwYjA0ZmIwZGFjYjZmYzY5MDU2MSBweTNrCis3ODk3OSA3M2U0MmMwZjVjOTllNTIxZmRiZjFlODA5OWM3MGZjM2ZjYjkwMjE4IGxlZ2FjeS10cnVuaworNzg5ODAgYjg5MDBhMWQ5ODM1MzA4OGM1MTBhYjE2MTI2NWRhZjQ0ZjU3NGY5MyBweTNrCis3ODk4MSBhMmRiYTZmZTNmYmU1YTg4Y2FhMjI0NjRhZjUzNjc3YzJiMzEwMDY4IHJlbGVhc2UzMS1tYWludAorNzg5ODIgOGFhNTUzMGU4NDA3M2Q4OGZiYWViZDMxNzdlODIxYWVjYzc4Mzk3MiBsZWdhY3ktdHJ1bmsKKzc4OTgzIGVlYjliZjE1MjViYWM4YWFkZGMzNTAwY2NlNDQ3Yzg4YTE4ODI5NmEgbGVnYWN5LXRydW5rCis3ODk4NSBjMTliNGJmYjgwNmFhOGMxNTE1ZDgzN2YxZDljNDgxZDE4NTFjYzEyIGxlZ2FjeS10cnVuaworNzg5ODYgYzRkZDMwYjVkMDdlYWNmYjNlYWVkNDQ3ZTg1YTllMTE1YzY3N2RjZiBsZWdhY3ktdHJ1bmsKKzc4OTg3IDU5OTMxMTc5YzVlMmM1ODIzZDE2MmQyNzYwYjdiYzI4NThhN2Q0YTcgcHkzaworNzg5ODggNzk4NDVlM2Q1Y2FjMjFlNWVhMzY2ZDhkYzZhMTE0OGJjY2ZkM2UyYiBsZWdhY3ktdHJ1bmsKKzc4OTg5IDlmZmM4ZjA1MTVjZGVjNjA4NGZlNWVlMmE4MWQzNzVmMDY4ZGE2ODEgcHkzaworNzg5OTAgOTIzYzg3MzljYTg2MTc0ZmVmOTI0OGQ2NTBlODQwMTczMjJhN2I2MiByZWxlYXNlMzEtbWFpbnQKKzc4OTkxIDg1Mjc5OWJiM2ZiMTNjYzFiYTc1YjQ4MTUxMzc1ZjcxMzYzMTUwYjUgcHkzaworNzg5OTIgNDI1NzJlMzQ3MTA4YTJkMWRkNzUzOTVhNjcwNjM2MjhiNDdmNmNkOSBweTNrCis3ODk5MyBiNDUzM2I1ODBmYzllYzFhM2RhNTU1ZjVhZDgzOGQ2NDhmMTNmNzFlIHB5M2sKKzc4OTk0IDc0NTE0MDAwZjgzNzVkNjQ3OTk5ZTU2ZDYzMDIzZmZlMjhmOWVlNTEgcHkzaworNzg5OTUgNjYxY2EwYjA1YTMxZTc1NWJjMzFlYjBiYTIyNzU0MTY5MjRmYWY1MyBweTNrLWppdAorNzg5OTYgYmY0YTRhY2VmYjJmODcwOGIzODkyNjc2OTRkNzlmYjQxYzBmNWUzZCBsZWdhY3ktdHJ1bmsKKzc4OTk3IGM5NjZlNmZkNjE3OGIxM2RkNDM3ZTZjNThkYmViNmM1OGVjOThlNDQgcHkzaworNzg5OTggOTViMjY5Yzg2OGRhYzk0NWIxYWNkZGVhNmI0NDNlZWU3MjRhZmQyNCBweTNrLWppdAorNzkwMDkgYWE2MzI5NDNiOGJkZGFkMTEyZWE3MGEwZTVlYjQ5NmE1Njk0YmUyNSBweTNrCis3OTAxMCA5N2I2NjJiMTBmZjgzOTBlNDE5MTc0Y2NhYWJhZTY0NmUxOWJlNzhlIHB5M2staml0Cis3OTAxMSAyZTE2Yzk2MzQwMWRlMDNiMDY5ZWM3OTNjZTAyYTIxYTcyNjY3YjRiIHB5M2staml0Cis3OTAxMiBiYzY1Yjg2ZmFlOTQ2MmU3ZDhhNmJlOGY5M2QxMWJkNmVkYzdmMGQ1IHB5M2staml0Cis3OTAxMyAxOTBlYWRhZWFiYzUyYWQ3ZGZkMjUzMGQ3NTY2ZDFlOWE2MzdiNTJlIGxlZ2FjeS10cnVuaworNzkwMTQgMGYwODA5NjFlY2VmMTMxYjA0ZjIzODJmNDlhNjhhMDBiYjZiOGY3MiBweTNrCis3OTAxNSAzYmUzYWMwMTliZGIwNGU0MzkwZDE5NjE3OGI3ODhkMWFkNWQzNzJlIHB5M2staml0Cis3OTAxNiAyMDY0YmY2MmEzOWY3ODY4YjNjMzc0MGE5NGQwNTIzYWYxMjk1ZjIzIGxlZ2FjeS10cnVuaworNzkwMTcgYmFjNzJmMTFhOThjNTZjMzYwNzhlMmVkZTMyYjA1MWE1ODA4N2U1MyBweTNrCis3OTAxOCAzMGYyODMwMzllMGU5OWE3NTdkMDgwMzAzZTAyODhiMWFjNDVhMTVjIGxlZ2FjeS10cnVuaworNzkwMTkgNDQwN2FjNGM2MzYwYmU0MWYwYmVhZTc5MDNjYjQ5NmYyYmU5NTEwYyBweTNrCis3OTAyMCA1OGUzYmMyMWMyZGQ3MDFlYjQyYTU3NWM3ZTBhYjA1NjFmZDM5MzBmIHB5M2sKKzc5MDIxIDcwNjU1OWQzYWM1OTA4ZWNhYTdkNDcwZDg1NjE2NjVkZTFjZDliYWYgcHkzay1qaXQKKzc5MDIyIDY5YzBkNWVhMmUxZTNjM2I0NzBlOGU0NmUzZDc4ZjAzZjgyM2E2YzMgcHkzaworNzkwMjMgNWI4ODhmNTkwZmUyNGNiMjM0ZTEyNmZjNGNmYmRjYTEyN2NjN2JmMSBsZWdhY3ktdHJ1bmsKKzc5MDI0IDU4Mjc4MGVkZDBlODhhM2JjNjUzMzY2OWUwNTBlNTcwNDZlMzJkN2MgbGVnYWN5LXRydW5rCis3OTAyNSA4MDM4YWYxZTIwNjU1ZWI2MzNjZTY4YjQxOTBjYWFjNmY0MTQ4ZGNlIHB5M2sKKzc5MDI2IDhhNDY5M2Q1MTdmZWNmMWEzYzg0OTE1NzA3NzI0MDYzNjkwYmU5OWQgbGVnYWN5LXRydW5rCis3OTAyNyA3ZjE2MmEzMDk0OTc4NWQ4YmUxMDE5M2Q4NjM4NGQ3ZDNlNmQwZDliIGxlZ2FjeS10cnVuaworNzkwMjggMzQ2NTgyZjg1ZmFmODg0N2Y1YjJmNWIxZDkxYTgyZTVmZDY4MzU0ZSBweTNrLWppdAorNzkwMjkgMTBiNzYwNmE5M2VkMDM5MWEyMzM1NWVjMzQwM2Y4ZWRmYzNkMWRlYSBweTNrLWppdAorNzkwMzAgOWI0NjI1NzAwMjUxYjc0MDA2Y2YyNDVhYmNkZjZkMDJkODhjZWIxZiBsZWdhY3ktdHJ1bmsKKzc5MDMxIDdkZjNlMTNkM2U1MDllMGYyYjA5OThjYzdhYzk5YmQ2NzE2N2NjYTcgbGVnYWN5LXRydW5rCis3OTAzMiA3NDA5YjVhN2M4MWE2ZjA2MmZlNzM2NzQ4MWQwZjU2MTgzMGE3ZGVhIGxlZ2FjeS10cnVuaworNzkwMzMgODBkYzRkMTMxZDg1ZGQzMzEyMGY5ZWFhZWQ4MzlmNTFhYjY4ZDI4MyBweTNrCis3OTAzNCBiODc5MjA5YzIwMmZkMzMzODgxMDJhNGUzNDk4NmE1MjVkZjZkNGExIGxlZ2FjeS10cnVuaworNzkwMzUgNTI0NzllMDQ1NGU5MGNmY2VjOTNlMzMyYTI5NDRiMDY2ZWIzZjE5OCBweTNrCis3OTAzNiAwYWMxOTE5MGE3MTBmYTc3MzRjZGZjNmY0YzNkNjNiNGYzN2ZiMTQ2IHB5M2sKKzc5MDM3IGUzYmUxZjFhZDYxZWUxMTUyZWUyM2ViOWZjZjY0MTJmODkzZjNhOGEgcHkzay1qaXQKKzc5MDM4IDUzMWQzMDIzYjQ4YjdjZWQwMzQ4ZmQxMDYzYmU4MjAyZDg5MjBhZWMgbGVnYWN5LXRydW5rCis3OTAzOSA0MzVmYTIxNWQzM2YwOGE2OGI2OWQ4NWQzMDFmMjcxMDJkMDNmMmI2IGxlZ2FjeS10cnVuaworNzkwNDAgZDYyY2ExZWFjY2I5ZGFiZjdjZDE1NGM1N2QzNjlhNzYxNjZlODgxNiBweTNrCis3OTA0MSBlYTI3OGQ5YzBiMmFhMzNmMzQ4ODBhYzgyZGYxYjIyYmI0OWMxYzZkIHB5M2sKKzc5MDQyIGIxYWU0ZjgzNzdmYjZlMzFlNTBkYTU0YWYyZWM0YzE5NDYzY2Q5NWUgcHkzay1qaXQKKzc5MDQzIGY3MjIwY2ExMTM2M2M5YzdjYTMwMzhhNTg2Yjc3MjE0NWIxN2RiM2IgcHkzay1qaXQKKzc5MDQ0IDg1NTVhNGNiN2M0Y2I2MzY4NGY0NDk0ZGJkZGQ2ZThkOWIzNjE2MzggbGVnYWN5LXRydW5rCis3OTA0NSAxNWJkYjk0YzgwNTVjZGU5YTAxZmI3NzAyYTI2MzU2YTdmNjRkODBlIHB5M2sKKzc5MDQ2IGJmZTllZTAyZjRjMDdlMWNiNzE2ZTAyZDc4YTMwMDdmMmJhNWFjNDkgcHkzay1qaXQKKzc5MDQ3IGExYjZhNTRlMmI2YTUxYzUzNTdkNDMwMjFmOWNiYWUzYTFiY2U0NzcgbGVnYWN5LXRydW5rCis3OTA0OCBkOWVjNGM4Y2U2OTU0MmM1ZmE2M2VlZDAwYWE3NTdhOWVkMzhmMGZjIHB5M2sKKzc5MDQ5IDc2ZjllM2I2YzU4NGU0OGMxZDhjOWY0MjEwOWFhNjM0YWIzNzU1NGYgbGVnYWN5LXRydW5rCis3OTA1MCA0ODVmZTIwZGFiMTIxY2I0NjkxNGRmM2FmYTVhNTMwM2I0OTYxNzRiIHB5M2sKKzc5MDUxIDQyOTQ2MmQ0Y2EwYzIwMGM1ZDIyM2JhYjE3NjZlMjkwNGQ5N2NmNzkgbGVnYWN5LXRydW5rCis3OTA1MiA0NjE4M2JmNGYxNDM2OTA1YTk1YjkxYTg4ZjBmOWI5ODNiMzgyNDdjIHB5M2sKKzc5MDUzIDQ2NTY4NDZhODliMjY3NWEyNzUzY2RlNzFkYjMxNDBjNTg2N2FjZjggcmVsZWFzZTMxLW1haW50Cis3OTA1NCAyY2ZhNDQ5NzE4OGZlZjQ1NTBiNGQ1YWMwY2NlN2JhM2U2NWFjNzRmIHJlbGVhc2UzMS1tYWludAorNzkwNTUgZDFkYmU1ZGYxNzkxZjI5MTg2Yzc1ODE3OGZhNzBjZTNiOGNkZTRkNSBsZWdhY3ktdHJ1bmsKKzc5MDU2IDg3MTI1ZDc2NDdkNjg1YjEzYWY3NjY4NWIzYzdkNGFjYzIxZTZmMWYgbGVnYWN5LXRydW5rCis3OTA1NyBkN2I5ZTI5NDFlMTQ1ZDdkZGRiYTEzNDhiZWJjNzAzMTYwMjIwNjJiIHB5M2sKKzc5MDU4IDI1ZGU3MTY3YTA1NThmOWEzNjAwMjM4NzY0MDM5ODM2MDQxZjYwNDEgcmVsZWFzZTMxLW1haW50Cis3OTA1OSAzNDRjYjZhNGVmN2RhZDdiZTQ3MTM4NWM1ZDlmMzE1YjMxZTczMDFlIGxlZ2FjeS10cnVuaworNzkwNjAgMjJmNTg5YThlM2FiOThlNmFhYWQ2NjNmNTEwZmU2YjA0ZDE4MWU3ZiBsZWdhY3ktdHJ1bmsKKzc5MDYxIDNmNGM3YzRlZWY2MmFmODIzYjIyY2I2YTNhOWNlNWNiYzBmNzc0NTEgcHkzaworNzkwNjIgMDM4NTJlYjA4ZGIxNjE0Njg4Y2E2YjcxNTBhNjE1OGEyOGU2MmQ4ZSBweTNrCis3OTA2MyA5OWFmNGI0NGU3ZTQ5MDM5MDgxN2E1OTdhNTQyNTQ2ZDc0OWU2OThlIHJlbGVhc2UyNi1tYWludAorNzkwNjQgMTZhYWIwMmVkOTljNjdlYzI2MmI5N2EyOThmMzI3YTIyMmM1OTJmMyByZWxlYXNlMjYtbWFpbnQKKzc5MDY1IGE1ZGIwZGYzMjM4MjA5NDNkNjk0YTYwZDkyMzVmYjE5ZDU2ZDQxZWUgcHkzaworNzkwNjYgNzJhODA5ZDE2NWY0MzZjYzkwOGRiMTdkOTlmOWZmYTBhMzZkZWVhMCBweTNrCis3OTA2NyAxNWI4N2VhMTQxM2Q2ZTgwMjBkM2NjNWQ2MDc2ZDM0YjJlNmIzYTUxIHB5M2sKKzc5MDY4IGUxNWE4YTQ3NjQ5NGJiOTQyYWQ4ZDQyYTMxZjUxYjExMzc4NjMwNDMgcHkzaworNzkwNjkgNGYwOWQ1YjE0NzVmZmFjMzU2NjAzMWYwNjdkNzg3ZGZjYTZhMmFiOCBweTNrCis3OTA3MCAzN2IxYjkwZGU1YzE1NWQ5M2IzYTAyODVlMjNmZjExNDdiZTljNGMwIGxlZ2FjeS10cnVuaworNzkwNzEgZWVhNzJiODFhMjNjNjVjY2JmNjA1Yjg2ZGE5ZGRjMDJmNDFlYTQxNSBweTNrCis3OTA3MiA5NmVmZWJkYTRlYTJjOTZkMzFlYjY2ODVhOWRlY2Q2YTFiYTY3YzMxIHB5M2staml0Cis3OTA3MyBmYmMzZjE2OTFhZDg5ZDVjNDgzOGEyNjUzZmRjYTkxNmY2YWYyZmUwIGxlZ2FjeS10cnVuaworNzkwNzQgMGIxZTUyMjgwN2YyYzdiMWRkMTcxYTcwOGZmMTNhYzMyMTEwOWI0ZiBweTNrCis3OTA3NSA5MTAzODU1YjgyNmJkNDc3NzI0NDkwNjY2NDA3M2Q5ODk5ZTI0NWFmIHB5M2sKKzc5MDc2IGI4YjQ5YzgyM2ZlNDQ1YmU4ZDhiZTIyYTM1YWYxNzMyMDk4Y2NiNWYgcmVsZWFzZTMxLW1haW50Cis3OTA3OCBhMGE2N2MyZmI3ZmY2ZTQwMzk5MGUwYTliMjFhMWU0ZGEwODg3NWEyIGxlZ2FjeS10cnVuaworNzkwNzkgOGZhMTI4NGNlMDBlNTkwMDI3YTQ0ZTVlMmY0NjA4MWRhNDEyZGI3NSBweTNrLWppdAorNzkwODAgZGQxMmY3ODhhNTQ0ZGY2NmYwOTE5MDg3ZjcxZTVkMzY3OTlkOWZlNSBweTNrCis3OTA4MSA0NzFkMDdkMmEyM2Y1ZWY3ZWQyOGJhYTkyNDk2ZTM1ZmY4MGMzODg0IHB5M2staml0Cis3OTA4MiBhMjQxZTQxNTg4ODIzZTcxMWJmMWQzOTc5ZmEyZjQ2YmZmZDVjMDc5IGxlZ2FjeS10cnVuaworNzkwODMgZDk0NDExNDAzMDkzYmIwYmM3ZDgyOWU2OWU3Mzc1NDE4N2QyNDZjZCBweTNrCis3OTA4NCA3N2Y4NTNmZTNjZjI2MTQzZGVhNTk4MjNlOGZmZmE1MDVkMTQ2ZWU1IGxlZ2FjeS10cnVuaworNzkwODYgNTBlMDZiNmFiOTU2NWRmNjdhMmVlYjBmMmE3MzVlYWNkNzUxNjkzYSBsZWdhY3ktdHJ1bmsKKzc5MDg3IGQxYzNhYmM4ZTBjMjljNjBjNzZlNjc0OWI4MmQ0MTlmOTZiZTg1NzQgcHkzaworNzkwODggNzkxYmEyMDFiYWE5Nzc2YmZjMjhjMDAyNDIzMTAyZTU3NjUwYTUzOCBweTNrCis3OTA5MiA0Mjg1ZWEzM2E1ZGZlNTIxZmJjMDFmNmFhMTcxNDdhMDExMDBiMDVhIHB5M2sKKzc5MDkzIGI5ZmZhOWZkMTAxYjViOWM0OWMwMzgyYzY1MjQxNGJiOWUzYWE4ZjIgcHkzaworNzkwOTQgOGEyOGJlNDVjMjQyM2NiYzEwNTAxNGUxYjM4Y2E5YzU4ZDYyZjY2MiBweTNrCis3OTA5NSA1ZmJkOWM2Mzg5Yzc1M2FlMmMxMzAzOTU5ZjA5MmI2YWM1NzhiMGQ5IHB5M2sKKzc5MDk2IDRiMzU2YzFiMjVmNjZkOTA5YmFjMzJjMGQxNzAzYzgxY2I5ZTZlNjMgbGVnYWN5LXRydW5rCis3OTA5NyAwMGRhYThiNzM2Y2M3ZmM1YjgzMWFjZmJlOGZjYWU5ZmU0NGU2ZTU1IHB5M2sKKzc5MDk4IGI2Mzg3ZjQzY2RkYmQ5YzNjZGRhYjhhMGZlNDc5YjRjY2YwMDE0OWYgbGVnYWN5LXRydW5rCis3OTA5OSA5MTQzMWIwNTg0NzhlYzE4NTg2N2M3NWM4ODA2ZDFlNzA1YWFjMjE4IHB5M2sKKzc5MTAwIDA3Yzc2NjRmMjFhMTg5OTE5NjUxNGM4NTEzYzAzN2MwZDYyNWNmNzcgbGVnYWN5LXRydW5rCis3OTEwMSAyNTEyYzJhZDVkZTcwNWJiNjE0YWRkMmZlNjAyMjgwNjA1NmFiZDQyIGxlZ2FjeS10cnVuaworNzkxMDIgNDU4N2UxZjc0ZWQ4NWQxMjhlNTI4ZTc3ZDMxYzYzYTQ4MGI1ZDM3NiBweTNrCis3OTEwMyAyYjFiMDM3OTcxOGI0OWQ3NzJhYWQxNjM1YzdhNjRiOTQ4YjFkNzBkIHB5M2sKKzc5MTA0IDYzMGNlNjJjOTQ2ZWY0N2FjNDQyZmVmY2JkMGE2NzNmMGU1MTExZjYgYnJhbmNoX2xpYmZmaS0zXzBfMTAtd2luCis3OTEwNSA4M2E3Njg5ZjFiYjVkMzMyYWRhOTU0M2JkYWY1NTBjZmU1NDAyNjhkIGxlZ2FjeS10cnVuaworNzkxMDYgOTk2YTMxOTIwZDQ4YzA5MDc4MWE1NzJlMGU5NDFlMDY5M2ViOTg3MSBsZWdhY3ktdHJ1bmsKKzc5MTA3IDE4Zjk0ZTIzY2E4MGE2NzQ3ZTU5YWZkMzMwNWU5NWI2ZGM0NjI3MTEgcHkzaworNzkxMDggM2Y5MDUzNTk4Y2EwZDU3YjczZmU5MWNmZDQwMzRmYzM4YTIxMDFlYSBweTNrCis3OTEwOSBhOGUzOTc3OWZlZGYyNGU3YjYwNjE0OGY1OTA4ZjZmMzYwNzUzNzJkIHB5M2sKKzc5MTEwIDJkNjgzYjhlM2Y1MDJmODYwZDE5MDlmM2M2NGEwYjFjOTM0NjlmY2QgcHkzaworNzkxMTEgNDc0MWY2ZGQ3YzY5YTBiMjk0MTEwM2JkYzU3NjY2YTE0OThiMjc2OSBweTNrCis3OTExMiAyMjQ1OTFiYTZhMTg0Zjk0ZGMyMWRlYWI1ZmY3NDU1YmEyMTA2NWYzIHB5M2sKKzc5MTEzIDFlMGQxOGU5ZjhjMWJjODliMjY4N2M0YTljZDgyMmNiOWJiNzdmMmMgcHkzaworNzkxMTQgMGYwMGRhNjkwNGE2NTc4MTUxYWVlMjAyYWU5YWZiZGVkYmE3ZDVjZSBweTNrLWppdAorNzkxMTUgOWFiMDdhYmUyMzBkYjk4YjE4ZDQ2ZmUyYWUwYWUyOGQ3Zjk0YjZhNCBicmFuY2hfbGliZmZpLTNfMF8xMC13aW4KKzc5MTE2IGU0MzIzM2Q4MDA2NGY1ODNkY2JhODFmNWU5NzZmMTIxMjRjMjlmN2IgcHkzaworNzkxMTcgMDJlMjE1NzZkYTAzNzczOTBiNGJhOWQwZWM1MmU4MWEyNWQwYmQ3ZSByZWxlYXNlMzEtbWFpbnQKKzc5MTE4IGMzYzdhM2JlNDBiMzU2NmUzMWIxMjk1YWRiNGIzZjAyZjAxNTVlZTcgcHkzay1qaXQKKzc5MTE5IGFjYzNlMzU4M2ZhYzk4OGEyNDJmOTg1ZDU1NDVkODYxYTNkMmUwYmMgcHkzaworNzkxMjAgOWZmMTAzNWY2MjM2NWViZjBkOGVjNTY0NzMzMmVmZjM1ODY4ZGI0NSByZWxlYXNlMzEtbWFpbnQKKzc5MTIxIDNkMzhjMDAzMmNlYWE5NWZiZGZhYTkzOWZhODMwMTE1MzRjZjJkMjcgcmVsZWFzZTMxLW1haW50Cis3OTEyMiBmMGVmYWFiMDQzODE5YWI1ZmY3ZDAxZjZmYmQ0MDM2NjdlYzVmOGMyIHJlbGVhc2UyNi1tYWludAorNzkxMjMgZmU0MTE1NjkyZjc2YzEwNmM4OWI2YTIzM2NhNzQ3ZWNlZTFmMmRmMyBsZWdhY3ktdHJ1bmsKKzc5MTI0IDlhY2I3YzE1NjA3NTgxOTdlZjUyZThkMWZiNTllYzA4ZmU4ZDFmZDYgcHkzaworNzkxMjUgYTVmNzk2ZmI2MWExMDI2NGRhYzJmYjIyZGU2YzZkOGRjNTA5NDAwMCBsZWdhY3ktdHJ1bmsKKzc5MTI2IDcwNjk1N2Q2ZWNkZmY1MGE3ODliMzBlOGIyOTgwYTdlMGI0YWM4MjUgcHkzaworNzkxMjcgMTNmZjg1YjEwZGIwZTU3MzQwZTc3Yzk5NGVhYTk5YWU3YzU4M2ZlMyBsZWdhY3ktdHJ1bmsKKzc5MTI4IDc0YmIwZjYyYjMyZTdjNzJlNmIwZmNhMDg4ZTUzMmExZmI0ODY3N2YgcHkzaworNzkxMjkgMTA5YzRlNjJlYzIzNTc3MmYzZGFmYTRmYzI0MjdjMjQ1N2I2ZDcxYyByZWxlYXNlMjYtbWFpbnQKKzc5MTMwIDVhNTVhMzI2MTE2NDRkYTljY2FkNDNhYTYzMzgxOWZkNTBiMzYyNTIgcmVsZWFzZTI2LW1haW50Cis3OTEzMSAwZTNjMTBiY2RiYTQxZDI3YjIzZGZjOTlhMWE5OTZiN2IxNzEyYTU4IHJlbGVhc2UyNi1tYWludAorNzkxMzIgYTY4MmI3MDg3YWNiYjNmOWZlNTM4ZWQ4OTViN2RhZmJmODZhYTY2OCBsZWdhY3ktdHJ1bmsKKzc5MTM2IDE4MDM3NGJmMmQ1MjlkZjM0NTQ0OGZiYjkwNmUwZDZmOWFhMDAwYjggcHkzaworNzkxMzggMzdjOWFiN2Q0OGYxZjQ3NGZiYTliZmYxZTNjZDY5MTBlODA0N2Y0MiBsZWdhY3ktdHJ1bmsKKzc5MTM5IDY2NTFlZmI3NWQ5ZWEyYTliNmZmNTdmM2FjZGM4YWViZDg3ZTJkOWQgbGVnYWN5LXRydW5rCis3OTE0MCBlMDc2ZTU1ODM0ZDlmMjExMzJhYWZlNjk2ZTUxNzVmYTNhMjhjOTViIHB5M2sKKzc5MTQxIGU1MjNiYzFjMzAzNDQ0NWZjOGJmNTdmOWMyOTUwYzEyMWQyNTg1YmMgcHkzaworNzkxNDIgZTg2NzIwMDNhZTg0ZmYxMmE1ODg0ZmIxMmZjZmFmZTk1OWE3MTU3NyByZWxlYXNlMjYtbWFpbnQKKzc5MTQzIDg1Y2JlNDRiMzkyNWY4MzJhZGEwNzAzOTZhOTE2NmY2MDcwMjExOTggcHkzaworNzkxNDQgNjM1ODY1OTJhM2EwNjk1NGUwOTYwOGU1NzdmN2RhY2I3ZjkxODUzNSBweTNrCis3OTE0NSBhNjEyYzhiNjFiNGFhODRhN2Y4ZWYzNDBiYThhNTNjYzU4NTUyMjM0IHB5M2sKKzc5MTQ2IGY3N2Y4NTAxZGE3ZmFiOTQ0NDk3NGExZGY1MTlmZDY4Nzk3YmEwYWMgcmVsZWFzZTMxLW1haW50Cis3OTE0NyA5NjBlZmEzMjdjNWQ5YzE4ZGY5OTU0MzdiMGFjNTUwY2I4OWM5Zjg1IHJlbGVhc2UzMS1tYWludAorNzkxNDggN2M5MjY4MTQ2OWY3YmI0NTUzMWEzMWQ1NTg5NmRkMTMxY2JjN2M3YiByZWxlYXNlMzEtbWFpbnQKKzc5MTQ5IDM1MmQ2MWE2OWY1OTViYTQ4OWU5ZTdlMGI0ZWE4ZDY0MjdhYTIzOTcgcHkzaworNzkxNTAgZWRhZDk0OGI0ZDY2ZmFiMzFiMDIzNGE0MTgxMmMzOTQ0ZTA2YjBmOSBweTNrCis3OTE1MSA1NTRlMGY0MzVkMDhhYmI3MDQxNWZhYmU3NWUxODI2OGU5YTYxZmRjIHB5M2sKKzc5MTUyIDYyMjNjM2ZkNjFmMDlkNzMwZmI4MGIwNmQzNTZmN2U4MTQzMDlmNGMgcHkzaworNzkxNTMgOGE5MjBhODkwOWEwOGJlMzkwYzQyODI3MDU4OWMyYWVlNTI2NGJhZSBweTNrCis3OTE1NCBhZTllMTM3NDExZjFmMzhmMjcyNDU1NGUxOWY1YWJiODI3MjYyN2VlIHB5M2sKKzc5MTU1IGQ4NzAwYjRmMWI5ZjUxNTI1MDZjNmRhZTdhMzUxNTViZjk0YWZiZTggcHkzaworNzkxNTYgNGY3MTliZTdjODc1ODVmNWIxNTc4MDNmZGIwMDA0ZDBlZjBkZWM1NSBsZWdhY3ktdHJ1bmsKKzc5MTU3IGU2MTkwNDdhMmYzNjYwOGVhOTZmZTk0MzI1ZWUyMmUxZjgyYjJjZGYgcHkzaworNzkxNTggYTlhODA3YjdjZDQzOWZjOTdlNDQwNjBlMmY0N2Y4MTAzNDMxMTJmOSBweTNrCis3OTE1OSAwZTA2MzJjNTQzZTQxNDRmMjJmMzFkNWI5MDhmY2RiYWU5NGVjZjMzIGxlZ2FjeS10cnVuaworNzkxNjAgNzExZDUxNzM3ZWU2YmU5ZjZlY2FmNGFmYjZiMDU5MmU1ZjVjNzQwMSBsZWdhY3ktdHJ1bmsKKzc5MTYxIGRiYzU4MDRlODI4NTg1YzQyMTAzNDM0ODllYmY4MjFmMjhkMWE5NzIgcHkzaworNzkxNjIgNmI2ZmZkNTI2ZTNiZTRlZDk5OTIxY2NiOTRkNmUzYzA4Y2E4N2I2MCByZWxlYXNlMjYtbWFpbnQKKzc5MTYzIGE3Yjg5ZjJhYzFkYTZhNWUyNDVlNzkzZTBhY2I3YWU5OGE4ODg2YjAgbGVnYWN5LXRydW5rCis3OTE2NCBkY2I5ZjQyNzA0NDFhZjdlZGIwYmFkZGY2ZDc1OTFiMDhkNThmNzljIGxlZ2FjeS10cnVuaworNzkxNjUgYzhjODQwMTYyODA0OWY5N2Q4YTZkZGZmNDZiZDMwMDNmODJmODA2YSBsZWdhY3ktdHJ1bmsKKzc5MTY2IDdkZGNmN2QyODM2YWFjMzJhNTMzZjEwNjMxYWU4MWEyZjc4Y2U5YTkgcHkzaworNzkxNjcgMzU2NjM2NmI4OWNmMTU5OTQzMDVlOWQxNzY3OTcwMzYyYjU5ZGQ5MSByZWxlYXNlMzEtbWFpbnQKKzc5MTY4IDRiZDFhYzExMzJjZGZkNTA1OWY3OGVmZmQ0NTM5ZDc1NGE4MmIzZWEgbGVnYWN5LXRydW5rCis3OTE2OSBmMDc2NmNmZjdmNTk2OGVhYjM4Yjg5ODA0MmVlODk3ODJiMmQ5YTBmIGxlZ2FjeS10cnVuaworNzkxNzAgZjg1N2Q0ZWQwNzc0NzU5MzY4N2RjMzY1Y2Q5OWU4ZjdlOWJiYTFjZSBweTNrCis3OTE3MSAxMGJkMWQwZjYyZGUyZGM4ODU5NjYzMWFjYzljNGZmNmJmMjM2ZjY5IHB5M2sKKzc5MTcyIGVhNGU2ODkyOGZmNTZiNmY1NDM5MmNiYTBlM2M0NTY0Y2FmZDQxN2MgbGVnYWN5LXRydW5rCis3OTE3MyAxYWU0NzRjOWMzNGU2YmM4MTVmYjc3NjVhYWEzNmY1YzY2MDNmNThiIGxlZ2FjeS10cnVuaworNzkxNzQgMmM5ZTBhYjNmMGM3ZWZkOTFmY2ZjMzdjMjA5ZTc5NDNiNDM0MDYxMSByZWxlYXNlMjYtbWFpbnQKKzc5MTc1IDZhMTI1NGUyMGM4OTY3YmU5MzhlOWVhOGI5MzhlMmI5MzI5NDJhOTYgcHkzaworNzkxNzYgY2IwZTM3MjZkOTFkYWIwNWY0NWQxMzAzMjc2ZjU0OWI1NGFjODcwZCBsZWdhY3ktdHJ1bmsKKzc5MTc3IDMxZjBkOWZjZGI0NWMxN2U3ZDBiYTY5NzE2ZmM3YzcxYzY4ODhjZjAgcHkzaworNzkxNzggYWM5NjJiYzQxZTg1ZmM5MzNiZjc2YmE3NjE2N2NlOTIwZmI1MDU5ZCBsZWdhY3ktdHJ1bmsKKzc5MTc5IGJjNWUwZDJlMTc5ZDAwODZlYjFjMTY5ZDI0MTQ0MTgzZjI5YTYxMTMgbGVnYWN5LXRydW5rCis3OTE4MCA0NTVlZjcwMTViYTgwMmRhMDhlZTc5NjE3YjU2ZDEwOWEwMmRkNDUzIHB5M2sKKzc5MTgxIDk1MGMxMDMwZjgxNjQwN2YxYjRiMDMxNDMwOGNkNzQwMzU5MTgxYmIgbGVnYWN5LXRydW5rCis3OTE4MiA1NzVlYzc3M2RkYTQwY2Y4ODNiNmYyZWZmMWFjN2VlNzM5ZjEwMTkwIHB5M2sKKzc5MTgzIDI4ODZmNmFhNWVmNjE5YTRiZDE2NWU3YTMzODU3YjY5NDhiMDc4MmIgcHkzaworNzkxODQgNDE0MDQ0ZGJmMzQzOTQzMTZhNDMwOGYwZTBjNTU1NGYyZGM1ZTFhOCBsZWdhY3ktdHJ1bmsKKzc5MTg1IGQ0ZmEyZWFhYjVmYThhNTZjMDNiM2YwMmU0Y2QyMTc1Zjg5ZTUxOWEgbGVnYWN5LXRydW5rCis3OTE4NiBjMTFmMWNlY2JlYjM1YTE4NmUyNmU2ZWJiYjVhM2ZjZTYzMDE0NmQ5IHB5M2sKKzc5MTg3IGMzYjljMzMzMzAxYzdiN2Y2ZjUzMDNjNjhjOTk1M2UyMGM5MWVlZTEgbGVnYWN5LXRydW5rCis3OTE4OCBlODIzZTI3YzIyNWVhYTA2MTczOWE2MjA3YjExMzljYjMxOTk4Mjg2IGxlZ2FjeS10cnVuaworNzkxODkgZGQ2OGUwNGVlMmU4NjIzNDk2ODY2NzA0OWFhMTUwNzBkZjIzNzg0MyBsZWdhY3ktdHJ1bmsKKzc5MTkwIDYyMDkxMmY4MzA4MjZlOTVlYzAwMDhiZDQ4NjhlMzhhMjY4ZTk0OTcgcmVsZWFzZTI2LW1haW50Cis3OTE5MSA5OGU0MTY2MDU3NGMzZGVkM2FmNjBhOGQ3ZWJjMzlhMDczMDNjZmY2IGxlZ2FjeS10cnVuaworNzkxOTIgZGVmYWFkMjAxN2I1Y2MwODllNzRmYjhmNGI5MTExOGNlMWE5NTk0YiBsZWdhY3ktdHJ1bmsKKzc5MTkzIGZjZWY0ZGEzMWUyNDViZDAzMDUyMDNmYzAxNjBhZDA2ZmZhMzk3ZmYgcHkzaworNzkxOTQgMjJjNmEyNzY0Y2FiNWZmODBhMjc5ZjQ2ZWNjNjgwODhmOWMzNzM4OCBsZWdhY3ktdHJ1bmsKKzc5MTk1IDYzZjNhOTRmNWU5ZDUwNTg1ZjQwOTkwNmI0NDJjMjY3Zjk5MjY4NmEgbGVnYWN5LXRydW5rCis3OTE5NiA0NGZmYjgwOTJlZDYyOTAzMzBjNTQwZWMxODIzMTA3YTI4ZWY2NDRjIHB5M2sKKzc5MTk3IGIyNWQxMDI0ZjM5NDY4ZTQzOWI5NGM2Zjc4ODcwN2VlNDgwYWJiYzAgcmVsZWFzZTI2LW1haW50Cis3OTE5OCBjNmY2YmU1MzE3YWQzNjE5NmJhMGYxMGQ4ZTIyZWFmOWQ2N2VlNTViIHJlbGVhc2UyNi1tYWludAorNzkxOTkgOGU0MWYxNzk0ZDQ0OTViOGNiMjI0NmU1OGY4MDNjYjBlNGFiMGViOSByZWxlYXNlMjYtbWFpbnQKKzc5MjAwIDBmYjZkMzQyMDE2ZGQ1YzhhMjZiZGYyOGRiODdjZjU0M2M1ODZlYmUgcmVsZWFzZTI2LW1haW50Cis3OTIwMSA4ZjEyMDJjYTg4OGU5NWJiMjVmOWRmNzRiMTViZGMyYmJiZDU3MmY5IHJlbGVhc2UyNi1tYWludAorNzkyMDIgMTJlMjA3NWRiYmUwZTFmMzVjMDA3OGVhZDczZjU5Y2M4OThiYzY0ZSByZWxlYXNlMjYtbWFpbnQKKzc5MjAzIDU4MTI2M2FmNTgyMGZkMWQ2NGFiN2UyYjQ1MTc0NTE2NTgzNzA3NDIgcmVsZWFzZTI2LW1haW50Cis3OTIwNCA4ZDhjOWJmMmEwNGUyN2Y1NmM2YTNhZTY5YTE5ZTRkNDQ5ODliYzlmIHJlbGVhc2UyNi1tYWludAorNzkyMDUgNjQzYmY5ZmYyMjhmZTQ4MGQ4MGNiMjJhMjkyMGY1YmExNGEyNzI2YSBsZWdhY3ktdHJ1bmsKKzc5MjA2IGI5ZTI3ZGU4NWU0YmM4NjgyODk5ZDA4ZjNiNGYyMTNhNjcxZDUyYTcgcmVsZWFzZTI2LW1haW50Cis3OTIwNyBlMDYyZGQzNTcxNDE5MmEzMThlOWM1MjEwZTM5NTdhY2MzNThmMmZlIGxlZ2FjeS10cnVuaworNzkyMDggMDlhYTg3MmY3OWZjNWYzZjllNzhiODZlMmE3YTZjMGE1MWZmYTdlZCBsZWdhY3ktdHJ1bmsKKzc5MjA5IGVjODRmYmNkZjdjYmI1MTk0MTRjNDMzNDNkMDY0MWMxNWYzODI5MjMgcHkzaworNzkyMTAgOTNmNzIwZTk1MThhZGJkZGE2ODBmYjNlNWRmOTk1Nzc5NzYxNGRkOSByZWxlYXNlMjYtbWFpbnQKKzc5MjExIGVkYzkyYmNlNGQ2ZTJkOTNhYmY0NTFiYjk0NTZjZTlmM2JlYjQ4ZmYgcmVsZWFzZTI2LW1haW50Cis3OTIxMiBjZjU4YjczMzIyZjhjNGIwYmM0MjY1MWE1MDkwNjlhZmEwN2NmYWQzIGxlZ2FjeS10cnVuaworNzkyMTMgMzhlOWI5ZGEwMTY0MmViYjQ2OGJiY2UwMjNjYjI0ZmQ4YTRmMmNlNyByZWxlYXNlMjYtbWFpbnQKKzc5MjE0IDc1OTg1MTdiMTIxODA3ZmFiMDUwMDQ1NzU5ZTVmZTcwYzA4OTQyNzYgcmVsZWFzZTI2LW1haW50Cis3OTIxNSA2NGEwMmIxMzNlNzIzYTk0NjY5ODQwODM3NTQyZTI2NjkyNTM0NjZiIHJlbGVhc2UzMS1tYWludAorNzkyMTYgOWVhYmJhNmRlZDA5NjJiMWE4ZTFlOTUzMjQyMWQ0MzZhNWJmMjA1ZSByZWxlYXNlMjYtbWFpbnQKKzc5MjE3IDQ1ZDIyODRjYzA2M2RlNWM5M2RkNDMzYmQ1YzI3NTkyZTM3MTg3ZmYgcmVsZWFzZTI2LW1haW50Cis3OTIxOCA3Njc4MTEzODVmYTZmZGY3ODZkNmVmZGZhZmE3NWZiMmRkNzY0MTAyIGxlZ2FjeS10cnVuaworNzkyMTkgZGI5NjFiYTM3Y2ZlNDQ0NjljNjhlNTIyZmZmYmU5NTFlZmE2YjIzYyBsZWdhY3ktdHJ1bmsKKzc5MjIwIGVmMWYzODhmNDgzZmI4NTAwMTZhNjAwM2RjZjEwYWFiN2ZjOWUwN2MgcmVsZWFzZTI2LW1haW50Cis3OTIyMSBjNjk0NjE4ZGFiNTQzYzJmODcwYzFhMjYwMTYxZTFkMTcwMjBlMGEwIHB5M2sKKzc5MjIyIGM5MmNhOGJhMWQ5NzUwZjY1OTcwNzJhOGY1OWQxYWJlNmI3Y2Q2NzIgcmVsZWFzZTMxLW1haW50Cis3OTIyMyBkMTM5OGZmMDFhMDc0YjRjMDE5NDc4NzZhNjZkYzA5OGYyODQzZmZlIHJlbGVhc2UyNi1tYWludAorNzkyMjQgYWMyMzE0YjVmOTYyODgyNTU2OTI2ZjVlOTE3OWQ3MWIxNmU2MDUxNCByZWxlYXNlMjYtbWFpbnQKKzc5MjI1IDUzZGJkODk2YzZjNjkyZjQyNGMxNjUyMmYwYWI5OTg0MjQ1MzM0MjcgcmVsZWFzZTI2LW1haW50Cis3OTIyNiAxYmY0OGE1ZGRlYWQ1MzYzMzU0MTlhZTE1ZmJjZDJmZDhmMTZiZTlmIGxlZ2FjeS10cnVuaworNzkyMjcgZjk2YzgyOTNkZDdmODhkODdiZTgyM2YwNDM5NmUzMjZmM2I1NzlhZiByZWxlYXNlMjYtbWFpbnQKKzc5MjI4IGRiOTRhZWRlYjBlMDRhYTExYmU0ZjFkNTYxN2QxNjExZjhiZmU1NzYgbGVnYWN5LXRydW5rCis3OTIyOSA5ZjYxODc1MDA2NGVlY2RhZWQ4NmE1OGQ5ZGZlMWUzYThhYTc1ZDk1IHJlbGVhc2UyNi1tYWludAorNzkyMzAgMGQxY2RkMTRjOWZhMTk2MThiZWE1ZjZjZGFkMjc5OWFhOTc5OGZiMyBsZWdhY3ktdHJ1bmsKKzc5MjMxIGEwYjZmMjg3MTFlNWVlODNlNGFhM2EzYTU2ZGU1ZTY3NTU5NGFjNmQgcmVsZWFzZTI2LW1haW50Cis3OTIzMiAwYzM0NDgyN2UwNDhmMjY5MzcyZmU2MjNiMGQ0NWU5YmQ5NjUxMjU2IGxlZ2FjeS10cnVuaworNzkyMzMgYzdhNjE1NDQ2MGZiZGE5ZWRiN2U5YTc3MDgzYzA4NTlmNjFhMjljZSBsZWdhY3ktdHJ1bmsKKzc5MjM0IDkyZjI1NjE3NDE1NDFhNDE4MWIwY2QwY2JhM2M0YWY4MmE3MjExYjAgcmVsZWFzZTMxLW1haW50Cis3OTIzNSA2NTFhOGU1YzQ2MGZhOWQyMGI4M2RlYTMwZTQxYThkM2ViMzYzMTExIGxlZ2FjeS10cnVuaworNzkyMzYgYzA3M2YzYzMyNzZlZjNkZjRmYWFiOGJjOTNjZmI4OTFmZmE5YmMwMiByZWxlYXNlMzEtbWFpbnQKKzc5MjM3IGRiYWQxYzA2NjhjOWY4Y2ZkODM0YzhmMzkxYjJiNjYyZjJkOTM5NDkgbGVnYWN5LXRydW5rCis3OTIzOCA3ZTNiNDkwODc3Y2VjZGJhNjg3ODQ1OGI2YmU0MDcyYWFkNmFlZGUwIHJlbGVhc2UzMS1tYWludAorNzkyMzkgZWM2YTk5NWVjZmJmODI0YjcyYmY2MWExZWQxZWNlOTQ0YzUwNjE1YSBweTNrCis3OTI0MCA5NzE0ZjhhNzdiMTYwZmI2MWVhMzY5ZGQ1MGYyNDNjN2UzZDZhN2Q5IHJlbGVhc2UzMS1tYWludAorNzkyNDEgYmFjOGEwNDI3MGZjZjE2M2FhYjIwNGM5MjRkZTg0MzY4Mjc3YzhiNyByZWxlYXNlMzEtbWFpbnQKKzc5MjQyIDQ4ZjQwYTE3ODVjYWFmMmYzYWVhNDdlODVkYTU0N2MxZmJkYjg5NTYgcHkzaworNzkyNDMgNDFiMjI1MDY3ZjRkMTI4NzY1MzAyMGNkZmNhM2FiNWZiMmE1NGEwNyBweTNrCis3OTI0NCBkMGJkZDA5ODU2Mzc0ODY2YWRlNTUwZDhlOTQ5NDg1YzU2YzEzMWNmIHB5M2sKKzc5MjQ1IDM4MzNjZjMzY2E2MTc0OTcxMjVlYTllZjJmNjE2YzljYTU2OGQyMDggcHkzaworNzkyNDYgNDI5M2MzMzY2OGRmN2Q2MjZlMzRmNmIwODg2MGMzOGZkY2ZiNTAxYiByZWxlYXNlMzEtbWFpbnQKKzc5MjQ3IGMyZDJlMjZiY2Y3ZmQyNWZlOTFhNDNmMWNiODc4MzQyNWJmMDAwMmEgcmVsZWFzZTMxLW1haW50Cis3OTI0OCA2N2YzZjdlNTM2NmJjN2UzYjljMTU2YjFmYTdkMzlhNDcwMTQwYjg2IHJlbGVhc2UyNi1tYWludAorNzkyNDkgYTM2NmQ2MzFhNjI5YTRhY2E2MDdmZjQzYTFhOTU0ZDZmM2FjY2JjMiByZWxlYXNlMzEtbWFpbnQKKzc5MjUwIGUxNmEyN2I1NTJhNmUzNDRlNWM0MDM0ZDMxODk2YmQ3YmRjZWUwNzMgcmVsZWFzZTMxLW1haW50Cis3OTI1MSBmYmFjZjk3MmZhNDRlNjk1NmE5NGVmYTVjYTJlMjMyZTU3ZjQxMGJhIHB5M2sKKzc5MjUyIDdlNmQ3MTUxZmRlODc0Y2E2ZDFiM2MwMzEyZWY4OWNlNTBlNjM0ZjkgcHkzaworNzkyNTMgMmQyZjIzODcyZDkwYTEwMDMwY2NiZGU1ZmQwZWJkMGZkY2MxNzFiZiBweTNrCis3OTI1NSBjNTNmNmEzZDJkM2IwYmU0MTdjM2E1NWU5ZTczOTExNGFhYjNjODY3IHB5M2sKKzc5MjU2IDEzYTQ0ODAxMmE4NGU3ZDMxZTI4MWFkZTBmOTUwYzVjY2UxMmY5ZGUgcHkzaworNzkyNTcgODI2ZDA1NDY5MGNiOGRhNmE1ODNjOGJhZDU1NWViNzdhNDlhNzQwOSBweTNrCis3OTI1OCBkOWI4ZjI3M2FiOGRhNmQxNjBjODI5ZjhhODNhMGQwMjA2YTEyZWVjIHB5M2sKKzc5MjU5IDkwMjE3YTg2NjQyZDA3YmFlMDI2NTlhYjNkMjE3YWJlOTk2YzMyM2UgcHkzaworNzkyNjAgN2Y4MTZmNmI1ZDBiMDk0MDc0MTcxMGM2YTBlZGJmM2U0YTE4OTU0MSBweTNrCis3OTI2MSA1YzA5MmQ0YjQ5OWNmMjc4Y2ZlZDM1NjZjYWY0OTU4ZmZjNTY2MGQ1IHJlbGVhc2UzMS1tYWludAorNzkyNjIgODFkYzAyMjk4NjE0YmExNmQ1MjFlYmZmMWI1MmVlZjQ1OTg3ZmYyZSBweTNrCis3OTI2MyAyODU4Y2FlNTQwZTQxMWI4MjAxNzRiOTk0ODk4ZmRhMTVlMTI1NzkwIGxlZ2FjeS10cnVuaworNzkyNjQgZjkwOTczOTYyZWFmMWM0MWM0NGVjNGE3N2VmZjRkZDVjMDU1MjM5OSBweTNrCis3OTI2NSA4NGNjMTNhMTQ0ZmZiZDUyMjhhNTA2MDY2MWQyYTFhZmFkOWY5ODU1IGxlZ2FjeS10cnVuaworNzkyNjYgYjRkOGZhNGQwMDQ5YzNhZDYwM2M3ZjYxNDg4ODgzNjdhODM5OGYyZCBsZWdhY3ktdHJ1bmsKKzc5MjY3IDY1N2QwMmE1MDNmYTVkNTYzZjA2YTFhODY0YWM5MWFhZjA4ZDc3MzcgcHkzaworNzkyNjggZWIwZmY3MTNhNWU5YzE0ZWM4OTdlMGI2ZGFlMjcxYzE2YjQzN2JkNyBsZWdhY3ktdHJ1bmsKKzc5MjY5IDM3YzBlMjhkMWFkNGVmZTMxMDAwNGQzZTljM2QwYWJkMTQyZDM0ZmIgcHkzaworNzkyNzAgMDE2MTk2NDY0OWMzOGE2NGRhNjA3OTI3ZWYzOGUzMDBlMmZmYWE0MiBsZWdhY3ktdHJ1bmsKKzc5MjcxIDIyOWYyNTJiY2U3NzM2ZTY2NDdjMzg2NTYyM2U1NjA5ODgxNjM0Y2UgcHkzaworNzkyNzIgMTA2YmVlM2YxZmU1MTYzNmUxMWE2YzYwOTNlODVmMmQyZTdmYzdmYSByZWxlYXNlMzEtbWFpbnQKKzc5MjczIDhjM2IxMjBmMjU5NjJkZWMwYTZkNmU5M2ExMTQ2YzE2MTI5ZjE5OTQgcHkzaworNzkyNzQgM2RjNjg4MmE3MjdkNzNhNjZkOWU0ZDYyZWJhNmJiODc3MGQyYjY3OCBsZWdhY3ktdHJ1bmsKKzc5Mjc1IDc2OTgxZWU1MGI0ODJmZWIzN2RjODNmOTY5ODUzMDcwMjIxYjE1MzEgcHkzaworNzkyNzYgMmQ2MTc4NDgwY2M3MTI2YTdlY2M0YTI2N2I3YzYyYTNlNGQzMTU5ZiBweTNrCis3OTI3NyAzNmU5ZjM4ZThhM2MyZWVmMmVmMjZhY2MzZTQ1N2IyMGNlODVhODBlIHJlbGVhc2UzMS1tYWludAorNzkyNzggNTJjZjdlNjVkYWQxNGJhYjI2MWM4MDA4MzkzZTllMWU0ODAyZGRiMiBsZWdhY3ktdHJ1bmsKKzc5Mjc5IDViM2E2MDFlZDIwNWI1YjQwM2ZjMzUyMTgwOTlhMzgxZGRjYWYyZTAgbGVnYWN5LXRydW5rCis3OTI4MCAyYjYxZWVkMjhmYWU0ZTkxZDBiOWE3OTY1ZTYxODE2Mjc0MWI0M2RkIGxlZ2FjeS10cnVuaworNzkyODEgN2FkNTYyM2Y0MTMyMWRiNDViNTUzN2Q1MDJmYmEyNDIyMzZkYjY4YiBweTNrCis3OTI4MiA4NDQwNWMyMmU0YzdmZmQ5ODkxNTVkOGY2OGZiMDMxZWViYjUzY2EzIHJlbGVhc2UzMS1tYWludAorNzkyODMgNjE1MWQwOWNlMDM5NDkzMTEzZGNmOWVkMWVjMDkxMGY5N2NlOGRkYiByZWxlYXNlMjYtbWFpbnQKKzc5Mjg0IDE1ZGU1MzkwNzA3ZGE0NDY5NDAxMzE2NTc5NGJmOTNkZmFhYjc1NDIgbGVnYWN5LXRydW5rCis3OTI4NSA5NmEyNDFkNGEwYWIxNzEyNjE5NTFmNDA3MzhlZjE1Mzg1ZmZjMDhkIGxlZ2FjeS10cnVuaworNzkyODYgZTJhOTY5M2I1NTVlZDY4NTEyYzU3NDVmM2ZiZGQ2YWVmMTg5ZDI3YiBsZWdhY3ktdHJ1bmsKKzc5Mjg3IDVmNWQ0NzM2ZGU3NGFkNmRmZTIxZTZhMTI0NjUwZTJkOTBkODJiZmIgcHkzaworNzkyODggMjI0YjcwZDNkMWQ0NGU1NjAwYTgwNTJlODYwMzBlNDUwMTA2MjBmYSBsZWdhY3ktdHJ1bmsKKzc5Mjg5IGM5Mzc1MjFlZDcwOTJhODFmNzJkZjJlOGVmY2UyYjRmNDQwMzc0MjggcHkzaworNzkyOTAgOWZiZTIzNzBkYzAyMTdhOGQzOGMwOTk3MmY2OWI3N2U3NGY5ODQ2NyByZWxlYXNlMzEtbWFpbnQKKzc5MjkxIDdmNDM1YzM4NWRhMjVjNGY1Y2M4OWMzM2IxNzQ4ZmIzYjViZGVmYmQgcmVsZWFzZTI2LW1haW50Cis3OTI5MiAwMWI1NzUxNWYxOTU2ODQwN2JhNDJlZDgyMTJiZWRjOWVhNTNhMjY5IGxlZ2FjeS10cnVuaworNzkyOTMgODA2YThjYWZjOTk3N2FmN2Y1YjY3NjNjNWVlYzMyOGE0MTFjOGUzOCBsZWdhY3ktdHJ1bmsKKzc5Mjk0IDZkZjc5OWEyYzI0ZTRhMjQ2ZTJmODczNmVhM2QyMmE0NWJkODFjOGMgbGVnYWN5LXRydW5rCis3OTI5NSBjZmM1NzcwMmFmN2ZkOTViOWEyNTljNjNjNzQ1MTVlMTNiNTIzYWYxIGxlZ2FjeS10cnVuaworNzkyOTYgNzY3YjA4MzE2NTllMDI3YTY5YzY2NDVhNTE1MGIwMzg1YmYxMWIxZiBsZWdhY3ktdHJ1bmsKKzc5Mjk3IGYwMDE0NTU0MTY2ZjkzYzNiZDc2OTc3MzBhZmQyZDU4OWRkNjg2ZTYgbGVnYWN5LXRydW5rCis3OTI5OCBiNzg3MmIwZThhYjI0MWUzNzlkZDQ5NTc3NjY4ZmUxNjAzMThhZWY2IHB5M2sKKzc5Mjk5IDczY2FhMzYxZjljZGUxNGJjMmE4MTE1MzhjOTY2NjU3M2IzY2M0MjQgbGVnYWN5LXRydW5rCis3OTMwMCBlM2ZkZmRiMWE4ZmY4ZmM2YWQ2MjhmMGU5ODQyYzg4OWE5NjY5ZGJjIHJlbGVhc2UyNi1tYWludAorNzkzMDEgMmUwZDU4YWRhZGJlMGViNDM4YTZkNWIxYmYxMTBmMGZkN2NmMDQwZSBweTNrCis3OTMwMiAxZGMxODQxMmE3ZWU1ZjAzN2RkMWIwYmVmZTU1NGE0YmExN2NhOWRlIHJlbGVhc2UzMS1tYWludAorNzkzMDMgM2M0ZGZlODZlYzJiNjQ4MjRhZWJiMTVkZDcyNGNmNzNmZmEwZDIwYiBweTNrLWppdAorNzkzMDYgMGExMjNjZGVkMmM5NzNiN2IxZmE5YTFmZjhmNTJiYWQzMWU2YTI3NyBsZWdhY3ktdHJ1bmsKKzc5MzA3IDgwYmVlYzhmYjc0MDNmMjA2OWIyMGNhMjA5YjYzNDY5NmU0YjU0ZDQgbGVnYWN5LXRydW5rCis3OTMwOCA1YjY3OWMyNDllM2MxY2Q2NzBlYmQ1NTBlNzcxMWE1ODY5MTc3YTgxIHJlbGVhc2UyNi1tYWludAorNzkzMTAgNDc3ZDM2ZTVkOTEzOTVlMTNkNDMwYjY4ZDgzZTg1NDc4MDdhMGZmMSBsZWdhY3ktdHJ1bmsKKzc5MzExIDhmMDE2YTgwMTY0MmY5ZjkzZTgyY2NhZTcwN2UzYmJjY2E2MzVlYzYgbGVnYWN5LXRydW5rCis3OTMxMiBlMDBkZDA3MDU2YWFmMzk3MmRhYzdjZjJiZGYyODZkMDJlN2U3ZWMxIHJlbGVhc2UyNi1tYWludAorNzkzMTQgMGY0MmYzNGMxNmU4MmIxMGMzMzNjZGRiMmU4MDY3Nzk4NWZjNjM3MCBsZWdhY3ktdHJ1bmsKKzc5MzE1IDY1ZmY1MjZlMDVlYmJkNTUyNGZkYTY5YWQ0MmJhMDI3NmU0YjBjY2IgcHkzaworNzkzMTYgY2Q5ODQ4Y2YxODQ3YWRiMWNjYjk4NTEyYzU2MjA4ZmY5MGY4NDNjNyBsZWdhY3ktdHJ1bmsKKzc5MzE3IDMyNDRlZmI2ZDg4Zjg4YWFmMWJkZjZkMTZlZThjYjI0ZWVkN2M5MTEgcHkzaworNzkzMTggNTQzNTg4MDcxM2E3ODNmYTVhNjZhM2YxMmU0YWQ4ODdlNGViZjE2NyByZWxlYXNlMzEtbWFpbnQKKzc5MzE5IDE3ODE2OTU4ODZkY2U4ODdhYTcwZDc0MmU3NGNhMTk0YzMzYTNmNWIgcHkzaworNzkzMjAgNjg0Y2Q3MzgxNTM1YTVhMjA5MWE4YzQ2OTVkZDIwN2IyYzViZDcwYiBsZWdhY3ktdHJ1bmsKKzc5MzIxIDhlOTliNjAwMGYwZGZlMzNkMWQ5ZTUyMzJiOGFiZDlhOWYyMjdhMjYgcHkzaworNzkzMjIgYTlkYjUxY2YxZmJjNGRlZGQzNmZhZGY5NjU3MmRkMzFkNmE4ODg2NCByZWxlYXNlMjYtbWFpbnQKKzc5MzIzIGY0MjhmNjZmN2U5YmI2NmQwOTA4M2NjZWNiNzFmMDc3OThhOTkxMDAgcmVsZWFzZTMxLW1haW50Cis3OTMyNSAxMmVlNDY0MzVkMDE3MWZhMDkwYjg3NTFmMDk3M2EyZDJmN2QzZTNmIGxlZ2FjeS10cnVuaworNzkzMjYgZmIzZGE1NmQ1NDhmMGQyODgyYTMwN2Q0NDNmOGUxNDdiZmQ3MGExYyByZWxlYXNlMjYtbWFpbnQKKzc5MzI3IDkyYzkzMjQ2MjViNmE1YTAwMWMwYzg2M2U2YTgyOWYzNzgyZGYyMjIgcHkzaworNzkzMjggOGU3NmU0NmMxOTk0NzU3ODkwNmQ3ZjQ0ZjY3NDExYTdmOTRkODkzOSByZWxlYXNlMzEtbWFpbnQKKzc5MzI5IGIwMWVmZjRlZmZkN2VmYTQyNTgzZDRlMDAzZTMzZjgyYTllZmU4ZTIgbGVnYWN5LXRydW5rCis3OTMzMCBmYTVlMjk5Y2UwOTFjNjc2ZjBjZDJhYTc2YTQ5NDRhZmY2MGU3MDMzIHJlbGVhc2UyNi1tYWludAorNzkzMzEgYTcwMjY0OGM4ZjQxMDQ5M2MyYWY0MDZkMDExMzliMmUyZGMxYmRmOCByZWxlYXNlMjYtbWFpbnQKKzc5MzMyIDNiYTIzN2EzMjZjMjdiOWNiZWNjMzA0ZGZmYzU0NzU4MzMwZWJkNjEgcmVsZWFzZTMxLW1haW50Cis3OTMzMyA1NmRkNWQ1MDcwYTVhNDU0MWM3ZTU5ZWFkZDJmYTVhZGIzODk4MWFjIHB5M2sKKzc5MzM0IGIwZWI5ZjZmMmQxMGIxZjMyOTViNjhlMzQ0MWVhNmJjMzIwNDJhN2QgbGVnYWN5LXRydW5rCis3OTMzNSBmMjBlOGI5MWY2ZThkYTk5MmIxZjFhNzdjZjU3NDNlNzQ3NGU3M2I5IHJlbGVhc2UzMS1tYWludAorNzkzMzYgMTAyNjIzZDY4NDNmYzQ5MWQxZGZlZTE2ZjI3ZjE5OTFmN2U4OTE5MiByZWxlYXNlMjYtbWFpbnQKKzc5MzM3IDZlMWRhZDg1MzAwN2EyYTM0ZWJiZjJlZjUwZTIzZjg3NmFkMWQyNDIgcmVsZWFzZTI2LW1haW50Cis3OTMzOCA2NjU5NWQ0ODRlYThkNWZjNzc2NDA2MWQ4MjgzZjA1YTEwMDM3ZmI4IHJlbGVhc2UyNi1tYWludAorNzkzMzkgNDk4NmNmMGE5MWI4ZTljYmNmNGZlZTZiNDk1MjcxY2RkZDAzYWM1YSByZWxlYXNlMjYtbWFpbnQKKzc5MzQwIGU5Yjk1OGU4MzkxYmQyZTM0ODRhOGFjYjE3MWE5YjZiMjQ1MDEzNDQgcmVsZWFzZTI2LW1haW50Cis3OTM0MSAxNTU2ZTY5N2IyZDcwYjFhMzYwNGUyNjJiMTM4MWQ5YjJmOTkzOGQ0IHJlbGVhc2UyNi1tYWludAorNzkzNDIgZjg0ZjgzOTYzYTc4YWQ2NDM0Mzg2YjE2OTViYzQ0YjUxMzQ5OTk5OSByZWxlYXNlMjYtbWFpbnQKKzc5MzQzIDI3Zjk3MjQ0Njk4ZWRhMDYwOTI1Mzk0Y2VlZTEzYzU1ZDNkYTU3YWUgcmVsZWFzZTI2LW1haW50Cis3OTM0NCBiMjE0Y2E4ZWI2YmQwYWJlNWYxMWUwM2U1ZjVmNWUxNTRlODYyYjY5IGxlZ2FjeS10cnVuaworNzkzNDUgNTJkODQ1ODMxYWU4NjRlMDBkNTJkMmI5MDVlZTI1MzdiMGZmMTcyOCByZWxlYXNlMjYtbWFpbnQKKzc5MzQ2IDI4OTAwNmRjNDZlZTI0YjQ2NjJiYTE0YWY5ZjE4OWU3MjNjMDBlYjcgbGVnYWN5LXRydW5rCis3OTM0NyA4MWI3NTA5MjQwOTE2ZWRjNjI3ZTcxMjNkMWQ2ZjU1MzgxMDI3MTBiIHJlbGVhc2UzMS1tYWludAorNzkzNDggOTg4ZTA0NTdlMzEzMzk2Y2Q1MTQ1OGEwYmM0ZGZkYTViMjk2NTVlNSByZWxlYXNlMjYtbWFpbnQKKzc5MzQ5IDcyMDExODEzNjBmZGYyN2QwZDE1YzQzNTRiNzU1MjRhMjRjZmI3NmMgbGVnYWN5LXRydW5rCis3OTM1MCAzN2RhOWJjNDYxNzQyZmM0ZTQwNjhkODY3M2FjZjljZmI2Mjk1NTljIGxlZ2FjeS10cnVuaworNzkzNTEgY2M4ZTM2OTYyYmFjZTZjNTM5ZjIyNWMxMTA4NWU4MzE5NjU0MDNiNiBsZWdhY3ktdHJ1bmsKKzc5MzUyIDk3NjI4NDg0OWU5ZDgxNDEwY2UwNjRiMTllZTFmZDViZmNiZDZlNDcgcHkzaworNzkzNTMgZDYwYmZiMWI5YzA1MmU3M2U4NDAzN2UxYThiZmJkOWExODFkMjM2MyByZWxlYXNlMjYtbWFpbnQKKzc5MzU0IGU5MWEwODZiNDE3ODNlNzM3NGNkNTg1OWJiOTg2ZDlkODQ5YmI3YTQgcmVsZWFzZTMxLW1haW50Cis3OTM1NSA1YWFjYzc2ODBkM2Y3MmJmZjJjNjI1NWU3ZTVjOWJkMTIxZDg2OWQ3IHB5M2staml0Cis3OTM1NiA0NDY5NjQ4MmFjNDJhYmNlNmI4ZThhNDk0NWE5ZTZkODcwZmViODQ0IHB5M2staml0Cis3OTM1OCAxZTc0MWViMzBiMTcwNGEzNTM2ZDg2NzE4YTRjMTY2ZmQ0ZjQ2NmMyIGxlZ2FjeS10cnVuaworNzkzNTkgNjU3ZTdkMjEzMDUyODljYzQwMWJkZTJlOWJjZDc0NGFlY2ZhYzMyYiByZWxlYXNlMjYtbWFpbnQKKzc5MzYwIDUwNWNmZjEyNWEwM2M2OTk3YTg1ODcyMDhmZWY5YjAwNzVkMTZmMzQgcHkzaworNzkzNjEgMDMxNmU2YTI4YTU1MzU4NzFiM2FiN2M1MzU5ZmM2YmU3YWQzMGZkYiByZWxlYXNlMzEtbWFpbnQKKzc5MzYyIGRlODRhNmQwZTY5NzBjMGU4OTBjY2Q1NzlhYjZlYjFmNzQ4ZjEyYTIgbGVnYWN5LXRydW5rCis3OTM2MyA0YmM4Zjk2NTNlOGUyYmQ3M2E3MGQxOWFhZjkyMmU5MDVhNDAyOTBjIHJlbGVhc2UyNi1tYWludAorNzkzNjQgNTk5M2RhNmQyNDA5NTE1MWEzMTYxMjRmY2E3NzRkNWI1ZTcyNTY1MSBweTNrCis3OTM2NSAxOTU3YzI4OTQyOTI1YmI4ZGVmZmJhZWJhMDQyNzY1NmJkNjY0OWVmIHJlbGVhc2UzMS1tYWludAorNzkzNjYgMDNlYWI5OThiMDdhMTVhMjY3OGRhNGQwODdhODY2MWZlMTI1MzBhZCBweTNrLWppdAorNzkzNjcgNjJmYjA4NmEzOTc1ODJhMjA2ZmZlMDcwNWE1OGJkYWIwYzcwN2IyNiBweTNrLWppdAorNzkzNjggY2QwY2E1NmI3ODgwZThjNDVmYTQ5NjY3MDUxZGQ2ZGM3OWM5NTU4ZSBweTNrCis3OTM2OSAyM2RhNTY2MDdiMzNmYWVmOTAyZTJhOTQyMzNjM2RiZjRiMDcyZGZjIHJlbGVhc2UzMS1tYWludAorNzkzNzMgZDhmODU1MzMzZmI0OGI5ODY1MjMxMTliZGVkNDdiNDk0M2M2ZTcxNiBsZWdhY3ktdHJ1bmsKKzc5Mzc0IGQyZGVhYTcwZmFkYjQ1Y2M0MDE3NDljZGY2OTRiMTMyYWQyMWNiNmYgbGVnYWN5LXRydW5rCis3OTM3NSAwYWJmYTI2MDdmNTRlYjg2NTdlMzJkZjUzMjk0MTVmZDhlMmQ2ZmMzIHB5M2sKKzc5Mzc2IDkzNGNiZTczNjgwMzcyY2UyODU1YTI5OGY3MjRlMTgyMjQ3OGVjZWUgbGVnYWN5LXRydW5rCis3OTM3OCA1MzJkNzE0MjBmNDYxNTU4NTI0NGFlZGJkOTNiYzU1N2IwOTBjNWZmIGxlZ2FjeS10cnVuaworNzkzNzkgMjI5ZWE4Y2NjNTUzMDc1YzY0NDdmYWMyNjlkZGIzNjZlMTcwNjRiZCBsZWdhY3ktdHJ1bmsKKzc5MzgwIDgzZmE0Zjg5OTU2ODgyZjVlYjA3Y2E2NTI2ODk3MGRmNGI4MjAxYTYgcHkzaworNzkzODEgMTc5YzY0NzM4NjMzMGIxOGJkMjM2Njc1YTllZDIwYmZhMTM5NzZiNSBsZWdhY3ktdHJ1bmsKKzc5MzgyIDYyMzg1ZDliN2RhMDQzOGM4MjY2ZmEyNWUwOTA0NDcxYmMxMjc3ZjQgbGVnYWN5LXRydW5rCis3OTM4NCA3NDMwZmE3ZWVhOGNiOWY5MDA0MTNlOTU0NjVkMDFiNTI1ZmFkMWQxIGxlZ2FjeS10cnVuaworNzkzODUgNGNlYjVkYzM1Y2M2NWE2NGZhOTRiY2ExYzczZTY0NWY0YTU5NThhMyBsZWdhY3ktdHJ1bmsKKzc5Mzg2IGNhYzY2MWRiNzc5NWYxOWM2YmYwYjdmMWZlZTc3ZTk1OGQ2ZThjOTkgcHkzaworNzkzODcgNDk2ZDc2MzYwNzYzOTQ1YjZlMTJjOTgxYjljNTQwNGQzMWY1NGFlNiBsZWdhY3ktdHJ1bmsKKzc5Mzg4IDJlMDgxM2Q2NzM4ZGJmNGNhZTZhYjlkYzNlYTYzNjVkMjU1YmI3YTMgbGVnYWN5LXRydW5rCis3OTM4OSA3MjUxZTczN2E1ZDhjYWJkNmRiZjcyNGExNGI5ZjM3YTFjNzM4ODVlIHB5M2sKKzc5MzkwIDljYWFhZmQ1OTlkNjUzNDNiMTRmMDNlYjNmZTE1YjA0YzEzOTg4ZGQgcmVsZWFzZTI2LW1haW50Cis3OTM5MSBjM2MzNGY4NDc5OThhMDA2NjU3NzYwZDA3NmZjOGJlODI2ODhlN2U3IHJlbGVhc2UzMS1tYWludAorNzkzOTIgNGI4ZGVjYjQ1NzJjZDcwMmU4Yjc4MDI1ODI5MzM5OTE4MTIxNzNjNCBsZWdhY3ktdHJ1bmsKKzc5MzkzIGU4YjA4ZDc3M2U3ODVmODcyZDI1Y2NjMDg2ZDRkMWE0ODBjZDE1ZDEgcHkzaworNzkzOTQgMDMwOTYyMDkyMzczZTk1NDI5NWU5MGMxOWFkZGI3ODU1YzBlOTY3OCByZWxlYXNlMzEtbWFpbnQKKzc5Mzk1IDI0OGE3YWRlNDQ0ZmJlZjU0ZjE1YjhjNDU4NjVjNjcxMzAwNWIwMWMgbGVnYWN5LXRydW5rCis3OTM5NiBlZDlhM2RiYzMxMmU5YjBhNTJiNmY4MmU3MjBjZGFkNTMxMDBjZjc5IHJlbGVhc2UyNi1tYWludAorNzkzOTcgZDExZmJjNzk2NDk5YTMzOGQwNDAyYjg4OWE5MDRkYTk1NDEzOGMzOSBsZWdhY3ktdHJ1bmsKKzc5Mzk4IGQ2ODkzYzcwZGY2YTQ3ZDE4MWFjNTdjM2I2ODZlNTU4NGRkNWJjMDAgcHkzaworNzkzOTkgZWIxYjY0NjhlOTc3NDZmNjMwOTdmMmY4MDZhM2M5ZTk5YmUzY2Q2YyByZWxlYXNlMzEtbWFpbnQKKzc5NDAwIDVkNTQ2OTJiNmRjM2UzZTNlOWQ0YzA5NjhjZjIyZjUwODM3MTE2M2YgcHkzaworNzk0MDEgMDlhN2ExOWU3Y2I5YjA5MzhmMDJlMDk3ZWY1N2M0MTczNTA3ZTgxYiBweTNrCis3OTQwMiAzYjRlOWZhOWMxZThkYzFhMzFhNDRjODllNzU2ODZjYzcyMzcxMTlkIGxlZ2FjeS10cnVuaworNzk0MDMgNWY5YTcwNjRkNjJhYTAwNTkzNjAzMDE0NTNkODkxMjM1ODY1MGFiMCBsZWdhY3ktdHJ1bmsKKzc5NDA0IDRlZjY1ZTIzOTZhZTlhNWVlYWM0NGVkNzQyNTVlZGI5NzY3ZGEwOWYgcmVsZWFzZTMxLW1haW50Cis3OTQwNSA0Zjg0MWRmOGM5NzY2ZjkzNWU5OTM3NGMzYjRiODBlNzA2N2UxNmQ0IHJlbGVhc2UyNi1tYWludAorNzk0MDYgZTVkZDlmOTg2NDQwYzg4MmZiZjRjMGU5OWU3MTdhNThlZjJkOGZjZiBsZWdhY3ktdHJ1bmsKKzc5NDA3IDBkZmQ2MjA3NmRlZDQxZTIwOWY1ODM0MWE2NDA3NmY1NWUxNDdlMjkgcHkzaworNzk0MDggZTFhODRmMjIxNTM3ZDNiMzY3NTM4MmY5N2NlMWRhZWI0MjU1YzliMiBsZWdhY3ktdHJ1bmsKKzc5NDA5IDFhYTY4NDY3MmNlNmZhNjZiNDQzOTk1MDQzODFmOWUzMjY1MjE1MGYgcHkzaworNzk0MTAgZTE4ZDM4MjAxMjgwNTc3ZTE0MmY0ODEzNzAyM2U5OWQzNzdlZjJiYyBsZWdhY3ktdHJ1bmsKKzc5NDExIGM5OWMzNzljZWQyZmMwNWYyOTcyN2JhMjZmOGEwMjhmY2RmZTJhMWEgcHkzaworNzk0MTIgZDZjYTljZDFiNDExZTY1MTEwMTFhNWQ5MWU3MzgyYmI3ZTFhOTBjOCBsZWdhY3ktdHJ1bmsKKzc5NDEzIDczMjkzMTJmY2JkN2E1MjRkYWIwM2JiYWJiYjU2ZmRiOTcwZTc4YTggbGVnYWN5LXRydW5rCis3OTQxNCBmY2MxMDgzM2ExYzliNWE1ZjBlZGE5M2NhOTllYzdjZmQ4NTE4NjE0IHB5M2sKKzc5NDIwIGUyNzcwYmYzMmRjZjY4Mzk3ZDJjNWNiZmQ2YTU2OWMxNzk5MDZhNmYgcHkzaworNzk0MjEgOTM4Mjg0Y2RhMTViZjU4MTIyMjAzZWVkZjdkOTAxN2Q0N2UyNDIzMyByZWxlYXNlMzEtbWFpbnQKKzc5NDI0IDE0NDMyNzI0ZDBmZTdmYWFiYTA5OTIzYzdjZTIyYWY5MzFlMDRhMGMgYnJhbmNoX2xpYmZmaS0zXzBfMTAtd2luCis3OTQyNSBlNmI5ZWY0OWUzM2Y5ZjNiMTFmNjQ3NzlkN2U2OGQ0ODkzODk1NzE5IGxlZ2FjeS10cnVuaworNzk0MjYgZTBiOGVjYTIyNTI5MzU5NjllMmRiNDdlZjEwY2YzOTEwY2Q5ZGViZSBsZWdhY3ktdHJ1bmsKKzc5NDI3IDM4ZTQxMDA1MGRjN2MxNWQ1ZTA0YjBmZjI4ZGY3MWQ1NDNjZWYyNjMgbGVnYWN5LXRydW5rCis3OTQyOCAxNmE3ZDMyNjA1YmI4MzJkYTBiMTA1MjQ4ZDRlN2IzMjkyZDRlNWI1IGxlZ2FjeS10cnVuaworNzk0MjkgMWEwZTIxNzA2M2I3NTQyOGM3YWQyMGQwMTg4Njk4ZGIwNWYxNDAwMSBweTNrCis3OTQzMCA4NzAxNTgxZmI0NTUwNjM3MzdjOWIxMGVhYTYzNWM0NDMxNDc3YTlhIGxlZ2FjeS10cnVuaworNzk0MzEgMTg4Zjg2MDc1OWMxNDA0ODgzOTYwZDNjN2ZmOWEzYWExMWFjYzQ5ZiByZWxlYXNlMjYtbWFpbnQKKzc5NDMyIGQ4MTg3ZWQ5NDMyNTYwZTM3M2M0YWM5MjUyZDcwMGVmMDMzYTJjNjEgbGVnYWN5LXRydW5rCis3OTQzMyBiOTA3MjJkM2FlZmEwYmViZWQ2NmZkNmI3ZTVjNGRkNGJkOTc3MjgwIGxlZ2FjeS10cnVuaworNzk0MzQgODI2MzdlNjY4Y2ExY2NiNmI0MWMwYTAyZTFkNDA0NDZmNjM2NTY3ZCBweTNrCis3OTQzNSAwMzBkNmJmMWQ5OTU2Zjc3MGY5ODFjZDJmYmM2ZDc2NTJjNzYxYzRiIHJlbGVhc2UzMS1tYWludAorNzk0MzYgOTVhNzhhMmQ3MDBkODBjYjgwNzM5NDM2OGEzN2E4ZWQ5YWQ1NGQyZiBsZWdhY3ktdHJ1bmsKKzc5NDM3IDk0MjFmNjdiNmMyYTE0NjBiNWFhYjNhMDQwM2U2OTQ0ZDVmMmQ1NzIgbGVnYWN5LXRydW5rCis3OTQ0MiAyMGJhZjYzYjA5NGNkMGJkNjcyOWU0MTYwNmJlM2MxYmE3OWJlOGM1IGxlZ2FjeS10cnVuaworNzk0NDMgMmVjYjhlOTk2MGZjM2E4NzFiNzU0MjI2NjA4YzAzMmY3NjQyMDMyOSBsZWdhY3ktdHJ1bmsKKzc5NDQ4IGM4ZWNhYmJlODAxNjk5OTA0YjExNTAyNzc2YTI0MTQ5NDkxODViYjMgbGVnYWN5LXRydW5rCis3OTQ0OSBlNDA3ZWJhOGUzOGQ0NDlmODE4MzI5M2JlMjk1MmFkMmJkZmY2M2ZkIHB5M2sKKzc5NDUwIGFjYjFkYzY2OGE5N2JiOGU0MzA5ZjZiMTljM2Y1ZTkxZGVkMDYyOTIgbGVnYWN5LXRydW5rCis3OTQ1MSA0YmJhZmRmNGQ1YzFiZWJiMmEyMDYzYzEwYzEzZmRjODA0NDgwZTg4IHJlbGVhc2UyNi1tYWludAorNzk0NTIgNjYwYjlmMjRlZGFjOGUzNzE1OTQ5ZTc2NDY5ZThkNTZjMzcwZTMyZSBweTNrCis3OTQ1MyA1MjZiYjA4MmMwNTUyNWM5M2ZmZjExYjEyOTk4ZGVkNDUzYjJiMGFkIHJlbGVhc2UzMS1tYWludAorNzk0NTQgNTY0MTY5MTUxNTEwY2ZlOTFmYmUwYjg3ZGIyMTcyZDM3MTQxOTdiMSBweTNrCis3OTQ1NSBlNWZlMmY2MjU5ODNjYzZmM2YzMWJkYzk4ZjMxYmFjYjE2MjY0N2I0IGxlZ2FjeS10cnVuaworNzk0NTYgMGY2YTBiMWRiNGUyYjFlYzBiN2M5NDk1YWYxZWVhMTYzMmNmYzkzMiBweTNrCis3OTQ1NyBiMjI3ZGI5YTAwMjk3NDRiYmNmYjEyMjA4ZWIwNzg2NzBmOTExMTAwIGxlZ2FjeS10cnVuaworNzk0NTggOGM1YzVlODZmYjIyN2E2MjdiNjhlMGMwNzc4MzllZTExNjlkYTgwNCBweTNrCis3OTQ1OSAwZTdhZTUzYjRlNzkwMjRjY2FlNmEzM2RhYWM5N2IyNjkxNTdiNzk1IHJlbGVhc2UyNi1tYWludAorNzk0NjAgZTgxMWFhMDk0ZjE5NDI5NTdlNDhkYjY4OWYyNzE4YjIyM2E5Zjk3NiByZWxlYXNlMzEtbWFpbnQKKzc5NDYxIDkxNzBhYTk0NGYyOTMzNDViZDZmOGRhNzZjN2FhMDE5Y2E0ZGViNWUgcHkzaworNzk0NjIgZTExODNhMTM3ZDhjYThmNGQ3YjE1YTc1MWQ1ZDY4MWE0MWY0Y2RlNCBweTNrCis3OTQ2MyBhYjMwN2Y3ZGVmYTFlYzc5ZDNiNmE2ZDk5N2E1NjU4M2UyMDM4MTJiIHB5M2sKKzc5NDY0IDIyOTQ2ZDAwZWVjY2VmN2U0NmM3NGRlZWMzZTY1ODhhYTY0MjkwODcgbGVnYWN5LXRydW5rCis3OTQ2NSBmOTZhZDgwMDcxMmVlNjFmNGFhMTI5MGM1OTYzODEyY2I2ZTkxZGM0IHB5M2sKKzc5NDY2IDg2YjcxZjQwZThhYWUyNzA0ZDA4ZjVlNmU3Y2I3MmNhYjBmNGQ5YmMgcHkzaworNzk0NjcgNzFhNDVlY2M0ZGM5MTFlZDAzYmEyNzZiMzIwZjNkZDdhM2YwZTJiMSBweTNrCis3OTQ2OCAzMDllMmQzZThkY2MyMWFlNzBkMzQ4ZjViMDUwZmU4ZjZkOWI2YWMyIGxlZ2FjeS10cnVuaworNzk0NjkgOGU2YTE2MTU3ZmFmMWJkZjU0NGI0NTY3NTQ4ZTJlZGEzZDllZmE5ZCBweTNrCis3OTQ3MSBhMmFhNmRkZmU4ZTI5NThhY2E2ZTYyMzA0ZjU4MDE0YTNhOTIyZjMzIGxlZ2FjeS10cnVuaworNzk0NzIgZGI1YTNhMjc3YzBiNTgwZWJmNTFmYzRhMzE5MjAxZDA2ZDBjNTlhMSBweTNrCis3OTQ3MyBiYjJjYTFiNjMzMjFhNzhiNDEzMzQ3YWQ4ZjRjYWJlMGU0Y2U5NGEwIHB5M2sKKzc5NDc0IDQwZjc4N2IxNTFhYzZjMDUzNWE3MzU2ZTFmZDI2NDUxZTYzMjI2MzYgcHkzaworNzk0NzUgMmI2MzIxOTE1ZTkyYjYxYTZjODY5ZTc5NzQwOGQ1NmVhZDlkNjNhMiByZWxlYXNlMjYtbWFpbnQKKzc5NDc2IDBiYzA0NTI1YWY2MzhiZDAwNGIxMTA0NTVjZmQ1MzJkNjMzYmQxNDQgcmVsZWFzZTI2LW1haW50Cis3OTQ3NyA2MDAwOTYzMmVkMTE5ZjdiZGYzOTk4NWU2NzJiZDVjYTU5ZDZlYzgwIHJlbGVhc2UzMS1tYWludAorNzk0NzggOGVlMmJmODIxZjYyNjcxM2Y5OGJiNDlkN2JiNWQxMDQ0MzkxZThhZCByZWxlYXNlMzEtbWFpbnQKKzc5NDc5IGU2M2Q0Njc4ZmNhNzNmMjRkNDJlMTQ3MmZiYjZlYWE1NjkxOGVkOTcgcmVsZWFzZTMxLW1haW50Cis3OTQ4MCBiYjhiZDMzNThiY2EwMmNlNWE3MDFiYmI2YTdiNjQ4MWNhMDJlODJhIGxlZ2FjeS10cnVuaworNzk0ODEgYmVhNzVmZjY1MTE0NmRhYWQwMDJkNDFkODc4OTc2NzU2ZTUyYmRiYyBsZWdhY3ktdHJ1bmsKKzc5NDgyIGQ0OTM1MjQyNmRlNTEzMzNkMzdlNjY1MTQxOGNkZmIzMDAwOWVhNmMgcmVsZWFzZTI2LW1haW50Cis3OTQ4MyAyMTNhMGFlMmRiNjViMmUyNTE5OWUwMTA1YjQyZTA4MDgxOWJjNzYxIGxlZ2FjeS10cnVuaworNzk0ODQgMmEzMTBhNDQ4YTBhN2UyMDE0NWMyYmNkODkxZGI4Njg3YjMwYWEyYyBweTNrCis3OTQ4NSA1MWIyYWY5YzQ2OWViNGE5NTM2Y2QwOWRiMGIyODFkMTU5NGFiYTA5IHJlbGVhc2UzMS1tYWludAorNzk0ODYgMmQwNmM2YzdlNzMyN2RlYmRjZjZmYWNlMWZkZDA5NWNlZWQ4OGZkZSByZWxlYXNlMzAtbWFpbnQKKzc5NDkwIGJiYjM0MDUwMWYyOWZjMGYzMzY2MDQxMzdmMTUzOWEzZjAxNmQzMmYgcmVsZWFzZTMxLW1haW50Cis3OTQ5MSA5YjlmZDI5OTA3MmQ4ZmNjMzg0Njc1ZDg5YmY4NTRiYTVhMmE2NmE3IGJyYW5jaF9saWJmZmktM18wXzEwLXdpbgorNzk0OTIgYzNjODJkODA0MGQ2ZjRlZjY2M2JiZDkwYTVlNjVlODhkYTExZWZjZSByZWxlYXNlMjYtbWFpbnQKKzc5NDkzIDA0Y2MwNzViZGRmNWJiOTk2M2VmNTIwNTQyYWY3Nzk3YzJmYjUxN2MgbGVnYWN5LXRydW5rCis3OTQ5NCA2NmU3NTdkOGVhOTM0Y2VlYzFkNmI3MDc5NTk0ZTYwZjM0MWRlZGE1IGxlZ2FjeS10cnVuaworNzk0OTUgNzczOWFlZWZkYmMwMTQ0YzY5ZGI5NzZmOTJhOTNlMTAzOWE3OTZhMiByZWxlYXNlMjYtbWFpbnQKKzc5NDk2IGM5NmQyNzg2NzdhZjNjZDA4ZDhiZGMwYzQ4ZDY2MmNmY2RjODAzZTMgbGVnYWN5LXRydW5rCis3OTQ5NyAzMzI5YzA1ZTZlMzE5Mzc5Yjg4YWM0OTA5MWU0MDVkNzdjMTU3MjBjIGxlZ2FjeS10cnVuaworNzk0OTggZTRlNGJiZDM5YTIxM2NjZThjYmVkNzlhNzRhOWIyZTMwNzRhY2MzMCBsZWdhY3ktdHJ1bmsKKzc5NDk5IDQwYTJlN2FjOGE0N2UyMmEwMTU2Mzc1ZTlhNmI2MjU4Yjk3OGJlYzcgcHkzaworNzk1MDAgYTE0YTIwNWFiMWZiODQ5MDFkNWJlNmUxZmNkNjUxMWE0Y2Q4ZGM2MiBsZWdhY3ktdHJ1bmsKKzc5NTAxIGJjNjgxNGMzNGQ1ZjIwZTNlOTVhNDkwZTVkYTRhNmYzY2FlN2Q1ZjUgcHkzaworNzk1MDIgZjY5NzY5YWIwZWI4MTY2NzM1ZTU1ZDYzNmQ2OTE4OWM0N2Y5MzJmMiBsZWdhY3ktdHJ1bmsKKzc5NTAzIDVlMGZmNjUyODRmYTIwODliMDRlMzZjNjFiMjFhMjIzNzM2YzIxZTkgcHkzaworNzk1MDQgMWQwMDI3ZDM0YTUxZTIxYzk5MjI4NGViMzE1NDZiNzVkOTFiZmZjOSBsZWdhY3ktdHJ1bmsKKzc5NTA1IDEzNjE4Nzc1ODVmMmM0OTFlYmIwZTA3ZTZhMDU0MGM5MmMxNjVhNjMgcHkzaworNzk1MDYgYmYzYzQ4ZjI0MTdjNDQ3MTNkNDM0ODA5OGMwYWUxYTc4ODYxYTY5OCBweTNrCis3OTUwNyBkZGQ1NTA5NTFiODNmYjE3MGIwMWRlN2Y4OGYxYjczM2QxYTg1YTYyIHB5M2sKKzc5NTA4IDRkZDZlYjZiZTgyZmQ1MmYwYmU3NjhmZDM2ZTc4NTIxZTg0YzFhOGIgcHkzaworNzk1MDkgNjMyNjljNDE4NWM1MmU2OWQ2NTdmMmNiMGFjNDVjZjFjNDAxMzMwZiBsZWdhY3ktdHJ1bmsKKzc5NTEwIDBjMDI1ODRjNGU1MzRmZTdmMzg1YzE4MWY0NjMwMGYyZDA5NjM1Y2YgcmVsZWFzZTMxLW1haW50Cis3OTUxMSBhNjA5NTRlYjUxOGI5ODQ5YTkyNzMyNDQ4MDJkYjIxZTEyMzM1YzUyIGxlZ2FjeS10cnVuaworNzk1MTIgOTY1MWM4NGM1MjBkOWU4YmE1ZGM5MzM0NWU1ZWZlYTRlNmM5ZTU4MSByZWxlYXNlMzEtbWFpbnQKKzc5NTE0IDYwZjkxMjRmZGVhYzA1MTA4OWRlZDgwZTFlODE4NGUyOWJhMmVmOTUgcmVsZWFzZTI2LW1haW50Cis3OTUxNSA0MTlmZjcwMjQ0NzgzODllMGZmNTA4NmViZTRmNWE0NmFjMWVjOTU5IGxlZ2FjeS10cnVuaworNzk1MTggMzRkODIyMTk2ZDhiZDBkNmFiZDA4NjE4Yjk1ZDIxMjU3ZDIwNjA1NiBsZWdhY3ktdHJ1bmsKKzc5NTE5IGVmNmViYzA2YTc4NmRjMDBhMzg5MWY3OTQxZmVkZjA3OGQyMzkyNTYgcmVsZWFzZTI2LW1haW50Cis3OTUyMCBmZmU3Yzc5MWI1Yjk0ODc4ZjRhYWUzZTBkNzcxNzliNGUxNzIwNmM5IHB5M2sKKzc5NTIxIDEzMjMyMTJkYTE1NDAwNGFmZTcyODczY2E2ZjA0NmZhNWE1YWU5NGMgcmVsZWFzZTMxLW1haW50Cis3OTUyMiA1ZTllYWRjNzZlODdlZjdiZTZkMmFhYzQxZWFjYzU2ZmZjNDVmYzA3IGxlZ2FjeS10cnVuaworNzk1MjMgY2FkMTI2NDI4ZjQ4ZDc4Yjk3ZGE3NzFmYWI1ZDRiNzYyZDg5Yzg4YSByZWxlYXNlMjYtbWFpbnQKKzc5NTI0IDU3ZDhkN2YzMTdmNTAxYjQxNTVhOTk0NTIxMjFhMzI4Y2RlYTk1NmEgcmVsZWFzZTI2LW1haW50Cis3OTUyNSBmZDVjMGVhMjg3MGJhYzRiMGQxYzkyOTlmMDJjYmU3NWM0YWQwN2Q3IHB5M2sKKzc5NTI2IGU0Zjk2OTAxMmU2ODNjYWUyZWQ4OTE4MmM2ZTUxM2I4MWY0YjgyYjkgcmVsZWFzZTMxLW1haW50Cis3OTUyNyBkNTdjZjFhYTJkZDRkMDBjM2MzNzBhZTNkYzU5N2E4ZDAwNjMyNGM1IHJlbGVhc2UzMS1tYWludAorNzk1MjggOTllNTIzMTMyYWVhNDNkNzhhNzY0ZTEwNGM5MWM2MDc3OTQxYjQ1MCBsZWdhY3ktdHJ1bmsKKzc5NTI5IDg3YmMwZjEwODcwMjEzOTEwNzI5ZTUxYjMzMDk0YjJhYTA5YjAyOTQgbGVnYWN5LXRydW5rCis3OTUzMCBhMmU2Mjc4MjdiZjM1MDlhYjRhNjc4MWJmZmI2ZTNlODUyNzMwMTEwIHJlbGVhc2UyNi1tYWludAorNzk1MzEgMDFlOGIxM2ZhOTlhNTY1ZGM1YTllZTI1OWYwMTIzOGNlNjQ2MTY3MiBweTNrCis3OTUzMiBlY2I5YTY2MDliYjFjNTQ1MDliYjhjOGYxZjc3YTM4NjIyZjE3OGY1IHJlbGVhc2UzMS1tYWludAorNzk1MzMgNTkyMGY5YTVlMjJkOGQzM2MxMTI0NGI4MTVmZTIyMjhiNTMwZjkyNiBsZWdhY3ktdHJ1bmsKKzc5NTM0IDgzMjAyMmY2M2JjYmQ2NzU1NDA4ODE4ZDhhNjFiNmZhODY0YjMzYTIgbGVnYWN5LXRydW5rCis3OTUzNSA3YjhiYTAxOWNkMTViNTIwOTg3YTM4MTU5ZTNkYmVhZGE0Y2U4YzAyIGxlZ2FjeS10cnVuaworNzk1MzYgNGZjYWFkM2Y2NjliMjNmNmJlM2E3MDYxOTg1OGNhN2U4ZmJlNWNkNyBweTNrCis3OTUzNyA1NzBlYWUxNDgxZWI2MDExZmMwOWZjMmJjMzdlYzQ0ZWNhYzJhOGEzIGxlZ2FjeS10cnVuaworNzk1MzggYzM2ZjIzZGE4OGMxYWE1NDNmZDZjNDZhY2U2YTk2MjliZTNlNWIyZCBweTNrCis3OTUzOSAzNzQ4YmNhNGQ4Njk4YWIwN2M3NjA4NDEyNDFjYjE3ZDBkMDJiNzhjIGxlZ2FjeS10cnVuaworNzk1NDAgMjVhN2NlMDIzMDZjZGYxZDNjMTJiOWZmMjg3OTk1Yjk2ZWRiZWE0ZCBsZWdhY3ktdHJ1bmsKKzc5NTQxIGQwMGYyZWEyNWQyMGE0MWYyNDZkNjY4MGY1ZjMxYzdjN2QzMjNiZWYgbGVnYWN5LXRydW5rCis3OTU0MiA3YjY3YzM0MjkxN2NjZTY5MTA0N2E3YTUwMGJjMDFjYjg3YmVkZjQyIGxlZ2FjeS10cnVuaworNzk1NDMgMTNhODExMmVjYTUyZmMzY2Y0YzhkZTZiOWMzMTljZTllODEyMTNhYSBsZWdhY3ktdHJ1bmsKKzc5NTQ0IGE0ZGFkMjE4YzZlMzQ1Njg1ZDc1YTcyYTQxYTk3YzNiMjU1Y2I0N2IgcmVsZWFzZTI2LW1haW50Cis3OTU0NSAxZTJjOWZlYTdjYmUwMTBhNmRkYmViZjljMzE2M2RmMWNlNGFjMzg2IHB5M2sKKzc5NTQ2IDVjYzgyY2NlNDUyMTVmYzdlN2Y4YTMxZGZjOTJmM2EwZDA0ZWFiNjcgcmVsZWFzZTMxLW1haW50Cis3OTU0NyBjNzk2NWJkNWQyMDA0ZTJjN2YzMzI5ZGMyODRiNmM1NDgwMTMyMzY0IHJlbGVhc2UyNi1tYWludAorNzk1NDggNmRlM2RlM2FiNzFmNzUzNmE4YTEwOGZkNjVhYTQxOWQwN2M1MmJlNCBsZWdhY3ktdHJ1bmsKKzc5NTQ5IDg4MmQ2ODFkNTBhMDA0ZWVjNDQ2YTgyNzQwNzM3ODI0MTFkMzFhNTcgbGVnYWN5LXRydW5rCis3OTU1MCA1NGIwYTZmNzVlZDU3OTUwNmQ2YmEwYzg1MWM5ZDgwNmEzOTFhMzRjIHB5M2stY2RlY2ltYWwKKzc5NTUxIDc4ZTIwOTc3OTJiZWVhZDFjODJjOTQ5OWUxMzkwOWVhOTI1MWIyZmQgcHkzay1jZGVjaW1hbAorNzk1NTIgZmQ4ZmVmNmFmZWZkOGNkYmZkNGFjMjU1MjJjODg1YTcwMDg1ODkxMSBweTNrLWNkZWNpbWFsCis3OTU1MyBlOTVmODc1NWZmMWUzZjY2MzRmMmJlN2MyYTU1YzE5ZTNiMmU3YWQwIHB5M2sKKzc5NTU0IGI0ZGVhZWFiOTZlNzhkM2RjZTIzNTYzOTNkNTc5N2ViOTFiNmQ1ZGYgcmVsZWFzZTMxLW1haW50Cis3OTU1NSA2ZGY2YzE5ZmJhZTM1OGM0NTgxOGYzM2U4MzBhNjJlYjMzMjEzZjIzIGxlZ2FjeS10cnVuaworNzk1NTYgMDRlNzc1YjMzZTllMmEzN2VjNWIyMzU1NGE1ZDMxNDk4OGE3YjcxMyBweTNrCis3OTU1NyA5NjIwMWY0ODhjYzNjZTI4NGZlMDBiZjlhYjJmMGQzNzNkZWQyZjUxIGxlZ2FjeS10cnVuaworNzk1NTggYTQwNGUzNzAyZjc5ZjI4YzAyYzM5NmVjNTZhZTYxM2ZiYjhmOWYwNCBsZWdhY3ktdHJ1bmsKKzc5NTYwIGM4YTYwMWU3NDRjZjY4ODMwZGQ2NDMwZjYyMzdiY2FhNmU1NzFkMTYgcmVsZWFzZTI2LW1haW50Cis3OTU2MyBmMTcxNzEyODgwYzhlYmQyZjQ1MDYzODE2NTNlYTk2ODViZTYyOTI1IHB5M2staml0Cis3OTU2NCA2ZDM0MTVjMTViOGJmOTIwOGJjNDgwODRlMzc0MTljOWEwZTdhZjAwIHJlbGVhc2UzMS1tYWludAorNzk1NjUgMWJlYTU0MDRlMDg3YzBlNWZiNTM4MDcwMWJhOTRiOWNhOGZiZGJmMSBweTNrCis3OTU2OCA1MTJiODAyNTA3ODliNzcyOGMxNWViMDE4M2ZmMjdlYTViNzE0OTA4IHJlbGVhc2UyNi1tYWludAorNzk1NjkgMjQ3OGMzOGZlZmY3NDlmOGU2YWY1ODM2ZDZhN2I0N2E2NzVmMzdhNCBsZWdhY3ktdHJ1bmsKKzc5NTcwIDViYWQ4MThkMTRmMjg3M2YzOTM5ZmE3YjM2ZmY2OGFmMTVkM2JkMjUgcmVsZWFzZTMxLW1haW50Cis3OTU3MSAzZjQ0ODI1MjZmNTVhMjY4Nzg3YTAxZDI3OGIzNWY0ODY5Y2RjYzdmIHB5M2sKKzc5NTcyIDM4ODA2ZGYwNWQwOWQ2ZGVmOGM2NDc3ODRiOGE5MzQ5Mzg0ODliMTQgcmVsZWFzZTMxLW1haW50Cis3OTU3MyA0ZDlkOTc2MGM4OGJlZjZkNzAyMzM3N2U0YzI0ZGQwY2Q2NzQ4ODZlIHB5M2sKKzc5NTc0IDQxNWM0YmI0NWZlNjg3NzRmNGIwOGQ1ODZlODc4NzE1ZjQzOTRkZjUgcmVsZWFzZTI2LW1haW50Cis3OTU3NSBiNjQ3MzE1NGE3MGJjMzMxNWVlNWE3M2JhNzZlMGU0YWY0MjQxOGQyIGxlZ2FjeS10cnVuaworNzk1NzYgZWFiMzYxNjE3ZjZhN2QwNDE5ZGE0OGM5MTMxNjJjYzMyMjAxZjU0YiBsZWdhY3ktdHJ1bmsKKzc5NTc3IGJhYzRiMjg5Zjc5YWFkNTMwNmM4NDY2NjgxM2U2NzYyM2Y4MDYyNzcgbGVnYWN5LXRydW5rCis3OTU3OCBlYjlmZGE5MGRhNmVkODRkNTQ3Y2I5YzU5YzYzMWQ2N2UzMjcyNGIxIGxlZ2FjeS10cnVuaworNzk1NzkgZjM4OTE5YmIyNmNjNzExOWZkNWE4OWRjMjdjM2Q2NWY2ODk4ZGZjZiBsZWdhY3ktdHJ1bmsKKzc5NTgwIDdhNGEwYzY5ZTNhNWYyM2ZmMjdiZmQ3MjNjYjc4YTExYmYzMzcxODcgbGVnYWN5LXRydW5rCis3OTU4MSBiNTdkYTRhNGEzZWQ5NWViZDFlYWE2Njg2ZWQ0ZTNhOTJlMzMyZDA5IHB5M2sKKzc5NTgyIGU4MWNhODhkNDc4Y2M1NTgzMjE5ZTNmYTYzYjI5MzUzZDNlNmIzYjUgbGVnYWN5LXRydW5rCis3OTU4MyAxMzA2MDMzZDhhZDJhYjcxOWFjODM5YzE0YzgyMmY2OTM1MDY1YWM3IGxlZ2FjeS10cnVuaworNzk1ODUgZTM1ZmViOTk1YmQ5NmM0NTBiMmEwZDNjY2MyYzQwYzU0ZWVmYjIyOSBsZWdhY3ktdHJ1bmsKKzc5NTg2IGM1YjIwNjQ1ZTkzMzUwYzc0MmI4ODc1ZWVmZGRiZTBjMjdmYWYxY2EgbGVnYWN5LXRydW5rCis3OTU4NyBmNzc1NTZmZWJlYzgyMGNmMjAzNTYxY2ViZjNkOTNhN2VkMjA5OWQ3IGxlZ2FjeS10cnVuaworNzk1ODggYWU3Y2Y1NzhkZTVhZGRlMDAzOTZmNWQ1Y2IzOTY5MDU3YWVjMTgyYyBsZWdhY3ktdHJ1bmsKKzc5NTg5IDE3ZjA4ZDY1Y2MwZDgxZGQ0NzQyZDViZjlkNmJmN2U1NWZiNGQ3MDAgbGVnYWN5LXRydW5rCis3OTU5MCA1N2Y0Yzk5MDgyZGY1NjA5NzE2M2RkZmIwN2E3YzBlYjlhNzQ4MDVjIGxlZ2FjeS10cnVuaworNzk1OTEgNDhmZDY5YzJhMmI0OTRmMmIxMGIwOWQ4NWMzYzY3YjYxZTAzMTUwMCBweTNrCis3OTU5MiAxZGYzNGZhNDkxYmRhMDRiMDIyYjU2YzJmYWNhNWQ2MjY2MjViMTUzIGxlZ2FjeS10cnVuaworNzk1OTMgZDc3ZTM4NDYwZTNjYTdkNmIyYzhkZWI5MGUyYmQ4OWY5NDcyMzQ3ZCBweTNrCis3OTU5NCA0YjU1Y2VhNTUwNjc3NmZhZDg4Y2VkMzgwMTUzMDA3NWMzYmMxMmIwIHB5M2sKKzc5NTk1IDUxNDlkNDg0ZDU2YWM4MWRiNzVkZDFmMzU4ZWE1NDk1NTg4ZmI4ZTUgcHkzay1jZGVjaW1hbAorNzk1OTYgMjA0OTdkODVlMDExMmVjM2U0YzgxZmViMTU0ZjNiMzI5MDFmZTcxZSBsZWdhY3ktdHJ1bmsKKzc5NTk3IDNmMWQ2ZWQ0ODBkZDgxYjA0MzNiNDcxYmQ0YTcwYTE0NGZiOTQ1YTMgcHkzay1jZGVjaW1hbAorNzk1OTggZTgwNTJhNjBiYmI3YjZlZjMyZjBiNzA0ZWE3ZDQyNjQ3ZDVmOTBiNSByZWxlYXNlMjYtbWFpbnQKKzc5NTk5IGNmYmE1OWMzODM0MTVjMjkyYTU2NDEwMzQxY2I1NzE0NmRlZWFiMWYgcHkzay1jZGVjaW1hbAorNzk2MDAgODcwZmY2MjIwYTBiOTliMDQyMGMzY2UxYjY2ZmUzMjk5N2QzOGIzMCBweTNrCis3OTYwMSAyNzc4NTgzYmUyMWQ2MmNlZWE4NGYzZTA4ODViNWQ3NTBkN2MyMWFhIHJlbGVhc2UyNi1tYWludAorNzk2MDIgZDExMDFhYTk4NGMwNzViYzdkYzZlZTI5ZGM3MDdhZWFiOTIxYjA3MiBweTNrCis3OTYwMyA0YWMwNWQxZjYwYzE4MDY4YjY0ODQ2MTkzNGVhMDEzOTY0N2JlODkyIGxlZ2FjeS10cnVuaworNzk2MDQgNjZkYjAzYTcwNzY3OWM2OWE3ZTcwMDZjYzQyMzVmN2JiMmQ4ODk5ZCBweTNrCis3OTYwNSA2OTkyNDY3YmI4YjU5YzYzMTBkNGI1MTg4OWE1YWQ2MDkwMzg0MThjIHB5M2sKKzc5NjA2IDQzYTgzN2QyNzI4YTEzNDFmMDQ2ZjAxOTFmYWY3OGU0NzJkN2I1ODQgbGVnYWN5LXRydW5rCis3OTYwNyAxZmY4ZGQ2N2JlODIyN2E3NzAwZjg4MmQxYzE1YmIyNWExMTdjNTY1IGxlZ2FjeS10cnVuaworNzk2MDggMmY1ZGMyZmEwZTU2YTI1MTAxYjMwYWZkZmNmNGMwNTM4MzY4YjNkYSBsZWdhY3ktdHJ1bmsKKzc5NjA5IGNjYTRiNzJmNDUwYjY0Nzg2NzJhODhkZWQ5OWVhMzIxNDhiOGY2ZjYgbGVnYWN5LXRydW5rCis3OTYxMCAyNTVhNDAxYzE5YjA1YWFlNmE2MmZhNTAyOTIxMjkyM2UyZTc3N2ViIHB5M2sKKzc5NjExIGVmZWJiN2JjYWU4YjE2NGIwMjUxMDUzYzkyOWIyMGQ3YmI1NTQ1YWEgcHkzaworNzk2MTIgYjQ3OTZlZmNhNzE2NGZmZmNjMmNhMjE4NDA4MTM3NWIwM2I3YmQ5MiByZWxlYXNlMjYtbWFpbnQKKzc5NjEzIGExZGFiZjRlODg2NjU2MWJiNTc1N2YzYWJjNjRmZjA4Yzg4NmViNTYgcHkzaworNzk2MTQgN2RjOGI4OGJiMTVhNDFlNGI2NmViOGU5ZTIzZjM4NmE3NWIwNDYyOCByZWxlYXNlMjYtbWFpbnQKKzc5NjE1IDhkNzMxN2M5MjRjZWY4MjQyNjllZWRkMjFlNTY4MzgzNDExNTgwOWUgcHkzaworNzk2MTYgZWVlYTM0MDE0YzgwMjY4NmQ1NmJlMTgyNDkwMWIwYjg0ZTZkMjk1MyBsZWdhY3ktdHJ1bmsKKzc5NjE3IDI3OGU3ZWNjMGY3N2VmMGRlNjIzYTEzYjMzM2U0NjZkMDY2NDI2NDIgbGVnYWN5LXRydW5rCis3OTYxOCA5ZDUwYmNkM2YwYzljYTg1Yjc4MmUzNDhlNGQ3Yzk2ODVlZWM2NmYwIGxlZ2FjeS10cnVuaworNzk2MTkgN2M5MjM4MDg1YTVjZTBhMjZlMjEwYTM1NTIzOTZiMGQ1MWRlMDllZiByZWxlYXNlMjYtbWFpbnQKKzc5NjIwIDM3N2IyNmQ4NzZlMGRmZTdhZTU5MWVjNmVkNmRlM2YwZWZlNGFjZDIgbGVnYWN5LXRydW5rCis3OTYyMSA1M2FmY2RjOWFlMGFiYzY5MTBjMzVjMjUxMDJmOGJjMTc1Y2U4ZjM3IHB5M2sKKzc5NjIyIGY3NmMzZGVjODU4YjdiOWM4NTEwMzdmZWQ4N2FhMWQzYmI5OWY1YWUgbGVnYWN5LXRydW5rCis3OTYyMyA3MGI3ZTRhN2Y3Y2UyMGIyZTc3MTEzMzYzYjc5ZTljYWE3NTM1MGY3IGxlZ2FjeS10cnVuaworNzk2MjQgYWFiNjQyODNkMDBhMWZlNmU0NDM5OTRiMmMzOTEwNDdiOWY0MWQ5MiBsZWdhY3ktdHJ1bmsKKzc5NjI1IDg0ZWNiMzVhMDZiZGRmNmNhMTg2YzY5MmE1NTg3OGUzNjdhZTNlZmIgbGVnYWN5LXRydW5rCis3OTYyNiAxYjVkNWU3NGY3MzhmNDFhNDc0OGRiY2Q3MTc2M2E2MzcxNmYwMDA3IGxlZ2FjeS10cnVuaworNzk2MjcgZjBiYjEwY2UwNWM3NzI2NjcwYzUxM2VjZTQ0MDE1ZjBhMjQzMTg5NyByZWxlYXNlMjYtbWFpbnQKKzc5NjI4IGFlYTMxOWVhMjZhOGU5MDMyM2UzYzUxNzgzMmVhZGU2MTNhNGY3N2UgcHkzaworNzk2MjkgZmZhMGFhNzBjNzQ2ODNmNDUwYjhmYzY5ZGRlNGYzYjFjYjNhMWVhOSBsZWdhY3ktdHJ1bmsKKzc5NjMwIDc2NTk0M2MxMTE1Yjk1YmZkYTNjODI4ZDViMGRlMWQ2OThhMGYwNTEgbGVnYWN5LXRydW5rCis3OTYzMSBjMzRkZGNhMzY3ODZjMWM0ZDcxODVlZTMxYjllYzc1OWE5NjkwNTQ5IHB5M2sKKzc5NjMyIDU0NjJjNWE5MWY4ZGNiOWRjOGY0M2Y1MWUyODhiNGJkM2IxNjcwZGIgbGVnYWN5LXRydW5rCis3OTYzMyAwYWI4OWU4YmRlZGM1NzY2ZGUyMTdjYTI0N2U4NjMwZTIwMGE2NTJhIGxlZ2FjeS10cnVuaworNzk2MzQgYTdlOWY4ZTM1NTNmN2NhNTY5NzMxYzBhNDc2MmNkNmE1ZDBkYzFmMyBsZWdhY3ktdHJ1bmsKKzc5NjM1IGQ0Nzk5ZWU2NGMyM2IxYzU4NGIyMjQyNzlkZGUxZjM3ZDBmNzdlMGQgbGVnYWN5LXRydW5rCis3OTYzNiA0ODc3YzExNTkxNTNmNWVmZDk5ZGNjYzVhYjhkMmY3N2IzZTRhNDhkIGxlZ2FjeS10cnVuaworNzk2MzcgNGVkMDRhMzljMGE5MWI5M2Q1NmFmNmViZjUxMWYzNGUwZDc1OTA2MiBsZWdhY3ktdHJ1bmsKKzc5NjM4IDU0OTY1MDNiOGIxYWJkNzJmMDNkNDg2NThmMDYyMmM5ZDI0YjZjOGEgcmVsZWFzZTMxLW1haW50Cis3OTYzOSA4NmY2OTk3NjYwMTYyY2JkZGEwMTkyYzNlYzA5NzkwODcyNGE2OWYxIGxlZ2FjeS10cnVuaworNzk2NDAgZDM4NTg5NThkZmY1M2U2MjQzNTIyMWFiMTk1ODdkNTMwZTk4MmUzMSBsZWdhY3ktdHJ1bmsKKzc5NjQxIGI1MjlhMTQyY2M0OWU2ZjMxMGFiNzQ2MmZkMmZmMjI2MWI1YjRjNDAgcHkzaworNzk2NDIgZDMzNGE3YTU2ODQ0OThjZTdlZTk1OWE0ODAwYjYwMzAxOTgxMjYzZiBsZWdhY3ktdHJ1bmsKKzc5NjQzIGViY2ViNzc5NjdkZTg2MzQ4YTEyZmFlMDAzOTQ2ZGUyOTkwYzkxNjUgbGVnYWN5LXRydW5rCis3OTY0NCA2ZDQ4MzVhODFiNjMyYWQwMjBmNmIwYjhkNDhiNjFhZGRiZmQwM2FlIGxlZ2FjeS10cnVuaworNzk2NDUgZmE2NDFkNjA1NDY4ODRmZDljMDYyMTE5ZmFiN2RhZWI3NGMwMGQ3MiBweTNrCis3OTY0NiA2NmI2MGE2ZTgxOTg0NmY2YmUwZWE2NzkxNTlmYTBiZDZjNWQ3NmQyIHJlbGVhc2UyNi1tYWludAorNzk2NDcgYTg4ZTBmNmFiOTQ1YTE2NjkzMTNhNGEyMGFiODVhMTNjNmU5OTVlYyByZWxlYXNlMzEtbWFpbnQKKzc5NjQ4IDg5ZTg3YmE4YWI0ZTBiMGY1MzE2NGRkYjIxYjNkZjFkNGQ4MTFjZmIgbGVnYWN5LXRydW5rCis3OTY0OSA2ZmU1ZGMxNzVjMjY0ZGYyYWIxMjI1Mzg3YWJkOTBlZmU1YTliODkyIGxlZ2FjeS10cnVuaworNzk2NTAgZmRkMDEzNzQzMmY4NTM3MzlmNDE1Zjc4NTBkYmNiOWM1ZjgyOTZlOSBsZWdhY3ktdHJ1bmsKKzc5NjUxIDVlYmNhNjIyODkwMzZiMzdiY2I3ZmQ0ZTA4YjQ4OTdkYTEyMTU0NjcgbGVnYWN5LXRydW5rCis3OTY1MiA1MGIyYzBmZTVlMjdiMzljMjM0YzE5ZjJlMzNmOWUyYTM4NzAyNjI3IGxlZ2FjeS10cnVuaworNzk2NTMgMTU0ZGNmYTMyYjIwMWFlY2RhYjc2ZjVmY2VjM2M4ZDhlYTYyY2IzYyByZWxlYXNlMjYtbWFpbnQKKzc5NjU0IGE3MDdjYTI2MDM0MWI1ZjZmMjgwYTcyNTRlYTZhODg0MThkNmZlNWMgbGVnYWN5LXRydW5rCis3OTY1NSA2MjllN2IzYzhiMmQ5NzZkYzcwZjY0ZTNjN2FlMWI5NzU0MjQyNTFhIHJlbGVhc2UyNi1tYWludAorNzk2NTYgZWE0YzZjMDY4OTUwMDlkMGUwM2Y5NzNhMDI3MDYyNmY4M2JjZWNhZSBweTNrCis3OTY1NyA2NThiMzllNjZkZWZlZDZmNmRlZjdjNmUzMzIxZTIyZTIyMWNjMTJkIHB5M2sKKzc5NjU4IGQ1ZjJjNzQyNWI0YTk0N2VlODUxYmZkNTRjMjkyYmY5YzhlYzZkZDIgcmVsZWFzZTMxLW1haW50Cis3OTY1OSA0NGQzMmE2YzllMzU3YTMzYWM2MjYzOWE3OTkzMDE3OTM0NTBkMDQ1IHJlbGVhc2UzMS1tYWludAorNzk2NjAgZGE3YjAwMDZhNzk5N2U3N2I1ZDc4ZmYzYzgzZWM4ZTU2NjhlOWJlZCBsZWdhY3ktdHJ1bmsKKzc5NjYxIGFkOTRhZjkxMjljY2EzZGRkZTYyNjg4MjU4NDQzMzk3ZGEyMmUxMmIgbGVnYWN5LXRydW5rCis3OTY2MiA3Y2E2YTM0MzFmOWUyN2NhMTE0ZmY3YzQzYjMwYzRlYzE4ZjNmODU5IHB5M2sKKzc5NjYzIGU0N2E2ZmY1YjUyMGYwZDFlNTNkODBjNGQzZWVhMDk1ZTBiNzM4MmIgcmVsZWFzZTI2LW1haW50Cis3OTY2NCAyODExYmU5NWM4Yzg0NDhhZWVjOTliNmU4NmNkMjZmZWM1MDc4ZGJjIHJlbGVhc2UyNi1tYWludAorNzk2NjUgYzU0ZGQzZWVlZDU2YjNmMmNlZTBlZGE0MjZmM2JkZGYxNzg3MTFiNCBweTNrCis3OTY2NiA4YzhiZGMxMWU5Yjk5MjljNTUxMTdjYjg4OTFjZDVkZGExZWUxOGI3IHJlbGVhc2UzMS1tYWludAorNzk2NjcgMWQ0ODRjNGRiZjYwNGNkYmQ3MWQ4ZDdjZjRkMDYxOWU3ZmZiNDM3YSByZWxlYXNlMjYtbWFpbnQKKzc5NjY4IDUwNzgyMjBiZDFlYTYzMjBiYzI3OWZlMTU5N2U5NzFkZjM4MjljOTAgcHkzaworNzk2NjkgMzM0ZDQ1NjJjODc1YTkwMjE1NzlkNGVjYWU1NjdiMzkwNjFmNmQxNiByZWxlYXNlMzEtbWFpbnQKKzc5NjcwIGNmODAzNzcxODRmZmFhNjg2NDQzMWUzNTQwYzljZWI2YjFlYWEwMzEgcHkzaworNzk2NzEgYzJiMjE3ZmU0ZWQ0NTQ4MWViNjkyZWNlYmE4OTIyYmZkZGU4YjUwNiByZWxlYXNlMzEtbWFpbnQKKzc5NjcyIGMwYjYyOTliOTNlZWJlODY2YmRkYmE4Nzc0ZDJiY2Y4ZWJlZmNiNzIgcmVsZWFzZTI2LW1haW50Cis3OTY3MyBiMWMwMGM3ZDNjODU1ZDUxNzI2NDc2ZGZhNTZmMDRiMjg2OGE2ZjFkIGxlZ2FjeS10cnVuaworNzk2NzQgMDU0MGE5NjI4Njk4OGE0ZGFhNzM0MTJiOWQzNzc3MDE2ODdiYWZkMSBsZWdhY3ktdHJ1bmsKKzc5Njc1IGNmMzRmYzFlODQxM2UxN2M5N2ZiZTlkMzAzZDQ1YjM5ZjM0OGFjYzMgcmVsZWFzZTI2LW1haW50Cis3OTY3NiBiMTk0MWNmZmZhNWM4NTE2MWZhMjIwMzBiOWUwMTJkM2RmNTA0M2FmIHB5M2sKKzc5Njc3IGQzMWUyNjlhYWNkZWJkMDgyNDkzNzA1ODVlOGJiZGNmODNlYjI1ZTAgcmVsZWFzZTMxLW1haW50Cis3OTY3OCBhNjY1NDVkYjNiMDY5OGE5OTE3NzU0YjZhM2ZhNWZmYTU0MDAxYzAxIGxlZ2FjeS10cnVuaworNzk2NzkgZWIwNDljM2MwODNmYzgyMTQzNjQzYTAyYmYyNDEyMmViNzc4N2RkNCBsZWdhY3ktdHJ1bmsKKzc5NjgwIDI3NDUxYTk2NzY1MDBkMDc0NjdmODdiOWNiMmE4YThmZDlkODczMTIgcmVsZWFzZTI2LW1haW50Cis3OTY4MSA1M2VlMzhlNjM4YmY5MGU5ODNlOGFmOTMzNmNhN2I2YjU1NGYwN2VlIHB5M2sKKzc5NjgyIDNiMWQwYTNhZGZmZmFlNzQ5ZGNlMjg4YTE3OTJlZDk3ZWVmOGNjOGUgcmVsZWFzZTMxLW1haW50Cis3OTY4MyBiZDUxMjFiZjY5OTZkMGMzZTllMTViNzdlMTQxMmY3MTQxMDQ4MzA1IHB5M2sKKzc5Njg0IGJhNDgyZjQ4ODdmN2Q2ODAyYzJlODE2NzE3ZjE5YjM1MDRlOTBmMjYgcmVsZWFzZTMxLW1haW50Cis3OTY4NSBhNTg0ZjI0MzE4MGQ1MmE2ZDZjMjJjMTAzZTcyZGQ3NzMzZGE3Njc5IGxlZ2FjeS10cnVuaworNzk2ODYgN2QyNzI0ODhiNjNjOWE0MmYyMzhlYjc3MWRkMmY5MjYzNWI3NTIwYyByZWxlYXNlMjYtbWFpbnQKKzc5Njg3IDU4MGYyZjViYTg1ZjM2NTE4MTY4MTNlYzc3MzY5OGIyYjViN2JiNjggcmVsZWFzZTMxLW1haW50Cis3OTY4OCA5YjI0YWEzNmMwNmY4M2UzYmI0MWZkN2Y1NTNkZWQ2YzNmNzQzYWIxIHB5M2sKKzc5Njg5IGQxNTIzNWQyMTM3YzE0ODU4MWQyOTY0OWYyZjI3OTJkOTRkOTVjMDcgcHkzaworNzk2OTAgZWExMGNiNjEzOTBhZWEyMGZiZDk2OGMwMzVkYzUyZjE1MDhlNGRlMiByZWxlYXNlMzEtbWFpbnQKKzc5NjkxIDRhNmUyMDEzNTQ3MDY4ZjA3NzBiN2JjMjY4MmJiZDA2NGI4MGI3YzQgcmVsZWFzZTMxLW1haW50Cis3OTY5MiBjNjY5OTViZWZlNDI0MjFiNTZlOTBhZjM0N2E0ZWQ0MTU5Yzc0OWIwIHJlbGVhc2UyNi1tYWludAorNzk2OTMgYjYyYTY4MjExN2UwMGYzODUyOTBhNWU0ZGFjYjg1ZWRmZWVhNDk1OCBsZWdhY3ktdHJ1bmsKKzc5Njk0IDM1MjdkNjU3OWVjMjkwZmQ5MGQ5YjRmYzQ3ZTZhNzI3NTFmZTQ1YjIgcHkzaworNzk2OTUgZDVhYmQ4ZGZkNGY0YmFhMGFiZmJjOGU2MmRlOTUzMTRkNWFmOTcxMiBsZWdhY3ktdHJ1bmsKKzc5Njk2IDA2YTQ2Zjk1MTk0ZWYxNDE1MWNlY2M2NTYxYmQ5YTY5NDkzY2JjZjUgcHkzaworNzk2OTcgOGFiOTYwYjYxMWE2ZjFiOTFiZWM4OGFiMzFiOTBmZmYyODYxMjQzMiBsZWdhY3ktdHJ1bmsKKzc5Njk4IDM5ZWZkM2ZjNTllZmE3ZjA4YzA4OWRkMjA0MTg0ZmI0MjQwNTJiZjYgbGVnYWN5LXRydW5rCis3OTY5OSA4NzY2NjM3NmQ4YjA1MDQyNmFlZjk1MzU0MzU4OGM3YThmNDNkNGRhIGxlZ2FjeS10cnVuaworNzk3MDAgNDBiYzhiMWNhOTMyOTg5ZjdhMWY3N2IyYTJiMWY3YjU3NmJkYWY4OSByZWxlYXNlMjYtbWFpbnQKKzc5NzAxIDNhMGY1MjViNTliNTk3NDhjMTQwMmY0NDNhMTA4MjkxZmMwZjBmOTggcHkzaworNzk3MDIgODZiZjM4ZWEzMTIzNmUzYmVhZTA5MDY5YTg3NWNiODAyMDk5OWM3NiByZWxlYXNlMzEtbWFpbnQKKzc5NzAzIGFhMTIxYTM5YTk1NjcwZTQ4NjI2YTBhNzdiZDg2ZGNhYTQ3YTQzMTEgcHkzaworNzk3MDQgZGEzNGQxZjQzY2IwMDA1ZmZmOWQ4ZWQ3NmExZDE3YTRmNTU3MTYwMyBsZWdhY3ktdHJ1bmsKKzc5NzA1IDdlYjkwN2M4NTRiNDJhZDlkYmJiMTgyNTZiOGY0YTQ4ODlmYjRmZDQgcHkzaworNzk3MDYgYzIxYmM4MGM4M2Y2MmZkZDE2MTllMDExN2M1Y2MxYjUyNmY2ZGZmMyBsZWdhY3ktdHJ1bmsKKzc5NzA3IGIyNjI1YWNjMjQ4NGU1MGViNjAyMzViZGE0NWZlOWE4NzU0ZGEwMmIgbGVnYWN5LXRydW5rCis3OTcwOCAyZTU1OWMwYWQ4YzM0MjhmZjI2YzJmZjJlZWQ3MjgzNTI3MWE1ODZmIHB5M2sKKzc5NzA5IDYxOTkwZjc2MzQ4NTkzMGU3OTNlYjljZmM5ZDk4NzI2ODkyM2Q1OWUgcmVsZWFzZTI2LW1haW50Cis3OTcxMCBlMTQ2MTMxMjRjYzE0Mjg4ODQwN2U3MDlmNmIyMzIzNGRmMDFjZDdkIGxlZ2FjeS10cnVuaworNzk3MTEgNjYxNThlNGZkMDIyN2U0MDVlNmEyYjlmYjVkOGNmZDA2OTQwY2FkYyBsZWdhY3ktdHJ1bmsKKzc5NzEyIGExODQyMjdjZmI5NDNhMGMwZDAyNTIwYWFhMDlhODk1YmNmN2UzMzcgbGVnYWN5LXRydW5rCis3OTcxMyBjNzNhNjU4ZGE2ZmFjMzQ0MDMyZGM0MjgyYjQ5OTgzOWM0NDY3OTRjIGxlZ2FjeS10cnVuaworNzk3MTQgZTI5YTJlMDNlNzM5ZTY2NjllZGM2YWE5ZGM2OTUxYjRkN2VjZmFjMSBsZWdhY3ktdHJ1bmsKKzc5NzE1IDNmNzg2NGMxY2YzZjYxNTQzZDRkMTdhNzg1YzI1OGZjM2NkZGUyMTYgcHkzaworNzk3MTYgMzQ1YjZhYjMyZDY1NGY0NjY0ZTgwMjZhZDA2NGYwMzg4ODgxOTkwMyBsZWdhY3ktdHJ1bmsKKzc5NzE3IDgyYzIwMzRiODA5NWY4NDQwMzQ5MWY5ZWZjYTJmYmUzNjFiMDMwNzIgbGVnYWN5LXRydW5rCis3OTcxOCBlZTM0MjVkMWM2ODhjZmQ4MTVjYzU1YzY0M2Y4ZjYwM2ExZmEwMmU0IGxlZ2FjeS10cnVuaworNzk3MTkgNGQ4NGUzZmEzMzNhMjFmODlkZjc0NzYxMWFlNDEzODEzNGE5ZjZlOCBsZWdhY3ktdHJ1bmsKKzc5NzIwIDliNTAwYTJjODU5ZDA2ZmI2NzE0M2RhYjEyYmU4ZjQ5ZTI0NDNhNTEgcHkzaworNzk3MjEgYzhmOTU1MDAzYjJjMWM1YTM3NmIzY2U3MTkzZWNlNWUzMTIxZTYwNSBweTNrCis3OTcyMiA2YTI0ZGVmY2MwMGIyY2I5ODA1YTgyZjdkNzUzZDE1OGRhMmFlMGMyIGxlZ2FjeS10cnVuaworNzk3MjMgOTY1ZWM2MzU2ZDVkODQ0NDIwZGYwNDZiNmY2NWZhY2NhMTdjMzUyYiBsZWdhY3ktdHJ1bmsKKzc5NzI0IDgxYzJmNTkyZTgwODEwYTg0NjYxYmYyYjg2MTlmMzAzMjYyMmEzOTAgcHkzaworNzk3MjUgM2M0YzBhNzE2YTE4YTQ4ZmQ1M2YwZDQyYTkwMzk4ZWI0OTM4YjMxOCBsZWdhY3ktdHJ1bmsKKzc5NzI2IDBjZmFiZWQ0NjY2OWNlOWQwYTg0YTYxYWQ0YjFjOTc5MWI4NTI3NjAgcHkzaworNzk3MjggZGE5MzlhYjJiZmUyNzc3YTgwOTQxZjMwNmNhN2M1OThjMjc3MWVjNCBweTNrCis3OTcyOSAzOTkyMTAyNjNlNzEwYzA3YThmMWMwMThmNzQ1YTk3NTdiMWVlOTAyIHB5M2sKKzc5NzMwIGViNDE2NzY3MjE2M2M4ZTMxZTA0MTNkMjM4OTY5ZTBkOWE3ZTNkOTAgbGVnYWN5LXRydW5rCis3OTczMSAwZDU2N2NlNWVjZTRhNDMxZGZkMWI1YjRmYjgyNWFiNmEyN2NlNmM4IHB5M2sKKzc5NzMyIDM5NWEyN2E0NGE5ZTQyNDZkOGZjYmU0NzU1NTRkNTQxODE3OWIxNTUgcmVsZWFzZTMxLW1haW50Cis3OTczMyBkNTg2MmQxMmQ5MmFiNGQ0NGVhOWMzMGI2MDg4OGZiZmMxMTY1Y2JmIGxlZ2FjeS10cnVuaworNzk3MzQgZjljMzY4ZmUxYWNmMzA4ZTMyNGFiZDcwYjdjODc4MTI0YmM3N2YxNCByZWxlYXNlMjYtbWFpbnQKKzc5NzM1IDY3NzdjZmFiNTE1MmUyY2RmZmVjYmZjNjliYTkyZmZlNmRkZDkwNGEgbGVnYWN5LXRydW5rCis3OTczNiA5ZWU5N2E0YWIxNWMwYzliN2NjOTUxNDU3ZjU0ZjA0NWY4YTNkZWE3IHJlbGVhc2UyNi1tYWludAorNzk3MzcgMmRhNTEzYjQ3MmNiZTUwZGU0ZjY0OGIzNDM2MWY4MTkyYjgzMjBjNSBweTNrCis3OTczOCBhOGRkZTAyNWE2Zjk5ZjAxZjBiNzhhMWRlZmFkMWZlNTc4YjI0Y2RkIHJlbGVhc2UzMS1tYWludAorNzk3MzkgMGRlZjI4ZGI3Nzk5N2VlYzM0MDQ3OGU5YTg5ZjQ2NWFkNDFjMTAzZCBweTNrCis3OTc0MCA0NjBmNDFiZDBlMzRhY2VlNjQ1YzQ0MWJiN2I1NTgwYmVhZWFhZWM3IGxlZ2FjeS10cnVuaworNzk3NDEgNTcxNWRlMmE0MDUxMDUxZTJhZTE4NzIyODE3MzFiYTdiNmQ4YzE5MSByZWxlYXNlMjYtbWFpbnQKKzc5NzQyIDU4ZGM0ZjMxNmZmNjQ2Y2RjMzE4NmY3NmJjMDg0NWQzMzA0YmQ5OTYgcHkzaworNzk3NDMgODFmZTFkNDVhZTc3ZmE0MmM5MzEwNDU0ZGVlZDk0MmZlOWNkMmVhMSByZWxlYXNlMzEtbWFpbnQKKzc5NzQ0IDVjYThlNDE1MDRiNmY5Mjc5YTZkNWU2NGIwZDFiZjIwY2Q1OTAyMGUgbGVnYWN5LXRydW5rCis3OTc0NSBjMzk5ZTkzYmYwZTQ1ZGMyYjcxYWIxZjQ5MzQ3MGEwYTM1ODQ3NWZjIGxlZ2FjeS10cnVuaworNzk3NDYgNzI0MDliMjMxOTY3MzNhMzQzZjdmNjY2MzJmYjc4YzMwOGM2MGI3MCBweTNrCis3OTc0NyBjMWI4N2UxM2U5ZDNmZjE1YzRlMWZiNTIyZjE1MDE3ZmNiNTI5ZTI5IHB5M2stY2RlY2ltYWwKKzc5NzUwIDFlNmYyNjgwMTZlNDczOTRhZTFhYjVhYjE3OTcyNDAwNjY0ZDU0N2IgbGVnYWN5LXRydW5rCis3OTc1MSBlYzFhNTQxMmZmOTBkZWFlM2VkZmViNDE0ZmU4MWYxMmYxZDkzNmM2IGxlZ2FjeS10cnVuaworNzk3NTIgN2FjM2Q4OGUzNWMyMTBmZjJlMjFhZDNkNDNiZDBiZDIxNjRkODhlYiBweTNrCis3OTc1MyA4ZTA2NDE3ODU1MDc0NTNmMTY0ZDEyOTFkNjkxMTVkNTExNzZmZDJhIHJlbGVhc2UyNi1tYWludAorNzk3NTQgZGM2MzQxMWEwMTA0ZWJhNDJiZjZmMjljNGVjY2UyNjVmZWE1OGVjZiByZWxlYXNlMzEtbWFpbnQKKzc5NzU1IDVkZGEzZjMyYTJjZTJkZDAxZmI2YzM2ODE5OTExNjViZjAwOTllZTAgbGVnYWN5LXRydW5rCis3OTc1NiA4YWEyOTZmYTZkNmM1M2EwNzRhM2IzMDBiZGUyZDUwYmY2YzAwMWExIGxlZ2FjeS10cnVuaworNzk3NTcgNDVkZDliZjM2MWVjMDMxNWYxODk3YjczNWQ0Zjc3YzU1NDRlNjQ4YyBweTNrCis3OTc1OCA5MzA3ZGVlZWU0MTJhMjIzZjE0ZjU4MzEyODI0MGZmYzUzODA3NWIyIHJlbGVhc2UyNi1tYWludAorNzk3NTkgZjQxNmYyYzJjMDk5ZTg0NzUzN2Y1ODkzZDhhYjcyNDA1ZDBhZGFhMSByZWxlYXNlMzEtbWFpbnQKKzc5NzYwIGI2YzZmNDJjZGRkZTVkZjRkZWRhZjViZGZjMGY2MGJmMjVlZGQ0YmQgbGVnYWN5LXRydW5rCis3OTc2MSAwMjI1ZDI5ZjBiZDk4ZTMzNTAxM2UxNmMxNDU2OWQzZDc5ZWE2ZjkxIGxlZ2FjeS10cnVuaworNzk3NjIgYWNjOTAwZGMxODRiYTliMGM2MmY1ODJmOGY3Y2VkY2E3NmUyMmVjZSBsZWdhY3ktdHJ1bmsKKzc5NzYzIDBlY2U5OGI4NTNkNTEwNDFkNTliZjBmYTEyYzNmMWNiYTgzOGFmZjQgbGVnYWN5LXRydW5rCis3OTc2NCBhNjYxYzk2YjhkMTBlY2Y3YjhiOTlkNWQ3YzllNjhmODg2ZDZmZjVlIHB5M2sKKzc5NzY1IGZiMmQ2NGE0ZDg3MmMzMmM1MzdlNzZjNTY4OTI1ZWMxNzZkMzQzYjEgcHkzaworNzk3NjYgYjY5ZGNmNjM1MDJjNGRmMjQyZjk5MTMyZmU2ZGRlNDU3ODEyZTQzZSByZWxlYXNlMjYtbWFpbnQKKzc5NzY3IGMwNGE2MjIyY2M3ZGQ1OWRmMjc1YjJjOTI0YjRiOTdmN2Y4ZGZlM2UgcmVsZWFzZTMxLW1haW50Cis3OTc2OCBhOTAzYmIzNWVmNGY1MzU3NTBlMDcyYjc5MGI5ZWFmNGRmOGRjNjk5IGxlZ2FjeS10cnVuaworNzk3NjkgYzU0Y2ZlODI4Yjg0YTNjZDBhMTA1ZTFhZTA3OTM5MmI0NmJhZjRhZCBsZWdhY3ktdHJ1bmsKKzc5NzcwIDgwMDQzNTdkNWJjYzAzNzJlNTIxODZmYmEyZWNjNGEyOWNlMzJiYzYgcHkzaworNzk3NzEgNzE3NzlmNGEyMDc4Mjk0YjU4ZGYyNzYzNzYxOGFlMmU3MjZhNDk2ZCBweTNrCis3OTc3MiAzM2EwMmU0YWM0YzJmMWU3ZTk3YmRlNDUxMDk1YTc0ZTJiMGEzMmI2IHJlbGVhc2UyNi1tYWludAorNzk3NzMgODkzYzc0ZDU0N2VlNzM4MDYyYjY2ZDVlM2JmMzIzN2RlYWFlZGU3NiBweTNrCis3OTc3NCAxYWJmMzdkYjI1N2Q5ODhkYmY2MDM2MTA3YjE3YzA1MTM0ODg1YmJjIGxlZ2FjeS10cnVuaworNzk3NzUgMjNkYmM4YTNiOTdhOTk5OTZhN2ZiMDY4M2Q4Nzk2NWM4ZDRmMGZjNiByZWxlYXNlMjYtbWFpbnQKKzc5Nzc2IDYwY2E4OTgzZGQzYjFlMjVmZjM0MzA3OGMzNmIxYjJhOWJhYTNhMmIgcmVsZWFzZTMxLW1haW50Cis3OTc3NyA1MzUyMjA0YzhlODhjNWJkMWZlN2E5YWUwMTc1YWE2NWVhYmNmZDJiIGxlZ2FjeS10cnVuaworNzk3NzggZTY4MTVlMWI3NTAyYzY0MDllNGZkN2QwZWFlMDIzNzAxMWU3NDdhOSBsZWdhY3ktdHJ1bmsKKzc5Nzc5IDFjYzRkMmRiNWNkNmJkYjNiNDZjZmI0YzA4NDFkMDAyMTExMGZkYTYgbGVnYWN5LXRydW5rCis3OTc4MCBjZmU1ZmEzNGRiNDY2NjRjNGZlOTgzMGIxNDVkYmQzMTFhZGJhNzI0IHB5M2sKKzc5NzgxIGM0MGZiZmZmNmQ3YWJjODhkMjBhMDE2ZWIyY2IwM2ExNTk0YzgxMDEgbGVnYWN5LXRydW5rCis3OTc4MiA3ZjY5MTgxYjY1MmMwYTliZmI1N2Y2ZDk0ZjJkZjYzMjE1YTY4ZWVmIHJlbGVhc2UyNi1tYWludAorNzk3ODMgMDJiZDJmNjBiYTVkOGQ1MmYzNjgyMjA2ZmUyMjVjNGQ3NGQ2ZWNiMiBweTNrCis3OTc4NCAyNzNjZGEyYjAwNTM4MTJiYWVmZDIyMzViMmZlODZhNWZkZjM4MjMwIHJlbGVhc2UzMS1tYWludAorNzk3ODUgZmRjYmViOWYzNzRjNzE1ZTZmZmYxYzgzYmFjNGNkYWIwNTQ1Njk2OSByZWxlYXNlMzEtbWFpbnQKKzc5Nzg2IDk3ZTk1YzlkMjZkYWJmMjE0ZjhiYzRkNDc4MzIxOWZlZjlhNWQ2ZmIgbGVnYWN5LXRydW5rCis3OTc4NyBlNGJkYzI5NmZjOGU0MjdiMDU3MjYzYzZhN2Q5ZWJiMWYzZmM5OGVhIHJlbGVhc2UyNi1tYWludAorNzk3ODggZTk0ZDQ0NmM2ZDBlZjkzOWM5OWUyYTRjOGIzOWRmYThhNDNiOWE3NSBsZWdhY3ktdHJ1bmsKKzc5Nzg5IDcyYzBlMTVjMDNiMjRhMjMzYWFmNGY3YWQwZGFkOWUxNWQ4MTZhMTIgcmVsZWFzZTI2LW1haW50Cis3OTc5MCAyNGNiNDExMmI3MzExMzA5YTIwNmVlOWNiZGU1ZDBmYzA0OTkzZWJhIHB5M2sKKzc5NzkxIDMyYThiNTIwZDc2N2Q3YzljNDc0MWI5OWRkNWJmNjNmYzZmYTUyOWUgcmVsZWFzZTMxLW1haW50Cis3OTc5MiAyOGI4MjM5ODNmY2U5ZDczOWIwZDE3ZGJhOTRmODVkZWE0ZmQwMjAxIGxlZ2FjeS10cnVuaworNzk3OTMgNmJlZTQzZWE3YzAwZTNhYWMzMzFjNjNmMTlhZTYwNWI2NTI5MTBhZSBsZWdhY3ktdHJ1bmsKKzc5Nzk0IGY4N2QyYjFiYTQyOTBjMzAzODIyOTY2MjZjMGNmZDE5YzAxZTk5YTUgbGVnYWN5LXRydW5rCis3OTc5NSBjMmIwOTNkNjgwY2YzMjMxMzRiNDlhMmRhZmUxNWMzMDYwYWExMTcxIGxlZ2FjeS10cnVuaworNzk3OTYgMmQwY2UzMDc4MDliNGQwNjNjY2Q0OWE5NDI3MTUzYTYxYzE4OGU1NyByZWxlYXNlMjYtbWFpbnQKKzc5Nzk3IDExZGUyYzI4ZDFhMDkxMDY1Nzc2ZGNlYzFlZmVkY2FkYTZhNDYwODYgbGVnYWN5LXRydW5rCis3OTc5OCA3MDg4ZDE4MzQ3Nzg0ZjI5MDg2MWYyYTlmZTFlNjBlYjY4OGVkYzNkIHJlbGVhc2UyNi1tYWludAorNzk3OTkgOWVjNTk4YjQ3ZGE0ZGJjNzBlOWM4MWI3MmZmNTA4YTY2MWYxYzU3NSBweTNrCis3OTgwMCBhN2I1M2FkN2FkOTcyNmNlMjU2NTkzN2VlMjFmNDFhZGE5Y2EwZGU4IHJlbGVhc2UzMS1tYWludAorNzk4MDEgMGE1M2MyNTRhMTkzN2RjMDdhMmRmYjdlNjUwZTc1YmUxZGEzMWZmOCBsZWdhY3ktdHJ1bmsKKzc5ODAyIGU3N2IyZmYyNGRkYjE0Zjk1ODZhZjdiNjY2OTkxZTIzMjczOGRkYTIgcmVsZWFzZTI2LW1haW50Cis3OTgwMyA3ZjJkN2JmYjA1NjcwNmNmMzc4MTJmOTkxOGFjMjRjY2Y2ZTkxMmQzIGxlZ2FjeS10cnVuaworNzk4MDQgYWNlNzExNTUwYjU5N2VjYWZhZjI3MWE5M2UyNDk4M2M3MDQ5MzUzMCBsZWdhY3ktdHJ1bmsKKzc5ODA1IDlkZTU2MzBmYzYxYmEwMDljODFiNTFiMWZiNWE5ODk4MmMzODdlMTUgcHkzaworNzk4MDYgOGY0NWQzN2M1NWExNDJiZjYzZjNlMWNiNWMyMmZmNDM1N2Q5NjUxMCByZWxlYXNlMjYtbWFpbnQKKzc5ODA3IDU4NmUxY2U5ZjI0M2M4NGE1ZjViMzcxZGM3ODI4YjZkZTEwNjJkODIgcmVsZWFzZTMxLW1haW50Cis3OTgwOCAzYzlmMDg4N2VlM2Y5YWVhOWZiNTIyMDViZjlmMDc0OGU1MjQ2OWM3IGxlZ2FjeS10cnVuaworNzk4MDkgNWRhYTc0YmNmNmExNTkwOTJhZGExMDRkNjA1MTJmOWY1YTU3ZTUyZiBsZWdhY3ktdHJ1bmsKKzc5ODEwIDNjZTY2YzY5MjJhYmFkYmEzZDg5ZWM0MTE1ODZjM2VjZWMwZDRlZWIgcHkzaworNzk4MTEgOWZkODg1MmVjZGQ0YzIwMmU5MTE5MDllYzFlZTFmY2FkNGUzOGM5MiBsZWdhY3ktdHJ1bmsKKzc5ODEyIDY2NDE3Mzk4NGYyZDNhMjFmYWE0Yzk3NjhiZTA2MzI3NDY1MWUxN2UgbGVnYWN5LXRydW5rCis3OTgxMyA5ZTVlOWQ4ZmE4NDc0ZmQxYjVmYjliYTAwMWQwNjE2Y2MwNzc4YThiIHB5M2sKKzc5ODE0IDI1YzI4NTJiZmQxNWI1NDI5MTJlMTc1OTJlZWEyMDIwZmJmYzE2ZjkgcHkzaworNzk4MTUgMWFkY2Y0YTQ2ODU2MDZlNWJmYjVhMjZjZTM4YzU0ZDUwYTZhOWI2NyBweTNrLWppdAorNzk4MTYgYzViZTUzN2I1YmE5MDlkOTk1YmY0MDFlMTM1NDFmNjllMjhkNTM5YyBweTNrLWppdAorNzk4MTcgOTIyMDc5ZjcyNGE2MjBjMjNhOTA0MmYzNGU3ZGZkMmFkZjJjMzJlNyBsZWdhY3ktdHJ1bmsKKzc5ODE4IDk0MjYyZDBlMDY0YTVlYTg4ZjMzN2Y1MGUwY2Y5MmVkMmZjOTAzZDkgbGVnYWN5LXRydW5rCis3OTgxOSBlZWVhNzhkZjhhM2M3MmY0NzM2N2E5NDA2ZjUxYzA5NmQ2MDEwMDA5IHB5M2sKKzc5ODIwIDk2MDA2MjVjMTVhZmE5YzBhNDIwYjg4MTE0NzIxYjRiYTI5YTFlOWUgbGVnYWN5LXRydW5rCis3OTgyMSBjMTAwMjRhYmQxMThmZmNhZmNjN2RkZmUyNjhmMTc3YmQxODIwNzVjIHJlbGVhc2UzMS1tYWludAorNzk4MjIgMmZmYjIyNGM2MWY2YzdkMGJiMmI4NmNmNDUyMGZmMmJiNWIxMTBmYyBsZWdhY3ktdHJ1bmsKKzc5ODIzIDI2YzZkZTE4Y2QzMGI1ZGIwYzQ3OTU2MjhmMmIzM2QwNzNlZWE5MDEgcHkzaworNzk4MjQgMzY3YWM0OGJmMDg1YTVhM2IzYmExYjNjYzE2YTkzYjdhM2VjYWU0NSByZWxlYXNlMjYtbWFpbnQKKzc5ODI1IGEwYzA4M2UxZDMxZmRkMmY5M2QzYTQ2YmZhNDc1OGU0NWJmMWQzOTYgcmVsZWFzZTMxLW1haW50Cis3OTgyNiA5NWJmOTdkY2M1OTE5MjYwMjM4NGZmOWQ5ZmQzMmJiOWFkYTU1Mzk0IGxlZ2FjeS10cnVuaworNzk4MjcgNzI3NDYxZDY2ZDEwMjI0ZGM3OTBmMzAzOTEyMTNmNmQzNDk5NjE5ZSByZWxlYXNlMjYtbWFpbnQKKzc5ODI4IDdkODlkMGRhZTk4ZTU1NzE4ZWJiNGE0NjExMzBkMDRhNmVlYzJjYzcgbGVnYWN5LXRydW5rCis3OTgyOSBhNjVhOTRiMDA5MDJlYzIyY2JlZjhhY2M4YTIxNDdiNWNhMGU2N2U2IHB5M2sKKzc5ODMwIDM3NzVhNGZkMTFjMmE3M2NmYTE5YzA2ZjUxYTkzNGJiMjE2ZjZiMTkgcmVsZWFzZTI2LW1haW50Cis3OTgzMSBkNDg4MDFiODYzODAxZjcwZmY1NWQwYThkZWQ5ZTA3ZDI4ZTE5MTMzIHB5M2sKKzc5ODMyIDJiOTNlMzE2NTk2MWUxYTkyMzBkYzNhZGQ5NGExYTUxMmMzOTliZjQgcmVsZWFzZTMxLW1haW50Cis3OTgzMyA1NzZiMGU4NzM2YzdmZWE3NGE3ZmNjMzZiZGMzMTZiOTMzOWFkOWQwIGxlZ2FjeS10cnVuaworNzk4MzQgZjFlYTAzZTM3ZmY2ZWNiN2YxMjQwMTFkNDdjODQ2N2ZmNjk1MGVmNSByZWxlYXNlMjYtbWFpbnQKKzc5ODM1IDdjNzZhN2I0MTE2MDM1Yzk2YzljY2ViM2M1ZGUyNDE2MGY2ODY4NDQgcHkzaworNzk4MzYgNmZlYjVhZGQ3NjJhYzZlMTk1MTRhMWI0YjYxOGFiYTEwNmJjNDQwOSByZWxlYXNlMzEtbWFpbnQKKzc5ODM3IGI2NmZjODhmYTk2ZDFiYjc2NjIzODNhMjRjOWZjNjY0ODk4ZThiM2MgbGVnYWN5LXRydW5rCis3OTgzOCA2NGZkZjY2ZjY5YjBiNzhiNTRjMmFiMmRmZGMzMzNiMzE2YjcwYjY5IHJlbGVhc2UzMS1tYWludAorNzk4MzkgNzc3NGQ2MGE4OWE5MjhlNWM2MTFjOTdkMGYxNzA4Y2RlNWY1MWNhMyBweTNrCis3OTg0MCA2OTZjYjU0OTZhMGI4NmQyZGM5MDJmYTcxMDRkYWQ5N2I4M2VjNmUyIHJlbGVhc2UzMS1tYWludAorNzk4NDEgYzY3MzM5ZTM3MWE5YjI1ZDFkMzkzYjM1MWJkZjQ0ZjE0OGEwNTEyNyBweTNrCis3OTg0MyBjOGNmYjFkMDc0MjljYTExMWEyOTNiZjUyMmM1NGRlZmJjOTQ1NjZiIGxlZ2FjeS10cnVuaworNzk4NDQgYjg4ODQyZjY1MzRkZTQ4ZTE2YzEzZWExY2IwMTY2OWZmODE0NTlkYiBsZWdhY3ktdHJ1bmsKKzc5ODQ1IGI2MTA4ZjcyMGY2OTgzM2EzNGNiNjg5YmZhYmYxMmMxOGIwYTdjYTcgcHkzaworNzk4NDYgZjE5NGEzY2VlZmFhYzAwZDFkMjFlNzE5MTA0NWI4ZWEwNjI3Y2U2NiByZWxlYXNlMjYtbWFpbnQKKzc5ODQ3IDJmMjg4MzJkYzM2YzNiMDFhODdjZTIyNmE4NjYxNjM2YzhmMjRiNDEgcmVsZWFzZTMxLW1haW50Cis3OTg0OCBhNzNkNjA0NTFiNDkwYzZhMWE3MmZmYjFiZTc0ZmViMmY5YWEyYTU4IGxlZ2FjeS10cnVuaworNzk4NDkgMjBhNTliYWRhZmExYzIyMTRjYTZjYjliZWFhYThhZTAyMGRiNGVkOCBweTNrCis3OTg1MCAzY2U0YWFjMjA5MzU3NzYwMzVmMDdhMzIyYWM1ZTg0ZDg3MDY0ODA4IHJlbGVhc2UyNi1tYWludAorNzk4NTEgZDUxYTJjN2NjODExYTEyYTg1MjRlMzE0NjUwYTRiMThkOTYwY2NjNiByZWxlYXNlMzEtbWFpbnQKKzc5ODUyIDViMGYxZDViZDU1YTk3YzAwNmJlZDEzMDE1NDc3ZGVjYjI1OTBiMzYgbGVnYWN5LXRydW5rCis3OTg1MyBiYmNjNTRhY2JkOGEyZDkwNTRhN2NiNzcxOTBjZWE1YzM1YTEwNTJlIHB5M2sKKzc5ODU0IDMzMjdkZjMyYzExN2NhYzJiMWYyNTU1MTRiNWY1ODViMDMzNDY3OTYgcmVsZWFzZTI2LW1haW50Cis3OTg1NSA2M2FmNDk2YjE0OTM5NDczZmU2NjcwZDFhMzJkZGVlODA0NjVkOWJhIHJlbGVhc2UzMS1tYWludAorNzk4NTYgZjRlYzQwNzNiZDJlNTk2ODBkMWU1NTk2NmYwYzMwNGE3NGRkNTE5ZiBsZWdhY3ktdHJ1bmsKKzc5ODU3IGNlOTc5YjY0YjIzYTc5MGJhNDE2ZTI2NDUyMmFhMzk2NWRkMjBlYzggcHkzaworNzk4NTggYTMxZjgwZDVkMWExNmViZjRkNzcxODU0MjFjYTAzM2M3NzFlMzYzMCBsZWdhY3ktdHJ1bmsKKzc5ODU5IDAxYzFhYTNhNDlhN2NkMWY1NWY0MmM3ZTYwYTVmNzJiNmFlZGM1YzEgcmVsZWFzZTI2LW1haW50Cis3OTg2MCA1NjliODU5YWRlMjA3NzMwMmU2ZDU5YmZlYjAxYmU4ZTBjZmFiNDY2IHB5M2sKKzc5ODYxIDgyNzNmODk5NGE4ODgwYWYzYTg3MWI0ZjMyZGYzN2E4ZmE1YjhhY2QgcmVsZWFzZTMxLW1haW50Cis3OTg2MiA5YzQ4YWI3MjhjZTBkNGYzMTU3YjhkYTlhZDEyODc2YWYyMTEwZTU4IGxlZ2FjeS10cnVuaworNzk4NjMgMmI0ZmNmYzM1ZjEyMjNlMGE1NjM0YTA1MjIxZWMwOGUxZjI1NjUyZiBweTNrLWppdAorNzk4NjQgNzEyOTcwYjAxOWY3MGNiMjExYzcwMzk5ZGQxMGY1ZTA3NzEzMDBhNCBweTNrCis3OTg2NSA2YzFhZGU5ZWExZTQ0NTRkNmYzYTE2MjNhZDk0Nzk2ODNiOGVhNjg0IHB5M2staml0Cis3OTg2NiA5YmE4YzZlNTJmYTBkZGZiN2Y0M2FiMmY4MDAzZGMyMzkxMTAzZjQ2IGxlZ2FjeS10cnVuaworNzk4NjcgYmUwNDRiOGMzNDNhMzVmNTkzNTYxODM2NTkzMjgyYjhkMWEzOTdhOSBsZWdhY3ktdHJ1bmsKKzc5ODY4IGJhNWVjNzU2MDkzMzM3ZTMxMTQ0YmIyMWMxYWNmNmMwNmVmMTUzZTEgcHkzaworNzk4NjkgZWVjMmRiMDlhNmMxMjM5MWYzYjI1ZTI5OTU0NGE0N2M1MDc0ZGM2MCByZWxlYXNlMjYtbWFpbnQKKzc5ODcwIDgxZDkwY2VlZTNiZGZhN2ZkNWM2ZDIxNTk4YjdlZTg1OWMzMTg3NGYgcmVsZWFzZTMxLW1haW50Cis3OTg3MSA4OTJkYjE4Yzc4MTU0ODIwYjQxZjAwZGIwY2Q0MDU1NDY2OWJlZjQ2IGxlZ2FjeS10cnVuaworNzk4NzIgMWE2ZjNkMzZiYmQ5NjFiMDQ2NDk2NzEzZjdlNTY5MGFhODg4YTU0NiByZWxlYXNlMjYtbWFpbnQKKzc5ODczIDgyYWYxMTNlMDIwYjk3YWY3NzQ1MGQ4MWI5ODU0YTY3NzQ2NTU3NzEgcHkzaworNzk4NzQgZTNjZjk3N2UyZTY0NjdlNTlkZWUyMTdjNzU5ZTBiNzlhMjVhNzczMiByZWxlYXNlMzEtbWFpbnQKKzc5ODc1IDhkOGY3ZTA4MmVmNmE4NGNlMTIwNDA4NzA3YThjNjc2NGU0ZDA4OWIgbGVnYWN5LXRydW5rCis3OTg3NiA5Y2U1MzE2MWMzYTlkZGRhZjIzMjBiZjRhNWM3Y2E5M2RhOTFhODk1IGxlZ2FjeS10cnVuaworNzk4NzcgZmI2Y2Q4YWQ4ZjY5ZTZiMGEwMWY2ZTEzZTc1OTg0ZmE2YmI2ZTQ3ZSBsZWdhY3ktdHJ1bmsKKzc5ODc4IGMwOTU3ZGFkYTVjMjdkZjYyZjQzZmJlOGEwNzQ5ZDdhN2YyZWU0ZDAgbGVnYWN5LXRydW5rCis3OTg3OSBkNzk1OTliMjFlODExNWNmOTY3YTMyZTkzNjFlMGZiZDZkMGNkMmVmIGxlZ2FjeS10cnVuaworNzk4ODAgYzllNGUxMmU5Y2I2ZTA2ZDU3M2Q5ZTc2ZTQ4OTUyMmE2ZDA2ODgwNCBsZWdhY3ktdHJ1bmsKKzc5ODgxIGYzNjlkYjBkNTg0NTY1OTQyNTdjMzMwMzgwMTI0NjdhYmU3YTBhODAgcHkzaworNzk4ODIgMTBmMWU2M2IyYjM3NDgzODEwYzU0MTk2OWM5MWE5NzBmNTUyNTU0YyBweTNrCis3OTg4MyBiNjE5YWJjZTAyNjk3NzZiMWEzMmQwNmY2Y2U5N2I1NGYwNzZiOTJiIHJlbGVhc2UyNi1tYWludAorNzk4ODQgODVlZDc0MGJlMzIzZDcxZmJjOTBmMWVlZThjMzEzMmViNzk2OTQ0YyBweTNrCis3OTg4NSBkMGE3NGI2NTA1ZDNjN2RlNTA5OWE2OTUyNTU0OGViM2IwYjE3MThhIGxlZ2FjeS10cnVuaworNzk4ODYgMWM5YmVmZGU4Mzg1ZTgzNzgxZDc1N2UyMzVkMmE1YTUyY2QzOTQ0ZiBweTNrCis3OTg4NyA3ZTU1YjIxYzY2NThiNWUzYTA4NDQxNjFhNmVjMGNiYTNlYzJlZWM4IHJlbGVhc2UyNi1tYWludAorNzk4ODggZGRiNzMyNDM5NjdiYjJhYzQ4YzhmODdlMmYxMDdmMDA0ZTU4MzAyZSBsZWdhY3ktdHJ1bmsKKzc5ODg5IGU4YWE5YTdkYWYwMzI4NWEyNjgzYzliYzk2OTI2MTI4YzE3NjdkZWYgcmVsZWFzZTMxLW1haW50Cis3OTg5MCAyMGRhZDIwMDU4ZTQyOTc4NTkwYWI3YWU1ODNjZTBkNTBkOWVlM2FjIGxlZ2FjeS10cnVuaworNzk4OTEgYThlOTBjZWNjNjllMTU4MjdhOWM1Mzg2NTZjZjk2ZDc2MWMwNjk0MSByZWxlYXNlMzEtbWFpbnQKKzc5ODkyIGMzMWM0M2Q2YWQ3OTI5ODllMWQzYzkzYTMxODVjMDNhZmY3N2ZiNjUgbGVnYWN5LXRydW5rCis3OTg5NCA3YjAwNDU0YmJmZTBhNjE2MGI5NmE4MGVlMDQyOTRmY2JiMzBkOWQwIGxlZ2FjeS10cnVuaworNzk4OTUgMjVjM2IzYWJmM2U3YzhiNTNkOTU4MGEzOGM5Nzc1OWI3MmRhZjBkNyBsZWdhY3ktdHJ1bmsKKzc5ODk2IGNiMGI4NDAwZTdjNGY5Y2M1OTYzZGVkZjY3ZWE2MDQ0NTUzYmQ3ZjAgbGVnYWN5LXRydW5rCis3OTg5NyAzOGIyNDI0Zjg1ZThhYzBkODNkMzA5MWRjZmJjNjlkNWRlZTJlODA1IHJlbGVhc2UyNi1tYWludAorNzk4OTggYTM5YmYzOGYyZTBjMTc3NTg2OTM2ZjJhZWJiNTM3NzViZmE4NmFjZCBsZWdhY3ktdHJ1bmsKKzc5ODk5IDJlOGQyZDdjNDNjMGI1OGVjZmI4NjhkYzM3NDM1YmM3ZWQyNTE5M2UgbGVnYWN5LXRydW5rCis3OTkwMCA3M2U1ZTNlYWRkODkzZTAwOTg1ZmY4Y2IwNzkxOGI5N2Y2NTBhNzE2IGxlZ2FjeS10cnVuaworNzk5MDEgYWMwNzhhOGMzZTFhZjA5ZDNlZWFkY2M5MWY0MDA4Y2NjZTM0NDYxMiBweTNrCis3OTkwMiA3NjYwYzUzZDU3MTlmZTczNGVlM2Y5ZTMxNTk1MTdiM2MxNTFkMDIyIGxlZ2FjeS10cnVuaworNzk5MDMgODIyN2I2NGU4ZDc4OGUyMmQ4Y2FiMThhMTg4ZjQxZDRmMjZkMmE5YSBsZWdhY3ktdHJ1bmsKKzc5OTA0IGI4OTk4MTI4ZGUwOGI1NGYxNmM1OTcxNmIwOWU0Yzk3NzZjNjI4MWUgcHkzay1jZGVjaW1hbAorNzk5MDUgZTI0NDRmMjg3OWI0MzViNzg3YjMwNDg0NjBlNzQ0MmYyZmU3N2I0ZCBweTNrLWNkZWNpbWFsCis3OTkwNiA4ZTVjNzFjNzZlOGZhMTJmMjkyZWFiYThjNDliZDg2ZGVhOGNlOTdmIHB5M2sKKzc5OTA3IDZmMTk1OWY2NmQ2OTBhMzczMWMxYTg3YmNjOGE2MzE0MDE5NThhYWMgbGVnYWN5LXRydW5rCis3OTkwOCAyNGNlNGEwMDg5YmUzMjljMWNmOTlmNTNiYjVjZDMwY2FjMzcwMjcyIGxlZ2FjeS10cnVuaworNzk5MDkgN2NiZmYwYjFlYjVkMTg3YTYyYjIyMjVkYjM0OGNiNmJkNDliNzM0MSBweTNrLWNkZWNpbWFsCis3OTkxMCBhMTYyOGJkOTdiYjY4NTRmOTM1YTQyYmY4MmQyZjkzNjI0MWZhNzM0IGxlZ2FjeS10cnVuaworNzk5MTIgYTc5MmI5Y2IwZDdhYWJhMWRkZTAwMTQ3M2RlNjlhYmM5ZDFlNDI3OSBweTNrCis3OTkxMyAyNGQ3ZjU1NDAwZDNhMWFiOTQ4MDhmZjg1NGZhNTllMWU5ZWM5YTdhIHJlbGVhc2UyNi1tYWludAorNzk5MTQgODM3ZjNiYjE1NzVmYjg4ZmNkMTk4ZTQ3YTU2MGVlMTU3MzdkYTE0ZCByZWxlYXNlMzEtbWFpbnQKKzc5OTE1IDQ5OTE5YjMxZmYyMDA3NjZjZjI5NmEwNThlODc4MTEyMjg3ODY3ZjcgbGVnYWN5LXRydW5rCis3OTkxOCAzNWE5ZGEwMzk2NjMwMzFlMGVlMjU3Y2ExMWM5Zjc5YWQ4NzRmMmM2IGxlZ2FjeS10cnVuaworNzk5MTkgYTVlZDAzNzczZTRkZWI3NWNlYzdhZDVkOWM3N2UyOTZlNzA1M2M3OCByZWxlYXNlMjYtbWFpbnQKKzc5OTIwIGE1YjdkY2I5YWY4ZmEyODU3ZDI5ZDc3ZTY5YWFkZDIzNmM5ZGNiOGYgbGVnYWN5LXRydW5rCis3OTkyMSAzZWMxOTMxZmQyNTY0YjU5ODg0Y2I3ZWY1YmI5NjRkMTU3NGZjOThhIHJlbGVhc2UzMS1tYWludAorNzk5MjIgNDY0ZjY2OTYyMGZhZDY1MTc1MjgzNGUzYWU1YWQzYjczMWU0MmY4NiBweTNrCis3OTkyMyA1ZTAzOGZkMmMxNDMyODVmYjQ4ZjhiZGZiN2FkODU5ZmNlMDZhYmQxIGxlZ2FjeS10cnVuaworNzk5MjQgYzAwYjA3MThmZDUzM2E3MjBlOTFiNjBiNTE3NjA2MGViYzY3Y2E0NyBsZWdhY3ktdHJ1bmsKKzc5OTI1IDdhNGQwMjZiNjM5MDAyNDM0ZjViZjk5NTU2YzY3ZDgzMjkwM2E0YTYgbGVnYWN5LXRydW5rCis3OTkyNiBlZDI2MTYzMDcwZjU4YzFlZTg3YzQzNDFmYzdiYTVkN2RlYmVlMDhlIGxlZ2FjeS10cnVuaworNzk5MjcgM2FlNzA3OGQ0Mjc4YjJlN2U1ZGI4N2NmZDQ5MGNiZGE2ZDg4MTIzMSBsZWdhY3ktdHJ1bmsKKzc5OTI4IDYxNTUwYTEzMDJiMDdhNzMxNDM2YTg0YjJkODZlYjJiYWIzYjJmYjAgbGVnYWN5LXRydW5rCis3OTkyOSA0Y2MxNzU4ZGNkZjc4YzI3MmY2OTlkMWVlNDkyNmVhZjUyMzY4ZjZmIGxlZ2FjeS10cnVuaworNzk5MzAgMmJhZjFjZWU3MWYyYjY3MDg0YWJjZTE3NWQ2NmYwNWQ5NWY5ZGEwNSBsZWdhY3ktdHJ1bmsKKzc5OTMxIDgwNTUxMjMyOWM3NTM0YzQzNGZhZTAzYTA4Nzc2ZGE1ZjRlMDY4MzggcHkzaworNzk5MzIgNTVmZDRlOTg3YjIwZTA3MGIyYTIyOWRmOWIwMmYwNTgxYWFiZWJiOSBsZWdhY3ktdHJ1bmsKKzc5OTMzIDhjNmU0YjdhZDE1OGJlYTI5ODc3MjdkZWJiOWRhMWVlMmI3ODdmNjkgcHkzaworNzk5MzQgMDU5MmU3ODQxNzc3NzRmOTk5ZmJkYWFjZjFiNDFmNGQ2OGQxM2MxMyBsZWdhY3ktdHJ1bmsKKzc5OTM1IDk3YjU4OGVlNjJmMGZiNDYzZDY1ZmJlZGQxNTdmZjJkOTU2ZTc5NzAgbGVnYWN5LXRydW5rCis3OTkzNiBmMzRjYjUwMWY4ZjdlMzI2MzRjNzkzMTQxZmFkYWM0YTgwYTU3YWM3IGxlZ2FjeS10cnVuaworNzk5MzcgNTcwZDlhYzg0ZDc3N2E5OTRkZmUxZGZlZTA4Y2I5MTVkOTliNjc3YyBsZWdhY3ktdHJ1bmsKKzc5OTM4IDczMDFkYTQ5MWQ1YmI1YjQ2YmM4NTA4ZDlhM2FjZjFhZmExYTE0NzUgbGVnYWN5LXRydW5rCis3OTkzOSAzNDgwOWNmZDg2MDE2ODUyZWI5OWVjNjc4MzMwNWExN2EwODVlZjlmIGxlZ2FjeS10cnVuaworNzk5NDAgNWY4NzgyYWEwZjhjMjhhMzRiYzdiMDA5OGFkNmFlYjkwMzI0ZjM0NiByZWxlYXNlMjYtbWFpbnQKKzc5OTQxIDQ0MTY4MjI0YWM2MTA4MDdhYWUyODgzNmU4NGNkNGJlZmUxZmFlNGUgbGVnYWN5LXRydW5rCis3OTk0MiA4Zjg5ZWY5MDkwMDliNTFhNTQ2ODUzMDFkZGE1N2NhNDZiMDEzZTViIGxlZ2FjeS10cnVuaworNzk5NDMgZDAwN2Y1ZTVlMWYwMTlhMjgwMWMxNTYyMWYzNmZkMDk3ZGM2N2UxYSBsZWdhY3ktdHJ1bmsKKzc5OTQ0IGNmN2M5YmEyZGU2ZTk0MzRiZDVjNjk0YmFiNDdmMDM3MjczYzAxNDQgbGVnYWN5LXRydW5rCis3OTk0NSA0ZmVjMmU1ZTMzOThhY2JkOTQ0ODdjOWMxMzdjZDcwNDJmZThkOTViIGxlZ2FjeS10cnVuaworNzk5NDYgZTBlMzU1YWU5OWIyNjI2ZWM2MDM5Mjg1ZmEyYWQ0ZmE0N2I4NmQwYSBweTNrCis3OTk0NyAwMDYxZTllMzI5YzA1NmEwMDM0N2RlZDliZjM0MmM2ZTg3ODgxYTU3IGxlZ2FjeS10cnVuaworNzk5NDggNzkxMjM2NmI0OGQ4YjA2ZDE3ZjhjNDVjNDkzYjgwN2M3NGI2NjVkMyBweTNrCis3OTk0OSA5OTI2ZTEyYmY0ODUwNjRkMWViYWM4NDVmOWI2NzM3NzM3ZTU0YmMzIGxlZ2FjeS10cnVuaworNzk5NTAgZTE1OTNlMWU2NTJlZWM4N2I1NTQ1NDNhNjE2YzNiYTdjZTU1ZjFlOSByZWxlYXNlMjYtbWFpbnQKKzc5OTUxIDY5YzM3MjAzZmZjMWQ3OTA2MTc1OGM4MWNmMmJiNDAxOGFhNTJkNTYgbGVnYWN5LXRydW5rCis3OTk1MiBmMjQ0ZmVlOTg5YTk4MWNlYmQwYWRkZGEyMWMzNTBiMTdlZmI5NzZhIGxlZ2FjeS10cnVuaworNzk5NTMgODRhYWQ2NzA0NjBlNTA3NzlkZTIxMDk3NGQyODYzZWI2NDk2MTY3OCBweTNrCis3OTk1NCA5MDI4MDMzZTZmY2MzZDQ4MjcxMGMzMTUwMjFhMGMxNzM0N2E2ZTkzIGxlZ2FjeS10cnVuaworNzk5NTUgZjQ3MDU3NjM3ODdiNTg5ZDBjZWJmNjkwYWIzYTM1YThmMWRmNjgzMiBweTNrCis3OTk1NiBhNjVmOTFiYmMyZmIyOTViOWFmMDlkZWUwNDc5ODdkYmQ0OWI3YjE3IHB5M2sKKzc5OTU3IDMwYzgwMDIyODc0ZTdjOTA1NGU0MzAxMDFmMWFkYjdjYmUxMzgzNjIgcHkzaworNzk5NTggNjZhZDI2N2E3M2JmNjJhMGM5MWE0NzY3MzEwOTU4YWI1NTEzNjk4ZCBweTNrCis3OTk1OSBkMzk5NTUyMTZjMDdhMmNmZDllZjQyYWNlNzRlYzkxMzg1YzNhZDRhIHJlbGVhc2UyNi1tYWludAorNzk5NjAgYzJlMWRlM2YxMWZjMWIyNzZhYmQyMjU3NTQ5MTgzNTMzYWE3ODMwYyBweTNrCis3OTk2MSAwMjdkNTc1YzY4OWMxMDIwOWI0MmZhYTBiYjdhMjFhMmViMjUyMDkzIHJlbGVhc2UzMS1tYWludAorNzk5NjIgYjRhMTU1ZTRkMzEyOTJkYzBhMjhlZjE4ZGE4NDIxMzlkY2I1Yjk2MiBsZWdhY3ktdHJ1bmsKKzc5OTYzIDhlZDk5NmRjMGU1MjA5YmFhNmNlNTZkYjE4MzkwODZkMDBhZWE1ZWUgbGVnYWN5LXRydW5rCis3OTk2NCA5ZjljYjFjNTdmMmE3ZGNkMzcxYmE4NzMyYjdiZDNlYWRmMDhjNTVkIHB5M2sKKzc5OTY1IGM0MTQ3ODQ3M2VhZWFlNTJmZDhlOTQ2NGE3NDE0YTJkMmRmZTRiMWQgcHkzaworNzk5NjYgYTg0ZGRkOGRlOWQxZGJhMDJiM2IxYzkzNDVjNzcyMTk2ZTQ5OGUwNiBweTNrCis3OTk2NyBkZDQzZTBjOTMxNzVjYTY0YjFlYmIwZGFkNzAwMTA2OTJjODk2ZTExIHB5M2sKKzc5OTY4IDRhZDk1MmE2YWY5NTcxZDE0N2QwYWRjMGU2ZjMxNjg2YWY1ODZjYjUgcHkzaworNzk5NjkgYjRmNjBkZjMxYjE0MTJlZWYzNjE0OWVlNGRjNTZiZjc2ZjhkMTI5YiBweTNrCis3OTk3MCBlMzUxNTc5MTM3ZjNlNDI0YzBiNzBhODEzZjVkNGVhMmQ4MTNkYjNlIHB5M2sKKzc5OTcxIGZkM2NhZWE5MmNkOWY5MWVjOGRiYTQ3YTRmNzAxN2FjODVjOTIwNjAgcHkzaworNzk5NzIgY2I2ZjJjODlmNDM3MmNjMzY2ZDM2ZDc2ODE2OTJlMmFlNzg4ZTc2NyBweTNrCis3OTk3MyAwOTNlMmI3MTU2NDU3NDkxOTE3N2RkYThkOThmNWUxZjlhNTJmOTExIHB5M2sKKzc5OTc0IGQ2NTQzNzQ5MjQyNjE5NzA4MjI0OTg0NWZmOGYxMzkxMGJkODg4MzAgcHkzaworNzk5NzUgZjVjNGZjMGQzMzczMzZkYzM2YTU0MmRmZTExNDc3NzY4YTFlNGUwMCBweTNrCis3OTk3NiAxYTYyYmVlZDhkMTVlZjhkYWVmNDU5ZmY4NzE1ZTEyNmQ3ZGIwZTIyIHB5M2sKKzc5OTc3IDNiNjg4ZGExOGY1M2UzOTUxYTFjNmRlZTllMGFlZmYzNDQ4NjY4OGYgbGVnYWN5LXRydW5rCis3OTk3OCA3NWY5MjA5ZjNmYjk5MGY5OTA3OTkyZjg0YmIzM2U5OGQ0NGYxMmUzIHB5M2sKKzc5OTc5IGFjMDYxZWYxNDg3ZTQ3YjY5N2IzYmEyMjM5NDM5ODZmZDdmYzQ0YTcgbGVnYWN5LXRydW5rCis3OTk4MCA5ZGUyNjFjZjViYzI5OTZjNjk1MmQ2ZmE4MzhmNjJmZDY4Yjg3YmIxIHB5M2sKKzc5OTgxIGFmYmJjOTgzZTBiZDA0MTI5NTRhNWM1YmMzYjI5MDZiYjE5MWNjZDEgcHkzaworNzk5ODIgZDAzZjVhY2I0Yjg3ZWY2ZTVmMTgzZGY1ODRlNjE1MzlhZjYyYmE3ZSBsZWdhY3ktdHJ1bmsKKzc5OTgzIDYxMGI2ODVlMDUyNWJkNmM0MTc0MGZkMDg5NjdmYTkxYjFlNGJjZWMgcHkzaworNzk5ODQgYTI5MjkxY2U0ZmNlM2MxZDg0MmRmMzJkODlkMDFmNjUzMjI3MzBhNSByZWxlYXNlMjYtbWFpbnQKKzc5OTg1IGVkZWIwN2M0MTFhZjI5NDc1YzBmNDUyMjIwM2ViYTg1ZmEzM2Y5OTggcmVsZWFzZTMxLW1haW50Cis3OTk4NiBlNDc1Yjc3MWRkNGMwZjk4ZDE0ZmMzMTY4MGU2ZjZjMmYyYTdjZGRhIGxlZ2FjeS10cnVuaworNzk5ODcgMmFlNWY2MGUyN2M5OTU2ZGFlZGM2MDExMDJlNDQ0YTRlMWRiNjM4OCBsZWdhY3ktdHJ1bmsKKzc5OTg4IDU2ODBiYTJkYzljMjZlZWNlYjY0NzAzZTRjZjlhMDhhODIwYzMyZjggbGVnYWN5LXRydW5rCis3OTk4OSBiYWUzNzkwM2Y3OTc1ZDY3NzhjYTNjNTI0ZWFiMWZkYjY0OTk5MzUzIHJlbGVhc2UyNi1tYWludAorNzk5OTAgYWQyZmYxYzM2YjFhYzE2Y2U4Zjg0YWE5MjY1MGZiNGNhNWI1OWFhNyBweTNrCis3OTk5MSBkZTUxNTE0MGI1ZmJlNGM0YjBjYmVhOWIzMDg2NDM5YmI3Y2Q1NmY4IHJlbGVhc2UzMS1tYWludAorNzk5OTIgZmVkYjFmOTMyMmRmM2MzZmExMTBhZDc5YzNkNGUzYWEyNmIyNjE1MCBweTNrCis3OTk5MyA4MWQwZWE2ZDJkYTM3YTMzOTFlODE5ZTZmNjdiYzRhOGE4YzJhZjYyIHJlbGVhc2UzMS1tYWludAorNzk5OTQgZTY5NzJmMWM5ZDZkMDE2NzE1YzljNDFiZjhjZTBkZmU5OWY4YzQ1MSBsZWdhY3ktdHJ1bmsKKzc5OTk1IDYzMTQ0ZjE0NTRkMjAwZjkxN2IxMTBmMWVmNGQ4YTBkY2JiM2NkYTUgbGVnYWN5LXRydW5rCis3OTk5NiA0MmU2MDU3Y2YyOGZkN2M5M2UzMTg4ZWYwODQxMzFkZGRhNWRhNGQ4IHB5M2sKKzc5OTk3IDg2MGZjZWRhMmQ4OTQwYjU0MDc3NjE4OGRlZWM0ZWU3OWJhM2M0ODAgcHkzaworNzk5OTggNGYxMmRjYjljZTZmMTE3N2Q5N2ZkMmQyN2YyODMxMjM4YjZlN2YwNyByZWxlYXNlMzEtbWFpbnQKKzc5OTk5IDgxMDU5MzkwODUyNzc3NDA0NzAwZDUyNTU4MzM0YjAzNjZhMDg3NWUgcHkzaworODAwMDAgOThhMTVmYzM4YjhiZjMxZTdmNzhmN2Q3ZmEzN2NlYTllOTdjZjBjYSBsZWdhY3ktdHJ1bmsKKzgwMDAxIDExNjNjZDhjMzk1NmRiMzIzMWU5YTEzNGUwOTE2MmUzYzQ5YjM4YTIgcmVsZWFzZTI2LW1haW50Cis4MDAwMiA5MWViY2ZmNWJiMjRjMGM4YjQ0NzkzODVkZjYxM2ZjMDVmOWZlMmZlIHB5M2sKKzgwMDAzIDU1NzY2NTRlNGI5MWE1NWM5Y2Y5MDMwMDg1ODBkNmE5ZDFiZmJiOGQgcmVsZWFzZTMxLW1haW50Cis4MDAwNCA3MTNmMWY2YmYzMzliZWY3ZmYzNDRkMWExYWE2NTIyYTc3Yjc5YTE3IGxlZ2FjeS10cnVuaworODAwMDUgOWQxMDM5MDQ4NDk4YTg4ZWJlMTU1NzYwMmQwNTYyYWExMzc2ZjJiZiByZWxlYXNlMjYtbWFpbnQKKzgwMDA2IGI4MWQ4M2E4OTlmMzY3OWZkYWQ3ODU1Y2UxNjA3NmIwYjU1ZDkxMzggcHkzaworODAwMDcgNTdiYmZjZThiMjc4ODhmNzY1NzI4NDliYWJlZGU5NjJlYjlkNTg3OSByZWxlYXNlMzEtbWFpbnQKKzgwMDA4IGEyZjViM2IxOWViMjdlZTkxZjYwNTMwYmIwNzM1MzBjOWE2M2M4NDkgcHkzaworODAwMDkgMTk1MDcwZTg1Y2UxNTIwN2U3NjEyMGU4NTNhMDBkZjE3ODA2NDJlNSBsZWdhY3ktdHJ1bmsKKzgwMDEwIGYxYzAzNmRlMTliN2QxNjU1MzE4Zjk2YTI2ZTE3MGI0NmUxYjIxNzUgcHkzaworODAwMTEgODk3NTJjMDNmMzQyY2U2NDcxZGI2MTM1OGNlOWI5NWQxNzhkZGE0ZSByZWxlYXNlMjYtbWFpbnQKKzgwMDEyIDc3YzQ5ZTczNTI0OTc5YWFkNDBjZTAzMTAyOTc0MTVjNDliMjNkNDIgcmVsZWFzZTMxLW1haW50Cis4MDAxMyBkNDUwN2Y2MTUzMWRjYTRhODY1M2Q4MmViZGU0ZGI0NWJmYTNmZGY3IGxlZ2FjeS10cnVuaworODAwMTQgYjUzNmE4YTk2ZmE5YTJkNzcyMWQ1MWMyZDVjMWRlNjQwZDU4OGQ0OCBsZWdhY3ktdHJ1bmsKKzgwMDE1IDA5MTU4ODk0YTNiMDVmMmIzZWVlZTMwMjQ5YWZjODMwMGE2YTMyODIgbGVnYWN5LXRydW5rCis4MDAxNiBkNDg2NzA1ODkyYWI2ZTFiNjJiYzBlY2YwOTIzNTA2NDIwMWI0NWViIHB5M2sKKzgwMDE3IDBhMWNhMGQ3NDRhNDI2OWM1MzZlYzg2MzAzZWRmOGQzNmJiYmM1ZjggbGVnYWN5LXRydW5rCis4MDAxOSAxYTkwZmUzN2I1OWQ3MzZjMzRjOTkyZjk0OWJhZjIzZjk1ZDJlOWYzIHB5M2sKKzgwMDIwIDYwYTdlNThhMTBkYWRiZjRlNjViOTdlYjQzMThhNzg0YzY1OTk5NzQgcHkzaworODAwMjEgNTIzNzcyMzVkMDU1MjExMGNmZDMwNDJhMTQ2NGM2MDJhNzY2MTVjYiByZWxlYXNlMzEtbWFpbnQKKzgwMDIyIDYzYjU4MTI0YTU1NGEzNmYxYTdjM2MwM2ZkNTZkNDA0N2E1MWRhYTggbGVnYWN5LXRydW5rCis4MDAyMyA3YTM5MGViNTBkZjEzNDMyMzJiNjc1ZjBiMDdiNzY5MjlkMjZkMGI0IHB5M2sKKzgwMDI0IDY1MWVkZmQyZGIzODg4MmY4NWQ4ODkwZDU4Y2I5MDRkZTVhN2JmOWYgbGVnYWN5LXRydW5rCis4MDAyNiA1ZThlNmU3ZWVkYjIxNGM1MTIxZjc5OWE3MGYwOTU0YWI3MWMwOTI1IGxlZ2FjeS10cnVuaworODAwMjcgYThiZWI2MTQ5MjJmOTAyYzk2NDkzODhlZTYwNDQ2NmYwZWFiMjM4ZiBweTNrCis4MDAyOCAyNTE3MzIwOTI2MDEzNTRmMmZjOWUyYWExMTQ0N2JiZDllYjViNzk3IHJlbGVhc2UzMS1tYWludAorODAwMjkgMDE1ZThmN2Y1MjY0ZjRkMTExNDJkMjZkNTdhMDYyZmIyZDBlZjQzZiByZWxlYXNlMjYtbWFpbnQKKzgwMDMwIDQ3YTU3ZGY2OTg5NmZjZjBmNTc3OGQ0MzRlY2ZhOGUyZWQxYWQ0MTYgbGVnYWN5LXRydW5rCis4MDAzMSA3OTk0MjY5YWQzYTFmYTc4ZGE0OWM2MDA1M2Q1NzcxNTdiOGIyNGU2IHB5M2sKKzgwMDMyIGI4ZjI5N2NkZmFkZWYxZmRlNGU2YzgwOTFlY2I5ZGVhOGY3MjI2ZGMgcmVsZWFzZTMxLW1haW50Cis4MDAzMyBkZjJlOWU4ZDQyOGVjZmRiMzlkZTNiYWVhZmU2NjAzYzM0MzJkNjRmIHB5M2staXNzdWU0OTcwCis4MDAzNCBiOTJiNTdmZmIzMWUxNjhlZjUyMTdhZTE5ZmFkMjQyNTY1OGFkOTA3IHB5M2staXNzdWU0OTcwCis4MDAzNSA3Njk4ZDFhMTBiMDFjMDIzY2RlNjQ0ZjI5NzcyY2RiZTNmMzA2ZDA2IGxlZ2FjeS10cnVuaworODAwMzYgN2JjZWU3MTcwZDdiYzM3MjBkOTM3OTQyY2EwMzdjMDFkZmM4MGE1MSBweTNrCis4MDAzNyA2ZmZlNmY4Y2EwOTE2NDYzODQyOWFiM2ZlMmUxNDQwNzM5ZWFmMzc3IHB5M2staXNzdWU0OTcwCis4MDAzOCBhNWM4ODZlYTRmNmYzMTljYzM4M2Q4ZDlkNzA2MTkyZGJmYTVmMWI2IHJlbGVhc2UyNi1tYWludAorODAwMzkgZDZkZWUzYWQyNTliNTZiZWRjN2U4MjNkYTAwM2ZlMjk2Y2MyMTZiMSByZWxlYXNlMzEtbWFpbnQKKzgwMDQwIGQ0ZTIxMDMyM2Y3MTM3NDAyNjZjODY1ZmJlYzc2YTM3MzAxYjczNjkgcHkzaworODAwNDEgMzQxYTZiZGNjZDJlNzJhMzg4Y2U3NmI1ZjRkMmFlY2VmOTdjYjMxMiByZWxlYXNlMzEtbWFpbnQKKzgwMDQyIGE5MjEzZjkxYWIxNjk4MThiN2Y5NWQxYTg5MzE4MjMxOGMxZDQzMzEgcHkzay1pc3N1ZTQ5NzAKKzgwMDQzIDA4MjRmMjY4NjFiYWJjM2YyMTJhOWQzNmIyNzEzMDYxZTU4OWYyZGYgcHkzay1pc3N1ZTQ5NzAKKzgwMDQ0IDcwMmI2Yzk5ZTc1N2M3MTA2NDFkNDg4MDUwM2UzZDIxZTYxYzg3NTAgcHkzaworODAwNDUgN2UwY2U1ZjYzYTNiY2E0OWFkMzExZmU4MTExMDM1YWNlNmM4NzljNyBweTNrLWlzc3VlNDk3MAorODAwNDYgYjRjNjUzNDMyY2I2NzRjNjY5MjI2ZjczNWFkMDk0ZDUxYzQ3NDRhNSByZWxlYXNlMzEtbWFpbnQKKzgwMDQ3IDFkZDRlZmRlZmZmMTU4NzYzYjU3NmE3NTRjMmNiZGQzZmM3MTk3ZGQgcHkzay1pc3N1ZTQ5NzAKKzgwMDQ4IGI5NWJhMGNjMWI3ZTUxMTkzZThhZWUyODRhNWEzN2FkMGRiNmI2NzQgcHkzay1pc3N1ZTQ5NzAKKzgwMDQ5IDVjOTlmZGI3ZGE3Mzc1ZDMwNjA5MjNmYjFlNGJlYTAxNWQ0MGRkNTMgcHkzay1pc3N1ZTQ5NzAKKzgwMDUwIGNiODc0NWZhNjU4ODQyOTFkMjBlNTU4ZmYwZDJhNzMzNDdmMTdlOTkgcHkzay1pc3N1ZTQ5NzAKKzgwMDUxIDM2YjAwNWJjMDg4ZmY1MmFhYWFjZmU2YzE5N2JjMTYxOGU4NjRmYWEgcHkzay1pc3N1ZTQ5NzAKKzgwMDUyIGYxYTJmM2I2YmZjNjQ4NTNmNzFiYmM4MjNlYTNmY2ZmMDgyNzZmMzMgcHkzay1pc3N1ZTQ5NzAKKzgwMDU0IDViNmZlN2QzNTk4YmNlMjJhYzUxMmM4NDMzZjRlZGNjNGJkNThkNmQgcHkzay1pc3N1ZTQ5NzAKKzgwMDU1IGU5ODRmOWUxNTY2NmNlNmQzMmVlYTEzYzExMDNmMGU5MjVkNTIxZjYgcHkzay1pc3N1ZTQ5NzAKKzgwMDU2IDUxN2NjNGQ1OWUxMmUyNDE4NThiOTE5NmVmYjZiZjQyZmE1NTY0NjYgcHkzay1pc3N1ZTQ5NzAKKzgwMDU3IDk5ZTljOGQ2OTBhYjk0ODA3MTNjYTc1ZGIwOWQ0MmZkNjg4NTFjOTUgcHkzay1pc3N1ZTQ5NzAKKzgwMDU4IDI4NTUzNTY0ZjFjNjZhNDYwNzJiZTdmMDdlNzRkYjUxNjdlZTkwYTUgcHkzay1pc3N1ZTQ5NzAKKzgwMDU5IGZkN2ExM2YwZWJiZGRjNDBhODZiODMwYThmZTQzMjVmNjNlZmM0NjMgcHkzay1pc3N1ZTQ5NzAKKzgwMDYwIDg2OTNmYzA2YWM4ZWM4ZTFkY2ZiMjg1NmI3YzBjNWJkNjI1OTQzNDggbGVnYWN5LXRydW5rCis4MDA2MSA3MzViZWQ2YzhlMzYxZDg0NzE4ZjFiNmU5NjViYWYzMzI2MWU2Nzg3IHB5M2sKKzgwMDYyIDY0OTNhZTcyNzkxZDM3YmNmMTdjMDJhMzllNDU4MDkyODM1M2NjZGEgbGVnYWN5LXRydW5rCis4MDA2MyA0NTBjNjkyMTA1ODFlOTRjZWQ4OGExYWJhZjlhMmEzZTc3MjM0Y2Q1IHJlbGVhc2UyNi1tYWludAorODAwNjQgNmJiZjA3YTNlMDFiNWMwODI1YThkMTg4YzMyNmVlOTc0NzY5OGZjMiBsZWdhY3ktdHJ1bmsKKzgwMDY1IGJhZTc5NzY1MTYwZDIyMGQ2MTI5NmZlMTY5Mzk3NzMyNDc2MzcyMWMgbGVnYWN5LXRydW5rCis4MDA2NiA2MmQxMTc4NTIwNGY0MDg1NmYyYzNlY2ZmMjhhNWVlNWE3ZDkwZTkyIHB5M2sKKzgwMDY3IDM2NGYxYWMzMjI2NGVmN2Q0NGRhYTUxOTllMDAwMDg1ZDZlMjNjNjkgbGVnYWN5LXRydW5rCis4MDA2OCAyMTI2N2JmMDcyMGUwMTY2MWI3M2UxMGI4MTc0MDlhNmI3ZTZmZWJlIGxlZ2FjeS10cnVuaworODAwNjkgZmE5MzAwZmNiMDA0MDg3ZTI4ZTA3NTM1NGM2YzA1N2RjNGM1ZjcyYiBsZWdhY3ktdHJ1bmsKKzgwMDcwIDYxMDJkODY4NmFhZWRhNzlmNjBkN2EwNjRhMTQ5ZWMzOTY2MDNkZmQgbGVnYWN5LXRydW5rCis4MDA3MSAwMWQxZmQ3NzVkMTZiNTY5ZjJjZmJmMGIxOTY0Yjc2ZDVkZDY1YjJkIHB5M2sKKzgwMDcyIDIyMTYzZDhjYWYzZTMzY2JlNWRhOWNmZjY3ZGQyYmIzNmQyMjJhZDIgcHkzay1pc3N1ZTQ5NzAKKzgwMDczIDkwNjljYTUxZTYxNDgyODM2YTUzNjc4NTMyYzYxM2VjZTE2MDRhMzkgcHkzay1pc3N1ZTQ5NzAKKzgwMDc0IGQ0NDNkODVmNjJjMTc3ZDY1MTE4ZGQ4ODJmNDA5MTQ2NmRmZDJlOWQgcHkzay1pc3N1ZTQ5NzAKKzgwMDc1IGNhMTFjODMwZjVjYzlkYWNkZmQ1OTNhMDBmMTQ0NmZhOGZmNWFlNmMgcHkzaworODAwNzYgYjEyNzZmY2RjM2JkNzUwMjBiMDI0MDUxYjhiMGY2NjU1Y2Y5NmFjZSBweTNrLWlzc3VlNDk3MAorODAwNzggY2RiY2E3YzM0MzFkMjZmMTg1NjhiOGQ3MjJkZDJlZmIxYTE3ZmNlNSBweTNrCis4MDA3OSBkMzUxZTE1ZmVlMjhmMDlkZGQ5NjY4MTA2ZmU5YWVhYmJjZDMwZTdiIHJlbGVhc2UzMS1tYWludAorODAwODAgYjQwNDM2YmNmNGIyYjQ2ZDUzNjNjMTQ5M2RkMTU4ODJhZDlkYmZlMSBsZWdhY3ktdHJ1bmsKKzgwMDgxIGM1YTRkOWQ3MmY5ODIxOTIzNmUyNTkxZTI4NTMxM2UxN2YxMjdkY2EgbGVnYWN5LXRydW5rCis4MDA4MiA3ZTg2ZjQ0MjEyZDY1NWE1NGIyNTRkNzA4ZWU0MjBhNjBjYTFjMDczIGxlZ2FjeS10cnVuaworODAwODMgMTRmMzEwYTZlNDkyODZjN2FlZjk1NzQxYjJjZDlkYzg2YzU3MmYyNSBweTNrCis4MDA4NCA0ODVlMzRlYzFhMWE4Yjk2MzZlYzhlZTRlMjZkOTg4NDQzNGNhODQ0IGxlZ2FjeS10cnVuaworODAwODUgNzY0OTQ2Mzk5MzUyZGYwY2NiNzlhZDdjODJmZjkzYzAyNGZmM2E1ZSBsZWdhY3ktdHJ1bmsKKzgwMDg2IDQyMjk2NjJlZGU4NzJkYmVjMDI3ZDViYzI1NDI5ZGI5YWY3MmI1ZjMgbGVnYWN5LXRydW5rCis4MDA4OCAzYTQ0NzNiZWVhZjUyMzk1ZWRkNTUyYzY3ZGQ5ODMzMjAyYzg5MjBiIGxlZ2FjeS10cnVuaworODAwODkgZjRiZDNiMmNiMDAwZWIzMjU3OWFiMDE0NzQwM2MzNWFkZTdmMjU2ZiBzaWduYWxmZC1pc3N1ZTg0MDcKKzgwMDkwIDVlODUxYjI5ZWQ5NWIxODdkMjQxZjJhMGU4MDQyYWZmNDU2NjEyMzAgc2lnbmFsZmQtaXNzdWU4NDA3Cis4MDA5MSBjMWQxZjAwMGI0MDRlNjUxZGVmZGFiZGI2ZTZkOTc4YzAyZTlhOTU5IHNpZ25hbGZkLWlzc3VlODQwNworODAwOTIgNzNkNzhmZWY5MWQ3MGZhMmZlMjZlYzc5MTMwODY3MmUzZDZhYjA5ZCBweTNrCis4MDA5MyA1ZmE0MDJhNDZmNWE3ZjdlMzYwNjhiNTMyNmNmZjBiZjc2MTk5NjZjIHJlbGVhc2UzMS1tYWludAorODAwOTggMzI0MDE2NzE4NjIxODA4N2Y1MDAzZmQ1MDc3YjE1ZWFhYmQ0MzMyMiBsZWdhY3ktdHJ1bmsKKzgwMTAwIGY5OGJkODVhZWJiMGY1MzcxODc1OGQ1MWU5M2NjY2Y3MmJiZTM5MGYgcHkzay1qaXQKKzgwMTAxIDdiOWUzMjhmNzUzMzIxZDBiOTdmZTc0YmNlYTNlNGE3NjdlMTg5OTIgbGVnYWN5LXRydW5rCis4MDEwMiA1MWI4NTUxNmQ3ZjkzYTgzZDIzYTRiMDg0NGM5MjA4NzA4ZTViMjNkIHB5M2sKKzgwMTAzIDM1YWI1Y2JkN2U3OTBjMDIzZTU4OTI1OTAzYmY1NTY1ZjVmMjEyYjYgcmVsZWFzZTMxLW1haW50Cis4MDEwNCA4MjBiN2UwYTZmMzhiMWI1NDE0Y2UwYjkyZWYxODRmZDQyZDc0NTU5IHJlbGVhc2UzMS1tYWludAorODAxMDUgMTM3YjQyNGUyZjc4NGJkOWRiODQ1NjU1YTcyZDU0MDUwMWMzMDEyMCBweTNrCis4MDEwNiA4MTI5Nzk3NWQyNTNlOWNmMzdiZTRmZmJkMGRiNGRjYWIzZDA2YjU1IHB5M2sKKzgwMTA3IGFmYjI1YzJkMDU2MTk0Y2RmY2VkOGU0ZjBlNDkxMTk0ZWZmY2JhY2QgcmVsZWFzZTMxLW1haW50Cis4MDEwOCAwMDU1MTBhYzA5OTViNmZmYWMyMDgwMDE5NzIxNDAyYWJiNzBkYjZlIHB5M2sKKzgwMTA5IDg3ZDEyMGI5ZWZmMmFlMzZmYjQyYmY2ZWE3NjYxNDEyMjE0ZTc2NmEgcHkzaworODAxMTAgNTQ3ZjMwYTBkNGIxZWQ2NTY4ZTI1ZGVjOTYzZjM2MmVmMzNmYzk3MyByZWxlYXNlMzEtbWFpbnQKKzgwMTExIDRjYmIwZmRlYmY3MzdjYWRiNDBhY2VmOTJlYmIwMmQ3NjcwNTM1NDAgcHkzaworODAxMTIgOTUxNzhlMTdlOTYxMGNkODA0MTM4NmJhMGNjZTgwMjhiYjdmMTRiZiBweTNrCis4MDExMyBiZGFhMjg5ZDlmMTk5ZDhlMWU2Zjk0ZTNmNjM1NzdjODJiMzQ3ZmMxIHJlbGVhc2UzMS1tYWludAorODAxMTQgMDQ0MmU3YTQxOGNlYmZjMzk0N2Q3ZDNmNTk3Y2UxMzhjZDNkMWNmMiBweTNrCis4MDExNSAxMTY0MGMxYTQ2Mjg4YTg2ZTBlNDgwNDMwZDA0NWE2NThjMGY2OGEzIHB5M2sKKzgwMTE2IDE1YjA5Y2NmYWM3Y2ZkZWVmNmM0NWM0YzljNDQ4NGEwYjM0Y2I3NWQgcHkzaworODAxMTcgNjMzNWNmMzQ1YWZhZTgxM2IyYzViMGY1MDQwMjA1NmRiODFjZTIzMiByZWxlYXNlMzEtbWFpbnQKKzgwMTE4IDQ0YTc1MDdmNmRiNTQyN2Y1N2RiOTU1ZWRhMGExNzFhMmI3NjI1ZGIgcmVsZWFzZTMxLW1haW50Cis4MDExOSBjYzEwYTE1Mjc1MjFkMTA2YjhlYTNhOTc5ZDRmYTIzOTcyZWYwZjUwIHJlbGVhc2UzMS1tYWludAorODAxMjAgNDVhZWRjYWU5YzQ3OWMyMDY2NjA0YWRhNjljZTg2NmQ4MzY0NGFlMCBsZWdhY3ktdHJ1bmsKKzgwMTIxIDhhYjViYmFlNWVmZTllODQ5ZjA4ODVjYzE0MzQxZjNkNjFiMzI3NDUgbGVnYWN5LXRydW5rCis4MDEyMiA4MWJiZDU2NzBlYzM5ZWM3MjcyMWNlZjUzMGJiZGQ2ZmE1ZDllMTc5IHB5M2sKKzgwMTIzIDYzYjgxNWNjNmY0YjFmZDliMDE4ZTJiOTIyYWVlMDNiZGQ1NWY1ZDYgbGVnYWN5LXRydW5rCis4MDEyNCAzNjk2ZDE3YTEwYjNhNDUyODFlZDBhZDkyMDJjNzc5ZTY2MWY0MTJmIGxlZ2FjeS10cnVuaworODAxMjUgYTc0OTFkNDdkNDU0NmZkYzJiZjhlMDZlZjQzYmRmMDk4OWNhMjE4MiBweTNrCis4MDEyNiBjZTYyNGNjYTIwMmFlOTE0ZjI4ODlmNzkzOWJiNGNmODJkYWVhM2NiIGxlZ2FjeS10cnVuaworODAxMjcgNDYwYTk4NGE5ZWQ1NzA3ZDJmYTM0N2E3YmI2NGQ1NDk0NjI3ODdhYSByZWxlYXNlMjYtbWFpbnQKKzgwMTI4IDc3MzQwOGNhNWVlNjMzZmZkYWMwYzlmZGYwMDFiYjRlYjdlZGFhNGUgcHkzaworODAxMjkgNzg0YTAyMjY2NGUzYTJjMTliMjUzNjc5ZDQzNjIxOWQ3NDdiZDJiNiBsZWdhY3ktdHJ1bmsKKzgwMTMwIDBhMDFhM2VhMTQwYTk3ZTA0ODJkYTNmOGJmNGY4Mzg3NWZmYWNiODMgcHkzaworODAxMzEgNjhmZDcwYTllNzdhZmRjZTdlZTljNjczMjA2ZjI0MWE2ZTQyMjllNyByZWxlYXNlMjYtbWFpbnQKKzgwMTMzIDVlMWRiYzNhZTc2Nzk3Yjc3NzYwODcwNTFiNzNjMzhmNTM3MjgxM2YgcmVsZWFzZTMxLW1haW50Cis4MDEzNCAxYTMzMDRjZTlhMmU3YWZhNmFkZTNkY2UwYTBkMTlhYjM3ZTAyNGQxIHJlbGVhc2UzMS1tYWludAorODAxMzUgZGM3NjViY2EyNGFkZDg0ZmI1ZGU1OTUwMTFlY2Y5Y2U4N2NhOWFjNiBweTNrCis4MDEzNiBlNTM5MGZlZGNiNmIxNjJjM2RkY2FlMjE5ZjVjNzUwMzIxNjRhNGMyIHJlbGVhc2UzMS1tYWludAorODAxMzcgN2I2OWU2MzBkMjM3NzkwYjU2ODVmOWYyMDgzMDRmOGY0Nzk3NDI2MyBweTNrCis4MDEzOCBjNTMyYWZiMGZhODkyODAyZTEzZmZjZmZlOWI1NDNkNGU0ODE2OWUxIHB5M2sKKzgwMTQwIDA0NmY5N2VkNTY3OTRlZmRlNzUyZDhkYjgzYTI3NTg0YWU0NmIzOGEgcHkzaworODAxNDEgMGUzNmNjMGQ2YWIwMjAzMzY5OTIxMzk1YWExMTYyZTIyZDZlZWRmYiBweTNrCis4MDE0MiA3MzRkZDJlZGExY2M0Y2E0YmE2MDEzYWY1ZjY5NjRhNzVhYzgzZGQ3IHB5M2staml0Cis4MDE0MyA3MzIxYzdkNjQyYWRkYTk5NTgzMzI3Yzc2YjBlNDZmNzljZDJkMWMwIHB5M2sKKzgwMTQ0IDI1ZTM1ZTM4MzhjNzc1OWZkN2Y3YzY4YjI3Y2RiMWVhNGUwZTg5YzUgbGVnYWN5LXRydW5rCis4MDE0NiA3YjA2NTY5MjljZGI5MjQ1MjUwYmI0Y2QzMDU0MWQ4MDczZjIxZDYwIGxlZ2FjeS10cnVuaworODAxNDcgMjkzOGJmODk5ODYzODk1YTRkMmEyYzg5YzRiYmJkN2U3NzI4ZTc3MSByZWxlYXNlMjYtbWFpbnQKKzgwMTQ4IDRmMTIyMGYzZTJjN2RiOGEyNjc1MWE0NGJhMGFiMWM0MDkxNmMxMzIgcHkzaworODAxNDkgNGQwMjA4NjYxYjFmNzM4N2E0YzlkNGQ1YzJlMTc4ZmY1MDFiNThmOSByZWxlYXNlMzEtbWFpbnQKKzgwMTUwIDM4NGRkNDQ5YTRlZTg4MmViOTAwYWNlOGNkZWQzMzdlYzYwYWI4ZjkgbGVnYWN5LXRydW5rCis4MDE1MSA3NDYyZTc1MmYwZmEyOGJhYmRjOTA5OTUxODhmOTgwNjA0NDBhMDEwIGxlZ2FjeS10cnVuaworODAxNTIgMzNkNDc5YTM4NjY2YWM1OTVmM2RkYmIxZDEyM2MyMzE5MDE5MDAxMyBsZWdhY3ktdHJ1bmsKKzgwMTUzIGYyZTJiMTk2ZGI5MjJjMjc4ZDc1MDEwMjVkMmU3MzRkZmJiNzQzZDEgcHkzaworODAxNTQgZTVmNmRlMThiNzE1NmU1YzE0MjhjMDA2ZDUyMGI3Mzg5OGFiNmUzMSBweTNrCis4MDE1NSBjYzM4MmYzOWIzOThjZjk5ODFmMTgwODJkZTNjZmRlZDNjNzkyN2YyIGxlZ2FjeS10cnVuaworODAxNTYgZDdkNWM3NjU0NWZiMzdmNWMwNWVkNDBkY2NiOTdmNGJmNTcxOGFmYSBsZWdhY3ktdHJ1bmsKKzgwMTU3IGJhYzk5MjI5ZGEyZGNhOTRiNjNjZmViYWJkNmZlOTFlNGE5MmRlN2YgcHkzaworODAxNTggOWFjZTU1YjI5ZjdlOWNlMGJiNmQyM2IzNDUyNmEwZTVkNTdiMjU3NSBweTNrCis4MDE1OSBlYjMwZTY2MmZkNmFjMTI3NzNiYTMzZWViYzI5YmExMDkwNzU4NmZmIHB5M2sKKzgwMTYwIGY3MzA3MTJkOTdiOGRkYzJiNjJlNjM2MWQ4ZDFlZTNmMjRlYWE3MTQgcmVsZWFzZTMxLW1haW50Cis4MDE2MSBkNDE5ZTczNzMzNzAyMTY1YmM1MzZmZWFlMDMxN2RiN2IxZjZlOTkyIHB5M2sKKzgwMTYyIDMxNmJlYzNmMThlYzkxNTEwZGNlMzc3MDEzNzBkYmE0YzI2YTMzYjEgcmVsZWFzZTMxLW1haW50Cis4MDE2MyAwZjM3YWZiOGE5ZjJjMGU5ZjU1MDZhM2RkOTlhYzUwNGQxYTdlM2JhIHB5M2sKKzgwMTY0IGQzZWFiNDU5NzM5NTFiOGMwNmVmMDJiOWU4MmUwMGUxNDU2YmQ3NWIgcmVsZWFzZTMxLW1haW50Cis4MDE2NiA3YzkwYWMxOTRlNDA4MmQ2MDMzMjhjMWRjZTk2ZDdhYTgwMDhiMmI0IGxlZ2FjeS10cnVuaworODAxNjcgZTA4N2I1ZDNkMTkxYzIxMDU4N2M3MzBjOTkyNTA1ZDk5OTQzMjZjMSBweTNrCis4MDE2OCBlYTQyYWY5NjhkOWQwNTVhMmM5ODQ5NWUyY2U1ODBkZmRkMmE4ZmIxIHJlbGVhc2UyNi1tYWludAorODAxNjkgOGVmYmNjZTA3NTdkZjYwNDdjMTg5NmZiYTE0NDM3ZmU1M2Q4N2Q0MSByZWxlYXNlMjYtbWFpbnQKKzgwMTcwIDdlMjcwZGNmNGJkNTkwYmI5ZjUwNDk4YjJmZWUyMDM1M2Y2NDgyODIgcHkzaworODAxNzEgMGMwZDgxOWVkYjlkY2Y2OTdjY2YyMzA4YTFiZWU1YmM1YTgxNDg1NiBsZWdhY3ktdHJ1bmsKKzgwMTcyIGEwN2Y2MDgyNWUxYWI5YTFiZjEwMjg5MWRmOGQwZDhkYjcwYjkzZDIgbGVnYWN5LXRydW5rCis4MDE3MyBhN2U2OWE1ZjIzMzc4NDYxMGUwNzg3OWM1NTRiMDliNWQxMTZmN2Q2IHJlbGVhc2UyNi1tYWludAorODAxNzQgNmNiZTg2NDU3MTdkM2U5OWRkMmE1NjgzMWI0ZGI5N2FjNzZjMWM3YSByZWxlYXNlMjYtbWFpbnQKKzgwMTc1IDY1NGUxY2M5YjRmZjU2YThmNWU1YTQ5YjJiN2JlYzc4YWM1Y2ZhZTAgcmVsZWFzZTMxLW1haW50Cis4MDE3NiBmYThhMDNkZmMyZDFjYjZjNjM2ZWI2MTJmYzcwMjU1YmRhYzlhYzhjIHB5M2sKKzgwMTc3IDEzZDg2ZmM2OTk0MDgxYmVhOTExNmMwYjgzOTZiZWRmMDhmNjAyMjMgcmVsZWFzZTMxLW1haW50Cis4MDE3OCAyZjU0NzU2YWViMTE2NmM3ZjBiMTg1MDA5YzRlMTNjYjBhNzQ5YmFhIGxlZ2FjeS10cnVuaworODAxNzkgMjI3MzdhOTliZjhjNDQ0YmM0YWZmM2ZiYjk0NjkyMmE4ZmQ3NThkNiBsZWdhY3ktdHJ1bmsKKzgwMTgwIDZjYjFjNDgwNGY5YzhiMWVjZjcyOTU1YzU0NWU2ZTRkOGNjNjFmN2UgcmVsZWFzZTI2LW1haW50Cis4MDE4MSBmZTZiNmMxODliYjQxNTNkNWNhYmEwZDE1ZGM3NTI2YmM1NGQ3Zjg5IHB5M2sKKzgwMTgyIDFmM2QyZTYxMmI0NGFiNzdlMTgxYjQxMzAxOTI5OTlkMzgwYjc1NmUgcHkzaworODAxODMgZmIzZTQwMGMyY2RhNDA4NTkyNDk1YjkyYWQ2MzBmMjdmYTI4NDNhOCByZWxlYXNlMzEtbWFpbnQKKzgwMTg0IDQ1MDVlYjU3YjRjYTdkZjgwMTk0MGRkMGNlOTcyZGZkYzFiYTkxNjQgcmVsZWFzZTI2LW1haW50Cis4MDE4NSBiZWRkNmVlMDNlNjA0ZTc1NjljNmY4MGQ2ODZjMjQ0YjI2MjM2ZTYxIHB5M2sKKzgwMTg2IGY3NjJjNmE1NGJmY2M3NmM2YzUyZTk2OWE3MGZlYzU1MjIyY2E0YjUgcmVsZWFzZTMxLW1haW50Cis4MDE4NyBhOTZmZDBlODc0YjQ5OGE0ZTY0ODI3ZTBhMWRlNjJlMmIwNTdhMmIzIGxlZ2FjeS10cnVuaworODAxODggYmNhNTc0Mzc2MTI3MmRkMWVhYjMyNTg2MWJkZGMwZWFkYjNiOTQyNSByZWxlYXNlMjYtbWFpbnQKKzgwMTg5IDcyNjdlMGFjZTMzYzE3NDI1MGE3ZmM1NmZjNjk1NGZmYTVlMWFhYWIgbGVnYWN5LXRydW5rCis4MDE5MCAwNDNmMTQzMDRkZWQwNDczNTcwMmMxZTQ5MjMyZDlhMjM2OGRmNDhhIHB5M2sKKzgwMTkxIDJjZmIxMGE2YzJiNWQ3MGI1M2ZkNzVkNmFmMDQxNDU2Y2U3MzViMzkgcHkzaworODAxOTIgOWQzNWFmZDg4MjFmMDA3NWE4YjQzN2Y5NjQzYjMzOGZkZGUwZGE2YyByZWxlYXNlMzEtbWFpbnQKKzgwMTkzIGE1MmNiOTkxZjU0YzFiMjc1Y2I5ODIyY2I2MDg5MjI3ZTU1ZGVhMjggcmVsZWFzZTI2LW1haW50Cis4MDE5NCA3NjY0OWVkNDVjNjM3YmFmOTRlNDkxNDExNDlkNzZmODdhZDU5ODEyIGxlZ2FjeS10cnVuaworODAxOTUgMDY0NGNhM2ZlMzBhMDRlZjY2YzMwYmQ0Nzc1Mjg2OWZlOTlhYjE3OSBweTNrCis4MDE5NiA0Nzc0ZDU5ZWVmN2IzNzYyMTNjOGVmOTE5ZjE0MWYwZmIxMWUzY2JmIHB5M2sKKzgwMTk3IDI4ZmMzMTY4OGI3YzEwMzFmMjU2YTE3NGRhNzBjZjBhMTI3ZGE3ZTEgcmVsZWFzZTMxLW1haW50Cis4MDE5OCA5YWFjMWQzZDg3M2QxODBlYjQ0ZGQ5YWU2MDU4ZTcwODg4MjkyZjVkIHB5M2sKKzgwMTk5IDQ4NWMzZjA5YTA5YjQ4ZjhhM2U5OTkyMjYwNjg3ZWYwNmE1YzI3ZjMgcmVsZWFzZTMxLW1haW50Cis4MDIwMCA5Mzg2ZTNkZDU3MDBjNzA4MWMxYzcwMzFhMDBjMjY0ZjYxOWVjYmI3IHB5M2sKKzgwMjAxIDE4YTE5NTYzM2I1OTllZGMxZjEwYzY2MWRjZGU3NDQ3MzgyZDQ0ZjIgcmVsZWFzZTMxLW1haW50Cis4MDIwMiA4ZjVjNDgwZjZkNmY1OTUxNWY4ZjgwYWRiNmRmMWJkZGMyYzNkNzg2IGxlZ2FjeS10cnVuaworODAyMDMgY2Y1NzU2ZWM2ZWQ3ZDdmNDJiNGY1OGNhYzI0OTEwNzQ3ZmJhODFjNSByZWxlYXNlMjYtbWFpbnQKKzgwMjA0IGFhNzA3ZjEzYzQwMjhhMjc0MTAxYWRmZTU0MmM4NDQ3ZTM0MDJhN2YgcmVsZWFzZTMxLW1haW50Cis4MDIwNSBhNzI3Nzk2NzJmMTU5ZjMxYzAxOWIyMjU5NmJlMDAyODMyNDk1Y2FhIHB5M2sKKzgwMjA2IGNmODA2OThmMjc1NjgyOGFhYTRkYTM5YzM5MjE5ZWVlYmYyZmQ3ZDUgcHkzaworODAyMDcgYjg3NTAyMWNkOTkzNzAyMTAwZDRkOWY2ZTJmYTQ1MWY0MTQ5Mzk5OSBweTNrCis4MDIwOCAyZGViNzhiYzVkMzg1OTIxMzI3M2ZkYTg3YWVlNzgxY2NjNDUxOTAxIHJlbGVhc2UyNi1tYWludAorODAyMDkgNmUyZTJiNjI2ODVlZDdhOWMwNzBjYzZmMzUyOTUxNzY2MTRhYzkxMCByZWxlYXNlMjYtbWFpbnQKKzgwMjEwIDQxZTJmMDU0ZDUzOTAxY2E4MjM5MzA5ZTVlNjFmN2UyYTMzMGZhZDYgcmVsZWFzZTI2LW1haW50Cis4MDIxMSA3YTU2NGQ3NGZkNGE4YTM3ODkxOWRlNWI1YWNmZDk5MWM2YTQwZmE2IHB5M2sKKzgwMjEyIDc4OTYxMmNkMDk3MDVmZDI3MWQ1NzJhYTU0MjQ3OWYzNGU3OTg2NDEgcHkzaworODAyMTMgODM2ODJlN2Q1OWE2NDQzOTFlNjBiODM0Zjg5MjJhYjQ1NThiN2U1MSByZWxlYXNlMjYtbWFpbnQKKzgwMjE0IGNlNjA1ZTk1MDAwODA2Y2UyNzU0NDQyYjIwM2I4NzkwNWMxNTFmNTAgcmVsZWFzZTI2LW1haW50Cis4MDIxNSA0MDkyZTQ1NjZkYjNmZjI2MTljMjAyMjY3NDJmMmU5MzgyMmNlMjgyIGxlZ2FjeS10cnVuaworODAyMTYgN2Y5MjYzMmY5MTJkNmM3YTM0NjFiNjUxNTYzY2MwNDY4NWE1MWY0ZSByZWxlYXNlMjYtbWFpbnQKKzgwMjE3IGI1MTRmODMxMWYyODU1ZDVkNWU1NmI4ZTA0YzNmOWQ4ZWRjYTZjNGYgcHkzaworODAyMTggYmNmYjZiYWRmZjg4NDFiYzBlNGNjMDBkMmE2MTk5YmRlZmU5MjcyYyBsZWdhY3ktdHJ1bmsKKzgwMjE5IDcxODYwY2RiNDg4NjkxZTYwMTQ3ZDM5N2YxMDY5NDczZDU1MWM3NGUgcHkzaworODAyMjAgMWYwMmI0M2UwOTA4OTI0N2NiZGFiZDAzNjUwNDZkMjI2ZWQxNDU4YiByZWxlYXNlMzEtbWFpbnQKKzgwMjIxIDJmMzExZGFiMDY5NzM1ODBiMzU1ODJlMTRhMjc1YTViY2U3NGE4MmIgbGVnYWN5LXRydW5rCis4MDIyMiA5OGIyY2QxMGFiMDVmMDFkMmE2Y2VlMmE3N2VmZTY3NzExMDM4ZjQzIHJlbGVhc2UyNi1tYWludAorODAyMjMgZjc3ZTM3YWZjODcwYTQzOGNkYzcwMzI3YzA0MTA0YjFhNmJlNWNlYiByZWxlYXNlMjYtbWFpbnQKKzgwMjI0IDdhZDZlYTk3ZDQ0MDIzMTU4NjcwMWEwNWE4MTEwYTY0NTViYTk3M2MgcHkzaworODAyMjUgMzAxZmJlOGJmYWQxODU5ZTE3NWNmMDFlMDdlYzg5ZjY0YWMwYTAxNSByZWxlYXNlMzEtbWFpbnQKKzgwMjI2IDMyMjg1MzEzODk2Yzg0MDEwMmY5ZTMxY2VlNGYxMzFjMWQzYjU5YmIgbGVnYWN5LXRydW5rCis4MDIyNyA3ZmVmODc5NmY3NzcwNDJkN2I4MmI1ZDgzZDU3ZWI5NmM5M2ExMzA0IHJlbGVhc2UyNi1tYWludAorODAyMjggMzliNTYxYzUzZTlhZDdiYmY2MWMwYThhY2IwOGM5YTUzZDM2ZGM2ZSBweTNrCis4MDIyOSBjMTNmODI1ZmRlYWI3NmIyNDkwZDc0MjQ1MDk0N2ViMGZhNjk4YzZmIHJlbGVhc2UzMS1tYWludAorODAyMzAgYmUxN2JkYTVhNjU4ZTJhYjFiOTk1YTM2Y2QyZmIwZTljMTBkMWFmYSBweTNrCis4MDIzMSAzNTk5NTRjZjBjY2RhOWQwZTJmYzA2MDg1ZWQ4MGY2NjU5YTAwZTIxIHJlbGVhc2UzMS1tYWludAorODAyMzIgNTkyN2ZkZjVkNDhjNWFlZWUxN2EyODJkMGM1Y2JiMjMxYTMyZDJkMiBsZWdhY3ktdHJ1bmsKKzgwMjMzIDhjOTgyOGMxNTA0MDlmMjdmMTFlYTNmMjBiNjU5NzNjYzY1NzFjNGIgcHkzaworODAyMzQgYmY4ZDU0MDJhYmZmMjlmNTQ2Y2QyMzUyZjJmZDg5NjI4MTk5YjFlMSByZWxlYXNlMjYtbWFpbnQKKzgwMjM1IDFmYjYwODE0MjA0MDRmNWRhZWI3NTlkNmVjZGM2ZmYxOGRkYzU4MTAgcmVsZWFzZTMxLW1haW50Cis4MDIzNiA1ZjVlZTk0ZjE5MjYzZGY3ZTU2MDk4YmM3M2MyYjUzMDA2ZGUzYjdjIGxlZ2FjeS10cnVuaworODAyMzcgYzIzN2JmM2QwNDNjYWFkMGJiYzUwMDkxMzc0YmU5NDVhZDI4YTUzNyByZWxlYXNlMjYtbWFpbnQKKzgwMjM4IGVmNzNhYzcxZTI5NTAyZjZkY2VmZjNhMzY5NDE3Yjk0ZGJlNWVhYTQgbGVnYWN5LXRydW5rCis4MDIzOSBlMGZjYTNlN2NlYjk0YmRjNTc0MTFmNjcxMzllNzU5YTM5MWVhNmIxIHJlbGVhc2UyNi1tYWludAorODAyNDAgNjIwM2Y0NzE2NTg1ZjJlZTU4Y2ZjZjU1N2NiOGM2ZTkzOThjNzE2NyBweTNrCis4MDI0MSA4ZDA4ZmRjOTdhYTRjNTMzY2VmYThiMDg0ZGQ2OGM2M2Q4ZWMxNWU1IHJlbGVhc2UzMS1tYWludAorODAyNDIgZGM3M2VlMmE4YjllYzZiMGJiNTc4YTBlMDY4ZDFiZTlmZDE3ZDMyMyBsZWdhY3ktdHJ1bmsKKzgwMjQzIDcyNWJlOGY5NDE4YjgzZTQyNGUzY2M0NTNjZmNlYjk4MGViNWRiMDggbGVnYWN5LXRydW5rCis4MDI0NCA4MmRlMGI0ODhmMmRkNzMxY2Q2MDA1NTkwMmI3ZTVjYWQ2ZDZkZTg1IHB5M2sKKzgwMjQ1IGIwMTgzMTlhNjE1YjM1MjMwYzZlYzUwNGI5ZTk0Mjg0MjllNDcyMzYgcmVsZWFzZTMxLW1haW50Cis4MDI0NiBmMjczMmNjYzEyYjQ3MGQ0OTRmMmE4ZWQ5MTU3NDdmZjI2YmRiMmExIHB5M2sKKzgwMjQ3IDM5NzM4OTgwNTZiNjBmY2I2YTgwMjIxY2UyNGFmZjcwZjQ1ZTNhMDAgcmVsZWFzZTMxLW1haW50Cis4MDI0OCA3NjM4MjIzZjJlMDJlOTUxMjM3OGFmODgwYTY2ZDA1MDQ1OWFkY2M5IHB5M2sKKzgwMjQ5IDhkZTI4NWNhZGIyNDAzMzA1ZDJhYWFjYjAxYWE2MzgxZjExMTQyMWIgcmVsZWFzZTMxLW1haW50Cis4MDI1MCBhZTI3ODE5MjJhNmRlNTcxNWY5NTI0ZTc4YmMwZmJmMDJmY2U3NmQzIHJlbGVhc2UzMS1tYWludAorODAyNTEgY2VhMzhlZjYwNzAwZWYxYjhhZjdkMmJjZGI2MGE5ZWUzZjY4MjA3NSBweTNrCis4MDI1MiA4Mjc2M2IyMDBhNzkzNzk1NjA4Zjg3MDc4NzkxNWI0ZDQ3ZjgxZjJmIHJlbGVhc2UzMS1tYWludAorODAyNTMgZGE4NzA0OTkzMDAxNmZiNTIwNzU0NDY2MzBiMzk4OTdjMTM4MGQ5ZiBweTNrCis4MDI1NCBiYjhmZTc5ZGM1Y2IzNTJmYTRhYTMwYTg0N2MzZWM1MmIzYjM1MTA2IHJlbGVhc2UyNi1tYWludAorODAyNTUgN2QzNDMyYjA3ZWExYTYyZGZhODI3YzMzNTA4NDM0OTllZTBkMmYxOCByZWxlYXNlMzEtbWFpbnQKKzgwMjU2IGJlMTBmNGZhYWYxMmNhMTQwYjZmMWY4OTNiMjlkYjNiZjhjZDRiNjYgcHkzaworODAyNTcgYzJmZGRkYjJiNGE1NWFmZmY1YTIzNWRkYTEyMjAwNmVjYzE0YjczMCByZWxlYXNlMzEtbWFpbnQKKzgwMjU4IDQwYTNhNjMzYzU2NDg0ZmQ2OGYxNTBkYzdhMGQxMWMzODRjZmRiZDMgcmVsZWFzZTI2LW1haW50Cis4MDI1OSAzODc0MjhmYTY5ZmNkYjBlNTJkMDExZWIzMmY5NThmYTEyMWVjYzUyIHB5M2sKKzgwMjYwIGU3NzNlMjRiMTRlNmJmZTc1NWYzMWY1MzM4YTNlYmZlZmY1ZGVmYjAgcmVsZWFzZTMxLW1haW50Cis4MDI2MSA3Y2ZhNzk3NWFiMGUxOWUwMjM2M2NlMDU5YmYxYmE0NzA1MmVmZGE0IHB5M2sKKzgwMjYyIDdjYTEyNzJmNDNhMzRhZTNhYWMzODI5NmE5NmFhMjA3Mzg4ZDQxYzYgcmVsZWFzZTMxLW1haW50Cis4MDI2MyA3M2E2MTY1ZDAwMmJkNDY0NGU2OTM1MmJlNzQyZDVmZDRkM2IzNDg3IHB5M2sKKzgwMjY0IGQwNzEyMDFmMjYxMmQ2N2VmMzA3MjgwY2MyMzY3NmQzZDI0OGUwODIgcmVsZWFzZTMxLW1haW50Cis4MDI2NSA2ZWNhN2ZiZDUzOWVkZjEwZmJiMDkzY2Y3MjRjYjQ1MDE4Y2JkNTFkIGxlZ2FjeS10cnVuaworODAyNjYgYWUyNzJkMjEyYTlkYWNhZmQ2ZDkxNGQ0OTNmZTBmMDZkZWNkOGMzMCBweTNrCis4MDI2NyA0ZTVjNmIyOWQ5Mjk1ZmU3MTk3ZjAxOWNiY2U3YzMyNTYxMzVkZWU5IHJlbGVhc2UyNi1tYWludAorODAyNjkgMWZkMjcwOWVkM2ZkYjllMDEzMTc0Mjc0OThjZjU2NDUyMmMwYWZmNSByZWxlYXNlMzEtbWFpbnQKKzgwMjcwIGY4OGVhMWI0ZmRiZTdjOTY5OThhYjJmNzg3OWEzMjYxMDViZjY4YjMgbGVnYWN5LXRydW5rCis4MDI3MSBlMzE3ZTg0ZThhMWFhMWE5ZGI5OGQ0MjM0MWEwYTIyM2FhNGUzMDMxIHJlbGVhc2UyNi1tYWludAorODAyNzIgMDcwMzVkZTA1ZDRiZDRmY2IwMjgyNTJjMTJiMjBlNDMxYjE3NTRjMCBweTNrCis4MDI3MyAwZjAxYmQ2MjA4NGVmYTZhNWVlMWE4YTQxNTUwZWU2YzY3MzlmNzY1IHB5M2sKKzgwMjc0IDZkYTcxN2JmZTQyNTc4NGVlZjE0ZjZiNTNmNWNlMTg5OGE3NjUxZDAgbGVnYWN5LXRydW5rCis4MDI3NSA1MDZmYWRkYzhhOWU3MmY4OTNiZjVjZGJiY2Y0MmU4Nzg1N2Q0ODMyIHB5M2sKKzgwMjc2IDU3ZDA5Nzk1MDk2ODczNmI0NDk0ZmMyNGNhNWFkNzIzYzcxNzNiMzIgcHkzaworODAyNzcgN2M4ZWIyYmE5MTI5OGI5ZWY2ODA0MjkzOWY3NGRhNTUzZTQ5MTA3ZCBsZWdhY3ktdHJ1bmsKKzgwMjc4IGQxZDIwOWYyYzgwMzlkODdjMDZkZTBlNTkxODEwMTFlODc2MmFmZmYgcHkzaworODAyNzkgZDdmZWZmYTc4ZmEwMTY3NDk1ZmRiNWY0ODAyMDZlNmY4ZjYxMTUwMCBsZWdhY3ktdHJ1bmsKKzgwMjgwIGQwOWY4NDI1OGU1MjJkZGY3YzI3MWVjNDhkNTNkZWZlNGM1MzkyYmUgcHkzaworODAyODEgYTIyZjJhZTg1NjQ1MjUxODVlNDhmZmRlMjMwM2IyOTNjNDZiNjAwOSByZWxlYXNlMjYtbWFpbnQKKzgwMjgyIDRkZGNhN2ZkMzYzOTE5MDA4ZWU1NmJkZjg1ZDY5ZmEyZTM4MjdjMmUgbGVnYWN5LXRydW5rCis4MDI4NiBiZDQ1ZTAxMTA5OTAxNGVhZWJhNmEzN2JkY2M0OGRjNjdhNmY0ZjZlIHB5M2sKKzgwMjg3IDI1OWVmZTViOTYxYjFkY2ZmZDQzNDFkYWQxYThiZjA0ZmM4OTdjYzkgcmVsZWFzZTMxLW1haW50Cis4MDI4OCA4NmQwOGNiNmJhNWMxYTRkZjM3MTQxMzUyMjVlMmQ2M2M0ODk5YWZmIGxlZ2FjeS10cnVuaworODAyODkgMTlhOWE0NTdhNDdhYzYwMzE1OWQxNjNhNDQzY2MyZjAzNDk4MWVmOSBweTNrCis4MDI5MCA4YjM2ZjcxNzUyMzg2YjlkNjc1ZmQ1MWRjMjg4ZDhmMTBlMmRjYjkyIHB5M2sKKzgwMjkxIGFmMjdjNWE5ZmViODE0ODZjZTUxMGMxMWMyYjZhZDA4MDVkZDllZjggcHkzaworODAyOTIgOGIzNDQ1ZGZhNzE4ZWNmMTdlOTg2MzhiOGM5MDViMDFiMzU1ZjcxMiByZWxlYXNlMzEtbWFpbnQKKzgwMjkzIGYzNGZiMTUxMGNiYzUwNTU2YmY5YzNiOTliN2M5NTBkZTE5ZmVkZDggcHkzaworODAyOTQgY2NlMGE1YjIwMTVlMjQ5ZTE3MjkxYmIxYmRiZTRlNWUxNGJkNTBhNyByZWxlYXNlMzEtbWFpbnQKKzgwMjk1IGY0MDQ3YjVhMGY1NGJkNTNmNTU4ZGFiY2YxZjgwYzI4OGFkZjU5NGEgcmVsZWFzZTI2LW1haW50Cis4MDI5NiA0NzNhMGY2Nzg4MDYxMjYyYTNjMTk4OGE1NzllMWE4NzkyMjRlZjE4IHB5M2sKKzgwMjk3IGQ5NWFjZTUyOGQ2NTcyNmUyNjIxZTE0NTI1ODRhMTQ4ZDg2ODg5NGMgcmVsZWFzZTMxLW1haW50Cis4MDI5OCBmNWFmYWRiNzQ1ZGExYTMxZDMwZmM5NzlmNDljYWNjMzEzNjI4N2ZjIGxlZ2FjeS10cnVuaworODAyOTkgMWI0M2VlMWVlM2Q4ODUyNWQxYWI4YmJjNzBiOTg1M2E3YWE3YmQ5ZiBweTNrCis4MDMwMCBhMmE0ZDlkYzc4ODRmNGVmNDlhOTY2YWQwZTg3ZDZlYWNiZDQxYjBlIHB5M2sKKzgwMzAxIDcwMzljNjA0NGFiNjUzNGZhYjE3NWZkZGFmNGM5NmZmOTg5ZTM0MmMgbGVnYWN5LXRydW5rCis4MDMwMiA5YjkyZTc2NzExMzU4NTcxOGJkYmQ3MDQ1YmU3NWMwNTNiMWE1YjZkIHB5M2sKKzgwMzAzIDhlMmE3ODg0OTI5ZGEyZDFmNzk2MjU2N2RkOTE3YTgxNzIwMWE4N2IgcHkzaworODAzMDQgOTVjY2FmYzE0NDc1ODE2MTVjN2E3ZjYyZmI3OWY0NWU2OWJmNWI1ZCBweTNrLWNkZWNpbWFsCis4MDMwNSA4YTkxY2IzNmUwOTRjY2M4OTdhMzg4NzViYTMzNDA3YWM3OGUyZGQ0IHB5M2stY2RlY2ltYWwKKzgwMzA2IDJkYjA2ZmFlOGMyZWFkNjU0ZmI5ZjY2ZDZlMGExMDA5ZTBmMjgxYTYgbGVnYWN5LXRydW5rCis4MDMwNyA5NDI1NDIzMWFhNmFmOTk0N2Y1ODFmZWFhMzIzMDMzMDMyZTUxZTgxIHJlbGVhc2UyNi1tYWludAorODAzMDggODE5ZDgxMzQ3NTIyOGU3MmMwNzQyZGM1ZmFiNzc5MDBhNWRmYWZiYSByZWxlYXNlMjYtbWFpbnQKKzgwMzA5IGMyOTA1YjBlZjFkMjRkNGNkOWU3ZTM3MWMwODNlYjlhYzViNzRiYzkgcHkzaworODAzMTAgMGE3YTI1YmJiMzRmNzJiNGViNmNiMDM2NTc0NGFmMzVkYmY0YzhiNiByZWxlYXNlMzEtbWFpbnQKKzgwMzExIDZkODM2YjEwZTM3MDk4NmU5MDE4MDhmMzdlNTdhNzI3M2EwNTg2MGUgcHkzaworODAzMTIgYTU1ODI3YjBlYzNiYjk1MzQ1MzczYmU2MzZiZGE0OTQ0YjRlZmJmMyBweTNrCis4MDMxNCBjOTFmYjUwNmYwOGRmMDk0NWNiZjk4Yzk1YWVjMjk5MTA1OGUxYjVjIGxlZ2FjeS10cnVuaworODAzMTUgYzFkOGEwMDU1ZmRhNmU0MGEzZjZmNzIzZTBkNzYwZWJlNDAxNTU1YyBsZWdhY3ktdHJ1bmsKKzgwMzE2IDlkODZmMDcwMWQ5Yzk4ODdmNjY3OGM5YWUwMGE2OWQ3MjRiZTg5NWQgcmVsZWFzZTI2LW1haW50Cis4MDMxNyBmMzZhMGViZWIxNjM5MTU3ZmQ3OWZmNzZiYmI4NDdlOTVhOGEwY2YwIHB5M2sKKzgwMzE4IGEwYjhhZjFiZTU2MGJkYWQ2MDc1ZWM0ZWEwM2NlM2YyMDE3OTE2Y2QgcmVsZWFzZTMxLW1haW50Cis4MDMyMCA5YmEwMzc4M2VjZTNjYjQ1ZGFkZmM0ZWMyN2JiOGMzNzhkYWRkMDhkIGxlZ2FjeS10cnVuaworODAzMjEgOGU0MjQ3NDExNzU0MjQyYzM2NDFmZWZhMTI3OTU0ZTVkNzY1NjQ1NSBweTNrCis4MDMyMiA4YTViMmQwNjI5OGQ3ZjcwZWI0M2JlOGI4MjI3OTM1NjliY2JlNGFjIGxlZ2FjeS10cnVuaworODAzMjMgYTNjZTI3NWJmMDk1NzNiNjIxNTRlZDExNmJmZWNiNzgyZTQxNmU1NyBweTNrCis4MDMyNCA4ODhjNzVhMWJlNTUyMTliZjM3MDM4YzUxMmU2MmZhZDY5ZjdiNTIwIHB5M2sKKzgwMzI1IDc2OGNlMTA3OTlmMmQ4NTNjNGU0ZjAxNjE2NzFiYzdmNzgwY2RmNmEgbGVnYWN5LXRydW5rCis4MDMyNiA5MmE2MzNhMzBhY2I2Y2ExMjUyNjdjMjg3ZmNlMmUzY2NkNGJkNWZlIHB5M2sKKzgwMzI3IDY3YjgxYzMyODRmOWIwODVmMmY2NmEyMmM4ZDEwYzhiN2I1MjQwNDkgcHkzaworODAzMjggMWMxMDViMzcwNzQ2MDUzMDUyZTAyNDkxNWNiMDA0YzFkYWVjOTMyMyBweTNrCis4MDMyOSBlMDkxZDk3ZDUwZDU4MzA0ZGJlNDUwMjQ5YzM3N2Q2OWVjMDBhOThiIHB5M2sKKzgwMzMwIDA3Mzc5ZmU3NWM1NzA3ZmRmMDZkNjVlZjNlNDg1NTQ2NjJjMmNlMDAgcmVsZWFzZTI2LW1haW50Cis4MDMzMSA1N2FhMzEwMTJjYTUxY2MzZGE4MzVjYjg5ZWY2M2Q0MTNmNzFmYmEwIHB5M2sKKzgwMzMyIDkyNjY5OTY1Yzk5NzE5NGMyY2Q5OWQxMWI1YzYzY2QwZTkzNGFiYjAgcmVsZWFzZTMxLW1haW50Cis4MDMzMyBiMTljNjE2ZDViNGFkOGVmMTA4MzI4ODM0MmNlOWI3Y2U1YmE4ZDkyIHB5M2sKKzgwMzM0IDdkNDlmMDIxYzg0MjA5M2IwY2Q4MmYxZDQ1OTZhOGU4MGNhMWQ3N2EgcHkzaworODAzMzUgOWY0ZjY3MGIxNDhjYmE2MTY0Y2I1MGFjMDQ0MDMyZWY2ZmRhZWRmYSBweTNrCis4MDMzNiAyYjA5ZDgyMWJjZTFlODk3YjlmNjA5NzY3Mzk0MzEzNjA4M2E0NzIzIGxlZ2FjeS10cnVuaworODAzMzcgY2FkNGUwOWYwMmExMzMwN2RiMDNkODk5MTYwODc1YjE5MmI4Yjk1NSBweTNrCis4MDMzOCA0YjAxZTgwZDZjMWZmNjhmZmQ2MWNkZDU0ODQ3M2M0NmFmNDc2MWE5IHJlbGVhc2UyNi1tYWludAorODAzMzkgYjM4NzVkMWIzODQ3MzkzM2U4MGIwMjQ4N2E4MzViYThiYzY4MzEyMCByZWxlYXNlMzEtbWFpbnQKKzgwMzQwIDE4NmJjM2I4MGY1NzEyMjlhZDUzZWVmMDk5MDQyNDI1YjZlN2QzZjIgcmVsZWFzZTI2LW1haW50Cis4MDM0MSA5NGI2NDk0MGRhYzQ2NGM3YzNjNjMxOTg0ZTJhMWViNGUwMWI2ZTg0IHJlbGVhc2UzMS1tYWludAorODAzNDIgNTRmMTUwMjAyODhhNDZjNmZlNjMwODZjMzM5MDQ3NzU0ZmYyMDZkNCBweTNrCis4MDM0MyAyMzQwOTU5NTEzNzA3MWNhZDNlNzFkYjMzYmNlODc3OWYwN2JiZWMzIHB5M2sKKzgwMzQ0IDVjNjI1YTA0OGY5YTU2YmIzYjI5NmM0NmMxZjViMDA4ZjFhNzk5ZWEgcHkzay1jZGVjaW1hbAorODAzNDYgMTA0ZThjODAxZTVkMzgxOWM0ZTFjODc4ZGZhMmU5YWZmNTUyYmY2MSBweTNrCis4MDM0NyBjNDQ5ODE3ZjRiNTRkZDQ5NGRkM2M0YTM1NTNmYzlhYjFhYjA2ZTUxIHJlbGVhc2UzMS1tYWludAorODAzNDggNmI3ZTIwMDAwZjk3NjY3N2E2NzViOTBkMzM2ZmIxMThkY2U2YTEyMSBweTNrLWNkZWNpbWFsCis4MDM0OSAzZjI3NzNhZTg0NDhhZDIyOTE3NGUzOWFkMzNmM2Y3YzlkNTlkOWFkIHB5M2sKKzgwMzUwIDU0NzgwMDQyZDFlN2Q3NDM1NjdlNzdiNmJkYzI4MzUyZjBiY2U3NmEgbGVnYWN5LXRydW5rCis4MDM1MSA4YzA1MTdmNTBjNGU5NDkyMDM1MGU4ZGFjOGY1YTUyYzZiMjVkZjhhIHJlbGVhc2UzMS1tYWludAorODAzNTIgZGUzOTQ1MTAxYTZlMDBiNjFjNTE5MTgxZjRhMDdhMDc5ZDQzYjkyNCByZWxlYXNlMjYtbWFpbnQKKzgwMzUzIDdmYzI0YjRlNWZlZGM4ZTRiODA0NjMyYzIyMmIxMjNhYmVlODkwM2YgcHkzaworODAzNTQgODg5OWY0MDgwNDNjNDc3NTUwMTJjYjJhMmU2Yzk2NGNhYWI0MzJlMCByZWxlYXNlMzEtbWFpbnQKKzgwMzU1IDNkNzM3ZjJhYjkwMTQwZDAwODM5Y2Y0MTA5Y2VhMThjYjliY2Y0MDUgbGVnYWN5LXRydW5rCis4MDM1NiAyYzNkN2JkNzE2MzY0OGEwOTMwYjhiMTk1NjQ4Zjc1MGE3ZWQ5YzQ3IHB5M2stY2RlY2ltYWwKKzgwMzU3IDczNmNmNzUxZmY0ZjVhNTczZTJjMTEzZGMyZTM1ZDEzYThiNDA2ZDEgbGVnYWN5LXRydW5rCis4MDM1OCAwZTY0YmEzMjI5MmJhNTdmMmIyYWU4Y2VmNTRmZTc2ZjNkMzIwOWE2IHJlbGVhc2UyNi1tYWludAorODAzNTkgYjNkMjBkNDQ2NjM4OTgyZTVmNjgzZTEwZGRmMDM0NmY5MjBkOGM2OCBweTNrCis4MDM2MCBkYjcxNmE3NGI1MTdmYzVkOTJmMjVjMzA0ZjIxMWY5MGU3MjdmODE5IHJlbGVhc2UzMS1tYWludAorODAzNjEgZGQxOGNjY2I1NWIwOGQ5ZTk5Y2IzYjBmODNkMWM3ODcyMjA4NmU5MiBweTNrCis4MDM2MiA5ZGM4NjRlZjY0MjVkNWVlODJmODQyNjliOGM3OWM0NjJkMWJhYzY2IGxlZ2FjeS10cnVuaworODAzNjMgOTE3ZDZhNzRmZDRmM2E0ODRiNDE5YjI5NjIxZDUxODdmMzZmOWQxNSByZWxlYXNlMzEtbWFpbnQKKzgwMzY0IDg3Yzk4ZmI3NzhiNGZkMDJjZmNkZWFhMDJiMWM1ZjNiOThlNTUyZjQgcHkzaworODAzNjUgNWI3MjZjNjAxZTIyMTYxYTZhMGNiNjNkNzg1NGVjMmQ1MzhkYzkyZSByZWxlYXNlMjYtbWFpbnQKKzgwMzY2IDNhOGE2MTg0ZjQwYTU0ZWQ3ZWQ5OGQ5MGE4Y2M4ZmE0ZTNjMzE4OTcgcHkzaworODAzNjcgMjY5MDJkOWJlMDMzYzZjMDJhODk1NzRkMDc3YmE0NzFkZjljNGQ3YyByZWxlYXNlMzEtbWFpbnQKKzgwMzY4IGMwMTNhNzE4MjliZjIzZmM3NzEzZWI4OWFmMTY5YmNjMWFjN2ZmNTYgcHkzaworODAzNjkgNGFkOTA0NjAyNDYxYmEwY2M5MTQ0N2ExZTNkYTcxYTIwODdlN2I3YSBweTNrCis4MDM3MCA1OWFkMjQ0ZmUyOTQyOTAwNTI3OTA1ZTIxZTM2Yzk2NTU0NDA5MTcxIHB5M2sKKzgwMzcxIDg3ZDk4ODIzNWM1MThlNzJmZWMxZmE4YWEwNjFjMzFjYmJmNmFiMDMgcmVsZWFzZTMxLW1haW50Cis4MDM3MiAzMWQyOGYwNGI4MjM1NTk2YmRiMjc0YzdjYmNiMTc3NjE1ZWNkNTRjIHJlbGVhc2UzMS1tYWludAorODAzNzMgODhjN2RkM2Q3NTc5YjZjYjhiOGZiYTYyNTIxY2M1NmUzNzA1MzUxYiBweTNrLWNkZWNpbWFsCis4MDM3NCA2NmM5YTk1OWMwN2VmZTE2MDRhZGYxYmFhNjUzOTgwYmViNzQyMjE3IGxlZ2FjeS10cnVuaworODAzNzUgYjY2ZmE3NzcwYmJkZmNmY2RjYjE3MzE4ODkxN2IxNTgzODg4OThhOCBsZWdhY3ktdHJ1bmsKKzgwMzc2IDk2MTkwYjViM2Y2ZGI4OGVlMzRjNDFmNzRhMDg1NTM3NTI3MjhkMDkgcHkzay1jZGVjaW1hbAorODAzNzcgNTg5NjNhNzY1NDcxZDdmMThmYTNjNjMwYjY1Njk4NmQyZTlmYzY2ZiBhc3luY29yZS10ZXN0cy1pc3N1ZTg0OTAKKzgwMzc4IGY2MzJhMzg2MWQxMjU1YjZhNDAzM2JiNzI5NDdiZmM3NTQ4N2IwNzYgcmVsZWFzZTI2LW1haW50Cis4MDM3OSBiNDVkZGEwYjUzOGZhYWJlMWY1NTRmOGI3MmY2MjQwYzUzOTA4ZWFjIHB5M2sKKzgwMzgwIDRiN2YzYWUyMmM4ZmRmOGY5MzIzMGZlMDgxMzI3ZDcyNWIyYTRkNDMgcmVsZWFzZTMxLW1haW50Cis4MDM4MSBjNGI1MzQzMzczNWEyZjg4NWY3Y2RiM2U4MWJkZjVlMjU2ZjRjZTA0IHJlbGVhc2UzMS1tYWludAorODAzODIgZDJmYWQ0MjEwZGQ1ZmI1YjQyODg4ZDRjYjdlYmM2YWY4OTBiZmFmYiBweTNrCis4MDM4MyAxNDliYWRmNzNiY2FkMTYzMjhlMTE2N2MxOWUxMDk1ZWEzOGQxYzAwIHJlbGVhc2UzMS1tYWludAorODAzODQgMmZlNDczOGVlYjIzNjE5ZTk4Y2U4ZjAwMDE0ZTI0YjllZGRlMjdhYiBweTNrCis4MDM4NSBiMDVkMDI1YmMwZGY2YWMwYmM3NWEyZTBiZWQ4MTEzZTM1ZGFiYzYyIHJlbGVhc2UzMS1tYWludAorODAzODYgYmExMmY5MjEzNGJhNDkxOTVlMDFlNTQ2ZjlhN2VjNjFiZTIyYWI2NSBhc3luY29yZS10ZXN0cy1pc3N1ZTg0OTAKKzgwMzg4IGE4ZTA5M2EyNDA5NDkyNDliMTRkMGMxMzkzYTMwNjJiZjk5MDNiYWQgbGVnYWN5LXRydW5rCis4MDM4OSBlZGM3ZjMzMDUxMDUwZTRmMzc2YTg4YjFmMWQxMjdiYmM3MWIzNzU0IHJlbGVhc2UyNi1tYWludAorODAzOTAgNDczODAxYWU5ZThlZDc4OTMwNTNhYTFkNDMxNWUyNWRiYjA1ODRmMyBweTNrCis4MDM5MSA1NDUyNmVlYzhiYzZlNjQ3MDY2MWU4YmNkOGIyNTZkODkyZGIyZjJlIHJlbGVhc2UzMS1tYWludAorODAzOTIgYzlhMzJlZGQyYmE3Yzg5NDI2MTU2YWU1ODI2NTQ2YzFhY2QyNDgwNCBsZWdhY3ktdHJ1bmsKKzgwMzkzIDhkZDEyNDEyMzgwMTBjODUwNmRkNzFkMDI5Mjg5NTg1NmYyMWU0ZDggcHkzay1qaXQKKzgwMzk0IDFkMThkNzNmMjliNTNkMTc5YTY1MDllOWRmMTY5MTMxNmQzMDU1NjEgcHkzaworODAzOTUgOTIyOGM2YWM2Y2M2NzhlM2I4NmU2Mjk3Mzc5OTlhYzQ0YzkwZWFiZSBweTNrLWNkZWNpbWFsCis4MDM5NiA1YTUyNGM2ZDRlODM1MjM0Njk5NDE1OTg2NDkxODllZmI0NDZhMWY5IGxlZ2FjeS10cnVuaworODAzOTcgM2RkNjA2MzUzYWI0M2I5NjAzYzE1MGZlYjFlZWRiZmZjNjI4Y2E2ZCBsZWdhY3ktdHJ1bmsKKzgwMzk4IDA1MmQ0ODUxNWM3NjJmZTc3YzMzN2Q0ODg3MjM3MTNkNDI1NWJiZmIgcHkzay1jZGVjaW1hbAorODAzOTkgYjRlZDE3MjdkZjc0Y2MwY2MzYzBhMWMyNjU4ODk3N2E5MGY2ZjNjZSBweTNrLWNkZWNpbWFsCis4MDQwMSA1NjI5Njc4ODFkYzUyNWRlYmMyYTAxYmZhNDdkM2NlM2NmMGRiZWIzIHB5M2sKKzgwNDAyIGU2NTY0ZGEwMTcxOGE1YjI1ZmQ0OTcxOWVmYzhmNzI4NjJiZmMyMDMgcHkzaworODA0MDMgZDJjNTEyZDBlY2I2MmEzNDhjMmU5YjIzNjczM2RjY2FlMjNjZTgyZiByZWxlYXNlMzEtbWFpbnQKKzgwNDA0IDg2ZmFkYWViY2Y2NmQzYTAxMDc3MDI2OWYzZDJhYThkYWJkYjFmZjYgcHkzaworODA0MDUgYzZiNGY0ZjJiOWE4YjcwNDA2YjdlMDkzNDg1YzU3NTVmMWRlZTc0ZSByZWxlYXNlMzEtbWFpbnQKKzgwNDA4IDIyNTgyNTBjMWZiYjNlN2MxNWYyYjM1NTc5NTI3Y2ZkMmFhOTgzMmUgcHkzaworODA0MDkgZDQyNmJiZmQ1YmQ3OTJlYjkxODNmNTNiNzM4NzQ0N2RhN2U2MzM2NiBweTNrCis4MDQxMCBmZmY4MWQ3MjYyOGUzZmZhMTBiNWY4NDAyZTViMDAxYzJmYzNiOWIxIHJlbGVhc2UzMS1tYWludAorODA0MTEgZTc2MDZjMTU0MWY4YjQ5ZjIwYmEwOTU4ZWVjMDNiN2UwNjMyNDRlOSBsZWdhY3ktdHJ1bmsKKzgwNDEyIGEwNTllYTk2NmI4Y2ZkMTU3OGYyZTM0ZTExMDM1MGI4MTNiNjNiNzMgbGVnYWN5LXRydW5rCis4MDQxMyA4NDI4ZWFhMmQzYWQxMDFjYTNiMjRmYzVlNGZmNmIxYjIyMGRlNDFmIHB5M2sKKzgwNDE0IDgxZWYxZTg0NTJmYjA1OWQ5MTVhYjc1MWFkNTA1M2E5ZWUzMzkzZWEgcmVsZWFzZTMxLW1haW50Cis4MDQxNSA2MTJlODZhYjA1ZjEzMWI2YTAwMjk3ODhhNzNkNjk1Zjk4MTA1MGNhIGFzeW5jb3JlLXRlc3RzLWlzc3VlODQ5MAorODA0MTYgNTJjZDdlMDQwZmVmMGQxNjJiODc3MDdiNGFmYjdiZTk0ZGU3ZTM1NiBweTNrCis4MDQxNyA2MTBhOGVmYTg4ZGI2NTYxYjM3OGI3MjFmM2Q3ZGY5Yzc4ZDdlZjc5IHJlbGVhc2UzMS1tYWludAorODA0MTkgMGVjMTZkODMxOTkwNTg0ZmIzMjdlMGE4ODU5YzgyNDZjMDM3NDcyZSByZWxlYXNlMjYtbWFpbnQKKzgwNDIwIGZjOTc3ODRlNWNjMjFmMjllNTY2YjYxY2IxMzBjNzg3Y2IxNTBlNzIgcmVsZWFzZTMxLW1haW50Cis4MDQyMSBkYzhjOGQ1NDUwNGUxODQzNTczODBhY2YxNWVjNTg3YTMxYWIyY2MwIHB5M2sKKzgwNDIyIDY3YTYwNDgyOWM5NzBjN2JiNjFhYTQ5ODQyMTJhNDE2NWZiZGQ0OGIgcmVsZWFzZTMxLW1haW50Cis4MDQyMyAyYzMxZGFjNjk0ZmYwNDNjOGE3YzhjZTUxMzcwNDUxMWUwMmY3ODlmIGxlZ2FjeS10cnVuaworODA0MjQgZTc5YTZjODAyOTM0MTg5ZjY5YTc3M2ZiYjQzNWQyY2RhZjVlMjUzZiBweTNrCis4MDQyNSA3NGU0OWZiNWJhMTJiMmUzYWMzOWI4ZWI0Njg5YzQyMzFmZGNjNTdmIHJlbGVhc2UyNi1tYWludAorODA0MjYgODFhYTAwMjg0YmQyMTE5MDBjZWYwYzkwNjlmNjUxZjcyNWY1YjRiYSBweTNrCis4MDQyNyA1NGU1YWIyOWIzMGJmZjQzNjBmMmJmOTc1YjkxMDc0ZmYzZTU2MGFkIHJlbGVhc2UzMS1tYWludAorODA0MjggZDdjNzgzZWY0NTQ4NmZlYjg0Nzg5MGI0NzY3YTQ1NGE2MmM4NGM1YiBsZWdhY3ktdHJ1bmsKKzgwNDI5IDc2OTE4OTllMTg1ZjI3NzEzNjBlNmY2N2RiYzZlOThjNzkwMDMwOGIgcHkzaworODA0MzAgOTVjNWUwOTRiMzgwNjRkNTRlM2NlZTYyNDQ5MTYwZDdiMGI5ZTEwZiByZWxlYXNlMzEtbWFpbnQKKzgwNDMxIDA2OGEyZTcxNTdhY2VjYmQ2YzMxOTJiMjA4YWQ0Y2IwZmMxN2FjOWIgcmVsZWFzZTI2LW1haW50Cis4MDQzMiBjYTBjYmFjN2I4OTgxY2RmMGFhMzExYWM2ZTk4OGRkNWUzYjdmZDA4IGxlZ2FjeS10cnVuaworODA0MzMgNTg3ZGYwZDc0Nzg1MzNhOGQwOWZkOGJjZDA1NTMzYjlkYWYzMDRhNSBsZWdhY3ktdHJ1bmsKKzgwNDM0IDY3MmFkZmM1ZGI0Nzk5YmJjNzQ4MzY1YmQ4MjQ1Y2YwZjFkNDM2MGUgbGVnYWN5LXRydW5rCis4MDQzNSA2NWQ2YzdiYzVkNWE0NjQ3YjdiNmMwYzQ0NmEzZDA2Mjg0MzNhYzA3IHJlbGVhc2UyNi1tYWludAorODA0MzYgODA4MTBkODIzMThmZDA3M2E0OWYyMDQ2MDgxYThmZjg5YzA2NGI2ZSBweTNrCis4MDQzNyBkODFlZmYxMThkODE4ZWY2MWY4MjNkOWFjOTY1YWNhODMzMDI4ODA5IHJlbGVhc2UzMS1tYWludAorODA0MzggNWU2OTUxOWM0ZTM3ZGIyZTE4YjYwNDQ0Njc2NjY2M2E5NTg1MGU1NSByZWxlYXNlMjYtbWFpbnQKKzgwNDM5IDNiODM0MWQwNTIxNmVjODhmOTU4YTZkNmNiODc3NTlkYWYwZTViYzcgbGVnYWN5LXRydW5rCis4MDQ0MCAyYTc2OGVhMDYwMjMwZTVjODRhODE0ZThiMTk2Yjc4OWFlMjQ5NzAwIHJlbGVhc2UyNi1tYWludAorODA0NDEgNjQ0NjFmNjhhMTBlMDFhYmZhYjFmNTJkNzMzYzkyNzVlYmJjZjg2MSBweTNrCis4MDQ0MiA5MWY5MTY4YWFkZDBlMzNmNDgyYmM5NTNiNjFiNTNmMzkxYzI0YWEzIHJlbGVhc2UzMS1tYWludAorODA0NDMgZjRmZTUzZjg2NjI3NTY1MmVjMTg2NjFhOWMzYmNjZDEyMjg5OGFlZCBsZWdhY3ktdHJ1bmsKKzgwNDQ0IGU5ZDg4OGMwOGJmOGExNmE2N2NkNDFmNWZjODNkMGI4ZTBlNjc3MTUgcHkzaworODA0NDUgYzM5YWNiYjYzZWMzZjUxYzlkY2YzYWUwMTljYTE3MzJiN2M2MzVkMCBsZWdhY3ktdHJ1bmsKKzgwNDQ2IDI0ZmY4NzQwZTQ4MTBiYzc2MjVlYThmNjk3MTJhNDhlMDExNzE1NjQgcmVsZWFzZTI2LW1haW50Cis4MDQ0NyAzYTlhMjJkN2IyMmU4MTI2ZWMzY2JlOTUxNDI4Y2YwNTI5OTAwNTE5IHB5M2sKKzgwNDQ4IDdiZDM4NDcyZWEyMTIyNTEwM2VmNGYxMTg3YzIwNDk2YzI5MDdmY2UgcmVsZWFzZTMxLW1haW50Cis4MDQ0OSBlNGMxZWJjYjQ2MDQ4ZTE3ZmNmMzdhOWE2ZGFiOGFiZTJiMDIwMjUwIHB5M2sKKzgwNDUwIDc5MTI4ZWZlOGE5OTNhMWM2N2E1NTcxMDc0MmJjMGQ2YWIzNzI4MzIgcHkzaworODA0NTEgYTA5ZDdmNDE0Y2QxNWMxNjI3ZDYxMTI2MzlhZWEyMmYzZTY1ZTA2MSBsZWdhY3ktdHJ1bmsKKzgwNDUyIDc2YTA1MmVlZGVlNjdmNDE5NWMxYmVkMjNmOGFlODllNzg5ZWNlYzggbGVnYWN5LXRydW5rCis4MDQ1MyBjZTQ5MTZjYTA2ZGQwMzdjYTEyMjAxZTU4YjkzNmZkZGZkNDE3YTcyIHJlbGVhc2UyNi1tYWludAorODA0NTQgYTUxYWQ4ZjA5YjZmN2YxNmYxNDkxMzQ0NTNjNDM2YTY4NTZjNGNmZSBweTNrCis4MDQ1NSA1ZWQzNGYzZjZjMzU1MWMyNTI1YmE5MTI2NzllMzI1OGM2OTg5ODU1IHJlbGVhc2UzMS1tYWludAorODA0NTYgYTkxOTYxMTlkMzM1YjJlMGMyMWNmMzE2NWEwMDhlMGFiZWU2MDc3OSBweTNrCis4MDQ1NyAwZmY4YWRkZTYwOWNmOWUxNzdlOGQ1MGFiYmYwMjFlNmE0ZjFjNTE1IHJlbGVhc2UzMS1tYWludAorODA0NTggNmFmZjliMGEyODhkNWY0NTUwNDQyMDZhMjU2ODIxYWU5MjQ0MGM0NiBsZWdhY3ktdHJ1bmsKKzgwNDU5IDdlMjIyOTg3NzQ1OWZlMzUyMjU4M2NlMjhmOTIyZmQ5ZDc2Nzk1MjkgcHkzaworODA0NjAgZDVlY2U0OGUxNjA2ZGZlZTYyYjA2OThlNzJmMjI3MDYwMDQ4OTI5ZiBsZWdhY3ktdHJ1bmsKKzgwNDYxIDkyMGYzNDEwNmMzNDRjNmY5MmUwN2U4MzU1OWQ0NWI1NzdlYmY2MDMgbGVnYWN5LXRydW5rCis4MDQ2MiA0Njk4OWNjYzY1Mjk1OWNkZmZmN2MxY2U2N2Y5M2JiY2NmYmYwMDZmIHJlbGVhc2UyNi1tYWludAorODA0NjMgMGY4N2JlNjMzM2RhMzcwMDhmZTExMmI2NzZhYTdlYzY2ODFjYzJmZiBweTNrCis4MDQ2NCBkMDUzYmIzZDc4NDJjYmExZmM0NTIzMDJjOTMzNjBhYWQ3ZjM5OWZlIHJlbGVhc2UzMS1tYWludAorODA0NjUgZWFmNTYyZjU4MDdkZTE5MWQ0MTE3M2E4YTUxYjc1MzY1MWFlMTZmMyBsZWdhY3ktdHJ1bmsKKzgwNDY2IDA2MzIyYWJhODRmYWY1NzdiMjI1ZTZlYzc0ZGYzNjExNzU4Nzg3NDQgbGVnYWN5LXRydW5rCis4MDQ2NyA5ODA4ZGI5Nzk4NTQxMTQ5MGE1MTU2MDA2NmFhNWE2YzBmZDllNjE5IGxlZ2FjeS10cnVuaworODA0NjggYmViY2MyMjRjN2MyYzNiZTcyOTc3ODhjZjM0NDVmZWYyM2Y1ZDgwYiBsZWdhY3ktdHJ1bmsKKzgwNDY5IDVlMmQ2MTc1MWQ5ODA5ZjMyNTVhYmQ1MDYxYTM1Y2ZmZjBhNDgxZmEgbGVnYWN5LXRydW5rCis4MDQ3MCAwMzYzYzY5N2UwZGEzMDgwOGM4MDkxYWFlYTRmMzFmZDMyYWUxZjU3IGxlZ2FjeS10cnVuaworODA0NzEgYzJmZmQyMGQ2Y2Y4OTZlOWZjMGE2NGNjYzIwY2U5ZGQ5N2RmODk0YSByZWxlYXNlMjYtbWFpbnQKKzgwNDcyIGVkZTE2YTI3OTJiNGM4NTk3MzNmZTM3YTk0ZDg5OWY3MGYyYzBkZTEgcHkzaworODA0NzMgMDNmMzFmN2U3NjI3NmFkYjkzMjQ0NzhhNTAzZDUxMDRiNGU2YzEyYSByZWxlYXNlMzEtbWFpbnQKKzgwNDc0IGQyM2Y2MjZhNzM3OTkxYWEyNDhiYjE1MDBjZTRiZTdmYzg5Yzg4ZWEgcHkzaworODA0NzUgZmUwYzQ3ZGQ1Zjg0ZjE0MGE2NzdiN2FmMGE5OTY4NDQ2ZTBiMTVmZSBweTNrCis4MDQ3NiA2ZmIzODQ3ZDM5ZWYzOWEwNTc4NTJmYzFjYzFhMmI1MmQ5ZmM0OTEwIGxlZ2FjeS10cnVuaworODA0NzcgYzM2YzgzNmZmNDY1MTI2NWNlMzRhZWJjZWQ3YzYzOTAxYmM4ZTZiZSBweTNrCis4MDQ3OCBiOWYyMTAyYWQ1ZjAyNjg1ZjZjZTZmM2Q0YTdmNGQ0NDhiMmYzMTM3IHB5M2sKKzgwNDc5IGVkZmQwZTFiOTc1NGQ3ZTVkNTkyMTdjNzRlMDJmNjVlNDQ1ODMwNWYgcHkzaworODA0ODAgNWFjMGFhZTI4ZjRjMDIyZGUyYTdiYmZlOWVkZDUxOTNmMTc4NTgyZSBsZWdhY3ktdHJ1bmsKKzgwNDgxIDk2Y2E1MGNiMjYxMzU5M2FmYjIzZDdlYTgxYjFkNTlhMTU2YmYwODggcHkzaworODA0ODIgZDgwNGRkOTU3MzdjM2FmM2UxZThkZTZiYzU3YWYwMjcxZTMyODU2MSByZWxlYXNlMjYtbWFpbnQKKzgwNDgzIGMxZmI3ZDVlZTQzNzNiOTRhOTExY2QzZGIwODRkMjRmZDBhZDg4OWMgcHkzaworODA0ODQgNWYxOTYyMjIwNzkyODgwOWNiYjY0NzI3NzM2NTFhMDNkMDJhOTU2NiBsZWdhY3ktdHJ1bmsKKzgwNDg1IGU5ODI2NmM1MWEwZTA4ZTFhZWRjMTFkZThkNWU4NGQyNTJiNDc4ZWYgcHkzaworODA0ODYgZWE0M2Y3ZjZlODRjZjk1ZjdjOTQ1N2JjYmExMWU4MzNiYWJkYTRjNCByZWxlYXNlMjYtbWFpbnQKKzgwNDg3IGY1MjNlNDBkZjljNTY4ZjdiZDc0MWNiZmM2ZDk3ZjFlZWRmMDljNjQgcHkzaworODA0ODggYzAyMTQ0YjFjOThjYTBhMWYyNTc2YmQ0ZGU4ZWZiNjY3OGM2NjdjOCByZWxlYXNlMjYtbWFpbnQKKzgwNDg5IDY1NDhjMjM2NzZhNjg3YWEyZGVjYTNmZjFmZWRlM2EyODU1OTk1ZTQgcHkzaworODA0OTAgZWYwYTg5ODFjMzcwMzFjMGQ1ZjQwODU3YTk5YzJlZjk1YmRlNWYwMiByZWxlYXNlMzEtbWFpbnQKKzgwNDkxIDkxNjUyMzJlNmQxYWU0NGM3MDNjNmM3MWM1ODYwMDFlMjMwMmNiMDIgcmVsZWFzZTMxLW1haW50Cis4MDQ5MiA4YzcxNzkxMjU4MDMyNGU3ZmQxMTM1YTliNjI3M2U0MzYwMDQ5ZjRiIGxlZ2FjeS10cnVuaworODA0OTMgMmEwMzBjMWNlOTcyZDU4NzAzNzAzYTk2ZjY0ZDg2MzViYWY2Y2JlMSBweTNrCis4MDQ5NCBiNzE4MjYyNDlmYmUxM2M3YTM0ZGZjMWRhNGU1ZjBlZmFmNzNiYzk0IHJlbGVhc2UzMS1tYWludAorODA0OTUgYWE2ODU0YTZmNmQxZDA4NGFlMGI1ZjdmNjE0NWI4NGJkZWM1YTJmNCByZWxlYXNlMzEtbWFpbnQKKzgwNDk2IGQyYTRlOTZiNTRhNmNmZTU3OWNkNDI1MTM2MGMxMjNhMThmODk0ZTMgbGVnYWN5LXRydW5rCis4MDQ5NyBhYjhmZTk0NzczMjM0M2QyZTQ3N2JhNTY2NWU0ZGRmNGIzYmQyNWNlIHB5M2sKKzgwNTAxIGVmZDcwNTUzYTA5ODkyMzJmZjFmNmI0N2JkZjNiNTNjMDBmNTdjNmYgcHkzaworODA1MDIgYzAzYTNjNmE0NTYyNjBiNmY4YzA1NWQ5ZjQxZDE0YTk1Y2Q4ODg5YyBweTNrCis4MDUwMyBkNjNiYjM1ZGUyZjAwYWEzODNiMGUzYTRiNGM5OWMyMzE4NDk4MjAxIGxlZ2FjeS10cnVuaworODA1MDQgMDQ4ZjZhOTJiZGUzYTZiOGQ3NTNiMGMxYTFjODQ1ZTk0YTg3MzM1MSByZWxlYXNlMjYtbWFpbnQKKzgwNTA1IDEwZGFmNjM0ZTI0ZjQ4MjY5OGFjZjc5NGU3NDZlZGVkMzM5NjY0NWMgcHkzaworODA1MDYgY2YyMDRhNzM3ODNkODVkYmMwNGRiNGJjOGU1OWIxZWFlNDU2N2IzNyByZWxlYXNlMzEtbWFpbnQKKzgwNTA3IDdmYzIxMWRmM2Q1YjIwNTA0YTRkYWIyMmRmOWYxZTY4NWUyMjhhY2IgbGVnYWN5LXRydW5rCis4MDUwOCA4NjAwNzM1MDVhY2EzMjlkNDBiYzlmYTBlYmUxMTQzMGRhYjAzYjlkIHJlbGVhc2UyNi1tYWludAorODA1MDkgM2ZlOGNmNzg3MzUzMDM3NDg0ZjNkNmNkMTBkNmIwYTk1NmZhYTU2ZCBweTNrCis4MDUxMCBiODc3ZDJkMDRjMTQ2NzViMTIwZTg0ZmRiNDcxN2JiYjAwNmQ2MjU5IHJlbGVhc2UzMS1tYWludAorODA1MTIgMzA5MDM1YzIyZGNkY2NmYjZiY2RlYzZiMDYyNWFkNWYzZmIwZjQ4MSBsZWdhY3ktdHJ1bmsKKzgwNTE1IDNiMjQ0ZWIyMGZhMTNiMThmMTUxM2E0YTcwMWJjZmUzZmRmMDk4ODIgcHkzaworODA1MTYgZDU1OTBhOTg3Y2IwNmUwYzIxNDEzNDczNWM5NTg0MjNhNjQ0YzlmYSByZWxlYXNlMzEtbWFpbnQKKzgwNTE3IGRkNDY2NDk0NTQ2ZGRlMzcyNmFjNWQ4NGZjMmQ2ZGQ0ZDRkZWEwMjkgcHkzaworODA1MTggMTFjOWFkYWVmOTZiMGJjMzYxYWQ5NWFjNmM4YmQwNzhjNjM5NTBiNCByZWxlYXNlMzEtbWFpbnQKKzgwNTE5IDE1NzFmMDlmNGEyNzc1ZGQzODZhNjRlMDQ0NjYyMWVlMjFkZjczZTcgbGVnYWN5LXRydW5rCis4MDUyMCA3ODRjZmJhYTIyOWYxNjBjZGI2YTBmZmFlOTkzNmY2ZmQ2NDM1YmU4IHB5M2sKKzgwNTIxIDgzYjkzMDM2ZWMzZDdjNjViZGEzOTY3YzM0NDdjNzc2MTM1MTVlN2EgcHkzaworODA1MjIgMThiMmRiYmJjNWIyNTIzNzI1YzAyYThiMWUwMGRkMmUyZmRlYmU3YyBsZWdhY3ktdHJ1bmsKKzgwNTIzIGMwN2QyZTVhY2Y2NWMxZjM2YWVkNjgwNGJlYjUxNzE1MDllNGMwMjggcmVsZWFzZTI2LW1haW50Cis4MDUyNCAyMmRlNmM3MWNkYjQxNTIxNmVkZjdmM2YzMzQ4YjFkYzFjMTZiNTU0IHB5M2sKKzgwNTI1IDQ2YWFlNDA2NzQyZDlmMTYzZmJjYjRiNGMzZGZjMjdkNTEwOGEzNTMgcmVsZWFzZTMxLW1haW50Cis4MDUyNiA3MTIzMDE1MDY3MzBkNzQyMTNmMGQ0ZDQyZDBjODUzODUzMzZlZDAxIGxlZ2FjeS10cnVuaworODA1MjcgNmRhOWVhZmIxZGFhZGJlZGJjMDMwZDE3NWNjZTBhNmIwNDE0NjFhZSByZWxlYXNlMjYtbWFpbnQKKzgwNTI4IGUyNWM3OGE4MmEwODNiOGZiOTk2ZTFlNTE4ZWNiMjU5NmUyNWVmM2MgcHkzaworODA1MjkgZDQ0N2M2MGZiNGQ4ODZjNGNkNzczZThhYzUwMzM4ZjI0NWExNTEwNyBsZWdhY3ktdHJ1bmsKKzgwNTMwIDFlMWIyMzUxY2YxMmZiNDU4MmM5MzdlYTJjN2ZlOTk4YzRlZTljMzYgcmVsZWFzZTMxLW1haW50Cis4MDUzMSBmZmU5OWY1MjJkODYzYmNhOWE0MWJhZDk3NjJmYzJhZTVjNDA0MWM3IHJlbGVhc2UyNi1tYWludAorODA1MzIgZDYyNzA4YWUyNmE1NTM2YzBhMDU3Nzc1MzNlZDIzMzJhYjAyMmZiNCBweTNrCis4MDUzMyBjODY5NDA4ZDRkM2VkZGMxODQwOTY0ZjE3YTIwMzdiZDViYjRjYzY0IHJlbGVhc2UzMS1tYWludAorODA1MzQgNjFhZTY2NGRlNTZiYTA1YTE3NDk2MjU2MDc2YmY5YThlMDAyMjczOCBsZWdhY3ktdHJ1bmsKKzgwNTM1IDk2OWVmNWViODBjNDM1MzI3MzcwNzY0YmE4ZDkwMmQwNTgwZTY5NmEgcmVsZWFzZTI2LW1haW50Cis4MDUzNiBmMTBhMzc4NzhkODQyZDI3MjE5YWVmNmYxYTE1ZTQyNDIxMWJhNmMwIHB5M2sKKzgwNTM3IDcxMTUyY2U3MDFlYTVkNDJmODY3NzViOGZhODVhNDlhMmIwMWFjMTYgcmVsZWFzZTMxLW1haW50Cis4MDUzOCA1YzM4MmJmYzAxNWE2NjRkYjk4ZThmZDE3Njc2MjYwNWZkODJmNDViIHJlbGVhc2UyNi1tYWludAorODA1MzkgNmE5MGRjOTY3ZmVkMDBjMTM3NmI4MDFiZDFkYmVkODJkNjNhYmIzZSByZWxlYXNlMzEtbWFpbnQKKzgwNTQwIDQ0OGVmOTAwMDgxY2UyYzg4NmMzODZmODdjOWY5M2FjYjg1MDRhN2YgbGVnYWN5LXRydW5rCis4MDU0MSBlZWY0Yjk1NGQ2NDQzOTBlNDdmYTliMmMyNWQzY2FjOGRiN2M0ZTNhIHJlbGVhc2UyNi1tYWludAorODA1NDIgY2FmZWY3NDU0ZGY5ZWNhZTY5Y2IxZTM5ZjUzYWMzY2YyZDZhYmZjYyBweTNrCis4MDU0MyAxNjRiM2FjYWQ5ZGFjYTEzZTAwZjlkMDllMmIyOGE3ZWUzZDJkNWRjIHJlbGVhc2UzMS1tYWludAorODA1NDQgYWRjMDc5N2JhOTIxMmYzMWVkZDcxNzJmOTg4Y2FiZDNlMzk0NTc3YSBsZWdhY3ktdHJ1bmsKKzgwNTQ1IDM2OTFkNzViMDYyNjM4NDE2NGVkODMzMjEyNjg3NTQwMjdiNWNlMzAgcHkzaworODA1NDYgNmVjYjNjODNmZTgxYmYwNTYyMWQxZWRlMzQ0NDllNzQyZDM4MzljOCBsZWdhY3ktdHJ1bmsKKzgwNTQ3IDE3Y2MyZjUzMjU2MzEzYWI5ZDUzNDhlMDAyYjg4YjE3ZGQwMTMxZmQgbGVnYWN5LXRydW5rCis4MDU0OCBjY2IxZDVlZjA0ZDZhOTIyY2RmM2M1ODc5YzE1NzQ2MzIzMWE3Zjg5IGxlZ2FjeS10cnVuaworODA1NDkgYWU2ZjU4NjViMzg2MDQxZDFkOGIwZjRhMzQ4YTdkM2I2MGY0ZjEzNiBsZWdhY3ktdHJ1bmsKKzgwNTUwIDFhYjI0OTQxYzk5NmFmZTk3MDllZTQ3NGNiMjFkMTFmOGVhZDY4ZGEgcHkzaworODA1NTEgM2I2OTc5MDU1ZjVhZTE4OTQ3NTNiNTE5NTc0OThhZjNjYThhMzVmMSBweTNrCis4MDU1MiA2ZDlkODU0NTg2MWVlYTRiNGY5M2U2MTIzOGVhYmE5NDljMmE4NjVhIGxlZ2FjeS10cnVuaworODA1NTMgMTM3OTE2NTQzZWZhZTc4ODI2YTUzZjBkNDMyOTkyMTc5NzRhNWNiYiBsZWdhY3ktdHJ1bmsKKzgwNTU0IGM3YTU4MjJiZjI5NDg3MzYzOGUyNzkxZmQ1NDMzMTg2MWQzMTAxYTkgbGVnYWN5LXRydW5rCis4MDU1NSAwN2NlNWFmMzE3ZWUyYjNiZTI5NmM4MWY0MTM2NGRiOWZkNzExOGQzIGxlZ2FjeS10cnVuaworODA1NTYgZmIxMGVmMGVmYTIzNTUyYmU3ZWZkYjkzMjc5NjBjNmU2MGVlNWQ3NyBsZWdhY3ktdHJ1bmsKKzgwNTU3IGZkM2FiZjgyYWM5NjA1Y2EyOGFjYzhhMDUxZmQzMzIzZmUyZDJlODMgbGVnYWN5LXRydW5rCis4MDU1OCAzMTZiNTcwMTdkMGYyNTc0YzIwMGI5ZmQwNDcxOGJjZWFhYjJmZmY2IHJlbGVhc2UyNi1tYWludAorODA1NTkgOGM2NDY5NjdiYTZiN2YzOTQ4NDFlNjMwNmY2NzQ1OGNmZjMyYjk3ZSBweTNrCis4MDU2MCA4Mjc5MjBjNTQ2YWY1ODA0ZjY1N2NiMmQzMmNkZjlhMGQ0YzhhOWM5IHJlbGVhc2UzMS1tYWludAorODA1NjEgNGE2OWQzMmExN2I5MDc2ZTcyNjA4N2M3MmQzOTE2YzU0MmQxMzM1MiBsZWdhY3ktdHJ1bmsKKzgwNTYyIDQ1NzIxYjljYTIyMDQxNDQ1NDVlNzkwNTBjNmVlMGE5ZTBhZDBkMTMgcHkzaworODA1NjMgODFkNzAzM2Q5NWEzNWU0M2E4MDExYmU4NzEzN2M2MjRkNGE5YWEyMSByZWxlYXNlMjYtbWFpbnQKKzgwNTY0IGI4OGFhMTNjZWFmMjU0MWE0NmFkMTQ4NzQ5ODc0NWZlOGUzZjYzMzYgbGVnYWN5LXRydW5rCis4MDU2NSA5NjdmN2JjMmRjYzg2MzU0MWYxMmQ3NmEzYWUzYjkwNGJjZDcyYTEwIGxlZ2FjeS10cnVuaworODA1NjYgODJkNDg3MjQxMzA2N2I5NjA0NDkzMWY1NGQ2MjBlNTIyYjdkNTA0MCBsZWdhY3ktdHJ1bmsKKzgwNTY3IGIwZjM0MmFiNTA5NTE4YTZjMDI1NmFiMWQ1NjA4M2ViODZjMjRlZTMgcmVsZWFzZTMxLW1haW50Cis4MDU2OCBmMDkwYmQ3MmFjZDgyYTYxMDQxMTlhZjYwZWEwOGY0ODk3MDczZmEwIGxlZ2FjeS10cnVuaworODA1NjkgMGRjMjExNWY2YmJlYWRmMDg3MjIyZDNiNTkyZGMzZTdhZDJlZTlkMiBsZWdhY3ktdHJ1bmsKKzgwNTcwIGJhZWZkN2I0MjVmMTc4MWNiNTE5ZWMzOTU5NzUyOGIyMGI2OGM2ZWEgbGVnYWN5LXRydW5rCis4MDU3MSAzYTA0ODQyMDAwMzQzOGY1NzZkMjA4NzhiMjIwOTZlYjIyZDQxNjUxIGxlZ2FjeS10cnVuaworODA1NzQgZTg0YTRjZGU3OWM3Y2EwYjYxM2IyYjQ3MzQ2ODhiOWY1MWQwYjcwNCBsZWdhY3ktdHJ1bmsKKzgwNTc1IGVjNzcxNWVhMmM3NTEyYmVkYzIyMzQ1NTI2OGMwMjc3NmYyYmI0ZDAgcmVsZWFzZTI2LW1haW50Cis4MDU3NiA2NWJlMWU2NzhlNjNlMjY4YzdmNmQwMzQxMjkwNzhjZmI2YjU3YTk1IHB5M2sKKzgwNTc3IGQ3NGVkN2UyMWU2MjkxYTlmZmVjOWEwYWQxOThhMjFiMDhkZWU0MDggcmVsZWFzZTMxLW1haW50Cis4MDU3OCA1MWUzMGI5MTZmYzQ5N2NmZWJhZWNlYTVkNjllYTdjZDdiODE5YmM4IGxlZ2FjeS10cnVuaworODA1NzkgMjIwZDQ3NjdmYTk3ODFiYmQ1Njk3OWVhZDE3ODMyM2RlZGRhMjE4OSBsZWdhY3ktdHJ1bmsKKzgwNTgwIDBiNWM0OGM3NjIyNDNlN2ZhYzU5NTdhMWJlYWQ3ZmJjYzU3NGE5YjUgbGVnYWN5LXRydW5rCis4MDU4MSBjOWU0MGNlZGM4YmMyNWZlZmNkOTZmMWJhZDhiYzc5ODc3MWY2NzM1IGxlZ2FjeS10cnVuaworODA1ODIgZmYxYTU5M2Y4ZDIzYzFmNzc4ODJjZGRhM2NlZWNkNDQxNTUyMTdmMyBweTNrCis4MDU4MyA1NzU0OGNjZTFlYTA1YWI2MTQ0NGE2N2Q0ZTNjNDg4ODdiZjhkZTQ2IGxlZ2FjeS10cnVuaworODA1ODQgMWUxY2M2NzJlYmRkMjc2NWYzYThmZDlmODFhYWU4ZDc5MGEyNTNlYSByZWxlYXNlMjYtbWFpbnQKKzgwNTg1IDA0YTE4ZTU5Y2MyYzQwNGQwMmQ0M2YwMzAyOTM0NGQyNTgzNDFmODMgcHkzaworODA1ODYgY2Q4OGY1ZmUyZDA2NTIzMDBkOTM4M2JlODZlMjg4NGM4ZGZkYTQ2MyByZWxlYXNlMzEtbWFpbnQKKzgwNTg3IGZkN2VjNjA3ZTEwMWE1OTQzYzJkNDlhMTcxOThlZjRhMzlmYzhlNzAgcHkzaworODA1ODggNjk1MGVhYjUxZmZlNjE3ZGEwMTM0Mjg3YzNhOGM1ZDA1MzBkOTMxYyByZWxlYXNlMzEtbWFpbnQKKzgwNTg5IGE0Mzc3NjU1M2FiNTMwNzgzY2I0Y2RjMTY3NzllZmNkNWU4ZjRiY2UgcHkzaworODA1OTAgMDVmZTEzN2I3ZWZmMDM1Njg2OGM1OTAwYzNhZDEwMzg0ODNlNDhmYSByZWxlYXNlMzEtbWFpbnQKKzgwNTkxIDcyMTY5MmVkNGE3Y2E5OWU5ZDk5ZGRlN2ExMWQ3Mzk3NmM5ODdiZTEgbGVnYWN5LXRydW5rCis4MDU5MiA5N2NlNmNlNmEyODk0OGJjNmY0NTVjODgzYmI2ZjZhMzU3MTFmNWY4IGxlZ2FjeS10cnVuaworODA1OTMgMGY2NWZiZTY2ZTNhM2JmOWE2OGFjNDg5MzY4YzYxOTYwODdhYzc0NCByZWxlYXNlMjYtbWFpbnQKKzgwNTk0IDU5YjJhZGI1MmIxNmIxODkzMjM0NjRkMjBmMjdkM2JmYzc1MzRjOTAgcHkzaworODA1OTUgZTdmMDVkYjVmM2IwMzI3NDQ2OGM4ZmVhZmJjNjYyMjJjMjNiYmIzNCByZWxlYXNlMzEtbWFpbnQKKzgwNTk2IDgwN2ZjYWM0ZjE3YjUzYTQ2YTYzYTFiMjNjMDUyMWEyZmRkZGM4OTUgbGVnYWN5LXRydW5rCis4MDU5NyBlYTgzYTYxZjY0MzBlMWE1ZTNiN2E2MGZlMzdmZTg4ZjVmMDIzOGQxIHJlbGVhc2UyNi1tYWludAorODA1OTggMGYzZjhiOWViNmZmOGRiMWRhOTc2MGM4OGVhZjM5ZDIyN2E4YzdiOSBweTNrCis4MDU5OSAxZDJiMzIyYzQ2YmUzNDVkMGZmYTdiMWI4ZTJjNzg0ODBmZTkzNmIwIHJlbGVhc2UzMS1tYWludAorODA2MDAgNDkzYmI0NTg1ZTM4MGYwOTkwYTVhMDUxNDczMmU4ZTg0OWM1YjZmNSBweTNrCis4MDYwMSBkOWFmYTVkMTIxZWE3YjY4OTU3OWIzMjZmOWNiYWEyYmE3YTViMDhmIHJlbGVhc2UzMS1tYWludAorODA2MDIgOTRlM2U5ODlhZTIzZjdkYzRiNzcyN2ExNzExN2I3OGViOTFkZGM1MiByZWxlYXNlMjYtbWFpbnQKKzgwNjAzIDE4NWRlMzFjOGE2YzlhOTQ2ZWIyOThkNDkyYjk1MTEwMmVjZmQ3NzYgcHkzaworODA2MDQgMDA3MzE5YTljODg4Y2ZkNjUwMGQzOTcxNWU0MmVmYjI5Y2UwZWQ2YSByZWxlYXNlMzEtbWFpbnQKKzgwNjA1IDVmODgzMDkzNWQ3NDQ0OTQyNmM4ZTQzM2EwMDk0M2JhN2JiODU2Y2QgbGVnYWN5LXRydW5rCis4MDYwNiA1OTNhMjI1NTAyNzU3ZDM5ZjU1ODNhNTE3YjdmYjAzNTlmNzE2ODViIGxlZ2FjeS10cnVuaworODA2MDcgMmQ1YzM0NWYzNGI5OWNjODczYWI4ZDliZDVmYjVjZDE3YzQwNjI4MSBsZWdhY3ktdHJ1bmsKKzgwNjA4IDAxYmRkNTNmNzQ4OTllZDhhNDE3MzY5NWExN2IzOThlNGUxMDg4ZjIgbGVnYWN5LXRydW5rCis4MDYwOSA4NDAwOTEzZmNjNTU1ZDY2NGEyZGYxNzE4NWRlZGEzYTcyM2I5YzdjIGxlZ2FjeS10cnVuaworODA2MTAgMzQzMWUxMzM5MTNjOWNmODRlOWM3NmYwN2Y2N2ZlNThiNWRkMWEwZCBsZWdhY3ktdHJ1bmsKKzgwNjExIDQ4NmZlODJiYWZiODRmNzg1ZmY4NTJiZDBjMTVmZTVkNjIxZjgwNjQgcmVsZWFzZTI2LW1haW50Cis4MDYxMiA3NzgxMjFiMjM4OGIzZDE1ZmQ3OTgyMjk4MDM5ZWYyOGJjZmFjMTYxIHB5M2sKKzgwNjEzIGU5MThiODRlZjk2OGNjODkwNTVmZjIyYWNjMDFiZjdmOTgyYzY1MjggcmVsZWFzZTMxLW1haW50Cis4MDYxNCA0YjU3MDE5MTUwYThiM2RjZWZjZWE3YzI2YjI1NTQ0ZTlhYjAyOTNhIHB5M2sKKzgwNjE1IDc3ZGRiOGQzYzQzMzU0ZDVlM2E5MDNjMDZmMDhjNTZlZTdlMTJkYmIgcmVsZWFzZTMxLW1haW50Cis4MDYxNiA0ZDk2MzRiODQ0OWJiOGQ0ODQzYTExMTgyNDIwMjM1YmRkYTJhZDU2IGxlZ2FjeS10cnVuaworODA2MTcgNmNkYTYwMWY0YzU4NTZmYTYyMjVhYmMxOWM3YWI3OTgwOGVhMDM1NCByZWxlYXNlMjYtbWFpbnQKKzgwNjE4IDllNTA1NzIwMTVhZDViMTkxNTU3NjhjYTc4ZWYwNTFkNDY4MTk1Y2UgcHkzaworODA2MTkgNDA1MjM3YjExMTA0MjUzODQxMDg1Yzc1M2M1YTM1ODY2NTVmYTQ2ZCByZWxlYXNlMzEtbWFpbnQKKzgwNjIwIGVjNmU5ZTBlMzE2ZDI4OWNkNTlkMjQwYjQ4MmY1YTczODRjYWI5OWUgbGVnYWN5LXRydW5rCis4MDYyMyA0N2ZjNmZlNWU0NTRmY2QxOGQ5NjM3YWMzZGM3OGFlODg3OTY1MTgwIHJlbGVhc2UyNi1tYWludAorODA2MjQgZmM4MjJhZjExYmJjNjhiNjgxYWFhYWM5ZDRmMDU0MGRkOGM0NDM3NyBweTNrCis4MDYyNSBkNjZkYjFiMjJkMTA5ODk0OTZhOTFiYzdjYjIwYTAxOTczZjBiNDY3IHJlbGVhc2UzMS1tYWludAorODA2MjYgNGRkZmI1ZGQ0YmI3OTRiYTYwZTg1NmVlYmMwYzg0ZTQ1YzQxOTZjYyBweTNrCis4MDYyNyBjNDgyYjQxYWU4NTU0ZmE0YzM3YzExMzM1YjNlMDhkMjIxYzY2MTlkIGxlZ2FjeS10cnVuaworODA2MjggMDZlMDExMGIwODIwOGI5MWNkYjRhM2ViMTIyMGE1ZTYwNmI5MjRlYSByZWxlYXNlMjYtbWFpbnQKKzgwNjI5IGY2MjcwMDI3ZTQ5OWYxOTZiMDBkNWM5ODM2ZThiZmJkZWM0YjNmYzYgcHkzaworODA2MzAgYWNlMzQ1Mzc3ODAwMGNjMDNkYjU2NWNmMjU0YTI4NTM0MGRhZjNmOCByZWxlYXNlMzEtbWFpbnQKKzgwNjMxIGM5MDg4MTkyN2JhZGE2ZDkwOWFjNWQ0ZmQyNWY1YWFkNzE3ODZlYjIgbGVnYWN5LXRydW5rCis4MDYzMiBiNmIzZTRmNzc3Yzk2ZTZiMzVhNzcyMjk0ZWM1OGFhMTQzZWQ5YzgwIHJlbGVhc2UyNi1tYWludAorODA2MzMgOWNjNjkzZjlhNWRlMDNkN2E2YWZkNGJlYTYzMWNjY2Q0M2Q4NmQyYSBweTNrCis4MDYzNCBmMzJiOGEzYWU5ZDYwMjk0ZTMxMGViZGQyODg0NGFkZjc2ZmY0NTkzIHJlbGVhc2UzMS1tYWludAorODA2NDAgMzZhNDE3OTgxMGYwYjY3MGZlNDc4MGM4OTE5ZDQ5MTQwZjIyMGNmYSBweTNrCis4MDY0MSA2OTkwNDliM2M3ZDcxM2YzODlmOGZiZDgzN2E5YzJmOGJkNWEyZGIxIHJlbGVhc2UzMS1tYWludAorODA2NDIgMmQyYTg1OGZlM2UxOTRjZjlkMDkzZmMzN2NiNTVjMTUwNGM5N2JmOSBsZWdhY3ktdHJ1bmsKKzgwNjQzIDdlMzYxYTZhMmFjODIyZTc1MTM5NjE4YjUyZjA3MWUzN2RhY2Q4YmIgbGVnYWN5LXRydW5rCis4MDY0NCBmZTVhMDA2YWY1MmJkZTcyY2YyODQwMWRmMjMxMjI1ZWU3ZmZjMWFjIGxlZ2FjeS10cnVuaworODA2NDUgOWZjZWNlNDA1ZTI5NTExZGI0OGNmNGY2ZDdmNDc3NWFmNDBiMjA5ZSBsZWdhY3ktdHJ1bmsKKzgwNjQ2IDVhNDg4NjViYmMxZTZiMDNjZDY5NTM0ZWZlNmE5NGQwZTFiYzcxOGUgbGVnYWN5LXRydW5rCis4MDY0NyBjMmUwYjkzZjg2OWY0MWNjNWE0NTU2Y2ZmMWYwYTVkOTk4NWJjZGM2IGxlZ2FjeS10cnVuaworODA2NDggYmZkMjU0MWQ4ZWM1YTM1MDk4MDIyOWExNDk2OGU2OTg0ZGYwNmEyNCBweTNrCis4MDY0OSAxMDIwNmNiMjNjODAyMWJmYjkzMzEzNmNhNzU5NjlkODRmNDcyODgwIGxlZ2FjeS10cnVuaworODA2NTAgNjIxZDJlOTg0ZDE4NzZkMDhkZGU2YmIwYjE4ODM3M2JkMmNlNmE2OSByZWxlYXNlMjYtbWFpbnQKKzgwNjUxIDJkM2FiYThjZjZhMzQ4YzY3YTI4OGJhNWIwZDE1NTYxMWIyMjNlYzcgbGVnYWN5LXRydW5rCis4MDY1MiAyYmRiOGViZmM0YTk1MjNkNTk1MWNkYzFiZTc1MDU3NTE5NWNkZjFiIGxlZ2FjeS10cnVuaworODA2NTMgMWI4OTQ1OTQ0OTBmYmUzOWYwZjJlNmQ2ZmQ1Zjg3MDllY2JiNjU4YiBsZWdhY3ktdHJ1bmsKKzgwNjU0IDdhMzVlMGI4YWUwOGM1YjUyNzQ0OGMxNTVhMDM2ZDY2YmQ1NTM2YmQgcmVsZWFzZTI2LW1haW50Cis4MDY1NSBlNDdhZWE4NmY3MTQzMzRlZmFhMTIwNGVkMTE1ZWEyYmYzZWVkZDNjIHB5M2sKKzgwNjU2IDA5MWQ5NzdjNGQzNzQzY2Q5NDdjMjExMDFkN2EyMGI0ZjI3MTVmZWEgcmVsZWFzZTMxLW1haW50Cis4MDY1NyBiYzYyMzBjNjZjMTQxZTBhYmJlMjExMzAwYzcwOTY3ZmQ0YzJmYzJmIGxlZ2FjeS10cnVuaworODA2NTggMDBhYzQ2ODhjZGNkMGYzZDMzZTI2OGYyMTIzNGNkNTA0N2MzYzk0OSByZWxlYXNlMjYtbWFpbnQKKzgwNjU5IDdhOWQxNzJhMTVlOTA5ZTFkNDNmNGIwNmM5NTg1NThlZGE1MGIxMjYgcHkzaworODA2NjAgYWY4MTA0MzFiZGFjOWYzMmE1ZDVjNWY1NTI2YWQzNGU1YjI2MDlhMSByZWxlYXNlMzEtbWFpbnQKKzgwNjYxIDU5MWRlNmM5ZmZlOTQ3NDhmNTRiZjE3NTNmYjE0OWZjZTk2YjExMGIgcHkzaworODA2NjIgNTFjZDUzZDNmNjAwYmZjNTU0NTQwOWMzNjcxNGU4Y2VmZDg1ZGUyOSByZWxlYXNlMzEtbWFpbnQKKzgwNjYzIDc3NDIzMDA3ODkyNmVmN2Y2ZTQzZDExOTFjMzI1MTg4NzNlOWI0Y2UgcHkzaworODA2NjQgYjI1ZTRiYTRhZjYxNmU5MzNhOTBlZjk3Njk1OTE0N2Y0YjE4MDI2MiByZWxlYXNlMzEtbWFpbnQKKzgwNjY1IDhmYzk4N2NhYzkxM2YyY2RhZDQ4MjRmYWE0NmRkMTk4Y2E1YWE0MzggbGVnYWN5LXRydW5rCis4MDY2NiAzZTQ1MTM5NDdjNTdiZjNiZGUxNzEzZTY3NjJkZTMzZGZhZjlhYjljIHB5M2sKKzgwNjY5IDNjNGNkN2RkZjFkMDE3NDY2NGIwZTg2MDU4MzdhMDU1NTU3YTE3MzMgbGVnYWN5LXRydW5rCis4MDY3MCAzZWI2ZWFkOTlhNjFhZDEyODBlMjg1ODQ0NDUyZjJhNTg1NDE1MWIyIHJlbGVhc2UyNi1tYWludAorODA2NzEgYzkwNjBjMWMxZjkwNTQyNjhkYmM4MjBkMjQ1OGIyMjk5NmMxOGI5ZCBweTNrCis4MDY3MiA4ZTM0ZDU5YmFkZjk4ZjdkNjJmYmM5Yjk0MmE4YjVkMjNhYWIxZWFlIHJlbGVhc2UzMS1tYWludAorODA2NzQgYWI2NDIzNzlkZGMwMjk0NTZhMmFjODAxZTBhNGVlMWYzOTY2MWRmMiBsZWdhY3ktdHJ1bmsKKzgwNjc1IGFiZmM3ZWQzNTVlNGUxMTJlZmJmMzE1YTQxZGI5Y2RjOTcwMDk1NDUgbGVnYWN5LXRydW5rCis4MDY3NiA1YjZhN2YyYTA1YzZkMTZkMjU5MTQ5Y2UzOWI0ZTMwMDI1MmQ2YTFjIHJlbGVhc2UyNi1tYWludAorODA2NzcgNTVlMGVjY2M3ZjQ2ZjM0N2RmNDAwZjNhNDgyMjFlNjcyN2E0ZTcwMiBweTNrCis4MDY3OCA1MmEzYWI1ZThlOGNmNjU5ZDcwMDliMWFkZTYxMmM2YmM2ZWYzNjZjIHJlbGVhc2UzMS1tYWludAorODA2ODEgM2ViYWMwZTQ2MGUwMzllMzk4NGM2OTQwODM3ZGY1N2Q2ZmMxNGJmZSBsZWdhY3ktdHJ1bmsKKzgwNjgyIDI0NWU0MzNkNjBlYjVkYzUzZTExZDNmMWJmNWY4YTg0ZjQ0NWIxNWQgcmVsZWFzZTI2LW1haW50Cis4MDY4MyAxOTMwNGQ4MjNjODc0N2MwOTdhNDVhMTA3MDBiYzAwNTdiNzg5NjNkIHB5M2sKKzgwNjg0IDgyZGEyOTBmZjcyMjNlNmJiYWQxNjNjNTY5ODJjNmVkZGU2MjE4MmQgbGVnYWN5LXRydW5rCis4MDY4NSAyZGI0YjMwMGE0MjA4NTY0MmM1NWQ4NzVmYjliZTI2MGRjMWM4ZmFkIGxlZ2FjeS10cnVuaworODA2ODYgNThiZTNhZjEzMGUyNmE5ZWI5NGUzNDg3YmY1NTVhMDA3N2U2NGFhNCBsZWdhY3ktdHJ1bmsKKzgwNjg3IGY4OWJhMTBmOTczNDk1OTllNzBiYjkwYzJhNzFmZjljYTk5YzJmOWYgc2lnbmFsZmQtaXNzdWU4NDA3Cis4MDY4OCBlMjhmZWRmMzYzNTk2OTRkMzA5ODc2NGQzMDc5ZDcyODk4MTIzNmZhIHB5M2sKKzgwNjg5IDIxMzU1ZGFhZjIzYTQ2ZGI5NzZjMjkxNDI4NmZiNjgzNzFhMDhmMTkgcmVsZWFzZTMxLW1haW50Cis4MDY5MCA3YjMwN2EzMDI3NDQ3NThkMjBlMjAyMjEwMmZiMDM0NjVhMjczYzgwIGxlZ2FjeS10cnVuaworODA2OTEgZjBlMjFhYzc5NWY0NzVjMzg5NjhkMzU2ZTA3ODJjMGI0OGFmZDE1NyByZWxlYXNlMjYtbWFpbnQKKzgwNjkyIGZkYTFkZGFlMDQ5YzY3NmVhMTQ0NmVlNWNiZDhkYjg4ZDQwZjA0ZDkgcHkzaworODA2OTMgNDY4NTcwOWZhYjNlMTM3NzA2NTExNzBhZWJkMWYwZWRhNTM0ZmY5MiByZWxlYXNlMzEtbWFpbnQKKzgwNjk0IDlmNGNhMDA2MTBlMzM4YjEwYzRjYWQ0OThlZjY3YjIwOTE3MWE0YWUgcHkzaworODA2OTUgZmQyNmViOWZiMGY5MmE0YTM5YTk0MmExYjQ3YjM0M2Y4ZjY2NDFiZCBsZWdhY3ktdHJ1bmsKKzgwNjk2IDk0YjUyZTVjYmUyOTQzYmViNGRhNTYxMzI4NmNlOWQwZDgwYjA5YWQgcmVsZWFzZTI2LW1haW50Cis4MDY5NyBhYmYyMjAxZGMzN2NiZWYxYzA0MThhZjk2MDcxZjRmYTAzZTNlZTZhIHB5M2sKKzgwNjk4IDIxMzY5ZDE4OWQ5ZTQ3OWY0MzBmMzYyODk1M2MyOGVjMDYzMDNmNGUgbGVnYWN5LXRydW5rCis4MDY5OSA3ZDk4ZTBlYTlkYjM1NGUzMDkzY2U1ZTc3MzU1NTY5OTc4YjE1MmY3IHB5M2sKKzgwNzAwIGQ5NWRmMjYyMmY5ZjViNzc0Nzk3ODhmOGRhYmI2MDIzNTk0MDRjNzggbGVnYWN5LXRydW5rCis4MDcwMSBiMWRkNzcxNTQ1ZTIxMjdlM2Q5ZmQ3MDQxOGRmNDhhY2UxM2MzN2U0IHJlbGVhc2UyNi1tYWludAorODA3MDIgNDMxMjY3NjI2YTAzNWNlNGU5Mjg5OGE2YjQ0YzM2MmRjNWRlMWY1ZiByZWxlYXNlMzEtbWFpbnQKKzgwNzAzIGNmMDM2MWMwMjU1MWQwOWUyYTBmYzY1NmJmMjVhNTgyZDczZmM5MWEgcHkzaworODA3MDQgYjNjM2IxMjQ2MGQ0ODExMDkxZWYwY2QxNGE4MTJlOGNmYzhkYmYyYSBsZWdhY3ktdHJ1bmsKKzgwNzA1IDhiNzUzMjk5MjQ2NDJlYjk5ZTA1NjA0MTdkYmQyMjE3ZmZiZTZkZDQgcHkzaworODA3MDYgYzYyYjFkMDI1NTFhZTI4NjQxNmE2M2E5NGE1NjNlN2Q2ZjdmNjMzZCByZWxlYXNlMjYtbWFpbnQKKzgwNzA3IGE3NzQ2N2JjYWRlMGI3ODNhOTgxNTBiYTA2MTVjOTNlYTE5MTZlMTggcmVsZWFzZTMxLW1haW50Cis4MDcwOCAwM2MzMjA5MmQyNjY4MjgxYzJiYWNiZGIwODQwMjViMzI3ZjM0NWMwIGxlZ2FjeS10cnVuaworODA3MDkgNjJiOWE3NDMxMDQ3ZjZlOTlkMDcyOTY0YjQ0YWMzYjExMGJhOTM4MyBweTNrCis4MDcxMCBkMDYyYjhlNzkwNTIxZTEzZjdmOTNhOTZmMjczZjdmYjc2NWI1YzhiIGxlZ2FjeS10cnVuaworODA3MTEgYjdmY2IyYWY4Y2I0MDhkZTY3YWJlODUxZTAwMDhkMzk2Njk2NDA3ZCByZWxlYXNlMzEtbWFpbnQKKzgwNzEyIDU2ZDgzMWU2ZjUwODgxYWRkZGU4NTI0YzdiYmEwMDI2MmI2MDA5OTkgbGVnYWN5LXRydW5rCis4MDcxMyA0NzY3YzY2NmIyNWIwOGIzYmY1OWI0ZGExZmU3Njc0MWE1NzM2MjdmIHJlbGVhc2UyNi1tYWludAorODA3MTQgNWQ0YTU2NTU1NzVmMmM0YzZkYTRlZTZhY2FmMDNiOTJhMzFmMTliYiBweTNrCis4MDcxNSAzZWQyOGYyODQ2NmY2MDZhMTZhZDI0Zjg4ODFmNjU5NzQwZGZlMGM3IHJlbGVhc2UzMS1tYWludAorODA3MTYgZjk5MmNlZDMyYzIwNTc4YTI5MzAxY2ZmZTIzMjY4MzVjZDgzMGViMiBsZWdhY3ktdHJ1bmsKKzgwNzE3IGQ5MmZmNzA4MWIyMDM5ZDZjYzg1NTljMWIyMzNiMGJlZTE1Yzc0OWQgcmVsZWFzZTI2LW1haW50Cis4MDcxOCBmMDI1NWVmNGRiZWJkMWYyMzhlZDU5MWJmMDc2ZGMzYTk0OWE3YmMzIHB5M2sKKzgwNzE5IDdhYWY1OWQ4ZWYwYmZiYjRhZGJkOWE0ZmMzNGMzMzI1ZmNjNjI0OWIgcmVsZWFzZTMxLW1haW50Cis4MDcyMCA5YjQzOGJiMDZkNGQ2MjNlMmUyMzU4YzU2Nzc2YmIyOTBhZjYyZjExIGxlZ2FjeS10cnVuaworODA3MjEgZmUzYmYzOTlhMTljMTI2NzM3ZWI0NTgyNGE5MjQ1N2EyYWY4YzllOCByZWxlYXNlMjYtbWFpbnQKKzgwNzIyIDgxY2VmNWI3NGYxYTdhZTU5ODM3ZTJiOWM3OGUwZTAzNDE1NzkxNTkgcHkzaworODA3MjMgY2EwMWFiZDhhZDg3MTZmYzM3MTYyYzQwYTI4YThhOGI4NDU1ZGM3ZSByZWxlYXNlMzEtbWFpbnQKKzgwNzI0IDRmZDNhYjVmYTcxZDYwNmFlN2UyODAzMTI5Mjk4ZGU3YmVhZjMyZjAgcHkzaworODA3MjYgNjg1MGFhNzg2YzE4NzY3ZTdhM2QyNGQzZTkyZDM2ZDljNTViOGU5MyBweTNrCis4MDcyNyA1MTJkNjFhNjkyZTRlYjM3ZWQ1NzNmYjdjMDkxMDdiMTU4NGE0NzE5IHB5M2sKKzgwNzI4IDEzOGJiNWM5MzA3NDdmYWViNjRlNDgzZTM3ZjIwNWQ0YTRkYzQ2NWQgcHkzaworODA3MjkgMThjYzA1ZTgyNzUyMjcxZTY2NGI1M2ZiZTYwNDUxNmQ1NDViZGE5YyByZWxlYXNlMzEtbWFpbnQKKzgwNzMwIGU5OTEwZDE5MzIxNDZlMGE1MzkyMTM0ZGYwNjQwYjI4NmVjOTEzNTIgcHkzay1qaXQKKzgwNzMxIDE4MWNkMTQ5MmNiMGM3NWJhOTdkYjMyMDE5ZmJiODEzNzMxMzhhMjEgbGVnYWN5LXRydW5rCis4MDczMiBhMTE4OTA1MjcyMjk5ZmI1ZTZhMjAwNzM0OWEwYWFmNzA0NjY0ZDFkIGxlZ2FjeS10cnVuaworODA3MzMgMDJlMTg3YmFhZjUxNGQ3Yjk2MmMzYTA0ZTRhYzMxOWE5NzdlY2Q1MSBsZWdhY3ktdHJ1bmsKKzgwNzM0IDBjZjgwYjcwZjgzOGEwMzgxYTMyY2Y3YjU1ZjM2NDg0NWQwMzRkYzcgbGVnYWN5LXRydW5rCis4MDczNSA5ODJlZWM5YThjMjg4NTNhZmQ1ZTRkOGY5ODk0MDcwZThkNThmZWM3IGxlZ2FjeS10cnVuaworODA3MzYgZWI0NzBiODVlNjdhZmE2NWZhM2JkMzAwMjM3OWYxNDFkM2RlZGFjNiBsZWdhY3ktdHJ1bmsKKzgwNzM3IDdlZTU2MmNjZWE4MDJjMTM2OTg3ZjFiMmY5MGE5OWQyZDk5NDQ5N2EgbGVnYWN5LXRydW5rCis4MDczOCA2MzY1OTFmNGMyMTYyYTkxMDAwMzJmZjAwYWZmNDg5ZGRjMWMyNmQ4IGxlZ2FjeS10cnVuaworODA3MzkgODE0MjQ1M2RiODBjYTAwMWI1MTc4ZGZkNjNjZDNjZWQ2MzVjMWQ4MiBsZWdhY3ktdHJ1bmsKKzgwNzQwIDdjNjJlNzJkODU2YjI5MjMyN2ViZDI4OWEwMmFlZmUwZjc5YzcwYmEgcHkzaworODA3NDEgZjY1NjllMzRiZDI4MWFhMWUyMWViMTE3OTM4MjVjZDEyMzRlNDA5YiBsZWdhY3ktdHJ1bmsKKzgwNzQyIDc2OTVmNmE3ZTNhM2I2NDI2MmY3MmY5OWU1MzM4Mzc0ZjdiNjMxM2MgbGVnYWN5LXRydW5rCis4MDc0MyA2NmZiY2EyODdhMDExODQyYzEwMWI2NjJmMjQ5MjQyYTZiZGYxNTQwIGxlZ2FjeS10cnVuaworODA3NDQgM2M3NjgzZDZhM2M0NzEzNjRlMjk4MzY1NmUyZTg1NTJlNTg3YjIzZiBsZWdhY3ktdHJ1bmsKKzgwNzQ1IDg1ZDY5M2U1ZjIyOTNiYjQxYTE1MmYxMjQxZTE1MjViMzMyNWFmZGYgbGVnYWN5LXRydW5rCis4MDc0NiA1NWE1OTNjYzMyODAzYmM3NGRiYmZhZjNjNjlhNDE1MWFkNjYwODg4IGxlZ2FjeS10cnVuaworODA3NDcgY2QzM2Q2Y2QyMTAxOTU2NDMzOTUyYWZkMzJjMjZkNWI3YmIzZDg4MSBsZWdhY3ktdHJ1bmsKKzgwNzQ4IGUwZWUwOTUxZTk1M2YxNTFjZjNmYzA4YzdhMDlmNzUyNDVkNTUzOTIgbGVnYWN5LXRydW5rCis4MDc0OSA1ZWMxNTVlYzdkYjI3MGE0ZTUwZWZiYTg5YjA1Y2Q4MWQyYzI1NDlkIGxlZ2FjeS10cnVuaworODA3NTAgZDE3NmFhNDczMjg3NTY3OGY0ZGVlZDQ4YzhkMDVhMGY1NzExOGViZCBweTNrCis4MDc1MSBhNTE1MzdlNzA0YTliNDQ0ZTZjZTU5ODRjODAyY2M4OTViYzZlZTE2IHB5M2sKKzgwNzUyIGI3NjBmNmZmODllYWIyN2EyNGNiNTBlNWJmZWM1ZTRlYjRjOTllYzkgbGVnYWN5LXRydW5rCis4MDc1MyBjMGVhMDc5MjU0MDAyODRmZjQ5YzFlZTcxNGU5ZGMyNTNhZjU2YTllIGxlZ2FjeS10cnVuaworODA3NTQgZWNjMzJlMmY0NjU2NmU1ZGVjOWY2OWI0ODIyNTMyZjUxOTQwMGIxYyByZWxlYXNlMjYtbWFpbnQKKzgwNzU1IDE4MzM0ZjIzZjY4NmZjMjU4OTY0MDI0ZDcwYjljMTQ2NjdlN2U2NTAgcHkzaworODA3NTYgMTE0Mzk3MmYwNGJiZDU3Nzg4MGYxYzNiYjIwMmMwMTQ0MTIzMWM2ZSByZWxlYXNlMzEtbWFpbnQKKzgwNzU3IDFiNGI1MDZhYTA0Mjc2OWY5MGFmYTExYTFmMzQ2NmYwNDU0MzZkZmEgcHkzaworODA3NTggZjU1MGVkODkzOThmNThlNTFhZDk1ZTJlNTI0ZTc5MmZjN2RhYzRjZSBsZWdhY3ktdHJ1bmsKKzgwNzU5IDZmNDY2OGI5N2Q2ODQwMzU0MzliZGYzOGY1OTE5NDM3NGJjMWUxNjIgbGVnYWN5LXRydW5rCis4MDc2MCBjNzQyOTlkZTgwMWFiYTM1YjM2MjA5NDk1MjA3Y2RkODUzOTg4NjEzIHB5M2sKKzgwNzYxIGYzODRlMTFjMWJiNWY2OGE4NzdkOGE5NTNkN2VkN2IzZGU5ZmUzNDMgbGVnYWN5LXRydW5rCis4MDc2MiAzOTA3ZDUyNjQ4YTBmMjU2MTMzNWU3MGViODEwOGU4N2Q4MDgxMWIyIGxlZ2FjeS10cnVuaworODA3NjMgYWRjMmViZGE3NjM2YWFmYmRjNzUwMWNiMDc2Yzc3Njk1ODgzN2EzYiByZWxlYXNlMjYtbWFpbnQKKzgwNzY0IDBhNGNhODkyYTU5ZTVlOTI5ODE5MTNmNzY4MDU5ZTgwNWFlOTA2MTYgcHkzaworODA3NjUgOWJhNmZjZWM0ZjE0OWUxN2EyMjEyNzU0ZTVjOTM5NGI2MTRlMDcyYSByZWxlYXNlMzEtbWFpbnQKKzgwNzY2IGQ5MjI4MDUxNzMwNTM3MWMwNTJiZjEyZTRkYjY3Y2FkZDdlMGQyN2MgbGVnYWN5LXRydW5rCis4MDc2NyA4YzliNzg1YjE4NDlkMDZiM2Q3YWRkZGM0NTAxODhkNmQyZjZhNjNiIHB5M2sKKzgwNzcxIGQ0OWYxMzEwZTIzZjkwMmFkOGFlMzdlOGQ1NzUwNDdlNGQ2MDdjM2UgcHkzaworODA3NzIgNmU0YmZjZjIwODBjNzE2MTY2YWNlNDdhYmIyZGRmOTQ0ZGM5OTU2YiBweTNrCis4MDc3MyBjZjQ4NTM1MTMyZTBkYzA3ZWQwZTNiN2IwMmIyNTI3NDlhN2UyYzcyIHB5M2sKKzgwNzc0IGUwMTA1ZmQ1MjAzMjkxN2UzMDA1OTVmMzYwNWU1YWZkNWQzMmY2OTYgcmVsZWFzZTMxLW1haW50Cis4MDc3NSBkNzRhYzdjY2E2MDc3MGExMTJkYWEzZDJlNzg2NWIzMzA2YWM2NzhiIHB5M2sKKzgwNzc2IDEzNGE2M2FmMjJhOWE1OGE4NjU2YzI4MWU3M2VhN2Y5MWEyYTU5NmYgcmVsZWFzZTMxLW1haW50Cis4MDc3NyBiYjUxZTRiYmZmOGMyOGIyMjNjZGUwMTE4ZTI5NTAwYTQwZjJhNjQ0IGxlZ2FjeS10cnVuaworODA3NzggZGQ2MGRlMmZhZTNjZjZkM2FkYTJjNmQ4NTEyOTQ0NDYwY2E4OTgxNyBweTNrCis4MDc3OSA0MzgwZTA0MzQzZWU5ODVhN2E5OWEwNjk3ZjI2ODYwZDQ4YTdiNTg0IHJlbGVhc2UyNi1tYWludAorODA3ODEgYjdhZTNhNmIxZDg0YjI3NDBhNzI2NDNhN2ZkNmIzYTVhYjdkYzllZSBweTNrCis4MDc4MiBmNDQxMWEzY2RmMTM5YmFjNzc5ZTJiZWRkMWQ3NjcwMTlmODEyZjc4IGxlZ2FjeS10cnVuaworODA3ODMgMzFhMzJlNGUwMjU2ZmY5YjEzYjE1NGM4YjVhYWZhNGZiMDFkODMwYyBweTNrCis4MDc4NCBkYzY4NTIwOTg4YTdmOWI5NmEyNTAwNDNiN2VkZjY4OWJjMGQyY2I3IGxlZ2FjeS10cnVuaworODA3ODUgODEzZGFlZTk0ZjczODNmMWVhMTM0YTFmZDFlZTU3ZmQ1ODFlOThmYiByZWxlYXNlMjYtbWFpbnQKKzgwNzg2IGZiYjVjZDM0NWI0MmU5MWRjMjNmZDM5NjcxZjM4YjFlZWEyNmI2Y2EgcHkzaworODA3ODcgN2IyOTk0MDRlNzgxMGNkNmI5NjY5OTI4ZGYyNDk0Y2ZiN2Q5N2U1YSBsZWdhY3ktdHJ1bmsKKzgwNzg4IGYwNWEyOTg5Mzc5ZWM5YTZiMzM1M2MyNmU4Mzg3MGQ4NzI0YjljODcgcmVsZWFzZTMxLW1haW50Cis4MDc4OSA2ZGI5YmE0MmU0Njg3MjM4MGUwOWJmNzU0YTBhNWU2ODYxYzkwYjQ0IGxlZ2FjeS10cnVuaworODA3OTAgMzUyMjFjMDE1OGI1YTcyZmQxNGYyM2M2ZTU5MGE1MmU5OTRkMjIxMSBweTNrCis4MDc5MSBjY2FkZTU3NzI2NzQ2NDM3NTc3ODhkZTQzZGFkMjk1YTVkNWUwMWRkIHJlbGVhc2UyNi1tYWludAorODA3OTIgNTBhNGVjMzczNjFkMDBkZTQwYjE4OGZkN2Q4N2JjODliMjcwOTVmZSByZWxlYXNlMzEtbWFpbnQKKzgwNzkzIGI2MDhlMmVkOWY3NTg5MWJiZmRmNDc1MmFkMDNjOGM0ZTYzZjY5MTEgbGVnYWN5LXRydW5rCis4MDc5NCA0YjY4ZDZjOGNkNTJjNGUwNmY3YTdkNThlNWNiNTc0YzJlNjllN2E1IGxlZ2FjeS10cnVuaworODA3OTUgMzU5MzJhMjRiZTg1MDljZDliNjI3YjdlZDhlNmUwYTUzZDExMTA5YSBweTNrCis4MDc5NiBkNGFhMzU5MDc4MDg3NjJkZWQwOThmOGUxZTQ4NWVmYmRjZGZlMTU5IGxlZ2FjeS10cnVuaworODA3OTcgNjI3ZjExNDQwYjg5ZTYyMjViYjQ4Nzk4ZTkwZjJlODkzMGMwMGI1MiByZWxlYXNlMjYtbWFpbnQKKzgwNzk4IDc0ODNlY2I2MjFlMGY2MGJkODgxYzdlMDM1MTg0NTk5YTQ5YWQ3ZWIgcHkzaworODA3OTkgOGVlODBjMmY5OTI2NzljN2JlZWJkMmIyMDE1NDFhMWFiNGI3NmFlYiByZWxlYXNlMzEtbWFpbnQKKzgwODAwIDU3NWU5MzhhOGNhNTI1YjIzZTgwY2ZkODM4MGJiNWRjNTU4NDY1NmQgbGVnYWN5LXRydW5rCis4MDgwMSAxODlhMmRlM2UwMzQ1ZjA0NGU1ODA0MDI3ODhiYWYyOGQzYjlhODgwIHJlbGVhc2UyNi1tYWludAorODA4MDIgMzNhYzEwOWRlMGNjMmQyMDA0YTRiMDlhNGY0YjZkNmQ0NWI5ZjM2NSBsZWdhY3ktdHJ1bmsKKzgwODAzIDgwZDA1NjMwMjYzYWRkMjU4ZWUzYTc1ZTJmYTM4MDJjNTc4OWRhMTcgcHkzaworODA4MDQgZjY3ODViY2U1NGI1MzMyZGU1ZTU2Zjc5MTYzMmM1NjkzMDllNzg2YiBsZWdhY3ktdHJ1bmsKKzgwODA1IDFmNzUwNmYyMzc3MTZmYTA4NWEyYTRhYmViYzBjNGFhM2YwNDU5ZGQgcHkzaworODA4MDYgOTBmNGI2MmQ0NzU5ZDA0OGE1Mzg3NjQyNjcyYzU1MWI3NTNjMTBlZiBweTNrCis4MDgwNyA2ODk5MTM5MzAxYzllODdjMzkwYzBlZWMyNzMwM2ZmMDQzOGJjZjE5IGxlZ2FjeS10cnVuaworODA4MDggM2I1OGYyNDQxY2M4N2ZkZDZiNmNhNmI1ZjMyNDVlN2IyNDRkZjg1NyBsZWdhY3ktdHJ1bmsKKzgwODA5IDk0NTM4YjA0NGNiZWZhYjBlOTQ2N2UyYmQ3MTkzYTU2YTc3ZDkzZmIgbGVnYWN5LXRydW5rCis4MDgxMCBmOTVjMjU5YjgwYjNjZTVhZDU1OWY5Zjg0NmUxNzYyYmM2NTM4MDMxIGxlZ2FjeS10cnVuaworODA4MTEgN2JlODEyOWVlMGZkMjFkZDE4OTkwNTBhNDk5NTE4OTVkOTllZTA0NCBsZWdhY3ktdHJ1bmsKKzgwODEyIDQ3YTI3MDBjMDBiNDlkODY1ZDFjZDI5NGQ5NmM5MjIzM2Y5MDBjZjEgbGVnYWN5LXRydW5rCis4MDgxMyA1Y2VhMjcyNzVhZjEyNTgyYjA3OGMzMzk2YjMyM2U2YzhhN2RjMmM2IGxlZ2FjeS10cnVuaworODA4MTQgMmQ4ZmE3NGY5MjYzZTQwMDEyOWRiNTNjNDE0MjRlMDk1ODVjYWU5NiBsZWdhY3ktdHJ1bmsKKzgwODE1IGZmZjQzOWYwODlmZTU1YWI1NGI4YzczOTRmZTIxYjk0MDU5ZjQ2MzIgbGVnYWN5LXRydW5rCis4MDgxNiA2ZmI2ZmE4MDIyMjFlN2Y1ODRhM2RiZjZiOWQyNGNkODE4NThlMTBiIGxlZ2FjeS10cnVuaworODA4MTcgODQ1YzZkODAwMzAyNDQ2Y2E4M2I4NGYwYjBjYjUwNzgwZTcxNjYwNSBsZWdhY3ktdHJ1bmsKKzgwODE4IDc3Yjc4NjA3NjAwZTUyNGQyZTg2N2RkNTRkOGI2NDU1MGY0YmExMmEgbGVnYWN5LXRydW5rCis4MDgxOSAzZmU0YzM0Zjc4YzAyOWY3OGU4ZTMzMzlkY2YxY2M4OTA5MjUyM2ZmIGxlZ2FjeS10cnVuaworODA4MjAgOTVjNDAwYjlkNzRjYTM3YTZmYzcyN2M5MDhmYTAwYjMyYTgwN2NiZiBsZWdhY3ktdHJ1bmsKKzgwODIxIDBkMTQ4MjdiY2MwZGZhOWVlMjBkMzJkODhjNDUxZDg5Yzg5Y2VkOTMgbGVnYWN5LXRydW5rCis4MDgyMiA4ZTNiNWZiYzFlNDFiZjFiM2Y3MDZhNDM5YWNhNjY1MzVmYjQ3OTk3IGxlZ2FjeS10cnVuaworODA4MjMgMDM3OGY2ZTM0NmYwMzI1OTg3MDY3NzUwNmE3ZWRhYTJiYmE0OWRmMiBsZWdhY3ktdHJ1bmsKKzgwODI0IDg4NDY2ZWYxZjBjZGU2ODE4MDhiZDMyMzc2NGI0NDliYmFhOWNlYWQgcHkzaworODA4MjUgOGJmMzQ1OTRiNjZmMzE1M2I5ODBlODZiODQ5MDk4MTE4MDBiOWQ5MSByZWxlYXNlMzEtbWFpbnQKKzgwODI2IGYzMzA5MDQyYTBiMzFiZWUxNmMyM2Q5OTMzNTI5N2I5YjZlZGJjZWIgbGVnYWN5LXRydW5rCis4MDgyNyAwM2JhNjBkMWU0OTJhMzk4NDU1NzAxMDZlMjkyYjNmNWNiNGU3ZTU0IHJlbGVhc2UyNi1tYWludAorODA4MjggOTQ0OTM4YWJiMjZjZTA2MDlmMDQzMGQ4NDM2NmUzM2Q5M2QxMmNjZSBweTNrCis4MDgyOSBmNGNlYjRhZTAyNDdkYmEzMjYyMjgxMWY3MzViYmFlNzczMGExMDQyIHJlbGVhc2UzMS1tYWludAorODA4MzAgMjZiODFjNGU1ZmJhNDdlNGM2NjgwM2MzYTg5NjU5NTU2NDllNDI1MSBsZWdhY3ktdHJ1bmsKKzgwODMxIGYwZmE5NDRiMTVjMGNmMWY4NzA2MGRhZjNmOTI3N2IyMDJlNThlYjYgcmVsZWFzZTI2LW1haW50Cis4MDgzMiA5YmVhMzdhODUwODg0Y2RkMjI3OTFjOTRhMDQwZjJmZGMzZDJkYmEwIGxlZ2FjeS10cnVuaworODA4MzMgYzQyNDI5OWIzODg0YjQwYzc2YTkwZmI3YjU3N2YwN2Y2YTIzMGNjMSBweTNrCis4MDgzNCA4YjVkZGUyYzMxZmIzZjY2NjA1ZjNjOTU2YzkxYmY0NDBmNmFhYmEzIHB5M2sKKzgwODM1IDc4ZTdmYzAxYzUxYWM1ODM1ZjRkNTNiM2YxZTExNmMyYzI5ZDgyNDAgcmVsZWFzZTMxLW1haW50Cis4MDgzNiA1ZGNhMGEzZmI5OTNjNDA1ZWUzYTVhZGEyZmJmMzk3MmQwMGUyZTUyIHB5M2sKKzgwODM3IGUzZTQ2NmY1M2Y5ZWYwYTE0MjJkZTY2NzlkZGE0ZTI3NzIwMzEzNzEgbGVnYWN5LXRydW5rCis4MDgzOCA5OTVlYjk2Y2FlNjg2YmVmMzU3NzhmMGU0Yjk1YWFmMjk3ODVhMjVmIHJlbGVhc2UyNi1tYWludAorODA4MzkgYjMwM2MzNTI1NGRlNDEzMTdkOWM4NzA0NDgxY2IzODc3YTFhNzZjMiBsZWdhY3ktdHJ1bmsKKzgwODQwIDY1NThkOTZhZGUwM2FkMzM4NmI5NWYyNDRiMmRlYjhjNWRkNWRhNjAgcHkzaworODA4NDEgMmYzMTMwMDhhNDFkNDVmMmE2ZWNmZjY0YWM2MzJiZDVlNWEyZGU4NCByZWxlYXNlMzEtbWFpbnQKKzgwODQyIDYzZDViOWQzOGIxNzZmYTRiMTM1N2EwMTFkZDYzY2Y5NmIyNDAxZjcgcHkzaworODA4NDMgOGFmZDZmMjhhY2E5ZDIyYWU5YmVlNjJhNTI5MDczYTZiNWIyZTI5OCBsZWdhY3ktdHJ1bmsKKzgwODQ0IGYxMWQ0ZDJiNDRiNjdkNGExYTcyNDA5MTZkZjM5MjM1OGEwZTA2MzUgbGVnYWN5LXRydW5rCis4MDg0NSBlMTE0NmIyNWY3NzMyMjQ4NjQzM2M4NzY3ZGRlMjNhYmVmMGExZmUwIGxlZ2FjeS10cnVuaworODA4NDYgMWNmYjIyOTg0NGE3OGM1NDIyMjYyN2YxNzlkNmRlMzE0MzE3NTEwOCBweTNrCis4MDg0NyBlNTAzYmI4YjNmNjE1YjM2ZjM3MjcyYWQ3M2UwOTg4MWIzNTM5MzU1IHJlbGVhc2UyNi1tYWludAorODA4NDggZGMyYWFjNjI0ZmY4ZjliNjM2YmVlZmQzNDEwYmMwYzI3MzFiM2RlNSByZWxlYXNlMzEtbWFpbnQKKzgwODQ5IDAxNmRiYWIzNTFmMmUxM2U2ZDBjNmY2MzJlZTIyYWM3OTM3NDlmMTAgbGVnYWN5LXRydW5rCis4MDg1MCA4NWNjM2VkYzdkNDZlNDI2NDRiY2U4YmI1NzQxZGEyNmRhMzU2MTI2IHJlbGVhc2UyNi1tYWludAorODA4NTEgYWE3ZTZiOWNhYjZkNDkyZGM2ZjcwZjhhMTQyNWZlODYxNmJiMWE4NSBweTNrCis4MDg1MiBlMjE4MDNjNGYxZWVmNWY4OTI2YmVmNmU2NWU0OWVjZjE4M2I2NTcyIGxlZ2FjeS10cnVuaworODA4NTMgZDJhNDQwMDU3OGE1YzczZWQ2ZTdlNmYzYWYyMjMyZmQ2MGU5N2EzNSByZWxlYXNlMzEtbWFpbnQKKzgwODU0IDg5NDJlOTYyODZkYzY0MTc3ZWViMmVjZDIzM2VmMTc1NWZiY2RhMGMgbGVnYWN5LXRydW5rCis4MDg1NSA4YjY0MTU5NzkyYmJiMWY3MTY4YjE2YmEwZWRjNjUwY2Y0ZDBhMzU0IHB5M2sKKzgwODU2IDViNTVkYzk1NTRmY2JkNzdlMDdkMWJlYjYzZmZkMTkxZTEyZjZlNDAgcmVsZWFzZTMxLW1haW50Cis4MDg1NyAwZWQxZWJlNWJjMmZjOTNjZjBmMDIxMzIwMmUxNDM2YjFmNjYzNjJiIGxlZ2FjeS10cnVuaworODA4NTggZTRhMGJhMjUxYzRhNGZkZDA1ODVlZDQ2YmE3ZjgyZGE4ZTRkMWQwNiByZWxlYXNlMjYtbWFpbnQKKzgwODU5IGI5MmVmOGViY2NiOTc2MGI0YWU0OTZmZTU5N2VmOGNhMDEwOGY1YWYgcHkzaworODA4NjAgMzlhMmJlNDEyN2RkNDQyMjVjYWUyNTg4ZDc0ODIwZWUxYjY3ZGIxZSByZWxlYXNlMzEtbWFpbnQKKzgwODYxIDNjYmNjMjc0NTk3MjkyZDFjNDRjNzdhNGQwMTMyOGI4Mjg2MjA4ZDMgc2lnbmFsZmQtaXNzdWU4NDA3Cis4MDg2MiA5OTY1ZWY4MjVjN2Y3YjJkODU5MGRjYTMyNmQ2YjQ5ZWIyODU2ZDBiIHNpZ25hbGZkLWlzc3VlODQwNworODA4NjMgMmQ4YTNiYjhmYjYwOGE3M2EyNzBiZTU1YjFjOGRhMzQ2Zjc3ZGU3MCBzaWduYWxmZC1pc3N1ZTg0MDcKKzgwODY0IDNkYTY3Mzg4Yjk2YTM3ZDE2MWU1YTU1YTc5MDdiOTRmNjQ2M2QyYjUgc2lnbmFsZmQtaXNzdWU4NDA3Cis4MDg2NiA2MjU0YzAyOGM2M2QyNDAwZWZkMWE5MzM2M2FmNjZiYWI3NTA1NGQzIGxlZ2FjeS10cnVuaworODA4NjcgZWE3MDAxYzNmMDAwZmY2OTEzNzk0MzRiNWNlMDA1NGU5Y2FlY2EwZCByZWxlYXNlMjYtbWFpbnQKKzgwODY4IDIxNjZiNjNiNmZkZjg2ZjZiOWZkMThmODMyMjFhYzYxZTA3YTA1ZjggcmVsZWFzZTMxLW1haW50Cis4MDg2OSBiNGIzMjJiMmU5OGI5OTAxNjk0YmJlZDllNjJjZDY1NWYzNGUyY2JjIGxlZ2FjeS10cnVuaworODA4NzAgMzQ2YzRjMmUzODZlNzQzNWM1ZGFkZGU2MTIyYTUzYTJjNjU2MTBiMSBsZWdhY3ktdHJ1bmsKKzgwODcxIGNlYmUyODU3MDAwNjkwZWYyMWIyNWU0MmMyMGE0NTdhMDIzMzE4NTIgcHkzaworODA4NzIgNGNkY2ZmMGU5YTM2ZWQ4ZGVhYTI3NjUzZGFjMGM5YzBjMmU5ZjEzNiBsZWdhY3ktdHJ1bmsKKzgwODczIDZiMjdhOTVjMmM1MjI4MTRhNmU5MWYzYTNiMmNhZTQwZmYyNzNjMTUgbGVnYWN5LXRydW5rCis4MDg3NCBlNGU1NDg2ZWNjYmUwZTYzNzJiNDhkMzE0MDk4ZTdhYjI3ZjI4YTM0IGxlZ2FjeS10cnVuaworODA4NzUgY2M5MjUwMmRlNGM5NTExNDRiMmNlN2JmZjQ0OTJkOTY5MjQ1MzI4ZCBsZWdhY3ktdHJ1bmsKKzgwODc2IDNiNDkwOTYzZjkyYzg3NDg2M2NjMTcxMmZmYzEzMTE4N2JmZjE4MWQgcHkzaworODA4NzcgMjk3ZTIzMzI4YzZjNjk1ODBiYTgxOGI3ODViMDZkMDFkYzdjZjgzZCBzaWduYWxmZC1pc3N1ZTg0MDcKKzgwODc4IDU0ZWZhZjZkMmY4OTJhOTVhNjc4MjE2ZTIxODRiNzBjNDRiOWUxYzggcmVsZWFzZTI2LW1haW50Cis4MDg3OSAwYTgzOTY5YjZmMzVkYjE2ZWIyYjZjODkyOWU0NGFhZWM2N2RkMzQ1IHJlbGVhc2UzMS1tYWludAorODA4ODAgOWFmOTYwZmJhY2NjNWU0ZTUxYTc2YjhlMzU0ZTNhMGNjYzljZGM1MCBsZWdhY3ktdHJ1bmsKKzgwODgxIDUzZjliODQ4ODJhMDU2OTU0MDdkNWFiZWU0Mjc2YTlmNjdlNWVjYWUgcHkzaworODA4ODIgYWIwYjI4NTVjOWU0MjkxM2EyZDVlMTZiYzY3YWMzOWUwMDVkYTU2OCBsZWdhY3ktdHJ1bmsKKzgwODgzIGFkZTgyOTNiYTQ4N2ExOTRiNDY4MTVhNGM3ZGFlZjU3MDc3MjBkNzAgcHkzaworODA4ODQgMmQzYWUxMmFkMDkzNjhkYzcwNTk5YmQzMjBjOTMzNWVlNDEyODJlNiBweTNrLWppdAorODA4ODUgN2U1YmRmNTlhNDg3MTM2MGU1YzA0ZGIxYTE2MGNjN2EwOTk3OTliOCBweTNrCis4MDg4NiA2OTNmNzRjNDJlNWVmOWRiM2E2YzI5N2QyOWU0OGY0MzBkYjMxMjFiIHJlbGVhc2UzMS1tYWludAorODA4ODcgOWQ3NmFmOTVjMTY2ZGE5MjdjZDhiMjM5ZmEwZGZkYjkwNjIyOWY1ZiBweTNrCis4MDg4OCA4YWQxYzc0ZDU5MDk3MzE1NTQwMWE2YTE0NmQ3ZjdjNzIxYWJmZDg5IHB5M2sKKzgwODg5IDJhYTYwNTE2OGYxMTJlMTAzNjk5NjFkNmNkODNkY2M3MGFiMWQyOWEgcHkzaworODA4OTAgZjE4MmUwOTIyZGM3NDc2ZjM2NWQ3ZGJkMWQ1NDEwYjUzMTg5NDQ2YyBweTNrCis4MDg5MSBmNDIzMDc2NWRkYmIxNzhkZjU4MDQ0MjQyYWQ3ZjAwYjE5MDE2NWVhIHB5M2sKKzgwODkyIDU0OGZhOGVkYjdmMGZiNzk4MzkyMjAwNWI4ODliZjYyYjQ0YzI0MTUgcHkzaworODA4OTMgNWFiNGI0ZWZjZjYxZjM3ZDUyZTE2M2IzYmUyMjg1OGVlZGI5ZDQ3NSBweTNrCis4MDg5NCBhMWM5YTkxMjYwZDkxYTNhZjVkODAwYzY2N2VjZTAzMjE3M2NiMTExIGxlZ2FjeS10cnVuaworODA4OTUgYTQ5MjU2YjIyNjk1N2EzMDkzZjE3ZWJkZTc2OTczNjcxYjMxNTU0NCBhc3luY29yZS10ZXN0cy1pc3N1ZTg0OTAKKzgwODk2IGIwYjdiYTI2YmU2YzE5MTc4MTIxMGEwMzI0OWUxZjQ4MzQ0OGM1MjQgbGVnYWN5LXRydW5rCis4MDg5NyA1ZmIzOTc3ZmIzNDFlMzdiYzk5NDc0YzUxOWNlNzJkZjQzMDVmNDE3IHB5M2sKKzgwODk4IDgzYzVmMjdhZjU3YzkyY2UwNDM3ZDY5MDRkMDY3ZDk4ZTNmZWRmZGQgcmVsZWFzZTI2LW1haW50Cis4MDg5OSBjYTc3ZWQ3Mzk4MjcwMTlmMjJlMTNkMDQ5Mzc0YzlhYzAzNzIwZjk1IHJlbGVhc2UzMS1tYWludAorODA5MDAgMGIwOTcxZGFmNThjMDA3MDcyNDkwNWQ4MzUzOTlhN2Y1MDE3OGZhNCBweTNrCis4MDkwMSBkNjE1MTQ4ODcyNmY4YWU3NjQ2NTAzMzBhZmY0NmZlNmU0YWViZmYxIHJlbGVhc2UzMS1tYWludAorODA5MDIgNTI2MDEwNGRiOTlkNzQzNDA2YjE1NTY1YTJjZTViYjQ4ZTA2MDYzYyBweTNrCis4MDkwMyAwNjllN2VmYTY0NWI1MTA3NjVlZTUwYjc2Zjc3M2RmYjc3YTQzODdlIHJlbGVhc2UzMS1tYWludAorODA5MDQgNTk4MWIyZGExMzFhMTI3MzQwNGRhZDJlYTdjZGQxODU5MDEwMjVmZiBweTNrCis4MDkwNSA0MjdjNzUwMGIyYjcwYzlmYzlmNTI0NjVlY2NjZTRiYTI5NGM1YWJlIHB5M2sKKzgwOTA2IDI0NTllZTZhYzdjN2FhZTAyZTA4ZTYwOTEwYWVjY2U2MTRjNGE5MzUgcmVsZWFzZTMxLW1haW50Cis4MDkwNyAxNjMyMTgzNDE1NmEwNDBlODI3MDY4YTExZDI4NmUyMDhhNDg3ZjU4IGxlZ2FjeS10cnVuaworODA5MDggNWM5MDk0NzkyZDFhY2NmNDA5ZWFlNDg3NmRiOTlhNzZjOGYzYzE3MCBsZWdhY3ktdHJ1bmsKKzgwOTA5IDQ5MGQxYzIwMzZlOTYzNTYxZTY4YzU1ODQ5OTExYjg5MGQxZmE0NjYgcmVsZWFzZTI2LW1haW50Cis4MDkxMCBmZTdlNTZmOTg2Y2Q0NTBmZTI0YzUzNGZkZTE4ZDE0NTA0MTJkY2YzIHB5M2sKKzgwOTExIGUzYTNlZDYxNGM3ZTA5ZTMzMjZhN2IyMDY4NDhmZWQ2YzA5NzA0NGIgcmVsZWFzZTMxLW1haW50Cis4MDkxMiA2MWM0Y2E5NGEzNjY4MjhkMmRkYjY1YWM1NDZjODFjNDAyODliMjlhIHNpZ2ludGVycnVwdC1yZXNldC1pc3N1ZTgzNTQKKzgwOTEzIGUwNDZhZGIxMDQ3OTdmNDNkNDY1NzgzMmY1YzdlNWM5NjdhNGRiNDggc2lnaW50ZXJydXB0LXJlc2V0LWlzc3VlODM1NAorODA5MTQgZTI5OTQyZWEyZmRmODQxZjE0ZTlhN2ExNzMxNzM0MzRmOTliOTQ0YiBzaWduYWxmZC1pc3N1ZTg0MDcKKzgwOTE1IDE5YmVlOGVhNDhkOGFiNTdiNTI5NzM0NDMxYWI4MTAzZGVkZjZkYjUgbGVnYWN5LXRydW5rCis4MDkxNiBkMDJiMzE3M2MzYzViOTIxMGMyYzEyZTg2MTdhODhhYzQ2MTc4NmU4IGxlZ2FjeS10cnVuaworODA5MTcgMzUzMjhmMDY5MjFjZTljZjU5MDA2YTM0N2ZhYzUzZjlkMWEyM2Y2MSByZWxlYXNlMjYtbWFpbnQKKzgwOTE4IDVhMzhlN2UxNmJmOGNiOTE4ODRkM2UyOGJjYmRlZjBkMzJkNjExNTIgbGVnYWN5LXRydW5rCis4MDkxOSBmYWNjNjkxNzU5YTFjMzE5NjliNWJiNDMzNWFmZGMwMWJkZDJiMmZmIHB5M2sKKzgwOTIwIDc5NjdiYzdiMDE4ZDRhZTYxODVjYmE4YWUyMTUwY2I4YTBhMjM1YWUgbGVnYWN5LXRydW5rCis4MDkyMSA5ZGFiZmMxOWQxYWM0ZmY4ZjRlYzljZTE0ZmE5ZDBlYWEyOGI2Mjg3IHB5M2sKKzgwOTIzIGY3MzdkNmNiYjA0NTYxZmEzOTI3ZGQ1MmU5NzE4OGNjMjI4MjNhNmIgcHkzaworODA5MjQgZjUwZDVjYTQ2OTBjYjY3OTkyNDJhY2Q0MjQyZGZlYmY3ZjM5NGZjOSByZWxlYXNlMzEtbWFpbnQKKzgwOTI1IDcxYWEwOThhMDgyZTI2MjM5ZTlmYzFkNzk1NmE4NTExNWRkZDM0MGYgcHkzaworODA5MjYgYjYwMjY3NmNhZGNkODViNWE5ODI3NDIzNmM0MGI2YzQ4M2E5MGYxMiBsZWdhY3ktdHJ1bmsKKzgwOTI3IGYxODk4MTkwNDUwNzlmOGFjMjBmMmU4NmQ5MjFlZjVlMzc4Y2NlMmYgcmVsZWFzZTI2LW1haW50Cis4MDkyOCBiY2IwY2Y5MjQ2OTNiZjA1YmVkMjQzYTZmNThlNjMyYzcwOWYyOGRlIHB5M2sKKzgwOTI5IDM2ODM3MWZhN2Y1YzM2N2Q0NDU4ZTJhMTRiNjdiZTJhZjIyYWQ4OTkgcmVsZWFzZTMxLW1haW50Cis4MDkzMCA4Mzk5NTM1ODBiNmRmY2M1ZTIyOWRkOTc1NWZmODZhNDE0MmE5YTBjIGFzeW5jb3JlLXRlc3RzLWlzc3VlODQ5MAorODA5MzEgNjU0NjFhNzA1NDk2N2Q4OTJhNTRlYmMyYTA4MDFjOTg4ZTBhZTdlZSByZWxlYXNlMzEtbWFpbnQKKzgwOTMyIDI2ZWRhYjk4OWQyZjg4NTU0ZmI4NjI0ZTZiOWY2YWE2ZDI1ODEzYmYgbGVnYWN5LXRydW5rCis4MDkzMyBmNThiOWRlY2UyNWViOGJkZTk5NDIxYjRmZTMxMThiNWJiMmYwOTg5IHB5M2sKKzgwOTM0IDlmZTU2MmEyZjBlMzE0NWQ4M2EyYjUwNDJmOGU5YjQ0YWYzYmJjOTUgbGVnYWN5LXRydW5rCis4MDkzNSBlOTJmYjk1ZjIzMTc4MmUwNzFiODQxY2Q1YzQ2ODRkZGJjZmI4ZGI4IHJlbGVhc2UyNi1tYWludAorODA5MzYgYjRmYWY5OWM2NDJmNzUxMDY0ZGYxNjA5YmJjYzRhNzk2ZDU3YmUwOCBweTNrCis4MDkzOCA4MjU4OTM3ZTEzOWMyMjYzZDc3YThhZTkxYmU5YTVjOThlOGM0OWQ3IHB5M2sKKzgwOTM5IDQ4ZDc5NTkxNjdkZWY3ZGJlOWE5ZjU2MTNlMzBmMGE1OTQ2MjRkMWMgbGVnYWN5LXRydW5rCis4MDk0MCAyM2JkNjFjN2RiYmNkNTU2OTg2YjMzYTQ0YjQwOTJkOTk1NzRhYjE3IHB5M2sKKzgwOTQxIGM3ZDA2Nzg5NTJkM2RiOGM3OTFmNjcyZmI2ODM1NTg3ZTI1MGVkMmEgc2lnaW50ZXJydXB0LXJlc2V0LWlzc3VlODM1NAorODA5NDIgMGUzOTgyYWUyODFkODIzNzVkNzJhYTIzOGRhOTdmYWYyMzM4MTVjNiBzaWdpbnRlcnJ1cHQtcmVzZXQtaXNzdWU4MzU0Cis4MDk0MyBjODY3ZDk5MWU5MWYwZDIyNDUxY2RkMzNhMjZjYzY1YmMzOTM1OWZhIHNpZ2ludGVycnVwdC1yZXNldC1pc3N1ZTgzNTQKKzgwOTQ0IGQ2ZGEzODE5NzdjZTUxNmU0YjQxNjdkNGM2YjJjMDcxZjhlZjE3NGEgc2lnaW50ZXJydXB0LXJlc2V0LWlzc3VlODM1NAorODA5NDUgYTkwMzcyMjQ5ZmQzNWRmNjY2NDM3MmFkMzBkMDA3Y2M1YWRiMzIxNiBzaWdpbnRlcnJ1cHQtcmVzZXQtaXNzdWU4MzU0Cis4MDk0NiBjYmRkMDEzZGFmNmQ2MTRkYzIyZjQ5YmM0Mzc3NWYzYzkyZjgwNDFlIGxlZ2FjeS10cnVuaworODA5NDcgZTJiY2NkMzcyY2Q2M2JiYzZlNGNkMzk0YzJiMjk5Mjk1OTM1NTkzYiBweTNrCis4MDk0OCA4NWFjMjdmYTkxM2ZiYWFlMmU3YTAwMDYxY2EwZmIyMDYzODE3MjQ0IHB5M2sKKzgwOTQ5IDA3YTQ3YTUxNDU0ODdhYjc3ODRiYTkxMzg3YmM5YmY5MmQ1MDQwNmIgcHkzaworODA5NTAgYTc3NDM3YmRlMzFhZjMxYzdlNGI5Yjc5MmM0ZmVhZWFkYjM4MGYxMyBweTNrCis4MDk1MSAxYWJiM2QzZTNlOGRmNTJmNmZkYWVlOGE0NWQxNzc3MmM1ODMwMmUxIGxlZ2FjeS10cnVuaworODA5NTIgY2JhMWQyMWVhYjNkMmNkZTgyZGI5MTY2NDkzNGYwNTQwOTlhNGQwYyBsZWdhY3ktdHJ1bmsKKzgwOTUzIDc0YWUwZWI5MzJkZWFkYWYzZTJlM2U1NTQyZDYwZWE3NGFiZmU1NWQgbGVnYWN5LXRydW5rCis4MDk1NCA1M2Q3NjIzMGZhMTg2ZjU2YmQ3YThmY2YxNWY4YWU3NTRhZmJiNTU0IHJlbGVhc2UyNi1tYWludAorODA5NTUgN2U2ZjFlODBiM2M2NTY3ZTcwYTBkNjdkOGVjZDJhYWU3ZDY5YjVjNSBweTNrCis4MDk1NiA0NjQ0Y2ZmMjUyNWJlMGRlN2UxM2IzOWI0MDI5ODc3NzUxZDI0NGFlIHJlbGVhc2UzMS1tYWludAorODA5NTcgZjg1MWU3YjZlMGQ1YzVkMGE5MTk2YzFmNTRiOWYzOTFmMjJkNzA3YSBsZWdhY3ktdHJ1bmsKKzgwOTU4IGJlZGU4NTA3ZjBhY2Q0YzhhY2ZmYWFkYzQyMGNmMGM1ZjNhNWE5NTggcmVsZWFzZTI2LW1haW50Cis4MDk1OSBkYjEzMzZjYzg1MWMyYTg1ZGIwY2YxYjYyNDNkYTk3MTcxZWU3Y2VlIHB5M2sKKzgwOTYwIDMyNGY4OTg4NmExY2I2ZGEzMmJlMjE5MWQxZDEyYmRjZGVkNWZlZDcgcmVsZWFzZTMxLW1haW50Cis4MDk2MSBkMDZlZjMwYTQ0MWVkYjViYWQ1N2QyYWNmOTBkNGViYWQyYmY0ZDQwIGxlZ2FjeS10cnVuaworODA5NjIgYjdhMGYwMjFmZjdkOTczNTg3ODhmZDQ2OTJhNzVkMzIwMjdjN2ZhYyBweTNrCis4MDk2MyBjMTQyM2IwYTkzMjkzNjc2NDUzNDhkZDliMzg1MzY5MWM4MTdjYmY4IGxlZ2FjeS10cnVuaworODA5NjQgNGY3ZTUwODlmYzk3YWU3YWY4M2ZlZTkyZWRmODAzYTVkZDk5YWMyMyBsZWdhY3ktdHJ1bmsKKzgwOTY1IGFmZTI1OTIzNTRkOTdiYzUxYWU0ZDk3MTcxNDNkYjE1MzRlODEyNGMgbGVnYWN5LXRydW5rCis4MDk2NiA0YTk0MGQ5OWVjODRiMWIyYWJiYWFhMGM5MjQ0MjdhMzJiMDNkZjVjIGxlZ2FjeS10cnVuaworODA5NjcgOTMwMzk1YjJkZTkwMzZiMGU3MjdkODI0MDEwZWY1ZjVhMmY3ZmU3MyBsZWdhY3ktdHJ1bmsKKzgwOTY4IDNmYWU3Y2I0OTIwOTViMTI5MWU2MTI5MDA1MTg0YmJmZmU1MWE1MzggcHkzaworODA5NjkgYzVmZGU0YTQyY2IwYTVlMTU3YTZjMWNmZmZiNzUwNDdmNWQ5Mjg2YSBsZWdhY3ktdHJ1bmsKKzgwOTcwIGY2MTRkYmVjMmY0Zjc5MmQ3ZDI3ZDc4Y2M1NzJmZGQ5MzFkMTBlMGMgbGVnYWN5LXRydW5rCis4MDk3MSAyMjdmYTdkYjUwZGVkMDNhODU0NjdiMDE1M2RiMTFlMjMyMzVmNjExIHB5M2sKKzgwOTcyIDBkOTczMmY2MDc3NjkyOTM0ZGNkNDg5MDgwNTVkMWM5OTM3MDMxNmQgcmVsZWFzZTMxLW1haW50Cis4MDk3MyBiMTBjM2EyNGQyZjlkYjhmZDQxZDhjY2Q1NDQzNGRjYTMzODU0NDU2IHB5M2sKKzgwOTc0IDYzZDZmNWZlZGJmMzE0NTY1YjI5Yzc4YjQwYzhhZDMyM2EwYjA5N2YgbGVnYWN5LXRydW5rCis4MDk3NSAxN2QyMWU5ZTYzMjAxMzNmYzJlOTIyNjA1ODMwYmE0OGU4OGJkMWNmIHB5M2sKKzgwOTc2IGI5NGMxMzNkYjQ1MTY2MmJhZDI5MzBlMTZlNTM0MzVlMTc0YjQyNzEgbGVnYWN5LXRydW5rCis4MDk3NyAwMjcwMTUxMWI3NTk2YzAwMThlZDQ1ZDcxNmUyNWIzMTAxZDlmNGU4IGxlZ2FjeS10cnVuaworODA5NzggMzNjYjViOTkyZDM5MmVhZjA0M2VlYmM4NmQ5NjA1NjVjZjZkOTQyNyBzaWdpbnRlcnJ1cHQtcmVzZXQtaXNzdWU4MzU0Cis4MDk3OSBiN2YwMmM2NzBiZDdjNGY4NmIyNzllMDUxM2EyMmNkN2E0ZjNmMjI5IHB5M2sKKzgwOTgwIDcwM2Y4YjExYjI1MGJkZjM3NDRjZjdmOTkyNjUwM2RkMjAyOTVhYWEgbGVnYWN5LXRydW5rCis4MDk4MSA5ZjQ2N2M2MmQ5NTQwOGU0MTJjOThjMmIwMjJlYzdjMmQyMzcyODIzIHB5M2sKKzgwOTgyIDI4NTIyMGYyNGNjOGYzYTNlZTUyNjFkNzMwZTQ0MGZiM2NiOTg0MjAgbGVnYWN5LXRydW5rCis4MDk4MyA0Nzg0NzFjY2Y3ZmQxOWVjNjNhOTAzMWYyNWU2YWNkZTU5ZTZmZjE0IHB5M2sKKzgwOTg0IGJlMWFkZjNjOGEzMzJjNWFmMmIzODRhNDc5YmZiMjNkNzRmM2ZhZWIgcmVsZWFzZTMxLW1haW50Cis4MDk4NSBlMjYzYWMyYmU0ZmQ0MjA2ODI4NGQwODg0ZmI2M2NkNDQ4ZDVjZThjIGxlZ2FjeS10cnVuaworODA5ODYgMmY3YWI5MjIxMjFhNDBiNzFjYWQ2ZGE4YzZiNTRlYTI2YWIzY2M0OCBsZWdhY3ktdHJ1bmsKKzgwOTg3IDMyOTNkYTgzZGYxZTMwODZiODJlMDdhZTM1MDVhNjI3ZWEzZTBiZjAgbGVnYWN5LXRydW5rCis4MDk4OCBlNDM1ODg4Yjg4MjVlNTdmMjY2NzFlNGY2NDdmYWM1NTQwZjc0NGE2IHJlbGVhc2UzMS1tYWludAorODA5ODkgY2FmYjYyMjVkZWQ4NmU2ZDIxZWUzOThiYTg5NmJjZjZmZjRlYjEzMCBweTNrCis4MDk5MCA3NDMzNTVlM2VmNGFiMTFiYzJkMzUxYzA2YzgxMDVlMTc5MDYwZjA3IGxlZ2FjeS10cnVuaworODA5OTEgOGZmOGYwYTUyNmRkMDdiNzQyOWNlZmE1NjIzNDY2ZjEwNThkMGIzNSBsZWdhY3ktdHJ1bmsKKzgwOTkyIGYyY2IzYWY1NTYyZmJkOTA0YmI2MTUyYjY5ZjE0MWMzNjgwMWExOTIgcHkzaworODA5OTMgZGNjZGZiZTU3N2JhNTcyZDY2NDYwNzlmYzY3NzQ1ZTRkNjMzMzk1NCBweTNrCis4MDk5NCAyNGVjNzI1OTQxOTY1YTkxZmUzMTIxZDQzNTc2ZWVlNTA0NTM2MjMxIHJlbGVhc2UyNi1tYWludAorODA5OTUgMzFiOTQxMmNhZDAxYmQwM2ZjNWYyNzc1ZjFhMTAyM2NlYTIxMzk2OCByZWxlYXNlMzEtbWFpbnQKKzgwOTk2IGYyMTk0ZTY4ODgxZWJmNDM3NjE5YWMwYmY5NTA5ZjQ3OGZhZDdhMGUgbGVnYWN5LXRydW5rCis4MDk5NyBkNmRmNzQ5NzgwYzU0NzkzYzc1ZjQ0MzcxNDkxYzZiMGJiNDVmZDAzIGxlZ2FjeS10cnVuaworODA5OTggNmJiOTg5MWQ0Mjc1YmQ0MmE2OWIzZDkwM2QxM2I2ODc1NDNjOTE1ZCBsZWdhY3ktdHJ1bmsKKzgwOTk5IDg4Y2Y1NzZmOWNlZWEyNWYxZjc5ZmJiMjlkODBiYmZhY2ZmZDJlNmUgcHkzaworODEwMDAgZjBmNDExOGM3NmU5OTBmNmZhYTNhM2E2YzNkZGUxNTE2NTdiZGI1NyBsZWdhY3ktdHJ1bmsKKzgxMDAxIGYxOTFkNWY4MGViMDQxYmFkZTU1NDI2MTdmZTU3NWJkOWRjZjU0M2IgcHkzaworODEwMDIgYmVkMDQ0OTIzOThkZWQ2MDYzNmY1YTIxYTg2ODk4NTlhY2ZmYmIyYyBsZWdhY3ktdHJ1bmsKKzgxMDAzIDY2M2IzOWQ0YTdlZjdkNjc4N2IyZWJiZWE4MDBiMTlkZjJhMTcxM2IgcHkzaworODEwMDQgNGRhN2ZiYTMzNzBmY2EwZTg5OTQxODlmMTI4YzVmYjRlZTY4Y2RlOSBsZWdhY3ktdHJ1bmsKKzgxMDA1IGZjYjIxZDJjZWI3M2IyOTMzOTE0NTA3NWZmNDhjY2M0MWExYjZmY2UgcHkzaworODEwMDYgYWI5YWU1Njc2YWRhZTcyNTFmNWRhMTJkYjk2ZTRkNzQ0ZTE5MDA2OSBweTNrCis4MTAwNyA0MzVhODM1NWRhYjZiZWZjNDcxNDFkYzIxNmMxMGRiMGYyYjFlY2E2IGxlZ2FjeS10cnVuaworODEwMDggNmZhOGUxMzgxYjQ5OTNiMTUzNjBmMWQ4ZThkMjVmOWU4NDk2MDRlOSBsZWdhY3ktdHJ1bmsKKzgxMDA5IDExN2I0YjgxYjg2NDAyZmYyOTlkNzg4ZjYzMmJlOWZjNGEwNjRiYjEgcHkzaworODEwMTAgMmU5YmM2MWMxYzFlYzcxODhjZmRlNmE4MTc5MjE2OGNlMWMwNGIyMSBweTNrCis4MTAxMSBmYjcxOTA0OTA0NGZjYzhhZDc5MTNkMmZmMzQ2NzBmNTgwNDNlZDhjIHJlbGVhc2UyNi1tYWludAorODEwMTIgMmM5ZTA5NWQ1MmYwMGRkNjNiM2E5ZDc3MTcyNDNlOWQ0OGVmNGQ4MSBsZWdhY3ktdHJ1bmsKKzgxMDEzIDUwZmEzZjRjODI5YjM0MWI2YWFiMDAyOTQ1ZmE5ZDRiMmM1OTk3MTMgbGVnYWN5LXRydW5rCis4MTAxNCBkZDFjOGZmMmU5OTAzMDgxNzQwMDljYzVlZGNjMGNlOTJjNzU5YjhiIHB5M2sKKzgxMDE1IDExMzliNWQ5OTZiMDA0MTQ5MmIwYzA0Zjc4ZmY2MGU4NDE5ZDZmODUgcmVsZWFzZTMxLW1haW50Cis4MTAxNiBiOTY2ZDU4MzVkM2IxMTBhZTM1MWVlYWE5ZDFiMzUyM2Y2MjNlZDU4IHB5M2sKKzgxMDE3IGQzMTVhNzlmMWVjY2VlNTQ1MmNiYjE1YTQ3OTJkMjY4NmIyNThmYmMgcHkzaworODEwMTggNjc3NTExZWRmMDVjNzgzYTllYzkzZTNjMWYwZmVkYjhhMDQxM2RhNSByZWxlYXNlMzEtbWFpbnQKKzgxMDE5IDAzNzUzMzE2ZjgxZjdiMTM3ZmQ1ODlmYjZjYTE1MDEyMzI2OWMyMTQgcHkzaworODEwMjAgNmEyZDBjYzdkNjA0OWNhNGUwMWZkNWZiZmVkMDEyYWRmZWQwM2M1ZiBsZWdhY3ktdHJ1bmsKKzgxMDIxIDMwM2RiMjI2MTE1ZGQ2Y2RmMDkxYjAyYmEyNzIyOWU3MjA2ODQ4M2YgcHkzaworODEwMjIgNzI0ZTg3NWIxOTQxYzU3ZjFiMjFkNzQ2OWMwZjlhNTY1OGFiZDUyYSBsZWdhY3ktdHJ1bmsKKzgxMDIzIDIyOTRiY2Y0MGU1MTk1N2QxODBkYTFmNTRkNjNjNmNlMmM5ZTllNjQgcHkzaworODEwMjQgM2RjMjVkMDI0YTUxYzM0YjVmZmM0NjQyMDk0YzBhNTljMWM4MjFlZiBweTNrCis4MTAyNSBmOGMxOWM1ZjVkZDI0ODNhMDE0NWQ2OTEyYjlhYzI4ZTMzZjNmNmJlIHJlbGVhc2UzMS1tYWludAorODEwMjYgZDY5OGZiMDU2YTQ1OWM5YTJlNDBjYzI2NDRhNDQxN2M5NjFhNGY3OCBsZWdhY3ktdHJ1bmsKKzgxMDI3IGI2ZTAzY2E4YTIwNmRlZjMzMTYyOTkwOGQ4NTE5OTkyNDA5YTk4ZGEgcmVsZWFzZTI2LW1haW50Cis4MTAyOCAxOWFhYzg0YWMxZGFkZWJhZjhiN2Q2YTExMGI4Yjg1ZGFlOGZhOWI3IHB5M2sKKzgxMDI5IGZkMjUwMzAyMjNiMDcwMjcwMDJlN2Q2NTk1NmU0ODAzY2M3MDZiN2EgbGVnYWN5LXRydW5rCis4MTAzMCA4NGJhZjYyNThjM2JmMzg1Mzk3NTJiYjNjOTBlMWUwZWQ3ZGJlMTUxIGxlZ2FjeS10cnVuaworODEwMzEgZTM4MzM1ZDRkZjkxZGU2NDI3YzlhMjFiNTQxZmNlNGY4MmQ5NTY1YyByZWxlYXNlMjYtbWFpbnQKKzgxMDMyIGNhYjE0YmUwYWRhMTU5ZGE5ZjdkOTRjNWVlN2M1NmU2MWUxNTdiYzYgcHkzaworODEwMzMgZjE5NzQwN2JkYmEyZjdkNjQ0OTIyZWY3OTM4OGQ1YzhiNGFjODU4YSByZWxlYXNlMzEtbWFpbnQKKzgxMDM1IDVlYTBmNTg1OGI3MjJhMTJhN2U5YTkxNTkyOGIxNTNmZjQ4MWFiNjcgbGVnYWN5LXRydW5rCis4MTAzNiBiYzBjZWE1ODQ0Nzg0N2YyM2QxYjQyNjA0ZmRiYzUwMzQyMDY3N2ZjIGxlZ2FjeS10cnVuaworODEwMzcgNWNhZDEwYjI3N2E0NzgzMTM3ZTgyODZiYjMxNDNiYTk5MGU1ZGQzNiBsZWdhY3ktdHJ1bmsKKzgxMDM4IDY5Y2U2YzkzN2Q2ZWM5ZWU0Zjg3YTg2OGQ2ODUwYWYxNWQ4NzY4NzkgbGVnYWN5LXRydW5rCis4MTAzOSA0M2QwMTY5ZGY5NDNmYTAzMzVlN2NmZmYxMjBmNzVlZmFkNTMwMGQ5IGxlZ2FjeS10cnVuaworODEwNDAgMzEzZjg1NTg2ZWY4ZWI4MzU0YTAxZDE1NDQ5OWUwNDM3MjcxMWZkMiBsZWdhY3ktdHJ1bmsKKzgxMDQxIDY3ZGMwYTk4YjhmNmZjOTI1ZGQ3M2U3N2MwMDE5ZDFkYTc1NzVjY2IgcHkzaworODEwNDIgZmM0NmU0MzcyMjdkNjI5MWQxMWY4OWZkNTAxMjk0MWQzOGE1MzE1MCBsZWdhY3ktdHJ1bmsKKzgxMDQzIDVlYjBlNTQ1MTYxMjQ3Y2ZlNmZlZDIwN2JjY2UxZTNkN2U0M2YyODIgbGVnYWN5LXRydW5rCis4MTA0NCBmYjE5ZWM1Nzg4NTMzMzljNjAwMGE0ZWY4YTYyZWY4Y2FjY2RjYWMyIHB5M2sKKzgxMDQ1IDQ4OGRiZTI2MmY2ODFkNGExOGU5MTgyMTZiZWQzNzY1MTE1ZjI4ODMgbGVnYWN5LXRydW5rCis4MTA0NiA3ZjVhNTcxYjFlY2I4YTI4ODA3MmQ4ZWRlN2I5MGFlNDFhNTQwNmJlIHJlbGVhc2UyNi1tYWludAorODEwNDcgMjBhZTgzODIxZWYwNTM3MjkyZGYxZjBhYjlkY2EwMTQ0ZjkwZGE1ZiBweTNrCis4MTA0OCA4YzQ5OWNiMzcyM2E0YjA5ZTUzYzJmM2JkYTIzOGFkNWZkN2U2NmRlIHJlbGVhc2UzMS1tYWludAorODEwNDkgNzM2ZDZjZTliNjBiYWE5MzRkZDRiYWQ4Y2Q0ZjRkNTM3ZWUyMDU0YSBsZWdhY3ktdHJ1bmsKKzgxMDUzIDk0NTczOGUxODcyNjM5MTRmZWI0MzlmMjJhZDAwNWJiNGZmOTdmNWEgbGVnYWN5LXRydW5rCis4MTA1NSA2YThkZmZmNmQyNDFiNTAwMTJiOTA3NTM4MDY1OWRiNTMzYWZkOTRmIGxlZ2FjeS10cnVuaworODEwNTYgZTY0Nzk4YjM2ZWE0ZGVmMDZhNjcyYWY3NzE0YWI5NDVhOGEyZDRhMSBweTNrCis4MTA1NyBkYTZjZjhmM2Q4YzJlYzg2ZDI1OTgyOGYzYjI3NjY5NTJjYTg3YWJlIHB5M2sKKzgxMDU4IGYwMjViNmIwZmUwZjZmOWJkYWRiM2ZmZGJhZTRhNzVmMDcxY2E3MGQgcmVsZWFzZTMxLW1haW50Cis4MTA1OSAzMTQ4ZDcwNTI4YjYwNjcxNjVjNzA2NzRlYWU5NzNjMzdjOWFmMzg1IGxlZ2FjeS10cnVuaworODEwNjAgZTc2MjllZmM1NWQwMDdlNTI0N2Y2OWQwNDczYThlYWU5YTQyNjQ2NSByZWxlYXNlMjYtbWFpbnQKKzgxMDYxIDBmODUwN2Y1NDk0MjllMGMyYTQ3MmM5NzdlMjU3OTM2NDMyMDI5MDQgcHkzaworODEwNjIgYmJlOWY5OGEwYzAyMGNlZGU2NjdmZWEzZDkxODZmZThmN2NlZDg3ZSBweTNrLWppdAorODEwNjMgODI5YTg2ZTExYmQ3ZTE0ZTkwZGJkNjRiNGI3YzMxODQ4MzNmZmUzYSBweTNrCis4MTA2NCBmMTM1OGFhMzNhNmUyMzRmZDE3NWQ0YzY3NzkwYTdlOWYwNmFkODdkIHB5M2sKKzgxMDY1IGNiZmQyN2RiOGRjMjc4MDdmNjk5N2JjY2Q4NWJhMjg3ZjM0NWFiZWYgbGVnYWN5LXRydW5rCis4MTA2NiBmYzllMjE1OTY5ZDgzNmEyYWYzMGUxOTYxZThhNjM3MDBiOGFjY2UyIGxlZ2FjeS10cnVuaworODEwNjcgNWFiMDQ0Mzg1NmNhYjhhMmU1MzQ0NzA0NjY1ZGJmZjgxZGI0Njc3YiBsZWdhY3ktdHJ1bmsKKzgxMDY4IGQ2MDRmYWI3NDlkZDc0MDNiZDhkNDIzYWYzMjNjZTYzODBlNzRiMmIgcHkzay1qaXQKKzgxMDY5IGM3NTUxMmE4NWZkMWFlYzNiYTMzZWU3ZTYxNjNjYWI0N2EyMjZhZjMgcHkzay1qaXQKKzgxMDcwIGI2NmViYjc3NzU2OGIwZTllMjBhYTU3OWJjMWQ3MmVmNmYwYTM0MjUgbGVnYWN5LXRydW5rCis4MTA3MSBiYTBmZTAyNGU4OWZkNGNhNTU1NmUzMTVkOWQ5NTVkZTQ4NGFhNjc4IHB5M2sKKzgxMDcyIDQ1NDA4Y2I0YjcyMzJiOWYyNGQ5Y2NjYjIzNDEwNDFkNDM5YjEzNTggbGVnYWN5LXRydW5rCis4MTA3MyA2NDlkNjcxMGE4MWZmNzU2ODUzMDY0ZGMzOWFjZmFkOGFiMzM3MzliIGxlZ2FjeS10cnVuaworODEwNzQgZjgwZTkzNTgyYjdmZTZkZTgzM2VlM2M0ZmJjZDRkZWYxODc1NmE2ZSBweTNrCis4MTA3NSAwMDIyMGViZWVkMGE4ZjI0YjRjZDdkMDM1NjM1YWJhZDRmMGFiZjY2IHB5M2sKKzgxMDc2IDhhYzBmMGRiNWY1OTc1ZmVjYTdlZTQ3YmNlMTE4YWE4ZDMzMTllOWYgcHkzaworODEwNzcgZjE1ZDZmMWEyZmEzMGVkODNkN2MyMzVlNmQ3NjNjMzc0YWY0NGNmYyBsZWdhY3ktdHJ1bmsKKzgxMDc4IDFmNjlmMjgxOWQzMTM1N2Q0ZWRlYmIyNjdlZTNlZmI0NDllZjM5NDIgcHkzaworODEwNzkgYzBkZDMzYTVhZGJlNmM1YTJhMDgyNjQzMjFkMzliODA4MmNiZjBhOSBsZWdhY3ktdHJ1bmsKKzgxMDgwIDBhYzExZGI1ZmM5NmU0NzA1MzlkMmVjYzVlMmNmZWQ1OWNlYzI4NDggcmVsZWFzZTI2LW1haW50Cis4MTA4MSAwMTE5NDBiYWVmYjBiZTkxMzU4MjAxMjA2Y2Y0NjI2NDgyZjkyMTE1IHB5M2sKKzgxMDgyIGZiNjJlM2E5ZDg4NmZmYmFhMWM0NzNmYjg4MTUwMjlhMDg4NTMzNzAgcmVsZWFzZTMxLW1haW50Cis4MTA4MyA5YzMyMWFhZWVmMTI2MDg2YTM4MjdjMjNlMzQ2ZjVlYzMwZmYyNjU2IHB5M2sKKzgxMDg0IDgxYTNhMzIyNmNmNWRkNDViNGQ3MmIxOWE4ZGYzMWFlYTI2M2QxNDMgcHkzaworODEwODUgOWRmZWQ4ZGQxYzZkOTg5NTQzYTQyNGM0MDhiYjk5NmJhN2VjOGM4MSBweTNrCis4MTA4NiAzNTNmNDBlZWQxYmM2ZDRlY2Q3ZmYwZTI1Nzg1YWU2ZmRmMTQ5YmUwIHB5M2staml0Cis4MTA4NyA0ZmQ3ZmVhNTllNWIyYmNmMzcwYTY1Mjk5YzE0YjZiYjQyY2Q5N2Q2IGxlZ2FjeS10cnVuaworODEwODggM2U2Y2E0YjAzYzc5YTRkNGY1NmVhZjY5MGFkYmZhMjhhMTk0OTMyMCBsZWdhY3ktdHJ1bmsKKzgxMDg5IDgxMWZjNjMxOTBhN2NkMWE3MmQ3ZmY1ZTdiODE2YWRiZDRkZjgyMGYgcmVsZWFzZTI2LW1haW50Cis4MTA5MCBkZmY2ZmMzODg4YzYyZTk4ZTljNGNlMDFlNTc1OTkwN2UwNDdlNmZiIHB5M2sKKzgxMDkxIDg2ODAxZDFkOTAzODZiYWIwNmFlZWE5NzJiZGZjOGEyZDEzN2Y1YTcgcmVsZWFzZTMxLW1haW50Cis4MTA5MiAzMGY0YmJiYWRlMGI3MTE3YjUzNzkxYzg1MDVjYmIxZGQ1ZjIzMGUyIHB5M2staml0Cis4MTA5MyA0OTU5YjZmNWJjODZjZGM1MDdkOGRhNjQxMDk4NjNhZjliZWMyYzg2IHB5M2staml0Cis4MTA5NCA1ZTM5MzRhMzFjOGRjMDI4ODViYmQ4YTI5OGY0YjFiZGMxOGY0Y2Q4IGxlZ2FjeS10cnVuaworODEwOTUgYWYyZjg0ZTY2MjUzN2MzOWY1MGI4YmFiODRjZmQwN2JkNzhhOWY1ZiByZWxlYXNlMjYtbWFpbnQKKzgxMDk2IDU0ZGMxMDk4OGYxNTRjMGRlZmU2YWFmNjYzMzFlNjliNzhjYTc4ZTEgcHkzaworODEwOTcgZWY0ZGUwNTNkNTc3Zjg1ZmU4YWZmOThjNzNmOGM0NjZlMzhlZDAwYSByZWxlYXNlMzEtbWFpbnQKKzgxMDk4IDNhOGNhNjdhZTQzMTFiMDQ5ZDFmOTk4YzU2OTAwODE0MWJlZThjZTUgbGVnYWN5LXRydW5rCis4MTA5OSAyYTcwYzgwMzQ5YjBlZDBhMDJlYjAwYjc3NTYxMjliMTAxYzJiZjQzIHJlbGVhc2UyNi1tYWludAorODExMDAgNDhkOTY2NGM0N2EzZjU4NzMxMzE2OGYxNTc4YjRmMjliOTkxOWY5MiBweTNrCis4MTEwMSA0YjEwZWY4YTAyNGNlZmEzMzA3N2UxYzM0ODRjMmU1OWEzZjA1Y2QyIHJlbGVhc2UzMS1tYWludAorODExMDIgMjFhODFjN2FhNGJjNTBmNzhhMzAwNzgxMzFlYmE4YThlZWUxMzgyMCBsZWdhY3ktdHJ1bmsKKzgxMTAzIGI5ZDRhZGY4YjE3ZTlmZjBhYmJkNTcxZDc5MzI1MjVmZmQxNWI4ZTQgcHkzaworODExMDQgNGI4OTYzY2Y4MGIyODZkNjhlNTE4ZWE2NDYwYjdmYzQyZWIzNjU1NSBsZWdhY3ktdHJ1bmsKKzgxMTA1IGI3NjA0ZWEyZjQ3ZTdmNWUwN2FlOWYxNzA2MGFhMTBmN2NiZjQ3YTQgbGVnYWN5LXRydW5rCis4MTEwNiA3M2YzYjg4NTE3NWRiMzdlMDFhMDk2MTU3NDcyZGFhMmRkNjA2ZmY2IGxlZ2FjeS10cnVuaworODExMDcgNzczNzE0ZTVlYWFlYzk2MzAxZDFjZDliZWIyNmExZjM5ZDBjYTIwYiBweTNrCis4MTEwOCAyZGRjZDMwNTMzZjcyZmQ2MDc2Nzg0ZjY5YWEwOGExODg1OWZkZWEwIGxlZ2FjeS10cnVuaworODExMDkgNmY0Nzk2MGI1NjQ3ODlkY2Y4ZTgxODNhNTI1NjI2ZTg2NWFiYThjYyBweTNrCis4MTExMCBlZmFmNjJjMmNmNzU5OWI0OGNmM2RhZWYyODc3NGIzNjQyMzZjODdkIHB5M2staml0Cis4MTExMiA1ZGViZWNiNDgyODJkYWEwNDg4Y2I3MTAwZWFiMjU3ODNmZGFjODNjIHB5M2stY2RlY2ltYWwKKzgxMTE0IGI2NDY0MDE0Y2FhMDc2NzZiY2Y5Y2MzYmMwODNlMTJkODViYjc3YjcgbGVnYWN5LXRydW5rCis4MTExNSBlMTgzNmE3YjZiNmU3NjljOTY4MzIxMTM1NmI5YWY1NzRjZjIzNmY4IGxlZ2FjeS10cnVuaworODExMTYgMWIzZWJlZDhiNmM2NTJhNWU2YmFkODRlY2Q4ODllM2MyNWFkMjM5MiBweTNrCis4MTExNyAwMTNkNzZhYTg5NTFjMmM0ODYyZTdkMWE0YzRlMmYxOWY1Mjc3MTgyIHJlbGVhc2UyNi1tYWludAorODExMTggMzMwMjczZWM2MDI4MzlhYmViNzgyNDMxMGY0YjI1ZDA2NDFhNjQzNiByZWxlYXNlMzEtbWFpbnQKKzgxMTIyIGMxYmE4ODE2YjE4N2U5MzU2NWY3MjhjYzQ1ODZiMzljYTgyZjljYWIgcHkzay1qaXQKKzgxMTI1IDllYzdhY2YwYTAwNTg3MGZlODg5NmUwM2Q5MmI4ODk1ZDc2YzBjOGUgbGVnYWN5LXRydW5rCis4MTEyNiBiNTU0ZWVhMjYxMGNjOGQ3MDJlNjMzMjM3NDQxMDZmNGQ1MzMxNzdhIGxlZ2FjeS10cnVuaworODExMjcgOTFmNDYyYjkwNGIxZmQyODY4ZGUxMjZkMzc4OGVhNjViOTM0NTU4YSBweTNrCis4MTEyOCAzNGE2ODZmYmZmZWI5ZTVhNjViMzNhOTEwMmU1Mzg0Zjc5MWNiMjFiIHJlbGVhc2UyNi1tYWludAorODExMjkgMTAzNWE4ZmQ3ZGZiOTU3MTFjNzU0NThmMzAwZDAyMDYzZmQ0M2RjMyByZWxlYXNlMzEtbWFpbnQKKzgxMTMwIDA2YzZkM2E2N2MxN2IxZjg3OWJmYzE2YTRlOGZhZGU1ODQ0ZTY2NDAgbGVnYWN5LXRydW5rCis4MTEzMSAyYzI5Y2Q1NjY4Yzc3Mjg1MmU2M2ZiYWQxNmQyNTFhZjdiYjQ3Y2RlIHJlbGVhc2UyNi1tYWludAorODExMzIgZTU1NjMyYWE2OGU5NzQyZWQ0ZWVkOWZkZGQyNWQ5MWYwODVlZjNiNiBweTNrCis4MTEzMyA5MGE5YTM0ZTVlYjUyM2MzZWFlMmZjNjBlMTRkNjA3ODNmMzlmZjMyIHJlbGVhc2UzMS1tYWludAorODExMzQgODQxMGY4M2ZkMTU5ZjZlZTUwODcwYmU5ZjI0MjQxZDg3ZDkyOTVjMyBweTNrCis4MTEzNSA2OGJjMzU3NzVkMzEzNDAxNzU4MTIzMTE2MGVjMGQxYmJlMzhmYzA2IGxlZ2FjeS10cnVuaworODExMzYgYzgwNmVkZjhkNzM0MGVmZjFiMmZiNjc1NDM4ZmRiZDFmMWJhZjM0NCBweTNrCis4MTEzNyBlYmE0OTQ3OGFhZDk2NTE3NmFhMGZhMzE1NDY2MzgxZThiNTFlNTkwIGxlZ2FjeS10cnVuaworODExMzggNDMxYTE1MWUxMDJkNTI2Y2U4MmNlZDUzNGZiY2IyZTg1NTBhODFmOSBweTNrCis4MTEzOSA1MzYxZjZkZDEzOTk2MzljN2ZmYTEwYjM4YjU2MzViZmRkYjZmYmZmIHJlbGVhc2UyNi1tYWludAorODExNDAgZWU1OTZkYTg2MmY4MjdlNmU5OWM4NWYzYjlhYzRkZjQyMjJjMGFiOCBsZWdhY3ktdHJ1bmsKKzgxMTQxIDZjYmQ0YmNhMDk3YTBhZmQzOWM4YjVkMGY3ODRkZjVkNDY5NDNjODggbGVnYWN5LXRydW5rCis4MTE0MiAxNjk4YzU1YjJhZjk0YmNlNTQwODU0YjA4NzUzZTVjYjNjMzFkNWNkIHB5M2sKKzgxMTQ0IDkzNzkwODQ3MTc0YTc0N2FkNGMzZmUzZTdmZWQzNTdmODYwMWUyMTkgcHkzay1qaXQKKzgxMTQ1IDA2MzY0ZGFkOGRkZDE1YTRmMDQxZTdhNmU3ZWNlMWQwZDJmNTA1ZGIgbGVnYWN5LXRydW5rCis4MTE0NiBlNGYyNjk2MTVhMjVjY2UzMTIwMjYzMDUzZjEwNjZhODFlMjBmMTZmIHB5M2sKKzgxMTQ3IGIzODZlYjgzNDc1ZjQ5ZjY3YWYzZGM3Y2VjZDhkZjQyZjg5MTMzYjYgcmVsZWFzZTI2LW1haW50Cis4MTE0OCBkYTNmYTg4MWE4MDAzOTA1MjBiZmZlNjk5ZGIxNDRhM2Q2YWM4ZTYxIHB5M2staml0Cis4MTE0OSBlMDk2YWFlNTM1YjliNWJhOTNhN2NiNzMxYzI4M2NiZjFiZmI0YjVmIGxlZ2FjeS10cnVuaworODExNTAgMmZhNzNiMjliMzA1OTc1MDdiNmZkMDY4ZGYzMmZhYzI4YTMzOGI1NCBsZWdhY3ktdHJ1bmsKKzgxMTUxIGNiOWUwOWYzZmE4ZWVjM2M5YTQ1YmE0NmVmYmQzZDhkNzIwNDJkZDAgbGVnYWN5LXRydW5rCis4MTE1MiAzMWNmMWIxMjUzMGE5ZDBhZWUzYzI1ZGM4MzI5OWRjOTgwZjc0MmViIGxlZ2FjeS10cnVuaworODExNTMgYWU0YmI2NzAxMDc4ZTBlM2JjNDU3ODRiOTA0YTRlMDZlNTY0NGI2MyBweTNrCis4MTE1NCBjYTQ5NmJmYWNkMWJlNWI3ZTA1NDNhMGFmOGE0ZWYxOWYwNzZlNzFkIGxlZ2FjeS10cnVuaworODExNTUgY2NmMWNhNzNjMGU5Nzg5ZTVlNjg0ODM5YzY0ZjRkMTU4YjNkMGE1MyBweTNrCis4MTE1NiA5ZTViNzNlYTZhN2NlMWZhMWM3NjQ1NzRiZDg0MjFlZjNlMWZiMTViIHB5M2sKKzgxMTU3IDlmNjJmNTg2NWI0NDFlYjgwOTkwYTcyMTI5ODNhOTMyYTQzYzFmOTEgcmVsZWFzZTMxLW1haW50Cis4MTE1OCAyNjIyNzk2YWVjYTk0ZWEyZmI2NGVmM2UxMTg0NTVlMDU3N2M4OGYxIHJlbGVhc2UyNi1tYWludAorODExNTkgNThhNTZhYmEwZWIyYzJlMjRiNTNlYTlhNTFkNmZmNWU0YTM4MzJhZiByZWxlYXNlMzEtbWFpbnQKKzgxMTYwIGE2YTY3YjczNGQ4YjM2MDNiYzYyNTU5MzcxZThjNGUxN2ZmNWUyY2EgcmVsZWFzZTMxLW1haW50Cis4MTE2MyA3NDJmMTliNDcwMjA0Yjg1YmZkYjM0ZjhmOGMwMWJlMDNlNzk2NDEyIGxlZ2FjeS10cnVuaworODExNjQgMGNiMGZhZDUxNGYzNzUyMWM2NmEzYTc5YTVjN2YwMDg1NzhmYjU3ZCByZWxlYXNlMjYtbWFpbnQKKzgxMTY1IDNiMjQ3YWY2Y2VlNzkyZGNjYzQ0NmVjNmM1NGI1YjIwZTEwZDk5ZDIgcHkzaworODExNjYgMjUyZmU1YzRjZDUzZjg2ZGQ2OWFiNGIyMTE5YTUxN2RmZWI5OWE5YyBsZWdhY3ktdHJ1bmsKKzgxMTY3IGVhZjgxYTEzMGFkNmM0NDk5Y2UyZDA4Y2Q0MWYzMWVlYTBkZTU2NTYgcmVsZWFzZTI2LW1haW50Cis4MTE2OCA5ZWUyMjhkMDg5ZWRkMjhmODZhY2VmYzhjMDljNTUwZmVmMTFjYzMwIHB5M2sKKzgxMTY5IDJiMGFmNjlhZWY5N2QyMjhlY2Y3MmMyYThkMzE3N2IxNGYwYTU4ZDggcmVsZWFzZTMxLW1haW50Cis4MTE3MCBhYjMxYjAwOWExZWUyOTM0YjBiNmU4ZjE1Y2I3YjZkODgxNGE1NzU3IHB5M2sKKzgxMTcxIDljMWEyYmQ1MTUyOGMzYTdkNTUyYzAwNTIzZTM1ZGIyYzg4MGI4MDMgcmVsZWFzZTMxLW1haW50Cis4MTE3MyAzMDlkOWNmODQ4MDg1MGU0ZjhlYWIzOWVmOTlhMjkzODdmY2Y1OGJjIHJlbGVhc2UzMS1tYWludAorODExNzQgNTlmZjdkODEyYWUzNDJmNjUxNGUwM2QxN2Q0NTFhY2FjNDgzOWQzMCBweTNrLWppdAorODExNzUgMjM2OWQ0ZjE4OWU0MmM2Nzc0NDE1NTAzOWJmMDk3NDM5MDViMzRmMiByZWxlYXNlMzEtbWFpbnQKKzgxMTc2IDExNGM0YTQyZmMxZDAzMDczYTNkZmVhMWUzMzQ5YWE5YzgyMDkyN2MgcHkzay1qaXQKKzgxMTc3IGE4MTRlN2U3MjkwMGZhZjQ4ZmQ4OGYxMDcxYTJkYTU1YjRiNmVkZTUgcHkzay1qaXQKKzgxMTc4IGZkZTliNDM1NDVmYmFmODNjMTE2YTk2MWU1NDI5YTZhNjAwMDk3MmQgcHkzay1qaXQKKzgxMTc5IGU2YmZlOTNiNjViYmRhMjQzZjUzMzJkMGZkOWMyY2JmNzQzNDQ2NTggbGVnYWN5LXRydW5rCis4MTE4MCAwZDAyOGQzNTkwZGEwM2Q4OTU3ZjhhNTNjYmJlYjg4M2VlZThmYmU5IHJlbGVhc2UyNi1tYWludAorODExODEgZmE5MDJmOGUwZGIwZWRmODBhNjZiZjM3YWY0NmExYjc4YjUzODM0YiBweTNrCis4MTE4MiAwZTM3YTk1Y2RjZmI1YzczZjc3NmRmMDhkNzVmZTUyM2IzYjkxZmZjIHJlbGVhc2UzMS1tYWludAorODExODMgNzcyMDM2YTZmN2VmMDI4NzljM2M1ZWYyN2ZjZTZkNDcwZGM1YjQxNSBweTNrCis4MTE4NCAzNjNlZmZiNWY3MjdmODg2NGQ0MGQxN2U5NDQ0MTIxYzBhYWZhMzRjIHJlbGVhc2UzMS1tYWludAorODExODUgZWRlZjg4ZjZmMWFiNjExMjc1NzE2ODZlY2ZkMzkwYzAwNzM0NzM1NSBsZWdhY3ktdHJ1bmsKKzgxMTg2IDA1YTJhYjI3MWI2NWY0ODM2ZDk2MzI0YzIyYWRmMDY3M2QzZGM4N2UgcmVsZWFzZTI2LW1haW50Cis4MTE4NyA5OGMxNjEwNDAwMDJjNTI5MzhiYWFhOGFmNjBmNzhhYmU4MmU4ZDk5IHJlbGVhc2UyNi1tYWludAorODExODggZDk3MmQwNTJlZTIyMTdhYjM4ZGYwODUxNTUyZTBlYTM2YjI1M2RiOCBweTNrCis4MTE4OSBjNGUxMWIwYzdlZTUxODNiZGRjMjJjMmFjYTRmYTdmNzc2Y2NjMzIyIHJlbGVhc2UzMS1tYWludAorODExOTAgNDdiNGRhODZiOWI5ZjVkMGYyODhkMGM0MjgzMDJlMGFjZjUxNDE5MCBweTNrCis4MTE5MSBlYTU2ODVkOTk0MGEzYjk5NThiM2UwNDc1MmEwODE1NTgxNGZhMzIzIHJlbGVhc2UzMS1tYWludAorODExOTIgYmI5YWUxMjYzM2E5OWE4NGFiMGRjY2ViMTVlNjVhNTk3MDExMzYzOCBweTNrCis4MTE5MyBmM2VhN2NkNzM1ZWNlNzQxNjIyYTg5MTI3M2EzYzBhOTg4MmJlODNlIHJlbGVhc2UzMS1tYWludAorODExOTQgYjViYTdlYTQyNDZiMmNlNmYxMmY4MzdiOWQxNTkxNzE5NTk1M2UyNyBweTNrCis4MTE5NSBlOTA5NjAxZTAyMTk5ZDI0MDU4NzZiOWUxNWZjNWY4MGU3YTI3Mjk3IHJlbGVhc2UzMS1tYWludAorODExOTYgMWUxNDliNTBhY2E2MThiMzdjYzk5Yjc4N2RkZTMzYTQwNTU2NDI0YSBweTNrCis4MTE5NyA5MzExOTE4YzA2NDlkYzk4NjkzMDMzMzg1MTdmYjM3YmM5ZTY3MjVmIHB5M2sKKzgxMTk4IDA0MmU2YTM5NmE4NjQ0NzJlMmVjMDJhYTVhOThhNGM5NGRjNzA4ODYgcHkzaworODExOTkgZGNmNDcxMTcxNThmMDEyODE5OTg4MmY1MzRmNTljMTg2ZDViN2Q3OCBweTNrCis4MTIwMCBkMmU2NzU0Y2JiZDVlNzQ0NzY3N2RiYWVkYTQ4MGZmNTUwNmUzZmU5IGxlZ2FjeS10cnVuaworODEyMDEgZTRkZWRmNTRjNDFlMjQxMjg5OWJhN2IwMTcwY2RmYmYzYzM5NWQ5NSBweTNrCis4MTIwMiA5YWRlM2U2MjM3MTBmMDQ4ZGU5ZWJjZWZkNzVkMDY5ZmU1OGQ5YTZjIHJlbGVhc2UzMS1tYWludAorODEyMDMgZWYwZjYzNGFkNWZhZmQ3YjU2ODlmOWZkYTNkMzcwNDk0YmY5MDgzMyByZWxlYXNlMjYtbWFpbnQKKzgxMjA0IDk5MzgzZjFiYzE3YzhmNTE1NWE2MDhhZjE0ODcxZWZhNzcwZjYxMGYgcHkzaworODEyMDUgYTBhNTM1OWY4ZDEzNjlmMmY1YWQzZDNhM2U2ODg1OGI4ZDdmMDBlMCBsZWdhY3ktdHJ1bmsKKzgxMjA2IDE4Njg5MGQ3ZmU3MjQzNjFhYThhMzViODAyY2FiMDFlZTk3YWNmZTkgcmVsZWFzZTI2LW1haW50Cis4MTIwNyBjYzliODI4MGUzZjVmZDBhZmQ4YjM4OWY3OTE5MmE3NTIzODIxMGMzIHB5M2sKKzgxMjA4IDc5NzBjNDk5MDE0NDI3YzQ2MmNkNTQyZDQzODQ4YTg2ZjNmMDA0N2MgcmVsZWFzZTMxLW1haW50Cis4MTIwOSA1NDY4ZjNhZWU0YWUxYjExMjBjMWNkZjRhMzIwOTliYjE5OGI1Y2Q2IHB5M2sKKzgxMjEwIGY1OWYzYzczNzM0ZGIzNjU2MDAyY2Q3OGVlOTc0MDcyZjdjMmU1NWQgbGVnYWN5LXRydW5rCis4MTIxMSA3NzlkYmM1MGYxZjg4ZGVmNzI5MzNlM2JjMDk1MWVmYjIyNjc2NjRmIHB5M2sKKzgxMjEyIDkyZDFjODgxOTA3MWZjMmIxYTgyOTAwZTQ4Njk2OGIyYmNiMTc3N2YgcHkzay1jZGVjaW1hbAorODEyMTMgNDY1MmZlMGMzYjg5NzRhZmQwODY5MDE1ZTljZGEzMjAwYWNiZjJjNSBsZWdhY3ktdHJ1bmsKKzgxMjE0IGVjMTk5MTllMjdjZmU2OTA0ZDdjNjk0ODBjYmVkYTNhZDcyMjE5ZjEgcHkzaworODEyMTUgN2YwNTNlMjViMzM1MmQ0YTZjOGQ1ZjNlZTMzOWZjYzVkYjRjYTNlMSBweTNrCis4MTIxNiAzNzhiMWNkODQ3MmVlZmIxZGQwYTA2NjhhMWFlOTI5NzYzMWRkMTQxIHJlbGVhc2UyNi1tYWludAorODEyMTcgOWU0Mzg1ZGIzNzBlZDg3YmJhYjI4MGRiNmQ3ODQxODkzODZiZmYyMiByZWxlYXNlMzEtbWFpbnQKKzgxMjE4IDY5OTBjNmRiN2MzOTk0Yzg4NDRkNDZlNjYyNDA0MGY4MDc4ZWVjNjggcHkzaworODEyMTkgNGM5NThlNDg5M2JhNjlmODE5YTZiZWU3MmYxMzE2YzAwYWE3ZmU0MSBweTNrCis4MTIyMCAxZDRkYmZhOGVkNGYyYWY1YmRkZTBlNGE2NDQyNDdjMmE1MzdkYzZhIGxlZ2FjeS10cnVuaworODEyMjEgY2YyNmYwMTE0OTZlZDJiZTNkOGJmMmIzMDQ3MmE0NGIwZmViMTQ0ZiByZWxlYXNlMjYtbWFpbnQKKzgxMjIyIDgwMDIxNDhjMWExYjdkYTBmOTBjOWM3YjU3ZWE0YTEzMjhmZjA1M2QgcHkzaworODEyMjMgY2E5ZDJmMGE4YjhhY2FhMTFiNWM5ZDQ2OTcyMDY2YzJiNGZjMjI0NiByZWxlYXNlMzEtbWFpbnQKKzgxMjI0IGYzNmUwZTJkYWY0MzJlNmZjMzk0YTIyZWFiM2Q4MGQ4ZTM5YmI0MjAgbGVnYWN5LXRydW5rCis4MTIyNSBmMzUwYWNiY2U3OTBmMWU0YzJjN2JhZDFiYmYxYWZlNDU4YWFlZTc4IHJlbGVhc2UyNi1tYWludAorODEyMjYgZjVjNjQ1NWMxNDNjNjc1NDczYTlhN2U3NTcwMmI0ODQyYzE1ZmZjNCBweTNrCis4MTIyNyA2ODg2ZWU5Y2I3MmM5MDhkYWQ5YmM3YjM2MmMwZDZkMTI0NWIyM2I2IHJlbGVhc2UzMS1tYWludAorODEyMjggZDA4ZGE0NTQ0ZTMxMjE0OGRjMWMzMWJhODNiMDY1Yjc4NDA4NDM1NSByZWxlYXNlMzEtbWFpbnQKKzgxMjI5IGVmMjJkYzA2NWUwZTExYjQzYjlhZmVmMTk5OGI0YzMzM2IxMzBkMTUgbGVnYWN5LXRydW5rCis4MTIzMCBlNTc2NTBhNGNhODFhNjQ3MGUzZGZhZTA0MWZkY2MzZDI3YmM2ODkyIHJlbGVhc2UyNi1tYWludAorODEyMzEgOTY3ODI2ZGQ1ZmM2YzEzMTg0YTg2YmMyMmJjYTM4YThkY2Q2MmVmMSBweTNrCis4MTIzMiA4NDRiZDdiODQyMWI3M2MzYWJjMWI5ZDYxMDI0ODMyNWZhYWI0YmExIHJlbGVhc2UzMS1tYWludAorODEyMzMgNGJiMDNjYzFkNDIxZjZjZTU4ODM2NWFmOTc5OTg1NDIxZWYyZmRiOCBweTNrCis4MTIzNCBiMjlhYjRlNzY3MzYyZWI0ZGNhNzYxNzJkMGE3MmJhMDJmODgzYmFiIHB5M2sKKzgxMjM1IDJjYTQ2MjZkOWM5MzAzNDhlNjUyMmU3MjM1NDYyYmJiY2RhMTMxOGMgcHkzaworODEyMzYgZTIwYTY3N2FmMDAwNDgxOWNmMDg0YzI0M2ExNzk5MDIwNmEyMGFiOSBweTNrCis4MTIzNyAwOGFiYmRjOTliZTY4ZGU3NDJjOWRkNjUwMmQxMjVjYjNhN2Y0ZjkzIHB5M2sKKzgxMjM4IGI0Y2ZjYTVjNDI4ZTUyMTQ3YWViMDA2NDVjMDRjMjg0MThiZGI1ZWUgcmVsZWFzZTMxLW1haW50Cis4MTIzOSBhMDllYjNkNTlmZjdmNjFlZjBjYTY0MWRiMmYzZWE4ODQ2ZDEzMGM3IHB5M2sKKzgxMjQwIGY4Mzc2MTIwMDdkYzlhYjc3NzcwNzkxODUzNzAzN2EzY2RkMTRlYjMgcmVsZWFzZTMxLW1haW50Cis4MTI0MSA4YTAwNzlkOGQxY2VmNDM5M2RjY2JmNzA5NDE5NDhjOWRkN2Q3Y2RkIGxlZ2FjeS10cnVuaworODEyNDIgN2E3YWU0NzZkZjRmZTA0MjUwNWJlOWQ4YTY1NzE0YmFiNjI5YjMwNiBweTNrCis4MTI0MyBjMTc3ODNhZWRjYjg4YWJhZjlkM2EzM2MxMWYzZjBlN2FiYmNiNTRjIHJlbGVhc2UyNi1tYWludAorODEyNDQgOGI2NDAxYWUxMjYyNzgxMjRkNjBhNzcyMTE5NTVmMjlhMDhmYmYyNCByZWxlYXNlMzEtbWFpbnQKKzgxMjQ1IDNmMWE2YjBiNzkwYzdkYzU4NWU0M2RhYjYyODUwZTE5YzIwYjJlMGEgbGVnYWN5LXRydW5rCis4MTI0NiA0ZDI3ZTg4MDcyNGFiZDFlMThiYjQ2NTYxMTA3ZDcyMTBiNmQ1MzNmIHB5M2sKKzgxMjQ3IGJjMDBlNDYzYTk1YmY1ZWRkYTI2MGI1YWU1Njc2YTcxM2M4MWM2MDMgcHkzaworODEyNDggYTMzYmVlMTRhYmM1MWIyMDkzMjdjMGE5NTdkZmQ2YjhiZDJiMDIzOSByZWxlYXNlMzEtbWFpbnQKKzgxMjQ5IGRkZGQxYmM3ZTgzOTE3MGUyNjdiOGJmNDY5NjIzZWQxM2E1NDQ4Y2IgcHkzaworODEyNTAgODk0YzhlNDIwNzRhOTNiMWVlMDVjNmRlZmY5OTM3MzlhYmU5OTgyYiBweTNrCis4MTI1MSA1NTY5NjFmNGYxNmRhNzEyYzgzZDM4OTJiMGYxZmE2OGVjMmJhOTRjIHB5M2sKKzgxMjUyIGYzZjk1ZWQ4Mjc0NGRiMDJlNWExMjQyOWU3MWU3Zjk3NzgyZGMyZGYgcHkzaworODEyNTMgMzFjZWUyY2Y3YzM3NmFhMzNlYzEyOTA1OTAxODg2NTkyZWJlYzkwOCBweTNrCis4MTI1NCBjYTgxNjQ2ZGQyOWNiZTcyYzYyZDRiNTEyNmEwNjg3NjQ2OThhNzIxIHJlbGVhc2UzMS1tYWludAorODEyNTUgZDI5Mzk5MTAwOTczODIwMjM5NzA3NTQ2N2ZlOTRlMDhhMGYwZTgyNiBsZWdhY3ktdHJ1bmsKKzgxMjU2IGQxMmI2NWE3OTgyNGYwMGM4ZWY1NTUwZGFjOGI2MWYzMjNkZmUwNGEgcmVsZWFzZTI2LW1haW50Cis4MTI1NyBjODZlZWI3MzMzMTZiYTM0ZWZmYjgwYTdkMmUzMTVlNGU1YmFlYmMwIHB5M2sKKzgxMjU4IDkzYTI1MTY5ODdlMDAyMjExODdhOGExOWUwOTk0NmMxZWIzYzc2ZDEgcHkzaworODEyNTkgMGIwNGM1Y2E1NzdkMTZkNDc3MzQxMWIzZWVjODJkNTZkMDhjNjU1YiBsZWdhY3ktdHJ1bmsKKzgxMjYwIDc2NjQzYzI4NmI5ZjA1MTk2ZGIwM2Q4ODUxNzk2ZmFkYjcyMTEzNjAgcmVsZWFzZTMxLW1haW50Cis4MTI2MSBiNWYyYzQ0MjFhMzE4NmJlZWU0NTYxMDc2NjIzOTNiNjk1Y2NjMTc5IGxlZ2FjeS10cnVuaworODEyNjIgMDk5MzI2NTM1NjFiOWRlNDdkZmYyNGJmNDk2MzkyYTc0MzA1NzIyZCByZWxlYXNlMjYtbWFpbnQKKzgxMjYzIGVjNTk1ZmYyNTdlMDY0MDFhNTIzYjA0MmE3MDk5ZDIwZDM5NzZkNmMgcHkzaworODEyNjQgZmY0YTk2OGNhN2JiZTc2ZTcyOTYyOWUzNWQ5MGM4YTM5ODQ2ZGJlZSByZWxlYXNlMzEtbWFpbnQKKzgxMjY1IGM5ODFmMGM4Njc4YjQ5ODc1Zjk2Zjc1MmE3ZGZlNTk5Mjc2MDRjOWYgbGVnYWN5LXRydW5rCis4MTI2NiAzOWViOTFhNWY5ZGNhODM2YmYyYWViYTEzZjlkODEyYmE2MTlhZDQ0IHB5M2sKKzgxMjY3IGQ2Y2IyZjEwZTY1ZWY4NzM0OTI4ZmM2YWNhNjBlYTc4MTk0NGI2NTkgcHkzaworODEyNjggYjlhMGYyNmZhMmM5NjMzN2QxMTk3YmQwNjg1ZTE5NGE3MzE0MDFkNCByZWxlYXNlMzEtbWFpbnQKKzgxMjY5IDdmNjRmYWQxNzdkZDZjNmNiOWMxNGU0M2FhOGIyZGEyNmU5MmM2OWQgcHkzaworODEyNzAgZjAxYWIxYjEzZDBhZTc3YTMyNDA3ZTE4ZTAzOGE1NGEyMjRiYTYwMCBweTNrCis4MTI3MSA4NDAzZjUwNmQ5ZTU0YTQ3NzhiZWFkYmQ4NDM4YmJlZWE5NjM5ZmU4IHB5M2sKKzgxMjcyIGRlN2M4NTgwZjllYmU2NjAzMjA5Njg0OWU3MjYwMjRhZDQ2NGViMDEgcHkzaworODEyNzMgYmYxNGI5NjM4YzczYTVlOWE4ZTAyMzJhYjQxN2U4MWRjN2Y4YWM1MCBweTNrCis4MTI3NCA1ZGJkMmMyOWIwZTk2ZWJlMDNkNmI4ZTE4MjJkYTUyYTVhMTFiNzM4IHJlbGVhc2UzMS1tYWludAorODEyNzUgZjBmY2Q2OTE4N2NkMjZkMDc3NmM5NDQ5Y2JiZTJjZjIyYjljNGFlYyBsZWdhY3ktdHJ1bmsKKzgxMjc2IGRlYzg4NzAyYzliYzczNmQzMzQ1YThhNzE0MGE5YTYzNGViYTRjYjcgcHkzaworODEyNzcgMTc1N2JiZWJmNzVhZGIxNjFmMGRjYWI5Mjk4Y2MwYzYwYzkzNDM4ZiByZWxlYXNlMjYtbWFpbnQKKzgxMjc4IDgyZGJmOTNmNzYwZjRlODgwMWViNjVmYmFkMjMzZTA5MTkzNzI5NTIgcmVsZWFzZTMxLW1haW50Cis4MTI3OSBlNzQ2Njg1NDQ1ZGVlYjEwMzViOWI1NThjZWVjMDU3OWY2YWQ5MzU4IGxlZ2FjeS10cnVuaworODEyODAgNjY2NjA3Y2U0YWRhOWRiY2I5NGY1ZGNkMmI3MWZlMDM1ZjZjMWQ1YyByZWxlYXNlMjYtbWFpbnQKKzgxMjgxIDQ1NWQzZmJiMTRlY2I3NWFjYzI2ZGUwNGMzODgwZTg1NmE0NDA5MTkgcHkzaworODEyODIgODcxYmZhMWZkYTU5MGQxMmI3M2M1ZmY3ZmMzZWI5MjhmNzBhYmU1NSByZWxlYXNlMzEtbWFpbnQKKzgxMjgzIGYxZTM3YThmYjJkMTJiODk5YTZhMDE2NDBiNTZhMTVmZWNlOWYzMjMgcHkzaworODEyODQgMWU1MmJlZDg3N2MxNzdmNjQ1ODgzYjA2YjFmMjNjMDlmYzFlZmJjZCByZWxlYXNlMzEtbWFpbnQKKzgxMjg1IDhkYTA4OGQ2YTk1YjJmMWVkNzhlM2M5MzVlYjcxNDU2MGJmNjEyYWMgbGVnYWN5LXRydW5rCis4MTI4NiA2YjM4OTI2YTVmY2RjNGViN2FhNzM3ZTBmYmVmOTJkOTc2MGU0YWY5IGxlZ2FjeS10cnVuaworODEyODcgODBkYzU3MDE3N2M2NjhhNjJiMTI2MjU2OTE3NjMxNWVhZGZkOGYzZSByZWxlYXNlMjYtbWFpbnQKKzgxMjg4IDE5NzUxMWM0Yjc1YTk3YTNjMDRhNjdiMWFlOTQzZjc3NjY4MjIxYzIgcHkzaworODEyODkgZWQwYTY5ZDY2YzExMzUwOGI3NmZmZjBiNWEzMjQ4OWZjNWZiOTliOCByZWxlYXNlMzEtbWFpbnQKKzgxMjkwIGJlYzgxOGE3NjkwMmEyZjRlYmZlYzg1NTJlOTNiY2JjOTNhODMzYWYgcHkzaworODEyOTEgY2Y3NGVjM2UxZjgyNjgyODMyY2VlNmYyMTQ1ZjJmMTE5MmZmNDk1MCBweTNrCis4MTI5MiA2MTNiNjNmNThiZWJmMjk4NGNmZWUyZDQ5MWUzZDRjMzE4ZjNhOGZjIHB5M2sKKzgxMjkzIDg1OWI4MzhlY2YzZGI2NWVmY2I3ZGQ5MWU3NzY3Y2JlMTg0YWE0OTAgcHkzay1qaXQKKzgxMjk0IGQ3ZDgwNDZmN2E1MmZmNjQ0OWM0YjhiZTQ3NTYxZmVkY2Y2Y2ZiZWYgbGVnYWN5LXRydW5rCis4MTI5NSBlOGVkYWJkNTQxOWIzZTM0NmI3OTU3NDhhYWI3MjdkNWY2N2RhYzViIHNzbG9wdHMtNDg3MAorODEyOTYgYjc1ZTYyZmNhZTgxYTcyNzNiMWQ3MmVlNjAzMmI3ZmQ5YTk1YWZkOSBzc2xvcHRzLTQ4NzAKKzgxMjk3IDI4NTkwZDViNmI4YjA4NjdlODU4NjY4M2RjYTAyMDYzMzhiN2IwMzMgc3Nsb3B0cy00ODcwCis4MTI5OCBmMjQ3MTQ2ZjhhOTU5ZWZjNzIyOWM3MGMxNGViNDdjN2Y3NWY1Y2U0IHJlbGVhc2UyNi1tYWludAorODEyOTkgMjZkNzYwNTIwM2RjYzIwNzMwOWM4NjUzMGNjNzk0NmNiZmU4YWI1ZiBweTNrCis4MTMwMCAxNWZhNTlmYzE0OWRiY2NhOTllNDYwNGNmYzViZjljNTI1NWQ0NTc5IHJlbGVhc2UzMS1tYWludAorODEzMDEgNWYzMTM1MGFmYjYwOThhZDdiNWM2YjNlN2I1ZjM4MzIyNTQwNWExNiBzc2xvcHRzLTQ4NzAKKzgxMzAyIDYzOTEwNTVlZmNhMGRiOTYwY2UwNmMwNmQ4YzRiZmM1NDI1MzNjMGQgcmVsZWFzZTI2LW1haW50Cis4MTMwMyAxMDY1ZDFjNTMzMDlhZWM0Y2VhZDU2ZjI5NWZkNWNiOGY0YWRhZTUwIHJlbGVhc2UyNi1tYWludAorODEzMDQgZjE0ZjQyZjMyOTIyZTNlYzk5Zjg3MzY5MTgzMDA2ODhmZjA2MDYwZCByZWxlYXNlMjYtbWFpbnQKKzgxMzA1IGM5ZWQwYzNmNmRjZGQ3YjFkZjY0ZWY2NTllNjlkNjc4ZjI4YjhjYTggcmVsZWFzZTI2LW1haW50Cis4MTMwNiBjOTlmY2EwM2ZhMzc4ZTI3ZWQ4NzQ3NGI1OTA5MzA5OTkyYmMwYmVmIHJlbGVhc2UyNi1tYWludAorODEzMDcgMThmNjJhN2E3ZGJhODIzN2I2YmViNWQ0MDllYTIzODQyZTUwYzViMCByZWxlYXNlMjYtbWFpbnQKKzgxMzA4IGY3NmY4MTA0NGQ0MDgzZDUzYThmOWZhYzY5YzgyNGMwODAwZGQ0NjEgcmVsZWFzZTI2LW1haW50Cis4MTMwOSBlZjcyZjE1ODY0YTk5OGY1MjdjYWY0N2ViOTdmY2JjYWE4NzNiZTA2IHJlbGVhc2UyNi1tYWludAorODEzMTAgMDUyNjk1NzNkMjE3MmYwYzQ0NTVmNjc3Y2FkYjRmNTI5OGIwNjQ0MCByZWxlYXNlMjYtbWFpbnQKKzgxMzExIGMxYzFlOGM4ZGM5Y2QxYWQ3NDcyZjlmOWU3ZjRmMDE2ZjEzNjc5ZWUgcmVsZWFzZTI2LW1haW50Cis4MTMxMiA2ODQxYjJhMTZhNTFkNWE1OTUyMzFkOWEwMGZkMzVmMDEyMmY0MDQxIHJlbGVhc2UyNi1tYWludAorODEzMTMgY2UzODA5YjgzNDczNjgwOWM1YjhmZTliYjYwNmEwZThkZGEyMGFkMiByZWxlYXNlMjYtbWFpbnQKKzgxMzE0IDdmYzQ4YWQxNjA4N2VmM2NjMjYwNTgxNTgxODk1MmNkNzA4NjE4OTQgcHkzaworODEzMTUgN2YxNWE2MDA2MTYyN2RmOWJjNTcxNGMwMjk5Y2Q1NDkzNGQ2MzQ0ZCByZWxlYXNlMjYtbWFpbnQKKzgxMzE2IGFhNzc3ZDQzZjIyZjVlOTQ2MmI1ZWI5ZDMzNjUzMDhlY2E5NmU2YjUgcmVsZWFzZTI2LW1haW50Cis4MTMxNyBjOGQxNjZlYzU0MzAxZGYzNzQyZWU4ZDM4NTg3YmIwYjYwYTM0NzQ4IHJlbGVhc2UyNi1tYWludAorODEzMTggNzVkNzM5NjU1NmZkZTgzMzAxN2ExMDYyYWVlMjhmZWNlZWIzODFkMyBsZWdhY3ktdHJ1bmsKKzgxMzE5IDk0MmIzYzE2OGYxNWRhZjU4YjY0NmI0ODllMTUxODBkMGNlMDBjMjUgcHkzaworODEzMjAgMTUwNGNjNWExNWExYzRlMzNmN2MzYmMwMDM4ZWI4MTg1M2NlYTY3NiBweTNrCis4MTMyMSA4NDY4NjZhYTBlYjY2ZmY3YWY5Y2Q4NmQ2OWI0ZjVhNWJkZTFlN2U5IHB5M2sKKzgxMzIyIDk5OTk5NzRmZjUwNjk1YmQ1ZjAzZmU4NWI5NjNjYzc3MjIxNDYwMGUgcHkzaworODEzMjMgN2JhODUxZDFiNDZlYzRmNDBkMDBlMWM3Yzg1N2Y3YTc5YzUyMjYwNCBweTNrCis4MTMyNCA4OWNlMmY2ZDRiMjQxNzRiZmEyY2RhNjIzNTljYmMwZGIzNTk3ZTE2IHB5M2sKKzgxMzI1IDdkY2QxYTI2OTc5N2JiMGRhM2YwZWRjZjM3ZTMyMjVmYTlhMDg4YzEgcHkzaworODEzMjYgODFkNzhkZDI3M2IwOWYwZDY4Mzc4ODg2OWM2NmVjYjdlMjkyMTJkZCByZWxlYXNlMzEtbWFpbnQKKzgxMzI3IDhiNzY2ZWM2OTY4NWQ0ZjZjZmEzOWQ5M2ZhNzVjZWEyNmJhMjk3ZDggcmVsZWFzZTI2LW1haW50Cis4MTMyOCA5YTIzMzA5ZGZhYTMxOTk0MTVjZjZmNzBkNTQzNGY2YmVlZWM0ZWUwIHJlbGVhc2UyNi1tYWludAorODEzMjkgYjZkMmEyN2MzZTNiNDQyZTQ4MjcyNWI4NTU5Y2YzMzA1Y2Q4ZmIzOCByZWxlYXNlMjYtbWFpbnQKKzgxMzMwIDA4M2Y2ODZhYWYxNWE0ZDk5NTZlYjdlZWZiZWNkODQ0ODJjOTFmN2EgcmVsZWFzZTI2LW1haW50Cis4MTMzMSBmMzdlY2Y0YThmZjEwYWU4ZTAzY2RmZWExYmI1ZGE0NmM5ZTg5MjRlIHJlbGVhc2UyNi1tYWludAorODEzMzIgNzdlYjFmYjU5Yzc4MDdlYThkZWZlYzBhOWRmYzcwZDY3MzBmOGM4NCByZWxlYXNlMjYtbWFpbnQKKzgxMzMzIDNkMGFlOGVmMDA0NDYyOGNlMzlmZTU3YThlYmI2NDlmYWE5ZDBiZWUgcmVsZWFzZTI2LW1haW50Cis4MTMzNCAyOGJiZDMxY2JjYWI2ZDY5NjE5MDIyM2MzM2QzOTM3MTU5NzQyMDNhIHJlbGVhc2UyNi1tYWludAorODEzMzUgZjVhYWU4NWI2ODY0ZTY5NGY1YTA1NWNlZTMwY2M4YzUxMTBiNGQ1ZiByZWxlYXNlMjYtbWFpbnQKKzgxMzM2IDdmMTBhZWNiMDYzMjJiMzNiYjI1ZTBmNTAxOGQ0YmY2YThiZGZhNzcgcmVsZWFzZTI2LW1haW50Cis4MTMzNyBhZTRjOTMxYTcxZjA2OTY5NTc3MjYyYThhNTU4ZmU5MTJhMTVkNTY2IHJlbGVhc2UyNi1tYWludAorODEzMzggMWEzNGRlMDQyOTcyODcwN2JmYjBlODBiZWMyNWVjMDQ0MDc3Zjg2OSByZWxlYXNlMjYtbWFpbnQKKzgxMzM5IGQxZjI2NWNlYTcwYjc0MzZhOWMwNThjZmFlMGEzMjhlMzNlZGUzYzggcmVsZWFzZTI2LW1haW50Cis4MTM0MCBhNzJiYzU0ZWM3MWRmODYxYmFjYzEzODk1MDBiZWNlMGJjNzNkMmM0IHJlbGVhc2UyNi1tYWludAorODEzNDEgNmFlMDczMzI2ZTdmYjgyNDVmODE0NDk4ZGUxZDBjMTA5ZjYxNDU0OSByZWxlYXNlMjYtbWFpbnQKKzgxMzQyIGY0OTBkMTU4MTk4YWRlZWUxNTJiZjhkMjliNGFjODY4YTJmOThiYTUgcmVsZWFzZTI2LW1haW50Cis4MTM0MyBiZjRlODNkZTRlYTUyOThhOGVlODE4NDU5ZTZkY2NlMzkxNGYzOTMzIHJlbGVhc2UyNi1tYWludAorODEzNDQgMDc0MTBhZWU3ZmMwZWFmOGM1YjU5NzlmODU2NzE4OTMxMWRkMjQxMCByZWxlYXNlMjYtbWFpbnQKKzgxMzQ1IDM0ZThiZmViMGI5ODc5ZDExYjdmMzBmZTZmMTExYTlkNTFjZWE5YTcgcmVsZWFzZTI2LW1haW50Cis4MTM0NiA1OTA2YTBmY2M4MjZiNTFmMjhkYzMzZWU3MmZhOThmZjJlYWNlNjFlIHB5M2stY2RlY2ltYWwKKzgxMzQ3IDhmNmU2N2Y2OTNmZjVlMzZjN2U4NDgxNTc2NTE2Njc1NTAzM2QxZTUgcHkzay1jZGVjaW1hbAorODEzNDggNjViNTYxZjM5Njc5M2M0ZDA5YTExNmQ2MTcxNjE0OTI4YTU2YTY3NyBweTNrLWNkZWNpbWFsCis4MTM0OSBlMDIzYWQzZTJjYWNjYjI1Mjc5YTQ0YzFmOTMxYTAxOWMwNzY4ZTY3IHB5M2stY2RlY2ltYWwKKzgxMzUwIDhjNmY5ODE2OTllODI1YWMwZWE1Y2JkYTA3MWVlZGM4ZGJjYjNmNTggbGVnYWN5LXRydW5rCis4MTM1MSA2ODUyNWVmMzZiNjY4YzM1N2UwNWY4ZjZhYTJkMDgxZjQ5ZTNiNmM0IHJlbGVhc2UyNi1tYWludAorODEzNTIgNGJmYjAwY2UxMmI4NTllOTVkMTQyNWQ0NmQ1ZTFkMDM1NGZhZTNlNiBweTNrCis4MTM1MyA0OWQ3ZGU5ZDdiMWFhMDE4MjVjMjAwM2MyNjk3MzY2NjIyODViODUyIHJlbGVhc2UzMS1tYWludAorODEzNTQgMjBhMzU2ZWViMGY3MDEwM2RlYjE1MWI0ZDMzZDI1YTRhYjNlYjBkNyBsZWdhY3ktdHJ1bmsKKzgxMzU1IDIxYmI5M2UwOTg4YzQxYjgxYjAzNThiZDA3N2IwYzU3YWJhNWE3MmMgcmVsZWFzZTI2LW1haW50Cis4MTM1NiA1YmY0YTg2MzNjNThiODU1YjBmOGM3M2UzN2RlNzY2ZTUwYTQ3NzczIHB5M2sKKzgxMzU3IGVhZWE4MDhiN2ZiODY3MWE4ODRkMWZlMmRkMTdhMmNmY2ZmOGM0MmMgcmVsZWFzZTMxLW1haW50Cis4MTM1OCBiN2Y3MWY2MDQzN2I1OTZjNTVhZGFkMDBjMjhhM2E0YjJjNjAwOTgxIHB5M2sKKzgxMzU5IDBjYWZjMjBlNTYzNzYzNDY1Y2MwNmRmMWEwZTRkN2UzZDYyZjZlOTkgcHkzaworODEzNjAgZTY4ZTAyOGQwOTFlODM1NDBkMTk0MGU5NDAxNTQ1YmU1MTllYTg5MSBweTNrCis4MTM2MSBlNWZkZTdhZDFiN2NjNjk0MDIzODMwNjZiNjk0ZmM1MDJhODZjZTBmIHB5M2sKKzgxMzYyIGNjZGIwOWY3OWEwMzg1NTVjYWU0ZTE5MTQyZDc2MWZkMDgyNjNjMTcgcmVsZWFzZTMxLW1haW50Cis4MTM2MyBiYTUwODg4Y2MwMzkxNGZkMDAxNDAxMjg1ZDhkZDA4OGM1YTE3MjY5IHJlbGVhc2UzMS1tYWludAorODEzNjQgZGVlZDVmY2U4MmQ2MDY5ZjA1MWFkMTczNWYyYzZhYmQzOGM3MzJhZSBweTNrCis4MTM2NSBjMWM3NzY3NGRiYzhjMjlkMTdkZGE4OWQ5MTNmNWViMWJiOGNhMjc3IHB5M2sKKzgxMzY2IDI0OGE5MTVlMzVlZjAxNjFkYjdlMmJjMWM4ZWIzYzVkNGVjMDY0YjYgcHkzaworODEzNjcgMjNlZThhYTg1N2VlMzZiOTk3ZDBhZmM3Y2FhMmE4NmI0ZjJhZGQ5ZSBweTNrCis4MTM2OCA4MmE0NDgzZDljNGE5NDI3YTJmNDI0NWQ2MDgxZGYyMjgxYTViNDNlIHB5M2sKKzgxMzY5IDFmM2U3ODEyNjEyYjhiYTEyNmFlMmE4ZWJjZTFiZjdjMjU0MTdiMzAgcmVsZWFzZTMxLW1haW50Cis4MTM3MCA3NDNjMjA3ZGMyYjQyMDU2OTY5YjhmNWRjZWJhOWJjMWExYTI0NDdhIHB5M2sKKzgxMzcxIDAyMWY1ZWM1ZDJkNGZlMzdkMTBmZGYyNTFhM2IxNWE5YjEwZWYzNzMgbGVnYWN5LXRydW5rCis4MTM3MiAxOGRjZDkwM2M1NWUxNWIyNDUzZGE4NGMzNTNkOGEwNjZiYjgwMDM0IHB5M2sKKzgxMzczIGRhOTQxNTA3ZWQ5M2M0NGM0MDNjNjExZjA4MGNkNjc3NTMzMTk5NWQgcmVsZWFzZTMxLW1haW50Cis4MTM3NCBiODRmOGQxYTA1MjJjNmY5Mjk0ZmYyNzkwMjhmN2Q4YmYyMTdmYTA3IHJlbGVhc2UyNi1tYWludAorODEzNzUgNTAzYWZjNjJkNjMyZTE3OGY4NmZjYjYxMTQxNDA0ZTE4MGNiNTliZiBweTNrCis4MTM3NiBmZDcyYWYwMDYwYzg1NDBhZWNkOTU0MGM0OTQ2ZjMyN2U3NjQwOWU3IHJlbGVhc2UzMS1tYWludAorODEzNzcgNWQ2Yjc2ODkwZjE3Zjg4MGZlZGVlMGEwMDRlODJjNjUwN2MyYTNkZCBsZWdhY3ktdHJ1bmsKKzgxMzc4IDEyOTQyN2I1ZTkxNDFhZThkYzYyOGMyZDFmNWYwMjMxNzk2YjkwMjIgcHkzaworODEzNzkgNGQ4M2JhNWQwYWY1YjQ1ODE4MDhmMDgxMDVjOWNmOGIwMWQ2MTQwZCByZWxlYXNlMjYtbWFpbnQKKzgxMzgwIDYyYzBlNWYxNDEzOGY2OTYxMGYyMWFiZTgwZjU5NGUwZGE1YzRiNDAgbGVnYWN5LXRydW5rCis4MTM4MSA1NWUyMzY4ZjcyZjI3NGU2ZTkzMGFhZTUyNGEyYjVmY2ZmMGM3Y2I1IHJlbGVhc2UyNi1tYWludAorODEzODIgZDkzYmQ1MjU0NzNjNWY2ODc4MWJhZTI0N2JiOTU2YzIxNzUxN2E0NiByZWxlYXNlMjYtbWFpbnQKKzgxMzgzIDMyNzFhZjAzNWQwMTc4Y2RjNTVmOWE5YjNkN2U5ZDk5ZDYyY2M4MzQgcmVsZWFzZTMxLW1haW50Cis4MTM4NCBmMmQzYmY5ZGE5YTgxNTRhNmJkZDJjYzk0ODk4MDNlMmRiN2E0NWRhIHJlbGVhc2UzMS1tYWludAorODEzODUgNmZlMjYwYmMwOTg3ZGMyYzNjZGVmNWYwODBiZTBhNzFiOTQ5YThjYiBsZWdhY3ktdHJ1bmsKKzgxMzg2IGIzYjI2NWZiYWFiZGY5ZWFiNDJjNGRhNjA0NDE4YzEwN2M5YTJkODUgcmVsZWFzZTI2LW1haW50Cis4MTM4NyAxZTZiNDM1ZThlYjZhNTI4MWJlYWQ3NjBhMTQ2NjU5MDYxY2E5NTBhIHB5M2sKKzgxMzg4IDlkZDUyMmY3YzBkZTIxY2NjYmQxNjRlZWQ3ZDAyNmVlYTkzMTc5MGIgcmVsZWFzZTMxLW1haW50Cis4MTM5MCA3ZDRlZTBkYzg3NjQ0MDE3ZWZkNTMwNzQ3OWVhOTIwY2QyZGQwMWZmIHB5M2stY2RlY2ltYWwKKzgxMzkxIDRmOWRiMzVhNDA4NjFkYjdmNzc1NTM4NTZkMTExOWI3YTE2Y2U2YmQgcHkzay1jZGVjaW1hbAorODEzOTIgNWVlNDdmMGIyNmIwMmEwN2MzN2RiNTYwMDQ1MDBkY2M0Y2U1ODQ3OSBweTNrCis4MTM5MyAyMjI4YzI1Y2NlM2U3MmZlYjM4NjY4YWMyOGY1YzBjMzJiZTU1Y2I3IHB5M2sKKzgxMzk0IDM3MDMyYjJhNTkyZGIwMjM0YWYxNjYwNGIwMDBkMTY0MzgyMjEwNjkgcmVsZWFzZTMxLW1haW50Cis4MTM5NSAzODcxOWYxMTYxOWJjZDg5MTVmNWQyMmFkNDlhZTFlMGVhNGViMmVjIHJlbGVhc2UyNi1tYWludAorODEzOTYgZTNkYWFjMDY2YjkyZTc4ZTJiZjE4Y2VmZjk0YmZmOGNmYmJhMGFmMyByZWxlYXNlMzEtbWFpbnQKKzgxMzk3IGQ2MDE2ZmE1OGRmNmI1Y2UxZjM3YTU5ZjYxM2Q5NTc2OWY0MzdjMGUgcHkzaworODEzOTggYzI5MTdhYzVkNTI2ZGM0ZDNmNjJiZDYxZDNhYTgwODU4OTQzOTA4MCBsZWdhY3ktdHJ1bmsKKzgxMzk5IDNmMDhkOThjOGZhNWYwNzE2MzM1YzE2ZDQwYmRiM2YzMjk0ZmQyY2MgcmVsZWFzZTI2LW1haW50Cis4MTQwMCA3OTU3NjJiNWUwZDZlNmIzN2VkZThlMWJhN2ZiZjkyM2EwZjZkNDE1IHB5M2sKKzgxNDAxIDlkYjhjNDE0OTIxZjcwMjZkZDM0YmU2MDk4OGQyZTliMzhkODQ4ODUgcmVsZWFzZTMxLW1haW50Cis4MTQwMiBlMTk0MGRkYjNmNTY1YTYzOTRmYTVkNmE3YzYxYTEwNDE1ZTQwYTAwIGxlZ2FjeS10cnVuaworODE0MDMgNDQxNDkxNTcyZmNlM2FkOGRjOTBlMmI1NDhlYzU4ODhkMmM1YzU1ZiBweTNrCis4MTQwNCBiMDcyYjlmYjBmZDJkZWNiZTA0ZjEzYmI0YWFjYjQyYWQwYjhjYjlmIGxlZ2FjeS10cnVuaworODE0MDUgZjEzOGQxYmFjZmM0Mjg4MDY2NDIwMDE0OTliYzcxNmQzM2RiNDA2YiByZWxlYXNlMjYtbWFpbnQKKzgxNDA2IGRlNjFhNjk3MTJkYWQ3YzQ1YWZjYTNmMjcyZDFkZWU0ZmJjMmZjOTkgcHkzaworODE0MDcgNmNhMmU2YjNiZjMxNzc5ZTZlMDU3NjcwNjY4MzhlZmZkYjY1NTM0MyByZWxlYXNlMzEtbWFpbnQKKzgxNDA4IDczNDE2YjFiYmNkNWJjYWFmZjIyN2I1NjY1NDE2YjZmYjMyMjc4NmYgcmVsZWFzZTMxLW1haW50Cis4MTQwOSAzZDY0ZDFhZmU2Nzc5YTczMDRiMGRiZGNlNTJhMWJjMjM4MjQ4NjNhIHJlbGVhc2UyNi1tYWludAorODE0MTAgZTFmNGZjNjNkMmIzZDJiZTRhZjE3ZGY1NTU2YmZhZmI5YTYxN2M3OSBweTNrCis4MTQxMSA1MDZlOWJlODYxMzkzODRlNWVkYjA3YjA4NGY2ZWVhZWEwZDBmZmM0IHJlbGVhc2UyNi1tYWludAorODE0MTIgZTlhMDQyYTI1MTk3MTM4ZjZlMjMwOGY3ZjRiYWY2YTY2YzIyMGI0MCByZWxlYXNlMzEtbWFpbnQKKzgxNDEzIDk0NmNjNWVlMjk1MTEwZjM0NWQ1M2ZmNjJmN2NmOWZlY2Y2NzZkMjggcmVsZWFzZTI2LW1haW50Cis4MTQxNCAwZjA5NjgyOWZjOTBiOGIzNWQ5MzM1ODc3YzBmNTAwYWQxODI4MTQzIGxlZ2FjeS10cnVuaworODE0MTUgZmYzYzY3NjYxM2FkYjE3MGFmODBhMWEzMjU1NjMxMWU4YzFhZDlhMCBsZWdhY3ktdHJ1bmsKKzgxNDE2IDg1NDJiNzdhMjhlYTk2NTg2YzAwODFkNjVhM2M0YzUyYzgwZGJlN2UgcmVsZWFzZTI2LW1haW50Cis4MTQxNyBiMDI1MGZmYTIyNjc3NWRlZmIzNWVkYmUzOTBjODg3YTcwMmJmZTA2IHB5M2sKKzgxNDE4IGZmZjI5ZDNlN2EzOTIxNWIxN2RiODk3MzBhNjEwY2VmMGI2NDEyMGYgcHkzaworODE0MTkgMWIwNDY3NjYxZWY1YTkwZjQxZjg2ZjUyMDBhMjhiNGVjNmIxMzQyZiBsZWdhY3ktdHJ1bmsKKzgxNDIwIGZiZmMzNTM2NDdlM2MxYjM1ZjhmYTI5MWM1MTM0NTdlMGY2MDVkMzMgcmVsZWFzZTI2LW1haW50Cis4MTQyMSAyOWI1NmMzOGEwMzNkY2RhMTBjNzYxZWU0Y2IxMzFkMzNkODkxOWFlIHB5M2sKKzgxNDIyIGFiYzNmNWExY2M1ZThjYWNhZDM1ZDE1YmE1Y2UzY2VjNzNhNWM2Y2EgcmVsZWFzZTMxLW1haW50Cis4MTQyMyAwNmIwOTM3NmNjNWIwNDJjZTBkMTYxYjMwMzQ0YTVkOGNjMzRlNTUzIHJlbGVhc2UzMS1tYWludAorODE0MjQgZWNhOThiZGM4YTE0ZjQwYjIzMmEzODRlMmUxOWJiOWQ5NTJhNzZlMCBweTNrCis4MTQyNSAyM2UzODE5MmFmOTY0ODgzZmRkNmUxYjQ2Yzk2MjQzNGE2ZWQ2NTg4IHJlbGVhc2UyNi1tYWludAorODE0MjYgMzE2M2RhMjJkNTg1MDJhY2M3ZGNiMzJjMDg1ZGUzODAzMDM2Mzk0YiByZWxlYXNlMzEtbWFpbnQKKzgxNDI3IDhiMmQ5ZDEwMWM4NWE0OTY2ZmIyOTM1YTRlNzFhOTllMDkyNDY4NGUgcHkzaworODE0MjggNjk4NWM2YjlkOTc4ZTU3MTNhMzUwMTkwMDkwMTRkYWExNmYxNjNiZCBsZWdhY3ktdHJ1bmsKKzgxNDI5IGIxNGYzOWQwZjIwYTJkYWU1NGY0OTM3YTMzNmEyYTYyNzQ2ODRlZGEgbGVnYWN5LXRydW5rCis4MTQzMCA2YTA4ZWViNGIzMjIzOTI5NzU0YWU3ZWY1MDcxZDZiY2YyYzFmY2Y2IHJlbGVhc2UzMS1tYWludAorODE0MzEgZmViZDljMjg4ZTc2ZjgwYmM5M2FmODIxOTdkOGQ0MTNjYzU3MWMzYyBsZWdhY3ktdHJ1bmsKKzgxNDMyIGYwNWQyOTk2Nzc2ZTBlZjRmMzY4M2ZlMjFmZmE1NGJjY2JjNTE3MzMgbGVnYWN5LXRydW5rCis4MTQzMyAxMWQ1ODUxNjAzM2Y3ZDU0MzI5ZTBhNmU2MTI4ZDFiMmUyZjU0Y2Y0IGxlZ2FjeS10cnVuaworODE0MzQgNWQ2NzQ5NzBhY2Q5YTA2OGNiNzFjNTJiN2I0YTIwZWY4YmJlM2NmYSByZWxlYXNlMjYtbWFpbnQKKzgxNDM1IDQ5NWViZTA0ZDQ3OThjYmMwZjY4NmFkYzg0NzgyNWQ5MjBjY2NjNTMgcHkzaworODE0MzYgNmVmN2NmYjFmOGY0ODMxYzBiMDA1ZWMzMmQ1MmI2ZGU0NGM4Yzg4MCByZWxlYXNlMzEtbWFpbnQKKzgxNDM3IDhjOGQ0MGNlNWNhMTVhNDQ0Y2ZmOWM2ZTEzMTVkNjBmOGJjNjdlMDMgbGVnYWN5LXRydW5rCis4MTQzOCBmMzg5NTYzZmYzNzIzZTYyNjVjYmYwNWQ3ODM3ZDNlYTkxNTQxODQ5IHB5M2sKKzgxNDM5IGUyMGVhZTNiNWZlNDU0MGE3NmEzMDRjYWU5ZDUxZWE0NWM5OTdhOGMgcmVsZWFzZTI2LW1haW50Cis4MTQ0MCBjMGRiZmI2YTdkNTY3MzAzYzdiYmUzOGE0N2Q5ZmUxYjU0MjVhMTFiIGxlZ2FjeS10cnVuaworODE0NDEgM2E2ZTk2MzdjMzNkZDliZTMwNzU5OTFkNWZlM2Y3NjdjYTlhZGNjYiByZWxlYXNlMjYtbWFpbnQKKzgxNDQyIGE5Y2FkNWFlNDA1ZDhkMmE5NWY4Y2FhMWNhYzM5Zjk1YjFmMjk1MGQgcHkzaworODE0NDMgNzJmYTAwYWMzOGJlM2UwZGQ4NmFlNzg2MDgzNzZhOTJjZDhkYTFhNiBsZWdhY3ktdHJ1bmsKKzgxNDQ0IDUyNDk1Y2NmNjFjYzg4ZGVlNzM1ZjJiYzE1ZDY3NDFmZjBjYzNhN2IgcmVsZWFzZTMxLW1haW50Cis4MTQ0NSA5NTQxM2ViZDQwODEzNjM4ODNlMjViMjQxZGY4NDQ5NWIwNzBhOWIyIHJlbGVhc2UyNi1tYWludAorODE0NDYgMmQwYjA5OGY2Y2I3Zjk4NzA0MjdhY2U5MzM0ODM1MzE3NmQ1MTdmNCBweTNrCis4MTQ0NyAxOTRmNDg4YjhhZDFhNzdiNDVlYjg5Y2M0ZThhYzgxNGIwZGNiNWUyIHJlbGVhc2UzMS1tYWludAorODE0NDggMWFjY2E5YzQ1NTYyYjhlZjQ3YWY4Y2FmNjA2NGVlYzY3YzEzNjljMSByZWxlYXNlMzEtbWFpbnQKKzgxNDUwIDBlMjZjYjk3NmM0ZDkwYmJkZDM4YTc5MjI5NzQ2NDc5MGI2ZGRiNDMgbGVnYWN5LXRydW5rCis4MTQ1MSAwZjUyOGVlMTVlZjcyMDYwYjcxMzYxMWNhNDY2MzFkNzQ4ODkxM2FjIHJlbGVhc2UyNi1tYWludAorODE0NTIgMDIyYzkzZWQxYjhlOGY0YmQ2OGE0NGY2N2RhODIzNzkxMjM5NDhmZSBweTNrCis4MTQ1MyA1NWU4MTljYjUzNjEwMzU5MjVjODJkNjRmMzY3NDRhYTk0NDdhNzQ0IHJlbGVhc2UzMS1tYWludAorODE0NTQgYzZkZmMzZGQyZDVkZjRhMWZiMzFkNGE5OWY0ZjFhYjA2MWQ0MzE2NyBsZWdhY3ktdHJ1bmsKKzgxNDU1IDJlYTkwOTIwY2MxMGQzYTE5ODFkM2NiNDFlNjQ0YmE3MzA4YTM5YjUgcHkzaworODE0NTYgMTRkMjNiZGRmNzkzMzM0YWU2OWZmOTMxMzM1OTBlYjdkNDBlOTQ0YiByZWxlYXNlMjYtbWFpbnQKKzgxNDU3IDgxNWJhMzg3MmY4NTA0Nzg2ODgwZjUyMGUyMDBkMTkwYjJmMzA4YzQgcHkzaworODE0NTggODBiZTcyMTg3NjdiNzEyYjc2MDZjNjJiZmFlZTBjYWFlOGZmNzVhNyBweTNrLWppdAorODE0NTkgOTllOWVkMjE0YWFkZTZkYzAzYWI0MzI5Y2NhMzNhMjBmOTdjZjY1MyBsZWdhY3ktdHJ1bmsKKzgxNDYwIDJhMzg5NzM0ZDU3MDIwYjkyNjBmZWE3NjVhN2RlOWNiM2ZmNGExYWEgcmVsZWFzZTI2LW1haW50Cis4MTQ2MSAxYWYyNzM1MGY0MWJjNmZjYTdlNWE0NmYwNDY5MDAzMzU1ZTE5NWQ5IHB5M2sKKzgxNDYyIDg0NmRiY2Y5NzBhYmVhNWM4NWUzMzc0OTM4MTY2ZmY5MDUwNjkxZGQgcmVsZWFzZTMxLW1haW50Cis4MTQ2MyBiNzM5ZDMwMzRlYzc1MTI1ODY2NTE0OWE4MTZkNmNlZjE1MzI5ODJkIGxlZ2FjeS10cnVuaworODE0NjQgOWEwMjM5YzBlYTNiNDFjZGRiOWQwYzkyZWU0MDJiYzdjZmJlY2QxYyByZWxlYXNlMjYtbWFpbnQKKzgxNDY1IDBhNjQ3ZDA4ZTY4NWZhZjBiOTc3ODYwYzczZDZlMmZlOWRhMzVhMDkgbGVnYWN5LXRydW5rCis4MTQ2NiBmMjA1ZDY2MDU2Zjg5ZGQ5Y2ZmNjUyOTIzOTQyZjMxMTY5MTIzNTZjIGxlZ2FjeS10cnVuaworODE0NjcgNzU1YTFiYzU2MzI2ZWUwNWE3YjNkNTBlYjRjMjgzZWY0MTU2ODc5OCByZWxlYXNlMjYtbWFpbnQKKzgxNDY4IGQ2YTg4OTY5NzE3ZjU1YmM4ZGZmNzBjOTBiZWJkN2I4ZDkzMzNlNzMgbGVnYWN5LXRydW5rCis4MTQ2OSA2M2I1NzhkODMzZWU3YWQ5M2UyOGEzZjdjNTc4YTk2ZGIxOGZjNzNjIHJlbGVhc2UyNi1tYWludAorODE0NzAgMzU2YTZmYzllNTc4NWMzZjY3NjU0NjJiMTk5NGY2NzMwMzMxYjU5OCBweTNrCis4MTQ3MSBiZjgyYzFkMDRlMDZjZGFiZmNkYjkyMjgxNWIxNGJkNDEyYmViZDE5IGxlZ2FjeS10cnVuaworODE0NzIgOTcyNmMyMTczODg1ODJlMWFiYmVlNjE2YjEzYWQzMDBjMzMzM2I3ZiBsZWdhY3ktdHJ1bmsKKzgxNDczIGFiMDgyZTM4N2RkNWNlMjk1ODNlY2YxNjc1ZjJjOTUwY2IzN2FlYzggcmVsZWFzZTI2LW1haW50Cis4MTQ3NCA4MzBjZDg5YjAxZThmMDRmNWUxMjNlZmViNjczOTJjNjQ0NDFmNzQ1IHB5M2sKKzgxNDc1IGNkNDkzNjY5MTE2M2ZkYzI5YTQ0NGVhZjI0NDViYTNkNTRlN2YyOWYgcmVsZWFzZTMxLW1haW50Cis4MTQ3NiA2ZmVlMjZjODlmNmU0YjJhNzYyOTA2NmUzMDQ5Mzc0Yzg2YWVkZTUyIHB5M2sKKzgxNDc3IDZkYzllYzg4NTQ2MzkxYzczMTgxOGFiYzY3ZTcxZTdkNjExMDAxOTAgcmVsZWFzZTI2LW1haW50Cis4MTQ3OSBlZTc2ZjBhMDY1YzI0YzlmY2MyOWQ0ZWEzZDJlNzkxNWJkOWI3ODQ3IGxlZ2FjeS10cnVuaworODE0ODAgMWUwNmE2YzMxMjM0MWEzMWZlZGY4NmE3MDJiZjRmMzg4OTE0MmZjNSByZWxlYXNlMzEtbWFpbnQKKzgxNDgxIDY5MjA3ZjgwMWIzMTY2NDU0M2JhNDkxYjZhY2ZiZjAxMmJiNzlhMzMgcHkzaworODE0ODIgNGU0OTUyNjM2MTEzNDViNzg0MGYxZWFiOWUyYmM0N2IzNGY1YjdjYyByZWxlYXNlMjYtbWFpbnQKKzgxNDgzIDU0YjUxYWJiNjk1MTI0ZGNlNzEyNjQwZjA3OWJkMDk3Mjc3ZDhiMWIgcmVsZWFzZTMxLW1haW50Cis4MTQ4NCAxZThjOTIzMTY0NjM0NzRlNmFiYTVmNTY2NzNkMTgyMzUzNWEzYmM0IGxlZ2FjeS10cnVuaworODE0ODUgYjBkZWUzMmExYzZiMDk1ZGZhYTkzN2E5NzNkMzhiNjM3NGEwNDhkMiBweTNrCis4MTQ4NiAwYmM4ZmZlNmJhOWFjODVkZmY4NWUxMjJlMjhkNDc1ZDRiMTQzZTRlIHB5M2sKKzgxNDg3IGEwYTZlOGJmYWFmNzJhMDkzOTFhNTE4YzJiZGQwN2RjYThlNTZjNWUgcmVsZWFzZTI2LW1haW50Cis4MTQ4OCBkY2EzY2IxOWRiZGQ0NzEyNWE3YWE5YTA2MjJhN2Q1MzQ1NjdlMjA2IHJlbGVhc2UyNi1tYWludAorODE0ODkgMjFmYTA5ZjI1MGUzMDA2Y2RjMGJjNTI4NTlkZDUzM2IwMTVlNTc1OSBsZWdhY3ktdHJ1bmsKKzgxNDkwIDQwY2FkNzU5YTM1NTQ3NTVjZGU3OTg4ZmRlMDE1MTYzYjk1MDlmMWEgbGVnYWN5LXRydW5rCis4MTQ5MSA3NzUwNTc5YzM3NWRhMWQ5Mjg4OTQ2OGMwNzBlYmFmMjBjYTIzMzE4IHB5M2sKKzgxNDkyIGU2NGVhMTYxOTgyMGMwYjlhM2ZkNTUwZTQ5MTU5MWMxYzQ4NmUzMjYgbGVnYWN5LXRydW5rCis4MTQ5MyAwMzYwMTdmMmU3NGM2YTQ2ZTQ5ZTI2Yjc2ZTEzODAzZTQ4NGQxMWM5IHB5M2sKKzgxNDk0IDJmMjRhMmVmNzMzMWM2MmVkZjE2MDkyNTIyMWQzNDEzYzc1Y2IzMjYgcmVsZWFzZTI2LW1haW50Cis4MTQ5NSA4YWQ2MTc4MDUzNWVmYjRhZGY4NDBmNzc3ZGY5MDY4ODdkM2IyMmViIHB5M2sKKzgxNDk4IGIwMzhmZGE1OTNmNmQ1OGUxZTk1MzY1ZjFlOWRkMGMzZDM1YTI2YzAgcHkzaworODE0OTkgYzU2ZmI2M2M2NDhmNDk4MzI2OTRjNDExNDk3ZGNjZTJmNmJiYzQxZCBsZWdhY3ktdHJ1bmsKKzgxNTAwIGViZGE2ODAzZjhkNWMzZTFhNzY3ZWNjZTExMWNmNTBmMzM4ZjU2ZDIgbGVnYWN5LXRydW5rCis4MTUwMSA5MGQ2MzE0Njg0ZDQzYmU0NWU1OWIyYjNlOGI2MDc0MWY5MjY5YTVlIGxlZ2FjeS10cnVuaworODE1MDIgZTNiNTMzOGJlMDU4ODkxYmQ5NTJmZmRmNjc5MjE2NmM1Mjg0MjIyNCBsZWdhY3ktdHJ1bmsKKzgxNTAzIDRiZTIxYTA4ZGQ3MDcxNmU2OGNjNjQzNjVjZmYzZWU1ZDNhODM2YzggcmVsZWFzZTI2LW1haW50Cis4MTUwNCBiZjA0ZWFmMWFmNzQ4YTgzYmQ3NDJlZmIwNDkzNDJiYWRmOTJhOTk4IHB5M2sKKzgxNTA1IDYxNDQ3NjBlODM1MGQ0YzNiMDg3ZDlmMTYzOGU1MzMzMDYxNDgzZWQgcmVsZWFzZTMxLW1haW50Cis4MTUwNiA1ODQ5MTkxMTE4MmNlMTNjMjEwN2E5ODk3ZjU3YzAzYjMzOTNhODEwIGxlZ2FjeS10cnVuaworODE1MDggZjkwMzY4Yzg3YjMzZTY4NTI5ZWExMGJmYzcxN2M0ZjRhNGQwZjJiNSBweTNrLWppdAorODE1MDkgYThlYWI2NzAzMjY2NjRjYmFhOGNkYjE4MzQ0N2E4ZjFkZmVmZWNiMyBsZWdhY3ktdHJ1bmsKKzgxNTEwIDY5M2UyYmVmNGVlM2JjODIwNGIzNWQ3NzM3ZWU3NGJmNzJmM2MxYzMgcmVsZWFzZTI2LW1haW50Cis4MTUxMSA3ZjQxZDc1YWQ0MzVkMmQ4MzZkZmM3YzhkYTBkMWMxZDdlMzQ2M2FjIHB5M2sKKzgxNTEyIGI3M2JlYmRmZTUyNTljMmFiN2MzOWE4ZDc3MzUzYjNhMTBjN2YxNmIgbGVnYWN5LXRydW5rCis4MTUxMyA3MDMyODdhOTk5MzkxNzBmYzAzMTJjMzI3ZmI3MjZjM2M2MThlY2I1IHB5M2sKKzgxNTE0IDRlMDA5MTRlYzQ0N2JiYmZmNTc1ODQxYjAxZjUwZTViZWRiZWU5YTIgcHkzaworODE1MTUgNWJjNGZjZjA0MTQzZDZjNWQyOTkyNGIzZGFiNDRlODQwOTQ4NmZlMiByZWxlYXNlMzEtbWFpbnQKKzgxNTE2IGNlMjYxNzIzYjM1NjJiYWJhOGQyODJiNDVhYWRlOGU5ZmM1MWZiZGUgbGVnYWN5LXRydW5rCis4MTUxNyA3ODE5YmE3N2U0NWMwMDA2M2M2YWUzMDk4ZDI3MTEzYzRjMjM1NGQyIGxlZ2FjeS10cnVuaworODE1MTggMjI5N2NkNTdkOTQ1ZjJmYTljNGI2ODc5YjM4YzFjNzYwNGMzOWU5OCBsZWdhY3ktdHJ1bmsKKzgxNTE5IDIyY2FkZjI2NGFlNTIxN2YyMzllNGViMzk2ZDMzY2FlNjg2YmFjYzggcHkzaworODE1MjAgMTMyMTJkNzRjZTAwOGU5MDg0ZTljZjE5ZjMwNDYyOWU5YWZhYzcxNSByZWxlYXNlMjYtbWFpbnQKKzgxNTIxIDU0YjQ4OGNiZDM3ZTM5MTQxYTZmYTE2ODMwYzM1YTY0OWJhNWNiNGYgbGVnYWN5LXRydW5rCis4MTUyMiA3NjFhYzk3MDNhOTZjMTQxZjE3MzMwYTEyNDg4ODg1ZTM0YTJlMmM2IHB5M2sKKzgxNTIzIGU4YTkzOTNhMDc0OGQ1ZDUwNDI5MGUwZDY5OTI0NGEyMDY1OGQ0NjUgcmVsZWFzZTI2LW1haW50Cis4MTUyNCBkMDljOWE5MzdlMTBiZjZhNzEyZmE5Y2E4ZjJhMGRhOWU0NzI5MmJjIHJlbGVhc2UzMS1tYWludAorODE1MjUgOGFjM2Q1Mjc3NDVjNGUzYWE3ZDg5NmY5MTE2MGExOWVjZGYxODkxMCBsZWdhY3ktdHJ1bmsKKzgxNTI2IDQ3MDgwMDgwYWI2MTliNTcxMjQ5ODAyODUxYWFkMmFiM2EzNThjZDAgcHkzaworODE1MjcgNDRmNDIyMmQ5MWJkNzBmMWQwODkxZDcxM2FmNWNjOTUwMmExODY3YSBsZWdhY3ktdHJ1bmsKKzgxNTI4IDZkZmYzZDkyMTJhODY1YzIxMjgzYTE5ZTdiY2QxYTA3YWY4ZmEzMWYgcHkzaworODE1MjkgNTVkYzllZjE1YWIxYTI0NWY0NDMwZDBkMjdhYjUzNmYzZTk5NzdkNyByZWxlYXNlMjYtbWFpbnQKKzgxNTMwIDgyYzI0MjZmN2YzZTlhMDdhZjkyMTQzNGFjM2UzM2Q4NGZmYWZlODQgcmVsZWFzZTMxLW1haW50Cis4MTUzMSBmMTMzN2ZlNmI3Yjc3OWVjMjMwNTExMzRlZjM1NDI5MjdmYWM4ZTQ0IGxlZ2FjeS10cnVuaworODE1MzIgZTRhZjcwMmQ2MWI3ZDNjYWQ3N2IxNTUwNzczYTJmZDI2MjNiOTJjNCBweTNrCis4MTUzMyA0YzJkNmUxYjg5MGVkNmNjNDM2YWM5OTlhYWM1MjZmYjFjZGUyN2RjIHB5M2sKKzgxNTM0IDkzYzVlNjI0MTMwOTY2ODA5MjQ5OGM5MjlkM2E0OTk0NmNmYTliNmEgcmVsZWFzZTMxLW1haW50Cis4MTUzNSAwODBlNTUwOTE2ZWRjZDlhODRhNmNkNWUwMWJkZjE1Y2QyZmE4OWNjIHB5M2sKKzgxNTM2IGY3ODhhZmY1NzJkMTFjOTU5ODI0NWM5N2MyNjRiZjE4YzZlOGQ1OTAgcmVsZWFzZTMxLW1haW50Cis4MTUzNyBiZDVmNWRmN2VkNzg5NGM3YWFiZTlhM2Y0YTZkY2U0ZDQ4NDNkM2QzIGxlZ2FjeS10cnVuaworODE1MzggNmEzYzJmMDk0YmJhZDdjN2JhMjg2MzMwYTFlY2Q0MWYwMTlhM2UwZCBweTNrCis4MTUzOSA4ZGJiZDkwZWVkYTg2ZTdjNmExMjVhZWFkYjg2ZDRlOTFlNzhkYmZhIHJlbGVhc2UyNi1tYWludAorODE1NDAgOWY3OWNiOThkNTVmNDRlZGFhOTkxMzY2NzM4MmY5MjBjNGNjNmM3YyByZWxlYXNlMjYtbWFpbnQKKzgxNTQxIDgxYTU4MGQ5NDdlZjRlOGFjODhmOTZiZTIwMDc3NDg0M2MzYzg5NjggcHkzaworODE1NDIgMTliM2U0ODUzYzc0MzIyYzBkN2E5OGRmYTc4OGQ0ZGRmMGI5YWE2NCByZWxlYXNlMzEtbWFpbnQKKzgxNTQzIDQ5ZDQ5Nzc5MDYwN2Y5MmVhZmE0ZmM3OGI3NWQyZmJjOWY0YWQ4YzggbGVnYWN5LXRydW5rCis4MTU0NCA3MDJkMjYxZjNhMjlhYmRlMWI4NzU1YzJlMzA0ZWY0NmY4MDUzMmE5IHJlbGVhc2UyNi1tYWludAorODE1NDUgOWFlYzZhZDUzYTFiOTc0YWJmMTA0ZjM0ZmExOWZjODQ4ZmQ4ZDZkZiBweTNrCis4MTU0NiA5YjhiMTQwM2Y4ZGRhODU0MDg2MDY0NWM4ZmQxNWQ5NzQ1YTIwMzY4IHJlbGVhc2UzMS1tYWludAorODE1NDcgNGY5ODJlOTRhZTE2YWFiZjIwNGQ1ZGIyMzZhN2RhY2FkZjFhZWUwNiBweTNrCis4MTU0OCA4MzI4YzVjMzI3MmMzNTEwNDIwOWVlMjRhZDQ0YjA5NTQ4MzE1OWRhIHB5M2sKKzgxNTQ5IDYwMjcwM2QwNTYwYWY1M2EwZGZjZWVjZTM5NGE4ZjAwYmNhZTZiMDAgcmVsZWFzZTMxLW1haW50Cis4MTU1MCBmZDk5NDY3YWI0ZDU5NjUwMmVkM2Q2NjdmNTk1YmZkMzMzMzI4MTRkIHB5M2sKKzgxNTUxIDU2YTU0OTM2ZGExZGJkNDkyZTFiNjI2NmU2NzI3ODY1NjUyOTFhZDUgbGVnYWN5LXRydW5rCis4MTU1MiBjNGY3Mzk3NWE0NDBhOTJkZTE4MDg1N2QxZWYwNGVkZjdlZDdhNGNiIHJlbGVhc2UyNi1tYWludAorODE1NTMgZTNhZDFiOGM0NTIxMjhmZDZiZTQwODk5ZTY3NzU5ZTk2MzYyNWUzMyBweTNrCis4MTU1NCA4MTgwYWJiZDA3Y2IyZTYwYWZhYzI1YTM4ZDk2ZWM0N2JiYWU0MThmIHJlbGVhc2UzMS1tYWludAorODE1NTUgNDc0NWUxM2FhOWU0MzY0MjlhNzljYjQ1YTkzN2FhMzc3ZGRiZmM2ZCBsZWdhY3ktdHJ1bmsKKzgxNTU2IDdjZmJmZmE2YTMwYjI4MmJhNGVkNjRlNTc2MWY2OWUzYTU2MDQ2ZjkgcHkzaworODE1NTcgYzQyZmZiM2Q2M2FmYzc4YTE1ZDRlNzBkMmJiMzI2NGUwNmJhYzFhMCBweTNrCis4MTU1OCAzZjRkMmE4MTgxMGM1Y2M3Y2IxM2U1NjFkNzI1YjYzNDljNWUxNjNjIHJlbGVhc2UzMS1tYWludAorODE1NTkgMTMwN2Q5Nzg3ODlmZWZjM2RhYjExMTA2MGI4NGFhM2JkZGU0MWMyZSBsZWdhY3ktdHJ1bmsKKzgxNTYwIDdmMzEyZjYwZmRiMDUxOGQ1NTVkOWM4ZTBlMzliZTY4ZDRiYzA5YTIgcHkzaworODE1NjEgMDE0ODI3MDA0MzRkOGEwOWEzZTM2MjMzYzc3ODkyYjdjZTM2Y2UyMiBsZWdhY3ktdHJ1bmsKKzgxNTYyIDU1NWZmNThjYjdjYjhhN2FlMzQxMjhmNDU2YjJlZjM1M2EwZjQzZTcgbGVnYWN5LXRydW5rCis4MTU2MyBkZGEwZTFhZGQ4YjMxMjZiMTNmNjFjY2FhYzRiMDYzZTBlOTYzYzg0IGxlZ2FjeS10cnVuaworODE1NjQgYzI3ZWFkNTFjN2RjNjMyMzE5YWIzNWEzYzQ5NmYyMTFmNWQxZDYzNiBweTNrCis4MTU2NSBjZmQyMTVkOTQ5OWMzZWExZmU1MzIxOWIyNDliOTUzZTA2YWY2ODNkIHB5M2sKKzgxNTY2IDMxMWEyNTNiNThiNzVkMTBiZDA0ZjMwYzAxZGRhMjMwMGIwNjRiZTIgbGVnYWN5LXRydW5rCis4MTU2NyA5NmE3YTNjYzU4OTdlYjQwOGNjZDQ5NDMzNmMyOTIyODgwZDFhNzFhIGxlZ2FjeS10cnVuaworODE1NjggNmI4OWRlMzZhNzRmYzI5MGZhYWEwYWI4YmQ1MGM0YzU5N2JhYjM5MCBweTNrCis4MTU2OSAwY2NmMGZkYzU5NjY1MmUxMzFiODY4MzVlOGZkYzUzMTM3OGM3NDY3IHJlbGVhc2UyNi1tYWludAorODE1NzAgNGIxNDJmN2IzODEyZDA5OWNiODY0MzA1Y2VhMzYxZWJhOWRkZGZhMSByZWxlYXNlMzEtbWFpbnQKKzgxNTcxIDVjY2M3MWRjYjVkZWE0NDE3ZGI4NWI5NDk4NmQxYjkwMDcwZGIwNWQgbGVnYWN5LXRydW5rCis4MTU3MiBjOWJlY2NiNjNlYTkwOWE0M2MwMzdkZjIyYTMwZjRiZGFhOGMxMmZhIHB5M2sKKzgxNTczIGY1MDFiZTYzODg3OGExNWIyZmNiYzUxMzU5MWY5OWZkNzM4OTJhNjMgcmVsZWFzZTI2LW1haW50Cis4MTU3NCAyNWYyYTBmMGU5ZGViZDMwOGEyMjFiOWJhYWE5NzIyNzVhZTliYWM4IHJlbGVhc2UzMS1tYWludAorODE1NzUgNWNjM2EwYzE0ODAyZWJiYTA1MDYwYWEyNzQ1NDFlMzIzOTEwNmE3OSBweTNrCis4MTU3NiA3ZmU5Yjc5MDA1NGJhZGI4NjU0ZTE4OWE3M2RkMmZkYzBiODU1ODhkIHJlbGVhc2UzMS1tYWludAorODE1NzggOTUyNmE5MDhhMjU4ZGI4NjZiYTY1ZTcyOGNhZjkwMDQyY2JjMDAwZSBsZWdhY3ktdHJ1bmsKKzgxNTc5IDFhNTkyOGIyNTkzYzkwZjc2OGNjMzEzMzRlN2I4YTk3M2M3YjRmY2EgbGVnYWN5LXRydW5rCis4MTU4MCBiZDljYjI0YmE2OGI0MmQ1MzBmYjljNzE5ZjQ2OWViOGQ0YTM1YWMxIHJlbGVhc2UyNi1tYWludAorODE1ODEgNjIxOTQxNTU3ODk4MzZlYzkyNTYxNTU4YjBjMWFlNjQ1ZmUwNDQ1NiBweTNrCis4MTU4MiA3Yzk0Nzc2OGI0MzVkOTM4OTk5NmRkNWFjZjNmOGY4ZTMyZDcyZDY0IGxlZ2FjeS10cnVuaworODE1ODMgZjEyYjAxZTY4ZjY0NGZjMjBkZDk4YjliNDQ5ZGFiMjg2ODEyNDZiNyBweTNrCis4MTU4NCBiNjk3ZTIxZDFlNzg2N2Y5MjJhMjk1ZGM2ZDNmY2JlMzJjYzk3OWZjIGxlZ2FjeS10cnVuaworODE1ODUgZjAwMDc1NGM4OTQzZTE4MDY5MDM0ODgxOWYwNWYwYmJlZWM4ZTE0MiBweTNrCis4MTU4NiA0NDE1NTk5YjcwMTE2ZmU0OTE0OWVjZjY0NGExNmVjMjBjZDc1ZDc4IGxlZ2FjeS10cnVuaworODE1ODcgMmNmYjE4ZjFjMjkzM2NkNTA5YTVhNGE0MGYwYjczNmIwZTJiZjU3MiBsZWdhY3ktdHJ1bmsKKzgxNTg4IDMwOGVkZjExYzdjZmY2ODUyYTYxNDE3YzIwNTQ1MTkxZjMzMzQyNzAgcHkzaworODE1ODkgOWEwNGJkYzQ4MDg5ODNmMmYxN2FhOTU5NmMxNDViOTExYTFiOWQ2MSByZWxlYXNlMzEtbWFpbnQKKzgxNTkwIDg1MmQ1ZWE2MjVlNzQ5NTIzMjU0YWQ4NjBkYTYyNmUyMWM1Zjg5NzQgcHkzaworODE1OTEgNDlhYjVkYmM0ZmFjOWM0M2I0YjQzNDM0MjY4MjFmOGUyYTUyYmFjZSByZWxlYXNlMzEtbWFpbnQKKzgxNTkzIGQ1Yzc5ZDg5YjM5M2FmZTZmNmNmNmZmNmFlZTlhNDgxNzBlMGJhN2QgbGVnYWN5LXRydW5rCis4MTU5NCAyYjU4N2U3ZjAyOTliOWY4ZDYxMTkwYTE5NGEwODc4NTRkYzczMjI3IGxlZ2FjeS10cnVuaworODE1OTUgYjc5OWY4NjJmYjIxOGI0MmJjN2M3NGMyNTJiOTQyMTllYTQ1NTY3MSBweTNrCis4MTU5NiAzMjJiZjRmZjRkM2Q2ZWZhNTQ0OGMyYmE5OWEzOTQyOWNlZmJkNmVjIHJlbGVhc2UyNi1tYWludAorODE1OTcgYTkxNzQ3MzM2ZWFlNjAyNGY2NjM4NjE4MGM3NGMzZTk0ZThkMzdiYiByZWxlYXNlMzEtbWFpbnQKKzgxNTk4IDAzNzJiNGM3YjlmNGY2YTI3ZjNkYWU4NzIxZGQ0ZWQ0MjYzMTkzNjcgbGVnYWN5LXRydW5rCis4MTU5OSAxNjQxOTNhZGU0YmFmMGU3NDY1MzFmZWU2YmFmZTNmZmY2YzRhYTBlIHJlbGVhc2UyNi1tYWludAorODE2MDAgNjNlNzhmY2Y3Zjk0YWNlNjYxYzA3NDdlODk1M2ZjZjIyYjcyNzAyNyBweTNrCis4MTYwMSBhN2E5YjU4ZDFjMTg2NzUyODA3YWNiM2E4M2JhNGJlZjNhNjc5ZjA5IHJlbGVhc2UzMS1tYWludAorODE2MDIgNmU3MWVjYTYyNzhjYjU3NTgzMTkyYjg4YTkwYTdjOWI2OWQxYzhlOSBsZWdhY3ktdHJ1bmsKKzgxNjAzIDVkNDNiOTY2MzZjODg4N2ZjY2NiYTIyOWFmZjRiZjU3OTczYmRiMzAgcmVsZWFzZTI2LW1haW50Cis4MTYwNCAwNDcwZGM2M2QxMmE5ODAzYmVjYjA2MjBiNzg3ZmEzMTk2OTJiZmM3IHB5M2sKKzgxNjA1IDlmYTVlZDRjYTBiYjViNDhjYTBlM2E3Y2ViNWZjZGU5MWE3ZjQ1Y2QgcmVsZWFzZTMxLW1haW50Cis4MTYwNiBlZDc5ZGEzYTU5MWM0YTgwOWI4NjI0ODMwZWNiYWU4ZDZlMzEyOTc0IGxlZ2FjeS10cnVuaworODE2MDcgNmI3YWY1YTI1ZDJlOGQyYTNjMDQ4YzVlZmM2OGY3YjUzOWZmMjZkOSBweTNrCis4MTYwOCAwNWQ2YjI1ZGQxOTcxNWFiODU4N2U4ZTdiN2I4OTY3NTc5NmZiNDliIGxlZ2FjeS10cnVuaworODE2MDkgOWE0YjAyYmFhN2M0MzEzMGU4ZTJiMGJmYWM1NzM1ZGE1ZmVkMzQ3ZCBweTNrCis4MTYxMCAzZWRmYWQyNTQ5YzYxNzhkYTEzNDc0OGM4OTNkN2ZiZTNkZDgxNGM3IGxlZ2FjeS10cnVuaworODE2MTEgNTgzMzc5NTA2MWM1ZDk3MDg1ZTk1OGM3MzQ2ZjFhYzQ3NzU4MGI0ZiBweTNrCis4MTYxMiBlNzY2YzBkODZjZmY5ZDFlNWJhNmUzYTU3Y2NkZDE4MWQwZmJhNTAzIHB5M2sKKzgxNjEzIDY2YjNlZGE2MjgzZmVhYzZhOWE0MDMxZjNlMDNjZDU5NzJlOGI0M2EgcHkzaworODE2MTggMzI0MmEwZDIyZGU2MzhhYjcyZGQ0MTlmOWE0YTJkMmM5ZWQ3NDRmYiByZWxlYXNlMjYtbWFpbnQKKzgxNjE5IGNhYzAwY2JiZTc3MDk0MzM5YmExYWJjMTkzZWRmMWJkMmUyYzkzMGUgcmVsZWFzZTMxLW1haW50Cis4MTYyMCBiMWIzMTc3NTg2NzY1MzJjNjUyZTNmYmMwYmI3MGRlNjE2MzVhOTAxIHJlbGVhc2UzMS1tYWludAorODE2MjEgNzk0NTA0NWMzYTc1OTIwNWUyNWUxNTdhYjYwNzliZTk1MWM3YWI3MCBsZWdhY3ktdHJ1bmsKKzgxNjIyIGM5NjM0NzhiOTA5MmRlY2VmNDEzY2Y2MGE5OTI5MGQ2YTlkMWEzNjMgcmVsZWFzZTI2LW1haW50Cis4MTYyMyA4ZTIxYzY4MzFjN2ZhNmIzZjlkYmRjYmVmNTEzNjE5MTFmMGJkN2E1IHB5M2sKKzgxNjI0IDhhMTNmNzczYTk3NjM5ZTk4ZmM3ZGVhMTdkODU3NjIyZDE2Yjc0YWIgcmVsZWFzZTMxLW1haW50Cis4MTYyNSAzZTY0MjVjMjIxZWNmYzVhNWUwNjAwOGZhM2QzZWEyZTU4YjgyMzgwIHB5M2sKKzgxNjI2IGViYjkxMzBhYjBjNDU4ZmFhMDZlZjUzMTQ5NDlkNjE2N2NmNzViOWIgcmVsZWFzZTI2LW1haW50Cis4MTYyNyA1N2I5MDM1MDM3MmY4YzAyNmY2YzZlNTgwYWVhMGFkYjQ5Mzk4YWM0IHJlbGVhc2UyNi1tYWludAorODE2MjggNzE0NjUzZGQ0YWFkYWQ0NTNjY2FiOWJhY2RlYzExZWUwODNjMzdlMiBweTNrCis4MTYyOSBkYzI3NjhjOTk4ZGUxMjUwYWViZWFmY2ZkY2MyYzM0MzcwYTVkMjJiIHJlbGVhc2UzMS1tYWludAorODE2MzAgNjYxMDlkMGU0ZTZkZjFkZWE0YjdmOThjMGExMWIzYWVhMmYxYTU4NSBweTNrCis4MTYzMSBlYmQ2NWVjNTRkN2U5YmVmNWQ2ZDVhMjhjZDdhMGFjNTIyNjUwMjllIHJlbGVhc2UzMS1tYWludAorODE2MzIgNjJjYTU0MGQ4YjZlNjE1MWFkMTJlOTU5ODIwOWI3MDA0ZjdlOWVkOCBweTNrCis4MTYzMyA5ZjkyY2JhYTUzOWQ2YTQzYzU4MjI5NTgzY2NmYmNhYjNmZWIyZjcxIHJlbGVhc2UzMS1tYWludAorODE2MzQgZjgxMjcxYzE4ZWIwMWFkYzY1OTliOTE2NDhmODFlZmE2MWI0NzhlMCBsZWdhY3ktdHJ1bmsKKzgxNjM1IDUzZWU0NzMyMmRkMmEyYzJhMzQ4MjZiMWM0MzUwNDk2MTc2NzRiYzIgbGVnYWN5LXRydW5rCis4MTYzNiBkNjliMWEyZDliZjBlZjEwNDgxZTM0N2Y4ZjMxZmJmMDk0NmFhN2U0IGxlZ2FjeS10cnVuaworODE2MzcgZDQyNjBkY2FmYzdmYjYyYjUzNzAzYmM0NDgwYWIwYjJiMTRmMmZhZSByZWxlYXNlMjYtbWFpbnQKKzgxNjM4IDljMGMyN2E5YjcxYzc5Y2YyMTE2ZmU2Yzk3MzRmMzhjMmMxYmJhNjAgcHkzaworODE2MzkgMTA5Nzc3MDhkYjJlYWFiM2VjOTU0ZDlmMGMwNzFiYTYzODc0MjRkOSByZWxlYXNlMzEtbWFpbnQKKzgxNjQwIDg5OGViYjI5OTBkZmE1OWYxOWE3ZmM3OWEyMGU2OWJlYmY3YjRiNzkgbGVnYWN5LXRydW5rCis4MTY0MSAyZGU3MTIzM2I2OWIwZDIwMTZlYzZhYjZjYzg1NzE1NjQ1YWVlOTk5IHJlbGVhc2UyNi1tYWludAorODE2NDIgZTRjYmJiYjc4NjNiOTJkYjliYTY3M2Q5ZWNjMWJmNzI5ZTcwMmI0ZCBweTNrCis4MTY0MyBjZmUxMzg2MDBmNjRjNGM3YjE1ZTFlMWFjODBiMjdlY2Y0N2YzNjhiIHJlbGVhc2UzMS1tYWludAorODE2NDQgYTAzYjk1NjgzNTljNTVkZGVjMjk3YTNkZmVjNGVlZTQ5ODFlNDkwMSByZWxlYXNlMjYtbWFpbnQKKzgxNjQ1IDhlMjk0ZGYwZTM4MmE0NmIxYWUwNjJlMWU4MjFjOGI0ZGJjNmYzN2QgbGVnYWN5LXRydW5rCis4MTY0NiA3YjExMjZiNWJlMmQ2ZjBkMTQ1MzAzOTBkMDczYTNlNzFiN2EwMzFlIHJlbGVhc2UyNi1tYWludAorODE2NDcgMzc5ZWUyMTIxNTNlMDNmOGFmMGY2MGNjNmZiNjdkYmM3YWNmNTI2YyBweTNrCis4MTY0OCBkMjBkYjNlZTg0NTc1NWY1ZTY3YjUwY2E2OWViNjY1YzI5N2RmYWVlIHJlbGVhc2UzMS1tYWludAorODE2NDkgYmQ0N2NkMWY5YmMyZThiY2MyNjMwOTgwOWFkZWE1MGIxY2JjMmFiMiBsZWdhY3ktdHJ1bmsKKzgxNjUwIDM0YTYzN2JmZDRiZTc4YjllNDYxZDRmMzMzYzQwY2NlODdlODFmNmUgcHkzaworODE2NTEgZWE0M2I0MDY0NTBmOTRmYzI2YmVlZTU3ZThmMjNjMWY3NjRkYmFmMCBsZWdhY3ktdHJ1bmsKKzgxNjUyIDNiODA3MDkxMzE2OTQ5NmY4YWIzY2UwNTQ5MGE0OTcyNTQyYzc1Y2YgbGVnYWN5LXRydW5rCis4MTY1MyBiNDdjNGNmMjVmMDIyZDc1OTA2MDQxZTMzODZhODgyNjdjOGU3ZTg5IHJlbGVhc2UyNi1tYWludAorODE2NTQgYzNhZGI5MWNhNTg5NDcwOTllYmZkOGYxMTVkMjM1MzkwNDZkNDJhYyBweTNrCis4MTY1NSBkZmY1ZjA5YjVhODYwMTgyZGNmNmNhNzMyZjQxYTU1NTA0NjVlNDUyIHJlbGVhc2UzMS1tYWludAorODE2NTYgOTdlZGYwZWEwM2Y5YjE0ZTJhNDlkNDhhNmFhMTVjYTgwY2YzMzJlNiBweTNrCis4MTY1NyBkZmJkMzQ1ZjUzZjAzYTU4NWU3YzA0MjI2NWQ3MGJkM2M1ZjAyMzQ3IHJlbGVhc2UzMS1tYWludAorODE2NTggNmIwNzI5NGIxMzUyMGUyZGY1NjU2ZDNkMGJkMTI1YzU2N2VkYjJjYiBsZWdhY3ktdHJ1bmsKKzgxNjU5IGRkMzc4Yjg4NWI5NDAzNjU0MGYyYzk1OTUwMWFhZTc0MmU5Zjk1YjQgcmVsZWFzZTI2LW1haW50Cis4MTY2MCBiYjYzZWFlZmM1YTY4ZDc4ZmRkNWFhODIyYjJlNjJjOTRjOGI0YjcyIHB5M2sKKzgxNjYxIDgzM2RlNzk4ODVlNGZjOTJjNjg0MGY4YTEyZjdiZmQ2ZjE5MjUyNWYgcmVsZWFzZTMxLW1haW50Cis4MTY2MiBmNmU5MDE4MjY4NmJjNjE1ZDQ3ZWU4NDk2YzhkOTA5ODExMTNkODc5IGxlZ2FjeS10cnVuaworODE2NjMgMjkxYjBiYjYzZmI3NmJhZDg0MDAzMTFhYzU3NTcyMTg3OGY4ODU5ZSBsZWdhY3ktdHJ1bmsKKzgxNjY0IGVkOTgzYjExNmE3ZGUwMGFkNzFiMmY1NzBjNGNjNzk3NTQ5MGQxMjEgcmVsZWFzZTI2LW1haW50Cis4MTY2NSA4YmJkNGViNGVmYzQxZTNjMzc3N2MzNWIyM2RlYWQxYTM4MzRmZDM3IHB5M2sKKzgxNjY2IGNlYTVlZjY4MmJkZDRjNjgzNTUwYTBiOTJhOWRmZDcwZDdiNWNiNGMgcmVsZWFzZTMxLW1haW50Cis4MTY2NyA5YWY2MDBhNjYxMTU3MDEwODlmYzc1Y2Q2Y2NmMDQ4NWNjNWY4Zjc3IGxlZ2FjeS10cnVuaworODE2NjggYWUxMWY1NmFkNWQ3NDdkYWYyMDcxYjdiZjczMGZiNmQ3NGU5NDk3YiByZWxlYXNlMjYtbWFpbnQKKzgxNjY5IDFiNGMzMDc0MmEyNGEzYzY3OWU4MGI1MjhkOTBlM2UyODJiYjI5Y2IgbGVnYWN5LXRydW5rCis4MTY3MCBiZmJmMmQ2NTBmMjY5MzRkNzI4OTlkZGVkZmM4ZTFmZDMyYTNhMjEzIHB5M2sKKzgxNjcxIDA1MzRjZTAxYmE1MDI5YjNmNTQ2MWJhNTNmYTRlMjI0NmIzNjNmY2MgcmVsZWFzZTMxLW1haW50Cis4MTY3MiA4ODI1YTdlNmE1ZjAxZTY5N2QzNjFlZmE1NDU5ZWIyMWJjNzU5NTZkIGxlZ2FjeS10cnVuaworODE2NzMgMzc5N2VlNTdkM2Q2ZTM4NWJlYTc0MTQ2M2VkNzI2ZjgzYjJiOGY2MSBweTNrCis4MTY3NCAxNmZiZGYxMGQxMDAxOGZjY2RjODNmMTMwNTNkZTY5MTIxYzM0NWZhIHJlbGVhc2UyNi1tYWludAorODE2NzUgM2QxMWJhNzk4OWRmMGI1MDhlYzkwZjZhZDg1MzkwMGI2MzdlMDMxMyBsZWdhY3ktdHJ1bmsKKzgxNjc2IDVlMjhhM2RmZGVlZjNmNGYxYzY3NDI1YWZkNjQ0OGFkYzA5ZWNiZjQgcmVsZWFzZTI2LW1haW50Cis4MTY3NyAyNWI0MTYzZmZlM2ZkMmU2OWQ3NWJlZTgwMjdjNGE0MzBiZTZjMDE1IHJlbGVhc2UzMS1tYWludAorODE2NzggMzhkZGVjY2YwMmE5NDIyN2M1MmVmNGZkN2M5NzkwMGZlNDJjNTMyMCBsZWdhY3ktdHJ1bmsKKzgxNjc5IDExYWNjNTdmNTgwNGNhYmMwYzA4NGRjZmY2NWQwMTA1ZGFlNTM5MjkgbGVnYWN5LXRydW5rCis4MTY4MCA2ZTEyMGQ5MzExMmVjYTQyZjdmNDc5NjUwYmQ4OTBiMzU4NTVlNzNhIGxlZ2FjeS10cnVuaworODE2ODEgNTMyZTllNmFjODI1ZjFjZmIzNmFmNzQ2M2ZkOGI3ZmI4ZDdiNWYxNCBsZWdhY3ktdHJ1bmsKKzgxNjgyIDI2ODAzMTY4Y2U4YTc0NzJkZjVhZGFjOTNhODkwMzhhZWQ4YTkwODIgcHkzaworODE2ODMgY2I0ZmEzZTRiOGQ1NzY4MDE5YTY5NTRmNzM1ZmFiNDViOWQxZGFmNCBsZWdhY3ktdHJ1bmsKKzgxNjg0IGRkNjYzNjgyMTdjMTYyNmUzMWY0YmViZDg0M2JjOWFlZDgzZGExMDggbGVnYWN5LXRydW5rCis4MTY4NSAyMmMwZTIyOGQ1YTdjMTJmNjM0MzYzMWEzMDRhYmQ4YjY5NGJiYjFmIHB5M2sKKzgxNjg2IGJmMjEwM2EyMmUwMDc4ZTZhM2Q0YTVkMmIzYTkxNGJkMzBmOWUzNGUgcmVsZWFzZTMxLW1haW50Cis4MTY4NyAzYjY3ZmEzNTg1ZjA3YzU1MDdlOTE1YjYwMzgxNzVkYmNjNjllZjQ2IGxlZ2FjeS10cnVuaworODE2ODggOWZhNTU5MDI1OWY0NjRiMGQ1NGFkYWE0OTU0ZmE1ODQ5ZDQ4NGYzMiByZWxlYXNlMjYtbWFpbnQKKzgxNjg5IDA3N2QyOTM4NDM5OTE4ZDYzYWNkMDFmNDIxZDNjOTk1ODliYjZkMDYgcHkzaworODE2OTAgN2I1OWIxZjYzM2NiNGUyNjhhMmZkMDhiNjkyNzM3YTNmMTQ4OGJhNSByZWxlYXNlMzEtbWFpbnQKKzgxNjkxIGVhY2JlNzc0ZjAyOWU0ZDg5ZTdmYTQ3N2FjOWI0M2U1MThjNDYwYTIgbGVnYWN5LXRydW5rCis4MTY5MiA0MTk5MDFlNjVkZDIxOWRhNjhlZWYwYmFmYTQ5NjY2N2JmODIzM2NkIGxlZ2FjeS10cnVuaworODE2OTMgODI0NTY4M2U2ZWM2MTBjYmU5MGY3M2E5YTQ4OWEwM2QzNTM4ZTA5NSByZWxlYXNlMjYtbWFpbnQKKzgxNjk0IDEwOWE5OGY5ZmNkZGQzNGJiYTk2ZWRjZjUwNWUyYmM5YWFhODhjY2MgcHkzaworODE2OTUgY2QxOTJkMWZjZDY3NjNiMWMzYzVkMWJhMDdjNzNiODI0NmM2NjA0YyBweTNrCis4MTY5NiA4NDk4OGJiOTFmYmY2Mzk5YjhhYzYyZjJjYmQ4NjBhNDYyNDRlNzdmIHJlbGVhc2UzMS1tYWludAorODE2OTcgYzE2MGFmMDljNWIwMTY1ZWYzZDEyZGQ3NTEzMTlmMDdhMzkxNzg1OSBsZWdhY3ktdHJ1bmsKKzgxNjk4IDJiMjViNTBlYWVhZGQ1NTg5YzU5OTdhYzRiNzI4MjgzYTUzMjIzN2QgcHkzaworODE2OTkgMGM3NzY0YWE2OTRhMTg2YTQxMDVkNDliYTRkOTBkYWY1MDg2MzA5MSBweTNrCis4MTcwMCA0YzBiMmJiZGQ4MmQxNzA0N2E4YzFmNTkyODEwYTZhOGZhYzQ0M2UxIGxlZ2FjeS10cnVuaworODE3MDEgYTgwYzFiOTY0YTZmZTk2ZmI5ZmJiODZkN2RkMDBhZDdlZjU1ZjM2NyBsZWdhY3ktdHJ1bmsKKzgxNzAyIGJiYWY2MDYyZjI0MTQzNmM5YzA4ODAzODE5YTA1NDg1NmY0NzYzYTkgcmVsZWFzZTI2LW1haW50Cis4MTcwMyBmMjE0ZTFiZjAzMWQyOTc3NTlkMjcxZmRmMThjMjZlZjhhMDMzZTczIHB5M2sKKzgxNzA0IDUyZTkyZTc3YjMxMTRkNDdmOTMxNzI3MzMwNDAyZjA4OGNmODAzYmYgcmVsZWFzZTMxLW1haW50Cis4MTcwNSA3MzQ0NDhlODU2YWE3YzZjZWEwMTBiYzE1MWE4YmRlNzViZTM0YWM2IGxlZ2FjeS10cnVuaworODE3MDYgMDkxNzZkMGJkZTM4NDllMGQxZTllMzk5ZjhiMjM5MzNmYWZmODYzNSBsZWdhY3ktdHJ1bmsKKzgxNzA3IGQ3NTQxYTQ5MGNiZDg0MjM1ZGVlN2RlMjFhYmI3NDk2NWIxYzM1ZTIgbGVnYWN5LXRydW5rCis4MTcwOCA5YmI1YzIyZWYxMzQyM2M1ZjIyYzQyNmUxODU5YjFlZjdhOWZkMjVkIHB5M2sKKzgxNzA5IDVjZGYyNjU3NmU4ZWExZmQ0MDQxNzRhOWUzYjc5YTM0NjQyYjVjMmIgbGVnYWN5LXRydW5rCis4MTcxMCAxNDJjYjZmNjBmZDdlOTUxYzUyYzc1MzdkNmRlZTYyMDQ0NWY0ZmZjIGxlZ2FjeS10cnVuaworODE3MTEgMjNlZDgzNzYxNWFhYjQ5ZTEwNWUwOTM2MTAxNjI4M2I2MjYyZmRkMiBweTNrCis4MTcxMiBkZGE5YmVlNWM4NGEwMDBkMDhjMTljOWJhNjBkNzZlZDAxODQ1MTIxIGxlZ2FjeS10cnVuaworODE3MTMgNjA2MTNlODFmYjFlODUyZDEzYmM3ZWE3MjlmZTA3ZTU2NGFiZDY5NiBweTNrCis4MTcxNCA1OTA5ZTFmNzZiZTc0MGQ2MmMyYTA4NDRlMDdhNzBlN2M5MGI4ODJlIHB5M2stY2RlY2ltYWwKKzgxNzE1IDJiNTcwMmQ4OGYyNzVlOGZhMDc5YmY3ZWUyOGZhYjdhZDg0MGEzZjUgcHkzay1jZGVjaW1hbAorODE3MTYgYzg4NjQ4Mjc3MTM4ZjFiYzViNmMwYmM1MGYyOWQ0MDEzNjY5YTJhMSBweTNrLWNkZWNpbWFsCis4MTcxNyA2YjUwMTNmZWE4MWJiZjBlZjU0Nzg4MWJmMDNjMDExZGFiYjE0ZDliIHB5M2stY2RlY2ltYWwKKzgxNzE4IDYxZjU0NmU4NjFjMTJmNzYxN2I5OGZjZmU1OGU1MzZiYzkwMWY0ZjYgcHkzay1jZGVjaW1hbAorODE3MTkgMDgyOWY2MDIwODBiOWRiNzcyZTlmNGMyZDY3MWNmMzhlMmZlM2ZkOSBweTNrLWNkZWNpbWFsCis4MTcyMCA2ZjFmMDVjNzI1YjdjMGY1NzdhMWQ2YmVhM2ZhYmZkMDUyYjk1ZTgyIHB5M2stY2RlY2ltYWwKKzgxNzIxIDFmZDM2NWQzNjk1OTYyZjMxYzlhMmU0NjhlOTNkYTBmMTExMDhhMTAgcHkzay1jZGVjaW1hbAorODE3MjIgYTQwOWE1YWI4M2JiY2IyYzc4ZTVjM2Q5NTdiZTVhYjczODYxNWZkMSBweTNrLWNkZWNpbWFsCis4MTcyMyBhNTYxMDU0MDFkNTI2ZDQyMzdkZDFiZjNmZWE4YmJhZDk0ODllYTA3IHB5M2stY2RlY2ltYWwKKzgxNzI0IDA5YzA1YWQ0NWI1ZjBiZGY3MTg5MWMwYjgwYzk5Y2ZmNzFlNjhlOTcgbGVnYWN5LXRydW5rCis4MTcyNSAwOWMwNmNhMjdmN2Y4NDZjZWQzODM2MGE5YzZiNWVhY2ZhNTJkOTE2IHB5M2sKKzgxNzI2IDQzZTlhM2U2MTc5NmU2ZDhkMDAyZDYxMmMyMzdlMzZkMmY1ODYxY2IgcHkzay1jZGVjaW1hbAorODE3MjcgY2I1MGRiOTQxMmM3MDRjOGU3N2E0NDAxNWQxNGJkYTViYTNlY2M5OCBweTNrLWNkZWNpbWFsCis4MTcyOCBiZTU4ODE0ZTI1ZDc4NTE1MmQ4ZGNiMjhmOWIxNjQyMTgyYmVkMTFlIGxlZ2FjeS10cnVuaworODE3MjkgM2E1NzFmZDhjM2JlYTBiMWEwYWQzMTY5ZTU2YTU3YThmMDY3OTA3ZiBweTNrLWNkZWNpbWFsCis4MTczMCBlYzE3NGY0MmYxNWJkOTBkZGYyZDE1NmFkMTdhZGUwZjNhYzEwZWM1IHB5M2sKKzgxNzMxIDBlM2VjNDE4ODQ1YWRjNzU1NzhjZjlkMWJiN2Q4MmZhMWI1NWNiNTUgcHkzaworODE3MzIgYWE1Y2U4NjE1YzRmYzcwNTI2ZWNkNDkxZGFlZjg1NWFjZWI5MWUyYSBweTNrLWNkZWNpbWFsCis4MTczMyAyZjI4MmY4ZjkzODg0OGQzMjEwZmMzYmIyNTBiNWIxMTZlNmE0YTBjIHB5M2stY2RlY2ltYWwKKzgxNzM0IDc2Y2Y0YWNmN2I0M2YyZDYyNjIzYzU1OTIwMGMxZjg2ZDdlMjhlYjMgcHkzay1jZGVjaW1hbAorODE3MzUgOTg2YmEwZWMyYzU1ZjM1MDU1ZTBjOWFmYTE1OGNlMWZjNjUzMTU4ZCBsZWdhY3ktdHJ1bmsKKzgxNzM2IDhmYTRhNWU1YWY1NTJkZjc4ZDhlNDNlZDgzMGViZTAwYjE5NTZlMWYgbGVnYWN5LXRydW5rCis4MTczNyAwNmJkNGE0NDgzOWQ5NmQ1NDYwYWEyMzQ0MmI2NTg3YjY3MTViMGY0IHB5M2sKKzgxNzM4IDcyZGMwZWYzOTRhY2JiNDY0ZWJmYWNiMGQ1YjE4OGEyNjAwMjRhMTMgcmVsZWFzZTI2LW1haW50Cis4MTczOSBmODZjNmE2ZTE3NDQxNDgyMjM2OGQxZTMyYzViNTBhNjRhYzJjNTIxIGxlZ2FjeS10cnVuaworODE3NDAgNjdjMzNjYjk2MjJkYThlYzQyNjU0NmYwY2Y1NDY5MzQ1NGM4MGMzOCBsZWdhY3ktdHJ1bmsKKzgxNzQxIGUxMmQ4N2M0NTU5MTk4ZTE2ZWM2ZDEyMDAzYTI2OTMxZWJiMTRkYjAgcmVsZWFzZTI2LW1haW50Cis4MTc0MiAxYzMwZjllYjQwYjgyNjA3MmJkOTY2NDc2Zjg4YzU5YTEzZjk2ZGNmIHB5M2sKKzgxNzQzIDkxMjUxN2NjZGIzZmQ2ZmI4NjY0NmVhYjBlNTIwODBlNDgwNjVhNGEgcHkzaworODE3NDQgMzcyMWQ0ZTViMmVlZDM3NDhkZDBkYzI0OWU4OTk0OWEzMGI5Mjg0MyBsZWdhY3ktdHJ1bmsKKzgxNzQ1IDM2NjJkMmI1YWZhYWVkZGI1ZGRkYzZjODg4OTc5MGZmNGY1YWQ3NGQgcmVsZWFzZTI2LW1haW50Cis4MTc0NiBkMGQwNTdiNWQzNjEzMjg1YTgyYjc4ZWU4NzQzODNlYzhjNGVjOTRlIHB5M2sKKzgxNzQ3IDhiODcwMTU1MTI1MzlhMDViZDBjNzg3ZjU5ODY5M2RjYWYzZDAxOWYgbGVnYWN5LXRydW5rCis4MTc0OCBjZTkyMDk4MTFjMGFhY2ZhMTUwM2M4MGVhM2JkZjRiOWZjMjFhYjE1IHB5M2sKKzgxNzQ5IDRhMTE1MjI5ODBiN2I4ZTUzNjgwZWI5Y2Y1ZDkwZDhhNzgyMTdiYjUgbGVnYWN5LXRydW5rCis4MTc1MCBhZjJiZGU3MmNlNjFhMmMzMjczMDg0NjQwMTIzYTQ3ODU3Y2IwNmE2IHJlbGVhc2UyNi1tYWludAorODE3NTEgNWUxYjNiNjM0ZDUzNDY0OTJiN2U3ZGYwZDVmNDhjYjFkYWNiZjJjNCBweTNrCis4MTc1MiA2MTBiYTk5YjhkMGRhM2QwMmJlZjFhYTZmMjcyN2QyMzcyMTk2ZTY5IGxlZ2FjeS10cnVuaworODE3NTMgMmQyYjM4MjRlMzlhNTEwNDMxZDYwZmQwYzdiNDc4YTYyODQ5ZGZmMyBsZWdhY3ktdHJ1bmsKKzgxNzU0IDNkNGYxYzI1OWQyZDBhYjA0MWQ4NTU4M2I3OGFjOGU5M2IxYTk1MmMgcHkzaworODE3NTUgOWMzMDkxMDI0YmM4NDg2ZDYzNDJiMWNlYzA2OGEwMGFhMjQzOThhMSBweTNrCis4MTc1NiBjYTI2M2QyMDA1ZTc2MTFlNWM2NDRhMDg0ODY5Y2FlYjgxYTE0ZWU5IGxlZ2FjeS10cnVuaworODE3NTcgMGE0YjMzZTRlZTIzNjM2NTIyNzQ2ZmEzZDIyOTQwMTdjYTM4YmM2YiBweTNrCis4MTc1OCA1MDMyZjFkNWExZTE1YzE4MzU5MWM0NTE3YzdlNDQ2OGZjOTA0MGI4IGxlZ2FjeS10cnVuaworODE3NTkgYzFjYWVlMzI1NDRmYjc5Zjc0ZmM4ZjBjODYyZGE0ZWRhMTZiNDU0NSBsZWdhY3ktdHJ1bmsKKzgxNzYwIDFkOWI3ZDA1MmJjYzVmNTcyMjEwNGI3MzY4NDhjZjQyYjQ0ZGIzMzIgbGVnYWN5LXRydW5rCis4MTc2MSA3NDJkMzI5ZGZkZmQ5NWNmMDA1M2I1MjQ2MzQzNWFiMjEwYThmNmMwIGxlZ2FjeS10cnVuaworODE3NjIgZGE3YThmZjc2NDk5NzZjYWU0ZjljMWYwZWU3Yjc0OTBkOGQyYjc4MSBweTNrCis4MTc2MyBkNzg3MmRkYjRiOTgwODA4YWY1OGIwMzZkMzNmMTM1NzJkNzhlOTU5IGxlZ2FjeS10cnVuaworODE3NjQgY2RjN2NhOGRiOGQ2YWI0NDk2MGRlY2UyMzRmOTZlZThiMjUxZTc3ZSBsZWdhY3ktdHJ1bmsKKzgxNzY1IGUwZGUzMzc2N2MyOThjZGM5ZjAxNTZjNjk3YzkzYzVmNTI2OWI4NWQgcHkzaworODE3NjYgMTQxMGFjNjBhNzU0MTIxZjkwMGIzZTA2YTk4ZTcxZDc5YjYwMGRjYyBweTNrCis4MTc2NyAzZTBiYzBlMTdmNTYwZWQ0ZDcyZmRmYTliYmY4NDA5ZTRiZjNhZWQ3IGxlZ2FjeS10cnVuaworODE3NjggMjZiYjUzOGVmNmVhNTgzMzMxMzUxMzAwNTFiZDJjMmI3ODdlNzg0NyBweTNrCis4MTc2OSBlMWNhZWQ2OTU0NDgxZmNlNjFkMmNmY2Q2MmQ4ZGNjNWExNjQ3MTE5IGxlZ2FjeS10cnVuaworODE3NzAgNGRmZDkxNzQyZWI5YmJlMjFiMzNhMWQxYmU4Mjc0MThjYmQzMzBlMCBsZWdhY3ktdHJ1bmsKKzgxNzcxIGQxM2RlYzE0NjhiODc0ODljMDZiNDQ1NjRhZjUyZDI4NWE3NDBiYmMgcHkzaworODE3NzIgY2Q4ZWUwMTk5ODlkMTc1NTdmNjZlOGFhNTBiODRhMWE5ZWEyYjIzMCBsZWdhY3ktdHJ1bmsKKzgxNzczIGZkZGEzZjQ2MTQyZTRmOTdiMTQ2NGExYWI1OGU5MDc0NzI1ZDA2ZGEgbGVnYWN5LXRydW5rCis4MTc3NCAwZTdjN2YxOGNkMjRiMDNlY2QyZmNjOGRjMTkwM2EwZDUyNDA1MGYyIGxlZ2FjeS10cnVuaworODE3NzUgMzgxYzVlZWI1MTEwMzhkMDkxZDhlMDgwOGM0Yjg1MDg3ZWQyZjY4NCBsZWdhY3ktdHJ1bmsKKzgxNzc2IDZhMjhlZjI5YjExMDM5NDQzNTFlMmRkYzEzMGFkMGJlMjlmNzcxZmEgbGVnYWN5LXRydW5rCis4MTc3NyA1ODliNjExZDdiNGZhMjhjNzIyN2I0NjQ4MTc0NTI4ZTFmYjJhNTFiIGxlZ2FjeS10cnVuaworODE3NzggMzAxYjc4Y2M5OTliMjliZjFhNGM0YTZkNTk2MTg1NWNjN2VjYWUzNyBweTNrCis4MTc3OSA2OGZkMjI1OTVkYjU3NzYwOTIzOThlZWM0MTUzNTAyZmE0MTQ3NjIzIHB5M2sKKzgxNzgwIGM0ZDRkZGFjZjlhNTk2ODZhMDdiNWFiOGI4OTM4MmViOTA4Y2JiNTUgcHkzaworODE3ODEgODQ5NjUwNTA3MDUyZTZmNDZlNDdkY2UxYmQ3MTMzN2M0NzM1NWIxNSBweTNrCis4MTc4MiA0NzVjYmRlMWVkMTlhN2Y0MGUyNDAyOTRmNDJkYTVhNjcyOWU4MTU4IHB5M2sKKzgxNzgzIDZhMWQ2ZDhjYmM1MjEzYTY0OTQyOTdjMjVhNGI2YjAzNjkyZjY5YjEgcmVsZWFzZTMxLW1haW50Cis4MTc4NCAzMTQzMzk2YTk0ZjFlZTM1ZWI2ZjYyMmVlMmI3YzgwNzM2NDJiMzA3IHB5M2stY2RlY2ltYWwKKzgxNzg1IDQ5NWJiNzNiMWNmMWYzYTU2NjYyZmZlMmZkZTgzZTNmNjNmN2I1NWQgcHkzay1jZGVjaW1hbAorODE3ODYgNDNhM2YyYWNjOTRlYzJlMTYwZTAwOGY1MTlmYWNlOTY2NGFkZDQ0OSBweTNrLWNkZWNpbWFsCis4MTc4NyAzMDM4ZWFjNDJmN2RjN2U0ZGQwODliNTBhN2Q4MTBkMWU0NmZlZGIxIHB5M2stY2RlY2ltYWwKKzgxNzg4IGY2ZGFmNTMwZjg5ZWE2M2RjNmU2MTQwNzI5OGFhNzM3YWU2M2RlYmYgbGVnYWN5LXRydW5rCis4MTc4OSBlZDBjYTM4OTIxYzc2NzUzMTUzNjg5Y2FjNGVmNTQyMzFlNGQ4ODdlIHJlbGVhc2UyNi1tYWludAorODE3OTAgZGY4ZGM4ZDFkNTcxYzZkMDA1MWMxNmU2YTEwZjllYjVlYjY2YTExOSBweTNrCis4MTc5MSA3MzRmZWQ1NjEzYWVmYTk0Y2YzNGI5MGFlOWU1OWE5MGRjZDUwZmM1IHJlbGVhc2UzMS1tYWludAorODE3OTIgOWQ0OWI3NDQwNzhjNjVkZjdhMTY5MmRjMGRlOGU1NGI3ZjYwMmE3YyBweTNrCis4MTc5MyBjZWYzNzRiMTRmNWJlZTUzNTA3MjAyMGE5NDFkNDBmY2JhOWYwN2QzIHJlbGVhc2UzMS1tYWludAorODE3OTQgYzNmMmVkNGQ4ZTY1ZWNlYTQxZGVkYjJhYTUyZDYzZmM1NzQ3NmU1MSBweTNrCis4MTc5NSBjMzJiMDM4ZTAwMjJlNmUzNDNlMzVjYjY3NzI3NmY3YTIyZmJmMGQ4IHJlbGVhc2UzMS1tYWludAorODE3OTYgZWQyNmVhNzg1MzZiYTNiOWI3OWU0NDYyNjNmMTdjZGYxMGMzZDc4OSBweTNrLWNkZWNpbWFsCis4MTc5NyBmZjhlYzk0YmVhZWFkOGU3MjMxNzUzNjAwNjliNmUzMTFmMjFjYzQzIHB5M2stY2RlY2ltYWwKKzgxNzk4IGIxYjdhZjUxODNlMzViY2QzNzlmNmEyYTYzZGY1NWE0YzJlM2Q4MDUgcHkzay1jZGVjaW1hbAorODE3OTkgNzM2ZmEzNmVhODFlMjAyZGI5OTE5ZDIxOWVhMmQ2ZjhmYTFhYWE0NCBweTNrLWNkZWNpbWFsCis4MTgwMCBhMjJkODk4ODg5OTUwMWI2Mzk3NTg3ZWIyZWU5MmZiZTUyOTAyOTYxIHB5M2stY2RlY2ltYWwKKzgxODAxIDZlOGRjYjhlOWU2YmZiOTg1MTMwM2IxZjExNmE1MWQ5ZmQ3MzJiMTggbGVnYWN5LXRydW5rCis4MTgwMiAyZDc0MzBkZWRlYzM4MzYzZWFmMDAzMDg0Y2FlMWRhNjA3YmEwMTA1IHB5M2stY2RlY2ltYWwKKzgxODAzIGZlMmEwZTFlYzk1ZGNmOTAxZjlkNGViZGVmNTJhYmMwNTEwNzE1YjkgcHkzay1jZGVjaW1hbAorODE4MDQgMGVmYTFhZDhiYjc1MDZhYjE1NzIyOTA0MWVkZjNhY2RkMmZjMTZiNyBweTNrLWNkZWNpbWFsCis4MTgwNSBiMTFjYzFmMWE2OThjNTA5YTE1ODg4NjljNmFiYjZjNjEzZTEwNDAwIHB5M2stY2RlY2ltYWwKKzgxODA2IDBkOTM0NzkzNGNjNWI0YTkyYWEyNjU0ZTYwNTYwNDQ3NTVhMDQ5ZWEgcHkzaworODE4MDcgNjAwYzIzMTI3MjA3ZDgyMDY1NzY4ODliNWVhMmI1ZTEwYmM4NmQzYSBweTNrCis4MTgwOCBmZDhmY2NiMmVlOTA4Y2Q0ZmQ3MGJiN2IxYzAwZTAwNzNlYzJhM2I1IHJlbGVhc2UzMS1tYWludAorODE4MDkgMWExMDE2ZmEwNzIzMDBmYTY5NzlmY2MwZmNkMDc4ZGZjZGFiNjJkNSBweTNrCis4MTgxMCBlOTMyZGM4ODg1MTdiMWY4N2YzNmM5MWYzNGI5MzRiYTU3MTQyZDJiIHJlbGVhc2UzMS1tYWludAorODE4MTEgOWNlNTU2M2VlY2ZiNzk0MGRlZTk2OTgyMjBmMDA1NzI1NDNjYmNjZiBweTNrCis4MTgxMiA2MzQyZDE0NjdhNGQ0NDhkMjhmYTczNGFkOGUzMGZhMWMxM2VmYTdhIHJlbGVhc2UzMS1tYWludAorODE4MTMgYTIxNDVhMDZhNzI2OGYyMDMwOTA5YjQxNjdmZGEyYWUzZGI3YWYwNSBsZWdhY3ktdHJ1bmsKKzgxODE0IDk1Y2MxZTZkMDI0Njk0YWE1ZmJiZWY4NzFiNzQ0OWZjMzk1ZjliNmMgcHkzaworODE4MTUgNTM4MTk2Y2Y5MWZmNzgyOTEzNmRlYjMzNDUwNDczYTMyYzBkMjRlYyByZWxlYXNlMjYtbWFpbnQKKzgxODE2IDJmNjFlM2ExNDZiMWNkY2U0MTFiOTU2NzQ0NTA3Yzk0ZmQ1OGJkZjIgcHkzaworODE4MTcgZjVjZTVlMWJiMjNhMjEzNmNkOGZkMDMyOWI4ZmE3NTk5MzExY2UxMSBsZWdhY3ktdHJ1bmsKKzgxODE4IGYyYzRkZDIyY2E2MWEyMTA3NWRhZjgzMjQyNGE2ZWMxMjczMmY0YzEgcHkzaworODE4MTkgODIyMjgwY2VlMDRiNTI3ZjhjMjhhZTdlODVjMjM1YjU1YTcwYmNjZSByZWxlYXNlMjYtbWFpbnQKKzgxODIwIDI2ZmFjNzRlYmFiMzI5ZTFkMWM3YTRkZWJmNjgzMjFhYmFkZjRhYTIgbGVnYWN5LXRydW5rCis4MTgyMSBmZWNkOGZiN2JiZWY1ZGIwNzdlZDc5OTgzYjY3ZDc0NDNkZWY3ZTRlIHB5M2sKKzgxODIyIGI0NGEyZmU1MzFlZjUxZmE3ODUwNjNkMTMwY2Y4NWU5OTliZjEwMmMgcmVsZWFzZTI2LW1haW50Cis4MTgyMyBkMzc5N2U5ZGZkMmMxOTc1ODdjMGQyNjgxNjc3NDlkOTQyYzk1MDNhIHB5M2sKKzgxODI0IGRkZGI5OGVmM2JlNWVmOTA2NmQ1NjEzZTZlMjc2MzA1OGVlZGI3ZWMgbGVnYWN5LXRydW5rCis4MTgyNSBlNWYwYjI3YmMxNzgzNzk4YzY1ZThmYjRlNTcxZjg1ZWYyMTI4NTcxIGxlZ2FjeS10cnVuaworODE4MjYgODI1ZjY1NDQ1YTBhMDFlZjFhNzUwYWVkZmNhNTI1ZTZmNmFkOTZhMyBweTNrCis4MTgyNyA1YzZlNzVhOGQ2MWQ1NWU2M2ZjNzkzMzdlZmRjN2JkODY2ZTU3ZmM5IHB5M2sKKzgxODI4IDNlODYyNTQwMzliOTA5NmZhNDg4NjRlZjEwMWQ5MTU3NTdiMjQ2YzcgcmVsZWFzZTI2LW1haW50Cis4MTgyOSAyNzE4MTU4YzU4ZDAwZmZjNzhiYjRjYWZlOTA2MzkxNmQwMWU4NGE4IHB5M2sKKzgxODMwIGEzNjBlMTE0ODY2YjU1NGQ4ZmYxYjFhZGM1YWM0YzgzOWQzYmNiNDAgcHkzaworODE4MzEgNGY2MTMzMmFmMzVlNjlmYmIxNGVjYjhjNzA1OGEyZGRiMjg0OWU0NSBweTNrCis4MTgzMiBiOTUxODYwNmNkZGNlOTFkMWFlOTcwMzNiYzYxNDVkNTczMzU3ZmZmIHB5M2sKKzgxODMzIGQyMjY0ZjlhYzYxZWNmZDZjZjA4MzMzZjJkYjNmMjczNWYwMDQ0ZmMgcmVsZWFzZTMxLW1haW50Cis4MTgzNCAzNWI0YzM1NmYyNGE2MjgxMmJmODkwZWJlYzZlZWExMzk4OThmMGViIGxlZ2FjeS10cnVuaworODE4MzUgMTE2NmZiN2VmYjA3YTZlNTU0ZTk1YzMzNjY0MTlmZTNkNzZmNWU5ZCBweTNrCis4MTgzNiBkNWVjMjQzY2FhMTIyNGFmYjc2NGMyNDRiZjRjMDQ5Njk5MTE1OWM5IHJlbGVhc2UyNi1tYWludAorODE4MzcgYjVhZjVjOTMxMzViMjRmMzQxNDVkNjZhNzk3NGEwNmYwNDk1Y2ZhOCByZWxlYXNlMzEtbWFpbnQKKzgxODM4IDY1MDlmOWEzY2RlNWFlMjdlMDQ1N2VhMjc3YmY3OTU4Zjg1Y2E3YTQgcHkzaworODE4MzkgOWY3YjhiMzJiMDc0YWE5MWQzMTM1MjEyMGE0NjkxOTgxYTcwOTkwZCByZWxlYXNlMzEtbWFpbnQKKzgxODQwIGEwNmFkNzM4MzU1MjNmMjQ4NmYwMzZiNTAxNjM1YWViNGFiYWE1NjQgcHkzaworODE4NDEgZDI4MWVkNTlmZjBiZTRmMjQwMmY0ZjE2OTUyMTRmNjdjMTA1OTgwNyBweTNrCis4MTg0MiA3Y2NjNTU4MTE0MTMxZjA5YjE2ZWNkZDFlNmRhYmZhZGVkYjU5ZDEyIHJlbGVhc2UzMS1tYWludAorODE4NDMgZDkyNzA4Y2YxYzFmYTMzNjRiNTY0MTA5MzYyNWU3ZWU1NGNmYTJhNiBweTNrCis4MTg0NCBhMjVhZDljNGFjZTAwMThmODUyYmI0Mzc0ZWMxNTVlODgzM2E4OWVhIHB5M2sKKzgxODQ1IGQ0N2ZlNDEzNGU3ZDExYmY0MDM2MTA3YzgyZTY1YjdmMzE2NTI0NzMgcmVsZWFzZTMxLW1haW50Cis4MTg0NiBmODNmMjAxYjEyNzYwODRkYTczY2FlNWVmN2U5ODI4YzRiNDI2OTJjIHJlbGVhc2UzMS1tYWludAorODE4NDcgMTk2NmMxYmM5MDQ4ZTRlZWQxYTIwMTBhNWQwZTIyZjkyNjY5OTNhNCBsZWdhY3ktdHJ1bmsKKzgxODQ4IDI3ZDliY2M3ZTY2MWVjYmQ3ZmE3ZWI5ODVjY2NlZWNiODc4ZDk4NDAgcmVsZWFzZTI2LW1haW50Cis4MTg0OSAyY2ZlMTViM2NkZjU1MmMwNzZjNWI2MTJhYjUxMzk1YTgzMjM1MGQ4IHB5M2sKKzgxODUwIGIyYzE5OTU2MzNiZGM4NWViYzBlZGNjZmE3MGNiM2M5ZGUzYmM5MDAgcmVsZWFzZTMxLW1haW50Cis4MTg1MSBkMzJiMGU4MGZhYWNkMWQwNzcyNTM1NjYzOGU0YTc4MmIzNDk5NWQ2IHB5M2sKKzgxODUyIDZmMzg1NTAzODkxOWI2MjJiOTk0Yjg3MWIyOTU0ZWI4MGVjNzcwZGYgcmVsZWFzZTMxLW1haW50Cis4MTg1MyA4NjRhYzdiM2MzZDZjZWYzY2Y1YTJhNjI4MDZhZjU1NDFjY2Y5NjQwIGxlZ2FjeS10cnVuaworODE4NTQgZDcxMTNjYWNkNDI4YjYxYjVkOGEzZDU5N2Q0NmQ3NTI0NmYwYTI0YyBweTNrCis4MTg1NSA2ZTY4NjZjZWMzN2VhMmMwMDdjYzkyNzYwMzk2ODllNmM5YWJmMjFjIHJlbGVhc2UzMS1tYWludAorODE4NTYgOTZhNTEzMzgyNWQyMzY2ODgxODE3ZDc4YWQ3ZTdkY2MzNjQ2Mzk5MCBweTNrCis4MTg1NyBjNjA0MDJmYzA2NmYxMGMwM2E2NWVjMDg2OGU2MTdlNTAyNGJiOWJiIHB5M2sKKzgxODU4IGI2ZWUyMDViOTQ5OGJkMGZlNzNmYTE5ZjM4MjFlZTNkNjM1M2UxYTAgcmVsZWFzZTMxLW1haW50Cis4MTg1OSBmMWFhZGJlYmM1NzcyOTEyMzEyMjhmZGY2MmU4MzkyMTI3NmZlZDc3IGxlZ2FjeS10cnVuaworODE4NjAgYmEyZjJkMDg1MDRiMDUwMDZmMTc1YjQ1ODE0NjZkMzQ1MDgzMTExMyBsZWdhY3ktdHJ1bmsKKzgxODYxIGMxMTQ1ZTY2OGQ3MjA4NjQ0ODhkZGNlMDAxOTViZGFjNTU5NTczOGEgcmVsZWFzZTI2LW1haW50Cis4MTg2MiA4NjVlMzRjZDdlNWI3NjkyOTdjYWRhZTA3MGMwZjFlMjBkODM5Y2Y4IHB5M2sKKzgxODYzIDMzNzUyMzlkNDM3MGUyZTY2ZDg3ZGI0Njg4M2Q2MjEyYTcyZTYxMTEgcmVsZWFzZTMxLW1haW50Cis4MTg2NCAzMjljMTI5ZTA3YjY4YWYyNjI3OWQ0OGU5Y2NmZDhjOGM4ZWU4ODk4IGxlZ2FjeS10cnVuaworODE4NjUgOGY1OGI5ZTU5NjY4OGQ0MmU2NjdhY2U2NGVjZDNjMGFmODMzZGEzNCBweTNrCis4MTg2NiBhMmVhMWEyMzE4NmIwODc2NzAxNjgwODEzOTYxNWZlNmFlNDkxN2FkIHJlbGVhc2UyNi1tYWludAorODE4NjcgZjMzZTQ2NGE5YTYwYWE5ZjA0OTc4YzZjZjBmNTU3ZmVjMDhkNjBlNyByZWxlYXNlMzEtbWFpbnQKKzgxODY4IDViZjczMzZlYTBhYWQ4OWJkMjQ4MjIwYzI5ODRkOTFkNzUxN2UyZWQgbGVnYWN5LXRydW5rCis4MTg2OSA3N2MwY2E2OWQ1MTg0ZDg5MjJjNWUxN2JjNzU1NTYzYWU2Y2JmNzEwIHB5M2sKKzgxODcwIDE0MjlhYzZiZWJjM2Y4ZDlhN2FkMTcwZDkxMjI3NTI0NTRiZjg2MzcgcmVsZWFzZTMxLW1haW50Cis4MTg3MSBkZGI0N2ZkNjEyYTY3MDFiMzdkNWNmMzU2NGUwZWFiMDBkMzU4NGNhIHB5M2sKKzgxODcyIGUwODcxNjI1NzNhY2M2NzY5MjZmMmU4ZmJkYmIxN2I0ZGQyYmI3NzggcmVsZWFzZTMxLW1haW50Cis4MTg3MyBmZTVlZDcwMjgzZWZlNjA5NDFhN2VhYzM1NDg0MTRlMzM5MWQyMDU4IHB5M2sKKzgxODc0IDhjZmEwZGMzOGFhNzQyYjk4MDM5MTg0YTI2YzUwZmJmYzFlZWJjYmMgcHkzaworODE4NzUgZmY1MGQ0NWUwNjE4MTM1MzJkM2Y2MDc2NDg5N2M2Nzk5ZDhjZmMyYSBweTNrCis4MTg3NiBjZDEwMjQyODFiNzMyYmI4NDhlMDliMWVmMDRlNmU0ZmRiNmIwNjE0IGxlZ2FjeS10cnVuaworODE4NzcgZjI5NDQ3M2Q4NzkzMTVmYjMyNmI3NjhlN2RlNDY4ODEzNTJmM2QxZSBweTNrCis4MTg3OCA3ZjU0MGZlNzc1ZmNjZTM1ZGI3ZDM2ZWI4NjVmNTk2ODRjYmRiNGJkIGxlZ2FjeS10cnVuaworODE4NzkgNWZlNGFkNWI1YWI5ZWI3MmEyZmQ4MzA0YWRmZGE3MmY5ZDJmMmEyZSBweTNrCis4MTg4MCBkYmU3YWU2NjZjZTIyOWQ2OTRlOGE5NjcwOTE3MTg0NjczYjhiMDI4IGxlZ2FjeS10cnVuaworODE4ODEgMGQxNjZlNTc4ODRkZjQxN2RhODE4ZjE3YWYwOThjYjc2NTJlNDc0YSBsZWdhY3ktdHJ1bmsKKzgxODgyIGE4ODcyYjY1MDU3NzZhNjRkMGYyNjhkMDQ3ZmY2ZGVjNGY3NjM3MTMgbGVnYWN5LXRydW5rCis4MTg4MyA3MmY3NzQ5MDM3NzIwMTZjZmM3NDM2ZjE3NGIzYmZjYjQ4YTNlZjZmIHB5M2sKKzgxODg0IDllMTJjNjQ5ZDMxMjc1ZjJjMWM3OTRjMWZhM2I0Yjc5NGJjZDc4ODQgcmVsZWFzZTMxLW1haW50Cis4MTg4NSBhZWI0N2QzMGZiYTRlMzhkYTFlOGYxMjIxZTRkMDYyMDQyMzcxZTFlIHB5M2sKKzgxODg2IDA3Njc2M2M2NjdmOTU2NWI4ZTI4MjkxZWVmYTdjNDdjZTRmYjNjNTQgcmVsZWFzZTMxLW1haW50Cis4MTg4NyA4YzNhMjIyZmE2ZDE1OGY1ZmJhZWJhM2M2M2Y1MzQ5MWQ3MWE2ZWVmIHJlbGVhc2UyNi1tYWludAorODE4ODggNGM5OWRhOGMxZTgwZTdmZWNiM2M4NTczZTY3YjIwZDdjOThlZTg3MCBsZWdhY3ktdHJ1bmsKKzgxODg5IDdlZjQ2YTYxZGM5N2ViNzUyZjQ4MDg2OWRlOGQ3MzE1ZmJhYjNkOTUgbGVnYWN5LXRydW5rCis4MTg5MCAzNDIwZGZjNTU5YmJiODNmNDRmNmJhYjcyYzk5MTRhMTFlODY1NmRlIHJlbGVhc2UyNi1tYWludAorODE4OTEgODMxOWNhMGQ1NDM0OTMxMGM1ZWQ3NjYyZDBkN2JlYzVjZjRmODQ2NiBweTNrCis4MTg5MiA0NDY3YzRjMWQzOGVjZmZmYWVjMGYyMjY1MWM1ODM5ZDk1NzAxZTI1IHJlbGVhc2UzMS1tYWludAorODE4OTMgMjY2ODUzMTFkMzEzMjQxMGE0NzcxZDNiNTNjYzlmMTIwZjFlZDg2ZiBweTNrCis4MTg5NCA0YzNiZTc0Y2E1MDEyN2YwNjM4YjY4ZmRlMThjMDU4NGM0ZTc0ZjUxIHB5M2sKKzgxODk1IDNiYTFiNWI0YzEwODg1MDA4NGMxYmRlNDFjOTc0NGFiZWMzMjcxMWEgcHkzaworODE4OTYgZWJjNGU4OTY5MjRlMmE4YzRlMDA3MzZmMDAyYmI0MDdmZjZmNWM1ZCBweTNrCis4MTg5NyA2YWRjODNkOTk5ZDBlNDUyZDAzNjZiOWE0ZDEwYjc4NmQ2ZGQyYzQyIHB5M2sKKzgxODk4IDZmZjg4ZGNhODEzMzk4N2MxNzgxMWRiMTdmZjA4MDYxN2Y5ZWQyMjggcHkzaworODE4OTkgY2Q1OTZhOGY5MWYzNzg2MThjY2I1MTlhMjgwMWI1OThkNzFlYThhYSBsZWdhY3ktdHJ1bmsKKzgxOTAwIGIwOTFhN2U0Mjg1ZjkzY2I1ZmEzZGYzMDE0YWY2MGQ4MzljODZlMTYgcmVsZWFzZTI2LW1haW50Cis4MTkwMSAyYThlZTExZTNlMThhM2Q0NDcxMmE0OTE1NDZjMjA0ZDhiNzBlZDc5IHB5M2sKKzgxOTAyIDczZDgyYjBiNmRlZTRkYTVjZTlkZDVhODg0ZGNkMmQ2YjVhMmU3MDcgcHkzaworODE5MDMgNTBjMjM5MTc0OTc2MTkzOWVmMmExZTM2YzVhOWEyOTFkMjNiZjFmNyByZWxlYXNlMzEtbWFpbnQKKzgxOTA0IDdkYjdmODQ0MjQxNGZjNGI4N2FlMjlmNmIwMTY3NDJkZTc4NDg4NmQgbGVnYWN5LXRydW5rCis4MTkwNSA5ZGFjNTgxNjNiNzk5OWFjNTMwOTdhNzdmNzlhMjhiYzMyNzE1OWI0IHB5M2sKKzgxOTA2IDY2MTUxOWZlYzNiODY4OGZjNzUwODVhN2IxOWFiMDM0Y2I2ZjM1ODEgbGVnYWN5LXRydW5rCis4MTkwNyA5ODI0NTQ2NGI2NjU0YTA1ZGE4NTQyMjNhYTkxYzJhMmI1NDBhNGZlIGxlZ2FjeS10cnVuaworODE5MDggNzU3NjI2MGQxYjY1NDE1MDA1ODJmMmU5ZDIzYzA3Mjg0YTA3MTAzMiBweTNrCis4MTkwOSAyMmMwNDVkMWJjOGNjZjkzY2YyYTQzMDFiNDBhMTI3MjI0OWQ3NGVmIHJlbGVhc2UyNi1tYWludAorODE5MTAgOGQ1ZGQyMjc2NjgwNTY0ZjczNjUwZTE2NGY3OWY4YWJhMGYzMWQ0YiByZWxlYXNlMzEtbWFpbnQKKzgxOTExIDg4YWVjNTEyNDE4NWRmZTQxODIxZWY4MTU1OTBhN2IyMzMzYjU4Y2IgcHkzaworODE5MTIgNDRkYzk4NTAyYWMzMjNhNWNkYzkxNTdhZGE5NmNiMTk5YTg2Mzg2MyBweTNrCis4MTkxMyBhNjUzZTMwNjEwOGY1MzQzYWNiZTZiODY2NGU2MTAzZmMzYjYyNmM3IHJlbGVhc2UzMS1tYWludAorODE5MTQgYmQ4YTFmZDRjMzE2ZjIwZGVjNTNmZjkxODVhMTZjZDNhYmM5YmFlYiBweTNrCis4MTkxNSBjOGJjMmQ4ZTlhZTFjZmM2YjkwNDFmZWY3MGE3YjcxMDEwMjdmOWUxIHJlbGVhc2UzMS1tYWludAorODE5MTYgZjUyYWVmZGFiMTgyMGU2OGEyZTY1MjNmYzZkZWQwNDgzZDE4ZWQzYyBweTNrCis4MTkxNyAyYjJmNTUzZjFjZTYxMTA1ODQwNGYxYzYzYTIxNWJmYzMwYWY4YWJlIHJlbGVhc2UzMS1tYWludAorODE5MTggZjYwYWFmOTliODM2YmY2ZWVlMTgxNjk5N2M0MDg2NmExZTc2NWQ1NiBweTNrCis4MTkxOSBhMjU1MWIzMGYwNDk2NDk4NTNkNDE4MTg0ZDI5NzZjMmJjMzIwODcwIGxlZ2FjeS10cnVuaworODE5MTkgZmU2YmUwNDI2ZTBkMzUzZGI4NGVjODY5YTViMDJkYmJhNmMzZDRhNSByZWxlYXNlMjYtbWFpbnQKKzgxOTIwIDAxNjdmOTE3MjFhODRjNjE4ZmUyM2E5Y2M1NjRmMDU4YWQyOWIwNDUgcHkzaworODE5MjEgODYyNDU4MjgwOWY5YzcyZDRlMzQ3ZGM1YTVjZjljODMwMmEwYjg4ZSByZWxlYXNlMzEtbWFpbnQKKzgxOTIyIGQ5MjgyMDY1ZjVjOWViYzI0ZmRlYzcwMzM1ZGNlYjA2YjhjZTJhMzcgcmVsZWFzZTMxLW1haW50Cis4MTkyMyAxMzdkYTdjZTVlOGVkMWJiN2FmNGY3NDY2ZjU1OGNjOGExNDU2OTM1IHB5M2sKKzgxOTI0IDcyMTY5ZmZlMzJhMDJjZTFkZWY3NGRmN2EzMDMwYWE2NDQ1ZmE2YzUgcmVsZWFzZTMxLW1haW50Cis4MTkyNSA2ZWFhNzliZTA0NDlmZDA0ZjZkZGE3YjAwYWEyMTg1NzlkOTM0ZWNjIHB5M2sKKzgxOTI2IDEwMzE5MjE3YWY0NDMwZGY0ZmVlZDVjMWU3ZTFlYjYyNmNhNTM2NDIgcmVsZWFzZTMxLW1haW50Cis4MTkyNyAzMDIyOTA0Zjk5NzExYmI5N2UyNzFjOWYwMDAyMWY1Y2ZlY2YyMjg4IHB5M2sKKzgxOTI4IDgxNjlmMzNmMjI2ODhmMjRhMmE0NmI2ZGYzZTljYTQ4YmEwMGM0YjEgcmVsZWFzZTMxLW1haW50Cis4MTkyOSA0NDRjMDI1ZTI5OGRhMzY5NmVmMDkwYjhhNWI0MmFhOGIzNDhhN2ZjIHB5M2sKKzgxOTMwIGU4MGRhYjNlOTA5ZjdiMzNiOTEzY2JiYmRkZDI2NzJlZjE2NTBkODYgcHkzaworODE5MzEgYTEwYTdjZTk3ZjQ1YTdiNDg1YTY0N2Y5MTEwNzE4Mjk4YTdiZWViZiBsZWdhY3ktdHJ1bmsKKzgxOTMyIDg0ZGFiMjliZGVhNzBhMzkyMzE4NDM4YzkxNzY2ZWJlOTQ5YTY5ZGQgbGVnYWN5LXRydW5rCis4MTkzMyBjMmI5MjM4MzRkZWE3NWRlYWU1YTM2OWNjNjNkZThiYWI2MzBmOWNiIGxlZ2FjeS10cnVuaworODE5MzQgNjFkNGNjNjc4MTY1NWRlOTk5YzZiOGU4MTc1NzkzOGRlZDlkYmM5OCByZWxlYXNlMjYtbWFpbnQKKzgxOTM1IDgwMTEwZmQ0MzE5MTE5MjkxOTg2OTU4NjRlOWQ1MzE0ZDMyMjk5MWIgcmVsZWFzZTI2LW1haW50Cis4MTkzNiA2Y2U3ZWJjZjkzNThkZTVmOTU2MzI1MWFlM2JiOWNkOWExNTdjOTYxIHB5M2sKKzgxOTM3IDUyZWIwYzA5M2I2ODg3YjlkZTg2NWFiYzY4YWU1NzVhMDg5ZGZjYTYgcHkzaworODE5MzggYTQ5MGFhMzAzZDhhZGRmYjgzMDIwOTVjN2MwODYwNDcxMTAzNTQ0ZSBweTNrCis4MTkzOSA0ZTlkZDZkODAwNjM4MGRkYmY1ZDllOThiNTU1MzFhZmFiNTQ4YmYzIGxlZ2FjeS10cnVuaworODE5NDAgMzFmMDFjODgxYzQ2MGYzNmMwNjlhYjMzZmI1N2FlZjAyODEwYmNhYSBsZWdhY3ktdHJ1bmsKKzgxOTQxIGFjYTEzYTVkNjE0NGQzOGI2ODYyNmE4ODk5YjZlYTJhNmFiZWI1MTggbGVnYWN5LXRydW5rCis4MTk0MiA0MWVkNThlZDVjOTNiYWMxZDY4ZTU5NjNhNGNjZmE5NjVlOWQyY2FhIGxlZ2FjeS10cnVuaworODE5NDMgOGYyN2I2MWE0MGZhOTkwNTMzMWE3MzAzOWM4ODA1NzBiZmMzNWE3ZiByZWxlYXNlMjYtbWFpbnQKKzgxOTQ0IDYwNmJhZDU4NDM0NDY0ZDMxY2EwMGI5YWU5MzE3OTBhZDAwZjJiNzMgcHkzaworODE5NDUgZGI1NTE2N2ZhNWU3OTg4OGU3N2RiNDc3NGM5NTdlODc5YWQ1ZTI5ZiBsZWdhY3ktdHJ1bmsKKzgxOTQ2IDUxNjAwNDhkNTM2MTcxMTBjMTgzYjNmOGU5MDZiNDExOGVjN2M2NzIgcHkzaworODE5NDcgYmQ4NmJiYTVlZDMzYTAxZWIzMzU5NWJhOWI2YTEzMzk1M2I3Y2Y2MSBweTNrCis4MTk0OCBlNTVmYWQzZDVhZTQ4NGM0MWNkMTcyZThhYTlhODNjMjQ0ZDI3ZDM3IHB5M2sKKzgxOTQ5IDk1NTBlZGExYzA5NjRlNjRjYjZkNzYxZTgzMWY1Y2M0ZmViNTU2YmIgcHkzaworODE5NTAgOWIzMzNiZjA4ZDQ1Zjc1YzBiNjkxYzAwYTgzNWI3ZTgzZmJkZDVlYSBweTNrCis4MTk1MSA0NGNhYzVjNTY1YjdmMDk5OTMzNjc1ZWU5YWM2ODQ0NTA5ZmNjMjMzIHB5M2sKKzgxOTUyIGQwNjU3N2RiNzI3ODUyYzUwYmJhNDI5NmQ5ZDM4MmMwYmQ3MzdkNjQgcHkzaworODE5NTMgNzNlNTM1NGY5MmU3MTQyOGFjYzEzMThiOGU4ZDQ0NzU3OTI0MmU5ZSBsZWdhY3ktdHJ1bmsKKzgxOTU0IGUwYzRkYWRkZmM1NDY5Y2VkMDc3OTBkMWI3NzkwNzU2OWQzZGYwZTYgcHkzaworODE5NTUgYjkwZTMzNWE2MDlhOTc5MWM1ZDk2MDI2Yzg0ZGU1ZjUwNDlmOTkyOSBweTNrCis4MTk1NiA4YmMwYmYyMjAxNGQ4MzFhODQ0YjUwZDI4NWQ5Zjg3YmY2M2RiZDFjIHB5M2sKKzgxOTU3IDBhNTVhZGU2ZDg1NzgxYzM4YzgyMGJmNzZiMjI2NjAzNTk3NjgxZDQgbGVnYWN5LXRydW5rCis4MTk1OCAwYjJlMGI2ODM5YTI3MzViYzhmMjFjOWFmZjkzZDBmZjNmMTEyZDY4IHB5M2sKKzgxOTU5IGIwMGM3MzY1NTVkZTcwZTNjZDJlYWE0N2MwMmFjNDdiMjU2N2M5MGIgcmVsZWFzZTI2LW1haW50Cis4MTk2MCAwZjVkMTE0ZWZmMDE0NDJhM2IyMTBjZGZmZWNjOGNjZTg3MjNmYzBhIHJlbGVhc2UzMS1tYWludAorODE5NjEgZTU4NWIyNDMxYzRhNTQ2OWQ1YjQ5OGI2MmE4MGNlYThkNTdhYjNmNSBweTNrCis4MTk2MiA1Mjk1YjRkYmYzNTVhODRkNjkxMDg0ODdlMTU3NzU3NTU3ZTEwOTcwIHJlbGVhc2UzMS1tYWludAorODE5NjMgYjllY2RjZWMwZmYwZDhiZGMxZjg4ZTQzZGQyNTBkY2JiMjZmMzE2YSBsZWdhY3ktdHJ1bmsKKzgxOTY0IDhmMTM3YTVjNDEzY2EzMTYyN2U5Zjc5ZmRlZTc5ZTMwNTI2NDZhOGQgbGVnYWN5LXRydW5rCis4MTk2NSA3YWM2MTQ4ZTZhN2Y4NGE2YmRlZTRhZTY5NWE3MjJjMzQwMDIwZjM5IHB5M2sKKzgxOTY2IDRlYWMxMzVhMzNhZmQ2OTRkMzcwMzg1MmU0M2RkZWJjZjhhOTZiYTMgcmVsZWFzZTMxLW1haW50Cis4MTk2NyBjZmYwYTkyMzE0MGJlOGVjOGI3ODhmYjhhZmU2ZTZjMTE3Y2EwYTNjIGxlZ2FjeS10cnVuaworODE5NjggZDA2NGU4OTM0ZjRkMGNjZTA0Yzk1Y2E1YTgwZjkwZTU4MWZhNWE0OCBweTNrCis4MTk2OSAyZTUyZmJjYWFhNzNiZGRjMjMxMTgxNTI1MjlkNTEwZTFhYjNjNTQwIGxlZ2FjeS10cnVuaworODE5NzAgMTM4M2I4NGIxN2FjZjc2Y2U1MWY1NzMwMGExNzExOTkyNGI5MzQ1YSBweTNrCis4MTk3MSBmODJkOTZiOWYwM2VkYWFhZGVjYjQ1ZWI0YWUxNTMyN2RkZmMxMjM3IGxlZ2FjeS10cnVuaworODE5NzIgYjA4NGMwYTkzNGE3ZTk2MzgxNzQ5ZDhmNWY3Y2FjYjA2ZTVkYWJmZSBweTNrCis4MTk3MyBiMzJhMjgxNmY2ZTljNzg0NDM5M2JkZjUxMmQ5ODc0Y2UyYmRlYzUzIHB5M2sKKzgxOTc0IDA4NDBhMjgzYWY1ZjlhYjYyZWRhZWNiNzE5ZDhlZmQ4Mzk5MmQ0ZjggcHkzaworODE5NzUgOWNiOTAxNjliMjVhODYzZGY3MmRmOGY1ZjU4ZTc1MjFiYTZlNTAxMiByZWxlYXNlMzEtbWFpbnQKKzgxOTc2IDk5YjgwYzI4OGZhYzQ1ZWVkMGY4MjNlNjcyZWU2Yjc1YzVkNWUyMjUgcHkzay1jZGVjaW1hbAorODE5NzcgOTJiOGI2Nzg0NGUxMDE3ZDY2ZTY5ZjgzZTY3OGE4NmIzYTQ4MDA4OCBweTNrLWNkZWNpbWFsCis4MTk3OCA4NjdiOTc2ZTM0OWRhZDIzOTk3YTg3ODE1NTAwYjEzZGFmZTdlYzFiIHB5M2stY2RlY2ltYWwKKzgxOTc5IDA3MjNlZTE5NTQ3Yjk1NjE1YzA2ZGMxMTU0NTdjNzJjM2IwNWFhNTIgcHkzay1jZGVjaW1hbAorODE5ODAgZDc4YjE1ODA4NzEwYTdkNjc1ZDhiYWY5NDEyMjM4ZTAxZmFjZjEzOSBweTNrLWNkZWNpbWFsCis4MTk4MSBiNzhhOTE4YjdhMGVjNjRiZTg5YzJjOGRhY2RmMGZhOTVhYWMxNmQ1IHB5M2sKKzgxOTg0IDliZTYwYzE4NTAzMmE2NWUyMmE1OTYxODk0ODJiNDc3MjdjN2QwMWUgbGVnYWN5LXRydW5rCis4MTk4OCBlZjVkZTU2ZjI0YzY0Y2RlMDYwNGIzZjcxMTQ1ZjMzN2IyMjI1ZjAxIHB5M2sKKzgxOTg5IDYyM2I3MzgxMTZkMjQyZjBiYmNiZmJkYzVkNTkxNmU3YTMyMGYzM2MgcHkzaworODE5OTAgOTViNWNhMjQ2OGNjNjBhMmNkMjQ2NGIzZTMzNzk5NWQyMWY0NzFjNiBweTNrCis4MTk5MSBhNTdkNTljY2NiOGZhNWNlYjJhM2EyM2QzMTU3OTgxM2UwMWE2MzMxIGxlZ2FjeS10cnVuaworODE5OTIgNmY5YjBjMjQwMTkxZGY3M2MyZjEwNTdiMTk2MjE2YjYwZTkyZGQwZiBsZWdhY3ktdHJ1bmsKKzgxOTkzIDhmM2ZjYzIzOTc4MWI3NjRjMzUxM2IxYWZmYWEwZGY4YjA4ZTMxY2IgcmVsZWFzZTI2LW1haW50Cis4MTk5NCAwZWJjNzJlMzY2YTFkOTZmYjhlOGNjNjk1NWY3Mjg4YTllODRjY2FkIHB5M2sKKzgxOTk1IDdhYzBmNjdlYmJiYTg5NGJjZDliMGI2NWZhOTNhNjM2N2I2ZmI1ODYgcmVsZWFzZTMxLW1haW50Cis4MTk5NiA5MWJiNTcyYjc1NmUwNmQ0NzZkNmJkYTAwYjA0ZmM4ZTk4MDYzMzU2IHJlbGVhc2UzMS1tYWludAorODE5OTcgM2VhNjZlM2ExMjlhNGY5N2IzYjdjNmM0ODVlNzI3ZGQ0NWNjMDQ4OCBweTNrLWNkZWNpbWFsCis4MTk5OSBlNDNhYjUyYjU3YjIzNDM5ZTk4OGVjZjM0YjRkNzVlOGE1MGM1MjNiIHB5M2sKKzgyMDAwIDMyYzRmZmY0NDVhZDJjZmZmMDk3YWM4ZmU0ZjMzOWE1MzI1MGYxODMgcHkzaworODIwMDEgNDlkZDU5OTE1MGNhNzE1YzIxZTBhNzlhYWNhZDY5YzZmZTkxNjQ1YSBweTNrCis4MjAwMiBmYTg5NzczMjRlZDg2NzBhYjBhZTE3ZjU5YzJmMTkzMjU0YWMzNzhhIHJlbGVhc2UzMS1tYWludAorODIwMDMgZjE5YWU1Y2VjOGNlNzlmMTYwNWY5M2JiMWI1ZjU2M2Q4YWI4MGIzYiBweTNrCis4MjAwNCAzNTRiNzUxZTQ2ZDYxY2I3MWY1OTQwYjAwODg2MjQ4YWFlYTc1ZGQ2IHB5M2sKKzgyMDA1IDM1NmQwZWE4ZWEzNDdmMGQ3ZDBhZGFhNzY1MTZhMjVlNmM2Yzk5ZjAgcHkzaworODIwMDYgMjQ2NmFmZWQ2ZjVlY2U2OWUxNTNiYTYzZDcyZWFkN2U4YzBlMzUxMSBweTNrLWNkZWNpbWFsCis4MjAwNyBiODQ4ODczOTg3OWVjOThhNTAxMzNlMTc4ZGU3NGI0MGRmOGUyYzJmIHJlbGVhc2UyNi1tYWludAorODIwMDggODE4NTVjZWRjMTU2ZjU5OGNiNjkzOGQ3ZDhhZTU4NWI1MWUwNzc2OCBweTNrCis4MjAwOSA0OGY1ODU5NzYwZWY0YTNiYjI4NWY2YjdlNmY4M2U3OTE1NDMzNTU2IHJlbGVhc2UzMS1tYWludAorODIwMTAgOGE4N2M1YWZhZGRhYmUzMTU4NjYxMGNkNjk1ZmE0ODFiZTExMDc0ZSByZWxlYXNlMjYtbWFpbnQKKzgyMDExIDU4NDEzNjc2YmVmYjY0YmMzMDk0N2E3ZTkyNGJmYjVlY2EyZDNjNTIgcHkzaworODIwMTIgMjJlYTY5NmFhNzdhYzYzZTUzZDIyYjZjZGQ0NDM0OTFjMzAxNGVlYyByZWxlYXNlMzEtbWFpbnQKKzgyMDEzIDdiYzgxZjg1MzVlYTQxNjA0YjRmZDlhOTc4OTUwODZkY2IzNDczYzcgcmVsZWFzZTI2LW1haW50Cis4MjAxNCBhZGI4YzgxY2MzOWE0NGYxMzAyZjQ4OTI1NmI0NjNiYWNiOWZmNTI3IHB5M2sKKzgyMDE1IDlkYzg0YzQyNGU0MTM2NTdhZjg3ZjM4NzkxNmNkNDc1YjQ2ZWVmMGQgcHkzaworODIwMTYgNDIyYTE4M2UwYmJkY2M3MmE4MDY1ZDM4MWU5NjRiNTc4ZDc4MGMzMyByZWxlYXNlMzEtbWFpbnQKKzgyMDE3IDAwMzBhNzQ3MDY2NjAxMTZiZGIyZDNjYzA1NGU5N2YwZGRlNGJiMmUgcmVsZWFzZTI2LW1haW50Cis4MjAxOCA4NGZlZmJmMWQ2YzA4MGIyYjE1MTMxYzJmODRlYjk0OTYyNTBlNmUzIGxlZ2FjeS10cnVuaworODIwMTkgZTc1MzU2MmNjMDIzYzAzZjFhYWEzNTA4MjRiMDU1Y2NlZTExNGJjOCByZWxlYXNlMzEtbWFpbnQKKzgyMDIwIGM0MWNiNDg0ZjA5MDZjZTBmNmMzNzY1MzlkYTczNmU0MzVlMGMxMmEgcmVsZWFzZTI2LW1haW50Cis4MjAyMSBkMzBmNmM1OWY4MTA3NTc2OTFmNTNhZTBkOWFkOTA3YjU3Mjc5MTcxIHB5M2staml0Cis4MjAyMiBkMzM3N2ViZDNlZTU0ZmZkNzdmYWFiZjI1MTBhNmEyMWMwYTYwMzg2IHB5M2sKKzgyMDIzIGI0MjM3NzAzYTBjYzUxNDExZmVlYWYwNzljYzQ5ZmQzMWRiNjhlNDEgcmVsZWFzZTMxLW1haW50Cis4MjAyNCA4MTEzNWNjZjVmNTVlM2UyMGRmNmZhOWQ1MGUzNzVlNzI3MzlhNWFhIHB5M2stZHRvYQorODIwMjUgNTVlMjRjMjQzZTJmMWE4N2NiOWMwNGFhZjMwNmNhYjM5YjcyNzQ2NiBweTNrLWR0b2EKKzgyMDI2IGM2ODQ1ZTgzMDg2ZjVmODMxNTg5Nzg0ZmQyZDQ5MDljMTljNmFlZjEgbGVnYWN5LXRydW5rCis4MjAyNyBkYTNjNDc5NGQ2ZGQ2YzUxOTk3NmY5ODRlY2ZhNmM5NzZmMmExODZiIHJlbGVhc2UyNi1tYWludAorODIwMjggMzQ2Y2UyNTVhNTJmZWYxZGVlMWM2YWYxYmM0MmQ3ODVkMmNiMDVjNCBweTNrCis4MjAyOSBlNGQ1MDY0MGYwNzc3YzQ3ODZmNjE0M2JiY2Q0N2JjYTAxMDM5NmM4IHJlbGVhc2UzMS1tYWludAorODIwMzAgNzM1NzgyYTI3NWY1MGE4NTRjN2I1MThiNmRjNTkxMmUzNjdkYmZiZSBweTNrLWppdAorODIwMzEgZjM0MTM1NTNmOGY1ZWExYTI2OTJiZGQ3Njg3NTcyOTY2MmY0NGJhNyBweTNrLWR0b2EKKzgyMDMyIDg1NjI3Njk1MmUwODYzOTdhNTA1N2QyNjdkNGI1MjI0ZDNjYTUxOWMgcHkzay1kdG9hCis4MjAzMyBiY2MwYTk5N2YzMjFmY2FlMWQ0ZTE0MTE3NWNlZGY2NTZmYjEzNjcwIHJlbGVhc2UzMS1tYWludAorODIwMzQgNmQzYjA1YTQyOWI1YWNhNWUyZjUwZmM0NDE5YWU2ODBjY2E3N2JlNSBweTNrCis4MjAzNSAyZGQxZmU3MDQ3ZmZkOWZkNzY2YWZiZjVhZmIyMTY4ODYyNGZhOTIwIHB5M2sKKzgyMDM2IDFiMDhhNTQxNTUxYWFkODY3ZWM1OWY4YjRjYWFiMzJlNGZkYWQ5MDEgcmVsZWFzZTMxLW1haW50Cis4MjAzNyAyODNkOTQ3MmRmNGVkM2I3YTViZjgwMDRmNGYxZDZlMWI4MzAwOTVmIHB5M2sKKzgyMDM4IDgwN2NkZWE0NzgxN2JiZTc4MmU3ODY3MTRhMTJkODlmOGQxYWM5MjggcHkzaworODIwMzkgMDE3ZTYwYWU2MDVmNGJlMWUyMTM2NTJhZTAxNTM5MDk1YjVmMmU0NSBsZWdhY3ktdHJ1bmsKKzgyMDQwIGY1ODg5ZjJhYzM5YmIzOGUyMjY5MDUxZDMyNTYwOWQzYmY5OGYzNDUgcmVsZWFzZTI2LW1haW50Cis4MjA0MSAyYmIwYTI3YTNlMzVjNDI3Y2EwZmZiMzcyNTg5MzhhNzFkYjhlNGY4IHB5M2sKKzgyMDQyIDhjYzBlMWM5YmE2ZDYwOWZiOGE1MzViNzNkMDdhMzgyNWNjMWFiZTggcmVsZWFzZTMxLW1haW50Cis4MjA0MyBjYjQ5OTdiNmFhOGJlNjk4YjlmYTg5MzlkMTVhYWUyZjdjYTU2YjNmIHB5M2sKKzgyMDQ0IDJjYzA5ZjA2OTUwYjA0ODI1ZTIzNzZlM2UxMGFmODM1NDU1NTI3N2EgcmVsZWFzZTMxLW1haW50Cis4MjA0NSA0ZDI1NjM5YTNiMTRiZDZiY2UyZDhmYzQ4MGUwMGE2YTFlZGQ5M2VjIHB5M2sKKzgyMDQ2IGIxZDZjY2FkOGVhZDY2NjY0ZjA2YjBiOTc4OWI0ODBkMDdhYWI0ZTIgcmVsZWFzZTMxLW1haW50Cis4MjA0NyA4NGVkMzQ0NmEyOWExYjgzMGY2YmFlN2QwYWYzNjBkNTdhMTljNTIwIGxlZ2FjeS10cnVuaworODIwNDggMTc2NGUwYmU0ODRjNmM4MmY0MDBjOWEyNmIzNWE4MjUzN2Q1ZGE5ZCByZWxlYXNlMjYtbWFpbnQKKzgyMDQ5IDJmZTA4MDJjNDJjNzQ1ZGNlNzJjNWZlMDc4MDVmMWYzMGI2MjMwN2IgcHkzaworODIwNTAgYzJlNzNkODQ0ZDgyMmJkMzJlODRkZGJhYTkzMGQ5YjU4YmI2NmVjOCByZWxlYXNlMzEtbWFpbnQKKzgyMDUxIGM0OGRkYzk2ZjQ1NGFlMjhiNDJmYjg2NTdiYmU1YzU3MTVmZTVkOGMgcHkzaworODIwNTIgNmJmZGNkMjVlZWE3MGRmMDNlM2NiMTMyNmRlOGMzMDBhYTE0ODY1MiByZWxlYXNlMzEtbWFpbnQKKzgyMDUzIDVjMGQ4YzI4NGMzMmRjOGU3YTAyNjkzZjI5MmQ4YmUwZTYxODc1ZDcgcHkzaworODIwNTQgNmE5OTkwZWY0YTZmNWU5NzMyYTM5OGIxZGFiMjdkODMzOTFjMzBjYSByZWxlYXNlMzEtbWFpbnQKKzgyMDU1IDQ2YWI1ZTRkYmE2YmFjN2QxZTdiYjIwZGJjZmUwMDA1ZTI4YTY2M2IgcHkzaworODIwNTYgMWRhNzczM2U4ZjI0NzMxYTBiODhkYmQ2OTA3ODA0Y2EwMmExMWRjMyBsZWdhY3ktdHJ1bmsKKzgyMDU3IGYzZGQ5MzA2NjViZDE3OTM2MzA4ODEzMzA0YTJjNDA4NGM1YmIwOTEgcHkzaworODIwNTggZGExYWFmYTU1YWUwMjM5ZWU1MjZmZWM4NGE0YzQwNDI2NmExMzFjZCByZWxlYXNlMzEtbWFpbnQKKzgyMDU5IDkwN2Y1NjQ0NzZiZTY2OWViZWFlZDQxOGVmZWFkMmViZTYwYmZjYWMgcHkzaworODIwNjAgNTljNjBhNTliMjdhNTdlN2M0ZTE2MmI2YmVkMjY0ZGYwMmM2ZmRiNiByZWxlYXNlMzEtbWFpbnQKKzgyMDYxIDlkNGQ0YWMwYTdiZmU4MTE3NGFmNGQwMTE1ZWNmZDBkNGE2YWMxOTAgcHkzaworODIwNjIgMDc0NDliMzY3OTM1N2RiMmVlYTk2YTgzMDJkZjg3YzAzY2JhNWI1YyByZWxlYXNlMzEtbWFpbnQKKzgyMDYzIGZhODMwMzcxYzcyNDE3NGZiYTFiNTNhMDk5MWYwYTNkNTE4ZDIxMDYgcmVsZWFzZTMxLW1haW50Cis4MjA2OCA0ZDY5YmRiNzFjOWFkNTFjZGM2ODY5NjQ1MjZjMjU2ZGJmMjc4ZDNkIHB5M2sKKzgyMDY5IDQ2MzU2MjY3Y2U4ZmJiNTlkOWIwNjc1Mjg4NTdkYTgxMDJmYWQ1YTYgcmVsZWFzZTMxLW1haW50Cis4MjA3MCBlNWY1MDA4ZmQ1NmQ1MGY0OTgwM2I1ZTVkYjJmODliYjcwYjkyODM3IHB5M2sKKzgyMDcxIGJmOTRlYjhmYWY2MjUzN2ZkNzQ0NmJlNDNkODljOWIyMmIzNTM1ZTYgcHkzaworODIwNzIgZWEyNTEyOWI5NGZlZWM1MDA5ODQ4MmM0ZWZhODI1ZWQ3MWQ1MzY1NiByZWxlYXNlMzEtbWFpbnQKKzgyMDczIDkwY2MyNjY3OThhMjRmYzUwYzE1Yjc2MjFjMWIzNDg0ODkyMDExNjQgcHkzaworODIwNzQgYzU0ZGQ1NzZkZDA1NTQ4MmYxY2MxNzMwNDRjZTdlZDBkNThkNjM2MSByZWxlYXNlMzEtbWFpbnQKKzgyMDc1IGRhNTU4NDYxZDlhOTRiYjdlZTllNzlmY2MyYmMwZTI0ZmU4YWU3MDggbGVnYWN5LXRydW5rCis4MjA3NiBlZjhhMmFiMjZlOWZlZmVmYjM5ZjU3ZjlmYzMyMGFmOGZiOTRjOTgxIHB5M2sKKzgyMDc3IDFmMGUwNzgxZjczZTQ2MWIxYTU5OTBiMTViMWViNTlmODlmMzk4MTkgcmVsZWFzZTI2LW1haW50Cis4MjA3OCA1ZGU1MmViMjUyZGE3MDZkYTNmNjk1NGQ1MGUxZTg0YTdjMTNjMGY5IHJlbGVhc2UzMS1tYWludAorODIwNzkgZGQ3MDA1MTQ1ZjZlNjVmMjM2ZWFiNWYyMDg1ODc5OTNiMmIzZDNjYiBweTNrLWR0b2EKKzgyMDgwIDE4YmNmNmMyZDFlMzdiMjgxODE0ZjQ0NDA1OTRkOGJiN2ViZDM1YTggcHkzay1kdG9hCis4MjA4MSBmNjc2N2RkZTliMjk4OWI4N2ZmMDYzMTY2MGM3YTc5Njg2YTRlMjVjIHB5M2stZHRvYQorODIwODIgYjRhNWE4NjllMWM1OWQ4YWYzNTk5OWEyNjZlOGVkYmM4OGE2NzdmYyBweTNrLWR0b2EKKzgyMDg0IDNhZmM3ZDhhNDQ1YWE1YWM5NWYyMTdjNTM4N2M2Mzc5YjVjNTc1NWQgcHkzaworODIwODUgMGRhNGM3ZDFmM2VmMjMzZTVhMzQzZTY0ZmQ1YzI5NDlkZGQ1NzczZSByZWxlYXNlMzEtbWFpbnQKKzgyMDg2IGI5MDE5ZjBkZDg5ZDNlMTc2OTEyNTJkMTI4ZjEwYTgzNWYxMGJkYWUgcHkzay1kdG9hCis4MjA4NyA0MjliMzI5YTAzZjgzMzRhNjI4Y2FkY2YyZTNhNjMzZDEwMGYyYTQ5IHB5M2stZHRvYQorODIwODggMzQzMDA1YzRhNGUzZjVlMWUxZGEwNjk5OTYyNjcyYWM2ZjcyMjE0NCBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIwODkgNDQ2YTk2Njg1OGYxNDgxZTcwNDdiZjAyN2VjMjc2ZTQ1YjcyMmVmYSBweTNrCis4MjA5MCBjNGY1YzczNGRhNmU0YzEzN2FkMDYyNjkzM2EwMDg3NmM1OTg0OGMyIHB5M2sKKzgyMDkxIDVhMjhjNmNiNDc1MjdiOWQ0Nzc5M2ZlYmQ4ZmFlMDhkNzM0OTM1MzUgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDkyIDA2OTUzNWU1MGE5ZTRmZGQ0ZGYwZGI2YmRlNmZmOTEyNTVmNTljYzUgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDkzIDQ2NmMxNjJjNzMwYzIwY2Q0ZGM3NmQzNGRkYWFiZTRmMmY5YTY3MzMgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk0IDg5YTQyZTA3MTNkZGI5ZWViMDlkZjUwMTMwYjNhYmJjYjk4NDlmZTIgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk1IGVkMDc3NDBjNzY2N2FmZjllOWE3MGZhNTUxYzA1MzExZTc5OWM5ZGUgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk2IDg4MGJkZTVhYjdjNTQzNDUzMWNkNGQzMjY3OGJjN2U3ZmI0NjAyMGQgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk3IGFjNWY1NTM3YzczYjZkZTQ3NTRjZTkxNGUwY2I3ZDE4ZDI5NDBmNWUgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk4IDgwZDQ4MDA3NzQzMzllZWI1MmJmNjlhZDZjNzYzYWZlOGY2YmU3NjYgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk5IGY3M2ZhMzVmNmYwNWRlNDViNWRhNjgxZGYwOTM1MzNlNGM5NDA2NTQgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTAwIDM1ZjgwMTUyNjI3OGQ0YTRkMjY4YTI2ZGY3YzY4Y2NiMDFmYjQ4ZTkgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTAxIDVjZmUwNWYyYTRlOWM1NmFjMGNhMzYyMDM4NTU1ZDUwMzJjZjlmMmQgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTAyIGNlYzFiNTU4NDUxN2IwOTc1MjdlMzRjODI1OTVkNjk3NDkzMmY1ZDcgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTAzIDgwNjEzZGNmODA5MTBkNmQwYmFlMzk3Mjk1M2UwMDUzNzFjYjE4MDcgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA0IDQ4M2YzNjJiOGVjMzA0MzgzMmE2MTE3ZjQ0NWE1MDNlODY1YTk3MDAgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA1IDMwNjMzNmExY2UyOTExNzBhZTM4MDQzNjRlNGZmZTE2ZmZiYmM3YTYgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA2IGE1NmZhYTZiOGZhMDJmZDY2NDljMTE5ZTY1ZTViZjlmNjdlMThiNmIgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA3IDE5OTFhOWFhZmY1ZTM5ODUxNTIyN2UyMzU0NTZjNjJlMjA3M2U2M2EgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA4IGI2MTQ2NDdhMzQwMDUyYjcxNzNlMDEzNDVlMjZkYmE1YWI1NmE4YTkgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA5IGViYWMyZWI3MjU1YjY1NTNiMWU3M2Q3ZGQ4YmE1OTlhNjA4NDg4YjggcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTEyIDkzODk2YTA5NDZjMmVmNTg0YTk3YzUzZGYwNTk0ODg2M2E3MjJiMDcgbGVnYWN5LXRydW5rCis4MjExMyA1Yzg0ZmNjMWQ5MDZlYWVjOWI1ZmQ0MDAzNWQ3YjUxOTIzMTlmMGNjIHB5M2sKKzgyMTE0IDZkOTc0NmNkOTM1YzYwZDdmNTk3NzRmNTJlMjRkODAwOGY4YmVhZTUgcHkzaworODIxMTUgNjU0ZTUzZTc1Y2QyYjAyY2FjMzgwMDcxMTcyMWU3NzFkMGI5ZTU1MyBweTNrCis4MjExNyBlZTM1ZjcxNTY3NjEyYjFlNTk3OGQ1Y2FmMmJlNDA5MjNmYzRlNTdmIGxlZ2FjeS10cnVuaworODIxMTggYzkxNTM4YzFhN2U2YzA3Nzg4MDhkOTk4NThjNTc3MzAyMTE5NDc3MSBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMTkgNmFjZGRiNWZlOGUyMWJlNmRhYzA4OTU4ZDczMDI1OWJmODg3YTA0MiBweTNrCis4MjEyMCBiZGVmNDU0ZjcyMTJhOGJhYmUwMGRmNmM5ZDkxYzU3NzM5ZWU1M2M4IGxlZ2FjeS10cnVuaworODIxMjEgOTIzNzM1MTM3MDMwZjJjNGM5MDcxMjliMTM3ZDE3ODEzMWJlODQ5NiBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMjIgM2YwOWNjMzhlOTdlMzBjZTMzNDFkYTM1YTJhMjc5MDg1ZTFhM2Y5YiBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMjMgOTY1YTQ0YzJiMjk3YjliNmNlMmM4NzQwZWIxODEwM2ZkYTk2ZGRhNCBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMjQgNTNkM2QwNjhiZjRjNGI5ZTcyMGRlYThlNWYxYTc4YThhMjE4NWNjYSBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMjUgOTg2M2JjODYzMGEzOWRkNzNhYTZlN2Q2OGJmNWRlZjI2ODM2YmI3NyBweTNrCis4MjEyNiBjZTIxZWI1YzE3YTVmMzAzY2MyNzliMDU0YzQwNGY3ZjcwMjg1YWRhIGxlZ2FjeS10cnVuaworODIxMjcgZDAxNGQxZjY1ODIzMTk1YzExYWZjMzFhMmVhNjdkYjJlYzVmZGU5YSBsZWdhY3ktdHJ1bmsKKzgyMTI4IGRkODgwNTdiMjdiMWNkOWY1YmU5YmRmMWFhNDI1YmFkZGExYjM5ODkgcHkzaworODIxMjkgZjNkNDVjNDQzYjEzNzllMThiZjdkOGI2ODcyZmQyMGE3Mjc2ODcxNyByZWxlYXNlMzEtbWFpbnQKKzgyMTMwIDFhODZkODQ1ZmJjNmYzOTRhZGQ2YTQyMGMyN2Y5OGE4MjUwYmNiNWQgbGVnYWN5LXRydW5rCis4MjEzMSA3M2Y4ZmFjYTI5MGJmZWI2NDBjY2ZiZTQxZWI2ODZjMDI1MjU5ZWY3IHB5M2sKKzgyMTMyIGExMDFkMDczYTVjZDFmYmM0NTRmY2I1YzJmMDU1NWQ1NjY1ZTljZDUgcmVsZWFzZTI2LW1haW50Cis4MjEzMyAxYWY5NTY3NDU4OGQxZDNhZTJjYTg4NWVkMDMyMTYwZjg5NWUyYjgzIHJlbGVhc2UzMS1tYWludAorODIxMzYgNTgxNzM5NWEwNDhlNWZmMTRmYzg1MTQ3NzA2ZWZiZjYwNWY1MDdmYSBsZWdhY3ktdHJ1bmsKKzgyMTM3IDEzZTViMGIyMDcxYTJhNDIwNjdmYjAzZmFjYzkzMTQwOWZhNmJhNTAgbGVnYWN5LXRydW5rCis4MjEzOCA3ZTRjZDcwM2ExOGI3MzMzZTg4N2I1NWM5NTcxMDQwOTIxYzcyOWQ5IHB5M2sKKzgyMTM5IDFmMTBjOTEyYzEyN2ZjMzBkZjlmZTYzMjIxNmNkZmYwNThmOTFkZmMgbGVnYWN5LXRydW5rCis4MjE0MCBkYWE5MTg4OGRhNTJhMzk2NjM1OTRkNDFiMGJmMzc4MTlhMjkyMGI3IHJlbGVhc2UzMS1tYWludAorODIxNDEgZjI2OGMyYWUwODM1ZjQyNGIzYjA3ZGRlOWM5NGNjNTQxN2MzZTAyMiByZWxlYXNlMzEtbWFpbnQKKzgyMTQyIGFmNzUxYTFkNmY0NDk0N2EyNDE0M2FlYzU1YTRhNzA3NzkyMzhhZTggbGVnYWN5LXRydW5rCis4MjE0NiAwY2Q5OWY4YzMwZTEzOTAwMDhhOTVlMTQwYzY0YzI5NjQ4OTA0YjhmIHB5M2sKKzgyMTQ3IDBhZmQ3NjBlN2M3NjUzMWIwZGZkNDFhYjMwMDU1YTE0NDhmMjBkYzQgcmVsZWFzZTMxLW1haW50Cis4MjE0OCAwYjdhY2RiZDAyZWIzNDM4NDI5NjhjNzg1OWMzYjJmMzdjNWFmYTg5IHB5M2sKKzgyMTQ5IDVhMzI1ZTBmMWZkMDEzNTdmODRiNThiNWVlZTE1MzY0YzQzNjdhYjIgbGVnYWN5LXRydW5rCis4MjE1MCA2ZTVkMjFlMjIzZDIyNDg0MTZmNjhlZWQwZDRkYWU5Y2JlYjNlODNhIGxlZ2FjeS10cnVuaworODIxNTIgNTZlZDY4YzIxNWE3MWZmOTdhNDJmZjU5NjhmNTY5NTIyYWIzYzAxMSBweTNrCis4MjE1MyA1ZDMyYjZhZmI1MmVlZWQ5MjY0ZDUyNjA1MjM3ZDYzMTE1NDM3ZWZkIHJlbGVhc2UzMS1tYWludAorODIxNTUgMTA4Zjk0ZDUzZWRiZTJhMWQwYWI4MzBiMDkyYjRiMTc0YzNhYjg5OCBsZWdhY3ktdHJ1bmsKKzgyMTU2IGQ5ZmNiYTRjYzE0NTQ1YTlhODRlNGZkZjc5ZjgwYjAzMzJhNGVhN2IgcHkzaworODIxNTcgZjkxOGQzNWVjNTZiODUyODkwMzk0OWU2MGZiMDMwMTk5N2EwMWE0OCBsZWdhY3ktdHJ1bmsKKzgyMTU4IDM3NmU4MWY5ZWJiMWQzOTFmN2M5YmEwYzZkMTU1NzZkOTc0ZGI5NjEgcmVsZWFzZTI2LW1haW50Cis4MjE1OSA5MDYwNjNjZTcxMTk2NTk1OWM5OWRiNDViZjg1MTBhZDkzZjY3NDg3IHB5M2sKKzgyMTYwIDE4NjM1Y2JkNjZlMGEzM2FkNDI5ZTU1NDFhN2ZmNzA5N2EyZmY0NjggbGVnYWN5LXRydW5rCis4MjE2MSBmNzhmY2IxYjIzZjViOGUwMDEwM2RjMTZlMDgwMmI1MWFlMDA3ZjNjIGxlZ2FjeS10cnVuaworODIxNjIgMWM2OTVjMGFhZmZiNDhjMmQyMjZjNWFhN2YyZTA0NjBmYmM2NTFhYSBweTNrCis4MjE2MyA0ZTI0ZGZlZGY4MGM1MWU1MDA5YWFiOTY0MmFlYTY4ODYxYTY2NDcwIHB5M2sKKzgyMTY0IGExMjA2YTY5ZTc3YTUzYjkwY2JkNjZjYTA0ZDQ5MmFmMmQxZTBhM2QgcmVsZWFzZTMxLW1haW50Cis4MjE2NSA1M2ExNTJiNDAwYTdlNWJjNjNjM2U3MjhkOTgyNDJlYTEyYjFhNmIwIGxlZ2FjeS10cnVuaworODIxNjYgZjE3YTJjMWUyOTE5MjhjNDYzNzE2ZTAwNDcxN2M4ZDY5YjllYjJjMiBweTNrCis4MjE2NyA0ZGQ4Y2ZmNmI3YmViMWY2ZjEwM2M0Y2NlNmUwOGQwNDZiODgwYzE2IGxlZ2FjeS10cnVuaworODIxNjggZDE1YmU4YjVjN2NhZDk2ZDRmYmYzZDA2YmQxYWE5MGQ1MGQ2YWEwZiBweTNrCis4MjE2OSBlOWZiMDQyZTQ2ZmI1MDAwNWY3N2VhMTY0MzNlNGY0MTg1ZWY0MmRjIGxlZ2FjeS10cnVuaworODIxNzAgODgzNmQyNzE2NzBiNmJiODY0ZjFhYjNjNDRkNjUyYTk5MjI2ODM3OSByZWxlYXNlMjYtbWFpbnQKKzgyMTcxIGViOTVhZjBhOTljYmIxYmEwYWJmNWRhNWE0MTk2Zjk1NTZiM2QzNmUgcHkzaworODIxNzIgMjkwN2NlOGJmYmI2MDI3NjE3YjlmYTQwOWZiNjIwNGRiYjhjNjY2ZCByZWxlYXNlMzEtbWFpbnQKKzgyMTc3IGNhNGYyZTk4NjliNjc1MmZjZDljYmFiMTEyYjExZDkyNmQ3N2M2YzkgbGVnYWN5LXRydW5rCis4MjE3OCA0MjZlZjljMzc5MTZmYWZkM2I4YjVkYTQ2Njk3MjEwZTliMjlmNmUyIHJlbGVhc2UyNi1tYWludAorODIxNzkgMDc0ODU5ZWNkYzE4NzMyMmRhOTYyMzY3ZWYwZDdhZWVkYjUxMjcwYSByZWxlYXNlMjYtbWFpbnQKKzgyMTgwIDc2YmM2YjU3NzM3M2NmNTRkZmVkZDFiMTBiMmY3NGQ0OTM1ODNjN2YgcHkzaworODIxODEgYzhkNWQxMjA1ZmU4MzBhNWIxZDZhNDIwNjAxYjYxYmFiZWQwY2ExNiBweTNrCis4MjE4MiAwZTQ2MzdlYTIwZDAwMTNhNTcwZGM5MTIwNjhkYzc0Mzg1MWMzODgwIHJlbGVhc2UzMS1tYWludAorODIxODMgNjZlZjlhNzdjOGFmZDVjYzE4NTJhNjc2MjJhYWUzMmU4MWFlYWMwNSBsZWdhY3ktdHJ1bmsKKzgyMTg0IDNjZjM1MjMxZjdkM2VkMzc1YTFhOTlkZmQ4NWI2ZmYwYmM2NjZhZjYgcHkzaworODIxODUgM2FmZTM2MWVmY2YzOGJmODg2NjVlYTcxMjMxNzQwYWY3YzE3N2Y1YSBweTNrCis4MjE4NiBjZjc5NzQxZjdhMjNmYzU1ZmU1MDM3YTc1YmFjZjNhNGVjMWMyNzdjIHB5M2sKKzgyMTg3IDk1ZDIwMzVhMTY0YjliMDVlMDU0MGQ2NmE4MzY1N2MxNGM1MTE0ZGMgcmVsZWFzZTMxLW1haW50Cis4MjE4OCA1ZjQ1NjkyNDg5ZGExZmQzNTYxZDA2MzljNjgwNGYzZDEwZGE3ZWRmIGxlZ2FjeS10cnVuaworODIxODkgY2IxYWI4ZTkxNTgxMDcwODdlMDFjM2Y5ZWEyZmU4ODVlNTNjM2U3OSBsZWdhY3ktdHJ1bmsKKzgyMTkwIDYxZmM4NGJjNGIxNDYyNjVkMGNjOWJkOTQ0NzM2OTNhZTFkY2UxMjcgcHkzaworODIxOTEgYjE3ZmNkZDM4YTViNDAyYTBhMDExOWJjYjYwYzEyMzcwOTExODI1MyBsZWdhY3ktdHJ1bmsKKzgyMTkyIDBkNDI0NTQxMmQwYjUzM2I1NTk5NWVkYTJhODM0NmYwM2QyODQxMzggcmVsZWFzZTI2LW1haW50Cis4MjE5MyBjNTUxNTdlMDNhYjk0M2Y5OGJiMmE0ZjQ2OTg2ODI1ZWY2YmFmZjgwIHB5M2sKKzgyMTk0IDQ1YmFhNDI5ZmM0OWNjZDk5MTViNmQzMjA0NTUzMTZlYWM5NWEyN2QgcHkzaworODIxOTUgM2Q2ZjBhMjA1MGUyOTI2ZjcwOTNkYTJiMWNlOTUxMjZiZGZjNTU4ZCByZWxlYXNlMzEtbWFpbnQKKzgyMjAwIDVkNTM4ZDFlNzA5OGQ5NmFhMWIxOWFjNTUxMDM2NzdkYTFiYWUwNjYgcHkzaworODIyMDEgYTM5YjUyZWUwYjFkNGQ5MmVhYjYyYWE5OWRmYWVjOTAzYmQ4Zjg0NyByZWxlYXNlMzEtbWFpbnQKKzgyMjAyIDg5Mzk3MDE0MTYwODJhMjliZTUxOTRmMGY1NWQwZjUxNWU2ZjYzNDMgcHkzaworODIyMDMgMzQ3NDRhNzYxNDNhOGU2NTZlMWI2MWE3Yzk0ZjNkM2Q2ODIzM2MxMCByZWxlYXNlMzEtbWFpbnQKKzgyMjA0IDIxZTg2ZGQzMjhmMTU3ZWM1ZmM3MzExZjc1MTlkNWQzYjNkOTcyODEgcHkzaworODIyMDUgYjhiMGExNWY4YTdjYTRlODQzMWJhOWEwYTUzZWIzODRmMmZkMzAyMCByZWxlYXNlMzEtbWFpbnQKKzgyMjA2IGJiNjIyMmE0ZWQyNDI2ZTljN2JlY2M5ODc1ZjFjMDk1YjBlMWZiYjIgcHkzaworODIyMDcgMTNiMmE1OTJjMTg2ODNlMmZkZmUwNDc2YTA4MTNiNWFkMGFiYTAwMCByZWxlYXNlMzEtbWFpbnQKKzgyMjA4IGJjYzBlODI1ZmFhMGNhODBlOTMzYTczODRkZWE4ZmM5NDkyOWMwZTEgcHkzaworODIyMDkgYzRkZDVhODg5ZWNkZmI2ODNmZDk2NTg2ZWVjNmMyZGE1MGIzOTk3NiByZWxlYXNlMzEtbWFpbnQKKzgyMjEwIDQ2YjQ4N2U0YTc1YjhjMzlmMDg4MGZkM2M5Yzg2ODNhNGM2M2U5MjIgbGVnYWN5LXRydW5rCis4MjIxMSA1NzExNWFiMDZiMjc4MDA2MTM2ZGEzOWVmNGRiNzdiNGE5MjViZjM2IHB5M2sKKzgyMjEyIDU5OGU4ZGMxOGI4M2U4OWQ2YjcwMmM5NDI1YTFmZDBhYmI5Y2I5NjIgcmVsZWFzZTI2LW1haW50Cis4MjIxMyBlZjY0MmUyNDA0N2FiNjgxNTY0OGYzYzllMmRjNzliMTExZTdiYTM1IHJlbGVhc2UzMS1tYWludAorODIyMTQgNGUwOTllNTAwNGExZTgyNWNjMjQ0ZjExMzcxMTZhNmE1NzhkNmE1NyBweTNrCis4MjIxNSBkOTZhY2M0MWM1OWYyZjQ3N2Q0YWRhNTFiNGVkYzIyOGQ0ZGRhM2Y4IHJlbGVhc2UzMS1tYWludAorODIyMjAgNjlmZGY2OGUwYjViNDYwNDExNTJiMjFiMGMwOGViOTQ3YTVlMDcxNSBweTNrCis4MjIyMSBiYTU1ODQ0YmY1YzAzMTRiNjk1NTNmMWJiNzM3YjI2ZWI5NDc2YzhjIGxlZ2FjeS10cnVuaworODIyMjIgODNjYTBlYTllZjFmYjIxNmNhZmNmNTBlNWU2YWJiZTBkZjZhNjRkMCByZWxlYXNlMjYtbWFpbnQKKzgyMjIzIDFjNWMxNDZkZTY0MjVkMDBlMDlkMGFjODM1YjlmMGQ5ZDVlNWY4MjMgcHkzaworODIyMjQgMGM4NzQ5MDc2N2JmMWM1MTY3OTI2MzZjYzdhZTIxNzRmODA2YzkwMSByZWxlYXNlMzEtbWFpbnQKKzgyMjI1IGI2NjNjZjZiYmU4YjM3MWNiYzRiMTA2ZDhmYWU5NjE3NDkyNmQ5NTMgbGVnYWN5LXRydW5rCis4MjIyNiAwOWViMzYyNmQyYWFlODExZDZlNDNiMzBlY2VlMzkzM2QzN2E1NzhiIHB5M2sKKzgyMjI3IDNkMzEwOGFjMjJiMmM2ZTU2ODU1MTk3MDZhNjhkYTUwOTIxYjljZjcgbGVnYWN5LXRydW5rCis4MjIyOCAyY2QyMjI1N2E4NmQ3YjgwNjlhNjMwZTRhNjA0ZDA2ZTllNWRjZTlkIHB5M2sKKzgyMjI5IGEzNGZkNmY4MTY1MTc5YmZhMzUyZmRmMWUxYThiYmU4MDA0N2I5ZjAgbGVnYWN5LXRydW5rCis4MjIzMCBlMjQ5OTBkMDU0NGZmZmY5ZjI0YTY3NmFjYTUwYWM1YTlhMTFmMTQxIHB5M2sKKzgyMjMxIGYyMzJjNTY5ZDIyNWQ3YzE0NzBkMjZjNmMwMWE1YWQ3YTVjOGNlYTEgcHkzaworODIyMzIgYzUxYmYzMTUzZjJjYTg5YjQwYTg4YjYwNGIyOGMwYWYxMzRmMzJiYyBweTNrCis4MjIzMyAxYmEwYWIwMmUzYjg1NzA3MzQxYWFmZjEyMjM3ZGVmZDMyN2NiMmY5IGxlZ2FjeS10cnVuaworODIyMzQgY2I2ZDliZDU1OWVmZDNhZDMzNmU1OTQ4NTVjZWExYTlmNDRlZWE4ZCBweTNrCis4MjIzNSBhNDU2YjAwYzNiNzUzYmRkOTY1ZWU3ODU4MTdiYzAwYTU3NWI0NzcwIHJlbGVhc2UzMS1tYWludAorODIyMzYgN2RjY2U2YTI4MWNlMmJmNmE1ZDQ3ZTg5OTlmMGU5MzQyMGNkNzJkZiBsZWdhY3ktdHJ1bmsKKzgyMjM3IDE1MmI0NDY0MmIyYzQxN2ViNmFlMmFiMDI0ZDNmZTZmZmNmZTQzMTggcmVsZWFzZTI2LW1haW50Cis4MjIzOCA0YWZlZjJlNDBiNjMzMjQ5YmQ2MGMzNjU2YjRlZTUzZjY2YWVhMWRlIHB5M2sKKzgyMjM5IDIxNTUyYTQ4ZWJkMTk2OGRiOTE1OGM0OTVmZTQ5YmU1NzcwYTUzMjQgcmVsZWFzZTMxLW1haW50Cis4MjI0MiAyZjZmZWQ2MDYxM2UxMmM4ZTkyMTEzMzQwZWM2YWM1YzFiMGY0N2NhIGxlZ2FjeS10cnVuaworODIyNDMgN2IwNGQ5YTY5OGFlZTY3NmMyYjA1OGRiZTliYTI1NDc2M2YxM2Y1NiByZWxlYXNlMjYtbWFpbnQKKzgyMjQ0IGQxNzEyNzZlZDc2ZGE3MjMzNGI3ODAwNjJmZDJhZmRkMTVlM2QyMjAgcHkzaworODIyNDUgMWRjYWU1MmM0OTVjODQ2YzFjZmNkNmQ4ZGI5ZDExMzJiNDQ1NDk3NCByZWxlYXNlMzEtbWFpbnQKKzgyMjQ2IDI5ZTUwOTc5M2QzYzQ4MThhOGYwYzU3MGJmNjk1ZDkwNTM1NWE0OGIgbGVnYWN5LXRydW5rCis4MjI0NyBhZGFmZWU5NTg5ZTQ0MjlhZGFiMDdmZjJjY2E1MWZmMGJkMzBjYzEyIHB5M2sKKzgyMjQ4IGVkODliMWFhZGM5M2QyZDFkYTc5MDg5MzU1ODkzODNhNDBkNDcyOWYgbGVnYWN5LXRydW5rCis4MjI0OSBjOTEyYjViMjRjOGYyZDFiMjRhNzA3NDVmMzI2YTE4NGM3MDljMzliIHJlbGVhc2UyNi1tYWludAorODIyNTAgMDE0ZTdjMDBkYzI4MDU4MzFmMmVmMjRmMTQ2OTlhZDI1YmUxYzdlNSByZWxlYXNlMjYtbWFpbnQKKzgyMjUxIDM5NmViNjYwZWU5YjQwYmQ5ZWYyNTg1MmY1MDIzMDdlZmU2ZjNiZTAgbGVnYWN5LXRydW5rCis4MjI1MiAzNTJkZGEwNzcwN2JmOTI4ZDNkYjllOWNlNGM4ZDhmMWNiZDhmZDIxIHB5M2sKKzgyMjUzIGEzOWNlYjZjZWRlMzE1ZDgzMzU4MjMzNzdkMmFiMzI1YTIwNDk2YzYgcmVsZWFzZTMxLW1haW50Cis4MjI1NCA0NTZkNmM1ZDI2ZGM2ZTZlNWVmNjU5Njc1MDFhMjBkNjU4YWYzNGNkIHJlbGVhc2UyNi1tYWludAorODIyNTUgN2ZkM2Y2ZWFmNjQ5NWMzMDdkZWI0NTk2ODMzMDg3YzFlYWJjZGMyMyBweTNrCis4MjI1NiA3MDY2ODhmZTQ1OTM1NjczZjk1MzQ0OGI3OGE3YjIyY2ZjYzMxNWY3IHJlbGVhc2UzMS1tYWludAorODIyNTcgNWZiM2YxYTc0NzI2YTZiODNkOWFhYjRkYzA3M2Y4MWZlMTIxNWI3MyByZWxlYXNlMjYtbWFpbnQKKzgyMjU4IGY2ZDVlYTc2OTI3Mjc5NjM0MzE4MzAyOWU0MmY5NjQyNjdmYzAzODAgcmVsZWFzZTMxLW1haW50Cis4MjI1OSBlNDc1Mzg1NWVjMDFiYmU1MTYxNDcyMjdiNTE3ZjdmODY1MWE1OTM1IHB5M2sKKzgyMjYyIDZlYTZkODUxNTBiMTJiODFiNzkzNDhhOTEzOGU0NmE4YTk5ZjhhNDQgcHkzaworODIyNjMgNTQ3ZTY1ZGI0ZDM4ODJlZmViOTkzMzdkY2MyNGZkOWU1ZDJmOTg0OCBweTNrCis4MjI2NCA2YjQ1NDM3N2FmZmVkNThmNzc3ZDUwNjBjZGJkOGFhNTNhYzgzNTI2IGxlZ2FjeS10cnVuaworODIyNjUgODE1Mjg0YzlkNzE5MTU0ZGEzNzkzMjBhMTFhZGE5ZGYwMTE5M2M0YiBsZWdhY3ktdHJ1bmsKKzgyMjY2IDY3NmE0ODBlZmMwOGNiZGE0Y2U4NTdiOTUxNzhlYjg5MjdhYzJmNDMgbGVnYWN5LXRydW5rCis4MjI2NyBmNzliZTc5ODEzMGYyYjFjZmM4NWIyZmJmODkxYWU2ODNkYTZkOGE2IGxlZ2FjeS10cnVuaworODIyNjggZWUxZWQ4MGQ3OTYzMzkxNzk1Y2MyNTE1N2I0ZTMyODYwZGY4MDA2YiByZWxlYXNlMzEtbWFpbnQKKzgyMjY5IDFhM2Q4ZWMwYzVmYThhYjY1ZGVlMTU1NGI0M2Q5ODcwMDY2NTY2YTggcHkzaworODIyNzAgNWIzOGI1MjM0ZGVkYjcyYWRjNzQ2ZDUyNjg0NGFkNzUxZDM2YzAwZiBweTNrCis4MjI3MSAwMjg0MmVjZDhlNWI5NGFkYThiYWMzYmQ2MjI5M2FmYzU3ZWQ3ZjdlIGxlZ2FjeS10cnVuaworODIyNzIgYTNkZDM5ZTM2YzlkZjE5YzYwMGZmNWY4MWE5ZmNkM2QyZDQzZDdiOCBsZWdhY3ktdHJ1bmsKKzgyMjczIGYxMTc0ZTc5ZjdmNDNlNzU5N2Y2YjczYzUxMzNmYTAzMTE0NDlhMDAgcHkzaworODIyNzQgZDNjNzVjMmY0NmJlMjZiYmM2OWVmMDlmYzJmNjgxYWIxYjM0ZjY5MSByZWxlYXNlMjYtbWFpbnQKKzgyMjc1IDAyMDQ0NTczZWVlYzFlYWEzM2MzYWE0NjczMGI4ZjU5ZjQzY2EwNzQgcmVsZWFzZTMxLW1haW50Cis4MjI3NiA2YjAzMTI0OTM3NTU5ZTcwOWI0ZDgyZWExYTdkYThjYjFkOTY3M2RiIGxlZ2FjeS10cnVuaworODIyNzcgYzUwNTYzODI0MDk0NDQ5YTc4MDI5NTRkOTY1NzJhNzk0YWE3YTRiZiByZWxlYXNlMjYtbWFpbnQKKzgyMjc4IGM4OGY3NjAwYmIxN2JhZTcwODU4MTZlMDQ0ZWI0MWMzZDZjN2FkOWIgcHkzaworODIyNzkgZjUwNWRmMDNhN2Q3Y2JmNzM5NjEyZDcyNDdkYWQxOWFhNDE1YTdhNyByZWxlYXNlMzEtbWFpbnQKKzgyMjgwIGIwNGNlZjU1ZmRmNDNjYzZjMjI4YzNhNjE1OWIwMWZjOGRjNjg4YjUgcmVsZWFzZTI2LW1haW50Cis4MjI4MSA3ZDkyODAyOWJjMGU5ZjM2MDY3ZTdjMGQ3ZmI1YjllMzM3N2EzYTg2IHB5M2sKKzgyMjgyIGVlZTI1NzkyODMwMDFhOTgwNDk1NjhmMmVkNGI3N2NkZjFkNDMyYzUgcmVsZWFzZTMxLW1haW50Cis4MjI4MyBkY2Y5YmNkOWExZTA4MTA0N2RkZjNmMDNiMmY5ZTIwZjhiOWYzZmY3IHB5M2sKKzgyMjg0IGExODMyM2ZiYWY5NThmYTQ3YTE1MzAwNDNlMTEwMTJkYzdlMjFmNWIgbGVnYWN5LXRydW5rCis4MjI4NSBkZWVkMTU2ZDMzZDgwNmYwZGRjMzY4YmQ3NDBkOTgxMjBjNTI0Mjc1IHJlbGVhc2UyNi1tYWludAorODIyODYgMGJlMjQzOWJiY2Q4MDE4NWZlY2UyMWZhMzBkM2ViZTk1MWYzMDBiYSBweTNrCis4MjI4NyBlNjQ3NDZlMDJlNDEwMTAwZjI2ZTJiOGExMmUxN2NmMDc1NDhhYjllIHJlbGVhc2UzMS1tYWludAorODIyODggMjgxODI4M2MxNDlhMmY0N2JlMzgwYmQyZDk4OGY2Y2Y0ZDM1MDFiNCBweTNrCis4MjI4OSA5MzNhMzU1NmY1NjMzNTg4ZmIxMmIzNjg4ZDlmMWM3ZjNlZDAyOGM5IHB5M2sKKzgyMjkwIGVjMGZkNWE2YmI0NTZmNzg3ZTA0MjdlYjBiNTFjZWZhYmM3OTE2MjcgcHkzaworODIyOTEgY2I2ZjNhNDQxYWMyZGUxNmUxZWRmZDZkYWNjNjgxZWE0ZjljZjA1NCBweTNrCis4MjI5MiAyZjM1MDFmOGQ0NTZmZGZkNDBjZGEwYmMyOTA3MjlhZGE0M2E2NjkxIHB5M2sKKzgyMjkzIDM1OGQ4NmE1NzJmYjE4OWEyNDM1MDllODY1OTVmZWE0MTc2NmI4YzcgcHkzaworODIyOTQgY2JkNTEzOWU4ZmU0ODk3NWNkYmE5ZDMyNTJjOWQ3M2I2YTg2NGZlNCBweTNrCis4MjI5NSAwODk3M2U2MDhhMmE0NDBmNWU3NWFkNmJkYWQ5NGIzNmU4YmExYzBlIHB5M2sKKzgyMjk2IDA1NTU4ODRlOTg2MjM0YjgzMjA5M2E3MzllZWI3MDYxNDdjMWNiYzIgcHkzaworODIyOTcgODIwZjNiNmNiNTUxMTg3NDk3NzFmZDNjYTlkYjI0NGIyZmNlMmVlOCBweTNrCis4MjI5OCA1MDRjNDk5ZThjOTU4MmQ1YjE3ZGI2NmE3MzFiMjY2MDgyNWUzMjEyIHB5M2sKKzgyMjk5IDlmMjI5NDg3NDkxMGNlZGRiYjFmZTVmYWE2MTczZTUwYWI5ZDEzNTggcHkzaworODIzMDAgOGE3Y2NiOTYxODE0NTkxZjliYjg3ODY0N2Q5NGMxZjU2MDBhMmVkZCBweTNrCis4MjMwMSA4ZGY2MTkyNTkwNTY0ZTY1ZTY3YTY0ZmMwNjFhMmQyM2ZhMjk2OTIyIHB5M2sKKzgyMzAyIDMyNjUxZWU3NzllZDAwY2YxNzIwNzVlMWFlM2ExNTAwOTc3YWEzNGIgcHkzaworODIzMDMgMzY3MGM2NmVlMTQ5YTVjMzgzOTk2YjkyNzMxZDkwNDhjZWJkNWQ1NCBsZWdhY3ktdHJ1bmsKKzgyMzA0IDFkMTc5N2FmNDYyMjBiNTcyMDUyZDEwYTFlYmExNjM0NGY5MGY1MDQgcHkzaworODIzMDUgYWEyNjJjNWIxOGI1MzI2ZGJhMTJjZjJiZTg5MzM4ZDhiYjlkNjhjNCBweTNrCis4MjMwNiA5MzUwNzVkMzM1ZmU4YmU3YmJiOGVlMzc1ZDg2Y2Y1YTI0ZjMzOTlkIHB5M2sKKzgyMzA3IDQ2ZmVjNzdmOTVlOGQxNWVkMDI0NzY5MjZmY2FjYmQ1NjhkNTRhMmUgcHkzaworODIzMDggNmVjODI1YzliM2I1MDFmMmFjMTI4ODMyZGI3M2YyZjRkODRlN2I2ZSBweTNrCis4MjMwOSAyZTM3NjAzY2EwNGRhMjZiNDEzNzE1YmQ4OWRjMmU4NTJiMGY1MmMwIHB5M2sKKzgyMzEwIDRhYTViOTU4OWM0MjEyMDkyMzgyYzFhM2Q5NjdmNGIyMTU1NTE4NDEgcHkzaworODIzMTEgYTg1N2RkNDA3OTY0ODJmYWY0MmI4MTZhYTM5ZGIyODVhZTExZTgxYyBweTNrCis4MjMxMiAyYmMwODAwMGE4NTcyN2UxMGVhOTQ4MzQxZDA0M2E1YWRjYTM5MmVhIHB5M2sKKzgyMzEzIGRkMzBiYzVkMTg0ZTkxNDZhYThlNDViNGZiMjc0Zjg5YTcxZTM5ZjcgcHkzaworODIzMTQgNDg5M2U0MDA5ZjU2NzEyNDhiODZiMGQxOWY3NGM5ODkxYzM4ZGI3YyBweTNrCis4MjMxNSA5ZjY5OWU1MTRhNjJjMjdlNTI4NjgzZmVjZDEwNDliYjMxY2JkNDkwIHB5M2sKKzgyMzE2IGE5Y2VkNDIzZGFjZTc1YTI3MzJhNTgxMDNjYTBmODFkOTBjODI3MGYgcHkzaworODIzMTcgNDdlMjlhNWMzZGRmZmYyNTBkZTM2M2M1MzE5ZGM1OTRhZjk2NGRmYSBsZWdhY3ktdHJ1bmsKKzgyMzE4IDNiZGNkZWNlYTU2MTBlMjZmNzUzNGZhOTYyMTY2ZmE5ZDg5YzcyOTEgcHkzaworODIzMjAgYjA3YjJjOTU0YTgwNzdmNGM5YWQzZmM0ODkzMTRlZDg1NzRmMmNhMSBweTNrCis4MjMyMSBkN2UzNDIzYzlkYTgyMDFiYjRiMmFkM2UyM2U5MjQ0MzBhZDAzYWUzIHB5M2sKKzgyMzIyIGU0MmJlNmU2YWMyZDczNjQyZDNmMDJhOWYzYTFmZWZkZDljMTczMjAgbGVnYWN5LXRydW5rCis4MjMyMyBmZDFhMTEyOTNlNjJlMWNiNGJjMjAxNzliODQ2NDk5ZDk0MGQ1YWNlIHJlbGVhc2UyNi1tYWludAorODIzMjQgOWYwMTg4ZTRmODFhODg2MjcwOTRmZTFiYTNlNjNiOGU0OThmYTIzMCBsZWdhY3ktdHJ1bmsKKzgyMzI1IDIwMDNiNzBhOWJhZGRiNjUxMGU4ZmU5OTE0YjRhOWRkMTE1MjAyMDEgcmVsZWFzZTI2LW1haW50Cis4MjMyNiBlYWM2NGE0NjEwZjEyMjYyYjZiNTViMTQzYjQ4ZGFmNDdlMzA4ZjE2IHB5M2sKKzgyMzI3IGI4ZDM2NWRhMTc5ODk0MWI3NTMxMjVlZDJiYjU4Zjk1MWMzYTJlNGIgcmVsZWFzZTMxLW1haW50Cis4MjMyOCAyOGY5YTAwMGEzNzlkNGM1ZTEwOGFmNTk4ZjExMDNlOGZiZGYwNTE1IHB5M2sKKzgyMzI5IDNjZDE2YWM1MTg3NzE1M2ViMmZkODY1MWNlZDUxMzZmMTBiZmI2MDQgcmVsZWFzZTMxLW1haW50Cis4MjMzMCBjMGE0OWI2YTZmYjExZDg4MDY4MDk2YTg5ZGU5ZDg4MDk1YmNkODU5IGxlZ2FjeS10cnVuaworODIzMzEgZjgxNmI5OTFlNWIzMWNhNzcyMWU4YzI3MTBlOTQ1ZDM3ZGUzOWFmMiBweTNrCis4MjMzMiA4ODI3NjE3YTA3ZGM5MWY2ZTJkNjQzNjg1ZDcyMmM5NDU2YjZkYjI0IGxlZ2FjeS10cnVuaworODIzMzMgZDcxNDExYTBhNDczMTZhZWIzOGMxZWM5YThkMTQwMzY3Y2Y2ZjAxOCBweTNrCis4MjMzNCAyZGNmNDdiNTk0M2Y0ZWU0ZjVkOTMxNjliNjExMGUxZWM1NGE2YTQzIGxlZ2FjeS10cnVuaworODIzMzUgMzdjZTVhZGFlOGI5Yjg4ZTk3NGE1ZDlhOTg2YzljYjBkOTVjZGNmMCByZWxlYXNlMjYtbWFpbnQKKzgyMzM2IDc0NjU3OWE5ZWFkNzA1Y2U3ZmNkZGFkNTg4YzUzYTFhZDczYTA2ZDAgcHkzaworODIzMzcgMjViNzIyMWRkYTY5MWJjNWFiMzRlNWFhZTk1NWU3MTRmOWVkZjFlMCByZWxlYXNlMzEtbWFpbnQKKzgyMzM4IDNjYjNjZTdkY2FiODUwZjhmMTVjZGI3ZGZmYmUyNTdhYzVjMDdjMDAgbGVnYWN5LXRydW5rCis4MjM0MCAwMjkwNGM2ZWU1MDI5NzYxMTNkMmE2YTk0NTEzNGU4N2E2YzM5ZjQ0IGxlZ2FjeS10cnVuaworODIzNDEgMjUyMGI4MThkYTA1MjE5M2Q4ZmEwZjczNTBhODZjYTQzMDM1Nzc3ZCBsZWdhY3ktdHJ1bmsKKzgyMzQyIGM4YmRiMzJiMDRhYWFjYWFiMmM5OTlkZDI1YjcxODQ2NzYxNjM3ODEgcHkzaworODIzNDMgNjhiNjcwZjM2MTRlOTBiNDFkZGZiYmE3ZGMxMjhkNTk1NTgwMjQ5NSBweTNrCis4MjM0NCBjZTAzMjUyNzZkMmFmYWYyNDAzODFiMjJkNDI3OTYxMmRjOTBlYjM5IHJlbGVhc2UzMS1tYWludAorODIzNDUgOWNhOTUyNGQzZTU3OGE0MWFkNTg0MmIyZDUyYzk2N2UwNDM4Mzc1OCBsZWdhY3ktdHJ1bmsKKzgyMzQ2IDY5ZjZkMjEzMDI4MTI0YzczMDk5NWY3ZWI5YzU3NTE0MzkzNmZjYjIgcHkzaworODIzNDcgYjgxN2U3MTY1MTZlZGYwM2JmODYzNWQ3NjQ2MTUyNzlkYjgwYWFkOCBweTNrCis4MjM0OSA5NWY4YjI1ZTUzY2UwOWU0ZWU4MTMxZGIzYjU4NTEzZjU3NDQ1OGI4IHB5M2sKKzgyMzUxIDJjZjRjYTFlZDZkNmNkNmYzYWVkZDA2ZGE3ODVmNzczZTkwZmMwNmIgcHkzaworODIzNTIgYWNkODY0ODg2NWFhYzVlMWYzY2U3Njg3Y2RiNjVhZjM5Njg3NDBhMiByZWxlYXNlMzEtbWFpbnQKKzgyMzU0IGRmYmRiOThjOTJlN2YxYjdmM2Y2ZDc3M2M2YmU1YTdlZDE2MmJiZGIgcHkzaworODIzNTUgMGUxNmRkZDQ0MTU3OGViZGZjY2Q3OTEwMWY1ZWE1ZDIwMTI0ODVhYSByZWxlYXNlMzEtbWFpbnQKKzgyMzU2IDJhOGM2OGJhMDAwYmE0ZjIwNzVkOWY2OTNkYzg5NzEwODE1NjY0NjkgbGVnYWN5LXRydW5rCis4MjM1NyBlYmZiNmJjMDgyZDkyZWQ5YTQ5OTRjMDE0NzkzZGE3NTk4MzU3MThjIHB5M2sKKzgyMzU4IGE0ZTFjNTZiZTUzMmNlNThmNTUwYWZjZGQ0YjBkYWNmYWZhYjUxYzggcHkzaworODIzNTkgMmY5MDUxZmU2YWQ5YzY1MTUyMGY0YTFhNmUzMmZkNDNhZDNjOTFlMyBweTNrCis4MjM2MCBmZTQ0ODI4ZWE3ZWRkZTFkZWI1NzY5MTQ5ZjU0MTllZGQ2ZTI5N2YzIHB5M2sKKzgyMzYxIGM1MTkyOTIzM2UxOTU0OWYxMDQwMjEzZTFlZDU3NjkyNDJhZTY5ODcgcmVsZWFzZTI2LW1haW50Cis4MjM2MyAxNGY5NGMwMWEwMDJhNTgxMTk3ZDNlODg5NGNjMThmY2M1ZGUwMDlmIGxlZ2FjeS10cnVuaworODIzNjQgZjdiNTQzNTI3NzFkMmNmYmI3YzIwODQ5NmRmZjE1ZWM1NTk3ZTNmZiByZWxlYXNlMjYtbWFpbnQKKzgyMzY1IGI3MmMzM2Y0OTZhYzhlMWQ3NTc3MzA2OTVlOTI5ODYyMjA4ZmQ2MzggcHkzaworODIzNjcgNzE5OWZmMzg2ZjllYzdjZjJjOWFiYmNhYTg2MDJiN2MxMDgyN2VmNiBsZWdhY3ktdHJ1bmsKKzgyMzY4IDJmOGQxNzYyNmNkZmY0NGQ1Y2NhMDFlODNhNmJiMzA1YzhhNTc4OGYgbGVnYWN5LXRydW5rCis4MjM2OSAxN2YxN2RjNmQ0OGJjNGViOWY4MGFhMDQ1MTZhNjQ0NzJlZjgyMjAzIHJlbGVhc2UyNi1tYWludAorODIzNzAgMDcxMzFmMDhjM2RlMTk1YzAzODM1OTFjMzQ1YjRhYTMyM2VlMWMwYiBweTNrCis4MjM3MSAyOTY0MjQzNzQ4MzYxNjU2ZDkwMTA2ODY3MDM1ODZiYzk0YTZmMGJmIHB5M2sKKzgyMzczIDllMjkxYWMwN2M1YmNmNTcyNTBmNTNlZDQ1YzZmYTkwZTM2ZmM0NWYgcHkzaworODIzNzQgMGZlOTc5MzI2NDJlNzdiYTdlNDJkNDM1OWRhNzMxZTc3MzkwMjNiMCByZWxlYXNlMzEtbWFpbnQKKzgyMzc1IDUwNzI1OTBiNGRmZGM0ZjAzZTcwMmUwNTNlM2QxYzY3OWRkYzdhOGEgcHkzaworODIzNzYgMjkwYmQwYzE1MGE2NDU4ZDgxNzJhMTQwOTE5N2VmMTQ5OGJmNTY4ZSBweTNrCis4MjM3NyAxNTgxNjZlZjZmMDZkMDE0ZmRlMDg5OTVkZmFlN2M3Zjg1NTYyMmU3IHB5M2sKKzgyMzc4IGE5MmFjNzU3MDExODNhYTE1ZmUyOTQ2NjhhMjRhYzI4ZTE1MDFiYjEgcmVsZWFzZTMxLW1haW50Cis4MjM3OSBiNWRmYTMzOTQ5OWMyODQ0MTRjNjA0NzU2YWY1MWI1OWRkN2M3YTZkIGxlZ2FjeS10cnVuaworODIzODAgYjg4ZGE0Zjc3ZjY4NmM3NWQzNDExMTA3MDRmZjJhNGQzNjRjMTQwZCByZWxlYXNlMjYtbWFpbnQKKzgyMzgxIGZjYWU5NTlhMmZhYjUyZjQwNmU3ZTcyMWI1Y2RhNmY0NmViZTNiOTUgcHkzaworODIzODIgMzIxZWRiYTVmNzk1YmY2YTAwZmVkNmE2YjYxNWJmYzhlMjc1ZTQ1ZCByZWxlYXNlMzEtbWFpbnQKKzgyMzgzIDI1ZmJmMDIzMTAyZDliOTBjNjdlNDhhNDJjNGU0NmYxNmIwMTE2NzYgcHkzaworODIzODQgZTZiYjk5MGFjOWY2ODcwMjA0YmNjNjAyMTAyOGJmYTc2YTZiYzJkOCBweTNrCis4MjM4NiA0ZmNlMjVhYmZkZDgyZmJkMDUxYmIxMjRjNjA3OWQ4YjM4NjNhNjA2IHB5M2sKKzgyMzg3IDE2ZDg4ZWNhM2MzM2ExOWRmMjVkZDY1ZjMyMmRiMjBhMjE4ZjYxYmEgcHkzaworODIzODkgZDM0Y2UwZGU5NDFjYTg5YTRjMzNkNTkzYzU1MWZiZTg2YzllZjBkMiByZWxlYXNlMzEtbWFpbnQKKzgyMzkwIGU2ZjFiM2QxMDQwYTQ3NWEwNDc2NTIxYmFiZjE1ZWU0Mjg5YjMzNDggcmVsZWFzZTMxLW1haW50Cis4MjM5MSAyYmM1NGRhNGI4MmMxYWI0YzI5ZTQ3MGQ3MmE2ZmY2ODliYmZiZTZhIHB5M2sKKzgyMzkyIDMwODQzYmUyZTExYTI2YzM0NTFlMTYwMTRjM2E3NTQxYjg5NTZmOGQgcHkzaworODIzOTMgMDQzZWYwNGY2NGQyMmM3YjY5OTg4MzRkYmE2MDEzZWYyYzY0M2EzOSBweTNrCis4MjM5NCAzMGUxZDhkMDgxMDU3ODBmMzNmMmFjNGZiZjFiYTczYWRjYWE5OWMwIHB5M2sKKzgyMzk5IDlkY2M5M2ZlNzUyODJlZGY4ZDJkODJmN2E0ODExOWI1NzFjZDVhYWUgbGVnYWN5LXRydW5rCis4MjQwMCBjNWFmZTk1NTI3NzkzYzgyODg0NmIzODZhZTQwODNmMGU5MmE5ZWIwIGxlZ2FjeS10cnVuaworODI0MDEgOWY1NDMwZTQ3NzcwMDdlM2U3M2NiNTA1ZTcyYzU0NjU0ZGMzYjhhOCByZWxlYXNlMjYtbWFpbnQKKzgyNDAyIDAxYzk1ODFjN2UzZjQ5NGRjMGYwMzIzY2MxMDU3ZWI4YmMwOWQxYmIgcHkzaworODI0MDMgZTljOGE5NjU4NGQ0MzRlMTA2MjNjZjRlMzBjMWI5ZjBiZmU4NGIwNyBsZWdhY3ktdHJ1bmsKKzgyNDA0IDc2YmMyNTVkMjlmZGY0ZTNiZTcwZTA2ODc3ZmQwNWUzODI3NWJiMWQgbGVnYWN5LXRydW5rCis4MjQwNSBkYjZmZDQwNWU1OTRmZDZjMzI5ODI2MzQ1MDM3MWYxNTlhOGZhODYxIHB5M2sKKzgyNDA2IDgxNmNkODU4ZDMzMWE4ZDUwNjY0MzljYzZlZTg3MzlhZTk3MDFmM2QgcmVsZWFzZTI2LW1haW50Cis4MjQwNyAzZTg3OGUyNjliMDllZTViMWQwNDYxYWVkNGY0ZjdjYzQ4YTczOGIwIHB5M2sKKzgyNDA4IDNhOTNhMDZlNWUzMGNkZmE4OTRiNzU3ZWZlZmIzN2Q3NzI3YWNhYjYgcmVsZWFzZTMxLW1haW50Cis4MjQwOSBiMDQ2MTZiZTdmMTRkNzA2MDQ0N2YwMzNkNDg2NjM0ZDI0NGQ5OTUwIGxlZ2FjeS10cnVuaworODI0MTAgY2U4MTQyMmVlMzViMzEwNThlODgwNGZjY2VkYTg1OTVkZWE5Nzc3MyBweTNrCis4MjQxMyBlMGQ1YTRhNDkxMTJhMjhlMTFkMDc5OTc4OTdhMDc0MTYxODUyMmI4IHB5M2sKKzgyNDE1IDhiOGYzNjk5NDFjMWVkYjQyODkwNmQ1Mjc5YmZlMzM0NmNjM2YwZjggbGVnYWN5LXRydW5rCis4MjQxNiAzMTg1YjA1NWY5Mzc2NmQyYWNmNGZiODNlYTg3MWIwNTRlOWM2ZjhhIHB5M2sKKzgyNDE3IGE4OWEzZDkyZjhhZWFkZmI4MjVjNTQzNjZkYzkyZjNhOTU0OTJlNzQgcHkzaworODI0MTggYTlhMjY3YTgxZGFjNDIzYWQ1OGJkNjQ1YTBlMGRhZDNiZWVkMjZkNyByZWxlYXNlMjYtbWFpbnQKKzgyNDIwIGM1M2UxMzVhMDhiNjkwYTkwNDU3MjdlYzM5NzdiNWQwMGRhMjA5NTUgbGVnYWN5LXRydW5rCis4MjQyMSBhOTI3MTliNDllNWViYWU4NWYwM2JiN2EzYTlhYTdjNzVmZjA4NDAxIHJlbGVhc2UyNi1tYWludAorODI0MjIgZmExMWQyYjRmOThhMmVlYjExNjFlNjdmMzhiZGVlN2E5MDcwYjQ2MyBweTNrCis4MjQyMyAxM2MwNmE2ZjQ2NzY3NmU2ZGQ5MzBlMzVhYzg4Mjg5ZTRiNGRiODMwIHJlbGVhc2UzMS1tYWludAorODI0MjkgNDNmMDZjYTM2YWIzMGQxNjhhMGNmMDdkYmFlYjQzNmRlZWEwOTNmMSBsZWdhY3ktdHJ1bmsKKzgyNDMwIGZlOTU1M2E2Zjc5OGQ3MTE5Mzg2YmU2NmU5MmQ1ZmI0NDBmOGQyY2QgcHkzaworODI0MzEgNmQwZGVkYjNhMjRlYzA3Njc0NDdlMWI5OTliYmUxZmJiNDMyNjZjMSByZWxlYXNlMjYtbWFpbnQKKzgyNDMzIGJhOWNmMGRmMjFiMDA5OTA3MmYxYTNhYzgwNzQzZmU5YmU2YmQwZWQgbGVnYWN5LXRydW5rCis4MjQzNCBmZWY2MzQ4YzJkZDZjZjIxYjUxMzdmMThhOTc1ZTI2MzFmN2U3NzhjIHB5M2sKKzgyNDM3IDRiMGM4ODI3NWYzYjY0MjU4NTM5NDQxMTg0ZTljMzY2OWFmOTg5ZjQgcHkzaworODI0MzggMzUzNzBkNzIzNmM5YzZhZTYyYjY0MjA1MDU4OGQ4MmEwOThjNzZjZiBweTNrCis4MjQzOSAxNzg2NjI4ZWE2ZmY2NDEwZGI5MDNlZjI0ZWYxMjRlZDU4NjZlNzlhIGxlZ2FjeS10cnVuaworODI0NDAgZTE3YjFjYjFiNjFjOWNjNjNmNjBmYzFlYzljMDljNGE3MDA3YjI4NSBweTNrCis4MjQ0MSBmNDMwYTg5MTk2YzlhZmVmM2RlZjc4YTI5NzVkM2E5MmUyNDFlOTU4IGxlZ2FjeS10cnVuaworODI0NDIgMzMwNGRjNTZkZGE0NDA3ZjhjYzY1Mjg4NzA4ZDg4OWFmYjY3YTQ3NSBweTNrCis4MjQ0MyBiM2JmYWJjMDQ0N2M1MThhN2Y4YjZiNTNlZTgwM2U5MWFiMDJhZDIzIHB5M2sKKzgyNDQ0IDM2YWJkNzU1NGJhZDhjY2EyNzY3MzZkZGY0ZjRjM2I2MWQ1ZTI0MmQgcmVsZWFzZTI2LW1haW50Cis4MjQ0NSA4YTY4OWYyOTc5NzBjOTVjNDA2OWNhOWY5MTA2YWY2ZTI2OTk3OTM4IHJlbGVhc2UzMS1tYWludAorODI0NDYgZWY2Nzk4YTk5ZWFkMmViNjcwMzNhOTc4N2I4M2YyOThmMzQ0NGI1NiBsZWdhY3ktdHJ1bmsKKzgyNDQ3IGI1NDBhNjEyZjYwMTcwMTVlYmM1OTVlNjBlMzQ0YWZlYTljNzBiYTcgbGVnYWN5LXRydW5rCis4MjQ0OCA3ZjE0OTZlNDExMjQ3MzhkZWY0YTY3OGZmYmY2ZWFjMWFiNmQ2ZDM1IHB5M2sKKzgyNDQ5IGU4MzRjNWQzYTlhMzNlMzA0NTg2ZjA5MWIxMTlhMTkwNThiYjVkYjcgcmVsZWFzZTI2LW1haW50Cis4MjQ1MCBhZWM0MjIxMTFjZGVhMzU3MzdmMDliOWNmMDNmMzAxYjA3YTZmOGEwIHJlbGVhc2UzMS1tYWludAorODI0NTEgZjFiYTRlNmQ2YzEyMzE3MzQyMWRmYzMwYThhOWE3MDBiMzY5OWE4OSByZWxlYXNlMjYtbWFpbnQKKzgyNDUyIDYxYWQ2ODk0ZWQ2YWE3NmMwYTM5OTdjODVlOWRhOGE5NzcxNWY1YjAgcHkzaworODI0NTMgY2I3ODAwYzY0OTEyM2NjNzQzMGFlMzEyYWE2NjJmYjVhNTlmYWY2ZCByZWxlYXNlMzEtbWFpbnQKKzgyNDU1IGRlMTZhOTE1YmQyYWM3ZDU4N2QyMGMzMzcwNmExNjY1OGMzNTAyMDQgbGVnYWN5LXRydW5rCis4MjQ1NiA1MjliMjE3NTMzOWJmMDYxNTc3OWZmMmNiODRlN2MzOTcwN2EzODhjIHB5M2sKKzgyNDU3IDQzYzA0NzExYWFjYmNiYWI1MjRhZGVjZmVhODRkY2RjNTU5MzI5MDMgbGVnYWN5LXRydW5rCis4MjQ1OCAzMTQ0M2NmNGRlZjJmMmMxYjU2NGM0YjdlODE2ZDRlYjQ4OTZlZTg4IHJlbGVhc2UyNi1tYWludAorODI0NTkgZmExNmFjYjJmZmRkNjE4NWE2M2FkYmRkOWJjZjEzN2FjNjcyZTZkZSBsZWdhY3ktdHJ1bmsKKzgyNDYwIGM3MmZkOGEyYWUwMWQwNjZiMGZhOGU4Y2RjY2JmYWZjYTcxYTM0YjYgcmVsZWFzZTI2LW1haW50Cis4MjQ2MSAxZWIzNmYxNjljOTcyOGZmYzcwMzczOWY0MGJhNGI0YzZmNmJmNmM4IGxlZ2FjeS10cnVuaworODI0NjIgZDNmYTE5OWI0YTE3NDY2ZDlkMzU2ZWFhNmU1MmViZDRlYzM4ZjM5OCBweTNrCis4MjQ2MyA4YmY2ZDhiZWFmZTFkNTRlOGM3MDEzZjY2M2U4Yzg3NjZlYzU5NjIxIHJlbGVhc2UzMS1tYWludAorODI0NjQgZjI3MWUxZDBlOWM0NDI0OTU0YjFjOGY3NmE0YjdiZDdjMmE0ZjZhZSBweTNrCis4MjQ2NSBkODMxZmMwYzI2MzQyYzMzY2Q3NTNiNDAyNGMxNWE3NzY0OThmMzUwIHB5M2sKKzgyNDY2IGI4YjExZDQzNDk0MDYxZDQyZjRmNmExOTEwYmJiNmI4NjM5ZjhjZGMgbGVnYWN5LXRydW5rCis4MjQ2NyBiMGJlODlmNzBmZjliNzZlZGMwZGI0MWNhMjA4ZDkxY2Y2ZjcwYjM2IHB5M2sKKzgyNDY4IDk5MDBhOTk4YjQ2MGNlZDAwYzVmMjQyZDI4ZDJhOGUzZGU5YTY3MWMgcHkzaworODI0NjkgOWRjNWYzODVmNDk0MmM0Nzk1ZGNkNGVjMDZhZTdjM2MxNjIxMTllYiByZWxlYXNlMzEtbWFpbnQKKzgyNDcwIDRkZTEzZmVhZWEwMTgwNWUxNDgxYzgxNTA2ZGFiNzNiNTIzZmExYmEgcmVsZWFzZTI2LW1haW50Cis4MjQ3MSBlYmUxYjNmZjhkMzAyMTgxODVhNDU3ZWIwMTIzOTc1Mzc1YWJhNDY0IHB5M2sKKzgyNDcyIDYxY2I5NDEwYTg0MjRiNTA4NTEzNzE5YTQyZmMyYWU0Y2QwMjFiOGUgcHkzaworODI0NzMgNGQzYjRmMzQxOTJiMjM5ZTg3ZDhiYTA3NzM2NjIwMTU2ODI5Y2M0MSBsZWdhY3ktdHJ1bmsKKzgyNDc0IDMyMzk2ZTgwMDQ4ZjlhODcwNmIxNmFlNjFiZDgyOWQ4OWQzMTlmMDYgbGVnYWN5LXRydW5rCis4MjQ3NSA2OTc1NmNkZjUzN2I0ZmEzN2RjYTlkN2M4ZjBmMzk5MzhhMjQ4ZTBiIGxlZ2FjeS10cnVuaworODI0NzYgOGUyMGZmYzYxOTg2NzNjYWFmZGM3MjAxYWI5YmZmNjgwOTU2ZmE5NyBsZWdhY3ktdHJ1bmsKKzgyNDc3IGNjNGJkNzY2ZmUxMDlhNTcyMWQ2NTFhYWUzNjU2NzA3YjM5MjIwZWIgcmVsZWFzZTI2LW1haW50Cis4MjQ3OCBjNTg1NWRkZGYwZTFmYWJhZTk4MWE3NWVkNGE5MzQ2NTA5MmI4OTljIHB5M2sKKzgyNDc5IDU2MTNkMmUxZDc3OTUyN2VhYjhjNGU4ZWQ3YTI2OGQyZTA4NGIwY2UgcmVsZWFzZTMxLW1haW50Cis4MjQ4MCBhYWU3MzgxYWMwYjJkMGE1YzQ5OGViNTJlMzNkN2M5NzQzNDI3MWM2IHB5M2sKKzgyNDgxIGQ5N2MyNDUyMzMyMTBjNzliYjY0OTk3YmRlOTFhYjQ3OGM5ODY2ODMgcHkzaworODI0ODIgMmFhYjk1N2JmNjFmZWM2NWFhY2JhZGU1YTVlN2ZmNmUyMDlkYjBlOCBsZWdhY3ktdHJ1bmsKKzgyNDgzIDZjZmU3YjkwNDY0OWEwNzNjMjBjODM2NDZjMDQ0ZmRmZGI1NjE3N2IgbGVnYWN5LXRydW5rCis4MjQ4NCA1ZDgzNGZjZGY5ODBjZGZhMWZhZDA0YmJlYzEzYmUzNDg5MzVmOGRmIHB5M2sKKzgyNDg1IDIzM2M4ZGFiOGZmYTlmNzEwNTI5YjA2NzFmYTUwZWZlZmQ1NjQzMGQgcHkzaworODI0ODYgYWM4MjNlNzE2ZDU3MTdlOGNjYzBlMTAyZjE2N2EzZGI4Njc0Y2YxNyByZWxlYXNlMjYtbWFpbnQKKzgyNDg3IGJiMjExYTJkZGFiZDVmMGI4NjJjYjhjZTJiZjc1ODRkNWEwZmY0MDUgcHkzaworODI0ODggNTVlZGY3OWFkODI3N2YzOTljNDdkMDllMzE0NTNlNjJlNDdmNjMyNyBweTNrCis4MjQ4OSBkMzVmOGU1YjQxOTdhOGQ3YTE1MDRmZjQ3NGRmMmY5ZThkMTUxMzAxIGxlZ2FjeS10cnVuaworODI0OTAgNDBmMTliMGJmYTYxYTU2YjQxNDBkMWNmNjVhYzAyZWI2Y2M3ZDEwNSBsZWdhY3ktdHJ1bmsKKzgyNDkxIDZhY2IyNTM1NmQyZjFhNjlkZjE0NDgxZDRmNGQ4NTVhMTk5NDkyN2UgbGVnYWN5LXRydW5rCis4MjQ5MiBiZThlMWE2ZWJmN2FiZTc1YTM4MTRjNDJkMzI5MDNiODliZWNmODg2IGxlZ2FjeS10cnVuaworODI0OTMgNGNhNWQwYWVhNDFkMzYwOWNmNDY2YmZlODM1OTExMmZmZjI1YTc2MyBsZWdhY3ktdHJ1bmsKKzgyNDk0IDhiYjkzMjg4ZGI2ZDY4ZTljMThhODVjYWI5NWVkYjJlMDNkMTUyYjUgcmVsZWFzZTI2LW1haW50Cis4MjQ5NSAyOTExNmIyZmNmZmU5MjgxMzcxNjRlMjc1ODU4ZmIzYzY5MDZkZGQ3IHB5M2sKKzgyNDk2IDcxODQ0MjFmODNiNTY0ZmFiNTlmZTJmYjMwYjQyMjc2NmFhMDJjNDAgcmVsZWFzZTMxLW1haW50Cis4MjQ5NyBiM2I5MTJkNDUzYTU4MmU0MWRmZmZlNzFhOTE0ZTFjZmRlN2JiNGY3IGxlZ2FjeS10cnVuaworODI0OTggOTljODRhNTFmNTc2NWJiZWJiZmY3NTA4ZmFmYzVmNGUwMWE1NDBhZSBsZWdhY3ktdHJ1bmsKKzgyNDk5IDJkNWY1MTUwZGNlMjRkYTdjYjY4NmJlY2NlZTAyYjI5NzU1ODNhMDcgbGVnYWN5LXRydW5rCis4MjUwMCA4MGM4YjQzNDEzMTJhMzM5YTAwZjM3NjMxYzM4NTUwMDc4NzhkN2NkIGxlZ2FjeS10cnVuaworODI1MDEgNTRmZGNjMGY0YmFjZjM3NDg0ZGJiY2NmMmQ3YWVlYzJiYzgyYTcxOCBsZWdhY3ktdHJ1bmsKKzgyNTAyIDIxNDU1OTNkMTA4ZGU2MmViZjc3MDk4N2E0YWMyYTU3ZDI2OGM5ZDEgbGVnYWN5LXRydW5rCis4MjUwMyA3ZjdkODIzNDAyYzY5YWU2MjMyYWUyNjA5M2NkNDgyYTRmMzU3ZjNiIHJlbGVhc2UyNy1tYWludAorODI1MDQgM2Y0NmY4YTlkYjU0OTUxOTMzOWZiOWQ1OThiNGJiMGZjZmRhYmQyMyBsZWdhY3ktdHJ1bmsKKzgyNTA2IDc2ZDkwODQzZGJhNjEzYzUwMTM4MWY1NjM1YjVhZWQ2YWY0NDFkZjYgcmVsZWFzZTI3LW1haW50Cis4MjUwNyAzNmQwMWMwMTdiOWJlZWY5MTdmNWJiZTQ4MDc4NTEyZTBlN2Y0OGQwIHB5M2sKKzgyNTA4IDE5NGI2ZTYyYmU5NTBkMGNjOThlYTVjYmE1ZWMyMzY1NmQwNTBiMzEgcmVsZWFzZTI3LW1haW50Cis4MjUxMCAyNjI1MjlkMWMzMTVjZDE5ZTlkNjVkMTA0MWRiZTdlNDJkYzlmOThhIHB5M2sKKzgyNTExIDJhZWU4MjllZGZlMjgwMjI4YmNmOThhOWJkZmUzYTJkZTFiOWI5ZDYgcmVsZWFzZTMxLW1haW50Cis4MjUxMiBkNzZkMGVlYjIzY2FiODQzYWJjNjM3YWE5NDIzYWYwZjRmZjIxYzY2IHJlbGVhc2UzMS1tYWludAorODI1MTMgOTc2YWE0YThiY2YzMDdhYmI1MmVjMDBlMzMxMmM5YTJiMTJiZTg4ZCByZWxlYXNlMjctbWFpbnQKKzgyNTE0IGU0MmJhZjY3OGQxNDQwMDYyMDIyYWFlOThlODZkNzYzZjJlOWFhNGUgcHkzaworODI1MTUgZmU0NmE4ZGJhZjY4Y2E3NDRkZjZhYWQ5MTY2YzkzZTU4YTY2ZjMxOSBweTNrCis4MjUxNiAxNzg0NTVhMmYxYWE1YmJkOTYwMGEwYWYxZjY1YjI5ZWNkMDJmZDhmIHB5M2sKKzgyNTE3IDMxYTY4NTRmNzgxMzk5MTlmOTIxZTRiYzg2NmE4OTM4NGVlYTcyNGQgcHkzaworODI1MTggMzRkODI3MjQ5Y2UwYmMyOThmYjllM2QyYzBjODJjZjdhNWJhZGMxNyBweTNrCis4MjUxOSBmYTcxNTEyYTc0ZjkxNGQ2OTc2MGU5MDM3YjgwZmIxYWRmYmMzNDZmIHB5M2sKKzgyNTIwIDZjM2M1NDNlZGU4YzQ5N2VlZWY0ZjcyYzBlN2MwMGIyYTkzZGY5NDcgcHkzaworODI1MjEgMjY3NGQzYmRkYjE4MWU4ZTMzYzY3YzBjNzVhYmE3NjVmNWNkMmY4OCBweTNrCis4MjUyMiAzNGYwMTViY2E1NGVkYjMzMzkxNjRmNzYzNzY3YzZhMGE0OGZiZDE5IHB5M2sKKzgyNTIzIDMyNjgyYjI1M2ZmYzgxN2UxNmRhOWE2ZTEyMTVhZjNhZmVjODAxY2IgcHkzaworODI1MjQgNGMzMGE2ZjQwZTY4NGU2Mzg1MzgzZDk3ZmU3Y2I1ZGZkZmQ0ZjEyZSBweTNrCis4MjUyNiA0YjkzNDgwM2NkMzQxNDI0MzE0ZGFkODcwYzJmOGZjMGQ4NmY2MjM1IHB5M2sKKzgyNTI3IDEzNTU3NTk0ZTIwYjdhZDA4NjQ3NDkxMDFiY2NmOGMzNzUyYWU0ODYgcHkzaworODI1MjggYjY3ZjcyMDk5OGE4ODAxYThhZDhiNzRjYmFhODNlMmFmYjA3ODFkNSByZWxlYXNlMzEtbWFpbnQKKzgyNTI5IDBmNjU0OGE4Njc2OGIzMjgxMDYzMjFiODg0ODkzY2VkMzY4NDBhMmYgcmVsZWFzZTI3LW1haW50Cis4MjUzMiBlY2Q3MWI2MTI3ZTQyNjc4ZGMxYTJiMWY1NzFmNjQxY2VkMGEyOGMzIHJlbGVhc2UyNy1tYWludAorODI1MzMgMzQzOTAzMTE4Y2I1YmI2NzFlMTY5YzQ1MWJlYzQ5OWM2ZmE1MGU3NSBweTNrCis4MjUzNCAxMjRhNzZhZTdhNzBlNzU3MGQ5NDIzZWQ3YTY1ZjZkNDk0OWI5YzRmIHJlbGVhc2UyNi1tYWludAorODI1MzUgZjA2OTFiNGEzODNiODJhZWU4NTNhMTNhZjczOTk2NGZhZTg1ZGMzOCBweTNrCis4MjUzNiAzZmNlNmNkYjQ3MzM3NzExNjk1MzgzMTkzYjQ3NGRmOTRlYzdhOGM1IHJlbGVhc2UzMS1tYWludAorODI1MzcgMWVhZjRiYmU0YjFjMWMxOGI5MWNlY2U5ZDk5YzQ2NjhiYTRmM2Q4YiBweTNrCis4MjUzOCA2MWNhY2VjY2Y4MDU4MTM1M2I4NGQ3M2MwZGFhMTA5OTE2YTFhYmUxIHB5M2sKKzgyNTM5IDE4MjgyMDM5YzVjOWMwMDZkYzVmZDVmM2YwNjIxZmExMTBiMzFkOTYgcmVsZWFzZTMxLW1haW50Cis4MjU0MCA5MzkzMjYxOTk2Y2VlMjMwYzY1Mjg1YWRkN2UzMGZhNWY3YTkwNmM2IHB5M2sKKzgyNTQxIDllMzU0ZWEzODJjY2U3Y2IwMGNlZjViZTJiZWRlMGNmOTljMzlmMzEgcHkzaworODI1NDIgNzY3YjRjNTdhZWE0ZDliZDdhNDBmNmZmM2E5YzU2YThjMDk2ZDZkOCBweTNrCis4MjU0MyAzODMwMzllZjI2YTBlMDllNTE2MGY2YTk0ODRjMjdlZDE5MDM0MmI1IHJlbGVhc2UyNy1tYWludAorODI1NDQgM2FlOTEzYTljZGE5MGVhM2UyNWQ5NzlkMjc1NDRmOTI0MTY2MWYwNiByZWxlYXNlMzEtbWFpbnQKKzgyNTQ1IGE2M2Y2YmFiYTZiNTRkZTk4Nzg4OTM0Y2QzOGZkMWQxMTBlZjI5MWMgcmVsZWFzZTI3LW1haW50Cis4MjU0NiBiZTY2MmQxMjQzODU5ZWQ0MzdjMDg2OWI2NmQzYjc5NzlhYmY4MWM5IHJlbGVhc2UyNi1tYWludAorODI1NDcgMzYxNDMxYzRkMzQ0YzQ0YWNmNmU2ZWRjZTA3ZTIwMDQ3NjBiZjU1OCBweTNrCis4MjU0OCA3Y2U2ZTM2NGUxMTgzMDY3ZTdjYTgzNzlmYWQyNjgxZjQ2M2E5MmNhIHJlbGVhc2UyNy1tYWludAorODI1NDkgM2IxNTQ4NjYwOGYwNWJlY2QxNGM3NjA1NGM1ZDk5YmE0NTQ4MjY4YSByZWxlYXNlMzEtbWFpbnQKKzgyNTUwIGIwNzQzZDUyYjZhMzE3YjI5MWY3NTNkNWViYjczNTdhYzFkODUyZjYgcHkzaworODI1NTEgMzQzY2Y1YTA4ZmYwMGYwNzIzN2MxOTA5NWYzNGIxOTRlNzZjNDJjMiBweTNrCis4MjU1MiBjNmYxNmI4Y2I4NThkYjk1OGIxODRiZDZkNDUyMjIxMGE3ZmEwNTZiIHB5M2sKKzgyNTUzIGQyODMwMDkxMjM3Y2VhM2NjMjM1YTZkMDUxZmUwMzJjMzEwMTQwZWMgcHkzaworODI1NTQgNjkyYjc5ODljZDkyMDM2OTA1MGU3NWJiNmFkMGI1NWIzY2JlY2VjZCByZWxlYXNlMzEtbWFpbnQKKzgyNTU1IGZiMzYwYzA3OTA1OTc2YjFkMGU3NzZmY2M2ZDY5YTYyOTE3NDgyYjQgcHkzaworODI1NTYgM2FhMjI0Mjg1ODJhMzhhMjcxYjllYWVlNmMzNGExYzMyN2UxZmYwMCByZWxlYXNlMzEtbWFpbnQKKzgyNTU3IDgzN2UzY2QzZDA4MzQ2MzNkZWIxOWZmM2VkYTllNjE2MWJmNWYxZTkgcHkzaworODI1NTggZDg4MGMxMTQzMTc1NjdiYzg5OWNlZTY4NGU4YjM1N2FmYjNmZGUxOSBweTNrCis4MjU1OSBjMWEyM2E1NDBhMjlkZjYyNmM4ZDU0N2Y4YTgxMGM5NDhkMTZhNTFmIHB5M2sKKzgyNTYwIGZlNTIxN2E4YWZmYmRjMGY0YWM3NjgwNzRkOWFhZjJjYjY2ZTkxMjggcHkzaworODI1NjEgNDZhYmRlMDcxZmZmY2UwMTMyY2QzYzg3NzljYjA5ZjZlYzBkMmE1ZSBweTNrCis4MjU2MyBhMWM0NTYzMTdiN2MzYTIzNjhlNmU4MmIzYTFkNzdlZDBlYzMxZjAyIHJlbGVhc2UyNy1tYWludAorODI1NjcgN2ZmZDJhNDQ5NDJjZjY1NjI3OGQwNGZkOWQyNjdiMWVmNzQ5YWU2NyBweTNrCis4MjU3MCBkY2MyZThiZjY0Y2ZmNjFmZGJjOTg3NzY1OTI2YTRhNTY2YTUzZjM3IHB5M2sKKzgyNTcxIDAxNDUwMTIwYzBkZDE4ZDQ4N2IxZDNiNGQ1ZDhkNDIzMDhmYTY1MzkgcmVsZWFzZTI3LW1haW50Cis4MjU3MiBlMWY0OGViMDE0YzcwNDZhZWUxNmZmOWNlMGNkNTZmNzA2ODE0MjgyIHJlbGVhc2UzMS1tYWludAorODI1NzMgY2Y0ZjdmOThmMTllNzJiYzFjYjZmMWVjYjg0MTRhMTE3N2Q5ZDhmNyBweTNrCis4MjU3NCBlODRkNTE2NDQxNDQ2MGEzNmZmZjc4MGMyN2Y3MzI0ODU5NjEyYjY3IHJlbGVhc2UyNy1tYWludAorODI1NzUgYzgxZmMxZmZlOTQ2NzAzYzc5MWVmYmZjMGZkMWVjMGNjM2M5NmYwMCByZWxlYXNlMzEtbWFpbnQKKzgyNTc2IDcyNjQ4M2Q5N2I1YzA5MzZmODBmZWZjZDg2NzIwM2Y5NWQyN2NmNjcgcHkzaworODI1NzcgYTdjOGI0YTY2NzhiZjEwMjEzMDBlYTcwNmQzZjg5MTA0MmNiMTc3NyBweTNrCis4MjU3OCAzNmQ1ZTJmNWQ2MDA0Mzk1NGExNTVkMDQ2ZTMxOTcyYWU1NWY5YWRjIHB5M2sKKzgyNTc5IDhlZDdkMTExYjJjOTdmZWQ2MGU2YWM0Mjg0MWZlMDUyM2RkMjU0NzYgcmVsZWFzZTMxLW1haW50Cis4MjU4MSA3MDU4NjlkMWJkZjBmZGEyMTFmMDk5YzFkNDI1OTY1MmY0YWQzZjUwIHJlbGVhc2UyNy1tYWludAorODI1ODUgNDAwMWQ0NThmMGIyMGNjN2YzYTE0ZGJkOGNlYWM5YzM3ZTA4Yjc4MyBweTNrCis4MjU4NiBlZTllZTJmOWZlYjljY2ZjMGI2N2JiMTZmMTBmMWMyN2MwMjg5ODA4IHJlbGVhc2UyNy1tYWludAorODI1ODcgOWQ1ZmU5MzYxZGUyMWRlNjhjYmZmMzdiOTYzYzJhYjkyM2M4ZTZlMyBweTNrCis4MjU4OCA2ODBiZjZiOGFiODI0MGE5NmVlZTliNDNjNGYxZTBmMzU1N2I4YjE3IHJlbGVhc2UyNy1tYWludAorODI1ODkgNmVjNTcyMmEwN2E1ZjJhYmU4YTc2Y2ZkNzc5MDM2ZThlYzE2YThiOSBweTNrCis4MjU5MSBiNmZlZTU1ZmFhMWJiYmM4MDg2YjZiOTJmOWY3OGQwN2E5ZTRjNjY5IHB5M2sKKzgyNTkyIDNiNzNmYjgwODA3YWExYmMyZmUwZjk4ZDgxOGJlYTM0MjZkZWFjNGYgcmVsZWFzZTI3LW1haW50Cis4MjU5MyA4N2NkYWZlM2JkNmM3MGEzNjJjYmRmMjllZWU5NGJkMTBmNDEyYmFkIHB5M2sKKzgyNTk0IDhiYmYyNGU1MWNjZmFhZGEzZDcyZjkwYTRmYmNhNDZkNGZmZTJiZjQgcHkzaworODI1OTUgNTA5N2IxYjQ5NjAxMmUxZTM0MGY5ZGI2NjBmZDVlMGZkZjkzODExZCBweTNrCis4MjU5NiBhMDdlZjVlYWI5MGJiMjViMTA0ZTY1ODVkYWEwZjFiNzZmMzMzOTQzIHJlbGVhc2UyNy1tYWludAorODI1OTcgNGQyOTFhZDA3ODkxNDlmYzExZDAxNjI1NWFmYWViOTgwNTc5MGIxZSBweTNrCis4MjU5OCAzZGMyMTkwNzM4NzU3NGU3MzhhYzdmMjNlNDNjYTVjOGUxZDQ5YTFkIHJlbGVhc2UzMS1tYWludAorODI1OTkgOTE0NTdiMjAxNGU0MGI2MTkxNjIwZTllNzUxZWNiMjRhY2NiYzU2OSBweTNrCis4MjYwMCA4NzBiNmI0NTVlZjA1ZDFiNTNhMzMwOTM4ZjgwYmM3NjY1NTkzY2U1IHB5M2sKKzgyNjAxIDFmMjgxNGViNGQxZGQxYjFhNjcxNDMzOGQ4M2ZlMTFhNmU3MzRlYTMgcHkzaworODI2MDIgODY4OTA0NDZhNDdiY2Y1Mjg0YmRmZjNhMmRhMTkxYmUyNjEwNTA1ZCByZWxlYXNlMzEtbWFpbnQKKzgyNjAzIDM5YzdkNTRmMjg0OGMwZDFmYTJlMzAwOGY3NGJlOWY1MDg2ZDllMjYgcmVsZWFzZTI3LW1haW50Cis4MjYwNCAxZjM3ZDA4MmE5YWFmODAzN2UwM2Y2YjMwNWRjNzhlZDEwOWNiZWJiIHB5M2sKKzgyNjA3IGYxYTQxNDdiM2MwMjNjY2VhN2M2ZGY4ZmNjNjEzMGE5ZDM5MDcxNDUgcHkzaworODI2MDggMjM5OWUwNDUxZDBkZWM4NjYwMWYzNGMxZmJiY2UzMWVlMjhhMGFiNyByZWxlYXNlMjctbWFpbnQKKzgyNjA5IGQzNmRjMzdjNjdmODg3MDYzZWRlZmEzNzE0YzA4MGZjZmE5NjQwMGQgcmVsZWFzZTI2LW1haW50Cis4MjYwOSA3NGIwZWI3NjVhNTA0OWIyNTNlMWNjMzUxZGE4ZmYzOWUzMDgyYzY2IHJlbGVhc2UyNy1tYWludAorODI2MDkgMDcyOGIyOTVmNTNiZDZhM2Q3MGY1ZjVjNzI1YTg1NWI4ZjNhZjIyOSBweTNrCis4MjYxMCAyMDJmMzFkNDAzODljZTNmNjU5ZmIxNTYzMDhlODJjZWUwMDM4MDdkIHB5M2sKKzgyNjExIDA2MThjNjIzMWExZjE5MjcxNjU5OWNkNjAyZmY0YmEwMDIyMmZlOWYgcHkzay1kdG9hCis4MjYxMiBlMTJhZWNkYzMzMmM3ODc3OTZkZjI5MzAzY2ZmNjFjZjExZDc1Yjg1IHB5M2stZHRvYQorODI2MTMgNGZlNDkzZDk5ZGNjMWMyMTdiY2M1MjdiMGYzNjNmYmMwMGRlZGRjYyByZWxlYXNlMzEtbWFpbnQKKzgyNjE0IDcwYjAzODhmOWQzZjUyNTY1YTg1ODkwY2FhYzNmYjk0NGUzMGUyYTQgcHkzay1kdG9hCis4MjYxNSAzZWE2ZjY5ZGIyNDI2MTk4MjRiMDhiYTgyMmI3ZmRlZTIwY2QyZjkxIHB5M2sKKzgyNjE3IDU4MTJkZDQ0ODA3YWY5NjUxN2VmMmYzYWY4MTFjMWFkNGQ3YzgzYTMgcHkzaworODI2MTggZDJiMTY4OWEzMzgxZWM2NTJkN2M0ZWM4NTIzYzkyNzZhYjQ4ZGZhZiByZWxlYXNlMzEtbWFpbnQKKzgyNjIwIDA1NjJmMmUwNTI4ZDEyZGJkMmUyNTRhZjA0ZDQyMGJmZDA5OTg2NGQgcmVsZWFzZTI3LW1haW50Cis4MjYyMSA0M2FiYTA5ZTg5NDY5MzZlZDUzZTJiYWI4MmFiNjhkZWI5OGEyMWI4IHJlbGVhc2UzMS1tYWludAorODI2MjMgOTEyYWIyZmI0M2Y1OGIwMTI5ODgzOTM0YWJkYmY0NjdkMDc3MGExYyByZWxlYXNlMjctbWFpbnQKKzgyNjI0IGY2NDFiZDU0NmRlNDEyOGNkNzljZTc5MzIwN2QyMzAwYjRlZjg3MDAgcHkzaworODI2MjUgZTY1NTg0OWU3OWM2YzgyYTlkNDk3Yjc4YzA2YjA0MzFhYjM5MjUxZiBweTNrCis4MjYyNiA4NzU1NWY0NWNkNmJlNTg2N2Q4MmQ5ODI2Njk0ZTJhNGViYmRjN2RhIHB5M2sKKzgyNjI4IDc0YjJjYmRhOWJkYTQ0N2Y5OTc4MzgxMjM1NTkzOTkxNTgxMzcwZDkgcHkzaworODI2MjkgY2NmOGU2MDIwY2YzNGI1ZjVlYzg4ZGQ1ZjI2OGIxMzM3NDZhZjEwZCBweTNrCis4MjYzMCBmNjI2NmM0NTkxNTYzMDZjOWJhYmQ1ZmQ4ZjMyZDc3NmMzZDEwYzBhIHB5M2sKKzgyNjMxIGU3ZGE5NjhlM2U1YTBkYTY0YmFkOWRlZDlmNGFmNWEyMDQ2ODgzNDEgcmVsZWFzZTI3LW1haW50Cis4MjYzMiA1ZjNlMTg2YmVmMGYwODM1M2I3MmFkMzk0MDk5YTFjYjJjNGY2NjVlIHB5M2sKKzgyNjMzIDM0ZTNkYmQ0N2U0ZmEzZWQwYjZmNjU0YTJjZWQ0MTM5Y2Q3YTUzMWMgcHkzaworODI2MzQgOTQ2NDY0ZmQ2OTIxMGQ3MGI0YWM1ZGRmNjc5ZTI3OWZhYWZiNWVlMiByZWxlYXNlMjctbWFpbnQKKzgyNjM1IDU1M2YxMGIwMzdkOWVlMjMzYmQ1MWFjMGM4MzkxOWNjN2E1ZjhjNWIgcmVsZWFzZTI3LW1haW50Cis4MjYzNiAzODRmNzNhMTA0ZTk0ZTEwZDc5ZTljMTkzZTdmZDBlMmYyYzg0ODg0IHB5M2sKKzgyNjM3IDM4MmRjYjBjNjA3M2ExNDY4YmY0NzBiMjJmNzJjZmUwNzRlZTY0OTQgcHkzaworODI2MzggNTVhMDI0ZjUxNTI0YmZkMDM3MTg4ZDYxZjhhZWViYmYyMzIxZjVhNCByZWxlYXNlMzEtbWFpbnQKKzgyNjM5IDhjNmIzZGM2NTJmYjkyMzIyYThkMzRmNmE2MzU0MWIzZTNkMzI2NDkgcmVsZWFzZTMxLW1haW50Cis4MjY0MCBhMDA4MmE3NGQxMjVhMmU4NWY4Y2QwNWE1M2IxNjEwNjZiYWRiNTU2IHJlbGVhc2UyNy1tYWludAorODI2NDIgMDQwNjc5MDg3ZDAzNTJiNTY1MTNjZTUyOTQyM2MyOTIwYzIyNjYxOSBweTNrCis4MjY0NCBjYTA1MzcxY2ZmMTBhMmY5ZDBmMmEwM2I1MTM4NDQ4NDg4Njg3MWEwIHB5M2sKKzgyNjQ1IGY4NDVlZDFkODlkNWJiOGMwMzBhOGExNzEwY2Q4MGI1MWEyYjU4MWIgcmVsZWFzZTMxLW1haW50Cis4MjY0NiBjYTBhMzMwMWE3ZWExYmFhYmFmNWMwMmRjNjUzYjI3ZmI4OWZiMzRhIHB5M2sKKzgyNjQ3IDEwZTZhNTQzMGI3OTQ0YjZiZWJmMTUzZTFkNmZhYTNhNDA1YjgwOTAgcHkzaworODI2NDggYzczMDViYTg0NjE5N2I5MzViZmVkYTA1ZDk0OGVjODVmNjJhMTE5NiByZWxlYXNlMjctbWFpbnQKKzgyNjQ5IGQxNTZmN2IzOWMzYzM0MzIzZmFmOTQ3YjlmYmYyMDM2ZjgxODY1NzEgcHkzaworODI2NTAgNWJjN2RiZDMxZDFiNDk0NmMzOTVkYzYzMjBjZDRlYTFlNjMwZWJjNCBweTNrCis4MjY1MSBiMDQ0NjI1MzIyZTMxNmM2NDg0YTUzMjYxZGZkYjNlYjRhZmUwYWYyIHJlbGVhc2UzMS1tYWludAorODI2NTIgYTYzMThkYWZiOGViNWMyZDgxOWZkNzA4MjJkYmViNWU1ZmY3MGZlZiByZWxlYXNlMjctbWFpbnQKKzgyNjUzIDNkOGE3ZjcwMWNiMWMyNTM3ZjU4MWExNzgwYTEyNmVmZjY1NTJkNjkgcmVsZWFzZTI2LW1haW50Cis4MjY1NCAwOWY1ZmQwMTNjMGJlMmZlN2JiMGY0OTQ2NGFlMzFlNzI2NjM0YTk3IHB5M2sKKzgyNjU1IDk3NTJiODVjMDExOTJmZTgzOGRhZWQwZWZhYmE1MjcwNmQwMjZjNTEgcmVsZWFzZTMxLW1haW50Cis4MjY1NiA2ZWRjM2UyYTdkYTRhYWRhZmFjZTQ1NjliMGZjN2JiYjM1NTQ0M2IyIHJlbGVhc2UyNy1tYWludAorODI2NTcgOTc0ZjhkOGJjMGQ0NGQxNWQ4YjhkZjUzODUyZWJiYThjZTdkODYwYyByZWxlYXNlMjYtbWFpbnQKKzgyNjU4IGM4YmVjZjYwNmEwYWFjMDk2YmY4NWY0OTZkNjhiOTYzODI4Njc0Y2EgcmVsZWFzZTI3LW1haW50Cis4MjY1OSA3MzBiNzI4ZTVhZWZiNTZjY2ZjNGU5YzJjYzkzNGMyYWQ4NjM4MDU5IHB5M2sKKzgyNjYxIDdhMjE2YmMyYmVkNjUwYjk3MDViNjg4YThjMGI2OGUyNzQzY2Q2ZDkgcHkzaworODI2NjIgMzUyOGM0ZTc4MGJmMDdiOGY5MDJhY2U3NTM3MGQ3Njc4NTdjMGZiZiBweTNrCis4MjY2MyBlNGJkYTRhNTIwY2E3NTI5MmExNzE2MGI1NTQ5ZDNkNjM0MDMwY2ViIHB5M2sKKzgyNjY0IGZmMmQxYjJjZGM2OTEzOWYzMmRlNzg0NzEzZDFiZGYwNWQyOGUyMzEgaW1wb3J0X3VuaWNvZGUKKzgyNjY1IGM2N2Y5OGFkYjhmMzYxY2IxOTM2NzZjOGY1MWM5MTU2ZTkyN2FiMGMgaW1wb3J0X3VuaWNvZGUKKzgyNjY2IDViNjMxODUzNzJkMWYzN2FhNzFkNmYxMmJjYjM0NjczNzdjYzk3YzMgaW1wb3J0X3VuaWNvZGUKKzgyNjY3IDE2ZTM0OGYxNjVmODVkMzRkNmViOGI5NzQ5NTQyZjRkY2UxZWZmYjggaW1wb3J0X3VuaWNvZGUKKzgyNjY4IDQ0YmQ0YWQxZjZkNDJmYWIyMDQ0NTA2NDQ4NTAwZDIzNzAzN2VkM2YgaW1wb3J0X3VuaWNvZGUKKzgyNjY5IDViNmYwM2YzOTFkYWZlMjQ2MGEwYTM5OTg1ODNiNTYyOTdkZTczMTEgaW1wb3J0X3VuaWNvZGUKKzgyNjcwIGU5NjI3OWFjNmQxNDY4YTM0ZDFhN2Y0MzI3MDc1MzhlMGI0MjgxNjAgaW1wb3J0X3VuaWNvZGUKKzgyNjcxIGE5N2Y3NTAzZTUwYzQwNTZmZTMwYmE1ZjQzNDkyNTIwY2RkYzIxYzggaW1wb3J0X3VuaWNvZGUKKzgyNjcyIDYwZmM5NDQ2YWEyZTAzNTM3NmRmYTA3MTEzY2VhNmZmZDZjOTMxY2QgaW1wb3J0X3VuaWNvZGUKKzgyNjczIGMzMGQ4NDgwN2M2MmQwOTVlODRkZGE1ZmQzMjc1MGJkYWEzZWIzNzkgaW1wb3J0X3VuaWNvZGUKKzgyNjc0IGRmZTI2MDIzMWM0OWMxNDI5OGFlMTNiNTE0ZGFlMzA1OGY0NjBhYWYgaW1wb3J0X3VuaWNvZGUKKzgyNjc1IDBjZDk0MTZhMWMxZTY3YjdmNDA5ZTZmMzMzYTdkYjYxMjI1ZGIxNTkgaW1wb3J0X3VuaWNvZGUKKzgyNjc2IGY3MzViYjJiMDZkZTE4NTk4ZGMzMDhhMTk0NDgyMTIzYjMyNjUxYWYgaW1wb3J0X3VuaWNvZGUKKzgyNjc3IGJlYmNiNmFiMDlhNTY1YjEzNzZkZTFhNzBiZDg1OWE1NTFhZjZkMmQgaW1wb3J0X3VuaWNvZGUKKzgyNjc4IGM4NzJlNGZhYTFlNzQyMzkxZWJlMDcyNWZjODMzMzZlZGNiODE5NzAgaW1wb3J0X3VuaWNvZGUKKzgyNjc5IDE0ZGE3YzNlOTIyMzJiMTRjMzhkN2YwMGY1MWE3YzcwYzhhMmUwZGIgaW1wb3J0X3VuaWNvZGUKKzgyNjgwIDA5NTJlMmRmM2M0ZDFiOTg0Y2MwZWRkYjc2NWQ5OGIyMmZiMjgyMjQgaW1wb3J0X3VuaWNvZGUKKzgyNjgxIDc2ZjM2Y2ExMDYxZjQ0ZmE1YTdiOTEzYjY5MjQyNGYzNzk0MWFlZTMgaW1wb3J0X3VuaWNvZGUKKzgyNjgyIDIyYjkzODhkN2MwZWY5MGE3ZTY2MTRjZWU0MDRiZjA1ZDU5ZmVhYzAgaW1wb3J0X3VuaWNvZGUKKzgyNjgzIGU0MjMzZTljODQ2MTIyNjUxZGFjODE1YmU4NDIxNzY0MGM3OTJjNzUgaW1wb3J0X3VuaWNvZGUKKzgyNjg0IGU3NjZmN2JjYjJkNTVjMzQ3NzRkYTMyYmU1Y2Y5YjhlY2EzZGEzNjEgaW1wb3J0X3VuaWNvZGUKKzgyNjg1IDVjYTQxZGVlYmQwZmZhMmVlZjg2MzBkZGE3YjhmY2RkMGY0ZTRmNzUgaW1wb3J0X3VuaWNvZGUKKzgyNjg2IDJlOWZjNTMyZDFkMWJkOWJjODFiMDViOTQ5OTBhMDQxMzlkZTJjNWYgaW1wb3J0X3VuaWNvZGUKKzgyNjg3IGUxZDg2Y2YyY2ZlNDRiZTA5NDUzZjFlYTE5OGJlMGI5MTgyYzRlZmEgaW1wb3J0X3VuaWNvZGUKKzgyNjg4IGUwZmI0OWVjOTQ1Y2NhNTcyNDI5NDY3YTA2ODk1MzYzMzU4YmUyMDcgaW1wb3J0X3VuaWNvZGUKKzgyNjg5IGEyYzdmMjA2MGU1YmRiZDg3Y2ZiYWZkNTQ3NzlmYzU5ZjRiNjNjODUgaW1wb3J0X3VuaWNvZGUKKzgyNjkwIDFjMWZkOTVlMTNiNDJlYmVmYmMyNjgxZjAzMTg3NmUyNDQyNTU4ZTEgaW1wb3J0X3VuaWNvZGUKKzgyNjkxIDBhMzBiNTZjYTNhYzlkZTFiMTVjOGEzNjZmZDBkYzE2ZWViMjA5YWQgaW1wb3J0X3VuaWNvZGUKKzgyNjkyIDM2MGUxYTA4ZTUzYjk0ODBhYTVkY2IzOGUwOTllZGRiYzI5NjNmZjIgaW1wb3J0X3VuaWNvZGUKKzgyNjkzIDYwZmJmYWE3ZDkzZGZkYjE5ZDRkYjEzZjkzMmEyYzFkMDUzZWMzNGUgaW1wb3J0X3VuaWNvZGUKKzgyNjk0IDk1MGI0NzU0YmJlMmFiZmMwYzUwMWJiZjFmNjBiOTI1M2E1ODExOTQgaW1wb3J0X3VuaWNvZGUKKzgyNjk1IGZmZWI4NTEyOGM3ZTg0ODMzMTY5NmI2ZTE0YjIzYTRlYTdmOThlYTkgaW1wb3J0X3VuaWNvZGUKKzgyNjk2IDAxZTRlM2QzNzc0ZDYwNDVjMjk5MjM1ODRjMDhmN2U4NDUyMjg0YzUgaW1wb3J0X3VuaWNvZGUKKzgyNjk3IGU4MWVkM2FkMDY5ZDlhYzJlNWVhOWNjZjg5M2E1ODBhZmQ5MDNjODAgaW1wb3J0X3VuaWNvZGUKKzgyNjk4IDFhZGMyM2RjZTk3MTdjNDg0MDEwMGFkMmUzMzkyZTRjNjM2M2JhMzMgaW1wb3J0X3VuaWNvZGUKKzgyNjk5IDE3N2E4MmVjZmY2NzEwNmFiYmM0YzY3NTY1YzBmNTFjYmU2MDAyNTMgaW1wb3J0X3VuaWNvZGUKKzgyNzAwIDgyNDk3ZjFjMWM1NDE1MjgzYWFjYmViYTAzYjNhY2E3MzRmMDc4MDkgaW1wb3J0X3VuaWNvZGUKKzgyNzAxIDkwY2E0NWQ2NTZjMmQ2NTcwNTVhZTU2N2JmZDVjYjAzNTI0OWY4ZDkgaW1wb3J0X3VuaWNvZGUKKzgyNzAyIDMwYmJjMTg2MGZiYjJlN2JkMDY2NjljNDY2YWU3NzQ4NzRhN2ZkNjIgaW1wb3J0X3VuaWNvZGUKKzgyNzAzIDg2NWQxOGFmZGExNTEwOTkzYmNlYjRkYTIwNmEwNTQyNmY2YzViODcgaW1wb3J0X3VuaWNvZGUKKzgyNzA0IDdhZjIyOWVhMmU2NjVhOWVjMWFlYTZmNzcxYzVlMGYwZGZmZWVlZjQgaW1wb3J0X3VuaWNvZGUKKzgyNzA1IGEyOWNjMzg1MDAyOWY1N2U3MjIzMWFhM2QzNmM2YjNhOWNjODQ4YzggaW1wb3J0X3VuaWNvZGUKKzgyNzA2IGE0MjFiNGI0NWFhNjYyMGYyZDFhNDUxZjViMWY4MmY3MGFmNjhlNjQgaW1wb3J0X3VuaWNvZGUKKzgyNzA3IGE3YmI4NGY4NDk4YTFmNmJjNTViY2QxYzJkYTNjNmUxYjA1NTM3MmIgaW1wb3J0X3VuaWNvZGUKKzgyNzA4IGFmN2VjMTY5MTA0N2JjYzMyYTA2MjU3MDhmYjEyZWUzNTkxZmI5ZDggaW1wb3J0X3VuaWNvZGUKKzgyNzA5IDY4YjBlNzJlZjRmMjIxZDBiNWU2YTNiZWE3NTJhNGJjYzg5NjZhZDggaW1wb3J0X3VuaWNvZGUKKzgyNzEwIDhlNzBhNWVjMWFjYTYyOTU0OGU5YzI3ZjExNzMwNWRmOWM4OWNlZTQgaW1wb3J0X3VuaWNvZGUKKzgyNzExIDZkY2E5MzcwMmU2YmQwMmRkYzdlYWI0MmNhMWI5N2I4MTc3MGNmZTggaW1wb3J0X3VuaWNvZGUKKzgyNzEyIDc2YzM1ZDhhMjZhMDEyMGQ4ZDBiNzkzODI0ZjlkODk4ZTBlY2EzZDkgaW1wb3J0X3VuaWNvZGUKKzgyNzEzIGE3Y2Y5MDNiMTdkY2IxZTI1NmY3Mjc3ZWQ1OGU2YzViMjhiZGU0ODAgaW1wb3J0X3VuaWNvZGUKKzgyNzE0IDc4ZTZhNmZiZDM2MjFiZDhmNzEwMzQ5NzMyMWY0ODU3NzFhMjlmOGMgaW1wb3J0X3VuaWNvZGUKKzgyNzE1IGFiMTdiMGMyMmJhMWQyNGUwNTRkYjkzOTRkNTBjZmY3MWI5NjJlMGMgaW1wb3J0X3VuaWNvZGUKKzgyNzE2IDA5NWIyOTcyYzQ0ZjExMjM2YzBlMjkzMDNjMjM3ZDAwNGVkOWM1MGUgaW1wb3J0X3VuaWNvZGUKKzgyNzE3IDM2ZjZlZDA2NTFlMTM0MGViZjgxZTQ5ZDUwYjkyMjBmOWYxZTRjOWEgaW1wb3J0X3VuaWNvZGUKKzgyNzE4IDg1MmU0YTc1ZTE1NjkwNGFlNDdkZjliZjViZWRmZjZkNWM0NmYxNzUgaW1wb3J0X3VuaWNvZGUKKzgyNzE5IGYwZWY4M2Q5MTM1NDViZGUzMDljNGI0YTAwZmRjMDgxMzRiMmNlYTggaW1wb3J0X3VuaWNvZGUKKzgyNzIwIGVjYmE4ZmE1Yzc0M2VlMGEyMzk2NTU5MTY4OTIwMmE1ODlkNjEzNzAgaW1wb3J0X3VuaWNvZGUKKzgyNzIxIDhkY2Y4NDFmMWJkNDA1ZmVjYmVmYjA0NmFkNGI0MjUzMzE4NjUwYjAgaW1wb3J0X3VuaWNvZGUKKzgyNzIyIGJjMGI0YzkxOGRkYjRhN2QzZTg5MmNlNDk4NGNlNzk1MGEwMzA0ZGUgaW1wb3J0X3VuaWNvZGUKKzgyNzIzIDBlNzgyYTZlNmJiNzZlM2VkYTc2YTdhZDJmY2YwOGFiZTVlYWRmNzEgcHkzaworODI3MjQgYzdmMzYxNzAyOGE4Mzk5MTdiNTEyY2E1YmE1N2JmYjg2ZGU4ZDJkMiBweTNrCis4MjcyNSBhMjE3NzI2MmY2YjdlNWE3NDRmNzQyYjQwZGI3N2VkOTEzMDhjZGE1IHJlbGVhc2UyNy1tYWludAorODI3MjYgMDhlZWU4OWFmN2I5OWQxM2EwNTk4ZGY1OTI3NzhlOWE5NjIzMjhhMyByZWxlYXNlMjYtbWFpbnQKKzgyNzI3IDhjNjE0YmM3NjZiNDUzOTlmMzExZGUwYjMyZWFlMjgxODA2YTBhNjEgcmVsZWFzZTI2LW1haW50Cis4MjcyOCAwZDEyMjAxNzVmMjllZDAxZjAwOTY2ZDVjYWE2Y2E5ZDQ3YzI3MmMzIHJlbGVhc2UyNi1tYWludAorODI3MjkgOGFhYWYwMWZjZjAzZWNhNDQxYWI4NGU5ZjM4ZDNiMWUwYTBhZmU2YyByZWxlYXNlMjYtbWFpbnQKKzgyNzMwIGYzYmZkZmYyMTQ2YWE0ZTEwMzIzYTUwZmNjNGE5N2Y5OWNlMzczYjEgcHkzaworODI3MzEgY2ZjZjZmNjNlMGI0YWMwNWI1MmEwOTE1MTBlNWNkNWZlYTZhMWZmNSBweTNrCis4MjczMiA1ODVjNzBkYzFlYWE0ZjdlZWZiZmZiMWE3ZmIzMWQyZTA3Mzg5ZGM3IHJlbGVhc2UyNy1tYWludAorODI3MzMgZGIyOTNmZDc1MjhiOTRjMDE3Y2RjMmMwNmI1NWQzNzM3ZjdhMzY2ZiByZWxlYXNlMzEtbWFpbnQKKzgyNzM0IDUyM2FmZmQ0ZDQ3MjkzNzA5MDdjZWYzNTlkMGM1NDlkZjFjMzkyYjMgcmVsZWFzZTI3LW1haW50Cis4MjczNSA0M2EwZmMxODRhNTgxNzQ5MTJlYWExNGNjZWJmZDdhZjViZmYzZGUyIHB5M2sKKzgyNzM2IDQ3ZDQ5YjQwNjIwM2EwZjJhOTdmMTVlMWUwNjhhMjhmMzc2NDA1NGEgcmVsZWFzZTI3LW1haW50Cis4MjczNyBlMGRlZGQyZGNmYTgxZTAxMWE5NjcxZDVkNmNmZDA3YzBjNGJkNzBiIHB5M2sKKzgyNzM4IDdlOTRjMDNiYjg0ZTE1M2VjMWYxMWU0YTdkYTBjMjQ3MzAxNDZlNGEgcmVsZWFzZTI3LW1haW50Cis4MjczOSAxMGMwNjMwZjFjMTQzYTU2NzUzYzNjNDBmNWYwMGY4ZWYyOWM1ZmQ5IHB5M2sKKzgyNzQwIDA4OWZkNzEwZGNhODg0OTE1OWUzZWNjNTE1M2JhMjc3YWY4NTRkNTMgcmVsZWFzZTI2LW1haW50Cis4Mjc0MSA3ZDlhYjM1ZTQzYmM2NmFmOWM0MmQ5ZWQ3ODhiZGVkMzAyNjc5YTU0IHB5M2sKKzgyNzQyIDgxNWFlN2YzNzMyYmVlYmQxYTZlMWNhMzEyYTZhNWViMzBmMjJmMTQgcmVsZWFzZTI3LW1haW50Cis4Mjc0MyA1YWU3ZGY2YzkzZWQ5OWI0YmIxNTdhY2U4NjU2MGIzYTg5ZDMyZjYzIHB5M2sKKzgyNzQ0IGUzZjgzZjU2ZGQzY2RlOTM2YzdkMTkwZmYzODk4N2YxOWNiODhhZGUgcHkzaworODI3NDUgZTk3Y2RkNWM1ZTRmYzk5MTU2OTJiODFjNjZlZTMzOTJiNDBmNWIwMyBweTNrCis4Mjc0NiA5MmE5ZGM2NjhjOTUyOWYwMThhNjIwYjQ3MDdiYzA5Y2UxODYxNmMwIHB5M2sKKzgyNzQ3IGQ0MWEzMWY1YmY4MmY2MjRhZjIxOWY5NjlhN2U1NmNhNTM1NTk5NTMgcmVsZWFzZTI3LW1haW50Cis4Mjc0OCA0ZWZmOWMzNWM1NGE3YmI5ODU0ZmUxYjYzMTM0YTVlYzUyZTdhYmZlIHB5M2sKKzgyNzQ5IGZiYTllOTFlODhkY2RmMGM3NDkzNDZiZjY2ZDEwNDE0ZTY1OWZmN2QgcHkzaworODI3NTAgYzcwZDUwZDIxZjg1MWE2YTU3MTQwNjk5ZWYyZGE5ZTdiYWIzY2Y1NCBweTNrCis4Mjc1MSBkZTFiOWZjM2UxZTcyMjBmNDMyZjYwN2I1OGE0NjEzZmFhMWU1NjdmIHJlbGVhc2UzMS1tYWludAorODI3NTIgOGVhNjBhZTE0OTY4ZjM2OWEyOWMzNDIyODk1ZDY5NWM1ODUxNzMyMCByZWxlYXNlMzEtbWFpbnQKKzgyNzUzIGJkMTljNzE3OGYyNDJjMzg0MTQxZjYyMmEzMzA3YWNhMDYxYjE3ZGIgcHkzaworODI3NTQgZjQ3ODFhYTgyYjM3NTBiMWQ0ODlkNjBjMzFiNzZhNDljMzllMDNlMiByZWxlYXNlMzEtbWFpbnQKKzgyNzU1IDUwMjViYTA1NTNiNjMyOWViMTU4ZDQzZWMxNmMyNThjNTlmOTI2ZGQgcmVsZWFzZTMxLW1haW50Cis4Mjc1NiA2MzYxM2M0ZjYzMTdmMDZhMDUxNjVhM2U3MjZmNjEwZDM1MTA4MjA2IHJlbGVhc2UzMS1tYWludAorODI3NTcgNGQyMjJlZTJhMWM4NTQ3NmRjMGQ2Y2VkNWY4MmNmOTFjMGEzZjgyNCBweTNrCis4Mjc1OCA3YjU3Mjg5ZWJlMGQ0ZWY5OTFmNTVmZjFjOTdjOTA0MzgzZTUzY2IxIHB5M2sKKzgyNzU5IDk4M2UyYzBiZjhkY2RlY2RhOTliZjkxMjA3NjFmMjg1YTBjM2M5NTAgcHkzaworODI3NjAgMzVjNTlkMTFhZTEzODMyNzkzYjMwOGI0MWM3NGM5OTVlODRmYTk0NSBweTNrCis4Mjc2MSBiY2I3OWUxYWEwMGY3ZjQ0ZDA4YjZjNzg1NjdhNTUxMzgyZjYzMmY5IHB5M2sKKzgyNzYyIDMzZGU5Y2FmNzA5MDAwMDIyYTk3MmJiYmJkYTUwNmIxMmIwM2I4MDkgcHkzaworODI3NjMgMjU0ZWY1MjA1MTI4YWM2ZDYwMjkxYjZlMjlhNWQwMGM1M2FkNjUzYyBweTNrCis4Mjc2NCA5NDM3ODQ3MGFlMWM5MDc4M2YyMmU3ODg1OTg3MThjM2Q0N2E4MGJjIHB5M2sKKzgyNzY1IGZmMWE4MDM3NjQ4YzRiYzljNTQ4NzU4NzQ5NTA3YTcxYTUxNjAwMGEgcmVsZWFzZTI3LW1haW50Cis4Mjc2NiA4YmUyYjllNDg3MTg3YmRjMjg1N2JmYjgyODE0ZGU4NTgxNmZiOGIxIHB5M2sKKzgyNzY3IGFhYzA5MmVhZjlkMTgyZDE1NmJjMmQ3YTIwMGM5MzZmYTI2ZWJjMTcgcHkzaworODI3NjggMGZiZGMzZmEwMjRiZTU4ZThmMWIxZDg4ODdlZjhkOGU4ZDQ1YjAzYiByZWxlYXNlMzEtbWFpbnQKKzgyNzY5IGRhYjI4NmQyYmE4MmZmYWJjOTkyYTJjMTdkNmJjNzgwYzlkNzI5YTcgcmVsZWFzZTI3LW1haW50Cis4Mjc3MCA0OTg2MWRmYjI3MDE4MDIxMTE1ZjBhMjEwM2UyMzYwYzBiMjE0MmFjIHJlbGVhc2UyNi1tYWludAorODI3NzEgZWQzYmM3YTk2ZmZiNGJhMzdkM2I2MDM5MDI2ZWExYTc2MmU2MDBhMiBweTNrCis4Mjc3MiBhY2Q2Y2NjY2U4MzdiOTM1MTYxMDY0NjE2NmU2ZWRhNzM4MWViNzAyIHJlbGVhc2UzMS1tYWludAorODI3NzMgNDI5ZDBjN2NkYjg1NmRjNTliMjNhMTliZWIxODJjMTcxMjc3YWJiMSByZWxlYXNlMjctbWFpbnQKKzgyNzc0IGFjZWY1ZDY2MDgzMzAwOThjNjZmM2UxY2E4NmI0M2U4YjlhZWY0YzkgcmVsZWFzZTI2LW1haW50Cis4Mjc3NSAwM2Y3M2M0NmY4OWM3Y2E3NDJjODllNWVmNGIwM2RmOWNhYTMxMTUzIHJlbGVhc2UyNy1tYWludAorODI3NzYgMDMwMzZhZmNhNTQ5MWEwMTQ0OTcxNjhlMmIyYTk2MjQyZThjZWU3NyByZWxlYXNlMzEtbWFpbnQKKzgyNzc3IDVlNjBjN2RiMGY1MTBlZGJhMzE2ZmRhOWE4ZmM1YmNlZGYyODIzNmUgcHkzaworODI3NzggMjg3NTVlYjUzZjM4OTQ2MGVkYjBiMmUyYTJkNGZlNmQwNjI2Mjc1NiByZWxlYXNlMjctbWFpbnQKKzgyNzgwIGI1OGI0YWE0NjljNGY4MTc4ZjcyZWZiZjJhM2U3NTQxZmM5ZmZjNWYgcHkzaworODI3ODEgMTYzNjEyNGU1ZmZlZWI2Y2MxMTIyOTUxYWI0YTMzM2Y5ZmQ3MTBjMCByZWxlYXNlMzEtbWFpbnQKKzgyNzgyIDdlMDljNjRkNGE2NGNlMGQyNjQ3MWMyNzlkMDVhNDg2YWE0ZmQwNGEgcmVsZWFzZTI3LW1haW50Cis4Mjc4MyBmNzU1ZDFhYjgwNzQ2ZGI2Y2E1MGVhZjEzMGE2OTNmZTQ2MjU1Mzc1IHJlbGVhc2UyNi1tYWludAorODI3ODQgNTBmNGYxMTNiYmMzZjczMWZiZjAzMjEwZDI5YWNiNWNjMTljNTk5NSBweTNrCis4Mjc4NSBhOTllOGFkYWMwODFkZmNhMjViZjM4ZjVjMWIwYTJiMWUzNDMwNWQ1IHB5M2sKKzgyNzg2IDM2N2Q2MWU2YTcwZjA2OGYxNzViNzQ5OTU4YmZhNWYzOWY1OTg2ZDAgcmVsZWFzZTMxLW1haW50Cis4Mjc4NyA1NTUzM2Q1ODI4YjAzMWE2YWFiNjJmOWU4YzgwNTFkNTI1NWM4YWU2IHJlbGVhc2UyNy1tYWludAorODI3ODggZjBkZDAzYmY2YmM1ZmMwNzdkN2E1NTAxM2RhMDYyNTA0MjM1ZDAyMCByZWxlYXNlMjYtbWFpbnQKKzgyNzg5IDVkYjJlMDdjNDQ1MWZjMmIzOTEyMjkwZTcyYjA0ZmY2YjM2NGFlZDggcHkzaworODI3OTAgYmEwZjZlMTdlYjIyM2MwM2JkYTNhNmFlYmZhZTcwODBlMWIzZjJhOCBweTNrCis4Mjc5MSAwYjA3MWUxZWZkNDE0ZjBiZDQxOWQ4NTkyNWJiZTZmOGI3YTdiZDQzIHJlbGVhc2UyNy1tYWludAorODI3OTIgODFkMDU1N2RmNjQ3YmZmNWQ2MzgyZGY0ZDVmYzBiODQ4Y2FlM2I3OSByZWxlYXNlMzEtbWFpbnQKKzgyNzkzIGY5N2JlNTgwZDhjMTZlYjBmOWFiNjE1MDhmNmFlOTE0ZGMzZDE3YTkgcmVsZWFzZTI3LW1haW50Cis4Mjc5NCBiOTE1MTYyNDI3YWI0ZjZlNzQ5NzY5NDY4NTFlMWY5YWZkMmU5ZDU0IHJlbGVhc2UyNy1tYWludAorODI3OTUgNDI0ZTNmY2ZkM2FkMTFlMDUxNzU0NTQ4OThhMDJiMzY4OTBkMjg3OSByZWxlYXNlMzEtbWFpbnQKKzgyNzk2IGNlOTM1ZTcxYmQwN2U1MThlMmM3N2M0MTliMDE4MDBiY2Y5NTYyNWMgcHkzaworODI3OTcgNDcwN2VkZTRkMTRmZjE0ZTcxYjIzNTQ4OTE1MDMwOWQyMDA3ZjgzZCByZWxlYXNlMjYtbWFpbnQKKzgyNzk4IGM4Yjc3ZWZlOGI1NmU5NzM3NzNlZmY3YzEwZjJhMzhiNzhjMGUzZTAgcHkzaworODI3OTkgMGU2ZmJmNTE4ODUzZmViZmZkNzczY2U0ZjAwZGMzMzBjYTAwZmZkYSBweTNrCis4MjgwMCBlZGFiNTAxZjlkZjhlZmUxODIyMjU2YTFhNGZhNTJlM2Y2ZGI1NjY3IHJlbGVhc2UzMS1tYWludAorODI4MDEgMjk3ZjJjMjhmMTgyOTMzOWY0YThiMWYzYzBkMDhiZGM5ZjkxN2M3NyBweTNrCis4MjgwMiBkNWQ1MTJiODY1YTc1ZDNkYjI0NTgyZjcwYTA2OTUwZWUzOWJkNGYyIHJlbGVhc2UyNy1tYWludAorODI4MDMgNTAxMmZmYWUxOGZhYzZiOTJjYzM3ZWExM2YwNTQ2ZDIwZTVjYTQ2YSByZWxlYXNlMjctbWFpbnQKKzgyODA0IDkwYmYwNjMxYmZiOGVlODcwZGVjN2RiOWFhYTQ5ZDZiYmE4ZGQ4MjQgcHkzaworODI4MDUgNGNiMGU4N2MwN2NhMzZhMWYwZGYxNTkwNDRiNTg0NTRjYTliMmU5MSBweTNrCis4MjgwNiA2MTJlMTI2MzE1MTFiMjI0ZDNiNGQxODA0MGVmYTY4MTAzNzA2ZjcyIHB5M2sKKzgyODA3IGQwOTBmNjI1NGM0NTNkY2U3ZDc0ZGZiMDhlNzc2YzllMmZmNTZjOWUgcmVsZWFzZTI3LW1haW50Cis4MjgwOCAzNjVlZWFiNGEzNTAyNjBhZjdlMTA3NjEyYThmMjY2MGZmYWFlMzE5IHJlbGVhc2UzMS1tYWludAorODI4MDkgZmNmYTdiYmUxODVlYWZjMGE5YjE1N2M2MjlmMTI1YTExYmQ4NDNkZiByZWxlYXNlMzEtbWFpbnQKKzgyODEwIDdmNTc3NTM5NWQzMjhiMGMyMGRmMWNhMGM0MTdlNGEyZjUzODJhZWYgaW1wb3J0X3VuaWNvZGUKKzgyODExIGJlMTNmZjM3NTVlOWZhYjcxNjMxY2M4ZTg3NDNlYmM1NDk2ZDcwNGYgaW1wb3J0X3VuaWNvZGUKKzgyODEyIDgxZjBmMGQ1M2QxMDg0ZTYxNzJhZTI2MDNkZTUwN2VlNzg1NmVkMTIgaW1wb3J0X3VuaWNvZGUKKzgyODEzIGQxMzkxNGVjZDM3MGZmYmI0OTgxMmY1ZWZjN2I2YmEzODQ2NThmM2UgaW1wb3J0X3VuaWNvZGUKKzgyODE0IDE4OWZhOTJkMTVkYzU5NzgyOWU3NWYwNGRiMWQ5ODZiZjM2ZDE5YWMgcHkzaworODI4MTUgYjE0MzhkMjZjMTY3Yjg2MjFkZThjMjI4OWU3MDQxZWNiYTFmMjUxYiByZWxlYXNlMjctbWFpbnQKKzgyODE2IGEzNTJiOTE1NmNlZWNiMjc4ODQ5ODU5OTAzY2QwZDVlNGU1ZDg4N2YgcmVsZWFzZTMxLW1haW50Cis4MjgxNyAwZjRiN2MwN2QxYjM3YjUyMTFjN2MyMzVmMTA5MzQyMGViYzZmNGJjIHB5M2sKKzgyODE4IDUzZTdhZThjYTAzOTE0OGNkNGExMjU2NjhkZDcxYzI4ZjM3YzYzMzQgcHkzaworODI4MTkgZWFjY2YxYTFjYjkwM2I0ZGQ2ODIzZTIxMWY4OTkxNDBhOWZjYzAxZiBweTNrCis4MjgyMCA0YzExZTQxNDBjZWQxZmEzODhkNzRkNmFiZDk0ZmVhMDg4NDQzOTk4IHB5M2sKKzgyODIxIDA2YjM4OTFhNjM5NTM0YmI0ZTQzNTJiY2M3MTJmMTUwMGQ4NzFhZGMgcHkzaworODI4MjIgMWNmNDNjNmU2NTY2YjM2MjlmZjMyYzNiMjg3NDdiYmIxZTdmNmJmNiBweTNrCis4MjgyMyAxMTI5ZDRkZmVlZDZmZTFkMWJmZThjMmRjOTFhN2E5YWRjYjAxNzcwIHJlbGVhc2UyNy1tYWludAorODI4MjQgNDMyOTA4ZDUyMWNlZmVlYjk1NzUyZGJjZjRkNjk4ZTBmMGFiZjE2MCByZWxlYXNlMzEtbWFpbnQKKzgyODI1IDMyZDhiMjJiMGU3YzVlNjI5MGQwZjRlN2NjOTQ3MDdlZjVkNjI5YmIgcHkzaworODI4MjYgNWNhMjJhMWJlM2NkMjE2OGUzMTRhNDk3YmZkOThhMjM0ZmI3MjgxNSBpbXBvcnRfdW5pY29kZQorODI4MjcgMTk0Mzg0YjUzODBlNTI0MzhkMmFiYjRhYTA3MzYwYmE1NzQxMDJmNyBpbXBvcnRfdW5pY29kZQorODI4MjggNGRkOTg1MmRhZTliM2U3MGViOTk0MWEwYWZjZDM0YjdkMDYwZWY4MCBweTNrCis4MjgyOSA3Mzc1MTllZjE2MmU2ZWYyNzY2YTZlYmIxNDZiMDdkNGU2Zjg0MDZiIHJlbGVhc2UzMS1tYWludAorODI4MzAgYWIxMDJhMjI2MDM4M2IxMmRjNTczOTRjMDU1NjgzMGM4ZjY1NjQwOCBweTNrCis4MjgzMSAzZjM3ZTNjY2MxMzEzODc4N2VjYjg3YTM2NzFjMjZlMDljOTgyN2QxIHB5M2sKKzgyODMyIDY1NzZmZDRjMGQyZTMxMThkNDk0ZDBlZGYwZWIyNDExNDQ3YjA5ZjIgcHkzaworODI4MzMgNDliODNiZmNmYThmYmJhM2ZmOTZkNmI1MzZjNzM4ZDg2MmU4ZmViMSByZWxlYXNlMzEtbWFpbnQKKzgyODM0IDg0OWY2ZTIyMGFhMGQyMzEwZjhhNjMzMjYwNTAxMTBiYzkxYzQzMTQgcHkzaworODI4MzUgMzBmNjk1ZWM5NDliZDIyNTUzOGQ0OGExZGNjMzdlZTBiZTI4ZGQ5YSBweTNrCis4MjgzNiA4ZTQyYzdhNWRhYjhkOGZiNjRkYTEwZDJhMDBkZTFjNjhiYzQyMjU2IHJlbGVhc2UzMS1tYWludAorODI4MzcgZjViMThmMjY4ZjU3ZDhlOTYwMmVjZWYyNjBjZDA1YTFiMDFkZTI1NSBweTNrCis4MjgzOCAwYmI0ZGFkODE2MTRiNzlmMjI2ZmQzMmVmZjM4Y2ExMDZjZmZhNGNkIHB5M2sKKzgyODM5IDY2NGEyMGY0YTgzNmM3ODIyY2RiNTYxOTUwZWU5MjYyNjcxNDU0YTcgcHkzaworODI4NDAgN2VhYmE0MTNmZGE0YjhmMjU3NjAyYTA1NmY5MmIxNWUxY2EwYzM5NyByZWxlYXNlMjctbWFpbnQKKzgyODQxIDk0ZjUyOTc2NGMzODczYzY1MWVkNDUxODFlODBiMjY4YmIzNWUxODcgcmVsZWFzZTMxLW1haW50Cis4Mjg0MiBmY2Q0MTIzYWVkOTM0NmM2NzlmZjhlOGVhZTYwZDc2NGNiYjNkY2FjIHB5M2sKKzgyODQzIDYwZmRmMTQ3MDMyY2YxNWY5Nzk2OTFkN2I2Mjg0MzMzNGY2MGQ0MjEgcHkzaworODI4NDQgNjRjYWE3NDhhMjhlYWM5MWQ1YTA1NmViZGViYmVmOTA1MGUxODNmNSByZWxlYXNlMzEtbWFpbnQKKzgyODQ1IDRlZjYzOWY0ZDgxMDBiNDI5MGNkNTVhYzk2Mzk5MTExYTJkZGI2NzUgcmVsZWFzZTI3LW1haW50Cis4Mjg0NiAxZjk5ODIzZjRmYWU3OGExZDc1ZTljOTYyYTdhNWJiODYwMTFmYzQ0IHJlbGVhc2UzMS1tYWludAorODI4NDcgNWIzNTIxMzNjNDUyMWM5ZTgyOGIzMmVhMzljMGJjZTlhOWFkNWJiMSByZWxlYXNlMzEtbWFpbnQKKzgyODQ4IGI5ZWRkZjNjMWU5MGExZTY4OWE2MmNjNjJlYmYwNTBiOWFmNGNhYjYgcHkzaworODI4NDkgZWRmZDdlYTQ4ZWRiMjVlZDZmYzkxYjg0MDgwMGUxMTM3MzdlZjkxMyBweTNrCis4Mjg1MCBiNTc0OWRkOGM0MjFiYjFkMDgyNDY1MjY5MmNhZjZhZmE2OGJkMDNjIHB5M2sKKzgyODUxIGRhZWE5NzhhNDhhZTg5NGY3NjMxOWFjZTU1NzQ4MjVmNjJhYTU3ZjMgcmVsZWFzZTMxLW1haW50Cis4Mjg1MiBhZDUxYWI4YjY0YmQwM2U5MTFlMTcyZTk4NTIzOTEzOTc1MGEzMzE5IHJlbGVhc2UyNy1tYWludAorODI4NTMgNGZkNWJhMzVkZjZlNTY5NTE4MGQwMjg5YmE1MTgyMjgxMGU4YzhhOCByZWxlYXNlMjctbWFpbnQKKzgyODU0IDk4YTRlOTZmMWY2NzQwMWNlNmQ5YTYxN2QyYzM0YTQwYzViYjFhYzAgcmVsZWFzZTI3LW1haW50Cis4Mjg1NiAzMWEzZDc2ZjM4MzUxOWZlNmI1NDY4NTRlYTE2YzUyYmE1MDYxNzRlIHB5M2sKKzgyODU3IDJjNzU3OWUwNGFkMjE0NTVmYWZlZmFlZTQyODE4Y2YzYzg5ZjU0YTEgcHkzaworODI4NTggZWY2N2U3NDgxMjQ0Nzc1ZDU4ZGU5NWJiYmNkMjk4Mzc3NTBmYjgwNSByZWxlYXNlMzEtbWFpbnQKKzgyODU5IGFlZGI1M2Q4YzJiOGNkNTQ3MjFhOTY1MmYyNjkzNTg5NTlkNzUwZGMgcmVsZWFzZTMxLW1haW50Cis4Mjg2MCA2N2VkYzQyNGU5N2I4MmNkZWY4NTQ2NzA2OTZiMDk3MTAyMTY1ODgzIHJlbGVhc2UzMS1tYWludAorODI4NjEgZTYwN2ZlMTVmMmQ2OTQyNWY0NThhNmFkOTRlYTU5ZmNmZDg5ZmIzMCBpbXBvcnRfdW5pY29kZQorODI4NjIgMWUzNjdhZmVmZDdlMGU5OTQxMzJlYjRkMTIwNjdlYWE4MDlmOWNjZCBpbXBvcnRfdW5pY29kZQorODI4NjMgYTVmYjcwN2NhYmRlZWJkODZlOTk1MTRkOWQ2NzBkZmU1Njg0NTJjNiBpbXBvcnRfdW5pY29kZQorODI4NjQgZDQ5M2ExYjQ0NTdlOWE5MTFmNTcxMjVkNGQ5MTk0MDhiNTk1YjlkNSBpbXBvcnRfdW5pY29kZQorODI4NjUgMjBiYjZmZDBiZDljMzVmNWI1MDhmNTYxZDliODQ1OWVjNmViMGU0YiBpbXBvcnRfdW5pY29kZQorODI4NjYgMzMxZTM3ZTA1MmNmM2JjNTNiNzViODBhNjczMTY2MTFmYTY5ZWM4OSBpbXBvcnRfdW5pY29kZQorODI4NjcgM2M5YjM4NDRmOTc4ODExMGNlNzAyYzRkYTQwOGRmMzNiZTUxNmYxZiBpbXBvcnRfdW5pY29kZQorODI4NjggMDkxNmU4NTg1YWNiMmQ5ZTdkOTJhMzg5NGIzMGMxY2IyOWRjMjQ1OCBpbXBvcnRfdW5pY29kZQorODI4NjkgN2YwZGFiYjdmZDhkZDYxMjZhNTk0ZGM2ZTg2ZWIwZGUyN2IxNTc1MyBpbXBvcnRfdW5pY29kZQorODI4NzAgNWIxYjdmNTU3NGMwMDFiYjhhODI3Y2ZkZTA0NDA2MGI1MjY0NzJmNiByZWxlYXNlMjctbWFpbnQKKzgyODcxIDg2MzU1MjNlZjVjNjM5NTUwYTc2ZmM0NGIzZmFkYjUyNWRiZjYyZWUgcHkzaworODI4NzIgZDRmNjdiODY0OTI4OGE0YjUwOGFlMjVhZmZlNGFjMDNmNjhiMGZkNSBweTNrCis4Mjg3MyBhZDk1ZTIzMTI5Yzc2Y2IyNmQ5MGI1Mzk4YTAwNDYwZTU2MDFmNDY2IHB5M2sKKzgyODc0IGQzMGI5ZGZmYjg2ZDQxMDc1M2QzZmY4NmFmMzZjYjJlNmQ5ZTJiZmIgcHkzaworODI4NzUgNzcwMjMyOTJmYzYxNGJjYTk1NGNiODE3YmYwZDhmYjcwYWFlOTY0OSByZWxlYXNlMjctbWFpbnQKKzgyODc2IDE4YmRjNDNjZTVlZDI4ZTVkZTFmMzRhYzEyYzFjZmU2ZWQ4ODQyZmEgcmVsZWFzZTI3LW1haW50Cis4Mjg3NyA3ZDdlNjNlYjNiNTMwMTg0NTRkYzQ1M2JlYmEwYWY4NjFjZjY3MjM1IHJlbGVhc2UyNy1tYWludAorODI4NzggNzdkZmUyYTc3NWQxOTk5MGMzZjNiN2NkN2EzNzdlMGQ0NjNhZWVkZCByZWxlYXNlMjYtbWFpbnQKKzgyODc5IGViMDA3NWU2MDcyNWI5ZjEzMjNjY2EzZjkzNzM3ZmM3ZTcxOTJjZjMgcHkzaworODI4ODAgNDEzNjBmODAzOWFiZmIzNDYyNjJlOGE0ZTAyMmRmMjFiYzNhOGY1MyByZWxlYXNlMzEtbWFpbnQKKzgyODgxIGQ3NGRlMDUwYzQ0NWRiZTllY2E4M2E1OTYxYzJhZTU5NDJiNDNjNTEgcHkzaworODI4ODIgNGI0NTY3ODBjOGQ4YWY0MjlhZDlmYzMyMGFlM2U1OGI3MjFmYWZhZSByZWxlYXNlMzEtbWFpbnQKKzgyODgzIDYxNDFjYjJlMjZlMTQ3MDAzOWJjMGI0MjAzNjMyMmQyM2M1NDcyODcgcmVsZWFzZTI3LW1haW50Cis4Mjg4NCAwZjI0MzE0MDEwMjEyNzcxOTYzZTU5ZmE5YTZlYWNkZmU3YjMwMzZkIHJlbGVhc2UyNi1tYWludAorODI4ODUgYzBlMDc1NmUwOTk2NjM0ZWVkNWRjOWNjYWIwMzQzODA1ZGEyZTlkNCBweTNrCis4Mjg4NiAzODA1ZmZlOGZmMzgzMTVlYjZlMjIyNTAwZWRlNDE3ZjZkMzY0OThhIHJlbGVhc2UzMS1tYWludAorODI4ODcgNmM3NjNkNjMxZGJhMDU5NDc2N2UyY2Q3MmY1ZWZjZDA3N2UyOGY3MCBweTNrCis4Mjg4OCAyYjY4YTg0NDE0NTg3MmZmYWZlNTFjMjgzMzk2Y2E2YzFjOTEyODA3IHJlbGVhc2UzMS1tYWludAorODI4ODkgZDRmNjFiMzZjY2U2ZTZlNzAwMjdhOWVjMjVlMGIyNzFiZDY3YzVlNiByZWxlYXNlMjctbWFpbnQKKzgyODkwIDlmMWQ5YWVmMzc0Yzc3ZDk5OWFkZDJkZmYzMjBjZDc5MzMzMTA1ZWIgcHkzaworODI4OTEgMGY4M2NhMTIwNzUyOTBiYjA1ZDM2NGNlMjAxNTU0Mzc3MDhiYThmZiByZWxlYXNlMzEtbWFpbnQKKzgyODkyIDk2NzU3YzY5MGIwNWYyZGY0YmNlOWViNjljNzFmY2E0ZDAxMWEyYzIgcmVsZWFzZTI3LW1haW50Cis4Mjg5MyBjNzA4Yzk0NmZmM2U0M2U3ZGNjZmE5MDc2OGZmODFiOGVkZGRkMzA2IHJlbGVhc2UyNi1tYWludAorODI4OTUgYTFmN2RlYTM2MjE5NmI2YjFhYmM0NDUwYmM3YTc0MGZkNDhkZDAzOCBweTNrCis4Mjg5NiBhMjk3M2U3MDUwNTdhNzFjMDA3Y2M2YzUzZDJmMDY0YjZhZWQ5ZTQ5IHJlbGVhc2UzMS1tYWludAorODI4OTcgMGIyOTFlMmZmMDBmYzkxYTk3ZTgwYjUwNTBlNjZhNWFiYjlkZGU0MiByZWxlYXNlMjctbWFpbnQKKzgyODk4IDYzMzNkM2E3ZTVjNzM5ZTk1NTcxNzlkMTI1MDYzZmQ5ZDk2ODAzMzAgcmVsZWFzZTI2LW1haW50Cis4Mjg5OSA0NjkyNzgxMDI3OTA4N2EzMzhhYzEyNWY0Mzc0NTUwZTgwNDA2NzkzIHB5M2sKKzgyOTAwIDRmZTI4YTQ5MWE2MzA4OTNlYTVhNmM5ZGJhMjhjYmU2YTg4NTE3NTcgcmVsZWFzZTMxLW1haW50Cis4MjkwMSBjNzQ1ZGY5NDYyZTY3N2VkODEyZWU4NmY2MmI4MDIyMzcwZjdlNGJkIGltcG9ydF91bmljb2RlCis4MjkwMiBhZDI2M2NjMzg2YTU0MjIzMmJiMmVlZGNmMzY0NGExMWVhYWEwMTQ4IGltcG9ydF91bmljb2RlCis4MjkwMyBmZWNmZjA0ZDBhYjEzYjBlODljNjNiODcxNmFhY2Q1MmJkZGIxNDU1IGltcG9ydF91bmljb2RlCis4MjkwNCA3Y2RmYWNlMWFiMDk2MjZlZDFlNGFhNmNiNmE1NjVmNmI5M2YwODllIGltcG9ydF91bmljb2RlCis4MjkwNSA3MzBjOGI5MDdkN2RjYzg3OTFlZjZlMzQwMGJiOWI2YTM3NWE4MTEwIGltcG9ydF91bmljb2RlCis4MjkwNiBmZjlkZGMxNjFlZTNkMDY5N2JhMWMxZTk4ZmE2MjhlOTJmZGM4YmRmIGltcG9ydF91bmljb2RlCis4MjkwNyA3YjcxYjZkYzc0NDRlMGExY2NiYzA0ZTM1YjUxZTY1MDM4M2RiNTI3IGltcG9ydF91bmljb2RlCis4MjkwOCA4OWY5N2ExMjEzY2Q5YjA0NzU4NDExN2M4MjhhOGNmYzRjOGU3YjkzIGltcG9ydF91bmljb2RlCis4MjkxMCAyMDI2ZWE0NDI4ODk5YzkzYTdlZTM2MjA3YWQ4OTRjYTBlYjJiMTQ0IHB5M2sKKzgyOTEyIDBiNzUzYTNmZTRiMGUxNzllNDVmOTc4ZTAyZjFmYjQ2ZWFiYTFiMjkgcmVsZWFzZTMxLW1haW50Cis4MjkxMyA1ZmZmYWM5YWM3ZDZjMjY5NTZmNzlkOTEzY2EzNjJmMmU1ZGVjZGYwIGltcG9ydF91bmljb2RlCis4MjkxNSAxZjI3YTA1YzZjMzFkNGExMzE1MmQzYzM5ZjdmNzU5YzdkNDQ2MWFhIHB5M2sKKzgyOTE2IDI0ZjdmYTI1ODFlNmYxZDRkMmUwZmExMWQzNWIyYjU0ZDhhYzJlNDIgcmVsZWFzZTMxLW1haW50Cis4MjkxNyBlNzAzMTk4M2U2ZmRmM2M1NDg1MzdkN2M4ZjljMjE1ZjUwYmY1MzMzIHJlbGVhc2UyNy1tYWludAorODI5MTggZTJlYzVmYmM2Y2YxMzdjYzY0Y2EwYzNhNTliODAwZGQ5NDcwMGE5MiBweTNrCis4MjkxOSBhMGI5NTM3N2FhYWQ4ZDZlOWJkYmUxNDBjMzRmYmRjYWJlOTM0Yzg3IHB5M2sKKzgyOTIwIDdjYmY4YzRlMjcyNzkxZmQ3OGIxMzIzYzNhMWRjZjA0YzU3ZDgwODggcmVsZWFzZTMxLW1haW50Cis4MjkyMSA4NGZmNDE3OTRkM2YyYjQ4ZGEyNmU4ODYyZWVlZmRlMTdmOTMzZGZhIHB5M2sKKzgyOTIyIDNjNzMwMTBiZDBiMGNmN2YyZDgyNWJhOWIyZDJlZTRjYmMzNDU0MGQgcHkzaworODI5MjMgN2EwMGNhNGI5NTkyYjg1YTY1ZWUyMTA1ZDIzODNlMDg3ZDllNDkxYSByZWxlYXNlMzEtbWFpbnQKKzgyOTI0IDAxNzExZjYwZmZmY2ZjZDQyMWZmMTE5YjVlNmUyMmFkNjNiNTZlYWMgcmVsZWFzZTI3LW1haW50Cis4MjkyNSA0YzQ1YTMyYzNjYzk5OGVlNTIyZDI4NGMzNzE0MWQzYzJiMWIzODkyIHJlbGVhc2UyNi1tYWludAorODI5MjYgZWFmMDRhM2Y0NTFhMmRiYjAxZmY0NmQxZDljMGQ5ZDE3YWM2NmY0NCBweTNrLWNkZWNpbWFsCis4MjkyNyBjNzQxYTFmMjI5NzY5OGI5Njc4ZmVjMGUwZjA1YzFlYjMyYjAzMzhkIHB5M2sKKzgyOTI4IGZhOGYzODgzNDI4NzhlMjY5OGI0NWM1N2ZjNGRkZGU3YzJiOTBiYmQgcmVsZWFzZTMxLW1haW50Cis4MjkyOSBlMDViNjQ2ZDZiOTg1MDFmODEzN2U4Y2FkYTM2MzNhMDczMzRjOTdmIHJlbGVhc2UyNy1tYWludAorODI5MzAgYjIyODkzYmUwOGM3MWUxNzNmNjY4Mzg2NjU3OWFhNjk5NWNkZjBlNiByZWxlYXNlMjYtbWFpbnQKKzgyOTMxIGNmNGI4MzNhNDdkZTg1YWVjNDc1ODAwNDRmZTVkNmViYTUyZDY3YzIgcHkzaworODI5MzIgZjI4MzMwODgxZGI0NGU4MDUyM2I3NDA4ZTNmYzFhZTQ1ZWVlNzdkZCByZWxlYXNlMzEtbWFpbnQKKzgyOTMzIDkwNWZhNTcxOTQwMzBlYzU2YjAyYzI5YjM0MWUxYWUwNWEyZGY5ZWMgcmVsZWFzZTI3LW1haW50Cis4MjkzNCAyYTc5YjcyM2FiZGNmOTUyZTEyMzliMGQ5NTQyMDkxODcwMDAzODI3IHB5M2sKKzgyOTM1IDhjNDQwY2Y5MDc3NmQyZDQ3MzhjNzY5YTVkZjVmNTU0OWZjOTdhZTAgcmVsZWFzZTI3LW1haW50Cis4MjkzNiA5ZTYxOWYxNmY2NmFhNDI0YzRmODE2OTk0MjUyMjZiNTZhMGUwZDViIHJlbGVhc2UzMS1tYWludAorODI5MzcgM2M3OGIzY2ZkNDYyY2Y0OGFiYmRiOGM0YWIwZGU2Yjk0ZmRmMWI4YSBweTNrCis4MjkzOCBhYmY2OWQ0MDI4ODNiN2IzZGUyYzNjOWE5MjdlODM1NmYyNGFkZmM1IHJlbGVhc2UzMS1tYWludAorODI5MzkgZDFkODEyNDZiMjI5OTZlM2Y1NjgxN2U2ZDUwNjUxOWFiZDgzNTY2ZSByZWxlYXNlMjctbWFpbnQKKzgyOTQwIDFlMjFkOTRlMDVmNDYyOTM0NmVkMGRlZjJiMzZlNmRiODMxZTZjMGYgcmVsZWFzZTI3LW1haW50Cis4Mjk0MSAyNjgzMzMzNzU1ZjM2MmI2YjU0N2EwMDQyM2JjOTVmYjkxYTc0MDExIHB5M2sKKzgyOTQyIDY4MDM2ZjJiNWFjOGQ5ZjUzODkzMGM1MDJjZWRhYjMwNmU4NmQzZjAgcmVsZWFzZTMxLW1haW50Cis4Mjk0MyBiMWRjNjBiM2M3YWViYzI0NzBiMmNiNGNkMzk5OGY3NDRlOTczZjE0IHB5M2sKKzgyOTQ0IGRiMmRjY2EyNDA2OTQ3MjdiYjA5MWY5NGE3YjkyZjA1MzgxYWQzYTkgcmVsZWFzZTMxLW1haW50Cis4Mjk0NSAxOTE5MTU1OWVjMDJjNWRmYjJmZTlkNzIwYzE1MzRkNmQ3NmY5MzY2IHJlbGVhc2UyNy1tYWludAorODI5NDYgYzE2YjNmNmFjNTExYjYyNDczZDc5YjI0YzM2NDU5ZjBjN2JiZDRkZiByZWxlYXNlMjYtbWFpbnQKKzgyOTQ3IDIxMWUzMThkMjNlZmE4ZjZjZGEyOWYyZDI1MjU4YmMwMWM3NTlmYmMgcHkzaworODI5NDggZGIzYWQ2ZWMwYTRiMTZkOTdlMmMyMWIzMTNmZmU0YzkxNzkyODYyOSByZWxlYXNlMzEtbWFpbnQKKzgyOTQ5IDk3ODY4M2ZkZTgyMDM3NDE3ZDgxODQ0NTIwZjJkODdiMWRhMGViYzcgcHkzaworODI5NTEgNmRjM2QyMjI4M2ZmNTRmYzRiNjFmMGZhOWQyZDRlZWVjNTUyMjU4OSBweTNrCis4Mjk1MiAxNmU4NjJhNWI2ZjI2ZGVkOTg3YzA4N2EzOGJlZTM0NmFiMDkzYzFiIHB5M2sKKzgyOTUzIDRiZjAzMzc3NTg0ZGIwNzY0OWI4ZGUzNWU2ZWQyNmQ1M2E1OWVhOTAgcmVsZWFzZTI3LW1haW50Cis4Mjk1NCA0MWFiMTYxZDQ3YTdiZjQ1ZGM1OGI0Nzk2MTc2ODIwZTJkYWFiNTQxIHB5M2sKKzgyOTU1IDdlNDUxY2U5MGMxYTYyNDRhM2I0ZTliMDE4YTY5MjExZTA5MWQ2NDAgcmVsZWFzZTMxLW1haW50Cis4Mjk1NiAwZDkxODEyZjYyNjA5Njg3ZjBiMjNkYTM5MjJjNTFkNzZiZGU0YTAzIHJlbGVhc2UzMS1tYWludAorODI5NTcgMzFkZjZmOGU5ZjFkNGQwNDlkOWIyYjk2YWU4ZGI4Nzc0N2I5NmM0MCBweTNrCis4Mjk1OCA2N2Y4ZjA1Y2Q0MGRjMGUyNjFlYzJhYmVmMGQ3OGIxNDViNjNiY2Y2IHB5M2sKKzgyOTU5IGNjZDNlNTQ1NjJmYTdhMGQ2NTNjZmU3MDhhMTgwODllYTMyNjI3MDEgcHkzaworODI5NjAgYTRkYWU3ZTJkZjdlNjY2M2YwZDNjZmJiYTNhY2VjODUzZjBiOTU1MiBweTNrCis4Mjk2MSA0ODM1MTA2ZWNlMGM1MzI0YTIwYzYyMjZmNjFkOTljODAzNGQ5ZmZlIHB5M2sKKzgyOTYyIGE2NWM5OWY5NDg5MDA5NWIwY2NhNGEzMDIyNmVlNWMzNzE1NjI0OWMgcHkzaworODI5NjMgYmI3ZmMwOGY3MjNlYzdkYjdmYjFkZjllZjYzNjhjYjc4NmE0MThlYiByZWxlYXNlMzEtbWFpbnQKKzgyOTY0IDJmOTU1YmY5MzAzN2I2ZDY4Y2JiODRiMmQ0YzEzODZkYjgzNDIwMDkgcHkzaworODI5NjUgMjUyMTZhN2UyMzRkNmFhMzg1Y2IzYTI0ZmQyYTEyMzY5MDRjYWE0ZSBweTNrCis4Mjk2NiBkMzU3ODJhYzIxZjg2MWY5Njk5OTZkZDdkZDgxZTZjYjk0MTQ5YzJiIHB5M2sKKzgyOTY3IGI3OTQyOTE1NDgwZjc4YmE1Mzk2YWE5NDk2NDE2MTI5MGU3N2M5MDggcHkzaworODI5NjggYzkwMDIxZmQxZmJmYWZmYmZiZGI0ZjMzZDE0ZjQ3NWRiZTZjMzg5NCByZWxlYXNlMzEtbWFpbnQKKzgyOTY5IGM5NmE3MjJiZTFkYmMxYzRlMGQwYmI0NDZkMDc1NTNlMzRiYjJiZDIgcmVsZWFzZTI3LW1haW50Cis4Mjk3MCBiOWM5ODlhMmZhZDMxMzc3Y2IyNTkwNDllMzdiYjRiNmFlNGM4Y2VkIHJlbGVhc2UyNi1tYWludAorODI5NzEgYWEwYjU2ZGQxNGFmN2I4YjVkNDNhZTBmNGRjNDA0ODNkNjQ2ZWRiYiBweTNrCis4Mjk3MiBhZDY2ZWZmOTgwMGJiYzJjZjI0NjcyNmFhYmRkM2NmNjdiZmZkYmJhIHJlbGVhc2UzMS1tYWludAorODI5NzMgMzU0NTQ2ODQ2YzI5N2FlM2UxMzI5OGM5NTMzNzk0ZDJiZDY5ODVkOSByZWxlYXNlMjctbWFpbnQKKzgyOTc0IDNmZGQ5YjQzMDI0YzYyMWYxMmZjMjY5MmI4YzVjMGNlYjg2Y2EyNGMgcmVsZWFzZTI2LW1haW50Cis4Mjk3NSA3ZjMxM2VkOWU4OGYzMjQzOWEwZTRkM2IxNWM5ZWEzOGExMTYxYWZiIHJlbGVhc2UyNi1tYWludAorODI5NzcgYTExMjE0MDlmOTZiMjBkZWZhYTRmNDc1MTJmMTk0NTBiZWUyNmI0MSByZWxlYXNlMjctbWFpbnQKKzgyOTc4IDczZGRiOGIyYjU3NDdlOGMzMmIzYTE2ZDQyZTVkZjNiNmJiNjUxMDEgcHkzaworODI5NzkgNWNmZjA1OGQ2Y2VkNWMxNTliMWFmZGZhMzg5MjNjNjI3NDU1YjNjZSByZWxlYXNlMzEtbWFpbnQKKzgyOTgwIDNmYTYwNTY4OGQwMzVhNTQ1YjYwMjAxM2JiMGMwYzE2ZTc1ODIxMWIgcmVsZWFzZTI3LW1haW50Cis4Mjk4MSBlMWJjMmM4OTM1ZDIwYTdlOGY3MDJkMTllNzhmMjMwYWFiMmExNGUxIHJlbGVhc2UyNy1tYWludAorODI5ODIgMWM2NmY3MmY2YmM5M2IxZGI0M2MwMzUzZWNjYTQyMDhkMzA0NjRmMyByZWxlYXNlMjYtbWFpbnQKKzgyOTgzIGYyNDE1OTJlY2U0ZWJlNWRlYTkzMDA1Nzc1MDg5ZWY2OTI3MmI5YzcgcHkzaworODI5ODQgNzQyZmRmN2Y2NTQwMDU2MjZmZTc3YzcxYmZjZTViMjllY2M0NjMzZCByZWxlYXNlMjYtbWFpbnQKKzgyOTg1IDg3MmIzNGNiMjY4ODUxNDQyZTQxOTMzODAxZmU2NjQzOWRjNmE0NWMgcHkzaworODI5ODYgYjJmMTM4NWEyMzVlMGQ4OTg2ZTI5NzRkYzBhZTczNDlkYjAwMmIwMSBweTNrLWNkZWNpbWFsCis4Mjk4NyAzMzM3YTI5NTVlMTE5MjdiM2RmYTdhZTg4ZDc0YTk1N2E5MDAwZTFmIHB5M2stY2RlY2ltYWwKKzgyOTg4IDE2OTM0N2Y5ZDRjNGYyNWRiMDdjOWZkODRmZDM3NDk3MWU2YzE0MjMgcHkzay1jZGVjaW1hbAorODI5OTUgOWM3NjZjZDIxMWRiMGVhYTYyN2E1ODFiMTAxMzI4ZDA4ZDhkYTA0MSBweTNrCis4Mjk5NyBhMTRhNzg2OTJjN2ExNTgwZWE3OTk1NTUzNjAyZjYwYmMyZTdkZjc0IHB5M2sKKzgyOTk4IGMwZDhmZTI1ZTI2NmVjODY2MWYzNGY2ZTk3OWQ0Njc0YjAwNTI0ZTcgcHkzay1jZGVjaW1hbAorODI5OTkgMWUyNjFjY2U0MTE2NDVhMzZiNTdjODdmNDg0OGY1ZmUyYmUyNTg3NyByZWxlYXNlMzEtbWFpbnQKKzgzMDAwIDQ1ZWQwY2YyYzM4NmE2ZmJjOTdlNjA2ZjQyMDQzNmFjMjkxOWEwZTIgcmVsZWFzZTI2LW1haW50Cis4MzAwMSBjMTYyMDIyMGE0M2QyOGY3NzAwODIzMDlmODQ1ZjRlMjY3NjUyNGY5IHJlbGVhc2UyNy1tYWludAorODMwMDUgY2JkNmY1ZDI0YWY5MDYxZWEyYWJhYWViZTJiMTEyYzA2NDNiZWE5NiBweTNrCis4MzAwNiA5MDU3ZWEwMTQ0NjE3ZjI4NjQxMGVlZDI4NjI2YzZlNTgzNzM1NWViIHB5M2sKKzgzMDA3IDc1YWY0YTI3YTA3MDk3MWEwM2ViNGRiYzM4YmU3YTZiYjQ2YjFhMWQgcmVsZWFzZTI3LW1haW50Cis4MzAwOCBkMGJhM2I4YjBkNDgyYjExZWZmOTZkODhkYzY4MjM1ZDdkYjc2ODg5IHJlbGVhc2UyNi1tYWludAorODMwMDkgYmZkYjVmMDhjMGY4MWZiNTJjOWVkZWM5NWZiZDBhMTU5YWJiYjQ5NCBweTNrCis4MzAxMCAxNWVkZDVmYmJjYWUxZDNiYzE4ZDA5Njc1OTE3M2Y1ODc3Y2QyOTVhIHJlbGVhc2UzMS1tYWludAorODMwMTEgZmVlNDk5NDYyMGZiZjk4NTFhYzEzZDg3MDZmYzFjMWUxY2JlZjE4MCBweTNrCis4MzAxMiBmNGViMWM2YTM0ZWY0MzBhZDBlYmViMmY2YjFlMWU1Y2IyZDZlNmIwIHJlbGVhc2UzMS1tYWludAorODMwMTMgNzA3OWM2MDc4MTRjYWFiNGMwYjE4M2E2NTNjN2JhNTg2MTBkN2M1MCByZWxlYXNlMjctbWFpbnQKKzgzMDE2IDViNDY4Njg3NzY4Y2Q1MThhYjgyYzY3MTA3ZmUzMDY4YjNjYTZlYTMgcHkzaworODMwMTcgNzA5MjVkM2MwMjc5NDdmNjk5MzY5ODIyM2M4NGExNDJiMzg3MTk4NyByZWxlYXNlMzEtbWFpbnQKKzgzMDE4IDJmMWE4MzZmMGZhYzFhMjNmMGRiNTE5ZjdjOGQxOTU3ODhkNzJkMTQgcmVsZWFzZTI3LW1haW50Cis4MzAyNSAyMGU1NmVjY2RmNTIyNjM4NmFlNDFjZWMzMmVkZjA0NjhiYWIyMjk1IHB5M2sKKzgzMDI2IDRiNDBiZjkxZWJlYjMyNmU1OTc4NDgwNzhlMDU0YWI4MDc5ZmEyYTAgcmVsZWFzZTMxLW1haW50Cis4MzAyNyBiYjY4ZTUzNDU0YjZkNjRjNmQzNjBiMzIzMjBmYzgyNTU5ZTZmYmMyIHJlbGVhc2UyNy1tYWludAorODMwMzAgMzY3NTI5ZGMzNGQxMWYxMjUzNGYyYjMwMzVjYjI5NmFlYjVmYjQzZSBweTNrCis4MzAzMSBlNWNkYjEyNzY4Y2I0YWI5YmE5NDBjNzFjZjE0MzkzMWRkMzBkOTZmIHJlbGVhc2UyNy1tYWludAorODMwMzIgN2I1ZDE1MjdjMGNlOGEzMDkwNjU2ODVlZWFlOTNmZWFjODIwZWMwNyByZWxlYXNlMjYtbWFpbnQKKzgzMDMzIDUyMGJmNGQxY2I2NjUxNmI5MTA3NDZiYThiMTY3NzA1NjcyMGI2NjAgcmVsZWFzZTMxLW1haW50Cis4MzAzNSA0NTQ1ZmY1MDYxYjdhN2EyMjQzYmZjNjFjM2E4M2ExNmYwYmExNDdkIHB5M2sKKzgzMDM3IDlkYmJlNmU3YjY2OGMxNTg0NmQ3YzlmYjM1YTZlMDRiMzY2ZGFjNTUgcmVsZWFzZTMxLW1haW50Cis4MzA0NSAxZjRlZDcxYjY4ZTIyNDZlNWRkNjFlZTVhZjJiOGVhMzMxM2JlNmZjIHJlbGVhc2UyNy1tYWludAorODMwNDYgMzA1OTAyYjNjMWEwMDlmYmNkZTE3NDdhNTNhZGVmZDYxNzc1ZmQ1MyBweTNrCis4MzA1MyAyOWEzZWRhODk5OTUzZGMyYjMxNTY4ZDBlYzY3MjU5OTYxNjBlMzUxIHB5M2sKKzgzMDU0IGVlMDFmNTQ4MWM2ODBjOTBjYzNjZDE2ZDYwZjg4OWQ3Yjc5NjJjMTggcmVsZWFzZTMxLW1haW50Cis4MzA1OSAzZTYwOWJmNDYyZmYzMTFjYzMwNmQwOGU0MTY1OGU4OTViYTY3NDYzIHB5M2sKKzgzMDYyIDFjNDQxZTM5ZGJlNDZkODgwZjdmMTdmYTE2MDg0ZWIwNjcwZjAzNjUgcGVwLTAzODQKKzgzMDYzIDg4NTIwZmI0NWJmMmVkNGEzYjc5YTYzZDQ3ZGMwM2YwM2E2NTQ3MzEgcGVwLTAzODQKKzgzMDY1IDU5MTI0OWQ5ODM4M2FjNjM0MWRkYmMxNzYzOTQzOWQ4ODdkNmNmYmUgcHkzaworODMwNjYgMTZlZGQ0ZmJhNmE1YzJkNmJlMDQwZjFhOTZlYTIyYzVjNzhjN2JlMiBweTNrCis4MzA2NyAyYWQ4ZThjZTQ2YzZiOGY4ZTY5ZjM2OWE5MDYzNDk5NDRmZGQ0NjU1IHB5M2sKKzgzMDY5IDVhNjk4YTE1MmYzMDIzNWQwNDk5NDgzNTRkOTFhYTI1NWQ2MDdlYjEgcmVsZWFzZTMxLW1haW50Cis4MzA3MCA3MjFlNzI4YWMwNjBmMGE0MGJkMDFmOWViYzJiNjQ5NmU3YzliNGJlIHJlbGVhc2UyNy1tYWludAorODMwNzEgNTM1Y2FiMWE4YzAwNDk2ZTNjZjU4NzNkMWYzMTMwNDVhNzE2ZWQ2NiByZWxlYXNlMjctbWFpbnQKKzgzMDcyIDM3ZDg0ODkxYzY3MWEyZDE3YjQ1YWRlNDUyNmFmOTQ4NjE5YTZiN2UgcHkzaworODMwNzMgOGVmOTU3YzM4MWZkYTcyNzA5MWVhZDBlZjQzMTIwMTJmNWYxZjk2YyBweTNrCis4MzA3NCBmYWE1ZjAxN2ZlYTVkODlmOTNiNzU5NjI3ZTZhNDJjNjVhYWY3ZGFmIHJlbGVhc2UzMS1tYWludAorODMwNzUgZTYwZmRiMzQ4YmRjNjExMGFiMGVkNzhlMzAxY2UxZDBmODY0OTg0NyBweTNrCis4MzA3NiBjNDgzZjk0OTc4NzJiNjMyMWE5ZDVhYmVjYTgyZmYzOTQ1MGVlMjhmIHJlbGVhc2UzMS1tYWludAorODMwNzcgYmZmZDM5OWI3NjRjNmRkNjdkODM1MzkzODMwMGRhODJhZGViMjRkZiByZWxlYXNlMjctbWFpbnQKKzgzMDc4IDc2ZTA3OTIyNTA3OWM2ZjUzOTBmM2RjZDk0YWZjMmU2ZmIxMGRhYTYgcHkzaworODMwNzkgOTk2ZWU5ZTAzODE2NzA3NWU3ZTEzNWRhMjk1MThhYzllNWJmOTM3ZiByZWxlYXNlMjctbWFpbnQKKzgzMDgwIDNhOTNmZDJlYmI0MGNlYzJiZjZhMWM1NmI5YWY1Y2NiYWI3NTg3YWMgcHkzaworODMwODEgYzBjZjdkNzAwMWUyMzIwYzJiODI3Yjg2NzUwOTI1ZmM0ZDc5OGY5ZSByZWxlYXNlMzEtbWFpbnQKKzgzMDgyIDVjZTNjMDY0NDhhNzhlZjQ2ZjFlZmUyNWFhMjY5MDA3OTYxYjI3ODEgcmVsZWFzZTI3LW1haW50Cis4MzA4MyBiZGMwNjlhMWE3MjFiMjhhZDIxODQ5MjMyYmQ1NDI2ZGRhODcxNTA2IHJlbGVhc2UyNi1tYWludAorODMwODQgMTgzYzU2MjVlMDBiZGY2OGQwNDg3ZjY3NmViNmNiYWQ5MjAzYmEwZCByZWxlYXNlMzEtbWFpbnQKKzgzMDg1IDFjZTg0YzYxZjNiMTM2MDAxMzlhMTIxNmEzYmYwYTk2NDQ5YTM5NDIgcmVsZWFzZTI3LW1haW50Cis4MzA4NiBlMjY3ZWU5NzYwYmQxNGE4YjQyNzBlMTJhZjk4MmM5NDFmYTdhNjdkIHJlbGVhc2UyNi1tYWludAorODMwODggMTAyNzRhN2JjNTM3NzYxZmRiZjgyNjMwZTFhMzY5NDgxODg4YTg2OSBweTNrCis4MzA4OSBlNjM4M2M4MWRhNDFjYTA1NmI1Y2Y2MTdkMTllZGM5YmIzMzI3ZTFkIHB5M2sKKzgzMDkwIGY1MjNiMzk4NTJlNzQ2MGNmNzdkOTUwZTZmYjQ4NmU5NzI4ZGRkNmQgcHkzaworODMwOTEgMDQ4M2I4ZThiYzU5ZjE3Yzc4MWI1NDk3Yjc5OTdhZjgxYzNjYzYxZiBweTNrCis4MzA5MiAyODU1ZDYzNjMxOTI5ZmY1NTc0ZGIzZjE0ZDlhM2FlNDlmOWRiZjk3IHB5M2sKKzgzMDkzIGVjNDJiNzI4MjY0ZGI2Y2Q0ZDY4MGZmMTRhMGU3MTFkODJhOGNjOWEgcmVsZWFzZTMxLW1haW50Cis4MzA5NCAyNzg2ZDYyY2M3OWMzOGE3YTAxODQ4NzE1ODJjZTUxNDQ2NjcwZWE1IHB5M2sKKzgzMDk1IDc2NGVjOWJiZjAxM2ExZjAxMTBhNzNlMDMzYTdjMGU5NjA0OGZhNGEgcHkzaworODMwOTYgODcyM2MxZGQxZDI1YzFhODRiZDlmMmU4Y2QwNjY1OTEzMGU3MjM0NCBweTNrCis4MzA5NyAxZjhmY2JiNjM5NmJjNjllNmM5MjAwYjU5YmYyNzI2YWZkMGEyNmEwIHJlbGVhc2UzMS1tYWludAorODMwOTggOTdiODQxYjNiMGI0N2JjNjkyMmM5MTBjMWMwNjMwNzE0NjgzNjk0MyByZWxlYXNlMjctbWFpbnQKKzgzMDk5IDA2MGRlMDYwZjAzZmYwYjZkOTZiZWE3YTIxZDVmMjEyZWNhOGMwYTIgcHkzaworODMxMDAgNjg2MTljMzcyZWYwMTNmOWRiZThkYTMxZGUzYWNhNDFmMTM3MmFkYyBweTNrCis4MzEwMSA1ODBjNzg5Yjc4NWQ1ZDczOTYwOTcxMWIxMmZhMzc1N2E4MDE3ZTFhIHB5M2sKKzgzMTAyIDM4M2U4NDYzZjU2YzAwMDRiNTVjYTFiYmNlMTEyNjEyOTkzNDk4NjkgcHkzaworODMxMDMgMGYyYjBmMzc3NjQyNDZlYzE0MjgyM2I2NDYyZDJmMDk4Nzc2YmVjYSBweTNrCis4MzEwNCAyMjdkZWUyNzg2MzhhN2Y3OGUyMTUyYmMyYTcwNWE4ZjAyYzMxYjgwIHJlbGVhc2UzMS1tYWludAorODMxMDUgMzJmYWNiZWRmZDBlYmM0ZWEzNjIyODVkNDYyYWJmMmNkZjIzOTQ5ZCByZWxlYXNlMjctbWFpbnQKKzgzMTA2IDQ4MjcxNzk2MDI1N2EwOTBkMTMwYWFjMjhhNmE3NzUxNzYzMWIyMGYgcHkzaworODMxMDcgZTQzNzk1MzQyNWQ3MDU0MzI3Zjc2ZTI4ZjdlYTQ4YThjYzU1YzcwYiBweTNrCis4MzEwOCBhZjkzNDEzMjRkM2Q4MmUxODM4NmE4MGYwYWZjYTc3NDUwZDNiNTljIHB5M2sKKzgzMTA5IDcxZjFjMGJlOGFhNzc2NTQ4ZWMzMzM0Zjg0YWE2MDBjZjNjMzNkYzkgcHkzaworODMxMTAgZGIzN2FmMDdkNGMyNzEyMDg0YTZmYWNhZTM0ZWIzNGNkYWM3NGMxZiByZWxlYXNlMjYtbWFpbnQKKzgzMTExIGY5OTcwMzkxZWVhYjI4YzJhNmYxYzRlMTRlYTc2YmMyMGM1YWE5OTAgcHkzaworODMxMTIgYWZkYjUzMzIzMDY1OWE0MjdhMzZiMmY2NWIzN2JjZTNiMWY4ZjAwOSBweTNrCis4MzExMyBlNzczODg0NTc3YTUzMzRiNzcxYWNhMjBkNTcxNjcwODdlNDZlZjdkIHJlbGVhc2UzMS1tYWludAorODMxMTQgODk5MzFjODM2ODU3NGE4YjQ2NDJlMjdmYzY0OTcwYTkxNGI1NWNiNiByZWxlYXNlMjctbWFpbnQKKzgzMTE1IDRlZDYwYzRiYzhiNjAxNjliYmI0M2E2ZWY1MjA0ZDc2ZTlhM2JmNWIgcHkzaworODMxMTYgOGZhNDI0YWVjZDBkYjhlNmFlNzEwN2VlOWM2NWJlZmZjYzZjMmQ1ZSBweTNrCis4MzExNyBkYzJhN2MzNDRiYWFmZWExMGJhMGQ5MTBiY2YxMTE0ZmU2YTY0ZmZmIHJlbGVhc2UyNy1tYWludAorODMxMTggOTM1NzgwYzYyYzU5NTc3MDA5ZGFkMDBhNWFmYTFlNzlmOGE2YjUxZCByZWxlYXNlMzEtbWFpbnQKKzgzMTE5IGVkMzI4ZTY3MmFjZTFhM2Q4YTc4OThiYTJjNjI1MGE3Yzk2MDliMzYgcmVsZWFzZTI2LW1haW50Cis4MzEyMCA1YWE3MjY0MTRmOGYwOGQ0NjYwNWE1YzRjY2EwOWY5M2UyYzg3Yjk1IHB5M2sKKzgzMTIxIGIwYWY2M2FhMDllYWNhYmU1NjY5OTRiN2M0YzM1MGRiNDRlMzcxYTkgcmVsZWFzZTMxLW1haW50Cis4MzEyMiA4MDcyZGZkOTdlMWRkZjM3ZmQwY2RmYTk5OTk3ZDM4MThkMDc5MDhiIHJlbGVhc2UyNy1tYWludAorODMxMjMgYzM4NjZjZDkxYWUwMGU1ZGRjMjNmZWNhNzI4MTNhMTkwMTY1MmIxNSByZWxlYXNlMjctbWFpbnQKKzgzMTI0IGZmNjQ0OTY0MzE0MmUyNGNkMmQwYzUwZjM1ZTZhNjAxYzE3OGM5NDEgcmVsZWFzZTI3LW1haW50Cis4MzEyNSAzM2U0YTQ3YTZhZDEwZGI1NTMzMDNjYzJiMzM4ZDE3MTg0OThlODg0IHB5M2sKKzgzMTI2IGQ4OTZmM2Y5NGE0ZGYyMjg4ZjU2ZTYwNzUxNWUwMzNkZDJhNjkxZDcgcmVsZWFzZTI2LW1haW50Cis4MzEyNyA0Y2NiYzI5YzdmMTEzMjlhNzA5NzdkYmJkNWFiMTM3NmI5YWMyM2I2IHB5M2sKKzgzMTI4IDNmMjQ1YmU1OTMzOWJmZmIxYzhkMTZjMWJjOWM0Yjg0ZjQzNjYxMDYgcmVsZWFzZTI2LW1haW50Cis4MzEzMyBhZDVmMjc5M2Y3YWRmMDhmNjVlODgwNTFlMWI1MmFmMDllNGY5NDcwIHB5M2sKKzgzMTM0IGY4MTI2MzY3YTJkZWRkZGEyNmMzNjNlNDdmZTUzYmVmMDlkMjNmZmMgcmVsZWFzZTMxLW1haW50Cis4MzEzNSAzZTY1OTI1ODFkMGY1YTgyMjY0NTY2YmY1ZjViMGNmMWJiODc4MGUzIHJlbGVhc2UyNy1tYWludAorODMxMzYgNTM0M2VhN2MxOTg2MzQ5Yjk3ZDZlZTdkZDZlZjA2MzgwZWRjYmQ3ZCByZWxlYXNlMjYtbWFpbnQKKzgzMTM5IGExNmI1YmJkZjE5YjQyODJhNDU1NGQzOGQ2ZDhjMDM2YTQzYzUxMGQgcHkzaworODMxNDAgOWVjYmE4YTEwMTI1NTFhNjRmOTk1ZTdhZWZlNTg2ODU2NGUwZjRkYSBweTNrCis4MzE0MSAyYzU2ZjRhYjM2ZjI2YTRiM2M4NTA0MWNjNmYxNmE4NTdkZTJkZWExIHB5M2sKKzgzMTQyIDJkZDI5OWU3YTZkYmQzNzE1OTk0MDZlOWY0ZGM0OTA2N2NjMmZlNDQgcmVsZWFzZTI3LW1haW50Cis4MzE0MyBlZjliMzlkZjU5MzY4MDYyYjQ3NzcxZmUzZmIwMDlkMjYzMWJmZGJmIHJlbGVhc2UzMS1tYWludAorODMxNDQgYjE5ZjhhNDkyOWQ1YjNiOGI1NDk2ZmY4Mzg1MTljMmFhMjQ0Mjg2YSByZWxlYXNlMzEtbWFpbnQKKzgzMTQ1IGZkYjBjZmRjY2Y4NTgyNWYyODBhODM1ZTM2M2M5NjAwODQ1ZjhhNDkgcmVsZWFzZTI3LW1haW50Cis4MzE0NiBkODZjMTg1NjhlODk3NTc0YTVhMTJmZTBiMjgwZjYxZDZlZGM1MzEyIHJlbGVhc2UzMS1tYWludAorODMxNDcgZDMzZWJiM2VmMGIxMDdkODc1YTI5NzY4MzNlNGExYWJiMjhhYzhhZiByZWxlYXNlMjYtbWFpbnQKKzgzMTQ4IDkwNGIzYTE2MTZmMzdjMzgyNTlkODM4ODNmMzA1N2RjZWEwMmM5NjMgcmVsZWFzZTMxLW1haW50Cis4MzE0OSA5ZTMwM2Q2NzE1Y2U4OWFhNjZjNTM5MDc5ZGFjYjc5ODI5OWIyMzg0IHB5M2sKKzgzMTUwIDllY2JkZWZjOTg0OWFiOTA5YTAzYmM2MmJlOWRlNWVmYjRiYjYzOWUgcHkzaworODMxNTEgNTEzZTQ5OGIyMjNjMmE2ZDA3MWJlMjlhNzkzZjM2YWVlMjIxMmVjMCBweTNrCis4MzE1MiAxMGNlMDQxNDAwOTY4ODRjMjUxYTI0MTIwYmE1MmEzZmQyYTU0ZmU2IHB5M2sKKzgzMTUzIGZlOGEyY2U5MTRlYThjZGFhYzI3YTU4ZTllZGM5OWIwM2VhZTM2ZmMgcmVsZWFzZTI3LW1haW50Cis4MzE1NCBmZGI3MWQ2YzE4MjI0ZjgxMGUyYzhmYmM0Yzg3Y2YzYWZiNjExZTYzIHB5M2sKKzgzMTU1IGVlY2MwMThhYWMzZWRkZDdiZmM4MDk1NzJmNGU1ODhlZWQ3YmRmNGUgcmVsZWFzZTI3LW1haW50Cis4MzE1NiA1NWY0NWU5MDY3NGQ2YzA1NWVhY2ZmZDhiNzQ0YjgxNjJmMmZiYTFlIHB5M2sKKzgzMTU3IGY2YjkyODA4YjliMzQzNTZlNDMyM2FkYzgwNTBhNWRkOGU2YWM3NTkgcHkzaworODMxNTggNzRiMTZmNDM5ZTA3YmEwNDFhZWViNDNiOGRhMDIwMTc1MzIwMDVkYyByZWxlYXNlMjctbWFpbnQKKzgzMTU5IDRkM2RlMTZkMDJjYzI4OGVmOGNiZDhmNGRmOTRkZGUzOWJmYTlhOGEgcmVsZWFzZTMxLW1haW50Cis4MzE2MCBjM2JlMjBjMzkwYTI3MDk4YjAyYmUzOGNiMTkzNDE0ZDQ5YThlMjZmIHB5M2sKKzgzMTYxIDJjZWQxY2NkMzVlYTQwZWM5OGExNTU2ZTRlZWYwMjE1MWE3MTE1ZGMgcHkzaworODMxNjIgNmE5OWQ5MWJlMGY4YmNiODk4MmIxOWRmMWI1NTNjODY3MjU3YjMxNiBweTNrCis4MzE2MyA3YTQxZTBjNDg4NTUwYzMwM2ZmNjU0MGUxOGM4NDAwMGI4ZTI3NjBmIHB5M2sKKzgzMTY0IGNjYjIxOTljMTZiYTBlZTIxMzRiZGFlMDliNzY2NGUzYjdjMmE0YjEgcmVsZWFzZTI3LW1haW50Cis4MzE2NiBmOWEwMDdhZmQ0MGYzNzJmOGRlYWFkZWI1MjhjMmM5NTJjZjM4MzFmIHB5M2sKKzgzMTY4IDM1YzE0NTYyMzQ4MDJlMTE4MWVjODRhNDczNDBmOGM1YjVkMjdhYzYgcHkzaworODMxNjkgM2U5YjkyY2ZjYWNjNTFmN2I0NDRhMjk1ZTQ4NDY2NTBiMjU0NjAyYiBweTNrCis4MzE3MCAwOTcwNTc3MDA5ZTA1NzE3ZDBjNWMwMzZiNzhlOGM3YjAxM2M1YmU3IHB5M2sKKzgzMTcxIGFkZWZkNWMwMjM1ZGZiMzQxODI5ODdlYTJlOTJmYjRmNmM1NTE3M2IgcHkzaworODMxNzMgYmMwMzQ3NmNlOTAxOWIwM2EyNTczNDViNTdiNGU2YWZmMzRmMDY3YSBweTNrCis4MzE3NCAwYjg0MDk0YjE1MTU4Y2U2NDNhZDQzOTA2YmRkMzQzYmE5OGU5NDY0IHJlbGVhc2UyNy1tYWludAorODMxNzUgMzM1NTM1NmYxYzc0ZDQ0OGJhNWU1MDM2MjZhZTI5NmNkZGI0YTIxYyByZWxlYXNlMjctbWFpbnQKKzgzMTc2IDU1MjI0MzMxNTBlMWQ5OGNiMTVlMGE5YWQ5OTc3MjIzMDVjNWYyZmYgcmVsZWFzZTI3LW1haW50Cis4MzE3NyBmOWI4NjBlZjI0YmFkOTIxMjk4NjUwNDFhMTgwY2YzNjFiY2UxNjY1IHB5M2sKKzgzMTc4IGUxYzNhZGZhNTc0NGRmNzMyZGJmNTE0NDUyZGJjZmI5YjkzZTJiZmEgcmVsZWFzZTMxLW1haW50Cis4MzE3OSBkZmUwMDk1ZmNhYjBmNmY1YzhjYzdjZDc0NzFhNzI1ZDE5NzdhOTZmIHJlbGVhc2UyNy1tYWludAorODMxODEgMmRmNzMzOTUxYmFiNDdjMzU3NzAxNTAxMmY3MjBjMWZjMTU1Yzc3MSBweTNrCis4MzE4MiBmMjE0YWQwOWMzODQyZDEwNTQ0NjAyNjE5YmRiZTg5M2I1YThiNzcyIHB5M2sKKzgzMTgzIGUyZDYyYjVhODczMDExZTZkOWU2ZmExZmY3ZmIwOWQyM2FhNGU1MDAgcHkzaworODMxODQgZTkxOGFmZDM1MDg2ODg0MmQ5NWRhMDI5ZDBiODcyNDMzZTlhYmQ2NyBweTNrCis4MzE4NSBmZDliNDIxY2RiYWY1NWM1NGM3YTE1NGM3ZDBmOTE4Zjk3ZjY5ODExIHJlbGVhc2UzMS1tYWludAorODMxODYgNWI1YmNmNGI5ZmIwMjFhNmUwMTIxZGU0N2IzODU1ZmYwODQ0MzVkYSBweTNrCis4MzE4NyBjM2Y1ODMzZGI4NDMxY2RlZTNhNWIxMjQzN2U2OWU0Yzk3YzViZmJhIHJlbGVhc2UyNy1tYWludAorODMxODggNjg1ZDM5MThmMmE1ZTFiYzk0NDE3YmZiNTk5N2JiNWQyNmYzYmY1ZCBweTNrCis4MzE4OSBiNWYzZjc0MjMzMTg2NzE5NGQwMDhiZDA0YjUxZDNjYzE5ZWQ5Mjk5IHJlbGVhc2UzMS1tYWludAorODMxOTAgMWNkNDU0ZGE0OTI4YjNlY2E2NTI0ZmY3NTNhYTE3NDI5YzRkODJhZSByZWxlYXNlMjctbWFpbnQKKzgzMTkxIDgwMzI1MGY1YzRjMjY4ZjQ0M2JlMjdhY2YzNDVhNTIyMWU4YWM0N2UgcHkzaworODMxOTIgMTZmNWNmYjE2YzZhY2MyOTZjNGFlMjQ3NTUwZWEzNTdjMzgxNmFlNiByZWxlYXNlMjctbWFpbnQKKzgzMTkzIDQzZGMxMjk4OTJhZGRiYTBhZTAxOGM3MmJkNzFkOWY0ZThiYmFhOTMgcmVsZWFzZTMxLW1haW50Cis4MzE5NCBlNGFiMGZiYmJjOTQ2MGVjYjA3MGQ1YjNmNzY5YTc3YWMzYzI5ZjE3IHJlbGVhc2UyNi1tYWludAorODMxOTUgNGE3YjM5NWVkYjY5ZDc2ZGRjMTI3OGNmMTgzZGIyOWMyOWE5Y2RkYSBweTNrCis4MzE5NiA1ZWRjZTE0YjYyODc3MzI2ZjAwYWZkZmNhNDM0YmQyNDk1MWNhYWZmIHB5M2sKKzgzMTk3IGFjN2ViNmVhZWY2ODg3N2NmODIwYWVmZWFmNTgzNmU4MTNjMjNjMTYgcHkzaworODMxOTggNzRmZDdlODBiMWJlNDIzNjg4YTVlNjY0ZTNhMzA4YmQxZGVmMDQ4OCByZWxlYXNlMjctbWFpbnQKKzgzMTk5IDVkNDVjNjUxMzQ4YmUzYjhmMmY1OWJmNjIxOGE2ZjU2MmJjNGM0OGYgcmVsZWFzZTI2LW1haW50Cis4MzIwMCAzMTVjMmI1MjRjNTllOTU5NjExNGM0NWQyZmYwN2Y2OGI2ODlhMmVlIHJlbGVhc2UyNi1tYWludAorODMyMDEgMzA2ODMzZWYxMTlkMWNiNWU5Y2FiNTE1YTkwMTg5NTlkZWNkNjBiOCBweTNrCis4MzIwMiBiYjllZWY4ZDFhYzZhNGZjNThkM2Y1YWQ5NDg1ZWUyYTZlMjJkZGU4IHB5M2sKKzgzMjA0IDhlOGNiMTY4YTA4OWY3NDZhYTE3MDAwNGQ0YjNmOTRkZGI2OGZjZjAgcmVsZWFzZTI3LW1haW50Cis4MzIwNSBlMGJjYjk3MDM0NDJkYWQ4ODRlNDNkOTcxZTVjMzM3ODg0ZWI1YTkwIHJlbGVhc2UyNy1tYWludAorODMyMDYgNmQzMWI2MDM3MmM0ODM3Y2ZmMWM2ZDIyNjE0MTY2OGYyZDkyODZkZiByZWxlYXNlMjctbWFpbnQKKzgzMjA3IDE3NDNkZmVlYjliMDNkNmI3YjU5ODRhM2EwNDk3ZDExOTRlOWUyYWQgcmVsZWFzZTI3LW1haW50Cis4MzIwOCBlYTNiNTM1MTM2ZTdmODUzMjllNGNmZGU1MTM4NzU0OGJhMDE4NDkwIHJlbGVhc2UyNy1tYWludAorODMyMDkgOWJjYmMzNDM3NzhmM2NkYmI5MjgwZDJiZDBlYjhhMzI0ZTNjMmZlNSBweTNrCis4MzIxMCAzMTE5YzRkNzI3NmIxNWVkZDYxODk5ZjhkOGVhYTIxMDIyM2EzMzg1IHJlbGVhc2UzMS1tYWludAorODMyMTEgMGJiNDdjNTFlOTMzZjg2OGVlM2I0YWY4MDY2M2FiOTdkNTRmNDA3MyByZWxlYXNlMjctbWFpbnQKKzgzMjEyIGFhMTlhN2NjMWJmMzUyYmJkZTg2M2Y5YWUxYmM2YWE0NjA1Nzg2YmQgcHkzaworODMyMTMgNzllMzc2ODI0YjM4OGE3NmIyZDcyZDM0NjFiNTExNDlhNjUzZDhhZiBweTNrCis4MzIxNCAwMTMyZTRlZTllN2YyNDFjMDMwYzU2NWJhYTRlNjliYTU5OTYzNGYyIHB5M2sKKzgzMjE1IGQ1NWQyMWMzOTZjNWNkMjE5YmMyMzI0NTlkN2UxZmM1YjMwNTBmZDcgcHkzaworODMyMTYgYmU2ZDAxNGRmOTU2MGE5ZGU1ZGU3NGQ5ZWI0YWQ3NmNhNTM4ZGY3ZCBweTNrCis4MzIxNyA1MTQ2NmQ2NzcyMmUwNjEwMTFiZDEyNjJiMTRkYWRkMTI4NWI5MzAyIHB5M2sKKzgzMjE4IDNkOTk2OTY2ODlmOWIyYWQ5MWJlYjJkMDQ1MmJkNjcxYWQ2Y2QwZTAgcHkzaworODMyMTkgZTJlMzJhODY5ODEwZGY4ZjdjMWFmMTU2ZTkwY2U4MGVkNmUyNjg1NiBweTNrCis4MzIyMCBlNWEyZjUwZmVlNjRlMTIzM2E3MjhkZTY1N2FkZGNmYTg4NDM3ZjNhIHB5M2sKKzgzMjIxIDA3MTYwOTA2MGYwNTVhZjkzNjFhNWVhMzcyMTdhZjNkNmJhZWRkNTIgcmVsZWFzZTI3LW1haW50Cis4MzIyMiA1MmJjMTk0MDVjMGYzMzIzYTNkNWI1MjAwYjkyZTBmMDMzNGZjMjM3IHB5M2sKKzgzMjIzIDA1NGYzMjc5ZTNjY2U5NTYwYjM5NTY0NTFlMDJhYTViMzI4ODMzNjggcHkzaworODMyMjQgZWUzN2JjYjhmMDNlNzIyZWVmOWY3ZWU4OTg0N2Q0NGM0MTc1MGMxZCBweTNrCis4MzIyNSAwNTY0MzYwNjUyOTBmNzJiNWRmN2QzMGI3MGYzZjdlMGZjYTAyYmJmIHJlbGVhc2UzMS1tYWludAorODMyMjYgYTI3NDY4YWY1ZWMyZGI1YmE2NDM0ZDljNzVmNDZiNTU1NzRiMGI0NyBweTNrCis4MzIyNyAwNTQwZTY3ZDc5MjQxZjc5MjU5ZmNkYTEzZDg4ZTRlMmY0OTllMDNkIHB5M2sKKzgzMjI5IGY2ZDNiZjRmYWE5YTdiNTg1N2Q4M2QzYjE1ZjBlZWRlMjFhNDA3MGUgcHkzaworODMyMzAgZjIwZmY5OWEyNDI3NWYyZGZkMzAyNWExZDIzOTVlMjE5ZWJmZjVlYiBweTNrCis4MzIzMSA4MzQ3MTVmYWYxNjVhNTAwYmU5NjFlNGMyMDNhYzRkY2Y5OWY2MTE1IHB5M2sKKzgzMjMyIGM1NWZhZjQ3NDU5ZTJlYjc3M2U3NGNmM2IzYmZmMGM0OThmNjM0OTYgcHkzaworODMyMzQgMTI1MGIwNjhmMzE3MDFkOWFhY2EyYzdmM2VjYThhNmUyNjMxNjYzYiBweTNrCis4MzIzNSA5NGIzOTAzZGUxMDc2YjJiMzI1Njc1ZjU5OWQ1MTg2ZTJlNDM3YjQ4IHB5M2sKKzgzMjM2IDkxY2JiNTVlMjBiZTU0ZmEyNTliZGRkYmNmOTQ0ZDdjY2U2NDg0MGMgcHkzaworODMyMzcgMTYxODliN2RhM2I2MmY0NmY3ZTZiNmE2ZjUyOGZmZGEzZjRlMjAwMiBweTNrCis4MzIzOCBmNDM1YjdiOTg2OTA5N2M3ZGQzNjdiZjAwNmYwZTIyM2VkMmI0Y2JjIHB5M2sKKzgzMjM5IDI5YWI1MzZjZmVmNjdmMjlkNjhhMTVkMTE3ZGNmN2UwZGM3NDFkZmUgcHkzaworODMyNDAgOTAyMTMxYjMxOTIyN2Q4MThhN2UyODRlMTcxNDU1ZTk1MTY3NDA0YyByZWxlYXNlMzEtbWFpbnQKKzgzMjQxIGI3NWNhMjVhMTQwYmFjYzdlZmJlNGIzYzllYjEwNmEzNTBkNzlkZTIgcmVsZWFzZTI3LW1haW50Cis4MzI0MiA4OWQ3OGI2NjdkMDdiZTU0MTIwNTZiMmEwNDY2MGE0ZGFkMTljNDY2IHJlbGVhc2UyNi1tYWludAorODMyNDMgNGFlMGUxM2U5NDY2M2ViNzIzZWRlZmVmODE1ZGVhOTM5ZGExNDVhZSBpbXBvcnRfdW5pY29kZQorODMyNDQgOTcwN2M4NTUxNDhmNjhlNGRkZTEyNmJjMjE1NjEzODIyNDhhMmE1NiBpbXBvcnRfdW5pY29kZQorODMyNDUgOGE3OWNhYTRmNDczMjcxZGVkN2JkMDJjYjdkYTFkN2FkY2Q3MDA1ZCBpbXBvcnRfdW5pY29kZQorODMyNDYgMjdjNmE5NDg4OTQ4ZmRkNTc3N2MzNjZmMjNhMGRkZmFkZmYyOTJjNCBpbXBvcnRfdW5pY29kZQorODMyNDcgYTE1ZTEwZDFjZGMwZGZmNzhlMDg3NDc1NTczZjdkNDc1OWU3N2ZlNyBpbXBvcnRfdW5pY29kZQorODMyNDggOWE3NGM3NWRkODI1MjVmYjFhNDNmZmUwNWQwYWMzYzY0NGNjNjNhOSBpbXBvcnRfdW5pY29kZQorODMyNDkgZWQwOTAxMTZiNzM0ZjdjMzdlMjA2YjlhYzg1NmRlYWY2MjY4NzE5YyBpbXBvcnRfdW5pY29kZQorODMyNTAgNjIxOTk1OTEwOTM5MmUwZTU5NTMxM2ZmMDJlMjEwYjNkMDAxOGUzZiBpbXBvcnRfdW5pY29kZQorODMyNTEgMDk4MzU2ZjVjODQ2MWQzNGRiZTE3YTk0MWEyYzcxNGIwMmViZWY1OCByZWxlYXNlMjctbWFpbnQKKzgzMjUyIDMyNmIxNWQ4YzM0MTM2NTg3NTM5NGE5N2VkOGM5NjE2ODUyMDgwYjYgaW1wb3J0X3VuaWNvZGUKKzgzMjUzIGRlM2ZmZjQyNzJjODRiOGY0MDI0Y2FjNWY5ZTczMzk5ZDVkOWQxMzggaW1wb3J0X3VuaWNvZGUKKzgzMjU0IDgwN2JlZWZhZDUxYzRiZTU2N2QzYWNmZWJkNGM1M2VlN2M1OGU5YTcgaW1wb3J0X3VuaWNvZGUKKzgzMjU1IDA2MzM4MTU3YjRmNzA4M2UwYjhkZDM3NDcwNTY0ZGI0ZmI0MWUzM2MgaW1wb3J0X3VuaWNvZGUKKzgzMjU2IDA0ZTQ5MjVlNWE4Y2Q2Y2E5MTBkMzFhODIyODQwZDU2ZWNmZWU2NWIgaW1wb3J0X3VuaWNvZGUKKzgzMjU3IGRjNWRhMDIxMzZlOTg5ODJjMDJjOGU1MGI1NjZjNWQzNjc3NmE4ZjEgaW1wb3J0X3VuaWNvZGUKKzgzMjU4IGE0ZTBiN2FmNGJhNDRiMDIwNTdlZDg0MTAzMDA2ZGFhYWM1N2VmYTIgaW1wb3J0X3VuaWNvZGUKKzgzMjU5IGE5NjZjM2Q0M2E3ZWFhNjExMjQwZTlmOGM1MTZjODE2YjUyZjQyZGYgcHkzaworODMyNjAgY2IxOGJjOGRkNDY5M2E4NGNmZjRkYTllN2ZjOGI4MTMzNmZjNzVlYiBweTNrCis4MzI2MSAwYTE3NDhlMTNkZTk2ZGM1NTdjNWVhZGMwMTczMjg0NDNlMWMzNTk5IHB5M2sKKzgzMjYyIDBmNmExZTQ3NmQzMTBjYWVmMDQzMDI1YTM0OGU2ZWY4ODczZTJhMzcgcHkzaworODMyNjMgNDg1NTdkYjBlZWVhMThmODkyNTM3MWQ1YTQ1NDUyMDc0NmIzMTU1ZiBweTNrCis4MzI2NCAyNDk3NWFhZDQyNjgwOWE4YjA0YzJjNzdlY2VjNTIyMGQ0ZTZhYmY5IHB5M2sKKzgzMjY1IDcxMTFiNzk3ZWMxMTVmYzM0YTRjZmJlOWQ1ZGRmODI0MTUwYjk0YmYgcHkzaworODMyNjYgYzViZmUxODYwYTVkODBlMGRlZGY3ZjIzYzM3Yjc4NzkwMjc5ZTU5OCBweTNrCis4MzI2NyAyOTQxMjNhZWQ0NmI2NTEwZGUzZTY4OTdmNTFjN2VlMzRhMzZkMWZlIHJlbGVhc2UyNy1tYWludAorODMyNjggOTcwNGI5ZDgxMGU1YjcxZWI3NTk0NjhjZThhODk2MWNlNDQzMzhmYyBweTNrCis4MzI2OSA4NDA2MzNkMzcyYmNkYWVhZWIyZDgyYTBjZTQ4MDk1NGFlOWE3MzJjIHB5M2sKKzgzMjcwIGVmZDk3YTAzOTM3NDlhNWY1ZTg4NmM1ZTdkZDViYTczNWUyMmMzODYgcHkzaworODMyNzEgMDM3NmU2NDM1ZjU3YzEyZDQ1ZTE2ODA1M2JiNjExMmRmYzMxNDhiZCBweTNrCis4MzI3MiAxYzVmNjBmMzgxYjI2NGFjZDZmNzE0NGYwNzc2MzY4N2NkNTMxYjA0IHB5M2sKKzgzMjc0IGFkOThiNTI1YjU4N2M2NmFkNmFmYmU2MjIxMjZjYjQ2ZGFjMjA4ZWQgcHkzaworODMyNzUgNDBkNmE3YzE1ODM2YTJmMTY3NDJhMGU0ZjViNjVlOWEyYzJlNjg3NCBweTNrCis4MzI3NiBhMWUyYWY2NTM3ZGZmZjIyNDFkMDQzNGM2YTY0NjUzYmFkZGZlMDdlIHJlbGVhc2UyNy1tYWludAorODMyNzcgNDM4MGZiMjI2YjExMjcwNWJmNWVkNTNkMzE2Y2Y3MjhhZTA3NzQwOSBweTNrCis4MzI3OCA1NzliMzM5YWIxNWY1NjZiYjVlNDRmZmJhMDBkNTE4OTkzZjY5ZjllIHJlbGVhc2UzMS1tYWludAorODMyNzkgMjk4Yzk2OWY1NjViOTY1YmY3YzFiYjFkOWFiMDczNjY4NWFjYzY2NyByZWxlYXNlMjctbWFpbnQKKzgzMjgxIGE3Y2MwOGI0YmEyNjlkOWE3NGE4YTQ4YmExY2I3ZGRjMjgzMDE5NzAgcHkzaworODMyODIgYWJiYjQ5YWQxZmMzMzMwNjllMjQyNTU4ZWUyYWJhZGIwZGM4MmQzMSByZWxlYXNlMjctbWFpbnQKKzgzMjgzIDM4MTE4MGE4ZjQ0NzEyYmMxMzQ0MDVkNjFlZDI0MWRiMGJmNzY2OTcgcHkzaworODMyODQgOTM0YjA5MGRmZWM4MGVkNGI3Y2U0YjZiMGE3MTc0ZjhmYWZjYzFhNCBweTNrCis4MzI4NSBmZTRiYjdjYjFmZTg3YjJjMTAyZmZmMWIyN2RmZWNiNTIwMjdhMzUwIHB5M2sKKzgzMjg2IDJjOWE4ZTYxMTJiMzk5MjAxMTY4NTQxYmNlZWE1NWRhNWU1NzZiYWIgcHkzaworODMyODcgNDZkMmVjNzhlZjc5NTc2Y2E1YjljNjM1NzRjODEzYjU1OTI5MDg2NCBweTNrCis4MzI4OCBiY2Y5M2UzNzY2ZThlNDAzYmUzMGExODc1NzUwN2Q5NWJmOTk5NzJiIHB5M2sKKzgzMjg5IDc4YTNkYjJmN2UwZjE3MTBlZTkxYjkyYmJhNjJhNWMxY2ZhYjA1NjUgcHkzaworODMyOTAgMjBjYzkzMTc5Njk1ODZkOWZkYmQwMTA0ODZmZDVhYzQ2OTNmYWIwNSBpbXBvcnRfdW5pY29kZQorODMyOTEgYzNiNjczYjk0NjEyM2Y5MzUzMmEwMmI5NTQwMDdjMTgzMzlhZDkxYSBweTNrCis4MzI5MiBiODAzY2MyZDZhNWNiZjc3ZDFhNGFjN2MwN2Q3MGJiMjI0ZjQ5NjU0IHB5M2sKKzgzMjkzIDY3MGQ0Y2JmMTQ2NDUyMmFiNTQwNmVmYzE2MTA3MDNkNzAwN2M5ZTIgcHkzaworODMyOTQgNzg3MWFhZjExMWEyNWQyOTkwMTY5NGMxYjg1YjdlZDNmMjYxN2NjZiBweTNrCis4MzI5NSAxMDAyYzNkYzkwZDFhNWE3YjI5MjA3NjVkNDdhZjI2MjhkMWUzZTJiIGltcG9ydF91bmljb2RlCis4MzI5NiA0NjcwMTk1ODhmY2M3YjIzNmRkM2VmZjk2ZGQ3OTI5ZGIxMjYyYTc2IHB5M2sKKzgzMjk3IDA4Yjk0M2ExYTkzNDRkM2M4MGMwNjI0MzQwMzBiNWYzZWRlODlkM2QgaW1wb3J0X3VuaWNvZGUKKzgzMjk4IGM3ZGM1YzdiN2FmMTk1Zjc0YzY2NmE2MDYwNDA3MjQ0YTllYTViN2MgaW1wb3J0X3VuaWNvZGUKKzgzMjk5IDNlNzQ4NzNmMjFlYTU5YTNiZTIzNzQ5MmUyNTcxYWFjYzAzOTRiY2YgaW1wb3J0X3VuaWNvZGUKKzgzMzAwIDhjZjZkMjY0NDk3NTdmMjRlNzlkYTViYjRkY2YwMjQ5YjBjNjJkZjAgaW1wb3J0X3VuaWNvZGUKKzgzMzAxIDY1ZWUwYmM5NzQ3NWYxMzJkNWY2NzFhNmU0MDk0NWUwOWE0Nzk5YTYgaW1wb3J0X3VuaWNvZGUKKzgzMzAyIGQ2ZWJlZGNkNmVjNGU4ZTU0ODVmMDFkYTY2YjhkNzUwNzgwMzM3ZGQgaW1wb3J0X3VuaWNvZGUKKzgzMzAzIDUxMDVjMTJjMzFiMjdkOWIyODc5MjI4NDkyZDU0NTYyZjQxZWZjNzMgaW1wb3J0X3VuaWNvZGUKKzgzMzA0IDg4MmZkODU1ZjEwMmI0MzkyZWYxM2Q5ZjQwZjY4ODMxOTUwNGU1YTAgaW1wb3J0X3VuaWNvZGUKKzgzMzA1IDg4YWRiNjRhN2FmZDliZTdiZTJjNmMxMjc0NGUwMTI1MDIwMTc0YzkgaW1wb3J0X3VuaWNvZGUKKzgzMzA2IDAwNDk2MTgwMWQxODY1NjI2NmFjNWM1N2JlMjMwNzMxNDY1OWIxY2IgcmVsZWFzZTI3LW1haW50Cis4MzMwNyA4NDVjZWYyZWIxZDdjN2U3MzFjNjUyYjUxOTFmOWRkMjgxZGExN2U3IHB5M2sKKzgzMzA4IDdjNGE3NzYwNDAyNzczMmY2MDA0NzZmODM1ZjRlMmFiNjcxNTQ4NGMgcHkzaworODMzMTIgNjYxZTRiZjg1YzU4ODVkMmRjMDIwYjZhMDhhYjc0YzdmMjViMzExYyByZWxlYXNlMzEtbWFpbnQKKzgzMzEzIGMyZWEwNTE2MWM5MzA5N2M0MjBmNGQ1ZDA4YjI4NGE0YmNjMmQzZDEgcHkzaworODMzMTQgNTg5NDU5MGU5YzhkNWZhYmJiYjcwYjJhMDY2NDkyN2EzMjU0ZDhjOSByZWxlYXNlMjYtbWFpbnQKKzgzMzE1IGMzYjEzNjI2NjUzODhhYzllMDA4ZDlkZDMyNjI4NzBkZDk4NTJiZDYgcHkzaworODMzMTYgMzJkOTRmMzE2ZGE5ODQ3ZmZlMjZiNGNiMjI3NDNjYzI1M2YyM2M0NSBweTNrCis4MzMxNyA3YWE5NzU3NzcyMDIzZGIxNDQ2NDNjZGRkNDg2ZmJiYjQ1NTAzZTEzIHB5M2sKKzgzMzE4IDZiMjNhYTMwMDAzMjFkNzljZDE5OWFkNmU3YzE4YTc5ZTRiNzAzNmEgcHkzaworODMzMTkgZTE3YjE2MDBmNDQwNmI2ZWUxOWYwMmVjZGNjMDhmNGFiODhhMjc2ZCBweTNrCis4MzMyMCA1NTBiMzhjYWY1YzFmYzdiZmFhMDAwMWJlNjc0OGQzOWE0ZDg5MDQwIHB5M2sKKzgzMzIxIDhiNDI2OTNlOTViOGMzNzgzYjUyOWFiYjk4YjNjNWYxYzg3N2QxZDkgcHkzaworODMzMjIgZjU3NGEwNzE4ODZkZDdjNGFjNGViODRkNmYyZTNlYjRhYmU5N2QyMCBweTNrCis4MzMyMyA3OTAzNTNiZWNmOGNlY2I5YzU1MTJiNGU2YTEyNzBmODczYzY3NTgyIHB5M2sKKzgzMzI0IDU3ZWEwMDUxNmVkZWE5NTYxOTMxNDk0YTliMjA0MjQwZjVmMmYzMTcgcHkzaworODMzMjUgNmY4ZGVmZDAxN2Q3MzZlNzA1MzJhMWUwNWU1YjFiOWVhMGE1NGQzOSBweTNrCis4MzMyNiA2ZTEzZWFkMzg5NTYwNDg4MTEyZTZjYjFhYTNkZTA1YTM4MDJjY2YwIHB5M2sKKzgzMzI3IGE0NWIzOGRjZGYxNmNhMDA2N2RhZjI5Njg4MmZkMjJmYWQxYzJhMTYgcHkzaworODMzMjggNzQ1NTFjMGI1MTNiNmM5ODMyMDhiYmJiYWVjM2EyOTExYTZiYWJkZCBweTNrCis4MzMyOSBmYjZhMTM4MDdhYzk1YWUzMWFiNTU5OTBlNWUwNTE5M2VkZWM1ZDJlIHB5M2sKKzgzMzMwIGZjODE1ZjNiMjc4MTI3NGM4ZjhmOWFmMTU0YTkxNGI4OWU4OTk2MTYgcmVsZWFzZTMxLW1haW50Cis4MzMzMiAxYjUwZTYyN2M2M2FjZTVmMDIzODhkYTAyOWIxMDQ2ZDc2Y2E0ODYwIGltcG9ydF91bmljb2RlCis4MzMzMyAxOWZmMzYwMzI3ZTc4MzgyMWFiZWExZjk2OGFkZTAxMmJhNjNlYWQ1IGltcG9ydF91bmljb2RlCis4MzMzNSAwNDNjYWFjNmM4NzU5MzEzYThiZjM3NGQyNmZiMjg0MjBmNzc4NmViIHB5M2sKKzgzMzM2IDI5ZTYwY2U2M2FlNWJlMDZlMWU3ZTNhODYwZDgxMzljOTRhYWNhMTYgcHkzaworODMzMzcgZTQ4NmQxOWYyYjBiODFjM2I5MDYyOWRlNDU0OTk5OGU0NzU0MzUxYSBweTNrCis4MzMzOCA4YTgwMWEzYWNhMzQ5OWExYWEwYzI0MTI4NDE5ZDkzMGFkYzhlOWIyIHB5M2sKKzgzMzM5IDQzZDE0YmJkNmViMTE3ODQyYjdiZjFmNjczYjc0Y2RjZDlmMmMyOTkgcHkzaworODMzNDAgZGVkNThlNDQ5ZGEzMzJlNmY1NjFmM2FiNDZjZTBkMjFiYTNmZGFjNCBpbXBvcnRfdW5pY29kZQorODMzNDEgMTI1ZjU0YTcwYWI4ZmJlOGZmZjUyODliN2E3NWEyNTYwN2QxOTIzOSBweTNrCis4MzM0MiA1OTQ3YjFiYjBmZWNkYzE3ZTUxM2ZjN2Q0ZThkM2MyNzYyOTU1ZGI3IHB5M2sKKzgzMzQzIGIzN2I3ODM0NzU3NDkyZDAwOWI5OWNmMGNhNGQ0MmQyMTUzZDdmYWMgcHkzaworODMzNDUgZmNlNzhhMjA4ZGIyNzBiMDNjYzg5NTU0ODU5ODMxNzYyZmVmNDk2MyBweTNrCis4MzM0OCAwOWNhNDY0OTA3MDdlZjlkZTQzZTVjZDUwOWQzZGU5NGQ3ZmJhOTRjIHB5M2sKKzgzMzQ5IGE2YjcxOGU4MTQ0ODBjZmM2YjMxZTNhZDIzZjBiNjg0ZGVhMWVhMzggcHkzaworODMzNTAgYzU1ODc2YTZmYTNjYzAwMGE5M2FlZmVkZGI2ZTM2ZjVjMDI3MDQ5OCBweTNrCis4MzM1MSBiMTJkZGE2MmU5M2JiOTRhYzBhM2UwODBjNDRiNDYzOGI1ZWQ4OWZjIHB5M2sKKzgzMzUyIGUwMWQyNmEzNDY4OTljOGFjNTc5ZTQ5MDk5ZDdhYjJiZTliZDcxYmUgcHkzaworODMzNTMgNGRhM2M1NzAzNDNiYjExZTA5YjUxNmEzYWIxMzRmYTgwMGYwNzhhYyBweTNrCis4MzM1NCAyNWY2ZDU3MGU3YzE2MTI2MTNmN2YyMTgwNjM0NGE0MTNiMjMxYTA5IHJlbGVhc2UyNy1tYWludAorODMzNTUgYmU2MWM4MDhiNTI4OTZmMmUyYWJmODVhY2I5N2ZkZjJhNjI5NTAxZCBweTNrCis4MzM1NiBlMjUwZTg4NTI0ZDViMDliMmRjYmUyMDIxYzMzNTc5MmU3YjYzYTIxIHB5M2sKKzgzMzU3IDhiZGJkMzJjMmViYmRkNmEwMmJiY2QxZTIzN2ZhMDI2N2QzMmQyY2UgcHkzaworODMzNTggZjljYzA5ZGFjZWRhZGQ0YzUyYjkxZGEyNjBmMzBlNzJmZmIzYTJmOSBweTNrCis4MzM1OSBhYjg5ZDBmNTJhN2YzMGI3YjYwOWU3NGY5NjA3ODQ5NjdmYTdkNmU2IHB5M2sKKzgzMzYwIDllYjRiYTQ1YTZiMjg2YjZjNTYxMmM1MmU1NGExMDIwOTY0MTU2MjIgcHkzaworODMzNjEgZTIzN2IxNWMyYmU5OTQyNDM2MmM1YTk0NTE1NzMwNzg1OThlZDg5OCBweTNrCis4MzM2MiA2ZWM2Njg2MjJkNjRkOWNhMzAzZmUwNTVkYTkyYzhlMzgyMzkxZWZjIHB5M2sKKzgzMzYzIDZlZWVkMzUyNjYzNDI3NDc4MDUyYTcxNGUzMzE4N2EyN2E0N2JkNGEgaW1wb3J0X3VuaWNvZGUKKzgzMzY0IGIyNDg0MWMzMDliZTU0NjgxNTExY2E0NzMwYzQ5OTY2OTYxYjhjN2IgaW1wb3J0X3VuaWNvZGUKKzgzMzY1IDE4YjI3MzRmN2YzOGNjNWVlYjI5NmUwNzBkNDk5YWUzMGI0ZWE5OTEgcmVsZWFzZTI3LW1haW50Cis4MzM2NiAyNjNmYWRhMjU2NWRhMjMzYzIxZDY0ZDVjODVjN2Q0N2E4OGJhNjBlIHB5M2sKKzgzMzY3IDI2NTY1ZWJkNWUzMmVlN2Q0MTY1NTkwYTIxMDJmZTJmMzE3NDM5YjggaW1wb3J0X3VuaWNvZGUKKzgzMzY4IDZmNWJhNzEzMTZlNzE2MWI3N2ZmZmVmYzM5N2JjZTMxYTcxYTI3NTYgcHkzaworODMzNjkgYWY2OTJlZTkwZjY4MzgwNTZlOGZmOWM5MmViMTQ3MzliMWI4YTM1MiBweTNrCis4MzM3MCAyOGYzN2EyYjQ0NGJmMzU0YzdhZTc0YzcyOWYwZTA0MTcyMWFiZGNhIHB5M2sKKzgzMzcxIGUyYTlmNjMzZDYxMjZmYWZmYzc0MjI5ZjVjNTMxM2YwNGRmNzdmYjUgcHkzaworODMzNzIgMWNlOWQ0ZmIxM2MyNjUyMDIwOWJhN2FiNzM5M2Y0OWNkMzY4NjMzNyBweTNrCis4MzM3MyA2NWFmN2JlNjE0YTQ4MThjOGY0NGEzM2E4YjM5MmM0OTcyYjEyNzdiIHB5M2sKKzgzMzc0IDViMjRkMWUxODI2OTlkMTFmYTgzODUzMzk3MjRkNjM5M2NmNDQxODcgcHkzaworODMzNzUgMjFkOGM0MmMwYjEwNzgwMDk2OGQwY2NhZTU5OGViYWYyMTMzODMyZCBweTNrCis4MzM3NiAyODEyYmZkODRiNTAwMGE1YWM1N2ZlMjNlMzM5OTkyMGE4ZDYzZGViIHB5M2sKKzgzMzc3IDM4NzA0M2QyMDgwYjUzZmQ4M2ExOTc5MjE2MjNjNzg2N2E1ZmZkNDMgcmVsZWFzZTI2LW1haW50Cis4MzM3OSBmMjljMzE5ZmY1Njc5YTNmNjQxZTQ4OGYxNjkxNWQ2OTExOWMxOWZhIHJlbGVhc2UyNi1tYWludAorODMzODAgNDYwM2E1YzQ2NzVhNDMyMDI1NTUwODg3OTM5YmYwNmJkNGQ1MTM3OCBweTNrCis4MzM4MSBlODA1NzdkNTZhOGZjNDgzZDAyYmRkNDJlZDk4YzdmOGZkNzAyOTk1IHJlbGVhc2UyNy1tYWludAorODMzODIgZGNiMTZkNzAzNjUzOGExZDM3ZTAwYTgyYTE3MDFiNDYxNDQ4ZmNhOSByZWxlYXNlMjYtbWFpbnQKKzgzMzgzIGVkZGE3NTk2YzgzMTI3OTVmYjI5NWMxMzFmNzcyY2UwOTUxMzNmYzMgcmVsZWFzZTMxLW1haW50Cis4MzM4NCA3OGJjYWZmMGRkMmIwMmFjYmJiN2JjMThhNmZjNTcxYzg4NzZkMjcwIHB5M2sKKzgzMzg1IGRhZDA4NWM4ZGUwOTliMWI2OTc1MDJkMjI5ZTkyYWNkYjhjMDdkMjcgcHkzaworODMzODYgNmRlNzBkNDliOTE2NWFkODVmNjcxZmI1ODFhNDE2NTk4YWFlMmQxYiBweTNrCis4MzM4NyA5NzBiN2NkNTI0NTNiNWVhMzdjZGIzMTJlOGQ3NzBiYTQ3NGZhNWJlIHB5M2sKKzgzMzg4IDczNDQ0MjdlODdkZmNiMzU5ZTg0MjAxYTUyNDEzZjU1M2Q1MWIxOGMgcHkzaworODMzODkgNmJmMjkyZTkwNmMyYzIzZWIxMDRhMGRmNDE0OGFlOWI5NGU3OTM2MyBweTNrCis4MzM5MCAzYzRiZDg2MTMzODNlNGQ2MTUwMzk4ZGEzOTliMzA4NDQ3M2NjNWRlIHB5M2sKKzgzMzkxIDU0MTBlMTE2N2Y3ZDNjNTM1NjQ4NDY4NWYwYmRhNDlhMmM1MzAwMjkgcHkzaworODMzOTIgNmVmMzJkMjA4ZmNjNGY0ZTc1YzlhMmYzMTc1YmFjYTJmNDkwNmUzMiByZWxlYXNlMjctbWFpbnQKKzgzMzkzIDMxZjRjNGI2YzQ0NTAzMzA2ZjNhNDNmMTRjN2EyZmNhNmNhNGFhYTggcHkzaworODMzOTQgYTRhZDEwOTc1Nzc2YzU4ZTlmNWU0NTcxZDcxYzViMjk3NWU3NDFkMyBweTNrCis4MzM5NSA2NmNiMTVjNjJkYjQyZTZkNzUwYWU2ZTljYTZlNzViMmEyOWYxZWY4IHB5M2sKKzgzMzk2IGYyZjc5NjE5ZjZhNDk0NzA1YTgyMDRlMTdlZGY0OWIxNWFhNjIwYTUgcHkzaworODMzOTcgNWVlM2UyNzEyZDdkY2ZiZjdhMjM4ZGUyODNkZDNhYzM4N2ZkMmFjYSBweTNrCis4MzM5OCBjYjIzMWI3OTY5M2U0NmRmZWZlMmFmYjAxNzJhMzgzYTk1OTVkMTQ4IHB5M2sKKzgzMzk5IDZkMzVkNmU1ODU2MjFmZjNlNmYxZDY0Mzg0YjA4NTQwZGRhYjNhNzYgcHkzaworODM0MDAgODk3ZmQ1MTA1MWJiNmYyNmFlYTBiYzllZWExMDVhYzg4ZGUzYmMwMCBweTNrCis4MzQwMSAzOThmYTdiNzc1M2FlMGE2Njg2OWU5NjIyYTZjODY0Yzk4ZDZmMDg3IHJlbGVhc2UzMS1tYWludAorODM0MDIgNTFhYWQ1MDljMjBmMTUxNTk1NTFhZDhiZDM2NjNiMDc3YTk4YzgyOCByZWxlYXNlMjctbWFpbnQKKzgzNDAzIDFmMDI3MWMwMzZlMTY4ZmU0YWIyMDQwYzAxOTI5YWY5ZmU3MTg2NjkgcHkzaworODM0MDQgY2MyZjg2NGJhYzljZWUzYjhjODdhOWIzNDQ0YmU2MTdkZjMyMjJhMyBweTNrCis4MzQwNSAxMzViOTkxZDY1YjYwZTY4NzUxYjA1ZDUzN2I2NjgwZjRmY2I5OTM0IHB5M2sKKzgzNDA2IGNmOTg5YTM0Yzc3ZTMwMzliYTA1NzU1YjUyMDFhODUyM2E2MzdiZTggcHkzaworODM0MDcgODhjM2RiNmY0NzllNDNiOWM4NzhkNTVlNmNmNjNlZGJmOTA5MWY2YSBweTNrCis4MzQwOCAyMjk5M2QyN2ZjOGRlZTRjYmUwYTJmMzkzNTE4MWUxYjIxNjE4Yzk1IHB5M2sKKzgzNDA5IDBiZTU1MDQyMTNkMzgwZjBmYmJjYWI5NDYxZDAzYmUxOGY4NWI4MjcgcmVsZWFzZTMxLW1haW50Cis4MzQxMCBlMzE2NWVlYWE3MDBjNThkMWE2MDI5ZjBkMTkxMDg3MjhkYjgzOGUzIHJlbGVhc2UyNy1tYWludAorODM0MTEgNzQ1OTlkMzk1NGUyOGQ0YzlmNzQ2MTkzZTM1NzhkYjc2NWY3M2M4MSBweTNrCis4MzQxMiAwZmU1NWMyODZlZGZkNDcyNjRjOTdiOGIwMGM5NzA3NmY5MGEwNTgzIHJlbGVhc2UyNy1tYWludAorODM0MTMgNzY2MDVjZmM0Y2YzODNiYzhlYmZmZjMwNjFjYzAzZmFhNjllMWJmOCByZWxlYXNlMzEtbWFpbnQKKzgzNDE0IDYyNWMyMWRkZTEzODBmODFmNTRkNGEyZjI2YzBmZmI4MjYxZDllNDYgcmVsZWFzZTI2LW1haW50Cis4MzQxNSBjODNiYTU1MTUxYjFmMzBkMmNlZDU5ODNiNzRlZDA5NDAyNjUxYTk4IHB5M2sKKzgzNDE2IDMwMjAyYzAwMTQwMTU0ZDUzZDQ1YjNjNzY2NDIyN2Q4Mzk1OGNiMzQgcmVsZWFzZTMxLW1haW50Cis4MzQxNyBlZjc1ZWNkMGUxYTdiMzJhOTU0MGM0MjJlNmMyZjY2M2RhNWM4ZTU1IHB5M2sKKzgzNDE4IGNjMzM1MDhlODBjZDc4MTkyOTdiOWExZGFlN2EzNDExNWZmZWMyYjMgcmVsZWFzZTI3LW1haW50Cis4MzQxOSA3MWZjOTJiODhiMTliODAxZTg5ODliMzhkMWViZTg2YTZhMzcwNTJkIHJlbGVhc2UyNy1tYWludAorODM0MjAgMDFjYmQ5MzIwMjY0NDhhNzUxMDVjZmUwNWRhMDk2ODZlNWJmMzZkYSByZWxlYXNlMjYtbWFpbnQKKzgzNDIxIDg0MzYzYzc0N2MyMTIwYWE0MmI0OGExYmEwNGIxN2UwODkyYmUyYjYgcmVsZWFzZTI3LW1haW50Cis4MzQyMiA5ZWUxOTZhN2Y5YTJhMzJiZTQ0Zjg3NjExZWQ1N2EyZDJjMDY1ODI4IHJlbGVhc2UzMS1tYWludAorODM0MjMgZGJjOGRhODEzNjMwZTYxMGYwZmU1MDg4NTQ2ZmZlZTAyMTY5ZGIyMyByZWxlYXNlMzEtbWFpbnQKKzgzNDI0IDlkZTA3YzU1ZmRkYTI3NjllZGM1Nzk4NWZjOTk3NzY4MmY3MWUwMjMgcmVsZWFzZTI3LW1haW50Cis4MzQyNSBiYzY2ZTE1NjZhMTkyODQ3MmFiZjJhY2UxODg4YjAyMmY5MDMyNzA5IHJlbGVhc2UzMS1tYWludAorODM0MjYgYmY1YzYzMGRhYWY3NTJkMjY4NDMzYmQ4MjNhMjczYTkwNDgxNTE0YiByZWxlYXNlMjctbWFpbnQKKzgzNDI3IDkzYjNhZTYzZDJmMzEzODg0MTdmYmY2NDA5YzQxZjVkOTFmMTM2ZDEgcmVsZWFzZTMxLW1haW50Cis4MzQyOCAxMGMxYjYxNDFkNTM1YzVkZWJiNjBhMTNlZmY1ZDIwOGZhOTUzNzgxIHJlbGVhc2UzMS1tYWludAorODM0MjkgOWYyZmJlZTQyMGRhYzJhMWRjZDMzMjBiMWY4ZmQ3ODk4OWZmYjk2OCByZWxlYXNlMjctbWFpbnQKKzgzNDMwIDBkY2FlNDU1ZWMwNzZkYmQzOGY1ZTlmN2IwNDlkNWNiNTZlYmVkMGIgcmVsZWFzZTMxLW1haW50Cis4MzQzMSBiYTM0Mjc5NjIzMDYzN2E4ZjdlNDMyZjhjY2QxNWM1NTgwM2I4ODNlIHB5M2sKKzgzNDMyIDY2MWUwYjBiNDBiZjFmM2NjOGQwNWM4Y2FiZTVmYTEzNTYwODgwNTYgcmVsZWFzZTI3LW1haW50Cis4MzQzMyAyMGM3MjQ0YmNhNzgwMzc2NWUwZTY3NWE0NmI4MjRiMzFlMjViNGI1IHJlbGVhc2UzMS1tYWludAorODM0MzQgYjQ5MjAxNDg0ZjdmZTVmM2EwNDVkNzNmN2RlYmYzOWEwZjJkYTg3OSByZWxlYXNlMjctbWFpbnQKKzgzNDM1IDkxODAyODQwZjBmNzgzZjFkZDU1NDQ1ZTVkY2MzOTlkNDVkYzNmZDkgcmVsZWFzZTMxLW1haW50Cis4MzQzNiAzNDk5ZWQ2Y2JkMDc3Y2Q1NmM0NmQyNTUzNTUxNzAzMGUyZmFjNjBjIHJlbGVhc2UyNy1tYWludAorODM0MzcgNDkwM2U3NTc3NDU0ODU4YTU3MTRlYzkzOTRiNjFmYzQwODU1ZjUxNCByZWxlYXNlMzEtbWFpbnQKKzgzNDM4IDQ2YjE0YTI5NTBkMDBlYjc2NTM2M2FjMDFhYzg5ZDM5MzU3NDQ5MTggcmVsZWFzZTMxLW1haW50Cis4MzQzOSA0ZjY3OTEwNGNiODZiZGU2NDNjMTliNzMwYzlhMmZjNGQ0NmJlNzg5IHJlbGVhc2UyNy1tYWludAorODM0NDAgNDA0YTlhYzFhOWEyYjdlZTNmYjY1ZTVkYTEwOGMxYTQzYjRkNjM0YiBweTNrCis4MzQ0MSAzYzBmZmUzOTU1N2RlZTU1ZGFkNGVmOGVkZDcyZDk2ZThjOWQwZTFiIHJlbGVhc2UzMS1tYWludAorODM0NDIgYThjZmVmODg0MDhmM2M0NTVjZTQzNGE3OWJiMTNlZTk5M2NiNmQwNCByZWxlYXNlMjctbWFpbnQKKzgzNDQzIDcyMDc5OGExZWU3MTkyMmZhYTczNGFiYTVkY2NkNzdmN2RjMTY3MjAgcmVsZWFzZTI2LW1haW50Cis4MzQ0NCA3NjViZmQ4ZWM5Njg5OGNkNTNkOTQ2N2FmNjk5MjE1NmFhNWE2YjNmIHB5M2sKKzgzNDQ1IDVhZjM2MWFkYWFlOWZkZGJhYzdmNDBiMDhhZTM4ZDJlNGNlMzRjMzggcmVsZWFzZTMxLW1haW50Cis4MzQ0NiA3NWIzZWRkYTNjMmJkOTUzOGRiNjk3ZjM1YmI4MmUxNTNiNWZhYjBjIHJlbGVhc2UyNy1tYWludAorODM0NDcgMTQ2ZmVmMDI0OWY5ZmZjMTBkZjg3OTc2Njg2MDE4M2NmMWVkNWJlNCByZWxlYXNlMzEtbWFpbnQKKzgzNDQ4IDQxNWVhMmMzY2ZlOGE5YzBmMDgzMjIxMmEyY2ZlM2Q1NGVlYzVhZTAgcmVsZWFzZTMxLW1haW50Cis4MzQ0OSA0YTAwMmRhN2ZiZmIzZDk2NjFiNjhiMjJlNGNhMGIzM2ZiZjBlYTRjIHJlbGVhc2UyNy1tYWludAorODM0NTAgM2Q3ODIzZTY4OTdiNzYxMjAwNDUzN2IyNDc2ZjZiMmM3ODIzZDc5ZSByZWxlYXNlMjctbWFpbnQKKzgzNDUxIDJjYTg0MmRjYmUxMWU4NDRmMDFjYTJjYzE0ZWVmNzE3MmFjNTJlMGYgcmVsZWFzZTMxLW1haW50Cis4MzQ1MiA0NzNhODA2OGY2YzU0YTQyNzM1OTNmZGYxMWIwOWFmYmMzODc3YTUxIHJlbGVhc2UyNy1tYWludAorODM0NTMgYmVhYjJmYjI5NmNjZGI2ODEwNjcwNjIwZDJkMWNmNjhiZDNkZDdlZiByZWxlYXNlMzEtbWFpbnQKKzgzNDU0IDAxZDljYTgyZmQ0ZTRlZTMwM2VmZWJkYzhiOGEzODAzZmUzY2VjOWEgcmVsZWFzZTMxLW1haW50Cis4MzQ1NSBhYWQ1NzY2YmYzNmZjNmNjZDk4ZjI3ZGY5MzZmNTAzN2FhOWI4ODlhIHJlbGVhc2UzMS1tYWludAorODM0NTYgYzcwNmY4Njc5ZGZjZTNmNGE1N2NmOTFlN2IxOGY4ZmNiZTIxNzhhZiBweTNrCis4MzQ1NyA4YzEwNDViOTJiNmYxOWQyN2Q3ZDliODA3YTVjZTdhMmEwYWRhNjhhIHJlbGVhc2UyNy1tYWludAorODM0NTggZjA0ZjQyMTM0YTkyMTc0ZmQwMzg2M2U3MDRjZTVkZWQxNDU4MTNjZiByZWxlYXNlMzEtbWFpbnQKKzgzNDU5IDJiYzFmYzJkOGNjMDlkNzM0ZDViOGE0YmU3MmRhMGQ1ZmQ4ZmMzMTIgcmVsZWFzZTI3LW1haW50Cis4MzQ2MCA2OWY4N2Y5ZDMzZTcyMjBiNmJlYjE2OTVmYzgyNWUwNjRiNzI3NmViIHJlbGVhc2UzMS1tYWludAorODM0NjEgYmY2ODIyNWRkMmJjZTZkNWQ5NTcxZDNiOWEzODM4YWY2NTA2YzE2YyByZWxlYXNlMjctbWFpbnQKKzgzNDYyIDllYTVkYjU2N2JkZDhiZmY5MjgwNzY5OWU0MGRhYWIzZDA0ZTM1MTUgcmVsZWFzZTI3LW1haW50Cis4MzQ2MyBjNDMyYWRhYzExNmFkNzE0ODgyYzNiMjZmY2ViMjRiMTZkNDBlYWE5IHJlbGVhc2UzMS1tYWludAorODM0NjQgOTNkMTI0YTgxOTVjYzQ4YTViOWUyY2IzNDhlYWFlMTA5YWRlMDhmYiByZWxlYXNlMjYtbWFpbnQKKzgzNDY1IDlmMWVlY2JjYzM2NjIwZGUxNTgzMzNlODQ1ODg3N2E1YmQ3MTBjY2IgcmVsZWFzZTMxLW1haW50Cis4MzQ2NiAxOThiMmNkM2E2ZDFiODdiOGFjMmI5MzFhMWU4MTdmNWViNDAyMDZjIHJlbGVhc2UyNy1tYWludAorODM0NjcgMzk1ZWNhZTYwMmNiMTAxZTZkZDg2NTVlMDRiNjMzNWZmYjhlOTA0MCByZWxlYXNlMzEtbWFpbnQKKzgzNDY4IDViN2UzNWFhMWYxZDE3M2E4ZmQwZWM1M2RlZWQ1YjMxMzY3ZGE4NzAgcmVsZWFzZTMxLW1haW50Cis4MzQ2OSBjYjUyMjI1NzJmY2Q5M2ViNWIyNmVkNWViODYxOGE4YTk0OWQwOWY5IHJlbGVhc2UyNy1tYWludAorODM0NzAgY2QxMWUxYTFmZDg5YmMxNTZlNDNjMDc3YjMyMWJkOGM0YWI1MTk3ZCByZWxlYXNlMzEtbWFpbnQKKzgzNDcxIGYzNTQxNDY0MmRmZmEzMzViMjdiNzY4NDU0ZjBjYjhmOTU3MjhlNWEgcmVsZWFzZTI3LW1haW50Cis4MzQ3MiAyMjhhMGVmMjNhN2IyZTU0YWE0Mjg3Y2I2NjJkYWIwNGNhOTQwM2I3IHJlbGVhc2UzMS1tYWludAorODM0NzMgOTJmOTY4ZDg3NGI4NmU4MWRlZTZjMWI0OTM1MjA5ZjhlMDUzMDU0ZiByZWxlYXNlMjctbWFpbnQKKzgzNDc0IGY0NmRjZDhhMzExMzVhODMwYTZkYTkyOTg3OWRiMWE5YzNmMjNiZTcgcmVsZWFzZTMxLW1haW50Cis4MzQ3NSAyNzU0NGZiMGY3ZjE0ODU5MDQ5NDQ3MGEzZWFiOGRlMWYyYzM5MDgyIHJlbGVhc2UyNy1tYWludAorODM0NzYgMTMxMmU1OTRlYmU3ODQ4ZTY3NTA3YjBiYzJjNjc0MmQ1MWVlNjUzZCByZWxlYXNlMzEtbWFpbnQKKzgzNDc3IDliZjdhMGY0MmVhYzM5ZjUzOTYyOTE2Njk5NzU0OTYwOWU2ODMyNjIgcmVsZWFzZTI3LW1haW50Cis4MzQ3OCA2YWVhNzA5MjhhNmFjNmQ0OTY2Yzk2ZDQ0YzZhZDUzMTFkZjIzNTBjIHJlbGVhc2UzMS1tYWludAorODM0NzkgMWFiZGJjZmFhMDg5ZDA4MGIxMzZlYmFmZGQ1Njg5NDQ1YTg5ZmU3YSBweTNrCis4MzQ4MCBmMzZhMDQwNzhiZmRiZmViMjY0ZDc5MzMyMTU2ZDAzNWVlMDM4ZTQ1IHJlbGVhc2UyNy1tYWludAorODM0ODEgZWJkNGIyOGY0NmEwZjI5YmJmOWRlNTg3OGM2OGQyNjBiM2MxZDY4NCByZWxlYXNlMzEtbWFpbnQKKzgzNDgyIDBkZDQ4MDAzOGE4ODcyYzg3MmQ3ZWE5MTE4MWRmMzUyYmY0NDRkNDQgcmVsZWFzZTI3LW1haW50Cis4MzQ4MyBkMTViNDNjMjcyZmJiNmQ2NDdkY2JkODE3NjVmOTQyOGFjNTQyNmJkIHJlbGVhc2UyNy1tYWludAorODM0ODQgOTUwMWNkNjQwYzhlODdlMmVjZjExNzY5MjI3MGJjZGE2OGM5NWQ5YiByZWxlYXNlMzEtbWFpbnQKKzgzNDg1IDhmOGJhNGJmYmZhNTA2NDc2NGJjMmZjNDYyZmVmNjViMzFkNDU3ODUgcmVsZWFzZTI2LW1haW50Cis4MzQ4NiA3NDM0MDY3NDliMmQ3MDVjYzM5MWQxNDFlODhkZmRmNTE4NWMxMjYxIHJlbGVhc2UyNy1tYWludAorODM0ODcgZThmYzlhOWUxOTkxYTA3OTk3ODUxNTY0MmNkMzZiYzZhNTJhNmQ3NCByZWxlYXNlMjYtbWFpbnQKKzgzNDg4IGRlNmRlZjc5MzI2YzkzNjY3NmYxZGRhYzUxMWU4YWY4YWIzZjMxMTUgcHkzaworODM0ODkgMmE0YjJmZWM4Mjc3YzdiOGY1ZmI1YzMyMjA4ZTYzMDJjY2MyOTNlNiByZWxlYXNlMjYtbWFpbnQKKzgzNDkwIDJjMjUzZjZlMDJlN2Y5MjU0MDk1YzliZTM3Y2Y4MjllN2UzY2EyMTEgcmVsZWFzZTI2LW1haW50Cis4MzQ5MSAzODgxMjk0OGM1MzIxMTE3N2M5OTkxZDc4Y2U4ODY1MWJkNWZmZGFhIHJlbGVhc2UyNi1tYWludAorODM0OTIgOTdjYjFkZDg1NjZlYjIzNWNjZTY5NzUyZWM3ODU1NjE5NWQ2NmJmZCByZWxlYXNlMjYtbWFpbnQKKzgzNDkzIDVmZDA5ZTQxMGQzNmJmMzYwZWExZTIxNWI0MjQ4NzU2YTY0OTAxZmYgcmVsZWFzZTI2LW1haW50Cis4MzQ5NCBiN2Q1Y2JiZWExODBjZmZkYjQwOGJjOTNkMjBhZTlkMGQxNzY2OGZhIHB5M2sKKzgzNDk1IDYxYWQ4MWE3NzRjNTUwNjNmYjEyOWVjZTlkZjI4NzQ3ZTE5MzgwMDMgcmVsZWFzZTI2LW1haW50Cis4MzQ5NiA5Yzc1YTk0MTg3YzczZjZhNzg5NDU4NjAwMjQwNDBhYzI3YjU3MzJjIHJlbGVhc2UyNi1tYWludAorODM0OTcgMGRiNjVjNjUxMGRhYTU2OGYwZWUxYjM5NmE5MDc5MGMwNTlhYzAxYiByZWxlYXNlMjYtbWFpbnQKKzgzNDk4IDMxNzRkNWJhNDZlMzhmMWI4MDFlYmEwYjYzMzM1MTBjMDUxODc4MDAgcmVsZWFzZTI2LW1haW50Cis4MzQ5OSBiYzEwYTQ0MjcyZGZjN2VmOGZlYTllN2IwNjI5MmEwZjZhNzVlNGUwIHJlbGVhc2UyNy1tYWludAorODM1MDAgZmRiZmNmOWRhMmM3MTBjYmZiY2E4OGVhZWIyMTRmMzM5NzM3MDk2NyByZWxlYXNlMjYtbWFpbnQKKzgzNTAxIDhhZGEzNWU5ZjQ1ZDBmMTM3ZWE1M2MyNDBkZTM3ZjE5ZTQ0MGQ3MWYgcHkzaworODM1MDIgMmMzNjc1MDE2MTQ1MWRkNTAyYzMxMjc5ZDM0M2FkMGQwMjJjMTJiMiByZWxlYXNlMjYtbWFpbnQKKzgzNTAzIGU0OGVmNzEzMWNmYmM3ZjQ0MDQwZDY1MjY4MjU1MzE2MTcxZWZmNmIgcmVsZWFzZTMxLW1haW50Cis4MzUwNCBjOTY2MzEzMjM5MGRjZGM2NmJlNDA5ZWFmYzkwNmQ2YmM2YTY0MmFhIHJlbGVhc2UyNy1tYWludAorODM1MDUgMGFhYzdiODc3MWUxN2ZlM2E4MmI5NzUxNGZiZjg4MzU1MGExOGRhMyByZWxlYXNlMjYtbWFpbnQKKzgzNTA2IDhhMTQ5YTlmOWRhZjY1NzE2NDUwMDZlYjRlMzQzYzY2MDhkNzZjMjIgcHkzaworODM1MDcgMmU5N2FlYmFkZTRkZGJjZjM2ZTM2NDE5Nzg4Y2ZlOGNlYTlkMzlhNCByZWxlYXNlMzEtbWFpbnQKKzgzNTA4IDYzYjIzNDllZjc5MGQ0ZjQ2YjdjMGU0OGZkNzQyZDU0ZTA0MDM2M2EgcmVsZWFzZTI3LW1haW50Cis4MzUwOSA3MmM4ZmFiOTExNmViMDhiYjFjMjgzZjRhOTQyZTI1MGU5MWNmOTRmIHJlbGVhc2UyNy1tYWludAorODM1MTAgZGU5ZjM1M2VlODY1ZDllNTg1YjE2MmQ2M2IxNjUyM2M2MzBhMTc1MyByZWxlYXNlMjYtbWFpbnQKKzgzNTExIDM3ZDNjZDhjMTBmYjQ1MTE5N2U1NGU3YmRlZmNlZDdmZDA1Y2NhMjYgcmVsZWFzZTI2LW1haW50Cis4MzUxMiA3NTFjNmRkNzFiNWVkNTVkNDk1Y2U0MDc1MTQxZTEwOTJmMjAwN2Q4IHJlbGVhc2UyNi1tYWludAorODM1MTMgZWI2Zjk5MjU0MzEzNzM4ZGRjNzhlZjAyOGVlYTdlYmE2NmZhMzEyNCBweTNrCis4MzUxNCAxODVlM2Y3MjY2ZTkwZDc0M2EzOTcxZjVhOGQzN2FmZDBhN2M3YWYyIHJlbGVhc2UyNi1tYWludAorODM1MTUgMzAwODZhYTMzMTIzNTEyYWMzNGVmNGNiOWQ4ZDAwY2RjNTdiODBiMiByZWxlYXNlMjYtbWFpbnQKKzgzNTE2IGQ4ZGJmMjQwMGQ4YTIxYzllNGVhYWI0ODU5OWJhOTg4OTdlODE1ZTUgcHkzaworODM1MTcgOGEyYTgyYmI3MWM4MjI0N2UxZGYwODcyN2IxYjFjNmRjZmM4MWIwOCByZWxlYXNlMjYtbWFpbnQKKzgzNTE4IDJkYzBiNzEzMWM3MjEwODBhZDkxNjljNjk4NDAzZmY3ODQwNmM5MjYgcmVsZWFzZTI2LW1haW50Cis4MzUxOSAwN2M4NGI5ODE0MDE0ODYyZDAzZGE2MDQxYTA2ODA0ZTNkZWQyYzI0IHJlbGVhc2UyNi1tYWludAorODM1MjAgZmQ0YjA3YWI3OTc2OTk2NDAwNjUwMTBkYzNkZWI5ZmE5YjE3YzAxYiByZWxlYXNlMjYtbWFpbnQKKzgzNTIxIDM5ZTE0ZGY3NjVlNDMxYjlhNzhmYTQ3NTNhM2MzNzJkMTk2YTgzM2UgcHkzaworODM1MjIgOTA0ZWY0YmJmZjVlNTY0YmY0MTZkMDY1MGFmOTdlN2U4ZDcwYjI1NCByZWxlYXNlMzEtbWFpbnQKKzgzNTIzIGI2MTQ0ZGFhNDMzOWExOGFiMTBlNmUxZmY2MmQ2NDNlMmNhOTRhNDggcHkzaworODM1MjQgNjFkMzQ4MWViYTc0MWQ3NTcyNzdlMjdiNTc0MmJiYTczMjAzNGI5MSBweTNrCis4MzUyNSA3N2JiYjA1ZDMxMGU2M2RkZTZkZGM1YWM2YTMwNjYwOWUzZGE4YWU0IHB5M2sKKzgzNTI2IDkyNDZhYWRmY2Q3ODljMjNmMTMzOWFkNWEwMWY0YWFkYTY3M2Q1MmMgcHkzaworODM1MjcgZWI3OTA0OTVjNmE0NTAyYzlhMGViMTU2NWNiNjkwZDgyNDRlNTFjZiBweTNrCis4MzUyOCBhMzQ5ZmFkNTA3YTIyNDU4MTVlNTJiZDk3ZmJlZDliYjBjZjgyM2UxIHB5M2sKKzgzNTI5IDE2NDBlZmE3ZmYyOWM5MjRiODg3OGZjZmJkMTljOTQ4ZmExMDY3YTUgcHkzaworODM1MzAgYjA4ZDM1MDYyMDg4NWYwMmZhZjI0OTI1MDcyZmQ3MGU1ODM4ZTM3OSByZWxlYXNlMzEtbWFpbnQKKzgzNTMxIDg1Y2RhZjVmM2NkYzNlMTRjMDgxZTlmMjc5ODc0ODZlODVkOGE3NGUgcHkzaworODM1MzIgYTMxNDljOTMxNjU2NTZlOGY5NTAwNTM1OTkwOGZlMmNiMzU4ZjY0YiByZWxlYXNlMjYtbWFpbnQKKzgzNTMzIDZiYWViYTU0ZmQyNGJkNzFiYWUwMDU1OTBhMWZhYmEwMWJjZDBjNGIgcmVsZWFzZTI3LW1haW50Cis4MzUzNCAzMDY4ZTAwYTMyMDc2OGE1YzAyNDNmYzM0ZjVjNjM4OWNlZGRmNzkwIHJlbGVhc2UzMS1tYWludAorODM1MzUgM2JlMjQ2NGMwYzM5NDZkYzIyODU3ZDJjZTM5YWViYjg1ODhhNzVkNCByZWxlYXNlMjYtbWFpbnQKKzgzNTM2IGQ3ZjMwODVkMWIwM2U0MmZkNzZhODM1ZDA2OWQxZTUzOTZlOTk2OGUgcHkzaworODM1MzcgN2MzYjg0OWQxODFhZTJkOTgxMTU2MjQ5Y2I1ZjVmZWM2MDAwOTA5ZCByZWxlYXNlMjYtbWFpbnQKKzgzNTM4IDUxNmY5ZTM0YWYyMDk2ZGEwOWY2MzkzNWRlOTY4MDRjYzdjZDIyMTIgcHkzaworODM1MzkgY2E2MzJiYWQ2ZDYwY2I0NmE1YmMxMzI4Y2NiNzljYTBmNjA2M2NhYSByZWxlYXNlMjYtbWFpbnQKKzgzNTQwIGRiYTk5ODI4ZDkxYzNlOGVlMTk3N2QxMWM4MjhiZGYyMTM0NWM3YTMgcmVsZWFzZTI2LW1haW50Cis4MzU0MSA2NTM2MTUwZGQ0ZjQyODY1ZDI4NDQ3NzFmYWQyY2QyZjI5YzZjMjA1IHJlbGVhc2UyNi1tYWludAorODM1NDIgNThjMjJkMzBmNzQ5MzY0NzdiYTBiZDZkOWM4NzRkNzdkMzk3MzMxZiBweTNrCis4MzU0MyA2NzI0OTNmZmQ3NTNmOTljZWZhOTY1NzU5NzFkYWI2OTQxYjdmNDhjIHB5M2sKKzgzNTQ0IGNlY2M2ZDJhNWI0OWNiY2M0NGQ5N2EwNWQ3N2FhYjdiNGVmMzFlNjYgcmVsZWFzZTMxLW1haW50Cis4MzU0NSBiNmM1ZmNjY2I2ZGU1ZDU3ZGY5ZDUyODJlNTdhMmE1YzYyM2E5NTYwIHJlbGVhc2UyNy1tYWludAorODM1NDYgNzIwMmM5YTIwNTY2NjI5ZGFkNmQxNjc5NDMzNDhhZjlmOWU5YjgwMCBweTNrCis4MzU0NyAwYmYzNmNkZDgzMzQ1NDI1MTBjNWVkY2ZjYWM2MzkzNDJmZWQ2YjhlIHB5M2sKKzgzNTQ4IDZlM2MyMDkzYmIyMTA4NGMwMWRjYTQyZGZiZjU4YzIzNWQ1ODFlN2MgcHkzaworODM1NDkgZjhjZTY0YTk2Yzg5NjAyYTVmMGI5NWU5MDlhYjhhMmFkZTRiYTNjMyByZWxlYXNlMjYtbWFpbnQKKzgzNTUwIGEyNGM5YTc0MDFmNDUzNTE3ZTM1NmFjMDEwZWQ3MjUxMjgwMTBiYjEgcHkzaworODM1NTEgNjk5ZmNkYWY5OTgxMmNhOTFhYzkyNGI3NWRhNTYzYWE3NWU0ZjQ1OSBweTNrCis4MzU1MiAzMDdlMWNlZTRhNTgxMGY0MGViNGEzNzFhOTljMjgyZmUyNWJlMGU4IHB5M2sKKzgzNTUzIDdmNjhmODU1NDNkNGY5MWE3ZTIyNGE0YjY3MWYxN2ZiN2IyY2M0YTkgcHkzaworODM1NTQgN2YwNzEwODdkODIwZDk5MmRiMTZhN2IxNTAwN2UwYWNjZWQ0M2EwMCBweTNrCis4MzU1NSA2MmQ4Y2ZjY2QxOGI0NGY1NmU5NmM5NzYzMmFiY2QyN2I3NTk4YWIzIHB5M2sKKzgzNTU3IDUxMTAyYWJkZWM1MDIxMmYwNTY3NzEzNDJjYjFhNTU3Y2MxZTRhMmMgcmVsZWFzZTI2LW1haW50Cis4MzU1OCBiNGY2MTQ3MTc4ZTVjMmY3OTI3MmI0MjI0ZTg4Y2UxOWYwNzAwZDk1IHB5M2sKKzgzNTU5IGFmZjhkN2JjYTNmMzMzZmE5OTY1NDZlOWVjNTE5ZjY1ZjVjYmMwZmUgcmVsZWFzZTI2LW1haW50Cis4MzU2MCA0ODc0ZWZkMWY2NTdhMzZmNzcwZDRhYjkwZGNiMzRhYWY2NjQxMGFmIHB5M2sKKzgzNTYxIDdlYmY1ZjkwMTFiMTkwZDJlODM5NDRhNmVkOTU1NzkzY2M4MGZhZjMgcHkzaworODM1NjIgYjRiODlkMWI0MmNkNDQ1YmE1YjE0NmFmMDgzYjk2N2RiYzg2MjAyMSByZWxlYXNlMjYtbWFpbnQKKzgzNTYzIGJiMmRjZjEyMDNjNGM0NzBmNDFhNDhkMmM3NWIxMmIzZDM5ZjA4MzEgcHkzaworODM1NjQgYWMyOWY3MGM2MWRiYTM0NDZjNzViZGUyYjIwN2U4OTY0NzVlMDU1MCByZWxlYXNlMjYtbWFpbnQKKzgzNTY1IDQyZTE5YzE0YjE0OTJhNWM5YTYzMzMzYzVhODkxNmFjZWQ0YjYxNjUgcHkzaworODM1NjYgNDdiYTkwNWE3ZTg3ZGM2MWI3ODg4NTQ5MmFiZDc4Y2Y0MDY5MTQ0ZSBweTNrCis4MzU2NyBkMGJiODBlODFiMzlhNjNjNDYzZDNjNjc0ZTBjYzI2MjAwMzE3YmUxIHJlbGVhc2UyNy1tYWludAorODM1NjggMzdiYTQ3MjMyMDI3YTYwMjk5NGFmMTFiYTU1ZjBlMzQxYmRjY2E5OSByZWxlYXNlMjctbWFpbnQKKzgzNTY5IGZmNmZhYmYyNWNlZjQ5NTdjOTNlNzlhNDJmZTBiY2E2Y2ViZmJkOTQgcHkzaworODM1NzAgZGYzNzhlNDRiYTlhZDNlZjg0ZTAyNWQyZTkwOGRiNTIxOWFlMjVmNiByZWxlYXNlMjYtbWFpbnQKKzgzNTcxIDIzNjM5M2M1NTRmNzE0OTBkZWNjNmYyY2FmZmMzMTM5N2Y1NjBiZWQgcHkzaworODM1NzIgNzk1ODhkNDg2N2JjYjI0NzVkNjI2ODFhNzI0ZTI5NTEzNjkwOTA0YSByZWxlYXNlMjYtbWFpbnQKKzgzNTczIGRjOTQxMzQxODZjODc1M2M2YzBlNTM2YzM5MjY3ZmU1ZmFhMzFjZjkgcmVsZWFzZTI2LW1haW50Cis4MzU3NCA4ODE2ZjRlOWY3MTJjZjNiN2YxOWFiZDE0Yzk2Y2IzYTFlY2RhMjRkIHB5M2sKKzgzNTc1IDcwYTZhNzI3ZWNkNzMyOTM1Mzg1YTViYjlkZmQ4OWEyMzkyMDdiODUgcHkzaworODM1NzYgNjQ5NDc2YzY2M2ZjZjYxMGU1NmRjZDQ1MjIyZGFhYWIwOWY1NWEzOSByZWxlYXNlMjYtbWFpbnQKKzgzNTc3IGNjMzM2NjkyYmFiOTA1NDc1YjljNzVlNWUzYjJmMmExNTA1OTFjOWMgcmVsZWFzZTI2LW1haW50Cis4MzU3OCA5NTk0MDBhZTA1YjA0NmM2MGVkODkzYWZjZmExZTYwYzNhY2RiMmNiIHJlbGVhc2UyNi1tYWludAorODM1NzkgMzE5YzlmOWRjNDU2MTk0NmRjZDViYjQ4YTFkMzM5MDQ4ZmFhMTk5OSByZWxlYXNlMjYtbWFpbnQKKzgzNTgwIDNkMDExYzJlYzIzN2NkOTM1NThlYWJlZjdjMGFmOTI3YjZlMzE2MzMgcHkzaworODM1ODEgM2FmNmNhZTVlMDI2YmJhNzNjZDY0NTZmYmExMmU2YTA3YjJmZTJhOSByZWxlYXNlMjYtbWFpbnQKKzgzNTgyIGQ2YWMzZDA5Yjc5ZDRhNzdlZDc1NzMzZjZiN2IwZDJmYjM3ZjQ0N2QgcmVsZWFzZTI2LW1haW50Cis4MzU4MyBiODVjZjg1YjdlZGJjNTRlNTE1NTkyODY5YzUzYjdjZTFmZjgzOTYwIHJlbGVhc2UyNi1tYWludAorODM1ODQgY2VhNmVkN2EwYWExMWEwZjg0OTc4OTc0MTFjNGJlY2VjM2ZlODkwNiBweTNrCis4MzU4NSA0ZGZiOGE2MWU2OWZkMDM4ZjM4MmU4MGNjNDAxZDdmNzA4MmFjYmQ2IHJlbGVhc2UyNi1tYWludAorODM1ODYgNzZlMWM1ZjMxOTMxZjBmZTA3OWI2ZTQ1MzA5ZDBhYmVhOGFiYjc4OSByZWxlYXNlMjYtbWFpbnQKKzgzNTg3IGU5NzFjMTA0YTVjMjFlM2QzNzQ4MGZiODRkYzI1NzgxM2RmMGViM2IgcmVsZWFzZTI3LW1haW50Cis4MzU4OCBmZDI0OTc1MGNiYWU1YTRlNjAwNDg1OGI5OThhMTgxNGZjYTk5ZDUyIHJlbGVhc2UyNi1tYWludAorODM1ODkgNmY4MWQ2ZjlhNmQxYzRhN2RjZGQzNTgyNTVjZjY0Y2Y0OGM5M2JiZiByZWxlYXNlMjctbWFpbnQKKzgzNTkwIDY3MzBjZjlkNjI3YTVkYWU4MWI0OTc1YWFlMjEzY2EzY2ExODgxZWUgcmVsZWFzZTI3LW1haW50Cis4MzU5MSA3NDQ5ZDA0MjEzYzZlNDFlN2E3NDQzNjk5M2EwMzcyMzYwNDEyOWMwIHJlbGVhc2UyNy1tYWludAorODM1OTIgMjE2MjBkOWIwODQ4MGNlM2FkYzM2NmRhZTY4MmI3OWFjYjc4ZDg2NyByZWxlYXNlMjYtbWFpbnQKKzgzNTkzIDU5NTY3NmU0NjZjMGQ0MzBjMGVhMjEwZTdmZGRkMDdjOGZmYmJlZTAgcmVsZWFzZTI3LW1haW50Cis4MzU5NCBhOWNkMjU1MGZmNDBhY2ViMGQ3NjRmMmQwMjQwOWE2NWRiNThjY2VkIHJlbGVhc2UyNi1tYWludAorODM1OTUgMTNkMmJhY2M1NmE0MTU0NTJkN2YxMDI5YjI1ZGUyMTBkYzg4M2M4MCByZWxlYXNlMjctbWFpbnQKKzgzNTk2IGYzZmVmMjBhNjZkZDA4YmQyYmVkYTEwYTQwNTI4NTJiMDQ1ZjlkMGYgcmVsZWFzZTI2LW1haW50Cis4MzU5NyAyOWQzNGU0ZDBhOWEzNjdhZTgwNDMyODVlZjdlODA0N2MyOGU4Y2RkIHJlbGVhc2UyNi1tYWludAorODM1OTggNjFiNjliZjFlZWJkY2UxMWFmY2IzMGEwN2M4ZDgwMWZjNGJhMjQ5MSByZWxlYXNlMjctbWFpbnQKKzgzNTk5IGYyZDgzYTEzNzAzZmE5ZmMxNTIwMGE4ZDU5NzNiYWU4YzY3ZjM2M2QgcHkzaworODM2MDAgNWM0Y2RmMzNjMTMyNWE3MDU2ZTc4ODBkOWU1NzdjZDZlYTM1YmM3NyByZWxlYXNlMjctbWFpbnQKKzgzNjAxIDEyYzkxZjRiYjQxNDQ5YWJhYzZhZGFmZmMyZDZjOGRkMGJkN2VhNmQgcmVsZWFzZTI2LW1haW50Cis4MzYwMiA2M2ZiOGRiYmZkYTI1ZTQyOTRiOWEzZmJkZTRiZWRjZDJkZDcwYjQ4IHJlbGVhc2UyNi1tYWludAorODM2MDMgNDQzODk2ZjMyNGNlMjBmYTY5NjA2ODc3MDg2YzAzZmNlYjgwMDI5MCByZWxlYXNlMjYtbWFpbnQKKzgzNjA0IGEyZjAxMzAyMWUxZGRiMWJmZjA4NTYzMTE5OTQ1NzRjMTVlMzJlODcgcmVsZWFzZTI2LW1haW50Cis4MzYwNSAzN2QzOTlhYThjMTZmZGE2NzVlOTJjNjQ1Nzc4ZmE1NTE1ZDAyMTc0IHB5M2sKKzgzNjA2IGZkMjBlYmExZjIwMTFkNjMwNDJkMzNiOWE0Y2VlZmRmMjg2YWViYTkgcHkzaworODM2MDcgNDc1MGE4YThiNGNmNDE3NDVmMjNiMDk1YjFlOTBmYjMyZTdhODM3YyBweTNrCis4MzYwOCA2Mzg0MTBhMjkwNDY4MWNiMDgyNjllODY5YmJmZDg3NDE4Y2Y2YWZiIHB5M2sKKzgzNjA5IDdhNDdjNGQzMGY2ZTFiM2Y0NmViZDBiNDRmODcxZDAxNzEwM2Y4OTkgcHkzaworODM2MTAgZDQ4NWM2ODBjNjVmYWM5MzczZDA5MzJlYTljZmZiNmIxNmU2MmNmMiBweTNrCis4MzYxMSA5NTJhOGRlNWNhNjVhMTc3ZDk0ZmZlNGRiYTYzZGM5OTMyMjk5Mzg3IHB5M2sKKzgzNjEyIDU5M2Q2NDE3ZWRmMTA3OWYyYzNlNTM1MDJmNjA1N2U2MjQ0OWVjNmMgcHkzaworODM2MTMgMjAyNDJhZjI0M2QyMGUyMzA3N2NiZDQzNWE4YmFhMjNlN2FhNjFjMSBweTNrCis4MzYxNCAyZDAzZDZjNGM4MjljMjkwZDkwNTE0ZjFmNWZlZTc0YWUyM2Q1Nzk0IHB5M2sKKzgzNjE1IDQ0ODJhNDI4ODVmNzVhNTE2MWRkNmVhY2QwNTIyYTJkODQxZTJhMTggcHkzaworODM2MTYgMjlmMjBlZjEwNzU1YTBhYTI0YTBhMTE0YWY4YzkwMjYzOWU5MzU3NiBweTNrCis4MzYxNyA2MDE1YjZlYzgxZjJjNzcwM2NjMWIyMWRiMjhmMDcwNTA3N2M1MDFjIHB5M2sKKzgzNjE4IDAzMWU2YjM0OGE4ZThhZjlkM2IxM2U0YzM2ZDg1NjQ3MWU1YWM1YjQgcHkzaworODM2MTkgNzYyZDg5ZmFjZWFhYWFjNjk4MTY1YjQ3NTc1OGFhZjZiNTY2YmE4MyByZWxlYXNlMjYtbWFpbnQKKzgzNjIwIDQ1NDBiNmY0MjhkMzYzNDc0ODQ2OGIzNzFmMjJhODcwODk4YTc0NjMgcmVsZWFzZTI2LW1haW50Cis4MzYyMSBkNTc1NTJhYmYxODBlNThkZDI0MGM1ODY1ODU0M2JmNWQ5NjVjNDFiIHJlbGVhc2UyNi1tYWludAorODM2MjIgYjkyZjBjNDlmMGU4ZjljYTY1NjViM2JhYjUxOWRmM2IzMDVmMDMzNiByZWxlYXNlMjYtbWFpbnQKKzgzNjIzIDY4Y2ZjODRlNGRiMWM4NmMyOTQ5OWZjZGQ5Y2RiMzRkZjZhODYwMTcgcmVsZWFzZTI2LW1haW50Cis4MzYyNCA0YzBiMzdkODY5Y2FmODc4NmI4ZTgxMzhlODNlYjE2MGM2MDc0ZjUwIHJlbGVhc2UyNi1tYWludAorODM2MjUgYTY5MzRhMWJmYTNiMGZjNjA1MWUxOTNlYTAwYzVkMTM2NTU3NWJjMSByZWxlYXNlMjYtbWFpbnQKKzgzNjI2IDY1N2FlODc3YzBiZjIwMDA2MGNhZTFiODAwZmUzNTQ4ZDNlNDRmMmEgcmVsZWFzZTI2LW1haW50Cis4MzYyNyA4Yzc5OTA5YTdlZTdhNjFmOTNlN2MxMjc2MzhmY2IzMGQ3YWNkY2M5IHJlbGVhc2UyNi1tYWludAorODM2MjggNGRmNzJmZWIzOWQ5MDU4MWNjZGE1ZmQxMDcwNjM2NjBkYTNhYWM1MiByZWxlYXNlMjYtbWFpbnQKKzgzNjI5IGVmMTE5ZGJiZTg4NzY2MTU1YzhhNGU0YjdkNTk1YzYwZGQxZjNmMTcgcmVsZWFzZTI2LW1haW50Cis4MzYzMCBhODhjYjgwMDUxMTBmNTczZGJiYzkwNmNmMWQxYjhjM2JlOGM5ZDI4IHJlbGVhc2UyNi1tYWludAorODM2MzEgYjFlMDQzZGU5YzVhNTg0MDE0YmNhNTgyNmFjZWZjNWY5M2FkYjk4NyByZWxlYXNlMjYtbWFpbnQKKzgzNjMyIDVjZjY3OWJlM2RmYzRlYThmM2ZmODZkYzI1ZDE3NDBiYmJjZmZiMWMgcmVsZWFzZTI2LW1haW50Cis4MzYzMyA2ZmZmMGZmZmY4NWI0ZWZiZjBkZjMzNTMyMDBkNzllODJhZjMzOWI1IHJlbGVhc2UyNi1tYWludAorODM2MzQgMmFjYTM0NDYwZmRiNDA5Y2Y1YzExYzMyMGIzMTIxNDEwM2Q5ZDRiMCByZWxlYXNlMjYtbWFpbnQKKzgzNjM1IDNlZmI0NTgxNzkwYTMxYzc3ODYyMGQ0OTY0NThjZDVhNGEyNGYzZmEgcmVsZWFzZTI2LW1haW50Cis4MzYzNiA2YTZjMTNhN2YwMzAzOGEwZGM4NGQzYmU2NjE0MjVmZjUwNmY1MzEzIHB5M2sKKzgzNjM3IDMwYTgwMGQ3ZWFjY2FhYTcxODc2MGZiMTIyOGU1Zjg3NDc0N2VjNjcgcmVsZWFzZTI2LW1haW50Cis4MzYzOCBlN2U3YzU2NzE4YWYyNmY1NTYwNjYyZGRjMTAxM2I4N2JmMzQ4MTU5IHJlbGVhc2UyNi1tYWludAorODM2MzkgMTk5NjQ5NDRjYzAxM2U3YzFmNTFkZTdjNzM1MDZiMmRlOWRkNTU1YiByZWxlYXNlMjYtbWFpbnQKKzgzNjQwIDg2ZDExOWU5NGRhM2EwNmJjMDJiZTc2YmM5NzdiNGZlN2M0NjRkMzIgcmVsZWFzZTI2LW1haW50Cis4MzY0MSA2M2YzODM3OWU0ZWRhMGI2NzYxZDUwOGFjY2EzYmU3ZDVhYmNjM2ZhIHJlbGVhc2UyNi1tYWludAorODM2NDIgN2I1ODRhMTNiYzk2NWFiYmJmNjk2MzM4Y2IzY2ZjNzdjNjM5MzFkZSByZWxlYXNlMjYtbWFpbnQKKzgzNjQzIGYzMDYwZTZmYjcxNzU4NWRhNDZmY2I2MmRiMjFlYmU2NzhlMTVjYjMgcmVsZWFzZTI3LW1haW50Cis4MzY0NCAxOGM4YzUwMDQxMDllZDcyOGQ4OGUwODI5ZWU2N2U2NjQ3OTgxNTZmIHB5M2sKKzgzNjQ1IDY5NDU0MTZjOGQwNDVjNjhhZWFmYzg2NDJhYmViN2FhZTBmZTIwYWEgcmVsZWFzZTMxLW1haW50Cis4MzY0NiA1MTc4NTljYjBlOTIwMDIzZDVhYWMwOTMzYjM0NTFiOTBhZTJiYWEyIHJlbGVhc2UyNy1tYWludAorODM2NDcgYzgyYjZlZmZiNjk1MzFhNWYzYzg4ZmNjY2M3YTk5MjUxYmM1ZTZjZiByZWxlYXNlMjYtbWFpbnQKKzgzNjQ4IGNkZjZhM2E1MDQwNzQ2ZDMxMGE1MjRmZGI4NWVjMGZlNWQwZTU4NWIgcmVsZWFzZTI2LW1haW50Cis4MzY0OSAxMjg4YTI1OTMyODc2ZjYzNDVkMjdhYTc4NmExNTk2ODgxZGFhZWU0IHB5M2sKKzgzNjUwIDU3MTA1ZTg3NTYwNGZlZmJhZGUxMzc2NjdiZGM1Mzc1YzRkNTEwNTkgcmVsZWFzZTI2LW1haW50Cis4MzY1MSBlYmM5MDUxN2I4ZDk2YmZmODJhMTdkMDNkNTJiZThiYzA4Nzg3MTg1IHJlbGVhc2UyNi1tYWludAorODM2NTIgZTFlZjUyNjMzMzUwZGY2NDM2NGM3MmI4YjNjNDE0ZDA5NjZiOGQ2OSByZWxlYXNlMjYtbWFpbnQKKzgzNjUzIGY4NjRmZmI4ZjJlZGVmNjg2Yzc3NmU3NTliNzg2MzU1ZDg2OTM0M2YgcmVsZWFzZTI2LW1haW50Cis4MzY1NCBkMjY1ZjkxYzM4N2QyZmE4NDA4ODU5NDJmNGM5NTA3NWZlNjZkNTAzIHJlbGVhc2UyNi1tYWludAorODM2NTUgYTc5MzdkYTYyNTkxYzI1ZThjYTcwMTk0N2E3YTA2YzM5YjUwMGFhMCByZWxlYXNlMjYtbWFpbnQKKzgzNjU2IDQ4YzU5ZTkwNTUzMjUxZTdmNTg0MjBhYmMwYjM3YTU2YzcyZTRkYjggcmVsZWFzZTI2LW1haW50Cis4MzY1NyA3Y2VlMWI5NjA5ZTQ3ZGUwM2ZmMDgxNTQ0NDRmOTExMzBmMmY3YzdhIHJlbGVhc2UyNi1tYWludAorODM2NTggYjIwNjY2NzhkOTM3Y2Y5OTBmZWY1ZTg4MGVlNTgyOTAzYjZjZWIwNiByZWxlYXNlMjYtbWFpbnQKKzgzNjU5IGUyMTBlZDYzYjA0ZTQyMzhjODIxNzE4ZjZmMTU5MDBmMmNmODNjZDMgcHkzaworODM2NjAgM2RjZmUyOWQ5Y2E1NDQ3YzBmODZkNDAyOTZkNjg1MDFlZjhlZjk1YyBweTNrCis4MzY2MSBhM2Y2NDUzODFkNjFjZTJlMWZhZTYyYjQxMDU0MjM1NjMzNjk2YjAyIHJlbGVhc2UyNy1tYWludAorODM2NjIgZjljNGYwOTlhMjRkZGRmNzc0OTU5MTgxZWNmYzg2NGUyMjdlYTNhOSByZWxlYXNlMzEtbWFpbnQKKzgzNjYzIDY2NjAxZmI5MGQzZGY2NDQ4YjA3ZmE4MTRmZjk1MzQxM2ZiNzdmOTggcHkzaworODM2NjQgNzFhZTUyM2ViYTViYWRkZjdiODFhOGJjYThiNzczMGUwNWM2NGViZCByZWxlYXNlMjctbWFpbnQKKzgzNjY1IDQ1ZGJhMjJhNzRmYzlhMzllODE4YmFhMDNjNjQ4ZTZmZjBlNzI0NGUgcmVsZWFzZTMxLW1haW50Cis4MzY2NiA5ZDlhODNiMjUwNDU3ODFmZWJlN2QwYWNmMTE3Mzc3NThmMDBiOWY2IHJlbGVhc2UyNy1tYWludAorODM2NjcgYWYzNjU1ZjJmMjQ4YzNkMzQ0ZjIxZWY3NWEwOGRhNDQwMzJiOTI3NyBweTNrCis4MzY2OCAzM2U5YmUyZmE0ZDIzOTFlNzUwYTNhNmMyYzJhZmU5OGM4NzJkNTVhIHJlbGVhc2UzMS1tYWludAorODM2NjkgNjNlMWQwZGM0NGVlMDdhMTZmNjk2ZWE4NzhjZTRmNTU5MmEyZmUxZSByZWxlYXNlMjctbWFpbnQKKzgzNjcwIDMzZDJmNDI0NTU2MTAzMzZiZTI3YjRhYzAxOWNmMjkxZTM1MDczNGYgcHkzaworODM2NzEgZGMyMGRmOWM5YmE5NWYwYWM2Nzk0ODY3ZmM1MjdjZjI1MGZkNDAyMSByZWxlYXNlMzEtbWFpbnQKKzgzNjcyIDAzYWEwNWViZDliYzViYmU5OTRiNDFjYzdlNGJmY2U2ODAyNzJiYTQgcmVsZWFzZTI3LW1haW50Cis4MzY3MyA3MWM0MzE1ZDQ5ZjI3ZjIxODFmYmE4MWRmYmUyZmNmNjgyYjFjNDNhIHB5M2sKKzgzNjc0IGZmNDQ1NmRkNGE3OGNhNGQzYWEzMTZjNDFkNTgwMDJjZTAyMjJjMDIgcmVsZWFzZTMxLW1haW50Cis4MzY3NSAyODUwYmQ5MTkyNzcwZDRiMWQ2Mjg3ZGM4ZTI5YTczN2U4YWUwMjg0IHB5M2sKKzgzNjc2IDIzYzA4OWRjNWNmZjBlOTA3NDBlNmY5NTgyNWQyZWQ3NzJiZjcxZjcgcmVsZWFzZTI3LW1haW50Cis4MzY3NyBkNmIzMzZkZDY0NTc3NmZlMTBmNDY4OTY5NjZmMGJhZDVlMGNlMjlhIHB5M2sKKzgzNjc4IDlkNjhlNzg0NWU0MjA1MDk1MGY0MzEyNWI5ZmVjOTMxNTEwZDEzYzIgcHkzaworODM2NzkgYzRiYmRhMmQ0YzQ5ODY1ZDI2ZWIzOWY5Y2U4ZDk3NzBiNGI1NzkwYSByZWxlYXNlMzEtbWFpbnQKKzgzNjgwIDA0MjBmNTQ3ZjNiZjI0MTEwNjFjNjgxZDM4MDUyNmNjZmNlODBjM2YgcmVsZWFzZTI3LW1haW50Cis4MzY4MSAzOThhMjVjZDYxMmRkYWFlZDVjZTlmZWMwNDgxOTI1MzUzNDBjZTI5IHB5M2sKKzgzNjgyIDk3MTllNWU4YThhZjkyZWJlOGUxNzQxNWMwOWVhYjBiOTU5MWRmNjUgcmVsZWFzZTMxLW1haW50Cis4MzY4MyBiMzNjODBmN2FiMTc2NmI1Yzc3MDAyOGVlNGVkZjIxODgwN2U5MjNkIHB5M2sKKzgzNjg0IGYyODM4ZWIxYmIxZWY5MGFmOTU3MDdkYWU4NmNkMWQ0YTY0MDZmY2MgcmVsZWFzZTMxLW1haW50Cis4MzY4NSA4YTllOTc2MTI3YWIxMzk3NmY3MTIzZjAyNGQxNzY4YmQwMTY1ZjZjIHJlbGVhc2UyNy1tYWludAorODM2ODYgMzc3NWJmODI5OWIzMTM1NmZiOGM3OWJmMjEzMmNhMjA1MWE1YWNhYiByZWxlYXNlMjYtbWFpbnQKKzgzNjg3IGY0M2Y2ZDE3MzA3NmU5YWI1YTdlNjc1NjUzODdiNGUxNDAzNDlmZTYgcmVsZWFzZTI2LW1haW50Cis4MzY4OCBjZjlmZWEyMmMzYTllMTYxZjljMmFjZTYyNDFjMjQzMmZmNDhiMzNhIHJlbGVhc2UyNi1tYWludAorODM2ODkgZDY4NmYzMDMzMTc0YTkzMDI1ZWJlZjQwNjk4OTI1OTE5MmExZDcyOSByZWxlYXNlMzEtbWFpbnQKKzgzNjkwIDIwZDczZmVjOWY2MjMwMWRkMjQzZGFkYjNmMDNhY2UyOGRhMDY1MGEgcHkzaworODM2OTEgYzFkYzllNzk4NmEyYThlMTA3MGVjN2JlZTc0ODUyMGZlYmVmMzgyZSByZWxlYXNlMjYtbWFpbnQKKzgzNjkyIDVhNzNkZDE1YmUwODRiZTVkODEyMmVmMmE4MmRlZmQ3Y2I2OTc4Y2QgcmVsZWFzZTI2LW1haW50Cis4MzY5NCAyMWE5Yzk0MDExMGQyNjVlM2Q2MzU2YzdmYjg3MzcyODM1YzllMmEwIHJlbGVhc2UzMS1tYWludAorODM2OTUgZmNhM2M5ZmI1YTFiNjNjMjQ1NzE1ODNkMzY2YzhiZDVlMWZjNzY1NCByZWxlYXNlMjctbWFpbnQKKzgzNjk2IGJmNjk1MDk2MjZmZjk1NGExY2NiMjEyNDhlNGM2Nzk1NDAzMjI1NjAgcHkzaworODM2OTcgNmU3OTVlYzM4ZTgwMDgyODUwYzJjOWJhMTYxYmRhODdhNmNlNzQ1NiByZWxlYXNlMzEtbWFpbnQKKzgzNjk4IGFmMzllMjU1ZmVhZDA1NmFkMzAxMmJiYzc2ZDQ2MDQ1MzNiNTA3YTUgcHkzaworODM2OTkgZjBlY2E3NGYwMGUxNGIyZGYyMjU4YTk4MjcwNzZlZDRlYTY5MTZjMCBweTNrCis4MzcwMCAxNDg5ZjM5OWFiYTFlNzFlMDZhMWZmNDM2ZDYxYjYzOTI4NDQwMWFkIHJlbGVhc2UyNy1tYWludAorODM3MDEgZjRjOWY2ZjFmZTc2YTYyZTNhNmIwYjc4NzZjNmM2MmMwMjhlODE5MyBweTNrCis4MzcwMiA5MTViMDI4Yjk1NGQ3NWMzYWQ4M2FhOTI2NGUzM2U4ZjNlMmRlYWQ3IHJlbGVhc2UzMS1tYWludAorODM3MDMgNTgzMzQzNTc4NzMyZTJlYjM0ZDgzZWM5NGMwYWJmMDQ4ZmFlZmYzOCByZWxlYXNlMjctbWFpbnQKKzgzNzA0IGIzZmRkNDQ1ZTAzNzlkNzMxNDQ1ZTUyZGNjZjg1N2ZhOWM5MDI2MGQgcmVsZWFzZTI2LW1haW50Cis4MzcwNSA4OTg5M2EwMDIyNzNlZWM1NTllMjM3ZTdhOWY2ZjY4MDM5NTY3NjgzIHB5M2sKKzgzNzA2IGJhNzM1MzE0NzUwNzc3ODZjZjhmY2NhYmRhMTU2YWRkMmEwZjI4Y2IgcmVsZWFzZTMxLW1haW50Cis4MzcwNyA0YzRkOGFkZTlkYmFhMTZjNTMzYTFmNjkyYWQ4MDJkMGI1Y2Q3ZDk3IHB5M2sKKzgzNzA4IGY1OTg0MjNhNDYyMTY5ZjczMTIwMGRkZGQyNjhmNDE4MTQ1YTM5OGIgcHkzaworODM3MDkgZTY4ODYzNTk3MDYxM2Y1MWIyNTY4NzY1Mzg2M2ViMjQxMDQyOTVmMSBweTNrCis4MzcxMCA3NzE5Y2M3ZWNmNDU0NmFhZDJmMDNiOGE3ZjNkZTdkNWQ2MzcxOGZlIHJlbGVhc2UzMS1tYWludAorODM3MTEgZTVmMTI1OGNmYzU4OTVmMTA2OThmMWJlNGYwODM3ZDkwMGNiNWQwMyByZWxlYXNlMjctbWFpbnQKKzgzNzEyIDZjMTJiMTcxNzkyZTI1MGY4ZTc1YmRmNDBmZGVmNDdlN2YxNWM4ZWQgcHkzaworODM3MTMgNTkzMTExMmVhYmU3N2ZkMTA4N2YxZmM2YWQ3M2QzNDNhM2QyYzc5NCBweTNrCis4MzcxNCA3MTZlNjAxNTcwZGExYzUxOWE0OTI0OGY2MzA0MmYzZTQyYjZiMmFiIHB5M2sKKzgzNzE1IDQ4NWMwNTRjOWFhMTY1MTUwY2M0YTBkZjBjZjQyMTIwYzk3MTQzZTMgcHkzaworODM3MTYgNzA0MmZhNTM5ZTdjODE1NGNiYmMwMGRiYmU5NmU1OGQ4MTllZTRmMSByZWxlYXNlMzEtbWFpbnQKKzgzNzE3IGM1YTI4Mjc5N2Q1ZTM1MmVkZDAzMDhiZjFmNDY4NDNiYzVmMGZlYzAgcmVsZWFzZTI3LW1haW50Cis4MzcxOCAwZTQ1MjlkNzMzYWM0MWExY2QzYzMxZjQ4OTRmYmYyNGI1ZDJjOTA5IHJlbGVhc2UyNi1tYWludAorODM3MTkgNTc2Yjc2NTg0NGFmOTJkYTUzMzZjYTE1ZDQ5NzcxZjk4MTNmNTljOSBweTNrCis4MzcyMCBiMzk4NDZiYzdiYTU1NjdlM2Y0YTdiZGUzYTZhNDM3YjgzZGQ2ZWY2IHJlbGVhc2UyNi1tYWludAorODM3MjEgY2IzNGNkNjMwMDAwMjAwYTM5Y2ZkMjZjZDU5NjE4NWY1ZGIxYTA4MiByZWxlYXNlMjYtbWFpbnQKKzgzNzIyIGZkN2Y3M2UxMjU2ODAwYzcwNzE2YmU2NGE5NTgxNDU3M2Y3OGI4NjAgcHkzaworODM3MjMgODMwNDNjMTUyNTY2ODFlNmVhNWNlODVmZDBlNGMzMjY1Njg1ZmFhMCByZWxlYXNlMzEtbWFpbnQKKzgzNzI0IDlkZTU2YzQzMTdjOTQzZTBhOTBhMzFmMDQ0MTI0MTQzMmMwNWJkMTcgcmVsZWFzZTMxLW1haW50Cis4MzcyNSBiNGE1MzMyZDJiY2FjY2E4MjJlZmM2N2YzMTVlOTIzMmE2NGE5ODA2IHJlbGVhc2UyNy1tYWludAorODM3MjYgMmQ4OGNhNjRhOTBiYzFkMThlNzhhYWVkY2ZiYTMwM2FjOTIwNmRlMiBweTNrCis4MzcyNyA4MjgyMjdhMDA1Mzg5OGJhZTQyN2EzMjI1ZDljOTBiZDI4ZTExNzA1IHB5M2sKKzgzNzI4IDM1ZmVlOTIxMWYzYjU4NWM5ZGE1NTkwZjkzYWExOTJmZGNmMzE1OTYgcmVsZWFzZTI3LW1haW50Cis4MzcyOSA4ZjRmNDY4ZmUyOWUwOGFmYzYxYmQ0ZWE2MTk5ODRiMzZkNmE3NmIxIHB5M2sKKzgzNzMwIDljNzA0NmZkNGQ2NjcyMDk3YmMwNTA5ZDQ3ZmQ2YWIzYzhlYjI2NjMgcmVsZWFzZTMxLW1haW50Cis4MzczMSBjYTdlZDk0MWJjYjkzNDQxM2VkYzRjMzQ2OTNhYTYzNDFkMWFkZGRlIHB5M2sKKzgzNzMyIGNhNmQ2ZWQyM2IyMzhiNzk2NzNiMDRiYTRmNDg2NzRjYTEyYTJlNTkgcHkzaworODM3MzMgOTVmZDRmYzI3YjliYjVlY2M5MjQyNWU4ZjIyNTgzZDM0OGVmMzNmMiByZWxlYXNlMzEtbWFpbnQKKzgzNzM0IDU2YWI5ZTExMWMxYzBmNWI3Mzk5YTc2YTEyMWRhNzc4MjgyYjE0YzkgcmVsZWFzZTI3LW1haW50Cis4MzczNSAzNDc0ZGRmMWViZmU0YTM4NDFiM2U5Y2FlMGMzMzc1YTNjNTkyM2Y5IHB5M2sKKzgzNzM2IGVhZmUwN2Q0MGViNzM1OWUwN2IxOTQwZTljOWZjNjhjMzMyZDk5ZmIgcHkzaworODM3MzcgYzE1YWNkMWU5MTZiMzUwNGY0N2IwMDgxZThmMTE0NmU4ZDVkY2NmNSByZWxlYXNlMjctbWFpbnQKKzgzNzM4IGExODVjYWVkZjMyY2ZlZGRiODQxOGQxZjE5MzFkNzMwMWQyZjk5ZmMgcmVsZWFzZTI2LW1haW50Cis4MzczOSAzNWJkNTdkM2QyMzJjZGJkMzYxZDdkNzkxZmE2YTc0NzljYzkwYzYzIHJlbGVhc2UyNy1tYWludAorODM3NDEgODEwMDAxNzkzOWY0OTljN2Y4NTZhMzU3ODdmNDAyMGVjOWZjMjcyMiBweTNrCis4Mzc0MiA2MzM5YTdiMzI0NWNjYzNlZmFmZTY3MjEzNjU5ZmYyZjMxZTgxYTc3IHB5M2sKKzgzNzQzIDY3NjUyYTdmMGFlZTIzNzg3YTJkYTExMWJhYjkyMTJmM2VlZTAwY2UgcmVsZWFzZTI2LW1haW50Cis4Mzc0NCBjMTY4MDNiYmQ3OTBkNzMyYTk5ODVlOTM4OGM4ODMwZjgzYWUxYWM4IHB5M2sKKzgzNzQ1IDcyZjAwNjcwNGZiZGM4MTQ1MmY0NTcyYWUwMzJjZWFhZjE3MjdkY2EgcHkzaworODM3NDYgMzg0ZDIxODlhOTZhOTAxZjY5YTFlNjYwMWJlNGQ0YzNiNDJiZmFiZiByZWxlYXNlMjctbWFpbnQKKzgzNzQ3IDI5MjI2YzA4ZTU0N2Q4ODgwYTQ0Y2UzOGI1NjFmNjZjNjliNmQ2MzkgcHkzaworODM3NDggYTAzNzM5YWY5ZDM4NWViMmI1ZjkyMWE1NzJmODBjZTc5Mjk1NmQ1ZSByZWxlYXNlMzEtbWFpbnQKKzgzNzQ5IGZjYjdlMzU5MjRlNjM0ZmNlYjMxZDJiODI0NmRkNjliODU4NjdmOTEgcmVsZWFzZTI3LW1haW50Cis4Mzc1MCBiYjJhMzE1ZDZhMDM1MDAyZDEzYTk5MjNhNDJiODNmYWYxZmI5MWE5IHB5M2sKKzgzNzUxIGY4MDZmYjNkMWYyNzc2MzliNzU4NWMyOTkzM2NhOWFjMWFmODFiNmMgcHkzaworODM3NTIgODhjZjlhMGVkMTE4MTNmNTk4NjA5YjQ1YWE3ZDFkOWI5NWJjYWI4YiBweTNrCis4Mzc1MyA2YjI4Yjg4ZjZjNGU4ODVmNGM4ZjEyZmFhZGNjNGUzMjIyMGE1ZjMwIHJlbGVhc2UzMS1tYWludAorODM3NTQgYjkwNmU5ZTVmMmE3ZmE5Mzg0MGI1YzZlNTE0NGQyOWUzZTExY2E1NyByZWxlYXNlMjctbWFpbnQKKzgzNzU1IDc2Zjg0MDJjYTdmMzU0MGVmMDMyNGNmZmViOGExZjhkZDcxNWM3OWMgcHkzaworODM3NTYgZmE2MzE0YjE0MWRjNDJkMjdhNzkwNThkYThlZTc0OTdlM2U3MmY5YiByZWxlYXNlMzEtbWFpbnQKKzgzNzU3IDBmOGE0ZmNmZGQxZTU5NGMzZTA0NGE2ZjU5Njc5Y2U2YTM3Y2MwNmIgcmVsZWFzZTI3LW1haW50Cis4Mzc1OCBiMDYyMjJmMTU1ZmY1ZWQ1YjM1YTY3MGU1ODM1YTUyZmZlMzI3YTMxIHB5M2sKKzgzNzU5IGFkMjkyZmNlNzlmOWVjYjM2MmZmMGZiNDNmZmMxZjc4NGU3MTJjNzUgcHkzaworODM3NjAgMmMxMDUxMGExYWVmYzU1NTVkY2NhMTNmMGE5YmNkZDExMDRiZDMzZCByZWxlYXNlMjctbWFpbnQKKzgzNzYxIGJiMjYwOGY3M2ViN2M2ZDM0ODJmOGQ5NGNjZmQzNzZmMDk3YjQwZjkgcmVsZWFzZTMxLW1haW50Cis4Mzc2MiBmN2JkMjhiM2M2ODM5NGQxZDZjOWMwMzk5OGFiMDUwZmU0NDE1ODRhIHB5M2sKKzgzNzYzIDhjZTY5MDk2OTZkNDJmMTc2MjgxOTk4Yzg0ZTEzMDA1ZGE4ZmFjMzMgcHkzaworODM3NjQgZDE0ZTFlNzI0OGJhM2Y2ZmFlYzkwYTBiNjA2ODIwMGI0MGY1MmQyMyByZWxlYXNlMzEtbWFpbnQKKzgzNzY1IDMwNzVhN2U4NWMxODgxNDM2ZWQ1NjgyMDA0NWMwZjg0NmM5YmY2MDYgcmVsZWFzZTI3LW1haW50Cis4Mzc2NiA3Njg2NGFjNWI2N2QwMTI2M2RlZjgxZDI3MGUyMDY0YjAxMjkwYmI2IHJlbGVhc2UzMS1tYWludAorODM3NjcgMDZiYmRkYTEzMmYzNTQ5NThjYWU3NTg4NTA2NjllNzQ3NDU0MzkyYSBweTNrCis4Mzc2OCA0M2U2YmY4NmMzN2YyYzMwNDhkNGU0MDU2YmY1ZDZlYzc5YjI3ZTBmIHB5M2sKKzgzNzY5IDA4YWVkMDBmYmVjMzM5YTBkN2YzYzFmZjU1MTczOWUzNGEwMmUzNDAgcmVsZWFzZTI3LW1haW50Cis4Mzc3MCAyNjBhYmU5Y2VmYWMyOGEyMzhjMmE4OGNmYThlZmQ5ZDU4MGZiMTQwIHB5M2sKKzgzNzcxIDdiY2Y2MjU1ZGUyZmZmM2QyYjk5MWU1ZjcwMzk3OGVhMGE0OWYwZmMgcHkzaworODM3NzIgMzk0ZTQ4YzUxNmM0YTNiMTIzNjZlYjg3N2I5ZDA4OTJhOGM0NDg3MiByZWxlYXNlMzEtbWFpbnQKKzgzNzczIDQwYjQ4Mzc4MzNhOGI1MzJmZjM3NDU4YTdhYTUyMTJlZmQwNmUwMGMgcmVsZWFzZTI3LW1haW50Cis4Mzc3NCA5ZDFjNjVmODMyM2VmYzJkZWYyMjMzZjY1NTkyM2ZjMGUzNzlmNDZiIHB5M2sKKzgzNzc1IDA2MzI3OWM2ZmMxNjBlMGFkMzkzYmUxYzhmNWMwZDIwNWU4YTJjM2EgcHkzaworODM3NzYgYmNjYzg0ZTA0YTJjYWU3MzA5NGE0ZDNjOGIwZmE4MTRlZWY0OTcyMyBweTNrCis4Mzc3NyBlYzMyMTdhOWU1MjE2ZGZiMmVmM2Q3MmUyMGEwNTNlZjEwYTliMzhkIHB5M2sKKzgzNzc4IDc2MDg1MzJmOTMzYTQ2ZWFmNDJlZjA3YjhkNjQwNzVmYzYzYmI3YTAgcHkzaworODM3NzkgMjc1YWNmY2NjY2NiMDhiNTc1OTNmYzU3Y2ViNDQ0MTllNDM4YmYzOSBweTNrCis4Mzc4MCA5YjgwMmI2YjQzOTUwOWQzYWVlYjc1NGIxYjlkODY3ZjBjODQ2NTU2IHB5M2sKKzgzNzgxIGYyN2IyN2M4MmQ4ZmY0OGJiM2FkYzUwNTUyM2ZhMDU1NzllZWViY2IgcmVsZWFzZTMxLW1haW50Cis4Mzc4MiA3MTc1ZDE4MDVjYzBkZjYwYWVjMWM0NjdmOWRlZjM2NDFmODlkODJiIHJlbGVhc2UyNy1tYWludAorODM3ODMgMGVkNjY1ZThhMTE1NDI5YmZjZjVhZDIzZGI2ZDQ2MjUzOGQ3MWFhOCBweTNrCis4Mzc4NCAyODEzNmFmMDBjY2FiNmQ0N2M5Y2ViYjE1ZWViYWUzZjM5MTY1NjQ0IHB5M2sKKzgzNzg1IDRlMzI1ODg5NDg4OWZiZGFhZWYyYzA1YTQ5ZTIxYzM3MzJmYzJlNzcgcHkzaworODM3ODYgYzZkODkyNmM5OWRmNTg1MGI3MzI1NGZjMGJkNzZiYzRlYzRmZjAxNCByZWxlYXNlMzEtbWFpbnQKKzgzNzg3IDg3ZjMzMzAzODAzNWU3OGMxZjkwOWE5NGYyOTBiNmNmNjBmNjJkM2UgcmVsZWFzZTI3LW1haW50Cis4Mzc5MiBjMWQ3ZjdmZTQ3YTA1NzA3MDdlNTY5NjRiMTFlMDY3MTQ0ZjQzMDIzIHB5M2sKKzgzNzkzIGZiMDZmYWIxNmEzZmU2MDViOTJhMzlmZDAyMTJhOWNjZjgwZmY3NmMgcmVsZWFzZTMxLW1haW50Cis4Mzc5NCBhZThjMjVmOTRhZGY0ZDM1MTlkZGU4ZDE4ODE0NzFlMWM2MTI1Yjg0IHJlbGVhc2UyNy1tYWludAorODM3OTUgZDk1ZmJjNGFlZTdjM2I4ZTYxMjIxYTdjOTlmOTkxODExMTcwNGY0MyBweTNrCis4Mzc5NiA5ZDNiYTBkNjY1YTY1MDhjNDE3YjUzNThkNmVkYjNhOGVkZTFjMGMxIHJlbGVhc2UzMS1tYWludAorODM4MDIgMjRiM2RlZDUxODI1NGMzYWY3YjMzNzJjNzI5MTY4YWFhMDM4YmY0ZSBweTNrCis4MzgwNCA0ZWZlZDYyZWFjM2E4NmMxZWRmNjI0NTUxZGUyNmJmMzE1OTg3YmEzIHB5M2sKKzgzODA1IDYwM2MzNTUwOGIzNjNkYzNiYmU1Y2VlNzdmODE2ZWM4MDQwZGQwODAgcmVsZWFzZTMxLW1haW50Cis4MzgwNiA3MDk5ZWMwYmNiZDJjOTkyOGIyNjA4ZGQxNzk5ZmNjN2YyZjc3MmFhIHJlbGVhc2UyNy1tYWludAorODM4MDcgMTU4MzljYTQzZDk2YTM1ZTNmMTg5ZjE1NmE0NjEyNjlhMmI2ZGM1ZiByZWxlYXNlMzEtbWFpbnQKKzgzODA4IGJiZTIyMjNlMzc1MDZhMDRiNTZiODg4ODU0OTRlZWRjNTJjMjNiYTQgcHkzaworODM4MDkgNGJjZDUzNjE3YTY1NmJlZDczNTBhNjgzOGE0YjYxNmM3MDQyYzg2YyBweTNrCis4MzgxMCAyOGZlZjllN2MzYmI3MzJmMWYxNjA5NjhhMGU2ZDUzOTg4MGE5MDUyIHJlbGVhc2UzMS1tYWludAorODM4MTIgOTI0NzM4YWFiNzBmZGQ2OWRlZDE1MGEyOTZiYzk3NjEzMWI4YmVlNSBweTNrLWR0b2EKKzgzODEzIDhjMjEwZTYxY2E3NzU0MTBmNzJmODRkYTEzZTY4YzYxYzY5YjZhNjkgcHkzay1kdG9hCis4MzgxNCBiZmZkMWUyODU0YjNkMzZiMTUzNTg4ODk3NzAwNzNkNzUxMGYxMTE2IHB5M2stZHRvYQorODM4MTUgYTBiZGNkZDBmMDg2NDM3YzgzMWNmYjE4MjQwN2U4NWE0ZTk3ZGE3MiByZWxlYXNlMjctbWFpbnQKKzgzODE2IGU0MWNhNjY3MmY4MjJlMDk2Y2U2ZTY5ODVkZDIwYzM2YzU1MGNjOGEgcHkzaworODM4MTcgZjRkOTJjNmQ0ZDQyYTUzZDA2MGE3M2U4M2FiZjliM2JmZDBmMTgzOCByZWxlYXNlMzEtbWFpbnQKKzgzODE4IGJmMzM1OWI3ZWQyZWQ1YTdiNzliYzI4NDU2YWUzMGJiNDQyNWYzZGUgcHkzaworODM4MTkgZTYxYTA5NGI0ODE4ZDQ1OTMxN2ZlM2M2MjBiNWNlZGVhZjUyZTlmNyByZWxlYXNlMzEtbWFpbnQKKzgzODIwIDRiMjRiN2E0MjBjOTI3ZmU1MmFmMDJkMzRhYzAwNDlkZTE3NDEyN2QgcmVsZWFzZTI3LW1haW50Cis4MzgyMSAwMTc4NzU2M2UyY2IzNDRmZTkzNDE3M2E0MDdiZTVjOWIyMjc2ZmI0IHB5M2stZHRvYQorODM4MjIgMDM3MGMxMWZkMjFkZjNkNGE5NDRmNzBhYmRmZjMyZGIwMzQ2MjVkZSBweTNrCis4MzgyMyBiNmZlYjY3YTA1ZjFmMTZmYWI3YjNlNTFmYjZjNzVjZTRhZjJkN2JhIHJlbGVhc2UzMS1tYWludAorODM4MjQgZTE2NTYwNTg1ZTM1YzZiMzY0ZTMzZmU2MDMxNGYxMDk5NGI5OTVkMCByZWxlYXNlMjctbWFpbnQKKzgzODI1IDVlYTcwN2QyY2FhODhlOWZmMzFiNjUzNGUxZmZlZTgwYmQ4MmFmNjkgaW1wb3J0X3VuaWNvZGUKKzgzODI2IGJlMTU5ZjNkYjVkNmFlMGRlMzE2MmRiZDI1MGQ3YjY0MjZhZjFiMjggaW1wb3J0X3VuaWNvZGUKKzgzODI4IDEwODZkYWQ1MGM3NDgwOTIwZDgzMGUxZWM1ODU3NmY3NWYzN2E0NTkgcHkzaworODM4MjkgNmIyMTg5ZDhlOGM0NGQyZjQyMjBiYTFjYmNmNTZkY2NlYzYxN2Y5NiBweTNrCis4MzgzMCBiNGY1NDYzOWI3YjE5NWNmOWI3ODA1MTk4N2FiZGIyYmZiYjQ0MTdkIHB5M2sKKzgzODMxIDk4M2YxMTBhMjI0ZTJhNDVlYjU5ODNmOWY3NWYwZGUzOGVmZGViYjEgcmVsZWFzZTMxLW1haW50Cis4MzgzMiBjYzVhMjQ2YjJkYTFiYjgyZThmMTdmNDQ2OGQ2ODEzZGI0OTEwZWIyIHJlbGVhc2UyNy1tYWludAorODM4MzMgNzVlYmU2Y2M4MDgzMzUxYTU1ZmIxZTc2OTNjZmIyZmQ3NTRkOTMzOCBweTNrCis4MzgzNCBjNTJmNWRmNTA0NDg4OTc1ZDlhZDlhMmE5MzBlNjE4NmFjZTQ1M2M2IHB5M2sKKzgzODM1IDg2ODNhZWE0YjcyZWY4ZGM3OTkxYWIzZDhmODQxNTcwODFmZGNjNzkgcHkzaworODM4MzYgZTEzZWE4M2UyZWRiM2RlMjJlNzJkZTUzNzRlMjc2MWVhZmE0NWJjNyByZWxlYXNlMjctbWFpbnQKKzgzODM3IDQwZDExYjgxMzlkYTUwYjA0N2ZlYjJmNWY4MTkwYTk1NjJmNGZkNWYgcHkzaworODM4MzggNTE1ZTBkNzA1NTQzZmU1NzU5N2U3YTI5NDQwZTZlNjlkZTE5OWFmOSBweTNrCis4MzgzOSAwOGUwNWQ0MjRkOTdhNjI5MzAzOGRkNWVhM2ZkODBjYzU0MDAwZDhlIHB5M2sKKzgzODQwIDYwYWM0MWFlN2YzMTIwZDA1NmNkNjBkOWJiMTQ5M2Q0NDM2YjUxNDAgcmVsZWFzZTI3LW1haW50Cis4Mzg0MSBiOWQxOTgwMjE3NDU4OTQyODc2ZTI3NzFlNGZjZmZkMDgzZDI2MjVjIHB5M2sKKzgzODQyIGRmMjU4OTE1ZjUyZmNiNGFhZjM2Y2YwYjU5NmQ3ZDkxNzE5OGY4N2QgcmVsZWFzZTMxLW1haW50Cis4Mzg0MyA1ZTdmMTVmMmMwYmU2Y2NlYjFmMzlhYTM0NWEyYmY4MDYxNGRkOWJjIHJlbGVhc2UyNy1tYWludAorODM4NDUgOGIzNzk2Y2MzMDllOGY5ODA1OWViMmNiNDZmZThjYzY5YmFiNmE4NyBweTNrCis4Mzg0NiBjYzBlZTZiYjVlOWI4NzFlZGZkMTkyOGIwNWE3NzE5ODQ2NDRkNjYwIHB5M2sKKzgzODQ3IGZlZmZjMWEyNTk5YzczZTc1OWMwZTg1MTE2NDU3NDEwOTJiZDRiNGMgcmVsZWFzZTI3LW1haW50Cis4Mzg0OCA3NmJhNDFiNzdmNTM4OTM5NTI4NDlmNzEzNjFlOWQ2YTMyODJjN2M5IHJlbGVhc2UyNy1tYWludAorODM4NDkgNDQ2MTlhNTY2YjZiNjM2MTNmOWJhOWYwYzBkMjAwYjgxZjdhYTA4OCByZWxlYXNlMzEtbWFpbnQKKzgzODUwIGZhODYyMjI2NTYwOTEyMDcxZjY1N2MzZDYyYjc3NGQ5YTk4YTU2NzUgcmVsZWFzZTMxLW1haW50Cis4Mzg1MSA1N2U2MzFmMDg4ZDczNjA1NDMyODQ3YjNhNDRmOTEzMTg4NWYwYjU0IHB5M2sKKzgzODU0IDRjYTQ5N2Y0ODE5Y2ZkYWQ4MjY3MDFiYmE2N2QxZTNlNTFhYzJlN2YgcHkzaworODM4NTUgNzdjNmY2MGExYjI0MGI1MDlkZGNjYjRhMjllMGNhMzZlZTVmZDdmNyByZWxlYXNlMzEtbWFpbnQKKzgzODU2IDU1YzcwZTc5YzY4ODg2N2MxMWQ3Mjg4Y2YwNDQwMmFkNjIzNjU5ZTggcmVsZWFzZTI3LW1haW50Cis4Mzg1OCA1NTM5NzUzM2RhNTE4YTAzYmI0M2M4YTNiMmQ1MzdmMTAyODI4ZjQ0IHJlbGVhc2UyNy1tYWludAorODM4NTkgZWI1YWE5MWYwZTE2ZjZkZGIxNDc0OTkzN2U0MjhiZTdmNjNlZGZlMyBweTNrCis4Mzg2MCA3ZDQ0MjVlMzA4ZjdiODUyNjZlYmIyMDNhOGY0NjIzNmU0ZDU4ZmFkIHB5M2sKKzgzODYxIDFiZDM1MzQxMzZhMDM2NDM1NzNlYTliZDQ0N2Q1YTY5ODU0ODVmNzggcHkzaworODM4NjIgMWFkNTkyMmFlYzQ1M2U0NzAzMTdmMWYwYWYxYTc0MDI3NzlkY2YwZCBweTNrCis4Mzg2MyBkMjI4MDY4MThmZTNhNTNkYjQwM2UyYjIyMTQyZmQ2MTRlZmRjYTZmIHB5M2sKKzgzODY0IGVhM2EyZDFiZGVkMmEwNWI1ZGQwNzMzNWRkZjFiY2QzZmFkM2ZjMjAgcHkzaworODM4NjUgOGQ2YjRmZmMwNTEyYWE0NzE3MThhYzVjMjY5YzU1Mjc1OGU2MGI2ZiBpbXBvcnRfdW5pY29kZQorODM4NjYgMDIxMzUxNTk1ZmFjMzZiMjE3ZmQyMmFlMTY4OWQ2MjcxNWE2ZjhlZiBpbXBvcnRfdW5pY29kZQorODM4NjcgMGRhM2I1OWMzZDM4MDYxN2NiNWI2YmY1NDg1NWFmOTMwZmRkOWMxMiBpbXBvcnRfdW5pY29kZQorODM4NjggZjgxMmI3OTY0MTE5OWEwZTk2ZDkwZWU3ZmY5YzljZjQ5MzM0YjkxYSBpbXBvcnRfdW5pY29kZQorODM4NjkgM2Y4Y2VmODM3ZjA3M2MyYmMzNzc5NzA1MWIyYTVmZGI5NmVmMTRjZCBweTNrCis4Mzg3MCAxMGM5NWMwZjM0ZDM1NWJlOWY1ZDY5N2U5ODc0NTM5YjJjOGM2ZWZkIHB5M2sKKzgzODcxIDUyMzU0Y2IyOTY0NDkyNmExOTU5ZGQyYTJiNDI0MTQ5YWQyOGJiY2YgcHkzaworODM4NzIgOWM0NDViYWQzNWIwODZkMDQxNzMxMzBhNWY5ODRjNWI4MzQ4NWNmNyBweTNrCis4Mzg3MyA3ZjVlMTE1ZDc2ZGZhZDNmNjQ4ODUzY2QyZjE3YWVmYzJhZjRkYjg2IHJlbGVhc2UyNy1tYWludAorODM4NzQgYTEzYmRiMmI4Mzk4ZmJmMTkxZDMyMTJjYzIyMWQ5ODk3YzE5OTRiYyBweTNrCis4Mzg3NSA4Y2UxZGYzNTI4Yjc2ZmNiMmFlZTJiNzBlZTcwZTlhYTllMjk0NDhjIHB5M2sKKzgzODc2IGM3OTk1ZTliYzJlMzZkOWYxYTIxNjcxNTAyYzU3MGNmZmU3M2JkYWEgcHkzaworODM4NzcgOGI5M2NmMzNiOTg3Yzg3NzlkZWNmNTgwMWJhMTVjNTFhZWE5Nzg2ZCBweTNrCis4Mzg3OCA2ODhlZGJiYmU2NTgxNzVlNmI4ZmUzODA1N2U3ZmE3YzYwYmYxOThmIHB5M2sKKzgzODc5IDVlM2M2MWNiNzAxNDFkMzYzMGQzZWUwYmQyMjZkZDgyZjMwZDIwODMgcmVsZWFzZTI3LW1haW50Cis4Mzg4MCA5NDY4ZDEzMDQyODQyNWQyNjUyMTkwODJjNGZlOWVkZmE2ZTkyMDFhIHB5M2sKKzgzODgxIDNhZTk1ZjIwNzYwNjM0NGY0MjNiNTVlZmIyOGI1ODgyN2Y2MWFlYzQgcmVsZWFzZTMxLW1haW50Cis4Mzg4MiA3YjdlYmY1NTg4OTQ4NTQ3MzhjNDE4MzRkMTM0ZTVkMjlkYWY4NzdhIHB5M2sKKzgzODgzIDAwMTUyOWQ2NDdmZTQ5ZGFhZDE0MDFmZjMyMzU1M2ZkNWU4YmQ2NTIgcmVsZWFzZTMxLW1haW50Cis4Mzg4NSAzYTRiZTlkMjVhNWY4MzA2MGNkMjdkODFlOTY3ZGUyNzI4YTI4MDY4IHB5M2sKKzgzODg2IDVhZTM5MGFjNmM2MWQ4YWU5YTZkOTdhNDQ3MGQ4NWE3OTU4NzUzMDMgcHkzaworODM4ODcgNWMwZDVkZTU2ZmRmOWFhYmU4OTUwMTdkODVmZWU2MDFmZTFlNzkyOSBweTNrCis4Mzg4OCBkZTA4MDk3NzJkN2U3MDNlMGQwOTExODY2OWE0MWYxOTFmYzYzZmNlIHB5M2sKKzgzODg5IDhiYTA5Y2RiNmZjNDhiMmFkZjBlYzZiYzc2YzE4MjFlODkzYThjZjcgcHkzaworODM4OTAgNzk1ZWIxMjQwM2I5NDQyMGRiNDg4YzQwMzhmNmRkZWVkMmE0MjY2YSBweTNrCis4Mzg5MSBkZmJiZTdiMzBlOTAxYjM2ZmE0NTE4NDg5YjM5NzY5NzI3YTE2YjhkIHB5M2sKKzgzODkyIGUxNjA3OWM2YTQ4ZjU4M2NkMzY4ZDhmNGYwODA2ZmZjZjc4MTZlZDggcHkzaworODM4OTMgZjE2MjdjZmNjODkwNTBiNmY3NTM2OWE5ZjQzMWQ1NjNkOWRlZGEwYyByZWxlYXNlMjctbWFpbnQKKzgzODk0IGMzOGYzYjk2OWI0YWU1MDQ0NGNkYjViNjZjNzBiZmIzN2U5NzMzNjcgcHkzaworODM4OTUgN2RjMzdhZTE3NWZjZDU3MDdlNzRlNjBhNTFlMDY0Y2ZmOTc0OWQyYyBweTNrCis4Mzg5NyA2ZmIwMzEwMzdmMjliNTBiYjk0ZDE3MDIzMDljZmE3MjMyYjlhYTY2IHB5M2stZHRvYQorODM4OTggMzU1ZDcyNzM3MzY0ZmJkZDg1OTllOGYzMzczYTQ4OGNmNTI3M2JmYyBweTNrLWR0b2EKKzgzOTAwIDcyZDA1MDRlNjQ4OTYwNDI0ZmIyY2I1MWRjYjhkZmI3OTFiZDRiYjggcHkzaworODM5MDEgYzg5YWQ2ZjljZGRjMTgyMjNjZTRjNzE1ODRjZWNhNDkxOTlkMTI5ZSBweTNrCis4MzkwMiA5NTExN2FhYjlhODZkZjcyZDJmMTliYzFkMWZhODY3ZDU0N2EwZmEzIHJlbGVhc2UyNy1tYWludAorODM5MDMgNTAzODhhODNlYzNmN2UwYjJjOTQ2YmMyYjJlNDRmOGM5ODRjYWJiYyByZWxlYXNlMzEtbWFpbnQKKzgzOTA0IDUwZjhmNTI0N2M4MTBhZWI4MDE4ZTRjYTM3YTQ0ZTA1YjY3OTI2YzkgcmVsZWFzZTMxLW1haW50Cis4MzkwNSAwYWU3MDZhNzFhM2E1MGRjMWQxNWI5NWQwZTk1NTRiZDAyMjE3Yjg2IHJlbGVhc2UyNy1tYWludAorODM5MDYgYTU2ZDhhODBiODgzOWU1NTk3ZGZkMzA1YTc2NDIxYTYzODliMzExOSByZWxlYXNlMjctbWFpbnQKKzgzOTA3IDQ2ZDQ4ZDcxNTQ0MmZjYmI4MDJlZWQzOTc1NmZkMzIwOTI5ZmI4MmMgcmVsZWFzZTI3LW1haW50Cis4MzkwOCA2MDA3NmYyOGMwMjNhYzZlYWEyODg1ODIzOWQ4YmY3ZTljYmYzNjBkIHB5M2sKKzgzOTA5IGMyZTFkYjMwZjc1NjJmYWNlNTBkYTFhNTQ4ZGY3ZDU2ZGIwZjcwNGMgcmVsZWFzZTI3LW1haW50Cis4MzkxMCAzMGNjMjdlYjM1NGFjZjUxYzQ2YmRlMmYyNzEwNTE0Y2U2YjhmMWNiIGJidGVzdAorODM5MTEgOTg1MzY1OGE4MzU1YmJmYjhlNDM4ODMyNTViMTIwMTIyMDRlNzk4NCBiYnRlc3QKKzgzOTEzIDI5YWY5YWJjNzZjYWRhMTUzZmFjNzE4NjJmOTAzNGFmMmI0ODUxYWEgcmVsZWFzZTI2LW1haW50Cis4MzkxNCBiMTg5MmI3ZjE5NjZmNGVjOGI5MzA3ZmZjNDk5MTBlNTEzZjE2ZjFkIHJlbGVhc2UyNi1tYWludAorODM5MTUgNGM1MjNlMWVmMTBmMmI3MjFmNjA3NGMyYmZjNjEzNDEyY2QzZWY4MyByZWxlYXNlMjYtbWFpbnQKKzgzOTE2IGMzOTEyYWFjMWI3M2Y2MGY5YjZjZTk3N2JjMGU5ZGRmMjZmOTdmOGQgcmVsZWFzZTI3LW1haW50Cis4MzkxNyA2Y2QyOTJjOWMyOTYwZTgwOTc1MmM1ODAxMWI5YWM0YzYzNWE1ZmMxIHJlbGVhc2UyNy1tYWludAorODM5MTggMzcxNTY5MDdmMzU5Y2I5ZGE1YTg5YTJjOWFlZTY2ODg1MDAzYjE0NCBweTNrCis4MzkxOSAxMDliZGU1ZTQxYjk0NGVmM2FkZTk4YWM2MTQ4ZjZiYzI2ZTRhNThjIHJlbGVhc2UzMS1tYWludAorODM5MjAgYjY1ZGNlNTkwMmEyODQ3YmZjNTM5YTc1ZDQ0MmZkYzQ5ZGY2MGFhYiByZWxlYXNlMjctbWFpbnQKKzgzOTIxIGZmOTYxNGVkZjNhMDU0NmZjNmYxNWI5ZjJjMDU1ODBmZTZiNDM2MjkgcHkzaworODM5MjIgMTRmYjY3ZTdmYTA0NjhjMTA3YjZkMTE4NWQ4NDMwMTM5N2ZiM2MyOCByZWxlYXNlMzEtbWFpbnQKKzgzOTIzIGZhNDg1ZGNlYTYxM2U5MTVhMzllMTQ5MTU4MjRiYmMzMWVmYzMyNTYgcmVsZWFzZTI3LW1haW50Cis4MzkyNCBiY2VhMzVhMmQyZDJiZDk1ZTEwNWQ4ZThiMTJjMWQ1MDQyMWRhMjc0IHJlbGVhc2UyNy1tYWludAorODM5MjUgMTlhZjA4Mjg3Y2M3OTI5M2YxNjE0OTU1OWI4NTE5ODdjYjk0YjFkMCByZWxlYXNlMjctbWFpbnQKKzgzOTI2IGFkNmM4ZTIyODcxMmU0Yzk0MWM5ZmE4Y2E1MjFlZDg0NDUyNjRlNmYgcmVsZWFzZTMxLW1haW50Cis4MzkyNyBjMmRiMjdhYTZiZjI1MDBiYWNiYmM4ZjUzOWM1ZTQwMGYzYzAzNjljIHB5M2sKKzgzOTI4IDEzMjJlZjNjNGE2YzgyOTJlODBkOTlhY2VhZWQ0YTQ2ZGNkYTZhNzcgcmVsZWFzZTI3LW1haW50Cis4MzkyOSBkZWExZDI2OGUzNGVkNjdmMTMyY2Q5YjA1ODFkMWQyYTZiNWJhMzU2IHJlbGVhc2UzMS1tYWludAorODM5MzAgOWUwMDNhMjYyMDkzM2M5ODZiYjVmMTM4MGExYTc4Yjc1MTliZjVmYiByZWxlYXNlMjctbWFpbnQKKzgzOTMxIDRmNzZjZTY5YWVkMGRjMjc0NDRiZDM0NWI5ODA3MTM5NWUzMmI2MWMgcmVsZWFzZTI3LW1haW50Cis4MzkzMiAzOTA5MmY4NmIwYWYzMmRlYTVjMGIwOTUwYjFiYTAyY2VlMzkxMzNlIHB5M2sKKzgzOTMzIGEzODUzYmZhMjUxODE2ZGQ1NzFlNGI2YzVkOGJlMjc4YzE1NWQwNzYgcHkzaworODM5MzQgM2Q2YTAyZjBhMmQ4YTdhZTM3NzdjMDVlYjk4ZTZiMTE0ZDUzNjIwOSBpbXBvcnRfdW5pY29kZQorODM5MzUgN2U1MjVlMTI1YjcxNWUzOWExNjZmM2FiZTdhYWU5YTdkMzRjYjM5MCBpbXBvcnRfdW5pY29kZQorODM5MzYgN2RkNWY1Y2ZhMTc5NDY3Njc5MzU0YjJiNDAwNTc0NDI5MjdjMDk3MSBweTNrCis4MzkzNyAwYTFhZDliMTE0OTYyMjU1ZDIzMDUwZTkwNDEyMmRkZDYzMTY3OTRkIHB5M2sKKzgzOTM4IDJjYjU4MTc0YWE3ZGEwNzJjNTlkNTUzMWI0ZTZjMDliZTU2NGUzYmYgcmVsZWFzZTMxLW1haW50Cis4MzkzOSAyOWUyMGJkYjJiMTFhYjBjZTE0NjczNjY5ZjJhM2JkNWQyMjYxZGY1IHB5M2sKKzgzOTQwIDQwNTU2YWU0MjRiNzM3OWY0ZTRhNjEyZjJjOWRjMjdkOGU5MTgwMDQgcmVsZWFzZTI2LW1haW50Cis4Mzk0MyA2ODk2OWI5ZGMzYjA2MDA1NmNkZGE2ZGJmMDUyOGQzNWYyYzMyOTlkIHB5M2sKKzgzOTQ0IDczNjQ5NDA2NzJmMDA0NDcxM2VlYTQ4YWMzZmM0NzMxN2VhNzExZjkgcHkzaworODM5NDUgOTMwYjI4MDNjNzE2NmIyMjNjZTE3MGZhZWY0YzQ4MWFhNmNjZDY4ZSByZWxlYXNlMzEtbWFpbnQKKzgzOTQ2IGMzZmY2ZTkxMDA2OGIyZmU4NzdkNTBkZTVjOGQwZmJhZWY3Zjg5MDYgcmVsZWFzZTI3LW1haW50Cis4Mzk0NyA1NjA2NmE1ODI1Y2EyMGJjZDUyNzRjNGFkNjliODVlNDAxOTI3NWZjIHB5M2sKKzgzOTQ4IDc2ZDQ2M2M5OTAwNjM5NmRjNDE1MTIzMzgxYTFlYjI4ZjNlYTM2NGEgcHkzaworODM5NDkgOTEwOGU3ZGNkN2Q4MDVlN2JjZDA4ZGIxZGQ2YzYxNWEwNmE3NzZjMCBweTNrCis4Mzk1MCBhMWRlNDYzOTU2NGU1YWYxZDllMmY3NDJkY2JkODU5YzBkNDM4MWMwIHJlbGVhc2UyNy1tYWludAorODM5NTEgZjIyZTk1MDU1MWFkMmI4OWMwNDhjNDVkODBiYTViYjA3YmRmNTgyNiBweTNrCis4Mzk1MiAzZmE4ZjQxYTExMDNjOThjYWYyNjk0YmNhN2VlYTYyMTEwY2M2ZjMxIHJlbGVhc2UzMS1tYWludAorODM5NTMgZDFiMDM1ZTI0MzcyYmUwMTdkZmRkNGRkMjRkMGIxMzZkNDc0OTY1ZiByZWxlYXNlMzEtbWFpbnQKKzgzOTU0IDNkYmJjZDM0ZDQ5NGUyNThiMGM5ZmU1NDBkYjViZjI5OTA1ZTNlYzggcmVsZWFzZTI3LW1haW50Cis4Mzk1NiA4NDk5YWU1ZDk3MTk2YTcyYTViODc0YjNjYmY5MGE4M2RhNGU3MzU5IHJlbGVhc2UzMS1tYWludAorODM5NTcgYWIyZDk0OTMxYjBjMTA1ZmE1M2M2MDIzOWZjYjM5YjgxZGVkNDNjYiByZWxlYXNlMjctbWFpbnQKKzgzOTU4IDU5ZGIzNjNmYTU5NDVjMTc5MDc4NTRiZmQwMDIyY2Q2NGM3YmExODcgcmVsZWFzZTI3LW1haW50Cis4Mzk1OSBmZDQ2MDZlZmM3MDBhYmIyNTc4ZGJmODg2MDIwMTVmZTk5MjVhZmM4IHB5M2sKKzgzOTYwIGY3ZDhhYTEwYzNlZmE3NjhhNzVjMTYwYTA0ODFiYjZmNDRiMGY5OTIgcHkzaworODM5NjEgZWQ2NmIyNDE3MWFmMTJlOGI3NTY1YmY5ZTllMGM1ZjRhZjlhYWE4NyByZWxlYXNlMjctbWFpbnQKKzgzOTYyIDY4YzQ4ZjhhYTU1NTM4MjM0ZmQ1YmE2Y2UzMmJmZTkyNzkzMmYyZGYgcmVsZWFzZTMxLW1haW50Cis4Mzk2NCA1MzQzZjU3MTRmZWVjNTFhZDNjZmUxYTdhNWE2ODQwZTIwYzYyMjc1IHJlbGVhc2UyNi1tYWludAorODM5NjUgYmU4M2QyOTNhMWU5YWY5ZTY3Yzg3MDUyZjJkOWNlOGEwMTFhYmRlYyByZWxlYXNlMjYtbWFpbnQKKzgzOTY2IDAwNTcyMWU1MGUwYmExNGZiMzhiYjI1MDVmMTgxMTE0MTAxZmUyZWEgcHkzaworODM5NjcgNjRiNWM2ZjI5NjAxY2Q4OWU0ZmNkZmE3NzIyODI1MmNkOTZiYTRjMSByZWxlYXNlMjYtbWFpbnQKKzgzOTY4IGNiNDYxYTkxNDRkYjAzNTQzYzY1NTJlZGQwMDNlMmFmOGRjMzRkNjMgcmVsZWFzZTMxLW1haW50Cis4Mzk2OSBkMmI3MjExODViZmEyY2QxMjc0NDQ4ZjJhYjY5NjBlNjJiOTFmYmViIHJlbGVhc2UyNi1tYWludAorODM5NzAgNGE1YWQ5MThmN2FmNDU0NGI5MWYxODczZWRiZjM0YmQxZGMwMDMyMCByZWxlYXNlMjYtbWFpbnQKKzgzOTcxIDg3YjJkYTg0MDI1MmU3YWJhZmM4ZjkyNzYxMWU5ZDZmY2Y1YmI2ZmEgcHkzaworODM5NzIgMDNlODg0ZmFjNGRiYTI1MjkwYjc4YmU2MDQ0NWZmODE0YWRiODQyMyBweTNrCis4Mzk3MyAyZGQ5NjRkYWQxNjg1NGYyNzE1ZWU4NzkxM2YyNTRiZjg3ZGEzODlhIHB5M2sKKzgzOTc0IGE0NDljZTFmMzg1YjczNDUwNmNmMDMyNzk3NWExMjI5NzQ0Yzc0N2YgcHkzaworODM5NzUgYWE4OWNiYjdiYzIxOWJlYTExOGMxNDU0YTVkYWQxYWY5MTNiYzU1MCBweTNrCis4Mzk3NiBmYTJkOTcyMGE2NmNiMTBmNjExMDQxNzE5MTMyMDdkNGRkZmFlYjk0IHB5M2sKKzgzOTc3IGQ2ZjhlODZhMWJlYzIyYzNhZmNiNTM0OGQ3NTM1MTMyMTkyY2FiMTIgcHkzaworODM5NzggNzU1NWIwMDM1YTc3NzQxMWQ4NGQxOTZjOGQyZDE1NmRkOGIwZDZmYSBweTNrCis4Mzk3OSAyN2I1NTNjZGQ4NWI2NDZhYjlkNGNjYjhiNGIxOTdkOTljMTZlMjBjIHB5M2sKKzgzOTgwIGYxZDkyMmQ4MjBjYWFjYWFiNGQ2NzhiZjg2YWQ4YjQwZDNlZTNkZGEgcHkzaworODM5ODEgOTEzYWE4YTQzMDRjNTc0YjJlZDIyMmNiYzNiYzY1NzQ5MzUxMjhjNyBweTNrCis4Mzk4MiAzYTgwZTY3YTBkMzcyNWE4YmU3ZDFjZDNlZWViM2E4NTA2NmI1ZDUzIHB5M2sKKzgzOTgzIGFhOWM4ZTgyYzQzNTc2YmYxNzVmN2FiYWJhN2ExMzQwY2FkN2Q2ZGEgcHkzaworODM5ODQgZDRiNjcwYWE2ZDZiODNkYzY3M2VkYzlhN2Y5MmU0MjQ5NjI1OGMwNiByZWxlYXNlMzEtbWFpbnQKKzgzOTg1IDA2ODI5MWQ0NGZkN2Y4YTFhNWMwZTU0YzViMGMzOGJhMDk1NTc0MzkgcmVsZWFzZTI3LW1haW50Cis4Mzk4NiBlNTRiYWViYmQ2ZmYwMTA0Mzc1MmNiZGRlNTI0ZjdmNDVlMTU3MGJiIHB5M2sKKzgzOTg3IDI5MWM5YWZhYjEyY2UwNWQ4ZGIyYzVmZTdjZTJjOTk1MWZiOGZmYmYgcHkzaworODM5ODggNDc0MmU3YWVhMmY1OWNjZjYyZDgwOTgxYmRlMjU3OTE0MmQzODVjNSBweTNrCis4Mzk4OSA3YmU1OTE2MzMzZGZkYTZmMDc3ZDliMzM0MmQ1YzMxM2U4ZmJiMWQ4IHB5M2sKKzgzOTkwIDUwYzBkYmFlYWEwNDgwMTE2OTdmMzdkZGQ3NGE4YTliNDIxMGE2YjkgcHkzaworODM5OTEgYWI2OTQ2OTcyYjdmZGJiZDQ4ZmY5ZGIwMGUwYzRlMzZhMmZiMDY2MyBweTNrCis4Mzk5MiBkODY4NmM2ZTZiNWViZDZkMzIyZTA0NWYwNzQ1ZThmY2E1OWM4NGU5IHJlbGVhc2UyNi1tYWludAorODM5OTMgM2FmNTk3ZjEyMzJhZjY4YTE1ZDA5YzUzYjBhYjI0M2FmYTYyNWNiYyBweTNrCis4Mzk5NCBkNTRkYTkyNDhlZDlmZmFmNjVmNjUxY2E3MTk4OGNkY2IxMzBjZDgyIHJlbGVhc2UzMS1tYWludAorODM5OTUgNzA2MzRjM2UwMzEwN2ExZGRhZjMyNjFkZGU5MWQyMWU0YzA5OTNkYyByZWxlYXNlMzEtbWFpbnQKKzgzOTk2IGY3NjM5ZGNkZmZjMzZkYmE0ZGIyMTE4YTA0Y2I4YmZmMzEwNWFhMDggcmVsZWFzZTI3LW1haW50Cis4Mzk5NyA5NDIzMmEwYzQ1YWUzNDg2NWUwZTliZWNiNGRjYzE2YTc0YjUxODJlIHJlbGVhc2UyNy1tYWludAorODM5OTggY2JhMmE5NjExMTcwMTQ3NzI4MDUxYzY4MTRkZWM1MjhlMzA0MTlmZCBweTNrCis4Mzk5OSAxYjU1YjcxYzdjMjEwZWFhNGVjNTdmMWZlY2JlOTExOWFhMTk4ZDAwIHB5M2sKKzg0MDAwIGY4YjRlYmU5YzQxYjlkOWQ2ZTg3M2NmMzYxNTlmOGIyOTAxNzQ2NzEgcHkzaworODQwMDEgMzhkMmI2NGFiN2MxNWZiNzViZjc4YmYzNzQ3N2IwY2JmODA3ODc4ZSBweTNrCis4NDAwMiBkNDYwMGVlNWU4MmYwZTk3MTY0ZTMwN2Q3OTU3ZjYzZTg4NmQzMjIzIHJlbGVhc2UzMS1tYWludAorODQwMDMgNDk0YTFiOTU0NTY5NmI1YjcyNmQxZTE2ZjU4ZmMzN2YyZGQyZThhNSByZWxlYXNlMjctbWFpbnQKKzg0MDA0IDk3MTI0OWM3NGU4MDVkOGI3NmZkNzg3OWNlNzczMDVhMzg2MmJlOGQgcmVsZWFzZTI3LW1haW50Cis4NDAwNSA5ODE1NTVlOTk4NmUzMjk0YzQyMTQ2ZTUyMzlhYjk2MGZlN2M3YWU1IHB5M2sKKzg0MDA2IGFlZDRkN2YxMjgyMWQ3MTFhMGMwYzUyYTM4ZDk1YjY5NjExNzVjNDYgcHkzaworODQwMDcgMDYzYzk5ZDgwMzJjNTE4NzUyMzNiYzk4NWViMDg1ZTllOTRjYjhjNiBweTNrCis4NDAwOCA3OTRlYjQwYmVmM2E2NTU0YTg5OWMwNjc1YzllOWY1ZmRlZWU4MWMzIHB5M2sKKzg0MDA5IDJkN2JiYTFjZjNiYzU3NTI5MjNjYWI0MDYwNGUwNjM4ZDQ4ZmVhM2EgcHkzaworODQwMTAgMjkzZTMzMmI4YjRiMDVhNjk3MjJjZTk2MzdjNTkzODczZWQ4Mzk5MyByZWxlYXNlMzEtbWFpbnQKKzg0MDExIDg1YWRmZTU3ODc3YjFjOTU1OTUwOGRmOGRiMmZkMjZkYmIxMTA1NTMgcHkzaworODQwMTIgOTUzMDEwYzBiMTY4N2ZmOWY0NjU5MTZlOGZlZjdmYmRhZWNkOGU0ZSBweTNrCis4NDAxMyBhNjU5MmZjZjc1ZTc3ZWY0NGE2OTZjODRjM2NmYzM2NjY4MmYwZmY4IHB5M2sKKzg0MDE0IGUwMTM4NTA4NjBmYWYxMzViNzc5MWUyMTllNWI4ZjE2YTE2YjhhMjAgcmVsZWFzZTI3LW1haW50Cis4NDAxNSAyYjBkZjllMWY2OWVjOWU2MTQ1Y2EyYjAyY2M4ZWYwZTEwNjliMjE3IHB5M2sKKzg0MDE2IGYxZDE4ZjRkNjE2M2I1OWFmMzJhZmNiMjRkOTZhYjA0NjQzNjFjYjYgcHkzaworODQwMTcgOTRiMjkwYWJiYWZiYWE1M2I0OGExMTk3ZDM0YzMwMTI4MTY2NmE3MiBweTNrCis4NDAxOCBhNGZkMzdhMWJmMzc0MzVkOGY1MDFhNDk3Yzg5OWE5NDlkZWYzYjQ0IHB5M2sKKzg0MDE5IDEyZmU0Yzg4ZjllNjY3NGRhYmFmODA0ZDlkZTJlYzhjOWRmNDIzN2IgcHkzaworODQwMjAgMjc3MTFiMGNkMWYwM2I1NGEzYjc1ZmFhY2I3MjQwZGQ4MjkyMTBjZiBweTNrCis4NDAyMSAyODU0NGQ2NjhlZDBkZmI0NjU3ZjQxM2E4MTM3N2MzYzkzMjZmZWJhIHB5M2sKKzg0MDIyIGVmNzU5NTUxMzhkMjI3NTllNmUzMzc1YmI1ZmMzZjEwMjIwYzE4MzUgcHkzaworODQwMjMgMGFhYzQwYzc3NDQ0MzQyODEzZmIyMGViNDIxZWU1M2MwNzlmODJmOSBweTNrCis4NDAyNCBiN2FiNzdmZDI3YjcwNzMwMzAxMDU0NGEzYzVlM2MzMzNmMGNhYzQ4IHB5M2sKKzg0MDI1IDJjNmQxM2M0MDUxOGJlYTIzNmMxN2NkMzVkMmZmZDkxNzJiOTNjZGUgcHkzaworODQwMjYgYjcyMjBlNDI5YWJiNDc0ODAxMTE0MTZhYjIxODgyMzg1Y2JjYzAwMiBweTNrCis4NDAyNyA5YmQwODI3MDE3NzY3MzY1YjY1NmEwNGY4ZjRjODMzYjAwZTVlOTJmIHJlbGVhc2UzMS1tYWludAorODQwMjggNDViMjRhZGZkMDY0OWYwODhiNzIxYWMxMDIwMjAzMTgzNGRlNTAyMiBweTNrCis4NDAyOSBhYjY3MGU0MTRjMjY5ZTdiNGRiYzk5N2FlNTU1MjJiMzQyZTcwYzAzIHJlbGVhc2UyNy1tYWludAorODQwMzAgZDM2MDMxMWYwZTUyNDc2YWUxN2RiMGQwYjRiNWE1MzIwZjM4Zjg1NyBweTNrCis4NDAzMSA1ZjMzNjUzZTM4MzdlZWUwMDZhMTEzYTAzODkyMDMxZDYzYTJkYjlkIHJlbGVhc2UyNi1tYWludAorODQwMzIgM2E3OWFhMmM0NTQ5ZmUzNTM4M2ViNTNlYTA2NTBlODU4ODFlMGU1MyBweTNrCis4NDAzMyBmMjkyM2ExNzUxZDgyNTQ2YmJmYmMyZDM4NzI0ZjUxZDI4OWVmMDAzIHJlbGVhc2UzMS1tYWludAorODQwMzQgMGU3MjE4MzA2N2VlN2ZlOTgwYjYxZjg2OWI5ZThjN2U3ZTAwOTkzZiByZWxlYXNlMjctbWFpbnQKKzg0MDM1IGM2OGYyNzEzNDJkMDY1ZGYzOTExYjYzNTUxZjU2ODkxZWI1NWNjNWQgcHkzaworODQwMzYgMzdjNDg3OTBkMDhlMGRmOWJjMTRkN2ZhODM0M2E4MjU3MzJiMGJmMyBweTNrCis4NDAzNyA2NTZmZTYyOTJmOWY2ZTliNzZhYTEzNzIyZjI5NTBhNWZkZDUyOWRiIHJlbGVhc2UzMS1tYWludAorODQwMzggYjFmOTkzMzVjNjc3NGU3YjVlNGMxMDlkNGQwYTQzMGNkY2VhZTJkYSBweTNrCis4NDAzOSBhZmFlOTk5NzgyMjY5ZjM0N2VjY2IyZTM0ZDFkZTliZDI5ZDljOTAyIHB5M2sKKzg0MDQwIDFlN2RjZmMwNDA2MTliOGFkYTVkYTllYTI3NTVkMjBkNzU2YjIzYzcgcmVsZWFzZTMxLW1haW50Cis4NDA0MyAzYTFiNWIxYzA2OWIyYTQ2NTMwYTMzM2ZiNTYyZmU2ZDU3ZDQ4NTI1IHB5M2sKKzg0MDQ0IDk1Y2U4ZGEzN2U3ODdmZTVjYmE1ZjdjZGM3ZmM2ZDE5MjY1Yzc2ZTYgcmVsZWFzZTMxLW1haW50Cis4NDA0NSBkOGQwYWJlNjFlODNlN2EwMDhhYjdkYThmNTUwYThiOGU3ZjJhMTg1IHB5M2sKKzg0MDQ2IDA1YmE4ODI5MmQ0YzVkOWNjNjdjMGU3YmE2NDBjMjYwNWY3MDE5ODIgcmVsZWFzZTI3LW1haW50Cis4NDA0NyBkNjY3YmE5M2YwMmFjODg3MTdhMTllNzMwODg3NDg4MjE4YzY2ZjQ0IHB5M2sKKzg0MDQ4IDIwM2IxOGQ1YzYyNmRmYTk2MzkwODEzYmE3NDAyZjk1OTJiNWIxYzMgcmVsZWFzZTI3LW1haW50Cis4NDA0OSA3NTM4MDQ5ZWZkZTg5Y2IxNmI1ZWUzYzZlMTM0ZTA4NDU4NDczN2MzIHJlbGVhc2UzMS1tYWludAorODQwNTAgMzUzNDM1MWM4MzAwMTQxYTMzN2NhNmNkNDVkNzQ1NDlmMDhlMTE5MiBweTNrCis4NDA1MSA4ZGI1YmQ3MDFhYjM2MGZhMDJkMWQ4MzY0NWMwZWZlMDZkNzgzMzkxIHJlbGVhc2UzMS1tYWludAorODQwNTIgMDE1ZjA1MTI5N2M1MjM5YWQzOTM2MGQ2NjQ1NjJjNjBhNTAyMjA1NCByZWxlYXNlMjctbWFpbnQKKzg0MDUzIGMyMzNjODRiZjQwM2I0Y2IwNGNmODJiNTNmZTljMTA4OTkyMmY5ZDggcmVsZWFzZTI3LW1haW50Cis4NDA1NCA4ZDBhYjU1NWExNjAwZGNkMjY3NWMxZDA1NDNkYTVmNzgwNjdjNjJjIHB5M2sKKzg0MDU1IDI2NmYzYTg3N2Y2NGM4Y2U2NjcyMjkxYThlMjAxYmRhN2FmYTZiZmQgcmVsZWFzZTI3LW1haW50Cis4NDA1NiA2ZGZjN2RhMTc5MTQzNDQwMmNjMGI4ZWEwOWNjNjk0YjllOTQ2MDg0IHB5M2sKKzg0MDU3IDJiMzZmMjljMzNmYzZlNDdhM2UxNjY2ZGNhY2Q1NjFkNDEzYTAyZDIgcHkzaworODQwNTggOTRkMWRhZDU1OTU1MzQ3NTVkODAwODFhZjY5YjEyYTAzYzgwYzhmNiBweTNrCis4NDA1OSA2NGZiMGJkNTVkM2NkZDRiZmEzMmFmMGM0MWRlMDcyMGEwMjU3OTQ3IHB5M2sKKzg0MDYwIDhlMDk5MWJhMjlmNDU3M2RhYjMwNjhmNTVlYmQxY2Y1N2MyOGQ3ZDUgcHkzaworODQwNjEgZjg4Y2RkOWE0NGVhNmMxN2UxOWU4ZjU5MjU0YmRlNGJmMmZlOTA1YSByZWxlYXNlMzEtbWFpbnQKKzg0MDYyIDhmMmYwNThiN2Q4OTEyMmMyNzg3NGFmYTA2OWIwNWNlN2ZhZmY5ZDcgcHkzaworODQwNjMgNTY3ZDAwOTIwZWQ2MzY2Y2JiYTc0YjE4ZTk4Yzc2OWE0ZmU3MDIyMCBweTNrCis4NDA2NCA3YTFhZGJlYzBkYjg3NjU3YjgyMmI5YjNiNWQwYzg3YTc4YTRkNTJiIHJlbGVhc2UzMS1tYWludAorODQwNjUgYjlkZDQ2N2QwNTc0MTg5MTYxYTJiMDVmNmZkMTQzZGY1MTIxN2RjOSBweTNrCis4NDA2NiA5OTY2MmRiOWRjNDE5ODZkYWQ0YTA3MWVmNjYwYTEwYWYyMWFmZWFmIHJlbGVhc2UyNy1tYWludAorODQwNjcgODI3YTYzM2U2OGNkM2U0NGQ1NGFlNDk1MmM4YzU3ZjA0ZGVjNmFjNyBweTNrCis4NDA2OCA2ZmIxMDEzZTMwNzlhYTAzZjMxNTkwNzFjMGI4MmEzOWFjZDViNWMzIHB5M2sKKzg0MDY5IDAwODc1Y2MzNGQxNzUxMjdhNjJmNjcwNGE4ZWUxNDM3MDE0NjAxOTMgcHkzaworODQwNzAgOTAyOGYyM2RiNzRiZTQxZWNmZTc3NjExMzMxNGEzZTdhZTAwMDlmOCBweTNrCis4NDA3MiBlNzgzYzdkNWFlMzY0NjQ4YmFjZWMyZDFlYjNmYTUxZmIxMjUzYTAwIHB5M2sKKzg0MDczIDdhNTQ4NDhkNDkyOTQ4Zjc4NzFkZTc5ZDhjYTBmYzdlNmMwYmYxZjggcmVsZWFzZTMxLW1haW50Cis4NDA3NCA5ODY4NmIxMDMxNGU5OGQwMWY5YzgxMDY2NTdjMmM2ZGRiZmIwZWRjIHB5M2sKKzg0MDc1IGRlNDZlNDI1MDQzMWM2YjY0YjE5YmY4ZWE1NDE3YWFjNjllNDc5MjggcmVsZWFzZTMxLW1haW50Cis4NDA3NiAyMGZkZDI0ZGQ5YWFmMjRkM2E0ZTNjMGZhZjQyNzA3OGVlNmQ5ZjU1IHB5M2sKKzg0MDc3IDc5ZDU3MmVhMTdkZjQzMmQyMDM1ZjI5YzNhNGMxNjAzODlmMDkxZTggcmVsZWFzZTMxLW1haW50Cis4NDA3OCA2ZThmNTg3ODg0OWM4ZTZkMzllMDczNjFkNzFhMGQwNzEwZDA0NDJiIHB5M2sKKzg0MDc5IGQxNTg4MDhkYmQ1YTI2OTlhODVjM2I1ZjM2NDExOWNlMzc2MTU2N2MgcmVsZWFzZTMxLW1haW50Cis4NDA4MCA2NzNjNGU4YTAxYzQ3YmJmOTQ1NjcyZWRhODk0Y2MyNzc0ODYxZWNiIHB5M2sKKzg0MDgxIGIwOWY5M2ZlMjlmYmY4MDU3MmJiM2Y0YmY5NjYxNThkMjk0YmY4ODcgcHkzaworODQwODIgYTkyN2E1OWNlZTA2YzU3YzhmOTM5NzVkMDhlMzRhZGFlNjg2YWE4NiBweTNrCis4NDA4MyAxODM5OGY5OWZjNTVmZDI3ZmRjMzYxNDMzZDI1MTRkMGI5NDczMjQ0IHB5M2sKKzg0MDg0IDEzNDI3NmVlZDI4MDg4YTQyNzMzZTM3MWMxMWZhYjBkYzBiYmIyYzEgcHkzaworODQwODUgZTllMGEwMGNjZmIzNTFhYTRiN2MwNDFmNTE3MjM1YzYzNmI0ZTBkZSBweTNrCis4NDA4NiA4NWFlNDQyZmY4YTVkMzUzNTg3MmUwNWY0YWU2ZmI4NzMzYjg0OGEyIHB5M2sKKzg0MDg3IDhjYzhjZTdjMzkwOTQxMWExYmQ2NmY5ZTIwNzM0ZDM4ODM2MjI3NWYgcmVsZWFzZTI3LW1haW50Cis4NDA4OCBmMDk4ZTFjOGJjNTk3NjY4ZTQ1YjcyMGNjZDRmMmNlOGY1MmIyOTJjIHB5M2sKKzg0MDg5IDkyZjc4NzcwODhhZmU0Njk3OWNlOWViMGVjMjE5NjFlYjgwYzQxNTUgcHkzaworODQwOTAgYmYxOGRkNzBjMTgwMzA0NjI2NTgyY2VhMjE4M2JmYWI4YWMxNjBkZiByZWxlYXNlMzEtbWFpbnQKKzg0MDkxIGI0ZDg4ZjllZjNmOTkyMzRkMTUzMmM0NjY1MTExZDc2ZGQ2ZTFjMDMgcmVsZWFzZTI3LW1haW50Cis4NDA5MiA5MWQ0YzdiMWJjMjVmODkyOWYxMmZlZjc5MDViYjVlYjQzNTVkMTRjIHB5M2sKKzg0MDkzIDRiMjNlMjY5YzRkOTlhNjg0YzYwOTZhNjg3ZjZhNTI2MDMzZjc4MzkgcmVsZWFzZTI2LW1haW50Cis4NDA5NCA1ZDliZGY1YWEwN2JmZDQ4ZTc4YjM3YjkyZGE0ZjRkZDUzNDVlNDU1IHB5M2sKKzg0MDk1IGZjODliOGRlZmYxZTFjY2Q1ZGJkOGEyOTNjM2VmOGQxOTA3ODY2MzQgcHkzaworODQwOTYgYWFlM2UwYzUxMGZmZTUwNjgxZWRhN2IxYzU0OTY0YTc4NDAwZmJmMyBweTNrCis4NDA5NyBkNTJmOWM4ZmU1ZDYwOWI0NTY3NGVlZmQyYjBiNjkxMGM2ZDViNWFjIHB5M2sKKzg0MDk4IDcxNWM0NGI2MGVmMzczNmU0M2FmNDY2OWU1M2Q3OGRkMmE5OTliNDYgcHkzaworODQwOTkgYTIzM2JlNjhkMzJlYThjOWYzMDIwNDdmY2Y3N2RjYjVjZmUwZDkzOSBweTNrCis4NDEwMCBlNDQzMmVmYzg4YjlmOGEyNDE2NTJiODU0NjJmNjJmMGEyNjU1M2IyIHJlbGVhc2UyNy1tYWludAorODQxMDEgOTA3ZjczZTIyN2E2YjllMWZlODA0MGZjZjBjNjI4YmY2MTg2OGIxMSByZWxlYXNlMjYtbWFpbnQKKzg0MTAyIDg5OTRkOGQ2MTBkNDQ5OWU4MDUwYjMzMDc3NDc3MWY1MjM5YjM0NzMgcmVsZWFzZTI3LW1haW50Cis4NDEwMyA5ZmU3NGViMDI4YWIwMWY5YzMwMWJmMDI3NDcxZjI1N2RkOTU3YTlmIHJlbGVhc2UyNi1tYWludAorODQxMDQgZGVlMzBjNDY3MzllYmQxYzg5ZmE2NjFlNzVkYmUzM2RkYmI0MmM2NyByZWxlYXNlMzEtbWFpbnQKKzg0MTA1IGRjMzJhN2Q5ZGE4MDI5ZmM0NzkzMTlkODU4ZmE2NTVjZDQzMmY5ZmUgcHkzaworODQxMDYgZTNkZjM0NTQ0ZGI5MDg5ZjM3NmIxOTA2ZThjNGY4MjgzMWU3MjNhYyBweTNrCis4NDEwNyA0MDg1Y2M1NjBlOWVhNTMyODg3MmQyZjRhNDdlYjRlZTgyMWZkZDczIHJlbGVhc2UzMS1tYWludAorODQxMDggNzU2ZjhiMzk4MjMwYjNhOWRlNmNlZGNjOWVmOGQ1Yzc3YzY3NDIyNyByZWxlYXNlMjctbWFpbnQKKzg0MTA5IGJlMGFhMWQxMzg0Y2Y2MmE4NmY4NTU1MDkxOTVlOWRmMWJmOTJiNjkgcHkzaworODQxMTAgMWQ4M2Q5MmVmZmU4MTEwNGFhODBiOGU2Yzk5MDZjNjQwNDM5YjFkYyByZWxlYXNlMjctbWFpbnQKKzg0MTExIGIwODllZDU3NmIxMzI1YjVjZmNiZmY0NTM0MzU5NjNmMGQ1YTdlNTAgcHkzaworODQxMTIgNzdiMDUyYzY0ZWJiYzJlMjc4MWEzNTU2MDA0MWRlNGZlNzRlYmZjMSBweTNrCis4NDExMyA0NzI1MDgyYzI4MmYwM2ZlNWFmZTlkMWE5OGQ0NWIwOWNhOWQ4YmUwIHB5M2sKKzg0MTE0IDE3ZDViMDMwZTg3Nzk5MDJkODJmNzZlZDMyYTY5ZDhkNWU3MTEzMWEgcmVsZWFzZTI2LW1haW50Cis4NDExNSA0ZGYwZDJhMTNhYTE0ZjEzZmJmYTJhOGRkYWU5Y2MxMDI0MWU3ZjA5IHJlbGVhc2UzMS1tYWludAorODQxMTYgNDFjNjA4N2YyZTZkYWU4ZjE0MjkzZjhlYWVlMjNjNTA1ZWUxZmY4ZiByZWxlYXNlMjYtbWFpbnQKKzg0MTE3IDgwNTllNmI2MjQ2MzYwOGY3M2ZlMDg3YjViYzVhYmZkZmQwZjRmMGYgcmVsZWFzZTI2LW1haW50Cis4NDExOCBlMTg5ZGM4ZmQ2NjE1NGVmNDZkOWNkMjI1ODRkNTY2NjliNTQ0Y2EzIHJlbGVhc2UyNi1tYWludAorODQxMTkgOTUyZDY1MGEwYWZkNzY5Y2Q2MmZlNDlkYzBlYWViZGEyN2JkNjE3YiByZWxlYXNlMjYtbWFpbnQKKzg0MTIwIGI2NjJhMzlmMDgyM2VhOTRmMzVlOTUzOGU0NWNjMDI3MGRhZThjNGUgcHkzaworODQxMjEgMGM4YmZkMjg1ZWY5NDI4MTcwZjI3ZDlkMjE4YTlkZDU2ODhiYWM5ZCBweTNrCis4NDEyMiAwNWM0YmFhODc1NDljM2Q1ZTJlZDBmOTQ0ZjE2NzY1YWM5MWQ4MWVkIHB5M2sKKzg0MTIzIDA0OThkNjhkYWQ1ZDM3OTFjMmRkNDZhMDU5N2UyY2U2ZGFjNDljMzcgcHkzaworODQxMjQgYjkxMDU5ZTU5ZDBkYzIyNTNlOGI5N2FkOGU1ZjIzZWY2NDA4ZDA2MyBweTNrCis4NDEyNSA3NDViZDYzOWVkNGRjZDZhY2M4YmFhMmRkZjAzMjM2NWYyNGFlNGFkIHB5M2sKKzg0MTI2IDBhZGE3Y2UyNGRlMmNkNDkxN2E4YjhjNmY2YzNhN2I4MDNkNDQ2YTkgcHkzaworODQxMjcgOTdmNDdlYWMwOWRiNGFkZTg3YWFlYmNiMTQzZDkyMThkNDIxMTI2YSByZWxlYXNlMjctbWFpbnQKKzg0MTI4IDYwYTQ3NzdhNzNhMDYyZmY1NzdiYThkYjYyZDQ4MWVlODA4ZDZjNDYgcmVsZWFzZTMxLW1haW50Cis4NDEyOSAyNzY3OGZmMGNkYTE0NGQxYTAzOTBkYWEzMjMwOGY4ZjAwZmZmZWU0IHB5M2sKKzg0MTMwIDZjYjc3NmU1NzI5NmJhM2YxYzc1NGU1NzVmODVhM2I4ZDkwZDViNzcgcHkzaworODQxMzEgNDU0OGY0YWIxOWNlZTNjNDNmZmE5ZGVjMDExYjA3MDljZWNkZTUwZCBweTNrCis4NDEzMiA3N2JmNTgyOTZjODcwNTlmNmM0NjQ5ZTYyMjgwMzNmNGY5YTU1ZDE1IHB5M2sKKzg0MTMzIGIyYTlhNTljMmQ1NzJiZmEyNDkwODhjNzQ1NjcyMTFlNGNjYmE0OWQgcHkzaworODQxMzQgYTA0OWUyMjBmMDMwOTYwNmQ4NDcwNDA2YjYwNzM0YzYzOWIwZTY5MSBweTNrCis4NDEzNSA2Y2M2NTU0MTZkNjM5YmZlMjgyNjMzYjUwZGRmZWQ4MDAxZDIwNzBlIHJlbGVhc2UyNy1tYWludAorODQxMzYgMjRlMDY4MzNiNWIzYjcyN2RiYjAwMDZjYjUzYmMzZDBlZGQzNWYzMSByZWxlYXNlMzEtbWFpbnQKKzg0MTM3IDlkZDc2MzQyM2E1NjZkZGM2OGEyZDA4ZWQ4MGM1ZjkyNmU5NWQwOGIgcHkzaworODQxMzggNWZjZTAxYTUxYWE1ZTUxNTQ1OWMxZmJjYzMyZmI1MWUzNzViMzU5ZiBweTNrCis4NDEzOSA0YmM5ZGZkOTVjODA3NTZiNjdhMWY1YWYxYTg5OThhYTIzOGJhM2Y1IHB5M2sKKzg0MTQwIDIxMmExNmY5MDZhNjcyNWM4MTg5YjZiNmE5ODVlOWFkZGFhM2QwZGEgcHkzaworODQxNDEgNmZkOTZjMDFiNDM3MTI2ZDkwNjYzMDliOWM0NDU3MWEzNTc0ZjUxZiBweTNrCis4NDE0MiA5OTBhNzY2ZmY5ODMzNTYwZDcwOGYyM2ZmZDY0ZDkwMTZmMmFiMTNkIHB5M2sKKzg0MTQzIGNhMmE4NTllOWJmNjM1MTBjMGVjM2U4YzdhOTA3NjFmODFkZmI1YjMgcHkzaworODQxNDQgY2FlZWJmNzQ5N2MzOGQ1N2Q3MzUxODk0NzE0NzNkOTdhMzJmY2U4NyBweTNrCis4NDE0NSAyN2UxNzYxNjkzM2VmODlmMmMxMThjN2VhODNiZmZlMzdlNTZhYzk5IHB5M2sKKzg0MTQ2IGVlM2RjZGZlMmY4NzM2NWY1YjAzMzk2YTVjYWUzMzVjNmZjODJkMjQgcHkzaworODQxNDcgNzkyNWJiZGZjODA1ZjAxMzc3MzE1NTE5ODFhMjIxZTMzOTA1MmY2OCBweTNrCis4NDE0OCA2ZWQzODEzNTVkMGQ0NDhhMDMxZDQ2YjJlZjUxOTFlZDEwM2RhMTBjIHJlbGVhc2UyNy1tYWludAorODQxNDkgMzVlNjdhZjgwNmU1MDNkNDA2ZDE4NmRkZjI2MWQ3YzM3ZGM3YWY0MSBweTNrCis4NDE1MCBiNjI0Yzc0MTdhZDRlNmU5MWJiYzM5YjcwMzFjM2VlMDlhMmFmNDAzIHB5M2sKKzg0MTUxIDJhNGNlZWJkZmNmYjI1OGVkNmVkYWZiNWFkZDM2Mzc4ZDkwNzAwZDAgcmVsZWFzZTMxLW1haW50Cis4NDE1MiBmZWJhZWExYTY4NzFlZmZkODM3OTQxODBmZTMyNjc5NzMzZWFhOTdkIHJlbGVhc2UyNi1tYWludAorODQxNTMgMzllMWQzODI2ZjRlYTBlZjM5MWNjYjE5ZDNmZDRmODRlOTRiOTAxNCBweTNrCis4NDE1NCBmM2Q1ODM3ZTMxYjc4NmMzYzRiMzY5YTllMzkwMWJhOTViODkxZDFjIHB5M2sKKzg0MTU1IDNmYTBhOTU1MzQwMjRkODk2MDk4MGFkMDc5OThmY2E1NjY4M2JjYmUgcHkzaworODQxNTYgZmRhOWQxZmU3ZjA2Yjc2ZDJiNDU2NTRmMDQ0YWYzOTU0OGExYmUwNCBweTNrCis4NDE1NyA1MWE3Nzg0NjI5YmJhZDg0ZGE4YzJlN2IzMzlkNDJkYmU0YzYwOTExIHB5M2sKKzg0MTU4IDM1YzUzZTdlMjI4MGRjN2E5ODA2YzYwYjg3NWNiZDQ4ZWIyNDIxOGIgcmVsZWFzZTMxLW1haW50Cis4NDE1OSA5YTU0OTQwYTMzMmVlNjkxNzdlZWY3OTU5ZjgyNTJjMTI4MTI4NDBjIHB5M2sKKzg0MTYwIGY3ODMyNzg3OTBjYTYzOTM5MjMzYTEyYjU0NmRhMGNjZjA1ODI3YTggcmVsZWFzZTMxLW1haW50Cis4NDE2MSBhMDE5OTJlMjE5YzA5MDMzOTc2YjY4YmI4M2I0OGZjYTJhNzFmYTJkIHJlbGVhc2UzMS1tYWludAorODQxNjIgMmIzMjMxMmRjYWIxNTA2YWU5ZWJmNzg1Y2E2NWFlYjRkMmVjY2VkNSBweTNrCis4NDE2MyA2ODZiMThiZmZiODY0ZmFlODNiM2FkZTg3MzQ2NTEyMjcxMzU4YTM3IHB5M2sKKzg0MTY0IGZjNzk0YWRkNTU5ZDVhYWI3NDRjZDdkNjQ0ZDI0NDM2MzFhMDBlNTAgcHkzaworODQxNjUgNDk0MzA3OGM5MGM5YWQ0ODVmMjdkZTBlZTZlZDUxYTFhMjlhZGM1MyBweTNrCis4NDE2NiA3MTQwMGNlMGM3MjFkMTU3MDhlMDQ1ZjZlMTY3YWQwNjdhMzhjMmM4IHB5M2sKKzg0MTY3IGJkZDc2YWQzYmM3NmIwMTE2MDBhYjYzYWU4N2I2YzdmOTUxMjhhNjIgcHkzaworODQxNjggZWU3NjVhNjdjMGIxMWIxOTU0MmM1NjM1ZDcxMzFkOTE5OWEyYzc5YyBweTNrCis4NDE3MCAwZWQ3NmM3Yjk4NDc0YmQ2NDVlYzNiMTQ4OWM2MzlkOGE3MGE3ZTBhIHB5M2sKKzg0MTcxIGE4ZDhkZTIzY2I3Nzg1YzQwNzJhZDkxY2U1MTA2MmIwYzg3NGJkNmYgcHkzaworODQxNzIgYzcwOTM1MTQ1OGE2NmFmNjk5N2VkODU0MDJhZjQ1MTI3ZTYwY2QwYyBweTNrCis4NDE3MyBjMTMwZjQzMmYyNGEwMzliZjZiZWZmZGU4MTMwY2NkYjMwMzk3MDExIHB5M2sKKzg0MTc0IGNhNTU3OTQ4YTVjZjY3YjUyMDY0NDU3NjMyZDhkMzliNzE0MDJkY2IgcmVsZWFzZTI3LW1haW50Cis4NDE3NSA2Y2RhNWZkMGEzY2YyM2ZjMzk1ZmFkYTBhY2QwM2ZjOTNjNmVhOWIxIHJlbGVhc2UzMS1tYWludAorODQxNzYgYjg3MTI0NGQ3Zjc5Nzg5MGY3MGQ1NGMwZmJiMmI0NDUzMWE3ODNhZCBweTNrCis4NDE3NyA4Zjk3YzY0YjIzMzM2MjE2MGM0YjczNzU4NDhjM2NlZWY1YmFjMTUwIHB5M2sKKzg0MTc4IDc0OWMyMmZmYTM2ZWM3NTc3YmQ4MTM1Yzg0MTMzYThhM2FkYjU4NWIgcmVsZWFzZTI3LW1haW50Cis4NDE3OSBjMzcwODY2ZjMwYTc1YWE5ZmFjNjI2MzcyOWY4NDQ5ZmM0NzVkNDc2IHB5M2sKKzg0MTgwIGRmOTYxMDY0ZjgxMWNmY2QxOWQ5NDNjNzM0MDRlNzQ4MTdmYWJlZTYgcHkzaworODQxODEgMjNhNTk4YzAxOTExZjIwNDIwNWE0ZWQ3MTQwNmMyZTI3NWViMDUxNyBweTNrCis4NDE4MiA2ODdjYzg1NGNiNGJmZGY5YjQ5OGEzMDUzZGQ1ZTI1OTVlYjdhZjY4IHB5M2sKKzg0MTgzIGU2N2UwN2NiNTE3MWNkODk1Mjk4MjhhYjU3M2ViNTk4MzQ0YmQxYTkgcHkzaworODQxODQgMDVhM2RmZGEwNGZmYzZhMzI1Zjg5NjMxMzhmZTVhMTgxYzllN2U4YiBweTNrCis4NDE4NSA3OTBkNDg3ODg4NzRjNTE4MTIyNDhhOTVhMWVlMWU3NTdkNzdiMjVmIHB5M2sKKzg0MTg2IDgwZjk4YWYxN2RlZjg4M2RhNDM1Yzc3ZWJlODQ0MDc5M2YzMTIyNDMgcHkzaworODQxODcgMjI4ZTZmMDAxYWUxM2IxNDExZDkxYmYxNWM5MjRlYzRkN2U2OWU3MSBweTNrCis4NDE4OCA5YWRlYTk0NTU3NTM5ZTRjYzVjNmJkZmI2NjM3YWVhNWEyZTA0YWUxIHB5M2sKKzg0MTg5IGVhMGRlY2QyYWNmYjYyZDdiMDBkOTE3NTM3ZDQyNzZiNjc2MGFkMGUgcHkzaworODQxOTAgNGY4MzFkNDUxMjVmMGU1OTFiNjdjMmUyZjllZjA4NzkyYWU5MTY4YSByZWxlYXNlMzEtbWFpbnQKKzg0MTkxIDY1ZmUwNTliOTdiZjMzODkyOGIyZWY5OGZhZWE4MDA0OTIzNjdlNjcgcHkzaworODQxOTIgYWMxMmQ5NDhhODk1NzY0MjJlODE2ZWRhZmFmYzFhNWNmOWFjYjQxYSByZWxlYXNlMjctbWFpbnQKKzg0MTkzIGE5ZTc4ZjZmNjk0ZTY1YTk4YTYyNzljNTc5YTc0MzBmMzA3NDNhMmMgcHkzaworODQxOTQgMmNiMjY2M2UzMzY4OTBmNThlNjczMjBkZjg1YjRhN2FkMWRhNTAzZSBweTNrCis4NDE5NSBhYjg0YTBjN2Q2M2M2MGY2Y2Q1NDc0ZWYxZWE0Y2VhNGI4OTFmOTE4IHB5M2sKKzg0MTk2IGY2NzIzZDU1ZGU0YjZjZTcxMTE4Zjk0MjUyZTY5MDgwMWM1MWZhYzAgcmVsZWFzZTMxLW1haW50Cis4NDE5NyBkMGU5ZmViZmEwMGFjNzFhZjA5NjhmOWYyNDA4YjEwYWQyZDljZjk4IHJlbGVhc2UzMS1tYWludAorODQxOTggODU3ODA2MTQ3ZWU3MzQxZDZiNjM0ZGQ3ZGEwOWQzNzYwZTI0ZmE3ZSByZWxlYXNlMjctbWFpbnQKKzg0MTk5IGYyNDMwNTg1OTYzYzU4NDVlZTIxMWYzNGJhYjg3ZjZkMDhiMDAxODggcHkzaworODQyMDAgZjg3MTJhMDdiMGIxMTMyMTZjMThmYmQzOGY5YTI5MDQ1YzAzNjczZiBweTNrCis4NDIwMSAwODJlYWZhMDg4MDI3MjFmYTczNzI1YjhkZjc1MWNmMTg5Njg1N2FkIHB5M2sKKzg0MjAyIGY2NWJiZmJiODIzZmZjMWFmNDBlZDFmZTMwYTc3MTYwNDRkNjEzZjEgcHkzaworODQyMDMgMzhjZTk0N2MyOGZiNDAxNjEzYjE4ZDc0Mjk0ODQ1NDZlY2I3ZjE2OSBweTNrCis4NDIwNCA5MTU1ZGI2NTljMjBmZmYxZjcxZGI3N2I1NGIwN2Y4ODMxOTQxNWQwIHB5M2sKKzg0MjA1IGE0ZWM3YTZhNjg5NWU0ZTQ2Yjg4NGM3NWQ4NTg3NTAwMWQ3ODIwODQgcHkzaworODQyMDYgNWQzY2ExYzAxOGFlNDM0MTBlMDNkMTIwYTg1Y2JmNWJkZTEwMzZmYyBweTNrCis4NDIwNyAwNTJmNDJkMDIyMmZkOWY1OTAzNjdjZGQ2ZGQ3OTU4MmU4YmIzYTY2IHJlbGVhc2UyNy1tYWludAorODQyMDggNjYxNDNjMjM2ODRkYTNiZjU0ZjRjODljZWZkZGU4ZmYwZGQzYjEwOCBweTNrCis4NDIwOSA1ZmQyNmY0NTI2MDAwYWYzZWI5NTRiM2NjYjQwYWEzOWU2NDY2OGU3IHB5M2sKKzg0MjEwIGFmNGE5MWM5NDA3MTdiOTE2ZTQ2OTQ2OWNlMGQ3YWExNTc1NDRkMDkgcHkzaworODQyMTEgODhlODQzY2UxMTYwZTgyMGEzNGYzZTMwOWM2OWZmZDY0OWJiNjI4YiByZWxlYXNlMzEtbWFpbnQKKzg0MjEyIGJhNmZkZThhM2E5OTdkNTZkYWUwMmI3NzViODBlMDRiZTA5ODI4YjEgcmVsZWFzZTI3LW1haW50Cis4NDIxMiA4YzZjNzJiNmYxZWQwYTYxMDU1OWIwZjhjODNjNmIzYmMzNzc1NmZmIHB5M2sKKzg0MjEzIDU0YzljODZhZDEwNGIyN2FhNDY2NGJjYTk4ZGE1NTkyMmE5ZDVlNTkgcmVsZWFzZTMxLW1haW50Cis4NDIxNCBjMThlZWI5NjkxMDJmMjRhZDk2YWRlMzE2YjE0YmJmZGM2M2EzNDY0IHB5M2sKKzg0MjE1IDM4Y2VlYWUwZDFmMDc5NmYwMjE2MGYwMDM2ZjAzZDc1NWNkNjA3OGUgcmVsZWFzZTMxLW1haW50Cis4NDIxNyA1NDlhNDBjYTIwNzRkNzIzODg1NGQzMjkwMjk2YzlhMDMwNTlhYTkzIHJlbGVhc2UyNy1tYWludAorODQyMTggMzUyOGJhN2I0MzA1Y2E3NWJmN2EwNmMxY2QzMWExNmE1ZjE0YzM0OSBweTNrCis4NDIxOSBmMmM3ZTRiMWQ4MDQ1YzEyMzUxOGI3ZDZhZmRkMzA2MTQzMTQ2NWJkIHJlbGVhc2UzMS1tYWludAorODQyMjAgMzlkYWMwYTg4OTZhMjc4NmJhMTVjZTQ0NGNiMjc0ODUwYjM3NDk4YiByZWxlYXNlMzEtbWFpbnQKKzg0MjIxIDMwYTBkY2Y1YTNkOGE1ODFiNWVlMTI0ODQ3MjUwNThmOTY1ODgzZmYgcHkzaworODQyMjIgNWEyOTlkNzg1OTg3ODM2MTY3ZTIwNDZlZTgyOWEyMDEwNGIxYThkNSBweTNrCis4NDIyMyA4N2Q0NjhhZTNjM2MyY2Y3MTRlN2I4YTE4NWE0ZTU1YWU3NTY1ZGJhIHB5M2sKKzg0MjI0IGQ0ZTIwZjlmMTI3YTlmNGZkZTY5ZGRiNDVjNmE3NjQ3OWI5OGZkMTkgcHkzaworODQyMjUgYWI2M2M0NTc4YjFiZDE0NDE0YmVmYzgxMTA0YzM5NzRjNmRmNDdlNCBweTNrCis4NDIyNiA2NWNlOTkyMzY4OTc4NjU4NDY2MzExYzFmYWQ0NmEyMWE5ZmJiMzA0IHB5M2sKKzg0MjI3IGYzZGI1MDRjZGZiMWYzZjU1Mzg3OTFhNTRlYjc4MDQzYzhjYTE3ZDkgcHkzaworODQyMjggODM5N2YyZTAwN2ViYzI0ZTRlYWE0ZDcxYmQ2NGYyMzU3ZTNmM2Y4NiBweTNrCis4NDIyOSBmYTdkMWQ1ZDJhZmI2MDE1YTk3MzBhZmZmMzlmYjdhZGJmYTdmMzMwIHB5M2sKKzg0MjMwIDdkMmJkODk1NWVkYjgzYjA5NDg5MjhlOGI0ZDNmNjUzNTNjYWY5OWMgcmVsZWFzZTI3LW1haW50Cis4NDIzMSAwYzNkNzYzZjM4ZjE0MmE3ODVlYWJlNzcwOGJkODg1OWEzYmYwNzQ1IHB5M2sKKzg0MjMyIDlkNTkxNmFiNjBlMGYzMjQxMTE3YzllYjFjMTIwOTJmNGQzNDE5MzIgcmVsZWFzZTI3LW1haW50Cis4NDIzMyA5OTY2MDRjZGU0MWY1ZmU4MGNkNjg0ZWM5MWNmZDM3ODFlOTkwOTBjIHJlbGVhc2UyNy1tYWludAorODQyMzQgYWJjZjk1NzdkNWRiM2ZjNTU0ZDA0OTczYzUyZGUwZTIxZjkzOTk0NyBweTNrCis4NDIzNSAxZWZlODIzZTFmMTg4NWU3ZDBkMTdiYmM0MmE0Y2Y4YWVkZWI5YTMwIHJlbGVhc2UyNy1tYWludAorODQyMzYgYzRmNWQ5OGVlODdiMDNiMWU4ZjU3MjhhNjkwNGJlYmFmODQ5OWJmYSBweTNrCis4NDIzNyA0OTdhN2UyODRlNGRjOGUwMDM0MWRhMGNlNmY2MGU1NmQwOGJlNWM2IHB5M2sKKzg0MjM4IDJmM2FjODM0YjUzNjM0ZWViYTU4MDhmNTBhNTQzZDA5MGM2MGRiNWYgcHkzaworODQyMzkgYjE4YzgwYzY4NzU0MDBiZmE5YWM1MzE0YjE0OTEyNWVkZmJjNTVmYyBweTNrCis4NDI0MCBkZmQwMjI5NzQ4ZWZkNGMxYTY1YmFkOTFiNzlhZTZlZGJhNDA4ZGFjIHJlbGVhc2UyNy1tYWludAorODQyNDEgOTdhNWZiMWM5NmNlYjNlMTg1ZTQ4NDI0N2I5NTAxZTQ5MTlkNzdkZSByZWxlYXNlMzEtbWFpbnQKKzg0MjQyIDhlMTg0YThiYjAwZTY0OTc0MWEyNDYzYjg5MDdlYzY0NGIzZGZjZjkgcHkzaworODQyNDMgNDYxYTIwYWI0MzNmZWU0YjdiN2MwYzYyNWYxODllY2FmNTBkNmU0OCBweTNrCis4NDI0NCAzMDJmZTI1Y2Q2YjExODhmMmJiZDVmMDQ4ZDVkYjNmODdlMDE3OTU3IHB5M2sKKzg0MjQ1IDEwZGY5Mzg3MmNhNzMwNDIwMjc1YWI1Yjc4Mzg4NTk3MWNiMWRlY2IgcmVsZWFzZTI3LW1haW50Cis4NDI0NiBmNWRlZTMwY2NkMzlmZDUwZDg0OTRkOTA0NTY4YTViNDkzMDhkOWQwIHJlbGVhc2UzMS1tYWludAorODQyNDcgZjlhYjljOTJkYjhkYjI0ZGU2YzVlNWU5NDM1YTEwNDFjZjdlMmY0NiBweTNrCis4NDI0OCBhYWNiMTUyOTFkNTQ2MTBjZTMxYjc1ZjA4NGVmMjk4YjAyZTJjOTc1IHB5M2sKKzg0MjQ5IGEzNGJlMDNmNzA5YTM0OWI2MTFmMjNiOWQ2ZGNkNWExYTAzNjc2NGMgcHkzaworODQyNTIgMDFiMGE2Y2IxM2Q0M2M5ZWEzNWY1MmUwYzRlNTQ5MzUxMTNjODUyYyBweTNrCis4NDI1MyA2ZTBmZTFiODNmZjA5NTZkNWFjNTY1NDA5NzRhYmUzZDg0YThlOWFlIHJlbGVhc2UzMS1tYWludAorODQyNTQgOWM0ZTg1Nzg1ZDRlNGM1ZTk0MDY4Y2QyZTY4ODQyZGNlZjhmMzRlOCByZWxlYXNlMjctbWFpbnQKKzg0MjU1IDAxMzBlNTc0ZjViZTVhMzg3MjdkMzRlZDBjMGI4ZTUzM2YwMTM5MTQgcmVsZWFzZTI3LW1haW50Cis4NDI1NiA3ZmYzZmE0Mjk3MjE4M2E1YmEyMmQ0NWJhOTk5MDRkNGFlYzk1OGVkIHB5M2sKKzg0MjU3IGE1YTU4NzIwNTBlMzAzODRkZjg2Nzk5NzgzN2ExNjM4NWY3ZGE1MzUgcHkzaworODQyNTggYjAxN2E0ZWY3Njk0ZmFlYTkzY2Q0YzBiMDUyOGZlZTBjNzEyNTdiYyBweTNrCis4NDI1OSA0YWNmYTNmZTZhNWViNTJjMTUyYmVhZWRjYzZkN2Q2MmYzZTljZDE1IHJlbGVhc2UyNy1tYWludAorODQyNTkgZTQ5YzUzZjc1MzVjMDhkNTE3NmE4MTgzZjgwOWFlNjc4YzRjYThlYyBweTNrCis4NDI2MCBlODE5MDZlOTJmOTlhZWRlNjY0MGE2NTBmYzc0NTZkZjg3MWVjNzI5IHJlbGVhc2UyNy1tYWludAorODQyNjAgNmFiNjU2NzY1YmNhMzg3Zjc1ZDI2YWI3NGY4ZmFmYmJlOTBiMWY0YSBweTNrCis4NDI2MSAzNTMwNGMyZmU5ZTBiYjg4MTMxYTA1YmEzMGE2OGQwODM5OTUyYzQ1IHB5M2sKKzg0MjYyIGU5MTg0OWNkMDY2ODlkZGUzMTc1ZjEyYmQwMmY5YjQzNmM1NDg0ZjkgcHkzaworODQyNjMgZjJlOTFlMDhjMWM1N2YwYWUwM2FmZjg1ZGI4MzQ3ZjBjMjBkOGQzMSBweTNrCis4NDI2NCAzYWNkODZmOGM1NTI0NzNhYjliNjI2YTk5NDE0Y2I0YjIwYjEyYjAzIHB5M2sKKzg0MjY1IDFjODgzNGYzY2RiOTYzODc3YzcyNDQxYWM5Mjc5NDExODRjNzVmYjMgcHkzaworODQyNjYgNTk0OGU0OGZiZDg4MGNkMTRlZTRkOTg0MjBhY2U5M2Q3ZGMyOWRkZiByZWxlYXNlMjctbWFpbnQKKzg0MjY3IDhmNWZhZjU2OTZlN2FmMmUxMTgxMzdlMTViNGI2NTljYmM5ODgzODQgcHkzaworODQyNjggMDJlMmQ5ZWFiNzMwMTk5YzViYWE5NDYxOTAyYjMwMjZkYzY2ZjVhMCBweTNrCis4NDI2OSA3MTZkM2QxMDJjMGFhMTI2ZDU5MWE1OGQyOTRlMWMwZWU5MjNhYTUxIHJlbGVhc2UzMS1tYWludAorODQyNzAgYTQxMmNlZWVmMGYxZWViYWM3ZmU3ZWVhN2Q4ZDVjNWRhOGRiODVjMiBweTNrCis4NDI3MSBjZjM5OWRlMTJiNTQyN2Q3YWJmYmQ5NDRhMWNjYjNjZDVlNWZkZDQ4IHB5M2sKKzg0Mjc3IDdlMWUzNDNiNzA4YjE4MmY3ODc1YzQ3MDM3NTNmY2Q0YjM2YzI1ODMgcHkzaworODQyNzggYWEyNWI4Njc3Y2MzZjc5ZDRiNTM1NGY4YmNhY2QxY2ExMGZmZDg4NyBweTNrCis4NDI3OSA1MWEyNGE5MTU0MDg1OTNiODlmZDEwY2ZhMzI5YTYyYjM1NGNjYjY3IHB5M2sKKzg0MjgwIGI1MzVjZGU5MzI3MzgzZjgxZGYwMmVlYjBkMDhiZjcxNmJkYzVhOGEgcmVsZWFzZTI3LW1haW50Cis4NDI4MSAxYTA4NTk2MjM4ODJmNzFkZWVmMTZmNThmZGYwMDQ2MjE3NjhlMDgxIHB5M2sKKzg0MjgyIDQyYzcwZjE3YzJmZWRlNjExNjEwODU2OGE3NWIwZWVjMDhiM2M3M2EgcmVsZWFzZTI3LW1haW50Cis4NDI4MiA5ZDRkYzU4NTVjNTE1YjgwNDUyOTNmMWI0MGE2ZGRjOWNiMTE2MzAxIHB5M2sKKzg0MjgzIGJhNTM2YWM3YWI0ZTRkYjAyODk5NmViZTliY2M1MTIxNTlkMmRiZGEgcHkzaworODQyODQgZTc5YmE1NTU5MjJhMTY4N2JiNzE5ZGJmN2RiOTI4NzhjYzgxMmQyOSBweTNrCis4NDI4NSA3NmU5Y2Y4NDU2NzYwMmI5MGE3YzRhNzcwNzY1OGZlYjI0NDRlYWViIHJlbGVhc2UzMS1tYWludAorODQyODYgYjk1ZWMxNzFmNTAzNjQzYzdjOTZkMmNiYTIxNGVjMGEwYmNhOGRkNiByZWxlYXNlMjctbWFpbnQKKzg0Mjg3IGVmYWE0N2U5MmE4ZTg3ZTAzMzMzMjg2OTU4MmVlNDlmMGFmMmUzMmIgcHkzaworODQyODggNzg5NWM0NTUzYmY1NDQ5MDY3YzUwZmVmZDg5MDRjNzc4MmNlMTE3YiBweTNrCis4NDI4OSA5MGJmMjI0MzU1MmQzMzQzYTY1ODM2ZjVjNjU3YzQ5MmY3Mjc1MmJkIHB5M2sKKzg0MjkwIGUyYmNlMWM1OTZiZWIzYTllY2U3YWEzZjhhN2YxYjdiNDcwMGNiNzQgcmVsZWFzZTMxLW1haW50Cis4NDI5MSBlNzE2YWEyMDk0ZmE4ZDk2Y2IzNzVkMDY0MzYxYTY5ZTUzYmM0ZWQ2IHJlbGVhc2UyNy1tYWludAorODQyOTIgOWY4NzcxZTA5MDUyNzdmOGIzYzI3OTkxMTNhMDYyZmRhNDE2NDk5NSByZWxlYXNlMjYtbWFpbnQKKzg0MjkzIDZkYjc4MzViMGE5NWFmYzFkNGYwYWU5ZjE3Mzk0OGI4NTRlN2JhMGUgcmVsZWFzZTI2LW1haW50Cis4NDI5NCAyZGU5ZDQ0NTcwODIxMjNkOTAwOWE3ZjI1ZDBkOTRjY2Y2NWI3MjUzIHB5M2sKKzg0Mjk1IGMxYTgzZjJjNzA4NzU3ZGRkMmNmMmIyMWFiMDlhNTEwNWFkMGZlYzkgcHkzaworODQyOTYgZDRhMWY5MTQyZjdhOWQ0NzdlYTc4NDJmZWQwYWM2M2Y4MjFmNGE4MiByZWxlYXNlMjctbWFpbnQKKzg0Mjk4IGRiMjkzNjBjYWQwZmFjM2E2NDk5M2I5ODg2ZjE0ZGY3YTE3YTJiYzIgcmVsZWFzZTI2LW1haW50Cis4NDI5OSA0YjEyOTZiMjYyY2E0YmVhZmM1YWM1N2NlYzgyNDk3N2M2NDQ4ODU2IHB5M2sKKzg0MzAwIGY5MWYyOWVmNGVlN2I1ZjVlY2ZiYzkwNWUyN2Q5YWZhOWEwMDk5N2QgcmVsZWFzZTI3LW1haW50Cis4NDMwMSBjMWM0ZjhmODUwNzBkYTRkN2I2OWFlMzZlOWUwMTIxYzkwNWUxNWZlIHB5M2sKKzg0MzAyIDhmZTM2ZTJiOGVkMTNjMjIyMmZkMWQ1YjdkN2U5ZGEwOWVhMTk4YTEgcmVsZWFzZTMxLW1haW50Cis4NDMwMyA4MGE0ODE0ZWNmNWQ2NTIxZDYxY2U2MDBiNmFhNWI2ZDY5OGRhMWMyIHB5M2sKKzg0MzA0IGJlNzZiMzdmZTdmZDg0MDlkM2QyZjI3ZjI4MmU5YjQxZWMzZDgxZmMgcHkzaworODQzMDUgNjE4MGY0NTY0NzE0ZGIxMzNlY2ZkMjUzN2EwZDZkZWYzZDhlNjExMiByZWxlYXNlMjctbWFpbnQKKzg0MzA2IGY2NWU5YzE1OGMwNDA2MjNhOTY3YmU1M2IwNGVjNjQyZjQ3NmRhZGUgcHkzaworODQzMDcgODY3Njk5YzliNjNmZjU4NDVlYzAyZjE3NDRlM2U3NmRmZDcxODUxMiBweTNrCis4NDMwOCAxNDg4Y2QxMDNkN2I4MjE0ZjdhMTEwMzAwNzQwZmVmNmZjMzVhZDVlIHB5M2sKKzg0MzA5IDFlMjNjM2IyZTIzMjU5YTkwYTkzYmY0YmNmNTU1NjBjNWQwY2JkZmMgcHkzaworODQzMTAgODdiZGY1M2ZmNGJiZmNhNDI5OTY1MzBhN2YwZTlhODViNTQzMzFjOCBweTNrCis4NDMxMSBmNmIzZTY0Yjc2MjA2NzgwMjg2YmIyNWYzNWI0ZTMwZDZlOTZmM2JmIHJlbGVhc2UyNy1tYWludAorODQzMTIgMDUzZmY2NWJlNTRjYjM2M2M1YTI4NDgxNTZmYTIzY2I3NDI3MDBiOSByZWxlYXNlMzEtbWFpbnQKKzg0MzEzIDJjY2QwNDNhYWQ1YzEwOTBhYzU5NGIzYzk2YTkyNzQxNDcxZTJkYzAgcHkzaworODQzMTQgODcwMzdkODM4MGJmNGEzOWVmMTM3ZjFmNDA4ODQwYjkwZDY5NjNhNiBweTNrCis4NDMxNSAzYWM5YTM3ZTQyOWJhNjI3OTFhZmEyNmJlZmYyYTQ5ZTYwMzM2ODM3IHB5M2sKKzg0MzE2IDk0YzBmOTc5MTdkZGM2OTI4MTc4ZmY3MmQwYzIxZWJhZjA3NWE4ZGUgcHkzaworODQzMTcgMDQ4MmIzMGNhNDY2MjkzZWU4MmNiYzM1NmMyMjVjODU5M2M3NjkwZCBweTNrCis4NDMxOSBhZWZiYTg5OWVhZWViNDI0N2ExYWYyZjJhYmQxMTM5YWRjNzQ1YjQyIHB5M2sKKzg0MzIwIDgzMzAzNDZiNWM1ZmE4YjZmZWI5NGRlYzg0OWZmYTcxMGQxODJhMmMgcHkzaworODQzMjEgZWJmYjk0ZjJjYmMzNTY0Yzg5MmM1ZGM4NmEzOGE4YjA5M2Q1NTI0OSByZWxlYXNlMjctbWFpbnQKKzg0MzIyIDE5MDM3NTQ0NTI0MTk4NmEzYTg0N2M4YTRkNzhlODE0ZWQ1NGEwYWQgcmVsZWFzZTMxLW1haW50Cis4NDMyMyA2NTUyMDU1NjI2OTUwMWUzOWZkYWRiODMwZjI3NGRjZGZlMjZjZThkIHB5M2sKKzg0MzI0IDc5MTVkMjY2ZWUyYjI1ZGNhNDY1ZjcwNDY1MmQzNGUxOTIxYzAxNTIgcmVsZWFzZTI3LW1haW50Cis4NDMyNSBlZDgzZDU0NjMxNWQyZTBhM2FiM2UwNjA1ZmEwNTM2MzZkODlhYzNlIHJlbGVhc2UzMS1tYWludAorODQzMjYgMzI1ZDAxNmMxOWY3MWY4NDc0MzkyZGNkNzA2YjY3ZjlhMjY4NTdhMCBweTNrCis4NDMyNyA5ZDRhZmQ4ZTg2MjExNTRjMWY4ZTY5NWI2MDJmOTRmNWM0MTAzYjdkIHB5M2sKKzg0MzI4IGRlYmMyODQyYjRiMWJmOTRjODQ2MDgxODIyMGU0MTA1MTliYjAyMzEgcGVwLTAzODQKKzg0MzI5IDAxMTJmMDY0Y2VkZmFiMmFmODg3NWE1ODlhMGM1Y2YxYjQ3NzkxOTIgcHkzaworODQzMzAgZDBiNDYwYTQ3ZjdmZmE1OGRmOThkNWM2MTA0MjFlMGU3NTJkMWZmMyBwZXAtMDM4NAorODQzMzEgMDkzYTA5NWFhNzRjNjQ4OTk5NjY0YjhmNjdmMDg5YmVkODg0YjQyZiBwZXAtMDM4NAorODQzMzIgMWFiYTczMzlmYTZjMmI4OGU1MzVlYTFmMWNhZjQ5NTBiODZjZjg4OCBweTNrCis4NDMzMyBjYjFmNWQwNTQ1MTBlNDdhNGNiMzA2OTM2ZjIxYTNiNTVhNjE1MmQ5IHB5M2sKKzg0MzM0IDM0ZGZlZTU5MGEzMDcxYjFlZmZkNDA0YzYxZWIyYzJhYjI1MzExYjAgcGVwLTAzODQKKzg0MzM1IGQ3MTYyMjA3MzE4ZjY3Y2IwOGFiNDhmOTJlODdjNzM5YWI0ODEyOGUgcGVwLTAzODQKKzg0MzM2IDMzYzRjY2FmYzRmNTM4YTEyY2Q2ZGFkMmM3M2I4YzI4YWY1OWU2OGUgcGVwLTAzODQKKzg0MzM3IDlmYWMxOTcwZDM4MDZmMjNiNTgyN2MzZGFjNTJiNTQ2Yzc2YmU3MGMgcHkzaworODQzMzggNzhlNDAzMTZlMDIzNDZhZmM2NzdmOWQzNWFhNDc4OTAxNWExMDM3MSBweTNrCis4NDMzOSBlYWFlMGRmNmQwNjMwZTE1MjQ2NTFiYzBjNmZlZDNmY2NkZjMyYjY4IHB5M2sKKzg0MzQxIDVkYzA2YTA1OTYzMGFkYzM2ZmNlYmFjODFkNTlkM2JmNTJmYzAxNTYgcHkzaworODQzNDQgMDI2NWQ1ZjdiZDA3MjE2NmEyYjgzYWI5NDY5M2M4ODY1YTNkMTc4OSBweTNrCis4NDM0NSA0Yzk3OGNkMzY0MGZjOWU3YzQ0Nzk0Yjk2NGJjNTg0ZjM4YWNmZGY1IHJlbGVhc2UzMS1tYWludAorODQzNDYgYjJlOGRjZDE1MDQwMzQxZmNmNzYxOGQyMWEwNjBlZjUxODQ3NGY2NiByZWxlYXNlMjctbWFpbnQKKzg0MzQ3IDhmNmU0MWMzYTIxOGE5OGYwMDI2ZjUxMzNjMWY5YWVmODcwZjVjZGUgcHkzaworODQzNDggNWM4OWY5NTcxYmE1NDkwZWM0NjUyMWZiNzI5ODBjMTFiMTIxZDNjMyByZWxlYXNlMzEtbWFpbnQKKzg0MzQ5IDNlMjBhYmQ3ZGVmNmUzNjAwOGJhZDVhNDBiYTc5MzBkOWNjOWE0ZWQgcmVsZWFzZTI3LW1haW50Cis4NDM1MCA0YmIzMTdlYjQ5NmEwODc1N2EyYmNmZGM4YjU1YjIzM2Y5ZGQzNTg2IHJlbGVhc2UyNy1tYWludAorODQzNTEgOWNiYTk5MDY4YzU0YWE5ZmU4ZWNjZWZiOGIxYjQ1NmM2YjQwZjViNiBweTNrCis4NDM1MiA5Mjk3OTc0NjA0ZmZkYjMxOWE5ZTZkOWYxMTg0YWUyNGVjNjFiYWY2IHB5M2sKKzg0MzUzIDkxNWRhOWYyZGExOTllOGI1NGE0ZDU0ZGEwZWZiZjgwODg4NWFlMWIgcHkzaworODQzNTUgODBkMmU3ZDFkN2Q1MzRmYTQ2NTkxMmNhYjRhYzQwMWY0MDliNjA2NyBweTNrCis4NDM1NiA5YzUxZjM4MzY1NjMyYTFiN2I3ODVhMjc4ZDUxNGIyODE2ZWEwZjBhIHB5M2sKKzg0MzU3IDcyNjcwNWQwMmFkZDIxZTZkMmMxYmM1NTA3YWYzZDM2YzE0NGNjNDAgcHkzaworODQzNTggZWZlOWY2YzhhMzFkNGZjODBkNTM3MWViZjg4ZDA1Y2VmYjNiMGY1NiByZWxlYXNlMzEtbWFpbnQKKzg0MzU5IDhhZDU5YjUyM2ZkOGEwNjQyNmY1NDBkNWQzNjE3MmJlMWNmNTFlZDUgcHkzaworODQzNjAgZTFkY2RjYjUyMDFkNDg0ZjhhMGU1YWNiMzg1NjFmZjg0ZTM4ZTIzOSBweTNrCis4NDM2MSAyOTQxMDFmNzdjYmVjYTRhMWE3OTE0NzM0ZGYwYmU4NjA2YjRmNjU5IHJlbGVhc2UzMS1tYWludAorODQzNjIgZTZiNDU2ZjkzNDQ3YTEwMDVjYWIxZjQ2Njg1YjUzZmZkM2MyZGY5NiBweTNrCis4NDM2MyAwNDBlZTk0YTkzNTBlYTI0Mzc4MDIwNTBhMjNiMzk4YjIyOTdlYWUxIHB5M2sKKzg0MzY0IGZlNzIxNGJjNmQ2NmIzMzlmZjFmZjMxYTFmYzZiMWU5ZDM3NzliZjkgcHkzaworODQzNjUgYTQ5MmYxYWMwNTc1NDc5ZTZiOGVkYTcwZWQ3MTU3ZDA3ZjAxMzZiOSByZWxlYXNlMzEtbWFpbnQKKzg0MzY2IDUzNzBkODFhNWYyZDJiMzAwNGVjODM1ZTJjYzZjOWNjYjkwNjQ3YjIgcHkzaworODQzNjcgMGE3ODRmNmFjYWU3NjgyNGNhYWEzNDU2YjE2YmNhYTJlNzZmNDdhMiByZWxlYXNlMzEtbWFpbnQKKzg0MzY4IGY5MjA0M2M3ZmY5ODQwZTM4YmQ2MjJhY2ExZDUxYTQ5YTE3NDM0MTQgcmVsZWFzZTI3LW1haW50Cis4NDM2OSBlYTg5M2RiMjNlNzM4YzYwODhjNTA0MTQzN2ZlZTFiNGE1NDkxYTBlIHJlbGVhc2UyNy1tYWludAorODQzNjkgNDc0MzczOGNjYWZlMTdhYzllNWEzY2U2ZDM0MzFkODFkODg3OGIwZSBweTNrCis4NDM3MCA4NDg4MzYwN2UyMWE0YjFhZmVhZTQ4YmU4MTYyNTk2MDQxZjQ5MmMxIHB5M2sKKzg0MzcyIDdiMmQwZDc3ZTRhYzZlNTQ3NzNhZTk4Njk5MGM0MjRmNGQwNjNhNTMgcHkzaworODQzNzMgODAzODkyOTMzM2E5Yzc4MjliNTcwMGQwODVmZTJmMWQxZjkxMWJjNSBweTNrCis4NDM3NCAwOGY3YWUxMGNjNzkyYWVhYjA4ZTk2ZDQyY2VjNTFlOGJjOWZiN2E4IHB5M2sKKzg0Mzc2IGNhOGY4YzZjYzJiMWIyODE3ZTE0NGM3NzBjZmY2MzI5Njk2OTczZmYgcHkzaworODQzNzcgYWMzN2EyOGRkYzhmNDliNGE5YjRhN2VhODY3YmRhNWY4MDlkN2JjYyByZWxlYXNlMzEtbWFpbnQKKzg0Mzc4IDE1NzBmNmU5YTY4NzQ1OWViN2VlZjRlMTlkMjZhNDEyZGFmN2RjODkgcHkzaworODQzNzkgZDUwM2Y3YTQ1NDU2NmI5NDhiYjFjNzZkM2Y1YmFmZTU4YWU0ZmJmNSBweTNrCis4NDM4MCA2MjkzMGNiMDVlZDhiOGExNDRhZTIyZTM1YjBiMDg2ZjkyNTRhZTQ5IHB5M2sKKzg0MzgxIDAzMjY4YmY5YTI1NjRmODRmY2YxYzg1OTI4MzEwMDhlZjcwMzJmYzAgcHkzaworODQzODIgNGYyOTA1ZWE3ODA5NjczZjA0NTJmMzJmOWQxZDJiZTVmOThjMWE4NiByZWxlYXNlMjctbWFpbnQKKzg0MzgzIGEwZTc1NmQ5MmQ2MDA2MTBmOWJiODE5YzVhM2RkODYzMDM3M2JkNGMgcHkzaworODQzODQgOGMyMTYwYjVjODFhZjdhODgyMGVmNjRjOWM2MThiZmIzMzBkNTI4MCBweTNrCis4NDM4NSA5Y2E4M2M2NGY3N2FlMTU1OTI2ZDJmMGE2OTU0ODZlMzJhYmQ4YjI3IHJlbGVhc2UzMS1tYWludAorODQzODYgMmU1NzYxNWU2MWYwZjFhY2E2ZTUxNzg2OGE2YjU1Y2FiMWZhMmM5NiByZWxlYXNlMzEtbWFpbnQKKzg0Mzg3IDlmZDMyNmFmNjJkNDVjOGRjMmFjNjkwMzIyOTJjYWFkYjgxYmYwNWQgcHkzaworODQzODggNDk4MGIzZTllODRhMTgxNDliNmJmYjcwZGM4YzY3MzM4YzEzYTkzOCBweTNrCis4NDM4OSA3ZTlhYmQ1M2I5Mjk4ZTcwZmY2ZTRhY2YwNjhiN2RlMjJmZTBlNjc4IHB5M2sKKzg0MzkwIDI5NzNkYWE0NzI0YjFlZDZhZjNkOWViZmI5NGVjNWE5MjE5NTRjNGYgcmVsZWFzZTMxLW1haW50Cis4NDM5MSBkMjQ4NzBkMDBjNDI1OWY4MGM3NzY0Y2YzOTM2YjIwYjYyMmQ2MmIzIHB5M2sKKzg0MzkyIGIzYjhkMDhmOWQwNmVjZmJkODM2M2I0YmIyODViMGIwNjI1NTA2YTcgcmVsZWFzZTMxLW1haW50Cis4NDM5MyBkYTE5ZDAyYWFhYWEzZDZmYjc4ZTBlOThhM2FiOGZmODk5NTBjN2JkIHJlbGVhc2UyNy1tYWludAorODQzOTQgNWEzMTAxZjU1OGVkZGUzNDNhY2M0NDM5YWRkMGU0MDllNTgyNGI5MSBweTNrCis4NDM5NSA0MTM0OTgxNzQ2OTc2OGY3ZjJjMjhhYjBjZGZmMjU0ZDlmZmYzZTM4IHJlbGVhc2UyNy1tYWludAorODQzOTYgM2QxYzcyNjJhYTE0ZGNjMzg3OGRhNjQyOTE3NWE1YTFkMTg5Mjc5ZiByZWxlYXNlMzEtbWFpbnQKKzg0Mzk3IDk0NDIzMjUyMTYyNGJiNzhjYjEwMWY4M2ZjOWUzMmJiODFhMjE1OTkgcHkzaworODQzOTggZDg1MGMzN2I2NmI2ZjZmZDMwNzVhNTZkMDI5Nzc4ZDJlM2MwNDhkMiByZWxlYXNlMzEtbWFpbnQKKzg0Mzk5IDA2MWUyNzAzMmU2MTkzNjMyZmRjZmE4ZjVkOTIxZGU2MzNiMDY2YWMgcmVsZWFzZTI3LW1haW50Cis4NDQwMCAyZGMxN2RjYzk3MzQ2OWYyOWZmYWYzZTMyZTAzZjllYmVkMTUyZWM3IHB5M2sKKzg0NDAxIGRlNDIwN2M5YjljMTI4ZDgyNjM4ZTZjODg3MDc3ZGU5MGM1MTdlN2MgcHkzaworODQ0MDIgMzA0NWViOTQwNTk3YmMyYzQ0YjI0NWU0ZTc0NmNlYjQ3ZDA3NTFmMiByZWxlYXNlMjctbWFpbnQKKzg0NDAzIGZhOGI1N2Y5ODdjNWYxNWI4NDU5NDYzNWUwN2QyYWFhM2Y5MDM0NTIgcHkzaworODQ0MDQgZDY2ODA3YzUwMzhiZmI2NmY0ZjMzMzU4MGM4YTdmOTZiZTIwNDFlZiByZWxlYXNlMzEtbWFpbnQKKzg0NDA1IDZiYTAzMzIyYmMyMzNiYmRkMjgzNWNhNjY4NWRjODc0OThkMzhmMTEgcHkzaworODQ0MDYgMDYzYjU1NGQzMTUzZjM2ZjZlZTQ3YzZjNDFiNWQwZTAxNTZlZjE2ZiBweTNrCis4NDQwNyA0ZDhhMjVhNGQxZjYwODA1ZDgyNGMxNDA3ZGIwMDYyZWFkNDRhZTZlIHB5M2sKKzg0NDA4IDkyNWU5MTEzZjBhYWVmZjEzYjYzZGVhN2Y4ZTgyZTQwMmRlMmU0NmIgcHkzaworODQ0MDkgN2EzOTViY2VhYzkxYWYzNjBkMzNiNTgzMzk5NDRhMzcxYzg3NzUyOCBweTNrCis4NDQxMCA0NTQ3YjE0OTExNjkwMzdjMGRmNTQyODJmNmE0NTA0M2UzYzNmMDJhIHJlbGVhc2UzMS1tYWludAorODQ0MTEgZmE0ZDc4YjllM2EyYTZiODRiODQ1OGVhZDcyZDU3Zjc0NDExZjE1OSByZWxlYXNlMjctbWFpbnQKKzg0NDEyIDYxOWFmYzgxYzk3MzFlMTVkNWUxZGIyZjhiNTU1M2JiYTJlMzQ2NDcgcmVsZWFzZTI3LW1haW50Cis4NDQxMyBmYTk0OTUzMTZjYTkwMGQxOTE3NjE3NGQxNmJkMDBkNjI3YjdhMWM0IHJlbGVhc2UzMS1tYWludAorODQ0MTQgYTNiNjQxOTI5NmU1ODRiZjdiZGE1MjkwMTJjNTE1ODQ5ZDc5N2Y3MSBweTNrCis4NDQxNSAyNWVkYjZmNDM4YjkyNmQ5OWM5MWQ3ZTkzYWJiMzRhMWQwN2MyNDVmIHB5M2sKKzg0NDE2IDUzOGFlNjIyNGE1ZWI1ZWZlZDk4ZjdhNThmZjk5ZjZkMDljYzEzMDYgaW1wb3J0X3VuaWNvZGUKKzg0NDE3IGQ3OTIxNmZjMjFjZTc1MTE5Y2I5N2ExYjUzZGIxNjZmNDQwYzZkNzEgaW1wb3J0X3VuaWNvZGUKKzg0NDE4IDgyZWFjM2MyYzY5N2RmMGExMGJiMmYwZjY2YTJiNGU3YjI1ODdlODUgaW1wb3J0X3VuaWNvZGUKKzg0NDE5IGVkM2Q4NjFjNDkwY2EyZmM3MDQzZGQ3MTk0MmVjNTRmZTU5MTc2MjcgaW1wb3J0X3VuaWNvZGUKKzg0NDIwIGEzOWJhN2FjYmUyODcwNGEyODIxNTk0OTcyMWJlNjZkZDZmZjkzNWEgaW1wb3J0X3VuaWNvZGUKKzg0NDIxIGU2NjBlN2JkNzk5ZDcwZmNhN2E3MmZhMzRkOGY0Y2Q4MjNlODIxNmIgaW1wb3J0X3VuaWNvZGUKKzg0NDIyIDgwNjQxYzdhNmY0ZjljMjRmZmVmZWNhYzA3Njg0NzE5YTBkYjRhYjEgaW1wb3J0X3VuaWNvZGUKKzg0NDIzIDNkNzg1MmI4NjEyODRkOWM2NzE3YTVlZWI4NTA5NDYwZjU0ZGExNmUgaW1wb3J0X3VuaWNvZGUKKzg0NDI0IGIyMWZkOTRmNGZiMzdiMzM4MTg2MzhmY2NmMTAzMTIwNTlmOTQ3MzUgaW1wb3J0X3VuaWNvZGUKKzg0NDI1IGYwZDBhMDcwZjEyOGYyYjcwZmFmZDhhMzUxN2ZhZWY0ZjRhNWJjMWYgcmVsZWFzZTMxLW1haW50Cis4NDQyNiA5M2Q2YWQ4NTIzNTM0MWRmYzIxN2NkOGU0ZDdhYTdlNjc1MWY0ZTMyIHJlbGVhc2UyNy1tYWludAorODQ0MjcgODIyMTFiMTg1MGQ0ZGEyYmMzZDcwMmYxNmE0ODU4Mjk1ZTQwY2RjMyByZWxlYXNlMjctbWFpbnQKKzg0NDI4IGRjYjJhYTQxY2Q3ODBhMDAzY2Q3ZDEwZWQyZmI1NWI2YjEyNTliMmIgcmVsZWFzZTMxLW1haW50Cis4NDQyOSBhMGQ4ZGUwNGMzYTgyODUyYmI4NzdmYTcwMjRkZjY1MTdiNmI4YmUwIHB5M2sKKzg0NDMwIDFmMDRiMDA3NmZkODE1ZTM5NGQ3YmM0YmY3ZjBmNmFiMGFiODYyZjggcHkzaworODQ0MzEgYTdjYWRkN2IzNGI1MjZmMDI3NTdkMzQ5YWEzNjlkYTUzZmEwNDU1MyBweTNrCis4NDQzMiA0N2I5M2NkYTkxZGY1YjJiZDJjOTdkNzA0ZTAyYTYyNWY4YmM2ZGZhIHB5M2sKKzg0NDM0IDgxYTlhYzczZDYxOTYzMjlmYjIwZWQwOGMwMTRlMWQ5NDk5M2ZmNTUgcHkzaworODQ0MzUgMDI2MGUwNGQyY2ZjODI5ODkyYjgyMTg4NTdlOTZhY2M0OWQyZTYxYiBweTNrCis4NDQzNiAxMWZjNzk4YThiNDMyNzIyZTA5ZjZiYTBiNDc4Mzk2YTk0Y2MxMTE5IHB5M2sKKzg0NDM3IGJkNzQzNWE4NzA4YjYzN2VmMmZhMmI4YmZkNzM1ZDU0ZGJiMDlmZDEgcHkzaworODQ0MzggNTVkYjYwZmNhYjU0MjQyNzBiNWUxNWVmNWY1NWIwYmM2NmY2MWEwZCBweTNrCis4NDQzOSBiOGNmYmJmZTE4MzkwNjdlNzVlMmU3M2UxMDgxYWI0NTU3MzAyYzAyIHB5M2sKKzg0NDQwIGQxYzZiMWFiNWJhNzg1NDA4MTcyNGVhNWQ2ZWM5OGExNzc1YjExMTEgcHkzaworODQ0NDEgOGI5NGYxNWNiNjUwYmExYWFkZWIyNTkyMDBmNzM2Y2IxYTBmNmJhOCByZWxlYXNlMzEtbWFpbnQKKzg0NDQyIDRhZDdlZmQ5MDliY2U5NGJjMmZhMWVlYzMyMzY0MTM0NGQ0MDY2YTYgcmVsZWFzZTI3LW1haW50Cis4NDQ0MyAxNmNlZmRmZWQ2ODIwZDJjNTY0NzYyMTk4ZTE0OGRhYzI5YmRiNGQyIHJlbGVhc2UyNy1tYWludAorODQ0NDQgMTZkOGE0ZTk0ZGQwODcyNDk2MjJhZjliM2RlYTg1ZjU1YzYwNWVjOCBweTNrCis4NDQ0NSAzM2NmYWEzMmM4ZTgwZTc1ZWM1OGJlOWRiMjViMjE4NjJhYzhjZWRmIHJlbGVhc2UyNy1tYWludAorODQ0NDYgOGRiZDMxNmJlYmRmOTg3MjUxZGNhMjJmZTJiNjA0NzRjMDllMmNiMCByZWxlYXNlMjctbWFpbnQKKzg0NDQ3IGQ1NmIzY2FmYjFlNjU1ZWZiODFjODU2ODg0NDllZGIyZTYwOTc5N2QgcHkzaworODQ0NDggYjY1ZDAzNzFhNzMxNThiNGI5NmU2MTdmMjgwODkwM2ZjNTk2MGUyZSBweTNrCis4NDQ0OSBiOGVlODA4NjNkNjNmYWI4MDdmZDdjMzlmNTlhOWNjY2JlYmEzYzU1IHB5M2sKKzg0NDUwIDdkMTc1MmQ2MjA1MGM5YTMzNjBmZTg0OTI2ZWIwOWMzYmNjMmZjOWYgcHkzaworODQ0NTEgNjMzMTY2ZDRmYzEyYWQ5MmE3ZDhjMWM3OWU4ZjNhYjdkMWVmMDRkNCByZWxlYXNlMzEtbWFpbnQKKzg0NDUyIDgzYTZmZmYzZjY4MzM0ZmQ3Y2JkYTRjMzE3ODFjMTAyNTExMzZkNWIgcHkzaworODQ0NTMgMTI3MDQ1MWY0NjA0OWQ3YTlkOTE2NmVjM2JjMDNiZDBiMTk0YWU4MyByZWxlYXNlMzEtbWFpbnQKKzg0NDU0IDM1Njk5ZjM4N2RhNmU3ZDJkNmRkNjc2YjE4YzY0ZWMwYTcyOTI0YTcgcmVsZWFzZTI3LW1haW50Cis4NDQ1NSA5OGYzMzdhNjk1N2MxM2M5MDhlZGEwYjllZDRkNzNlOTUyYjU4Yjg2IHB5M2sKKzg0NDU2IDcyNjQwZTcxMTM0NDE4YTcwMDY1YTc1NjM0YmMxZGU5ODQ3ZGE4NmUgcHkzaworODQ0NTggNWUzM2IyN2M3MWE4NjE3MjE5NzU5MzRlOGJmZTNjMDc1ZGYxNmIzZiBweTNrCis4NDQ1OSAyMDI3NDdkYWUzY2ZhZWI0ZDY4YjA4MTgxMTI0ZTAwMjYzMzQ4MWZmIHB5M2sKKzg0NDYyIGJhODdjYWVlY2I5MTRmN2IxODM2Njc0NDhjOTcwYTY4MzY3NWQ3NzcgcHkzaworODQ0NjMgYjdjYjI3NzczZTcyOTFmNWYwNjQ1MGI2YTAzNTZlMmUyZTZjMDVjMyByZWxlYXNlMzEtbWFpbnQKKzg0NDY0IDcwMDE5YzVjZjM1ZjhlYzdjYjNmZTI5MmMzN2M4ZGUzNjVkODdiOWEgcHkzaworODQ0NjUgOTg4NzE4ZTlmOTNkMTVlMmE5MzdhNmUxYzg2YzBkYjQyZmQ3ZmJjNiByZWxlYXNlMzEtbWFpbnQKKzg0NDY3IDA2ZTVmZDQ5NTllOGExZTQwNDA1ZjBkMmY3YjJjYjUwN2MwOTRlMDcgcHkzaworODQ0NjggMWY0NzIwNmQ1NzdmMDdhY2UzZDIxY2QxNTdhZWE0ZDIwMDhhNjk1NyBweTNrCis4NDQ2OSBmOGJhOTU1OGFkYmY5MTViYTJmOTIzNzAxNDJkMjhiYzViNDM5YjYyIHB5M2sKKzg0NDcwIDNmNzc2NGM0MGMwYmZiOTUyYTk1NWQ3N2M2MGE5NjllMGY2NDZiZTMgcHkzaworODQ0NzEgZGJjOTU3NjJjZjU4NjM1YzY1ZDE3MTVkMTE4ZWI3YjRhNzI2YTUwMiBweTNrCis4NDQ3MiA1MjRiNDQ0YTgwOTUwOTVhNmQ5Y2JhYzFiZTIwZTQ0MGQ1NTUzZGJmIHB5M2sKKzg0NDczIGU5MmFkYTY0MmRiZGZkYjcxN2QzM2M4YWIzOWRiZTc3YTEyMzllZGIgcmVsZWFzZTMxLW1haW50Cis4NDQ3NCA4OTVhZWI0NTk1YzJmNzBlNmFkNTA2MTdiNGZiYjJiYTFiMTk1ZTUwIHJlbGVhc2UyNy1tYWludAorODQ0NzUgNDcyZGNmNTBjYTcxYzg3ZmM4MzFiOTk5N2ZmYjc1NTAyZmJmZjJjMiBweTNrCis4NDQ3NiA1MzMwNWJhZWY1ODhkODU3Y2UxMGIwNjIyYzIxOGUzYzM0YTU1YzdmIHB5M2sKKzg0NDc3IDQwNTJkM2UyODY1YmY4YTFhZjQ3YWI0NzkxN2MwMGM5OTExODFjYWQgcHkzaworODQ0NzggNWU1NWU5NWQ1Yzc3NGI0ZmMyYzEyMzc1MTNmZDY1OWQyMjNkOWY0ZiBweTNrCis4NDQ3OSA2OGZkNDMwODU5YTQ5YzNhODM3ZTFlOGExMTc5NmE1NTExYzhhMjZhIHB5M2sKKzg0NDgwIGVhNmQwODJhOWNmODA4NjdjYzFiMzIwZjFmZjI1YWIxMDE5NzhkZjMgcHkzaworODQ0ODEgNDBlYjU5ZTJmMmQzNTA2ZmRlN2RhNWE3NWY5ZTIyNTkwOGEyNjE4OCBweTNrCis4NDQ4MiBlNWFlMDNlZjdmYzEzYzg1NzJlNjM0NGEzODQ3NDg2MWRhZmVhOTExIHB5M2sKKzg0NDgzIGRlOGQzZDc5MWU2YTdmNDFjYjg1YzNlODA5NmIwYWIwMDc2MmQ2YWUgcHkzaworODQ0ODQgMDMyNTRmYzgzOTAxMTYzZDNjNDkzYzRmNDBjN2QwNTgwZGQ3NjM2OCBweTNrCis4NDQ4NSBlOWNkMTVkNTM5ZTFhM2ZlZGEwMDVjYmI5ZWNiM2ZlZTI5NDVlMjcyIHB5M2sKKzg0NDg2IGIyYjI2MmM1ZGFhODYzMDczYTAwYzJiMGZmNDQ5YTA5MWVlNzIwMTYgcHkzaworODQ0ODcgYjcwZDMzZWVmZDk2MGU0ZDBjMmQ2YzM0OGJlMmQ1NjdmMjU5YjkyZSBweTNrCis4NDQ4OCAwMGM2OTU3Yzc3MTkwYjI5MWJkYmFjM2JhMzRmYzBhZTA5YjcwZTZmIHB5M2sKKzg0NDg5IDkwZWI0Yzk3M2Y1MmFmZjUxYTVmYTlmMTM1MjIzYjY0M2M4OTZjNzYgcHkzaworODQ0OTAgMGFmOTRlZTk5YTQ4NGJkYzI1MjFiM2QyYmE3MTE5NzQxZTU4NzQzMCByZWxlYXNlMzEtbWFpbnQKKzg0NDkxIDkxOTdiYWU2MTlhYTQwYjI1OTgyYTU0NGQ0MmNlMzQ3NDY4MWQ2YTggcmVsZWFzZTI3LW1haW50Cis4NDQ5MiBlZDQ1YTI2ZjY2NjRkYTcxOTg2MjM0YWJkZDU1MGQyNjIxYzcyNmQ3IHB5M2sKKzg0NDkzIDQzMzE5ZTI5MmQ2NGJhMTlhOTI4MDcyN2FmNzgyZGMzNmEwNWEzMGEgcmVsZWFzZTMxLW1haW50Cis4NDQ5NCA1OGI4MTAxZWFjMjM4ZTYwNTNhZDE4MjVhMTk2ZDNiZjY0ODBiNDlhIHJlbGVhc2UyNy1tYWludAorODQ0OTUgMGY2ZWU1OWMyYTc2M2E4MmE3NWFlZGU1OTUxM2I0MTk4OTdhM2VjOCBweTNrCis4NDQ5NiBkYWJjMTE1MTE2YmQ3NDhkMjExZWQ4M2ZmMGI5ZjIxODUwNzllNTVmIHB5M2sKKzg0NDk3IGQyYjhmMTEwMzIxMjRiYmIyNzIzY2Y3MjIyMzU2OWRjNmVmNTA5OTYgcHkzaworODQ0OTggZjk5NGU2ZmQwNjgwNjIxNDI0MjkyNmY2ODNlZDgwM2U2M2UzYzgwZiByZWxlYXNlMzEtbWFpbnQKKzg0NDk5IDhlY2UyOWM4YmJhMjhlZDVhNmUyNDFjNGQwZThiZTRkMTQ3MmRiMDggcmVsZWFzZTI3LW1haW50Cis4NDUwMCAxYjVlZTZlODQ1Y2RmMDE3MzdkODk1NmY5ZTc3ZjM2ZjVjOTI1NzA1IHB5M2sKKzg0NTAxIDcyNTIzMTIxMTI3MzI3YzAyMjA5NmQzMGU3YjI4YTRhNWE4OTQ5NWQgcHkzaworODQ1MDIgY2U1NDZhMWI5ZmVjMWY2MGJlZGIzZjMxNDZkMDZmMDk4ODA1Y2Q3ZCBweTNrCis4NDUwMyBhNDE1Y2Y5NGM3ZGE3ZjM1OGJjNDk1ZWY4YWU1ZDYzMTE2NmM4YjI3IHJlbGVhc2UzMS1tYWludAorODQ1MDQgNTk5N2FlMmVhYjM3MTkxNzg3NGI3M2QyNmEzMTMzYzdjM2EwYjI2MiBweTNrCis4NDUwNSBjM2FkODgzYjk0MGJlNGVlYWI3NTJiMGVhYmRlZjZkZjYwMDljMDA1IHB5M2sKKzg0NTA2IDc4ZWE0NDIyZGY0YzJjOGQ4MTNiZDM3YzU2MDc3MDU5ODBiZjZjYmQgcHkzaworODQ1MDcgMjNjZjU0MTg2ZjU2NTMyMDY5Y2Y4MzkzNzc0OWU4YThjODY5MDRhOSByZWxlYXNlMzEtbWFpbnQKKzg0NTA4IDk4MDgzZjg3NjQ1NTQ3MjYyZDk4MTYyN2M4YjA2NDFjZWRhZmMzNjIgcmVsZWFzZTI3LW1haW50Cis4NDUwOSA5NzIwODM2YWEzY2I4OTMxNTZkNDRjMzc3NjlhZDU3NGM5NTA4N2M3IHB5M2sKKzg0NTEwIDYxYzQ0NzkzMjM4ZDE3MTRlY2QwZjY5ZmRkNTFhOTA4YTI0ZmMyZjAgcHkzaworODQ1MTEgYjMyY2JmYTk2NzM5NGUzMzkyZWM0NGIwMWY1N2E4Mzg1YmJiYmViNyBweTNrCis4NDUxMiBjNzhlYjAxNmQxYzUxNDg2ZGE2MTFmNDA3OTU2NjFmNzE1ZDY3NzVlIHB5M2sKKzg0NTEzIGM0YjM0YjJhNWNjMGVlZWI1NzI1YWFkN2MwMDM3NzdkYzMwMTVkN2QgcHkzaworODQ1MTQgMGIwYmQ4MTAyODkxYmI5M2U2ZWFiZjYwNTUwYjYzYzYwMzc4NTEyNiBweTNrCis4NDUxNSA3YTM0ZGVmMzVkZTc0YmQ3MmZiNjVjMWFlY2UzYzI4Yjg2ZTA1NGNhIHB5M2sKKzg0NTE2IDNjMzY4NDlmMDYzOTdiNWExZjQ2MjA0Y2QzNTQ1NGI5MTFjNjczNWYgcHkzaworODQ1MTcgYThkNTRlODAyM2YyMWE2MmYzYjM2YmEzODJmMDRkYmJkYWMzNTc5YyBweTNrCis4NDUxOCA4YmIxNjJiMDE5MjZmNWFmOThiZjQ5OWJlYTNlNjg4NTFkOGRmODk2IHB5M2sKKzg0NTE5IDI2M2IxMDc3YWI5NzViM2RlZTA5ZTY2MDMyZWM2MGU5ODkzYzAyYzUgcHkzaworODQ1MjAgMGQ4NjE0MDc1NWYwZDQ5NTM5M2U4ZjY2MTAxNTVmZjliZGVlYThmZiBweTNrCis4NDUyMiA1NmRjMmE1YWYyMGExYWVkYmVlZTQ5MDljYWJkNmYwMTVkNTQ3OWYzIHB5M2sKKzg0NTIzIDYyMDk4NzUxZGE2N2I1ZWVmOWJiODViMjE1NzEyMmEyMmRjMDcxNGQgcHkzaworODQ1MjQgMTYxMTkxMjkzMjRkNDFmYWYzNDQ3YTM2OTMwMThmMDUzMjUyZWQ3NSBweTNrCis4NDUyNSA3ZDliNGUwMThjNjJlOTIzZGNlOTUyZWU2OGUwMGVmMmVhYjkxOWMwIHB5M2sKKzg0NTI4IDc4YzRkZGE3Y2RjNjM3MzdmYTI0ODdlMTUyNTFkZjFlOTVhMmI4YzAgcHkzaworODQ1MjkgNTEwNDhmNjI3NmNlODRhM2M5OTE5NTk0MWQwNTBmYmEyYzBlZmVkMyBweTNrCis4NDUzMCBkYzU4OTJmNzNlMDM2ZGY4NDYwY2RlYzAyY2Q3YTFjYmEyYzA1MmVkIHB5M2sKKzg0NTMxIDRmN2I1NmI3ODcyNTI1NjE3YzU2YjdiZmM4NDk3ZjJlMzBkMjFhNzEgcHkzaworODQ1MzIgYTc1ZTk4OTM3NTQyYmM1MzIzNDMyOWQwNmM0MjE1N2U3ZWUwY2M2NiBweTNrCis4NDUzMyBiMGFiODMyZjg5MjEyODE4ODJlNGUyMTdmYzBkMzMwOWEwOGZlNTMzIHB5M2sKKzg0NTM0IDc4MTRkYzlmMzFhMjVjOTM3N2VjNjZjNTNlMzE5YzI1YTY2NDFiNDIgcHkzaworODQ1MzUgN2UwZDg2NmNhODcxNDgyNGNiMmE5ZjhlNTRlZWJjODU5ODM4ZTc2OCBweTNrCis4NDUzNyA3YTdiNTMxYmNiNjRkMTI1ZGQzYmIwMWY0YjcwMzFhNzAwNDU5OGE1IHB5M2sKKzg0NTM4IDc4ODc5NzFkZGE0ODNiY2JmZjIxOWYxZWJhNTlkMzBmMGVlNDlmMWQgcHkzaworODQ1MzkgMjEzOTE2MDI4N2ExMWEyZDA2ZWFhYjE2MjJlYTkzMGUzMTExNTY0ZiBweTNrCis4NDU0MCA1NmQ0MzczY2VjYjczYzhiNDUxMjZiYTdiMDQ1YjNjN2IzZjk0YjBiIHB5M2sKKzg0NTQxIDFkMGQzM2MwNTE1ZWU4YmM2ZmZlNjc0ZDlhMWMyZWY2OWM5MTA1M2IgcHkzaworODQ1NDIgNWM5OWY4YzkwZTY2NDE2NTRhMzNkMzc3ZWYyMGJhMzNkODc4OTE5YSBweTNrCis4NDU0MyBjMzQ4OTI1NzViYzBlNGFmMTExMDA1MTAwMGY5NzZhMWNiNDMxMGNlIHJlbGVhc2UzMS1tYWludAorODQ1NDQgODdhYTYyYmQxNzE1NmU5ZTI4OGFkYzAyMThkNzNhZmFmYzMzMzU3YiBweTNrCis4NDU0NSA4ZWY2OGViZWMwZTFlMmU2YjE2OGZjMTI3ZjY3OGI1Y2E0OTdkODFmIHB5M2sKKzg0NTQ2IDY5Y2IwOWYyNjQyNDBjYTNjMzAzMTc2MGRmM2ExMzRkNjBmMjQ1NTAgcHkzaworODQ1NDcgZTU1OGFjNDI1YTUxODViZjFiNTYwODMxMTYyNGQwOTU2ZWYxMjYyNCBweTNrCis4NDU0OCAwNzEyMjVhZjY0YTNkNzA1NmIwZDUzNDZhMDBkZTk3YWMxMjhlMzY1IHB5M2sKKzg0NTQ5IDY1N2Y3OTUxOTliOWU3ZTM0OTEyN2VmZmMyZmZlMjk3NjM1ZTRmZDMgcHkzaworODQ1NTAgNjMyNGQyMzk2M2E3MTkwNDVjNTM0ZmNiMTEzYTQxZmQ2MmYyN2U5MiBweTNrCis4NDU1MSBkMzg5Mzc0NzFmODk4NGFjOTYwNWE5ZTU3YmFmYjIyYzcxZGM2MTcyIHB5M2sKKzg0NTUyIDM5YWFhMmE3ZmQ0YmY2ZWEyNTY1ZTQzY2QxNTgyYjQxNmIzM2RjZTYgcHkzaworODQ1NTMgMWQzNzRlNWJhMmYxMzJlYjk5YjdkNTVjNmRjNDExY2UyZWU3ZjYwOSBweTNrCis4NDU1NCA0OTQ0MWU4OGNjYzE0YWQ0OGZmYzFjMjFhMzY0ZDExNjFiNzY5NThlIHB5M2sKKzg0NTU1IGQ5MzljODBjNjY2YmQzNzM4YjQwNzc5OWUyNzZkNWZhYzQ4ZjMxMTEgcHkzaworODQ1NTYgMDYyYWI1MTQ3NDg3NDU5N2NlYjY1ZTEzYTM4NDQ3M2E5YTFhNzc3MiBweTNrCis4NDU1NyAwNDdhOWQ3Y2EyNDFkYzFiOGNmZjZiYmFjOGQwOTNmYjhjNDhkY2VmIHJlbGVhc2UzMS1tYWludAorODQ1NTggMmMyYTM4ZTBjZjMwNzY1NTFjYWM4NTc3ZDE2ZGVhZjRiMWI5YTMzMyByZWxlYXNlMjctbWFpbnQKKzg0NTU5IDliZGM1OTAxMjA3YjhjZDgwZjczYzc1ZGM3Y2M1ZWM3YmZiYTQyYTIgcHkzaworODQ1NjAgNGExNDU1ZDM2OGZmNWZmYWRjODE0ZjdlOWQ2YWJmNTVkNzNhMTJiMyByZWxlYXNlMjctbWFpbnQKKzg0NTYxIGY2ZGZkNmM1NjNlMTE1OGE0ODZjNmYzYTY0ZWRkYTUyZTdiOGY4YmUgcHkzaworODQ1NjIgMjE0MDU4MTJmMzEyNzBjZmZhNDYwZDdkYzQzNTU0ZWFiOGNjYWE1ZiBweTNrCis4NDU2MyAwYzBmMWQwZWI3N2U5ODBmNzBmYjQzZWNkODNkODY3MGJkNDU2ODU1IHB5M2sKKzg0NTY0IDU0MTMzODc5NTk1MDcxMTlhMTFmNjk5ZmI2NDg5YjNmZDE5MGVmMzkgcHkzaworODQ1NjUgZWYxNmI0Yjc5ZDU0N2Y2Mjk4OWYyMGE4ZTRjNGU0Yzk4Mzk5NjZlYSBweTNrCis4NDU2NiA2YThiNWE2MThlN2FlZjBjNGY0NmFlMjQ2MzQwMDBiZTZjYWVhY2EyIHB5M2sKKzg0NTY3IGIzMDYxMDViZjgzZGZhMjY1ZWZjMDI1YWNmOGE3ZTIxN2FiOTM5NzYgcHkzaworODQ1NjggMTI0N2ZhNzUxNzcyMWFkY2E3ZTUzNTQxYWIxNzM3MTBlY2E5YWNjYSBweTNrCis4NDU2OSBmYWFhYjVhNjU3ZWI1NDliMjE3ZGRiMGQ0YjJiM2IwMDljMTAxYTI2IHJlbGVhc2UzMS1tYWludAorODQ1NjkgMTY5MmMwYjYwMzE3NjQxNTYyNzNmMjA5Mzc3M2FlNzgzYjk1ODczZSByZWxlYXNlMjctbWFpbnQKKzg0NTY5IGNkOTE4YWM3YmQ1NTRjODk2ZjU5M2I5NmJiNTk1NGQyZmEyY2U0ODQgcHkzaworODQ1NzAgNTRiNzk2NGRkN2E5NWUzMDkwMjEwMjY2NTdmYmVmMGQzN2IzYzI4NiBweTNrCis4NDU3MSA1Njc4NzU5YTgwMDlhNzA3ZDg1NmI1MTkyNjU5ZDNmYWM3YmFjNjBjIHB5M2sKKzg0NTcyIDUzY2Q4ZWNkY2U4YWU2NzFhYjU5NjIzN2ZmNmQyYWY3OTU1NTliMjcgcmVsZWFzZTI3LW1haW50Cis4NDU3MyBiMzJmZGE5ZjcyZmY5NWQxNGQxZTBjYWNlZWEwZTFlNjQ2ZTQ5YmZkIHB5M2sKKzg0NTc0IDY1NjQyZjA4NWM1NWM5NDVhOWJiMDUzMGE0OTBiMjkyMGQ0MThlY2MgcHkzaworODQ1NzUgMTFiYTYzOTdlM2E0ZmU0NzQ3YWUxMTU2YTA3YzE4NmY4ZDEyNzE0YyBweTNrCis4NDU3NiBjMmY4NDE4YTBlMTQ2MTM5MWRmNjEyYzVmZDIzODg3MzIzNDdlMmM2IHB5M2sKKzg0NTc3IGUwN2M0NDgzYWQzYjZmYjE1MTVkNzdjODkwY2MyZDkxMGU4NWQ2NDAgcHkzaworODQ1NzggOWNlZDdmMmYyMGIzZjFkNzNhYzczYzE5ZGMxOTEwNThlNmYyZGRmZCBweTNrCis4NDU3OSA5NGUxZjIzNmM4OGQ3NzkzZjZiYjE3YzRjYzllMzJmMzA1N2QzNDJiIHB5M2sKKzg0NTgwIDZiYTIwYjkwMzlhZTY5OTAyOGY5ODI0MGY5MWEzYTQ4YTA2ODYxNzggcHkzaworODQ1ODEgZTgzYWYxNDFkZmZkYWE4ZjU1YTI3ZWMxNmM0NDAyMzk2ZmE4NThjMyBweTNrCis4NDU4MiAxYTFlNzI1NGQ5NjU1NjdmYTRkMWU2YWMxZGUxNWQyM2Y4YjExOTA4IHB5M2sKKzg0NTgzIGU0ZGUyMTc2Zjk4ZTMwZjRjNGU4YjBhYzdiNWM0MjU5YTBiZmY4ZjAgcmVsZWFzZTI3LW1haW50Cis4NDU4NCA0YWM4YWU3ZTgwMjJjNDRlY2NlNzFlYjkwMWUxZGYzMDY5YTFhZTY5IHB5M2sKKzg0NTg1IGFkZmExZTQ4ODczNGUyY2NlNTcyYjhjMjUxNTQ4ZGRlOTljODYxYTQgcmVsZWFzZTI3LW1haW50Cis4NDU4NiBjMjE5OTE3NWFkYThkZTgxZjJjZTFmYWNhNWJkYTY1ZmM4OTMyMWMxIHJlbGVhc2UzMS1tYWludAorODQ1ODcgNjA5NWVhOWRjZmY0MDA5NTAyMGNlZDgzNTI2NDU5YWU4NTM4YjZjMCBweTNrCis4NDU4OCAxYzIyYzFlNDUzZDRhMWNjZTc4NTM4NGM4Mzc4ZGYxMGQyZTFhMjQ0IHB5M2sKKzg0NTg5IDg0YzI0ZGIxMzY3N2M3NDAyMTBhZjJhNDZjODMzNzRlMWI1YThhOGYgcHkzaworODQ1OTAgM2U1YTg5Mzc2ZGY1NDQwNGZjZjUxZjA5NDU5YjA1NGMwNGQyNTRlYSByZWxlYXNlMzEtbWFpbnQKKzg0NTkxIDc0MzJlNTA4ZWI2NmE5ZTBjOGFkYzQ0NjZlNWEwMjVhNzhmN2NjODcgcmVsZWFzZTI3LW1haW50Cis4NDU5MiA0YTNkZGI4NjJhNzJjYWZkZjVhYTgzMWIwZTVlMGZmMThmODExOGQ1IHB5M2sKKzg0NTkzIDVkZDFlNTk0ZDkxOTVlYjUxMjkwODUxYTAxYTNhOGQxNzkwMTgxMWQgcmVsZWFzZTMxLW1haW50Cis4NDU5NCA0YjY4ZDQ3MzQ4YTRkYWI3ODU0NTYyMjkwODdhMDY2MjQ3NzljNGE2IHJlbGVhc2UyNy1tYWludAorODQ1OTUgNzcwYzNlYzA1Njg1NmI0NDg0YmIzNDYyNzgyMzk0ZTQyZDNjM2E1MCBweTNrCis4NDU5NiA4OWZlNTE3OWFlYzVmMDBjNTgyZjk5MTkzOWFhMDE0OTFmZGZkNzRlIHB5M2sKKzg0NTk3IDkxYzdmNDRlNGJlYTlkY2FmYTE4M2E0MmViY2Q2MDNiMDMyOGVlY2MgcHkzaworODQ1OTggYjJmN2NmOWM2Nzc2MzU5ZjI3NTE2MGZhZDE1M2Q1ODhlMjE3MzE3ZiBweTNrCis4NDU5OSA2M2NlZWYwNDUzZjQwNmFiZDIwZjljNGY1ZjIyMTljN2ViMzg0MmI1IHB5M2sKKzg0NjAwIDI0MDBmNTVlYTMxMjUzMDg4ODg4NWUwY2Y4Y2Y4OWMwMjAyNWZhNjIgcmVsZWFzZTMxLW1haW50Cis4NDYwMSA1ZDczYjAzNjU3M2I3ODdmNTAyMDE1NmE2ZGQwMzVmYTU2ODI4NGVlIHB5M2sKKzg0NjAyIGQ2ZDRiODQ2NGI4Y2Y2ZWIxMDI4NGRlMTVhZjliYmMwMTM2YzEyNmMgcHkzaworODQ2MDMgYWY0MTRiMjlkNDY3ODcxM2MyNGY5M2RiYjFhYTk3Zjk4Nzg4MzUxYSByZWxlYXNlMjctbWFpbnQKKzg0NjA0IGVmMGEwN2Q1NGRjMTdkMzBiODQ5NTA2MjE2ZDQ0MmQyMWZmYWUxYjYgcHkzaworODQ2MDUgNGM2NGU2ODhmNjY1ZWZkNjI1MDQ3MTE0Zjg3NjQ3MDQ3M2Q5MDU0MSByZWxlYXNlMzEtbWFpbnQKKzg0NjA2IGQwMDhmNDA2ZGM5OGM5ZDFjM2I3ZGRkNGQ2NTFjNjllNTE0YzY2NjggcmVsZWFzZTI3LW1haW50Cis4NDYwNyBjMmQ2ZjBjZjkyNmEyZjNlM2ZhMDBhMTY2MTJkOTkwZDNlMWE1YjVkIHB5M2sKKzg0NjA4IDk2MGRlMDEwMDgxYjc2MzEwM2E5NTc0YWQwYTAyZGI4OGQ4MDA1OTkgcHkzaworODQ2MDkgMzg0YWVlNjI3M2U4MDViNjk2ZjAzM2E1ZWZlZGQ0MmQ2OWM4NWYzZCByZWxlYXNlMzEtbWFpbnQKKzg0NjEwIDAzYTZmNzgzOWQ2ZDM1MzJmZWU2YmMzODEzMTE2NjEyM2E3ZjJlYjggcmVsZWFzZTI3LW1haW50Cis4NDYxMSA1NThmMzM4ZTEzMjA4MTE3N2VjNmIwYmUzNWE5NzY3YzQyOTI3YWFjIHB5M2sKKzg0NjEyIGUwNjIzYjZiNDNiNjM3YTMyMTA1YzI5MmY4ZDI0YWZkZTljOGY2OWUgcmVsZWFzZTMxLW1haW50Cis4NDYxMyBiYWYxYTQ4MmI1N2Q3NjZmN2M1ZTY1Nzk1MTU2NTQ1OTRhMTE0YjA3IHJlbGVhc2UyNy1tYWludAorODQ2MTQgODkyM2UxNDkzYTM0NDkzNmVjYjdhOGM5NzMwNzNkZjM1NGY4ZDUxMiBweTNrCis4NDYxNSBkMjdkNGJkNDg4ZGM4Mzk0NjRlZTBjNTJlMDI0ZTZiOGVhMWU0NTU0IHJlbGVhc2UzMS1tYWludAorODQ2MTYgMGZkYTgyYjFiZmJiYzUzOGRhNjY5OWJlNWNjNDJkMTdjN2FjY2Y0ZSByZWxlYXNlMjctbWFpbnQKKzg0NjE3IGQ1MzMxNzEyYjUwOWQ1N2Y0MjVlMWEwZDc0MDRjOTE3NTRjNTllMDAgcHkzaworODQ2MTkgNzlhMTRkMzY4NTQwMWMzNTE5ZDg5MTg1YWRjZWE2ZmIwNzZjY2E1ZiBweTNrCis4NDYyMCBlM2VkZDJmOWJiNmFjMzA2YzE2NGIxYzAzNTc4ZDRhZTYyMGUxMDhmIHB5M2sKKzg0NjIxIGU2MGVmMTc1NjFkY2VjNDI2YjIyMWVhMmIyMmMwOTJjYzFmM2UxMmIgcmVsZWFzZTI3LW1haW50Cis4NDYyMiBhMGI0YjJkZmQ5ZDVhODEzY2M0NTA5Yzc0MDIxYzJlM2QxZWMyMTRmIHJlbGVhc2UyNy1tYWludAorODQ2MjMgODUxNjcyNDk4ZmU1MzRkYjZlNjU1N2JmMTE5NWExNjM2MGJhYzgwZCBweTNrCis4NDYyNCBjNDdmZjNhNTNhNGE1MWFhZTAwNmYzYTdhYjI2ZjNlZjhiMWRiYTY3IHJlbGVhc2UzMS1tYWludAorODQ2MjUgNTc1ODQ0NDI3YTk1Y2ZjMTQxNGZmMDA0NmRhODQ5YWQ2NzMyNGM4NiByZWxlYXNlMjctbWFpbnQKKzg0NjI2IGFhNjZkZjc3MmUyMzc4NDdhMzM5ZTFhM2VkZTQ2ZjkxNWJhODRhYjQgcmVsZWFzZTI3LW1haW50Cis4NDYyNyBmOGY2NmViY2Q1YjFlYjcxYTNjODJhZmIxZWFiNjk5MWVhYzVjNzBkIHJlbGVhc2UyNy1tYWludAorODQ2MjggZGM1OTg2ZDBlNWE0NDMxNmMyNzJjNzgzYWQxYTNhYjRjYWVjZGYzMCByZWxlYXNlMzEtbWFpbnQKKzg0NjI5IGE0Y2ZkNWI1ZGY5NjY5NzUzMWM5ZTg1MzhmOGZlYjY2NzBiMjg0MjUgcHkzaworODQ2MzAgNDViMjNmM2Y3ZjZiOWVjY2Q0NGVkMjM5NTk4NmVlMGZkNDg3M2NhMiByZWxlYXNlMzEtbWFpbnQKKzg0NjMxIDI5N2Y2NmNiMzc2NDRhNDUyNzA4NzQ5YTQwMzY2MmFkOGQ3ODBlMWIgcHkzaworODQ2MzIgYjE4NjVjYTdiNjVjMTQ2Y2UwZmM1YTJiZTRlMWEyYmMzZDkyZTM1NyBweTNrCis4NDYzMyA3YzJlYjViNmNjNThjNjRiYmUwNzExNmQ4Zjk4NWUyZDY5YTdiZTMxIHB5M2sKKzg0NjM0IDg2MjdjM2VjOTcxMTI2ZjQwOTQ3OTFiZThkNTNmMGQ2NTFjYTg3NTMgcHkzaworODQ2MzUgYTJhZWRkYzE5YjY2YjVjMzhlNTIxOWFjMzFiNmU2ZTllMTI3YjhkMSBweTNrCis4NDYzNiBiMWNmM2Y3ZjMwNGNmMDg0ZGY0ZTE5OWUwMjJjZjdkZDdhM2E1MDk4IHB5M2sKKzg0NjM3IDEzMjIyNjZmOTYxMTVhZDUyN2MwNGVlNjExMGExZmJhNWJmM2M3MDEgcmVsZWFzZTI3LW1haW50Cis4NDYzOCA0NDFlOTRjZTQwODcxNmZhZDY3NWRkMDJhMTVhYzNmYjQ4OWI0MWQwIHB5M2sKKzg0NjM5IGNhZjBiNGIwNTY5ZWFkMDcyMjdiNjE0MjA3ZjJjYjhkMjU4NDk4MWEgcHkzaworODQ2NDAgYTU4YmY2NjcyNWY4NmYwYzBmODg0ZGJkYWNiMjcxN2Q1ZWFmYTFmYyBweTNrCis4NDY0MSBmOGM4OTZhZDc4N2Y4ZDA4YjM3MjVlNjRiNzFhZWIwMDUyNmI5ZmQ4IHB5M2sKKzg0NjQyIDJjNTQ3MjEwZjhjOWY5MmFlMWZhZGI3MjcwYzc3YjE2ZWMxYzI0OGEgcHkzaworODQ2NDMgNDYyZTBiZTNiNmM0NmY2ZjdmZTZiOTBhZTkxMTI1NzEyZDM3OGNiMiBweTNrCis4NDY0NCBjODg1NTBjYTBmYWZiNjRhZTU5OWNhZDA2NDA1M2E4ZTZjZjU4ZjRkIHB5M2sKKzg0NjQ1IDYzNjE5YjQyNWVjYWEzOTE0ZmZhNmNlOWQzOWNiMGVlNzFmY2MyMTkgcHkzaworODQ2NDYgZmVhODZjNWUzMzg1ODkwYTUzZTM0MGExNzBkNWExZjg0OWYwZDcxNiBweTNrCis4NDY0NyA3MWIyNjRlMWJiNzE2NDQ3NzkxMWIxOGM1ZDVlNmM2NThmZGYwZThiIHB5M2sKKzg0NjQ4IDk2NTllOGM0MDA3OWIyOWYyNmU1YmRkNDJiNzRlMjE4ZGJkZTdhMWIgcHkzaworODQ2NDkgYmE1NDA5NmI3YTQyODkwZWZhYjliOTE5Y2JkMGI3Njc2NjA0MTBiOCBweTNrCis4NDY1MCAzOGNhNjM1MTgwODVmNTc0ZTQwMTMyMDRjZDUyODM0MTc4NDYwODY3IHB5M2sKKzg0NjUxIGE1MWY0NjdmNWUxZTgwYjAwYTU5NDNiNDM1Njc2NjdiODMzMTdkZGQgcmVsZWFzZTMxLW1haW50Cis4NDY1MiBkMTNjMmY5MGMxNjlhYTc2YTJmMDY3NDQ3OTdjY2Q5OWE5NDQ4Mjg3IHJlbGVhc2UyNy1tYWludAorODQ2NTMgMDI3ZjgxNTc5YjRhMGFjMDFmNTYyZTVkYTY3MjU3YzE0YWE4MjU3OCBweTNrCis4NDY1NCBkNDkyNzE1NGI3N2I4ZjIzNjEwZGYxOWUxNDE2Y2JhYjY5OTM2ODU2IHJlbGVhc2UzMS1tYWludAorODQ2NTUgZmM3NmU4YzYxN2RjNDdjNzc5ZDBjMzk0OTc4YjI4YWIxZTI1MzJmMiBweTNrCis4NDY1NiBhZTQ3MDc5NDljYjI0NjA5MWZiYjYyZTYxOTA0ODNkNjIyNWU2ZjJiIHJlbGVhc2UzMS1tYWludAorODQ2NTcgMWI3ZWE0M2U1Yzc5NjdiNTUzNmU0Y2UzN2NlYzA5YWE1NDZiNTZiOSBweTNrCis4NDY1OCA2ZjE0ZjAyMzU5ZTgwYWIzOGZjZDI3NDVkYmMyN2FkMTZhNDBhMTU1IHB5M2sKKzg0NjU5IDg0MjE3YjJkOGMwYzA2Y2Q2OThmYTYwYzUyNmVlNDQyODdmZDlmMmUgcHkzaworODQ2NjAgYmVlNjgzY2FlNzFmYzc5ZGU5MGY4YjY4NmU0NjZkZWFmNzQ3MTBhMSByZWxlYXNlMzEtbWFpbnQKKzg0NjYxIGYxMjA3ZDlhOWIwN2MxMzZjYzkxMjJjMzFkODIxMmE3YzNkNzAwYzIgcmVsZWFzZTI3LW1haW50Cis4NDY2MiAyZGE1ZWNkMjI0ZmZlN2ZlNzQ5Y2M3YWYzYzBmNDYyOWI5NWUwZTZlIHJlbGVhc2UyNy1tYWludAorODQ2NjMgNWFiYWNkMzUxNDg1MWRhMjc0YTFkYTdhY2VlOGE1YjcxMmIxN2NiYSByZWxlYXNlMjctbWFpbnQKKzg0NjY0IGIzMDQzMzZlMGUzNWI0NzhkNTBkOWMxN2FiYjZiZGUzNGJiNWRlNTUgcHkzaworODQ2NjUgZWRkMDU2YzRhNDBkMjIyNTYwZDY5MTIyZWQ3MWRhODVhZmJiYTU1ZCByZWxlYXNlMjctbWFpbnQKKzg0NjY2IGI4ZTUxMjVlNmZiZDczNmIxNDM5MTM5ZWE0MTAzZWU2ZDRjNDc2ODMgcHkzaworODQ2NjcgNDU3YWE4ZGE0OTBhODc3ZmVhYzA1MmFmMDQ0MzZkNDcxMDA0ZDYyNyByZWxlYXNlMjctbWFpbnQKKzg0NjY4IGMyMGRlOTZhNDM1YWM2MDk1MDRlMjI3OTllMDZlYTk1NmQ2YjE0MjcgcmVsZWFzZTMxLW1haW50Cis4NDY2OSA5ZmFhODBkMDExMWYxZjMyZWViNDczZGE5ZTVkNTFlYjIyOWQyMWZkIHB5M2sKKzg0NjcwIGIzMTRhZGM5YmNkZWVhZGQwMWVhMzMwYjBhYzM3YmYyOTdmODhjNTMgcmVsZWFzZTMxLW1haW50Cis4NDY3MSAyZWVhODlkMDkzZTIxNDIxMDhhYWIwNzQwZjMwNzUwYWQ0NTg4MGVlIHB5M2sKKzg0NjcyIGM2NjY5ZjRiZjhjNTRlZGM1NTNjY2JjYzMxN2M2OGQwYWUzOGE5MGEgcHkzaworODQ2NzMgZDBmOWFmY2IwNjE5ZWViMDhlMjc1ZDU0YmY4MDUzODI4ZjY2YzAzMSBweTNrCis4NDY3NCAzNzhlMTU3YWMwMjVmYzk5YWVlYTk0YjYzMzI0ODlkNWFiNWVkOTk3IHB5M2sKKzg0Njc1IGI0M2Q2M2JmMGY3OGYxMDQ1NDNhNjhmMjk4OTFkZGEzZjdiODRlMzggcmVsZWFzZTMxLW1haW50Cis4NDY3NiAyMWFlNDA0NmU0NzEwMWQ5MmM2M2FkYmY4YzQ3ZWE2NWIxOWNjMTk4IHJlbGVhc2UyNy1tYWludAorODQ2NzcgN2UyY2ViNWQyOGUzMzkzMmZlMjE1NTY3MDg4NTBlNjE3ZjQ1N2YxNyBweTNrCis4NDY3OCAzOTBhY2Y1MTM0ZTk0YWE0YzIyYmQ2YzM4Mzc5ZDIxNWZlNTdlOGU4IHJlbGVhc2UzMS1tYWludAorODQ2NzkgNWM0YmU2M2NhYjRhMjJlMTkwNDhmNWY4YzNlYTIxODRjMmUzMDkxOCBweTNrCis4NDY4MCA5MzM5NzM4Zjg1MDRmODgzNzIwOWZkMmQ1Njk3YjIzNzY0YzQ1MmUyIHB5M2sKKzg0NjgxIDE2YTQyZDVmMjIwOWMzY2ExMzllYjg0ZTI3YTBjMzA0ZjYzMGFlNjcgcHkzaworODQ2ODIgOWYwZDY5Y2FlZDNiMmRlMTY4NThmYzA4ZmM1ODc3ZDc2ZDgyNzBkOCByZWxlYXNlMzEtbWFpbnQKKzg0NjgzIGUyNzAzMGUwY2NlZGE4ZTg4Nzk5ODdiODkzOTdhNjViMjY0NjA2MzggcmVsZWFzZTI3LW1haW50Cis4NDY4NCBjYWVjYjZlYmM4M2MyYTU2YTBmYzhhYzBiZDU2OTQ3YjIzMGQwMDlkIHB5M2sKKzg0Njg1IDI1Y2MyMjZkYzliZDRhYjBlMjRlNDgyNDZhZDczOWZmMDJjNDgyMjEgcHkzaworODQ2ODYgMjUyODk1ZDQ5MTU3MGQ1YTI3NDUyODA5YjU4MjcxN2JlNDA5YjI0ZCBweTNrCis4NDY4NyA5OTlkN2QyMTJmMTc5MmUwNGNkZjNhOGZjNjliMTE4MjU2MzY1MTNmIHB5M2sKKzg0Njg4IDU4MzA3OWRlMzdlMTM5MGE4MjM4ZDMxNDUxNmQyZTZiNTMwZTU0NjUgcHkzaworODQ2ODkgOTI2NTc1MmExYzgzZDlhNTE5ZDFiMTIwODkzODQ3ZWNmNWU2YzQxYyBweTNrCis4NDY5MCBlODI3YjliOGE3YjRhNWVlYTJjY2JhY2JlMGRhMGRhYWE1MDFkNTdhIHB5M2sKKzg0NjkxIDExNjdlMzkzYWE0ZDZhNGVlMGFhMzhjNzYzYzhhNjk5OTAzMTBkMjQgcmVsZWFzZTI3LW1haW50Cis4NDY5MiA2YWNjYzJjNjVjYjg0NzgwMWViN2RjMjQ3MTBlZDM5ZDBhODcyY2E4IHB5M2sKKzg0NjkzIDU2ODQ0YjcxNmNkNzU2MGFjMTAwMmZkNzBjMTYxMmU2MzRjNzZiNGQgcHkzaworODQ2OTQgNTg2YTQxMWNhYzdjNzBmODg4NmM4Yzc1MGNjZjliYjI3NDEyMGM4YiBweTNrCis4NDY5NSA0NzBhNTM2MDU3MGNjMDFlN2U1OWVlNDJkMmIzZDk1OGE4NjAwYTZmIHB5M2sKKzg0Njk2IGE2MDhmZTFlODZmMDA4MjI0NDdhMGRiNTRmNTMxMzk4MjA0MzA2YmQgcHkzaworODQ2OTcgZjMxZTBjN2MwMmUzMzNkNzkyMGUyMzNhNjg2NmY4Mjk5ZjRhMDBiMyBweTNrCis4NDY5OCBlMDgwZjExZmNhMTliMGRkMjBmYTlkMDc4NGJlMWRmYjRjNmIxNGIyIHB5M2sKKzg0Njk5IDE3NjQ3OTZlOWVjYTJkMzU1ZTRkZjdjMGNjZDMyYTZkNTg0OTIxOTUgcHkzaworODQ3MDAgZmU0N2VhODk3MmViZTZiYTNmODhiNjI1NmFjOTFkNzlhNWQ1NzNiMCBweTNrCis4NDcwMSA4ODdlZjM5OTc2ZDM5ZGQ4NWFmZDg0MTEyMWQyMjVlZGIyZTI2MzhhIHB5M2sKKzg0NzAyIGVmYzk5YTIwN2JiZTdkMmQ2MjhlYjY2NjIzNmIxY2JmYWE2NTkzN2QgcmVsZWFzZTMxLW1haW50Cis4NDcwMyAyMGEyMTUzYjBkZGE4OTVkNGIwYTRjMWJhZGEwZGM1NGE2NTNkNWZiIHB5M2sKKzg0NzA0IDFjZmFkNTVkZTViZDY2MGEyY2M3Mjk2ZWQ2MWVkZjNjZDU2ZjEyZTggcHkzaworODQ3MDUgNWM5YzA0YzI5YjJjMGJmYThjZWFlN2JkMzczZjIzYjQyNGRjNmUxNCBweTNrCis4NDcwNiBlYzkyYTlmZDc3ODA2ZjBhNzkxM2JlNzA5Mzg2YmRkNDRmNDI3OWJlIHB5M2sKKzg0NzA3IGY3MmZkMmNkYTM0NDJmNTk1MDQyYzQ0YTQwN2YwZWY3Mjc2Yjk2NzEgcHkzaworODQ3MDggY2I5MTMwN2Y3MDcyZWJhYzk0ZTZhYmUxOTkxODY3MDBhZTgzZmFlMyByZWxlYXNlMjctbWFpbnQKKzg0NzA5IGUwYTdiNjk2ODU1ZjQwYzk0OTMyZTk4N2NhNTQ1MTZjNjhiYzcyMmIgcmVsZWFzZTI3LW1haW50Cis4NDcwOSA1MjFlYjdmZWU2N2E3ODFjYWI1ZWQxZjUzOGRjYWM5N2JhNTc5NGQyIHB5M2sKKzg0NzEwIDFiZTg3NGNlNGVhZWYzMDQ0MjRjZThlY2YzOGE5ZDk3NmIyZmRhZGIgcHkzaworODQ3MTEgN2NmM2JmMDE1MGE0ZDVjNjAyNGNjNzA0NmQzNzdkMGQ1ZTJhOGU1NiBweTNrCis4NDcxMiAwMDQyNTIwOWM0NmVlMjU1N2E3NmFmYjhlYmNkMGQ2YzM2NDlkNmQwIHJlbGVhc2UzMS1tYWludAorODQ3MTMgNmViNGFmYmU3N2U4NTQ4MGMzNzEwODRmMWZiMjg3YTc5N2Q0OGVlYSByZWxlYXNlMjctbWFpbnQKKzg0NzE0IGQ5MDVjOTRmOWFlMWQxYWVkYzYyNzM0MTYxNWYxZWZmOWE5MDc0YTQgcHkzaworODQ3MTUgOGY4MWVkOGFjYmIwMjQ0NGVhNzQxYTY2NWU2NDhhNDNmY2E4YjQ0OCByZWxlYXNlMzEtbWFpbnQKKzg0NzE2IDYwMWEwZGVmZDE1YmIyYjk5MmFmMTQxMGY1Y2M3YTMxZGZmZDAwMDMgcmVsZWFzZTMxLW1haW50Cis4NDcxNyA3YzhmMzQ1OWQ5YWY4YTc2YzMyMTY0NzZiZWViODYzMDUwNjk0NmY3IHB5M2sKKzg0NzE4IDE3YThmNzA0ZjA3ZDg5NDJiNTdiNTJhZDI1NTI2MDE1NmZlNDBjYjcgcmVsZWFzZTMxLW1haW50Cis4NDcxOSBmZDY3MzdhYTg4ZGM0NmRmYTNjZTc5YTQzNjRhNzM1MWU2N2NiNzQyIHB5M2sKKzg0NzIwIDUzMzg1OGEyOTg5YTJmYjhkN2Q2OGEwMWEwMzgzOGVlMDM1YTEyMzIgcmVsZWFzZTMxLW1haW50Cis4NDcyMSBjNGU3MjMzZjU0OGRiZGU4ZmViNjY3M2VhNDM5NTk5YzM5M2UyYmZmIHJlbGVhc2UyNy1tYWludAorODQ3MjIgYjAwNzAwMWZjYTcxMGM1YzA2MGVlMTMzYWFlOGNjZTRjYjg5MDQzZiByZWxlYXNlMjctbWFpbnQKKzg0NzIzIGEzNTEwODYxMDVjNTNjZTE0MzNmNjZkNDdiZDkwM2U1ZjcyNjQ2ZTAgcmVsZWFzZTMxLW1haW50Cis4NDcyNCA1ZjNhNjQ1NjRjNTFhMTI4NjFiMGFlMWYxZGZlYjQxNDg4ZjM2MTkzIHB5M2sKKzg0NzI1IDU2NzE0ZTljNjNlZmI4NGM5YzU3MmRlZTk0NTYwYmExMzgyYWVkNTMgcmVsZWFzZTI3LW1haW50Cis4NDcyNiBjMzViNDJhOGRhM2ZiODZkODcyMTQ4MjA0ZjVkYTQ0ZTUyN2U5NjIzIHB5M2sKKzg0NzI3IGYzYjFlZWExMWNlMTk1YmIzN2MxOTQ2ZTFkOWQ2ZmEyMjEwNmVhYmIgcHkzaworODQ3MjggZjQzMjBlMTI0YjFmYjFmYjcwNWU4YjEzZTFjNDM3ZjBkODZjYzQyOCBweTNrCis4NDcyOSBiMGM5YTgyZTBlYzVhMzM3ZWE2NGYwMjliMmFkMzcyMWIzODFmMGJkIHJlbGVhc2UzMS1tYWludAorODQ3MzAgODUyYmIwNTIxNTZhODEwOWM4MWI1MTBlMDJmYjI5OTQ3MGNlMjBjMyBweTNrCis4NDczMSBlZDQzZWJkYTM1ZjJlNWRmMzk4NjRkYzM5NWI3Y2YzOGEyZjdhMmNmIHB5M2sKKzg0NzMyIDYzOTM5YWZhZjk4NGI0YTc5MGNmZWQ0YzUwN2VjMzgwN2EwNGVjYjcgcmVsZWFzZTMxLW1haW50Cis4NDczMyBlZjZmMDM5NzFmYjM0ODcwY2QxOWMwMjU3OWM5Y2QwNDkxOWUyMDg1IHJlbGVhc2UzMS1tYWludAorODQ3MzUgMzgwOGUzNzlmYzNjZTkzYTc3ODY5NGZhOTNiMjhiMWRiYmM0NDVmYSBweTNrCis4NDczNiAzNzc0ZjRkZWY3NTRmMWY4YTZiNWE5YWQ5MzEwMjk3ODVmMTVjNzJmIHJlbGVhc2UzMS1tYWludAorODQ3MzcgZmI5MGYyZmYxNzY0YjljZTgyNjk5NmVlYThkNmE5ZDllYTcxNjJhNCBweTNrCis4NDczOCA2N2VkNmQ0ZjcwYjFhNjZmYjkyNmZhYWFkNmE3YmIyNWY4YjBiMDYzIHJlbGVhc2UzMS1tYWludAorODQ3MzkgN2FjMGU2MDdjNGQ2NjJhM2JkNjQ3YzUyNzczZWMzN2MwZjM0ODQxOCByZWxlYXNlMjctbWFpbnQKKzg0NzQwIGQyZTU4MTk4OTMzYmU0OGJmMWI5ZmQxYmFlODE4MzExNmRiMjU3NTggcmVsZWFzZTI3LW1haW50Cis4NDc0MSA4ODY5YjFiODU0MzQ4YzQwOTZmY2VhZGNlMzg3N2U3Mzk0NDg5YWJmIHB5M2sKKzg0NzQyIDYzYmRhNzg5ZDczYjYzZjdhYTgzZTczNmUyMzQwOGY3OTFhNmY1NWMgcmVsZWFzZTMxLW1haW50Cis4NDc0MyBmYTk1MTBjNzk2NDgxYTBkOTQ2NTg5ODdkMzQ4MTk3MzRjZjU0Y2IxIHB5M2sKKzg0NzQ0IGI3ZTI0NGYzNGNjODBkMDNiNzUxYTY3MjU1MWE4NDFjMmQ4MmZlODcgcHkzaworODQ3NDUgNzZiOGRhZGEwNmNiZTZhOTMyNTAwYjg2NDk2NjcwM2QyYmUwODQwNiByZWxlYXNlMzEtbWFpbnQKKzg0NzQ2IDRiOWM4NTI2ZWE0Y2I3MGNlNDgwODA4ZjJhNjNiYzUzNDYwYWNlOTYgcmVsZWFzZTI3LW1haW50Cis4NDc0NyA2ZDI4MmI1OGQ5MGFhMmZkMzZhODEzMDk4NjU1OGQ2NzI5OWQ0ZTdjIHB5M2sKKzg0NzQ4IDJiYjRkZDJhZDViNTA3MDdhOGE5ZTE0MjFlMzIyZTQ2MmViOGY1OGMgcHkzaworODQ3NDkgN2FiNTkyMzNlODNmNjliNWIzNzFmZjcxMTg4OTE2MjA5Y2U5NWJhMiBweTNrCis4NDc1MCA5MjEwMjk1MDdhZDdkNDRjNDc1OWM5MDYwYmY5ZjNlM2Q1YzAzZmJjIHB5M2sKKzg0NzUxIGMxYjcwOTA3NmJmNjNhMWQxYjc1MjIyOWE2Nzk1MTVhN2I4NTk0N2MgcHkzaworODQ3NTIgOWNkYmE2ODY0ZWI2MGNhMmE1OTM0NDkxZDE5NWM5NTk4ZDk3MTY1OSBweTNrCis4NDc1MyBhM2VlODc3ZmVkODliNWVkMzdjY2I5OGQzMGM4NWQxZWVkMTEwZjUxIHB5M2sKKzg0NzU0IGIxODZhZmEzNzBlNmQxMDU1ZTUxY2ZiZGMyMTQ2ZTI1M2I2NDY3ZDEgcHkzaworODQ3NTUgY2ZhMTE5YzNlNDNjZmU4NzJkZDU1M2Q1MDUzOGJhNTIwNTI5NTU0MCBweTNrCis4NDc1NiBlZTk2N2YxYzczMWI3ZDAzNmZmMDQzMTVkMDUwMmNiZjg4NjE1MDI0IHB5M2sKKzg0NzU3IDBkZTgxNjQ3NTUzYmEwNGFiNzE0MTczNmU0YWYzMTc1MjBjOTFlNDggcmVsZWFzZTI3LW1haW50Cis4NDc1OCA5MDY0ZmM1N2QzZmE5MDdkMTEwMWZmNjEzMWJiYTUwNDlhYWRlYzZiIHJlbGVhc2UzMS1tYWludAorODQ3NTkgMWU4OWI1ZWUwMmY4NWVmOWIyNzA4Y2E0NDZhOWExNjQxODU2NjYwNiBweTNrCis4NDc2MCA1ODRiMWVkYTExNDE0NzYzYjBhZmFkMGI1YWIzODI5NWMzNjZjOTMwIHB5M2sKKzg0NzYxIDMxNGQ0MTZmNGQyM2UyOGM2NTZkZDU3NzAxZTk5NDMyNmE2YjU1MGIgcmVsZWFzZTMxLW1haW50Cis4NDc2MiBiMWU3NjZjNzlhMzY3NzQ5YzliZTNlYWZiNzIxY2VkNTUyODYyZGI5IHB5M2sKKzg0NzYzIGFkZDY2NDkyNGFlOTkxMWMwNGQ3ZjFmYzM5NTQ4YzdjM2UxYWY2NDYgcHkzaworODQ3NjQgYjBkMjZlOGQ4YTMzMGFhNTY0MjAzN2JiMTg5YTU3NGRlMmM1Y2FiYSByZWxlYXNlMjctbWFpbnQKKzg0NzY1IDJmODM3MDUzOGZmYmIxN2MzYWNhZDllNjRjZGJkMTBlYWVhODNjYzUgcHkzaworODQ3NjYgMjhlNmE0MWM1YmEwYjA0MmRjOGZkYjkwOTg2M2RhNTY4NzJiYmE2MyByZWxlYXNlMjctbWFpbnQKKzg0NzY3IDgyZGI4MGI2MGI4N2JiYWJmM2FkZjU4N2FlNDY1OGRkNzYyMTMxYjYgcmVsZWFzZTMxLW1haW50Cis4NDc2OCBkMGZjMzU3ODc0Njc0Njk0MzJjNDFlZDcyYjgyN2NkNzc3Yzk2NTllIHJlbGVhc2UyNy1tYWludAorODQ3NjkgMWU5MjJkNzFjZTRiZjZhMTg5NzNmNTMzN2Y4NmMzNGVmNzU4YWYxZCByZWxlYXNlMzEtbWFpbnQKKzg0NzcwIGJiYThmYTg4ZDE5YTIxYjkzODI5ZjVlZGMzYTE5NjE2NTg2N2M4NzQgcmVsZWFzZTI3LW1haW50Cis4NDc3MSBhNTlhZTkzODkxMzE5MzY1ODA2YWMwOWM1YzQ3MThiYzE4ZTAxYjIzIHJlbGVhc2UyNy1tYWludAorODQ3NzIgMjc0YTBiZjQ2ODcxZWYzYTU5MWYyYjkzYTMxM2VmYzgyMDY5ZGQzYiByZWxlYXNlMjctbWFpbnQKKzg0NzczIDQ0MTk5YWE4OTMyYjdkMTRkMDNhMGUwMzE4YTliODA1YTkwZGJiZDIgcmVsZWFzZTI3LW1haW50Cis4NDc3NCA1NTdlMjUzN2M5YWUyMzUzOGQ5ZGRiNGVhMWViNDliZGM0NTlkZmU4IHB5M2sKKzg0Nzc2IDMzMGQ3OWZjYjNkM2Q1ODYyOGY4Y2VhYjM1NTgxNTNjOTY1NGE0YWQgcHkzaworODQ3NzcgMGYzYjhmOTI4ZWMxM2Q4ZjkxZWM0OTBlNWI1MjRmZTkwYmE3ZmFhYyByZWxlYXNlMjctbWFpbnQKKzg0Nzc4IDNkMjJlZTY1ZTQwNzVhOWIzNmIzNzFjMmE0MzgxNTMzMWU0NWI0NjggcmVsZWFzZTI3LW1haW50Cis4NDc3OSAyYWQ4ZDdjYmNlYWJiMDE3MjA1OTEyODJmMTM1Nzc1YjQ1ZTViYmU4IHJlbGVhc2UyNy1tYWludAorODQ3ODAgZWExMjFmODczMWE3OGJiNTU1Y2E0MjUwYmFlZDRlZmQwYzhjZjNmMyBweTNrCis4NDc4MSA2ZmYwZWYxZmNiM2NkOThlNTFiMzM1ODc0YTg2ODJhYWU4ZWFhNGRmIHB5M2sKKzg0NzgyIDIwNWZmMmIwMmM3NzEyMGVlMjBiMTc3ZGMzYjc2OGJlNzQ2NDdmNjggcmVsZWFzZTI3LW1haW50Cis4NDc4MyA3ZGJmYzdlZjM5ZjJiNjM2ZDMwYTg3NjQ1MTMxM2Q5NzdjMThkODM5IHJlbGVhc2UzMS1tYWludAorODQ3ODQgNTU3MzU1ZTQ2YmE2MTlkZTUzNzYyZjc1MzBlYmQ0ZWQ3ZjllYTVjZiBweTNrCis4NDc4NSA3N2M4OWM4OWY2MGUxMTIyODlmZTc5YzQzZDk3YmVlMjU3YmJiOWU1IHB5M2sKKzg0Nzg2IDJkMDg0YWQ0NjhkYmQwMGM5ODkwY2E4MTQ5NjAyNzdkZjdlMmUzMzkgcHkzaworODQ3ODcgODIzNGQyNmIxM2MxOWVmNTY5ZDA0ODE4MThiYzBmZDA5NTNmYzk0NCByZWxlYXNlMjctbWFpbnQKKzg0Nzg4IDkxYTAwYjZiMTI4YmVkMGQwNGVjODNlNzk1ZmNhMmUwYjM2ZmE0ZDEgcHkzaworODQ3ODkgZWE4NDgzZjllNTVhYTY2MDkzMzIwYzJmMTQyMmE4NjU0Y2MwMTk4NyBweTNrCis4NDc5MCA5ZjU1ZmFhYTMxOTNhY2M2NzI0MmMzMjJlOWM2MzNlNDc4N2M3NmM2IHB5M2sKKzg0NzkxIGUyZGVjOWMwZDEzY2ZjYWJjMTA3YWM4NGJjNDNkOGZjYzkyYjExMzUgcHkzaworODQ3OTIgY2ZhZjBmN2VlMGMyYzkyZWMzMTA3YmQyYmRkNjI2Y2I1ZTE0N2YxOCBweTNrCis4NDc5MyBhNjBkZWVjYWMyNDI0ZWZkMGEzZWQwNGJjM2E1MDNjMDljOTg5ZDIyIHJlbGVhc2UyNy1tYWludAorODQ3OTQgM2EyOTYzYjZmNDQzZTg1MDE5MDhmYzcxY2YwMDgwM2JhNDU4MTk4OSBweTNrCis4NDc5NSBmYmU1ZDA4YTk4NjYxMzk5YmY2NTcxZTkyZThiYzllNjc3YTdlYTMwIHB5M2sKKzg0Nzk2IDY5ZWQ1ZWNiNTAyNmFkZGNiNTIyMzczZTdhZjVhZmI2ZmM2YTZmMWUgcHkzaworODQ3OTcgNDRlNDNiZWQ2NzRhNTRlNTkxMzg0MTg4MTFlMjQxNDgwYTllZjYxMyBweTNrCis4NDc5OCBlNWYwZmY3ZDdhMDZlZTkwYjNjNmRiOTkzYTlkYTVhZTFjYTgyYzhkIHB5M2sKKzg0Nzk5IDRhNGZiZTAyMjdhYTQ5NTI1ZmJhYTJiNWUzZDVkMDY2ZWFhZjM3YjMgcHkzaworODQ4MDAgMmQ4ZTQwODU5MzUxMmVjYzBkNWQwMTg1MGE4NjEzZTI4N2Q3NDJkOCByZWxlYXNlMjctbWFpbnQKKzg0ODAxIDIwYzQ1Y2RhZDljZjFlOGQ0MWU2YzVjOTIwNzZiOGFjNTEyMWFmOGMgcmVsZWFzZTMxLW1haW50Cis4NDgwMiBiMjc0YTkwYThlMmJkZmUwOWEwYTAwNTQzYzhjMzlkMDMwZWIxMzZiIHJlbGVhc2UyNy1tYWludAorODQ4MDMgYTQyZGI4ZjU0YmExNzA2ZDMxOGFkNzZlNWJiZmU3M2NhNDJlODExZiBweTNrCis4NDgwNCAxMjNmMzUxNGI0NWI1MjdiZjI2MjEwNzU1NzFlNDczNTJkYmIxNTdkIHJlbGVhc2UzMS1tYWludAorODQ4MDUgZGI5ZTYyYzI2NWZmNTBlNTkzY2IyZTQ2N2NkZjY1N2RjMmJlZGUxYiByZWxlYXNlMjctbWFpbnQKKzg0ODA2IDdmOTlhYzUzMDE0YTU0MjgxZjk5YmVkMWM5MmRlMmY0NzIxNTQ4MWEgcmVsZWFzZTI3LW1haW50Cis4NDgwNyAwZTk2ZjlmYTg0YTI0YTY5ZjVhMWNhYTRjODEzNGVmZmNhZmUyZTkzIHB5M2sKKzg0ODA4IGZlNWY5Y2M0MDc2ZWJiNzk2YmU3ZGFmYzljNWJlNDA4YTZlNTA1MmEgcmVsZWFzZTI3LW1haW50Cis4NDgwOSA4MGQxYzc3MzRkZjI1N2U0N2E5YzYxYmI4NGFhMTg4OTQ0N2Q5YTM4IHJlbGVhc2UzMS1tYWludAorODQ4MTAgMGUyOWFlNTFkOWJjNmFlMDNhOTdmMjQ2MTM0ZmFjZjA3Y2MxODU2OSBweTNrCis4NDgxMSA5MDVlZTllM2RhNmRlMDcxYTgxZDU3NWJjYTk2YjhhNTQ5ZTU3YzhlIHJlbGVhc2UzMS1tYWludAorODQ4MTIgZWRlZDBjYWVlNjIxMzMxMDAyZTlhZTU4YmRiZmRkZDAyYzljN2Q3OSByZWxlYXNlMjctbWFpbnQKKzg0ODEzIDUzNDg1M2JhOGNkMzZhYjVmMmNlZWM4YWM3ZTg2NWVkNWE5MWZhZjggcHkzaworODQ4MTQgMmJmMmE3YTRlMTdkNjQ1MmJlNzQwNTY2Njk2YzIwNjdjYjMwOTRmNyBweTNrCis4NDgxNSBkN2FlMWI5ZjEwYWI3YjY4MDMzZDg4NzZlOGQ2MjZiNTExNjNkZTQzIHJlbGVhc2UzMS1tYWludAorODQ4MTYgMmI5ZGVhMmEyZmZmZDYyOTEzMTZjNGFkOGExOWRkOTg2NDhhZDcwYiByZWxlYXNlMjctbWFpbnQKKzg0ODE3IDA3MWJkOGYzNTM1YWMwZGZjZWI0MDRhMjYzODBkNDk3OWJmMTI5ZDggcmVsZWFzZTMxLW1haW50Cis4NDgxOCAzOTc3ZGMzNDlhZTc5NDMwYTA3YjVlOTYwNGQzY2Y1YjFlMzc2NjRiIHB5M2sKKzg0ODE5IDkxNTFkNWZhYWUzZDZhODcyNGE1Yjc1YmQ3MjE2NWJiNjUzOWVmZWQgcHkzaworODQ4MjAgYjgxZThlM2ZhNWJiZTY3NmRiZGEwODRmY2VjOWJhYTBlMDQ4M2U5ZCBweTNrCis4NDgyMSBmNjQzZDUzYzUxYmQ4YjE3MmNlYjE5ODhlYmQ4YTUwNzc0MGJiMTlhIHB5M2sKKzg0ODIyIGU2MzNlM2E2YjI1NTY4ZmEwZWRiMzk1NDEyNzllZDM5ZDkzYjBjMGYgcHkzaworODQ4MjMgYjY5NTFiMDUyMTdiMjFhYWM2ODc3MGIzY2UzZjYyZjc2ZjQ1M2IzYSBweTNrCis4NDgyNCAzNTg0OGEzYjdkOGE1YWZiZDJhZDgyNTBiZjg2NGNjYzM0ZDU1MmNhIHJlbGVhc2UzMS1tYWludAorODQ4MjUgN2VmNWM2YmU3MjMyOTdmZjc3MjZkYzQzZDIwNzQyYWNhNGE4MTM4NiBweTNrCis4NDgyNiA5YWZmYjRkNmU5N2UyZDJlYWVlM2U3NWUwZjQyNTY0ZDE0NWYwYTM3IHB5M2sKKzg0ODI3IGM3NzlkZTY0NDA1YTkwM2Q0MThhZmMzMTdjYTY2NzBlM2YxNzljNmQgcHkzaworODQ4MjggZDg4ZmRmNWM1YjM3NjQyZTE0YjlmZDhmYzM4MGNlNWQzOGU0MGUyZSBweTNrCis4NDgyOSBiZWQ5NTBjYmQwYzAxZTUzMGRiNjkxYzBjNmJmMmJmNzgwNTgzYTQwIHB5M2sKKzg0ODMwIDViMDE4N2MwZDAwMjQ4MTJjZGMyMGYzY2RlODQ3Nzc2YTlhMWI1YjggcHkzaworODQ4MzEgYmNlOTc5M2ZiNTQ1MGVkOTFiNTVhYTQxZGRmZjc5Y2M1ZmVhOWJmMiByZWxlYXNlMjctbWFpbnQKKzg0ODMyIGE5N2QxMmU1NDY1Zjc5NTI5NzRkNGQwZWM4MDliYjBlMDUyODFiZTMgcmVsZWFzZTMxLW1haW50Cis4NDgzMyA2MWRmYzc5NjU3ZDczN2QyYzA3MmNlY2MwZmFlMDJkMWQyMGFlM2ZjIHJlbGVhc2UzMS1tYWludAorODQ4MzQgYzBkMzE2Nzc3M2E5NzMyMzhiYTY4ZDc5OWExYTIwNjA0MTYzMjBhYyByZWxlYXNlMjctbWFpbnQKKzg0ODM1IGJlYjlkMTc2NTAzZTQ2MmE0NTNiYTdmOTdlZjk3MmNlNjM5ZTFhYjMgcmVsZWFzZTI3LW1haW50Cis4NDgzNiBhZDYzZjk2NjkyM2M0MTAzNDE2M2FhYmYwYWZjODBjNzI2NjVmOGQ4IHB5M2sKKzg0ODM3IDNlZGMyNjM4MGU0OTZhYjBmM2I4NmFiYjI3Y2I1ZjY1MDQ4ZWFhZGEgcmVsZWFzZTMxLW1haW50Cis4NDgzOCAxZGViZmY0MmVhNDZkMTEzZWMwMGUwMmUxY2E0MDA2NDI5MWNiYTcyIHB5M2sKKzg0ODM5IGYyZWMwMTE1ZjhiMjAzZTUxZDQ3ODM1YzBjOTNhZTNhMzBlNzc1NmEgcHkzaworODQ4NDAgYTE2YjY3ZDRmMzAzMTZkMTBjYmM0MTMxZjZjM2ZlYWQyODRiZjg1YSBweTNrCis4NDg0MSBiNTc3NGIyN2IzZGJkOWFlZDJmODgxNDg3MDI1ZWZjYTM0OGRjNjkwIHB5M2sKKzg0ODQzIDk4NTA3MmNkMzFkMDNiODJmYmM4YjU0NTk3YTcxZThlNTkxNjBmMjEgcHkzaworODQ4NDQgZDY1N2U4YTYwMTI2NjQ5Y2Y5NTM2YzM2MmM0ZGZlYzg3MzczNWYzNCBweTNrCis4NDg0NiBkMTc3MWI0Y2QwY2JhODMyYWI3YTE0NDczNjY4ODUzODg2NzRlNWM3IHJlbGVhc2UyNy1tYWludAorODQ4NDcgMWJlOTUwZGNiYjFhNWY4MWFlY2YyYmI0ZmVhNGNhNTgzYTFkZDcyYyBweTNrCis4NDg0OCAyMzI0MTY3ZWMwMWQzYWEyMGY2MzUzMWU1YzQzOTY4OTlkZmQ1YzIwIHJlbGVhc2UzMS1tYWludAorODQ4NDkgM2YwMDA0NzM2ZDI4MzljYTQ0NjQ0MGM0YjBlNGMyN2U3N2NhOGY3YyBweTNrCis4NDg1MSBmZDVjNGNmZWQ3Y2QwYzNhZGIwYjM3YTViNjNkYmMzNDA5YmM2NzIxIHB5M2sKKzg0ODUyIGExNzdkZGRlNDVkMWI3NGExNjc3OWViZWU2ZGY0ZWUyMjE2MGZmZDQgcHkzaworODQ4NTYgNTc2MWY4ZTM1MmVjMjFmZGQ2ZTc2M2Q4ZDAyYzA2ZmY1NTgzMGQ4NyBweTNrCis4NDg1NyA2ODlhODEzZjRhZmMwZGQ5ZDk2NmJkMDg3M2M2ZmZkNGU1MGEwNWZhIHB5M2sKKzg0ODU4IGE4ODY5YWY1ZDVkMGNhNjc1MjY5ZWY1MWVmNGJlMTlmMWQ2ZGQ5MjYgcmVsZWFzZTI3LW1haW50Cis4NDg1OCA4MjU4OWE4ODllMDcwZmY3NzcxMWM3ZmNlNjdhNzFlMDI0ZWUwZWEwIHB5M2sKKzg0ODU5IGM0MzhmOTYzNDZlOTBmMWFiZWRmN2IzMTQxYWJkOTcxZWRhNTg5NjMgcmVsZWFzZTI3LW1haW50Cis4NDg1OSBlM2MzYzMwZjE0MDk4MDg4YTRkMWY5OGJlNWFhOGI3ZmQzOWNkOGExIHB5M2sKKzg0ODYwIGZhNDdhZjczYTY5MWUwMDZiZjcxMDVkN2U2NTQxMTM1NDc4MjYxYzEgcmVsZWFzZTI3LW1haW50Cis4NDg2MSBjYTM1NDJhZGVlMGRhZWJjMmNhZDZhNjQ3ZjY5YmNkZTE4ODZkMDQyIHB5M2sKKzg0ODYyIGUwNjQxZGJkYzhmNjJhN2U5YWI2Mzc1NWVhODQ3MzZiNmMxN2IzZjkgcmVsZWFzZTI3LW1haW50Cis4NDg2MyBlMzlhZDVkYzExY2ZlNGQ3NDAwNjNiMTk3ZGE5M2FjNzJjMjhhODE4IHJlbGVhc2UzMS1tYWludAorODQ4NjQgZGM0MjJkYWE1ZGFkZDBiZmM1NDI4Nzg0NDJkYTUxZGRjZTc3NDVjMCBweTNrCis4NDg2NSBhNDMxYzQ4YWQ0MmIxYTE5ODMxYWE1YzFkNDVhNGM4OTk2ZTRhODE3IHB5M2sKKzg0ODY2IGY3N2NiOGQ3NmU5OTE1N2E0MDIwM2E0NGRlYjZmNTFiMjdkYWRkNjIgcHkzaworODQ4NjcgY2QyZWY3NTI4NzM2NWI2ZTlhNTU0Y2UyY2NkNmNkOTI1MTc0OGZkYyBweTNrCis4NDg2OCA5MzhkODQyNTdkMTEwMjYwZGNjMTI2NjY1NmNhODFkN2MwYzZiNDljIHJlbGVhc2UyNy1tYWludAorODQ4NjkgYzg3ZWQ2ZjU4YjgzMDk4ODFmMTE0MjAwZTg3ZTFiNWNkMjVmMjk3MCBweTNrCis4NDg3MCBkZjM5YjBiYzQxMDY3M2I1ODE2ODJjNmVjMWU0OTNiMTc2ZWIyNzk5IHB5M2sKKzg0ODcxIDAwNjQ5MGYwZTcxZmQ2NmVjNTFkM2E0ZDQ0YzIxZjMxNmRiZmFiYjggcHkzaworODQ4NzIgMDFkYmI4Mjc3MTc4ODk2MjVmYWE1MDc4ZjY4MTJlNzdlOWM2NmIzZSByZWxlYXNlMzEtbWFpbnQKKzg0ODczIDE1MTgxNzE3NzUxNDljN2NhZGIxYzUzMzJhYzM0NWRiNDE4NDEyNGEgcmVsZWFzZTI3LW1haW50Cis4NDg3NCBkMDYwNDc0ZTBlMjQ1ODU2NDFkYTQ4ZmZmYWVjOTlmNmJhMWRkMzdmIHB5M2sKKzg0ODc1IDJmMjgwNzI3YTMwN2Y2ZWQ5NmM3MGNmNDg1ZWU1NjE3NjJjMTY4OTcgcHkzaworODQ4NzYgMjg2N2FlOTAyZmEzMTQ3MzY0NjQzZmJhYjgwZjVhNGIyY2I4YjUwMSBweTNrCis4NDg3NyBkMzkwNDAwZDcxZjdiOTZlYzIzMWE0YzFmODI2ODI4NzZmNmEzNjJjIHJlbGVhc2UyNy1tYWludAorODQ4NzggYjQ5YWVlMzg3NzliYzBhOWRiMjY3MTU4Y2RjMzM0ZWJmOTkxZTYwZCBweTNrCis4NDg3OSA0YWEyYTIwYWMzMzViZjA1YTVhZDVmNWUyOWU4Y2QzMDgwZGVjY2Q1IHJlbGVhc2UyNy1tYWludAorODQ4ODAgMjllYWQ1NGMwNWFkODc3YWMxYWY4NWExMGQ4NGY4YWU5ZTI4ZTEzYSByZWxlYXNlMzEtbWFpbnQKKzg0ODgxIDJkYzFkMTg3ZWUwNGFlM2VkM2QxZGFmNzc0OWQxNjE5ZjhjNDAwOTMgcmVsZWFzZTI3LW1haW50Cis4NDg4MiA0NDlkMTA0ZTE4MzYyNzNhZWFlNWQ4Yjc2MGNlMTNlZDY4NWU0MmI0IHB5M2sKKzg0ODgzIDQ5ODFjZjBhOWNhNGNmOWUxNzdlOTNlN2EyNzNjNmM4MmEwNTZlMDQgcHkzaworODQ4ODQgNzc0MjVmMmQ3ZDc2NTk3NTc2NDkwODMzODE1ODlmNTExMzFhOGE2ZSByZWxlYXNlMzEtbWFpbnQKKzg0ODg1IDA0YjQ1ZDQ1MTA1OWY1MGYxZWZhZjMwM2Y2ZDk4N2Q3MzUyOGI2OWYgcmVsZWFzZTI3LW1haW50Cis4NDg4NiA5MjkxYWEzZDhkMzU3MjM3NzUyYjRiNDllM2JjYmU0ZjJlZjI2YzFiIHJlbGVhc2UzMS1tYWludAorODQ4ODcgZjNkY2IzMTRjM2UzMDJlNTU0MjJmODZjNDZlYzc2YTNhZTYwNmExNyBweTNrCis4NDg4OCA3MWI5NTk0MmMzYTQ5Yjg4OTIyZjkxODg4NjMwYjZjYmI4Y2MzNmVkIHB5M2sKKzg0ODg5IDlkYzg0NTIyNDQ4NjEyOTgxMjg5YTI1N2ViY2NjM2ExOTY0MTRhNTYgcHkzaworODQ4OTAgYjY5ODQyYjUwZTI2Mzg4MjhmMWIzNGIzNDZjODVjYTIyODhiM2I3OSByZWxlYXNlMjctbWFpbnQKKzg0ODkxIDY1ZjVlMmMzZjJkZDE5MTk4MGZmYTZkM2ZmYzk5ZGVkZTU3NDUwMmIgcmVsZWFzZTMxLW1haW50Cis4NDg5MiA5MjU4ODk4NmI3OGJkMjhhZGIzZDAyYzk0ODVmZTFmOTlhNDcwODkwIHB5M2sKKzg0ODkzIGU1Mjk0Y2EyN2FiZTJkMTIzMDQwYTNlM2QzOTZjN2RjZTE5OGIzYjQgcHkzaworODQ4OTQgZjdhNzZmYzk3YjIyMGRmMzI1OWM0ZDJlMTMzMDZhOWViMTMyMjRkNiByZWxlYXNlMzEtbWFpbnQKKzg0ODk1IDQ1MTEzOTMyMmExMzExOTVkNzAwMzFiYjMxNDEzMWI5MDdkY2I3ODQgcHkzaworODQ4OTYgY2Q1YjlhNzBhNjg1YmI3MzM5ODMzOWJkZTE4Y2MwODM2OWVhOTZkOCByZWxlYXNlMjctbWFpbnQKKzg0ODk3IDUwMWFlOTRlNWJmNjE1ODQwZGJjZjAyZWNmZDdiZWM2NTIzYjQyMjcgcHkzaworODQ4OTggNDRjODljNTk5M2M4M2ExODk3N2QzNmM4ZGUwYTIxMjQ1OWIxNjQ4NyByZWxlYXNlMjctbWFpbnQKKzg0ODk5IDBhY2U5ZWVmMTIwYmUxZjFmMWE0OTU0MmMwYTIzNzdkMmQ4ZDc2ODYgcHkzaworODQ5MDAgYTQ4ZTAzMWQ4MTc4ZmI4MGNhMGE5ZWMzMzZmY2FhZDE1YTc5YWIwMiByZWxlYXNlMzEtbWFpbnQKKzg0OTAxIDc4NWE5NmZjZDM0MGRmMmQ1OTRmYTUxN2FjNDFlMGFmNGVlYTFlZTUgcmVsZWFzZTI3LW1haW50Cis4NDkwMiBiMjllODU1NjAxNWNiNzMxMGExODU4NzBlNmZjOWFlMjIxMTQyNDE3IHB5M2sKKzg0OTAzIGEwNTQzMzA2MDk0MTE4NmUxOTk0YWFkYjA2ZWFhNjk1ZWQ5ODViYTAgcHkzaworODQ5MDQgNTM0YWY5MWYzODQ1NDA2MmZlMjZkYzcxNzgyZmRlZWQ2M2YzZGNmMCByZWxlYXNlMjctbWFpbnQKKzg0OTA1IDkzM2Q0YjViN2YzZDY4Yjc4NDU1YjkxOWE1YmJkM2ZjNzRmOTYwNWQgcHkzaworODQ5MDYgNzYwNTFlYjA3NDIyYzc4OGYzNWQzMmM5OGEyMjAwNzRlYWQ1ZDdkYyBweTNrCis4NDkwNyA4ZGZiZjY2ZjM2OWNmNWEyZTdhYTU2MmU3ZDg0ODhlMTc5ZTc5MzRiIHB5M2sKKzg0OTA4IGRkMzA4MGI4MGRkYTkxOTQ1NTdkY2YyMzRhNzliOTQxYmE3YmFkMzAgcHkzaworODQ5MDkgNDM3NGIxZWFlYWQxNzc2ZjViOTJkNjhiZDI4NjQ3MjFkODg2NGI5ZSBweTNrCis4NDkxMCAxN2VjOWVkNTAxMzNiOGJhZWRkYTYwZTI4MzIzYzY3NjRkYTE0NjIzIHB5M2sKKzg0OTExIDAzNjU4NTM4MmRlMTliYjk3ZjE1MTBjMDJhNzExNmY1ZjU2YTQwYTcgcHkzaworODQ5MTIgNGY0YmRkZGFjMjViMjNiNjUzMjRiNmRiMzdkODk0N2M5Njc3YmViNCBweTNrCis4NDkxMyA3NmZkNjhiYmExYTg4NWE0NWYwNzQ3MWRhYmJmYWZkNjJkZjgyZTI2IHB5M2sKKzg0OTE0IDhlNDI4YjhlN2Q4MTU4NmUyM2I1ZjkyZjljYTliMThkYWYxNGY0NDkgcHkzaworODQ5MTUgNmM3Nzc1N2QwODgxMTVhMDFjZGQyOTMxZjAwMmQ3MDY4N2EyZTMwMiBweTNrCis4NDkxNiBiNTU3MjUzNTk4YjFmOWNkMzgwMjAzM2IwMWY5ZDdiZTNlNzA0MTg4IHB5M2sKKzg0OTE3IGVjMDI4MDY3MDQ5ZGE2N2M3NTFkMjc5ODU4ZGI3MWQ3YmY2ZDQwZDYgcHkzaworODQ5MTggMmNkZGY4NzhlMzk1NTUzYjZmYWU5Nzk5NzIzOGExZTk1NDVkNGU2MiBweTNrCis4NDkxOSBjZjg4MTcxNDk5YjVhNzg1MGJlZWU3YWViZGE0MmZlZWRjMTU2NDUzIHB5M2sKKzg0OTIwIDNhNGFmYWE5NmFjMzMyM2MwZGM0NTczMTMxOTFmYWIwNGU1NzdlNmIgcHkzaworODQ5MjEgNDg2YzJkNmE3NTQ2NWQwMWY2MTZiYTE2YWM4YTUwZDZhYzdiMjlkNSBweTNrCis4NDkyMiBhODhkZmYyN2JlMWY3YjJlYjA5ZDA5ODA0YmY0ZDlmYTE0OWIyNDk3IHB5M2sKKzg0OTIzIGYzNWJkMDhjMTJhZWYyYzQ2YjRkYjc5YThjZmE3ZmRlOWJhZmMzOTkgcmVsZWFzZTMxLW1haW50Cis4NDkyNCA2YmQyNzZmNWQxYmNlNzk5Njc1ZjhjODExZjFiODI3OTgzZTJiMGQzIHJlbGVhc2UyNy1tYWludAorODQ5MjUgOTZkYjY0MDY3NGNiN2FhYTUzZWYwOTQxZDk2Mjc3ZjU0OTI5YmUyMCBweTNrCis4NDkyNiAzY2FjZTEyODlkZTQ4OGJhY2Y2MjBiYTE0ZWQ0NGM4NzVmNTE5NGI2IHB5M2sKKzg0OTI3IDM4YjBkNWQwZGQzMGU1MGE3MzAzZTRmNDNkNjVlZmRiMWNlZmFhNDUgcHkzaworODQ5MjggMGQwZjFkYjYzNDMxM2YzNjMxM2UxNGI5OWEzYjUyY2I2OGY4ZDg1YiBweTNrCis4NDkyOSAwMGU0Y2UzMWQ0MDQwZDVjMzRiNjU3ZGQxNzljZWE1OTY1NjgyM2QxIHB5M2sKKzg0OTMwIGE2YWY5YzdjOGU2N2U4ZTQ2Yzc5NzgwOWI4MTNjNzY4NTBhYzg4ZTggcHkzaworODQ5MzEgODYxYzM1Y2VmN2FhOWU1MjI2ZDRjYzJlYjFlOWViNTI5YTFjOTg0OCBweTNrCis4NDkzMiAyYzczZTZjZTZhNzU2ODQ2OGM3MzgzNmExYzcyNjNjZWJiMTY2ODIyIHJlbGVhc2UyNy1tYWludAorODQ5MzMgYmYwMTFlMzBmYzA3NjI3YjUyOGFiOGNmMTViODU0ZDQ5NzhhNmRkMSBweTNrCis4NDkzNCA0N2IxMGU0YTUxZDdlOGQ0YzBkZmY3NjRlNDhlYzJmYTc2NzNiYmU3IHJlbGVhc2UzMS1tYWludAorODQ5MzUgMzY0ZDZlZjdjY2FlNGNjMjQxNzdlZTQ1OGQ3ZDNjOTk5YzNkNDdjYSByZWxlYXNlMjctbWFpbnQKKzg0OTM2IGU5MDQyNzk4NDQ0MmNmNWI5ODliZGIzMDRjMGE1ZTMzZmFkMTVlNTcgcHkzaworODQ5MzcgNjAzNjc5ZDg1MzI5MzA4OTJhMmQ4ODdmMDU2ZjA4ODk0N2VlNjg5OSBweTNrCis4NDkzOCA3ZDQ1ZjUzOWRiOTdjODExZjJjNTc1ZjBlNmE0OTExMzdlNDBiYTUxIHB5M2sKKzg0OTM5IGIxZWM0OGI3ZmZkZmZlYjUyYWZkZjJiMjc1ZTg2NTJlZTc2MTMzYTIgcmVsZWFzZTI3LW1haW50Cis4NDk0MCBkOGJiOThlNDJjMmZmY2EzOGU4ZmE3YzY4ZmYzZTE1YWRjZGZjNTQ5IHJlbGVhc2UzMS1tYWludAorODQ5NDEgZjhjZTlmMzU5ZjNhNjRmOTFkZDI1YzZlZjExYTNhODM5NjBmZTVlNiBweTNrCis4NDk0MiBhMGUwY2I4OTNlMzFlMzIwY2FlYzc4MWFiNWVjMmQ3ODZjZWQzYzFkIHJlbGVhc2UyNy1tYWludAorODQ5NDMgMzM1OWQyZTBhOTY3MTcwOWJmZDYwY2UzZDAyNmQ3N2I0NWM1YmJlYSByZWxlYXNlMzEtbWFpbnQKKzg0OTQ0IGU1OWExODgyNThiMzQ4ODM4ZmY3ZDYyNDRjMDhmM2QwYjI1OTNlMzQgcHkzaworODQ5NDUgZDZkNjU1ZmRkZjIyYWNlY2RjNjljMTVjM2ViMzdjMmYyNTU3YjZkOCBweTNrCis4NDk0NiA0ODg5YTgxNmVlYzE2OWQ4YWE5NWRjZDJlYWI3NjMzZjU2MzgwYjE2IHB5M2sKKzg0OTQ3IGIxZjUxMzRiMDA0OWJkNjhlYWQ5OTVkNTg1YzJjYTMxZjNmYzk1YWUgcmVsZWFzZTMxLW1haW50Cis4NDk0OCA0ZWMxMjExNTZlZTllZjQ5MjcwZmY0MWQ1YzgzYzJiYzk4NGI4ZjBlIHJlbGVhc2UyNy1tYWludAorODQ5NDkgYTRlZThhNWM2ODQzNzI0NDVkODYwZWJhZjMwNTAzMzY4ZDU0YmY2MiBweTNrCis4NDk1MCA5YWQ2OWZjNGFlZjc1ZDFjMzAxZjg1ZTQwN2NhZDk4ZDg2NGQ5MGRmIHB5M2sKKzg0OTUxIDhjZWViNTlmNDU1MGFmNTFkYTQ3NDUwOGY2OGU5YTFmYmE3MjMxNjIgcmVsZWFzZTI3LW1haW50Cis4NDk1MiAwOGJkMWEwOGM2MmY3NWU0ZDYzOTNhZWRmNTM1MzE4MDQyN2NlYTVjIHB5M2sKKzg0OTUzIDJiOTMyNzc3NzgzMmEyNDRhZjIxZmY3MmFhZTg1ZDBjOTQwMzBkYjggcHkzaworODQ5NTQgOWUyMjE2NDIwY2Q3OTViMjliMzc4Zjg2NmEzMGE4OTZhYWVmMmE1YyByZWxlYXNlMzEtbWFpbnQKKzg0OTU1IGM1Mzc3MGIxNTQ2ZGFkNGI5Mjk5NTljZTM1M2M3MzIyOTJjOTYxZTMgcmVsZWFzZTI3LW1haW50Cis4NDk1NiBjOWVkYmNlM2ZjYWQ4YzZjZDJkNTQzMTAyYTFiZTcwYmNmYTE1NWM0IHB5M2sKKzg0OTU3IGUxYzhlYjM5MDUwNzAyOGE5MTAyMGQ2YjY5NzYyNDNiNTlhMTAyMmMgcHkzaworODQ5NTggMDVhNWY3MWMxYTc4ZjdkY2Q4ZDk5NDYwMzIxMDAzNGY2MmVhMmIyYyByZWxlYXNlMjctbWFpbnQKKzg0OTU5IDgyMDhhNDMxOTFlMjljOTI0NzAwYTkwODhiOGNjZTFjOTgwMTI5ZDYgcmVsZWFzZTMxLW1haW50Cis4NDk2MCA4YWM3MGIxMmNhNjFmYWUyMTQ4NzQwNjc0M2UxYTMyYjhmNDdmNzY2IHJlbGVhc2UzMS1tYWludAorODQ5NjEgYjNkMGRlYWY1MGU1MjMyYzZkOWJlYzc1YjQwNmQ1YmVkYjJjMzljYyBweTNrCis4NDk2MiBkNWZlMDQwZjRhNDhhMjc4MGZlMzMxMmQ5MzgxOGQ1ODgwMDgzNTgyIHB5M2sKKzg0OTYzIDZiOWY4OGRkYjRjZWU5MTQ5YTFjZmQ1Zjc5MDNmN2I0MTM4OTNmNzggcHkzaworODQ5NjQgZjJjZWVhYWFjOTM4MGI1NDIzZTJjNTNkM2Q5NjUxYTJhZjA1YWYxOSByZWxlYXNlMjctbWFpbnQKKzg0OTY1IGViY2Q4MTE1NThkNjdkNjA0NjdhMjI1MDBjYWYxMmJhZTI0ZGJmNmQgcHkzaworODQ5NjYgMzQ3NGNlZTljNzU4YTg2ZTk0MjdlMzFlMWY1NzM3Y2ZmZDViZmQyMSBweTNrCis4NDk2NyBkNTAwMWQ2Yzc3MzY4ZWZiZGFlZjMzNjI5YjE5MjI1NjMyMWM1MDcyIHB5M2sKKzg0OTY4IGY3MDNhNjQzZTZjZTA3YjhjMTk1OGZlMGE3NGQ4MWY2MjAzMWYxNWYgcHkzaworODQ5NjkgMjI1YTZkMWNmODExZjcwYTc0ODMyMTE4ZGJlNDE2NWE5NDk4M2UwMiBweTNrCis4NDk3MCA5ZWE1MDRkNDVlZWFhN2UxYmY0MjhmOGE2NDI5ZGJiY2FmMDU3OWM3IHB5M2sKKzg0OTcxIDk2ZTdlZTIzMmFiZjExZTJkY2I4M2FjMTdhOGU5NjY0ZTlkOGViMzMgcHkzaworODQ5NzIgZGZkNTU4NGViMWFjYjU5OWJkNDJiZWU0YTgyMjRjYmY5ZTk0YzYxNSByZWxlYXNlMjctbWFpbnQKKzg0OTczIGE2NzZhYzA2ZWFjYzA4N2Q2ODFjZDM3MDY3NzFjYWU4ZTIwODA4NWQgcHkzaworODQ5NzQgZmY5MmNjMzU2YzM1ODMxMzRhMmM1MzVkZjRlOGU2MTJkNmU4YTc1ZiBweTNrCis4NDk3NSBlZTE1Mjg1MmM5NGRmOTQ2NzQyZjY5MGZlNjJmYWFkOWFlYmI0ODY5IHJlbGVhc2UyNy1tYWludAorODQ5NzYgZjRhMWM3OTZiYzk4NzQ1M2U1NjhmNjJjNWJhNGI1ZWMyY2M2YTdjYyBweTNrCis4NDk3NyA2MzNjNmIxMWE1YTllNzg1MWFmOTcxMzY2ZmFjOTMxMmFjMjRmNTlkIHB5M2sKKzg0OTc4IGQ1NjBlZWNlMDg1N2YwNmMzZDBkNTNkOGJlNjg2Y2Q1MGZjMTllOGQgcHkzaworODQ5NzkgZTMxNDkyZjQ0MGM5ZThlNTFhOWJlMmI1YzNlMWIwN2YzNDA0Yzg2MyBweTNrCis4NDk4MCBhMGVjYjhlMmQ3NjllN2EzYzI2YWZmZWNhNTVjMDhlZTkwM2VkYzVkIHB5M2sKKzg0OTgxIDUxZDhmZmZjZDI2MGU4MGFhMjVkNTMxMTgwMDYyZjM3ZmNjNTg0MmQgcmVsZWFzZTMxLW1haW50Cis4NDk4MiAyMGYzNDVmYzAzNjExNGI5NGY1Zjk5ZmFlNDc2NDVjZjllODI5YTQyIHJlbGVhc2UyNy1tYWludAorODQ5ODMgZDA4OGZhYTM1NDU2ZWFmYjdlNjI1NDUzMjJkYjQxOWU0ZjhiYWY5MyBweTNrCis4NDk4NCAyZTViZGUzODNhNWM3NGFhMThmMmU0NGNhZjYwMWEzZGZkMmE5MmE2IHB5M2sKKzg0OTg1IDBjNzdkMDBmNGY4MjRlMjg4YjRiODE0OGJmZTE3ZmZkYzkyYjM2YWIgcHkzaworODQ5ODYgYWIzZDkyZmVhOWZkYTVlNWJmOWRlN2U3NTJlMDkyYWYyMTQ4MzE1MSByZWxlYXNlMzEtbWFpbnQKKzg0OTg3IDFkZWJjY2ZiY2JjOWE4ZWVkMDhhMzk1MDZjMGMwNjc3NzBiZGU4MTggcHkzaworODQ5ODggMjhkNDFkMzRhMmU2MTU1OTA1NTQ4ZDUzYjM2NjJhMzNkOWMyYjM5MyBweTNrCis4NDk4OSA3YWNhNDU4NDYxYWIyNzFlNzAzZmY4YmUxNTRjMzg2OTE4MjA0OGNiIHB5M2sKKzg0OTkwIDc5NTJjZmFiYmI4ODc1Zjk4NzRlNzYyN2RmNGFiZWE4YWVlOTdlODEgcmVsZWFzZTMxLW1haW50Cis4NDk5MSA4N2FmZTQ3NDI5YzU2ZDE3ZjQ5NTQ1NTBiZTcyODVjZDZlZmMyYTQ0IHB5M2sKKzg0OTkyIGFhNTZlYmI4ZmU5NDczNGEzMmYxMDljYzBlYTg1MGQ5ZTUxYzc4NjcgcHkzaworODQ5OTMgMjYwZGM3ZGUxZTg3YmU5YjVhYjdmZTNhY2EyZjFmYzgyMDRjOTk2NyBweTNrCis4NDk5NCAwMDcyMjhkMGU1Njk4NDYzMWU4ODAwZTc2YjgxOWUxZThiNjgyN2YwIHB5M2sKKzg0OTk1IDIzNTA0NGIzOWE5MjExYTU2YmI0ZDRjOTZjZGVlNzk4ZTE5YmViMzAgcmVsZWFzZTMxLW1haW50Cis4NDk5NiAxMmUwZGZmZWY3YmQyNDgyNWJiM2JkNzkzNWUzNDQ3NjZlMDdlMzc5IHJlbGVhc2UyNy1tYWludAorODQ5OTcgZjZhMGViNzMwYTliNzg0YmMwYjQ3ZjNjYTVkYzhkZDAyM2Q3OTVmNiBweTNrCis4NDk5OCA4Y2M0YmU2NDhhYjQ5MDZkZGI0ZDZjMWI2NWE2MTY4MTBkNzFiZTRhIHJlbGVhc2UyNy1tYWludAorODQ5OTkgMjYwZGMzNmMyYzg2MWVmN2JjY2E4OWVkNGU4Mjg1NzgwY2JiMWMyMCBweTNrCis4NTAwMCBiOTQ1M2Q1MDRmOGNhNGFlZmEyODVkZjRkMTNiMjRmY2YwOTRiZjJkIHB5M2sKKzg1MDAxIGIyNzhkOTNmOTU4ZWVjMTg0MzgzMDEwMDEyZWVmZTM4NGYwZTgyMDQgcmVsZWFzZTMxLW1haW50Cis4NTAwMiBlNWI3MDc5MzU2NmVkZGE1ZWU0YWVjZTUzNDcxMDI4NTYwMmU2NzdjIHJlbGVhc2UyNy1tYWludAorODUwMDMgYzllMjk5MjQ5MzIzODI1ZjYzYmJlZThhMDg4NzI1ZmMyMjIxYjZiNiBweTNrCis4NTAwNCA5Nzc0YzExZTAzZjZiMGI4ZDg1MzJiMTIwNTcxN2MwMmQ3MWU0MzU5IHJlbGVhc2UyNy1tYWludAorODUwMDUgNGNkMGVkZjBiMzU2MTk3MGRmYmE1YmQwYmViOTJiMzQzZjZmZDkzNSBweTNrCis4NTAwNiBjOWIwOGM1OGYwNjMwYjkxYzliM2Y4ODJhNTgzODk2YzJlMmEzM2MyIHJlbGVhc2UyNy1tYWludAorODUwMDggMGI0OGM2Zjg2NzFmZDRlMzBjMTk4YmVkY2Q1NTYyNGRiYzZhOGZkMCBweTNrCis4NTAwOSBjNTJmNzVjM2ZiYTJkODY0OThhMDUzOTZmMzJhNzkxMWMxYjBmOGI3IHJlbGVhc2UyNy1tYWludAorODUwMTAgNjUxMTE2NWU0ODMwZDhmZjY4NDZkNDc5OTVkYjdmMWIyZTM0YzEyNiByZWxlYXNlMjctbWFpbnQKKzg1MDExIGJjN2Q4ODA4ZjE5NWM5ZDI1MTQ3YzdhZjAzNDBmODNlOTEwMDJiNzMgcHkzaworODUwMTIgMjY1ZjcwMTc3NzJiODcxMTJmMDY1NjFlN2I1MWIzNjdiZWZkMjE5ZSByZWxlYXNlMjctbWFpbnQKKzg1MDEyIDQzZmQ5ZTJiNWU3ZDFmYzNjYmM0Y2ZjYzcxMTAxNmQ3ZjE3MmNkMDkgcHkzaworODUwMTMgNjNiYTdhNGU3YzEwMjIzMWFmNjczMWE1NGY2ODBkMjg3NTE5ZTVlMiByZWxlYXNlMjctbWFpbnQKKzg1MDEzIDQwOWQ2Yzc2YzMwN2U0MzBjZjIyNGZjOGU2ZTYxNzQ3ODE3NmExMGQgcHkzaworODUwMTUgNDAzYWYzNWY0OTQ4N2I5NGU2ODExMGNjNzczZTM1MzlkMTUwN2MyNyBweTNrCis4NTAxNiA2YzY4ZGJmOTMyZDA2ODRmMGUzZTg3NGVkNzVhMWNjMzU0NjhhZGM1IHJlbGVhc2UyNy1tYWludAorODUwMTcgYWM4YWEyMjVjNDE3NWFmZGFjYTMyODdhNmU2ZGQzMDNkY2RlZTY5NyByZWxlYXNlMjctbWFpbnQKKzg1MDE3IDI4ZThmZmIyYWNjYjY5ODQ1YjExZGJlOWU5MDcyNDUzOWQxODhhNWEgcHkzaworODUwMTggMjZkZmU0NGM5ZmFhNDU5ZjBkMGU3ZTAzMmQ5MTE4ZTE2ZWMyOGNlZCBweTNrCis4NTAyMCAwNWM1OGIzZDZkMzk0MWFhZDMxYzNhZTQ2MTRkNzViOWZhYjU1MTkyIHJlbGVhc2UyNy1tYWludAorODUwMjIgN2FjMzBkNThiMWQyMTZkODNhNTQzMDY0YTRhNGYyMGI3YTNiMzc2ZCByZWxlYXNlMjctbWFpbnQKKzg1MDI1IDJmYzczZDdjNzYyMmQyMDZlZTlmMzE5ZDQxZjFmYTBhOTgzNmQ5ZTMgcHkzaworODUwMjYgODg4MTI2MGQxZDE0ZmJkOWQxYWQxZDhmNGZkODZlM2ViMDNlZWQ0ZSByZWxlYXNlMzEtbWFpbnQKKzg1MDI3IDNmMGZmYzgxOTllYWZjZjAzMTFlOWM1MjBmY2Y5Y2IzMjhjY2NhYzkgcmVsZWFzZTI3LW1haW50Cis4NTAyOCBmZDVlNTEwMzUzMzViMzhiOWQwZGI0MzMxMWVhODhjZjk2NDM4MThhIHB5M2sKKzg1MDI5IGU5MzhlY2M1NTAwNTQ4YmE5NDU2NWRhNzgyMjA4ZjhmZTc3MTFjMTcgcmVsZWFzZTI3LW1haW50Cis4NTAyOSA1MmVmYjEwNDRkZTU5MzRmOTczMTk1NDU5OWFlNjAyZjg4MGZiYmVhIHB5M2sKKzg1MDMxIGZmNWQzZTVjNGJiNTk1ODgwYmUzNzhmMTg5ZGRkNjkwMzM5ODg4ZTAgcHkzaworODUwMzIgYWVkMDRiM2YwZmUzODIyZmY1Mzc0YWNhMjFhYWVlODhmZDYwMmUyYyBweTNrCis4NTAzMyA2YjQ5ZWExMWIxNTc3OTBiMTZmNjI2ZGQ3MmJhYWE5MzNiMDdmN2MyIHB5M2sKKzg1MDM0IDVhN2JiODVhNWQ5OWMzNTYzN2JjNDQzODM2NWFjZTY1ZTIzMGY4YWMgcmVsZWFzZTMxLW1haW50Cis4NTAzNSAxZGMyYjUwZDM0NGY4NWU2M2M5YjRjMTUwZDQwNTVjOTAwYmFhYWMxIHJlbGVhc2UyNy1tYWludAorODUwMzYgN2JkYTBhNjMyYjBkNDU1YzU0OTRlMTJlN2JkZWIyNDk3NTM1YTgwMSByZWxlYXNlMjctbWFpbnQKKzg1MDM3IDRkM2ZiY2Y2Zjk2YTBlODIzODg4N2Q1NjRlNTdkOGU5MjQ2ZjhiMTYgcmVsZWFzZTMxLW1haW50Cis4NTAzOCBjZTRhMjJmYzljYzQ0MWM5NTMyMDNhZTRlOTZhYjU0NThiMTI4MDAxIHB5M2stdHRrLWRlYnVnLW9uLXhwNQorODUwNDMgM2Q0OTBjM2EwMTllMjEwYjYzNGVmYmI3YTExMDRkODhhOTk2ZWUxMyBweTNrCis4NTA0NCBmNzZlZjFmNDYyNjYzNzA2NDA0Y2NhN2MxMmNjNmY5NDg0N2IyYjA0IHB5M2stdHRrLWRlYnVnLW9uLXhwNQorODUwNDUgN2RmYTk5MDBmOGM3ODg1Y2ZjY2M5YzBhYTlhMTQ5NmQ0ZGY0NDRhYSByZWxlYXNlMzEtbWFpbnQKKzg1MDQ2IGUxMmJhNDJmODYxZmM3ZWIwNTBjYzg0MjMwZTQxZDczODgzNWRlN2IgcmVsZWFzZTMxLW1haW50Cis4NTA0NyBlMzgyZmY3NDE3OTAyNjJlOWNiNGQ5ZjM3NWMxNmEwYTM3YWVmN2E1IHB5M2sKKzg1MDQ4IGM4ZGM0YjVlNTRmYmQ0ZTE0Y2Y1NjU1MmM3Yjk2OWRiZDc4ZTRhNDQgcHkzaworODUwNDkgM2Y0MjczZDMwYjM4NTI1MTFhMzYwMjFkNTY2ODFjM2YzNmI5ZDc2NiByZWxlYXNlMjctbWFpbnQtdHRrLWRlYnVnLW9uLXhwNQorODUwNTAgMDk4MTIzYTdhMDNjYjdiMWE1YzEyYjdhNGFiOTJhN2Q5ZTQ2YjZiMSByZWxlYXNlMjctbWFpbnQKKzg1MDUxIDRjNDhlYmExMjEyM2VlNTY3OTFjYjhmMDc0YTRiMzA3MDg1NDNmYmIgcmVsZWFzZTI3LW1haW50Cis4NTA1MiA2OTRjYjVkODY1MjUxNTBjYzFlZjM0NjRlNmQxYzA4OTQ2ZWQ1ZWY1IHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTA1MyBhNGIzOTk4YTdhZDQyZGE2MTAwM2ZlNTdlMDk0NzVlNjhhMmZhZWVjIHB5M2stdHRrLWRlYnVnLW9uLXhwNQorODUwNTQgZmFmZTg0MmUzMjAwY2I4YWQ1NzQ5MjhiMWY4MzUwYTcxM2VmMTM3ZiBweTNrCis4NTA1NSA0ZTVkMjAxZmYyOTQwMWIwNTg5N2ZlNTk5YjUzZGRjMzAxOWRlMTdjIHB5M2sKKzg1MDU2IDM1M2YwYzJiYWY3N2QyZGQ1ZjkwOTQ1NWNlYzY1YWVhMTI3MzlmYmMgcHkzay10dGstZGVidWctb24teHA1Cis4NTA1NyBjZWEzN2ZiMDNkYzBmNDlmZGZjY2M3ODE3NjM5OTdjNTQ1NTliMzMwIHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTA1OCA0NWY1NmUzMGFmYTU3NWYzMjJkMTM3NTMzMDRmNDRmNTRiNGRkN2JmIHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTA1OSA5NTIzZGJlMGI2NDk5ZTlhMTBmYjZiYzMxZTZkNWY4YTg4NjhjZGYzIHB5M2sKKzg1MDYwIGUwNjI4ODQ3NjVkNjVhZGY4NDkxZWYyOGQ3MzQ1M2U5OTc1OTRiY2IgcmVsZWFzZTI3LW1haW50Cis4NTA2MSAwNWNlNTg1ZjY0YzQ4OGE4OWE2MDE0ZGQ2MzdlNTViN2I3NTFkZTAyIHJlbGVhc2UzMS1tYWludAorODUwNjIgZTMzMmNkOTVmNDE0YWEwODljZGViZDhiNGJjNWNkNDRkYmJlY2FlZSBweTNrCis4NTA2MyA5ZGExM2U1NjBhM2E5NmRkNTRiM2MxZWFlZmYyYmJlZTUxOWFmMjU2IHJlbGVhc2UzMS1tYWludAorODUwNjQgYWZiMmYxNDRiOThjMjM2NTVhOGVkOGJhMTYxYzQ4ODkzOGZhYmU2NyByZWxlYXNlMjctbWFpbnQKKzg1MDY1IDQzYjc5ZDgwZjVhZWNlYWJhMzA3Y2FkOTg5NTc0N2EyMzI5YjRiMTggcmVsZWFzZTI3LW1haW50LXR0ay1kZWJ1Zy1vbi14cDUKKzg1MDY2IDdkOWJhZjY0OWYyZDhkN2RkMjQxN2Y5Y2E5NmI1NDhjNzVkNDUzNzEgcHkzaworODUwNjcgNjRlNDExN2Y3ODg3NTRhZmYwNDIzZGMwOTBhMGI4ZTA4YTEwY2ZlZSByZWxlYXNlMzEtbWFpbnQKKzg1MDY4IGQxYmVlN2NmNmMyZjJhZTVkZTU1YTlhOTFkNjhlNWZlMTY5MjUwOTYgcmVsZWFzZTI3LW1haW50Cis4NTA2OSBmYWQ3OGU4NmQxNmVjZDM1YmJiNTliYjdjZmRiNjhiMmU2YTE0NjcyIHJlbGVhc2UyNy1tYWludAorODUwNzAgZGQ5NGFjMmE0MmIxN2VmYWNkNTExZDc1NGMyNDNmOGQ0Zjk5YjUyYSBweTNrCis4NTA3MSA3ZTI3NWE0Y2Y5NDEwZDQyOTBkYmJjNGNkNDc4NGUxOWExYjY4ZmNkIHB5M2sKKzg1MDcyIGEwOGU0Mjc4OWU2ZDUxZDIyNDYzNTJkYWQ0OGZiYWU3ODgxZWM2ODkgcHkzaworODUwNzMgNDcyYTZlZWMxOTZhYmZjMTRkZDUwNDM4OWUzY2IzMjBlNWZkNmEyNCBweTNrCis4NTA3NCAwZjhjMmViODlmNDZkNWMwZmFiNzNiODcyZTkyZmNkMWFhMTQwZjk4IHB5M2sKKzg1MDc1IGRjMzgzMzk4NDczNGIyNDkzZWRmMjFjMjE4ZmI2YjYzMjZhMWI1ZDggcHkzaworODUwNzYgNmM4YWRjMjAwZWUwMmYxZDNhMDI0ZjQzMWI5ZWZkYjNiODI2NzdkNSByZWxlYXNlMzEtbWFpbnQKKzg1MDc3IDZjMWYxMGUwNzQ1NTY0MDdjYTk0Mzc2NWMzYjMzOWU0YzhiNGZjNmQgcHkzaworODUwNzggZmI3ZWUwZjJjNmY0YTA0N2E3MDFhMWJmNTA1ZTAzZDBmYjNmMzQxNiBweTNrCis4NTA3OSBjMTg0MjNmNGI5Njg4Yzg5YTA5ZmU2NDBhZTk1OWNmNTBkYjg1ZDNhIHJlbGVhc2UzMS1tYWludAorODUwODAgZDEyZDU1MGViZjM0NTVhYjg5MDFmZjRhNTE5ZmVmMDE5Yzk3NWI2YSBweTNrCis4NTA4MSA1NTIyYzZiMmFmODcyY2UxMGI0NDAxODk1NTBmZDk1MjFiMDJkZGRjIHJlbGVhc2UzMS1tYWludAorODUwODIgNGNmNzdkMTkzZjU3ZjVlMDc2YjFhMTk5NTVlYWJiZGVlN2ViYmQzNCBweTNrCis4NTA4MyBkYzQ1NTU2NDZlODA3ZDgyNmYyNjUwZDg5ZGU4OWQ2ODhiOTBkMjdhIHJlbGVhc2UzMS1tYWludAorODUwODQgMDZmNWUxOTA4NTVhM2ZkNzcyODQ4ODkwZGQyYzhiOTI0MTM4N2U3MCBweTNrCis4NTA4NSBjODY5ZWEwN2NkOWQyNjhjOWU2ZWM4M2ZhYzIyZTA4MmIwMjY5YmI2IHJlbGVhc2UzMS1tYWludAorODUwODYgYjNjN2U1MTYyN2ZkYzY5OTBiZGE2YWE2NTBkNmQwMTEyOWU1NDNmMiBweTNrCis4NTA4NyA3YmIwNTEzY2QwYjgyODkyZWIyNTdjZmU3ZDMwNjgzN2U0YzJmNDFmIHB5M2sKKzg1MDg4IDczNDg1Y2JkNmM5ZWI2ZWM0ZTAwYTA1YjY3MjY0MDhhMjQ3ZGQ1MzggcHkzaworODUwODkgNTlkZmIyMTM4M2Y4YmY5ZjZkMTZmZWE4ZTI5NTU5MjQ0YTU1ZGJmNCByZWxlYXNlMzEtbWFpbnQKKzg1MDkwIDBlZTIxMTNhNGZkZTYyMzY2ZGI2NzM3MjljYzUzNzUwNjAzOWY5MzkgcHkzaworODUwOTEgNzc4Y2I4ZTZjNjM4MzA0MDM0MWFlNDc3NmEwY2RmMWNjY2M5NDg1ZiByZWxlYXNlMzEtbWFpbnQKKzg1MDkyIGUxMmIxMDQzNTUzMDhkYmY3MjVhOTVkNWYzZTkyMzY1ODI1MjlhNGMgcmVsZWFzZTI3LW1haW50Cis4NTA5MyA3YzdkMWQ5NmUyYzMzNDE0YmQ0OWIxMWJlMDA1MjE0OWU4MDhmOWU5IHB5M2sKKzg1MDk0IGM2MjBmZTg3YzcwM2IwOTBmYzdlYTBmZDk0NzI5ZjI5N2YwYWM3M2UgcHkzaworODUwOTUgYWM4ZDljYWMzMDMzNWUzYTIzYzgxZmJlYWE4ZDQ4YzQ4MzUxZWVlNCBweTNrCis4NTA5NiAxOTFlZDJhZDU5OTdjMWZjNTZmYTIzNjkzNWU1OTU4N2I4Y2YyMzVmIHB5M2sKKzg1MDk3IDk2MWY1MzU0ZWI1NDFmNDQ1MGU1MGY0NTE4ZGEwNDMxNzhhYmFiM2IgcHkzaworODUwOTggODAwYWRkYzk4NTcxOWZlZTQxNjdmNzM3ZmRhNGE4MmY4NzAwNjY3MSBweTNrLWlzc3VlOTk3OAorODUwOTkgM2ZiNTgzYzhlOTdlN2Y2NDkwMjlkYzYwZTg2MTdhYzNhMGZmYTA2OSBweTNrLWlzc3VlOTk3OAorODUxMDAgZjRkMDQ3NDkxY2I0MmE4M2YyYTY5NjI3MGVkMzg3ODVjZmIxNDQ2YyBweTNrCis4NTEwMSA5NDEwOTBlZDk2ZGY0ZjA3YWY3ODYxODM1OWJmYWU4OWNmZjRlYWI4IHB5M2sKKzg1MTAyIDY0MzRjZGNlNzE1Mjg1MjNhOWQyZGQxMTNlMTQ0Mzc3YmQ1OTYzNWIgcmVsZWFzZTMxLW1haW50Cis4NTEwMyAwYjRiZjZjZGUxMWRlZTBkNDU2NGRiZDI3Y2Q2ZmFkMmYwMGE0MDRlIHJlbGVhc2UyNy1tYWludAorODUxMDQgMWQxNWI1NjdhNzRiMjgzZWIzZDZmOGI5OGQ5OGNjYzI1MGI0YmFjNSBweTNrLWlzc3VlOTk3OAorODUxMDUgYWY5ZGVlMTI3ZTNjMmI1ZDA2YTdiYTM5YmZlN2MzMzkyMzc2MjkzMiBweTNrLWlzc3VlOTk3OAorODUxMDYgYzRjNmQ4NDJkODJhMDE4NzI1OTBkMDJhMzVmZWQzYzZlNDQ2NjE5NiBweTNrLWlzc3VlOTk3OAorODUxMDcgMzRhYmUzNjkxOWU1M2E0YTIyYzQxYzFmZDA1OTY4MzJjNjI4ODQ2MyBweTNrLWlzc3VlOTk3OAorODUxMDggMTQ3MjU4YTBhZGY4NWNjNGJjNmFjYjlkZGJlY2VmNzJlYTA4MWRjMSBweTNrLWlzc3VlOTk3OAorODUxMDkgMjVlOGI3ODI3YzdkZjM5NmI0YWI0YWYxYmIyZGNlMTcwOTllYTU3MSBweTNrCis4NTExMCBhNDMwZjhmZWM0YTBmYzRkYWM4Yzk2YzdkODc0YTcyNWI1YWNkOTVkIHJlbGVhc2UyNy1tYWludAorODUxMTEgMDA3N2VlMzAxMzRjNmIzZDRkN2IxZjA2OTJiYjA5ZWZiOTI4NTA1MCBweTNrCis4NTExMyA2ZGRjZjc0MjgyMjdhMjI0ODUxZDc0YjZhZDIxZTkzMDM4ZGQwYTYwIHB5M2sKKzg1MTE0IDU5MzZlYzNjNGVjMDI3ZmY5M2ZkMGJhNmNmMDUwNzQ0ODU0ZWI5MDEgcHkzaworODUxMTUgMDFiOTZmNzhmYjcwYjdiZWFiOGY3ZTIxMmI4MWM0ZmQ2ODIwY2MxMiBweTNrCis4NTExNiAxYWRkOGU1ZjMxOTg1MThiMzIzZTc3ZjJhZmNjNDlkZWE5ZDQ0M2ViIHB5M2sKKzg1MTE3IDc0NmU5MTUwMTE5YWRiNzA4MjE2MDQ0YjEwMjQ3M2ZmMmI2NGRlOGIgcHkzaworODUxMTggZTcxMGU3OTJlZjJlNzZiNDkxZmY2MDRjOWNjYTBhY2M5MWZlMTcwYiBweTNrCis4NTExOSBlZjE2ODY4OGFmMGE5NmY4MTVkZDI3MWIzMTYyM2EyOWZiNWZiZjg3IHB5M2sKKzg1MTIwIGE5MzQ5ZmQzZDBmN2JjYWVhMTU2MGFmYTRjNWNkODkzMzAxZjA4YzYgcHkzaworODUxMjEgZWE0NzIzYWFjNDc4ZjRiZDQ0OThiMTJhM2UyYTc4YWFjN2UyNzJhOCBweTNrCis4NTEyMiA0MDMzZjgzYzJkZjE4ZDk4ZmEyNzZlZjM1N2FhMjNiOWNhYzA5ZTA3IHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTEyMyA5ZmUxZGNlMmJmYTQ0NTA2Mjk4MjIwYjViMjgzM2YyOWFhNzFjYzczIHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTEyNCBkOTU3M2UzNjI0ZWMxMjIxZWY5ZDlkZWUxYTZmODljNTdjZmU2ZGZlIHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTEyNSA3YWRkNDViY2M5YzY3MmMzODQzMjYwYzkzNDcxOGYyNmVhN2JjYzBiIHB5M2sKKzg1MTI2IGQ3ODdlZjlhY2I3MjRlOGM1OTc0OTc0ZTBhN2M2Y2RkNjQxMzhiZDUgcmVsZWFzZTMxLW1haW50Cis4NTEyNyBiOTlmNTI3ZTBkNzdjNzAzM2VjMWRlNzk4YzM1OGQ2MTcyZDU5ODljIHJlbGVhc2UyNy1tYWludAorODUxMzAgOWYyN2Q3MmJmNWRmODkzMDhiZjQwYzY4MmE2MTllODljZGE5MzhhOSBweTNrCis4NTEzMiAyODJjNzdkYjNkMzg5YmQ3MzQxYjRiZDZhOGM1YzA4NTgwOWQ1ZTdmIHB5M2sKKzg1MTMzIGNiMmZiYjVlNjQwOTY0ZTdmN2RlNmRmMGZjN2U0NDk3N2ExYTkxZDYgcmVsZWFzZTMxLW1haW50Cis4NTEzNSAwNGY1M2NhNDE1OTZlZTgwMTAzOTMyMzA3NTgxMjYxZWRmNDVhZmFlIHB5M2sKKzg1MTM2IDg3ZjRiMzI5MDVkZjEwNTBlZjBhYzg2NWY1ODRiNGRhZjUzMjA5NGMgcmVsZWFzZTI3LW1haW50Cis4NTEzNyA1OTc4MDRiNDExMjU5YjhjMGY1NjU4NDlhNjQ5NGNlMWM2ZjdhM2FlIHB5M2sKKzg1MTM4IGRhZWNlN2EyMzRkYzkxYTgxOTA2NDM0NTMwOThiMGFkNTE2ZmRlYjMgcmVsZWFzZTI3LW1haW50Cis4NTEzOSA1OWRlMjI1YTE5Y2Y4YWM1NDdhMGNkYmI0OWE5ZmQ3YzJlMDY4NTI1IHJlbGVhc2UzMS1tYWludAorODUxNDAgYTlhMzBjZmI4OWE1ZDM0YmY4NmY3MDE3MDYyY2ZiYTk1MTU4OWY3MyBweTNrCis4NTE0MSA2ZjEzM2U4N2E0ZjhiMWVlZTA4MDlhZDU1YWVmZDU4MzQwNzBlMzg3IHJlbGVhc2UzMS1tYWludAorODUxNDIgMTVjMzY3MWMxNzgzMmQ5YWY5YjE3ZWUxOTg2OWZmZmE5OGM2NTIxMSBweTNrCis4NTE0MyA5YjVlNmE1N2FiMTA1NDI5MWU3N2NlNTEwOGUzMTE5YmY5NmQ2MWIxIHJlbGVhc2UzMS1tYWludAorODUxNDQgMmY2ODMxY2QyNDFlZDcyOTE3NDk4YjBkOWI1YWQxMGEyY2M4YjU0ZCByZWxlYXNlMjctbWFpbnQKKzg1MTQ1IDA2MjJkNGQwOGFmMDI1ZjI1MWI2ZmZlNmJlNWRjMGNiM2QxYzRiYjQgcmVsZWFzZTI3LW1haW50Cis4NTE0NiAyZTY4NDBjMGMxMjY2YjQ2MDZlODU0NTg2ZjdmMmIyOTEwZDRlNGJjIHB5M2sKKzg1MTUzIDk1MjU4YTZhMDY4M2U2YTU0OTVjZDBkMTU0YmZmZWVjZDMwYWZlOWMgcHkzaworODUxNTQgMzQwZDFiZjU5NTFlMTA4YjNmZDAwMzk5ZTUwZWMxM2UxNjIyMjg4NyBweTNrCis4NTE1NSA0NzFkYmQ5MDZhYWQwMTFkMjRkZDhiMjRkMzJmNGIzM2Y4MDFhOWNjIHJlbGVhc2UyNy1tYWludAorODUxNTYgOTFlNjIzODkwYjk0YzFkZTA0MmY2NzAwODQ1NGJkMzMwODIyNWZjNCBweTNrCis4NTE1NyBkZTQxOGQ5ZGQ3MzMxYjYzMjgyNWQzOGZjNjc4NzE5MWE4ODExMGE5IHJlbGVhc2UzMS1tYWludAorODUxNTggY2U0NzVkMzViNTBmYzYzNmU1MmEwNTVlZjUyNzk5MDI1MDU5MDMwZSByZWxlYXNlMjctbWFpbnQKKzg1MTY5IDdjMGYxODM3ZThjYmUyNWQ0N2IzODE3NWNhMzM2MGYzZjZhMjAxODYgcHkzaworODUxNzAgYmViZTVlMzU2NjFlMjA3NmVhN2ExMWE0Mjg2Mzk0ZjA1ZWQ0ZGZhZiByZWxlYXNlMzEtbWFpbnQKKzg1MTcxIGE3NDhiZmNiNjk3MzNjZDlmZDBlOTM4Nzg1N2IzNDYyZDkzYzBlMGMgcmVsZWFzZTI3LW1haW50Cis4NTE3MiBkZTdjZGI3MjYzNTAyYjc0Nzc4NjRjOWRhYjBlNzBjZTJjMDVhYmVmIHB5M2sKKzg1MTczIDBjYzNmZjgwMjBhZTY1Yzk2Y2QzYmNkMzU3YWVjMjhlOTBiZjVmMjMgcHkzaworODUxNzQgNDI4MzE0ZWViMmM3NjNiOWNjYjg3YzMwZDY0N2E1N2Y0YjhiYWRjYiBweTNrCis4NTE3NSBiYjVlMThhOWJkZTNhZTIyN2MzZjFkMDJiZmFmZDYzOWIzM2Y3OTRiIHB5M2sKKzg1MTc2IDhkZTUzNWRlZjEyMjJlNGI3NjVmMDI5NDhjZDMxZDQxMGMxNDUxMGEgcHkzaworODUxNzcgOTA0ODgwN2JlODNhYmI5OTkwM2U1NzM4MDg0MTBiYjUwMjU4ZjhmYiBweTNrCis4NTE3OCBjOTkwZWI5YjYwYTllNDc5YjFlZjU4NzNiZmI0Yzk5ZTI0MGZmOTNmIHB5M2sKKzg1MTc5IGVmNWM1NzIxN2IyMDNlYTc1MGNiOGY0YmY1NTUxZmNmMTI1MTJmODEgcHkzaworODUxODAgMTIxMmU1MDBhNTg1MGU5NDQ0MTEzNGFmMDVkMWY1ZDUxZGFjZmQ2MCByZWxlYXNlMzEtbWFpbnQKKzg1MTgxIGYzYTcwZDk5ZDdlMGZiNWNhNWI2ZDA1MTJmNDdjODdiZjgwZDkyOGYgcmVsZWFzZTI3LW1haW50Cis4NTE4MiAwNzBhOGY2NjQyMjBlNmM1MzhlNThhZDc0ZGNkMzQ4YjU2MmIzMThhIHB5M2sKKzg1MTgzIDM5NGUyNTM4MmE1OTIzNmI3ZDU0OGI0YWMzYzA5ZWZiYzFiNTFkMzEgcmVsZWFzZTMxLW1haW50Cis4NTE5MyBkZWMwODc4OWE5YjQyMzNmNzMzZWYzYjE1YjhkZTk3YzY4MjJhZTk0IHB5M2sKKzg1MTk0IDBmODcwODViMjkwZjQwNjBmYTgwZDlhZmQ0ZWQ2YjlhM2UyMThmODIgcmVsZWFzZTI3LW1haW50Cis4NTE5NSBiOWUyNmIwYzQ2MTc5ODc5NWFjZjRjYWZlNTMyNGRmYTc0NzhhMGE4IHJlbGVhc2UzMS1tYWludAorODUxOTYgOWJiZDQ0OTg2NThlZTM3MTJjMWEzNTI4YjYzZTBiYTk4NjRmNjQwZSBwZXAtMzgyCis4NTE5NyAzYmIzZWU2ZTYwZTBhODIyMTliODkyNmQ2YWQ5YTNkZTliYmEyYzZmIHB5M2sKKzg1MTk4IGJhOGNkMjAwN2QyOTIyZjU0ZWNkMDU1Y2Y1NjljMzBkMjE5OGVlZDAgcmVsZWFzZTMxLW1haW50Cis4NTE5OSAxMzlkZDRjZmI4MGY1NzhkNjUzYzczYmFhNWIzMGFmNTRlODM1OGQ5IHB5M2sKKzg1MjAwIGY3YzkxMDdmN2FiZGUyZjUwN2FhZjc5OWM1YzAyMWU0MGUzNjIxZTQgcmVsZWFzZTMxLW1haW50Cis4NTIwMSBkMWUwY2Y4MThhZDI5OWZmZTY0NWFiZTlhMTJiOGNmZmY1MGZmMWM5IHJlbGVhc2UyNy1tYWludAorODUyMDIgMmMyYmExYjMwODIzZjIwOGQ2MGEzOTQ5MDA1NzNmYmU3ZDAyZmYxNCBweTNrCis4NTIwMyA5NDVhNTVkNGU3M2VmODI1MTQwNzNhZmI2M2E5YmQzODVkYWY5ZGU0IHJlbGVhc2UzMS1tYWludAorODUyMDQgZjExZGM5NDA0ZDExODYxYzJjMTFmZDQ1MDI4NzY3MGNmOWRhY2I0OSByZWxlYXNlMjctbWFpbnQKKzg1MjA1IGFkNDFmYmYzM2UzYjk4ZDRkN2IyNjg1MzE0ODc2MGY0NzQ2ZjdjOWQgcHkzaworODUyMDYgMzJjMzJiNzBhYTMzYmIzNDA2YzIwYzhiNDI4NzcxNjI3MTNmOGY5NyByZWxlYXNlMzEtbWFpbnQKKzg1MjA3IGUxZjZjZTgzNmZjNTMxN2ZhMzkwNWRjZGM4NDM4NjdlYzUzZWIxNTAgcmVsZWFzZTI3LW1haW50Cis4NTIwOCA5ZWI5ZTNmNjZlM2FkOGZlYWZmZGQ1Zjc1NmY2ODhjZTA2ZjgwNzNhIHB5M2sKKzg1MjA5IDhiZDBhMDYzY2ViOWNlN2E5MTQxMWViMDM1ZDJkZmYzZmM1MTZjZjEgcHkzaworODUyMTAgYjc3ZTkxNDQ1ZDliNzFmMWE0NDE5YjZmOWIzMjZlZTQxZTM0OTJkNSByZWxlYXNlMzEtbWFpbnQKKzg1MjExIGIzMzRlYWFkYjUwOGNlZTI0ZmVhZTEzNTliYTE2NzYyOTg3ZjE1NmQgcHkzaworODUyMTIgNmFmN2I0MTAyZDc3ZGNhMTMzOTc5MTE2ODEyNmVkYzQzZGM3ZTdlYyByZWxlYXNlMzEtbWFpbnQKKzg1MjEzIDM2MzNkOGZlNTU1MDZhOWEzZDg3MTVkZWJlNzUwYWE0MTY0YzlkYzEgcmVsZWFzZTI3LW1haW50Cis4NTIxNSBkMTYxZjhjOTY0ZWI4YWI2YWRlNGM1NGY0YjcyNTM1Yzk4OGE0YWM0IHB5M2sKKzg1MjIwIGMyOGZkZWVlYTc4NjA4ODg5OTU4YTllMjQ2NDRkZWZhNTAxNDJlOGQgcHkzaworODUyMjEgNWYyMGY3ZjE1ZWRmNzA0NWQ5YmYzZTgyYTY2ZGMwYmQ4MWNjMjZiNSBweTNrCis4NTIyMiA4ZmU4YjI4MTM1NmMzZGIzYjg1MzFlMTE2ZTg2ZWQwYWM2MzM5MDYxIHB5M2sKKzg1MjIzIDc1M2JmMjNlNDVjNWJlOGMyMzdkYTJiYmY1NGU0MGE4YjYzYTZhMTUgcHkzaworODUyMjQgYjA2NWIxOTQwY2JkOWZhM2NlNjYzNDZmZjYzYmU5MzA1NzYwOGFiNCByZWxlYXNlMzEtbWFpbnQKKzg1MjI1IDEyYzZkYTVhY2Q3MzA2N2M5MWQxNmM4MzdjNWU0OWQ2ZmZmYmM2M2UgcmVsZWFzZTI3LW1haW50Cis4NTIyNiAwOTgxNmZjOWNkZTU1N2QxMTZlYjJhNmMzOTg1MmU4OTU2NGM2YWM1IHB5M2sKKzg1MjI4IGZiODI4NDBmMGU3MGJlY2Y3NWExMmEwOWZhOGZlY2JjMTdkYWIxN2QgcHkzaworODUyMjkgOTk4ODkwY2ZmMjA1ZjMyNDVmN2RmMGYzNjQ3ZDVjNWQwM2MzNDZjNCBweTNrCis4NTIzMiAzZDQyNTBjY2NjZTkxODI2NWM3YTRkNTBlYWZhYTRhZDdhMTJlMjE4IHB5M2sKKzg1MjMzIDc3NjA5NWFhMDU4ZDFlMTA5M2E0MjgxYzZjZmIzNjM1Mjk0MGQ3MGQgcmVsZWFzZTMxLW1haW50Cis4NTIzNCBjNmRkYmZiN2FiNDM4MTk1NGY2YWIwYjYwY2I2NGFiM2MwNDI4ZGQ3IHJlbGVhc2UyNy1tYWludAorODUyMzUgNzliYjdjYWU2OWJlY2I5NjRlMDE4ZDc2YzgwY2RmNzE5MTBjNWQ2MSBweTNrCis4NTIzNiA3NTllNWQyNzViZWIzOTlhMWNiMmIyZDdkNjg4MTIzYzJhYjkwMjYzIHB5M2sKKzg1MjM3IDY0Y2EwMWVjMTcxNWZiMzZlMTgzNzM2MmQ3MjU3OTAwZDUxNDAzNTUgcmVsZWFzZTMxLW1haW50Cis4NTIzOCBjZDczOTE3ZjI0NzgzODY2ZWZlZjRjMTA5ZGEyZDI4MDE4MDZlMmQ5IHJlbGVhc2UyNy1tYWludAorODUyMzkgMWM0MTc4MTFlNTA4Zjk5ZTg1YjFkYzQwZTRjNTY0YmRmOGI2ZWQ4YyBweTNrCis4NTI0MCA4YmNiZGQ2NzMwYTc1NzM4Y2QwNTFkMzlhNjRmZDgwZTU2NDYyMDRlIHB5M2sKKzg1MjQxIDdhMGI0MWYxYzczYjg1MmFmNGNmNWQwOTExN2VlNmM0OThmMzhjZWUgcmVsZWFzZTMxLW1haW50Cis4NTI0MiBlZWRiZTVlYTQ0Y2IyMTU5M2RhYjNiY2RmMzE2MTc4NjBmODg4MDc3IHJlbGVhc2UzMS1tYWludAorODUyNDMgZWI3ZDY5ZDg5NjUwMWNiOTZlMTY0YTBjOTIxMTcyZTQ4YjBjOWM4NiByZWxlYXNlMzEtbWFpbnQKKzg1MjQ0IGE2OGY4NzYzNTU1YjIxNGVmNzM1MjljOTI3NzIxMTIzYWFlMGY5ODUgcmVsZWFzZTMxLW1haW50Cis4NTI0NSA1MzcwZDRmMDg2NDgwOWNlZTFlM2VmNjI5Zjc1ODBkYTgxZTU5ZDc4IHJlbGVhc2UzMS1tYWludAorODUyNDYgYTRjOTc0NmNiMDNjNWE1YmE4NDJiYWRjYmQ4MGM4YmFiODc0NGU0ZSByZWxlYXNlMzEtbWFpbnQKKzg1MjQ3IGJmZWU1NDc4MWJhMWY5M2U0ZDkwZGNmNmVmZjA3ZjE3ZGYzYTVlZTQgcmVsZWFzZTMxLW1haW50Cis4NTI0OCBjOTg3OWIzNDAyZTRhYjcyZDJkMzliNDVkYjVhYTIzZTNkY2Y2ZWE2IHJlbGVhc2UzMS1tYWludAorODUyNDkgZWI4ZTEzNzg0ZGU3Mzg0YzU5ZmRiZTQ3NmFlMzljYjAyYTEyMDU2ZSByZWxlYXNlMzEtbWFpbnQKKzg1MjUwIGI5YTc1ZGQ3NDIwZDA1NjZiNzMyMjU4NzJhNzQ1ZGI2OWI4NzcxYmYgcmVsZWFzZTMxLW1haW50Cis4NTI1MSA5MGUxNzM1ZGY0ZDk2MmNlZTAwYzQ4NjExY2EwYWVmZThlNThlYjA0IHJlbGVhc2UzMS1tYWludAorODUyNTIgMmRlODMyM2JkNGViYTJhYTM1M2NkYjFmZDY4MGExOTNhNzQzOWE0YSByZWxlYXNlMzEtbWFpbnQKKzg1MjUzIGEwNDc5MzQwZjAzNTJmMmFlNjNiYjM2ZmQ4ZDY0ZjYxNjlkOTQ3MDUgcHkzaworODUyNTQgZjAwNDQwYWY5NDEzNzhkYWI0NGQ0ZTFkMDc0YmJiYzBjNTM2MDkyYSByZWxlYXNlMzEtbWFpbnQKKzg1MjU1IDA0NGNjOGE5ZjE5Y2ZhMWI3N2ZhZDBiOGVhMzYxZjlmZWE1NDRkMTAgcmVsZWFzZTMxLW1haW50Cis4NTI1NiA2ZjlkMTVmY2NmYTRhY2YxYWZhMzcwZjIxZmIzY2ZkZmFiMjNhNzY4IHJlbGVhc2UzMS1tYWludAorODUyNTcgYzYxYzAyYWMyMDk5ZmJmNzg2NGVmZmNiZWI0NDA2N2M5M2RiZDIyMiByZWxlYXNlMzEtbWFpbnQKKzg1MjU4IDY5NTlhZGJhM2I2YTVkMjI3ZGI4OTE5ODFiMjk4YjA4Y2M5ZmQ5ZWMgcmVsZWFzZTMxLW1haW50Cis4NTI1OSBhNWM2M2IzYTk2YTlhOGYyMjQyYzNkMjA5NzMzYjNhZTg0ODIzZjRiIHJlbGVhc2UzMS1tYWludAorODUyNjAgMjgzMDYyNDRhZmEwZjQ1ODljMWM1OWVkNzQ0MDM4YjgyZGRiNDkzYiByZWxlYXNlMzEtbWFpbnQKKzg1MjYxIDY0OTg5YjAzMzk4Y2EyZjhmYjY2ODg0ZjIxOWRhOWQ5M2FhNzBmODMgcmVsZWFzZTI3LW1haW50Cis4NTI2MiBmZjczNGYyMjViNDdlOTY4OWJkMmRkMTA1ODVlNzAyYzY0NDhkMDIzIHJlbGVhc2UyNy1tYWludAorODUyNjMgY2FiNDU4NjM4ZTRkYjU0N2UwZGY2M2Q0MDc5NWYyY2Y5ZDJlODgyOSByZWxlYXNlMzEtbWFpbnQKKzg1MjY0IGJhYTk4YmE4NWZkNDExODljMGE5NWMxNTBmZmQ0NTVjZWRkZmM3NjEgcmVsZWFzZTI3LW1haW50Cis4NTI2NSAyYzExNWJmNTJjZmY5Y2U1ZmJmYzIzMGNjNGRiMGFmNTY3NGVjZGE5IHJlbGVhc2UyNy1tYWludAorODUyNjYgMjg1NjUxYTE1MzU1ZWNkZTQwNTk4OTk0YWY5NWI0MmRjMjA3OGQyNCByZWxlYXNlMjctbWFpbnQKKzg1MjY3IGNlMjAyMTUyZTIxYTExNDNlNmU5YmVhY2FmODAyZmViN2UxOWNlZjAgcmVsZWFzZTI3LW1haW50Cis4NTI2OCA1MzZkODY1MGRhM2RmMGQ5NjdkYzk3NzhlMzM0M2FiMmFjOTg5NmNhIHJlbGVhc2UyNy1tYWludAorODUyNjkgZTllMjQxYTkzZjllZTMwY2VmOTM4MTA2MjNhZmQ3YTgwZDliOTJjYyByZWxlYXNlMjctbWFpbnQKKzg1MjcwIDc4Mzk2ZWY0ZDgxY2Q2Yjc1M2NhNTgzNzNhOGNlZmE0OGY1M2YwYmQgcmVsZWFzZTI3LW1haW50Cis4NTI3MSAxYTBlMDY2OTc3OWNjYWY2ZDgyNzA4ODEwNzU2MTNiYWYyMWU2ZGY5IHJlbGVhc2UyNy1tYWludAorODUyNzIgNTIxZWFjMzFhODkzYTk4YTBkNWFmMzQ0NmU4MzViMGRmZjQ3YzRiNSBweTNrCis4NTI3MyAxY2ZkM2IxMjQ4OWRhZTk0YTFmNjRhNzk3ZmM2MDJjOTlkN2IwYjU0IHB5M2sKKzg1Mjc0IDlhZmVkNzBkM2FjYTFjNjM3OGFlMmMzNGQzYTVkZGNmZjc5YTc3Y2EgcHkzaworODUyNzYgZGY4NDRiYjY3MjlhNGJjNjYxOGJhZGUyYzYwYmQ4YTU4ZTkwZDc1ZSBweTNrCis4NTI3NyA5MjU3ZjA4M2ZjZmYyMmY0M2ZjYTk4ZWQwYzdhZjk3NmRiM2ZlNGM0IHJlbGVhc2UzMS1tYWludAorODUyNzggMDE5MjA1NWJjYzNiZTkxNTkwNzYxNzdmYjU4MjczMThkMGNjMDNhZCByZWxlYXNlMjctbWFpbnQKKzg1Mjc5IGQ2NzI3NTNhMDNmMDA4Y2U5YjI4NGFkOWJlNDdkMDMwYzE4NDdiM2IgcmVsZWFzZTMxLW1haW50Cis4NTI4MCA3MDE4MjYxZjJhYzFkYTExMTBlNTc3NmY2MzBmN2QwY2RhZTQzOGJkIHJlbGVhc2UyNy1tYWludAorODUyODEgMmQ5OWVkYzRmMTBkZmIwY2ZkYTRhMjZhN2ZjMWMwZDBiNDJlNThjOCByZWxlYXNlMzEtbWFpbnQKKzg1MjgyIDViNTVlOGE5YzEwNzFkMzY0NDk0NDgzODJiY2Y1NWZiOGNiN2ZiY2YgcmVsZWFzZTI3LW1haW50Cis4NTI4NyAwNjZmYjNmYWY2ZDUzOTJmMmVmMzIyMzMwOGQ4ZTMxMGU1NzE4NjRiIHB5M2sKKzg1Mjg4IDg2MjlmN2Q4YjVlMzM3YjBhMDk3YWY4MDc3OTI1Mzc5ZDcwNDY4OTcgcHkzaworODUyODkgZDBjZTNlYjExYjI4NmFiNTQ5OTk5MmQxZWI4YjMyZGYwNWY5MzMyYSBweTNrCis4NTI5MCA0ZGE1NWM0OTM0MzU3MDAxNWE0OTQ4ZjBkYzFlM2E5MzM1Mzc2YjA1IHB5M2sKKzg1MjkxIGI4ZTc4Y2ZjOTRlYmE2YWU0NjI1ZTk3YjI5NTY2NDE4YTIzYTQ4NTIgcHkzaworODUyOTIgMzJkY2NjZGM3M2Y4ZjZmZGU4NWY4YTU4M2NhZWQ0NDk4ZDc4NmQxMSByZWxlYXNlMjctbWFpbnQKKzg1MjkzIDdjMTAzMWQzODIzY2M0ZGI0NDU5Mjg3ZDM4NDUwNDBhYTQxNjhjNzcgcmVsZWFzZTMxLW1haW50Cis4NTI5NSA2MmM1OGRjOTEyZTgxNjU1NGI4NzhjZjc2ZGNmYzFmZGNhYjA2YTdmIHB5M2sKKzg1Mjk2IGYyMzdmZGU5MjVmYTdkZDRlODc3MjJkNzY4MmIzOWFlYjAwYTViYjQgcHkzaworODUyOTcgYzFlOTU0MmI2Yzc0YWE2M2YwOGE2YTQ0ZGE3YzgzYTZjOGM2NjQ5YyBweTNrCis4NTI5OCBlM2FlNWIwMGJhMTVlZWU3YjY1YjQwY2EwOTJiNTQwNTQ5ZDkyZjMxIHB5M2sKKzg1Mjk5IGE2MmM0ZDVjZGY2Yzc0MzgxNzBlYzYyM2NhYzg1ZmVmMjFmMjQzMTEgcHkzaworODUzMDAgYjI0NTdlYjgzNGFlMDlkMjg0NjI4ODM3OWVjYmYzNzE1OTllODUzYyByZWxlYXNlMzEtbWFpbnQKKzg1MzAxIGRmYjM0ZTVmZTA2NjE5YTg1YzJkODhjYjBlMDcxOTc2OWI0OWZjZGQgcmVsZWFzZTI3LW1haW50Cis4NTMwMiAwNzFmMWY3YWY1MjIzYjg4YjIxZWYzYzZhNmQyYzFkYmUxMTcwNDc2IHB5M2sKKzg1MzA0IDM5MDE0ZjBhYmMzMjgyOTViM2I3ODBjNzYxMjc5MDc0OTg3ODVlNWQgcHkzaworODUzMDUgNzg3OWE4ZWM3Zjc5YTkzMjNjY2M1MGFlZjU0MGU4ZmY0ZjY2YmI5MCBweTNrCis4NTMwNiAxZjM5MTlhZjhhNTM2ZDE4ZWVkNDc1NDhjMDViMmU4NjkwMThjMTg0IHB5M2sKKzg1MzA3IDIxNDdjYzE1MjIyNzE1NDExOTAwY2MyNTI1NzUzN2MyZDdiOGUwMGQgcHkzaworODUzMDggOGZkNWQwNjQ2MmU2YjhkNWYxNjE4NjllN2M3Yzc0ZWM5NDUwMTQ0OCBweTNrCis4NTMwOSBlNGJkZDA3Y2UwYzYyNjkzOGNjZDk5MzZmZjIzZjE1OWZlZGExOGQ1IHB5M2sKKzg1MzEwIDFjNDc3NGI0ZTk4YTQ2MmNjZDAwMjBiMDVjZGFhOTAzZDIzNzVlYjcgcHkzaworODUzMTEgNzdhNmEyNDllMjRlOGU2MmVlZjVmMzVmMGViMGIxMmI2Njc0NGYyMSBweTNrCis4NTMxMiBmYTZlNTAyMDhkOTMwOTVhNDhmYjI2YmYzNWZlOGZmNDE1NmI5NTBkIHJlbGVhc2UyNy1tYWludAorODUzMTMgMzlhMGI5NDNlM2UxZjE3ZjEyMmYxZGVjODAxZjA2NWVmZTdkNTI3ZiByZWxlYXNlMzEtbWFpbnQKKzg1MzE0IDg4NGM3MWNkOGRjNjk1YTkyYjE2YzMxMzg3NzkyYWFmYzEyYzNkMWEgcHkzaworODUzMTUgYTE0ZTA3NGZhNDJmYzU1MmMyNDlkYzY3YjEyNzc1MjQ0NGNlYjUzZiBweTNrCis4NTMxNiBjNDExNTUyY2RjN2NkM2JlODlmNjEyMzUxNTcyZjYwMWMzY2I2ZWExIHB5M2sKKzg1MzE3IDhjNTc2MDJlYTFiMzBjMmFhMjFlZGJjN2VkY2ExZTIyZjA4YzdmZDkgcmVsZWFzZTMxLW1haW50Cis4NTMxOCBhY2RiMzIwMDVjMGFjMzBmYWMyODVmODM5NDlhZGE4MTY1Mjk2MWEwIHJlbGVhc2UyNy1tYWludAorODUzMTkgNmEyZjhmNjkyZjA0OGNjODllODI0YzI5ZTgyZGQ0ZWZjMDMwNjI2YyByZWxlYXNlMjctbWFpbnQKKzg1MzIwIGE5OTY0YTRkM2MyOWYwNjFmZWMxOTBlMWRlYzI5MDI0OTE2ZjZkYWMgcmVsZWFzZTI3LW1haW50Cis4NTMyMSA0Yzk4ZWVmZjM3ZTdmM2MzMmVhOTYwMGE3NzY5MWU1YTAzNTBmMGIwIHB5M2sKKzg1MzIyIDFhMDQxZjM2NDkxNmJiM2QzYWIxYjM4NmJhNDA1YzY2OGEwNzFlY2EgcHkzaworODUzMjMgNDk4NzM0NGNlZTIwMDEyOGVhYTI3NWY5MGI4ZDk2OWY3ZGJlNTNiMCBweTNrCis4NTMyNCBiMWZiMDUzOWJmOThiY2I0NDk2NDljMjEwYjgyNDczY2UxMjkwYzA1IHB5M2sKKzg1MzI1IGRiZTAyZTkxNmFlY2NmNGJlODU3NWQ1MDE4YTVmNzE1OGU1ODljNTkgcHkzaworODUzMjYgNTY5M2RlZGU5YTNhMDg0MDJhNzBlZjAxZDExNzhjOWRiZjczZWUyNiBweTNrCis4NTMyNyA5YzAyNjE4M2Q4MmE0ZWE5MDQxODlkYzAyZWY0M2JjMjZiMWI3YThjIHB5M2sKKzg1MzI4IGFlZGRiMTg3ZmNiZWJhNTZlMzdjNDcwMzE4ZjdkNDIzMzEyN2IyN2YgcHkzaworODUzMjkgMGJiYzNiYjAwZmM0ZWJkYmVjN2U0MThjOTg4NDgxNGJmZTc3OWY4YyByZWxlYXNlMzEtbWFpbnQKKzg1MzMwIDUxNTc1YmRjNTQyMDZmZWFmODFhMDg1YTdlMDVkNzQ1OWQwNTNiZTUgcmVsZWFzZTI3LW1haW50Cis4NTMzNSA0MmQ2YzI2MmM5NDY2NzA1N2VjNDI1YmRiMmJiZGJmNmM5ZjMwNTAwIHJlbGVhc2UyNy1tYWludAorODUzMzYgMGM0ODg0ZGI1M2UwNDkwMjVjZmQ1NjZmNWJjNjkyMzg0MGNjMzNjZSBweTNrCis4NTMzNyA2NTQzZmE0YjE0NTgxNTIzNGJiMmI5Zjc3MTZjMTUxYzJhYTdhZWVlIHJlbGVhc2UzMS1tYWludAorODUzMzggN2UwMWQ2OTY0ZDVkN2UwYWIwNzdhY2JlNzIwY2Q2YWFmYjQ1OTcxZiByZWxlYXNlMzEtbWFpbnQKKzg1MzM5IDJkMTY0YjFhZWI3OWI3ZGUzMWNkZTRjMjk1ZWIwMTI3ODI1YmUxZjYgcHkzaworODUzNDAgYTdhYjA0OGM2ODQ1ZDhlOTNjM2FjY2FiYTJmN2QwYzI3MzFmODg4MSBweTNrCis4NTM0MSBlN2M5YTg1ZmU5NjNiNThkZTBmNjg0ZDZhMzlkM2RjMzk1ZDY0NDJlIHBlcC0zODIKKzg1MzQyIGNmMmM1ODNiMmNiZWJmMThiZGFiNDkxMDFmMWU1MzJhZmZiNzNmNjkgcHkzaworODUzNDMgODEwYjU0MGFlNjUwZjc2ZGMwMmJlOGFkMTBmNWRjODVkMjI2OGRlMyByZWxlYXNlMzEtbWFpbnQKKzg1MzQ0IDBmNmZiYTY1YmNkZTdkMjkxNDkwZjgwYmQ2YjUyNjQ3MmI4NjVkMmUgcmVsZWFzZTI3LW1haW50Cis4NTM0NSBiNjI4OTllZDdmYjdkNWIzNzYyZjE4YTZkMDRlNzExZWFmYzIxOWFkIHB5M2sKKzg1MzQ2IGQ0NzVjOTQ1NDZiZWQ2NTRlOTVlODMzZWYzYzQ1ODZlYjE5MmZkMzcgcmVsZWFzZTMxLW1haW50Cis4NTM0NyBmZGViMGRjYjlhM2ZkMGQxOWY0NjNiZGEyYTFmNjY4ZTU2N2I4M2VjIHB5M2sKKzg1MzQ4IDJmYTlkNzM0NWFjN2ZhM2M5NDgxMzYxMTMyZDRhZjQ2NDUxNmVkOTQgcmVsZWFzZTMxLW1haW50Cis4NTM0OSA1MWQzMDRlYzZjMTFiNTk3NGY3NGVkNTg4YTVhODI2MmQ0YjkzMWQ4IHB5M2sKKzg1MzUwIGE5YTQ1NjI0Y2VkZjFkZTMyNDU1Y2QyZTI2ZTg2ODIwOTNhZjhiOTYgcmVsZWFzZTI3LW1haW50Cis4NTM1MSAyMzEzNGUxNjczZDcxYmE5YmQwZjQ0ODcwZTM3YTgxYzZmNmI5OGNhIHJlbGVhc2UzMS1tYWludAorODUzNTIgZWQ1ZTU5OGRhMTUwZWY2YjkwNTZhMDcyNzMwYTRiNDkzYThiMzNiYiBweTNrCis4NTM1MyAyNWQwNzg3MzljMmE0ZWQ4Mzg1ZGQ2YWQxNmU3MWU3Mzk2ZDBiMTQwIHB5M2sKKzg1MzU0IGMwMTllOTc3ZjIyMmMzMGJkMzZlYTMwMDcxMmE4NzUxNTQzNDNhNjIgcHkzaworODUzNTUgZWYyMWY4Yzk5ZmIzNDA1MmNlZDM2YmViZTI4ZjlkNGM1ZGVhNjVlMiBweTNrCis4NTM1NyBkYTAxMmQ5YTJjMjNkMTQ0ZTM5OWQyZTAxYTU1YjhhODNhZDk0NTczIHB5M2sKKzg1MzU4IGFkMTViODkxMDZkZTNiZTA1ZTBmMDM5NmIwNjdhODdjZWRmZTBlMDEgcmVsZWFzZTI3LW1haW50Cis4NTM1OSA0NTE4YjJjMmQ2MTRmMTM4MTdkOGU4NzVmOTUwMzMyY2E1YTcxOGVmIHB5M2sKKzg1MzYwIGNkYzk1ZmRkZGI3YjJiYTlkYWEwMzI3Y2FhNWZlOWMxZjhiY2YyZGUgcmVsZWFzZTI3LW1haW50Cis4NTM2MSA1ZWRlMTVlMTI0NTgxNjk5MDkzZWNjNDUyMDZmYTBiN2Y1ZDNmMDBhIHJlbGVhc2UyNy1tYWludAorODUzNjEgZDUwYmZiN2FiNTdjOTI2YmYwN2ZhYmI5OGNiNzhhYWMwNjA4MzhiNyBweTNrCis4NTM2MiA0NzU4MzA0MjRjMWU4MTg2MDU5OTQ1M2IzMDlhOTc0ZTZlM2ZjYWM2IHB5M2stdHRrLWRlYnVnLW9uLXhwNQorODUzNjMgNWFhZWZhOTc1MmFjYjQ5YTgwN2FkY2VjYTM1ZDIwODViYTM0MTM2NiBweTNrLXR0ay1kZWJ1Zy1vbi14cDUKKzg1MzY0IDYyYzE0ZWQ2YjhhMGE2MjRhOWEwNTliOGEwNDRkYTdiOGY1YWM1N2QgaXNzdWU5MDAzCis4NTM2NSAyNjc2YWY2NTUxNGQ0ZDk3YTlmYTJiOGI3NDQyODMxMTBmZmY1ODNlIGlzc3VlOTAwMworODUzNjYgZDQ5MDlhMDU2ZDRlNzgwM2JlOGEwOTIxZTE4MTdhYjJlNWQ4OWYwMyByZWxlYXNlMjctbWFpbnQKKzg1MzY3IDQxYTlmOTUxZWJlYTVlMWFjNmNlZTYzMTFkZmNkNzM0NTg4NTcyNzAgaXNzdWU5MDAzCis4NTM2OCAwYWRiNjQ0MDU4MWVlMWQ1YTZmM2E2ZWE0NDFmY2M1ZTk2NzljZDY3IGlzc3VlOTQzNworODUzNjkgZjdmNzA1MjkzMTBmODRiOTEzYzkyYzgxNDZkZmZlYWY3YzdiZWQzMCBpc3N1ZTk0MzcKKzg1MzcwIDlkNmQ4MzA2M2VjMjJiZGM0MjNkNDExYWVjMDAwYjM4ZDkzZmNlYzYgcHkzaworODUzNzEgY2JkZTgxZWY0YWY3YzAyZWM4NGU4YTg4YzBkMmUzMjQxYWVkNGNjZSBweTNrCis4NTM3MiAxOGI3MjU5Y2Q5MmQ4MzhlZjY5ZmRjZGE3NjgzN2IzYzhkNWZlNmQ1IHB5M2sKKzg1MzczIDk3ZjgwZDBhMWQ1NjM4YTNhMWYzZTcyZmZhNDRmMDZlNTQ0MDdlYjggcGVwLTM4MgorODUzNzQgNjY5YzM3Mjg3NTBiMTc1NmZiZGI4YTI5ZWFkMTYyYmMzOWUxYzAxMyBwZXAtMzgyCis4NTM3NSA1ZmExMjVhZTA3YTY0MTcyMzhhMGY1ZDc0MDFlY2M4YWUxNzFmYTQyIHB5M2sKKzg1Mzc2IGYzMjAwYmU0ZWFhMDk4NGQ4MTMzYjUzYTdlYTBmMDY4YzMyNDE1YmEgcmVsZWFzZTMxLW1haW50Cis4NTM3NyBmYWE0ZTIyYWFiYTdlNGIzNmVmOTNmYTBjZTYxYjBmMGRjYTMzMTNiIHJlbGVhc2UyNy1tYWludAorODUzNzggOGNmMWFmZjE4NTljNjI2M2E3NWEwMGVlZmM0ODEyYjVmOGVhYWZiMCBwZXAtMzgyCis4NTM3OSA2ZDkxOGQ5MTBhOTY4N2Y5OGU5OGU0YjIzOTQ3OTdjYTNjZjY3MTdiIHBlcC0zODIKKzg1MzgyIGQyNDkyOGMyODAwMTkxOGI0ZGM2ZWMzZTEzMWVjOTI1ZTY1ZjAxYTQgcHkzaworODUzODMgOWM3MjNhZmE0NGRhYmI0MjE4MTlhN2M3NDQyZTY4ZjRjMjhkZTRiZCBweTNrCis4NTM4NCA0NjEzZTE0NDkwMDA2ODI0M2ZjMGQ4MjhlZGI3YzFlMTE5NzYzY2NkIHB5M2sKKzg1Mzg1IDllMTQ3YzM0OTEyNmM2ZTgxZDYxNGM1MGI3OTZiM2RmNzQwYWRkNmEgcHkzaworODUzODYgZGVkNjFlMjZiODQxNGY0N2FkZDZjYTc0OTlhMWY0NDM2OWQ1ZDcwNyBweTNrCis4NTM4NyBhODE3MjA1ZDI1NGE5Zjc5ZmU3ZmRlYzIzZTNjMmViNDVhYTk2NjZjIHB5M2sKKzg1Mzg5IDM5YjM4Y2ExYWMwNGJkMWI1MWFjYjFlOTVmMWI1YmZkMTRkM2VjODggcHkzaworODUzOTAgMmZmYmZiYzBkM2NiMTZjNjE3ZTJjODlhNjQ2Yzk0NmFmMWYwZTM5ZSByZWxlYXNlMjctbWFpbnQKKzg1MzkxIDYxNzMxZWM5YTA0ODFlNTcxNjA2ODAxOTQ2MWYzZWI5OTdhZjExYmQgcmVsZWFzZTMxLW1haW50Cis4NTM5MiBlMmFhM2IxZDA4YmNiYzEwYWY0M2RiMGYyY2UzMzZlMGIyODdhOTU1IHB5M2sKKzg1MzkzIDc5MDk0MzY0MDhlMmVlMDhjNGExYjEyYTc5YTZiMjBmYjI4YTc2MjYgcmVsZWFzZTI3LW1haW50Cis4NTM5NCAzZThkMjg4ODZhZDY2MGQ5YzM5NGIxNDJmMmFhOGZiOGVhYWIzM2U2IHJlbGVhc2UzMS1tYWludAorODUzOTUgZjJmNTJiNDBjMWYyOGQyODA0ZWE0NjBlMGMxNGYyY2Y3ZGEwOGU1YiBweTNrCis4NTM5NiBkN2E3MWYxZDFlMzQxYzJhOWNkMWMzMmQ0NWE5ZTZhYjM3MTA3ZjBiIHJlbGVhc2UzMS1tYWludAorODUzOTcgMjE5NTdiM2IwYWNhMDkzMzQxYzA2MjYyNWI1M2U1NGViNWM3NzNlYyByZWxlYXNlMjctbWFpbnQKKzg1Mzk4IDc1YmViNjc2MmUzYjAyMzY3OWQyMGZiNmRlZTliM2QxODdkM2MyNDQgcHkzaworODUzOTkgYzA5MDhjZWJmMTg0MTBmYzcwZDhjZTNkOTJhZTE2NGY0OGE3NDU3MyByZWxlYXNlMjctbWFpbnQKKzg1NDAwIGQwZjYwYmViMjhmMjNmMjMwNDc5YjJkYTIzZmU5ODIzNTI1YTU3ZWQgcHkzaworODU0MDEgZWFkNTM2NGM0YTU5YTczM2E0YWUwZGQyNmJhNmJmMjUyMDZiODczOSBweTNrCis4NTQwMiBmMjljZTBjYzFkNGNlNmI2Y2QwZGUyMGEzMDU5YTJjMTBiNDdhNzJiIHB5M2sKKzg1NDAzIDc1MjA2ZGY4ZTU4YzYwMjg1MGQwZWY5ZmQ2YzFiNjY4YmExNDZiMTcgcHkzaworODU0MDQgMmNlNjQ5NjBkNDkwZGI2ZGZhNDczYmYzZDZkNWMwZDg1ZmY3MTVhNiBweTNrCis4NTQwNSAyMGY0NjNhNDU4NGQ3YzQyZTAzODZhOGYxMDA2YTM4ZWU5OTAzZmFjIHJlbGVhc2UyNy1tYWludAorODU0MDYgMjQ2ZDNkZmNlN2IxMDNkMGQ1N2YyNGQxOWVlMTBlOTA1NmI3YzlmYSByZWxlYXNlMzEtbWFpbnQKKzg1NDA3IDIzZWMwYmUwN2UyMGVkZGY4OTljNGM1MTQ3N2VjODM2NzQ1YjBhMzcgcHkzaworODU0MDggMTIzMjdiOWQzMzI1MTk4MWE1ODEzMWE2MDFlNTI1ODlhYjA2ZWYwYSBweTNrCis4NTQwOSBjYjZlOWIwM2QwYzMyMGM4NmIzZWQ2ZmQ5MTdmM2IxMWVmY2ZhNTA1IHB5M2sKKzg1NDEwIGExNTY3ODkzNzgzZjIzMmRlMGEzNjhiZjY1ZjliN2VmYjIxNjYyMzcgcHkzaworODU0MTEgYmY1Y2ZlOWEwYmI1ZTUxZTgyOTUxM2I2NDU3NDEwZDQ1MWUxNDY2ZSBweTNrCis4NTQxMiBkMDJkNmJiMDI1Mzg1MjUzOTZmYjI3MDBjYTMxNjgyY2E5OWFlYTc1IHB5M2sKKzg1NDEzIGU1MTdjM2Y1NjA5MTg0YjFhMzdlZGY0ODQxNTkwZmI0NThmNWE5MjIgcHkzaworODU0MTQgNWVmNzZiYzE3MWFkNmQ3ZDg4NGJiZTRhN2FlZjVjNDk3MDMxYWFhMSBweTNrCis4NTQxNSAzNzIxMzQzOGUyMWZhZmZmZTcxY2Y3MGVhYjdkNzIxZTY5NDVkOTBkIHB5M2sKKzg1NDE2IDQwZWNiNGQwMGYyNWFiOWIxNDZlYmU5MmUwMjE1MjlkYTg2NjIwYzkgcGVwLTM4MgorODU0MTcgYzQ4YzA5ZTY5M2U2YzkxOGU0OGQyMTkxZGVjYzVjMGEwOTA2OTEzNyBweTNrCis4NTQxOCBmYTkwNTcwMDc3NTU1MWY0NzUwNjk0NjQ1NjhjOWZmNWEyN2QwMTdlIHB5M2sKKzg1NDE5IDBkMTZkNTBjNTdhMGYyMzQyY2UyODU3YWEwMDgwODVkMGFhYmU0OWEgcHkzaworODU0MjAgMTg3NWJmZWQ1Njg5YjlkMDI5MjliNjhkZmE5ZmE4YmNhZjkyMTE1MSBweTNrCis4NTQyMSAzNjE5YzEyMTQwMDdkM2Q1ZTNkMDdkMjM1N2Y2N2IyMmFkMjQzMmY3IHJlbGVhc2UzMS1tYWludAorODU0MjIgZWVhZWRjYmUyODFkNTg0NGZiMzVhM2QwMzRhMzAzMGNlNGY4ZWYyMiBweTNrCis4NTQyMyA2ODk5YTljYTVmMzUzNWRiMzQ5MmFiZGEwMWY2YzQ4ZjE1ODNkZTc0IHB5M2sKKzg1NDI0IDhiMTkyNTAyYTRhOWFkNzg4MzkwNjk2Y2RhMzdjMjZmMTNjNmI3ODggcmVsZWFzZTMxLW1haW50Cis4NTQyNSA2MTBjMjViNWNmYTI4OWJmNzU0Njc4YjZkMzQ2ZmM2NTA5M2Y5YjI2IHJlbGVhc2UyNy1tYWludAorODU0MjYgYTFlZGRjNjRiNzUwNDljOTc4ODEwNWE5M2UxZTM3NDdiYWU1OTk1MCBwZXAtMDM4NAorODU0MjkgMTk2MGY1OGFmNzg1ZDRhNzBhZGJmYzA0MTkyZTc4MmI4MTZiZjE5NSBweTNrCis4NTQzMCBhNzVmZDMxZGRhYmJlZWNiMDM4YWVjNmJmNGI0YjVjNzFiZDc2YzliIHB5M2sKKzg1NDMxIDAwZDEzYjJmODFhM2MzMWExMjM4ODVmZmYwYmJiNzg0NmJjYTY1YjEgcmVsZWFzZTMxLW1haW50Cis4NTQzMiA2MWMzNTQ3MmE0ZjgxYTQyMjc3NzFjMWY4MGRiNzBhODNlMTVhYzY2IHB5M2sKKzg1NDMzIDY0NzRhZGRkMjgzOGI3Njk3N2ZkYjg1YmZjNjIzNzAwY2IzNDdiM2UgcmVsZWFzZTI3LW1haW50Cis4NTQzNCBmMmY3YjcwZmM1ZWJlNGY5MGFhNDM1MDg0YjkxZmM5NGUxZDdjNjMxIHJlbGVhc2UyNy1tYWludAorODU0MzUgMzMzNWVkY2U0OGEzNTQ2NDliMmE4YThiYzhkY2NiYmFhNzIwNTE1NSBweTNrCis4NTQzNiBhNGE2ZDgyM2ZmODk1MTY2MjJmMTUyM2U0ZDE5NmE5OTkwYmNkZDJkIHB5M2sKKzg1NDM3IDQ3NTU3NDQ3MjRmMjBiYWQ0Nzc5NmI1Y2Q3NjdmYTA2NzY5ZWIxNjAgcmVsZWFzZTMxLW1haW50Cis4NTQzOCAxZjIyNWQ2Njk0MWE5MjMwMjY1MjIxYzgwMjAzNmVhODQxYzJiN2I1IHJlbGVhc2UzMS1tYWludAorODU0MzkgZTc2ZjU1NDE1OGE4NWJlYTNhZjUxZDlkOGY3NzZlNzg0OTY4OWJkZiByZWxlYXNlMjctbWFpbnQKKzg1NDQwIGU5ZWEwOTc4N2EzNWNmOTNjZjUzNWY5NjY0OWRmYWMxMjZiMGVmZDQgcHkzaworODU0NDEgNGM1NzA2YmMyZjQzMDUxZmM2OGJmNjQyZTAxN2ExZDRiZjZkMGVlMSBweTNrCis4NTQ0MiA0OWRmNzc4ODg5ZTZmYWNjZTM5NmUwZDFiY2NjZTY3MjlhNTlhMTM4IHB5M2sKKzg1NDQzIGE0NjcxMWRlOTI5MTIwNzJiZDE4NzhjYWNkNzFiZmRhYWExNTVkMDYgcHkzaworODU0NDQgNzhhMTJiODI5YTlhYTllNzdjNGJhZjljMzQyMDE2YTI1ZDYxNmJkNiBweTNrCis4NTQ0NSAxZTcyYWJmMDczYzU2ZjVlMzEwMzEyMDJlYmQ4M2UzNmM4NDYwMzM4IHJlbGVhc2UzMS1tYWludAorODU0NDYgZWJlMTRjY2JhMWI3YjUxYTg0YjE4YjlhMDY5NDI3YzVmOGNjMmZiYSByZWxlYXNlMjctbWFpbnQKKzg1NDQ3IDZmZDQ5ZDA1MjEzNDVkYWQxZmM4MmU5NjM1N2JhYzVjYTc2NTNlNDUgcmVsZWFzZTI3LW1haW50Cis4NTQ0OCBmYTI3ZGQxMjk4ZmU1Nzc2NTA4NzJkY2QxNjRmNmVhYTE0MDJkNGNjIHJlbGVhc2UyNy1tYWludAorODU0NDkgMmYzZTBlZWNjNzYyNzdiZjUzYzE3NzBhNDYyNzg5ZWUwZDU2ZmQ5YyByZWxlYXNlMjctbWFpbnQKKzg1NDUwIGNjYzQyNGM5NjY0MjZiZDE1MjIyMDJmMjA5NGYyOTJmZWIwYTQ5NGUgcHkzaworODU0NTEgYjVjZTA2YmJiMDZmZTIxMzAzMTA3MjkyNDVlMzVkYzk2MjE5ZjBkMSBweTNrCis4NTQ1MiBlYTJmZTk1ODFjMmQ4ZjBhMjAzN2ZhMWFiMGY4NDkzMjEyMmZlNmU1IHB5M2sKKzg1NDUzIDMwYjNkN2M1MjUzZDU4OGViNTA3MDY5MDVlZTkxOTIyOTRlZDI3NjYgcHkzaworODU0NTQgMzYxMWVhNDJiNzkyZGMxM2M1NTQ4Yzk2OGI1ZDM3OGZlMjk5MzU5ZCBweTNrCis4NTQ1NSBiYTY1ODFlY2I2ZjFlZTdhNDgzMjM1NGI3ODg5YjBkMmY5NDJkODZjIHB5M2sKKzg1NDU2IGZkMDQ0Y2RhOTdkODM3MGZjZTMzYTEzOTA4ZWJjMDYwYjgwZjkxNTggcHkzaworODU0NTcgNmFiMGY5MjE5NjYwYjg4MmVmZDRkZjY0YzkzMTYxNWM4ZjU4MWJjYiBweTNrCis4NTQ1OCBiZWFlNzZlZDVlYmZlM2Y4ZTNjMDZiYzg2NmFkMGU2Y2RmOWI0YmVkIHB5M2sKKzg1NDU5IDdkNzk2ODgxNTZkYjVmZGJjOTAwZDhjNzcwNzJlNjE3YjQ5MWUyNDcgcHkzaworODU0NjAgZGMyMDBjZjJmNTY1OGFjMTA1ZGVmNTJkNjkzYWU3NzUyZDk2NWQ5MCBweTNrCis4NTQ2MSAyZjE3OWEzY2IyMDY2MGEzMmNjZjgxNWU3ZjQ0YjE1Y2M1MzFkYTNlIHB5M2sKKzg1NDYyIDgyY2RlOGI3MzcyODIzMTkxYzk5OGQ0MDBjNDdmYmEyM2VkN2Y3ZDEgcHkzaworODU0NjMgNGE4ZTBkODk3NTViNjRjMmU5MDM1MzJlYmZiNjExOWI1ZWMwNWQ2YSBweTNrCis4NTQ2NCA2N2EyMTg1NzBmNGE0ZTE2YjA0NWEzNTgzNjgxYzEwNjFhMGVlYTNkIHB5M2sKKzg1NDY1IDY2MGFmZGFlYjJkNmU2MDcyM2VhZGNiNjU3NGZhMDVhYWFhOGJkZmYgcHkzaworODU0NjYgMjg1M2NhZDljYmMwMjQzMDBlMDU3YjAwNGFhNTZkODQ4ODcwYWUxNyBweTNrCis4NTQ2NyBlMmM5OGM2MGRkNjRkMGE1ZDIxMDRkNzNmY2I1ODZhMjQxMGUxNzQzIHB5M2sKKzg1NDY4IGI2NTIwNjEyOWI1Yzk0YzY4NmQxNDc1YTkzMDkxMjg4ZGRjNTQ0YjcgcHkzaworODU0NjkgOTk1YzMzZTIyNjNiMWM5MTBhYWI0MWFmNGYxYTFlYmFmN2NiODg3OSBweTNrCis4NTQ3MCBhNWVlYWQxNDFjYjQ2MzU2ZjVlYmNkZDlkMmU0Y2I1MTg4ODNhODkzIHJlbGVhc2UyNy1tYWludAorODU0NzEgNmE4NDg5NTU0MDE5ODJjMjZkNmZjZGFhOTU3MjI3MzY2NGIzZmE4YiByZWxlYXNlMjctbWFpbnQKKzg1NDcyIDcxZTc2ZDAzZmM2N2YyNTA3NzRhY2JmYWZmYmVkZjRjNDQ0ZjZhZjQgcHkzaworODU0NzMgZDdmOTA3MzU3ZGE3ZTk1MGNiY2RjNDE5ODdjMDU4ZjFiN2NjNjlmYiByZWxlYXNlMzEtbWFpbnQKKzg1NDc0IDgxM2I1MWE2YTQxNzk5N2Q1NWMxODU3OTRjZmY0YzFlYWZlMmE5NGMgcmVsZWFzZTI3LW1haW50Cis4NTQ3NSA5ODJjOGVjNzNhZTM3ZTBlZDZkNTQ5NzNlYmEzZjcwYmY2MzllYzhjIHB5M2sKKzg1NDc2IDNkOWVmMDk4ZGFmMmUzNmZjYmM2ZDIyZjdhOTU2YWI2NzNiMDEzMGQgcHkzaworODU0NzcgYTI3ZmMwZmYzNjc4YjAwOTY2MzQwNzY1MGYyOWVhNGYyMTczNGYwMSBweTNrCis4NTQ3OSAwOGE5YzA0NjAwNGRkMTFhOTRhZjlmMWVjMzEyMmZhZDQyOGRiNmZlIHJlbGVhc2UyNy1tYWludAorODU0ODAgMTI0NDJhYzNmN2RkYmJhM2NiZTk4MDRhOTMyODkwNTRlOWJkZWM0NCBweTNrCis4NTQ4MSAxOTBmMjQ3ZWRiOWVlYmNmMzBkZmZiMmFmZDE0OTk3ZWViMGJjNzFiIHB5M2sKKzg1NDgyIGFkNDBjMGEzZTIyMTU2YTFlM2M1Y2NmNTJkODhkOGJlYjU2MDNhZDIgcHkzaworODU0ODMgYjgzZjBhNjY3ZTdjZWIyZWVkMWMwZDM2ZDhhNGIwNzRkYTgzNmY5NSByZWxlYXNlMzEtbWFpbnQKKzg1NDg0IDA3YjZiYjc2ZWU0MzkyM2M1NTZmZDAwOTcxNWYwYzNhNTVkNTljM2YgcmVsZWFzZTI3LW1haW50Cis4NTQ4NSAwNzhlMmU0N2U1MmIwNmFmZTEyZDE4MTk5OTllZWZkYTIxNjdlNjMyIHB5M2sKKzg1NDg2IGI4ODZiZjYwMjUxM2I0ZjdlOTdlMTU3MTVmZjQwM2Q1Y2I4N2M3ZTcgcHkzaworODU0ODcgOTBjMmI2NTQ5MGM3NTMyMzE2YWQwZDcxNWQzYTY3MzY5YzUzYzE0NCBweTNrCis4NTQ4OCA4MGQzYTM3NDk5YjFiMmIyMDlhNmVkODU3OWY2NzZiMDU1NDc0ZTM3IHJlbGVhc2UzMS1tYWludAorODU0ODkgMDY3ZThiMjAwMGRkMDU3OTJlZjA0M2E2MDY3NmU1ZjVmNWNlMjNiMyBweTNrCis4NTQ5MCAzZTc5MTM0YzY1MzU3YTc2MmRhMjVmYWUxMDZlNTFlZjNhYTQwMGViIHB5M2sKKzg1NDkxIDFhNjAxM2VlOTc0YjA4NzdiOTRhMTMzYzYwYmQzMjkyYzQ3OGNjN2QgcmVsZWFzZTMxLW1haW50Cis4NTQ5MiAyNTNhMjY4Nzg1ODU3NDhmYmU4YmY2NTgxMjcwYWVjODY0NzY2ODhlIHB5M2sKKzg1NDkzIGI3ZWNkOTQ0YjdjZWIyYWQxYzdmY2JlMTA4MmEyYmE3YjBiZmIyOTggcmVsZWFzZTMxLW1haW50Cis4NTQ5NCBkNTJkNWQzNTlkYjMxMDAxMGVmNzVkNWFiNWE3ZjI1ZDViZWUyODI2IHJlbGVhc2UyNy1tYWludAorODU0OTUgMDUyYzE5OWFlMTlhOWIwOWI4MzI0OWQ2MmExNzUyOTQ2YTBiYmFmNiBweTNrCis4NTQ5NiBmM2RhOGNkNzQxMTM3OGI2ZDA5ZDUwNjg4NTA3YjE5Yzg1MzBkMmUwIHJlbGVhc2UyNy1tYWludAorODU0OTcgNDY5NTZhMjVjMjY0MWJmZTdiYzhjNWFjM2VjNTZiMTg4OTk4ODcwNiBweTNrCis4NTQ5OCA2Mjk2NjMyYWQyY2JlNjVmNzAzMWJiZTFjZTZmZjFjMjMzMjJiYWZjIHJlbGVhc2UzMS1tYWludAorODU0OTkgNDI2OTI2N2U2ZTU3ZGEyNDMyNWRkNzZiMzYyMDM0MWFhZmIyOTg0OCByZWxlYXNlMjctbWFpbnQKKzg1NTAwIDZjZjIyM2VjYWE2ZjBkYzUzMjdjNWMxOTI2ZTMxNWY4NzE2MDQxNzIgcHkzaworODU1MDEgY2ViMTI3MDNjNmRiYTMzMDI2MTVlYzBlZTE2ZDY3NzY2MjU4Yjk4NCByZWxlYXNlMjctbWFpbnQKKzg1NTAyIDI3YzA1MTI0NzIzM2E2ZTI0YjM2YjE3NjNlNTFiNjE0Y2RhYmZlMjUgcHkzaworODU1MDMgNGQ1ZjBjNDQ4N2ViOWZmYjM2NWU5MzMyZDc1YTRkZWQzM2JiYzU5NiBweTNrCis4NTUwNCAxNzgyZGE0NDBmYjFlNDQ2Zjc3OGRkN2U0MzI1YWI1Yzg2Njk5OWE3IHJlbGVhc2UzMS1tYWludAorODU1MDUgZmVhOGYyMWIxOTlkNzRkN2I0MDhkYTk1ZTdkNTM1YTkwZjA2YjI1NyByZWxlYXNlMjctbWFpbnQKKzg1NTA5IDdkMWU0NTNiMTIwYjZlNjJiOWE1MDYxYWFmNjI0YmNjYTg3OTBmY2EgcmVsZWFzZTI3LW1haW50Cis4NTUxMCA4OWE4YmY1MzI1Y2QxNWZlYTllMzBlZThmYTkzNzhlODNmNjc0ZGU1IHB5M2sKKzg1NTExIDVlMTU3NjA1MDc0OWJlYmExOGIxYzI5Y2EzODQ3ZTU4NDllMmQ4ZmUgcmVsZWFzZTMxLW1haW50Cis4NTUxMiAxNzgwNjg0YWUzYWQ5N2MwZmJlNmNhM2FhYzcxZjA3OTE2YjA1NDEwIHB5M2sKKzg1NTEzIGMzZjJjNWQzNWFmYWZjZDg5Zjc4MGVkZjEwZDgzYTk5MDI1YTQ0MzcgcmVsZWFzZTMxLW1haW50Cis4NTUxNCBlNTEyMzcyZjc0OTQ2ZDZmOGEzYjYwNTg2ODBiZjMyNTExYTZlYTY4IHB5M2sKKzg1NTE1IGNjMWQ4YTJkYjM0ODZlNDEyODM3YTA5Yjk1ZDJjOTA0YTQ0MDBiYTYgcHkzaworODU1MTYgZjYzZDc0NzYyMmJkNTE3MzQ3ZjFlYWZlMDEyYTEyYWI5ZWYyYTU3MCBweTNrCis4NTUxNyA0NTNmZDgxODJjMmY5NmU5ZTBlMTdjM2YzM2NkZjcyZDUwMmVhMmJmIHB5M2sKKzg1NTE4IGJiMzAzOTNkMWVhMTg5YWQzY2I2N2I5NTRlN2Y3Mzc4MDIzODlmNzMgcHkzaworODU1MTkgMTU3NzUxY2M0Y2Q1MTg4MzcwMGU5OTM2ZjIyOTdjOWNkNmI1MmRlZiBweTNrCis4NTUyMCBlNzczYTFmMjNkNDMzOTNlN2JiZjdhMzJmNzRiNDE1MDc5YmY2MDMxIHB5M2sKKzg1NTIxIDljNzNmZTNmNDdlMjY5MDYwOTkzZDM1YTc3YzNjNTA0YzliODRkOTYgcHkzaworODU1MjIgNmEzNjViOWEyMmJhOWMzYjAxZGU1MDg3YjA2ZDJhMmE1NWExMTgzZiBweTNrCis4NTUyMyA1MjAyNWMzNTQxZDg4OGZkMTliMDQ3NWQ0YmU5MmQxYWRmZDBiNTU3IHB5M2sKKzg1NTI0IDFmNWEyOGJhNzQ3N2QwMmEzYjgxNTIwMjlhMjk5MWE4Y2U2MDNjOWYgcHkzaworODU1MjUgODhiZGVmNTM2MGFmMDNhY2VmZmViN2NmMTc4NTlhOTBlYzcwM2E3OSBweTNrCis4NTUyNiAzMjBkMGZhMjE2NThkMWRmNzQxODk2YjQ3MzUyMzYwNWIxOTYxOTk0IHB5M2sKKzg1NTI3IDRlYmMwMzA4ZjRiMTJlZTNmOGI1OGQ5YmM4YWVkZDllNmM2YTM3NGMgcHkzaworODU1MjggMGI1MGQ4NzA2MTM0NDYzNGE3MTEzMjkyZmZlMzkxMjMwZmE3NGIxMSBweTNrCis4NTUyOSA4MGZlMDY2YzEzNWE5MDQ3NjgxYjVlNDcxYzM1NDUzZjFiOGU1ODczIHJlbGVhc2UyNy1tYWludAorODU1MzAgNDE4NjhjYTUyNzQ0YzhlZDJmM2E3ZTBkNDU0Zjc0NjA3MmJlYTE0MSBweTNrCis4NTUzMSA1NjMzYWY1OTAwNTcwMmI5NTMxMDA1NmQxYTVlNGZhNGJmZTYxODdmIHB5M2sKKzg1NTMyIDhmNmFiYTIzZmIyYWJjNzViZTllYjJjMGNjZTk0YmYxMmRkZDU4YmMgcHkzaworODU1MzMgMTA0MzU4YjVkNGQxNDQ2ZGJjMDVhYmUwZWZiYzhjZGIyM2UxNTQwOCBweTNrCis4NTUzNCBkYzI1YzUwYTdjMTE2MDY4ODQ5MTJkMDJiNTAxMTM2YmQwODAwNWRkIHB5M2sKKzg1NTM1IDZiODMxNDM3NmRlMmVlYjRlNDU2ZWUwNzQ1Zjg1ZTJmMTYxMDVmZmQgcHkzaworODU1MzYgOTJlYTU2YjUyZDhmNzMxNGJjNTdhYTk3YzE4NTJhODE4ZmQzMDI5OCBweTNrCis4NTUzNyA5NzEyNTg2ZmE0MmY1ZjlmZWEwZTM3MTA1NTdlODFjOGI4MzhkN2JlIHB5M2sKKzg1NTM4IGFjODY4MDY4NWZkZWFhM2U3N2Y4MDg1ZGY1NDY3NTg1M2VlNjY4YzYgcHkzaworODU1MzkgZDgzODRmY2UzYzczYjlkYWFmNDZhN2JjZDUxNTBmMThlMGY5NmVkMSBweTNrCis4NTU0MCA3OGQ1Mzg1OTM5NWE0NDYyZTczZjZlYzY3MzVjNTYzMTM1MmI1MWQ4IHB5M2sKKzg1NTQxIGYzM2JiODUwNzg5ZWE4NTJlZDM4NjY0NTU0NmE4ZGQyNTk4NDkzNDUgcHkzaworODU1NDIgN2RlMzY1YzE5ODZiYWJhYjZkYzk4ZWU3YjE3N2YzNGUyNjQ0ZDE3YiBweTNrCis4NTU0MyA2ZjRjZjczMDMyZmM5YjhmYzg0NmIyYWEyYjQxNmEyNzE2MmUzMmQ2IHB5M2sKKzg1NTQ0IDkzNDdiMGE4NWNhZjU4NmFjMGVkMTZlZDM4YzM1ZjU5YTFhMTg4MGUgcmVsZWFzZTI3LW1haW50Cis4NTU0NSBlZWM0OTk4NDdkZjdiYjlkODM4NGJiYWRiODQyYTNkMTg4NjYzMzdhIHJlbGVhc2UyNy1tYWludAorODU1NDYgYjcxYWFmNGU3ZDhkOTAxYmFmZjA2Y2NkMTU1NTkxYWRjYWIzZjUyZCBweTNrCis4NTU0NyAwZTJjYmMzMWZjOTI1ZTI5NjIyZTg0ZmJmZjM0MjRjODA2YmEwMGE5IHB5M2sKKzg1NTQ4IDM5NGMwMGI0YzkxOTRjZmQ3MjZlYTMyYjMxMjgyMWY4NzQ2ZjkzMGYgcHkzaworODU1NDkgODQ0ZWQ2ZGRkYzAzMWVmZTk2NGUzNWRjYmI4ZDUyOWMyMGZmYTRmZSBweTNrCis4NTU1MCAzNDhmMzM2OTY0MDIxNTUwMTQ5OWM3ZjJlYTgwNTlhZjkxZjk3MGMyIHB5M2sKKzg1NTUyIDkwMDUyODg5Y2UzZGUzM2MxYWUwYTA5YjRkMDRmYjNjMTJiY2U4NmEgcHkzaworODU1NTMgMjkyYjFkZjAxYmFkODdjN2MzZDcxNzVmNmE2NzgzMWY3NDgxOWJjYSBweTNrCis4NTU1NCAzYzQyMjViZjg3YjQxMjY2MzQ1Njg4M2FiOGQ1ZTNkNWY2ZTc4ZmY0IHB5M2sKKzg1NTU1IDJiMTdiZTYyYzc0ZmNjODAzNTIzMTQxNzYwMGRhZjc0ZjkyMzdmNWMgcHkzaworODU1NTYgZDQzOTBiNmJmN2VjOGUxNmYyZTQxMGUzOTU1NzEyZjA2MWQ1NzMyMiByZWxlYXNlMjctbWFpbnQKKzg1NTU3IGRkZjJlYWQyNmFhYTQ1ZWE2OWUwOGYxMWYxMzFmMTkzZTVjZDczYzggcmVsZWFzZTMxLW1haW50Cis4NTU1OCA0ZDZjNjNjNjU1NTBjMjM2OTk0ODI2ODJjNDc0NmFiNjdjYmVjZGFiIHJlbGVhc2UyNy1tYWludAorODU1NTkgOTMyZjk3YmZiZGMwYzUwNDlmZWFmYzgyMWE4YWIxNDZkMTQxN2QxMiBweTNrCis4NTU2MCBmY2RjMmZhZTUwYzA4MWFjOWI3MDNkY2FjOTU3ZjlmYjAzMzRkMGVkIHB5M2sKKzg1NTYxIGY5OGMzZTJmZDA1NTAzMzEyNDUyZTEwYThiNWM3NzYwNTFjM2IzODEgcHkzaworODU1NjIgZmQ1YzgzZjc2NDQ3NTBiZDI0YWFmZjBjYzJiZTg4NzZiMzE3OTNlYiBweTNrCis4NTU2MyAzNjE4ZDlkNzkwMmQzY2I0NDhiMjUxN2IwZmQ0ODBkNDA4YWIxNWZmIHJlbGVhc2UzMS1tYWludAorODU1NjQgMGJkMGU4N2E2ODUxNTQyMjQ2ZGE1YTdlM2ZlNTlmNzM1ZDI5MjY1OCByZWxlYXNlMjctbWFpbnQKKzg1NTY1IGY5MTg0ZTdjZDI1Y2UxMzA3NTIwNGRhNzhkZjQzYjgxNzJmNzZmYzggcHkzaworODU1NjYgZGQwODY3YmQ5NTU3OTBkOGM4NjM1OTY3MTRkM2Q0ZjJjOTU4MjMwNSBweTNrCis4NTU2NyAwOWVmZmZlNzAwMzA3MDE4ZWZlMWIxNjdlMGVmNmQzZmY0YzY3ZTBkIHB5M2sKKzg1NTY4IDc2Yzg4OGZkMjM4MGRmMjZiODAzMjZmMWY2NjViOTg5Mjk1YjExM2YgcHkzaworODU1NjkgNTVlZDVjNTI0NDI4Y2EyMjg2NGRiNjRkOGIwNWY2NTQ2OGI1ZGI1ZCBweTNrCis4NTU3MCA5ZWQ2OGRkNmI3MWZmNzIzMzliN2JhOTdjYTVkMjQ3NDc1ZTNlZTljIHB5M2sKKzg1NTcxIDYwMzk4NDUwOTM0MzAyYzEwNmViOTM0Mjk5YThiNDY1YzEyNWI1NDAgcHkzaworODU1NzIgNjg2YTJhOTFmODI2MDgwZWU4ZTVjMzJiOWJmN2YwOTU1ZjI3NmVhZCBweTNrCis4NTU3MyAzZjJlMTQ1YzRhMDJlNjYyMGZjYzg1NTA2Y2Q2MmZkZjI1NDM1YWQzIHB5M2sKKzg1NTc0IDUxODFjM2JmODk3MGUxN2JlMTNkMjEzNDQ2YTEwYmI2M2M4ZTQ2ZGEgcmVsZWFzZTI3LW1haW50Cis4NTU3NSBhNDQyZWNiNzA4NDFmMmRkN2M1NWEwOTU0NzU5YzZjNjRmYTVmNjM2IHJlbGVhc2UyNy1tYWludAorODU1NzYgMGJhNTBkNDg1ZjA3MjY4YTM0N2U1MDVhNmZhZDdjZDNkMmE1YmY4ZSBweTNrCis4NTU3NyBiNGJkZDQyOGViMmIxZjIzOWEzMjQ0MjNiNDE3YWI1NGQzYTYwMjVmIHB5M2sKKzg1NTc4IGI3NDlkYzRjMzc0YzE2N2ViYTEyOGM5YTk2MjUyNWRiMWIyNmZkZTUgcHkzaworODU1NzkgZTFkYzk4NjFiNDNmMzljMTEyMjdkNmIzZDAxMTFlNTI2OGYyMzg0OCBweTNrCis4NTU4MCA2ZGNiYTkzZDYyNjIwMmFjMDU5ZTBkYTAxZTE4MWJlZjMyYjY1ZDE0IHB5M2sKKzg1NTgxIGRmMGUzNDhlNzE3NjJlOWE1ODQ1Y2RiZjgwZmJkNmE5YzQ5NWIzNDYgcHkzaworODU1ODIgMzc5NGM5YjUwODI0ZmQ3YjVmODM4NDZlZjg3OTljMDYyMWViYzI2NiBweTNrCis4NTU4MyBiYTg2ZjM0ZjA4ZGE2YmNhMWE4OGFjOTZlN2Y4NWJmMzgyYzI3YjA4IHB5M2sKKzg1NTg0IDkzMDZmZjFjM2Q0NmY3ZDE3YmYxYjBjNjMxN2QwYjAzNTIyZDk0YmIgcHkzaworODU1ODUgMzQwMzU5ZDgwY2EwNTZhMjBjZjUyNDU5MTdjMGYwMjkxMjFmZjY0OSBweTNrCis4NTU4NiA0NDNhYjJjYmFiY2JjYWRhZGY4OTkwYTllYTdlNmM4MGEwZmFlODhjIHB5M2sKKzg1NTg3IDAyODMwNTUzZGJkMTk5Mjk3Nzc5MzJhNjAwNDBlZTg3NzY4MmY3MjkgcHkzaworODU1ODggZmQ1MTM1Y2JkOTI4ZGYzMzBlMzk3ZTI2ODhlNzk5NWM4NThiNTNkYiBweTNrCis4NTU4OSA2MDg3YjFmNmNhOWI3NGViODJjY2I1MDZmMzgwMmY1NjlkYmVlMmM5IHB5M2sKKzg1NTkwIDZiMjY2ODg3M2YzMGQyOTFjMDk2NjNmZTFmYTM2NjNkNTBjZTExMzUgcHkzaworODU1OTEgNDM1NzViMDk2OWVkMDYzYzA5Zjc0NGRhODFjMGMzNjJjYzg4ODkyMiBweTNrCis4NTU5MiA2ZWNlNjI5NDQ1YjYwYjM1MTViNjJhN2Y0YjM4ZDJhMjA3MDkyNDM4IHJlbGVhc2UyNy1tYWludAorODU1OTMgMWJmNzY3ZjI4ZGI0ZGY2MjM0ZTIyMDBiY2M4ZTc3NmJiMDdkY2RhZCByZWxlYXNlMzEtbWFpbnQKKzg1NTk0IDA1MDVlYmE2MjM0NzJmY2VmYmZjMWI2MzkxY2Q3MWQzNjE0OWRlODkgcHkzaworODU1OTUgYzk5Y2Y5MTAyNDc2YzQ5YzU1MDVkM2Y5N2U0YjcxM2I4ZWZkY2ZhOCBweTNrCis4NTU5NiBlYWJjNWM1M2YxMzRlYWNjYzUxYjcwNTE0OWM5YzFlZDNhZDMzMGE5IHB5M2sKKzg1NTk3IDI4ODBlNzJhNDY0YmQxYzFhODg1MWVmNTllODJkMDMwZmNjOTkwZjQgcHkzaworODU1OTggNmU1NTk3OTNlNDUwY2VlMzU2NTMyNjY4MDg1YWIwM2JlY2IyOGJmMCBweTNrCis4NTU5OSAxNTg1OTc0MGFhZTZjMmQ3MDJjNWM3OWM0ZTliMWE4ODBhZDlkZjZmIHJlbGVhc2UzMS1tYWludAorODU2MDAgNzAyNTI3OGM1YTQxYThiNmM4NTkzNDFmZDQ3MzFjMGE0YTIxNjhhMCByZWxlYXNlMjctbWFpbnQKKzg1NjAxIGY2MjE2YzVmMDY4MDNhZTViZDllNWY5NjM3M2NkZmZhY2UxZmMzMmUgcmVsZWFzZTI3LW1haW50Cis4NTYwMiAxNWUzYWQwY2EzNjQ4YjlmOTcwY2ZlZmVkNmRiY2U4MmY2MTA3YzVkIHJlbGVhc2UyNy1tYWludAorODU2MDMgY2FhMTdhMDMzMTc2YjI5ZTg2NjRlNjFmMTA1MjU3MGUzYTdmZTIzOSByZWxlYXNlMjctbWFpbnQKKzg1NjA0IDA4ODQwMjQ2OTAxNmJhNTFmOWI1YmFlMGE4MzhhOTc0NjcwOGYwNzQgcHkzaworODU2MDUgOTMxZjIzOTA4Mjk2NmZmY2M5ZGY2OTNjNDRkYzBkM2NjNjE1YzgyOCByZWxlYXNlMjctbWFpbnQKKzg1NjA2IDg3MzNjNjkwM2ZjY2EyNmRmZmJmMDlhYWNkNDI2MTYyMzg1OWNjOTggcHkzaworODU2MDcgYmU2MGM5NjBhYzA5YTQwZTA0MjUxMDAwOTdmMzRjMmZiYjEzMWExMCBweTNrCis4NTYwOCAyZTg1MDQ3MTE5ZDIxYmFmZjkxNDc4YzVkNjkwNmIwMmFmMWRlOTkyIHB5M2sKKzg1NjA5IDViMmFmMzViOGI0YjYwNmEyYzBiMGI1YTczMGFkMzAxNGVkNDY1NTkgcHkzaworODU2MTAgZDI1MzQ2YzBiOWQwOGQ2MmJhYzNiZmI2MGMyMjdlNDNiZmEyNzU1MyBweTNrCis4NTYxMSAzYjVlZDg0OTBhYjJjMmEzMmEwNmNjNTAwOWFlOWViN2YwOTg0Mjg3IHB5M2sKKzg1NjEyIDY5NzQxZDRiOGE2MDAzOWQwNWRhNGIzMDk5ZDBlYjEyYzc5MTNmMDUgcHkzaworODU2MTMgOTZkN2U3ODc0ZjhjNDYyNjUxZTkzMWMxMzRmMTEyZDc2OTk4YzhjYyBweTNrCis4NTYxNCA5NjZlYzMxYjgzNDJjNzYyMDg4M2IyODc1NTQ0ODU1NWE3MjZhODE4IHB5M2sKKzg1NjE1IDVkYTgzN2ZjZjY3NTkzYWVhNTQ3MjQ3ODkyOGQ0MjRjOGYzMmJmNDAgcHkzaworODU2MTYgNDczYjkyMWUzYTFmM2I2ZDE1ZWY3OTY2NjgyNjI2NDZhNGFiNGI4YyBweTNrCis4NTYxNyA3ZGRmNjBjODg5NmFhMDQxODk5NjFjYmIzNTEyODkwNjc3Y2YxMmRiIHB5M2sKKzg1NjE4IGE0ZGQzODM5MTJkODk4ZGJkYmE2NTg3OWFiODNhN2U0MGY0YWQ5YmMgcHkzaworODU2MTkgYTkwNDdjZTFlODFkYWMyNzBjMmNkOWVjZTA3OGYwMzBhYTgxZTcwOSBweTNrCis4NTYyMCAxOWNhNzBiNDYzYzU5OTJjYmFmN2ViYjdhZTUzMjVhOGVhYzAwNzU2IHB5M2sKKzg1NjIxIGFhMmU0NjM3ZjZjZTk3MTY0MmE0NzgxZWM5MWE0MWVjMzliOWNkOGQgcHkzaworODU2MjIgNTczN2FkNzFlOWUxOWU5NDZlMmM1MGI2YjYzMDVlMzQ2NTk1NjUwZiBweTNrCis4NTYyMyA4N2RjZWJlNzhkNjdjYTJiMjc4MWI2OGIzZTc1OTI5M2UxMWM1MTg2IHJlbGVhc2UyNS1tYWludAorODU2MjQgMDk5OWUzYTQ0NzM1YmU2MWU1ZWMxNmEwMWJhMmQ5NzUxMjk2ODQwNiBweTNrCis4NTYyNSBkNjk5NzA4ZGMyYzE5MDRiYzkzMGVjYzU4MThmODgzNGViNzE0YjY5IHJlbGVhc2UyNS1tYWludAorODU2MjYgNWEyZDM0NDliNTc1ZTNhMTA1N2ExZGJiZGIwMGU1NTE5MGQxNzA1NCBweTNrCis4NTYyNyAwNjYwOGNjMjVmYjIwNGNhZTQ3NjBlNWUzMzgwM2QwMDg1MTJhMTBjIHB5M2sKKzg1NjI4IGNlNGQ4MTAyNTdiNDRkOGI1YWQ2ZWFlOTI4YzliNTE1ZDA1YjI5YjAgcmVsZWFzZTI1LW1haW50Cis4NTYyOSBjYTk2OTA5MmY0NWE2Y2RiODkyMTEzYmEyZDM5MWE2ZDBiZGY2ZmFhIHB5M2sKKzg1NjMwIDMxMWQ3YWJiZmJlMzAwYTFjYmNhNGJmMjAzYmE2OTViZjhmYWNlMTkgcHkzaworODU2MzEgYmIyMTM1OWU4OGI5NDY0ZTI2ODFkOTc4Zjk5ZTgzYzI4M2FjYzhkZCBweTNrCis4NTYzMiAzMTc1MGM3MjdhZTMwNTBjMDAxYzgwMjI3MzVlNmU2ZjE1OTcxZWUwIHJlbGVhc2UyNy1tYWludAorODU2MzMgYmNiMjYwZDY4YjE1OGFhZWQzMGJiYTUyNzIxZGE0YzUxNWRmYmRlZCBweTNrCis4NTYzNCA4N2U1YjU5MzhjNjVmMGNhYzQzMDhjNTg4ZTIxMmQ2NWFhNzNmZTg0IHJlbGVhc2UzMS1tYWludAorODU2MzUgNDIyYTRmYjBhNDkxMjQ0ZDU0MzQwOTBiN2E2MDIxNGU0ZDA2ZWRhZSBweTNrCis4NTYzNiAwNzNlMWJlNzZiNDc0MzU4OTRlNmZkZDg3YTlmZWEwZWFiMTRmMDlkIHB5M2sKKzg1NjM3IDliMjI1MGZiODBkOGI1YmI0YjkwMTA1MmVlYzI0YThkMjE3ODQwMmIgcmVsZWFzZTI3LW1haW50Cis4NTYzOCA5ZTQ1ZmM4MDUyODhhNzdjODRhMjUyM2I5NGI3YTVlYWU3ZmQzNGE2IHB5M2sKKzg1NjM5IDY4NDQwMjcyNTRmYWU2YjFiZjk2YWUyN2RiYWQzNmJkMzRiMWNkZjAgcHkzaworODU2NDAgMTg2YWYwNTFkMDRmMjEwYjFjN2UwNmU4OTNkNGU4ZGNlYmU3NmY1MCByZWxlYXNlMjctbWFpbnQKKzg1NjQxIDk5NGI4Nzk5ZjI4ZDY4YTVlNGI5MGMyYTgyODQ4NzEyYTk3NzVhYmMgcHkzaworODU2NDIgMjFkZDcxOTM4YTQ0NzJkMjQ2ZTU4Mzg1MDY1MGI3NmJjMzkwYjAyNSBweTNrCis4NTY0MyA3NGQ4MWEzYTBkNTY1YTE4Nzg1OWRkNmE5YzMwMGNlNTdjZmJhYzk2IHB5M2sKKzg1NjQ0IDA1ZDdiMTk5MWZmNzJlNzRmMTUyNmE4YTFlYzc1NTM3NjczNjMzNTQgcmVsZWFzZTMxLW1haW50Cis4NTY0NSBiNDJmOTQ5NjQ4YmFjNTdmZGMwMDExOWIzYjc1OTdhNzUxZTc5NDE0IHB5M2sKKzg1NjQ2IDYzM2RlNTdmYjczYWUxMTYzMjI0MDk3NzQwZDFhNDIxMjRmMGZmOTEgcHkzaworODU2NDcgM2M5YWZhOTJmOGZkYzY1MzJiMTE4Njc5ODAwMmMwMDQ5NzJiMTcwNSByZWxlYXNlMjctbWFpbnQKKzg1NjQ4IDYyM2RlYWU3NzMyNDM2N2Q1MTZhYTRlMWYyZDQyZDUyODYyOWQwNzIgcmVsZWFzZTMxLW1haW50Cis4NTY0OSAzOWEyYzNiMTBhN2IxZmVmYWZmNGY3YjI2MzNkNDBiNzEwYmY5NzNiIHB5M2sKKzg1NjUwIDlhYzNmZTJjYTQ5ZWI1ZWZhYjg0M2JjODU1ZDEwZmQzNTlhZGU2OTMgcmVsZWFzZTI3LW1haW50Cis4NTY1MSBlZmQzNjk5ODFiOGRkNTYxY2I2YWJjN2NhMjUzZWY5ZmM2ZTlhNzM1IHJlbGVhc2UzMS1tYWludAorODU2NTIgMzhhZDU3ZGI4OGFjNGJlMmY1MmM3MDc1MWFhNGIzMTA4YmU1NzE2OCBweTNrCis4NTY1MyAyNDRjYmNiNjdkY2Q4N2UxMWI2MzYzNDcwYjJiODdmYjZmNTFhY2Y4IHB5M2sKKzg1NjU0IDM5Y2RjYzdkM2UyMGQ1NDRlYWE4YTVjNGFhM2Q2OTA2ODY4ZThmN2IgcHkzaworODU2NTUgMDIzYjQxMzc2MjkwYTEyMWM3N2EyNGI3MDE0NzBjYWU3MGExYjIzZiBweTNrCis4NTY1NiAzYTQ3ZmJjYjI5YjEyMDUwODdjOWUzY2E5YjAyNTU2YTdkZGU3ZTY2IHB5M2sKKzg1NjU3IDdhZjQwNmYyMTlhNGU2MWI0OThhZGM3MWY1YWEyN2ZjZmNiOWFlMzEgcHkzaworODU2NTggZDU4Y2UzZmZiMWNiNjk3ZjFlZWRiNGE1M2VhM2IxMTI3NmJkOGVlMSByZWxlYXNlMjctbWFpbnQKKzg1NjU5IGIwMjI4YWY2ZGIxMTgwYTE3MWM3ZGUxMjA1N2FkOTM2NjA1M2FkYzIgcHkzaworODU2NjAgOTVlM2FlZWJiNWFiY2Q4MWU0ODE3NWI0ZmYwZDIyOTk1ZGUxNWUyNiBweTNrCis4NTY2MSBkMWRlZjdiMmFiZDJmNTliNDMyNTRiYTMyNDA5NzQ2MmYxZGIyMGZiIHB5M2sKKzg1NjYyIGIyYTljYTJiNjFhMjQxYjBlZDhmZDc4MDg4MTEzMDA4ZTM0Mjc0YTAgcHkzaworODU2NjMgYzE0N2Y5MTBhZjcwMDg2ZmQ2M2RlYWUwZTNmNjIwYjkxNjNiNDBkOCBweTNrCis4NTY2NCBlODk2OWZiODIyZmMyYTI3OWFlMzRiZTczZjhlMWUxNWM0NTNhM2QwIHB5M2sKKzg1NjY1IGY4ZmMyZDAzZDdlNDJhMTJlOTJlYzI3NDg2MzQ3NTA5MmVhZDhlN2QgcHkzaworODU2NjYgZTc1ODA2NTJhZmI4ZTZjZTZhMzk1YWRmZWZmYzUxNTYzNDcyYmNlYyByZWxlYXNlMzEtbWFpbnQKKzg1NjY3IGEzMTY1ODEyOTAwODA3NDBmN2I2MzIwY2Q1NzMzNDM4MWIyNjc2YjkgcmVsZWFzZTI3LW1haW50Cis4NTY2OCBiMWNhN2Q1YTljNzRkNzBjYWMxNDRkNDI5ZDcxMmY3OGI3NzMxNTRkIHB5M2sKKzg1NjY5IGIxYmRhMWVjOTk1ZmExMDM2ZGUwOWZhYTMzYzM1NTBiMmY0MzZmNDcgcHkzaworODU2NzAgZTBjY2I1ZjUwZTBjNzkwNjM3ZWUzMTE1Mjc3MDUwNDM4MDAzNzFiYiBweTNrCis4NTY3MSAxNmVhZDgzZjc5Y2M5OWNlMTQxN2IzZjA0ODNhOGExZWI0ZWRlMWY1IHB5M2sKKzg1NjcyIDk2YTY5NzYyYjQ4MTYxNjc4MTYwNzM4ZjQzOTBiNDAyMmI0M2ZiYTQgcmVsZWFzZTMxLW1haW50Cis4NTY3MyA3YWExNGNhYzZmNGQwMjczOWVjZGI0YjVkMzA1ZDY4MWQ1OTM4MTY3IHJlbGVhc2UyNy1tYWludAorODU2NzQgZWI4ODM3ZWZkODRjNWIxZWRhYWZjYmU5MDQ1ZTc0MTVmZDk3NmY5MiBweTNrCis4NTY3NSAzNTFkNzk0ZDMyZjQ0MzI5YzEwNzM3M2UxZGFlYzg2MjUzMGVlZDIzIHB5M2sKKzg1Njc2IGFhMjAzZDQ3OGJiODEwZjZkZTJiNjEwMmZlNDE1OWE0MjExNjIwZmMgcmVsZWFzZTMxLW1haW50Cis4NTY3NyBkMzk3YjAyNjMxYjU0N2Q5NGM2N2I0YjkxMzg0ZTk1ZTZkMTMwZjA5IHJlbGVhc2UyNy1tYWludAorODU2NzggYmVhMTRmMDBkM2UwMTAwNzI3ZmY3YzBmODg4NTFkNzYzZTA2N2NhMyBweTNrCis4NTY3OSBiMGE4ZmNkYTA2NTQ3ZDZkMzRlMzM0NzIyODI1OWMyNTEwMzRlMmZlIHB5M2sKKzg1NjgwIGNlOWY1Y2UzM2FkMmEwZjVkMDNjZDA4YWFhNzgzNTgzNjFkMmY4NGIgcHkzaworODU2ODEgYTRjMTBhNDRkOWFlMTFiZWM5Yzk5OTQyNmU4NzQ0Njk2ZWNhMWNlNSBweTNrCis4NTY4MiAxN2M5NmFhZjkzYzg3ZDEwN2EzYTMwNTc5ODQ5Zjk0OWIzNGFmYmU3IHB5M2sKKzg1NjgzIDViMDY5ODkyZTQxM2E5ZTExNWFiYTk2MDQ5NDg4OWNmZGJjMmQ5NDMgcHkzaworODU2ODQgOGYwNjI1OTU0ZmZhM2NkZDcxMTYyMzljNWNjOThhMDY2YWYzNzI2NyBweTNrCis4NTY4NSBjZGZkMTk4YTZmMWRlMzEzNjY5OTVlYzZkODUwZmE2ODkwOGRhNmNiIHB5M2sKKzg1Njg2IDc1MmU0YjVjNjRlOTVjYWM0MTYyNjQxZGM0MzcxNjQwYTU2NWViYzEgcHkzaworODU2ODcgYzcyNzU3MDMzZDQ0Zjg1M2QwZjY0YjU5YTI4MGYyYjA2MDg1NGU3YSBweTNrCis4NTY4OCA2OGJkNzVjNjlkYjE1MGZmZGNjYjIwMzdkNDJmZGYzZjQxZGQ1ZDQxIHB5M2sKKzg1Njg5IDNjMzM2MzQ4YTJlOTg2ZmU0Nzc5YzE1M2Y3ODc0YzQ1OTg3MTFmMTggcHkzaworODU2OTAgMzcyYzk4MDdkNzVkOTcxNGU2MDY0M2I5MGFmMGExYThiMGQ5NjE4MyBweTNrCis4NTY5MSA3N2MxM2M5YzZlNTllMzllOTY4YzRiNGVmZmI2M2Y3MThlMzUzNThhIHB5M2sKKzg1NjkyIDUxOTU5ZjM5YTdmYjEzNmE1ZWYyOTM2OGJiNzM4MzExYjg2NWZlN2QgcHkzaworODU2OTMgYjBiYTdlZWI5OGE1NWU5NDQyYjFkMDUxOWQ4M2JhZmRmZWEwZWRmYiByZWxlYXNlMzEtbWFpbnQKKzg1Njk0IDJmN2UwMTY5NDkyNjc1ODY2NWIxNjliNGM4OWQzZjFjYmZlNTMyODIgcmVsZWFzZTI3LW1haW50Cis4NTY5NSA4NmYwMDYxMmNiZDYwZTllMTY1NDBlODI0YmJkZDY0NTFmMTczNDE0IHB5M2sKKzg1Njk2IGVjZmY0MWUwNjhlNmZlOTFlMzBkMWJhNDg4ZGZmZGJiYjFkNDJjMjIgcHkzaworODU2OTcgODJiMDgzYzk2YTM5ZmJmNzEzMDljYTgzYjcyYzNlMmYyODJlNWMzNyBweTNrCis4NTY5OCAyNDZjMDhjODI1YTEwNTg4ZDgwNmFjZWIxMmQ4YzE0MmM4YTkyNTE2IHB5M2sKKzg1Njk5IDUwMzYwMGJiMjVlYWE4OThmZTI2YjhmNzYzOGFiYmQ2ZjJlMmI3ZWMgcHkzaworODU3MDAgM2ZhZmY3ZTUxZjQwZGVlZDBkNDZmYjlmMmUxMmVkMTJkZmFiNTM1OCBweTNrCis4NTcwMSAxNWU0MTU1MmRjYmQ3Y2MwMzIxNjY2YzQyMmU5MTM3MDJkNzM0NjlmIHB5M2sKKzg1NzAyIGJiMzMzOTczZGUzOGJjMzM5MDgyNmQwNWYxYjcxYjljM2YyZWM0OGYgcHkzaworODU3MDMgMjdjZTk5ZmMyNTI3MDE0NzVlOWY5OTA4MWE0YmY4MGJhY2Y3NGVhMiBwZXAtMzgyCis4NTcwNCAxYTkwNTM5MWUzZWQ2ZWQ0MjhiN2I2YjUzOTc2NjYxOTVmYzNiNjJhIHB5M2sKKzg1NzA1IDg5MTIxOTI5ODJjYzgzNzgxOTMyOWEzZmY4NTEwOThjZDJhNDAxY2EgcHkzaworODU3MDYgNjYyOGY4NmRiMmI2Yjc4OTAyYWNiYjUyNjY5MDU1MWY1NTlmZDJkYiBwZXAtMzgyCis4NTcwNyAxZWMyYmZhNTRjYWJiOWJiNjM0NzhiNWJiNjE5YzlmZWUzMzNmYjc5IHBlcC0zODIKKzg1NzA4IDAyNjM1YmFlYWQ1ZjVhYjVhNzMxNmNhYTZlMGFiMTQzMjZkNTI0ZjYgcGVwLTM4MgorODU3MDkgZTJiYTEyNDlhMmY1NjM2NjAyMmI5Njg3OTFhOGZhNTUzYzZjODVjMiBweTNrCis4NTcxMCBkNjA3YjYzMTMwNWRjMGE3MDIwOGRhODI0NWFkMGZkNWNhYTExOTJlIHBlcC0zODIKKzg1NzExIDRkNTVmMGIwOTBkNTgwZDgyZjViZDU3OGMwNjhmZDJiMTlmNzMxYTkgcGVwLTM4MgorODU3MTIgMTMwM2NlYWY0NDFhOWM5M2Y4MmUzZDQ0MjAwZWUyOTI3MTI2MjE1OSBwZXAtMzgyCis4NTcxMyBiNDdlNGVlMTU0MDMyY2U4YjQ0YzhhYWUyMDg1ZWI0YTA4OTE4MGE5IHBlcC0zODIKKzg1NzE0IDcwZDJiNGFlZGMwOWVhNDdmMDE0ZWEyMjFmZTE2ZjNiNjg1OWNiOWUgcGVwLTM4MgorODU3MTUgNTllOWI1OGRkYWY4NDhkM2FlMGQwODYxZGExNDYzYTg3NmFlYTZhZCBwZXAtMzgyCis4NTcxNiA0MmI4NGQzMTg4ZDEwZWZiMjI2YjViODJlYjJmMzEwMDc4YWZiOWZmIHJlbGVhc2UzMS1tYWludAorODU3MTcgNGYwZGRkYWY4MmQ2YTc0NzdlNDRjNTZjNDMxZTc1ZDUwMzEzMjk3MSByZWxlYXNlMjctbWFpbnQKKzg1NzE4IDc3MTdmOGM0NWZjYzM3ZmY3MDUyMzFhYjI2YTQ4ODBmMjMxM2FiYmYgcGVwLTM4MgorODU3MTkgNmU4ZDJlMmQ4ZDgyOGY3Mzk4OWQ3NTNkNmU1YWIyYzI3Y2NlZmRiOCBwZXAtMzgyCis4NTcyMCBlM2U2YWE2MzNmMzNiNGU5NjdmNzAzZmQ1N2JmNWYyMTA0Y2MyMDIyIHB5M2sKKzg1NzIxIDcwNzJhNWIyODFkMzdlNWM5NzJhN2FlODE3MjI1YWQ3OGE0YWNhZjIgcGVwLTM4MgorODU3MjIgYjUwMjU1NjljYmQ0MDZjYmFlOTRiOTM3YzY5YWVkOWU0YmZlYzBhMiByZWxlYXNlMjctbWFpbnQKKzg1NzIzIDhlNjBkN2E5NjE0MjI3MmZmMTcxYmU3YzA2Y2ViZWU2YjFjNmFkYmEgcmVsZWFzZTMxLW1haW50Cis4NTcyNCBhZDg5MjM3NjBkNWMwZGE3NDIzODU5OTQ3ODY2NzA1MzI4NDg4MTI5IHB5M2sKKzg1NzI1IDA1MTFjODY4YTRlMzhhNGM0MGJhNWY5NTgzYjUzZjU1NjUyZWRjOTIgcHkzaworODU3MjYgYjZhZDQwMTM3N2ZjNTliY2E5MTkwY2MxNTNhMTdhM2UyMWZmYTI3ZCByZWxlYXNlMzEtbWFpbnQKKzg1NzI3IDFmMGFiNzI5YzYzMjUzNWI0ZTIwNzMwOGRjOTMwMTE3MWE3ZjgyYjIgcmVsZWFzZTI3LW1haW50Cis4NTcyOCAwNDA5MGFiMzUzMWU0MzIzZTE0Mzg5OWRmNGVmZjRiYmU1YWRlOGYwIHB5M2sKKzg1NzI5IGM0N2VmMTgwYmUzOWQ2YzRlZTFhNGU5M2NiNGJhOGI2MDg3MDFjODcgcHkzaworODU3MzAgZTExYWMzMDE5OWIxMGFjMzU3OWJlNjYzZjgxNTRjMzRiZTMyODNiYyBweTNrCis4NTczMSAzNGJlYWI5NTk1OTU5YWRlZWQ0NzgzNzZhY2M5YzEzM2I1ZTI0NzZkIHB5M2sKKzg1NzMyIDAzNjc3MGRkOTA5NjdjYTJkOTQ2ZjU4ZDQ0MWY2NTVhMmU4ZDUzNWMgcHkzaworODU3MzMgOTYyZTFmNGM5YzAwM2I0ODI3MjdiZDQ1NDQ0MDNmYzAwM2JkYmE3OSBweTNrCis4NTczNCAwODY1MTljMWU3ZDI5YTgyNDc2NzljZTZkY2ZlZTRlOWJmNDMzMmJhIHB5M2sKKzg1NzM1IGQzYjYxZGM3MzJlZmYyNTcxZjE0M2FlMzNkYzMzZGFmMTlkMDQ3NDMgcHkzaworODU3MzYgYTY2MWI0MjRlZDQ3YTliZjQzMzdkMzA5Y2VmZTA1NGNlZjc4NDZiZCByZWxlYXNlMjctbWFpbnQKKzg1NzM2IGE4ZWZmMzlhZWIwOTk1YThjMzJiZDBkYjk2MGVkYzBmMTEwZTUzM2UgcHkzaworODU3MzcgY2Y2MzRhMzk3YmVjODFhNDJhODNkNzZmNWQ1ZThlMDZkYjI3ZDIxMiBpc3N1ZTQzODgKKzg1NzM4IGQ0ZDUzYjRkYjk2ZWQzODg5YWU1ZDY5NjYzNTA5ODhjZjhhNTY4NTggaXNzdWU0Mzg4Cis4NTczOSA1MmNiZjQ1OWRhOGJjZmFhZmJjN2RiYTZmNmNkZmMxMmVlZGRkMzQ3IGlzc3VlNDM4OAorODU3NDAgZWRjZmM0Yzg5ZjMwNDAxNTUyNzdkNDIwYTFiOGYyMDQ5MzU0NjUwMCBpc3N1ZTQzODgKKzg1NzQxIDU5YWFjMDc0NWVjNzViOGM1YjJhOTIyOTRmZDZlOTM5ODFkYTg4NDYgcHkzay1zdGF0LW9uLXdpbmRvd3MKKzg1NzQyIDNiYWVjZDRlMGMxMmExM2NhNjFmZWVmMGUxNTYzYzgwOWI1Nzk0MmQgcHkzaworODU3NDMgNmRjZjYxNDQ3YzMzZjY4MWYxNDY2YTM3NjIwZTQzMDkwNjkwNTY1OSByZWxlYXNlMjctbWFpbnQKKzg1NzQ0IDE2MThjYjE1YjViOTg0NDAwZDhhZThhMjkyMDRmMmJlNjRhMjNlNzMgcHkzaworODU3NDUgZTg1MGJiOTMwYzg0MmYxYjVjNWQzZTZlY2ViNTE1OTlhOWI2Nzk0NSByZWxlYXNlMjctbWFpbnQKKzg1NzQ2IDVjZjFlNmU2MWM2YzM3NWFlYThmYTJjOTBiYTg1YTBjMGVkNjExYzUgcmVsZWFzZTMxLW1haW50Cis4NTc0NyA1MGRkODZmNmYyNGFkNGI4NzhkN2I4MjlhMDM5YjNhNTNhMGEzMzBjIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NTc0OCAzMDE2YTZhNGE2ODBiODRhM2MwZTRkMjA2MjAxMWQ3MjU0MDlhNGJjIGlzc3VlNDM4OAorODU3NDkgNjQzYTA3Y2M5ZDdmYjg5Mzk4MWU3NGI0YWQ5ODg3MmZiNDBjOTA3NCBpc3N1ZTQzODgKKzg1NzUwIGU1M2M4MGIwMTYzMzMyODdlZjMxNmYxYzNiY2Q2MWJjODRiYjY3YjIgaXNzdWU0Mzg4Cis4NTc1MSBkN2NlMzdiOWJjZWQyMDM2ZjFlNzA2YTk3YzY4NjIzNWEwZjM5NjUzIGlzc3VlNDM4OAorODU3NTIgMmYxYTU1MDY3OTMxMTUxNzVkZTdkNDRmYmZmNzUwN2Q3ZjI4NDE3MyBpc3N1ZTQzODgKKzg1NzUzIGY4ZmMyNGExZjlhNmMyZGJiNjY1YTUzYTFlNjRhNzQ1YzViZGU2YjAgaXNzdWU0Mzg4Cis4NTc1NCBlY2ZjMGRkMTVkNTdmMGQ5YThhZjc2MjE4Y2I5MDhkZTM1OTgyYWE0IGlzc3VlNDM4OAorODU3NTUgZTcxMWI4NTg2MTdiZTcyY2M2NjQxOTkyOWY5YWJmMjU1ODg3Yzg5MiBweTNrCis4NTc1NiA5ODU4OWQwZjExMDEyYWM2M2Y4YTlkZTlhZjdhNDczNDhjNjRhMWY2IHB5M2sKKzg1NzU3IGM1Zjk3YjA1NDE1ODU4MjVjNjZkYzBhNDNiOGZjZTQ0NmQzMmVjZTAgcHkzaworODU3NTggODBjMDQ2OWY5ODU5N2Y4MWU2YzM4NjFlODg1YjZlMTJhMDRlYzA3YyByZWxlYXNlMjctbWFpbnQKKzg1NzU5IDhlNmI3YWIxZTFhMTQwN2Q2ZjA5Y2NmZTgxZjgzODlhYjJlNDYxM2QgcmVsZWFzZTMxLW1haW50Cis4NTc2MCBjYmUwMjI0NzAxNDcxYzQ3MjlmNDcxNjIxYjUxZWMyMjQ0MzRkM2Q4IGlzc3VlNDM4OAorODU3NjEgMzkzNjZiYTVmMWMxMDc0YjdkM2FkMTkzNTQyYjYzNTk0YTU0Yjg0MSBweTNrCis4NTc2MiBiZWMxNmE1ZTBjZGFjMWVmMzhlZTY2NDRjYjg5NzFhMTk1M2NjYTViIHB5M2sKKzg1NzYzIGFiZGE4MjQwYTY0MDVkYmU5YTllMzk3ODk4YzQ5NjZlZjFiMjNkMzcgcHkzaworODU3NjQgYWVjYjU2YzNmNGViNWU3MmYzY2VhOTM3NjkzZjk5OTg0OGU5ZDk0ZiBpc3N1ZTQzODgKKzg1NzY1IDQ1MDc5YWQxZTI2MDA5YWNjMGY1NzI0NDBjYWMyMmFiMGE3NzQ5NTAgcHkzaworODU3NjYgMzgxNmViMTI4NmMwY2U1OTU4YmVhOTVjYmI2ODkxMjJiZjYzNDBjYSBweTNrCis4NTc2NyAyZTE5ZDFmNGI2MTJlYzg5M2RmMGY4NmU2ODBmYTQ5Yjg4MWJlYjgzIHB5M2sKKzg1NzY4IDcxN2FhY2ZkMmRjZDY4MzZjYTk4ZmU3ZmRkNGNiZDk4MDViMmU2ZDUgcHkzaworODU3NjkgZThkNWFkMGMyZjViY2IxZTA0Y2I4M2Q2NzU2ZTMwN2M3ODQ2Y2UyNCBweTNrCis4NTc3MCBhMmJiNTBmZmRmZjNkNGY5ZjQxMjdhMjM0Mzc0ZmNhZjdkYzA1YjRjIHB5M2sKKzg1NzcxIDJmOTRkNjhjMjczMTI3NzdhODM0ZDZiNzNkYzdjMjliNzMxM2EwNmQgcHkzaworODU3NzIgMGI1YmZiYTdhOTA3ZTZiOWEwMTAwYWUzNGY1Y2QzZjg0ZmQ2NjRjZSBweTNrCis4NTc3MyBjYWE1NmNmZjJmYjNhNzhlYWMyYjM0ZmQ3ODNjN2RkMTdkY2RlNGI3IHB5M2sKKzg1Nzc0IDA4MDE0NWQzYmJmNzY4MWE2MTU3ODU5N2ZkOWQ4ZDljNTAzMmE3ODcgcHkzaworODU3NzUgZTQ1M2U1YWIyMDdjYTQyM2MzMjU3YmI5NGFiMDgxYmNlNjc3ZjM5MCBweTNrCis4NTc3NiAyNDQwOTA0Mzg2MjNlMTFmMTJjNDM3NGVlNzgwZDc2NjgyNWI3NmZkIHJlbGVhc2UyNy1tYWludAorODU3NzcgZTc5YzU3NjdiZDA1ZDA2ZjM5M2NmYjYxMGE0ODY2YTQ1YmMyMjI4MSBweTNrCis4NTc3OCAwMmMxNjI2ZmY2MGZlMmEwZTljNTY1NTk4MmMwNGJjYTk2YWUzOGUwIHB5M2sKKzg1Nzc5IDI3MmI4ZmY2MGJhNGMwODQzZTA3ODFjNmJlYzliNDEzYzM2ZGY1YjQgcmVsZWFzZTMxLW1haW50Cis4NTc4MCA4Nzg3ZjRiYjRiMjE2MDUxOTg5YWM1NWRiNGE3MzY3YjJkODQ2MmNkIHJlbGVhc2UyNy1tYWludAorODU3ODIgYmQxYjMxYzM3NDEwYmMwM2FjODUxMTFjNWQxMGY1Mjc4MDg2ZmI0MCBpc3N1ZTU2MzkKKzg1NzgzIDZlNGVlYTc1NDNiYzM2ODk0ZDUxYThiMzNiYzZlZWIyNDRjOTZkZTYgaXNzdWU1NjM5Cis4NTc4NCA3YjU0NjI5NTFhYzliNTExZTc5Y2ExMmEyZTdmOWJhZDViOTZkOTdlIHJlbGVhc2UyNy1tYWludAorODU3ODUgZjk4NDQ2OWRlMGJiNmQzZGNkMWI2ZjUzZmM2ZjVlNDNkMjRiMjBiNiBweTNrCis4NTc4NiA4NTI1NTQ0OTY4ZjNhNTk2NGZiZTJmMDU4ZWRmN2Q5YmM1ODQxZDY2IHB5M2sKKzg1Nzg3IDEyZWIyNDQ2MzYxMDk0MTdjOTQ2NjM0MWJiNmYyNmNjNjJmMjcxOGQgcHkzaworODU3ODggYzZhMGViN2Y3M2JmY2ZkNzE2ZjhhYjI5YWNiNjllYTIwNWU2NWY3OCBweTNrCis4NTc4OSA0NmJiYmRjZDc3N2Y1NWI2YmMyNWUwNjFiMjU3ZDUyYWUzNzJiNTliIHB5M2sKKzg1NzkwIGZlMzU1N2RiZWY4OTI1MjM1Mjc0MDE1ZGFhZGI3MjgyOGRiMmViZmYgcmVsZWFzZTI3LW1haW50Cis4NTc5MSAzMWEwYWI3YWMyZDViNTUyN2NiYTVhZGI5YWIyYWUzNDMyODYyMDc0IHJlbGVhc2UyNy1tYWludAorODU3OTIgZWEwZjgzY2Y3ZTk5NTk2MzIyNjcyMDE3NDA4NDMyOWM2NmNjZTZlYSBweTNrCis4NTc5MyA4NDZjMGUxMzQyZDBiYTFhZWQ1MWFjMDE4NzIzZTExNmEyNjk0NDZlIHB5M2sKKzg1Nzk0IDE0MzhkNmI2NzA1MjY1MGY4MjYxNTBkZDViNzJhZTIwYzZhYmFhOGMgcHkzaworODU3OTUgMDZkZmFlYjU4YmRlMDFjMzY4ZjNkMTVlZjUxOTQ4Y2NhZmQwMjQ4MCByZWxlYXNlMzEtbWFpbnQKKzg1Nzk2IDg1OGFmNjBiMmRiYmNkOWJjYzRjNmZmMDA1NTEwOTc0N2RjYzI5YjggcHkzaworODU3OTcgZDk4NWJhOTgxMWU5OGVhNTgwYzEzYWY3NWY1YTc4ZWQ5NDc2MTg0NSBweTNrCis4NTc5OCA5OTEyZDYxY2RmMzRjMmIwOTIwMGM0MGIyOTVhZWM1YTcyYmY4ZGMzIHB5M2sKKzg1Nzk5IGNkODBkMDVmMmZkNjdkYjYxNjAwOGFjNjdmMDhjMWI2ZWQwZWJkM2YgcHkzaworODU4MDAgNWI2ZTEzYjZiNDczYjVmZGMyZmY1MGQ1OTkwYzJmZmM1NWJiODNhZCBweTNrCis4NTgwMSAzODM1YmNiZmIyOWMwYzZiMzEwMjY1YjBiNGQxMjQ4MmFjYzAyMGJmIHB5M2sKKzg1ODAyIDkwMmY1NzdlN2Y5NDk1OWIwNTczOTE3NjZjMGUxNGEzYTE2Yjg4OGYgcmVsZWFzZTMxLW1haW50Cis4NTgwMyBiZThhZTZiMTc1MzlkMjk5NWMwNmNhNjkwZmNmMWYyZTUwMjUwMGQ1IHB5M2sKKzg1ODA0IDhkN2YxODMzMmRiN2RkNDE5NGRiNzFmMWIzZjExNGM5NTc1YjYxNjAgcHkzaworODU4MDUgMWEwOGY0YTllYWZkYzQzZWFmM2RhYjYzZWVhY2NiY2JlZGE1M2QyMyBweTNrCis4NTgwNiBhMzBlNzU4MjBiOGRlZWY3MTAxYjIxY2U3ZWQ3NmMzYTc4ZDUyYzkzIHB5M2sKKzg1ODA3IDc5MjAwNWRlMjc3Yzg2YThhNDgxOWVlNGNmZWQwMmNmY2ZhNzMxYmUgcHkzaworODU4MDggZTk5NmM2MWU0N2M3YjM5Mzk1NjE1ZTliODY5Y2QyMzc4NTJjZjFhZiBweTNrCis4NTgwOSAwOTgxNzdhY2Y3M2YyMDg2MDgxYmIxN2FhMjMxMzMxOWIzODI0MTVlIHB5M2sKKzg1ODEwIGI5ZGNmZGZmY2I2MjBjNTI3MjRhMWRkYmVkMGU5YmY1MDVkYWQwMzUgcHkzaworODU4MTEgZWJmNjc0MWE4ZDZlMzc5ZGM3MTBmOWE5MDg3ZGMyMjRkNDcyZDVlYyBweTNrCis4NTgxMiBhOTRmYjhkYjlmMWE1MGY2MWIwY2FmNTRhNzc3NDA5ZGU4NjY2OGZiIHJlbGVhc2UyNy1tYWludAorODU4MTMgZGI1YWJkODFkYzk0ZWQ2YTY4ZDgwN2Q4OTJhMjU2OTkyOTkyMDcxYiByZWxlYXNlMzEtbWFpbnQKKzg1ODE0IDE4OTg5YWQ0NDYzNmFkNzVlZjE4NTg1MDZhZTk0ZTg4Y2FkYjM1YTYgcHkzaworODU4MTUgNTM2MzllNTdiYTQwOTIzYWYzNWM0MzNiMGRhMzZmMGNlMTYyOWQ3MCByZWxlYXNlMzEtbWFpbnQKKzg1ODE2IGE0YTI3MjQwZmUwOTM0YjgwOWI3MzhhYjcyOWNhY2YxNjllYWRjZTMgcmVsZWFzZTI3LW1haW50Cis4NTgxNyBmMTQ4Zjg2NGIxNjhiMDg3ZTg5MjczODA2ZDI3N2VlMWQ4NThjYTU4IHB5M2sKKzg1ODE4IGIxNzJkNzUzN2I5OWI1NDA0Yzk2ODk2OGViM2MxM2ViOThkODY4NzEgcHkzaworODU4MTkgNWI1MzZjOTBjYTM2ZGVmYjMwZjY3ODU4YmZhZjdkY2M0YjQzZjQ1MyByZWxlYXNlMjctbWFpbnQKKzg1ODIwIGE4MjA3MmNhMDZiYWEwNTFkM2MwMDFiMTlhMGRkZDU5ZTY3ZmQ4YWQgcHkzaworODU4MjEgYzVhZWJmZmM5ZmFjNDY1ZmE4MjA1Yzg3MzY2MjkzMDAzZTBiZWQ1ZSByZWxlYXNlMzEtbWFpbnQKKzg1ODIyIGNjZjJmZjA4ODY2YjliZTZjMmFkNWM2OTAyMGIxMmE0ZTAxNTIxYTMgcHkzaworODU4MjMgYjRlMzcwYzhlN2NhZjQzMjEyNTFhOGU4MmM3MDg2OWRmMDQ1MzE0NCBweTNrCis4NTgyNCAzOWI5ZTlkZTM3MmIyMDEwMzBmNTVlZmJiMGU2NTFlMTJlMTFlNzZkIHB5M2sKKzg1ODI1IDVhMDU0NTRlNTY1ZmE3OGYzNTA3NjM4Y2IzZGExZmVhY2JkNTQ0ZjAgcHkzaworODU4MjYgMTkwOGExNDZlOTYxZGMzOWY4MGIwZDk0OGRmOTVmMzkyNjBmNDA3ZCBweTNrCis4NTgyNyBkYjVhNTA4MGY5YjhhMGVlMWViNmQ0ZGQ5YTY4MmE5MzgwM2Q0YzkyIHB5M2sKKzg1ODI4IGNiNjQxOGY0ZDYwYjljZjY0OWIwMzQ0NjA0OGVlZjM0NTdhYjg1OTAgcHkzaworODU4MjkgNGUzNjA2NTI4M2NmMmM2Zjc2ZDc1Y2YxMzZhYzMyNjc3OTg2NDZlYSBweTNrCis4NTgzMCAxNTk1MzBmMGU0MDZhODY0ZTI0NDU5NzgxMTZkZTFhMDA1ZDU4NjQ2IHB5M2sKKzg1ODMxIDY2MGQ1ZjMyNDgyZWY0ODk0M2EwNmVjODc4YTBhNzQ2M2JkZGVjODEgcGVwLTAzODQKKzg1ODMyIGY1NzBkYTlhNDNmODZlMGNiMWJiNzZjMDc4MjJlNzg0OTY0YjVhYjQgcmVsZWFzZTI3LW1haW50Cis4NTgzMyA0NGQ4MTkyMmE4OGYzNWRiYmVjMjVkODZjMmVmNjUzZTc2NTQxZDhjIHB5M2sKKzg1ODM0IDVjMWNlNWMzNjBkYTIxZmRlM2YwYjBlZGIzN2Y0MGNjZTE2N2EyOTEgcHkzaworODU4MzUgM2E5YzNlYzVlOWQyY2ZmYjBjZmJhNjQ1ODc1ZGVhYTA5ZGRjYjc3YiBweTNrCis4NTgzNiAyMzUyZTVlNDQwNTNlOTViYjY4NmJmYjc2ODkxOGMyZTE2MGQwMDRjIHB5M2sKKzg1ODM3IDBmMDdkMmRiZjgyMGI4OTQ5MjUwYzRlOTBhMWE0MWI2MWRmMmZkNTggcHkzaworODU4MzggNGU5MmNkZWZlNGM3NDM3ZmY5MmE4ZjEyZTNiYzY2Mzk1OWJhNmE4ZSBweTNrCis4NTgzOSBkN2QzMjNkZTM1ZTc2ZDI4MDkyOTI2ZWVlNzE5OWM1MDM3OWJmYzY3IHB5M2sKKzg1ODQwIDlkM2ViYTAzZmQyNWQxZDdlZWE0Yzg1ZjdkNDYwMzFkYjA3NDA4ODggcHkzaworODU4NDEgY2VlYmIzZjQ1ZjlmYzYyMzg5ZDM4ZmFhYWYyYmFkNGYzOTEyMjk0NSByZWxlYXNlMjctbWFpbnQKKzg1ODQyIDc3MmI1NWYwMjgzNWRlNjc2OGNiMzhmMThiY2ViNjBhN2M4NDJkYjUgcmVsZWFzZTMxLW1haW50Cis4NTg0MyBkMzUxMDBjYzZjNmIxYjQ5MDM1MzU5NTYyYjVhMzZjZDlmOThhMWMwIHB5M2sKKzg1ODQ0IGU1NWEwMGNmNjc4YTdlOTcxZGNiMWNmMDEzZmEwM2E3YzVhNWYxYTggcHkzaworODU4NDUgYjljN2JkY2FhMDMxZDg5MjE2NTRjNjI4ZGRlNmNkM2MwNzViODNjYyBweTNrCis4NTg0NiBlNTE1ZDEyNDE4NTg2ZTUxMzNkYzRiNTk3YzcwNDIwYzQ3NTY5YTY0IHB5M2sKKzg1ODQ3IDMyYzRlOGU5NWNhM2NiNWJmODhkZGRkMzk1ZDRlZWYwZGFjNjJlMzcgcmVsZWFzZTMxLW1haW50Cis4NTg0OCA4NDE4OTJlMjcxZjdmODUxNDFiYWJiZDA2NjliMTIzZDg4ZjYyNWRjIHB5M2sKKzg1ODQ5IGE5Yzc5YTlkMmQ5MWQwOWZhMjg0Y2U0ZjQ5Yjc0NGExZjEyNjNiOTMgcHkzaworODU4NTAgOWRhNWUwNGIwNzkzYjk5MjZmMTAxYThkMDMxMjFmYTY4N2EwODgyNCBweTNrCis4NTg1MSAxMTg3MTU2YTFmMzJjMTE2ZDdiYTRhOWRhNTIzMTRlYjEzZGZiMWY2IHB5M2sKKzg1ODUyIGM4OTJlNDU0N2ZlZGNjOTYyNjVkZmYxYTNhYjZiZDFkOTQzYzk4MzQgcHkzaworODU4NTMgMjlhZjE4MWRlMmYyZDg4ZjM5YTMyMTMxM2RjMWI5Yjg5ZGYzMjA0NSBweTNrCis4NTg1NCBiYTFjNzNlMTZjOGIxZjkzYThhYTVmOTQzMGI1YTFlMzBlM2QxNTdkIHJlbGVhc2UyNy1tYWludAorODU4NTUgZmY2ZmEyMGJkYWY4ZGVjY2M1ZDg0YTYwYmY5NGM1NTYzNmI4N2VlYiBweTNrCis4NTg1NiA5ZTRhMjgwOWU1NWNlMGYwNzQ0M2U2MjgzMzMxMDY5YTVjZTQ4YTViIHB5M2sKKzg1ODU3IDRiNTQyMjE3ZTkzZWQwMTdmNWVlYjE5YzJlY2JmNTdhOGJhMjdlYjcgcHkzaworODU4NTggYmY1ZGE2MzYwNTNhYjk5MjZkYzdhZGJhNjUwYjdhOTY5ZjBjZTRmMCBweTNrCis4NTg1OSA2OTM4ZDdhZDYwZTQxYWU1MDljYWI0Yjk1NDIzYzBhYjQ4Y2Y0NWMxIHJlbGVhc2UzMS1tYWludAorODU4NjAgZGYwMjA5MzU4OGQ2YmMyYTFlZDg4ODBmNWI0ZWIwYTk0NWMwODRhNSByZWxlYXNlMjctbWFpbnQKKzg1ODYxIDRkY2EzZjBlMGZjMDQ2N2Q3N2NiY2U5Yjg2MjllNTU4M2Y2YzI2ZmYgcHkzaworODU4NjIgZTllM2ZlNGM5ZTMwMGU1YWNjMjE1NzM5ZDRhMGJkNzhkYzczMzNiMCByZWxlYXNlMzEtbWFpbnQKKzg1ODYzIGViYjgyZjAxZGJlMjYxMDljNGY0ZGExZGIwYzM1YzE5YzQ1ODEzMjIgcmVsZWFzZTI3LW1haW50Cis4NTg2NCA1OWFiZGI5Mjc4ZjcyMDMyNDM3M2NhMmViMWZmODMwNTA0Y2ExOGNmIHB5M2sKKzg1ODY1IDBkNTBhOTExZDc0ZmU2MmFjMGM2OTViYWU4NTRmZWVlZjlkZDNmMTIgcmVsZWFzZTMxLW1haW50Cis4NTg2NiBhZjA2ZjA5NzJkOTdhNzY4N2M2YTFmMmNmOWY4MDI3MzQ5NjNiMzliIHJlbGVhc2UyNy1tYWludAorODU4NjcgMDUxYWE0MjdkZmVkZmY1OWQyZDI5MDI1NTAxNTRjMjc0MjM3NmExZCBweTNrCis4NTg2OCAyMTRiOTA1MTg0MWVhODllOTdkOTEzMzQwYzg2MmE1MjJjM2Q0ZjdhIHB5M2sKKzg1ODY5IGFkZDFiYzA1ZTQyNjZkYmI5ZDA4NGVkMmQ2OTM4ZjI4ZTI1N2VhYTggcmVsZWFzZTMxLW1haW50Cis4NTg3MCBmNWUzZGU4N2IxNGJmMDQwNzkwYjUxYjA1MmQ1MzhlMDFhNDFhODA0IHJlbGVhc2UyNy1tYWludAorODU4NzEgNjRkZTE3NDZjZDZlMzk2MzIwYTJjOGMxZTE1ZTFmMzk3MzU2NTIyNiByZWxlYXNlMjctbWFpbnQKKzg1ODcyIDNlNzhlZGU4ZmQyMTI0N2I3YWJlYjA3ZDRlYTNiN2EyOWQ0ZTc4NjUgcmVsZWFzZTI3LW1haW50Cis4NTg3MyBlNDQyNWQ2OGRhZGYyYzM4NjQ3NTk4NDBlZjBjNzM3OWNiOGE3N2YzIHJlbGVhc2UzMS1tYWludAorODU4NzQgYTI4MTk4OWEyMThiMGMxZDVlOWZjNTVlNzQzNTU3OWQ3YWNmNThhOCBweTNrCis4NTg3NSAzZmY5OTA4OWMwMmUzMDQ5MTZiYmNjZGRmM2E1YTJjMGQ2NWE4OTAwIHB5M2sKKzg1ODc2IDZkZmY1ODFkMzBmMzgxZmMwOGUzNWQ3NGNkZDg5MDcxNzg3NTkzZWMgcHkzaworODU4NzcgZTVmMjY5ZGQzMThiODdlYTE3ZTYxZTllZTk3MjU3NDA2YjlmMTJhNCBweTNrCis4NTg3OCA1YTg4MmY3ODllYzFlN2Q1OGFiZjFkMGMzOGZkNGEzYTBiZTkwOWQxIHB5M2sKKzg1ODc5IDViMTYzZjJhNjAyYmVjYTMxODIxYjhmZWRhNmU3Mzc2ZmY4NWY3OWMgcHkzaworODU4ODAgN2FkMzVhY2IyMGIwZDQ5OGMyMjAzNTdlZjIwZjg5YjJmYTRhZDBjMiBweTNrCis4NTg4MSAyMTEwZDI2OWE4NmVjMDBlZDM0NWIzZTAwYWY1MGI4NTgzNGMzYjUzIHB5M2sKKzg1ODgyIDczMTIzM2Y5MDQ4NjlkOWY1OTdjNTMzNThjYmYyMGEyNzdkNGRiNDEgaXNzdWUxMDIwOQorODU4ODMgYjljYTEwMmE3NmQwMzM0MzQ0NDlmYjc3ZTM0MTM0ODhiOTNmY2I2NiBpc3N1ZTEwMjA5Cis4NTg4NCA2NmI0NGNjYTI5YmI4MzMwNTA0MmU5MzVjZGMwZTQyZWQ5OTQ0MDg1IGlzc3VlMTAyMDkKKzg1ODg2IGQwN2I5YjBjYWFlZjFlNGE5NGE4Y2E2MGNlOTE4NTFmYTIxOGQ3ZTIgaXNzdWUxMDIwOQorODU4ODcgM2Y3ZDAzNDI5NDkxODZlNTEzMjZkODFjOTY2NmFiNGNiODlhOWE4YyBpc3N1ZTEwMjA5Cis4NTg4OCA2ZjMxZjBhZjUzNTc2NTAwYTU1MjA4YWNiNzNlZmFjZmIwMDNkZWFlIHB5M2sKKzg1ODg5IDViOGU2ODhlYTVhZWRkOWNkNWI5NTA2ZmYwNGVmZWQwYWMxMTVjYmMgcHkzaworODU4OTAgMTVlYWNiNGM1NDIyODMyMWYzODk2MTNiMGQ3MDMxZDU5MmJkZmQ2YyBpc3N1ZTEwMjA5Cis4NTg5MSBkYzA2YWVkOWI5ODQ1ZjBjYzY5Nzg0ZjM0MTg5OTY2ZjkxNDQ5M2ZjIHB5M2sKKzg1ODkyIDUzODNhZThkYjNjZGQxYjVlMDE5NTQ1ZTkyOGYwZTE3ZjI2ZmZkMDUgcmVsZWFzZTI3LW1haW50Cis4NTg5MyAxYzExNGQzOWFlNTI2MmFjNTNkZmI4NTNiZDY0MjhiNzI3MWI5YjdlIHB5M2sKKzg1ODk0IDY5OGQzMGI0NTExNmNiYzQwZDk2ZWRlNTZjMTE5NWRiMWYwZDI2YjcgcHkzaworODU4OTUgNjEzYzdiNTk2ZmU3ODEyZGU4N2I0MDE3ZmU1YzE3ZWJjYWVhZjA2NyBweTNrCis4NTg5NiAxYjdhMDM4NWM2NWY3YWI4ODk3NzMxMzgyZjE1OTMwYmVlN2QyNjI2IHB5M2sKKzg1ODk3IDcwZWJkYmQ3OWEwMmQwODNjZmI4YmI2MTE4Mzk4MGEzNWMyZGI5NmMgcHkzaworODU4OTggYzZkODY0MzlhYTkxODQ1MTg1NDFmOWUwMWRlOTA1NjRiMzZhZDYyYyByZWxlYXNlMzEtbWFpbnQKKzg1ODk5IDQxYTMwMTQwOTI1YmUxMzUyNmU0YjQ4MDAwNWY0Mjc2YTEyZWUzMDAgcHkzaworODU5MDIgYTU2YTJhODAzY2Q3OGVmOTQxN2U5ZDAwNmU0OWJjOTNkZTM3NDcxYSBweTNrCis4NTkwMyBiNjZkZWQ0YmZmMjEzN2NiMmM0YTFhZmU1NmRkOThjYTFlNWFhMzlkIHB5M2sKKzg1OTA0IDZhYzE4NTc2ZThmYTk5NmVhYmZlOGYwZmUxYjdjMjVlYjExZGVmMDggcHkzaworODU5MDUgNjRjZWU4ZDExZjJlOGI4YjY1ZTZlY2JkNzM2MGYxZjdiYTJjN2E1MiByZWxlYXNlMjctbWFpbnQKKzg1OTA2IGU4Yzg0MDBjYWE5OWNhNTdmOWNiZjM2MjM5YmI4YzY5MDJlOGQ5NDkgcmVsZWFzZTMxLW1haW50Cis4NTkwNyA0YWYxNGY5YWE5NzA1NjViMjA0MTJjODI1NzNlNzgzMWM2MjY5OWE5IHB5M2sKKzg1OTA4IDVlNzIwZjlkMWU2YzE5ZDdmYzNlMzMxMGQ5NTJmNTYwMGUzMGEyNWIgcHkzaworODU5MDkgOGM1YTEwMWE2MzU0NTgzNzAzNWVjYjVlNTUxYjUxYWViNmM3M2IyZSBweTNrCis4NTkxMCA4YThmMmFhOWRiMGY5OTBkNWJhNzMzZWUyOGVhNWMzZWY0N2Q3M2JlIHB5M2sKKzg1OTExIDcyMmIyYTRmYWUwZDE5NmY2M2M2MzEwZDdlMGEwZTQ1ZWYwYThiZWMgcHkzaworODU5MTMgNGQyM2RlNGY0MTAyM2M3OTNjYjY2NjhkZTlhZGFkYjg3ZTRmOTg5MyByZWxlYXNlMjctbWFpbnQKKzg1OTE0IDA4NjBiZTljODM0MzNhNjNmOTljN2Y0YmFjNjY2MjBlNGQxNmY5NjYgcHkzaworODU5MTUgMTZiOTI5NzFjMmQ0NDBjMmVmZGFiNTcyZThhOTZiMjkzM2ZhMjI0YyByZWxlYXNlMjctbWFpbnQKKzg1OTE2IDA1MGYwZjdiZTExZTI2MjI0OTkwMTFjMGFlNWY1MDZmODZlNzc4MzEgcHkzaworODU5MTcgZjM0OTg4OGZhZTY0MzljMGJiY2JiMjI3NmRmOWM0MWUyZTA2ZGU4MyByZWxlYXNlMjctbWFpbnQKKzg1OTIwIGNmZjc4ZmZiOTMyYTI3NmZjZDMwZGEzNDgzMzI3YzE4NTI5MjFlZjEgcHkzaworODU5MjEgMGI1ZTZmN2VkZjZlNjJhZmNmOGZlODQ1MTJhZjJkOWMzN2MxYjBhZCBweTNrCis4NTkyMiA4ZTYzMzhjZTA4NDY2NGJlYWM3ZjVlMmU2YTI4ODFiMzQ0YmMzMDBlIHB5M2sKKzg1OTIzIDRhN2EzZTUxY2QyOWEwMjY4YWM3NTFmOTQ4MTlkMzU1MmFjNjAzNGUgcHkzaworODU5MjQgZDE0NzI2ZjRiNDEwN2I1NmUxODhiOGE4MWZhNjcyZDJlYmY3Y2IyNyBweTNrCis4NTkyNSBjZjFkMjczMjFjNzgyMTcyOGE3ZGMwMmZlMTczOTgwNGUzM2M4Zjk1IHB5M2sKKzg1OTI2IDQwNDI3NzYwZTE2Mjk0YWE5NDc0NDYzYWUyNTcwZDU5NGQ0OGIxNGMgcHkzaworODU5MjcgMzcyZDZhZmYxNWJlOGM2NGU2ZTI4OTMyNDE4MmU4OTlhNzE3ZWYxNiBweTNrCis4NTkyOCA4ZmExMzJhM2FmYjViZTlmYTVmOTEzNTNmNmI2ZTc4NGExMGJjYmFmIHJlbGVhc2UzMS1tYWludAorODU5MjkgNWMxM2NkMGY5OWI0NWU0NTk2YThiOGQ4NzNkYWU0MGY1NTE2YzA5MCByZWxlYXNlMjctbWFpbnQKKzg1OTMwIDE1MzJjYTIxYjkyMDU4Njc2NGQ1ZWQxM2NhZTk4OTljOGJiZmM1ZTIgcHkzaworODU5MzEgNjFhOWFlNTIyZGNjYTZiNDk2MDI0OTllODhkYzEzODJmY2RkMWJhMiBweTNrCis4NTkzMiBmM2ExZWFjNjM1Zjk4YzdjZWQ3NGI2MjAxMmQ5MmQwZDllMDJlMDY2IHJlbGVhc2UzMS1tYWludAorODU5MzMgZjhkMzQ0ODQ5NTk2ZTE1MTZhNGJhYjQxODRlZmNmZGZjZGE0YmNhNSByZWxlYXNlMjctbWFpbnQKKzg1OTM0IGE0ZmQzZGM3NDI5OTcwNzY3YTk2MWNlMDIwNzFhZjY2MTkyMGQxMjYgcHkzaworODU5MzUgOGIzMmU0ZjZiZDk5ZDJmYjNkNWE0MmVjNjJiYmY0NjAyOTIyODA5MiBweTNrCis4NTkzNiBiMTgyNzViMTE3ZDIxMGI0MTE4ZDU4M2UwMTU1MDI3MDQxMDk0MGMxIHB5M2sKKzg1OTM3IGEwNjI2Zjk3MjdlMGYyZDA4YTI5NTMzOTc3MjY1ZmEyMDlkODczOGUgcHkzaworODU5MzggNzY1ZDQyMWQ5NDNjNzM1MTRmMGZhODM0YjdlNDlkODYyMjEwNzFhYiBweTNrCis4NTkzOSAxZDU1Y2MyODRkNGFiNWFmZTM3NGJkYWQzZDkyMDA5YTlhODAyOWU4IHB5M2sKKzg1OTQwIDJjMmVjZWQ2MzVmNjBkMGEzYjc3OTk5MDRkNmQ2ODdlYTY4NjMyYzIgcHkzaworODU5NDEgZWI1MGM0OGQ5Y2I0OTA4YWE0YzU1ZGFiM2ZkY2RiNWYzYTJlZTU4MCByZWxlYXNlMzEtbWFpbnQKKzg1OTQyIDNkYTIzZGViNmU5YTUxOWViNmY5ODU3ZGFhMmFjZTM0NTA2MTA3YzMgcHkzaworODU5NDMgZDE2MTcxNGU3YzkyOGM0ZTMzYTM3ZjhlMDI1ZWY0ZWE4ZTY3NGI3YiBweTNrCis4NTk0NCA1NTZmNTkxNjY1NDk5YzI0MjExNDk2N2MwN2ZjODM4YWQ1NzM2YTJlIHB5M2sKKzg1OTQ1IGJlZGVkNDdiYjE3ZjhiMGUzZTA2ZDc3NzQ2NDc4ZTk3NjQzZGZkN2MgcHkzaworODU5NDYgOTI2ZThiNmI2YzlkNmY3ODNhZGYzZjFmN2FlOTJlN2I4MzNhOGZiYyBweTNrCis4NTk0NyBlNzI3Y2YzNTQ3MjAxMDgzMzJmZGNkMDJkY2JmOTNhMzhiODc5OTNkIHB5M2sKKzg1OTQ4IDUzODZmMWY0MjhhMTVlYWI1OGU3Y2IzNjM2MmM2N2I0Mjg1ZmQxYzAgcHkzaworODU5NDkgZjI0YTUzZWRlOWVkOGU4NGNiYzkxNGFjM2FhZTk5ZTk0NDFlNzdhZiBweTNrCis4NTk1MCAxYzAyMGJjZDUwY2Q3ZWI0NTBkZGE2NDMyNWY5YWVlMTFiYjc0MDkwIHB5M2sKKzg1OTUxIDVjMDEzZWMyNzMyN2RkYWY5MTY5M2U5Njk4YmI5YTdjYWM1ZGMyMTEgcHkzaworODU5NTIgZTM4ZDJkMTczMDg1ZmYyODVlYzQ2OWFlNjUwYmVmY2NiMzM1N2NkYSBweTNrCis4NTk1MyA0MGFjNDVhMDkyYjc3ZDRhMTdjMTlmNjQ2MzAyOTY5Y2QxODRmN2Q4IHB5M2sKKzg1OTU0IGM4NWY1MzM5MDY4YTExYjliMTUxMTY1MWE1YTY5NWRjZWFhMTQwOWEgcHkzaworODU5NTUgNjRlZjYxZDlmZmRjNDE0MWNhMjEyMWZlMWJjMmFjMjgzMWM1N2UxNCBweTNrCis4NTk1NiAzY2NjNmFiNTQ2YzNiMTIwNjM3MmEyYWE5Mjk4YmViYjBhODdlYTI2IHB5M2sKKzg1OTU3IDNmZGJjNmE0YjBkMGY3ZDgxMDI0NzExNDVhYmU4YzYxZGQ5ZDc2ZTQgcHkzaworODU5NTggMTg4MzAyOWM3YjhhNzQ5NDE2ZjI0N2NhN2VkYmQ3ZmY2MTRlNzgxNyBweTNrCis4NTk1OSBiYWFkNTJlNzhkY2IzY2EyZjBhN2IxZDg5M2VhMzFkZDA4Y2VlZmNlIHB5M2sKKzg1OTYwIDBmNzY1YzMzZjRkZTI3M2Y4Nzc2NWJkNjM0MjcwMTFiYjU3MjRmMTcgcHkzaworODU5NjEgM2IyMTBkMDQ4ZjVkYWM0OWNkZDE4ODVmZGUwNjczODhkOWQyZjI3ZSBweTNrCis4NTk2MiA5OGNlY2EyNTE5ODhlMmVkMzhhOTZiMjg4ZmNkYTM2MzdlODY2YzJhIHB5M2sKKzg1OTYzIDliNjZhOWYxMzdiNmMwOTg4MGMzYjU1MjEyZmI5YTdhMTI2MTFjNTcgcHkzaworODU5NjQgNjAzMDEwYWY4MGNmMzY3ZjAyMTA1MWZmMmRlNmE4ZDdmMjBlN2RkNCBweTNrCis4NTk2NiA2NGE5N2M0ZWJhZGNmNDk0YjliZjEzYzc4ZDk4NTJlODM4NzVlZjExIHJlbGVhc2UyNy1tYWludAorODU5NjcgMTgyY2IzZjgyYjBiNjU3ODNiZWNkNzA0MjgxZTE0MzFlNjczNWI1YiBweTNrCis4NTk2OCA0ODBlNDU4MjhkNGIxOTEyMGNhZWFlYjlhMzQxOGI3OWYxZDJhNmI3IHJlbGVhc2UzMS1tYWludAorODU5NjkgMGEyZWMxNzRmYmNkNjI4YzEyM2Q2ODk3N2JkMGM1NzViNzdjMTE2NSByZWxlYXNlMjctbWFpbnQKKzg1OTcwIDkwYmM3MWQ2YmVkZmExNzI2M2RhOThiNmFjZWQ3YzA4NWRkNzFhNGEgcHkzaworODU5NzEgMzIyN2I2ZjIwNGNjNGIyNjBjZGY3ZjU4NGQxMjY1MTYwMTA4Njk5ZCBweTNrCis4NTk3MiBhYmJkOWQyNmFlNmM2NGVlNDgzNTNiZGZjNmY1OWNlYjNjNzljMzI3IHBlcC0wMzg0Cis4NTk3MyBlYTdiMjYwMGZkYzU5OGFmMzVlMGQ0MmVhNDQyOTk0OTMzZDYyMjZmIHBlcC0wMzg0Cis4NTk3NSA3MTA5NjhhMmUxNjNiOGQ5NzI0YzQ2ZGIxZjJlNGI1NWE0M2MxNGZhIHB5M2sKKzg1OTc2IDkzNTZkNzY1ZDc4ZTNkMWIwOThmYzMwMTdlM2JkNGE1OGFkYzlhNjYgcGVwLTAzODQKKzg1OTc3IGY5NzIxYThmODdiZDhiZDNkODNkYWJlNTg5OWE2YTdhMjE3NTBkODAgcHkzaworODU5NzggZWY2ZGFkNzUxN2M1YzU0Zjk4NzBhNGJlZjI5NmFlZDNkZTE3NjZiZiBweTNrCis4NTk3OSBlNmFmMTQ2YmIzOGI4ODYwYzQ3MGQ5ZGY0MGE4Mjg2YTE3ZGJmZTRjIHB5M2sKKzg1OTgwIGVhMTQ5NzdhMzZkZWY4OGFiZGQ1ZjVlMGNiNzIyN2Q2MmEzMGQ5MGMgcHkzaworODU5ODEgYjAzNzc5ZjAwNzM5ZDRjNmM5NGU4ZDAyNTdmMDI2MDA4NjYwMmJkNiByZWxlYXNlMzEtbWFpbnQKKzg1OTgyIDgxOWIxZTA1MzVkMTkwYTZkNTQ4NTBmNjlmODNiNzUyZDIxNjY0ODYgcHkzaworODU5ODMgYjcxODBhZmEwZGZmMmY3OGU3NWUwYmQ3ZDFkMDFhOGMxZGZiMDgyNiBweTNrCis4NTk4NCAzNmVhNzE5MDJmYzhkMWM5ODJhYTIxY2E3ODZiYjAwZTk0ZTM5ZjFmIHB5M2sKKzg1OTg1IDM4NTZjNjFiNWM4YmJiZWQzZDM1ZGY3MjE4MjRlOWY0ZTNhMDIyZmQgcmVsZWFzZTI3LW1haW50Cis4NTk4NiBiMDFmYzNhNDJkMzVmYjhiZDlkNGE5NjQzOTIwOThjZjJhMWQ1MTAwIHJlbGVhc2UzMS1tYWludAorODU5ODcgNzJhMmQ0ZDk0MDAzMmQyNTViZTRhOTU4OGM4YzNmOTZiNmNlNzFhNSBweTNrCis4NTk4OCBkNjk4MjA1NTQzYmQ3MTk2MDk1ZjU5YzNiYzVhNDkxOWJkOTE5MzhiIHJlbGVhc2UzMS1tYWludAorODU5ODkgZTIwM2VkMDcxZmNhYjQzNzFjYWMzYTRkMDY0MmU2YmI4MjQ4N2Q3OSByZWxlYXNlMjctbWFpbnQKKzg1OTkwIGI5NDM5NjVmYzQyYmM5MWY3MGYzZDJmODhlZDY3MzI5N2UwYWEzMzYgcHkzaworODU5OTEgOGQ4MjQzNDgzMjI4YzAzZmRlOWM4NTZiMTRmZWMyOTJhN2FhYTljZCByZWxlYXNlMzEtbWFpbnQKKzg1OTkyIDI0YjE4Y2Q0ZDVmMzU0OTcyNGFkYmJmZDczYmMyZDVlYmRkOWFhMmYgcHkzaworODU5OTMgNDJhZDRhZTZkOGVlYmI2YjI0MGE5NzVkMmYxYTA2NDJlOTYzZjNiNSBweTNrCis4NTk5NCA2MjRlODMxY2U3MDAyOTFmZThlMTNjZDI2NjU4YmMzN2IyZTI2ZDMyIHB5M2sKKzg1OTk1IGNlNTNmZWE3Zjk1NzNmOGFmZThiNjY1OGJkOGY5MDdmN2FlZWQ2MDAgcHkzaworODU5OTYgNWI2MjcwMzVhOTIyZjdhNDEyMTU1ODgzMzliNTJlZmZiYTY4OTE5NiBweTNrCis4NTk5NyA5MjUxYmEyNzJmMmNhMzNmMDhhYmM1MWE4ZThhNTI2ZWQ2ODZmYzg2IHB5M2sKKzg1OTk4IDBiYzJiMDY0MDZmOGJlM2EzMTYxMjRlODM2M2FiM2E5MmU5MTQ2MWEgcHkzaworODU5OTkgMTk1NGM4ZTMxY2IzOGE4OWQ2N2IzMTVjNDY2MzM2YTkwZWU1OTJiMCBweTNrCis4NjAwMCBmMTgyNTE4ZjNmNDI4Y2NjZWYzNzhjOTc1ZjQ0MjQxMWZhMjRlNDVhIHB5M2sKKzg2MDAxIDcxZjRmM2IxYzMzNTZlZWM1YzhjYzVlMTZkMmRjZTBiM2ZmYTYxZjcgcmVsZWFzZTMxLW1haW50Cis4NjAwMiA5ZjEwOTY4ZjUxMWQ3M2YxYmFjM2Y5Mzc0NzM2NDk4YTZmZDVjYzkxIHJlbGVhc2UyNy1tYWludAorODYwMDMgNzM2ZjNhMTBkMTczMzEwMzI3NWVhOTAwNWE1ZjAxZGQxNDI0MzdkMiBweTNrCis4NjAwNCAwNmUyMTUwMDExOWEyOWNlZjA3MWZlNjdiODhjMmYyYTkxZDE4ZmQzIHJlbGVhc2UzMS1tYWludAorODYwMDUgNzMyZmZhODZjNzk4YTlhZTZiYzI5ZTdiODMzYWNlMmMyNGE3OGE2NSByZWxlYXNlMjctbWFpbnQKKzg2MDA2IDIxMTg1ODcyM2I4Y2E5NGI1N2ViZDYzNjY4MTg4ZTAwZDBiOWI5ZDEgcHkzaworODYwMDcgMmUxYWQ3MTIxZTI5N2YxNzZhYWRhMmQ2MWY0NGFhMGEwODUzNjMxYSByZWxlYXNlMjctbWFpbnQKKzg2MDA4IDQ1OWU5NWI2OTMxYmU0M2EzMjAzZGUxNTRhZjQ2OTk1OGI0ODlmYzkgcHkzaworODYwMDkgODc3MDljNmU1NjkwNTczN2IxMDk5ZTE2YmM4Y2Y2ZmI2MTk0NmViMCBweTNrCis4NjAxMCA5MGJjMGM1ZDcyMmY3NzRjNTQ4OGFkZDZmNWM3NTJjODk1NmQ4OGVkIHJlbGVhc2UzMS1tYWludAorODYwMTEgMzA1ZTkzZmQ1YjZkNGFlZGI2ZjM1ZDdjZTFmMzZmNjI5ODI1NzhlYyByZWxlYXNlMjctbWFpbnQKKzg2MDEyIDNhNzU1OWJhOGViNTkyMDM2YTJhY2UwZDE4MzZkYmQwMTJjNWRlNzkgcHkzaworODYwMTMgNDlhMzFhZTAzNDhhNThjMTRhM2RlMjExZTFlZWM4ODE1N2UyMmFjNyBweTNrCis4NjAxNCA2MTJhYmIxZTc2NzYyMWM3YjZiMjdmZGM3MTA0MTA5NDFmNjZjNWI4IHB5M2sKKzg2MDE1IDhiZTA4NzYxZGRjMGJlNTdmNDU0ZGZkYjMzMDYwMTc3OTBlOTlkNjggcHkzaworODYwMTYgOTdmMzJiYTVmZjg1NGE2YWJkMmVmOTM3Y2M3OTlkNTI5NjVkNDc3NyBweTNrCis4NjAxNyAwZWU4NmZkOTAyZjFlZjM1YmRlYTY0YTM5YzM1YjlhNjlmZWFmNjRkIHB5M2sKKzg2MDE4IDBlYzMxNzBmYWE5NWU1ODJlNWYwYTk2NTE3MGE5MzQxYzI3NzUwNWQgcHkzaworODYwMTkgYWY5ZjllZmNiYjlkYjY0ZDY1YTNmNDNkM2E1MDVmZjI3MjM2N2Q0ZSBweTNrCis4NjAyMCAwODVkZTk2MDNiNjI5ZmYyMTQ1MGUwYTYwMmZiOWU4ZGQxNjkwYTRmIHJlbGVhc2UzMS1tYWludAorODYwMjEgNzYwOGRjYWY3ODZkZGRkYmZiMGRmMDdkMzc2N2JmZjQyMDlhMDUxZCByZWxlYXNlMjctbWFpbnQKKzg2MDIyIDk0YzVhZDk4MWMxYjdmNjFhMzUwYzE0YWY2NDA4NzYwZjAxZTAxZDAgcHkzaworODYwMjMgYjQ4MTk4MzhlYjViNzNmMjE0MTRkYTk0YzE3Zjk0YjEwZjkzOTVmMSBweTNrCis4NjAyNCAyMTg3MmMyNGEyNWI5MDljYjQ0ODIyMmE0ODJkNDUyZmQ1ZWMyODcxIHJlbGVhc2UzMS1tYWludAorODYwMjUgOWUyOTFiZTQ4OWNmNTUxNGZiNDI3MWI0YjIxZmY2MmQ5MzMxMzlmMSByZWxlYXNlMjctbWFpbnQKKzg2MDI2IGZjODY1ODYxOWJkZjQ5ZGVhM2NhNDE5ZmFhN2UzZTBiNTcxODlhZDIgcmVsZWFzZTMxLW1haW50Cis4NjAyNyBkOGQzMzY0OGQxYjJjN2U4YmEyOTQ3ZjY2N2VjNThlN2RhZTkxMmJhIHJlbGVhc2UyNy1tYWludAorODYwMjggYzk4MjA3MzE4ODNkOWJkNGZmNGIwYTBiOTFhYTMzNTkxNGZkNjM0NSByZWxlYXNlMzEtbWFpbnQKKzg2MDI5IGYzYWZhMTBjZTc3NzE5ZTNiYmRjMDJhODE3Y2RlMzY2MTMwZmJkODMgcmVsZWFzZTI3LW1haW50Cis4NjAzMCAxMzFlN2NjOWU0MTZjZDYxODgxZjkwM2IzY2JjMWNhNmMyOGE2ZGY5IHJlbGVhc2UyNy1tYWludAorODYwMzEgMzJjMTkxYTVjMWNmOTQ5NWJkYTBmYzQ2ODgxY2I0MjJmNTc3OGY3MyByZWxlYXNlMjctbWFpbnQKKzg2MDMyIGI4OWIwYzdmMzcwOTRhMGI3MzNhMDk2YWQ0YTQ4NTk2NDgzZjM5ZTkgcmVsZWFzZTMxLW1haW50Cis4NjAzMyBhZTA2YzA0OGRlMjQ3MjgwNDMxOGU4ZWI1MDYwZDEzNGJiZjBmOWZhIHJlbGVhc2UyNy1tYWludAorODYwMzQgMzIxN2IxMGY4NDEzYThhZDc5OGNhNzA5NjkzNjAzZTM0Y2NhOWUxMCBweTNrCis4NjAzNSA5YjgxNDI5NjIwZjRiNzc0NWVlYjNkYzJkYjZmYmQyNjlkZDg0YWQ2IHB5M2sKKzg2MDM2IDQxMjdhYjFmNjMzOGMyYzgwZTQzNTY3NDI2ODhjNTdiN2Y1ZjVjMzIgcHkzaworODYwMzcgOTdkZjVkZGU5ZjgxYmE2ZDRlMjdiYTRlMTY4MmVkYWZmZmYyMTgzMyBweTNrCis4NjAzOCBhNjgzMGNjODIyYWFiZTMzM2Q5NTI4NjdmZjk2NzY5ZmYwNDQ5NzlhIHJlbGVhc2UzMS1tYWludAorODYwMzkgMTQwZDQ3MWIwNjFhNTNkMTcyZjllNDJhNjIwMzYxYjcxMTRmMzczMyByZWxlYXNlMjctbWFpbnQKKzg2MDQwIDc1YWMxM2ZlN2RhMDNiYmNhNGMzM2U5MTBiOWViMmIwZDJjYjM3MzAgcHkzaworODYwNDEgNmZhNDhmYTJhODY1NjhjOTU4MzUyMzJmYjc5MGUzNjUwNDFjZTNjMCByZWxlYXNlMjctbWFpbnQKKzg2MDQyIDk0NDMyZTRjZGRjZjYyNDFjOTMwM2QwODc4NjhmZDY0MzQ0ZGEyMjIgcHkzaworODYwNDMgNWM1YjdhOWJhYzA1YzY0NTljZThkOTI0OGE2MTQ3ZjE2YWRmNDEyYiByZWxlYXNlMjctbWFpbnQKKzg2MDQ0IDQ5Nzk2NGNmOWU1OGU2MGJhYjdmYjFkYTk4MTk5NDFjNTA1NWE3MDEgcmVsZWFzZTMxLW1haW50Cis4NjA0NSA1YmRjMGQ2YzY5MzkzM2JjODNkOTJmMGQyNjUxNGE5ODQzY2VmZDE5IHB5M2sKKzg2MDQ2IDU3NTc5NDI1OTNhMGViYjUwNzlmYTIxNmMxMzA2ZjdlNDI4MGJkNGMgcHkzaworODYwNDcgZGUxZTVlZWE3ZTc1ZDEwNWJlMDhhYzRiYmYyYzIwMDkwZTFmMzNmNyBweTNrCis4NjA0OCA3MTllYmNiOTM0ZjNkYzQ0MDE1NTY2NjhjMWFlNWMwNzYwNmY5MmE2IHB5M2sKKzg2MDQ5IGJjNmNjZTRhYjNjNjM2NzcwMGY5ZDZhZDJhNDhhZDllMjlkOWIwNmUgcHkzaworODYwNTAgMDAwNWExODFkMTBiYmI5NGZhMGUxMjJkZmI5Mzk2MzllNDE2NzM5OCBweTNrCis4NjA1MSBlYTJjMmZjMDE5ZDY1YzQxM2JlMWI2MmZmZWQzYzE0MzVhZGQ4MTc4IHB5M2sKKzg2MDUyIDQxZDVkM2Q3ZGEyMThmOWEyNGU3MDM5ZWJjNmY0ZTJhZjI2ZDM1ZTggcmVsZWFzZTMxLW1haW50Cis4NjA1MyAwYTk0OTIzNzgzYTQ3ZDQwMTk4ZTQyNTE3MzZlNmY4NGI2OTU0ODgxIHJlbGVhc2UyNy1tYWludAorODYwNTQgNDNhY2M5NTQzNDE2YjQ1YjA1MGJmYTg3ZWEzYzc3OTk3MzhkMDkyNSBweTNrCis4NjA1NSA5MTAzYWE5YjI3MDRjOWI1OWNjMzBlYjhjNTZmMjdjZjg3ODdhMjkyIHB5M2sKKzg2MDU2IDA1OTlkMjE4ODgzN2VjNDIxZjA5NTZkZjk3ZmNmZmJlYmM5MmFmOGMgcGVwLTAzODQKKzg2MDU3IGZlZGRiOWE4M2FlZjFjNmFjNjgxNTNjNDgxNDY3ZTFiNWQxNzkyMjYgcGVwLTAzODQKKzg2MDU4IDA4OTJiMmMzNjM2ZDllMGMyOGMzMGViNzZmMzFmN2YwODQ5M2FiMjEgcGVwLTAzODQKKzg2MDU5IDk3YjlkNDA4ODkxNGUzODRiMWIyM2EzMWViMWVjZmJmMDQzOGRlNDIgcGVwLTAzODQKKzg2MDYwIDEyNDMzZTk4OWQ5YzkwMTllNzNkM2FhZjEzY2QwY2RjMzYyNjMyYzcgcGVwLTAzODQKKzg2MDYxIDM5MzNhYjZmNmY3YWM5M2Q5ZTc4ODlmNWY3YWIyNDllYTBhNjI1YWQgcHkzaworODYwNjIgNTNiNTFmNWU5NWM0Y2NiYTM1NWM1NTIxN2FkMTJkOTU5YTcwYzA1NyBweTNrCis4NjA2MyBkMGYxY2ExYTgxMzkxY2QzMzI0ZGFiOThhMmU4MGU0ZmRjMzgzOTdhIHB5M2sKKzg2MDY0IGI2NDI0NDFkYTFlYTU5MGZiMjcwY2M0MjM5YWYzMWIzNWMwNTU0ZDUgcHkzaworODYwNjUgZWFhNTA3MjUxMjJiNjZjNTkyZTMzZjM0ODFjMzlkNGI5MmQyZTNiOSBweTNrCis4NjA2NiBhMmNlODIxOGUwMjkyZGNkYmM5MzE3M2FmZDdlN2EzYjRmY2ViOTYzIHB5M2sKKzg2MDY3IDY0NzA1NjYxOTZiM2QzNWQ1Mzg3ZjYwMTk2Yzk4ODc1ZjdhZjhiYWQgcHkzaworODYwNjggMGEzYWU0YTI1NWRlM2FiNzU1MDVlMWZjODRkMDAyOWUxM2MxNTY4NCByZWxlYXNlMzEtbWFpbnQKKzg2MDY5IGZiMTJlZWIxZTdhOWJhMjE4ZWE5ZWU1ZmNlNWZhOWYwOTc5OTVkYWEgcmVsZWFzZTI3LW1haW50Cis4NjA3MCBkMGIyMGE2NTIxZDIxNDZlZDU4N2JiNDlkMjEyY2I1ZjBjMzEwNWFhIHJlbGVhc2UyNy1tYWludAorODYwNzEgYjVlMWU2ZjMxNDM3ZjJjNzU2YzY1NWQ4N2FiN2EyNDU5ODQ0YjIwOCBweTNrCis4NjA3MiBjODI0ODc1MTNlNzY5MDZhYjQwNzAyMWM5ZWI4MTA4NmI3OTgyMTk0IHJlbGVhc2UzMS1tYWludAorODYwNzMgZmYyYzVjOWMwNzliYTA2YzNlOWE3NzM0Mzc2NWM4MTFmZTczOGY2MiBweTNrCis4NjA3NCA3ZGMxMzZhMDEwMTM3MDY2YjJhOGY5MTVlMTVlOTMzMjdlNjlhNmE5IHJlbGVhc2UzMS1tYWludAorODYwNzUgNDUxYzliYjc1MTU5ZTQyYWZkOTIxZjg1NTk2Zjg3Yzg5NzUwMTg0NiBweTNrCis4NjA3NiA3MjBkNDVhNmUzMTY5ZDZiNTVjNjJmZDk1MGZlZDZiNzQ1ZTY4YjRmIHJlbGVhc2UyNy1tYWludAorODYwNzcgZmUyZDE5YjJhNWM2ZDJkZjhmOGIwYTUyYWQ4ZjU2OWFmOTQ2ZGFlMyBweTNrCis4NjA3OCBiYTJhZTA5N2Y1Njc1MzEyYjA5ZTFkYWEzYmM2ZGZhMDU2ZGNlNjhlIHJlbGVhc2UzMS1tYWludAorODYwNzkgMjA2ZGVkOTQzNTM0ZDM2YjY1ZjQxMGIzZGM5MDhjYWExOTliODU2ZiByZWxlYXNlMjctbWFpbnQKKzg2MDgwIDhlNjU4NDlmNzFmNTA5MzhlNmRmZmM2M2U2MjNjMjI5Yjc3Y2VmMWQgcHkzaworODYwODEgYmVlZGM3ODU2ZjViMTM5Mjk5Yzc2MGJmNGE5MDk4MDk2ZTBkMGQ3MSBweTNrCis4NjA4MiA5ZDExMzNjMTg2M2U0YzA2NmMxNDgxYjRkNTlkNzdjZmQ4YjI2NjQxIHJlbGVhc2UzMS1tYWludAorODYwODMgOWRiODU3OTYwNDAyNzIzNWZkNjdhMzU5OGM2NDY2MjEyYjZhNDA0OCByZWxlYXNlMjctbWFpbnQKKzg2MDg0IGYwMzAwNTg0YzgyNDQ0YzhiYmZhOTNmZWE3YTYxODMwMTcwZDk5ZTAgcmVsZWFzZTI3LW1haW50Cis4NjA4NSBlNWRiMzJmNGY0Y2Q2ODJhMjdmODM3YjU3Y2YzNWE2ZmE4NGQwZTkwIHJlbGVhc2UzMS1tYWludAorODYwODYgZTcxYzJlMWRhZjU3MGJmYmRjNGNhOTdiZWIwYmYzZTVhODhlNTQ3YSBweTNrCis4NjA4NyA0OTNhMmQ0MDdjOTQ0NjgwNjFmZmRiNzIyMjZkNWU0MDM5ZDU0MDEwIHJlbGVhc2UyNy1tYWludAorODYwODggNDNkMmQ1YWZiZjczOGI1OTE0MzNmMDg4NTVlZTQzMGE0Yzg4NWIwZiByZWxlYXNlMzEtbWFpbnQKKzg2MDg5IDdjNThmYWYyMmU5ZjJlYzU3Nzk4ODRjZmI4YTA4YjRjMWQ5ZGY3ZTIgcHkzaworODYwOTAgY2I5ZTEwMDM0ZTRhNjVlYzI3MWRlZTBjMDMzMzQyY2FiN2M0NTUxMyBweTNrCis4NjA5MSA4NDg5MTI3ODliNzk0YWI0MDVlYTkyNmJlMjRlMjY4ODJiNjA2ODI1IHJlbGVhc2UyNy1tYWludAorODYwOTIgZDhhYjM1ZWM0ODZlOTA4NjYzYmY4OGVlMDU0ZDAwNWExMjM5YWVlNCBweTNrCis4NjA5MyA1OTUyYjkzN2FiOWEyOGIyMjI1ZDNjOThjNmJlZmEzZWQwZjhkYWQ1IHJlbGVhc2UyNy1tYWludAorODYwOTQgYjNjMDk4YzNhODI2NjlmMjE5NGUzYjM5YmYxMzBjNjI3MjBmNWM5YyBweTNrCis4NjA5NSA2MjFmM2U5YWNlZGRjNWU3OGQ2OGY4ODkyNWFlNjNiOWUyNTkwYTk5IHB5M2sKKzg2MDk2IDM1MjBmZWE1ZTkyMmViN2EzMTA3YmI1NWZiMTdmM2ZjYWY4NjcxMjEgcHkzaworODYwOTcgNTIwODRlYTYzYzQyMTIxYTk3YTQ1ODliMTJmYjA4YWQ1NzI3MTVjMiBweTNrCis4NjA5OCBjNzkxZDAyNjEwMDYyNGI0MzExNjMzMTFjNDA4NmMyOGQ1ZWIwOGEyIHB5M2sKKzg2MDk5IDUzOGY0NGIzMmIwYThkYjk5MDY3YTI0NmMxMDY3OWU0ZjM0NzM5MTcgcHkzaworODYxMDAgZmY4MTY4ODlhYTYxZmM2MjI3YWU4NWRhODlmMDQzZDk4ZDRkNzAzNiBweTNrCis4NjEwMSA5YzdhZDBlZDY2Y2JlY2FkYjU2YWJkNWZkNmZlZjUyZTZhOTc2YTUzIHB5M2sKKzg2MTAyIGJlMWQ3ZjYxOWZjMGYwMDYxZjg2ZjE1ZWU3NGYyODI5YWYwNDY3MmIgcHkzaworODYxMDMgOGUxOWZmOTY0Y2M4ZGExNjIwYjU4N2U3ODIzYjczNzMwYjg2MGRmYSBweTNrCis4NjEwNCA0ZWE5NGM1ZjZkMTAyNTI1NGQ5NzkzZWU1YmVlYjA1NzQ5ZDk5ZTNjIHJlbGVhc2UyNy1tYWludAorODYxMDUgODg5ZmQ4ZWNiZmY0MjQ0OWRhNTNmYWQ2NGJlYjEzN2UwM2U3MjQxNiBweTNrCis4NjEwNiBhMzdkNmQ4MWY0YjFlOWQ1YjhhMDRkN2E5MDY2NDk0MzYyNDdhN2IxIHJlbGVhc2UyNy1tYWludAorODYxMDcgYTYzOTU5ZWVjOGZmNGFkZGJiODk0OTY0ZDMwMGJmOThlNzJjNTBjMyBweTNrCis4NjEwOCBiMzQ2YzhkMzNlNTYwMWVjN2EwOWI5NWI4YjlmNjQxYTM2NjI4YzhlIHJlbGVhc2UzMS1tYWludAorODYxMDkgZGViMjNjYmFiNWFiNjIzNTM5NTZlNjA4MzkyYjBjZTZhM2MxNzAyYyByZWxlYXNlMjctbWFpbnQKKzg2MTExIGZmNmYzOWIzYzM4ZTQ2YmQ1YTUyNGI0NjQ2Nzg2Y2NkZTFlMGFlOTkgcHkzaworODYxMTIgNTczZGIyYWYyZGRhNzRmMjMzN2RjYWU0N2RkMWNiOTlhZmYxZTViNiByZWxlYXNlMjctbWFpbnQKKzg2MTEzIGYzYjcxODgxNzFjMDJjYjVjZDdhN2Y3OTYyNzQ5OTRlZWRjMTNmM2IgcHkzaworODYxMTQgMzY4NzJhMGVkOTQzMzVkODA4MDAxYTIwMzUxZjEyNTNmY2RmMDNjMCBweTNrCis4NjExNSBkN2VkZDE1YmEwZjJhYzEwNGYzNmM3M2U2N2E2NjQ4ZGRlM2NkMGY5IHJlbGVhc2UyNy1tYWludAorODYxMTYgMTU3Njc5MDJiNTQ1ZmM3YmM0MmJiM2ExYThiNTk2YjgxOGNkYjRlYSBweTNrCis4NjExNyA0OWYxOGE5NTMzY2RlMjYyMDhlMDdlNWJlZTE3OTZiZjAxZTE5MjBhIHB5M2sKKzg2MTE4IGVkZjQwNmVhYjFkYjdmYTJlMDM5YTRhNTZmNmEzMTU5MjI0N2I3ZTcgcHkzaworODYxMTkgNmVlZDBmYzE4ODE4YzEwYTY1MzZmOTI2ZjViN2RhMmZjODMzYWMyMiByZWxlYXNlMzEtbWFpbnQKKzg2MTIwIDRjY2QwNjhjYmEwYzliMDIyNmIxMWU3MjJhZDM2ZGI0ZTljNmZlYTAgcmVsZWFzZTMxLW1haW50Cis4NjEyMiBmNGY3OTU1NmE1MjJlMDRmMDYzOGZhOTM4YmM2MWUxZTYxMzg5MzUzIHJlbGVhc2UzMS1tYWludAorODYxMjMgMDA0ZDVmMTY1NzM4ZGVjYzBjZjJjY2MzODFmNjMzYzQwZmNjMDQ1ZSByZWxlYXNlMjctbWFpbnQKKzg2MTI0IGEyODU4NDNlOTU4YTRjM2E3N2MzMzUxYzIwYWJhZDM0NDNlYmRiOTEgcmVsZWFzZTI3LW1haW50Cis4NjEyNSA0NTc3OTJhZmRlY2Q2MTBiZmJiZTJmZGMwOTk3OTRlNTNkM2QwM2Y0IHB5M2sKKzg2MTI2IDIzYjQ5Njc4NDAxZjE4MTcwYWQxZDQzZjQwZWM4OTIwMzUzY2MxZmEgcmVsZWFzZTI3LW1haW50Cis4NjEyNyA1M2ZiOTkxNjMyN2UwZmViZDU0ODA4N2U3MGQ1NDQyNjJhNjE2MmM2IHB5M2sKKzg2MTI4IDEwOTUzODcxNmM1OTFkMTYzMGU4OWY3ZGZlOTVjZTk0ZGIyYzJjMTIgcHkzaworODYxMjkgMGNlMGY4ZWJkZDI5ODUyMjM4MjMyMzdkNTE5ODdkNDYxYTc3ZmQ5ZCBweTNrCis4NjEzMCAxOTEwNjdmNDlmY2EwNTUyZjI2NmU2YmM5NjcxNjhlZDdjNTM0NTY4IHB5M2sKKzg2MTMxIGY5ODBmOTQ0YmUxOTM1NDI2ZDRmNGRmMTRjNTY2OTVlNmZkYTA0NDQgcmVsZWFzZTI3LW1haW50Cis4NjEzMiA2ODM0MWY5YzU5MzczZmJlODZiZWIyZWM1ZjZkZDk3ODJiZmUwZGNmIHJlbGVhc2UzMS1tYWludAorODYxMzMgMjY5NzMyNmQ0YTc3ZDNlYzg3YTkzNTk5MDI1MjI0NDgwNWExY2Q1OCBweTNrCis4NjEzNCBhOWRiYzg3YTNmZjRhY2E3NDc2MjY0MjY2NWExNDJlZTdhZWFjYWIxIHB5M2sKKzg2MTM1IDZkMjBkZGU5NjA5YzkxZTdlZjZiMzAyMDFhMzA3OTJlMzc1MmQyZWMgcHkzaworODYxMzYgYjk2ZWRiMDJlZjYzMGY3MTlmZTlkNjYzYTRiMmRmMDU2OWFlMjUxOCByZWxlYXNlMjctbWFpbnQKKzg2MTM3IDJkNDIyZjEwMDIyZmYwNzE0NzdiNGFmNTFiMTg2ZmJkYzY3YjI4NDggcHkzaworODYxMzkgNThlNTRmNTYzZGU3Y2YzZDQyYTYwYWNmMjBkYjQ2MGE1NDk5YzI3MyBweTNrCis4NjE0MCA4YTRlMjYzNzk2YTNlNWZmNTk1MjI2ZThjYTE2NTgzZTgxNTMxY2UyIHB5M2sKKzg2MTQxIGI4YzIwNmU1ZWQ0NGFjZmQzYzcyZWUyN2VmM2JiOTM1MzgyNWM0MWYgcHkzaworODYxNDIgOGVmMzI5NTVhMzQ5NGU5YzZjNGY5Y2FiZTgxMjBlMmY0ZjljOWRkMyBweTNrCis4NjE0MyA1YjA2NWNmNjBkZGUxMmEwNjlmOGZmYWRlM2UwYjQ2ZDc1NDE1NmNlIHB5M2sKKzg2MTQ0IGYyNTUwMTJiMzQ2YmM5NGExNjA1OTVkODAwYWI3YjFhM2M0NzMxZWQgcHkzaworODYxNDUgNjcwODVmMjAyMTQyOTEyMmZhMTJlZGFiN2YyMjhhMWQ5MzcyZDBlZCByZWxlYXNlMzEtbWFpbnQKKzg2MTQ2IDE0MmQ1MzkwYWM1YzZhMDJhYWIyZjljNDIzNjhlM2VjOWEzNTk3MTQgcHkzaworODYxNDcgNGQxYWIyZDI1YmFmNmQ4ZWM0YmI5NWJmYTg0MWE4MGE0MWVmOThkYyBweTNrCis4NjE0OCBkYzMwMzgyYmE4OWExMzA3Yzg0MGM1ZDljYmE5YTMwM2U5YmRiOTMwIHB5M2sKKzg2MTQ5IGYyOWY2MmMzNTdlMTRjOTVmZDI0NmE4M2M4NjA2NzAzNWQ3ODc4MjkgcHkzaworODYxNTAgODFiMGU4OWUzZGYzY2Q5NDNhZmY0MWVjNWQ3Yjc4MTQ5YzJkNGUzMSBweTNrCis4NjE1MSA4YTVmMDg3M2Q3MzgwMjE5ODViYTZlODI0NDk1NTU5ZTIxNGJkYjIxIHB5M2sKKzg2MTUyIDhkNjU5YTU0NzljYTg0ODkzYTM5ZmZhODQwMTk4ZDU2MzVkNWNiMDYgcmVsZWFzZTMxLW1haW50Cis4NjE1MyA0NjI0MWEzNWI1ZmM1MDdjM2RmMjY2ODZlOTE4NDc5YzcyNGYyOGQ1IHB5M2sKKzg2MTU0IDI5OTczNWU1ZmQ3ZjkxMTRjMzNhYmUyZTUyNzU4NGE3MWE0NDBhYjYgcmVsZWFzZTI3LW1haW50Cis4NjE1NSBjOTY3MzE0ZWY2MWU3M2YyZTc2YzRlZGZiNDEwZmNhYjdkNmVhMjQzIHJlbGVhc2UzMS1tYWludAorODYxNTggNzFhYzUyM2E2YjEyMzg0MjIzZTg3YjQ2ODQxM2E5NDc1YjMwZjJkNSByZWxlYXNlMjctbWFpbnQKKzg2MTU5IGUxYjYxYjA1MmM2NmJkM2Y0YTA5ODEzMmI0MTAyNjA2NjIxNTY0YjAgcHkzaworODYxNjAgMWU0ZDQ2YTYxZmJlZWVlYjNlYjQ1MDkwZjk4ZWE2YjdlYzg2YTMxMyByZWxlYXNlMzEtbWFpbnQKKzg2MTYxIDg0NGVjZTM3Mzc2NDE0Y2QzZjU4NmEyZmQxOTA1Njk3YTg5Mjc1MWYgcHkzay10dGstZGVidWctb24teHA1Cis4NjE2MyA3YzVkMWRjZTM5ZmFhYTZjMGMzNzAwYTBkOTM2NTI4NDdiZWVkMjc4IHB5M2sKKzg2MTY0IDUyMzFhNWEzN2E3YWNmZTg2NzNiMTI0MThhNjU0ZjkzM2ZjNWJmZDYgcmVsZWFzZTMxLW1haW50Cis4NjE2NSBiZWJhMmRlMjAwZGQxNjVlMmEzM2M0ZTUxOWZmOTg3ZjQxNzQ3YjQyIHB5M2sKKzg2MTY2IDZlMDdjN2U0YzdjY2E5NDg1NjVhZjA5ODY3ZGJkMGZlYzExNDI0NTQgcmVsZWFzZTI3LW1haW50Cis4NjE2NyBjYzdhODhlMDg4OTkzOWFhNjIwZTI0NzA3MWRiNmQ1M2QyYWYwMjQ3IHB5M2sKKzg2MTY4IGZmNjU4NWEyYTI0MzJjMWFhMWNmNDhlMTUxNGFkNTdlN2ZjZjYzM2QgcHkzaworODYxNjkgNjYzMWU1ZjZkMmNlZTQyMmUzMmNhMGM3ZGJjNzdmZjZkNjAyYzY2MCBweTNrCis4NjE3MCAwNWVlZDlmMGNlMDE1NTI2MDhlYWIwZDY5YzAyZjNjNmU1N2YyZjJlIHB5M2sKKzg2MTcxIDQyOTRlMmMwMDI0NTQwMDFkNDc0Zjk5NjRkOTFlNDY4NzhjMmJhYWUgcmVsZWFzZTMxLW1haW50Cis4NjE3MiAxZjQ1YmZiOTg0NzM3MDE3YzJmODc0YzY0YjIwMmRiYzBhMmYwOTg4IHJlbGVhc2UyNy1tYWludAorODYxNzMgZGRmMDAwYWVmNWIwN2E0NGVjNGRmYjk4YzM5OWNjOTUxNzY4MGRiZiBweTNrCis4NjE3NCAzMjkyY2MyMjJkNWNkODYxMzNkZGVkYTU0NWU4OWUzMzI0MGFkNWNmIHB5M2sKKzg2MTc1IDI3MGI1MDI5NmVhOWZiMGVkMDc1Yjg3MzFmZDQyZDYzMWM5NTExOTEgcHkzaworODYxNzYgZWE1YWVmMzJhMTdmMTczNmM5NjRlNDVhZDYwNWE0OWNhMDFkZWQ4OSByZWxlYXNlMzEtbWFpbnQKKzg2MTc3IDRiYjljOTc0ZjUxOTg3NmM3MDA0OGE2MTM2YjE0YTliZTZkZWZiZWIgcHkzaworODYxNzggNGVlNjgyZmJlYzMwZGJiMTQ2NDJiZTJiYzA2NTA3ODU1ODRhZmQ0YyByZWxlYXNlMjctbWFpbnQKKzg2MTc5IDYyYjNhMGE5OWIxOWU0YTZkNTY3ZWQzODk5Y2Q4YTg2ZDIwM2E1YTkgcHkzaworODYxODAgMmQ1ZGJkZTY0YTM1OGIyNjk5MzQ1NjQ5MTE4MmUyM2I4MWJmMTYwNCByZWxlYXNlMjctbWFpbnQKKzg2MTgxIDQ4ZTU1NDllMmMyNTg5ZjNkYmIxYzBlNTEyOGE2MmM1OWM5NDdmNzggcmVsZWFzZTI3LW1haW50Cis4NjE4MiA3YWI3MmJhMzhmZTAyZTEyYjE0ZDhiMTc4OTAwOWNkZTlhMGJiNDZmIHJlbGVhc2UzMS1tYWludAorODYxODMgYjgzNmYwNDc1OWNkMzYzM2ZhZjYyZmY1OGM5NGM1NmYyMDU1MzE5OSByZWxlYXNlMzEtbWFpbnQKKzg2MTg0IDk0N2I1YWNjNjRiZDkyN2U0ZDA2NzYyODBiMDhjYmE2YTkzNzQ3ZDYgcmVsZWFzZTI3LW1haW50Cis4NjE4NSA2ZTFhZTMyM2ZkZTYyNmI2MmZjYWIyZGFmMmQ2MWUxZTdhNWYxYzRkIHB5M2sKKzg2MTg2IDQzMGQ1MGUzYWM1MzFhNGYzOGIxMjBjYThhN2Y3M2E4N2E4NzhiZmYgcmVsZWFzZTI3LW1haW50Cis4NjE4NyA4Y2Y4YmI1ZGM1Zjg2ZWEyYzAxMWM5NDA5ZTY2ZTAwNGY1Njc0NWM3IHB5M2sKKzg2MTg4IGVjOWRkOTczNTMyZjNjMDQ4MjkwN2FkNGRhMjM1YzIzN2NjNzUyMjggcmVsZWFzZTMxLW1haW50Cis4NjE4OSBiYjY2YTRmNWViYzJhYmE4NTU5YjAxMzg1OGE5NjNhMjg5YzI5ZmJiIHJlbGVhc2UyNy1tYWludAorODYxOTAgMWNlNjllZTY5ZThlYzAxODU0MjQ4YzcxMGQyNWJmNDg1MjA4MTU3OCByZWxlYXNlMjctbWFpbnQKKzg2MTkxIDRjMWM0OGIzYWY2NjI2YjYwNjgwNWQxZGY2YWYzMjQyY2E2YmMwM2QgcHkzaworODYxOTIgNzliM2ZjNjgxY2IwOTQ4NmI0YTFiZjIxODIxNGE4M2IwYmI3YmZiYiBweTNrCis4NjE5MyAyZDA1ZTlmZGI1OTdmMDJkY2MxOTQ0ZmMyN2UwOWQ5OWZhZjQ1YmQ2IHJlbGVhc2UzMS1tYWludAorODYxOTQgN2QyODA4N2ZiYWYzYTlhNjk3ZjQ3Mjg3MDU3MjU4Yjc0MDAzMWEyNyByZWxlYXNlMjctbWFpbnQKKzg2MTk1IGIwMjQ5ZDA4MzllZGFiMTIzZTgzNDZjMTE2YmNiOTE1NWQ3ZjFmODAgcHkzaworODYxOTYgMTI0M2VjNjc5YzI5OGJhNjRlZjJmNTYxNGQyMWUwOGVhNmQ3MjJmYiByZWxlYXNlMzEtbWFpbnQKKzg2MTk3IDYyZmYxMTY0NDMzOTFkMGUzZDk5NWI0M2I3ZGM0NjYxZGIxNGRhMTYgcmVsZWFzZTI3LW1haW50Cis4NjE5OCAxODg5NmQ1ODAyOTBhY2EzMDZlOWM4ZWQyYWEyMjgzNDRlNjQwYmRmIHB5M2sKKzg2MTk5IGM1MDBiNDEzOGY3YjljMTE3OWE4MGQ5ZWJkOGUzMDE3N2Q0ODkyZTQgcmVsZWFzZTI3LW1haW50Cis4NjIwMCA2MjA4NTczM2Y3ZGZiOWVjMmFhMjJiY2Y0MjBkOTc2N2M0Zjg4M2M1IHJlbGVhc2UyNy1tYWludAorODYyMDEgYjI1NGM2NTA3YzM1ZDI3NDA4OTRlYjJjMzI1ZDFkNjI1NDBhNDAzNyBweTNrCis4NjIwMiAyNTlhOWJlYzIzMjZjNjkxYWZmY2U2MTdkZGQyNmVlOThlYTQwNzU2IHB5M2sKKzg2MjAzIGVkMzViMTFlYmVjNjhjZTdmNWQ2MDg5N2E4YTNhMzE0MTlmZDAyZTYgcmVsZWFzZTI3LW1haW50Cis4NjIwNCAyYTMzMmU3MTU3NjYzODZlZGM4ZmNjYWIxMjk3N2IwZDFhNzU0YzYzIHB5M2sKKzg2MjA1IGUyMTNlNDY1YTJkYzg1NTJjOThlNWM1NzdhMzk3YjI1ZjU4Mzc1MmUgcHkzaworODYyMDYgZWRmOGM0YjAwMDQxZTA5NThhMzgzYzkwNjg0Nzc3ZmQ5MjZhOTE4OCByZWxlYXNlMjctbWFpbnQKKzg2MjA3IGZlODk2MmZjMGUxMTk5M2RkYzQwNTE1OWEyNWVjMmNjN2I5ZjhkM2IgcHkzaworODYyMDggMjM5ZmZlZTVlZGFlNTI5NDQ2YWMzNGMzZmNhZjFlM2I5YzQ3ZTI5YyByZWxlYXNlMjctbWFpbnQKKzg2MjA5IDViMjExZGM5NjhkZmM3YmM5YTlmZjNlZTNkYWZkY2YyMWYyYmVlY2YgcHkzaworODYyMTAgZDMxZWFlYzg4M2ViM2ViYjcxMDhhY2FiYjZiZjVlNGQ1ODEwNDJlYyBweTNrCis4NjIxMSA0OWIwZDQyMzAyM2VkNzRmYTMwYzhiZDU5NzMzMTZiNmFlMzFlMWE0IHB5M2sKKzg2MjEyIGMzN2JlZjhkY2VhMmNiNTkwZDEwNWNiOTU2NGFhYjY2NDY5MGVlZTYgcmVsZWFzZTI3LW1haW50Cis4NjIxMyBlZGVmYzVkMmIzZDc0ZTlmYjU3MzRkNDQwZGIxYmY4MjA0ZTVkMzI5IHB5M2sKKzg2MjE0IGQzM2Q2MmFiOTFjY2FjZjZlMzc5M2E5MTU4ODJiMDcxYjkxMzM2ZjEgcHkzaworODYyMTUgNzNjYTZkZmIyMmFhMTUxMzgyMDM4OTEyZTA4MGU2NmM0YzE2YjE4NiByZWxlYXNlMzEtbWFpbnQKKzg2MjE2IDE4NWFiN2M0Yjk0NjkxYTg4ZWZmNzIzNTEyZGRjMTM0NjlkMjc1ZjUgcmVsZWFzZTI3LW1haW50Cis4NjIxNyAzODVkMjM5YmNiZmE3ODA2NjZiMTU0NzNiM2Q1OTVjNzdiZmU1MjY0IHB5M2sKKzg2MjE4IDgyMjIxNDEwNTYyYjNkYjA4Y2YxZDkzMGNmYWNkYjc0NWM3Mzg0MTEgcHkzaworODYyMTkgNDU4YjA1YWJmOTg3M2Q5YTc2ZTJiYzNlN2Q0OWQ0YjgyM2E4YzAyNiBweTNrCis4NjIyMCA1NzFkMzE3YjRjZDVmMmYzZTY1MzE5ODRiOWExNTI0ZmVlMWRhOGFjIHB5M2sKKzg2MjIxIDVkZWQyNWUwNmE5YWZiYWMyZmE5MGRkNWVkNDQwZmEzNzA5Y2UxZTcgcHkzaworODYyMjIgZjkwZWQzN2FlMTZmMGE0NDJmNDk5ZWEwNjFjOWM4NDcxM2MyMDM5NSBweTNrCis4NjIyMyAzYmY4Njc4NWNkOWM1ZTM3OTFiNTUyYmRkMTFjOTQ5NGVjMGY1NjFkIHB5M2sKKzg2MjI0IDEwZTA1ODA4OTVlZDQ1ODA0MjBhOGEzMWUzMjUyMmMyOGUxNzEzZGYgcHkzaworODYyMjUgZmRkMzY4MWIxNDM5OTY0MzI0OWViMzRlNzFlM2Y2NjExZDBjODE1MiByZWxlYXNlMjctbWFpbnQKKzg2MjI2IGUzZmQxMjA1YjEwNTVlNTg1NmU5MTU5OGQ2OTMzMDVhNjY3MjhmZDAgcHkzaworODYyMjcgMzIwN2Q5ZjRkMDBhZWQzMmU4MGQ1N2Y4MzIwNTViMDg5ZGVmN2NiMyByZWxlYXNlMjctbWFpbnQKKzg2MjI4IGEwOTBiZjcxNmE2ODczNTY3OWMxYTRmZDBhMzgzODQ2MTQ1MWM0ZmQgcHkzaworODYyMjkgOWQ3M2Y5ODI3YzlmNGE1ZjliM2NiNDNkYWY1YzNkODAxNzVmNTAzMSBweTNrCis4NjIzMCA1M2VjMzhkMzE5ODhhMWQyZDU5MTEyMGJkMTRhZWNlMmYwMzkzYjViIHJlbGVhc2UzMS1tYWludAorODYyMzEgODkxMWY0NzVhZDNkMmZmM2NkY2QxNjI1MDJiY2MxZmU4NTQxN2E3MyByZWxlYXNlMzEtbWFpbnQKKzg2MjMyIDk2ZGJiMGMxNjhiNjc5NTMxMzdlNTA4Y2NiOTFlZTc5ZTUyNDlmOTIgcmVsZWFzZTI3LW1haW50Cis4NjIzMyBhY2IwYTNjYzFlMThjNzA5ZDViNjMyYjIyMWMwNGI2ODM2ODRjMTI1IHJlbGVhc2UyNy1tYWludAorODYyMzQgOWY4NjIxMWYwYTQyNzNiYzkwMWI4NjU1ZWM1YTU2OTAwYTJmNzVjOCBweTNrCis4NjIzNSAyMjIzYWZlM2VhYmE5NDgwNDk3MTlmN2Y1NDYxMDliZTA0NjAxNjQwIHB5M2sKKzg2MjM2IDk2ZjMwZmQ1NGUwZmVhNmZiZGFlM2Y5N2M0MjI5MTUzNWE3YjVlODggcHkzaworODYyMzcgZjVkZDRhNTRkNzliNTE1ZjlmYTI5N2Q1OTkzYzg3NWQxZWI3NmU0MCByZWxlYXNlMzEtbWFpbnQKKzg2MjM4IGExN2IyMWMyN2EzMzg0NzQ5MjczZTc4NTViMzQ5NWY2YmVkZDg5ZGMgcmVsZWFzZTI3LW1haW50Cis4NjIzOSA1ZDg0ZjFiNzNkNTEwMjgyZDU1OTQzNmY0MzExM2YzZjcxNDk5NmVmIHB5M2sKKzg2MjQwIGZmMDcyYWE3MGMxZGE3NGE5MWMxNWVkMDgxZmM4MjYwYzEwYjhmMjIgcHkzaworODYyNDEgY2NkOTlkNTQ3OWRjZTc5MTdhOTU4NWQwYWY3MDQ0NzA0MmI5ZGQ5NCBweTNrCis4NjI0MiBkNDNiZjMwZmFmNmViODUwMDdlZWVmNzhiOWRmZDRjZjEwMzFmNGFhIHJlbGVhc2UzMS1tYWludAorODYyNDMgNjM2ZmVkOGU3OGQ2M2Y2MmFmMTgyMGI2MWViNmY4MzlkZmZlZjAwNyByZWxlYXNlMjctbWFpbnQKKzg2MjQ0IGI1NjQ4ZTEwYzIzYTdkYzFhODJkY2RjMjhiZTljNTdjMjI5ZmM1ZTYgcHkzaworODYyNDUgMmI3ZWIwZTg2ZDA3Y2RmYzVjYTUxZTM1ZWNmMDUyYTEwZWJkZWZmMCByZWxlYXNlMzEtbWFpbnQKKzg2MjQ2IGRmMzQ5OTFjN2QwZTk1YWI3Y2QwYTg0OTYzM2FiMTc0MDYyNzMyOWEgcmVsZWFzZTI3LW1haW50Cis4NjI0NyBmYzQ4Mzc1MDc5YTZhZTY5YTBlNzU3M2M0YzE2Yzc4MDA2YTcyY2JkIHB5M2sKKzg2MjQ4IDY4ZjhhOTViNTBjN2ZhZTI2YzNlYzIwODEwYTc5YTc0NDVmNjlkMTcgcHkzaworODYyNDkgNTExNWQ0YTJkODk4MjQ2MDNkMGUxODdhMzdhMGUxMzg0YjNkNzAxOCBweTNrCis4NjI1MCA3Y2I4MDQzNTgxYjU3ZmVmZjgzNzc0NGNhOTUzYzU2N2QwNThiMmZhIHJlbGVhc2UzMS1tYWludAorODYyNTEgMzA0NWFkYTM5MjY5MTU3NjI3YjEyZmYyMGZhNzRmMzA5NTBlZTg2YyByZWxlYXNlMjctbWFpbnQKKzg2MjUyIDZkZGM1NzYzNGRlNTZlZDMzMWE2YjU4YWMxYTJlZmI3ODA5NmM4MmMgcHkzaworODYyNTMgYmEwYWVjNjdiOTlhMGE4ZTNmYWU2Zjg2YzBmYzFhZWUxOTEwNDIzNyBweTNrCis4NjI1NCA4ODM4YzU2YjY5NTI1MWQyNjE2NjgyMmNmM2QxNTE5ZjE5YWY2ZTlhIHJlbGVhc2UyNy1tYWludAorODYyNTUgM2JmNDJkOTEwZGI4Yjg3ODc0YmE1MGUzYmQ0YjRiMTYwOGU2NTE3NCByZWxlYXNlMjctbWFpbnQKKzg2MjU2IGZmMTI1NzEyOGM3NTBlN2Q2OTRlMzFlNWM5ZjQ3NDZmNzI0ODY3YmYgcHkzaworODYyNjAgZjQ1N2M0NmY5MDk4MzZjOWMxZmUxOGIyOGExYTRiOGMzYTlkMTZjMiBweTNrCis4NjI2MiBlODUwMjU2N2VmYWY0OWUzZmFiZGFhOTcyZDMxZWRlMTJmNTYwYmJlIHB5M2sKKzg2MjYzIGJlNTQ2OTgwOGNlOWI4NzYzYTcyNjQyNmY5NmQ1ZmIzZTgwOGI2MzEgcHkzaworODYyNjQgMzgyNmFkY2E3YTNiZjRjYTQxODg3MDdmMzQxY2E1OWM4MDA3NzNjMSByZWxlYXNlMjctbWFpbnQKKzg2MjY1IDRmZWI1MWY2ZmQ3NmJkOWFhYzJkNDg5ZjE0NDg4M2FkYjAzZThkOGQgcmVsZWFzZTI3LW1haW50Cis4NjI2NyAwNzNiMDdiM2JkYWVjZDU5ZTEzNjQzZWMxM2I5MjRmYTA3M2JhNjhjIHJlbGVhc2UzMS1tYWludAorODYyNjggZGI2NTc0M2QwNjJmYzVhZjIxYzg2NDFmMDVlODNhZmRjMzQzN2RmZCBweTNrCis4NjI2OSA3NjJiOTQ0NTAzNjc1ZTQ3NTVhM2ZiNzIzOGRiOTZmNzMxMDdkNjdmIHJlbGVhc2UzMS1tYWludAorODYyNzAgZjBjN2UyYjExMjczOWYzZGQ4NWViNTJiODE4YzVkYWNjZDcwOGVlZiByZWxlYXNlMjctbWFpbnQKKzg2MjcxIDQzNDhjOWI2YTcyZDZkOTRiNTUxNzZkY2IwZWZkOTQ0YThiNTAwNjggcHkzaworODYyNzIgNzdiOGM5NWYwYzFiNTNjMDE5YTNiNDBkNjI0ZTQ4OTEyZTQ3OWQ2OCByZWxlYXNlMzEtbWFpbnQKKzg2MjczIDk3Yjk1YWUyMzQ4YjJhYTczMjBjZGMxNTg3ODA5MTAzMzQ3NjAwNjkgcmVsZWFzZTI3LW1haW50Cis4NjI3NCA3YTlkYmE4OWE3Y2U4NDZiNDliMzgyMGZlNDE4YjZjMjZiMmM0MjIwIHB5M2sKKzg2Mjc1IDEwYmRkYTI0MjY1NDU1MGY5YTNkODk2MzUzMDBmMjI2MTgzZGRkYmUgcHkzaworODYyNzYgYWYwNGFhZTE5M2ZmZjY1OWU2N2FiMzc2OTMyNTJiZDVkOGZkODA1MiBweTNrCis4NjI3NyA3MDQyNWZkNDc4NTY1MGJhZDRjN2Y3ZGQ1YTVmNWMxYzZmM2Q2OGQ3IHB5M2sKKzg2Mjc4IDJjYzNkNjJmMDY4MDg5OTNmNDU1YThhYzkyNzRiM2VjMGI4ZTMyNzYgcmVsZWFzZTMxLW1haW50Cis4NjI3OSAxNDk5ZGI5OWM0Y2RjZjJkZjMyMjY0Njc5YTA1M2IzMDM0M2E5YmViIHJlbGVhc2UyNy1tYWludAorODYyODAgMjg2NDI0ZTc1Y2Q5MjRlMWEyMTYyYjUwMmFkYTRmODE5YTE2M2FhMCByZWxlYXNlMjctbWFpbnQKKzg2MjgxIDM3ZjQzZGU2NWQxMGU5ZjgyZjc2MzE4OTA3YjA2ODJiZTc2ZTI3MjkgcHkzaworODYyODIgZDAzNjMyYzM2OGQzNzI4NWYxYzZiOWUwYTVmZTQyMTdjYWQ0YTAwOSBweTNrCis4NjI4MyA2MWJiZDRiNzU4NzRlMjA4NGMzNmU4MzRhYTAzNDZmOTNlN2MzNzVhIHB5M2sKKzg2Mjg0IGY2YjhmMzM2ZTAwYWEzNzY3ODkzZmFhZGZmNWQ4MjM2MGRjNTJkZjcgcHkzaworODYyODUgYjYwM2QyNDhkNGFkOTExMGQwZmRlYWZiNWYxODk3NDVhNTk2NWVkMSBweTNrCis4NjI4NiBiMWMwNmZhNDhjYzRiMDkzOTkxYWI0NWIxZjBmMDE0YjVmYWRlOWZiIHB5M2sKKzg2Mjg3IDMyODk5MmIwZWE3OWFmNGU4NzQ0ODE0YTYyMWMxZWRiMjIwNDEwYWIgcmVsZWFzZTMxLW1haW50Cis4NjI4OCBkY2YxN2ZhODQ4MjE3NmU3NmU1OTIxOTBhNzMwZTBiZDBmMTY5YmIyIHJlbGVhc2UyNy1tYWludAorODYyODkgMzk3OWUwY2MzM2MxMzMyMGRiMDQ4ZWMxYzA0ZDA5ZGYyYTgzODNiMiBweTNrCis4NjI5MCBhZDY0OTBhNTZkMTU4YjliNmZkMGVmMGNjNGY0Mzc3YmNmYWVlNWI0IHJlbGVhc2UzMS1tYWludAorODYyOTEgNzQ1ZDBmMTZkZjc2YThiMDEwYWI3MTY4ODVmNDBhZjczNDZkMjcwMiByZWxlYXNlMzEtbWFpbnQKKzg2MjkyIDZlODQzMjExNjY0ZDcyMTY5YTU3N2YzM2M4NmYzMmMwYzdmNWRjOWIgcmVsZWFzZTI3LW1haW50Cis4NjI5MyBlNDllYmJkMmM0OTYxZWQyYTdjZTc4YWMyNGE2MjI5Y2UxNDEzNWRmIHB5M2sKKzg2Mjk0IGMwOGY3ZDZhMDIzMTY5ZWI5MWI2OTE3NDg2NTMwYWMyMjI0YTZiMGIgcmVsZWFzZTMxLW1haW50Cis4NjI5NSA1Mzg0ZTRlNDYzNzRkYWQ1YmJjYTI2YzNhNDlkOWU3NDUyNjE4OTM3IHJlbGVhc2UyNy1tYWludAorODYyOTYgMDU0M2MwMmU5NDFjMTAyNGM2MzMzMGI0N2NkMmVhOTVmYTdmYjA0MCBweTNrCis4NjI5NyAyMjYyZjZjNDRlYmNhNjY5MzRhZjQ0MmJjMjhhNjU5MGY0NjljNDRmIHJlbGVhc2UzMS1tYWludAorODYyOTggOGYwOWVlZGNkNzBhMGE4OTNlODczZmY1NGVkODAxOGZiMTY3OTM4MyByZWxlYXNlMjctbWFpbnQKKzg2Mjk5IGZkY2FhYzBlMDEwYTAzNTk5MTc3MGRkOTcyOTQzODg4M2NmNzJmMzIgcHkzaworODYzMDAgMzM1NDIzZDczNmE3ZmY0M2IxZjdmYmUxMWQwZWI4NzAzNTkzZTJlMiBweTNrCis4NjMwMSBlOGYxZWY1ZmQ0MjM4Mzk2N2I1MzIzODRmZTIxZjZkMGI1MjQyZjYyIHB5M2sKKzg2MzAyIDQxOGRjYjFjNDVmN2ZiODAxZGY1OGQ2MDA1MzFkN2E5MWQ3Njg3ZWEgcHkzaworODYzMDMgODA0NzNhZDY5N2FjMzA2NzU5N2VjZjAwOGQzNGNmMjY2YTJkNzE0YSBweTNrCis4NjMwNCA4MTU0ZGI4YTE1OTMzZGI1ZDI2MDFlODZiNjJmZjM5ZDY3ZTZlOTE1IHB5M2sKKzg2MzA1IGY4MjA4YzMzOTc4ZjhmNGY3ZmQzNTdjNGEwZDVmODYwMmU1ZWZhMTAgcHkzaworODYzMDYgODhkMDRmMDE0M2M3Mjc2ZWZhYjdmMDhlOTYxYmRiMzk4NzljNWY4NyBweTNrLWNkZWNpbWFsCis4NjMwNyA4NTVhMTBlZmIxMGEyOWFmZTFkMjk0YmZjZjg5ZDE3NTgyZmViYTYyIHB5M2sKKzg2MzA4IDc2YmM3MThmZTdjOTJhOWU3MzFhM2I2ODY3OGU1MDdhNzk4NzAyMzcgcHkzaworODYzMDkgM2RiMTdhNDk0ZGM5NGQyNTU2ZTlmYjM0YmYxNDdiYjVmM2Y3NWEwYSBweTNrCis4NjMxMCAzYzFiZmU1NGNkMjA5NmExODZmZGE3NTRhYzhhOWFjODk3OWY4ZmE5IHB5M2sKKzg2MzExIDZkMTI5NGFkZmFmNDQwOWMwNzhmYTkzZjQ1MzZmZWRjM2JiMzBhYzcgcmVsZWFzZTMxLW1haW50Cis4NjMxMiA5NmM4MGY0MmJjZTZjYjk3YzEwYzQyYTBjMGMxODBkZWQ3YzczNGY1IHJlbGVhc2UzMS1tYWludAorODYzMTMgZDU1YjdkMGJjOTczN2ZjMDZmMTRkYzE3ZTYwNDE3ZGFkNTczNTlhMCBweTNrCis4NjMxNCAwNzQ1MzNhNzU5NjJlMGEyMGQwYzYxZDYwMWRiN2ZlOTRiNWUxY2VkIHJlbGVhc2UyNy1tYWludAorODYzMTUgMWZmYmQ2NzUzYTE1NDM3YWQ0MDVkZmNkY2Q0ZjBmODdkMmIxMWUxYyBweTNrCis4NjMxNiAyOTQ4ZDVmYjFlYmViNWY5OGExOTBjOTNiZjc3Mzg3ZTQ0MDBiNmVlIHB5M2sKKzg2MzE3IDJkNjgyNDg4NDQzNWI3YjczYjYyODZjYmZiNDA5NmUxYjExZGIxNDEgcmVsZWFzZTI3LW1haW50Cis4NjMxOCBhOGFhY2RiNDUyMGUxNmU4YzFmOWQ1YTIxYWRjZWJmMzU1ZGQ1YjBmIHB5M2stY2RlY2ltYWwKKzg2MzE5IGIwZGUwY2U4YTcyNjRiNDhkYjgzMGI5Y2RkNTZhMjZmMWRmMmU1MjcgcHkzay1jZGVjaW1hbAorODYzMjAgODM3OGViODA3NzQ2YmIxZTI3YzZjMzI5YmZiODM3ZTQwYjFiNDU2OSBweTNrLWNkZWNpbWFsCis4NjMyMSAxNjk4YjBmNjQwYjY0ZTVlMjQwMzBiMmQ2MWRkYWZjYTg2MzUzOGVjIHB5M2stY2RlY2ltYWwKKzg2MzIyIGNhMmI5MzdlMWE4ZDEyNjVlZjNjNjkxZjkxMTU5OWRkMGNlZGY3YTIgcHkzay1jZGVjaW1hbAorODYzMjMgMmIxZjg0YTRhZDMzYzE1ZjVkYTJmOGVkZjAzNDgyNGIyYjA3NTA0YSBweTNrLWNkZWNpbWFsCis4NjMyNCAwNzAzNjgxNzViMjQ5YzU3NGU1NTY5NTZmNGIxM2VhZDA3NTI3NTg3IHB5M2sKKzg2MzI1IDNiZDczMTEzZTgxMDdhZTVhMGU3MTBhNGMxZTE2NDg1YjcyYWE4ZjIgcHkzay1jZGVjaW1hbAorODYzMjYgNDI3MDgwZjJhYWI1ZWQzNWEzZjIzMTZmOTNiOTc5MmVjYTQ5ZWRjNiBweTNrCis4NjMyNyAzZjEwMzRiNDM0NzgzYzQwMjBjNzA1Y2VkYzc5MDMwMWYzNWIwMWVjIHB5M2sKKzg2MzI4IGYzYzUzMzg1N2ZhYmJiNzk2ZDMzYzdjMzg3MTY1NjI3YTcxYTdlMzMgcmVsZWFzZTMxLW1haW50Cis4NjMyOSAwYWQ2YTBkMDE0OWFhODJhMjUyMGQxNDMxMTgxMjNiMTM0NzcxMjQ3IHJlbGVhc2UyNy1tYWludAorODYzMzAgZDZkNzFkNGQ2YjY1MDZiNzU4MmM3NGM0ZTg4ZTMxMmUxYzg5MTczOCBweTNrLWNkZWNpbWFsCis4NjMzMSAxOGNiYWJhNjFmYTU2NDQzYjIwM2IxNzI0OGE4OGY0ZmQ0ZGEwZThkIHB5M2stY2RlY2ltYWwKKzg2MzMyIDAwYmMzYWY4OWI3Y2RhMTU2NGQzYTFlZDNmNmI1NzYxZWNkMmQwYjAgcHkzaworODYzMzMgOGFiMWRlMDgxM2IzYmY3NDYzNGY2OGZhNzk0ODBmN2UwMjgxZDA1MyBweTNrCis4NjMzNCA3ODgwM2NmMTRhOTRhZmIzYzg0ZDMyMjk2OTZiY2U0ZWZkMGFiMDY4IHB5M2stY2RlY2ltYWwKKzg2MzM1IGFkNjQ4ZjJiNWUwMDA1ZGYyYTYzNDJmMjczYzZlYzA0NjRmODJhYjcgcHkzay1jZGVjaW1hbAorODYzMzYgNDRjZDA0MGRkYTU2NjYyNWE5NTUxOGQzZjE5M2ZkMThjZjY0ZTdmYSBweTNrLWNkZWNpbWFsCis4NjMzNyA0MjhiNjEyY2IwNzZkODM4ODdkNTQzN2Q1NmUxZmM0OTk4MjU2NzA2IHB5M2stY2RlY2ltYWwKKzg2MzM4IGJhYjdlNzAzZTNlYTlkMTE0NzJiMzA0YzI0YTg1YmIwNzUyNjU2NGMgcHkzaworODYzMzkgNTZiNmNjY2ExZDRjYjVjN2U1NWE2NjQ3M2U2MmFiMDI4Mzg3YzcwZSBweTNrCis4NjM0MCA5MDA4MTFmNjcwNWQ3NWU0NDMyMDNlNmM1MTcwNTE0Yjk3YmRiMDcxIHB5M2sKKzg2MzQxIDFiNWY0N2UyZTBmMDMwZjE0YTgxNWY2OTcxZmI5ZDc4MzM2MjAzNmIgcHkzaworODYzNDIgNmEyYjkxMTdkNDc3Yjc2MGNhMmQwZmI0Y2QzYmJkOTBmMTQ5NGFhZSBweTNrCis4NjM0MyA3NmExYzVlODgzNTJmNzNkMmNhZjc0NmVlZTUwMTJlNWQ2Y2Y0ZmYzIHB5M2sKKzg2MzQ0IGZjM2IxMmViZmI5YTJiNDNjM2RiMWU1YWRhNDgxYTNhNmJkNDQwYzAgcHkzaworODYzNDUgNzVlMDJmZGJkMzNlNmNjYjIzOTNjZGZkYjlkNWFhNjBjMWM3YTZhZiBweTNrCis4NjM0NiAzMDYzMzljMzE3NTg2NTYxMDM4OTY2ZDk1YjRmZTQxNTMxMmM2NDY4IHB5M2sKKzg2MzQ3IDMyM2Q0M2U4OTUzYWY5MWM5NTRlOTZhYTc0OTgxZmI3ZGYyOWM4NTIgcHkzaworODYzNDggOWE2NmZlYjA3YTBhYzEyYWE2YWRjMGY4MDI4MjVkYzUxNWQ3M2M5OSBweTNrCis4NjM0OSBiMzQ3YjVjZDQxMTI2OTgzNjI0YjcxOTY3NjYxNzI0MWRmZGQ1NjVmIHJlbGVhc2UyNy1tYWludAorODYzNTAgNjQwYTA4ZWM4ZmEyOTRjNmRkYjE4NDgxNGJhYzg2NTEyYTA5YzhhNiBweTNrCis4NjM1MSBiNmRhOTc5MzBmNjMxZmFjYTk5NTJjMzRmNWEyNjEzNjJkNGVlMmRkIHB5M2sKKzg2MzUyIGI0OTM4YzM0YjgwMzYwY2M3YjE0NDI0ZTNiMjMxMjViMGE2ZjY5M2MgcmVsZWFzZTI3LW1haW50Cis4NjM1MyA0NDhhYjc1MTZjMGEwNmQ2YTg5MmIxYWM1Y2JhMTk1NjgwZWI2YmJjIHB5M2sKKzg2MzU0IDY0NmRmZGM0OGNhODZmMTI5MjEwNWFlZmRjY2RmNzM0NjZhZjMxNTQgcHkzaworODYzNTUgMTk0ZjMwZGM0NzAzNDU5NDE1ZDlmYzQ1ZDdkZTBkYTgxYTVjMTAzMyBweTNrCis4NjM1NiA5NGQwY2NiNjNiNDY0Y2NmZjYwMjRhNzQ3NThjYTM1MjcyYjcyZmZkIHB5M2sKKzg2MzU3IDc0ZmE2M2FhYjNmZDZjNzk3ZDBlZGIyNjI2NmVkMzU5OWE4ZjEzZTAgcHkzaworODYzNTggNmYyYTkyMWQ5NzIwMzE1ODk1N2Y0ZGUxNmVkOWNhYTkzZjE4MGExNyByZWxlYXNlMzEtbWFpbnQKKzg2MzU5IDQwZWIwYzlhM2Y5MjNmOTk0ZTgzYzhiNTRlNWJjMWQwM2JmZWIwZjYgcmVsZWFzZTI3LW1haW50Cis4NjM2MCA4NjE4ZGY2ZWNhZGQ5YjY2NjkwNzdjZjYwOWQzNmU3ZGZhMjBlYzBlIHB5M2stY2RlY2ltYWwKKzg2MzYxIGZlOWNmNTM1MTE5MDI3YjdmMWE3ZTFhNDViYjdlZGI4NzQwY2UyYTQgcHkzay1jZGVjaW1hbAorODYzNjIgNzM2NzJlNDQ1Y2M5MTMyM2ExNzA2MzczMDNiYzA5ZjFkYmVhY2I0NSBweTNrLWNkZWNpbWFsCis4NjM2MyA3YTg0MGI2ZDJmMjI0OTc1YzllNzc3ZjM3ZGIwOWRmY2M4MzFkM2E3IHB5M2stY2RlY2ltYWwKKzg2MzY0IDYwMDA1OTE0ZGZjNzYwYTgyMzA5M2Y2MDFjOTA0MDQ1MmY1N2Q4ZTAgcHkzaworODYzNjUgOWMwOTg1N2JkYTBiNDlkMDNmOGQwZDg3NTFiZmM5MWVhMWRhMDgzMCBweTNrCis4NjM2NiBhZjI2YmMwOTQ5NWUzY2UxNGJmNTI5YmQxNTZjNGE5YTBhOWIzNzQxIHB5M2sKKzg2MzY3IDMxMmFkOGY5OGZlMzcxN2U1YThhODdiZWFkYWQyNjA4ZGY4Y2U0YzggcHkzay1jZGVjaW1hbAorODYzNjggZTMzZjE2Y2E5ZWNmZGY2NjdmNGJmNWY0Zjg1ZjNmNTFhY2ZmMjFlYiBweTNrLWNkZWNpbWFsCis4NjM2OSBlZWViYjYyMmZkMDhmODUwMjI1MGYwMzEyZWY5NDA0ODEzOGM1ZTU0IHB5M2sKKzg2MzcwIDBhYThhZjc5MzU5ZDViNTBjNTk0MGNhMWQ4ZmUyNmZkMGE2ZDRhNWMgcHkzaworODYzNzEgOGY1ZDJiNTI3NjM0YThjMWYyZTMyMmNhNDZjMzAwMDQxMDg1OTVmNiBweTNrCis4NjM3MiBiYjllNDdjOTkxYjQxODJmY2IyYzAzOTEwZjU2NWMzMjM0YjZmYjE2IHB5M2sKKzg2MzczIDY1MzY0YzQ0ZTI5NThlOGVlYzdkODczYzhmYjBmMmNkY2NjNmYyZDIgcmVsZWFzZTMxLW1haW50Cis4NjM3NCBkMGZjMTA2NjE3ZTJhNzA1NzQ4MTg0OWI2NWIzNjE4MDkyYmUwYThiIHB5M2sKKzg2Mzc1IGM0ZGNiZTUxYzJlMzM4Y2U1YmI3ZTY5OGEwYjM0YzIxYjU1MjQ0ZDUgcHkzaworODYzNzYgOWZhNTI0NzhiMzJiOWZhN2Y5Y2FhMjE4Yjk0ODNiZTA0NDM5YTRlZiBweTNrCis4NjM3NyA1NTdiYmY2YjNkNzBhYzgyMTlmYTZjMDA1NjliZmQ2NjNjMzcyZTMxIHB5M2sKKzg2Mzc4IDJkZDUxOWU1OTljYzIzZDdmNWFiYzlhYjE5NWFkOGUyOTQxYmI4YWUgcHkzaworODYzNzkgNDkxOTY0MjZlZDJmMTQzMjI1ODU1MDkwZmI2YTBjZTZlNjk4ZjU0YiBweTNrLWNkZWNpbWFsCis4NjM4MCAxNmE0NmI2ZTcwNTQ0YTE0OTk2MzBkMWJkNjY0ZTFjOGYxMmNhYzdhIHB5M2sKKzg2MzgxIGYwMDUwMmY1N2IyOGFlODBkODRmMmU5Y2I2NGVhMzI0M2I3YTY4MTYgcmVsZWFzZTMxLW1haW50Cis4NjM4MiA2YTI4MWYwNDBiYjEzNGYyMmM1YTE4M2VkZjlmZWJjODIyMDdlYmMxIHJlbGVhc2UyNy1tYWludAorODYzODMgNTc0MjhlMzEyM2FjYzM0MWM2NjUzZmVlNzI3NzQxZTgyZWM2NjAyMCBweTNrCis4NjM4NCAxYjE2YmQyYmY2YzdkMGNhYmNjMzU4MWUzYzc0ODI4NzkwZGFhYjAwIHJlbGVhc2UzMS1tYWludAorODYzODUgYWU5MjZlY2NkZDBlZDBjYTkwMjQxZDliZjQxNTJjNmI3ZWMxNGMwNCByZWxlYXNlMjctbWFpbnQKKzg2Mzg2IDE4MTdhMTZkMWVhYjZhOTYwZGU3N2JiZTY3YjYyNmY0ODNkYWU1MjUgcmVsZWFzZTMxLW1haW50Cis4NjM4OCBlYjRhMzQ3Yjk4YzE2Y2RjM2IxZjE5YTM0MzljZjhmM2U5NjQ4ZmVkIHB5M2sKKzg2Mzg5IDE4MTdiNzA4OGQ4ZGZlZDFkMDBkNmYzZDIzYTMzZDcwMTZhZGI3ZTMgcmVsZWFzZTI3LW1haW50Cis4NjM5MCBmOTNmYWJkYjg3YWI0MTgzMTFlZTUwZjAzYmExYzc4NTNlZGUzZGJlIHB5M2sKKzg2MzkxIGUwMjc1OGU1NTJlOTI1Nzg4ZWQ3ZjRjMGZlNWU3NjAyMWExZjc5ZmEgcHkzaworODYzOTIgOTYxYzllODgyMWRkNWRiNTVjNWZkNzIyNjAxNTQ3MTUzMzI4ODFhYiByZWxlYXNlMzEtbWFpbnQKKzg2MzkzIGE1YjM5ZDg5ZGNjYjcwNjBlODk0NTY3MzkyMGI4YjA2NDQ1OGEzMjggcmVsZWFzZTI3LW1haW50Cis4NjM5NSAwNmY3NmVmMjdmODZjMDRiMjVhYjE3ODRlZmM5ZGM5Y2YwODk3NDc4IHB5M2sKKzg2Mzk2IGRlYTRmNzY0MTk0MGZlM2Q5YTMzODIwZjI0NjIxMWM5MzkwZGE2MzYgcmVsZWFzZTMxLW1haW50Cis4NjM5NyA3NGE1ODk0Yjk1MTM0ZjA4OWVmNTM1MjU5YWMyY2ZiMzZjM2JiNWRmIHJlbGVhc2UyNy1tYWludAorODYzOTggOGU2YTFjZDFmNDJiZjNmNzIwMGUxYTRhMjE1ODhhNzM0MjA3M2MxNyByZWxlYXNlMzEtbWFpbnQKKzg2Mzk5IDdjZWMwZGQzOTFkNjlmNzM2ZTNiNmZlNTNlZWU2NTg3NmYwYjBjYjkgcHkzaworODY0MDEgMzFiMWFhMzAzMDZjNTYzZDA2NDkyZGEwOTVlY2QwNjhjNTYyY2VlOCByZWxlYXNlMzEtbWFpbnQKKzg2NDAyIGU1NDZmNzYwNWNmMTIzMGFiMGQzMzM0NjVlYjU0NDY4NjhhZjM2YzUgcHkzaworODY0MDMgYzVlMDQ5ZmQ4MTcwYzhhNGFjYjMxMTE0ZGFmMzVhNmExYTA4OTgyMSBweTNrCis4NjQwNCBhYWZjZDVlMGZhZjFiZjllYzhjODAwYTEzODRiYjRlZWE4ODEyZGY0IHB5M2sKKzg2NDA1IDY3ZWIzZjUzZGVlYjkyOWM4MzdlNTVkOGQ0YTNhYzIyNjZiY2VkMGQgcmVsZWFzZTMxLW1haW50Cis4NjQwNiA1YjllYzVhY2RhYzQyNzRhZDQ0ZDZhZjgwYWFkNWE4ZTVkYTJmYTM2IHBlcC0zMTUxCis4NjQwNyA3NzkzNzdmMzA3N2Q5ZTA2MWU2NGY3YjljNGQ0ZWI2Zjg2MjBhMGQ0IHBlcC0zMTUxCis4NjQwOCA3MjNlZDFiNzc4NzFiYTIxZTU0NjU0ZGY2ZGVhNjQyMTZmNzFhYzU1IHBlcC0zMTUxCis4NjQwOSBiNTIyYWJmZDJmZGU3MDA0NGMyMDM3ODc3ODM4MGM3ZWU4ODgxNWQzIHB5M2sKKzg2NDEwIDk4YmQzY2ExZWQ4NjM2Zjk2YjUxM2JhNDc0NDFiZGI3ZGI0NTBlYTUgcHkzaworODY0MTEgYzY5YWEwNzI4MmE4OGFlODJjYTY3OGRmYjUyNzhiNDIwNmI0N2Q5ZSByZWxlYXNlMzEtbWFpbnQKKzg2NDEyIDEyZGE1ZmI4MTEzNDAxOGZmODhlNzMwZDI2MzQwYmY4ZTkyMTRmM2IgcmVsZWFzZTI3LW1haW50Cis4NjQxMyA1NTcyYjg2OTY3ZmY3NmU2YjI4ZDUxZjEyMjYxOTQ5Y2ZkYTYwOGVhIHB5M2sKKzg2NDE0IDg1N2Q5ZmU2MDE2OTgyNjNjM2RjYjQ2MTNkNDliNjhjMmM2MWNiMTMgcHkzaworODY0MTUgMTY2YzdiZTcyZTc4YTY2MjU2ZGYxMDUzYjdhNWE2MjA1YjMxM2M2YyByZWxlYXNlMzEtbWFpbnQKKzg2NDE2IGRmMmViZGRjMjhjNjMyYjIyZjJiZjg0ZWNmMjcwOTliYTZjNWNmMmUgcmVsZWFzZTI3LW1haW50Cis4NjQxNyBjM2Q4NWQyYWUxYzg3YTNmOTY5ZWM5YTg3MzllY2NhN2E4NWM3YmM2IHB5M2sKKzg2NDE4IDFhNjUyOTBlNmQwMzYwNWMwNjExNzk5ZmQwMzFkYmZjMWU2ZDRhMGQgcmVsZWFzZTI3LW1haW50Cis4NjQxOSA1MDMwN2E3OTU0MjQ1MjAzODY4ZTYzMDA0MjVhNjNiOTkwNzRiY2Y0IHB5M2sKKzg2NDIwIDBhMWE0YzQ0NDM4MTY4MWRlZGJiNDE5MmQxZTYxMzVhNGRhNGE4OGIgcmVsZWFzZTMxLW1haW50Cis4NjQyMSBiZTUwYzkxZTZkYTUzZjQxY2M1OTRmZDY0MDgxMDFjYzg1YWE4NzZhIHJlbGVhc2UyNy1tYWludAorODY0MjIgNjJhYjM5ZWZlMWM0YjQ5NTZhOTc4YTBjZDhiMDgwOTJlYjYyOWRmMCBweTNrCis4NjQyMyBlYzQyMTEyYzIxMDA5YmEzZTcwMmM5NzhkODc2MzY0YjM3ZmZlMTE2IHJlbGVhc2UzMS1tYWludAorODY0MjQgOGViMWM5ZTgxODdiZDg1MDQxNDVkZjFiMGE0OTQ0OGFhOTViOGY2ZiBweTNrCis4NjQyNSBjOWQzZTEyYmNkNDJlNmU5YThmNWU1Njc4Mzk1NzBlNTMxNjJjNWQ1IHB5M2sKKzg2NDI3IDA1MDllY2RmZjhhZTdjOTU4NTIyM2UxODQ5YzUzNGU4NzFhZjM0YWQgcHkzaworODY0MjggNTZmYjFlNzc2NzQ4NjE4NDJiNzM0MjhmYzFmYzEwNzc3ZWM5MTI2NyBweTNrCis4NjQyOSAwMzI5NjMxNmE4OTIzMWM2OGVmNmJhYWJkOGY3YjQ4YjcwYmFjYzViIHB5M2sKKzg2NDMwIDBhMjdjOWRiOWFjNzkzMzFhMmViNmQ4OGRlNzdiMzQ2YmE0YmZjOWQgcHkzaworODY0MzEgOGQ2NTE2OTQ5YTcxZDA3NTg1NWNlOTJhNmI5NmU1OTU0MmY0MjQ2OSBweTNrCis4NjQzMiAxMjYxMDJiYTc0OGY4ZjNmMmQ2ZGJhMzdlNTg2YTlmNmY0ZjMzOTMxIHJlbGVhc2UyNy1tYWludAorODY0MzMgNmFhNzc4M2VhMGU5ZTZhM2RjNWU1YTllNTk3ZWJlODUzOTQ4MzMzZSByZWxlYXNlMzEtbWFpbnQKKzg2NDM0IGQyZWY4OGU3MWI0YWM5Zjc0NGVjOTE3ZjkyNjQ1YzBkMWMwOGM4NjYgcmVsZWFzZTI3LW1haW50Cis4NjQzNSBlMmVmNDdiYzI4MWQ0OTgzMmY0NmFjNDk0NGJhYzc5M2NhMzg2Nzk4IHB5M2sKKzg2NDM2IGNlNDEyN2VjNWVlYjdkYWZkZWIwYzAyNjUxNTRlZjAxZmNmZTdiYmIgcmVsZWFzZTI3LW1haW50Cis4NjQzNyBmNmU4MTNiNDhhZjNkYWNhZTdiNjJkMjJiOTA4ZWRjNGQwODVhMjg3IHJlbGVhc2UyNy1tYWludAorODY0MzggM2Q1NDhiNzFkMDgyODFjZTU4MjczNGNmMjdmZjAxOTMxMWZhY2MwZCBweTNrCis4NjQzOSBjMjFhZWYzZmY1ZTJmMzdjNmVlMWUwNDdiYWY3MzE5YTM1ODRhNmI1IHJlbGVhc2UzMS1tYWludAorODY0NDAgY2EwZWRhNDAwMjE0ODE0MjZiMGFhMDEzZGE4MTdhMTc5YmU3N2UwMyByZWxlYXNlMjctbWFpbnQKKzg2NDQxIDVhY2UxZGEzMjc1ZTllODBmZTNmMTYwM2I5ZmM5NjdlMTI4YTQxOTUgcHkzaworODY0NDIgMDMyNDYyNDc5ZTBiZDMyYWZlNjc4NzQxYzQzOGFhNWQ3Y2RhYjI2MiBweTNrCis4NjQ0MyA1ZmQ5MTdkNDFjOWMyZDM3ZGRkM2Y4OWQ4ZGQ5ZjUxZGRiOTE2YzA5IHB5M2sKKzg2NDQ0IGNhYmM3NjExNTQ3ODQ5OWY0NDBkZTdkZDgyMmYwZWNhNGFlN2ZhNjUgcHkzaworODY0NDUgYTgzZDk4ODhhMGQ5YWJhMDdkMDQ2YWZiZmJhOWFhMTYxMDUwMDM4NiBweTNrCis4NjQ0NiBkMTJiOTkzNjI5YTE2NzgxOWEzYTliODRjM2MzMDEyMThmM2Q5NWY2IHB5M2sKKzg2NDQ3IDZiZGQzMmNiNTVhOWEyZjBmYzg0YTgyM2U3NTM3ZjAwZDgyOGNlMGQgcmVsZWFzZTMxLW1haW50Cis4NjQ0OCA0YzRmZTcxMzljNjhlMjFiYmZhNDgyMTM0ZjU0MzU4YTM2ZGQ2NGIwIHB5M2sKKzg2NDQ5IGIxMWE4NGRlNDQ5MjVkY2I5NjI3ZTFjYzEyNTliMDc2MTc2YTY2YzggcHkzaworODY0NTAgYzZiMmY0MTc4MzBlYWI0NTY1ZDhiYmU3ODUzMTM2NTBhOGI2YzY2NCBweTNrCis4NjQ1MSBkOTJhNWI4NTBmNWU1NjgwOGJlZGMwMTcyMzkwNmVkNjRjNWU2ZTJlIHB5M2sKKzg2NDUyIGQ5ZTZiOGE3NzA3MDUyYmQ0MDllZDQ2Zjg3NDY3NTZlZjUzNTlkMTIgcHkzaworODY0NTMgZDE4ZTlkNzFmMzY5ZDgyMTFmNmFjODcyNTJjNmQzMjExZjliZDA5ZiByZWxlYXNlMzEtbWFpbnQKKzg2NDU0IGQ1ZWU5NmU3YWNlYmIzZmI1MjBhYjM4MzgxOWE0ZmQxMGM2YTQ1N2IgcmVsZWFzZTMxLW1haW50Cis4NjQ1NSA2M2Q5ZjAwZmVhMDczMGMxYzQzN2E1MGY2NGE0MmI3NzkyYmRjYmZiIHJlbGVhc2UyNy1tYWludAorODY0NTYgNGQ0NWE0YWYzMmE5NmY3MThjMTNmNzkyNzQyZTI2MzAxMzNiYzNhYSByZWxlYXNlMjctbWFpbnQKKzg2NDU5IDUwMjJlNWI3M2FkMTk3YzE2Njc2NWNlN2MwYTIwNDY1YTU0MWMzNzIgcmVsZWFzZTI3LW1haW50Cis4NjQ2MCBjZTM4OGZiMWJlMDFmOTIxOWI1Zjg0MDY2Yzk5NTMxZTFjMzRkMjIzIHJlbGVhc2UzMS1tYWludAorODY0NjEgMGYzOTgxODhjN2Y2MDYxMDAyNDliZDBmOTNjNGJlNTQ1NmE4OTMyNyByZWxlYXNlMzEtbWFpbnQKKzg2NDYyIGI3ZDAyYWU0NWQxNTM1MTc0OGM4NGY1ODhjYWZkOWYyZTgwYjBkZWYgcmVsZWFzZTI3LW1haW50Cis4NjQ2MyBmY2FiZTQ3ZmUxZGU1MDRmMDNlYmNmNmVhY2Q0MzI5N2FiOTc2YzcwIHB5M2sKKzg2NDY1IDI0ZmM4Yzg1MmQxM2E0NzY1NjUxYmU3Njg4NjIyOGI3OWNlNTgyYzUgcmVsZWFzZTMxLW1haW50Cis4NjQ2NiBiNDVlYWJjN2MwMDQ2YzUxN2M0MTRiMWQ5YjBhZDc4ODQ3MDZkN2EwIHJlbGVhc2UyNy1tYWludAorODY0NjcgYmEwMTQ1NDNlZDJjMjM1YzY2NGZlYTRhMmE3NTdjYzk1MTBlOTQ2MSBweTNrCis4NjQ2OCA2ODMzMjcxMzczNjUxNDY5ODI3OWRiMjE0YmU2MzgwZTRhMDhjMWFhIHB5M2stY2RlY2ltYWwKKzg2NDY5IDYyODk1OWZiNDBjMzM5YTY5MjFmZWI2Mzc0NjUzMjY5NjUyODZjYTcgcHkzay1jZGVjaW1hbAorODY0NzAgZTQ1ZDBiYjc4MGRjYjNjZjIwYWFmZDIyZDExNDdjZWYzZjUwZmI3NSBweTNrLWNkZWNpbWFsCis4NjQ3MSBmNzIzYWExNTdhODJkOTc2NzI4OWU4NjI1NDY4ZjJjNDk4ZTZiM2M5IHB5M2stY2RlY2ltYWwKKzg2NDcyIGRhMDNjNjUwNTI0MGVhZWJlMjE5MGY4MDU0YjlhYTk1ZDYzYmU2NjggcHkzay1jZGVjaW1hbAorODY0NzMgNjljOTEzMWFhMzIyNGU3NjdkOGQ3NjIxNmQ5ZjI0N2IwYjVhZTkyNyBweTNrLWNkZWNpbWFsCis4NjQ3NCAzMzU4MjcxMGUwMTQxZmVjMDRhOWM2YjhjMzZiYmJmMzgzOGYyNDY2IHJlbGVhc2UzMS1tYWludAorODY0NzcgOThjOGU3OTNjMGIzZGNjZWZhNGU1YmUwYmYxODZiNGFiOGI0ZDA5ZSBweTNrLWNkZWNpbWFsCis4NjQ3OCAwZGY2YWM2MjI3MmJhOTVkMjJiM2U1YzgyNzc2ZTE3NjA0OGQyZjNjIHB5M2sKKzg2NDc5IDRiOGNlZDVmZWZiNzQ2YjM4MzNiNjg5ZGRiNzlmNmM1N2EzOTdhYjIgcHkzaworODY0ODAgMzQ2MjdkY2EyMTk2ZWQ4YzMyMzYzYTllYWEwZTkwOGNhNzBmYmQwZCBweTNrCis4NjQ4MSA1MmZlNjAyMTZlODkzMjMyMjE3YWRiOTczODFkMmMyYzI5ODEyMGQwIHJlbGVhc2UzMS1tYWludAorODY0ODQgYWU2NjEwY2E5MGExOWNmNjgzMTljMTBmNTUyNDljYzk4OTBjM2VmNyBweTNrCis4NjQ4NSA1NWFiYzA5NjVlOWQ3NjVkMzAzMzZhY2EyOWIyMGFkYjVhZGQwZjMyIHB5M2sKKzg2NDg2IGJiMTIzNzRjOGRjNmU3YWMxNTEwMGYwMDczNzAzNTc2MTUxYmRkNDkgcHkzaworODY0ODcgYzRmZTRiMTMwMGQ1Nzg5NTMxNTBkZGYxYjczYTRmYzI3NjljM2FhMCBweTNrCis4NjQ4OCBlZjFkYjdmNWM4YTlmMjEwNTViM2YzODk3Y2JkYmViNDlhZjQ3ZjBjIHB5M2sKKzg2NDg5IGZmNmIyYmY3NWQ4MTI2NzFhZGNiNzU5ZTA1OWJkMTM5MThjNjZhMmQgcmVsZWFzZTMxLW1haW50Cis4NjQ5MCA0Njc5ZmJkZmM4MTdmNjZiMTVhNjMwY2I0NmRkMWNmMWU5MDNkZTIyIHJlbGVhc2UyNy1tYWludAorODY0OTEgNTg2YTkyY2Y0Y2M3ZjQ3MzU4YWI5OThjOTQ5ZDA2MmVmNzUyYzk4ZSBweTNrCis4NjQ5MiBjOWZiMzBmZDFmMGE1Y2FmZDIyZTI2YWE0YTE5MWZkMzA3MmRlODcwIHB5M2sKKzg2NDkzIDBkMWI2NjIzMDI0N2M1NWNlMjhiYWYwNDM0ODAxMDBmOWE0NzA0ZjMgcHkzaworODY0OTUgNTJiZjc5ZmQ2ZDZjNmY0YjZhNjI5YjMyYTI0ODhjZWNmMmMyZTQ1ZiBweTNrLWNkZWNpbWFsCis4NjQ5NiBkNTRjOGYxNmM1MWMyYmY1ZmZmNDJmMjI1M2MyODM0ZWUyYTVhNGYwIHB5M2stY2RlY2ltYWwKKzg2NDk3IGJkNjhjZWY0ZjFlZTA5ODhkZTM5OWRkZGM4MzNiNjlkMzI4MmM3NjkgcHkzay1jZGVjaW1hbAorODY0OTggNzgyNmQ5MDdiNzY1YmQzZTI2NjgxNDM0ZDcyYTZlZGI0N2VlNTExZCBweTNrCis4NjQ5OSBkOGNjOTVkN2RlNjJhMWZiZTVlYmZlNjdhNTM1ZDMwYjA1NzdmMDgzIHB5M2sKKzg2NTAwIDc1YTgyZmUyNzRhN2M4NmZlN2E1NjYyYWUyMzQ4MDAyMTQ3YmE5MTYgcHkzaworODY1MDEgMzc5MDI5NzE0ZTI0NTk4OTcxMDZhMjM1NjZjYjgwODVjZDg3ZTAzYSBweTNrCis4NjUwMiA5NGJiY2VjZDk1ODI1N2RiMGExZDIzMDVmMzcwNWYwNjg0MmMxZWVkIHJlbGVhc2UzMS1tYWludAorODY1MDMgNTJlNTE5OWI2NTEzM2UwNTYzY2IwMWMyNzE0NWRhNDAyNDE0YWExMyByZWxlYXNlMjctbWFpbnQKKzg2NTA0IGI0MTQwNGEzZjdkNDE5YjFhZjI0YzRjNDg3NmM4YzY2NDRiMWYzNjUgcHkzaworODY1MDUgNjZlOGQzNWQ3MWZkZWFmYjc4MWE5Mjk1N2UxYTEwYmQzY2Y4MzljNyByZWxlYXNlMzEtbWFpbnQKKzg2NTA2IGNkYzM5ZjZiZWJmMTBiYmRmNzU1MmRlMTI2YTI0NmU5MjA0Njk2NjMgcHkzaworODY1MDcgYWYxM2ZiNmZiM2RmN2U0YTZkOWY1YmRiNjE5YmRmYWNiZDkyZGI0NCBweTNrCis4NjUwOCAxNWJkNTBlZTJjNGMzZTk4NjhhY2M5YzZjNjUzMDFiZWFmMTQ0YmZmIHB5M2sKKzg2NTA5IDgwNWMyOGRkNjdiM2UyMWIwNzcyODFlNGM5YjUyNjM5ZjQ4Zjc3ZDYgcHkzaworODY1MTAgNDgzYmJlYmM1N2JmZmI1ZjY5NDIxZmRmYTRhYzJhYjY3OWU3MjJiNCBweTNrCis4NjUxMSBmOWZiOTJlYTQ4NTAyOTI4MDc4NDdmMDFhODVlY2JiMzQ2NzQ5OTNkIHB5M2sKKzg2NTEyIGUxMDVlNmFjODUzNjUxNGQ2OTM2MzhjYTNhY2U0OWNhNjU0NDUyMGQgcmVsZWFzZTI3LW1haW50Cis4NjUxMyAyN2UzMmQ1MjAwNTU2MDg5NzUyNTM5NmRlNjZlZTIxNjIxZTBhY2JjIHB5M2sKKzg2NTE0IDViYzQ2M2IwNGM4MzMzZDMxZjc0YTZmMzUwODI1ZWM1N2U5NjFlNTYgcHkzaworODY1MTUgMDE5NDIxYTg5ZWY1OWRjMGIxNmZhNjkzZDQ4ZGMwZTRmYzUxYjE0OSByZWxlYXNlMzEtbWFpbnQKKzg2NTE2IDhiNmZhZWEzMDU3MzQwZDU2ZmVmOWU1NGRjODc5YmRiOTViNDVkYzMgcHkzaworODY1MTcgMjk3ODE2MGY0OTE0OTViYjEzNTJhMGEwMGQyMGRhYmFmNDExNjZlNCBweTNrCis4NjUxOCA4MmIxNjFmYTI4MTg0MTI0ZDk2N2VjZWJiY2IxMzk1YjU3MDEyZTJlIHB5M2stY2RlY2ltYWwKKzg2NTE5IGYwZGRjOTFiYWVjMDRhNDcyOWZiNGM3ZTM0NTg3MzU4YjE4YmY3MDcgcHkzay1jZGVjaW1hbAorODY1MjAgYmIyNzY5Mzg5YzUzMTQ3M2UwZTljOGMxNDdmZDlkYmM2MmE5MWZmOSBweTNrCis4NjUyMSAzNzhkNGY0ZTljYjUwZDhmZDIyNzk0ZGRiMmM0OTllYTQ0ZTA3MjUyIHB5M2sKKzg2NTIyIGZiN2RkZjFkMzU5NDAyOTI3MDNlNzAxZGU4NjdhNWMxZjUwMTg0NjQgcmVsZWFzZTMxLW1haW50Cis4NjUyMyA5MzJhM2ZmYTRlNTYxMWVlOTcwNmEyYjE2YjFmN2E0MWUyYTZlYTZjIHB5M2sKKzg2NTI0IGEwMTliYjRmZmI1MGU1NTc1NjlkOWEyYTZlZThiMWNlNWE0NDFjOWUgcmVsZWFzZTMxLW1haW50Cis4NjUyNSAxZGFhNDBiNDEyMTE3MjY4ZTRkMjA0MjVlMGJhN2ViZjkwNmUxNjlkIHB5M2sKKzg2NTI2IGFlMzE1YTdmNjJkMjc4MTFmM2QzNzkxMWEzYzE3MDEwOWRjYzU5MTcgcHkzaworODY1MjcgNjdhYjc0MDJlMGRlY2RlYjNhZjQzMzJlNmUxNjI3YTc2ZGY1NjEzNSByZWxlYXNlMzEtbWFpbnQKKzg2NTI4IDI3YzU0NTNhMTQ3ZjUxMWNjMjhlMzg5MDc0MmQ1YTQzMWIzYjk2MDYgcHkzaworODY1MjkgYjg0MjBlNzY3NjM4ZTU2MjZlNDk1Mzk2NjhlZmUwMjU5MGQ3ZDYzNSByZWxlYXNlMzEtbWFpbnQKKzg2NTMwIDBjY2E3M2IwYTViZjAwODc3N2VmOTQ1OTYxMjAzZmYwNGVkYWIxM2MgcHkzaworODY1MzMgYTFkYTgyNDNiNjNlNmFjMjdkMDI2NzdkMDRkOWU1ODE1YjUyYWVjYSBweTNrCis4NjUzNCA0MjAzMDE0MDA0MDNmMGUyMzlhN2E3NzI5YzY0N2VhOTdmNjk3NTg0IHJlbGVhc2UzMS1tYWludAorODY1MzUgZTk4M2ViMjIyOWRmZGEwZTdjY2MxNDA3Y2I1ZGY1ZTA2NjM4ZWFmZCBweTNrCis4NjUzNiA0YjNhNTUwMjAwMmQyMTg5MDBmZTk3MTQxZTY2OTFmY2NmOWQ1ZTQyIHJlbGVhc2UyNy1tYWludAorODY1MzcgZDljODkwNzIwNDRlNDhkNzViZDQ4OTFhOTY0MTUxNWI4NWFiN2ZlMCBweTNrCis4NjUzOCBlMzczNDRhOGYwYzkxYzM5NDEyNzI3YmFmZDU2ODk3NDdiNDhjMzEwIHB5M2sKKzg2NTM5IDM1MDg5OGUwOTVhYTZmYmNmMDVlZjliYjhkYzY0MzQ2MTg4MGNkNDUgcmVsZWFzZTMxLW1haW50Cis4NjU0MCBiOWJlNDVmNDMzYjkyZGI4NTMwMGUwMzkzMjBkMDQ5MzkyZTJjMzA4IHB5M2sKKzg2NTQxIDUxZjcyYzVmZTI4ZTRiZjFhYzg2YzgwOWNkNDE5NjhiMjc0Zjc4ZmIgcmVsZWFzZTMxLW1haW50Cis4NjU0MiBkNGY1ZTI3ZWQxODZiNmRiMzZhZGVjN2JiYmRkMGM4OGYyMTFiMzFhIHB5M2sKKzg2NTQzIDQ1NzJkMjhkYmFjNzMzYTNkNzExZmE0N2RiYWMzOWY4MWFhNDk3NmIgcmVsZWFzZTMxLW1haW50Cis4NjU0NCBjZGRjYmUzYmY1N2EyZTgzNzk3Y2NkNTQyMTY3ODQxNjYyMmUxOGE2IHB5M2sKKzg2NTQ1IGM2NGVkNmRhNDhiOWFiMzhiNTkyNjM4M2QwMGYwNWFjYjIwNDdhMzkgcHkzaworODY1NDYgZDIyYWE1YWU3NzYyNWY3NjllNzlkOTY2MDU5NjRhMDM2MjQ0NTc0YyByZWxlYXNlMzEtbWFpbnQKKzg2NTQ3IDVlZDM3YzJjMDU3NDFkZWU5YWIxMGY2OThiYTU2MjQ0MmFjZGJiZWUgcHkzaworODY1NDggZTlhYzNmMzExMTk5NTc4MWZiOTU2MWFiNWIxYmNmMGNkODk2YTFkMCBweTNrCis4NjU0OSA4NGEzMDVlMmU1NDg4OTMxNzRjNmE1MzBiMDM5MTAzOGVjNGY0MzgwIHB5M2sKKzg2NTUwIDRiNGM3MjEzMmFiNmViMmIzNWNkYmE5YWVlOWU3YzNhYWQwMTI2NmQgcHkzaworODY1NTEgZTUzMGZjNzY4MmJmMjk2NGJhNjk1MDQzMWI4NzQ0ZmZiZGFlYjEyNCBweTNrCis4NjU1MiA0MDk3MGU4OWU2MGFiYTM5ZjQ3NTI1NDM1MzNlNjA3MTkzYzgwZGMwIHB5M2sKKzg2NTUzIDgyNWU0ODBjOTMwZGExMDMxZWM3OTE3ZDA5YzQ0ZjAxMjM5YWIyYjYgcHkzaworODY1NTQgZjA3OTY0MzkxNWI1M2U5Y2YwMThmNjM4M2FmOTM4ODdiOGY3YzkyZiByZWxlYXNlMjctbWFpbnQKKzg2NTU1IDI0NWY2Y2EzYjIzMzBmZWI0YTI3ODFiZGM0Mjc2MGIyYTkxOGRjNTQgcHkzaworODY1NTYgNTNkZDcwMGEzNWI2ZjJmZTY3NzAwNzk4NDExMWVkZWMyMWVhZDZlNyByZWxlYXNlMjctbWFpbnQKKzg2NTU3IGRkYjNiYzhlNjk5MGRmNGYxYTYxNTY0ZDFmYWJiZjMzMTcyMzRmZTMgcmVsZWFzZTMxLW1haW50Cis4NjU1OCAxOWI3MTFhNzdlZmYxYjQzN2Q2NjQ2NGIwMGZlYzkwOTQ4MWFiYzJiIHJlbGVhc2UyNy1tYWludAorODY1NTkgMmRkNTM5MjVmMDA3MWRkNjVlOGUxMzMwN2M0ODIwMWQ3MmQyNTFlYyByZWxlYXNlMjctbWFpbnQKKzg2NTYwIDVkNTVjNWJiOGFiMWM0MDU0ZDc2NDA2MjFhZjFlZTQyZWU0MjVmOGUgcmVsZWFzZTMxLW1haW50Cis4NjU2MSBiNDZiY2U4N2QyYWYwMWU0NTg5ODI0ZDlmZjkyZDMzOTE3ODJjYTdkIHB5M2sKKzg2NTYyIGRlYmM3NjY0MTkxMjJhZjYwOGE3NmE1NzA4ODUwYTk5NDFiZmY2OGYgcHkzaworODY1NjQgNDBiMGM2OWJiMmJkNzUwNmY1OGRlOGM5ZTkwMGMzMDkxNzJjYTAyMSBweTNrCis4NjU2NSBjMjBhZGU2M2YzZGJjYTFiOGEyNzgyNGZiZWM2MDYxMTdjN2NiNjU4IHB5M2sKKzg2NTY2IDRlZDYxMDFmOGFiMjU1NTQzY2I3NWNmY2MwMzVkOWNmNzY2OTRiNDkgcHkzaworODY1NjcgN2YzMmM1ZjU2ZDFhMTE4ZDdlMDM3MDI5M2Y1ZGEyZjVhYzQwODk3MiBweTNrCis4NjU2OCBhMTkzNmZhNjM1ODBkNjJjOTMxZjUyMzA0OTg1Mjg5ODk5ZjE4NWU3IHJlbGVhc2UzMS1tYWludAorODY1NjkgNTllNTZiODJlNmNiMmNmYjU5NTMyOTdlNWIxMjVhMWRkMzg3OTIzZSByZWxlYXNlMjctbWFpbnQKKzg2NTcwIDRlMmRhNTI3ZjViMWRiMWFmZTE4NDgxY2E2ZjVhYTM2Y2VmNGE1MGYgcHkzaworODY1NzEgYWVmOGYxODUwZDI0ZDcwZGJlMjIxOTdiZTA3NTNkOTMxOTE2ODZmZiBweTNrCis4NjU3MiA3OGEzODBkNTdmZWExOTRhYzMyNGRmOTg1YmFhOWE3MDFmYTU4YTQzIHB5M2sKKzg2NTczIDUxZTFjYmRkOGZkMjg1NmRmZWEzYjY0ODBlNGNjN2I1OGEzYzNlYmQgcHkzaworODY1NzQgMmFlNGVlZDRhM2IzNzg3ZTg0OWFmYzhmY2Q2YzZmMDQ1Nzg1N2E3MSBweTNrCis4NjU3NSA4MzhmNjk0OGRlYjhiNmY4MDU2OGZkODllNzEwMGYyZTEzNmJhYjIwIHB5M2sKKzg2NTc2IDNkMmY1NWNjZDY2MGVjNjE1MzVhYjY0Y2RkM2ZhNmIxNzhkOTdjYmEgcHkzaworODY1NzcgODBiNDhhM2EyNDczNGM1Mzg4ZjE4ODFiYTc1OGUxMjUxY2I5NzJlMiBweTNrCis4NjU3OCBkNTcxODFhY2FmOGM0M2Q2NDNhMzhlZmRiMTQ3OWE3MjdjYzMyNzM4IHB5M2sKKzg2NTc5IDFlZjQ2NTFmZWVmODliODAyYWNkNzNlNTNjMzkwYjEyYmQ1YTEzODYgcHkzaworODY1ODAgNDFkNThiZWMzZTA4YjQ1YTM4MDI0NDUzM2VkOTllODU2YTc3OWM4NCBweTNrCis4NjU4MSA0ZTUxMmE5NDliNjBjMDQ4MDE1NzQ3YzU4NDI5NmY5ODRlYWFlOTYwIHJlbGVhc2UzMS1tYWludAorODY1ODIgYTdjMjIxMDdhZWNkMDQ1NzJiZjA0YzM4NGNjMGVmMTYwODYwNDk4MSByZWxlYXNlMjctbWFpbnQKKzg2NTgzIDY2ZDQwYjZhMmJiMWFkODBkYmY4ZDQ1MmM2NjUyZTU5Yzk4NGVlNTYgcHkzaworODY1ODQgM2EwZTcwMDBkYzhmOWQ3MDhhYTVlYWI1MTYxZDY0N2I3MTFiZmMzZSBweTNrCis4NjU4NSBlYTgzNTVjZGRkOWY4MTk3YmY4NTc4NzIzMDRjNWI3MjIwNTkzMWI0IHB5M2sKKzg2NTg2IGJjOWRjN2U3ZjM3M2RhYzZkNTUxNmNiODI0ZGI0OWI2MzA4OGU1MTkgcmVsZWFzZTI3LW1haW50Cis4NjU4NyAzYzliMWMwNWJhOWVjNTdiZDRjMWE5YzM5N2JjODkyYzlmMDRiNjgxIHB5M2sKKzg2NTg4IDdjZGJkYmYzNDgwYjhmMDJiOWQwOTdmOGEwZGU1YTI1NmQwODJiZDggcmVsZWFzZTMxLW1haW50Cis4NjU4OSBjNDA0YzJhMzQ2YTU4NDRiNWE5NThkYjAyZTM2NzAwYzQwNzBmNzNmIHJlbGVhc2UyNy1tYWludAorODY1OTAgNjMxZDg0NGJiYzQ1OTMyZDU4OGY1NGI2N2I5NGJmZGU2ZDUzNzM4YiByZWxlYXNlMjctbWFpbnQKKzg2NTkxIDk2NWY4NTllNjBhZmY5MTc2OGVmNmQ2MzE3Y2Y5Y2I3M2JjNzA4MzYgcmVsZWFzZTI3LW1haW50Cis4NjU5MiA1MDc1MTgyMmY2MjIzMDY2NWFhMWZjNDliMjdjMzVmYWIwNjgyMjBhIHB5M2sKKzg2NTkzIGMwNmVkMjVlNjliODMzMjdkNWI1YzlkYWI1OGM0Y2MxMmM3NjNjNGEgcHkzaworODY1OTQgNGYyOWFhOGY5ZjU0YjFhMjVkNjliNDBmZWU5MWYyOGI5YzUzMDRmNCBweTNrCis4NjU5NSA0M2U1MGJiOTIzYTk2ZWVhYTU4ZTE5Yzk5MGY5NDY1NDFlOWZmNTI2IHB5M2sKKzg2NTk2IDlmZTc2YzI2ZWE5ZmU3YmYzYmViMzRmZGQxMjk5Y2IxODBlYzZlYTggcHkzaworODY1OTcgZGVkZjcxOWIyNmEzNzRkMjkyNGEyYjAwYTZkMzdiMjRkYTllYzYyOSBwZXAtMDM4NAorODY1OTggMTI5M2Y4MTljZTM2NjIyZTRhYzM3NjU4MzM0ZDViMjA1YzM0OTg5NCBweTNrCis4NjU5OSA1M2JlMWE2N2U5NjRhZWNjMzkzOTRhYjRhMGZmMzI4ODE1Y2ViZTg4IHBlcC0wMzg0Cis4NjYwMCAxM2EyYTVkZTFiN2Y2ZWJjNTUzMDZjNTZjOTE1OTQwOTE5ODliZWNiIHBlcC0wMzg0Cis4NjYwMSA4NmUzZjYzMjRlNjUwMjM1MGUxZTFiY2M2NDQzOTRhNGZkMGEwZmYyIHB5M2sKKzg2NjAyIDQ0YjMxMjE5YWVjZDMzMmViZDJjZWIyYzliZTIyNjQ4MGRlN2M5NTMgcmVsZWFzZTI3LW1haW50Cis4NjYwMyA2NzFlNmJkMTgxMTQzZDI4NDZkYWMxMjgwNWEwMDFiZGMzZGNjYWJjIHB5M2sKKzg2NjA0IGI2ZDdjNWI2ZjFmMjAxM2IwMTQxZjVjNWIyZWRiZjE3YzFhM2RiYzcgcmVsZWFzZTMxLW1haW50Cis4NjYwNSBmNWRiNTM3ODM5MjJkMjc2Nzc3ODM5ODhmMmI5YWM3YjRlZjcwMDM5IHB5M2sKKzg2NjA2IGVlZDQyZDI4MzU2MjJkZjhhYTQ5NDUwYjU2N2Y0OWI2ZTA5YmRhM2MgcmVsZWFzZTMxLW1haW50Cis4NjYwNyA2ZWFiZjhjMWE3NWM3ZTUyMzJjZGFkZmIyYjVmMTg4MjQxOGYwNThiIHB5M2sKKzg2NjA4IDlmZWM2YWJjYTdkNzY3NjIyNjJlZmQ2NGE2ODg0YmVhYzBmNDVlNWIgcHkzaworODY2MDkgNGFlMmQwMTFhODBiYTVjZWI0YTQ1M2RhZGQ2MmRlYzY5Y2MxODJiNiByZWxlYXNlMjctbWFpbnQKKzg2NjEwIDU5MzA3YWE3ZDJmZTY3YTA4MWFlNGVmNzEzMzcxN2M0ZDgzYTJhMmQgcHkzaworODY2MTEgNDMzNTY5M2RmMjU5NzlkOWJmODc1MjBiYTA3N2UxYjliNTYyYmNkNCBweTNrCis4NjYxMiAxY2RjOWMxYzQzMGU4NWM1YjY1M2FkMTI2M2Q0MWY4MTdmNDEwZjNmIHJlbGVhc2UzMS1tYWludAorODY2MTMgN2FlYzIzODY4Mjg3N2IzOWIyYzQ2Mjg0MzIzZDc0OGRhYTc3YzM2OCByZWxlYXNlMjctbWFpbnQKKzg2NjE0IDEwYTFjMzk5ODY0ZTQ2M2JkMDc0MTdiMjNlMDNhZTg1ZmVhNmRjNjAgcHkzaworODY2MTUgY2ZkNTM4MzExYjZmYTYwZmJjOTM1ODM2YTRlYTQwN2Q5ZTUxOTg2YyByZWxlYXNlMzEtbWFpbnQKKzg2NjE2IDQ4ZmRjMmQ4Zjg5NmVjNzRkNTA3OTI2Mjk4NzZmOTc4OWZmNjYwNDQgcmVsZWFzZTI3LW1haW50Cis4NjYxNyA3YWYxOWU5OWQyZjg1ZWI5N2NlMGRkM2M3NDcyNzAyNDU5MDU1NmM5IHB5M2sKKzg2NjE4IDIzOGNhYWY2ODUyYjczM2VmMDUwZDE2NjlhZjk4NzdhNzJkMTMxZGMgcHkzaworODY2MTkgYWRkN2U5NzIxZjgwOTQ3MTM2MWViNGFiNGEzYzU3OTgwMThhNTFkZSBweTNrCis4NjYyMCBlMDEyMzc4MzFhZDJmYWQ2OWM1ZmRiZDEyNGI5MDcxZjIwZDhkNTAxIHB5M2sKKzg2NjIxIDM5OGIyMTgyMWQxYjRhMDBhNDQ3ZjJjMzI2YjJjZWEyYjA0NDVjMjUgcHkzaworODY2MjIgMjU3NTEyYjk3ZjgyM2QzZTcwMGFmYWJiODc5YmYwMGY5MGRkNTc2MiBweTNrCis4NjYyMyAxYjQ0OGZkN2UxYTI0OGM0OTMyMTU3YWYxNDJhOGYyN2YxYTZkNTkwIHB5M2sKKzg2NjI0IGFjZDk2MjgyNDgxOTE0ODllMDYzMWI4YWIzOWRhNTc3NTZhYmZjNWIgcHkzaworODY2MjUgNDU5YTY5MDI1ZDljMTZiZGI5YTg0MjYwMzIyMjg5YjYyODk4NzU0MSBweTNrCis4NjYyNiA2MjE4MmFiYzExNmFiYWM1NWU4ZmZkNzZiM2M0ZDE2YTJjYTBiNzIzIHB5M2sKKzg2NjI3IDA3Y2FkYzJjNjQzODI5OWZlM2M0ZTJkYWExYmU2Yjg2OTVkOWNmM2IgcmVsZWFzZTMxLW1haW50Cis4NjYyOCA4MzdhZDU4NTRmYzkzYjQwYzUxNDI5MmQwZmJiZjY5MjNjMDNlNTE4IHJlbGVhc2UyNy1tYWludAorODY2MjkgMmJlYjI1MzY5Mjg5NzUyNjc0MzQyYzBlYTg3NWQ3OTljMGZjZTUyMSByZWxlYXNlMzEtbWFpbnQKKzg2NjMwIDVjMDZkM2QxYjljOTBkNTAzOGY3ZWIyZWQzYThjYmJjOGM5MTk2ZjAgcHkzaworODY2MzEgNTQ0YjQ1M2U2MGE1OGVlYzBlNmE0MjgzNGQ3MDZjYTAzYmUxYzg2MiBweTNrCis4NjYzMiAyMDY4MjU1YjRkYTAwYTE4ZmM2Y2JiNmFmYzhjYmIxZTkwNWU1ODQ2IHB5M2sKKzg2NjMzIGZkZmM2ZGNhODA0ODNiM2QxM2ZjZTVjY2I2ZGMxOTI0MGU0NzNkNTIgcHkzaworODY2MzQgZDI5YTY3YzI2NjAwYzc2ODM0YjkwYzYxNzhmNmY1YjJjODI1M2IwOSBweTNrCis4NjYzNSA5YTBjMjQwMWM2YTZlMWYwMWJjZTc5NTIxMzBmZDU1MzE5NjYxMzhlIHB5M2sKKzg2NjM2IGY1NDc2OGE1ZTJmNTVkYzZlMWU3NzkyMDIwNTQ3NGJhMDA0MzA3NDggcHkzaworODY2MzcgNjE0Yzg0NjcwYzYzZDM1YTBmMjdhODg4ZDg2OTg1MzkwNDkzZmU3ZCByZWxlYXNlMjctbWFpbnQKKzg2NjM4IGMxM2Y4OTgwY2E3ZmRmYjM4YzQ1YjQwNmY4YTkzMzk1YTg3OTRkYjMgcHkzaworODY2MzkgZjhjZWI2YWZkN2E5MWFhYzlhNzk3OTkxNTliOWI2ZGNmNDM5NTMyMiBweTNrCis4NjY0MCA5NzE3MTUzZDU1OGQwNDllNGMzNTIxNTVlOTllODcxZGM3MThjNmZiIHB5M2sKKzg2NjQxIDYxZDFlYzMwN2JiMGRiNDkxZWI2Y2JiMWIyMGUyYWI3ZTgxNjljNzYgcHkzaworODY2NDIgMzIyYWEzZTgyNzY4YmUzYmM3YzI4NmE4N2I1ZTE4YmY1YjczNzQyMCBweTNrCis4NjY0MyAxNzlkYzRjMzQ3MGYzY2Y3NmRmYjljOThjMjc5MTEwN2JjYTU0NzQzIHJlbGVhc2UzMS1tYWludAorODY2NDQgOTQzYTg2NDk5MDBkZmY5ODU1MWVjMjI1NTU0ZmY2ZWE4OWEzYTI4NSByZWxlYXNlMjctbWFpbnQKKzg2NjQ1IGVlZDMyODhkZWQ4OTVmYjJkODllNGFjNGU5OTViNTIwZGViN2RlODkgcHkzaworODY2NDYgYTc4NDQ1N2UwMDBlNWMzYzk4NTc5NjUyMzQ0ODJiNmM4YWVmZTI3OCBweTNrCis4NjY0NyAxZWY4ZTlhNzVmZWYzYzcyMjMwNWY2NDhiN2I0ODRlZTY0NDgxMGIxIHB5M2sKKzg2NjQ4IDIyYmNkYWMxODFiY2E5MTFiZTgwMWFjNmE0NWQxNGY0NDRkZTZkNDAgcHkzaworODY2NDkgMWVjMDU4MGQ5ZDlkN2I2Nzg5ZjI5ZGI4ODEyOGNkNWRmNzFlMzdlMCBweTNrCis4NjY1MCA1YmE4YmZjZTdlYzFkNmRjMDYxMzViNDk3MWZmYjAwZDIyYzVkMGMyIHB5M2sKKzg2NjUxIDhiYTE2YWFiZDU2NDZiNzI4NjU4OGUxOWFkYWEwZGU0ZDA2YmRhMTUgcHkzaworODY2NTIgNDg1ZGNmZmM4OGI0NWUxNjg1ZWMxY2ZjNjg3Y2U2NGNkMDM1YjM3NSByZWxlYXNlMzEtbWFpbnQKKzg2NjUzIGY0N2ZjZDViNTAxZGVjMWE4MmRiM2Y4ZTQ0NDU0OTRhNmI3ZGY1NGQgcmVsZWFzZTI3LW1haW50Cis4NjY1NCA3YjE0ZjFmZjYwMmJiNTA4ZGQ1NTQ5YTk3NDE0ZTcxYjMyOTlhOTc2IHB5M2sKKzg2NjU1IGFkZDhhMDNkZGVlNmUzNWQ0NzZjNWU2Njk2ODJiYzQ0ZjgzNWJiZTQgcHkzaworODY2NTYgMDdhNDg3MGY2MGEwN2YwZjUzY2Q1ZTBmMTdmNDg1MWIzMjU3MjY5NiByZWxlYXNlMzEtbWFpbnQKKzg2NjU3IGEwODE2MjVkZDZjNjI3ZWIzNTQ3ZmY2NTA1MGQ3NGUyZGYwOGJhMGEgcmVsZWFzZTI3LW1haW50Cis4NjY1OCBmZmMzNzJjOGNmYTBjNzYzZTNjNDVmMzMyYjRkMWY4MDg4MTMyYWIyIHJlbGVhc2UzMS1tYWludAorODY2NTkgNWQxMTJjNzg3ZDZlOTRmMGQxN2ZiNDg3ZDIzMmNkOWQxNmRiYjJiMiByZWxlYXNlMjctbWFpbnQKKzg2NjYwIGYwMmYzYjMzZGQ4ZjkxZjQyYjFjNzAzMDMwMmE4MjU1OGIwZDQ1ZDQgcHkzaworODY2NjEgNWFiZmMxY2MyMmQxMWYzYzhjYTFiNmEwOGJjYzcyN2FiZDdlNTJmYiBweTNrCis4NjY2MiA2NmUwZjVjNjUxNTg2ODllM2NhNjFkZWVlZTUwZjY5NGUyMGYzNDQ4IHB5M2sKKzg2NjYzIGM1Y2ExYTliMWZkZjVmMmM0ZjdhZGZhOGM4ZTFlZjgzZDRlODU5ZTcgcmVsZWFzZTMxLW1haW50Cis4NjY2NCAwYjI3MTZmOGFmYjU5MDRkNDI4MjliNDk5YjE3YjdmNTViZTBhMjY3IHJlbGVhc2UyNy1tYWludAorODY2NjUgMGVmZDQyNTg5ZjE3MWUzODE4YTg4MWU5MDZhNmM4N2FhMmIyYzljMCBweTNrCis4NjY2NiBkYzZhMjdiZjg1OTI4Y2E3NWUzYmFhYmI0MGZiMTU0MzZiYzhlN2NiIHJlbGVhc2UzMS1tYWludAorODY2NjcgOWExOTA2OGJhOGIxMGUxMTNjNDRlMTQ4OWU2Y2Q2NDgyMTA0NzBjZiByZWxlYXNlMjctbWFpbnQKKzg2NjY4IDEwMmRiMGNmZmU1MWY2Y2M0YzllZjA3ZGRmM2Q0OGZmMGYyZmE1NjEgcHkzaworODY2NjkgM2U5NWYwODkyMzdhOWUyNzk5N2QyMWZkYzBjMmQxOTM5Mjk3MDAyYiBweTNrCis4NjY3MCAwODEzYzJhY2Y3NDE1NTE5NGRjMGQwMDlkYTY4YmZjYjhiNzQzMzNhIHB5M2sKKzg2NjcxIGFkYTY3ZGU2NDkxOTk3MWNhYjliYzIyNjJjMDczZGY1MjAwYWM5N2QgcHkzaworODY2NzIgNTM4MmNhOTVjM2Y2YzMxNmQ4ZmRiZjk2YzkwMjMwNTk0N2RlYzJlZCByZWxlYXNlMzEtbWFpbnQKKzg2NjczIGQ2YjZmOTlmNWFmOWUwMTUxYTIyODQzMWZkMWViNGNlYmE0NDJmOGIgcmVsZWFzZTI3LW1haW50Cis4NjY3NCBhYTY0ZDRmMWE3OTU2MTUzNWNhZjViMTY3MjczODU0MTM0YzY4Y2E3IHJlbGVhc2UzMS1tYWludAorODY2NzUgMmZmNzU4MzE1ZmExMGM1Yjg4NmRjNmVhZjI0OGVlNjZlM2Y1M2FjMiByZWxlYXNlMjctbWFpbnQKKzg2Njc2IDdiNzA1MTI4MjdjZjM5NGQyOWU4YjVhYzFhZDY0OWM3NDkwNjU0NDEgcHkzaworODY2NzcgMGE5ZmQ1Yzk0ZGMzNTk1ODlkNGNhMTIyYThiNGZjODEyNjg2ZDVlZSByZWxlYXNlMzEtbWFpbnQKKzg2Njc4IDRjMmIyYmU3MTQ1N2Y3NTBiYmM2Yzc2Nzk3MzRhMTBiYjAxMTMyZDQgcmVsZWFzZTI3LW1haW50Cis4NjY3OSBjNmI3ZGYxYmRmNTBlNDhiNjBkZDdmZDI0NDY3ZTc0ZWM3YTQ2MzhmIHB5M2sKKzg2NjgwIDdlZTU5MGFlYjJiMzQyMTI0ZWViMzZkYjA0MjFlMTI0OWEyNTZmZjAgcmVsZWFzZTMxLW1haW50Cis4NjY4MSBkOTc3NDEyMWE2ZGZkYTdmNWU5MGI5NDVmN2Y3MzQwYmVjNmY4M2RmIHB5M2sKKzg2NjgyIDZmMjVjYWMyODM2ZWFkNzk2MzllYjg0ZTVhYzEzOWJkMTA0NGRlYTIgcmVsZWFzZTMxLW1haW50Cis4NjY4MyA0ZjM1ODY2ZmQ4Y2IxMmVhODVlZmVjNjA2ZGRiZTYzZjY2OTY0YzgxIHJlbGVhc2UyNy1tYWludAorODY2ODQgZjE1MGI2Nzg1NDhlZGYwOWM5ODJkYWUxMWQ3ODgyY2M3ZDA4M2I5OCBweTNrCis4NjY4NSAzMzYyNTg5YzBjMDJhYmUyMDc1YmRmYmI5NWFiNGI1ZTUyOWFkMWZjIHJlbGVhc2UzMS1tYWludAorODY2ODYgZTBlY2NmYTlhZDZiYTBhMDRiZGM3ZDRiMjRjOWUyNWE4YTA3ODdmNyByZWxlYXNlMjctbWFpbnQKKzg2Njg3IDgyYWM3NTNiZjYyYTlhMGQ5MDA0NzZiZTYxMjZkOGFiYzM1ZmViNDMgcHkzay1jZGVjaW1hbAorODY2ODggZTg4NDAzMzFmNzc4ZTc3ZGJlMGRlNTk5NmIyZDlhOWU3MWIyYzk1ZiBweTNrLWNkZWNpbWFsCis4NjY4OSBhYTRkZWFmMzQ0ZDE5OTAyNmU3YzJkY2MyYzJjNWE1MzRiNDZmMGZkIHB5M2sKKzg2NjkwIGRjYWQ3MDZiMzhmYzQ4YjhkZWFhZGFmZjJiOTZmZTU2MzVmZGY3YjAgcHkzaworODY2OTEgMGM2NjgxNDZiMTI2YTZmZDQyYTE1MDAyYmFlOGQzYzkzNThkZDZkYyByZWxlYXNlMzEtbWFpbnQKKzg2NjkyIDhkY2IxNzc4MWU4MzI0ZmYwYWMyNTYzMWExMGFhZGZmZGEyMjA5YmIgcmVsZWFzZTI3LW1haW50Cis4NjY5MyAxMjdmNTE2OGE3NzRmOWNkZWY1NWY0NjA4MWE3NTA1NWE5ZTYzZjM5IHB5M2sKKzg2Njk0IDk4ZTFkZGQ1MDViYzI5YWZhNGE4ZmM0ZTgxODBhMmE2YTlkMTkwNTUgcHkzaworODY2OTUgNThhYzUxNjBkMWI3YmJiY2U3OGQxNTFkZWMwZWRmYjVhNmI2ZGQzOSByZWxlYXNlMzEtbWFpbnQKKzg2Njk2IDNmNjIzNTBlZGQyZTkzNjQ2N2UzNzBkNDUyMTYzNjZiNDNhYTE2NTQgcmVsZWFzZTI3LW1haW50Cis4NjY5NyA0MDEwOTMwMTgyODU0NGYwNDNhMTQ2ODAwZmE3ZjdlNTBiY2M3ODhmIHB5M2sKKzg2Njk4IGNjOWM1MWY5NTI0ZjlkZmUxYjMyMTZhOTQ0ZTY2MzA1ZDljNTllYjkgcmVsZWFzZTMxLW1haW50Cis4NjY5OSAyYzM3MDA2NWMxYjRkZTkxNTFmMDM4NDRlNTk4NWJjMDIwNDY2ZDA3IHB5M2sKKzg2NzAwIDI2MGZmMzc5MTE1YzdiN2M0NWU5ZTBlNmUzYjgxMzgxMzE3NDEwNDEgcHkzaworODY3MDEgZGNiNjBiZjI2ZGNlOThhNjBlMTg3Y2I0ODZlMDY2YTBjZjA3MTk0YyBweTNrCis4NjcwMiA1YTY5YTU4OWM2ZjA4Njk3ZWRlNWRlM2UzMzE5NWExNDg1NTc4MGU3IHB5M2sKKzg2NzAzIGE3Mzk4ODNlZTZjNTYwNjE3ZmM3NDNhYTY2NWNlYTVlNTVkZWE5NDYgcmVsZWFzZTMxLW1haW50Cis4NjcwNCA5NTIyODJhNTA0N2ZjMjFmZmFiMjI4NTFiMDQ1NzE3YWNmZWU1YWNiIHJlbGVhc2UyNy1tYWludAorODY3MDUgMzMwM2FiZTI5ZDBiMzhkMjI2OGExOWU0OWFlNTRkOTNjNzQ3ZTJiZiBweTNrCis4NjcwNiBhNGI3YTQxZGFiZDk0YzgzNjExNWFiNzA4MzkwNWUwZDc2ZWJlOTBiIHJlbGVhc2UyNy1tYWludAorODY3MDcgNjNmMTE0YjA5Y2FmYTkyMGY0MDA0ZWJiMzYwMjdmZWZhMGI2MzRhYSByZWxlYXNlMzEtbWFpbnQKKzg2NzA4IDBjZTU3OTUxYWVjNjJhOTIzMTE0MzJlMzc1NmMyODk3ZWQ0YTFjN2YgcHkzaworODY3MTAgYzg2ZjE3MTA0NjdlN2E1ZDRhYzg4NjFhOWMyMWQ4Nzc4OWM2ZmM3YiBweTNrLXVybGxpYgorODY3MTEgNmNhMjg5MGJhYjY3OGRmYjViMDNjYTMxODhmOTZhZjdkYTVlOGU3ZSBweTNrLXVybGxpYgorODY3MTIgMGY4YzUyZWM5ZjdmMTVjMWUxM2RkZjcxOWYxOTBiZTllMDJjNWJmOCBweTNrLXVybGxpYgorODY3MTMgOWFkZjM5N2Y1NmU3YjQzYzdkYTk3MTc2ZWFkZDAxOWNmN2Q2NzNiYSBweTNrCis4NjcxNCA4YjRhNTMxYWQzNTJhNDQ4YjhkN2Y5YTkzYTNhOTQxMWZjZmU1YmZiIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcxNSAxYWU1MWQxM2MyNWI5MjM1NjA2ODkzZDE4MzdiZDM2ZmEyZjVmZDY4IGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcxNiBiZTBmNGQ4YmZjZWFhY2E1NjQyN2ExZTIxMWFkYjQ2MjI1NjY1NGRmIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcxNyA5ZjIzYzVmNDg1NmMwMjQ0ZTg3OTM2NDgwNjkzZjViMTYyMTEyYzMyIHB5M2sKKzg2NzE4IGJhYjljMjA3ZTFjZjhhZDE2ZDIzMjQ0ZDBkYTJjMTQzZTdkZWI0OTEgcmVsZWFzZTMxLW1haW50Cis4NjcxOSAxNDA0YWIwNzZiNThmNDRjNjIzYzZmMWJhYmFmOTVhMjFiMmQ3ZTRmIHJlbGVhc2UyNy1tYWludAorODY3MjAgNDM2ZGFmMDk1ZTg5NjhlNWNlYWM0ZjkxYWRjYWVjNThiOWRiYjdlNyBweTNrCis4NjcyMSAwODI4ODE0ZTAzYWRkYjgyMGE3NTRkYmE0MjQ0MTNiYzVhMjkzNTQ5IGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcyMiA2MWY5ZDNiZjIzNGNmMGY5MGRmOTJiMzllN2ZiZDg2Y2JjNGNhZjVlIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcyMyAwOTI0ZjQwYmI2ZGM1MWM1YmNmNjYyNDhmZmViMmE0YzQ3NzVjN2NhIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcyNCA0MjU4ZTI4Y2Y0NDA2MGFlNDNkOWIzOTgwYmViYjBmYTYyOWQwYzJjIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcyNSA2NTJiYWYyM2MzNjg2ZTUyMGFlZDNkMGU3Yjc3YzZlNWE0YTI0NDNmIHB5M2sKKzg2NzI2IDI4ODllZDczNDFlMDdlOWZmOTRjYTE1Yzc5MzYyYTE0ODY4NTlhNzEgcmVsZWFzZTI3LW1haW50Cis4NjcyNyAwYTFiYWE2MTkxNzFhZjMyNDg2OWVjYmNiNmM3MTQ0MDI5ODc1OWVjIHB5M2sKKzg2NzI4IGYzYTYxZGFmYmY2YmFkODhmMTVmODFkN2Y1MzAzYTU1ZDQ3NDE4YzMgcmVsZWFzZTI3LW1haW50Cis4NjcyOSA0ZmVkMDA2NTk4MzE0MWJhMDJhYzA2NDYyNGJjYjY3ZDFiYjNjNDlmIHB5M2sKKzg2NzMwIDgzYjA1MTdkMGZjNWUwMmYxZTllYmI1NjA2MjE3OGQ0OGM3MGZkN2YgcHkzaworODY3MzEgYTc2M2VkM2Q2ZThjYWE4N2FjMTdhYjgyMDBlOTM3ZGU1Y2U5MjNmMSBweTNrCis4NjczMiA4MmRhMmFiY2U3MjIwYzM0NjMwYzVmOWM5MGYzMzI3MTFhNDQ0NGZmIHB5M2sKKzg2NzMzIDljZDEwMzY0NTVlN2Q2Mjg1YjRjMWZiMzQzZDMyMWIxZTZjNDc3MzkgcHkzaworODY3MzQgMzk1YWM2ZTMxOWE4OTU5YjMyMTE3ZjE1YTBjY2EzNzZlYjA4ODM5YSBweTNrCis4NjczNSAyNmY4MGY3MjRiNGZmMTY5MDA2NTcxYTVmM2Y0MGEwZWVlYjM2N2FjIHJlbGVhc2UzMS1tYWludAorODY3MzYgMjUzMmM0YmMwMzczYTE2OGNjZDhlNjc3OWM4YWZiYmU3NTcyNTEyMiByZWxlYXNlMjctbWFpbnQKKzg2NzM3IGQ2ZThiN2UyNTBjNjVhYzM3ZTkzOWRkODc3Yzc1MDBhNGE3MGI0ZjAgcHkzaworODY3MzggYjczODEyNjkwYzZlNjU4ZmJjOTlmZDdkY2QwNGQzZjdmODdkOWQxZiByZWxlYXNlMzEtbWFpbnQKKzg2NzM5IDI4NzcyNjViZGIwMWNhMTVhYjE1ZmY2YTcwYjViNDU4ZTg3M2UxNmEgcmVsZWFzZTI3LW1haW50Cis4Njc0MCA5OGNhNjU1MzIzYzA1Y2IzZDFhYTczMjZkOGYzNzlhNmEzNTI3ODRiIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4Njc0MSA0ZGQ3ZWIyZDk4NTZjZWYzZmU0MTYyZTY3NDJiM2I5OWJkODlmNDAwIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4Njc0MiA4NThlODZkYjQ0MmY1YWQ4MWFjYjQ0OTM4ODE4YTczYjQ0MzY0NWQ1IGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4Njc0MyBjZWFkMDRiM2M1ZWQxM2YyZjViM2JkYzRmZjFmYjg5OTc3NDJkMzAwIHB5M2sKKzg2NzQ0IDBjYjI2NTI2NDE5ZDg4YjdhNDZkNTM1ZWUzN2E1NzE2Nzc4ZWEyZmYgcHkzaworODY3NDUgYzU0YzQxMWQzZGE3YTE0YjZiM2U4OWUwMjU5NDFmMmRkNjI4NjQwNCBweTNrCis4Njc0NiAwM2Q5MzM5NDhiZjNlYWE4Yzc5YzY0OWRlYmQ1NmNiYjZjZjU5NTE2IHB5M2sKKzg2NzQ3IDY3ODgyMTA1ZGQ2NTU4YmNiNTBjM2YyNzcyNWFjOTcxN2NiOGU2ZTMgcHkzaworODY3NDggNGQzOTUyYTIxZTI1NzYwYTI5YTBjNjhjNzUzMzI4ZWI0NjE0NWU5NCBweTNrLXVybGxpYgorODY3NDkgYWU4MmM3NzA3NjljYWQ1NWYxZjIwNjk1OGRiODdjNTNmNWU3ZmQ0NCBweTNrLXVybGxpYgorODY3NTAgMTE3OGUyNTQ1ZGNiNWM2ODJhMjA2NWM1MmIzYWI1YzQ5ODJmOWVjNCBweTNrCis4Njc1MSBlZGVkNjkxNDk3Yjc0OGMzY2ViOGVkZTBjMWIxNjdkYzcyOGRhNTVmIHB5M2sKKzg2NzUyIGYzZGY5M2UyNjI2NzVhYzViOWNlOGQ3NzFmODA2ZTg5NzdmNWViNjQgcmVsZWFzZTMxLW1haW50Cis4Njc1MyAwZGE0MmNkMDE1NzY1NWRmY2ViMGNlMjExMDU4NzhhYmZkMWY5Y2U1IHJlbGVhc2UzMS1tYWludAorODY3NTYgNDU3YzdlNzA0ZWMyOTljMzlmNjE1MjdkZmI2NmVhMDVkMmQxZWU5MiBweTNrLWNkZWNpbWFsCis4Njc1NyAyZDZjZGM4MTg1Y2FlNTc1Y2ZkMjNkZmFiM2VkMTBlODM0OTU4YTBiIHB5M2stc3RhdC1vbi13aW5kb3dzLXYyCis4Njc1OCAxNDBkOGE2NTc3MDU0MzNhODM0NWVjODRjM2NmYjVkMjU1M2QxN2NjIHB5M2sKKzg2NzU5IDA2ZDIzMDI2ZjkwNDU2OWI3ZWUxNThmMmViY2FmZWI3ODA0MTk5ODUgcHkzaworODY3NjAgZjU5ZGJmMjhlMTJjM2Y2YjljYzhhOWE0NDZiMjBjODJkYzM4NTc2NSByZWxlYXNlMjctbWFpbnQKKzg2NzYxIGU0OGVkMmVmNmQ1ZmZiMzkyZDFiZDc4YjkwMzYyNjgyZDk3Y2JmNWEgcmVsZWFzZTI3LW1haW50Cis4Njc2MiA3YWI0ZmRhNzcwMzEyNzY1NTMxMjRiOGIwZDlmMjgwYjdkYjk0NWE5IHJlbGVhc2UyNy1tYWludAorODY3NjMgMTkyMzIwMjBlNDkxZDc4ZWYxYjA2YTNkN2E5M2VjNzk2NzUxMGUxNyByZWxlYXNlMjctbWFpbnQKKzg2NzY0IDhjZTlhZTVhMTU0MjdiMDdkZGZjMGEzYTE0YTYwNjRhZWYyNjVmY2YgcmVsZWFzZTI3LW1haW50Cis4Njc2NSA2YzM1YWJjN2QwZDIxOTJlMzIxMzlkMjFiYmY5NzI1ZDg3OTllMThlIHJlbGVhc2UyNy1tYWludAorODY3NjYgNDVhYjU1ZmEzZGMwZGY5NTgxNjRiYzAxNDQ4N2IwMGEzN2ZmMDA0MiByZWxlYXNlMjctbWFpbnQKKzg2NzY3IDc3NzcxYjA4NWVjYTc1ZDRiNzcwNThhM2M0OWRmZGU2NDFjMjY5MTkgcmVsZWFzZTI3LW1haW50Cis4Njc2OCBhODAzZmQ4NDFmZDE3YzNjNDM1OGYyOGQwYjFmNjJiYjU4ZGNjODZkIHJlbGVhc2UyNy1tYWludAorODY3NjkgZDZjNTc1MDE1M2JiMTE4NjQ0YmUxMDY5NTlhYTE1NTI3Y2JhZjEzOSByZWxlYXNlMjctbWFpbnQKKzg2NzcwIDM3YjM3YjZhODk3MmJkNmYwNTY4ZDkxZjk1ODhiZTZlYTA3ZjI1NmIgcmVsZWFzZTI3LW1haW50Cis4Njc3MSAyOTU1ZjMzNzk2OWU4MTY0NGYxMDdjYzJlNzg2MTlkMjBmNjA0NTk4IHJlbGVhc2UyNy1tYWludAorODY3NzIgZTEwZjYxOGM5NjdhYzI5M2M2YjJhMTZlNTg0YTEwODZkYmQ1OTY1ZSByZWxlYXNlMjctbWFpbnQKKzg2NzczIDgzNWMxNzYyMzlkMDI1N2IyZTY5NjYwMjE5MTE1ZGVjY2U0MGQxNzUgcmVsZWFzZTI3LW1haW50Cis4Njc3NCBmYjJhYTQ1YTFiMjJlM2IxYjVmMzM0Mzg0NmExZmUwYzUzMTI5YWIyIHJlbGVhc2UyNy1tYWludAorODY3NzUgOGI2YTllY2JlOTg5YzBiNGMwYjdiZGY4YmE1ZjlkZTU3NWY1OTRiZiByZWxlYXNlMjctbWFpbnQKKzg2Nzc2IDJlNTgxMjZkYmFkMDg3MDNiZTJmMzNjMzhhODdjNDFkZTZiNTZjZTcgcmVsZWFzZTI3LW1haW50Cis4Njc3NyA0MTM2NTE1Y2RmYWNkZmM3ODQ0OThhMmJiN2MxNGQzYWI4MjQ3YmEyIHJlbGVhc2UyNy1tYWludAorODY3NzggN2MwZWI4ZDU2MTQ2YjlhZWFmMzk3YzRlN2MwZDRmYjdmMDE2MGExNiByZWxlYXNlMjctbWFpbnQKKzg2Nzc5IDcxYjc3MTUxOTMzM2EwNGIxMjMzZDFiYTVhZmRmMjY2ODQ3Mzk1YTUgcmVsZWFzZTI3LW1haW50Cis4Njc4MCBhMzcyZmM0ODYyODE2Njc0MTY4NDQyODExNTIwZGEyOWRjN2ExNzYxIHJlbGVhc2UzMS1tYWludAorODY3ODEgNDVlNDkyNjllMGQ4ZWYxZGQyODIyM2Y2NDlhMmVhZTdiYTY5MTIzYiByZWxlYXNlMzEtbWFpbnQKKzg2NzgyIGU3NTkzZmViNWFkNWMzZmIyMmI3NDg4MTA5ZjdiNzdjM2UzMDUxMWUgcmVsZWFzZTMxLW1haW50Cis4Njc4MyBhOWYwZWM2MDRjOGFkMDg4MGJkYTE5N2QxZGIxOWU5YTU5YmVjMDIwIHJlbGVhc2UzMS1tYWludAorODY3ODQgMDVlZTZmOGMwMjYwYWE1YmUxZTVhMWY0Zjc2ODkxNDRkNWU5ZmJkYyByZWxlYXNlMzEtbWFpbnQKKzg2Nzg1IDM5YjVhZjc3M2U3NTk2YWI3NzcxOWFmMTNkMDY1Njk0N2Y1OWRmMjcgcmVsZWFzZTI3LW1haW50Cis4Njc4NiA5YmVhZDkwOWQ4ZWZlZGVjN2Y0MDYzNGQ2MDM2OWJlNTRmYjY4ZGI3IHJlbGVhc2UzMS1tYWludAorODY3ODcgOWIzNDRiZTFiZTlhN2U5YjkwMjU0ZWI0YWQyYmVjODA3NTlhYmVlNiByZWxlYXNlMzEtbWFpbnQKKzg2Nzg4IDNlZTZkMDM4YWY5YjQ2ZTgwOTM0ZmU5NzBjZWUwZTY3NzEyNjdlMmYgcmVsZWFzZTMxLW1haW50Cis4Njc4OSA3MjgxOTM3YjJkNjViM2Q1OGJjN2NiZDU4OWI0MzczOTQ0YzVlZmZiIHJlbGVhc2UzMS1tYWludAorODY3OTAgOWQ2ZTI0NjVmNTkyNTQ2NGZiMDk0ZGVlNWUxOGVhMmQ2ZWQxZDgyOSByZWxlYXNlMjctbWFpbnQKKzg2NzkxIDRlYTFjNmE0ZTkyZDBmYjk5NmI0NDk4MmUxNjgxZWY3ZGE3MTJiZDIgcHkzaworODY3OTIgMmMxNjcyODE2MmZkZGJlYjZiMmZjYjJmOWZhMjI4NzdmZjFmMjZhMSByZWxlYXNlMjctbWFpbnQKKzg2NzkzIDAwMDBiYmFiMDhiNDQ3Njg0NmMwMjFlNDU5NzkyMWZkMDY1MmUzZjQgcmVsZWFzZTMxLW1haW50Cis4Njc5NCBiMGU5N2RiZDk4Yjg0MzhlMWM2ZTgxNzYyYjQ0M2M0ODk1YjRhZjBiIHB5M2sKKzg2Nzk1IGZhMDE3YmNhZWUxMDAwM2IyMzg4YTFkZjMyNDE3ZmVhZWI4NjY1YTkgcHkzaworODY3OTYgNTA4NGNlOTQ4NDM3ODU5ZDUxYTI2NzYxNTA0NjcxYThjYzBiYzNlNCByZWxlYXNlMzEtbWFpbnQKKzg2Nzk3IDQ2ZmVhZWM3MjliZGM2N2JmYjIwNDkxZmRhY2Q2NjI5ZjRhNzBmOWEgcHkzaworODY3OTggZmI1YzQ1ZDM4ZTJhZjUxNTBkYjI1OGMyZjU0MzM4NjkwMGQzOWI5MiBweTNrCis4Njc5OSBhYzUyMDdkZDhkOWEzMzQ2NjNmNzg3NDg4Njk4YTU0ZTNhNzc1OWNmIHB5M2sKKzg2ODAwIGFjZWI0NTE2YThkNDRhMmQ1MGFlNWM1NmU2NDNhMGNiYWUzMTVkMjEgcHkzaworODY4MDEgYmY1ZjQxNzRiOGMyZDU4ODhhMDhiNGNjNmI2MzljZWQ1YjFlMDI3YSBweTNrCis4NjgwMyAyMzFiMGJiYzFmOTA0NjRjNWRkMzIyODc5ZWY4YWIwMmRiN2M3YmFhIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NjgwNCAzMjk4NDJkZjA2YTEwYTNmNjkxNWIzYzEyMGVkZmNhMDE1MTk4ZjU1IHB5M2sKKzg2ODA1IDBlMWRkNDU0OGFhMTdjMWIwOGJmN2VkOGVhMjI4ZjFlZDY2NjI4OGQgcHkzay1zdGF0LW9uLXdpbmRvd3MKKzg2ODA2IDEzMmE5NGVjMGNlODBkNmVlNjVhNzdlZTY1MDRiM2RiYWVmMDVkZTUgcmVsZWFzZTI3LW1haW50Cis4NjgwNyA0Mjc5ZTQxN2IyYTAyNGIwY2I0YmU4MDJkMTEyMDlkMmFkOWUyMDMyIHJlbGVhc2UzMS1tYWludAorODY4MDggZmFkZjc0YzBjNTA0M2Q5Nzk4ZWIzOGE2MDJkYTY3NjBhZTIzZGU1YiBweTNrCis4NjgwOSA3ODZlZTExZTBjODQxYTBiNTNlNjE0NzEwMmRiZWQ1MzlhZGI5ODRhIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NjgxMCBjN2EzNDJhNzk4ZTc3MTM3NzkwMDQ2Zjk4Y2UxOTljMTkyYTcyYjRkIHJlbGVhc2UzMS1tYWludAorODY4MTEgNzQ5YjFlNzEzOTFjYWUzNjIyZTQyODA1ZjM2N2IyZjZkZDFiZmUwOSBweTNrLXN0YXQtb24td2luZG93cworODY4MTIgYzgxNjNjMmExYjZmNGRlMTQxNjYwZTNmYjM5MWM5OTJhNzI3M2U4ZCByZWxlYXNlMjctbWFpbnQKKzg2ODEzIGM4MmNhM2JlYjRkZjE1ZTk1MzJkYzEzNzVmMzlmZGJjNmRiYTk4MjcgcmVsZWFzZTI3LW1haW50Cis4NjgxNCA5ZmVmZjE3N2Y0NGQxMjY5YWUyM2Q2MzY5MGNiNjMxMWMwZWY4Yjc2IHJlbGVhc2UyNy1tYWludAorODY4MTUgYWQ3OWY5YjNhMDIxOTcwYWYwZWVkNGUyYzdmNDFmZDM3OTdkMzQ1OSByZWxlYXNlMzEtbWFpbnQKKzg2ODE2IGYyMjIyNWE5ZDcyMDgyYWY2NmE5MzMzMDgyYTAxMWUzYjRkZjJkN2UgcmVsZWFzZTMxLW1haW50Cis4NjgxNyBlYTRlYzZkZTljZWZlMDlhODZkOGIzMjRhMmM4ZDBkODQ2MjgwZjZkIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NjgxOCBhYmJjNThhMDZlNDNkNDhkOWVmM2Y4YjU0ZTZlZjY0OWQ3NTM0NDQzIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NjgxOSA5NmNhOTlkZmVmZDhlZTcxYjQwM2RhOTZkYjliZWQ2ZDZlYmU2NGVkIHB5M2sKKzg2ODIwIDg2YTY1MzlkMmMyNTM1ZGVlYzUxOTQ3ZTQ5ZDZiZjM4MjE4N2Q0NWQgcHkzay1zdGF0LW9uLXdpbmRvd3MKKzg2ODIxIDBiNjM0MDczMDkxM2M0Y2M1NTc1OTZlNmQ4MjFlZTYyYmQ0YTU1YzQgcmVsZWFzZTMxLW1haW50Cis4NjgyMiBiNGJmZGM1MmFkNTEwNmIxNzRhOWRjMTY3M2VmYzhjOGUzMzQ3Y2M3IHJlbGVhc2UyNy1tYWludAorODY4MjMgY2NmMjYzM2I5NWRkODlmNWMxZWYxNTg5NjQzNTE0OWJkY2I2OTRjOSBweTNrCis4NjgyNCA2MzM0MWRkMzYwYWY1ZjcwMzg3MDJiZjZkOTE0ZmMwN2RkOTBhMWE4IHB5M2sKKzg2ODI1IGZlZTk4YjYwNDEzOWM3ZjViYTgxM2FhNzcyODZmZTRjZmI5ZjJkYzUgcHkzaworODY4MjggNTk2MjM5ZGEzZGI3OWRlZDBjNTgyYWQ4ODRmYTZhNTVkZTg1ODBlOCBweTNrCis4NjgyOSBkM2JhZDQxYWQ3MDE3Nzc4ODg0NTQxZGUyNzM0MjlkYjRkOGFkOTIzIHB5M2sKKzg2ODMwIDU4YzJhYzYwY2NiOWRhYjRkMjVlN2UyZTkwZGRlMjc2OWJkYjQ5N2YgcmVsZWFzZTMxLW1haW50Cis4NjgzMSA4MmFkZTIxM2E2NmRmOTJmYjc0Mzc5MjExN2Y1ZjBkYmQwYmY2ZmQ3IHJlbGVhc2UyNy1tYWludAorODY4MzIgNTM5NWY5NjU4OGQ0ZjAxOTlkMzI5Y2I3OWViMTA5NjQ4ZGM0ZWY1ZSByZWxlYXNlMjctbWFpbnQKKzg2ODMzIDdlMzhmOGZiYmFkZGFiOGExNmE2NjVhNDk0YWZlY2ZjZDUwZGYzZTggcmVsZWFzZTI3LW1haW50Cis4NjgzNCBhNGY3NTc3M2MwMDYwY2VlMzhiMGJiNjUxYTdhYmE2ZjU2YjBlOTk2IHJlbGVhc2UzMS1tYWludAorODY4MzUgZGMyNmU0YTdkMmU2MGQwNTIzZTYxMDIyMWM1NTk3MTVlODI5OGU0NiByZWxlYXNlMzEtbWFpbnQKKzg2ODM2IDYzYWIzOWQxMTg2MGUxNTYyODMwNDAzMmRiMzdiYjVhOWZjZTFhMmQgcmVsZWFzZTMxLW1haW50Cis4NjgzNyA4NzM3ZmIxN2Y0NDQwMWEwYTJlOTdkNTRjOWFlNTBkNWZjNGNjNzM1IHB5M2sKKzg2ODM4IGEyN2ZiMWU2ZTA5ZDQ0ZTRmMTFkNzdmNDk3MjE2NzQ0YmRhZDJlYWEgcHkzaworODY4MzkgNDFjZDA5MmJlOTNhYTQwNjQ0YmM4ODVjNzkzZjc1NDNjNDFkOWM5YyBweTNrCis4Njg0MCBmOTUxMjc0YWYzYzdmNTdjZjA4NDNkMGRmNWI5ZDc4NGNmYjFhYmNiIHJlbGVhc2UzMS1tYWludAorODY4NDEgNzJmMGJlYTA1NDU3NzkwMDg0YmY4Mjc4YWJhMDZlOWYwMmY1ZjhiNCByZWxlYXNlMjctbWFpbnQKKzg2ODQyIDFiNzdmMmViMTYwNjc4NjZhOGI5MjVlOWZkZWUzZmI4MzM5MDViNGQgcHkzaworODY4NDMgMGYwYzZiODc5Nzk2YmVlNzdlYTNiNzVjZjAyZGFmMjNiMjMzODlmZCBweTNrCis4Njg0NCBkMGExNmY5ZjM3NDFmZDNjOTM0Y2ZmZDM5NDkwNzYxZjc1NmNkYzg2IHB5M2sKKzg2ODQ1IDUzODE4ZTRjNGZjYTU2NDg4NDA3ZDljY2IyZjhjOGMxYmE2NWY2NjEgcHkzaworODY4NDYgNWJlM2VmYjQ3YmZkNTgzNjg3ODZiNTJlMzFjMGE0NTgzNzZlNmJlYSByZWxlYXNlMjctbWFpbnQKKzg2ODQ3IGUwYTUyNTIwMmM3N2NjNjc5NzU1ZmY4MWVlMzUzNTJlMWViYmRhNjQgcmVsZWFzZTMxLW1haW50Cis4Njg0OCBjNGFhYzhlNjk4ODg2NWI0MGVmN2E4ZjcxNzg2YmFkODg3NWQ1N2Y3IHJlbGVhc2UyNy1tYWludAorODY4NTAgMjdlZTQyYjBmYWY2Y2NiMDdlMzBiMjFkOWQ2ZjY0YjdjZTc4MGM3MCBkbWFsY29sbS1hc3Qtb3B0aW1pemF0aW9uLWJyYW5jaAorODY4NTEgNzJmZjQzNTMyMjE0ODBiNjNkNjgxODUzYjJjODAyYmQwZWY5NGY4MSBwZXAtMDM4NAorODY4NTIgZDI0YWEzYjFlZTI4MTY5NzQ0OThmZTMxMzM1YTZkOTAwNjI3NmVjZCBwZXAtMDM4NAorODY4NTQgMDNkMGQxODY3MTNiNGZlNDk3Y2NlODRkMGE4MzE3MzE0MjVjOTNlMCBweTNrCis4Njg1NSBiZGQ1Nzg0MWY1ZTJmNDZmOGMwZDZhMDJkNDI3MDhlYzU3NDQ0N2I0IHB5M2sKKzg2ODU2IDkzY2Q0ZGU4ZWUwYjA0YTEzMDJmYWNiODBmZmJkNDI2MjZkOGIwNTYgcHkzaworODY4NTcgNjllYzc3NTI2MTgwZmJlOTBlMGIyNDZkMmI4NjM3Yzc4Y2RmZmQwYSBweTNrCis4Njg1OSAxNmUzYzk1YmM0NmM1YTRlY2JlMjk3NjYzNWMxYTdmOGZlYjU2YWVjIHJlbGVhc2UzMS1tYWludAorODY4NjAgN2E1ZjI2NTQ4ZTFjMjg1MzBjODc0YWMxMjg2MWI5M2ZmNzU4YTQxNyByZWxlYXNlMjctbWFpbnQKKzg2ODYxIGU1ZmNiNDIyNmI0MmE2NzM2ZjQzZGYzMTQ3MGVlNzk0NGVlOGFiNDAgcHkzaworODY4NjIgMmUwZDkwMDlhYjZiOWUxYzcxZTFmOTZlNzJkOWQzZjMwMmIyOWRlYSByZWxlYXNlMzEtbWFpbnQKKzg2ODYzIDhmZDEzYzVkMzg4MjM5NzQ0MWI5NzA3NmE3MzRmMDFhYjkzZGY2Y2QgcmVsZWFzZTI3LW1haW50Cis4Njg2NCBlODEyZGIzNDRhNjVkNTUyYWMwMjAwZTU0ZTc3ZTFmOGYyNGZjY2FjIHB5M2sKKzg2ODY1IGVhZDUzMDcwM2I5YmU1Y2I4OWZhNGMyMzFmZTdmZTkzY2YzNTdhNjcgcmVsZWFzZTI3LW1haW50Cis4Njg2NiA2NjdkMjgzNDQwMTcxOWRhMmZhNDM5NWQ5N2EyOGRlMzk2NGRhOWY1IHJlbGVhc2UzMS1tYWludAorODY4NjcgY2Q2ZDBjYWZmZWYyNGJlMDZkMmVjODgwNmI2YzIwOTA4ZjMwZGFjNSBweTNrCis4Njg2OCBiMGZmMzMzZWMzZGExYmQ2MzI2YTE1NDdhMTcyYTA4NDZmODQzNWZlIHB5M2sKKzg2ODY5IGU4OWFhOTE0NzYyNGNhNjM5YjlhY2UzYjNhNTgwMDIxN2M2MTZlNmQgcHkzaworODY4NzAgZTczOTJmZmVlMDcxYTc2YWMwZWNiNTE4MDUxYzI1MjIyMjA4M2YxMyBweTNrCis4Njg3MSA2Y2E4OTIyZGFmYjUzYjU5ZDhlNzk3ZGVmZjdkZmFjZjQ1Zjk0MmIzIHBlcC0zODIKKzg2ODcyIDBjY2E5NjYxNTM5NTFiOTYzYmYxOWY1MWEwODA4YjFhMzhkY2UyYzAgcmVsZWFzZTMxLW1haW50Cis4Njg3MyBkZTZlNzljNWIxZWQ0NDNmZjhkNTRiMmZmYmY4NjdkODQyODRkY2M3IHJlbGVhc2UyNy1tYWludAorODY4NzQgNjc5OWQ1NGRiMzc4MTJhYmYxMGExZDJlMjA4Mzk1ZmE3ODUwM2Y0YyBweTNrCis4Njg3NSBlMzJhMzAwYWNhYzJmYzg2YzdkM2M0M2VlM2QxNDg0NzEyODFhY2M4IHB5M2sKKzg2ODc2IDllOWE3MDliMzg5ZWNhZTM2YjE0NmY5MDc4OTExYjFlZjY5MTc2ZTIgcmVsZWFzZTMxLW1haW50Cis4Njg3NyBlZDRiZmI3NWQyOGQ4ODA2NDVjODM0NTc5YWY1YjZmYTgwYTdmZjNhIHJlbGVhc2UyNy1tYWludAorODY4NzggMzEyYjI5MTZjZmQ0NWQ4YmYzMTFiZGJhMjYyOTNmYTg4NDk1ODYwYyBweTNrCis4Njg3OSAzMmU2NzVkYWEwZTUxYmZlMmY1NGQzNzJjY2JkZTJjNGI3YzNlYWU2IHB5M2sKKzg2ODgwIGYxNmJmNGNhZTVkNzM3ZmFmNDM2ZjBlMWVmZGNiNWY0NGRkNDcxYmYgcHkzaworODY4ODEgMjhiNjdiNTcwZjJiZjlhNTliZTQzNTJkYjE0Y2ZhMjI1NWRlZDQzMiBweTNrCis4Njg4MiBiNDA1YTdmMGFlZDcxYjhkYTU5MWJmZmUwZDdlMjBkZWYwNGI5YjM5IHB5M2sKKzg2ODgzIDgzMDRiZDc2NWJjZjc3ZjgzN2Y1MTY5YTg4YjVkNzQ0YjVlMmQwMzIgcHkzaworODY4ODQgNzI0OTIwYTAxNWY3MDFhMjFkZDdlMzI5YTQ4ZjU0ZTEzZDFkZTFhOSBweTNrCis4Njg4NSBlZGE4ZGEzYTc1YjNjNjI0NzAxNDM2OWRlZDU4OTBhZjIwOWZjNzliIHJlbGVhc2UyNy1tYWludAorODY4ODYgZGViOWYyZDM3YjYzYmQxMzFhYTk0ODg2OGFkZTNmZGU0OGM0ZTQwOSByZWxlYXNlMzEtbWFpbnQKKzg2ODg3IGZkNmU1NjUzYjMxMDI1MDYyZmI3YmE2MzljYzIyOTg2ZjJmYjAxZjggcHkzaworODY4ODggMTgzOTllNjIwYjQxMTBjZDQ5NmNjOTdlYTNlYTljOGVjYWMwNTAzMiBweTNrCis4Njg4OSBlNDQ0MTBlNTkyOGVlMzExNGM2NThkZjY3Y2QxODBlNWI1MDExNWQ5IHB5M2sKKzg2ODkwIGI4MGY1YmYyNmU5ODdiOGQ1NTBhNTMzZGM4ODQyNzU0NGFmMjkxNjEgcHkzaworODY4OTEgZjc5OTI4YWRhYjU3OWYzY2YxYWJmOGZkY2JlYjdhZmU3YzRiY2U0ZiBweTNrCis4Njg5MiA3ZWEwMmYzMWMyNTJjYmViNDNlN2ViYWNlNDkyMTYxMGE1Y2JlODRlIHB5M2sKKzg2ODkzIDJmNmQwZjM2MWFiOTJjOTdjNzk3NmU0MGE2NzEwNWIwYTQzMTc0ZDYgcHkzaworODY4OTQgMzQwMzY5ZmIyZTcwZWY0OTkxNzZjOGEzNGFhYjMzNzY2NTE0OWRhMyByZWxlYXNlMzEtbWFpbnQKKzg2ODk1IDc0NjdhMWMxMWFlYjQ2NTQ0NjU4OGFiNmNmODI2MTExMWQ3MTZmOTMgcHkzaworODY4OTYgNjU2ZDI0ZDE5NzQ5YjBiMmZhYzNkOWFkN2NhN2U4ZDJkYTE3N2E1MyBweTNrCis4Njg5NyBkNjEwMDc0OTcwZDc5ZTNmNTU3YjI3ZDFjNmI1Yzk4N2FjMzJhMDJkIHJlbGVhc2UyNy1tYWludAorODY4OTggMDRlOGJkOWExYWJhZTM3OTk4OWQ1MzFjODJjODQyZDQ1ODVjMDBjZSByZWxlYXNlMjctbWFpbnQKKzg2ODk5IDdmZDJjN2RiZGRhNjgzOGJkZjhjYjU4YjkwYmQwMjZkNmEzYTBiYTggcmVsZWFzZTMxLW1haW50Cis4NjkwMCAyOTg0YjU3ZDY3ZGE0OTNiODk5YjNkMzIwNTUxZGRmYjQ0ZDJmOTFmIHJlbGVhc2UyNy1tYWludAorODY5MDEgMmIyZmM0MjYyMTcwMWY4OTY5NTQyMzEyOTQ5YTc3MDhjOGZkOWZjYiBweTNrCis4NjkwMiAxMTU1MmVhNmE5NDRjM2IzMzY5MDdiMWEwMDlkNWQ5ZTAzNjIzNjNkIHB5M2sKKzg2OTAzIDY5M2Y3NDMwYzNjYTUwODA3YjMwNTBjNzE2MGY3YzM1YTk4NGFmOWEgcHkzaworODY5MDUgZmVlM2EyZjI0M2U4ZTdmMmIwMWQ5ZjEwNDQ3ZjE2MmFiM2ZhMzczYyBweTNrCis4NjkwNiAwOTIzZDliM2RlNmVhODIyYzI5ZDUxYTJmMTMxOGViNDZlYjRlZTBiIHB5M2sKKzg2OTA3IDVjYjUzZjA5NGMxYTg4ZDBjMWVjNThkZTE4MThjZmU3ODA5OTMyNzAgcHkzaworODY5MDggOTE4NGEzOTA5ZGUwYzk5MzkyZGJlYjM3NGU0NTQzMjkzZDUyOTQ0YiBweTNrCis4NjkwOSA4Yjk1ZWEzMTcyNWIzZWU4MWVhMjY4YzcxNTA5NDhkOGQ2NWNkNDZlIHB5M2sKKzg2OTEwIDM4YmVjOTBmZDhhYjYwM2Q4ZmY4ODkxOTQ4ZWQ5YjljYzkwODhjN2YgcHkzaworODY5MTEgMDBjOGNkZjUzOTM2YjM1YWJjMjFhZjAxNDNmMjkzOGRkOTMzNGM2OCBweTNrCis4NjkxMiAxNDg5NmYxMzEzZGIwOWZmNGNhZjM1MTBmZjVmMGNhN2IwYjQzMGE5IHB5M2sKKzg2OTEzIGZmN2M1OTM3NzkwMzAwYTYyYzE1ZGI4ZDY0NjIxYzM5YjFiNjdiMDkgcHkzaworODY5MTQgNzE4MDk4NWMxYzIyM2QzMzIwZDliMjY2MjY3YWM0ZTIyZTVhYjg3OSBweTNrCis4NjkxNSBlNWMyOGQ2NzY5Y2ZkMTcxNmYyNzMxZTNkYmMxYWE5NTk3Yjk4NzVjIHB5M2sKKzg2OTE2IDJiYWFkOGJkMGI0ZmM4NjVmMmQ4ZDRiZTI5YzQyMzYwZDA4MTk1ZDMgcHkzaworODY5MTcgMzcwMDJlNGZmNjc3MmZiZmVjOTFjNjE2Yzg1M2QzYzMwNGExZWJkZSBweTNrCis4NjkxOCA1ZGEwOTNiNDljMmEyZDM0MjM2OGMyOTY3ZTUwZGY5MTEwNzRmYmM0IHB5M2sKKzg2OTE5IDEzYzcxYzhjNWMwZjg1ZWQxNWMzMmQ5MDUzNjU2MjllZjA4YmUxMTEgcHkzaworODY5MjAgNGUxOGI5YmUyNWE0MDhlMWI4ZDNlNjc1NmRmYTYzZDI5YmUyNzc2MCBweTNrCis4NjkyMSBjZDg4NzY3YjhkMGM5ZmYxNDkxMmNmNWIwOTAwNThiNzM1OWZlNDE0IHB5M2sKKzg2OTIyIDQzOTY1NTgwYzU1NmRiOTQ1NGJmNzAxNDA4NjhkZmE3ZGIyOTYzYjQgcHkzaworODY5MjMgYzViNTQ4ZmQwYzhjODI2MTMyYzI1N2NjNGMwYzQ2Mjc0Y2MwYjJhNyBweTNrCis4NjkyNCBiOTMxN2E5YTNkM2FiNzQ3ZjYzZWZjMTkxOTY4ZWExMzFjZjcxNzQyIHB5M2sKKzg2OTI1IGUzMWE0OTcyMDg0YWY1MjY5NTI3ZmMxMGQwNmU4M2Y3NzgzZTAyODAgcHkzaworODY5MjYgMDc4ZTVjN2IzMTU5ZjBjYmZmMGU2Nzc0NzNkMTQ5ZGVhMzVjOWFhYiByZWxlYXNlMzEtbWFpbnQKKzg2OTI3IGU3ODQ0YjdmNmVkNDllYjgyZTQ4OTMyODc0MzVhNDEwYzg4YTg1N2UgcmVsZWFzZTI3LW1haW50Cis4NjkyOCAwOWVkNDExYTEwOTA2MjhlNmMzNzcwOTM0ODIzNGJkNjM5ZGNjOTdhIHB5M2sKKzg2OTI5IDkwYjZjYmYyYjExYjYxM2NiYWJiMjgyN2VlYzI3MjYxMzhlMmEyZjAgcHkzaworODY5MzAgODljZGEwODMzYmE2MDM5MWMxNjIxMzc5NDBkNDhmY2VjMjMyNmFkNyBweTNrCis4NjkzMSAwZGRmYTViY2ZiZDM3MDNhN2YyOTVhZjY2NmRlN2IwMzRlN2JiMjAwIHB5M2sKKzg2OTMyIGQyZWE3MTFhYjEwN2M1YjQ4NjkwMTg0ZmMyZjg1MmM2ZDQzZjhhNDUgcHkzaworODY5MzMgZGM3MzQ3MjkzNWM1OGRjOTI2MTNmOGFjNDQ3ZGIyY2Q5NWJhODA1OCBweTNrCis4NjkzNCA3ZTQ4MzM3NjRjODhjMDAzN2ExZjlkZmY3ZDRkYWY3MDYzNjQ0NGRmIHB5M2sKKzg2OTM1IDlhMjA1ODMwOWMxYWE2MDdkMjNjMTY4OWUwMmFhNzNlMGM0NGQxMWMgcHkzaworODY5MzYgYjhiYmMwZmM2MTkxODhjNDJlMWVlNDAzMzJhYmQyNzJjNzYzNGExOCBweTNrCis4NjkzNyBlMzM5ZmNhNmU1MWExMDE2ZjE4ODU3MDZkYTQwOTQ0NTFhMzRlN2MxIHB5M2sKKzg2OTM4IGEzNjMwZGQ5MjIxODBiMjE5ZmIzMWZiMzhhY2Q0MmJjMzljNmM0NzAgcmVsZWFzZTMxLW1haW50Cis4NjkzOSA0NWFmNWEwNjhjYzdmNDA2YWY4MWYzNmU5NWExNTk4ZGVjYzNiMTc1IHJlbGVhc2UyNy1tYWludAorODY5NDAgMWFkZDhjZWY3NTI3ZmU5YTZmZjY0OTEyOTMxNzkxYWI3MjAzMTA4NiBweTNrCis4Njk0MSA1ZjI0MTI4NDNiYjkxZTZkMWRmMjkzZThhYjE4YjEwNzRkOTA2ZDRlIHJlbGVhc2UzMS1tYWludAorODY5NDIgODYyOWMyYTIzNGRiMDM2ZDNkYjg0NjkwYjg0ZDZhZDFkNzI5Mzk4MSByZWxlYXNlMjctbWFpbnQKKzg2OTQzIGRlZTIwMTU1ZmQ2NTc0OGQ4ZmMyN2I0YmQ4MjUyZjQyNzk2MGY0MDYgcHkzaworODY5NDQgMThkODlhMzBmYWJmOTkzMzY5MWY0Njg4ZWUyNDE0Y2Q4YjFiYTU2NCBweTNrCis4Njk0NSBlMTFmN2U2NjIzNjkxMDZkMmEwN2IwM2UwYWM3OGY4ZTlkYTJlNTYzIHB5M2sKKzg2OTQ2IDk5NmY4NGU1MDViZTM1MmRkMDk0NWJjMDNkY2JlYTRhMWRkNDVmNWUgcHkzaworODY5NDcgYmY0OTVkZGUyMGUzOTMyZGE5YjcyY2IyOTZlN2JlYTBhNWIzNzFmZCBweTNrCis4Njk0OCAxMDk4ZmFiODVlNDcyNzM2YTg4YWY1M2NhNzdkNTdjOWMxMzg3NmJlIHB5M2sKKzg2OTQ5IGY5MDU4MmM2Y2I1ZmY2YjcyMzUxYmMyOGJkZTQ3N2FhNmU0Njk4YWYgcHkzaworODY5NTAgNjRjNjQyYmI3ZmY3OWFlNmIyNTFlYmVlMmU1ZWY0YjAwNTBiYjVhMyBweTNrCis4Njk1MSBlMDIwMjFmYmZlMjJiNWM1M2JiYjlhZWI4ZDc3M2JlYTZiYWQ2OWYxIHB5M2sKKzg2OTUyIDFjYmZlZmZlYTE5Zjc2N2RhNmEzMmExZWE5NzZmOWQwMzM5NmY2N2UgcHkzaworODY5NTMgNmU0OWFmMmUwODkxMDlmYzhhMjg2ZGQ3MTNkZTZmNjQ1MTdlOTgzMyBweTNrCis4Njk1NCBkN2RlMzFhZTk1YTQ0N2NjNTBiN2QxMzVhNTMxNTBhYTFkYjIyYzExIHB5M2sKKzg2OTU1IGQ3ZmExN2E0NjY5ZGI4NWFhYmQxNTA5NjFiMzk2YTc2ZDMyOTYyOWIgcHkzaworODY5NTYgYzYxNGY3ODY3NWQ0YTcwMTI0MzY0OGE0NTg4NjA1YTk2NjM5NGFkMiBweTNrCis4Njk1NyAwOWQyM2ZiMGQ0MjhlZGQ0MDQxMjY4YTRjMGNlM2RkZmM1MzliOWM1IHB5M2sKKzg2OTU4IGEwY2Y2NGE1MjkxZTc1YTMxY2UyM2JiOWQ5ZmRiYzZkMTIyNmVkM2MgcHkzaworODY5NTkgNzg1MWJmYjFiZDczMzlmODYwZWRiM2IxNjc4OTY1M2Q4YjMzYjg5ZSBweTNrCis4Njk2MCA3Njg1NGU0NWM0NjUyNzBmMmQwMDE4MDYxNTA2Y2ZhMDQ4ZTA5Mzg2IHB5M2sKKzg2OTYxIDhiZjkwYjg3MTBkMDM3ODI3YzkxNDE2M2Q1MDk2NDFlYjkwOGVhMWMgcHkzaworODY5NjIgYTVhM2FlOWJlMWZiMDM5NTI4Njg0YmJjMjI4OWZlZDI2ZDQxOGM2MiBweTNrCis4Njk2MyAxMDc1NjFjNThkZTEwNDM1MzE1YzNhZDFjOGYyZDVjN2M4Mzk3OTU0IHB5M2sKKzg2OTY0IDQ4YzI4YzI4MWQ1N2FmZmU0Njk3MWNmOWM5N2NlYWExMTgwZDBjMDEgcHkzaworODY5NjUgMzgzNTNiYTQwOGExZDg0MjZkYTc1ZjA1MTg4OGU0YTIwMjBjODZjZSBweTNrCis4Njk2NiA1NzdhMjVkNjU1YzRhYWZjMTg3ZWM0MDg5MDVmYzM0Nzg5ZjhhZTQ3IHB5M2sKKzg2OTY3IDgxZjRkMWZkZjU3MzQxMzJlZDMwM2E2MjkxMmQ0ZjAyYWJlYjE4MTMgcHkzaworODY5NjggN2MxYjRjYTQ1ZGI2ZGQ5ZTBjMjU4Yjk2MWRjNTFkMjUzN2QzNTA0MyBweTNrCis4Njk2OSA5NGZhNTNiNThlZTUzNDhlZmYxNWNhYzZkZDliMmQ0ZTVkZDg5ZDMzIHB5M2sKKzg2OTcwIDc4MjE2MjYzNDI1ZDE1ODFlOWZmOGVmYjdiOTk3OGE0Y2E1MDcwM2YgcHkzaworODY5NzEgNGE1OTk5MDIzMTBkYjhhNGQ5OWRjODZiMDhiMDFhNTU1NDQxZjEzNCBweTNrCis4Njk3MiA1YjY4Njc1ZDcyNjljNmE1YzA0OWRiZTM3YzJlNjFkMjQ4ODRhYjIwIHJlbGVhc2UzMS1tYWludAorODY5NzMgZmRiMzUyMzFlYmUyNTlmNTJlMjgzMThiMTFkOWFiOTFjZTEzZjkzYSByZWxlYXNlMjctbWFpbnQKKzg2OTc0IGZlMmE1NmExYmE3NDQzNGNjMDExYjViNzA4ZjVlMGZiMmMzZDllODQgcHkzaworODY5NzUgZmFhZDE3OTdmYzkyY2Q2MWVlNTdlOTMyMjZiMzA1OTlmZDg5OWNjMyBweTNrCis4Njk3NiA1ZmRhNTE5ODM0ZGY4NTJiOGU0ZjY2M2I3NTI2YmFiNjY2ODE1Y2Y3IHB5M2sKKzg2OTc3IGFlMTAyODJlN2Y0ZWM3ZjJkNzJjNDY1YzM1YjIyMTRjNzkzNjA2NjkgcHkzaworODY5NzggMzAxZDIzZDZkZDliNmVkODAzMzg2NDBkYWU3MWU4NTg0Mjg5NGUwYSByZWxlYXNlMjctbWFpbnQKKzg2OTc5IDUyM2E2ZmM1M2E3MDVjNDVjZmMyODk5YTM5MDY4NWQ2ZDZiYThlMjIgcHkzaworODY5ODAgYjMwMDQ4NjYzYjdiZmU2MWU3YjUyZGUwYmE5ODMxMGNhY2IzNzAyZiBweTNrCis4Njk4MSAzZDJiZmQyMGMyZjRkOTJkZjU0YmFkNzVmNTJlNDYzNTQwNjczOGIwIHB5M2sKKzg2OTgyIDMyMTRlMjMxYTFjNDU5M2U1ZmIzMGJjOWRiZGIzYTBkYjJlOGI1MTkgcGVwLTAzODQKKzg2OTgzIDIyZjBjZjFhMjcxMWIyNDQ3MTgwMTFmNjc2MzNkZDRkOGUwODNmNGYgcHkzaworODY5ODQgZjc0ZjVhMDgzYjZmNzg1N2I3Zjc1NGNiZDBkYWEyYjRhODVhOTliNCBweTNrCis4Njk4NSA4M2FkMDBhM2E0ODkxODE2NTJkNGJmMmVkNWJhZGMzYWJjNDI2ZWRkIHB5M2sKKzg2OTg2IGIwMzQ4MzI0MTRmNzg3ODA2ZDJhYTUzYThmOGM3NjFhNWI5MjVhMzMgcHkzaworODY5ODcgNjY1ZjBmYzZkZGQ3YmYzOGRmNTAxMTE5MTlkMzdmNmU1MjMzN2ZhOCByZWxlYXNlMzEtbWFpbnQKKzg2OTg4IDdjZTkwMDFkN2E3NzFkMjQ0ZjQyOWNmYTI1NGZhMmVkZTI4YTU3MWEgcmVsZWFzZTMxLW1haW50Cis4Njk4OSAzMTgyYzYwODdlNTJlZTEwZjZhZTE0ZDdmYzQ4MzA4NzQxNjhjNjBmIHBlcC0wMzg0Cis4Njk5MCA1NTZkZjA4N2RlNGZjMTMyZTlkZDQwNmQwODRiOWRlMzIyYjViYjkxIHJlbGVhc2UyNy1tYWludAorODY5OTEgZTc1NmVjOGY0MTQzYmI5YTNmMTQ4M2M0YzMyMjYwNjcyMmIyNjA3ZiBwZXAtMDM4NAorODY5OTIgNWE3MjNiN2FlZmI3MGY3MjhjY2VmM2Q1MjM1M2JjNWFhNDExMTZiMyByZWxlYXNlMjctbWFpbnQKKzg2OTkzIDRjOTg0NDczMjkyNTczMzliOTU5ZDE3YjJlM2ZiMDhjZjI1ZWM4MjQgcHkzaworODY5OTQgYmQzYmE4OTk0MmUzMTZkMzVjYTlhMjIxYzUyZTY0OTBiN2RmOGQwOCBwZXAtMDM4NAorODY5OTUgZjg5NWEyMjIxZmUxM2IwMDlmZGI1YmUwMjk1YjFjNmQyYmY5M2E2ZiBwZXAtMDM4NAorODY5OTYgM2RmZWM4ZjE0ZTczMmU3YmQ2ZTAzNWU2NmI0NWYyMDJhYzE5ZDhiNSBweTNrCis4Njk5NyAzZDlhODZiOGNjOTgwNDZmMGQ3NDU2NDc5ODI5NDEwZTM4NmJlNmIzIHB5M2sKKzg2OTk4IDYyYjYxYWJkMDJiOGQ3MDk1Mzk3Njg3OGVkNWNlMmMyMTU3OTE0ZmMgcHkzaworODY5OTkgMTQ4NjQxNmM4NmQ5N2Q4MjE4MTA3MzliYmZhY2ZkOGUzY2JhN2NkNiBweTNrCis4NzAwMCA2YjAzNDkxZWUxNzFiNDliZjE3MGUzMzJjMWRlZWU2MTkwZTYwZTRiIHB5M2sKKzg3MDAxIDRjZGFmYjAyYjIwZTE1NzQ1MmFmNDY5N2FmZDhjZDdkYzQ3YzgzOTYgcHkzaworODcwMDIgNWVjNGVkNTE4ZWY4ZmQ4NDljOTMzOTZiYzBiYTFmNTFhNmVlMjE1NCBweTNrCis4NzAwMyBhNmU5NDlhNmZmYzljOWYxZDcyNWY1OGYwOTgwMTE3YjE3YmE1NjBiIHB5M2sKKzg3MDA0IGQ2MTgzYmNlYmRkZTY4MmU5NDMyMDY2MGFhYzE4ZWMyZGU5ODk2M2UgcHkzaworODcwMDUgZDI5YjU1YWMxNjMxOTM4MDYwZjk0MjRiNGExNGY4OTQyZDhhZDk4OSByZWxlYXNlMjctbWFpbnQKKzg3MDA2IDdjMjNhNjhmYTNkZTg2YTM3ZGU5OTFmNmExNmJiYTY5NDZiMmQ2N2EgcmVsZWFzZTMxLW1haW50Cis4NzAwNyA3YjZhZjU2ZWU3NGQwODQ3MGQwYzExMjg1YjZjM2YxNWMwZTljNzdiIHB5M2sKKzg3MDA4IGEyZmFiZTIyNGU4NzM2MzIxMzgzMTg3ZTJiODgyZThjMzg4YmE4NGEgcHkzaworODcwMDkgYTkwNzExMGRmMjVhMDg5Nzg5YmUwYjg3YzUzMTdiZjc0YWYxODhlMiBweTNrCis4NzAxMCBiMzdkYTYwYzkwNzJhMTYzMDBlNWVlMTMzZDMzOTZiNmVhNzA0YjYzIHB5M2sKKzg3MDExIDU2ZWVkOGY0MDdiZjk0NjlhNGRkMjZmZGExNGY4YmE0YjAzNGM0ODMgcHkzaworODcwMTIgMWQzNTMxYWFjZWEwZTEwOTVkZmU1NjQ2MTM3NGZkNzJhZTYyNTAwYyBweTNrCis4NzAxMyA0ZGY4YjQzNDJlNzAyNDNmNzk1MTYxMDRhNjRiM2U5MTk3ZjQ4YjgzIHB5M2sKKzg3MDE0IGIxZTc4OTYzMWRiYzQyMWQzYmI2NDc1Y2IyY2EyOGVlMDFhNzU5MWUgcHkzaworODcwMTUgNTFkMjhhMGQxYzMyZThkOGJmYTVhMjQ3ODVkYzQ0MDM5Y2M3Njg3NyByZWxlYXNlMzEtbWFpbnQKKzg3MDE2IDNhYWYzN2MyNGRiOGZhNzc4NmVlZGFjYzRhNWQ3N2QyYTMzZTNmNzMgcmVsZWFzZTI3LW1haW50Cis4NzAxNyAyZTFmY2YyOGM5MTQ1Y2Y2NzBhYzhlZTdlZDhlMzRkYTY0ZDAzYWU0IHB5M2sKKzg3MDE4IDg5M2IwOTg5MjllN2VmZWU0Zjc1M2I1ZGFlOTA4NTgzNWQzYjc1MjYgcHkzaworODcwMTkgNzEzYzZiNmNhNWNlMjJlYTNjZWRhODBkZDFjZDRhYmVmYjdhMDc3NSBweTNrCis4NzAyMCA4YjAyZjdmOTQ3NWIyYTM3NDg5YTE3MmNkOGVlZmMzMzliNmY3N2Y3IHB5M2sKKzg3MDIxIGYzNWE2ZDdlMzI1ZmY1MzJjYjM5NjU1N2E2MzZlZjI1NjRmM2UxMWUgcHkzaworODcwMjIgNDhjNDA3MDk0MTdiOWM2MGRjNGJkY2ZiN2MwZDM3NTEyODE2YjNmNCBweTNrCis4NzAyMyBmODJlZWE0NzgxZjE1NjNhMzU4MjE5OGQ3ZDMwMjMzZjBlYTkwZWM0IHB5M2sKKzg3MDI0IDcyMTRkYzViZmY1Y2ZiNzk4OTE1NDU3MzczNDQ4YzFmYTM0NWFlYjYgcHkzaworODcwMjUgYzI1NzhhNjg4NzlkOWM1YjdlYjhjZjkzM2MyNzMxYzdhM2Q4Y2ZmMSBweTNrCis4NzAyNiAyOTZlNmY4NWY1NmQ0MTYzMDFhN2Y1OTViN2RiODZmNWM5ODMxZmJkIHB5M2sKKzg3MDI3IGQ1ODJkYWJiMzBmODViNzcwZjAyZmQ3MzlkMGU0YTEyN2RkOWI1OWUgcHkzaworODcwMjggNDg0NTBmMDU5NzBiOTAwODE0MWM3NjM2ZjIzM2ZkMjA3ZTM1Mjc1MSBweTNrCis4NzAyOSA4Y2FiY2Y0ZjkwMzM4YjVhOWE1MDU1ODg3Mjg4Y2U2ZDIzMThiMTA2IHB5M2sKKzg3MDMwIGJlZGU4M2UyMDg1MzRjMmRhZmFkZGJmMmY2M2VhM2RhOWQ2NDE0MjEgcHkzaworODcwMzEgZGU3ZjI4YTY0MGU1YTY5Y2I2Y2JlYzM0ZjczZDg2Y2ViYjYyNDY0NCBweTNrCis4NzAzMiA1NzNhNjcyNzYyMTcxZjA0ZDIxNjBkNDIxNWIyY2E4YzUzMDg2NTRlIHB5M2sKKzg3MDMzIGE4ZjM4NDc2MTlmNGRiMjQ4N2ZiYzZiNzYzNDAxNjYxMzllZjdlOGIgcmVsZWFzZTI3LW1haW50Cis4NzAzNCA5YjYwMzYxMWY2ZDRjNmQ0YWE0OWZmMzZlNzZmNDk2ZjBmYjBmYjI0IHJlbGVhc2UzMS1tYWludAorODcwMzUgMjk0ODA2Y2FjOGM1NGJlNTNiYmQ1ZjVlOGYwNDQ3YTVkMjI3Y2Q0MyByZWxlYXNlMzEtbWFpbnQKKzg3MDM2IGRkYzZjNDdiZjgyNWUzOThlMGY0YWQ1MWUwNGExMzkwMTQ4ZGQzYzkgcHkzaworODcwMzcgZjE0ZjYxOWQ3MDUwMDI3NTkwNDVlMDI2NDRhM2RlYWJiNjM5YTJkNSByZWxlYXNlMzEtbWFpbnQKKzg3MDM4IGIzMmQxOWViNDMzOGVjMTU2ZmRlODQyNWI0NTYyYTA5NjAzMjRmMTMgcHkzaworODcwMzkgZmQ2MzhjYTc0NjM0YWExN2ZjMzgyODdkNDY1NjVhMWE5MTNhMWE3NSBweTNrCis4NzA0MCBhZTNmYTc4MWVlZjJlNDAzNWZjMjFhYzg5MjBlM2NkZGU1NGE2MzY2IHB5M2sKKzg3MDQxIGYxYmUzNDkyMzRjM2U0ZGY0M2QwY2YzYmM1OTc5ZTViMDQyYmY5ZmUgcHkzaworODcwNDIgY2I2ZDVkMTUxYmI0MjFhMzYwNjA2YzdmMDgxOTM5OWJmYjkwZjJlMyBweTNrCis4NzA0MyBmMmE0YWRlMzZhMWVhODEzMDU0YzkyYTU2YTI3YmQ3ZmVlMDZlYjZhIHB5M2sKKzg3MDQ0IGI1NWYzZDYzOWNkODZmOTU0N2Q1NjgzY2VkY2Q4MTY3Y2E5MGI2ZmQgcHkzaworODcwNDUgYzJjYTg2N2NkZDFhMjA3ODcwMTBlMDMzZGI0ODMwZTRiZDM2MDQ0MyBweTNrCis4NzA0NiA1ZWViZTRhZDBkODc4ZDUxNDA3ZGFlZmFmYzhjMGQ3OTI0YzgyOTQ4IHJlbGVhc2UzMS1tYWludAorODcwNDcgMGZkNmFlMGE4NTY3ZGExODkxZmU1YWU0ZDBkYTk0NTM1ZDk5NDY0OSBweTNrCis4NzA0OCA5ODMyZTk2ZTczMGE5MDU0ZTIwN2RlMjlhNTQ1YzY1NTdmYTAyZGFmIHB5M2sKKzg3MDUwIDc1NzExZDE3NDNjY2U2ODdmNjliYWM4OTUzZmM5NTIzODBhMDZjZWUgcHkzaworODcwNTEgNGU2MjkyN2EyYmRhOTU5OTQ3NzA2NmQ1OWI2Nzk1MzRkNzczMDgyMCBweTNrCis4NzA1MiA3NzlhMjNhMDhkOGNlZWYwNzNmOTY4YWEyN2UwMzg3Mjc3YmFkODYzIHB5M2sKKzg3MDUzIDMzOWRkNjIyZGU1YTU4MzI0ODQxNDY3MDQ1OWQ5Mjk5OTRmMWU5YWQgcmVsZWFzZTMxLW1haW50Cis4NzA1NCBiYTcwOWFkM2ZmNGNhNjljZjZjZTg0MTdjNjlhMTAxYTExYWI1MTQ3IHB5M2sKKzg3MDU1IDA0Y2VjMmUxY2E0MWE4NzRjYjg1OWY2MjhmOGU0ZGNiNjk0M2Y1NTcgcmVsZWFzZTI3LW1haW50Cis4NzA1NiAxODI3YThhYzliMThlOWM4NDZjNjg1NjRlNTUzOTJlOGJkODI0NzdmIHB5M2sKKzg3MDU3IDNmZWU4OGU2NDQyYTNkYTI1ZjlmNWRhZmE2OTFkNDk3M2ZjZjdjZjkgcHkzaworODcwNTggZGZlODZkYTI3ZTY4YzM4ZTY4NDhhYTRjNDIyZTVlYjMxZjIyMzU0OSBweTNrCis4NzA1OSA2ODI1YjJjZDliODFjMzhiZGYyOTA4NmViOGRlMzA3MDEzNTgwODA0IHB5M2sKKzg3MDYwIDNkMWJjYjU0YTgyYjY2Y2Y0ZWZiYTUyMTJhZjA1ZGZhNDY0OTM1OGEgcHkzaworODcwNjEgYjdmMDhhMGFlYTI4ODY1MTJkOTFhMmU3YzJmNDg0ZmM4NjNjNzhlYSByZWxlYXNlMjctbWFpbnQKKzg3MDYyIDExMDk0YjUyODhmOTg5N2UyM2FjNTc1ODZkMzc2ZTc5Zjk0MGFiNDkgcHkzaworODcwNjMgNTZmNDJlMTg0YTE5NmU5ODcwODQ2Y2YwNmQ4MDE2Y2ZiMzc0YTYwNiBweTNrCis4NzA2NCAyZjVjZDE4NjliMWE1ZjZjMWMzYzIxYjllMWM5NjFmMWY1MDVkNGVhIHB5M2sKKzg3MDY1IGVjNzlhYWY4YzBiZmMyYzBmM2YzZjk1OWM5NTUyOWQ5MmIzYmYzYjYgcHkzaworODcwNjYgODM1OGRjMTNhNTc0ODViMDg5OGU2Y2Y0YjcxYTFmMzZkNjQ2ZjU0MSBweTNrCis4NzA2NyAxY2NiYmRkYmVhODgxZTdiZTY4MzJhMjNmNmFiNDE3NWExY2I4ZmFkIHB5M2sKKzg3MDY4IDgzOTU1ZTQ2MWM0YmE3MzVhYWZiMzZjNDg2NTYzYzM0MmE2NjQ1Y2IgcHkzaworODcwNjkgNmZiNTY0MDRiNmJiMjNlZDUyNWFkZGRhNjJjZTRhY2I2OGYyMmVkZCBweTNrCis4NzA3MCA0ZDBiZmMzMDM3MjQ2NDkzMmU0OTJlZTU3MmZiMmZkNTRhYTc0ZjBkIHB5M2sKKzg3MDcxIGMzOGRhNGM1NDE4NGU4ZjA3YWY3Zjk5MzhmNGJjNjM0NzRjZjcyNTQgcHkzaworODcwNzIgMDczMTc2ZjAzODEzZjBlNGRhMzMzZjY5YmMwODA2N2JhZDFmNDk4MiBweTNrCis4NzA3MyA2OWE1MGJhNDRlNjViN2Y5Y2E2ZmQ1NjFlNTcxNzBiMDc0NDE3NDBiIHB5M2sKKzg3MDc0IDI4NWUwY2ZiZjkwZjMxMzg5ZjJiOTA5ZTk1MDViNmZiYjlmNzM5MDIgcHkzaworODcwNzUgNWMzYWM4Nzk1ZTljNGQ0MzczMzY1MmU3YTQxNGI3Y2EwMmFmOTIxYyBweTNrCis4NzA3NiA2ODFhOGU4OWM2NWM4MjM4YWRhZTZlNGFlN2VlNjYwNDQyZGM3MDhmIHB5M2sKKzg3MDc3IGIzNjdiNTMyYTgyMzM5YTRjNDMxMDQxY2UyODQ0ZjMzMDljODUyOWYgcHkzaworODcwNzggY2IzY2ViY2ViYTUwZmQyYWE3ZDgxNDVkMzY1NzYwN2FhZjRjMDg0ZSBweTNrCis4NzA3OSBiOGVlZDdhNTZhOGNlZTU0M2Q1MDVkMTZhNzE4NzBmOThmYTMwN2RiIHB5M2sKKzg3MDgwIDU5Zjk3MmIxZDU2NzAxZjE1ZmQ2YWQ4ZTJhNDMyNDg0NDk0MGQ3NzEgcHkzaworODcwODEgNTk3YzMwNjlhZmQzOTkxNzQ3MDEwYjI3ODViNzc1ZDgxNjJiMDllMCBweTNrCis4NzA4MiAzZjI0MjQ0YjEwZmQ4OGQ2ZmMzNGNiMjU4Nzg1N2Y4NzBkNjJjYzI0IHB5M2sKKzg3MDgzIDgxNzA1NTU0MTZhYzQ0ODgyM2UzOTgxNzQxNDBmOGI4OTIxYWIyMGUgcHkzaworODcwODQgNWYyODZiYTAxMzk2ZTczMzhlODcxZTU1ZTAwNmJmNTMxZWRjN2ZlYyBweTNrCis4NzA4NSA0OTY1YmU5MGZlMTk5YTgzMzcyZDY2MzUzOTkyNDAyZjZmZGVmNmVhIHB5M2sKKzg3MDg2IDkwMmRiNDcyMjU5NGMyZjkwNTVlNTcyZTNkNTI2NzI1NjU1OTczOTcgcHkzaworODcwODcgOTA3OWVjZDQzM2EyMjU4OTQ1NmE4NWE4OTAzODA1MDUxOWExN2ViMSBweTNrCis4NzA4OCBiNjM1Y2VhOTQxOTU3ODBjODcxNmUyMzY0NzlhZjMxOWJjYzI2MjUzIHB5M2sKKzg3MDg5IGY0NDhkZDZiNjdkYmMwZmU1NjkwMTVjZTZiZTUwNjRkYmM4YzNkNzkgcHkzaworODcwOTMgMDYyOTA3ZjY4NWFjNGU3MWZlNzE3YmEwYjE5M2FiYjQ2ZThmY2MxZiBweTNrCis4NzA5NCAyM2ZmNGEwYzM3NWIzMzMyYTk3ZTU3OTgwNThiYzM3MzRkZWZjYTAxIHB5M2sKKzg3MDk1IDFlNGE2ZTU1NzZhZjRlNDcwMmJhZGM4ZTBmYTdjZmFlNWZlMWFkNzYgcmVsZWFzZTMxLW1haW50Cis4NzA5NiAyNmVkZmIyN2EwY2U4ZTk0M2M1ZGM4ZDU2MDU1Y2RmNDc3NmM3M2JlIHJlbGVhc2UyNy1tYWludAorODcwOTcgMGFlMDdjYWFiNTA2ZmVmMTQ4MTE5YTFjNWQyY2U2OTAyYTA4ZDUyNyByZWxlYXNlMzEtbWFpbnQKKzg3MDk4IDI2YzY1OTM1NzFmMWZhZTdkMDIzNDNmMzYyZGIzZThhMDlmYjUzMDIgcmVsZWFzZTI3LW1haW50Cis4NzA5OSBlMTE1YjJiZmE5ZDdjNjUzOWQwZDgxZjZiNTVhM2VmNTI2ZWRjZjNjIHJlbGVhc2UzMS1tYWludAorODcxMDAgMTVhNzU3MGUzZmZkMDNkMjc2ZTBhYWRlYzIyNDgxOTc4M2UyNjZkZiByZWxlYXNlMjctbWFpbnQKKzg3MTAxIDMwZWFjYTQ3MzVjYjhjOGU2MWI1ZjkyZmJiYThlZDRhNGVmY2UyMTQgcHkzaworODcxMDIgYzQ4OThjZWY0NzE1ZjA4ZmU3M2JjMjdjNjkzYzRlYmYzNWY4MGRiYSBweTNrCis4NzEwMyAyN2Q2YWE0ZjE4MTExZjUyMzg4NDIwZWNmNTc3MGMzMzQ0ZWEwOTYxIHB5M2sKKzg3MTA0IDI1MTNkODkyYjI1NDE4YjVkMGFhMmFiZTU1M2JlOTM4NTU3NWMyMmMgcHkzaworODcxMDUgODY4ZDU2YWMxYzU5MDY2MjhmM2U4MTIyZDBlYzEzZWYzYTQ4ZWE5MyBweTNrCis4NzEwNiBjMjM0OWI2YmZmYWYyYTQ5ZDNhZjQzYjZmN2Y4MWRmOGZhNWU0YWZjIHB5M2sKKzg3MTA3IDRhOTRjMmRiZjllODRhNDUxZWZjNjZiYTM1YTRmNjcyNDUxZjBkMTUgcHkzaworODcxMDggODdmMjNjNzk0OWVlODEwOTMzZjk0MTdmYzVjOTQ2MmExOTVlZjdkZSBweTNrCis4NzEwOSBhMWYzNmI5MzczYmJhZjE5MWY1MWE4MzI5YzhlYjg0YTBkNmM3MGRhIHB5M2sKKzg3MTEwIDM5MDA5ODQxNDcxYjU5N2EzYjJiNzhlN2Y1ZTNmMDgzZTk5M2EyYTQgcHkzaworODcxMTEgNmVmMWFlYWU0MmJlYjZlYzg1MWVkZmIwMzFjYzIwNWM5ODExMTMyMCByZWxlYXNlMjctbWFpbnQKKzg3MTEyIDExZmM2YzM4MDhiNjQwNDdlYmVjMjRiMzI0MTU2YjdjMmNjNzFkOTAgcHkzaworODcxMTMgMmZiMWVjNWM3MzVlYjIwMzdhZmRkMTU2YmUwMTQ1ZjI0MGZjYmY0ZiBweTNrCis4NzExNCAxMjFlZDg0OGM2NzBiMmI1MmU2ZTI2ZGI4MzIxYmRmNDA3NTkxNzk5IHB5M2sKKzg3MTE1IDM5NmQ5ZmE0ZmEyNDMyYWZmODhmNWU0ZTdkZmE2Nzk2ZWM3ZTk1ZjQgcHkzaworODcxMTYgYWIxMzU1MzcwMmY1NWMyNWUxYjNiNjdiOWM5NTg0MGFlNGNlMmZhYyBweTNrCis4NzExNyA0MTdmOGNjY2QyMDg5YTY5OTg1NGY5OWJjY2JhMTk4MjMzM2MwMDYwIHB5M2sKKzg3MTE4IDUwZGU5ZjFhNmQ1NDcwM2U0OTk4YTc3NTQ4MDUwYjIxYjE4NzQ3NzggcHkzaworODcxMTkgNzg4OTg0YjdkYTZmMmVlZjE4MDQ5ZjA4OWM1MjRlZjg5OTAyOGNhYiBweTNrCis4NzEyMCBiZGVkMDY3ZjkxZThkZDhiNTdjYjZiNjMxZDg2MzYzMThjOWRmMzU0IHJlbGVhc2UzMS1tYWludAorODcxMjEgNzVjYWI2Y2Q5N2M2MzUyM2E0MzliMTIxOTUyN2ZiNWY0MzUxMmViYiByZWxlYXNlMjctbWFpbnQKKzg3MTIyIDc4NmZiZWQ3OGQ1N2Q3NzcyNTBjMjYwZTU3NDg4MDgzNDQ1NDZkOWQgcmVsZWFzZTI3LW1haW50Cis4NzEyMyBhYTMwYjE2ZDA3YmM0NTRmZmI2MjU1NjhhMWU0YTAxODE5YmYwM2E1IHJlbGVhc2UyNi1tYWludAorODcxMjQgZjRmNTZlZmEyODcwMjAxY2ZjZDUzNWUwNTM0YTc2OGI4NmU4NzkyNyBweTNrCis4NzEyNSA5ZTcyYjZkMGY0OGJhM2Y5MjU3YmZlNjJiYjc3NjI2MTY1MmIyNjczIHB5M2sKKzg3MTI2IDA4MjFlZjEyMmQ1MzFkY2UxYTc5M2YyNmZmNzZkMTQ5ZjQ4MWVjZjQgcHkzaworODcxMjcgYTQ2ZTE5ZTg2NjgwMTY1MzM5NjExYWFhZGU0N2IzMGIxZTA3NzJmMCBweTNrCis4NzEyOCBjNzE4Y2I3ODZhZWI1ZmM1ODAyOTdlZWNkZjIwNzJmMjg2NTVlZTg4IHB5M2sKKzg3MTI5IDMyNGQ5M2Q2ODUzMzFkZjZhZjk4Y2E4NGUzZjk3Zjk0ZGYwODJjNDMgcHkzaworODcxMzAgZDk0ZDM2NWQ3Y2U1ZWM2ZmIwNWU4Mjc0MDYwNDY2OTFlYTUwNmNmYiBweTNrCis4NzEzMSA1MjIwMTIyZTNlOWJjN2QzOWZlYTczNmQ5YzllNmJlMDk3ZjNiMzU1IHB5M2sKKzg3MTMyIDdiN2Y2ZWY0Zjk5YzdmZjYxMjQwMTUzZWY3YmM1Zjg2ZjM5OGRjNzAgcHkzaworODcxMzMgOTVhNzNlNGIyY2ViM2UwMjlmODZlM2E5MTRjYWVjNDNiOWM5Y2U2OCBweTNrCis4NzEzNCA0YzdlMzJlNTkyODg1N2Y4MDZiMTM0MWFkMmFmYmEwZjg5YWM4NzY2IHB5M2sKKzg3MTM1IDExMzkyNWI3OWI5N2IwM2M2ZWViNzRhYmViN2NhNDMwM2MyODIwMGIgcHkzaworODcxMzYgZDU3NTkxYmRmNjFlOGU5ODM2NTRlZGJkMjVjOWYzYjgwY2MxZmQ2YyBweTNrCis4NzEzNyA1MGQxNzBiYjcxYzc1MzE4NjE0NjdjY2M1NzVkMDRiOTY4MjNkNGU0IHB5M2sKKzg3MTM4IGI4NDI2MWJkNmQ0YTRlNmViMGJhNzc0MjE0ZDE0MmY0Y2FiYzUzYWQgcmVsZWFzZTI3LW1haW50Cis4NzEzOSBlMDA3MmJkZGQyZDU1NzAwYTM4Y2ZhYmVmNjdkYTk4YWE5NGJhZDBiIHJlbGVhc2UzMS1tYWludAorODcxNDAgOGQ0ZmVlZGVhYWVkMzQ1YTRmZjQ1YTMxMDVkMWY1MTI3NTVjMmI1NCBweTNrCis4NzE0MSAxNjliZjAxYmI1MDdlMDc4OTRhYTNkODMwM2RhMGZjNGQzOGUzN2FiIHB5M2sKKzg3MTQyIDIxZGY4MTU1Yzc3MGYzY2ZhNjY2OTQ0MDAxMmM5YTkxYzIyMTQwZmUgcmVsZWFzZTI3LW1haW50Cis4NzE0MyBmOGJlYTk5NjA0NjIxMThiYjYxYjMzZDBkNzM0N2JiNmJlOWRjYzIzIHJlbGVhc2UyNy1tYWludAorODcxNDQgODAwNTYzYWMwNTdlZGFlM2U2ZTI1MWU1ZTNiYzAzYTg4ZDljOWM5YiByZWxlYXNlMzEtbWFpbnQKKzg3MTQ1IGQyODEyNmViZDYwZDAyZGE5NzIyMzQ1ZDEyM2JjNjExNTY5MmY1YjYgcHkzaworODcxNDYgNmU5ZjM5N2JiYTAyNWUyYWIzZWUyMDZiMmM1NmU4MWFkY2I2MTg4MCBweTNrCis4NzE0NyBjNTM3YmQzN2Y1MDhhZjEzYzIxMjhmNDJkNTIxZWEyNTYwZWZhMjk4IHB5M2sKKzg3MTQ4IDFiNjU5YTAwNTcwYmRiNGI3ZGIwYTZlMzJmY2QwOTZjZGIzYmRjNTYgcHkzaworODcxNDkgNzQwMzAyYmIzYWRmYjM4NGI2NzY0NmI0MTY4YjlkYjQ3OWQ4MmU5OSBweTNrCis4NzE1MCBiYmNlNDJmNmRkN2RiYmYyNmE5NjEyZDMyMmVmNjNiM2JkZjI1NjgwIHB5M2sKKzg3MTUxIDNjNTg5Y2E0MWQzYTNkMWIxNjE1YTI2NjRjZWM4MzQwYmY4MzgzOTUgcHkzaworODcxNTIgMTQ4NmQzMTcxYzY4Njc4YWY1N2IxNjk1OTY3Zjc4NDJjMDQ5NmEyZiBweTNrCis4NzE1MyAzOGRjNDEzOTg1NGM4Y2I4YWI2YzdmYTQ4ZjQ5NjYxMzQ5NWM2NTdmIHB5M2sKKzg3MTU0IDljYjJlY2JiMWYwY2E5Yjc2ZTQyZjkyZWIyNTM3ZjI2NjgzYzllMzYgcHkzaworODcxNTUgOGMyNTRiNjRhNDM4MDRjZDI5MWY1Y2FiOWYzMzI3MTA3MTM0MDk1NSBweTNrCis4NzE1NiA4ZGUzMzU2Mjg1NWZhZjljYjk2YWM2M2Y4ZGY0MzM5Y2M4MTY4YzMwIHB5M2sKKzg3MTU3IGM4NmRjMmJkM2FlODEzMTNlNDdmYWM5M2YyMmFhNzRkM2ZhNmZkMjggcHkzaworODcxNTggNzRmZTczYzEwNjExZDIzZDFlMzhiNjM1NTlkZTVjYTA5OWI5ZDhjYiBweTNrCis4NzE1OSA3MzhlYWVlZDBiMWEyNDcyOWQxNjAyOWVkNmQ0N2YzNDZlMWQzNDhkIHB5M2sKKzg3MTYwIDRmODQ5NzIwYmY0MTM3MzBmNmRiY2U3YjIzY2U4M2Y0NWYxNzE1ZDAgcHkzaworODcxNjEgMDEzM2I4Y2I3ZDgwNmQzN2UzNTczM2Q3YjQ5ZTk2NTA2YzQ1ODhmNiBweTNrCis4NzE2MiAzMzBhOTg1MjM5NmRmODhlZmQ2Y2U5MmU1Y2MyOWMzODMwOTZjZGViIHJlbGVhc2UyNy1tYWludAorODcxNjMgNzI1M2JlOTZhMTllYmYxNjg4YTZlYmM3ZjQ4MDQzZWUyZTQ4YmU2NiByZWxlYXNlMzEtbWFpbnQKKzg3MTY0IGZhNTViMDNiZTU3NDAyZTE4OTRmNGRmYzYzOTFmNDc0ZmIzOTY2MDkgcmVsZWFzZTI3LW1haW50Cis4NzE2NSAwNGVkOWRiYzZlMDUxYzMwOWQ2OWU4YjhjMThiZDEwYzNkY2FmMGJkIHJlbGVhc2UzMS1tYWludAorODcxNjYgNzE0YjhlMWVmNzI2M2UyODA5YzlhZDlhNTNmMDU5OGIwODNhYTUxZCByZWxlYXNlMjctbWFpbnQKKzg3MTY3IGFjM2M1NTI3MWZkZDQyYTAxYzEzZTY0YmYzYWY2YzI4YmVjYmE3MWYgcmVsZWFzZTI3LW1haW50Cis4NzE2OCBhYTk5ZGM4ZjcwNWRmYmE5MmQ1NWZhYjY2NDgxZjRiYzBiYjdkYWY0IHJlbGVhc2UyNy1tYWludAorODcxNjkgMjA3ZWE5YTA1MDYyZjI0MmE3Mjc2MTUwMTZiMzRkOWQ5ZWI1MzU2MSByZWxlYXNlMjctbWFpbnQKKzg3MTcxIGQ2YzcwMmQ0MGZmYjJkZThlMWJmNDI3NTYyZjUwYzUxNzU1MGE3MmEgcHkzaworODcxNzIgMzUzMDc5YWY0ZjUyNzVjOTExOWQyM2ExNWE0OGMzMjRkNzE0ZDk2NSBweTNrCis4NzE3MyA3MDQzNmI0NmU0MzRkMmQ5MmU4NjQ4NzQ5NzFhMzNhZjBhNTRhZDRmIHB5M2sKKzg3MTc0IGIxYmRlZjU2OTY2ZWUxMzQ5ZmI2OTEzOGIxMTQzNjE0NjM1ODI1N2QgcHkzaworODcxNzUgOGQzOGM2YTI3MTgxYzFkMTU3ZDg2MDAxN2IzOTU0M2VmNjA2YTc1YyBweTNrCis4NzE3NiBhODExZjdjMTBlODI1MGZiNGUzNDQ4MWMxNjA0MTU2Y2YyMThjOGRlIHB5M2sKKzg3MTc3IGYyMmQ5MTMzMmRiOTRmNmEzZjYwYWRkMjhhOGZlODQzNDA2NGJlNDUgcHkzaworODcxNzggMzA2ZDg4YTMyMzU3MjNkMzUzZDVkMTI3Zjg1MzBkNmQ5NzZhMmVlNSByZWxlYXNlMzEtbWFpbnQKKzg3MTc5IGI5N2Q4NDNkNjQ1NjI5NmVhMTM3NDE4YTk1ZGJmOTY5ZGZlZmM2ZDcgcHkzaworODcxODAgMjYzYzk5OGIyZjQ1OWM4NzE1NjFlMjdkNDUwOWEzMmM0ZGMyMmY3MiBweTNrCis4NzE4MSAzYjYyODU1NGUxYWExNWUzZjgyY2E3NjFhNWZkOGNhM2FlMWUxMGMyIHB5M2sKKzg3MTgyIDYxMmRkNWYyYWFiMzFhNzZkYmU4YWU4OTFlM2I0MjUyODk2MWQ3NmQgcHkzaworODcxODMgY2UyODc3Njg3MzcwMDZlNTA5YjEwOWFjOTY0ZGE4MTcyYWU5MGViNyBweTNrCis4NzE4NCA1M2JkZjFjODE0ODZiY2VkYTFmNDU4OGY1ZGFiYjA5NjY5YmQ5YzA1IHB5M2sKKzg3MTg1IDJjZjdiYjJiYmZiOGVlZjdiNjk0MjRhNmY2MDQyNjA3NTk1Nzg3OTYgcHkzaworODcxODYgOTk5YjFhYTI0Njc4M2FlZjkwZTI2NzVhOGYzNzJhYjUwYWI4ZjFiZSBweTNrCis4NzE4NyAxNTUzMWNiZTNmNTVmZDNlY2YxZjBlNDczNGM5OGNjMDAyYTYwNDFhIHJlbGVhc2UzMS1tYWludAorODcxODggMGVhZGQxYjJkMjU4YzgwNDYyMjA3Yjk5NzM0YmMxZDYyYjM5Yzc4ZSBweTNrCis4NzE4OSA1YmZhNDM2YTI4N2JmMDQwNDcwYjJlNzhmZGFiN2VmZDMzMTVmOTQyIHB5M2sKKzg3MTkwIDdhY2EzMmEyODkwZWYyMDRhNjg4ZjA5YmU0YzUyMzhhYWM2MDA4ODkgcHkzaworODcxOTEgNjZkOWUzODgxNzYxMDIyYTI3N2E5ZGU4MjM0YWI0NTVkNTkwZTY5NiBweTNrCis4NzE5MiBkMDJlNzZkYWNlNWJmMTFlMzEzNzU3NTJlZjI0ZTg5MjhmMGUzNzE5IHB5M2sKKzg3MTkzIDU1NGYyNmNlMzNlMTk5OWNjZjkyNmMwYmJkNzJkODhhY2RhMjIyNTcgcHkzaworODcxOTQgMzI0MmZkMTc3MTY2NGViMDc0ZjA2NzhiMjUwYjU5ZWIzNGExY2I5MCBweTNrCis4NzE5NSBiNzQwNTFjYWQ3MTc4MjM3MDdlYTA0NzNhMGE4MGFkODgxYjFhYmIyIHJlbGVhc2UzMS1tYWludAorODcxOTYgYTkxYjMxNjhmY2UyOTgxZWJlMWY1NzMyNmI3MWVhNWJkZDE2NTZhMCByZWxlYXNlMjctbWFpbnQKKzg3MTk3IGNmZTdjYTFhN2JhYjI0NWY1OWNiZGZiMzM2MzVkYzM4MDY0MWY5MjIgcHkzaworODcxOTggZjMxMzBjMmM0NmY1YTRlZTQzYTFkM2RkMGM2YmViNWRiNmNiYTE4YSBweTNrCis4NzE5OSA5OWVjYTYyZDY5MTk5NGI2ODA2ZDllNDVlZDc2YmQ2YTJjYzg1ODk5IHJlbGVhc2UzMS1tYWludAorODcyMDAgODA4MTc2MmViNmQxYWVjMWFlNjA5NTE4NjhmODhkY2Y2YzJhYWE1NCByZWxlYXNlMzEtbWFpbnQKKzg3MjAxIDEwZWU0ZjMyYjkxYzQwMmM4NDdhMGY0NTU1NWE1MzcyMzNkZTBiMDMgcHkzaworODcyMDIgYjdjZmI1ZjBmYzU1YjM2NjM2NzA5Y2MxMDlkNzE1N2U5ZDZiNDdiZiBweTNrCis4NzIwMyBlZDJhYzIxMDg0ZjRkOTkzNjQyNTUxYTQzYTVjOGZjZWZhM2JlNzBiIHB5M2sKKzg3MjA0IDI4NzJmNDZlODE5NzBkNGEwNGM4ZTVjM2JiMGNlYjQzN2MyZDc4YzYgcHkzaworODcyMDUgNDcwODhlNWNiNDAxMzFmZWMzNGUzY2VhYTJjOGI2YzU3MmViMjIzZiBweTNrCis4NzIwNiBlYWI4ZjkxZjU3NTRkZDg3ZWQ4YmY3ZjY4ZGMyMTYwYzU5NDQ0NGRiIHB5M2sKKzg3MjA3IGRlMDVkODQ2Nzk1ZTRiNzc2MWEyMzJmMzczMDA5Y2Q2MjFlNmI1NGQgcHkzaworODcyMDggZmEzZDA3ODcyOTkzNDExMTBlNzE1MzNkYjNlOGNiZTZkMDY2ZjNiYiBweTNrCis4NzIwOSAwNjIwNmYwMDFiY2Q0YzcyMWUzMGJiMjZiMmE4M2U4ZmMxNDIzN2FkIHB5M2sKKzg3MjEwIGJjODgwOWIzZTRiZTdmNWYxYWYxODMzYmE1MDU0NjdhMzllMTI2N2MgcHkzaworODcyMTIgZjdlOWVhOGM2MWEwMjc3NzUzY2YyNjA2YzM3ZjAxYzFlNjU2M2JkMCBweTNrCis4NzIxMyA2NjhjNDIxOGFlMjZlNzM2ZmQyZjFkNzU1ZDA5YzMxMTdjM2YzNDRmIHB5M2sKKzg3MjE0IDRmODFiNWQzNTZjY2Q0NWY0ZmM5ZWVhY2JmN2JkMTU1YWI0NTZiZTMgcHkzaworODcyMTUgNzk0ZjU0YmI5NzEzODBjNDQzOGQ5ODU0MWI2YzdlYzJjNWFkNGViYSBweTNrCis4NzIxNiBmOGNmOTczMTRhZWVhZTM2MGY0Zjk5ZjI3NGFmNjE4MGNhN2QzN2JmIHB5M2sKKzg3MjE3IGMyODc3MTE3N2ZjNDA1ZmQwMmVhMzQ1YWE5NWIwYzQyNWEwYWZlZGIgcHkzaworODcyMTggMTkxMTYxOTFkNTJkOGFiM2Q5ZWZhNmJmZDU4NzI1NTI4ZTQ5MmU0NCByZWxlYXNlMzEtbWFpbnQKKzg3MjE5IGJhZjBkMTg5ZWQwNzM0Yjc0ZjJkMTQzM2U1ZTM5MDU0MDg4MzBkYjkgcmVsZWFzZTI3LW1haW50Cis4NzIyMCAxNmI2YWU3NWRlOTQ2ODIwM2NmMGUzODg4MjczNTcwMjliMTE4N2FhIHJlbGVhc2UyNy1tYWludAorODcyMjEgMTBiZmQzYzEyOWRhZTI3MWJhZDY3NmQ3NjJkZGVjZjRlNWYyZWIyZiBweTNrCis4NzIyMiAyNjJiYTBhYjRlMjFlZjFlNzljNjAyYzM2NmU4MDA4MDhmYTE1NzE0IHB5M2sKKzg3MjIzIDdmOGNkY2ZiYjA4ZTE4MzVmZGQ0MWQ4NzBkMWYzYzBlOWVhNWUyODcgcmVsZWFzZTMxLW1haW50Cis4NzIyNCBhYzhkYTU1Nzg0OTNjNGQ0YjAwOWI1OWViYTVmYmFkN2MwN2IzYzQ3IHJlbGVhc2UyNy1tYWludAorODcyMjUgYjA4NGI1MGU0YWE2ZGM5MTgzZGMwZTgyNzY0ODdkOTU3Njg4YjgyZCBweTNrCis4NzIyNiA3MWZiMDMyNzRhODljYzNhNjk3OWNjMTRkNzY3M2M3YTYxNTExNTRlIHJlbGVhc2UzMS1tYWludAorODcyMjcgOWFjODY5OWQ4OGQ2MWRiMzFkZGQ0ZWUzYjVhZGRlNDQ5NTMxM2FmZCByZWxlYXNlMjctbWFpbnQKKzg3MjI4IDZmNDZhZmM1MTQzNGNhODkxMDk2NzlhMWE4ZjI1NTIyYmIwYzY1YjkgcHkzaworODcyMjkgNTliNDNkYzM0MTU4NTI5YmEyMDhkZWRlYmRkNzNmZGNlMzgxYTc0ZCBweTNrCis4NzIzMCBkYTIwZTdhMDFmYTYzYTZkOGFiMzRmMjEwZGExMjhjZTQ0MTU2NGVlIHB5M2sKKzg3MjMxIDY5Yjg1OTY0ZWM4ODgzODAwOTE5NzlhMTc1ODA2N2IwNGZmMzc2NzAgcmVsZWFzZTMxLW1haW50Cis4NzIzMiA4Y2NmNThiMGE1ZGE3NzYwMDZkN2ZjOThkOWU2OTc1YzgyMjY1YTc4IHJlbGVhc2UyNy1tYWludAorODcyMzMgNzY3NDIwODA4YTYyYWVmYTMxYjRjYWFkMWY2MzAxNGE1ZWI3ZmMwYSBweTNrCis4NzIzNCAwNzJlZTNmNzQzYzIxZjM3NzBjY2YxM2FkNDhlMTBhMTgwNDgwNjNmIHJlbGVhc2UyNy1tYWludAorODcyMzUgYjA2NmJkMGI2NGU3Y2Y2ODQyZjg4ZDk4NmZjOWMyOWQ3YzM1MmI0MyByZWxlYXNlMzEtbWFpbnQKKzg3MjM2IDEyMzgxZjE5ZTJhZGZjOGYxNjg1MGU5YzY1YzZjYTY3MTY3MDI4YzEgcHkzaworODcyMzcgMzExMGQ0YTQ4ODc4YjRkNTE3YzIwMzAyNGI3NmEwYzY3Yzg3ZmM0MCByZWxlYXNlMzEtbWFpbnQKKzg3MjM4IGYzYWQ1MmY2NmI4YTQyYTU3OTM5MzJjNzIyZDA0OWY4OWMyNmVkYzggcHkzaworODcyMzkgNmFmYmU0NjEyZDQ5NDNiZjdkZDNiNWQ0ODViN2I0ZTI3OGM1NTk5NCByZWxlYXNlMzEtbWFpbnQKKzg3MjQwIDc5YTJiNmExMjgwNTExZGZiZjNiODg1ZmEwMGFlODY3MDg0MDgwMTEgcmVsZWFzZTI3LW1haW50Cis4NzI0MSBkMThmNDMxM2IxOTdlNTZiMmIyMjFkNDM4MTY4MjgzYjNjZGYwYmE4IHB5M2sKKzg3MjQyIDc4M2YzMTFjYTg2OTNjZWUwMzJkZmRkNDc5ZGE1ZTYxYjA1MWRhNWUgcmVsZWFzZTMxLW1haW50Cis4NzI0MyA4ZDcxNzFiM2NkZDY5YTczODc4ZWFjMDk0MDg5ZDBlN2ViMzRkZDUwIHJlbGVhc2UyNy1tYWludAorODcyNDUgZTE1NjUxOWExYzYwMzc0NGY3MTcyZWVjN2Q3Nzg0NDllMmNkODkxNSBweTNrCis4NzI0NiAzOGFhYTcyYzAxMzFhOTU2OTI4MDE2NjE1MzIwMDcxODkwMDVmMmY4IHB5M2sKKzg3MjQ3IGQ2Y2NiZDNmNWI0NTUxY2U0ZmUyZDNkMGYwMzRhNzZlOTY3MmRmZjYgcHkzaworODcyNDggNDBmNTQzNjM2ODQ2Yzc4YjZjMGJjNjE0OTZiZjYxODQyMWUxYTMwMiBweTNrCis4NzI0OSBmOWQwOTU1OTZlYTk2NDAxZGQ5MjA5MmE1OGY5ZTlhOTQwM2U3MDVhIHJlbGVhc2UzMS1tYWludAorODcyNTAgZDcwOWQxMTRjZGUzYzA1YzRhMDc0NTZkY2NiY2QyNWFiNWNhMGM0NiByZWxlYXNlMjctbWFpbnQKKzg3MjUxIDUzMWY0MjNiMDE5ZDMxZjUxZTBhZGM0OWE2ODBkYmExOWZiZTI2NmEgcHkzaworODcyNTIgN2MzNzE1YjEwY2RkNDViZTJiZWY2YjIwMjhkMzA5ZGM0N2IxNWViZSByZWxlYXNlMzEtbWFpbnQKKzg3MjU1IDRlZTQwODZkZDFiNzQwNWQwYmMyODg4ODk3NDYxZDZmNTdjZDFkYWEgcmVsZWFzZTI3LW1haW50Cis4NzI1NiBhNjE1NDQ3NzhmYTc0MWM5ODU1ZjkxNWE3YmNhNzZlOTQ0ODNhMjgzIHB5M2sKKzg3MjU4IDFjMDI3YTA4M2E2ZTkwYjdiMzlmYjcxZDc2MjdiN2RkODZhMWRkMGEgcHkzaworODcyNjAgOGU3MDFiZmZlNmUyYzBiMmUzN2E4MTlkZTJmMDdjM2NlYWRlNzgwZCBweTNrCis4NzI2MSAxNzg1OGFiMmNkOTJhNDgwOTg2NDljMDQ1YjQ1OGNmNjcyOTRhZDZiIHB5M2sKKzg3MjYyIGNmYjdmNjMyMmZiYmJhYWJmZGQ5ZWI3ZDkyM2UwY2JhMGUyM2M3MGUgcHkzaworODcyNjMgNzlhOTBmYTA3OWE4YmYxODAyN2QxNTI3ZmUxNmJiYzQ4ODkxYTk0ZiBweTNrCis4NzI2NCBhYTQyOGFhOWI2OGIyYTcyMjc3NTYxNzVjMjAxMjQ3NmI0YTc0ODk4IHB5M2sKKzg3MjY1IDQwMTI1Y2RkYWZiOTA1MjlkMTJlZDA1ZDkxZmIzNDNkYTk5NmFiNWQgcHkzaworODcyNjYgYTk2YTJiY2NkZjhhMjdhMTIzYzY3NzZlYzIxMzI2OWViZmE4MzJlMiBweTNrCis4NzI2NyAwMTlhZDlmMzJjMTNlOGFiYWEyNzBkZjExMDg1Y2RlZWU0Mzc1ZWUwIHB5M2sKKzg3MjY4IDQ3MTYzMDg0MDQyNjNlYjE5YzUyY2UyOTZhOGE0NjgwMDYxNTE5Y2EgcHkzaworODcyNjkgYWZlNWY2YjFjNzY2Nzc3MWMxYTgyOGQ5NzdiMmVmYTg0NzZjZTAxZCBweTNrCis4NzI3MCAyM2RkYmQ4MzU5NTBiODljMTk4ZDY2MDk1ODIxMmUzZTUwZGYyOTUxIHB5M2sKKzg3MjcxIGEwZmNhZDkwNzBhZDFjN2M5YmMxMjJjNDZhZWJiMWFkNDY4YTU0MjQgcHkzaworODcyNzIgNmRhMzdjMzRmOGEzMDMyNDBlOGJkYmY1MWExN2IxZWJiY2JhYTNhMSBweTNrCis4NzI3MyBiNTgwOTI3ODcyMTM3NzQ0YjE5YWNmOGYyZjNiOTYzY2JlZmJhZWQyIHB5M2sKKzg3Mjc0IDRkY2VjMTQ2Yjk5ZDQ2ZWVlNDVjNDUxN2M4NGQzYmE1YzkwN2YwMzggcHkzaworODcyNzUgYTI4ZTg3MjExMTdjMjZjNDc4NjM3ZjdkY2ZkOTE2NWI2MjlmZWRlNCBweTNrCis4NzI3NiA5YTJlNTZkMTE0NmRmMjgzMGM5ZjY3ODRmYWJiYTQ0NThkNDY2ODU4IHB5M2sKKzg3Mjc3IDJkMjk5N2YxOWU5MGM1OTg2YTRiMjg5Njc4NDQ5NzQ5OGY4NmE1ZTYgcHkzaworODcyNzggMjYxMzE4M2VjMDI1MWIwYzg3YWYzYTBiODY4ZmM5NDM4ODUzZmNkNSByZWxlYXNlMzEtbWFpbnQKKzg3Mjc5IDViNDQwNTkyNDdkYjYyYmE4OGY1ZDc1YzMwY2YzMDlkNmY5YzVhNWQgcmVsZWFzZTI3LW1haW50Cis4NzI4MCAwMGY3ZjUxY2U4YmE1OTQ3YjEyMjU1OWY2NmExNzc1ZThhZmU2NDgyIHB5M2sKKzg3MjgxIGZmMDdhMDZmNmQ2NWQwYTMwMTY3ZTkxZmIyNjdhMjc5MGE0YzliZmYgcmVsZWFzZTMxLW1haW50Cis4NzI4MiAzYjVjYzY2MzhmM2QxMGQ0ODE2NWQ0MGJmNDMxYWQxZmUwZjhiNjEzIHJlbGVhc2UyNy1tYWludAorODcyODMgNWVjMmMyYmZhZGVkNTIzMTBkYjEyZjJhYzA4ODM1OTc3MGJkMDU3OSBweTNrCis4NzI4NCA5Y2MxOTc4ZWM5ZDQ5OGM0OTEyMzNmN2E1ZGMxZjRlNmVlMDA5Y2VkIHB5M2sKKzg3Mjg1IDliMTU5NGMxNTQ0YjdlY2M4NzQzNDY2ZTcxYzA3NDIzMTYzMzEzYTUgcmVsZWFzZTMxLW1haW50Cis4NzI4NyA4MGUzYWQ1YTYzMWQ1NzUzYTMwZDcwZGI5ZmMzYjIxNzZjMjkyNDNmIHJlbGVhc2UyNy1tYWludAorODcyODggNGFlMmMyMTExNmYxZGYzZGRhOGRjMzA2MGY5NGVhYjc4M2VhZDA5OCBweTNrCis4NzI4OSA3ZjU0OTkwOGJmNTAzMmE5ZmE0MDJkN2M4MmFkNmQxY2U2ZGZjYzlmIHB5M2sKKzg3MjkwIGE1MWE0ZjVlODdlNDllMjNiMDg2NTU2MGFjYWRiNTllMjUzYmI1MWMgcmVsZWFzZTMxLW1haW50Cis4NzI5MSA1Njk5OTQ5NWE5YmFjNWJiNDViNTcyNzM0MTI4N2MxMWU2MTJlZDcxIHJlbGVhc2UyNy1tYWludAorODcyOTIgYjc1MGM0NWE3NzJjZThiZDk2MWUxNTYzYjdhNDUwNDM2NjhmMjY2NCBweTNrCis4NzI5MyBmNTljZGE1N2E3ZmE4MzM5NDA4MmU3MGZhNWRlOWQzN2JkMWViNjRhIHB5M2sKKzg3Mjk0IGFkOWI1YzVkMjgzMWY0YmQwMjVlYzE2ZTZjNGYzNDlkYzQwZjliYWUgcHkzaworODcyOTUgZDJkNTI2ZGIyNzczNmFjYmJlNDBhODdkMjhjMWIzZjMxNWY5NWNhYiBweTNrCis4NzI5NiBjYTdhNWQxMjdkNTdjZGQ0YWU2MzYxNTllYzg1NzZlMDA5Y2NlMTlhIHB5M2sKKzg3Mjk3IGVjZDI4ZTg0YzQ0YjBmNGM0ZTc3Yzk2YjUyOTcwZGE4ODBhZmQ0NDggcHkzaworODcyOTggOWMxZmNlZGVmMmMxOWQ1ZjVmOTljNzExYzBhZWM2MTYxNDFiNDU4OCBweTNrCis4NzI5OSAzZGU2Y2Q5MDI2MjRjN2I5MDhmMGUwYmFmMGE1ODRlN2Q3MmMyZDUzIHB5M2sKKzg3MzAwIDNmMTc1MmQ0MjUzYmIxM2ZkOWExOWFmNTNhMTA3NWJkMTliZDZhNTkgcHkzaworODczMDEgMWFhNGU1Y2E5MTc0MjE3NDM3ZTE5ZGNhOTU2ODU0ZmUxNmM5YTkxZSBweTNrCis4NzMwMiBkZTViOTBkYWFiYjQyZTEyMTQ3Yjk5MzEwNjg1NzNiYzFmZDVjMjlmIHB5M2sKKzg3MzAzIGUwOGMyMGE2N2Y2NDdmZWFkODc4ZjMyMzdkODcxMDI3NjU4OWI1NmIgcHkzaworODczMDQgYTYxODI4N2VhZmQ2NThiMTlmOGIwZTY4ODE3NjNiMTMxNTFmMDIyNiBweTNrCis4NzMwNSAwMDM3ZDY1ZGViZDhkOThjOWU0MTI3ZTdhMDA5ZmFmZjMwYTlhMjIwIHJlbGVhc2UzMS1tYWludAorODczMDYgN2U4ZWI2MzRmMGE5MWM1NDdlODdlZjI3NGIyMDkyYmNmZDAwYzBlMSBweTNrCis4NzMwNyAyYWEwNTBhNDRhYTgxZjQ2NTBhNzVlZDcwYTMxZGIzMGMxOGNmYjdjIHJlbGVhc2UzMS1tYWludAorODczMDggNTllMjMwMjk3YmZmYWRkZDRkMzZkM2VjOTliZjBiYWNiYjYyOWI0YyByZWxlYXNlMjctbWFpbnQKKzg3MzEwIGQ4NGVjODU2MDBiMWE5ODA0ZDZiNTRlOTUyZDU4MDVjNjlkMDgyNjYgcmVsZWFzZTI3LW1haW50Cis4NzMxMSBmZDcyNjE0YjkwMzIxMDFhNTdhNDNhNGIwMGY3OTMwZDc5MTI4MTg3IHJlbGVhc2UyNy1tYWludAorODczMTIgNGMwNjE5YjgzMmUxYmNlM2UyNzZjM2NiMGZhMjRmN2U0NzJhNDQ4OSBweTNrCis4NzMxMyBkOWI0NDI2NDc5YWM2MTc4ZWU3YmU1ZjdiMDIwYWUwM2FlMjgzZWM3IHJlbGVhc2UzMS1tYWludAorODczMTQgYzY4ODNlYzQ4ODgwNDJiM2Y4MzAyZDgxMDZlY2JlM2E4ZGE1OWFmNyByZWxlYXNlMjctbWFpbnQKKzg3MzE1IDViOTJmYjAyZTgzYmM1ZmM5Yjg3MDViN2I2ZjA3YzBlMjBhMTE3ZmMgcHkzaworODczMTYgYWI2NTAwMzM0NmMxMWExNTFjNTJiMGQ3YzJhNDg3MDI5ODAyNzJhZSBweTNrCis4NzMxNyA0MzZiYmM3ZjBhYTY4YWE3NTY1OTVhMDY1NmEyY2Q0ZDA4ZGYwN2U4IHB5M2sKKzg3MzE4IGRjMzI3ODhmMGU0ZTMyNThiYmQ5OWU1NGY3ZDVhMTZkOTBmOTNjN2QgcmVsZWFzZTMxLW1haW50Cis4NzMxOSBmYzJmMGM4NmI0OTdjYjkzOGQ1NGJkMGNiY2EwODZmNTVlODNlZWE0IHJlbGVhc2UzMS1tYWludAorODczMjAgMmM0MjlkOGM1ZWUyMDJhMzcyMzgwM2Q2Mzc3Y2ZmNTg0NmI2MGQxMSByZWxlYXNlMjctbWFpbnQKKzg3MzIxIDg1YzJmZTMxYjExZWMwOTg0NmRlY2VkYmM4NWQzZDY2ODdkZTc0OGYgcmVsZWFzZTMxLW1haW50Cis4NzMyMiA0ZDJiNDI4ZDc4ODIyNThhNDFhNDc0YjhmYjNmMjc2MWMwMGZiMmEyIHJlbGVhc2UyNy1tYWludAorODczMjMgZTlkOTI0ZmUzN2UwM2EzMDVlNmE2ZWNlMmI1NjhkMmZjZjU4Y2QzNSBweTNrCis4NzMyNCBlYThmOTRjZTgyOTMyNjk2ZGUyZWNlYzM2ZjJkMmFjZDU1MGYwM2U3IHB5M2sKKzg3MzI1IGFlZDJiYmFmYTU1MGU5ZGZkZjQxZDMyMjg1N2YwMjRiNzViNGM3NmQgcmVsZWFzZTMxLW1haW50Cis4NzMyNiAyMzkxY2UzNWFkNjk3ZjJiMjY0MzcwNjNkZWY5ZDg1YTk1ODYxNmRjIHJlbGVhc2UyNy1tYWludAorODczMjcgOWJmZDZhYmYwMWNhMjljZGU0ZmJlZWM5MGY4ZTI0ODc5N2FhN2Y3NyBweTNrCis4NzMyOCAwNzRjMjE3MTRhMDI3OGU0ODI5MzQ5NWMzOTk0NDFlMDU1ZTQyMTJiIHB5M2sKKzg3MzI5IDBjMmE3ZTU3ODVjODYxMTJjY2RhYTVlMjk4YmM2MmQxMTk5ODI5OTcgcHkzaworODczMzAgN2E1NWI4MDhlNDkxYzEwMjc2NjIwMTE1NDI0YTI2ZDllMjJjZTczMyByZWxlYXNlMzEtbWFpbnQKKzg3MzMxIDY5YjNhMTUxYWVjNTc0MzIxOTNkMzZlZWI5ZmYzNGNlMzliZThlNTUgcmVsZWFzZTI3LW1haW50Cis4NzMzNyAwNzExM2QxZWY4ZTUxYTUyZmQ1NDdkZGE2NzEwZjE1YTYzMjAzODI5IHB5M2sKKzg3MzM4IDYxOTM1YzhkYzA5ZTBkYjVjOTY2MjY1ZGZiODA5NDQ1N2Y1YTVlNzUgcHkzaworODczMzkgMDE2YjQyNWYwY2QwY2U0NGViMzRmYzM3NTYzZGZmMGM5YmJmMjI0YiBweTNrCis4NzM0MCBiNmQzZmU3MDgwMmYzMjkwZDYzYWRiNWI5OGZjYTdiNGU0MDcxZmRjIHB5M2sKKzg3MzQxIDVhNmExY2EyNGUwNGNmYWExNWY3NzEzYmI3NzQxM2I5ZjUxMzk0ZDUgcHkzaworODczNDIgYzcwYWEwMTFjMDU5ODVlNDYyZWJkZDQ2ZmUxOWY0MjBjNDZjYWY1YiByZWxlYXNlMzEtbWFpbnQKKzg3MzQzIDM0MWI5M2Q4MzE1NzFkODQ4YWNhZTZkYjE4M2U3NGRhZWUwYjY0MjMgcmVsZWFzZTI3LW1haW50Cis4NzM0NCAyMmRiNGQyZjY1NTQ5ODk5OWRhNTI4ZWZjM2NiMzlkMDQ1YTI1YjA3IHB5M2sKKzg3MzQ1IDA1NTBhMjQ0N2MxZTYzMWEwMzlhNzQ4Y2Y5Y2U5N2I2MDc5YmE0OWEgcHkzaworODczNDYgM2EyOTUzZTIxZjc4NTczNDY4N2YxZDdjOTUzOGEyMWNlZjNlNTQ2YyBweTNrCis4NzM0OCA1YmJmNWI2ZDM2NTgwNTI1YzQ3YTVjN2JiNzNhMWUwY2E3MmI4NzI1IHB5M2sKKzg3MzQ5IGFjOGM2YzdjMGNiMzU2NzU0ZDlhOTQxNzVkZjA0OTc0MWY3OTVkZWEgcmVsZWFzZTI3LW1haW50Cis4NzM1MCA4OTIyMzYxMzdkYjk2MTgxMmI0OWVhOWNmY2Y1YzBlMWIxNTk4ZWU5IHB5M2sKKzg3MzUxIDQzYmM1OTIyZjI5OTA2NDVjNTEzNWZlNjNlNjA2MmY5MTY5ZTdlMmQgcHkzaworODczNTIgNjFiYzg2MjY2N2U2ZTNkOWYzYjEzYTU1MWM0MjE1MmMwM2RjYjlkNyBweTNrCis4NzM1MyAyNmMwZjc2OWU5YjQ3MWQxYjkwYjc3NTlhNmJiN2I1OWYwZDc1YTExIHB5M2sKKzg3MzU0IDI4NzE3ZGU0YzU2MmNjM2E5ZDFhZjNkOTc2N2Y2YzA4ZWQ5NGY1NGIgcHkzaworODczNTUgNDA5YmEyNTA4NzEyMjg4NGVhMDY2ZjhlMjM3NWYxYmMzYjk2Nzk4MiBweTNrCis4NzM1NiBhNWVkNGExMjQzMGFhN2IxZGY4N2QzYzU4NTBlYzA4N2RiMTQzYWUzIHB5M2sKKzg3MzU3IDg4NGIxNGVkOGY1NDNkZDc2YTEwNzQ1NThjOGE2YjE0N2MzNzJhZWUgcmVsZWFzZTMxLW1haW50Cis4NzM1OCA2OGE0MmI5NDRmZTM5OGFhNmI0OTQ0YmNjOWMwZDIyNTA3NDlkMGRlIHJlbGVhc2UyNy1tYWludAorODczNTkgY2QyN2MzYzQ0MjM0YWZlZTVhNTQyYjE4Y2Y0Yjc3OGE5ODM4Y2E0ZCBweTNrCis4NzM2MCBhMGE5OTVlMGU2NDAxOWY2YzBiODYxNTI5OTk5ZmE4OGY1MmQxNmEwIHB5M2sKKzg3MzYxIDc4YzE1MjI4OGY1M2E4ZmQzM2MzZjZlNDQzNjllZTJjOTgwYjRkOTcgcHkzaworODczNjIgNGMwNDI2MjYxMTQ4MzFmNzFkZDcwY2QyNDNiZTU0Yzg3MjIwOGJiMSBweTNrCis4NzM2MyBiZjM2ZDZiZGRlNjBiNGFmMDUwYjNlNWQ5YTRjYmE3YzIwNWVjNWNhIHB5M2sKKzg3MzY0IDljZjE1MTJmODgxMmMyMDAxZTBlNzUxZDZmOTJjZGM1YTIwZmY2YWUgcHkzaworODczNjUgYzdhMDUzN2M3ZjNjMjg2NzA4ZTVmYjI0ZGJiYjk5ZWI3M2Q4MjI4NiBweTNrCis4NzM2NiBhMDY2NDdmZjVkOTgxOGUxZmQxOWY1MDA2YzU0OTAyMDk5NGNlNzk1IHB5M2sKKzg3MzY3IGU2NWNkMjFkNWY3MzE0ZWU3YTUxMDg0NDFjYTk2NDdhNDViYWJmZTAgcHkzaworODczNjggZmU3YThhMWJkZjNkNmJjNzIxMDMwMjYyNjJlYWFmNzYzMzg3NjVhZCBweTNrCis4NzM2OSA3MmY1MzZkMTA3NTBmNGI4ZjE0ZDNmYzQ0Y2JiMzFmOTAwNGZjZWFiIHJlbGVhc2UyNy1tYWludAorODczNzAgNmZlOTRmYzAyZmM3NThkMzBlZDc0ZTVjODExM2UyZjY3NWM5MTJjZiByZWxlYXNlMzEtbWFpbnQKKzg3MzcxIDdhYzAzZWMzYjI3OGI5NWQ5NWIzNTliNmFjMDk3MjdiZmFhMWMwYWEgcHkzaworODczNzIgOGFkYjc1YzY5MzA0NzI4NzRiYTEzNTYxMGYzNmIyNWYyNDA0NjRmYiBweTNrCis4NzM3MyAwYjk0NjM1ZWQyZjZmYTg5MzkzMzljNDI2Mjg0NDBhMzM2MzY2NDE1IHB5M2sKKzg3Mzc0IDQ0MDEwMDM5YmRkZmE2OTlkNDhhZmFkNzVhNzVmNjgwYzM1YWI1YjkgcHkzaworODczNzUgMzgxNTU2MzY5Y2FmNmEyZWYzNGRlM2IzYmE5MDc5MTZhY2I2NWJiMyByZWxlYXNlMzEtbWFpbnQKKzg3Mzc2IDVmNDlkM2NiMTk0Zjk3MGQ1MTE5OWQxYzM5ZjMzOWU2ZGRlMGY4YjggcmVsZWFzZTI3LW1haW50Cis4NzM3NyA3MzY5NjRmNzA4ZGVjMjM4ZmM1MWEwNzNmMGNhOWFkZTA0NTAzOGIyIHB5M2sKKzg3Mzc4IDI5ZGI5N2MxNzZjOWNkOWQwMTUwMWEyZmEyNDc0YmY0YTk4Njg3M2MgcHkzaworODczNzkgNTE1ZGUyMjc3MDAxODRkMTNlNzRkMTlhNmE5YjcwZTU4YjU2YzJkMyByZWxlYXNlMzEtbWFpbnQKKzg3MzgwIDdhNDg1OTBhZmQ5MmU0YmY4ZjJhODFjNThlZDg0OThjNDdkYzg0MWQgcmVsZWFzZTI3LW1haW50Cis4NzM4MSBjMmQ1Y2QwMzJiYzkxNjFmOTQyNWJjOTQxYjljYWQyNGVjZGE2OTk2IHB5M2sKKzg3MzgyIDNjMTgyZjcxZDRjOWM1NjYwN2VhYWZlN2M0YjY1NTdhMGZmZTM5N2UgcmVsZWFzZTMxLW1haW50Cis4NzM4MyA5NjUzMTRmMTJmNzE5ZGI5YzNlZmE1MjIwYWY2NGZiZWQ0YjUxZmMwIHJlbGVhc2UyNy1tYWludAorODczODQgOTM4NWM1MzZmNDU0ODAyNzk3MTJlZGFjODZiYmQ2M2I4ODc2Mjg1NiBweTNrCis4NzM4NSBlZTliZGFjZDNjYjYxMDA5OTk3OWI5YzcwYmJlMWRkZjc2MTEyMzMwIHJlbGVhc2UzMS1tYWludAorODczODYgMGFmOTRmOTc2ZDUwMThmZDJjNWIwNmJjZjViODQ5NGY5MzEyODZkYiByZWxlYXNlMjctbWFpbnQKKzg3Mzg3IGRhZTUxNzZkN2I3ZjMwMGMyMmUxYjAwZDYxOTI4YmE0MjdjNDlhYWUgcmVsZWFzZTMxLW1haW50Cis4NzM4OCBkMTZhZGQ1NmRhYzAzNGI5ZWNjZGEwYzhjYTY3YmVlZjlkMTA0YjE2IHJlbGVhc2UyNy1tYWludAorODczODkgNTUyYmFjNzU1OGU3NzkyYjBiNDFiMTdlNjhmOTgwN2Q5ZTViYTQ1MiBweTNrCis4NzM5MCA0ZTIyMjAyZTYyZjgzY2QxMjMwYTJhMGMzZDNkZDE4MzI3YzIwOTg3IHB5M2sKKzg3MzkxIDlmYjg5ZmFhNTk1ODMzYTIwMDQ5ZDM3M2M1ZDJiOTRmYmNlY2MzYzMgcHkzaworODczOTIgNGUyYjg2MGU2NTdjOWFiYjQyZGJjMzVjMjQzN2U3NjIyNTA2NjJjMCBweTNrCis4NzM5MyBlNThmYTk4M2E5NGVmOGNmYzBhYjI1MWViOTZlZmEyMDE5NDFlZGNkIHB5M2sKKzg3Mzk0IDRmYWZlOTdkMGFkYmE2ZjA0MDMyOTIyZDUwZTA0N2VjMzBhZWJjNDMgcHkzaworODczOTUgNWI4MDI2ZmFhMGE3M2Q2MTc5MTU3NmY3YjVmNDdlYzg1MDEwNjJlZSBweTNrCis4NzM5NiAxM2I0YTBmNTJjMmMyY2JmNGRkNmQ2ZDMyZmNhZmZjNDI4Y2I2NTc1IHB5M2sKKzg3Mzk3IDdjMzBkMGYxMDI4YzRkMzc1NDZiNjUxODk1NTA2YmYyZTM4YjUzOGYgcHkzaworODczOTggNDdjYzQ4OTY1ZTUyNTM0OGJmZGJjNDRhYTkwY2MyZTRjMmZjYzE5MSBweTNrCis4NzM5OSA2ZjU2YjI0N2E3Y2QyODIzM2NiMDg3NTdmYTI4NGMzODAxZDMzN2Y5IHB5M2sKKzg3NDAwIGUzYWY1ZjNhNzkwNGMwZDUzNDNlYzk2MzNlYTY2ZTdhY2ZkMjNhNjYgcHkzaworODc0MDEgOWIyNjI0ODgzMGY2NWNhNjFkZThkNzYyYTFiZmZiYzk3NjBhNmJmYiBweTNrCis4NzQwMiBmYzk2YmQxOGJkYzYxYzU4OTI0MjAzMDAxNmRiMTA2YTA4YTQzMjg1IHB5M2sKKzg3NDAzIDZkNTYyN2EwNjY3NzhkZGQ5YjFlYjY2NTM3NmRkMmVjNGJhMjVlN2MgcHkzaworODc0MDUgM2Q4NmNkOWZjNTM0YWVmYWFmNTczNmNiZDQzYWVmOTg2YTg5Yzk0NSByZWxlYXNlMjctbWFpbnQKKzg3NDA2IDBjNGFmYzVmNTkzOGUyN2JlOTUwMjEzYjlhNTliYzkyZmVjNGRiYzUgcmVsZWFzZTI3LW1haW50Cis4NzQwNyA0N2RiZjNlYzFhZDdkODI5ZDE2ZDM4NDM4OGMyOWFiMzE3ZjNkNDJkIHJlbGVhc2UyNy1tYWludAorODc0MDggMjQ4OTRmYTdjNThjNTBjNWJmYTY4Yjc5N2U2OTIzZDEzZjVkMDE5MyBweTNrCis4NzQwOSA1MTc5NGFkYTY4MTBhZjQ5OGQ1NzIxYzQzNTZkMjZhMzA0YjI4MTdkIHJlbGVhc2UyNy1tYWludAorODc0MTAgMjJhMGVhN2Q5NzRlYjZkMjM2YmFhYTM5NDQ2MTQwZmFhOTdjOTAyOSByZWxlYXNlMzEtbWFpbnQKKzg3NDExIGY1NjdhNmM4NTkzNjQ1ZDg3NzY3MzRmMzViMzIzZWFlOGI2YzNiMzQgcHkzaworODc0MTIgZmNhYTk4N2NjZWEwMjA2MjdjNGYwZjc5NzY1NjcyMmYxYWZlMDU2MSByZWxlYXNlMzEtbWFpbnQKKzg3NDEzIDM2NzE5OGI3MzNjZGJiNDI2NmZhMTQxMzhmYmM4MDM2YjYzYTEwMjQgcmVsZWFzZTI3LW1haW50Cis4NzQxNCBiMTY4YjJjYzFiMjFkMmUyNDNhOGE2Y2U5MTE3ZWI2NWM2M2EzM2RmIHJlbGVhc2UyNy1tYWludAorODc0MTUgODE1YjY5MTc1NWZhMGJmYzI0NGIzNTI1NTkyMWQyNjVlN2Y0M2ZmOCBweTNrCis4NzQxNiA4Njg1NzExNTg2ZDQzMWVjNmJkNWQzNWMwN2YwMTRjYWNmMGFlNmI0IHJlbGVhc2UzMS1tYWludAorODc0MTcgNTY0YTQxNjY2ZWY2ZjRiMTYyNWM3NmRmNTJkNjFhMWVhYTNhMTk0OSByZWxlYXNlMjctbWFpbnQKKzg3NDE4IDhiNTNmMjU2MTU5YWEzYWFiODQwYWQ4ZDMzZTQzMmEyZjYyOTE1YTYgcHkzaworODc0MTkgNTJkMjljNzE1OGZlMjA3OTJhMzMxNDk2NzY0NWU3NzQ5MDMwNWIxZSByZWxlYXNlMzEtbWFpbnQKKzg3NDIwIGNkMWRlZTU1YWNlODRlZTY5Yzk2YWVjMTRjYjllMzU5OWQwNDY0ZjAgcmVsZWFzZTI3LW1haW50Cis4NzQyMSAyMDRiZjQzM2QzNjZhMzA3ZTQ2ZDlmYmNjMjk1M2Y3ZTJjM2RjMmQ5IHB5M2sKKzg3NDIyIDA5OGM5N2U5NWQ5MzE5ZjVjNzZlYjM4ZDZiODVlZDE0MjkzNjRlMDAgcmVsZWFzZTMxLW1haW50Cis4NzQyMyAwZGFmMzkxYTFmMWRmODY4ZDcwMGY0OWQ3N2ZlYmFkOWQzYmEwYzIxIHJlbGVhc2UyNy1tYWludAorODc0MjQgZDVjOGNlM2E3MGQ0ODk4ZDVmOWJmZjdlNDc2YjA4ZjJmMjA1ZTBmMyBweTNrCis4NzQyNSAyZjJkZTZjYzYyYzc4MDQ0ZDE2MDg0ODgxNTg4MWZiYzQyMGRlNWFhIHB5M2sKKzg3NDI2IDU3MmY3M2ZmMjhjMjIyZmU0MDJlZmNjOWM4NzA1OTVmYTM1MWM2ZjggcHkzaworODc0MjcgYTg0MjA0ZjExNmY4YjY3ZjRlMmMwOWE4YzdmZGM4MDFjYzgzMTI5OCBweTNrCis4NzQyOCA1Y2Y4NTU1ZTViZTU1YWUxMjQ2YTNlOTA1NTEwZjM5YWFjM2E1NzM0IHJlbGVhc2UzMS1tYWludAorODc0MjkgNTk1ZjI1ODgwNmVmZjBhZGJjYjVhNDU5MTY5MzQzODQ4ZGQxMTRmOCByZWxlYXNlMjctbWFpbnQKKzg3NDMwIDQzOGE0Njk4MDA0YWRkNTQ4NmNmN2JjNGJjZGM4ZDQyODM0ZWE0YTkgcHkzaworODc0MzEgNTYxZWE2NDAxODhiMzQ0ZDYwNGVjMGEyZGQxMzgwYWM0MTAyNThmNCByZWxlYXNlMzEtbWFpbnQKKzg3NDMyIDNmOTA1MWQ4NjYwMzI5MTkyNmFmZDBjMGZiM2UwMTQwNGEwNjc5NDEgcmVsZWFzZTI3LW1haW50Cis4NzQzMyA4ZTdkNGMzOTc0NTg3Y2QzNWI0NTk4YzIyNjM0MGNjMDM2YTY2NTQ3IHB5M2sKKzg3NDM0IDUzYTQxYTExNzQxMWJiYjBmMDE1OWJmM2ViYTJjZDVlYWFiYjBhZWEgcmVsZWFzZTMxLW1haW50Cis4NzQzNSBjNjNhY2U1YTUzNDZiYjBhOWIxNTIxMzcyMDkwNTAzMmE0Yzc2MDVmIHB5M2sKKzg3NDM2IGE4MmRmMjA5ODU4YTY0ZGZlMTFjZTE5Nzk2NmYxZDVmZTFiNDZkMzYgcHkzaworODc0MzcgNmZmNTBjZWY5ODRlZTU1OWIyOTk3N2Y0NDNhMjNmN2JmNTYwZGI5NyBweTNrCis4NzQzOCA5MjUwMmIzNjc0Y2JlYzc4Y2Y4MmIyMzBhZmRjYWZjNjFlNjMyM2ZlIHB5M2sKKzg3NDM5IDZmNDgzNDJlOWUzZGY2OWIyZTc2ZjE5Y2U2YjA0MjFmNTE0YjQ2NWUgcHkzaworODc0NDAgOTlkMTQ2M2VkYjU2YzFlZDc1ZWM4NTFjZDJmYzBjNjE3ZTRiNTlmZiBweTNrCis4NzQ0MSA4OWE0MTZmZDdjMjk3MDdiZDQxZmY4NDVhNzljMWVkNzZiMDZkYjQ0IHB5M2sKKzg3NDQyIDZhNjIzYTc2NzA2MjJjNzJjM2Q1NGQ4NjNkMmQ2ZDljNThlOTg3NjcgcHkzaworODc0NDMgZTIxOWZiNDEzNGUzYmQ3ZDZjODI3NzI1MzBiMzZmOTY0MWE4OTJjMSBweTNrCis4NzQ0NCA0ZGMyNDhhYzI2NGY1ODkwNDE4ZjMyNmE5MjVhMTJiOWRiZmU0YTFhIHJlbGVhc2UzMS1tYWludAorODc0NDUgY2YxOGQ5ZTUxYjlkNjAwNDMzYTNhN2JkZTNlZmYzZGU5MjVkYWIyMiBweTNrCis4NzQ0NiAzNmFjM2Q5ZDc0YzE1MDUyOWExY2NhNmU1NGE0MWVkOTJhMjVmNGNlIHB5M2sKKzg3NDQ3IDgzYmNkYWQyNTMzNWY4YjIxOGFhMTA1ZWI5YzM1NGQ5NDY5MjBhZTkgcHkzaworODc0NDggMTIxYmEwNGYwZmJiMTAxYWJiMzk3YWFiZTA0ZjZjZTllOGE2MmQ1YyBweTNrCis4NzQ0OSAyMTkyYmI5NWY1NGIwZGFlMWUzZjg5NTgwZGY4Y2U2ZDljYzMxODdjIHJlbGVhc2UzMS1tYWludAorODc0NTAgOTNmNTYxOTRjZjViODJjMzNiZTIzN2IwZjBiNDMyMzY4NmE0MTJhMCByZWxlYXNlMjctbWFpbnQKKzg3NDUxIDc2NTc5NmEzNGFiZTE4OGQwNDU5MzUyNmU2ZGFlNjY4MDNkODk0NTIgcHkzaworODc0NTIgODE5ODJhY2VkODZiYzk1YzczNWUwYmJmZTg3MjY4NzI4MTY2ZjQ1YyByZWxlYXNlMzEtbWFpbnQKKzg3NDUzIGI1ZDAzY2ViOGQ3OTA3OGUzOTNiN2E0MGMwNDdiNzg0MjE2NTgzZGEgcmVsZWFzZTI3LW1haW50Cis4NzQ1NCBkNGUwZGE3NjE4OGI2MDI2N2FiYTU4ZGM4M2QxZjNhZGFjM2JmYzlmIHB5M2sKKzg3NDU1IDNiNjE1ZWU3ODdiMGYwNjdlNDdkNGY3NTE1M2IyMTNlNTgzMzgwZTQgcHkzaworODc0NTYgYzM0YWM5ZjlkZTgzMTdkMzYyNmQ2OWMzZTE0NTVmMDM4NTIyNmIwOSByZWxlYXNlMzEtbWFpbnQKKzg3NDU3IDVjMDgyZjE5N2RkZjc3M2VkOWViMmExOTEwODc2ODU3MGRlOWM0M2EgcmVsZWFzZTI3LW1haW50Cis4NzQ1OCBmZGI4YjAyYzFlNjViMzUyM2ZiYmNlOGFiYTIwY2I0MjEyZjMzMWJjIHB5M2sKKzg3NDU5IGUxYmYzYzFjOTU2MTM0MjVhZGRlODVkOTdiNzM0ZWZiOWFkMmExZGIgcHkzaworODc0NjAgY2FmODlhNmExN2E3ZTg0YmEwZjRiYTJhMTRiMGZhYTMyYzQwNzBiZCBweTNrCis4NzQ2MSBjZWYyODE3ZWExNTcyNWU5NGYwOTI3NzVhMTQ5MGQ3MDU1NzA2NzI0IHB5M2sKKzg3NDYyIGQ1ZmFhOWZmZGYyYTkzMzg0ZTIyZGY4YzIyOTljNDNhMDY4Yzg0YTEgcHkzaworODc0NjMgMDk2NzMxNjIwZmYyYWVhY2NiNTQyM2U3Mzk3Y2VmMDM0NTRmMmE3MiBweTNrCis4NzQ2NCBjMzdkNmRiMDJjODRkMDNkYzY2MjYwZDNiZmJkOTUxMDY0NjQ1MmVkIHJlbGVhc2UyNy1tYWludAorODc0NjUgZDJjMjhhMzdmNzYzMDY3NTA0NDIwZTVhODg5MDkwNzAwZGQ3ZGMyNiByZWxlYXNlMzEtbWFpbnQKKzg3NDY2IDg5YWUyYzNiMDg1Y2MxYjM5N2I2MmMwOGVlZWRmNjdjMmMyZGE3MjggcHkzaworODc0NjcgNTEzMjQxNTRmODkzZjdiNTVlMTE5YmEwOGU1ODI5MWEzM2I4YjdkOCBweTNrCis4NzQ2OCAxYzU2MGY0YjVlNWI0OWQwNGUyY2NjMjJjYmU1NTkxMDRlNzA2NTg2IHB5M2sKKzg3NDY5IDk2OGRiM2U1YjFkODAwMDhmZTY2MjcwYzY2ODc4M2FmYTYzOGZiYmIgcHkzaworODc0NzAgNjE4NzY2MWNkYzA4OGJjMmIyMDE2NjBlMzdjZDlhZWM5ZTI3M2YxYiBweTNrCis4NzQ3MSAzOWNlYTk4MDkwNWQzZDJjMzFlYTczNTY5MjYwZDQyODhkMWI2Yjg0IHB5M2sKKzg3NDcyIDJlOTY3MGQ2NzAxNzMxZTVjZmNiMzA4NmY2YzJmZGFiMTM2NmRmMmMgcHkzaworODc0NzMgYzUxMGMxNTA1Y2U3MjM0ZWIwMzlmNTAzZWExZDY2OWEzYzliMTY1ZSBweTNrCis4NzQ3NCA1NzAxYTgwODQwMDE5MTdmNmZhMmZjMTZhYzllNzdlYjQ3NDE1ZWZjIHB5M2sKKzg3NDc1IDg0YzFkMjY3OTcwNzhmZjhmMDA5MjE3MGRhNzM2MjNkZjdlZTE0ODQgcHkzaworODc0NzYgMmQ4MmNkZjYyYjJjZGUyZmQ1ODUzNmNhNTc3MDQyYTU3ODQ3NDZjOSBweTNrCis4NzQ3NyA2YzhhMWMxMTc2MWI0ODkxMjQyOGQ1ZWEyZGQ2NGQxNTkyYTRjMDM1IHB5M2sKKzg3NDc4IDhlOWE0N2RiMzkzY2VmYmUzODM0YTQ5MmNkODY4N2NiYmU4ZjRhZTggcHkzaworODc0NzkgZWQ4ZGY1YTkwY2YxOTYyNTA1OGQyMmQ5MzZkMWQxNDRmOWQ5NjI0MCBweTNrCis4NzQ4MCA5NTAzYjA2NjI1MmRkYjE3OTliMzhhMjEyOTljNjE4MDFiZjRiMzI5IHJlbGVhc2UzMS1tYWludAorODc0ODEgZDUxYWZlNDdkZTczMmE0MGJlNWQxNTlmNzRmMzllMzEwMmNlYTcwZSByZWxlYXNlMjctbWFpbnQKKzg3NDgyIGZhNGRlNjZjN2RlZWIzYzdjOGZlM2JkMTk3NGUzOTA5ZDdjYzQzNDYgcHkzaworODc0ODMgYzU2NmM0MTMxNDM5ZjE3NzhmMzE1MzBiOWExMGRkZjc0NzFkYjk3MSBweTNrCis4NzQ4NCBhNjdiNDJiZmY0NzE4NjI3ZmZlMzEzMDk1NDVkZDAyNjFmMWMwZWZjIHB5M2stZnV0dXJlcy1vbi13aW5kb3dzCis4NzQ4NSAzOGQ2Njk4MDE4N2UyODQ2NDViMDgxZTZiMWYyYjE5Yjg4ZmVjZDg1IHB5M2sKKzg3NDg2IDY3OGQ4MzM2ZjRjM2RjNjZlMzU3M2MyODU3ZGE5NDkwNTZlNTY3OWIgcHkzaworODc0ODcgMWIyMTYwYWQ0YzZlNGE2YjkxNzYyYjQwZGJhZGE5MmYxN2I2OWQ4MCByZWxlYXNlMzEtbWFpbnQKKzg3NDg4IDQ4OGVkNTUwYjdmODg4Y2VmOGViMDViZDUxNzkzNDFlMTQyNTlhY2YgcmVsZWFzZTI3LW1haW50Cis4NzQ4OSA0YjkyNmExM2RjNTQyOGZhYWZjYmRlMWY3MGJlYzJlOWNjMjY2ZTZmIHB5M2sKKzg3NDkwIGEwMTUzM2IwMWI5YzliYzE2OGZlN2QxMDc1MDM2OTM3N2UzNmI0ZDkgcmVsZWFzZTMxLW1haW50Cis4NzQ5MSBkNWJiYzY1YmMyYjNlMDFhMzRlYWRiM2M2ODU5MDcwZDYyMGE0YmE1IHJlbGVhc2UyNy1tYWludAorODc0OTIgYzE3YTQ5OTcyMjQ0MTQ3NDg2YTc5NWZiY2RjMmVjYzc1Y2RmNmIwYyBweTNrCis4NzQ5MyBiZjA5ZWNmNjhhMTk5OTg2MWI3MWVhMTQyNjhiN2Q0NGY5ZDBjMzE2IHB5M2sKKzg3NDk0IDRkMjBhZWE2MDVjNWZiNDQwMGMzYjdiMTI2NzBiYjBjYjZlMTY2NmQgcmVsZWFzZTMxLW1haW50Cis4NzQ5NSBmYmJlZmNkNmExYTY5NWFkZmI2ZTBjYjQ3YTkzNGZkZTFmNGM0YzgwIHJlbGVhc2UyNy1tYWludAorODc0OTYgZjRiYTU0ZTBiYTc3NDUwNjMyNTY4MzE5OGM4ZWM4NTAxODA5NGJhMiBweTNrCis4NzQ5NyBjMmFlOTBhY2M5MDg4NTY2NjA4OWQ0YzVkNGUxMjc1MTY4NDMwMzgzIHB5M2sKKzg3NDk4IDEwOGJjMTI2OTMwZjdmOGYxMmVlYmNmNGJkNGMxMDllNzEyZTY2NzggcHkzaworODc0OTkgZTIwYTY0MzZhOTI3MGY4YWU3ZjUwYjI1ZDFjZTBlNDYyMGM4NzZkZiByZWxlYXNlMzEtbWFpbnQKKzg3NTAwIGRkNmQxZWNiZWI1NmQzY2EzMzJhZTJkOTIxMWM2YzQ2ZjRlMzBlMTIgcmVsZWFzZTI3LW1haW50Cis4NzUwMSBiY2Q2YTY1YjhiMjIzZTU1YTI5OTUzMjc1MzA5ZWExZmRkZDFkNmM5IHB5M2sKKzg3NTAyIDQ0MmYxZGEwMWE4OTgyZDRhZWM0N2ZkZjVmMjkwNGEyZjk0NDhjYWIgcmVsZWFzZTMxLW1haW50Cis4NzUwMyBkNGQzYzg5YWIzODhmMGM5NTFlZjQ4MjNhMzkyZmYyMjM0ZjIxM2I3IHJlbGVhc2UyNy1tYWludAorODc1MDQgOTNlOTViMmUxYTFhMjNiM2IxYjViZTljZWY2MmUwM2MzYTZlYTM4NSBweTNrCis4NzUwNSA0YmI3ZjdiMTUxZmVhOTQ5OGNiNTI2NzE5NzJiYzdjNzdkMzRjMTgzIHB5M2sKKzg3NTA2IDY2ZDg0NDZhMDE5YmU3Njc5OTQ0Y2MzYzkwNzZhZDk4YWY2NjI5YTUgcHkzaworODc1MDcgZjYxMTk2NDUzYzc4MWU3MDZmZWNiMThkZWIwNzk5Mjk3MWMyNGFkZSBweTNrCis4NzUwOCAyMmMxMmE1ZDhlZDMwNTE1NTI3MDU5YmM2OWMwNmQ3YTczNzZhNDkzIHB5M2sKKzg3NTA5IDVkYWUwNGQ0OWUxNWM5OWRlODU5Y2MyNTI4ZTIzN2MxOTFmNWZlZTggcmVsZWFzZTMxLW1haW50Cis4NzUxMCBjNjk0Njg1Yjc1ZTI0M2ExY2FhN2IyYjAxODhiNDNhNjZlM2JhYjkwIHJlbGVhc2UyNy1tYWludAorODc1MTIgNjY0NzA1ZGJmZTYyOTllMTlkMzAxM2I0NzJlZDA1OTE3NDI2NDBhMSBweTNrCis4NzUxMyBlZmRjNWQwZDgxYjcyMWMyOGNhNjNlODczYWQ0NjM1Y2VjZTllNjYwIHB5M2sKKzg3NTE0IGJiZjc1MWZkZjQyMDY3N2M1NGJkYzIzNDZlZmRiNmM3NzlkMmRlZGMgcHkzaworODc1MTUgMmQwOWFmNGMxMzdjOWM2ZjNjZjRiMTU1M2ZmZjVjNDcwNjQyODQwOCByZWxlYXNlMjctbWFpbnQKKzg3NTE2IDg5NTQ5NTM1ZDk3NTg3NDIzMGUyYjk5NWZlM2MxNWEyYzExMWQ4M2UgcHkzaworODc1MTcgNmYxOTYyMmRkMzQyYjRkOTJmMGM3ZTdiNTgwZjBjOWVjOGMxNmIyMCBweTNrCis4NzUxOCBmYzgzNGIzMjNmMjY3ZGQ0NGRmZTlhZTdlZjkxOTdkMjc4YmU1YWFmIHB5M2sKKzg3NTE5IDU2MDVmNjkyMGI2MzhlNDA4ZTliY2M1YmZiNTQyYmE0MDc1ZGVlYmEgcHkzaworODc1MjAgMzA1YWY2ZjVjYWJmOTRlYjQyYjk1NzA5NmJlMTI2Y2E5YTEyNDg4ZCBweTNrCis4NzUyMSA1MzIwOWQwMGQzYWIxOTJlNDY1YzM0NTc0YmE0ZDFlYjkzYzM2OGMwIHB5M2sKKzg3NTIyIDAwMDQwMTNhZTk4NGE5YzQxNTMwMzJlM2JiZTAwZTc4MGIzNmE2MjggcHkzaworODc1MjMgMTA5ZGVmYzFhOGNmYjJlMmIyZjQyMDczZDNkYTYwNjBlODAxMTIwZSBweTNrCis4NzUyNCAzYTQ4MTZjMzZkZjdmZWNkNzk2OTRlZmMyMWNkZjE4ZDk0M2Y4YzFmIHB5M2sKKzg3NTI1IGUwYzUyYzBlODU4NjIzMzBjZjIzMzVkNjZiZjRmN2YxYTM3OWE1NWYgcHkzaworODc1MjYgN2Q1NTFkNWVmNGZjZjQ2OThlZDYyY2E4ODUzYjc2YTk3MDk4OTlhZCBweTNrCis4NzUyNyBjZDZlMzQzZTI3OGU4YzI0YjEwOGE5MmNjNTA0YTY1ZDU4ODZjMTFjIHB5M2sKKzg3NTI4IDYxNDQ4Y2RjMGZhOGMwZjViMmUzMjdhODM4OTExMGViNzVjNmE5MDkgcHkzaworODc1MjkgZWY5MzUzMWQwYWM0N2M5MjFmZWYyOWU4YzA3NDlkNGM1NDM2M2UyNyBweTNrCis4NzUzMCAyZTI0NzZmYjgzZWZmOTBlZDdjZWYwNTNjYTI1MTI3NzQ0N2QwNTY3IHB5M2sKKzg3NTMxIDRhNzczOWM1Mjc0YjhhNWI4MmZmZDY0MTM4MTkxOTFiYzA0ZWY5YTMgcHkzaworODc1MzIgODgwNTg2YjhkMGQwMTU3YmFmNGQ5ZWQ2YjU1MDMwMmNlNDRlOGNmMyBweTNrCis4NzUzMyAwMTcxNGVmZGM2Y2YxMjA5NGNkNzBlNTQ4Zjg4MjdlNzM5NDk5OGNiIHB5M2sKKzg3NTM0IDhmY2I4ZjI2NTVhNTkyNDA4NTNjZjE2ZWZjOGZhNTFhZjIyYTc3OTUgcHkzaworODc1MzUgMTRmZDBkZmIxNmZmYzM2MjY5YTZhZDkzYjgyMjZkN2M5Mjc2NDM4ZCBweTNrCis4NzUzNiBmNTA5MTI5ODM0NjE3Yzk2MWFjMzc2NDNkZjcxYTM1YTI1MThiZjRhIHB5M2sKKzg3NTM3IGI5MDFkYTU2MWNkMTQwNzBmYmM3NjY0MjM1MmMwNDM4ZjM4MGVmYWEgcHkzaworODc1MzggYThiZTA1NjczZjM0Mzc3ZjBmNDEwNDk4ZmViOGI4YzEwNWMxYzhjOCBweTNrCis4NzUzOSA1YWE0MzNhMjc3ZjkzN2ZjNzhjYTJjZWUwMjdjNmVjNmJmOThhZmUzIHB5M2sKKzg3NTQwIGE0ZWMyMGNjOTA2NjY4MjFiMTY1YTk2ZGU2ODMwYzk1MjdiY2YzYjIgcmVsZWFzZTMxLW1haW50Cis4NzU0MSA1NGYxZDU2NTE1NTU3NGE3NzNiMzMxNTY0Mzc5MmM4MjI0ZTcwZDljIHJlbGVhc2UyNy1tYWludAorODc1NDIgMThiY2VlODU2OWJiMzdhNDRlMmJjYzllODUyMDM3YzBiYTI0OWY5OSBweTNrCis4NzU0MyBjYzc4YTZiZWZiZjJmMWY2ZWVhNGI1ODBmMjhhMTU5ZDdhODRkNjRjIHJlbGVhc2UyNy1tYWludAorODc1NDQgMDVjY2NkNDI1N2EyMmE4Nzg0MjkzN2ZjMjljN2ZmYWYxNzVjMzY2ZCByZWxlYXNlMjctbWFpbnQKKzg3NTQ1IDM1NDZjZTFhYTM1NWJjNjc0MTllNjViZDU0YTFmMmFhN2M0Nzc4NjUgcmVsZWFzZTMxLW1haW50Cis4NzU0NiA1MmE4NjE3NDYxMjk3YmI5NTk0NmM3ZjliYWU2OGEwNzA0YTFlMWZjIHJlbGVhc2UyNi1tYWludAorODc1NDcgNmNjZGIxZTAxNjExNTc0ZDFiZTAzZTlmZTUyMWI0ZWZhM2QyZjJhMyBweTNrCis4NzU0OCA2OTQ2MGM4MDU3MzdiZTgzNTFmNWNlYjJlNTBlYWY1NWViN2ViNDAxIHB5M2sKKzg3NTQ5IGI3YmU2NTJkYWY2ZWUzMjIyMDdiM2E0MGNhYmVkZTgxZGZhMDVjN2UgcHkzaworODc1NTAgNzdkZWRhYTM2ZDNhY2I4YWZjMzFjMzY1YjIxODdiOWJiOTNiY2FlYyBweTNrCis4NzU1MSA3NDFiOTNiYzY4YTViZWJlOGQ3MWVkYjQyOTBmNDY3MzA3Y2YyN2FiIHJlbGVhc2UzMS1tYWludAorODc1NTIgOTU1OWUxMTUyNTk1Yjk1ZGQyZDQxNzMyZjY1YjRlYTI1ODQzMjRmOSByZWxlYXNlMjctbWFpbnQKKzg3NTUzIDBkOTdiYjk5NDI1ZGVjYTFmYWNiZjkwNTI5MDhjY2FkYTA4M2YxZmQgcHkzaworODc1NTQgNWJiYzFkYzQ1OWE1ODFmNjc2ZDk1ODNiMjRlNmMyZDljNjcxZTViMiByZWxlYXNlMzEtbWFpbnQKKzg3NTU1IDFkZjIwMjFjN2MzYzQ3ZDJmYmFkMDhhY2JkNTAyYmJiNzBhOWJlYjIgcmVsZWFzZTI3LW1haW50Cis4NzU1NiAyNDk4OGY5Zjg1MGIxYzNlYTAxNmIxNjI0NzY4ZmI0ZjJlNjQ0YzEzIHB5M2sKKzg3NTU3IGZhNTk4OGY3YzhiZDI1NzA2NDhjNTRhMjA4NjA5ZjgzNGY3N2IwNTggcHkzaworODc1NTggMmE3NzNiZWY0MGMyMTE3NDNlMDRjNjViZmZmZWVkOGVjYWI3MWQzMSBweTNrCis4NzU1OSA2MDMyM2EwZTgwZDdjMWZmYTJiMzJmZTI0ZTNkY2QzYTJkODVmNmUwIHB5M2sKKzg3NTYwIDM3YTkxNWJkZjgyN2JhNTE0MjU2ZWViYjJkOGViYTI2MTJlMDc4YTMgcHkzaworODc1NjEgNDI3ZjlmMTU1MDQ4NWU4NDQyOGE4ZWZiOGQ3ZDUwOTUwNDJlNzliZiBweTNrCis4NzU2MiAyYjQwZTRjNzc3NzU1MzcyNmU3MjJkYzVjOGQyOGViZjk4NWFlMmUyIHB5M2sKKzg3NTYzIGIwZmFmN2E0NTIzOTUxMTQzNDAwZTc2MzhjNWFlY2U5YzZlOWVmMjIgcHkzaworODc1NjQgOGI1ZWViNWY0NTQ2NjRiYzdkNmRiNjgzNjcxMDcyZWI0M2M4ZjM0YiBweTNrCis4NzU2NSBlMmU1OWNiNGY1MGNiMmMyOWMwMDI3MTAxNjdhMmE0MjQxMGUwMmYxIHJlbGVhc2UzMS1tYWludAorODc1NjYgMDBiYjA0MDZiZmVkOTQwMWFhY2E0ZmZiZDM3OGVjM2IyNTIyZjZjYSByZWxlYXNlMjctbWFpbnQKKzg3NTY3IGFiNjFiYWIzMjFjMTAxMTk2NzAyMTdhYTFmNzkzYjBmODllZjA5MTMgcHkzaworODc1NjggN2U3MTZiOWE0MDNkMTQ5NDlkZjJhNGU5NWVkNjdiMjdmNjNiYTkxZiByZWxlYXNlMjctbWFpbnQKKzg3NTY5IGYwNjk3Y2E4YWQ0NzZkZDg4YWYzNmEyNjkyYjIxOGIyMmQ3MDU1NGYgcHkzaworODc1NzAgMmU1OTJhNGU2OGFiOGY2MDcxNDQ4YzBlYjg5NzMzODU1YWMwNDE0MyByZWxlYXNlMzEtbWFpbnQKKzg3NTcxIDJlMWRiYjI1MmYyNTc4MTlhMDEyOTNkNDdlNGRmY2Y4MmI1NTBhNjYgcHkzaworODc1NzMgMTBiODM2NjgzN2Q4MGRlNzM1YTFiYzIxMTQ5NDJlYjFkMWIzMjBjNiBweTNrCis4NzU3NCA0MWQ1YjZjYTE5MjNlZjlmNGI3MDc4YmYxMTM2OTllZTRiN2Y2ZmM5IHJlbGVhc2UzMS1tYWludAorODc1NzUgZThlNjRlYjRjYTRjZjU3ZjQ4ZGNlMTM2OTJhYTQ3YWYxMTgxOGE4ZiBweTNrCis4NzU3NiA5MTM4NjM0YjhiZDE0NjAyZGQyNWZhYWM1YWFhNGZjOGU3M2FhZjgzIHJlbGVhc2UzMS1tYWludAorODc1NzcgNGM4M2EyOWE3MTJmOTE1ZGE0ZjlmYmFlMjEzNzg4YmQzZTYwZmY0OCBweTNrCis4NzU3OSA4N2U2YmRiMzczZDEzZDU1Zjk4ZTZhMTBhMDM5OGI3NzJjNjM0N2E5IHB5M2sKKzg3NTgwIDE2MzE5ZjliZTk3YzRlYjlhMTVhZTMwODEzYTRkMWZkYzI5NWZjNzcgcHkzaworODc1ODEgNTRlZjUyZjk3MWE1MTk3ZjNjZTZhMDIxYTgzMDRlZGExYWJhYzNlOCBweTNrCis4NzU4MiA2M2JmODRjZmQ4YTYxNGViODU2MDAxMmM1OTBkYzRjOGZkNDQwZDI5IHB5M2sKKzg3NTgzIGYwYjU2YTM4YTUyNDNiZTAxN2MzZmZhOGNkMWFlZTNlNGRiNTg5MGQgcHkzaworODc1ODQgNDRlYjA5YTU1MzkzZjA3YmU5YTRiOWI4MWZiM2IzNzQ1NTIyMjcxYiBweTNrCis4NzU4NSBmMzdmOTZmY2U3Yjk0ZGE3ZjMzNzI5ZDVjZjc2NjRjOTJlYWY5M2Q5IHB5M2sKKzg3NTg2IGZkYjZiZDFkNTM1NGNlODM2ZTQ3MTQ5YzQwMGExNjg0NjI5OGJhNjYgcHkzaworODc1ODcgOGM3ZGYwMzU2MDM2MDIwZmVkZGEwNjg1Y2I5ZjNhMGYyY2NiMTliYiBweTNrCis4NzU4OCBjYWNmZmYzNDlkNDhkNzMyY2IwZmQ4YTk0MjJmZDQzOTVkOGRhZWNiIHB5M2sKKzg3NTg5IDBkZmI4Mzk3YTk3M2JhZTZiMTZkMWE3ZjFiNjk1NjY0OWIyMTE0MmEgcHkzaworODc1OTAgNzAyMDM3YzAzOWZmMDEzOTQ5NDRkZWJiZmMzZjNhMmNkY2I3MmYxMyBweTNrCis4NzU5MSBjNzJlZTZlM2I3ZGY4YmI5ZDE4Y2JmNDBmYTJkZjA0MzE1NzE0NDI5IHJlbGVhc2UzMS1tYWludAorODc1OTIgYTEzYjg2NjNmZWJhYzc3ZWRlNTQzM2NmNDQxNmNkN2RjNTgzYzAyNSByZWxlYXNlMjctbWFpbnQKKzg3NTkzIDU1MTAwNjNiMzlkNDAxZTBlOGY5OWMwOTM3MDQ0ZGEyOWZlYjJkYjQgcHkzaworODc1OTQgM2ZlNjZmYzIyMTdiMzAxYTliZTRlNjgwZDUwNzY2YTRjMzgyYjIzNSBweTNrCis4NzU5NSBiNjhmMzg3ZmJiNDhhOGJlNDUzYTFlMzgyNjVkYzhmNzAyMWIzZjA2IHB5M2sKKzg3NTk2IDg3NTcyMWRhNzQ2ZDM1YjdjYjk2MTZlYmZmNTYxOWY2NDI2MWJiZjkgcmVsZWFzZTMxLW1haW50Cis4NzU5NyA1M2RiMjkwZTQ2ZWY5M2I4OGRjZThjZTZjZWYzNTk2M2I4ZWI5NzY4IHJlbGVhc2UyNy1tYWludAorODc1OTggOGY5MjRjYWYyZTVlOThkYzk4NGNiYjUxMzU5ZGFmYTg2Nzg1OTFhMCBweTNrCis4NzU5OSBlY2EyNWYxZGVhZTczMTgzMGJiZWMyNDUzZGJlOGYxZmIxM2RlMjcwIHJlbGVhc2UzMS1tYWludAorODc2MDAgNTAwZWIzZDA4OTdmNDkxM2RhODhjYTIyMGY3ZmNjYmQwZGM0MTRjYiByZWxlYXNlMjctbWFpbnQKKzg3NjAxIDNiYzc0NjE2YzlmZmMzMTlhMjIzZTdkOTZiODJhMzI2YzZmNzYzMTYgcHkzaworODc2MDMgZmE4NTUwMjEzYmNmZGRlNzIzMmNmYTM0Njk1NzI4MjQxNmEzNzE1MCBweTNrCis4NzYwNCAzMzU0M2I0ZTBlNWQ2MTUwNTg4MDViZjU2NzRkODc2ZjY1OTU3ZDNkIHB5M2sKKzg3NjA2IGNkOGM5YjY3ZjAzMzg1MjY2NDMzMDU1N2MxNzc2NDU5OWYzMDk1Y2UgcHkzaworODc2MDcgNWRiYTY3Y2E2Y2NmYjU1YzAxN2U4YTY2MWY2NTY2NmFkYmNiZWY3ZSBweTNrCis4NzYwOCA3YmIzN2E0Y2Q3Y2Y3NTllZDAxNzU2ZDBkODc2NjQ1MDEyYTE1M2NiIHJlbGVhc2UyNy1tYWludAorODc2MDkgNWRiODk4NTNjYWNlMTk2ODA3YzAxZmZjNjMxYTg4MWNmYWRmNzRiMiByZWxlYXNlMzEtbWFpbnQKKzg3NjEwIDkwMGJhMDdlNDgyNGI4ZTA4ZWM5NmMzNWFmMTYxOWI2MjI3YjNlMzAgcHkzaworODc2MTEgY2NlZDBhN2NlYjQzZTgwNDE1N2FjMWY0MTRmNzI5M2QzODQyNTIwMSBweTNrCis4NzYxMiA0MTVhNzkyZTEyNDkzYjhjMjFiYWFlY2Q3N2Q1NThlNGQ5ODhlYTJiIHB5M2sKKzg3NjEzIGE5YWE1ZTRlYjhjM2FlNTVmOTBkMTYxZWRjOGFiNTU2ZWRkYTFkMjggcmVsZWFzZTI3LW1haW50Cis4NzYxNSBmOGMyZDg5MGZkMTA1NGI5ZDM1ZGNjYThlMDkyYjNjNDUyNjA1M2EzIHB5M2sKKzg3NjE2IDhkYmY4NTVjOTBlZGFjNzgxOTY5ZWVhNDYwNTFiNzcwZTQyMDE1ZmUgcHkzay1jZGVjaW1hbAorODc2MTcgNTc4NTdhNjBmYTk3ODViZWUwNDkyYzM1YjhiM2FjNGUwNzRmYzExZSBweTNrLWNkZWNpbWFsCis4NzYxOCBkZDQ5NDU1ZDhhOGM5MTc3NzI3YmU5YzVjYzhhZGM0MDY2OWJiNmZlIHB5M2stY2RlY2ltYWwKKzg3NjE5IDZhZjllODAwMDMzMjk3OGE0YTNkOGQ2YjgwZjQxZjEwNDc4MTVhMmMgcHkzay1jZGVjaW1hbAorODc2MjAgYTZjZDg0Y2E3YjJhNzk2NTBmNDQyZTA3ZGJjZDUyOGI1ZjI1Mzk3OSBweTNrLWNkZWNpbWFsCis4NzYyMSBhZWU0NTQ0MDBlZDcxN2I4MjdiZmVhZTUzOGYzMzc2Njc4M2QyODc0IHB5M2stY2RlY2ltYWwKKzg3NjIyIDRhYTY2ZTUxNDg4ZjM5NDVhZGJmN2YxZmY1MmNiYWRiOTA0ZDZlMmEgcHkzay1jZGVjaW1hbAorODc2MjMgMGIyZWE5MDMwMGMwYzliZmZlYTUxNTEzMjk2MTU5ZmQwYWJjMzhhNyBweTNrLWNkZWNpbWFsCis4NzYyNCBkMmNhNWIzMTA0YWEzY2I5N2MxNGQ3MDVjMjM3YmRkY2Y3MDkyZDVkIHB5M2stY2RlY2ltYWwKKzg3NjI1IGQzOTNlYzUzNmNhOWQ1ZDNlYTMyMDEyMjM3ZDE5NDg2OTA2MjlkMDggcHkzay1jZGVjaW1hbAorODc2MjYgM2ZlYWRhNzIyMzNjNDczNGU3MmM5NDIzN2YyYjRlNDQ0ODc3ZjMxMCByZWxlYXNlMjctbWFpbnQKKzg3NjI3IGRjNjI0NWJmZTU2NjFhZjk2ZmM5MjZjNjFiZjFkOTg3NjYzMzVmMzcgcHkzaworODc2MjggNzQzNmRhZWM5NDIxMGUyNTFmYjhhNjkwMjUyZGNkOWRhNTJjOWFjZCBweTNrCis4NzYyOSA0NDk2ZGViMjYyNjVkYTM2MDdlMDg2YWM1MDMzZTY4NGI4YWFlYjIyIHB5M2stY2RlY2ltYWwKKzg3NjMwIDc5OGFhM2ZlMDM0N2I1OWQ5OWJjMDg3ZWEzNTE4MzQ3ZDFmNDdlNDcgcHkzay1jZGVjaW1hbAorODc2MzEgMjFlNGYxYWEyNDMwYzJmYzU5OTZhMzdjNjcwYTRhMWFlZjZjMzk2NiBweTNrLWNkZWNpbWFsCis4NzYzMiAwZmMyNDkzYTM4NjNkN2UyZDE1MzMwODE2MjQ0ZjYyMWI3MGYyZmQ0IHB5M2stY2RlY2ltYWwKKzg3NjMzIDVkMzZmMGE1Mzc4M2FkZTQwYmQxYmU3NTYzYzQyMzQxYzE1MWE5ZDAgcHkzay1jZGVjaW1hbAorODc2MzQgZTcwYzkzNjEyZDdmY2JkMmJjOTlmMWZmMWY2MzNjYTNmYzQ3NjVkNCBweTNrLWNkZWNpbWFsCis4NzYzNSBkNDRiYTc1MjEwM2YyM2I3YWE3ODI5YTlhOGIzNjc2MTViY2RkNjJhIHB5M2stY2RlY2ltYWwKKzg3NjM2IDE2ZTg4NmE3NmM1YTU5YzQ5OGNlYTlhNzA0Yjg4MzFmNmZmNjZmYzMgcHkzay1jZGVjaW1hbAorODc2MzcgZmU3MjNiOGQ3YzVmZTMwOTdhZmM4OWU3YWVkNWRkNzVmYzJkZDYwOSBweTNrLWNkZWNpbWFsCis4NzYzOCA2NDAxNDkxM2ViODgwOWI4NWZkYjZjOWUyNzI5Y2FkMGM0YjlhMmNlIHB5M2sKKzg3NjM5IGIzNDQzNzdmZGQ4ZGI1NmI0MDEwOWQ4MTU3NTk5ZDIyNjI5MjRjZmQgcHkzaworODc2NDAgMzM2NWM3YjY0ODkzN2RmZTUyZDBhNTZlY2M5Mjc4M2RkZjk0ZDFlNiByZWxlYXNlMjctbWFpbnQKKzg3NjQxIDhmMzNiNTAyMTgzYmYwMzk0ODEyZWQ1MWNhYmZhM2QxYTA4MTdiMDUgcmVsZWFzZTMxLW1haW50Cis4NzY0MiBmZjEyNjFhMTQ1NzMzYTQ2ZGJmYzBiMTRlMDkxNzMzODJmOWQyNTQzIHB5M2sKKzg3NjQzIDllYTEyZTg2ZDU2NTIyN2YzZjY5ZjI5YTlkNTM1NDM3NmNmYmYxZWEgcmVsZWFzZTI3LW1haW50Cis4NzY0NCAxNTJhMDk4NWIxMzhiNzkxOGQxN2Q3YzhjZTViNGUzMmFkZmRmYTU5IHJlbGVhc2UyNy1tYWludAorODc2NDUgMGFmYzQxMzljYzcwMjkxYzRhMWYzMDI0Mzg3NDM0YWQ2MjVlYTc4ZiByZWxlYXNlMjctbWFpbnQKKzg3NjQ2IDBjYWUyMWRlOTkyMTM4ZjRkNTVhNjRmNjJiYzk3NDI0YTRmOGVjOTkgcHkzaworODc2NDcgMDA3MWExNzM0NjkwOTkwN2FhNmM1MDJkNzAwMzA3MGUzOWJkYmExZiBweTNrLWNkZWNpbWFsCis4NzY0OCA2YzQ2M2IwN2RiZGI3MmFjNTRkNDEwZGY5MjRkZWFlMjA4NTczMWNhIHB5M2sKKzg3NjQ5IGRiYjZmYjJjNWI5ZDdlNmEwOTljOGFmOTJmMDViNGMyY2I3N2QwMjggcmVsZWFzZTMxLW1haW50Cis4NzY1MCBlYjk1NGM3NjU1MjFhYTcyN2Q0MjY0Zjc0MjBlM2ZjOWJkNDQ5YjRjIHJlbGVhc2UyNy1tYWludAorODc2NTEgYTVhZTNhMTdkNWZiMTgxNDE1ZmMzMmM1ZjQ0YmFlZmZhNmEzZDRlZSBweTNrCis4NzY1MiBlMGU0ZWZiNjMzNTRjZGI2ZjQ2NmNlNTA2MzIyODNhZWNjMzdmZTdiIHB5M2stZnV0dXJlcy1vbi13aW5kb3dzCis4NzY1MyAyNTZmNzk0YzJjYzAyODQ0NDBiZjVlY2M3NjIwZjMzODcwZTAyZmQ5IHB5M2sKKzg3NjU0IDU4MWU2NzI0NzhmN2VhNGExZjMyNzJiZTdlYTgwNmU4MjkyNWViMjggcHkzaworODc2NTUgYzRkNjdmYTkwOWRjZDJkYTE5ZDFjNDFlZjA1NmEyMDc2NjJiYjQ4MCBweTNrCis4NzY1NiBiMDIwZGY5ZWUzODE2Y2IwYTkzNjRlNDBjNGVhN2FiODUwMjNhMGI3IHB5M2sKKzg3NjU3IGQzOWVmYTU0ZGVhZjA0OTMwOTk4ZTQwMjkxNzI4ZTJmZjcxNGNiZjAgcHkzaworODc2NTggNDI2MGUzMDI1MmViMmJiN2Q1NWViNDgzZGJlNTUyOGQ2NjliYzU3YiByZWxlYXNlMzEtbWFpbnQKKzg3NjU5IDczMGIxYWYwOTIzODc0ODNkMDcyODg4MWZhODlmMDZkZDZmNmIzOGEgcmVsZWFzZTI3LW1haW50Cis4NzY2MCAwNGFhNWJlNzA2YWMwMTc3MTFhMWFhOTViMWE5ZjUzNDI0M2ZhMGQzIHJlbGVhc2UzMS1tYWludAorODc2NjEgYTVkYWExNDAwMWE4ZWViYTRhZDAyOTdiNjY3ZWU1OTYyYTA1OGY4YiBweTNrLWZ1dHVyZXMtb24td2luZG93cworODc2NjIgZjg5ZTM3Y2Q2YzY1NzcxNjhkY2IzZjAyNTMwNjdjMjI2ZGJlM2FiNCByZWxlYXNlMzEtbWFpbnQKKzg3NjYzIDg4ZTVhZTViN2RjMjZhMDFjNjViYWU5NTIzMjgxZDc5YzVjMTNiZDQgcmVsZWFzZTI3LW1haW50Cis4NzY2NCBlMjg4NjhjZjk4MjU4OWM3NWUxN2QwZDQwZGUzYTI5OGM3YTgzN2IxIHJlbGVhc2UyNi1tYWludAorODc2NjUgNzQ2MTQzZWMxZjYwZGExMjk1NGE3ZWE2NzFmOTE1MzZmNDAyOTJhMCBweTNrCis4NzY2NiA0YWY5ODdlYzAzM2EwZDA2ZTEzMTk5Zjg5YTUyZWZlYWFlY2ExMGFlIHB5M2sKKzg3NjY3IDI4NTM4ZjJlMGNjMjQ3ZjNmNWY4OWE0NzA4ZmE0ZmZhZjQ5Mzg0ZDEgcHkzaworODc2NjggZDhlZDBjYzllMzM4MmMyNjk0Y2NkMGY0ZWEzMTJhY2YzYjVhMTViZiByZWxlYXNlMzEtbWFpbnQKKzg3NjY5IDkzYjdjMDAwOGIwODVlMDdhMjk0NDRmODk2MWE5ZjJmN2YyYzEwYjcgcmVsZWFzZTI3LW1haW50Cis4NzY3MCA3M2IyNDQ3NmNhM2JhYWY3MDdlNzc2M2I3YmZkN2Y3MjI1MGZkNTMzIHB5M2stZnV0dXJlcy1vbi13aW5kb3dzCis4NzY3MSBhMDQ4ZDBjZjJhZDFkODIxMDc4NDk1Y2UzOTcwMmJiNDQ3M2RhYTk1IHB5M2sKKzg3NjcyIDUzODRlNzIwZjI4ZmQxOTgzNjBkY2Q2NmU5ODU2ZmIxM2U5YmQ3N2EgcHkzaworODc2NzMgNDM5YmY5NjgwYmVmMjY2MDNjOGY0YTc3MTkyOTE4YWUzNzM3ZTIwNiBweTNrCis4NzY3NSBlOGJjYzdkYmFiN2RjMjBjMzM5ZjM4MzEzZjhhNDRjNGRhNTQzY2ViIHJlbGVhc2UzMS1tYWludAorODc2NzYgYzg5OGRkMjE1YmEwNjY1NzRmN2FlNDhlMTlhNzZmODgzNWZmNTYzYSByZWxlYXNlMjctbWFpbnQKKzg3Njc3IGZhNTlhYzExNjQ4NDBkZTljMThiNDkyY2NhMzQzNjZkODI2NjgzOWIgcHkzaworODc2NzggNTc3NmY0MjRkODU3ODEyZDcxZmFiZDY3MTU4NjEzN2QyMjIzZTMyMCBweTNrCis4NzY3OSAyODExOTA2MWY3ZDAxMTg4ZGU0MjU4MTE5ZjYzMDQwZmQ4ZmM4N2NhIHB5M2sKKzg3NjgwIDgwNjAwYzBjMzNiNzhiMWRjODVkNzFlOGEyZGEwMjIwNGMyNzRhNGIgcHkzaworODc2ODEgZjViMTA1YzlmNDZiZjZmMmFiYzM3Y2UxNGE2N2NlNWMyZWIwM2JmYSBweTNrCis4NzY4MiBiYTE2ZmY4NmQ0ZjZjZDE1OTZkYTI2MGJkM2IzYTE3ODliZmRkNWQ0IHB5M2sKKzg3NjgzIGRiYTliOWM3YTJkYjc2Zjg0NzcwYWMyMTNmNmQ5Mzg2YWE2NTQxMDMgcHkzaworODc2ODQgNmNiN2VkN2I2Njk3ZTUzNTJhM2ZmNGVlNDQxYzA0NTdlOGVjMTllOCBweTNrCis4NzY4NSA5NDg2OTI3MTJmZDcxMGQ0YzMxMThmMTIwYTJiZWViYmVhOTk2YTA5IHB5M2sKKzg3Njg2IDkzMWQyMzIwZjU2YTA3YjQ3MWRkNDYzMzg0ZjAzNTc2MGQ2OTc1NjcgcHkzaworODc2ODcgNGM0NmY2NjMyZGRmOTc3NjRiZWQwNDJlNDcwYzhhOWIwOTgzMGU4ZiBweTNrCis4NzY4OCA3NzQ4M2YzZTQ5MWE3OTM2MGMwMDlkYmM0Y2Q0NTZjYWZlM2VhYWExIHB5M2sKKzg3Njg5IGM0MTdkODA1NzY4Mjc0MDk3Y2QzNWM5YjBmMDAxZjNhYjBjOGNiZjMgcHkzaworODc2OTAgNzQ3YzU1YTk0Y2IwZTVlNTE4ZGZlNjY4NmM2YTIxN2ZiMWY2YWNmNyByZWxlYXNlMzEtbWFpbnQKKzg3NjkxIDZiN2Q5ZjFjMmNlNTFhODRjZjBhMjMyNjhkYzRhZjgwODQ3MDFmOWUgcHkzaworODc2OTIgMjQ1MzU5MzgyYjBmYWQzZTQzMjhjN2JkYjUwZGM1MzBhZGJhNmVjZCByZWxlYXNlMjctbWFpbnQKKzg3NjkzIGZlYjIzZTI0ZGNiNWM3MGYzMzExMDc5OWNmNzI5NmEyZDQxYTc2ZDAgcmVsZWFzZTMxLW1haW50Cis4NzY5NCBhMzNlMWYwMjA5MWY4ZmExNWU3YjgyYjA3NGViMmM5NTk0NDllOTAzIHJlbGVhc2UyNy1tYWludAorODc2OTUgYTY2YTZlNDI1MzhmZTQwOTEzZjY1NjNkMmJjZWQ0YWZlN2E5NzJmNSBweTNrCis4NzY5NiBlOWE1MWQ0NjM1NzkyNDQzMTU2M2E3YTYyZTA5NDhlMzZjMzRiOWRhIHJlbGVhc2UzMS1tYWludAorODc2OTcgYTQ3NmViMDg3ZWU5NzY4MzMxZTgzYTM1MjQ4MDQ4MzU1NzU5N2FiYyByZWxlYXNlMjctbWFpbnQKKzg3Njk4IDhhYzRiY2NhOGUzMTYxZjJlZmI3YmRhZWNjMTdlNzlmMjQ0YmIxYWUgcHkzaworODc2OTkgOWFjZWQ1YWVkMTFhZjVhZTE3YmM3ZjQ0NGI1YjhjMzY2ZDdjZTcyMiByZWxlYXNlMzEtbWFpbnQKKzg3NzAwIGIwYjQ0MTRjMGJkYzIxZGU0MzY1MjQ3ODg4MDg3ZGQ3MzExZjYwOWQgcmVsZWFzZTI3LW1haW50Cis4NzcwMSA3OGRlM2E3ZmI4OTYzNGUyOTZiYzI1NzRhNWQyYTU0MTFlM2JiMmU2IHJlbGVhc2UyNy1tYWludAorODc3MDIgMjc1ZmI5ODQ5NDkxZmUxNWE3ZjIwYmMxYmI3YzZlYzI2M2Y0ZTI5ZiByZWxlYXNlMzEtbWFpbnQKKzg3NzAzIGY0OThlYTk3OGM2ZmUwZWRjOWRhNWVhODhlOTljNDBmOGI5OGU0NDIgcHkzaworODc3MDQgNjExNTY3ZWM0ZDdiNzE1Y2I4MDY4YzAwOTI0MmZkYjhkNzM0NDFiNyBweTNrCis4NzcwNSA4YzE4OTkyZDM3NTBhYzIzZGFiNzkwMWM2NmM1MTdjMTg0YWRiZjUxIHB5M2sKKzg3NzA2IGY2MGE4OTlhMjA0ZTViMjhlZGNjNmVlYjQxMzc3YjdjM2Q0YjIxZjMgcmVsZWFzZTMxLW1haW50Cis4NzcwNyA0MDk0YmMxM2FjZmNjNDEzMGYzYzI0OTYzODE0MzE4MTNkNjI4ZGM5IHJlbGVhc2UyNy1tYWludAorODc3MDggOWY0OWVlNTIzOTc1NjEwOTgwMmVlNzQzMmY2MDdlNTBmZDEyMDg4ZSByZWxlYXNlMzEtbWFpbnQKKzg3NzA5IDViY2YxMDhhM2Y1ZGZmMjdkYTIxMDc4OGVjMzNiNjllNTViMDJiYzAgcmVsZWFzZTI3LW1haW50Cis4NzcxMCA2ZTVhYWRhNGZkZDVmMTc2ODg2MmJlYjRiZjcwNTEzZTQyNWEwNWFjIHB5M2sKKzg3NzExIDUwMTE4NzBlYzg2YmQ0ZjE4YjI1NDRiZTRiNmEyNjUzN2I1MmFhMjEgcHkzaworODc3MTIgYTdjNDk5MjY2YTlmZTAyNTFiNmU3MThmOGY4YWFjZGRmZTM0ODljYSBweTNrCis4NzcxMyA4ZjUwOWM1MjYwYTk4YWMzOThlYWU4NTgyZjEzNTdmMTZkYjFlYTIxIHB5M2sKKzg3NzE0IDg5MzI3M2Q3OTNjNmVmNTFjNTUyOWM4MGUyYjc4MmI5MjQwMzIwMzUgcHkzaworODc3MTUgNzMxZGVjNGU3NTEzODE2NGFkOWM4YjNkZGQwYTgxMDMwMmQ2Mzg2NCByZWxlYXNlMjctbWFpbnQKKzg3NzE2IDlhZDg5NjQyNmY3OTY0MTgwMTNiYWYzNTlhZWE0ZjgwY2ZjZWVmNzMgcHkzaworODc3MTcgNzBiZWEyZGFkZWY4YTcxNGQyYjNhN2QzZmNmNjU2NGUwZDdmNmI5NCBweTNrCis4NzcxOCA4Yjg0OGQzYzZhZDAxNDQ1MDg5OWZlY2QwZjhjZTJhNDcxYzE1Y2RjIHB5M2sKKzg3NzE5IGQzNmUzNDVhMWEzY2VjYmU5ZGRmOGY2NjAwMGZkMGYxMmMzNGIzNzkgcHkzaworODc3MjAgZjBlYjM0NDhjZTM4NDU5MjkzNDA3YzNmYTBjOTQ0MjhkNzlkODljMSBweTNrCis4NzcyMSA5Y2Q4M2M2NThiYTQ2MjBiZjMyMzM4YmM2ZmE5NjdmYjE0YWRkMmY3IHB5M2sKKzg3NzIyIDM3NGRjOTEwZGIzM2FkNjhjMDczODg5ZjdhOTU2ZGQ0OGNlZDA3ZTcgcHkzaworODc3MjMgMThkYmMzYmExNmMwZWFmZDgwYzY3MmYzNzhhNjdjNDdmMmZlYjEzZCByZWxlYXNlMjctbWFpbnQKKzg3NzI0IGMwMDdjM2RiYmQzZmJkOWVlM2JkNWI4NGNjNmM3NmZlZjFlOTZiODYgcmVsZWFzZTMxLW1haW50Cis4NzcyNiBhZDJmMzQzODBhYWM4Njc4NDc0YmQ2NTNjZTEzOTZiY2ViZGM2YzVjIHJlbGVhc2UzMS1tYWludAorODc3MjcgM2UxYzNkMmE4Njg5MDcwNWYxMzcyNzY5MDQ1YWQ2YTliYmQzNDQ2MiByZWxlYXNlMjctbWFpbnQKKzg3NzI4IGY3OGU3ZGIxZDVlODY0ZWNlNzk5ZDllN2UxOTU3OTczNjExYTEyZTYgcHkzaworODc3MjkgNDU0OTQyNmVlNGQ2NTJlYmM4NWRiZmNhYzBkMjAzNjUwMTMwNjhjNSBweTNrCis4NzczMCBmNGE4MDhmNWE2NmQxY2VkZGNlNDQzNTE4MzcwMzhjN2ZlNmNmMGMwIHB5M2sKKzg3NzMxIGE3ZDE1ZGY3ZDY3ZDNmMGYxMTMxZmU0OGMwOGViZGVkOGQwN2Y1Y2IgcHkzaworODc3MzIgOThjOGFhMjM3ZmMxY2MxMzk4ZTJkOGQ1NzAxZDg1MTYwMTRhZWRiYiBweTNrCis4NzczMyAzYmY0ZDlmMTY2MGE0YzFkY2VhNTM1Yjk0NDRlNjQ5MmNkNjkyNDNlIHB5M2sKKzg3NzM0IGNkMjc5ODIwODdlYWM0YmIyNDE4ZTU5MzBiYjVhNzAwYzdjMzBiZWUgcHkzaworODc3MzUgOGFhOGRjYTQ2Njg0YjU0ZmJjZGRlZTU3OWRmN2ExZTY4ZmJiYTY5MSBweTNrCis4NzczNiAxZTYyYTBjZWUwOTIyYzNmOWZiODM3YzUxOWY4YTM5MzM4ZTNhMzdhIHB5M2sKKzg3NzM3IDY0MmM4ODA2ODMwZjVmYjQyMDI0MTAxZDFhODE3MjllYmQ2ODdjNzEgcHkzaworODc3MzggMjAwNDNkYTc4NzI2YTM5NGEyYjJiNmQyYTMwNTBmNjJhNTg1MWIwMyBweTNrCis4NzczOSA2MjllYjNiNjk5MDlmMWNjYjZmMWUwYWFkZWQzZmE0OWI1MDRhYTZkIHB5M2sKKzg3NzQwIDM0NzhkMDA3ZGYyMzcyMmRmOWZkMzdmYjJlN2Y0NWNlMDY0Y2I1N2IgcHkzaworODc3NDEgYTNiN2MyOTA3NTRhMGExNTIzODFhOGNhODEzY2JlZjk3NDg5NmE0MCByZWxlYXNlMzEtbWFpbnQKKzg3NzQyIGE2YmM0OTdiMTk2MjQzY2VkOGUzMjAxMTEwMWE5YzVjNGU3ZDgzNzAgcmVsZWFzZTI3LW1haW50Cis4Nzc0MyA3YzVjMzdiOTYyODE2Yjc4NzU0ZTkwNWNhOWRmZDNlYjc1OTE3ZjczIHJlbGVhc2UyNy1tYWludAorODc3NDQgOGFmNmU4ZmMwMjA1YmNjYzY1ODAyN2QxZWYzNzkzY2U3NjI2OGJjYiBweTNrCis4Nzc0NSA0NTU3ZDQ5NWE0ODQ2YzNlNTIyNWY1ZmQ1YTBjNmE1NDhhOTllMjQ1IHJlbGVhc2UzMS1tYWludAorODc3NDYgMDgxOTIyNjVkMTcyYzRjMTA4OTc0N2I2YzA4MTI5MjNkMjQ3M2M4ZSBweTNrCis4Nzc0NyBjMGZlZjhhMTQ0ZmFkOThkZThlZDZhZTBkMjkwZDM1MjQwNWIxMzJjIHB5M2sKKzg3NzQ4IGVmY2IxNGY5NGU3NjkxM2JkZmMxNjEzZTc2OTg3MjhhZjM5MjYxOGEgcHkzaworODc3NDkgZGQzZjI4ZmZkMDI5MDg5ZDA4ZDFmMTZmMzUyOGY2Y2QwYjU4OTg0NCBweTNrCis4Nzc1MCA0OTc4OWE1MmE5NzYyNDQ0MzM2ZDQ4MmMyOGViMzY5MDZjMzY5Y2I4IHB5M2sKKzg3NzUxIDBlZmZiMTc1Yzk4MTliOTQ0MmUyNTBjNjRjY2M5ODVlNzFlNzQwM2EgcmVsZWFzZTMxLW1haW50Cis4Nzc1MiA4NWZiZDc3NTUzNGViN2Q4MDgzNmFjOGJmNTRjOTk1ODExZDVlMWRlIHJlbGVhc2UyNy1tYWludAorODc3NTMgYTBkNGVkYThkYTBhZjBmZThjMDQxNjY2OTQyYzIxYTVlZmFlMmZhMCBweTNrCis4Nzc1NCA0Y2M0N2E5MDgzZTM4OTk5NmZmYWQ0ZTliNmIzOTYyOGJiMmYxNjgyIHB5M2sKKzg3NzU1IDRhODJiZTQ3YTk0ODFiMWMwM2JiOTUxYWU4ZThjNjhjNWU5YTAxZTIgcHkzaworODc3NTYgZGU4NjJkYzBjY2NhZjY5MTIxZTFlOGU3NDg0Njk0MzBlMGYwMGU0YiBweTNrCis4Nzc1NyAyOTYxYWY4MGQ1NDU1OGI2N2VjNGIzNWM3NjNmN2YzMGRkYmJjYTE0IHB5M2sKKzg3NzU4IDUwNjBhOTJhODU5N2U1MGVlZTM5OGExN2MwZTQ5NThkNTQzYmM5ZGYgcHkzaworODc3NTkgZTkzNDhkNjhjZmNkMDAwOGU5ZDg4NTY4NjkyMDE0MTYxMDJiMjQyNCBweTNrCis4Nzc2MCBjMDQyNWI1ZWRlNDdhZDZmMmE3ZDExYjQyMDM1MTZmZGRmZDA3M2U3IHB5M2sKKzg3NzYxIGE0NGJhZGY5ZTAwZjYzZDNkYzVkZjllOWQ3MDYxMDE1YmU1ZmM0ZGQgcHkzaworODc3NjIgYmM1N2ZkZDg5NTYyYjE3MjMxOTg3MDBkMThhNGFhMDk0MDE3MDJmZiBweTNrCis4Nzc2MyA3OTljZDE1MjMxMTE3ZjkzMzk5MDA1M2EwZDZmYmQ0MTNiYzE3ZmU0IHJlbGVhc2UzMS1tYWludAorODc3NjQgYjc0MjZiZTZiYmI0Y2ExZjM4ZmFjYTc5MTVjZTJkODgzNzE0NWZlZiByZWxlYXNlMjctbWFpbnQKKzg3NzY1IDc0NTIyNWFlMjllZjA4MWJmZWQ2MGUxYjc1NmE1ZDFlZjM1YTRjMjIgcHkzaworODc3NjYgOTEyZmQyMGRlMGUwNzIwY2IwNDRmZTQ3ZWJlMzBmMjdjYzkzNmYyYyBweTNrCis4Nzc2NyAxMzIzNzRkNTM3ZTRkMTBkNzZkNmZmZTc2OGYzZTg0MmNiNDMxODhmIHB5M2sKKzg3NzY4IGVkMDI1OTIzMDYxMTJhMGNlMmQ3MDIzMjgxODg4MzcwNzM1NDhlM2QgcHkzaworODc3NjkgYmRiNTdmNDYzYzg1ZmI1NGYzZjlkMmQxMmUwZjc0NzczZjRlOTdlNyBweTNrCis4Nzc3MCA0YmYzYTVhMDQxMjA5Mzc5Zjc3YWQ3NzFhOTAzNTNkNDg0NDU4YWE1IHJlbGVhc2UzMS1tYWludAorODc3NzEgMDc2Mjg5OGZkODAyODZlODdmZjlkYWExZDAyNjlkMjlkMWVlMDNjNCBweTNrCis4Nzc3MiA4ZjUzYTRlODk2MzEzYzU2ZGZlNzVmMjE0ODVlNmI1OGNjODA1OTMwIHB5M2sKKzg3NzczIGRlMzg3OTRkMTc0OTg5YTM5ZWQ1ZWYyMTg2NWYyNjlhOWNjZDlkMTEgcHkzaworODc3NzQgZjA2YzI3OGI0ZjIxMjNlYmJlZjdmYzFhNDRkOTFkNDEwYTg1ZTNlNyBweTNrCis4Nzc3NSA1OGI3ODQ1NTNjYTRmNWE4NDJlZjJlOGQyYzkxNGFiNzIzMDc5ZmExIHB5M2sKKzg3Nzc2IDkyZjYxYTY5MmUzOTQxMzFhZGIzNWEzMGQ0NjZhOTljZDA5NzE4MzYgcHkzaworODc3NzcgNTEwZjdlMjllNzI4MTdlZTFmNmFkODk0OGMxZGJiYmYzNmE1NGY1ZCBweTNrCis4Nzc3OCAyMGUzYWYxZDUzMGE4ZmIzOTkyYzczYzFkNjkyZjQ3NThiNzNhOTg5IHB5M2sKKzg3Nzc5IGNmOWUxZjc0NjRkYzU4ZWNlOWE3NzJkZGVmYWM2Mzk5MDhmOTMwN2IgcHkzaworODc3ODAgOTJmMmQ3ZDI4ZmVlZGIzMjBkNmE1YTFlZTQ0ZjFmYmZmODg4ZmU0NyBweTNrCis4Nzc4MSAzNGQ4OTE1ODBmMzhkNDU2ZjAyMzUwMDY4NDZjOGJiYzQzNDc1MWNmIHB5M2sKKzg3NzgyIDI0N2I3YmE2ZmZhZDQ0ODkxODkwN2I0YjdkMDExNGRkY2E2YTgyMmQgcHkzaworODc3ODMgOGM0NDhhNDI3N2EwZDRmYjlhNjVjYTVjZjhiODY3ZjQ4NmFlNjkwNiBweTNrCis4Nzc4NCBhYmI2ODZhNWExZGZjZDZjMDJmZjQ1N2EzZjIyNzIyYWNiYjU4YjRlIHB5M2sKKzg3Nzg1IGM5YjQ4NGYyYTBiNzA3NDk1N2VjMjY4NTliMTU5OWM3YzUyNTVmMzUgcmVsZWFzZTMxLW1haW50Cis4Nzc4NiA3MWUxYTk5NjE4MzYxOWEzYTI2MjMwNWI0OGZjZGUzYzFlYTRkZmQzIHB5M2sKKzg3Nzg3IDNkODI0YjUxMzdkZGIxMzNkZmU1N2E1ODZmNTcwYTA2NTM2ZGVhZjMgcHkzaworODc3ODggZDgyNGU5Y2ZiZWU4NmRmMGE1YjM1MTlhMmZlNmZiNzZlMzcyNzI3MCBweTNrCis4Nzc4OSBhMzI4OGE0ZTJlYWQ5YWQxMDM3NmQzYmNhNDFmMjNmYzI1NTlmZjBmIHB5M2sKKzg3NzkwIDE0MjI4ODA4OWMxYTQ2NTZhMWEyZDk2MmQ5YzhlYjhlM2YxZjIyMTIgcHkzaworODc3OTEgNWQ2NjY4NTQ4NDI4NDJmOTFjYWFhMzU5YzIxOGU3MmJhMzFlMDM3MSBweTNrCis4Nzc5MiBjY2JjODQyMjJmZGE1OGEzNjA2Y2NmYjk0OWNjMWQyNDdiNWY0MjljIHB5M2sKKzg3NzkzIDE3NzRkNmEyZjViZmVmOGYxZTZiNDE0NTliMTU0ODg2Y2Y3NWYzOWYgcmVsZWFzZTMxLW1haW50Cis4Nzc5NCAyNjgzNmU0N2RmYjkxYzQ3MWI2YTE5MWY1NmQ1ZDg0YzRlNGI2YjExIHJlbGVhc2UyNy1tYWludAorODc3OTUgZDJhNjQ2MTJkMjM1YjZlZjI0MmVkOWFjM2ZlM2Q3YjI3ZDUyODBkMiBweTNrCis4Nzc5NiA2NGMyNDUzMTNjZmY5ZmRkNDZlNTRkY2QzYzViMzk5ODI0NGY0MDE5IHB5M2sKKzg3Nzk3IGE0Y2ZiMjc4MjQxNjRhZmQxY2NiMjU1YzcyNzAwOGE0YTAxZDRhYTQgcHkzaworODc3OTggNTkxOTIyMjk5YWNjMTExOGFkMDMzYTdhYjg4NDFmZmYxNjk3ODA3ZiByZWxlYXNlMzEtbWFpbnQKKzg3Nzk5IGIzMzJlNzNiNTU2NzA3YzRhMTA4OGIwMDg5ZDAzZTY3MTYyYzhjMTUgcmVsZWFzZTI3LW1haW50Cis4NzgwMCA3ZTdmYzk0ZmQwZDQxNGZiZWMyMzNlN2EyNGI1MjY2YjZmYmYzMzk4IHJlbGVhc2UzMS1tYWludAorODc4MDEgNDE5Y2EwODlkMzY1ZjMwMTRhNGUwMmI1MGE5NGVmMzBmNzY1ZDcyMSByZWxlYXNlMjctbWFpbnQKKzg3ODAyIDZhMWQwODA2MjNkNzdiODI1YzFkZTc3Mjk5ZjM4NjgzM2I2YzM1ZDAgcHkzaworODc4MDMgNzIyMjY5Nzk2NGZjNzQ0Mzk5YzhlZTExOGJiMzk0OGFkMTVkZDFkYSByZWxlYXNlMzEtbWFpbnQKKzg3ODA0IGM3ZmQ5YjZhYTAwMmVlMzAxY2UzZmY5ZThlN2MxNmYyZWVkYTBiZmIgcmVsZWFzZTI3LW1haW50Cis4NzgwNSA4YTMwMmEwOWVlODNhNzY5MDVlZWQyZTA1N2ZmZmU4YjkwYTZiMDMyIHB5M2sKKzg3ODA2IDAyMGRhOWI4N2RhYTg5MTMzNGJiNzg0MzhhMTA0ZjBhYWQzZWQ3MjcgcHkzaworODc4MDcgMWQ0ZGM5ZGYyNDk2NzI4MjM1NmZiOTY4ZWE0ODQwMGQ2NzI0NmM4NCBweTNrCis4NzgwOCAwMWIyNTMzMzFhODZlMDY4MGI3ZDRiN2ZiNGE2ODgyM2E4NzI5YjQ2IHB5M2sKKzg3ODEwIDdiYTVmNTdjNzRlNTc2MjhjYTQxY2Y1NWY2MzBkOTQyY2ZiMTkxYjkgcHkzaworODc4MTEgN2U1Nzc3ZTFmMGZkYTNmMTM2YzljMTQ2ZTkzMGJjMmRiYjMwYTI5ZiBweTNrCis4NzgxMiAxMmNjODEwNjJkNGE4NGY2NzBiOGJhODgzZDQ2ZTg5M2EwMjU5YzgzIHB5M2sKKzg3ODEzIDQzYzhjMWJkZDk0ZmQ4YWVmZTk4ODVlMzIxYzExZjg2MTA3NGFkZDcgcHkzaworODc4MjAgODNkM2Q1ZTA2ODdlZmU0ZDExODg3ZTBiZWFkMzliYjdhMTQ1YmI0YSBweTNrCis4NzgyMSAyZWU2YjQ0NGM5M2RlZTQ4NTAxMTYwNjAzNGI5ZDc5YTA0MGMwZjEwIHB5M2sKKzg3ODIyIDUyNjBmZDEyYzc2M2RkZDNjOWQzMjNmNWQzMTM0OTUzNDEyYjM0NjkgcHkzaworODc4MjMgMGIwYTJiNmMzYWQ5ODM1NzdiODQyNzJkZDViNmJjNDc4ZTk5YTY4YyBweTNrCis4NzgyNCAwOTMzYzM3NTNhNzEyYjlmOGFmMmQyM2U0MGFlMGRkYTFmOGFjMjU0IHB5M2sKKzg3ODI1IDE0MjcwZmU4NGRjNzcxZjlkZGY4Njc1ZGRhOWIwMDgzNjRkNDEwY2IgcHkzaworODc4MjYgM2VhMjgwOTk3MDAxZDQyM2FhNGE4ZjA0ZmRkODZjOTBlYTk0NGE4NyBweTNrCis4NzgyNyAzNzc4MTU5ODVjYWYwZDAzYzNlMzY4YjliNDkwM2E0YzNjZTA5YWU5IHB5M2sKKzg3ODI4IDVmOGViOWU3YWNkYzA2NWFlM2EwMDZlMTc5MWZlZWM3OTI2NTgzZDYgcHkzaworODc4MjkgMTIwNzRmM2FiODA5NWY5MWE0NzM2OGFiYWQ3MWQxZjZmYWZjNWExMiBweTNrCis4NzgzMCBkZjlhMDYxNjAwNGQ5MmU5N2Y4NzFhOGE5NWRlMzk3ZDBkOTBmNTlhIHB5M2sKKzg3ODMxIDEzM2RlZTgyYTAwOTYxNmUxYzBkY2NmYTVkYmE4ZjkyYjE3MzM4OTMgcHkzaworODc4MzIgM2U3NWNmM2Y2MzU1NTY3ZGRhODZmMGE2NjdmYTc3NzJhZDZlOThmZCBweTNrCis4NzgzMyA2NjU4N2U5MGZkZmI2MjdmODhhYjFhYzdhMjlmMzEwNGRhMmE4ZmQ0IHB5M2sKKzg3ODM0IGY1OTUwZGYwM2NlMjEwYzUwY2NkOTY1MWVhNGMwNjZjYmJkOTQ5MzIgcHkzaworODc4MzUgNmE1NzExOTY1NTcxYWIyMDZiNTQ5ZWY0ZjAwNjM2NjkwZDQ2MTcxNSBweTNrCis4NzgzNiA1NGZhNjIxNjU4NTMzNWIyM2FjNTRkYzNiZWZmYWRlYjY1YjQwZTQxIHJlbGVhc2UzMS1tYWludAorODc4MzcgMGRlMTkwNWE3NjFmODdhZDgyMzQ1YzY2ZjRhZTMyY2NiMzU3ZWY4OSByZWxlYXNlMjctbWFpbnQKKzg3ODM4IDA4MGEwZTk2YjQ4MmIxM2MwODg3Y2UyZWI2MjlhNzA3NzdhNDRkYjYgcHkzaworODc4MzkgYjBiNzljMzczNGFjZGZhZjlmZjQzZTc1ZmUzOWE5MDBlNmVkMjg3OSBweTNrCis4Nzg0MCBjYWQxODExZDllMTNlOWZlODE1ZDE0Nzg3OGVlYzMwNjA0N2ZhYzFlIHB5M2sKKzg3ODQxIDM5N2I5OWY1OTEyZTc2YjZjNTc1MTFmZjk4N2Q1MTkzOWJmNzMzZGUgcmVsZWFzZTMxLW1haW50Cis4Nzg0MiA2MzFlODMwMDE2YzBlNzRmNWQ5MzRhZDM1ZjA3ZmI0YTdjYjhiNTM1IHJlbGVhc2UyNy1tYWludAorODc4NDMgMzE0NjU5NjhhZTI2MzVjNjVmNzA3ZWU4MjVmZDFkMTQyYWQyMTY0ZCBweTNrCis4Nzg0NCBjNmI4YzViNTY0YThjNDQ4NjI2N2IyODliNTM5MmIzNTQxMjVkNzFkIHB5M2sKKzg3ODQ1IDg3NTdjZDY1OTI5MTk0YTRiNGM4MGFjMGNmM2QwOGY4NjY1OGZiYWYgcHkzaworODc4NDYgMjUzZDkxZTRmNjcyOTE0NDI1Njg5NmYwY2MwNjk2YzUxNWVjMjU0MCBweTNrCis4Nzg0NyAzYjc5ZWM4M2NlMjE2NjZmNGI1MDY1YTc3NWM4OTkxZDRlYWYzOWMwIHB5M2sKKzg3ODQ4IGU0ODA2MDQ3NjdjNGQzMTM3ODIyNzgyNjA5MjA1YmVjNDQxNTdkY2EgcHkzaworODc4NDkgMTU5NjdiN2YwNThmMWI3ODJhOWQwYjYxZmZhYjRhYjIxZWI5YTQ4YSBweTNrCis4Nzg1MCAwZTFmNGRmNDc4ZjY2OGE3NGRiMTdkZDViN2U1NWJmNzU1MGNjYTQ0IHB5M2sKKzg3ODUzIDY0OTJhNzEzODg3ZThkOTM1MGNkMDYzZThjNGRjYzM5MzFmNWEwMjQgcHkzaworODc4NTYgZGM5YTU2ZGRhNDI4N2Y3NzYwODY2NDMxZDJiMjFhNjk4NDIyMmFkNyBweTNrCis4Nzg1NyA5MGNiYTZhNjcyZjBlOWJkN2MzYjZhNTRiZjVjYjk5YzY2MjhmNmY5IHJlbGVhc2UzMS1tYWludAorODc4NTggZDY1NjZhNzBjYWEwYTg0YjRmMjE3YTJhN2U3ZjIwNDYzNzU2Nzg5NCBweTNrCis4Nzg1OSA4MjM5ZWM2ZjM5ZTYyNTUxMDg5N2U5MzdlOWRmZTU1ZGMwZmNmYmIzIHB5M2sKKzg3ODYwIGMwM2Y2NGM3MWIwNWFjZTBlY2JjNWQyZTc2N2ZlNmNiMjhmNTA5YzggcHkzaworODc4NjEgMDkzMjNjOTExMDlkMmZjZTFlNTcwNTUzODQwNDc2NWViZTU1ZTRkNiBweTNrCis4Nzg2MiBjNmQ0NTM0NTYyZjQwYTEyNzJkY2NjZTgxMWQzYTY1MjJhYjYwZTcyIHB5M2sKKzg3ODYzIGYxMmRhNTNiOGQ2ODMwNTY3ZWI1YmU3ODI5Y2RiOWNmZDE1NDdiYzIgcHkzaworODc4NjQgYWJlMjAxZGZkM2RjZTJmYjcxMTg4OWVjZGFkZDZkNjQzY2UzZWRhNCByZWxlYXNlMzEtbWFpbnQKKzg3ODY1IDA3NTk3NGE5MGMzMWIwYzdlZTA1ZTI2ZDgyNjUzZDU0NTgyNDEwOWIgcHkzaworODc4NjYgNGQxOTI3MDkxYjM5Zjc5ZmEwNGIwNTIzMGJiMjkwMmE5ZmE5ZmUyMSByZWxlYXNlMjctbWFpbnQKKzg3ODY3IGVhMGI5NGQ0NzU0ZDc1NWJlZmE0ODc1NmU4MGFjMjFjZDM2ZmJlM2YgcHkzaworODc4NjggMjA1MTdhYTNhMzU4OWFjNjA4OWE4ZjgxYWIxMGQxZTc1OTJkYjJiOSBweTNrCis4Nzg2OSA3MjYzYmQ5MGUxMTBkNDY2YTQ0ZDJjOGYxMmFhNzRkM2EwNDJjNTQzIHB5M2sKKzg3ODcwIDNlZDNjN2M2YjYwNWQ3ODA3MGUwYmExNTI5M2Q0MjQ3YzNlNTQxNzUgcHkzaworODc4NzEgMWY3MWM0M2FkN2UzMzhmZjMwZTVmNzNlMDkzYWZiOGJiZWNjNWU5MiBweTNrCis4Nzg3MiA2MTU3NzhiZTk4ZTk5NTI1ZTdkZmUyNzEyMGNkZTBmMjE1ODkzOTNkIHJlbGVhc2UyNy1tYWludAorODc4NzMgOGJiZmYxYzI0YTMxMmEwYmY3MzM4NDM4ZWI5NjdkM2JkNjJhMGIyNCBweTNrCis4Nzg3NCA5NjZiODdmMjM5NWNjOWM3MmI2OWYzZGE5NGExOWNmNTliMDdmZWU5IHJlbGVhc2UzMS1tYWludAorODc4NzUgYWRjN2UxNjcxZDhjMzk1YTJiODg4NTYzMGUyNDRhOGQ4ZTcxYzNmZiByZWxlYXNlMjctbWFpbnQKKzg3ODc2IDlmMTNkYzQzOWRjNTFjNjk1NWQyMmZiYWUyZWFhYzg0NTI3ZDhhMmEgcHkzaworODc4NzcgMTljMDUwNTFiZjFhMDJkMjBmOGQyMTBiZTYwNTUyNzlhZDQ5MDYwOCBweTNrCis4Nzg3OCA5YjJlNjBhZTRmZWY5N2RiMzBkNzM3MmZhMWM2ZWYyZTVhYWEzNjJlIHJlbGVhc2UyNy1tYWludAorODc4NzkgN2VjMjE2NTNhNGQxZTU3MmU2N2U4NWMzNDk0Zjk2ZGViZDdmNDlkZiByZWxlYXNlMjctbWFpbnQKKzg3ODgwIDk1MzAxYTQyODUyZjU0MjVlOWFlMTBkOWE4MWJjYWYxMTk0MTI4ZjMgcmVsZWFzZTI3LW1haW50Cis4Nzg4MSAyZTc0MzY5YjRmNDA2MGFjNjc3OWM2MjhmM2VjMGVjM2JjY2M4ZjFhIHJlbGVhc2UzMS1tYWludAorODc4ODIgMGM5NGM2ODFmYzUzMjBkYzI4MDg4MTMyMzQ4N2Q0NmI5YTBjNDFiOSByZWxlYXNlMjctbWFpbnQKKzg3ODgzIGU0ZDA3YTZmN2FiZmMxNjYxOWZhNTg5MzExY2NjYzlhYjVmZTZhOGYgcmVsZWFzZTI3LW1haW50Cis4Nzg4NCA1YWI5NjM2NGU3NjE5MDBkNDUzMmE3MWU3OGQ5NDJjNGRmOTBiYmI2IHJlbGVhc2UzMS1tYWludAorODc4ODUgZGU3NjJiMDFjMzY2NGI0OTQ3Y2EzODIzNWViOWI1NjFhMjA5OWUzYSByZWxlYXNlMzEtbWFpbnQKKzg3ODg2IDU4YTFiN2U4ZTc1MzIzNjlkMGZjNWY5OWViYzEzZjdmMWQ2NjNmMzQgcmVsZWFzZTI3LW1haW50Cis4Nzg4NyA1Zjc3OTA3YjAwNDFlN2UxMmE5MTRmZjliYmY1NmY1NDkzN2NiMTEzIHJlbGVhc2UzMS1tYWludAorODc4ODggNGFkNjE5NmYzMGE1YjIyMDhhZmE3NjkyZTg5N2QzMmU0YWI1NDBhNiByZWxlYXNlMjctbWFpbnQKKzg3ODg5IGUxYjgwZTM5ZTQwZjMwYzMyNzUwYTJiMjkxNzZmMDVmN2M1N2ZmNTIgcmVsZWFzZTI3LW1haW50Cis4Nzg5MCBiMzNiZjY2NGM0OGFhNDk1ZThlYjk3MjM3YmIyYjc2MjBlZGI0YTMxIHB5M2sKKzg3ODkxIDE1NzFjYzA3MmZjMmFlMzA4ZTc5OTkzNDc2ZDJiZGFmODRhYTE3NTUgcHkzaworODc4OTIgNjgxZDA1NDJiYmJkMDdlNjQyODllMzljNzA1MzczOWQwNmYzYmQwOCByZWxlYXNlMjctbWFpbnQKKzg3ODkzIGZmYjJjMjRiY2I2MjZkZDhlMTJlOGYzMzQ5YTA5YTI5OTFjOTM0MDQgcmVsZWFzZTMxLW1haW50Cis4Nzg5NCA0YmQyOTZjNDk1MjZmNjM1MDM1NjFiMjRiNzcyYzYxNDBjYjUzYzU4IHJlbGVhc2UyNy1tYWludAorODc4OTUgYTIyZDYxYmU0ODQyYjQwYzc0NTQ3OWYwOWRiYTNlOWRjOWU0MjBhOCBweTNrCis4Nzg5NiBmZTZmY2FmN2JiMTdkYTRmZjA1OTU0Y2FjNmI5N2YxNTczNTIzMzU1IHB5M2sKKzg3ODk3IGY4YzY4MzE4NGFmZmRiN2ZmZmJiY2I1YmZlNDE5MmQ1OTNjNDhmODkgcHkzaworODc4OTggOTc0YjI3YzlkODQ5ZGY0YzlkNWEyMzE2Njk4YmRmZmY0MDU4ODg4YSBweTNrCis4Nzg5OSAxYTM3ZjRiYTFmOTIwMTgzZmU4MjE2NzJhNDczZjE4M2E4N2QzZGQ3IHB5M2sKKzg3OTAwIGMyYzRhOTk0NDU5NmY0YzEzNmUwNDg3ZGQzZDNlZTNjZjg3M2ZiNzEgcHkzaworODc5MDEgYzRhNTI1MjZlNzdmYTY0MjE2ZGIzNGJjMDM3Y2I4NzdiOWIyMzQ2ZiBweTNrCis4NzkwMiBiNWE3OWI1Y2EyMDM3MmE2MDE3YjRhYWJhZjVmNzE0ZjkzY2FjNWZhIHB5M2sKKzg3OTAzIDNjMTJhYjllMjE0ZTllY2Q1MTQwZTIxMjI0MzdiMmI5ODI2NzUwYjQgcHkzaworODc5MDQgZWEzYWM2MmVmZTY3Y2Q0Y2RmN2ZhMjc1YzhiMGY0N2ZmMzRiNWMzNiBweTNrCis4NzkwNSBhMmIxNjFmMTc1MjUyZmRlN2QxNGZiY2ZlY2QxZTk3ZjAwNTFmODNlIHJlbGVhc2UzMS1tYWludAorODc5MDYgNTY3ZDk2MWJlMDgzYzU3NGVhNjM0ZDkxNWMwZDE5MWRiZWM4YjBlNCBweTNrCis4NzkwNyBlYzU4ODkwOTc1ZjFkMmYwY2JmYzlhYmZlYmYxNmRiZWIyMGNiZjY4IHB5M2sKKzg3OTA4IDk4NTVjOGNjY2IzNmMwZTA0YWQxOTU0ZDIwZTc3ZWE0OGM3YzA2ZmEgcHkzaworODc5MDkgZGI3YTMyZDkwY2Y0YTJkOTM1OGI3MGNmMzRlOWQ2Y2Q0ZmUzM2M4NCByZWxlYXNlMjctbWFpbnQKKzg3OTEwIDNlNmRlODg1MWYyMzEwMTY1Zjc5ZDFlYjM0MGJkMDVkNjIxMWQ5N2YgcHkzaworODc5MTEgMTQ1MDUyMWI5ZDkzZjRhYzBlNWVhYTYyZGYxMWNmZDhhMzEwN2ExMCBweTNrCis4NzkxMiBlMGE2NmFhMzQyN2E2OTY5YjNjYTgzMTFkMGJiODM3NWRkNGVhMjQ2IHB5M2sKKzg3OTEzIGU0N2Q4ZDk1NWJkNjEwODNkZjE5YzMxZGJiMzZiMjA2OTM4NDgwYzMgcmVsZWFzZTMxLW1haW50Cis4NzkxNCBhZTk5NGJkNDY2MTc4YzkyZTg5M2ZkNDQzNWZkMGFjM2FkNjhmZTliIHB5M2sKKzg3OTE1IDY1YWRkN2E0MGY3MDIyZjI5YzQ5MDViMzYwMWQxMjgyOWYyYjZiNDcgcHkzaworODc5MTYgZWRmMzAxYWYyNjE2MTNhZGQwYjczOWQzOTVjNzFiNjU1YWY4NjkxNyBweTNrCis4NzkxNyBhYzZjYzE0MDRlMTUwNTc0NDBlY2VhODA2YzdmYTAwN2Y5N2U1ODAwIHB5M2sKKzg3OTE4IDFjNjVhYjQ0ZDM2NzFiM2Q0OGZjYTQxYjYyN2ExNTQ1ZTE3MGJhMTQgcmVsZWFzZTI3LW1haW50Cis4NzkxOSBkNzA1MjJjYzlkNGZlN2E2NDJlMWQ1NzNmMTk3YmQ3MGMwMWMxNGMzIHB5M2sKKzg3OTIwIGFkMGViNTdlYjJiNWI4NzZkOTdhMDczNTFlNTlkMmE4YmYxMTE5Y2QgcHkzaworODc5MjEgYzBmM2FjMTkzOTJiNjE5MzQzOGY4ZmVmY2M0MTViZTA1OGMxMDYyNyBweTNrCis4NzkyMiBiMTZiMGQ3NTRmYzkzYTU3ZWFjNmQ5MTAxNmYwZThmZWI4NmNkMTI2IHB5M2sKKzg3OTI0IGQ1NzM5NzEzMTEyNDJhZTg4MmJjMGFiOWUwNTk1NjA4NDY3ZTJiM2QgcHkzaworODc5MjUgZGI4ZDE1OTMzMTIxYzI3ZmI2MGVmN2Q5ZmE0YjQxYzI4MmU5ZjIwOSBweTNrCis4NzkyNiA3OGZmMDhjY2QxOGI3ZmRiYTlkMWZjOTFlYjQ0NGUyNTA3ZGYwM2Y0IHB5M2sKKzg3OTI3IDc1MTM3MmI3OWVkNjkyNWE3NzE0YzQ1NWQyZjY3YjM1YmQyMzFiNzcgcmVsZWFzZTMxLW1haW50Cis4NzkyOCAyMDk2OTgyMWJiNjE0YTNhYjk3NjI1MmRlMzA3OTI4MjcyOThkMjk1IHJlbGVhc2UyNy1tYWludAorODc5MjkgN2I1MTU5NGExNWRlZDE1OGQ0YmIyNzQzODVlZWJjMmM5ZjM2ZTg2ZSBweTNrLWNkZWNpbWFsCis4NzkzMCBlZDZkMDUzZWViYTVlYjY3MmU4ODlkYzg4OTUzYTM2YzgxMGEyNDg1IHB5M2stY2RlY2ltYWwKKzg3OTMxIDlmYTA3ZTdjZGYzODYyYWY1MDdmMzM5NWZlZWI1YTMwMjI0YzFiMGUgcHkzay1jZGVjaW1hbAorODc5MzIgNGI0NjljODdkN2UyZWE4MTMzNTIyNDM5ZmUxMWI5MjQ3OGMzODQ3MiBweTNrLWNkZWNpbWFsCis4NzkzMyA4MzA5NTJhNzFkMjE3N2Q4MWE0YWRlZmEzM2I2NmM3OWZiNDU5NDFkIHB5M2stY2RlY2ltYWwKKzg3OTM0IDA0OGFkMDcxN2E0NTIyOWFmMzBiNzhiYzk3ZGE0YTA4NGI5NzMzYWQgcmVsZWFzZTMxLW1haW50Cis4NzkzNSBmODI3ZjcwM2VmNjVjMGU0MDNjMmVhOGNkNTg5ZDIyZDdkMzZhZTJlIHJlbGVhc2UyNy1tYWludAorODc5MzYgYTNjMzc5NThhMjA5NDhkYzU4YTFkMjBlMzc5NDcxZWY1NGMzNDRiNSBweTNrLWNkZWNpbWFsCis4NzkzNyA3MDdmODkyN2Q2NjMwNjBiN2MyZWM3ZDZhMTJlMjJjZmEyOTIxNjdmIHB5M2stY2RlY2ltYWwKKzg3OTM4IDIyNDRhYzZjMmE5YmZiZmQzZmM2ZDMxOGU0MzA2ZTUzMTZmYTVkOGMgcHkzaworODc5MzkgNTRjODY0NDQ1M2Y5MTM0ZGMxYjg1ZGVjNWYyYTcwZTFkMzk1NGYwOCBweTNrCis4Nzk0MCBjMGI5NWNkYWY0NjBhMmE4MjMzZmFhZmY5MDc4NjQwZjI4ZTI4ZmZmIHB5M2sKKzg3OTQxIGNiNzU0YTU4MmIzNDBjNTkwMTljNGQ0MzA0MzA3ODJlN2VhZTdlZWIgcHkzaworODc5NDIgMjU4MWExN2IyOWFmMDMzMTkyMjViMDNiODdiMDA0M2IxZGViZTA0YiBweTNrCis4Nzk0MyBkZjM0YmIwODY5YmM4NTJkNGI0ZmQwN2NlMjY3YjFjYTc3MDQ0NTMxIHB5M2sKKzg3OTQ0IGVjOTZiNWI1NzIzYmNmNDMyNjc1MDEyNDVjNDdjOThiZTljZjc0MTkgcmVsZWFzZTI3LW1haW50Cis4Nzk0NSAxYjFhNjQyOTcxNDk3YWQwY2U1ODBkNjcxYWY4MzE3N2ZjNjI5ZmNhIHJlbGVhc2UyNy1tYWludAorODc5NDYgN2YwZDBjOWEyZDcyOTM5OWMyZjI4Y2MzOTAyOGNjNTI5MGZjYWQ2NiBweTNrCis4Nzk0NyAyNjljZjQ2YzA5YWY1YjgzMzdiOTAyMTdiMjI2OTAyNDY0YWIyOWI0IHB5M2sKKzg3OTQ4IGZlZjUyMWY0NWFmM2E5MGE2OGI2NzQwOTcxNTMzZDUxYTc4MzdkZDEgcHkzaworODc5NDkgNDliMGIyYmMwZTgzMzFiZGY5ZTQyMGJkYWYzMmY4MWJkZjFiNmQ4ZiBweTNrCis4Nzk1MCA0MzUwNzIxZGVlNTUzZjNjYzYxNWZmYjQ2NDNlNzJkMjExYzIwYWU1IHJlbGVhc2UyNy1tYWludAorODc5NTEgNjAwOTM4OGNhNWEyM2ZmY2FiNzYyMTViZjNmOWJhMWM5OGEyMWMxMSByZWxlYXNlMzEtbWFpbnQKKzg3OTUyIDc0YmY5M2JlNTY3MTAyZDExOGY0MzQyODMzNGZjYTk1ZTMxNDdhMmUgcHkzaworODc5NTMgNjAxYmNiNmZmNzUyZDc1YzcwMmYxYmNlYjI0ODBkMTcwM2I2YTdmMSBweTNrCis4Nzk1NCAyMzZlMTFiYTE4YzU3Mzk2ZDU3MmU0YjgyZTRhNTcxZWY4ZjkzNmYzIHB5M2sKKzg3OTU1IDJlYTFjZmRmOTI5YmVlMDkzODZlNTYzYzBjMjQxMTQwNDA3MDU2ZjAgcmVsZWFzZTMxLW1haW50Cis4Nzk1NiBkZGFhMTdjMDk4ZDkzZGVkYzY3Y2I3NmFmNjA3ZjgyMzU1OTQxYWUzIHJlbGVhc2UyNy1tYWludAorODc5NTcgOTE0NDY4MTdjYzNlOGU3M2ZjZTQwYTc5M2Q3NTBkYzI2MGU1MDhmYiBweTNrCis4Nzk1OCBhNTAyMTQ5NjZkMjQ4MmVhNmVlYWUyN2Y2ZWNiMmEwNzRiMTZjMGY3IHB5M2sKKzg3OTU5IDc3ZmUzZjE2MDg3YWY5ZjFjNzM1ZTYxYThhZWQxMDE0ZGU2ZGVhM2YgcmVsZWFzZTMxLW1haW50Cis4Nzk2MCBhZWNjYmQxNjk3MGY4ZjY1YTIyZjZhNTdlZjA5OGVlMzBlOGQ5NDJjIHB5M2sKKzg3OTYxIGUxNTI2MGE0NGU0NDc4ZmE0NmRmNzBjMmVjNzkyMGIwM2RhYTNhZmYgcmVsZWFzZTI3LW1haW50Cis4Nzk2MiA1MDQ4YjI3MjAwZDc0YTEwNzVjZmU1Y2JlM2UwNzVlNTJlZWVhZWEwIHJlbGVhc2UyNy1tYWludAorODc5NjMgNmNjNTI3N2Y1ZTdhYTMzMzUyMWVjNzQ1NmZlMTViM2U2YWVmN2FmMCByZWxlYXNlMzEtbWFpbnQKKzg3OTY0IGFjMGViNWRmMmMwNWJlYzE4ZTNhOTc3YzJjOWMyMDhhNThhYzZkMDkgcmVsZWFzZTI3LW1haW50Cis4Nzk2NSBkMTIwMjE4ZDgwYWI0M2I0YzdlZTkyYTI1YmFhZjNmZWJkM2YyMWQ3IHJlbGVhc2UzMS1tYWludAorODc5NjYgM2VlYWVjZjAwNWMxNGQzOGM0ZjdkMjA1YTM1OWRiMWVmNjljNDMyYyBweTNrCis4Nzk2NyA2ZGNkNDkxNTA2ZWQ1MDUzMzE4ODQ3MmE1OTU5YjNkODJiN2UxNDJjIHJlbGVhc2UzMS1tYWludAorODc5NjggYjliNTUxZWQwODU4ZDJiN2RiMTQzM2IwMzFlODE1ZDQ0MjEyNzAyOCBweTNrCis4Nzk2OSA0NWEzOTFjZGM2OGFjMjhkY2QzZDRhYmY4YTJhMGYyMzY5ZmEzZjFhIHB5M2sKKzg3OTcwIDRhYmZiNzY3MGVhZGRhOTA3YmQ2MWUyMmUxNTIxOTcwMjMzNjIxZjggcmVsZWFzZTMxLW1haW50Cis4Nzk3MSA0MWJkYzAzMmU3MWFjZDdmNDQ1NTU0YTUxMWVhYTlmNWNiMDY2MDZmIHB5M2sKKzg3OTcyIGUxY2MzNTcyODQ4MWVlZGQ0Yjc1M2U2MGFiNzFhZjAyZTczOTA5ZTkgcHkzaworODc5NzMgNGU4NmQ2OTViYTk4YTU4MjI5ZGU0ODJlMzUyZDBiNjgzZjk2ZTFhMiBweTNrCis4Nzk3NCBjNjY5YTY5NzZiZjhjZjJiN2E3NDczNjEwNWU1NTJlYjRhYjAyNWVmIHB5M2sKKzg3OTc1IGNjYmQ2NTg3ZjhlZDVjODcyMmQwNDcyMjViYTNjMDFlMTY3MGJkYmYgcHkzaworODc5NzggZjkxNmMyYWEyMzhmZThhMjBjZTY1OGEyYjlmYWEwODVhZDAzNDY5YyBweTNrCis4Nzk3OSBlZmRmMjU2MTdiN2NkNDI3ZWE0N2I4OTRiZWMzYjhhYzJhZTllNTQ5IHJlbGVhc2UzMS1tYWludAorODc5ODAgZTEyNWQ5MmY3NDM4ZTEyZmZmOGYzY2QzZGM2NTk4YzczYzE4MDUwMSBweTNrCis4Nzk4MSA4NzE5ZGQ3MTIzODRkYjU5NjlhNTI5M2VkMmE0ZGMxOTczZTQzZmNjIHB5M2sKKzg3OTgyIDEwZDY3ZGI2Nzk0MjBmNGU3NTM3OTVjYjQyNjE5NWE0NmRlZDBmYmMgcHkzaworODc5ODMgY2JkYzhiMWU2YmQzOWNhMWM1YTliNGMwYzc5NjkxNjNjMDNiYjdlZiBweTNrCis4Nzk4NCA0ZWFlMzNmMzc5N2M1ZDFjZDIyZTY5ZDQ5ODQxZmViN2NmZTg3NzM5IHB5M2sKKzg3OTg1IDI1ZDUzZTQ0OTdkODUyN2Q4OWUyNjAwYjdkODVkNzlmMGQ5YTEzZWUgcmVsZWFzZTI3LW1haW50Cis4Nzk4NiAyZjA4OTRjMDJiZjJiODhjYTAyMmYxOWEzZTkyZGNlOGVmODJiODA3IHB5M2sKKzg3OTg4IDdjYmI1ZjNiNjk1NGI5YWMyZjI1YjI5OGE1MWE2YjAwNGI2NGZhNWYgcHkzaworODc5ODkgN2Q2NThiNDliM2UxNGU5YjE2M2VjMmIzYmMxNmQ5NDkxZDE0NTAxMCBweTNrCis4Nzk5MCAzYWM5YjdjZjc2MTRjZGUwMmY1YWRhMDUzNDViMzAzYjg1NmFiNzcwIHB5M2sKKzg3OTkxIDYwOGYzYTYxNThhOGM4MTMzNzg5MDc1MzIxNjFlYjE1NTU4MTlhOGIgcHkzaworODc5OTIgNDc0YjJjZTA3OTRmZmFmZmNhZTRlMzZkYzUxZmQ5NTFmNDU1YTFiNyByZWxlYXNlMjctbWFpbnQKKzg3OTkzIDAzNTNiMTYxM2FhODE0YmM2YzkzZTI0NDllMjIzNDliZTEyODhhNDAgcHkzaworODc5OTQgZjE5ODI0YWFiMzljODBiZDQ2Y2VjY2Y5ODliYTE2MDNjZmE4YzYxZCByZWxlYXNlMzEtbWFpbnQKKzg3OTk1IDI0NGEyNzQ3NzM5NmQ0YTI5ODA0YTRiZmJhYWUxMDY4YzM3MmY5YjEgcmVsZWFzZTMxLW1haW50Cis4Nzk5NiBmNmU5YWM0Yjg4MTM2YjM4ZDk0N2MxZTYwMTVmZmEyOTFhZjE2YWVhIHB5M2sKKzg3OTk3IDdmODg4OGI0ZmRmY2FmZTlhM2QwMGU4MjIxOWE2NWM5ZTFmZTczN2MgcHkzaworODc5OTggZDg2NDMyOGE3NGU0MTQyYWEyODZmODIyYzRiODI3ZDFiNzBjZDkzMCBweTNrCis4Nzk5OSA5NmZmZTRhMzExZGQ0ZDVmMDU0OGMzYmQwNWQ0ZTMzYmVlNGNmMzZlIHB5M2sKKzg4MDAwIDM1OTNiMGQ5Y2FhNzRjOTA0OGIwOWQ4NGUwMTlkNDE3NWYwMGMwMjYgcHkzaworODgwMDEgZmViZTA0YTZkNDg2NGRkODhhODgyZjE3ZjMzZjAxMDJiNDdmOTYyMyBweTNrCis4ODAwMiA0NDMwZTRkNjM1OTQ3YTJhMTRiZDU4YjM2NDQ0MjI1ODgxYTViMjE4IHJlbGVhc2UzMS1tYWludAorODgwMDMgMThhYjhlMGU2NzAyNWJjMzM5YmI0MmRkYmYzYmUwNDg5MzIyMjlhNiBweTNrCis4ODAwNCAyYWZjZGY2OGEzODkxZjc5NTJiYTFjOGUzMzMzNGQzNzliNjQ1MDFlIHB5M2sKKzg4MDA1IGIwNGRhNTQ0ZTEzYmJmNTQzZDdmY2RmMmZjYjQ0MDA1NmQ2ODM2MTkgcHkzaworODgwMDYgNDg0NTQ3NjVkOGUwY2U2NTUwYTA0YzRkNTNhYjM3YTI4YTk3Yzg2OCBweTNrCis4ODAwNyA5MTFkMGE3NDYwOWUyMTgwMjBkM2RmZTJlZDBhMTg0YzA1MGM1NTA4IHB5M2sKKzg4MDA4IDdiMmQ3Y2VkYWZiMGExMTYyZjBkMjViZmM4ZmI2MGNkZjU3MGMzZTUgcHkzaworODgwMDkgMGI0Yzk5NTI5OWRkY2VkZDE1MjdhMmNlY2UyYjkwN2EyNmVmYjEyNiBweTNrCis4ODAxMCA0ZGM1NTAzNzMxZmVhMTc2N2NkNmNhZThlZDlhOGMwZjNhZTM5ZGU0IHJlbGVhc2UzMS1tYWludAorODgwMTEgMjkzMDM5M2YwYmJiOTFkYTVjNGU2MDQ1NWE1ZTZkYWU0MWI4M2FhMSBweTNrCis4ODAxMiBhZTA5OTQ1ODMzNDUxYmI4Y2I1YzczMTllZjFhZTc5ZjkyZjJlOTk4IHB5M2sKKzg4MDEzIGMwYzU5NGFlZjg0MjM1ZTcwMGEyZjMyYWM2ZjQ5MjlkYmJiYzQzYTEgcHkzaworODgwMTQgMzk2OWE2Y2ExNmFmMjkxNzZjNDg2NTI4M2I4NmYyZTA4ZGU1ZDI5ZCBweTNrCis4ODAxNSAzZjk5YzM2ZDAwYjhhZDVmMjdjNTY5ZWMwMTg2NzJjMTYyNzU3MTVmIHB5M2sKKzg4MDE2IDkzYjdjMDU4MGM0MzQ2OWJmYmExN2NmNTExODg0NWQ4YzE0YTM0MmUgcHkzaworODgwMTcgZjEzMGJlMDFkMjMwMGQ5OTQzMmYzYmFlY2NlZjFmNGJhZjc5MTIzMCBweTNrCis4ODAxOCBiZWVhYjBmYTQxZTVlYWZmNjk2YWFlNTlmMjMyYzZiNDdlMDAzNzJjIHB5M2sKKzg4MDE5IGIwMzc0N2FkYTQ0ZDZhODAyNTEzNjEyYTJhNDk5MDdlMmI3Mzc2MTQgcmVsZWFzZTMxLW1haW50Cis4ODAyMCBlZjA3NzdhZjk5NzhlZTJiMjdmNDRiOTg5ZjZhY2ZlZjZmNGMwNWIyIHJlbGVhc2UyNy1tYWludAorODgwMjEgYjhmOTdkOGNkNDg1ZjI3YWQzNWMzM2RiZGE4NGFkMDRmMjBlYjAyMiBweTNrCis4ODAyMiAzYzMxNjIzNmVhYmQyYWVkNzdkYjU5ZGQwNmY5NzQ4ZGU5MjE2NGE0IHB5M2sKKzg4MDIzIDQxZDg3NGVjYmQ4MWZiNDY2MTdmNzhkYjAxNWE1NGUwZmZlODc5YWUgcmVsZWFzZTMxLW1haW50Cis4ODAyNCA3YWNiODM5ZjM2MTMyZWI0OGFjNmU4MGYwNjVhZTM3Y2E5N2JiN2ViIHJlbGVhc2UyNy1tYWludAorODgwMjYgOGRkY2FlMmI2NGI0NzFmZDNlZWE3MDI0OWMyMmFmNzM0MmQyMmUxYSBweTNrCis4ODAyOCA0YTIwZTNjYTI1ZTlhZDc4MTQzNGNmODFmNWFjMzRmNDYwODU4ZGYzIHB5M2sKKzg4MDMyIDkwNzZlNDIyMGZhNGYwZDM3MGU3MDc0ZWUyMDI3YmJlMDFkZWY5NTkgcHkzaworODgwMzMgZTg0ZDVlZmE2ZDc1NGIxM2U0NjdkYzliODQwODY4ODVmM2MyYWU4NSBweTNrCis4ODAzNSBhYjlkYzQyNTQ3YzA5OGUzNDc4NjRmNmEyMDViNGE1OTY2ZGJkZTExIHB5M2sKKzg4MDM2IDg2NWQ1YjI0YmYyOGNhNDFiNTM2YmVmYzMyNjQwN2MwM2U3NGE0ZDUgcHkzaworODgwMzcgZmUxMDIzYWY2YjU5NjlkNGM1MTRjNDJlOTFlY2ZjZWZjMTJiZTZhYSByZWxlYXNlMzEtbWFpbnQKKzg4MDM4IGFkYTcwMmMwNGQxNGMzNzRiZWY2MWY2MmYxZGJiZDU2NDEwZGM2OGEgcmVsZWFzZTI3LW1haW50Cis4ODAzOSA0MmVmYzExYWI3ODJkMGQxZDAyYzU4Zjg3YzYyZDE1OWM3YmU5OTlhIHB5M2sKKzg4MDQwIDg1NjVlNzIzYjRhMGVhM2RhYTE0YjUzNWVhMjQ1YWU3NDFjY2ZjZGYgcHkzaworODgwNDEgZmMxZDE1OTE3ODk1NWZjMjE5NmIxZDgyOTQ4YWI4ZGIxNDk0ZDNjYyBweTNrCis4ODA0MiBiMTEwNGI0MjUxMzRjNmU5ZGQxNjM4YmE0YmRjNDZjYzY4YzA2NTFhIHB5M2sKKzg4MDQzIDlmMjgyY2ZhODlhMjE4NmE1ZTk2YjNmMzVlNTMzNzk3NTc4ZjFmNjAgcHkzaworODgwNDQgYjdhOTdmMTFiNDFiMzc2ZDk0MWFiNDRkMzNiMWJmNDhhNGNhMDJmNSBweTNrCis4ODA0NiBjOTFkZTMyNjgzNWU5NzhmZDk1ZmU5ZTU2MGJkMDU2OTUzNTM2NWJlIHJlbGVhc2UyNy1tYWludAorODgwNDcgMWY2ZTA0NWU4YTY5YmFiNWM1NWNmNmUyZThiZGJmNjZiNzdhMDMyYiBweTNrCis4ODA0OCBkNjcwNDgyYTU4MjExNzVmOWNmOTExNzIzZGQwNTQzNWIxZDIxMzQ4IHB5M2sKKzg4MDQ5IDQ1ZGE4MzMyNzYzNWZkYmNkNWM0ODQ1M2ExMjhiY2IxNTFhZGYwZTMgcHkzaworODgwNTAgMmNmNjdjNmFhNmVlNjhmMGFiZTgwN2E2NTNkMjFkZWFkMGVmMWQxZiBweTNrCis4ODA1MSAzODQ3MzdhNzQwODBlM2UxNzRiNWU4NWM4ZmI2NTBkNTY1N2E3NjI1IHB5M2sKKzg4MDUyIDQ3MjRiOTRjNTc0NTY4YjYyMzhiZDc1MDUzMWExMjk4YmQ2OGI0ZDggcHkzaworODgwNTMgMzY4ZTkxMDMxODgwMjAwYjA4NGYzZjYxNmQ4ZjFlMmNiZGZmYzYyYiBweTNrCis4ODA1NCBhZWVmYTIyMWJiZTY1MjgwNWYwZjUyZjg0NjE0M2ZhYTM5MTk1MDNiIHB5M2sKKzg4MDU1IDY5MWJjMmMyZmMyMmQ1NWVjZGQ1NWYyYTA0YWM2YmViNmFkYmU2N2QgcHkzaworODgwNTYgNTI1YWVhYTNkNTNmMjlmZTUwYTQ5NjVkNzg3MmYxN2ZkMmM2N2FmZSBweTNrCis4ODA1NyBmYWVjMWI1YTk2ZGI3NDRkNzZiOTliMWUxMmM4NTZkMGE3NmY4MDVmIHB5M2sKKzg4MDU4IDM2OTEwODUxYTcxNWNmYjVmNTU0ZWUzMjI0NjBkNzEzZmE0YWY3MDAgcHkzaworODgwNjIgN2IzMWJlYjg4Y2RiMmYxOTY4MzA0ZTAyOGNkNDg5YzBjZGZhZWNjMyByZWxlYXNlMzEtbWFpbnQKKzg4MDYzIDM2NzRkY2I0MWE5NGYzMGMwNzBlOWVmY2RhYWI5NTk4OWRmZDcwMGMgcHkzaworODgwNjQgZGQ4N2IwZWZjZGQ4MzRhMmU1YmM0NTkxMDQxYWY2MjQ3NTE2MWNhZCByZWxlYXNlMjctbWFpbnQKKzg4MDY1IGM1OWNlYTIxODU0NzY3MzVkMGI3ZGVjNzM1YTk5YjgxZjU5NWYwZmMgcmVsZWFzZTMxLW1haW50Cis4ODA2NiBkZjhiNmEyYmRkZGQ3MmY4ZDQwYTgyNjQzMDExMWE5YTZlYWFhZGQzIHB5M2sKKzg4MDY3IDgxMWI0ZmI4ZjBjYzY5MjAxYTRiMTc5ZDBjZjI3MWI4YjBhYzVkNDMgcmVsZWFzZTMxLW1haW50Cis4ODA2OCAxZjZkMTQxOGNjMTgzMTY3YmJkYWY2YmMwYjZhMGM1ZmU4MGI5Yjc2IHJlbGVhc2UyNy1tYWludAorODgwNjkgYTc4YzZkMGMzZjY5Y2Q5Zjc2M2IyMTdhMGMzMzMzNGVkMTQ3Y2MzMCBweTNrCis4ODA3MCA2ZThlMGZlMTgyMDVmMDBhMjUyNjllMWI4NzI4MmQ5ZTM3MjY3ZGZkIHJlbGVhc2UyNy1tYWludAorODgwNzEgYjk0OGRiZDFmYWMxYjRiN2M2YjQxMWMxYWZjNjExYTVjNjhhMjhjZCByZWxlYXNlMzEtbWFpbnQKKzg4MDcyIGNhY2MzNWExZTBjM2QxNTlkZTgzMTQ5NDljNmQ0N2Y0ZmY3YjgwYjAgcHkzaworODgwNzMgZDM1YTI0YTk0NzE3OGQ0OTNlNDM3Y2FhZDJjYTA2MTUwNTdlMTJiNSBweTNrCis4ODA3NCA0ZDI3NWM1ODIxNGIzMTMyOTFkMjlkYTNhOGI1MmNjNDQxZmZlN2RhIHB5M2sKKzg4MDc1IGVkZTI2MGE1M2ZiNTBhODdhOWZmNGUyY2IyNzNhZDhiZDkwNTU1NDYgcHkzaworODgwNzYgMjk1ZmY1NWEyNjVlN2I4NzE0ZmIxMDUwZDM3NjkzY2Y5ODE0ZTU2ZiBweTNrCis4ODA3NyA5YTAwZGUyNTBlMWU0OTgyYzJjZDIxMjAwMjE2YzkzMmFjMmU4NWNlIHB5M2sKKzg4MDc4IDg5NjI4ZjNlY2RjYmI3YjlhZmQxMzQwZDVlNzdlZjAwMzE5ZjljNDQgcHkzaworODgwNzkgNDE1MTczZjg3ZjQ1ZDgyMWRjMTMyOTk5MGM0ZTI4NWE2NTIxODZmMiBweTNrCis4ODA4MCA2ZTY4MjY1Mzg5NzQzYjEzZWJkNWFhM2IzYTliMDkzYzM4NGM3ZDc0IHB5M2sKKzg4MDgxIGZkOGU4MGZjMmQ5NDM2NGVkNGU5NDI2MjdkNDI1M2RmOTgwMmY2NjUgcmVsZWFzZTMxLW1haW50Cis4ODA4MiA2MTAxNjI5ODEwZTAwZGQyNTE2MzczZGNjZWFiMDg4NzczM2VhOWFkIHJlbGVhc2UyNy1tYWludAorODgwODMgOTllYWI1ZWRmOTlkZWM3MmZjN2QwMzk3NjAyN2RjNTgzYjJkNjI0YSBweTNrCis4ODA4NCA1N2JkMGQ4NjRjYjAzN2ExNDdjYzFlMTBmZDQ3NzRlMGU3NGJlNGQ5IHB5M2sKKzg4MDg1IGY1YTNiNjM5N2E1MzhkODEwMjI5YzM2YzRmOTE0NDA5MmNkYmYwMGEgcHkzaworODgwODggZWQ4ZjA1OGRjNjRiMDc1Y2Y1NmUyNzk2ODMwMjE2ZjU0ZGFhMjUzYiByZWxlYXNlMzEtbWFpbnQKKzg4MDg5IDUyZTgwMjkxNGNmODk2MjBjOGVhNzg2NjYyMjMyYzRkNDRkZDFhYzMgcmVsZWFzZTI3LW1haW50Cis4ODA5MCAyZDQyZjY0YjI4ZmRlZjIxY2I4YTU5OTMxMGM2NDU5YzRhNGUyZmJmIHJlbGVhc2UyNy1tYWludAorODgwOTEgMzRkNDg4NDhkNDFiYzgxMWIzNjIyZmNjYWZkMmQxZjdiZmM3Y2JiNyByZWxlYXNlMzEtbWFpbnQKKzg4MDkyIGY0NDFjNmUzYTc2OTEyOWMxMTgwNGM3ZWU4MzQ3ZWZhMjU3NTUyMzAgcHkzaworODgwOTMgNGUwYmNlYzgwOWRkODA5NGI5OWYxZjUxNzI3ZDAwZDQyNzZhNmVhMCBweTNrCis4ODA5NCA3NjFlOWFkMTY1ZWYxZmMxOWJkM2Y1ZWMzZmQ0ZTI4ODBiMWUzZjdkIHB5M2sKKzg4MDk3IGZjNWQwMmFlNTJkZDZiZDgyNzUyMDNkNTcyZmY1NDg1MDZmNzUzOTUgcHkzaworODgwOTggMmZkZTVhYmZiNWYxYjdmYmEwZjE3OWRjMzJkMzg0MzIyNTY2Y2MwYSByZWxlYXNlMzEtbWFpbnQKKzg4MDk5IGVhYzU0NTdmZjE5NWIwOGVmNzU0NDA5OWIzMWM1NGMzYjIzM2VkNmYgcmVsZWFzZTI3LW1haW50Cis4ODEwMCA0OTZlYTUwMjhjMDFhYzVkNzI4MjE3NTM0MTFmZDcwNDM1YmMzYjY5IHB5M2sKKzg4MTAxIDM4MjRiZWYzNzZjYzdmZWFjZjMwODgwOWQ0MmQ3ODg0MTgyYjcxYTcgcHkzaworODgxMDIgMTA5YWYwMzlmNDRmMGQ1OTY2MjcyYWE1NmQzMWExMDYxY2QzYjg3NCBweTNrCis4ODEwMyBjYzg5NzU3MjRmOWE4YmY0OGE1YjNlZTQyMmEwNjk0Mjk1ZDQwNzE2IHB5M2sKKzg4MTA0IGQ3MDU4Zjc0YmQwNGI0ZmE2ZmQ1YThmNmQ3Y2MzZDllNDc3ZjYzNzkgcHkzaworODgxMDUgNDFjNTFmNWNmNWQ5OTQ4MDA2MmQ1MDA3MDIxNzgwMGJlMDgxNjhiYiBweTNrCis4ODEwNiBhN2FhODM3M2I1ZmNiNTIwNGE3MWY4OTZiOGQxYTExMmIwNTEwOWVmIHB5M2sKKzg4MTA3IDNjMWM4ZDQyNjk2NjMwMWFiZWVlMzg3MTdmOTJkMTVkN2Y4ZTUyZGUgcHkzaworODgxMDggOTkxNDcwYmUwMzQwYmUwYzZiYWRkNmYwMmZjMDIyNGU5YzZiMmE1MiBweTNrCis4ODEwOSBkZTkyNTM2MWViYTUxMTY3NjlkY2UzNWUxNmYyYWY5NGRiZTBiYWM0IHB5M2sKKzg4MTExIDkxYWJlODU1MDcyYTM2NmQyZDg4MThjMDUwMjg3NzMzNmQ2ZGQzYzMgcHkzaworODgxMTIgMDdlMWViMjQ0ZGY4OGIzNjgwMGYyYmE2ODdhMjgyMmU2NzNjNjQ4MiByZWxlYXNlMzEtbWFpbnQKKzg4MTEzIDAyZWMxOTk3ZDc1ZTg3Y2M1Yjk4ZjM4YjE0ZGE2ODc3ZTMzMjBmOWQgcmVsZWFzZTI3LW1haW50Cis4ODExNCBjMzU0MDBjMzYzMDRlODk3YTg0MGU0OGIyMjlmMzVjNzNhZmM1YTM4IHB5M2sKKzg4MTE1IGE5MjVlYTRlMTA1ZjgxNGZmYWZjOWZkOWYzMTRiOTFmYmYzNzRkZTMgcHkzaworODgxMTYgYjg4MGM4MjI3YzAyNzJjMmQyMTljMWI3NjlmYTQwMzExYWE4MWUyMCByZWxlYXNlMjctbWFpbnQKKzg4MTE3IDIzM2NjNzQwMjc0YjcxMjZiNDdmYWU3ODk1YjQ0YTAyNGY1NGIzYWUgcHkzaworODgxMTggZTRlNGJmYzA5ZTE4ZGIzY2ZjYzQ5YTViMGIyOTZlYjkwNGM3ZjBlYiBweTNrCis4ODExOSA2YjhiNmU1YWVjMGE1ZjQ0OGQ2ODUxYTRiY2Q5M2QxMDkyNWQ0NDgyIHB5M2sKKzg4MTIwIDdmN2MyYWFiODYxYzExYTg0MGY0NGJhNDFmMzY4ZGZmMDI5NDhhNWYgcHkzaworODgxMjEgZGE0NGJiMGNkNGU5OTJkODc2ODE5ZmY3N2EyZTFkMjNkNGYwYzYyNSBweTNrCis4ODEyMiBmYmViZjBmMDYwNTc5ODA5YjNmYjIzZTExZjg2Yjc2MTdiZDkxZWU3IHB5M2sKKzg4MTI1IDNiM2M1MzYzMDYzN2E1YTNiNzQ4ZGFhMjFhOWJiZTlmNTBiMmUyYWQgcHkzaworODgxMjYgYWVmNDgyNDIwZTk2Y2NiYTM4ZmU4MDcyOWRiNGU4ZmI4YTZhMzkxNiBweTNrCis4ODEyNyBjZTQwNzU0YTg0MmEzZGI1MWMxYzYyNDg1MDE3Mjg0ZTEyNTNkNDdkIHB5M2sKKzg4MTI4IDNkMzNmNDFlODE4ZGJmMWNlNmFjOGQwMWYwYWI2YzlmYjg1YTI3YjIgcHkzaworODgxMjkgOTNlOThkNDBmMmE1YTU0OTlkMTJkMjMyZDBiNTQwYjM1OGRkZWU0YiBweTNrCis4ODEzMCA1ZTcwZWVlODZjNjEzMGIxYmQyMTc2YTUzMDI4YjA2ODdjMWJlN2VmIHB5M2sKKzg4MTMxIGM4Mzk2ZDI3ZjU2ZThkNjU5ZWQ5MjgzNGY0M2U4NTMyNjZjYWUyZjMgcHkzaworODgxMzIgZjM2NTM4YmE5MGE4ZmEzMGEwZWM4MTkzOWY5ODg2MzI0OWFhNDg4MiByZWxlYXNlMzEtbWFpbnQKKzg4MTMzIGRmOTFhMDE4ZGUzYWI1MDU4Y2NhMDYxM2U2ZTNhMzIyNjVlYTZmYWMgcmVsZWFzZTI3LW1haW50Cis4ODEzNCBmYjY2OGFhYTJmYTRmMGQ3NWNhOGE4ODU1YjVmODBhOGY4ODVhNTg5IHB5M2sKKzg4MTM1IGU0ZTMyYzRmZjYyNjI3YTNlNWMwYjY0MTZkOTIzYmIwZTk0NWVkODYgcHkzaworODgxMzYgY2MyMTYyNzA4YmY2MmI1YmY3NWFjMTQwMGFhYTZhNzFhMDE4ZTk0YyBweTNrCis4ODEzNyA4ZTBiNjE3YzZjMjIxNmQzNDlkODE4OTRmMDM2Y2U0ZDM4NGJiNDRhIHB5M2sKKzg4MTM4IDE2NDgwMTFjNjVkYTlhMGMyNmRiYmY0NjdkNDE1YTY0ZGU5NDBkYWUgcmVsZWFzZTMxLW1haW50Cis4ODEzOSAyNDE2MWNmNDA1ZjRjMjIzNzQzMGI3ZmU5NmEwOTc4NTdkNGFhZWQyIHJlbGVhc2UzMS1tYWludAorODgxMzkgZGU4ZGI3YWFmN2EyOTYwNTdhZTI2MTI1Yjk5NjE4Yzk2MWI0ZmVmNiByZWxlYXNlMjctbWFpbnQKKzg4MTM5IGM0MDgxN2M5NTUxNGIxNDcxZGIyNjcwZTM0NzQ3NDhlYzg0MzkwYmEgcHkzaworODgxNDAgYjk2ODA1M2FmYWQwZGM1MWU4YjA4N2U1OWZmMTFlNTk0OTg2MzgxYyBweTNrCis4ODE0MSA3ODhiMDFiNWE3NGVhMTdjNjBmNzdkNmIyZDFlOWZhODBmNWI1NzhlIHB5M2sKKzg4MTQyIDMwYzkxMzQyYjZhZTYzNjViNzMzYjEzMzYwNzIxZGQ5NGIwNzJkNzcgcHkzaworODgxNDMgYjNjYWRmNWNmNzQyNmM1YjI3ODIwZTRmNzc4OTc5MGJkYzViMDAxMCBweTNrCis4ODE0NCAwODY3M2U1ZjU0OWEyN2NjNzE1ODFlNjc5OWVmN2QwZDZhYmY2YzEzIHB5M2sKKzg4MTQ1IGJhYTkyMmI0NjIzN2RiMmIyOWEyODQwMzE0ZGQwNmMzNzFlMTM5NTYgcHkzaworODgxNDYgNGY3ZjM5OTUxOTRhMWM4YjAzZDQzODYzMWJkNjhhY2E0ZTEzODEwZSBweTNrCis4ODE0NyA0YzRhYmZiODg0ZmI0OGZlMTVjY2Q2YWM2ZWJhNTllZThmZDUyZDIzIHB5M2sKKzg4MTQ4IGJjZjAzMGY3M2VlZWI0MTU3Y2Q5ZGY4ZjIzNTBhN2VkNTBiMzdmMzkgcmVsZWFzZTMxLW1haW50Cis4ODE0OSBiOGMwY2EzNTk3OWEyY2RlOGMxZjg3ZmZlNDI1MGQzZDg3NGQ1NmRlIHB5M2sKKzg4MTUwIDQzMWRkY2RiNDMxMDZhZDliNmJlYjM4YTY0YjZkOWYzMGZkMTA2YjcgcHkzaworODgxNTEgZmMyYWRlODhhYjQxNzlmYjhjMWVkMzk4OWVhY2FkNzBhMDAwYzU2YiBweTNrCis4ODE1MiBkMWMwNjMwNmMxOWJlODJiZTM5YjI0YmI2ZmNmNmQ1ZWJjOTFiMzU5IHB5M2sKKzg4MTUzIGEwYTVjNWQ5YWE0ZmRmMWYxNjQ0MjdkMDFmOWEyYzcwNjc3YmZiYzEgcHkzaworODgxNTQgM2JiMjFkZjY0YWE1MTIwMTVlYjRiYzQ2OTE4ZTU5YjFjZDRjZWEwMCBweTNrCis4ODE1NSA0MDYzZTUyNjk4MmYyNmJhMDJjMjYzYTJiZTdkZWJjODhlYTY2NTRkIHB5M2sKKzg4MTU2IDZmNDBiNDcwOWU5YTUyZmQ4ZWNhNjRhMTdiYzBiNDEyZTMyN2VjNzAgcHkzaworODgxNTcgNWE2NWVjMjg3NzEzNzQ1OTZmMmVlNGNmYjAyMzllYzMyNjZjYzIzYiBweTNrCis4ODE1OCBkZDI3ZGY4ZDE0ZWZjMTk3ZmViMTc5OTg4OTU5YTUyOTMwYmRhNWY5IHB5M2sKKzg4MTU5IDJkZTY5OWU1ZjhmMzFhNTMyMWUyMDc4MTgxMmRjNDE4YzY0M2M5ZGMgcHkzaworODgxNjAgOTBhMmQ5YjcwMmJjYmFhZmJhOWNhZDc3NzIxNmFiYTFkNWU3ZWNmYSBweTNrCis4ODE2MSBmM2JmZWIyZmJjZmIwNmQ1ZjNiZWIyODAxNGNmNDk5Y2RhMWRkNGNjIHB5M2sKKzg4MTYyIDAzZTJhODc1NTcwOTBhYTUyYmEwMjhiNGRiYjY2YmY3NDNlMjM1ZmQgcHkzaworODgxNjMgYzE3NWY1ZGZmMzk2MDRiZDkwN2U0NTI4ZTdiNGNkODQwZmM0ZDc1YyBweTNrCis4ODE2NCA4MjVlYmFkZWJmOWJhMjkyMTg1ZWQ2ZWRkMzQ4YjM1MzM3MjQwNmM3IHB5M2sKKzg4MTY1IDFlM2YxNjliOWU0NmFlNGUxYmE4MzEyMjkxOTJiYzVjYWNjNmRiZjUgcHkzaworODgxNjYgNzA5MTliYWQ3NDU4NDFkMDI2NmM3YWJmYjdjMWVlNmEyMzg0ODZlMyBweTNrCis4ODE2OSA3ZjlhOThmNzY2ZDc1YzliNTk0NDg5MDJjZGY1NDkxY2Q0NWJhYWRjIHJlbGVhc2UyNy1tYWludAorODgxNzAgNDczZTQzNjgzOWVlNjM5MWUyYzU3MDY2ZTFjZDUxZGViOWMzZWU3YSBweTNrCis4ODE3MSA4YTMwYTJjYjRiOWUzNDcyZDg5MmRiYTM2ZDhkZDBkOTBiYTI1ZThmIHB5M2sKKzg4MTcyIDU5OGMxOTVlNTJmMzYwODZmZTkzOTAyOGRjZTcxYzQ4ZmZmMTIzMjIgcHkzaworODgxNzMgM2I5M2QwMDk5Y2VkMDdjN2E1Y2JkNGFhOGE5ZWFkZDAzNzg5ODRlOSByZWxlYXNlMzEtbWFpbnQKKzg4MTc0IGIwMjI1OTU3ZTAwNjU5OTVmYjIxYTc4YTJhMzAzMTYzYTA0MDg1MTkgcHkzaworODgxNzUgOTNhNDFkZjhjNzM3OGNmYWI2Zjc2ODg1NmM5OGUyZmJkMmNjYWFmMSByZWxlYXNlMjctbWFpbnQKKzg4MTc2IDBiNTI5OGU3YjJkNTQwNWJkNzIzNzllZDY2YjM2ODMyODg5ODg3MWMgcHkzaworODgxNzcgZWI0YmEwM2Q3YzRkZjMyMzIyM2M3NmJiYzYxZDJjODFjMWM1NDJiYiByZWxlYXNlMzEtbWFpbnQKKzg4MTc4IDBkNmVjY2YwMGI1YmQ2N2QxYzIwOTllY2ZiN2UzODA5MzcwOTY0MjMgcHkzaworODgxNzkgNzEyODEwMTdjNDNmYzQzZmZiMTc3ZDJhZDgxZjA1ZTZjZTNmYTFiMyBweTNrCis4ODE4MCBmYWUxOWU1NTE3YjY1YmUyYmYzMDczZDMzNzUwMzgxNzIwZDYwZTNlIHB5M2sKKzg4MTgxIDAzMjIwZWQ0OGJjYWUwZGUwZmNjZGNiYzBhZDhjNjhhNWIwY2Q4NzkgcHkzaworODgxODIgYzJiZDY5MjA3OGQyMGU3M2FlNDE5NmQyZTQ4MWUyY2NiODc0YjQ4ZSBweTNrCis4ODE4MyAzMmM4OTY2ODhjOTFkMDY4YTg2M2I3NjNkMmUzNzc4MzVkYzRiYzkwIHB5M2sKKzg4MTg0IDA4ZjMyZDExYjdlZmJhMjU0NTVkYzBkNjk5NzJkOTc2ZjA2YjljZmMgcHkzaworODgxODUgODlhM2Y2YzEyZjAyMTJkZDYxZmY1YWUwMDljMjNhMjZmZWZkMzc5MiBweTNrCis4ODE4NiA3NTdhOWIxODM2YjE5ZjJiNjdmNmFmYjZiMTNkYWE2ZmQwOTQwOTk3IHB5M2sKKzg4MTg3IDAwNzUzZDA0YmJiZmIzM2Q1ODVhMWQxNjdiYjlkZDAwYWUwMmVkZDYgcHkzaworODgxODggM2NhYmNlMGI2Y2FmY2FjYzkwMThmYTVkZmFmY2EzZTBiYzJiODA0YyBweTNrCis4ODE4OSAyMTk3NTRlOWMzOWMyZmEwNjI4MDQwYzlmMmE3NWEyMzNiNjkyMzhlIHRlc3Rfc3VicHJvY2Vzc18xMDgyNgorODgxOTAgNzA1NzgwYmE5ZTNhMDUzYjVjOGM1MmIzNzZkYzQ3OWQxY2NjZmJmZCB0ZXN0X3N1YnByb2Nlc3NfMTA4MjYKKzg4MTkxIDc3NmMzYzI5NGJiNzM1YzQ4OWMwNDZiODhmODg3NWMwZTRmNGE3YWUgcHkzaworODgxOTIgZjYzOTJjNGNlNjE5ODc3NzdkZjdmYzkzNGZhMGI4OWU1YjNlYjRjNCByZWxlYXNlMjctbWFpbnQKKzg4MTkzIDMyZmMxY2FmZmIxNzAyNmZhODVhN2ZjMjJlNWQxMGE1NmQ1ZTliNTQgdGVzdF9zdWJwcm9jZXNzXzEwODI2Cis4ODE5NCA4MmI3ZjUzYzJhY2Q0YTkzYTdkYjNjNmU0NDIwMmM3NGM5OGVhMGYzIHRlc3Rfc3VicHJvY2Vzc18xMDgyNgorODgxOTYgZjk4YWQ2NTA5MDI5NWE1NDQyNGQ1YjU5ZTIzNjY3MGM0OTMxODcyYSBweTNrCis4ODE5NyA2NWIwOTdhZWRhODAxM2NhNzcyN2M1OTlhODAzMzQzZWY4NDAwNzBiIHB5M2sKKzg4MTk4IDdiMzBkOWNmYTBkOWU1MTg4NGI1NGYyNGFkYWJjZWQ1MjBkZGE1ZjUgcHkzaworODgxOTkgNDg3MThiMTljMGRjMDgyZTBhZTIwMWJkZGM3MTgwZGY4YzdmZWZmYSBweTNrCis4ODIwMCBiZGY5ODY0ZmQyNzYwODUzMDNhOWExNjBmZDRkOTY5NDdkNTNiMWM4IHB5M2sKKzg4MjAxIDFmMjE1ZmRhMjM4MzhjZTM3NTg3NzgxZDlhZjFmZDExMzdhZTg5MDEgcHkzaworODgyMDIgYTY3NWE0NDY4NjIwODQzOTc4ODVkMTdhMzA2MThiMDNmM2JkNGYyMyByZWxlYXNlMjctbWFpbnQKKzg4MjAzIDFkM2JlN2IwMWQ4NDVlYTY0ZWMwZjkzNDBkMmRmODQyZGYxN2EwNDUgcHkzaworODgyMDQgOGVhYTMyNzk3ZjkyZTI5MmU5NDVkMGMwZGU5MzhlOTIwNGNkMjY3MCBweTNrCis4ODIwNSBhYzQ3ZDExYThjYTI0ZDQ2MWY2MGE0NzliY2UwZjcxNjI5YjQ2Y2E2IHJlbGVhc2UzMS1tYWludAorODgyMDYgNDRjMWI1NmQ3Nzg3ZDcxNTIyMzI5NjQzN2VjNDM2MTk1ODg1NzlkOCByZWxlYXNlMjctbWFpbnQKKzg4MjA3IDgwNTYxNzZjMDUzZjA1ZmMxMTdlZDlhNTI2NTI5OTllNDlkMWYwNDMgcHkzaworODgyMDggMjc5YTBjOTU5ZjdkYWVmMGI5YzI2MTNlZTM5ZGQyNTE3ZmUwOWEyZSByZWxlYXNlMzEtbWFpbnQKKzg4MjA5IDU5MWQ1NGZmZTk2OWQ3NDY3Y2RjMTAxOGI4ODQ3YWQwYWQwOWFjYTkgcHkzaworODgyMTAgZjgyYTA0Y2IxNTBhMmMwNjhmMTU5YzllMzlkNzIwY2EzMDYxYWNjOCBweTNrCis4ODIxMSBiMGFiMzM1MjJkZGE5ZjgzY2JhZTE0M2RjOTlkMDdhM2FjMjIwOTliIHB5M2sKKzg4MjEyIDBlMzBkNDEzYjllOTdmNDZjY2E5ODBkNzY0ZGE4N2ZjNTI4ZTNkNzcgcHkzaworODgyMTMgYmFjMjk2NjgwY2Y4NDY3YmNkMmQ5MTdiNmE5YzZkYWQ5ZDJiOTljZCBweTNrCis4ODIxNCBiMjJjYzc1NjNiMjg4MjMxMWJkOWFkZWE0NmUzOTc4ZDMxODQ0NjNhIHJlbGVhc2UyNy1tYWludAorODgyMTQgZmMyYWI3Y2RkY2YwMDU4YTUxZjkxNTJmOGYxOWMwMzBlMDNkYWZmNiBweTNrCis4ODIxNSBkZDczMjg2NzI5NjgzMWUwM2ExNzgyMjAxZmNiMzBkNDhjMTc5NTJlIHB5M2sKKzg4MjIwIGQyMWNiNmE3YTE0ZWU5YWMzM2EwMzI3Y2EyYTkyZDYyNjQ2NWJmOGYgcHkzaworODgyMjEgZTc5NTkzMDlmNTljNjViNGVhMjg2MzZkN2IyMzg5Y2FlMjNkNzQ0YSBweTNrCis4ODIyMiBlNDA2NDNhM2MzMWRmZmYzYWJhNzZlZmM2NWY3ODY1ZGJkZmE2ZTE2IHB5M2sKKzg4MjIzIDdjN2VlNGUxMTg1MGQwNzdmNzU1NzZmYWY1N2I4NWNlN2Y4NGNmOWUgcHkzaworODgyMjQgMmRiNjE3ZTkwY2EwYzEyMGQzYzNhZjcwZjAyYmNmNzBiYWRhOGM2OSB0ZXN0X3N1YnByb2Nlc3NfMTA4MjYKKzg4MjI2IDNlZjg2NTMyN2Q3YjA1ODBlYzBiMDIxNGExMmM4YmQ1OTk1OGRlNDkgcHkzaworODgyMjggODUyMTg2ZTVhZTJhYzY5ZTIxZDA0MjEzMDI0OTgxNjdjNjA3MWRmNCBweTNrCis4ODIyOSBjZjc1MDBmMDgwZmQzYWM2M2U0MzBjNjRmOTM3MjkxNTQ4MWMyY2RjIHJlbGVhc2UzMS1tYWludAorODgyMzAgZDdjZDFiNjI2MDhiOTgzMWM1NDFmNDQwYTYwYTJiMzk2ZjUyOTczYSBweTNrCis4ODIzMSAwODVlMGRkNjM3OTZiODBkM2Y4ZGVlN2Y5MGVkNzNkYWZkOWIwOTY2IHB5M2sKKzg4MjMyIDVjNTE3MjRiZjQxMTE2YTA4MzJiMGMzMzc2ZGJmYThkMjEyYjQzNzEgcHkzaworODgyMzMgYmUxMWU1NjUzZmRhOTc1NGZlY2I0MTRiNDE2OGYzNGU3MjhjYTE3YyByZWxlYXNlMzEtbWFpbnQKKzg4MjM0IDY0NzEzZTMxNjgzZjhiNzFlMjRiNzljZjk4N2RiOWMwMzFkNTU4MTYgcHkzaworODgyMzUgMzM0ODEyYmE1ODc0MjJiZGM0Yjg5MGY3OWJkMzRjMTc4NWM1M2U3NCBweTNrCis4ODIzNiA2YTFmYjk0NjQ3Y2I0ZGRmYzhjZmE5ZGQ2N2Q4OGYzODc0MDc2MzM1IHB5M2sKKzg4MjM3IDJhYWQ3MDdlZGE2Mjc4YTJhM2M2NjU2OTA2NWVkNDE0YWIzMDMxMzggcmVsZWFzZTMxLW1haW50Cis4ODIzOCBmMTJmZTY4NWU0NGQyOGRjOTczYzYxMmQ2ZWViYWQ2NjAwMzAzYTY0IHJlbGVhc2UyNy1tYWludAorODgyMzkgNzkxZjUyZmJlNWUwNjBhZmJkZTQ1OWQ5MGNjYzc3YzkyODQ0NzUyNiBweTNrCis4ODI0MCA1ZjFhZDY1YTFiODRjNzc3ZmQ1MzQxMzkwMjVlMDc2NTQ1YmRhOTA2IHB5M2sKKzg4MjQxIDNjNzc3MmZmZmJhZDM0YTI2MzAyY2QzMzEyNDZkYjk1NWU0NDVlNTQgcmVsZWFzZTMxLW1haW50Cis4ODI0MiBjNjkwNjA5OTk1YTYyNzYyNzM3M2Q2NGZjOGFmZDc3OTNjZTQwZDFjIHJlbGVhc2UzMS1tYWludAorODgyNDMgYjBlZmI2ZjBmZTk0MzI2M2Y3NjVlMzAwYWRlMDExYzBkOGRhZjMyNiByZWxlYXNlMjctbWFpbnQKKzg4MjQ0IDBjNjA0ZTY1NDI5ZTMyYjgyMzQ3ZDk3MzE0MTg1NzVkZmUyODg0ZjMgcHkzaworODgyNDUgNDZmMDdkYzQzN2ZmYmQ3OTI1YTUzMWZlZWU0ODg3OTBkYzNmN2VlMyBweTNrCis4ODI0NiA4YTE5ZjYwMjljZTU5N2UyOTc0YTJlNGJiZjA3NWIzODQ1MDljOWFiIHB5M2sKKzg4MjQ3IGM4MjU4OGNhM2E3OTA5ZGNhN2Q2ZjkwMTA5M2NjYjRjOWY5MzkyODEgcHkzaworODgyNDggZDNiNGZhMmRkNzI4OGVjNzAxMTUyZjc3MDc3NTFmMjRmMDBkZDY1MSByZWxlYXNlMjctbWFpbnQKKzg4MjUxIDJjOTM3MmExYzY4NWI1YjkwZTRiY2FhNTU1YjA4NmZhNjFlMTEyMGMgcHkzaworODgyNTIgZGM1MDFlZmEwNWI0MTI1YmM1ZTViZTYzY2U5MzliZjIxYzNmNTcxMCBweTNrCis4ODI1NiAzNmVlYjI4MmNkODQ0ZWE4OTBkMjE4N2YzZjFhNDQzMGQ3MTc5MzdiIHB5M2sKKzg4MjU4IGJmYTU4MzVlMTBmMGU3MTg1YWQ3NDY0OGI5MWQ2MDdkNmQzN2I4ODEgcHkzaworODgyNTkgNTk1YzJiNTY2ODFlYmI3NmRkYTg2ZjcwMzFiYjkwODUyYTI2YjExMSBweTNrCis4ODI2MSBkZmJkOTU2OGY0OWNiZTkwMTczYjY2M2RmMDE2NmNlYjAxNWRkNDA2IHB5M2sKKzg4MjYzIDJiZWY3YWI2MjU2YjQyMTI0NDQ1OWRjYWNmYWFiNTNlY2E2MGJkOGQgcHkzaworODgyNjQgOTNjNDA4MWRmZDE5NWNiZGIwN2JlOGZlMTgyNWMzMjFkYzBhNjAwNCBweTNrCis4ODI2NSAyNjU3NGIwMjcwNDJjODgwMzFhNzhhNzY5ZWY4YjViNjcwMWIxZWU0IHB5M2sKKzg4MjY2IGFjZjNlMjRkZDBkMGRmZDFlMjBjOTA3ZDY5NmQzZGE5NjVhOGY1NmYgcHkzaworODgyNjcgN2MzZGFmYmVlOWQwYjZiMWMxMTIxNWE1MmMxNjljNzY4M2QwY2NiZSBweTNrCis4ODI2OCBlODI1MDE4MTJhZTNkMzE2NTYzNWQ5N2Y2Zjk3YTlmOGYxZGNmNzBmIHJlbGVhc2UyNy1tYWludAorODgyNjkgYTlkZGRmYmFiMjQxNzljMGI2OWViMDgzMTFjZDZlN2FlMTk1YjQ2ZSByZWxlYXNlMzEtbWFpbnQKKzg4MjcwIDE4MjA3YjlkOWE2MGY4MTU2MjBiZTU2ZTA1Y2EwZjVjOTc2OGQzMjQgcmVsZWFzZTI3LW1haW50Cis4ODI3MSAwZjBjNWY5YWNlOWYzYmI0YjUyMGJjNGY0NGQ5NDNlZGU5Yzc1OGIwIHB5M2sKKzg4MjcyIGRlNjc5MmJkZDk2NTkzYmQ1MWUyMTBiODc5NzkyMjEyYTZhMTg4MDAgcHkzaworODgyNzMgMDg2YzJiY2Q4ZDc0ZTZiNDQ3NDY4Zjc0NjM1ZmFlMjY0YWI2YmVmZSBweTNrCis4ODI3NCA0YTI3MjIyNWMzZGU3MWU2MWEwNzE4NWU0NDAzYjkyNGJmMGI4ODZhIHB5M2sKKzg4Mjc1IGJjMDlkYjgyYTVkMGY1NDM2OTEwZTUxMGY4Nzg3MjYwMDExM2EzNzQgcHkzaworODgyNzYgMDJlZmRiOWUwOWU5MGVjMjU5MDAzOTQ2ZDRmNDRmY2MxOWJhMTM4MiBweTNrCis4ODI4MCA0Zjk0ODczODQ2YTNmYTVmZjk0ZWMyYjU3OWFmOTk1M2IyMzUwYzQwIHB5M2sKKzg4MjgxIDBhOWY2ODBhMmNmMDVjM2JhZWM0YzY5YTRkNjdjMGRjZDE5OTBiNTkgcHkzaworODgyODIgOTg3ZTY2MTVhMDc5NmFkOTAwNGZjMWMzYWEwOTAxNDZiZWE1YjQwYyByZWxlYXNlMzEtbWFpbnQKKzg4MjgzIGE2ZGYzYzNlMzc0MjM2MTI0ZmY5Njg5MGM3NjM0NjJkMWMyN2E1YmMgcmVsZWFzZTI3LW1haW50Cis4ODI4NCAzMWY0MGJlOTIyNTI0YzYyOTNlZDc3MDY2MmU1NzBiMGIwMjYyZjE1IHB5M2sKKzg4Mjg1IDhmYTczYTA4ODVjOTVlOGUxNmY1ZGE3MDJlYWQwMjQyY2Y3YWMzYTcgcmVsZWFzZTMxLW1haW50Cis4ODI4NiBjYTkwOTQzOGNmOWY4OTFiZjA3NDc0NDRlNGZmZTYzOWViMDIzZjI0IHJlbGVhc2UyNy1tYWludAorODgyOTkgNzNjNDk1NzlhNDg3YzRiZDFiNzU4ZDhjNWNlMjg4ZjE0YTE0MzQ4MyBweTNrCis4ODMwMCA5MDBmYzFlZTQ0ODdlZmUxODc4MDA2MTBmODYzYzU2MGI0MzNmZGVmIHJlbGVhc2UzMS1tYWludAorODgzMDEgOTQ0YWRmN2VkYTJlYmIxZWE2MTE0YjUxNmJmNmExMmU5YjkxYjFkYSBweTNrCis4ODMwMiA5ZTY1OTUxMjY2YTIwNTEyOTUwMTU3ZWVlYTZkZGI4OTllY2JiZjk3IHB5M2sKKzg4MzE4IGFhODczMDA0Y2VhODBkZTdhZGZiZmIxNWMyNmU5MzAwYzlmNjhjOWIgcmVsZWFzZTI3LW1haW50Cis4ODMxOSA3NzNjYjMzMmNjNjNiNmM2YTdjNTUzNGMyODA2MWM0OTg1ODQwZTM5IHJlbGVhc2UzMS1tYWludAorODgzMjAgZDMzOTAzZWIzMzg4NTQxZmFlZDdjNDNhOTE3NWQxMDg0YjA4ZjNkZiByZWxlYXNlMjctbWFpbnQKKzg4MzIxIDE3ZDZmMTY1ZWFlOTdmOWI0ZWM2Y2Q3MWYxOWU1YjhjYWMwOGE1M2UgcmVsZWFzZTMxLW1haW50Cis4ODMyMiA1YmU3MDExMzkwODljZjhmODRmNTkyMjQ0MmU0ZGUzMjUyODgyNTg4IHB5M2sKKzg4MzIzIDhlOTk2OTQxOGRiZWJjYjhiYmY0NDlhNjU2ZjQzOWEzODQ2ZWQ5NDcgcmVsZWFzZTMxLW1haW50Cis4ODMyNCBiMjE3ODY0MTliYjgzM2RiMTM2NzAxMDI0Mzk1MzFjMWVkNTgwMWEyIHJlbGVhc2UzMS1tYWludAorODgzMjUgNzgyYmY1ZjM3YWNiMDZmZWQ2ZjA0YmQxZGMzZjFmZTc2ZWJjMzk3YiByZWxlYXNlMzEtbWFpbnQKKzg4MzI2IDJlM2M1ODQxYTBhNjY0MGVlNzY0NDFhNjYwNjhkMTdkOTYwYjMwNjAgcmVsZWFzZTMxLW1haW50Cis4ODMyNyBhMWQxYmZjMzgzZWZjZjZlMWQ3M2U4NGI4NjUzYzA4NWY4MTUxNzFiIHJlbGVhc2UzMS1tYWludAorODgzMjggNjI3MDk0NjExNWQwODQ1YzVmOTliZDM1N2M2Y2IyZjgyOGQ4N2E3MiByZWxlYXNlMjctbWFpbnQKKzg4MzI5IDAzODY0M2QzOWZjMTU2ZGYzYjM2MmZhZWE1NTBiYjUyYzJmYzAwMWIgcHkzaworODgzMzAgNDUwNjQ5NTY1ODYzMWJlYjkyZjBjNjE2OGU3ZmM3YjRiYzkwYjFhYSBweTNrCis4ODMzMSA4Y2MxMDI3OWFjN2RkNmU0Njc1MzkzZWM4M2I4YWMxMDNjMDg0MjlhIHB5M2sKKzg4MzMyIGU1NjY4YWRjMWVkOWU2YWJhMDZkZjY5ODVhZjUzOWY4MjA1OGQ2NTIgcHkzaworODgzMzMgMDc3NDZiZTBiYmFkNDdlNjZjMTU4MGMyYTMxYzAxMjE4ODdmMmEwOCBweTNrCis4ODMzNCAwYmJhNTMzYzA5NTlmNjI1NDAwZDVlZTc3ODIyODVkY2UwZmQxOGQ4IHB5M2sKKzg4MzM1IGY5MDJmYzc3OTNlMTJiNDhiNjAxMzhjMjg2ZTVhY2MzZDlkZGE4MTMgcmVsZWFzZTMxLW1haW50Cis4ODMzNiBmMjJjOTlkYjhhNDY1NmZmNTYwYzljNmYyN2NkZGJlZmI3MjNhYWJlIHJlbGVhc2UyNy1tYWludAorODgzMzcgY2U4ZGI0ODVlMjZlNDM1NjhhZDM4ZTYzYzhlNGI2ODY5ZTllNWQxNCBweTNrCis4ODMzOCBkYzU2YzgyNzFmYTg1MWZjNzBkNDlhYzcxNjdlYzgyZDgxNzViZjIyIHJlbGVhc2UyNy1tYWludAorODgzMzkgNDM1NTIxMmZlMmM0MzAzMTFhODJiMDhiOTIzMzA1ZmUyZGExMWQwNyByZWxlYXNlMzEtbWFpbnQKKzg4MzQwIGNjZmI1YmE1MGE0NGU5YzFjMDc0ZWRiMTQyZjgxNzQyZGQyMDU2MmIgcHkzaworODgzNDEgNWE1MDQ4NWEzNzVmMTFjOGUxNjBlODliMjUwNTc0NTAzNzlmODNhNSBweTNrCis4ODM0MiBiYzY4NWFkYmFhMTVjZTE2MmQ0NjFjYzEyNjUzNzg4MmZkZWQzZGY1IHB5M2sKKzg4MzQzIDQ2MGYyZjFjNWVjODNmYmMwZGQ2ZDk4MTZhMTZhZWI0ODA4MjhhZTIgcHkzaworODgzNDQgYmIzZjZkM2NjMGIzYzM3ZGRmMWRiOWY4MzRiODk1ZTRkM2IwZTNhZiBweTNrCis4ODM0NSA1MjY3ZTUyNjNlNDc3ZDRmZjg2NjU2MDdhYTU4MjhjYmJiMmJmYWRjIHB5M2sKKzg4MzQ2IDM5YjVmYzZjNzkyZDRiNTk2OWRjODhlMDFlMTlhOTY3ODJiY2Y1YzEgcHkzaworODgzNDcgODhkNjljMmY5ZWZhMzIzMzVlMzRkZjQwOTRhZjc2NjdlNWM0YWZhZiBweTNrCis4ODM0OCA5YjMzZDY1Y2RhZTRhZWI2NWNjMjhiODJkMzBkMTljNjBmNDQ1ZTA1IHB5M2sKKzg4MzQ5IDhkMjU5MjU5MTBiMTBiNTU2ZGM4ZjE5Y2Q5ZjdiNDBmMzIzOGYyNWUgcHkzaworODgzNTAgMGRhNjhlMmU0ZDc4MGI2OGJkNWZhZjdiM2Q3MWIwMDRkODZhMjNlOCBweTNrCis4ODM1MSBhY2E5MWM1NWYzOGQ0NTBmZmZkZTc1ZTI0YWY1ZGRjYTU3ZmFhYmMzIHB5M2sKKzg4MzUyIGFiYWIyYzUzZjU4ZmQzMzc0MDZiNGJhMDFmMDQ2YWVmYzMzNmEyYjQgcHkzaworODgzNTMgNDA1YTQ0YzZkY2VkYjQ1N2MzZDM5ZDQwNDM5OWRmYzVjOTI1ODAwMiByZWxlYXNlMjctbWFpbnQKKzg4MzU0IGI1ZTM2YTU0OWMyNTM3OTFlYTQ5YzM5Y2JiYTQ4MmIzYTY3OTk0OWYgcmVsZWFzZTMxLW1haW50Cis4ODM1NSA4ZTIwOTg2YjNkNmU5YjhkZGNjNmE1ZjI0Y2ExNWYzMTNlOGJhOTA3IHB5M2sKKzg4MzU2IDUxNmI5ZGI2YWZlNGFmNDhjOTkxNjc0YzBiZDA0ZTkxNTdkODgxNzIgcHkzaworODgzNTcgMzk0Y2IwMjI0N2ZjMzZiOTE2N2MwNjIwYjQ5MjQ1MmQ1Mjk1Y2ZhMyBweTNrCis4ODM1OCBiN2IxZGNlM2U3N2YyOTY1M2VmZWQxM2U0ZTEwYTE3NjIwZWY0ZmNmIHB5M2sKKzg4MzU5IGQ2MWViZmNlMThlZDNhZTEyYjhkZGVkNzRkYWMyNTFmY2VhNjVjNTMgcHkzaworODgzNjAgMTUxOGI5MzVkZTEwZTcwNzMwNTkxOGJmYmQ2MGU2YTliNzA4NTk1ZiBweTNrCis4ODM2MSBiNTcwMmIyMGI0NzYwZTU5MWJkNDA3NjcwNmZjOTAzMmViZjM4MGNmIHB5M2sKKzg4MzYyIGI0YzdkMjAzYzNkMTQzMGNjYjc1NTFkNDJjOWM5ZDJmNGYzN2NkODggcHkzaworODgzNjMgM2I5ZDdiODQ1NjE4MzkyODBkODhlYzExMTIzZTZkNzE4M2YxY2FjOCBweTNrCis4ODM2NCAwOWYwN2M3ZGMzZGMyNWRlMTU4OWMzMDQ0YmNkNjU4Yjc4MDUwNzY3IHB5M2sKKzg4MzY1IDNlMDIxMzY2ZTUxZmFjNjJhYTU0ZWNiOWM4MWQ3ZjVhMjdkNzE3NzMgcHkzaworODgzNjYgZjFmYWVjNDkzNTBkY2RhNmU4OWNhZDIwYzhmMTkzZDFkZTBiYTc0OCBweTNrCis4ODM2NyBiY2U3NTg5MzlkNzk5M2JjMDNhODE3ZjVhZTkxNGFiY2RkODk2ZjFmIHB5M2sKKzg4MzY4IDFkOWM1YTJhYTY5NGU3ZjJlNTI1YWViNGUxZDQ1MjQxZTdjNmQ4YjggcHkzaworODgzNjkgMjYxMzY3ZTllNmMxYzhhMWNkNmIwMmM4MWQ0MzA0N2MzZDBmZjI1MCBweTNrCis4ODM3MCAzNDExY2M3ZjY0ZGY2NjljNGEwMmJiZDg2ZGUzZTY5MGUzY2RiZTEzIHB5M2sKKzg4MzcxIDlmZGZjMDVlZmJiNWJmY2Y3YzdhNTU0ZjE3OTY5NDgwOTVmYzUwOGMgcHkzaworODgzNzIgOTQ2ZWNlMjZhNDhmM2JmZTlhZDhkNWMxNDJiZmEyNTVmMzdiNGQ5YyByZWxlYXNlMzEtbWFpbnQKKzg4MzczIDY4ZDYxN2RkMzBjZDM5MTk4ZWVmZGIwMDA2MTFjOGZhMjMyY2VlY2YgcmVsZWFzZTI3LW1haW50Cis4ODM3NCA3YzcxYjBhNWEyOTAxNGI5NjAwZjYwM2M4OWRkODg0NWYxZTViMzQ3IHB5M2sKKzg4Mzc1IGU5ZmI2ZDUwNDU5YWY1YzVkYWU1OWI1MTBhYjE1OWUxYzkwOGQ5OWEgcHkzaworODgzNzYgYmI3NTdmYWNiZmE2MTEyMDM2ZDY1YzU0ZmZmYzI5MTE2ZjVlY2ZlNSByZWxlYXNlMjctbWFpbnQKKzg4Mzc3IDU3NDJjNzkwODZhODc5ODA0NzZhM2QwNjU0ZDhlMWZkN2FlY2QxZTIgcHkzaworODgzNzggZjUyZTM1Yzc1ZTMzYzZmOGRkMTdkN2I4N2Y4ZDA3ZTFiNTdmZjdkMCByZWxlYXNlMzEtbWFpbnQKKzg4MzgxIGQ2OTY2ZDliNzYwOWZjYzczMWIzZjk4Zjk2ODQwYjQzMjkzNzFkMzEgcHkzaworODgzODIgZGNmMTc5MWNiMTc2N2E1MTY4NzQ4OTNiZWUwYTRiYjMwZWM4YTcxYyBweTNrCis4ODM4MyAwNzFkMjVhZmFkYWE4OTZlOTcxY2VjYWYzM2E2YzY3Mzc0ZTA5ZmEyIHB5M2sKKzg4Mzg0IDY0M2FjOTQ2ZWZmNDlmNDc1NWExYTEyYTI2NjY0NzlkYWMzODY4Y2EgcHkzaworODgzODUgMTQ2ZTgxZTRlNTFlNGE5NTQ3NWY3MTI5MGM0MTAyN2Y4Y2VhZjA3MiBweTNrCis4ODM4NiBmNWI4ODljMzZmOTkwYTZkZjhiMDE5NWUxYWFhOTFhMGM2MmYyNmE5IHB5M2sKKzg4Mzg3IDVkZmUwYzQyZmZlOGQ0MjI5ZGRjNWYxMmU1ZWE4YzViM2RmZjIwMDQgcHkzaworODgzODggNTZlNjE3YzJiNWU4M2VjMTcwYWE3MTE1YTNjNDg5OGE4ZjkxYzBlYyBweTNrCis4ODM4OSA3MmI0MmRjMDQxZjNmZjU4NzZiMmM1NTk2NGNlYmM3NmVjYjc2NGRmIHB5M2sKKzg4MzkwIDAzN2YxNmIwMmNhNTUyYzZmZDZjODkyZmZiNmQ2MDg1MWI1ZDBmNDAgcmVsZWFzZTMxLW1haW50Cis4ODM5MSAyYjQ4MjJiN2M0MjRlYzU5ODM3YmU2MTA2NWJkODFlYmYzOGMzYjc3IHJlbGVhc2UyNy1tYWludAorODgzOTIgZDFiNWQ4MDRkMmE1NDUyNzEzNzcxODI4MDI5ZDhiNTc2MjYwNmM2OSByZWxlYXNlMzEtbWFpbnQKKzg4MzkzIDgwODRjNjY4YjYzNzczNTU1ODRmODIxMGM4MmIzOWM0Y2NlZDJmODkgcmVsZWFzZTMxLW1haW50Cis4ODM5NCBiNDA5ZDdlY2I2NjU3NDI2MjQ2ZDk0MWE4MzhjMWM5ZmNjNzFhZjRiIHB5M2sKKzg4Mzk1IDEyYWNhZjdhNDk1NWRkYTUwYjMzOGEwODVlMWUzM2Q3YjJlZDBmOGQgcHkzaworODgzOTYgNGQyYTU4OTE4ZGYxNTg3NjJmYzU1ZTBlMTg3MjhiNDQ0OTE5MzU1ZiBweTNrCis4ODM5NyA4OWQ1MmVmZmMzMGFhN2QzOWMyN2FjMGQ4NTliZjRiZTZjZThiMTNkIHJlbGVhc2UyNy1tYWludAorODgzOTggZDliNzEzZTk1ZjM5ZTkwZDNhNWExNzEzMGI1YWU4YTY0NTFkNjY2NSByZWxlYXNlMjctbWFpbnQKKzg4Mzk5IDAyYjg4MTMyNmY2ZWQ4MmMwZTA5NjliNzViNWE2MmNmODZiNmUwOWUgcHkzaworODg0MDAgMjBkODI4NzNhYTk3N2E5ZjU2ZjE4YWIwMGM1MzYzNDBkY2E2ZTFkOSBweTNrCis4ODQwMSAwNmE2NTdkMWEzYWMxOTlmNWQ0MGEyYTQ0OTc1YmMzNmEzYjU3MDgyIHB5M2sKKzg4NDAyIGMzMTBkMjk0ZmRkZTBmYjA3Njk2NzM2Y2ZlY2E1ZTM5Njc5NDc0ZTkgcHkzaworODg0MDMgMmNiZTlkMDU4ZjdlOTJiMWRiNGM4NWQwYTI3MzU5YTNkYjFiYThhMCBweTNrCis4ODQwNCAxMTE1NzdiZjViYTg5NjZmN2JjYTk4ZWQ3OWNmZTEzNTkwYWVhMzQ2IHJlbGVhc2UzMS1tYWludAorODg0MDUgMTFjNjdhNjA4NGM4ZWQ0ZjJmMzExMWFhZDE5ZTJhZTA1MDM2NmRkOCByZWxlYXNlMjctbWFpbnQKKzg4NDA2IGJiYWY5MzA0YTBkMDRhMGNjNDI1OGYyNTczNTFlMDgxZDIwODQ4MzAgcmVsZWFzZTI3LW1haW50Cis4ODQwNyBmM2NlNGFiYmFhZjg1ZThmYjNkZWIwNThlMjBhYjVjNjM0NGZjZjdmIHB5M2sKKzg4NDA4IDg4M2EwMjNlYjk0MzNkNjJmMDI3M2M2YTcwNmZhOWNlNTFmMzFhMDkgcmVsZWFzZTI3LW1haW50Cis4ODQwOSA3ZDMyMDgyMGY0NjJkZDgzYjUzZjc0MjJhZTRkNmY0Y2ZkNTQ5OTEwIHJlbGVhc2UzMS1tYWludAorODg0MTAgYmE5NWMwYmRkOGE4ZDc4MzQ5ZTEwOTZkNDg0YTI2MjBiZjg0ZGY3NiByZWxlYXNlMjctbWFpbnQKKzg4NDExIDEwNjYwM2NhNTNjMzdjMGQ1YTgyMmYwODFiNDBlMWM5YzUyYjJiMTYgcHkzaworODg0MTIgNmE1NDMxMTZiZjE3NDc1YzIyOGU3NjA0ZjA1NzY4ZTc4MjE2YTIxOSBweTNrCis4ODQxMyAxOGMxZjUyODk2NTAxYzdlZTEzYjAzODQ1NGEzOWFjYjQ1YTg3OTc5IHB5M2sKKzg4NDE0IDkzZGY5NWU0MDNkMWE0ODYxNTFmM2U0YTkxZDVkMzYwNjc0NTJhZWEgcHkzaworODg0MTggYjQ1ZjRmMzlmMjA0ZDg2NWM5MmRmYzA3YjBkMzIzNGFhOTA1N2VmMCByZWxlYXNlMzEtbWFpbnQKKzg4NDE5IDA4ODU1MTRkODk3YzBjNGI3Y2JlMmFjZTNlNDI0ZjhmZDljNGFkYjcgcmVsZWFzZTI3LW1haW50Cis4ODQyMCA1YmFhYzE4NmYwYzI4YmVjNWEzMzgwZWMyMDZlNDI2ZTIzMGYzYTM0IHB5M2sKKzg4NDIxIDAzZWM2MWUxMzQ2MGIyNzFhYTVmNzlkYzY0ZDRhOTI5OTc4MmIwYTggcHkzaworODg0MjIgZDFkOWQ3ZTAwYjRhNWExOTg4ODIxMTlmZDEzOGQyNmNkOTdjNWRmNiByZWxlYXNlMjctbWFpbnQKKzg4NDIzIGQ4MDMxYmEzOGUxNmQzZWRjOGFjM2JiNWFiZGFkYzZhNzQ0MjU1MzYgcHkzaworODg0MjQgNDNhZjllMzZiZGQ1OGEyYmE3OGQ2YjBkZTJhZDQ3MGJjZmI0ZjNhYiBweTNrCis4ODQyNSAyZWUyYzc2MDgyYzhjNmFlZjVlNjI1NTYyMGRhNzY3MTMxNjVhYjBlIHJlbGVhc2UzMS1tYWludAorODg0MjYgOWZmM2I2Njk1NDhmODMyYTkyOWQ4YWJhYjQ1MTZiMTJmMDRmNTdiZiBweTNrCis4ODQyNyA3YTg5ZjRhNzNkMWFmZDY2NDQ5ZGZmN2QwYjU3MzFjNzZkZGU0MjIwIHJlbGVhc2UyNy1tYWludAorODg0MjggNWU3ZGQ2NTdmOWViNzUxZjNiMTRlNmViNTkwMDYzOGY1MjAyZWFhMyByZWxlYXNlMzEtbWFpbnQKKzg4NDI5IDkwN2YzODc5MjM1YThkNGFlYTYxMDI4YTI4YThlN2MzNGZjMDFmZjQgcmVsZWFzZTI3LW1haW50Cis4ODQzMCBhZDJmOGM2ODZlMDg1NWE3MjJkMzAwNzM1OWQyMzFkYTA1MWUyNjI3IHB5M2sKKzg4NDMxIDM5Y2YyMGQ1YWQ0YzVlYTU1MzdhOWYxY2MzMDVjNTNkZDg5ZWM5MzIgcHkzaworODg0MzIgNmQzOWRhZWRlZGQ1NTM2ZTc5ZmM1NmQ3MzI1ZjE1YzkzNWQ1M2VlYyBweTNrCis4ODQzNCA2YzFjYTlkZWI0MmE5NTI4NmJiMjdlYjU1YjZjYTRjNDJlNWNhNDhlIHB5M2sKKzg4NDM1IDE1YThlMjJjNDEwMWRlZGE5NWFlYWFhZDAxODE2Mzc3M2M5MWU2NjIgcHkzaworODg0MzYgMjJkOTRmNTViMGM3MDM0MmFiODdkZjk2YmY3OWFjYTc3ZjI3ZmQ0ZiByZWxlYXNlMjctbWFpbnQKKzg4NDM4IDkyZGViZGY5ODFjNWYzNDQzZTg3N2Y1OGI0ODYxMTU3YjdjZDI4NjQgcHkzaworODg0MzkgNmNhYjlhOTk0MTA1MDM1NDBmZTIxZGRiOTIwN2RmMzBhZWQ3MjAyYSBweTNrCis4ODQ0MCA1YWYwMzU1ODlhYTc3NzJlZmZkMDQyN2M2NzRjMjllOWUyNjc2YTY3IHB5M2sKKzg4NDQxIDVlMzc2NjkxNzJjOGQyNzgzNGRhZjg2OGU2ZGYyOGNjZDgxYTMwODEgcHkzaworODg0NDIgMTAxYmM2Njk1MWM3Y2E0ZTYzOWJkZTg2OWFmNDE1YzM0N2NmZmI5MyBweTNrCis4ODQ0MyA3ODhlYWZhZWY3ZGM0ODIwZGI3OGNiNDlhNTdhMGFkZjYzZmM1MGNlIHB5M2sKKzg4NDQ0IDU5MDBkOTQ4ZmU1N2E0Mzk5ZGMyZmZlYzNiYTEyNjRiMjE3ZDRlMTYgcHkzaworODg0NDUgNDk2YWM0ZDFhOWFiYjk2NWM5ZTExOWUyNDRlNjNjN2RiMTZkMTg0OCBweTNrCis4ODQ0NiBhMjIyYTAxNWUyOGQ4YWU5YWYzODk5MjU4ZGM2YzE1YzNkNDBhZGQwIHJlbGVhc2UzMi1tYWludAorODg0NDcgNjYzODFjZWM2YzczMjVjMzA2MDY3MzRkZDM3NjY1ZGQxMDRkNjVlYiBweTNrCis4ODQ0OCAyMDM5NDUwNjBiYWZmMjA2YTZhNzdjODZiYWFkODg3MDFhZDQ0Zjc4IHB5M2sKKzg4NDQ5IDBmNTJjZmM5MWZhZWMwODk5Nzc1NDg3YzJmZGIwNDQ1ZDMwY2VjZjEgcHkzaworODg0NTAgNDQxOTA3YzA4MTRlNWM3MWU4Y2U0NDkzNjQ5OGJmYWI3MzBlZDdiZiByZWxlYXNlMzItbWFpbnQKKzg4NDUxIGE4M2NjOTYxYzQzYTJkMzI2OWJkYTRlNzNjZWI5ODk5MWFjMzQyMTkgcHkzaworODg0NTIgMzVjMGUzN2ZlOTUwMTIzZjBiY2VjNWM1OTRmNTU0NWI5ZTZmNmY4OSByZWxlYXNlMjctbWFpbnQKKzg4NDUzIGFlYzk1MjdmNjIyMzI3Njk5NjcyMTk1OGQ4YzFjMzU2MmQ5YTVhNjkgcmVsZWFzZTI3LW1haW50Cis4ODQ1NSBiZjg2NDM5NWQxYzg4YjFjMzJjMmFmOTVhODhhODQ2ODE2NThiNDgzIHJlbGVhc2UzMi1tYWludAorODg0NTYgN2IwMTFjZjY0ZjkwNmMyMmZhOGNhZTRjY2ViNzU4NGE4ZDg0YzI1NSBweTNrCis4ODQ1NyAzNzFmMDRlMWJkM2Y4YjNlOTJiY2MyZGU2OGI2OWQ0N2I0N2ViMGQ1IHJlbGVhc2UzMi1tYWludAorODg0NTggNzkwMmY1YmUyYzkwNmJmMGI3NmFhNDM3ZDU3MDZkYWM3YmMxNGFkNSByZWxlYXNlMzItbWFpbnQKKzg4NDU5IDk4MzYzMDc5NzMzOGUyZGY3YjBhZWJlMGYzM2I0MWNiNmZmYmY1YzQgcHkzaworODg0NjAgNTFhMDgwYmFjYjI1MDhkNTQ2MGJhYzAzZDAxYjBjZDdlNDI0MGJkMSBweTNrCis4ODQ2MSBkYTVkZDNlMjNjODcwMjUyMDg5YzBjNGRmM2RjOTRkMjJmZjhkYWZiIHJlbGVhc2UzMi1tYWludAorODg0NjIgNmMxZTA1YTRiNTQxZjFlMjAxYWYzNDllZTQxODE1NGNiNTkzY2JkYiByZWxlYXNlMzItbWFpbnQKKzg4NDYzIDI3ZWEzYWUzNjJjZDUxZmY2YTJiYjAyZGIxNzQyMjlmODNkM2FhMmQgcHkzaworODg0NjQgOTU0Y2Q1ZGI1MWRjMzVlZjQzYjhmNDM5NDVjZGQyZmE4ODFmNWVmMCBweTNrCis4ODQ2NSA5ZjgxNDZmNDVlYWU4N2M5Mjg5NTM4MmEwY2NkMDA2N2ZmYTVmMDg1IHB5M2sKKzg4NDY2IGExZjM1YzIxYTcxMmMxMTg1ZjVjMGEzMjNiNTBiYzM2ODM5ZDUxZTkgcHkzaworODg0NjcgNjE0ZTMyOTAwZWY3ZGI4NmM2YTBjOGRlMWMwODczOThkNTI2NWY2ZSBweTNrCis4ODQ2OCBlYjhmYzFjZTFjODFlYjgzZmE3NmUyNjE5Yjk3YWFiYTliZTJhNTAyIHJlbGVhc2UzMi1tYWludAorODg0NjkgNDgyNTg3MTgwMjU1YTUxYjA5MjE2NDVlZTY4NDFlMzZiNDgxMDRhNiByZWxlYXNlMzItbWFpbnQKKzg4NDcwIGIxN2JiYTFjNzMwM2NlN2U1OWRmYmMyNzhmNjRlNTU3OTY3MzJmNDAgcHkzaworODg0NzEgNDUwZjhkNTFkZGE4NjliM2YzNTgyOWVjMjU1NmExY2FiZjc0OTYxNSByZWxlYXNlMzItbWFpbnQKKzg4NDcyIGZmODZhMTc5YmMxM2NhNzEzNTM3MGI1NzNhMmZlNWUzNjM4NTk4ZDcgcmVsZWFzZTMyLW1haW50Cis4ODQ3MyAxODUzOTg5Zjc0ZTc2YWI0NzVjYjI2NDU0NjdiY2I5YTg4MzA4YTIwIHJlbGVhc2UzMi1tYWludAorODg0NzQgMTU4ZDZkZWYyZWY4N2YzMTI5YWUwZDQxYzZmZDIwNmExYmRhMzU3MiBweTNrCis4ODQ3NSBhMDM2YzMwYWI1YWU0YWM5ZDcwNWJmZTdmNjRhZTNkNjE2NTBjOTkzIHB5M2sKKzg4NDc2IGFiMTY2NGIyOThmY2RiMWY4ZTk2YzliM2Y0MGFjOTdlZjkxNjBkZTEgcHkzaworODg0NzcgMDBhNGZmYTcyZGJlM2QxZWExZDJkNDZmMzUyNjk1MTA0NzkwNzJlNyByZWxlYXNlMzItbWFpbnQKKzg4NDc4IGJiODU3ZDljMzA3MTIwYzVkZmEyMjI0NDYxY2I0NTljNzc3NWZkMjYgcHkzaworODg0NzkgMjg0MDI2ZTAwMzQyZDRhZWUzMjkwYzgwZGVkMmIxYTYxN2U0YmI0ZSByZWxlYXNlMjctbWFpbnQKKzg4NDgwIDJiOGU2YTIxYWVhYTE5NTRiMzlkYmZhZTMyMWY5YTQzZjI4MTllYWIgcHkzaworODg0ODEgZWYyOGFhZDNiYmFlMGY1N2YyNjRhMGFiZGU1ZDU0YThiNjE3ZGE3MSBweTNrCis4ODQ4MiBiNGMxNWQ4NzA5NGQ5ZWE1MTdkZmRmY2RkNDVkYzU4ZThhNzEwYTg5IGlzc3VlMTAyNzYtc25vd2xlb3BhcmQKKzg4NDgzIDIzZGUzYWE3MjIzMDZkMmJmZmViMGZlY2ExNDU3NWIxMWNhMTkzNzcgaXNzdWUxMDI3Ni1zbm93bGVvcGFyZAorODg0ODQgZjVlOWMxN2I4NWFkMDZiMTdiZDVkMzFjZjg4MTViMGZkNTM3MzEwZSBweTNrCis4ODQ4NSBjNjA2MGVmNWM0MDUxNDZjZWQyMmJlYTQ4ZGRiMjQ4OWU4OTVmZjRmIHJlbGVhc2UzMi1tYWludAorODg0ODYgNDFjNTI4MDMzMGZkNjI0MmQ3MWUzZjBhOTIyMWU3NzI4NjExNTIyYiBweTNrCis4ODQ4NyA0Mjk1ZTA5NWFkNGZiOGU5MmJjZjYxZTYwYTUwNmU5ZGY0NGE0MWRiIHJlbGVhc2UzMi1tYWludAorODg0ODggYjU1ODY5NTk4NjgzZmE5YjViN2UwNDkxMzJhOTAzNGQwNzMyNmU3YyByZWxlYXNlMjctbWFpbnQKKzg4NDkwIDc4NjYwNzE0ZjE3YTM1NTdmOGI1ZTQxN2ZhYmJhMjJjNzQzZWVkZTAgcHkzaworODg0OTEgNjdlYzI2Y2M0YjRmN2UzMWQzYzNjZDQ4NGJmYzcyNzc3NWNkNzdiOSBweTNrCis4ODQ5MiBjZTIwYWM0MWUzMWZkOTQwNDA0Y2QwOGM2ZjgzMmQ5ODYyMDZkZDQwIHB5M2sKKzg4NDkzIGZlZDc2OGI3MTEzNjE4M2Y2ZTI0MjU2NmY4MGFmYWVhNDNkYjdlOGQgcHkzaworODg0OTQgN2Y4NWZiYzE2Y2FlZGQwODM4MjgyZjgxY2RiOThkNjU3NDEwY2UzYiBweTNrCis4ODQ5NSA0NzNkMjMzYTA0NzgxZGZmMzc5MjczOWY5NzhkMzQ0MDA2OGVhNjdhIHJlbGVhc2UzMi1tYWludAorODg0OTYgYWUxODZiM2IyYzU1NmUxY2IzMmIzYzFlOTg2N2EwZDVmZTM4MzIzNSBweTNrCis4ODQ5NyAxOWRmNDc4MzliY2FiNTVmN2Y2MzE5MzZhMTE2OGI0ZDNkOTFjYmNlIHJlbGVhc2UzMi1tYWludAorODg0OTggZWEyNjBkMzkzY2RlZTNjM2UzNjE0Zjk1N2RlYjcyZGJkNzdmYjA3MCBweTNrCis4ODQ5OSBjOTBlMGU1YjBkMjU0NzEwNTFlMmFlNmMxMzJmNDU0Zjc0M2JkYWZlIHJlbGVhc2UzMi1tYWludAorODg1MDAgMzcyYjJlZjBmZjM3YjZhMWFhMTJlNDMwY2IyZGVjOTk5YjY0NzkzYyBweTNrCis4ODUwMSAyNDMzOWJmMGM3ZTY2YTdlYTFlY2EyYTUyYzI0ZjI4ZmNhZDRmZWY1IHB5M2sKKzg4NTAyIDMwNDExYWYzNGVlYmZhZmE3NTVmZTMzOGZmMzhlNTQyZDM3MDJhNWUgcmVsZWFzZTMyLW1haW50Cis4ODUwMyA1Y2U0OTkxODBkMjQ1ZjgwYjY2YTA1N2U4ZGVjYjJhMzM1YWQxZGM1IHB5M2sKKzg4NTA0IDk4MDY5Nzc2OTg2NjIwNWQwOWQzMDAyMDFmZjg1MjU3NzA0ODdjM2YgcmVsZWFzZTMyLW1haW50Cis4ODUwNSAyNDdhMjgxMDkzMmFhNTVjMTI1YzU2MTA2NWMyOTI3NDM0YzQwOTU1IHB5M2sKKzg4NTA2IGE3NTE1YTk0ZmRiNWI1MDU4OWIyM2YxMjFmNjBlZDRhOGRlZjZjMWMgcHkzaworODg1MDcgZTJmOTZiZDI5MjUyZTYyMWJiOWUxNTYzZmJiYjBlY2E4MjMxZGU1MyBweTNrCis4ODUwOCA2NDgyZGQxYzExZWQxYzFhZmI5OWQyMzRlMjgzMGYzNGM5ZjM0Nzg2IHB5M2sKKzg4NTA5IDE2ZWU0MmRlMGZhYjkyZjE5MGM4Y2NhMjc0Yzk0ZWQ0NmI0OTFkMWQgcmVsZWFzZTMyLW1haW50Cis4ODUxMCAyYjU0YmU2NTUxNjk4YTcxODU2YTUyZTVjMWFhZDEyMmM4ODQzMzM1IHJlbGVhc2UzMi1tYWludAorODg1MTEgMzI3YTVhNzhhMjU3Y2ZlMjdhY2Q5MDFjNjVlMDg0YmE3MTk2MThkOSBpc3N1ZTEwMjc2LXNub3dsZW9wYXJkCis4ODUxMiAyZjhlYzc3ZDMyY2Q0NzE4YWFjNzQxNTU1M2JmNzQ1ZDU4MzBhYmEzIHB5M2sKKzg4NTEzIDA1ODZjNjk5ZDQ2N2E2NGMzZTIzZGQ4NzZkMmQzNjJlNjMzZDg5MGQgcHkzaworODg1MTQgNjI5OTQ2NjI2NzZhN2JlNzkwZTBkY2NjNjMyODE4Yjc4OGY2YmYyMSBweTNrCis4ODUxNSAwZTlmM2JiNjNkMDBiN2FhNTBkZGJiMWU1NzY4YTA4ODFlMjJkZDZlIHJlbGVhc2UzMi1tYWludAorODg1MTYgMmY4OWNiYmVjMGI0ODRkMTFiOTY0MTA1ZDBkYzMyNDk2ZmFmMjhhOCBweTNrCis4ODUxNyAwODc0Njk4YjEyMDFkZjljMmVjOTVkMDlkZTgxMDg4ZDVkYzkxODkyIHB5M2sKKzg4NTE4IGVjM2MwNjc2MTg1NmRkNjMwYTk1ZTM5OTMxNjlhZmI3ODhlZTdlYzMgcHkzaworODg1MTkgYWMwZDhlMjFhNDdkZWI1NWVhYzkyNzQ5NGEyMzhjMTg2MmQ3MDA0MyByZWxlYXNlMzItbWFpbnQKKzg4NTIwIDQ0Y2M5ZWY0MzEyN2Y4YjZkOWI1ZmE0MWZjZjdhNjEzOTdiYTdkYmEgcHkzaworODg1MjEgZjJlZGFmNjJkODIzZmI2NmZlNzlmNGRiZjFiZmY3MzgzMjIxZTA4MCBweTNrCis4ODUyMiA3ZjhkYTEwYmZjZWZjZjM3ZWRjYTc5YThiYWRlNzhmYmQyMWIyY2QwIHB5M2sKKzg4NTIzIDE2NWQwMTVhMmJhZjA3ZjMzN2QwZjU2MmQzMmRjNWYyYmJmMGM2MjggcmVsZWFzZTMyLW1haW50Cis4ODUyNCAwM2Y3YWZiYzE2MDg0OGQ0ZTE3YjY2MGQzZGVmNTdkNzI5NGZiZDE5IHB5M2sKKzg4NTI1IGM4YzU3ZTc2NjQyODUzMWRmNjhiYWExY2Y1N2ZiNzY2YmY3MDkyNmQgcHkzaworODg1MjYgNzQ4NjFhNDJhNmU2YTI4OWMzYWI1Yjc3MTliZjBjZjRmMGI3NTAyMyBweTNrCis4ODUyNyBiYTFhZWIzNjIxODIxZjIyMjEyOTE0ZjU1ZDg3MThkNjU0YzUxZjZhIHJlbGVhc2UzMi1tYWludAorODg1MjggMDM1ZWZkYWY4MjI5Yzc5YzQyMGQxMDQ2MWIwNjhkZTRjNzY0Y2ZlMCBweTNrCis4ODUyOSAyMzI1ZmUzNmFhMzQ1NjYzZTk0ZWZkZjI0NjJkMDYxN2ZmZTRmNzY5IHB5M2sKKzg4NTMwIDVhOWQ5MGQ0Zjg5ZWI4MGYxMzQzYmNmMzg1Yjc3ZTg1MTVmZWE4NmQgcmVsZWFzZTMyLW1haW50Cis4ODUzMSBhYmExNmE1NjgzZDM2ODVlZWUxZDYxYWE3NDU2M2NiNmMxODBlY2FiIHB5M2sKKzg4NTMyIDMyMzg2ZmE2N2ExMmE3NjkxNzMzN2EzYzNiODM4NDI4NjdiMTk5ZDMgcmVsZWFzZTMyLW1haW50Cis4ODUzMyBjZjkxNzZmMmE2MjA1YWRjNGYzNDA0YjZlOTI2NmQyYTJjN2NhYjg1IHJlbGVhc2UzMi1tYWludAorODg1MzQgYTFjZmU4MTVkOTdhYWQwYWY0OTJlZWY1ZThlMjI5NjU5YzUxMzIyNyBweTNrCis4ODUzNSA1YTI5OGFmYWNiOTU1NDc1N2I3ZDEyMWFlOTBjMTY3Y2ZmZTI1NTcyIHB5M2sKKzg4NTM3IGRlNWMzYTM5YWRlNzI0ZGI0MjY1YjI4ZjBmNjAwZmMzNzg1YmE2Y2MgcmVsZWFzZTI3LW1haW50Cis4ODUzOCBlOGRmZTYwMmVmYTFjZGVhOThmYzVjZTFhODhhNTUwZDZlNGRkN2E3IHJlbGVhc2UzMi1tYWludAorODg1MzkgOTg2MWRjMTE4MzIyMmZlMGJiNTliZmFlZWIxMzEzMDkxMzBiMmNkZiBweTNrCis4ODU0MCA4YmE3NjUzMjgwMzA2YTQzZjA5Mjg2ZTY5MzliZWJiZmEyY2ZjNGIwIHB5M2sKKzg4NTQxIDczMjZmMDY0ZDgzYWZlYTUyMGNhNjYzYzhmMzNmYmFlZGM5YTk4NTQgcHkzaworODg1NDIgNjA5ZjJiODIzMzUwZTQyYzI2NjRlYmIwMThjYzg1MmE2ODc2OTQyMCBweTNrCis4ODU0MyBiZjg5MDZjZTEwNGI1MDNkYzhiMjg1YjZiMzQxZDAzY2QzNDNmMWUxIHJlbGVhc2UzMi1tYWludAorODg1NDUgZmQ2ZWM1ZTA4NGEyYzdlNmUxZDM1ZTYxNGZkNzY0NzQ5MDA4NzZkYiByZWxlYXNlMzItbWFpbnQKKzg4NTQ2IGRiN2VmMzRlZWRhZjViZWI5Y2Q5MjVhNjNhMGM0YzE3MzI0Nzg0YTEgcHkzaworODg1NDcgM2U0ZDk1OWY4ZTEyZWRmZWUyZWE1ZjVkMDcxN2Q4ZWU1MzMyOGQ5MyBweTNrCis4ODU0OCBmZWFiMjMwYmQwZGRlNDBhNTk5ZjA0M2U3Y2M1MmFkZjlhNmM5Zjc0IHJlbGVhc2UzMi1tYWludAorODg1NDkgY2MzYzNhNDM4Mzk4ZGRhZjA5YTcyZmU0YjQxYzY3OTc2MTk1ODZjYSByZWxlYXNlMzItbWFpbnQKKzg4NTUwIDU3MGM1OTM5YmMwM2U3MjI4YjkyMDQwNTdmNmY5OGVhN2Y2M2M1NDcgcmVsZWFzZTI3LW1haW50Cis4ODU1MSBjYmNiMjZhOWQyYmRkZDkyMDRjYjk0MGYxZjYyZmIzYzg0NmNhMzE1IHB5M2sKKzg4NTUyIDQ1NzM5Y2E2M2ViMzQ1YjAwYTFhYjEwMTA5ODkyN2UzMzRlMmY2NDUgcmVsZWFzZTMyLW1haW50Cis4ODU1MyAyMzZjNGRjNmYwZTdkN2JiODI2NDdjNmQ4MzNlY2ViZDBlYmE0YThlIHB5M2sKKzg4NTU0IGM4YzBlNDI5NDRhMTY5N2E2OTljM2FkMmE5ODMwOGFkMDExMGQ2NmQgcHkzaworODg1NTUgMzY0ZTRjMTA2Mjk3ZWFmYWU2ZjI0YWJiOWM0MTcyNWViYzYzZDYxYiByZWxlYXNlMzItbWFpbnQKKzg4NTU2IGIyNDVkNjliNGYwYWQ0ZTdhZjg2OTBhM2Y1ZDk3NWYyZjczZTZjZTEgcmVsZWFzZTMxLW1haW50Cis4ODU1NyBjNzk2NjVmYjI2N2FhMzc0NzBjZDIzNjVkMTcyZDljN2RlMDJkNjIyIHJlbGVhc2UzMS1tYWludAorODg1NTggNjE0YThjN2I5NTI1YWQwNjI4YTJkNjRiYTFlMDBkNzkwOTUyNGQxNiBweTNrCis4ODU1OSA5MjYyOWNjYWFlNzY0NmU1NGIyYzUwMzI3ZGFkY2RjZTVmNDZkOWI4IHJlbGVhc2UzMS1tYWludAorODg1NjAgNTg1ZGIwNjgwNjllZDYxNmVlZDQ0ZjI1MzM3NTVlNDkxYzIxMmM1YSByZWxlYXNlMzEtbWFpbnQKKzg4NTYxIGVmZjJlOGYxNWJlZDA4ZjI2NWEwYWQzMGVlM2FmNTJiOGE4NTU2MDEgcmVsZWFzZTMxLW1haW50Cis4ODU2MiA1YjM1YmJiZTMyZTcwYWI2NzBkYWI0MTkzN2I0OTQzNjNiODUyMmZmIHJlbGVhc2UzMS1tYWludAorODg1NjMgZTNjNjg0MTVhMzJkMTAwYzZkZTMyY2ZiOTI3MzQ5N2U0NDZiZmViMCByZWxlYXNlMzEtbWFpbnQKKzg4NTY0IGQzNTY2NDk1MDRmOWY0NzZhNzFlNGIxYjU5MjJhZTMyNWJlODI0ZWEgcmVsZWFzZTI3LW1haW50Cis4ODU2NSA4ZWVlZTlkNmQzMmI5MTMxZmMyMWRkNzlkYjUxOGU2MTZkZmVkYWMzIHJlbGVhc2UyNy1tYWludAorODg1NjYgYzdjNzZjZmJkYjRlMDE5ZTc5ZjY2MmUzNmIxNjE3YzU1NTExOTM1MyByZWxlYXNlMjctbWFpbnQKKzg4NTY3IDNlNWYyZTJhODRhYmU0ZThkMTM0ZGM3YzY1NGI3MmRhZDllZDY2NmQgcHkzaworODg1NjggMjI2ZjAwMWE3MDFmZjM0YWZiNWYwZTg4ZWM1NTg1OGE4NTVjOWE4MCByZWxlYXNlMjctbWFpbnQKKzg4NTY5IDM0YWUzMTYzMThlZjQ1NGY5YzIzOTNkMmUzYjdkNjAwYWY3ZjAzOTMgcmVsZWFzZTI3LW1haW50Cis4ODU3MCA3MjBhMmY0NGNiZjJjY2EwZjc0YzNkM2U1OWI1NjgzY2U5ZjUwMmY0IHJlbGVhc2UyNy1tYWludAorODg1NzEgNzhkYjNkMGM2ZGI3MmExYjZkMTlmMDk4MTZiNDY2OWIyOGU4ZDE2ZCByZWxlYXNlMjctbWFpbnQKKzg4NTcyIGIzNTZiODcxYmY2N2QyYjUwZmUzMGJlODdkNTA2Mjg0M2FkZTZhYjUgcmVsZWFzZTI3LW1haW50Cis4ODU3MyAwMWM5NmIzNzU4NmRkNjdjNDlkZmU3ZDZjODFhOWIxMTQyMzNmZTM1IHJlbGVhc2UzMS1tYWludAorODg1NzQgMDM1MjY3ODEyODJhZTI1OGJiNmQ0ZDE5NWRkNzhmNTM3YmVjZWI0MyBweTNrCis4ODU3NSA3NDBhYjkyN2JmODk4YmRjY2M2ZjE0ZTk1MGUzYTE0ZGQ3OGI5M2M0IHB5M2sKKzg4NTc2IGIxN2EwNjQ5MjliMDRjOGY3NmEzZTY5MmMwMmEwYjlhODViMGYxYTMgcHkzaworODg1NzcgOWZmN2JjMzYxMDYwNDMzOGRlZmFkMWFhMmUzYTNiZjRhN2YwNzhlZiBweTNrCis4ODU3OCBlYjVlZDNkYTY4NjIzNGEwMTU4YjRlMWIyNDVmZDdlYmVjOWViNDk4IHB5M2sKKzg4NTc5IDE3NjJkNzllYWI2NWY1ZmMzYjYyOTdiNTU5MzQ3NzQyOTNkZTBiNzEgcHkzaworODg1ODAgN2ZkODBjNjFkZGFhM2Y4MGViMjRhZTRmMjYxMzJmYmEwYWY3OGFiYiBweTNrCis4ODU4MSBkM2Y5M2ExMmQ2YTkxNWVlNDIzMDEzMDAwOTZlNzFiYTc5NjRkZjBiIHB5M2sKKzg4NTgyIDYzNmIyYjU1MjA3M2QxZjBiODJiZWJhMGEwZWQ0NTdlYjQ3MjQ2ZTggcmVsZWFzZTMyLW1haW50Cis4ODU4MyBmZDQwMTEwZDVkODczN2Y4YWQ3YTIyNDkyMmM5MjA5ZDM0ZjY3YTdiIHJlbGVhc2UyNy1tYWludAorODg1ODQgYmQyNTJjMTJkYTFkODgzYzQxZDNiYjYwYTI4ZjFhMWEzZDM4NjNhYSBweTNrCis4ODU4NSBmNGIxYTY1Nzk1NDE3YjRiYmU4ZWQ4OTQ3YjllY2IxODJkMmFkYTNkIHB5M2sKKzg4NTg2IGJlNmMzOGQxODE3YjMwMjBiNzYwNDAwYWEyZjVhZWY3MTdhOWM5MjMgcHkzaworODg1ODcgMzZjMWI2OGIwNTg2NWZiOWZhMTg5YjViOWUwZDFmODgwODhhMzJiZCBweTNrCis4ODU4OCAxOWQwN2ZhNDIwMDRiMTI0MWVmNjkzMWE4YjIxZmY4MDNiY2ZmZjA5IHB5M2sKKzg4NTg5IDg0MmZlZTZhZTBlNTAzMDg5MGVkZjVkNzA5M2JlNWI4OWE1Mzg2ZGQgcHkzaworODg2MDIgN2FiNTY5YjE4Yzk4Zjg4NGFiYTVlNWNiNTI3NTFmZjYzZmE5YWE3NCBweTNrCis4ODYwMyA4YzViODExNDg0YmMyZDJlZTEzNDZhM2RhNTQ2NTJjZTgzNDkyMGUyIHB5M2sKKzg4NjA0IDEyY2E0NzdjNDM3OGMxNzU4ZDA5OTk1MTZlMDliNDQ5MWNmMGFkNzMgcHkzaworODg2MDUgYjdlODVmZDBkMWM5MmRiOWZmOWIyZDA3ZTdlYTdmZjBmYmI2MTk4NSByZWxlYXNlMzItbWFpbnQKKzg4NjA2IDE4NjM2Yjg3MWQwMTc0MjI5OWNmYTgwZDM5ODU5ZmRjMWZiZThkNzYgcmVsZWFzZTI3LW1haW50Cis4ODYwNyA0YjYwNTIzMjBlOTgzYWQ3OThkNDFkMzBjNDk2ZmQ5YzE3MjEyNDA3IHB5M2sKKzg4NjA4IGEwMzgzNDI4NzJhMzRjNTRkNzA5M2E3NDY4MzhjMWVhZmE2NDFjMTcgcHkzaworODg2MDkgYTllYjAwODdiNjAyMTQzYmQ2NTlmYjFkYTk1YTA3N2YyNDM4MGEzZSBweTNrCis4ODYxMCA3ODU5MzNiYTQ4YWM2YjA0NzYxZTUwZjQyMDliYzYwODAxNDZlNGUyIHB5M2sKKzg4NjExIDY2ZWQ3MWE2ZTI5YThmMWJmMzliYmEzZjY4YjI2ZjBmYTYyMDg0NGUgcmVsZWFzZTMyLW1haW50Cis4ODYxMiA2NzViNDhjNGM4OGExYmI3MWU4YmFiNTFlZGQwNzM4YzRmMWQxNjE3IHJlbGVhc2UyNy1tYWludAorODg2MTMgNzA2YmU2ZWU5NjY4YjQ2NDQwNWJkYjY1YjZkODM1OTcxZmQ1YTkzMyBweTNrCis4ODYxNCA2ZjEyYWFkZmZjOWZiOTFkM2UxMzlkYWVhNjU2NTcyYjgzYjczZGEyIHJlbGVhc2UzMi1tYWludAorODg2MTUgOGIzZWY3MTliY2VkMmRhYThmODQwYjAxOTE0MmM2YjNlNTA0OWMyNiByZWxlYXNlMzEtbWFpbnQKKzg4NjE2IGRiNDZlZGEyMGZkMDI5ZmI3MDEyMDk0YzRhNDA1YjQxMzE3YzhlNGMgcHkzaworODg2MTcgYTc0OTI0ZWVhODYxYTlkZTk2MWY1N2QzZWU3ZDA2NjNmMjFkOTk0YiByZWxlYXNlMjctbWFpbnQKKzg4NjE4IGY3MWFjYzRiMjM0MTAyYjY3NTc5YmVkMmMxMzdlMGYwMmU2N2U2NWEgcHkzaworODg2MTkgODc0MjVkYzIzZjI2ZTVkZWYxY2UyYzZhMDJlM2IwMzNlZDMwMjJmMiBweTNrCis4ODYyMCBkMjE5MDA1MTE2NzVjZWE0OWE5MGM3YWNiYjAyYTFlZTVlZmM1ZDMwIHB5M2sKKzg4NjIxIDI3OTYxZGNhODMzMzAyYzFmMjE1ZjBjOTY1N2YwODJlOTI5YmMxMzQgcHkzaworODg2MjIgMTdkMWM2Y2VkZTdlZDNiY2NlMjUyMTUzYWVkYWE4MWIyODRkMDZjOCBweTNrCis4ODYyMyA1OWY5ZWQxMmYxN2E0ZWZlZjQzMTgzMDQ1ODVkMTYwMmVhYWQxY2ZmIHJlbGVhc2UzMi1tYWludAorODg2MjQgM2QzYmE0NTJmOGFkZWM1MzNjZDMyODYxYmM3Zjc5N2EzMzE4MjliMyBweTNrCis4ODYyNSBhYWFmN2I1OGUyMDkwYzJlYjY1MDg2Y2VkMzQzNGIwYTZjN2MwMDkzIHB5M2sKKzg4NjI2IDI2N2RiZDZjOThjMzE5MzAxZTk1YzcwMWNiYzFhODcwNmVhMjQ1MjMgcHkzaworODg2MjcgNTNhNDVmYjcwNzg2ZmEzZGNlZDEzMWQ3NmY5MzdhNGQ0ZTY4ZmQ0NSBweTNrCis4ODYyOCA3M2M1YWJiNDEyOTZkNjk5NzRmNmIyMzFiMTM5OWQwMmFiMGFkZThlIHB5M2sKKzg4NjI5IDJhMTlmMDI1Yjk3NGFhNWJkZTMzM2Q4YzE4YjA1MGU0OWZjMWExYzggcHkzaworODg2MzAgYTg2N2YwMmQ4ZjhkN2Y2YjJkOWMwZWU1MTcxZWUzZDlkMDdhNDE4MSBweTNrCis4ODYzMSA2NTRjOWYxM2NmZTllMTA3MmY0ZmJiMTIwYTU2ZDU1YzAyYzgzY2UxIHB5M2sKKzg4NjMyIGY0NTU1ZDM0ZjM0MGEzMDliMTAyYjAzMTE2Mzc4NjdmYjFhMDQ5YmMgcHkzaworODg2MzMgYjMyMjZhZDlhMzk4ZGY5ZGZiNmY1OTA3MjI3M2IwY2YxNzliYWU2YSBweTNrCis4ODYzNCBiYThlMzAyYjYyNmMwMDhkMWQzMWYzOWY4OTZlZWM3YWNmYTgxNzMyIHJlbGVhc2UzMi1tYWludAorODg2MzUgYzZkMzAzYjk5YzgyYWFmMjhhOGNmMTgxZjc5MmUyYTQ0ZjQxNmM0YiBwZXAtMzE1MQorODg2MzYgNGRkOTNkMGY1ZDFlMDc4ZGU3MzE0NzliMjMyOTJlYTMwNTlmNzE0ZiBweTNrCis4ODYzNyA2ODA4ZDVkYmExZWMxM2YwZmE5ODhiYTkyNWU4MWRmZDVkY2I0NjRkIHBlcC0zMTUxCis4ODYzOCA5ZWIyMDJlNjMyMGU0YWRjOTdlZGM5YzI4OWY2NzE5M2YwNWRhYjJkIGVtcHR5Cis4ODYzOSA0MDkyMjk2YTNkOGRhNWIxZjFhMDYyZmFjMjM0YTE0YWI3YTg1MWI1IHB5M2sKKzg4NjQwIDdmYTg2YTkxOTU2NzJjOGQ4ODg0ZWI3NjA0MmRjZTAzMjI1YjM0YTEgcHkzaworODg2NDEgNjBhNWI0YjIzNTVkZTVmNzM2NjY1N2M4M2ZjYjVkMjdmMTkxNGMyMyByZWxlYXNlMzEtbWFpbnQKKzg4NjQyIDBiNTk2ZmY2ZDQ2OTc1N2UyNzMyMDE3MGMzZjY4ZTJhMWE4OWYxZWUgcmVsZWFzZTI3LW1haW50Cis4ODY0MyA3M2RhZjkxYzYxNWM1M2NjNzhiNWQ0OWM4NjQwYzVhYWVjM2JiYjllIHB5M2sKKzg4NjQ0IDc2NDFmZTA4OWRhMWRhZDdjYWYzZjA5MzI4ZGQ0YTkwMGQ2NzNjM2EgcmVsZWFzZTMyLW1haW50Cis4ODY0NCA5MDdkNWIyZWQ1YTE5ZjVlMjNkNjE1ZDJiMjE0YmUyMWFhMGZiMjhiIHB5M2sKKzg4NjQ1IDU3MTdkZDIxNjZlZTA1ODQ2MjUyZmVkZWY3ZDhkNDk4NTQ1MjMzNDkgcmVsZWFzZTMyLW1haW50Cis4ODY0NSA3ZWVhMmE1NzRkZmM4NGM3MDkxODA5NDUzODhjOGRkZDYzM2JiNWMxIHB5M2sKKzg4NjQ2IDc2NGI5OWVlOGM4MTA5ZjQwY2Y4ZjAyNjNkMTYyMzZiZGJjZjFmNWUgcmVsZWFzZTMyLW1haW50Cis4ODY0NiBjODZmOTAzNDBjZDdkMjI3MmQ2N2ViMWM5MGY0MTVlM2VhYWM3NTNhIHB5M2sKKzg4NjQ3IDA3YWZmYTAzMzhiYWQyOTQxMDUxYTNlYzg2OWNlYjRlZjRmZjIwZTkgcHkzaworODg2NDggMzFkNGIwNGNiNWIwNTY3ZDJlZDRhZjc3M2QxODhmODQ1ZmNhZWRlMyByZWxlYXNlMzEtbWFpbnQKKzg4NjQ5IDk3ZDA1MGMzMTcyZjllMmVkYzgyYjI5MjI4ZGJkNjg5MWZjZDJiYTAgcmVsZWFzZTI3LW1haW50Cis4ODY1MCAyNzZkZTliMjkzMDMwYzEwNGRlYjdjNjc1ZTNhZjY5OTY5YTk4NzQyIHB5M2sKKzg4NjUxIDM3NGYwYjIyZTRhNGM1YjFiZTQwZDA2MWQ1Zjg0NjliYTFkNTRiMmQgcmVsZWFzZTMyLW1haW50Cis4ODY1MiAwOTEyOWFhZmI5NTM2YmRjZmJmZDdhNDRjM2JjMmUxZDAyOTcyZTM1IHB5M2sKKzg4NjUzIGZlZDJjNmQ0OWYxOTgwMDZlNTRiMzc5MWE0OTVmN2JiYWNiZTA4OWEgcHkzaworODg2NTQgOTc5ZGE4ZjEzOWRkM2Q2ZTIxOWYwYmFiZmY0NzZmOTVjY2U2YTUyMSByZWxlYXNlMzItbWFpbnQKKzg4NjU0IDZhOGZhMmU5YjEwNTVjYWQ3Y2MyMTgzOTkwM2Y5ZjM5ODNjMzU3ODAgcHkzaworODg2NTUgY2QxNDc4Mjg4NmNhYTI4NTAzYmIzNTZmNWIzYzM3YTQxZTIxMWI0MSByZWxlYXNlMzItbWFpbnQKKzg4NjU2IDcyMmFlZWI1N2VhYmJkZmY5YmY1MWI0Zjg0M2VhMWZjNDBmZWQwMTkgcHkzaworODg2NTggMTAyNTZiZDY4Nzg3OTE1ZjhmM2ZmZDU5NDYxMWQ2NzAwNjkwMjdlMiBweTNrCis4ODY1OSA1OWY3NGFhZDk3MDMxZjE5ZGVhZGNlOGY4NjkwNDVhZGZkOTg0NzkwIHJlbGVhc2UzMi1tYWludAorODg2NjAgYzc3YjI1YWRmZWMyM2M0MTQxYTUxY2RlMWE4NTkzOTVkOTMxMGMxNSBweTNrCis4ODY2MiBhNTgxMjljZGQzNjU3MzI0YTJlZjA4ODRkNDlmZGM0ZGJmYjRjNTE2IHJlbGVhc2UyNy1tYWludAorODg2NjMgODY4N2ExYjczNTE2Y2M1MjAzMWM3NzA5ODJkOTJkOTJmYmU0ZGJkYyBweTNrCis4ODY2NCAxOTA5YzEyZWYwNmM3YzFjMmUyMjQyNjI5YzNiODJkMWQ3NzQ0ODc1IHB5M2sKKzg4NjY1IDZjZWMwOTEwMjBhMmM5OTY5YWM4YWEyOTdkYWYyZjM2ZGVkNDlmZDQgcmVsZWFzZTMyLW1haW50Cis4ODY2NiA3NDJkNzNhOTk0MjU3NGI1MTMwYzk0ZGUxZjNhMjg2YzFlMjI3MGNiIHJlbGVhc2UyNy1tYWludAorODg2NjggNjUwZDE0ODIwYmQ4YzY2ZGY0YTBiYWE1ZDFkZGFlM2Q0MDg3NWIwZiBweTNrCis4ODY2OSBhOTU2NTkyNWJhNzA2MWQ2MzcxODQwNjRkNzhmYjUyZjhkYzgyYjIzIHJlbGVhc2UyNy1tYWludAorODg2NzAgYTViNWZkYTY2ODljNjUzZDg1ZDZmNDdlN2UwYTQ2ZDRlMjFkMWIzZCByZWxlYXNlMzItbWFpbnQKKzg4NjcxIDJmMDdkMzc1Y2U2ZWVjYWI0NzFlNWQ4ZWJiODg5MTA2ZjE2OWRhMTAgcHkzaworODg2NzIgNDU2NTBlYjM0Njg1MTE3YTdiODZmNzU2ZmIxMjZkY2IyZjNmZDUxMSByZWxlYXNlMzItbWFpbnQKKzg4NjczIDIxNDM2ZTQ4MTYxZmMzMTcwMjAxMDAxY2NhYmE3YTU1YjM5ZGI1NzUgcmVsZWFzZTI3LW1haW50Cis4ODY3NCBkYzg2MjZlMDg1NzdkNmIxZmQxMmU0MGZkNTljOWU1MjMwMDhkNmEzIHJlbGVhc2UyNy1tYWludAorODg2NzUgNzI4ZmJjMjYzNTljMTA3ZmY3NTVjZTViYjZiOWIzYjA4MGYxYmVmMSBwZXAtMzE1MQorODg2NzkgY2JkMDYwODEwM2Y2MTA2ZWZhMWQ2NTIzZDllMGVhYjk5NGRjYTE0ZiBweTNrCis4ODY4MCBiN2Q2MmJjMDE5OTg4OTIxMmJkY2Q0MGQ1ZDA0YTNjYTk4OGQzNDVmIHB5M2sKKzg4NjgyIDJkZGNhNTVlMDk4ZGRhMmIxYTY4NTZhMzU5ZTE5Zjc4ZDk4NWM2ODggcHkzaworODg2ODMgYmJkZGFjNWMxOGQzOTgwZTc2NThhMDliZDRmZTg1NDE3OThjMzUzYyBweTNrCis4ODY4NCA3YzZiMjFkYjAwZTNlM2YxNTVkMmI4YTkxZDEyY2QyODQ4MjA4NzRlIHB5M2sKKzg4Njg1IGEyZDYxMTE3YzJkMjY0OWY5MDkwZjY4OWFhODVjNTU3NWE2ZDczMzkgcHkzaworODg2ODYgMTBiODM4ZjZlNWExYTk0YmE3M2ExZDNjNjVjOTUwY2RkOGQ1ZGIzMyBweTNrCis4ODY4NyBmZGYzMmZhMGY0NDBlNzFlNTBkMGZmYzM1MjI5ZDZhMTRjN2QyYTQyIHJlbGVhc2UzMi1tYWludAorODg2ODggYjI5NGZmNzU3MzM2NWNkZGNjYThhMjdjMTY0OWZkMThkMTk5NDQ4YyBwZXAtMzgyCis4ODY4OSBmOGE3N2ZkNjc1ZjVhM2NlMDUxZWU0MDRjN2I1NmRiMWM3MmViZjFkIHJlbGVhc2UzMS1tYWludAorODg2OTAgNDQ3MzRkMzc1MzkzMTU0OGFjNGE4ZWQ5MjgyYjAzNDliOGI2MDE1MiByZWxlYXNlMzEtbWFpbnQKKzg4NjkxIDI2MTFjYmQ3NWM0Zjk3MWNmNmZiZjZiMzM3Mjc5OTY2N2I1OTUwMzAgcHkzaworODg2OTIgYTM2NjA5NmI5NWFkMmE2YjVmOGE4NmI0YTkwOGQyMjg3MWI4Y2RjOSByZWxlYXNlMzItbWFpbnQKKzg4NjkzIDE3OTczMDBmODdiOTk4NjViNjY1ODFjZWRhYTg0NzZkMjQ1ODc1MWYgcmVsZWFzZTI3LW1haW50Cis4ODY5NCA5YWNjOTAyMWYxMWUzMDIxODM2Yzg5Y2U4MjU4M2JiZjhlZjk3YTkzIHBlcC0zODIKKzg4Njk2IDhlMDdmYzk0ODY4MDY4NDkwNWYyNmVjYTRlNjJjYjhmYmRhZWQ2NDggcHkzaworODg2OTcgOWI3MjU0NjcwY2U5ZGEwMDI3NTNjYTAwYzI0OGVhYmY1ZGRmM2ZhZSBweTNrCis4ODY5OCA3MmYzMGY4ZWYzMzFlOWI1ZjUxNDBlOGYzMWVhN2RjYmViOTAwMGEyIHJlbGVhc2UzMi1tYWludAorODg2OTkgYjgyYzNlNTkzZGI2NTU1ZmI4MTY1ODE2YmM3YTI5Y2ExYjIyN2M0NiBweTNrCis4ODcwMCAxZDE5ODUxOGNiODc1YzM5ZTUzYWVlM2FmN2Q1NGE2NmZjMTJkM2YzIHB5M2sKKzg4NzAxIDVkYzM0OTNlMDdhOWYyYTgzMGU3OWFiMzA4MWMwNjQ5MDMwYzNkMTYgcmVsZWFzZTMyLW1haW50Cis4ODcwMiBkYTk1NDQwZDkyYjM2YjAwODIxODcxMTE1ZDMzYjBjNTEwOGMxMWYzIHB5M2sKKzg4NzAzIDczYTQ5OWYwZWFmMWIwYWVmMjg0NGE2MWExOWMxMzQwOTk3ZjhkN2MgcHkzaworODg3MDQgODdkZTAxN2RhNGJmN2NiM2Q2MDI3NjUxN2QyMTgzMGIzYWU5ZTBkNyBweTNrCis4ODcwNSA3MjkwYjhmM2M5ZmI5OTg0NjY5ZDA4MDdlOTg0YmVjNzEzNTEzZjAzIHB5M2sKKzg4NzA2IDMzZTc2OGQyM2IxNmE1NzEwZTRmNTIyYTYyMDhlOTJiY2MyZDNjZTkgcHkzaworODg3MDcgNmYxMTdkMjdhZDFjNWU2MzIzOWRkNTJjMzI1NjJkODI0MjVhZjg2NyBweTNrCis4ODcwOCBjN2E5MzYzNjIyODE5ZjNlYWI3NzJjNzgwNDM0YjIzNDcxZmUwYjI1IHB5M2sKKzg4NzA5IDM3OGVlMzI4YjYwZTBiMTYzNmFhMjQ3NTdiZWExYTE1ZjkyODFhZTQgcHkzaworODg3MTAgYTFkYmU1M2YzNzk4NDVmZjYzNjcwOWIwOGFiNDU2MzM3Yzg2NWM5MyBweTNrCis4ODcxMSA0ZGFjNDc2OWVhMjQ4YWFjYzgzMDc3ZTU3YTY0ZDJjMTM0MWMyM2FhIHB5M2sKKzg4NzEyIDZiMTJkMmI2OGYyNTMzM2RkNWFmZmU2ZTNlOGY0NmI1NWNkNDI0MjQgcHkzaworODg3MTcgMGRjNmE5MGRlZTIxOTEyMmFiZjU2NmFjODU4YWVhNjVjNDMwMDgyZiBweTNrCis4ODcxOCA2YzhlYzVmOGI5ZTUxYmNlMTU0ZTExOGVmYTkxZjcxYjAwOTZlYmQwIHJlbGVhc2UzMi1tYWludAorODg3MTkgYTRlN2ZiZWQ3NTNjNzMxYTU1MjY3Y2U3MTAwOWE4MGQ4MjcwNGQ0YSBweTNrCis4ODcyMCA3MzhmZWVjOWNlZDAxZmMzMTM4OTJkYjNiMTA1ODlmYjYwMjViODdhIHB5M2sKKzg4NzIxIDIwYTVhMDhjM2I2Y2E5ZDhhNDA4Njk3Yjk1NzY3MGQ1ZTNkNjI5YzAgcHkzaworODg3MjIgMjA4YTUyOTBmZDM4ZWM4YzRmZTEzOGU3OWU4MjNkMDE4NzQzZWNjNiBweTNrCis4ODcyMyBhMTcyNzA2M2E3ZGZlYjBkMmE2M2E2YjFhMjlmNDZmZWMzMmIwNTgyIHJlbGVhc2UzMi1tYWludAorODg3MjQgZjUzOThmYjgxNDI4OWIyNGE4YjA1ZmFlZDM0NGY3ZjkwYjc3NTZkNyBweTNrCis4ODcyNSAyZmNlOWM3NDJjZGVhYjRkZWQxMTE1MmVjYmRkOTA2N2UxMGVmMGUyIHJlbGVhc2UzMS1tYWludAorODg3MjYgZGRjMGJiNmE3YjdjNzJjN2FiYjdiMWM0ODBkZWE4ZmQ5MThkYjljZSBweTNrCis4ODcyNyA1OGNiMGZlMDZkYWEzNjUxOTUzNTUxYmU1YjExYjE0NTAxNTQ3YjAwIHJlbGVhc2UzMi1tYWludAorODg3MjggOTY1YWI5OTExZmNkMGVmMTRhZmUwZGE5ZjgzNTU1YzY4OTc4ZTdkMCByZWxlYXNlMjctbWFpbnQKKzg4NzI5IGYyMDQ2ZGZjYTczMTEzNjcyZDU5YjUwNDZmZjg2YjBiMDNiNDFkMDkgcHkzaworODg3MzAgYjUyODFmNWZhZGU0ZGQ1NjdmMWYxZDU2ZmFjOWNlN2Q1N2ViOWY5OSBweTNrCis4ODczMSBiYzllZmJiZTYzY2YzZWIzYTNiN2MxYjkyNDZjNTQ0ZjZmYTVmZWIyIHJlbGVhc2UzMi1tYWludAorODg3MzIgYTgzODk0NjhlNjUxMzdjNTA2NWY3MDJjODQ2YjljMGU1NjFlNTk3MiByZWxlYXNlMjctbWFpbnQKKzg4NzMzIDA4ODA0YWVhMDhmMWM0OGExNmM4NDlkYTEyNzA3ZTUxYTg3ZDg2ZDkgcHkzaworODg3MzQgMmY1Zjc1NWIyNjg3OGNiMGZiMzVjMGM1OTA3M2FhZjE4ZWJlMzY4MyBweTNrCis4ODczNSBkMmI1YmRlNWMxZmE0Yzk0YTc0N2M2NzAxNjNkNmFjNzAxZjk2MDk2IHB5M2sKKzg4NzM5IDFhMDViYzM2YTMzNDBhNGU2YjU5NjE1Mzg1NDNmMTBlOWJmOGNmN2EgcmVsZWFzZTMyLW1haW50Cis4ODc0MCAzZjcwYzU0ZDg2ZDg5YWRjZjdhNzQ1MjAyNTk2N2E4ZjcwYmUyOWNmIHB5M2sKKzg4NzQxIGUyZGZjOGYyNGQzZjZlYTgzODYzZDJlMzJjMGMzMDNlMDI2YWFhZmQgcmVsZWFzZTI3LW1haW50Cis4ODc0MiA5M2ZkMTY2NzA3NzRhMjc3YjkxNzM5MDQyNmI4NGMyOGFiNzk2YzdhIHB5M2sKKzg4NzQ0IGU3NDIwOWI5YjJmNTI4OGY5MzdkNmUzNDExYTJjZjEwYTg2NDZiMDQgcHkzaworODg3NDUgZTdiNmFkYmE1NzFhYTkzYTQ0MTQ1ZjBlYmY3YjViYmEyZTM4NTkzMSBweTNrCis4ODc0NiA1MGIzOGU0YjAyMzEyNjdiOTE3NTVjNGQxYTAwNzIwZjM4MTk1MjY4IHB5M2sKKzg4NzQ3IDBlNzE4MGU0YzNjZGI5NDg0MThiYzE3YjU3NGQxZmY2NTE0MjlmNGQgcHkzaworODg3NTIgODVhMzRhMzE2OTY5Mjc4NTkzZDQ1NGE4NmVmNDNhMmY3NmMyZDc2YyBweTNrLWNkZWNpbWFsCmRpZmYgLS1naXQgYS9NaXNjL3ZhbGdyaW5kLXB5dGhvbi5zdXBwIGIvTWlzYy92YWxncmluZC1weXRob24uc3VwcAppbmRleCBhNjYzMDViLi45NWUxYjllIDEwMDY0NAotLS0gYS9NaXNjL3ZhbGdyaW5kLXB5dGhvbi5zdXBwCisrKyBiL01pc2MvdmFsZ3JpbmQtcHl0aG9uLnN1cHAKQEAgLTEzNyw2ICsxMzcsMTggQEAKICMjI30KICMjIwogIyMjeworIyMjICAgQUREUkVTU19JTl9SQU5HRS9Vc2Ugb2YgdW5pbml0aWFsaXNlZCB2YWx1ZSBvZiBzaXplIDgKKyMjIyAgIE1lbWNoZWNrOkFkZHI4CisjIyMgICBmdW46UHlPYmplY3RfRnJlZQorIyMjfQorIyMjCisjIyN7CisjIyMgICBBRERSRVNTX0lOX1JBTkdFL1VzZSBvZiB1bmluaXRpYWxpc2VkIHZhbHVlIG9mIHNpemUgOAorIyMjICAgTWVtY2hlY2s6VmFsdWU4CisjIyMgICBmdW46UHlPYmplY3RfRnJlZQorIyMjfQorIyMjCisjIyN7CiAjIyMgICBBRERSRVNTX0lOX1JBTkdFL0NvbmRpdGlvbmFsIGp1bXAgb3IgbW92ZSBkZXBlbmRzIG9uIHVuaW5pdGlhbGlzZWQgdmFsdWUKICMjIyAgIE1lbWNoZWNrOkNvbmQKICMjIyAgIGZ1bjpQeU9iamVjdF9GcmVlCkBAIC0xNTUsNiArMTY3LDE4IEBACiAjIyN9CiAjIyMKICMjI3sKKyMjIyAgIEFERFJFU1NfSU5fUkFOR0UvVXNlIG9mIHVuaW5pdGlhbGlzZWQgdmFsdWUgb2Ygc2l6ZSA4CisjIyMgICBNZW1jaGVjazpBZGRyOAorIyMjICAgZnVuOlB5T2JqZWN0X1JlYWxsb2MKKyMjI30KKyMjIworIyMjeworIyMjICAgQUREUkVTU19JTl9SQU5HRS9Vc2Ugb2YgdW5pbml0aWFsaXNlZCB2YWx1ZSBvZiBzaXplIDgKKyMjIyAgIE1lbWNoZWNrOlZhbHVlOAorIyMjICAgZnVuOlB5T2JqZWN0X1JlYWxsb2MKKyMjI30KKyMjIworIyMjewogIyMjICAgQUREUkVTU19JTl9SQU5HRS9Db25kaXRpb25hbCBqdW1wIG9yIG1vdmUgZGVwZW5kcyBvbiB1bmluaXRpYWxpc2VkIHZhbHVlCiAjIyMgICBNZW1jaGVjazpDb25kCiAjIyMgICBmdW46UHlPYmplY3RfUmVhbGxvYwpAQCAtMjg2LDYgKzMxMCwzOCBAQAogIyMjICAgZnVuOk1ENV9VcGRhdGUKICMjI30KIAorIyBGZWRvcmEncyBwYWNrYWdlICJvcGVuc3NsLTEuMC4xLTAuMS5iZXRhMi5mYzE3Lng4Nl82NCIgb24geDg2XzY0CisjIFNlZSBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlMTQxNzEKK3sKKyAgIG9wZW5zc2wgMS4wLjEgcHJuZyAxCisgICBNZW1jaGVjazpDb25kCisgICBmdW46YmNtcAorICAgZnVuOmZpcHNfZ2V0X2VudHJvcHkKKyAgIGZ1bjpGSVBTX2RyYmdfaW5zdGFudGlhdGUKKyAgIGZ1bjpSQU5EX2luaXRfZmlwcworICAgZnVuOk9QRU5TU0xfaW5pdF9saWJyYXJ5CisgICBmdW46U1NMX2xpYnJhcnlfaW5pdAorICAgZnVuOmluaXRfaGFzaGxpYgorfQorCit7CisgICBvcGVuc3NsIDEuMC4xIHBybmcgMgorICAgTWVtY2hlY2s6Q29uZAorICAgZnVuOmZpcHNfZ2V0X2VudHJvcHkKKyAgIGZ1bjpGSVBTX2RyYmdfaW5zdGFudGlhdGUKKyAgIGZ1bjpSQU5EX2luaXRfZmlwcworICAgZnVuOk9QRU5TU0xfaW5pdF9saWJyYXJ5CisgICBmdW46U1NMX2xpYnJhcnlfaW5pdAorICAgZnVuOmluaXRfaGFzaGxpYgorfQorCit7CisgICBvcGVuc3NsIDEuMC4xIHBybmcgMworICAgTWVtY2hlY2s6VmFsdWU4CisgICBmdW46X3g4Nl82NF9BRVNfZW5jcnlwdF9jb21wYWN0CisgICBmdW46QUVTX2VuY3J5cHQKK30KKwogIwogIyBBbGwgb2YgdGhlc2UgcHJvYmxlbXMgY29tZSBmcm9tIHVzaW5nIHRlc3Rfc29ja2V0X3NzbAogIwpAQCAtMzg4LDQgKzQ0NCwxNSBAQAogICAgZnVuOlNIQTFfVXBkYXRlCiB9CiAKK3sKKyAgIHRlc3RfYnVmZmVyX25vbl9kZWJ1ZworICAgTWVtY2hlY2s6QWRkcjQKKyAgIGZ1bjpQeVVuaWNvZGVVQ1MyX0ZTQ29udmVydGVyCit9CisKK3sKKyAgIHRlc3RfYnVmZmVyX25vbl9kZWJ1ZworICAgTWVtY2hlY2s6QWRkcjQKKyAgIGZ1bjpQeVVuaWNvZGVfRlNDb252ZXJ0ZXIKK30KIApkaWZmIC0tZ2l0IGEvTW9kdWxlcy9TZXR1cC5kaXN0IGIvTW9kdWxlcy9TZXR1cC5kaXN0CmluZGV4IDkyNjlkZGYuLjZhYmFmZmYgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvU2V0dXAuZGlzdAorKysgYi9Nb2R1bGVzL1NldHVwLmRpc3QKQEAgLTEyNyw2ICsxMjcsOSBAQAogIyBidWlsdGluIG1vZHVsZSBhdm9pZHMgc29tZSBib290c3RyYXBwaW5nIHByb2JsZW1zIGFuZCByZWR1Y2VzIG92ZXJoZWFkLgogemlwaW1wb3J0IHppcGltcG9ydC5jCiAKKyMgZmF1bHRoYW5kbGVyIG1vZHVsZQorZmF1bHRoYW5kbGVyIGZhdWx0aGFuZGxlci5jCisKICMgVGhlIHJlc3Qgb2YgdGhlIG1vZHVsZXMgbGlzdGVkIGluIHRoaXMgZmlsZSBhcmUgYWxsIGNvbW1lbnRlZCBvdXQgYnkKICMgZGVmYXVsdC4gIFVzdWFsbHkgdGhleSBjYW4gYmUgZGV0ZWN0ZWQgYW5kIGJ1aWx0IGFzIGR5bmFtaWNhbGx5CiAjIGxvYWRlZCBtb2R1bGVzIGJ5IHRoZSBuZXcgc2V0dXAucHkgc2NyaXB0IGFkZGVkIGluIFB5dGhvbiAyLjEuICBJZgpAQCAtMjA3LDcgKzIxMCw3IEBACiAjCiAjIEZpcnN0LCBsb29rIGF0IFNldHVwLmNvbmZpZzsgY29uZmlndXJlIG1heSBoYXZlIHNldCB0aGlzIGZvciB5b3UuCiAKLSNjcnlwdCBjcnlwdG1vZHVsZS5jICMgLWxjcnlwdAkjIGNyeXB0KDMpOyBuZWVkcyAtbGNyeXB0IG9uIHNvbWUgc3lzdGVtcworI19jcnlwdCBfY3J5cHRtb2R1bGUuYyAjIC1sY3J5cHQJIyBjcnlwdCgzKTsgbmVlZHMgLWxjcnlwdCBvbiBzb21lIHN5c3RlbXMKIAogCiAjIFNvbWUgbW9yZSBVTklYIGRlcGVuZGVudCBtb2R1bGVzIC0tIG9mZiBieSBkZWZhdWx0LCBzaW5jZSB0aGVzZQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fYmlzZWN0bW9kdWxlLmMgYi9Nb2R1bGVzL19iaXNlY3Rtb2R1bGUuYwppbmRleCA3ZmVjZmM2Li44Y2RhNjQyIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19iaXNlY3Rtb2R1bGUuYworKysgYi9Nb2R1bGVzL19iaXNlY3Rtb2R1bGUuYwpAQCAtODYsNyArODYsOSBAQAogICAgICAgICBpZiAoUHlMaXN0X0luc2VydChsaXN0LCBpbmRleCwgaXRlbSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChsaXN0LCAiaW5zZXJ0IiwgIm5PIiwgaW5kZXgsIGl0ZW0pOworICAgICAgICBfUHlfSURFTlRJRklFUihpbnNlcnQpOworCisgICAgICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQobGlzdCwgJlB5SWRfaW5zZXJ0LCAibk8iLCBpbmRleCwgaXRlbSk7CiAgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKQEAgLTE4Niw3ICsxODgsOSBAQAogICAgICAgICBpZiAoUHlMaXN0X0luc2VydChsaXN0LCBpbmRleCwgaXRlbSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChsaXN0LCAiaW5zZXJ0IiwgImlPIiwgaW5kZXgsIGl0ZW0pOworICAgICAgICBfUHlfSURFTlRJRklFUihpbnNlcnQpOworCisgICAgICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQobGlzdCwgJlB5SWRfaW5zZXJ0LCAiaU8iLCBpbmRleCwgaXRlbSk7CiAgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2J6Mm1vZHVsZS5jIGIvTW9kdWxlcy9fYnoybW9kdWxlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjQwN2RmOQotLS0gL2Rldi9udWxsCisrKyBiL01vZHVsZXMvX2J6Mm1vZHVsZS5jCkBAIC0wLDAgKzEsNTkwIEBACisvKiBfYnoyIC0gTG93LWxldmVsIFB5dGhvbiBpbnRlcmZhY2UgdG8gbGliYnppcDIuICovCisKKyNkZWZpbmUgUFlfU1NJWkVfVF9DTEVBTgorCisjaW5jbHVkZSAiUHl0aG9uLmgiCisjaW5jbHVkZSAic3RydWN0bWVtYmVyLmgiCisKKyNpZmRlZiBXSVRIX1RIUkVBRAorI2luY2x1ZGUgInB5dGhyZWFkLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPGJ6bGliLmg+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+IDRdOworICAgICAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbYyAmIDB4Zl07CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgKnArKyA9IGM7CkBAIC0yMzYsOCArMjM5LDEwIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhvYmopKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSA8IDApCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgUHlfSU5DUkVGKG9iaik7Ci0gICAgICAgIHJldHVybiBjb2RlY190dXBsZShvYmosIFB5VW5pY29kZV9HRVRfU0laRShvYmopKTsKKyAgICAgICAgcmV0dXJuIGNvZGVjX3R1cGxlKG9iaiwgUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKSk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBpZiAoUHlPYmplY3RfQXNSZWFkQnVmZmVyKG9iaiwgKGNvbnN0IHZvaWQgKiopJmRhdGEsICZzaXplKSkKQEAgLTU4OCw3ICs1OTMsNyBAQAogICAgIHJldHVybiBjb2RlY190dXBsZSh1bmljb2RlLCBwYnVmLmxlbik7CiB9CiAKLSNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpICYmIGRlZmluZWQoSEFWRV9VU0FCTEVfV0NIQVJfVCkKKyNpZmRlZiBIQVZFX01CQ1MKIAogc3RhdGljIFB5T2JqZWN0ICoKIG1iY3NfZGVjb2RlKFB5T2JqZWN0ICpzZWxmLApAQCAtNjEzLDcgKzYxOCwzMiBAQAogICAgIHJldHVybiBjb2RlY190dXBsZShkZWNvZGVkLCBjb25zdW1lZCk7CiB9CiAKLSNlbmRpZiAvKiBNU19XSU5ET1dTICovCitzdGF0aWMgUHlPYmplY3QgKgorY29kZV9wYWdlX2RlY29kZShQeU9iamVjdCAqc2VsZiwKKyAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfYnVmZmVyIHBidWY7CisgICAgY29uc3QgY2hhciAqZXJyb3JzID0gTlVMTDsKKyAgICBpbnQgZmluYWwgPSAwOworICAgIFB5X3NzaXplX3QgY29uc3VtZWQ7CisgICAgUHlPYmplY3QgKmRlY29kZWQgPSBOVUxMOworICAgIGludCBjb2RlX3BhZ2U7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIml5Knx6aTpjb2RlX3BhZ2VfZGVjb2RlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJmNvZGVfcGFnZSwgJnBidWYsICZlcnJvcnMsICZmaW5hbCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGNvbnN1bWVkID0gcGJ1Zi5sZW47CisKKyAgICBkZWNvZGVkID0gUHlVbmljb2RlX0RlY29kZUNvZGVQYWdlU3RhdGVmdWwoY29kZV9wYWdlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYnVmLmJ1ZiwgcGJ1Zi5sZW4sIGVycm9ycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmluYWwgPyBOVUxMIDogJmNvbnN1bWVkKTsKKyAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwYnVmKTsKKyAgICBpZiAoZGVjb2RlZCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gY29kZWNfdHVwbGUoZGVjb2RlZCwgY29uc3VtZWQpOworfQorCisjZW5kaWYgLyogSEFWRV9NQkNTICovCiAKIC8qIC0tLSBFbmNvZGVyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCkBAIC02NDUsMTcgKzY3NSwzMSBAQAogICAgIFB5T2JqZWN0ICpvYmo7CiAgICAgY29uc3QgY2hhciAqZXJyb3JzID0gTlVMTDsKICAgICBjb25zdCBjaGFyICpkYXRhOwotICAgIFB5X3NzaXplX3Qgc2l6ZTsKKyAgICBQeV9zc2l6ZV90IGxlbiwgc2l6ZTsKKworICAgIGlmIChQeUVycl9XYXJuRXgoUHlFeGNfRGVwcmVjYXRpb25XYXJuaW5nLAorICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVfaW50ZXJuYWwgY29kZWMgaGFzIGJlZW4gZGVwcmVjYXRlZCIsCisgICAgICAgICAgICAgICAgICAgICAxKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98ejp1bmljb2RlX2ludGVybmFsX2VuY29kZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZvYmosICZlcnJvcnMpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sob2JqKSkgewotICAgICAgICBkYXRhID0gUHlVbmljb2RlX0FTX0RBVEEob2JqKTsKLSAgICAgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfREFUQV9TSVpFKG9iaik7Ci0gICAgICAgIHJldHVybiBjb2RlY190dXBsZShQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKGRhdGEsIHNpemUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKG9iaikpOworICAgICAgICBQeV9VTklDT0RFICp1OworCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSA8IDApCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKworICAgICAgICB1ID0gUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUob2JqLCAmbGVuKTsKKyAgICAgICAgaWYgKHUgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBpZiAobGVuID4gUFlfU1NJWkVfVF9NQVggLyBzaXplb2YoUHlfVU5JQ09ERSkpCisgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgc2l6ZSA9IGxlbiAqIHNpemVvZihQeV9VTklDT0RFKTsKKyAgICAgICAgcmV0dXJuIGNvZGVjX3R1cGxlKFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoKGNvbnN0IGNoYXIqKXUsIHNpemUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKSk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBpZiAoUHlPYmplY3RfQXNSZWFkQnVmZmVyKG9iaiwgKGNvbnN0IHZvaWQgKiopJmRhdGEsICZzaXplKSkKQEAgLTY3NiwxNCArNzIwLDEyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlVVRGNyhQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKSwKLSAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpOworICAgIH0KKyAgICB2ID0gY29kZWNfdHVwbGUoX1B5VW5pY29kZV9FbmNvZGVVVEY3KHN0ciwgMCwgMCwgZXJyb3JzKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC03MDAsMTIgKzc0MiwxMiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cik7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKQorICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB2ID0gY29kZWNfdHVwbGUoUHlVbmljb2RlX0VuY29kZVVURjgoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyksCi0gICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpKTsKKyAgICB9CisgICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcoc3RyLCAidXRmLTgiLCBlcnJvcnMpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICByZXR1cm4gdjsKIH0KQEAgLTczMCwxMyArNzcyLDEyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlVVRGMTYoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZW9yZGVyKSwKLSAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpOworICAgIH0KKyAgICB2ID0gY29kZWNfdHVwbGUoX1B5VW5pY29kZV9FbmNvZGVVVEYxNihzdHIsIGVycm9ycywgYnl0ZW9yZGVyKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC03NTMsMTMgKzc5NCwxMiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cik7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKQorICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB2ID0gY29kZWNfdHVwbGUoUHlVbmljb2RlX0VuY29kZVVURjE2KFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xKSwKLSAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpOworICAgIH0KKyAgICB2ID0gY29kZWNfdHVwbGUoX1B5VW5pY29kZV9FbmNvZGVVVEYxNihzdHIsIGVycm9ycywgLTEpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICByZXR1cm4gdjsKIH0KQEAgLTc3NiwxMyArODE2LDEyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlVVRGMTYoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKzEpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0VuY29kZVVURjE2KHN0ciwgZXJyb3JzLCArMSksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiB2OwogfQpAQCAtODA3LDEzICs4NDYsMTIgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVVVEYzMihQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieXRlb3JkZXIpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0VuY29kZVVURjMyKHN0ciwgZXJyb3JzLCBieXRlb3JkZXIpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICByZXR1cm4gdjsKIH0KQEAgLTgzMCwxMyArODY4LDEyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlVVRGMzIoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEpLAotICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0VuY29kZVVURjMyKHN0ciwgZXJyb3JzLCAtMSksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiB2OwogfQpAQCAtODUzLDEzICs4OTAsMTIgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVVVEYzMihQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArMSksCi0gICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpKTsKKyAgICB9CisgICAgdiA9IGNvZGVjX3R1cGxlKF9QeVVuaWNvZGVfRW5jb2RlVVRGMzIoc3RyLCBlcnJvcnMsICsxKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC04NzYsMTEgKzkxMiwxMiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cik7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKQorICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB2ID0gY29kZWNfdHVwbGUoUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nKHN0ciksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiB2OwogfQpAQCAtODk3LDEyICs5MzQsMTIgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVSYXdVbmljb2RlRXNjYXBlKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nKHN0ciksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiB2OwogfQpAQCAtOTE5LDEzICs5NTYsMTIgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVMYXRpbjEoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKHN0ciwgZXJyb3JzKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC05NDIsMTMgKzk3OCwxMiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cik7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKQorICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB2ID0gY29kZWNfdHVwbGUoUHlVbmljb2RlX0VuY29kZUFTQ0lJKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKSwKLSAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpOworICAgIH0KKyAgICB2ID0gY29kZWNfdHVwbGUoX1B5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKHN0ciwgZXJyb3JzKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC05NjgsMTQgKzEwMDMsMTIgQEAKICAgICAgICAgbWFwcGluZyA9IE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVDaGFybWFwKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwcGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0VuY29kZUNoYXJtYXAoc3RyLCBtYXBwaW5nLCBlcnJvcnMpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICByZXR1cm4gdjsKIH0KQEAgLTk4OSw3ICsxMDIyLDcgQEAKICAgICByZXR1cm4gUHlVbmljb2RlX0J1aWxkRW5jb2RpbmdNYXAobWFwKTsKIH0KIAotI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgZGVmaW5lZChIQVZFX1VTQUJMRV9XQ0hBUl9UKQorI2lmZGVmIEhBVkVfTUJDUwogCiBzdGF0aWMgUHlPYmplY3QgKgogbWJjc19lbmNvZGUoUHlPYmplY3QgKnNlbGYsCkBAIC0xMDAzLDE4ICsxMDM2LDQyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlTUJDUygKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyksCi0gICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpKTsKKyAgICB9CisgICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVDb2RlUGFnZShDUF9BQ1AsIHN0ciwgZXJyb3JzKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CiAKLSNlbmRpZiAvKiBNU19XSU5ET1dTICovCitzdGF0aWMgUHlPYmplY3QgKgorY29kZV9wYWdlX2VuY29kZShQeU9iamVjdCAqc2VsZiwKKyAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnN0ciwgKnY7CisgICAgY29uc3QgY2hhciAqZXJyb3JzID0gTlVMTDsKKyAgICBpbnQgY29kZV9wYWdlOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpT3x6OmNvZGVfcGFnZV9lbmNvZGUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmY29kZV9wYWdlLCAmc3RyLCAmZXJyb3JzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOworICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVDb2RlUGFnZShjb2RlX3BhZ2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKKyAgICBQeV9ERUNSRUYoc3RyKTsKKyAgICByZXR1cm4gdjsKK30KKworI2VuZGlmIC8qIEhBVkVfTUJDUyAqLwogCiAvKiAtLS0gRXJyb3IgaGFuZGxlciByZWdpc3RyeSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIApAQCAtMTEwMSw5ICsxMTU4LDExIEBACiAgICAgeyJjaGFybWFwX2RlY29kZSIsICAgICAgICAgIGNoYXJtYXBfZGVjb2RlLCAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7ImNoYXJtYXBfYnVpbGQiLCAgICAgICAgICAgY2hhcm1hcF9idWlsZCwgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1N9LAogICAgIHsicmVhZGJ1ZmZlcl9lbmNvZGUiLCAgICAgICByZWFkYnVmZmVyX2VuY29kZSwgICAgICAgICAgICAgIE1FVEhfVkFSQVJHU30sCi0jaWYgZGVmaW5lZChNU19XSU5ET1dTKSAmJiBkZWZpbmVkKEhBVkVfVVNBQkxFX1dDSEFSX1QpCisjaWZkZWYgSEFWRV9NQkNTCiAgICAgeyJtYmNzX2VuY29kZSIsICAgICAgICAgICAgIG1iY3NfZW5jb2RlLCAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7Im1iY3NfZGVjb2RlIiwgICAgICAgICAgICAgbWJjc19kZWNvZGUsICAgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1N9LAorICAgIHsiY29kZV9wYWdlX2VuY29kZSIsICAgICAgICBjb2RlX3BhZ2VfZW5jb2RlLCAgICAgICAgICAgICAgIE1FVEhfVkFSQVJHU30sCisgICAgeyJjb2RlX3BhZ2VfZGVjb2RlIiwgICAgICAgIGNvZGVfcGFnZV9kZWNvZGUsICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICNlbmRpZgogICAgIHsicmVnaXN0ZXJfZXJyb3IiLCAgICAgICAgICByZWdpc3Rlcl9lcnJvciwgICAgICAgICAgICAgICAgIE1FVEhfVkFSQVJHUywKICAgICAgICAgcmVnaXN0ZXJfZXJyb3JfX2RvY19ffSwKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2NvbGxlY3Rpb25zbW9kdWxlLmMgYi9Nb2R1bGVzL19jb2xsZWN0aW9uc21vZHVsZS5jCmluZGV4IDQzNDMxNTkuLmRjMThlN2UgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2NvbGxlY3Rpb25zbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fY29sbGVjdGlvbnNtb2R1bGUuYwpAQCAtNzY3LDggKzc2Nyw5IEBACiBkZXF1ZV9yZWR1Y2UoZGVxdWVvYmplY3QgKmRlcXVlKQogewogICAgIFB5T2JqZWN0ICpkaWN0LCAqcmVzdWx0LCAqYXNsaXN0OworICAgIF9QeV9JREVOVElGSUVSKF9fZGljdF9fKTsKIAotICAgIGRpY3QgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKChQeU9iamVjdCAqKWRlcXVlLCAiX19kaWN0X18iKTsKKyAgICBkaWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKilkZXF1ZSwgJlB5SWRfX19kaWN0X18pOwogICAgIGlmIChkaWN0ID09IE5VTEwpCiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgYXNsaXN0ID0gUHlTZXF1ZW5jZV9MaXN0KChQeU9iamVjdCAqKWRlcXVlKTsKQEAgLTgzMiw4ICs4MzMsNyBAQAogCiAgICAgaWYgKCFQeU9iamVjdF9UeXBlQ2hlY2sodiwgJmRlcXVlX3R5cGUpIHx8CiAgICAgICAgICFQeU9iamVjdF9UeXBlQ2hlY2sodywgJmRlcXVlX3R5cGUpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KIAogICAgIC8qIFNob3J0Y3V0cyAqLwpAQCAtMTMzNSwxMyArMTMzNSwxNSBAQAogICAgIFB5T2JqZWN0ICppdGVtczsKICAgICBQeU9iamVjdCAqaXRlcjsKICAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIF9QeV9JREVOVElGSUVSKGl0ZW1zKTsKKwogICAgIGlmIChkZC0+ZGVmYXVsdF9mYWN0b3J5ID09IE5VTEwgfHwgZGQtPmRlZmF1bHRfZmFjdG9yeSA9PSBQeV9Ob25lKQogICAgICAgICBhcmdzID0gUHlUdXBsZV9OZXcoMCk7CiAgICAgZWxzZQogICAgICAgICBhcmdzID0gUHlUdXBsZV9QYWNrKDEsIGRkLT5kZWZhdWx0X2ZhY3RvcnkpOwogICAgIGlmIChhcmdzID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGl0ZW1zID0gUHlPYmplY3RfQ2FsbE1ldGhvZCgoUHlPYmplY3QgKilkZCwgIml0ZW1zIiwgIigpIik7CisgICAgaXRlbXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCAqKWRkLCAmUHlJZF9pdGVtcywgIigpIik7CiAgICAgaWYgKGl0ZW1zID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKGFyZ3MpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTE1NTQsMTIgKzE1NTYsOCBAQAogICAgIGlmIChQeURpY3RfQ2hlY2tFeGFjdChtYXBwaW5nKSkgewogICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICAga2V5ID0gUHlJdGVyX05leHQoaXQpOwotICAgICAgICAgICAgaWYgKGtleSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkgJiYgUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19TdG9wSXRlcmF0aW9uKSkKLSAgICAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGtleSA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgb2xkdmFsID0gUHlEaWN0X0dldEl0ZW0obWFwcGluZywga2V5KTsKICAgICAgICAgICAgIGlmIChvbGR2YWwgPT0gTlVMTCkgewogICAgICAgICAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbShtYXBwaW5nLCBrZXksIG9uZSkgPT0gLTEpCkBAIC0xNTc3LDEyICsxNTc1LDggQEAKICAgICB9IGVsc2UgewogICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICAga2V5ID0gUHlJdGVyX05leHQoaXQpOwotICAgICAgICAgICAgaWYgKGtleSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkgJiYgUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19TdG9wSXRlcmF0aW9uKSkKLSAgICAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGtleSA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgb2xkdmFsID0gUHlPYmplY3RfR2V0SXRlbShtYXBwaW5nLCBrZXkpOwogICAgICAgICAgICAgaWYgKG9sZHZhbCA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpIHx8ICFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0tleUVycm9yKSkKZGlmZiAtLWdpdCBhL01vZHVsZXMvY3J5cHRtb2R1bGUuYyBiL01vZHVsZXMvX2NyeXB0bW9kdWxlLmMKc2ltaWxhcml0eSBpbmRleCA5NyUKcmVuYW1lIGZyb20gTW9kdWxlcy9jcnlwdG1vZHVsZS5jCnJlbmFtZSB0byBNb2R1bGVzL19jcnlwdG1vZHVsZS5jCmluZGV4IGQ1YTQyZmYuLjUxMDA3ODggMTAwNjQ0Ci0tLSBhL01vZHVsZXMvY3J5cHRtb2R1bGUuYworKysgYi9Nb2R1bGVzL19jcnlwdG1vZHVsZS5jCkBAIC00NSw3ICs0NSw3IEBACiAKIHN0YXRpYyBzdHJ1Y3QgUHlNb2R1bGVEZWYgY3J5cHRtb2R1bGUgPSB7CiAgICAgUHlNb2R1bGVEZWZfSEVBRF9JTklULAotICAgICJjcnlwdCIsCisgICAgIl9jcnlwdCIsCiAgICAgTlVMTCwKICAgICAtMSwKICAgICBjcnlwdF9tZXRob2RzLApAQCAtNTYsNyArNTYsNyBAQAogfTsKIAogUHlNT0RJTklUX0ZVTkMKLVB5SW5pdF9jcnlwdCh2b2lkKQorUHlJbml0X19jcnlwdCh2b2lkKQogewogICAgIHJldHVybiBQeU1vZHVsZV9DcmVhdGUoJmNyeXB0bW9kdWxlKTsKIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvX2Nzdi5jIGIvTW9kdWxlcy9fY3N2LmMKaW5kZXggYTc0OWNlYy4uNDQzMzA5YyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fY3N2LmMKKysrIGIvTW9kdWxlcy9fY3N2LmMKQEAgLTQ3LDkgKzQ3LDkgQEAKICAgICBQeU9iamVjdF9IRUFECiAKICAgICBpbnQgZG91YmxlcXVvdGU7ICAgICAgICAgICAgLyogaXMgIiByZXByZXNlbnRlZCBieSAiIj8gKi8KLSAgICBQeV9VTklDT0RFIGRlbGltaXRlcjsgICAgICAgLyogZmllbGQgc2VwYXJhdG9yICovCi0gICAgUHlfVU5JQ09ERSBxdW90ZWNoYXI7ICAgICAgIC8qIHF1b3RlIGNoYXJhY3RlciAqLwotICAgIFB5X1VOSUNPREUgZXNjYXBlY2hhcjsgICAgICAvKiBlc2NhcGUgY2hhcmFjdGVyICovCisgICAgUHlfVUNTNCBkZWxpbWl0ZXI7ICAgICAgIC8qIGZpZWxkIHNlcGFyYXRvciAqLworICAgIFB5X1VDUzQgcXVvdGVjaGFyOyAgICAgICAvKiBxdW90ZSBjaGFyYWN0ZXIgKi8KKyAgICBQeV9VQ1M0IGVzY2FwZWNoYXI7ICAgICAgLyogZXNjYXBlIGNoYXJhY3RlciAqLwogICAgIGludCBza2lwaW5pdGlhbHNwYWNlOyAgICAgICAvKiBpZ25vcmUgc3BhY2VzIGZvbGxvd2luZyBkZWxpbWl0ZXI/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+ZW5jb2RpbmcpOworICAgIHNlbGYtPmVuY29kaW5nID0gZW5jb2Rpbmc7CisgICAgcmV0dXJuIDA7Cit9CisKKwogc3RhdGljIFB5TWV0aG9kRGVmIFB5Q3Vyc2VzV2luZG93X01ldGhvZHNbXSA9IHsKICAgICB7ImFkZGNoIiwgICAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19BZGRDaCwgTUVUSF9WQVJBUkdTfSwKICAgICB7ImFkZG5zdHIiLCAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19BZGROU3RyLCBNRVRIX1ZBUkFSR1N9LApAQCAtMTYwOCw2ICsxOTk0LDkgQEAKICAgICB7ImdldGJrZ2QiLCAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19HZXRCa2dkLCBNRVRIX05PQVJHU30sCiAgICAgeyJnZXRjaCIsICAgICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNXaW5kb3dfR2V0Q2gsIE1FVEhfVkFSQVJHU30sCiAgICAgeyJnZXRrZXkiLCAgICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNXaW5kb3dfR2V0S2V5LCBNRVRIX1ZBUkFSR1N9LAorI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICB7ImdldF93Y2giLCAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19HZXRfV0NoLCBNRVRIX1ZBUkFSR1N9LAorI2VuZGlmCiAgICAgeyJnZXRtYXh5eCIsICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNXaW5kb3dfZ2V0bWF4eXgsIE1FVEhfTk9BUkdTfSwKICAgICB7ImdldHBhcnl4IiwgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19nZXRwYXJ5eCwgTUVUSF9OT0FSR1N9LAogICAgIHsiZ2V0c3RyIiwgICAgICAgICAgKFB5Q0Z1bmN0aW9uKVB5Q3Vyc2VzV2luZG93X0dldFN0ciwgTUVUSF9WQVJBUkdTfSwKQEAgLTE2NjMsNiArMjA1MiwxNCBAQAogICAgIHtOVUxMLCAgICAgICAgICAgICAgICAgIE5VTEx9ICAgLyogc2VudGluZWwgKi8KIH07CiAKK3N0YXRpYyBQeUdldFNldERlZiBQeUN1cnNlc1dpbmRvd19nZXRzZXRzW10gPSB7CisgICAgeyJlbmNvZGluZyIsCisgICAgIChnZXR0ZXIpUHlDdXJzZXNXaW5kb3dfZ2V0X2VuY29kaW5nLAorICAgICAoc2V0dGVyKVB5Q3Vyc2VzV2luZG93X3NldF9lbmNvZGluZywKKyAgICAgInRoZSB0eXBlY29kZSBjaGFyYWN0ZXIgdXNlZCB0byBjcmVhdGUgdGhlIGFycmF5In0sCisgICAge05VTEwsIE5VTEwsIE5VTEwsIE5VTEwgfSAgLyogc2VudGluZWwgKi8KK307CisKIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogCiBQeVR5cGVPYmplY3QgUHlDdXJzZXNXaW5kb3dfVHlwZSA9IHsKQEAgLTE2OTUsNiArMjA5Miw4IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlciovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlcm5leHQqLwogICAgIFB5Q3Vyc2VzV2luZG93X01ldGhvZHMsICAgICAvKnRwX21ldGhvZHMqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCisgICAgUHlDdXJzZXNXaW5kb3dfZ2V0c2V0cywgICAgIC8qIHRwX2dldHNldCAqLwogfTsKIAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgpAQCAtMTg3NSw2ICsyMjc0LDcgQEAKICAgICBXSU5ET1cgKndpbjsKIAogICAgIFB5Q3Vyc2VzSW5pdGlhbGlzZWQ7CisgICAgX1B5X0lERU5USUZJRVIocmVhZCk7CiAKICAgICBzdHJjcHkoZm4sICIvdG1wL3B5LmN1cnNlcy5nZXR3aW4uWFhYWFhYIik7CiAgICAgZmQgPSBta3N0ZW1wKGZuKTsKQEAgLTE4ODYsNyArMjI4Niw3IEBACiAgICAgICAgIHJlbW92ZShmbik7CiAgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWUoUHlFeGNfSU9FcnJvciwgZm4pOwogICAgIH0KLSAgICBkYXRhID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzdHJlYW0sICJyZWFkIiwgIiIpOworICAgIGRhdGEgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHN0cmVhbSwgJlB5SWRfcmVhZCwgIiIpOwogICAgIGlmIChkYXRhID09IE5VTEwpIHsKICAgICAgICAgZmNsb3NlKGZwKTsKICAgICAgICAgcmVtb3ZlKGZuKTsKQEAgLTE5MTcsNyArMjMxNyw3IEBACiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUN1cnNlc0Vycm9yLCBjYXRjaGFsbF9OVUxMKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiBQeUN1cnNlc1dpbmRvd19OZXcod2luKTsKKyAgICByZXR1cm4gUHlDdXJzZXNXaW5kb3dfTmV3KHdpbiwgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xOTk1LDEwICsyMzk1LDExIEBACiBQeUN1cnNlc19Jbml0U2NyKFB5T2JqZWN0ICpzZWxmKQogewogICAgIFdJTkRPVyAqd2luOworICAgIFB5Q3Vyc2VzV2luZG93T2JqZWN0ICp3aW5vYmo7CiAKICAgICBpZiAoaW5pdGlhbGlzZWQgPT0gVFJVRSkgewogICAgICAgICB3cmVmcmVzaChzdGRzY3IpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopUHlDdXJzZXNXaW5kb3dfTmV3KHN0ZHNjcik7CisgICAgICAgIHJldHVybiAoUHlPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcoc3Rkc2NyLCBOVUxMKTsKICAgICB9CiAKICAgICB3aW4gPSBpbml0c2NyKCk7CkBAIC0yMDkwLDcgKzI0OTEsOSBAQAogICAgIFNldERpY3RJbnQoIkxJTkVTIiwgTElORVMpOwogICAgIFNldERpY3RJbnQoIkNPTFMiLCBDT0xTKTsKIAotICAgIHJldHVybiAoUHlPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcod2luKTsKKyAgICB3aW5vYmogPSAoUHlDdXJzZXNXaW5kb3dPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcod2luLCBOVUxMKTsKKyAgICBzY3JlZW5fZW5jb2RpbmcgPSB3aW5vYmotPmVuY29kaW5nOworICAgIHJldHVybiAoUHlPYmplY3QgKil3aW5vYmo7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0yMjkyLDcgKzI2OTUsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopUHlDdXJzZXNXaW5kb3dfTmV3KHdpbik7CisgICAgcmV0dXJuIChQeU9iamVjdCAqKVB5Q3Vyc2VzV2luZG93X05ldyh3aW4sIE5VTEwpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMjMyNCw3ICsyNzI3LDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgcmV0dXJuIChQeU9iamVjdCAqKVB5Q3Vyc2VzV2luZG93X05ldyh3aW4pOworICAgIHJldHVybiAoUHlPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcod2luLCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI0MTYsNiArMjgxOSw4IEBACiB7CiAgICAgUHlPYmplY3QgKm87CiAgICAgUHlPYmplY3QgKm0gPSBQeUltcG9ydF9JbXBvcnRNb2R1bGVOb0Jsb2NrKCJjdXJzZXMiKTsKKyAgICBfUHlfSURFTlRJRklFUihMSU5FUyk7CisgICAgX1B5X0lERU5USUZJRVIoQ09MUyk7CiAKICAgICBpZiAoIW0pCiAgICAgICAgIHJldHVybiAwOwpAQCAtMjQyNSwxMiArMjgzMCwxMyBAQAogICAgICAgICBQeV9ERUNSRUYobSk7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLSAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhtLCAiTElORVMiLCBvKSkgeworICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKG0sICZQeUlkX0xJTkVTLCBvKSkgewogICAgICAgICBQeV9ERUNSRUYobSk7CiAgICAgICAgIFB5X0RFQ1JFRihvKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhNb2REaWN0LCAiTElORVMiLCBvKSkgeworICAgIC8qIFB5SWRfTElORVMub2JqZWN0IHdpbGwgYmUgaW5pdGlhbGl6ZWQgaGVyZS4gKi8KKyAgICBpZiAoUHlEaWN0X1NldEl0ZW0oTW9kRGljdCwgUHlJZF9MSU5FUy5vYmplY3QsIG8pKSB7CiAgICAgICAgIFB5X0RFQ1JFRihtKTsKICAgICAgICAgUHlfREVDUkVGKG8pOwogICAgICAgICByZXR1cm4gMDsKQEAgLTI0NDEsMTIgKzI4NDcsMTIgQEAKICAgICAgICAgUHlfREVDUkVGKG0pOwogICAgICAgICByZXR1cm4gMDsKICAgICB9Ci0gICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcobSwgIkNPTFMiLCBvKSkgeworICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKG0sICZQeUlkX0NPTFMsIG8pKSB7CiAgICAgICAgIFB5X0RFQ1JFRihtKTsKICAgICAgICAgUHlfREVDUkVGKG8pOwogICAgICAgICByZXR1cm4gMDsKICAgICB9Ci0gICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKE1vZERpY3QsICJDT0xTIiwgbykpIHsKKyAgICBpZiAoUHlEaWN0X1NldEl0ZW0oTW9kRGljdCwgUHlJZF9DT0xTLm9iamVjdCwgbykpIHsKICAgICAgICAgUHlfREVDUkVGKG0pOwogICAgICAgICBQeV9ERUNSRUYobyk7CiAgICAgICAgIHJldHVybiAwOwpAQCAtMjYzOCwxMCArMzA0NCw4IEBACiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiTztjaCBvciBpbnQiLCZ0ZW1wKSkgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZSh0ZW1wLCAmY2gpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudCBtdXN0IGJlIGEgY2ggb3IgYW4gaW50Iik7CisgICAgaWYgKCFQeUN1cnNlc19Db252ZXJ0VG9DaHR5cGUoTlVMTCwgdGVtcCwgJmNoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQogCiAgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZyh1bmN0cmwoY2gpKTsKIH0KQEAgLTI2NTQsMTYgKzMwNTgsODAgQEAKIAogICAgIFB5Q3Vyc2VzSW5pdGlhbGlzZWQ7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiTztjaCBvciBpbnQiLCZ0ZW1wKSkgcmV0dXJuIE5VTEw7Ci0KLSAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZSh0ZW1wLCAmY2gpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudCBtdXN0IGJlIGEgY2ggb3IgYW4gaW50Iik7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIk87Y2ggb3IgaW50IiwmdGVtcCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKworICAgIGlmICghUHlDdXJzZXNfQ29udmVydFRvQ2h0eXBlKE5VTEwsIHRlbXAsICZjaCkpCisgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIodW5nZXRjaChjaCksICJ1bmdldGNoIik7CiB9CiAKKyNpZmRlZiBIQVZFX05DVVJTRVNXCisvKiBDb252ZXJ0IGFuIG9iamVjdCB0byBhIGNoYXJhY3RlciAod2NoYXJfdCk6CisKKyAgICAtIGludAorICAgIC0gc3RyIG9mIGxlbmd0aCAxCisKKyAgIFJldHVybiAxIG9uIHN1Y2Nlc3MsIDAgb24gZXJyb3IuICovCitzdGF0aWMgaW50CitQeUN1cnNlc19Db252ZXJ0VG9XY2hhcl90KFB5T2JqZWN0ICpvYmosCisgICAgICAgICAgICAgICAgICAgICAgICAgIHdjaGFyX3QgKndjaCkKK3sKKyAgICBpZiAoUHlVbmljb2RlX0NoZWNrKG9iaikpIHsKKyAgICAgICAgd2NoYXJfdCBidWZmZXJbMl07CisgICAgICAgIGlmIChQeVVuaWNvZGVfQXNXaWRlQ2hhcihvYmosIGJ1ZmZlciwgMikgIT0gMSkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0IGJ5dGVzIG9yIHN0ciBvZiBsZW5ndGggMSwgb3IgaW50LCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgImdvdCBhIHN0ciBvZiBsZW5ndGggJXppIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgICp3Y2ggPSBidWZmZXJbMF07CisgICAgICAgIHJldHVybiAyOworICAgIH0KKyAgICBlbHNlIGlmIChQeUxvbmdfQ2hlY2tFeGFjdChvYmopKSB7CisgICAgICAgIGxvbmcgdmFsdWU7CisgICAgICAgIGludCBvdmVyZmxvdzsKKyAgICAgICAgdmFsdWUgPSBQeUxvbmdfQXNMb25nQW5kT3ZlcmZsb3cob2JqLCAmb3ZlcmZsb3cpOworICAgICAgICBpZiAob3ZlcmZsb3cpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnQgZG9lc24ndCBmaXQgaW4gbG9uZyIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgKndjaCA9ICh3Y2hhcl90KXZhbHVlOworICAgICAgICBpZiAoKGxvbmcpKndjaCAhPSB2YWx1ZSkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX092ZXJmbG93RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgImNoYXJhY3RlciBkb2Vzbid0IGZpdCBpbiB3Y2hhcl90Iik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gMTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0IGJ5dGVzIG9yIHN0ciBvZiBsZW5ndGggMSwgb3IgaW50LCBnb3QgJXMiLAorICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShvYmopLT50cF9uYW1lKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorfQorCitzdGF0aWMgUHlPYmplY3QgKgorUHlDdXJzZXNfVW5nZXRfV2NoKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb2JqOworICAgIHdjaGFyX3Qgd2NoOworCisgICAgUHlDdXJzZXNJbml0aWFsaXNlZDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCJPIiwgJm9iaikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKCFQeUN1cnNlc19Db252ZXJ0VG9XY2hhcl90KG9iaiwgJndjaCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiBQeUN1cnNlc0NoZWNrRVJSKHVuZ2V0X3djaCh3Y2gpLCAidW5nZXRfd2NoIik7Cit9CisjZW5kaWYKKwogc3RhdGljIFB5T2JqZWN0ICoKIFB5Q3Vyc2VzX1VzZV9FbnYoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewpAQCAtMjc5MSw2ICszMjU5LDkgQEAKICAgICB7InR5cGVhaGVhZCIsICAgICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNfVHlwZUFoZWFkLCBNRVRIX1ZBUkFSR1N9LAogICAgIHsidW5jdHJsIiwgICAgICAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc19VbkN0cmwsIE1FVEhfVkFSQVJHU30sCiAgICAgeyJ1bmdldGNoIiwgICAgICAgICAgICAgKFB5Q0Z1bmN0aW9uKVB5Q3Vyc2VzX1VuZ2V0Q2gsIE1FVEhfVkFSQVJHU30sCisjaWZkZWYgSEFWRV9OQ1VSU0VTVworICAgIHsidW5nZXRfd2NoIiwgICAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc19VbmdldF9XY2gsIE1FVEhfVkFSQVJHU30sCisjZW5kaWYKICAgICB7InVzZV9lbnYiLCAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNfVXNlX0VudiwgTUVUSF9WQVJBUkdTfSwKICNpZm5kZWYgU1RSSUNUX1NZU1ZfQ1VSU0VTCiAgICAgeyJ1c2VfZGVmYXVsdF9jb2xvcnMiLCAgKFB5Q0Z1bmN0aW9uKVB5Q3Vyc2VzX1VzZV9EZWZhdWx0X0NvbG9ycywgTUVUSF9OT0FSR1N9LApkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fZGF0ZXRpbWVtb2R1bGUuYyBiL01vZHVsZXMvX2RhdGV0aW1lbW9kdWxlLmMKaW5kZXggOGY1NzFhZC4uM2IwYjM2MiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fZGF0ZXRpbWVtb2R1bGUuYworKysgYi9Nb2R1bGVzL19kYXRldGltZW1vZHVsZS5jCkBAIC03NjYsNyArNzY2LDcgQEAKICAgICBQeU9iamVjdCAqbmFtZTsKIH0gUHlEYXRlVGltZV9UaW1lWm9uZTsKIAotLyogVGhlIGludGVybmVkIFVUQyB0aW1lem9uZSBpbnN0YW5jZSAqLyAKKy8qIFRoZSBpbnRlcm5lZCBVVEMgdGltZXpvbmUgaW5zdGFuY2UgKi8KIHN0YXRpYyBQeU9iamVjdCAqUHlEYXRlVGltZV9UaW1lWm9uZV9VVEM7CiAKIC8qIENyZWF0ZSBuZXcgdGltZXpvbmUgaW5zdGFuY2UgY2hlY2tpbmcgb2Zmc2V0IHJhbmdlLiAgVGhpcwpAQCAtOTQ2LDYgKzk0Niw3IEBACiBjYWxsX3R6bmFtZShQeU9iamVjdCAqdHppbmZvLCBQeU9iamVjdCAqdHppbmZvYXJnKQogewogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgX1B5X0lERU5USUZJRVIodHpuYW1lKTsKIAogICAgIGFzc2VydCh0emluZm8gIT0gTlVMTCk7CiAgICAgYXNzZXJ0KGNoZWNrX3R6aW5mb19zdWJjbGFzcyh0emluZm8pID49IDApOwpAQCAtOTU0LDcgKzk1NSw3IEBACiAgICAgaWYgKHR6aW5mbyA9PSBQeV9Ob25lKQogICAgICAgICBQeV9SRVRVUk5fTk9ORTsKIAotICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QodHppbmZvLCAidHpuYW1lIiwgIk8iLCB0emluZm9hcmcpOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodHppbmZvLCAmUHlJZF90em5hbWUsICJPIiwgdHppbmZvYXJnKTsKIAogICAgIGlmIChyZXN1bHQgPT0gTlVMTCB8fCByZXN1bHQgPT0gUHlfTm9uZSkKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTk4NSw5ICs5ODYsOCBAQAogICAgIGlmICh0emluZm8gPT0gUHlfTm9uZSkKICAgICAgICAgcmV0dXJuIHJlcHI7CiAgICAgLyogR2V0IHJpZCBvZiB0aGUgdHJhaWxpbmcgJyknLiAqLwotICAgIGFzc2VydChQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXByKVtQeVVuaWNvZGVfR0VUX1NJWkUocmVwciktMV0gPT0gJyknKTsKLSAgICB0ZW1wID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKFB5VW5pY29kZV9BU19VTklDT0RFKHJlcHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUocmVwcikgLSAxKTsKKyAgICBhc3NlcnQoUHlVbmljb2RlX1JFQURfQ0hBUihyZXByLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXByKS0xKSA9PSAnKScpOworICAgIHRlbXAgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKHJlcHIsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcHIpIC0gMSk7CiAgICAgUHlfREVDUkVGKHJlcHIpOwogICAgIGlmICh0ZW1wID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTA3OSw2ICsxMDc5LDggQEAKICAgICBQeU9iamVjdCAqdGVtcDsKICAgICBQeU9iamVjdCAqdHppbmZvID0gZ2V0X3R6aW5mb19tZW1iZXIob2JqZWN0KTsKICAgICBQeU9iamVjdCAqWnJlcGxhY2VtZW50ID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOworICAgIF9QeV9JREVOVElGSUVSKHJlcGxhY2UpOworCiAgICAgaWYgKFpyZXBsYWNlbWVudCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAodHppbmZvID09IFB5X05vbmUgfHwgdHppbmZvID09IE5VTEwpCkBAIC0xMDk5LDcgKzExMDEsNyBAQAogICAgICAqIHN0cmZ0aW1lIGRvZXNuJ3QgdHJlYXQgdGhlbSBhcyBmb3JtYXQgY29kZXMuCiAgICAgICovCiAgICAgUHlfREVDUkVGKFpyZXBsYWNlbWVudCk7Ci0gICAgWnJlcGxhY2VtZW50ID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh0ZW1wLCAicmVwbGFjZSIsICJzcyIsICIlIiwgIiUlIik7CisgICAgWnJlcGxhY2VtZW50ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCh0ZW1wLCAmUHlJZF9yZXBsYWNlLCAic3MiLCAiJSIsICIlJSIpOwogICAgIFB5X0RFQ1JFRih0ZW1wKTsKICAgICBpZiAoWnJlcGxhY2VtZW50ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTE2NiwzMSArMTE2OCw2IEBACiAgICAgaWYgKCFwaW4pCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgLyogR2l2ZSB1cCBpZiB0aGUgeWVhciBpcyBiZWZvcmUgMTAwMC4KLSAgICAgKiBQeXRob24gc3RyZnRpbWUoKSBwbGF5cyBnYW1lcyB3aXRoIHRoZSB5ZWFyLCBhbmQgZGlmZmVyZW50Ci0gICAgICogZ2FtZXMgZGVwZW5kaW5nIG9uIHdoZXRoZXIgZW52YXIgUFlUSE9OMksgaXMgc2V0LiAgVGhpcyBtYWtlcwotICAgICAqIHllYXJzIGJlZm9yZSAxMDAwIGEgbmlnaHRtYXJlLCBldmVuIGlmIHRoZSBwbGF0Zm9ybSBzdHJmdGltZQotICAgICAqIHN1cHBvcnRzIHRoZW0gKGFuZCBub3QgYWxsIGRvKS4KLSAgICAgKiBXZSBjb3VsZCBnZXQgYSBsb3QgZmFydGhlciBoZXJlIGJ5IGF2b2lkaW5nIFB5dGhvbidzIHN0cmZ0aW1lCi0gICAgICogd3JhcHBlciBhbmQgY2FsbGluZyB0aGUgQyBzdHJmdGltZSgpIGRpcmVjdGx5LCBidXQgdGhhdCBpc24ndAotICAgICAqIGFuIG9wdGlvbiBpbiB0aGUgUHl0aG9uIGltcGxlbWVudGF0aW9uIG9mIHRoaXMgbW9kdWxlLgotICAgICAqLwotICAgIHsKLSAgICAgICAgbG9uZyB5ZWFyOwotICAgICAgICBQeU9iamVjdCAqcHl5ZWFyID0gUHlTZXF1ZW5jZV9HZXRJdGVtKHRpbWV0dXBsZSwgMCk7Ci0gICAgICAgIGlmIChweXllYXIgPT0gTlVMTCkgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGFzc2VydChQeUxvbmdfQ2hlY2socHl5ZWFyKSk7Ci0gICAgICAgIHllYXIgPSBQeUxvbmdfQXNMb25nKHB5eWVhcik7Ci0gICAgICAgIFB5X0RFQ1JFRihweXllYXIpOwotICAgICAgICBpZiAoeWVhciA8IDEwMDApIHsKLSAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLCAieWVhcj0lbGQgaXMgYmVmb3JlICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAiMTAwMDsgdGhlIGRhdGV0aW1lIHN0cmZ0aW1lKCkgIgotICAgICAgICAgICAgICAgICAgICAgICAgICJtZXRob2RzIHJlcXVpcmUgeWVhciA+PSAxMDAwIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICB5ZWFyKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgfQotCiAgICAgLyogU2NhbiB0aGUgaW5wdXQgZm9ybWF0LCBsb29raW5nIGZvciAlei8lWi8lZiBlc2NhcGVzLCBidWlsZGluZwogICAgICAqIGEgbmV3IGZvcm1hdC4gIFNpbmNlIGNvbXB1dGluZyB0aGUgcmVwbGFjZW1lbnRzIGZvciB0aG9zZSBjb2RlcwogICAgICAqIGlzIGV4cGVuc2l2ZSwgZG9uJ3QgdW5sZXNzIHRoZXkncmUgYWN0dWFsbHkgdXNlZC4KQEAgLTEzMDcsMTIgKzEyODQsMTUgQEAKICAgICB7CiAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXQ7CiAgICAgICAgIFB5T2JqZWN0ICp0aW1lID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygidGltZSIpOworCiAgICAgICAgIGlmICh0aW1lID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIERvbmU7CiAgICAgICAgIGZvcm1hdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKFB5Qnl0ZXNfQVNfU1RSSU5HKG5ld2ZtdCkpOwogICAgICAgICBpZiAoZm9ybWF0ICE9IE5VTEwpIHsKLSAgICAgICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QodGltZSwgInN0cmZ0aW1lIiwgIk9PIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0LCB0aW1ldHVwbGUsIE5VTEwpOworICAgICAgICAgICAgX1B5X0lERU5USUZJRVIoc3RyZnRpbWUpOworCisgICAgICAgICAgICByZXN1bHQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHRpbWUsICZQeUlkX3N0cmZ0aW1lLCAiT08iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQsIHRpbWV0dXBsZSwgTlVMTCk7CiAgICAgICAgICAgICBQeV9ERUNSRUYoZm9ybWF0KTsKICAgICAgICAgfQogICAgICAgICBQeV9ERUNSRUYodGltZSk7CkBAIC0xMzM4LDcgKzEzMTgsOSBAQAogICAgIFB5T2JqZWN0ICp0aW1lID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygidGltZSIpOwogCiAgICAgaWYgKHRpbWUgIT0gTlVMTCkgewotICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHRpbWUsICJ0aW1lIiwgIigpIik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHRpbWUpOworCisgICAgICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodGltZSwgJlB5SWRfdGltZSwgIigpIik7CiAgICAgICAgIFB5X0RFQ1JFRih0aW1lKTsKICAgICB9CiAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTEzNTUsMTMgKzEzMzcsMTUgQEAKIAogICAgIHRpbWUgPSBQeUltcG9ydF9JbXBvcnRNb2R1bGVOb0Jsb2NrKCJ0aW1lIik7CiAgICAgaWYgKHRpbWUgIT0gTlVMTCkgewotICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHRpbWUsICJzdHJ1Y3RfdGltZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIigoaWlpaWlpaWlpKSkiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHksIG0sIGQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGgsIG1tLCBzcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ZWVrZGF5KHksIG0sIGQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRheXNfYmVmb3JlX21vbnRoKHksIG0pICsgZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkc3RmbGFnKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoc3RydWN0X3RpbWUpOworCisgICAgICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodGltZSwgJlB5SWRfc3RydWN0X3RpbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIigoaWlpaWlpaWlpKSkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHksIG0sIGQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGgsIG1tLCBzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ZWVrZGF5KHksIG0sIGQpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRheXNfYmVmb3JlX21vbnRoKHksIG0pICsgZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkc3RmbGFnKTsKICAgICAgICAgUHlfREVDUkVGKHRpbWUpOwogICAgIH0KICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMTQ2MSw3ICsxNDQ1LDcgQEAKICAgICAgICAgZ290byBEb25lOwogICAgIFB5X0RFQ1JFRih4MSk7CiAgICAgUHlfREVDUkVGKHgyKTsKLSAgICB4MSA9IHgyID0gTlVMTDsKKyAgICAvKiB4MSA9ICovIHgyID0gTlVMTDsKIAogICAgIC8qIHgzIGhhcyBkYXlzK3NlY29uZHMgaW4gc2Vjb25kcyAqLwogICAgIHgxID0gUHlOdW1iZXJfTXVsdGlwbHkoeDMsIHVzX3Blcl9zZWNvbmQpOyAgICAgICAgICAvKiB1cyAqLwpAQCAtMTU5NCwxMSArMTU3OCwxMiBAQAogICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpweXVzX2luID0gTlVMTCwgKnRlbXAsICpweXVzX291dDsKICAgICBQeU9iamVjdCAqcmF0aW8gPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKGFzX2ludGVnZXJfcmF0aW8pOwogCiAgICAgcHl1c19pbiA9IGRlbHRhX3RvX21pY3Jvc2Vjb25kcyhkZWx0YSk7CiAgICAgaWYgKHB5dXNfaW4gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmF0aW8gPSBQeU9iamVjdF9DYWxsTWV0aG9kKGZsb2F0b2JqLCAiYXNfaW50ZWdlcl9yYXRpbyIsIE5VTEwpOworICAgIHJhdGlvID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmbG9hdG9iaiwgJlB5SWRfYXNfaW50ZWdlcl9yYXRpbywgTlVMTCk7CiAgICAgaWYgKHJhdGlvID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgdGVtcCA9IFB5TnVtYmVyX011bHRpcGx5KHB5dXNfaW4sIFB5VHVwbGVfR0VUX0lURU0ocmF0aW8sIDApKTsKQEAgLTE2OTIsMTEgKzE2NzcsMTIgQEAKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKICAgICBQeU9iamVjdCAqcHl1c19pbiA9IE5VTEwsICp0ZW1wLCAqcHl1c19vdXQ7CiAgICAgUHlPYmplY3QgKnJhdGlvID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihhc19pbnRlZ2VyX3JhdGlvKTsKIAogICAgIHB5dXNfaW4gPSBkZWx0YV90b19taWNyb3NlY29uZHMoZGVsdGEpOwogICAgIGlmIChweXVzX2luID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJhdGlvID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmLCAiYXNfaW50ZWdlcl9yYXRpbyIsIE5VTEwpOworICAgIHJhdGlvID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmLCAmUHlJZF9hc19pbnRlZ2VyX3JhdGlvLCBOVUxMKTsKICAgICBpZiAocmF0aW8gPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKICAgICB0ZW1wID0gUHlOdW1iZXJfTXVsdGlwbHkocHl1c19pbiwgUHlUdXBsZV9HRVRfSVRFTShyYXRpbywgMSkpOwpAQCAtMTgzNyw4ICsxODIzLDcgQEAKICAgICAgICAgcmV0dXJuIGRpZmZfdG9fYm9vbChkaWZmLCBvcCk7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiB9CiAKQEAgLTE5MzYsMTAgKzE5MjEsOCBAQAogICAgIFB5T2JqZWN0ICpweXVzX3JlbWFpbmRlcjsKICAgICBQeU9iamVjdCAqcmVtYWluZGVyOwogCi0gICAgaWYgKCFQeURlbHRhX0NoZWNrKGxlZnQpIHx8ICFQeURlbHRhX0NoZWNrKHJpZ2h0KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlEZWx0YV9DaGVjayhsZWZ0KSB8fCAhUHlEZWx0YV9DaGVjayhyaWdodCkpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIAogICAgIHB5dXNfbGVmdCA9IGRlbHRhX3RvX21pY3Jvc2Vjb25kcygoUHlEYXRlVGltZV9EZWx0YSAqKWxlZnQpOwogICAgIGlmIChweXVzX2xlZnQgPT0gTlVMTCkKQEAgLTE5NzQsMTAgKzE5NTcsOCBAQAogICAgIFB5T2JqZWN0ICpkZWx0YTsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCi0gICAgaWYgKCFQeURlbHRhX0NoZWNrKGxlZnQpIHx8ICFQeURlbHRhX0NoZWNrKHJpZ2h0KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlEZWx0YV9DaGVjayhsZWZ0KSB8fCAhUHlEZWx0YV9DaGVjayhyaWdodCkpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIAogICAgIHB5dXNfbGVmdCA9IGRlbHRhX3RvX21pY3Jvc2Vjb25kcygoUHlEYXRlVGltZV9EZWx0YSAqKWxlZnQpOwogICAgIGlmIChweXVzX2xlZnQgPT0gTlVMTCkKQEAgLTI0OTIsNiArMjQ3Myw3IEBACiB7CiAgICAgUHlPYmplY3QgKnRpbWU7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihmcm9tdGltZXN0YW1wKTsKIAogICAgIHRpbWUgPSB0aW1lX3RpbWUoKTsKICAgICBpZiAodGltZSA9PSBOVUxMKQpAQCAtMjUwMyw3ICsyNDg1LDcgQEAKICAgICAgKiB0aW1lLnRpbWUoKSBkZWxpdmVyczsgaWYgc29tZW9uZSB3ZXJlIGdvbnpvIGFib3V0IG9wdGltaXphdGlvbiwKICAgICAgKiBkYXRlLnRvZGF5KCkgY291bGQgZ2V0IGF3YXkgd2l0aCBwbGFpbiBDIHRpbWUoKS4KICAgICAgKi8KLSAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGNscywgImZyb210aW1lc3RhbXAiLCAiTyIsIHRpbWUpOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoY2xzLCAmUHlJZF9mcm9tdGltZXN0YW1wLCAiTyIsIHRpbWUpOwogICAgIFB5X0RFQ1JFRih0aW1lKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQpAQCAtMjU3MSwxMCArMjU1Myw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogZGF0ZV9hZGQoUHlPYmplY3QgKmxlZnQsIFB5T2JqZWN0ICpyaWdodCkKIHsKLSAgICBpZiAoUHlEYXRlVGltZV9DaGVjayhsZWZ0KSB8fCBQeURhdGVUaW1lX0NoZWNrKHJpZ2h0KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmIChQeURhdGVUaW1lX0NoZWNrKGxlZnQpIHx8IFB5RGF0ZVRpbWVfQ2hlY2socmlnaHQpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CisKICAgICBpZiAoUHlEYXRlX0NoZWNrKGxlZnQpKSB7CiAgICAgICAgIC8qIGRhdGUgKyA/Pz8gKi8KICAgICAgICAgaWYgKFB5RGVsdGFfQ2hlY2socmlnaHQpKQpAQCAtMjU5MywxNyArMjU3NCwxNSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlEYXRlVGltZV9EZWx0YSAqKSBsZWZ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsKICAgICB9Ci0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogZGF0ZV9zdWJ0cmFjdChQeU9iamVjdCAqbGVmdCwgUHlPYmplY3QgKnJpZ2h0KQogewotICAgIGlmIChQeURhdGVUaW1lX0NoZWNrKGxlZnQpIHx8IFB5RGF0ZVRpbWVfQ2hlY2socmlnaHQpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKFB5RGF0ZVRpbWVfQ2hlY2sobGVmdCkgfHwgUHlEYXRlVGltZV9DaGVjayhyaWdodCkpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKKwogICAgIGlmIChQeURhdGVfQ2hlY2sobGVmdCkpIHsKICAgICAgICAgaWYgKFB5RGF0ZV9DaGVjayhyaWdodCkpIHsKICAgICAgICAgICAgIC8qIGRhdGUgLSBkYXRlICovCkBAIC0yNjIyLDggKzI2MDEsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxKTsKICAgICAgICAgfQogICAgIH0KLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIApAQCAtMjY0OCw3ICsyNjI2LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBkYXRlX3N0cihQeURhdGVUaW1lX0RhdGUgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgImlzb2Zvcm1hdCIsICIoKSIpOworICAgIF9QeV9JREVOVElGSUVSKGlzb2Zvcm1hdCk7CisKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF9pc29mb3JtYXQsICIoKSIpOwogfQogCiAKQEAgLTI2NjcsMTMgKzI2NDcsMTQgQEAKICAgICBQeU9iamVjdCAqcmVzdWx0OwogICAgIFB5T2JqZWN0ICp0dXBsZTsKICAgICBQeU9iamVjdCAqZm9ybWF0OworICAgIF9QeV9JREVOVElGSUVSKHRpbWV0dXBsZSk7CiAgICAgc3RhdGljIGNoYXIgKmtleXdvcmRzW10gPSB7ImZvcm1hdCIsIE5VTEx9OwogCiAgICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3LCAiVTpzdHJmdGltZSIsIGtleXdvcmRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICB0dXBsZSA9IFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgInRpbWV0dXBsZSIsICIoKSIpOworICAgIHR1cGxlID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF90aW1ldHVwbGUsICIoKSIpOwogICAgIGlmICh0dXBsZSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICByZXN1bHQgPSB3cmFwX3N0cmZ0aW1lKChQeU9iamVjdCAqKXNlbGYsIGZvcm1hdCwgdHVwbGUsCkBAIC0yNjg2LDE1ICsyNjY3LDE2IEBACiBkYXRlX2Zvcm1hdChQeURhdGVUaW1lX0RhdGUgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5T2JqZWN0ICpmb3JtYXQ7CisgICAgX1B5X0lERU5USUZJRVIoc3RyZnRpbWUpOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOl9fZm9ybWF0X18iLCAmZm9ybWF0KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICAvKiBpZiB0aGUgZm9ybWF0IGlzIHplcm8gbGVuZ3RoLCByZXR1cm4gc3RyKHNlbGYpICovCi0gICAgaWYgKFB5VW5pY29kZV9HZXRTaXplKGZvcm1hdCkgPT0gMCkKKyAgICBpZiAoUHlVbmljb2RlX0dldExlbmd0aChmb3JtYXQpID09IDApCiAgICAgICAgIHJldHVybiBQeU9iamVjdF9TdHIoKFB5T2JqZWN0ICopc2VsZik7CiAKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZCgoUHlPYmplY3QgKilzZWxmLCAic3RyZnRpbWUiLCAiTyIsIGZvcm1hdCk7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoKFB5T2JqZWN0ICopc2VsZiwgJlB5SWRfc3RyZnRpbWUsICJPIiwgZm9ybWF0KTsKIH0KIAogLyogSVNPIG1ldGhvZHMuICovCkBAIC0yNzQwLDEwICsyNzIyLDggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgX1B5RGF0ZVRpbWVfREFURV9EQVRBU0laRSk7CiAgICAgICAgIHJldHVybiBkaWZmX3RvX2Jvb2woZGlmZiwgb3ApOwogICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBlbHNlCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI3NzUsMjcgKzI3NTUsMTAgQEAKICAgICByZXR1cm4gY2xvbmU7CiB9CiAKLS8qCi0gICAgQm9ycm93ZWQgZnJvbSBzdHJpbmdvYmplY3QuYywgb3JpZ2luYWxseSBpdCB3YXMgc3RyaW5nX2hhc2goKQotKi8KIHN0YXRpYyBQeV9oYXNoX3QKIGdlbmVyaWNfaGFzaCh1bnNpZ25lZCBjaGFyICpkYXRhLCBpbnQgbGVuKQogewotICAgIHJlZ2lzdGVyIHVuc2lnbmVkIGNoYXIgKnA7Ci0gICAgcmVnaXN0ZXIgUHlfaGFzaF90IHg7Ci0KLSAgICBhc3NlcnQoX1B5X0hhc2hTZWNyZXRfSW5pdGlhbGl6ZWQpOwotICAgIHAgPSAodW5zaWduZWQgY2hhciAqKSBkYXRhOwotICAgIHggPSBfUHlfSGFzaFNlY3JldC5wcmVmaXg7Ci0gICAgeCBePSAqcCA8PCA3OwotICAgIHdoaWxlICgtLWxlbiA+PSAwKQotICAgICAgICB4ID0gKDEwMDAwMDMqeCkgXiAqcCsrOwotICAgIHggXj0gbGVuOwotICAgIHggXj0gX1B5X0hhc2hTZWNyZXQuc3VmZml4OwotICAgIGlmICh4ID09IC0xKQotICAgICAgICB4ID0gLTI7Ci0KLSAgICByZXR1cm4geDsKKyAgICByZXR1cm4gX1B5X0hhc2hCeXRlcyhkYXRhLCBsZW4pOwogfQogCiAKQEAgLTMxMDAsMTIgKzMwNjMsMTQgQEAKIHsKICAgICBQeU9iamVjdCAqYXJncywgKnN0YXRlLCAqdG1wOwogICAgIFB5T2JqZWN0ICpnZXRpbml0YXJncywgKmdldHN0YXRlOworICAgIF9QeV9JREVOVElGSUVSKF9fZ2V0aW5pdGFyZ3NfXyk7CisgICAgX1B5X0lERU5USUZJRVIoX19nZXRzdGF0ZV9fKTsKIAogICAgIHRtcCA9IFB5VHVwbGVfTmV3KDApOwogICAgIGlmICh0bXAgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBnZXRpbml0YXJncyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoc2VsZiwgIl9fZ2V0aW5pdGFyZ3NfXyIpOworICAgIGdldGluaXRhcmdzID0gX1B5T2JqZWN0X0dldEF0dHJJZChzZWxmLCAmUHlJZF9fX2dldGluaXRhcmdzX18pOwogICAgIGlmIChnZXRpbml0YXJncyAhPSBOVUxMKSB7CiAgICAgICAgIGFyZ3MgPSBQeU9iamVjdF9DYWxsT2JqZWN0KGdldGluaXRhcmdzLCB0bXApOwogICAgICAgICBQeV9ERUNSRUYoZ2V0aW5pdGFyZ3MpOwpAQCAtMzEyMCw3ICszMDg1LDcgQEAKICAgICAgICAgUHlfSU5DUkVGKGFyZ3MpOwogICAgIH0KIAotICAgIGdldHN0YXRlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhzZWxmLCAiX19nZXRzdGF0ZV9fIik7CisgICAgZ2V0c3RhdGUgPSBfUHlPYmplY3RfR2V0QXR0cklkKHNlbGYsICZQeUlkX19fZ2V0c3RhdGVfXyk7CiAgICAgaWYgKGdldHN0YXRlICE9IE5VTEwpIHsKICAgICAgICAgc3RhdGUgPSBQeU9iamVjdF9DYWxsT2JqZWN0KGdldHN0YXRlLCB0bXApOwogICAgICAgICBQeV9ERUNSRUYoZ2V0c3RhdGUpOwpAQCAtMzI0MywxMCArMzIwOCw4IEBACiB0aW1lem9uZV9yaWNoY29tcGFyZShQeURhdGVUaW1lX1RpbWVab25lICpzZWxmLAogICAgICAgICAgICAgICAgICAgICAgUHlEYXRlVGltZV9UaW1lWm9uZSAqb3RoZXIsIGludCBvcCkKIHsKLSAgICBpZiAob3AgIT0gUHlfRVEgJiYgb3AgIT0gUHlfTkUpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBpZiAob3AgIT0gUHlfRVEgJiYgb3AgIT0gUHlfTkUpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICByZXR1cm4gZGVsdGFfcmljaGNvbXBhcmUoc2VsZi0+b2Zmc2V0LCBvdGhlci0+b2Zmc2V0LCBvcCk7CiB9CiAKQEAgLTMyOTEsNyArMzI1NCw2IEBACiBzdGF0aWMgUHlPYmplY3QgKgogdGltZXpvbmVfc3RyKFB5RGF0ZVRpbWVfVGltZVpvbmUgKnNlbGYpCiB7Ci0gICAgY2hhciBidWZbMTBdOwogICAgIGludCBob3VycywgbWludXRlcywgc2Vjb25kczsKICAgICBQeU9iamVjdCAqb2Zmc2V0OwogICAgIGNoYXIgc2lnbjsKQEAgLTMzMTcsMTEgKzMyNzksOSBAQAogICAgIFB5X0RFQ1JFRihvZmZzZXQpOwogICAgIG1pbnV0ZXMgPSBkaXZtb2Qoc2Vjb25kcywgNjAsICZzZWNvbmRzKTsKICAgICBob3VycyA9IGRpdm1vZChtaW51dGVzLCA2MCwgJm1pbnV0ZXMpOwotICAgIGFzc2VydChzZWNvbmRzID09IDApOwogICAgIC8qIFhYWCBpZ25vcmUgc3ViLW1pbnV0ZSBkYXRhLCBjdXJlbnRseSBub3QgYWxsb3dlZC4gKi8KLSAgICBQeU9TX3NucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICJVVEMlYyUwMmQ6JTAyZCIsIHNpZ24sIGhvdXJzLCBtaW51dGVzKTsKLQotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhidWYpOworICAgIGFzc2VydChzZWNvbmRzID09IDApOworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiVVRDJWMlMDJkOiUwMmQiLCBzaWduLCBob3VycywgbWludXRlcyk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0zNjE4LDcgKzM1NzgsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHRpbWVfc3RyKFB5RGF0ZVRpbWVfVGltZSAqc2VsZikKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZCgoUHlPYmplY3QgKilzZWxmLCAiaXNvZm9ybWF0IiwgIigpIik7CisgICAgX1B5X0lERU5USUZJRVIoaXNvZm9ybWF0KTsKKworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCAqKXNlbGYsICZQeUlkX2lzb2Zvcm1hdCwgIigpIik7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0zNjk1LDEwICszNjU3LDggQEAKICAgICBQeU9iamVjdCAqb2Zmc2V0MSwgKm9mZnNldDI7CiAgICAgaW50IGRpZmY7CiAKLSAgICBpZiAoISBQeVRpbWVfQ2hlY2sob3RoZXIpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCEgUHlUaW1lX0NoZWNrKG90aGVyKSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogCiAgICAgaWYgKEdFVF9USU1FX1RaSU5GTyhzZWxmKSA9PSBHRVRfVElNRV9UWklORk8ob3RoZXIpKSB7CiAgICAgICAgIGRpZmYgPSBtZW1jbXAoKChQeURhdGVUaW1lX1RpbWUgKilzZWxmKS0+ZGF0YSwKQEAgLTQxOTksNyArNDE1OSw5IEBACiAgICAgaWYgKHNlbGYgIT0gTlVMTCAmJiB0emluZm8gIT0gUHlfTm9uZSkgewogICAgICAgICAvKiBDb252ZXJ0IFVUQyB0byB0emluZm8ncyB6b25lLiAqLwogICAgICAgICBQeU9iamVjdCAqdGVtcCA9IHNlbGY7Ci0gICAgICAgIHNlbGYgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHR6aW5mbywgImZyb211dGMiLCAiTyIsIHNlbGYpOworICAgICAgICBfUHlfSURFTlRJRklFUihmcm9tdXRjKTsKKworICAgICAgICBzZWxmID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCh0emluZm8sICZQeUlkX2Zyb211dGMsICJPIiwgc2VsZik7CiAgICAgICAgIFB5X0RFQ1JFRih0ZW1wKTsKICAgICB9CiAgICAgcmV0dXJuIHNlbGY7CkBAIC00MjM2LDcgKzQxOTgsOSBAQAogICAgIGlmIChzZWxmICE9IE5VTEwgJiYgdHppbmZvICE9IFB5X05vbmUpIHsKICAgICAgICAgLyogQ29udmVydCBVVEMgdG8gdHppbmZvJ3Mgem9uZS4gKi8KICAgICAgICAgUHlPYmplY3QgKnRlbXAgPSBzZWxmOwotICAgICAgICBzZWxmID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh0emluZm8sICJmcm9tdXRjIiwgIk8iLCBzZWxmKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZnJvbXV0Yyk7CisKKyAgICAgICAgc2VsZiA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodHppbmZvLCAmUHlJZF9mcm9tdXRjLCAiTyIsIHNlbGYpOwogICAgICAgICBQeV9ERUNSRUYodGVtcCk7CiAgICAgfQogICAgIHJldHVybiBzZWxmOwpAQCAtNDI2MCw5ICs0MjI0LDEwIEBACiBkYXRldGltZV9zdHJwdGltZShQeU9iamVjdCAqY2xzLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBzdGF0aWMgUHlPYmplY3QgKm1vZHVsZSA9IE5VTEw7Ci0gICAgY29uc3QgUHlfVU5JQ09ERSAqc3RyaW5nLCAqZm9ybWF0OworICAgIFB5T2JqZWN0ICpzdHJpbmcsICpmb3JtYXQ7CisgICAgX1B5X0lERU5USUZJRVIoX3N0cnB0aW1lX2RhdGV0aW1lKTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAidXU6c3RycHRpbWUiLCAmc3RyaW5nLCAmZm9ybWF0KSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVVOnN0cnB0aW1lIiwgJnN0cmluZywgJmZvcm1hdCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYgKG1vZHVsZSA9PSBOVUxMKSB7CkBAIC00MjcwLDggKzQyMzUsOCBAQAogICAgICAgICBpZiAobW9kdWxlID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QobW9kdWxlLCAiX3N0cnB0aW1lX2RhdGV0aW1lIiwgIk91dSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xzLCBzdHJpbmcsIGZvcm1hdCk7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQobW9kdWxlLCAmUHlJZF9fc3RycHRpbWVfZGF0ZXRpbWUsICJPT08iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xzLCBzdHJpbmcsIGZvcm1hdCk7CiB9CiAKIC8qIFJldHVybiBuZXcgZGF0ZXRpbWUgZnJvbSBkYXRlL2RhdGV0aW1lIGFuZCB0aW1lIGFyZ3VtZW50cy4gKi8KQEAgLTQzODcsOCArNDM1Miw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeURhdGVUaW1lX0RlbHRhICopIGxlZnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEpOwogICAgIH0KLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC00NTE3LDcgKzQ0ODEsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGRhdGV0aW1lX3N0cihQeURhdGVUaW1lX0RhdGVUaW1lICpzZWxmKQogewotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKChQeU9iamVjdCAqKXNlbGYsICJpc29mb3JtYXQiLCAiKHMpIiwgIiAiKTsKKyAgICBfUHlfSURFTlRJRklFUihpc29mb3JtYXQpOworCisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoKFB5T2JqZWN0ICopc2VsZiwgJlB5SWRfaXNvZm9ybWF0LCAiKHMpIiwgIiAiKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTQ1OTAsOCArNDU1Niw3IEBACiAgICAgICAgICAgICAgICAgUHlfUkVUVVJOX1RSVUU7CiAgICAgICAgICAgICByZXR1cm4gY21wZXJyb3Ioc2VsZiwgb3RoZXIpOwogICAgICAgICB9Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KIAogICAgIGlmIChHRVRfRFRfVFpJTkZPKHNlbGYpID09IEdFVF9EVF9UWklORk8ob3RoZXIpKSB7CkBAIC00NzI1LDYgKzQ2OTAsNyBAQAogICAgIFB5T2JqZWN0ICpvZmZzZXQ7CiAgICAgUHlPYmplY3QgKnRlbXA7CiAgICAgUHlPYmplY3QgKnR6aW5mbzsKKyAgICBfUHlfSURFTlRJRklFUihmcm9tdXRjKTsKICAgICBzdGF0aWMgY2hhciAqa2V5d29yZHNbXSA9IHsidHoiLCBOVUxMfTsKIAogICAgIGlmICghIFB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrdywgIk8hOmFzdGltZXpvbmUiLCBrZXl3b3JkcywKQEAgLTQ3NjYsNyArNDczMiw3IEBACiAgICAgUHlfREVDUkVGKHRlbXApOwogCiAgICAgdGVtcCA9IHJlc3VsdDsKLSAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHR6aW5mbywgImZyb211dGMiLCAiTyIsIHRlbXApOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodHppbmZvLCAmUHlJZF9mcm9tdXRjLCAiTyIsIHRlbXApOwogICAgIFB5X0RFQ1JFRih0ZW1wKTsKIAogICAgIHJldHVybiByZXN1bHQ7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19kYm1tb2R1bGUuYyBiL01vZHVsZXMvX2RibW1vZHVsZS5jCmluZGV4IDgyN2FjY2UuLjMyN2I4NzMgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2RibW1vZHVsZS5jCisrKyBiL01vZHVsZXMvX2RibW1vZHVsZS5jCkBAIC0yMTIsNiArMjEyLDcgQEAKIHsKICAgICBkYm1vYmplY3QgKmRwID0gKGRibW9iamVjdCAqKXNlbGY7CiAgICAgZGF0dW0ga2V5LCB2YWw7CisgICAgUHlfc3NpemVfdCBzaXplOwogCiAgICAgaWYgKChkcCktPmRpX2RibSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhEYm1FcnJvciwKQEAgLTIxOSw4ICsyMjAsOSBAQAogICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKGFyZykpIHsKLSAgICAgICAgYXJnID0gX1B5VW5pY29kZV9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nKGFyZywgTlVMTCk7Ci0gICAgICAgIGlmIChhcmcgPT0gTlVMTCkKKyAgICAgICAga2V5LmRwdHIgPSBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZShhcmcsICZzaXplKTsKKyAgICAgICAga2V5LmRzaXplID0gc2l6ZTsKKyAgICAgICAgaWYgKGtleS5kcHRyID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIGlmICghUHlCeXRlc19DaGVjayhhcmcpKSB7CkBAIC0yMjksOCArMjMxLDEwIEBACiAgICAgICAgICAgICAgICAgICAgICBhcmctPm9iX3R5cGUtPnRwX25hbWUpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQotICAgIGtleS5kcHRyID0gUHlCeXRlc19BU19TVFJJTkcoYXJnKTsKLSAgICBrZXkuZHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKGFyZyk7CisgICAgZWxzZSB7CisgICAgICAgIGtleS5kcHRyID0gUHlCeXRlc19BU19TVFJJTkcoYXJnKTsKKyAgICAgICAga2V5LmRzaXplID0gUHlCeXRlc19HRVRfU0laRShhcmcpOworICAgIH0KICAgICB2YWwgPSBkYm1fZmV0Y2goZHAtPmRpX2RibSwga2V5KTsKICAgICByZXR1cm4gdmFsLmRwdHIgIT0gTlVMTDsKIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvX2VsZW1lbnR0cmVlLmMgYi9Nb2R1bGVzL19lbGVtZW50dHJlZS5jCmluZGV4IDc4ODc3MjEuLjM0OGZlZmMgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2VsZW1lbnR0cmVlLmMKKysrIGIvTW9kdWxlcy9fZWxlbWVudHRyZWUuYwpAQCAtNzAsNyArNzAsNyBAQAogICAgaGVscHMgaWYgeW91IGhhdmUgbG90cyBvZiBsZWFmIG5vZGVzIHdpdGggYXR0cmlidXRlcykuICovCiAKIC8qIEFsc28gbm90ZSB0aGF0IHB5bWFsbG9jIGFsd2F5cyBhbGxvY2F0ZXMgYmxvY2tzIGluIG11bHRpcGxlcyBvZgotICAgZWlnaHQgYnl0ZXMuICBGb3IgdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBjRWxlbWVudFRyZWUsIHRoaXMgbWVhbnMKKyAgIGVpZ2h0IGJ5dGVzLiAgRm9yIHRoZSBjdXJyZW50IEMgdmVyc2lvbiBvZiBFbGVtZW50VHJlZSwgdGhpcyBtZWFucwogICAgdGhhdCB0aGUgbnVtYmVyIG9mIGNoaWxkcmVuIHNob3VsZCBiZSBhbiBldmVuIG51bWJlciwgYXQgbGVhc3Qgb24KICAgIDMyLWJpdCBwbGF0Zm9ybXMuICovCiAKQEAgLTk0LDI1ICs5NCw2IEBACiAjZGVmaW5lIExPQ0FMKHR5cGUpIHN0YXRpYyB0eXBlCiAjZW5kaWYKIAotLyogY29tcGF0aWJpbGl0eSBtYWNyb3MgKi8KLSNpZiAoUFlfVkVSU0lPTl9IRVggPCAweDAyMDYwMDAwKQotI2RlZmluZSBQeV9SRUZDTlQob2IpICgoKFB5T2JqZWN0Kikob2IpKS0+b2JfcmVmY250KQotI2RlZmluZSBQeV9UWVBFKG9iKSAoKChQeU9iamVjdCopKG9iKSktPm9iX3R5cGUpCi0jZW5kaWYKLQotI2lmIChQWV9WRVJTSU9OX0hFWCA8IDB4MDIwNTAwMDApCi10eXBlZGVmIGludCBQeV9zc2l6ZV90OwotI2RlZmluZSBsZW5mdW5jIGlucXVpcnkKLSNlbmRpZgotCi0jaWYgKFBZX1ZFUlNJT05fSEVYIDwgMHgwMjA0MDAwMCkKLSNkZWZpbmUgUHlEaWN0X0NoZWNrRXhhY3QgUHlEaWN0X0NoZWNrCi0KLSNpZiAhZGVmaW5lZChQeV9SRVRVUk5fTk9ORSkKLSNkZWZpbmUgUHlfUkVUVVJOX05PTkUgcmV0dXJuIFB5X0lOQ1JFRihQeV9Ob25lKSwgUHlfTm9uZQotI2VuZGlmCi0jZW5kaWYKLQogLyogbWFjcm9zIHVzZWQgdG8gc3RvcmUgJ2pvaW4nIGZsYWdzIGluIHN0cmluZyBvYmplY3QgcG9pbnRlcnMuICBub3RlCiAgICB0aGF0IGFsbCB1c2Ugb2YgdGV4dCBhbmQgdGFpbCBhcyBvYmplY3QgcG9pbnRlcnMgbXVzdCBiZSB3cmFwcGVkIGluCiAgICBKT0lOX09CSi4gIHNlZSBjb21tZW50cyBpbiB0aGUgRWxlbWVudE9iamVjdCBkZWZpbml0aW9uIGZvciBtb3JlCkBAIC0xMjMsNyArMTA0LDYgQEAKIAogLyogZ2x1ZSBmdW5jdGlvbnMgKHNlZSB0aGUgaW5pdCBmdW5jdGlvbiBmb3IgZGV0YWlscykgKi8KIHN0YXRpYyBQeU9iamVjdCogZWxlbWVudHRyZWVfcGFyc2VlcnJvcl9vYmo7Ci1zdGF0aWMgUHlPYmplY3QqIGVsZW1lbnR0cmVlX2NvcHllbGVtZW50X29iajsKIHN0YXRpYyBQeU9iamVjdCogZWxlbWVudHRyZWVfZGVlcGNvcHlfb2JqOwogc3RhdGljIFB5T2JqZWN0KiBlbGVtZW50dHJlZV9pdGVyX29iajsKIHN0YXRpYyBQeU9iamVjdCogZWxlbWVudHRyZWVfaXRlcnRleHRfb2JqOwpAQCAtMjExLDcgKzE5MSw3IEBACiB9CiAKIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi0vKiB0aGUgZWxlbWVudCB0eXBlICovCisvKiB0aGUgRWxlbWVudCB0eXBlICovCiAKIHR5cGVkZWYgc3RydWN0IHsKIApAQCAtMjI2LDcgKzIwNiw3IEBACiAgICAgUHlPYmplY3QqICpjaGlsZHJlbjsKIAogICAgIFB5T2JqZWN0KiBfY2hpbGRyZW5bU1RBVElDX0NISUxEUkVOXTsKLSAgICAKKwogfSBFbGVtZW50T2JqZWN0RXh0cmE7CiAKIHR5cGVkZWYgc3RydWN0IHsKQEAgLTI1NiwxMCArMjM2LDEwIEBACiAjZGVmaW5lIEVsZW1lbnRfQ2hlY2tFeGFjdChvcCkgKFB5X1RZUEUob3ApID09ICZFbGVtZW50X1R5cGUpCiAKIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi0vKiBlbGVtZW50IGNvbnN0cnVjdG9yIGFuZCBkZXN0cnVjdG9yICovCisvKiBFbGVtZW50IGNvbnN0cnVjdG9ycyBhbmQgZGVzdHJ1Y3RvciAqLwogCiBMT0NBTChpbnQpCi1lbGVtZW50X25ld19leHRyYShFbGVtZW50T2JqZWN0KiBzZWxmLCBQeU9iamVjdCogYXR0cmliKQorY3JlYXRlX2V4dHJhKEVsZW1lbnRPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBhdHRyaWIpCiB7CiAgICAgc2VsZi0+ZXh0cmEgPSBQeU9iamVjdF9NYWxsb2Moc2l6ZW9mKEVsZW1lbnRPYmplY3RFeHRyYSkpOwogICAgIGlmICghc2VsZi0+ZXh0cmEpCkBAIC0yNzksNyArMjU5LDcgQEAKIH0KIAogTE9DQUwodm9pZCkKLWVsZW1lbnRfZGVhbGxvY19leHRyYShFbGVtZW50T2JqZWN0KiBzZWxmKQorZGVhbGxvY19leHRyYShFbGVtZW50T2JqZWN0KiBzZWxmKQogewogICAgIGludCBpOwogCkBAIC0yOTQsOCArMjc0LDExIEBACiAgICAgUHlPYmplY3RfRnJlZShzZWxmLT5leHRyYSk7CiB9CiAKKy8qIENvbnZlbmllbmNlIGludGVybmFsIGZ1bmN0aW9uIHRvIGNyZWF0ZSBuZXcgRWxlbWVudCBvYmplY3RzIHdpdGggdGhlIGdpdmVuCisgKiB0YWcgYW5kIGF0dHJpYnV0ZXMuCisqLwogTE9DQUwoUHlPYmplY3QqKQotZWxlbWVudF9uZXcoUHlPYmplY3QqIHRhZywgUHlPYmplY3QqIGF0dHJpYikKK2NyZWF0ZV9uZXdfZWxlbWVudChQeU9iamVjdCogdGFnLCBQeU9iamVjdCogYXR0cmliKQogewogICAgIEVsZW1lbnRPYmplY3QqIHNlbGY7CiAKQEAgLTMxMCwxNiArMjkzLDEwIEBACiAgICAgc2VsZi0+ZXh0cmEgPSBOVUxMOwogCiAgICAgaWYgKGF0dHJpYiAhPSBQeV9Ob25lKSB7Ci0KLSAgICAgICAgaWYgKGVsZW1lbnRfbmV3X2V4dHJhKHNlbGYsIGF0dHJpYikgPCAwKSB7CisgICAgICAgIGlmIChjcmVhdGVfZXh0cmEoc2VsZiwgYXR0cmliKSA8IDApIHsKICAgICAgICAgICAgIFB5T2JqZWN0X0RlbChzZWxmKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0KLSAgICAgICAgc2VsZi0+ZXh0cmEtPmxlbmd0aCA9IDA7Ci0gICAgICAgIHNlbGYtPmV4dHJhLT5hbGxvY2F0ZWQgPSBTVEFUSUNfQ0hJTERSRU47Ci0gICAgICAgIHNlbGYtPmV4dHJhLT5jaGlsZHJlbiA9IHNlbGYtPmV4dHJhLT5fY2hpbGRyZW47Ci0KICAgICB9CiAKICAgICBQeV9JTkNSRUYodGFnKTsKQEAgLTMzNiw2ICszMTMsODYgQEAKICAgICByZXR1cm4gKFB5T2JqZWN0Kikgc2VsZjsKIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK2VsZW1lbnRfbmV3KFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQoreworICAgIEVsZW1lbnRPYmplY3QgKmUgPSAoRWxlbWVudE9iamVjdCAqKXR5cGUtPnRwX2FsbG9jKHR5cGUsIDApOworICAgIGlmIChlICE9IE5VTEwpIHsKKyAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICBlLT50YWcgPSBQeV9Ob25lOworCisgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgZS0+dGV4dCA9IFB5X05vbmU7CisKKyAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICBlLT50YWlsID0gUHlfTm9uZTsKKworICAgICAgICBlLT5leHRyYSA9IE5VTEw7CisgICAgfQorICAgIHJldHVybiAoUHlPYmplY3QgKillOworfQorCitzdGF0aWMgaW50CitlbGVtZW50X2luaXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICBQeU9iamVjdCAqdGFnOworICAgIFB5T2JqZWN0ICp0bXA7CisgICAgUHlPYmplY3QgKmF0dHJpYiA9IE5VTEw7CisgICAgRWxlbWVudE9iamVjdCAqc2VsZl9lbGVtOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPfE8hOkVsZW1lbnQiLCAmdGFnLCAmUHlEaWN0X1R5cGUsICZhdHRyaWIpKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBpZiAoYXR0cmliIHx8IGt3ZHMpIHsKKyAgICAgICAgYXR0cmliID0gKGF0dHJpYikgPyBQeURpY3RfQ29weShhdHRyaWIpIDogUHlEaWN0X05ldygpOworICAgICAgICBpZiAoIWF0dHJpYikKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgaWYgKGt3ZHMpCisgICAgICAgICAgICBQeURpY3RfVXBkYXRlKGF0dHJpYiwga3dkcyk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICBhdHRyaWIgPSBQeV9Ob25lOworICAgIH0KKworICAgIHNlbGZfZWxlbSA9IChFbGVtZW50T2JqZWN0ICopc2VsZjsKKworICAgIC8qIFVzZSBOb25lIGZvciBlbXB0eSBkaWN0aW9uYXJpZXMgKi8KKyAgICBpZiAoUHlEaWN0X0NoZWNrRXhhY3QoYXR0cmliKSAmJiBQeURpY3RfU2l6ZShhdHRyaWIpID09IDApIHsKKyAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICBhdHRyaWIgPSBQeV9Ob25lOworICAgIH0KKworICAgIGlmIChhdHRyaWIgIT0gUHlfTm9uZSkgeworICAgICAgICBpZiAoY3JlYXRlX2V4dHJhKHNlbGZfZWxlbSwgYXR0cmliKSA8IDApIHsKKyAgICAgICAgICAgIFB5T2JqZWN0X0RlbChzZWxmX2VsZW0pOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgfQorCisgICAgLyogSWYgY3JlYXRlX2V4dHJhIG5lZWRlZCBhdHRyaWIsIGl0IHRvb2sgYSByZWZlcmVuY2UgdG8gaXQsIHNvIHdlIGNhbgorICAgICAqIHJlbGVhc2Ugb3VycyBhbnl3YXkuCisgICAgKi8KKyAgICBQeV9ERUNSRUYoYXR0cmliKTsKKworICAgIC8qIFJlcGxhY2UgdGhlIG9iamVjdHMgYWxyZWFkeSBwb2ludGVkIHRvIGJ5IHRhZywgdGV4dCBhbmQgdGFpbC4gKi8KKyAgICB0bXAgPSBzZWxmX2VsZW0tPnRhZzsKKyAgICBzZWxmX2VsZW0tPnRhZyA9IHRhZzsKKyAgICBQeV9JTkNSRUYodGFnKTsKKyAgICBQeV9ERUNSRUYodG1wKTsKKworICAgIHRtcCA9IHNlbGZfZWxlbS0+dGV4dDsKKyAgICBzZWxmX2VsZW0tPnRleHQgPSBQeV9Ob25lOworICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICBQeV9ERUNSRUYoSk9JTl9PQkoodG1wKSk7CisKKyAgICB0bXAgPSBzZWxmX2VsZW0tPnRhaWw7CisgICAgc2VsZl9lbGVtLT50YWlsID0gUHlfTm9uZTsKKyAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CisgICAgUHlfREVDUkVGKEpPSU5fT0JKKHRtcCkpOworCisgICAgcmV0dXJuIDA7Cit9CisKIExPQ0FMKGludCkKIGVsZW1lbnRfcmVzaXplKEVsZW1lbnRPYmplY3QqIHNlbGYsIGludCBleHRyYSkKIHsKQEAgLTM0Niw3ICs0MDMsNyBAQAogICAgICAgIGVsZW1lbnRzLiAgc2V0IGFuIGV4Y2VwdGlvbiBhbmQgcmV0dXJuIC0xIGlmIGFsbG9jYXRpb24gZmFpbGVkICovCiAKICAgICBpZiAoIXNlbGYtPmV4dHJhKQotICAgICAgICBlbGVtZW50X25ld19leHRyYShzZWxmLCBOVUxMKTsKKyAgICAgICAgY3JlYXRlX2V4dHJhKHNlbGYsIE5VTEwpOwogCiAgICAgc2l6ZSA9IHNlbGYtPmV4dHJhLT5sZW5ndGggKyBleHRyYTsKIApAQCAtMzU0LDE0ICs0MTEsMTQgQEAKICAgICAgICAgLyogdXNlIFB5dGhvbiAyLjQncyBsaXN0IGdyb3d0aCBzdHJhdGVneSAqLwogICAgICAgICBzaXplID0gKHNpemUgPj4gMykgKyAoc2l6ZSA8IDkgPyAzIDogNikgKyBzaXplOwogICAgICAgICAvKiBDb3Zlcml0eSBDSUQgIzE4MiBzaXplX2Vycm9yOiBBbGxvY2F0aW5nIDEgYnl0ZXMgdG8gcG9pbnRlciAiY2hpbGRyZW4iCi0gICAgICAgICAqIHdoaWNoIG5lZWRzIGF0IGxlYXN0IDQgYnl0ZXMuIAotICAgICAgICAgKiBBbHRob3VnaCBpdCdzIGEgZmFsc2UgYWxhcm0gYWx3YXlzIGFzc3VtZSBhdCBsZWFzdCBvbmUgY2hpbGQgdG8gCisgICAgICAgICAqIHdoaWNoIG5lZWRzIGF0IGxlYXN0IDQgYnl0ZXMuCisgICAgICAgICAqIEFsdGhvdWdoIGl0J3MgYSBmYWxzZSBhbGFybSBhbHdheXMgYXNzdW1lIGF0IGxlYXN0IG9uZSBjaGlsZCB0bwogICAgICAgICAgKiBiZSBzYWZlLgogICAgICAgICAgKi8KICAgICAgICAgc2l6ZSA9IHNpemUgPyBzaXplIDogMTsKICAgICAgICAgaWYgKHNlbGYtPmV4dHJhLT5jaGlsZHJlbiAhPSBzZWxmLT5leHRyYS0+X2NoaWxkcmVuKSB7CiAgICAgICAgICAgICAvKiBDb3Zlcml0eSBDSUQgIzE4MiBzaXplX2Vycm9yOiBBbGxvY2F0aW5nIDEgYnl0ZXMgdG8gcG9pbnRlcgotICAgICAgICAgICAgICogImNoaWxkcmVuIiwgd2hpY2ggbmVlZHMgYXQgbGVhc3QgNCBieXRlcy4gQWx0aG91Z2ggaXQncyBhIAorICAgICAgICAgICAgICogImNoaWxkcmVuIiwgd2hpY2ggbmVlZHMgYXQgbGVhc3QgNCBieXRlcy4gQWx0aG91Z2ggaXQncyBhCiAgICAgICAgICAgICAgKiBmYWxzZSBhbGFybSBhbHdheXMgYXNzdW1lIGF0IGxlYXN0IG9uZSBjaGlsZCB0byBiZSBzYWZlLgogICAgICAgICAgICAgICovCiAgICAgICAgICAgICBjaGlsZHJlbiA9IFB5T2JqZWN0X1JlYWxsb2Moc2VsZi0+ZXh0cmEtPmNoaWxkcmVuLApAQCAtNDY0LDM1ICs1MjEsNiBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QqCi1lbGVtZW50KFB5T2JqZWN0KiBzZWxmLCBQeU9iamVjdCogYXJncywgUHlPYmplY3QqIGt3KQotewotICAgIFB5T2JqZWN0KiBlbGVtOwotCi0gICAgUHlPYmplY3QqIHRhZzsKLSAgICBQeU9iamVjdCogYXR0cmliID0gTlVMTDsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98TyE6RWxlbWVudCIsICZ0YWcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZQeURpY3RfVHlwZSwgJmF0dHJpYikpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgaWYgKGF0dHJpYiB8fCBrdykgewotICAgICAgICBhdHRyaWIgPSAoYXR0cmliKSA/IFB5RGljdF9Db3B5KGF0dHJpYikgOiBQeURpY3RfTmV3KCk7Ci0gICAgICAgIGlmICghYXR0cmliKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGlmIChrdykKLSAgICAgICAgICAgIFB5RGljdF9VcGRhdGUoYXR0cmliLCBrdyk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwotICAgICAgICBhdHRyaWIgPSBQeV9Ob25lOwotICAgIH0KLQotICAgIGVsZW0gPSBlbGVtZW50X25ldyh0YWcsIGF0dHJpYik7Ci0KLSAgICBQeV9ERUNSRUYoYXR0cmliKTsKLQotICAgIHJldHVybiBlbGVtOwotfQotCi1zdGF0aWMgUHlPYmplY3QqCiBzdWJlbGVtZW50KFB5T2JqZWN0KiBzZWxmLCBQeU9iamVjdCogYXJncywgUHlPYmplY3QqIGt3KQogewogICAgIFB5T2JqZWN0KiBlbGVtOwpAQCAtNTE2LDcgKzU0NCw3IEBACiAgICAgICAgIGF0dHJpYiA9IFB5X05vbmU7CiAgICAgfQogCi0gICAgZWxlbSA9IGVsZW1lbnRfbmV3KHRhZywgYXR0cmliKTsKKyAgICBlbGVtID0gY3JlYXRlX25ld19lbGVtZW50KHRhZywgYXR0cmliKTsKIAogICAgIFB5X0RFQ1JFRihhdHRyaWIpOwogCkBAIC01MzIsNyArNTYwLDcgQEAKIGVsZW1lbnRfZGVhbGxvYyhFbGVtZW50T2JqZWN0KiBzZWxmKQogewogICAgIGlmIChzZWxmLT5leHRyYSkKLSAgICAgICAgZWxlbWVudF9kZWFsbG9jX2V4dHJhKHNlbGYpOworICAgICAgICBkZWFsbG9jX2V4dHJhKHNlbGYpOwogCiAgICAgLyogZGlzY2FyZCBhdHRyaWJ1dGVzICovCiAgICAgUHlfREVDUkVGKHNlbGYtPnRhZyk7CkBAIC01NDEsNyArNTY5LDcgQEAKIAogICAgIFJFTEVBU0Uoc2l6ZW9mKEVsZW1lbnRPYmplY3QpLCAiZGVzdHJveSBlbGVtZW50Iik7CiAKLSAgICBQeU9iamVjdF9EZWwoc2VsZik7CisgICAgUHlfVFlQRShzZWxmKS0+dHBfZnJlZSgoUHlPYmplY3QgKilzZWxmKTsKIH0KIAogLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KQEAgLTU2Nyw3ICs1OTUsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmIChzZWxmLT5leHRyYSkgewotICAgICAgICBlbGVtZW50X2RlYWxsb2NfZXh0cmEoc2VsZik7CisgICAgICAgIGRlYWxsb2NfZXh0cmEoc2VsZik7CiAgICAgICAgIHNlbGYtPmV4dHJhID0gTlVMTDsKICAgICB9CiAKQEAgLTU5MSw3ICs2MTksNyBAQAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiOl9fY29weV9fIikpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgZWxlbWVudCA9IChFbGVtZW50T2JqZWN0KikgZWxlbWVudF9uZXcoCisgICAgZWxlbWVudCA9IChFbGVtZW50T2JqZWN0KikgY3JlYXRlX25ld19lbGVtZW50KAogICAgICAgICBzZWxmLT50YWcsIChzZWxmLT5leHRyYSkgPyBzZWxmLT5leHRyYS0+YXR0cmliIDogUHlfTm9uZQogICAgICAgICApOwogICAgIGlmICghZWxlbWVudCkKQEAgLTYwNiw3ICs2MzQsNyBAQAogICAgIFB5X0lOQ1JFRihKT0lOX09CSihlbGVtZW50LT50YWlsKSk7CiAKICAgICBpZiAoc2VsZi0+ZXh0cmEpIHsKLSAgICAgICAgCisKICAgICAgICAgaWYgKGVsZW1lbnRfcmVzaXplKGVsZW1lbnQsIHNlbGYtPmV4dHJhLT5sZW5ndGgpIDwgMCkgewogICAgICAgICAgICAgUHlfREVDUkVGKGVsZW1lbnQpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC02MTgsNyArNjQ2LDcgQEAKICAgICAgICAgfQogCiAgICAgICAgIGVsZW1lbnQtPmV4dHJhLT5sZW5ndGggPSBzZWxmLT5leHRyYS0+bGVuZ3RoOwotICAgICAgICAKKwogICAgIH0KIAogICAgIHJldHVybiAoUHlPYmplY3QqKSBlbGVtZW50OwpAQCAtNjU0LDE0ICs2ODIsMTQgQEAKICAgICAgICAgYXR0cmliID0gUHlfTm9uZTsKICAgICB9CiAKLSAgICBlbGVtZW50ID0gKEVsZW1lbnRPYmplY3QqKSBlbGVtZW50X25ldyh0YWcsIGF0dHJpYik7CisgICAgZWxlbWVudCA9IChFbGVtZW50T2JqZWN0KikgY3JlYXRlX25ld19lbGVtZW50KHRhZywgYXR0cmliKTsKIAogICAgIFB5X0RFQ1JFRih0YWcpOwogICAgIFB5X0RFQ1JFRihhdHRyaWIpOwogCiAgICAgaWYgKCFlbGVtZW50KQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAKKwogICAgIHRleHQgPSBkZWVwY29weShKT0lOX09CSihzZWxmLT50ZXh0KSwgbWVtbyk7CiAgICAgaWYgKCF0ZXh0KQogICAgICAgICBnb3RvIGVycm9yOwpAQCAtNjc1LDcgKzcwMyw3IEBACiAgICAgZWxlbWVudC0+dGFpbCA9IEpPSU5fU0VUKHRhaWwsIEpPSU5fR0VUKHNlbGYtPnRhaWwpKTsKIAogICAgIGlmIChzZWxmLT5leHRyYSkgewotICAgICAgICAKKwogICAgICAgICBpZiAoZWxlbWVudF9yZXNpemUoZWxlbWVudCwgc2VsZi0+ZXh0cmEtPmxlbmd0aCkgPCAwKQogICAgICAgICAgICAgZ290byBlcnJvcjsKIApAQCAtNjg5LDcgKzcxNyw3IEBACiAgICAgICAgIH0KIAogICAgICAgICBlbGVtZW50LT5leHRyYS0+bGVuZ3RoID0gc2VsZi0+ZXh0cmEtPmxlbmd0aDsKLSAgICAgICAgCisKICAgICB9CiAKICAgICAvKiBhZGQgb2JqZWN0IHRvIG1lbW8gZGljdGlvbmFyeSAoc28gZGVlcGNvcHkgd29uJ3QgdmlzaXQgaXQgYWdhaW4pICovCkBAIC03MjMsMTMgKzc1MSwxNiBAQAogICAgIChjaCA9PSAnLycgfHwgY2ggPT0gJyonIHx8IGNoID09ICdbJyB8fCBjaCA9PSAnQCcgfHwgY2ggPT0gJy4nKQogCiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayh0YWcpKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh0YWcpOwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlVbmljb2RlX0dFVF9TSVpFKHRhZyk7IGkrKykgewotICAgICAgICAgICAgaWYgKHBbaV0gPT0gJ3snKQorICAgICAgICBjb25zdCBQeV9zc2l6ZV90IGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHRhZyk7CisgICAgICAgIHZvaWQgKmRhdGEgPSBQeVVuaWNvZGVfREFUQSh0YWcpOworICAgICAgICB1bnNpZ25lZCBpbnQga2luZCA9IFB5VW5pY29kZV9LSU5EKHRhZyk7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgeworICAgICAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICAgICAgaWYgKGNoID09ICd7JykKICAgICAgICAgICAgICAgICBjaGVjayA9IDA7Ci0gICAgICAgICAgICBlbHNlIGlmIChwW2ldID09ICd9JykKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoID09ICd9JykKICAgICAgICAgICAgICAgICBjaGVjayA9IDE7Ci0gICAgICAgICAgICBlbHNlIGlmIChjaGVjayAmJiBQQVRIQ0hBUihwW2ldKSkKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrICYmIFBBVEhDSEFSKGNoKSkKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gMDsKQEAgLTc4NywyMCArODE4LDIyIEBACiBlbGVtZW50X2ZpbmQoRWxlbWVudE9iamVjdCogc2VsZiwgUHlPYmplY3QqIGFyZ3MpCiB7CiAgICAgaW50IGk7Ci0KICAgICBQeU9iamVjdCogdGFnOwogICAgIFB5T2JqZWN0KiBuYW1lc3BhY2VzID0gUHlfTm9uZTsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xPOmZpbmQiLCAmdGFnLCAmbmFtZXNwYWNlcykpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKGNoZWNrcGF0aCh0YWcpIHx8IG5hbWVzcGFjZXMgIT0gUHlfTm9uZSkKLSAgICAgICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICBlbGVtZW50cGF0aF9vYmosICJmaW5kIiwgIk9PTyIsIHNlbGYsIHRhZywgbmFtZXNwYWNlcworICAgIGlmIChjaGVja3BhdGgodGFnKSB8fCBuYW1lc3BhY2VzICE9IFB5X05vbmUpIHsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZmluZCk7CisgICAgICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKAorICAgICAgICAgICAgZWxlbWVudHBhdGhfb2JqLCAmUHlJZF9maW5kLCAiT09PIiwgc2VsZiwgdGFnLCBuYW1lc3BhY2VzCiAgICAgICAgICAgICApOworICAgIH0KIAogICAgIGlmICghc2VsZi0+ZXh0cmEpCiAgICAgICAgIFB5X1JFVFVSTl9OT05FOwotICAgICAgICAKKwogICAgIGZvciAoaSA9IDA7IGkgPCBzZWxmLT5leHRyYS0+bGVuZ3RoOyBpKyspIHsKICAgICAgICAgUHlPYmplY3QqIGl0ZW0gPSBzZWxmLT5leHRyYS0+Y2hpbGRyZW5baV07CiAgICAgICAgIGlmIChFbGVtZW50X0NoZWNrRXhhY3QoaXRlbSkgJiYKQEAgLTgxNywxNiArODUwLDE3IEBACiBlbGVtZW50X2ZpbmR0ZXh0KEVsZW1lbnRPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBhcmdzKQogewogICAgIGludCBpOwotCiAgICAgUHlPYmplY3QqIHRhZzsKICAgICBQeU9iamVjdCogZGVmYXVsdF92YWx1ZSA9IFB5X05vbmU7CiAgICAgUHlPYmplY3QqIG5hbWVzcGFjZXMgPSBQeV9Ob25lOworICAgIF9QeV9JREVOVElGSUVSKGZpbmR0ZXh0KTsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xPTzpmaW5kdGV4dCIsICZ0YWcsICZkZWZhdWx0X3ZhbHVlLCAmbmFtZXNwYWNlcykpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYgKGNoZWNrcGF0aCh0YWcpIHx8IG5hbWVzcGFjZXMgIT0gUHlfTm9uZSkKLSAgICAgICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICBlbGVtZW50cGF0aF9vYmosICJmaW5kdGV4dCIsICJPT09PIiwgc2VsZiwgdGFnLCBkZWZhdWx0X3ZhbHVlLCBuYW1lc3BhY2VzCisgICAgICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKAorICAgICAgICAgICAgZWxlbWVudHBhdGhfb2JqLCAmUHlJZF9maW5kdGV4dCwgIk9PT08iLCBzZWxmLCB0YWcsIGRlZmF1bHRfdmFsdWUsIG5hbWVzcGFjZXMKICAgICAgICAgICAgICk7CiAKICAgICBpZiAoIXNlbGYtPmV4dHJhKSB7CkBAIC04NTUsMTYgKzg4OSwxOCBAQAogewogICAgIGludCBpOwogICAgIFB5T2JqZWN0KiBvdXQ7Ci0KICAgICBQeU9iamVjdCogdGFnOwogICAgIFB5T2JqZWN0KiBuYW1lc3BhY2VzID0gUHlfTm9uZTsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xPOmZpbmRhbGwiLCAmdGFnLCAmbmFtZXNwYWNlcykpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKGNoZWNrcGF0aCh0YWcpIHx8IG5hbWVzcGFjZXMgIT0gUHlfTm9uZSkKLSAgICAgICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICBlbGVtZW50cGF0aF9vYmosICJmaW5kYWxsIiwgIk9PTyIsIHNlbGYsIHRhZywgbmFtZXNwYWNlcworICAgIGlmIChjaGVja3BhdGgodGFnKSB8fCBuYW1lc3BhY2VzICE9IFB5X05vbmUpIHsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZmluZGFsbCk7CisgICAgICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKAorICAgICAgICAgICAgZWxlbWVudHBhdGhfb2JqLCAmUHlJZF9maW5kYWxsLCAiT09PIiwgc2VsZiwgdGFnLCBuYW1lc3BhY2VzCiAgICAgICAgICAgICApOworICAgIH0KIAogICAgIG91dCA9IFB5TGlzdF9OZXcoMCk7CiAgICAgaWYgKCFvdXQpCkBAIC04OTIsMTEgKzkyOCwxMyBAQAogewogICAgIFB5T2JqZWN0KiB0YWc7CiAgICAgUHlPYmplY3QqIG5hbWVzcGFjZXMgPSBQeV9Ob25lOworICAgIF9QeV9JREVOVElGSUVSKGl0ZXJmaW5kKTsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xPOml0ZXJmaW5kIiwgJnRhZywgJm5hbWVzcGFjZXMpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKAotICAgICAgICBlbGVtZW50cGF0aF9vYmosICJpdGVyZmluZCIsICJPT08iLCBzZWxmLCB0YWcsIG5hbWVzcGFjZXMKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgKKyAgICAgICAgZWxlbWVudHBhdGhfb2JqLCAmUHlJZF9pdGVyZmluZCwgIk9PTyIsIHNlbGYsIHRhZywgbmFtZXNwYWNlcwogICAgICAgICApOwogfQogCkBAIC05NTMsNyArOTkxLDcgQEAKIGVsZW1lbnRfaXRlcihFbGVtZW50T2JqZWN0KiBzZWxmLCBQeU9iamVjdCogYXJncykKIHsKICAgICBQeU9iamVjdCogcmVzdWx0OwotICAgIAorCiAgICAgUHlPYmplY3QqIHRhZyA9IFB5X05vbmU7CiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8TzppdGVyIiwgJnRhZykpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtOTg1LDcgKzEwMjMsNyBAQAogZWxlbWVudF9pdGVydGV4dChFbGVtZW50T2JqZWN0KiBzZWxmLCBQeU9iamVjdCogYXJncykKIHsKICAgICBQeU9iamVjdCogcmVzdWx0OwotICAgIAorCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICI6aXRlcnRleHQiKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTEwMzksNyArMTA3Nyw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYgKCFzZWxmLT5leHRyYSkKLSAgICAgICAgZWxlbWVudF9uZXdfZXh0cmEoc2VsZiwgTlVMTCk7CisgICAgICAgIGNyZWF0ZV9leHRyYShzZWxmLCBOVUxMKTsKIAogICAgIGlmIChpbmRleCA8IDApIHsKICAgICAgICAgaW5kZXggKz0gc2VsZi0+ZXh0cmEtPmxlbmd0aDsKQEAgLTExMTAsNyArMTE0OCw3IEBACiAgICAgaWYgKCFhdHRyaWIpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgZWxlbSA9IGVsZW1lbnRfbmV3KHRhZywgYXR0cmliKTsKKyAgICBlbGVtID0gY3JlYXRlX25ld19lbGVtZW50KHRhZywgYXR0cmliKTsKIAogICAgIFB5X0RFQ1JFRihhdHRyaWIpOwogCkBAIC0xMTE4LDMxICsxMTU2LDYgQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0KgotZWxlbWVudF9yZWR1Y2UoRWxlbWVudE9iamVjdCogc2VsZiwgUHlPYmplY3QqIGFyZ3MpCi17Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICI6X19yZWR1Y2VfXyIpKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIC8qIEhhY2sgYWxlcnQ6IFRoaXMgbWV0aG9kIGlzIHVzZWQgdG8gd29yayBhcm91bmQgYSBfX2NvcHlfXwotICAgICAgIHByb2JsZW0gb24gY2VydGFpbiAyLjMgYW5kIDIuNCB2ZXJzaW9ucy4gIFRvIHNhdmUgdGltZSBhbmQKLSAgICAgICBzaW1wbGlmeSB0aGUgY29kZSwgd2UgY3JlYXRlIHRoZSBjb3B5IGluIGhlcmUsIGFuZCB1c2UgYSBkdW1teQotICAgICAgIGNvcHllbGVtZW50IGhlbHBlciB0byB0cmljayB0aGUgY29weSBtb2R1bGUgaW50byBkb2luZyB0aGUKLSAgICAgICByaWdodCB0aGluZy4gKi8KLQotICAgIGlmICghZWxlbWVudHRyZWVfY29weWVsZW1lbnRfb2JqKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZygKLSAgICAgICAgICAgIFB5RXhjX1J1bnRpbWVFcnJvciwKLSAgICAgICAgICAgICJjb3B5ZWxlbWVudCBoZWxwZXIgbm90IGZvdW5kIgotICAgICAgICAgICAgKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoCi0gICAgICAgICJPKE4pIiwgZWxlbWVudHRyZWVfY29weWVsZW1lbnRfb2JqLCBlbGVtZW50X2NvcHkoc2VsZiwgYXJncykKLSAgICAgICAgKTsKLX0KLQotc3RhdGljIFB5T2JqZWN0KgogZWxlbWVudF9yZW1vdmUoRWxlbWVudE9iamVjdCogc2VsZiwgUHlPYmplY3QqIGFyZ3MpCiB7CiAgICAgaW50IGk7CkBAIC0xMTg5LDcgKzEyMDIsMTAgQEAKIHN0YXRpYyBQeU9iamVjdCoKIGVsZW1lbnRfcmVwcihFbGVtZW50T2JqZWN0KiBzZWxmKQogewotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPEVsZW1lbnQgJVIgYXQgJXA+Iiwgc2VsZi0+dGFnLCBzZWxmKTsKKyAgICBpZiAoc2VsZi0+dGFnKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjxFbGVtZW50ICVSIGF0ICVwPiIsIHNlbGYtPnRhZywgc2VsZik7CisgICAgZWxzZQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjxFbGVtZW50IGF0ICVwPiIsIHNlbGYpOwogfQogCiBzdGF0aWMgUHlPYmplY3QqCkBAIC0xMjAzLDcgKzEyMTksNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmICghc2VsZi0+ZXh0cmEpCi0gICAgICAgIGVsZW1lbnRfbmV3X2V4dHJhKHNlbGYsIE5VTEwpOworICAgICAgICBjcmVhdGVfZXh0cmEoc2VsZiwgTlVMTCk7CiAKICAgICBhdHRyaWIgPSBlbGVtZW50X2dldF9hdHRyaWIoc2VsZik7CiAgICAgaWYgKCFhdHRyaWIpCkBAIC0xMjUwLDEzICsxMjY2LDggQEAKIHsKICAgICBFbGVtZW50T2JqZWN0KiBzZWxmID0gKEVsZW1lbnRPYmplY3QqKSBzZWxmXzsKIAotI2lmIChQWV9WRVJTSU9OX0hFWCA8IDB4MDIwNTAwMDApCi0gICAgaWYgKFB5SW50X0NoZWNrKGl0ZW0pIHx8IFB5TG9uZ19DaGVjayhpdGVtKSkgewotICAgICAgICBsb25nIGkgPSBQeUludF9Bc0xvbmcoaXRlbSk7Ci0jZWxzZQogICAgIGlmIChQeUluZGV4X0NoZWNrKGl0ZW0pKSB7CiAgICAgICAgIFB5X3NzaXplX3QgaSA9IFB5TnVtYmVyX0FzU3NpemVfdChpdGVtLCBQeUV4Y19JbmRleEVycm9yKTsKLSNlbmRpZgogCiAgICAgICAgIGlmIChpID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpIHsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTMwNywxMyArMTMxOCw4IEBACiB7CiAgICAgRWxlbWVudE9iamVjdCogc2VsZiA9IChFbGVtZW50T2JqZWN0Kikgc2VsZl87CiAKLSNpZiAoUFlfVkVSU0lPTl9IRVggPCAweDAyMDUwMDAwKQotICAgIGlmIChQeUludF9DaGVjayhpdGVtKSB8fCBQeUxvbmdfQ2hlY2soaXRlbSkpIHsKLSAgICAgICAgbG9uZyBpID0gUHlJbnRfQXNMb25nKGl0ZW0pOwotI2Vsc2UKICAgICBpZiAoUHlJbmRleF9DaGVjayhpdGVtKSkgewogICAgICAgICBQeV9zc2l6ZV90IGkgPSBQeU51bWJlcl9Bc1NzaXplX3QoaXRlbSwgUHlFeGNfSW5kZXhFcnJvcik7Ci0jZW5kaWYKIAogICAgICAgICBpZiAoaSA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKSB7CiAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC0xMzI5LDcgKzEzMzUsNyBAQAogICAgICAgICBQeU9iamVjdCogc2VxID0gTlVMTDsKIAogICAgICAgICBpZiAoIXNlbGYtPmV4dHJhKQotICAgICAgICAgICAgZWxlbWVudF9uZXdfZXh0cmEoc2VsZiwgTlVMTCk7CisgICAgICAgICAgICBjcmVhdGVfZXh0cmEoc2VsZiwgTlVMTCk7CiAKICAgICAgICAgaWYgKFB5U2xpY2VfR2V0SW5kaWNlc0V4KGl0ZW0sCiAgICAgICAgICAgICAgICAgc2VsZi0+ZXh0cmEtPmxlbmd0aCwKQEAgLTEzNTQsMTMgKzEzNjAsOCBAQAogICAgICAgICBpZiAoc3RlcCAhPSAgMSAmJiBuZXdsZW4gIT0gc2xpY2VsZW4pCiAgICAgICAgIHsKICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAotI2lmIChQWV9WRVJTSU9OX0hFWCA8IDB4MDIwNTAwMDApCi0gICAgICAgICAgICAgICAgImF0dGVtcHQgdG8gYXNzaWduIHNlcXVlbmNlIG9mIHNpemUgJWQgIgotICAgICAgICAgICAgICAgICJ0byBleHRlbmRlZCBzbGljZSBvZiBzaXplICVkIiwKLSNlbHNlCiAgICAgICAgICAgICAgICAgImF0dGVtcHQgdG8gYXNzaWduIHNlcXVlbmNlIG9mIHNpemUgJXpkICIKICAgICAgICAgICAgICAgICAidG8gZXh0ZW5kZWQgc2xpY2Ugb2Ygc2l6ZSAlemQiLAotI2VuZGlmCiAgICAgICAgICAgICAgICAgbmV3bGVuLCBzbGljZWxlbgogICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC0xNDYwLDE4ICsxNDYxLDYgQEAKICAgICB7Il9fY29weV9fIiwgKFB5Q0Z1bmN0aW9uKSBlbGVtZW50X2NvcHksIE1FVEhfVkFSQVJHU30sCiAgICAgeyJfX2RlZXBjb3B5X18iLCAoUHlDRnVuY3Rpb24pIGVsZW1lbnRfZGVlcGNvcHksIE1FVEhfVkFSQVJHU30sCiAKLSAgICAvKiBTb21lIDIuMyBhbmQgMi40IHZlcnNpb25zIGRvIG5vdCBoYW5kbGUgdGhlIF9fY29weV9fIG1ldGhvZCBvbgotICAgICAgIEMgb2JqZWN0cyBjb3JyZWN0bHksIHNvIHdlIGhhdmUgdG8gZmFrZSBpdCB1c2luZyBhIF9fcmVkdWNlX18tCi0gICAgICAgYmFzZWQgaGFjayAoc2VlIHRoZSBlbGVtZW50X3JlZHVjZSBpbXBsZW1lbnRhdGlvbiBhYm92ZSBmb3IKLSAgICAgICBkZXRhaWxzKS4gKi8KLQotICAgIC8qIFRoZSBiZWhhdmlvdXIgaGFzIGJlZW4gY2hhbmdlZCBpbiAyLjMuNSBhbmQgMi40LjEsIHNvIHdlJ3JlCi0gICAgICAgdXNpbmcgYSBydW50aW1lIHRlc3QgdG8gZmlndXJlIG91dCBpZiB3ZSBuZWVkIHRvIGZha2UgdGhpbmdzCi0gICAgICAgb3Igbm93IChzZWUgdGhlIGluaXQgY29kZSBiZWxvdykuICBUaGUgZm9sbG93aW5nIGVudHJ5IGlzCi0gICAgICAgZW5hYmxlZCBvbmx5IGlmIHRoZSBoYWNrIGlzIG5lZWRlZC4gKi8KLQotICAgIHsiIV9fcmVkdWNlX18iLCAoUHlDRnVuY3Rpb24pIGVsZW1lbnRfcmVkdWNlLCBNRVRIX1ZBUkFSR1N9LAotCiAgICAge05VTEwsIE5VTEx9CiB9OwogCkBAIC0xNDgzLDcgKzE0NzIsNyBAQAogCiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhuYW1lb2JqKSkKICAgICAgICAgbmFtZSA9IF9QeVVuaWNvZGVfQXNTdHJpbmcobmFtZW9iaik7Ci0gICAgCisKICAgICBpZiAobmFtZSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIApAQCAtMTUxMCw3ICsxNDk5LDcgQEAKICAgICB9IGVsc2UgaWYgKHN0cmNtcChuYW1lLCAiYXR0cmliIikgPT0gMCkgewogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICBpZiAoIXNlbGYtPmV4dHJhKQotICAgICAgICAgICAgZWxlbWVudF9uZXdfZXh0cmEoc2VsZiwgTlVMTCk7CisgICAgICAgICAgICBjcmVhdGVfZXh0cmEoc2VsZiwgTlVMTCk7CiAgICAgICAgIHJlcyA9IGVsZW1lbnRfZ2V0X2F0dHJpYihzZWxmKTsKICAgICB9CiAKQEAgLTE1NDYsNyArMTUzNSw3IEBACiAgICAgICAgIFB5X0lOQ1JFRihzZWxmLT50YWlsKTsKICAgICB9IGVsc2UgaWYgKHN0cmNtcChuYW1lLCAiYXR0cmliIikgPT0gMCkgewogICAgICAgICBpZiAoIXNlbGYtPmV4dHJhKQotICAgICAgICAgICAgZWxlbWVudF9uZXdfZXh0cmEoc2VsZiwgTlVMTCk7CisgICAgICAgICAgICBjcmVhdGVfZXh0cmEoc2VsZiwgTlVMTCk7CiAgICAgICAgIFB5X0RFQ1JFRihzZWxmLT5leHRyYS0+YXR0cmliKTsKICAgICAgICAgc2VsZi0+ZXh0cmEtPmF0dHJpYiA9IHZhbHVlOwogICAgICAgICBQeV9JTkNSRUYoc2VsZi0+ZXh0cmEtPmF0dHJpYik7CkBAIC0xNTc4LDMxICsxNTY3LDQxIEBACiAgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCiAgICAgIkVsZW1lbnQiLCBzaXplb2YoRWxlbWVudE9iamVjdCksIDAsCiAgICAgLyogbWV0aG9kcyAqLwotICAgIChkZXN0cnVjdG9yKWVsZW1lbnRfZGVhbGxvYywgLyogdHBfZGVhbGxvYyAqLwotICAgIDAsIC8qIHRwX3ByaW50ICovCi0gICAgMCwgLyogdHBfZ2V0YXR0ciAqLwotICAgIChzZXRhdHRyZnVuYyllbGVtZW50X3NldGF0dHIsIC8qIHRwX3NldGF0dHIgKi8KLSAgICAwLCAvKiB0cF9yZXNlcnZlZCAqLwotICAgIChyZXByZnVuYyllbGVtZW50X3JlcHIsIC8qIHRwX3JlcHIgKi8KLSAgICAwLCAvKiB0cF9hc19udW1iZXIgKi8KLSAgICAmZWxlbWVudF9hc19zZXF1ZW5jZSwgLyogdHBfYXNfc2VxdWVuY2UgKi8KLSAgICAmZWxlbWVudF9hc19tYXBwaW5nLCAvKiB0cF9hc19tYXBwaW5nICovCi0gICAgMCwgLyogdHBfaGFzaCAqLwotICAgIDAsIC8qIHRwX2NhbGwgKi8KLSAgICAwLCAvKiB0cF9zdHIgKi8KLSAgICAoZ2V0YXR0cm9mdW5jKWVsZW1lbnRfZ2V0YXR0cm8sIC8qIHRwX2dldGF0dHJvICovCi0gICAgMCwgLyogdHBfc2V0YXR0cm8gKi8KLSAgICAwLCAvKiB0cF9hc19idWZmZXIgKi8KLSAgICBQeV9UUEZMQUdTX0RFRkFVTFQsIC8qIHRwX2ZsYWdzICovCi0gICAgMCwgLyogdHBfZG9jICovCi0gICAgMCwgLyogdHBfdHJhdmVyc2UgKi8KLSAgICAwLCAvKiB0cF9jbGVhciAqLwotICAgIDAsIC8qIHRwX3JpY2hjb21wYXJlICovCi0gICAgMCwgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KLSAgICAwLCAvKiB0cF9pdGVyICovCi0gICAgMCwgLyogdHBfaXRlcm5leHQgKi8KLSAgICBlbGVtZW50X21ldGhvZHMsIC8qIHRwX21ldGhvZHMgKi8KLSAgICAwLCAvKiB0cF9tZW1iZXJzICovCisgICAgKGRlc3RydWN0b3IpZWxlbWVudF9kZWFsbG9jLCAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVhbGxvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3ByaW50ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0ciAqLworICAgIChzZXRhdHRyZnVuYyllbGVtZW50X3NldGF0dHIsICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yZXNlcnZlZCAqLworICAgIChyZXByZnVuYyllbGVtZW50X3JlcHIsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JlcHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KKyAgICAmZWxlbWVudF9hc19zZXF1ZW5jZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLworICAgICZlbGVtZW50X2FzX21hcHBpbmcsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX21hcHBpbmcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2FsbCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3N0ciAqLworICAgIChnZXRhdHRyb2Z1bmMpZWxlbWVudF9nZXRhdHRybywgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KKyAgICBQeV9UUEZMQUdTX0RFRkFVTFQgfCBQeV9UUEZMQUdTX0JBU0VUWVBFLCAgICAgICAvKiB0cF9mbGFncyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgZWxlbWVudF9tZXRob2RzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX2dldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX3NldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3RvZmZzZXQgKi8KKyAgICAoaW5pdHByb2MpZWxlbWVudF9pbml0LCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pbml0ICovCisgICAgUHlUeXBlX0dlbmVyaWNBbGxvYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYWxsb2MgKi8KKyAgICBlbGVtZW50X25ldywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9uZXcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9mcmVlICovCiB9OwogCiAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwpAQCAtMTcwMCwxMyArMTY5OSw2IEBACiAvKiBoYW5kbGVycyAqLwogCiBMT0NBTChQeU9iamVjdCopCi10cmVlYnVpbGRlcl9oYW5kbGVfeG1sKFRyZWVCdWlsZGVyT2JqZWN0KiBzZWxmLCBQeU9iamVjdCogZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0KiBzdGFuZGFsb25lKQotewotICAgIFB5X1JFVFVSTl9OT05FOwotfQotCi1MT0NBTChQeU9iamVjdCopCiB0cmVlYnVpbGRlcl9oYW5kbGVfc3RhcnQoVHJlZUJ1aWxkZXJPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiB0YWcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QqIGF0dHJpYikKIHsKQEAgLTE3MjgsNyArMTcyMCw3IEBACiAgICAgICAgIHNlbGYtPmRhdGEgPSBOVUxMOwogICAgIH0KIAotICAgIG5vZGUgPSBlbGVtZW50X25ldyh0YWcsIGF0dHJpYik7CisgICAgbm9kZSA9IGNyZWF0ZV9uZXdfZWxlbWVudCh0YWcsIGF0dHJpYik7CiAgICAgaWYgKCFub2RlKQogICAgICAgICByZXR1cm4gTlVMTDsKIApAQCAtMTk3NywyMiArMTk2OSwxMCBAQAogICAgIHJldHVybiB0cmVlYnVpbGRlcl9oYW5kbGVfc3RhcnQoc2VsZiwgdGFnLCBhdHRyaWIpOwogfQogCi1zdGF0aWMgUHlPYmplY3QqCi10cmVlYnVpbGRlcl94bWwoVHJlZUJ1aWxkZXJPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBhcmdzKQotewotICAgIFB5T2JqZWN0KiBlbmNvZGluZzsKLSAgICBQeU9iamVjdCogc3RhbmRhbG9uZTsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9POnhtbCIsICZlbmNvZGluZywgJnN0YW5kYWxvbmUpKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIHJldHVybiB0cmVlYnVpbGRlcl9oYW5kbGVfeG1sKHNlbGYsIGVuY29kaW5nLCBzdGFuZGFsb25lKTsKLX0KLQogc3RhdGljIFB5TWV0aG9kRGVmIHRyZWVidWlsZGVyX21ldGhvZHNbXSA9IHsKICAgICB7ImRhdGEiLCAoUHlDRnVuY3Rpb24pIHRyZWVidWlsZGVyX2RhdGEsIE1FVEhfVkFSQVJHU30sCiAgICAgeyJzdGFydCIsIChQeUNGdW5jdGlvbikgdHJlZWJ1aWxkZXJfc3RhcnQsIE1FVEhfVkFSQVJHU30sCiAgICAgeyJlbmQiLCAoUHlDRnVuY3Rpb24pIHRyZWVidWlsZGVyX2VuZCwgTUVUSF9WQVJBUkdTfSwKLSAgICB7InhtbCIsIChQeUNGdW5jdGlvbikgdHJlZWJ1aWxkZXJfeG1sLCBNRVRIX1ZBUkFSR1N9LAogICAgIHsiY2xvc2UiLCAoUHlDRnVuY3Rpb24pIHRyZWVidWlsZGVyX2Nsb3NlLCBNRVRIX1ZBUkFSR1N9LAogICAgIHtOVUxMLCBOVUxMfQogfTsKQEAgLTIwNTMsOCArMjAzMyw2IEBACiAKICAgICBQeU9iamVjdCogbmFtZXM7CiAKLSAgICBQeU9iamVjdCogaGFuZGxlX3htbDsKLQogICAgIFB5T2JqZWN0KiBoYW5kbGVfc3RhcnQ7CiAgICAgUHlPYmplY3QqIGhhbmRsZV9kYXRhOwogICAgIFB5T2JqZWN0KiBoYW5kbGVfZW5kOwpAQCAtMjExMyw3ICsyMDkxLDcgQEAKICAgICAgICAgICAgIFB5X0lOQ1JFRihrZXkpOwogICAgICAgICAgICAgdGFnID0ga2V5OwogICAgICAgICB9Ci0gICAgICAgIAorCiAgICAgICAgIC8qIGRlY29kZSB1bml2ZXJzYWwgbmFtZSAqLwogICAgICAgICBwID0gUHlCeXRlc19BU19TVFJJTkcodGFnKTsKICAgICAgICAgdmFsdWUgPSBQeVVuaWNvZGVfRGVjb2RlVVRGOChwLCBzaXplLCAic3RyaWN0Iik7CkBAIC0yMTM4LDEzICsyMTE2LDE1IEBACiBzdGF0aWMgdm9pZAogZXhwYXRfc2V0X2Vycm9yKGNvbnN0IGNoYXIqIG1lc3NhZ2UsIGludCBsaW5lLCBpbnQgY29sdW1uKQogewotICAgIFB5T2JqZWN0ICplcnJvcjsKLSAgICBQeU9iamVjdCAqcG9zaXRpb247Ci0gICAgY2hhciBidWZmZXJbMjU2XTsKKyAgICBQeU9iamVjdCAqZXJybXNnLCAqZXJyb3IsICpwb3NpdGlvbjsKIAotICAgIHNwcmludGYoYnVmZmVyLCAiJS4xMDBzOiBsaW5lICVkLCBjb2x1bW4gJWQiLCBtZXNzYWdlLCBsaW5lLCBjb2x1bW4pOworICAgIGVycm1zZyA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlczogbGluZSAlZCwgY29sdW1uICVkIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlLCBsaW5lLCBjb2x1bW4pOworICAgIGlmIChlcnJtc2cgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuOwogCi0gICAgZXJyb3IgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb24oZWxlbWVudHRyZWVfcGFyc2VlcnJvcl9vYmosICJzIiwgYnVmZmVyKTsKKyAgICBlcnJvciA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbihlbGVtZW50dHJlZV9wYXJzZWVycm9yX29iaiwgIk8iLCBlcnJtc2cpOworICAgIFB5X0RFQ1JFRihlcnJtc2cpOwogICAgIGlmICghZXJyb3IpCiAgICAgICAgIHJldHVybjsKIApAQCAtMjM5OSwyOSArMjM3OSwzMyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhNTF9FbmNvZGluZyAqaW5mbykKIHsKICAgICBQeU9iamVjdCogdTsKLSAgICBQeV9VTklDT0RFKiBwOwogICAgIHVuc2lnbmVkIGNoYXIgc1syNTZdOwogICAgIGludCBpOworICAgIHZvaWQgKmRhdGE7CisgICAgdW5zaWduZWQgaW50IGtpbmQ7CiAKICAgICBtZW1zZXQoaW5mbywgMCwgc2l6ZW9mKFhNTF9FbmNvZGluZykpOwogCiAgICAgZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKQogICAgICAgICBzW2ldID0gaTsKLSAgICAKKwogICAgIHUgPSBQeVVuaWNvZGVfRGVjb2RlKChjaGFyKikgcywgMjU2LCBuYW1lLCAicmVwbGFjZSIpOwogICAgIGlmICghdSkKICAgICAgICAgcmV0dXJuIFhNTF9TVEFUVVNfRVJST1I7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1KSkKKyAgICAgICAgcmV0dXJuIFhNTF9TVEFUVVNfRVJST1I7CiAKLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHUpICE9IDI1NikgeworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSCh1KSAhPSAyNTYpIHsKICAgICAgICAgUHlfREVDUkVGKHUpOwogICAgICAgICByZXR1cm4gWE1MX1NUQVRVU19FUlJPUjsKICAgICB9CiAKLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodSk7Ci0KKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodSk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHUpOwogICAgIGZvciAoaSA9IDA7IGkgPCAyNTY7IGkrKykgewotICAgICAgICBpZiAocFtpXSAhPSBQeV9VTklDT0RFX1JFUExBQ0VNRU5UX0NIQVJBQ1RFUikKLSAgICAgICAgICAgIGluZm8tPm1hcFtpXSA9IHBbaV07CisgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgICAgaWYgKGNoICE9IFB5X1VOSUNPREVfUkVQTEFDRU1FTlRfQ0hBUkFDVEVSKQorICAgICAgICAgICAgaW5mby0+bWFwW2ldID0gY2g7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGluZm8tPm1hcFtpXSA9IC0xOwogICAgIH0KQEAgLTI0NjYsNyArMjQ1MCw3IEBACiAgICAgICAgIFB5T2JqZWN0X0RlbChzZWxmKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgICAKKwogICAgIHNlbGYtPm5hbWVzID0gUHlEaWN0X05ldygpOwogICAgIGlmICghc2VsZi0+bmFtZXMpIHsKICAgICAgICAgUHlPYmplY3RfRGVsKHNlbGYtPmVudGl0eSk7CkBAIC0yNTAxLDcgKzI0ODUsNiBAQAogICAgICAgICBQeV9JTkNSRUYodGFyZ2V0KTsKICAgICBzZWxmLT50YXJnZXQgPSB0YXJnZXQ7CiAKLSAgICBzZWxmLT5oYW5kbGVfeG1sID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh0YXJnZXQsICJ4bWwiKTsKICAgICBzZWxmLT5oYW5kbGVfc3RhcnQgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHRhcmdldCwgInN0YXJ0Iik7CiAgICAgc2VsZi0+aGFuZGxlX2RhdGEgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHRhcmdldCwgImRhdGEiKTsKICAgICBzZWxmLT5oYW5kbGVfZW5kID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh0YXJnZXQsICJlbmQiKTsKQEAgLTI1NTcsNyArMjU0MCw2IEBACiAgICAgUHlfWERFQ1JFRihzZWxmLT5oYW5kbGVfZW5kKTsKICAgICBQeV9YREVDUkVGKHNlbGYtPmhhbmRsZV9kYXRhKTsKICAgICBQeV9YREVDUkVGKHNlbGYtPmhhbmRsZV9zdGFydCk7Ci0gICAgUHlfWERFQ1JFRihzZWxmLT5oYW5kbGVfeG1sKTsKIAogICAgIFB5X0RFQ1JFRihzZWxmLT50YXJnZXQpOwogICAgIFB5X0RFQ1JFRihzZWxmLT5lbnRpdHkpOwpAQCAtMjY0NSw3ICsyNjI3LDcgQEAKICAgICByZWFkZXIgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGZpbGVvYmosICJyZWFkIik7CiAgICAgaWYgKCFyZWFkZXIpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIAorCiAgICAgLyogcmVhZCBmcm9tIG9wZW4gZmlsZSBvYmplY3QgKi8KICAgICBmb3IgKDs7KSB7CiAKQEAgLTI3MDUsNyArMjY4Nyw3IEBACiAgICAgaWYgKCFUcmVlQnVpbGRlcl9DaGVja0V4YWN0KHNlbGYtPnRhcmdldCkpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKAogICAgICAgICAgICAgUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgImV2ZW50IGhhbmRsaW5nIG9ubHkgc3VwcG9ydGVkIGZvciBjRWxlbWVudFRyZWUuVHJlZWJ1aWxkZXIgIgorICAgICAgICAgICAgImV2ZW50IGhhbmRsaW5nIG9ubHkgc3VwcG9ydGVkIGZvciBFbGVtZW50VHJlZS5UcmVlQnVpbGRlciAiCiAgICAgICAgICAgICAidGFyZ2V0cyIKICAgICAgICAgICAgICk7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjc5Niw3ICsyNzc4LDcgQEAKICAgICB7TlVMTCwgTlVMTH0KIH07CiAKLXN0YXRpYyBQeU9iamVjdCogIAorc3RhdGljIFB5T2JqZWN0KgogeG1scGFyc2VyX2dldGF0dHJvKFhNTFBhcnNlck9iamVjdCogc2VsZiwgUHlPYmplY3QqIG5hbWVvYmopCiB7CiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhuYW1lb2JqKSkgewpAQCAtMjg1NywxMiArMjgzOSwxMCBAQAogLyogcHl0aG9uIG1vZHVsZSBpbnRlcmZhY2UgKi8KIAogc3RhdGljIFB5TWV0aG9kRGVmIF9mdW5jdGlvbnNbXSA9IHsKLSAgICB7IkVsZW1lbnQiLCAoUHlDRnVuY3Rpb24pIGVsZW1lbnQsIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTfSwKICAgICB7IlN1YkVsZW1lbnQiLCAoUHlDRnVuY3Rpb24pIHN1YmVsZW1lbnQsIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTfSwKICAgICB7IlRyZWVCdWlsZGVyIiwgKFB5Q0Z1bmN0aW9uKSB0cmVlYnVpbGRlciwgTUVUSF9WQVJBUkdTfSwKICNpZiBkZWZpbmVkKFVTRV9FWFBBVCkKICAgICB7IlhNTFBhcnNlciIsIChQeUNGdW5jdGlvbikgeG1scGFyc2VyLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEU30sCi0gICAgeyJYTUxUcmVlQnVpbGRlciIsIChQeUNGdW5jdGlvbikgeG1scGFyc2VyLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEU30sCiAjZW5kaWYKICAgICB7TlVMTCwgTlVMTH0KIH07CkBAIC0yOTE3LDU0ICsyODk3LDggQEAKIAogICAgIGJvb3RzdHJhcCA9ICgKIAotICAgICAgICAiZnJvbSBjb3B5IGltcG9ydCBjb3B5LCBkZWVwY29weVxuIgotCi0gICAgICAgICJ0cnk6XG4iCi0gICAgICAgICIgIGZyb20geG1sLmV0cmVlIGltcG9ydCBFbGVtZW50VHJlZVxuIgotICAgICAgICAiZXhjZXB0IEltcG9ydEVycm9yOlxuIgotICAgICAgICAiICBpbXBvcnQgRWxlbWVudFRyZWVcbiIKLSAgICAgICAgIkVUID0gRWxlbWVudFRyZWVcbiIKLSAgICAgICAgImRlbCBFbGVtZW50VHJlZVxuIgotCi0gICAgICAgICJpbXBvcnQgX2VsZW1lbnR0cmVlIGFzIGNFbGVtZW50VHJlZVxuIgotCi0gICAgICAgICJ0cnk6XG4iIC8qIGNoZWNrIGlmIGNvcHkgd29ya3MgYXMgaXMgKi8KLSAgICAgICAgIiAgY29weShjRWxlbWVudFRyZWUuRWxlbWVudCgneCcpKVxuIgotICAgICAgICAiZXhjZXB0OlxuIgotICAgICAgICAiICBkZWYgY29weWVsZW1lbnQoZWxlbSk6XG4iCi0gICAgICAgICIgICAgcmV0dXJuIGVsZW1cbiIKLQotICAgICAgICAiY2xhc3MgQ29tbWVudFByb3h5OlxuIgotICAgICAgICAiIGRlZiBfX2NhbGxfXyhzZWxmLCB0ZXh0PU5vbmUpOlxuIgotICAgICAgICAiICBlbGVtZW50ID0gY0VsZW1lbnRUcmVlLkVsZW1lbnQoRVQuQ29tbWVudClcbiIKLSAgICAgICAgIiAgZWxlbWVudC50ZXh0ID0gdGV4dFxuIgotICAgICAgICAiICByZXR1cm4gZWxlbWVudFxuIgotICAgICAgICAiIGRlZiBfX2VxX18oc2VsZiwgb3RoZXIpOlxuIgotICAgICAgICAiICByZXR1cm4gRVQuQ29tbWVudCA9PSBvdGhlclxuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLkNvbW1lbnQgPSBDb21tZW50UHJveHkoKVxuIgotCi0gICAgICAgICJjbGFzcyBFbGVtZW50VHJlZShFVC5FbGVtZW50VHJlZSk6XG4iIC8qIHB1YmxpYyAqLwotICAgICAgICAiICBkZWYgcGFyc2Uoc2VsZiwgc291cmNlLCBwYXJzZXI9Tm9uZSk6XG4iCi0gICAgICAgICIgICAgY2xvc2Vfc291cmNlID0gRmFsc2VcbiIKLSAgICAgICAgIiAgICBpZiBub3QgaGFzYXR0cihzb3VyY2UsICdyZWFkJyk6XG4iCi0gICAgICAgICIgICAgICBzb3VyY2UgPSBvcGVuKHNvdXJjZSwgJ3JiJylcbiIKLSAgICAgICAgIiAgICAgIGNsb3NlX3NvdXJjZSA9IFRydWVcbiIKLSAgICAgICAgIiAgICB0cnk6XG4iCi0gICAgICAgICIgICAgICBpZiBwYXJzZXIgaXMgbm90IE5vbmU6XG4iCi0gICAgICAgICIgICAgICAgIHdoaWxlIDE6XG4iCi0gICAgICAgICIgICAgICAgICAgZGF0YSA9IHNvdXJjZS5yZWFkKDY1NTM2KVxuIgotICAgICAgICAiICAgICAgICAgIGlmIG5vdCBkYXRhOlxuIgotICAgICAgICAiICAgICAgICAgICAgYnJlYWtcbiIKLSAgICAgICAgIiAgICAgICAgICBwYXJzZXIuZmVlZChkYXRhKVxuIgotICAgICAgICAiICAgICAgICBzZWxmLl9yb290ID0gcGFyc2VyLmNsb3NlKClcbiIKLSAgICAgICAgIiAgICAgIGVsc2U6XG4iIAotICAgICAgICAiICAgICAgICBwYXJzZXIgPSBjRWxlbWVudFRyZWUuWE1MUGFyc2VyKClcbiIKLSAgICAgICAgIiAgICAgICAgc2VsZi5fcm9vdCA9IHBhcnNlci5fcGFyc2Uoc291cmNlKVxuIgotICAgICAgICAiICAgICAgcmV0dXJuIHNlbGYuX3Jvb3RcbiIKLSAgICAgICAgIiAgICBmaW5hbGx5OlxuIgotICAgICAgICAiICAgICAgaWYgY2xvc2Vfc291cmNlOlxuIgotICAgICAgICAiICAgICAgICBzb3VyY2UuY2xvc2UoKVxuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLkVsZW1lbnRUcmVlID0gRWxlbWVudFRyZWVcbiIKKyAgICAgICAgImZyb20gY29weSBpbXBvcnQgZGVlcGNvcHlcbiIKKyAgICAgICAgImZyb20geG1sLmV0cmVlIGltcG9ydCBFbGVtZW50UGF0aFxuIgogCiAgICAgICAgICJkZWYgaXRlcihub2RlLCB0YWc9Tm9uZSk6XG4iIC8qIGhlbHBlciAqLwogICAgICAgICAiICBpZiB0YWcgPT0gJyonOlxuIgpAQCAtMjk4NCwxMjMgKzI5MTgsMTIgQEAKICAgICAgICAgIiAgICBpZiBlLnRhaWw6XG4iCiAgICAgICAgICIgICAgICB5aWVsZCBlLnRhaWxcbiIKIAotICAgICAgICAiZGVmIHBhcnNlKHNvdXJjZSwgcGFyc2VyPU5vbmUpOlxuIiAvKiBwdWJsaWMgKi8KLSAgICAgICAgIiAgdHJlZSA9IEVsZW1lbnRUcmVlKClcbiIKLSAgICAgICAgIiAgdHJlZS5wYXJzZShzb3VyY2UsIHBhcnNlcilcbiIKLSAgICAgICAgIiAgcmV0dXJuIHRyZWVcbiIKLSAgICAgICAgImNFbGVtZW50VHJlZS5wYXJzZSA9IHBhcnNlXG4iCi0KLSAgICAgICAgImNsYXNzIGl0ZXJwYXJzZTpcbiIKLSAgICAgICAgIiByb290ID0gTm9uZVxuIgotICAgICAgICAiIGRlZiBfX2luaXRfXyhzZWxmLCBmaWxlLCBldmVudHM9Tm9uZSk6XG4iCi0gICAgICAgICIgIHNlbGYuX2Nsb3NlX2ZpbGUgPSBGYWxzZVxuIgotICAgICAgICAiICBpZiBub3QgaGFzYXR0cihmaWxlLCAncmVhZCcpOlxuIgotICAgICAgICAiICAgIGZpbGUgPSBvcGVuKGZpbGUsICdyYicpXG4iCi0gICAgICAgICIgICAgc2VsZi5fY2xvc2VfZmlsZSA9IFRydWVcbiIKLSAgICAgICAgIiAgc2VsZi5fZmlsZSA9IGZpbGVcbiIKLSAgICAgICAgIiAgc2VsZi5fZXZlbnRzID0gW11cbiIKLSAgICAgICAgIiAgc2VsZi5faW5kZXggPSAwXG4iCi0gICAgICAgICIgIHNlbGYuX2Vycm9yID0gTm9uZVxuIgotICAgICAgICAiICBzZWxmLnJvb3QgPSBzZWxmLl9yb290ID0gTm9uZVxuIgotICAgICAgICAiICBiID0gY0VsZW1lbnRUcmVlLlRyZWVCdWlsZGVyKClcbiIKLSAgICAgICAgIiAgc2VsZi5fcGFyc2VyID0gY0VsZW1lbnRUcmVlLlhNTFBhcnNlcihiKVxuIgotICAgICAgICAiICBzZWxmLl9wYXJzZXIuX3NldGV2ZW50cyhzZWxmLl9ldmVudHMsIGV2ZW50cylcbiIKLSAgICAgICAgIiBkZWYgX19uZXh0X18oc2VsZik6XG4iCi0gICAgICAgICIgIHdoaWxlIDE6XG4iCi0gICAgICAgICIgICAgdHJ5OlxuIgotICAgICAgICAiICAgICAgaXRlbSA9IHNlbGYuX2V2ZW50c1tzZWxmLl9pbmRleF1cbiIKLSAgICAgICAgIiAgICAgIHNlbGYuX2luZGV4ICs9IDFcbiIKLSAgICAgICAgIiAgICAgIHJldHVybiBpdGVtXG4iCi0gICAgICAgICIgICAgZXhjZXB0IEluZGV4RXJyb3I6XG4iCi0gICAgICAgICIgICAgICBwYXNzXG4iCi0gICAgICAgICIgICAgaWYgc2VsZi5fZXJyb3I6XG4iCi0gICAgICAgICIgICAgICBlID0gc2VsZi5fZXJyb3JcbiIKLSAgICAgICAgIiAgICAgIHNlbGYuX2Vycm9yID0gTm9uZVxuIgotICAgICAgICAiICAgICAgcmFpc2UgZVxuIgotICAgICAgICAiICAgIGlmIHNlbGYuX3BhcnNlciBpcyBOb25lOlxuIgotICAgICAgICAiICAgICAgc2VsZi5yb290ID0gc2VsZi5fcm9vdFxuIgotICAgICAgICAiICAgICAgaWYgc2VsZi5fY2xvc2VfZmlsZTpcbiIKLSAgICAgICAgIiAgICAgICAgc2VsZi5fZmlsZS5jbG9zZSgpXG4iCi0gICAgICAgICIgICAgICByYWlzZSBTdG9wSXRlcmF0aW9uXG4iCi0gICAgICAgICIgICAgIyBsb2FkIGV2ZW50IGJ1ZmZlclxuIgotICAgICAgICAiICAgIGRlbCBzZWxmLl9ldmVudHNbOl1cbiIKLSAgICAgICAgIiAgICBzZWxmLl9pbmRleCA9IDBcbiIKLSAgICAgICAgIiAgICBkYXRhID0gc2VsZi5fZmlsZS5yZWFkKDE2Mzg0KVxuIgotICAgICAgICAiICAgIGlmIGRhdGE6XG4iCi0gICAgICAgICIgICAgICB0cnk6XG4iCi0gICAgICAgICIgICAgICAgIHNlbGYuX3BhcnNlci5mZWVkKGRhdGEpXG4iCi0gICAgICAgICIgICAgICBleGNlcHQgU3ludGF4RXJyb3IgYXMgZXhjOlxuIgotICAgICAgICAiICAgICAgICBzZWxmLl9lcnJvciA9IGV4Y1xuIgotICAgICAgICAiICAgIGVsc2U6XG4iCi0gICAgICAgICIgICAgICBzZWxmLl9yb290ID0gc2VsZi5fcGFyc2VyLmNsb3NlKClcbiIKLSAgICAgICAgIiAgICAgIHNlbGYuX3BhcnNlciA9IE5vbmVcbiIKLSAgICAgICAgIiBkZWYgX19pdGVyX18oc2VsZik6XG4iCi0gICAgICAgICIgIHJldHVybiBzZWxmXG4iCi0gICAgICAgICJjRWxlbWVudFRyZWUuaXRlcnBhcnNlID0gaXRlcnBhcnNlXG4iCi0KLSAgICAgICAgImNsYXNzIFBJUHJveHk6XG4iCi0gICAgICAgICIgZGVmIF9fY2FsbF9fKHNlbGYsIHRhcmdldCwgdGV4dD1Ob25lKTpcbiIKLSAgICAgICAgIiAgZWxlbWVudCA9IGNFbGVtZW50VHJlZS5FbGVtZW50KEVULlBJKVxuIgotICAgICAgICAiICBlbGVtZW50LnRleHQgPSB0YXJnZXRcbiIKLSAgICAgICAgIiAgaWYgdGV4dDpcbiIKLSAgICAgICAgIiAgICBlbGVtZW50LnRleHQgPSBlbGVtZW50LnRleHQgKyAnICcgKyB0ZXh0XG4iCi0gICAgICAgICIgIHJldHVybiBlbGVtZW50XG4iCi0gICAgICAgICIgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6XG4iCi0gICAgICAgICIgIHJldHVybiBFVC5QSSA9PSBvdGhlclxuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLlBJID0gY0VsZW1lbnRUcmVlLlByb2Nlc3NpbmdJbnN0cnVjdGlvbiA9IFBJUHJveHkoKVxuIgotCi0gICAgICAgICJkZWYgWE1MKHRleHQpOlxuIiAvKiBwdWJsaWMgKi8KLSAgICAgICAgIiAgcGFyc2VyID0gY0VsZW1lbnRUcmVlLlhNTFBhcnNlcigpXG4iCi0gICAgICAgICIgIHBhcnNlci5mZWVkKHRleHQpXG4iCi0gICAgICAgICIgIHJldHVybiBwYXJzZXIuY2xvc2UoKVxuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLlhNTCA9IGNFbGVtZW50VHJlZS5mcm9tc3RyaW5nID0gWE1MXG4iCi0KLSAgICAgICAgImRlZiBYTUxJRCh0ZXh0KTpcbiIgLyogcHVibGljICovCi0gICAgICAgICIgIHRyZWUgPSBYTUwodGV4dClcbiIKLSAgICAgICAgIiAgaWRzID0ge31cbiIKLSAgICAgICAgIiAgZm9yIGVsZW0gaW4gdHJlZS5pdGVyKCk6XG4iCi0gICAgICAgICIgICAgaWQgPSBlbGVtLmdldCgnaWQnKVxuIgotICAgICAgICAiICAgIGlmIGlkOlxuIgotICAgICAgICAiICAgICAgaWRzW2lkXSA9IGVsZW1cbiIKLSAgICAgICAgIiAgcmV0dXJuIHRyZWUsIGlkc1xuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLlhNTElEID0gWE1MSURcbiIKLQotICAgICAgICAidHJ5OlxuIgotICAgICAgICAiIHJlZ2lzdGVyX25hbWVzcGFjZSA9IEVULnJlZ2lzdGVyX25hbWVzcGFjZVxuIgotICAgICAgICAiZXhjZXB0IEF0dHJpYnV0ZUVycm9yOlxuIgotICAgICAgICAiIGRlZiByZWdpc3Rlcl9uYW1lc3BhY2UocHJlZml4LCB1cmkpOlxuIgotICAgICAgICAiICBFVC5fbmFtZXNwYWNlX21hcFt1cmldID0gcHJlZml4XG4iCi0gICAgICAgICJjRWxlbWVudFRyZWUucmVnaXN0ZXJfbmFtZXNwYWNlID0gcmVnaXN0ZXJfbmFtZXNwYWNlXG4iCi0KLSAgICAgICAgImNFbGVtZW50VHJlZS5kdW1wID0gRVQuZHVtcFxuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLkVsZW1lbnRQYXRoID0gRWxlbWVudFBhdGggPSBFVC5FbGVtZW50UGF0aFxuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLmlzZWxlbWVudCA9IEVULmlzZWxlbWVudFxuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLlFOYW1lID0gRVQuUU5hbWVcbiIKLSAgICAgICAgImNFbGVtZW50VHJlZS50b3N0cmluZyA9IEVULnRvc3RyaW5nXG4iCi0gICAgICAgICJjRWxlbWVudFRyZWUuZnJvbXN0cmluZ2xpc3QgPSBFVC5mcm9tc3RyaW5nbGlzdFxuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLnRvc3RyaW5nbGlzdCA9IEVULnRvc3RyaW5nbGlzdFxuIgotICAgICAgICAiY0VsZW1lbnRUcmVlLlZFUlNJT04gPSAnIiBWRVJTSU9OICInXG4iCi0gICAgICAgICJjRWxlbWVudFRyZWUuX192ZXJzaW9uX18gPSAnIiBWRVJTSU9OICInXG4iCi0KICAgICAgICApOwogCiAgICAgaWYgKCFQeVJ1bl9TdHJpbmcoYm9vdHN0cmFwLCBQeV9maWxlX2lucHV0LCBnLCBOVUxMKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBlbGVtZW50cGF0aF9vYmogPSBQeURpY3RfR2V0SXRlbVN0cmluZyhnLCAiRWxlbWVudFBhdGgiKTsKLQotICAgIGVsZW1lbnR0cmVlX2NvcHllbGVtZW50X29iaiA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKGcsICJjb3B5ZWxlbWVudCIpOwotICAgIGlmIChlbGVtZW50dHJlZV9jb3B5ZWxlbWVudF9vYmopIHsKLSAgICAgICAgLyogcmVkdWNlIGhhY2sgbmVlZGVkOyBlbmFibGUgcmVkdWNlIG1ldGhvZCAqLwotICAgICAgICBQeU1ldGhvZERlZiogbXA7Ci0gICAgICAgIGZvciAobXAgPSBlbGVtZW50X21ldGhvZHM7IG1wLT5tbF9uYW1lOyBtcCsrKQotICAgICAgICAgICAgaWYgKG1wLT5tbF9tZXRoID09IChQeUNGdW5jdGlvbikgZWxlbWVudF9yZWR1Y2UpIHsKLSAgICAgICAgICAgICAgICBtcC0+bWxfbmFtZSA9ICJfX3JlZHVjZV9fIjsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KLSAgICB9IGVsc2UKLSAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLQogICAgIGVsZW1lbnR0cmVlX2RlZXBjb3B5X29iaiA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKGcsICJkZWVwY29weSIpOwogICAgIGVsZW1lbnR0cmVlX2l0ZXJfb2JqID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcoZywgIml0ZXIiKTsKICAgICBlbGVtZW50dHJlZV9pdGVydGV4dF9vYmogPSBQeURpY3RfR2V0SXRlbVN0cmluZyhnLCAiaXRlcnRleHQiKTsKQEAgLTMxMjAsMTAgKzI5NDMsMTMgQEAKICNlbmRpZgogCiAgICAgZWxlbWVudHRyZWVfcGFyc2VlcnJvcl9vYmogPSBQeUVycl9OZXdFeGNlcHRpb24oCi0gICAgICAgICJjRWxlbWVudFRyZWUuUGFyc2VFcnJvciIsIFB5RXhjX1N5bnRheEVycm9yLCBOVUxMCisgICAgICAgICJ4bWwuZXRyZWUuRWxlbWVudFRyZWUuUGFyc2VFcnJvciIsIFB5RXhjX1N5bnRheEVycm9yLCBOVUxMCiAgICAgICAgICk7CiAgICAgUHlfSU5DUkVGKGVsZW1lbnR0cmVlX3BhcnNlZXJyb3Jfb2JqKTsKICAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgIlBhcnNlRXJyb3IiLCBlbGVtZW50dHJlZV9wYXJzZWVycm9yX29iaik7CiAKKyAgICBQeV9JTkNSRUYoKFB5T2JqZWN0ICopJkVsZW1lbnRfVHlwZSk7CisgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJFbGVtZW50IiwgKFB5T2JqZWN0ICopJkVsZW1lbnRfVHlwZSk7CisKICAgICByZXR1cm4gbTsKIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvX2Z1bmN0b29sc21vZHVsZS5jIGIvTW9kdWxlcy9fZnVuY3Rvb2xzbW9kdWxlLmMKaW5kZXggZDhhMjgzYi4uM2ZmMDdiYyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fZnVuY3Rvb2xzbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fZnVuY3Rvb2xzbW9kdWxlLmMKQEAgLTE1NSw0NCArMTU1LDggQEAKICAgICB7TlVMTH0gIC8qIFNlbnRpbmVsICovCiB9OwogCi1zdGF0aWMgUHlPYmplY3QgKgotcGFydGlhbF9nZXRfZGljdChwYXJ0aWFsb2JqZWN0ICpwdG8pCi17Ci0gICAgaWYgKHB0by0+ZGljdCA9PSBOVUxMKSB7Ci0gICAgICAgIHB0by0+ZGljdCA9IFB5RGljdF9OZXcoKTsKLSAgICAgICAgaWYgKHB0by0+ZGljdCA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIFB5X0lOQ1JFRihwdG8tPmRpY3QpOwotICAgIHJldHVybiBwdG8tPmRpY3Q7Ci19Ci0KLXN0YXRpYyBpbnQKLXBhcnRpYWxfc2V0X2RpY3QocGFydGlhbG9iamVjdCAqcHRvLCBQeU9iamVjdCAqdmFsdWUpCi17Ci0gICAgUHlPYmplY3QgKnRtcDsKLQotICAgIC8qIEl0IGlzIGlsbGVnYWwgdG8gZGVsIHAuX19kaWN0X18gKi8KLSAgICBpZiAodmFsdWUgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgImEgcGFydGlhbCBvYmplY3QncyBkaWN0aW9uYXJ5IG1heSBub3QgYmUgZGVsZXRlZCIpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIC8qIENhbiBvbmx5IHNldCBfX2RpY3RfXyB0byBhIGRpY3Rpb25hcnkgKi8KLSAgICBpZiAoIVB5RGljdF9DaGVjayh2YWx1ZSkpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJzZXR0aW5nIHBhcnRpYWwgb2JqZWN0J3MgZGljdGlvbmFyeSB0byBhIG5vbi1kaWN0Iik7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgdG1wID0gcHRvLT5kaWN0OwotICAgIFB5X0lOQ1JFRih2YWx1ZSk7Ci0gICAgcHRvLT5kaWN0ID0gdmFsdWU7Ci0gICAgUHlfWERFQ1JFRih0bXApOwotICAgIHJldHVybiAwOwotfQotCiBzdGF0aWMgUHlHZXRTZXREZWYgcGFydGlhbF9nZXRzZXRsaXN0W10gPSB7Ci0gICAgeyJfX2RpY3RfXyIsIChnZXR0ZXIpcGFydGlhbF9nZXRfZGljdCwgKHNldHRlcilwYXJ0aWFsX3NldF9kaWN0fSwKKyAgICB7Il9fZGljdF9fIiwgUHlPYmplY3RfR2VuZXJpY0dldERpY3QsIFB5T2JqZWN0X0dlbmVyaWNTZXREaWN0fSwKICAgICB7TlVMTH0gLyogU2VudGluZWwgKi8KIH07CiAKQEAgLTMzMCw2ICsyOTQsMTc2IEBACiB9OwogCiAKKy8qIGNtcF90b19rZXkgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlPYmplY3RfSEVBRAorICAgIFB5T2JqZWN0ICpjbXA7CisgICAgUHlPYmplY3QgKm9iamVjdDsKK30ga2V5b2JqZWN0OworCitzdGF0aWMgdm9pZAora2V5b2JqZWN0X2RlYWxsb2Moa2V5b2JqZWN0ICprbykKK3sKKyAgICBQeV9ERUNSRUYoa28tPmNtcCk7CisgICAgUHlfWERFQ1JFRihrby0+b2JqZWN0KTsKKyAgICBQeU9iamVjdF9GUkVFKGtvKTsKK30KKworc3RhdGljIGludAora2V5b2JqZWN0X3RyYXZlcnNlKGtleW9iamVjdCAqa28sIHZpc2l0cHJvYyB2aXNpdCwgdm9pZCAqYXJnKQoreworICAgIFB5X1ZJU0lUKGtvLT5jbXApOworICAgIGlmIChrby0+b2JqZWN0KQorICAgICAgICBQeV9WSVNJVChrby0+b2JqZWN0KTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAora2V5b2JqZWN0X2NsZWFyKGtleW9iamVjdCAqa28pCit7CisgICAgUHlfQ0xFQVIoa28tPmNtcCk7CisgICAgaWYgKGtvLT5vYmplY3QpCisgICAgICAgIFB5X0NMRUFSKGtvLT5vYmplY3QpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgUHlNZW1iZXJEZWYga2V5b2JqZWN0X21lbWJlcnNbXSA9IHsKKyAgICB7Im9iaiIsIFRfT0JKRUNULAorICAgICBvZmZzZXRvZihrZXlvYmplY3QsIG9iamVjdCksIDAsCisgICAgIFB5RG9jX1NUUigiVmFsdWUgd3JhcHBlZCBieSBhIGtleSBmdW5jdGlvbi4iKX0sCisgICAge05VTEx9Cit9OworCitzdGF0aWMgUHlPYmplY3QgKgora2V5b2JqZWN0X2NhbGwoa2V5b2JqZWN0ICprbywgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2tleW9iamVjdF9yaWNoY29tcGFyZShQeU9iamVjdCAqa28sIFB5T2JqZWN0ICpvdGhlciwgaW50IG9wKTsKKworc3RhdGljIFB5VHlwZU9iamVjdCBrZXlvYmplY3RfdHlwZSA9IHsKKyAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoJlB5VHlwZV9UeXBlLCAwKQorICAgICJmdW5jdG9vbHMuS2V5V3JhcHBlciIsICAgICAgICAgICAgIC8qIHRwX25hbWUgKi8KKyAgICBzaXplb2Yoa2V5b2JqZWN0KSwgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNpY3NpemUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVtc2l6ZSAqLworICAgIC8qIG1ldGhvZHMgKi8KKyAgICAoZGVzdHJ1Y3RvcilrZXlvYmplY3RfZGVhbGxvYywgICAgICAvKiB0cF9kZWFsbG9jICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcHJpbnQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3Jlc2VydmVkICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVwciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX251bWJlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX3NlcXVlbmNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbWFwcGluZyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2hhc2ggKi8KKyAgICAodGVybmFyeWZ1bmMpa2V5b2JqZWN0X2NhbGwsICAgICAgICAvKiB0cF9jYWxsICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc3RyICovCisgICAgUHlPYmplY3RfR2VuZXJpY0dldEF0dHIsICAgICAgICAgICAgLyogdHBfZ2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX2J1ZmZlciAqLworICAgIFB5X1RQRkxBR1NfREVGQVVMVCwgICAgICAgICAgICAgICAgIC8qIHRwX2ZsYWdzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZG9jICovCisgICAgKHRyYXZlcnNlcHJvYylrZXlvYmplY3RfdHJhdmVyc2UsICAgLyogdHBfdHJhdmVyc2UgKi8KKyAgICAoaW5xdWlyeSlrZXlvYmplY3RfY2xlYXIsICAgICAgICAgICAvKiB0cF9jbGVhciAqLworICAgIGtleW9iamVjdF9yaWNoY29tcGFyZSwgICAgICAgICAgICAgIC8qIHRwX3JpY2hjb21wYXJlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCisgICAga2V5b2JqZWN0X21lbWJlcnMsICAgICAgICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLworfTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2tleW9iamVjdF9jYWxsKGtleW9iamVjdCAqa28sIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICBQeU9iamVjdCAqb2JqZWN0OworICAgIGtleW9iamVjdCAqcmVzdWx0OworICAgIHN0YXRpYyBjaGFyICprd2FyZ3NbXSA9IHsib2JqIiwgTlVMTH07CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiTzpLIiwga3dhcmdzLCAmb2JqZWN0KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzdWx0ID0gUHlPYmplY3RfTmV3KGtleW9iamVjdCwgJmtleW9iamVjdF90eXBlKTsKKyAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfSU5DUkVGKGtvLT5jbXApOworICAgIHJlc3VsdC0+Y21wID0ga28tPmNtcDsKKyAgICBQeV9JTkNSRUYob2JqZWN0KTsKKyAgICByZXN1bHQtPm9iamVjdCA9IG9iamVjdDsKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopcmVzdWx0OworfQorCitzdGF0aWMgUHlPYmplY3QgKgora2V5b2JqZWN0X3JpY2hjb21wYXJlKFB5T2JqZWN0ICprbywgUHlPYmplY3QgKm90aGVyLCBpbnQgb3ApCit7CisgICAgUHlPYmplY3QgKnJlczsKKyAgICBQeU9iamVjdCAqYXJnczsKKyAgICBQeU9iamVjdCAqeDsKKyAgICBQeU9iamVjdCAqeTsKKyAgICBQeU9iamVjdCAqY29tcGFyZTsKKyAgICBQeU9iamVjdCAqYW5zd2VyOworICAgIHN0YXRpYyBQeU9iamVjdCAqemVybzsKKworICAgIGlmICh6ZXJvID09IE5VTEwpIHsKKyAgICAgICAgemVybyA9IFB5TG9uZ19Gcm9tTG9uZygwKTsKKyAgICAgICAgaWYgKCF6ZXJvKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKFB5X1RZUEUob3RoZXIpICE9ICZrZXlvYmplY3RfdHlwZSl7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJvdGhlciBhcmd1bWVudCBtdXN0IGJlIEsgaW5zdGFuY2UiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGNvbXBhcmUgPSAoKGtleW9iamVjdCAqKSBrbyktPmNtcDsKKyAgICBhc3NlcnQoY29tcGFyZSAhPSBOVUxMKTsKKyAgICB4ID0gKChrZXlvYmplY3QgKikga28pLT5vYmplY3Q7CisgICAgeSA9ICgoa2V5b2JqZWN0ICopIG90aGVyKS0+b2JqZWN0OworICAgIGlmICgheCB8fCAheSl7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19BdHRyaWJ1dGVFcnJvciwgIm9iamVjdCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICAvKiBDYWxsIHRoZSB1c2VyJ3MgY29tcGFyaXNvbiBmdW5jdGlvbiBhbmQgdHJhbnNsYXRlIHRoZSAzLXdheQorICAgICAqIHJlc3VsdCBpbnRvIHRydWUgb3IgZmFsc2UgKG9yIGVycm9yKS4KKyAgICAgKi8KKyAgICBhcmdzID0gUHlUdXBsZV9OZXcoMik7CisgICAgaWYgKGFyZ3MgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfSU5DUkVGKHgpOworICAgIFB5X0lOQ1JFRih5KTsKKyAgICBQeVR1cGxlX1NFVF9JVEVNKGFyZ3MsIDAsIHgpOworICAgIFB5VHVwbGVfU0VUX0lURU0oYXJncywgMSwgeSk7CisgICAgcmVzID0gUHlPYmplY3RfQ2FsbChjb21wYXJlLCBhcmdzLCBOVUxMKTsKKyAgICBQeV9ERUNSRUYoYXJncyk7CisgICAgaWYgKHJlcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBhbnN3ZXIgPSBQeU9iamVjdF9SaWNoQ29tcGFyZShyZXMsIHplcm8sIG9wKTsKKyAgICBQeV9ERUNSRUYocmVzKTsKKyAgICByZXR1cm4gYW5zd2VyOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorZnVuY3Rvb2xzX2NtcF90b19rZXkoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICBQeU9iamVjdCAqY21wOworICAgIHN0YXRpYyBjaGFyICprd2FyZ3NbXSA9IHsibXljbXAiLCBOVUxMfTsKKyAgICBrZXlvYmplY3QgKm9iamVjdDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJPOmNtcF90b19rZXkiLCBrd2FyZ3MsICZjbXApKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBvYmplY3QgPSBQeU9iamVjdF9OZXcoa2V5b2JqZWN0LCAma2V5b2JqZWN0X3R5cGUpOworICAgIGlmICghb2JqZWN0KQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9JTkNSRUYoY21wKTsKKyAgICBvYmplY3QtPmNtcCA9IGNtcDsKKyAgICBvYmplY3QtPm9iamVjdCA9IE5VTEw7CisgICAgcmV0dXJuIChQeU9iamVjdCAqKW9iamVjdDsKK30KKworUHlEb2NfU1RSVkFSKGZ1bmN0b29sc19jbXBfdG9fa2V5X2RvYywKKyJDb252ZXJ0IGEgY21wPSBmdW5jdGlvbiBpbnRvIGEga2V5PSBmdW5jdGlvbi4iKTsKKwogLyogcmVkdWNlICh1c2VkIHRvIGJlIGEgYnVpbHRpbikgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC00MTMsNiArNTQ3LDggQEAKIAogc3RhdGljIFB5TWV0aG9kRGVmIG1vZHVsZV9tZXRob2RzW10gPSB7CiAgICAgeyJyZWR1Y2UiLCAgICAgICAgICBmdW5jdG9vbHNfcmVkdWNlLCAgICAgTUVUSF9WQVJBUkdTLCBmdW5jdG9vbHNfcmVkdWNlX2RvY30sCisgICAgeyJjbXBfdG9fa2V5IiwgICAgICAoUHlDRnVuY3Rpb24pZnVuY3Rvb2xzX2NtcF90b19rZXksCisgICAgIE1FVEhfVkFSQVJHUyB8IE1FVEhfS0VZV09SRFMsIGZ1bmN0b29sc19jbXBfdG9fa2V5X2RvY30sCiAgICAge05VTEwsICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KIH07CiAKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2dlc3RhbHQuYyBiL01vZHVsZXMvX2dlc3RhbHQuYwppbmRleCBhNDU3ODBmLi5jZDMwNjgzIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19nZXN0YWx0LmMKKysrIGIvTW9kdWxlcy9fZ2VzdGFsdC5jCkBAIC0zMyw3ICszMyw3IEBACiBjb252ZXJ0X3RvX09TVHlwZShQeU9iamVjdCAqdiwgT1NUeXBlICpwcikKIHsKICAgICB1aW50MzJfdCB0bXA7Ci0gICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodikgfHwgUHlVbmljb2RlX0dldFNpemUodikgIT0gNCkgeworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHYpIHx8IFB5VW5pY29kZV9HZXRMZW5ndGgodikgIT0gNCkgewogICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICJPU1R5cGUgYXJnIG11c3QgYmUgc3RyaW5nIG9mIDQgY2hhcnMiKTsKICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2hhc2hvcGVuc3NsLmMgYi9Nb2R1bGVzL19oYXNob3BlbnNzbC5jCmluZGV4IGRkNDMxN2YuLmQzNzY4OWUgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2hhc2hvcGVuc3NsLmMKKysrIGIvTW9kdWxlcy9faGFzaG9wZW5zc2wuYwpAQCAtMjAxLDEzICsyMDEsMTEgQEAKIAogICAgIC8qIE1ha2UgaGV4IHZlcnNpb24gb2YgdGhlIGRpZ2VzdCAqLwogICAgIGZvcihpPWo9MDsgaTxkaWdlc3Rfc2l6ZTsgaSsrKSB7Ci0gICAgICAgIGNoYXIgYzsKKyAgICAgICAgdW5zaWduZWQgY2hhciBjOwogICAgICAgICBjID0gKGRpZ2VzdFtpXSA+PiA0KSAmIDB4ZjsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgICAgIGMgPSAoZGlnZXN0W2ldICYgMHhmKTsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgfQogICAgIHJldHZhbCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShoZXhfZGlnZXN0LCBkaWdlc3Rfc2l6ZSAqIDIpOwogICAgIFB5TWVtX0ZyZWUoaGV4X2RpZ2VzdCk7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19pby9faW9tb2R1bGUuYyBiL01vZHVsZXMvX2lvL19pb21vZHVsZS5jCmluZGV4IDRjOTA0MzMuLjMxZWVhM2MgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2lvL19pb21vZHVsZS5jCisrKyBiL01vZHVsZXMvX2lvL19pb21vZHVsZS5jCkBAIC0xLDkgKzEsOSBAQAogLyoKICAgICBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgbmV3IEkvTyBsaWIgYXMgZGVmaW5lZCBieSBQRVAgMzExNiAtICJOZXcgSS9PIgotICAgIAorCiAgICAgQ2xhc3NlcyBkZWZpbmVkIGhlcmU6IFVuc3VwcG9ydGVkT3BlcmF0aW9uLCBCbG9ja2luZ0lPRXJyb3IuCiAgICAgRnVuY3Rpb25zIGRlZmluZWQgaGVyZTogb3BlbigpLgotICAgIAorCiAgICAgTW9zdGx5IHdyaXR0ZW4gYnkgQW1hdXJ5IEZvcmdlb3QgZCdBcmMKICovCiAKQEAgLTM2LDYgKzM2LDcgQEAKIFB5T2JqZWN0ICpfUHlJT19zdHJfcmVhZDsKIFB5T2JqZWN0ICpfUHlJT19zdHJfcmVhZDE7CiBQeU9iamVjdCAqX1B5SU9fc3RyX3JlYWRhYmxlOworUHlPYmplY3QgKl9QeUlPX3N0cl9yZWFkYWxsOwogUHlPYmplY3QgKl9QeUlPX3N0cl9yZWFkaW50bzsKIFB5T2JqZWN0ICpfUHlJT19zdHJfcmVhZGxpbmU7CiBQeU9iamVjdCAqX1B5SU9fc3RyX3Jlc2V0OwpAQCAtOTAsOTQgKzkxLDExIEBACiAMCiAKIC8qCi0gKiBCbG9ja2luZ0lPRXJyb3IgZXh0ZW5kcyBJT0Vycm9yCi0gKi8KLQotc3RhdGljIGludAotYmxvY2tpbmdpb2Vycm9yX2luaXQoUHlCbG9ja2luZ0lPRXJyb3JPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLAotICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmt3ZHMpCi17Ci0gICAgUHlPYmplY3QgKm15ZXJybm8gPSBOVUxMLCAqc3RyZXJyb3IgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpiYXNlYXJncyA9IE5VTEw7Ci0gICAgUHlfc3NpemVfdCB3cml0dGVuID0gMDsKLQotICAgIGFzc2VydChQeVR1cGxlX0NoZWNrKGFyZ3MpKTsKLQotICAgIHNlbGYtPndyaXR0ZW4gPSAwOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT098bjpCbG9ja2luZ0lPRXJyb3IiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAmbXllcnJubywgJnN0cmVycm9yLCAmd3JpdHRlbikpCi0gICAgICAgIHJldHVybiAtMTsKLQotICAgIGJhc2VhcmdzID0gUHlUdXBsZV9QYWNrKDIsIG15ZXJybm8sIHN0cmVycm9yKTsKLSAgICBpZiAoYmFzZWFyZ3MgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIC8qIFRoaXMgd2lsbCB0YWtlIGNhcmUgb2YgaW5pdGlhbGl6aW5nIG9mIG15ZXJybm8gYW5kIHN0cmVycm9yIG1lbWJlcnMgKi8KLSAgICBpZiAoKChQeVR5cGVPYmplY3QgKilQeUV4Y19JT0Vycm9yKS0+dHBfaW5pdCgKLSAgICAgICAgICAgICAgICAoUHlPYmplY3QgKilzZWxmLCBiYXNlYXJncywga3dkcykgPT0gLTEpIHsKLSAgICAgICAgUHlfREVDUkVGKGJhc2VhcmdzKTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBQeV9ERUNSRUYoYmFzZWFyZ3MpOwotCi0gICAgc2VsZi0+d3JpdHRlbiA9IHdyaXR0ZW47Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyBQeU1lbWJlckRlZiBibG9ja2luZ2lvZXJyb3JfbWVtYmVyc1tdID0gewotICAgIHsiY2hhcmFjdGVyc193cml0dGVuIiwgVF9QWVNTSVpFVCwgb2Zmc2V0b2YoUHlCbG9ja2luZ0lPRXJyb3JPYmplY3QsIHdyaXR0ZW4pLCAwfSwKLSAgICB7TlVMTH0gIC8qIFNlbnRpbmVsICovCi19OwotCi1zdGF0aWMgUHlUeXBlT2JqZWN0IF9QeUV4Y19CbG9ja2luZ0lPRXJyb3IgPSB7Ci0gICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCi0gICAgIkJsb2NraW5nSU9FcnJvciIsIC8qdHBfbmFtZSovCi0gICAgc2l6ZW9mKFB5QmxvY2tpbmdJT0Vycm9yT2JqZWN0KSwgLyp0cF9iYXNpY3NpemUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2l0ZW1zaXplKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9kZWFsbG9jKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9wcmludCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0YXR0ciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc2V0YXR0ciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfY29tcGFyZSAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3JlcHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX251bWJlciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfc2VxdWVuY2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX21hcHBpbmcqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2hhc2ggKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9jYWxsKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9zdHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2dldGF0dHJvKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9zZXRhdHRybyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfYnVmZmVyKi8KLSAgICBQeV9UUEZMQUdTX0RFRkFVTFQgfCBQeV9UUEZMQUdTX0JBU0VUWVBFLCAvKnRwX2ZsYWdzKi8KLSAgICBQeURvY19TVFIoIkV4Y2VwdGlvbiByYWlzZWQgd2hlbiBJL08gd291bGQgYmxvY2sgIgotICAgICAgICAgICAgICAib24gYSBub24tYmxvY2tpbmcgSS9PIHN0cmVhbSIpLCAvKiB0cF9kb2MgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCi0gICAgYmxvY2tpbmdpb2Vycm9yX21lbWJlcnMsICAgIC8qIHRwX21lbWJlcnMgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Jhc2UgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdCAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9nZXQgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3Jfc2V0ICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3RvZmZzZXQgKi8KLSAgICAoaW5pdHByb2MpYmxvY2tpbmdpb2Vycm9yX2luaXQsIC8qIHRwX2luaXQgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYWxsb2MgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbmV3ICovCi19OwotUHlPYmplY3QgKlB5RXhjX0Jsb2NraW5nSU9FcnJvciA9IChQeU9iamVjdCAqKSZfUHlFeGNfQmxvY2tpbmdJT0Vycm9yOwotDAotCi0vKgogICogVGhlIG1haW4gb3BlbigpIGZ1bmN0aW9uCiAgKi8KIFB5RG9jX1NUUlZBUihvcGVuX2RvYywKICJvcGVuKGZpbGUsIG1vZGU9J3InLCBidWZmZXJpbmc9LTEsIGVuY29kaW5nPU5vbmUsXG4iCi0iICAgICBlcnJvcnM9Tm9uZSwgbmV3bGluZT1Ob25lLCBjbG9zZWZkPVRydWUpIC0+IGZpbGUgb2JqZWN0XG4iCisiICAgICBlcnJvcnM9Tm9uZSwgbmV3bGluZT1Ob25lLCBjbG9zZWZkPVRydWUsIG9wZW5lcj1Ob25lKSAtPiBmaWxlIG9iamVjdFxuIgogIlxuIgogIk9wZW4gZmlsZSBhbmQgcmV0dXJuIGEgc3RyZWFtLiAgUmFpc2UgSU9FcnJvciB1cG9uIGZhaWx1cmUuXG4iCiAiXG4iCkBAIC0xOTAsMTggKzEwOCwxOSBAQAogIm1vZGUgaXMgYW4gb3B0aW9uYWwgc3RyaW5nIHRoYXQgc3BlY2lmaWVzIHRoZSBtb2RlIGluIHdoaWNoIHRoZSBmaWxlXG4iCiAiaXMgb3BlbmVkLiBJdCBkZWZhdWx0cyB0byAncicgd2hpY2ggbWVhbnMgb3BlbiBmb3IgcmVhZGluZyBpbiB0ZXh0XG4iCiAibW9kZS4gIE90aGVyIGNvbW1vbiB2YWx1ZXMgYXJlICd3JyBmb3Igd3JpdGluZyAodHJ1bmNhdGluZyB0aGUgZmlsZSBpZlxuIgotIml0IGFscmVhZHkgZXhpc3RzKSwgYW5kICdhJyBmb3IgYXBwZW5kaW5nICh3aGljaCBvbiBzb21lIFVuaXggc3lzdGVtcyxcbiIKLSJtZWFucyB0aGF0IGFsbCB3cml0ZXMgYXBwZW5kIHRvIHRoZSBlbmQgb2YgdGhlIGZpbGUgcmVnYXJkbGVzcyBvZiB0aGVcbiIKLSJjdXJyZW50IHNlZWsgcG9zaXRpb24pLiBJbiB0ZXh0IG1vZGUsIGlmIGVuY29kaW5nIGlzIG5vdCBzcGVjaWZpZWQgdGhlXG4iCi0iZW5jb2RpbmcgdXNlZCBpcyBwbGF0Zm9ybSBkZXBlbmRlbnQuIChGb3IgcmVhZGluZyBhbmQgd3JpdGluZyByYXdcbiIKLSJieXRlcyB1c2UgYmluYXJ5IG1vZGUgYW5kIGxlYXZlIGVuY29kaW5nIHVuc3BlY2lmaWVkLikgVGhlIGF2YWlsYWJsZVxuIgotIm1vZGVzIGFyZTpcbiIKKyJpdCBhbHJlYWR5IGV4aXN0cyksICd4JyBmb3IgY3JlYXRpbmcgYW5kIHdyaXRpbmcgdG8gYSBuZXcgZmlsZSwgYW5kXG4iCisiJ2EnIGZvciBhcHBlbmRpbmcgKHdoaWNoIG9uIHNvbWUgVW5peCBzeXN0ZW1zLCBtZWFucyB0aGF0IGFsbCB3cml0ZXNcbiIKKyJhcHBlbmQgdG8gdGhlIGVuZCBvZiB0aGUgZmlsZSByZWdhcmRsZXNzIG9mIHRoZSBjdXJyZW50IHNlZWsgcG9zaXRpb24pLlxuIgorIkluIHRleHQgbW9kZSwgaWYgZW5jb2RpbmcgaXMgbm90IHNwZWNpZmllZCB0aGUgZW5jb2RpbmcgdXNlZCBpcyBwbGF0Zm9ybVxuIgorImRlcGVuZGVudC4gKEZvciByZWFkaW5nIGFuZCB3cml0aW5nIHJhdyBieXRlcyB1c2UgYmluYXJ5IG1vZGUgYW5kIGxlYXZlXG4iCisiZW5jb2RpbmcgdW5zcGVjaWZpZWQuKSBUaGUgYXZhaWxhYmxlIG1vZGVzIGFyZTpcbiIKICJcbiIKICI9PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4iCiAiQ2hhcmFjdGVyIE1lYW5pbmdcbiIKICItLS0tLS0tLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCiAiJ3InICAgICAgIG9wZW4gZm9yIHJlYWRpbmcgKGRlZmF1bHQpXG4iCiAiJ3cnICAgICAgIG9wZW4gZm9yIHdyaXRpbmcsIHRydW5jYXRpbmcgdGhlIGZpbGUgZmlyc3RcbiIKKyIneCcgICAgICAgY3JlYXRlIGEgbmV3IGZpbGUgYW5kIG9wZW4gaXQgZm9yIHdyaXRpbmdcbiIKICInYScgICAgICAgb3BlbiBmb3Igd3JpdGluZywgYXBwZW5kaW5nIHRvIHRoZSBlbmQgb2YgdGhlIGZpbGUgaWYgaXQgZXhpc3RzXG4iCiAiJ2InICAgICAgIGJpbmFyeSBtb2RlXG4iCiAiJ3QnICAgICAgIHRleHQgbW9kZSAoZGVmYXVsdClcbiIKQEAgLTIxMiw3ICsxMzEsOCBAQAogIlxuIgogIlRoZSBkZWZhdWx0IG1vZGUgaXMgJ3J0JyAob3BlbiBmb3IgcmVhZGluZyB0ZXh0KS4gRm9yIGJpbmFyeSByYW5kb21cbiIKICJhY2Nlc3MsIHRoZSBtb2RlICd3K2InIG9wZW5zIGFuZCB0cnVuY2F0ZXMgdGhlIGZpbGUgdG8gMCBieXRlcywgd2hpbGVcbiIKLSIncitiJyBvcGVucyB0aGUgZmlsZSB3aXRob3V0IHRydW5jYXRpb24uXG4iCisiJ3IrYicgb3BlbnMgdGhlIGZpbGUgd2l0aG91dCB0cnVuY2F0aW9uLiBUaGUgJ3gnIG1vZGUgaW1wbGllcyAndycgYW5kXG4iCisicmFpc2VzIGFuIGBGaWxlRXhpc3RzRXJyb3JgIGlmIHRoZSBmaWxlIGFscmVhZHkgZXhpc3RzLlxuIgogIlxuIgogIlB5dGhvbiBkaXN0aW5ndWlzaGVzIGJldHdlZW4gZmlsZXMgb3BlbmVkIGluIGJpbmFyeSBhbmQgdGV4dCBtb2RlcyxcbiIKICJldmVuIHdoZW4gdGhlIHVuZGVybHlpbmcgb3BlcmF0aW5nIHN5c3RlbSBkb2Vzbid0LiBGaWxlcyBvcGVuZWQgaW5cbiIKQEAgLTI3Miw2ICsxOTIsMTIgQEAKICJ3aGVuIHRoZSBmaWxlIGlzIGNsb3NlZC4gVGhpcyBkb2VzIG5vdCB3b3JrIHdoZW4gYSBmaWxlIG5hbWUgaXMgZ2l2ZW5cbiIKICJhbmQgbXVzdCBiZSBUcnVlIGluIHRoYXQgY2FzZS5cbiIKICJcbiIKKyJBIGN1c3RvbSBvcGVuZXIgY2FuIGJlIHVzZWQgYnkgcGFzc2luZyBhIGNhbGxhYmxlIGFzICpvcGVuZXIqLiBUaGVcbiIKKyJ1bmRlcmx5aW5nIGZpbGUgZGVzY3JpcHRvciBmb3IgdGhlIGZpbGUgb2JqZWN0IGlzIHRoZW4gb2J0YWluZWQgYnlcbiIKKyJjYWxsaW5nICpvcGVuZXIqIHdpdGggKCpmaWxlKiwgKmZsYWdzKikuICpvcGVuZXIqIG11c3QgcmV0dXJuIGFuIG9wZW5cbiIKKyJmaWxlIGRlc2NyaXB0b3IgKHBhc3Npbmcgb3Mub3BlbiBhcyAqb3BlbmVyKiByZXN1bHRzIGluIGZ1bmN0aW9uYWxpdHlcbiIKKyJzaW1pbGFyIHRvIHBhc3NpbmcgTm9uZSkuXG4iCisiXG4iCiAib3BlbigpIHJldHVybnMgYSBmaWxlIG9iamVjdCB3aG9zZSB0eXBlIGRlcGVuZHMgb24gdGhlIG1vZGUsIGFuZFxuIgogInRocm91Z2ggd2hpY2ggdGhlIHN0YW5kYXJkIGZpbGUgb3BlcmF0aW9ucyBzdWNoIGFzIHJlYWRpbmcgYW5kIHdyaXRpbmdcbiIKICJhcmUgcGVyZm9ybWVkLiBXaGVuIG9wZW4oKSBpcyB1c2VkIHRvIG9wZW4gYSBmaWxlIGluIGEgdGV4dCBtb2RlICgndycsXG4iCkBAIC0yOTIsMTQgKzIxOCwxNCBAQAogewogICAgIGNoYXIgKmt3bGlzdFtdID0geyJmaWxlIiwgIm1vZGUiLCAiYnVmZmVyaW5nIiwKICAgICAgICAgICAgICAgICAgICAgICAiZW5jb2RpbmciLCAiZXJyb3JzIiwgIm5ld2xpbmUiLAotICAgICAgICAgICAgICAgICAgICAgICJjbG9zZWZkIiwgTlVMTH07Ci0gICAgUHlPYmplY3QgKmZpbGU7CisgICAgICAgICAgICAgICAgICAgICAgImNsb3NlZmQiLCAib3BlbmVyIiwgTlVMTH07CisgICAgUHlPYmplY3QgKmZpbGUsICpvcGVuZXIgPSBQeV9Ob25lOwogICAgIGNoYXIgKm1vZGUgPSAiciI7CiAgICAgaW50IGJ1ZmZlcmluZyA9IC0xLCBjbG9zZWZkID0gMTsKICAgICBjaGFyICplbmNvZGluZyA9IE5VTEwsICplcnJvcnMgPSBOVUxMLCAqbmV3bGluZSA9IE5VTEw7CiAgICAgdW5zaWduZWQgaTsKIAotICAgIGludCByZWFkaW5nID0gMCwgd3JpdGluZyA9IDAsIGFwcGVuZGluZyA9IDAsIHVwZGF0aW5nID0gMDsKKyAgICBpbnQgY3JlYXRpbmcgPSAwLCByZWFkaW5nID0gMCwgd3JpdGluZyA9IDAsIGFwcGVuZGluZyA9IDAsIHVwZGF0aW5nID0gMDsKICAgICBpbnQgdGV4dCA9IDAsIGJpbmFyeSA9IDAsIHVuaXZlcnNhbCA9IDA7CiAKICAgICBjaGFyIHJhd21vZGVbNV0sICptOwpAQCAtMzA3LDEwICsyMzMsMTQgQEAKIAogICAgIFB5T2JqZWN0ICpyYXcsICptb2Rlb2JqID0gTlVMTCwgKmJ1ZmZlciA9IE5VTEwsICp3cmFwcGVyID0gTlVMTDsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJPfHNpenp6aTpvcGVuIiwga3dsaXN0LAorICAgIF9QeV9JREVOVElGSUVSKGlzYXR0eSk7CisgICAgX1B5X0lERU5USUZJRVIoZmlsZW5vKTsKKyAgICBfUHlfSURFTlRJRklFUihtb2RlKTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJPfHNpenp6aU86b3BlbiIsIGt3bGlzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmlsZSwgJm1vZGUsICZidWZmZXJpbmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmVuY29kaW5nLCAmZXJyb3JzLCAmbmV3bGluZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY2xvc2VmZCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY2xvc2VmZCwgJm9wZW5lcikpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCkBAIC0zMjYsNiArMjU2LDkgQEAKICAgICAgICAgY2hhciBjID0gbW9kZVtpXTsKIAogICAgICAgICBzd2l0Y2ggKGMpIHsKKyAgICAgICAgY2FzZSAneCc6CisgICAgICAgICAgICBjcmVhdGluZyA9IDE7CisgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSAncic6CiAgICAgICAgICAgICByZWFkaW5nID0gMTsKICAgICAgICAgICAgIGJyZWFrOwpAQCAtMzYyLDYgKzI5NSw3IEBACiAgICAgfQogCiAgICAgbSA9IHJhd21vZGU7CisgICAgaWYgKGNyZWF0aW5nKSAgKihtKyspID0gJ3gnOwogICAgIGlmIChyZWFkaW5nKSAgICoobSsrKSA9ICdyJzsKICAgICBpZiAod3JpdGluZykgICAqKG0rKykgPSAndyc7CiAgICAgaWYgKGFwcGVuZGluZykgKihtKyspID0gJ2EnOwpAQCAtMzg0LDkgKzMxOCw5IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGlmIChyZWFkaW5nICsgd3JpdGluZyArIGFwcGVuZGluZyA+IDEpIHsKKyAgICBpZiAoY3JlYXRpbmcgKyByZWFkaW5nICsgd3JpdGluZyArIGFwcGVuZGluZyA+IDEpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAibXVzdCBoYXZlIGV4YWN0bHkgb25lIG9mIHJlYWQvd3JpdGUvYXBwZW5kIG1vZGUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgZXhhY3RseSBvbmUgb2YgY3JlYXRlL3JlYWQvd3JpdGUvYXBwZW5kIG1vZGUiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCkBAIC00MTAsNyArMzQ0LDcgQEAKIAogICAgIC8qIENyZWF0ZSB0aGUgUmF3IGZpbGUgc3RyZWFtICovCiAgICAgcmF3ID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uKChQeU9iamVjdCAqKSZQeUZpbGVJT19UeXBlLAotCQkJCSJPc2kiLCBmaWxlLCByYXdtb2RlLCBjbG9zZWZkKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk9zaU8iLCBmaWxlLCByYXdtb2RlLCBjbG9zZWZkLCBvcGVuZXIpOwogICAgIGlmIChyYXcgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTQyMCw3ICszNTQsNyBAQAogCiAgICAgLyogYnVmZmVyaW5nICovCiAgICAgewotICAgICAgICBQeU9iamVjdCAqcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChyYXcsICJpc2F0dHkiLCBOVUxMKTsKKyAgICAgICAgUHlPYmplY3QgKnJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocmF3LCAmUHlJZF9pc2F0dHksIE5VTEwpOwogICAgICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICBpc2F0dHkgPSBQeUxvbmdfQXNMb25nKHJlcyk7CkBAIC00NDIsNyArMzc2LDcgQEAKICAgICAgICAgewogICAgICAgICAgICAgc3RydWN0IHN0YXQgc3Q7CiAgICAgICAgICAgICBsb25nIGZpbGVubzsKLSAgICAgICAgICAgIFB5T2JqZWN0ICpyZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHJhdywgImZpbGVubyIsIE5VTEwpOworICAgICAgICAgICAgUHlPYmplY3QgKnJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocmF3LCAmUHlJZF9maWxlbm8sIE5VTEwpOwogICAgICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAKQEAgLTQ4MCw3ICs0MTQsNyBAQAogCiAgICAgICAgIGlmICh1cGRhdGluZykKICAgICAgICAgICAgIEJ1ZmZlcmVkX2NsYXNzID0gKFB5T2JqZWN0ICopJlB5QnVmZmVyZWRSYW5kb21fVHlwZTsKLSAgICAgICAgZWxzZSBpZiAod3JpdGluZyB8fCBhcHBlbmRpbmcpCisgICAgICAgIGVsc2UgaWYgKGNyZWF0aW5nIHx8IHdyaXRpbmcgfHwgYXBwZW5kaW5nKQogICAgICAgICAgICAgQnVmZmVyZWRfY2xhc3MgPSAoUHlPYmplY3QgKikmUHlCdWZmZXJlZFdyaXRlcl9UeXBlOwogICAgICAgICBlbHNlIGlmIChyZWFkaW5nKQogICAgICAgICAgICAgQnVmZmVyZWRfY2xhc3MgPSAoUHlPYmplY3QgKikmUHlCdWZmZXJlZFJlYWRlcl9UeXBlOwpAQCAtNTEzLDcgKzQ0Nyw3IEBACiAgICAgaWYgKHdyYXBwZXIgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKIAotICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHdyYXBwZXIsICJtb2RlIiwgbW9kZW9iaikgPCAwKQorICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHdyYXBwZXIsICZQeUlkX21vZGUsIG1vZGVvYmopIDwgMCkKICAgICAgICAgZ290byBlcnJvcjsKICAgICBQeV9ERUNSRUYobW9kZW9iaik7CiAgICAgcmV0dXJuIHdyYXBwZXI7CkBAIC01NzYsNyArNTEwLDcgQEAKIAogCiAvKiBCYXNpY2FsbHkgdGhlICJuIiBmb3JtYXQgY29kZSB3aXRoIHRoZSBhYmlsaXR5IHRvIHR1cm4gTm9uZSBpbnRvIC0xLiAqLwotaW50IAoraW50CiBfUHlJT19Db252ZXJ0U3NpemVfdChQeU9iamVjdCAqb2JqLCB2b2lkICpyZXN1bHQpIHsKICAgICBQeV9zc2l6ZV90IGxpbWl0OwogICAgIGlmIChvYmogPT0gUHlfTm9uZSkgewpAQCAtNjAzLDcgKzUzNyw2IEBACiAgICAgX1B5SU9fU3RhdGUgKnN0YXRlID0gSU9fTU9EX1NUQVRFKG1vZCk7CiAgICAgaWYgKCFzdGF0ZS0+aW5pdGlhbGl6ZWQpCiAgICAgICAgIHJldHVybiAwOwotICAgIFB5X1ZJU0lUKHN0YXRlLT5vc19tb2R1bGUpOwogICAgIGlmIChzdGF0ZS0+bG9jYWxlX21vZHVsZSAhPSBOVUxMKSB7CiAgICAgICAgIFB5X1ZJU0lUKHN0YXRlLT5sb2NhbGVfbW9kdWxlKTsKICAgICB9CkBAIC02MTcsNyArNTUwLDYgQEAKICAgICBfUHlJT19TdGF0ZSAqc3RhdGUgPSBJT19NT0RfU1RBVEUobW9kKTsKICAgICBpZiAoIXN0YXRlLT5pbml0aWFsaXplZCkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgUHlfQ0xFQVIoc3RhdGUtPm9zX21vZHVsZSk7CiAgICAgaWYgKHN0YXRlLT5sb2NhbGVfbW9kdWxlICE9IE5VTEwpCiAgICAgICAgIFB5X0NMRUFSKHN0YXRlLT5sb2NhbGVfbW9kdWxlKTsKICAgICBQeV9DTEVBUihzdGF0ZS0+dW5zdXBwb3J0ZWRfb3BlcmF0aW9uKTsKQEAgLTY2MSwxMSArNTkzLDYgQEAKICAgICBzdGF0ZSA9IElPX01PRF9TVEFURShtKTsKICAgICBzdGF0ZS0+aW5pdGlhbGl6ZWQgPSAwOwogCi0gICAgLyogcHV0IG9zIGluIHRoZSBtb2R1bGUgc3RhdGUgKi8KLSAgICBzdGF0ZS0+b3NfbW9kdWxlID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlKCJvcyIpOwotICAgIGlmIChzdGF0ZS0+b3NfbW9kdWxlID09IE5VTEwpCi0gICAgICAgIGdvdG8gZmFpbDsKLQogI2RlZmluZSBBRERfVFlQRSh0eXBlLCBuYW1lKSBcCiAgICAgaWYgKFB5VHlwZV9SZWFkeSh0eXBlKSA8IDApIFwKICAgICAgICAgZ290byBmYWlsOyBcCkBAIC02OTAsOSArNjE3LDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS0+dW5zdXBwb3J0ZWRfb3BlcmF0aW9uKSA8IDApCiAgICAgICAgIGdvdG8gZmFpbDsKIAotICAgIC8qIEJsb2NraW5nSU9FcnJvciAqLwotICAgIF9QeUV4Y19CbG9ja2luZ0lPRXJyb3IudHBfYmFzZSA9IChQeVR5cGVPYmplY3QgKikgUHlFeGNfSU9FcnJvcjsKLSAgICBBRERfVFlQRSgmX1B5RXhjX0Jsb2NraW5nSU9FcnJvciwgIkJsb2NraW5nSU9FcnJvciIpOworICAgIC8qIEJsb2NraW5nSU9FcnJvciwgZm9yIGNvbXBhdGliaWxpdHkgKi8KKyAgICBQeV9JTkNSRUYoUHlFeGNfQmxvY2tpbmdJT0Vycm9yKTsKKyAgICBpZiAoUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJCbG9ja2luZ0lPRXJyb3IiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5T2JqZWN0ICopIFB5RXhjX0Jsb2NraW5nSU9FcnJvcikgPCAwKQorICAgICAgICBnb3RvIGZhaWw7CiAKICAgICAvKiBDb25jcmV0ZSBiYXNlIHR5cGVzIG9mIHRoZSBJTyBBQkNzLgogICAgICAgICh0aGUgQUJDcyB0aGVtc2VsdmVzIGFyZSBkZWNsYXJlZCB0aHJvdWdoIGluaGVyaXRhbmNlIGluIGlvLnB5KQpAQCAtNzU4LDYgKzY4Nyw3IEBACiAgICAgQUREX0lOVEVSTkVEKHJlYWQpCiAgICAgQUREX0lOVEVSTkVEKHJlYWQxKQogICAgIEFERF9JTlRFUk5FRChyZWFkYWJsZSkKKyAgICBBRERfSU5URVJORUQocmVhZGFsbCkKICAgICBBRERfSU5URVJORUQocmVhZGludG8pCiAgICAgQUREX0lOVEVSTkVEKHJlYWRsaW5lKQogICAgIEFERF9JTlRFUk5FRChyZXNldCkKQEAgLTc4OCw3ICs3MTgsNiBAQAogICAgIHJldHVybiBtOwogCiAgIGZhaWw6Ci0gICAgUHlfWERFQ1JFRihzdGF0ZS0+b3NfbW9kdWxlKTsKICAgICBQeV9YREVDUkVGKHN0YXRlLT51bnN1cHBvcnRlZF9vcGVyYXRpb24pOwogICAgIFB5X0RFQ1JFRihtKTsKICAgICByZXR1cm4gTlVMTDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2lvL19pb21vZHVsZS5oIGIvTW9kdWxlcy9faW8vX2lvbW9kdWxlLmgKaW5kZXggOTI1ZTRmMi4uOTg3YWFjOCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9faW8vX2lvbW9kdWxlLmgKKysrIGIvTW9kdWxlcy9faW8vX2lvbW9kdWxlLmgKQEAgLTUwLDI1ICs1MCwxNiBAQAogICAgYCpjb25zdW1lZGAuCiAgICBJZiBub3QgZm91bmQsIHJldHVybnMgLTEgYW5kIHNldHMgYCpjb25zdW1lZGAgdG8gdGhlIG51bWJlciBvZiBjaGFyYWN0ZXJzCiAgICB3aGljaCBjYW4gYmUgc2FmZWx5IHB1dCBhc2lkZSB1bnRpbCBhbm90aGVyIHNlYXJjaC4KLSAgIAotICAgTk9URTogZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMsIGBlbmRgIG11c3QgcG9pbnQgdG8gYSBOVUwgY2hhcmFjdGVyICgnXDAnKS4gCisKKyAgIE5PVEU6IGZvciBwZXJmb3JtYW5jZSByZWFzb25zLCBgZW5kYCBtdXN0IHBvaW50IHRvIGEgTlVMIGNoYXJhY3RlciAoJ1wwJykuCiAgICBPdGhlcndpc2UsIHRoZSBmdW5jdGlvbiB3aWxsIHNjYW4gZnVydGhlciBhbmQgcmV0dXJuIGdhcmJhZ2UuICovCiBleHRlcm4gUHlfc3NpemVfdCBfUHlJT19maW5kX2xpbmVfZW5kaW5nKAogICAgIGludCB0cmFuc2xhdGVkLCBpbnQgdW5pdmVyc2FsLCBQeU9iamVjdCAqcmVhZG5sLAotICAgIFB5X1VOSUNPREUgKnN0YXJ0LCBQeV9VTklDT0RFICplbmQsIFB5X3NzaXplX3QgKmNvbnN1bWVkKTsKKyAgICBpbnQga2luZCwgY2hhciAqc3RhcnQsIGNoYXIgKmVuZCwgUHlfc3NpemVfdCAqY29uc3VtZWQpOwogCiAKICNkZWZpbmUgREVGQVVMVF9CVUZGRVJfU0laRSAoOCAqIDEwMjQpICAvKiBieXRlcyAqLwogCi10eXBlZGVmIHN0cnVjdCB7Ci0gICAgUHlFeGNlcHRpb25fSEVBRAotICAgIFB5T2JqZWN0ICpteWVycm5vOwotICAgIFB5T2JqZWN0ICpzdHJlcnJvcjsKLSAgICBQeU9iamVjdCAqZmlsZW5hbWU7IC8qIE5vdCB1c2VkLCBidXQgcGFydCBvZiB0aGUgSU9FcnJvciBvYmplY3QgKi8KLSAgICBQeV9zc2l6ZV90IHdyaXR0ZW47Ci19IFB5QmxvY2tpbmdJT0Vycm9yT2JqZWN0OwotUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19CbG9ja2luZ0lPRXJyb3I7Ci0KIC8qCiAgKiBPZmZzZXQgdHlwZSBmb3IgcG9zaXRpb25pbmcuCiAgKi8KQEAgLTEzMyw3ICsxMjQsNiBAQAogCiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgaW50IGluaXRpYWxpemVkOwotICAgIFB5T2JqZWN0ICpvc19tb2R1bGU7CiAgICAgUHlPYmplY3QgKmxvY2FsZV9tb2R1bGU7CiAKICAgICBQeU9iamVjdCAqdW5zdXBwb3J0ZWRfb3BlcmF0aW9uOwpAQCAtMTU1LDYgKzE0NSw3IEBACiBleHRlcm4gUHlPYmplY3QgKl9QeUlPX3N0cl9yZWFkOwogZXh0ZXJuIFB5T2JqZWN0ICpfUHlJT19zdHJfcmVhZDE7CiBleHRlcm4gUHlPYmplY3QgKl9QeUlPX3N0cl9yZWFkYWJsZTsKK2V4dGVybiBQeU9iamVjdCAqX1B5SU9fc3RyX3JlYWRhbGw7CiBleHRlcm4gUHlPYmplY3QgKl9QeUlPX3N0cl9yZWFkaW50bzsKIGV4dGVybiBQeU9iamVjdCAqX1B5SU9fc3RyX3JlYWRsaW5lOwogZXh0ZXJuIFB5T2JqZWN0ICpfUHlJT19zdHJfcmVzZXQ7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19pby9idWZmZXJlZGlvLmMgYi9Nb2R1bGVzL19pby9idWZmZXJlZGlvLmMKaW5kZXggNGM0M2M2OS4uOGE5YWU0NyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9faW8vYnVmZmVyZWRpby5jCisrKyBiL01vZHVsZXMvX2lvL2J1ZmZlcmVkaW8uYwpAQCAtMSw5ICsxLDkgQEAKIC8qCiAgICAgQW4gaW1wbGVtZW50YXRpb24gb2YgQnVmZmVyZWQgSS9PIGFzIGRlZmluZWQgYnkgUEVQIDMxMTYgLSAiTmV3IEkvTyIKLSAgICAKKwogICAgIENsYXNzZXMgZGVmaW5lZCBoZXJlOiBCdWZmZXJlZElPQmFzZSwgQnVmZmVyZWRSZWFkZXIsIEJ1ZmZlcmVkV3JpdGVyLAogICAgIEJ1ZmZlcmVkUmFuZG9tLgotICAgIAorCiAgICAgV3JpdHRlbiBieSBBbWF1cnkgRm9yZ2VvdCBkJ0FyYyBhbmQgQW50b2luZSBQaXRyb3UKICovCiAKQEAgLTEzLDYgKzEzLDIwIEBACiAjaW5jbHVkZSAicHl0aHJlYWQuaCIKICNpbmNsdWRlICJfaW9tb2R1bGUuaCIKIAorX1B5X0lERU5USUZJRVIoY2xvc2UpOworX1B5X0lERU5USUZJRVIoX2RlYWxsb2Nfd2Fybik7CitfUHlfSURFTlRJRklFUihmbHVzaCk7CitfUHlfSURFTlRJRklFUihpc2F0dHkpOworX1B5X0lERU5USUZJRVIobW9kZSk7CitfUHlfSURFTlRJRklFUihuYW1lKTsKK19QeV9JREVOVElGSUVSKHBlZWspOworX1B5X0lERU5USUZJRVIocmVhZCk7CitfUHlfSURFTlRJRklFUihyZWFkMSk7CitfUHlfSURFTlRJRklFUihyZWFkYWJsZSk7CitfUHlfSURFTlRJRklFUihyZWFkaW50byk7CitfUHlfSURFTlRJRklFUih3cml0YWJsZSk7CitfUHlfSURFTlRJRklFUih3cml0ZSk7CisKIC8qCiAgKiBCdWZmZXJlZElPQmFzZSBjbGFzcywgaW5oZXJpdHMgZnJvbSBJT0Jhc2UuCiAgKi8KQEAgLTM4LDEyICs1MiwxMyBAQAogICAgIFB5X2J1ZmZlciBidWY7CiAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgUHlPYmplY3QgKmRhdGE7CisgICAgX1B5X0lERU5USUZJRVIocmVhZCk7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIncqOnJlYWRpbnRvIiwgJmJ1ZikpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgZGF0YSA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZiwgInJlYWQiLCAibiIsIGJ1Zi5sZW4pOworICAgIGRhdGEgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYsICZQeUlkX3JlYWQsICJuIiwgYnVmLmxlbik7CiAgICAgaWYgKGRhdGEgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKIApAQCAtMTk4LDcgKzIxMyw3IEBACiAgICAgaW50IHJlYWRhYmxlOwogICAgIGludCB3cml0YWJsZTsKICAgICBpbnQgZGVhbGxvY2F0aW5nOwotICAgIAorCiAgICAgLyogVHJ1ZSBpZiB0aGlzIGlzIGEgdmFuaWxsYSBCdWZmZXJlZCBvYmplY3QgKHJhdGhlciB0aGFuIGEgdXNlciBkZXJpdmVkCiAgICAgICAgY2xhc3MpICphbmQqIHRoZSByYXcgc3RyZWFtIGlzIGEgdmFuaWxsYSBGaWxlSU8gb2JqZWN0LiAqLwogICAgIGludCBmYXN0X2Nsb3NlZF9jaGVja3M7CkBAIC0yMzcsNyArMjUyLDcgQEAKIAogLyoKICAgICBJbXBsZW1lbnRhdGlvbiBub3RlczoKLSAgICAKKwogICAgICogQnVmZmVyZWRSZWFkZXIsIEJ1ZmZlcmVkV3JpdGVyIGFuZCBCdWZmZXJlZFJhbmRvbSB0cnkgdG8gc2hhcmUgbW9zdAogICAgICAgbWV0aG9kcyAodGhpcyBpcyBoZWxwZWQgYnkgdGhlIG1lbWJlcnMgYHJlYWRhYmxlYCBhbmQgYHdyaXRhYmxlYCwgd2hpY2gKICAgICAgIGFyZSBpbml0aWFsaXplZCBpbiB0aGUgcmVzcGVjdGl2ZSBjb25zdHJ1Y3RvcnMpCkBAIC0yNTUsNyArMjcwLDcgQEAKICAgICBOT1RFOiB3ZSBzaG91bGQgdHJ5IHRvIG1haW50YWluIGJsb2NrIGFsaWdubWVudCBvZiByZWFkcyBhbmQgd3JpdGVzIHRvIHRoZQogICAgIHJhdyBzdHJlYW0gKGFjY29yZGluZyB0byB0aGUgYnVmZmVyIHNpemUpLCBidXQgZm9yIG5vdyBpdCBpcyBvbmx5IGRvbmUKICAgICBpbiByZWFkKCkgYW5kIGZyaWVuZHMuCi0gICAgCisKICovCiAKIC8qIFRoZXNlIG1hY3JvcyBwcm90ZWN0IHRoZSBidWZmZXJlZCBvYmplY3QgYWdhaW5zdCBjb25jdXJyZW50IG9wZXJhdGlvbnMuICovCkBAIC00MTAsNyArNDI1LDcgQEAKIHsKICAgICBpZiAoc2VsZi0+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+IGJ5dGVzLiAgcmVhZCBhdCBtb3N0IHNpemUgYnl0ZXMsIHJldHVybmVkIGFzIGJ5dGVzLlxuIgpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9faW8vaW9iYXNlLmMgYi9Nb2R1bGVzL19pby9pb2Jhc2UuYwppbmRleCAzNWM3Y2RkLi5iMzBiYmI2IDEwMDY0NAotLS0gYS9Nb2R1bGVzL19pby9pb2Jhc2UuYworKysgYi9Nb2R1bGVzL19pby9pb2Jhc2UuYwpAQCAtNTksOCArNTksOSBAQAogICAgb2YgdGhlIElPQmFzZSBvYmplY3QgcmF0aGVyIHRoYW4gdGhlIHZpcnR1YWwgYGNsb3NlZGAgYXR0cmlidXRlIGFzIHJldHVybmVkCiAgICBieSB3aGF0ZXZlciBzdWJjbGFzcy4gKi8KIAorX1B5X0lERU5USUZJRVIoX19JT0Jhc2VfY2xvc2VkKTsKICNkZWZpbmUgSVNfQ0xPU0VEKHNlbGYpIFwKLSAgICBQeU9iamVjdF9IYXNBdHRyU3RyaW5nKHNlbGYsICJfX0lPQmFzZV9jbG9zZWQiKQorICAgIF9QeU9iamVjdF9IYXNBdHRySWQoc2VsZiwgJlB5SWRfX19JT0Jhc2VfY2xvc2VkKQogCiAvKiBJbnRlcm5hbCBtZXRob2RzICovCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtOTcsNyArOTgsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGlvYmFzZV90ZWxsKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLCAic2VlayIsICJpaSIsIDAsIDEpOworICAgIF9QeV9JREVOVElGSUVSKHNlZWspOworCisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZiwgJlB5SWRfc2VlaywgImlpIiwgMCwgMSk7CiB9CiAKIFB5RG9jX1NUUlZBUihpb2Jhc2VfdHJ1bmNhdGVfZG9jLApAQCAtMTU2LDE5ICsxNTksNiBAQAogICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoSVNfQ0xPU0VEKHNlbGYpKTsKIH0KIAotc3RhdGljIFB5T2JqZWN0ICoKLWlvYmFzZV9nZXRfZGljdChQeU9iamVjdCAqc2VsZikKLXsKLSAgICBQeU9iamVjdCAqKmRpY3RwdHIgPSBfUHlPYmplY3RfR2V0RGljdFB0cihzZWxmKTsKLSAgICBQeU9iamVjdCAqZGljdDsKLSAgICBhc3NlcnQoZGljdHB0cik7Ci0gICAgZGljdCA9ICpkaWN0cHRyOwotICAgIGlmIChkaWN0ID09IE5VTEwpCi0gICAgICAgIGRpY3QgPSAqZGljdHB0ciA9IFB5RGljdF9OZXcoKTsKLSAgICBQeV9YSU5DUkVGKGRpY3QpOwotICAgIHJldHVybiBkaWN0OwotfQotCiBQeU9iamVjdCAqCiBfUHlJT0Jhc2VfY2hlY2tfY2xvc2VkKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKQEAgLTE5MCwxMiArMTgwLDEzIEBACiBpb2Jhc2VfY2xvc2UoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5T2JqZWN0ICpyZXM7CisgICAgX1B5X0lERU5USUZJRVIoX19JT0Jhc2VfY2xvc2VkKTsKIAogICAgIGlmIChJU19DTE9TRUQoc2VsZikpCiAgICAgICAgIFB5X1JFVFVSTl9OT05FOwogCiAgICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3Moc2VsZiwgX1B5SU9fc3RyX2ZsdXNoLCBOVUxMKTsKLSAgICBQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHNlbGYsICJfX0lPQmFzZV9jbG9zZWQiLCBQeV9UcnVlKTsKKyAgICBfUHlPYmplY3RfU2V0QXR0cklkKHNlbGYsICZQeUlkX19fSU9CYXNlX2Nsb3NlZCwgUHlfVHJ1ZSk7CiAgICAgaWYgKHJlcyA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KQEAgLTQ2NCwxMiArNDU1LDE0IEBACiAgICAgaW50IGhhc19wZWVrID0gMDsKICAgICBQeU9iamVjdCAqYnVmZmVyLCAqcmVzdWx0OwogICAgIFB5X3NzaXplX3Qgb2xkX3NpemUgPSAtMTsKKyAgICBfUHlfSURFTlRJRklFUihyZWFkKTsKKyAgICBfUHlfSURFTlRJRklFUihwZWVrKTsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifE8mOnJlYWRsaW5lIiwgJl9QeUlPX0NvbnZlcnRTc2l6ZV90LCAmbGltaXQpKSB7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKHNlbGYsICJwZWVrIikpCisgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQoc2VsZiwgJlB5SWRfcGVlaykpCiAgICAgICAgIGhhc19wZWVrID0gMTsKIAogICAgIGJ1ZmZlciA9IFB5Qnl0ZUFycmF5X0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOwpAQCAtNDgxLDcgKzQ3NCw5IEBACiAgICAgICAgIFB5T2JqZWN0ICpiOwogCiAgICAgICAgIGlmIChoYXNfcGVlaykgewotICAgICAgICAgICAgUHlPYmplY3QgKnJlYWRhaGVhZCA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZiwgInBlZWsiLCAiaSIsIDEpOworICAgICAgICAgICAgX1B5X0lERU5USUZJRVIocGVlayk7CisgICAgICAgICAgICBQeU9iamVjdCAqcmVhZGFoZWFkID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLCAmUHlJZF9wZWVrLCAiaSIsIDEpOworCiAgICAgICAgICAgICBpZiAocmVhZGFoZWFkID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICAgICAgaWYgKCFQeUJ5dGVzX0NoZWNrKHJlYWRhaGVhZCkpIHsKQEAgLTUxNSw3ICs1MTAsNyBAQAogICAgICAgICAgICAgUHlfREVDUkVGKHJlYWRhaGVhZCk7CiAgICAgICAgIH0KIAotICAgICAgICBiID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLCAicmVhZCIsICJuIiwgbnJlYWRhaGVhZCk7CisgICAgICAgIGIgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYsICZQeUlkX3JlYWQsICJuIiwgbnJlYWRhaGVhZCk7CiAgICAgICAgIGlmIChiID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgIGlmICghUHlCeXRlc19DaGVjayhiKSkgewpAQCAtNjAxLDcgKzU5Niw5IEBACiAgICAgICAgIC8qIFhYWCBzcGVjaWFsLWNhc2luZyB0aGlzIG1hZGUgc2Vuc2UgaW4gdGhlIFB5dGhvbiB2ZXJzaW9uIGluIG9yZGVyCiAgICAgICAgICAgIHRvIHJlbW92ZSB0aGUgYnl0ZWNvZGUgaW50ZXJwcmV0YXRpb24gb3ZlcmhlYWQsIGJ1dCBpdCBjb3VsZAogICAgICAgICAgICBwcm9iYWJseSBiZSByZW1vdmVkIGhlcmUuICovCi0gICAgICAgIFB5T2JqZWN0ICpyZXQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHJlc3VsdCwgImV4dGVuZCIsICJPIiwgc2VsZik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGV4dGVuZCk7CisgICAgICAgIFB5T2JqZWN0ICpyZXQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHJlc3VsdCwgJlB5SWRfZXh0ZW5kLCAiTyIsIHNlbGYpOworCiAgICAgICAgIGlmIChyZXQgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTcwNCw3ICs3MDEsNyBAQAogfTsKIAogc3RhdGljIFB5R2V0U2V0RGVmIGlvYmFzZV9nZXRzZXRbXSA9IHsKLSAgICB7Il9fZGljdF9fIiwgKGdldHRlcilpb2Jhc2VfZ2V0X2RpY3QsIE5VTEwsIE5VTEx9LAorICAgIHsiX19kaWN0X18iLCBQeU9iamVjdF9HZW5lcmljR2V0RGljdCwgTlVMTCwgTlVMTH0sCiAgICAgeyJjbG9zZWQiLCAoZ2V0dGVyKWlvYmFzZV9jbG9zZWRfZ2V0LCBOVUxMLCBOVUxMfSwKICAgICB7TlVMTH0KIH07CkBAIC03ODEsOCArNzc4LDExIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGlmIChuIDwgMCkKLSAgICAgICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZiwgInJlYWRhbGwiLCBOVUxMKTsKKyAgICBpZiAobiA8IDApIHsKKyAgICAgICAgX1B5X0lERU5USUZJRVIocmVhZGFsbCk7CisKKyAgICAgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZiwgJlB5SWRfcmVhZGFsbCwgTlVMTCk7CisgICAgfQogCiAgICAgLyogVE9ETzogYWxsb2NhdGUgYSBieXRlcyBvYmplY3QgZGlyZWN0bHkgaW5zdGVhZCBhbmQgbWFudWFsbHkgY29uc3RydWN0CiAgICAgICAgYSB3cml0YWJsZSBtZW1vcnl2aWV3IHBvaW50aW5nIHRvIGl0LiAqLwpAQCAtODIzLDggKzgyMyw5IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgd2hpbGUgKDEpIHsKLSAgICAgICAgUHlPYmplY3QgKmRhdGEgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYsICJyZWFkIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpIiwgREVGQVVMVF9CVUZGRVJfU0laRSk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHJlYWQpOworICAgICAgICBQeU9iamVjdCAqZGF0YSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZiwgJlB5SWRfcmVhZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpIiwgREVGQVVMVF9CVUZGRVJfU0laRSk7CiAgICAgICAgIGlmICghZGF0YSkgewogICAgICAgICAgICAgUHlfREVDUkVGKGNodW5rcyk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2lvL3N0cmluZ2lvLmMgYi9Nb2R1bGVzL19pby9zdHJpbmdpby5jCmluZGV4IGM5ZDE0YjEuLmM0Nzk0YzkgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2lvL3N0cmluZ2lvLmMKKysrIGIvTW9kdWxlcy9faW8vc3RyaW5naW8uYwpAQCAtNywxMyArNywyNSBAQAogICAgdGhhbiB0aGUgZW5jbG9zZWQgc3RyaW5nLCBmb3IgcHJvcGVyIGZ1bmN0aW9uaW5nIG9mIF9QeUlPX2ZpbmRfbGluZV9lbmRpbmcuCiAqLwogCisjZGVmaW5lIFNUQVRFX1JFQUxJWkVEIDEKKyNkZWZpbmUgU1RBVEVfQUNDVU1VTEFUSU5HIDIKKwogdHlwZWRlZiBzdHJ1Y3QgewogICAgIFB5T2JqZWN0X0hFQUQKLSAgICBQeV9VTklDT0RFICpidWY7CisgICAgUHlfVUNTNCAqYnVmOwogICAgIFB5X3NzaXplX3QgcG9zOwogICAgIFB5X3NzaXplX3Qgc3RyaW5nX3NpemU7CiAgICAgc2l6ZV90IGJ1Zl9zaXplOwogCisgICAgLyogVGhlIHN0cmluZ2lvIG9iamVjdCBjYW4gYmUgaW4gdHdvIHN0YXRlczogYWNjdW11bGF0aW5nIG9yIHJlYWxpemVkLgorICAgICAgIEluIGFjY3VtdWxhdGluZyBzdGF0ZSwgdGhlIGludGVybmFsIGJ1ZmZlciBjb250YWlucyBub3RoaW5nIGFuZAorICAgICAgIHRoZSBjb250ZW50cyBhcmUgZ2l2ZW4gYnkgdGhlIGVtYmVkZGVkIF9QeUFjY3Ugc3RydWN0dXJlLgorICAgICAgIEluIHJlYWxpemVkIHN0YXRlLCB0aGUgaW50ZXJuYWwgYnVmZmVyIGlzIG1lYW5pbmdmdWwgYW5kIHRoZQorICAgICAgIF9QeUFjY3UgaXMgZGVzdHJveWVkLgorICAgICovCisgICAgaW50IHN0YXRlOworICAgIF9QeUFjY3UgYWNjdTsKKwogICAgIGNoYXIgb2s7IC8qIGluaXRpYWxpemVkPyAqLwogICAgIGNoYXIgY2xvc2VkOwogICAgIGNoYXIgcmVhZHVuaXZlcnNhbDsKQEAgLTIxLDcgKzMzLDcgQEAKICAgICBQeU9iamVjdCAqZGVjb2RlcjsKICAgICBQeU9iamVjdCAqcmVhZG5sOwogICAgIFB5T2JqZWN0ICp3cml0ZW5sOwotICAgIAorCiAgICAgUHlPYmplY3QgKmRpY3Q7CiAgICAgUHlPYmplY3QgKndlYWtyZWZsaXN0OwogfSBzdHJpbmdpbzsKQEAgLTQwLDYgKzUyLDExIEBACiAgICAgICAgIHJldHVybiBOVUxMOyBcCiAgICAgfQogCisjZGVmaW5lIEVOU1VSRV9SRUFMSVpFRChzZWxmKSBcCisgICAgaWYgKHJlYWxpemUoc2VsZikgPCAwKSB7IFwKKyAgICAgICAgcmV0dXJuIE5VTEw7IFwKKyAgICB9CisKIFB5RG9jX1NUUlZBUihzdHJpbmdpb19kb2MsCiAgICAgIlRleHQgSS9PIGltcGxlbWVudGF0aW9uIHVzaW5nIGFuIGluLW1lbW9yeSBidWZmZXIuXG4iCiAgICAgIlxuIgpAQCAtNTYsNyArNzMsNyBAQAogICAgIC8qIEhlcmUsIHVuc2lnbmVkIHR5cGVzIGFyZSB1c2VkIHRvIGF2b2lkIGRlYWxpbmcgd2l0aCBzaWduZWQgaW50ZWdlcgogICAgICAgIG92ZXJmbG93LCB3aGljaCBpcyB1bmRlZmluZWQgaW4gQy4gKi8KICAgICBzaXplX3QgYWxsb2MgPSBzZWxmLT5idWZfc2l6ZTsKLSAgICBQeV9VTklDT0RFICpuZXdfYnVmID0gTlVMTDsKKyAgICBQeV9VQ1M0ICpuZXdfYnVmID0gTlVMTDsKIAogICAgIGFzc2VydChzZWxmLT5idWYgIT0gTlVMTCk7CiAKQEAgLTg0LDEwICsxMDEsOSBAQAogICAgICAgICBhbGxvYyA9IHNpemUgKyAxOwogICAgIH0KIAotICAgIGlmIChhbGxvYyA+ICgoc2l6ZV90KS0xKSAvIHNpemVvZihQeV9VTklDT0RFKSkKKyAgICBpZiAoYWxsb2MgPiBQWV9TSVpFX01BWCAvIHNpemVvZihQeV9VQ1M0KSkKICAgICAgICAgZ290byBvdmVyZmxvdzsKLSAgICBuZXdfYnVmID0gKFB5X1VOSUNPREUgKilQeU1lbV9SZWFsbG9jKHNlbGYtPmJ1ZiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsbG9jICogc2l6ZW9mKFB5X1VOSUNPREUpKTsKKyAgICBuZXdfYnVmID0gKFB5X1VDUzQgKilQeU1lbV9SZWFsbG9jKHNlbGYtPmJ1ZiwgYWxsb2MgKiBzaXplb2YoUHlfVUNTNCkpOwogICAgIGlmIChuZXdfYnVmID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgcmV0dXJuIC0xOwpAQCAtMTAzLDE0ICsxMTksNjIgQEAKICAgICByZXR1cm4gLTE7CiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCittYWtlX2ludGVybWVkaWF0ZShzdHJpbmdpbyAqc2VsZikKK3sKKyAgICBQeU9iamVjdCAqaW50ZXJtZWRpYXRlID0gX1B5QWNjdV9GaW5pc2goJnNlbGYtPmFjY3UpOworICAgIHNlbGYtPnN0YXRlID0gU1RBVEVfUkVBTElaRUQ7CisgICAgaWYgKGludGVybWVkaWF0ZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoX1B5QWNjdV9Jbml0KCZzZWxmLT5hY2N1KSB8fAorICAgICAgICBfUHlBY2N1X0FjY3VtdWxhdGUoJnNlbGYtPmFjY3UsIGludGVybWVkaWF0ZSkpIHsKKyAgICAgICAgUHlfREVDUkVGKGludGVybWVkaWF0ZSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBzZWxmLT5zdGF0ZSA9IFNUQVRFX0FDQ1VNVUxBVElORzsKKyAgICByZXR1cm4gaW50ZXJtZWRpYXRlOworfQorCitzdGF0aWMgaW50CityZWFsaXplKHN0cmluZ2lvICpzZWxmKQoreworICAgIFB5X3NzaXplX3QgbGVuOworICAgIFB5T2JqZWN0ICppbnRlcm1lZGlhdGU7CisKKyAgICBpZiAoc2VsZi0+c3RhdGUgPT0gU1RBVEVfUkVBTElaRUQpCisgICAgICAgIHJldHVybiAwOworICAgIGFzc2VydChzZWxmLT5zdGF0ZSA9PSBTVEFURV9BQ0NVTVVMQVRJTkcpOworICAgIHNlbGYtPnN0YXRlID0gU1RBVEVfUkVBTElaRUQ7CisKKyAgICBpbnRlcm1lZGlhdGUgPSBfUHlBY2N1X0ZpbmlzaCgmc2VsZi0+YWNjdSk7CisgICAgaWYgKGludGVybWVkaWF0ZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICAvKiBBcHBlbmQgdGhlIGludGVybWVkaWF0ZSBzdHJpbmcgdG8gdGhlIGludGVybmFsIGJ1ZmZlci4KKyAgICAgICBUaGUgbGVuZ3RoIHNob3VsZCBiZSBlcXVhbCB0byB0aGUgY3VycmVudCBjdXJzb3IgcG9zaXRpb24uCisgICAgICovCisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoaW50ZXJtZWRpYXRlKTsKKyAgICBpZiAocmVzaXplX2J1ZmZlcihzZWxmLCBsZW4pIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYoaW50ZXJtZWRpYXRlKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAoIVB5VW5pY29kZV9Bc1VDUzQoaW50ZXJtZWRpYXRlLCBzZWxmLT5idWYsIGxlbiwgMCkpIHsKKyAgICAgICAgUHlfREVDUkVGKGludGVybWVkaWF0ZSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBQeV9ERUNSRUYoaW50ZXJtZWRpYXRlKTsKKyAgICByZXR1cm4gMDsKK30KKwogLyogSW50ZXJuYWwgcm91dGluZSBmb3Igd3JpdGluZyBhIHdob2xlIFB5VW5pY29kZSBvYmplY3QgdG8gdGhlIGJ1ZmZlciBvZiBhCiAgICBTdHJpbmdJTyBvYmplY3QuIFJldHVybnMgMCBvbiBzdWNjZXNzLCBvciAtMSBvbiBlcnJvci4gKi8KIHN0YXRpYyBQeV9zc2l6ZV90CiB3cml0ZV9zdHIoc3RyaW5naW8gKnNlbGYsIFB5T2JqZWN0ICpvYmopCiB7Ci0gICAgUHlfVU5JQ09ERSAqc3RyOwogICAgIFB5X3NzaXplX3QgbGVuOwogICAgIFB5T2JqZWN0ICpkZWNvZGVkID0gTlVMTDsKKwogICAgIGFzc2VydChzZWxmLT5idWYgIT0gTlVMTCk7CiAgICAgYXNzZXJ0KHNlbGYtPnBvcyA+PSAwKTsKIApAQCAtMTMyLDkgKzE5NiwxMSBAQAogICAgICAgICByZXR1cm4gLTE7CiAKICAgICBhc3NlcnQoUHlVbmljb2RlX0NoZWNrKGRlY29kZWQpKTsKLSAgICBzdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShkZWNvZGVkKTsKLSAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUoZGVjb2RlZCk7Ci0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGRlY29kZWQpKSB7CisgICAgICAgIFB5X0RFQ1JFRihkZWNvZGVkKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChkZWNvZGVkKTsKICAgICBhc3NlcnQobGVuID49IDApOwogCiAgICAgLyogVGhpcyBvdmVyZmxvdyBjaGVjayBpcyBub3Qgc3RyaWN0bHkgbmVjZXNzYXJ5LiBIb3dldmVyLCBpdCBhdm9pZHMgdXMgdG8KQEAgLTE0NSw2ICsyMTEsMTcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICJuZXcgcG9zaXRpb24gdG9vIGxhcmdlIik7CiAgICAgICAgIGdvdG8gZmFpbDsKICAgICB9CisKKyAgICBpZiAoc2VsZi0+c3RhdGUgPT0gU1RBVEVfQUNDVU1VTEFUSU5HKSB7CisgICAgICAgIGlmIChzZWxmLT5zdHJpbmdfc2l6ZSA9PSBzZWxmLT5wb3MpIHsKKyAgICAgICAgICAgIGlmIChfUHlBY2N1X0FjY3VtdWxhdGUoJnNlbGYtPmFjY3UsIGRlY29kZWQpKQorICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgICAgIGdvdG8gc3VjY2VzczsKKyAgICAgICAgfQorICAgICAgICBpZiAocmVhbGl6ZShzZWxmKSkKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICB9CisKICAgICBpZiAoc2VsZi0+cG9zICsgbGVuID4gc2VsZi0+c3RyaW5nX3NpemUpIHsKICAgICAgICAgaWYgKHJlc2l6ZV9idWZmZXIoc2VsZiwgc2VsZi0+cG9zICsgbGVuKSA8IDApCiAgICAgICAgICAgICBnb3RvIGZhaWw7CkBAIC0xNjEsMTggKzIzOCwyMiBAQAogCiAgICAgICAgICovCiAgICAgICAgIG1lbXNldChzZWxmLT5idWYgKyBzZWxmLT5zdHJpbmdfc2l6ZSwgJ1wwJywKLSAgICAgICAgICAgICAgIChzZWxmLT5wb3MgLSBzZWxmLT5zdHJpbmdfc2l6ZSkgKiBzaXplb2YoUHlfVU5JQ09ERSkpOworICAgICAgICAgICAgICAgKHNlbGYtPnBvcyAtIHNlbGYtPnN0cmluZ19zaXplKSAqIHNpemVvZihQeV9VQ1M0KSk7CiAgICAgfQogCiAgICAgLyogQ29weSB0aGUgZGF0YSB0byB0aGUgaW50ZXJuYWwgYnVmZmVyLCBvdmVyd3JpdGluZyBzb21lIG9mIHRoZQogICAgICAgIGV4aXN0aW5nIGRhdGEgaWYgc2VsZi0+cG9zIDwgc2VsZi0+c3RyaW5nX3NpemUuICovCi0gICAgbWVtY3B5KHNlbGYtPmJ1ZiArIHNlbGYtPnBvcywgc3RyLCBsZW4gKiBzaXplb2YoUHlfVU5JQ09ERSkpOwotICAgIHNlbGYtPnBvcyArPSBsZW47CisgICAgaWYgKCFQeVVuaWNvZGVfQXNVQ1M0KGRlY29kZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPmJ1ZiArIHNlbGYtPnBvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+YnVmX3NpemUgLSBzZWxmLT5wb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgIDApKQorICAgICAgICBnb3RvIGZhaWw7CiAKK3N1Y2Nlc3M6CiAgICAgLyogU2V0IHRoZSBuZXcgbGVuZ3RoIG9mIHRoZSBpbnRlcm5hbCBzdHJpbmcgaWYgaXQgaGFzIGNoYW5nZWQuICovCi0gICAgaWYgKHNlbGYtPnN0cmluZ19zaXplIDwgc2VsZi0+cG9zKSB7CisgICAgc2VsZi0+cG9zICs9IGxlbjsKKyAgICBpZiAoc2VsZi0+c3RyaW5nX3NpemUgPCBzZWxmLT5wb3MpCiAgICAgICAgIHNlbGYtPnN0cmluZ19zaXplID0gc2VsZi0+cG9zOwotICAgIH0KIAogICAgIFB5X0RFQ1JFRihkZWNvZGVkKTsKICAgICByZXR1cm4gMDsKQEAgLTE5MCw3ICsyNzEsMTAgQEAKIHsKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKTsKICAgICBDSEVDS19DTE9TRUQoc2VsZik7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShzZWxmLT5idWYsIHNlbGYtPnN0cmluZ19zaXplKTsKKyAgICBpZiAoc2VsZi0+c3RhdGUgPT0gU1RBVEVfQUNDVU1VTEFUSU5HKQorICAgICAgICByZXR1cm4gbWFrZV9pbnRlcm1lZGlhdGUoc2VsZik7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoUHlVbmljb2RlXzRCWVRFX0tJTkQsIHNlbGYtPmJ1ZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5zdHJpbmdfc2l6ZSk7CiB9CiAKIFB5RG9jX1NUUlZBUihzdHJpbmdpb190ZWxsX2RvYywKQEAgLTIxNCw3ICsyOTgsNyBAQAogc3RyaW5naW9fcmVhZChzdHJpbmdpbyAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlfc3NpemVfdCBzaXplLCBuOwotICAgIFB5X1VOSUNPREUgKm91dHB1dDsKKyAgICBQeV9VQ1M0ICpvdXRwdXQ7CiAgICAgUHlPYmplY3QgKmFyZyA9IFB5X05vbmU7CiAKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKTsKQEAgLTI0NSwyMSArMzI5LDI5IEBACiAgICAgICAgICAgICBzaXplID0gMDsKICAgICB9CiAKKyAgICAvKiBPcHRpbWl6YXRpb24gZm9yIHNlZWsoMCk7IHJlYWQoKSAqLworICAgIGlmIChzZWxmLT5zdGF0ZSA9PSBTVEFURV9BQ0NVTVVMQVRJTkcgJiYgc2VsZi0+cG9zID09IDAgJiYgc2l6ZSA9PSBuKSB7CisgICAgICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBtYWtlX2ludGVybWVkaWF0ZShzZWxmKTsKKyAgICAgICAgc2VsZi0+cG9zID0gc2VsZi0+c3RyaW5nX3NpemU7CisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgfQorCisgICAgRU5TVVJFX1JFQUxJWkVEKHNlbGYpOwogICAgIG91dHB1dCA9IHNlbGYtPmJ1ZiArIHNlbGYtPnBvczsKICAgICBzZWxmLT5wb3MgKz0gc2l6ZTsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKG91dHB1dCwgc2l6ZSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoUHlVbmljb2RlXzRCWVRFX0tJTkQsIG91dHB1dCwgc2l6ZSk7CiB9CiAKIC8qIEludGVybmFsIGhlbHBlciwgdXNlZCBieSBzdHJpbmdpb19yZWFkbGluZSBhbmQgc3RyaW5naW9faXRlcm5leHQgKi8KIHN0YXRpYyBQeU9iamVjdCAqCiBfc3RyaW5naW9fcmVhZGxpbmUoc3RyaW5naW8gKnNlbGYsIFB5X3NzaXplX3QgbGltaXQpCiB7Ci0gICAgUHlfVU5JQ09ERSAqc3RhcnQsICplbmQsIG9sZF9jaGFyOworICAgIFB5X1VDUzQgKnN0YXJ0LCAqZW5kLCBvbGRfY2hhcjsKICAgICBQeV9zc2l6ZV90IGxlbiwgY29uc3VtZWQ7CiAKICAgICAvKiBJbiBjYXNlIG9mIG92ZXJzZWVrLCByZXR1cm4gdGhlIGVtcHR5IHN0cmluZyAqLwogICAgIGlmIChzZWxmLT5wb3MgPj0gc2VsZi0+c3RyaW5nX3NpemUpCi0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZygiIik7CisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfTmV3KDAsIDApOwogCiAgICAgc3RhcnQgPSBzZWxmLT5idWYgKyBzZWxmLT5wb3M7CiAgICAgaWYgKGxpbWl0IDwgMCB8fCBsaW1pdCA+IHNlbGYtPnN0cmluZ19zaXplIC0gc2VsZi0+cG9zKQpAQCAtMjcwLDE0ICszNjIsMTQgQEAKICAgICAqZW5kID0gJ1wwJzsKICAgICBsZW4gPSBfUHlJT19maW5kX2xpbmVfZW5kaW5nKAogICAgICAgICBzZWxmLT5yZWFkdHJhbnNsYXRlLCBzZWxmLT5yZWFkdW5pdmVyc2FsLCBzZWxmLT5yZWFkbmwsCi0gICAgICAgIHN0YXJ0LCBlbmQsICZjb25zdW1lZCk7CisgICAgICAgIFB5VW5pY29kZV80QllURV9LSU5ELCAoY2hhciopc3RhcnQsIChjaGFyKillbmQsICZjb25zdW1lZCk7CiAgICAgKmVuZCA9IG9sZF9jaGFyOwogICAgIC8qIElmIHdlIGhhdmVuJ3QgZm91bmQgYW55IGxpbmUgZW5kaW5nLCB3ZSBqdXN0IHJldHVybiBldmVyeXRoaW5nCiAgICAgICAgKGBjb25zdW1lZGAgaXMgaWdub3JlZCkuICovCiAgICAgaWYgKGxlbiA8IDApCiAgICAgICAgIGxlbiA9IGxpbWl0OwogICAgIHNlbGYtPnBvcyArPSBsZW47Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShzdGFydCwgbGVuKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwgc3RhcnQsIGxlbik7CiB9CiAKIFB5RG9jX1NUUlZBUihzdHJpbmdpb19yZWFkbGluZV9kb2MsCkBAIC0yOTUsNiArMzg3LDcgQEAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxPOnJlYWRsaW5lIiwgJmFyZykpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIENIRUNLX0NMT1NFRChzZWxmKTsKKyAgICBFTlNVUkVfUkVBTElaRUQoc2VsZik7CiAKICAgICBpZiAoUHlOdW1iZXJfQ2hlY2soYXJnKSkgewogICAgICAgICBsaW1pdCA9IFB5TnVtYmVyX0FzU3NpemVfdChhcmcsIFB5RXhjX092ZXJmbG93RXJyb3IpOwpAQCAtMzE2LDYgKzQwOSw3IEBACiAKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKTsKICAgICBDSEVDS19DTE9TRUQoc2VsZik7CisgICAgRU5TVVJFX1JFQUxJWkVEKHNlbGYpOwogCiAgICAgaWYgKFB5X1RZUEUoc2VsZikgPT0gJlB5U3RyaW5nSU9fVHlwZSkgewogICAgICAgICAvKiBTa2lwIG1ldGhvZCBjYWxsIG92ZXJoZWFkIGZvciBzcGVlZCAqLwpAQCAtMzM3LDcgKzQzMSw3IEBACiAgICAgaWYgKGxpbmUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKGxpbmUpID09IDApIHsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgobGluZSkgPT0gMCkgewogICAgICAgICAvKiBSZWFjaGVkIEVPRiAqLwogICAgICAgICBQeV9ERUNSRUYobGluZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMzg2LDYgKzQ4MCw3IEBACiAgICAgfQogCiAgICAgaWYgKHNpemUgPCBzZWxmLT5zdHJpbmdfc2l6ZSkgeworICAgICAgICBFTlNVUkVfUkVBTElaRUQoc2VsZik7CiAgICAgICAgIGlmIChyZXNpemVfYnVmZmVyKHNlbGYsIHNpemUpIDwgMCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBzZWxmLT5zdHJpbmdfc2l6ZSA9IHNpemU7CkBAIC00NjIsOCArNTU3LDEwIEBACiAgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKG9iaiktPnRwX25hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShvYmopKQorICAgICAgICByZXR1cm4gTlVMTDsKICAgICBDSEVDS19DTE9TRUQoc2VsZik7Ci0gICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShvYmopOworICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopOwogCiAgICAgaWYgKHNpemUgPiAwICYmIHdyaXRlX3N0cihzZWxmLCBvYmopIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC00ODQsNiArNTgxLDcgQEAKICAgICAvKiBGcmVlIHVwIHNvbWUgbWVtb3J5ICovCiAgICAgaWYgKHJlc2l6ZV9idWZmZXIoc2VsZiwgMCkgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBfUHlBY2N1X0Rlc3Ryb3koJnNlbGYtPmFjY3UpOwogICAgIFB5X0NMRUFSKHNlbGYtPnJlYWRubCk7CiAgICAgUHlfQ0xFQVIoc2VsZi0+d3JpdGVubCk7CiAgICAgUHlfQ0xFQVIoc2VsZi0+ZGVjb2Rlcik7CkBAIC01MTMsNiArNjExLDcgQEAKICAgICAgICAgUHlNZW1fRnJlZShzZWxmLT5idWYpOwogICAgICAgICBzZWxmLT5idWYgPSBOVUxMOwogICAgIH0KKyAgICBfUHlBY2N1X0Rlc3Ryb3koJnNlbGYtPmFjY3UpOwogICAgIFB5X0NMRUFSKHNlbGYtPnJlYWRubCk7CiAgICAgUHlfQ0xFQVIoc2VsZi0+d3JpdGVubCk7CiAgICAgUHlfQ0xFQVIoc2VsZi0+ZGVjb2Rlcik7CkBAIC01MzUsNyArNjM0LDcgQEAKICAgICAvKiB0cF9hbGxvYyBpbml0aWFsaXplcyBhbGwgdGhlIGZpZWxkcyB0byB6ZXJvLiBTbyB3ZSBkb24ndCBoYXZlIHRvCiAgICAgICAgaW5pdGlhbGl6ZSB0aGVtIGhlcmUuICovCiAKLSAgICBzZWxmLT5idWYgPSAoUHlfVU5JQ09ERSAqKVB5TWVtX01hbGxvYygwKTsKKyAgICBzZWxmLT5idWYgPSAoUHlfVUNTNCAqKVB5TWVtX01hbGxvYygwKTsKICAgICBpZiAoc2VsZi0+YnVmID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHNlbGYpOwogICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKQEAgLTU1MSw2ICs2NTAsNyBAQAogICAgIFB5T2JqZWN0ICp2YWx1ZSA9IE5VTEw7CiAgICAgUHlPYmplY3QgKm5ld2xpbmVfb2JqID0gTlVMTDsKICAgICBjaGFyICpuZXdsaW5lID0gIlxuIjsKKyAgICBQeV9zc2l6ZV90IHZhbHVlX2xlbjsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8T086X19pbml0X18iLCBrd2xpc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZhbHVlLCAmbmV3bGluZV9vYmopKQpAQCAtNTkyLDYgKzY5Miw3IEBACiAKICAgICBzZWxmLT5vayA9IDA7CiAKKyAgICBfUHlBY2N1X0Rlc3Ryb3koJnNlbGYtPmFjY3UpOwogICAgIFB5X0NMRUFSKHNlbGYtPnJlYWRubCk7CiAgICAgUHlfQ0xFQVIoc2VsZi0+d3JpdGVubCk7CiAgICAgUHlfQ0xFQVIoc2VsZi0+ZGVjb2Rlcik7CkBAIC02MjgsMTkgKzcyOSwyNyBAQAogICAgIC8qIE5vdyBldmVyeXRoaW5nIGlzIHNldCB1cCwgcmVzaXplIGJ1ZmZlciB0byBzaXplIG9mIGluaXRpYWwgdmFsdWUsCiAgICAgICAgYW5kIGNvcHkgaXQgKi8KICAgICBzZWxmLT5zdHJpbmdfc2l6ZSA9IDA7Ci0gICAgaWYgKHZhbHVlICYmIHZhbHVlICE9IFB5X05vbmUpIHsKLSAgICAgICAgUHlfc3NpemVfdCBsZW4gPSBQeVVuaWNvZGVfR2V0U2l6ZSh2YWx1ZSk7CisgICAgaWYgKHZhbHVlICYmIHZhbHVlICE9IFB5X05vbmUpCisgICAgICAgIHZhbHVlX2xlbiA9IFB5VW5pY29kZV9HZXRMZW5ndGgodmFsdWUpOworICAgIGVsc2UKKyAgICAgICAgdmFsdWVfbGVuID0gMDsKKyAgICBpZiAodmFsdWVfbGVuID4gMCkgewogICAgICAgICAvKiBUaGlzIGlzIGEgaGV1cmlzdGljLCBmb3IgbmV3bGluZSB0cmFuc2xhdGlvbiBtaWdodCBjaGFuZ2UKICAgICAgICAgICAgdGhlIHN0cmluZyBsZW5ndGguICovCi0gICAgICAgIGlmIChyZXNpemVfYnVmZmVyKHNlbGYsIGxlbikgPCAwKQorICAgICAgICBpZiAocmVzaXplX2J1ZmZlcihzZWxmLCAwKSA8IDApCiAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIHNlbGYtPnN0YXRlID0gU1RBVEVfUkVBTElaRUQ7CiAgICAgICAgIHNlbGYtPnBvcyA9IDA7CiAgICAgICAgIGlmICh3cml0ZV9zdHIoc2VsZiwgdmFsdWUpIDwgMCkKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgZWxzZSB7CisgICAgICAgIC8qIEVtcHR5IHN0cmluZ2lvIG9iamVjdCwgd2UgY2FuIHN0YXJ0IGJ5IGFjY3VtdWxhdGluZyAqLwogICAgICAgICBpZiAocmVzaXplX2J1ZmZlcihzZWxmLCAwKSA8IDApCiAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIGlmIChfUHlBY2N1X0luaXQoJnNlbGYtPmFjY3UpKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBzZWxmLT5zdGF0ZSA9IFNUQVRFX0FDQ1VNVUxBVElORzsKICAgICB9CiAgICAgc2VsZi0+cG9zID0gMDsKIApAQCAtNzQ3LDExICs4NTYsMjIgQEAKICAgICAgICBvbmNlIGJ5IF9faW5pdF9fLiBTbyB3ZSBkbyBub3QgdGFrZSBhbnkgY2hhbmNlIGFuZCByZXBsYWNlIG9iamVjdCdzCiAgICAgICAgYnVmZmVyIGNvbXBsZXRlbHkuICovCiAgICAgewotICAgICAgICBQeV9VTklDT0RFICpidWYgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShQeVR1cGxlX0dFVF9JVEVNKHN0YXRlLCAwKSk7Ci0gICAgICAgIFB5X3NzaXplX3QgYnVmc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShQeVR1cGxlX0dFVF9JVEVNKHN0YXRlLCAwKSk7Ci0gICAgICAgIGlmIChyZXNpemVfYnVmZmVyKHNlbGYsIGJ1ZnNpemUpIDwgMCkKKyAgICAgICAgUHlPYmplY3QgKml0ZW07CisgICAgICAgIFB5X1VDUzQgKmJ1ZjsKKyAgICAgICAgUHlfc3NpemVfdCBidWZzaXplOworCisgICAgICAgIGl0ZW0gPSBQeVR1cGxlX0dFVF9JVEVNKHN0YXRlLCAwKTsKKyAgICAgICAgYnVmID0gUHlVbmljb2RlX0FzVUNTNENvcHkoaXRlbSk7CisgICAgICAgIGlmIChidWYgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBtZW1jcHkoc2VsZi0+YnVmLCBidWYsIGJ1ZnNpemUgKiBzaXplb2YoUHlfVU5JQ09ERSkpOworICAgICAgICBidWZzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoaXRlbSk7CisKKyAgICAgICAgaWYgKHJlc2l6ZV9idWZmZXIoc2VsZiwgYnVmc2l6ZSkgPCAwKSB7CisgICAgICAgICAgICBQeU1lbV9GcmVlKGJ1Zik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBtZW1jcHkoc2VsZi0+YnVmLCBidWYsIGJ1ZnNpemUgKiBzaXplb2YoUHlfVUNTNCkpOworICAgICAgICBQeU1lbV9GcmVlKGJ1Zik7CiAgICAgICAgIHNlbGYtPnN0cmluZ19zaXplID0gYnVmc2l6ZTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2lvL3RleHRpby5jIGIvTW9kdWxlcy9faW8vdGV4dGlvLmMKaW5kZXggYmFmMGE5Ny4uODMzYTUyNyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9faW8vdGV4dGlvLmMKKysrIGIvTW9kdWxlcy9faW8vdGV4dGlvLmMKQEAgLTExLDYgKzExLDI3IEBACiAjaW5jbHVkZSAic3RydWN0bWVtYmVyLmgiCiAjaW5jbHVkZSAiX2lvbW9kdWxlLmgiCiAKK19QeV9JREVOVElGSUVSKGNsb3NlKTsKK19QeV9JREVOVElGSUVSKF9kZWFsbG9jX3dhcm4pOworX1B5X0lERU5USUZJRVIoZGVjb2RlKTsKK19QeV9JREVOVElGSUVSKGZpbGVubyk7CitfUHlfSURFTlRJRklFUihmbHVzaCk7CitfUHlfSURFTlRJRklFUihnZXRwcmVmZXJyZWRlbmNvZGluZyk7CitfUHlfSURFTlRJRklFUihpc2F0dHkpOworX1B5X0lERU5USUZJRVIobW9kZSk7CitfUHlfSURFTlRJRklFUihuYW1lKTsKK19QeV9JREVOVElGSUVSKHJhdyk7CitfUHlfSURFTlRJRklFUihyZWFkKTsKK19QeV9JREVOVElGSUVSKHJlYWQxKTsKK19QeV9JREVOVElGSUVSKHJlYWRhYmxlKTsKK19QeV9JREVOVElGSUVSKHJlcGxhY2UpOworX1B5X0lERU5USUZJRVIocmVzZXQpOworX1B5X0lERU5USUZJRVIoc2Vlayk7CitfUHlfSURFTlRJRklFUihzZWVrYWJsZSk7CitfUHlfSURFTlRJRklFUihzZXRzdGF0ZSk7CitfUHlfSURFTlRJRklFUih0ZWxsKTsKK19QeV9JREVOVElGSUVSKHdyaXRhYmxlKTsKKwogLyogVGV4dElPQmFzZSAqLwogCiBQeURvY19TVFJWQVIodGV4dGlvYmFzZV9kb2MsCkBAIC0yNzQsMTggKzI5NSwyNiBAQAogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KIAotICAgIG91dHB1dF9sZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUob3V0cHV0KTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKG91dHB1dCkgPT0gLTEpCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICBvdXRwdXRfbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgob3V0cHV0KTsKICAgICBpZiAoc2VsZi0+cGVuZGluZ2NyICYmIChmaW5hbCB8fCBvdXRwdXRfbGVuID4gMCkpIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqb3V0OwotICAgICAgICBQeU9iamVjdCAqbW9kaWZpZWQgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgb3V0cHV0X2xlbiArIDEpOworICAgICAgICAvKiBQcmVmaXggb3V0cHV0IHdpdGggQ1IgKi8KKyAgICAgICAgaW50IGtpbmQ7CisgICAgICAgIFB5T2JqZWN0ICptb2RpZmllZDsKKyAgICAgICAgY2hhciAqb3V0OworCisgICAgICAgIG1vZGlmaWVkID0gUHlVbmljb2RlX05ldyhvdXRwdXRfbGVuICsgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShvdXRwdXQpKTsKICAgICAgICAgaWYgKG1vZGlmaWVkID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICBvdXQgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShtb2RpZmllZCk7Ci0gICAgICAgIG91dFswXSA9ICdccic7Ci0gICAgICAgIG1lbWNweShvdXQgKyAxLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShvdXRwdXQpLAotICAgICAgICAgICAgICAgb3V0cHV0X2xlbiAqIHNpemVvZihQeV9VTklDT0RFKSk7CisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChtb2RpZmllZCk7CisgICAgICAgIG91dCA9IFB5VW5pY29kZV9EQVRBKG1vZGlmaWVkKTsKKyAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIFB5VW5pY29kZV9EQVRBKG1vZGlmaWVkKSwgMCwgJ1xyJyk7CisgICAgICAgIG1lbWNweShvdXQgKyBraW5kLCBQeVVuaWNvZGVfREFUQShvdXRwdXQpLCBraW5kICogb3V0cHV0X2xlbik7CiAgICAgICAgIFB5X0RFQ1JFRihvdXRwdXQpOwotICAgICAgICBvdXRwdXQgPSBtb2RpZmllZDsKKyAgICAgICAgb3V0cHV0ID0gbW9kaWZpZWQ7IC8qIG91dHB1dCByZW1haW5zIHJlYWR5ICovCiAgICAgICAgIHNlbGYtPnBlbmRpbmdjciA9IDA7CiAgICAgICAgIG91dHB1dF9sZW4rKzsKICAgICB9CkBAIC0yOTUsMjEgKzMyNCwxMyBAQAogICAgICAqLwogICAgIGlmICghZmluYWwpIHsKICAgICAgICAgaWYgKG91dHB1dF9sZW4gPiAwCi0gICAgICAgICAgICAmJiBQeVVuaWNvZGVfQVNfVU5JQ09ERShvdXRwdXQpW291dHB1dF9sZW4gLSAxXSA9PSAnXHInKSB7Ci0KLSAgICAgICAgICAgIGlmIChQeV9SRUZDTlQob3V0cHV0KSA9PSAxKSB7Ci0gICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SZXNpemUoJm91dHB1dCwgb3V0cHV0X2xlbiAtIDEpIDwgMCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptb2RpZmllZCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUob3V0cHV0KSwKLSAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2xlbiAtIDEpOwotICAgICAgICAgICAgICAgIGlmIChtb2RpZmllZCA9PSBOVUxMKQotICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihvdXRwdXQpOwotICAgICAgICAgICAgICAgIG91dHB1dCA9IG1vZGlmaWVkOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgJiYgUHlVbmljb2RlX1JFQURfQ0hBUihvdXRwdXQsIG91dHB1dF9sZW4gLSAxKSA9PSAnXHInKQorICAgICAgICB7CisgICAgICAgICAgICBQeU9iamVjdCAqbW9kaWZpZWQgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKG91dHB1dCwgMCwgb3V0cHV0X2xlbiAtMSk7CisgICAgICAgICAgICBpZiAobW9kaWZpZWQgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgUHlfREVDUkVGKG91dHB1dCk7CisgICAgICAgICAgICBvdXRwdXQgPSBtb2RpZmllZDsKICAgICAgICAgICAgIHNlbGYtPnBlbmRpbmdjciA9IDE7CiAgICAgICAgIH0KICAgICB9CkBAIC0zMTcsMTMgKzMzOCwxNSBAQAogICAgIC8qIFJlY29yZCB3aGljaCBuZXdsaW5lcyBhcmUgcmVhZCBhbmQgZG8gbmV3bGluZSB0cmFuc2xhdGlvbiBpZiBkZXNpcmVkLAogICAgICAgIGFsbCBpbiBvbmUgcGFzcy4gKi8KICAgICB7Ci0gICAgICAgIFB5X1VOSUNPREUgKmluX3N0cjsKKyAgICAgICAgdm9pZCAqaW5fc3RyOwogICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgaW50IHNlZW5ubCA9IHNlbGYtPnNlZW5ubDsKICAgICAgICAgaW50IG9ubHlfbGYgPSAwOworICAgICAgICBpbnQga2luZDsKIAotICAgICAgICBpbl9zdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvdXRwdXQpOwotICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUob3V0cHV0KTsKKyAgICAgICAgaW5fc3RyID0gUHlVbmljb2RlX0RBVEEob3V0cHV0KTsKKyAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgob3V0cHV0KTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKG91dHB1dCk7CiAKICAgICAgICAgaWYgKGxlbiA9PSAwKQogICAgICAgICAgICAgcmV0dXJuIG91dHB1dDsKQEAgLTMzMiw3ICszNTUsNyBAQAogICAgICAgICAgICBmb3IgdGhlIFxyICpieXRlKiB3aXRoIHRoZSBsaWJjJ3Mgb3B0aW1pemVkIG1lbWNoci4KICAgICAgICAgICAgKi8KICAgICAgICAgaWYgKHNlZW5ubCA9PSBTRUVOX0xGIHx8IHNlZW5ubCA9PSAwKSB7Ci0gICAgICAgICAgICBvbmx5X2xmID0gKG1lbWNocihpbl9zdHIsICdccicsIGxlbiAqIHNpemVvZihQeV9VTklDT0RFKSkgPT0gTlVMTCk7CisgICAgICAgICAgICBvbmx5X2xmID0gKG1lbWNocihpbl9zdHIsICdccicsIGtpbmQgKiBsZW4pID09IE5VTEwpOwogICAgICAgICB9CiAKICAgICAgICAgaWYgKG9ubHlfbGYpIHsKQEAgLTM0MCw1MSArMzYzLDUxIEBACiAgICAgICAgICAgICAgICAodGhlcmUncyBub3RoaW5nIGVsc2UgdG8gYmUgZG9uZSwgZXZlbiB3aGVuIGluIHRyYW5zbGF0aW9uIG1vZGUpCiAgICAgICAgICAgICAqLwogICAgICAgICAgICAgaWYgKHNlZW5ubCA9PSAwICYmCi0gICAgICAgICAgICAgICAgbWVtY2hyKGluX3N0ciwgJ1xuJywgbGVuICogc2l6ZW9mKFB5X1VOSUNPREUpKSAhPSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSAqcywgKmVuZDsKLSAgICAgICAgICAgICAgICBzID0gaW5fc3RyOwotICAgICAgICAgICAgICAgIGVuZCA9IGluX3N0ciArIGxlbjsKLSAgICAgICAgICAgICAgICBmb3IgKDs7KSB7Ci0gICAgICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgYzsKLSAgICAgICAgICAgICAgICAgICAgLyogRmFzdCBsb29wIGZvciBub24tY29udHJvbCBjaGFyYWN0ZXJzICovCi0gICAgICAgICAgICAgICAgICAgIHdoaWxlICgqcyA+ICdcbicpCi0gICAgICAgICAgICAgICAgICAgICAgICBzKys7Ci0gICAgICAgICAgICAgICAgICAgIGMgPSAqcysrOwotICAgICAgICAgICAgICAgICAgICBpZiAoYyA9PSAnXG4nKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBzZWVubmwgfD0gU0VFTl9MRjsKLSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIG1lbWNocihpbl9zdHIsICdcbicsIGtpbmQgKiBsZW4pICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCkKKyAgICAgICAgICAgICAgICAgICAgc2Vlbm5sIHw9IFNFRU5fTEY7CisgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaSA9IDA7CisgICAgICAgICAgICAgICAgICAgIGZvciAoOzspIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgYzsKKyAgICAgICAgICAgICAgICAgICAgICAgIC8qIEZhc3QgbG9vcCBmb3Igbm9uLWNvbnRyb2wgY2hhcmFjdGVycyAqLworICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGluX3N0ciwgaSkgPiAnXG4nKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkrKzsKKyAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBpbl9zdHIsIGkrKyk7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYyA9PSAnXG4nKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vlbm5sIHw9IFNFRU5fTEY7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaSA+PSBsZW4pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgaWYgKHMgPiBlbmQpCi0gICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAvKiBGaW5pc2hlZDogd2UgaGF2ZSBzY2FubmVkIGZvciBuZXdsaW5lcywgYW5kIG5vbmUgb2YgdGhlbQogICAgICAgICAgICAgICAgbmVlZCB0cmFuc2xhdGluZyAqLwogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKCFzZWxmLT50cmFuc2xhdGUpIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKnMsICplbmQ7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGkgPSAwOwogICAgICAgICAgICAgLyogV2UgaGF2ZSBhbHJlYWR5IHNlZW4gYWxsIG5ld2xpbmUgdHlwZXMsIG5vIG5lZWQgdG8gc2NhbiBhZ2FpbiAqLwogICAgICAgICAgICAgaWYgKHNlZW5ubCA9PSBTRUVOX0FMTCkKICAgICAgICAgICAgICAgICBnb3RvIGVuZHNjYW47Ci0gICAgICAgICAgICBzID0gaW5fc3RyOwotICAgICAgICAgICAgZW5kID0gaW5fc3RyICsgbGVuOwogICAgICAgICAgICAgZm9yICg7OykgewotICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgYzsKKyAgICAgICAgICAgICAgICBQeV9VQ1M0IGM7CiAgICAgICAgICAgICAgICAgLyogRmFzdCBsb29wIGZvciBub24tY29udHJvbCBjaGFyYWN0ZXJzICovCi0gICAgICAgICAgICAgICAgd2hpbGUgKCpzID4gJ1xyJykKLSAgICAgICAgICAgICAgICAgICAgcysrOwotICAgICAgICAgICAgICAgIGMgPSAqcysrOworICAgICAgICAgICAgICAgIHdoaWxlIChQeVVuaWNvZGVfUkVBRChraW5kLCBpbl9zdHIsIGkpID4gJ1xyJykKKyAgICAgICAgICAgICAgICAgICAgaSsrOworICAgICAgICAgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBpbl9zdHIsIGkrKyk7CiAgICAgICAgICAgICAgICAgaWYgKGMgPT0gJ1xuJykKICAgICAgICAgICAgICAgICAgICAgc2Vlbm5sIHw9IFNFRU5fTEY7CiAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYyA9PSAnXHInKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmICgqcyA9PSAnXG4nKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBpbl9zdHIsIGkpID09ICdcbicpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIHNlZW5ubCB8PSBTRUVOX0NSTEY7Ci0gICAgICAgICAgICAgICAgICAgICAgICBzKys7CisgICAgICAgICAgICAgICAgICAgICAgICBpKys7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgc2Vlbm5sIHw9IFNFRU5fQ1I7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChzID4gZW5kKQorICAgICAgICAgICAgICAgIGlmIChpID49IGxlbikKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgaWYgKHNlZW5ubCA9PSBTRUVOX0FMTCkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0zOTMsNjEgKzQxNiw1MSBAQAogICAgICAgICAgICAgOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgUHlPYmplY3QgKnRyYW5zbGF0ZWQgPSBOVUxMOwotICAgICAgICAgICAgUHlfVU5JQ09ERSAqb3V0X3N0cjsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKmluLCAqb3V0LCAqZW5kOwotICAgICAgICAgICAgaWYgKFB5X1JFRkNOVChvdXRwdXQpICE9IDEpIHsKLSAgICAgICAgICAgICAgICAvKiBXZSBjb3VsZCB0cnkgdG8gb3B0aW1pemUgdGhpcyBzbyB0aGF0IHdlIG9ubHkgZG8gYSBjb3B5Ci0gICAgICAgICAgICAgICAgICAgd2hlbiB0aGVyZSBpcyBzb21ldGhpbmcgdG8gdHJhbnNsYXRlLiBPbiB0aGUgb3RoZXIgaGFuZCwKLSAgICAgICAgICAgICAgICAgICBtb3N0IGRlY29kZXJzIHNob3VsZCBvbmx5IG91dHB1dCBub24tc2hhcmVkIHN0cmluZ3MsIGkuZS4KLSAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGlvbiBpcyBkb25lIGluIHBsYWNlLiAqLwotICAgICAgICAgICAgICAgIHRyYW5zbGF0ZWQgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgbGVuKTsKLSAgICAgICAgICAgICAgICBpZiAodHJhbnNsYXRlZCA9PSBOVUxMKQotICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgICAgIGFzc2VydChQeV9SRUZDTlQodHJhbnNsYXRlZCkgPT0gMSk7Ci0gICAgICAgICAgICAgICAgbWVtY3B5KFB5VW5pY29kZV9BU19VTklDT0RFKHRyYW5zbGF0ZWQpLAotICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShvdXRwdXQpLAotICAgICAgICAgICAgICAgICAgICAgICBsZW4gKiBzaXplb2YoUHlfVU5JQ09ERSkpOworICAgICAgICAgICAgdm9pZCAqdHJhbnNsYXRlZDsKKyAgICAgICAgICAgIGludCBraW5kID0gUHlVbmljb2RlX0tJTkQob3V0cHV0KTsKKyAgICAgICAgICAgIHZvaWQgKmluX3N0ciA9IFB5VW5pY29kZV9EQVRBKG91dHB1dCk7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGluLCBvdXQ7CisgICAgICAgICAgICAvKiBYWFg6IFByZXZpb3VzIGluLXBsYWNlIHRyYW5zbGF0aW9uIGhlcmUgaXMgZGlzYWJsZWQgYXMKKyAgICAgICAgICAgICAgIHJlc2l6aW5nIGlzIG5vdCBwb3NzaWJsZSBhbnltb3JlICovCisgICAgICAgICAgICAvKiBXZSBjb3VsZCB0cnkgdG8gb3B0aW1pemUgdGhpcyBzbyB0aGF0IHdlIG9ubHkgZG8gYSBjb3B5CisgICAgICAgICAgICAgICB3aGVuIHRoZXJlIGlzIHNvbWV0aGluZyB0byB0cmFuc2xhdGUuIE9uIHRoZSBvdGhlciBoYW5kLAorICAgICAgICAgICAgICAgd2UgYWxyZWFkeSBrbm93IHRoZXJlIGlzIGEgXHIgYnl0ZSwgc28gY2hhbmNlcyBhcmUgaGlnaAorICAgICAgICAgICAgICAgdGhhdCBzb21ldGhpbmcgbmVlZHMgdG8gYmUgZG9uZS4gKi8KKyAgICAgICAgICAgIHRyYW5zbGF0ZWQgPSBQeU1lbV9NYWxsb2Moa2luZCAqIGxlbik7CisgICAgICAgICAgICBpZiAodHJhbnNsYXRlZCA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgdHJhbnNsYXRlZCA9IG91dHB1dDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG91dF9zdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh0cmFuc2xhdGVkKTsKLSAgICAgICAgICAgIGluID0gaW5fc3RyOwotICAgICAgICAgICAgb3V0ID0gb3V0X3N0cjsKLSAgICAgICAgICAgIGVuZCA9IGluX3N0ciArIGxlbjsKKyAgICAgICAgICAgIGluID0gb3V0ID0gMDsKICAgICAgICAgICAgIGZvciAoOzspIHsKLSAgICAgICAgICAgICAgICBQeV9VTklDT0RFIGM7CisgICAgICAgICAgICAgICAgUHlfVUNTNCBjOwogICAgICAgICAgICAgICAgIC8qIEZhc3QgbG9vcCBmb3Igbm9uLWNvbnRyb2wgY2hhcmFjdGVycyAqLwotICAgICAgICAgICAgICAgIHdoaWxlICgoYyA9ICppbisrKSA+ICdccicpCi0gICAgICAgICAgICAgICAgICAgICpvdXQrKyA9IGM7CisgICAgICAgICAgICAgICAgd2hpbGUgKChjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgaW5fc3RyLCBpbisrKSkgPiAnXHInKQorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgdHJhbnNsYXRlZCwgb3V0KyssIGMpOwogICAgICAgICAgICAgICAgIGlmIChjID09ICdcbicpIHsKLSAgICAgICAgICAgICAgICAgICAgKm91dCsrID0gYzsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIHRyYW5zbGF0ZWQsIG91dCsrLCBjKTsKICAgICAgICAgICAgICAgICAgICAgc2Vlbm5sIHw9IFNFRU5fTEY7CiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBpZiAoYyA9PSAnXHInKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmICgqaW4gPT0gJ1xuJykgeworICAgICAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgaW5fc3RyLCBpbikgPT0gJ1xuJykgewogICAgICAgICAgICAgICAgICAgICAgICAgaW4rKzsKICAgICAgICAgICAgICAgICAgICAgICAgIHNlZW5ubCB8PSBTRUVOX0NSTEY7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgc2Vlbm5sIHw9IFNFRU5fQ1I7Ci0gICAgICAgICAgICAgICAgICAgICpvdXQrKyA9ICdcbic7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCB0cmFuc2xhdGVkLCBvdXQrKywgJ1xuJyk7CiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoaW4gPiBlbmQpCisgICAgICAgICAgICAgICAgaWYgKGluID4gbGVuKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAqb3V0KysgPSBjOworICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCB0cmFuc2xhdGVkLCBvdXQrKywgYyk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAodHJhbnNsYXRlZCAhPSBvdXRwdXQpIHsKLSAgICAgICAgICAgICAgICBQeV9ERUNSRUYob3V0cHV0KTsKLSAgICAgICAgICAgICAgICBvdXRwdXQgPSB0cmFuc2xhdGVkOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKG91dCAtIG91dF9zdHIgIT0gbGVuKSB7Ci0gICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SZXNpemUoJm91dHB1dCwgb3V0IC0gb3V0X3N0cikgPCAwKQotICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlfREVDUkVGKG91dHB1dCk7CisgICAgICAgICAgICBvdXRwdXQgPSBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKGtpbmQsIHRyYW5zbGF0ZWQsIG91dCk7CisgICAgICAgICAgICBQeU1lbV9GcmVlKHRyYW5zbGF0ZWQpOworICAgICAgICAgICAgaWYgKCFvdXRwdXQpCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQogICAgICAgICBzZWxmLT5zZWVubmwgfD0gc2Vlbm5sOwogICAgIH0KQEAgLTUxNCw4ICs1MjcsOCBAQAogICAgIGZsYWcgPj49IDE7CiAKICAgICBpZiAoc2VsZi0+ZGVjb2RlciAhPSBQeV9Ob25lKQotICAgICAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5kZWNvZGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2V0c3RhdGUiLCAiKChPSykpIiwgYnVmZmVyLCBmbGFnKTsKKyAgICAgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+ZGVjb2RlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlB5SWRfc2V0c3RhdGUsICIoKE9LKSkiLCBidWZmZXIsIGZsYWcpOwogICAgIGVsc2UKICAgICAgICAgUHlfUkVUVVJOX05PTkU7CiB9CkBAIC02ODAsMTIgKzY5MywxNiBAQAogICAgIFB5T2JqZWN0ICpwZW5kaW5nX2J5dGVzOyAgICAgICAvKiBsaXN0IG9mIGJ5dGVzIG9iamVjdHMgd2FpdGluZyB0byBiZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3cml0dGVuLCBvciBOVUxMICovCiAgICAgUHlfc3NpemVfdCBwZW5kaW5nX2J5dGVzX2NvdW50OwotICAgIFB5T2JqZWN0ICpzbmFwc2hvdDsKKwogICAgIC8qIHNuYXBzaG90IGlzIGVpdGhlciBOb25lLCBvciBhIHR1cGxlIChkZWNfZmxhZ3MsIG5leHRfaW5wdXQpIHdoZXJlCiAgICAgICogZGVjX2ZsYWdzIGlzIHRoZSBzZWNvbmQgKGludGVnZXIpIGl0ZW0gb2YgdGhlIGRlY29kZXIgc3RhdGUgYW5kCiAgICAgICogbmV4dF9pbnB1dCBpcyB0aGUgY2h1bmsgb2YgaW5wdXQgYnl0ZXMgdGhhdCBjb21lcyBuZXh0IGFmdGVyIHRoZQogICAgICAqIHNuYXBzaG90IHBvaW50LiAgV2UgdXNlIHRoaXMgdG8gcmVjb25zdHJ1Y3QgZGVjb2RlciBzdGF0ZXMgaW4gdGVsbCgpLgogICAgICAqLworICAgIFB5T2JqZWN0ICpzbmFwc2hvdDsKKyAgICAvKiBCeXRlcy10by1jaGFyYWN0ZXJzIHJhdGlvIGZvciB0aGUgY3VycmVudCBjaHVuay4gU2VydmVzIGFzIGlucHV0IGZvcgorICAgICAgIHRoZSBoZXVyaXN0aWMgaW4gdGVsbCgpLiAqLworICAgIGRvdWJsZSBiMmNyYXRpbzsKIAogICAgIC8qIENhY2hlIHJhdyBvYmplY3QgaWYgaXQncyBhIEZpbGVJTyBvYmplY3QgKi8KICAgICBQeU9iamVjdCAqcmF3OwpAQCAtNzAxLDI1ICs3MTgsMjEgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBhc2NpaV9lbmNvZGUodGV4dGlvICpzZWxmLCBQeU9iamVjdCAqdGV4dCkKIHsKLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZUFTQ0lJKFB5VW5pY29kZV9BU19VTklDT0RFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSk7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfQXNBU0NJSVN0cmluZyh0ZXh0LCBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIHV0ZjE2YmVfZW5jb2RlKHRleHRpbyAqc2VsZiwgUHlPYmplY3QgKnRleHQpCiB7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEYxNihQeVVuaWNvZGVfQVNfVU5JQ09ERSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycyksIDEpOworICAgIHJldHVybiBfUHlVbmljb2RlX0VuY29kZVVURjE2KHRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSwgMSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiB1dGYxNmxlX2VuY29kZSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICp0ZXh0KQogewotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlVVRGMTYoUHlVbmljb2RlX0FTX1VOSUNPREUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpLCAtMSk7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfRW5jb2RlVVRGMTYodGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpLCAtMSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC03MzMsMjUgKzc0NiwyMiBAQAogICAgICAgICByZXR1cm4gdXRmMTZsZV9lbmNvZGUoc2VsZiwgdGV4dCk7CiAjZW5kaWYKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEYxNihQeVVuaWNvZGVfQVNfVU5JQ09ERSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycyksIDApOworICAgIHJldHVybiBfUHlVbmljb2RlX0VuY29kZVVURjE2KHRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSwgMCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiB1dGYzMmJlX2VuY29kZSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICp0ZXh0KQogewotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlVVRGMzIoUHlVbmljb2RlX0FTX1VOSUNPREUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpLCAxKTsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9FbmNvZGVVVEYzMih0ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycyksIDEpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogdXRmMzJsZV9lbmNvZGUodGV4dGlvICpzZWxmLCBQeU9iamVjdCAqdGV4dCkKIHsKLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZVVURjMyKFB5VW5pY29kZV9BU19VTklDT0RFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSwgLTEpOworICAgIHJldHVybiBfUHlVbmljb2RlX0VuY29kZVVURjMyKHRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSwgLTEpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtNzY1LDI1ICs3NzUsMjAgQEAKICAgICAgICAgcmV0dXJuIHV0ZjMybGVfZW5jb2RlKHNlbGYsIHRleHQpOwogI2VuZGlmCiAgICAgfQotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlVVRGMzIoUHlVbmljb2RlX0FTX1VOSUNPREUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpLCAwKTsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9FbmNvZGVVVEYzMih0ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycyksIDApOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogdXRmOF9lbmNvZGUodGV4dGlvICpzZWxmLCBQeU9iamVjdCAqdGV4dCkKIHsKLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZVVURjgoUHlVbmljb2RlX0FTX1VOSUNPREUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSk7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfQXNVVEY4U3RyaW5nKHRleHQsIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycykpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogbGF0aW4xX2VuY29kZSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICp0ZXh0KQogewotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlTGF0aW4xKFB5VW5pY29kZV9BU19VTklDT0RFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpKTsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9Bc0xhdGluMVN0cmluZyh0ZXh0LCBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpKTsKIH0KIAogLyogTWFwIG5vcm1hbGl6ZWQgZW5jb2RpbmcgbmFtZXMgb250byB0aGUgc3BlY2lhbGl6ZWQgZW5jb2RpbmcgZnVuY3MgKi8KQEAgLTg1MiwxMSArODU3LDEyIEBACiAgICAgc2VsZi0+ZGVjb2RlZF9jaGFyc191c2VkID0gMDsKICAgICBzZWxmLT5wZW5kaW5nX2J5dGVzX2NvdW50ID0gMDsKICAgICBzZWxmLT5lbmNvZGVmdW5jID0gTlVMTDsKKyAgICBzZWxmLT5iMmNyYXRpbyA9IDAuMDsKIAogICAgIGlmIChlbmNvZGluZyA9PSBOVUxMKSB7CiAgICAgICAgIC8qIFRyeSBvcy5kZXZpY2VfZW5jb2RpbmcoZmlsZW5vKSAqLwogICAgICAgICBQeU9iamVjdCAqZmlsZW5vOwotICAgICAgICBmaWxlbm8gPSBQeU9iamVjdF9DYWxsTWV0aG9kKGJ1ZmZlciwgImZpbGVubyIsIE5VTEwpOworICAgICAgICBmaWxlbm8gPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGJ1ZmZlciwgJlB5SWRfZmlsZW5vLCBOVUxMKTsKICAgICAgICAgLyogSWdub3JlIG9ubHkgQXR0cmlidXRlRXJyb3IgYW5kIFVuc3VwcG9ydGVkT3BlcmF0aW9uICovCiAgICAgICAgIGlmIChmaWxlbm8gPT0gTlVMTCkgewogICAgICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpIHx8CkBAIC04NjgsOSArODc0LDEzIEBACiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBzZWxmLT5lbmNvZGluZyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc3RhdGUtPm9zX21vZHVsZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGV2aWNlX2VuY29kaW5nIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTiIsIGZpbGVubyk7CisgICAgICAgICAgICBpbnQgZmQgPSAoaW50KSBQeUxvbmdfQXNMb25nKGZpbGVubyk7CisgICAgICAgICAgICBQeV9ERUNSRUYoZmlsZW5vKTsKKyAgICAgICAgICAgIGlmIChmZCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKSB7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgc2VsZi0+ZW5jb2RpbmcgPSBfUHlfZGV2aWNlX2VuY29kaW5nKGZkKTsKICAgICAgICAgICAgIGlmIChzZWxmLT5lbmNvZGluZyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICBlbHNlIGlmICghUHlVbmljb2RlX0NoZWNrKHNlbGYtPmVuY29kaW5nKSkKQEAgLTg4Nyw4ICs4OTcsOCBAQAogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgIHVzZV9sb2NhbGU6Ci0gICAgICAgICAgICBzZWxmLT5lbmNvZGluZyA9IFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICAgICAgc3RhdGUtPmxvY2FsZV9tb2R1bGUsICJnZXRwcmVmZXJyZWRlbmNvZGluZyIsIE5VTEwpOworICAgICAgICAgICAgc2VsZi0+ZW5jb2RpbmcgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKAorICAgICAgICAgICAgICAgIHN0YXRlLT5sb2NhbGVfbW9kdWxlLCAmUHlJZF9nZXRwcmVmZXJyZWRlbmNvZGluZywgTlVMTCk7CiAgICAgICAgICAgICBpZiAoc2VsZi0+ZW5jb2RpbmcgPT0gTlVMTCkgewogICAgICAgICAgICAgICBjYXRjaF9JbXBvcnRFcnJvcjoKICAgICAgICAgICAgICAgICAvKgpAQCAtOTUzLDcgKzk2Myw3IEBACiAjZW5kaWYKIAogICAgIC8qIEJ1aWxkIHRoZSBkZWNvZGVyIG9iamVjdCAqLwotICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2QoYnVmZmVyLCAicmVhZGFibGUiLCBOVUxMKTsKKyAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGJ1ZmZlciwgJlB5SWRfcmVhZGFibGUsIE5VTEwpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKICAgICByID0gUHlPYmplY3RfSXNUcnVlKHJlcyk7CkBAIC05NzgsNyArOTg4LDcgQEAKICAgICB9CiAKICAgICAvKiBCdWlsZCB0aGUgZW5jb2RlciBvYmplY3QgKi8KLSAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGJ1ZmZlciwgIndyaXRhYmxlIiwgTlVMTCk7CisgICAgcmVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChidWZmZXIsICZQeUlkX3dyaXRhYmxlLCBOVUxMKTsKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgciA9IFB5T2JqZWN0X0lzVHJ1ZShyZXMpOwpAQCAtOTk1LDcgKzEwMDUsNyBAQAogICAgICAgICBjaSA9IF9QeUNvZGVjX0xvb2t1cChlbmNvZGluZyk7CiAgICAgICAgIGlmIChjaSA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgcmVzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhjaSwgIm5hbWUiKTsKKyAgICAgICAgcmVzID0gX1B5T2JqZWN0X0dldEF0dHJJZChjaSwgJlB5SWRfbmFtZSk7CiAgICAgICAgIFB5X0RFQ1JFRihjaSk7CiAgICAgICAgIGlmIChyZXMgPT0gTlVMTCkgewogICAgICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQpAQCAtMTAyMiw3ICsxMDMyLDcgQEAKICAgICBpZiAoUHlfVFlQRShidWZmZXIpID09ICZQeUJ1ZmZlcmVkUmVhZGVyX1R5cGUgfHwKICAgICAgICAgUHlfVFlQRShidWZmZXIpID09ICZQeUJ1ZmZlcmVkV3JpdGVyX1R5cGUgfHwKICAgICAgICAgUHlfVFlQRShidWZmZXIpID09ICZQeUJ1ZmZlcmVkUmFuZG9tX1R5cGUpIHsKLSAgICAgICAgcmF3ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhidWZmZXIsICJyYXciKTsKKyAgICAgICAgcmF3ID0gX1B5T2JqZWN0X0dldEF0dHJJZChidWZmZXIsICZQeUlkX3Jhdyk7CiAgICAgICAgIC8qIENhY2hlIHRoZSByYXcgRmlsZUlPIG9iamVjdCB0byBzcGVlZCB1cCAnY2xvc2VkJyBjaGVja3MgKi8KICAgICAgICAgaWYgKHJhdyA9PSBOVUxMKSB7CiAgICAgICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCkBAIC0xMDM2LDEzICsxMDQ2LDEzIEBACiAgICAgICAgICAgICBQeV9ERUNSRUYocmF3KTsKICAgICB9CiAKLSAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGJ1ZmZlciwgInNlZWthYmxlIiwgTlVMTCk7CisgICAgcmVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChidWZmZXIsICZQeUlkX3NlZWthYmxlLCBOVUxMKTsKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgc2VsZi0+c2Vla2FibGUgPSBzZWxmLT50ZWxsaW5nID0gUHlPYmplY3RfSXNUcnVlKHJlcyk7CiAgICAgUHlfREVDUkVGKHJlcyk7CiAKLSAgICBzZWxmLT5oYXNfcmVhZDEgPSBQeU9iamVjdF9IYXNBdHRyU3RyaW5nKGJ1ZmZlciwgInJlYWQxIik7CisgICAgc2VsZi0+aGFzX3JlYWQxID0gX1B5T2JqZWN0X0hhc0F0dHJJZChidWZmZXIsICZQeUlkX3JlYWQxKTsKIAogICAgIHNlbGYtPmVuY29kaW5nX3N0YXJ0X29mX3N0cmVhbSA9IDA7CiAgICAgaWYgKHNlbGYtPnNlZWthYmxlICYmIHNlbGYtPmVuY29kZXIpIHsKQEAgLTEyMDgsMTggKzEyMTgsNiBAQAogICAgIHJldHVybiBidWZmZXI7CiB9CiAKLVB5X0xPQ0FMX0lOTElORShjb25zdCBQeV9VTklDT0RFICopCi1maW5kY2hhcihjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIFB5X1VOSUNPREUgY2gpCi17Ci0gICAgLyogbGlrZSB3Y3NjaHIsIGJ1dCBkb2Vzbid0IHN0b3AgYXQgTlVMTCBjaGFyYWN0ZXJzICovCi0gICAgd2hpbGUgKHNpemUtLSA+IDApIHsKLSAgICAgICAgaWYgKCpzID09IGNoKQotICAgICAgICAgICAgcmV0dXJuIHM7Ci0gICAgICAgIHMrKzsKLSAgICB9Ci0gICAgcmV0dXJuIE5VTEw7Ci19Ci0KIC8qIEZsdXNoIHRoZSBpbnRlcm5hbCB3cml0ZSBidWZmZXIuIFRoaXMgZG9lc24ndCBleHBsaWNpdGx5IGZsdXNoIHRoZQogICAgdW5kZXJseWluZyBidWZmZXJlZCBvYmplY3QsIHRob3VnaC4gKi8KIHN0YXRpYyBpbnQKQEAgLTEyNjQsNiArMTI2Miw5IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodGV4dCkgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgQ0hFQ0tfQ0xPU0VEKHNlbGYpOwogCiAgICAgaWYgKHNlbGYtPmVuY29kZXIgPT0gTlVMTCkKQEAgLTEyNzEsMTYgKzEyNzIsMTUgQEAKIAogICAgIFB5X0lOQ1JFRih0ZXh0KTsKIAotICAgIHRleHRsZW4gPSBQeVVuaWNvZGVfR2V0U2l6ZSh0ZXh0KTsKKyAgICB0ZXh0bGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodGV4dCk7CiAKICAgICBpZiAoKHNlbGYtPndyaXRldHJhbnNsYXRlICYmIHNlbGYtPndyaXRlbmwgIT0gTlVMTCkgfHwgc2VsZi0+bGluZV9idWZmZXJpbmcpCi0gICAgICAgIGlmIChmaW5kY2hhcihQeVVuaWNvZGVfQVNfVU5JQ09ERSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh0ZXh0KSwgJ1xuJykpCisgICAgICAgIGlmIChQeVVuaWNvZGVfRmluZENoYXIodGV4dCwgJ1xuJywgMCwgUHlVbmljb2RlX0dFVF9MRU5HVEgodGV4dCksIDEpICE9IC0xKQogICAgICAgICAgICAgaGFzbGYgPSAxOwogCiAgICAgaWYgKGhhc2xmICYmIHNlbGYtPndyaXRldHJhbnNsYXRlICYmIHNlbGYtPndyaXRlbmwgIT0gTlVMTCkgewotICAgICAgICBQeU9iamVjdCAqbmV3dGV4dCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICB0ZXh0LCAicmVwbGFjZSIsICJzcyIsICJcbiIsIHNlbGYtPndyaXRlbmwpOworICAgICAgICBQeU9iamVjdCAqbmV3dGV4dCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoCisgICAgICAgICAgICB0ZXh0LCAmUHlJZF9yZXBsYWNlLCAic3MiLCAiXG4iLCBzZWxmLT53cml0ZW5sKTsKICAgICAgICAgUHlfREVDUkVGKHRleHQpOwogICAgICAgICBpZiAobmV3dGV4dCA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xMjkxLDggKzEyOTEsNyBAQAogICAgICAgICBuZWVkZmx1c2ggPSAxOwogICAgIGVsc2UgaWYgKHNlbGYtPmxpbmVfYnVmZmVyaW5nICYmCiAgICAgICAgIChoYXNsZiB8fAotICAgICAgICAgZmluZGNoYXIoUHlVbmljb2RlX0FTX1VOSUNPREUodGV4dCksCi0gICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodGV4dCksICdccicpKSkKKyAgICAgICAgIFB5VW5pY29kZV9GaW5kQ2hhcih0ZXh0LCAnXHInLCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSCh0ZXh0KSwgMSkgIT0gLTEpKQogICAgICAgICBuZWVkZmx1c2ggPSAxOwogCiAgICAgLyogWFhYIFdoYXQgaWYgd2Ugd2VyZSBqdXN0IHJlYWRpbmc/ICovCkBAIC0xMzM2LDcgKzEzMzUsNyBAQAogICAgIFB5X0NMRUFSKHNlbGYtPnNuYXBzaG90KTsKIAogICAgIGlmIChzZWxmLT5kZWNvZGVyKSB7Ci0gICAgICAgIHJldCA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+ZGVjb2RlciwgInJlc2V0IiwgTlVMTCk7CisgICAgICAgIHJldCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+ZGVjb2RlciwgJlB5SWRfcmVzZXQsIE5VTEwpOwogICAgICAgICBpZiAocmV0ID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgUHlfREVDUkVGKHJldCk7CkBAIC0xMzY0LDcgKzEzNjMsOCBAQAogICAgIGlmIChzZWxmLT5kZWNvZGVkX2NoYXJzID09IE5VTEwpCiAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgMCk7CiAKLSAgICBhdmFpbCA9IChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZi0+ZGVjb2RlZF9jaGFycykKKyAgICAvKiBkZWNvZGVkX2NoYXJzIGlzIGd1YXJhbnRlZWQgdG8gYmUgInJlYWR5Ii4gKi8KKyAgICBhdmFpbCA9IChQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmLT5kZWNvZGVkX2NoYXJzKQogICAgICAgICAgICAgIC0gc2VsZi0+ZGVjb2RlZF9jaGFyc191c2VkKTsKIAogICAgIGFzc2VydChhdmFpbCA+PSAwKTsKQEAgLTEzNzMsOSArMTM3Myw5IEBACiAgICAgICAgIG4gPSBhdmFpbDsKIAogICAgIGlmIChzZWxmLT5kZWNvZGVkX2NoYXJzX3VzZWQgPiAwIHx8IG4gPCBhdmFpbCkgewotICAgICAgICBjaGFycyA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYtPmRlY29kZWRfY2hhcnMpCi0gICAgICAgICAgICArIHNlbGYtPmRlY29kZWRfY2hhcnNfdXNlZCwgbik7CisgICAgICAgIGNoYXJzID0gUHlVbmljb2RlX1N1YnN0cmluZyhzZWxmLT5kZWNvZGVkX2NoYXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+ZGVjb2RlZF9jaGFyc191c2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+ZGVjb2RlZF9jaGFyc191c2VkICsgbik7CiAgICAgICAgIGlmIChjaGFycyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMTM5MSwxMiArMTM5MSwxMyBAQAogLyogUmVhZCBhbmQgZGVjb2RlIHRoZSBuZXh0IGNodW5rIG9mIGRhdGEgZnJvbSB0aGUgQnVmZmVyZWRSZWFkZXIuCiAgKi8KIHN0YXRpYyBpbnQKLXRleHRpb3dyYXBwZXJfcmVhZF9jaHVuayh0ZXh0aW8gKnNlbGYpCit0ZXh0aW93cmFwcGVyX3JlYWRfY2h1bmsodGV4dGlvICpzZWxmLCBQeV9zc2l6ZV90IHNpemVfaGludCkKIHsKICAgICBQeU9iamVjdCAqZGVjX2J1ZmZlciA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmRlY19mbGFncyA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmlucHV0X2NodW5rID0gTlVMTDsKICAgICBQeU9iamVjdCAqZGVjb2RlZF9jaGFycywgKmNodW5rX3NpemU7CisgICAgUHlfc3NpemVfdCBuYnl0ZXMsIG5jaGFyczsKICAgICBpbnQgZW9mOwogCiAgICAgLyogVGhlIHJldHVybiB2YWx1ZSBpcyBUcnVlIHVubGVzcyBFT0Ygd2FzIHJlYWNoZWQuICBUaGUgZGVjb2RlZCBzdHJpbmcgaXMKQEAgLTE0MzIsNyArMTQzMywxMCBAQAogICAgIH0KIAogICAgIC8qIFJlYWQgYSBjaHVuaywgZGVjb2RlIGl0LCBhbmQgcHV0IHRoZSByZXN1bHQgaW4gc2VsZi5fZGVjb2RlZF9jaGFycy4gKi8KLSAgICBjaHVua19zaXplID0gUHlMb25nX0Zyb21Tc2l6ZV90KHNlbGYtPmNodW5rX3NpemUpOworICAgIGlmIChzaXplX2hpbnQgPiAwKSB7CisgICAgICAgIHNpemVfaGludCA9IChQeV9zc2l6ZV90KShQeV9NQVgoc2VsZi0+YjJjcmF0aW8sIDEuMCkgKiBzaXplX2hpbnQpOworICAgIH0KKyAgICBjaHVua19zaXplID0gUHlMb25nX0Zyb21Tc2l6ZV90KFB5X01BWChzZWxmLT5jaHVua19zaXplLCBzaXplX2hpbnQpKTsKICAgICBpZiAoY2h1bmtfc2l6ZSA9PSBOVUxMKQogICAgICAgICBnb3RvIGZhaWw7CiAgICAgaW5wdXRfY2h1bmsgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzZWxmLT5idWZmZXIsCkBAIC0xNDQzLDcgKzE0NDcsOCBAQAogICAgICAgICBnb3RvIGZhaWw7CiAgICAgYXNzZXJ0KFB5Qnl0ZXNfQ2hlY2soaW5wdXRfY2h1bmspKTsKIAotICAgIGVvZiA9IChQeUJ5dGVzX1NpemUoaW5wdXRfY2h1bmspID09IDApOworICAgIG5ieXRlcyA9IFB5Qnl0ZXNfU2l6ZShpbnB1dF9jaHVuayk7CisgICAgZW9mID0gKG5ieXRlcyA9PSAwKTsKIAogICAgIGlmIChQeV9UWVBFKHNlbGYtPmRlY29kZXIpID09ICZQeUluY3JlbWVudGFsTmV3bGluZURlY29kZXJfVHlwZSkgewogICAgICAgICBkZWNvZGVkX2NoYXJzID0gX1B5SW5jcmVtZW50YWxOZXdsaW5lRGVjb2Rlcl9kZWNvZGUoCkBAIC0xNDU3LDggKzE0NjIsMTUgQEAKICAgICAvKiBUT0RPIHNhbml0eSBjaGVjazogaXNpbnN0YW5jZShkZWNvZGVkX2NoYXJzLCB1bmljb2RlKSAqLwogICAgIGlmIChkZWNvZGVkX2NoYXJzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZmFpbDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGRlY29kZWRfY2hhcnMpID09IC0xKQorICAgICAgICBnb3RvIGZhaWw7CiAgICAgdGV4dGlvd3JhcHBlcl9zZXRfZGVjb2RlZF9jaGFycyhzZWxmLCBkZWNvZGVkX2NoYXJzKTsKLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKGRlY29kZWRfY2hhcnMpID4gMCkKKyAgICBuY2hhcnMgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChkZWNvZGVkX2NoYXJzKTsKKyAgICBpZiAobmNoYXJzID4gMCkKKyAgICAgICAgc2VsZi0+YjJjcmF0aW8gPSAoZG91YmxlKSBuYnl0ZXMgLyBuY2hhcnM7CisgICAgZWxzZQorICAgICAgICBzZWxmLT5iMmNyYXRpbyA9IDAuMDsKKyAgICBpZiAobmNoYXJzID4gMCkKICAgICAgICAgZW9mID0gMDsKIAogICAgIGlmIChzZWxmLT50ZWxsaW5nKSB7CkBAIC0xNTA1LDEyICsxNTE3LDE3IEBACiAKICAgICBpZiAobiA8IDApIHsKICAgICAgICAgLyogUmVhZCBldmVyeXRoaW5nICovCi0gICAgICAgIFB5T2JqZWN0ICpieXRlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+YnVmZmVyLCAicmVhZCIsIE5VTEwpOworICAgICAgICBQeU9iamVjdCAqYnl0ZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfcmVhZCwgTlVMTCk7CiAgICAgICAgIFB5T2JqZWN0ICpkZWNvZGVkOwogICAgICAgICBpZiAoYnl0ZXMgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgZGVjb2RlZCA9IFB5T2JqZWN0X0NhbGxNZXRob2RPYmpBcmdzKHNlbGYtPmRlY29kZXIsIF9QeUlPX3N0cl9kZWNvZGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieXRlcywgUHlfVHJ1ZSwgTlVMTCk7CisKKyAgICAgICAgaWYgKFB5X1RZUEUoc2VsZi0+ZGVjb2RlcikgPT0gJlB5SW5jcmVtZW50YWxOZXdsaW5lRGVjb2Rlcl9UeXBlKQorICAgICAgICAgICAgZGVjb2RlZCA9IF9QeUluY3JlbWVudGFsTmV3bGluZURlY29kZXJfZGVjb2RlKHNlbGYtPmRlY29kZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZXMsIDEpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBkZWNvZGVkID0gUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3MoCisgICAgICAgICAgICAgICAgc2VsZi0+ZGVjb2RlciwgX1B5SU9fc3RyX2RlY29kZSwgYnl0ZXMsIFB5X1RydWUsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYoYnl0ZXMpOwogICAgICAgICBpZiAoZGVjb2RlZCA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBmYWlsOwpAQCAtMTUzNiwxMSArMTU1MywxMyBAQAogICAgICAgICByZXN1bHQgPSB0ZXh0aW93cmFwcGVyX2dldF9kZWNvZGVkX2NoYXJzKHNlbGYsIG4pOwogICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgIHJlbWFpbmluZyAtPSBQeVVuaWNvZGVfR0VUX1NJWkUocmVzdWx0KTsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShyZXN1bHQpID09IC0xKQorICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICByZW1haW5pbmcgLT0gUHlVbmljb2RlX0dFVF9MRU5HVEgocmVzdWx0KTsKIAogICAgICAgICAvKiBLZWVwIHJlYWRpbmcgY2h1bmtzIHVudGlsIHdlIGhhdmUgbiBjaGFyYWN0ZXJzIHRvIHJldHVybiAqLwogICAgICAgICB3aGlsZSAocmVtYWluaW5nID4gMCkgewotICAgICAgICAgICAgcmVzID0gdGV4dGlvd3JhcHBlcl9yZWFkX2NodW5rKHNlbGYpOworICAgICAgICAgICAgcmVzID0gdGV4dGlvd3JhcHBlcl9yZWFkX2NodW5rKHNlbGYsIHJlbWFpbmluZyk7CiAgICAgICAgICAgICBpZiAocmVzIDwgMCkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgICAgICBpZiAocmVzID09IDApICAvKiBFT0YgKi8KQEAgLTE1NTAsMTMgKzE1NjksMTQgQEAKICAgICAgICAgICAgICAgICBpZiAoY2h1bmtzID09IE5VTEwpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChQeUxpc3RfQXBwZW5kKGNodW5rcywgcmVzdWx0KSA8IDApCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgocmVzdWx0KSA+IDAgJiYKKyAgICAgICAgICAgICAgICBQeUxpc3RfQXBwZW5kKGNodW5rcywgcmVzdWx0KSA8IDApCiAgICAgICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CiAgICAgICAgICAgICByZXN1bHQgPSB0ZXh0aW93cmFwcGVyX2dldF9kZWNvZGVkX2NoYXJzKHNlbGYsIHJlbWFpbmluZyk7CiAgICAgICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgcmVtYWluaW5nIC09IFB5VW5pY29kZV9HRVRfU0laRShyZXN1bHQpOworICAgICAgICAgICAgcmVtYWluaW5nIC09IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlc3VsdCk7CiAgICAgICAgIH0KICAgICAgICAgaWYgKGNodW5rcyAhPSBOVUxMKSB7CiAgICAgICAgICAgICBpZiAocmVzdWx0ICE9IE5VTEwgJiYgUHlMaXN0X0FwcGVuZChjaHVua3MsIHJlc3VsdCkgPCAwKQpAQCAtMTU3NiwzNiArMTU5NiwzOSBAQAogfQogCiAKLS8qIE5PVEU6IGBlbmRgIG11c3QgcG9pbnQgdG8gdGhlIHJlYWwgZW5kIG9mIHRoZSBQeV9VTklDT0RFIHN0b3JhZ2UsCisvKiBOT1RFOiBgZW5kYCBtdXN0IHBvaW50IHRvIHRoZSByZWFsIGVuZCBvZiB0aGUgUHlfVUNTNCBzdG9yYWdlLAogICAgdGhhdCBpcyB0byB0aGUgTlVMIGNoYXJhY3Rlci4gT3RoZXJ3aXNlIHRoZSBmdW5jdGlvbiB3aWxsIHByb2R1Y2UKICAgIGluY29ycmVjdCByZXN1bHRzLiAqLwotc3RhdGljIFB5X1VOSUNPREUgKgotZmluZF9jb250cm9sX2NoYXIoUHlfVU5JQ09ERSAqc3RhcnQsIFB5X1VOSUNPREUgKmVuZCwgUHlfVU5JQ09ERSBjaCkKK3N0YXRpYyBjaGFyICoKK2ZpbmRfY29udHJvbF9jaGFyKGludCBraW5kLCBjaGFyICpzLCBjaGFyICplbmQsIFB5X1VDUzQgY2gpCiB7Ci0gICAgUHlfVU5JQ09ERSAqcyA9IHN0YXJ0OworICAgIGlmIChraW5kID09IFB5VW5pY29kZV8xQllURV9LSU5EKSB7CisgICAgICAgIGFzc2VydChjaCA8IDI1Nik7CisgICAgICAgIHJldHVybiAoY2hhciAqKSBtZW1jaHIoKHZvaWQgKikgcywgKGNoYXIpIGNoLCBlbmQgLSBzKTsKKyAgICB9CiAgICAgZm9yICg7OykgewotICAgICAgICB3aGlsZSAoKnMgPiBjaCkKLSAgICAgICAgICAgIHMrKzsKLSAgICAgICAgaWYgKCpzID09IGNoKQorICAgICAgICB3aGlsZSAoUHlVbmljb2RlX1JFQUQoa2luZCwgcywgMCkgPiBjaCkKKyAgICAgICAgICAgIHMgKz0ga2luZDsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHMsIDApID09IGNoKQogICAgICAgICAgICAgcmV0dXJuIHM7CiAgICAgICAgIGlmIChzID09IGVuZCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBzKys7CisgICAgICAgIHMgKz0ga2luZDsKICAgICB9CiB9CiAKIFB5X3NzaXplX3QKIF9QeUlPX2ZpbmRfbGluZV9lbmRpbmcoCiAgICAgaW50IHRyYW5zbGF0ZWQsIGludCB1bml2ZXJzYWwsIFB5T2JqZWN0ICpyZWFkbmwsCi0gICAgUHlfVU5JQ09ERSAqc3RhcnQsIFB5X1VOSUNPREUgKmVuZCwgUHlfc3NpemVfdCAqY29uc3VtZWQpCisgICAgaW50IGtpbmQsIGNoYXIgKnN0YXJ0LCBjaGFyICplbmQsIFB5X3NzaXplX3QgKmNvbnN1bWVkKQogewotICAgIFB5X3NzaXplX3QgbGVuID0gZW5kIC0gc3RhcnQ7CisgICAgUHlfc3NpemVfdCBsZW4gPSAoKGNoYXIqKWVuZCAtIChjaGFyKilzdGFydCkva2luZDsKIAogICAgIGlmICh0cmFuc2xhdGVkKSB7CiAgICAgICAgIC8qIE5ld2xpbmVzIGFyZSBhbHJlYWR5IHRyYW5zbGF0ZWQsIG9ubHkgc2VhcmNoIGZvciBcbiAqLwotICAgICAgICBQeV9VTklDT0RFICpwb3MgPSBmaW5kX2NvbnRyb2xfY2hhcihzdGFydCwgZW5kLCAnXG4nKTsKKyAgICAgICAgY2hhciAqcG9zID0gZmluZF9jb250cm9sX2NoYXIoa2luZCwgc3RhcnQsIGVuZCwgJ1xuJyk7CiAgICAgICAgIGlmIChwb3MgIT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBwb3MgLSBzdGFydCArIDE7CisgICAgICAgICAgICByZXR1cm4gKHBvcyAtIHN0YXJ0KS9raW5kICsgMTsKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAqY29uc3VtZWQgPSBsZW47CiAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC0xNjE1LDYzICsxNjM4LDY2IEBACiAgICAgICAgIC8qIFVuaXZlcnNhbCBuZXdsaW5lIHNlYXJjaC4gRmluZCBhbnkgb2YgXHIsIFxyXG4sIFxuCiAgICAgICAgICAqIFRoZSBkZWNvZGVyIGVuc3VyZXMgdGhhdCBcclxuIGFyZSBub3Qgc3BsaXQgaW4gdHdvIHBpZWNlcwogICAgICAgICAgKi8KLSAgICAgICAgUHlfVU5JQ09ERSAqcyA9IHN0YXJ0OworICAgICAgICBjaGFyICpzID0gc3RhcnQ7CiAgICAgICAgIGZvciAoOzspIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgY2g7CisgICAgICAgICAgICBQeV9VQ1M0IGNoOwogICAgICAgICAgICAgLyogRmFzdCBwYXRoIGZvciBub24tY29udHJvbCBjaGFycy4gVGhlIGxvb3AgYWx3YXlzIGVuZHMKLSAgICAgICAgICAgICAgIHNpbmNlIHRoZSBQeV9VTklDT0RFIHN0b3JhZ2UgaXMgTlVMLXRlcm1pbmF0ZWQuICovCi0gICAgICAgICAgICB3aGlsZSAoKnMgPiAnXHInKQotICAgICAgICAgICAgICAgIHMrKzsKKyAgICAgICAgICAgICAgIHNpbmNlIHRoZSBVbmljb2RlIHN0cmluZyBpcyBOVUwtdGVybWluYXRlZC4gKi8KKyAgICAgICAgICAgIHdoaWxlIChQeVVuaWNvZGVfUkVBRChraW5kLCBzLCAwKSA+ICdccicpCisgICAgICAgICAgICAgICAgcyArPSBraW5kOwogICAgICAgICAgICAgaWYgKHMgPj0gZW5kKSB7CiAgICAgICAgICAgICAgICAgKmNvbnN1bWVkID0gbGVuOwogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGNoID0gKnMrKzsKKyAgICAgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgcywgMCk7CisgICAgICAgICAgICBzICs9IGtpbmQ7CiAgICAgICAgICAgICBpZiAoY2ggPT0gJ1xuJykKLSAgICAgICAgICAgICAgICByZXR1cm4gcyAtIHN0YXJ0OworICAgICAgICAgICAgICAgIHJldHVybiAocyAtIHN0YXJ0KS9raW5kOwogICAgICAgICAgICAgaWYgKGNoID09ICdccicpIHsKLSAgICAgICAgICAgICAgICBpZiAoKnMgPT0gJ1xuJykKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHMgLSBzdGFydCArIDE7CisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHMsIDApID09ICdcbicpCisgICAgICAgICAgICAgICAgICAgIHJldHVybiAocyAtIHN0YXJ0KS9raW5kICsgMTsKICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBzIC0gc3RhcnQ7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAocyAtIHN0YXJ0KS9raW5kOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICAvKiBOb24tdW5pdmVyc2FsIG1vZGUuICovCi0gICAgICAgIFB5X3NzaXplX3QgcmVhZG5sX2xlbiA9IFB5VW5pY29kZV9HRVRfU0laRShyZWFkbmwpOwotICAgICAgICBQeV9VTklDT0RFICpubCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlYWRubCk7CisgICAgICAgIFB5X3NzaXplX3QgcmVhZG5sX2xlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlYWRubCk7CisgICAgICAgIGNoYXIgKm5sID0gUHlVbmljb2RlX0RBVEEocmVhZG5sKTsKKyAgICAgICAgLyogQXNzdW1lIHRoYXQgcmVhZG5sIGlzIGFuIEFTQ0lJIGNoYXJhY3Rlci4gKi8KKyAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKHJlYWRubCkgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQpOwogICAgICAgICBpZiAocmVhZG5sX2xlbiA9PSAxKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFICpwb3MgPSBmaW5kX2NvbnRyb2xfY2hhcihzdGFydCwgZW5kLCBubFswXSk7CisgICAgICAgICAgICBjaGFyICpwb3MgPSBmaW5kX2NvbnRyb2xfY2hhcihraW5kLCBzdGFydCwgZW5kLCBubFswXSk7CiAgICAgICAgICAgICBpZiAocG9zICE9IE5VTEwpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHBvcyAtIHN0YXJ0ICsgMTsKKyAgICAgICAgICAgICAgICByZXR1cm4gKHBvcyAtIHN0YXJ0KS9raW5kICsgMTsKICAgICAgICAgICAgICpjb25zdW1lZCA9IGxlbjsKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKnMgPSBzdGFydDsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKmUgPSBlbmQgLSByZWFkbmxfbGVuICsgMTsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKnBvczsKKyAgICAgICAgICAgIGNoYXIgKnMgPSBzdGFydDsKKyAgICAgICAgICAgIGNoYXIgKmUgPSBlbmQgLSAocmVhZG5sX2xlbiAtIDEpKmtpbmQ7CisgICAgICAgICAgICBjaGFyICpwb3M7CiAgICAgICAgICAgICBpZiAoZSA8IHMpCiAgICAgICAgICAgICAgICAgZSA9IHM7CiAgICAgICAgICAgICB3aGlsZSAocyA8IGUpIHsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSAqcG9zID0gZmluZF9jb250cm9sX2NoYXIocywgZW5kLCBubFswXSk7CisgICAgICAgICAgICAgICAgY2hhciAqcG9zID0gZmluZF9jb250cm9sX2NoYXIoa2luZCwgcywgZW5kLCBubFswXSk7CiAgICAgICAgICAgICAgICAgaWYgKHBvcyA9PSBOVUxMIHx8IHBvcyA+PSBlKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICBmb3IgKGkgPSAxOyBpIDwgcmVhZG5sX2xlbjsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChwb3NbaV0gIT0gbmxbaV0pCisgICAgICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBwb3MsIGkpICE9IG5sW2ldKQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGlmIChpID09IHJlYWRubF9sZW4pCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBwb3MgLSBzdGFydCArIHJlYWRubF9sZW47Ci0gICAgICAgICAgICAgICAgcyA9IHBvcyArIDE7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAocG9zIC0gc3RhcnQpL2tpbmQgKyByZWFkbmxfbGVuOworICAgICAgICAgICAgICAgIHMgPSBwb3MgKyBraW5kOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcG9zID0gZmluZF9jb250cm9sX2NoYXIoZSwgZW5kLCBubFswXSk7CisgICAgICAgICAgICBwb3MgPSBmaW5kX2NvbnRyb2xfY2hhcihraW5kLCBlLCBlbmQsIG5sWzBdKTsKICAgICAgICAgICAgIGlmIChwb3MgPT0gTlVMTCkKICAgICAgICAgICAgICAgICAqY29uc3VtZWQgPSBsZW47CiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgKmNvbnN1bWVkID0gcG9zIC0gc3RhcnQ7CisgICAgICAgICAgICAgICAgKmNvbnN1bWVkID0gKHBvcyAtIHN0YXJ0KS9raW5kOwogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICB9CiAgICAgfQpAQCAtMTY5MiwxNSArMTcxOCwxNiBAQAogICAgIGNodW5rZWQgPSAwOwogCiAgICAgd2hpbGUgKDEpIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqcHRyOworICAgICAgICBjaGFyICpwdHI7CiAgICAgICAgIFB5X3NzaXplX3QgbGluZV9sZW47CisgICAgICAgIGludCBraW5kOwogICAgICAgICBQeV9zc2l6ZV90IGNvbnN1bWVkID0gMDsKIAogICAgICAgICAvKiBGaXJzdCwgZ2V0IHNvbWUgZGF0YSBpZiBuZWNlc3NhcnkgKi8KICAgICAgICAgcmVzID0gMTsKICAgICAgICAgd2hpbGUgKCFzZWxmLT5kZWNvZGVkX2NoYXJzIHx8Ci0gICAgICAgICAgICAgICAhUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYtPmRlY29kZWRfY2hhcnMpKSB7Ci0gICAgICAgICAgICByZXMgPSB0ZXh0aW93cmFwcGVyX3JlYWRfY2h1bmsoc2VsZik7CisgICAgICAgICAgICAgICAhUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZi0+ZGVjb2RlZF9jaGFycykpIHsKKyAgICAgICAgICAgIHJlcyA9IHRleHRpb3dyYXBwZXJfcmVhZF9jaHVuayhzZWxmLCAwKTsKICAgICAgICAgICAgIGlmIChyZXMgPCAwKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICBpZiAocmVzID09IDApCkBAIC0xNzI0LDE4ICsxNzUxLDI0IEBACiAgICAgICAgICAgICBhc3NlcnQoc2VsZi0+ZGVjb2RlZF9jaGFyc191c2VkID09IDApOwogICAgICAgICAgICAgbGluZSA9IFB5VW5pY29kZV9Db25jYXQocmVtYWluaW5nLCBzZWxmLT5kZWNvZGVkX2NoYXJzKTsKICAgICAgICAgICAgIHN0YXJ0ID0gMDsKLSAgICAgICAgICAgIG9mZnNldF90b19idWZmZXIgPSBQeVVuaWNvZGVfR0VUX1NJWkUocmVtYWluaW5nKTsKKyAgICAgICAgICAgIG9mZnNldF90b19idWZmZXIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZW1haW5pbmcpOwogICAgICAgICAgICAgUHlfQ0xFQVIocmVtYWluaW5nKTsKICAgICAgICAgICAgIGlmIChsaW5lID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkobGluZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQogCi0gICAgICAgIHB0ciA9IFB5VW5pY29kZV9BU19VTklDT0RFKGxpbmUpOwotICAgICAgICBsaW5lX2xlbiA9IFB5VW5pY29kZV9HRVRfU0laRShsaW5lKTsKKyAgICAgICAgcHRyID0gUHlVbmljb2RlX0RBVEEobGluZSk7CisgICAgICAgIGxpbmVfbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgobGluZSk7CisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChsaW5lKTsKIAogICAgICAgICBlbmRwb3MgPSBfUHlJT19maW5kX2xpbmVfZW5kaW5nKAogICAgICAgICAgICAgc2VsZi0+cmVhZHRyYW5zbGF0ZSwgc2VsZi0+cmVhZHVuaXZlcnNhbCwgc2VsZi0+cmVhZG5sLAotICAgICAgICAgICAgcHRyICsgc3RhcnQsIHB0ciArIGxpbmVfbGVuLCAmY29uc3VtZWQpOworICAgICAgICAgICAga2luZCwKKyAgICAgICAgICAgIHB0ciArIGtpbmQgKiBzdGFydCwKKyAgICAgICAgICAgIHB0ciArIGtpbmQgKiBsaW5lX2xlbiwKKyAgICAgICAgICAgICZjb25zdW1lZCk7CiAgICAgICAgIGlmIChlbmRwb3MgPj0gMCkgewogICAgICAgICAgICAgZW5kcG9zICs9IHN0YXJ0OwogICAgICAgICAgICAgaWYgKGxpbWl0ID49IDAgJiYgKGVuZHBvcyAtIHN0YXJ0KSArIGNodW5rZWQgPj0gbGltaXQpCkBAIC0xNzU5LDIxICsxNzkyLDIwIEBACiAgICAgICAgICAgICAgICAgaWYgKGNodW5rcyA9PSBOVUxMKQogICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcyA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShwdHIgKyBzdGFydCwgZW5kcG9zIC0gc3RhcnQpOworICAgICAgICAgICAgcyA9IFB5VW5pY29kZV9TdWJzdHJpbmcobGluZSwgc3RhcnQsIGVuZHBvcyk7CiAgICAgICAgICAgICBpZiAocyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICBpZiAoUHlMaXN0X0FwcGVuZChjaHVua3MsIHMpIDwgMCkgewogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihzKTsKICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgY2h1bmtlZCArPSBQeVVuaWNvZGVfR0VUX1NJWkUocyk7CisgICAgICAgICAgICBjaHVua2VkICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHMpOwogICAgICAgICAgICAgUHlfREVDUkVGKHMpOwogICAgICAgICB9CiAgICAgICAgIC8qIFRoZXJlIG1heSBiZSBzb21lIHJlbWFpbmluZyBieXRlcyB3ZSdsbCBoYXZlIHRvIHByZXBlbmQgdG8gdGhlCiAgICAgICAgICAgIG5leHQgY2h1bmsgb2YgZGF0YSAqLwogICAgICAgICBpZiAoZW5kcG9zIDwgbGluZV9sZW4pIHsKLSAgICAgICAgICAgIHJlbWFpbmluZyA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgICAgICAgICAgcHRyICsgZW5kcG9zLCBsaW5lX2xlbiAtIGVuZHBvcyk7CisgICAgICAgICAgICByZW1haW5pbmcgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKGxpbmUsIGVuZHBvcywgbGluZV9sZW4pOwogICAgICAgICAgICAgaWYgKHJlbWFpbmluZyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIH0KQEAgLTE3ODUsMTkgKzE4MTcsMTIgQEAKICAgICBpZiAobGluZSAhPSBOVUxMKSB7CiAgICAgICAgIC8qIE91ciBsaW5lIGVuZHMgaW4gdGhlIGN1cnJlbnQgYnVmZmVyICovCiAgICAgICAgIHNlbGYtPmRlY29kZWRfY2hhcnNfdXNlZCA9IGVuZHBvcyAtIG9mZnNldF90b19idWZmZXI7Ci0gICAgICAgIGlmIChzdGFydCA+IDAgfHwgZW5kcG9zIDwgUHlVbmljb2RlX0dFVF9TSVpFKGxpbmUpKSB7Ci0gICAgICAgICAgICBpZiAoc3RhcnQgPT0gMCAmJiBQeV9SRUZDTlQobGluZSkgPT0gMSkgewotICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUmVzaXplKCZsaW5lLCBlbmRwb3MpIDwgMCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKAotICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUobGluZSkgKyBzdGFydCwgZW5kcG9zIC0gc3RhcnQpOwotICAgICAgICAgICAgICAgIFB5X0NMRUFSKGxpbmUpOwotICAgICAgICAgICAgICAgIGlmIChzID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICAgICAgbGluZSA9IHM7Ci0gICAgICAgICAgICB9CisgICAgICAgIGlmIChzdGFydCA+IDAgfHwgZW5kcG9zIDwgUHlVbmljb2RlX0dFVF9MRU5HVEgobGluZSkpIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpzID0gUHlVbmljb2RlX1N1YnN0cmluZyhsaW5lLCBzdGFydCwgZW5kcG9zKTsKKyAgICAgICAgICAgIFB5X0NMRUFSKGxpbmUpOworICAgICAgICAgICAgaWYgKHMgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgbGluZSA9IHM7CiAgICAgICAgIH0KICAgICB9CiAgICAgaWYgKHJlbWFpbmluZyAhPSBOVUxMKSB7CkBAIC0xODExLDE2ICsxODM2LDIwIEBACiAgICAgICAgIFB5X0NMRUFSKHJlbWFpbmluZyk7CiAgICAgfQogICAgIGlmIChjaHVua3MgIT0gTlVMTCkgewotICAgICAgICBpZiAobGluZSAhPSBOVUxMICYmIFB5TGlzdF9BcHBlbmQoY2h1bmtzLCBsaW5lKSA8IDApCi0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICBQeV9DTEVBUihsaW5lKTsKKyAgICAgICAgaWYgKGxpbmUgIT0gTlVMTCkgeworICAgICAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQoY2h1bmtzLCBsaW5lKSA8IDApCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihsaW5lKTsKKyAgICAgICAgfQogICAgICAgICBsaW5lID0gUHlVbmljb2RlX0pvaW4oX1B5SU9fZW1wdHlfc3RyLCBjaHVua3MpOwogICAgICAgICBpZiAobGluZSA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgUHlfREVDUkVGKGNodW5rcyk7CisgICAgICAgIFB5X0NMRUFSKGNodW5rcyk7CiAgICAgfQotICAgIGlmIChsaW5lID09IE5VTEwpCi0gICAgICAgIGxpbmUgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgMCk7CisgICAgaWYgKGxpbmUgPT0gTlVMTCkgeworICAgICAgICBQeV9JTkNSRUYoX1B5SU9fZW1wdHlfc3RyKTsKKyAgICAgICAgbGluZSA9IF9QeUlPX2VtcHR5X3N0cjsKKyAgICB9CiAKICAgICByZXR1cm4gbGluZTsKIApAQCAtMTk0Myw4ICsxOTcyLDggQEAKICAgICBpZiAoY29va2llLT5zdGFydF9wb3MgPT0gMCAmJiBjb29raWUtPmRlY19mbGFncyA9PSAwKQogICAgICAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzZWxmLT5kZWNvZGVyLCBfUHlJT19zdHJfcmVzZXQsIE5VTEwpOwogICAgIGVsc2UKLSAgICAgICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5kZWNvZGVyLCAic2V0c3RhdGUiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIoKHlpKSkiLCAiIiwgY29va2llLT5kZWNfZmxhZ3MpOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmRlY29kZXIsICZQeUlkX3NldHN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIoKHlpKSkiLCAiIiwgY29va2llLT5kZWNfZmxhZ3MpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwogICAgIFB5X0RFQ1JFRihyZXMpOwpAQCAtMjAwOCwxMyArMjAzNywxMiBAQAogICAgICAgICAgKiBzeW5jIHRoZSB1bmRlcmx5aW5nIGJ1ZmZlciB3aXRoIHRoZSBjdXJyZW50IHBvc2l0aW9uLgogICAgICAgICAgKi8KICAgICAgICAgUHlfREVDUkVGKGNvb2tpZU9iaik7Ci0gICAgICAgIGNvb2tpZU9iaiA9IFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgInRlbGwiLCBOVUxMKTsKKyAgICAgICAgY29va2llT2JqID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF90ZWxsLCBOVUxMKTsKICAgICAgICAgaWYgKGNvb2tpZU9iaiA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBmYWlsOwogICAgIH0KICAgICBlbHNlIGlmICh3aGVuY2UgPT0gMikgewogICAgICAgICAvKiBzZWVrIHJlbGF0aXZlIHRvIGVuZCBvZiBmaWxlICovCi0KICAgICAgICAgY21wID0gUHlPYmplY3RfUmljaENvbXBhcmVCb29sKGNvb2tpZU9iaiwgX1B5SU9femVybywgUHlfRVEpOwogICAgICAgICBpZiAoY21wIDwgMCkKICAgICAgICAgICAgIGdvdG8gZmFpbDsKQEAgLTIwMjQsNyArMjA1Miw3IEBACiAgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgIH0KIAotICAgICAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKChQeU9iamVjdCAqKXNlbGYsICJmbHVzaCIsIE5VTEwpOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCAqKXNlbGYsICZQeUlkX2ZsdXNoLCBOVUxMKTsKICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICBQeV9ERUNSRUYocmVzKTsKQEAgLTIwMzIsMTMgKzIwNjAsMTMgQEAKICAgICAgICAgdGV4dGlvd3JhcHBlcl9zZXRfZGVjb2RlZF9jaGFycyhzZWxmLCBOVUxMKTsKICAgICAgICAgUHlfQ0xFQVIoc2VsZi0+c25hcHNob3QpOwogICAgICAgICBpZiAoc2VsZi0+ZGVjb2RlcikgewotICAgICAgICAgICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5kZWNvZGVyLCAicmVzZXQiLCBOVUxMKTsKKyAgICAgICAgICAgIHJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+ZGVjb2RlciwgJlB5SWRfcmVzZXQsIE5VTEwpOwogICAgICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXMpOwogICAgICAgICB9CiAKLSAgICAgICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5idWZmZXIsICJzZWVrIiwgImlpIiwgMCwgMik7CisgICAgICAgIHJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+YnVmZmVyLCAmUHlJZF9zZWVrLCAiaWkiLCAwLCAyKTsKICAgICAgICAgUHlfWERFQ1JFRihjb29raWVPYmopOwogICAgICAgICByZXR1cm4gcmVzOwogICAgIH0KQEAgLTIwOTEsOCArMjExOSw4IEBACiAKICAgICBpZiAoY29va2llLmNoYXJzX3RvX3NraXApIHsKICAgICAgICAgLyogSnVzdCBsaWtlIF9yZWFkX2NodW5rLCBmZWVkIHRoZSBkZWNvZGVyIGFuZCBzYXZlIGEgc25hcHNob3QuICovCi0gICAgICAgIFB5T2JqZWN0ICppbnB1dF9jaHVuayA9IFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICBzZWxmLT5idWZmZXIsICJyZWFkIiwgImkiLCBjb29raWUuYnl0ZXNfdG9fZmVlZCk7CisgICAgICAgIFB5T2JqZWN0ICppbnB1dF9jaHVuayA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoCisgICAgICAgICAgICBzZWxmLT5idWZmZXIsICZQeUlkX3JlYWQsICJpIiwgY29va2llLmJ5dGVzX3RvX2ZlZWQpOwogICAgICAgICBQeU9iamVjdCAqZGVjb2RlZDsKIAogICAgICAgICBpZiAoaW5wdXRfY2h1bmsgPT0gTlVMTCkKQEAgLTIxMDYsMTYgKzIxMzQsMjAgQEAKICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgfQogCi0gICAgICAgIGRlY29kZWQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYtPmRlY29kZXIsICJkZWNvZGUiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT2kiLCBpbnB1dF9jaHVuaywgKGludCljb29raWUubmVlZF9lb2YpOworICAgICAgICBkZWNvZGVkID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5kZWNvZGVyLCAmUHlJZF9kZWNvZGUsCisgICAgICAgICAgICAiT2kiLCBpbnB1dF9jaHVuaywgKGludCljb29raWUubmVlZF9lb2YpOwogCiAgICAgICAgIGlmIChkZWNvZGVkID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoZGVjb2RlZCkgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihkZWNvZGVkKTsKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgfQogCiAgICAgICAgIHRleHRpb3dyYXBwZXJfc2V0X2RlY29kZWRfY2hhcnMoc2VsZiwgZGVjb2RlZCk7CiAKICAgICAgICAgLyogU2tpcCBjaGFyc190b19za2lwIG9mIHRoZSBkZWNvZGVkIGNoYXJhY3RlcnMuICovCi0gICAgICAgIGlmIChQeVVuaWNvZGVfR2V0U2l6ZShzZWxmLT5kZWNvZGVkX2NoYXJzKSA8IGNvb2tpZS5jaGFyc190b19za2lwKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfR2V0TGVuZ3RoKHNlbGYtPmRlY29kZWRfY2hhcnMpIDwgY29va2llLmNoYXJzX3RvX3NraXApIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLCAiY2FuJ3QgcmVzdG9yZSBsb2dpY2FsIGZpbGUgcG9zaXRpb24iKTsKICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgfQpAQCAtMjE0Nyw4ICsyMTc5LDEyIEBACiAgICAgY29va2llX3R5cGUgY29va2llID0gezAsMCwwLDAsMH07CiAgICAgUHlPYmplY3QgKm5leHRfaW5wdXQ7CiAgICAgUHlfc3NpemVfdCBjaGFyc190b19za2lwLCBjaGFyc19kZWNvZGVkOworICAgIFB5X3NzaXplX3Qgc2tpcF9ieXRlcywgc2tpcF9iYWNrOwogICAgIFB5T2JqZWN0ICpzYXZlZF9zdGF0ZSA9IE5VTEw7CiAgICAgY2hhciAqaW5wdXQsICppbnB1dF9lbmQ7CisgICAgY2hhciAqZGVjX2J1ZmZlcjsKKyAgICBQeV9zc2l6ZV90IGRlY19idWZmZXJfbGVuOworICAgIGludCBkZWNfZmxhZ3M7CiAKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKTsKICAgICBDSEVDS19DTE9TRUQoc2VsZik7CkBAIC0yMTY1LDE3ICsyMjAxLDE3IEBACiAKICAgICBpZiAoX3RleHRpb3dyYXBwZXJfd3JpdGVmbHVzaChzZWxmKSA8IDApCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgImZsdXNoIiwgTlVMTCk7CisgICAgcmVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF9mbHVzaCwgTlVMTCk7CiAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICBnb3RvIGZhaWw7CiAgICAgUHlfREVDUkVGKHJlcyk7CiAKLSAgICBwb3NvYmogPSBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYtPmJ1ZmZlciwgInRlbGwiLCBOVUxMKTsKKyAgICBwb3NvYmogPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfdGVsbCwgTlVMTCk7CiAgICAgaWYgKHBvc29iaiA9PSBOVUxMKQogICAgICAgICBnb3RvIGZhaWw7CiAKICAgICBpZiAoc2VsZi0+ZGVjb2RlciA9PSBOVUxMIHx8IHNlbGYtPnNuYXBzaG90ID09IE5VTEwpIHsKLSAgICAgICAgYXNzZXJ0IChzZWxmLT5kZWNvZGVkX2NoYXJzID09IE5VTEwgfHwgUHlVbmljb2RlX0dldFNpemUoc2VsZi0+ZGVjb2RlZF9jaGFycykgPT0gMCk7CisgICAgICAgIGFzc2VydCAoc2VsZi0+ZGVjb2RlZF9jaGFycyA9PSBOVUxMIHx8IFB5VW5pY29kZV9HZXRMZW5ndGgoc2VsZi0+ZGVjb2RlZF9jaGFycykgPT0gMCk7CiAgICAgICAgIHJldHVybiBwb3NvYmo7CiAgICAgfQogCkBAIC0yMTg0LDYgKzIyMjAsNyBAQAogI2Vsc2UKICAgICBjb29raWUuc3RhcnRfcG9zID0gUHlMb25nX0FzTG9uZyhwb3NvYmopOwogI2VuZGlmCisgICAgUHlfREVDUkVGKHBvc29iaik7CiAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgIGdvdG8gZmFpbDsKIApAQCAtMjE5OCw1NyArMjIzNSw5OSBAQAogICAgIC8qIEhvdyBtYW55IGRlY29kZWQgY2hhcmFjdGVycyBoYXZlIGJlZW4gdXNlZCB1cCBzaW5jZSB0aGUgc25hcHNob3Q/ICovCiAgICAgaWYgKHNlbGYtPmRlY29kZWRfY2hhcnNfdXNlZCA9PSAwKSAgewogICAgICAgICAvKiBXZSBoYXZlbid0IG1vdmVkIGZyb20gdGhlIHNuYXBzaG90IHBvaW50LiAqLwotICAgICAgICBQeV9ERUNSRUYocG9zb2JqKTsKICAgICAgICAgcmV0dXJuIHRleHRpb3dyYXBwZXJfYnVpbGRfY29va2llKCZjb29raWUpOwogICAgIH0KIAogICAgIGNoYXJzX3RvX3NraXAgPSBzZWxmLT5kZWNvZGVkX2NoYXJzX3VzZWQ7CiAKLSAgICAvKiBTdGFydGluZyBmcm9tIHRoZSBzbmFwc2hvdCBwb3NpdGlvbiwgd2Ugd2lsbCB3YWxrIHRoZSBkZWNvZGVyCi0gICAgICogZm9yd2FyZCB1bnRpbCBpdCBnaXZlcyB1cyBlbm91Z2ggZGVjb2RlZCBjaGFyYWN0ZXJzLgotICAgICAqLworICAgIC8qIERlY29kZXIgc3RhdGUgd2lsbCBiZSByZXN0b3JlZCBhdCB0aGUgZW5kICovCiAgICAgc2F2ZWRfc3RhdGUgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzZWxmLT5kZWNvZGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX1B5SU9fc3RyX2dldHN0YXRlLCBOVUxMKTsKICAgICBpZiAoc2F2ZWRfc3RhdGUgPT0gTlVMTCkKICAgICAgICAgZ290byBmYWlsOwogCi0gICAgLyogTm90ZSBvdXIgaW5pdGlhbCBzdGFydCBwb2ludC4gKi8KLSAgICBpZiAoX3RleHRpb3dyYXBwZXJfZGVjb2Rlcl9zZXRzdGF0ZShzZWxmLCAmY29va2llKSA8IDApCi0gICAgICAgIGdvdG8gZmFpbDsKKyNkZWZpbmUgREVDT0RFUl9HRVRTVEFURSgpIGRvIHsgXAorICAgICAgICBQeU9iamVjdCAqX3N0YXRlID0gUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3Moc2VsZi0+ZGVjb2RlciwgXAorICAgICAgICAgICAgX1B5SU9fc3RyX2dldHN0YXRlLCBOVUxMKTsgXAorICAgICAgICBpZiAoX3N0YXRlID09IE5VTEwpIFwKKyAgICAgICAgICAgIGdvdG8gZmFpbDsgXAorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlKF9zdGF0ZSwgIih5I2kpIiwgJmRlY19idWZmZXIsICZkZWNfYnVmZmVyX2xlbiwgJmRlY19mbGFncykpIHsgXAorICAgICAgICAgICAgUHlfREVDUkVGKF9zdGF0ZSk7IFwKKyAgICAgICAgICAgIGdvdG8gZmFpbDsgXAorICAgICAgICB9IFwKKyAgICAgICAgUHlfREVDUkVGKF9zdGF0ZSk7IFwKKyAgICB9IHdoaWxlICgwKQogCi0gICAgLyogRmVlZCB0aGUgZGVjb2RlciBvbmUgYnl0ZSBhdCBhIHRpbWUuICBBcyB3ZSBnbywgbm90ZSB0aGUKLSAgICAgKiBuZWFyZXN0ICJzYWZlIHN0YXJ0IHBvaW50IiBiZWZvcmUgdGhlIGN1cnJlbnQgbG9jYXRpb24KLSAgICAgKiAoYSBwb2ludCB3aGVyZSB0aGUgZGVjb2RlciBoYXMgbm90aGluZyBidWZmZXJlZCwgc28gc2VlaygpCisgICAgLyogVE9ETzogcmVwbGFjZSBhc3NlcnQgd2l0aCBleGNlcHRpb24gKi8KKyNkZWZpbmUgREVDT0RFUl9ERUNPREUoc3RhcnQsIGxlbiwgcmVzKSBkbyB7IFwKKyAgICAgICAgUHlPYmplY3QgKl9kZWNvZGVkID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCggXAorICAgICAgICAgICAgc2VsZi0+ZGVjb2RlciwgJlB5SWRfZGVjb2RlLCAieSMiLCBzdGFydCwgbGVuKTsgXAorICAgICAgICBpZiAoX2RlY29kZWQgPT0gTlVMTCkgXAorICAgICAgICAgICAgZ290byBmYWlsOyBcCisgICAgICAgIGFzc2VydCAoUHlVbmljb2RlX0NoZWNrKF9kZWNvZGVkKSk7IFwKKyAgICAgICAgcmVzID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoX2RlY29kZWQpOyBcCisgICAgICAgIFB5X0RFQ1JFRihfZGVjb2RlZCk7IFwKKyAgICB9IHdoaWxlICgwKQorCisgICAgLyogRmFzdCBzZWFyY2ggZm9yIGFuIGFjY2VwdGFibGUgc3RhcnQgcG9pbnQsIGNsb3NlIHRvIG91cgorICAgICAgIGN1cnJlbnQgcG9zICovCisgICAgc2tpcF9ieXRlcyA9IChQeV9zc2l6ZV90KSAoc2VsZi0+YjJjcmF0aW8gKiBjaGFyc190b19za2lwKTsKKyAgICBza2lwX2JhY2sgPSAxOworICAgIGFzc2VydChza2lwX2JhY2sgPD0gUHlCeXRlc19HRVRfU0laRShuZXh0X2lucHV0KSk7CisgICAgaW5wdXQgPSBQeUJ5dGVzX0FTX1NUUklORyhuZXh0X2lucHV0KTsKKyAgICB3aGlsZSAoc2tpcF9ieXRlcyA+IDApIHsKKyAgICAgICAgLyogRGVjb2RlIHVwIHRvIHRlbXB0YXRpdmUgc3RhcnQgcG9pbnQgKi8KKyAgICAgICAgaWYgKF90ZXh0aW93cmFwcGVyX2RlY29kZXJfc2V0c3RhdGUoc2VsZiwgJmNvb2tpZSkgPCAwKQorICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICBERUNPREVSX0RFQ09ERShpbnB1dCwgc2tpcF9ieXRlcywgY2hhcnNfZGVjb2RlZCk7CisgICAgICAgIGlmIChjaGFyc19kZWNvZGVkIDw9IGNoYXJzX3RvX3NraXApIHsKKyAgICAgICAgICAgIERFQ09ERVJfR0VUU1RBVEUoKTsKKyAgICAgICAgICAgIGlmIChkZWNfYnVmZmVyX2xlbiA9PSAwKSB7CisgICAgICAgICAgICAgICAgLyogQmVmb3JlIHBvcyBhbmQgbm8gYnl0ZXMgYnVmZmVyZWQgaW4gZGVjb2RlciA9PiBPSyAqLworICAgICAgICAgICAgICAgIGNvb2tpZS5kZWNfZmxhZ3MgPSBkZWNfZmxhZ3M7CisgICAgICAgICAgICAgICAgY2hhcnNfdG9fc2tpcCAtPSBjaGFyc19kZWNvZGVkOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICAgICAgLyogU2tpcCBiYWNrIGJ5IGJ1ZmZlcmVkIGFtb3VudCBhbmQgcmVzZXQgaGV1cmlzdGljICovCisgICAgICAgICAgICBza2lwX2J5dGVzIC09IGRlY19idWZmZXJfbGVuOworICAgICAgICAgICAgc2tpcF9iYWNrID0gMTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIC8qIFdlJ3JlIHRvbyBmYXIgYWhlYWQsIHNraXAgYmFjayBhIGJpdCAqLworICAgICAgICAgICAgc2tpcF9ieXRlcyAtPSBza2lwX2JhY2s7CisgICAgICAgICAgICBza2lwX2JhY2sgKj0gMjsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoc2tpcF9ieXRlcyA8PSAwKSB7CisgICAgICAgIHNraXBfYnl0ZXMgPSAwOworICAgICAgICBpZiAoX3RleHRpb3dyYXBwZXJfZGVjb2Rlcl9zZXRzdGF0ZShzZWxmLCAmY29va2llKSA8IDApCisgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgfQorCisgICAgLyogTm90ZSBvdXIgaW5pdGlhbCBzdGFydCBwb2ludC4gKi8KKyAgICBjb29raWUuc3RhcnRfcG9zICs9IHNraXBfYnl0ZXM7CisgICAgY29va2llLmNoYXJzX3RvX3NraXAgPSBjaGFyc190b19za2lwOworICAgIGlmIChjaGFyc190b19za2lwID09IDApCisgICAgICAgIGdvdG8gZmluYWxseTsKKworICAgIC8qIFdlIHNob3VsZCBiZSBjbG9zZSB0byB0aGUgZGVzaXJlZCBwb3NpdGlvbi4gIE5vdyBmZWVkIHRoZSBkZWNvZGVyIG9uZQorICAgICAqIGJ5dGUgYXQgYSB0aW1lIHVudGlsIHdlIHJlYWNoIHRoZSBgY2hhcnNfdG9fc2tpcGAgdGFyZ2V0LgorICAgICAqIEFzIHdlIGdvLCBub3RlIHRoZSBuZWFyZXN0ICJzYWZlIHN0YXJ0IHBvaW50IiBiZWZvcmUgdGhlIGN1cnJlbnQKKyAgICAgKiBsb2NhdGlvbiAoYSBwb2ludCB3aGVyZSB0aGUgZGVjb2RlciBoYXMgbm90aGluZyBidWZmZXJlZCwgc28gc2VlaygpCiAgICAgICogY2FuIHNhZmVseSBzdGFydCBmcm9tIHRoZXJlIGFuZCBhZHZhbmNlIHRvIHRoaXMgbG9jYXRpb24pLgogICAgICAqLwogICAgIGNoYXJzX2RlY29kZWQgPSAwOwogICAgIGlucHV0ID0gUHlCeXRlc19BU19TVFJJTkcobmV4dF9pbnB1dCk7CiAgICAgaW5wdXRfZW5kID0gaW5wdXQgKyBQeUJ5dGVzX0dFVF9TSVpFKG5leHRfaW5wdXQpOworICAgIGlucHV0ICs9IHNraXBfYnl0ZXM7CiAgICAgd2hpbGUgKGlucHV0IDwgaW5wdXRfZW5kKSB7Ci0gICAgICAgIFB5T2JqZWN0ICpzdGF0ZTsKLSAgICAgICAgY2hhciAqZGVjX2J1ZmZlcjsKLSAgICAgICAgUHlfc3NpemVfdCBkZWNfYnVmZmVyX2xlbjsKLSAgICAgICAgaW50IGRlY19mbGFnczsKKyAgICAgICAgUHlfc3NpemVfdCBuOwogCi0gICAgICAgIFB5T2JqZWN0ICpkZWNvZGVkID0gUHlPYmplY3RfQ2FsbE1ldGhvZCgKLSAgICAgICAgICAgIHNlbGYtPmRlY29kZXIsICJkZWNvZGUiLCAieSMiLCBpbnB1dCwgMSk7Ci0gICAgICAgIGlmIChkZWNvZGVkID09IE5VTEwpCi0gICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgIGFzc2VydCAoUHlVbmljb2RlX0NoZWNrKGRlY29kZWQpKTsKLSAgICAgICAgY2hhcnNfZGVjb2RlZCArPSBQeVVuaWNvZGVfR0VUX1NJWkUoZGVjb2RlZCk7Ci0gICAgICAgIFB5X0RFQ1JFRihkZWNvZGVkKTsKLQorICAgICAgICBERUNPREVSX0RFQ09ERShpbnB1dCwgMSwgbik7CisgICAgICAgIC8qIFdlIGdvdCBuIGNoYXJzIGZvciAxIGJ5dGUgKi8KKyAgICAgICAgY2hhcnNfZGVjb2RlZCArPSBuOwogICAgICAgICBjb29raWUuYnl0ZXNfdG9fZmVlZCArPSAxOwotCi0gICAgICAgIHN0YXRlID0gUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3Moc2VsZi0+ZGVjb2RlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfUHlJT19zdHJfZ2V0c3RhdGUsIE5VTEwpOwotICAgICAgICBpZiAoc3RhdGUgPT0gTlVMTCkKLSAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZShzdGF0ZSwgIih5I2kpIiwgJmRlY19idWZmZXIsICZkZWNfYnVmZmVyX2xlbiwgJmRlY19mbGFncykpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihzdGF0ZSk7Ci0gICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgIH0KLSAgICAgICAgUHlfREVDUkVGKHN0YXRlKTsKKyAgICAgICAgREVDT0RFUl9HRVRTVEFURSgpOwogCiAgICAgICAgIGlmIChkZWNfYnVmZmVyX2xlbiA9PSAwICYmIGNoYXJzX2RlY29kZWQgPD0gY2hhcnNfdG9fc2tpcCkgewogICAgICAgICAgICAgLyogRGVjb2RlciBidWZmZXIgaXMgZW1wdHksIHNvIHRoaXMgaXMgYSBzYWZlIHN0YXJ0IHBvaW50LiAqLwpAQCAtMjI2NCwxMiArMjM0MywxMiBAQAogICAgIH0KICAgICBpZiAoaW5wdXQgPT0gaW5wdXRfZW5kKSB7CiAgICAgICAgIC8qIFdlIGRpZG4ndCBnZXQgZW5vdWdoIGRlY29kZWQgZGF0YTsgc2lnbmFsIEVPRiB0byBnZXQgbW9yZS4gKi8KLSAgICAgICAgUHlPYmplY3QgKmRlY29kZWQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKAotICAgICAgICAgICAgc2VsZi0+ZGVjb2RlciwgImRlY29kZSIsICJ5aSIsICIiLCAvKiBmaW5hbCA9ICovIDEpOworICAgICAgICBQeU9iamVjdCAqZGVjb2RlZCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoCisgICAgICAgICAgICBzZWxmLT5kZWNvZGVyLCAmUHlJZF9kZWNvZGUsICJ5aSIsICIiLCAvKiBmaW5hbCA9ICovIDEpOwogICAgICAgICBpZiAoZGVjb2RlZCA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICBhc3NlcnQgKFB5VW5pY29kZV9DaGVjayhkZWNvZGVkKSk7Ci0gICAgICAgIGNoYXJzX2RlY29kZWQgKz0gUHlVbmljb2RlX0dFVF9TSVpFKGRlY29kZWQpOworICAgICAgICBjaGFyc19kZWNvZGVkICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGRlY29kZWQpOwogICAgICAgICBQeV9ERUNSRUYoZGVjb2RlZCk7CiAgICAgICAgIGNvb2tpZS5uZWVkX2VvZiA9IDE7CiAKQEAgLTIyODAsOSArMjM1OSw4IEBACiAgICAgICAgIH0KICAgICB9CiAKLSAgICAvKiBmaW5hbGx5ICovCi0gICAgUHlfWERFQ1JFRihwb3NvYmopOwotICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+ZGVjb2RlciwgInNldHN0YXRlIiwgIihPKSIsIHNhdmVkX3N0YXRlKTsKK2ZpbmFsbHk6CisgICAgcmVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5kZWNvZGVyLCAmUHlJZF9zZXRzdGF0ZSwgIihPKSIsIHNhdmVkX3N0YXRlKTsKICAgICBQeV9ERUNSRUYoc2F2ZWRfc3RhdGUpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yMjkyLDEzICsyMzcwLDEyIEBACiAgICAgY29va2llLmNoYXJzX3RvX3NraXAgPSBQeV9TQUZFX0RPV05DQVNUKGNoYXJzX3RvX3NraXAsIFB5X3NzaXplX3QsIGludCk7CiAgICAgcmV0dXJuIHRleHRpb3dyYXBwZXJfYnVpbGRfY29va2llKCZjb29raWUpOwogCi0gIGZhaWw6Ci0gICAgUHlfWERFQ1JFRihwb3NvYmopOworZmFpbDoKICAgICBpZiAoc2F2ZWRfc3RhdGUpIHsKICAgICAgICAgUHlPYmplY3QgKnR5cGUsICp2YWx1ZSwgKnRyYWNlYmFjazsKICAgICAgICAgUHlFcnJfRmV0Y2goJnR5cGUsICZ2YWx1ZSwgJnRyYWNlYmFjayk7CiAKLSAgICAgICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5kZWNvZGVyLCAic2V0c3RhdGUiLCAiKE8pIiwgc2F2ZWRfc3RhdGUpOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmRlY29kZXIsICZQeUlkX3NldHN0YXRlLCAiKE8pIiwgc2F2ZWRfc3RhdGUpOwogICAgICAgICBQeV9ERUNSRUYoc2F2ZWRfc3RhdGUpOwogICAgICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTIzMzgsNyArMjQxNSw3IEBACiAgICAgcmVzID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIjxfaW8uVGV4dElPV3JhcHBlciIpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgbmFtZW9iaiA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoKFB5T2JqZWN0ICopIHNlbGYsICJuYW1lIik7CisgICAgbmFtZW9iaiA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0ICopIHNlbGYsICZQeUlkX25hbWUpOwogICAgIGlmIChuYW1lb2JqID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKQEAgLTIzNTQsNyArMjQzMSw3IEBACiAgICAgICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBtb2Rlb2JqID0gUHlPYmplY3RfR2V0QXR0clN0cmluZygoUHlPYmplY3QgKikgc2VsZiwgIm1vZGUiKTsKKyAgICBtb2Rlb2JqID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKikgc2VsZiwgJlB5SWRfbW9kZSk7CiAgICAgaWYgKG1vZGVvYmogPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwpAQCAtMjM4NiwzNSArMjQ2MywzNSBAQAogdGV4dGlvd3JhcHBlcl9maWxlbm8odGV4dGlvICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKTsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5idWZmZXIsICJmaWxlbm8iLCBOVUxMKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5idWZmZXIsICZQeUlkX2ZpbGVubywgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiB0ZXh0aW93cmFwcGVyX3NlZWthYmxlKHRleHRpbyAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgQ0hFQ0tfSU5JVElBTElaRUQoc2VsZik7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+YnVmZmVyLCAic2Vla2FibGUiLCBOVUxMKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5idWZmZXIsICZQeUlkX3NlZWthYmxlLCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIHRleHRpb3dyYXBwZXJfcmVhZGFibGUodGV4dGlvICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKTsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5idWZmZXIsICJyZWFkYWJsZSIsIE5VTEwpOworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfcmVhZGFibGUsIE5VTEwpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogdGV4dGlvd3JhcHBlcl93cml0YWJsZSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIENIRUNLX0lOSVRJQUxJWkVEKHNlbGYpOwotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYtPmJ1ZmZlciwgIndyaXRhYmxlIiwgTlVMTCk7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+YnVmZmVyLCAmUHlJZF93cml0YWJsZSwgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiB0ZXh0aW93cmFwcGVyX2lzYXR0eSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIENIRUNLX0lOSVRJQUxJWkVEKHNlbGYpOwotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYtPmJ1ZmZlciwgImlzYXR0eSIsIE5VTEwpOworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfaXNhdHR5LCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI0MzMsNyArMjUxMCw3IEBACiAgICAgc2VsZi0+dGVsbGluZyA9IHNlbGYtPnNlZWthYmxlOwogICAgIGlmIChfdGV4dGlvd3JhcHBlcl93cml0ZWZsdXNoKHNlbGYpIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+YnVmZmVyLCAiZmx1c2giLCBOVUxMKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5idWZmZXIsICZQeUlkX2ZsdXNoLCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI0NTYsMjAgKzI1MzMsMjAgQEAKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIGlmIChzZWxmLT5kZWFsbG9jYXRpbmcpIHsKLSAgICAgICAgICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+YnVmZmVyLCAiX2RlYWxsb2Nfd2FybiIsICJPIiwgc2VsZik7CisgICAgICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfX2RlYWxsb2Nfd2FybiwgIk8iLCBzZWxmKTsKICAgICAgICAgICAgIGlmIChyZXMpCiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcyk7CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgfQotICAgICAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKChQeU9iamVjdCAqKXNlbGYsICJmbHVzaCIsIE5VTEwpOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCAqKXNlbGYsICZQeUlkX2ZsdXNoLCBOVUxMKTsKICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKSB7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgICAgICBlbHNlCiAgICAgICAgICAgICBQeV9ERUNSRUYocmVzKTsKIAotICAgICAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5idWZmZXIsICJjbG9zZSIsIE5VTEwpOworICAgICAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5idWZmZXIsICZQeUlkX2Nsb3NlLCBOVUxMKTsKICAgICB9CiB9CiAKQEAgLTI0OTcsMTAgKzI1NzQsMTAgQEAKICAgICAgICAgfQogICAgIH0KIAotICAgIGlmIChsaW5lID09IE5VTEwpCisgICAgaWYgKGxpbmUgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkobGluZSkgPT0gLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShsaW5lKSA9PSAwKSB7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGxpbmUpID09IDApIHsKICAgICAgICAgLyogUmVhY2hlZCBFT0Ygb3Igd291bGQgaGF2ZSBibG9ja2VkICovCiAgICAgICAgIFB5X0RFQ1JFRihsaW5lKTsKICAgICAgICAgUHlfQ0xFQVIoc2VsZi0+c25hcHNob3QpOwpAQCAtMjUxNSw3ICsyNTkyLDcgQEAKIHRleHRpb3dyYXBwZXJfbmFtZV9nZXQodGV4dGlvICpzZWxmLCB2b2lkICpjb250ZXh0KQogewogICAgIENIRUNLX0lOSVRJQUxJWkVEKHNlbGYpOwotICAgIHJldHVybiBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHNlbGYtPmJ1ZmZlciwgIm5hbWUiKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0dldEF0dHJJZChzZWxmLT5idWZmZXIsICZQeUlkX25hbWUpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fanNvbi5jIGIvTW9kdWxlcy9fanNvbi5jCmluZGV4IDA5MjQ4NzMuLmNhZmQ1YTkgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2pzb24uYworKysgYi9Nb2R1bGVzL19qc29uLmMKQEAgLTc2LDYgKzc2LDIxIEBACiB9OwogCiBzdGF0aWMgUHlPYmplY3QgKgoram9pbl9saXN0X3VuaWNvZGUoUHlPYmplY3QgKmxzdCkKK3sKKyAgICAvKiByZXR1cm4gdScnLmpvaW4obHN0KSAqLworICAgIHN0YXRpYyBQeU9iamVjdCAqc2VwID0gTlVMTDsKKyAgICBpZiAoc2VwID09IE5VTEwpIHsKKyAgICAgICAgc2VwID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKCIiLCAwKTsKKyAgICAgICAgaWYgKHNlcCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJldHVybiBQeVVuaWNvZGVfSm9pbihzZXAsIGxzdCk7Cit9CisKKy8qIEZvcndhcmQgZGVjbHMgKi8KKworc3RhdGljIFB5T2JqZWN0ICoKIGFzY2lpX2VzY2FwZV91bmljb2RlKFB5T2JqZWN0ICpweXN0cik7CiBzdGF0aWMgUHlPYmplY3QgKgogcHlfZW5jb2RlX2Jhc2VzdHJpbmdfYXNjaWkoUHlPYmplY3QqIHNlbGYgVU5VU0VELCBQeU9iamVjdCAqcHlzdHIpOwpAQCAtMTAxLDExICsxMTYsMTEgQEAKIHN0YXRpYyBpbnQKIGVuY29kZXJfY2xlYXIoUHlPYmplY3QgKnNlbGYpOwogc3RhdGljIGludAotZW5jb2Rlcl9saXN0ZW5jb2RlX2xpc3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBQeU9iamVjdCAqcnZhbCwgUHlPYmplY3QgKnNlcSwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpOworZW5jb2Rlcl9saXN0ZW5jb2RlX2xpc3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBfUHlBY2N1ICphY2MsIFB5T2JqZWN0ICpzZXEsIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKTsKIHN0YXRpYyBpbnQKLWVuY29kZXJfbGlzdGVuY29kZV9vYmooUHlFbmNvZGVyT2JqZWN0ICpzLCBQeU9iamVjdCAqcnZhbCwgUHlPYmplY3QgKm9iaiwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpOworZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihQeUVuY29kZXJPYmplY3QgKnMsIF9QeUFjY3UgKmFjYywgUHlPYmplY3QgKm9iaiwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpOwogc3RhdGljIGludAotZW5jb2Rlcl9saXN0ZW5jb2RlX2RpY3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBQeU9iamVjdCAqcnZhbCwgUHlPYmplY3QgKmRjdCwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpOworZW5jb2Rlcl9saXN0ZW5jb2RlX2RpY3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBfUHlBY2N1ICphY2MsIFB5T2JqZWN0ICpkY3QsIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKTsKIHN0YXRpYyBQeU9iamVjdCAqCiBfZW5jb2RlZF9jb25zdChQeU9iamVjdCAqb2JqKTsKIHN0YXRpYyB2b2lkCkBAIC0xMjIsMTMgKzEzNyw2IEBACiAjZGVmaW5lIFNfQ0hBUihjKSAoYyA+PSAnICcgJiYgYyA8PSAnficgJiYgYyAhPSAnXFwnICYmIGMgIT0gJyInKQogI2RlZmluZSBJU19XSElURVNQQUNFKGMpICgoKGMpID09ICcgJykgfHwgKChjKSA9PSAnXHQnKSB8fCAoKGMpID09ICdcbicpIHx8ICgoYykgPT0gJ1xyJykpCiAKLSNkZWZpbmUgTUlOX0VYUEFOU0lPTiA2Ci0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCi0jZGVmaW5lIE1BWF9FWFBBTlNJT04gKDIgKiBNSU5fRVhQQU5TSU9OKQotI2Vsc2UKLSNkZWZpbmUgTUFYX0VYUEFOU0lPTiBNSU5fRVhQQU5TSU9OCi0jZW5kaWYKLQogc3RhdGljIGludAogX2NvbnZlcnRQeUludF9Bc1NzaXplX3QoUHlPYmplY3QgKm8sIFB5X3NzaXplX3QgKnNpemVfcHRyKQogewpAQCAtMTQ3LDcgKzE1NSw3IEBACiB9CiAKIHN0YXRpYyBQeV9zc2l6ZV90Ci1hc2NpaV9lc2NhcGVfdW5pY2hhcihQeV9VTklDT0RFIGMsIFB5X1VOSUNPREUgKm91dHB1dCwgUHlfc3NpemVfdCBjaGFycykKK2FzY2lpX2VzY2FwZV91bmljaGFyKFB5X1VDUzQgYywgdW5zaWduZWQgY2hhciAqb3V0cHV0LCBQeV9zc2l6ZV90IGNoYXJzKQogewogICAgIC8qIEVzY2FwZSB1bmljb2RlIGNvZGUgcG9pbnQgYyB0byBBU0NJSSBlc2NhcGUgc2VxdWVuY2VzCiAgICAgaW4gY2hhciAqb3V0cHV0LiBvdXRwdXQgbXVzdCBoYXZlIGF0IGxlYXN0IDEyIGJ5dGVzIHVudXNlZCB0bwpAQCAtMTYyLDI1ICsxNzAsMjMgQEAKICAgICAgICAgY2FzZSAnXHInOiBvdXRwdXRbY2hhcnMrK10gPSAncic7IGJyZWFrOwogICAgICAgICBjYXNlICdcdCc6IG91dHB1dFtjaGFycysrXSA9ICd0JzsgYnJlYWs7CiAgICAgICAgIGRlZmF1bHQ6Ci0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCiAgICAgICAgICAgICBpZiAoYyA+PSAweDEwMDAwKSB7CiAgICAgICAgICAgICAgICAgLyogVVRGLTE2IHN1cnJvZ2F0ZSBwYWlyICovCi0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSB2ID0gYyAtIDB4MTAwMDA7CisgICAgICAgICAgICAgICAgUHlfVUNTNCB2ID0gYyAtIDB4MTAwMDA7CiAgICAgICAgICAgICAgICAgYyA9IDB4ZDgwMCB8ICgodiA+PiAxMCkgJiAweDNmZik7CiAgICAgICAgICAgICAgICAgb3V0cHV0W2NoYXJzKytdID0gJ3UnOwotICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyA+PiAgOCkgJiAweGZdOwotICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyA+PiAgNCkgJiAweGZdOwotICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyAgICAgICkgJiAweGZdOworICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyA+PiAxMikgJiAweGZdOworICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyA+PiAgOCkgJiAweGZdOworICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyA+PiAgNCkgJiAweGZdOworICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyAgICAgICkgJiAweGZdOwogICAgICAgICAgICAgICAgIGMgPSAweGRjMDAgfCAodiAmIDB4M2ZmKTsKICAgICAgICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSAnXFwnOwogICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSAndSc7Ci0gICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSAiMDEyMzQ1Njc4OWFiY2RlZiJbKGMgPj4gMTIpICYgMHhmXTsKLSAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyA+PiAgOCkgJiAweGZdOwotICAgICAgICAgICAgb3V0cHV0W2NoYXJzKytdID0gIjAxMjM0NTY3ODlhYmNkZWYiWyhjID4+ICA0KSAmIDB4Zl07Ci0gICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSAiMDEyMzQ1Njc4OWFiY2RlZiJbKGMgICAgICApICYgMHhmXTsKKyAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyA+PiAxMikgJiAweGZdOworICAgICAgICAgICAgb3V0cHV0W2NoYXJzKytdID0gUHlfaGV4ZGlnaXRzWyhjID4+ICA4KSAmIDB4Zl07CisgICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSBQeV9oZXhkaWdpdHNbKGMgPj4gIDQpICYgMHhmXTsKKyAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyAgICAgICkgJiAweGZdOwogICAgIH0KICAgICByZXR1cm4gY2hhcnM7CiB9CkBAIC0xOTIsNTQgKzE5OCw1MiBAQAogICAgIFB5X3NzaXplX3QgaTsKICAgICBQeV9zc2l6ZV90IGlucHV0X2NoYXJzOwogICAgIFB5X3NzaXplX3Qgb3V0cHV0X3NpemU7Ci0gICAgUHlfc3NpemVfdCBtYXhfb3V0cHV0X3NpemU7CiAgICAgUHlfc3NpemVfdCBjaGFyczsKICAgICBQeU9iamVjdCAqcnZhbDsKLSAgICBQeV9VTklDT0RFICpvdXRwdXQ7Ci0gICAgUHlfVU5JQ09ERSAqaW5wdXRfdW5pY29kZTsKKyAgICB2b2lkICppbnB1dDsKKyAgICB1bnNpZ25lZCBjaGFyICpvdXRwdXQ7CisgICAgaW50IGtpbmQ7CiAKLSAgICBpbnB1dF9jaGFycyA9IFB5VW5pY29kZV9HRVRfU0laRShweXN0cik7Ci0gICAgaW5wdXRfdW5pY29kZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHB5c3RyKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHB5c3RyKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICAvKiBPbmUgY2hhciBpbnB1dCBjYW4gYmUgdXAgdG8gNiBjaGFycyBvdXRwdXQsIGVzdGltYXRlIDQgb2YgdGhlc2UgKi8KLSAgICBvdXRwdXRfc2l6ZSA9IDIgKyAoTUlOX0VYUEFOU0lPTiAqIDQpICsgaW5wdXRfY2hhcnM7Ci0gICAgbWF4X291dHB1dF9zaXplID0gMiArIChpbnB1dF9jaGFycyAqIE1BWF9FWFBBTlNJT04pOwotICAgIHJ2YWwgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgb3V0cHV0X3NpemUpOworICAgIGlucHV0X2NoYXJzID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocHlzdHIpOworICAgIGlucHV0ID0gUHlVbmljb2RlX0RBVEEocHlzdHIpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChweXN0cik7CisKKyAgICAvKiBDb21wdXRlIHRoZSBvdXRwdXQgc2l6ZSAqLworICAgIGZvciAoaSA9IDAsIG91dHB1dF9zaXplID0gMjsgaSA8IGlucHV0X2NoYXJzOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgaW5wdXQsIGkpOworICAgICAgICBpZiAoU19DSEFSKGMpKQorICAgICAgICAgICAgb3V0cHV0X3NpemUrKzsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBzd2l0Y2goYykgeworICAgICAgICAgICAgY2FzZSAnXFwnOiBjYXNlICciJzogY2FzZSAnXGInOiBjYXNlICdcZic6CisgICAgICAgICAgICBjYXNlICdcbic6IGNhc2UgJ1xyJzogY2FzZSAnXHQnOgorICAgICAgICAgICAgICAgIG91dHB1dF9zaXplICs9IDI7IGJyZWFrOworICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgICAgICBvdXRwdXRfc2l6ZSArPSBjID49IDB4MTAwMDAgPyAxMiA6IDY7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAgICBydmFsID0gUHlVbmljb2RlX05ldyhvdXRwdXRfc2l6ZSwgMTI3KTsKICAgICBpZiAocnZhbCA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBvdXRwdXQgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShydmFsKTsKKyAgICBvdXRwdXQgPSBQeVVuaWNvZGVfMUJZVEVfREFUQShydmFsKTsKICAgICBjaGFycyA9IDA7CiAgICAgb3V0cHV0W2NoYXJzKytdID0gJyInOwogICAgIGZvciAoaSA9IDA7IGkgPCBpbnB1dF9jaGFyczsgaSsrKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgYyA9IGlucHV0X3VuaWNvZGVbaV07CisgICAgICAgIFB5X1VDUzQgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGlucHV0LCBpKTsKICAgICAgICAgaWYgKFNfQ0hBUihjKSkgewogICAgICAgICAgICAgb3V0cHV0W2NoYXJzKytdID0gYzsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIGNoYXJzID0gYXNjaWlfZXNjYXBlX3VuaWNoYXIoYywgb3V0cHV0LCBjaGFycyk7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKG91dHB1dF9zaXplIC0gY2hhcnMgPCAoMSArIE1BWF9FWFBBTlNJT04pKSB7Ci0gICAgICAgICAgICAvKiBUaGVyZSdzIG1vcmUgdGhhbiBmb3VyLCBzbyBsZXQncyByZXNpemUgYnkgYSBsb3QgKi8KLSAgICAgICAgICAgIFB5X3NzaXplX3QgbmV3X291dHB1dF9zaXplID0gb3V0cHV0X3NpemUgKiAyOwotICAgICAgICAgICAgLyogVGhpcyBpcyBhbiB1cHBlciBib3VuZCAqLwotICAgICAgICAgICAgaWYgKG5ld19vdXRwdXRfc2l6ZSA+IG1heF9vdXRwdXRfc2l6ZSkgewotICAgICAgICAgICAgICAgIG5ld19vdXRwdXRfc2l6ZSA9IG1heF9vdXRwdXRfc2l6ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIE1ha2Ugc3VyZSB0aGF0IHRoZSBvdXRwdXQgc2l6ZSBjaGFuZ2VkIGJlZm9yZSByZXNpemluZyAqLwotICAgICAgICAgICAgaWYgKG5ld19vdXRwdXRfc2l6ZSAhPSBvdXRwdXRfc2l6ZSkgewotICAgICAgICAgICAgICAgIG91dHB1dF9zaXplID0gbmV3X291dHB1dF9zaXplOwotICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUmVzaXplKCZydmFsLCBvdXRwdXRfc2l6ZSkgPT0gLTEpIHsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIG91dHB1dCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJ2YWwpOwotICAgICAgICAgICAgfQotICAgICAgICB9CiAgICAgfQogICAgIG91dHB1dFtjaGFycysrXSA9ICciJzsKLSAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmcnZhbCwgY2hhcnMpID09IC0xKSB7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KICAgICByZXR1cm4gcnZhbDsKIH0KIApAQCAtMjY3LDE5ICsyNzEsNiBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotam9pbl9saXN0X3VuaWNvZGUoUHlPYmplY3QgKmxzdCkKLXsKLSAgICAvKiByZXR1cm4gdScnLmpvaW4obHN0KSAqLwotICAgIHN0YXRpYyBQeU9iamVjdCAqc2VwID0gTlVMTDsKLSAgICBpZiAoc2VwID09IE5VTEwpIHsKLSAgICAgICAgc2VwID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKCIiLCAwKTsKLSAgICAgICAgaWYgKHNlcCA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIHJldHVybiBQeVVuaWNvZGVfSm9pbihzZXAsIGxzdCk7Ci19Ci0KLXN0YXRpYyBQeU9iamVjdCAqCiBfYnVpbGRfcnZhbF9pbmRleF90dXBsZShQeU9iamVjdCAqcnZhbCwgUHlfc3NpemVfdCBpZHgpIHsKICAgICAvKiByZXR1cm4gKHJ2YWwsIGlkeCkgdHVwbGUsIHN0ZWFsaW5nIHJlZmVyZW5jZSB0byBydmFsICovCiAgICAgUHlPYmplY3QgKnRwbDsKQEAgLTMzMywyMiArMzI0LDMwIEBACiAgICAgUmV0dXJuIHZhbHVlIGlzIGEgbmV3IFB5VW5pY29kZQogICAgICovCiAgICAgUHlPYmplY3QgKnJ2YWwgPSBOVUxMOwotICAgIFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHB5c3RyKTsKKyAgICBQeV9zc2l6ZV90IGxlbjsKICAgICBQeV9zc2l6ZV90IGJlZ2luID0gZW5kIC0gMTsKLSAgICBQeV9zc2l6ZV90IG5leHQgPSBiZWdpbjsKLSAgICBjb25zdCBQeV9VTklDT0RFICpidWYgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShweXN0cik7CisgICAgUHlfc3NpemVfdCBuZXh0IC8qID0gYmVnaW4gKi87CisgICAgY29uc3Qgdm9pZCAqYnVmOworICAgIGludCBraW5kOwogICAgIFB5T2JqZWN0ICpjaHVua3MgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpjaHVuayA9IE5VTEw7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHB5c3RyKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChweXN0cik7CisgICAgYnVmID0gUHlVbmljb2RlX0RBVEEocHlzdHIpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChweXN0cik7CisKICAgICBpZiAoZW5kIDwgMCB8fCBsZW4gPD0gZW5kKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiZW5kIGlzIG91dCBvZiBib3VuZHMiKTsKICAgICAgICAgZ290byBiYWlsOwogICAgIH0KICAgICB3aGlsZSAoMSkgewogICAgICAgICAvKiBGaW5kIHRoZSBlbmQgb2YgdGhlIHN0cmluZyBvciB0aGUgbmV4dCBlc2NhcGUgKi8KLSAgICAgICAgUHlfVU5JQ09ERSBjID0gMDsKKyAgICAgICAgUHlfVUNTNCBjID0gMDsKICAgICAgICAgZm9yIChuZXh0ID0gZW5kOyBuZXh0IDwgbGVuOyBuZXh0KyspIHsKLSAgICAgICAgICAgIGMgPSBidWZbbmV4dF07CisgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgYnVmLCBuZXh0KTsKICAgICAgICAgICAgIGlmIChjID09ICciJyB8fCBjID09ICdcXCcpIHsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KQEAgLTM2NCw3ICszNjMsMTAgQEAKICAgICAgICAgLyogUGljayB1cCB0aGlzIGNodW5rIGlmIGl0J3Mgbm90IHplcm8gbGVuZ3RoICovCiAgICAgICAgIGlmIChuZXh0ICE9IGVuZCkgewogICAgICAgICAgICAgQVBQRU5EX09MRF9DSFVOSwotICAgICAgICAgICAgY2h1bmsgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoJmJ1ZltlbmRdLCBuZXh0IC0gZW5kKTsKKyAgICAgICAgICAgICAgICBjaHVuayA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoCisgICAgICAgICAgICAgICAgICAgIGtpbmQsCisgICAgICAgICAgICAgICAgICAgIChjaGFyKilidWYgKyBraW5kICogZW5kLAorICAgICAgICAgICAgICAgICAgICBuZXh0IC0gZW5kKTsKICAgICAgICAgICAgIGlmIChjaHVuayA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgfQpAQCAtMzc4LDcgKzM4MCw3IEBACiAgICAgICAgICAgICByYWlzZV9lcnJtc2coIlVudGVybWluYXRlZCBzdHJpbmcgc3RhcnRpbmcgYXQiLCBweXN0ciwgYmVnaW4pOwogICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICB9Ci0gICAgICAgIGMgPSBidWZbbmV4dF07CisgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBidWYsIG5leHQpOwogICAgICAgICBpZiAoYyAhPSAndScpIHsKICAgICAgICAgICAgIC8qIE5vbi11bmljb2RlIGJhY2tzbGFzaCBlc2NhcGVzICovCiAgICAgICAgICAgICBlbmQgPSBuZXh0ICsgMTsKQEAgLTQwOCw3ICs0MTAsNyBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgLyogRGVjb2RlIDQgaGV4IGRpZ2l0cyAqLwogICAgICAgICAgICAgZm9yICg7IG5leHQgPCBlbmQ7IG5leHQrKykgewotICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgZGlnaXQgPSBidWZbbmV4dF07CisgICAgICAgICAgICAgICAgUHlfVUNTNCBkaWdpdCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGJ1ZiwgbmV4dCk7CiAgICAgICAgICAgICAgICAgYyA8PD0gNDsKICAgICAgICAgICAgICAgICBzd2l0Y2ggKGRpZ2l0KSB7CiAgICAgICAgICAgICAgICAgICAgIGNhc2UgJzAnOiBjYXNlICcxJzogY2FzZSAnMic6IGNhc2UgJzMnOiBjYXNlICc0JzoKQEAgLTQyNSwyMiArNDI3LDIyIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotI2lmZGVmIFB5X1VOSUNPREVfV0lERQogICAgICAgICAgICAgLyogU3Vycm9nYXRlIHBhaXIgKi8KICAgICAgICAgICAgIGlmICgoYyAmIDB4ZmMwMCkgPT0gMHhkODAwKSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjMiA9IDA7CisgICAgICAgICAgICAgICAgUHlfVUNTNCBjMiA9IDA7CiAgICAgICAgICAgICAgICAgaWYgKGVuZCArIDYgPj0gbGVuKSB7CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlX2Vycm1zZygiVW5wYWlyZWQgaGlnaCBzdXJyb2dhdGUiLCBweXN0ciwgZW5kIC0gNSk7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKGJ1ZltuZXh0KytdICE9ICdcXCcgfHwgYnVmW25leHQrK10gIT0gJ3UnKSB7CisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGJ1ZiwgbmV4dCsrKSAhPSAnXFwnIHx8CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIGJ1ZiwgbmV4dCsrKSAhPSAndScpIHsKICAgICAgICAgICAgICAgICAgICAgcmFpc2VfZXJybXNnKCJVbnBhaXJlZCBoaWdoIHN1cnJvZ2F0ZSIsIHB5c3RyLCBlbmQgLSA1KTsKICAgICAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbmQgKz0gNjsKICAgICAgICAgICAgICAgICAvKiBEZWNvZGUgNCBoZXggZGlnaXRzICovCiAgICAgICAgICAgICAgICAgZm9yICg7IG5leHQgPCBlbmQ7IG5leHQrKykgewotICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFIGRpZ2l0ID0gYnVmW25leHRdOworICAgICAgICAgICAgICAgICAgICBQeV9VQ1M0IGRpZ2l0ID0gUHlVbmljb2RlX1JFQUQoa2luZCwgYnVmLCBuZXh0KTsKICAgICAgICAgICAgICAgICAgICAgYzIgPDw9IDQ7CiAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoZGlnaXQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJzAnOiBjYXNlICcxJzogY2FzZSAnMic6IGNhc2UgJzMnOiBjYXNlICc0JzoKQEAgLTQ2NywxMCArNDY5LDkgQEAKICAgICAgICAgICAgICAgICByYWlzZV9lcnJtc2coIlVucGFpcmVkIGxvdyBzdXJyb2dhdGUiLCBweXN0ciwgZW5kIC0gNSk7CiAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIH0KICAgICAgICAgQVBQRU5EX09MRF9DSFVOSwotICAgICAgICBjaHVuayA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgmYywgMSk7CisgICAgICAgIGNodW5rID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwgJmMsIDEpOwogICAgICAgICBpZiAoY2h1bmsgPT0gTlVMTCkgewogICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICB9CkBAIC02MDgsOCArNjA5LDkgQEAKIAogICAgIFJldHVybnMgYSBuZXcgUHlPYmplY3QgKHVzdWFsbHkgYSBkaWN0LCBidXQgb2JqZWN0X2hvb2sgY2FuIGNoYW5nZSB0aGF0KQogICAgICovCi0gICAgUHlfVU5JQ09ERSAqc3RyID0gUHlVbmljb2RlX0FTX1VOSUNPREUocHlzdHIpOwotICAgIFB5X3NzaXplX3QgZW5kX2lkeCA9IFB5VW5pY29kZV9HRVRfU0laRShweXN0cikgLSAxOworICAgIHZvaWQgKnN0cjsKKyAgICBpbnQga2luZDsKKyAgICBQeV9zc2l6ZV90IGVuZF9pZHg7CiAgICAgUHlPYmplY3QgKnZhbCA9IE5VTEw7CiAgICAgUHlPYmplY3QgKnJ2YWwgPSBOVUxMOwogICAgIFB5T2JqZWN0ICprZXkgPSBOVUxMOwpAQCAtNjE3LDYgKzYxOSwxMyBAQAogICAgIGludCBoYXNfcGFpcnNfaG9vayA9IChzLT5vYmplY3RfcGFpcnNfaG9vayAhPSBQeV9Ob25lKTsKICAgICBQeV9zc2l6ZV90IG5leHRfaWR4OwogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShweXN0cikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgc3RyID0gUHlVbmljb2RlX0RBVEEocHlzdHIpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChweXN0cik7CisgICAgZW5kX2lkeCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHB5c3RyKSAtIDE7CisKICAgICBpZiAoaGFzX3BhaXJzX2hvb2spCiAgICAgICAgIHJ2YWwgPSBQeUxpc3RfTmV3KDApOwogICAgIGVsc2UKQEAgLTYyNSwxNSArNjM0LDE1IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGFmdGVyIHsgKi8KLSAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgSVNfV0hJVEVTUEFDRShzdHJbaWR4XSkpIGlkeCsrOworICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsc3RyLCBpZHgpKSkgaWR4Kys7CiAKICAgICAvKiBvbmx5IGxvb3AgaWYgdGhlIG9iamVjdCBpcyBub24tZW1wdHkgKi8KLSAgICBpZiAoaWR4IDw9IGVuZF9pZHggJiYgc3RyW2lkeF0gIT0gJ30nKSB7CisgICAgaWYgKGlkeCA8PSBlbmRfaWR4ICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSAhPSAnfScpIHsKICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4KSB7CiAgICAgICAgICAgICBQeU9iamVjdCAqbWVtb2tleTsKIAogICAgICAgICAgICAgLyogcmVhZCBrZXkgKi8KLSAgICAgICAgICAgIGlmIChzdHJbaWR4XSAhPSAnIicpIHsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgIT0gJyInKSB7CiAgICAgICAgICAgICAgICAgcmFpc2VfZXJybXNnKCJFeHBlY3RpbmcgcHJvcGVydHkgbmFtZSIsIHB5c3RyLCBpZHgpOwogICAgICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICAgICAgICAgIH0KQEAgLTY1MywxMyArNjYyLDEzIEBACiAgICAgICAgICAgICBpZHggPSBuZXh0X2lkeDsKIAogICAgICAgICAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGJldHdlZW4ga2V5IGFuZCA6IGRlbGltaXRlciwgcmVhZCA6LCBza2lwIHdoaXRlc3BhY2UgKi8KLSAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKHN0cltpZHhdKSkgaWR4Kys7Ci0gICAgICAgICAgICBpZiAoaWR4ID4gZW5kX2lkeCB8fCBzdHJbaWR4XSAhPSAnOicpIHsKKyAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOworICAgICAgICAgICAgaWYgKGlkeCA+IGVuZF9pZHggfHwgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpICE9ICc6JykgewogICAgICAgICAgICAgICAgIHJhaXNlX2Vycm1zZygiRXhwZWN0aW5nIDogZGVsaW1pdGVyIiwgcHlzdHIsIGlkeCk7CiAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWR4Kys7Ci0gICAgICAgICAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgSVNfV0hJVEVTUEFDRShzdHJbaWR4XSkpIGlkeCsrOworICAgICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIElTX1dISVRFU1BBQ0UoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpKSkgaWR4Kys7CiAKICAgICAgICAgICAgIC8qIHJlYWQgYW55IEpTT04gdGVybSAqLwogICAgICAgICAgICAgdmFsID0gc2Nhbl9vbmNlX3VuaWNvZGUocywgcHlzdHIsIGlkeCwgJm5leHRfaWR4KTsKQEAgLTY4NywyNiArNjk2LDI2IEBACiAgICAgICAgICAgICBpZHggPSBuZXh0X2lkeDsKIAogICAgICAgICAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGJlZm9yZSB9IG9yICwgKi8KLSAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKHN0cltpZHhdKSkgaWR4Kys7CisgICAgICAgICAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgSVNfV0hJVEVTUEFDRShQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkpKSBpZHgrKzsKIAogICAgICAgICAgICAgLyogYmFpbCBpZiB0aGUgb2JqZWN0IGlzIGNsb3NlZCBvciB3ZSBkaWRuJ3QgZ2V0IHRoZSAsIGRlbGltaXRlciAqLwogICAgICAgICAgICAgaWYgKGlkeCA+IGVuZF9pZHgpIGJyZWFrOwotICAgICAgICAgICAgaWYgKHN0cltpZHhdID09ICd9JykgeworICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA9PSAnfScpIHsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgaWYgKHN0cltpZHhdICE9ICcsJykgeworICAgICAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpICE9ICcsJykgewogICAgICAgICAgICAgICAgIHJhaXNlX2Vycm1zZygiRXhwZWN0aW5nICwgZGVsaW1pdGVyIiwgcHlzdHIsIGlkeCk7CiAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWR4Kys7CiAKICAgICAgICAgICAgIC8qIHNraXAgd2hpdGVzcGFjZSBhZnRlciAsIGRlbGltaXRlciAqLwotICAgICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIElTX1dISVRFU1BBQ0Uoc3RyW2lkeF0pKSBpZHgrKzsKKyAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOwogICAgICAgICB9CiAgICAgfQogCiAgICAgLyogdmVyaWZ5IHRoYXQgaWR4IDwgZW5kX2lkeCwgc3RyW2lkeF0gc2hvdWxkIGJlICd9JyAqLwotICAgIGlmIChpZHggPiBlbmRfaWR4IHx8IHN0cltpZHhdICE9ICd9JykgeworICAgIGlmIChpZHggPiBlbmRfaWR4IHx8IFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSAhPSAnfScpIHsKICAgICAgICAgcmFpc2VfZXJybXNnKCJFeHBlY3Rpbmcgb2JqZWN0IiwgcHlzdHIsIGVuZF9pZHgpOwogICAgICAgICBnb3RvIGJhaWw7CiAgICAgfQpAQCAtNzQyLDE5ICs3NTEsMjcgQEAKIAogICAgIFJldHVybnMgYSBuZXcgUHlMaXN0CiAgICAgKi8KLSAgICBQeV9VTklDT0RFICpzdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShweXN0cik7Ci0gICAgUHlfc3NpemVfdCBlbmRfaWR4ID0gUHlVbmljb2RlX0dFVF9TSVpFKHB5c3RyKSAtIDE7CisgICAgdm9pZCAqc3RyOworICAgIGludCBraW5kOworICAgIFB5X3NzaXplX3QgZW5kX2lkeDsKICAgICBQeU9iamVjdCAqdmFsID0gTlVMTDsKICAgICBQeU9iamVjdCAqcnZhbCA9IFB5TGlzdF9OZXcoMCk7CiAgICAgUHlfc3NpemVfdCBuZXh0X2lkeDsKICAgICBpZiAocnZhbCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocHlzdHIpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHN0ciA9IFB5VW5pY29kZV9EQVRBKHB5c3RyKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQocHlzdHIpOworICAgIGVuZF9pZHggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChweXN0cikgLSAxOworCiAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGFmdGVyIFsgKi8KLSAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgSVNfV0hJVEVTUEFDRShzdHJbaWR4XSkpIGlkeCsrOworICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOwogCiAgICAgLyogb25seSBsb29wIGlmIHRoZSBhcnJheSBpcyBub24tZW1wdHkgKi8KLSAgICBpZiAoaWR4IDw9IGVuZF9pZHggJiYgc3RyW2lkeF0gIT0gJ10nKSB7CisgICAgaWYgKGlkeCA8PSBlbmRfaWR4ICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSAhPSAnXScpIHsKICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4KSB7CiAKICAgICAgICAgICAgIC8qIHJlYWQgYW55IEpTT04gdGVybSAgKi8KQEAgLTc2OSwyNiArNzg2LDI2IEBACiAgICAgICAgICAgICBpZHggPSBuZXh0X2lkeDsKIAogICAgICAgICAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGJldHdlZW4gdGVybSBhbmQgLCAqLwotICAgICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIElTX1dISVRFU1BBQ0Uoc3RyW2lkeF0pKSBpZHgrKzsKKyAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOwogCiAgICAgICAgICAgICAvKiBiYWlsIGlmIHRoZSBhcnJheSBpcyBjbG9zZWQgb3Igd2UgZGlkbid0IGdldCB0aGUgLCBkZWxpbWl0ZXIgKi8KICAgICAgICAgICAgIGlmIChpZHggPiBlbmRfaWR4KSBicmVhazsKLSAgICAgICAgICAgIGlmIChzdHJbaWR4XSA9PSAnXScpIHsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPT0gJ10nKSB7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIGlmIChzdHJbaWR4XSAhPSAnLCcpIHsKKyAgICAgICAgICAgIGVsc2UgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSAhPSAnLCcpIHsKICAgICAgICAgICAgICAgICByYWlzZV9lcnJtc2coIkV4cGVjdGluZyAsIGRlbGltaXRlciIsIHB5c3RyLCBpZHgpOwogICAgICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlkeCsrOwogCiAgICAgICAgICAgICAvKiBza2lwIHdoaXRlc3BhY2UgYWZ0ZXIgLCAqLwotICAgICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIElTX1dISVRFU1BBQ0Uoc3RyW2lkeF0pKSBpZHgrKzsKKyAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOwogICAgICAgICB9CiAgICAgfQogCi0gICAgLyogdmVyaWZ5IHRoYXQgaWR4IDwgZW5kX2lkeCwgc3RyW2lkeF0gc2hvdWxkIGJlICddJyAqLwotICAgIGlmIChpZHggPiBlbmRfaWR4IHx8IHN0cltpZHhdICE9ICddJykgeworICAgIC8qIHZlcmlmeSB0aGF0IGlkeCA8IGVuZF9pZHgsIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSBzaG91bGQgYmUgJ10nICovCisgICAgaWYgKGlkeCA+IGVuZF9pZHggfHwgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpICE9ICddJykgewogICAgICAgICByYWlzZV9lcnJtc2coIkV4cGVjdGluZyBvYmplY3QiLCBweXN0ciwgZW5kX2lkeCk7CiAgICAgICAgIGdvdG8gYmFpbDsKICAgICB9CkBAIC04MjAsNyArODM3LDcgQEAKIAogICAgIC8qIHJ2YWwgPSBwYXJzZV9jb25zdGFudChjb25zdGFudCkgKi8KICAgICBydmFsID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhzLT5wYXJzZV9jb25zdGFudCwgY3N0ciwgTlVMTCk7Ci0gICAgaWR4ICs9IFB5VW5pY29kZV9HRVRfU0laRShjc3RyKTsKKyAgICBpZHggKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgoY3N0cik7CiAgICAgUHlfREVDUkVGKGNzdHIpOwogICAgICpuZXh0X2lkeF9wdHIgPSBpZHg7CiAgICAgcmV0dXJuIHJ2YWw7CkBAIC04MzcsMTUgKzg1NCwyNCBAQAogICAgICAgICBQeUludCwgUHlMb25nLCBvciBQeUZsb2F0LgogICAgICAgICBNYXkgcmV0dXJuIG90aGVyIHR5cGVzIGlmIHBhcnNlX2ludCBvciBwYXJzZV9mbG9hdCBhcmUgc2V0CiAgICAgKi8KLSAgICBQeV9VTklDT0RFICpzdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShweXN0cik7Ci0gICAgUHlfc3NpemVfdCBlbmRfaWR4ID0gUHlVbmljb2RlX0dFVF9TSVpFKHB5c3RyKSAtIDE7CisgICAgdm9pZCAqc3RyOworICAgIGludCBraW5kOworICAgIFB5X3NzaXplX3QgZW5kX2lkeDsKICAgICBQeV9zc2l6ZV90IGlkeCA9IHN0YXJ0OwogICAgIGludCBpc19mbG9hdCA9IDA7CiAgICAgUHlPYmplY3QgKnJ2YWw7Ci0gICAgUHlPYmplY3QgKm51bXN0cjsKKyAgICBQeU9iamVjdCAqbnVtc3RyID0gTlVMTDsKKyAgICBQeU9iamVjdCAqY3VzdG9tX2Z1bmM7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHB5c3RyKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBzdHIgPSBQeVVuaWNvZGVfREFUQShweXN0cik7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHB5c3RyKTsKKyAgICBlbmRfaWR4ID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocHlzdHIpIC0gMTsKIAogICAgIC8qIHJlYWQgYSBzaWduIGlmIGl0J3MgdGhlcmUsIG1ha2Ugc3VyZSBpdCdzIG5vdCB0aGUgZW5kIG9mIHRoZSBzdHJpbmcgKi8KLSAgICBpZiAoc3RyW2lkeF0gPT0gJy0nKSB7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA9PSAnLScpIHsKICAgICAgICAgaWR4Kys7CiAgICAgICAgIGlmIChpZHggPiBlbmRfaWR4KSB7CiAgICAgICAgICAgICBQeUVycl9TZXROb25lKFB5RXhjX1N0b3BJdGVyYXRpb24pOwpAQCAtODU0LDEyICs4ODAsMTIgQEAKICAgICB9CiAKICAgICAvKiByZWFkIGFzIG1hbnkgaW50ZWdlciBkaWdpdHMgYXMgd2UgZmluZCBhcyBsb25nIGFzIGl0IGRvZXNuJ3Qgc3RhcnQgd2l0aCAwICovCi0gICAgaWYgKHN0cltpZHhdID49ICcxJyAmJiBzdHJbaWR4XSA8PSAnOScpIHsKKyAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID49ICcxJyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPD0gJzknKSB7CiAgICAgICAgIGlkeCsrOwotICAgICAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgc3RyW2lkeF0gPj0gJzAnICYmIHN0cltpZHhdIDw9ICc5JykgaWR4Kys7CisgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPj0gJzAnICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA8PSAnOScpIGlkeCsrOwogICAgIH0KICAgICAvKiBpZiBpdCBzdGFydHMgd2l0aCAwIHdlIG9ubHkgZXhwZWN0IG9uZSBpbnRlZ2VyIGRpZ2l0ICovCi0gICAgZWxzZSBpZiAoc3RyW2lkeF0gPT0gJzAnKSB7CisgICAgZWxzZSBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID09ICcwJykgewogICAgICAgICBpZHgrKzsKICAgICB9CiAgICAgLyogbm8gaW50ZWdlciBkaWdpdHMsIGVycm9yICovCkBAIC04NjksMjUgKzg5NSwyNSBAQAogICAgIH0KIAogICAgIC8qIGlmIHRoZSBuZXh0IGNoYXIgaXMgJy4nIGZvbGxvd2VkIGJ5IGEgZGlnaXQgdGhlbiByZWFkIGFsbCBmbG9hdCBkaWdpdHMgKi8KLSAgICBpZiAoaWR4IDwgZW5kX2lkeCAmJiBzdHJbaWR4XSA9PSAnLicgJiYgc3RyW2lkeCArIDFdID49ICcwJyAmJiBzdHJbaWR4ICsgMV0gPD0gJzknKSB7CisgICAgaWYgKGlkeCA8IGVuZF9pZHggJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID09ICcuJyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDEpID49ICcwJyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDEpIDw9ICc5JykgewogICAgICAgICBpc19mbG9hdCA9IDE7CiAgICAgICAgIGlkeCArPSAyOwotICAgICAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgc3RyW2lkeF0gPj0gJzAnICYmIHN0cltpZHhdIDw9ICc5JykgaWR4Kys7CisgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPj0gJzAnICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA8PSAnOScpIGlkeCsrOwogICAgIH0KIAogICAgIC8qIGlmIHRoZSBuZXh0IGNoYXIgaXMgJ2UnIG9yICdFJyB0aGVuIG1heWJlIHJlYWQgdGhlIGV4cG9uZW50IChvciBiYWNrdHJhY2spICovCi0gICAgaWYgKGlkeCA8IGVuZF9pZHggJiYgKHN0cltpZHhdID09ICdlJyB8fCBzdHJbaWR4XSA9PSAnRScpKSB7CisgICAgaWYgKGlkeCA8IGVuZF9pZHggJiYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA9PSAnZScgfHwgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID09ICdFJykpIHsKICAgICAgICAgUHlfc3NpemVfdCBlX3N0YXJ0ID0gaWR4OwogICAgICAgICBpZHgrKzsKIAogICAgICAgICAvKiByZWFkIGFuIGV4cG9uZW50IHNpZ24gaWYgcHJlc2VudCAqLwotICAgICAgICBpZiAoaWR4IDwgZW5kX2lkeCAmJiAoc3RyW2lkeF0gPT0gJy0nIHx8IHN0cltpZHhdID09ICcrJykpIGlkeCsrOworICAgICAgICBpZiAoaWR4IDwgZW5kX2lkeCAmJiAoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID09ICctJyB8fCBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPT0gJysnKSkgaWR4Kys7CiAKICAgICAgICAgLyogcmVhZCBhbGwgZGlnaXRzICovCi0gICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBzdHJbaWR4XSA+PSAnMCcgJiYgc3RyW2lkeF0gPD0gJzknKSBpZHgrKzsKKyAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA+PSAnMCcgJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpIDw9ICc5JykgaWR4Kys7CiAKICAgICAgICAgLyogaWYgd2UgZ290IGEgZGlnaXQsIHRoZW4gcGFyc2UgYXMgZmxvYXQuIGlmIG5vdCwgYmFja3RyYWNrICovCi0gICAgICAgIGlmIChzdHJbaWR4IC0gMV0gPj0gJzAnICYmIHN0cltpZHggLSAxXSA8PSAnOScpIHsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4IC0gMSkgPj0gJzAnICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4IC0gMSkgPD0gJzknKSB7CiAgICAgICAgICAgICBpc19mbG9hdCA9IDE7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CkBAIC04OTUsMjIgKzkyMSwzOSBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgLyogY29weSB0aGUgc2VjdGlvbiB3ZSBkZXRlcm1pbmVkIHRvIGJlIGEgbnVtYmVyICovCi0gICAgbnVtc3RyID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKCZzdHJbc3RhcnRdLCBpZHggLSBzdGFydCk7Ci0gICAgaWYgKG51bXN0ciA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoaXNfZmxvYXQpIHsKLSAgICAgICAgLyogcGFyc2UgYXMgYSBmbG9hdCB1c2luZyBhIGZhc3QgcGF0aCBpZiBhdmFpbGFibGUsIG90aGVyd2lzZSBjYWxsIHVzZXIgZGVmaW5lZCBtZXRob2QgKi8KLSAgICAgICAgaWYgKHMtPnBhcnNlX2Zsb2F0ICE9IChQeU9iamVjdCAqKSZQeUZsb2F0X1R5cGUpIHsKLSAgICAgICAgICAgIHJ2YWwgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKHMtPnBhcnNlX2Zsb2F0LCBudW1zdHIsIE5VTEwpOwotICAgICAgICB9Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgcnZhbCA9IFB5RmxvYXRfRnJvbVN0cmluZyhudW1zdHIpOwotICAgICAgICB9CisgICAgaWYgKGlzX2Zsb2F0ICYmIHMtPnBhcnNlX2Zsb2F0ICE9IChQeU9iamVjdCAqKSZQeUZsb2F0X1R5cGUpCisgICAgICAgIGN1c3RvbV9mdW5jID0gcy0+cGFyc2VfZmxvYXQ7CisgICAgZWxzZSBpZiAoIWlzX2Zsb2F0ICYmIHMtPnBhcnNlX2ludCAhPSAoUHlPYmplY3QgKikgJlB5TG9uZ19UeXBlKQorICAgICAgICBjdXN0b21fZnVuYyA9IHMtPnBhcnNlX2ludDsKKyAgICBlbHNlCisgICAgICAgIGN1c3RvbV9mdW5jID0gTlVMTDsKKworICAgIGlmIChjdXN0b21fZnVuYykgeworICAgICAgICAvKiBjb3B5IHRoZSBzZWN0aW9uIHdlIGRldGVybWluZWQgdG8gYmUgYSBudW1iZXIgKi8KKyAgICAgICAgbnVtc3RyID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShraW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFyKilzdHIgKyBraW5kICogc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWR4IC0gc3RhcnQpOworICAgICAgICBpZiAobnVtc3RyID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgcnZhbCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MoY3VzdG9tX2Z1bmMsIG51bXN0ciwgTlVMTCk7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICAvKiBubyBmYXN0IHBhdGggZm9yIHVuaWNvZGUgLT4gaW50LCBqdXN0IGNhbGwgKi8KLSAgICAgICAgcnZhbCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3Mocy0+cGFyc2VfaW50LCBudW1zdHIsIE5VTEwpOworICAgICAgICBQeV9zc2l6ZV90IGksIG47CisgICAgICAgIGNoYXIgKmJ1ZjsKKyAgICAgICAgLyogU3RyYWlnaHQgY29udmVyc2lvbiB0byBBU0NJSSwgdG8gYXZvaWQgY29zdGx5IGNvbnZlcnNpb24gb2YKKyAgICAgICAgICAgZGVjaW1hbCB1bmljb2RlIGRpZ2l0cyAod2hpY2ggY2Fubm90IGFwcGVhciBoZXJlKSAqLworICAgICAgICBuID0gaWR4IC0gc3RhcnQ7CisgICAgICAgIG51bXN0ciA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgbik7CisgICAgICAgIGlmIChudW1zdHIgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBidWYgPSBQeUJ5dGVzX0FTX1NUUklORyhudW1zdHIpOworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CisgICAgICAgICAgICBidWZbaV0gPSAoY2hhcikgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpICsgc3RhcnQpOworICAgICAgICB9CisgICAgICAgIGlmIChpc19mbG9hdCkKKyAgICAgICAgICAgIHJ2YWwgPSBQeUZsb2F0X0Zyb21TdHJpbmcobnVtc3RyKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcnZhbCA9IFB5TG9uZ19Gcm9tU3RyaW5nKGJ1ZiwgTlVMTCwgMTApOwogICAgIH0KICAgICBQeV9ERUNSRUYobnVtc3RyKTsKICAgICAqbmV4dF9pZHhfcHRyID0gaWR4OwpAQCAtOTI4LDEzICs5NzEsMjMgQEAKICAgICBSZXR1cm5zIGEgbmV3IFB5T2JqZWN0IHJlcHJlc2VudGF0aW9uIG9mIHRoZSB0ZXJtLgogICAgICovCiAgICAgUHlPYmplY3QgKnJlczsKLSAgICBQeV9VTklDT0RFICpzdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShweXN0cik7Ci0gICAgUHlfc3NpemVfdCBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX1NJWkUocHlzdHIpOworICAgIHZvaWQgKnN0cjsKKyAgICBpbnQga2luZDsKKyAgICBQeV9zc2l6ZV90IGxlbmd0aDsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocHlzdHIpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHN0ciA9IFB5VW5pY29kZV9EQVRBKHB5c3RyKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQocHlzdHIpOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHB5c3RyKTsKKwogICAgIGlmIChpZHggPj0gbGVuZ3RoKSB7CiAgICAgICAgIFB5RXJyX1NldE5vbmUoUHlFeGNfU3RvcEl0ZXJhdGlvbik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBzd2l0Y2ggKHN0cltpZHhdKSB7CisKKyAgICBzd2l0Y2ggKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkgewogICAgICAgICBjYXNlICciJzoKICAgICAgICAgICAgIC8qIHN0cmluZyAqLwogICAgICAgICAgICAgcmV0dXJuIHNjYW5zdHJpbmdfdW5pY29kZShweXN0ciwgaWR4ICsgMSwKQEAgLTk1OCw3ICsxMDExLDcgQEAKICAgICAgICAgICAgIHJldHVybiByZXM7CiAgICAgICAgIGNhc2UgJ24nOgogICAgICAgICAgICAgLyogbnVsbCAqLwotICAgICAgICAgICAgaWYgKChpZHggKyAzIDwgbGVuZ3RoKSAmJiBzdHJbaWR4ICsgMV0gPT0gJ3UnICYmIHN0cltpZHggKyAyXSA9PSAnbCcgJiYgc3RyW2lkeCArIDNdID09ICdsJykgeworICAgICAgICAgICAgaWYgKChpZHggKyAzIDwgbGVuZ3RoKSAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDEpID09ICd1JyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDIpID09ICdsJyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDMpID09ICdsJykgewogICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICAgICAgICAgICAgICAqbmV4dF9pZHhfcHRyID0gaWR4ICsgNDsKICAgICAgICAgICAgICAgICByZXR1cm4gUHlfTm9uZTsKQEAgLTk2Niw3ICsxMDE5LDcgQEAKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlICd0JzoKICAgICAgICAgICAgIC8qIHRydWUgKi8KLSAgICAgICAgICAgIGlmICgoaWR4ICsgMyA8IGxlbmd0aCkgJiYgc3RyW2lkeCArIDFdID09ICdyJyAmJiBzdHJbaWR4ICsgMl0gPT0gJ3UnICYmIHN0cltpZHggKyAzXSA9PSAnZScpIHsKKyAgICAgICAgICAgIGlmICgoaWR4ICsgMyA8IGxlbmd0aCkgJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAxKSA9PSAncicgJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAyKSA9PSAndScgJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAzKSA9PSAnZScpIHsKICAgICAgICAgICAgICAgICBQeV9JTkNSRUYoUHlfVHJ1ZSk7CiAgICAgICAgICAgICAgICAgKm5leHRfaWR4X3B0ciA9IGlkeCArIDQ7CiAgICAgICAgICAgICAgICAgcmV0dXJuIFB5X1RydWU7CkBAIC05NzQsNyArMTAyNywxMCBAQAogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgJ2YnOgogICAgICAgICAgICAgLyogZmFsc2UgKi8KLSAgICAgICAgICAgIGlmICgoaWR4ICsgNCA8IGxlbmd0aCkgJiYgc3RyW2lkeCArIDFdID09ICdhJyAmJiBzdHJbaWR4ICsgMl0gPT0gJ2wnICYmIHN0cltpZHggKyAzXSA9PSAncycgJiYgc3RyW2lkeCArIDRdID09ICdlJykgeworICAgICAgICAgICAgaWYgKChpZHggKyA0IDwgbGVuZ3RoKSAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDEpID09ICdhJyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgMikgPT0gJ2wnICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAzKSA9PSAncycgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDQpID09ICdlJykgewogICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihQeV9GYWxzZSk7CiAgICAgICAgICAgICAgICAgKm5leHRfaWR4X3B0ciA9IGlkeCArIDU7CiAgICAgICAgICAgICAgICAgcmV0dXJuIFB5X0ZhbHNlOwpAQCAtOTgyLDE5ICsxMDM4LDMzIEBACiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSAnTic6CiAgICAgICAgICAgICAvKiBOYU4gKi8KLSAgICAgICAgICAgIGlmICgoaWR4ICsgMiA8IGxlbmd0aCkgJiYgc3RyW2lkeCArIDFdID09ICdhJyAmJiBzdHJbaWR4ICsgMl0gPT0gJ04nKSB7CisgICAgICAgICAgICBpZiAoKGlkeCArIDIgPCBsZW5ndGgpICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgMSkgPT0gJ2EnICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAyKSA9PSAnTicpIHsKICAgICAgICAgICAgICAgICByZXR1cm4gX3BhcnNlX2NvbnN0YW50KHMsICJOYU4iLCBpZHgsIG5leHRfaWR4X3B0cik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSAnSSc6CiAgICAgICAgICAgICAvKiBJbmZpbml0eSAqLwotICAgICAgICAgICAgaWYgKChpZHggKyA3IDwgbGVuZ3RoKSAmJiBzdHJbaWR4ICsgMV0gPT0gJ24nICYmIHN0cltpZHggKyAyXSA9PSAnZicgJiYgc3RyW2lkeCArIDNdID09ICdpJyAmJiBzdHJbaWR4ICsgNF0gPT0gJ24nICYmIHN0cltpZHggKyA1XSA9PSAnaScgJiYgc3RyW2lkeCArIDZdID09ICd0JyAmJiBzdHJbaWR4ICsgN10gPT0gJ3knKSB7CisgICAgICAgICAgICBpZiAoKGlkeCArIDcgPCBsZW5ndGgpICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgMSkgPT0gJ24nICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAyKSA9PSAnZicgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDMpID09ICdpJyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgNCkgPT0gJ24nICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyA1KSA9PSAnaScgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDYpID09ICd0JyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgNykgPT0gJ3knKSB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIF9wYXJzZV9jb25zdGFudChzLCAiSW5maW5pdHkiLCBpZHgsIG5leHRfaWR4X3B0cik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSAnLSc6CiAgICAgICAgICAgICAvKiAtSW5maW5pdHkgKi8KLSAgICAgICAgICAgIGlmICgoaWR4ICsgOCA8IGxlbmd0aCkgJiYgc3RyW2lkeCArIDFdID09ICdJJyAmJiBzdHJbaWR4ICsgMl0gPT0gJ24nICYmIHN0cltpZHggKyAzXSA9PSAnZicgJiYgc3RyW2lkeCArIDRdID09ICdpJyAmJiBzdHJbaWR4ICsgNV0gPT0gJ24nICYmIHN0cltpZHggKyA2XSA9PSAnaScgJiYgc3RyW2lkeCArIDddID09ICd0JyAmJiBzdHJbaWR4ICsgOF0gPT0gJ3knKSB7CisgICAgICAgICAgICBpZiAoKGlkeCArIDggPCBsZW5ndGgpICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgMSkgPT0gJ0knICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAyKSA9PSAnbicgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDMpID09ICdmJyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgNCkgPT0gJ2knICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyA1KSA9PSAnbicgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDYpID09ICdpJyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgNykgPT0gJ3QnICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyA4KSA9PSAneScpIHsKICAgICAgICAgICAgICAgICByZXR1cm4gX3BhcnNlX2NvbnN0YW50KHMsICItSW5maW5pdHkiLCBpZHgsIG5leHRfaWR4X3B0cik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKQEAgLTEyMTAsMjIgKzEyODAsMjIgQEAKICAgICAvKiBQeXRob24gY2FsbGFibGUgaW50ZXJmYWNlIHRvIGVuY29kZV9saXN0ZW5jb2RlX29iaiAqLwogICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsib2JqIiwgIl9jdXJyZW50X2luZGVudF9sZXZlbCIsIE5VTEx9OwogICAgIFB5T2JqZWN0ICpvYmo7Ci0gICAgUHlPYmplY3QgKnJ2YWw7CiAgICAgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWw7CiAgICAgUHlFbmNvZGVyT2JqZWN0ICpzOworICAgIF9QeUFjY3UgYWNjOworCiAgICAgYXNzZXJ0KFB5RW5jb2Rlcl9DaGVjayhzZWxmKSk7CiAgICAgcyA9IChQeUVuY29kZXJPYmplY3QgKilzZWxmOwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJPTyY6X2l0ZXJlbmNvZGUiLCBrd2xpc3QsCiAgICAgICAgICZvYmosIF9jb252ZXJ0UHlJbnRfQXNTc2l6ZV90LCAmaW5kZW50X2xldmVsKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcnZhbCA9IFB5TGlzdF9OZXcoMCk7Ci0gICAgaWYgKHJ2YWwgPT0gTlVMTCkKKyAgICBpZiAoX1B5QWNjdV9Jbml0KCZhY2MpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihzLCBydmFsLCBvYmosIGluZGVudF9sZXZlbCkpIHsKLSAgICAgICAgUHlfREVDUkVGKHJ2YWwpOworICAgIGlmIChlbmNvZGVyX2xpc3RlbmNvZGVfb2JqKHMsICZhY2MsIG9iaiwgaW5kZW50X2xldmVsKSkgeworICAgICAgICBfUHlBY2N1X0Rlc3Ryb3koJmFjYyk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXR1cm4gcnZhbDsKKyAgICByZXR1cm4gX1B5QWNjdV9GaW5pc2hBc0xpc3QoJmFjYyk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xMjk3LDE4ICsxMzY3LDE5IEBACiB9CiAKIHN0YXRpYyBpbnQKLV9zdGVhbF9saXN0X2FwcGVuZChQeU9iamVjdCAqbHN0LCBQeU9iamVjdCAqc3RvbGVuKQorX3N0ZWFsX2FjY3VtdWxhdGUoX1B5QWNjdSAqYWNjLCBQeU9iamVjdCAqc3RvbGVuKQogewogICAgIC8qIEFwcGVuZCBzdG9sZW4gYW5kIHRoZW4gZGVjcmVtZW50IGl0cyByZWZlcmVuY2UgY291bnQgKi8KLSAgICBpbnQgcnZhbCA9IFB5TGlzdF9BcHBlbmQobHN0LCBzdG9sZW4pOworICAgIGludCBydmFsID0gX1B5QWNjdV9BY2N1bXVsYXRlKGFjYywgc3RvbGVuKTsKICAgICBQeV9ERUNSRUYoc3RvbGVuKTsKICAgICByZXR1cm4gcnZhbDsKIH0KIAogc3RhdGljIGludAotZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihQeUVuY29kZXJPYmplY3QgKnMsIFB5T2JqZWN0ICpydmFsLCBQeU9iamVjdCAqb2JqLCBQeV9zc2l6ZV90IGluZGVudF9sZXZlbCkKK2VuY29kZXJfbGlzdGVuY29kZV9vYmooUHlFbmNvZGVyT2JqZWN0ICpzLCBfUHlBY2N1ICphY2MsCisgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpvYmosIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKQogewotICAgIC8qIEVuY29kZSBQeXRob24gb2JqZWN0IG9iaiB0byBhIEpTT04gdGVybSwgcnZhbCBpcyBhIFB5TGlzdCAqLworICAgIC8qIEVuY29kZSBQeXRob24gb2JqZWN0IG9iaiB0byBhIEpTT04gdGVybSAqLwogICAgIFB5T2JqZWN0ICpuZXdvYmo7CiAgICAgaW50IHJ2OwogCkBAIC0xMzE2LDM4ICsxMzg3LDM4IEBACiAgICAgICAgIFB5T2JqZWN0ICpjc3RyID0gX2VuY29kZWRfY29uc3Qob2JqKTsKICAgICAgICAgaWYgKGNzdHIgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgcmV0dXJuIF9zdGVhbF9saXN0X2FwcGVuZChydmFsLCBjc3RyKTsKKyAgICAgICAgcmV0dXJuIF9zdGVhbF9hY2N1bXVsYXRlKGFjYywgY3N0cik7CiAgICAgfQogICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayhvYmopKQogICAgIHsKICAgICAgICAgUHlPYmplY3QgKmVuY29kZWQgPSBlbmNvZGVyX2VuY29kZV9zdHJpbmcocywgb2JqKTsKICAgICAgICAgaWYgKGVuY29kZWQgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgcmV0dXJuIF9zdGVhbF9saXN0X2FwcGVuZChydmFsLCBlbmNvZGVkKTsKKyAgICAgICAgcmV0dXJuIF9zdGVhbF9hY2N1bXVsYXRlKGFjYywgZW5jb2RlZCk7CiAgICAgfQogICAgIGVsc2UgaWYgKFB5TG9uZ19DaGVjayhvYmopKSB7CiAgICAgICAgIFB5T2JqZWN0ICplbmNvZGVkID0gUHlPYmplY3RfU3RyKG9iaik7CiAgICAgICAgIGlmIChlbmNvZGVkID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIHJldHVybiBfc3RlYWxfbGlzdF9hcHBlbmQocnZhbCwgZW5jb2RlZCk7CisgICAgICAgIHJldHVybiBfc3RlYWxfYWNjdW11bGF0ZShhY2MsIGVuY29kZWQpOwogICAgIH0KICAgICBlbHNlIGlmIChQeUZsb2F0X0NoZWNrKG9iaikpIHsKICAgICAgICAgUHlPYmplY3QgKmVuY29kZWQgPSBlbmNvZGVyX2VuY29kZV9mbG9hdChzLCBvYmopOwogICAgICAgICBpZiAoZW5jb2RlZCA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICByZXR1cm4gX3N0ZWFsX2xpc3RfYXBwZW5kKHJ2YWwsIGVuY29kZWQpOworICAgICAgICByZXR1cm4gX3N0ZWFsX2FjY3VtdWxhdGUoYWNjLCBlbmNvZGVkKTsKICAgICB9CiAgICAgZWxzZSBpZiAoUHlMaXN0X0NoZWNrKG9iaikgfHwgUHlUdXBsZV9DaGVjayhvYmopKSB7CiAgICAgICAgIGlmIChQeV9FbnRlclJlY3Vyc2l2ZUNhbGwoIiB3aGlsZSBlbmNvZGluZyBhIEpTT04gb2JqZWN0IikpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIHJ2ID0gZW5jb2Rlcl9saXN0ZW5jb2RlX2xpc3QocywgcnZhbCwgb2JqLCBpbmRlbnRfbGV2ZWwpOworICAgICAgICBydiA9IGVuY29kZXJfbGlzdGVuY29kZV9saXN0KHMsIGFjYywgb2JqLCBpbmRlbnRfbGV2ZWwpOwogICAgICAgICBQeV9MZWF2ZVJlY3Vyc2l2ZUNhbGwoKTsKICAgICAgICAgcmV0dXJuIHJ2OwogICAgIH0KICAgICBlbHNlIGlmIChQeURpY3RfQ2hlY2sob2JqKSkgewogICAgICAgICBpZiAoUHlfRW50ZXJSZWN1cnNpdmVDYWxsKCIgd2hpbGUgZW5jb2RpbmcgYSBKU09OIG9iamVjdCIpKQogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICBydiA9IGVuY29kZXJfbGlzdGVuY29kZV9kaWN0KHMsIHJ2YWwsIG9iaiwgaW5kZW50X2xldmVsKTsKKyAgICAgICAgcnYgPSBlbmNvZGVyX2xpc3RlbmNvZGVfZGljdChzLCBhY2MsIG9iaiwgaW5kZW50X2xldmVsKTsKICAgICAgICAgUHlfTGVhdmVSZWN1cnNpdmVDYWxsKCk7CiAgICAgICAgIHJldHVybiBydjsKICAgICB9CkBAIC0xMzc4LDcgKzE0NDksNyBAQAogCiAgICAgICAgIGlmIChQeV9FbnRlclJlY3Vyc2l2ZUNhbGwoIiB3aGlsZSBlbmNvZGluZyBhIEpTT04gb2JqZWN0IikpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIHJ2ID0gZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihzLCBydmFsLCBuZXdvYmosIGluZGVudF9sZXZlbCk7CisgICAgICAgIHJ2ID0gZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihzLCBhY2MsIG5ld29iaiwgaW5kZW50X2xldmVsKTsKICAgICAgICAgUHlfTGVhdmVSZWN1cnNpdmVDYWxsKCk7CiAKICAgICAgICAgUHlfREVDUkVGKG5ld29iaik7CkBAIC0xMzk4LDkgKzE0NjksMTAgQEAKIH0KIAogc3RhdGljIGludAotZW5jb2Rlcl9saXN0ZW5jb2RlX2RpY3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBQeU9iamVjdCAqcnZhbCwgUHlPYmplY3QgKmRjdCwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpCitlbmNvZGVyX2xpc3RlbmNvZGVfZGljdChQeUVuY29kZXJPYmplY3QgKnMsIF9QeUFjY3UgKmFjYywKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpkY3QsIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKQogewotICAgIC8qIEVuY29kZSBQeXRob24gZGljdCBkY3QgYSBKU09OIHRlcm0sIHJ2YWwgaXMgYSBQeUxpc3QgKi8KKyAgICAvKiBFbmNvZGUgUHl0aG9uIGRpY3QgZGN0IGEgSlNPTiB0ZXJtICovCiAgICAgc3RhdGljIFB5T2JqZWN0ICpvcGVuX2RpY3QgPSBOVUxMOwogICAgIHN0YXRpYyBQeU9iamVjdCAqY2xvc2VfZGljdCA9IE5VTEw7CiAgICAgc3RhdGljIFB5T2JqZWN0ICplbXB0eV9kaWN0ID0gTlVMTDsKQEAgLTE0MjAsNyArMTQ5Miw3IEBACiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIGlmIChQeV9TSVpFKGRjdCkgPT0gMCkKLSAgICAgICAgcmV0dXJuIFB5TGlzdF9BcHBlbmQocnZhbCwgZW1wdHlfZGljdCk7CisgICAgICAgIHJldHVybiBfUHlBY2N1X0FjY3VtdWxhdGUoYWNjLCBlbXB0eV9kaWN0KTsKIAogICAgIGlmIChzLT5tYXJrZXJzICE9IFB5X05vbmUpIHsKICAgICAgICAgaW50IGhhc19rZXk7CkBAIC0xNDM4LDcgKzE1MTAsNyBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgb3Blbl9kaWN0KSkKKyAgICBpZiAoX1B5QWNjdV9BY2N1bXVsYXRlKGFjYywgb3Blbl9kaWN0KSkKICAgICAgICAgZ290byBiYWlsOwogCiAgICAgaWYgKHMtPmluZGVudCAhPSBQeV9Ob25lKSB7CkBAIC0xNTI1LDcgKzE1OTcsNyBAQAogICAgICAgICB9CiAKICAgICAgICAgaWYgKGlkeCkgewotICAgICAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgcy0+aXRlbV9zZXBhcmF0b3IpKQorICAgICAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIHMtPml0ZW1fc2VwYXJhdG9yKSkKICAgICAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIH0KIApAQCAtMTUzMywxNiArMTYwNSwxNiBAQAogICAgICAgICBQeV9DTEVBUihrc3RyKTsKICAgICAgICAgaWYgKGVuY29kZWQgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gYmFpbDsKLSAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgZW5jb2RlZCkpIHsKKyAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIGVuY29kZWQpKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYoZW5jb2RlZCk7CiAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIH0KICAgICAgICAgUHlfREVDUkVGKGVuY29kZWQpOwotICAgICAgICBpZiAoUHlMaXN0X0FwcGVuZChydmFsLCBzLT5rZXlfc2VwYXJhdG9yKSkKKyAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIHMtPmtleV9zZXBhcmF0b3IpKQogICAgICAgICAgICAgZ290byBiYWlsOwogCiAgICAgICAgIHZhbHVlID0gUHlUdXBsZV9HRVRfSVRFTShpdGVtLCAxKTsKLSAgICAgICAgaWYgKGVuY29kZXJfbGlzdGVuY29kZV9vYmoocywgcnZhbCwgdmFsdWUsIGluZGVudF9sZXZlbCkpCisgICAgICAgIGlmIChlbmNvZGVyX2xpc3RlbmNvZGVfb2JqKHMsIGFjYywgdmFsdWUsIGluZGVudF9sZXZlbCkpCiAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIGlkeCArPSAxOwogICAgICAgICBQeV9ERUNSRUYoaXRlbSk7CkBAIC0xNTU2LDE0ICsxNjI4LDEzIEBACiAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIFB5X0NMRUFSKGlkZW50KTsKICAgICB9CisgICAgLyogVE9ETyBET0VTIE5PVCBSVU47IGRlYWQgY29kZQogICAgIGlmIChzLT5pbmRlbnQgIT0gUHlfTm9uZSkgewotICAgICAgICAvKiBUT0RPOiBET0VTIE5PVCBSVU4gKi8KICAgICAgICAgaW5kZW50X2xldmVsIC09IDE7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICB5aWVsZCAnXG4nICsgKCcgJyAqIChfaW5kZW50ICogX2N1cnJlbnRfaW5kZW50X2xldmVsKSkKLSAgICAgICAgKi8KLSAgICB9Ci0gICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgY2xvc2VfZGljdCkpCisKKyAgICAgICAgeWllbGQgJ1xuJyArICgnICcgKiAoX2luZGVudCAqIF9jdXJyZW50X2luZGVudF9sZXZlbCkpCisgICAgfSovCisgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIGNsb3NlX2RpY3QpKQogICAgICAgICBnb3RvIGJhaWw7CiAgICAgcmV0dXJuIDA7CiAKQEAgLTE1NzcsOSArMTY0OCwxMCBAQAogCiAKIHN0YXRpYyBpbnQKLWVuY29kZXJfbGlzdGVuY29kZV9saXN0KFB5RW5jb2Rlck9iamVjdCAqcywgUHlPYmplY3QgKnJ2YWwsIFB5T2JqZWN0ICpzZXEsIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKQorZW5jb2Rlcl9saXN0ZW5jb2RlX2xpc3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBfUHlBY2N1ICphY2MsCisgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqc2VxLCBQeV9zc2l6ZV90IGluZGVudF9sZXZlbCkKIHsKLSAgICAvKiBFbmNvZGUgUHl0aG9uIGxpc3Qgc2VxIHRvIGEgSlNPTiB0ZXJtLCBydmFsIGlzIGEgUHlMaXN0ICovCisgICAgLyogRW5jb2RlIFB5dGhvbiBsaXN0IHNlcSB0byBhIEpTT04gdGVybSAqLwogICAgIHN0YXRpYyBQeU9iamVjdCAqb3Blbl9hcnJheSA9IE5VTEw7CiAgICAgc3RhdGljIFB5T2JqZWN0ICpjbG9zZV9hcnJheSA9IE5VTEw7CiAgICAgc3RhdGljIFB5T2JqZWN0ICplbXB0eV9hcnJheSA9IE5VTEw7CkBAIC0xNjAzLDcgKzE2NzUsNyBAQAogICAgIG51bV9pdGVtcyA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfU0laRShzX2Zhc3QpOwogICAgIGlmIChudW1faXRlbXMgPT0gMCkgewogICAgICAgICBQeV9ERUNSRUYoc19mYXN0KTsKLSAgICAgICAgcmV0dXJuIFB5TGlzdF9BcHBlbmQocnZhbCwgZW1wdHlfYXJyYXkpOworICAgICAgICByZXR1cm4gX1B5QWNjdV9BY2N1bXVsYXRlKGFjYywgZW1wdHlfYXJyYXkpOwogICAgIH0KIAogICAgIGlmIChzLT5tYXJrZXJzICE9IFB5X05vbmUpIHsKQEAgLTE2MjMsNyArMTY5NSw3IEBACiAgICAgfQogCiAgICAgc2VxX2l0ZW1zID0gUHlTZXF1ZW5jZV9GYXN0X0lURU1TKHNfZmFzdCk7Ci0gICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgb3Blbl9hcnJheSkpCisgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIG9wZW5fYXJyYXkpKQogICAgICAgICBnb3RvIGJhaWw7CiAgICAgaWYgKHMtPmluZGVudCAhPSBQeV9Ob25lKSB7CiAgICAgICAgIC8qIFRPRE86IERPRVMgTk9UIFJVTiAqLwpAQCAtMTYzNywxMCArMTcwOSwxMCBAQAogICAgIGZvciAoaSA9IDA7IGkgPCBudW1faXRlbXM7IGkrKykgewogICAgICAgICBQeU9iamVjdCAqb2JqID0gc2VxX2l0ZW1zW2ldOwogICAgICAgICBpZiAoaSkgewotICAgICAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgcy0+aXRlbV9zZXBhcmF0b3IpKQorICAgICAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIHMtPml0ZW1fc2VwYXJhdG9yKSkKICAgICAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKGVuY29kZXJfbGlzdGVuY29kZV9vYmoocywgcnZhbCwgb2JqLCBpbmRlbnRfbGV2ZWwpKQorICAgICAgICBpZiAoZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihzLCBhY2MsIG9iaiwgaW5kZW50X2xldmVsKSkKICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICB9CiAgICAgaWYgKGlkZW50ICE9IE5VTEwpIHsKQEAgLTE2NDgsMTQgKzE3MjAsMTQgQEAKICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICAgICAgUHlfQ0xFQVIoaWRlbnQpOwogICAgIH0KKworICAgIC8qIFRPRE86IERPRVMgTk9UIFJVTgogICAgIGlmIChzLT5pbmRlbnQgIT0gUHlfTm9uZSkgewotICAgICAgICAvKiBUT0RPOiBET0VTIE5PVCBSVU4gKi8KICAgICAgICAgaW5kZW50X2xldmVsIC09IDE7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICB5aWVsZCAnXG4nICsgKCcgJyAqIChfaW5kZW50ICogX2N1cnJlbnRfaW5kZW50X2xldmVsKSkKLSAgICAgICAgKi8KLSAgICB9Ci0gICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgY2xvc2VfYXJyYXkpKQorCisgICAgICAgIHlpZWxkICdcbicgKyAoJyAnICogKF9pbmRlbnQgKiBfY3VycmVudF9pbmRlbnRfbGV2ZWwpKQorICAgIH0qLworICAgIGlmIChfUHlBY2N1X0FjY3VtdWxhdGUoYWNjLCBjbG9zZV9hcnJheSkpCiAgICAgICAgIGdvdG8gYmFpbDsKICAgICBQeV9ERUNSRUYoc19mYXN0KTsKICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2xvY2FsZW1vZHVsZS5jIGIvTW9kdWxlcy9fbG9jYWxlbW9kdWxlLmMKaW5kZXggMTAwMWRkMi4uMjBjNTlhNCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fbG9jYWxlbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fbG9jYWxlbW9kdWxlLmMKQEAgLTQyLDQzICs0Miw2IEBACiAKIHN0YXRpYyBQeU9iamVjdCAqRXJyb3I7CiAKLS8qIENvbnZlcnQgYSBjaGFyKiB0byBhIFVuaWNvZGUgb2JqZWN0IGFjY29yZGluZyB0byB0aGUgY3VycmVudCBsb2NhbGUgKi8KLXN0YXRpYyBQeU9iamVjdCoKLXN0cjJ1bmkoY29uc3QgY2hhciogcykKLXsKLSNpZmRlZiBIQVZFX0JST0tFTl9NQlNUT1dDUwotICAgIHNpemVfdCBuZWVkZWQgPSBzdHJsZW4ocyk7Ci0jZWxzZQotICAgIHNpemVfdCBuZWVkZWQgPSBtYnN0b3djcyhOVUxMLCBzLCAwKTsKLSNlbmRpZgotICAgIHNpemVfdCByZXMxOwotICAgIHdjaGFyX3Qgc21hbGxidWZbMzBdOwotICAgIHdjaGFyX3QgKmRlc3Q7Ci0gICAgUHlPYmplY3QgKnJlczI7Ci0gICAgaWYgKG5lZWRlZCA9PSAoc2l6ZV90KS0xKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiQ2Fubm90IGNvbnZlcnQgYnl0ZSB0byBzdHJpbmciKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIGlmIChuZWVkZWQqc2l6ZW9mKHdjaGFyX3QpIDwgc2l6ZW9mKHNtYWxsYnVmKSkKLSAgICAgICAgZGVzdCA9IHNtYWxsYnVmOwotICAgIGVsc2UgewotICAgICAgICBkZXN0ID0gUHlNZW1fTWFsbG9jKChuZWVkZWQrMSkqc2l6ZW9mKHdjaGFyX3QpKTsKLSAgICAgICAgaWYgKCFkZXN0KQotICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgfQotICAgIC8qIFRoaXMgc2hvdWxkbid0IGZhaWwgbm93ICovCi0gICAgcmVzMSA9IG1ic3Rvd2NzKGRlc3QsIHMsIG5lZWRlZCsxKTsKLSNpZmRlZiBIQVZFX0JST0tFTl9NQlNUT1dDUwotICAgIGFzc2VydChyZXMxICE9IChzaXplX3QpLTEpOwotI2Vsc2UKLSAgICBhc3NlcnQocmVzMSA9PSBuZWVkZWQpOwotI2VuZGlmCi0gICAgcmVzMiA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoZGVzdCwgcmVzMSk7Ci0gICAgaWYgKGRlc3QgIT0gc21hbGxidWYpCi0gICAgICAgIFB5TWVtX0ZyZWUoZGVzdCk7Ci0gICAgcmV0dXJuIHJlczI7Ci19Ci0KIC8qIHN1cHBvcnQgZnVuY3Rpb25zIGZvciBmb3JtYXR0aW5nIGZsb2F0aW5nIHBvaW50IG51bWJlcnMgKi8KIAogUHlEb2NfU1RSVkFSKHNldGxvY2FsZV9fZG9jX18sCkBAIC0xNDksNyArMTEyLDcgQEAKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhFcnJvciwgInVuc3VwcG9ydGVkIGxvY2FsZSBzZXR0aW5nIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICByZXN1bHRfb2JqZWN0ID0gc3RyMnVuaShyZXN1bHQpOworICAgICAgICByZXN1bHRfb2JqZWN0ID0gUHlVbmljb2RlX0RlY29kZUxvY2FsZShyZXN1bHQsIE5VTEwpOwogICAgICAgICBpZiAoIXJlc3VsdF9vYmplY3QpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9IGVsc2UgewpAQCAtMTU5LDcgKzEyMiw3IEBACiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoRXJyb3IsICJsb2NhbGUgcXVlcnkgZmFpbGVkIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICByZXN1bHRfb2JqZWN0ID0gc3RyMnVuaShyZXN1bHQpOworICAgICAgICByZXN1bHRfb2JqZWN0ID0gUHlVbmljb2RlX0RlY29kZUxvY2FsZShyZXN1bHQsIE5VTEwpOwogICAgIH0KICAgICByZXR1cm4gcmVzdWx0X29iamVjdDsKIH0KQEAgLTE4NSw3ICsxNDgsNyBAQAogICAgICAgIGludm9sdmVkIGhlcmVpbiAqLwogCiAjZGVmaW5lIFJFU1VMVF9TVFJJTkcocylcCi0gICAgeCA9IHN0cjJ1bmkobC0+cyk7ICAgXAorICAgIHggPSBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGwtPnMsIE5VTEwpOyAgIFwKICAgICBpZiAoIXgpIGdvdG8gZmFpbGVkO1wKICAgICBQeURpY3RfU2V0SXRlbVN0cmluZyhyZXN1bHQsICNzLCB4KTtcCiAgICAgUHlfWERFQ1JFRih4KQpAQCAtMjcxLDM3ICsyMzQsMjggQEAKIHN0YXRpYyBQeU9iamVjdCoKIFB5TG9jYWxlX3N0cnhmcm0oUHlPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBhcmdzKQogewotICAgIFB5X1VOSUNPREUgKnMwOwotICAgIFB5X3NzaXplX3QgbjA7Ci0gICAgd2NoYXJfdCAqcywgKmJ1ZiA9IE5VTEw7Ci0gICAgc2l6ZV90IG4xLCBuMjsKKyAgICBQeU9iamVjdCAqc3RyOworICAgIFB5X3NzaXplX3QgbjE7CisgICAgd2NoYXJfdCAqcyA9IE5VTEwsICpidWYgPSBOVUxMOworICAgIHNpemVfdCBuMjsKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSNpZiBQeV9VTklDT0RFX1NJWkUgIT0gU0laRU9GX1dDSEFSX1QKLSAgICBQeV9zc2l6ZV90IGk7Ci0jZW5kaWYKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAidSM6c3RyeGZybSIsICZzMCwgJm4wKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6c3RyeGZybSIsICZzdHIpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotI2lmIFB5X1VOSUNPREVfU0laRSA9PSBTSVpFT0ZfV0NIQVJfVAotICAgIHMgPSAod2NoYXJfdCAqKSBzMDsKLSNlbHNlCi0gICAgcyA9IFB5TWVtX01hbGxvYygobjArMSkqc2l6ZW9mKHdjaGFyX3QpKTsKLSAgICBpZiAoIXMpCi0gICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOwotICAgIGZvciAoaT0wOyBpPD1uMDsgaSsrKQotICAgICAgICBzW2ldID0gczBbaV07Ci0jZW5kaWYKKyAgICBzID0gUHlVbmljb2RlX0FzV2lkZUNoYXJTdHJpbmcoc3RyLCAmbjEpOworICAgIGlmIChzID09IE5VTEwpCisgICAgICAgIGdvdG8gZXhpdDsKIAogICAgIC8qIGFzc3VtZSBubyBjaGFuZ2UgaW4gc2l6ZSwgZmlyc3QgKi8KLSAgICBuMSA9IHdjc2xlbihzKSArIDE7Ci0gICAgYnVmID0gUHlNZW1fTWFsbG9jKG4xKnNpemVvZih3Y2hhcl90KSk7CisgICAgbjEgPSBuMSArIDE7CisgICAgYnVmID0gUHlNZW1fTWFsbG9jKG4xICogc2l6ZW9mKHdjaGFyX3QpKTsKICAgICBpZiAoIWJ1ZikgewogICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICBnb3RvIGV4aXQ7CiAgICAgfQogICAgIG4yID0gd2NzeGZybShidWYsIHMsIG4xKTsKLSAgICBpZiAobjIgPj0gbjEpIHsKKyAgICBpZiAobjIgPj0gKHNpemVfdCluMSkgewogICAgICAgICAvKiBtb3JlIHNwYWNlIG5lZWRlZCAqLwogICAgICAgICBidWYgPSBQeU1lbV9SZWFsbG9jKGJ1ZiwgKG4yKzEpKnNpemVvZih3Y2hhcl90KSk7CiAgICAgICAgIGlmICghYnVmKSB7CkBAIC0zMTEsMTEgKzI2NSwxMSBAQAogICAgICAgICBuMiA9IHdjc3hmcm0oYnVmLCBzLCBuMisxKTsKICAgICB9CiAgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihidWYsIG4yKTsKLSBleGl0OgotICAgIGlmIChidWYpIFB5TWVtX0ZyZWUoYnVmKTsKLSNpZiBQeV9VTklDT0RFX1NJWkUgIT0gU0laRU9GX1dDSEFSX1QKLSAgICBQeU1lbV9GcmVlKHMpOwotI2VuZGlmCitleGl0OgorICAgIGlmIChidWYpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmKTsKKyAgICBpZiAocykKKyAgICAgICAgUHlNZW1fRnJlZShzKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQogI2VuZGlmCkBAIC00ODUsNyArNDM5LDcgQEAKICAgICAgICAgICAgICAgIGluc3RlYWQgb2YgYW4gZW1wdHkgc3RyaW5nIGZvciBubF9sYW5naW5mbyhFUkEpLiAgKi8KICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnJlc3VsdCA9IG5sX2xhbmdpbmZvKGl0ZW0pOwogICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0ICE9IE5VTEwgPyByZXN1bHQgOiAiIjsKLSAgICAgICAgICAgIHJldHVybiBzdHIydW5pKHJlc3VsdCk7CisgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUxvY2FsZShyZXN1bHQsIE5VTEwpOwogICAgICAgICB9CiAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJ1bnN1cHBvcnRlZCBsYW5naW5mbyBjb25zdGFudCIpOwogICAgIHJldHVybiBOVUxMOwpAQCAtNTA0LDcgKzQ1OCw3IEBACiAgICAgY2hhciAqaW47CiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzIiwgJmluKSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIHN0cjJ1bmkoZ2V0dGV4dChpbikpOworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGdldHRleHQoaW4pLCBOVUxMKTsKIH0KIAogUHlEb2NfU1RSVkFSKGRnZXR0ZXh0X19kb2NfXywKQEAgLTUxNyw3ICs0NzEsNyBAQAogICAgIGNoYXIgKmRvbWFpbiwgKmluOwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAienMiLCAmZG9tYWluLCAmaW4pKQogICAgICAgICByZXR1cm4gMDsKLSAgICByZXR1cm4gc3RyMnVuaShkZ2V0dGV4dChkb21haW4sIGluKSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVMb2NhbGUoZGdldHRleHQoZG9tYWluLCBpbiksIE5VTEwpOwogfQogCiBQeURvY19TVFJWQVIoZGNnZXR0ZXh0X19kb2NfXywKQEAgLTUzMSw3ICs0ODUsNyBAQAogICAgIGludCBjYXRlZ29yeTsKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInpzaSIsICZkb21haW4sICZtc2dpZCwgJmNhdGVnb3J5KSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIHN0cjJ1bmkoZGNnZXR0ZXh0KGRvbWFpbixtc2dpZCxjYXRlZ29yeSkpOworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGRjZ2V0dGV4dChkb21haW4sbXNnaWQsY2F0ZWdvcnkpLCBOVUxMKTsKIH0KIAogUHlEb2NfU1RSVkFSKHRleHRkb21haW5fX2RvY19fLApAQCAtNTQ5LDcgKzUwMyw3IEBACiAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiBzdHIydW5pKGRvbWFpbik7CisgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVMb2NhbGUoZG9tYWluLCBOVUxMKTsKIH0KIAogUHlEb2NfU1RSVkFSKGJpbmR0ZXh0ZG9tYWluX19kb2NfXywKQEAgLTU4MSw3ICs1MzUsNyBAQAogICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXN1bHQgPSBzdHIydW5pKGN1cnJlbnRfZGlybmFtZSk7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0RlY29kZUxvY2FsZShjdXJyZW50X2Rpcm5hbWUsIE5VTEwpOwogICAgIFB5X1hERUNSRUYoZGlybmFtZV9ieXRlcyk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTU5OSw3ICs1NTMsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBjb2Rlc2V0ID0gYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQoZG9tYWluLCBjb2Rlc2V0KTsKICAgICBpZiAoY29kZXNldCkKLSAgICAgICAgcmV0dXJuIHN0cjJ1bmkoY29kZXNldCk7CisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGNvZGVzZXQsIE5VTEwpOwogICAgIFB5X1JFVFVSTl9OT05FOwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19sc3Byb2YuYyBiL01vZHVsZXMvX2xzcHJvZi5jCmluZGV4IGNjNDEyYmYuLmIwYTIyNmIgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2xzcHJvZi5jCisrKyBiL01vZHVsZXMvX2xzcHJvZi5jCkBAIC0xNzYsMzYgKzE3NiwyOSBAQAogICAgIGlmIChmbi0+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+aGFuZGxlLCAmcmZkcykpIHsKLSAgICAgICAgcmV0dXJuIFRSVUU7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgYXNzZXJ0KHJlcyA9PSAwKTsKLSAgICAgICAgcmV0dXJuIEZBTFNFOwotICAgIH0KLX0KLQotLyoKLSAqICJjb25uZWN0aW9uLmgiIGRlZmluZXMgdGhlIENvbm5lY3Rpb24gdHlwZSB1c2luZyBkZWZzIGFib3ZlCi0gKi8KLQotI2RlZmluZSBDT05ORUNUSU9OX05BTUUgIkNvbm5lY3Rpb24iCi0jZGVmaW5lIENPTk5FQ1RJT05fVFlQRSBDb25uZWN0aW9uVHlwZQotCi0jaW5jbHVkZSAiY29ubmVjdGlvbi5oIgpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL3dpbjMyX2Z1bmN0aW9ucy5jIGIvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL3dpbjMyX2Z1bmN0aW9ucy5jCmluZGV4IDQ1MmQ2MDguLjkzYzhmYzkgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy93aW4zMl9mdW5jdGlvbnMuYworKysgYi9Nb2R1bGVzL19tdWx0aXByb2Nlc3Npbmcvd2luMzJfZnVuY3Rpb25zLmMKQEAgLTEyLDEwICsxMiwyMzAgQEAKICNkZWZpbmUgV0lOMzJfRlVOQ1RJT04oZnVuYykgXAogICAgIHsjZnVuYywgKFB5Q0Z1bmN0aW9uKXdpbjMyXyAjIyBmdW5jLCBNRVRIX1ZBUkFSR1MgfCBNRVRIX1NUQVRJQywgIiJ9CiAKKyNkZWZpbmUgV0lOMzJfS1dBUkdTX0ZVTkNUSU9OKGZ1bmMpIFwKKyAgICB7I2Z1bmMsIChQeUNGdW5jdGlvbil3aW4zMl8gIyMgZnVuYywgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUyB8IE1FVEhfU1RBVElDLCAiIn0KKwogI2RlZmluZSBXSU4zMl9DT05TVEFOVChmbXQsIGNvbikgXAogICAgIFB5RGljdF9TZXRJdGVtU3RyaW5nKFdpbjMyVHlwZS50cF9kaWN0LCAjY29uLCBQeV9CdWlsZFZhbHVlKGZtdCwgY29uKSkKIAogCisvKiBHcmFiIENhbmNlbElvRXggZHluYW1pY2FsbHkgZnJvbSBrZXJuZWwzMiAqLworc3RhdGljIGludCBoYXNfQ2FuY2VsSW9FeCA9IC0xOworc3RhdGljIEJPT0wgKENBTExCQUNLICpQeV9DYW5jZWxJb0V4KShIQU5ETEUsIExQT1ZFUkxBUFBFRCk7CisKK3N0YXRpYyBpbnQKK2NoZWNrX0NhbmNlbElvRXgoKQoreworICAgIGlmIChoYXNfQ2FuY2VsSW9FeCA9PSAtMSkKKyAgICB7CisgICAgICAgIEhJTlNUQU5DRSBoS2VybmVsMzIgPSBHZXRNb2R1bGVIYW5kbGUoIktFUk5FTDMyIik7CisgICAgICAgICogKEZBUlBST0MgKikgJlB5X0NhbmNlbElvRXggPSBHZXRQcm9jQWRkcmVzcyhoS2VybmVsMzIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ2FuY2VsSW9FeCIpOworICAgICAgICBoYXNfQ2FuY2VsSW9FeCA9IChQeV9DYW5jZWxJb0V4ICE9IE5VTEwpOworICAgIH0KKyAgICByZXR1cm4gaGFzX0NhbmNlbElvRXg7Cit9CisKKworLyoKKyAqIEEgUHl0aG9uIG9iamVjdCB3cmFwcGluZyBhbiBPVkVSTEFQUEVEIHN0cnVjdHVyZSBhbmQgb3RoZXIgdXNlZnVsIGRhdGEKKyAqIGZvciBvdmVybGFwcGVkIEkvTworICovCisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBQeU9iamVjdF9IRUFECisgICAgT1ZFUkxBUFBFRCBvdmVybGFwcGVkOworICAgIC8qIEZvciBjb252ZW5pZW5jZSwgd2Ugc3RvcmUgdGhlIGZpbGUgaGFuZGxlIHRvbyAqLworICAgIEhBTkRMRSBoYW5kbGU7CisgICAgLyogV2hldGhlciB0aGVyZSdzIEkvTyBpbiBmbGlnaHQgKi8KKyAgICBpbnQgcGVuZGluZzsKKyAgICAvKiBXaGV0aGVyIEkvTyBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5ICovCisgICAgaW50IGNvbXBsZXRlZDsKKyAgICAvKiBCdWZmZXIgdXNlZCBmb3IgcmVhZGluZyAob3B0aW9uYWwpICovCisgICAgUHlPYmplY3QgKnJlYWRfYnVmZmVyOworICAgIC8qIEJ1ZmZlciB1c2VkIGZvciB3cml0aW5nIChvcHRpb25hbCkgKi8KKyAgICBQeV9idWZmZXIgd3JpdGVfYnVmZmVyOworfSBPdmVybGFwcGVkT2JqZWN0OworCitzdGF0aWMgdm9pZAorb3ZlcmxhcHBlZF9kZWFsbG9jKE92ZXJsYXBwZWRPYmplY3QgKnNlbGYpCit7CisgICAgRFdPUkQgYnl0ZXM7CisgICAgaW50IGVyciA9IEdldExhc3RFcnJvcigpOworICAgIGlmIChzZWxmLT5wZW5kaW5nKSB7CisgICAgICAgIC8qIG1ha2UgaXQgYSBwcm9ncmFtbWluZyBlcnJvciB0byBkZWFsbG9jYXRlIHdoaWxlIG9wZXJhdGlvbgorICAgICAgICAgICBpcyBwZW5kaW5nLCBldmVuIGlmIHdlIGNhbiBzYWZlbHkgY2FuY2VsIGl0ICovCisgICAgICAgIGlmIChjaGVja19DYW5jZWxJb0V4KCkgJiYKKyAgICAgICAgICAgICAgICBQeV9DYW5jZWxJb0V4KHNlbGYtPmhhbmRsZSwgJnNlbGYtPm92ZXJsYXBwZWQpKQorICAgICAgICAgICAgR2V0T3ZlcmxhcHBlZFJlc3VsdChzZWxmLT5oYW5kbGUsICZzZWxmLT5vdmVybGFwcGVkLCAmYnl0ZXMsIFRSVUUpOworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIkkvTyBvcGVyYXRpb25zIHN0aWxsIGluIGZsaWdodCB3aGlsZSBkZXN0cm95aW5nICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJPdmVybGFwcGVkIG9iamVjdCwgdGhlIHByb2Nlc3MgbWF5IGNyYXNoIik7CisgICAgICAgIFB5RXJyX1dyaXRlVW5yYWlzYWJsZShOVUxMKTsKKyAgICB9CisgICAgQ2xvc2VIYW5kbGUoc2VsZi0+b3ZlcmxhcHBlZC5oRXZlbnQpOworICAgIFNldExhc3RFcnJvcihlcnIpOworICAgIGlmIChzZWxmLT53cml0ZV9idWZmZXIub2JqKQorICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZzZWxmLT53cml0ZV9idWZmZXIpOworICAgIFB5X0NMRUFSKHNlbGYtPnJlYWRfYnVmZmVyKTsKKyAgICBQeU9iamVjdF9EZWwoc2VsZik7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitvdmVybGFwcGVkX0dldE92ZXJsYXBwZWRSZXN1bHQoT3ZlcmxhcHBlZE9iamVjdCAqc2VsZiwgUHlPYmplY3QgKndhaXRvYmopCit7CisgICAgaW50IHdhaXQ7CisgICAgQk9PTCByZXM7CisgICAgRFdPUkQgdHJhbnNmZXJyZWQgPSAwOworICAgIERXT1JEIGVycjsKKworICAgIHdhaXQgPSBQeU9iamVjdF9Jc1RydWUod2FpdG9iaik7CisgICAgaWYgKHdhaXQgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gR2V0T3ZlcmxhcHBlZFJlc3VsdChzZWxmLT5oYW5kbGUsICZzZWxmLT5vdmVybGFwcGVkLCAmdHJhbnNmZXJyZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YWl0ICE9IDApOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBlcnIgPSByZXMgPyBFUlJPUl9TVUNDRVNTIDogR2V0TGFzdEVycm9yKCk7CisgICAgc3dpdGNoIChlcnIpIHsKKyAgICAgICAgY2FzZSBFUlJPUl9TVUNDRVNTOgorICAgICAgICBjYXNlIEVSUk9SX01PUkVfREFUQToKKyAgICAgICAgY2FzZSBFUlJPUl9PUEVSQVRJT05fQUJPUlRFRDoKKyAgICAgICAgICAgIHNlbGYtPmNvbXBsZXRlZCA9IDE7CisgICAgICAgICAgICBzZWxmLT5wZW5kaW5nID0gMDsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEVSUk9SX0lPX0lOQ09NUExFVEU6CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHNlbGYtPnBlbmRpbmcgPSAwOworICAgICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX0lPRXJyb3IsIGVycik7CisgICAgfQorICAgIGlmIChzZWxmLT5jb21wbGV0ZWQgJiYgc2VsZi0+cmVhZF9idWZmZXIgIT0gTlVMTCkgeworICAgICAgICBhc3NlcnQoUHlCeXRlc19DaGVja0V4YWN0KHNlbGYtPnJlYWRfYnVmZmVyKSk7CisgICAgICAgIGlmICh0cmFuc2ZlcnJlZCAhPSBQeUJ5dGVzX0dFVF9TSVpFKHNlbGYtPnJlYWRfYnVmZmVyKSAmJgorICAgICAgICAgICAgX1B5Qnl0ZXNfUmVzaXplKCZzZWxmLT5yZWFkX2J1ZmZlciwgdHJhbnNmZXJyZWQpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJJSSIsICh1bnNpZ25lZCkgdHJhbnNmZXJyZWQsICh1bnNpZ25lZCkgZXJyKTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK292ZXJsYXBwZWRfZ2V0YnVmZmVyKE92ZXJsYXBwZWRPYmplY3QgKnNlbGYpCit7CisgICAgUHlPYmplY3QgKnJlczsKKyAgICBpZiAoIXNlbGYtPmNvbXBsZXRlZCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJjYW4ndCBnZXQgcmVhZCBidWZmZXIgYmVmb3JlIEdldE92ZXJsYXBwZWRSZXN1bHQoKSAiCisgICAgICAgICAgICAgICAgICAgICAgICAic2lnbmFscyB0aGUgb3BlcmF0aW9uIGNvbXBsZXRlZCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmVzID0gc2VsZi0+cmVhZF9idWZmZXIgPyBzZWxmLT5yZWFkX2J1ZmZlciA6IFB5X05vbmU7CisgICAgUHlfSU5DUkVGKHJlcyk7CisgICAgcmV0dXJuIHJlczsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK292ZXJsYXBwZWRfY2FuY2VsKE92ZXJsYXBwZWRPYmplY3QgKnNlbGYpCit7CisgICAgQk9PTCByZXMgPSBUUlVFOworCisgICAgaWYgKHNlbGYtPnBlbmRpbmcpIHsKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICBpZiAoY2hlY2tfQ2FuY2VsSW9FeCgpKQorICAgICAgICAgICAgcmVzID0gUHlfQ2FuY2VsSW9FeChzZWxmLT5oYW5kbGUsICZzZWxmLT5vdmVybGFwcGVkKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmVzID0gQ2FuY2VsSW8oc2VsZi0+aGFuZGxlKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisKKyAgICAvKiBDYW5jZWxJb0V4IHJldHVybnMgRVJST1JfTk9UX0ZPVU5EIGlmIHRoZSBJL08gY29tcGxldGVkIGluLWJldHdlZW4gKi8KKyAgICBpZiAoIXJlcyAmJiBHZXRMYXN0RXJyb3IoKSAhPSBFUlJPUl9OT1RfRk9VTkQpCisgICAgICAgIHJldHVybiBQeUVycl9TZXRFeGNGcm9tV2luZG93c0VycihQeUV4Y19JT0Vycm9yLCAwKTsKKyAgICBzZWxmLT5wZW5kaW5nID0gMDsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworc3RhdGljIFB5TWV0aG9kRGVmIG92ZXJsYXBwZWRfbWV0aG9kc1tdID0geworICAgIHsiR2V0T3ZlcmxhcHBlZFJlc3VsdCIsIChQeUNGdW5jdGlvbikgb3ZlcmxhcHBlZF9HZXRPdmVybGFwcGVkUmVzdWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1FVEhfTywgTlVMTH0sCisgICAgeyJnZXRidWZmZXIiLCAoUHlDRnVuY3Rpb24pIG92ZXJsYXBwZWRfZ2V0YnVmZmVyLCBNRVRIX05PQVJHUywgTlVMTH0sCisgICAgeyJjYW5jZWwiLCAoUHlDRnVuY3Rpb24pIG92ZXJsYXBwZWRfY2FuY2VsLCBNRVRIX05PQVJHUywgTlVMTH0sCisgICAge05VTEx9Cit9OworCitzdGF0aWMgUHlNZW1iZXJEZWYgb3ZlcmxhcHBlZF9tZW1iZXJzW10gPSB7CisgICAgeyJldmVudCIsIFRfSEFORExFLAorICAgICBvZmZzZXRvZihPdmVybGFwcGVkT2JqZWN0LCBvdmVybGFwcGVkKSArIG9mZnNldG9mKE9WRVJMQVBQRUQsIGhFdmVudCksCisgICAgIFJFQURPTkxZLCAib3ZlcmxhcHBlZCBldmVudCBoYW5kbGUifSwKKyAgICB7TlVMTH0KK307CisKK1B5VHlwZU9iamVjdCBPdmVybGFwcGVkVHlwZSA9IHsKKyAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoTlVMTCwgMCkKKyAgICAvKiB0cF9uYW1lICAgICAgICAgICAqLyAiX211bHRpcHJvY2Vzc2luZy53aW4zMi5PdmVybGFwcGVkIiwKKyAgICAvKiB0cF9iYXNpY3NpemUgICAgICAqLyBzaXplb2YoT3ZlcmxhcHBlZE9iamVjdCksCisgICAgLyogdHBfaXRlbXNpemUgICAgICAgKi8gMCwKKyAgICAvKiB0cF9kZWFsbG9jICAgICAgICAqLyAoZGVzdHJ1Y3Rvcikgb3ZlcmxhcHBlZF9kZWFsbG9jLAorICAgIC8qIHRwX3ByaW50ICAgICAgICAgICovIDAsCisgICAgLyogdHBfZ2V0YXR0ciAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9zZXRhdHRyICAgICAgICAqLyAwLAorICAgIC8qIHRwX3Jlc2VydmVkICAgICAgICovIDAsCisgICAgLyogdHBfcmVwciAgICAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9hc19udW1iZXIgICAgICAqLyAwLAorICAgIC8qIHRwX2FzX3NlcXVlbmNlICAgICovIDAsCisgICAgLyogdHBfYXNfbWFwcGluZyAgICAgKi8gMCwKKyAgICAvKiB0cF9oYXNoICAgICAgICAgICAqLyAwLAorICAgIC8qIHRwX2NhbGwgICAgICAgICAgICovIDAsCisgICAgLyogdHBfc3RyICAgICAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9nZXRhdHRybyAgICAgICAqLyAwLAorICAgIC8qIHRwX3NldGF0dHJvICAgICAgICovIDAsCisgICAgLyogdHBfYXNfYnVmZmVyICAgICAgKi8gMCwKKyAgICAvKiB0cF9mbGFncyAgICAgICAgICAqLyBQeV9UUEZMQUdTX0RFRkFVTFQsCisgICAgLyogdHBfZG9jICAgICAgICAgICAgKi8gIk9WRVJMQVBQRUQgc3RydWN0dXJlIHdyYXBwZXIiLAorICAgIC8qIHRwX3RyYXZlcnNlICAgICAgICovIDAsCisgICAgLyogdHBfY2xlYXIgICAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9yaWNoY29tcGFyZSAgICAqLyAwLAorICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovIDAsCisgICAgLyogdHBfaXRlciAgICAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9pdGVybmV4dCAgICAgICAqLyAwLAorICAgIC8qIHRwX21ldGhvZHMgICAgICAgICovIG92ZXJsYXBwZWRfbWV0aG9kcywKKyAgICAvKiB0cF9tZW1iZXJzICAgICAgICAqLyBvdmVybGFwcGVkX21lbWJlcnMsCisgICAgLyogdHBfZ2V0c2V0ICAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9iYXNlICAgICAgICAgICAqLyAwLAorICAgIC8qIHRwX2RpY3QgICAgICAgICAgICovIDAsCisgICAgLyogdHBfZGVzY3JfZ2V0ICAgICAgKi8gMCwKKyAgICAvKiB0cF9kZXNjcl9zZXQgICAgICAqLyAwLAorICAgIC8qIHRwX2RpY3RvZmZzZXQgICAgICovIDAsCisgICAgLyogdHBfaW5pdCAgICAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9hbGxvYyAgICAgICAgICAqLyAwLAorICAgIC8qIHRwX25ldyAgICAgICAgICAgICovIDAsCit9OworCitzdGF0aWMgT3ZlcmxhcHBlZE9iamVjdCAqCituZXdfb3ZlcmxhcHBlZChIQU5ETEUgaGFuZGxlKQoreworICAgIE92ZXJsYXBwZWRPYmplY3QgKnNlbGY7CisKKyAgICBzZWxmID0gUHlPYmplY3RfTmV3KE92ZXJsYXBwZWRPYmplY3QsICZPdmVybGFwcGVkVHlwZSk7CisgICAgaWYgKCFzZWxmKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBzZWxmLT5oYW5kbGUgPSBoYW5kbGU7CisgICAgc2VsZi0+cmVhZF9idWZmZXIgPSBOVUxMOworICAgIHNlbGYtPnBlbmRpbmcgPSAwOworICAgIHNlbGYtPmNvbXBsZXRlZCA9IDA7CisgICAgbWVtc2V0KCZzZWxmLT5vdmVybGFwcGVkLCAwLCBzaXplb2YoT1ZFUkxBUFBFRCkpOworICAgIG1lbXNldCgmc2VsZi0+d3JpdGVfYnVmZmVyLCAwLCBzaXplb2YoUHlfYnVmZmVyKSk7CisgICAgLyogTWFudWFsIHJlc2V0LCBpbml0aWFsbHkgbm9uLXNpZ25hbGxlZCAqLworICAgIHNlbGYtPm92ZXJsYXBwZWQuaEV2ZW50ID0gQ3JlYXRlRXZlbnQoTlVMTCwgVFJVRSwgRkFMU0UsIE5VTEwpOworICAgIHJldHVybiBzZWxmOworfQorCisKKy8qCisgKiBNb2R1bGUgZnVuY3Rpb25zCisgKi8KKwogc3RhdGljIFB5T2JqZWN0ICoKIHdpbjMyX0Nsb3NlSGFuZGxlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKQEAgLTM2LDIwICsyNTYsNDQgQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKLXdpbjMyX0Nvbm5lY3ROYW1lZFBpcGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQord2luMzJfQ29ubmVjdE5hbWVkUGlwZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewogICAgIEhBTkRMRSBoTmFtZWRQaXBlOwotICAgIExQT1ZFUkxBUFBFRCBscE92ZXJsYXBwZWQ7CisgICAgaW50IHVzZV9vdmVybGFwcGVkID0gMDsKICAgICBCT09MIHN1Y2Nlc3M7CisgICAgT3ZlcmxhcHBlZE9iamVjdCAqb3ZlcmxhcHBlZCA9IE5VTEw7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJoYW5kbGUiLCAib3ZlcmxhcHBlZCIsIE5VTEx9OwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIEZfSEFORExFIEZfUE9JTlRFUiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJmhOYW1lZFBpcGUsICZscE92ZXJsYXBwZWQpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRl9IQU5ETEUgInxpIiwga3dsaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZoTmFtZWRQaXBlLCAmdXNlX292ZXJsYXBwZWQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAorICAgIGlmICh1c2Vfb3ZlcmxhcHBlZCkgeworICAgICAgICBvdmVybGFwcGVkID0gbmV3X292ZXJsYXBwZWQoaE5hbWVkUGlwZSk7CisgICAgICAgIGlmICghb3ZlcmxhcHBlZCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKwogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICBzdWNjZXNzID0gQ29ubmVjdE5hbWVkUGlwZShoTmFtZWRQaXBlLCBscE92ZXJsYXBwZWQpOworICAgIHN1Y2Nlc3MgPSBDb25uZWN0TmFtZWRQaXBlKGhOYW1lZFBpcGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmxhcHBlZCA/ICZvdmVybGFwcGVkLT5vdmVybGFwcGVkIDogTlVMTCk7CiAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKIAorICAgIGlmIChvdmVybGFwcGVkKSB7CisgICAgICAgIGludCBlcnIgPSBHZXRMYXN0RXJyb3IoKTsKKyAgICAgICAgLyogT3ZlcmxhcHBlZCBDb25uZWN0TmFtZWRQaXBlIG5ldmVyIHJldHVybnMgYSBzdWNjZXNzIGNvZGUgKi8KKyAgICAgICAgYXNzZXJ0KHN1Y2Nlc3MgPT0gMCk7CisgICAgICAgIGlmIChlcnIgPT0gRVJST1JfSU9fUEVORElORykKKyAgICAgICAgICAgIG92ZXJsYXBwZWQtPnBlbmRpbmcgPSAxOworICAgICAgICBlbHNlIGlmIChlcnIgPT0gRVJST1JfUElQRV9DT05ORUNURUQpCisgICAgICAgICAgICBTZXRFdmVudChvdmVybGFwcGVkLT5vdmVybGFwcGVkLmhFdmVudCk7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUHlfREVDUkVGKG92ZXJsYXBwZWQpOworICAgICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKGVycik7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKSBvdmVybGFwcGVkOworICAgIH0KICAgICBpZiAoIXN1Y2Nlc3MpCiAgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tV2luZG93c0VycigwKTsKIApAQCAtMjE1LDE2ICs0NTksMzE2IEBACiAgICAgUHlfUkVUVVJOX05PTkU7CiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9jbG9zZXNvY2tldChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgSEFORExFIGhhbmRsZTsKKyAgICBpbnQgcmV0OworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIEZfSEFORExFICI6Y2xvc2Vzb2NrZXQiICwgJmhhbmRsZSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJldCA9IGNsb3Nlc29ja2V0KChTT0NLRVQpIGhhbmRsZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKworICAgIGlmIChyZXQpCisgICAgICAgIHJldHVybiBQeUVycl9TZXRFeGNGcm9tV2luZG93c0VycihQeUV4Y19JT0Vycm9yLCBXU0FHZXRMYXN0RXJyb3IoKSk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9yZWN2KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBIQU5ETEUgaGFuZGxlOworICAgIGludCBzaXplLCBucmVhZDsKKyAgICBQeU9iamVjdCAqYnVmOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIEZfSEFORExFICJpOnJlY3YiICwgJmhhbmRsZSwgJnNpemUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGJ1ZiA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgc2l6ZSk7CisgICAgaWYgKCFidWYpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIG5yZWFkID0gcmVjdigoU09DS0VUKSBoYW5kbGUsIFB5Qnl0ZXNfQVNfU1RSSU5HKGJ1ZiksIHNpemUsIDApOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpZiAobnJlYWQgPCAwKSB7CisgICAgICAgIFB5X0RFQ1JFRihidWYpOworICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgV1NBR2V0TGFzdEVycm9yKCkpOworICAgIH0KKyAgICBfUHlCeXRlc19SZXNpemUoJmJ1ZiwgbnJlYWQpOworICAgIHJldHVybiBidWY7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9zZW5kKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBIQU5ETEUgaGFuZGxlOworICAgIFB5X2J1ZmZlciBidWY7CisgICAgaW50IHJldDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBGX0hBTkRMRSAieSo6c2VuZCIgLCAmaGFuZGxlLCAmYnVmKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmV0ID0gc2VuZCgoU09DS0VUKSBoYW5kbGUsIGJ1Zi5idWYsIGJ1Zi5sZW4sIDApOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZidWYpOworICAgIGlmIChyZXQgPCAwKQorICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgV1NBR2V0TGFzdEVycm9yKCkpOworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcocmV0KTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK3dpbjMyX1dyaXRlRmlsZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQoreworICAgIEhBTkRMRSBoYW5kbGU7CisgICAgUHlfYnVmZmVyIF9idWYsICpidWY7CisgICAgUHlPYmplY3QgKmJ1Zm9iajsKKyAgICBEV09SRCB3cml0dGVuOworICAgIEJPT0wgcmV0OworICAgIGludCB1c2Vfb3ZlcmxhcHBlZCA9IDA7CisgICAgRFdPUkQgZXJyOworICAgIE92ZXJsYXBwZWRPYmplY3QgKm92ZXJsYXBwZWQgPSBOVUxMOworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiaGFuZGxlIiwgImJ1ZmZlciIsICJvdmVybGFwcGVkIiwgTlVMTH07CisKKyAgICAvKiBGaXJzdCBnZXQgaGFuZGxlIGFuZCB1c2Vfb3ZlcmxhcHBlZCB0byBrbm93IHdoaWNoIFB5X2J1ZmZlciB0byB1c2UgKi8KKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZfSEFORExFICJPfGk6V3JpdGVGaWxlIiwga3dsaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZoYW5kbGUsICZidWZvYmosICZ1c2Vfb3ZlcmxhcHBlZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKHVzZV9vdmVybGFwcGVkKSB7CisgICAgICAgIG92ZXJsYXBwZWQgPSBuZXdfb3ZlcmxhcHBlZChoYW5kbGUpOworICAgICAgICBpZiAoIW92ZXJsYXBwZWQpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgYnVmID0gJm92ZXJsYXBwZWQtPndyaXRlX2J1ZmZlcjsKKyAgICB9CisgICAgZWxzZQorICAgICAgICBidWYgPSAmX2J1ZjsKKworICAgIGlmICghUHlBcmdfUGFyc2UoYnVmb2JqLCAieSoiLCBidWYpKSB7CisgICAgICAgIFB5X1hERUNSRUYob3ZlcmxhcHBlZCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXQgPSBXcml0ZUZpbGUoaGFuZGxlLCBidWYtPmJ1ZiwgYnVmLT5sZW4sICZ3cml0dGVuLAorICAgICAgICAgICAgICAgICAgICBvdmVybGFwcGVkID8gJm92ZXJsYXBwZWQtPm92ZXJsYXBwZWQgOiBOVUxMKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgZXJyID0gcmV0ID8gMCA6IEdldExhc3RFcnJvcigpOworCisgICAgaWYgKG92ZXJsYXBwZWQpIHsKKyAgICAgICAgaWYgKCFyZXQpIHsKKyAgICAgICAgICAgIGlmIChlcnIgPT0gRVJST1JfSU9fUEVORElORykKKyAgICAgICAgICAgICAgICBvdmVybGFwcGVkLT5wZW5kaW5nID0gMTsKKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihvdmVybGFwcGVkKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgMCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIk5JIiwgKFB5T2JqZWN0ICopIG92ZXJsYXBwZWQsIGVycik7CisgICAgfQorCisgICAgUHlCdWZmZXJfUmVsZWFzZShidWYpOworICAgIGlmICghcmV0KQorICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgMCk7CisgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIklJIiwgd3JpdHRlbiwgZXJyKTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK3dpbjMyX1JlYWRGaWxlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCit7CisgICAgSEFORExFIGhhbmRsZTsKKyAgICBpbnQgc2l6ZTsKKyAgICBEV09SRCBucmVhZDsKKyAgICBQeU9iamVjdCAqYnVmOworICAgIEJPT0wgcmV0OworICAgIGludCB1c2Vfb3ZlcmxhcHBlZCA9IDA7CisgICAgRFdPUkQgZXJyOworICAgIE92ZXJsYXBwZWRPYmplY3QgKm92ZXJsYXBwZWQgPSBOVUxMOworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiaGFuZGxlIiwgInNpemUiLCAib3ZlcmxhcHBlZCIsIE5VTEx9OworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGX0hBTkRMRSAiaXxpOlJlYWRGaWxlIiwga3dsaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZoYW5kbGUsICZzaXplLCAmdXNlX292ZXJsYXBwZWQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGJ1ZiA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgc2l6ZSk7CisgICAgaWYgKCFidWYpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICh1c2Vfb3ZlcmxhcHBlZCkgeworICAgICAgICBvdmVybGFwcGVkID0gbmV3X292ZXJsYXBwZWQoaGFuZGxlKTsKKyAgICAgICAgaWYgKCFvdmVybGFwcGVkKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoYnVmKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIC8qIFN0ZWFscyByZWZlcmVuY2UgdG8gYnVmICovCisgICAgICAgIG92ZXJsYXBwZWQtPnJlYWRfYnVmZmVyID0gYnVmOworICAgIH0KKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXQgPSBSZWFkRmlsZShoYW5kbGUsIFB5Qnl0ZXNfQVNfU1RSSU5HKGJ1ZiksIHNpemUsICZucmVhZCwKKyAgICAgICAgICAgICAgICAgICBvdmVybGFwcGVkID8gJm92ZXJsYXBwZWQtPm92ZXJsYXBwZWQgOiBOVUxMKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgZXJyID0gcmV0ID8gMCA6IEdldExhc3RFcnJvcigpOworCisgICAgaWYgKG92ZXJsYXBwZWQpIHsKKyAgICAgICAgaWYgKCFyZXQpIHsKKyAgICAgICAgICAgIGlmIChlcnIgPT0gRVJST1JfSU9fUEVORElORykKKyAgICAgICAgICAgICAgICBvdmVybGFwcGVkLT5wZW5kaW5nID0gMTsKKyAgICAgICAgICAgIGVsc2UgaWYgKGVyciAhPSBFUlJPUl9NT1JFX0RBVEEpIHsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYob3ZlcmxhcHBlZCk7CisgICAgICAgICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX0lPRXJyb3IsIDApOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJOSSIsIChQeU9iamVjdCAqKSBvdmVybGFwcGVkLCBlcnIpOworICAgIH0KKworICAgIGlmICghcmV0ICYmIGVyciAhPSBFUlJPUl9NT1JFX0RBVEEpIHsKKyAgICAgICAgUHlfREVDUkVGKGJ1Zik7CisgICAgICAgIHJldHVybiBQeUVycl9TZXRFeGNGcm9tV2luZG93c0VycihQeUV4Y19JT0Vycm9yLCAwKTsKKyAgICB9CisgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmYnVmLCBucmVhZCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJOSSIsIGJ1ZiwgZXJyKTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK3dpbjMyX1BlZWtOYW1lZFBpcGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIEhBTkRMRSBoYW5kbGU7CisgICAgaW50IHNpemUgPSAwOworICAgIFB5T2JqZWN0ICpidWYgPSBOVUxMOworICAgIERXT1JEIG5yZWFkLCBuYXZhaWwsIG5sZWZ0OworICAgIEJPT0wgcmV0OworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIEZfSEFORExFICJ8aTpQZWVrTmFtZWRQaXBlIiAsICZoYW5kbGUsICZzaXplKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoc2l6ZSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJuZWdhdGl2ZSBzaXplIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGlmIChzaXplKSB7CisgICAgICAgIGJ1ZiA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgc2l6ZSk7CisgICAgICAgIGlmICghYnVmKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgcmV0ID0gUGVla05hbWVkUGlwZShoYW5kbGUsIFB5Qnl0ZXNfQVNfU1RSSU5HKGJ1ZiksIHNpemUsICZucmVhZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbmF2YWlsLCAmbmxlZnQpOworICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgICAgICBpZiAoIXJldCkgeworICAgICAgICAgICAgUHlfREVDUkVGKGJ1Zik7CisgICAgICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgMCk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmYnVmLCBucmVhZCkpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIk5paSIsIGJ1ZiwgbmF2YWlsLCBubGVmdCk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHJldCA9IFBlZWtOYW1lZFBpcGUoaGFuZGxlLCBOVUxMLCAwLCBOVUxMLCAmbmF2YWlsLCAmbmxlZnQpOworICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgICAgICBpZiAoIXJldCkgeworICAgICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX0lPRXJyb3IsIDApOworICAgICAgICB9CisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJpaSIsIG5hdmFpbCwgbmxlZnQpOworICAgIH0KK30KKworc3RhdGljIFB5T2JqZWN0ICoKK3dpbjMyX1dhaXRGb3JNdWx0aXBsZU9iamVjdHMoUHlPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBhcmdzKQoreworICAgIERXT1JEIHJlc3VsdDsKKyAgICBQeU9iamVjdCAqaGFuZGxlX3NlcTsKKyAgICBIQU5ETEUgaGFuZGxlc1tNQVhJTVVNX1dBSVRfT0JKRUNUU107CisgICAgSEFORExFIHNpZ2ludF9ldmVudCA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBuaGFuZGxlcywgaTsKKyAgICBpbnQgd2FpdF9mbGFnOworICAgIGludCBtaWxsaXNlY29uZHMgPSBJTkZJTklURTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT2l8aTpXYWl0Rm9yTXVsdGlwbGVPYmplY3RzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmhhbmRsZV9zZXEsICZ3YWl0X2ZsYWcsICZtaWxsaXNlY29uZHMpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmICghUHlTZXF1ZW5jZV9DaGVjayhoYW5kbGVfc2VxKSkgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgInNlcXVlbmNlIHR5cGUgZXhwZWN0ZWQsIGdvdCAnJXMnIiwKKyAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUoaGFuZGxlX3NlcSktPnRwX2RvYyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBuaGFuZGxlcyA9IFB5U2VxdWVuY2VfTGVuZ3RoKGhhbmRsZV9zZXEpOworICAgIGlmIChuaGFuZGxlcyA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKG5oYW5kbGVzIDwgMCB8fCBuaGFuZGxlcyA+PSBNQVhJTVVNX1dBSVRfT0JKRUNUUyAtIDEpIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAibmVlZCBhdCBtb3N0ICV6ZCBoYW5kbGVzLCBnb3QgYSBzZXF1ZW5jZSBvZiBsZW5ndGggJXpkIiwKKyAgICAgICAgICAgICAgICAgICAgIE1BWElNVU1fV0FJVF9PQkpFQ1RTIC0gMSwgbmhhbmRsZXMpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZm9yIChpID0gMDsgaSA8IG5oYW5kbGVzOyBpKyspIHsKKyAgICAgICAgSEFORExFIGg7CisgICAgICAgIFB5T2JqZWN0ICp2ID0gUHlTZXF1ZW5jZV9HZXRJdGVtKGhhbmRsZV9zZXEsIGkpOworICAgICAgICBpZiAodiA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGlmICghUHlBcmdfUGFyc2UodiwgRl9IQU5ETEUsICZoKSkgeworICAgICAgICAgICAgUHlfREVDUkVGKHYpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgaGFuZGxlc1tpXSA9IGg7CisgICAgICAgIFB5X0RFQ1JFRih2KTsKKyAgICB9CisgICAgLyogSWYgdGhpcyBpcyB0aGUgbWFpbiB0aHJlYWQgdGhlbiBtYWtlIHRoZSB3YWl0IGludGVycnVwdGlibGUKKyAgICAgICBieSBDdHJsLUMgdW5sZXNzIHdlIGFyZSB3YWl0aW5nIGZvciAqYWxsKiBoYW5kbGVzICovCisgICAgaWYgKCF3YWl0X2ZsYWcgJiYgX1B5T1NfSXNNYWluVGhyZWFkKCkpIHsKKyAgICAgICAgc2lnaW50X2V2ZW50ID0gX1B5T1NfU2lnaW50RXZlbnQoKTsKKyAgICAgICAgYXNzZXJ0KHNpZ2ludF9ldmVudCAhPSBOVUxMKTsKKyAgICAgICAgaGFuZGxlc1tuaGFuZGxlcysrXSA9IHNpZ2ludF9ldmVudDsKKyAgICB9CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgaWYgKHNpZ2ludF9ldmVudCAhPSBOVUxMKQorICAgICAgICBSZXNldEV2ZW50KHNpZ2ludF9ldmVudCk7CisgICAgcmVzdWx0ID0gV2FpdEZvck11bHRpcGxlT2JqZWN0cygoRFdPUkQpIG5oYW5kbGVzLCBoYW5kbGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKEJPT0wpIHdhaXRfZmxhZywgKERXT1JEKSBtaWxsaXNlY29uZHMpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpZiAocmVzdWx0ID09IFdBSVRfRkFJTEVEKQorICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgMCk7CisgICAgZWxzZSBpZiAoc2lnaW50X2V2ZW50ICE9IE5VTEwgJiYgcmVzdWx0ID09IFdBSVRfT0JKRUNUXzAgKyBuaGFuZGxlcyAtIDEpIHsKKyAgICAgICAgZXJybm8gPSBFSU5UUjsKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICB9CisKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKChpbnQpIHJlc3VsdCk7Cit9CisKKwogc3RhdGljIFB5TWV0aG9kRGVmIHdpbjMyX21ldGhvZHNbXSA9IHsKICAgICBXSU4zMl9GVU5DVElPTihDbG9zZUhhbmRsZSksCiAgICAgV0lOMzJfRlVOQ1RJT04oR2V0TGFzdEVycm9yKSwKICAgICBXSU4zMl9GVU5DVElPTihPcGVuUHJvY2VzcyksCiAgICAgV0lOMzJfRlVOQ1RJT04oRXhpdFByb2Nlc3MpLAotICAgIFdJTjMyX0ZVTkNUSU9OKENvbm5lY3ROYW1lZFBpcGUpLAorICAgIFdJTjMyX0tXQVJHU19GVU5DVElPTihDb25uZWN0TmFtZWRQaXBlKSwKICAgICBXSU4zMl9GVU5DVElPTihDcmVhdGVGaWxlKSwKICAgICBXSU4zMl9GVU5DVElPTihDcmVhdGVOYW1lZFBpcGUpLAorICAgIFdJTjMyX0tXQVJHU19GVU5DVElPTihSZWFkRmlsZSksCisgICAgV0lOMzJfRlVOQ1RJT04oUGVla05hbWVkUGlwZSksCiAgICAgV0lOMzJfRlVOQ1RJT04oU2V0TmFtZWRQaXBlSGFuZGxlU3RhdGUpLAorICAgIFdJTjMyX0ZVTkNUSU9OKFdhaXRGb3JNdWx0aXBsZU9iamVjdHMpLAogICAgIFdJTjMyX0ZVTkNUSU9OKFdhaXROYW1lZFBpcGUpLAorICAgIFdJTjMyX0tXQVJHU19GVU5DVElPTihXcml0ZUZpbGUpLAorICAgIFdJTjMyX0ZVTkNUSU9OKGNsb3Nlc29ja2V0KSwKKyAgICBXSU4zMl9GVU5DVElPTihyZWN2KSwKKyAgICBXSU4zMl9GVU5DVElPTihzZW5kKSwKICAgICB7TlVMTH0KIH07CiAKQEAgLTI0MywxMCArNzg3LDIzIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0lOQ1JFRigmV2luMzJUeXBlKTsKIAorICAgIGlmIChQeVR5cGVfUmVhZHkoJk92ZXJsYXBwZWRUeXBlKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworICAgIFB5RGljdF9TZXRJdGVtU3RyaW5nKFdpbjMyVHlwZS50cF9kaWN0LCAiT3ZlcmxhcHBlZCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgKFB5T2JqZWN0ICopICZPdmVybGFwcGVkVHlwZSk7CisKICAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBFUlJPUl9BTFJFQURZX0VYSVNUUyk7CisgICAgV0lOMzJfQ09OU1RBTlQoRl9EV09SRCwgRVJST1JfQlJPS0VOX1BJUEUpOworICAgIFdJTjMyX0NPTlNUQU5UKEZfRFdPUkQsIEVSUk9SX0lPX1BFTkRJTkcpOworICAgIFdJTjMyX0NPTlNUQU5UKEZfRFdPUkQsIEVSUk9SX01PUkVfREFUQSk7CisgICAgV0lOMzJfQ09OU1RBTlQoRl9EV09SRCwgRVJST1JfTkVUTkFNRV9ERUxFVEVEKTsKKyAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBFUlJPUl9OT19TWVNURU1fUkVTT1VSQ0VTKTsKKyAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBFUlJPUl9PUEVSQVRJT05fQUJPUlRFRCk7CiAgICAgV0lOMzJfQ09OU1RBTlQoRl9EV09SRCwgRVJST1JfUElQRV9CVVNZKTsKICAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBFUlJPUl9QSVBFX0NPTk5FQ1RFRCk7CiAgICAgV0lOMzJfQ09OU1RBTlQoRl9EV09SRCwgRVJST1JfU0VNX1RJTUVPVVQpOworICAgIFdJTjMyX0NPTlNUQU5UKEZfRFdPUkQsIEZJTEVfRkxBR19GSVJTVF9QSVBFX0lOU1RBTkNFKTsKKyAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBGSUxFX0ZMQUdfT1ZFUkxBUFBFRCk7CiAgICAgV0lOMzJfQ09OU1RBTlQoRl9EV09SRCwgR0VORVJJQ19SRUFEKTsKICAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBHRU5FUklDX1dSSVRFKTsKICAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBJTkZJTklURSk7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19waWNrbGUuYyBiL01vZHVsZXMvX3BpY2tsZS5jCmluZGV4IGZjNWY4NzEuLjJkYzNhNDEgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3BpY2tsZS5jCisrKyBiL01vZHVsZXMvX3BpY2tsZS5jCkBAIC0zMTksNiArMzE5LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0cyB0byBzdXBwb3J0IHNlbGYtcmVmZXJlbnRpYWwgb2JqZWN0cwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaWNrbGluZy4gKi8KICAgICBQeU9iamVjdCAqcGVyc19mdW5jOyAgICAgICAgLyogcGVyc2lzdGVudF9pZCgpIG1ldGhvZCwgY2FuIGJlIE5VTEwgKi8KKyAgICBQeU9iamVjdCAqZGlzcGF0Y2hfdGFibGU7ICAgLyogcHJpdmF0ZSBkaXNwYXRjaF90YWJsZSwgY2FuIGJlIE5VTEwgKi8KICAgICBQeU9iamVjdCAqYXJnOwogCiAgICAgUHlPYmplY3QgKndyaXRlOyAgICAgICAgICAgIC8qIHdyaXRlKCkgbWV0aG9kIG9mIHRoZSBvdXRwdXQgc3RyZWFtLiAqLwpAQCAtNjA1LDcgKzYwNiw3IEBACiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIAogLyogSGVscGVycyBmb3IgY3JlYXRpbmcgdGhlIGFyZ3VtZW50IHR1cGxlIHBhc3NlZCB0byBmdW5jdGlvbnMuIFRoaXMgaGFzIHRoZQotICAgcGVyZm9ybWFuY2UgYWR2YW50YWdlIG9mIGNhbGxpbmcgUHlUdXBsZV9OZXcoKSBvbmx5IG9uY2UuIAorICAgcGVyZm9ybWFuY2UgYWR2YW50YWdlIG9mIGNhbGxpbmcgUHlUdXBsZV9OZXcoKSBvbmx5IG9uY2UuCiAKICAgIFhYWChhdmFzc2Fsb3R0aSk6IElubGluZSBkaXJlY3RseSBpbiBfUGlja2xlcl9GYXN0Q2FsbCgpIGFuZAogICAgX1VucGlja2xlcl9GYXN0Q2FsbCgpLiAqLwpAQCAtNzY0LDYgKzc2NSw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc2VsZi0+cGVyc19mdW5jID0gTlVMTDsKKyAgICBzZWxmLT5kaXNwYXRjaF90YWJsZSA9IE5VTEw7CiAgICAgc2VsZi0+YXJnID0gTlVMTDsKICAgICBzZWxmLT53cml0ZSA9IE5VTEw7CiAgICAgc2VsZi0+cHJvdG8gPSAwOwpAQCAtODEzLDcgKzgxNSw3IEBACiAgICAgZml4X2ltcG9ydHMgPSBQeU9iamVjdF9Jc1RydWUoZml4X2ltcG9ydHNfb2JqKTsKICAgICBpZiAoZml4X2ltcG9ydHMgPT0gLTEpCiAgICAgICAgIHJldHVybiAtMTsKLSAgICAKKwogICAgIHNlbGYtPnByb3RvID0gcHJvdG87CiAgICAgc2VsZi0+YmluID0gcHJvdG8gPiAwOwogICAgIHNlbGYtPmZpeF9pbXBvcnRzID0gZml4X2ltcG9ydHMgJiYgcHJvdG8gPCAzOwpAQCAtODI2LDggKzgyOCw5IEBACiBzdGF0aWMgaW50CiBfUGlja2xlcl9TZXRPdXRwdXRTdHJlYW0oUGlja2xlck9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmZpbGUpCiB7CisgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOwogICAgIGFzc2VydChmaWxlICE9IE5VTEwpOwotICAgIHNlbGYtPndyaXRlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaWxlLCAid3JpdGUiKTsKKyAgICBzZWxmLT53cml0ZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoZmlsZSwgJlB5SWRfd3JpdGUpOwogICAgIGlmIChzZWxmLT53cml0ZSA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCkBAIC05MDksNyArOTEyLDcgQEAKICAgICBQeV9zc2l6ZV90IHJlYWRfc2l6ZSwgcHJlZmV0Y2hlZF9zaXplID0gMDsKIAogICAgIGFzc2VydChzZWxmLT5yZWFkICE9IE5VTEwpOwotICAgIAorCiAgICAgaWYgKF9VbnBpY2tsZXJfU2tpcENvbnN1bWVkKHNlbGYpIDwgMCkKICAgICAgICAgcmV0dXJuIC0xOwogCkBAIC0xMDM3LDcgKzEwNDAsNyBAQAogICAgICAgICBzZWxmLT5uZXh0X3JlYWRfaWR4ID0gbnVtX3JlYWQ7CiAgICAgICAgIHJldHVybiBfVW5waWNrbGVyX0NvcHlMaW5lKHNlbGYsIHNlbGYtPmlucHV0X2J1ZmZlciwgbnVtX3JlYWQsIHJlc3VsdCk7CiAgICAgfQotIAorCiAgICAgLyogSWYgd2UgZ2V0IGhlcmUsIHdlJ3ZlIHJ1biBvZmYgdGhlIGVuZCBvZiB0aGUgaW5wdXQgc3RyaW5nLiBSZXR1cm4gdGhlCiAgICAgICAgcmVtYWluaW5nIHN0cmluZyBhbmQgbGV0IHRoZSBjYWxsZXIgZmlndXJlIGl0IG91dC4gKi8KICAgICAqcmVzdWx0ID0gc2VsZi0+aW5wdXRfYnVmZmVyICsgc2VsZi0+bmV4dF9yZWFkX2lkeDsKQEAgLTExNzMsMTUgKzExNzYsMTkgQEAKIHN0YXRpYyBpbnQKIF9VbnBpY2tsZXJfU2V0SW5wdXRTdHJlYW0oVW5waWNrbGVyT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqZmlsZSkKIHsKLSAgICBzZWxmLT5wZWVrID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaWxlLCAicGVlayIpOworICAgIF9QeV9JREVOVElGSUVSKHBlZWspOworICAgIF9QeV9JREVOVElGSUVSKHJlYWQpOworICAgIF9QeV9JREVOVElGSUVSKHJlYWRsaW5lKTsKKworICAgIHNlbGYtPnBlZWsgPSBfUHlPYmplY3RfR2V0QXR0cklkKGZpbGUsICZQeUlkX3BlZWspOwogICAgIGlmIChzZWxmLT5wZWVrID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgICBzZWxmLT5yZWFkID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaWxlLCAicmVhZCIpOwotICAgIHNlbGYtPnJlYWRsaW5lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaWxlLCAicmVhZGxpbmUiKTsKKyAgICBzZWxmLT5yZWFkID0gX1B5T2JqZWN0X0dldEF0dHJJZChmaWxlLCAmUHlJZF9yZWFkKTsKKyAgICBzZWxmLT5yZWFkbGluZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoZmlsZSwgJlB5SWRfcmVhZGxpbmUpOwogICAgIGlmIChzZWxmLT5yZWFkbGluZSA9PSBOVUxMIHx8IHNlbGYtPnJlYWQgPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLApAQCAtMTU0Myw3ICsxNTUwLDEwIEBACiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgfQogICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIHNhdmVfaW50KHNlbGYsIHZhbCk7CisjaWYgU0laRU9GX0xPTkcgPiA0CisgICAgICAgIGlmICh2YWwgPD0gMHg3ZmZmZmZmZkwgJiYgdmFsID49IC0weDgwMDAwMDAwTCkKKyNlbmRpZgorICAgICAgICAgICAgcmV0dXJuIHNhdmVfaW50KHNlbGYsIHZhbCk7CiAKICAgICBpZiAoc2VsZi0+cHJvdG8gPj0gMikgewogICAgICAgICAvKiBMaW5lYXItdGltZSBwaWNrbGluZy4gKi8KQEAgLTE1OTgsNyArMTYwOCw3IEBACiAgICAgICAgICAqIGJpdHMuCiAgICAgICAgICAqLwogICAgICAgICBpZiAoc2lnbiA8IDAgJiYKLSAgICAgICAgICAgIG5ieXRlcyA+IDEgJiYgCisgICAgICAgICAgICBuYnl0ZXMgPiAxICYmCiAgICAgICAgICAgICBwZGF0YVtuYnl0ZXMgLSAxXSA9PSAweGZmICYmCiAgICAgICAgICAgICAocGRhdGFbbmJ5dGVzIC0gMl0gJiAweDgwKSAhPSAwKSB7CiAgICAgICAgICAgICBuYnl0ZXMtLTsKQEAgLTE2NjQsNyArMTY3NCw3IEBACiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIGlmIChfUGlja2xlcl9Xcml0ZShzZWxmLCBwZGF0YSwgOSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgfSAKKyAgIH0KICAgICBlbHNlIHsKICAgICAgICAgaW50IHJlc3VsdCA9IC0xOwogICAgICAgICBjaGFyICpidWYgPSBOVUxMOwpAQCAtMTc5OCw5MCArMTgwOCw2NSBAQAogLyogQSBjb3B5IG9mIFB5VW5pY29kZV9FbmNvZGVSYXdVbmljb2RlRXNjYXBlKCkgdGhhdCBhbHNvIHRyYW5zbGF0ZXMKICAgIGJhY2tzbGFzaCBhbmQgbmV3bGluZSBjaGFyYWN0ZXJzIHRvIFx1WFhYWCBlc2NhcGVzLiAqLwogc3RhdGljIFB5T2JqZWN0ICoKLXJhd191bmljb2RlX2VzY2FwZShjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUpCityYXdfdW5pY29kZV9lc2NhcGUoUHlPYmplY3QgKm9iaikKIHsKICAgICBQeU9iamVjdCAqcmVwciwgKnJlc3VsdDsKICAgICBjaGFyICpwOwotICAgIGNoYXIgKnE7CisgICAgUHlfc3NpemVfdCBpLCBzaXplLCBleHBhbmRzaXplOworICAgIHZvaWQgKmRhdGE7CisgICAgdW5zaWduZWQgaW50IGtpbmQ7CiAKLSAgICBzdGF0aWMgY29uc3QgY2hhciAqaGV4ZGlnaXRzID0gIjAxMjM0NTY3ODlhYmNkZWYiOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBjb25zdCBQeV9zc2l6ZV90IGV4cGFuZHNpemUgPSAxMDsKLSNlbHNlCi0gICAgY29uc3QgUHlfc3NpemVfdCBleHBhbmRzaXplID0gNjsKLSNlbmRpZgotICAgIAorICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShvYmopOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChvYmopOworICAgIGlmIChraW5kID09IFB5VW5pY29kZV80QllURV9LSU5EKQorICAgICAgICBleHBhbmRzaXplID0gMTA7CisgICAgZWxzZQorICAgICAgICBleHBhbmRzaXplID0gNjsKKwogICAgIGlmIChzaXplID4gUFlfU1NJWkVfVF9NQVggLyBleHBhbmRzaXplKQogICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKLSAgICAKICAgICByZXByID0gUHlCeXRlQXJyYXlfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgZXhwYW5kc2l6ZSAqIHNpemUpOwogICAgIGlmIChyZXByID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChzaXplID09IDApCiAgICAgICAgIGdvdG8gZG9uZTsKIAotICAgIHAgPSBxID0gUHlCeXRlQXJyYXlfQVNfU1RSSU5HKHJlcHIpOwotICAgIHdoaWxlIChzaXplLS0gPiAwKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPSAqcysrOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQorICAgIHAgPSBQeUJ5dGVBcnJheV9BU19TVFJJTkcocmVwcik7CisgICAgZm9yIChpPTA7IGkgPCBzaXplOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOwogICAgICAgICAvKiBNYXAgMzItYml0IGNoYXJhY3RlcnMgdG8gJ1xVeHh4eHh4eHgnICovCiAgICAgICAgIGlmIChjaCA+PSAweDEwMDAwKSB7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAnVSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAyOCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gMjQpICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDIwKSAmIDB4Zl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxNikgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gMTIpICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDgpICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDQpICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbY2ggJiAxNV07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAyOCkgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gMjQpICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDIwKSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAxNikgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gMTIpICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDgpICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDQpICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbY2ggJiAxNV07CiAgICAgICAgIH0KLSAgICAgICAgZWxzZQotI2Vsc2UKLSAgICAgICAgICAgIC8qIE1hcCBVVEYtMTYgc3Vycm9nYXRlIHBhaXJzIHRvICdcVTAweHh4eHh4JyAqLwotICAgICAgICAgICAgaWYgKGNoID49IDB4RDgwMCAmJiBjaCA8IDB4REMwMCkgewotICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgY2gyOwotICAgICAgICAgICAgICAgIFB5X1VDUzQgdWNzOwotCi0gICAgICAgICAgICAgICAgY2gyID0gKnMrKzsKLSAgICAgICAgICAgICAgICBzaXplLS07Ci0gICAgICAgICAgICAgICAgaWYgKGNoMiA+PSAweERDMDAgJiYgY2gyIDw9IDB4REZGRikgewotICAgICAgICAgICAgICAgICAgICB1Y3MgPSAoKChjaCAmIDB4MDNGRikgPDwgMTApIHwgKGNoMiAmIDB4MDNGRikpICsgMHgwMDAxMDAwMDsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSAnVSc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAyOCkgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMjQpICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDIwKSAmIDB4Zl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxNikgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMTIpICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDgpICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDQpICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1t1Y3MgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgLyogRmFsbCB0aHJvdWdoOiBpc29sYXRlZCBzdXJyb2dhdGVzIGFyZSBjb3BpZWQgYXMtaXMgKi8KLSAgICAgICAgICAgICAgICBzLS07Ci0gICAgICAgICAgICAgICAgc2l6ZSsrOwotICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIC8qIE1hcCAxNi1iaXQgY2hhcmFjdGVycyB0byAnXHV4eHh4JyAqLwotICAgICAgICBpZiAoY2ggPj0gMjU2IHx8IGNoID09ICdcXCcgfHwgY2ggPT0gJ1xuJykgeworICAgICAgICBlbHNlIGlmIChjaCA+PSAyNTYgfHwgY2ggPT0gJ1xcJyB8fCBjaCA9PSAnXG4nKSB7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAndSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDE1XTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA4KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2NoICYgMTVdOwogICAgICAgICB9CiAgICAgICAgIC8qIENvcHkgZXZlcnl0aGluZyBlbHNlIGFzLWlzICovCiAgICAgICAgIGVsc2UKICAgICAgICAgICAgICpwKysgPSAoY2hhcikgY2g7CiAgICAgfQotICAgIHNpemUgPSBwIC0gcTsKKyAgICBzaXplID0gcCAtIFB5Qnl0ZUFycmF5X0FTX1NUUklORyhyZXByKTsKIAotICBkb25lOgorZG9uZToKICAgICByZXN1bHQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKFB5Qnl0ZUFycmF5X0FTX1NUUklORyhyZXByKSwgc2l6ZSk7CiAgICAgUHlfREVDUkVGKHJlcHIpOwogICAgIHJldHVybiByZXN1bHQ7CkBAIC0xODk2LDkgKzE4ODEsNyBAQAogICAgIGlmIChzZWxmLT5iaW4pIHsKICAgICAgICAgY2hhciBwZGF0YVs1XTsKIAotICAgICAgICBlbmNvZGVkID0gUHlVbmljb2RlX0VuY29kZVVURjgoUHlVbmljb2RlX0FTX1VOSUNPREUob2JqKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShvYmopLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN1cnJvZ2F0ZXBhc3MiKTsKKyAgICAgICAgZW5jb2RlZCA9IFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcob2JqLCAidXRmLTgiLCAic3Vycm9nYXRlcGFzcyIpOwogICAgICAgICBpZiAoZW5jb2RlZCA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKIApAQCAtMTkyNCw4ICsxOTA3LDcgQEAKICAgICBlbHNlIHsKICAgICAgICAgY29uc3QgY2hhciB1bmljb2RlX29wID0gVU5JQ09ERTsKIAotICAgICAgICBlbmNvZGVkID0gcmF3X3VuaWNvZGVfZXNjYXBlKFB5VW5pY29kZV9BU19VTklDT0RFKG9iaiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKG9iaikpOworICAgICAgICBlbmNvZGVkID0gcmF3X3VuaWNvZGVfZXNjYXBlKG9iaik7CiAgICAgICAgIGlmIChlbmNvZGVkID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycm9yOwogCkBAIC0yNTQ0LDcgKzI1MjYsOSBAQAogICAgICAgICAgICAgc3RhdHVzID0gYmF0Y2hfZGljdF9leGFjdChzZWxmLCBvYmopOwogICAgICAgICAgICAgUHlfTGVhdmVSZWN1cnNpdmVDYWxsKCk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpdGVtcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qob2JqLCAiaXRlbXMiLCAiKCkiKTsKKyAgICAgICAgICAgIF9QeV9JREVOVElGSUVSKGl0ZW1zKTsKKworICAgICAgICAgICAgaXRlbXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKG9iaiwgJlB5SWRfaXRlbXMsICIoKSIpOwogICAgICAgICAgICAgaWYgKGl0ZW1zID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgICAgIGl0ZXIgPSBQeU9iamVjdF9HZXRJdGVyKGl0ZW1zKTsKQEAgLTI4ODEsNiArMjg2NSwyOCBAQAogICAgIHJldHVybiBzdGF0dXM7CiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCitnZXRfY2xhc3MoUHlPYmplY3QgKm9iaikKK3sKKyAgICBQeU9iamVjdCAqY2xzOworICAgIHN0YXRpYyBQeU9iamVjdCAqc3RyX2NsYXNzOworCisgICAgaWYgKHN0cl9jbGFzcyA9PSBOVUxMKSB7CisgICAgICAgIHN0cl9jbGFzcyA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX2NsYXNzX18iKTsKKyAgICAgICAgaWYgKHN0cl9jbGFzcyA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGNscyA9IFB5T2JqZWN0X0dldEF0dHIob2JqLCBzdHJfY2xhc3MpOworICAgIGlmIChjbHMgPT0gTlVMTCkgeworICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpIHsKKyAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgICAgICBjbHMgPSAoUHlPYmplY3QgKikgUHlfVFlQRShvYmopOworICAgICAgICAgICAgUHlfSU5DUkVGKGNscyk7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIGNsczsKK30KKwogLyogV2UncmUgc2F2aW5nIG9iaiwgYW5kIGFyZ3MgaXMgdGhlIDItdGhydS01IHR1cGxlIHJldHVybmVkIGJ5IHRoZQogICogYXBwcm9wcmlhdGUgX19yZWR1Y2VfXyBtZXRob2QgZm9yIG9iai4KICAqLwpAQCAtMjk0NiwxNyArMjk1MiwxOCBAQAogICAgIC8qIFByb3RvY29sIDIgc3BlY2lhbCBjYXNlOiBpZiBjYWxsYWJsZSdzIG5hbWUgaXMgX19uZXdvYmpfXywgdXNlCiAgICAgICAgTkVXT0JKLiAqLwogICAgIGlmICh1c2VfbmV3b2JqKSB7Ci0gICAgICAgIHN0YXRpYyBQeU9iamVjdCAqbmV3b2JqX3N0ciA9IE5VTEw7Ci0gICAgICAgIFB5T2JqZWN0ICpuYW1lX3N0cjsKKyAgICAgICAgc3RhdGljIFB5T2JqZWN0ICpuZXdvYmpfc3RyID0gTlVMTCwgKm5hbWVfc3RyID0gTlVMTDsKKyAgICAgICAgUHlPYmplY3QgKm5hbWU7CiAKICAgICAgICAgaWYgKG5ld29ial9zdHIgPT0gTlVMTCkgewogICAgICAgICAgICAgbmV3b2JqX3N0ciA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX25ld29ial9fIik7Ci0gICAgICAgICAgICBpZiAobmV3b2JqX3N0ciA9PSBOVUxMKQorICAgICAgICAgICAgbmFtZV9zdHIgPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiX19uYW1lX18iKTsKKyAgICAgICAgICAgIGlmIChuZXdvYmpfc3RyID09IE5VTEwgfHwgbmFtZV9zdHIgPT0gTlVMTCkKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIH0KIAotICAgICAgICBuYW1lX3N0ciA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoY2FsbGFibGUsICJfX25hbWVfXyIpOwotICAgICAgICBpZiAobmFtZV9zdHIgPT0gTlVMTCkgeworICAgICAgICBuYW1lID0gUHlPYmplY3RfR2V0QXR0cihjYWxsYWJsZSwgbmFtZV9zdHIpOworICAgICAgICBpZiAobmFtZSA9PSBOVUxMKSB7CiAgICAgICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgICAgIGVsc2UKQEAgLTI5NjQsOSArMjk3MSw5IEBACiAgICAgICAgICAgICB1c2VfbmV3b2JqID0gMDsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIHVzZV9uZXdvYmogPSBQeVVuaWNvZGVfQ2hlY2sobmFtZV9zdHIpICYmIAotICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Db21wYXJlKG5hbWVfc3RyLCBuZXdvYmpfc3RyKSA9PSAwOwotICAgICAgICAgICAgUHlfREVDUkVGKG5hbWVfc3RyKTsKKyAgICAgICAgICAgIHVzZV9uZXdvYmogPSBQeVVuaWNvZGVfQ2hlY2sobmFtZSkgJiYKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQ29tcGFyZShuYW1lLCBuZXdvYmpfc3RyKSA9PSAwOworICAgICAgICAgICAgUHlfREVDUkVGKG5hbWUpOwogICAgICAgICB9CiAgICAgfQogICAgIGlmICh1c2VfbmV3b2JqKSB7CkBAIC0yOTgyLDIwICsyOTg5LDE0IEBACiAgICAgICAgIH0KIAogICAgICAgICBjbHMgPSBQeVR1cGxlX0dFVF9JVEVNKGFyZ3R1cCwgMCk7Ci0gICAgICAgIGlmICghUHlPYmplY3RfSGFzQXR0clN0cmluZyhjbHMsICJfX25ld19fIikpIHsKKyAgICAgICAgaWYgKCFQeVR5cGVfQ2hlY2soY2xzKSkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFBpY2tsaW5nRXJyb3IsICJhcmdzWzBdIGZyb20gIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJfX25ld29ial9fIGFyZ3MgaGFzIG5vIF9fbmV3X18iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19uZXdvYmpfXyBhcmdzIGlzIG5vdCBhIHR5cGUiKTsKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgfQogCiAgICAgICAgIGlmIChvYmogIT0gTlVMTCkgewotICAgICAgICAgICAgb2JqX2NsYXNzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJfX2NsYXNzX18iKTsKLSAgICAgICAgICAgIGlmIChvYmpfY2xhc3MgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKLSAgICAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIG9ial9jbGFzcyA9IGdldF9jbGFzcyhvYmopOwogICAgICAgICAgICAgcCA9IG9ial9jbGFzcyAhPSBjbHM7ICAgIC8qIHRydWUgaWZmIGEgcHJvYmxlbSAqLwogICAgICAgICAgICAgUHlfREVDUkVGKG9ial9jbGFzcyk7CiAgICAgICAgICAgICBpZiAocCkgewpAQCAtMzA2OSw3ICszMDcwLDcgQEAKICAgICAgICAgcmV0dXJuIC0xOwogCiAgICAgaWYgKHN0YXRlKSB7Ci0gICAgICAgIGlmIChzYXZlKHNlbGYsIHN0YXRlLCAwKSA8IDAgfHwgCisgICAgICAgIGlmIChzYXZlKHNlbGYsIHN0YXRlLCAwKSA8IDAgfHwKICAgICAgICAgICAgIF9QaWNrbGVyX1dyaXRlKHNlbGYsICZidWlsZF9vcCwgMSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KQEAgLTMxNzcsMTcgKzMxNzgsMjQgQEAKICAgICAvKiBYWFg6IFRoaXMgcGFydCBuZWVkcyBzb21lIHVuaXQgdGVzdHMuICovCiAKICAgICAvKiBHZXQgYSByZWR1Y3Rpb24gY2FsbGFibGUsIGFuZCBjYWxsIGl0LiAgVGhpcyBtYXkgY29tZSBmcm9tCi0gICAgICogY29weXJlZy5kaXNwYXRjaF90YWJsZSwgdGhlIG9iamVjdCdzIF9fcmVkdWNlX2V4X18gbWV0aG9kLAotICAgICAqIG9yIHRoZSBvYmplY3QncyBfX3JlZHVjZV9fIG1ldGhvZC4KKyAgICAgKiBzZWxmLmRpc3BhdGNoX3RhYmxlLCBjb3B5cmVnLmRpc3BhdGNoX3RhYmxlLCB0aGUgb2JqZWN0J3MKKyAgICAgKiBfX3JlZHVjZV9leF9fIG1ldGhvZCwgb3IgdGhlIG9iamVjdCdzIF9fcmVkdWNlX18gbWV0aG9kLgogICAgICAqLwotICAgIHJlZHVjZV9mdW5jID0gUHlEaWN0X0dldEl0ZW0oZGlzcGF0Y2hfdGFibGUsIChQeU9iamVjdCAqKXR5cGUpOworICAgIGlmIChzZWxmLT5kaXNwYXRjaF90YWJsZSA9PSBOVUxMKSB7CisgICAgICAgIHJlZHVjZV9mdW5jID0gUHlEaWN0X0dldEl0ZW0oZGlzcGF0Y2hfdGFibGUsIChQeU9iamVjdCAqKXR5cGUpOworICAgICAgICAvKiBQeURpY3RfR2V0SXRlbSgpIHVubGlrZSBQeU9iamVjdF9HZXRJdGVtKCkgYW5kCisgICAgICAgICAgIFB5T2JqZWN0X0dldEF0dHIoKSByZXR1cm5zIGEgYm9ycm93ZWQgcmVmICovCisgICAgICAgIFB5X1hJTkNSRUYocmVkdWNlX2Z1bmMpOworICAgIH0gZWxzZSB7CisgICAgICAgIHJlZHVjZV9mdW5jID0gUHlPYmplY3RfR2V0SXRlbShzZWxmLT5kaXNwYXRjaF90YWJsZSwgKFB5T2JqZWN0ICopdHlwZSk7CisgICAgICAgIGlmIChyZWR1Y2VfZnVuYyA9PSBOVUxMKSB7CisgICAgICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19LZXlFcnJvcikpCisgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgfQogICAgIGlmIChyZWR1Y2VfZnVuYyAhPSBOVUxMKSB7Ci0gICAgICAgIC8qIEhlcmUsIHRoZSByZWZlcmVuY2UgY291bnQgb2YgdGhlIHJlZHVjZV9mdW5jIG9iamVjdCByZXR1cm5lZCBieQotICAgICAgICAgICBQeURpY3RfR2V0SXRlbSBuZWVkcyB0byBiZSBpbmNyZWFzZWQgdG8gYmUgY29uc2lzdGVudCB3aXRoIHRoZSBvbmUKLSAgICAgICAgICAgcmV0dXJuZWQgYnkgUHlPYmplY3RfR2V0QXR0ci4gVGhpcyBpcyBhbGxvdyB1cyB0byBibGluZGx5IERFQ1JFRgotICAgICAgICAgICByZWR1Y2VfZnVuYyBhdCB0aGUgZW5kIG9mIHRoZSBzYXZlKCkgcm91dGluZS4KLSAgICAgICAgKi8KLSAgICAgICAgUHlfSU5DUkVGKHJlZHVjZV9mdW5jKTsKICAgICAgICAgUHlfSU5DUkVGKG9iaik7CiAgICAgICAgIHJlZHVjZV92YWx1ZSA9IF9QaWNrbGVyX0Zhc3RDYWxsKHNlbGYsIHJlZHVjZV9mdW5jLCBvYmopOwogICAgIH0KQEAgLTMzMjMsNyArMzMzMSw3IEBACiAgICAgICAgRGV2ZWxvcGVycyBvZnRlbiBmb3JnZXQgdG8gY2FsbCBfX2luaXRfXygpIGluIHRoZWlyIHN1YmNsYXNzZXMsIHdoaWNoCiAgICAgICAgd291bGQgdHJpZ2dlciBhIHNlZ2ZhdWx0IHdpdGhvdXQgdGhpcyBjaGVjay4gKi8KICAgICBpZiAoc2VsZi0+d3JpdGUgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUGlja2xpbmdFcnJvciwgCisgICAgICAgIFB5RXJyX0Zvcm1hdChQaWNrbGluZ0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgIlBpY2tsZXIuX19pbml0X18oKSB3YXMgbm90IGNhbGxlZCBieSAlcy5fX2luaXRfXygpIiwKICAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUoc2VsZiktPnRwX25hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTMzNjAsNiArMzM2OCw3IEBACiAgICAgUHlfWERFQ1JFRihzZWxmLT5vdXRwdXRfYnVmZmVyKTsKICAgICBQeV9YREVDUkVGKHNlbGYtPndyaXRlKTsKICAgICBQeV9YREVDUkVGKHNlbGYtPnBlcnNfZnVuYyk7CisgICAgUHlfWERFQ1JFRihzZWxmLT5kaXNwYXRjaF90YWJsZSk7CiAgICAgUHlfWERFQ1JFRihzZWxmLT5hcmcpOwogICAgIFB5X1hERUNSRUYoc2VsZi0+ZmFzdF9tZW1vKTsKIApAQCAtMzM3Myw2ICszMzgyLDcgQEAKIHsKICAgICBQeV9WSVNJVChzZWxmLT53cml0ZSk7CiAgICAgUHlfVklTSVQoc2VsZi0+cGVyc19mdW5jKTsKKyAgICBQeV9WSVNJVChzZWxmLT5kaXNwYXRjaF90YWJsZSk7CiAgICAgUHlfVklTSVQoc2VsZi0+YXJnKTsKICAgICBQeV9WSVNJVChzZWxmLT5mYXN0X21lbW8pOwogICAgIHJldHVybiAwOwpAQCAtMzM4NCw2ICszMzk0LDcgQEAKICAgICBQeV9DTEVBUihzZWxmLT5vdXRwdXRfYnVmZmVyKTsKICAgICBQeV9DTEVBUihzZWxmLT53cml0ZSk7CiAgICAgUHlfQ0xFQVIoc2VsZi0+cGVyc19mdW5jKTsKKyAgICBQeV9DTEVBUihzZWxmLT5kaXNwYXRjaF90YWJsZSk7CiAgICAgUHlfQ0xFQVIoc2VsZi0+YXJnKTsKICAgICBQeV9DTEVBUihzZWxmLT5mYXN0X21lbW8pOwogCkBAIC0zNDI3LDYgKzM0MzgsOCBAQAogICAgIFB5T2JqZWN0ICpmaWxlOwogICAgIFB5T2JqZWN0ICpwcm90b19vYmogPSBOVUxMOwogICAgIFB5T2JqZWN0ICpmaXhfaW1wb3J0cyA9IFB5X1RydWU7CisgICAgX1B5X0lERU5USUZJRVIocGVyc2lzdGVudF9pZCk7CisgICAgX1B5X0lERU5USUZJRVIoZGlzcGF0Y2hfdGFibGUpOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIk98T086UGlja2xlciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmZmlsZSwgJnByb3RvX29iaiwgJmZpeF9pbXBvcnRzKSkKQEAgLTM0NjIsMTIgKzM0NzUsMTkgQEAKICAgICBzZWxmLT5mYXN0X25lc3RpbmcgPSAwOwogICAgIHNlbGYtPmZhc3RfbWVtbyA9IE5VTEw7CiAgICAgc2VsZi0+cGVyc19mdW5jID0gTlVMTDsKLSAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZygoUHlPYmplY3QgKilzZWxmLCAicGVyc2lzdGVudF9pZCIpKSB7Ci0gICAgICAgIHNlbGYtPnBlcnNfZnVuYyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoKFB5T2JqZWN0ICopc2VsZiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGVyc2lzdGVudF9pZCIpOworICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKChQeU9iamVjdCAqKXNlbGYsICZQeUlkX3BlcnNpc3RlbnRfaWQpKSB7CisgICAgICAgIHNlbGYtPnBlcnNfZnVuYyA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0ICopc2VsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmUHlJZF9wZXJzaXN0ZW50X2lkKTsKICAgICAgICAgaWYgKHNlbGYtPnBlcnNfZnVuYyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KKyAgICBzZWxmLT5kaXNwYXRjaF90YWJsZSA9IE5VTEw7CisgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQoKFB5T2JqZWN0ICopc2VsZiwgJlB5SWRfZGlzcGF0Y2hfdGFibGUpKSB7CisgICAgICAgIHNlbGYtPmRpc3BhdGNoX3RhYmxlID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKilzZWxmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlB5SWRfZGlzcGF0Y2hfdGFibGUpOworICAgICAgICBpZiAoc2VsZi0+ZGlzcGF0Y2hfdGFibGUgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICB9CiAgICAgcmV0dXJuIDA7CiB9CiAKQEAgLTM3NDksNiArMzc2OSw3IEBACiBzdGF0aWMgUHlNZW1iZXJEZWYgUGlja2xlcl9tZW1iZXJzW10gPSB7CiAgICAgeyJiaW4iLCBUX0lOVCwgb2Zmc2V0b2YoUGlja2xlck9iamVjdCwgYmluKX0sCiAgICAgeyJmYXN0IiwgVF9JTlQsIG9mZnNldG9mKFBpY2tsZXJPYmplY3QsIGZhc3QpfSwKKyAgICB7ImRpc3BhdGNoX3RhYmxlIiwgVF9PQkpFQ1RfRVgsIG9mZnNldG9mKFBpY2tsZXJPYmplY3QsIGRpc3BhdGNoX3RhYmxlKX0sCiAgICAge05VTEx9CiB9OwogCkBAIC0zODAzLDcgKzM4MjQsNyBAQAogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXNfZ2MqLwogfTsKIAotLyogVGVtcG9yYXJ5IGhlbHBlciBmb3IgY2FsbGluZyBzZWxmLmZpbmRfY2xhc3MoKS4gCisvKiBUZW1wb3JhcnkgaGVscGVyIGZvciBjYWxsaW5nIHNlbGYuZmluZF9jbGFzcygpLgogCiAgICBYWFg6IEl0IHdvdWxkIGJlIG5pY2UgdG8gYWJsZSB0byBhdm9pZCBQeXRob24gZnVuY3Rpb24gY2FsbCBvdmVyaGVhZCwgYnkKICAgIHVzaW5nIGRpcmVjdGx5IHRoZSBDIHZlcnNpb24gb2YgZmluZF9jbGFzcygpLCB3aGVuIGZpbmRfY2xhc3MoKSBpcyBub3QKQEAgLTM4MTMsOCArMzgzNCwxMCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGZpbmRfY2xhc3MoVW5waWNrbGVyT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqbW9kdWxlX25hbWUsIFB5T2JqZWN0ICpnbG9iYWxfbmFtZSkKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZCgoUHlPYmplY3QgKilzZWxmLCAiZmluZF9jbGFzcyIsICJPTyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX25hbWUsIGdsb2JhbF9uYW1lKTsKKyAgICBfUHlfSURFTlRJRklFUihmaW5kX2NsYXNzKTsKKworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCAqKXNlbGYsICZQeUlkX2ZpbmRfY2xhc3MsICJPTyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX25hbWUsIGdsb2JhbF9uYW1lKTsKIH0KIAogc3RhdGljIFB5X3NzaXplX3QKQEAgLTM4NTYsNyArMzg3OSw3IEBACiAgICAgICAgIHJldHVybiBiYWRfcmVhZGxpbmUoKTsKIAogICAgIGVycm5vID0gMDsKLSAgICAvKiBYWFg6IFNob3VsZCB0aGUgYmFzZSBhcmd1bWVudCBvZiBzdHJ0b2woKSBiZSBleHBsaWNpdGx5IHNldCB0byAxMD8gCisgICAgLyogWFhYOiBTaG91bGQgdGhlIGJhc2UgYXJndW1lbnQgb2Ygc3RydG9sKCkgYmUgZXhwbGljaXRseSBzZXQgdG8gMTA/CiAgICAgICAgWFhYKGF2YXNzYWxvdHRpKTogU2hvdWxkIHRoaXMgdXNlcyBQeU9TX3N0cnRvbCgpPyAqLwogICAgIHggPSBzdHJ0b2wocywgJmVuZHB0ciwgMCk7CiAKQEAgLTQyMjEsNyArNDI0NCw3IEBACiAKICAgICB4ID0gY2FsY19iaW5pbnQocywgNCk7CiAgICAgaWYgKHggPCAwKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhVbnBpY2tsaW5nRXJyb3IsIAorICAgICAgICBQeUVycl9TZXRTdHJpbmcoVW5waWNrbGluZ0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgIkJJTlNUUklORyBwaWNrbGUgaGFzIG5lZ2F0aXZlIGJ5dGUgY291bnQiKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KQEAgLTQ0MTgsMTYgKzQ0NDEsMTkgQEAKIGluc3RhbnRpYXRlKFB5T2JqZWN0ICpjbHMsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKF9fZ2V0aW5pdGFyZ3NfXyk7CiAgICAgLyogQ2FsbGVyIG11c3QgYXNzdXJlIGFyZ3MgYXJlIGEgdHVwbGUuICBOb3JtYWxseSwgYXJncyBjb21lIGZyb20KICAgICAgICBQZGF0YV9wb3B0dXBsZSB3aGljaCBwYWNrcyBvYmplY3RzIGZyb20gdGhlIHRvcCBvZiB0aGUgc3RhY2sKICAgICAgICBpbnRvIGEgbmV3bHkgY3JlYXRlZCB0dXBsZS4gKi8KICAgICBhc3NlcnQoUHlUdXBsZV9DaGVjayhhcmdzKSk7CiAgICAgaWYgKFB5X1NJWkUoYXJncykgPiAwIHx8ICFQeVR5cGVfQ2hlY2soY2xzKSB8fAotICAgICAgICBQeU9iamVjdF9IYXNBdHRyU3RyaW5nKGNscywgIl9fZ2V0aW5pdGFyZ3NfXyIpKSB7CisgICAgICAgIF9QeU9iamVjdF9IYXNBdHRySWQoY2xzLCAmUHlJZF9fX2dldGluaXRhcmdzX18pKSB7CiAgICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxPYmplY3QoY2xzLCBhcmdzKTsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoY2xzLCAiX19uZXdfXyIsICJPIiwgY2xzKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoX19uZXdfXyk7CisKKyAgICAgICAgcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChjbHMsICZQeUlkX19fbmV3X18sICJPIiwgY2xzKTsKICAgICB9CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTQ5NjgsOCArNDk5NCw5IEBACiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBQeU9iamVjdCAqYXBwZW5kX2Z1bmM7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGFwcGVuZCk7CiAKLSAgICAgICAgYXBwZW5kX2Z1bmMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGxpc3QsICJhcHBlbmQiKTsKKyAgICAgICAgYXBwZW5kX2Z1bmMgPSBfUHlPYmplY3RfR2V0QXR0cklkKGxpc3QsICZQeUlkX2FwcGVuZCk7CiAgICAgICAgIGlmIChhcHBlbmRfZnVuYyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICBmb3IgKGkgPSB4OyBpIDwgbGVuOyBpKyspIHsKQEAgLTUwMTUsNyArNTA0Miw3IEBACiAgICAgICAgIHJldHVybiBzdGFja191bmRlcmZsb3coKTsKICAgICBpZiAobGVuID09IHgpICAvKiBub3RoaW5nIHRvIGRvICovCiAgICAgICAgIHJldHVybiAwOwotICAgIGlmICgobGVuIC0geCkgJSAyICE9IDApIHsgCisgICAgaWYgKChsZW4gLSB4KSAlIDIgIT0gMCkgewogICAgICAgICAvKiBDdXJydXB0IG9yIGhvc3RpbGUgcGlja2xlIC0tIHdlIG5ldmVyIHdyaXRlIG9uZSBsaWtlIHRoaXMuICovCiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhVbnBpY2tsaW5nRXJyb3IsICJvZGQgbnVtYmVyIG9mIGl0ZW1zIGZvciBTRVRJVEVNUyIpOwogICAgICAgICByZXR1cm4gLTE7CkBAIC01MDU2LDYgKzUwODMsNyBAQAogICAgIFB5T2JqZWN0ICpzdGF0ZSwgKmluc3QsICpzbG90c3RhdGU7CiAgICAgUHlPYmplY3QgKnNldHN0YXRlOwogICAgIGludCBzdGF0dXMgPSAwOworICAgIF9QeV9JREVOVElGSUVSKF9fc2V0c3RhdGVfXyk7CiAKICAgICAvKiBTdGFjayBpcyAuLi4gaW5zdGFuY2UsIHN0YXRlLiAgV2Ugd2FudCB0byBsZWF2ZSBpbnN0YW5jZSBhdAogICAgICAqIHRoZSBzdGFjayB0b3AsIHBvc3NpYmx5IG11dGF0ZWQgdmlhIGluc3RhbmNlLl9fc2V0c3RhdGVfXyhzdGF0ZSkuCkBAIC01MDY5LDcgKzUwOTcsNyBAQAogCiAgICAgaW5zdCA9IHNlbGYtPnN0YWNrLT5kYXRhW1B5X1NJWkUoc2VsZi0+c3RhY2spIC0gMV07CiAKLSAgICBzZXRzdGF0ZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoaW5zdCwgIl9fc2V0c3RhdGVfXyIpOworICAgIHNldHN0YXRlID0gX1B5T2JqZWN0X0dldEF0dHJJZChpbnN0LCAmUHlJZF9fX3NldHN0YXRlX18pOwogICAgIGlmIChzZXRzdGF0ZSA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CkBAIC01MTEyLDEyICs1MTQwLDEzIEBACiAgICAgICAgIFB5T2JqZWN0ICpkaWN0OwogICAgICAgICBQeU9iamVjdCAqZF9rZXksICpkX3ZhbHVlOwogICAgICAgICBQeV9zc2l6ZV90IGk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKF9fZGljdF9fKTsKIAogICAgICAgICBpZiAoIVB5RGljdF9DaGVjayhzdGF0ZSkpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhVbnBpY2tsaW5nRXJyb3IsICJzdGF0ZSBpcyBub3QgYSBkaWN0aW9uYXJ5Iik7CiAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICB9Ci0gICAgICAgIGRpY3QgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGluc3QsICJfX2RpY3RfXyIpOworICAgICAgICBkaWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZChpbnN0LCAmUHlJZF9fX2RpY3RfXyk7CiAgICAgICAgIGlmIChkaWN0ID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycm9yOwogCkBAIC01MzcyLDcgKzU0MDEsNyBAQAogICAgICAgIG5vdCBjYWxsIFVucGlja2xlci5fX2luaXRfXygpLiBIZXJlLCB3ZSBzaW1wbHkgZW5zdXJlIHRoYXQgc2VsZi0+cmVhZAogICAgICAgIGlzIG5vdCBOVUxMLiAqLwogICAgIGlmIChzZWxmLT5yZWFkID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFVucGlja2xpbmdFcnJvciwgCisgICAgICAgIFB5RXJyX0Zvcm1hdChVbnBpY2tsaW5nRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAiVW5waWNrbGVyLl9faW5pdF9fKCkgd2FzIG5vdCBjYWxsZWQgYnkgJXMuX19pbml0X18oKSIsCiAgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKHNlbGYpLT50cF9uYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC01NDc0LDcgKzU1MDMsNyBAQAogICAgICAgICBnbG9iYWwgPSBQeU9iamVjdF9HZXRBdHRyKG1vZHVsZSwgZ2xvYmFsX25hbWUpOwogICAgICAgICBQeV9ERUNSRUYobW9kdWxlKTsKICAgICB9Ci0gICAgZWxzZSB7IAorICAgIGVsc2UgewogICAgICAgICBnbG9iYWwgPSBQeU9iamVjdF9HZXRBdHRyKG1vZHVsZSwgZ2xvYmFsX25hbWUpOwogICAgIH0KICAgICByZXR1cm4gZ2xvYmFsOwpAQCAtNTU4Miw2ICs1NjExLDcgQEAKICAgICBQeU9iamVjdCAqZml4X2ltcG9ydHMgPSBQeV9UcnVlOwogICAgIGNoYXIgKmVuY29kaW5nID0gTlVMTDsKICAgICBjaGFyICplcnJvcnMgPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKHBlcnNpc3RlbnRfbG9hZCk7CiAKICAgICAvKiBYWFg6IFRoYXQgaXMgYW4gaG9ycmlibGUgZXJyb3IgbWVzc2FnZS4gQnV0LCBJIGRvbid0IGtub3cgaG93IHRvIGRvCiAgICAgICAgYmV0dGVyLi4uICovCkBAIC01NjE2LDkgKzU2NDYsOSBAQAogICAgIGlmIChzZWxmLT5maXhfaW1wb3J0cyA9PSAtMSkKICAgICAgICAgcmV0dXJuIC0xOwogCi0gICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcoKFB5T2JqZWN0ICopc2VsZiwgInBlcnNpc3RlbnRfbG9hZCIpKSB7Ci0gICAgICAgIHNlbGYtPnBlcnNfZnVuYyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoKFB5T2JqZWN0ICopc2VsZiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGVyc2lzdGVudF9sb2FkIik7CisgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQoKFB5T2JqZWN0ICopc2VsZiwgJlB5SWRfcGVyc2lzdGVudF9sb2FkKSkgeworICAgICAgICBzZWxmLT5wZXJzX2Z1bmMgPSBfUHlPYmplY3RfR2V0QXR0cklkKChQeU9iamVjdCAqKXNlbGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlB5SWRfcGVyc2lzdGVudF9sb2FkKTsKICAgICAgICAgaWYgKHNlbGYtPnBlcnNfZnVuYyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KQEAgLTU2NTEsNyArNTY4MSw3IEBACiAgKiBpbnRlbnRpb25hbCwgYXMgdGhlc2Ugc2hvdWxkIGJlIHRyZWF0ZWQgYXMgYmxhY2stYm94IGltcGxlbWVudGF0aW9uIGRldGFpbHMuCiAgKgogICogV2UgZG8sIGhvd2V2ZXIsIGhhdmUgdG8gaW1wbGVtZW50IHBpY2tsaW5nL3VucGlja2xpbmcgc3VwcG9ydCBiZWNhdXNlIG9mCi0gKiByZWFsLXdvcmxkIGNvZGUgbGlrZSBjdnMyc3ZuLiAKKyAqIHJlYWwtd29ybGQgY29kZSBsaWtlIGN2czJzdm4uCiAgKi8KIAogdHlwZWRlZiBzdHJ1Y3QgewpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fcG9zaXhzdWJwcm9jZXNzLmMgYi9Nb2R1bGVzL19wb3NpeHN1YnByb2Nlc3MuYwppbmRleCBkNTIwYzhjLi5iYWJmMDM5IDEwMDY0NAotLS0gYS9Nb2R1bGVzL19wb3NpeHN1YnByb2Nlc3MuYworKysgYi9Nb2R1bGVzL19wb3NpeHN1YnByb2Nlc3MuYwpAQCAtNDcsNyArNDcsOSBAQAogX2VuYWJsZV9nYyhQeU9iamVjdCAqZ2NfbW9kdWxlKQogewogICAgIFB5T2JqZWN0ICpyZXN1bHQ7Ci0gICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChnY19tb2R1bGUsICJlbmFibGUiLCBOVUxMKTsKKyAgICBfUHlfSURFTlRJRklFUihlbmFibGUpOworCisgICAgcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChnY19tb2R1bGUsICZQeUlkX2VuYWJsZSwgTlVMTCk7CiAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gMTsKICAgICBQeV9ERUNSRUYocmVzdWx0KTsKQEAgLTc4LDcgKzgwLDcgQEAKICAqIHRoYXQgcHJvcGVybHkgc3VwcG9ydHMgL2Rldi9mZC4KICAqLwogc3RhdGljIGludAotX2lzX2ZkZXNjZnNfbW91bnRlZF9vbl9kZXZfZmQoKQorX2lzX2ZkZXNjZnNfbW91bnRlZF9vbl9kZXZfZmQodm9pZCkKIHsKICAgICBzdHJ1Y3Qgc3RhdCBkZXZfc3RhdDsKICAgICBzdHJ1Y3Qgc3RhdCBkZXZfZmRfc3RhdDsKQEAgLTUyMywxMCArNTI1LDEzIEBACiAgICAgLyogV2UgbmVlZCB0byBjYWxsIGdjLmRpc2FibGUoKSB3aGVuIHdlJ2xsIGJlIGNhbGxpbmcgcHJlZXhlY19mbiAqLwogICAgIGlmIChwcmVleGVjX2ZuICE9IFB5X05vbmUpIHsKICAgICAgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoaXNlbmFibGVkKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZGlzYWJsZSk7CisgICAgICAgIAogICAgICAgICBnY19tb2R1bGUgPSBQeUltcG9ydF9JbXBvcnRNb2R1bGUoImdjIik7CiAgICAgICAgIGlmIChnY19tb2R1bGUgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGdjX21vZHVsZSwgImlzZW5hYmxlZCIsIE5VTEwpOworICAgICAgICByZXN1bHQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGdjX21vZHVsZSwgJlB5SWRfaXNlbmFibGVkLCBOVUxMKTsKICAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYoZ2NfbW9kdWxlKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNTM3LDcgKzU0Miw3IEBACiAgICAgICAgICAgICBQeV9ERUNSRUYoZ2NfbW9kdWxlKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZ2NfbW9kdWxlLCAiZGlzYWJsZSIsIE5VTEwpOworICAgICAgICByZXN1bHQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGdjX21vZHVsZSwgJlB5SWRfZGlzYWJsZSwgTlVMTCk7CiAgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKGdjX21vZHVsZSk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX3NxbGl0ZS9jYWNoZS5jIGIvTW9kdWxlcy9fc3FsaXRlL2NhY2hlLmMKaW5kZXggNzM1YTI0Mi4uMzY5MzM2MyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3FsaXRlL2NhY2hlLmMKKysrIGIvTW9kdWxlcy9fc3FsaXRlL2NhY2hlLmMKQEAgLTIxNyw4ICsyMTcsNiBAQAogICAgIHB5c3FsaXRlX05vZGUqIHB0cjsKICAgICBQeU9iamVjdCogcHJldmtleTsKICAgICBQeU9iamVjdCogbmV4dGtleTsKLSAgICBQeU9iamVjdCogZm10X2FyZ3M7Ci0gICAgUHlPYmplY3QqIHRlbXBsYXRlOwogICAgIFB5T2JqZWN0KiBkaXNwbGF5X3N0cjsKIAogICAgIHB0ciA9IHNlbGYtPmZpcnN0OwpAQCAtMjI5LDM2ICsyMjcsMjEgQEAKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHByZXZrZXkgPSBQeV9Ob25lOwogICAgICAgICB9Ci0gICAgICAgIFB5X0lOQ1JFRihwcmV2a2V5KTsKIAogICAgICAgICBpZiAocHRyLT5uZXh0KSB7CiAgICAgICAgICAgICBuZXh0a2V5ID0gcHRyLT5uZXh0LT5rZXk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBuZXh0a2V5ID0gUHlfTm9uZTsKICAgICAgICAgfQotICAgICAgICBQeV9JTkNSRUYobmV4dGtleSk7CiAKLSAgICAgICAgZm10X2FyZ3MgPSBQeV9CdWlsZFZhbHVlKCJPT08iLCBwcmV2a2V5LCBwdHItPmtleSwgbmV4dGtleSk7Ci0gICAgICAgIGlmICghZm10X2FyZ3MpIHsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIHRlbXBsYXRlID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIiVzIDwtICVzIC0+JXNcbiIpOwotICAgICAgICBpZiAoIXRlbXBsYXRlKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYoZm10X2FyZ3MpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgZGlzcGxheV9zdHIgPSBQeVVuaWNvZGVfRm9ybWF0KHRlbXBsYXRlLCBmbXRfYXJncyk7Ci0gICAgICAgIFB5X0RFQ1JFRih0ZW1wbGF0ZSk7Ci0gICAgICAgIFB5X0RFQ1JFRihmbXRfYXJncyk7CisgICAgICAgIGRpc3BsYXlfc3RyID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVTIDwtICVTIC0+ICVTXG4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZrZXksIHB0ci0+a2V5LCBuZXh0a2V5KTsKICAgICAgICAgaWYgKCFkaXNwbGF5X3N0cikgewogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgUHlPYmplY3RfUHJpbnQoZGlzcGxheV9zdHIsIHN0ZG91dCwgUHlfUFJJTlRfUkFXKTsKICAgICAgICAgUHlfREVDUkVGKGRpc3BsYXlfc3RyKTsKIAotICAgICAgICBQeV9ERUNSRUYocHJldmtleSk7Ci0gICAgICAgIFB5X0RFQ1JFRihuZXh0a2V5KTsKLQogICAgICAgICBwdHIgPSBwdHItPm5leHQ7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcWxpdGUvY29ubmVjdGlvbi5jIGIvTW9kdWxlcy9fc3FsaXRlL2Nvbm5lY3Rpb24uYwppbmRleCA5ZDRjNzJmLi5iYzRjZTUwIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19zcWxpdGUvY29ubmVjdGlvbi5jCisrKyBiL01vZHVsZXMvX3NxbGl0ZS9jb25uZWN0aW9uLmMKQEAgLTY3MSw3ICs2NzEsNyBAQAogewogICAgIFB5T2JqZWN0KiBmdW5jdGlvbl9yZXN1bHQgPSBOVUxMOwogICAgIFB5T2JqZWN0KiogYWdncmVnYXRlX2luc3RhbmNlOwotICAgIFB5T2JqZWN0KiBhZ2dyZWdhdGVfY2xhc3M7CisgICAgX1B5X0lERU5USUZJRVIoZmluYWxpemUpOwogCiAjaWZkZWYgV0lUSF9USFJFQUQKICAgICBQeUdJTFN0YXRlX1NUQVRFIHRocmVhZHN0YXRlOwpAQCAtNjc5LDggKzY3OSw2IEBACiAgICAgdGhyZWFkc3RhdGUgPSBQeUdJTFN0YXRlX0Vuc3VyZSgpOwogI2VuZGlmCiAKLSAgICBhZ2dyZWdhdGVfY2xhc3MgPSAoUHlPYmplY3QqKXNxbGl0ZTNfdXNlcl9kYXRhKGNvbnRleHQpOwotCiAgICAgYWdncmVnYXRlX2luc3RhbmNlID0gKFB5T2JqZWN0Kiopc3FsaXRlM19hZ2dyZWdhdGVfY29udGV4dChjb250ZXh0LCBzaXplb2YoUHlPYmplY3QqKSk7CiAgICAgaWYgKCEqYWdncmVnYXRlX2luc3RhbmNlKSB7CiAgICAgICAgIC8qIHRoaXMgYnJhbmNoIGlzIGV4ZWN1dGVkIGlmIHRoZXJlIHdhcyBhbiBleGNlcHRpb24gaW4gdGhlIGFnZ3JlZ2F0ZSdzCkBAIC02ODksNyArNjg3LDcgQEAKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CiAKLSAgICBmdW5jdGlvbl9yZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKCphZ2dyZWdhdGVfaW5zdGFuY2UsICJmaW5hbGl6ZSIsICIiKTsKKyAgICBmdW5jdGlvbl9yZXN1bHQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKCphZ2dyZWdhdGVfaW5zdGFuY2UsICZQeUlkX2ZpbmFsaXplLCAiIik7CiAgICAgaWYgKCFmdW5jdGlvbl9yZXN1bHQpIHsKICAgICAgICAgaWYgKF9lbmFibGVfY2FsbGJhY2tfdHJhY2ViYWNrcykgewogICAgICAgICAgICAgUHlFcnJfUHJpbnQoKTsKQEAgLTkwNSw2ICs5MDMsMzggQEAKICAgICByZXR1cm4gcmM7CiB9CiAKK3N0YXRpYyB2b2lkIF90cmFjZV9jYWxsYmFjayh2b2lkKiB1c2VyX2FyZywgY29uc3QgY2hhciogc3RhdGVtZW50X3N0cmluZykKK3sKKyAgICBQeU9iamVjdCAqcHlfc3RhdGVtZW50ID0gTlVMTDsKKyAgICBQeU9iamVjdCAqcmV0ID0gTlVMTDsKKworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgUHlHSUxTdGF0ZV9TVEFURSBnaWxzdGF0ZTsKKworICAgIGdpbHN0YXRlID0gUHlHSUxTdGF0ZV9FbnN1cmUoKTsKKyNlbmRpZgorICAgIHB5X3N0YXRlbWVudCA9IFB5VW5pY29kZV9EZWNvZGVVVEY4KHN0YXRlbWVudF9zdHJpbmcsCisgICAgICAgICAgICBzdHJsZW4oc3RhdGVtZW50X3N0cmluZyksICJyZXBsYWNlIik7CisgICAgaWYgKHB5X3N0YXRlbWVudCkgeworICAgICAgICByZXQgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKChQeU9iamVjdCopdXNlcl9hcmcsIHB5X3N0YXRlbWVudCwgTlVMTCk7CisgICAgICAgIFB5X0RFQ1JFRihweV9zdGF0ZW1lbnQpOworICAgIH0KKworICAgIGlmIChyZXQpIHsKKyAgICAgICAgUHlfREVDUkVGKHJldCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKF9lbmFibGVfY2FsbGJhY2tfdHJhY2ViYWNrcykgeworICAgICAgICAgICAgUHlFcnJfUHJpbnQoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIH0KKyAgICB9CisKKyNpZmRlZiBXSVRIX1RIUkVBRAorICAgIFB5R0lMU3RhdGVfUmVsZWFzZShnaWxzdGF0ZSk7CisjZW5kaWYKK30KKwogc3RhdGljIFB5T2JqZWN0KiBweXNxbGl0ZV9jb25uZWN0aW9uX3NldF9hdXRob3JpemVyKHB5c3FsaXRlX0Nvbm5lY3Rpb24qIHNlbGYsIFB5T2JqZWN0KiBhcmdzLCBQeU9iamVjdCoga3dhcmdzKQogewogICAgIFB5T2JqZWN0KiBhdXRob3JpemVyX2NiOwpAQCAtOTY0LDYgKzk5NCwzNCBAQAogICAgIHJldHVybiBQeV9Ob25lOwogfQogCitzdGF0aWMgUHlPYmplY3QqIHB5c3FsaXRlX2Nvbm5lY3Rpb25fc2V0X3RyYWNlX2NhbGxiYWNrKHB5c3FsaXRlX0Nvbm5lY3Rpb24qIHNlbGYsIFB5T2JqZWN0KiBhcmdzLCBQeU9iamVjdCoga3dhcmdzKQoreworICAgIFB5T2JqZWN0KiB0cmFjZV9jYWxsYmFjazsKKworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsgInRyYWNlX2NhbGxiYWNrIiwgTlVMTCB9OworCisgICAgaWYgKCFweXNxbGl0ZV9jaGVja190aHJlYWQoc2VsZikgfHwgIXB5c3FsaXRlX2NoZWNrX2Nvbm5lY3Rpb24oc2VsZikpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dhcmdzLCAiTzpzZXRfdHJhY2VfY2FsbGJhY2siLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZ0cmFjZV9jYWxsYmFjaykpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKHRyYWNlX2NhbGxiYWNrID09IFB5X05vbmUpIHsKKyAgICAgICAgLyogTm9uZSBjbGVhcnMgdGhlIHRyYWNlIGNhbGxiYWNrIHByZXZpb3VzbHkgc2V0ICovCisgICAgICAgIHNxbGl0ZTNfdHJhY2Uoc2VsZi0+ZGIsIDAsICh2b2lkKikwKTsKKyAgICB9IGVsc2UgeworICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW0oc2VsZi0+ZnVuY3Rpb25fcGluYm9hcmQsIHRyYWNlX2NhbGxiYWNrLCBQeV9Ob25lKSA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBzcWxpdGUzX3RyYWNlKHNlbGYtPmRiLCBfdHJhY2VfY2FsbGJhY2ssIHRyYWNlX2NhbGxiYWNrKTsKKyAgICB9CisKKyAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CisgICAgcmV0dXJuIFB5X05vbmU7Cit9CisKICNpZmRlZiBIQVZFX0xPQURfRVhURU5TSU9OCiBzdGF0aWMgUHlPYmplY3QqIHB5c3FsaXRlX2VuYWJsZV9sb2FkX2V4dGVuc2lvbihweXNxbGl0ZV9Db25uZWN0aW9uKiBzZWxmLCBQeU9iamVjdCogYXJncykKIHsKQEAgLTExNjksOCArMTIyNyw5IEBACiAgICAgUHlPYmplY3QqIGN1cnNvciA9IDA7CiAgICAgUHlPYmplY3QqIHJlc3VsdCA9IDA7CiAgICAgUHlPYmplY3QqIG1ldGhvZCA9IDA7CisgICAgX1B5X0lERU5USUZJRVIoY3Vyc29yKTsKIAotICAgIGN1cnNvciA9IFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0KilzZWxmLCAiY3Vyc29yIiwgIiIpOworICAgIGN1cnNvciA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoKFB5T2JqZWN0KilzZWxmLCAmUHlJZF9jdXJzb3IsICIiKTsKICAgICBpZiAoIWN1cnNvcikgewogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KQEAgLTExOTgsOCArMTI1Nyw5IEBACiAgICAgUHlPYmplY3QqIGN1cnNvciA9IDA7CiAgICAgUHlPYmplY3QqIHJlc3VsdCA9IDA7CiAgICAgUHlPYmplY3QqIG1ldGhvZCA9IDA7CisgICAgX1B5X0lERU5USUZJRVIoY3Vyc29yKTsKIAotICAgIGN1cnNvciA9IFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0KilzZWxmLCAiY3Vyc29yIiwgIiIpOworICAgIGN1cnNvciA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoKFB5T2JqZWN0KilzZWxmLCAmUHlJZF9jdXJzb3IsICIiKTsKICAgICBpZiAoIWN1cnNvcikgewogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KQEAgLTEyMjcsOCArMTI4Nyw5IEBACiAgICAgUHlPYmplY3QqIGN1cnNvciA9IDA7CiAgICAgUHlPYmplY3QqIHJlc3VsdCA9IDA7CiAgICAgUHlPYmplY3QqIG1ldGhvZCA9IDA7CisgICAgX1B5X0lERU5USUZJRVIoY3Vyc29yKTsKIAotICAgIGN1cnNvciA9IFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0KilzZWxmLCAiY3Vyc29yIiwgIiIpOworICAgIGN1cnNvciA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoKFB5T2JqZWN0KilzZWxmLCAmUHlJZF9jdXJzb3IsICIiKTsKICAgICBpZiAoIWN1cnNvcikgewogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KQEAgLTEzNzUsMTAgKzE0MzYsMTIgQEAKICAgICBQeU9iamVjdCogdXBwZXJjYXNlX25hbWUgPSAwOwogICAgIFB5T2JqZWN0KiBuYW1lOwogICAgIFB5T2JqZWN0KiByZXR2YWw7Ci0gICAgUHlfVU5JQ09ERSogY2hrOwogICAgIFB5X3NzaXplX3QgaSwgbGVuOworICAgIF9QeV9JREVOVElGSUVSKHVwcGVyKTsKICAgICBjaGFyICp1cHBlcmNhc2VfbmFtZV9zdHI7CiAgICAgaW50IHJjOworICAgIHVuc2lnbmVkIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CiAKICAgICBpZiAoIXB5c3FsaXRlX2NoZWNrX3RocmVhZChzZWxmKSB8fCAhcHlzcWxpdGVfY2hlY2tfY29ubmVjdGlvbihzZWxmKSkgewogICAgICAgICBnb3RvIGZpbmFsbHk7CkBAIC0xMzg4LDE3ICsxNDUxLDIxIEBACiAgICAgICAgIGdvdG8gZmluYWxseTsKICAgICB9CiAKLSAgICB1cHBlcmNhc2VfbmFtZSA9IFB5T2JqZWN0X0NhbGxNZXRob2QobmFtZSwgInVwcGVyIiwgIiIpOworICAgIHVwcGVyY2FzZV9uYW1lID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChuYW1lLCAmUHlJZF91cHBlciwgIiIpOwogICAgIGlmICghdXBwZXJjYXNlX25hbWUpIHsKICAgICAgICAgZ290byBmaW5hbGx5OwogICAgIH0KIAotICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRSh1cHBlcmNhc2VfbmFtZSk7Ci0gICAgY2hrID0gUHlVbmljb2RlX0FTX1VOSUNPREUodXBwZXJjYXNlX25hbWUpOwotICAgIGZvciAoaT0wOyBpPGxlbjsgaSsrLCBjaGsrKykgewotICAgICAgICBpZiAoKCpjaGsgPj0gJzAnICYmICpjaGsgPD0gJzknKQotICAgICAgICAgfHwgKCpjaGsgPj0gJ0EnICYmICpjaGsgPD0gJ1onKQotICAgICAgICAgfHwgKCpjaGsgPT0gJ18nKSkKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVwcGVyY2FzZV9uYW1lKSkKKyAgICAgICAgZ290byBmaW5hbGx5OworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVwcGVyY2FzZV9uYW1lKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodXBwZXJjYXNlX25hbWUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1cHBlcmNhc2VfbmFtZSk7CisgICAgZm9yIChpPTA7IGk8bGVuOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICBpZiAoKGNoID49ICcwJyAmJiBjaCA8PSAnOScpCisgICAgICAgICB8fCAoY2ggPj0gJ0EnICYmIGNoIDw9ICdaJykKKyAgICAgICAgIHx8IChjaCA9PSAnXycpKQogICAgICAgICB7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfSBlbHNlIHsKQEAgLTE1MTcsNiArMTU4NCw4IEBACiAgICAgI2VuZGlmCiAgICAgeyJzZXRfcHJvZ3Jlc3NfaGFuZGxlciIsIChQeUNGdW5jdGlvbilweXNxbGl0ZV9jb25uZWN0aW9uX3NldF9wcm9ncmVzc19oYW5kbGVyLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKICAgICAgICAgUHlEb2NfU1RSKCJTZXRzIHByb2dyZXNzIGhhbmRsZXIgY2FsbGJhY2suIE5vbi1zdGFuZGFyZC4iKX0sCisgICAgeyJzZXRfdHJhY2VfY2FsbGJhY2siLCAoUHlDRnVuY3Rpb24pcHlzcWxpdGVfY29ubmVjdGlvbl9zZXRfdHJhY2VfY2FsbGJhY2ssIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTLAorICAgICAgICBQeURvY19TVFIoIlNldHMgYSB0cmFjZSBjYWxsYmFjayBjYWxsZWQgZm9yIGVhY2ggU1FMIHN0YXRlbWVudCAocGFzc2VkIGFzIHVuaWNvZGUpLiBOb24tc3RhbmRhcmQuIil9LAogICAgIHsiZXhlY3V0ZSIsIChQeUNGdW5jdGlvbilweXNxbGl0ZV9jb25uZWN0aW9uX2V4ZWN1dGUsIE1FVEhfVkFSQVJHUywKICAgICAgICAgUHlEb2NfU1RSKCJFeGVjdXRlcyBhIFNRTCBzdGF0ZW1lbnQuIE5vbi1zdGFuZGFyZC4iKX0sCiAgICAgeyJleGVjdXRlbWFueSIsIChQeUNGdW5jdGlvbilweXNxbGl0ZV9jb25uZWN0aW9uX2V4ZWN1dGVtYW55LCBNRVRIX1ZBUkFSR1MsCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcWxpdGUvY29ubmVjdGlvbi5oIGIvTW9kdWxlcy9fc3FsaXRlL2Nvbm5lY3Rpb24uaAppbmRleCBjOGUyZjdjLi4wYzk3MzRjIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19zcWxpdGUvY29ubmVjdGlvbi5oCisrKyBiL01vZHVsZXMvX3NxbGl0ZS9jb25uZWN0aW9uLmgKQEAgLTgzLDggKzgzLDcgQEAKIAogICAgIC8qIERldGVybWluZXMgaG93IGJ5dGVzdHJpbmdzIGZyb20gU1FMaXRlIGFyZSBjb252ZXJ0ZWQgdG8gUHl0aG9uIG9iamVjdHM6CiAgICAgICogLSBQeVVuaWNvZGVfVHlwZTogICAgICAgIFB5dGhvbiBVbmljb2RlIG9iamVjdHMgYXJlIGNvbnN0cnVjdGVkIGZyb20gVVRGLTggYnl0ZXN0cmluZ3MKLSAgICAgKiAtIE9wdGltaXplZFVuaWNvZGU6ICAgICAgTGlrZSBiZWZvcmUsIGJ1dCBmb3IgQVNDSUkgZGF0YSwgb25seSBQeVN0cmluZ3MgYXJlIGNyZWF0ZWQuCi0gICAgICogLSBQeUJ5dGVzX1R5cGU6ICAgICAgICAgUHlTdHJpbmdzIGFyZSBjcmVhdGVkIGFzLWlzLgorICAgICAqIC0gUHlCeXRlc19UeXBlOiAgICAgICAgICBUaGUgYnl0ZXN0cmluZ3MgYXJlIHJldHVybmVkIGFzLWlzLgogICAgICAqIC0gQW55IGN1c3RvbSBjYWxsYWJsZTogICBBbnkgb2JqZWN0IHJldHVybmVkIGZyb20gdGhlIGNhbGxhYmxlIGNhbGxlZCB3aXRoIHRoZSBieXRlc3RyaW5nCiAgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgIGFzIHNpbmdsZSBwYXJhbWV0ZXIuCiAgICAgICovCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcWxpdGUvY3Vyc29yLmMgYi9Nb2R1bGVzL19zcWxpdGUvY3Vyc29yLmMKaW5kZXggODZmYmQ0ZS4uOGE1NmQzYyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3FsaXRlL2N1cnNvci5jCisrKyBiL01vZHVsZXMvX3NxbGl0ZS9jdXJzb3IuYwpAQCAtMTI2LDExICsxMjYsOSBAQAogCiBzdGF0aWMgdm9pZCBweXNxbGl0ZV9jdXJzb3JfZGVhbGxvYyhweXNxbGl0ZV9DdXJzb3IqIHNlbGYpCiB7Ci0gICAgaW50IHJjOwotCiAgICAgLyogUmVzZXQgdGhlIHN0YXRlbWVudCBpZiB0aGUgdXNlciBoYXMgbm90IGNsb3NlZCB0aGUgY3Vyc29yICovCiAgICAgaWYgKHNlbGYtPnN0YXRlbWVudCkgewotICAgICAgICByYyA9IHB5c3FsaXRlX3N0YXRlbWVudF9yZXNldChzZWxmLT5zdGF0ZW1lbnQpOworICAgICAgICBweXNxbGl0ZV9zdGF0ZW1lbnRfcmVzZXQoc2VsZi0+c3RhdGVtZW50KTsKICAgICAgICAgUHlfREVDUkVGKHNlbGYtPnN0YXRlbWVudCk7CiAgICAgfQogCkBAIC0xNTIsOCArMTUwLDkgQEAKIHsKICAgICBQeU9iamVjdCogdXBjYXNlX2tleTsKICAgICBQeU9iamVjdCogcmV0dmFsOworICAgIF9QeV9JREVOVElGSUVSKHVwcGVyKTsKIAotICAgIHVwY2FzZV9rZXkgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGtleSwgInVwcGVyIiwgIiIpOworICAgIHVwY2FzZV9rZXkgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGtleSwgJlB5SWRfdXBwZXIsICIiKTsKICAgICBpZiAoIXVwY2FzZV9rZXkpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMjY4LDExICsyNjcsNiBAQAogICAgIH0KIH0KIAotUHlPYmplY3QqIHB5c3FsaXRlX3VuaWNvZGVfZnJvbV9zdHJpbmcoY29uc3QgY2hhciogdmFsX3N0ciwgUHlfc3NpemVfdCBzaXplLCBpbnQgb3B0aW1pemUpCi17Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZSh2YWxfc3RyLCBzaXplKTsKLX0KLQogLyoKICAqIFJldHVybnMgYSByb3cgZnJvbSB0aGUgY3VycmVudGx5IGFjdGl2ZSBTUUxpdGUgc3RhdGVtZW50CiAgKgpAQCAtMzU2LDEyICszNTAsOCBAQAogICAgICAgICAgICAgfSBlbHNlIGlmIChjb2x0eXBlID09IFNRTElURV9URVhUKSB7CiAgICAgICAgICAgICAgICAgdmFsX3N0ciA9IChjb25zdCBjaGFyKilzcWxpdGUzX2NvbHVtbl90ZXh0KHNlbGYtPnN0YXRlbWVudC0+c3QsIGkpOwogICAgICAgICAgICAgICAgIG5ieXRlcyA9IHNxbGl0ZTNfY29sdW1uX2J5dGVzKHNlbGYtPnN0YXRlbWVudC0+c3QsIGkpOwotICAgICAgICAgICAgICAgIGlmICgoc2VsZi0+Y29ubmVjdGlvbi0+dGV4dF9mYWN0b3J5ID09IChQeU9iamVjdCopJlB5VW5pY29kZV9UeXBlKQotICAgICAgICAgICAgICAgICAgICB8fCAoc2VsZi0+Y29ubmVjdGlvbi0+dGV4dF9mYWN0b3J5ID09IHB5c3FsaXRlX09wdGltaXplZFVuaWNvZGUpKSB7Ci0KLSAgICAgICAgICAgICAgICAgICAgY29udmVydGVkID0gcHlzcWxpdGVfdW5pY29kZV9mcm9tX3N0cmluZyh2YWxfc3RyLCBuYnl0ZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5jb25uZWN0aW9uLT50ZXh0X2ZhY3RvcnkgPT0gcHlzcWxpdGVfT3B0aW1pemVkVW5pY29kZSA/IDEgOiAwKTsKLQorICAgICAgICAgICAgICAgIGlmIChzZWxmLT5jb25uZWN0aW9uLT50ZXh0X2ZhY3RvcnkgPT0gKFB5T2JqZWN0KikmUHlVbmljb2RlX1R5cGUpIHsKKyAgICAgICAgICAgICAgICAgICAgY29udmVydGVkID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKHZhbF9zdHIsIG5ieXRlcyk7CiAgICAgICAgICAgICAgICAgICAgIGlmICghY29udmVydGVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBjb2xuYW1lID0gc3FsaXRlM19jb2x1bW5fbmFtZShzZWxmLT5zdGF0ZW1lbnQtPnN0LCBpKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghY29sbmFtZSkgewpAQCAtNDYwLDcgKzQ1MCw2IEBACiAgICAgaW50IHN0YXRlbWVudF90eXBlOwogICAgIFB5T2JqZWN0KiBkZXNjcmlwdG9yOwogICAgIFB5T2JqZWN0KiBzZWNvbmRfYXJndW1lbnQgPSBOVUxMOwotICAgIGludCBhbGxvd184Yml0X2NoYXJzOwogCiAgICAgaWYgKCFjaGVja19jdXJzb3Ioc2VsZikpIHsKICAgICAgICAgZ290byBlcnJvcjsKQEAgLTQ2OSwxMCArNDU4LDYgQEAKICAgICBzZWxmLT5sb2NrZWQgPSAxOwogICAgIHNlbGYtPnJlc2V0ID0gMDsKIAotICAgIC8qIE1ha2Ugc2hvb3RpbmcgeW91cnNlbGYgaW4gdGhlIGZvb3Qgd2l0aCBub3QgdXRmLTggZGVjb2RhYmxlIDgtYml0LXN0cmluZ3MgaGFyZGVyICovCi0gICAgYWxsb3dfOGJpdF9jaGFycyA9ICgoc2VsZi0+Y29ubmVjdGlvbi0+dGV4dF9mYWN0b3J5ICE9IChQeU9iamVjdCopJlB5VW5pY29kZV9UeXBlKSAmJgotICAgICAgICAoc2VsZi0+Y29ubmVjdGlvbi0+dGV4dF9mYWN0b3J5ICE9IHB5c3FsaXRlX09wdGltaXplZFVuaWNvZGUpKTsKLQogICAgIFB5X1hERUNSRUYoc2VsZi0+bmV4dF9yb3cpOwogICAgIHNlbGYtPm5leHRfcm93ID0gTlVMTDsKIApAQCAtNTM2LDcgKzUyMSw3IEBACiAKICAgICBpZiAoc2VsZi0+c3RhdGVtZW50ICE9IE5VTEwpIHsKICAgICAgICAgLyogVGhlcmUgaXMgYW4gYWN0aXZlIHN0YXRlbWVudCAqLwotICAgICAgICByYyA9IHB5c3FsaXRlX3N0YXRlbWVudF9yZXNldChzZWxmLT5zdGF0ZW1lbnQpOworICAgICAgICBweXNxbGl0ZV9zdGF0ZW1lbnRfcmVzZXQoc2VsZi0+c3RhdGVtZW50KTsKICAgICB9CiAKICAgICBvcGVyYXRpb25fY3N0ciA9IF9QeVVuaWNvZGVfQXNTdHJpbmdBbmRTaXplKG9wZXJhdGlvbiwgJm9wZXJhdGlvbl9sZW4pOwpAQCAtNjMxLDcgKzYxNiw3IEBACiAKICAgICAgICAgcHlzcWxpdGVfc3RhdGVtZW50X21hcmtfZGlydHkoc2VsZi0+c3RhdGVtZW50KTsKIAotICAgICAgICBweXNxbGl0ZV9zdGF0ZW1lbnRfYmluZF9wYXJhbWV0ZXJzKHNlbGYtPnN0YXRlbWVudCwgcGFyYW1ldGVycywgYWxsb3dfOGJpdF9jaGFycyk7CisgICAgICAgIHB5c3FsaXRlX3N0YXRlbWVudF9iaW5kX3BhcmFtZXRlcnMoc2VsZi0+c3RhdGVtZW50LCBwYXJhbWV0ZXJzKTsKICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIH0KQEAgLTc0MSw3ICs3MjYsNyBAQAogICAgICAgICB9CiAKICAgICAgICAgaWYgKG11bHRpcGxlKSB7Ci0gICAgICAgICAgICByYyA9IHB5c3FsaXRlX3N0YXRlbWVudF9yZXNldChzZWxmLT5zdGF0ZW1lbnQpOworICAgICAgICAgICAgcHlzcWxpdGVfc3RhdGVtZW50X3Jlc2V0KHNlbGYtPnN0YXRlbWVudCk7CiAgICAgICAgIH0KICAgICAgICAgUHlfWERFQ1JFRihwYXJhbWV0ZXJzKTsKICAgICB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcWxpdGUvbWljcm9wcm90b2NvbHMuYyBiL01vZHVsZXMvX3NxbGl0ZS9taWNyb3Byb3RvY29scy5jCmluZGV4IGM3MzBhZmEuLjIyNjFiODAgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3NxbGl0ZS9taWNyb3Byb3RvY29scy5jCisrKyBiL01vZHVsZXMvX3NxbGl0ZS9taWNyb3Byb3RvY29scy5jCkBAIC05NSw3ICs5NSw5IEBACiAKICAgICAvKiB0cnkgdG8gaGF2ZSB0aGUgcHJvdG9jb2wgYWRhcHQgdGhpcyBvYmplY3QqLwogICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKHByb3RvLCAiX19hZGFwdF9fIikpIHsKLSAgICAgICAgUHlPYmplY3QgKmFkYXB0ZWQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHByb3RvLCAiX19hZGFwdF9fIiwgIk8iLCBvYmopOworICAgICAgICBfUHlfSURFTlRJRklFUihfX2FkYXB0X18pOworICAgICAgICBQeU9iamVjdCAqYWRhcHRlZCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocHJvdG8sICZQeUlkX19fYWRhcHRfXywgIk8iLCBvYmopOworCiAgICAgICAgIGlmIChhZGFwdGVkKSB7CiAgICAgICAgICAgICBpZiAoYWRhcHRlZCAhPSBQeV9Ob25lKSB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIGFkYXB0ZWQ7CkBAIC0xMTAsNyArMTEyLDkgQEAKIAogICAgIC8qIGFuZCBmaW5hbGx5IHRyeSB0byBoYXZlIHRoZSBvYmplY3QgYWRhcHQgaXRzZWxmICovCiAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiX19jb25mb3JtX18iKSkgewotICAgICAgICBQeU9iamVjdCAqYWRhcHRlZCA9IFB5T2JqZWN0X0NhbGxNZXRob2Qob2JqLCAiX19jb25mb3JtX18iLCJPIiwgcHJvdG8pOworICAgICAgICBfUHlfSURFTlRJRklFUihfX2NvbmZvcm1fXyk7CisgICAgICAgIFB5T2JqZWN0ICphZGFwdGVkID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChvYmosICZQeUlkX19fY29uZm9ybV9fLCJPIiwgcHJvdG8pOworCiAgICAgICAgIGlmIChhZGFwdGVkKSB7CiAgICAgICAgICAgICBpZiAoYWRhcHRlZCAhPSBQeV9Ob25lKSB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIGFkYXB0ZWQ7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcWxpdGUvbW9kdWxlLmMgYi9Nb2R1bGVzL19zcWxpdGUvbW9kdWxlLmMKaW5kZXggY2JjM2I4ZS4uYmVhNmQ2YSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3FsaXRlL21vZHVsZS5jCisrKyBiL01vZHVsZXMvX3NxbGl0ZS9tb2R1bGUuYwpAQCAtMzcsNyArMzcsNyBAQAogCiBQeU9iamVjdCogcHlzcWxpdGVfRXJyb3IsICpweXNxbGl0ZV9XYXJuaW5nLCAqcHlzcWxpdGVfSW50ZXJmYWNlRXJyb3IsICpweXNxbGl0ZV9EYXRhYmFzZUVycm9yLAogICAgICpweXNxbGl0ZV9JbnRlcm5hbEVycm9yLCAqcHlzcWxpdGVfT3BlcmF0aW9uYWxFcnJvciwgKnB5c3FsaXRlX1Byb2dyYW1taW5nRXJyb3IsCi0gICAgKnB5c3FsaXRlX0ludGVncml0eUVycm9yLCAqcHlzcWxpdGVfRGF0YUVycm9yLCAqcHlzcWxpdGVfTm90U3VwcG9ydGVkRXJyb3IsICpweXNxbGl0ZV9PcHRpbWl6ZWRVbmljb2RlOworICAgICpweXNxbGl0ZV9JbnRlZ3JpdHlFcnJvciwgKnB5c3FsaXRlX0RhdGFFcnJvciwgKnB5c3FsaXRlX05vdFN1cHBvcnRlZEVycm9yOwogCiBQeU9iamVjdCogY29udmVydGVyczsKIGludCBfZW5hYmxlX2NhbGxiYWNrX3RyYWNlYmFja3M7CkBAIC0xNzksMTMgKzE3OSwxNCBAQAogICAgIFB5T2JqZWN0KiBuYW1lID0gTlVMTDsKICAgICBQeU9iamVjdCogY2FsbGFibGU7CiAgICAgUHlPYmplY3QqIHJldHZhbCA9IE5VTEw7CisgICAgX1B5X0lERU5USUZJRVIodXBwZXIpOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVTyIsICZvcmlnX25hbWUsICZjYWxsYWJsZSkpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCiAgICAgLyogY29udmVydCB0aGUgbmFtZSB0byB1cHBlciBjYXNlICovCi0gICAgbmFtZSA9IFB5T2JqZWN0X0NhbGxNZXRob2Qob3JpZ19uYW1lLCAidXBwZXIiLCAiIik7CisgICAgbmFtZSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQob3JpZ19uYW1lLCAmUHlJZF91cHBlciwgIiIpOwogICAgIGlmICghbmFtZSkgewogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KQEAgLTQwNiwxMyArNDA3LDEzIEBACiAgICAgfQogICAgIFB5RGljdF9TZXRJdGVtU3RyaW5nKGRpY3QsICJOb3RTdXBwb3J0ZWRFcnJvciIsIHB5c3FsaXRlX05vdFN1cHBvcnRlZEVycm9yKTsKIAotICAgIC8qIFdlIGp1c3QgbmVlZCAic29tZXRoaW5nIiB1bmlxdWUgZm9yIHB5c3FsaXRlX09wdGltaXplZFVuaWNvZGUuIEl0IGRvZXMgbm90IHJlYWxseQotICAgICAqIG5lZWQgdG8gYmUgYSBzdHJpbmcgc3ViY2xhc3MuIEp1c3QgYW55dGhpbmcgdGhhdCBjYW4gYWN0IGFzIGEgc3BlY2lhbAotICAgICAqIG1hcmtlciBmb3IgdXMuIFNvIEkgcHVsbGVkIFB5Q2VsbF9UeXBlIG91dCBvZiBteSBtYWdpYyBoYXQuCi0gICAgICovCi0gICAgUHlfSU5DUkVGKChQeU9iamVjdCopJlB5Q2VsbF9UeXBlKTsKLSAgICBweXNxbGl0ZV9PcHRpbWl6ZWRVbmljb2RlID0gKFB5T2JqZWN0KikmUHlDZWxsX1R5cGU7Ci0gICAgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZGljdCwgIk9wdGltaXplZFVuaWNvZGUiLCBweXNxbGl0ZV9PcHRpbWl6ZWRVbmljb2RlKTsKKyAgICAvKiBJbiBQeXRob24gMi54LCBzZXR0aW5nIENvbm5lY3Rpb24udGV4dF9mYWN0b3J5IHRvCisgICAgICAgT3B0aW1pemVkVW5pY29kZSBjYXVzZWQgVW5pY29kZSBvYmplY3RzIHRvIGJlIHJldHVybmVkIGZvcgorICAgICAgIG5vbi1BU0NJSSBkYXRhIGFuZCBieXRlc3RyaW5ncyB0byBiZSByZXR1cm5lZCBmb3IgQVNDSUkgZGF0YS4KKyAgICAgICBOb3cgT3B0aW1pemVkVW5pY29kZSBpcyBhbiBhbGlhcyBmb3Igc3RyLCBzbyBpdCBoYXMgbm8KKyAgICAgICBlZmZlY3QuICovCisgICAgUHlfSU5DUkVGKChQeU9iamVjdCopJlB5VW5pY29kZV9UeXBlKTsKKyAgICBQeURpY3RfU2V0SXRlbVN0cmluZyhkaWN0LCAiT3B0aW1pemVkVW5pY29kZSIsIChQeU9iamVjdCopJlB5VW5pY29kZV9UeXBlKTsKIAogICAgIC8qIFNldCBpbnRlZ2VyIGNvbnN0YW50cyAqLwogICAgIGZvciAoaSA9IDA7IF9pbnRfY29uc3RhbnRzW2ldLmNvbnN0YW50X25hbWUgIT0gMDsgaSsrKSB7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcWxpdGUvbW9kdWxlLmggYi9Nb2R1bGVzL19zcWxpdGUvbW9kdWxlLmgKaW5kZXggMGVkZGI2Ny4uYjUxNzI0YiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3FsaXRlL21vZHVsZS5oCisrKyBiL01vZHVsZXMvX3NxbGl0ZS9tb2R1bGUuaApAQCAtMzgsOCArMzgsNiBAQAogZXh0ZXJuIFB5T2JqZWN0KiBweXNxbGl0ZV9EYXRhRXJyb3I7CiBleHRlcm4gUHlPYmplY3QqIHB5c3FsaXRlX05vdFN1cHBvcnRlZEVycm9yOwogCi1leHRlcm4gUHlPYmplY3QqIHB5c3FsaXRlX09wdGltaXplZFVuaWNvZGU7Ci0KIC8qIHRoZSBmdW5jdGlvbnMgdGltZS50aW1lKCkgYW5kIHRpbWUuc2xlZXAoKSAqLwogZXh0ZXJuIFB5T2JqZWN0KiB0aW1lX3RpbWU7CiBleHRlcm4gUHlPYmplY3QqIHRpbWVfc2xlZXA7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcWxpdGUvcm93LmMgYi9Nb2R1bGVzL19zcWxpdGUvcm93LmMKaW5kZXggM2Q0NDA5NC4uYjUwNjU4YyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3FsaXRlL3Jvdy5jCisrKyBiL01vZHVsZXMvX3NxbGl0ZS9yb3cuYwpAQCAtMTczLDEwICsxNzMsOSBAQAogCiBzdGF0aWMgUHlPYmplY3QqIHB5c3FsaXRlX3Jvd19yaWNoY29tcGFyZShweXNxbGl0ZV9Sb3cgKnNlbGYsIFB5T2JqZWN0ICpfb3RoZXIsIGludCBvcGlkKQogewotICAgIGlmIChvcGlkICE9IFB5X0VRICYmIG9waWQgIT0gUHlfTkUpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBpZiAob3BpZCAhPSBQeV9FUSAmJiBvcGlkICE9IFB5X05FKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CisKICAgICBpZiAoUHlUeXBlX0lzU3VidHlwZShQeV9UWVBFKF9vdGhlciksICZweXNxbGl0ZV9Sb3dUeXBlKSkgewogICAgICAgICBweXNxbGl0ZV9Sb3cgKm90aGVyID0gKHB5c3FsaXRlX1JvdyAqKV9vdGhlcjsKICAgICAgICAgUHlPYmplY3QgKnJlcyA9IFB5T2JqZWN0X1JpY2hDb21wYXJlKHNlbGYtPmRlc2NyaXB0aW9uLCBvdGhlci0+ZGVzY3JpcHRpb24sIG9waWQpOwpAQCAtMTg2LDggKzE4NSw3IEBACiAgICAgICAgICAgICByZXR1cm4gUHlPYmplY3RfUmljaENvbXBhcmUoc2VsZi0+ZGF0YSwgb3RoZXItPmRhdGEsIG9waWQpOwogICAgICAgICB9CiAgICAgfQotICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIH0KIAogUHlNYXBwaW5nTWV0aG9kcyBweXNxbGl0ZV9yb3dfYXNfbWFwcGluZyA9IHsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX3NxbGl0ZS9zdGF0ZW1lbnQuYyBiL01vZHVsZXMvX3NxbGl0ZS9zdGF0ZW1lbnQuYwppbmRleCA4MGJjYzM4Li45ODg0ODYwIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19zcWxpdGUvc3RhdGVtZW50LmMKKysrIGIvTW9kdWxlcy9fc3FsaXRlL3N0YXRlbWVudC5jCkBAIC04Nyw3ICs4Nyw3IEBACiAgICAgcmV0dXJuIHJjOwogfQogCi1pbnQgcHlzcWxpdGVfc3RhdGVtZW50X2JpbmRfcGFyYW1ldGVyKHB5c3FsaXRlX1N0YXRlbWVudCogc2VsZiwgaW50IHBvcywgUHlPYmplY3QqIHBhcmFtZXRlciwgaW50IGFsbG93XzhiaXRfY2hhcnMpCitpbnQgcHlzcWxpdGVfc3RhdGVtZW50X2JpbmRfcGFyYW1ldGVyKHB5c3FsaXRlX1N0YXRlbWVudCogc2VsZiwgaW50IHBvcywgUHlPYmplY3QqIHBhcmFtZXRlcikKIHsKICAgICBpbnQgcmMgPSBTUUxJVEVfT0s7CiAgICAgUFlfTE9OR19MT05HIGxvbmdsb25ndmFsOwpAQCAtMTY2LDcgKzE2Niw3IEBACiAgICAgfQogfQogCi12b2lkIHB5c3FsaXRlX3N0YXRlbWVudF9iaW5kX3BhcmFtZXRlcnMocHlzcWxpdGVfU3RhdGVtZW50KiBzZWxmLCBQeU9iamVjdCogcGFyYW1ldGVycywgaW50IGFsbG93XzhiaXRfY2hhcnMpCit2b2lkIHB5c3FsaXRlX3N0YXRlbWVudF9iaW5kX3BhcmFtZXRlcnMocHlzcWxpdGVfU3RhdGVtZW50KiBzZWxmLCBQeU9iamVjdCogcGFyYW1ldGVycykKIHsKICAgICBQeU9iamVjdCogY3VycmVudF9wYXJhbTsKICAgICBQeU9iamVjdCogYWRhcHRlZDsKQEAgLTIyMCw3ICsyMjAsNyBAQAogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgcmMgPSBweXNxbGl0ZV9zdGF0ZW1lbnRfYmluZF9wYXJhbWV0ZXIoc2VsZiwgaSArIDEsIGFkYXB0ZWQsIGFsbG93XzhiaXRfY2hhcnMpOworICAgICAgICAgICAgcmMgPSBweXNxbGl0ZV9zdGF0ZW1lbnRfYmluZF9wYXJhbWV0ZXIoc2VsZiwgaSArIDEsIGFkYXB0ZWQpOwogICAgICAgICAgICAgUHlfREVDUkVGKGFkYXB0ZWQpOwogCiAgICAgICAgICAgICBpZiAocmMgIT0gU1FMSVRFX09LKSB7CkBAIC0yNjUsNyArMjY1LDcgQEAKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHJjID0gcHlzcWxpdGVfc3RhdGVtZW50X2JpbmRfcGFyYW1ldGVyKHNlbGYsIGksIGFkYXB0ZWQsIGFsbG93XzhiaXRfY2hhcnMpOworICAgICAgICAgICAgcmMgPSBweXNxbGl0ZV9zdGF0ZW1lbnRfYmluZF9wYXJhbWV0ZXIoc2VsZiwgaSwgYWRhcHRlZCk7CiAgICAgICAgICAgICBQeV9ERUNSRUYoYWRhcHRlZCk7CiAKICAgICAgICAgICAgIGlmIChyYyAhPSBTUUxJVEVfT0spIHsKQEAgLTM2OSwxMSArMzY5LDkgQEAKIAogdm9pZCBweXNxbGl0ZV9zdGF0ZW1lbnRfZGVhbGxvYyhweXNxbGl0ZV9TdGF0ZW1lbnQqIHNlbGYpCiB7Ci0gICAgaW50IHJjOwotCiAgICAgaWYgKHNlbGYtPnN0KSB7CiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgcmMgPSBzcWxpdGUzX2ZpbmFsaXplKHNlbGYtPnN0KTsKKyAgICAgICAgc3FsaXRlM19maW5hbGl6ZShzZWxmLT5zdCk7CiAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgfQogCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcWxpdGUvc3RhdGVtZW50LmggYi9Nb2R1bGVzL19zcWxpdGUvc3RhdGVtZW50LmgKaW5kZXggZTVkYTQyZS4uNDY4MTQ0MyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3FsaXRlL3N0YXRlbWVudC5oCisrKyBiL01vZHVsZXMvX3NxbGl0ZS9zdGF0ZW1lbnQuaApAQCAtNDYsOCArNDYsOCBAQAogaW50IHB5c3FsaXRlX3N0YXRlbWVudF9jcmVhdGUocHlzcWxpdGVfU3RhdGVtZW50KiBzZWxmLCBweXNxbGl0ZV9Db25uZWN0aW9uKiBjb25uZWN0aW9uLCBQeU9iamVjdCogc3FsKTsKIHZvaWQgcHlzcWxpdGVfc3RhdGVtZW50X2RlYWxsb2MocHlzcWxpdGVfU3RhdGVtZW50KiBzZWxmKTsKIAotaW50IHB5c3FsaXRlX3N0YXRlbWVudF9iaW5kX3BhcmFtZXRlcihweXNxbGl0ZV9TdGF0ZW1lbnQqIHNlbGYsIGludCBwb3MsIFB5T2JqZWN0KiBwYXJhbWV0ZXIsIGludCBhbGxvd184Yml0X2NoYXJzKTsKLXZvaWQgcHlzcWxpdGVfc3RhdGVtZW50X2JpbmRfcGFyYW1ldGVycyhweXNxbGl0ZV9TdGF0ZW1lbnQqIHNlbGYsIFB5T2JqZWN0KiBwYXJhbWV0ZXJzLCBpbnQgYWxsb3dfOGJpdF9jaGFycyk7CitpbnQgcHlzcWxpdGVfc3RhdGVtZW50X2JpbmRfcGFyYW1ldGVyKHB5c3FsaXRlX1N0YXRlbWVudCogc2VsZiwgaW50IHBvcywgUHlPYmplY3QqIHBhcmFtZXRlcik7Cit2b2lkIHB5c3FsaXRlX3N0YXRlbWVudF9iaW5kX3BhcmFtZXRlcnMocHlzcWxpdGVfU3RhdGVtZW50KiBzZWxmLCBQeU9iamVjdCogcGFyYW1ldGVycyk7CiAKIGludCBweXNxbGl0ZV9zdGF0ZW1lbnRfcmVjb21waWxlKHB5c3FsaXRlX1N0YXRlbWVudCogc2VsZiwgUHlPYmplY3QqIHBhcmFtZXRlcnMpOwogaW50IHB5c3FsaXRlX3N0YXRlbWVudF9maW5hbGl6ZShweXNxbGl0ZV9TdGF0ZW1lbnQqIHNlbGYpOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fc3JlLmMgYi9Nb2R1bGVzL19zcmUuYwppbmRleCA0NzJiNWEzLi45MjU0NDgwIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19zcmUuYworKysgYi9Nb2R1bGVzL19zcmUuYwpAQCAtMTYzLDIxICsxNjMsMTcgQEAKIAogLyogdW5pY29kZS1zcGVjaWZpYyBjaGFyYWN0ZXIgcHJlZGljYXRlcyAqLwogCi0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCi0KLSNkZWZpbmUgU1JFX1VOSV9JU19ESUdJVChjaCkgUHlfVU5JQ09ERV9JU0RFQ0lNQUwoKFB5X1VOSUNPREUpKGNoKSkKLSNkZWZpbmUgU1JFX1VOSV9JU19TUEFDRShjaCkgUHlfVU5JQ09ERV9JU1NQQUNFKChQeV9VTklDT0RFKShjaCkpCi0jZGVmaW5lIFNSRV9VTklfSVNfTElORUJSRUFLKGNoKSBQeV9VTklDT0RFX0lTTElORUJSRUFLKChQeV9VTklDT0RFKShjaCkpCi0jZGVmaW5lIFNSRV9VTklfSVNfQUxOVU0oY2gpIFB5X1VOSUNPREVfSVNBTE5VTSgoUHlfVU5JQ09ERSkoY2gpKQotI2RlZmluZSBTUkVfVU5JX0lTX1dPUkQoY2gpIChTUkVfVU5JX0lTX0FMTlVNKChjaCkpIHx8IChjaCkgPT0gJ18nKQorI2RlZmluZSBTUkVfVU5JX0lTX0RJR0lUKGNoKSBQeV9VTklDT0RFX0lTREVDSU1BTChjaCkKKyNkZWZpbmUgU1JFX1VOSV9JU19TUEFDRShjaCkgUHlfVU5JQ09ERV9JU1NQQUNFKGNoKQorI2RlZmluZSBTUkVfVU5JX0lTX0xJTkVCUkVBSyhjaCkgUHlfVU5JQ09ERV9JU0xJTkVCUkVBSyhjaCkKKyNkZWZpbmUgU1JFX1VOSV9JU19BTE5VTShjaCkgUHlfVU5JQ09ERV9JU0FMTlVNKGNoKQorI2RlZmluZSBTUkVfVU5JX0lTX1dPUkQoY2gpIChTUkVfVU5JX0lTX0FMTlVNKGNoKSB8fCAoY2gpID09ICdfJykKIAogc3RhdGljIHVuc2lnbmVkIGludCBzcmVfbG93ZXJfdW5pY29kZSh1bnNpZ25lZCBpbnQgY2gpCiB7Ci0gICAgcmV0dXJuICh1bnNpZ25lZCBpbnQpIFB5X1VOSUNPREVfVE9MT1dFUigoUHlfVU5JQ09ERSkoY2gpKTsKKyAgICByZXR1cm4gKHVuc2lnbmVkIGludCkgUHlfVU5JQ09ERV9UT0xPV0VSKGNoKTsKIH0KIAotI2VuZGlmCi0KIExPQ0FMKGludCkKIHNyZV9jYXRlZ29yeShTUkVfQ09ERSBjYXRlZ29yeSwgdW5zaWduZWQgaW50IGNoKQogewpAQCAtMjA1LDcgKzIwMSw2IEBACiAgICAgY2FzZSBTUkVfQ0FURUdPUllfTE9DX05PVF9XT1JEOgogICAgICAgICByZXR1cm4gIVNSRV9MT0NfSVNfV09SRChjaCk7CiAKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKICAgICBjYXNlIFNSRV9DQVRFR09SWV9VTklfRElHSVQ6CiAgICAgICAgIHJldHVybiBTUkVfVU5JX0lTX0RJR0lUKGNoKTsKICAgICBjYXNlIFNSRV9DQVRFR09SWV9VTklfTk9UX0RJR0lUOgpAQCAtMjIyLDI0ICsyMTcsNiBAQAogICAgICAgICByZXR1cm4gU1JFX1VOSV9JU19MSU5FQlJFQUsoY2gpOwogICAgIGNhc2UgU1JFX0NBVEVHT1JZX1VOSV9OT1RfTElORUJSRUFLOgogICAgICAgICByZXR1cm4gIVNSRV9VTklfSVNfTElORUJSRUFLKGNoKTsKLSNlbHNlCi0gICAgY2FzZSBTUkVfQ0FURUdPUllfVU5JX0RJR0lUOgotICAgICAgICByZXR1cm4gU1JFX0lTX0RJR0lUKGNoKTsKLSAgICBjYXNlIFNSRV9DQVRFR09SWV9VTklfTk9UX0RJR0lUOgotICAgICAgICByZXR1cm4gIVNSRV9JU19ESUdJVChjaCk7Ci0gICAgY2FzZSBTUkVfQ0FURUdPUllfVU5JX1NQQUNFOgotICAgICAgICByZXR1cm4gU1JFX0lTX1NQQUNFKGNoKTsKLSAgICBjYXNlIFNSRV9DQVRFR09SWV9VTklfTk9UX1NQQUNFOgotICAgICAgICByZXR1cm4gIVNSRV9JU19TUEFDRShjaCk7Ci0gICAgY2FzZSBTUkVfQ0FURUdPUllfVU5JX1dPUkQ6Ci0gICAgICAgIHJldHVybiBTUkVfTE9DX0lTX1dPUkQoY2gpOwotICAgIGNhc2UgU1JFX0NBVEVHT1JZX1VOSV9OT1RfV09SRDoKLSAgICAgICAgcmV0dXJuICFTUkVfTE9DX0lTX1dPUkQoY2gpOwotICAgIGNhc2UgU1JFX0NBVEVHT1JZX1VOSV9MSU5FQlJFQUs6Ci0gICAgICAgIHJldHVybiBTUkVfSVNfTElORUJSRUFLKGNoKTsKLSAgICBjYXNlIFNSRV9DQVRFR09SWV9VTklfTk9UX0xJTkVCUkVBSzoKLSAgICAgICAgcmV0dXJuICFTUkVfSVNfTElORUJSRUFLKGNoKTsKLSNlbmRpZgogICAgIH0KICAgICByZXR1cm4gMDsKIH0KQEAgLTI4MCw2ICsyNTcsNyBAQAogLyogZ2VuZXJhdGUgOC1iaXQgdmVyc2lvbiAqLwogCiAjZGVmaW5lIFNSRV9DSEFSIHVuc2lnbmVkIGNoYXIKKyNkZWZpbmUgU1JFX0NIQVJHRVQoc3RhdGUsIGJ1ZiwgaW5kZXgpICgodW5zaWduZWQgY2hhciopYnVmKVtpbmRleF0KICNkZWZpbmUgU1JFX0FUIHNyZV9hdAogI2RlZmluZSBTUkVfQ09VTlQgc3JlX2NvdW50CiAjZGVmaW5lIFNSRV9DSEFSU0VUIHNyZV9jaGFyc2V0CkBAIC0yODcsMTUgKzI2NSwxMSBAQAogI2RlZmluZSBTUkVfTUFUQ0ggc3JlX21hdGNoCiAjZGVmaW5lIFNSRV9NQVRDSF9DT05URVhUIHNyZV9tYXRjaF9jb250ZXh0CiAjZGVmaW5lIFNSRV9TRUFSQ0ggc3JlX3NlYXJjaAotI2RlZmluZSBTUkVfTElURVJBTF9URU1QTEFURSBzcmVfbGl0ZXJhbF90ZW1wbGF0ZQotCi0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAKICNkZWZpbmUgU1JFX1JFQ1VSU0lWRQogI2luY2x1ZGUgIl9zcmUuYyIKICN1bmRlZiBTUkVfUkVDVVJTSVZFCiAKLSN1bmRlZiBTUkVfTElURVJBTF9URU1QTEFURQogI3VuZGVmIFNSRV9TRUFSQ0gKICN1bmRlZiBTUkVfTUFUQ0gKICN1bmRlZiBTUkVfTUFUQ0hfQ09OVEVYVApAQCAtMzA0LDEwICsyNzgsMTUgQEAKICN1bmRlZiBTUkVfQ09VTlQKICN1bmRlZiBTUkVfQVQKICN1bmRlZiBTUkVfQ0hBUgorI3VuZGVmIFNSRV9DSEFSR0VUCiAKLS8qIGdlbmVyYXRlIDE2LWJpdCB1bmljb2RlIHZlcnNpb24gKi8KKy8qIGdlbmVyYXRlIDgvMTYvMzItYml0IHVuaWNvZGUgdmVyc2lvbiAqLwogCi0jZGVmaW5lIFNSRV9DSEFSIFB5X1VOSUNPREUKKyNkZWZpbmUgU1JFX0NIQVIgdm9pZAorI2RlZmluZSBTUkVfQ0hBUkdFVChzdGF0ZSwgYnVmLCBpbmRleCkgXAorICAgICgoc3RhdGUtPmNoYXJzaXplPT0xKSA/ICgoUHlfVUNTMSopYnVmKVtpbmRleF0gOiBcCisgICAgIChzdGF0ZS0+Y2hhcnNpemU9PTIpID8gKChQeV9VQ1MyKilidWYpW2luZGV4XSA6IFwKKyAgICAgKChQeV9VQ1M0KilidWYpW2luZGV4XSkKICNkZWZpbmUgU1JFX0FUIHNyZV91YXQKICNkZWZpbmUgU1JFX0NPVU5UIHNyZV91Y291bnQKICNkZWZpbmUgU1JFX0NIQVJTRVQgc3JlX3VjaGFyc2V0CkBAIC0zMTUsOCArMjk0LDYgQEAKICNkZWZpbmUgU1JFX01BVENIIHNyZV91bWF0Y2gKICNkZWZpbmUgU1JFX01BVENIX0NPTlRFWFQgc3JlX3VtYXRjaF9jb250ZXh0CiAjZGVmaW5lIFNSRV9TRUFSQ0ggc3JlX3VzZWFyY2gKLSNkZWZpbmUgU1JFX0xJVEVSQUxfVEVNUExBVEUgc3JlX3VsaXRlcmFsX3RlbXBsYXRlCi0jZW5kaWYKIAogI2VuZGlmIC8qIFNSRV9SRUNVUlNJVkUgKi8KIApAQCAtMzI3LDcgKzMwNCw3IEBACiAgICBzZXR0aW5ncyAqLwogCiBMT0NBTChpbnQpCi1TUkVfQVQoU1JFX1NUQVRFKiBzdGF0ZSwgU1JFX0NIQVIqIHB0ciwgU1JFX0NPREUgYXQpCitTUkVfQVQoU1JFX1NUQVRFKiBzdGF0ZSwgY2hhciogcHRyLCBTUkVfQ09ERSBhdCkKIHsKICAgICAvKiBjaGVjayBpZiBwb2ludGVyIGlzIGF0IGdpdmVuIHBvc2l0aW9uICovCiAKQEAgLTM0MSwxNiArMzE4LDE2IEBACiAKICAgICBjYXNlIFNSRV9BVF9CRUdJTk5JTkdfTElORToKICAgICAgICAgcmV0dXJuICgodm9pZCopIHB0ciA9PSBzdGF0ZS0+YmVnaW5uaW5nIHx8Ci0gICAgICAgICAgICAgICAgU1JFX0lTX0xJTkVCUkVBSygoaW50KSBwdHJbLTFdKSk7CisgICAgICAgICAgICAgICAgU1JFX0lTX0xJTkVCUkVBSygoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAtMSkpKTsKIAogICAgIGNhc2UgU1JFX0FUX0VORDoKLSAgICAgICAgcmV0dXJuICgoKHZvaWQqKSAocHRyKzEpID09IHN0YXRlLT5lbmQgJiYKLSAgICAgICAgICAgICAgICAgU1JFX0lTX0xJTkVCUkVBSygoaW50KSBwdHJbMF0pKSB8fAorICAgICAgICByZXR1cm4gKCgodm9pZCopIChwdHIrc3RhdGUtPmNoYXJzaXplKSA9PSBzdGF0ZS0+ZW5kICYmCisgICAgICAgICAgICAgICAgIFNSRV9JU19MSU5FQlJFQUsoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgMCkpKSB8fAogICAgICAgICAgICAgICAgICgodm9pZCopIHB0ciA9PSBzdGF0ZS0+ZW5kKSk7CiAKICAgICBjYXNlIFNSRV9BVF9FTkRfTElORToKICAgICAgICAgcmV0dXJuICgodm9pZCopIHB0ciA9PSBzdGF0ZS0+ZW5kIHx8Ci0gICAgICAgICAgICAgICAgU1JFX0lTX0xJTkVCUkVBSygoaW50KSBwdHJbMF0pKTsKKyAgICAgICAgICAgICAgICBTUkVfSVNfTElORUJSRUFLKChpbnQpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApKSk7CiAKICAgICBjYXNlIFNSRV9BVF9FTkRfU1RSSU5HOgogICAgICAgICByZXR1cm4gKCh2b2lkKikgcHRyID09IHN0YXRlLT5lbmQpOwpAQCAtMzU5LDU3ICszMzYsNTUgQEAKICAgICAgICAgaWYgKHN0YXRlLT5iZWdpbm5pbmcgPT0gc3RhdGUtPmVuZCkKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB0aGF0cCA9ICgodm9pZCopIHB0ciA+IHN0YXRlLT5iZWdpbm5pbmcpID8KLSAgICAgICAgICAgIFNSRV9JU19XT1JEKChpbnQpIHB0clstMV0pIDogMDsKKyAgICAgICAgICAgIFNSRV9JU19XT1JEKChpbnQpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIC0xKSkgOiAwOwogICAgICAgICB0aGlzcCA9ICgodm9pZCopIHB0ciA8IHN0YXRlLT5lbmQpID8KLSAgICAgICAgICAgIFNSRV9JU19XT1JEKChpbnQpIHB0clswXSkgOiAwOworICAgICAgICAgICAgU1JFX0lTX1dPUkQoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgMCkpIDogMDsKICAgICAgICAgcmV0dXJuIHRoaXNwICE9IHRoYXRwOwogCiAgICAgY2FzZSBTUkVfQVRfTk9OX0JPVU5EQVJZOgogICAgICAgICBpZiAoc3RhdGUtPmJlZ2lubmluZyA9PSBzdGF0ZS0+ZW5kKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIHRoYXRwID0gKCh2b2lkKikgcHRyID4gc3RhdGUtPmJlZ2lubmluZykgPwotICAgICAgICAgICAgU1JFX0lTX1dPUkQoKGludCkgcHRyWy0xXSkgOiAwOworICAgICAgICAgICAgU1JFX0lTX1dPUkQoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgLTEpKSA6IDA7CiAgICAgICAgIHRoaXNwID0gKCh2b2lkKikgcHRyIDwgc3RhdGUtPmVuZCkgPwotICAgICAgICAgICAgU1JFX0lTX1dPUkQoKGludCkgcHRyWzBdKSA6IDA7CisgICAgICAgICAgICBTUkVfSVNfV09SRCgoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkgOiAwOwogICAgICAgICByZXR1cm4gdGhpc3AgPT0gdGhhdHA7CiAKICAgICBjYXNlIFNSRV9BVF9MT0NfQk9VTkRBUlk6CiAgICAgICAgIGlmIChzdGF0ZS0+YmVnaW5uaW5nID09IHN0YXRlLT5lbmQpCiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgdGhhdHAgPSAoKHZvaWQqKSBwdHIgPiBzdGF0ZS0+YmVnaW5uaW5nKSA/Ci0gICAgICAgICAgICBTUkVfTE9DX0lTX1dPUkQoKGludCkgcHRyWy0xXSkgOiAwOworICAgICAgICAgICAgU1JFX0xPQ19JU19XT1JEKChpbnQpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIC0xKSkgOiAwOwogICAgICAgICB0aGlzcCA9ICgodm9pZCopIHB0ciA8IHN0YXRlLT5lbmQpID8KLSAgICAgICAgICAgIFNSRV9MT0NfSVNfV09SRCgoaW50KSBwdHJbMF0pIDogMDsKKyAgICAgICAgICAgIFNSRV9MT0NfSVNfV09SRCgoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkgOiAwOwogICAgICAgICByZXR1cm4gdGhpc3AgIT0gdGhhdHA7CiAKICAgICBjYXNlIFNSRV9BVF9MT0NfTk9OX0JPVU5EQVJZOgogICAgICAgICBpZiAoc3RhdGUtPmJlZ2lubmluZyA9PSBzdGF0ZS0+ZW5kKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIHRoYXRwID0gKCh2b2lkKikgcHRyID4gc3RhdGUtPmJlZ2lubmluZykgPwotICAgICAgICAgICAgU1JFX0xPQ19JU19XT1JEKChpbnQpIHB0clstMV0pIDogMDsKKyAgICAgICAgICAgIFNSRV9MT0NfSVNfV09SRCgoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAtMSkpIDogMDsKICAgICAgICAgdGhpc3AgPSAoKHZvaWQqKSBwdHIgPCBzdGF0ZS0+ZW5kKSA/Ci0gICAgICAgICAgICBTUkVfTE9DX0lTX1dPUkQoKGludCkgcHRyWzBdKSA6IDA7CisgICAgICAgICAgICBTUkVfTE9DX0lTX1dPUkQoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgMCkpIDogMDsKICAgICAgICAgcmV0dXJuIHRoaXNwID09IHRoYXRwOwogCi0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgY2FzZSBTUkVfQVRfVU5JX0JPVU5EQVJZOgogICAgICAgICBpZiAoc3RhdGUtPmJlZ2lubmluZyA9PSBzdGF0ZS0+ZW5kKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIHRoYXRwID0gKCh2b2lkKikgcHRyID4gc3RhdGUtPmJlZ2lubmluZykgPwotICAgICAgICAgICAgU1JFX1VOSV9JU19XT1JEKChpbnQpIHB0clstMV0pIDogMDsKKyAgICAgICAgICAgIFNSRV9VTklfSVNfV09SRCgoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAtMSkpIDogMDsKICAgICAgICAgdGhpc3AgPSAoKHZvaWQqKSBwdHIgPCBzdGF0ZS0+ZW5kKSA/Ci0gICAgICAgICAgICBTUkVfVU5JX0lTX1dPUkQoKGludCkgcHRyWzBdKSA6IDA7CisgICAgICAgICAgICBTUkVfVU5JX0lTX1dPUkQoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgMCkpIDogMDsKICAgICAgICAgcmV0dXJuIHRoaXNwICE9IHRoYXRwOwogCiAgICAgY2FzZSBTUkVfQVRfVU5JX05PTl9CT1VOREFSWToKICAgICAgICAgaWYgKHN0YXRlLT5iZWdpbm5pbmcgPT0gc3RhdGUtPmVuZCkKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB0aGF0cCA9ICgodm9pZCopIHB0ciA+IHN0YXRlLT5iZWdpbm5pbmcpID8KLSAgICAgICAgICAgIFNSRV9VTklfSVNfV09SRCgoaW50KSBwdHJbLTFdKSA6IDA7CisgICAgICAgICAgICBTUkVfVU5JX0lTX1dPUkQoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgLTEpKSA6IDA7CiAgICAgICAgIHRoaXNwID0gKCh2b2lkKikgcHRyIDwgc3RhdGUtPmVuZCkgPwotICAgICAgICAgICAgU1JFX1VOSV9JU19XT1JEKChpbnQpIHB0clswXSkgOiAwOworICAgICAgICAgICAgU1JFX1VOSV9JU19XT1JEKChpbnQpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApKSA6IDA7CiAgICAgICAgIHJldHVybiB0aGlzcCA9PSB0aGF0cDsKLSNlbmRpZgogCiAgICAgfQogCkBAIC00NzYsNyArNDUxLDcgQEAKICAgICAgICAgICAgIGNvdW50ID0gKihzZXQrKyk7CiAKICAgICAgICAgICAgIGlmIChzaXplb2YoU1JFX0NPREUpID09IDIpIHsKLSAgICAgICAgICAgICAgICBibG9jayA9ICgodW5zaWduZWQgY2hhciopc2V0KVtjaCA+PiA4XTsKKyAgICAgICAgICAgICAgICBibG9jayA9ICgoY2hhciopc2V0KVtjaCA+PiA4XTsKICAgICAgICAgICAgICAgICBzZXQgKz0gMTI4OwogICAgICAgICAgICAgICAgIGlmIChzZXRbYmxvY2sqMTYgKyAoKGNoICYgMjU1KT4+NCldICYgKDEgPDwgKGNoICYgMTUpKSkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9rOwpAQCAtNDg2LDcgKzQ2MSw3IEBACiAgICAgICAgICAgICAgICAgLyogIShjICYgfk4pID09IChjIDwgTisxKSBmb3IgYW55IHVuc2lnbmVkIGMsIHRoaXMgYXZvaWRzCiAgICAgICAgICAgICAgICAgICogd2FybmluZ3Mgd2hlbiBjJ3MgdHlwZSBzdXBwb3J0cyBvbmx5IG51bWJlcnMgPCBOKzEgKi8KICAgICAgICAgICAgICAgICBpZiAoIShjaCAmIH42NTUzNSkpCi0gICAgICAgICAgICAgICAgICAgIGJsb2NrID0gKCh1bnNpZ25lZCBjaGFyKilzZXQpW2NoID4+IDhdOworICAgICAgICAgICAgICAgICAgICBibG9jayA9ICgoY2hhciopc2V0KVtjaCA+PiA4XTsKICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgIGJsb2NrID0gLTE7CiAgICAgICAgICAgICAgICAgc2V0ICs9IDY0OwpAQCAtNTEyLDI4ICs0ODcsMjkgQEAKIFNSRV9DT1VOVChTUkVfU1RBVEUqIHN0YXRlLCBTUkVfQ09ERSogcGF0dGVybiwgUHlfc3NpemVfdCBtYXhjb3VudCkKIHsKICAgICBTUkVfQ09ERSBjaHI7Ci0gICAgU1JFX0NIQVIqIHB0ciA9IChTUkVfQ0hBUiAqKXN0YXRlLT5wdHI7Ci0gICAgU1JFX0NIQVIqIGVuZCA9IChTUkVfQ0hBUiAqKXN0YXRlLT5lbmQ7CisgICAgY2hhciogcHRyID0gKGNoYXIgKilzdGF0ZS0+cHRyOworICAgIGNoYXIqIGVuZCA9IChjaGFyICopc3RhdGUtPmVuZDsKICAgICBQeV9zc2l6ZV90IGk7CiAKICAgICAvKiBhZGp1c3QgZW5kICovCiAgICAgaWYgKG1heGNvdW50IDwgZW5kIC0gcHRyICYmIG1heGNvdW50ICE9IDY1NTM1KQotICAgICAgICBlbmQgPSBwdHIgKyBtYXhjb3VudDsKKyAgICAgICAgZW5kID0gcHRyICsgbWF4Y291bnQqc3RhdGUtPmNoYXJzaXplOwogCiAgICAgc3dpdGNoIChwYXR0ZXJuWzBdKSB7CiAKICAgICBjYXNlIFNSRV9PUF9JTjoKICAgICAgICAgLyogcmVwZWF0ZWQgc2V0ICovCiAgICAgICAgIFRSQUNFKCgifCVwfCVwfENPVU5UIElOXG4iLCBwYXR0ZXJuLCBwdHIpKTsKLSAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiBTUkVfQ0hBUlNFVChwYXR0ZXJuICsgMiwgKnB0cikpCi0gICAgICAgICAgICBwdHIrKzsKKyAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJgorICAgICAgICAgICAgICAgU1JFX0NIQVJTRVQocGF0dGVybiArIDIsIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApKSkKKyAgICAgICAgICAgIHB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBTUkVfT1BfQU5ZOgogICAgICAgICAvKiByZXBlYXRlZCBkb3Qgd2lsZGNhcmQuICovCiAgICAgICAgIFRSQUNFKCgifCVwfCVwfENPVU5UIEFOWVxuIiwgcGF0dGVybiwgcHRyKSk7Ci0gICAgICAgIHdoaWxlIChwdHIgPCBlbmQgJiYgIVNSRV9JU19MSU5FQlJFQUsoKnB0cikpCi0gICAgICAgICAgICBwdHIrKzsKKyAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAhU1JFX0lTX0xJTkVCUkVBSyhTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkpCisgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICBicmVhazsKIAogICAgIGNhc2UgU1JFX09QX0FOWV9BTEw6CkBAIC01NDcsMzggKzUyMywzOCBAQAogICAgICAgICAvKiByZXBlYXRlZCBsaXRlcmFsICovCiAgICAgICAgIGNociA9IHBhdHRlcm5bMV07CiAgICAgICAgIFRSQUNFKCgifCVwfCVwfENPVU5UIExJVEVSQUwgJWRcbiIsIHBhdHRlcm4sIHB0ciwgY2hyKSk7Ci0gICAgICAgIHdoaWxlIChwdHIgPCBlbmQgJiYgKFNSRV9DT0RFKSAqcHRyID09IGNocikKLSAgICAgICAgICAgIHB0cisrOworICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmIChTUkVfQ09ERSkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgMCkgPT0gY2hyKQorICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIFNSRV9PUF9MSVRFUkFMX0lHTk9SRToKICAgICAgICAgLyogcmVwZWF0ZWQgbGl0ZXJhbCAqLwogICAgICAgICBjaHIgPSBwYXR0ZXJuWzFdOwogICAgICAgICBUUkFDRSgoInwlcHwlcHxDT1VOVCBMSVRFUkFMX0lHTk9SRSAlZFxuIiwgcGF0dGVybiwgcHRyLCBjaHIpKTsKLSAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAoU1JFX0NPREUpIHN0YXRlLT5sb3dlcigqcHRyKSA9PSBjaHIpCi0gICAgICAgICAgICBwdHIrKzsKKyAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAoU1JFX0NPREUpIHN0YXRlLT5sb3dlcihTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkgPT0gY2hyKQorICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIFNSRV9PUF9OT1RfTElURVJBTDoKICAgICAgICAgLyogcmVwZWF0ZWQgbm9uLWxpdGVyYWwgKi8KICAgICAgICAgY2hyID0gcGF0dGVyblsxXTsKICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8Q09VTlQgTk9UX0xJVEVSQUwgJWRcbiIsIHBhdHRlcm4sIHB0ciwgY2hyKSk7Ci0gICAgICAgIHdoaWxlIChwdHIgPCBlbmQgJiYgKFNSRV9DT0RFKSAqcHRyICE9IGNocikKLSAgICAgICAgICAgIHB0cisrOworICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmIChTUkVfQ09ERSkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgMCkgIT0gY2hyKQorICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIFNSRV9PUF9OT1RfTElURVJBTF9JR05PUkU6CiAgICAgICAgIC8qIHJlcGVhdGVkIG5vbi1saXRlcmFsICovCiAgICAgICAgIGNociA9IHBhdHRlcm5bMV07CiAgICAgICAgIFRSQUNFKCgifCVwfCVwfENPVU5UIE5PVF9MSVRFUkFMX0lHTk9SRSAlZFxuIiwgcGF0dGVybiwgcHRyLCBjaHIpKTsKLSAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAoU1JFX0NPREUpIHN0YXRlLT5sb3dlcigqcHRyKSAhPSBjaHIpCi0gICAgICAgICAgICBwdHIrKzsKKyAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAoU1JFX0NPREUpIHN0YXRlLT5sb3dlcihTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkgIT0gY2hyKQorICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgYnJlYWs7CiAKICAgICBkZWZhdWx0OgogICAgICAgICAvKiByZXBlYXRlZCBzaW5nbGUgY2hhcmFjdGVyIHBhdHRlcm4gKi8KICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8Q09VTlQgU1VCUEFUVEVSTlxuIiwgcGF0dGVybiwgcHRyKSk7Ci0gICAgICAgIHdoaWxlICgoU1JFX0NIQVIqKSBzdGF0ZS0+cHRyIDwgZW5kKSB7CisgICAgICAgIHdoaWxlICgoY2hhciopIHN0YXRlLT5wdHIgPCBlbmQpIHsKICAgICAgICAgICAgIGkgPSBTUkVfTUFUQ0goc3RhdGUsIHBhdHRlcm4pOwogICAgICAgICAgICAgaWYgKGkgPCAwKQogICAgICAgICAgICAgICAgIHJldHVybiBpOwpAQCAtNTg2LDEyICs1NjIsMTIgQEAKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICBUUkFDRSgoInwlcHwlcHxDT1VOVCAlZFxuIiwgcGF0dGVybiwgcHRyLAotICAgICAgICAgICAgICAgKFNSRV9DSEFSKikgc3RhdGUtPnB0ciAtIHB0cikpOwotICAgICAgICByZXR1cm4gKFNSRV9DSEFSKikgc3RhdGUtPnB0ciAtIHB0cjsKKyAgICAgICAgICAgICAgICgoY2hhciopc3RhdGUtPnB0ciAtIHB0cikvc3RhdGUtPmNoYXJzaXplKSk7CisgICAgICAgIHJldHVybiAoKGNoYXIqKXN0YXRlLT5wdHIgLSBwdHIpL3N0YXRlLT5jaGFyc2l6ZTsKICAgICB9CiAKLSAgICBUUkFDRSgoInwlcHwlcHxDT1VOVCAlZFxuIiwgcGF0dGVybiwgcHRyLCBwdHIgLSAoU1JFX0NIQVIqKSBzdGF0ZS0+cHRyKSk7Ci0gICAgcmV0dXJuIHB0ciAtIChTUkVfQ0hBUiopIHN0YXRlLT5wdHI7CisgICAgVFJBQ0UoKCJ8JXB8JXB8Q09VTlQgJWRcbiIsIHBhdHRlcm4sIHB0ciwgKHB0ciAtIChjaGFyKikgc3RhdGUtPnB0cikvc3RhdGUtPmNoYXJzaXplKSk7CisgICAgcmV0dXJuIChwdHIgLSAoY2hhciopIHN0YXRlLT5wdHIpL3N0YXRlLT5jaGFyc2l6ZTsKIH0KIAogI2lmIDAgLyogbm90IHVzZWQgaW4gdGhpcyByZWxlYXNlICovCkBAIC02MDIsOCArNTc4LDggQEAKICAgICAgICByZXR1cm5zIHRoZSBudW1iZXIgb2YgU1JFX0NPREUgb2JqZWN0cyB0byBza2lwIGlmIHN1Y2Nlc3NmdWwsIDAKICAgICAgICBpZiBubyBtYXRjaCAqLwogCi0gICAgU1JFX0NIQVIqIGVuZCA9IHN0YXRlLT5lbmQ7Ci0gICAgU1JFX0NIQVIqIHB0ciA9IHN0YXRlLT5wdHI7CisgICAgY2hhciogZW5kID0gc3RhdGUtPmVuZDsKKyAgICBjaGFyKiBwdHIgPSBzdGF0ZS0+cHRyOwogICAgIFB5X3NzaXplX3QgaTsKIAogICAgIC8qIGNoZWNrIG1pbmltYWwgbGVuZ3RoICovCkBAIC02MTQsNyArNTkwLDcgQEAKICAgICBpZiAocGF0dGVyblsyXSAmIFNSRV9JTkZPX1BSRUZJWCAmJiBwYXR0ZXJuWzVdID4gMSkgewogICAgICAgICAvKiA8bGVuZ3RoPiA8c2tpcD4gPHByZWZpeCBkYXRhPiA8b3ZlcmxhcCBkYXRhPiAqLwogICAgICAgICBmb3IgKGkgPSAwOyBpIDwgcGF0dGVybls1XTsgaSsrKQotICAgICAgICAgICAgaWYgKChTUkVfQ09ERSkgcHRyW2ldICE9IHBhdHRlcm5bNyArIGldKQorICAgICAgICAgICAgaWYgKChTUkVfQ09ERSkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgaSkgIT0gcGF0dGVybls3ICsgaV0pCiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIHJldHVybiBwYXR0ZXJuWzBdICsgMiAqIHBhdHRlcm5bNl07CiAgICAgfQpAQCAtNzgzLDcgKzc1OSw3IEBACiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgUHlfc3NpemVfdCBsYXN0X2N0eF9wb3M7CiAgICAgUHlfc3NpemVfdCBqdW1wOwotICAgIFNSRV9DSEFSKiBwdHI7CisgICAgY2hhciogcHRyOwogICAgIFNSRV9DT0RFKiBwYXR0ZXJuOwogICAgIFB5X3NzaXplX3QgY291bnQ7CiAgICAgUHlfc3NpemVfdCBsYXN0bWFyazsKQEAgLTc5OSw3ICs3NzUsNyBAQAogTE9DQUwoUHlfc3NpemVfdCkKIFNSRV9NQVRDSChTUkVfU1RBVEUqIHN0YXRlLCBTUkVfQ09ERSogcGF0dGVybikKIHsKLSAgICBTUkVfQ0hBUiogZW5kID0gKFNSRV9DSEFSICopc3RhdGUtPmVuZDsKKyAgICBjaGFyKiBlbmQgPSAoY2hhciopc3RhdGUtPmVuZDsKICAgICBQeV9zc2l6ZV90IGFsbG9jX3BvcywgY3R4X3BvcyA9IC0xOwogICAgIFB5X3NzaXplX3QgaSwgcmV0ID0gMDsKICAgICBQeV9zc2l6ZV90IGp1bXA7CkBAIC04MTgsMTIgKzc5NCwxMiBAQAogCiBlbnRyYW5jZToKIAotICAgIGN0eC0+cHRyID0gKFNSRV9DSEFSICopc3RhdGUtPnB0cjsKKyAgICBjdHgtPnB0ciA9IChjaGFyICopc3RhdGUtPnB0cjsKIAogICAgIGlmIChjdHgtPnBhdHRlcm5bMF0gPT0gU1JFX09QX0lORk8pIHsKICAgICAgICAgLyogb3B0aW1pemF0aW9uIGluZm8gYmxvY2sgKi8KICAgICAgICAgLyogPElORk8+IDwxPXNraXA+IDwyPWZsYWdzPiA8Mz1taW4+IC4uLiAqLwotICAgICAgICBpZiAoY3R4LT5wYXR0ZXJuWzNdICYmIChlbmQgLSBjdHgtPnB0cikgPCBjdHgtPnBhdHRlcm5bM10pIHsKKyAgICAgICAgaWYgKGN0eC0+cGF0dGVyblszXSAmJiAoZW5kIC0gY3R4LT5wdHIpL3N0YXRlLT5jaGFyc2l6ZSA8IGN0eC0+cGF0dGVyblszXSkgewogICAgICAgICAgICAgVFJBQ0UoKCJyZWplY3QgKGdvdCAlZCBjaGFycywgbmVlZCAlZClcbiIsCiAgICAgICAgICAgICAgICAgICAgKGVuZCAtIGN0eC0+cHRyKSwgY3R4LT5wYXR0ZXJuWzNdKSk7CiAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKQEAgLTg2NSwxMCArODQxLDEwIEBACiAgICAgICAgICAgICAvKiA8TElURVJBTD4gPGNvZGU+ICovCiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxMSVRFUkFMICVkXG4iLCBjdHgtPnBhdHRlcm4sCiAgICAgICAgICAgICAgICAgICAgY3R4LT5wdHIsICpjdHgtPnBhdHRlcm4pKTsKLSAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwgKFNSRV9DT0RFKSBjdHgtPnB0clswXSAhPSBjdHgtPnBhdHRlcm5bMF0pCisgICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8IChTUkVfQ09ERSkgU1JFX0NIQVJHRVQoc3RhdGUsIGN0eC0+cHRyLCAwKSAhPSBjdHgtPnBhdHRlcm5bMF0pCiAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CiAgICAgICAgICAgICBjdHgtPnBhdHRlcm4rKzsKLSAgICAgICAgICAgIGN0eC0+cHRyKys7CisgICAgICAgICAgICBjdHgtPnB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIFNSRV9PUF9OT1RfTElURVJBTDoKQEAgLTg3NiwxMCArODUyLDEwIEBACiAgICAgICAgICAgICAvKiA8Tk9UX0xJVEVSQUw+IDxjb2RlPiAqLwogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8Tk9UX0xJVEVSQUwgJWRcbiIsIGN0eC0+cGF0dGVybiwKICAgICAgICAgICAgICAgICAgICBjdHgtPnB0ciwgKmN0eC0+cGF0dGVybikpOwotICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fCAoU1JFX0NPREUpIGN0eC0+cHRyWzBdID09IGN0eC0+cGF0dGVyblswXSkKKyAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwgKFNSRV9DT0RFKSBTUkVfQ0hBUkdFVChzdGF0ZSwgY3R4LT5wdHIsIDApID09IGN0eC0+cGF0dGVyblswXSkKICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKICAgICAgICAgICAgIGN0eC0+cGF0dGVybisrOwotICAgICAgICAgICAgY3R4LT5wdHIrKzsKKyAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgU1JFX09QX1NVQ0NFU1M6CkBAIC05MDIsMTkgKzg3OCwxOSBAQAogICAgICAgICAgICAgLyogPENBVEVHT1JZPiA8Y29kZT4gKi8KICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfENBVEVHT1JZICVkXG4iLCBjdHgtPnBhdHRlcm4sCiAgICAgICAgICAgICAgICAgICAgY3R4LT5wdHIsICpjdHgtPnBhdHRlcm4pKTsKLSAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwgIXNyZV9jYXRlZ29yeShjdHgtPnBhdHRlcm5bMF0sIGN0eC0+cHRyWzBdKSkKKyAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwgIXNyZV9jYXRlZ29yeShjdHgtPnBhdHRlcm5bMF0sIFNSRV9DSEFSR0VUKHN0YXRlLCBjdHgtPnB0ciwgMCkpKQogICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwogICAgICAgICAgICAgY3R4LT5wYXR0ZXJuKys7Ci0gICAgICAgICAgICBjdHgtPnB0cisrOworICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBTUkVfT1BfQU5ZOgogICAgICAgICAgICAgLyogbWF0Y2ggYW55dGhpbmcgKGV4Y2VwdCBhIG5ld2xpbmUpICovCiAgICAgICAgICAgICAvKiA8QU5ZPiAqLwogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8QU5ZXG4iLCBjdHgtPnBhdHRlcm4sIGN0eC0+cHRyKSk7Ci0gICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8IFNSRV9JU19MSU5FQlJFQUsoY3R4LT5wdHJbMF0pKQotICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwotICAgICAgICAgICAgY3R4LT5wdHIrKzsKKyAgICAgICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8IFNSRV9JU19MSU5FQlJFQUsoU1JFX0NIQVJHRVQoc3RhdGUsIGN0eC0+cHRyLCAwKSkpCisgICAgICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOworICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBTUkVfT1BfQU5ZX0FMTDoKQEAgLTkyMyw0NyArODk5LDQ3IEBACiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxBTllfQUxMXG4iLCBjdHgtPnBhdHRlcm4sIGN0eC0+cHRyKSk7CiAgICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kKQogICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwotICAgICAgICAgICAgY3R4LT5wdHIrKzsKKyAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgU1JFX09QX0lOOgogICAgICAgICAgICAgLyogbWF0Y2ggc2V0IG1lbWJlciAob3Igbm9uX21lbWJlcikgKi8KICAgICAgICAgICAgIC8qIDxJTj4gPHNraXA+IDxzZXQ+ICovCiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxJTlxuIiwgY3R4LT5wYXR0ZXJuLCBjdHgtPnB0cikpOwotICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fCAhU1JFX0NIQVJTRVQoY3R4LT5wYXR0ZXJuICsgMSwgKmN0eC0+cHRyKSkKLSAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKKyAgICAgICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8ICFTUkVfQ0hBUlNFVChjdHgtPnBhdHRlcm4gKyAxLCBTUkVfQ0hBUkdFVChzdGF0ZSwgY3R4LT5wdHIsIDApKSkKKyAgICAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CiAgICAgICAgICAgICBjdHgtPnBhdHRlcm4gKz0gY3R4LT5wYXR0ZXJuWzBdOwotICAgICAgICAgICAgY3R4LT5wdHIrKzsKKyAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgU1JFX09QX0xJVEVSQUxfSUdOT1JFOgogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8TElURVJBTF9JR05PUkUgJWRcbiIsCiAgICAgICAgICAgICAgICAgICAgY3R4LT5wYXR0ZXJuLCBjdHgtPnB0ciwgY3R4LT5wYXR0ZXJuWzBdKSk7CiAgICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8Ci0gICAgICAgICAgICAgICAgc3RhdGUtPmxvd2VyKCpjdHgtPnB0cikgIT0gc3RhdGUtPmxvd2VyKCpjdHgtPnBhdHRlcm4pKQorICAgICAgICAgICAgICAgIHN0YXRlLT5sb3dlcihTUkVfQ0hBUkdFVChzdGF0ZSwgY3R4LT5wdHIsIDApKSAhPSBzdGF0ZS0+bG93ZXIoKmN0eC0+cGF0dGVybikpCiAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CiAgICAgICAgICAgICBjdHgtPnBhdHRlcm4rKzsKLSAgICAgICAgICAgIGN0eC0+cHRyKys7CisgICAgICAgICAgICBjdHgtPnB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIFNSRV9PUF9OT1RfTElURVJBTF9JR05PUkU6CiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxOT1RfTElURVJBTF9JR05PUkUgJWRcbiIsCiAgICAgICAgICAgICAgICAgICAgY3R4LT5wYXR0ZXJuLCBjdHgtPnB0ciwgKmN0eC0+cGF0dGVybikpOwogICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fAotICAgICAgICAgICAgICAgIHN0YXRlLT5sb3dlcigqY3R4LT5wdHIpID09IHN0YXRlLT5sb3dlcigqY3R4LT5wYXR0ZXJuKSkKKyAgICAgICAgICAgICAgICBzdGF0ZS0+bG93ZXIoU1JFX0NIQVJHRVQoc3RhdGUsIGN0eC0+cHRyLCAwKSkgPT0gc3RhdGUtPmxvd2VyKCpjdHgtPnBhdHRlcm4pKQogICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwogICAgICAgICAgICAgY3R4LT5wYXR0ZXJuKys7Ci0gICAgICAgICAgICBjdHgtPnB0cisrOworICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBTUkVfT1BfSU5fSUdOT1JFOgogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8SU5fSUdOT1JFXG4iLCBjdHgtPnBhdHRlcm4sIGN0eC0+cHRyKSk7CiAgICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kCiAgICAgICAgICAgICAgICAgfHwgIVNSRV9DSEFSU0VUKGN0eC0+cGF0dGVybisxLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoU1JFX0NPREUpc3RhdGUtPmxvd2VyKCpjdHgtPnB0cikpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoU1JFX0NPREUpc3RhdGUtPmxvd2VyKFNSRV9DSEFSR0VUKHN0YXRlLCBjdHgtPnB0ciwgMCkpKSkKICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKICAgICAgICAgICAgIGN0eC0+cGF0dGVybiArPSBjdHgtPnBhdHRlcm5bMF07Ci0gICAgICAgICAgICBjdHgtPnB0cisrOworICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBTUkVfT1BfSlVNUDoKQEAgLTk4NiwxMSArOTYyLDExIEBACiAgICAgICAgICAgICBmb3IgKDsgY3R4LT5wYXR0ZXJuWzBdOyBjdHgtPnBhdHRlcm4gKz0gY3R4LT5wYXR0ZXJuWzBdKSB7CiAgICAgICAgICAgICAgICAgaWYgKGN0eC0+cGF0dGVyblsxXSA9PSBTUkVfT1BfTElURVJBTCAmJgogICAgICAgICAgICAgICAgICAgICAoY3R4LT5wdHIgPj0gZW5kIHx8Ci0gICAgICAgICAgICAgICAgICAgICAoU1JFX0NPREUpICpjdHgtPnB0ciAhPSBjdHgtPnBhdHRlcm5bMl0pKQorICAgICAgICAgICAgICAgICAgICAgKFNSRV9DT0RFKSBTUkVfQ0hBUkdFVChzdGF0ZSwgY3R4LT5wdHIsIDApICE9IGN0eC0+cGF0dGVyblsyXSkpCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIGlmIChjdHgtPnBhdHRlcm5bMV0gPT0gU1JFX09QX0lOICYmCiAgICAgICAgICAgICAgICAgICAgIChjdHgtPnB0ciA+PSBlbmQgfHwKLSAgICAgICAgICAgICAgICAgICAgICFTUkVfQ0hBUlNFVChjdHgtPnBhdHRlcm4gKyAzLCAoU1JFX0NPREUpICpjdHgtPnB0cikpKQorICAgICAgICAgICAgICAgICAgICAgIVNSRV9DSEFSU0VUKGN0eC0+cGF0dGVybiArIDMsIChTUkVfQ09ERSkgU1JFX0NIQVJHRVQoc3RhdGUsIGN0eC0+cHRyLCAwKSkpKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICBzdGF0ZS0+cHRyID0gY3R4LT5wdHI7CiAgICAgICAgICAgICAgICAgRE9fSlVNUChKVU1QX0JSQU5DSCwganVtcF9icmFuY2gsIGN0eC0+cGF0dGVybisxKTsKQEAgLTEwMjEsNyArOTk3LDcgQEAKICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfFJFUEVBVF9PTkUgJWQgJWRcbiIsIGN0eC0+cGF0dGVybiwgY3R4LT5wdHIsCiAgICAgICAgICAgICAgICAgICAgY3R4LT5wYXR0ZXJuWzFdLCBjdHgtPnBhdHRlcm5bMl0pKTsKIAotICAgICAgICAgICAgaWYgKGN0eC0+cHRyICsgY3R4LT5wYXR0ZXJuWzFdID4gZW5kKQorICAgICAgICAgICAgaWYgKGN0eC0+cHRyICsgc3RhdGUtPmNoYXJzaXplICogY3R4LT5wYXR0ZXJuWzFdID4gZW5kKQogICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOyAvKiBjYW5ub3QgbWF0Y2ggKi8KIAogICAgICAgICAgICAgc3RhdGUtPnB0ciA9IGN0eC0+cHRyOwpAQCAtMTAzMCw3ICsxMDA2LDcgQEAKICAgICAgICAgICAgIFJFVFVSTl9PTl9FUlJPUihyZXQpOwogICAgICAgICAgICAgREFUQV9MT09LVVBfQVQoU1JFX01BVENIX0NPTlRFWFQsIGN0eCwgY3R4X3Bvcyk7CiAgICAgICAgICAgICBjdHgtPmNvdW50ID0gcmV0OwotICAgICAgICAgICAgY3R4LT5wdHIgKz0gY3R4LT5jb3VudDsKKyAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZSAqIGN0eC0+Y291bnQ7CiAKICAgICAgICAgICAgIC8qIHdoZW4gd2UgYXJyaXZlIGhlcmUsIGNvdW50IGNvbnRhaW5zIHRoZSBudW1iZXIgb2YKICAgICAgICAgICAgICAgIG1hdGNoZXMsIGFuZCBjdHgtPnB0ciBwb2ludHMgdG8gdGhlIHRhaWwgb2YgdGhlIHRhcmdldApAQCAtMTA1NCw4ICsxMDMwLDkgQEAKICAgICAgICAgICAgICAgICBjdHgtPnUuY2hyID0gY3R4LT5wYXR0ZXJuW2N0eC0+cGF0dGVyblswXSsxXTsKICAgICAgICAgICAgICAgICBmb3IgKDs7KSB7CiAgICAgICAgICAgICAgICAgICAgIHdoaWxlIChjdHgtPmNvdW50ID49IChQeV9zc2l6ZV90KSBjdHgtPnBhdHRlcm5bMV0gJiYKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIChjdHgtPnB0ciA+PSBlbmQgfHwgKmN0eC0+cHRyICE9IGN0eC0+dS5jaHIpKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBjdHgtPnB0ci0tOworICAgICAgICAgICAgICAgICAgICAgICAgICAgKGN0eC0+cHRyID49IGVuZCB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSRV9DSEFSR0VUKHN0YXRlLCBjdHgtPnB0ciwgMCkgIT0gY3R4LT51LmNocikpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyIC09IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgICAgICAgICAgICAgIGN0eC0+Y291bnQtLTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBpZiAoY3R4LT5jb3VudCA8IChQeV9zc2l6ZV90KSBjdHgtPnBhdHRlcm5bMV0pCkBAIC0xMDcwLDcgKzEwNDcsNyBAQAogCiAgICAgICAgICAgICAgICAgICAgIExBU1RNQVJLX1JFU1RPUkUoKTsKIAotICAgICAgICAgICAgICAgICAgICBjdHgtPnB0ci0tOworICAgICAgICAgICAgICAgICAgICBjdHgtPnB0ciAtPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICAgICAgICAgIGN0eC0+Y291bnQtLTsKICAgICAgICAgICAgICAgICB9CiAKQEAgLTEwODQsNyArMTA2MSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBSRVRVUk5fT05fRVJST1IocmV0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIFJFVFVSTl9TVUNDRVNTOwogICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyLS07CisgICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyIC09IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgICAgICAgICAgY3R4LT5jb3VudC0tOwogICAgICAgICAgICAgICAgICAgICBMQVNUTUFSS19SRVNUT1JFKCk7CiAgICAgICAgICAgICAgICAgfQpAQCAtMTEwNCw3ICsxMDgxLDcgQEAKICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfE1JTl9SRVBFQVRfT05FICVkICVkXG4iLCBjdHgtPnBhdHRlcm4sIGN0eC0+cHRyLAogICAgICAgICAgICAgICAgICAgIGN0eC0+cGF0dGVyblsxXSwgY3R4LT5wYXR0ZXJuWzJdKSk7CiAKLSAgICAgICAgICAgIGlmIChjdHgtPnB0ciArIGN0eC0+cGF0dGVyblsxXSA+IGVuZCkKKyAgICAgICAgICAgIGlmIChjdHgtPnB0ciArIHN0YXRlLT5jaGFyc2l6ZSAqIGN0eC0+cGF0dGVyblsxXSA+IGVuZCkKICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsgLyogY2Fubm90IG1hdGNoICovCiAKICAgICAgICAgICAgIHN0YXRlLT5wdHIgPSBjdHgtPnB0cjsKQEAgLTExMjEsNyArMTA5OCw3IEBACiAgICAgICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwogICAgICAgICAgICAgICAgIC8qIGFkdmFuY2UgcGFzdCBtaW5pbXVtIG1hdGNoZXMgb2YgcmVwZWF0ICovCiAgICAgICAgICAgICAgICAgY3R4LT5jb3VudCA9IHJldDsKLSAgICAgICAgICAgICAgICBjdHgtPnB0ciArPSBjdHgtPmNvdW50OworICAgICAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZSAqIGN0eC0+Y291bnQ7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGlmIChjdHgtPnBhdHRlcm5bY3R4LT5wYXR0ZXJuWzBdXSA9PSBTUkVfT1BfU1VDQ0VTUykgewpAQCAtMTE0OCw3ICsxMTI1LDcgQEAKICAgICAgICAgICAgICAgICAgICAgaWYgKHJldCA9PSAwKQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgIGFzc2VydChyZXQgPT0gMSk7Ci0gICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyKys7CisgICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgICAgICAgICAgY3R4LT5jb3VudCsrOwogICAgICAgICAgICAgICAgICAgICBMQVNUTUFSS19SRVNUT1JFKCk7CiAgICAgICAgICAgICAgICAgfQpAQCAtMTMyMCwxNCArMTI5NywxNiBAQAogICAgICAgICAgICAgICAgIGlmIChncm91cHJlZiA+PSBzdGF0ZS0+bGFzdG1hcmspIHsKICAgICAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgU1JFX0NIQVIqIHAgPSAoU1JFX0NIQVIqKSBzdGF0ZS0+bWFya1tncm91cHJlZl07Ci0gICAgICAgICAgICAgICAgICAgIFNSRV9DSEFSKiBlID0gKFNSRV9DSEFSKikgc3RhdGUtPm1hcmtbZ3JvdXByZWYrMV07CisgICAgICAgICAgICAgICAgICAgIGNoYXIqIHAgPSAoY2hhciopIHN0YXRlLT5tYXJrW2dyb3VwcmVmXTsKKyAgICAgICAgICAgICAgICAgICAgY2hhciogZSA9IChjaGFyKikgc3RhdGUtPm1hcmtbZ3JvdXByZWYrMV07CiAgICAgICAgICAgICAgICAgICAgIGlmICghcCB8fCAhZSB8fCBlIDwgcCkKICAgICAgICAgICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwogICAgICAgICAgICAgICAgICAgICB3aGlsZSAocCA8IGUpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwgKmN0eC0+cHRyICE9ICpwKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSRV9DSEFSR0VUKHN0YXRlLCBjdHgtPnB0ciwgMCkgIT0gU1JFX0NIQVJHRVQoc3RhdGUsIHAsIDApKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwotICAgICAgICAgICAgICAgICAgICAgICAgcCsrOyBjdHgtPnB0cisrOworICAgICAgICAgICAgICAgICAgICAgICAgcCArPSBzdGF0ZS0+Y2hhcnNpemU7CisgICAgICAgICAgICAgICAgICAgICAgICBjdHgtPnB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CkBAIC0xMzQ0LDE1ICsxMzIzLDE2IEBACiAgICAgICAgICAgICAgICAgaWYgKGdyb3VwcmVmID49IHN0YXRlLT5sYXN0bWFyaykgewogICAgICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgICAgICBTUkVfQ0hBUiogcCA9IChTUkVfQ0hBUiopIHN0YXRlLT5tYXJrW2dyb3VwcmVmXTsKLSAgICAgICAgICAgICAgICAgICAgU1JFX0NIQVIqIGUgPSAoU1JFX0NIQVIqKSBzdGF0ZS0+bWFya1tncm91cHJlZisxXTsKKyAgICAgICAgICAgICAgICAgICAgY2hhciogcCA9IChjaGFyKikgc3RhdGUtPm1hcmtbZ3JvdXByZWZdOworICAgICAgICAgICAgICAgICAgICBjaGFyKiBlID0gKGNoYXIqKSBzdGF0ZS0+bWFya1tncm91cHJlZisxXTsKICAgICAgICAgICAgICAgICAgICAgaWYgKCFwIHx8ICFlIHx8IGUgPCBwKQogICAgICAgICAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CiAgICAgICAgICAgICAgICAgICAgIHdoaWxlIChwIDwgZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLT5sb3dlcigqY3R4LT5wdHIpICE9IHN0YXRlLT5sb3dlcigqcCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUtPmxvd2VyKFNSRV9DSEFSR0VUKHN0YXRlLCBjdHgtPnB0ciwgMCkpICE9IHN0YXRlLT5sb3dlcigqcCkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7Ci0gICAgICAgICAgICAgICAgICAgICAgICBwKys7IGN0eC0+cHRyKys7CisgICAgICAgICAgICAgICAgICAgICAgICBwKys7CisgICAgICAgICAgICAgICAgICAgICAgICBjdHgtPnB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CkBAIC0xMzg2LDcgKzEzNjYsNyBAQAogICAgICAgICAgICAgLyogPEFTU0VSVD4gPHNraXA+IDxiYWNrPiA8cGF0dGVybj4gKi8KICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfEFTU0VSVCAlZFxuIiwgY3R4LT5wYXR0ZXJuLAogICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyLCBjdHgtPnBhdHRlcm5bMV0pKTsKLSAgICAgICAgICAgIHN0YXRlLT5wdHIgPSBjdHgtPnB0ciAtIGN0eC0+cGF0dGVyblsxXTsKKyAgICAgICAgICAgIHN0YXRlLT5wdHIgPSBjdHgtPnB0ciAtIHN0YXRlLT5jaGFyc2l6ZSAqIGN0eC0+cGF0dGVyblsxXTsKICAgICAgICAgICAgIGlmIChzdGF0ZS0+cHRyIDwgc3RhdGUtPmJlZ2lubmluZykKICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKICAgICAgICAgICAgIERPX0pVTVAoSlVNUF9BU1NFUlQsIGp1bXBfYXNzZXJ0LCBjdHgtPnBhdHRlcm4rMik7CkBAIC0xMzk5LDcgKzEzNzksNyBAQAogICAgICAgICAgICAgLyogPEFTU0VSVF9OT1Q+IDxza2lwPiA8YmFjaz4gPHBhdHRlcm4+ICovCiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxBU1NFUlRfTk9UICVkXG4iLCBjdHgtPnBhdHRlcm4sCiAgICAgICAgICAgICAgICAgICAgY3R4LT5wdHIsIGN0eC0+cGF0dGVyblsxXSkpOwotICAgICAgICAgICAgc3RhdGUtPnB0ciA9IGN0eC0+cHRyIC0gY3R4LT5wYXR0ZXJuWzFdOworICAgICAgICAgICAgc3RhdGUtPnB0ciA9IGN0eC0+cHRyIC0gc3RhdGUtPmNoYXJzaXplICogY3R4LT5wYXR0ZXJuWzFdOwogICAgICAgICAgICAgaWYgKHN0YXRlLT5wdHIgPj0gc3RhdGUtPmJlZ2lubmluZykgewogICAgICAgICAgICAgICAgIERPX0pVTVAoSlVNUF9BU1NFUlRfTk9ULCBqdW1wX2Fzc2VydF9ub3QsIGN0eC0+cGF0dGVybisyKTsKICAgICAgICAgICAgICAgICBpZiAocmV0KSB7CkBAIC0xNDgxLDggKzE0NjEsOCBAQAogTE9DQUwoUHlfc3NpemVfdCkKIFNSRV9TRUFSQ0goU1JFX1NUQVRFKiBzdGF0ZSwgU1JFX0NPREUqIHBhdHRlcm4pCiB7Ci0gICAgU1JFX0NIQVIqIHB0ciA9IChTUkVfQ0hBUiAqKXN0YXRlLT5zdGFydDsKLSAgICBTUkVfQ0hBUiogZW5kID0gKFNSRV9DSEFSICopc3RhdGUtPmVuZDsKKyAgICBjaGFyKiBwdHIgPSAoY2hhciopc3RhdGUtPnN0YXJ0OworICAgIGNoYXIqIGVuZCA9IChjaGFyKilzdGF0ZS0+ZW5kOwogICAgIFB5X3NzaXplX3Qgc3RhdHVzID0gMDsKICAgICBQeV9zc2l6ZV90IHByZWZpeF9sZW4gPSAwOwogICAgIFB5X3NzaXplX3QgcHJlZml4X3NraXAgPSAwOwpAQCAtMTUwMCw5ICsxNDgwLDkgQEAKICAgICAgICAgaWYgKHBhdHRlcm5bM10gPiAxKSB7CiAgICAgICAgICAgICAvKiBhZGp1c3QgZW5kIHBvaW50IChidXQgbWFrZSBzdXJlIHdlIGxlYXZlIGF0IGxlYXN0IG9uZQogICAgICAgICAgICAgICAgY2hhcmFjdGVyIGluIHRoZXJlLCBzbyBsaXRlcmFsIHNlYXJjaCB3aWxsIHdvcmspICovCi0gICAgICAgICAgICBlbmQgLT0gcGF0dGVyblszXS0xOworICAgICAgICAgICAgZW5kIC09IChwYXR0ZXJuWzNdLTEpICogc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgaWYgKGVuZCA8PSBwdHIpCi0gICAgICAgICAgICAgICAgZW5kID0gcHRyKzE7CisgICAgICAgICAgICAgICAgZW5kID0gcHRyICsgc3RhdGUtPmNoYXJzaXplOwogICAgICAgICB9CiAKICAgICAgICAgaWYgKGZsYWdzICYgU1JFX0lORk9fUFJFRklYKSB7CkBAIC0xNTI4LDEwICsxNTA4LDEwIEBACiAgICAgICAgIC8qIHBhdHRlcm4gc3RhcnRzIHdpdGggYSBrbm93biBwcmVmaXguICB1c2UgdGhlIG92ZXJsYXAKICAgICAgICAgICAgdGFibGUgdG8gc2tpcCBmb3J3YXJkIGFzIGZhc3QgYXMgd2UgcG9zc2libHkgY2FuICovCiAgICAgICAgIFB5X3NzaXplX3QgaSA9IDA7Ci0gICAgICAgIGVuZCA9IChTUkVfQ0hBUiAqKXN0YXRlLT5lbmQ7CisgICAgICAgIGVuZCA9IChjaGFyICopc3RhdGUtPmVuZDsKICAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCkgewogICAgICAgICAgICAgZm9yICg7OykgewotICAgICAgICAgICAgICAgIGlmICgoU1JFX0NPREUpIHB0clswXSAhPSBwcmVmaXhbaV0pIHsKKyAgICAgICAgICAgICAgICBpZiAoKFNSRV9DT0RFKSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSAhPSBwcmVmaXhbaV0pIHsKICAgICAgICAgICAgICAgICAgICAgaWYgKCFpKQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgIGVsc2UKQEAgLTE1NDAsOCArMTUyMCw4IEBACiAgICAgICAgICAgICAgICAgICAgIGlmICgrK2kgPT0gcHJlZml4X2xlbikgewogICAgICAgICAgICAgICAgICAgICAgICAgLyogZm91bmQgYSBwb3RlbnRpYWwgbWF0Y2ggKi8KICAgICAgICAgICAgICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfFNFQVJDSCBTQ0FOXG4iLCBwYXR0ZXJuLCBwdHIpKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLT5zdGFydCA9IHB0ciArIDEgLSBwcmVmaXhfbGVuOwotICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUtPnB0ciA9IHB0ciArIDEgLSBwcmVmaXhfbGVuICsgcHJlZml4X3NraXA7CisgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS0+c3RhcnQgPSBwdHIgLSAocHJlZml4X2xlbiAtIDEpICogc3RhdGUtPmNoYXJzaXplOworICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUtPnB0ciA9IHB0ciAtIChwcmVmaXhfbGVuIC0gcHJlZml4X3NraXAgLSAxKSAqIHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmbGFncyAmIFNSRV9JTkZPX0xJVEVSQUwpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7IC8qIHdlIGdvdCBhbGwgb2YgaXQgKi8KICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1cyA9IFNSRV9NQVRDSChzdGF0ZSwgcGF0dGVybiArIDIqcHJlZml4X3NraXApOwpAQCAtMTU1Myw3ICsxNTMzLDcgQEAKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotICAgICAgICAgICAgcHRyKys7CisgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICB9CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KQEAgLTE1NjMsMTUgKzE1NDMsMTYgQEAKICAgICAgICAgLyogcGF0dGVybiBzdGFydHMgd2l0aCBhIGxpdGVyYWwgY2hhcmFjdGVyLiAgdGhpcyBpcyB1c2VkCiAgICAgICAgICAgIGZvciBzaG9ydCBwcmVmaXhlcywgYW5kIGlmIGZhc3Qgc2VhcmNoIGlzIGRpc2FibGVkICovCiAgICAgICAgIFNSRV9DT0RFIGNociA9IHBhdHRlcm5bMV07Ci0gICAgICAgIGVuZCA9IChTUkVfQ0hBUiAqKXN0YXRlLT5lbmQ7CisgICAgICAgIGVuZCA9IChjaGFyKilzdGF0ZS0+ZW5kOwogICAgICAgICBmb3IgKDs7KSB7Ci0gICAgICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmIChTUkVfQ09ERSkgcHRyWzBdICE9IGNocikKLSAgICAgICAgICAgICAgICBwdHIrKzsKKyAgICAgICAgICAgIHdoaWxlIChwdHIgPCBlbmQgJiYgKFNSRV9DT0RFKSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSAhPSBjaHIpCisgICAgICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgIGlmIChwdHIgPj0gZW5kKQogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8U0VBUkNIIExJVEVSQUxcbiIsIHBhdHRlcm4sIHB0cikpOwogICAgICAgICAgICAgc3RhdGUtPnN0YXJ0ID0gcHRyOwotICAgICAgICAgICAgc3RhdGUtPnB0ciA9ICsrcHRyOworICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKKyAgICAgICAgICAgIHN0YXRlLT5wdHIgPSBwdHI7CiAgICAgICAgICAgICBpZiAoZmxhZ3MgJiBTUkVfSU5GT19MSVRFUkFMKQogICAgICAgICAgICAgICAgIHJldHVybiAxOyAvKiB3ZSBnb3QgYWxsIG9mIGl0ICovCiAgICAgICAgICAgICBzdGF0dXMgPSBTUkVfTUFUQ0goc3RhdGUsIHBhdHRlcm4gKyAyKTsKQEAgLTE1ODAsMTAgKzE1NjEsMTAgQEAKICAgICAgICAgfQogICAgIH0gZWxzZSBpZiAoY2hhcnNldCkgewogICAgICAgICAvKiBwYXR0ZXJuIHN0YXJ0cyB3aXRoIGEgY2hhcmFjdGVyIGZyb20gYSBrbm93biBzZXQgKi8KLSAgICAgICAgZW5kID0gKFNSRV9DSEFSICopc3RhdGUtPmVuZDsKKyAgICAgICAgZW5kID0gKGNoYXIqKXN0YXRlLT5lbmQ7CiAgICAgICAgIGZvciAoOzspIHsKLSAgICAgICAgICAgIHdoaWxlIChwdHIgPCBlbmQgJiYgIVNSRV9DSEFSU0VUKGNoYXJzZXQsIHB0clswXSkpCi0gICAgICAgICAgICAgICAgcHRyKys7CisgICAgICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmICFTUkVfQ0hBUlNFVChjaGFyc2V0LCBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkpCisgICAgICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgIGlmIChwdHIgPj0gZW5kKQogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8U0VBUkNIIENIQVJTRVRcbiIsIHBhdHRlcm4sIHB0cikpOwpAQCAtMTU5MiwxMyArMTU3MywxNCBAQAogICAgICAgICAgICAgc3RhdHVzID0gU1JFX01BVENIKHN0YXRlLCBwYXR0ZXJuKTsKICAgICAgICAgICAgIGlmIChzdGF0dXMgIT0gMCkKICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIHB0cisrOworICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgfQogICAgIH0gZWxzZQogICAgICAgICAvKiBnZW5lcmFsIGNhc2UgKi8KICAgICAgICAgd2hpbGUgKHB0ciA8PSBlbmQpIHsKICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfFNFQVJDSFxuIiwgcGF0dGVybiwgcHRyKSk7Ci0gICAgICAgICAgICBzdGF0ZS0+c3RhcnQgPSBzdGF0ZS0+cHRyID0gcHRyKys7CisgICAgICAgICAgICBzdGF0ZS0+c3RhcnQgPSBzdGF0ZS0+cHRyID0gcHRyOworICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgIHN0YXR1cyA9IFNSRV9NQVRDSChzdGF0ZSwgcGF0dGVybik7CiAgICAgICAgICAgICBpZiAoc3RhdHVzICE9IDApCiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0xNjA3LDE2ICsxNTg5LDYgQEAKICAgICByZXR1cm4gc3RhdHVzOwogfQogCi1MT0NBTChpbnQpCi1TUkVfTElURVJBTF9URU1QTEFURShTUkVfQ0hBUiogcHRyLCBQeV9zc2l6ZV90IGxlbikKLXsKLSAgICAvKiBjaGVjayBpZiBnaXZlbiBzdHJpbmcgaXMgYSBsaXRlcmFsIHRlbXBsYXRlIChpLmUuIG5vIGVzY2FwZXMpICovCi0gICAgd2hpbGUgKGxlbi0tID4gMCkKLSAgICAgICAgaWYgKCpwdHIrKyA9PSAnXFwnKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIDE7Ci19Ci0KICNpZiAhZGVmaW5lZChTUkVfUkVDVVJTSVZFKQogCiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwpAQCAtMTYyNiw2ICsxNTk4LDIzIEBACiBzdGF0aWMgUHlPYmplY3QqcGF0dGVybl9uZXdfbWF0Y2goUGF0dGVybk9iamVjdCosIFNSRV9TVEFURSosIGludCk7CiBzdGF0aWMgUHlPYmplY3QqcGF0dGVybl9zY2FubmVyKFBhdHRlcm5PYmplY3QqLCBQeU9iamVjdCopOwogCitzdGF0aWMgaW50CitzcmVfbGl0ZXJhbF90ZW1wbGF0ZShpbnQgY2hhcnNpemUsIGNoYXIqIHB0ciwgUHlfc3NpemVfdCBsZW4pCit7CisgICAgLyogY2hlY2sgaWYgZ2l2ZW4gc3RyaW5nIGlzIGEgbGl0ZXJhbCB0ZW1wbGF0ZSAoaS5lLiBubyBlc2NhcGVzKSAqLworICAgIHN0cnVjdCB7CisgICAgICAgIGludCBjaGFyc2l6ZTsKKyAgICB9IHN0YXRlID0geworICAgICAgICBjaGFyc2l6ZQorICAgIH07CisgICAgd2hpbGUgKGxlbi0tID4gMCkgeworICAgICAgICBpZiAoU1JFX0NIQVJHRVQoKCZzdGF0ZSksIHB0ciwgMCkgPT0gJ1xcJykKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBwdHIgKz0gY2hhcnNpemU7CisgICAgfQorICAgIHJldHVybiAxOworfQorCiBzdGF0aWMgUHlPYmplY3QgKgogc3JlX2NvZGVzaXplKFB5T2JqZWN0KiBzZWxmLCBQeU9iamVjdCAqdW51c2VkKQogewpAQCAtMTY0MSwxMSArMTYzMCw3IEBACiAgICAgaWYgKGZsYWdzICYgU1JFX0ZMQUdfTE9DQUxFKQogICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiaSIsIHNyZV9sb3dlcl9sb2NhbGUoY2hhcmFjdGVyKSk7CiAgICAgaWYgKGZsYWdzICYgU1JFX0ZMQUdfVU5JQ09ERSkKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKICAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoImkiLCBzcmVfbG93ZXJfdW5pY29kZShjaGFyYWN0ZXIpKTsKLSNlbHNlCi0gICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJpIiwgc3JlX2xvd2VyX2xvY2FsZShjaGFyYWN0ZXIpKTsKLSNlbmRpZgogICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJpIiwgc3JlX2xvd2VyKGNoYXJhY3RlcikpOwogfQogCkBAIC0xNjY0LDcgKzE2NDksOSBAQAogfQogCiBzdGF0aWMgdm9pZCoKLWdldHN0cmluZyhQeU9iamVjdCogc3RyaW5nLCBQeV9zc2l6ZV90KiBwX2xlbmd0aCwgaW50KiBwX2NoYXJzaXplLCBQeV9idWZmZXIgKnZpZXcpCitnZXRzdHJpbmcoUHlPYmplY3QqIHN0cmluZywgUHlfc3NpemVfdCogcF9sZW5ndGgsCisgICAgICAgICAgaW50KiBwX2xvZ2ljYWxfY2hhcnNpemUsIGludCogcF9jaGFyc2l6ZSwKKyAgICAgICAgICBQeV9idWZmZXIgKnZpZXcpCiB7CiAgICAgLyogZ2l2ZW4gYSBweXRob24gb2JqZWN0LCByZXR1cm4gYSBkYXRhIHBvaW50ZXIsIGEgbGVuZ3RoIChpbgogICAgICAgIGNoYXJhY3RlcnMpLCBhbmQgYSBjaGFyYWN0ZXIgc2l6ZS4gIHJldHVybiBOVUxMIGlmIHRoZSBvYmplY3QKQEAgLTE2NzgsMTMgKzE2NjUsMTYgQEAKICAgICAvKiBVbmljb2RlIG9iamVjdHMgZG8gbm90IHN1cHBvcnQgdGhlIGJ1ZmZlciBBUEkuIFNvLCBnZXQgdGhlIGRhdGEKICAgICAgICBkaXJlY3RseSBpbnN0ZWFkLiAqLwogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2soc3RyaW5nKSkgewotICAgICAgICBwdHIgPSAodm9pZCAqKVB5VW5pY29kZV9BU19EQVRBKHN0cmluZyk7Ci0gICAgICAgICpwX2xlbmd0aCA9IFB5VW5pY29kZV9HRVRfU0laRShzdHJpbmcpOwotICAgICAgICAqcF9jaGFyc2l6ZSA9IHNpemVvZihQeV9VTklDT0RFKTsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzdHJpbmcpID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHB0ciA9IFB5VW5pY29kZV9EQVRBKHN0cmluZyk7CisgICAgICAgICpwX2xlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cmluZyk7CisgICAgICAgICpwX2NoYXJzaXplID0gUHlVbmljb2RlX0tJTkQoc3RyaW5nKTsKKyAgICAgICAgKnBfbG9naWNhbF9jaGFyc2l6ZSA9IDQ7CiAgICAgICAgIHJldHVybiBwdHI7CiAgICAgfQogCi0gICAgLyogZ2V0IHBvaW50ZXIgdG8gc3RyaW5nIGJ1ZmZlciAqLworICAgIC8qIGdldCBwb2ludGVyIHRvIGJ5dGUgc3RyaW5nIGJ1ZmZlciAqLwogICAgIHZpZXctPmxlbiA9IC0xOwogICAgIGJ1ZmZlciA9IFB5X1RZUEUoc3RyaW5nKS0+dHBfYXNfYnVmZmVyOwogICAgIGlmICghYnVmZmVyIHx8ICFidWZmZXItPmJmX2dldGJ1ZmZlciB8fApAQCAtMTcwNywxMCArMTY5Nyw2IEBACiAKICAgICBpZiAoUHlCeXRlc19DaGVjayhzdHJpbmcpIHx8IGJ5dGVzID09IHNpemUpCiAgICAgICAgIGNoYXJzaXplID0gMTsKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKLSAgICBlbHNlIGlmIChieXRlcyA9PSAoUHlfc3NpemVfdCkgKHNpemUgKiBzaXplb2YoUHlfVU5JQ09ERSkpKQotICAgICAgICBjaGFyc2l6ZSA9IHNpemVvZihQeV9VTklDT0RFKTsKLSNlbmRpZgogICAgIGVsc2UgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiYnVmZmVyIHNpemUgbWlzbWF0Y2giKTsKICAgICAgICAgZ290byBlcnI7CkBAIC0xNzE4LDYgKzE3MDQsNyBAQAogCiAgICAgKnBfbGVuZ3RoID0gc2l6ZTsKICAgICAqcF9jaGFyc2l6ZSA9IGNoYXJzaXplOworICAgICpwX2xvZ2ljYWxfY2hhcnNpemUgPSBjaGFyc2l6ZTsKIAogICAgIGlmIChwdHIgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCkBAIC0xNzM4LDcgKzE3MjUsNyBAQAogICAgIC8qIHByZXBhcmUgc3RhdGUgb2JqZWN0ICovCiAKICAgICBQeV9zc2l6ZV90IGxlbmd0aDsKLSAgICBpbnQgY2hhcnNpemU7CisgICAgaW50IGxvZ2ljYWxfY2hhcnNpemUsIGNoYXJzaXplOwogICAgIHZvaWQqIHB0cjsKIAogICAgIG1lbXNldChzdGF0ZSwgMCwgc2l6ZW9mKFNSRV9TVEFURSkpOwpAQCAtMTc0NywxOCArMTczNCwxOCBAQAogICAgIHN0YXRlLT5sYXN0aW5kZXggPSAtMTsKIAogICAgIHN0YXRlLT5idWZmZXIuYnVmID0gTlVMTDsKLSAgICBwdHIgPSBnZXRzdHJpbmcoc3RyaW5nLCAmbGVuZ3RoLCAmY2hhcnNpemUsICZzdGF0ZS0+YnVmZmVyKTsKKyAgICBwdHIgPSBnZXRzdHJpbmcoc3RyaW5nLCAmbGVuZ3RoLCAmbG9naWNhbF9jaGFyc2l6ZSwgJmNoYXJzaXplLCAmc3RhdGUtPmJ1ZmZlcik7CiAgICAgaWYgKCFwdHIpCiAgICAgICAgIGdvdG8gZXJyOwogCi0gICAgaWYgKGNoYXJzaXplID09IDEgJiYgcGF0dGVybi0+Y2hhcnNpemUgPiAxKSB7CisgICAgaWYgKGxvZ2ljYWxfY2hhcnNpemUgPT0gMSAmJiBwYXR0ZXJuLT5sb2dpY2FsX2NoYXJzaXplID4gMSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotCQkJImNhbid0IHVzZSBhIHN0cmluZyBwYXR0ZXJuIG9uIGEgYnl0ZXMtbGlrZSBvYmplY3QiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICJjYW4ndCB1c2UgYSBzdHJpbmcgcGF0dGVybiBvbiBhIGJ5dGVzLWxpa2Ugb2JqZWN0Iik7CiAgICAgICAgIGdvdG8gZXJyOwogICAgIH0KLSAgICBpZiAoY2hhcnNpemUgPiAxICYmIHBhdHRlcm4tPmNoYXJzaXplID09IDEpIHsKKyAgICBpZiAobG9naWNhbF9jaGFyc2l6ZSA+IDEgJiYgcGF0dGVybi0+bG9naWNhbF9jaGFyc2l6ZSA9PSAxKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCi0JCQkiY2FuJ3QgdXNlIGEgYnl0ZXMgcGF0dGVybiBvbiBhIHN0cmluZy1saWtlIG9iamVjdCIpOworICAgICAgICAgICAgICAgICAgICAgICAgImNhbid0IHVzZSBhIGJ5dGVzIHBhdHRlcm4gb24gYSBzdHJpbmctbGlrZSBvYmplY3QiKTsKICAgICAgICAgZ290byBlcnI7CiAgICAgfQogCkBAIC0xNzczLDYgKzE3NjAsNyBAQAogICAgIGVsc2UgaWYgKGVuZCA+IGxlbmd0aCkKICAgICAgICAgZW5kID0gbGVuZ3RoOwogCisgICAgc3RhdGUtPmxvZ2ljYWxfY2hhcnNpemUgPSBsb2dpY2FsX2NoYXJzaXplOwogICAgIHN0YXRlLT5jaGFyc2l6ZSA9IGNoYXJzaXplOwogCiAgICAgc3RhdGUtPmJlZ2lubmluZyA9IHB0cjsKQEAgLTE3ODgsMTEgKzE3NzYsNyBAQAogICAgIGlmIChwYXR0ZXJuLT5mbGFncyAmIFNSRV9GTEFHX0xPQ0FMRSkKICAgICAgICAgc3RhdGUtPmxvd2VyID0gc3JlX2xvd2VyX2xvY2FsZTsKICAgICBlbHNlIGlmIChwYXR0ZXJuLT5mbGFncyAmIFNSRV9GTEFHX1VOSUNPREUpCi0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgICAgIHN0YXRlLT5sb3dlciA9IHNyZV9sb3dlcl91bmljb2RlOwotI2Vsc2UKLSAgICAgICAgc3RhdGUtPmxvd2VyID0gc3JlX2xvd2VyX2xvY2FsZTsKLSNlbmRpZgogICAgIGVsc2UKICAgICAgICAgc3RhdGUtPmxvd2VyID0gc3JlX2xvd2VyOwogCkBAIC0xODk5LDEyICsxODgzLDEwIEBACiAKICAgICBUUkFDRSgoInwlcHwlcHxNQVRDSFxuIiwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpLCBzdGF0ZS5wdHIpKTsKIAotICAgIGlmIChzdGF0ZS5jaGFyc2l6ZSA9PSAxKSB7CisgICAgaWYgKHN0YXRlLmxvZ2ljYWxfY2hhcnNpemUgPT0gMSkgewogICAgICAgICBzdGF0dXMgPSBzcmVfbWF0Y2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwogICAgIH0gZWxzZSB7Ci0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgICAgIHN0YXR1cyA9IHNyZV91bWF0Y2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwotI2VuZGlmCiAgICAgfQogCiAgICAgVFJBQ0UoKCJ8JXB8JXB8RU5EXG4iLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZiksIHN0YXRlLnB0cikpOwpAQCAtMTkzNiwxMiArMTkxOCwxMCBAQAogCiAgICAgVFJBQ0UoKCJ8JXB8JXB8U0VBUkNIXG4iLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZiksIHN0YXRlLnB0cikpOwogCi0gICAgaWYgKHN0YXRlLmNoYXJzaXplID09IDEpIHsKKyAgICBpZiAoc3RhdGUubG9naWNhbF9jaGFyc2l6ZSA9PSAxKSB7CiAgICAgICAgIHN0YXR1cyA9IHNyZV9zZWFyY2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwogICAgIH0gZWxzZSB7Ci0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgICAgIHN0YXR1cyA9IHNyZV91c2VhcmNoKCZzdGF0ZSwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpKTsKLSNlbmRpZgogICAgIH0KIAogICAgIFRSQUNFKCgifCVwfCVwfEVORFxuIiwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpLCBzdGF0ZS5wdHIpKTsKQEAgLTIwODMsMTYgKzIwNjMsMTQgQEAKIAogICAgICAgICBzdGF0ZS5wdHIgPSBzdGF0ZS5zdGFydDsKIAotICAgICAgICBpZiAoc3RhdGUuY2hhcnNpemUgPT0gMSkgeworICAgICAgICBpZiAoc3RhdGUubG9naWNhbF9jaGFyc2l6ZSA9PSAxKSB7CiAgICAgICAgICAgICBzdGF0dXMgPSBzcmVfc2VhcmNoKCZzdGF0ZSwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpKTsKICAgICAgICAgfSBlbHNlIHsKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKICAgICAgICAgICAgIHN0YXR1cyA9IHNyZV91c2VhcmNoKCZzdGF0ZSwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpKTsKLSNlbmRpZgogICAgICAgICB9CiAKLQlpZiAoUHlFcnJfT2NjdXJyZWQoKSkKLQkgICAgZ290byBlcnJvcjsKKyAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBnb3RvIGVycm9yOwogCiAgICAgICAgIGlmIChzdGF0dXMgPD0gMCkgewogICAgICAgICAgICAgaWYgKHN0YXR1cyA9PSAwKQpAQCAtMjIxMywxNiArMjE5MSwxNCBAQAogCiAgICAgICAgIHN0YXRlLnB0ciA9IHN0YXRlLnN0YXJ0OwogCi0gICAgICAgIGlmIChzdGF0ZS5jaGFyc2l6ZSA9PSAxKSB7CisgICAgICAgIGlmIChzdGF0ZS5sb2dpY2FsX2NoYXJzaXplID09IDEpIHsKICAgICAgICAgICAgIHN0YXR1cyA9IHNyZV9zZWFyY2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwogICAgICAgICB9IGVsc2UgewotI2lmIGRlZmluZWQoSEFWRV9VTklDT0RFKQogICAgICAgICAgICAgc3RhdHVzID0gc3JlX3VzZWFyY2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwotI2VuZGlmCiAgICAgICAgIH0KIAotCWlmIChQeUVycl9PY2N1cnJlZCgpKQotCSAgICBnb3RvIGVycm9yOworICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICAgICAgaWYgKHN0YXR1cyA8PSAwKSB7CiAgICAgICAgICAgICBpZiAoc3RhdHVzID09IDApCkBAIC0yMzAzLDcgKzIyNzksNyBAQAogICAgIGludCBzdGF0dXM7CiAgICAgUHlfc3NpemVfdCBuOwogICAgIFB5X3NzaXplX3QgaSwgYiwgZTsKLSAgICBpbnQgYmludDsKKyAgICBpbnQgbG9naWNhbF9jaGFyc2l6ZSwgY2hhcnNpemU7CiAgICAgaW50IGZpbHRlcl9pc19jYWxsYWJsZTsKICAgICBQeV9idWZmZXIgdmlldzsKIApAQCAtMjMxNiwxNiArMjI5MiwxMCBAQAogICAgICAgICAvKiBpZiBub3QgY2FsbGFibGUsIGNoZWNrIGlmIGl0J3MgYSBsaXRlcmFsIHN0cmluZyAqLwogICAgICAgICBpbnQgbGl0ZXJhbDsKICAgICAgICAgdmlldy5idWYgPSBOVUxMOwotICAgICAgICBwdHIgPSBnZXRzdHJpbmcocHRlbXBsYXRlLCAmbiwgJmJpbnQsICZ2aWV3KTsKLSAgICAgICAgYiA9IGJpbnQ7CisgICAgICAgIHB0ciA9IGdldHN0cmluZyhwdGVtcGxhdGUsICZuLCAmbG9naWNhbF9jaGFyc2l6ZSwgJmNoYXJzaXplLCAmdmlldyk7CisgICAgICAgIGIgPSBjaGFyc2l6ZTsKICAgICAgICAgaWYgKHB0cikgewotICAgICAgICAgICAgaWYgKGIgPT0gMSkgewotCQkgICAgbGl0ZXJhbCA9IHNyZV9saXRlcmFsX3RlbXBsYXRlKCh1bnNpZ25lZCBjaGFyICopcHRyLCBuKTsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCi0JCSAgICBsaXRlcmFsID0gc3JlX3VsaXRlcmFsX3RlbXBsYXRlKChQeV9VTklDT0RFICopcHRyLCBuKTsKLSNlbmRpZgotICAgICAgICAgICAgfQorICAgICAgICAgICAgbGl0ZXJhbCA9IHNyZV9saXRlcmFsX3RlbXBsYXRlKGIsIHB0ciwgbik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICAgICAgbGl0ZXJhbCA9IDA7CkBAIC0yMzY5LDE2ICsyMzM5LDE0IEBACiAKICAgICAgICAgc3RhdGUucHRyID0gc3RhdGUuc3RhcnQ7CiAKLSAgICAgICAgaWYgKHN0YXRlLmNoYXJzaXplID09IDEpIHsKKyAgICAgICAgaWYgKHN0YXRlLmxvZ2ljYWxfY2hhcnNpemUgPT0gMSkgewogICAgICAgICAgICAgc3RhdHVzID0gc3JlX3NlYXJjaCgmc3RhdGUsIFBhdHRlcm5PYmplY3RfR2V0Q29kZShzZWxmKSk7CiAgICAgICAgIH0gZWxzZSB7Ci0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgICAgICAgICBzdGF0dXMgPSBzcmVfdXNlYXJjaCgmc3RhdGUsIFBhdHRlcm5PYmplY3RfR2V0Q29kZShzZWxmKSk7Ci0jZW5kaWYKICAgICAgICAgfQogCi0JaWYgKFB5RXJyX09jY3VycmVkKCkpCi0JICAgIGdvdG8gZXJyb3I7CisgICAgICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgZ290byBlcnJvcjsKIAogICAgICAgICBpZiAoc3RhdHVzIDw9IDApIHsKICAgICAgICAgICAgIGlmIChzdGF0dXMgPT0gMCkKQEAgLTI1OTYsMjAgKzI1NjQsMjAgQEAKIAogc3RhdGljIFB5TWV0aG9kRGVmIHBhdHRlcm5fbWV0aG9kc1tdID0gewogICAgIHsibWF0Y2giLCAoUHlDRnVuY3Rpb24pIHBhdHRlcm5fbWF0Y2gsIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTLAotCXBhdHRlcm5fbWF0Y2hfZG9jfSwKKyAgICAgICAgcGF0dGVybl9tYXRjaF9kb2N9LAogICAgIHsic2VhcmNoIiwgKFB5Q0Z1bmN0aW9uKSBwYXR0ZXJuX3NlYXJjaCwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCi0JcGF0dGVybl9zZWFyY2hfZG9jfSwKKyAgICAgICAgcGF0dGVybl9zZWFyY2hfZG9jfSwKICAgICB7InN1YiIsIChQeUNGdW5jdGlvbikgcGF0dGVybl9zdWIsIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTLAotCXBhdHRlcm5fc3ViX2RvY30sCisgICAgICAgIHBhdHRlcm5fc3ViX2RvY30sCiAgICAgeyJzdWJuIiwgKFB5Q0Z1bmN0aW9uKSBwYXR0ZXJuX3N1Ym4sIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTLAotCXBhdHRlcm5fc3Vibl9kb2N9LAorICAgICAgICBwYXR0ZXJuX3N1Ym5fZG9jfSwKICAgICB7InNwbGl0IiwgKFB5Q0Z1bmN0aW9uKSBwYXR0ZXJuX3NwbGl0LCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKLQlwYXR0ZXJuX3NwbGl0X2RvY30sCisgICAgICAgIHBhdHRlcm5fc3BsaXRfZG9jfSwKICAgICB7ImZpbmRhbGwiLCAoUHlDRnVuY3Rpb24pIHBhdHRlcm5fZmluZGFsbCwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCi0JcGF0dGVybl9maW5kYWxsX2RvY30sCisgICAgICAgIHBhdHRlcm5fZmluZGFsbF9kb2N9LAogI2lmIFBZX1ZFUlNJT05fSEVYID49IDB4MDIwMjAwMDAKICAgICB7ImZpbmRpdGVyIiwgKFB5Q0Z1bmN0aW9uKSBwYXR0ZXJuX2ZpbmRpdGVyLCBNRVRIX1ZBUkFSR1MsCi0JcGF0dGVybl9maW5kaXRlcl9kb2N9LAorICAgICAgICBwYXR0ZXJuX2ZpbmRpdGVyX2RvY30sCiAjZW5kaWYKICAgICB7InNjYW5uZXIiLCAoUHlDRnVuY3Rpb24pIHBhdHRlcm5fc2Nhbm5lciwgTUVUSF9WQVJBUkdTfSwKICAgICB7Il9fY29weV9fIiwgKFB5Q0Z1bmN0aW9uKSBwYXR0ZXJuX2NvcHksIE1FVEhfTk9BUkdTfSwKQEAgLTI2MzAsMzEgKzI1OTgsMzEgQEAKICAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoTlVMTCwgMCkKICAgICAiXyIgU1JFX01PRFVMRSAiLlNSRV9QYXR0ZXJuIiwKICAgICBzaXplb2YoUGF0dGVybk9iamVjdCksIHNpemVvZihTUkVfQ09ERSksCi0gICAgKGRlc3RydWN0b3IpcGF0dGVybl9kZWFsbG9jLAkvKiB0cF9kZWFsbG9jICovCi0gICAgMCwJCQkJCS8qIHRwX3ByaW50ICovCi0gICAgMCwJCQkJCS8qIHRwX2dldGF0dHIgKi8KLSAgICAwLAkJCQkJLyogdHBfc2V0YXR0ciAqLwotICAgIDAsCQkJCQkvKiB0cF9yZXNlcnZlZCAqLwotICAgIDAsCQkJCQkvKiB0cF9yZXByICovCi0gICAgMCwJCQkJCS8qIHRwX2FzX251bWJlciAqLwotICAgIDAsCQkJCQkvKiB0cF9hc19zZXF1ZW5jZSAqLwotICAgIDAsCQkJCQkvKiB0cF9hc19tYXBwaW5nICovCi0gICAgMCwJCQkJCS8qIHRwX2hhc2ggKi8KLSAgICAwLAkJCQkJLyogdHBfY2FsbCAqLwotICAgIDAsCQkJCQkvKiB0cF9zdHIgKi8KLSAgICAwLAkJCQkJLyogdHBfZ2V0YXR0cm8gKi8KLSAgICAwLAkJCQkJLyogdHBfc2V0YXR0cm8gKi8KLSAgICAwLAkJCQkJLyogdHBfYXNfYnVmZmVyICovCi0gICAgUHlfVFBGTEFHU19ERUZBVUxULAkJCS8qIHRwX2ZsYWdzICovCi0gICAgcGF0dGVybl9kb2MsCQkJLyogdHBfZG9jICovCi0gICAgMCwJCQkJCS8qIHRwX3RyYXZlcnNlICovCi0gICAgMCwJCQkJCS8qIHRwX2NsZWFyICovCi0gICAgMCwJCQkJCS8qIHRwX3JpY2hjb21wYXJlICovCi0gICAgb2Zmc2V0b2YoUGF0dGVybk9iamVjdCwgd2Vha3JlZmxpc3QpLAkvKiB0cF93ZWFrbGlzdG9mZnNldCAqLwotICAgIDAsCQkJCQkvKiB0cF9pdGVyICovCi0gICAgMCwJCQkJCS8qIHRwX2l0ZXJuZXh0ICovCi0gICAgcGF0dGVybl9tZXRob2RzLAkJCS8qIHRwX21ldGhvZHMgKi8KLSAgICBwYXR0ZXJuX21lbWJlcnMsCQkJLyogdHBfbWVtYmVycyAqLworICAgIChkZXN0cnVjdG9yKXBhdHRlcm5fZGVhbGxvYywgICAgICAgIC8qIHRwX2RlYWxsb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9wcmludCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVzZXJ2ZWQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yZXByICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbnVtYmVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfc2VxdWVuY2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19tYXBwaW5nICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaGFzaCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfYnVmZmVyICovCisgICAgUHlfVFBGTEFHU19ERUZBVUxULCAgICAgICAgICAgICAgICAgLyogdHBfZmxhZ3MgKi8KKyAgICBwYXR0ZXJuX2RvYywgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF90cmF2ZXJzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NsZWFyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICBvZmZzZXRvZihQYXR0ZXJuT2JqZWN0LCB3ZWFrcmVmbGlzdCksICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgcGF0dGVybl9tZXRob2RzLCAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLworICAgIHBhdHRlcm5fbWVtYmVycywgICAgICAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KIH07CiAKIHN0YXRpYyBpbnQgX3ZhbGlkYXRlKFBhdHRlcm5PYmplY3QgKnNlbGYpOyAvKiBGb3J3YXJkICovCkBAIC0yNzA4LDExICsyNjc2LDE0IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGlmIChwYXR0ZXJuID09IFB5X05vbmUpCisgICAgaWYgKHBhdHRlcm4gPT0gUHlfTm9uZSkgeworICAgICAgICBzZWxmLT5sb2dpY2FsX2NoYXJzaXplID0gLTE7CiAgICAgICAgIHNlbGYtPmNoYXJzaXplID0gLTE7CisgICAgfQogICAgIGVsc2UgewogICAgICAgICBQeV9zc2l6ZV90IHBfbGVuZ3RoOwotICAgICAgICBpZiAoIWdldHN0cmluZyhwYXR0ZXJuLCAmcF9sZW5ndGgsICZzZWxmLT5jaGFyc2l6ZSwgJnNlbGYtPnZpZXcpKSB7CisgICAgICAgIGlmICghZ2V0c3RyaW5nKHBhdHRlcm4sICZwX2xlbmd0aCwgJnNlbGYtPmxvZ2ljYWxfY2hhcnNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICZzZWxmLT5jaGFyc2l6ZSwgJnNlbGYtPnZpZXcpKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQpAQCAtMjk3NywxMyArMjk0OCwxMyBAQAogICAgICAgICAgICAgICAgICAgIDxJTkZPPiA8MT1za2lwPiA8Mj1mbGFncz4gPDM9bWluPiA8ND1tYXg+OwogICAgICAgICAgICAgICAgICAgIElmIFNSRV9JTkZPX1BSRUZJWCBvciBTUkVfSU5GT19DSEFSU0VUIGlzIGluIHRoZSBmbGFncywKICAgICAgICAgICAgICAgICAgICBtb3JlIGZvbGxvd3MuICovCi0gICAgICAgICAgICAgICAgU1JFX0NPREUgZmxhZ3MsIG1pbiwgbWF4LCBpOworICAgICAgICAgICAgICAgIFNSRV9DT0RFIGZsYWdzLCBpOwogICAgICAgICAgICAgICAgIFNSRV9DT0RFICpuZXdjb2RlOwogICAgICAgICAgICAgICAgIEdFVF9TS0lQOwogICAgICAgICAgICAgICAgIG5ld2NvZGUgPSBjb2RlK3NraXAtMTsKICAgICAgICAgICAgICAgICBHRVRfQVJHOyBmbGFncyA9IGFyZzsKLSAgICAgICAgICAgICAgICBHRVRfQVJHOyBtaW4gPSBhcmc7Ci0gICAgICAgICAgICAgICAgR0VUX0FSRzsgbWF4ID0gYXJnOworICAgICAgICAgICAgICAgIEdFVF9BUkc7CisgICAgICAgICAgICAgICAgR0VUX0FSRzsKICAgICAgICAgICAgICAgICAvKiBDaGVjayB0aGF0IG9ubHkgdmFsaWQgZmxhZ3MgYXJlIHByZXNlbnQgKi8KICAgICAgICAgICAgICAgICBpZiAoKGZsYWdzICYgfihTUkVfSU5GT19QUkVGSVggfAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSRV9JTkZPX0xJVEVSQUwgfApAQCAtMjk5OSw5ICsyOTcwLDkgQEAKICAgICAgICAgICAgICAgICAgICAgRkFJTDsKICAgICAgICAgICAgICAgICAvKiBWYWxpZGF0ZSB0aGUgcHJlZml4ICovCiAgICAgICAgICAgICAgICAgaWYgKGZsYWdzICYgU1JFX0lORk9fUFJFRklYKSB7Ci0gICAgICAgICAgICAgICAgICAgIFNSRV9DT0RFIHByZWZpeF9sZW4sIHByZWZpeF9za2lwOworICAgICAgICAgICAgICAgICAgICBTUkVfQ09ERSBwcmVmaXhfbGVuOwogICAgICAgICAgICAgICAgICAgICBHRVRfQVJHOyBwcmVmaXhfbGVuID0gYXJnOwotICAgICAgICAgICAgICAgICAgICBHRVRfQVJHOyBwcmVmaXhfc2tpcCA9IGFyZzsKKyAgICAgICAgICAgICAgICAgICAgR0VUX0FSRzsKICAgICAgICAgICAgICAgICAgICAgLyogSGVyZSBjb21lcyB0aGUgcHJlZml4IHN0cmluZyAqLwogICAgICAgICAgICAgICAgICAgICBpZiAoY29kZStwcmVmaXhfbGVuIDwgY29kZSB8fCBjb2RlK3ByZWZpeF9sZW4gPiBuZXdjb2RlKQogICAgICAgICAgICAgICAgICAgICAgICAgRkFJTDsKQEAgLTMwNjUsMTAgKzMwMzYsOCBAQAogICAgICAgICAgICAgICAgIEdFVF9BUkc7IG1heCA9IGFyZzsKICAgICAgICAgICAgICAgICBpZiAobWluID4gbWF4KQogICAgICAgICAgICAgICAgICAgICBGQUlMOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQogICAgICAgICAgICAgICAgIGlmIChtYXggPiA2NTUzNSkKICAgICAgICAgICAgICAgICAgICAgRkFJTDsKLSNlbmRpZgogICAgICAgICAgICAgICAgIGlmICghX3ZhbGlkYXRlX2lubmVyKGNvZGUsIGNvZGUrc2tpcC00LCBncm91cHMpKQogICAgICAgICAgICAgICAgICAgICBGQUlMOwogICAgICAgICAgICAgICAgIGNvZGUgKz0gc2tpcC00OwpAQCAtMzA4NiwxMCArMzA1NSw4IEBACiAgICAgICAgICAgICAgICAgR0VUX0FSRzsgbWF4ID0gYXJnOwogICAgICAgICAgICAgICAgIGlmIChtaW4gPiBtYXgpCiAgICAgICAgICAgICAgICAgICAgIEZBSUw7Ci0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCiAgICAgICAgICAgICAgICAgaWYgKG1heCA+IDY1NTM1KQogICAgICAgICAgICAgICAgICAgICBGQUlMOwotI2VuZGlmCiAgICAgICAgICAgICAgICAgaWYgKCFfdmFsaWRhdGVfaW5uZXIoY29kZSwgY29kZStza2lwLTMsIGdyb3VwcykpCiAgICAgICAgICAgICAgICAgICAgIEZBSUw7CiAgICAgICAgICAgICAgICAgY29kZSArPSBza2lwLTM7CkBAIC0zMjUyLDggKzMyMTksOCBAQAogICAgIFB5X3NzaXplX3QgaTsKIAogICAgIGlmIChpbmRleCA9PSBOVUxMKQotCS8qIERlZmF1bHQgdmFsdWUgKi8KLQlyZXR1cm4gMDsKKyAgICAgICAgLyogRGVmYXVsdCB2YWx1ZSAqLworICAgICAgICByZXR1cm4gMDsKIAogICAgIGlmIChQeUxvbmdfQ2hlY2soaW5kZXgpKQogICAgICAgICByZXR1cm4gUHlMb25nX0FzU3NpemVfdChpbmRleCk7CkBAIC0zNTkzLDcgKzM1NjAsNyBAQAogbWF0Y2hfbGFzdGluZGV4X2dldChNYXRjaE9iamVjdCAqc2VsZikKIHsKICAgICBpZiAoc2VsZi0+bGFzdGluZGV4ID49IDApCi0JcmV0dXJuIFB5X0J1aWxkVmFsdWUoImkiLCBzZWxmLT5sYXN0aW5kZXgpOworICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiaSIsIHNlbGYtPmxhc3RpbmRleCk7CiAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgIHJldHVybiBQeV9Ob25lOwogfQpAQCAtMzY0NiwzMiArMzYxMywzMiBAQAogICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVChOVUxMLDApCiAgICAgIl8iIFNSRV9NT0RVTEUgIi5TUkVfTWF0Y2giLAogICAgIHNpemVvZihNYXRjaE9iamVjdCksIHNpemVvZihQeV9zc2l6ZV90KSwKLSAgICAoZGVzdHJ1Y3RvciltYXRjaF9kZWFsbG9jLAkvKiB0cF9kZWFsbG9jICovCi0gICAgMCwJCQkJLyogdHBfcHJpbnQgKi8KLSAgICAwLAkJCQkvKiB0cF9nZXRhdHRyICovCi0gICAgMCwJCQkJLyogdHBfc2V0YXR0ciAqLwotICAgIDAsCQkJCS8qIHRwX3Jlc2VydmVkICovCi0gICAgMCwJCQkJLyogdHBfcmVwciAqLwotICAgIDAsCQkJCS8qIHRwX2FzX251bWJlciAqLwotICAgIDAsCQkJCS8qIHRwX2FzX3NlcXVlbmNlICovCi0gICAgMCwJCQkJLyogdHBfYXNfbWFwcGluZyAqLwotICAgIDAsCQkJCS8qIHRwX2hhc2ggKi8KLSAgICAwLAkJCQkvKiB0cF9jYWxsICovCi0gICAgMCwJCQkJLyogdHBfc3RyICovCi0gICAgMCwJCQkJLyogdHBfZ2V0YXR0cm8gKi8KLSAgICAwLAkJCQkvKiB0cF9zZXRhdHRybyAqLwotICAgIDAsCQkJCS8qIHRwX2FzX2J1ZmZlciAqLwotICAgIFB5X1RQRkxBR1NfREVGQVVMVCwJCS8qIHRwX2ZsYWdzICovCi0gICAgMCwJCQkJLyogdHBfZG9jICovCi0gICAgMCwJCQkJLyogdHBfdHJhdmVyc2UgKi8KLSAgICAwLAkJCQkvKiB0cF9jbGVhciAqLwotICAgIDAsCQkJCS8qIHRwX3JpY2hjb21wYXJlICovCi0gICAgMCwJCQkJLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KLSAgICAwLAkJCQkvKiB0cF9pdGVyICovCi0gICAgMCwJCQkJLyogdHBfaXRlcm5leHQgKi8KLSAgICBtYXRjaF9tZXRob2RzLAkJLyogdHBfbWV0aG9kcyAqLwotICAgIG1hdGNoX21lbWJlcnMsCQkvKiB0cF9tZW1iZXJzICovCi0gICAgbWF0Y2hfZ2V0c2V0LCAgCSAgICAgICAgLyogdHBfZ2V0c2V0ICovCisgICAgKGRlc3RydWN0b3IpbWF0Y2hfZGVhbGxvYywgIC8qIHRwX2RlYWxsb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcHJpbnQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3Jlc2VydmVkICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JlcHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbnVtYmVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX3NlcXVlbmNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX21hcHBpbmcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaGFzaCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jYWxsICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3N0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KKyAgICBQeV9UUEZMQUdTX0RFRkFVTFQsICAgICAgICAgLyogdHBfZmxhZ3MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZG9jICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NsZWFyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JpY2hjb21wYXJlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KKyAgICBtYXRjaF9tZXRob2RzLCAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLworICAgIG1hdGNoX21lbWJlcnMsICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCisgICAgbWF0Y2hfZ2V0c2V0LCAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLwogfTsKIAogc3RhdGljIFB5T2JqZWN0KgpAQCAtMzc2MCwxMiArMzcyNywxMCBAQAogCiAgICAgc3RhdGUtPnB0ciA9IHN0YXRlLT5zdGFydDsKIAotICAgIGlmIChzdGF0ZS0+Y2hhcnNpemUgPT0gMSkgeworICAgIGlmIChzdGF0ZS0+bG9naWNhbF9jaGFyc2l6ZSA9PSAxKSB7CiAgICAgICAgIHN0YXR1cyA9IHNyZV9tYXRjaChzdGF0ZSwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYtPnBhdHRlcm4pKTsKICAgICB9IGVsc2UgewotI2lmIGRlZmluZWQoSEFWRV9VTklDT0RFKQogICAgICAgICBzdGF0dXMgPSBzcmVfdW1hdGNoKHN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZi0+cGF0dGVybikpOwotI2VuZGlmCiAgICAgfQogICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTM3OTMsMTIgKzM3NTgsMTAgQEAKIAogICAgIHN0YXRlLT5wdHIgPSBzdGF0ZS0+c3RhcnQ7CiAKLSAgICBpZiAoc3RhdGUtPmNoYXJzaXplID09IDEpIHsKKyAgICBpZiAoc3RhdGUtPmxvZ2ljYWxfY2hhcnNpemUgPT0gMSkgewogICAgICAgICBzdGF0dXMgPSBzcmVfc2VhcmNoKHN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZi0+cGF0dGVybikpOwogICAgIH0gZWxzZSB7Ci0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgICAgIHN0YXR1cyA9IHNyZV91c2VhcmNoKHN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZi0+cGF0dGVybikpOwotI2VuZGlmCiAgICAgfQogICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTM4MjIsNyArMzc4NSw3IEBACiAKICNkZWZpbmUgU0NBTl9PRkYoeCkgb2Zmc2V0b2YoU2Nhbm5lck9iamVjdCwgeCkKIHN0YXRpYyBQeU1lbWJlckRlZiBzY2FubmVyX21lbWJlcnNbXSA9IHsKLSAgICB7InBhdHRlcm4iLAlUX09CSkVDVCwJU0NBTl9PRkYocGF0dGVybiksCVJFQURPTkxZfSwKKyAgICB7InBhdHRlcm4iLCBUX09CSkVDVCwgU0NBTl9PRkYocGF0dGVybiksIFJFQURPTkxZfSwKICAgICB7TlVMTH0gIC8qIFNlbnRpbmVsICovCiB9OwogCkBAIC0zODMxLDMxICszNzk0LDMxIEBACiAgICAgIl8iIFNSRV9NT0RVTEUgIi5TUkVfU2Nhbm5lciIsCiAgICAgc2l6ZW9mKFNjYW5uZXJPYmplY3QpLCAwLAogICAgIChkZXN0cnVjdG9yKXNjYW5uZXJfZGVhbGxvYywvKiB0cF9kZWFsbG9jICovCi0gICAgMCwJCQkJLyogdHBfcHJpbnQgKi8KLSAgICAwLAkJCQkvKiB0cF9nZXRhdHRyICovCi0gICAgMCwJCQkJLyogdHBfc2V0YXR0ciAqLwotICAgIDAsCQkJCS8qIHRwX3Jlc2VydmVkICovCi0gICAgMCwJCQkJLyogdHBfcmVwciAqLwotICAgIDAsCQkJCS8qIHRwX2FzX251bWJlciAqLwotICAgIDAsCQkJCS8qIHRwX2FzX3NlcXVlbmNlICovCi0gICAgMCwJCQkJLyogdHBfYXNfbWFwcGluZyAqLwotICAgIDAsCQkJCS8qIHRwX2hhc2ggKi8KLSAgICAwLAkJCQkvKiB0cF9jYWxsICovCi0gICAgMCwJCQkJLyogdHBfc3RyICovCi0gICAgMCwJCQkJLyogdHBfZ2V0YXR0cm8gKi8KLSAgICAwLAkJCQkvKiB0cF9zZXRhdHRybyAqLwotICAgIDAsCQkJCS8qIHRwX2FzX2J1ZmZlciAqLwotICAgIFB5X1RQRkxBR1NfREVGQVVMVCwJCS8qIHRwX2ZsYWdzICovCi0gICAgMCwJCQkJLyogdHBfZG9jICovCi0gICAgMCwJCQkJLyogdHBfdHJhdmVyc2UgKi8KLSAgICAwLAkJCQkvKiB0cF9jbGVhciAqLwotICAgIDAsCQkJCS8qIHRwX3JpY2hjb21wYXJlICovCi0gICAgMCwJCQkJLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KLSAgICAwLAkJCQkvKiB0cF9pdGVyICovCi0gICAgMCwJCQkJLyogdHBfaXRlcm5leHQgKi8KLSAgICBzY2FubmVyX21ldGhvZHMsCQkvKiB0cF9tZXRob2RzICovCi0gICAgc2Nhbm5lcl9tZW1iZXJzLAkJLyogdHBfbWVtYmVycyAqLwotICAgIDAsCQkJCS8qIHRwX2dldHNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9wcmludCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVzZXJ2ZWQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVwciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfc2VxdWVuY2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbWFwcGluZyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc3RyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX2J1ZmZlciAqLworICAgIFB5X1RQRkxBR1NfREVGQVVMVCwgICAgICAgICAvKiB0cF9mbGFncyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLworICAgIHNjYW5uZXJfbWV0aG9kcywgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCisgICAgc2Nhbm5lcl9tZW1iZXJzLCAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCiB9OwogCiBzdGF0aWMgUHlPYmplY3QqCkBAIC0zODk3LDE1ICszODYwLDE1IEBACiB9OwogCiBzdGF0aWMgc3RydWN0IFB5TW9kdWxlRGVmIHNyZW1vZHVsZSA9IHsKLQlQeU1vZHVsZURlZl9IRUFEX0lOSVQsCi0JIl8iIFNSRV9NT0RVTEUsCi0JTlVMTCwKLQktMSwKLQlfZnVuY3Rpb25zLAotCU5VTEwsCi0JTlVMTCwKLQlOVUxMLAotCU5VTEwKKyAgICAgICAgUHlNb2R1bGVEZWZfSEVBRF9JTklULAorICAgICAgICAiXyIgU1JFX01PRFVMRSwKKyAgICAgICAgTlVMTCwKKyAgICAgICAgLTEsCisgICAgICAgIF9mdW5jdGlvbnMsCisgICAgICAgIE5VTEwsCisgICAgICAgIE5VTEwsCisgICAgICAgIE5VTEwsCisgICAgICAgIE5VTEwKIH07CiAKIFB5TU9ESU5JVF9GVU5DIFB5SW5pdF9fc3JlKHZvaWQpCkBAIC0zOTIxLDcgKzM4ODQsNyBAQAogCiAgICAgbSA9IFB5TW9kdWxlX0NyZWF0ZSgmc3JlbW9kdWxlKTsKICAgICBpZiAobSA9PSBOVUxMKQotICAgIAlyZXR1cm4gTlVMTDsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgZCA9IFB5TW9kdWxlX0dldERpY3QobSk7CiAKICAgICB4ID0gUHlMb25nX0Zyb21Mb25nKFNSRV9NQUdJQyk7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zc2wuYyBiL01vZHVsZXMvX3NzbC5jCmluZGV4IDNmYTJkNmEuLjY5MGQwYmUgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3NzbC5jCisrKyBiL01vZHVsZXMvX3NzbC5jCkBAIC0xOCwxNiArMTgsMjEgQEAKIAogI2lmZGVmIFdJVEhfVEhSRUFECiAjaW5jbHVkZSAicHl0aHJlYWQuaCIKKyNkZWZpbmUgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEU19TKHNhdmUpIFwKKyAgICBkbyB7IGlmIChfc3NsX2xvY2tzX2NvdW50PjApIHsgKHNhdmUpID0gUHlFdmFsX1NhdmVUaHJlYWQoKTsgfSB9IHdoaWxlICgwKQorI2RlZmluZSBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEU19TKHNhdmUpIFwKKyAgICBkbyB7IGlmIChfc3NsX2xvY2tzX2NvdW50PjApIHsgUHlFdmFsX1Jlc3RvcmVUaHJlYWQoc2F2ZSk7IH0gfSB3aGlsZSAoMCkKICNkZWZpbmUgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEUyB7IFwKICAgICAgICAgICAgIFB5VGhyZWFkU3RhdGUgKl9zYXZlID0gTlVMTDsgIFwKLSAgICAgICAgICAgIGlmIChfc3NsX2xvY2tzX2NvdW50PjApIHtfc2F2ZSA9IFB5RXZhbF9TYXZlVGhyZWFkKCk7fQotI2RlZmluZSBQeVNTTF9CTE9DS19USFJFQURTICAgICBpZiAoX3NzbF9sb2Nrc19jb3VudD4wKXtQeUV2YWxfUmVzdG9yZVRocmVhZChfc2F2ZSl9OwotI2RlZmluZSBQeVNTTF9VTkJMT0NLX1RIUkVBRFMgICBpZiAoX3NzbF9sb2Nrc19jb3VudD4wKXtfc2F2ZSA9IFB5RXZhbF9TYXZlVGhyZWFkKCl9OwotI2RlZmluZSBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEUyBpZiAoX3NzbF9sb2Nrc19jb3VudD4wKXtQeUV2YWxfUmVzdG9yZVRocmVhZChfc2F2ZSk7fSBcCi0gICAgICAgICB9CisgICAgICAgICAgICBQeVNTTF9CRUdJTl9BTExPV19USFJFQURTX1MoX3NhdmUpOworI2RlZmluZSBQeVNTTF9CTE9DS19USFJFQURTICAgICBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEU19TKF9zYXZlKTsKKyNkZWZpbmUgUHlTU0xfVU5CTE9DS19USFJFQURTICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEU19TKF9zYXZlKTsKKyNkZWZpbmUgUHlTU0xfRU5EX0FMTE9XX1RIUkVBRFMgUHlTU0xfRU5EX0FMTE9XX1RIUkVBRFNfUyhfc2F2ZSk7IH0KIAogI2Vsc2UgICAvKiBubyBXSVRIX1RIUkVBRCAqLwogCisjZGVmaW5lIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFNfUyhzYXZlKQorI2RlZmluZSBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEU19TKHNhdmUpCiAjZGVmaW5lIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFMKICNkZWZpbmUgUHlTU0xfQkxPQ0tfVEhSRUFEUwogI2RlZmluZSBQeVNTTF9VTkJMT0NLX1RIUkVBRFMKQEAgLTk0LDYgKzk5LDExIEBACiAKIC8qIFNTTCBlcnJvciBvYmplY3QgKi8KIHN0YXRpYyBQeU9iamVjdCAqUHlTU0xFcnJvck9iamVjdDsKK3N0YXRpYyBQeU9iamVjdCAqUHlTU0xaZXJvUmV0dXJuRXJyb3JPYmplY3Q7CitzdGF0aWMgUHlPYmplY3QgKlB5U1NMV2FudFJlYWRFcnJvck9iamVjdDsKK3N0YXRpYyBQeU9iamVjdCAqUHlTU0xXYW50V3JpdGVFcnJvck9iamVjdDsKK3N0YXRpYyBQeU9iamVjdCAqUHlTU0xTeXNjYWxsRXJyb3JPYmplY3Q7CitzdGF0aWMgUHlPYmplY3QgKlB5U1NMRU9GRXJyb3JPYmplY3Q7CiAKICNpZmRlZiBXSVRIX1RIUkVBRAogCkBAIC0xMjQsNiArMTM0LDI4IEBACiAjIHVuZGVmIEhBVkVfU1NMX0NUWF9DTEVBUl9PUFRJT05TCiAjZW5kaWYKIAorLyogSW4gY2FzZSBvZiAndGxzLXVuaXF1ZScgaXQgd2lsbCBiZSAxMiBieXRlcyBmb3IgVExTLCAzNiBieXRlcyBmb3IKKyAqIG9sZGVyIFNTTCwgYnV0IGxldCdzIGJlIHNhZmUgKi8KKyNkZWZpbmUgUHlTU0xfQ0JfTUFYTEVOIDEyOAorCisvKiBTU0xfZ2V0X2ZpbmlzaGVkIGdvdCBhZGRlZCB0byBPcGVuU1NMIGluIDAuOS41ICovCisjaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA+PSAweDAwOTA1MDBmTAorIyBkZWZpbmUgSEFWRV9PUEVOU1NMX0ZJTklTSEVEIDEKKyNlbHNlCisjIGRlZmluZSBIQVZFX09QRU5TU0xfRklOSVNIRUQgMAorI2VuZGlmCisKKy8qIEVDREggc3VwcG9ydCBnb3QgYWRkZWQgdG8gT3BlblNTTCBpbiAwLjkuOCAqLworI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDAwOTA4MDBmTCAmJiAhZGVmaW5lZChPUEVOU1NMX05PX0VDREgpCisjIGRlZmluZSBPUEVOU1NMX05PX0VDREgKKyNlbmRpZgorCisvKiBjb21wcmVzc2lvbiBzdXBwb3J0IGdvdCBhZGRlZCB0byBPcGVuU1NMIGluIDAuOS44ICovCisjaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MDA5MDgwMGZMICYmICFkZWZpbmVkKE9QRU5TU0xfTk9fQ09NUCkKKyMgZGVmaW5lIE9QRU5TU0xfTk9fQ09NUAorI2VuZGlmCisKKwogdHlwZWRlZiBzdHJ1Y3QgewogICAgIFB5T2JqZWN0X0hFQUQKICAgICBTU0xfQ1RYICpjdHg7CkBAIC0xMzUsNiArMTY3LDcgQEAKICAgICBTU0wgKnNzbDsKICAgICBYNTA5ICpwZWVyX2NlcnQ7CiAgICAgaW50IHNodXRkb3duX3NlZW5femVybzsKKyAgICBlbnVtIHB5X3NzbF9zZXJ2ZXJfb3JfY2xpZW50IHNvY2tldF90eXBlOwogfSBQeVNTTFNvY2tldDsKIAogc3RhdGljIFB5VHlwZU9iamVjdCBQeVNTTENvbnRleHRfVHlwZTsKQEAgLTE3NCw2ICsyMDcsNyBAQAogUHlTU0xfU2V0RXJyb3IoUHlTU0xTb2NrZXQgKm9iaiwgaW50IHJldCwgY2hhciAqZmlsZW5hbWUsIGludCBsaW5lbm8pCiB7CiAgICAgUHlPYmplY3QgKnY7CisgICAgUHlPYmplY3QgKnR5cGUgPSBQeVNTTEVycm9yT2JqZWN0OwogICAgIGNoYXIgYnVmWzIwNDhdOwogICAgIGNoYXIgKmVycnN0cjsKICAgICBpbnQgZXJyOwpAQCAtMTg2LDE1ICsyMjAsMTggQEAKIAogICAgICAgICBzd2l0Y2ggKGVycikgewogICAgICAgICBjYXNlIFNTTF9FUlJPUl9aRVJPX1JFVFVSTjoKLSAgICAgICAgICAgIGVycnN0ciA9ICJUTFMvU1NMIGNvbm5lY3Rpb24gaGFzIGJlZW4gY2xvc2VkIjsKKyAgICAgICAgICAgIGVycnN0ciA9ICJUTFMvU1NMIGNvbm5lY3Rpb24gaGFzIGJlZW4gY2xvc2VkIChFT0YpIjsKKyAgICAgICAgICAgIHR5cGUgPSBQeVNTTFplcm9SZXR1cm5FcnJvck9iamVjdDsKICAgICAgICAgICAgIHAgPSBQWV9TU0xfRVJST1JfWkVST19SRVRVUk47CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBTU0xfRVJST1JfV0FOVF9SRUFEOgogICAgICAgICAgICAgZXJyc3RyID0gIlRoZSBvcGVyYXRpb24gZGlkIG5vdCBjb21wbGV0ZSAocmVhZCkiOworICAgICAgICAgICAgdHlwZSA9IFB5U1NMV2FudFJlYWRFcnJvck9iamVjdDsKICAgICAgICAgICAgIHAgPSBQWV9TU0xfRVJST1JfV0FOVF9SRUFEOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgU1NMX0VSUk9SX1dBTlRfV1JJVEU6CiAgICAgICAgICAgICBwID0gUFlfU1NMX0VSUk9SX1dBTlRfV1JJVEU7CisgICAgICAgICAgICB0eXBlID0gUHlTU0xXYW50V3JpdGVFcnJvck9iamVjdDsKICAgICAgICAgICAgIGVycnN0ciA9ICJUaGUgb3BlcmF0aW9uIGRpZCBub3QgY29tcGxldGUgKHdyaXRlKSI7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBTU0xfRVJST1JfV0FOVF9YNTA5X0xPT0tVUDoKQEAgLTIxMyw2ICsyNTAsNyBAQAogICAgICAgICAgICAgICAgICAgPSAoUHlTb2NrZXRTb2NrT2JqZWN0ICopIFB5V2Vha3JlZl9HZXRPYmplY3Qob2JqLT5Tb2NrZXQpOwogICAgICAgICAgICAgICAgIGlmIChyZXQgPT0gMCB8fCAoKChQeU9iamVjdCAqKXMpID09IFB5X05vbmUpKSB7CiAgICAgICAgICAgICAgICAgICAgIHAgPSBQWV9TU0xfRVJST1JfRU9GOworICAgICAgICAgICAgICAgICAgICB0eXBlID0gUHlTU0xFT0ZFcnJvck9iamVjdDsKICAgICAgICAgICAgICAgICAgICAgZXJyc3RyID0gIkVPRiBvY2N1cnJlZCBpbiB2aW9sYXRpb24gb2YgcHJvdG9jb2wiOwogICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocmV0ID09IC0xKSB7CiAgICAgICAgICAgICAgICAgICAgIC8qIHVuZGVybHlpbmcgQklPIHJlcG9ydGVkIGFuIEkvTyBlcnJvciAqLwpAQCAtMjIzLDYgKzI2MSw3IEBACiAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2OwogICAgICAgICAgICAgICAgIH0gZWxzZSB7IC8qIHBvc3NpYmxlPyAqLwogICAgICAgICAgICAgICAgICAgICBwID0gUFlfU1NMX0VSUk9SX1NZU0NBTEw7CisgICAgICAgICAgICAgICAgICAgIHR5cGUgPSBQeVNTTFN5c2NhbGxFcnJvck9iamVjdDsKICAgICAgICAgICAgICAgICAgICAgZXJyc3RyID0gIlNvbWUgSS9PIGVycm9yIG9jY3VycmVkIjsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9IGVsc2UgewpAQCAtMjU1LDcgKzI5NCw3IEBACiAgICAgRVJSX2NsZWFyX2Vycm9yKCk7CiAgICAgdiA9IFB5X0J1aWxkVmFsdWUoIihpcykiLCBwLCBidWYpOwogICAgIGlmICh2ICE9IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5U1NMRXJyb3JPYmplY3QsIHYpOworICAgICAgICBQeUVycl9TZXRPYmplY3QodHlwZSwgdik7CiAgICAgICAgIFB5X0RFQ1JFRih2KTsKICAgICB9CiAgICAgcmV0dXJuIE5VTEw7CkBAIC0zMjgsNiArMzY3LDcgQEAKICAgICAgICAgU1NMX3NldF9hY2NlcHRfc3RhdGUoc2VsZi0+c3NsKTsKICAgICBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEUwogCisgICAgc2VsZi0+c29ja2V0X3R5cGUgPSBzb2NrZXRfdHlwZTsKICAgICBzZWxmLT5Tb2NrZXQgPSBQeVdlYWtyZWZfTmV3UmVmKChQeU9iamVjdCAqKSBzb2NrLCBOVUxMKTsKICAgICByZXR1cm4gc2VsZjsKIH0KQEAgLTM1Niw3ICszOTYsNiBAQAogCiAgICAgLyogQWN0dWFsbHkgbmVnb3RpYXRlIFNTTCBjb25uZWN0aW9uICovCiAgICAgLyogWFhYIElmIFNTTF9kb19oYW5kc2hha2UoKSByZXR1cm5zIDAsIGl0J3MgYWxzbyBhIGZhaWx1cmUuICovCi0gICAgc29ja3N0YXRlID0gMDsKICAgICBkbyB7CiAgICAgICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgcmV0ID0gU1NMX2RvX2hhbmRzaGFrZShzZWxmLT5zc2wpOwpAQCAtOTc2LDYgKzEwMTUsMjUgQEAKICAgICByZXR1cm4gTlVMTDsKIH0KIAorc3RhdGljIFB5T2JqZWN0ICpQeVNTTF9jb21wcmVzc2lvbihQeVNTTFNvY2tldCAqc2VsZikgeworI2lmZGVmIE9QRU5TU0xfTk9fQ09NUAorICAgIFB5X1JFVFVSTl9OT05FOworI2Vsc2UKKyAgICBjb25zdCBDT01QX01FVEhPRCAqY29tcF9tZXRob2Q7CisgICAgY29uc3QgY2hhciAqc2hvcnRfbmFtZTsKKworICAgIGlmIChzZWxmLT5zc2wgPT0gTlVMTCkKKyAgICAgICAgUHlfUkVUVVJOX05PTkU7CisgICAgY29tcF9tZXRob2QgPSBTU0xfZ2V0X2N1cnJlbnRfY29tcHJlc3Npb24oc2VsZi0+c3NsKTsKKyAgICBpZiAoY29tcF9tZXRob2QgPT0gTlVMTCB8fCBjb21wX21ldGhvZC0+dHlwZSA9PSBOSURfdW5kZWYpCisgICAgICAgIFB5X1JFVFVSTl9OT05FOworICAgIHNob3J0X25hbWUgPSBPQkpfbmlkMnNuKGNvbXBfbWV0aG9kLT50eXBlKTsKKyAgICBpZiAoc2hvcnRfbmFtZSA9PSBOVUxMKQorICAgICAgICBQeV9SRVRVUk5fTk9ORTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChzaG9ydF9uYW1lKTsKKyNlbmRpZgorfQorCiBzdGF0aWMgdm9pZCBQeVNTTF9kZWFsbG9jKFB5U1NMU29ja2V0ICpzZWxmKQogewogICAgIGlmIChzZWxmLT5wZWVyX2NlcnQpICAgICAgICAvKiBQb3NzaWJsZSBub3QgdG8gaGF2ZSBvbmU/ICovCkBAIC0xMDk2LDcgKzExNTQsNiBAQAogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KICAgICBkbyB7Ci0gICAgICAgIGVyciA9IDA7CiAgICAgICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgbGVuID0gU1NMX3dyaXRlKHNlbGYtPnNzbCwgYnVmLmJ1ZiwgYnVmLmxlbik7CiAgICAgICAgIGVyciA9IFNTTF9nZXRfZXJyb3Ioc2VsZi0+c3NsLCBsZW4pOwpAQCAtMTIzMiw3ICsxMjg5LDYgQEAKICAgICAgICAgfQogICAgIH0KICAgICBkbyB7Ci0gICAgICAgIGVyciA9IDA7CiAgICAgICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgY291bnQgPSBTU0xfcmVhZChzZWxmLT5zc2wsIG1lbSwgbGVuKTsKICAgICAgICAgZXJyID0gU1NMX2dldF9lcnJvcihzZWxmLT5zc2wsIGNvdW50KTsKQEAgLTEzODQsNiArMTQ0MCw0MSBAQAogRG9lcyB0aGUgU1NMIHNodXRkb3duIGhhbmRzaGFrZSB3aXRoIHRoZSByZW1vdGUgZW5kLCBhbmQgcmV0dXJuc1xuXAogdGhlIHVuZGVybHlpbmcgc29ja2V0IG9iamVjdC4iKTsKIAorI2lmIEhBVkVfT1BFTlNTTF9GSU5JU0hFRAorc3RhdGljIFB5T2JqZWN0ICoKK1B5U1NMX3Rsc191bmlxdWVfY2IoUHlTU0xTb2NrZXQgKnNlbGYpCit7CisgICAgUHlPYmplY3QgKnJldHZhbCA9IE5VTEw7CisgICAgY2hhciBidWZbUHlTU0xfQ0JfTUFYTEVOXTsKKyAgICBpbnQgbGVuOworCisgICAgaWYgKFNTTF9zZXNzaW9uX3JldXNlZChzZWxmLT5zc2wpIF4gIXNlbGYtPnNvY2tldF90eXBlKSB7CisgICAgICAgIC8qIGlmIHNlc3Npb24gaXMgcmVzdW1lZCBYT1Igd2UgYXJlIHRoZSBjbGllbnQgKi8KKyAgICAgICAgbGVuID0gU1NMX2dldF9maW5pc2hlZChzZWxmLT5zc2wsIGJ1ZiwgUHlTU0xfQ0JfTUFYTEVOKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8qIGlmIGEgbmV3IHNlc3Npb24gWE9SIHdlIGFyZSB0aGUgc2VydmVyICovCisgICAgICAgIGxlbiA9IFNTTF9nZXRfcGVlcl9maW5pc2hlZChzZWxmLT5zc2wsIGJ1ZiwgUHlTU0xfQ0JfTUFYTEVOKTsKKyAgICB9CisKKyAgICAvKiBJdCBjYW5ub3QgYmUgbmVnYXRpdmUgaW4gY3VycmVudCBPcGVuU1NMIHZlcnNpb24gYXMgb2YgSnVseSAyMDExICovCisgICAgYXNzZXJ0KGxlbiA+PSAwKTsKKyAgICBpZiAobGVuID09IDApCisgICAgICAgIFB5X1JFVFVSTl9OT05FOworCisgICAgcmV0dmFsID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShidWYsIGxlbik7CisKKyAgICByZXR1cm4gcmV0dmFsOworfQorCitQeURvY19TVFJWQVIoUHlTU0xfdGxzX3VuaXF1ZV9jYl9kb2MsCisidGxzX3VuaXF1ZV9jYigpIC0+IGJ5dGVzXG5cCitcblwKK1JldHVybnMgdGhlICd0bHMtdW5pcXVlJyBjaGFubmVsIGJpbmRpbmcgZGF0YSwgYXMgZGVmaW5lZCBieSBSRkMgNTkyOS5cblwKK1xuXAorSWYgdGhlIFRMUyBoYW5kc2hha2UgaXMgbm90IHlldCBjb21wbGV0ZSwgTm9uZSBpcyByZXR1cm5lZCIpOworCisjZW5kaWYgLyogSEFWRV9PUEVOU1NMX0ZJTklTSEVEICovCiAKIHN0YXRpYyBQeU1ldGhvZERlZiBQeVNTTE1ldGhvZHNbXSA9IHsKICAgICB7ImRvX2hhbmRzaGFrZSIsIChQeUNGdW5jdGlvbilQeVNTTF9TU0xkb19oYW5kc2hha2UsIE1FVEhfTk9BUkdTfSwKQEAgLTEzOTYsOCArMTQ4NywxMyBAQAogICAgIHsicGVlcl9jZXJ0aWZpY2F0ZSIsIChQeUNGdW5jdGlvbilQeVNTTF9wZWVyY2VydCwgTUVUSF9WQVJBUkdTLAogICAgICBQeVNTTF9wZWVyY2VydF9kb2N9LAogICAgIHsiY2lwaGVyIiwgKFB5Q0Z1bmN0aW9uKVB5U1NMX2NpcGhlciwgTUVUSF9OT0FSR1N9LAorICAgIHsiY29tcHJlc3Npb24iLCAoUHlDRnVuY3Rpb24pUHlTU0xfY29tcHJlc3Npb24sIE1FVEhfTk9BUkdTfSwKICAgICB7InNodXRkb3duIiwgKFB5Q0Z1bmN0aW9uKVB5U1NMX1NTTHNodXRkb3duLCBNRVRIX05PQVJHUywKICAgICAgUHlTU0xfU1NMc2h1dGRvd25fZG9jfSwKKyNpZiBIQVZFX09QRU5TU0xfRklOSVNIRUQKKyAgICB7InRsc191bmlxdWVfY2IiLCAoUHlDRnVuY3Rpb24pUHlTU0xfdGxzX3VuaXF1ZV9jYiwgTUVUSF9OT0FSR1MsCisgICAgIFB5U1NMX3Rsc191bmlxdWVfY2JfZG9jfSwKKyNlbmRpZgogICAgIHtOVUxMLCBOVUxMfQogfTsKIApAQCAtMTU5MSwxOSArMTY4NywxMTggQEAKICAgICByZXR1cm4gMDsKIH0KIAordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5VGhyZWFkU3RhdGUgKnRocmVhZF9zdGF0ZTsKKyAgICBQeU9iamVjdCAqY2FsbGFibGU7CisgICAgY2hhciAqcGFzc3dvcmQ7CisgICAgUHlfc3NpemVfdCBzaXplOworICAgIGludCBlcnJvcjsKK30gX1B5U1NMUGFzc3dvcmRJbmZvOworCitzdGF0aWMgaW50CitfcHdpbmZvX3NldChfUHlTU0xQYXNzd29yZEluZm8gKnB3X2luZm8sIFB5T2JqZWN0KiBwYXNzd29yZCwKKyAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJhZF90eXBlX2Vycm9yKQoreworICAgIC8qIFNldCB0aGUgcGFzc3dvcmQgYW5kIHNpemUgZmllbGRzIG9mIGEgX1B5U1NMUGFzc3dvcmRJbmZvIHN0cnVjdAorICAgICAgIGZyb20gYSB1bmljb2RlLCBieXRlcywgb3IgYnl0ZSBhcnJheSBvYmplY3QuCisgICAgICAgVGhlIHBhc3N3b3JkIGZpZWxkIHdpbGwgYmUgZHluYW1pY2FsbHkgYWxsb2NhdGVkIGFuZCBtdXN0IGJlIGZyZWVkCisgICAgICAgYnkgdGhlIGNhbGxlciAqLworICAgIFB5T2JqZWN0ICpwYXNzd29yZF9ieXRlcyA9IE5VTEw7CisgICAgY29uc3QgY2hhciAqZGF0YSA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBzaXplOworCisgICAgaWYgKFB5VW5pY29kZV9DaGVjayhwYXNzd29yZCkpIHsKKyAgICAgICAgcGFzc3dvcmRfYnl0ZXMgPSBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKHBhc3N3b3JkLCBOVUxMLCBOVUxMKTsKKyAgICAgICAgaWYgKCFwYXNzd29yZF9ieXRlcykgeworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorICAgICAgICBkYXRhID0gUHlCeXRlc19BU19TVFJJTkcocGFzc3dvcmRfYnl0ZXMpOworICAgICAgICBzaXplID0gUHlCeXRlc19HRVRfU0laRShwYXNzd29yZF9ieXRlcyk7CisgICAgfSBlbHNlIGlmIChQeUJ5dGVzX0NoZWNrKHBhc3N3b3JkKSkgeworICAgICAgICBkYXRhID0gUHlCeXRlc19BU19TVFJJTkcocGFzc3dvcmQpOworICAgICAgICBzaXplID0gUHlCeXRlc19HRVRfU0laRShwYXNzd29yZCk7CisgICAgfSBlbHNlIGlmIChQeUJ5dGVBcnJheV9DaGVjayhwYXNzd29yZCkpIHsKKyAgICAgICAgZGF0YSA9IFB5Qnl0ZUFycmF5X0FTX1NUUklORyhwYXNzd29yZCk7CisgICAgICAgIHNpemUgPSBQeUJ5dGVBcnJheV9HRVRfU0laRShwYXNzd29yZCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgYmFkX3R5cGVfZXJyb3IpOworICAgICAgICBnb3RvIGVycm9yOworICAgIH0KKworICAgIGZyZWUocHdfaW5mby0+cGFzc3dvcmQpOworICAgIHB3X2luZm8tPnBhc3N3b3JkID0gbWFsbG9jKHNpemUpOworICAgIGlmICghcHdfaW5mby0+cGFzc3dvcmQpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX01lbW9yeUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgInVuYWJsZSB0byBhbGxvY2F0ZSBwYXNzd29yZCBidWZmZXIiKTsKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICB9CisgICAgbWVtY3B5KHB3X2luZm8tPnBhc3N3b3JkLCBkYXRhLCBzaXplKTsKKyAgICBwd19pbmZvLT5zaXplID0gc2l6ZTsKKworICAgIFB5X1hERUNSRUYocGFzc3dvcmRfYnl0ZXMpOworICAgIHJldHVybiAxOworCitlcnJvcjoKKyAgICBQeV9YREVDUkVGKHBhc3N3b3JkX2J5dGVzKTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAorX3Bhc3N3b3JkX2NhbGxiYWNrKGNoYXIgKmJ1ZiwgaW50IHNpemUsIGludCByd2ZsYWcsIHZvaWQgKnVzZXJkYXRhKQoreworICAgIF9QeVNTTFBhc3N3b3JkSW5mbyAqcHdfaW5mbyA9IChfUHlTU0xQYXNzd29yZEluZm8qKSB1c2VyZGF0YTsKKyAgICBQeU9iamVjdCAqZm5fcmV0ID0gTlVMTDsKKworICAgIFB5U1NMX0VORF9BTExPV19USFJFQURTX1MocHdfaW5mby0+dGhyZWFkX3N0YXRlKTsKKworICAgIGlmIChwd19pbmZvLT5jYWxsYWJsZSkgeworICAgICAgICBmbl9yZXQgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKHB3X2luZm8tPmNhbGxhYmxlLCBOVUxMKTsKKyAgICAgICAgaWYgKCFmbl9yZXQpIHsKKyAgICAgICAgICAgIC8qIFRPRE86IEl0IHdvdWxkIGJlIG5pY2UgdG8gbW92ZSBfY3R5cGVzX2FkZF90cmFjZWJhY2soKSBpbnRvIHRoZQorICAgICAgICAgICAgICAgY29yZSBweXRob24gQVBJLCBzbyB3ZSBjb3VsZCB1c2UgaXQgdG8gYWRkIGEgZnJhbWUgaGVyZSAqLworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorCisgICAgICAgIGlmICghX3B3aW5mb19zZXQocHdfaW5mbywgZm5fcmV0LAorICAgICAgICAgICAgICAgICAgICAgICAgICJwYXNzd29yZCBjYWxsYmFjayBtdXN0IHJldHVybiBhIHN0cmluZyIpKSB7CisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgICAgIFB5X0NMRUFSKGZuX3JldCk7CisgICAgfQorCisgICAgaWYgKHB3X2luZm8tPnNpemUgPiBzaXplKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgInBhc3N3b3JkIGNhbm5vdCBiZSBsb25nZXIgdGhhbiAlZCBieXRlcyIsIHNpemUpOworICAgICAgICBnb3RvIGVycm9yOworICAgIH0KKworICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFNfUyhwd19pbmZvLT50aHJlYWRfc3RhdGUpOworICAgIG1lbWNweShidWYsIHB3X2luZm8tPnBhc3N3b3JkLCBwd19pbmZvLT5zaXplKTsKKyAgICByZXR1cm4gcHdfaW5mby0+c2l6ZTsKKworZXJyb3I6CisgICAgUHlfWERFQ1JFRihmbl9yZXQpOworICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFNfUyhwd19pbmZvLT50aHJlYWRfc3RhdGUpOworICAgIHB3X2luZm8tPmVycm9yID0gMTsKKyAgICByZXR1cm4gLTE7Cit9CisKIHN0YXRpYyBQeU9iamVjdCAqCiBsb2FkX2NlcnRfY2hhaW4oUHlTU0xDb250ZXh0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiB7Ci0gICAgY2hhciAqa3dsaXN0W10gPSB7ImNlcnRmaWxlIiwgImtleWZpbGUiLCBOVUxMfTsKLSAgICBQeU9iamVjdCAqY2VydGZpbGUsICprZXlmaWxlID0gTlVMTDsKKyAgICBjaGFyICprd2xpc3RbXSA9IHsiY2VydGZpbGUiLCAia2V5ZmlsZSIsICJwYXNzd29yZCIsIE5VTEx9OworICAgIFB5T2JqZWN0ICpjZXJ0ZmlsZSwgKmtleWZpbGUgPSBOVUxMLCAqcGFzc3dvcmQgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpjZXJ0ZmlsZV9ieXRlcyA9IE5VTEwsICprZXlmaWxlX2J5dGVzID0gTlVMTDsKKyAgICBwZW1fcGFzc3dvcmRfY2IgKm9yaWdfcGFzc3dkX2NiID0gc2VsZi0+Y3R4LT5kZWZhdWx0X3Bhc3N3ZF9jYWxsYmFjazsKKyAgICB2b2lkICpvcmlnX3Bhc3N3ZF91c2VyZGF0YSA9IHNlbGYtPmN0eC0+ZGVmYXVsdF9wYXNzd2RfY2FsbGJhY2tfdXNlcmRhdGE7CisgICAgX1B5U1NMUGFzc3dvcmRJbmZvIHB3X2luZm8gPSB7IE5VTEwsIE5VTEwsIE5VTEwsIDAsIDAgfTsKICAgICBpbnQgcjsKIAogICAgIGVycm5vID0gMDsKICAgICBFUlJfY2xlYXJfZXJyb3IoKTsKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLAotICAgICAgICAiT3xPOmxvYWRfY2VydF9jaGFpbiIsIGt3bGlzdCwKLSAgICAgICAgJmNlcnRmaWxlLCAma2V5ZmlsZSkpCisgICAgICAgICJPfE9POmxvYWRfY2VydF9jaGFpbiIsIGt3bGlzdCwKKyAgICAgICAgJmNlcnRmaWxlLCAma2V5ZmlsZSwgJnBhc3N3b3JkKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKGtleWZpbGUgPT0gUHlfTm9uZSkKICAgICAgICAga2V5ZmlsZSA9IE5VTEw7CkBAIC0xNjE3LDEyICsxODEyLDI2IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAia2V5ZmlsZSBzaG91bGQgYmUgYSB2YWxpZCBmaWxlc3lzdGVtIHBhdGgiKTsKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9Ci0gICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIGlmIChwYXNzd29yZCAmJiBwYXNzd29yZCAhPSBQeV9Ob25lKSB7CisgICAgICAgIGlmIChQeUNhbGxhYmxlX0NoZWNrKHBhc3N3b3JkKSkgeworICAgICAgICAgICAgcHdfaW5mby5jYWxsYWJsZSA9IHBhc3N3b3JkOworICAgICAgICB9IGVsc2UgaWYgKCFfcHdpbmZvX3NldCgmcHdfaW5mbywgcGFzc3dvcmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXNzd29yZCBzaG91bGQgYmUgYSBzdHJpbmcgb3IgY2FsbGFibGUiKSkgeworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorICAgICAgICBTU0xfQ1RYX3NldF9kZWZhdWx0X3Bhc3N3ZF9jYihzZWxmLT5jdHgsIF9wYXNzd29yZF9jYWxsYmFjayk7CisgICAgICAgIFNTTF9DVFhfc2V0X2RlZmF1bHRfcGFzc3dkX2NiX3VzZXJkYXRhKHNlbGYtPmN0eCwgJnB3X2luZm8pOworICAgIH0KKyAgICBQeVNTTF9CRUdJTl9BTExPV19USFJFQURTX1MocHdfaW5mby50aHJlYWRfc3RhdGUpOwogICAgIHIgPSBTU0xfQ1RYX3VzZV9jZXJ0aWZpY2F0ZV9jaGFpbl9maWxlKHNlbGYtPmN0eCwKICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoY2VydGZpbGVfYnl0ZXMpKTsKLSAgICBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEUworICAgIFB5U1NMX0VORF9BTExPV19USFJFQURTX1MocHdfaW5mby50aHJlYWRfc3RhdGUpOwogICAgIGlmIChyICE9IDEpIHsKLSAgICAgICAgaWYgKGVycm5vICE9IDApIHsKKyAgICAgICAgaWYgKHB3X2luZm8uZXJyb3IpIHsKKyAgICAgICAgICAgIEVSUl9jbGVhcl9lcnJvcigpOworICAgICAgICAgICAgLyogdGhlIHBhc3N3b3JkIGNhbGxiYWNrIGhhcyBhbHJlYWR5IHNldCB0aGUgZXJyb3IgaW5mb3JtYXRpb24gKi8KKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChlcnJubyAhPSAwKSB7CiAgICAgICAgICAgICBFUlJfY2xlYXJfZXJyb3IoKTsKICAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKICAgICAgICAgfQpAQCAtMTYzMSwzMyArMTg0MCw0MyBAQAogICAgICAgICB9CiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQotICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICBQeVNTTF9CRUdJTl9BTExPV19USFJFQURTX1MocHdfaW5mby50aHJlYWRfc3RhdGUpOwogICAgIHIgPSBTU0xfQ1RYX3VzZV9Qcml2YXRlS2V5X2ZpbGUoc2VsZi0+Y3R4LAogICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhrZXlmaWxlID8ga2V5ZmlsZV9ieXRlcyA6IGNlcnRmaWxlX2J5dGVzKSwKICAgICAgICAgU1NMX0ZJTEVUWVBFX1BFTSk7Ci0gICAgUHlTU0xfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICBQeV9YREVDUkVGKGtleWZpbGVfYnl0ZXMpOwotICAgIFB5X1hERUNSRUYoY2VydGZpbGVfYnl0ZXMpOworICAgIFB5U1NMX0VORF9BTExPV19USFJFQURTX1MocHdfaW5mby50aHJlYWRfc3RhdGUpOworICAgIFB5X0NMRUFSKGtleWZpbGVfYnl0ZXMpOworICAgIFB5X0NMRUFSKGNlcnRmaWxlX2J5dGVzKTsKICAgICBpZiAociAhPSAxKSB7Ci0gICAgICAgIGlmIChlcnJubyAhPSAwKSB7CisgICAgICAgIGlmIChwd19pbmZvLmVycm9yKSB7CisgICAgICAgICAgICBFUlJfY2xlYXJfZXJyb3IoKTsKKyAgICAgICAgICAgIC8qIHRoZSBwYXNzd29yZCBjYWxsYmFjayBoYXMgYWxyZWFkeSBzZXQgdGhlIGVycm9yIGluZm9ybWF0aW9uICovCisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoZXJybm8gIT0gMCkgewogICAgICAgICAgICAgRVJSX2NsZWFyX2Vycm9yKCk7CiAgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICBfc2V0U1NMRXJyb3IoTlVMTCwgMCwgX19GSUxFX18sIF9fTElORV9fKTsKICAgICAgICAgfQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgZ290byBlcnJvcjsKICAgICB9Ci0gICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFNfUyhwd19pbmZvLnRocmVhZF9zdGF0ZSk7CiAgICAgciA9IFNTTF9DVFhfY2hlY2tfcHJpdmF0ZV9rZXkoc2VsZi0+Y3R4KTsKLSAgICBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEUworICAgIFB5U1NMX0VORF9BTExPV19USFJFQURTX1MocHdfaW5mby50aHJlYWRfc3RhdGUpOwogICAgIGlmIChyICE9IDEpIHsKICAgICAgICAgX3NldFNTTEVycm9yKE5VTEwsIDAsIF9fRklMRV9fLCBfX0xJTkVfXyk7Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KKyAgICBTU0xfQ1RYX3NldF9kZWZhdWx0X3Bhc3N3ZF9jYihzZWxmLT5jdHgsIG9yaWdfcGFzc3dkX2NiKTsKKyAgICBTU0xfQ1RYX3NldF9kZWZhdWx0X3Bhc3N3ZF9jYl91c2VyZGF0YShzZWxmLT5jdHgsIG9yaWdfcGFzc3dkX3VzZXJkYXRhKTsKKyAgICBmcmVlKHB3X2luZm8ucGFzc3dvcmQpOwogICAgIFB5X1JFVFVSTl9OT05FOwogCiBlcnJvcjoKKyAgICBTU0xfQ1RYX3NldF9kZWZhdWx0X3Bhc3N3ZF9jYihzZWxmLT5jdHgsIG9yaWdfcGFzc3dkX2NiKTsKKyAgICBTU0xfQ1RYX3NldF9kZWZhdWx0X3Bhc3N3ZF9jYl91c2VyZGF0YShzZWxmLT5jdHgsIG9yaWdfcGFzc3dkX3VzZXJkYXRhKTsKKyAgICBmcmVlKHB3X2luZm8ucGFzc3dvcmQpOwogICAgIFB5X1hERUNSRUYoa2V5ZmlsZV9ieXRlcyk7CiAgICAgUHlfWERFQ1JFRihjZXJ0ZmlsZV9ieXRlcyk7CiAgICAgcmV0dXJuIE5VTEw7CkBAIC0xNzIwLDYgKzE5MzksMzggQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKK2xvYWRfZGhfcGFyYW1zKFB5U1NMQ29udGV4dCAqc2VsZiwgUHlPYmplY3QgKmZpbGVwYXRoKQoreworICAgIEZJTEUgKmY7CisgICAgREggKmRoOworCisgICAgZiA9IF9QeV9mb3BlbihmaWxlcGF0aCwgInJiIik7CisgICAgaWYgKGYgPT0gTlVMTCkgeworICAgICAgICBpZiAoIVB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWVPYmplY3QoUHlFeGNfT1NFcnJvciwgZmlsZXBhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZXJybm8gPSAwOworICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICBkaCA9IFBFTV9yZWFkX0RIcGFyYW1zKGYsIE5VTEwsIE5VTEwsIE5VTEwpOworICAgIFB5U1NMX0VORF9BTExPV19USFJFQURTCisgICAgaWYgKGRoID09IE5VTEwpIHsKKyAgICAgICAgaWYgKGVycm5vICE9IDApIHsKKyAgICAgICAgICAgIEVSUl9jbGVhcl9lcnJvcigpOworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vV2l0aEZpbGVuYW1lT2JqZWN0KFB5RXhjX09TRXJyb3IsIGZpbGVwYXRoKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIF9zZXRTU0xFcnJvcihOVUxMLCAwLCBfX0ZJTEVfXywgX19MSU5FX18pOworICAgICAgICB9CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoU1NMX0NUWF9zZXRfdG1wX2RoKHNlbGYtPmN0eCwgZGgpID09IDApCisgICAgICAgIF9zZXRTU0xFcnJvcihOVUxMLCAwLCBfX0ZJTEVfXywgX19MSU5FX18pOworICAgIERIX2ZyZWUoZGgpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorCitzdGF0aWMgUHlPYmplY3QgKgogY29udGV4dF93cmFwX3NvY2tldChQeVNTTENvbnRleHQgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKICAgICBjaGFyICprd2xpc3RbXSA9IHsic29jayIsICJzZXJ2ZXJfc2lkZSIsICJzZXJ2ZXJfaG9zdG5hbWUiLCBOVUxMfTsKQEAgLTE4MDQsNiArMjA1NSwzNSBAQAogICAgIFB5X1JFVFVSTl9OT05FOwogfQogCisjaWZuZGVmIE9QRU5TU0xfTk9fRUNESAorc3RhdGljIFB5T2JqZWN0ICoKK3NldF9lY2RoX2N1cnZlKFB5U1NMQ29udGV4dCAqc2VsZiwgUHlPYmplY3QgKm5hbWUpCit7CisgICAgUHlPYmplY3QgKm5hbWVfYnl0ZXM7CisgICAgaW50IG5pZDsKKyAgICBFQ19LRVkgKmtleTsKKworICAgIGlmICghUHlVbmljb2RlX0ZTQ29udmVydGVyKG5hbWUsICZuYW1lX2J5dGVzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgYXNzZXJ0KFB5Qnl0ZXNfQ2hlY2sobmFtZV9ieXRlcykpOworICAgIG5pZCA9IE9CSl9zbjJuaWQoUHlCeXRlc19BU19TVFJJTkcobmFtZV9ieXRlcykpOworICAgIFB5X0RFQ1JFRihuYW1lX2J5dGVzKTsKKyAgICBpZiAobmlkID09IDApIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAidW5rbm93biBlbGxpcHRpYyBjdXJ2ZSBuYW1lICVSIiwgbmFtZSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBrZXkgPSBFQ19LRVlfbmV3X2J5X2N1cnZlX25hbWUobmlkKTsKKyAgICBpZiAoa2V5ID09IE5VTEwpIHsKKyAgICAgICAgX3NldFNTTEVycm9yKE5VTEwsIDAsIF9fRklMRV9fLCBfX0xJTkVfXyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBTU0xfQ1RYX3NldF90bXBfZWNkaChzZWxmLT5jdHgsIGtleSk7CisgICAgRUNfS0VZX2ZyZWUoa2V5KTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCiBzdGF0aWMgUHlHZXRTZXREZWYgY29udGV4dF9nZXRzZXRsaXN0W10gPSB7CiAgICAgeyJvcHRpb25zIiwgKGdldHRlcikgZ2V0X29wdGlvbnMsCiAgICAgICAgICAgICAgICAgKHNldHRlcikgc2V0X29wdGlvbnMsIE5VTEx9LApAQCAtMTgxOSwxMiArMjA5OSwxOCBAQAogICAgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1MsIE5VTEx9LAogICAgIHsibG9hZF9jZXJ0X2NoYWluIiwgKFB5Q0Z1bmN0aW9uKSBsb2FkX2NlcnRfY2hhaW4sCiAgICAgICAgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLCBOVUxMfSwKKyAgICB7ImxvYWRfZGhfcGFyYW1zIiwgKFB5Q0Z1bmN0aW9uKSBsb2FkX2RoX3BhcmFtcywKKyAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9PLCBOVUxMfSwKICAgICB7ImxvYWRfdmVyaWZ5X2xvY2F0aW9ucyIsIChQeUNGdW5jdGlvbikgbG9hZF92ZXJpZnlfbG9jYXRpb25zLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUywgTlVMTH0sCiAgICAgeyJzZXNzaW9uX3N0YXRzIiwgKFB5Q0Z1bmN0aW9uKSBzZXNzaW9uX3N0YXRzLAogICAgICAgICAgICAgICAgICAgICAgIE1FVEhfTk9BUkdTLCBOVUxMfSwKICAgICB7InNldF9kZWZhdWx0X3ZlcmlmeV9wYXRocyIsIChQeUNGdW5jdGlvbikgc2V0X2RlZmF1bHRfdmVyaWZ5X3BhdGhzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9OT0FSR1MsIE5VTEx9LAorI2lmbmRlZiBPUEVOU1NMX05PX0VDREgKKyAgICB7InNldF9lY2RoX2N1cnZlIiwgKFB5Q0Z1bmN0aW9uKSBzZXRfZWNkaF9jdXJ2ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9PLCBOVUxMfSwKKyNlbmRpZgogICAgIHtOVUxMLCBOVUxMfSAgICAgICAgLyogc2VudGluZWwgKi8KIH07CiAKQEAgLTE4OTUsNiArMjE4MSw2OSBAQAogYm91bmQgb24gdGhlIGVudHJvcHkgY29udGFpbmVkIGluIHN0cmluZy4gIFNlZSBSRkMgMTc1MC4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKK1B5U1NMX1JBTkQoaW50IGxlbiwgaW50IHBzZXVkbykKK3sKKyAgICBpbnQgb2s7CisgICAgUHlPYmplY3QgKmJ5dGVzOworICAgIHVuc2lnbmVkIGxvbmcgZXJyOworICAgIGNvbnN0IGNoYXIgKmVycnN0cjsKKyAgICBQeU9iamVjdCAqdjsKKworICAgIGJ5dGVzID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBsZW4pOworICAgIGlmIChieXRlcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAocHNldWRvKSB7CisgICAgICAgIG9rID0gUkFORF9wc2V1ZG9fYnl0ZXMoKHVuc2lnbmVkIGNoYXIqKVB5Qnl0ZXNfQVNfU1RSSU5HKGJ5dGVzKSwgbGVuKTsKKyAgICAgICAgaWYgKG9rID09IDAgfHwgb2sgPT0gMSkKKyAgICAgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJOTyIsIGJ5dGVzLCBvayA9PSAxID8gUHlfVHJ1ZSA6IFB5X0ZhbHNlKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIG9rID0gUkFORF9ieXRlcygodW5zaWduZWQgY2hhciopUHlCeXRlc19BU19TVFJJTkcoYnl0ZXMpLCBsZW4pOworICAgICAgICBpZiAob2sgPT0gMSkKKyAgICAgICAgICAgIHJldHVybiBieXRlczsKKyAgICB9CisgICAgUHlfREVDUkVGKGJ5dGVzKTsKKworICAgIGVyciA9IEVSUl9nZXRfZXJyb3IoKTsKKyAgICBlcnJzdHIgPSBFUlJfcmVhc29uX2Vycm9yX3N0cmluZyhlcnIpOworICAgIHYgPSBQeV9CdWlsZFZhbHVlKCIoa3MpIiwgZXJyLCBlcnJzdHIpOworICAgIGlmICh2ICE9IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5U1NMRXJyb3JPYmplY3QsIHYpOworICAgICAgICBQeV9ERUNSRUYodik7CisgICAgfQorICAgIHJldHVybiBOVUxMOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorUHlTU0xfUkFORF9ieXRlcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IGxlbjsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6UkFORF9ieXRlcyIsICZsZW4pKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gUHlTU0xfUkFORChsZW4sIDApOworfQorCitQeURvY19TVFJWQVIoUHlTU0xfUkFORF9ieXRlc19kb2MsCisiUkFORF9ieXRlcyhuKSAtPiBieXRlc1xuXAorXG5cCitHZW5lcmF0ZSBuIGNyeXB0b2dyYXBoaWNhbGx5IHN0cm9uZyBwc2V1ZG8tcmFuZG9tIGJ5dGVzLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorUHlTU0xfUkFORF9wc2V1ZG9fYnl0ZXMoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBsZW47CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpOlJBTkRfcHNldWRvX2J5dGVzIiwgJmxlbikpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiBQeVNTTF9SQU5EKGxlbiwgMSk7Cit9CisKK1B5RG9jX1NUUlZBUihQeVNTTF9SQU5EX3BzZXVkb19ieXRlc19kb2MsCisiUkFORF9wc2V1ZG9fYnl0ZXMobikgLT4gKGJ5dGVzLCBpc19jcnlwdG9ncmFwaGljKVxuXAorXG5cCitHZW5lcmF0ZSBuIHBzZXVkby1yYW5kb20gYnl0ZXMuIGlzX2NyeXB0b2dyYXBoaWMgaXMgVHJ1ZSBpZiB0aGUgYnl0ZXNcCitnZW5lcmF0ZWQgYXJlIGNyeXB0b2dyYXBoaWNhbGx5IHN0cm9uZy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKIFB5U1NMX1JBTkRfc3RhdHVzKFB5T2JqZWN0ICpzZWxmKQogewogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoUkFORF9zdGF0dXMoKSk7CkBAIC0xOTQ3LDYgKzIyOTYsMTAgQEAKICNpZmRlZiBIQVZFX09QRU5TU0xfUkFORAogICAgIHsiUkFORF9hZGQiLCAgICAgICAgICAgIFB5U1NMX1JBTkRfYWRkLCBNRVRIX1ZBUkFSR1MsCiAgICAgIFB5U1NMX1JBTkRfYWRkX2RvY30sCisgICAgeyJSQU5EX2J5dGVzIiwgICAgICAgICAgUHlTU0xfUkFORF9ieXRlcywgTUVUSF9WQVJBUkdTLAorICAgICBQeVNTTF9SQU5EX2J5dGVzX2RvY30sCisgICAgeyJSQU5EX3BzZXVkb19ieXRlcyIsICAgUHlTU0xfUkFORF9wc2V1ZG9fYnl0ZXMsIE1FVEhfVkFSQVJHUywKKyAgICAgUHlTU0xfUkFORF9wc2V1ZG9fYnl0ZXNfZG9jfSwKICAgICB7IlJBTkRfZWdkIiwgICAgICAgICAgICBQeVNTTF9SQU5EX2VnZCwgTUVUSF9WQVJBUkdTLAogICAgICBQeVNTTF9SQU5EX2VnZF9kb2N9LAogICAgIHsiUkFORF9zdGF0dXMiLCAgICAgICAgIChQeUNGdW5jdGlvbilQeVNTTF9SQU5EX3N0YXR1cywgTUVUSF9OT0FSR1MsCkBAIC0yMDYwLDYgKzI0MTMsMjcgQEAKICAgICAqbWFqb3IgPSBsaWJ2ZXIgJiAweEZGOwogfQogCitQeURvY19TVFJWQVIoU1NMRXJyb3JfZG9jLAorIkFuIGVycm9yIG9jY3VycmVkIGluIHRoZSBTU0wgaW1wbGVtZW50YXRpb24uIik7CisKK1B5RG9jX1NUUlZBUihTU0xaZXJvUmV0dXJuRXJyb3JfZG9jLAorIlNTTC9UTFMgc2Vzc2lvbiBjbG9zZWQgY2xlYW5seS4iKTsKKworUHlEb2NfU1RSVkFSKFNTTFdhbnRSZWFkRXJyb3JfZG9jLAorIk5vbi1ibG9ja2luZyBTU0wgc29ja2V0IG5lZWRzIHRvIHJlYWQgbW9yZSBkYXRhXG4iCisiYmVmb3JlIHRoZSByZXF1ZXN0ZWQgb3BlcmF0aW9uIGNhbiBiZSBjb21wbGV0ZWQuIik7CisKK1B5RG9jX1NUUlZBUihTU0xXYW50V3JpdGVFcnJvcl9kb2MsCisiTm9uLWJsb2NraW5nIFNTTCBzb2NrZXQgbmVlZHMgdG8gd3JpdGUgbW9yZSBkYXRhXG4iCisiYmVmb3JlIHRoZSByZXF1ZXN0ZWQgb3BlcmF0aW9uIGNhbiBiZSBjb21wbGV0ZWQuIik7CisKK1B5RG9jX1NUUlZBUihTU0xTeXNjYWxsRXJyb3JfZG9jLAorIlN5c3RlbSBlcnJvciB3aGVuIGF0dGVtcHRpbmcgU1NMIG9wZXJhdGlvbi4iKTsKKworUHlEb2NfU1RSVkFSKFNTTEVPRkVycm9yX2RvYywKKyJTU0wvVExTIGNvbm5lY3Rpb24gdGVybWluYXRlZCBhYnJ1cHRseS4iKTsKKworCiBQeU1PRElOSVRfRlVOQwogUHlJbml0X19zc2wodm9pZCkKIHsKQEAgLTIwOTYsMTIgKzI0NzAsMzkgQEAKICAgICBPcGVuU1NMX2FkZF9hbGxfYWxnb3JpdGhtcygpOwogCiAgICAgLyogQWRkIHN5bWJvbHMgdG8gbW9kdWxlIGRpY3QgKi8KLSAgICBQeVNTTEVycm9yT2JqZWN0ID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJzc2wuU1NMRXJyb3IiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlTb2NrZXRNb2R1bGUuZXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgICBQeVNTTEVycm9yT2JqZWN0ID0gUHlFcnJfTmV3RXhjZXB0aW9uV2l0aERvYygic3NsLlNTTEVycm9yIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTU0xFcnJvcl9kb2MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFeGNfT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKICAgICBpZiAoUHlTU0xFcnJvck9iamVjdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlNTTEVycm9yIiwgUHlTU0xFcnJvck9iamVjdCkgIT0gMCkKKyAgICBQeVNTTFplcm9SZXR1cm5FcnJvck9iamVjdCA9IFB5RXJyX05ld0V4Y2VwdGlvbldpdGhEb2MoCisgICAgICAgICJzc2wuU1NMWmVyb1JldHVybkVycm9yIiwgU1NMWmVyb1JldHVybkVycm9yX2RvYywKKyAgICAgICAgUHlTU0xFcnJvck9iamVjdCwgTlVMTCk7CisgICAgUHlTU0xXYW50UmVhZEVycm9yT2JqZWN0ID0gUHlFcnJfTmV3RXhjZXB0aW9uV2l0aERvYygKKyAgICAgICAgInNzbC5TU0xXYW50UmVhZEVycm9yIiwgU1NMV2FudFJlYWRFcnJvcl9kb2MsCisgICAgICAgIFB5U1NMRXJyb3JPYmplY3QsIE5VTEwpOworICAgIFB5U1NMV2FudFdyaXRlRXJyb3JPYmplY3QgPSBQeUVycl9OZXdFeGNlcHRpb25XaXRoRG9jKAorICAgICAgICAic3NsLlNTTFdhbnRXcml0ZUVycm9yIiwgU1NMV2FudFdyaXRlRXJyb3JfZG9jLAorICAgICAgICBQeVNTTEVycm9yT2JqZWN0LCBOVUxMKTsKKyAgICBQeVNTTFN5c2NhbGxFcnJvck9iamVjdCA9IFB5RXJyX05ld0V4Y2VwdGlvbldpdGhEb2MoCisgICAgICAgICJzc2wuU1NMU3lzY2FsbEVycm9yIiwgU1NMU3lzY2FsbEVycm9yX2RvYywKKyAgICAgICAgUHlTU0xFcnJvck9iamVjdCwgTlVMTCk7CisgICAgUHlTU0xFT0ZFcnJvck9iamVjdCA9IFB5RXJyX05ld0V4Y2VwdGlvbldpdGhEb2MoCisgICAgICAgICJzc2wuU1NMRU9GRXJyb3IiLCBTU0xFT0ZFcnJvcl9kb2MsCisgICAgICAgIFB5U1NMRXJyb3JPYmplY3QsIE5VTEwpOworICAgIGlmIChQeVNTTFplcm9SZXR1cm5FcnJvck9iamVjdCA9PSBOVUxMCisgICAgICAgIHx8IFB5U1NMV2FudFJlYWRFcnJvck9iamVjdCA9PSBOVUxMCisgICAgICAgIHx8IFB5U1NMV2FudFdyaXRlRXJyb3JPYmplY3QgPT0gTlVMTAorICAgICAgICB8fCBQeVNTTFN5c2NhbGxFcnJvck9iamVjdCA9PSBOVUxMCisgICAgICAgIHx8IFB5U1NMRU9GRXJyb3JPYmplY3QgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJTU0xFcnJvciIsIFB5U1NMRXJyb3JPYmplY3QpICE9IDAKKyAgICAgICAgfHwgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlNTTFplcm9SZXR1cm5FcnJvciIsIFB5U1NMWmVyb1JldHVybkVycm9yT2JqZWN0KSAhPSAwCisgICAgICAgIHx8IFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJTU0xXYW50UmVhZEVycm9yIiwgUHlTU0xXYW50UmVhZEVycm9yT2JqZWN0KSAhPSAwCisgICAgICAgIHx8IFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJTU0xXYW50V3JpdGVFcnJvciIsIFB5U1NMV2FudFdyaXRlRXJyb3JPYmplY3QpICE9IDAKKyAgICAgICAgfHwgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlNTTFN5c2NhbGxFcnJvciIsIFB5U1NMU3lzY2FsbEVycm9yT2JqZWN0KSAhPSAwCisgICAgICAgIHx8IFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJTU0xFT0ZFcnJvciIsIFB5U1NMRU9GRXJyb3JPYmplY3QpICE9IDApCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiX1NTTENvbnRleHQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlPYmplY3QgKikmUHlTU0xDb250ZXh0X1R5cGUpICE9IDApCkBAIC0yMTU0LDYgKzI1NTUsMTYgQEAKICAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiT1BfTk9fU1NMdjIiLCBTU0xfT1BfTk9fU1NMdjIpOwogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJPUF9OT19TU0x2MyIsIFNTTF9PUF9OT19TU0x2Myk7CiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk9QX05PX1RMU3YxIiwgU1NMX09QX05PX1RMU3YxKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiT1BfQ0lQSEVSX1NFUlZFUl9QUkVGRVJFTkNFIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBTU0xfT1BfQ0lQSEVSX1NFUlZFUl9QUkVGRVJFTkNFKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiT1BfU0lOR0xFX0RIX1VTRSIsIFNTTF9PUF9TSU5HTEVfREhfVVNFKTsKKyNpZmRlZiBTU0xfT1BfU0lOR0xFX0VDREhfVVNFCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk9QX1NJTkdMRV9FQ0RIX1VTRSIsIFNTTF9PUF9TSU5HTEVfRUNESF9VU0UpOworI2VuZGlmCisjaWZkZWYgU1NMX09QX05PX0NPTVBSRVNTSU9OCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk9QX05PX0NPTVBSRVNTSU9OIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBTU0xfT1BfTk9fQ09NUFJFU1NJT04pOworI2VuZGlmCiAKICNpZmRlZiBTU0xfQ1RSTF9TRVRfVExTRVhUX0hPU1ROQU1FCiAgICAgciA9IFB5X1RydWU7CkBAIC0yMTYzLDYgKzI1NzQsMjIgQEAKICAgICBQeV9JTkNSRUYocik7CiAgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJIQVNfU05JIiwgcik7CiAKKyNpZiBIQVZFX09QRU5TU0xfRklOSVNIRUQKKyAgICByID0gUHlfVHJ1ZTsKKyNlbHNlCisgICAgciA9IFB5X0ZhbHNlOworI2VuZGlmCisgICAgUHlfSU5DUkVGKHIpOworICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiSEFTX1RMU19VTklRVUUiLCByKTsKKworI2lmZGVmIE9QRU5TU0xfTk9fRUNESAorICAgIHIgPSBQeV9GYWxzZTsKKyNlbHNlCisgICAgciA9IFB5X1RydWU7CisjZW5kaWYKKyAgICBQeV9JTkNSRUYocik7CisgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJIQVNfRUNESCIsIHIpOworCiAgICAgLyogT3BlblNTTCB2ZXJzaW9uICovCiAgICAgLyogU1NMZWF5KCkgZ2l2ZXMgdXMgdGhlIHZlcnNpb24gb2YgdGhlIGxpYnJhcnkgbGlua2VkIGFnYWluc3QsCiAgICAgICAgd2hpY2ggY291bGQgYmUgZGlmZmVyZW50IGZyb20gdGhlIGhlYWRlcnMgdmVyc2lvbi4KZGlmZiAtLWdpdCBhL01vZHVsZXMvX3N0cnVjdC5jIGIvTW9kdWxlcy9fc3RydWN0LmMKaW5kZXggMTYwNGI5MC4uZGNkYzgzZSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3RydWN0LmMKKysrIGIvTW9kdWxlcy9fc3RydWN0LmMKQEAgLTU4LDYgKzU4LDcgQEAKIHR5cGVkZWYgc3RydWN0IHsgY2hhciBjOyBmbG9hdCB4OyB9IHN0X2Zsb2F0OwogdHlwZWRlZiBzdHJ1Y3QgeyBjaGFyIGM7IGRvdWJsZSB4OyB9IHN0X2RvdWJsZTsKIHR5cGVkZWYgc3RydWN0IHsgY2hhciBjOyB2b2lkICp4OyB9IHN0X3ZvaWRfcDsKK3R5cGVkZWYgc3RydWN0IHsgY2hhciBjOyBzaXplX3QgeDsgfSBzdF9zaXplX3Q7CiAKICNkZWZpbmUgU0hPUlRfQUxJR04gKHNpemVvZihzdF9zaG9ydCkgLSBzaXplb2Yoc2hvcnQpKQogI2RlZmluZSBJTlRfQUxJR04gKHNpemVvZihzdF9pbnQpIC0gc2l6ZW9mKGludCkpCkBAIC02NSw2ICs2Niw3IEBACiAjZGVmaW5lIEZMT0FUX0FMSUdOIChzaXplb2Yoc3RfZmxvYXQpIC0gc2l6ZW9mKGZsb2F0KSkKICNkZWZpbmUgRE9VQkxFX0FMSUdOIChzaXplb2Yoc3RfZG91YmxlKSAtIHNpemVvZihkb3VibGUpKQogI2RlZmluZSBWT0lEX1BfQUxJR04gKHNpemVvZihzdF92b2lkX3ApIC0gc2l6ZW9mKHZvaWQgKikpCisjZGVmaW5lIFNJWkVfVF9BTElHTiAoc2l6ZW9mKHN0X3NpemVfdCkgLSBzaXplb2Yoc2l6ZV90KSkKIAogLyogV2UgY2FuJ3Qgc3VwcG9ydCBxIGFuZCBRIGluIG5hdGl2ZSBtb2RlIHVubGVzcyB0aGUgY29tcGlsZXIgZG9lczsKICAgIGluIHN0ZCBtb2RlLCB0aGV5J3JlIDggYnl0ZXMgb24gYWxsIHBsYXRmb3Jtcy4gKi8KQEAgLTIxMyw2ICsyMTUsNTIgQEAKIAogI2VuZGlmCiAKKy8qIFNhbWUsIGJ1dCBoYW5kbGluZyBQeV9zc2l6ZV90ICovCisKK3N0YXRpYyBpbnQKK2dldF9zc2l6ZV90KFB5T2JqZWN0ICp2LCBQeV9zc2l6ZV90ICpwKQoreworICAgIFB5X3NzaXplX3QgeDsKKworICAgIHYgPSBnZXRfcHlsb25nKHYpOworICAgIGlmICh2ID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBhc3NlcnQoUHlMb25nX0NoZWNrKHYpKTsKKyAgICB4ID0gUHlMb25nX0FzU3NpemVfdCh2KTsKKyAgICBQeV9ERUNSRUYodik7CisgICAgaWYgKHggPT0gKFB5X3NzaXplX3QpLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkgeworICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19PdmVyZmxvd0Vycm9yKSkKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhTdHJ1Y3RFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYXJndW1lbnQgb3V0IG9mIHJhbmdlIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgKnAgPSB4OworICAgIHJldHVybiAwOworfQorCisvKiBTYW1lLCBidXQgaGFuZGxpbmcgc2l6ZV90ICovCisKK3N0YXRpYyBpbnQKK2dldF9zaXplX3QoUHlPYmplY3QgKnYsIHNpemVfdCAqcCkKK3sKKyAgICBzaXplX3QgeDsKKworICAgIHYgPSBnZXRfcHlsb25nKHYpOworICAgIGlmICh2ID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBhc3NlcnQoUHlMb25nX0NoZWNrKHYpKTsKKyAgICB4ID0gUHlMb25nX0FzU2l6ZV90KHYpOworICAgIFB5X0RFQ1JFRih2KTsKKyAgICBpZiAoeCA9PSAoc2l6ZV90KS0xICYmIFB5RXJyX09jY3VycmVkKCkpIHsKKyAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfT3ZlcmZsb3dFcnJvcikpCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoU3RydWN0RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFyZ3VtZW50IG91dCBvZiByYW5nZSIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgICpwID0geDsKKyAgICByZXR1cm4gMDsKK30KKwogCiAjZGVmaW5lIFJBTkdFX0VSUk9SKHgsIGYsIGZsYWcsIG1hc2spIHJldHVybiBfcmFuZ2VfZXJyb3IoZiwgZmxhZykKIApAQCAtMzY5LDYgKzQxNywyMyBAQAogICAgIHJldHVybiBQeUxvbmdfRnJvbVVuc2lnbmVkTG9uZyh4KTsKIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK251X3NzaXplX3QoY29uc3QgY2hhciAqcCwgY29uc3QgZm9ybWF0ZGVmICpmKQoreworICAgIFB5X3NzaXplX3QgeDsKKyAgICBtZW1jcHkoKGNoYXIgKikmeCwgcCwgc2l6ZW9mIHgpOworICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3QoeCk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitudV9zaXplX3QoY29uc3QgY2hhciAqcCwgY29uc3QgZm9ybWF0ZGVmICpmKQoreworICAgIHNpemVfdCB4OworICAgIG1lbWNweSgoY2hhciAqKSZ4LCBwLCBzaXplb2YgeCk7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU2l6ZV90KHgpOworfQorCisKIC8qIE5hdGl2ZSBtb2RlIGRvZXNuJ3Qgc3VwcG9ydCBxIG9yIFEgdW5sZXNzIHRoZSBwbGF0Zm9ybSBDIHN1cHBvcnRzCiAgICBsb25nIGxvbmcgKG9yLCBvbiBXaW5kb3dzLCBfX2ludDY0KS4gKi8KIApAQCAtNTU4LDYgKzYyMywyNiBAQAogICAgIHJldHVybiAwOwogfQogCitzdGF0aWMgaW50CitucF9zc2l6ZV90KGNoYXIgKnAsIFB5T2JqZWN0ICp2LCBjb25zdCBmb3JtYXRkZWYgKmYpCit7CisgICAgUHlfc3NpemVfdCB4OworICAgIGlmIChnZXRfc3NpemVfdCh2LCAmeCkgPCAwKQorICAgICAgICByZXR1cm4gLTE7CisgICAgbWVtY3B5KHAsIChjaGFyICopJngsIHNpemVvZiB4KTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAorbnBfc2l6ZV90KGNoYXIgKnAsIFB5T2JqZWN0ICp2LCBjb25zdCBmb3JtYXRkZWYgKmYpCit7CisgICAgc2l6ZV90IHg7CisgICAgaWYgKGdldF9zaXplX3QodiwgJngpIDwgMCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIG1lbWNweShwLCAoY2hhciAqKSZ4LCBzaXplb2YgeCk7CisgICAgcmV0dXJuIDA7Cit9CisKICNpZmRlZiBIQVZFX0xPTkdfTE9ORwogCiBzdGF0aWMgaW50CkBAIC02NTEsNiArNzM2LDggQEAKICAgICB7J0knLCAgICAgICBzaXplb2YoaW50KSwgICAgSU5UX0FMSUdOLCAgICAgIG51X3VpbnQsICAgICAgICBucF91aW50fSwKICAgICB7J2wnLCAgICAgICBzaXplb2YobG9uZyksICAgTE9OR19BTElHTiwgICAgIG51X2xvbmcsICAgICAgICBucF9sb25nfSwKICAgICB7J0wnLCAgICAgICBzaXplb2YobG9uZyksICAgTE9OR19BTElHTiwgICAgIG51X3Vsb25nLCAgICAgICBucF91bG9uZ30sCisgICAgeyduJywgICAgICAgc2l6ZW9mKHNpemVfdCksIFNJWkVfVF9BTElHTiwgICBudV9zc2l6ZV90LCAgICAgbnBfc3NpemVfdH0sCisgICAgeydOJywgICAgICAgc2l6ZW9mKHNpemVfdCksIFNJWkVfVF9BTElHTiwgICBudV9zaXplX3QsICAgICAgbnBfc2l6ZV90fSwKICNpZmRlZiBIQVZFX0xPTkdfTE9ORwogICAgIHsncScsICAgICAgIHNpemVvZihQWV9MT05HX0xPTkcpLCBMT05HX0xPTkdfQUxJR04sIG51X2xvbmdsb25nLCBucF9sb25nbG9uZ30sCiAgICAgeydRJywgICAgICAgc2l6ZW9mKFBZX0xPTkdfTE9ORyksIExPTkdfTE9OR19BTElHTiwgbnVfdWxvbmdsb25nLG5wX3Vsb25nbG9uZ30sCkBAIC0xOTUxLDcgKzIwMzgsOCBAQAogICBsOmxvbmc7IEw6dW5zaWduZWQgbG9uZzsgZjpmbG9hdDsgZDpkb3VibGUuXG5cCiBTcGVjaWFsIGNhc2VzIChwcmVjZWRpbmcgZGVjaW1hbCBjb3VudCBpbmRpY2F0ZXMgbGVuZ3RoKTpcblwKICAgczpzdHJpbmcgKGFycmF5IG9mIGNoYXIpOyBwOiBwYXNjYWwgc3RyaW5nICh3aXRoIGNvdW50IGJ5dGUpLlxuXAotU3BlY2lhbCBjYXNlIChvbmx5IGF2YWlsYWJsZSBpbiBuYXRpdmUgZm9ybWF0KTpcblwKK1NwZWNpYWwgY2FzZXMgKG9ubHkgYXZhaWxhYmxlIGluIG5hdGl2ZSBmb3JtYXQpOlxuXAorICBuOnNzaXplX3Q7IE46c2l6ZV90O1xuXAogICBQOmFuIGludGVnZXIgdHlwZSB0aGF0IGlzIHdpZGUgZW5vdWdoIHRvIGhvbGQgYSBwb2ludGVyLlxuXAogU3BlY2lhbCBjYXNlIChub3QgaW4gbmF0aXZlIG1vZGUgdW5sZXNzICdsb25nIGxvbmcnIGluIHBsYXRmb3JtIEMpOlxuXAogICBxOmxvbmcgbG9uZzsgUTp1bnNpZ25lZCBsb25nIGxvbmdcblwKZGlmZiAtLWdpdCBhL01vZHVsZXMvX3Rlc3RidWZmZXIuYyBiL01vZHVsZXMvX3Rlc3RidWZmZXIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYzRhZWE4Ci0tLSAvZGV2L251bGwKKysrIGIvTW9kdWxlcy9fdGVzdGJ1ZmZlci5jCkBAIC0wLDAgKzEsMjgxMyBAQAorLyogQyBFeHRlbnNpb24gbW9kdWxlIHRvIHRlc3QgYWxsIGFzcGVjdHMgb2YgUEVQLTMxMTguCisgICBXcml0dGVuIGJ5IFN0ZWZhbiBLcmFoLiAqLworCisKKyNkZWZpbmUgUFlfU1NJWkVfVF9DTEVBTgorCisjaW5jbHVkZSAiUHl0aG9uLmgiCisKKworLyogc3RydWN0IG1vZHVsZSAqLworUHlPYmplY3QgKnN0cnVjdG1vZHVsZSA9IE5VTEw7CitQeU9iamVjdCAqU3RydWN0ID0gTlVMTDsKK1B5T2JqZWN0ICpjYWxjc2l6ZSA9IE5VTEw7CisKKy8qIGNhY2hlIHNpbXBsZSBmb3JtYXQgc3RyaW5nICovCitzdGF0aWMgY29uc3QgY2hhciAqc2ltcGxlX2ZtdCA9ICJCIjsKK1B5T2JqZWN0ICpzaW1wbGVfZm9ybWF0ID0gTlVMTDsKKyNkZWZpbmUgU0lNUExFX0ZPUk1BVChmbXQpIChmbXQgPT0gTlVMTCB8fCBzdHJjbXAoZm10LCAiQiIpID09IDApCisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5EQXJyYXkgT2JqZWN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitzdGF0aWMgUHlUeXBlT2JqZWN0IE5EQXJyYXlfVHlwZTsKKyNkZWZpbmUgTkRBcnJheV9DaGVjayh2KSAoUHlfVFlQRSh2KSA9PSAmTkRBcnJheV9UeXBlKQorCisjZGVmaW5lIENIRUNLX0xJU1RfT1JfVFVQTEUodikgXAorICAgIGlmICghUHlMaXN0X0NoZWNrKHYpICYmICFQeVR1cGxlX0NoZWNrKHYpKSB7IFwKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgICAgICAgICBcCisgICAgICAgICAgICAjdiAiIG11c3QgYmUgYSBsaXN0IG9yIGEgdHVwbGUiKTsgICAgXAorICAgICAgICByZXR1cm4gTlVMTDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisKKyNkZWZpbmUgUHlNZW1fWEZyZWUodikgXAorICAgIGRvIHsgaWYgKHYpIFB5TWVtX0ZyZWUodik7IH0gd2hpbGUgKDApCisKKy8qIE1heGltdW0gbnVtYmVyIG9mIGRpbWVuc2lvbnMuICovCisjZGVmaW5lIE5EX01BWF9ORElNICgyICogUHlCVUZfTUFYX05ESU0pCisKKy8qIENoZWNrIGZvciB0aGUgcHJlc2VuY2Ugb2Ygc3Vib2Zmc2V0cyBpbiB0aGUgZmlyc3QgZGltZW5zaW9uLiAqLworI2RlZmluZSBIQVZFX1BUUihzdWJvZmZzZXRzKSAoc3Vib2Zmc2V0cyAmJiBzdWJvZmZzZXRzWzBdID49IDApCisvKiBBZGp1c3QgcHRyIGlmIHN1Ym9mZnNldHMgYXJlIHByZXNlbnQuICovCisjZGVmaW5lIEFESlVTVF9QVFIocHRyLCBzdWJvZmZzZXRzKSBcCisgICAgKEhBVkVfUFRSKHN1Ym9mZnNldHMpID8gKigoY2hhcioqKXB0cikgKyBzdWJvZmZzZXRzWzBdIDogcHRyKQorCisvKiBEZWZhdWx0OiBOdW1QeSBzdHlsZSAoc3RyaWRlcyksIHJlYWQtb25seSwgbm8gdmFyLWV4cG9ydCwgQy1zdHlsZSBsYXlvdXQgKi8KKyNkZWZpbmUgTkRfREVGQVVMVCAgICAgICAgICAweDAwMAorLyogVXNlciBjb25maWd1cmFibGUgZmxhZ3MgZm9yIHRoZSBuZGFycmF5ICovCisjZGVmaW5lIE5EX1ZBUkVYUE9SVCAgICAgICAgMHgwMDEgICAvKiBjaGFuZ2UgbGF5b3V0IHdoaWxlIGJ1ZmZlcnMgYXJlIGV4cG9ydGVkICovCisvKiBVc2VyIGNvbmZpZ3VyYWJsZSBmbGFncyBmb3IgZWFjaCBiYXNlIGJ1ZmZlciAqLworI2RlZmluZSBORF9XUklUQUJMRSAgICAgICAgIDB4MDAyICAgLyogbWFyayBiYXNlIGJ1ZmZlciBhcyB3cml0YWJsZSAqLworI2RlZmluZSBORF9GT1JUUkFOICAgICAgICAgIDB4MDA0ICAgLyogRm9ydHJhbiBjb250aWd1b3VzIGxheW91dCAqLworI2RlZmluZSBORF9TQ0FMQVIgICAgICAgICAgIDB4MDA4ICAgLyogc2NhbGFyOiBuZGltID0gMCAqLworI2RlZmluZSBORF9QSUwgICAgICAgICAgICAgIDB4MDEwICAgLyogY29udmVydCB0byBQSUwtc3R5bGUgYXJyYXkgKHN1Ym9mZnNldHMpICovCisjZGVmaW5lIE5EX1JFRElSRUNUICAgICAgICAgMHgwMjAgICAvKiByZWRpcmVjdCBidWZmZXIgcmVxdWVzdHMgKi8KKyNkZWZpbmUgTkRfR0VUQlVGX0ZBSUwgICAgICAweDA0MCAgIC8qIHRyaWdnZXIgZ2V0YnVmZmVyIGZhaWx1cmUgKi8KKyNkZWZpbmUgTkRfR0VUQlVGX1VOREVGSU5FRCAweDA4MCAgIC8qIHVuZGVmaW5lZCB2aWV3Lm9iaiAqLworLyogSW50ZXJuYWwgZmxhZ3MgZm9yIHRoZSBiYXNlIGJ1ZmZlciAqLworI2RlZmluZSBORF9DICAgICAgICAgICAgICAgIDB4MTAwICAgLyogQyBjb250aWd1b3VzIGxheW91dCAoZGVmYXVsdCkgKi8KKyNkZWZpbmUgTkRfT1dOX0FSUkFZUyAgICAgICAweDIwMCAgIC8qIGNvbnN1bWVyIG93bnMgYXJyYXlzICovCisKKy8qIG5kYXJyYXkgcHJvcGVydGllcyAqLworI2RlZmluZSBORF9JU19DT05TVU1FUihuZCkgXAorICAgICgoKE5EQXJyYXlPYmplY3QgKiluZCktPmhlYWQgPT0gJigoTkRBcnJheU9iamVjdCAqKW5kKS0+c3RhdGljYnVmKQorCisvKiBuZGJ1Zi0+ZmxhZ3MgcHJvcGVydGllcyAqLworI2RlZmluZSBORF9DX0NPTlRJR1VPVVMoZmxhZ3MpICghIShmbGFncyYoTkRfU0NBTEFSfE5EX0MpKSkKKyNkZWZpbmUgTkRfRk9SVFJBTl9DT05USUdVT1VTKGZsYWdzKSAoISEoZmxhZ3MmKE5EX1NDQUxBUnxORF9GT1JUUkFOKSkpCisjZGVmaW5lIE5EX0FOWV9DT05USUdVT1VTKGZsYWdzKSAoISEoZmxhZ3MmKE5EX1NDQUxBUnxORF9DfE5EX0ZPUlRSQU4pKSkKKworLyogZ2V0YnVmZmVyKCkgcmVxdWVzdHMgKi8KKyNkZWZpbmUgUkVRX0lORElSRUNUKGZsYWdzKSAoKGZsYWdzJlB5QlVGX0lORElSRUNUKSA9PSBQeUJVRl9JTkRJUkVDVCkKKyNkZWZpbmUgUkVRX0NfQ09OVElHVU9VUyhmbGFncykgKChmbGFncyZQeUJVRl9DX0NPTlRJR1VPVVMpID09IFB5QlVGX0NfQ09OVElHVU9VUykKKyNkZWZpbmUgUkVRX0ZfQ09OVElHVU9VUyhmbGFncykgKChmbGFncyZQeUJVRl9GX0NPTlRJR1VPVVMpID09IFB5QlVGX0ZfQ09OVElHVU9VUykKKyNkZWZpbmUgUkVRX0FOWV9DT05USUdVT1VTKGZsYWdzKSAoKGZsYWdzJlB5QlVGX0FOWV9DT05USUdVT1VTKSA9PSBQeUJVRl9BTllfQ09OVElHVU9VUykKKyNkZWZpbmUgUkVRX1NUUklERVMoZmxhZ3MpICgoZmxhZ3MmUHlCVUZfU1RSSURFUykgPT0gUHlCVUZfU1RSSURFUykKKyNkZWZpbmUgUkVRX1NIQVBFKGZsYWdzKSAoKGZsYWdzJlB5QlVGX05EKSA9PSBQeUJVRl9ORCkKKyNkZWZpbmUgUkVRX1dSSVRBQkxFKGZsYWdzKSAoZmxhZ3MmUHlCVUZfV1JJVEFCTEUpCisjZGVmaW5lIFJFUV9GT1JNQVQoZmxhZ3MpIChmbGFncyZQeUJVRl9GT1JNQVQpCisKKworLyogU2luZ2xlIG5vZGUgb2YgYSBsaXN0IG9mIGJhc2UgYnVmZmVycy4gVGhlIGxpc3QgaXMgbmVlZGVkIHRvIGltcGxlbWVudAorICAgY2hhbmdlcyBpbiBtZW1vcnkgbGF5b3V0IHdoaWxlIGV4cG9ydGVkIGJ1ZmZlcnMgYXJlIGFjdGl2ZS4gKi8KK3N0YXRpYyBQeVR5cGVPYmplY3QgTkRBcnJheV9UeXBlOworCitzdHJ1Y3QgbmRidWY7Cit0eXBlZGVmIHN0cnVjdCBuZGJ1ZiB7CisgICAgc3RydWN0IG5kYnVmICpuZXh0OworICAgIHN0cnVjdCBuZGJ1ZiAqcHJldjsKKyAgICBQeV9zc2l6ZV90IGxlbjsgICAgIC8qIGxlbmd0aCBvZiBkYXRhICovCisgICAgUHlfc3NpemVfdCBvZmZzZXQ7ICAvKiBzdGFydCBvZiB0aGUgYXJyYXkgcmVsYXRpdmUgdG8gZGF0YSAqLworICAgIGNoYXIgKmRhdGE7ICAgICAgICAgLyogcmF3IGRhdGEgKi8KKyAgICBpbnQgZmxhZ3M7ICAgICAgICAgIC8qIGNhcGFiaWxpdGllcyBvZiB0aGUgYmFzZSBidWZmZXIgKi8KKyAgICBQeV9zc2l6ZV90IGV4cG9ydHM7IC8qIG51bWJlciBvZiBleHBvcnRzICovCisgICAgUHlfYnVmZmVyIGJhc2U7ICAgICAvKiBiYXNlIGJ1ZmZlciAqLworfSBuZGJ1Zl90OworCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlPYmplY3RfSEVBRAorICAgIGludCBmbGFnczsgICAgICAgICAgLyogbmRhcnJheSBmbGFncyAqLworICAgIG5kYnVmX3Qgc3RhdGljYnVmOyAgLyogc3RhdGljIGJ1ZmZlciBmb3IgcmUtZXhwb3J0aW5nIG1vZGUgKi8KKyAgICBuZGJ1Zl90ICpoZWFkOyAgICAgIC8qIGN1cnJlbnRseSBhY3RpdmUgYmFzZSBidWZmZXIgKi8KK30gTkRBcnJheU9iamVjdDsKKworCitzdGF0aWMgbmRidWZfdCAqCituZGJ1Zl9uZXcoUHlfc3NpemVfdCBuaXRlbXMsIFB5X3NzaXplX3QgaXRlbXNpemUsIFB5X3NzaXplX3Qgb2Zmc2V0LCBpbnQgZmxhZ3MpCit7CisgICAgbmRidWZfdCAqbmRidWY7CisgICAgUHlfYnVmZmVyICpiYXNlOworICAgIFB5X3NzaXplX3QgbGVuOworCisgICAgbGVuID0gbml0ZW1zICogaXRlbXNpemU7CisgICAgaWYgKG9mZnNldCAlIGl0ZW1zaXplKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgIm9mZnNldCBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgaXRlbXNpemUiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmIChvZmZzZXQgPCAwIHx8IG9mZnNldCtpdGVtc2l6ZSA+IGxlbikgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIm9mZnNldCBvdXQgb2YgYm91bmRzIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIG5kYnVmID0gUHlNZW1fTWFsbG9jKHNpemVvZiAqbmRidWYpOworICAgIGlmIChuZGJ1ZiA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIG5kYnVmLT5uZXh0ID0gTlVMTDsKKyAgICBuZGJ1Zi0+cHJldiA9IE5VTEw7CisgICAgbmRidWYtPmxlbiA9IGxlbjsKKyAgICBuZGJ1Zi0+b2Zmc2V0PSBvZmZzZXQ7CisKKyAgICBuZGJ1Zi0+ZGF0YSA9IFB5TWVtX01hbGxvYyhsZW4pOworICAgIGlmIChuZGJ1Zi0+ZGF0YSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIFB5TWVtX0ZyZWUobmRidWYpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBuZGJ1Zi0+ZmxhZ3MgPSBmbGFnczsKKyAgICBuZGJ1Zi0+ZXhwb3J0cyA9IDA7CisKKyAgICBiYXNlID0gJm5kYnVmLT5iYXNlOworICAgIGJhc2UtPm9iaiA9IE5VTEw7CisgICAgYmFzZS0+YnVmID0gbmRidWYtPmRhdGE7CisgICAgYmFzZS0+bGVuID0gbGVuOworICAgIGJhc2UtPml0ZW1zaXplID0gMTsKKyAgICBiYXNlLT5yZWFkb25seSA9IDA7CisgICAgYmFzZS0+Zm9ybWF0ID0gTlVMTDsKKyAgICBiYXNlLT5uZGltID0gMTsKKyAgICBiYXNlLT5zaGFwZSA9IE5VTEw7CisgICAgYmFzZS0+c3RyaWRlcyA9IE5VTEw7CisgICAgYmFzZS0+c3Vib2Zmc2V0cyA9IE5VTEw7CisgICAgYmFzZS0+aW50ZXJuYWwgPSBuZGJ1ZjsKKworICAgIHJldHVybiBuZGJ1ZjsKK30KKworc3RhdGljIHZvaWQKK25kYnVmX2ZyZWUobmRidWZfdCAqbmRidWYpCit7CisgICAgUHlfYnVmZmVyICpiYXNlID0gJm5kYnVmLT5iYXNlOworCisgICAgUHlNZW1fWEZyZWUobmRidWYtPmRhdGEpOworICAgIFB5TWVtX1hGcmVlKGJhc2UtPmZvcm1hdCk7CisgICAgUHlNZW1fWEZyZWUoYmFzZS0+c2hhcGUpOworICAgIFB5TWVtX1hGcmVlKGJhc2UtPnN0cmlkZXMpOworICAgIFB5TWVtX1hGcmVlKGJhc2UtPnN1Ym9mZnNldHMpOworCisgICAgUHlNZW1fRnJlZShuZGJ1Zik7Cit9CisKK3N0YXRpYyB2b2lkCituZGJ1Zl9wdXNoKE5EQXJyYXlPYmplY3QgKm5kLCBuZGJ1Zl90ICplbHQpCit7CisgICAgZWx0LT5uZXh0ID0gbmQtPmhlYWQ7CisgICAgaWYgKG5kLT5oZWFkKSBuZC0+aGVhZC0+cHJldiA9IGVsdDsKKyAgICBuZC0+aGVhZCA9IGVsdDsKKyAgICBlbHQtPnByZXYgPSBOVUxMOworfQorCitzdGF0aWMgdm9pZAorbmRidWZfZGVsZXRlKE5EQXJyYXlPYmplY3QgKm5kLCBuZGJ1Zl90ICplbHQpCit7CisgICAgaWYgKGVsdC0+cHJldikKKyAgICAgICAgZWx0LT5wcmV2LT5uZXh0ID0gZWx0LT5uZXh0OworICAgIGVsc2UKKyAgICAgICAgbmQtPmhlYWQgPSBlbHQtPm5leHQ7CisgICAgCisgICAgaWYgKGVsdC0+bmV4dCkKKyAgICAgICAgZWx0LT5uZXh0LT5wcmV2ID0gZWx0LT5wcmV2OworCisgICAgbmRidWZfZnJlZShlbHQpOworfQorCitzdGF0aWMgdm9pZAorbmRidWZfcG9wKE5EQXJyYXlPYmplY3QgKm5kKQoreworICAgIG5kYnVmX2RlbGV0ZShuZCwgbmQtPmhlYWQpOworfQorCisKK3N0YXRpYyBQeU9iamVjdCAqCituZGFycmF5X25ldyhQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICBOREFycmF5T2JqZWN0ICpuZDsKKworICAgIG5kID0gUHlPYmplY3RfTmV3KE5EQXJyYXlPYmplY3QsICZOREFycmF5X1R5cGUpOworICAgIGlmIChuZCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIG5kLT5mbGFncyA9IDA7CisgICAgbmQtPmhlYWQgPSBOVUxMOworICAgIHJldHVybiAoUHlPYmplY3QgKiluZDsKK30KKworc3RhdGljIHZvaWQKK25kYXJyYXlfZGVhbGxvYyhOREFycmF5T2JqZWN0ICpzZWxmKQoreworICAgIGlmIChzZWxmLT5oZWFkKSB7CisgICAgICAgIGlmIChORF9JU19DT05TVU1FUihzZWxmKSkgeworICAgICAgICAgICAgUHlfYnVmZmVyICpiYXNlID0gJnNlbGYtPmhlYWQtPmJhc2U7CisgICAgICAgICAgICBpZiAoc2VsZi0+aGVhZC0+ZmxhZ3MgJiBORF9PV05fQVJSQVlTKSB7CisgICAgICAgICAgICAgICAgUHlNZW1fWEZyZWUoYmFzZS0+c2hhcGUpOworICAgICAgICAgICAgICAgIFB5TWVtX1hGcmVlKGJhc2UtPnN0cmlkZXMpOworICAgICAgICAgICAgICAgIFB5TWVtX1hGcmVlKGJhc2UtPnN1Ym9mZnNldHMpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlCdWZmZXJfUmVsZWFzZShiYXNlKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIHdoaWxlIChzZWxmLT5oZWFkKQorICAgICAgICAgICAgICAgIG5kYnVmX3BvcChzZWxmKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBQeU9iamVjdF9EZWwoc2VsZik7Cit9CisKK3N0YXRpYyBpbnQKK25kYXJyYXlfaW5pdF9zdGF0aWNidWYoUHlPYmplY3QgKmV4cG9ydGVyLCBOREFycmF5T2JqZWN0ICpuZCwgaW50IGZsYWdzKQoreworICAgIFB5X2J1ZmZlciAqYmFzZSA9ICZuZC0+c3RhdGljYnVmLmJhc2U7CisKKyAgICBpZiAoUHlPYmplY3RfR2V0QnVmZmVyKGV4cG9ydGVyLCBiYXNlLCBmbGFncykgPCAwKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBuZC0+aGVhZCA9ICZuZC0+c3RhdGljYnVmOworCisgICAgbmQtPmhlYWQtPm5leHQgPSBOVUxMOworICAgIG5kLT5oZWFkLT5wcmV2ID0gTlVMTDsKKyAgICBuZC0+aGVhZC0+bGVuID0gLTE7CisgICAgbmQtPmhlYWQtPm9mZnNldCA9IC0xOworICAgIG5kLT5oZWFkLT5kYXRhID0gTlVMTDsKKworICAgIG5kLT5oZWFkLT5mbGFncyA9IGJhc2UtPnJlYWRvbmx5ID8gMCA6IE5EX1dSSVRBQkxFOworICAgIG5kLT5oZWFkLT5leHBvcnRzID0gMDsKKworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgdm9pZAoraW5pdF9mbGFncyhuZGJ1Zl90ICpuZGJ1ZikKK3sKKyAgICBpZiAobmRidWYtPmJhc2UubmRpbSA9PSAwKQorICAgICAgICBuZGJ1Zi0+ZmxhZ3MgfD0gTkRfU0NBTEFSOworICAgIGlmIChuZGJ1Zi0+YmFzZS5zdWJvZmZzZXRzKQorICAgICAgICBuZGJ1Zi0+ZmxhZ3MgfD0gTkRfUElMOworICAgIGlmIChQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoJm5kYnVmLT5iYXNlLCAnQycpKQorICAgICAgICBuZGJ1Zi0+ZmxhZ3MgfD0gTkRfQzsKKyAgICBpZiAoUHlCdWZmZXJfSXNDb250aWd1b3VzKCZuZGJ1Zi0+YmFzZSwgJ0YnKSkKKyAgICAgICAgbmRidWYtPmZsYWdzIHw9IE5EX0ZPUlRSQU47Cit9CisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgQnVmZmVyL0xpc3QgY29udmVyc2lvbnMgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitzdGF0aWMgUHlfc3NpemVfdCAqc3RyaWRlc19mcm9tX3NoYXBlKGNvbnN0IG5kYnVmX3QgKiwgaW50IGZsYWdzKTsKKworLyogR2V0IG51bWJlciBvZiBtZW1iZXJzIGluIGEgc3RydWN0OiBzZWUgaXNzdWUgIzEyNzQwICovCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlPYmplY3RfSEVBRAorICAgIFB5X3NzaXplX3Qgc19zaXplOworICAgIFB5X3NzaXplX3Qgc19sZW47Cit9IFB5UGFydGlhbFN0cnVjdE9iamVjdDsKKworc3RhdGljIFB5X3NzaXplX3QKK2dldF9ubWVtYihQeU9iamVjdCAqcykKK3sKKyAgICByZXR1cm4gKChQeVBhcnRpYWxTdHJ1Y3RPYmplY3QgKilzKS0+c19sZW47Cit9CisKKy8qIFBhY2sgYWxsIGl0ZW1zIGludG8gdGhlIGJ1ZmZlciBvZiAnb2JqJy4gVGhlICdmb3JtYXQnIHBhcmFtZXRlciBtdXN0IGJlCisgICBpbiBzdHJ1Y3QgbW9kdWxlIHN5bnRheC4gRm9yIHN0YW5kYXJkIEMgdHlwZXMsIGEgc2luZ2xlIGl0ZW0gaXMgYW4gaW50ZWdlci4KKyAgIEZvciBjb21wb3VuZCB0eXBlcywgYSBzaW5nbGUgaXRlbSBpcyBhIHR1cGxlIG9mIGludGVnZXJzLiAqLworc3RhdGljIGludAorcGFja19mcm9tX2xpc3QoUHlPYmplY3QgKm9iaiwgUHlPYmplY3QgKml0ZW1zLCBQeU9iamVjdCAqZm9ybWF0LAorICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpdGVtc2l6ZSkKK3sKKyAgICBQeU9iamVjdCAqc3RydWN0b2JqLCAqcGFja19pbnRvOworICAgIFB5T2JqZWN0ICphcmdzLCAqb2Zmc2V0OworICAgIFB5T2JqZWN0ICppdGVtLCAqdG1wOworICAgIFB5X3NzaXplX3Qgbml0ZW1zOyAvKiBudW1iZXIgb2YgaXRlbXMgKi8KKyAgICBQeV9zc2l6ZV90IG5tZW1iOyAgLyogbnVtYmVyIG9mIG1lbWJlcnMgaW4gYSBzaW5nbGUgaXRlbSAqLworICAgIFB5X3NzaXplX3QgaSwgajsKKyAgICBpbnQgcmV0ID0gMDsKKworICAgIGFzc2VydChQeU9iamVjdF9DaGVja0J1ZmZlcihvYmopKTsKKyAgICBhc3NlcnQoUHlMaXN0X0NoZWNrKGl0ZW1zKSB8fCBQeVR1cGxlX0NoZWNrKGl0ZW1zKSk7CisKKyAgICBzdHJ1Y3RvYmogPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKFN0cnVjdCwgZm9ybWF0LCBOVUxMKTsKKyAgICBpZiAoc3RydWN0b2JqID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIG5pdGVtcyA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfU0laRShpdGVtcyk7CisgICAgbm1lbWIgPSBnZXRfbm1lbWIoc3RydWN0b2JqKTsKKyAgICBhc3NlcnQobm1lbWIgPj0gMSk7CisKKyAgICBwYWNrX2ludG8gPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHN0cnVjdG9iaiwgInBhY2tfaW50byIpOworICAgIGlmIChwYWNrX2ludG8gPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYoc3RydWN0b2JqKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIC8qIG5tZW1iID49IDEgKi8KKyAgICBhcmdzID0gUHlUdXBsZV9OZXcoMiArIG5tZW1iKTsKKyAgICBpZiAoYXJncyA9PSBOVUxMKSB7CisgICAgICAgIFB5X0RFQ1JFRihwYWNrX2ludG8pOworICAgICAgICBQeV9ERUNSRUYoc3RydWN0b2JqKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIG9mZnNldCA9IE5VTEw7CisgICAgZm9yIChpID0gMDsgaSA8IG5pdGVtczsgaSsrKSB7CisgICAgICAgIC8qIExvb3AgaW52YXJpYW50OiBhcmdzW2pdIGFyZSBib3Jyb3dlZCByZWZlcmVuY2VzIG9yIE5VTEwuICovCisgICAgICAgIFB5VHVwbGVfU0VUX0lURU0oYXJncywgMCwgb2JqKTsKKyAgICAgICAgZm9yIChqID0gMTsgaiA8IDIrbm1lbWI7IGorKykKKyAgICAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0oYXJncywgaiwgTlVMTCk7CisKKyAgICAgICAgUHlfWERFQ1JFRihvZmZzZXQpOworICAgICAgICBvZmZzZXQgPSBQeUxvbmdfRnJvbVNzaXplX3QoaSppdGVtc2l6ZSk7CisgICAgICAgIGlmIChvZmZzZXQgPT0gTlVMTCkgeworICAgICAgICAgICAgcmV0ID0gLTE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKGFyZ3MsIDEsIG9mZnNldCk7CisKKyAgICAgICAgaXRlbSA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfSVRFTShpdGVtcywgaSk7CisgICAgICAgIGlmICgoUHlCeXRlc19DaGVjayhpdGVtKSB8fCBQeUxvbmdfQ2hlY2soaXRlbSkgfHwKKyAgICAgICAgICAgICBQeUZsb2F0X0NoZWNrKGl0ZW0pKSAmJiBubWVtYiA9PSAxKSB7CisgICAgICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKGFyZ3MsIDIsIGl0ZW0pOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKChQeUxpc3RfQ2hlY2soaXRlbSkgfHwgUHlUdXBsZV9DaGVjayhpdGVtKSkgJiYKKyAgICAgICAgICAgICAgICAgUHlTZXF1ZW5jZV9MZW5ndGgoaXRlbSkgPT0gbm1lbWIpIHsKKyAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCBubWVtYjsgaisrKSB7CisgICAgICAgICAgICAgICAgdG1wID0gUHlTZXF1ZW5jZV9GYXN0X0dFVF9JVEVNKGl0ZW0sIGopOworICAgICAgICAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0oYXJncywgMitqLCB0bXApOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgIm1pc21hdGNoIGJldHdlZW4gaW5pdGlhbGl6ZXIgZWxlbWVudCBhbmQgZm9ybWF0IHN0cmluZyIpOworICAgICAgICAgICAgcmV0ID0gLTE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorCisgICAgICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxPYmplY3QocGFja19pbnRvLCBhcmdzKTsKKyAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSB7CisgICAgICAgICAgICByZXQgPSAtMTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRih0bXApOworICAgIH0KKworICAgIFB5X0lOQ1JFRihvYmopOyAvKiBhcmdzWzBdICovCisgICAgLyogYXJnc1sxXTogb2Zmc2V0IGlzIGVpdGhlciBOVUxMIG9yIHNob3VsZCBiZSBkZWFsbG9jJ2QgKi8KKyAgICBmb3IgKGkgPSAyOyBpIDwgMitubWVtYjsgaSsrKSB7CisgICAgICAgIHRtcCA9IFB5VHVwbGVfR0VUX0lURU0oYXJncywgaSk7CisgICAgICAgIFB5X1hJTkNSRUYodG1wKTsKKyAgICB9CisgICAgUHlfREVDUkVGKGFyZ3MpOworCisgICAgUHlfREVDUkVGKHBhY2tfaW50byk7CisgICAgUHlfREVDUkVGKHN0cnVjdG9iaik7CisgICAgcmV0dXJuIHJldDsKKworfQorCisvKiBQYWNrIHNpbmdsZSBlbGVtZW50ICovCitzdGF0aWMgaW50CitwYWNrX3NpbmdsZShjaGFyICpwdHIsIFB5T2JqZWN0ICppdGVtLCBjb25zdCBjaGFyICpmbXQsIFB5X3NzaXplX3QgaXRlbXNpemUpCit7CisgICAgUHlPYmplY3QgKnN0cnVjdG9iaiA9IE5VTEwsICpwYWNrX2ludG8gPSBOVUxMLCAqYXJncyA9IE5VTEw7CisgICAgUHlPYmplY3QgKmZvcm1hdCA9IE5VTEwsICptdmlldyA9IE5VTEwsICp6ZXJvID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGksIG5tZW1iOworICAgIGludCByZXQgPSAtMTsKKyAgICBQeU9iamVjdCAqeDsKKworICAgIGlmIChmbXQgPT0gTlVMTCkgZm10ID0gIkIiOworCisgICAgZm9ybWF0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoZm10KTsKKyAgICBpZiAoZm9ybWF0ID09IE5VTEwpCisgICAgICAgIGdvdG8gb3V0OworCisgICAgc3RydWN0b2JqID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhTdHJ1Y3QsIGZvcm1hdCwgTlVMTCk7CisgICAgaWYgKHN0cnVjdG9iaiA9PSBOVUxMKQorICAgICAgICBnb3RvIG91dDsKKworICAgIG5tZW1iID0gZ2V0X25tZW1iKHN0cnVjdG9iaik7CisgICAgYXNzZXJ0KG5tZW1iID49IDEpOworCisgICAgbXZpZXcgPSBQeU1lbW9yeVZpZXdfRnJvbU1lbW9yeShwdHIsIGl0ZW1zaXplLCBQeUJVRl9XUklURSk7CisgICAgaWYgKG12aWV3ID09IE5VTEwpCisgICAgICAgIGdvdG8gb3V0OworCisgICAgemVybyA9IFB5TG9uZ19Gcm9tTG9uZygwKTsKKyAgICBpZiAoemVybyA9PSBOVUxMKQorICAgICAgICBnb3RvIG91dDsKKworICAgIHBhY2tfaW50byA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoc3RydWN0b2JqLCAicGFja19pbnRvIik7CisgICAgaWYgKHBhY2tfaW50byA9PSBOVUxMKQorICAgICAgICBnb3RvIG91dDsKKworICAgIGFyZ3MgPSBQeVR1cGxlX05ldygyK25tZW1iKTsKKyAgICBpZiAoYXJncyA9PSBOVUxMKQorICAgICAgICBnb3RvIG91dDsKKworICAgIFB5VHVwbGVfU0VUX0lURU0oYXJncywgMCwgbXZpZXcpOworICAgIFB5VHVwbGVfU0VUX0lURU0oYXJncywgMSwgemVybyk7CisKKyAgICBpZiAoKFB5Qnl0ZXNfQ2hlY2soaXRlbSkgfHwgUHlMb25nX0NoZWNrKGl0ZW0pIHx8CisgICAgICAgICBQeUZsb2F0X0NoZWNrKGl0ZW0pKSAmJiBubWVtYiA9PSAxKSB7CisgICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKGFyZ3MsIDIsIGl0ZW0pOworICAgIH0KKyAgICBlbHNlIGlmICgoUHlMaXN0X0NoZWNrKGl0ZW0pIHx8IFB5VHVwbGVfQ2hlY2soaXRlbSkpICYmCisgICAgICAgICAgICAgUHlTZXF1ZW5jZV9MZW5ndGgoaXRlbSkgPT0gbm1lbWIpIHsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IG5tZW1iOyBpKyspIHsKKyAgICAgICAgICAgIHggPSBQeVNlcXVlbmNlX0Zhc3RfR0VUX0lURU0oaXRlbSwgaSk7CisgICAgICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKGFyZ3MsIDIraSwgeCk7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgIm1pc21hdGNoIGJldHdlZW4gaW5pdGlhbGl6ZXIgZWxlbWVudCBhbmQgZm9ybWF0IHN0cmluZyIpOworICAgICAgICBnb3RvIGFyZ3Nfb3V0OworICAgIH0KKworICAgIHggPSBQeU9iamVjdF9DYWxsT2JqZWN0KHBhY2tfaW50bywgYXJncyk7CisgICAgaWYgKHggIT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYoeCk7CisgICAgICAgIHJldCA9IDA7CisgICAgfQorCisKK2FyZ3Nfb3V0OgorICAgIGZvciAoaSA9IDA7IGkgPCAyK25tZW1iOyBpKyspCisgICAgICAgIFB5X1hJTkNSRUYoUHlUdXBsZV9HRVRfSVRFTShhcmdzLCBpKSk7CisgICAgUHlfWERFQ1JFRihhcmdzKTsKK291dDoKKyAgICBQeV9YREVDUkVGKHBhY2tfaW50byk7CisgICAgUHlfWERFQ1JFRih6ZXJvKTsKKyAgICBQeV9YREVDUkVGKG12aWV3KTsKKyAgICBQeV9YREVDUkVGKHN0cnVjdG9iaik7CisgICAgUHlfWERFQ1JFRihmb3JtYXQpOworICAgIHJldHVybiByZXQ7Cit9CisKK3N0YXRpYyB2b2lkCitjb3B5X3JlYyhjb25zdCBQeV9zc2l6ZV90ICpzaGFwZSwgUHlfc3NpemVfdCBuZGltLCBQeV9zc2l6ZV90IGl0ZW1zaXplLAorICAgICAgICAgY2hhciAqZHB0ciwgY29uc3QgUHlfc3NpemVfdCAqZHN0cmlkZXMsIGNvbnN0IFB5X3NzaXplX3QgKmRzdWJvZmZzZXRzLAorICAgICAgICAgY2hhciAqc3B0ciwgY29uc3QgUHlfc3NpemVfdCAqc3N0cmlkZXMsIGNvbnN0IFB5X3NzaXplX3QgKnNzdWJvZmZzZXRzLAorICAgICAgICAgY2hhciAqbWVtKQoreworICAgIFB5X3NzaXplX3QgaTsKKworICAgIGFzc2VydChuZGltID49IDEpOworCisgICAgaWYgKG5kaW0gPT0gMSkgeworICAgICAgICBpZiAoIUhBVkVfUFRSKGRzdWJvZmZzZXRzKSAmJiAhSEFWRV9QVFIoc3N1Ym9mZnNldHMpICYmCisgICAgICAgICAgICBkc3RyaWRlc1swXSA9PSBpdGVtc2l6ZSAmJiBzc3RyaWRlc1swXSA9PSBpdGVtc2l6ZSkgeworICAgICAgICAgICAgbWVtbW92ZShkcHRyLCBzcHRyLCBzaGFwZVswXSAqIGl0ZW1zaXplKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGNoYXIgKnA7CisgICAgICAgICAgICBhc3NlcnQobWVtICE9IE5VTEwpOworICAgICAgICAgICAgZm9yIChpPTAsIHA9bWVtOyBpPHNoYXBlWzBdOyBwKz1pdGVtc2l6ZSwgc3B0cis9c3N0cmlkZXNbMF0sIGkrKykgeworICAgICAgICAgICAgICAgIGNoYXIgKnhzcHRyID0gQURKVVNUX1BUUihzcHRyLCBzc3Vib2Zmc2V0cyk7CisgICAgICAgICAgICAgICAgbWVtY3B5KHAsIHhzcHRyLCBpdGVtc2l6ZSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBmb3IgKGk9MCwgcD1tZW07IGk8c2hhcGVbMF07IHArPWl0ZW1zaXplLCBkcHRyKz1kc3RyaWRlc1swXSwgaSsrKSB7CisgICAgICAgICAgICAgICAgY2hhciAqeGRwdHIgPSBBREpVU1RfUFRSKGRwdHIsIGRzdWJvZmZzZXRzKTsKKyAgICAgICAgICAgICAgICBtZW1jcHkoeGRwdHIsIHAsIGl0ZW1zaXplKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgZm9yIChpID0gMDsgaSA8IHNoYXBlWzBdOyBkcHRyKz1kc3RyaWRlc1swXSwgc3B0cis9c3N0cmlkZXNbMF0sIGkrKykgeworICAgICAgICBjaGFyICp4ZHB0ciA9IEFESlVTVF9QVFIoZHB0ciwgZHN1Ym9mZnNldHMpOworICAgICAgICBjaGFyICp4c3B0ciA9IEFESlVTVF9QVFIoc3B0ciwgc3N1Ym9mZnNldHMpOworCisgICAgICAgIGNvcHlfcmVjKHNoYXBlKzEsIG5kaW0tMSwgaXRlbXNpemUsCisgICAgICAgICAgICAgICAgIHhkcHRyLCBkc3RyaWRlcysxLCBkc3Vib2Zmc2V0cyA/IGRzdWJvZmZzZXRzKzEgOiBOVUxMLAorICAgICAgICAgICAgICAgICB4c3B0ciwgc3N0cmlkZXMrMSwgc3N1Ym9mZnNldHMgPyBzc3Vib2Zmc2V0cysxIDogTlVMTCwKKyAgICAgICAgICAgICAgICAgbWVtKTsKKyAgICB9Cit9CisKK3N0YXRpYyBpbnQKK2NtcF9zdHJ1Y3R1cmUoUHlfYnVmZmVyICpkZXN0LCBQeV9idWZmZXIgKnNyYykKK3sKKyAgICBQeV9zc2l6ZV90IGk7CisgICAgaW50IHNhbWVfZm10ID0gKChkZXN0LT5mb3JtYXQgPT0gTlVMTCAmJiBzcmMtPmZvcm1hdCA9PSBOVUxMKSB8fCBcCisgICAgICAgICAgICAgICAgICAgIChzdHJjbXAoZGVzdC0+Zm9ybWF0LCBzcmMtPmZvcm1hdCkgPT0gMCkpOworCisgICAgaWYgKCFzYW1lX2ZtdCB8fAorICAgICAgICBkZXN0LT5pdGVtc2l6ZSAhPSBzcmMtPml0ZW1zaXplIHx8CisgICAgICAgIGRlc3QtPm5kaW0gIT0gc3JjLT5uZGltKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgZGVzdC0+bmRpbTsgaSsrKSB7CisgICAgICAgIGlmIChkZXN0LT5zaGFwZVtpXSAhPSBzcmMtPnNoYXBlW2ldKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBpZiAoZGVzdC0+c2hhcGVbaV0gPT0gMCkKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKworICAgIHJldHVybiAwOworfQorCisvKiBDb3B5IHNyYyB0byBkZXN0LiBCb3RoIGJ1ZmZlcnMgbXVzdCBoYXZlIHRoZSBzYW1lIGZvcm1hdCwgaXRlbXNpemUsCisgICBuZGltIGFuZCBzaGFwZS4gQ29weWluZyBpcyBhdG9taWMsIHRoZSBmdW5jdGlvbiBuZXZlciBmYWlscyB3aXRoCisgICBhIHBhcnRpYWwgY29weS4gKi8KK3N0YXRpYyBpbnQKK2NvcHlfYnVmZmVyKFB5X2J1ZmZlciAqZGVzdCwgUHlfYnVmZmVyICpzcmMpCit7CisgICAgY2hhciAqbWVtID0gTlVMTDsKKworICAgIGFzc2VydChkZXN0LT5uZGltID4gMCk7CisKKyAgICBpZiAoY21wX3N0cnVjdHVyZShkZXN0LCBzcmMpIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICJuZGFycmF5IGFzc2lnbm1lbnQ6IGx2YWx1ZSBhbmQgcnZhbHVlIGhhdmUgZGlmZmVyZW50IHN0cnVjdHVyZXMiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGlmICgoZGVzdC0+c3Vib2Zmc2V0cyAmJiBkZXN0LT5zdWJvZmZzZXRzW2Rlc3QtPm5kaW0tMV0gPj0gMCkgfHwKKyAgICAgICAgKHNyYy0+c3Vib2Zmc2V0cyAmJiBzcmMtPnN1Ym9mZnNldHNbc3JjLT5uZGltLTFdID49IDApIHx8CisgICAgICAgIGRlc3QtPnN0cmlkZXNbZGVzdC0+bmRpbS0xXSAhPSBkZXN0LT5pdGVtc2l6ZSB8fAorICAgICAgICBzcmMtPnN0cmlkZXNbc3JjLT5uZGltLTFdICE9IHNyYy0+aXRlbXNpemUpIHsKKyAgICAgICAgbWVtID0gUHlNZW1fTWFsbG9jKGRlc3QtPnNoYXBlW2Rlc3QtPm5kaW0tMV0gKiBkZXN0LT5pdGVtc2l6ZSk7CisgICAgICAgIGlmIChtZW0gPT0gTlVMTCkgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGNvcHlfcmVjKGRlc3QtPnNoYXBlLCBkZXN0LT5uZGltLCBkZXN0LT5pdGVtc2l6ZSwKKyAgICAgICAgICAgICBkZXN0LT5idWYsIGRlc3QtPnN0cmlkZXMsIGRlc3QtPnN1Ym9mZnNldHMsCisgICAgICAgICAgICAgc3JjLT5idWYsIHNyYy0+c3RyaWRlcywgc3JjLT5zdWJvZmZzZXRzLAorICAgICAgICAgICAgIG1lbSk7CisKKyAgICBQeU1lbV9YRnJlZShtZW0pOworICAgIHJldHVybiAwOworfQorCisKKy8qIFVucGFjayBzaW5nbGUgZWxlbWVudCAqLworc3RhdGljIFB5T2JqZWN0ICoKK3VucGFja19zaW5nbGUoY2hhciAqcHRyLCBjb25zdCBjaGFyICpmbXQsIFB5X3NzaXplX3QgaXRlbXNpemUpCit7CisgICAgUHlPYmplY3QgKngsICp1bnBhY2tfZnJvbSwgKm12aWV3OworCisgICAgaWYgKGZtdCA9PSBOVUxMKSB7CisgICAgICAgIGZtdCA9ICJCIjsKKyAgICAgICAgaXRlbXNpemUgPSAxOworICAgIH0KKworICAgIHVucGFja19mcm9tID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhzdHJ1Y3Rtb2R1bGUsICJ1bnBhY2tfZnJvbSIpOworICAgIGlmICh1bnBhY2tfZnJvbSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIG12aWV3ID0gUHlNZW1vcnlWaWV3X0Zyb21NZW1vcnkocHRyLCBpdGVtc2l6ZSwgUHlCVUZfUkVBRCk7CisgICAgaWYgKG12aWV3ID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKHVucGFja19mcm9tKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgeCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbih1bnBhY2tfZnJvbSwgInNPIiwgZm10LCBtdmlldyk7CisgICAgUHlfREVDUkVGKHVucGFja19mcm9tKTsKKyAgICBQeV9ERUNSRUYobXZpZXcpOworICAgIGlmICh4ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoeCkgPT0gMSkgeworICAgICAgICBQeU9iamVjdCAqdG1wID0gUHlUdXBsZV9HRVRfSVRFTSh4LCAwKTsKKyAgICAgICAgUHlfSU5DUkVGKHRtcCk7CisgICAgICAgIFB5X0RFQ1JFRih4KTsKKyAgICAgICAgcmV0dXJuIHRtcDsKKyAgICB9CisKKyAgICByZXR1cm4geDsKK30KKworLyogVW5wYWNrIGEgbXVsdGktZGltZW5zaW9uYWwgbWF0cml4IGludG8gYSBuZXN0ZWQgbGlzdC4gUmV0dXJuIGEgc2NhbGFyCisgICBmb3IgbmRpbSA9IDAuICovCitzdGF0aWMgUHlPYmplY3QgKgordW5wYWNrX3JlYyhQeU9iamVjdCAqdW5wYWNrX2Zyb20sIGNoYXIgKnB0ciwgUHlPYmplY3QgKm12aWV3LCBjaGFyICppdGVtLAorICAgICAgICAgICBjb25zdCBQeV9zc2l6ZV90ICpzaGFwZSwgY29uc3QgUHlfc3NpemVfdCAqc3RyaWRlcywKKyAgICAgICAgICAgY29uc3QgUHlfc3NpemVfdCAqc3Vib2Zmc2V0cywgUHlfc3NpemVfdCBuZGltLCBQeV9zc2l6ZV90IGl0ZW1zaXplKQoreworICAgIFB5T2JqZWN0ICpsc3QsICp4OworICAgIFB5X3NzaXplX3QgaTsKKworICAgIGFzc2VydChuZGltID49IDApOworICAgIGFzc2VydChzaGFwZSAhPSBOVUxMKTsKKyAgICBhc3NlcnQoc3RyaWRlcyAhPSBOVUxMKTsKKworICAgIGlmIChuZGltID09IDApIHsKKyAgICAgICAgbWVtY3B5KGl0ZW0sIHB0ciwgaXRlbXNpemUpOworICAgICAgICB4ID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyh1bnBhY2tfZnJvbSwgbXZpZXcsIE5VTEwpOworICAgICAgICBpZiAoeCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGlmIChQeVR1cGxlX0dFVF9TSVpFKHgpID09IDEpIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICp0bXAgPSBQeVR1cGxlX0dFVF9JVEVNKHgsIDApOworICAgICAgICAgICAgUHlfSU5DUkVGKHRtcCk7CisgICAgICAgICAgICBQeV9ERUNSRUYoeCk7CisgICAgICAgICAgICByZXR1cm4gdG1wOworICAgICAgICB9CisgICAgICAgIHJldHVybiB4OworICAgIH0KKworICAgIGxzdCA9IFB5TGlzdF9OZXcoc2hhcGVbMF0pOworICAgIGlmIChsc3QgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgc2hhcGVbMF07IHB0cis9c3RyaWRlc1swXSwgaSsrKSB7CisgICAgICAgIGNoYXIgKm5leHRwdHIgPSBBREpVU1RfUFRSKHB0ciwgc3Vib2Zmc2V0cyk7CisKKyAgICAgICAgeCA9IHVucGFja19yZWModW5wYWNrX2Zyb20sIG5leHRwdHIsIG12aWV3LCBpdGVtLAorICAgICAgICAgICAgICAgICAgICAgICBzaGFwZSsxLCBzdHJpZGVzKzEsIHN1Ym9mZnNldHMgPyBzdWJvZmZzZXRzKzEgOiBOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICBuZGltLTEsIGl0ZW1zaXplKTsKKyAgICAgICAgaWYgKHggPT0gTlVMTCkgeworICAgICAgICAgICAgUHlfREVDUkVGKGxzdCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorCisgICAgICAgIFB5TGlzdF9TRVRfSVRFTShsc3QsIGksIHgpOworICAgIH0KKworICAgIHJldHVybiBsc3Q7Cit9CisKKworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfYXNfbGlzdChOREFycmF5T2JqZWN0ICpuZCkKK3sKKyAgICBQeU9iamVjdCAqc3RydWN0b2JqID0gTlVMTCwgKnVucGFja19mcm9tID0gTlVMTDsKKyAgICBQeU9iamVjdCAqbHN0ID0gTlVMTCwgKm12aWV3ID0gTlVMTDsKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmbmQtPmhlYWQtPmJhc2U7CisgICAgUHlfc3NpemVfdCAqc2hhcGUgPSBiYXNlLT5zaGFwZTsKKyAgICBQeV9zc2l6ZV90ICpzdHJpZGVzID0gYmFzZS0+c3RyaWRlczsKKyAgICBQeV9zc2l6ZV90IHNpbXBsZV9zaGFwZVsxXTsKKyAgICBQeV9zc2l6ZV90IHNpbXBsZV9zdHJpZGVzWzFdOworICAgIGNoYXIgKml0ZW0gPSBOVUxMOworICAgIFB5T2JqZWN0ICpmb3JtYXQ7CisgICAgY2hhciAqZm10ID0gYmFzZS0+Zm9ybWF0OworCisgICAgYmFzZSA9ICZuZC0+aGVhZC0+YmFzZTsKKworICAgIGlmIChmbXQgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICJuZGFycmF5OiB0b2xpc3QoKSBkb2VzIG5vdCBzdXBwb3J0IGZvcm1hdD1OVUxMLCB1c2UgIgorICAgICAgICAgICAgInRvYnl0ZXMoKSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKHNoYXBlID09IE5VTEwpIHsKKyAgICAgICAgYXNzZXJ0KE5EX0NfQ09OVElHVU9VUyhuZC0+aGVhZC0+ZmxhZ3MpKTsKKyAgICAgICAgYXNzZXJ0KGJhc2UtPnN0cmlkZXMgPT0gTlVMTCk7CisgICAgICAgIGFzc2VydChiYXNlLT5uZGltIDw9IDEpOworICAgICAgICBzaGFwZSA9IHNpbXBsZV9zaGFwZTsKKyAgICAgICAgc2hhcGVbMF0gPSBiYXNlLT5sZW47CisgICAgICAgIHN0cmlkZXMgPSBzaW1wbGVfc3RyaWRlczsKKyAgICAgICAgc3RyaWRlc1swXSA9IGJhc2UtPml0ZW1zaXplOworICAgIH0KKyAgICBlbHNlIGlmIChzdHJpZGVzID09IE5VTEwpIHsKKyAgICAgICAgYXNzZXJ0KE5EX0NfQ09OVElHVU9VUyhuZC0+aGVhZC0+ZmxhZ3MpKTsKKyAgICAgICAgc3RyaWRlcyA9IHN0cmlkZXNfZnJvbV9zaGFwZShuZC0+aGVhZCwgMCk7CisgICAgICAgIGlmIChzdHJpZGVzID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBmb3JtYXQgPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhmbXQpOworICAgIGlmIChmb3JtYXQgPT0gTlVMTCkKKyAgICAgICAgZ290byBvdXQ7CisKKyAgICBzdHJ1Y3RvYmogPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKFN0cnVjdCwgZm9ybWF0LCBOVUxMKTsKKyAgICBQeV9ERUNSRUYoZm9ybWF0KTsKKyAgICBpZiAoc3RydWN0b2JqID09IE5VTEwpCisgICAgICAgIGdvdG8gb3V0OworCisgICAgdW5wYWNrX2Zyb20gPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHN0cnVjdG9iaiwgInVucGFja19mcm9tIik7CisgICAgaWYgKHVucGFja19mcm9tID09IE5VTEwpCisgICAgICAgIGdvdG8gb3V0OworCisgICAgaXRlbSA9IFB5TWVtX01hbGxvYyhiYXNlLT5pdGVtc2l6ZSk7CisgICAgaWYgKGl0ZW0gPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICBnb3RvIG91dDsKKyAgICB9CisKKyAgICBtdmlldyA9IFB5TWVtb3J5Vmlld19Gcm9tTWVtb3J5KGl0ZW0sIGJhc2UtPml0ZW1zaXplLCBQeUJVRl9XUklURSk7CisgICAgaWYgKG12aWV3ID09IE5VTEwpCisgICAgICAgIGdvdG8gb3V0OworCisgICAgbHN0ID0gdW5wYWNrX3JlYyh1bnBhY2tfZnJvbSwgYmFzZS0+YnVmLCBtdmlldywgaXRlbSwKKyAgICAgICAgICAgICAgICAgICAgIHNoYXBlLCBzdHJpZGVzLCBiYXNlLT5zdWJvZmZzZXRzLAorICAgICAgICAgICAgICAgICAgICAgYmFzZS0+bmRpbSwgYmFzZS0+aXRlbXNpemUpOworCitvdXQ6CisgICAgUHlfWERFQ1JFRihtdmlldyk7CisgICAgUHlNZW1fWEZyZWUoaXRlbSk7CisgICAgUHlfWERFQ1JFRih1bnBhY2tfZnJvbSk7CisgICAgUHlfWERFQ1JFRihzdHJ1Y3RvYmopOworICAgIGlmIChzdHJpZGVzICE9IGJhc2UtPnN0cmlkZXMgJiYgc3RyaWRlcyAhPSBzaW1wbGVfc3RyaWRlcykKKyAgICAgICAgUHlNZW1fWEZyZWUoc3RyaWRlcyk7CisKKyAgICByZXR1cm4gbHN0OworfQorCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgSW5pdGlhbGl6ZSBuZGJ1ZiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyoKKyAgIFN0YXRlIG9mIGEgbmV3IG5kYnVmIGR1cmluZyBpbml0aWFsaXphdGlvbi4gJ09LJyBtZWFucyB0aGF0IGluaXRpYWxpemF0aW9uCisgICBpcyBjb21wbGV0ZS4gJ1BUUicgbWVhbnMgdGhhdCBhIHBvaW50ZXIgaGFzIGJlZW4gaW5pdGlhbGl6ZWQsIGJ1dCB0aGUKKyAgIHN0YXRlIG9mIHRoZSBtZW1vcnkgaXMgc3RpbGwgdW5kZWZpbmVkIGFuZCBuZGJ1Zi0+b2Zmc2V0IGlzIGRpc3JlZ2FyZGVkLgorCisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgICAgICAgICAgICAgICAgIHwgbmRidWZfbmV3IHwgaW5pdF9zaW1wbGUgfCBpbml0X3N0cnVjdHVyZSB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgbmV4dCAgICAgICAgICAgIHwgT0sgKE5VTEwpIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgcHJldiAgICAgICAgICAgIHwgT0sgKE5VTEwpIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgbGVuICAgICAgICAgICAgIHwgICAgT0sgICAgIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgb2Zmc2V0ICAgICAgICAgIHwgICAgT0sgICAgIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgZGF0YSAgICAgICAgICAgIHwgICAgUFRSICAgIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgZmxhZ3MgICAgICAgICAgIHwgICAgdXNlciAgIHwgICAgdXNlciAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgZXhwb3J0cyAgICAgICAgIHwgICBPSyAoMCkgIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgYmFzZS5vYmogICAgICAgIHwgT0sgKE5VTEwpIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgYmFzZS5idWYgICAgICAgIHwgICAgUFRSICAgIHwgICAgIFBUUiAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgYmFzZS5sZW4gICAgICAgIHwgbGVuKGRhdGEpIHwgIGxlbihkYXRhKSAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgYmFzZS5pdGVtc2l6ZSAgIHwgICAgIDEgICAgIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgYmFzZS5yZWFkb25seSAgIHwgICAgIDAgICAgIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8CisgICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgIHwgYmFzZS5mb3JtYXQgICAgIHwgICAgTlVMTCAgIHwgICAgIE9LICAgICAgfCAgICAgICBPSyAgICAgICB8ICAKKyAgKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAgfCBiYXNlLm5kaW0gICAgICAgfCAgICAgMSAgICAgfCAgICAgIDEgICAgICB8ICAgICAgIE9LICAgICAgIHwKKyAgKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAgfCBiYXNlLnNoYXBlICAgICAgfCAgICBOVUxMICAgfCAgICBOVUxMICAgICB8ICAgICAgIE9LICAgICAgIHwKKyAgKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAgfCBiYXNlLnN0cmlkZXMgICAgfCAgICBOVUxMICAgfCAgICBOVUxMICAgICB8ICAgICAgIE9LICAgICAgIHwKKyAgKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAgfCBiYXNlLnN1Ym9mZnNldHMgfCAgICBOVUxMICAgfCAgICBOVUxMICAgICB8ICAgICAgIE9LICAgICAgIHwKKyAgKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAgfCBiYXNlLmludGVybmFsICAgfCAgICBPSyAgICAgfCAgICBPSyAgICAgICB8ICAgICAgIE9LICAgICAgIHwKKyAgKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKworKi8KKworc3RhdGljIFB5X3NzaXplX3QKK2dldF9pdGVtc2l6ZShQeU9iamVjdCAqZm9ybWF0KQoreworICAgIFB5T2JqZWN0ICp0bXA7CisgICAgUHlfc3NpemVfdCBpdGVtc2l6ZTsKKworICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MoY2FsY3NpemUsIGZvcm1hdCwgTlVMTCk7CisgICAgaWYgKHRtcCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaXRlbXNpemUgPSBQeUxvbmdfQXNTc2l6ZV90KHRtcCk7CisgICAgUHlfREVDUkVGKHRtcCk7CisKKyAgICByZXR1cm4gaXRlbXNpemU7Cit9CisKK3N0YXRpYyBjaGFyICoKK2dldF9mb3JtYXQoUHlPYmplY3QgKmZvcm1hdCkKK3sKKyAgICBQeU9iamVjdCAqdG1wOworICAgIGNoYXIgKmZtdDsKKworICAgIHRtcCA9IFB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKGZvcm1hdCk7CisgICAgaWYgKHRtcCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBmbXQgPSBQeU1lbV9NYWxsb2MoUHlCeXRlc19HRVRfU0laRSh0bXApKzEpOworICAgIGlmIChmbXQgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICBQeV9ERUNSRUYodG1wKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHN0cmNweShmbXQsIFB5Qnl0ZXNfQVNfU1RSSU5HKHRtcCkpOworICAgIFB5X0RFQ1JFRih0bXApOworCisgICAgcmV0dXJuIGZtdDsKK30KKworc3RhdGljIGludAoraW5pdF9zaW1wbGUobmRidWZfdCAqbmRidWYsIFB5T2JqZWN0ICppdGVtcywgUHlPYmplY3QgKmZvcm1hdCwKKyAgICAgICAgICAgIFB5X3NzaXplX3QgaXRlbXNpemUpCit7CisgICAgUHlPYmplY3QgKm12aWV3OworICAgIFB5X2J1ZmZlciAqYmFzZSA9ICZuZGJ1Zi0+YmFzZTsKKyAgICBpbnQgcmV0OworCisgICAgbXZpZXcgPSBQeU1lbW9yeVZpZXdfRnJvbUJ1ZmZlcihiYXNlKTsKKyAgICBpZiAobXZpZXcgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgcmV0ID0gcGFja19mcm9tX2xpc3QobXZpZXcsIGl0ZW1zLCBmb3JtYXQsIGl0ZW1zaXplKTsKKyAgICBQeV9ERUNSRUYobXZpZXcpOworICAgIGlmIChyZXQgPCAwKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBiYXNlLT5yZWFkb25seSA9ICEobmRidWYtPmZsYWdzICYgTkRfV1JJVEFCTEUpOworICAgIGJhc2UtPml0ZW1zaXplID0gaXRlbXNpemU7CisgICAgYmFzZS0+Zm9ybWF0ID0gZ2V0X2Zvcm1hdChmb3JtYXQpOworICAgIGlmIChiYXNlLT5mb3JtYXQgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeV9zc2l6ZV90ICoKK3NlcV9hc19zc2l6ZV9hcnJheShQeU9iamVjdCAqc2VxLCBQeV9zc2l6ZV90IGxlbiwgaW50IGlzX3NoYXBlKQoreworICAgIFB5X3NzaXplX3QgKmRlc3Q7CisgICAgUHlfc3NpemVfdCB4LCBpOworCisgICAgZGVzdCA9IFB5TWVtX01hbGxvYyhsZW4gKiAoc2l6ZW9mICpkZXN0KSk7CisgICAgaWYgKGRlc3QgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHsKKyAgICAgICAgUHlPYmplY3QgKnRtcCA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfSVRFTShzZXEsIGkpOworICAgICAgICBpZiAoIVB5TG9uZ19DaGVjayh0bXApKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAiZWxlbWVudHMgb2YgJXMgbXVzdCBiZSBpbnRlZ2VycyIsCisgICAgICAgICAgICAgICAgaXNfc2hhcGUgPyAic2hhcGUiIDogInN0cmlkZXMiKTsKKyAgICAgICAgICAgIFB5TWVtX0ZyZWUoZGVzdCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICB4ID0gUHlMb25nX0FzU3NpemVfdCh0bXApOworICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkgeworICAgICAgICAgICAgUHlNZW1fRnJlZShkZXN0KTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIGlmIChpc19zaGFwZSAmJiB4IDwgMCkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgImVsZW1lbnRzIG9mIHNoYXBlIG11c3QgYmUgaW50ZWdlcnMgPj0gMCIpOworICAgICAgICAgICAgUHlNZW1fRnJlZShkZXN0KTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIGRlc3RbaV0gPSB4OworICAgIH0KKworICAgIHJldHVybiBkZXN0OworfQorCitzdGF0aWMgUHlfc3NpemVfdCAqCitzdHJpZGVzX2Zyb21fc2hhcGUoY29uc3QgbmRidWZfdCAqbmRidWYsIGludCBmbGFncykKK3sKKyAgICBjb25zdCBQeV9idWZmZXIgKmJhc2UgPSAmbmRidWYtPmJhc2U7CisgICAgUHlfc3NpemVfdCAqcywgaTsKKworICAgIHMgPSBQeU1lbV9NYWxsb2MoYmFzZS0+bmRpbSAqIChzaXplb2YgKnMpKTsKKyAgICBpZiAocyA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGlmIChmbGFncyAmIE5EX0ZPUlRSQU4pIHsKKyAgICAgICAgc1swXSA9IGJhc2UtPml0ZW1zaXplOworICAgICAgICBmb3IgKGkgPSAxOyBpIDwgYmFzZS0+bmRpbTsgaSsrKQorICAgICAgICAgICAgc1tpXSA9IHNbaS0xXSAqIGJhc2UtPnNoYXBlW2ktMV07CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBzW2Jhc2UtPm5kaW0tMV0gPSBiYXNlLT5pdGVtc2l6ZTsKKyAgICAgICAgZm9yIChpID0gYmFzZS0+bmRpbS0yOyBpID49IDA7IGktLSkKKyAgICAgICAgICAgIHNbaV0gPSBzW2krMV0gKiBiYXNlLT5zaGFwZVtpKzFdOworICAgIH0KKworICAgIHJldHVybiBzOworfQorCisvKiBCb3VuZHMgY2hlY2s6CisKKyAgICAgbGVuIDo9IGNvbXBsZXRlIGxlbmd0aCBvZiBhbGxvY2F0ZWQgbWVtb3J5CisgICAgIG9mZnNldCA6PSBzdGFydCBvZiB0aGUgYXJyYXkKKworICAgICBBIHNpbmdsZSBhcnJheSBlbGVtZW50IGlzIGluZGV4ZWQgYnk6CisKKyAgICAgICBpID0gaW5kaWNlc1swXSAqIHN0cmlkZXNbMF0gKyBpbmRpY2VzWzFdICogc3RyaWRlc1sxXSArIC4uLgorCisgICAgIGltaW4gaXMgcmVhY2hlZCB3aGVuIGFsbCBpbmRpY2VzW25dIGNvbWJpbmVkIHdpdGggcG9zaXRpdmUgc3RyaWRlcyBhcmUgMAorICAgICBhbmQgYWxsIGluZGljZXMgY29tYmluZWQgd2l0aCBuZWdhdGl2ZSBzdHJpZGVzIGFyZSBzaGFwZVtuXS0xLCB3aGljaCBpcworICAgICB0aGUgbWF4aW11bSBpbmRleCBmb3IgdGhlIG50aCBkaW1lbnNpb24uCisKKyAgICAgaW1heCBpcyByZWFjaGVkIHdoZW4gYWxsIGluZGljZXNbbl0gY29tYmluZWQgd2l0aCBuZWdhdGl2ZSBzdHJpZGVzIGFyZSAwCisgICAgIGFuZCBhbGwgaW5kaWNlcyBjb21iaW5lZCB3aXRoIHBvc2l0aXZlIHN0cmlkZXMgYXJlIHNoYXBlW25dLTEuCisqLworc3RhdGljIGludAordmVyaWZ5X3N0cnVjdHVyZShQeV9zc2l6ZV90IGxlbiwgUHlfc3NpemVfdCBpdGVtc2l6ZSwgUHlfc3NpemVfdCBvZmZzZXQsCisgICAgICAgICAgICAgICAgIGNvbnN0IFB5X3NzaXplX3QgKnNoYXBlLCBjb25zdCBQeV9zc2l6ZV90ICpzdHJpZGVzLAorICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG5kaW0pCit7CisgICAgUHlfc3NpemVfdCBpbWluLCBpbWF4OworICAgIFB5X3NzaXplX3QgbjsKKworICAgIGFzc2VydChuZGltID49IDApOworCisgICAgaWYgKG5kaW0gPT0gMCAmJiAob2Zmc2V0IDwgMCB8fCBvZmZzZXQraXRlbXNpemUgPiBsZW4pKQorICAgICAgICBnb3RvIGludmFsaWRfY29tYmluYXRpb247CisKKyAgICBmb3IgKG4gPSAwOyBuIDwgbmRpbTsgbisrKQorICAgICAgICBpZiAoc3RyaWRlc1tuXSAlIGl0ZW1zaXplKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICJzdHJpZGVzIG11c3QgYmUgYSBtdWx0aXBsZSBvZiBpdGVtc2l6ZSIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisKKyAgICBmb3IgKG4gPSAwOyBuIDwgbmRpbTsgbisrKQorICAgICAgICBpZiAoc2hhcGVbbl0gPT0gMCkKKyAgICAgICAgICAgIHJldHVybiAwOworCisgICAgaW1pbiA9IGltYXggPSAwOworICAgIGZvciAobiA9IDA7IG4gPCBuZGltOyBuKyspCisgICAgICAgIGlmIChzdHJpZGVzW25dIDw9IDApCisgICAgICAgICAgICBpbWluICs9IChzaGFwZVtuXS0xKSAqIHN0cmlkZXNbbl07CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGltYXggKz0gKHNoYXBlW25dLTEpICogc3RyaWRlc1tuXTsKKworICAgIGlmIChpbWluICsgb2Zmc2V0IDwgMCB8fCBpbWF4ICsgb2Zmc2V0ICsgaXRlbXNpemUgPiBsZW4pCisgICAgICAgIGdvdG8gaW52YWxpZF9jb21iaW5hdGlvbjsKKworICAgIHJldHVybiAwOworCisKK2ludmFsaWRfY29tYmluYXRpb246CisgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICJpbnZhbGlkIGNvbWJpbmF0aW9uIG9mIGJ1ZmZlciwgc2hhcGUgYW5kIHN0cmlkZXMiKTsKKyAgICByZXR1cm4gLTE7Cit9CisKKy8qCisgICBDb252ZXJ0IGEgTnVtUHktc3R5bGUgYXJyYXkgdG8gYW4gYXJyYXkgdXNpbmcgc3Vib2Zmc2V0cyB0byBzdHJpZGUgaW4KKyAgIHRoZSBmaXJzdCBkaW1lbnNpb24uIFJlcXVpcmVtZW50czogbmRpbSA+IDAuCisKKyAgIENvbnRpZ3VvdXMgZXhhbXBsZQorICAgPT09PT09PT09PT09PT09PT09CisKKyAgICAgSW5wdXQ6CisgICAgIC0tLS0tLQorICAgICAgIHNoYXBlICAgICAgPSB7MiwgMiwgM307CisgICAgICAgc3RyaWRlcyAgICA9IHs2LCAzLCAxfTsKKyAgICAgICBzdWJvZmZzZXRzID0gTlVMTDsKKyAgICAgICBkYXRhICAgICAgID0gezAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMX07CisgICAgICAgYnVmICAgICAgICA9ICZkYXRhWzBdCisKKyAgICAgT3V0cHV0OgorICAgICAtLS0tLS0tCisgICAgICAgc2hhcGUgICAgICA9IHsyLCAyLCAzfTsKKyAgICAgICBzdHJpZGVzICAgID0ge3NpemVvZihjaGFyICopLCAzLCAxfTsKKyAgICAgICBzdWJvZmZzZXRzID0gezAsIC0xLCAtMX07CisgICAgICAgZGF0YSAgICAgICA9IHtwMSwgcDIsIDAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMX07CisgICAgICAgICAgICAgICAgICAgICB8ICAgfCAgIF4gICAgICAgICAgICAgICAgIF4KKyAgICAgICAgICAgICAgICAgICAgIGAtLS0nLS0tJyAgICAgICAgICAgICAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8CisgICAgICAgICAgICAgICAgICAgICAgICAgYC0tLS0tLS0tLS0tLS0tLS0tLS0tLScKKyAgICAgICBidWYgICAgICAgID0gJmRhdGFbMF0KKworICAgICBTbywgaW4gdGhlIGV4YW1wbGUgdGhlIGlucHV0IHJlc2VtYmxlcyB0aGUgdGhyZWUtZGltZW5zaW9uYWwgYXJyYXkKKyAgICAgY2hhciB2WzJdWzJdWzNdLCB3aGlsZSB0aGUgb3V0cHV0IHJlc2VtYmxlcyBhbiBhcnJheSBvZiB0d28gcG9pbnRlcnMKKyAgICAgdG8gdHdvLWRpbWVuc2lvbmFsIGFycmF5czogY2hhciAoKnZbMl0pWzJdWzNdLgorCisKKyAgIE5vbi1jb250aWd1b3VzIGV4YW1wbGU6CisgICA9PT09PT09PT09PT09PT09PT09PT09PQorCisgICAgIElucHV0ICh3aXRoIG9mZnNldCBhbmQgbmVnYXRpdmUgc3RyaWRlcyk6CisgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgc2hhcGUgICAgICA9IHsyLCAyLCAzfTsKKyAgICAgICBzdHJpZGVzICAgID0gey02LCAzLCAtMX07CisgICAgICAgb2Zmc2V0ICAgICA9IDgKKyAgICAgICBzdWJvZmZzZXRzID0gTlVMTDsKKyAgICAgICBkYXRhICAgICAgID0gezAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMX07CisKKyAgICAgT3V0cHV0OgorICAgICAtLS0tLS0tCisgICAgICAgc2hhcGUgICAgICA9IHsyLCAyLCAzfTsKKyAgICAgICBzdHJpZGVzICAgID0gey1zaXplb2YoY2hhciAqKSwgMywgLTF9OworICAgICAgIHN1Ym9mZnNldHMgPSB7MiwgLTEsIC0xfTsKKyAgICAgICBuZXdkYXRhICAgID0ge3AxLCBwMiwgMCwgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTAsIDExfTsKKyAgICAgICAgICAgICAgICAgICAgIHwgICB8ICAgXiAgICAgXiAgICAgICAgICAgXiAgICAgXgorICAgICAgICAgICAgICAgICAgICAgYC0tLSctLS0nICAgICB8ICAgICAgICAgICB8ICAgICBgLSBwMitzdWJvZmZzZXRzWzBdCisgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIGAtLS0tLS0tLS0tLXwtLS0gcDErc3Vib2Zmc2V0c1swXQorICAgICAgICAgICAgICAgICAgICAgICAgIGAtLS0tLS0tLS0tLS0tLS0tLS0tLS0nCisgICAgICAgYnVmICAgICAgICA9ICZuZXdkYXRhWzFdICAjIHN0cmlkaW5nIGJhY2t3YXJkcyBvdmVyIHRoZSBwb2ludGVycy4KKworICAgICBzdWJvZmZzZXRzWzBdIGlzIHRoZSBzYW1lIGFzIHRoZSBvZmZzZXQgdGhhdCBvbmUgd291bGQgc3BlY2lmeSBpZgorICAgICB0aGUgdHdvIHsyLCAzfSBzdWJhcnJheXMgd2VyZSBjcmVhdGVkIGRpcmVjdGx5LCBoZW5jZSB0aGUgbmFtZS4KKyovCitzdGF0aWMgaW50Citpbml0X3N1Ym9mZnNldHMobmRidWZfdCAqbmRidWYpCit7CisgICAgUHlfYnVmZmVyICpiYXNlID0gJm5kYnVmLT5iYXNlOworICAgIFB5X3NzaXplX3Qgc3RhcnQsIHN0ZXA7CisgICAgUHlfc3NpemVfdCBpbWluLCBzdWJvZmZzZXQwOworICAgIFB5X3NzaXplX3QgYWRkc2l6ZTsKKyAgICBQeV9zc2l6ZV90IG47CisgICAgY2hhciAqZGF0YTsKKworICAgIGFzc2VydChiYXNlLT5uZGltID4gMCk7CisgICAgYXNzZXJ0KGJhc2UtPnN1Ym9mZnNldHMgPT0gTlVMTCk7CisKKyAgICAvKiBBbGxvY2F0ZSBuZXcgZGF0YSB3aXRoIGFkZGl0aW9uYWwgc3BhY2UgZm9yIHNoYXBlWzBdIHBvaW50ZXJzLiAqLworICAgIGFkZHNpemUgPSBiYXNlLT5zaGFwZVswXSAqIChzaXplb2YgKGNoYXIgKikpOworCisgICAgLyogQWxpZ24gYXJyYXkgc3RhcnQgdG8gYSBtdWx0aXBsZSBvZiA4LiAqLworICAgIGFkZHNpemUgPSA4ICogKChhZGRzaXplICsgNykgLyA4KTsKKworICAgIGRhdGEgPSBQeU1lbV9NYWxsb2MobmRidWYtPmxlbiArIGFkZHNpemUpOworICAgIGlmIChkYXRhID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIG1lbWNweShkYXRhICsgYWRkc2l6ZSwgbmRidWYtPmRhdGEsIG5kYnVmLT5sZW4pOworCisgICAgUHlNZW1fRnJlZShuZGJ1Zi0+ZGF0YSk7CisgICAgbmRidWYtPmRhdGEgPSBkYXRhOworICAgIG5kYnVmLT5sZW4gKz0gYWRkc2l6ZTsKKyAgICBiYXNlLT5idWYgPSBuZGJ1Zi0+ZGF0YTsKKworICAgIC8qIGltaW46IG1pbmltdW0gaW5kZXggb2YgdGhlIGlucHV0IGFycmF5IHJlbGF0aXZlIHRvIG5kYnVmLT5vZmZzZXQuCisgICAgICAgc3Vib2Zmc2V0MDogb2Zmc2V0IGZvciBlYWNoIHN1Yi1hcnJheSBvZiB0aGUgb3V0cHV0LiBUaGlzIGlzIHRoZQorICAgICAgICAgICAgICAgICAgIHNhbWUgYXMgY2FsY3VsYXRpbmcgLWltaW4nIGZvciBhIHN1Yi1hcnJheSBvZiBuZGltLTEuICovCisgICAgaW1pbiA9IHN1Ym9mZnNldDAgPSAwOworICAgIGZvciAobiA9IDA7IG4gPCBiYXNlLT5uZGltOyBuKyspIHsKKyAgICAgICAgaWYgKGJhc2UtPnNoYXBlW25dID09IDApCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgaWYgKGJhc2UtPnN0cmlkZXNbbl0gPD0gMCkgeworICAgICAgICAgICAgUHlfc3NpemVfdCB4ID0gKGJhc2UtPnNoYXBlW25dLTEpICogYmFzZS0+c3RyaWRlc1tuXTsKKyAgICAgICAgICAgIGltaW4gKz0geDsKKyAgICAgICAgICAgIHN1Ym9mZnNldDAgKz0gKG4gPj0gMSkgPyAteCA6IDA7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvKiBJbml0aWFsaXplIHRoZSBhcnJheSBvZiBwb2ludGVycyB0byB0aGUgc3ViLWFycmF5cy4gKi8KKyAgICBzdGFydCA9IGFkZHNpemUgKyBuZGJ1Zi0+b2Zmc2V0ICsgaW1pbjsKKyAgICBzdGVwID0gYmFzZS0+c3RyaWRlc1swXSA8IDAgPyAtYmFzZS0+c3RyaWRlc1swXSA6IGJhc2UtPnN0cmlkZXNbMF07CisKKyAgICBmb3IgKG4gPSAwOyBuIDwgYmFzZS0+c2hhcGVbMF07IG4rKykKKyAgICAgICAgKChjaGFyICoqKWJhc2UtPmJ1Zilbbl0gPSAoY2hhciAqKWJhc2UtPmJ1ZiArIHN0YXJ0ICsgbipzdGVwOworCisgICAgLyogSW5pdGlhbGl6ZSBzdWJvZmZzZXRzLiAqLworICAgIGJhc2UtPnN1Ym9mZnNldHMgPSBQeU1lbV9NYWxsb2MoYmFzZS0+bmRpbSAqIChzaXplb2YgKmJhc2UtPnN1Ym9mZnNldHMpKTsKKyAgICBpZiAoYmFzZS0+c3Vib2Zmc2V0cyA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgYmFzZS0+c3Vib2Zmc2V0c1swXSA9IHN1Ym9mZnNldDA7CisgICAgZm9yIChuID0gMTsgbiA8IGJhc2UtPm5kaW07IG4rKykKKyAgICAgICAgYmFzZS0+c3Vib2Zmc2V0c1tuXSA9IC0xOworCisgICAgLyogQWRqdXN0IHN0cmlkZXMgZm9yIHRoZSBmaXJzdCAoemVyb3RoKSBkaW1lbnNpb24uICovCisgICAgaWYgKGJhc2UtPnN0cmlkZXNbMF0gPj0gMCkgeworICAgICAgICBiYXNlLT5zdHJpZGVzWzBdID0gc2l6ZW9mKGNoYXIgKik7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICAvKiBTdHJpZGluZyBiYWNrd2FyZHMuICovCisgICAgICAgIGJhc2UtPnN0cmlkZXNbMF0gPSAtKFB5X3NzaXplX3Qpc2l6ZW9mKGNoYXIgKik7CisgICAgICAgIGlmIChiYXNlLT5zaGFwZVswXSA+IDApCisgICAgICAgICAgICBiYXNlLT5idWYgPSAoY2hhciAqKWJhc2UtPmJ1ZiArIChiYXNlLT5zaGFwZVswXS0xKSAqIHNpemVvZihjaGFyICopOworICAgIH0KKworICAgIG5kYnVmLT5mbGFncyAmPSB+KE5EX0N8TkRfRk9SVFJBTik7CisgICAgbmRidWYtPm9mZnNldCA9IDA7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lkCitpbml0X2xlbihQeV9idWZmZXIgKmJhc2UpCit7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgYmFzZS0+bGVuID0gMTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgYmFzZS0+bmRpbTsgaSsrKQorICAgICAgICBiYXNlLT5sZW4gKj0gYmFzZS0+c2hhcGVbaV07CisgICAgYmFzZS0+bGVuICo9IGJhc2UtPml0ZW1zaXplOworfQorCitzdGF0aWMgaW50Citpbml0X3N0cnVjdHVyZShuZGJ1Zl90ICpuZGJ1ZiwgUHlPYmplY3QgKnNoYXBlLCBQeU9iamVjdCAqc3RyaWRlcywKKyAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbmRpbSkKK3sKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmbmRidWYtPmJhc2U7CisKKyAgICBiYXNlLT5uZGltID0gKGludCluZGltOworICAgIGlmIChuZGltID09IDApIHsKKyAgICAgICAgaWYgKG5kYnVmLT5mbGFncyAmIE5EX1BJTCkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAibmRpbSA9IDAgY2Fubm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBORF9QSUwiKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBuZGJ1Zi0+ZmxhZ3MgfD0gKE5EX1NDQUxBUnxORF9DfE5EX0ZPUlRSQU4pOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICAvKiBzaGFwZSAqLworICAgIGJhc2UtPnNoYXBlID0gc2VxX2FzX3NzaXplX2FycmF5KHNoYXBlLCBuZGltLCAxKTsKKyAgICBpZiAoYmFzZS0+c2hhcGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgLyogc3RyaWRlcyAqLworICAgIGlmIChzdHJpZGVzKSB7CisgICAgICAgIGJhc2UtPnN0cmlkZXMgPSBzZXFfYXNfc3NpemVfYXJyYXkoc3RyaWRlcywgbmRpbSwgMCk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBiYXNlLT5zdHJpZGVzID0gc3RyaWRlc19mcm9tX3NoYXBlKG5kYnVmLCBuZGJ1Zi0+ZmxhZ3MpOworICAgIH0KKyAgICBpZiAoYmFzZS0+c3RyaWRlcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKHZlcmlmeV9zdHJ1Y3R1cmUoYmFzZS0+bGVuLCBiYXNlLT5pdGVtc2l6ZSwgbmRidWYtPm9mZnNldCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlLT5zaGFwZSwgYmFzZS0+c3RyaWRlcywgbmRpbSkgPCAwKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICAvKiBidWYgKi8KKyAgICBiYXNlLT5idWYgPSBuZGJ1Zi0+ZGF0YSArIG5kYnVmLT5vZmZzZXQ7CisKKyAgICAvKiBsZW4gKi8KKyAgICBpbml0X2xlbihiYXNlKTsKKworICAgIC8qIG5kYnVmLT5mbGFncyAqLworICAgIGlmIChQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoYmFzZSwgJ0MnKSkKKyAgICAgICAgbmRidWYtPmZsYWdzIHw9IE5EX0M7CisgICAgaWYgKFB5QnVmZmVyX0lzQ29udGlndW91cyhiYXNlLCAnRicpKQorICAgICAgICBuZGJ1Zi0+ZmxhZ3MgfD0gTkRfRk9SVFJBTjsKKworCisgICAgLyogY29udmVydCBudW1weSBhcnJheSB0byBzdWJvZmZzZXQgcmVwcmVzZW50YXRpb24gKi8KKyAgICBpZiAobmRidWYtPmZsYWdzICYgTkRfUElMKSB7CisgICAgICAgIC8qIG1vZGlmaWVzIGJhc2UtPmJ1ZiwgYmFzZS0+c3RyaWRlcyBhbmQgYmFzZS0+c3Vib2Zmc2V0cyAqKi8KKyAgICAgICAgcmV0dXJuIGluaXRfc3Vib2Zmc2V0cyhuZGJ1Zik7CisgICAgfQorCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBuZGJ1Zl90ICoKK2luaXRfbmRidWYoUHlPYmplY3QgKml0ZW1zLCBQeU9iamVjdCAqc2hhcGUsIFB5T2JqZWN0ICpzdHJpZGVzLAorICAgICAgICAgICBQeV9zc2l6ZV90IG9mZnNldCwgUHlPYmplY3QgKmZvcm1hdCwgaW50IGZsYWdzKQoreworICAgIG5kYnVmX3QgKm5kYnVmOworICAgIFB5X3NzaXplX3QgbmRpbTsKKyAgICBQeV9zc2l6ZV90IG5pdGVtczsKKyAgICBQeV9zc2l6ZV90IGl0ZW1zaXplOworCisgICAgLyogbmRpbSA9IGxlbihzaGFwZSkgKi8KKyAgICBDSEVDS19MSVNUX09SX1RVUExFKHNoYXBlKQorICAgIG5kaW0gPSBQeVNlcXVlbmNlX0Zhc3RfR0VUX1NJWkUoc2hhcGUpOworICAgIGlmIChuZGltID4gTkRfTUFYX05ESU0pIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAibmRpbSBtdXN0IG5vdCBleGNlZWQgJWQiLCBORF9NQVhfTkRJTSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIC8qIGxlbihzdHJpZGVzKSA9IGxlbihzaGFwZSkgKi8KKyAgICBpZiAoc3RyaWRlcykgeworICAgICAgICBDSEVDS19MSVNUX09SX1RVUExFKHN0cmlkZXMpCisgICAgICAgIGlmIChQeVNlcXVlbmNlX0Zhc3RfR0VUX1NJWkUoc3RyaWRlcykgPT0gMCkKKyAgICAgICAgICAgIHN0cmlkZXMgPSBOVUxMOworICAgICAgICBlbHNlIGlmIChmbGFncyAmIE5EX0ZPUlRSQU4pIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgIk5EX0ZPUlRSQU4gY2Fubm90IGJlIHVzZWQgdG9nZXRoZXIgd2l0aCBzdHJpZGVzIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChQeVNlcXVlbmNlX0Zhc3RfR0VUX1NJWkUoc3RyaWRlcykgIT0gbmRpbSkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgImxlbihzaGFwZSkgIT0gbGVuKHN0cmlkZXMpIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8qIGl0ZW1zaXplICovCisgICAgaXRlbXNpemUgPSBnZXRfaXRlbXNpemUoZm9ybWF0KTsKKyAgICBpZiAoaXRlbXNpemUgPD0gMCkgeworICAgICAgICBpZiAoaXRlbXNpemUgPT0gMCkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgIml0ZW1zaXplIG11c3Qgbm90IGJlIHplcm8iKTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICAvKiBjb252ZXJ0IHNjYWxhciB0byBsaXN0ICovCisgICAgaWYgKG5kaW0gPT0gMCkgeworICAgICAgICBpdGVtcyA9IFB5X0J1aWxkVmFsdWUoIihPKSIsIGl0ZW1zKTsKKyAgICAgICAgaWYgKGl0ZW1zID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIENIRUNLX0xJU1RfT1JfVFVQTEUoaXRlbXMpCisgICAgICAgIFB5X0lOQ1JFRihpdGVtcyk7CisgICAgfQorCisgICAgLyogbnVtYmVyIG9mIGl0ZW1zICovCisgICAgbml0ZW1zID0gUHlTZXF1ZW5jZV9GYXN0X0dFVF9TSVpFKGl0ZW1zKTsKKyAgICBpZiAobml0ZW1zID09IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAiaW5pdGlhbGl6ZXIgbGlzdCBvciB0dXBsZSBtdXN0IG5vdCBiZSBlbXB0eSIpOworICAgICAgICBQeV9ERUNSRUYoaXRlbXMpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBuZGJ1ZiA9IG5kYnVmX25ldyhuaXRlbXMsIGl0ZW1zaXplLCBvZmZzZXQsIGZsYWdzKTsKKyAgICBpZiAobmRidWYgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYoaXRlbXMpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKworICAgIGlmIChpbml0X3NpbXBsZShuZGJ1ZiwgaXRlbXMsIGZvcm1hdCwgaXRlbXNpemUpIDwgMCkKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICBpZiAoaW5pdF9zdHJ1Y3R1cmUobmRidWYsIHNoYXBlLCBzdHJpZGVzLCBuZGltKSA8IDApCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICBQeV9ERUNSRUYoaXRlbXMpOworICAgIHJldHVybiBuZGJ1ZjsKKworZXJyb3I6CisgICAgUHlfREVDUkVGKGl0ZW1zKTsKKyAgICBuZGJ1Zl9mcmVlKG5kYnVmKTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworLyogaW5pdGlhbGl6ZSBhbmQgcHVzaCBhIG5ldyBiYXNlIG9udG8gdGhlIGxpbmtlZCBsaXN0ICovCitzdGF0aWMgaW50CituZGFycmF5X3B1c2hfYmFzZShOREFycmF5T2JqZWN0ICpuZCwgUHlPYmplY3QgKml0ZW1zLAorICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnNoYXBlLCBQeU9iamVjdCAqc3RyaWRlcywKKyAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgb2Zmc2V0LCBQeU9iamVjdCAqZm9ybWF0LCBpbnQgZmxhZ3MpCit7CisgICAgbmRidWZfdCAqbmRidWY7CisKKyAgICBuZGJ1ZiA9IGluaXRfbmRidWYoaXRlbXMsIHNoYXBlLCBzdHJpZGVzLCBvZmZzZXQsIGZvcm1hdCwgZmxhZ3MpOworICAgIGlmIChuZGJ1ZiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBuZGJ1Zl9wdXNoKG5kLCBuZGJ1Zik7CisgICAgcmV0dXJuIDA7Cit9CisKKyNkZWZpbmUgUHlCVUZfVU5VU0VEIDB4MTAwMDAKK3N0YXRpYyBpbnQKK25kYXJyYXlfaW5pdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQoreworICAgIE5EQXJyYXlPYmplY3QgKm5kID0gKE5EQXJyYXlPYmplY3QgKilzZWxmOworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsKKyAgICAgICAgIm9iaiIsICJzaGFwZSIsICJzdHJpZGVzIiwgIm9mZnNldCIsICJmb3JtYXQiLCAiZmxhZ3MiLCAiZ2V0YnVmIiwgTlVMTAorICAgIH07CisgICAgUHlPYmplY3QgKnYgPSBOVUxMOyAgLyogaW5pdGlhbGl6ZXI6IHNjYWxhciwgbGlzdCwgdHVwbGUgb3IgYmFzZSBvYmplY3QgKi8KKyAgICBQeU9iamVjdCAqc2hhcGUgPSBOVUxMOyAgIC8qIHNpemUgb2YgZWFjaCBkaW1lbnNpb24gKi8KKyAgICBQeU9iamVjdCAqc3RyaWRlcyA9IE5VTEw7IC8qIG51bWJlciBvZiBieXRlcyB0byB0aGUgbmV4dCBlbHQgaW4gZWFjaCBkaW0gKi8KKyAgICBQeV9zc2l6ZV90IG9mZnNldCA9IDA7ICAgICAgICAgICAgLyogYnVmZmVyIG9mZnNldCAqLworICAgIFB5T2JqZWN0ICpmb3JtYXQgPSBzaW1wbGVfZm9ybWF0OyAvKiBzdHJ1Y3QgbW9kdWxlIHNwZWNpZmllcjogIkIiICovCisgICAgaW50IGZsYWdzID0gTkRfREVGQVVMVDsgICAgICAgICAgIC8qIGJhc2UgYnVmZmVyIGFuZCBuZGFycmF5IGZsYWdzICovCisKKyAgICBpbnQgZ2V0YnVmID0gUHlCVUZfVU5VU0VEOyAvKiByZS1leHBvcnRlcjogZ2V0YnVmZmVyIHJlcXVlc3QgZmxhZ3MgKi8KKworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIk98T09uT2lpIiwga3dsaXN0LAorICAgICAgICAgICAgJnYsICZzaGFwZSwgJnN0cmlkZXMsICZvZmZzZXQsICZmb3JtYXQsICZmbGFncywgJmdldGJ1ZikpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIC8qIE5EQXJyYXlPYmplY3QgaXMgcmUtZXhwb3J0ZXIgKi8KKyAgICBpZiAoUHlPYmplY3RfQ2hlY2tCdWZmZXIodikgJiYgc2hhcGUgPT0gTlVMTCkgeworICAgICAgICBpZiAoc3RyaWRlcyB8fCBvZmZzZXQgfHwgZm9ybWF0ICE9IHNpbXBsZV9mb3JtYXQgfHwKKyAgICAgICAgICAgICEoZmxhZ3MgPT0gTkRfREVGQVVMVCB8fCBmbGFncyA9PSBORF9SRURJUkVDVCkpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAiY29uc3RydWN0aW9uIGZyb20gZXhwb3J0ZXIgb2JqZWN0IG9ubHkgdGFrZXMgJ29iaicsICdnZXRidWYnICIKKyAgICAgICAgICAgICAgICJhbmQgJ2ZsYWdzJyBhcmd1bWVudHMiKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorCisgICAgICAgIGdldGJ1ZiA9IChnZXRidWYgPT0gUHlCVUZfVU5VU0VEKSA/IFB5QlVGX0ZVTExfUk8gOiBnZXRidWY7CisKKyAgICAgICAgaWYgKG5kYXJyYXlfaW5pdF9zdGF0aWNidWYodiwgbmQsIGdldGJ1ZikgPCAwKQorICAgICAgICAgICAgcmV0dXJuIC0xOworCisgICAgICAgIGluaXRfZmxhZ3MobmQtPmhlYWQpOworICAgICAgICBuZC0+aGVhZC0+ZmxhZ3MgfD0gZmxhZ3M7CisKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgLyogTkRBcnJheU9iamVjdCBpcyB0aGUgb3JpZ2luYWwgYmFzZSBvYmplY3QuICovCisgICAgaWYgKGdldGJ1ZiAhPSBQeUJVRl9VTlVTRUQpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJnZXRidWYgYXJndW1lbnQgb25seSB2YWxpZCBmb3IgY29uc3RydWN0aW9uIGZyb20gZXhwb3J0ZXIgIgorICAgICAgICAgICAgIm9iamVjdCIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmIChzaGFwZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAic2hhcGUgaXMgYSByZXF1aXJlZCBhcmd1bWVudCB3aGVuIGNvbnN0cnVjdGluZyBmcm9tICIKKyAgICAgICAgICAgICJsaXN0LCB0dXBsZSBvciBzY2FsYXIiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGlmIChmbGFncyAmIE5EX1ZBUkVYUE9SVCkgeworICAgICAgICBuZC0+ZmxhZ3MgfD0gTkRfVkFSRVhQT1JUOworICAgICAgICBmbGFncyAmPSB+TkRfVkFSRVhQT1JUOworICAgIH0KKworICAgIC8qIEluaXRpYWxpemUgYW5kIHB1c2ggdGhlIGZpcnN0IGJhc2UgYnVmZmVyIG9udG8gdGhlIGxpbmtlZCBsaXN0LiAqLworICAgIHJldHVybiBuZGFycmF5X3B1c2hfYmFzZShuZCwgdiwgc2hhcGUsIHN0cmlkZXMsIG9mZnNldCwgZm9ybWF0LCBmbGFncyk7Cit9CisKKy8qIFB1c2ggYW4gYWRkaXRpb25hbCBiYXNlIG9udG8gdGhlIGxpbmtlZCBsaXN0LiAqLworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfcHVzaChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQoreworICAgIE5EQXJyYXlPYmplY3QgKm5kID0gKE5EQXJyYXlPYmplY3QgKilzZWxmOworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsKKyAgICAgICAgIml0ZW1zIiwgInNoYXBlIiwgInN0cmlkZXMiLCAib2Zmc2V0IiwgImZvcm1hdCIsICJmbGFncyIsIE5VTEwKKyAgICB9OworICAgIFB5T2JqZWN0ICppdGVtcyA9IE5VTEw7ICAgLyogaW5pdGlhbGl6ZXI6IHNjYWxhciwgbGlzdCBvciB0dXBsZSAqLworICAgIFB5T2JqZWN0ICpzaGFwZSA9IE5VTEw7ICAgLyogc2l6ZSBvZiBlYWNoIGRpbWVuc2lvbiAqLworICAgIFB5T2JqZWN0ICpzdHJpZGVzID0gTlVMTDsgLyogbnVtYmVyIG9mIGJ5dGVzIHRvIHRoZSBuZXh0IGVsdCBpbiBlYWNoIGRpbSAqLworICAgIFB5T2JqZWN0ICpmb3JtYXQgPSBzaW1wbGVfZm9ybWF0OyAgLyogc3RydWN0IG1vZHVsZSBzcGVjaWZpZXI6ICJCIiAqLworICAgIFB5X3NzaXplX3Qgb2Zmc2V0ID0gMDsgICAgICAgICAgICAgLyogYnVmZmVyIG9mZnNldCAqLworICAgIGludCBmbGFncyA9IE5EX0RFRkFVTFQ7ICAgICAgICAgICAgLyogYmFzZSBidWZmZXIgZmxhZ3MgKi8KKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJPT3xPbk9pIiwga3dsaXN0LAorICAgICAgICAgICAgJml0ZW1zLCAmc2hhcGUsICZzdHJpZGVzLCAmb2Zmc2V0LCAmZm9ybWF0LCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChmbGFncyAmIE5EX1ZBUkVYUE9SVCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICJORF9WQVJFWFBPUlQgZmxhZyBjYW4gb25seSBiZSB1c2VkIGR1cmluZyBvYmplY3QgY3JlYXRpb24iKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmIChORF9JU19DT05TVU1FUihuZCkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0J1ZmZlckVycm9yLAorICAgICAgICAgICAgInN0cnVjdHVyZSBvZiByZS1leHBvcnRpbmcgb2JqZWN0IGlzIGltbXV0YWJsZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKCEobmQtPmZsYWdzJk5EX1ZBUkVYUE9SVCkgJiYgbmQtPmhlYWQtPmV4cG9ydHMgPiAwKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICJjYW5ub3QgY2hhbmdlIHN0cnVjdHVyZTogJXpkIGV4cG9ydGVkIGJ1ZmZlciVzIiwKKyAgICAgICAgICAgIG5kLT5oZWFkLT5leHBvcnRzLCBuZC0+aGVhZC0+ZXhwb3J0cz09MSA/ICIiIDogInMiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKG5kYXJyYXlfcHVzaF9iYXNlKG5kLCBpdGVtcywgc2hhcGUsIHN0cmlkZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldCwgZm9ybWF0LCBmbGFncykgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworLyogUG9wIGEgYmFzZSBmcm9tIHRoZSBsaW5rZWQgbGlzdCAoaWYgcG9zc2libGUpLiAqLworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfcG9wKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqZHVtbXkpCit7CisgICAgTkRBcnJheU9iamVjdCAqbmQgPSAoTkRBcnJheU9iamVjdCAqKXNlbGY7CisgICAgaWYgKE5EX0lTX0NPTlNVTUVSKG5kKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAic3RydWN0dXJlIG9mIHJlLWV4cG9ydGluZyBvYmplY3QgaXMgaW1tdXRhYmxlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAobmQtPmhlYWQtPmV4cG9ydHMgPiAwKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICJjYW5ub3QgY2hhbmdlIHN0cnVjdHVyZTogJXpkIGV4cG9ydGVkIGJ1ZmZlciVzIiwKKyAgICAgICAgICAgIG5kLT5oZWFkLT5leHBvcnRzLCBuZC0+aGVhZC0+ZXhwb3J0cz09MSA/ICIiIDogInMiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmIChuZC0+aGVhZC0+bmV4dCA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICJsaXN0IG9ubHkgaGFzIGEgc2luZ2xlIGJhc2UiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgbmRidWZfcG9wKG5kKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0YnVmZmVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitzdGF0aWMgaW50CituZGFycmF5X2dldGJ1ZihOREFycmF5T2JqZWN0ICpzZWxmLCBQeV9idWZmZXIgKnZpZXcsIGludCBmbGFncykKK3sKKyAgICBuZGJ1Zl90ICpuZGJ1ZiA9IHNlbGYtPmhlYWQ7CisgICAgUHlfYnVmZmVyICpiYXNlID0gJm5kYnVmLT5iYXNlOworICAgIGludCBiYXNlZmxhZ3MgPSBuZGJ1Zi0+ZmxhZ3M7CisKKyAgICAvKiByZWRpcmVjdCBtb2RlICovCisgICAgaWYgKGJhc2UtPm9iaiAhPSBOVUxMICYmIChiYXNlZmxhZ3MmTkRfUkVESVJFQ1QpKSB7CisgICAgICAgIHJldHVybiBQeU9iamVjdF9HZXRCdWZmZXIoYmFzZS0+b2JqLCB2aWV3LCBmbGFncyk7CisgICAgfQorCisgICAgLyogc3RhcnQgd2l0aCBjb21wbGV0ZSBpbmZvcm1hdGlvbiAqLworICAgICp2aWV3ID0gKmJhc2U7CisgICAgdmlldy0+b2JqID0gTlVMTDsKKworICAgIC8qIHJlY29uc3RydWN0IGZvcm1hdCAqLworICAgIGlmICh2aWV3LT5mb3JtYXQgPT0gTlVMTCkKKyAgICAgICAgdmlldy0+Zm9ybWF0ID0gIkIiOworCisgICAgaWYgKGJhc2UtPm5kaW0gIT0gMCAmJgorICAgICAgICAoKFJFUV9TSEFQRShmbGFncykgJiYgYmFzZS0+c2hhcGUgPT0gTlVMTCkgfHwKKyAgICAgICAgIChSRVFfU1RSSURFUyhmbGFncykgJiYgYmFzZS0+c3RyaWRlcyA9PSBOVUxMKSkpIHsKKyAgICAgICAgLyogVGhlIG5kYXJyYXkgaXMgYSByZS1leHBvcnRlciB0aGF0IGhhcyBiZWVuIGNyZWF0ZWQgd2l0aG91dCBmdWxsCisgICAgICAgICAgIGluZm9ybWF0aW9uIGZvciB0ZXN0aW5nIHB1cnBvc2VzLiBJbiB0aGlzIHBhcnRpY3VsYXIgY2FzZSB0aGUKKyAgICAgICAgICAgbmRhcnJheSBpcyBub3QgYSBQRVAtMzExOCBjb21wbGlhbnQgYnVmZmVyIHByb3ZpZGVyLiAqLworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAicmUtZXhwb3J0ZXIgZG9lcyBub3QgcHJvdmlkZSBmb3JtYXQsIHNoYXBlIG9yIHN0cmlkZXMiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGlmIChiYXNlZmxhZ3MgJiBORF9HRVRCVUZfRkFJTCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAiTkRfR0VUQlVGX0ZBSUw6IGZvcmNlZCB0ZXN0IGV4Y2VwdGlvbiIpOworICAgICAgICBpZiAoYmFzZWZsYWdzICYgTkRfR0VUQlVGX1VOREVGSU5FRCkKKyAgICAgICAgICAgIHZpZXctPm9iaiA9IChQeU9iamVjdCAqKTB4MTsgLyogd3JvbmcgYnV0IHBlcm1pdHRlZCBpbiA8PSAzLjIgKi8KKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGlmIChSRVFfV1JJVEFCTEUoZmxhZ3MpICYmIGJhc2UtPnJlYWRvbmx5KSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICJuZGFycmF5IGlzIG5vdCB3cml0YWJsZSIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICghUkVRX0ZPUk1BVChmbGFncykpIHsKKyAgICAgICAgLyogTlVMTCBpbmRpY2F0ZXMgdGhhdCB0aGUgYnVmZmVyJ3MgZGF0YSB0eXBlIGhhcyBiZWVuIGNhc3QgdG8gJ0InLgorICAgICAgICAgICB2aWV3LT5pdGVtc2l6ZSBpcyB0aGUgX3ByZXZpb3VzXyBpdGVtc2l6ZS4gSWYgc2hhcGUgaXMgcHJlc2VudCwKKyAgICAgICAgICAgdGhlIGVxdWFsaXR5IHByb2R1Y3Qoc2hhcGUpICogaXRlbXNpemUgPSBsZW4gc3RpbGwgaG9sZHMgYXQgdGhpcworICAgICAgICAgICBwb2ludC4gVGhlIGVxdWFsaXR5IGNhbGNzaXplKGZvcm1hdCkgPSBpdGVtc2l6ZSBkb2VzIF9ub3RfIGhvbGQKKyAgICAgICAgICAgZnJvbSBoZXJlIG9uISAqLworICAgICAgICB2aWV3LT5mb3JtYXQgPSBOVUxMOworICAgIH0KKworICAgIGlmIChSRVFfQ19DT05USUdVT1VTKGZsYWdzKSAmJiAhTkRfQ19DT05USUdVT1VTKGJhc2VmbGFncykpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0J1ZmZlckVycm9yLAorICAgICAgICAgICAgIm5kYXJyYXkgaXMgbm90IEMtY29udGlndW91cyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmIChSRVFfRl9DT05USUdVT1VTKGZsYWdzKSAmJiAhTkRfRk9SVFJBTl9DT05USUdVT1VTKGJhc2VmbGFncykpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0J1ZmZlckVycm9yLAorICAgICAgICAgICAgIm5kYXJyYXkgaXMgbm90IEZvcnRyYW4gY29udGlndW91cyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmIChSRVFfQU5ZX0NPTlRJR1VPVVMoZmxhZ3MpICYmICFORF9BTllfQ09OVElHVU9VUyhiYXNlZmxhZ3MpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICJuZGFycmF5IGlzIG5vdCBjb250aWd1b3VzIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgaWYgKCFSRVFfSU5ESVJFQ1QoZmxhZ3MpICYmIChiYXNlZmxhZ3MgJiBORF9QSUwpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICJuZGFycmF5IGNhbm5vdCBiZSByZXByZXNlbnRlZCB3aXRob3V0IHN1Ym9mZnNldHMiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAoIVJFUV9TVFJJREVTKGZsYWdzKSkgeworICAgICAgICBpZiAoIU5EX0NfQ09OVElHVU9VUyhiYXNlZmxhZ3MpKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAgICAgIm5kYXJyYXkgaXMgbm90IEMtY29udGlndW91cyIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIHZpZXctPnN0cmlkZXMgPSBOVUxMOworICAgIH0KKyAgICBpZiAoIVJFUV9TSEFQRShmbGFncykpIHsKKyAgICAgICAgLyogUHlCVUZfU0lNUExFIG9yIFB5QlVGX1dSSVRBQkxFOiBhdCB0aGlzIHBvaW50IGJ1ZiBpcyBDLWNvbnRpZ3VvdXMsCisgICAgICAgICAgIHNvIGJhc2UtPmJ1ZiA9IG5kYnVmLT5kYXRhLiAqLworICAgICAgICBpZiAodmlldy0+Zm9ybWF0ICE9IE5VTEwpIHsKKyAgICAgICAgICAgIC8qIFB5QlVGX1NJTVBMRXxQeUJVRl9GT1JNQVQgYW5kIFB5QlVGX1dSSVRBQkxFfFB5QlVGX0ZPUk1BVCBkbworICAgICAgICAgICAgICAgbm90IG1ha2Ugc2Vuc2UuICovCisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAgICAgIm5kYXJyYXk6IGNhbm5vdCBjYXN0IHRvIHVuc2lnbmVkIGJ5dGVzIGlmIHRoZSBmb3JtYXQgZmxhZyAiCisgICAgICAgICAgICAgICAgImlzIHByZXNlbnQiKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICAvKiBwcm9kdWN0KHNoYXBlKSAqIGl0ZW1zaXplID0gbGVuIGFuZCBjYWxjc2l6ZShmb3JtYXQpID0gaXRlbXNpemUKKyAgICAgICAgICAgZG8gX25vdF8gaG9sZCBmcm9tIGhlcmUgb24hICovCisgICAgICAgIHZpZXctPm5kaW0gPSAxOworICAgICAgICB2aWV3LT5zaGFwZSA9IE5VTEw7CisgICAgfQorCisgICAgdmlldy0+b2JqID0gKFB5T2JqZWN0ICopc2VsZjsKKyAgICBQeV9JTkNSRUYodmlldy0+b2JqKTsKKyAgICBzZWxmLT5oZWFkLT5leHBvcnRzKys7CisKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAorbmRhcnJheV9yZWxlYXNlYnVmKE5EQXJyYXlPYmplY3QgKnNlbGYsIFB5X2J1ZmZlciAqdmlldykKK3sKKyAgICBpZiAoIU5EX0lTX0NPTlNVTUVSKHNlbGYpKSB7CisgICAgICAgIG5kYnVmX3QgKm5kYnVmID0gdmlldy0+aW50ZXJuYWw7CisgICAgICAgIGlmICgtLW5kYnVmLT5leHBvcnRzID09IDAgJiYgbmRidWYgIT0gc2VsZi0+aGVhZCkKKyAgICAgICAgICAgIG5kYnVmX2RlbGV0ZShzZWxmLCBuZGJ1Zik7CisgICAgfQorCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeUJ1ZmZlclByb2NzIG5kYXJyYXlfYXNfYnVmZmVyID0geworICAgIChnZXRidWZmZXJwcm9jKW5kYXJyYXlfZ2V0YnVmLCAgICAgICAgLyogYmZfZ2V0YnVmZmVyICovCisgICAgKHJlbGVhc2VidWZmZXJwcm9jKW5kYXJyYXlfcmVsZWFzZWJ1ZiAvKiBiZl9yZWxlYXNlYnVmZmVyICovCit9OworCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXhpbmcvc2xpY2luZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworc3RhdGljIGNoYXIgKgorcHRyX2Zyb21faW5kZXgoUHlfYnVmZmVyICpiYXNlLCBQeV9zc2l6ZV90IGluZGV4KQoreworICAgIGNoYXIgKnB0cjsKKyAgICBQeV9zc2l6ZV90IG5pdGVtczsgLyogaXRlbXMgaW4gdGhlIGZpcnN0IGRpbWVuc2lvbiAqLworCisgICAgaWYgKGJhc2UtPnNoYXBlKQorICAgICAgICBuaXRlbXMgPSBiYXNlLT5zaGFwZVswXTsKKyAgICBlbHNlIHsKKyAgICAgICAgYXNzZXJ0KGJhc2UtPm5kaW0gPT0gMSAmJiBTSU1QTEVfRk9STUFUKGJhc2UtPmZvcm1hdCkpOworICAgICAgICBuaXRlbXMgPSBiYXNlLT5sZW47CisgICAgfQorCisgICAgaWYgKGluZGV4IDwgMCkgeworICAgICAgICBpbmRleCArPSBuaXRlbXM7CisgICAgfQorICAgIGlmIChpbmRleCA8IDAgfHwgaW5kZXggPj0gbml0ZW1zKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JbmRleEVycm9yLCAiaW5kZXggb3V0IG9mIGJvdW5kcyIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBwdHIgPSAoY2hhciAqKWJhc2UtPmJ1ZjsKKworICAgIGlmIChiYXNlLT5zdHJpZGVzID09IE5VTEwpCisgICAgICAgICBwdHIgKz0gYmFzZS0+aXRlbXNpemUgKiBpbmRleDsKKyAgICBlbHNlCisgICAgICAgICBwdHIgKz0gYmFzZS0+c3RyaWRlc1swXSAqIGluZGV4OworCisgICAgcHRyID0gQURKVVNUX1BUUihwdHIsIGJhc2UtPnN1Ym9mZnNldHMpOworCisgICAgcmV0dXJuIHB0cjsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfaXRlbShOREFycmF5T2JqZWN0ICpzZWxmLCBQeV9zc2l6ZV90IGluZGV4KQoreworICAgIG5kYnVmX3QgKm5kYnVmID0gc2VsZi0+aGVhZDsKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmbmRidWYtPmJhc2U7CisgICAgY2hhciAqcHRyOworCisgICAgaWYgKGJhc2UtPm5kaW0gPT0gMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiaW52YWxpZCBpbmRleGluZyBvZiBzY2FsYXIiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgcHRyID0gcHRyX2Zyb21faW5kZXgoYmFzZSwgaW5kZXgpOworICAgIGlmIChwdHIgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoYmFzZS0+bmRpbSA9PSAxKSB7CisgICAgICAgIHJldHVybiB1bnBhY2tfc2luZ2xlKHB0ciwgYmFzZS0+Zm9ybWF0LCBiYXNlLT5pdGVtc2l6ZSk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBOREFycmF5T2JqZWN0ICpuZDsKKyAgICAgICAgUHlfYnVmZmVyICpzdWJ2aWV3OworCisgICAgICAgIG5kID0gKE5EQXJyYXlPYmplY3QgKiluZGFycmF5X25ldygmTkRBcnJheV9UeXBlLCBOVUxMLCBOVUxMKTsKKyAgICAgICAgaWYgKG5kID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKworICAgICAgICBpZiAobmRhcnJheV9pbml0X3N0YXRpY2J1ZigoUHlPYmplY3QgKilzZWxmLCBuZCwgUHlCVUZfRlVMTF9STykgPCAwKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYobmQpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKworICAgICAgICBzdWJ2aWV3ID0gJm5kLT5zdGF0aWNidWYuYmFzZTsKKworICAgICAgICBzdWJ2aWV3LT5idWYgPSBwdHI7CisgICAgICAgIHN1YnZpZXctPmxlbiAvPSBzdWJ2aWV3LT5zaGFwZVswXTsKKworICAgICAgICBzdWJ2aWV3LT5uZGltLS07CisgICAgICAgIHN1YnZpZXctPnNoYXBlKys7CisgICAgICAgIGlmIChzdWJ2aWV3LT5zdHJpZGVzKSBzdWJ2aWV3LT5zdHJpZGVzKys7CisgICAgICAgIGlmIChzdWJ2aWV3LT5zdWJvZmZzZXRzKSBzdWJ2aWV3LT5zdWJvZmZzZXRzKys7CisKKyAgICAgICAgaW5pdF9mbGFncygmbmQtPnN0YXRpY2J1Zik7CisKKyAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKW5kOworICAgIH0KK30KKworLyoKKyAgRm9yIGVhY2ggZGltZW5zaW9uLCB3ZSBnZXQgdmFsaWQgKHN0YXJ0LCBzdG9wLCBzdGVwLCBzbGljZWxlbmd0aCkgcXVhZHJ1cGxlcworICBmcm9tIFB5U2xpY2VfR2V0SW5kaWNlc0V4KCkuCisKKyAgU2xpY2luZyBOdW1QeSBhcnJheXMKKyAgPT09PT09PT09PT09PT09PT09PT0KKworICAgIEEgcG9pbnRlciB0byBhbiBlbGVtZW50IGluIGEgTnVtUHkgYXJyYXkgaXMgZGVmaW5lZCBieToKKworICAgICAgcHRyID0gKGNoYXIgKilidWYgKyBpbmRpY2VzWzBdICogc3RyaWRlc1swXSArCisgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLiArCisgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGljZXNbbmRpbS0xXSAqIHN0cmlkZXNbbmRpbS0xXQorCisgICAgQWRqdXN0IGJ1ZjoKKyAgICAtLS0tLS0tLS0tLQorICAgICAgQWRkaW5nIHN0YXJ0W25dIGZvciBlYWNoIGRpbWVuc2lvbiBlZmZlY3RpdmVseSBhZGRzIHRoZSBjb25zdGFudDoKKworICAgICAgICBjID0gc3RhcnRbMF0gKiBzdHJpZGVzWzBdICsgLi4uICsgc3RhcnRbbmRpbS0xXSAqIHN0cmlkZXNbbmRpbS0xXQorCisgICAgICBUaGVyZWZvcmUgaW5pdF9zbGljZSgpIGFkZHMgYWxsIHN0YXJ0W25dIGRpcmVjdGx5IHRvIGJ1Zi4KKworICAgIEFkanVzdCBzaGFwZToKKyAgICAtLS0tLS0tLS0tLS0tCisgICAgICBPYnZpb3VzbHkgc2hhcGVbbl0gPSBzbGljZWxlbmd0aFtuXQorCisgICAgQWRqdXN0IHN0cmlkZXM6CisgICAgLS0tLS0tLS0tLS0tLS0tCisgICAgICBJbiB0aGUgb3JpZ2luYWwgYXJyYXksIHRoZSBuZXh0IGVsZW1lbnQgaW4gYSBkaW1lbnNpb24gaXMgcmVhY2hlZAorICAgICAgYnkgYWRkaW5nIHN0cmlkZXNbbl0gdG8gdGhlIHBvaW50ZXIuIEluIHRoZSBzbGljZWQgYXJyYXksIGVsZW1lbnRzCisgICAgICBtYXkgYmUgc2tpcHBlZCwgc28gdGhlIG5leHQgZWxlbWVudCBpcyByZWFjaGVkIGJ5IGFkZGluZzoKKworICAgICAgICBzdHJpZGVzW25dICogc3RlcFtuXQorCisgIFNsaWNpbmcgUElMIGFycmF5cworICA9PT09PT09PT09PT09PT09PT0KKworICAgIExheW91dDoKKyAgICAtLS0tLS0tCisgICAgICBJbiB0aGUgZmlyc3QgKHplcm90aCkgZGltZW5zaW9uLCBQSUwgYXJyYXlzIGhhdmUgYW4gYXJyYXkgb2YgcG9pbnRlcnMKKyAgICAgIHRvIHN1Yi1hcnJheXMgb2YgbmRpbS0xLiBTdHJpZGluZyBpbiB0aGUgZmlyc3QgZGltZW5zaW9uIGlzIGRvbmUgYnkKKyAgICAgIGdldHRpbmcgdGhlIGluZGV4IG9mIHRoZSBudGggcG9pbnRlciwgZGVyZWZlcmVuY2UgaXQgYW5kIHRoZW4gYWRkIGEKKyAgICAgIHN1Ym9mZnNldCB0byBpdC4gVGhlIGFycmF5cyBwb2ludGVkIHRvIGNhbiBiZXN0IGJlIHNlZW4gYSByZWd1bGFyCisgICAgICBOdW1QeSBhcnJheXMuCisKKyAgICBBZGp1c3QgYnVmOgorICAgIC0tLS0tLS0tLS0tCisgICAgICBJbiB0aGUgb3JpZ2luYWwgYXJyYXksIGJ1ZiBwb2ludHMgdG8gYSBsb2NhdGlvbiAodXN1YWxseSB0aGUgc3RhcnQpCisgICAgICBpbiB0aGUgYXJyYXkgb2YgcG9pbnRlcnMuIEZvciB0aGUgc2xpY2VkIGFycmF5LCBzdGFydFswXSBjYW4gYmUKKyAgICAgIGFkZGVkIHRvIGJ1ZiBpbiB0aGUgc2FtZSBtYW5uZXIgYXMgZm9yIE51bVB5IGFycmF5cy4KKworICAgIEFkanVzdCBzdWJvZmZzZXRzOgorICAgIC0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgRHVlIHRvIHRoZSBkZXJlZmVyZW5jaW5nIHN0ZXAgaW4gdGhlIGFkZHJlc3Npbmcgc2NoZW1lLCBpdCBpcyBub3QKKyAgICAgIHBvc3NpYmxlIHRvIGFkanVzdCBidWYgZm9yIGhpZ2hlciBkaW1lbnNpb25zLiBSZWNhbGwgdGhhdCB0aGUKKyAgICAgIHN1Yi1hcnJheXMgcG9pbnRlZCB0byBhcmUgcmVndWxhciBOdW1QeSBhcnJheXMsIHNvIGZvciBlYWNoIG9mCisgICAgICB0aG9zZSBhcnJheXMgYWRkaW5nIHN0YXJ0W25dIGVmZmVjdGl2ZWx5IGFkZHMgdGhlIGNvbnN0YW50OgorCisgICAgICAgIGMgPSBzdGFydFsxXSAqIHN0cmlkZXNbMV0gKyAuLi4gKyBzdGFydFtuZGltLTFdICogc3RyaWRlc1tuZGltLTFdCisKKyAgICAgIFRoaXMgY29uc3RhbnQgaXMgYWRkZWQgdG8gc3Vib2Zmc2V0c1swXS4gc3Vib2Zmc2V0c1swXSBpbiB0dXJuIGlzCisgICAgICBhZGRlZCB0byBlYWNoIHBvaW50ZXIgcmlnaHQgYWZ0ZXIgZGVyZWZlcmVuY2luZy4KKworICAgIEFkanVzdCBzaGFwZSBhbmQgc3RyaWRlczoKKyAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICBTaGFwZSBhbmQgc3RyaWRlcyBhcmUgbm90IGluZmx1ZW5jZWQgYnkgdGhlIGRlcmVmZXJlbmNpbmcgc3RlcCwgc28KKyAgICAgIHRoZXkgYXJlIGFkanVzdGVkIGluIHRoZSBzYW1lIG1hbm5lciBhcyBmb3IgTnVtUHkgYXJyYXlzLgorCisgIE11bHRpcGxlIGxldmVscyBvZiBzdWJvZmZzZXRzCisgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKyAgICAgIEZvciBhIGNvbnN0cnVjdCBsaWtlIGFuIGFycmF5IG9mIHBvaW50ZXJzIHRvIGFycmF5IG9mIHBvaW50ZXJzIHRvCisgICAgICBzdWItYXJyYXlzIG9mIG5kaW0tMjoKKworICAgICAgICBzdWJvZmZzZXRzWzBdID0gc3RhcnRbMV0gKiBzdHJpZGVzWzFdCisgICAgICAgIHN1Ym9mZnNldHNbMV0gPSBzdGFydFsyXSAqIHN0cmlkZXNbMl0gKyAuLi4KKyovCitzdGF0aWMgaW50Citpbml0X3NsaWNlKFB5X2J1ZmZlciAqYmFzZSwgUHlPYmplY3QgKmtleSwgaW50IGRpbSkKK3sKKyAgICBQeV9zc2l6ZV90IHN0YXJ0LCBzdG9wLCBzdGVwLCBzbGljZWxlbmd0aDsKKworICAgIGlmIChQeVNsaWNlX0dldEluZGljZXNFeChrZXksIGJhc2UtPnNoYXBlW2RpbV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFydCwgJnN0b3AsICZzdGVwLCAmc2xpY2VsZW5ndGgpIDwgMCkgeworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisKKyAgICBpZiAoYmFzZS0+c3Vib2Zmc2V0cyA9PSBOVUxMIHx8IGRpbSA9PSAwKSB7CisgICAgYWRqdXN0X2J1ZjoKKyAgICAgICAgYmFzZS0+YnVmID0gKGNoYXIgKiliYXNlLT5idWYgKyBiYXNlLT5zdHJpZGVzW2RpbV0gKiBzdGFydDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5X3NzaXplX3QgbiA9IGRpbS0xOworICAgICAgICB3aGlsZSAobiA+PSAwICYmIGJhc2UtPnN1Ym9mZnNldHNbbl0gPCAwKQorICAgICAgICAgICAgbi0tOworICAgICAgICBpZiAobiA8IDApCisgICAgICAgICAgICBnb3RvIGFkanVzdF9idWY7IC8qIGFsbCBzdWJvZmZzZXRzIGFyZSBuZWdhdGl2ZSAqLworICAgICAgICBiYXNlLT5zdWJvZmZzZXRzW25dID0gYmFzZS0+c3Vib2Zmc2V0c1tuXSArIGJhc2UtPnN0cmlkZXNbZGltXSAqIHN0YXJ0OworICAgIH0KKyAgICBiYXNlLT5zaGFwZVtkaW1dID0gc2xpY2VsZW5ndGg7CisgICAgYmFzZS0+c3RyaWRlc1tkaW1dID0gYmFzZS0+c3RyaWRlc1tkaW1dICogc3RlcDsKKworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50Citjb3B5X3N0cnVjdHVyZShQeV9idWZmZXIgKmJhc2UpCit7CisgICAgUHlfc3NpemVfdCAqc2hhcGUgPSBOVUxMLCAqc3RyaWRlcyA9IE5VTEwsICpzdWJvZmZzZXRzID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGk7CisKKyAgICBzaGFwZSA9IFB5TWVtX01hbGxvYyhiYXNlLT5uZGltICogKHNpemVvZiAqc2hhcGUpKTsKKyAgICBzdHJpZGVzID0gUHlNZW1fTWFsbG9jKGJhc2UtPm5kaW0gKiAoc2l6ZW9mICpzdHJpZGVzKSk7CisgICAgaWYgKHNoYXBlID09IE5VTEwgfHwgc3RyaWRlcyA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycl9ub21lbTsKKworICAgIHN1Ym9mZnNldHMgPSBOVUxMOworICAgIGlmIChiYXNlLT5zdWJvZmZzZXRzKSB7CisgICAgICAgIHN1Ym9mZnNldHMgPSBQeU1lbV9NYWxsb2MoYmFzZS0+bmRpbSAqIChzaXplb2YgKnN1Ym9mZnNldHMpKTsKKyAgICAgICAgaWYgKHN1Ym9mZnNldHMgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyX25vbWVtOworICAgIH0KKworICAgIGZvciAoaSA9IDA7IGkgPCBiYXNlLT5uZGltOyBpKyspIHsKKyAgICAgICAgc2hhcGVbaV0gPSBiYXNlLT5zaGFwZVtpXTsKKyAgICAgICAgc3RyaWRlc1tpXSA9IGJhc2UtPnN0cmlkZXNbaV07CisgICAgICAgIGlmIChzdWJvZmZzZXRzKQorICAgICAgICAgICAgc3Vib2Zmc2V0c1tpXSA9IGJhc2UtPnN1Ym9mZnNldHNbaV07CisgICAgfQorCisgICAgYmFzZS0+c2hhcGUgPSBzaGFwZTsKKyAgICBiYXNlLT5zdHJpZGVzID0gc3RyaWRlczsKKyAgICBiYXNlLT5zdWJvZmZzZXRzID0gc3Vib2Zmc2V0czsKKworICAgIHJldHVybiAwOworCitlcnJfbm9tZW06CisgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICBQeU1lbV9YRnJlZShzaGFwZSk7CisgICAgUHlNZW1fWEZyZWUoc3RyaWRlcyk7CisgICAgUHlNZW1fWEZyZWUoc3Vib2Zmc2V0cyk7CisgICAgcmV0dXJuIC0xOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbmRhcnJheV9zdWJzY3JpcHQoTkRBcnJheU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmtleSkKK3sKKyAgICBOREFycmF5T2JqZWN0ICpuZDsKKyAgICBuZGJ1Zl90ICpuZGJ1ZjsKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmc2VsZi0+aGVhZC0+YmFzZTsKKworICAgIGlmIChiYXNlLT5uZGltID09IDApIHsKKyAgICAgICAgaWYgKFB5VHVwbGVfQ2hlY2soa2V5KSAmJiBQeVR1cGxlX0dFVF9TSVpFKGtleSkgPT0gMCkgeworICAgICAgICAgICAgcmV0dXJuIHVucGFja19zaW5nbGUoYmFzZS0+YnVmLCBiYXNlLT5mb3JtYXQsIGJhc2UtPml0ZW1zaXplKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChrZXkgPT0gUHlfRWxsaXBzaXMpIHsKKyAgICAgICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKKyAgICAgICAgICAgIHJldHVybiAoUHlPYmplY3QgKilzZWxmOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImludmFsaWQgaW5kZXhpbmcgb2Ygc2NhbGFyIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoUHlJbmRleF9DaGVjayhrZXkpKSB7CisgICAgICAgIFB5X3NzaXplX3QgaW5kZXggPSBQeUxvbmdfQXNTc2l6ZV90KGtleSk7CisgICAgICAgIGlmIChpbmRleCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHJldHVybiBuZGFycmF5X2l0ZW0oc2VsZiwgaW5kZXgpOworICAgIH0KKworICAgIG5kID0gKE5EQXJyYXlPYmplY3QgKiluZGFycmF5X25ldygmTkRBcnJheV9UeXBlLCBOVUxMLCBOVUxMKTsKKyAgICBpZiAobmQgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAvKiBuZXcgbmRhcnJheSBpcyBhIGNvbnN1bWVyICovCisgICAgaWYgKG5kYXJyYXlfaW5pdF9zdGF0aWNidWYoKFB5T2JqZWN0ICopc2VsZiwgbmQsIFB5QlVGX0ZVTExfUk8pIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYobmQpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICAvKiBjb3B5IHNoYXBlLCBzdHJpZGVzIGFuZCBzdWJvZmZzZXRzICovCisgICAgbmRidWYgPSBuZC0+aGVhZDsKKyAgICBiYXNlID0gJm5kYnVmLT5iYXNlOworICAgIGlmIChjb3B5X3N0cnVjdHVyZShiYXNlKSA8IDApIHsKKyAgICAgICAgUHlfREVDUkVGKG5kKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIG5kYnVmLT5mbGFncyB8PSBORF9PV05fQVJSQVlTOworCisgICAgaWYgKFB5U2xpY2VfQ2hlY2soa2V5KSkgeworICAgICAgICAvKiBvbmUtZGltZW5zaW9uYWwgc2xpY2UgKi8KKyAgICAgICAgaWYgKGluaXRfc2xpY2UoYmFzZSwga2V5LCAwKSA8IDApCisgICAgICAgICAgICBnb3RvIGVycl9vY2N1cnJlZDsKKyAgICB9CisgICAgZWxzZSBpZiBQeVR1cGxlX0NoZWNrKGtleSkgeworICAgICAgICAvKiBtdWx0aS1kaW1lbnNpb25hbCBzbGljZSAqLworICAgICAgICBQeU9iamVjdCAqdHVwbGUgPSBrZXk7CisgICAgICAgIFB5X3NzaXplX3QgaSwgbjsKKworICAgICAgICBuID0gUHlUdXBsZV9HRVRfU0laRSh0dXBsZSk7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspIHsKKyAgICAgICAgICAgIGtleSA9IFB5VHVwbGVfR0VUX0lURU0odHVwbGUsIGkpOworICAgICAgICAgICAgaWYgKCFQeVNsaWNlX0NoZWNrKGtleSkpCisgICAgICAgICAgICAgICAgZ290byB0eXBlX2Vycm9yOworICAgICAgICAgICAgaWYgKGluaXRfc2xpY2UoYmFzZSwga2V5LCAoaW50KWkpIDwgMCkKKyAgICAgICAgICAgICAgICBnb3RvIGVycl9vY2N1cnJlZDsKKyAgICAgICAgfQorICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgZ290byB0eXBlX2Vycm9yOworICAgIH0KKworICAgIGluaXRfbGVuKGJhc2UpOworICAgIGluaXRfZmxhZ3MobmRidWYpOworCisgICAgcmV0dXJuIChQeU9iamVjdCAqKW5kOworCisKK3R5cGVfZXJyb3I6CisgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgImNhbm5vdCBpbmRleCBtZW1vcnkgdXNpbmcgXCIlLjIwMHNcIiIsCisgICAgICAgIGtleS0+b2JfdHlwZS0+dHBfbmFtZSk7CitlcnJfb2NjdXJyZWQ6CisgICAgUHlfREVDUkVGKG5kKTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworCitzdGF0aWMgaW50CituZGFycmF5X2Fzc19zdWJzY3JpcHQoTkRBcnJheU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmtleSwgUHlPYmplY3QgKnZhbHVlKQoreworICAgIE5EQXJyYXlPYmplY3QgKm5kOworICAgIFB5X2J1ZmZlciAqZGVzdCA9ICZzZWxmLT5oZWFkLT5iYXNlOworICAgIFB5X2J1ZmZlciBzcmM7CisgICAgY2hhciAqcHRyOworICAgIFB5X3NzaXplX3QgaW5kZXg7CisgICAgaW50IHJldCA9IC0xOworCisgICAgaWYgKGRlc3QtPnJlYWRvbmx5KSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJuZGFycmF5IGlzIG5vdCB3cml0YWJsZSIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJuZGFycmF5IGRhdGEgY2Fubm90IGJlIGRlbGV0ZWQiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAoZGVzdC0+bmRpbSA9PSAwKSB7CisgICAgICAgIGlmIChrZXkgPT0gUHlfRWxsaXBzaXMgfHwKKyAgICAgICAgICAgIChQeVR1cGxlX0NoZWNrKGtleSkgJiYgUHlUdXBsZV9HRVRfU0laRShrZXkpID09IDApKSB7CisgICAgICAgICAgICBwdHIgPSAoY2hhciAqKWRlc3QtPmJ1ZjsKKyAgICAgICAgICAgIHJldHVybiBwYWNrX3NpbmdsZShwdHIsIHZhbHVlLCBkZXN0LT5mb3JtYXQsIGRlc3QtPml0ZW1zaXplKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJpbnZhbGlkIGluZGV4aW5nIG9mIHNjYWxhciIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgfQorICAgIGlmIChkZXN0LT5uZGltID09IDEgJiYgUHlJbmRleF9DaGVjayhrZXkpKSB7CisgICAgICAgIC8qIHJ2YWx1ZSBtdXN0IGJlIGEgc2luZ2xlIGl0ZW0gKi8KKyAgICAgICAgaW5kZXggPSBQeUxvbmdfQXNTc2l6ZV90KGtleSk7CisgICAgICAgIGlmIChpbmRleCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIHB0ciA9IHB0cl9mcm9tX2luZGV4KGRlc3QsIGluZGV4KTsKKyAgICAgICAgICAgIGlmIChwdHIgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHBhY2tfc2luZ2xlKHB0ciwgdmFsdWUsIGRlc3QtPmZvcm1hdCwgZGVzdC0+aXRlbXNpemUpOworICAgIH0KKworICAgIC8qIHJ2YWx1ZSBtdXN0IGJlIGFuIGV4cG9ydGVyICovCisgICAgaWYgKFB5T2JqZWN0X0dldEJ1ZmZlcih2YWx1ZSwgJnNyYywgUHlCVUZfRlVMTF9STykgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIG5kID0gKE5EQXJyYXlPYmplY3QgKiluZGFycmF5X3N1YnNjcmlwdChzZWxmLCBrZXkpOworICAgIGlmIChuZCAhPSBOVUxMKSB7CisgICAgICAgIGRlc3QgPSAmbmQtPmhlYWQtPmJhc2U7CisgICAgICAgIHJldCA9IGNvcHlfYnVmZmVyKGRlc3QsICZzcmMpOworICAgICAgICBQeV9ERUNSRUYobmQpOworICAgIH0KKworICAgIFB5QnVmZmVyX1JlbGVhc2UoJnNyYyk7CisgICAgcmV0dXJuIHJldDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK3NsaWNlX2luZGljZXMoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpyZXQsICprZXksICp0bXA7CisgICAgUHlfc3NpemVfdCBzWzRdOyAvKiBzdGFydCwgc3RvcCwgc3RlcCwgc2xpY2VsZW5ndGggKi8KKyAgICBQeV9zc2l6ZV90IGksIGxlbjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT24iLCAma2V5LCAmbGVuKSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKCFQeVNsaWNlX0NoZWNrKGtleSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJmaXJzdCBhcmd1bWVudCBtdXN0IGJlIGEgc2xpY2Ugb2JqZWN0Iik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoUHlTbGljZV9HZXRJbmRpY2VzRXgoa2V5LCBsZW4sICZzWzBdLCAmc1sxXSwgJnNbMl0sICZzWzNdKSA8IDApIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgcmV0ID0gUHlUdXBsZV9OZXcoNCk7CisgICAgaWYgKHJldCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGZvciAoaSA9IDA7IGkgPCA0OyBpKyspIHsKKyAgICAgICAgdG1wID0gUHlMb25nX0Zyb21Tc2l6ZV90KHNbaV0pOworICAgICAgICBpZiAodG1wID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKHJldCwgaSwgdG1wKTsKKyAgICB9CisKKyAgICByZXR1cm4gcmV0OworCitlcnJvcjoKKyAgICBQeV9ERUNSRUYocmV0KTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworCitzdGF0aWMgUHlNYXBwaW5nTWV0aG9kcyBuZGFycmF5X2FzX21hcHBpbmcgPSB7CisgICAgTlVMTCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBtcF9sZW5ndGggKi8KKyAgICAoYmluYXJ5ZnVuYyluZGFycmF5X3N1YnNjcmlwdCwgICAgICAgIC8qIG1wX3N1YnNjcmlwdCAqLworICAgIChvYmpvYmphcmdwcm9jKW5kYXJyYXlfYXNzX3N1YnNjcmlwdCAgLyogbXBfYXNzX3N1YnNjcmlwdCAqLworfTsKKworc3RhdGljIFB5U2VxdWVuY2VNZXRob2RzIG5kYXJyYXlfYXNfc2VxdWVuY2UgPSB7CisgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzcV9sZW5ndGggKi8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNxX2NvbmNhdCAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc3FfcmVwZWF0ICovCisgICAgICAgIChzc2l6ZWFyZ2Z1bmMpbmRhcnJheV9pdGVtLCAgICAgICAvKiBzcV9pdGVtICovCit9OworCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0dGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK3NzaXplX2FycmF5X2FzX3R1cGxlKFB5X3NzaXplX3QgKmFycmF5LCBQeV9zc2l6ZV90IGxlbikKK3sKKyAgICBQeU9iamVjdCAqdHVwbGUsICp4OworICAgIFB5X3NzaXplX3QgaTsKKworICAgIGlmIChhcnJheSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gUHlUdXBsZV9OZXcoMCk7CisKKyAgICB0dXBsZSA9IFB5VHVwbGVfTmV3KGxlbik7CisgICAgaWYgKHR1cGxlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7CisgICAgICAgIHggPSBQeUxvbmdfRnJvbVNzaXplX3QoYXJyYXlbaV0pOworICAgICAgICBpZiAoeCA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYodHVwbGUpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgUHlUdXBsZV9TRVRfSVRFTSh0dXBsZSwgaSwgeCk7CisgICAgfQorCisgICAgcmV0dXJuIHR1cGxlOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbmRhcnJheV9nZXRfZmxhZ3MoTkRBcnJheU9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKK3sKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKHNlbGYtPmhlYWQtPmZsYWdzKTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfZ2V0X29mZnNldChOREFycmF5T2JqZWN0ICpzZWxmLCB2b2lkICpjbG9zdXJlKQoreworICAgIG5kYnVmX3QgKm5kYnVmID0gc2VsZi0+aGVhZDsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KG5kYnVmLT5vZmZzZXQpOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbmRhcnJheV9nZXRfb2JqKE5EQXJyYXlPYmplY3QgKnNlbGYsIHZvaWQgKmNsb3N1cmUpCit7CisgICAgUHlfYnVmZmVyICpiYXNlID0gJnNlbGYtPmhlYWQtPmJhc2U7CisKKyAgICBpZiAoYmFzZS0+b2JqID09IE5VTEwpIHsgCisgICAgICAgIFB5X1JFVFVSTl9OT05FOworICAgIH0KKyAgICBQeV9JTkNSRUYoYmFzZS0+b2JqKTsKKyAgICByZXR1cm4gYmFzZS0+b2JqOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbmRhcnJheV9nZXRfbmJ5dGVzKE5EQXJyYXlPYmplY3QgKnNlbGYsIHZvaWQgKmNsb3N1cmUpCit7CisgICAgUHlfYnVmZmVyICpiYXNlID0gJnNlbGYtPmhlYWQtPmJhc2U7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChiYXNlLT5sZW4pOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbmRhcnJheV9nZXRfcmVhZG9ubHkoTkRBcnJheU9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKK3sKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmc2VsZi0+aGVhZC0+YmFzZTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKGJhc2UtPnJlYWRvbmx5KTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfZ2V0X2l0ZW1zaXplKE5EQXJyYXlPYmplY3QgKnNlbGYsIHZvaWQgKmNsb3N1cmUpCit7CisgICAgUHlfYnVmZmVyICpiYXNlID0gJnNlbGYtPmhlYWQtPmJhc2U7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChiYXNlLT5pdGVtc2l6ZSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCituZGFycmF5X2dldF9mb3JtYXQoTkRBcnJheU9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKK3sKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmc2VsZi0+aGVhZC0+YmFzZTsKKyAgICBjaGFyICpmbXQgPSBiYXNlLT5mb3JtYXQgPyBiYXNlLT5mb3JtYXQgOiAiIjsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoZm10KTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfZ2V0X25kaW0oTkRBcnJheU9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKK3sKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmc2VsZi0+aGVhZC0+YmFzZTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KGJhc2UtPm5kaW0pOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbmRhcnJheV9nZXRfc2hhcGUoTkRBcnJheU9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKK3sKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmc2VsZi0+aGVhZC0+YmFzZTsKKyAgICByZXR1cm4gc3NpemVfYXJyYXlfYXNfdHVwbGUoYmFzZS0+c2hhcGUsIGJhc2UtPm5kaW0pOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbmRhcnJheV9nZXRfc3RyaWRlcyhOREFycmF5T2JqZWN0ICpzZWxmLCB2b2lkICpjbG9zdXJlKQoreworICAgIFB5X2J1ZmZlciAqYmFzZSA9ICZzZWxmLT5oZWFkLT5iYXNlOworICAgIHJldHVybiBzc2l6ZV9hcnJheV9hc190dXBsZShiYXNlLT5zdHJpZGVzLCBiYXNlLT5uZGltKTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfZ2V0X3N1Ym9mZnNldHMoTkRBcnJheU9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKK3sKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmc2VsZi0+aGVhZC0+YmFzZTsKKyAgICByZXR1cm4gc3NpemVfYXJyYXlfYXNfdHVwbGUoYmFzZS0+c3Vib2Zmc2V0cywgYmFzZS0+bmRpbSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCituZGFycmF5X2NfY29udGlnKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqZHVtbXkpCit7CisgICAgTkRBcnJheU9iamVjdCAqbmQgPSAoTkRBcnJheU9iamVjdCAqKXNlbGY7CisgICAgaW50IHJldCA9IFB5QnVmZmVyX0lzQ29udGlndW91cygmbmQtPmhlYWQtPmJhc2UsICdDJyk7CisKKyAgICBpZiAocmV0ICE9IE5EX0NfQ09OVElHVU9VUyhuZC0+aGVhZC0+ZmxhZ3MpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAicmVzdWx0cyBmcm9tIFB5QnVmZmVyX0lzQ29udGlndW91cygpIGFuZCBmbGFncyBkaWZmZXIiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcocmV0KTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfZm9ydHJhbl9jb250aWcoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpkdW1teSkKK3sKKyAgICBOREFycmF5T2JqZWN0ICpuZCA9IChOREFycmF5T2JqZWN0ICopc2VsZjsKKyAgICBpbnQgcmV0ID0gUHlCdWZmZXJfSXNDb250aWd1b3VzKCZuZC0+aGVhZC0+YmFzZSwgJ0YnKTsKKworICAgIGlmIChyZXQgIT0gTkRfRk9SVFJBTl9DT05USUdVT1VTKG5kLT5oZWFkLT5mbGFncykpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKKyAgICAgICAgICAgICJyZXN1bHRzIGZyb20gUHlCdWZmZXJfSXNDb250aWd1b3VzKCkgYW5kIGZsYWdzIGRpZmZlciIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZyhyZXQpOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbmRhcnJheV9jb250aWcoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpkdW1teSkKK3sKKyAgICBOREFycmF5T2JqZWN0ICpuZCA9IChOREFycmF5T2JqZWN0ICopc2VsZjsKKyAgICBpbnQgcmV0ID0gUHlCdWZmZXJfSXNDb250aWd1b3VzKCZuZC0+aGVhZC0+YmFzZSwgJ0EnKTsKKworICAgIGlmIChyZXQgIT0gTkRfQU5ZX0NPTlRJR1VPVVMobmQtPmhlYWQtPmZsYWdzKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgInJlc3VsdHMgZnJvbSBQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoKSBhbmQgZmxhZ3MgZGlmZmVyIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKHJldCk7Cit9CisKKworc3RhdGljIFB5R2V0U2V0RGVmIG5kYXJyYXlfZ2V0c2V0IFtdID0KK3sKKyAgLyogbmRidWYgKi8KKyAgeyAiZmxhZ3MiLCAgICAgICAgKGdldHRlciluZGFycmF5X2dldF9mbGFncywgICAgICBOVUxMLCBOVUxMLCBOVUxMfSwKKyAgeyAib2Zmc2V0IiwgICAgICAgKGdldHRlciluZGFycmF5X2dldF9vZmZzZXQsICAgICBOVUxMLCBOVUxMLCBOVUxMfSwKKyAgLyogbmRidWYuYmFzZSAqLworICB7ICJvYmoiLCAgICAgICAgICAoZ2V0dGVyKW5kYXJyYXlfZ2V0X29iaiwgICAgICAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJuYnl0ZXMiLCAgICAgICAoZ2V0dGVyKW5kYXJyYXlfZ2V0X25ieXRlcywgICAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJyZWFkb25seSIsICAgICAoZ2V0dGVyKW5kYXJyYXlfZ2V0X3JlYWRvbmx5LCAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJpdGVtc2l6ZSIsICAgICAoZ2V0dGVyKW5kYXJyYXlfZ2V0X2l0ZW1zaXplLCAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJmb3JtYXQiLCAgICAgICAoZ2V0dGVyKW5kYXJyYXlfZ2V0X2Zvcm1hdCwgICAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJuZGltIiwgICAgICAgICAoZ2V0dGVyKW5kYXJyYXlfZ2V0X25kaW0sICAgICAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJzaGFwZSIsICAgICAgICAoZ2V0dGVyKW5kYXJyYXlfZ2V0X3NoYXBlLCAgICAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJzdHJpZGVzIiwgICAgICAoZ2V0dGVyKW5kYXJyYXlfZ2V0X3N0cmlkZXMsICAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJzdWJvZmZzZXRzIiwgICAoZ2V0dGVyKW5kYXJyYXlfZ2V0X3N1Ym9mZnNldHMsIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJjX2NvbnRpZ3VvdXMiLCAoZ2V0dGVyKW5kYXJyYXlfY19jb250aWcsICAgICAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJmX2NvbnRpZ3VvdXMiLCAoZ2V0dGVyKW5kYXJyYXlfZm9ydHJhbl9jb250aWcsIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7ICJjb250aWd1b3VzIiwgICAoZ2V0dGVyKW5kYXJyYXlfY29udGlnLCAgICAgICAgIE5VTEwsIE5VTEwsIE5VTEx9LAorICB7TlVMTH0KK307CisKK3N0YXRpYyBQeU9iamVjdCAqCituZGFycmF5X3RvbGlzdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmR1bW15KQoreworICAgIHJldHVybiBuZGFycmF5X2FzX2xpc3QoKE5EQXJyYXlPYmplY3QgKilzZWxmKTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfdG9ieXRlcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmR1bW15KQoreworICAgIG5kYnVmX3QgKm5kYnVmID0gKChOREFycmF5T2JqZWN0ICopc2VsZiktPmhlYWQ7CisgICAgUHlfYnVmZmVyICpzcmMgPSAmbmRidWYtPmJhc2U7CisgICAgUHlfYnVmZmVyIGRlc3Q7CisgICAgUHlPYmplY3QgKnJldCA9IE5VTEw7CisgICAgY2hhciAqbWVtOworCisgICAgaWYgKE5EX0NfQ09OVElHVU9VUyhuZGJ1Zi0+ZmxhZ3MpKQorICAgICAgICByZXR1cm4gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShzcmMtPmJ1Ziwgc3JjLT5sZW4pOworCisgICAgYXNzZXJ0KHNyYy0+c2hhcGUgIT0gTlVMTCk7CisgICAgYXNzZXJ0KHNyYy0+c3RyaWRlcyAhPSBOVUxMKTsKKyAgICBhc3NlcnQoc3JjLT5uZGltID4gMCk7CisKKyAgICBtZW0gPSBQeU1lbV9NYWxsb2Moc3JjLT5sZW4pOworICAgIGlmIChtZW0gPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBkZXN0ID0gKnNyYzsKKyAgICBkZXN0LmJ1ZiA9IG1lbTsKKyAgICBkZXN0LnN1Ym9mZnNldHMgPSBOVUxMOworICAgIGRlc3Quc3RyaWRlcyA9IHN0cmlkZXNfZnJvbV9zaGFwZShuZGJ1ZiwgMCk7CisgICAgaWYgKGRlc3Quc3RyaWRlcyA9PSBOVUxMKQorICAgICAgICBnb3RvIG91dDsKKyAgICBpZiAoY29weV9idWZmZXIoJmRlc3QsIHNyYykgPCAwKQorICAgICAgICBnb3RvIG91dDsKKworICAgIHJldCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUobWVtLCBzcmMtPmxlbik7CisKK291dDoKKyAgICBQeU1lbV9YRnJlZShkZXN0LnN0cmlkZXMpOworICAgIFB5TWVtX0ZyZWUobWVtKTsKKyAgICByZXR1cm4gcmV0OworfQorCisvKiBhZGQgcmVkdW5kYW50IChuZWdhdGl2ZSkgc3Vib2Zmc2V0cyBmb3IgdGVzdGluZyAqLworc3RhdGljIFB5T2JqZWN0ICoKK25kYXJyYXlfYWRkX3N1Ym9mZnNldHMoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpkdW1teSkKK3sKKyAgICBOREFycmF5T2JqZWN0ICpuZCA9IChOREFycmF5T2JqZWN0ICopc2VsZjsKKyAgICBQeV9idWZmZXIgKmJhc2UgPSAmbmQtPmhlYWQtPmJhc2U7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgaWYgKGJhc2UtPnN1Ym9mZnNldHMgIT0gTlVMTCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgImNhbm5vdCBhZGQgc3Vib2Zmc2V0cyB0byBQSUwtc3R5bGUgYXJyYXkiKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoYmFzZS0+c3RyaWRlcyA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAiY2Fubm90IGFkZCBzdWJvZmZzZXRzIHRvIGFycmF5IHdpdGhvdXQgc3RyaWRlcyIpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgYmFzZS0+c3Vib2Zmc2V0cyA9IFB5TWVtX01hbGxvYyhiYXNlLT5uZGltICogKHNpemVvZiAqYmFzZS0+c3Vib2Zmc2V0cykpOworICAgIGlmIChiYXNlLT5zdWJvZmZzZXRzID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgZm9yIChpID0gMDsgaSA8IGJhc2UtPm5kaW07IGkrKykKKyAgICAgICAgYmFzZS0+c3Vib2Zmc2V0c1tpXSA9IC0xOworCisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKKy8qIFRlc3QgUHlNZW1vcnlWaWV3X0Zyb21CdWZmZXIoKTogcmV0dXJuIGEgbWVtb3J5dmlldyBmcm9tIGEgc3RhdGljIGJ1ZmZlci4KKyAgIE9idmlvdXNseSB0aGlzIGlzIGZyYWdpbGUgYW5kIG9ubHkgb25lIHN1Y2ggdmlldyBtYXkgYmUgYWN0aXZlIGF0IGFueQorICAgdGltZS4gTmV2ZXIgdXNlIGFueXRoaW5nIGxpa2UgdGhpcyBpbiByZWFsIGNvZGUhICovCitzdGF0aWMgY2hhciAqaW5mb2J1ZiA9IE5VTEw7CitzdGF0aWMgUHlPYmplY3QgKgorbmRhcnJheV9tZW1vcnl2aWV3X2Zyb21fYnVmZmVyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqZHVtbXkpCit7CisgICAgY29uc3QgTkRBcnJheU9iamVjdCAqbmQgPSAoTkRBcnJheU9iamVjdCAqKXNlbGY7CisgICAgY29uc3QgUHlfYnVmZmVyICp2aWV3ID0gJm5kLT5oZWFkLT5iYXNlOworICAgIGNvbnN0IG5kYnVmX3QgKm5kYnVmOworICAgIHN0YXRpYyBjaGFyIGZvcm1hdFtORF9NQVhfTkRJTSsxXTsKKyAgICBzdGF0aWMgUHlfc3NpemVfdCBzaGFwZVtORF9NQVhfTkRJTV07CisgICAgc3RhdGljIFB5X3NzaXplX3Qgc3RyaWRlc1tORF9NQVhfTkRJTV07CisgICAgc3RhdGljIFB5X3NzaXplX3Qgc3Vib2Zmc2V0c1tORF9NQVhfTkRJTV07CisgICAgc3RhdGljIFB5X2J1ZmZlciBpbmZvOworICAgIGNoYXIgKnA7CisKKyAgICBpZiAoIU5EX0lTX0NPTlNVTUVSKG5kKSkKKyAgICAgICAgbmRidWYgPSBuZC0+aGVhZDsgLyogc2VsZiBpcyBuZGFycmF5L29yaWdpbmFsIGV4cG9ydGVyICovCisgICAgZWxzZSBpZiAoTkRBcnJheV9DaGVjayh2aWV3LT5vYmopICYmICFORF9JU19DT05TVU1FUih2aWV3LT5vYmopKQorICAgICAgICAvKiBzZWxmIGlzIG5kYXJyYXkgYW5kIGNvbnN1bWVyIGZyb20gbmRhcnJheS9vcmlnaW5hbCBleHBvcnRlciAqLworICAgICAgICBuZGJ1ZiA9ICgoTkRBcnJheU9iamVjdCAqKXZpZXctPm9iaiktPmhlYWQ7CisgICAgZWxzZSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICJtZW1vcnl2aWV3X2Zyb21fYnVmZmVyKCk6IG5kYXJyYXkgbXVzdCBiZSBvcmlnaW5hbCBleHBvcnRlciBvciAiCisgICAgICAgICJjb25zdW1lciBmcm9tIG5kYXJyYXkvb3JpZ2luYWwgZXhwb3J0ZXIiKTsKKyAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGluZm8gPSAqdmlldzsKKyAgICBwID0gUHlNZW1fUmVhbGxvYyhpbmZvYnVmLCBuZGJ1Zi0+bGVuKTsKKyAgICBpZiAocCA9PSBOVUxMKSB7CisgICAgICAgIFB5TWVtX0ZyZWUoaW5mb2J1Zik7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIGluZm9idWYgPSBOVUxMOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGluZm9idWYgPSBwOworICAgIH0KKyAgICAvKiBjb3B5IHRoZSBjb21wbGV0ZSByYXcgZGF0YSAqLworICAgIG1lbWNweShpbmZvYnVmLCBuZGJ1Zi0+ZGF0YSwgbmRidWYtPmxlbik7CisgICAgaW5mby5idWYgPSBpbmZvYnVmICsgKChjaGFyICopdmlldy0+YnVmIC0gbmRidWYtPmRhdGEpOworCisgICAgaWYgKHZpZXctPmZvcm1hdCkgeworICAgICAgICBpZiAoc3RybGVuKHZpZXctPmZvcm1hdCkgPiBORF9NQVhfTkRJTSkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAibWVtb3J5dmlld19mcm9tX2J1ZmZlcjogZm9ybWF0IGlzIGxpbWl0ZWQgdG8gJWQgY2hhcmFjdGVycyIsCisgICAgICAgICAgICAgICAgTkRfTUFYX05ESU0pOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIHN0cmNweShmb3JtYXQsIHZpZXctPmZvcm1hdCk7CisgICAgICAgIGluZm8uZm9ybWF0ID0gZm9ybWF0OworICAgIH0KKyAgICBpZiAodmlldy0+bmRpbSA+IE5EX01BWF9ORElNKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAibWVtb3J5dmlld19mcm9tX2J1ZmZlcjogbmRpbSBpcyBsaW1pdGVkIHRvICVkIiwgTkRfTUFYX05ESU0pOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmICh2aWV3LT5zaGFwZSkgeworICAgICAgICBtZW1jcHkoc2hhcGUsIHZpZXctPnNoYXBlLCB2aWV3LT5uZGltICogc2l6ZW9mKFB5X3NzaXplX3QpKTsKKyAgICAgICAgaW5mby5zaGFwZSA9IHNoYXBlOworICAgIH0KKyAgICBpZiAodmlldy0+c3RyaWRlcykgeworICAgICAgICBtZW1jcHkoc3RyaWRlcywgdmlldy0+c3RyaWRlcywgdmlldy0+bmRpbSAqIHNpemVvZihQeV9zc2l6ZV90KSk7CisgICAgICAgIGluZm8uc3RyaWRlcyA9IHN0cmlkZXM7CisgICAgfQorICAgIGlmICh2aWV3LT5zdWJvZmZzZXRzKSB7CisgICAgICAgIG1lbWNweShzdWJvZmZzZXRzLCB2aWV3LT5zdWJvZmZzZXRzLCB2aWV3LT5uZGltICogc2l6ZW9mKFB5X3NzaXplX3QpKTsKKyAgICAgICAgaW5mby5zdWJvZmZzZXRzID0gc3Vib2Zmc2V0czsKKyAgICB9CisKKyAgICByZXR1cm4gUHlNZW1vcnlWaWV3X0Zyb21CdWZmZXIoJmluZm8pOworfQorCisvKiBHZXQgYSBzaW5nbGUgaXRlbSBmcm9tIGJ1Zm9iaiBhdCB0aGUgbG9jYXRpb24gc3BlY2lmaWVkIGJ5IHNlcS4KKyAgIHNlcSBpcyBhIGxpc3Qgb3IgdHVwbGUgb2YgaW5kaWNlcy4gVGhlIHB1cnBvc2Ugb2YgdGhpcyBmdW5jdGlvbgorICAgaXMgdG8gY2hlY2sgb3RoZXIgZnVuY3Rpb25zIGFnYWluc3QgUHlCdWZmZXJfR2V0UG9pbnRlcigpLiAqLworc3RhdGljIFB5T2JqZWN0ICoKK2dldF9wb2ludGVyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqcmV0ID0gTlVMTCwgKmJ1Zm9iaiwgKnNlcTsKKyAgICBQeV9idWZmZXIgdmlldzsKKyAgICBQeV9zc2l6ZV90IGluZGljZXNbTkRfTUFYX05ESU1dOworICAgIFB5X3NzaXplX3QgaTsKKyAgICB2b2lkICpwdHI7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9PIiwgJmJ1Zm9iaiwgJnNlcSkpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgQ0hFQ0tfTElTVF9PUl9UVVBMRShzZXEpOworICAgIGlmIChQeU9iamVjdF9HZXRCdWZmZXIoYnVmb2JqLCAmdmlldywgUHlCVUZfRlVMTF9STykgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmICh2aWV3Lm5kaW0gPiBORF9NQVhfTkRJTSkgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICJnZXRfcG9pbnRlcigpOiBuZGltID4gJWQiLCBORF9NQVhfTkRJTSk7CisgICAgICAgIGdvdG8gb3V0OworICAgIH0KKyAgICBpZiAoUHlTZXF1ZW5jZV9GYXN0X0dFVF9TSVpFKHNlcSkgIT0gdmlldy5uZGltKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgImdldF9wb2ludGVyKCk6IGxlbihpbmRpY2VzKSAhPSBuZGltIik7CisgICAgICAgIGdvdG8gb3V0OworICAgIH0KKworICAgIGZvciAoaSA9IDA7IGkgPCB2aWV3Lm5kaW07IGkrKykgeworICAgICAgICBQeU9iamVjdCAqeCA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfSVRFTShzZXEsIGkpOworICAgICAgICBpbmRpY2VzW2ldID0gUHlMb25nX0FzU3NpemVfdCh4KTsKKyAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgaWYgKGluZGljZXNbaV0gPCAwIHx8IGluZGljZXNbaV0gPj0gdmlldy5zaGFwZVtpXSkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgImdldF9wb2ludGVyKCk6IGludmFsaWQgaW5kZXggJXpkIGF0IHBvc2l0aW9uICV6ZCIsCisgICAgICAgICAgICAgICAgaW5kaWNlc1tpXSwgaSk7CisgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgfQorICAgIH0KKworICAgIHB0ciA9IFB5QnVmZmVyX0dldFBvaW50ZXIoJnZpZXcsIGluZGljZXMpOworICAgIHJldCA9IHVucGFja19zaW5nbGUocHRyLCB2aWV3LmZvcm1hdCwgdmlldy5pdGVtc2l6ZSk7CisKK291dDoKKyAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZ2aWV3KTsKKyAgICByZXR1cm4gcmV0OworfQorCitzdGF0aWMgY2hhcgorZ2V0X2FzY2lpX29yZGVyKFB5T2JqZWN0ICpvcmRlcikKK3sKKyAgICBQeU9iamVjdCAqYXNjaWlfb3JkZXI7CisgICAgY2hhciBvcmQ7CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhvcmRlcikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJvcmRlciBtdXN0IGJlIGEgc3RyaW5nIik7CisgICAgICAgIHJldHVybiBDSEFSX01BWDsKKyAgICB9CisKKyAgICBhc2NpaV9vcmRlciA9IFB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKG9yZGVyKTsKKyAgICBpZiAoYXNjaWlfb3JkZXIgPT0gTlVMTCkgeworICAgICAgICByZXR1cm4gQ0hBUl9NQVg7CisgICAgfQorCisgICAgb3JkID0gUHlCeXRlc19BU19TVFJJTkcoYXNjaWlfb3JkZXIpWzBdOworICAgIFB5X0RFQ1JFRihhc2NpaV9vcmRlcik7CisgICAgcmV0dXJuIG9yZDsKK30KKworLyogR2V0IGEgY29udGlndW91cyBtZW1vcnl2aWV3LiAqLworc3RhdGljIFB5T2JqZWN0ICoKK2dldF9jb250aWd1b3VzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb2JqOworICAgIFB5T2JqZWN0ICpidWZmZXJ0eXBlOworICAgIFB5T2JqZWN0ICpvcmRlcjsKKyAgICBsb25nIHR5cGU7CisgICAgY2hhciBvcmQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9PTyIsICZvYmosICZidWZmZXJ0eXBlLCAmb3JkZXIpKSB7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGlmICghUHlMb25nX0NoZWNrKGJ1ZmZlcnR5cGUpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAiYnVmZmVydHlwZSBtdXN0IGJlIFB5QlVGX1JFQUQgb3IgUHlCVUZfV1JJVEUiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHR5cGUgPSBQeUxvbmdfQXNMb25nKGJ1ZmZlcnR5cGUpOworICAgIGlmICh0eXBlID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgb3JkID0gZ2V0X2FzY2lpX29yZGVyKG9yZGVyKTsKKyAgICBpZiAob3JkID09IENIQVJfTUFYKSB7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiBQeU1lbW9yeVZpZXdfR2V0Q29udGlndW91cyhvYmosIChpbnQpdHlwZSwgb3JkKTsKK30KKworc3RhdGljIGludAorZm10Y21wKGNvbnN0IGNoYXIgKmZtdDEsIGNvbnN0IGNoYXIgKmZtdDIpCit7CisgICAgaWYgKGZtdDEgPT0gTlVMTCkgeworICAgICAgICByZXR1cm4gZm10MiA9PSBOVUxMIHx8IHN0cmNtcChmbXQyLCAiQiIpID09IDA7CisgICAgfQorICAgIGlmIChmbXQyID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIGZtdDEgPT0gTlVMTCB8fCBzdHJjbXAoZm10MSwgIkIiKSA9PSAwOworICAgIH0KKyAgICByZXR1cm4gc3RyY21wKGZtdDEsIGZtdDIpID09IDA7Cit9CisKK3N0YXRpYyBpbnQKK2FycmF5Y21wKGNvbnN0IFB5X3NzaXplX3QgKmExLCBjb25zdCBQeV9zc2l6ZV90ICphMiwgY29uc3QgUHlfc3NpemVfdCAqc2hhcGUsCisgICAgICAgICBQeV9zc2l6ZV90IG5kaW0pCit7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgaWYgKG5kaW0gPT0gMSAmJiBzaGFwZSAmJiBzaGFwZVswXSA9PSAxKSB7CisgICAgICAgIC8qIFRoaXMgaXMgZm9yIGNvbXBhcmluZyBzdHJpZGVzOiBGb3IgZXhhbXBsZSwgdGhlIGFycmF5CisgICAgICAgICAgIFsxNzVdLCBzaGFwZT1bMV0sIHN0cmlkZXM9Wy01XSBpcyBjb25zaWRlcmVkIGNvbnRpZ3VvdXMuICovCisgICAgICAgIHJldHVybiAxOworICAgIH0KKworICAgIGZvciAoaSA9IDA7IGkgPCBuZGltOyBpKyspIHsKKyAgICAgICAgaWYgKGExW2ldICE9IGEyW2ldKSB7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiAxOworfQorCisvKiBDb21wYXJlIHR3byBjb250aWd1b3VzIGJ1ZmZlcnMgZm9yIHBoeXNpY2FsIGVxdWFsaXR5LiAqLworc3RhdGljIFB5T2JqZWN0ICoKK2NtcF9jb250aWcoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpiMSwgKmIyOyAvKiBidWZmZXIgb2JqZWN0cyAqLworICAgIFB5X2J1ZmZlciB2MSwgdjI7CisgICAgUHlPYmplY3QgKnJldDsKKyAgICBpbnQgZXF1YWwgPSAwOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPTyIsICZiMSwgJmIyKSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoUHlPYmplY3RfR2V0QnVmZmVyKGIxLCAmdjEsIFB5QlVGX0ZVTExfUk8pIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgImNtcF9jb250aWc6IGZpcnN0IGFyZ3VtZW50IGRvZXMgbm90IGltcGxlbWVudCB0aGUgYnVmZmVyICIKKyAgICAgICAgICAgICJwcm90b2NvbCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKFB5T2JqZWN0X0dldEJ1ZmZlcihiMiwgJnYyLCBQeUJVRl9GVUxMX1JPKSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJjbXBfY29udGlnOiBzZWNvbmQgYXJndW1lbnQgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBidWZmZXIgIgorICAgICAgICAgICAgInByb3RvY29sIik7CisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnYxKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKCEoUHlCdWZmZXJfSXNDb250aWd1b3VzKCZ2MSwgJ0MnKSYmUHlCdWZmZXJfSXNDb250aWd1b3VzKCZ2MiwgJ0MnKSkgJiYKKyAgICAgICAgIShQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoJnYxLCAnRicpJiZQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoJnYyLCAnRicpKSkgeworICAgICAgICBnb3RvIHJlc3VsdDsKKyAgICB9CisKKyAgICAvKiByZWFkb25seSBtYXkgZGlmZmVyIGlmIGNyZWF0ZWQgZnJvbSBub24tY29udGlndW91cyAqLworICAgIGlmICh2MS5sZW4gIT0gdjIubGVuIHx8CisgICAgICAgIHYxLml0ZW1zaXplICE9IHYyLml0ZW1zaXplIHx8CisgICAgICAgIHYxLm5kaW0gIT0gdjIubmRpbSB8fAorICAgICAgICAhZm10Y21wKHYxLmZvcm1hdCwgdjIuZm9ybWF0KSB8fAorICAgICAgICAhIXYxLnNoYXBlICE9ICEhdjIuc2hhcGUgfHwKKyAgICAgICAgISF2MS5zdHJpZGVzICE9ICEhdjIuc3RyaWRlcyB8fAorICAgICAgICAhIXYxLnN1Ym9mZnNldHMgIT0gISF2Mi5zdWJvZmZzZXRzKSB7CisgICAgICAgIGdvdG8gcmVzdWx0OworICAgIH0KKworICAgIGlmICgodjEuc2hhcGUgJiYgIWFycmF5Y21wKHYxLnNoYXBlLCB2Mi5zaGFwZSwgTlVMTCwgdjEubmRpbSkpIHx8CisgICAgICAgICh2MS5zdHJpZGVzICYmICFhcnJheWNtcCh2MS5zdHJpZGVzLCB2Mi5zdHJpZGVzLCB2MS5zaGFwZSwgdjEubmRpbSkpIHx8CisgICAgICAgICh2MS5zdWJvZmZzZXRzICYmICFhcnJheWNtcCh2MS5zdWJvZmZzZXRzLCB2Mi5zdWJvZmZzZXRzLCBOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdjEubmRpbSkpKSB7CisgICAgICAgIGdvdG8gcmVzdWx0OworICAgIH0KKworICAgIGlmIChtZW1jbXAoKGNoYXIgKil2MS5idWYsIChjaGFyICopdjIuYnVmLCB2MS5sZW4pICE9IDApIHsKKyAgICAgICAgZ290byByZXN1bHQ7CisgICAgfQorCisgICAgZXF1YWwgPSAxOworCityZXN1bHQ6CisgICAgUHlCdWZmZXJfUmVsZWFzZSgmdjEpOworICAgIFB5QnVmZmVyX1JlbGVhc2UoJnYyKTsKKworICAgIHJldCA9IGVxdWFsID8gUHlfVHJ1ZSA6IFB5X0ZhbHNlOyAKKyAgICBQeV9JTkNSRUYocmV0KTsKKyAgICByZXR1cm4gcmV0OworfQorCitzdGF0aWMgUHlPYmplY3QgKgoraXNfY29udGlndW91cyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9iajsKKyAgICBQeU9iamVjdCAqb3JkZXI7CisgICAgUHlPYmplY3QgKnJldCA9IE5VTEw7CisgICAgUHlfYnVmZmVyIHZpZXc7CisgICAgY2hhciBvcmQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9PIiwgJm9iaiwgJm9yZGVyKSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoUHlPYmplY3RfR2V0QnVmZmVyKG9iaiwgJnZpZXcsIFB5QlVGX0ZVTExfUk8pIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgImlzX2NvbnRpZ3VvdXM6IG9iamVjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGJ1ZmZlciAiCisgICAgICAgICAgICAicHJvdG9jb2wiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgb3JkID0gZ2V0X2FzY2lpX29yZGVyKG9yZGVyKTsKKyAgICBpZiAob3JkID09IENIQVJfTUFYKSB7CisgICAgICAgIGdvdG8gcmVsZWFzZTsKKyAgICB9CisKKyAgICByZXQgPSBQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoJnZpZXcsIG9yZCkgPyBQeV9UcnVlIDogUHlfRmFsc2U7CisgICAgUHlfSU5DUkVGKHJldCk7CisKK3JlbGVhc2U6CisgICAgUHlCdWZmZXJfUmVsZWFzZSgmdmlldyk7CisgICAgcmV0dXJuIHJldDsKK30KKworc3RhdGljIFB5X2hhc2hfdAorbmRhcnJheV9oYXNoKFB5T2JqZWN0ICpzZWxmKQoreworICAgIGNvbnN0IE5EQXJyYXlPYmplY3QgKm5kID0gKE5EQXJyYXlPYmplY3QgKilzZWxmOworICAgIGNvbnN0IFB5X2J1ZmZlciAqdmlldyA9ICZuZC0+aGVhZC0+YmFzZTsKKyAgICBQeU9iamVjdCAqYnl0ZXM7CisgICAgUHlfaGFzaF90IGhhc2g7CisKKyAgICBpZiAoIXZpZXctPnJlYWRvbmx5KSB7CisgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAiY2Fubm90IGhhc2ggd3JpdGFibGUgbmRhcnJheSBvYmplY3QiKTsKKyAgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgaWYgKHZpZXctPm9iaiAhPSBOVUxMICYmIFB5T2JqZWN0X0hhc2godmlldy0+b2JqKSA9PSAtMSkgeworICAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGJ5dGVzID0gbmRhcnJheV90b2J5dGVzKHNlbGYsIE5VTEwpOworICAgIGlmIChieXRlcyA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBoYXNoID0gUHlPYmplY3RfSGFzaChieXRlcyk7CisgICAgUHlfREVDUkVGKGJ5dGVzKTsKKyAgICByZXR1cm4gaGFzaDsKK30KKworCitzdGF0aWMgUHlNZXRob2REZWYgbmRhcnJheV9tZXRob2RzIFtdID0KK3sKKyAgICB7ICJ0b2xpc3QiLCBuZGFycmF5X3RvbGlzdCwgTUVUSF9OT0FSR1MsIE5VTEwgfSwKKyAgICB7ICJ0b2J5dGVzIiwgbmRhcnJheV90b2J5dGVzLCBNRVRIX05PQVJHUywgTlVMTCB9LAorICAgIHsgInB1c2giLCAoUHlDRnVuY3Rpb24pbmRhcnJheV9wdXNoLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywgTlVMTCB9LAorICAgIHsgInBvcCIsIG5kYXJyYXlfcG9wLCBNRVRIX05PQVJHUywgTlVMTCB9LAorICAgIHsgImFkZF9zdWJvZmZzZXRzIiwgbmRhcnJheV9hZGRfc3Vib2Zmc2V0cywgTUVUSF9OT0FSR1MsIE5VTEwgfSwKKyAgICB7ICJtZW1vcnl2aWV3X2Zyb21fYnVmZmVyIiwgbmRhcnJheV9tZW1vcnl2aWV3X2Zyb21fYnVmZmVyLCBNRVRIX05PQVJHUywgTlVMTCB9LAorICAgIHtOVUxMfQorfTsKKworc3RhdGljIFB5VHlwZU9iamVjdCBOREFycmF5X1R5cGUgPSB7CisgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCisgICAgIm5kYXJyYXkiLCAgICAgICAgICAgICAgICAgICAvKiBOYW1lIG9mIHRoaXMgdHlwZSAqLworICAgIHNpemVvZihOREFycmF5T2JqZWN0KSwgICAgICAgLyogQmFzaWMgb2JqZWN0IHNpemUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEl0ZW0gc2l6ZSBmb3IgdmFyb2JqZWN0ICovCisgICAgKGRlc3RydWN0b3IpbmRhcnJheV9kZWFsbG9jLCAvKiB0cF9kZWFsbG9jICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9wcmludCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVwciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbnVtYmVyICovCisgICAgJm5kYXJyYXlfYXNfc2VxdWVuY2UsICAgICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLworICAgICZuZGFycmF5X2FzX21hcHBpbmcsICAgICAgICAgLyogdHBfYXNfbWFwcGluZyAqLworICAgIChoYXNoZnVuYyluZGFycmF5X2hhc2gsICAgICAgLyogdHBfaGFzaCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2FsbCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc3RyICovCisgICAgUHlPYmplY3RfR2VuZXJpY0dldEF0dHIsICAgICAvKiB0cF9nZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KKyAgICAmbmRhcnJheV9hc19idWZmZXIsICAgICAgICAgIC8qIHRwX2FzX2J1ZmZlciAqLworICAgIFB5X1RQRkxBR1NfREVGQVVMVCwgICAgICAgICAgLyogdHBfZmxhZ3MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NsZWFyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgbmRhcnJheV9tZXRob2RzLCAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCisgICAgbmRhcnJheV9nZXRzZXQsICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Jhc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3QgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX2dldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3Jfc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0b2Zmc2V0ICovCisgICAgbmRhcnJheV9pbml0LCAgICAgICAgICAgICAgICAvKiB0cF9pbml0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hbGxvYyAqLworICAgIG5kYXJyYXlfbmV3LCAgICAgICAgICAgICAgICAgLyogdHBfbmV3ICovCit9OworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgU3RhdGljQXJyYXkgT2JqZWN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK3N0YXRpYyBQeVR5cGVPYmplY3QgU3RhdGljQXJyYXlfVHlwZTsKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5T2JqZWN0X0hFQUQKKyAgICBpbnQgbGVnYWN5X21vZGU7IC8qIGlmIHRydWUsIHVzZSB0aGUgdmlldy5vYmo9PU5VTEwgaGFjayAqLworfSBTdGF0aWNBcnJheU9iamVjdDsKKworc3RhdGljIGNoYXIgc3RhdGljX21lbVsxMl0gPSB7MCwxLDIsMyw0LDUsNiw3LDgsOSwxMCwxMX07CitzdGF0aWMgUHlfc3NpemVfdCBzdGF0aWNfc2hhcGVbMV0gPSB7MTJ9Oworc3RhdGljIFB5X3NzaXplX3Qgc3RhdGljX3N0cmlkZXNbMV0gPSB7MX07CitzdGF0aWMgUHlfYnVmZmVyIHN0YXRpY19idWZmZXIgPSB7CisgICAgc3RhdGljX21lbSwgICAgIC8qIGJ1ZiAqLworICAgIE5VTEwsICAgICAgICAgICAvKiBvYmogKi8KKyAgICAxMiwgICAgICAgICAgICAgLyogbGVuICovCisgICAgMSwgICAgICAgICAgICAgIC8qIGl0ZW1zaXplICovCisgICAgMSwgICAgICAgICAgICAgIC8qIHJlYWRvbmx5ICovCisgICAgMSwgICAgICAgICAgICAgIC8qIG5kaW0gKi8KKyAgICAiQiIsICAgICAgICAgICAgLyogZm9ybWF0ICovCisgICAgc3RhdGljX3NoYXBlLCAgIC8qIHNoYXBlICovCisgICAgc3RhdGljX3N0cmlkZXMsIC8qIHN0cmlkZXMgKi8KKyAgICBOVUxMLCAgICAgICAgICAgLyogc3Vib2Zmc2V0cyAqLworICAgIE5VTEwgICAgICAgICAgICAvKiBpbnRlcm5hbCAqLworfTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3N0YXRpY2FycmF5X25ldyhQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopUHlPYmplY3RfTmV3KFN0YXRpY0FycmF5T2JqZWN0LCAmU3RhdGljQXJyYXlfVHlwZSk7Cit9CisKK3N0YXRpYyBpbnQKK3N0YXRpY2FycmF5X2luaXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICBTdGF0aWNBcnJheU9iamVjdCAqYSA9IChTdGF0aWNBcnJheU9iamVjdCAqKXNlbGY7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geworICAgICAgICAibGVnYWN5X21vZGUiLCBOVUxMCisgICAgfTsKKyAgICBQeU9iamVjdCAqbGVnYWN5X21vZGUgPSBQeV9GYWxzZTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8TyIsIGt3bGlzdCwgJmxlZ2FjeV9tb2RlKSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgYS0+bGVnYWN5X21vZGUgPSAobGVnYWN5X21vZGUgIT0gUHlfRmFsc2UpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgdm9pZAorc3RhdGljYXJyYXlfZGVhbGxvYyhTdGF0aWNBcnJheU9iamVjdCAqc2VsZikKK3sKKyAgICBQeU9iamVjdF9EZWwoc2VsZik7Cit9CisKKy8qIFJldHVybiBhIGJ1ZmZlciBmb3IgYSBQeUJVRl9GVUxMX1JPIHJlcXVlc3QuIEZsYWdzIGFyZSBub3QgY2hlY2tlZCwKKyAgIHdoaWNoIG1ha2VzIHRoaXMgb2JqZWN0IGEgbm9uLWNvbXBsaWFudCBleHBvcnRlciEgKi8KK3N0YXRpYyBpbnQKK3N0YXRpY2FycmF5X2dldGJ1ZihTdGF0aWNBcnJheU9iamVjdCAqc2VsZiwgUHlfYnVmZmVyICp2aWV3LCBpbnQgZmxhZ3MpCit7CisgICAgKnZpZXcgPSBzdGF0aWNfYnVmZmVyOworCisgICAgaWYgKHNlbGYtPmxlZ2FjeV9tb2RlKSB7CisgICAgICAgIHZpZXctPm9iaiA9IE5VTEw7IC8qIERvbid0IHVzZSB0aGlzIGluIG5ldyBjb2RlLiAqLworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgdmlldy0+b2JqID0gKFB5T2JqZWN0ICopc2VsZjsKKyAgICAgICAgUHlfSU5DUkVGKHZpZXctPm9iaik7CisgICAgfQorCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeUJ1ZmZlclByb2NzIHN0YXRpY2FycmF5X2FzX2J1ZmZlciA9IHsKKyAgICAoZ2V0YnVmZmVycHJvYylzdGF0aWNhcnJheV9nZXRidWYsIC8qIGJmX2dldGJ1ZmZlciAqLworICAgIE5VTEwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYmZfcmVsZWFzZWJ1ZmZlciAqLworfTsKKworc3RhdGljIFB5VHlwZU9iamVjdCBTdGF0aWNBcnJheV9UeXBlID0geworICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVChOVUxMLCAwKQorICAgICJzdGF0aWNhcnJheSIsICAgICAgICAgICAgICAgICAgIC8qIE5hbWUgb2YgdGhpcyB0eXBlICovCisgICAgc2l6ZW9mKFN0YXRpY0FycmF5T2JqZWN0KSwgICAgICAgLyogQmFzaWMgb2JqZWN0IHNpemUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBJdGVtIHNpemUgZm9yIHZhcm9iamVjdCAqLworICAgIChkZXN0cnVjdG9yKXN0YXRpY2FycmF5X2RlYWxsb2MsIC8qIHRwX2RlYWxsb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9wcmludCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JlcHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX21hcHBpbmcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2FsbCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3N0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KKyAgICAmc3RhdGljYXJyYXlfYXNfYnVmZmVyLCAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KKyAgICBQeV9UUEZMQUdTX0RFRkFVTFQsICAgICAgICAgICAgICAvKiB0cF9mbGFncyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX2dldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX3NldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3RvZmZzZXQgKi8KKyAgICBzdGF0aWNhcnJheV9pbml0LCAgICAgICAgICAgICAgICAvKiB0cF9pbml0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYWxsb2MgKi8KKyAgICBzdGF0aWNhcnJheV9uZXcsICAgICAgICAgICAgICAgICAvKiB0cF9uZXcgKi8KK307CisKKworc3RhdGljIHN0cnVjdCBQeU1ldGhvZERlZiBfdGVzdGJ1ZmZlcl9mdW5jdGlvbnNbXSA9IHsKKyAgICB7InNsaWNlX2luZGljZXMiLCBzbGljZV9pbmRpY2VzLCBNRVRIX1ZBUkFSR1MsIE5VTEx9LAorICAgIHsiZ2V0X3BvaW50ZXIiLCBnZXRfcG9pbnRlciwgTUVUSF9WQVJBUkdTLCBOVUxMfSwKKyAgICB7ImdldF9jb250aWd1b3VzIiwgZ2V0X2NvbnRpZ3VvdXMsIE1FVEhfVkFSQVJHUywgTlVMTH0sCisgICAgeyJpc19jb250aWd1b3VzIiwgaXNfY29udGlndW91cywgTUVUSF9WQVJBUkdTLCBOVUxMfSwKKyAgICB7ImNtcF9jb250aWciLCBjbXBfY29udGlnLCBNRVRIX1ZBUkFSR1MsIE5VTEx9LAorICAgIHtOVUxMLCBOVUxMfQorfTsKKworc3RhdGljIHN0cnVjdCBQeU1vZHVsZURlZiBfdGVzdGJ1ZmZlcm1vZHVsZSA9IHsKKyAgICBQeU1vZHVsZURlZl9IRUFEX0lOSVQsCisgICAgIl90ZXN0YnVmZmVyIiwKKyAgICBOVUxMLAorICAgIC0xLAorICAgIF90ZXN0YnVmZmVyX2Z1bmN0aW9ucywKKyAgICBOVUxMLAorICAgIE5VTEwsCisgICAgTlVMTCwKKyAgICBOVUxMCit9OworCisKK1B5TU9ESU5JVF9GVU5DCitQeUluaXRfX3Rlc3RidWZmZXIodm9pZCkKK3sKKyAgICBQeU9iamVjdCAqbTsKKworICAgIG0gPSBQeU1vZHVsZV9DcmVhdGUoJl90ZXN0YnVmZmVybW9kdWxlKTsKKyAgICBpZiAobSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIFB5X1RZUEUoJk5EQXJyYXlfVHlwZSkgPSAmUHlUeXBlX1R5cGU7CisgICAgUHlfSU5DUkVGKCZOREFycmF5X1R5cGUpOworICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAibmRhcnJheSIsIChQeU9iamVjdCAqKSZOREFycmF5X1R5cGUpOworCisgICAgUHlfVFlQRSgmU3RhdGljQXJyYXlfVHlwZSkgPSAmUHlUeXBlX1R5cGU7CisgICAgUHlfSU5DUkVGKCZTdGF0aWNBcnJheV9UeXBlKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgInN0YXRpY2FycmF5IiwgKFB5T2JqZWN0ICopJlN0YXRpY0FycmF5X1R5cGUpOworCisgICAgc3RydWN0bW9kdWxlID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlKCJzdHJ1Y3QiKTsKKyAgICBpZiAoc3RydWN0bW9kdWxlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgU3RydWN0ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhzdHJ1Y3Rtb2R1bGUsICJTdHJ1Y3QiKTsKKyAgICBjYWxjc2l6ZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoc3RydWN0bW9kdWxlLCAiY2FsY3NpemUiKTsKKyAgICBpZiAoU3RydWN0ID09IE5VTEwgfHwgY2FsY3NpemUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBzaW1wbGVfZm9ybWF0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoc2ltcGxlX2ZtdCk7CisgICAgaWYgKHNpbXBsZV9mb3JtYXQgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiTkRfTUFYX05ESU0iLCBORF9NQVhfTkRJTSk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk5EX1ZBUkVYUE9SVCIsIE5EX1ZBUkVYUE9SVCk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk5EX1dSSVRBQkxFIiwgTkRfV1JJVEFCTEUpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJORF9GT1JUUkFOIiwgTkRfRk9SVFJBTik7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk5EX1NDQUxBUiIsIE5EX1NDQUxBUik7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk5EX1BJTCIsIE5EX1BJTCk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk5EX0dFVEJVRl9GQUlMIiwgTkRfR0VUQlVGX0ZBSUwpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJORF9HRVRCVUZfVU5ERUZJTkVEIiwgTkRfR0VUQlVGX1VOREVGSU5FRCk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk5EX1JFRElSRUNUIiwgTkRfUkVESVJFQ1QpOworCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlB5QlVGX1NJTVBMRSIsIFB5QlVGX1NJTVBMRSk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlB5QlVGX1dSSVRBQkxFIiwgUHlCVUZfV1JJVEFCTEUpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJQeUJVRl9GT1JNQVQiLCBQeUJVRl9GT1JNQVQpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJQeUJVRl9ORCIsIFB5QlVGX05EKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUHlCVUZfU1RSSURFUyIsIFB5QlVGX1NUUklERVMpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJQeUJVRl9JTkRJUkVDVCIsIFB5QlVGX0lORElSRUNUKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUHlCVUZfQ19DT05USUdVT1VTIiwgUHlCVUZfQ19DT05USUdVT1VTKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUHlCVUZfRl9DT05USUdVT1VTIiwgUHlCVUZfRl9DT05USUdVT1VTKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUHlCVUZfQU5ZX0NPTlRJR1VPVVMiLCBQeUJVRl9BTllfQ09OVElHVU9VUyk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlB5QlVGX0ZVTEwiLCBQeUJVRl9GVUxMKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUHlCVUZfRlVMTF9STyIsIFB5QlVGX0ZVTExfUk8pOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJQeUJVRl9SRUNPUkRTIiwgUHlCVUZfUkVDT1JEUyk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlB5QlVGX1JFQ09SRFNfUk8iLCBQeUJVRl9SRUNPUkRTX1JPKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUHlCVUZfU1RSSURFRCIsIFB5QlVGX1NUUklERUQpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJQeUJVRl9TVFJJREVEX1JPIiwgUHlCVUZfU1RSSURFRF9STyk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlB5QlVGX0NPTlRJRyIsIFB5QlVGX0NPTlRJRyk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlB5QlVGX0NPTlRJR19STyIsIFB5QlVGX0NPTlRJR19STyk7CisKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUHlCVUZfUkVBRCIsIFB5QlVGX1JFQUQpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJQeUJVRl9XUklURSIsIFB5QlVGX1dSSVRFKTsKKworICAgIHJldHVybiBtOworfQorCisKKwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fdGVzdGNhcGltb2R1bGUuYyBiL01vZHVsZXMvX3Rlc3RjYXBpbW9kdWxlLmMKaW5kZXggOTRiNmU2Ny4uOTI5NGRmMyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fdGVzdGNhcGltb2R1bGUuYworKysgYi9Nb2R1bGVzL190ZXN0Y2FwaW1vZHVsZS5jCkBAIC0yMiwxNCArMjIsNyBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHJhaXNlVGVzdEVycm9yKGNvbnN0IGNoYXIqIHRlc3RfbmFtZSwgY29uc3QgY2hhciogbXNnKQogewotICAgIGNoYXIgYnVmWzIwNDhdOwotCi0gICAgaWYgKHN0cmxlbih0ZXN0X25hbWUpICsgc3RybGVuKG1zZykgPiBzaXplb2YoYnVmKSAtIDUwKQotICAgICAgICBQeUVycl9TZXRTdHJpbmcoVGVzdEVycm9yLCAiaW50ZXJuYWwgZXJyb3IgbXNnIHRvbyBsYXJnZSIpOwotICAgIGVsc2UgewotICAgICAgICBQeU9TX3NucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlczogJXMiLCB0ZXN0X25hbWUsIG1zZyk7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhUZXN0RXJyb3IsIGJ1Zik7Ci0gICAgfQorICAgIFB5RXJyX0Zvcm1hdChUZXN0RXJyb3IsICIlczogJXMiLCB0ZXN0X25hbWUsIG1zZyk7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKQEAgLTQzLDExICszNiw5IEBACiBzaXplb2ZfZXJyb3IoY29uc3QgY2hhciogZmF0bmFtZSwgY29uc3QgY2hhciogdHlwbmFtZSwKICAgICBpbnQgZXhwZWN0ZWQsIGludCBnb3QpCiB7Ci0gICAgY2hhciBidWZbMTAyNF07Ci0gICAgUHlPU19zbnByaW50ZihidWYsIHNpemVvZihidWYpLAotICAgICAgICAiJS4yMDBzICNkZWZpbmUgPT0gJWQgYnV0IHNpemVvZiglLjIwMHMpID09ICVkIiwKKyAgICBQeUVycl9Gb3JtYXQoVGVzdEVycm9yLAorICAgICAgICAiJXMgI2RlZmluZSA9PSAlZCBidXQgc2l6ZW9mKCVzKSA9PSAlZCIsCiAgICAgICAgIGZhdG5hbWUsIGV4cGVjdGVkLCB0eXBuYW1lLCBnb3QpOwotICAgIFB5RXJyX1NldFN0cmluZyhUZXN0RXJyb3IsIGJ1Zik7CiAgICAgcmV0dXJuIChQeU9iamVjdCopTlVMTDsKIH0KIApAQCAtMjg0LDk1ICsyNzUsNiBAQAogfQogCiAKLS8qIElzc3VlICM3Mzg1OiBDaGVjayB0aGF0IG1lbW9yeXZpZXcoKSBkb2VzIG5vdCBjcmFzaAotICogICB3aGVuIGJmX2dldGJ1ZmZlciByZXR1cm5zIGFuIGVycm9yCi0gKi8KLQotc3RhdGljIGludAotYnJva2VuX2J1ZmZlcl9nZXRidWZmZXIoUHlPYmplY3QgKnNlbGYsIFB5X2J1ZmZlciAqdmlldywgaW50IGZsYWdzKQotewotICAgIFB5RXJyX1NldFN0cmluZygKLSAgICAgICAgVGVzdEVycm9yLAotICAgICAgICAidGVzdF9icm9rZW5fbWVtb3J5dmlldzogZXhwZWN0ZWQgZXJyb3IgaW4gYmZfZ2V0YnVmZmVyIik7Ci0gICAgcmV0dXJuIC0xOwotfQotCi1zdGF0aWMgUHlCdWZmZXJQcm9jcyBtZW1vcnl2aWV3dGVzdGVyX2FzX2J1ZmZlciA9IHsKLSAgICAoZ2V0YnVmZmVycHJvYylicm9rZW5fYnVmZmVyX2dldGJ1ZmZlciwgICAgIC8qIGJmX2dldGJ1ZmZlciAqLwotICAgIDAsICAgICAgICAgIC8qIGJmX3JlbGVhc2VidWZmZXIgKi8KLX07Ci0KLXN0YXRpYyBQeVR5cGVPYmplY3QgX01lbW9yeVZpZXdUZXN0ZXJfVHlwZSA9IHsKLSAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoTlVMTCwgMCkKLSAgICAibWVtb3J5dmlld3Rlc3RlciIsICAgICAgICAgLyogTmFtZSBvZiB0aGlzIHR5cGUgKi8KLSAgICBzaXplb2YoUHlPYmplY3QpLCAgICAgICAgICAgLyogQmFzaWMgb2JqZWN0IHNpemUgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogSXRlbSBzaXplIGZvciB2YXJvYmplY3QgKi8KLSAgICAoZGVzdHJ1Y3RvcilQeU9iamVjdF9EZWwsIC8qIHRwX2RlYWxsb2MgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcHJpbnQgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0ciAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRyICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NvbXBhcmUgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVwciAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfc2VxdWVuY2UgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbWFwcGluZyAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc3RyICovCi0gICAgUHlPYmplY3RfR2VuZXJpY0dldEF0dHIsICAvKiB0cF9nZXRhdHRybyAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRybyAqLwotICAgICZtZW1vcnl2aWV3dGVzdGVyX2FzX2J1ZmZlciwgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KLSAgICBQeV9UUEZMQUdTX0RFRkFVTFQsICAgICAgICAgLyogdHBfZmxhZ3MgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZG9jICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NsZWFyICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JpY2hjb21wYXJlICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3QgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3JfZ2V0ICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX3NldCAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0b2Zmc2V0ICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2luaXQgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYWxsb2MgKi8KLSAgICBQeVR5cGVfR2VuZXJpY05ldywgICAgICAgICAgICAgICAgICAvKiB0cF9uZXcgKi8KLX07Ci0KLXN0YXRpYyBQeU9iamVjdCoKLXRlc3RfYnJva2VuX21lbW9yeXZpZXcoUHlPYmplY3QqIHNlbGYpCi17Ci0gICAgUHlPYmplY3QgKm9iaiA9IFB5T2JqZWN0X05ldyhQeU9iamVjdCwgJl9NZW1vcnlWaWV3VGVzdGVyX1R5cGUpOwotICAgIFB5T2JqZWN0ICpyZXM7Ci0KLSAgICBpZiAob2JqID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKAotICAgICAgICAgICAgVGVzdEVycm9yLAotICAgICAgICAgICAgInRlc3RfYnJva2VuX21lbW9yeXZpZXc6IGZhaWxlZCB0byBjcmVhdGUgb2JqZWN0Iik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQotICAgIHJlcyA9IFB5TWVtb3J5Vmlld19Gcm9tT2JqZWN0KG9iaik7Ci0gICAgaWYgKHJlcyB8fCAhUHlFcnJfT2NjdXJyZWQoKSl7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZygKLSAgICAgICAgICAgIFRlc3RFcnJvciwKLSAgICAgICAgICAgICJ0ZXN0X2Jyb2tlbl9tZW1vcnl2aWV3OiBtZW1vcnl2aWV3KCkgZGlkbid0IHJhaXNlIGFuIEV4Y2VwdGlvbiIpOwotICAgICAgICBQeV9YREVDUkVGKHJlcyk7Ci0gICAgICAgIFB5X0RFQ1JFRihvYmopOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KLSAgICBQeUVycl9DbGVhcigpOwotICAgIFB5X0RFQ1JFRihvYmopOwotICAgIFB5X1JFVFVSTl9OT05FOwotfQotCi0KIC8qIFRlc3RzIG9mIFB5TG9uZ197QXMsIEZyb219e1Vuc2lnbmVkLH1Mb25nKCksIGFuZCAoI2lmZGVmIEhBVkVfTE9OR19MT05HKQogICAgUHlMb25nX3tBcywgRnJvbX17VW5zaWduZWQsfUxvbmdMb25nKCkuCiAKQEAgLTc3OCw2ICs2ODAsNjggQEAKICAgICByZXR1cm4gUHlfTm9uZTsKIH0KIAorLyogVGVzdCB0aGUgUHlMb25nX0Fze1NpemUsU3NpemV9X3QgQVBJLiBBdCBwcmVzZW50IHRoaXMganVzdCB0ZXN0cyB0aGF0CisgICBub24taW50ZWdlciBhcmd1bWVudHMgYXJlIGhhbmRsZWQgY29ycmVjdGx5LiBJdCBzaG91bGQgYmUgZXh0ZW5kZWQgdG8KKyAgIHRlc3Qgb3ZlcmZsb3cgaGFuZGxpbmcuCisgKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK3Rlc3RfbG9uZ19hc19zaXplX3QoUHlPYmplY3QgKnNlbGYpCit7CisgICAgc2l6ZV90IG91dF91OworICAgIFB5X3NzaXplX3Qgb3V0X3M7CisKKyAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CisKKyAgICBvdXRfdSA9IFB5TG9uZ19Bc1NpemVfdChQeV9Ob25lKTsKKyAgICBpZiAob3V0X3UgIT0gKHNpemVfdCktMSB8fCAhUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgcmV0dXJuIHJhaXNlVGVzdEVycm9yKCJ0ZXN0X2xvbmdfYXNfc2l6ZV90IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQeUxvbmdfQXNTaXplX3QoTm9uZSkgZGlkbid0IGNvbXBsYWluIik7CisgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX1R5cGVFcnJvcikpCisgICAgICAgIHJldHVybiByYWlzZVRlc3RFcnJvcigidGVzdF9sb25nX2FzX3NpemVfdCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUHlMb25nX0FzU2l6ZV90KE5vbmUpIHJhaXNlZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic29tZXRoaW5nIG90aGVyIHRoYW4gVHlwZUVycm9yIik7CisgICAgUHlFcnJfQ2xlYXIoKTsKKworICAgIG91dF9zID0gUHlMb25nX0FzU3NpemVfdChQeV9Ob25lKTsKKyAgICBpZiAob3V0X3MgIT0gKFB5X3NzaXplX3QpLTEgfHwgIVB5RXJyX09jY3VycmVkKCkpCisgICAgICAgIHJldHVybiByYWlzZVRlc3RFcnJvcigidGVzdF9sb25nX2FzX3NpemVfdCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUHlMb25nX0FzU3NpemVfdChOb25lKSBkaWRuJ3QgY29tcGxhaW4iKTsKKyAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfVHlwZUVycm9yKSkKKyAgICAgICAgcmV0dXJuIHJhaXNlVGVzdEVycm9yKCJ0ZXN0X2xvbmdfYXNfc2l6ZV90IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQeUxvbmdfQXNTc2l6ZV90KE5vbmUpIHJhaXNlZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic29tZXRoaW5nIG90aGVyIHRoYW4gVHlwZUVycm9yIik7CisgICAgUHlFcnJfQ2xlYXIoKTsKKworICAgIC8qIFB5X0lOQ1JFRihQeV9Ob25lKSBvbWl0dGVkIC0gd2UgYWxyZWFkeSBoYXZlIGEgcmVmZXJlbmNlIHRvIGl0LiAqLworICAgIHJldHVybiBQeV9Ob25lOworfQorCisvKiBUZXN0IHRoZSBQeUxvbmdfQXNEb3VibGUgQVBJLiBBdCBwcmVzZW50IHRoaXMganVzdCB0ZXN0cyB0aGF0CisgICBub24taW50ZWdlciBhcmd1bWVudHMgYXJlIGhhbmRsZWQgY29ycmVjdGx5LgorICovCisKK3N0YXRpYyBQeU9iamVjdCAqCit0ZXN0X2xvbmdfYXNfZG91YmxlKFB5T2JqZWN0ICpzZWxmKQoreworICAgIGRvdWJsZSBvdXQ7CisKKyAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CisKKyAgICBvdXQgPSBQeUxvbmdfQXNEb3VibGUoUHlfTm9uZSk7CisgICAgaWYgKG91dCAhPSAtMS4wIHx8ICFQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICByZXR1cm4gcmFpc2VUZXN0RXJyb3IoInRlc3RfbG9uZ19hc19kb3VibGUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlB5TG9uZ19Bc0RvdWJsZShOb25lKSBkaWRuJ3QgY29tcGxhaW4iKTsKKyAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfVHlwZUVycm9yKSkKKyAgICAgICAgcmV0dXJuIHJhaXNlVGVzdEVycm9yKCJ0ZXN0X2xvbmdfYXNfZG91YmxlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQeUxvbmdfQXNEb3VibGUoTm9uZSkgcmFpc2VkICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzb21ldGhpbmcgb3RoZXIgdGhhbiBUeXBlRXJyb3IiKTsKKyAgICBQeUVycl9DbGVhcigpOworCisgICAgLyogUHlfSU5DUkVGKFB5X05vbmUpIG9taXR0ZWQgLSB3ZSBhbHJlYWR5IGhhdmUgYSByZWZlcmVuY2UgdG8gaXQuICovCisgICAgcmV0dXJuIFB5X05vbmU7Cit9CisKIC8qIFRlc3QgdGhlIEwgY29kZSBmb3IgUHlBcmdfUGFyc2VUdXBsZS4gIFRoaXMgc2hvdWxkIGRlbGl2ZXIgYSBQWV9MT05HX0xPTkcKICAgIGZvciBib3RoIGxvbmcgYW5kIGludCBhcmd1bWVudHMuICBUaGUgdGVzdCBtYXkgbGVhayBhIGxpdHRsZSBtZW1vcnkgaWYKICAgIGl0IGZhaWxzLgpAQCAtMTAxMiw2ICs5NzYsMTUgQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKK2dldGFyZ3NfYyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgY2hhciBjOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiYyIsICZjKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoJmMsIDEpOworfQorCitzdGF0aWMgUHlPYmplY3QgKgogZ2V0YXJnc19zKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBjaGFyICpzdHI7CkBAIC0xMjkzLDcgKzEyNjYsNyBAQAogdGVzdF9aX2NvZGUoUHlPYmplY3QgKnNlbGYpCiB7CiAgICAgUHlPYmplY3QgKnR1cGxlLCAqb2JqOwotICAgIFB5X1VOSUNPREUgKnZhbHVlMSwgKnZhbHVlMjsKKyAgICBjb25zdCBQeV9VTklDT0RFICp2YWx1ZTEsICp2YWx1ZTI7CiAgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yOwogCiAgICAgdHVwbGUgPSBQeVR1cGxlX05ldygyKTsKQEAgLTEzNDcsNiArMTMyMCw3IEBACiAjaWYgZGVmaW5lZChTSVpFT0ZfV0NIQVJfVCkgJiYgKFNJWkVPRl9XQ0hBUl9UID09IDQpCiAgICAgY29uc3Qgd2NoYXJfdCB3dGV4dFsyXSA9IHsod2NoYXJfdCkweDEwQUJDRHV9OwogICAgIHNpemVfdCB3dGV4dGxlbiA9IDE7CisgICAgY29uc3Qgd2NoYXJfdCBpbnZhbGlkWzFdID0geyh3Y2hhcl90KTB4MTEwMDAwdX07CiAjZWxzZQogICAgIGNvbnN0IHdjaGFyX3Qgd3RleHRbM10gPSB7KHdjaGFyX3QpMHhEQkVBdSwgKHdjaGFyX3QpMHhERkNEdX07CiAgICAgc2l6ZV90IHd0ZXh0bGVuID0gMjsKQEAgLTEzNjMsNyArMTMzNyw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUod2lkZSkgIT0gUHlVbmljb2RlX0dFVF9TSVpFKHV0ZjgpKSB7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHdpZGUpICE9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHV0ZjgpKSB7CiAgICAgICAgIFB5X0RFQ1JFRih3aWRlKTsKICAgICAgICAgUHlfREVDUkVGKHV0ZjgpOwogICAgICAgICByZXR1cm4gcmFpc2VUZXN0RXJyb3IoInRlc3Rfd2lkZWNoYXIiLApAQCAtMTM4Miw2ICsxMzU2LDIzIEBACiAKICAgICBQeV9ERUNSRUYod2lkZSk7CiAgICAgUHlfREVDUkVGKHV0ZjgpOworCisjaWYgZGVmaW5lZChTSVpFT0ZfV0NIQVJfVCkgJiYgKFNJWkVPRl9XQ0hBUl9UID09IDQpCisgICAgd2lkZSA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoaW52YWxpZCwgMSk7CisgICAgaWYgKHdpZGUgPT0gTlVMTCkKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiByYWlzZVRlc3RFcnJvcigidGVzdF93aWRlY2hhciIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihMXCJcXFUwMDExMDAwMFwiLCAxKSBkaWRuJ3QgZmFpbCIpOworCisgICAgd2lkZSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShpbnZhbGlkLCAxKTsKKyAgICBpZiAod2lkZSA9PSBOVUxMKQorICAgICAgICBQeUVycl9DbGVhcigpOworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuIHJhaXNlVGVzdEVycm9yKCJ0ZXN0X3dpZGVjaGFyIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTFwiXFxVMDAxMTAwMDBcIiwgMSkgZGlkbid0IGZhaWwiKTsKKyNlbmRpZgorCiAgICAgUHlfUkVUVVJOX05PTkU7CiB9CiAKQEAgLTE1NzYsNyArMTU2Nyw3IEBACiAgICAgICAgICAgICAgey0weGZmZmZmZmZMLCAyOCwgLTF9fTsKICAgICBpbnQgaTsKIAotICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YodGVzdGNhc2VzKSAvIHNpemVvZihzdHJ1Y3QgdHJpcGxlKTsgKytpKSB7CisgICAgZm9yIChpID0gMDsgaSA8IFB5X0FSUkFZX0xFTkdUSCh0ZXN0Y2FzZXMpOyArK2kpIHsKICAgICAgICAgUHlPYmplY3QgKnBsb25nID0gUHlMb25nX0Zyb21Mb25nKHRlc3RjYXNlc1tpXS5pbnB1dCk7CiAgICAgICAgIHNpemVfdCBuYml0cyA9IF9QeUxvbmdfTnVtQml0cyhwbG9uZyk7CiAgICAgICAgIGludCBzaWduID0gX1B5TG9uZ19TaWduKHBsb25nKTsKQEAgLTE3ODYsMTMgKzE3NzcsMTIgQEAKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogICAgIGNoYXIgKm1zZzsKLSAgICBzdGF0aWMgY29uc3QgUHlfVU5JQ09ERSBvbmVbXSA9IHsnMScsIDB9OwogCiAjZGVmaW5lIENIRUNLXzFfRk9STUFUKEZPUk1BVCwgVFlQRSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdChGT1JNQVQsIChUWVBFKTEpOyAgICAgICAgICAgICAgICAgXAogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgIHJldHVybiBOVUxMOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICBpZiAoUHlfVU5JQ09ERV9zdHJjbXAoUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KSwgb25lKSkgeyAgICAgXAorICAgIGlmIChQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhyZXN1bHQsICIxIikpIHsgICAgIFwKICAgICAgICAgbXNnID0gRk9STUFUICIgZmFpbGVkIGF0IDEiOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBnb3RvIEZhaWw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKQEAgLTIzMTcsNiArMjMwNywxNCBAQAogICAgIFB5VGhyZWFkU3RhdGVfU3dhcChOVUxMKTsKIAogICAgIHN1YnN0YXRlID0gUHlfTmV3SW50ZXJwcmV0ZXIoKTsKKyAgICBpZiAoc3Vic3RhdGUgPT0gTlVMTCkgeworICAgICAgICAvKiBTaW5jZSBubyBuZXcgdGhyZWFkIHN0YXRlIHdhcyBjcmVhdGVkLCB0aGVyZSBpcyBubyBleGNlcHRpb24gdG8KKyAgICAgICAgICAgcHJvcGFnYXRlOyByYWlzZSBhIGZyZXNoIG9uZSBhZnRlciBzd2FwcGluZyBpbiB0aGUgb2xkIHRocmVhZAorICAgICAgICAgICBzdGF0ZS4gKi8KKyAgICAgICAgUHlUaHJlYWRTdGF0ZV9Td2FwKG1haW5zdGF0ZSk7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsICJzdWItaW50ZXJwcmV0ZXIgY3JlYXRpb24gZmFpbGVkIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KICAgICByID0gUHlSdW5fU2ltcGxlU3RyaW5nKGNvZGUpOwogICAgIFB5X0VuZEludGVycHJldGVyKHN1YnN0YXRlKTsKIApAQCAtMjMyNSw2ICsyMzIzLDI0IEBACiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhyKTsKIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK3Rlc3RfcHl0aW1lX29iamVjdF90b190aW1lc3BlYyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9iajsKKyAgICB0aW1lX3Qgc2VjOworICAgIGxvbmcgbnNlYzsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk86cHl0aW1lX29iamVjdF90b190aW1lc3BlYyIsICZvYmopKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoX1B5VGltZV9PYmplY3RUb1RpbWVzcGVjKG9iaiwgJnNlYywgJm5zZWMpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyNpZiBkZWZpbmVkKEhBVkVfTE9OR19MT05HKSAmJiBTSVpFT0ZfVElNRV9UID09IFNJWkVPRl9MT05HX0xPTkcKKyAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiTGwiLCAoUFlfTE9OR19MT05HKXNlYywgbnNlYyk7CisjZWxzZQorICAgIGFzc2VydChzaXplb2YodGltZV90KSA8PSBzaXplb2YobG9uZykpOworICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJsbCIsIChsb25nKXNlYywgbnNlYyk7CisjZW5kaWYKK30KKwogCiBzdGF0aWMgUHlNZXRob2REZWYgVGVzdE1ldGhvZHNbXSA9IHsKICAgICB7InJhaXNlX2V4Y2VwdGlvbiIsICAgICAgICAgcmFpc2VfZXhjZXB0aW9uLCAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKQEAgLTIzMzQsMTAgKzIzNTAsMTEgQEAKICAgICB7InRlc3RfbGlzdF9hcGkiLCAgICAgICAgICAgKFB5Q0Z1bmN0aW9uKXRlc3RfbGlzdF9hcGksICAgICAgTUVUSF9OT0FSR1N9LAogICAgIHsidGVzdF9kaWN0X2l0ZXJhdGlvbiIsICAgICAoUHlDRnVuY3Rpb24pdGVzdF9kaWN0X2l0ZXJhdGlvbixNRVRIX05PQVJHU30sCiAgICAgeyJ0ZXN0X2xhenlfaGFzaF9pbmhlcml0YW5jZSIsICAgICAgKFB5Q0Z1bmN0aW9uKXRlc3RfbGF6eV9oYXNoX2luaGVyaXRhbmNlLE1FVEhfTk9BUkdTfSwKLSAgICB7InRlc3RfYnJva2VuX21lbW9yeXZpZXciLCAgICAgICAgICAoUHlDRnVuY3Rpb24pdGVzdF9icm9rZW5fbWVtb3J5dmlldyxNRVRIX05PQVJHU30sCiAgICAgeyJ0ZXN0X2xvbmdfYXBpIiwgICAgICAgICAgIChQeUNGdW5jdGlvbil0ZXN0X2xvbmdfYXBpLCAgICAgIE1FVEhfTk9BUkdTfSwKICAgICB7InRlc3RfbG9uZ19hbmRfb3ZlcmZsb3ciLCAoUHlDRnVuY3Rpb24pdGVzdF9sb25nX2FuZF9vdmVyZmxvdywKICAgICAgTUVUSF9OT0FSR1N9LAorICAgIHsidGVzdF9sb25nX2FzX2RvdWJsZSIsICAgICAoUHlDRnVuY3Rpb24pdGVzdF9sb25nX2FzX2RvdWJsZSxNRVRIX05PQVJHU30sCisgICAgeyJ0ZXN0X2xvbmdfYXNfc2l6ZV90IiwgICAgIChQeUNGdW5jdGlvbil0ZXN0X2xvbmdfYXNfc2l6ZV90LE1FVEhfTk9BUkdTfSwKICAgICB7InRlc3RfbG9uZ19udW1iaXRzIiwgICAgICAgKFB5Q0Z1bmN0aW9uKXRlc3RfbG9uZ19udW1iaXRzLCAgTUVUSF9OT0FSR1N9LAogICAgIHsidGVzdF9rX2NvZGUiLCAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pdGVzdF9rX2NvZGUsICAgICAgICBNRVRIX05PQVJHU30sCiAgICAgeyJ0ZXN0X2VtcHR5X2FyZ3BhcnNlIiwgKFB5Q0Z1bmN0aW9uKXRlc3RfZW1wdHlfYXJncGFyc2UsTUVUSF9OT0FSR1N9LApAQCAtMjM2OSw2ICsyMzg2LDcgQEAKICAgICAgICAgKFB5Q0Z1bmN0aW9uKXRlc3RfbG9uZ19sb25nX2FuZF9vdmVyZmxvdywgTUVUSF9OT0FSR1N9LAogICAgIHsidGVzdF9MX2NvZGUiLCAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pdGVzdF9MX2NvZGUsICAgICAgICBNRVRIX05PQVJHU30sCiAjZW5kaWYKKyAgICB7ImdldGFyZ3NfYyIsICAgICAgICAgICAgICAgZ2V0YXJnc19jLCAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7ImdldGFyZ3NfcyIsICAgICAgICAgICAgICAgZ2V0YXJnc19zLCAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7ImdldGFyZ3Nfc19zdGFyIiwgICAgICAgICAgZ2V0YXJnc19zX3N0YXIsICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7ImdldGFyZ3Nfc19oYXNoIiwgICAgICAgICAgZ2V0YXJnc19zX2hhc2gsICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKQEAgLTI0MTIsNiArMjQzMCw3IEBACiAgICAgIE1FVEhfTk9BUkdTfSwKICAgICB7ImNyYXNoX25vX2N1cnJlbnRfdGhyZWFkIiwgKFB5Q0Z1bmN0aW9uKWNyYXNoX25vX2N1cnJlbnRfdGhyZWFkLCBNRVRIX05PQVJHU30sCiAgICAgeyJydW5faW5fc3ViaW50ZXJwIiwgICAgICAgIHJ1bl9pbl9zdWJpbnRlcnAsICAgICAgICAgICAgICAgIE1FVEhfVkFSQVJHU30sCisgICAgeyJweXRpbWVfb2JqZWN0X3RvX3RpbWVzcGVjIiwgdGVzdF9weXRpbWVfb2JqZWN0X3RvX3RpbWVzcGVjLCAgTUVUSF9WQVJBUkdTfSwKICAgICB7TlVMTCwgTlVMTH0gLyogc2VudGluZWwgKi8KIH07CiAKQEAgLTI1OTQsNyArMjYxMyw2IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgUHlfVFlQRSgmX0hhc2hJbmhlcml0YW5jZVRlc3Rlcl9UeXBlKT0mUHlUeXBlX1R5cGU7Ci0gICAgUHlfVFlQRSgmX01lbW9yeVZpZXdUZXN0ZXJfVHlwZSk9JlB5VHlwZV9UeXBlOwogCiAgICAgUHlfVFlQRSgmdGVzdF9zdHJ1Y3RtZW1iZXJzVHlwZSk9JlB5VHlwZV9UeXBlOwogICAgIFB5X0lOQ1JFRigmdGVzdF9zdHJ1Y3RtZW1iZXJzVHlwZSk7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL190aHJlYWRtb2R1bGUuYyBiL01vZHVsZXMvX3RocmVhZG1vZHVsZS5jCmluZGV4IGVhMDM4ZGUuLjZlMzljYTAgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3RocmVhZG1vZHVsZS5jCisrKyBiL01vZHVsZXMvX3RocmVhZG1vZHVsZS5jCkBAIC01Myw2ICs1Myw3IEBACiAgICAgX1B5VGltZV90aW1ldmFsIGN1cnRpbWU7CiAgICAgX1B5VGltZV90aW1ldmFsIGVuZHRpbWU7CiAKKwogICAgIGlmIChtaWNyb3NlY29uZHMgPiAwKSB7CiAgICAgICAgIF9QeVRpbWVfZ2V0dGltZW9mZGF5KCZlbmR0aW1lKTsKICAgICAgICAgZW5kdGltZS50dl9zZWMgKz0gbWljcm9zZWNvbmRzIC8gKDEwMDAgKiAxMDAwKTsKQEAgLTc1LDcgKzc2LDcgQEAKIAogICAgICAgICAgICAgLyogSWYgd2UncmUgdXNpbmcgYSB0aW1lb3V0LCByZWNvbXB1dGUgdGhlIHRpbWVvdXQgYWZ0ZXIgcHJvY2Vzc2luZwogICAgICAgICAgICAgICogc2lnbmFscywgc2luY2UgdGhvc2UgY2FuIHRha2UgdGltZS4gICovCi0gICAgICAgICAgICBpZiAobWljcm9zZWNvbmRzID49IDApIHsKKyAgICAgICAgICAgIGlmIChtaWNyb3NlY29uZHMgPiAwKSB7CiAgICAgICAgICAgICAgICAgX1B5VGltZV9nZXR0aW1lb2ZkYXkoJmN1cnRpbWUpOwogICAgICAgICAgICAgICAgIG1pY3Jvc2Vjb25kcyA9ICgoZW5kdGltZS50dl9zZWMgLSBjdXJ0aW1lLnR2X3NlYykgKiAxMDAwMDAwICsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVuZHRpbWUudHZfdXNlYyAtIGN1cnRpbWUudHZfdXNlYykpOwpAQCAtNDEzLDYgKzQxNCwxMiBAQAogICAgIGxvbmcgb3duZXI7CiAgICAgdW5zaWduZWQgbG9uZyBjb3VudDsKIAorICAgIGlmIChzZWxmLT5ybG9ja19jb3VudCA9PSAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiY2Fubm90IHJlbGVhc2UgdW4tYWNxdWlyZWQgbG9jayIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKICAgICBvd25lciA9IHNlbGYtPnJsb2NrX293bmVyOwogICAgIGNvdW50ID0gc2VsZi0+cmxvY2tfY291bnQ7CiAgICAgc2VsZi0+cmxvY2tfY291bnQgPSAwOwpAQCAtMTIyMiwxMSArMTIyOSw5IEBACiAKIHN0YXRpYyBQeU1ldGhvZERlZiB0aHJlYWRfbWV0aG9kc1tdID0gewogICAgIHsic3RhcnRfbmV3X3RocmVhZCIsICAgICAgICAoUHlDRnVuY3Rpb24pdGhyZWFkX1B5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0X25ld19kb2N9LAorICAgICBNRVRIX1ZBUkFSR1MsIHN0YXJ0X25ld19kb2N9LAogICAgIHsic3RhcnRfbmV3IiwgICAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pdGhyZWFkX1B5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0X25ld19kb2N9LAorICAgICBNRVRIX1ZBUkFSR1MsIHN0YXJ0X25ld19kb2N9LAogICAgIHsiYWxsb2NhdGVfbG9jayIsICAgICAgICAgICAoUHlDRnVuY3Rpb24pdGhyZWFkX1B5VGhyZWFkX2FsbG9jYXRlX2xvY2ssCiAgICAgIE1FVEhfTk9BUkdTLCBhbGxvY2F0ZV9kb2N9LAogICAgIHsiYWxsb2NhdGUiLCAgICAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pdGhyZWFkX1B5VGhyZWFkX2FsbG9jYXRlX2xvY2ssCkBAIC0xMjQyLDggKzEyNDcsNyBAQAogICAgIHsiX2NvdW50IiwgICAgICAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pdGhyZWFkX19jb3VudCwKICAgICAgTUVUSF9OT0FSR1MsIF9jb3VudF9kb2N9LAogICAgIHsic3RhY2tfc2l6ZSIsICAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pdGhyZWFkX3N0YWNrX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YWNrX3NpemVfZG9jfSwKKyAgICAgTUVUSF9WQVJBUkdTLCBzdGFja19zaXplX2RvY30sCiAgICAge05VTEwsICAgICAgICAgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAvKiBzZW50aW5lbCAqLwogfTsKIApAQCAtMTMwNyw3ICsxMzExLDkgQEAKIAogICAgIC8qIEFkZCBhIHN5bWJvbGljIGNvbnN0YW50ICovCiAgICAgZCA9IFB5TW9kdWxlX0dldERpY3QobSk7Ci0gICAgVGhyZWFkRXJyb3IgPSBQeUVycl9OZXdFeGNlcHRpb24oIl90aHJlYWQuZXJyb3IiLCBOVUxMLCBOVUxMKTsKKyAgICBUaHJlYWRFcnJvciA9IFB5RXhjX1J1bnRpbWVFcnJvcjsKKyAgICBQeV9JTkNSRUYoVGhyZWFkRXJyb3IpOworCiAgICAgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgImVycm9yIiwgVGhyZWFkRXJyb3IpOwogICAgIExvY2t0eXBlLnRwX2RvYyA9IGxvY2tfZG9jOwogICAgIFB5X0lOQ1JFRigmTG9ja3R5cGUpOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fdGtpbnRlci5jIGIvTW9kdWxlcy9fdGtpbnRlci5jCmluZGV4IDM2MDhlMmQuLmFiYmUwZWMgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3RraW50ZXIuYworKysgYi9Nb2R1bGVzL190a2ludGVyLmMKQEAgLTgwLDE4ICs4MCw2IEBACiAjZXJyb3IgIlRrIG9sZGVyIHRoYW4gOC4zLjEgbm90IHN1cHBvcnRlZCIKICNlbmRpZgogCi0vKiBVbmljb2RlIGNvbnZlcnNpb24gYXNzdW1lcyB0aGF0IFRjbF9VbmlDaGFyIGlzIHR3byBieXRlcy4KLSAgIFdlIGNhbm5vdCB0ZXN0IHRoaXMgZGlyZWN0bHksIHNvIHdlIHRlc3QgVVRGLTggc2l6ZSBpbnN0ZWFkLAotICAgZXhwZWN0aW5nIHRoYXQgVENMX1VURl9NQVggaXMgY2hhbmdlZCBpZiBUY2wgZXZlciBzdXBwb3J0cwotICAgZWl0aGVyIFVURi0xNiBvciBVQ1MtNC4KLSAgIFJlZGhhdCA4IHNldHMgVENMX1VURl9NQVggdG8gNiwgYW5kIHVzZXMgd2NoYXJfdCBmb3IKLSAgIFRjbF9VbmljaGFyLiBUaGlzIGlzIGFsc28gb2sgYXMgbG9uZyBhcyBQeXRob24gdXNlcyBVQ1MtNCwKLSAgIGFzIHdlbGwuCi0qLwotI2lmIFRDTF9VVEZfTUFYICE9IDMgJiYgIShkZWZpbmVkKFB5X1VOSUNPREVfV0lERSkgJiYgVENMX1VURl9NQVg9PTYpCi0jZXJyb3IgInVuc3VwcG9ydGVkIFRjbCBjb25maWd1cmF0aW9uIgotI2VuZGlmCi0KICNpZiAhKGRlZmluZWQoTVNfV0lORE9XUykgfHwgZGVmaW5lZChfX0NZR1dJTl9fKSkKICNkZWZpbmUgSEFWRV9DUkVBVEVGSUxFSEFORExFUgogI2VuZGlmCkBAIC05NzUsNDAgKzk2Myw0NiBAQAogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2sodmFsdWUpKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgKmluYnVmID0gUHlVbmljb2RlX0FTX1VOSUNPREUodmFsdWUpOwotICAgICAgICBQeV9zc2l6ZV90IHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUodmFsdWUpOwotICAgICAgICAvKiBUaGlzICNpZmRlZiBhc3N1bWVzIHRoYXQgVGNsIHVzZXMgVUNTLTIuCi0gICAgICAgICAgIFNlZSBUQ0xfVVRGX01BWCB0ZXN0IGFib3ZlLiAqLwotI2lmIGRlZmluZWQoUHlfVU5JQ09ERV9XSURFKSAmJiBUQ0xfVVRGX01BWCA9PSAzCisgICAgICAgIHZvaWQgKmluYnVmOworICAgICAgICBQeV9zc2l6ZV90IHNpemU7CisgICAgICAgIGludCBraW5kOwogICAgICAgICBUY2xfVW5pQ2hhciAqb3V0YnVmID0gTlVMTDsKICAgICAgICAgUHlfc3NpemVfdCBpOwotICAgICAgICBzaXplX3QgYWxsb2NzaXplID0gKChzaXplX3Qpc2l6ZSkgKiBzaXplb2YoVGNsX1VuaUNoYXIpOwotICAgICAgICBpZiAoYWxsb2NzaXplID49IHNpemUpCi0gICAgICAgICAgICBvdXRidWYgPSAoVGNsX1VuaUNoYXIqKWNrYWxsb2MoYWxsb2NzaXplKTsKKyAgICAgICAgc2l6ZV90IGFsbG9jc2l6ZTsKKworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCisgICAgICAgIGluYnVmID0gUHlVbmljb2RlX0RBVEEodmFsdWUpOworICAgICAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodmFsdWUpOworICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodmFsdWUpOworICAgICAgICBhbGxvY3NpemUgPSAoKHNpemVfdClzaXplKSAqIHNpemVvZihUY2xfVW5pQ2hhcik7CisgICAgICAgIG91dGJ1ZiA9IChUY2xfVW5pQ2hhciopY2thbGxvYyhhbGxvY3NpemUpOwogICAgICAgICAvKiBFbHNlIG92ZXJmbG93IG9jY3VycmVkLCBhbmQgd2UgdGFrZSB0aGUgbmV4dCBleGl0ICovCiAgICAgICAgIGlmICghb3V0YnVmKSB7CiAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgZm9yIChpID0gMDsgaSA8IHNpemU7IGkrKykgewotICAgICAgICAgICAgaWYgKGluYnVmW2ldID49IDB4MTAwMDApIHsKKyAgICAgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBpbmJ1ZiwgaSk7CisgICAgICAgICAgICAvKiBXZSBjYW5ub3QgdGVzdCBmb3Igc2l6ZW9mKFRjbF9VbmlDaGFyKSBkaXJlY3RseSwKKyAgICAgICAgICAgICAgIHNvIHdlIHRlc3QgZm9yIFVURi04IHNpemUgaW5zdGVhZC4gKi8KKyNpZiBUQ0xfVVRGX01BWCA9PSAzCisgICAgICAgICAgICBpZiAoY2ggPj0gMHgxMDAwMCkgewogICAgICAgICAgICAgICAgIC8qIFRjbCBkb2Vzbid0IGRvIFVURi0xNiwgeWV0LiAqLwogICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY2hhcmFjdGVyIFUrJXggaXMgYWJvdmUgdGhlIHJhbmdlICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIihVKzAwMDAtVStGRkZGKSBhbGxvd2VkIGJ5IFRjbCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluYnVmW2ldKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2gpOwogICAgICAgICAgICAgICAgIGNrZnJlZShGUkVFQ0FTVCBvdXRidWYpOwogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworI2VuZGlmCiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBvdXRidWZbaV0gPSBpbmJ1ZltpXTsKKyAgICAgICAgICAgIG91dGJ1ZltpXSA9IGNoOwogICAgICAgICB9CiAgICAgICAgIHJlc3VsdCA9IFRjbF9OZXdVbmljb2RlT2JqKG91dGJ1Ziwgc2l6ZSk7CiAgICAgICAgIGNrZnJlZShGUkVFQ0FTVCBvdXRidWYpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwotI2Vsc2UKLSAgICAgICAgcmV0dXJuIFRjbF9OZXdVbmljb2RlT2JqKGluYnVmLCBzaXplKTsKLSNlbmRpZgotCiAgICAgfQogICAgIGVsc2UgaWYoUHlUY2xPYmplY3RfQ2hlY2sodmFsdWUpKSB7CiAgICAgICAgIFRjbF9PYmogKnYgPSAoKFB5VGNsT2JqZWN0Kil2YWx1ZSktPnZhbHVlOwpAQCAtMTA5MCwyNCArMTA4NCwxNCBAQAogICAgIH0KIAogICAgIGlmICh2YWx1ZS0+dHlwZVB0ciA9PSBhcHAtPlN0cmluZ1R5cGUpIHsKLSNpZiBkZWZpbmVkKFB5X1VOSUNPREVfV0lERSkgJiYgVENMX1VURl9NQVg9PTMKLSAgICAgICAgUHlPYmplY3QgKnJlc3VsdDsKLSAgICAgICAgaW50IHNpemU7Ci0gICAgICAgIFRjbF9VbmlDaGFyICppbnB1dDsKLSAgICAgICAgUHlfVU5JQ09ERSAqb3V0cHV0OwotCi0gICAgICAgIHNpemUgPSBUY2xfR2V0Q2hhckxlbmd0aCh2YWx1ZSk7Ci0gICAgICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBzaXplKTsKLSAgICAgICAgaWYgKCFyZXN1bHQpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgaW5wdXQgPSBUY2xfR2V0VW5pY29kZSh2YWx1ZSk7Ci0gICAgICAgIG91dHB1dCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCk7Ci0gICAgICAgIHdoaWxlIChzaXplLS0pCi0gICAgICAgICAgICAqb3V0cHV0KysgPSAqaW5wdXQrKzsKLSAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyNpZiBUQ0xfVVRGX01BWD09MworICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YSgKKyAgICAgICAgICAgIFB5VW5pY29kZV8yQllURV9LSU5ELCBUY2xfR2V0VW5pY29kZSh2YWx1ZSksCisgICAgICAgICAgICBUY2xfR2V0Q2hhckxlbmd0aCh2YWx1ZSkpOwogI2Vsc2UKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShUY2xfR2V0VW5pY29kZSh2YWx1ZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGNsX0dldENoYXJMZW5ndGgodmFsdWUpKTsKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoCisgICAgICAgICAgICBQeVVuaWNvZGVfNEJZVEVfS0lORCwgVGNsX0dldFVuaWNvZGUodmFsdWUpLAorICAgICAgICAgICAgVGNsX0dldENoYXJMZW5ndGgodmFsdWUpKTsKICNlbmRpZgogICAgIH0KIApAQCAtMjAwNyw3ICsxOTkxLDcgQEAKIFB5dGhvbkNtZChDbGllbnREYXRhIGNsaWVudERhdGEsIFRjbF9JbnRlcnAgKmludGVycCwgaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIHsKICAgICBQeXRob25DbWRfQ2xpZW50RGF0YSAqZGF0YSA9IChQeXRob25DbWRfQ2xpZW50RGF0YSAqKWNsaWVudERhdGE7Ci0gICAgUHlPYmplY3QgKnNlbGYsICpmdW5jLCAqYXJnLCAqcmVzOworICAgIFB5T2JqZWN0ICpmdW5jLCAqYXJnLCAqcmVzOwogICAgIGludCBpLCBydjsKICAgICBUY2xfT2JqICpvYmpfcmVzOwogCkBAIC0yMDE2LDcgKzIwMDAsNiBAQAogICAgIC8qIFRCRDogbm8gZXJyb3IgY2hlY2tpbmcgaGVyZSBzaW5jZSB3ZSBrbm93LCB2aWEgdGhlCiAgICAgICogVGthcHBfQ3JlYXRlQ29tbWFuZCgpIHRoYXQgdGhlIGNsaWVudCBkYXRhIGlzIGEgdHdvLXR1cGxlCiAgICAgICovCi0gICAgc2VsZiA9IGRhdGEtPnNlbGY7CiAgICAgZnVuYyA9IGRhdGEtPmZ1bmM7CiAKICAgICAvKiBDcmVhdGUgYXJndW1lbnQgbGlzdCAoYXJndjEsIC4uLiwgYXJndk4pICovCkBAIC0yNDE1LDExICsyMzk4LDkgQEAKIFRrdHRfUmVwcihQeU9iamVjdCAqc2VsZikKIHsKICAgICBUa3R0T2JqZWN0ICp2ID0gKFRrdHRPYmplY3QgKilzZWxmOwotICAgIGNoYXIgYnVmWzEwMF07Ci0KLSAgICBQeU9TX3NucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICI8dGt0aW1lcnRva2VuIGF0ICVwJXM+IiwgdiwKLSAgICAgICAgICAgICAgICAgICAgdi0+ZnVuYyA9PSBOVUxMID8gIiwgaGFuZGxlciBkZWxldGVkIiA6ICIiKTsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoYnVmKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjx0a3RpbWVydG9rZW4gYXQgJXAlcz4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2LT5mdW5jID09IE5VTEwgPyAiLCBoYW5kbGVyIGRlbGV0ZWQiIDogIiIpOwogfQogCiBzdGF0aWMgUHlUeXBlT2JqZWN0IFRrdHRfVHlwZSA9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2FycmF5bW9kdWxlLmMgYi9Nb2R1bGVzL2FycmF5bW9kdWxlLmMKaW5kZXggNjQxZTI4My4uNzZhM2E2NSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9hcnJheW1vZHVsZS5jCisrKyBiL01vZHVsZXMvYXJyYXltb2R1bGUuYwpAQCAtMjIsNyArMjIsNyBAQAogICogZnVuY3Rpb25zIGFyZW4ndCB2aXNpYmxlIHlldC4KICAqLwogc3RydWN0IGFycmF5ZGVzY3IgewotICAgIFB5X1VOSUNPREUgdHlwZWNvZGU7CisgICAgY2hhciB0eXBlY29kZTsKICAgICBpbnQgaXRlbXNpemU7CiAgICAgUHlPYmplY3QgKiAoKmdldGl0ZW0pKHN0cnVjdCBhcnJheW9iamVjdCAqLCBQeV9zc2l6ZV90KTsKICAgICBpbnQgKCpzZXRpdGVtKShzdHJ1Y3QgYXJyYXlvYmplY3QgKiwgUHlfc3NpemVfdCwgUHlPYmplY3QgKik7CkBAIC0xNzQsMjQgKzE3NCwyNSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHVfZ2V0aXRlbShhcnJheW9iamVjdCAqYXAsIFB5X3NzaXplX3QgaSkKIHsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKCYoKFB5X1VOSUNPREUgKikgYXAtPm9iX2l0ZW0pW2ldLCAxKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21PcmRpbmFsKCgoUHlfVUNTNCAqKSBhcC0+b2JfaXRlbSlbaV0pOwogfQogCiBzdGF0aWMgaW50CiB1X3NldGl0ZW0oYXJyYXlvYmplY3QgKmFwLCBQeV9zc2l6ZV90IGksIFB5T2JqZWN0ICp2KQogewotICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgUHlfc3NpemVfdCBsZW47CisgICAgUHlPYmplY3QgKnA7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlKHYsICJ1IzthcnJheSBpdGVtIG11c3QgYmUgdW5pY29kZSBjaGFyYWN0ZXIiLCAmcCwgJmxlbikpCisgICAgaWYgKCFQeUFyZ19QYXJzZSh2LCAiVTthcnJheSBpdGVtIG11c3QgYmUgdW5pY29kZSBjaGFyYWN0ZXIiLCAmcCkpCiAgICAgICAgIHJldHVybiAtMTsKLSAgICBpZiAobGVuICE9IDEpIHsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHApKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHApICE9IDEpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJhcnJheSBpdGVtIG11c3QgYmUgdW5pY29kZSBjaGFyYWN0ZXIiKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KICAgICBpZiAoaSA+PSAwKQotICAgICAgICAoKFB5X1VOSUNPREUgKilhcC0+b2JfaXRlbSlbaV0gPSBwWzBdOworICAgICAgICAoKFB5X1VDUzQgKilhcC0+b2JfaXRlbSlbaV0gPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHAsIDApOwogICAgIHJldHVybiAwOwogfQogCkBAIC0zNTYsNiArMzU3LDU5IEBACiAgICAgcmV0dXJuIDA7CiB9CiAKKyNpZmRlZiBIQVZFX0xPTkdfTE9ORworCitzdGF0aWMgUHlPYmplY3QgKgorcV9nZXRpdGVtKGFycmF5b2JqZWN0ICphcCwgUHlfc3NpemVfdCBpKQoreworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmdMb25nKCgoUFlfTE9OR19MT05HICopYXAtPm9iX2l0ZW0pW2ldKTsKK30KKworc3RhdGljIGludAorcV9zZXRpdGVtKGFycmF5b2JqZWN0ICphcCwgUHlfc3NpemVfdCBpLCBQeU9iamVjdCAqdikKK3sKKyAgICBQWV9MT05HX0xPTkcgeDsKKyAgICBpZiAoIVB5QXJnX1BhcnNlKHYsICJMO2FycmF5IGl0ZW0gbXVzdCBiZSBpbnRlZ2VyIiwgJngpKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKGkgPj0gMCkKKyAgICAgICAgKChQWV9MT05HX0xPTkcgKilhcC0+b2JfaXRlbSlbaV0gPSB4OworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorUVFfZ2V0aXRlbShhcnJheW9iamVjdCAqYXAsIFB5X3NzaXplX3QgaSkKK3sKKyAgICByZXR1cm4gUHlMb25nX0Zyb21VbnNpZ25lZExvbmdMb25nKAorICAgICAgICAoKHVuc2lnbmVkIFBZX0xPTkdfTE9ORyAqKWFwLT5vYl9pdGVtKVtpXSk7Cit9CisKK3N0YXRpYyBpbnQKK1FRX3NldGl0ZW0oYXJyYXlvYmplY3QgKmFwLCBQeV9zc2l6ZV90IGksIFB5T2JqZWN0ICp2KQoreworICAgIHVuc2lnbmVkIFBZX0xPTkdfTE9ORyB4OworICAgIGlmIChQeUxvbmdfQ2hlY2sodikpIHsKKyAgICAgICAgeCA9IFB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ0xvbmcodik7CisgICAgICAgIGlmICh4ID09ICh1bnNpZ25lZCBQWV9MT05HX0xPTkcpIC0xICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBQWV9MT05HX0xPTkcgeTsKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZSh2LCAiTDthcnJheSBpdGVtIG11c3QgYmUgaW50ZWdlciIsICZ5KSkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgaWYgKHkgPCAwKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKKyAgICAgICAgICAgICAgICAidW5zaWduZWQgbG9uZyBsb25nIGlzIGxlc3MgdGhhbiBtaW5pbXVtIik7CisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgeCA9ICh1bnNpZ25lZCBQWV9MT05HX0xPTkcpeTsKKyAgICB9CisKKyAgICBpZiAoaSA+PSAwKQorICAgICAgICAoKHVuc2lnbmVkIFBZX0xPTkdfTE9ORyAqKWFwLT5vYl9pdGVtKVtpXSA9IHg7CisgICAgcmV0dXJuIDA7Cit9CisjZW5kaWYKKwogc3RhdGljIFB5T2JqZWN0ICoKIGZfZ2V0aXRlbShhcnJheW9iamVjdCAqYXAsIFB5X3NzaXplX3QgaSkKIHsKQEAgLTM5MCw2ICs0NDQsMTMgQEAKICAgICByZXR1cm4gMDsKIH0KIAorI2lmIFNJWkVPRl9JTlQgPT0gNAorIyAgZGVmaW5lIFNUUlVDVF9MT05HX0ZPUk1BVCAiSSIKKyNlbGlmIFNJWkVPRl9MT05HID09IDQKKyMgIGRlZmluZSBTVFJVQ1RfTE9OR19GT1JNQVQgIkwiCisjZWxzZQorIyAgZXJyb3IgIlVuYWJsZSB0byBnZXQgc3RydWN0IGZvcm1hdCBmb3IgUHlfVUNTNCIKKyNlbmRpZgogCiAvKiBEZXNjcmlwdGlvbiBvZiB0eXBlcy4KICAqCkBAIC0zOTksMTMgKzQ2MCwxNyBAQAogc3RhdGljIHN0cnVjdCBhcnJheWRlc2NyIGRlc2NyaXB0b3JzW10gPSB7CiAgICAgeydiJywgMSwgYl9nZXRpdGVtLCBiX3NldGl0ZW0sICJiIiwgMSwgMX0sCiAgICAgeydCJywgMSwgQkJfZ2V0aXRlbSwgQkJfc2V0aXRlbSwgIkIiLCAxLCAwfSwKLSAgICB7J3UnLCBzaXplb2YoUHlfVU5JQ09ERSksIHVfZ2V0aXRlbSwgdV9zZXRpdGVtLCAidSIsIDAsIDB9LAorICAgIHsndScsIHNpemVvZihQeV9VQ1M0KSwgdV9nZXRpdGVtLCB1X3NldGl0ZW0sIFNUUlVDVF9MT05HX0ZPUk1BVCwgMCwgMH0sCiAgICAgeydoJywgc2l6ZW9mKHNob3J0KSwgaF9nZXRpdGVtLCBoX3NldGl0ZW0sICJoIiwgMSwgMX0sCiAgICAgeydIJywgc2l6ZW9mKHNob3J0KSwgSEhfZ2V0aXRlbSwgSEhfc2V0aXRlbSwgIkgiLCAxLCAwfSwKICAgICB7J2knLCBzaXplb2YoaW50KSwgaV9nZXRpdGVtLCBpX3NldGl0ZW0sICJpIiwgMSwgMX0sCiAgICAgeydJJywgc2l6ZW9mKGludCksIElJX2dldGl0ZW0sIElJX3NldGl0ZW0sICJJIiwgMSwgMH0sCiAgICAgeydsJywgc2l6ZW9mKGxvbmcpLCBsX2dldGl0ZW0sIGxfc2V0aXRlbSwgImwiLCAxLCAxfSwKICAgICB7J0wnLCBzaXplb2YobG9uZyksIExMX2dldGl0ZW0sIExMX3NldGl0ZW0sICJMIiwgMSwgMH0sCisjaWZkZWYgSEFWRV9MT05HX0xPTkcKKyAgICB7J3EnLCBzaXplb2YoUFlfTE9OR19MT05HKSwgcV9nZXRpdGVtLCBxX3NldGl0ZW0sICJxIiwgMSwgMX0sCisgICAgeydRJywgc2l6ZW9mKFBZX0xPTkdfTE9ORyksIFFRX2dldGl0ZW0sIFFRX3NldGl0ZW0sICJRIiwgMSwgMH0sCisjZW5kaWYKICAgICB7J2YnLCBzaXplb2YoZmxvYXQpLCBmX2dldGl0ZW0sIGZfc2V0aXRlbSwgImYiLCAwLCAwfSwKICAgICB7J2QnLCBzaXplb2YoZG91YmxlKSwgZF9nZXRpdGVtLCBkX3NldGl0ZW0sICJkIiwgMCwgMH0sCiAgICAgeydcMCcsIDAsIDAsIDAsIDAsIDAsIDB9IC8qIFNlbnRpbmVsICovCkBAIC01MTQsMTAgKzU3OSw4IEBACiAgICAgUHlfc3NpemVfdCBpLCBrOwogICAgIFB5T2JqZWN0ICpyZXM7CiAKLSAgICBpZiAoIWFycmF5X0NoZWNrKHYpIHx8ICFhcnJheV9DaGVjayh3KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghYXJyYXlfQ2hlY2sodikgfHwgIWFycmF5X0NoZWNrKHcpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAKICAgICB2YSA9IChhcnJheW9iamVjdCAqKXY7CiAgICAgd2EgPSAoYXJyYXlvYmplY3QgKil3OwpAQCAtODc2LDcgKzkzOSw2IEBACiAgICAgaWYgKFB5X1NJWkUoc2VsZikgPiAwKSB7CiAgICAgICAgIGlmIChuIDwgMCkKICAgICAgICAgICAgIG4gPSAwOwotICAgICAgICBpdGVtcyA9IHNlbGYtPm9iX2l0ZW07CiAgICAgICAgIGlmICgoc2VsZi0+b2JfZGVzY3ItPml0ZW1zaXplICE9IDApICYmCiAgICAgICAgICAgICAoUHlfU0laRShzZWxmKSA+IFBZX1NTSVpFX1RfTUFYIC8gc2VsZi0+b2JfZGVzY3ItPml0ZW1zaXplKSkgewogICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CkBAIC0xMTkxLDYgKzEyNTMsNyBAQAogICAgIFB5T2JqZWN0ICpmLCAqYiwgKnJlczsKICAgICBQeV9zc2l6ZV90IGl0ZW1zaXplID0gc2VsZi0+b2JfZGVzY3ItPml0ZW1zaXplOwogICAgIFB5X3NzaXplX3QgbiwgbmJ5dGVzOworICAgIF9QeV9JREVOVElGSUVSKHJlYWQpOwogICAgIGludCBub3RfZW5vdWdoX2J5dGVzOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPbjpmcm9tZmlsZSIsICZmLCAmbikpCkBAIC0xMjAyLDcgKzEyNjUsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBiID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmLCAicmVhZCIsICJuIiwgbmJ5dGVzKTsKKyAgICBiID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmLCAmUHlJZF9yZWFkLCAibiIsIG5ieXRlcyk7CiAgICAgaWYgKGIgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTEyNTksMTIgKzEzMjIsMTQgQEAKICAgICAgICAgY2hhciogcHRyID0gc2VsZi0+b2JfaXRlbSArIGkqQkxPQ0tTSVpFOwogICAgICAgICBQeV9zc2l6ZV90IHNpemUgPSBCTE9DS1NJWkU7CiAgICAgICAgIFB5T2JqZWN0ICpieXRlcywgKnJlczsKKyAgICAgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOworCiAgICAgICAgIGlmIChpKkJMT0NLU0laRSArIHNpemUgPiBuYnl0ZXMpCiAgICAgICAgICAgICBzaXplID0gbmJ5dGVzIC0gaSpCTE9DS1NJWkU7CiAgICAgICAgIGJ5dGVzID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShwdHIsIHNpemUpOwogICAgICAgICBpZiAoYnl0ZXMgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGYsICJ3cml0ZSIsICJPIiwgYnl0ZXMpOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGYsICZQeUlkX3dyaXRlLCAiTyIsIGJ5dGVzKTsKICAgICAgICAgUHlfREVDUkVGKGJ5dGVzKTsKICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xNDU0LDI1ICsxNTE5LDI2IEBACiBzdGF0aWMgUHlPYmplY3QgKgogYXJyYXlfZnJvbXVuaWNvZGUoYXJyYXlvYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5X1VOSUNPREUgKnVzdHI7CisgICAgUHlPYmplY3QgKnVzdHI7CiAgICAgUHlfc3NpemVfdCBuOwotICAgIFB5X1VOSUNPREUgdHlwZWNvZGU7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInUjOmZyb211bmljb2RlIiwgJnVzdHIsICZuKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6ZnJvbXVuaWNvZGUiLCAmdXN0cikpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHR5cGVjb2RlID0gc2VsZi0+b2JfZGVzY3ItPnR5cGVjb2RlOwotICAgIGlmICgodHlwZWNvZGUgIT0gJ3UnKSkgeworICAgIGlmIChzZWxmLT5vYl9kZXNjci0+dHlwZWNvZGUgIT0gJ3UnKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgImZyb211bmljb2RlKCkgbWF5IG9ubHkgYmUgY2FsbGVkIG9uICIKICAgICAgICAgICAgICJ1bmljb2RlIHR5cGUgYXJyYXlzIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVzdHIpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodXN0cik7CiAgICAgaWYgKG4gPiAwKSB7CiAgICAgICAgIFB5X3NzaXplX3Qgb2xkX3NpemUgPSBQeV9TSVpFKHNlbGYpOwogICAgICAgICBpZiAoYXJyYXlfcmVzaXplKHNlbGYsIG9sZF9zaXplICsgbikgPT0gLTEpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgbWVtY3B5KHNlbGYtPm9iX2l0ZW0gKyBvbGRfc2l6ZSAqIHNpemVvZihQeV9VTklDT0RFKSwKLSAgICAgICAgICAgICAgIHVzdHIsIG4gKiBzaXplb2YoUHlfVU5JQ09ERSkpOworICAgICAgICBpZiAoIVB5VW5pY29kZV9Bc1VDUzQodXN0ciwgKFB5X1VDUzQgKilzZWxmLT5vYl9pdGVtICsgb2xkX3NpemUsIG4sIDApKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCiAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwpAQCAtMTQ5MSwxNCArMTU1NywxNCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGFycmF5X3RvdW5pY29kZShhcnJheW9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKIHsKLSAgICBQeV9VTklDT0RFIHR5cGVjb2RlOwotICAgIHR5cGVjb2RlID0gc2VsZi0+b2JfZGVzY3ItPnR5cGVjb2RlOwotICAgIGlmICgodHlwZWNvZGUgIT0gJ3UnKSkgeworICAgIGlmIChzZWxmLT5vYl9kZXNjci0+dHlwZWNvZGUgIT0gJ3UnKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICJ0b3VuaWNvZGUoKSBtYXkgb25seSBiZSBjYWxsZWQgb24gdW5pY29kZSB0eXBlIGFycmF5cyIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZSgoUHlfVU5JQ09ERSAqKSBzZWxmLT5vYl9pdGVtLCBQeV9TSVpFKHNlbGYpKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlfVUNTNCAqKSBzZWxmLT5vYl9pdGVtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1NJWkUoc2VsZikpOwogfQogCiBQeURvY19TVFJWQVIodG91bmljb2RlX2RvYywKQEAgLTE1ODgsNyArMTY1NCw3IEBACiAgKiBiZSBmb3VuZC4KICAqLwogc3RhdGljIGVudW0gbWFjaGluZV9mb3JtYXRfY29kZQotdHlwZWNvZGVfdG9fbWZvcm1hdF9jb2RlKGludCB0eXBlY29kZSkKK3R5cGVjb2RlX3RvX21mb3JtYXRfY29kZShjaGFyIHR5cGVjb2RlKQogewogI2lmZGVmIFdPUkRTX0JJR0VORElBTgogICAgIGNvbnN0IGludCBpc19iaWdfZW5kaWFuID0gMTsKQEAgLTE2MDUsMTMgKzE2NzEsNyBAQAogICAgICAgICByZXR1cm4gVU5TSUdORURfSU5UODsKIAogICAgIGNhc2UgJ3UnOgotICAgICAgICBpZiAoc2l6ZW9mKFB5X1VOSUNPREUpID09IDIpIHsKLSAgICAgICAgICAgIHJldHVybiBVVEYxNl9MRSArIGlzX2JpZ19lbmRpYW47Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKHNpemVvZihQeV9VTklDT0RFKSA9PSA0KSB7Ci0gICAgICAgICAgICByZXR1cm4gVVRGMzJfTEUgKyBpc19iaWdfZW5kaWFuOwotICAgICAgICB9Ci0gICAgICAgIHJldHVybiBVTktOT1dOX0ZPUk1BVDsKKyAgICAgICAgcmV0dXJuIFVURjMyX0xFICsgaXNfYmlnX2VuZGlhbjsKIAogICAgIGNhc2UgJ2YnOgogICAgICAgICBpZiAoc2l6ZW9mKGZsb2F0KSA9PSA0KSB7CkBAIC0xNjU4LDYgKzE3MTgsMTYgQEAKICAgICAgICAgaW50c2l6ZSA9IHNpemVvZihsb25nKTsKICAgICAgICAgaXNfc2lnbmVkID0gMDsKICAgICAgICAgYnJlYWs7CisjaWYgSEFWRV9MT05HX0xPTkcKKyAgICBjYXNlICdxJzoKKyAgICAgICAgaW50c2l6ZSA9IHNpemVvZihQWV9MT05HX0xPTkcpOworICAgICAgICBpc19zaWduZWQgPSAxOworICAgICAgICBicmVhazsKKyAgICBjYXNlICdRJzoKKyAgICAgICAgaW50c2l6ZSA9IHNpemVvZihQWV9MT05HX0xPTkcpOworICAgICAgICBpc19zaWduZWQgPSAwOworICAgICAgICBicmVhazsKKyNlbmRpZgogICAgIGRlZmF1bHQ6CiAgICAgICAgIHJldHVybiBVTktOT1dOX0ZPUk1BVDsKICAgICB9CkBAIC0xNjg4LDcgKzE3NTgsNyBAQAogICogTlVMTCBpcyByZXR1cm5lZCB0byBpbmRpY2F0ZSBhIGZhaWx1cmUuCiAgKi8KIHN0YXRpYyBQeU9iamVjdCAqCi1tYWtlX2FycmF5KFB5VHlwZU9iamVjdCAqYXJyYXl0eXBlLCBQeV9VTklDT0RFIHR5cGVjb2RlLCBQeU9iamVjdCAqaXRlbXMpCittYWtlX2FycmF5KFB5VHlwZU9iamVjdCAqYXJyYXl0eXBlLCBjaGFyIHR5cGVjb2RlLCBQeU9iamVjdCAqaXRlbXMpCiB7CiAgICAgUHlPYmplY3QgKm5ld19hcmdzOwogICAgIFB5T2JqZWN0ICphcnJheV9vYmo7CkBAIC0xNjk3LDcgKzE3NjcsNyBAQAogICAgIGFzc2VydChhcnJheXR5cGUgIT0gTlVMTCk7CiAgICAgYXNzZXJ0KGl0ZW1zICE9IE5VTEwpOwogCi0gICAgdHlwZWNvZGVfb2JqID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKCZ0eXBlY29kZSwgMSk7CisgICAgdHlwZWNvZGVfb2JqID0gUHlVbmljb2RlX0Zyb21PcmRpbmFsKHR5cGVjb2RlKTsKICAgICBpZiAodHlwZWNvZGVfb2JqID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCkBAIC0xNzI3LDE3ICsxNzk3LDE0IEBACiAgICAgUHlPYmplY3QgKml0ZW1zOwogICAgIFB5T2JqZWN0ICpjb252ZXJ0ZWRfaXRlbXM7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKLSAgICBpbnQgdHlwZWNvZGVfaW50OwotICAgIFB5X1VOSUNPREUgdHlwZWNvZGU7CisgICAgaW50IHR5cGVjb2RlOwogICAgIGVudW0gbWFjaGluZV9mb3JtYXRfY29kZSBtZm9ybWF0X2NvZGU7CiAgICAgc3RydWN0IGFycmF5ZGVzY3IgKmRlc2NyOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPQ2lPOmFycmF5Ll9hcnJheV9yZWNvbnN0cnVjdG9yIiwKLSAgICAgICAgICAgICAgICAgICAgJmFycmF5dHlwZSwgJnR5cGVjb2RlX2ludCwgJm1mb3JtYXRfY29kZSwgJml0ZW1zKSkKKyAgICAgICAgICAgICAgICAgICAgJmFycmF5dHlwZSwgJnR5cGVjb2RlLCAmbWZvcm1hdF9jb2RlLCAmaXRlbXMpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHR5cGVjb2RlID0gKFB5X1VOSUNPREUpdHlwZWNvZGVfaW50OwotCiAgICAgaWYgKCFQeVR5cGVfQ2hlY2soYXJyYXl0eXBlKSkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgImZpcnN0IGFyZ3VtZW50IG11c3QgYSB0eXBlIG9iamVjdCwgbm90ICUuMjAwcyIsCkBAIC0xNzUxLDcgKzE4MTgsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgZm9yIChkZXNjciA9IGRlc2NyaXB0b3JzOyBkZXNjci0+dHlwZWNvZGUgIT0gJ1wwJzsgZGVzY3IrKykgewotICAgICAgICBpZiAoZGVzY3ItPnR5cGVjb2RlID09IHR5cGVjb2RlKQorICAgICAgICBpZiAoKGludClkZXNjci0+dHlwZWNvZGUgPT0gdHlwZWNvZGUpCiAgICAgICAgICAgICBicmVhazsKICAgICB9CiAgICAgaWYgKGRlc2NyLT50eXBlY29kZSA9PSAnXDAnKSB7CkBAIC0xNzczLDkgKzE4NDAsOSBAQAogICAgIH0KIAogICAgIC8qIEZhc3QgcGF0aDogTm8gZGVjb2RpbmcgaGFzIHRvIGJlIGRvbmUuICovCi0gICAgaWYgKG1mb3JtYXRfY29kZSA9PSB0eXBlY29kZV90b19tZm9ybWF0X2NvZGUodHlwZWNvZGUpIHx8CisgICAgaWYgKG1mb3JtYXRfY29kZSA9PSB0eXBlY29kZV90b19tZm9ybWF0X2NvZGUoKGNoYXIpdHlwZWNvZGUpIHx8CiAgICAgICAgIG1mb3JtYXRfY29kZSA9PSBVTktOT1dOX0ZPUk1BVCkgewotICAgICAgICByZXR1cm4gbWFrZV9hcnJheShhcnJheXR5cGUsIHR5cGVjb2RlLCBpdGVtcyk7CisgICAgICAgIHJldHVybiBtYWtlX2FycmF5KGFycmF5dHlwZSwgKGNoYXIpdHlwZWNvZGUsIGl0ZW1zKTsKICAgICB9CiAKICAgICAvKiBTbG93IHBhdGg6IERlY29kZSB0aGUgYnl0ZSBzdHJpbmcgYWNjb3JkaW5nIHRvIHRoZSBnaXZlbiBtYWNoaW5lCkBAIC0xOTIxLDcgKzE5ODgsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICByZXN1bHQgPSBtYWtlX2FycmF5KGFycmF5dHlwZSwgdHlwZWNvZGUsIGNvbnZlcnRlZF9pdGVtcyk7CisgICAgcmVzdWx0ID0gbWFrZV9hcnJheShhcnJheXR5cGUsIChjaGFyKXR5cGVjb2RlLCBjb252ZXJ0ZWRfaXRlbXMpOwogICAgIFB5X0RFQ1JFRihjb252ZXJ0ZWRfaXRlbXMpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CkBAIC0xOTM2LDE0ICsyMDAzLDE2IEBACiAgICAgaW50IG1mb3JtYXRfY29kZTsKICAgICBzdGF0aWMgUHlPYmplY3QgKmFycmF5X3JlY29uc3RydWN0b3IgPSBOVUxMOwogICAgIGxvbmcgcHJvdG9jb2w7CisgICAgX1B5X0lERU5USUZJRVIoX2FycmF5X3JlY29uc3RydWN0b3IpOworICAgIF9QeV9JREVOVElGSUVSKF9fZGljdF9fKTsKIAogICAgIGlmIChhcnJheV9yZWNvbnN0cnVjdG9yID09IE5VTEwpIHsKICAgICAgICAgUHlPYmplY3QgKmFycmF5X21vZHVsZSA9IFB5SW1wb3J0X0ltcG9ydE1vZHVsZSgiYXJyYXkiKTsKICAgICAgICAgaWYgKGFycmF5X21vZHVsZSA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGFycmF5X3JlY29uc3RydWN0b3IgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKAorICAgICAgICBhcnJheV9yZWNvbnN0cnVjdG9yID0gX1B5T2JqZWN0X0dldEF0dHJJZCgKICAgICAgICAgICAgIGFycmF5X21vZHVsZSwKLSAgICAgICAgICAgICJfYXJyYXlfcmVjb25zdHJ1Y3RvciIpOworICAgICAgICAgICAgJlB5SWRfX2FycmF5X3JlY29uc3RydWN0b3IpOwogICAgICAgICBQeV9ERUNSRUYoYXJyYXlfbW9kdWxlKTsKICAgICAgICAgaWYgKGFycmF5X3JlY29uc3RydWN0b3IgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTk1OCw3ICsyMDI3LDcgQEAKICAgICBpZiAocHJvdG9jb2wgPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBkaWN0ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZygoUHlPYmplY3QgKilhcnJheSwgIl9fZGljdF9fIik7CisgICAgZGljdCA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0ICopYXJyYXksICZQeUlkX19fZGljdF9fKTsKICAgICBpZiAoZGljdCA9PSBOVUxMKSB7CiAgICAgICAgIGlmICghUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTIwMTAsOCArMjA3OSw4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogYXJyYXlfZ2V0X3R5cGVjb2RlKGFycmF5b2JqZWN0ICphLCB2b2lkICpjbG9zdXJlKQogewotICAgIFB5X1VOSUNPREUgdGMgPSBhLT5vYl9kZXNjci0+dHlwZWNvZGU7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZSgmdGMsIDEpOworICAgIGNoYXIgdHlwZWNvZGUgPSBhLT5vYl9kZXNjci0+dHlwZWNvZGU7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tT3JkaW5hbCh0eXBlY29kZSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0yMDgzLDcgKzIxNTIsNyBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGFycmF5X3JlcHIoYXJyYXlvYmplY3QgKmEpCiB7Ci0gICAgUHlfVU5JQ09ERSB0eXBlY29kZTsKKyAgICBjaGFyIHR5cGVjb2RlOwogICAgIFB5T2JqZWN0ICpzLCAqdiA9IE5VTEw7CiAgICAgUHlfc3NpemVfdCBsZW47CiAKQEAgLTIwOTIsNyArMjE2MSw3IEBACiAgICAgaWYgKGxlbiA9PSAwKSB7CiAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiYXJyYXkoJyVjJykiLCAoaW50KXR5cGVjb2RlKTsKICAgICB9Ci0gICAgaWYgKCh0eXBlY29kZSA9PSAndScpKQorICAgIGlmICh0eXBlY29kZSA9PSAndScpCiAgICAgICAgIHYgPSBhcnJheV90b3VuaWNvZGUoYSwgTlVMTCk7CiAgICAgZWxzZQogICAgICAgICB2ID0gYXJyYXlfdG9saXN0KGEsIE5VTEwpOwpAQCAtMjI4Nyw3ICsyMzU2LDcgQEAKICAgICAgICAgICAgICAgICBzZWxmLT5vYl9pdGVtICsgKGN1ciArIDEpICogaXRlbXNpemUsCiAgICAgICAgICAgICAgICAgbGltICogaXRlbXNpemUpOwogICAgICAgICB9Ci0gICAgICAgIGN1ciA9IHN0YXJ0ICsgc2xpY2VsZW5ndGggKiBzdGVwOworICAgICAgICBjdXIgPSBzdGFydCArIChzaXplX3Qpc2xpY2VsZW5ndGggKiBzdGVwOwogICAgICAgICBpZiAoY3VyIDwgKHNpemVfdClQeV9TSVpFKHNlbGYpKSB7CiAgICAgICAgICAgICBtZW1tb3ZlKHNlbGYtPm9iX2l0ZW0gKyAoY3VyLXNsaWNlbGVuZ3RoKSAqIGl0ZW1zaXplLAogICAgICAgICAgICAgICAgIHNlbGYtPm9iX2l0ZW0gKyBjdXIgKiBpdGVtc2l6ZSwKQEAgLTIzNTAsMTQgKzI0MTksOCBAQAogICAgICAgICB2aWV3LT5zdHJpZGVzID0gJih2aWV3LT5pdGVtc2l6ZSk7CiAgICAgdmlldy0+Zm9ybWF0ID0gTlVMTDsKICAgICB2aWV3LT5pbnRlcm5hbCA9IE5VTEw7Ci0gICAgaWYgKChmbGFncyAmIFB5QlVGX0ZPUk1BVCkgPT0gUHlCVUZfRk9STUFUKSB7CisgICAgaWYgKChmbGFncyAmIFB5QlVGX0ZPUk1BVCkgPT0gUHlCVUZfRk9STUFUKQogICAgICAgICB2aWV3LT5mb3JtYXQgPSBzZWxmLT5vYl9kZXNjci0+Zm9ybWF0czsKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgaWYgKHNlbGYtPm9iX2Rlc2NyLT50eXBlY29kZSA9PSAndScpIHsKLSAgICAgICAgICAgIHZpZXctPmZvcm1hdCA9ICJ3IjsKLSAgICAgICAgfQotI2VuZGlmCi0gICAgfQogCiAgZmluaXNoOgogICAgIHNlbGYtPm9iX2V4cG9ydHMrKzsKQEAgLTI0NzEsMTkgKzI1MzQsMjUgQEAKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmIChpbml0aWFsICE9IE5VTEwgJiYgUHlVbmljb2RlX0NoZWNrKGluaXRpYWwpKSAgewotICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbiA9IFB5VW5pY29kZV9HRVRfREFUQV9TSVpFKGluaXRpYWwpOworICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbjsKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKGluaXRpYWwpKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihhKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIG4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChpbml0aWFsKTsKICAgICAgICAgICAgICAgICBpZiAobiA+IDApIHsKICAgICAgICAgICAgICAgICAgICAgYXJyYXlvYmplY3QgKnNlbGYgPSAoYXJyYXlvYmplY3QgKilhOwotICAgICAgICAgICAgICAgICAgICBjaGFyICppdGVtID0gc2VsZi0+b2JfaXRlbTsKLSAgICAgICAgICAgICAgICAgICAgaXRlbSA9IChjaGFyICopUHlNZW1fUmVhbGxvYyhpdGVtLCBuKTsKKyAgICAgICAgICAgICAgICAgICAgUHlfVUNTNCAqaXRlbSA9IChQeV9VQ1M0ICopc2VsZi0+b2JfaXRlbTsKKyAgICAgICAgICAgICAgICAgICAgaXRlbSA9IChQeV9VQ1M0ICopUHlNZW1fUmVhbGxvYyhpdGVtLCBuICogc2l6ZW9mKFB5X1VDUzQpKTsKICAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW0gPT0gTlVMTCkgewogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihhKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIHNlbGYtPm9iX2l0ZW0gPSBpdGVtOwotICAgICAgICAgICAgICAgICAgICBQeV9TSVpFKHNlbGYpID0gbiAvIHNpemVvZihQeV9VTklDT0RFKTsKLSAgICAgICAgICAgICAgICAgICAgbWVtY3B5KGl0ZW0sIFB5VW5pY29kZV9BU19EQVRBKGluaXRpYWwpLCBuKTsKKyAgICAgICAgICAgICAgICAgICAgc2VsZi0+b2JfaXRlbSA9IChjaGFyKilpdGVtOworICAgICAgICAgICAgICAgICAgICBQeV9TSVpFKHNlbGYpID0gbjsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQXNVQ1M0KGluaXRpYWwsIGl0ZW0sIG4sIDApKQorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgICAgICAgICAgICAgIHNlbGYtPmFsbG9jYXRlZCA9IFB5X1NJWkUoc2VsZik7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQpAQCAtMjUwNCw3ICsyNTczLDExIEBACiAgICAgICAgIH0KICAgICB9CiAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisjaWZkZWYgSEFWRV9MT05HX0xPTkcKKyAgICAgICAgImJhZCB0eXBlY29kZSAobXVzdCBiZSBiLCBCLCB1LCBoLCBILCBpLCBJLCBsLCBMLCBxLCBRLCBmIG9yIGQpIik7CisjZWxzZQogICAgICAgICAiYmFkIHR5cGVjb2RlIChtdXN0IGJlIGIsIEIsIHUsIGgsIEgsIGksIEksIGwsIEwsIGYgb3IgZCkiKTsKKyNlbmRpZgogICAgIHJldHVybiBOVUxMOwogfQogCkBAIC0yNTIwLDE4ICsyNTkzLDIxIEBACiAgICAgVHlwZSBjb2RlICAgQyBUeXBlICAgICAgICAgICAgIE1pbmltdW0gc2l6ZSBpbiBieXRlcyBcblwKICAgICAnYicgICAgICAgICBzaWduZWQgaW50ZWdlciAgICAgMSBcblwKICAgICAnQicgICAgICAgICB1bnNpZ25lZCBpbnRlZ2VyICAgMSBcblwKLSAgICAndScgICAgICAgICBVbmljb2RlIGNoYXJhY3RlciAgMiAoc2VlIG5vdGUpIFxuXAorICAgICd1JyAgICAgICAgIFVuaWNvZGUgY2hhcmFjdGVyICA0IFxuXAogICAgICdoJyAgICAgICAgIHNpZ25lZCBpbnRlZ2VyICAgICAyIFxuXAogICAgICdIJyAgICAgICAgIHVuc2lnbmVkIGludGVnZXIgICAyIFxuXAogICAgICdpJyAgICAgICAgIHNpZ25lZCBpbnRlZ2VyICAgICAyIFxuXAogICAgICdJJyAgICAgICAgIHVuc2lnbmVkIGludGVnZXIgICAyIFxuXAogICAgICdsJyAgICAgICAgIHNpZ25lZCBpbnRlZ2VyICAgICA0IFxuXAogICAgICdMJyAgICAgICAgIHVuc2lnbmVkIGludGVnZXIgICA0IFxuXAorICAgICdxJyAgICAgICAgIHNpZ25lZCBpbnRlZ2VyICAgICA4IChzZWUgbm90ZSkgXG5cCisgICAgJ1EnICAgICAgICAgdW5zaWduZWQgaW50ZWdlciAgIDggKHNlZSBub3RlKSBcblwKICAgICAnZicgICAgICAgICBmbG9hdGluZyBwb2ludCAgICAgNCBcblwKICAgICAnZCcgICAgICAgICBmbG9hdGluZyBwb2ludCAgICAgOCBcblwKIFxuXAotTk9URTogVGhlICd1JyB0eXBlY29kZSBjb3JyZXNwb25kcyB0byBQeXRob24ncyB1bmljb2RlIGNoYXJhY3Rlci4gT24gXG5cCi1uYXJyb3cgYnVpbGRzIHRoaXMgaXMgMi1ieXRlcyBvbiB3aWRlIGJ1aWxkcyB0aGlzIGlzIDQtYnl0ZXMuXG5cCitOT1RFOiBUaGUgJ3EnIGFuZCAnUScgdHlwZSBjb2RlcyBhcmUgb25seSBhdmFpbGFibGUgaWYgdGhlIHBsYXRmb3JtIFxuXAorQyBjb21waWxlciB1c2VkIHRvIGJ1aWxkIFB5dGhvbiBzdXBwb3J0cyAnbG9uZyBsb25nJywgb3IsIG9uIFdpbmRvd3MsIFxuXAorJ19faW50NjQnLlxuXAogXG5cCiBUaGUgY29uc3RydWN0b3IgaXM6XG5cCiBcblwKQEAgLTI3MzYsOSArMjgxMiw5IEBACiBQeUluaXRfYXJyYXkodm9pZCkKIHsKICAgICBQeU9iamVjdCAqbTsKKyAgICBjaGFyIGJ1ZmZlcltQeV9BUlJBWV9MRU5HVEgoZGVzY3JpcHRvcnMpXSwgKnA7CiAgICAgUHlPYmplY3QgKnR5cGVjb2RlczsKICAgICBQeV9zc2l6ZV90IHNpemUgPSAwOwotICAgIHJlZ2lzdGVyIFB5X1VOSUNPREUgKnA7CiAgICAgc3RydWN0IGFycmF5ZGVzY3IgKmRlc2NyOwogCiAgICAgaWYgKFB5VHlwZV9SZWFkeSgmQXJyYXl0eXBlKSA8IDApCkBAIC0yNzU3LDEzICsyODMzLDEzIEBACiAgICAgICAgIHNpemUrKzsKICAgICB9CiAKLSAgICB0eXBlY29kZXMgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgc2l6ZSk7Ci0gICAgcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHR5cGVjb2Rlcyk7CisgICAgcCA9IGJ1ZmZlcjsKICAgICBmb3IgKGRlc2NyID0gZGVzY3JpcHRvcnM7IGRlc2NyLT50eXBlY29kZSAhPSAnXDAnOyBkZXNjcisrKSB7CiAgICAgICAgICpwKysgPSAoY2hhcilkZXNjci0+dHlwZWNvZGU7CiAgICAgfQorICAgIHR5cGVjb2RlcyA9IFB5VW5pY29kZV9EZWNvZGVBU0NJSShidWZmZXIsIHAgLSBidWZmZXIsIE5VTEwpOwogCi0gICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJ0eXBlY29kZXMiLCAoUHlPYmplY3QgKil0eXBlY29kZXMpOworICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAidHlwZWNvZGVzIiwgdHlwZWNvZGVzKTsKIAogICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKSB7CiAgICAgICAgIFB5X0RFQ1JFRihtKTsKZGlmZiAtLWdpdCBhL01vZHVsZXMvYXVkaW9vcC5jIGIvTW9kdWxlcy9hdWRpb29wLmMKaW5kZXggOWFiNDgzNC4uMDM3NWU0ZSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9hdWRpb29wLmMKKysrIGIvTW9kdWxlcy9hdWRpb29wLmMKQEAgLTUxMyw3ICs1MTMsNiBAQAogCiAgICAgYmVzdF9yZXN1bHQgPSByZXN1bHQ7CiAgICAgYmVzdF9qID0gMDsKLSAgICBqID0gMDsKIAogICAgIGZvciAoIGo9MTsgajw9bGVuMS1sZW4yOyBqKyspIHsKICAgICAgICAgYWpfbTEgPSAoZG91YmxlKWNwMVtqLTFdOwpAQCAtNTk5LDcgKzU5OCw2IEBACiAKICAgICBiZXN0X3Jlc3VsdCA9IHJlc3VsdDsKICAgICBiZXN0X2ogPSAwOwotICAgIGogPSAwOwogCiAgICAgZm9yICggaj0xOyBqPD1sZW4xLWxlbjI7IGorKykgewogICAgICAgICBhal9tMSA9IChkb3VibGUpY3AxW2otMV07CkBAIC0xNDMzLDcgKzE0MzEsNiBAQAogICAgIGlmICggc3RhdGUgPT0gUHlfTm9uZSApIHsKICAgICAgICAgLyogRmlyc3QgdGltZSwgaXQgc2VlbXMuIFNldCBkZWZhdWx0cyAqLwogICAgICAgICB2YWxwcmVkID0gMDsKLSAgICAgICAgc3RlcCA9IDc7CiAgICAgICAgIGluZGV4ID0gMDsKICAgICB9IGVsc2UgaWYgKCAhUHlBcmdfUGFyc2VUdXBsZShzdGF0ZSwgImlpIiwgJnZhbHByZWQsICZpbmRleCkgKQogICAgICAgICByZXR1cm4gMDsKQEAgLTE1MzQsNyArMTUzMSw2IEBACiAgICAgaWYgKCBzdGF0ZSA9PSBQeV9Ob25lICkgewogICAgICAgICAvKiBGaXJzdCB0aW1lLCBpdCBzZWVtcy4gU2V0IGRlZmF1bHRzICovCiAgICAgICAgIHZhbHByZWQgPSAwOwotICAgICAgICBzdGVwID0gNzsKICAgICAgICAgaW5kZXggPSAwOwogICAgIH0gZWxzZSBpZiAoICFQeUFyZ19QYXJzZVR1cGxlKHN0YXRlLCAiaWkiLCAmdmFscHJlZCwgJmluZGV4KSApCiAgICAgICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9iaW5hc2NpaS5jIGIvTW9kdWxlcy9iaW5hc2NpaS5jCmluZGV4IDE5NjgxYjQuLmFkNWUxYjEgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvYmluYXNjaWkuYworKysgYi9Nb2R1bGVzL2JpbmFzY2lpLmMKQEAgLTE4Myw2ICsxODMsNDQgQEAKICAgICAweDZlMTcsIDB4N2UzNiwgMHg0ZTU1LCAweDVlNzQsIDB4MmU5MywgMHgzZWIyLCAweDBlZDEsIDB4MWVmMCwKIH07CiAKK3N0YXRpYyBpbnQKK2FzY2lpX2J1ZmZlcl9jb252ZXJ0ZXIoUHlPYmplY3QgKmFyZywgUHlfYnVmZmVyICpidWYpCit7CisgICAgaWYgKGFyZyA9PSBOVUxMKSB7CisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoYnVmKTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIGlmIChQeVVuaWNvZGVfQ2hlY2soYXJnKSkgeworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKGFyZykgPCAwKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGlmICghUHlVbmljb2RlX0lTX0FTQ0lJKGFyZykpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpbmcgYXJndW1lbnQgc2hvdWxkIGNvbnRhaW4gb25seSBBU0NJSSBjaGFyYWN0ZXJzIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQoYXJnKSA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCk7CisgICAgICAgIGJ1Zi0+YnVmID0gKHZvaWQgKikgUHlVbmljb2RlXzFCWVRFX0RBVEEoYXJnKTsKKyAgICAgICAgYnVmLT5sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChhcmcpOworICAgICAgICBidWYtPm9iaiA9IE5VTEw7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICBpZiAoUHlPYmplY3RfR2V0QnVmZmVyKGFyZywgYnVmLCBQeUJVRl9TSU1QTEUpICE9IDApIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCBzaG91bGQgYmUgYnl0ZXMsIGJ1ZmZlciBvciBBU0NJSSBzdHJpbmcsICIKKyAgICAgICAgICAgICAgICAgICAgICJub3QgJVIiLCBQeV9UWVBFKGFyZykpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgaWYgKCFQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoYnVmLCAnQycpKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiYXJndW1lbnQgc2hvdWxkIGJlIGEgY29udGlndW91cyBidWZmZXIsICIKKyAgICAgICAgICAgICAgICAgICAgICJub3QgJVIiLCBQeV9UWVBFKGFyZykpOworICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKGJ1Zik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICByZXR1cm4gUHlfQ0xFQU5VUF9TVVBQT1JURUQ7Cit9CisKKwogUHlEb2NfU1RSVkFSKGRvY19hMmJfdXUsICIoYXNjaWkpIC0+IGJpbi4gRGVjb2RlIGEgbGluZSBvZiB1dWVuY29kZWQgZGF0YSIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMTk2LDcgKzIzNCw3IEBACiAgICAgUHlPYmplY3QgKnJ2OwogICAgIFB5X3NzaXplX3QgYXNjaWlfbGVuLCBiaW5fbGVuOwogCi0gICAgaWYgKCAhUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieSo6YTJiX3V1IiwgJnBhc2NpaSkgKQorICAgIGlmICggIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mOmEyYl91dSIsIGFzY2lpX2J1ZmZlcl9jb252ZXJ0ZXIsICZwYXNjaWkpICkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgYXNjaWlfZGF0YSA9IHBhc2NpaS5idWY7CiAgICAgYXNjaWlfbGVuID0gcGFzY2lpLmxlbjsKQEAgLTM3MCw3ICs0MDgsNyBAQAogICAgIFB5X3NzaXplX3QgYXNjaWlfbGVuLCBiaW5fbGVuOwogICAgIGludCBxdWFkX3BvcyA9IDA7CiAKLSAgICBpZiAoICFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5KjphMmJfYmFzZTY0IiwgJnBhc2NpaSkgKQorICAgIGlmICggIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mOmEyYl9iYXNlNjQiLCBhc2NpaV9idWZmZXJfY29udmVydGVyLCAmcGFzY2lpKSApCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGFzY2lpX2RhdGEgPSBwYXNjaWkuYnVmOwogICAgIGFzY2lpX2xlbiA9IHBhc2NpaS5sZW47CkBAIC01NDYsNyArNTg0LDcgQEAKICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICBpbnQgZG9uZSA9IDA7CiAKLSAgICBpZiAoICFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5KjphMmJfaHF4IiwgJnBhc2NpaSkgKQorICAgIGlmICggIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mOmEyYl9ocXgiLCBhc2NpaV9idWZmZXJfY29udmVydGVyLCAmcGFzY2lpKSApCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGFzY2lpX2RhdGEgPSBwYXNjaWkuYnVmOwogICAgIGxlbiA9IHBhc2NpaS5sZW47CkBAIC0xMDc4LDEzICsxMTE2LDExIEBACiAKICAgICAvKiBtYWtlIGhleCB2ZXJzaW9uIG9mIHN0cmluZywgdGFrZW4gZnJvbSBzaGFtb2R1bGUuYyAqLwogICAgIGZvciAoaT1qPTA7IGkgPCBhcmdsZW47IGkrKykgewotICAgICAgICBjaGFyIGM7CisgICAgICAgIHVuc2lnbmVkIGNoYXIgYzsKICAgICAgICAgYyA9IChhcmdidWZbaV0gPj4gNCkgJiAweGY7Ci0gICAgICAgIGMgPSAoYz45KSA/IGMrJ2EnLTEwIDogYyArICcwJzsKLSAgICAgICAgcmV0YnVmW2orK10gPSBjOworICAgICAgICByZXRidWZbaisrXSA9IFB5X2hleGRpZ2l0c1tjXTsKICAgICAgICAgYyA9IGFyZ2J1ZltpXSAmIDB4ZjsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICByZXRidWZbaisrXSA9IGM7CisgICAgICAgIHJldGJ1ZltqKytdID0gUHlfaGV4ZGlnaXRzW2NdOwogICAgIH0KICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwYXJnKTsKICAgICByZXR1cm4gcmV0dmFsOwpAQCAtMTEyMSw3ICsxMTU3LDcgQEAKICAgICBjaGFyKiByZXRidWY7CiAgICAgUHlfc3NpemVfdCBpLCBqOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5KjphMmJfaGV4IiwgJnBhcmcpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6YTJiX2hleCIsIGFzY2lpX2J1ZmZlcl9jb252ZXJ0ZXIsICZwYXJnKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgYXJnYnVmID0gcGFyZy5idWY7CiAgICAgYXJnbGVuID0gcGFyZy5sZW47CkBAIC0xMTk5LDggKzEyMzUsOCBAQAogICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiZGF0YSIsICJoZWFkZXIiLCBOVUxMfTsKICAgICBpbnQgaGVhZGVyID0gMDsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgInkqfGkiLCBrd2xpc3QsICZwZGF0YSwKLSAgICAgICAgICAmaGVhZGVyKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsICJPJnxpOmEyYl9xcCIsIGt3bGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc2NpaV9idWZmZXJfY29udmVydGVyLCAmcGRhdGEsICZoZWFkZXIpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBkYXRhID0gcGRhdGEuYnVmOwogICAgIGRhdGFsZW4gPSBwZGF0YS5sZW47CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2J6Mm1vZHVsZS5jIGIvTW9kdWxlcy9iejJtb2R1bGUuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTY3MWU4ZC4uMDAwMDAwMAotLS0gYS9Nb2R1bGVzL2J6Mm1vZHVsZS5jCisrKyAvZGV2L251bGwKQEAgLTEsMjE2OSArMCwwIEBACi0vKgotCi1weXRob24tYnoyIC0gcHl0aG9uIGJ6MiBsaWJyYXJ5IGludGVyZmFjZQotCi1Db3B5cmlnaHQgKGMpIDIwMDIgIEd1c3Rhdm8gTmllbWV5ZXIgPG5pZW1leWVyQGNvbmVjdGl2YS5jb20+Ci1Db3B5cmlnaHQgKGMpIDIwMDIgIFB5dGhvbiBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBBbGwgUmlnaHRzIFJlc2VydmVkCi0KLSovCi0KLSNpbmNsdWRlICJQeXRob24uaCIKLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPGJ6bGliLmg+Ci0jaW5jbHVkZSAic3RydWN0bWVtYmVyLmgiCi0KLSNpZmRlZiBXSVRIX1RIUkVBRAotI2luY2x1ZGUgInB5dGhyZWFkLmgiCi0jZW5kaWYKLQotc3RhdGljIGNoYXIgX19hdXRob3JfX1tdID0KLSJUaGUgYnoyIHB5dGhvbiBtb2R1bGUgd2FzIHdyaXR0ZW4gYnk6XG5cCi1cblwKLSAgICBHdXN0YXZvIE5pZW1leWVyIDxuaWVtZXllckBjb25lY3RpdmEuY29tPlxuXAotIjsKLQotLyogT3VyIHZlcnkgb3duIG9mZl90LWxpa2UgdHlwZSwgNjQtYml0IGlmIHBvc3NpYmxlICovCi0vKiBjb3BpZWQgZnJvbSBPYmplY3RzL2ZpbGVvYmplY3QuYyAqLwotI2lmICFkZWZpbmVkKEhBVkVfTEFSR0VGSUxFX1NVUFBPUlQpCi10eXBlZGVmIG9mZl90IFB5X29mZl90OwotI2VsaWYgU0laRU9GX09GRl9UID49IDgKLXR5cGVkZWYgb2ZmX3QgUHlfb2ZmX3Q7Ci0jZWxpZiBTSVpFT0ZfRlBPU19UID49IDgKLXR5cGVkZWYgZnBvc190IFB5X29mZl90OwotI2Vsc2UKLSNlcnJvciAiTGFyZ2UgZmlsZSBzdXBwb3J0LCBidXQgbmVpdGhlciBvZmZfdCBub3IgZnBvc190IGlzIGxhcmdlIGVub3VnaC4iCi0jZW5kaWYKLQotI2RlZmluZSBCVUYodikgUHlCeXRlc19BU19TVFJJTkcodikKLQotI2RlZmluZSBNT0RFX0NMT1NFRCAgIDAKLSNkZWZpbmUgTU9ERV9SRUFEICAgICAxCi0jZGVmaW5lIE1PREVfUkVBRF9FT0YgMgotI2RlZmluZSBNT0RFX1dSSVRFICAgIDMKLQotI2RlZmluZSBCWjJGaWxlT2JqZWN0X0NoZWNrKHYpICAoUHlfVFlQRSh2KSA9PSAmQloyRmlsZV9UeXBlKQotCi0KLSNpZmRlZiBCWl9DT05GSUdfRVJST1IKLQotI2lmIFNJWkVPRl9MT05HID49IDgKLSNkZWZpbmUgQlpTX1RPVEFMX09VVChienMpIFwKLSAgICAoKChsb25nKWJ6cy0+dG90YWxfb3V0X2hpMzIgPDwgMzIpICsgYnpzLT50b3RhbF9vdXRfbG8zMikKLSNlbGlmIFNJWkVPRl9MT05HX0xPTkcgPj0gOAotI2RlZmluZSBCWlNfVE9UQUxfT1VUKGJ6cykgXAotICAgICgoKFBZX0xPTkdfTE9ORylienMtPnRvdGFsX291dF9oaTMyIDw8IDMyKSArIGJ6cy0+dG90YWxfb3V0X2xvMzIpCi0jZWxzZQotI2RlZmluZSBCWlNfVE9UQUxfT1VUKGJ6cykgXAotICAgIGJ6cy0+dG90YWxfb3V0X2xvMzIKLSNlbmRpZgotCi0jZWxzZSAvKiAhIEJaX0NPTkZJR19FUlJPUiAqLwotCi0jZGVmaW5lIEJaMl9ielJlYWQgYnpSZWFkCi0jZGVmaW5lIEJaMl9ielJlYWRPcGVuIGJ6UmVhZE9wZW4KLSNkZWZpbmUgQloyX2J6UmVhZENsb3NlIGJ6UmVhZENsb3NlCi0jZGVmaW5lIEJaMl9ieldyaXRlIGJ6V3JpdGUKLSNkZWZpbmUgQloyX2J6V3JpdGVPcGVuIGJ6V3JpdGVPcGVuCi0jZGVmaW5lIEJaMl9ieldyaXRlQ2xvc2UgYnpXcml0ZUNsb3NlCi0jZGVmaW5lIEJaMl9iekNvbXByZXNzIGJ6Q29tcHJlc3MKLSNkZWZpbmUgQloyX2J6Q29tcHJlc3NJbml0IGJ6Q29tcHJlc3NJbml0Ci0jZGVmaW5lIEJaMl9iekNvbXByZXNzRW5kIGJ6Q29tcHJlc3NFbmQKLSNkZWZpbmUgQloyX2J6RGVjb21wcmVzcyBiekRlY29tcHJlc3MKLSNkZWZpbmUgQloyX2J6RGVjb21wcmVzc0luaXQgYnpEZWNvbXByZXNzSW5pdAotI2RlZmluZSBCWjJfYnpEZWNvbXByZXNzRW5kIGJ6RGVjb21wcmVzc0VuZAotCi0jZGVmaW5lIEJaU19UT1RBTF9PVVQoYnpzKSBienMtPnRvdGFsX291dAotCi0jZW5kaWYgLyogISBCWl9DT05GSUdfRVJST1IgKi8KLQotCi0jaWZkZWYgV0lUSF9USFJFQUQKLSNkZWZpbmUgQUNRVUlSRV9MT0NLKG9iaikgZG8geyBcCi0gICAgaWYgKCFQeVRocmVhZF9hY3F1aXJlX2xvY2sob2JqLT5sb2NrLCAwKSkgeyBcCi0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMgXAotICAgICAgICBQeVRocmVhZF9hY3F1aXJlX2xvY2sob2JqLT5sb2NrLCAxKTsgXAotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUyBcCi0gICAgfSB9IHdoaWxlKDApCi0jZGVmaW5lIFJFTEVBU0VfTE9DSyhvYmopIFB5VGhyZWFkX3JlbGVhc2VfbG9jayhvYmotPmxvY2spCi0jZWxzZQotI2RlZmluZSBBQ1FVSVJFX0xPQ0sob2JqKQotI2RlZmluZSBSRUxFQVNFX0xPQ0sob2JqKQotI2VuZGlmCi0KLS8qIEJpdHMgaW4gZl9uZXdsaW5ldHlwZXMgKi8KLSNkZWZpbmUgTkVXTElORV9VTktOT1dOIDAgICAgICAgLyogTm8gbmV3bGluZSBzZWVuLCB5ZXQgKi8KLSNkZWZpbmUgTkVXTElORV9DUiAxICAgICAgICAgICAgLyogXHIgbmV3bGluZSBzZWVuICovCi0jZGVmaW5lIE5FV0xJTkVfTEYgMiAgICAgICAgICAgIC8qIFxuIG5ld2xpbmUgc2VlbiAqLwotI2RlZmluZSBORVdMSU5FX0NSTEYgNCAgICAgICAgICAvKiBcclxuIG5ld2xpbmUgc2VlbiAqLwotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIFN0cnVjdHVyZSBkZWZpbml0aW9ucy4gKi8KLQotdHlwZWRlZiBzdHJ1Y3QgewotICAgIFB5T2JqZWN0X0hFQUQKLSAgICBGSUxFICpyYXdmcDsKLQotICAgIGNoYXIqIGZfYnVmOyAgICAgICAgICAgICAgICAvKiBBbGxvY2F0ZWQgcmVhZGFoZWFkIGJ1ZmZlciAqLwotICAgIGNoYXIqIGZfYnVmZW5kOyAgICAgICAgICAgICAvKiBQb2ludHMgYWZ0ZXIgbGFzdCBvY2N1cGllZCBwb3NpdGlvbiAqLwotICAgIGNoYXIqIGZfYnVmcHRyOyAgICAgICAgICAgICAvKiBDdXJyZW50IGJ1ZmZlciBwb3NpdGlvbiAqLwotCi0gICAgQlpGSUxFICpmcDsKLSAgICBpbnQgbW9kZTsKLSAgICBQeV9vZmZfdCBwb3M7Ci0gICAgUHlfb2ZmX3Qgc2l6ZTsKLSNpZmRlZiBXSVRIX1RIUkVBRAotICAgIFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrOwotI2VuZGlmCi19IEJaMkZpbGVPYmplY3Q7Ci0KLXR5cGVkZWYgc3RydWN0IHsKLSAgICBQeU9iamVjdF9IRUFECi0gICAgYnpfc3RyZWFtIGJ6czsKLSAgICBpbnQgcnVubmluZzsKLSNpZmRlZiBXSVRIX1RIUkVBRAotICAgIFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrOwotI2VuZGlmCi19IEJaMkNvbXBPYmplY3Q7Ci0KLXR5cGVkZWYgc3RydWN0IHsKLSAgICBQeU9iamVjdF9IRUFECi0gICAgYnpfc3RyZWFtIGJ6czsKLSAgICBpbnQgcnVubmluZzsKLSAgICBQeU9iamVjdCAqdW51c2VkX2RhdGE7Ci0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBQeVRocmVhZF90eXBlX2xvY2sgbG9jazsKLSNlbmRpZgotfSBCWjJEZWNvbXBPYmplY3Q7Ci0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogVXRpbGl0eSBmdW5jdGlvbnMuICovCi0KLS8qIFJlZnVzZSByZWd1bGFyIEkvTyBpZiB0aGVyZSdzIGRhdGEgaW4gdGhlIGl0ZXJhdGlvbi1idWZmZXIuCi0gKiBNaXhpbmcgdGhlbSB3b3VsZCBjYXVzZSBkYXRhIHRvIGFycml2ZSBvdXQgb2Ygb3JkZXIsIGFzIHRoZSByZWFkKgotICogbWV0aG9kcyBkb24ndCB1c2UgdGhlIGl0ZXJhdGlvbiBidWZmZXIuICovCi1zdGF0aWMgaW50Ci1jaGVja19pdGVyYnVmZmVyZWQoQloyRmlsZU9iamVjdCAqZikKLXsKLSAgICBpZiAoZi0+Zl9idWYgIT0gTlVMTCAmJgotICAgICAgICAoZi0+Zl9idWZlbmQgLSBmLT5mX2J1ZnB0cikgPiAwICYmCi0gICAgICAgIGYtPmZfYnVmWzBdICE9ICdcMCcpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAiTWl4aW5nIGl0ZXJhdGlvbiBhbmQgcmVhZCBtZXRob2RzIHdvdWxkIGxvc2UgZGF0YSIpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIHJldHVybiAwOwotfQotCi1zdGF0aWMgaW50Ci1VdGlsX0NhdGNoQloyRXJyb3IoaW50IGJ6ZXJyb3IpCi17Ci0gICAgaW50IHJldCA9IDA7Ci0gICAgc3dpdGNoKGJ6ZXJyb3IpIHsKLSAgICAgICAgY2FzZSBCWl9PSzoKLSAgICAgICAgY2FzZSBCWl9TVFJFQU1fRU5EOgotICAgICAgICAgICAgYnJlYWs7Ci0KLSNpZmRlZiBCWl9DT05GSUdfRVJST1IKLSAgICAgICAgY2FzZSBCWl9DT05GSUdfRVJST1I6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgInRoZSBiejIgbGlicmFyeSB3YXMgbm90IGNvbXBpbGVkICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29ycmVjdGx5Iik7Ci0gICAgICAgICAgICByZXQgPSAxOwotICAgICAgICAgICAgYnJlYWs7Ci0jZW5kaWYKLQotICAgICAgICBjYXNlIEJaX1BBUkFNX0VSUk9SOgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgInRoZSBiejIgbGlicmFyeSBoYXMgcmVjZWl2ZWQgd3JvbmcgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXJhbWV0ZXJzIik7Ci0gICAgICAgICAgICByZXQgPSAxOwotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgY2FzZSBCWl9NRU1fRVJST1I6Ci0gICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICAgICAgcmV0ID0gMTsKLSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIGNhc2UgQlpfREFUQV9FUlJPUjoKLSAgICAgICAgY2FzZSBCWl9EQVRBX0VSUk9SX01BR0lDOgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0lPRXJyb3IsICJpbnZhbGlkIGRhdGEgc3RyZWFtIik7Ci0gICAgICAgICAgICByZXQgPSAxOwotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgY2FzZSBCWl9JT19FUlJPUjoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLCAidW5rbm93biBJTyBlcnJvciIpOwotICAgICAgICAgICAgcmV0ID0gMTsKLSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIGNhc2UgQlpfVU5FWFBFQ1RFRF9FT0Y6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfRU9GRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbXByZXNzZWQgZmlsZSBlbmRlZCBiZWZvcmUgdGhlICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9naWNhbCBlbmQtb2Ytc3RyZWFtIHdhcyBkZXRlY3RlZCIpOwotICAgICAgICAgICAgcmV0ID0gMTsKLSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIGNhc2UgQlpfU0VRVUVOQ0VfRVJST1I6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3cm9uZyBzZXF1ZW5jZSBvZiBiejIgbGlicmFyeSAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbW1hbmRzIHVzZWQiKTsKLSAgICAgICAgICAgIHJldCA9IDE7Ci0gICAgICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgcmV0dXJuIHJldDsKLX0KLQotI2lmIEJVRlNJWiA8IDgxOTIKLSNkZWZpbmUgU01BTExDSFVOSyA4MTkyCi0jZWxzZQotI2RlZmluZSBTTUFMTENIVU5LIEJVRlNJWgotI2VuZGlmCi0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6bmV3X2J1ZmZlcnNpemUoKS4gKi8KLXN0YXRpYyBzaXplX3QKLVV0aWxfTmV3QnVmZmVyU2l6ZShzaXplX3QgY3VycmVudHNpemUpCi17Ci0gICAgLyogRXhwYW5kIHRoZSBidWZmZXIgYnkgYW4gYW1vdW50IHByb3BvcnRpb25hbCB0byB0aGUgY3VycmVudCBzaXplLAotICAgICAgIGdpdmluZyB1cyBhbW9ydGl6ZWQgbGluZWFyLXRpbWUgYmVoYXZpb3IuIFVzZSBhIGxlc3MtdGhhbi1kb3VibGUKLSAgICAgICBncm93dGggZmFjdG9yIHRvIGF2b2lkIGV4Y2Vzc2l2ZSBhbGxvY2F0aW9uLiAqLwotICAgIHJldHVybiBjdXJyZW50c2l6ZSArIChjdXJyZW50c2l6ZSA+PiAzKSArIDY7Ci19Ci0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6Z2V0X2xpbmUoKS4gKi8KLXN0YXRpYyBQeU9iamVjdCAqCi1VdGlsX0dldExpbmUoQloyRmlsZU9iamVjdCAqZiwgaW50IG4pCi17Ci0gICAgY2hhciBjOwotICAgIGNoYXIgKmJ1ZiwgKmVuZDsKLSAgICBzaXplX3QgdG90YWxfdl9zaXplOyAgICAgICAgLyogdG90YWwgIyBvZiBzbG90cyBpbiBidWZmZXIgKi8KLSAgICBzaXplX3QgdXNlZF92X3NpemU7ICAgICAgICAgLyogIyB1c2VkIHNsb3RzIGluIGJ1ZmZlciAqLwotICAgIHNpemVfdCBpbmNyZW1lbnQ7ICAgICAgIC8qIGFtb3VudCB0byBpbmNyZW1lbnQgdGhlIGJ1ZmZlciAqLwotICAgIFB5T2JqZWN0ICp2OwotICAgIGludCBiemVycm9yOwotICAgIGludCBieXRlc19yZWFkOwotCi0gICAgdG90YWxfdl9zaXplID0gbiA+IDAgPyBuIDogMTAwOwotICAgIHYgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKChjaGFyICopTlVMTCwgdG90YWxfdl9zaXplKTsKLSAgICBpZiAodiA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIGJ1ZiA9IEJVRih2KTsKLSAgICBlbmQgPSBidWYgKyB0b3RhbF92X3NpemU7Ci0KLSAgICBmb3IgKDs7KSB7Ci0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgZG8gewotICAgICAgICAgICAgYnl0ZXNfcmVhZCA9IEJaMl9ielJlYWQoJmJ6ZXJyb3IsIGYtPmZwLCAmYywgMSk7Ci0gICAgICAgICAgICBmLT5wb3MrKzsKLSAgICAgICAgICAgIGlmIChieXRlc19yZWFkID09IDApCi0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAqYnVmKysgPSBjOwotICAgICAgICB9IHdoaWxlIChiemVycm9yID09IEJaX09LICYmIGMgIT0gJ1xuJyAmJiBidWYgIT0gZW5kKTsKLSAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgaWYgKGJ6ZXJyb3IgPT0gQlpfU1RSRUFNX0VORCkgewotICAgICAgICAgICAgZi0+c2l6ZSA9IGYtPnBvczsKLSAgICAgICAgICAgIGYtPm1vZGUgPSBNT0RFX1JFQURfRU9GOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0gZWxzZSBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICAgICAgUHlfREVDUkVGKHYpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGMgPT0gJ1xuJykKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAvKiBNdXN0IGJlIGJlY2F1c2UgYnVmID09IGVuZCAqLwotICAgICAgICBpZiAobiA+IDApCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgdXNlZF92X3NpemUgPSB0b3RhbF92X3NpemU7Ci0gICAgICAgIGluY3JlbWVudCA9IHRvdGFsX3Zfc2l6ZSA+PiAyOyAvKiBtaWxkIGV4cG9uZW50aWFsIGdyb3d0aCAqLwotICAgICAgICB0b3RhbF92X3NpemUgKz0gaW5jcmVtZW50OwotICAgICAgICBpZiAodG90YWxfdl9zaXplID4gSU5UX01BWCkgewotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCi0gICAgICAgICAgICAgICAgImxpbmUgaXMgbG9uZ2VyIHRoYW4gYSBQeXRob24gc3RyaW5nIGNhbiBob2xkIik7Ci0gICAgICAgICAgICBQeV9ERUNSRUYodik7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZ2LCB0b3RhbF92X3NpemUpIDwgMCkgewotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgYnVmID0gQlVGKHYpICsgdXNlZF92X3NpemU7Ci0gICAgICAgIGVuZCA9IEJVRih2KSArIHRvdGFsX3Zfc2l6ZTsKLSAgICB9Ci0KLSAgICB1c2VkX3Zfc2l6ZSA9IGJ1ZiAtIEJVRih2KTsKLSAgICBpZiAodXNlZF92X3NpemUgIT0gdG90YWxfdl9zaXplKSB7Ci0gICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnYsIHVzZWRfdl9zaXplKSA8IDApIHsKLSAgICAgICAgICAgIHYgPSBOVUxMOwotICAgICAgICB9Ci0gICAgfQotICAgIHJldHVybiB2OwotfQotCi0vKiBUaGlzIGlzIGEgaGFja2VkIHZlcnNpb24gb2YgUHl0aG9uJ3MgZmlsZW9iamVjdC5jOmRyb3BfcmVhZGFoZWFkKCkuICovCi1zdGF0aWMgdm9pZAotVXRpbF9Ecm9wUmVhZEFoZWFkKEJaMkZpbGVPYmplY3QgKmYpCi17Ci0gICAgaWYgKGYtPmZfYnVmICE9IE5VTEwpIHsKLSAgICAgICAgUHlNZW1fRnJlZShmLT5mX2J1Zik7Ci0gICAgICAgIGYtPmZfYnVmID0gTlVMTDsKLSAgICB9Ci19Ci0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6cmVhZGFoZWFkKCkuICovCi1zdGF0aWMgaW50Ci1VdGlsX1JlYWRBaGVhZChCWjJGaWxlT2JqZWN0ICpmLCBpbnQgYnVmc2l6ZSkKLXsKLSAgICBpbnQgY2h1bmtzaXplOwotICAgIGludCBiemVycm9yOwotCi0gICAgaWYgKGYtPmZfYnVmICE9IE5VTEwpIHsKLSAgICAgICAgaWYoKGYtPmZfYnVmZW5kIC0gZi0+Zl9idWZwdHIpID49IDEpCi0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgVXRpbF9Ecm9wUmVhZEFoZWFkKGYpOwotICAgIH0KLSAgICBpZiAoZi0+bW9kZSA9PSBNT0RFX1JFQURfRU9GKSB7Ci0gICAgICAgIGYtPmZfYnVmcHRyID0gZi0+Zl9idWY7Ci0gICAgICAgIGYtPmZfYnVmZW5kID0gZi0+Zl9idWY7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLSAgICBpZiAoKGYtPmZfYnVmID0gUHlNZW1fTWFsbG9jKGJ1ZnNpemUpKSA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgIGNodW5rc2l6ZSA9IEJaMl9ielJlYWQoJmJ6ZXJyb3IsIGYtPmZwLCBmLT5mX2J1ZiwgYnVmc2l6ZSk7Ci0gICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICBmLT5wb3MgKz0gY2h1bmtzaXplOwotICAgIGlmIChiemVycm9yID09IEJaX1NUUkVBTV9FTkQpIHsKLSAgICAgICAgZi0+c2l6ZSA9IGYtPnBvczsKLSAgICAgICAgZi0+bW9kZSA9IE1PREVfUkVBRF9FT0Y7Ci0gICAgfSBlbHNlIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgVXRpbF9Ecm9wUmVhZEFoZWFkKGYpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIGYtPmZfYnVmcHRyID0gZi0+Zl9idWY7Ci0gICAgZi0+Zl9idWZlbmQgPSBmLT5mX2J1ZiArIGNodW5rc2l6ZTsKLSAgICByZXR1cm4gMDsKLX0KLQotLyogVGhpcyBpcyBhIGhhY2tlZCB2ZXJzaW9uIG9mIFB5dGhvbidzCi0gKiBmaWxlb2JqZWN0LmM6cmVhZGFoZWFkX2dldF9saW5lX3NraXAoKS4gKi8KLXN0YXRpYyBQeUJ5dGVzT2JqZWN0ICoKLVV0aWxfUmVhZEFoZWFkR2V0TGluZVNraXAoQloyRmlsZU9iamVjdCAqZiwgaW50IHNraXAsIGludCBidWZzaXplKQotewotICAgIFB5Qnl0ZXNPYmplY3QqIHM7Ci0gICAgY2hhciAqYnVmcHRyOwotICAgIGNoYXIgKmJ1ZjsKLSAgICBpbnQgbGVuOwotCi0gICAgaWYgKGYtPmZfYnVmID09IE5VTEwpCi0gICAgICAgIGlmIChVdGlsX1JlYWRBaGVhZChmLCBidWZzaXplKSA8IDApCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIGxlbiA9IGYtPmZfYnVmZW5kIC0gZi0+Zl9idWZwdHI7Ci0gICAgaWYgKGxlbiA9PSAwKQotICAgICAgICByZXR1cm4gKFB5Qnl0ZXNPYmplY3QgKikKLSAgICAgICAgICAgIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgc2tpcCk7Ci0gICAgYnVmcHRyID0gbWVtY2hyKGYtPmZfYnVmcHRyLCAnXG4nLCBsZW4pOwotICAgIGlmIChidWZwdHIgIT0gTlVMTCkgewotICAgICAgICBidWZwdHIrKzsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogQ291bnQgdGhlICdcbicgKi8KLSAgICAgICAgbGVuID0gYnVmcHRyIC0gZi0+Zl9idWZwdHI7Ci0gICAgICAgIHMgPSAoUHlCeXRlc09iamVjdCAqKQotICAgICAgICAgICAgUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBza2lwK2xlbik7Ci0gICAgICAgIGlmIChzID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgbWVtY3B5KFB5Qnl0ZXNfQVNfU1RSSU5HKHMpK3NraXAsIGYtPmZfYnVmcHRyLCBsZW4pOwotICAgICAgICBmLT5mX2J1ZnB0ciA9IGJ1ZnB0cjsKLSAgICAgICAgaWYgKGJ1ZnB0ciA9PSBmLT5mX2J1ZmVuZCkKLSAgICAgICAgICAgIFV0aWxfRHJvcFJlYWRBaGVhZChmKTsKLSAgICB9IGVsc2UgewotICAgICAgICBidWZwdHIgPSBmLT5mX2J1ZnB0cjsKLSAgICAgICAgYnVmID0gZi0+Zl9idWY7Ci0gICAgICAgIGYtPmZfYnVmID0gTlVMTDsgICAgICAgICAgICAgICAgLyogRm9yY2UgbmV3IHJlYWRhaGVhZCBidWZmZXIgKi8KLSAgICAgICAgcyA9IFV0aWxfUmVhZEFoZWFkR2V0TGluZVNraXAoZiwgc2tpcCtsZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZnNpemUgKyAoYnVmc2l6ZT4+MikpOwotICAgICAgICBpZiAocyA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBQeU1lbV9GcmVlKGJ1Zik7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBtZW1jcHkoUHlCeXRlc19BU19TVFJJTkcocykrc2tpcCwgYnVmcHRyLCBsZW4pOwotICAgICAgICBQeU1lbV9GcmVlKGJ1Zik7Ci0gICAgfQotICAgIHJldHVybiBzOwotfQotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIE1ldGhvZHMgb2YgQloyRmlsZS4gKi8KLQotUHlEb2NfU1RSVkFSKEJaMkZpbGVfcmVhZF9fZG9jX18sCi0icmVhZChbc2l6ZV0pIC0+IHN0cmluZ1xuXAotXG5cCi1SZWFkIGF0IG1vc3Qgc2l6ZSB1bmNvbXByZXNzZWQgYnl0ZXMsIHJldHVybmVkIGFzIGEgc3RyaW5nLiBJZiB0aGUgc2l6ZVxuXAotYXJndW1lbnQgaXMgbmVnYXRpdmUgb3Igb21pdHRlZCwgcmVhZCB1bnRpbCBFT0YgaXMgcmVhY2hlZC5cblwKLSIpOwotCi0vKiBUaGlzIGlzIGEgaGFja2VkIHZlcnNpb24gb2YgUHl0aG9uJ3MgZmlsZW9iamVjdC5jOmZpbGVfcmVhZCgpLiAqLwotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfcmVhZChCWjJGaWxlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBsb25nIGJ5dGVzcmVxdWVzdGVkID0gLTE7Ci0gICAgc2l6ZV90IGJ5dGVzcmVhZCwgYnVmZmVyc2l6ZSwgY2h1bmtzaXplOwotICAgIGludCBiemVycm9yOwotICAgIFB5T2JqZWN0ICpyZXQgPSBOVUxMOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8bDpyZWFkIiwgJmJ5dGVzcmVxdWVzdGVkKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICBBQ1FVSVJFX0xPQ0soc2VsZik7Ci0gICAgc3dpdGNoIChzZWxmLT5tb2RlKSB7Ci0gICAgICAgIGNhc2UgTU9ERV9SRUFEOgotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgTU9ERV9SRUFEX0VPRjoKLSAgICAgICAgICAgIHJldCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoIiIsIDApOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgICAgICBjYXNlIE1PREVfQ0xPU0VEOgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKTsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmaWxlIGlzIG5vdCByZWFkeSBmb3IgcmVhZGluZyIpOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgIH0KLQotICAgIC8qIHJlZnVzZSB0byBtaXggd2l0aCBmLm5leHQoKSAqLwotICAgIGlmIChjaGVja19pdGVyYnVmZmVyZWQoc2VsZikpCi0gICAgICAgIGdvdG8gY2xlYW51cDsKLQotICAgIGlmIChieXRlc3JlcXVlc3RlZCA8IDApCi0gICAgICAgIGJ1ZmZlcnNpemUgPSBVdGlsX05ld0J1ZmZlclNpemUoKHNpemVfdCkwKTsKLSAgICBlbHNlCi0gICAgICAgIGJ1ZmZlcnNpemUgPSBieXRlc3JlcXVlc3RlZDsKLSAgICBpZiAoYnVmZmVyc2l6ZSA+IElOVF9NQVgpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAicmVxdWVzdGVkIG51bWJlciBvZiBieXRlcyBpcyAiCi0gICAgICAgICAgICAgICAgICAgICAgICAibW9yZSB0aGFuIGEgUHl0aG9uIHN0cmluZyBjYW4gaG9sZCIpOwotICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgfQotICAgIHJldCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoKGNoYXIgKilOVUxMLCBidWZmZXJzaXplKTsKLSAgICBpZiAocmV0ID09IE5VTEwgfHwgYnVmZmVyc2l6ZSA9PSAwKQotICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgYnl0ZXNyZWFkID0gMDsKLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBjaHVua3NpemUgPSBCWjJfYnpSZWFkKCZiemVycm9yLCBzZWxmLT5mcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCVUYocmV0KStieXRlc3JlYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyc2l6ZS1ieXRlc3JlYWQpOwotICAgICAgICBzZWxmLT5wb3MgKz0gY2h1bmtzaXplOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgICAgICBieXRlc3JlYWQgKz0gY2h1bmtzaXplOwotICAgICAgICBpZiAoYnplcnJvciA9PSBCWl9TVFJFQU1fRU5EKSB7Ci0gICAgICAgICAgICBzZWxmLT5zaXplID0gc2VsZi0+cG9zOwotICAgICAgICAgICAgc2VsZi0+bW9kZSA9IE1PREVfUkVBRF9FT0Y7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfSBlbHNlIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmV0KTsKLSAgICAgICAgICAgIHJldCA9IE5VTEw7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGJ5dGVzcmVxdWVzdGVkIDwgMCkgewotICAgICAgICAgICAgYnVmZmVyc2l6ZSA9IFV0aWxfTmV3QnVmZmVyU2l6ZShidWZmZXJzaXplKTsKLSAgICAgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJldCwgYnVmZmVyc2l6ZSkgPCAwKSB7Ci0gICAgICAgICAgICAgICAgcmV0ID0gTlVMTDsKLSAgICAgICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgIH0KLSAgICBpZiAoYnl0ZXNyZWFkICE9IGJ1ZmZlcnNpemUpIHsKLSAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmV0LCBieXRlc3JlYWQpIDwgMCkgewotICAgICAgICAgICAgcmV0ID0gTlVMTDsKLSAgICAgICAgfQotICAgIH0KLQotY2xlYW51cDoKLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgcmV0dXJuIHJldDsKLX0KLQotUHlEb2NfU1RSVkFSKEJaMkZpbGVfcmVhZGxpbmVfX2RvY19fLAotInJlYWRsaW5lKFtzaXplXSkgLT4gc3RyaW5nXG5cCi1cblwKLVJldHVybiB0aGUgbmV4dCBsaW5lIGZyb20gdGhlIGZpbGUsIGFzIGEgc3RyaW5nLCByZXRhaW5pbmcgbmV3bGluZS5cblwKLUEgbm9uLW5lZ2F0aXZlIHNpemUgYXJndW1lbnQgd2lsbCBsaW1pdCB0aGUgbWF4aW11bSBudW1iZXIgb2YgYnl0ZXMgdG9cblwKLXJldHVybiAoYW4gaW5jb21wbGV0ZSBsaW5lIG1heSBiZSByZXR1cm5lZCB0aGVuKS4gUmV0dXJuIGFuIGVtcHR5XG5cCi1zdHJpbmcgYXQgRU9GLlxuXAotIik7Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1CWjJGaWxlX3JlYWRsaW5lKEJaMkZpbGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQotewotICAgIFB5T2JqZWN0ICpyZXQgPSBOVUxMOwotICAgIGludCBzaXplaGludCA9IC0xOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8aTpyZWFkbGluZSIsICZzaXplaGludCkpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgQUNRVUlSRV9MT0NLKHNlbGYpOwotICAgIHN3aXRjaCAoc2VsZi0+bW9kZSkgewotICAgICAgICBjYXNlIE1PREVfUkVBRDoKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIE1PREVfUkVBRF9FT0Y6Ci0gICAgICAgICAgICByZXQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKCIiLCAwKTsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICAgICAgY2FzZSBNT0RFX0NMT1NFRDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJL08gb3BlcmF0aW9uIG9uIGNsb3NlZCBmaWxlIik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSU9FcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZmlsZSBpcyBub3QgcmVhZHkgZm9yIHJlYWRpbmciKTsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICB9Ci0KLSAgICAvKiByZWZ1c2UgdG8gbWl4IHdpdGggZi5uZXh0KCkgKi8KLSAgICBpZiAoY2hlY2tfaXRlcmJ1ZmZlcmVkKHNlbGYpKQotICAgICAgICBnb3RvIGNsZWFudXA7Ci0KLSAgICBpZiAoc2l6ZWhpbnQgPT0gMCkKLSAgICAgICAgcmV0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgiIiwgMCk7Ci0gICAgZWxzZQotICAgICAgICByZXQgPSBVdGlsX0dldExpbmUoc2VsZiwgKHNpemVoaW50IDwgMCkgPyAwIDogc2l6ZWhpbnQpOwotCi1jbGVhbnVwOgotICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKLSAgICByZXR1cm4gcmV0OwotfQotCi1QeURvY19TVFJWQVIoQloyRmlsZV9yZWFkbGluZXNfX2RvY19fLAotInJlYWRsaW5lcyhbc2l6ZV0pIC0+IGxpc3RcblwKLVxuXAotQ2FsbCByZWFkbGluZSgpIHJlcGVhdGVkbHkgYW5kIHJldHVybiBhIGxpc3Qgb2YgbGluZXMgcmVhZC5cblwKLVRoZSBvcHRpb25hbCBzaXplIGFyZ3VtZW50LCBpZiBnaXZlbiwgaXMgYW4gYXBwcm94aW1hdGUgYm91bmQgb24gdGhlXG5cCi10b3RhbCBudW1iZXIgb2YgYnl0ZXMgaW4gdGhlIGxpbmVzIHJldHVybmVkLlxuXAotIik7Ci0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6ZmlsZV9yZWFkbGluZXMoKS4gKi8KLXN0YXRpYyBQeU9iamVjdCAqCi1CWjJGaWxlX3JlYWRsaW5lcyhCWjJGaWxlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBsb25nIHNpemVoaW50ID0gMDsKLSAgICBQeU9iamVjdCAqbGlzdCA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmxpbmU7Ci0gICAgY2hhciBzbWFsbF9idWZmZXJbU01BTExDSFVOS107Ci0gICAgY2hhciAqYnVmZmVyID0gc21hbGxfYnVmZmVyOwotICAgIHNpemVfdCBidWZmZXJzaXplID0gU01BTExDSFVOSzsKLSAgICBQeU9iamVjdCAqYmlnX2J1ZmZlciA9IE5VTEw7Ci0gICAgc2l6ZV90IG5maWxsZWQgPSAwOwotICAgIHNpemVfdCBucmVhZDsKLSAgICBzaXplX3QgdG90YWxyZWFkID0gMDsKLSAgICBjaGFyICpwLCAqcSwgKmVuZDsKLSAgICBpbnQgZXJyOwotICAgIGludCBzaG9ydHJlYWQgPSAwOwotICAgIGludCBiemVycm9yOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8bDpyZWFkbGluZXMiLCAmc2l6ZWhpbnQpKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKLSAgICBzd2l0Y2ggKHNlbGYtPm1vZGUpIHsKLSAgICAgICAgY2FzZSBNT0RFX1JFQUQ6Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBNT0RFX1JFQURfRU9GOgotICAgICAgICAgICAgbGlzdCA9IFB5TGlzdF9OZXcoMCk7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgIGNhc2UgTU9ERV9DTE9TRUQ6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiSS9PIG9wZXJhdGlvbiBvbiBjbG9zZWQgZmlsZSIpOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0lPRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgImZpbGUgaXMgbm90IHJlYWR5IGZvciByZWFkaW5nIik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgfQotCi0gICAgLyogcmVmdXNlIHRvIG1peCB3aXRoIGYubmV4dCgpICovCi0gICAgaWYgKGNoZWNrX2l0ZXJidWZmZXJlZChzZWxmKSkKLSAgICAgICAgZ290byBjbGVhbnVwOwotCi0gICAgaWYgKChsaXN0ID0gUHlMaXN0X05ldygwKSkgPT0gTlVMTCkKLSAgICAgICAgZ290byBjbGVhbnVwOwotCi0gICAgZm9yICg7OykgewotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIG5yZWFkID0gQloyX2J6UmVhZCgmYnplcnJvciwgc2VsZi0+ZnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIrbmZpbGxlZCwgYnVmZmVyc2l6ZS1uZmlsbGVkKTsKLSAgICAgICAgc2VsZi0+cG9zICs9IG5yZWFkOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgICAgICBpZiAoYnplcnJvciA9PSBCWl9TVFJFQU1fRU5EKSB7Ci0gICAgICAgICAgICBzZWxmLT5zaXplID0gc2VsZi0+cG9zOwotICAgICAgICAgICAgc2VsZi0+bW9kZSA9IE1PREVfUkVBRF9FT0Y7Ci0gICAgICAgICAgICBpZiAobnJlYWQgPT0gMCkgewotICAgICAgICAgICAgICAgIHNpemVoaW50ID0gMDsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHNob3J0cmVhZCA9IDE7Ci0gICAgICAgIH0gZWxzZSBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICAgIGVycm9yOgotICAgICAgICAgICAgUHlfREVDUkVGKGxpc3QpOwotICAgICAgICAgICAgbGlzdCA9IE5VTEw7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgIH0KLSAgICAgICAgdG90YWxyZWFkICs9IG5yZWFkOwotICAgICAgICBwID0gbWVtY2hyKGJ1ZmZlcituZmlsbGVkLCAnXG4nLCBucmVhZCk7Ci0gICAgICAgIGlmICghc2hvcnRyZWFkICYmIHAgPT0gTlVMTCkgewotICAgICAgICAgICAgLyogTmVlZCBhIGxhcmdlciBidWZmZXIgdG8gZml0IHRoaXMgbGluZSAqLwotICAgICAgICAgICAgbmZpbGxlZCArPSBucmVhZDsKLSAgICAgICAgICAgIGJ1ZmZlcnNpemUgKj0gMjsKLSAgICAgICAgICAgIGlmIChidWZmZXJzaXplID4gSU5UX01BWCkgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAotICAgICAgICAgICAgICAgICJsaW5lIGlzIGxvbmdlciB0aGFuIGEgUHl0aG9uIHN0cmluZyBjYW4gaG9sZCIpOwotICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoYmlnX2J1ZmZlciA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgLyogQ3JlYXRlIHRoZSBiaWcgYnVmZmVyICovCi0gICAgICAgICAgICAgICAgYmlnX2J1ZmZlciA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoCi0gICAgICAgICAgICAgICAgICAgIE5VTEwsIGJ1ZmZlcnNpemUpOwotICAgICAgICAgICAgICAgIGlmIChiaWdfYnVmZmVyID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICAgICAgYnVmZmVyID0gUHlCeXRlc19BU19TVFJJTkcoYmlnX2J1ZmZlcik7Ci0gICAgICAgICAgICAgICAgbWVtY3B5KGJ1ZmZlciwgc21hbGxfYnVmZmVyLCBuZmlsbGVkKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIC8qIEdyb3cgdGhlIGJpZyBidWZmZXIgKi8KLSAgICAgICAgICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZiaWdfYnVmZmVyLCBidWZmZXJzaXplKSA8IDApewotICAgICAgICAgICAgICAgICAgICBiaWdfYnVmZmVyID0gTlVMTDsKLSAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgYnVmZmVyID0gUHlCeXRlc19BU19TVFJJTkcoYmlnX2J1ZmZlcik7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgfQotICAgICAgICBlbmQgPSBidWZmZXIrbmZpbGxlZCtucmVhZDsKLSAgICAgICAgcSA9IGJ1ZmZlcjsKLSAgICAgICAgd2hpbGUgKHAgIT0gTlVMTCkgewotICAgICAgICAgICAgLyogUHJvY2VzcyBjb21wbGV0ZSBsaW5lcyAqLwotICAgICAgICAgICAgcCsrOwotICAgICAgICAgICAgbGluZSA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUocSwgcC1xKTsKLSAgICAgICAgICAgIGlmIChsaW5lID09IE5VTEwpCi0gICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIGVyciA9IFB5TGlzdF9BcHBlbmQobGlzdCwgbGluZSk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYobGluZSk7Ci0gICAgICAgICAgICBpZiAoZXJyICE9IDApCi0gICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIHEgPSBwOwotICAgICAgICAgICAgcCA9IG1lbWNocihxLCAnXG4nLCBlbmQtcSk7Ci0gICAgICAgIH0KLSAgICAgICAgLyogTW92ZSB0aGUgcmVtYWluaW5nIGluY29tcGxldGUgbGluZSB0byB0aGUgc3RhcnQgKi8KLSAgICAgICAgbmZpbGxlZCA9IGVuZC1xOwotICAgICAgICBtZW1tb3ZlKGJ1ZmZlciwgcSwgbmZpbGxlZCk7Ci0gICAgICAgIGlmIChzaXplaGludCA+IDApCi0gICAgICAgICAgICBpZiAodG90YWxyZWFkID49IChzaXplX3Qpc2l6ZWhpbnQpCi0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGlmIChzaG9ydHJlYWQpIHsKLSAgICAgICAgICAgIHNpemVoaW50ID0gMDsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgfQotICAgIGlmIChuZmlsbGVkICE9IDApIHsKLSAgICAgICAgLyogUGFydGlhbCBsYXN0IGxpbmUgKi8KLSAgICAgICAgbGluZSA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoYnVmZmVyLCBuZmlsbGVkKTsKLSAgICAgICAgaWYgKGxpbmUgPT0gTlVMTCkKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgIGlmIChzaXplaGludCA+IDApIHsKLSAgICAgICAgICAgIC8qIE5lZWQgdG8gY29tcGxldGUgdGhlIGxhc3QgbGluZSAqLwotICAgICAgICAgICAgUHlPYmplY3QgKnJlc3QgPSBVdGlsX0dldExpbmUoc2VsZiwgMCk7Ci0gICAgICAgICAgICBpZiAocmVzdCA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKGxpbmUpOwotICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBQeUJ5dGVzX0NvbmNhdCgmbGluZSwgcmVzdCk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmVzdCk7Ci0gICAgICAgICAgICBpZiAobGluZSA9PSBOVUxMKQotICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgIH0KLSAgICAgICAgZXJyID0gUHlMaXN0X0FwcGVuZChsaXN0LCBsaW5lKTsKLSAgICAgICAgUHlfREVDUkVGKGxpbmUpOwotICAgICAgICBpZiAoZXJyICE9IDApCi0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgIH0KLQotICBjbGVhbnVwOgotICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKLSAgICBpZiAoYmlnX2J1ZmZlcikgewotICAgICAgICBQeV9ERUNSRUYoYmlnX2J1ZmZlcik7Ci0gICAgfQotICAgIHJldHVybiBsaXN0OwotfQotCi1QeURvY19TVFJWQVIoQloyRmlsZV93cml0ZV9fZG9jX18sCi0id3JpdGUoZGF0YSkgLT4gTm9uZVxuXAotXG5cCi1Xcml0ZSB0aGUgJ2RhdGEnIHN0cmluZyB0byBmaWxlLiBOb3RlIHRoYXQgZHVlIHRvIGJ1ZmZlcmluZywgY2xvc2UoKSBtYXlcblwKLWJlIG5lZWRlZCBiZWZvcmUgdGhlIGZpbGUgb24gZGlzayByZWZsZWN0cyB0aGUgZGF0YSB3cml0dGVuLlxuXAotIik7Ci0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6ZmlsZV93cml0ZSgpLiAqLwotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfd3JpdGUoQloyRmlsZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgUHlPYmplY3QgKnJldCA9IE5VTEw7Ci0gICAgUHlfYnVmZmVyIHBidWY7Ci0gICAgY2hhciAqYnVmOwotICAgIGludCBsZW47Ci0gICAgaW50IGJ6ZXJyb3I7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkqOndyaXRlIiwgJnBidWYpKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBidWYgPSBwYnVmLmJ1ZjsKLSAgICBsZW4gPSBwYnVmLmxlbjsKLQotICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKLSAgICBzd2l0Y2ggKHNlbGYtPm1vZGUpIHsKLSAgICAgICAgY2FzZSBNT0RFX1dSSVRFOgotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgY2FzZSBNT0RFX0NMT1NFRDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJL08gb3BlcmF0aW9uIG9uIGNsb3NlZCBmaWxlIik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0KLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmaWxlIGlzIG5vdCByZWFkeSBmb3Igd3JpdGluZyIpOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgIH0KLQotICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICBCWjJfYnpXcml0ZSAoJmJ6ZXJyb3IsIHNlbGYtPmZwLCBidWYsIGxlbik7Ci0gICAgc2VsZi0+cG9zICs9IGxlbjsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotCi0gICAgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgfQotCi0gICAgUHlfSU5DUkVGKFB5X05vbmUpOwotICAgIHJldCA9IFB5X05vbmU7Ci0KLWNsZWFudXA6Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmcGJ1Zik7Ci0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIHJldHVybiByZXQ7Ci19Ci0KLVB5RG9jX1NUUlZBUihCWjJGaWxlX3dyaXRlbGluZXNfX2RvY19fLAotIndyaXRlbGluZXMoc2VxdWVuY2Vfb2Zfc3RyaW5ncykgLT4gTm9uZVxuXAotXG5cCi1Xcml0ZSB0aGUgc2VxdWVuY2Ugb2Ygc3RyaW5ncyB0byB0aGUgZmlsZS4gTm90ZSB0aGF0IG5ld2xpbmVzIGFyZSBub3RcblwKLWFkZGVkLiBUaGUgc2VxdWVuY2UgY2FuIGJlIGFueSBpdGVyYWJsZSBvYmplY3QgcHJvZHVjaW5nIHN0cmluZ3MuIFRoaXMgaXNcblwKLWVxdWl2YWxlbnQgdG8gY2FsbGluZyB3cml0ZSgpIGZvciBlYWNoIHN0cmluZy5cblwKLSIpOwotCi0vKiBUaGlzIGlzIGEgaGFja2VkIHZlcnNpb24gb2YgUHl0aG9uJ3MgZmlsZW9iamVjdC5jOmZpbGVfd3JpdGVsaW5lcygpLiAqLwotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfd3JpdGVsaW5lcyhCWjJGaWxlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqc2VxKQotewotI2RlZmluZSBDSFVOS1NJWkUgMTAwMAotICAgIFB5T2JqZWN0ICpsaXN0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqaXRlciA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKnJldCA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmxpbmU7Ci0gICAgaW50IGksIGosIGluZGV4LCBsZW4sIGlzbGlzdDsKLSAgICBpbnQgYnplcnJvcjsKLQotICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKLSAgICBzd2l0Y2ggKHNlbGYtPm1vZGUpIHsKLSAgICAgICAgY2FzZSBNT0RFX1dSSVRFOgotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgY2FzZSBNT0RFX0NMT1NFRDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJL08gb3BlcmF0aW9uIG9uIGNsb3NlZCBmaWxlIik7Ci0gICAgICAgICAgICBnb3RvIGVycm9yOwotCi0gICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSU9FcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZmlsZSBpcyBub3QgcmVhZHkgZm9yIHdyaXRpbmciKTsKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotCi0gICAgaXNsaXN0ID0gUHlMaXN0X0NoZWNrKHNlcSk7Ci0gICAgaWYgICghaXNsaXN0KSB7Ci0gICAgICAgIGl0ZXIgPSBQeU9iamVjdF9HZXRJdGVyKHNlcSk7Ci0gICAgICAgIGlmIChpdGVyID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgIndyaXRlbGluZXMoKSByZXF1aXJlcyBhbiBpdGVyYWJsZSBhcmd1bWVudCIpOwotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgfQotICAgICAgICBsaXN0ID0gUHlMaXN0X05ldyhDSFVOS1NJWkUpOwotICAgICAgICBpZiAobGlzdCA9PSBOVUxMKQotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICAvKiBTdHJhdGVneTogc2x1cnAgQ0hVTktTSVpFIGxpbmVzIGludG8gYSBwcml2YXRlIGxpc3QsCi0gICAgICAgY2hlY2tpbmcgdGhhdCB0aGV5IGFyZSBhbGwgc3RyaW5ncywgdGhlbiB3cml0ZSB0aGF0IGxpc3QKLSAgICAgICB3aXRob3V0IGhvbGRpbmcgdGhlIGludGVycHJldGVyIGxvY2ssIHRoZW4gY29tZSBiYWNrIGZvciBtb3JlLiAqLwotICAgIGZvciAoaW5kZXggPSAwOyA7IGluZGV4ICs9IENIVU5LU0laRSkgewotICAgICAgICBpZiAoaXNsaXN0KSB7Ci0gICAgICAgICAgICBQeV9YREVDUkVGKGxpc3QpOwotICAgICAgICAgICAgbGlzdCA9IFB5TGlzdF9HZXRTbGljZShzZXEsIGluZGV4LCBpbmRleCtDSFVOS1NJWkUpOwotICAgICAgICAgICAgaWYgKGxpc3QgPT0gTlVMTCkKLSAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgaiA9IFB5TGlzdF9HRVRfU0laRShsaXN0KTsKLSAgICAgICAgfQotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCBDSFVOS1NJWkU7IGorKykgewotICAgICAgICAgICAgICAgIGxpbmUgPSBQeUl0ZXJfTmV4dChpdGVyKTsKLSAgICAgICAgICAgICAgICBpZiAobGluZSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIFB5TGlzdF9TZXRJdGVtKGxpc3QsIGosIGxpbmUpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIGlmIChqID09IDApCi0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICAvKiBDaGVjayB0aGF0IGFsbCBlbnRyaWVzIGFyZSBpbmRlZWQgYnl0ZSBzdHJpbmdzLiBJZiBub3QsCi0gICAgICAgICAgIGFwcGx5IHRoZSBzYW1lIHJ1bGVzIGFzIGZvciBmaWxlLndyaXRlKCkgYW5kCi0gICAgICAgICAgIGNvbnZlcnQgdGhlIHJldHMgdG8gc3RyaW5ncy4gVGhpcyBpcyBzbG93LCBidXQKLSAgICAgICAgICAgc2VlbXMgdG8gYmUgdGhlIG9ubHkgd2F5IHNpbmNlIGFsbCBjb252ZXJzaW9uIEFQSXMKLSAgICAgICAgICAgY291bGQgcG90ZW50aWFsbHkgZXhlY3V0ZSBQeXRob24gY29kZS4gKi8KLSAgICAgICAgZm9yIChpID0gMDsgaSA8IGo7IGkrKykgewotICAgICAgICAgICAgUHlPYmplY3QgKnYgPSBQeUxpc3RfR0VUX0lURU0obGlzdCwgaSk7Ci0gICAgICAgICAgICBpZiAoIVB5Qnl0ZXNfQ2hlY2sodikpIHsKLSAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpidWZmZXI7Ci0gICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0FzQ2hhckJ1ZmZlcih2LCAmYnVmZmVyLCAmbGVuKSkgewotICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIndyaXRlbGluZXMoKSAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYXJndW1lbnQgbXVzdCBiZSAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYSBzZXF1ZW5jZSBvZiAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYnl0ZXMgb2JqZWN0cyIpOwotICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBsaW5lID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShidWZmZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbik7Ci0gICAgICAgICAgICAgICAgaWYgKGxpbmUgPT0gTlVMTCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICBQeV9ERUNSRUYodik7Ci0gICAgICAgICAgICAgICAgUHlMaXN0X1NFVF9JVEVNKGxpc3QsIGksIGxpbmUpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0KLSAgICAgICAgLyogU2luY2Ugd2UgYXJlIHJlbGVhc2luZyB0aGUgZ2xvYmFsIGxvY2ssIHRoZQotICAgICAgICAgICBmb2xsb3dpbmcgY29kZSBtYXkgKm5vdCogZXhlY3V0ZSBQeXRob24gY29kZS4gKi8KLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgajsgaSsrKSB7Ci0gICAgICAgICAgICBsaW5lID0gUHlMaXN0X0dFVF9JVEVNKGxpc3QsIGkpOwotICAgICAgICAgICAgbGVuID0gUHlCeXRlc19HRVRfU0laRShsaW5lKTsKLSAgICAgICAgICAgIEJaMl9ieldyaXRlICgmYnplcnJvciwgc2VsZi0+ZnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcobGluZSksIGxlbik7Ci0gICAgICAgICAgICBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICAgICAgICAgIFB5X0JMT0NLX1RIUkVBRFMKLSAgICAgICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotCi0gICAgICAgIGlmIChqIDwgQ0hVTktTSVpFKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgfQotCi0gICAgUHlfSU5DUkVGKFB5X05vbmUpOwotICAgIHJldCA9IFB5X05vbmU7Ci0KLSAgZXJyb3I6Ci0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIFB5X1hERUNSRUYobGlzdCk7Ci0gICAgUHlfWERFQ1JFRihpdGVyKTsKLSAgICByZXR1cm4gcmV0OwotI3VuZGVmIENIVU5LU0laRQotfQotCi1QeURvY19TVFJWQVIoQloyRmlsZV9zZWVrX19kb2NfXywKLSJzZWVrKG9mZnNldCBbLCB3aGVuY2VdKSAtPiBOb25lXG5cCi1cblwKLU1vdmUgdG8gbmV3IGZpbGUgcG9zaXRpb24uIEFyZ3VtZW50IG9mZnNldCBpcyBhIGJ5dGUgY291bnQuIE9wdGlvbmFsXG5cCi1hcmd1bWVudCB3aGVuY2UgZGVmYXVsdHMgdG8gMCAob2Zmc2V0IGZyb20gc3RhcnQgb2YgZmlsZSwgb2Zmc2V0XG5cCi1zaG91bGQgYmUgPj0gMCk7IG90aGVyIHZhbHVlcyBhcmUgMSAobW92ZSByZWxhdGl2ZSB0byBjdXJyZW50IHBvc2l0aW9uLFxuXAotcG9zaXRpdmUgb3IgbmVnYXRpdmUpLCBhbmQgMiAobW92ZSByZWxhdGl2ZSB0byBlbmQgb2YgZmlsZSwgdXN1YWxseVxuXAotbmVnYXRpdmUsIGFsdGhvdWdoIG1hbnkgcGxhdGZvcm1zIGFsbG93IHNlZWtpbmcgYmV5b25kIHRoZSBlbmQgb2YgYSBmaWxlKS5cblwKLVxuXAotTm90ZSB0aGF0IHNlZWtpbmcgb2YgYnoyIGZpbGVzIGlzIGVtdWxhdGVkLCBhbmQgZGVwZW5kaW5nIG9uIHRoZSBwYXJhbWV0ZXJzXG5cCi10aGUgb3BlcmF0aW9uIG1heSBiZSBleHRyZW1lbHkgc2xvdy5cblwKLSIpOwotCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRmlsZV9zZWVrKEJaMkZpbGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQotewotICAgIGludCB3aGVyZSA9IDA7Ci0gICAgUHlPYmplY3QgKm9mZm9iajsKLSAgICBQeV9vZmZfdCBvZmZzZXQ7Ci0gICAgY2hhciBzbWFsbF9idWZmZXJbU01BTExDSFVOS107Ci0gICAgY2hhciAqYnVmZmVyID0gc21hbGxfYnVmZmVyOwotICAgIHNpemVfdCBidWZmZXJzaXplID0gU01BTExDSFVOSzsKLSAgICBQeV9vZmZfdCBieXRlc3JlYWQgPSAwOwotICAgIHNpemVfdCByZWFkc2l6ZTsKLSAgICBpbnQgY2h1bmtzaXplOwotICAgIGludCBiemVycm9yOwotICAgIFB5T2JqZWN0ICpyZXQgPSBOVUxMOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPfGk6c2VlayIsICZvZmZvYmosICZ3aGVyZSkpCi0gICAgICAgIHJldHVybiBOVUxMOwotI2lmICFkZWZpbmVkKEhBVkVfTEFSR0VGSUxFX1NVUFBPUlQpCi0gICAgb2Zmc2V0ID0gUHlMb25nX0FzTG9uZyhvZmZvYmopOwotI2Vsc2UKLSAgICBvZmZzZXQgPSBQeUxvbmdfQ2hlY2sob2Zmb2JqKSA/Ci0gICAgICAgIFB5TG9uZ19Bc0xvbmdMb25nKG9mZm9iaikgOiBQeUxvbmdfQXNMb25nKG9mZm9iaik7Ci0jZW5kaWYKLSAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICBBQ1FVSVJFX0xPQ0soc2VsZik7Ci0gICAgVXRpbF9Ecm9wUmVhZEFoZWFkKHNlbGYpOwotICAgIHN3aXRjaCAoc2VsZi0+bW9kZSkgewotICAgICAgICBjYXNlIE1PREVfUkVBRDoKLSAgICAgICAgY2FzZSBNT0RFX1JFQURfRU9GOgotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgY2FzZSBNT0RFX0NMT1NFRDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJL08gb3BlcmF0aW9uIG9uIGNsb3NlZCBmaWxlIik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0KLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzZWVrIHdvcmtzIG9ubHkgd2hpbGUgcmVhZGluZyIpOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgIH0KLQotICAgIGlmICh3aGVyZSA9PSAyKSB7Ci0gICAgICAgIGlmIChzZWxmLT5zaXplID09IC0xKSB7Ci0gICAgICAgICAgICBhc3NlcnQoc2VsZi0+bW9kZSAhPSBNT0RFX1JFQURfRU9GKTsKLSAgICAgICAgICAgIGZvciAoOzspIHsKLSAgICAgICAgICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgICAgICAgICAgY2h1bmtzaXplID0gQloyX2J6UmVhZCgmYnplcnJvciwgc2VsZi0+ZnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIsIGJ1ZmZlcnNpemUpOwotICAgICAgICAgICAgICAgIHNlbGYtPnBvcyArPSBjaHVua3NpemU7Ci0gICAgICAgICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLQotICAgICAgICAgICAgICAgIGJ5dGVzcmVhZCArPSBjaHVua3NpemU7Ci0gICAgICAgICAgICAgICAgaWYgKGJ6ZXJyb3IgPT0gQlpfU1RSRUFNX0VORCkgewotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgICAgICAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICAgICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotICAgICAgICAgICAgc2VsZi0+bW9kZSA9IE1PREVfUkVBRF9FT0Y7Ci0gICAgICAgICAgICBzZWxmLT5zaXplID0gc2VsZi0+cG9zOwotICAgICAgICAgICAgYnl0ZXNyZWFkID0gMDsKLSAgICAgICAgfQotICAgICAgICBvZmZzZXQgPSBzZWxmLT5zaXplICsgb2Zmc2V0OwotICAgIH0gZWxzZSBpZiAod2hlcmUgPT0gMSkgewotICAgICAgICBvZmZzZXQgPSBzZWxmLT5wb3MgKyBvZmZzZXQ7Ci0gICAgfQotCi0gICAgLyogQmVmb3JlIGdldHRpbmcgaGVyZSwgb2Zmc2V0IG11c3QgYmUgdGhlIGFic29sdXRlIHBvc2l0aW9uIHRoZSBmaWxlCi0gICAgICogcG9pbnRlciBzaG91bGQgYmUgc2V0IHRvLiAqLwotCi0gICAgaWYgKG9mZnNldCA+PSBzZWxmLT5wb3MpIHsKLSAgICAgICAgLyogd2UgY2FuIG1vdmUgZm9yd2FyZCAqLwotICAgICAgICBvZmZzZXQgLT0gc2VsZi0+cG9zOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIC8qIHdlIGNhbm5vdCBtb3ZlIGJhY2ssIHNvIHJld2luZCB0aGUgc3RyZWFtICovCi0gICAgICAgIEJaMl9ielJlYWRDbG9zZSgmYnplcnJvciwgc2VsZi0+ZnApOwotICAgICAgICBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgICAgICB9Ci0gICAgICAgIHJld2luZChzZWxmLT5yYXdmcCk7Ci0gICAgICAgIHNlbGYtPnBvcyA9IDA7Ci0gICAgICAgIHNlbGYtPmZwID0gQloyX2J6UmVhZE9wZW4oJmJ6ZXJyb3IsIHNlbGYtPnJhd2ZwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDAsIE5VTEwsIDApOwotICAgICAgICBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgICAgICB9Ci0gICAgICAgIHNlbGYtPm1vZGUgPSBNT0RFX1JFQUQ7Ci0gICAgfQotCi0gICAgaWYgKG9mZnNldCA8PSAwIHx8IHNlbGYtPm1vZGUgPT0gTU9ERV9SRUFEX0VPRikKLSAgICAgICAgZ290byBleGl0OwotCi0gICAgLyogQmVmb3JlIGdldHRpbmcgaGVyZSwgb2Zmc2V0IG11c3QgYmUgc2V0IHRvIHRoZSBudW1iZXIgb2YgYnl0ZXMKLSAgICAgKiB0byB3YWxrIGZvcndhcmQuICovCi0gICAgZm9yICg7OykgewotICAgICAgICBpZiAob2Zmc2V0LWJ5dGVzcmVhZCA+IGJ1ZmZlcnNpemUpCi0gICAgICAgICAgICByZWFkc2l6ZSA9IGJ1ZmZlcnNpemU7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIC8qIG9mZnNldCBtaWdodCBiZSB3aWRlciB0aGF0IHJlYWRzaXplLCBidXQgdGhlIHJlc3VsdAotICAgICAgICAgICAgICogb2YgdGhlIHN1YnRyYWN0aW9uIGlzIGJvdW5kIGJ5IGJ1ZmZlcnNpemUgKHNlZSB0aGUKLSAgICAgICAgICAgICAqIGNvbmRpdGlvbiBhYm92ZSkuIGJ1ZmZlcnNpemUgaXMgODE5Mi4gKi8KLSAgICAgICAgICAgIHJlYWRzaXplID0gKHNpemVfdCkob2Zmc2V0LWJ5dGVzcmVhZCk7Ci0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgY2h1bmtzaXplID0gQloyX2J6UmVhZCgmYnplcnJvciwgc2VsZi0+ZnAsIGJ1ZmZlciwgcmVhZHNpemUpOwotICAgICAgICBzZWxmLT5wb3MgKz0gY2h1bmtzaXplOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgICAgICBieXRlc3JlYWQgKz0gY2h1bmtzaXplOwotICAgICAgICBpZiAoYnplcnJvciA9PSBCWl9TVFJFQU1fRU5EKSB7Ci0gICAgICAgICAgICBzZWxmLT5zaXplID0gc2VsZi0+cG9zOwotICAgICAgICAgICAgc2VsZi0+bW9kZSA9IE1PREVfUkVBRF9FT0Y7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfSBlbHNlIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGJ5dGVzcmVhZCA9PSBvZmZzZXQpCi0gICAgICAgICAgICBicmVhazsKLSAgICB9Ci0KLWV4aXQ6Ci0gICAgUHlfSU5DUkVGKFB5X05vbmUpOwotICAgIHJldCA9IFB5X05vbmU7Ci0KLWNsZWFudXA6Ci0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIHJldHVybiByZXQ7Ci19Ci0KLVB5RG9jX1NUUlZBUihCWjJGaWxlX3RlbGxfX2RvY19fLAotInRlbGwoKSAtPiBpbnRcblwKLVxuXAotUmV0dXJuIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24sIGFuIGludGVnZXIgKG1heSBiZSBhIGxvbmcgaW50ZWdlcikuXG5cCi0iKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfdGVsbChCWjJGaWxlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBQeU9iamVjdCAqcmV0ID0gTlVMTDsKLQotICAgIGlmIChzZWxmLT5tb2RlID09IE1PREVfQ0xPU0VEKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKTsKLSAgICAgICAgZ290byBjbGVhbnVwOwotICAgIH0KLQotI2lmICFkZWZpbmVkKEhBVkVfTEFSR0VGSUxFX1NVUFBPUlQpCi0gICAgcmV0ID0gUHlMb25nX0Zyb21Mb25nKHNlbGYtPnBvcyk7Ci0jZWxzZQotICAgIHJldCA9IFB5TG9uZ19Gcm9tTG9uZ0xvbmcoc2VsZi0+cG9zKTsKLSNlbmRpZgotCi1jbGVhbnVwOgotICAgIHJldHVybiByZXQ7Ci19Ci0KLVB5RG9jX1NUUlZBUihCWjJGaWxlX2Nsb3NlX19kb2NfXywKLSJjbG9zZSgpIC0+IE5vbmUgb3IgKHBlcmhhcHMpIGFuIGludGVnZXJcblwKLVxuXAotQ2xvc2UgdGhlIGZpbGUuIFNldHMgZGF0YSBhdHRyaWJ1dGUgLmNsb3NlZCB0byB0cnVlLiBBIGNsb3NlZCBmaWxlXG5cCi1jYW5ub3QgYmUgdXNlZCBmb3IgZnVydGhlciBJL08gb3BlcmF0aW9ucy4gY2xvc2UoKSBtYXkgYmUgY2FsbGVkIG1vcmVcblwKLXRoYW4gb25jZSB3aXRob3V0IGVycm9yLlxuXAotIik7Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1CWjJGaWxlX2Nsb3NlKEJaMkZpbGVPYmplY3QgKnNlbGYpCi17Ci0gICAgUHlPYmplY3QgKnJldCA9IE5VTEw7Ci0gICAgaW50IGJ6ZXJyb3IgPSBCWl9PSzsKLQotICAgIGlmIChzZWxmLT5tb2RlID09IE1PREVfQ0xPU0VEKSB7Ci0gICAgICAgIFB5X1JFVFVSTl9OT05FOwotICAgIH0KLQotICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKLSAgICBzd2l0Y2ggKHNlbGYtPm1vZGUpIHsKLSAgICAgICAgY2FzZSBNT0RFX1JFQUQ6Ci0gICAgICAgIGNhc2UgTU9ERV9SRUFEX0VPRjoKLSAgICAgICAgICAgIEJaMl9ielJlYWRDbG9zZSgmYnplcnJvciwgc2VsZi0+ZnApOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgTU9ERV9XUklURToKLSAgICAgICAgICAgIEJaMl9ieldyaXRlQ2xvc2UoJmJ6ZXJyb3IsIHNlbGYtPmZwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBOVUxMLCBOVUxMKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgIH0KLSAgICBzZWxmLT5tb2RlID0gTU9ERV9DTE9TRUQ7Ci0gICAgZmNsb3NlKHNlbGYtPnJhd2ZwKTsKLSAgICBzZWxmLT5yYXdmcCA9IE5VTEw7Ci0gICAgaWYgKGJ6ZXJyb3IgPT0gQlpfT0spIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwotICAgICAgICByZXQgPSBQeV9Ob25lOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgIH0KLQotICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKLSAgICByZXR1cm4gcmV0OwotfQotCi1QeURvY19TVFJWQVIoQloyRmlsZV9lbnRlcl9kb2MsCi0iX19lbnRlcl9fKCkgLT4gc2VsZi4iKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfZW50ZXIoQloyRmlsZU9iamVjdCAqc2VsZikKLXsKLSAgICBpZiAoc2VsZi0+bW9kZSA9PSBNT0RFX0NMT1NFRCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICJJL08gb3BlcmF0aW9uIG9uIGNsb3NlZCBmaWxlIik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKSBzZWxmOwotfQotCi1QeURvY19TVFJWQVIoQloyRmlsZV9leGl0X2RvYywKLSJfX2V4aXRfXygqZXhjaW5mbykgLT4gTm9uZS4gIENsb3NlcyB0aGUgZmlsZS4iKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfZXhpdChCWjJGaWxlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBQeU9iamVjdCAqcmV0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZCgoUHlPYmplY3QgKikgc2VsZiwgImNsb3NlIiwgTlVMTCk7Ci0gICAgaWYgKCFyZXQpCi0gICAgICAgIC8qIElmIGVycm9yIG9jY3VycmVkLCBwYXNzIHRocm91Z2ggKi8KLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgUHlfREVDUkVGKHJldCk7Ci0gICAgUHlfUkVUVVJOX05PTkU7Ci19Ci0KLQotc3RhdGljIFB5T2JqZWN0ICpCWjJGaWxlX2dldGl0ZXIoQloyRmlsZU9iamVjdCAqc2VsZik7Ci0KLXN0YXRpYyBQeU1ldGhvZERlZiBCWjJGaWxlX21ldGhvZHNbXSA9IHsKLSAgICB7InJlYWQiLCAoUHlDRnVuY3Rpb24pQloyRmlsZV9yZWFkLCBNRVRIX1ZBUkFSR1MsIEJaMkZpbGVfcmVhZF9fZG9jX199LAotICAgIHsicmVhZGxpbmUiLCAoUHlDRnVuY3Rpb24pQloyRmlsZV9yZWFkbGluZSwgTUVUSF9WQVJBUkdTLCBCWjJGaWxlX3JlYWRsaW5lX19kb2NfX30sCi0gICAgeyJyZWFkbGluZXMiLCAoUHlDRnVuY3Rpb24pQloyRmlsZV9yZWFkbGluZXMsIE1FVEhfVkFSQVJHUywgQloyRmlsZV9yZWFkbGluZXNfX2RvY19ffSwKLSAgICB7IndyaXRlIiwgKFB5Q0Z1bmN0aW9uKUJaMkZpbGVfd3JpdGUsIE1FVEhfVkFSQVJHUywgQloyRmlsZV93cml0ZV9fZG9jX199LAotICAgIHsid3JpdGVsaW5lcyIsIChQeUNGdW5jdGlvbilCWjJGaWxlX3dyaXRlbGluZXMsIE1FVEhfTywgQloyRmlsZV93cml0ZWxpbmVzX19kb2NfX30sCi0gICAgeyJzZWVrIiwgKFB5Q0Z1bmN0aW9uKUJaMkZpbGVfc2VlaywgTUVUSF9WQVJBUkdTLCBCWjJGaWxlX3NlZWtfX2RvY19ffSwKLSAgICB7InRlbGwiLCAoUHlDRnVuY3Rpb24pQloyRmlsZV90ZWxsLCBNRVRIX05PQVJHUywgQloyRmlsZV90ZWxsX19kb2NfX30sCi0gICAgeyJjbG9zZSIsIChQeUNGdW5jdGlvbilCWjJGaWxlX2Nsb3NlLCBNRVRIX05PQVJHUywgQloyRmlsZV9jbG9zZV9fZG9jX199LAotICAgIHsiX19lbnRlcl9fIiwgKFB5Q0Z1bmN0aW9uKUJaMkZpbGVfZW50ZXIsIE1FVEhfTk9BUkdTLCBCWjJGaWxlX2VudGVyX2RvY30sCi0gICAgeyJfX2V4aXRfXyIsIChQeUNGdW5jdGlvbilCWjJGaWxlX2V4aXQsIE1FVEhfVkFSQVJHUywgQloyRmlsZV9leGl0X2RvY30sCi0gICAge05VTEwsICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KLX07Ci0KLQotLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCi0vKiBHZXR0ZXJzIGFuZCBzZXR0ZXJzIG9mIEJaMkZpbGUuICovCi0KLXN0YXRpYyBQeU9iamVjdCAqCi1CWjJGaWxlX2dldF9jbG9zZWQoQloyRmlsZU9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKLXsKLSAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKHNlbGYtPm1vZGUgPT0gTU9ERV9DTE9TRUQpOwotfQotCi1zdGF0aWMgUHlHZXRTZXREZWYgQloyRmlsZV9nZXRzZXRbXSA9IHsKLSAgICB7ImNsb3NlZCIsIChnZXR0ZXIpQloyRmlsZV9nZXRfY2xvc2VkLCBOVUxMLAotICAgICAgICAgICAgICAgICAgICAiVHJ1ZSBpZiB0aGUgZmlsZSBpcyBjbG9zZWQifSwKLSAgICB7TlVMTH0gICAgICAvKiBTZW50aW5lbCAqLwotfTsKLQotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIFNsb3QgZGVmaW5pdGlvbnMgZm9yIEJaMkZpbGVfVHlwZS4gKi8KLQotc3RhdGljIGludAotQloyRmlsZV9pbml0KEJaMkZpbGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQotewotICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiZmlsZW5hbWUiLCAibW9kZSIsICJidWZmZXJpbmciLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29tcHJlc3NsZXZlbCIsIDB9OwotICAgIFB5T2JqZWN0ICpuYW1lX29iaiA9IE5VTEw7Ci0gICAgY2hhciAqbmFtZTsKLSAgICBjaGFyICptb2RlID0gInIiOwotICAgIGludCBidWZmZXJpbmcgPSAtMTsKLSAgICBpbnQgY29tcHJlc3NsZXZlbCA9IDk7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0gICAgaW50IG1vZGVfY2hhciA9IDA7Ci0KLSAgICBzZWxmLT5zaXplID0gLTE7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsICJPJnxzaWk6QloyRmlsZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lX29iaiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbW9kZSwgJmJ1ZmZlcmluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY29tcHJlc3NsZXZlbCkpCi0gICAgICAgIHJldHVybiAtMTsKLQotICAgIG5hbWUgPSBQeUJ5dGVzX0FzU3RyaW5nKG5hbWVfb2JqKTsKLSAgICBpZiAoY29tcHJlc3NsZXZlbCA8IDEgfHwgY29tcHJlc3NsZXZlbCA+IDkpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiY29tcHJlc3NsZXZlbCBtdXN0IGJlIGJldHdlZW4gMSBhbmQgOSIpOwotICAgICAgICBQeV9ERUNSRUYobmFtZV9vYmopOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotCi0gICAgZm9yICg7OykgewotICAgICAgICBpbnQgZXJyb3IgPSAwOwotICAgICAgICBzd2l0Y2ggKCptb2RlKSB7Ci0gICAgICAgICAgICBjYXNlICdyJzoKLSAgICAgICAgICAgIGNhc2UgJ3cnOgotICAgICAgICAgICAgICAgIGlmIChtb2RlX2NoYXIpCi0gICAgICAgICAgICAgICAgICAgIGVycm9yID0gMTsKLSAgICAgICAgICAgICAgICBtb2RlX2NoYXIgPSAqbW9kZTsKLSAgICAgICAgICAgICAgICBicmVhazsKLQotICAgICAgICAgICAgY2FzZSAnYic6Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICAgICAgZXJyb3IgPSAxOwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgICAgIGlmIChlcnJvcikgewotICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgImludmFsaWQgbW9kZSBjaGFyICVjIiwgKm1vZGUpOwotICAgICAgICAgICAgUHlfREVDUkVGKG5hbWVfb2JqKTsKLSAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQotICAgICAgICBtb2RlKys7Ci0gICAgICAgIGlmICgqbW9kZSA9PSAnXDAnKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgfQotCi0gICAgaWYgKG1vZGVfY2hhciA9PSAwKSB7Ci0gICAgICAgIG1vZGVfY2hhciA9ICdyJzsKLSAgICB9Ci0KLSAgICBtb2RlID0gKG1vZGVfY2hhciA9PSAncicpID8gInJiIiA6ICJ3YiI7Ci0KLSAgICBzZWxmLT5yYXdmcCA9IGZvcGVuKG5hbWUsIG1vZGUpOwotICAgIFB5X0RFQ1JFRihuYW1lX29iaik7Ci0gICAgaWYgKHNlbGYtPnJhd2ZwID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIC8qIFhYWCBJZ25vcmUgYnVmZmVyaW5nICovCi0KLSAgICAvKiBGcm9tIG5vdyBvbiwgd2UgaGF2ZSBzdHVmZiB0byBkZWFsbG9jLCBzbyBqdW1wIHRvIGVycm9yIGxhYmVsCi0gICAgICogaW5zdGVhZCBvZiByZXR1cm5pbmcgKi8KLQotI2lmZGVmIFdJVEhfVEhSRUFECi0gICAgc2VsZi0+bG9jayA9IFB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKTsKLSAgICBpZiAoIXNlbGYtPmxvY2spIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX01lbW9yeUVycm9yLCAidW5hYmxlIHRvIGFsbG9jYXRlIGxvY2siKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0jZW5kaWYKLQotICAgIGlmIChtb2RlX2NoYXIgPT0gJ3InKQotICAgICAgICBzZWxmLT5mcCA9IEJaMl9ielJlYWRPcGVuKCZiemVycm9yLCBzZWxmLT5yYXdmcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCBOVUxMLCAwKTsKLSAgICBlbHNlCi0gICAgICAgIHNlbGYtPmZwID0gQloyX2J6V3JpdGVPcGVuKCZiemVycm9yLCBzZWxmLT5yYXdmcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcHJlc3NsZXZlbCwgMCwgMCk7Ci0KLSAgICBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotCi0gICAgc2VsZi0+bW9kZSA9IChtb2RlX2NoYXIgPT0gJ3InKSA/IE1PREVfUkVBRCA6IE1PREVfV1JJVEU7Ci0KLSAgICByZXR1cm4gMDsKLQotZXJyb3I6Ci0gICAgZmNsb3NlKHNlbGYtPnJhd2ZwKTsKLSAgICBzZWxmLT5yYXdmcCA9IE5VTEw7Ci0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBpZiAoc2VsZi0+bG9jaykgewotICAgICAgICBQeVRocmVhZF9mcmVlX2xvY2soc2VsZi0+bG9jayk7Ci0gICAgICAgIHNlbGYtPmxvY2sgPSBOVUxMOwotICAgIH0KLSNlbmRpZgotICAgIHJldHVybiAtMTsKLX0KLQotc3RhdGljIHZvaWQKLUJaMkZpbGVfZGVhbGxvYyhCWjJGaWxlT2JqZWN0ICpzZWxmKQotewotICAgIGludCBiemVycm9yOwotI2lmZGVmIFdJVEhfVEhSRUFECi0gICAgaWYgKHNlbGYtPmxvY2spCi0gICAgICAgIFB5VGhyZWFkX2ZyZWVfbG9jayhzZWxmLT5sb2NrKTsKLSNlbmRpZgotICAgIHN3aXRjaCAoc2VsZi0+bW9kZSkgewotICAgICAgICBjYXNlIE1PREVfUkVBRDoKLSAgICAgICAgY2FzZSBNT0RFX1JFQURfRU9GOgotICAgICAgICAgICAgQloyX2J6UmVhZENsb3NlKCZiemVycm9yLCBzZWxmLT5mcCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBNT0RFX1dSSVRFOgotICAgICAgICAgICAgQloyX2J6V3JpdGVDbG9zZSgmYnplcnJvciwgc2VsZi0+ZnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIE5VTEwsIE5VTEwpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgfQotICAgIFV0aWxfRHJvcFJlYWRBaGVhZChzZWxmKTsKLSAgICBpZiAoc2VsZi0+cmF3ZnAgIT0gTlVMTCkKLSAgICAgICAgZmNsb3NlKHNlbGYtPnJhd2ZwKTsKLSAgICBQeV9UWVBFKHNlbGYpLT50cF9mcmVlKChQeU9iamVjdCAqKXNlbGYpOwotfQotCi0vKiBUaGlzIGlzIGEgaGFja2VkIHZlcnNpb24gb2YgUHl0aG9uJ3MgZmlsZW9iamVjdC5jOmZpbGVfZ2V0aXRlcigpLiAqLwotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfZ2V0aXRlcihCWjJGaWxlT2JqZWN0ICpzZWxmKQotewotICAgIGlmIChzZWxmLT5tb2RlID09IE1PREVfQ0xPU0VEKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIFB5X0lOQ1JFRigoUHlPYmplY3QqKXNlbGYpOwotICAgIHJldHVybiAoUHlPYmplY3QgKilzZWxmOwotfQotCi0vKiBUaGlzIGlzIGEgaGFja2VkIHZlcnNpb24gb2YgUHl0aG9uJ3MgZmlsZW9iamVjdC5jOmZpbGVfaXRlcm5leHQoKS4gKi8KLSNkZWZpbmUgUkVBREFIRUFEX0JVRlNJWkUgODE5Mgotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfaXRlcm5leHQoQloyRmlsZU9iamVjdCAqc2VsZikKLXsKLSAgICBQeUJ5dGVzT2JqZWN0KiByZXQ7Ci0gICAgQUNRVUlSRV9MT0NLKHNlbGYpOwotICAgIGlmIChzZWxmLT5tb2RlID09IE1PREVfQ0xPU0VEKSB7Ci0gICAgICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiSS9PIG9wZXJhdGlvbiBvbiBjbG9zZWQgZmlsZSIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgcmV0ID0gVXRpbF9SZWFkQWhlYWRHZXRMaW5lU2tpcChzZWxmLCAwLCBSRUFEQUhFQURfQlVGU0laRSk7Ci0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIGlmIChyZXQgPT0gTlVMTCB8fCBQeUJ5dGVzX0dFVF9TSVpFKHJldCkgPT0gMCkgewotICAgICAgICBQeV9YREVDUkVGKHJldCk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICByZXR1cm4gKFB5T2JqZWN0ICopcmV0OwotfQotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIEJaMkZpbGVfVHlwZSBkZWZpbml0aW9uLiAqLwotCi1QeURvY19WQVIoQloyRmlsZV9fZG9jX18pID0KLVB5RG9jX1NUUigKLSJCWjJGaWxlKG5hbWUgWywgbW9kZT0ncicsIGJ1ZmZlcmluZz0wLCBjb21wcmVzc2xldmVsPTldKSAtPiBmaWxlIG9iamVjdFxuXAotXG5cCi1PcGVuIGEgYnoyIGZpbGUuIFRoZSBtb2RlIGNhbiBiZSAncicgb3IgJ3cnLCBmb3IgcmVhZGluZyAoZGVmYXVsdCkgb3JcblwKLXdyaXRpbmcuIFdoZW4gb3BlbmVkIGZvciB3cml0aW5nLCB0aGUgZmlsZSB3aWxsIGJlIGNyZWF0ZWQgaWYgaXQgZG9lc24ndFxuXAotZXhpc3QsIGFuZCB0cnVuY2F0ZWQgb3RoZXJ3aXNlLiBJZiB0aGUgYnVmZmVyaW5nIGFyZ3VtZW50IGlzIGdpdmVuLCAwIG1lYW5zXG5cCi11bmJ1ZmZlcmVkLCBhbmQgbGFyZ2VyIG51bWJlcnMgc3BlY2lmeSB0aGUgYnVmZmVyIHNpemUuIElmIGNvbXByZXNzbGV2ZWxcblwKLWlzIGdpdmVuLCBtdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMSBhbmQgOS5cblwKLURhdGEgcmVhZCBpcyBhbHdheXMgcmV0dXJuZWQgaW4gYnl0ZXM7IGRhdGEgd3JpdHRlbiBvdWdodCB0byBiZSBieXRlcy5cblwKLSIpOwotCi1zdGF0aWMgUHlUeXBlT2JqZWN0IEJaMkZpbGVfVHlwZSA9IHsKLSAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoTlVMTCwgMCkKLSAgICAiYnoyLkJaMkZpbGUiLCAgICAgICAgICAgICAgLyp0cF9uYW1lKi8KLSAgICBzaXplb2YoQloyRmlsZU9iamVjdCksICAgICAgLyp0cF9iYXNpY3NpemUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2l0ZW1zaXplKi8KLSAgICAoZGVzdHJ1Y3RvcilCWjJGaWxlX2RlYWxsb2MsIC8qdHBfZGVhbGxvYyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcHJpbnQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2dldGF0dHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3NldGF0dHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3Jlc2VydmVkKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9yZXByKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19udW1iZXIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX3NlcXVlbmNlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19tYXBwaW5nKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9oYXNoKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2NhbGwqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc3RyKi8KLSAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwvKnRwX2dldGF0dHJvKi8KLSAgICBQeU9iamVjdF9HZW5lcmljU2V0QXR0ciwvKnRwX3NldGF0dHJvKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX2J1ZmZlciovCi0gICAgUHlfVFBGTEFHU19ERUZBVUxUfFB5X1RQRkxBR1NfQkFTRVRZUEUsIC8qdHBfZmxhZ3MqLwotICAgIEJaMkZpbGVfX2RvY19fLCAgICAgICAgIC8qdHBfZG9jKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX3RyYXZlcnNlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2NsZWFyKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX3JpY2hjb21wYXJlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX3dlYWtsaXN0b2Zmc2V0Ki8KLSAgICAoZ2V0aXRlcmZ1bmMpQloyRmlsZV9nZXRpdGVyLCAvKnRwX2l0ZXIqLwotICAgIChpdGVybmV4dGZ1bmMpQloyRmlsZV9pdGVybmV4dCwgLyp0cF9pdGVybmV4dCovCi0gICAgQloyRmlsZV9tZXRob2RzLCAgICAgICAgLyp0cF9tZXRob2RzKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9tZW1iZXJzKi8KLSAgICBCWjJGaWxlX2dldHNldCwgICAgICAgICAvKnRwX2dldHNldCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9iYXNlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2RpY3QqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGVzY3JfZ2V0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2Rlc2NyX3NldCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9kaWN0b2Zmc2V0Ki8KLSAgICAoaW5pdHByb2MpQloyRmlsZV9pbml0LCAvKnRwX2luaXQqLwotICAgIFB5VHlwZV9HZW5lcmljQWxsb2MsICAgIC8qdHBfYWxsb2MqLwotICAgIFB5VHlwZV9HZW5lcmljTmV3LCAgICAgIC8qdHBfbmV3Ki8KLSAgICBQeU9iamVjdF9GcmVlLCAgICAgICAgICAvKnRwX2ZyZWUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXNfZ2MqLwotfTsKLQotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIE1ldGhvZHMgb2YgQloyQ29tcC4gKi8KLQotUHlEb2NfU1RSVkFSKEJaMkNvbXBfY29tcHJlc3NfX2RvY19fLAotImNvbXByZXNzKGRhdGEpIC0+IHN0cmluZ1xuXAotXG5cCi1Qcm92aWRlIG1vcmUgZGF0YSB0byB0aGUgY29tcHJlc3NvciBvYmplY3QuIEl0IHdpbGwgcmV0dXJuIGNodW5rcyBvZlxuXAotY29tcHJlc3NlZCBkYXRhIHdoZW5ldmVyIHBvc3NpYmxlLiBXaGVuIHlvdSd2ZSBmaW5pc2hlZCBwcm92aWRpbmcgZGF0YVxuXAotdG8gY29tcHJlc3MsIGNhbGwgdGhlIGZsdXNoKCkgbWV0aG9kIHRvIGZpbmlzaCB0aGUgY29tcHJlc3Npb24gcHJvY2VzcyxcblwKLWFuZCByZXR1cm4gd2hhdCBpcyBsZWZ0IGluIHRoZSBpbnRlcm5hbCBidWZmZXJzLlxuXAotIik7Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1CWjJDb21wX2NvbXByZXNzKEJaMkNvbXBPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQotewotICAgIFB5X2J1ZmZlciBwZGF0YTsKLSAgICBjaGFyICpkYXRhOwotICAgIGludCBkYXRhc2l6ZTsKLSAgICBpbnQgYnVmc2l6ZSA9IFNNQUxMQ0hVTks7Ci0gICAgUFlfTE9OR19MT05HIHRvdGFsb3V0OwotICAgIFB5T2JqZWN0ICpyZXQgPSBOVUxMOwotICAgIGJ6X3N0cmVhbSAqYnpzID0gJnNlbGYtPmJ6czsKLSAgICBpbnQgYnplcnJvcjsKLQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieSo6Y29tcHJlc3MiLCAmcGRhdGEpKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBkYXRhID0gcGRhdGEuYnVmOwotICAgIGRhdGFzaXplID0gcGRhdGEubGVuOwotCi0gICAgaWYgKGRhdGFzaXplID09IDApIHsKLSAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgICAgICByZXR1cm4gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgiIiwgMCk7Ci0gICAgfQotCi0gICAgQUNRVUlSRV9MT0NLKHNlbGYpOwotICAgIGlmICghc2VsZi0+cnVubmluZykgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJ0aGlzIG9iamVjdCB3YXMgYWxyZWFkeSBmbHVzaGVkIik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotCi0gICAgcmV0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBidWZzaXplKTsKLSAgICBpZiAoIXJldCkKLSAgICAgICAgZ290byBlcnJvcjsKLQotICAgIGJ6cy0+bmV4dF9pbiA9IGRhdGE7Ci0gICAgYnpzLT5hdmFpbF9pbiA9IGRhdGFzaXplOwotICAgIGJ6cy0+bmV4dF9vdXQgPSBCVUYocmV0KTsKLSAgICBienMtPmF2YWlsX291dCA9IGJ1ZnNpemU7Ci0KLSAgICB0b3RhbG91dCA9IEJaU19UT1RBTF9PVVQoYnpzKTsKLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBiemVycm9yID0gQloyX2J6Q29tcHJlc3MoYnpzLCBCWl9SVU4pOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgICAgICBpZiAoYnplcnJvciAhPSBCWl9SVU5fT0spIHsKLSAgICAgICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGJ6cy0+YXZhaWxfaW4gPT0gMCkKLSAgICAgICAgICAgIGJyZWFrOyAvKiBubyBtb3JlIGlucHV0IGRhdGEgKi8KLSAgICAgICAgaWYgKGJ6cy0+YXZhaWxfb3V0ID09IDApIHsKLSAgICAgICAgICAgIGJ1ZnNpemUgPSBVdGlsX05ld0J1ZmZlclNpemUoYnVmc2l6ZSk7Ci0gICAgICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXQsIGJ1ZnNpemUpIDwgMCkgewotICAgICAgICAgICAgICAgIEJaMl9iekNvbXByZXNzRW5kKGJ6cyk7Ci0gICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGJ6cy0+bmV4dF9vdXQgPSBCVUYocmV0KSArIChCWlNfVE9UQUxfT1VUKGJ6cykKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtIHRvdGFsb3V0KTsKLSAgICAgICAgICAgIGJ6cy0+YXZhaWxfb3V0ID0gYnVmc2l6ZSAtIChienMtPm5leHRfb3V0IC0gQlVGKHJldCkpOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmV0LAotICAgICAgICAgICAgICAgICAgICAgICAoUHlfc3NpemVfdCkoQlpTX1RPVEFMX09VVChienMpIC0gdG90YWxvdXQpKSA8IDApCi0gICAgICAgIGdvdG8gZXJyb3I7Ci0KLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgIHJldHVybiByZXQ7Ci0KLWVycm9yOgotICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKLSAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgUHlfWERFQ1JFRihyZXQpOwotICAgIHJldHVybiBOVUxMOwotfQotCi1QeURvY19TVFJWQVIoQloyQ29tcF9mbHVzaF9fZG9jX18sCi0iZmx1c2goKSAtPiBzdHJpbmdcblwKLVxuXAotRmluaXNoIHRoZSBjb21wcmVzc2lvbiBwcm9jZXNzIGFuZCByZXR1cm4gd2hhdCBpcyBsZWZ0IGluIGludGVybmFsIGJ1ZmZlcnMuXG5cCi1Zb3UgbXVzdCBub3QgdXNlIHRoZSBjb21wcmVzc29yIG9iamVjdCBhZnRlciBjYWxsaW5nIHRoaXMgbWV0aG9kLlxuXAotIik7Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1CWjJDb21wX2ZsdXNoKEJaMkNvbXBPYmplY3QgKnNlbGYpCi17Ci0gICAgaW50IGJ1ZnNpemUgPSBTTUFMTENIVU5LOwotICAgIFB5T2JqZWN0ICpyZXQgPSBOVUxMOwotICAgIGJ6X3N0cmVhbSAqYnpzID0gJnNlbGYtPmJ6czsKLSAgICBQWV9MT05HX0xPTkcgdG90YWxvdXQ7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0KLSAgICBBQ1FVSVJFX0xPQ0soc2VsZik7Ci0gICAgaWYgKCFzZWxmLT5ydW5uaW5nKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAib2JqZWN0IHdhcyBhbHJlYWR5ICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmbHVzaGVkIik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotICAgIHNlbGYtPnJ1bm5pbmcgPSAwOwotCi0gICAgcmV0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBidWZzaXplKTsKLSAgICBpZiAoIXJldCkKLSAgICAgICAgZ290byBlcnJvcjsKLQotICAgIGJ6cy0+bmV4dF9vdXQgPSBCVUYocmV0KTsKLSAgICBienMtPmF2YWlsX291dCA9IGJ1ZnNpemU7Ci0KLSAgICB0b3RhbG91dCA9IEJaU19UT1RBTF9PVVQoYnpzKTsKLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBiemVycm9yID0gQloyX2J6Q29tcHJlc3MoYnpzLCBCWl9GSU5JU0gpOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgICAgICBpZiAoYnplcnJvciA9PSBCWl9TVFJFQU1fRU5EKSB7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfSBlbHNlIGlmIChiemVycm9yICE9IEJaX0ZJTklTSF9PSykgewotICAgICAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgfQotICAgICAgICBpZiAoYnpzLT5hdmFpbF9vdXQgPT0gMCkgewotICAgICAgICAgICAgYnVmc2l6ZSA9IFV0aWxfTmV3QnVmZmVyU2l6ZShidWZzaXplKTsKLSAgICAgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJldCwgYnVmc2l6ZSkgPCAwKQotICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICBienMtPm5leHRfb3V0ID0gQlVGKHJldCk7Ci0gICAgICAgICAgICBienMtPm5leHRfb3V0ID0gQlVGKHJldCkgKyAoQlpTX1RPVEFMX09VVChienMpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSB0b3RhbG91dCk7Ci0gICAgICAgICAgICBienMtPmF2YWlsX291dCA9IGJ1ZnNpemUgLSAoYnpzLT5uZXh0X291dCAtIEJVRihyZXQpKTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChienMtPmF2YWlsX291dCAhPSAwKSB7Ci0gICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJldCwKLSAgICAgICAgICAgICAgICAgICAgKFB5X3NzaXplX3QpKEJaU19UT1RBTF9PVVQoYnpzKSAtIHRvdGFsb3V0KSkgPCAwKQotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgcmV0dXJuIHJldDsKLQotZXJyb3I6Ci0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIFB5X1hERUNSRUYocmV0KTsKLSAgICByZXR1cm4gTlVMTDsKLX0KLQotc3RhdGljIFB5TWV0aG9kRGVmIEJaMkNvbXBfbWV0aG9kc1tdID0gewotICAgIHsiY29tcHJlc3MiLCAoUHlDRnVuY3Rpb24pQloyQ29tcF9jb21wcmVzcywgTUVUSF9WQVJBUkdTLAotICAgICBCWjJDb21wX2NvbXByZXNzX19kb2NfX30sCi0gICAgeyJmbHVzaCIsIChQeUNGdW5jdGlvbilCWjJDb21wX2ZsdXNoLCBNRVRIX05PQVJHUywKLSAgICAgQloyQ29tcF9mbHVzaF9fZG9jX199LAotICAgIHtOVUxMLCAgICAgICAgICAgICAgTlVMTH0gICAgICAgICAgIC8qIHNlbnRpbmVsICovCi19OwotCi0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogU2xvdCBkZWZpbml0aW9ucyBmb3IgQloyQ29tcF9UeXBlLiAqLwotCi1zdGF0aWMgaW50Ci1CWjJDb21wX2luaXQoQloyQ29tcE9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCi17Ci0gICAgaW50IGNvbXByZXNzbGV2ZWwgPSA5OwotICAgIGludCBiemVycm9yOwotICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiY29tcHJlc3NsZXZlbCIsIDB9OwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dhcmdzLCAifGk6QloyQ29tcHJlc3NvciIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmY29tcHJlc3NsZXZlbCkpCi0gICAgICAgIHJldHVybiAtMTsKLQotICAgIGlmIChjb21wcmVzc2xldmVsIDwgMSB8fCBjb21wcmVzc2xldmVsID4gOSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJjb21wcmVzc2xldmVsIG11c3QgYmUgYmV0d2VlbiAxIGFuZCA5Iik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotCi0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBzZWxmLT5sb2NrID0gUHlUaHJlYWRfYWxsb2NhdGVfbG9jaygpOwotICAgIGlmICghc2VsZi0+bG9jaykgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfTWVtb3J5RXJyb3IsICJ1bmFibGUgdG8gYWxsb2NhdGUgbG9jayIpOwotICAgICAgICBnb3RvIGVycm9yOwotICAgIH0KLSNlbmRpZgotCi0gICAgbWVtc2V0KCZzZWxmLT5ienMsIDAsIHNpemVvZihiel9zdHJlYW0pKTsKLSAgICBiemVycm9yID0gQloyX2J6Q29tcHJlc3NJbml0KCZzZWxmLT5ienMsIGNvbXByZXNzbGV2ZWwsIDAsIDApOwotICAgIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICBzZWxmLT5ydW5uaW5nID0gMTsKLQotICAgIHJldHVybiAwOwotZXJyb3I6Ci0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBpZiAoc2VsZi0+bG9jaykgewotICAgICAgICBQeVRocmVhZF9mcmVlX2xvY2soc2VsZi0+bG9jayk7Ci0gICAgICAgIHNlbGYtPmxvY2sgPSBOVUxMOwotICAgIH0KLSNlbmRpZgotICAgIHJldHVybiAtMTsKLX0KLQotc3RhdGljIHZvaWQKLUJaMkNvbXBfZGVhbGxvYyhCWjJDb21wT2JqZWN0ICpzZWxmKQotewotI2lmZGVmIFdJVEhfVEhSRUFECi0gICAgaWYgKHNlbGYtPmxvY2spCi0gICAgICAgIFB5VGhyZWFkX2ZyZWVfbG9jayhzZWxmLT5sb2NrKTsKLSNlbmRpZgotICAgIEJaMl9iekNvbXByZXNzRW5kKCZzZWxmLT5ienMpOwotICAgIFB5X1RZUEUoc2VsZiktPnRwX2ZyZWUoKFB5T2JqZWN0ICopc2VsZik7Ci19Ci0KLQotLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCi0vKiBCWjJDb21wX1R5cGUgZGVmaW5pdGlvbi4gKi8KLQotUHlEb2NfU1RSVkFSKEJaMkNvbXBfX2RvY19fLAotIkJaMkNvbXByZXNzb3IoW2NvbXByZXNzbGV2ZWw9OV0pIC0+IGNvbXByZXNzb3Igb2JqZWN0XG5cCi1cblwKLUNyZWF0ZSBhIG5ldyBjb21wcmVzc29yIG9iamVjdC4gVGhpcyBvYmplY3QgbWF5IGJlIHVzZWQgdG8gY29tcHJlc3NcblwKLWRhdGEgc2VxdWVudGlhbGx5LiBJZiB5b3Ugd2FudCB0byBjb21wcmVzcyBkYXRhIGluIG9uZSBzaG90LCB1c2UgdGhlXG5cCi1jb21wcmVzcygpIGZ1bmN0aW9uIGluc3RlYWQuIFRoZSBjb21wcmVzc2xldmVsIHBhcmFtZXRlciwgaWYgZ2l2ZW4sXG5cCi1tdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMSBhbmQgOS5cblwKLSIpOwotCi1zdGF0aWMgUHlUeXBlT2JqZWN0IEJaMkNvbXBfVHlwZSA9IHsKLSAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoTlVMTCwgMCkKLSAgICAiYnoyLkJaMkNvbXByZXNzb3IiLCAgICAgICAgLyp0cF9uYW1lKi8KLSAgICBzaXplb2YoQloyQ29tcE9iamVjdCksICAgICAgLyp0cF9iYXNpY3NpemUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2l0ZW1zaXplKi8KLSAgICAoZGVzdHJ1Y3RvcilCWjJDb21wX2RlYWxsb2MsIC8qdHBfZGVhbGxvYyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcHJpbnQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2dldGF0dHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3NldGF0dHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3Jlc2VydmVkKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9yZXByKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19udW1iZXIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX3NlcXVlbmNlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19tYXBwaW5nKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9oYXNoKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2NhbGwqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc3RyKi8KLSAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwvKnRwX2dldGF0dHJvKi8KLSAgICBQeU9iamVjdF9HZW5lcmljU2V0QXR0ciwvKnRwX3NldGF0dHJvKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX2J1ZmZlciovCi0gICAgUHlfVFBGTEFHU19ERUZBVUxUfFB5X1RQRkxBR1NfQkFTRVRZUEUsIC8qdHBfZmxhZ3MqLwotICAgIEJaMkNvbXBfX2RvY19fLCAgICAgICAgIC8qdHBfZG9jKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX3RyYXZlcnNlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2NsZWFyKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX3JpY2hjb21wYXJlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX3dlYWtsaXN0b2Zmc2V0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2l0ZXIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlcm5leHQqLwotICAgIEJaMkNvbXBfbWV0aG9kcywgICAgICAgIC8qdHBfbWV0aG9kcyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9tZW1iZXJzKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2dldHNldCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9iYXNlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2RpY3QqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGVzY3JfZ2V0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2Rlc2NyX3NldCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9kaWN0b2Zmc2V0Ki8KLSAgICAoaW5pdHByb2MpQloyQ29tcF9pbml0LCAvKnRwX2luaXQqLwotICAgIFB5VHlwZV9HZW5lcmljQWxsb2MsICAgIC8qdHBfYWxsb2MqLwotICAgIFB5VHlwZV9HZW5lcmljTmV3LCAgICAgIC8qdHBfbmV3Ki8KLSAgICBQeU9iamVjdF9GcmVlLCAgICAgICAgICAvKnRwX2ZyZWUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXNfZ2MqLwotfTsKLQotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIE1lbWJlcnMgb2YgQloyRGVjb21wLiAqLwotCi0jdW5kZWYgT0ZGCi0jZGVmaW5lIE9GRih4KSBvZmZzZXRvZihCWjJEZWNvbXBPYmplY3QsIHgpCi0KLXN0YXRpYyBQeU1lbWJlckRlZiBCWjJEZWNvbXBfbWVtYmVyc1tdID0gewotICAgIHsidW51c2VkX2RhdGEiLCBUX09CSkVDVCwgT0ZGKHVudXNlZF9kYXRhKSwgUkVBRE9OTFl9LAotICAgIHtOVUxMfSAgICAgIC8qIFNlbnRpbmVsICovCi19OwotCi0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogTWV0aG9kcyBvZiBCWjJEZWNvbXAuICovCi0KLVB5RG9jX1NUUlZBUihCWjJEZWNvbXBfZGVjb21wcmVzc19fZG9jX18sCi0iZGVjb21wcmVzcyhkYXRhKSAtPiBzdHJpbmdcblwKLVxuXAotUHJvdmlkZSBtb3JlIGRhdGEgdG8gdGhlIGRlY29tcHJlc3NvciBvYmplY3QuIEl0IHdpbGwgcmV0dXJuIGNodW5rc1xuXAotb2YgZGVjb21wcmVzc2VkIGRhdGEgd2hlbmV2ZXIgcG9zc2libGUuIElmIHlvdSB0cnkgdG8gZGVjb21wcmVzcyBkYXRhXG5cCi1hZnRlciB0aGUgZW5kIG9mIHN0cmVhbSBpcyBmb3VuZCwgRU9GRXJyb3Igd2lsbCBiZSByYWlzZWQuIElmIGFueSBkYXRhXG5cCi13YXMgZm91bmQgYWZ0ZXIgdGhlIGVuZCBvZiBzdHJlYW0sIGl0J2xsIGJlIGlnbm9yZWQgYW5kIHNhdmVkIGluXG5cCi11bnVzZWRfZGF0YSBhdHRyaWJ1dGUuXG5cCi0iKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkRlY29tcF9kZWNvbXByZXNzKEJaMkRlY29tcE9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgUHlfYnVmZmVyIHBkYXRhOwotICAgIGNoYXIgKmRhdGE7Ci0gICAgaW50IGRhdGFzaXplOwotICAgIGludCBidWZzaXplID0gU01BTExDSFVOSzsKLSAgICBQWV9MT05HX0xPTkcgdG90YWxvdXQ7Ci0gICAgUHlPYmplY3QgKnJldCA9IE5VTEw7Ci0gICAgYnpfc3RyZWFtICpienMgPSAmc2VsZi0+YnpzOwotICAgIGludCBiemVycm9yOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5KjpkZWNvbXByZXNzIiwgJnBkYXRhKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZGF0YSA9IHBkYXRhLmJ1ZjsKLSAgICBkYXRhc2l6ZSA9IHBkYXRhLmxlbjsKLQotICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKLSAgICBpZiAoIXNlbGYtPnJ1bm5pbmcpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0VPRkVycm9yLCAiZW5kIG9mIHN0cmVhbSB3YXMgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbHJlYWR5IGZvdW5kIik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotCi0gICAgcmV0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBidWZzaXplKTsKLSAgICBpZiAoIXJldCkKLSAgICAgICAgZ290byBlcnJvcjsKLQotICAgIGJ6cy0+bmV4dF9pbiA9IGRhdGE7Ci0gICAgYnpzLT5hdmFpbF9pbiA9IGRhdGFzaXplOwotICAgIGJ6cy0+bmV4dF9vdXQgPSBCVUYocmV0KTsKLSAgICBienMtPmF2YWlsX291dCA9IGJ1ZnNpemU7Ci0KLSAgICB0b3RhbG91dCA9IEJaU19UT1RBTF9PVVQoYnpzKTsKLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBiemVycm9yID0gQloyX2J6RGVjb21wcmVzcyhienMpOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgICAgICBpZiAoYnplcnJvciA9PSBCWl9TVFJFQU1fRU5EKSB7Ci0gICAgICAgICAgICBpZiAoYnpzLT5hdmFpbF9pbiAhPSAwKSB7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKHNlbGYtPnVudXNlZF9kYXRhKTsKLSAgICAgICAgICAgICAgICBzZWxmLT51bnVzZWRfZGF0YSA9Ci0gICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoYnpzLT5uZXh0X2luLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBienMtPmF2YWlsX2luKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHNlbGYtPnJ1bm5pbmcgPSAwOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGJ6cy0+YXZhaWxfaW4gPT0gMCkKLSAgICAgICAgICAgIGJyZWFrOyAvKiBubyBtb3JlIGlucHV0IGRhdGEgKi8KLSAgICAgICAgaWYgKGJ6cy0+YXZhaWxfb3V0ID09IDApIHsKLSAgICAgICAgICAgIGJ1ZnNpemUgPSBVdGlsX05ld0J1ZmZlclNpemUoYnVmc2l6ZSk7Ci0gICAgICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXQsIGJ1ZnNpemUpIDwgMCkgewotICAgICAgICAgICAgICAgIEJaMl9iekRlY29tcHJlc3NFbmQoYnpzKTsKLSAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpOwotICAgICAgICAgICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpICsgKEJaU19UT1RBTF9PVVQoYnpzKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gdG90YWxvdXQpOwotICAgICAgICAgICAgYnpzLT5hdmFpbF9vdXQgPSBidWZzaXplIC0gKGJ6cy0+bmV4dF9vdXQgLSBCVUYocmV0KSk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAoYnpzLT5hdmFpbF9vdXQgIT0gMCkgewotICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXQsCi0gICAgICAgICAgICAgICAgICAgIChQeV9zc2l6ZV90KShCWlNfVE9UQUxfT1VUKGJ6cykgLSB0b3RhbG91dCkpIDwgMCkKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotCi0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICByZXR1cm4gcmV0OwotCi1lcnJvcjoKLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgIFB5X1hERUNSRUYocmV0KTsKLSAgICByZXR1cm4gTlVMTDsKLX0KLQotc3RhdGljIFB5TWV0aG9kRGVmIEJaMkRlY29tcF9tZXRob2RzW10gPSB7Ci0gICAgeyJkZWNvbXByZXNzIiwgKFB5Q0Z1bmN0aW9uKUJaMkRlY29tcF9kZWNvbXByZXNzLCBNRVRIX1ZBUkFSR1MsIEJaMkRlY29tcF9kZWNvbXByZXNzX19kb2NfX30sCi0gICAge05VTEwsICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KLX07Ci0KLQotLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCi0vKiBTbG90IGRlZmluaXRpb25zIGZvciBCWjJEZWNvbXBfVHlwZS4gKi8KLQotc3RhdGljIGludAotQloyRGVjb21wX2luaXQoQloyRGVjb21wT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKLXsKLSAgICBpbnQgYnplcnJvcjsKLQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiOkJaMkRlY29tcHJlc3NvciIpKQotICAgICAgICByZXR1cm4gLTE7Ci0KLSNpZmRlZiBXSVRIX1RIUkVBRAotICAgIHNlbGYtPmxvY2sgPSBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKCk7Ci0gICAgaWYgKCFzZWxmLT5sb2NrKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19NZW1vcnlFcnJvciwgInVuYWJsZSB0byBhbGxvY2F0ZSBsb2NrIik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotI2VuZGlmCi0KLSAgICBzZWxmLT51bnVzZWRfZGF0YSA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoIiIsIDApOwotICAgIGlmICghc2VsZi0+dW51c2VkX2RhdGEpCi0gICAgICAgIGdvdG8gZXJyb3I7Ci0KLSAgICBtZW1zZXQoJnNlbGYtPmJ6cywgMCwgc2l6ZW9mKGJ6X3N0cmVhbSkpOwotICAgIGJ6ZXJyb3IgPSBCWjJfYnpEZWNvbXByZXNzSW5pdCgmc2VsZi0+YnpzLCAwLCAwKTsKLSAgICBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotCi0gICAgc2VsZi0+cnVubmluZyA9IDE7Ci0KLSAgICByZXR1cm4gMDsKLQotZXJyb3I6Ci0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBpZiAoc2VsZi0+bG9jaykgewotICAgICAgICBQeVRocmVhZF9mcmVlX2xvY2soc2VsZi0+bG9jayk7Ci0gICAgICAgIHNlbGYtPmxvY2sgPSBOVUxMOwotICAgIH0KLSNlbmRpZgotICAgIFB5X0NMRUFSKHNlbGYtPnVudXNlZF9kYXRhKTsKLSAgICByZXR1cm4gLTE7Ci19Ci0KLXN0YXRpYyB2b2lkCi1CWjJEZWNvbXBfZGVhbGxvYyhCWjJEZWNvbXBPYmplY3QgKnNlbGYpCi17Ci0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBpZiAoc2VsZi0+bG9jaykKLSAgICAgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHNlbGYtPmxvY2spOwotI2VuZGlmCi0gICAgUHlfWERFQ1JFRihzZWxmLT51bnVzZWRfZGF0YSk7Ci0gICAgQloyX2J6RGVjb21wcmVzc0VuZCgmc2VsZi0+YnpzKTsKLSAgICBQeV9UWVBFKHNlbGYpLT50cF9mcmVlKChQeU9iamVjdCAqKXNlbGYpOwotfQotCi0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogQloyRGVjb21wX1R5cGUgZGVmaW5pdGlvbi4gKi8KLQotUHlEb2NfU1RSVkFSKEJaMkRlY29tcF9fZG9jX18sCi0iQloyRGVjb21wcmVzc29yKCkgLT4gZGVjb21wcmVzc29yIG9iamVjdFxuXAotXG5cCi1DcmVhdGUgYSBuZXcgZGVjb21wcmVzc29yIG9iamVjdC4gVGhpcyBvYmplY3QgbWF5IGJlIHVzZWQgdG8gZGVjb21wcmVzc1xuXAotZGF0YSBzZXF1ZW50aWFsbHkuIElmIHlvdSB3YW50IHRvIGRlY29tcHJlc3MgZGF0YSBpbiBvbmUgc2hvdCwgdXNlIHRoZVxuXAotZGVjb21wcmVzcygpIGZ1bmN0aW9uIGluc3RlYWQuXG5cCi0iKTsKLQotc3RhdGljIFB5VHlwZU9iamVjdCBCWjJEZWNvbXBfVHlwZSA9IHsKLSAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoTlVMTCwgMCkKLSAgICAiYnoyLkJaMkRlY29tcHJlc3NvciIsICAgICAgLyp0cF9uYW1lKi8KLSAgICBzaXplb2YoQloyRGVjb21wT2JqZWN0KSwgLyp0cF9iYXNpY3NpemUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2l0ZW1zaXplKi8KLSAgICAoZGVzdHJ1Y3RvcilCWjJEZWNvbXBfZGVhbGxvYywgLyp0cF9kZWFsbG9jKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9wcmludCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0YXR0ciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc2V0YXR0ciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmVzZXJ2ZWQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3JlcHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX251bWJlciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfc2VxdWVuY2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX21hcHBpbmcqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2hhc2gqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfY2FsbCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9zdHIqLwotICAgIFB5T2JqZWN0X0dlbmVyaWNHZXRBdHRyLC8qdHBfZ2V0YXR0cm8qLwotICAgIFB5T2JqZWN0X0dlbmVyaWNTZXRBdHRyLC8qdHBfc2V0YXR0cm8qLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfYnVmZmVyKi8KLSAgICBQeV9UUEZMQUdTX0RFRkFVTFR8UHlfVFBGTEFHU19CQVNFVFlQRSwgLyp0cF9mbGFncyovCi0gICAgQloyRGVjb21wX19kb2NfXywgICAgICAgLyp0cF9kb2MqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfdHJhdmVyc2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfY2xlYXIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmljaGNvbXBhcmUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfd2Vha2xpc3RvZmZzZXQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9pdGVybmV4dCovCi0gICAgQloyRGVjb21wX21ldGhvZHMsICAgICAgLyp0cF9tZXRob2RzKi8KLSAgICBCWjJEZWNvbXBfbWVtYmVycywgICAgICAvKnRwX21lbWJlcnMqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0c2V0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2Jhc2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGljdCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9kZXNjcl9nZXQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGVzY3Jfc2V0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2RpY3RvZmZzZXQqLwotICAgIChpbml0cHJvYylCWjJEZWNvbXBfaW5pdCwgLyp0cF9pbml0Ki8KLSAgICBQeVR5cGVfR2VuZXJpY0FsbG9jLCAgICAvKnRwX2FsbG9jKi8KLSAgICBQeVR5cGVfR2VuZXJpY05ldywgICAgICAvKnRwX25ldyovCi0gICAgUHlPYmplY3RfRnJlZSwgICAgICAgICAgLyp0cF9mcmVlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2lzX2djKi8KLX07Ci0KLQotLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCi0vKiBNb2R1bGUgZnVuY3Rpb25zLiAqLwotCi1QeURvY19TVFJWQVIoYnoyX2NvbXByZXNzX19kb2NfXywKLSJjb21wcmVzcyhkYXRhIFssIGNvbXByZXNzbGV2ZWw9OV0pIC0+IHN0cmluZ1xuXAotXG5cCi1Db21wcmVzcyBkYXRhIGluIG9uZSBzaG90LiBJZiB5b3Ugd2FudCB0byBjb21wcmVzcyBkYXRhIHNlcXVlbnRpYWxseSxcblwKLXVzZSBhbiBpbnN0YW5jZSBvZiBCWjJDb21wcmVzc29yIGluc3RlYWQuIFRoZSBjb21wcmVzc2xldmVsIHBhcmFtZXRlciwgaWZcblwKLWdpdmVuLCBtdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMSBhbmQgOS5cblwKLSIpOwotCi1zdGF0aWMgUHlPYmplY3QgKgotYnoyX2NvbXByZXNzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKLXsKLSAgICBpbnQgY29tcHJlc3NsZXZlbD05OwotICAgIFB5X2J1ZmZlciBwZGF0YTsKLSAgICBjaGFyICpkYXRhOwotICAgIGludCBkYXRhc2l6ZTsKLSAgICBpbnQgYnVmc2l6ZTsKLSAgICBQeU9iamVjdCAqcmV0ID0gTlVMTDsKLSAgICBiel9zdHJlYW0gX2J6czsKLSAgICBiel9zdHJlYW0gKmJ6cyA9ICZfYnpzOwotICAgIGludCBiemVycm9yOwotICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiZGF0YSIsICJjb21wcmVzc2xldmVsIiwgMH07Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsICJ5KnxpIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZwZGF0YSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY29tcHJlc3NsZXZlbCkpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGRhdGEgPSBwZGF0YS5idWY7Ci0gICAgZGF0YXNpemUgPSBwZGF0YS5sZW47Ci0KLSAgICBpZiAoY29tcHJlc3NsZXZlbCA8IDEgfHwgY29tcHJlc3NsZXZlbCA+IDkpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiY29tcHJlc3NsZXZlbCBtdXN0IGJlIGJldHdlZW4gMSBhbmQgOSIpOwotICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQotICAgIC8qIENvbmZvcm1pbmcgdG8gYnoyIG1hbnVhbCwgdGhpcyBpcyBsYXJnZSBlbm91Z2ggdG8gZml0IGNvbXByZXNzZWQKLSAgICAgKiBkYXRhIGluIG9uZSBzaG90LiBXZSB3aWxsIGNoZWNrIGl0IGxhdGVyIGFueXdheS4gKi8KLSAgICBidWZzaXplID0gZGF0YXNpemUgKyAoZGF0YXNpemUvMTAwKzEpICsgNjAwOwotCi0gICAgcmV0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBidWZzaXplKTsKLSAgICBpZiAoIXJldCkgewotICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQotICAgIG1lbXNldChienMsIDAsIHNpemVvZihiel9zdHJlYW0pKTsKLQotICAgIGJ6cy0+bmV4dF9pbiA9IGRhdGE7Ci0gICAgYnpzLT5hdmFpbF9pbiA9IGRhdGFzaXplOwotICAgIGJ6cy0+bmV4dF9vdXQgPSBCVUYocmV0KTsKLSAgICBienMtPmF2YWlsX291dCA9IGJ1ZnNpemU7Ci0KLSAgICBiemVycm9yID0gQloyX2J6Q29tcHJlc3NJbml0KGJ6cywgY29tcHJlc3NsZXZlbCwgMCwgMCk7Ci0gICAgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgICAgIFB5X0RFQ1JFRihyZXQpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KLSAgICBmb3IgKDs7KSB7Ci0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgYnplcnJvciA9IEJaMl9iekNvbXByZXNzKGJ6cywgQlpfRklOSVNIKTsKLSAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgaWYgKGJ6ZXJyb3IgPT0gQlpfU1RSRUFNX0VORCkgewotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0gZWxzZSBpZiAoYnplcnJvciAhPSBCWl9GSU5JU0hfT0spIHsKLSAgICAgICAgICAgIEJaMl9iekNvbXByZXNzRW5kKGJ6cyk7Ci0gICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmV0KTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIGlmIChienMtPmF2YWlsX291dCA9PSAwKSB7Ci0gICAgICAgICAgICBidWZzaXplID0gVXRpbF9OZXdCdWZmZXJTaXplKGJ1ZnNpemUpOwotICAgICAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmV0LCBidWZzaXplKSA8IDApIHsKLSAgICAgICAgICAgICAgICBCWjJfYnpDb21wcmVzc0VuZChienMpOwotICAgICAgICAgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGJ6cy0+bmV4dF9vdXQgPSBCVUYocmV0KSArIEJaU19UT1RBTF9PVVQoYnpzKTsKLSAgICAgICAgICAgIGJ6cy0+YXZhaWxfb3V0ID0gYnVmc2l6ZSAtIChienMtPm5leHRfb3V0IC0gQlVGKHJldCkpOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKGJ6cy0+YXZhaWxfb3V0ICE9IDApIHsKLSAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmV0LCAoUHlfc3NpemVfdClCWlNfVE9UQUxfT1VUKGJ6cykpIDwgMCkgewotICAgICAgICAgICAgcmV0ID0gTlVMTDsKLSAgICAgICAgfQotICAgIH0KLSAgICBCWjJfYnpDb21wcmVzc0VuZChienMpOwotCi0gICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgIHJldHVybiByZXQ7Ci19Ci0KLVB5RG9jX1NUUlZBUihiejJfZGVjb21wcmVzc19fZG9jX18sCi0iZGVjb21wcmVzcyhkYXRhKSAtPiBkZWNvbXByZXNzZWQgZGF0YVxuXAotXG5cCi1EZWNvbXByZXNzIGRhdGEgaW4gb25lIHNob3QuIElmIHlvdSB3YW50IHRvIGRlY29tcHJlc3MgZGF0YSBzZXF1ZW50aWFsbHksXG5cCi11c2UgYW4gaW5zdGFuY2Ugb2YgQloyRGVjb21wcmVzc29yIGluc3RlYWQuXG5cCi0iKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLWJ6Ml9kZWNvbXByZXNzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBQeV9idWZmZXIgcGRhdGE7Ci0gICAgY2hhciAqZGF0YTsKLSAgICBpbnQgZGF0YXNpemU7Ci0gICAgaW50IGJ1ZnNpemUgPSBTTUFMTENIVU5LOwotICAgIFB5T2JqZWN0ICpyZXQ7Ci0gICAgYnpfc3RyZWFtIF9ienM7Ci0gICAgYnpfc3RyZWFtICpienMgPSAmX2J6czsKLSAgICBpbnQgYnplcnJvcjsKLQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieSo6ZGVjb21wcmVzcyIsICZwZGF0YSkpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGRhdGEgPSBwZGF0YS5idWY7Ci0gICAgZGF0YXNpemUgPSBwZGF0YS5sZW47Ci0KLSAgICBpZiAoZGF0YXNpemUgPT0gMCkgewotICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKCIiLCAwKTsKLSAgICB9Ci0KLSAgICByZXQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGJ1ZnNpemUpOwotICAgIGlmICghcmV0KSB7Ci0gICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgbWVtc2V0KGJ6cywgMCwgc2l6ZW9mKGJ6X3N0cmVhbSkpOwotCi0gICAgYnpzLT5uZXh0X2luID0gZGF0YTsKLSAgICBienMtPmF2YWlsX2luID0gZGF0YXNpemU7Ci0gICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpOwotICAgIGJ6cy0+YXZhaWxfb3V0ID0gYnVmc2l6ZTsKLQotICAgIGJ6ZXJyb3IgPSBCWjJfYnpEZWNvbXByZXNzSW5pdChienMsIDAsIDApOwotICAgIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgUHlfREVDUkVGKHJldCk7Ci0gICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgZm9yICg7OykgewotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIGJ6ZXJyb3IgPSBCWjJfYnpEZWNvbXByZXNzKGJ6cyk7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgICAgIGlmIChiemVycm9yID09IEJaX1NUUkVBTV9FTkQpIHsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9IGVsc2UgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgICAgIEJaMl9iekRlY29tcHJlc3NFbmQoYnpzKTsKLSAgICAgICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXQpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGJ6cy0+YXZhaWxfaW4gPT0gMCkgewotICAgICAgICAgICAgQloyX2J6RGVjb21wcmVzc0VuZChienMpOwotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvdWxkbid0IGZpbmQgZW5kIG9mIHN0cmVhbSIpOwotICAgICAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgICAgICAgICAgUHlfREVDUkVGKHJldCk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBpZiAoYnpzLT5hdmFpbF9vdXQgPT0gMCkgewotICAgICAgICAgICAgYnVmc2l6ZSA9IFV0aWxfTmV3QnVmZmVyU2l6ZShidWZzaXplKTsKLSAgICAgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJldCwgYnVmc2l6ZSkgPCAwKSB7Ci0gICAgICAgICAgICAgICAgQloyX2J6RGVjb21wcmVzc0VuZChienMpOwotICAgICAgICAgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGJ6cy0+bmV4dF9vdXQgPSBCVUYocmV0KSArIEJaU19UT1RBTF9PVVQoYnpzKTsKLSAgICAgICAgICAgIGJ6cy0+YXZhaWxfb3V0ID0gYnVmc2l6ZSAtIChienMtPm5leHRfb3V0IC0gQlVGKHJldCkpOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKGJ6cy0+YXZhaWxfb3V0ICE9IDApIHsKLSAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmV0LCAoUHlfc3NpemVfdClCWlNfVE9UQUxfT1VUKGJ6cykpIDwgMCkgewotICAgICAgICAgICAgcmV0ID0gTlVMTDsKLSAgICAgICAgfQotICAgIH0KLSAgICBCWjJfYnpEZWNvbXByZXNzRW5kKGJ6cyk7Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotCi0gICAgcmV0dXJuIHJldDsKLX0KLQotc3RhdGljIFB5TWV0aG9kRGVmIGJ6Ml9tZXRob2RzW10gPSB7Ci0gICAgeyJjb21wcmVzcyIsIChQeUNGdW5jdGlvbikgYnoyX2NvbXByZXNzLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKLSAgICAgICAgYnoyX2NvbXByZXNzX19kb2NfX30sCi0gICAgeyJkZWNvbXByZXNzIiwgKFB5Q0Z1bmN0aW9uKSBiejJfZGVjb21wcmVzcywgTUVUSF9WQVJBUkdTLAotICAgICAgICBiejJfZGVjb21wcmVzc19fZG9jX199LAotICAgIHtOVUxMLCAgICAgICAgICAgICAgTlVMTH0gICAgICAgICAgIC8qIHNlbnRpbmVsICovCi19OwotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIEluaXRpYWxpemF0aW9uIGZ1bmN0aW9uLiAqLwotCi1QeURvY19TVFJWQVIoYnoyX19kb2NfXywKLSJUaGUgcHl0aG9uIGJ6MiBtb2R1bGUgcHJvdmlkZXMgYSBjb21wcmVoZW5zaXZlIGludGVyZmFjZSBmb3JcblwKLXRoZSBiejIgY29tcHJlc3Npb24gbGlicmFyeS4gSXQgaW1wbGVtZW50cyBhIGNvbXBsZXRlIGZpbGVcblwKLWludGVyZmFjZSwgb25lIHNob3QgKGRlKWNvbXByZXNzaW9uIGZ1bmN0aW9ucywgYW5kIHR5cGVzIGZvclxuXAotc2VxdWVudGlhbCAoZGUpY29tcHJlc3Npb24uXG5cCi0iKTsKLQotCi1zdGF0aWMgc3RydWN0IFB5TW9kdWxlRGVmIGJ6Mm1vZHVsZSA9IHsKLSAgICBQeU1vZHVsZURlZl9IRUFEX0lOSVQsCi0gICAgImJ6MiIsCi0gICAgYnoyX19kb2NfXywKLSAgICAtMSwKLSAgICBiejJfbWV0aG9kcywKLSAgICBOVUxMLAotICAgIE5VTEwsCi0gICAgTlVMTCwKLSAgICBOVUxMCi19OwotCi1QeU1PRElOSVRfRlVOQwotUHlJbml0X2J6Mih2b2lkKQotewotICAgIFB5T2JqZWN0ICptOwotCi0gICAgaWYgKFB5VHlwZV9SZWFkeSgmQloyRmlsZV9UeXBlKSA8IDApCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmIChQeVR5cGVfUmVhZHkoJkJaMkNvbXBfVHlwZSkgPCAwKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoUHlUeXBlX1JlYWR5KCZCWjJEZWNvbXBfVHlwZSkgPCAwKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIG0gPSBQeU1vZHVsZV9DcmVhdGUoJmJ6Mm1vZHVsZSk7Ci0gICAgaWYgKG0gPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgIl9fYXV0aG9yX18iLCBQeVVuaWNvZGVfRnJvbVN0cmluZyhfX2F1dGhvcl9fKSk7Ci0KLSAgICBQeV9JTkNSRUYoJkJaMkZpbGVfVHlwZSk7Ci0gICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJCWjJGaWxlIiwgKFB5T2JqZWN0ICopJkJaMkZpbGVfVHlwZSk7Ci0KLSAgICBQeV9JTkNSRUYoJkJaMkNvbXBfVHlwZSk7Ci0gICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJCWjJDb21wcmVzc29yIiwgKFB5T2JqZWN0ICopJkJaMkNvbXBfVHlwZSk7Ci0KLSAgICBQeV9JTkNSRUYoJkJaMkRlY29tcF9UeXBlKTsKLSAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgIkJaMkRlY29tcHJlc3NvciIsIChQeU9iamVjdCAqKSZCWjJEZWNvbXBfVHlwZSk7Ci0gICAgcmV0dXJuIG07Ci19CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2NuLmMgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2NuLmMKaW5kZXggYWI0ZTY1OS4uOWU5ZTk2YyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19jbi5jCisrKyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfY24uYwpAQCAtODUsNyArODUsNyBAQAogICAgICAgICBUUllNQVBfREVDKGdiMjMxMiwgKipvdXRidWYsIGMgXiAweDgwLCBJTjIgXiAweDgwKSB7CiAgICAgICAgICAgICBORVhUKDIsIDEpCiAgICAgICAgIH0KLSAgICAgICAgZWxzZSByZXR1cm4gMjsKKyAgICAgICAgZWxzZSByZXR1cm4gMTsKICAgICB9CiAKICAgICByZXR1cm4gMDsKQEAgLTE0MSw3ICsxNDEsNyBAQAogICAgICAgICBSRVFVSVJFX0lOQlVGKDIpCiAKICAgICAgICAgR0JLX0RFQ09ERShjLCBJTjIsICoqb3V0YnVmKQotICAgICAgICBlbHNlIHJldHVybiAyOworICAgICAgICBlbHNlIHJldHVybiAxOwogCiAgICAgICAgIE5FWFQoMiwgMSkKICAgICB9CkBAIC0yNjcsNyArMjY3LDcgQEAKICAgICAgICAgICAgIGMzID0gSU4zOwogICAgICAgICAgICAgYzQgPSBJTjQ7CiAgICAgICAgICAgICBpZiAoYyA8IDB4ODEgfHwgYzMgPCAweDgxIHx8IGM0IDwgMHgzMCB8fCBjNCA+IDB4MzkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDQ7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICBjIC09IDB4ODE7ICBjMiAtPSAweDMwOwogICAgICAgICAgICAgYzMgLT0gMHg4MTsgYzQgLT0gMHgzMDsKIApAQCAtMjkyLDEyICsyOTIsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotICAgICAgICAgICAgcmV0dXJuIDQ7CisgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQogCiAgICAgICAgIEdCS19ERUNPREUoYywgYzIsICoqb3V0YnVmKQogICAgICAgICBlbHNlIFRSWU1BUF9ERUMoZ2IxODAzMGV4dCwgKipvdXRidWYsIGMsIGMyKTsKLSAgICAgICAgZWxzZSByZXR1cm4gMjsKKyAgICAgICAgZWxzZSByZXR1cm4gMTsKIAogICAgICAgICBORVhUKDIsIDEpCiAgICAgfQpAQCAtNDAwLDcgKzQwMCw3IEBACiAgICAgICAgICAgICBlbHNlIGlmIChjMiA9PSAnXG4nKQogICAgICAgICAgICAgICAgIDsgLyogbGluZS1jb250aW51YXRpb24gKi8KICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgIE5FWFQoMiwgMCk7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQpAQCAtNDE5LDcgKzQxOSw3IEBACiAgICAgICAgICAgICAgICAgTkVYVCgyLCAxKQogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9CiAgICAgfQogCmRpZmYgLS1naXQgYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2hrLmMgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2hrLmMKaW5kZXggNTU4YTQyZi4uZDNhZDA0YiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19oay5jCisrKyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfaGsuYwpAQCAtMTYxLDcgKzE2MSw3IEBACiAgICAgICAgIGNhc2UgMHg4ODY0OiBXUklURTIoMHgwMGNhLCAweDAzMGMpOyBicmVhazsKICAgICAgICAgY2FzZSAweDg4YTM6IFdSSVRFMigweDAwZWEsIDB4MDMwNCk7IGJyZWFrOwogICAgICAgICBjYXNlIDB4ODhhNTogV1JJVEUyKDB4MDBlYSwgMHgwMzBjKTsgYnJlYWs7Ci0gICAgICAgIGRlZmF1bHQ6IHJldHVybiAyOworICAgICAgICBkZWZhdWx0OiByZXR1cm4gMTsKICAgICAgICAgfQogCiAgICAgICAgIE5FWFQoMiwgMikgLyogYWxsIGRlY29kZWQgY29kZXBvaW50cyBhcmUgcGFpcnMsIGFib3ZlLiAqLwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19pc28yMDIyLmMgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2lzbzIwMjIuYwppbmRleCAyNWMxYTM2Li5jYmMxNTQyIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2lzbzIwMjIuYworKysgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2lzbzIwMjIuYwpAQCAtMTIzLDcgKzEyMyw3IEBACiAKIENPREVDX0lOSVQoaXNvMjAyMikKIHsKLSAgICBjb25zdCBzdHJ1Y3QgaXNvMjAyMl9kZXNpZ25hdGlvbiAqZGVzaWcgPSBDT05GSUdfREVTSUdOQVRJT05TOworICAgIGNvbnN0IHN0cnVjdCBpc28yMDIyX2Rlc2lnbmF0aW9uICpkZXNpZzsKICAgICBmb3IgKGRlc2lnID0gQ09ORklHX0RFU0lHTkFUSU9OUzsgZGVzaWctPm1hcms7IGRlc2lnKyspCiAgICAgICAgIGlmIChkZXNpZy0+aW5pdGlhbGl6ZXIgIT0gTlVMTCAmJiBkZXNpZy0+aW5pdGlhbGl6ZXIoKSAhPSAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19qcC5jIGIvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19qcC5jCmluZGV4IGEwNWUwMWIuLmE1MDA2OTYgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfanAuYworKysgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2pwLmMKQEAgLTExMiw3ICsxMTIsNyBAQAogICAgICAgICBUUllNQVBfREVDKGNwOTMyZXh0LCAqKm91dGJ1ZiwgYywgYzIpOwogICAgICAgICBlbHNlIGlmICgoYyA+PSAweDgxICYmIGMgPD0gMHg5ZikgfHwgKGMgPj0gMHhlMCAmJiBjIDw9IDB4ZWEpKXsKICAgICAgICAgICAgIGlmIChjMiA8IDB4NDAgfHwgKGMyID4gMHg3ZSAmJiBjMiA8IDB4ODApIHx8IGMyID4gMHhmYykKLSAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKIAogICAgICAgICAgICAgYyA9IChjIDwgMHhlMCA/IGMgLSAweDgxIDogYyAtIDB4YzEpOwogICAgICAgICAgICAgYzIgPSAoYzIgPCAweDgwID8gYzIgLSAweDQwIDogYzIgLSAweDQxKTsKQEAgLTEyMCw3ICsxMjAsNyBAQAogICAgICAgICAgICAgYzIgPSAoYzIgPCAweDVlID8gYzIgOiBjMiAtIDB4NWUpICsgMHgyMTsKIAogICAgICAgICAgICAgVFJZTUFQX0RFQyhqaXN4MDIwOCwgKipvdXRidWYsIGMsIGMyKTsKLSAgICAgICAgICAgIGVsc2UgcmV0dXJuIDI7CisgICAgICAgICAgICBlbHNlIHJldHVybiAxOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKGMgPj0gMHhmMCAmJiBjIDw9IDB4ZjkpIHsKICAgICAgICAgICAgIGlmICgoYzIgPj0gMHg0MCAmJiBjMiA8PSAweDdlKSB8fApAQCAtMTI4LDEwICsxMjgsMTAgQEAKICAgICAgICAgICAgICAgICBPVVQxKDB4ZTAwMCArIDE4OCAqIChjIC0gMHhmMCkgKwogICAgICAgICAgICAgICAgICAgICAgKGMyIDwgMHg4MCA/IGMyIC0gMHg0MCA6IGMyIC0gMHg0MSkpCiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgIH0KICAgICAgICAgZWxzZQotICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICByZXR1cm4gMTsKIAogICAgICAgICBORVhUKDIsIDEpCiAgICAgfQpAQCAtMjU2LDcgKzI1Niw3IEBACiAgICAgICAgICAgICAgICAgTkVYVCgyLCAxKQogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKGMgPT0gMHg4ZikgewogICAgICAgICAgICAgdW5zaWduZWQgY2hhciBjMiwgYzM7CkBAIC0yNzQsNyArMjc0LDcgQEAKICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UgVFJZTUFQX0RFQyhqaXN4MDIxMiwgKipvdXRidWYsIGMyLCBjMykgOwotICAgICAgICAgICAgZWxzZSByZXR1cm4gMzsKKyAgICAgICAgICAgIGVsc2UgcmV0dXJuIDE7CiAgICAgICAgICAgICBORVhUKDMsIDEpCiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CkBAIC0zMDAsNyArMzAwLDcgQEAKICAgICAgICAgICAgICAgICBORVhUKDIsIDIpCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIHJldHVybiAyOworICAgICAgICAgICAgZWxzZSByZXR1cm4gMTsKICAgICAgICAgICAgIE5FWFQoMiwgMSkKICAgICAgICAgfQogICAgIH0KQEAgLTM4OCw3ICszODgsNyBAQAogICAgICAgICAgICAgICAgIE5FWFQoMiwgMSkKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQogICAgICAgICBlbHNlIGlmIChjID09IDB4OGYpIHsKICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgYzIsIGMzOwpAQCAtNDAxLDcgKzQwMSw3IEBACiAgICAgICAgICAgICAgICAgTkVYVCgzLCAxKQogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJldHVybiAzOworICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgdW5zaWduZWQgY2hhciBjMjsKQEAgLTQxNyw3ICs0MTcsNyBAQAogI2VuZGlmCiAgICAgICAgICAgICAgICAgVFJZTUFQX0RFQyhqaXN4MDIwOCwgKipvdXRidWYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjIF4gMHg4MCwgYzIgXiAweDgwKSA7Ci0gICAgICAgICAgICBlbHNlIHJldHVybiAyOworICAgICAgICAgICAgZWxzZSByZXR1cm4gMTsKICAgICAgICAgICAgIE5FWFQoMiwgMSkKICAgICAgICAgfQogICAgIH0KQEAgLTUwMiw3ICs1MDIsNyBAQAogICAgICAgICAgICAgUkVRVUlSRV9JTkJVRigyKQogICAgICAgICAgICAgYzIgPSBJTjI7CiAgICAgICAgICAgICBpZiAoYzIgPCAweDQwIHx8IChjMiA+IDB4N2UgJiYgYzIgPCAweDgwKSB8fCBjMiA+IDB4ZmMpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAKICAgICAgICAgICAgIGMxID0gKGMgPCAweGUwID8gYyAtIDB4ODEgOiBjIC0gMHhjMSk7CiAgICAgICAgICAgICBjMiA9IChjMiA8IDB4ODAgPyBjMiAtIDB4NDAgOiBjMiAtIDB4NDEpOwpAQCAtNTIyLDEwICs1MjIsMTAgQEAKICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQogICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgIHJldHVybiAxOwogCiAgICAgICAgIE5FWFQoMSwgMSkgLyogSklTIFggMDIwMSAqLwogICAgIH0KQEAgLTY0NSw3ICs2NDUsNyBAQAogICAgICAgICAgICAgUkVRVUlSRV9JTkJVRigyKQogICAgICAgICAgICAgYzIgPSBJTjI7CiAgICAgICAgICAgICBpZiAoYzIgPCAweDQwIHx8IChjMiA+IDB4N2UgJiYgYzIgPCAweDgwKSB8fCBjMiA+IDB4ZmMpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAKICAgICAgICAgICAgIGMxID0gKGMgPCAweGUwID8gYyAtIDB4ODEgOiBjIC0gMHhjMSk7CiAgICAgICAgICAgICBjMiA9IChjMiA8IDB4ODAgPyBjMiAtIDB4NDAgOiBjMiAtIDB4NDEpOwpAQCAtNjcxLDcgKzY3MSw3IEBACiAgICAgICAgICAgICAgICAgICAgIE5FWFRfT1VUKDIpCiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIE5FWFRfSU4oMikKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UgeyAvKiBQbGFuZSAyICovCkBAIC02ODksMTMgKzY4OSwxMyBAQAogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgTkVYVCgyLCAxKQogICAgICAgICAgICAgfQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KICAgICAgICAgZWxzZQotICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICByZXR1cm4gMTsKIAogICAgICAgICBORVhUKDEsIDEpIC8qIEpJUyBYIDAyMDEgKi8KICAgICB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2tyLmMgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2tyLmMKaW5kZXggOTI3MmUzNi4uZjU2OTdkZCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19rci5jCisrKyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3Nfa3IuYwpAQCAtMTIzLDcgKzEyMyw3IEBACiAgICAgICAgICAgICBpZiAoKCppbmJ1ZilbMl0gIT0gRVVDS1JfSkFNT19GSVJTVEJZVEUgfHwKICAgICAgICAgICAgICAgICAoKmluYnVmKVs0XSAhPSBFVUNLUl9KQU1PX0ZJUlNUQllURSB8fAogICAgICAgICAgICAgICAgICgqaW5idWYpWzZdICE9IEVVQ0tSX0pBTU9fRklSU1RCWVRFKQotICAgICAgICAgICAgICAgIHJldHVybiA4OworICAgICAgICAgICAgICAgIHJldHVybiAxOwogCiAgICAgICAgICAgICBjID0gKCppbmJ1ZilbM107CiAgICAgICAgICAgICBpZiAoMHhhMSA8PSBjICYmIGMgPD0gMHhiZSkKQEAgLTE0Myw3ICsxNDMsNyBAQAogICAgICAgICAgICAgICAgIGpvbmcgPSBOT05FOwogCiAgICAgICAgICAgICBpZiAoY2hvID09IE5PTkUgfHwganVuZyA9PSBOT05FIHx8IGpvbmcgPT0gTk9ORSkKLSAgICAgICAgICAgICAgICByZXR1cm4gODsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKIAogICAgICAgICAgICAgT1VUMSgweGFjMDAgKyBjaG8qNTg4ICsganVuZyoyOCArIGpvbmcpOwogICAgICAgICAgICAgTkVYVCg4LCAxKQpAQCAtMTUyLDcgKzE1Miw3IEBACiAgICAgICAgICAgICBORVhUKDIsIDEpCiAgICAgICAgIH0KICAgICAgICAgZWxzZQotICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICByZXR1cm4gMTsKICAgICB9CiAKICAgICByZXR1cm4gMDsKQEAgLTIwOCw3ICsyMDgsNyBAQAogICAgICAgICBSRVFVSVJFX0lOQlVGKDIpCiAgICAgICAgIFRSWU1BUF9ERUMoa3N4MTAwMSwgKipvdXRidWYsIGMgXiAweDgwLCBJTjIgXiAweDgwKTsKICAgICAgICAgZWxzZSBUUllNQVBfREVDKGNwOTQ5ZXh0LCAqKm91dGJ1ZiwgYywgSU4yKTsKLSAgICAgICAgZWxzZSByZXR1cm4gMjsKKyAgICAgICAgZWxzZSByZXR1cm4gMTsKIAogICAgICAgICBORVhUKDIsIDEpCiAgICAgfQpAQCAtMzc1LDcgKzM3NSw3IEBACiAgICAgICAgICAgICBpX2pvbmcgPSBqb2hhYmlkeF9qb25nc2VvbmdbY19qb25nXTsKIAogICAgICAgICAgICAgaWYgKGlfY2hvID09IE5PTkUgfHwgaV9qdW5nID09IE5PTkUgfHwgaV9qb25nID09IE5PTkUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAKICAgICAgICAgICAgIC8qIHdlIGRvbid0IHVzZSBVKzExMDAgaGFuZ3VsIGphbW8geWV0LiAqLwogICAgICAgICAgICAgaWYgKGlfY2hvID09IEZJTEwpIHsKQEAgLTM5MSw3ICszOTEsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgT1VUMSgweDMxMDAgfAogICAgICAgICAgICAgICAgICAgICAgICAgICBqb2hhYmphbW9fanVuZ3Nlb25nW2NfanVuZ10pCiAgICAgICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBpZiAoaV9qdW5nID09IEZJTEwpIHsKQEAgLTM5OSw3ICszOTksNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgT1VUMSgweDMxMDAgfAogICAgICAgICAgICAgICAgICAgICAgICAgICBqb2hhYmphbW9fY2hvc2VvbmdbY19jaG9dKQogICAgICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgIE9VVDEoMHhhYzAwICsKQEAgLTQxNCw3ICs0MTQsNyBAQAogICAgICAgICAgICAgICAgIGMyIDwgMHgzMSB8fCAoYzIgPj0gMHg4MCAmJiBjMiA8IDB4OTEpIHx8CiAgICAgICAgICAgICAgICAgKGMyICYgMHg3ZikgPT0gMHg3ZiB8fAogICAgICAgICAgICAgICAgIChjID09IDB4ZGEgJiYgKGMyID49IDB4YTEgJiYgYzIgPD0gMHhkMykpKQotICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciB0MSwgdDI7CiAKQEAgLTQyNSw3ICs0MjUsNyBAQAogICAgICAgICAgICAgICAgIHQyID0gKHQyIDwgMHg1ZSA/IHQyIDogdDIgLSAweDVlKSArIDB4MjE7CiAKICAgICAgICAgICAgICAgICBUUllNQVBfREVDKGtzeDEwMDEsICoqb3V0YnVmLCB0MSwgdDIpOwotICAgICAgICAgICAgICAgIGVsc2UgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgZWxzZSByZXR1cm4gMTsKICAgICAgICAgICAgICAgICBORVhUKDIsIDEpCiAgICAgICAgICAgICB9CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfdHcuYyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfdHcuYwppbmRleCAzOGNmNzIzLi45MTYyOThkIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX3R3LmMKKysrIGIvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc190dy5jCkBAIC01NSw3ICs1NSw3IEBACiAgICAgICAgIFRSWU1BUF9ERUMoYmlnNSwgKipvdXRidWYsIGMsIElOMikgewogICAgICAgICAgICAgTkVYVCgyLCAxKQogICAgICAgICB9Ci0gICAgICAgIGVsc2UgcmV0dXJuIDI7CisgICAgICAgIGVsc2UgcmV0dXJuIDE7CiAgICAgfQogCiAgICAgcmV0dXJuIDA7CkBAIC0xMDksNyArMTA5LDcgQEAKIAogICAgICAgICBUUllNQVBfREVDKGNwOTUwZXh0LCAqKm91dGJ1ZiwgYywgSU4yKTsKICAgICAgICAgZWxzZSBUUllNQVBfREVDKGJpZzUsICoqb3V0YnVmLCBjLCBJTjIpOwotICAgICAgICBlbHNlIHJldHVybiAyOworICAgICAgICBlbHNlIHJldHVybiAxOwogCiAgICAgICAgIE5FWFQoMiwgMSkKICAgICB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2Nqa2NvZGVjcy9tdWx0aWJ5dGVjb2RlYy5jIGIvTW9kdWxlcy9jamtjb2RlY3MvbXVsdGlieXRlY29kZWMuYwppbmRleCA3YjA0ZjAyMC4uYWJhZDI1MSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9jamtjb2RlY3MvbXVsdGlieXRlY29kZWMuYworKysgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9tdWx0aWJ5dGVjb2RlYy5jCkBAIC00NDMsMTAgKzQ0MywxMiBAQAogICAgICAgICBnb3RvIGVycm9yZXhpdDsKICAgICB9CiAKKyAgICBpZiAoUHlVbmljb2RlX0FzVW5pY29kZShyZXR1bmkpID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3JleGl0OwogICAgIHJldHVuaXNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUocmV0dW5pKTsKICAgICBpZiAocmV0dW5pc2l6ZSA+IDApIHsKICAgICAgICAgUkVRVUlSRV9ERUNPREVCVUZGRVIoYnVmLCByZXR1bmlzaXplKTsKLSAgICAgICAgbWVtY3B5KChjaGFyICopYnVmLT5vdXRidWYsIFB5VW5pY29kZV9BU19EQVRBKHJldHVuaSksCisgICAgICAgIG1lbWNweSgoY2hhciAqKWJ1Zi0+b3V0YnVmLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXR1bmkpLAogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dW5pc2l6ZSAqIFB5X1VOSUNPREVfU0laRSk7CiAgICAgICAgIGJ1Zi0+b3V0YnVmICs9IHJldHVuaXNpemU7CiAgICAgfQpAQCAtNDgzLDYgKzQ4NSw3IEBACiAgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOwogCiAgICAgYnVmLmV4Y29iaiA9IE5VTEw7CisgICAgYnVmLm91dG9iaiA9IE5VTEw7CiAgICAgYnVmLmluYnVmID0gYnVmLmluYnVmX3RvcCA9ICpkYXRhOwogICAgIGJ1Zi5pbmJ1Zl9lbmQgPSBidWYuaW5idWZfdG9wICsgZGF0YWxlbjsKIApAQCAtNTczLDggKzU3NiwxMSBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgZGF0YSA9IFB5VW5pY29kZV9BU19VTklDT0RFKGFyZyk7Ci0gICAgZGF0YWxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShhcmcpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZShhcmcsICZkYXRhbGVuKTsKKyAgICBpZiAoZGF0YSA9PSBOVUxMKSB7CisgICAgICAgIFB5X1hERUNSRUYodWN2dCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KIAogICAgIGVycm9yY2IgPSBpbnRlcm5hbF9lcnJvcl9jYWxsYmFjayhlcnJvcnMpOwogICAgIGlmIChlcnJvcmNiID09IE5VTEwpIHsKQEAgLTYyNyw3ICs2MzMsNyBAQAogICAgIGlmIChkYXRhbGVuID09IDApIHsKICAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwogICAgICAgICBFUlJPUl9ERUNSRUYoZXJyb3JjYik7Ci0gICAgICAgIHJldHVybiBtYWtlX3R1cGxlKFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCAwKSwgMCk7CisgICAgICAgIHJldHVybiBtYWtlX3R1cGxlKFB5VW5pY29kZV9OZXcoMCwgMCksIDApOwogICAgIH0KIAogICAgIGJ1Zi5leGNvYmogPSBOVUxMOwpAQCAtNjM3LDYgKzY0Myw4IEBACiAgICAgaWYgKGJ1Zi5vdXRvYmogPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcmV4aXQ7CiAgICAgYnVmLm91dGJ1ZiA9IFB5VW5pY29kZV9BU19VTklDT0RFKGJ1Zi5vdXRvYmopOworICAgIGlmIChidWYub3V0YnVmID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3JleGl0OwogICAgIGJ1Zi5vdXRidWZfZW5kID0gYnVmLm91dGJ1ZiArIFB5VW5pY29kZV9HRVRfU0laRShidWYub3V0b2JqKTsKIAogICAgIGlmIChzZWxmLT5jb2RlYy0+ZGVjaW5pdCAhPSBOVUxMICYmCkBAIC03NDIsNiArNzUwLDcgQEAKICAgICBQeU9iamVjdCAqdWN2dCwgKnIgPSBOVUxMOwogICAgIFB5X1VOSUNPREUgKmluYnVmLCAqaW5idWZfZW5kLCAqaW5idWZfdG1wID0gTlVMTDsKICAgICBQeV9zc2l6ZV90IGRhdGFsZW4sIG9yaWdwZW5kaW5nOworICAgIHdjaGFyX3QgKmRhdGE7CiAKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHVuaXN0cikpCiAgICAgICAgIHVjdnQgPSBOVUxMOwpAQCAtNzU3LDcgKzc2Niw5IEBACiAgICAgICAgIH0KICAgICB9CiAKLSAgICBkYXRhbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHVuaXN0cik7CisgICAgZGF0YSA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKHVuaXN0ciwgJmRhdGFsZW4pOworICAgIGlmIChkYXRhID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3JleGl0OwogICAgIG9yaWdwZW5kaW5nID0gY3R4LT5wZW5kaW5nc2l6ZTsKIAogICAgIGlmIChvcmlncGVuZGluZyA+IDApIHsKQEAgLTg0OCw3ICs4NTksOSBAQAogICAgICAgICBidWYtPm91dG9iaiA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBzaXplKTsKICAgICAgICAgaWYgKGJ1Zi0+b3V0b2JqID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIGJ1Zi0+b3V0YnVmID0gUHlVbmljb2RlX0FTX1VOSUNPREUoYnVmLT5vdXRvYmopOworICAgICAgICBidWYtPm91dGJ1ZiA9IFB5VW5pY29kZV9Bc1VuaWNvZGUoYnVmLT5vdXRvYmopOworICAgICAgICBpZiAoYnVmLT5vdXRidWYgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgYnVmLT5vdXRidWZfZW5kID0gYnVmLT5vdXRidWYgKwogICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoYnVmLT5vdXRvYmopOwogICAgIH0KQEAgLTkwMCwxMSArOTEzLDE3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogbWJpZW5jb2Rlcl9yZXNldChNdWx0aWJ5dGVJbmNyZW1lbnRhbEVuY29kZXJPYmplY3QgKnNlbGYpCiB7Ci0gICAgaWYgKHNlbGYtPmNvZGVjLT5kZWNyZXNldCAhPSBOVUxMICYmCi0gICAgICAgIHNlbGYtPmNvZGVjLT5kZWNyZXNldCgmc2VsZi0+c3RhdGUsIHNlbGYtPmNvZGVjLT5jb25maWcpICE9IDApCi0gICAgICAgIHJldHVybiBOVUxMOworICAgIC8qIExvbmdlc3Qgb3V0cHV0OiA0IGJ5dGVzIChiJ1x4MEZceDFGKEInKSB3aXRoIElTTyAyMDIyICovCisgICAgdW5zaWduZWQgY2hhciBidWZmZXJbNF0sICpvdXRidWY7CisgICAgUHlfc3NpemVfdCByOworICAgIGlmIChzZWxmLT5jb2RlYy0+ZW5jcmVzZXQgIT0gTlVMTCkgeworICAgICAgICBvdXRidWYgPSBidWZmZXI7CisgICAgICAgIHIgPSBzZWxmLT5jb2RlYy0+ZW5jcmVzZXQoJnNlbGYtPnN0YXRlLCBzZWxmLT5jb2RlYy0+Y29uZmlnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZvdXRidWYsIHNpemVvZihidWZmZXIpKTsKKyAgICAgICAgaWYgKHIgIT0gMCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KICAgICBzZWxmLT5wZW5kaW5nc2l6ZSA9IDA7Ci0KICAgICBQeV9SRVRVUk5fTk9ORTsKIH0KIApAQCAtMTI0Niw3ICsxMjY1LDcgQEAKICAgICBQeV9zc2l6ZV90IHJzaXplLCBmaW5hbHNpemUgPSAwOwogCiAgICAgaWYgKHNpemVoaW50ID09IDApCi0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgMCk7CisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfTmV3KDAsIDApOwogCiAgICAgYnVmLm91dG9iaiA9IGJ1Zi5leGNvYmogPSBOVUxMOwogICAgIGNyZXMgPSBOVUxMOwpAQCAtMTU3MiwxMiArMTU5MSwxMyBAQAogICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp1bmlzdHIpCiB7CiAgICAgUHlPYmplY3QgKnN0ciwgKndyOworICAgIF9QeV9JREVOVElGSUVSKHdyaXRlKTsKIAogICAgIHN0ciA9IGVuY29kZXJfZW5jb2RlX3N0YXRlZnVsKFNUQVRFRlVMX0VDVFgoc2VsZiksIHVuaXN0ciwgMCk7CiAgICAgaWYgKHN0ciA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7CiAKLSAgICB3ciA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+c3RyZWFtLCAid3JpdGUiLCAiTyIsIHN0cik7CisgICAgd3IgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPnN0cmVhbSwgJlB5SWRfd3JpdGUsICJPIiwgc3RyKTsKICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICBpZiAod3IgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwpAQCAtMTY0Myw3ICsxNjYzLDkgQEAKICAgICBhc3NlcnQoUHlCeXRlc19DaGVjayhwd3J0KSk7CiAgICAgaWYgKFB5Qnl0ZXNfU2l6ZShwd3J0KSA+IDApIHsKICAgICAgICAgUHlPYmplY3QgKndyOwotICAgICAgICB3ciA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+c3RyZWFtLCAid3JpdGUiLCAiTyIsIHB3cnQpOworICAgICAgICBfUHlfSURFTlRJRklFUih3cml0ZSk7CisKKyAgICAgICAgd3IgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPnN0cmVhbSwgJlB5SWRfd3JpdGUsICJPIiwgcHdydCk7CiAgICAgICAgIGlmICh3ciA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYocHdydCk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvZXJybm9tb2R1bGUuYyBiL01vZHVsZXMvZXJybm9tb2R1bGUuYwppbmRleCA4NjcyMGFmLi44NmIwYTAxIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2Vycm5vbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9lcnJub21vZHVsZS5jCkBAIC04NCw2ICs4NCw4IEBACiAgICAgICogVGhlIG5hbWVzIGFuZCBjb21tZW50cyBhcmUgYm9ycm93ZWQgZnJvbSBsaW51eC9pbmNsdWRlL2Vycm5vLmgsCiAgICAgICogd2hpY2ggc2hvdWxkIGJlIHByZXR0eSBhbGwtaW5jbHVzaXZlLiAgSG93ZXZlciwgdGhlIFNvbGFyaXMgc3BlY2lmaWMKICAgICAgKiBuYW1lcyBhbmQgY29tbWVudHMgYXJlIGJvcnJvd2VkIGZyb20gc3lzL2Vycm5vLmggaW4gU29sYXJpcy4KKyAgICAgKiBNYWNPU1ggc3BlY2lmaWMgbmFtZXMgYW5kIGNvbW1lbnRzIGFyZSBib3Jyb3dlZCBmcm9tIHN5cy9lcnJuby5oIGluCisgICAgICogTWFjT1NYLgogICAgICAqLwogCiAjaWZkZWYgRU5PREVWCkBAIC04NDgsNiArODUwLDU5IEBACiAgICAgaW5zY29kZShkLCBkcywgZGUsICJFTk9UQUNUSVZFIiwgRU5PVEFDVElWRSwgIkZhY2lsaXR5IGlzIG5vdCBhY3RpdmUiKTsKICNlbmRpZgogCisgICAgLyogTWFjT1NYIHNwZWNpZmljIGVycm5vcyAqLworI2lmZGVmIEVBVVRICisgICAgaW5zY29kZShkLCBkcywgZGUsICJFQVVUSCIsIEVBVVRILCAiQXV0aGVudGljYXRpb24gZXJyb3IiKTsKKyNlbmRpZgorI2lmZGVmIEVCQURBUkNICisgICAgaW5zY29kZShkLCBkcywgZGUsICJFQkFEQVJDSCIsIEVCQURBUkNILCAiQmFkIENQVSB0eXBlIGluIGV4ZWN1dGFibGUiKTsKKyNlbmRpZgorI2lmZGVmIEVCQURFWEVDCisgICAgaW5zY29kZShkLCBkcywgZGUsICJFQkFERVhFQyIsIEVCQURFWEVDLCAiQmFkIGV4ZWN1dGFibGUgKG9yIHNoYXJlZCBsaWJyYXJ5KSIpOworI2VuZGlmCisjaWZkZWYgRUJBRE1BQ0hPCisgICAgaW5zY29kZShkLCBkcywgZGUsICJFQkFETUFDSE8iLCBFQkFETUFDSE8sICJNYWxmb3JtZWQgTWFjaC1vIGZpbGUiKTsKKyNlbmRpZgorI2lmZGVmIEVCQURSUEMKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVCQURSUEMiLCBFQkFEUlBDLCAiUlBDIHN0cnVjdCBpcyBiYWQiKTsKKyNlbmRpZgorI2lmZGVmIEVERVZFUlIKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVERVZFUlIiLCBFREVWRVJSLCAiRGV2aWNlIGVycm9yIik7CisjZW5kaWYKKyNpZmRlZiBFRlRZUEUKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVGVFlQRSIsIEVGVFlQRSwgIkluYXBwcm9wcmlhdGUgZmlsZSB0eXBlIG9yIGZvcm1hdCIpOworI2VuZGlmCisjaWZkZWYgRU5FRURBVVRICisgICAgaW5zY29kZShkLCBkcywgZGUsICJFTkVFREFVVEgiLCBFTkVFREFVVEgsICJOZWVkIGF1dGhlbnRpY2F0b3IiKTsKKyNlbmRpZgorI2lmZGVmIEVOT0FUVFIKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVOT0FUVFIiLCBFTk9BVFRSLCAiQXR0cmlidXRlIG5vdCBmb3VuZCIpOworI2VuZGlmCisjaWZkZWYgRU5PUE9MSUNZCisgICAgaW5zY29kZShkLCBkcywgZGUsICJFTk9QT0xJQ1kiLCBFTk9QT0xJQ1ksICJQb2xpY3kgbm90IGZvdW5kIik7CisjZW5kaWYKKyNpZmRlZiBFUFJPQ0xJTQorICAgIGluc2NvZGUoZCwgZHMsIGRlLCAiRVBST0NMSU0iLCBFUFJPQ0xJTSwgIlRvbyBtYW55IHByb2Nlc3NlcyIpOworI2VuZGlmCisjaWZkZWYgRVBST0NVTkFWQUlMCisgICAgaW5zY29kZShkLCBkcywgZGUsICJFUFJPQ1VOQVZBSUwiLCBFUFJPQ1VOQVZBSUwsICJCYWQgcHJvY2VkdXJlIGZvciBwcm9ncmFtIik7CisjZW5kaWYKKyNpZmRlZiBFUFJPR01JU01BVENICisgICAgaW5zY29kZShkLCBkcywgZGUsICJFUFJPR01JU01BVENIIiwgRVBST0dNSVNNQVRDSCwgIlByb2dyYW0gdmVyc2lvbiB3cm9uZyIpOworI2VuZGlmCisjaWZkZWYgRVBST0dVTkFWQUlMCisgICAgaW5zY29kZShkLCBkcywgZGUsICJFUFJPR1VOQVZBSUwiLCBFUFJPR1VOQVZBSUwsICJSUEMgcHJvZy4gbm90IGF2YWlsIik7CisjZW5kaWYKKyNpZmRlZiBFUFdST0ZGCisgICAgaW5zY29kZShkLCBkcywgZGUsICJFUFdST0ZGIiwgRVBXUk9GRiwgIkRldmljZSBwb3dlciBpcyBvZmYiKTsKKyNlbmRpZgorI2lmZGVmIEVSUENNSVNNQVRDSAorICAgIGluc2NvZGUoZCwgZHMsIGRlLCAiRVJQQ01JU01BVENIIiwgRVJQQ01JU01BVENILCAiUlBDIHZlcnNpb24gd3JvbmciKTsKKyNlbmRpZgorI2lmZGVmIEVTSExJQlZFUlMKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVTSExJQlZFUlMiLCBFU0hMSUJWRVJTLCAiU2hhcmVkIGxpYnJhcnkgdmVyc2lvbiBtaXNtYXRjaCIpOworI2VuZGlmCisKICAgICBQeV9ERUNSRUYoZGUpOwogICAgIHJldHVybiBtOwogfQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9mYXVsdGhhbmRsZXIuYyBiL01vZHVsZXMvZmF1bHRoYW5kbGVyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjE4YmJiYwotLS0gL2Rldi9udWxsCisrKyBiL01vZHVsZXMvZmF1bHRoYW5kbGVyLmMKQEAgLTAsMCArMSwxMzMyIEBACisjaW5jbHVkZSAiUHl0aG9uLmgiCisjaW5jbHVkZSAicHl0aHJlYWQuaCIKKyNpbmNsdWRlIDxzaWduYWwuaD4KKyNpbmNsdWRlIDxvYmplY3QuaD4KKyNpbmNsdWRlIDxmcmFtZW9iamVjdC5oPgorI2luY2x1ZGUgPHNpZ25hbC5oPgorI2lmIGRlZmluZWQoSEFWRV9QVEhSRUFEX1NJR01BU0spICYmICFkZWZpbmVkKEhBVkVfQlJPS0VOX1BUSFJFQURfU0lHTUFTSykKKyNpbmNsdWRlIDxwdGhyZWFkLmg+CisjZW5kaWYKKworLyogQWxsb2NhdGUgYXQgbWF4aW11bSAxMDAgTUIgb2YgdGhlIHN0YWNrIHRvIHJhaXNlIHRoZSBzdGFjayBvdmVyZmxvdyAqLworI2RlZmluZSBTVEFDS19PVkVSRkxPV19NQVhfU0laRSAoMTAwKjEwMjQqMTAyNCkKKworI2lmZGVmIFdJVEhfVEhSRUFECisjICBkZWZpbmUgRkFVTFRIQU5ETEVSX0xBVEVSCisjICBkZWZpbmUgRkFVTFRIQU5ETEVSX1dBVENIRE9HCisjZW5kaWYKKworI2lmbmRlZiBNU19XSU5ET1dTCisgICAvKiByZWdpc3RlcigpIGlzIHVzZWxlc3Mgb24gV2luZG93cywgYmVjYXVzZSBvbmx5IFNJR1NFR1YsIFNJR0FCUlQgYW5kCisgICAgICBTSUdJTEwgY2FuIGJlIGhhbmRsZWQgYnkgdGhlIHByb2Nlc3MsIGFuZCB0aGVzZSBzaWduYWxzIGNhbiBvbmx5IGJlIHVzZWQKKyAgICAgIHdpdGggZW5hYmxlKCksIG5vdCB1c2luZyByZWdpc3RlcigpICovCisjICBkZWZpbmUgRkFVTFRIQU5ETEVSX1VTRVIKKyNlbmRpZgorCisjZGVmaW5lIFBVVFMoZmQsIHN0cikgd3JpdGUoZmQsIHN0ciwgc3RybGVuKHN0cikpCisKKyNpZmRlZiBIQVZFX1NJR0FDVElPTgordHlwZWRlZiBzdHJ1Y3Qgc2lnYWN0aW9uIF9QeV9zaWdoYW5kbGVyX3Q7CisjZWxzZQordHlwZWRlZiBQeU9TX3NpZ2hhbmRsZXJfdCBfUHlfc2lnaGFuZGxlcl90OworI2VuZGlmCisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBpbnQgc2lnbnVtOworICAgIGludCBlbmFibGVkOworICAgIGNvbnN0IGNoYXIqIG5hbWU7CisgICAgX1B5X3NpZ2hhbmRsZXJfdCBwcmV2aW91czsKKyAgICBpbnQgYWxsX3RocmVhZHM7Cit9IGZhdWx0X2hhbmRsZXJfdDsKKworc3RhdGljIHN0cnVjdCB7CisgICAgaW50IGVuYWJsZWQ7CisgICAgUHlPYmplY3QgKmZpbGU7CisgICAgaW50IGZkOworICAgIGludCBhbGxfdGhyZWFkczsKKyAgICBQeUludGVycHJldGVyU3RhdGUgKmludGVycDsKK30gZmF0YWxfZXJyb3IgPSB7MCwgTlVMTCwgLTEsIDB9OworCisjaWZkZWYgRkFVTFRIQU5ETEVSX0xBVEVSCitzdGF0aWMgc3RydWN0IHsKKyAgICBQeU9iamVjdCAqZmlsZTsKKyAgICBpbnQgZmQ7CisgICAgUFlfVElNRU9VVF9UIHRpbWVvdXRfdXM7ICAgLyogdGltZW91dCBpbiBtaWNyb3NlY29uZHMgKi8KKyAgICBpbnQgcmVwZWF0OworICAgIFB5SW50ZXJwcmV0ZXJTdGF0ZSAqaW50ZXJwOworICAgIGludCBleGl0OworICAgIGNoYXIgKmhlYWRlcjsKKyAgICBzaXplX3QgaGVhZGVyX2xlbjsKKyAgICAvKiBUaGUgbWFpbiB0aHJlYWQgYWx3YXlzIGhvbGRzIHRoaXMgbG9jay4gSXQgaXMgb25seSByZWxlYXNlZCB3aGVuCisgICAgICAgZmF1bHRoYW5kbGVyX3RocmVhZCgpIGlzIGludGVycnVwdGVkIGJlZm9yZSB0aGlzIHRocmVhZCBleGl0cywgb3IgYXQKKyAgICAgICBQeXRob24gZXhpdC4gKi8KKyAgICBQeVRocmVhZF90eXBlX2xvY2sgY2FuY2VsX2V2ZW50OworICAgIC8qIHJlbGVhc2VkIGJ5IGNoaWxkIHRocmVhZCB3aGVuIGpvaW5lZCAqLworICAgIFB5VGhyZWFkX3R5cGVfbG9jayBydW5uaW5nOworfSB0aHJlYWQ7CisjZW5kaWYKKworI2lmZGVmIEZBVUxUSEFORExFUl9XQVRDSERPRworc3RhdGljIHN0cnVjdCB7CisgICAgaW50IHJmZDsKKyAgICBpbnQgd2ZkOworICAgIFBZX1RJTUVPVVRfVCBwZXJpb2RfdXM7ICAgLyogcGVyaW9kIGluIG1pY3Jvc2Vjb25kcyAqLworICAgIC8qIFRoZSBtYWluIHRocmVhZCBhbHdheXMgaG9sZHMgdGhpcyBsb2NrLiBJdCBpcyBvbmx5IHJlbGVhc2VkIHdoZW4KKyAgICAgICBmYXVsdGhhbmRsZXJfd2F0Y2hkb2coKSBpcyBpbnRlcnJ1cHRlZCBiZWZvcmUgdGhpcyB0aHJlYWQgZXhpdHMsIG9yIGF0CisgICAgICAgUHl0aG9uIGV4aXQuICovCisgICAgUHlUaHJlYWRfdHlwZV9sb2NrIGNhbmNlbF9ldmVudDsKKyAgICAvKiByZWxlYXNlZCBieSBjaGlsZCB0aHJlYWQgd2hlbiBqb2luZWQgKi8KKyAgICBQeVRocmVhZF90eXBlX2xvY2sgcnVubmluZzsKK30gd2F0Y2hkb2c7CisjZW5kaWYKKworI2lmZGVmIEZBVUxUSEFORExFUl9VU0VSCit0eXBlZGVmIHN0cnVjdCB7CisgICAgaW50IGVuYWJsZWQ7CisgICAgUHlPYmplY3QgKmZpbGU7CisgICAgaW50IGZkOworICAgIGludCBhbGxfdGhyZWFkczsKKyAgICBpbnQgY2hhaW47CisgICAgX1B5X3NpZ2hhbmRsZXJfdCBwcmV2aW91czsKKyAgICBQeUludGVycHJldGVyU3RhdGUgKmludGVycDsKK30gdXNlcl9zaWduYWxfdDsKKworc3RhdGljIHVzZXJfc2lnbmFsX3QgKnVzZXJfc2lnbmFsczsKKworLyogdGhlIGZvbGxvd2luZyBtYWNyb3MgY29tZSBmcm9tIFB5dGhvbjogTW9kdWxlcy9zaWduYWxtb2R1bGUuYyAqLworI2lmIGRlZmluZWQoUFlPU19PUzIpICYmICFkZWZpbmVkKFBZQ0NfR0NDKQorI2RlZmluZSBOU0lHIDEyCisjZW5kaWYKKyNpZm5kZWYgTlNJRworIyBpZiBkZWZpbmVkKF9OU0lHKQorIyAgZGVmaW5lIE5TSUcgX05TSUcgICAgICAgICAgICAvKiBGb3IgQlNEL1N5c1YgKi8KKyMgZWxpZiBkZWZpbmVkKF9TSUdNQVgpCisjICBkZWZpbmUgTlNJRyAoX1NJR01BWCArIDEpICAgIC8qIEZvciBRTlggKi8KKyMgZWxpZiBkZWZpbmVkKFNJR01BWCkKKyMgIGRlZmluZSBOU0lHIChTSUdNQVggKyAxKSAgICAgLyogRm9yIGRqZ3BwICovCisjIGVsc2UKKyMgIGRlZmluZSBOU0lHIDY0ICAgICAgICAgICAgICAgLyogVXNlIGEgcmVhc29uYWJsZSBkZWZhdWx0IHZhbHVlICovCisjIGVuZGlmCisjZW5kaWYKKworc3RhdGljIHZvaWQgZmF1bHRoYW5kbGVyX3VzZXIoaW50IHNpZ251bSk7CisjZW5kaWYgLyogRkFVTFRIQU5ETEVSX1VTRVIgKi8KKworCitzdGF0aWMgZmF1bHRfaGFuZGxlcl90IGZhdWx0aGFuZGxlcl9oYW5kbGVyc1tdID0geworI2lmZGVmIFNJR0JVUworICAgIHtTSUdCVVMsIDAsICJCdXMgZXJyb3IiLCB9LAorI2VuZGlmCisjaWZkZWYgU0lHSUxMCisgICAge1NJR0lMTCwgMCwgIklsbGVnYWwgaW5zdHJ1Y3Rpb24iLCB9LAorI2VuZGlmCisgICAge1NJR0ZQRSwgMCwgIkZsb2F0aW5nIHBvaW50IGV4Y2VwdGlvbiIsIH0sCisgICAge1NJR0FCUlQsIDAsICJBYm9ydGVkIiwgfSwKKyAgICAvKiBkZWZpbmUgU0lHU0VHViBhdCB0aGUgZW5kIHRvIG1ha2UgaXQgdGhlIGRlZmF1bHQgY2hvaWNlIGlmIHNlYXJjaGluZyB0aGUKKyAgICAgICBoYW5kbGVyIGZhaWxzIGluIGZhdWx0aGFuZGxlcl9mYXRhbF9lcnJvcigpICovCisgICAge1NJR1NFR1YsIDAsICJTZWdtZW50YXRpb24gZmF1bHQiLCB9Cit9Oworc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgZmF1bHRoYW5kbGVyX25zaWduYWxzID0gXAorICAgIFB5X0FSUkFZX0xFTkdUSChmYXVsdGhhbmRsZXJfaGFuZGxlcnMpOworCisjaWZkZWYgSEFWRV9TSUdBTFRTVEFDSworc3RhdGljIHN0YWNrX3Qgc3RhY2s7CisjZW5kaWYKKworCisvKiBHZXQgdGhlIGZpbGUgZGVzY3JpcHRvciBvZiBhIGZpbGUgYnkgY2FsbGluZyBpdHMgZmlsZW5vKCkgbWV0aG9kIGFuZCB0aGVuCisgICBjYWxsIGl0cyBmbHVzaCgpIG1ldGhvZC4KKworICAgSWYgZmlsZSBpcyBOVUxMIG9yIFB5X05vbmUsIHVzZSBzeXMuc3RkZXJyIGFzIHRoZSBuZXcgZmlsZS4KKworICAgT24gc3VjY2VzcywgcmV0dXJuIHRoZSBuZXcgZmlsZSBhbmQgd3JpdGUgdGhlIGZpbGUgZGVzY3JpcHRvciBpbnRvICpwX2ZkLgorICAgT24gZXJyb3IsIHJldHVybiBOVUxMLiAqLworCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfZ2V0X2ZpbGVubyhQeU9iamVjdCAqZmlsZSwgaW50ICpwX2ZkKQoreworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgX1B5X0lERU5USUZJRVIoZmlsZW5vKTsKKyAgICBfUHlfSURFTlRJRklFUihmbHVzaCk7CisgICAgbG9uZyBmZF9sb25nOworICAgIGludCBmZDsKKworICAgIGlmIChmaWxlID09IE5VTEwgfHwgZmlsZSA9PSBQeV9Ob25lKSB7CisgICAgICAgIGZpbGUgPSBQeVN5c19HZXRPYmplY3QoInN0ZGVyciIpOworICAgICAgICBpZiAoZmlsZSA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLCAidW5hYmxlIHRvIGdldCBzeXMuc3RkZXJyIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZmlsZSwgJlB5SWRfZmlsZW5vLCAiIik7CisgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGZkID0gLTE7CisgICAgaWYgKFB5TG9uZ19DaGVjayhyZXN1bHQpKSB7CisgICAgICAgIGZkX2xvbmcgPSBQeUxvbmdfQXNMb25nKHJlc3VsdCk7CisgICAgICAgIGlmICgwIDw9IGZkX2xvbmcgJiYgZmRfbG9uZyA8IElOVF9NQVgpCisgICAgICAgICAgICBmZCA9IChpbnQpZmRfbG9uZzsKKyAgICB9CisgICAgUHlfREVDUkVGKHJlc3VsdCk7CisKKyAgICBpZiAoZmQgPT0gLTEpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJmaWxlLmZpbGVubygpIGlzIG5vdCBhIHZhbGlkIGZpbGUgZGVzY3JpcHRvciIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICByZXN1bHQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGZpbGUsICZQeUlkX2ZsdXNoLCAiIik7CisgICAgaWYgKHJlc3VsdCAhPSBOVUxMKQorICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKKyAgICBlbHNlIHsKKyAgICAgICAgLyogaWdub3JlIGZsdXNoKCkgZXJyb3IgKi8KKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICB9CisgICAgKnBfZmQgPSBmZDsKKyAgICByZXR1cm4gZmlsZTsKK30KKworLyogR2V0IHRoZSBzdGF0ZSBvZiB0aGUgY3VycmVudCB0aHJlYWQ6IG9ubHkgY2FsbCB0aGlzIGZ1bmN0aW9uIGlmIHRoZSBjdXJyZW50CisgICB0aHJlYWQgaG9sZHMgdGhlIEdJTC4gUmFpc2UgYW4gZXhjZXB0aW9uIG9uIGVycm9yLiAqLworc3RhdGljIFB5VGhyZWFkU3RhdGUqCitnZXRfdGhyZWFkX3N0YXRlKHZvaWQpCit7CisgICAgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlID0gUHlUaHJlYWRTdGF0ZV9HZXQoKTsKKyAgICBpZiAodHN0YXRlID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJ1bmFibGUgdG8gZ2V0IHRoZSBjdXJyZW50IHRocmVhZCBzdGF0ZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmV0dXJuIHRzdGF0ZTsKK30KKworc3RhdGljIFB5T2JqZWN0KgorZmF1bHRoYW5kbGVyX2R1bXBfdHJhY2ViYWNrX3B5KFB5T2JqZWN0ICpzZWxmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQoreworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiZmlsZSIsICJhbGxfdGhyZWFkcyIsIE5VTEx9OworICAgIFB5T2JqZWN0ICpmaWxlID0gTlVMTDsKKyAgICBpbnQgYWxsX3RocmVhZHMgPSAxOworICAgIFB5VGhyZWFkU3RhdGUgKnRzdGF0ZTsKKyAgICBjb25zdCBjaGFyICplcnJtc2c7CisgICAgaW50IGZkOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dhcmdzLAorICAgICAgICAifE9pOmR1bXBfdHJhY2ViYWNrIiwga3dsaXN0LAorICAgICAgICAmZmlsZSwgJmFsbF90aHJlYWRzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBmaWxlID0gZmF1bHRoYW5kbGVyX2dldF9maWxlbm8oZmlsZSwgJmZkKTsKKyAgICBpZiAoZmlsZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHRzdGF0ZSA9IGdldF90aHJlYWRfc3RhdGUoKTsKKyAgICBpZiAodHN0YXRlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKGFsbF90aHJlYWRzKSB7CisgICAgICAgIGVycm1zZyA9IF9QeV9EdW1wVHJhY2ViYWNrVGhyZWFkcyhmZCwgdHN0YXRlLT5pbnRlcnAsIHRzdGF0ZSk7CisgICAgICAgIGlmIChlcnJtc2cgIT0gTlVMTCkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwgZXJybXNnKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBfUHlfRHVtcFRyYWNlYmFjayhmZCwgdHN0YXRlKTsKKyAgICB9CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKKworLyogSGFuZGxlciBmb3IgU0lHU0VHViwgU0lHRlBFLCBTSUdBQlJULCBTSUdCVVMgYW5kIFNJR0lMTCBzaWduYWxzLgorCisgICBEaXNwbGF5IHRoZSBjdXJyZW50IFB5dGhvbiB0cmFjZWJhY2ssIHJlc3RvcmUgdGhlIHByZXZpb3VzIGhhbmRsZXIgYW5kIGNhbGwKKyAgIHRoZSBwcmV2aW91cyBoYW5kbGVyLgorCisgICBPbiBXaW5kb3dzLCBkb24ndCBleHBsaWNpdGx5IGNhbGwgdGhlIHByZXZpb3VzIGhhbmRsZXIsIGJlY2F1c2UgdGhlIFdpbmRvd3MKKyAgIHNpZ25hbCBoYW5kbGVyIHdvdWxkIG5vdCBiZSBjYWxsZWQgKGZvciBhbiB1bmtub3duIHJlYXNvbikuIFRoZSBleGVjdXRpb24gb2YKKyAgIHRoZSBwcm9ncmFtIGNvbnRpbnVlcyBhdCBmYXVsdGhhbmRsZXJfZmF0YWxfZXJyb3IoKSBleGl0LCBidXQgdGhlIHNhbWUKKyAgIGluc3RydWN0aW9uIHdpbGwgcmFpc2UgdGhlIHNhbWUgZmF1bHQgKHNpZ25hbCksIGFuZCBzbyB0aGUgcHJldmlvdXMgaGFuZGxlcgorICAgd2lsbCBiZSBjYWxsZWQuCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgc2lnbmFsLXNhZmUgYW5kIHNob3VsZCBvbmx5IGNhbGwgc2lnbmFsLXNhZmUgZnVuY3Rpb25zLiAqLworCitzdGF0aWMgdm9pZAorZmF1bHRoYW5kbGVyX2ZhdGFsX2Vycm9yKGludCBzaWdudW0pCit7CisgICAgY29uc3QgaW50IGZkID0gZmF0YWxfZXJyb3IuZmQ7CisgICAgdW5zaWduZWQgaW50IGk7CisgICAgZmF1bHRfaGFuZGxlcl90ICpoYW5kbGVyID0gTlVMTDsKKyAgICBQeVRocmVhZFN0YXRlICp0c3RhdGU7CisgICAgaW50IHNhdmVfZXJybm8gPSBlcnJubzsKKworICAgIGlmICghZmF0YWxfZXJyb3IuZW5hYmxlZCkKKyAgICAgICAgcmV0dXJuOworCisgICAgZm9yIChpPTA7IGkgPCBmYXVsdGhhbmRsZXJfbnNpZ25hbHM7IGkrKykgeworICAgICAgICBoYW5kbGVyID0gJmZhdWx0aGFuZGxlcl9oYW5kbGVyc1tpXTsKKyAgICAgICAgaWYgKGhhbmRsZXItPnNpZ251bSA9PSBzaWdudW0pCisgICAgICAgICAgICBicmVhazsKKyAgICB9CisgICAgaWYgKGhhbmRsZXIgPT0gTlVMTCkgeworICAgICAgICAvKiBmYXVsdGhhbmRsZXJfbnNpZ25hbHMgPT0gMCAodW5saWtlbHkpICovCisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAvKiByZXN0b3JlIHRoZSBwcmV2aW91cyBoYW5kbGVyICovCisjaWZkZWYgSEFWRV9TSUdBQ1RJT04KKyAgICAodm9pZClzaWdhY3Rpb24oc2lnbnVtLCAmaGFuZGxlci0+cHJldmlvdXMsIE5VTEwpOworI2Vsc2UKKyAgICAodm9pZClzaWduYWwoc2lnbnVtLCBoYW5kbGVyLT5wcmV2aW91cyk7CisjZW5kaWYKKyAgICBoYW5kbGVyLT5lbmFibGVkID0gMDsKKworICAgIFBVVFMoZmQsICJGYXRhbCBQeXRob24gZXJyb3I6ICIpOworICAgIFBVVFMoZmQsIGhhbmRsZXItPm5hbWUpOworICAgIFBVVFMoZmQsICJcblxuIik7CisKKyNpZmRlZiBXSVRIX1RIUkVBRAorICAgIC8qIFNJR1NFR1YsIFNJR0ZQRSwgU0lHQUJSVCwgU0lHQlVTIGFuZCBTSUdJTEwgYXJlIHN5bmNocm9ub3VzIHNpZ25hbHMgYW5kCisgICAgICAgYXJlIHRodXMgZGVsaXZlcmVkIHRvIHRoZSB0aHJlYWQgdGhhdCBjYXVzZWQgdGhlIGZhdWx0LiBHZXQgdGhlIFB5dGhvbgorICAgICAgIHRocmVhZCBzdGF0ZSBvZiB0aGUgY3VycmVudCB0aHJlYWQuCisKKyAgICAgICBQeVRocmVhZFN0YXRlX0dldCgpIGRvZXNuJ3QgZ2l2ZSB0aGUgc3RhdGUgb2YgdGhlIHRocmVhZCB0aGF0IGNhdXNlZCB0aGUKKyAgICAgICBmYXVsdCBpZiB0aGUgdGhyZWFkIHJlbGVhc2VkIHRoZSBHSUwsIGFuZCBzbyB0aGlzIGZ1bmN0aW9uIGNhbm5vdCBiZQorICAgICAgIHVzZWQuIFJlYWQgdGhlIHRocmVhZCBsb2NhbCBzdG9yYWdlIChUTFMpIGluc3RlYWQ6IGNhbGwKKyAgICAgICBQeUdJTFN0YXRlX0dldFRoaXNUaHJlYWRTdGF0ZSgpLiAqLworICAgIHRzdGF0ZSA9IFB5R0lMU3RhdGVfR2V0VGhpc1RocmVhZFN0YXRlKCk7CisjZWxzZQorICAgIHRzdGF0ZSA9IFB5VGhyZWFkU3RhdGVfR2V0KCk7CisjZW5kaWYKKworICAgIGlmIChmYXRhbF9lcnJvci5hbGxfdGhyZWFkcykKKyAgICAgICAgX1B5X0R1bXBUcmFjZWJhY2tUaHJlYWRzKGZkLCBmYXRhbF9lcnJvci5pbnRlcnAsIHRzdGF0ZSk7CisgICAgZWxzZSB7CisgICAgICAgIGlmICh0c3RhdGUgIT0gTlVMTCkKKyAgICAgICAgICAgIF9QeV9EdW1wVHJhY2ViYWNrKGZkLCB0c3RhdGUpOworICAgIH0KKworICAgIGVycm5vID0gc2F2ZV9lcnJubzsKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgaWYgKHNpZ251bSA9PSBTSUdTRUdWKSB7CisgICAgICAgIC8qIGRvbid0IGV4cGxpY2l0bHkgY2FsbCB0aGUgcHJldmlvdXMgaGFuZGxlciBmb3IgU0lHU0VHViBpbiB0aGlzIHNpZ25hbAorICAgICAgICAgICBoYW5kbGVyLCBiZWNhdXNlIHRoZSBXaW5kb3dzIHNpZ25hbCBoYW5kbGVyIHdvdWxkIG5vdCBiZSBjYWxsZWQgKi8KKyAgICAgICAgcmV0dXJuOworICAgIH0KKyNlbmRpZgorICAgIC8qIGNhbGwgdGhlIHByZXZpb3VzIHNpZ25hbCBoYW5kbGVyOiBpdCBpcyBjYWxsZWQgaW1tZWRpYXRseSBpZiB3ZSB1c2UKKyAgICAgICBzaWdhY3Rpb24oKSB0aGFua3MgdG8gU0FfTk9ERUZFUiBmbGFnLCBvdGhlcndpc2UgaXQgaXMgZGVmZXJyZWQgKi8KKyAgICByYWlzZShzaWdudW0pOworfQorCisvKiBJbnN0YWxsIHRoZSBoYW5kbGVyIGZvciBmYXRhbCBzaWduYWxzLCBmYXVsdGhhbmRsZXJfZmF0YWxfZXJyb3IoKS4gKi8KKworc3RhdGljIFB5T2JqZWN0KgorZmF1bHRoYW5kbGVyX2VuYWJsZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCit7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJmaWxlIiwgImFsbF90aHJlYWRzIiwgTlVMTH07CisgICAgUHlPYmplY3QgKmZpbGUgPSBOVUxMOworICAgIGludCBhbGxfdGhyZWFkcyA9IDE7CisgICAgdW5zaWduZWQgaW50IGk7CisgICAgZmF1bHRfaGFuZGxlcl90ICpoYW5kbGVyOworI2lmZGVmIEhBVkVfU0lHQUNUSU9OCisgICAgc3RydWN0IHNpZ2FjdGlvbiBhY3Rpb247CisjZW5kaWYKKyAgICBpbnQgZXJyOworICAgIGludCBmZDsKKyAgICBQeVRocmVhZFN0YXRlICp0c3RhdGU7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsCisgICAgICAgICJ8T2k6ZW5hYmxlIiwga3dsaXN0LCAmZmlsZSwgJmFsbF90aHJlYWRzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBmaWxlID0gZmF1bHRoYW5kbGVyX2dldF9maWxlbm8oZmlsZSwgJmZkKTsKKyAgICBpZiAoZmlsZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHRzdGF0ZSA9IGdldF90aHJlYWRfc3RhdGUoKTsKKyAgICBpZiAodHN0YXRlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfWERFQ1JFRihmYXRhbF9lcnJvci5maWxlKTsKKyAgICBQeV9JTkNSRUYoZmlsZSk7CisgICAgZmF0YWxfZXJyb3IuZmlsZSA9IGZpbGU7CisgICAgZmF0YWxfZXJyb3IuZmQgPSBmZDsKKyAgICBmYXRhbF9lcnJvci5hbGxfdGhyZWFkcyA9IGFsbF90aHJlYWRzOworICAgIGZhdGFsX2Vycm9yLmludGVycCA9IHRzdGF0ZS0+aW50ZXJwOworCisgICAgaWYgKCFmYXRhbF9lcnJvci5lbmFibGVkKSB7CisgICAgICAgIGZhdGFsX2Vycm9yLmVuYWJsZWQgPSAxOworCisgICAgICAgIGZvciAoaT0wOyBpIDwgZmF1bHRoYW5kbGVyX25zaWduYWxzOyBpKyspIHsKKyAgICAgICAgICAgIGhhbmRsZXIgPSAmZmF1bHRoYW5kbGVyX2hhbmRsZXJzW2ldOworI2lmZGVmIEhBVkVfU0lHQUNUSU9OCisgICAgICAgICAgICBhY3Rpb24uc2FfaGFuZGxlciA9IGZhdWx0aGFuZGxlcl9mYXRhbF9lcnJvcjsKKyAgICAgICAgICAgIHNpZ2VtcHR5c2V0KCZhY3Rpb24uc2FfbWFzayk7CisgICAgICAgICAgICAvKiBEbyBub3QgcHJldmVudCB0aGUgc2lnbmFsIGZyb20gYmVpbmcgcmVjZWl2ZWQgZnJvbSB3aXRoaW4KKyAgICAgICAgICAgICAgIGl0cyBvd24gc2lnbmFsIGhhbmRsZXIgKi8KKyAgICAgICAgICAgIGFjdGlvbi5zYV9mbGFncyA9IFNBX05PREVGRVI7CisjaWZkZWYgSEFWRV9TSUdBTFRTVEFDSworICAgICAgICAgICAgaWYgKHN0YWNrLnNzX3NwICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAgICAvKiBDYWxsIHRoZSBzaWduYWwgaGFuZGxlciBvbiBhbiBhbHRlcm5hdGUgc2lnbmFsIHN0YWNrCisgICAgICAgICAgICAgICAgICAgcHJvdmlkZWQgYnkgc2lnYWx0c3RhY2soKSAqLworICAgICAgICAgICAgICAgIGFjdGlvbi5zYV9mbGFncyB8PSBTQV9PTlNUQUNLOworICAgICAgICAgICAgfQorI2VuZGlmCisgICAgICAgICAgICBlcnIgPSBzaWdhY3Rpb24oaGFuZGxlci0+c2lnbnVtLCAmYWN0aW9uLCAmaGFuZGxlci0+cHJldmlvdXMpOworI2Vsc2UKKyAgICAgICAgICAgIGhhbmRsZXItPnByZXZpb3VzID0gc2lnbmFsKGhhbmRsZXItPnNpZ251bSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhdWx0aGFuZGxlcl9mYXRhbF9lcnJvcik7CisgICAgICAgICAgICBlcnIgPSAoaGFuZGxlci0+cHJldmlvdXMgPT0gU0lHX0VSUik7CisjZW5kaWYKKyAgICAgICAgICAgIGlmIChlcnIpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfUnVudGltZUVycm9yKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGhhbmRsZXItPmVuYWJsZWQgPSAxOworICAgICAgICB9CisgICAgfQorICAgIFB5X1JFVFVSTl9OT05FOworfQorCitzdGF0aWMgdm9pZAorZmF1bHRoYW5kbGVyX2Rpc2FibGUodm9pZCkKK3sKKyAgICB1bnNpZ25lZCBpbnQgaTsKKyAgICBmYXVsdF9oYW5kbGVyX3QgKmhhbmRsZXI7CisKKyAgICBpZiAoZmF0YWxfZXJyb3IuZW5hYmxlZCkgeworICAgICAgICBmYXRhbF9lcnJvci5lbmFibGVkID0gMDsKKyAgICAgICAgZm9yIChpPTA7IGkgPCBmYXVsdGhhbmRsZXJfbnNpZ25hbHM7IGkrKykgeworICAgICAgICAgICAgaGFuZGxlciA9ICZmYXVsdGhhbmRsZXJfaGFuZGxlcnNbaV07CisgICAgICAgICAgICBpZiAoIWhhbmRsZXItPmVuYWJsZWQpCisgICAgICAgICAgICAgICAgY29udGludWU7CisjaWZkZWYgSEFWRV9TSUdBQ1RJT04KKyAgICAgICAgICAgICh2b2lkKXNpZ2FjdGlvbihoYW5kbGVyLT5zaWdudW0sICZoYW5kbGVyLT5wcmV2aW91cywgTlVMTCk7CisjZWxzZQorICAgICAgICAgICAgKHZvaWQpc2lnbmFsKGhhbmRsZXItPnNpZ251bSwgaGFuZGxlci0+cHJldmlvdXMpOworI2VuZGlmCisgICAgICAgICAgICBoYW5kbGVyLT5lbmFibGVkID0gMDsKKyAgICAgICAgfQorICAgIH0KKworICAgIFB5X0NMRUFSKGZhdGFsX2Vycm9yLmZpbGUpOworfQorCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfZGlzYWJsZV9weShQeU9iamVjdCAqc2VsZikKK3sKKyAgICBpZiAoIWZhdGFsX2Vycm9yLmVuYWJsZWQpIHsKKyAgICAgICAgUHlfSU5DUkVGKFB5X0ZhbHNlKTsKKyAgICAgICAgcmV0dXJuIFB5X0ZhbHNlOworICAgIH0KKyAgICBmYXVsdGhhbmRsZXJfZGlzYWJsZSgpOworICAgIFB5X0lOQ1JFRihQeV9UcnVlKTsKKyAgICByZXR1cm4gUHlfVHJ1ZTsKK30KKworc3RhdGljIFB5T2JqZWN0KgorZmF1bHRoYW5kbGVyX2lzX2VuYWJsZWQoUHlPYmplY3QgKnNlbGYpCit7CisgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZyhmYXRhbF9lcnJvci5lbmFibGVkKTsKK30KKworI2lmZGVmIEZBVUxUSEFORExFUl9MQVRFUgorCitzdGF0aWMgdm9pZAorZmF1bHRoYW5kbGVyX3RocmVhZCh2b2lkICp1bnVzZWQpCit7CisgICAgUHlMb2NrU3RhdHVzIHN0OworICAgIGNvbnN0IGNoYXIqIGVycm1zZzsKKyAgICBQeVRocmVhZFN0YXRlICpjdXJyZW50OworICAgIGludCBvazsKKyNpZiBkZWZpbmVkKEhBVkVfUFRIUkVBRF9TSUdNQVNLKSAmJiAhZGVmaW5lZChIQVZFX0JST0tFTl9QVEhSRUFEX1NJR01BU0spCisgICAgc2lnc2V0X3Qgc2V0OworCisgICAgLyogd2UgZG9uJ3Qgd2FudCB0byByZWNlaXZlIGFueSBzaWduYWwgKi8KKyAgICBzaWdmaWxsc2V0KCZzZXQpOworICAgIHB0aHJlYWRfc2lnbWFzayhTSUdfU0VUTUFTSywgJnNldCwgTlVMTCk7CisjZW5kaWYKKworICAgIGRvIHsKKyAgICAgICAgc3QgPSBQeVRocmVhZF9hY3F1aXJlX2xvY2tfdGltZWQodGhyZWFkLmNhbmNlbF9ldmVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyZWFkLnRpbWVvdXRfdXMsIDApOworICAgICAgICBpZiAoc3QgPT0gUFlfTE9DS19BQ1FVSVJFRCkgeworICAgICAgICAgICAgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKHRocmVhZC5jYW5jZWxfZXZlbnQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgLyogVGltZW91dCA9PiBkdW1wIHRyYWNlYmFjayAqLworICAgICAgICBhc3NlcnQoc3QgPT0gUFlfTE9DS19GQUlMVVJFKTsKKworICAgICAgICAvKiBnZXQgdGhlIHRocmVhZCBob2xkaW5nIHRoZSBHSUwsIE5VTEwgaWYgbm8gdGhyZWFkIGhvbGQgdGhlIEdJTCAqLworICAgICAgICBjdXJyZW50ID0gX1B5X2F0b21pY19sb2FkX3JlbGF4ZWQoJl9QeVRocmVhZFN0YXRlX0N1cnJlbnQpOworCisgICAgICAgIHdyaXRlKHRocmVhZC5mZCwgdGhyZWFkLmhlYWRlciwgdGhyZWFkLmhlYWRlcl9sZW4pOworCisgICAgICAgIGVycm1zZyA9IF9QeV9EdW1wVHJhY2ViYWNrVGhyZWFkcyh0aHJlYWQuZmQsIHRocmVhZC5pbnRlcnAsIGN1cnJlbnQpOworICAgICAgICBvayA9IChlcnJtc2cgPT0gTlVMTCk7CisKKyAgICAgICAgaWYgKHRocmVhZC5leGl0KQorICAgICAgICAgICAgX2V4aXQoMSk7CisgICAgfSB3aGlsZSAob2sgJiYgdGhyZWFkLnJlcGVhdCk7CisKKyAgICAvKiBUaGUgb25seSB3YXkgb3V0ICovCisgICAgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKHRocmVhZC5ydW5uaW5nKTsKK30KKworc3RhdGljIHZvaWQKK2NhbmNlbF9kdW1wX3RyYWNlYmFja3NfbGF0ZXIodm9pZCkKK3sKKyAgICAvKiBOb3RpZnkgY2FuY2VsbGF0aW9uICovCisgICAgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKHRocmVhZC5jYW5jZWxfZXZlbnQpOworCisgICAgLyogV2FpdCBmb3IgdGhyZWFkIHRvIGpvaW4gKi8KKyAgICBQeVRocmVhZF9hY3F1aXJlX2xvY2sodGhyZWFkLnJ1bm5pbmcsIDEpOworICAgIFB5VGhyZWFkX3JlbGVhc2VfbG9jayh0aHJlYWQucnVubmluZyk7CisKKyAgICAvKiBUaGUgbWFpbiB0aHJlYWQgc2hvdWxkIGFsd2F5cyBob2xkIHRoZSBjYW5jZWxfZXZlbnQgbG9jayAqLworICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jayh0aHJlYWQuY2FuY2VsX2V2ZW50LCAxKTsKKworICAgIFB5X0NMRUFSKHRocmVhZC5maWxlKTsKKyAgICBpZiAodGhyZWFkLmhlYWRlcikgeworICAgICAgICBmcmVlKHRocmVhZC5oZWFkZXIpOworICAgICAgICB0aHJlYWQuaGVhZGVyID0gTlVMTDsKKyAgICB9Cit9CisKK3N0YXRpYyBjaGFyKgorZm9ybWF0X3RpbWVvdXQoZG91YmxlIHRpbWVvdXQpCit7CisgICAgdW5zaWduZWQgbG9uZyB1cywgc2VjLCBtaW4sIGhvdXI7CisgICAgZG91YmxlIGludHBhcnQsIGZyYWNwYXJ0OworICAgIGNoYXIgYnVmZmVyWzEwMF07CisKKyAgICBmcmFjcGFydCA9IG1vZGYodGltZW91dCwgJmludHBhcnQpOworICAgIHNlYyA9ICh1bnNpZ25lZCBsb25nKWludHBhcnQ7CisgICAgdXMgPSAodW5zaWduZWQgbG9uZykoZnJhY3BhcnQgKiAxZTYpOworICAgIG1pbiA9IHNlYyAvIDYwOworICAgIHNlYyAlPSA2MDsKKyAgICBob3VyID0gbWluIC8gNjA7CisgICAgbWluICU9IDYwOworCisgICAgaWYgKHVzICE9IDApCisgICAgICAgIFB5T1Nfc25wcmludGYoYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwKKyAgICAgICAgICAgICAgICAgICAgICAiVGltZW91dCAoJWx1OiUwMmx1OiUwMmx1LiUwNmx1KSFcbiIsCisgICAgICAgICAgICAgICAgICAgICAgaG91ciwgbWluLCBzZWMsIHVzKTsKKyAgICBlbHNlCisgICAgICAgIFB5T1Nfc25wcmludGYoYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwKKyAgICAgICAgICAgICAgICAgICAgICAiVGltZW91dCAoJWx1OiUwMmx1OiUwMmx1KSFcbiIsCisgICAgICAgICAgICAgICAgICAgICAgaG91ciwgbWluLCBzZWMpOworCisgICAgcmV0dXJuIHN0cmR1cChidWZmZXIpOworfQorCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfZHVtcF90cmFjZWJhY2tzX2xhdGVyKFB5T2JqZWN0ICpzZWxmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InRpbWVvdXQiLCAicmVwZWF0IiwgImZpbGUiLCAiZXhpdCIsIE5VTEx9OworICAgIGRvdWJsZSB0aW1lb3V0OworICAgIFBZX1RJTUVPVVRfVCB0aW1lb3V0X3VzOworICAgIGludCByZXBlYXQgPSAwOworICAgIFB5T2JqZWN0ICpmaWxlID0gTlVMTDsKKyAgICBpbnQgZmQ7CisgICAgaW50IGV4aXQgPSAwOworICAgIFB5VGhyZWFkU3RhdGUgKnRzdGF0ZTsKKyAgICBjaGFyICpoZWFkZXI7CisgICAgc2l6ZV90IGhlYWRlcl9sZW47CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsCisgICAgICAgICJkfGlPaTpkdW1wX3RyYWNlYmFja3NfbGF0ZXIiLCBrd2xpc3QsCisgICAgICAgICZ0aW1lb3V0LCAmcmVwZWF0LCAmZmlsZSwgJmV4aXQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoKHRpbWVvdXQgKiAxZTYpID49IChkb3VibGUpIFBZX1RJTUVPVVRfTUFYKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLCAgInRpbWVvdXQgdmFsdWUgaXMgdG9vIGxhcmdlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICB0aW1lb3V0X3VzID0gKFBZX1RJTUVPVVRfVCkodGltZW91dCAqIDFlNik7CisgICAgaWYgKHRpbWVvdXRfdXMgPD0gMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInRpbWVvdXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICB0c3RhdGUgPSBnZXRfdGhyZWFkX3N0YXRlKCk7CisgICAgaWYgKHRzdGF0ZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGZpbGUgPSBmYXVsdGhhbmRsZXJfZ2V0X2ZpbGVubyhmaWxlLCAmZmQpOworICAgIGlmIChmaWxlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgLyogZm9ybWF0IHRoZSB0aW1lb3V0ICovCisgICAgaGVhZGVyID0gZm9ybWF0X3RpbWVvdXQodGltZW91dCk7CisgICAgaWYgKGhlYWRlciA9PSBOVUxMKQorICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICBoZWFkZXJfbGVuID0gc3RybGVuKGhlYWRlcik7CisKKyAgICAvKiBDYW5jZWwgcHJldmlvdXMgdGhyZWFkLCBpZiBydW5uaW5nICovCisgICAgY2FuY2VsX2R1bXBfdHJhY2ViYWNrc19sYXRlcigpOworCisgICAgUHlfWERFQ1JFRih0aHJlYWQuZmlsZSk7CisgICAgUHlfSU5DUkVGKGZpbGUpOworICAgIHRocmVhZC5maWxlID0gZmlsZTsKKyAgICB0aHJlYWQuZmQgPSBmZDsKKyAgICB0aHJlYWQudGltZW91dF91cyA9IHRpbWVvdXRfdXM7CisgICAgdGhyZWFkLnJlcGVhdCA9IHJlcGVhdDsKKyAgICB0aHJlYWQuaW50ZXJwID0gdHN0YXRlLT5pbnRlcnA7CisgICAgdGhyZWFkLmV4aXQgPSBleGl0OworICAgIHRocmVhZC5oZWFkZXIgPSBoZWFkZXI7CisgICAgdGhyZWFkLmhlYWRlcl9sZW4gPSBoZWFkZXJfbGVuOworCisgICAgLyogQXJtIHRoZXNlIGxvY2tzIHRvIHNlcnZlIGFzIGV2ZW50cyB3aGVuIHJlbGVhc2VkICovCisgICAgUHlUaHJlYWRfYWNxdWlyZV9sb2NrKHRocmVhZC5ydW5uaW5nLCAxKTsKKworICAgIGlmIChQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkKGZhdWx0aGFuZGxlcl90aHJlYWQsIE5VTEwpID09IC0xKSB7CisgICAgICAgIFB5VGhyZWFkX3JlbGVhc2VfbG9jayh0aHJlYWQucnVubmluZyk7CisgICAgICAgIFB5X0NMRUFSKHRocmVhZC5maWxlKTsKKyAgICAgICAgZnJlZShoZWFkZXIpOworICAgICAgICB0aHJlYWQuaGVhZGVyID0gTlVMTDsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJ1bmFibGUgdG8gc3RhcnQgd2F0Y2hkb2cgdGhyZWFkIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIFB5X1JFVFVSTl9OT05FOworfQorCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfY2FuY2VsX2R1bXBfdHJhY2ViYWNrc19sYXRlcl9weShQeU9iamVjdCAqc2VsZikKK3sKKyAgICBjYW5jZWxfZHVtcF90cmFjZWJhY2tzX2xhdGVyKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYgIC8qIEZBVUxUSEFORExFUl9MQVRFUiAqLworCisjaWZkZWYgRkFVTFRIQU5ETEVSX1dBVENIRE9HCisKK3N0YXRpYyB2b2lkCitmaWxlX3dhdGNoZG9nKHZvaWQgKnVudXNlZCkKK3sKKyAgICBQeUxvY2tTdGF0dXMgc3Q7CisgICAgUFlfVElNRU9VVF9UIHRpbWVvdXQ7CisKKyNkZWZpbmUgTUFYREFUQSAxMDI0CisgICAgY2hhciBidWYxW01BWERBVEFdLCBidWYyW01BWERBVEFdOworICAgIGNoYXIgKmRhdGEgPSBidWYxLCAqb2xkX2RhdGEgPSBidWYyOworICAgIFB5X3NzaXplX3QgZGF0YV9sZW4sIG9sZF9kYXRhX2xlbiA9IC0xOworCisjaWYgZGVmaW5lZChIQVZFX1BUSFJFQURfU0lHTUFTSykgJiYgIWRlZmluZWQoSEFWRV9CUk9LRU5fUFRIUkVBRF9TSUdNQVNLKQorICAgIHNpZ3NldF90IHNldDsKKworICAgIC8qIHdlIGRvbid0IHdhbnQgdG8gcmVjZWl2ZSBhbnkgc2lnbmFsICovCisgICAgc2lnZmlsbHNldCgmc2V0KTsKKyAgICBwdGhyZWFkX3NpZ21hc2soU0lHX1NFVE1BU0ssICZzZXQsIE5VTEwpOworI2VuZGlmCisKKyAgICAvKiBPbiBmaXJzdCBwYXNzLCBmZWVkIGZpbGUgY29udGVudHMgaW1tZWRpYXRlbHkgKi8KKyAgICB0aW1lb3V0ID0gMDsKKyAgICBkbyB7CisgICAgICAgIHN0ID0gUHlUaHJlYWRfYWNxdWlyZV9sb2NrX3RpbWVkKHdhdGNoZG9nLmNhbmNlbF9ldmVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dCwgMCk7CisgICAgICAgIHRpbWVvdXQgPSB3YXRjaGRvZy5wZXJpb2RfdXM7CisgICAgICAgIGlmIChzdCA9PSBQWV9MT0NLX0FDUVVJUkVEKSB7CisgICAgICAgICAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sod2F0Y2hkb2cuY2FuY2VsX2V2ZW50KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIC8qIFRpbWVvdXQgPT4gcmVhZCBhbmQgd3JpdGUgZGF0YSAqLworICAgICAgICBhc3NlcnQoc3QgPT0gUFlfTE9DS19GQUlMVVJFKTsKKworICAgICAgICBpZiAobHNlZWsod2F0Y2hkb2cucmZkLCAwLCBTRUVLX1NFVCkgPCAwKSB7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBkYXRhX2xlbiA9IHJlYWQod2F0Y2hkb2cucmZkLCBkYXRhLCBNQVhEQVRBKTsKKyAgICAgICAgaWYgKGRhdGFfbGVuIDwgMCkgeworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGRhdGFfbGVuICE9IG9sZF9kYXRhX2xlbiB8fCBtZW1jbXAoZGF0YSwgb2xkX2RhdGEsIGRhdGFfbGVuKSkgeworICAgICAgICAgICAgY2hhciAqdGRhdGE7CisgICAgICAgICAgICBQeV9zc2l6ZV90IHRsZW47CisgICAgICAgICAgICAvKiBDb250ZW50cyBjaGFuZ2VkLCBmZWVkIHRoZW0gdG8gd2ZkICovCisgICAgICAgICAgICBsb25nIHggPSAobG9uZykgZGF0YV9sZW47CisgICAgICAgICAgICAvKiBXZSBjYW4ndCBkbyBhbnl0aGluZyBpZiB0aGUgY29uc3VtZXIgaXMgdG9vIHNsb3csIGp1c3QgYmFpbCBvdXQgKi8KKyAgICAgICAgICAgIGlmICh3cml0ZSh3YXRjaGRvZy53ZmQsICh2b2lkICopICZ4LCBzaXplb2YoeCkpIDwgc2l6ZW9mKHgpKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgaWYgKHdyaXRlKHdhdGNoZG9nLndmZCwgZGF0YSwgZGF0YV9sZW4pIDwgZGF0YV9sZW4pCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB0ZGF0YSA9IGRhdGE7CisgICAgICAgICAgICBkYXRhID0gb2xkX2RhdGE7CisgICAgICAgICAgICBvbGRfZGF0YSA9IHRkYXRhOworICAgICAgICAgICAgdGxlbiA9IGRhdGFfbGVuOworICAgICAgICAgICAgZGF0YV9sZW4gPSBvbGRfZGF0YV9sZW47CisgICAgICAgICAgICBvbGRfZGF0YV9sZW4gPSB0bGVuOworICAgICAgICB9CisgICAgfSB3aGlsZSAoMSk7CisKKyAgICBjbG9zZSh3YXRjaGRvZy5yZmQpOworICAgIGNsb3NlKHdhdGNoZG9nLndmZCk7CisKKyAgICAvKiBUaGUgb25seSB3YXkgb3V0ICovCisgICAgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKHdhdGNoZG9nLnJ1bm5pbmcpOworI3VuZGVmIE1BWERBVEEKK30KKworc3RhdGljIHZvaWQKK2NhbmNlbF9maWxlX3dhdGNoZG9nKHZvaWQpCit7CisgICAgLyogTm90aWZ5IGNhbmNlbGxhdGlvbiAqLworICAgIFB5VGhyZWFkX3JlbGVhc2VfbG9jayh3YXRjaGRvZy5jYW5jZWxfZXZlbnQpOworCisgICAgLyogV2FpdCBmb3IgdGhyZWFkIHRvIGpvaW4gKi8KKyAgICBQeVRocmVhZF9hY3F1aXJlX2xvY2sod2F0Y2hkb2cucnVubmluZywgMSk7CisgICAgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKHdhdGNoZG9nLnJ1bm5pbmcpOworCisgICAgLyogVGhlIG1haW4gdGhyZWFkIHNob3VsZCBhbHdheXMgaG9sZCB0aGUgY2FuY2VsX2V2ZW50IGxvY2sgKi8KKyAgICBQeVRocmVhZF9hY3F1aXJlX2xvY2sod2F0Y2hkb2cuY2FuY2VsX2V2ZW50LCAxKTsKK30KKworc3RhdGljIFB5T2JqZWN0KgorZmF1bHRoYW5kbGVyX2ZpbGVfd2F0Y2hkb2coUHlPYmplY3QgKnNlbGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InJmZCIsICJ3ZmQiLCAicGVyaW9kIiwgTlVMTH07CisgICAgZG91YmxlIHBlcmlvZDsKKyAgICBQWV9USU1FT1VUX1QgcGVyaW9kX3VzOworICAgIGludCByZmQsIHdmZDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywKKyAgICAgICAgImlpZDpfZmlsZV93YXRjaGRvZyIsIGt3bGlzdCwKKyAgICAgICAgJnJmZCwgJndmZCwgJnBlcmlvZCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICgocGVyaW9kICogMWU2KSA+PSAoZG91YmxlKSBQWV9USU1FT1VUX01BWCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwgICJwZXJpb2QgdmFsdWUgaXMgdG9vIGxhcmdlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBwZXJpb2RfdXMgPSAoUFlfVElNRU9VVF9UKShwZXJpb2QgKiAxZTYpOworICAgIGlmIChwZXJpb2RfdXMgPD0gMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInBlcmlvZCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIC8qIENhbmNlbCBwcmV2aW91cyB0aHJlYWQsIGlmIHJ1bm5pbmcgKi8KKyAgICBjYW5jZWxfZmlsZV93YXRjaGRvZygpOworCisgICAgd2F0Y2hkb2cucmZkID0gcmZkOworICAgIHdhdGNoZG9nLndmZCA9IHdmZDsKKyAgICB3YXRjaGRvZy5wZXJpb2RfdXMgPSBwZXJpb2RfdXM7CisKKyAgICAvKiBBcm0gdGhlc2UgbG9ja3MgdG8gc2VydmUgYXMgZXZlbnRzIHdoZW4gcmVsZWFzZWQgKi8KKyAgICBQeVRocmVhZF9hY3F1aXJlX2xvY2sod2F0Y2hkb2cucnVubmluZywgMSk7CisKKyAgICBpZiAoUHlUaHJlYWRfc3RhcnRfbmV3X3RocmVhZChmaWxlX3dhdGNoZG9nLCBOVUxMKSA9PSAtMSkgeworICAgICAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sod2F0Y2hkb2cucnVubmluZyk7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAidW5hYmxlIHRvIHN0YXJ0IGZpbGUgd2F0Y2hkb2cgdGhyZWFkIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIFB5X1JFVFVSTl9OT05FOworfQorCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfY2FuY2VsX2ZpbGVfd2F0Y2hkb2coUHlPYmplY3QgKnNlbGYpCit7CisgICAgY2FuY2VsX2ZpbGVfd2F0Y2hkb2coKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZiAgLyogRkFVTFRIQU5ETEVSX1dBVENIRE9HICovCisKKyNpZmRlZiBGQVVMVEhBTkRMRVJfVVNFUgorc3RhdGljIGludAorZmF1bHRoYW5kbGVyX3JlZ2lzdGVyKGludCBzaWdudW0sIGludCBjaGFpbiwgX1B5X3NpZ2hhbmRsZXJfdCAqcF9wcmV2aW91cykKK3sKKyNpZmRlZiBIQVZFX1NJR0FDVElPTgorICAgIHN0cnVjdCBzaWdhY3Rpb24gYWN0aW9uOworICAgIGFjdGlvbi5zYV9oYW5kbGVyID0gZmF1bHRoYW5kbGVyX3VzZXI7CisgICAgc2lnZW1wdHlzZXQoJmFjdGlvbi5zYV9tYXNrKTsKKyAgICAvKiBpZiB0aGUgc2lnbmFsIGlzIHJlY2VpdmVkIHdoaWxlIHRoZSBrZXJuZWwgaXMgZXhlY3V0aW5nIGEgc3lzdGVtCisgICAgICAgY2FsbCwgdHJ5IHRvIHJlc3RhcnQgdGhlIHN5c3RlbSBjYWxsIGluc3RlYWQgb2YgaW50ZXJydXB0aW5nIGl0IGFuZAorICAgICAgIHJldHVybiBFSU5UUi4gKi8KKyAgICBhY3Rpb24uc2FfZmxhZ3MgPSBTQV9SRVNUQVJUOworICAgIGlmIChjaGFpbikgeworICAgICAgICAvKiBkbyBub3QgcHJldmVudCB0aGUgc2lnbmFsIGZyb20gYmVpbmcgcmVjZWl2ZWQgZnJvbSB3aXRoaW4gaXRzCisgICAgICAgICAgIG93biBzaWduYWwgaGFuZGxlciAqLworICAgICAgICBhY3Rpb24uc2FfZmxhZ3MgPSBTQV9OT0RFRkVSOworICAgIH0KKyNpZmRlZiBIQVZFX1NJR0FMVFNUQUNLCisgICAgaWYgKHN0YWNrLnNzX3NwICE9IE5VTEwpIHsKKyAgICAgICAgLyogQ2FsbCB0aGUgc2lnbmFsIGhhbmRsZXIgb24gYW4gYWx0ZXJuYXRlIHNpZ25hbCBzdGFjaworICAgICAgICAgICBwcm92aWRlZCBieSBzaWdhbHRzdGFjaygpICovCisgICAgICAgIGFjdGlvbi5zYV9mbGFncyB8PSBTQV9PTlNUQUNLOworICAgIH0KKyNlbmRpZgorICAgIHJldHVybiBzaWdhY3Rpb24oc2lnbnVtLCAmYWN0aW9uLCBwX3ByZXZpb3VzKTsKKyNlbHNlCisgICAgX1B5X3NpZ2hhbmRsZXJfdCBwcmV2aW91czsKKyAgICBwcmV2aW91cyA9IHNpZ25hbChzaWdudW0sIGZhdWx0aGFuZGxlcl91c2VyKTsKKyAgICBpZiAocF9wcmV2aW91cyAhPSBOVUxMKQorICAgICAgICAqcF9wcmV2aW91cyA9IHByZXZpb3VzOworICAgIHJldHVybiAocHJldmlvdXMgPT0gU0lHX0VSUik7CisjZW5kaWYKK30KKworLyogSGFuZGxlciBvZiB1c2VyIHNpZ25hbHMgKGUuZy4gU0lHVVNSMSkuCisKKyAgIER1bXAgdGhlIHRyYWNlYmFjayBvZiB0aGUgY3VycmVudCB0aHJlYWQsIG9yIG9mIGFsbCB0aHJlYWRzIGlmCisgICB0aHJlYWQuYWxsX3RocmVhZHMgaXMgdHJ1ZS4KKworICAgVGhpcyBmdW5jdGlvbiBpcyBzaWduYWwgc2FmZSBhbmQgc2hvdWxkIG9ubHkgY2FsbCBzaWduYWwgc2FmZSBmdW5jdGlvbnMuICovCisKK3N0YXRpYyB2b2lkCitmYXVsdGhhbmRsZXJfdXNlcihpbnQgc2lnbnVtKQoreworICAgIHVzZXJfc2lnbmFsX3QgKnVzZXI7CisgICAgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlOworICAgIGludCBzYXZlX2Vycm5vID0gZXJybm87CisKKyAgICB1c2VyID0gJnVzZXJfc2lnbmFsc1tzaWdudW1dOworICAgIGlmICghdXNlci0+ZW5hYmxlZCkKKyAgICAgICAgcmV0dXJuOworCisjaWZkZWYgV0lUSF9USFJFQUQKKyAgICAvKiBQeVRocmVhZFN0YXRlX0dldCgpIGRvZXNuJ3QgZ2l2ZSB0aGUgc3RhdGUgb2YgdGhlIGN1cnJlbnQgdGhyZWFkIGlmCisgICAgICAgdGhlIHRocmVhZCBkb2Vzbid0IGhvbGQgdGhlIEdJTC4gUmVhZCB0aGUgdGhyZWFkIGxvY2FsIHN0b3JhZ2UgKFRMUykKKyAgICAgICBpbnN0ZWFkOiBjYWxsIFB5R0lMU3RhdGVfR2V0VGhpc1RocmVhZFN0YXRlKCkuICovCisgICAgdHN0YXRlID0gUHlHSUxTdGF0ZV9HZXRUaGlzVGhyZWFkU3RhdGUoKTsKKyNlbHNlCisgICAgdHN0YXRlID0gUHlUaHJlYWRTdGF0ZV9HZXQoKTsKKyNlbmRpZgorCisgICAgaWYgKHVzZXItPmFsbF90aHJlYWRzKQorICAgICAgICBfUHlfRHVtcFRyYWNlYmFja1RocmVhZHModXNlci0+ZmQsIHVzZXItPmludGVycCwgdHN0YXRlKTsKKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKHRzdGF0ZSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBfUHlfRHVtcFRyYWNlYmFjayh1c2VyLT5mZCwgdHN0YXRlKTsKKyAgICB9CisjaWZkZWYgSEFWRV9TSUdBQ1RJT04KKyAgICBpZiAodXNlci0+Y2hhaW4pIHsKKyAgICAgICAgKHZvaWQpc2lnYWN0aW9uKHNpZ251bSwgJnVzZXItPnByZXZpb3VzLCBOVUxMKTsKKyAgICAgICAgLyogY2FsbCB0aGUgcHJldmlvdXMgc2lnbmFsIGhhbmRsZXIgKi8KKyAgICAgICAgcmFpc2Uoc2lnbnVtKTsKKyAgICAgICAgKHZvaWQpZmF1bHRoYW5kbGVyX3JlZ2lzdGVyKHNpZ251bSwgdXNlci0+Y2hhaW4sIE5VTEwpOworICAgIH0KKyNlbHNlCisgICAgaWYgKHVzZXItPmNoYWluKSB7CisgICAgICAgIC8qIGNhbGwgdGhlIHByZXZpb3VzIHNpZ25hbCBoYW5kbGVyICovCisgICAgICAgIHVzZXItPnByZXZpb3VzKHNpZ251bSk7CisgICAgfQorI2VuZGlmCisgICAgZXJybm8gPSBzYXZlX2Vycm5vOworfQorCitzdGF0aWMgaW50CitjaGVja19zaWdudW0oaW50IHNpZ251bSkKK3sKKyAgICB1bnNpZ25lZCBpbnQgaTsKKworICAgIGZvciAoaT0wOyBpIDwgZmF1bHRoYW5kbGVyX25zaWduYWxzOyBpKyspIHsKKyAgICAgICAgaWYgKGZhdWx0aGFuZGxlcl9oYW5kbGVyc1tpXS5zaWdudW0gPT0gc2lnbnVtKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYWwgJWkgY2Fubm90IGJlIHJlZ2lzdGVyZWQsICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAidXNlIGVuYWJsZSgpIGluc3RlYWQiLAorICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ251bSk7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoc2lnbnVtIDwgMSB8fCBOU0lHIDw9IHNpZ251bSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInNpZ25hbCBudW1iZXIgb3V0IG9mIHJhbmdlIik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICByZXR1cm4gMTsKK30KKworc3RhdGljIFB5T2JqZWN0KgorZmF1bHRoYW5kbGVyX3JlZ2lzdGVyX3B5KFB5T2JqZWN0ICpzZWxmLAorICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQoreworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsic2lnbnVtIiwgImZpbGUiLCAiYWxsX3RocmVhZHMiLCAiY2hhaW4iLCBOVUxMfTsKKyAgICBpbnQgc2lnbnVtOworICAgIFB5T2JqZWN0ICpmaWxlID0gTlVMTDsKKyAgICBpbnQgYWxsX3RocmVhZHMgPSAxOworICAgIGludCBjaGFpbiA9IDA7CisgICAgaW50IGZkOworICAgIHVzZXJfc2lnbmFsX3QgKnVzZXI7CisgICAgX1B5X3NpZ2hhbmRsZXJfdCBwcmV2aW91czsKKyAgICBQeVRocmVhZFN0YXRlICp0c3RhdGU7CisgICAgaW50IGVycjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywKKyAgICAgICAgIml8T2lpOnJlZ2lzdGVyIiwga3dsaXN0LAorICAgICAgICAmc2lnbnVtLCAmZmlsZSwgJmFsbF90aHJlYWRzLCAmY2hhaW4pKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmICghY2hlY2tfc2lnbnVtKHNpZ251bSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgdHN0YXRlID0gZ2V0X3RocmVhZF9zdGF0ZSgpOworICAgIGlmICh0c3RhdGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBmaWxlID0gZmF1bHRoYW5kbGVyX2dldF9maWxlbm8oZmlsZSwgJmZkKTsKKyAgICBpZiAoZmlsZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmICh1c2VyX3NpZ25hbHMgPT0gTlVMTCkgeworICAgICAgICB1c2VyX3NpZ25hbHMgPSBjYWxsb2MoTlNJRywgc2l6ZW9mKHVzZXJfc2lnbmFsX3QpKTsKKyAgICAgICAgaWYgKHVzZXJfc2lnbmFscyA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisgICAgfQorICAgIHVzZXIgPSAmdXNlcl9zaWduYWxzW3NpZ251bV07CisKKyAgICBpZiAoIXVzZXItPmVuYWJsZWQpIHsKKyAgICAgICAgZXJyID0gZmF1bHRoYW5kbGVyX3JlZ2lzdGVyKHNpZ251bSwgY2hhaW4sICZwcmV2aW91cyk7CisgICAgICAgIGlmIChlcnIpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgfQorCisgICAgUHlfWERFQ1JFRih1c2VyLT5maWxlKTsKKyAgICBQeV9JTkNSRUYoZmlsZSk7CisgICAgdXNlci0+ZmlsZSA9IGZpbGU7CisgICAgdXNlci0+ZmQgPSBmZDsKKyAgICB1c2VyLT5hbGxfdGhyZWFkcyA9IGFsbF90aHJlYWRzOworICAgIHVzZXItPmNoYWluID0gY2hhaW47CisgICAgdXNlci0+cHJldmlvdXMgPSBwcmV2aW91czsKKyAgICB1c2VyLT5pbnRlcnAgPSB0c3RhdGUtPmludGVycDsKKyAgICB1c2VyLT5lbmFibGVkID0gMTsKKworICAgIFB5X1JFVFVSTl9OT05FOworfQorCitzdGF0aWMgaW50CitmYXVsdGhhbmRsZXJfdW5yZWdpc3Rlcih1c2VyX3NpZ25hbF90ICp1c2VyLCBpbnQgc2lnbnVtKQoreworICAgIGlmICghdXNlci0+ZW5hYmxlZCkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgdXNlci0+ZW5hYmxlZCA9IDA7CisjaWZkZWYgSEFWRV9TSUdBQ1RJT04KKyAgICAodm9pZClzaWdhY3Rpb24oc2lnbnVtLCAmdXNlci0+cHJldmlvdXMsIE5VTEwpOworI2Vsc2UKKyAgICAodm9pZClzaWduYWwoc2lnbnVtLCB1c2VyLT5wcmV2aW91cyk7CisjZW5kaWYKKyAgICBQeV9DTEVBUih1c2VyLT5maWxlKTsKKyAgICB1c2VyLT5mZCA9IC0xOworICAgIHJldHVybiAxOworfQorCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfdW5yZWdpc3Rlcl9weShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IHNpZ251bTsKKyAgICB1c2VyX3NpZ25hbF90ICp1c2VyOworICAgIGludCBjaGFuZ2U7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6dW5yZWdpc3RlciIsICZzaWdudW0pKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmICghY2hlY2tfc2lnbnVtKHNpZ251bSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKHVzZXJfc2lnbmFscyA9PSBOVUxMKQorICAgICAgICBQeV9SRVRVUk5fRkFMU0U7CisKKyAgICB1c2VyID0gJnVzZXJfc2lnbmFsc1tzaWdudW1dOworICAgIGNoYW5nZSA9IGZhdWx0aGFuZGxlcl91bnJlZ2lzdGVyKHVzZXIsIHNpZ251bSk7CisgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZyhjaGFuZ2UpOworfQorI2VuZGlmICAgLyogRkFVTFRIQU5ETEVSX1VTRVIgKi8KKworCitzdGF0aWMgUHlPYmplY3QgKgorZmF1bHRoYW5kbGVyX3JlYWRfbnVsbChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgdm9sYXRpbGUgaW50ICp4OworICAgIHZvbGF0aWxlIGludCB5OworICAgIGludCByZWxlYXNlX2dpbCA9IDA7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8aTpfcmVhZF9udWxsIiwgJnJlbGVhc2VfZ2lsKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICB4ID0gTlVMTDsKKyAgICBpZiAocmVsZWFzZV9naWwpIHsKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICB5ID0gKng7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgfSBlbHNlCisgICAgICAgIHkgPSAqeDsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKHkpOworCit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitmYXVsdGhhbmRsZXJfc2lnc2VndihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisjaWYgZGVmaW5lZChNU19XSU5ET1dTKQorICAgIC8qIEZvciBTSUdTRUdWLCBmYXVsdGhhbmRsZXJfZmF0YWxfZXJyb3IoKSByZXN0b3JlcyB0aGUgcHJldmlvdXMgc2lnbmFsCisgICAgICAgaGFuZGxlciBhbmQgdGhlbiBnaXZlcyBiYWNrIHRoZSBleGVjdXRpb24gZmxvdyB0byB0aGUgcHJvZ3JhbSAod2l0aG91dAorICAgICAgIGV4cGxpY2l0bHkgY2FsbGluZyB0aGUgcHJldmlvdXMgZXJyb3IgaGFuZGxlcikuIEluIGEgbm9ybWFsIGNhc2UsIHRoZQorICAgICAgIFNJR1NFR1Ygd2FzIHJhaXNlZCBieSB0aGUga2VybmVsIGJlY2F1c2Ugb2YgYSBmYXVsdCwgYW5kIHNvIGlmIHRoZQorICAgICAgIHByb2dyYW0gcmV0cmllcyB0byBleGVjdXRlIHRoZSBzYW1lIGluc3RydWN0aW9uLCB0aGUgZmF1bHQgd2lsbCBiZQorICAgICAgIHJhaXNlZCBhZ2Fpbi4KKworICAgICAgIEhlcmUgdGhlIGZhdWx0IGlzIHNpbXVsYXRlZCBieSBhIGZha2UgU0lHU0VHViBzaWduYWwgcmFpc2VkIGJ5IHRoZQorICAgICAgIGFwcGxpY2F0aW9uLiBXZSBoYXZlIHRvIHJhaXNlIFNJR1NFR1YgYXQgbGVhc2UgdHdpY2U6IG9uY2UgZm9yCisgICAgICAgZmF1bHRoYW5kbGVyX2ZhdGFsX2Vycm9yKCksIGFuZCBvbmUgbW9yZSB0aW1lIGZvciB0aGUgcHJldmlvdXMgc2lnbmFsCisgICAgICAgaGFuZGxlci4gKi8KKyAgICB3aGlsZSgxKQorICAgICAgICByYWlzZShTSUdTRUdWKTsKKyNlbHNlCisgICAgcmFpc2UoU0lHU0VHVik7CisjZW5kaWYKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2ZhdWx0aGFuZGxlcl9zaWdmcGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIC8qIERvIGFuIGludGVnZXIgZGl2aXNpb24gYnkgemVybzogcmFpc2UgYSBTSUdGUEUgb24gSW50ZWwgQ1BVLCBidXQgbm90IG9uCisgICAgICAgUG93ZXJQQy4gVXNlIHZvbGF0aWxlIHRvIGRpc2FibGUgY29tcGlsZS10aW1lIG9wdGltaXphdGlvbnMuICovCisgICAgdm9sYXRpbGUgaW50IHggPSAxLCB5ID0gMCwgejsKKyAgICB6ID0geCAvIHk7CisgICAgLyogSWYgdGhlIGRpdmlzaW9uIGJ5IHplcm8gZGlkbid0IHJhaXNlIGEgU0lHRlBFIChlLmcuIG9uIFBvd2VyUEMpLAorICAgICAgIHJhaXNlIGl0IG1hbnVhbGx5LiAqLworICAgIHJhaXNlKFNJR0ZQRSk7CisgICAgLyogVGhpcyBsaW5lIGlzIG5ldmVyIHJlYWNoZWQsIGJ1dCB3ZSBwcmV0ZW5kIHRvIG1ha2Ugc29tZXRoaW5nIHdpdGggegorICAgICAgIHRvIHNpbGVuY2UgYSBjb21waWxlciB3YXJuaW5nLiAqLworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoeik7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitmYXVsdGhhbmRsZXJfc2lnYWJydChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisjaWZkZWYgX01TQ19WRVIKKyAgICAvKiBWaXN1YWwgU3R1ZGlvOiBjb25maWd1cmUgYWJvcnQoKSB0byBub3QgZGlzcGxheSBhbiBlcnJvciBtZXNzYWdlIG5vcgorICAgICAgIG9wZW4gYSBwb3B1cCBhc2tpbmcgdG8gcmVwb3J0IHRoZSBmYXVsdC4gKi8KKyAgICBfc2V0X2Fib3J0X2JlaGF2aW9yKDAsIF9XUklURV9BQk9SVF9NU0cgfCBfQ0FMTF9SRVBPUlRGQVVMVCk7CisjZW5kaWYKKyAgICBhYm9ydCgpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorCisjaWZkZWYgU0lHQlVTCitzdGF0aWMgUHlPYmplY3QgKgorZmF1bHRoYW5kbGVyX3NpZ2J1cyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcmFpc2UoU0lHQlVTKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWZkZWYgU0lHSUxMCitzdGF0aWMgUHlPYmplY3QgKgorZmF1bHRoYW5kbGVyX3NpZ2lsbChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcmFpc2UoU0lHSUxMKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCitzdGF0aWMgUHlPYmplY3QgKgorZmF1bHRoYW5kbGVyX2ZhdGFsX2Vycm9yX3B5KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBjaGFyICptZXNzYWdlOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieTpmYXRhbF9lcnJvciIsICZtZXNzYWdlKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfRmF0YWxFcnJvcihtZXNzYWdlKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworI2lmIGRlZmluZWQoSEFWRV9TSUdBTFRTVEFDSykgJiYgZGVmaW5lZChIQVZFX1NJR0FDVElPTikKK3N0YXRpYyB2b2lkKgorc3RhY2tfb3ZlcmZsb3codm9pZCAqbWluX3NwLCB2b2lkICptYXhfc3AsIHNpemVfdCAqZGVwdGgpCit7CisgICAgLyogYWxsb2NhdGUgNDA5NiBieXRlcyBvbiB0aGUgc3RhY2sgYXQgZWFjaCBjYWxsICovCisgICAgdW5zaWduZWQgY2hhciBidWZmZXJbNDA5Nl07CisgICAgdm9pZCAqc3AgPSAmYnVmZmVyOworICAgICpkZXB0aCArPSAxOworICAgIGlmIChzcCA8IG1pbl9zcCB8fCBtYXhfc3AgPCBzcCkKKyAgICAgICAgcmV0dXJuIHNwOworICAgIGJ1ZmZlclswXSA9IDE7CisgICAgYnVmZmVyWzQwOTVdID0gMDsKKyAgICByZXR1cm4gc3RhY2tfb3ZlcmZsb3cobWluX3NwLCBtYXhfc3AsIGRlcHRoKTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2ZhdWx0aGFuZGxlcl9zdGFja19vdmVyZmxvdyhQeU9iamVjdCAqc2VsZikKK3sKKyAgICBzaXplX3QgZGVwdGgsIHNpemU7CisgICAgY2hhciAqc3AgPSAoY2hhciAqKSZkZXB0aCwgKnN0b3A7CisKKyAgICBkZXB0aCA9IDA7CisgICAgc3RvcCA9IHN0YWNrX292ZXJmbG93KHNwIC0gU1RBQ0tfT1ZFUkZMT1dfTUFYX1NJWkUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHNwICsgU1RBQ0tfT1ZFUkZMT1dfTUFYX1NJWkUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZkZXB0aCk7CisgICAgaWYgKHNwIDwgc3RvcCkKKyAgICAgICAgc2l6ZSA9IHN0b3AgLSBzcDsKKyAgICBlbHNlCisgICAgICAgIHNpemUgPSBzcCAtIHN0b3A7CisgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1J1bnRpbWVFcnJvciwKKyAgICAgICAgInVuYWJsZSB0byByYWlzZSBhIHN0YWNrIG92ZXJmbG93IChhbGxvY2F0ZWQgJXp1IGJ5dGVzICIKKyAgICAgICAgIm9uIHRoZSBzdGFjaywgJXp1IHJlY3Vyc2l2ZSBjYWxscykiLAorICAgICAgICBzaXplLCBkZXB0aCk7CisgICAgcmV0dXJuIE5VTEw7Cit9CisjZW5kaWYKKworCitzdGF0aWMgaW50CitmYXVsdGhhbmRsZXJfdHJhdmVyc2UoUHlPYmplY3QgKm1vZHVsZSwgdmlzaXRwcm9jIHZpc2l0LCB2b2lkICphcmcpCit7CisjaWZkZWYgRkFVTFRIQU5ETEVSX1VTRVIKKyAgICB1bnNpZ25lZCBpbnQgc2lnbnVtOworI2VuZGlmCisKKyNpZmRlZiBGQVVMVEhBTkRMRVJfTEFURVIKKyAgICBQeV9WSVNJVCh0aHJlYWQuZmlsZSk7CisjZW5kaWYKKyNpZmRlZiBGQVVMVEhBTkRMRVJfVVNFUgorICAgIGlmICh1c2VyX3NpZ25hbHMgIT0gTlVMTCkgeworICAgICAgICBmb3IgKHNpZ251bT0wOyBzaWdudW0gPCBOU0lHOyBzaWdudW0rKykKKyAgICAgICAgICAgIFB5X1ZJU0lUKHVzZXJfc2lnbmFsc1tzaWdudW1dLmZpbGUpOworICAgIH0KKyNlbmRpZgorICAgIFB5X1ZJU0lUKGZhdGFsX2Vycm9yLmZpbGUpOworICAgIHJldHVybiAwOworfQorCitQeURvY19TVFJWQVIobW9kdWxlX2RvYywKKyJmYXVsdGhhbmRsZXIgbW9kdWxlLiIpOworCitzdGF0aWMgUHlNZXRob2REZWYgbW9kdWxlX21ldGhvZHNbXSA9IHsKKyAgICB7ImVuYWJsZSIsCisgICAgIChQeUNGdW5jdGlvbilmYXVsdGhhbmRsZXJfZW5hYmxlLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKKyAgICAgUHlEb2NfU1RSKCJlbmFibGUoZmlsZT1zeXMuc3RkZXJyLCBhbGxfdGhyZWFkcz1UcnVlKTogIgorICAgICAgICAgICAgICAgImVuYWJsZSB0aGUgZmF1bHQgaGFuZGxlciIpfSwKKyAgICB7ImRpc2FibGUiLCAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX2Rpc2FibGVfcHksIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoImRpc2FibGUoKTogZGlzYWJsZSB0aGUgZmF1bHQgaGFuZGxlciIpfSwKKyAgICB7ImlzX2VuYWJsZWQiLCAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX2lzX2VuYWJsZWQsIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoImlzX2VuYWJsZWQoKS0+Ym9vbDogY2hlY2sgaWYgdGhlIGhhbmRsZXIgaXMgZW5hYmxlZCIpfSwKKyAgICB7ImR1bXBfdHJhY2ViYWNrIiwKKyAgICAgKFB5Q0Z1bmN0aW9uKWZhdWx0aGFuZGxlcl9kdW1wX3RyYWNlYmFja19weSwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCisgICAgIFB5RG9jX1NUUigiZHVtcF90cmFjZWJhY2soZmlsZT1zeXMuc3RkZXJyLCBhbGxfdGhyZWFkcz1UcnVlKTogIgorICAgICAgICAgICAgICAgImR1bXAgdGhlIHRyYWNlYmFjayBvZiB0aGUgY3VycmVudCB0aHJlYWQsIG9yIG9mIGFsbCB0aHJlYWRzICIKKyAgICAgICAgICAgICAgICJpZiBhbGxfdGhyZWFkcyBpcyBUcnVlLCBpbnRvIGZpbGUiKX0sCisjaWZkZWYgRkFVTFRIQU5ETEVSX0xBVEVSCisgICAgeyJkdW1wX3RyYWNlYmFja3NfbGF0ZXIiLAorICAgICAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX2R1bXBfdHJhY2ViYWNrc19sYXRlciwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCisgICAgIFB5RG9jX1NUUigiZHVtcF90cmFjZWJhY2tzX2xhdGVyKHRpbWVvdXQsIHJlcGVhdD1GYWxzZSwgZmlsZT1zeXMuc3RkZXJybiwgZXhpdD1GYWxzZSk6XG4iCisgICAgICAgICAgICAgICAiZHVtcCB0aGUgdHJhY2ViYWNrIG9mIGFsbCB0aHJlYWRzIGluIHRpbWVvdXQgc2Vjb25kcyxcbiIKKyAgICAgICAgICAgICAgICJvciBlYWNoIHRpbWVvdXQgc2Vjb25kcyBpZiByZXBlYXQgaXMgVHJ1ZS4gSWYgZXhpdCBpcyBUcnVlLCAiCisgICAgICAgICAgICAgICAiY2FsbCBfZXhpdCgxKSB3aGljaCBpcyBub3Qgc2FmZS4iKX0sCisgICAgeyJjYW5jZWxfZHVtcF90cmFjZWJhY2tzX2xhdGVyIiwKKyAgICAgKFB5Q0Z1bmN0aW9uKWZhdWx0aGFuZGxlcl9jYW5jZWxfZHVtcF90cmFjZWJhY2tzX2xhdGVyX3B5LCBNRVRIX05PQVJHUywKKyAgICAgUHlEb2NfU1RSKCJjYW5jZWxfZHVtcF90cmFjZWJhY2tzX2xhdGVyKCk6XG5jYW5jZWwgdGhlIHByZXZpb3VzIGNhbGwgIgorICAgICAgICAgICAgICAgInRvIGR1bXBfdHJhY2ViYWNrc19sYXRlcigpLiIpfSwKKyNlbmRpZgorCisjaWZkZWYgRkFVTFRIQU5ETEVSX1dBVENIRE9HCisgICAgeyJfZmlsZV93YXRjaGRvZyIsCisgICAgIChQeUNGdW5jdGlvbilmYXVsdGhhbmRsZXJfZmlsZV93YXRjaGRvZywgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCisgICAgIFB5RG9jX1NUUigiX2ZpbGVfd2F0Y2hkb2cocmZkLCB3ZmQsIHBlcmlvZCk6XG4iCisgICAgICAgICAgICAgICAiZmVlZCB0aGUgY29udGVudHMgb2YgJ3JmZCcgdG8gJ3dmZCcsIGlmIGNoYW5nZWQsXG4iCisgICAgICAgICAgICAgICAiZXZlcnkgJ3BlcmlvZCBzZWNvbmRzJy4iKX0sCisgICAgeyJfY2FuY2VsX2ZpbGVfd2F0Y2hkb2ciLAorICAgICAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX2NhbmNlbF9maWxlX3dhdGNoZG9nLCBNRVRIX05PQVJHUywKKyAgICAgUHlEb2NfU1RSKCJfY2FuY2VsX2ZpbGVfd2F0Y2hkb2coKTpcbmNhbmNlbCB0aGUgcHJldmlvdXMgY2FsbCAiCisgICAgICAgICAgICAgICAidG8gX2ZpbGVfd2F0Y2hkb2coKS4iKX0sCisjZW5kaWYKKworI2lmZGVmIEZBVUxUSEFORExFUl9VU0VSCisgICAgeyJyZWdpc3RlciIsCisgICAgIChQeUNGdW5jdGlvbilmYXVsdGhhbmRsZXJfcmVnaXN0ZXJfcHksIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTLAorICAgICBQeURvY19TVFIoInJlZ2lzdGVyKHNpZ251bSwgZmlsZT1zeXMuc3RkZXJyLCBhbGxfdGhyZWFkcz1UcnVlLCBjaGFpbj1GYWxzZSk6ICIKKyAgICAgICAgICAgICAgICJyZWdpc3RlciBhbiBoYW5kbGVyIGZvciB0aGUgc2lnbmFsICdzaWdudW0nOiBkdW1wIHRoZSAiCisgICAgICAgICAgICAgICAidHJhY2ViYWNrIG9mIHRoZSBjdXJyZW50IHRocmVhZCwgb3Igb2YgYWxsIHRocmVhZHMgaWYgIgorICAgICAgICAgICAgICAgImFsbF90aHJlYWRzIGlzIFRydWUsIGludG8gZmlsZSIpfSwKKyAgICB7InVucmVnaXN0ZXIiLAorICAgICBmYXVsdGhhbmRsZXJfdW5yZWdpc3Rlcl9weSwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCisgICAgIFB5RG9jX1NUUigidW5yZWdpc3RlcihzaWdudW0pOiB1bnJlZ2lzdGVyIHRoZSBoYW5kbGVyIG9mIHRoZSBzaWduYWwgIgorICAgICAgICAgICAgICAgICInc2lnbnVtJyByZWdpc3RlcmVkIGJ5IHJlZ2lzdGVyKCkiKX0sCisjZW5kaWYKKworICAgIHsiX3JlYWRfbnVsbCIsIGZhdWx0aGFuZGxlcl9yZWFkX251bGwsIE1FVEhfVkFSQVJHUywKKyAgICAgUHlEb2NfU1RSKCJfcmVhZF9udWxsKHJlbGVhc2VfZ2lsPUZhbHNlKTogcmVhZCBmcm9tIE5VTEwsIHJhaXNlICIKKyAgICAgICAgICAgICAgICJhIFNJR1NFR1Ygb3IgU0lHQlVTIHNpZ25hbCBkZXBlbmRpbmcgb24gdGhlIHBsYXRmb3JtIil9LAorICAgIHsiX3NpZ3NlZ3YiLCBmYXVsdGhhbmRsZXJfc2lnc2VndiwgTUVUSF9WQVJBUkdTLAorICAgICBQeURvY19TVFIoIl9zaWdzZWd2KCk6IHJhaXNlIGEgU0lHU0VHViBzaWduYWwiKX0sCisgICAgeyJfc2lnYWJydCIsIGZhdWx0aGFuZGxlcl9zaWdhYnJ0LCBNRVRIX1ZBUkFSR1MsCisgICAgIFB5RG9jX1NUUigiX3NpZ2FicnQoKTogcmFpc2UgYSBTSUdBQlJUIHNpZ25hbCIpfSwKKyAgICB7Il9zaWdmcGUiLCAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX3NpZ2ZwZSwgTUVUSF9OT0FSR1MsCisgICAgIFB5RG9jX1NUUigiX3NpZ2ZwZSgpOiByYWlzZSBhIFNJR0ZQRSBzaWduYWwiKX0sCisjaWZkZWYgU0lHQlVTCisgICAgeyJfc2lnYnVzIiwgKFB5Q0Z1bmN0aW9uKWZhdWx0aGFuZGxlcl9zaWdidXMsIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoIl9zaWdidXMoKTogcmFpc2UgYSBTSUdCVVMgc2lnbmFsIil9LAorI2VuZGlmCisjaWZkZWYgU0lHSUxMCisgICAgeyJfc2lnaWxsIiwgKFB5Q0Z1bmN0aW9uKWZhdWx0aGFuZGxlcl9zaWdpbGwsIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoIl9zaWdpbGwoKTogcmFpc2UgYSBTSUdJTEwgc2lnbmFsIil9LAorI2VuZGlmCisgICAgeyJfZmF0YWxfZXJyb3IiLCBmYXVsdGhhbmRsZXJfZmF0YWxfZXJyb3JfcHksIE1FVEhfVkFSQVJHUywKKyAgICAgUHlEb2NfU1RSKCJfZmF0YWxfZXJyb3IobWVzc2FnZSk6IGNhbGwgUHlfRmF0YWxFcnJvcihtZXNzYWdlKSIpfSwKKyNpZiBkZWZpbmVkKEhBVkVfU0lHQUxUU1RBQ0spICYmIGRlZmluZWQoSEFWRV9TSUdBQ1RJT04pCisgICAgeyJfc3RhY2tfb3ZlcmZsb3ciLCAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX3N0YWNrX292ZXJmbG93LCBNRVRIX05PQVJHUywKKyAgICAgUHlEb2NfU1RSKCJfc3RhY2tfb3ZlcmZsb3coKTogcmVjdXJzaXZlIGNhbGwgdG8gcmFpc2UgYSBzdGFjayBvdmVyZmxvdyIpfSwKKyNlbmRpZgorICAgIHtOVUxMLCBOVUxMfSAgLyogc2VudGluZWwgKi8KK307CisKK3N0YXRpYyBzdHJ1Y3QgUHlNb2R1bGVEZWYgbW9kdWxlX2RlZiA9IHsKKyAgICBQeU1vZHVsZURlZl9IRUFEX0lOSVQsCisgICAgImZhdWx0aGFuZGxlciIsCisgICAgbW9kdWxlX2RvYywKKyAgICAwLCAvKiBub24tbmVnYXRpdmUgc2l6ZSB0byBiZSBhYmxlIHRvIHVubG9hZCB0aGUgbW9kdWxlICovCisgICAgbW9kdWxlX21ldGhvZHMsCisgICAgTlVMTCwKKyAgICBmYXVsdGhhbmRsZXJfdHJhdmVyc2UsCisgICAgTlVMTCwKKyAgICBOVUxMCit9OworCitQeU1PRElOSVRfRlVOQworUHlJbml0X2ZhdWx0aGFuZGxlcih2b2lkKQoreworICAgIHJldHVybiBQeU1vZHVsZV9DcmVhdGUoJm1vZHVsZV9kZWYpOworfQorCisvKiBDYWxsIGZhdWx0aGFuZGxlci5lbmFibGUoKSBpZiB0aGUgUFlUSE9ORkFVTFRIQU5ETEVSIGVudmlyb25tZW50IHZhcmlhYmxlCisgICBpcyBkZWZpbmVkLCBvciBpZiBzeXMuX3hvcHRpb25zIGhhcyBhICdmYXVsdGhhbmRsZXInIGtleS4gKi8KKworc3RhdGljIGludAorZmF1bHRoYW5kbGVyX2Vudl9vcHRpb25zKHZvaWQpCit7CisgICAgUHlPYmplY3QgKnhvcHRpb25zLCAqa2V5LCAqbW9kdWxlLCAqcmVzOworICAgIF9QeV9JREVOVElGSUVSKGVuYWJsZSk7CisKKyAgICBpZiAoIVB5X0dFVEVOVigiUFlUSE9ORkFVTFRIQU5ETEVSIikpIHsKKyAgICAgICAgaW50IGhhc19rZXk7CisKKyAgICAgICAgeG9wdGlvbnMgPSBQeVN5c19HZXRYT3B0aW9ucygpOworICAgICAgICBpZiAoeG9wdGlvbnMgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKworICAgICAgICBrZXkgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiZmF1bHRoYW5kbGVyIik7CisgICAgICAgIGlmIChrZXkgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKworICAgICAgICBoYXNfa2V5ID0gUHlEaWN0X0NvbnRhaW5zKHhvcHRpb25zLCBrZXkpOworICAgICAgICBQeV9ERUNSRUYoa2V5KTsKKyAgICAgICAgaWYgKCFoYXNfa2V5KQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgbW9kdWxlID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlKCJmYXVsdGhhbmRsZXIiKTsKKyAgICBpZiAobW9kdWxlID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKG1vZHVsZSwgJlB5SWRfZW5hYmxlLCAiIik7CisgICAgUHlfREVDUkVGKG1vZHVsZSk7CisgICAgaWYgKHJlcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgUHlfREVDUkVGKHJlcyk7CisgICAgcmV0dXJuIDA7Cit9CisKK2ludCBfUHlGYXVsdGhhbmRsZXJfSW5pdCh2b2lkKQoreworI2lmZGVmIEhBVkVfU0lHQUxUU1RBQ0sKKyAgICBpbnQgZXJyOworCisgICAgLyogVHJ5IHRvIGFsbG9jYXRlIGFuIGFsdGVybmF0ZSBzdGFjayBmb3IgZmF1bHRoYW5kbGVyKCkgc2lnbmFsIGhhbmRsZXIgdG8KKyAgICAgKiBiZSBhYmxlIHRvIGFsbG9jYXRlIG1lbW9yeSBvbiB0aGUgc3RhY2ssIGV2ZW4gb24gYSBzdGFjayBvdmVyZmxvdy4gSWYgaXQKKyAgICAgKiBmYWlscywgaWdub3JlIHRoZSBlcnJvci4gKi8KKyAgICBzdGFjay5zc19mbGFncyA9IDA7CisgICAgc3RhY2suc3Nfc2l6ZSA9IFNJR1NUS1NaOworICAgIHN0YWNrLnNzX3NwID0gUHlNZW1fTWFsbG9jKHN0YWNrLnNzX3NpemUpOworICAgIGlmIChzdGFjay5zc19zcCAhPSBOVUxMKSB7CisgICAgICAgIGVyciA9IHNpZ2FsdHN0YWNrKCZzdGFjaywgTlVMTCk7CisgICAgICAgIGlmIChlcnIpIHsKKyAgICAgICAgICAgIFB5TWVtX0ZyZWUoc3RhY2suc3Nfc3ApOworICAgICAgICAgICAgc3RhY2suc3Nfc3AgPSBOVUxMOworICAgICAgICB9CisgICAgfQorI2VuZGlmCisjaWZkZWYgRkFVTFRIQU5ETEVSX0xBVEVSCisgICAgdGhyZWFkLmZpbGUgPSBOVUxMOworICAgIHRocmVhZC5jYW5jZWxfZXZlbnQgPSBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKCk7CisgICAgdGhyZWFkLnJ1bm5pbmcgPSBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKCk7CisgICAgaWYgKCF0aHJlYWQuY2FuY2VsX2V2ZW50IHx8ICF0aHJlYWQucnVubmluZykgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgImNvdWxkIG5vdCBhbGxvY2F0ZSBsb2NrcyBmb3IgZmF1bHRoYW5kbGVyIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgUHlUaHJlYWRfYWNxdWlyZV9sb2NrKHRocmVhZC5jYW5jZWxfZXZlbnQsIDEpOworI2VuZGlmCisjaWZkZWYgRkFVTFRIQU5ETEVSX1dBVENIRE9HCisgICAgd2F0Y2hkb2cuY2FuY2VsX2V2ZW50ID0gUHlUaHJlYWRfYWxsb2NhdGVfbG9jaygpOworICAgIHdhdGNoZG9nLnJ1bm5pbmcgPSBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKCk7CisgICAgaWYgKCF3YXRjaGRvZy5jYW5jZWxfZXZlbnQgfHwgIXdhdGNoZG9nLnJ1bm5pbmcpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJjb3VsZCBub3QgYWxsb2NhdGUgbG9ja3MgZm9yIGZhdWx0aGFuZGxlciIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jayh3YXRjaGRvZy5jYW5jZWxfZXZlbnQsIDEpOworI2VuZGlmCisKKyAgICByZXR1cm4gZmF1bHRoYW5kbGVyX2Vudl9vcHRpb25zKCk7Cit9CisKK3ZvaWQgX1B5RmF1bHRoYW5kbGVyX0Zpbmkodm9pZCkKK3sKKyNpZmRlZiBGQVVMVEhBTkRMRVJfVVNFUgorICAgIHVuc2lnbmVkIGludCBzaWdudW07CisjZW5kaWYKKworI2lmZGVmIEZBVUxUSEFORExFUl9MQVRFUgorICAgIC8qIGxhdGVyICovCisgICAgaWYgKHRocmVhZC5jYW5jZWxfZXZlbnQpIHsKKyAgICAgICAgY2FuY2VsX2R1bXBfdHJhY2ViYWNrc19sYXRlcigpOworICAgICAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sodGhyZWFkLmNhbmNlbF9ldmVudCk7CisgICAgICAgIFB5VGhyZWFkX2ZyZWVfbG9jayh0aHJlYWQuY2FuY2VsX2V2ZW50KTsKKyAgICAgICAgdGhyZWFkLmNhbmNlbF9ldmVudCA9IE5VTEw7CisgICAgfQorICAgIGlmICh0aHJlYWQucnVubmluZykgeworICAgICAgICBQeVRocmVhZF9mcmVlX2xvY2sodGhyZWFkLnJ1bm5pbmcpOworICAgICAgICB0aHJlYWQucnVubmluZyA9IE5VTEw7CisgICAgfQorI2VuZGlmCisKKyNpZmRlZiBGQVVMVEhBTkRMRVJfV0FUQ0hET0cKKyAgICAvKiBmaWxlIHdhdGNoZG9nICovCisgICAgaWYgKHdhdGNoZG9nLmNhbmNlbF9ldmVudCkgeworICAgICAgICBjYW5jZWxfZmlsZV93YXRjaGRvZygpOworICAgICAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sod2F0Y2hkb2cuY2FuY2VsX2V2ZW50KTsKKyAgICAgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHdhdGNoZG9nLmNhbmNlbF9ldmVudCk7CisgICAgICAgIHdhdGNoZG9nLmNhbmNlbF9ldmVudCA9IE5VTEw7CisgICAgfQorICAgIGlmICh3YXRjaGRvZy5ydW5uaW5nKSB7CisgICAgICAgIFB5VGhyZWFkX2ZyZWVfbG9jayh3YXRjaGRvZy5ydW5uaW5nKTsKKyAgICAgICAgd2F0Y2hkb2cucnVubmluZyA9IE5VTEw7CisgICAgfQorI2VuZGlmCisKKyNpZmRlZiBGQVVMVEhBTkRMRVJfVVNFUgorICAgIC8qIHVzZXIgKi8KKyAgICBpZiAodXNlcl9zaWduYWxzICE9IE5VTEwpIHsKKyAgICAgICAgZm9yIChzaWdudW09MDsgc2lnbnVtIDwgTlNJRzsgc2lnbnVtKyspCisgICAgICAgICAgICBmYXVsdGhhbmRsZXJfdW5yZWdpc3RlcigmdXNlcl9zaWduYWxzW3NpZ251bV0sIHNpZ251bSk7CisgICAgICAgIGZyZWUodXNlcl9zaWduYWxzKTsKKyAgICAgICAgdXNlcl9zaWduYWxzID0gTlVMTDsKKyAgICB9CisjZW5kaWYKKworICAgIC8qIGZhdGFsICovCisgICAgZmF1bHRoYW5kbGVyX2Rpc2FibGUoKTsKKyNpZmRlZiBIQVZFX1NJR0FMVFNUQUNLCisgICAgaWYgKHN0YWNrLnNzX3NwICE9IE5VTEwpIHsKKyAgICAgICAgUHlNZW1fRnJlZShzdGFjay5zc19zcCk7CisgICAgICAgIHN0YWNrLnNzX3NwID0gTlVMTDsKKyAgICB9CisjZW5kaWYKK30KZGlmZiAtLWdpdCBhL01vZHVsZXMvZmNudGxtb2R1bGUuYyBiL01vZHVsZXMvZmNudGxtb2R1bGUuYwppbmRleCBiZmM1OTg1Li42YjdlM2ZjIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2ZjbnRsbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9mY250bG1vZHVsZS5jCkBAIC01NDAsMTAgKzU0MCwxMyBAQAogICAgIGlmIChpbnMoZCwgIkZfU0hMQ0siLCAobG9uZylGX1NITENLKSkgcmV0dXJuIC0xOwogI2VuZGlmCiAKLS8qIE9TIFggKGFuZCBtYXliZSBvdGhlcnMpIGxldCB5b3UgdGVsbCB0aGUgc3RvcmFnZSBkZXZpY2UgdG8gZmx1c2ggdG8gcGh5c2ljYWwgbWVkaWEgKi8KKy8qIE9TIFggc3BlY2lmaWNzICovCiAjaWZkZWYgRl9GVUxMRlNZTkMKICAgICBpZiAoaW5zKGQsICJGX0ZVTExGU1lOQyIsIChsb25nKUZfRlVMTEZTWU5DKSkgcmV0dXJuIC0xOwogI2VuZGlmCisjaWZkZWYgRl9OT0NBQ0hFCisgICAgaWYgKGlucyhkLCAiRl9OT0NBQ0hFIiwgKGxvbmcpRl9OT0NBQ0hFKSkgcmV0dXJuIC0xOworI2VuZGlmCiAKIC8qIEZvciBGX3tHRVR8U0VUfUZMICovCiAjaWZkZWYgRkRfQ0xPRVhFQwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9mcGVjdGxtb2R1bGUuYyBiL01vZHVsZXMvZnBlY3RsbW9kdWxlLmMKaW5kZXggMWJiNTFjZi4uNmFmMmY4MiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9mcGVjdGxtb2R1bGUuYworKysgYi9Nb2R1bGVzL2ZwZWN0bG1vZHVsZS5jCkBAIC0xNzQsMTcgKzE3NCw2IEBACiAgICAgZnBfZW5hYmxlKFRSUF9JTlZBTElEIHwgVFJQX0RJVl9CWV9aRVJPIHwgVFJQX09WRVJGTE9XKTsKICAgICBQeU9TX3NldHNpZyhTSUdGUEUsIGhhbmRsZXIpOwogCi0vKi0tIERFQyBBTFBIQSBPU0YgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwotI2VsaWYgZGVmaW5lZChfX2FscGhhKSAmJiBkZWZpbmVkKF9fb3NmX18pCi0gICAgLyogUmVmZXJlbmNlczogICBleGNlcHRpb25faW50cm8sIGllZWUgbWFuIHBhZ2VzICovCi0gICAgLyogY2MgLWMgLUkvdXNyL2xvY2FsL3B5dGhvbi9pbmNsdWRlIGZwZWN0bG1vZHVsZS5jICovCi0gICAgLyogbGQgLXNoYXJlZCAtbyBmcGVjdGxtb2R1bGUuc28gZnBlY3RsbW9kdWxlLm8gKi8KLSNpbmNsdWRlIDxtYWNoaW5lL2ZwdS5oPgotICAgIHVuc2lnbmVkIGxvbmcgZnBfY29udHJvbCA9Ci0gICAgSUVFRV9UUkFQX0VOQUJMRV9JTlYgfCBJRUVFX1RSQVBfRU5BQkxFX0RaRSB8IElFRUVfVFJBUF9FTkFCTEVfT1ZGOwotICAgIGllZWVfc2V0X2ZwX2NvbnRyb2woZnBfY29udHJvbCk7Ci0gICAgUHlPU19zZXRzaWcoU0lHRlBFLCBoYW5kbGVyKTsKLQogLyotLSBERUMgQUxQSEEgTElOVVggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICNlbGlmIGRlZmluZWQoX19hbHBoYSkgJiYgZGVmaW5lZChsaW51eCkKICNpbmNsdWRlIDxhc20vZnB1Lmg+CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2djX3dlYWtyZWYudHh0IGIvTW9kdWxlcy9nY193ZWFrcmVmLnR4dAppbmRleCBkN2JlNmMzLi4yZjE4NDAyIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2djX3dlYWtyZWYudHh0CisrKyBiL01vZHVsZXMvZ2Nfd2Vha3JlZi50eHQKQEAgLTE1LDggKzE1LDggQEAKIGhpc3RvcmljYWxseSBjb21tb24gYnVnKSwgdHBfY2xlYXIgZW1wdGllcyBhbiBpbnN0YW5jZSdzIF9fZGljdF9fLCBhbmQKICJpbXBvc3NpYmxlIiBBdHRyaWJ1dGVFcnJvcnMgcmVzdWx0LiAgQXQgd29yc3QsIHRwX2NsZWFyIGxlYXZlcyBiZWhpbmQgYW4KIGluc2FuZSBvYmplY3QgYXQgdGhlIEMgbGV2ZWwsIGFuZCBzZWdmYXVsdHMgcmVzdWx0IChoaXN0b3JpY2FsbHksIG1vc3QKLW9mdGVuIGJ5IHNldHRpbmcgYSBuZXctc3R5bGUgY2xhc3MncyBtcm8gcG9pbnRlciB0byBOVUxMLCBhZnRlciB3aGljaAotYXR0cmlidXRlIGxvb2t1cHMgcGVyZm9ybWVkIGJ5IHRoZSBjbGFzcyBjYW4gc2VnZmF1bHQpLgorb2Z0ZW4gYnkgc2V0dGluZyBhIGNsYXNzJ3MgbXJvIHBvaW50ZXIgdG8gTlVMTCwgYWZ0ZXIgd2hpY2ggYXR0cmlidXRlCitsb29rdXBzIHBlcmZvcm1lZCBieSB0aGUgY2xhc3MgY2FuIHNlZ2ZhdWx0KS4KIAogT1RPSCwgaXQncyBPSyB0byBydW4gUHl0aG9uLWxldmVsIGNvZGUgdGhhdCBjYW4ndCBhY2Nlc3MgdW5yZWFjaGFibGUKIG9iamVjdHMsIGFuZCBzb21ldGltZXMgdGhhdCdzIG5lY2Vzc2FyeS4gIFRoZSBjaGllZiBleGFtcGxlIGlzIHRoZSBjYWxsYmFjawpAQCAtMTE5LDcgKzExOSw3IEBACiBpdCB0b29rIHF1aXRlIGEgd2hpbGUgdG8gZHJlYW0gdXAgZmFpbGluZyB0ZXN0IGNhc2VzLiAgWm9wZTMgc2F3IHNlZ2ZhdWx0cwogZHVyaW5nIHNodXRkb3duLCBkdXJpbmcgdGhlIHNlY29uZCBjYWxsIG9mIGdjIGluIFB5X0ZpbmFsaXplLCBhZnRlciBtb3N0CiBtb2R1bGVzIGhhZCBiZWVuIHRvcm4gZG93bi4gIFRoYXQgY3JlYXRlcyBtYW55IHRyYXNoIGN5Y2xlcyAoZXNwLiB0aG9zZQotaW52b2x2aW5nIG5ldy1zdHlsZSBjbGFzc2VzKSwgbWFraW5nIHRoZSBwcm9ibGVtIG11Y2ggbW9yZSBsaWtlbHkuICBPbmNlIHlvdQoraW52b2x2aW5nIGNsYXNzZXMpLCBtYWtpbmcgdGhlIHByb2JsZW0gbXVjaCBtb3JlIGxpa2VseS4gIE9uY2UgeW91CiBrbm93IHdoYXQncyByZXF1aXJlZCB0byBwcm92b2tlIHRoZSBwcm9ibGVtLCB0aG91Z2gsIGl0J3MgZWFzeSB0byBjcmVhdGUKIHRlc3RzIHRoYXQgc2VnZmF1bHQgYmVmb3JlIHNodXRkb3duLgogCmRpZmYgLS1naXQgYS9Nb2R1bGVzL2djbW9kdWxlLmMgYi9Nb2R1bGVzL2djbW9kdWxlLmMKaW5kZXggMTBhNGVkNy4uMTg3NmU5MyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9nY21vZHVsZS5jCisrKyBiL01vZHVsZXMvZ2Ntb2R1bGUuYwpAQCAtNjgwLDggKzY4MCw4IEBACiBzdGF0aWMgdm9pZAogZGVidWdfY3ljbGUoY2hhciAqbXNnLCBQeU9iamVjdCAqb3ApCiB7Ci0gICAgUHlTeXNfV3JpdGVTdGRlcnIoImdjOiAlLjEwMHMgPCUuMTAwcyAlcD5cbiIsCi0gICAgICAgICAgICAgICAgICAgICAgbXNnLCBQeV9UWVBFKG9wKS0+dHBfbmFtZSwgb3ApOworICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiZ2M6ICVzIDwlcyAlcD5cbiIsCisgICAgICAgICAgICAgICAgICAgICAgIG1zZywgUHlfVFlQRShvcCktPnRwX25hbWUsIG9wKTsKIH0KIAogLyogSGFuZGxlIHVuY29sbGVjdGFibGUgZ2FyYmFnZSAoY3ljbGVzIHdpdGggZmluYWxpemVycywgYW5kIHN0dWZmIHJlYWNoYWJsZQpAQCAtNzYyLDYgKzc2Miw5IEBACiAgICAgKHZvaWQpUHlUdXBsZV9DbGVhckZyZWVMaXN0KCk7CiAgICAgKHZvaWQpUHlVbmljb2RlX0NsZWFyRnJlZUxpc3QoKTsKICAgICAodm9pZClQeUZsb2F0X0NsZWFyRnJlZUxpc3QoKTsKKyAgICAodm9pZClQeUxpc3RfQ2xlYXJGcmVlTGlzdCgpOworICAgICh2b2lkKVB5RGljdF9DbGVhckZyZWVMaXN0KCk7CisgICAgKHZvaWQpUHlTZXRfQ2xlYXJGcmVlTGlzdCgpOwogfQogCiBzdGF0aWMgZG91YmxlCkBAIC03NjksNyArNzcyLDkgQEAKIHsKICAgICBkb3VibGUgcmVzdWx0ID0gMDsKICAgICBpZiAodG1vZCAhPSBOVUxMKSB7Ci0gICAgICAgIFB5T2JqZWN0ICpmID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh0bW9kLCAidGltZSIsIE5VTEwpOworICAgICAgICBfUHlfSURFTlRJRklFUih0aW1lKTsKKworICAgICAgICBQeU9iamVjdCAqZiA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodG1vZCwgJlB5SWRfdGltZSwgTlVMTCk7CiAgICAgICAgIGlmIChmID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvZ2V0YnVpbGRpbmZvLmMgYi9Nb2R1bGVzL2dldGJ1aWxkaW5mby5jCmluZGV4IDcwNjliNmUuLjA5NzFhNjQgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvZ2V0YnVpbGRpbmZvLmMKKysrIGIvTW9kdWxlcy9nZXRidWlsZGluZm8uYwpAQCAtMjAsMTQgKzIwLDYgQEAKICNlbmRpZgogI2VuZGlmCiAKLS8qIG9uIHVuaXgsIFNWTlZFUlNJT04gaXMgcGFzc2VkIG9uIHRoZSBjb21tYW5kIGxpbmUuCi0gKiBvbiBXaW5kb3dzLCB0aGUgc3RyaW5nIGlzIGludGVycG9sYXRlZCB1c2luZwotICogc3Vid2NyZXYuZXhlCi0gKi8KLSNpZm5kZWYgU1ZOVkVSU0lPTgotI2RlZmluZSBTVk5WRVJTSU9OICIkV0NSQU5HRSQkV0NNT0RTP006JCIKLSNlbmRpZgotCiAvKiBYWFggT25seSB1bml4IGJ1aWxkIHByb2Nlc3MgaGFzIGJlZW4gdGVzdGVkICovCiAjaWZuZGVmIEhHVkVSU0lPTgogI2RlZmluZSBIR1ZFUlNJT04gIiIKQEAgLTU3LDE2ICs0OSw2IEBACiB9CiAKIGNvbnN0IGNoYXIgKgotX1B5X3N2bnZlcnNpb24odm9pZCkKLXsKLSAgICAvKiB0aGUgZm9sbG93aW5nIHN0cmluZyBjYW4gYmUgbW9kaWZpZWQgYnkgc3Vid2NyZXYuZXhlICovCi0gICAgc3RhdGljIGNvbnN0IGNoYXIgc3ZudmVyc2lvbltdID0gU1ZOVkVSU0lPTjsKLSAgICBpZiAoc3ZudmVyc2lvblswXSAhPSAnJCcpCi0gICAgICAgIHJldHVybiBzdm52ZXJzaW9uOyAvKiBpdCB3YXMgaW50ZXJwb2xhdGVkLCBvciBwYXNzZWQgb24gY29tbWFuZCBsaW5lICovCi0gICAgcmV0dXJuICJVbnZlcnNpb25lZCBkaXJlY3RvcnkiOwotfQotCi1jb25zdCBjaGFyICoKIF9QeV9oZ3ZlcnNpb24odm9pZCkKIHsKICAgICByZXR1cm4gSEdWRVJTSU9OOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9nZXRwYXRoLmMgYi9Nb2R1bGVzL2dldHBhdGguYwppbmRleCBiN2Y5NTczLi43MDkwODc5IDEwMDY0NAotLS0gYS9Nb2R1bGVzL2dldHBhdGguYworKysgYi9Nb2R1bGVzL2dldHBhdGguYwpAQCAtNDA2LDcgKzQwNiw3IEBACiAgICAgc3RhdGljIHdjaGFyX3QgZGVsaW1pdGVyWzJdID0ge0RFTElNLCAnXDAnfTsKICAgICBzdGF0aWMgd2NoYXJfdCBzZXBhcmF0b3JbMl0gPSB7U0VQLCAnXDAnfTsKICAgICBjaGFyICpfcnRweXBhdGggPSBQeV9HRVRFTlYoIlBZVEhPTlBBVEgiKTsgLyogWFhYIHVzZSB3aWRlIHZlcnNpb24gb24gV2luZG93cyAqLwotICAgIHdjaGFyX3QgcnRweXBhdGhbTUFYUEFUSExFTisxXTsKKyAgICB3Y2hhcl90ICpydHB5cGF0aCA9IE5VTEw7CiAgICAgd2NoYXJfdCAqaG9tZSA9IFB5X0dldFB5dGhvbkhvbWUoKTsKICAgICBjaGFyICpfcGF0aCA9IGdldGVudigiUEFUSCIpOwogICAgIHdjaGFyX3QgKnBhdGhfYnVmZmVyID0gTlVMTDsKQEAgLTYwNiwxMiArNjA2LDEyIEBACiAgICAgYnVmc3ogPSAwOwogCiAgICAgaWYgKF9ydHB5cGF0aCkgewotICAgICAgICBzaXplX3QgcyA9IG1ic3Rvd2NzKHJ0cHlwYXRoLCBfcnRweXBhdGgsIHNpemVvZihydHB5cGF0aCkvc2l6ZW9mKHdjaGFyX3QpKTsKLSAgICAgICAgaWYgKHMgPT0gKHNpemVfdCktMSB8fCBzID49c2l6ZW9mKHJ0cHlwYXRoKSkKLSAgICAgICAgICAgIC8qIFhYWCBkZWFsIHdpdGggZXJyb3JzIG1vcmUgZ3JhY2VmdWxseSAqLworICAgICAgICBzaXplX3QgcnRweXBhdGhfbGVuOworICAgICAgICBydHB5cGF0aCA9IF9QeV9jaGFyMndjaGFyKF9ydHB5cGF0aCwgJnJ0cHlwYXRoX2xlbik7CisgICAgICAgIGlmIChydHB5cGF0aCAhPSBOVUxMKQorICAgICAgICAgICAgYnVmc3ogKz0gcnRweXBhdGhfbGVuICsgMTsKKyAgICAgICAgZWxzZQogICAgICAgICAgICAgX3J0cHlwYXRoID0gTlVMTDsKLSAgICAgICAgaWYgKF9ydHB5cGF0aCkKLSAgICAgICAgICAgIGJ1ZnN6ICs9IHdjc2xlbihydHB5cGF0aCkgKyAxOwogICAgIH0KIAogICAgIGRlZnBhdGggPSBfcHl0aG9ucGF0aDsKQEAgLTY0NSw3ICs2NDUsNyBAQAogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgLyogUnVuLXRpbWUgdmFsdWUgb2YgJFBZVEhPTlBBVEggZ29lcyBmaXJzdCAqLwotICAgICAgICBpZiAoX3J0cHlwYXRoKSB7CisgICAgICAgIGlmIChydHB5cGF0aCkgewogICAgICAgICAgICAgd2NzY3B5KGJ1ZiwgcnRweXBhdGgpOwogICAgICAgICAgICAgd2NzY2F0KGJ1ZiwgZGVsaW1pdGVyKTsKICAgICAgICAgfQpAQCAtNzE5LDYgKzcxOSw4IEBACiAgICAgUHlNZW1fRnJlZShfcHl0aG9ucGF0aCk7CiAgICAgUHlNZW1fRnJlZShfcHJlZml4KTsKICAgICBQeU1lbV9GcmVlKF9leGVjX3ByZWZpeCk7CisgICAgaWYgKHJ0cHlwYXRoICE9IE5VTEwpCisgICAgICAgIFB5TWVtX0ZyZWUocnRweXBhdGgpOwogfQogCiAKZGlmZiAtLWdpdCBhL01vZHVsZXMvaXRlcnRvb2xzbW9kdWxlLmMgYi9Nb2R1bGVzL2l0ZXJ0b29sc21vZHVsZS5jCmluZGV4IDhiNmZhODUuLjE1YjBjMTcgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvaXRlcnRvb2xzbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9pdGVydG9vbHNtb2R1bGUuYwpAQCAtNjI2LDYgKzYyNiw3IEBACiB7CiAgICAgUHlfc3NpemVfdCBpLCBuPTI7CiAgICAgUHlPYmplY3QgKml0LCAqaXRlcmFibGUsICpjb3B5YWJsZSwgKnJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihfX2NvcHlfXyk7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98biIsICZpdGVyYWJsZSwgJm4pKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTY0Myw3ICs2NDQsNyBAQAogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIGlmICghUHlPYmplY3RfSGFzQXR0clN0cmluZyhpdCwgIl9fY29weV9fIikpIHsKKyAgICBpZiAoIV9QeU9iamVjdF9IYXNBdHRySWQoaXQsICZQeUlkX19fY29weV9fKSkgewogICAgICAgICBjb3B5YWJsZSA9IHRlZV9mcm9taXRlcmFibGUoaXQpOwogICAgICAgICBQeV9ERUNSRUYoaXQpOwogICAgICAgICBpZiAoY29weWFibGUgPT0gTlVMTCkgewpAQCAtNjU0LDcgKzY1NSw4IEBACiAgICAgICAgIGNvcHlhYmxlID0gaXQ7CiAgICAgUHlUdXBsZV9TRVRfSVRFTShyZXN1bHQsIDAsIGNvcHlhYmxlKTsKICAgICBmb3IgKGk9MSA7IGk8biA7IGkrKykgewotICAgICAgICBjb3B5YWJsZSA9IFB5T2JqZWN0X0NhbGxNZXRob2QoY29weWFibGUsICJfX2NvcHlfXyIsIE5VTEwpOworCisgICAgICAgIGNvcHlhYmxlID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChjb3B5YWJsZSwgJlB5SWRfX19jb3B5X18sIE5VTEwpOwogICAgICAgICBpZiAoY29weWFibGUgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTI1OTIsNiArMjU5NCw3IEBACiAgICAgUHlPYmplY3RfSEVBRAogICAgIFB5T2JqZWN0ICp0b3RhbDsKICAgICBQeU9iamVjdCAqaXQ7CisgICAgUHlPYmplY3QgKmJpbm9wOwogfSBhY2N1bXVsYXRlb2JqZWN0OwogCiBzdGF0aWMgUHlUeXBlT2JqZWN0IGFjY3VtdWxhdGVfdHlwZTsKQEAgLTI1OTksMTIgKzI2MDIsMTQgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBhY2N1bXVsYXRlX25ldyhQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKLSAgICBzdGF0aWMgY2hhciAqa3dhcmdzW10gPSB7Iml0ZXJhYmxlIiwgTlVMTH07CisgICAgc3RhdGljIGNoYXIgKmt3YXJnc1tdID0geyJpdGVyYWJsZSIsICJmdW5jIiwgTlVMTH07CiAgICAgUHlPYmplY3QgKml0ZXJhYmxlOwogICAgIFB5T2JqZWN0ICppdDsKKyAgICBQeU9iamVjdCAqYmlub3AgPSBOVUxMOwogICAgIGFjY3VtdWxhdGVvYmplY3QgKmx6OwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIk86YWNjdW11bGF0ZSIsIGt3YXJncywgJml0ZXJhYmxlKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiT3xPOmFjY3VtdWxhdGUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3YXJncywgJml0ZXJhYmxlLCAmYmlub3ApKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIC8qIEdldCBpdGVyYXRvci4gKi8KQEAgLTI2MTksNiArMjYyNCw4IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAorICAgIFB5X1hJTkNSRUYoYmlub3ApOworICAgIGx6LT5iaW5vcCA9IGJpbm9wOwogICAgIGx6LT50b3RhbCA9IE5VTEw7CiAgICAgbHotPml0ID0gaXQ7CiAgICAgcmV0dXJuIChQeU9iamVjdCAqKWx6OwpAQCAtMjYyOCw2ICsyNjM1LDcgQEAKIGFjY3VtdWxhdGVfZGVhbGxvYyhhY2N1bXVsYXRlb2JqZWN0ICpseikKIHsKICAgICBQeU9iamVjdF9HQ19VblRyYWNrKGx6KTsKKyAgICBQeV9YREVDUkVGKGx6LT5iaW5vcCk7CiAgICAgUHlfWERFQ1JFRihsei0+dG90YWwpOwogICAgIFB5X1hERUNSRUYobHotPml0KTsKICAgICBQeV9UWVBFKGx6KS0+dHBfZnJlZShseik7CkBAIC0yNjM2LDYgKzI2NDQsNyBAQAogc3RhdGljIGludAogYWNjdW11bGF0ZV90cmF2ZXJzZShhY2N1bXVsYXRlb2JqZWN0ICpseiwgdmlzaXRwcm9jIHZpc2l0LCB2b2lkICphcmcpCiB7CisgICAgUHlfVklTSVQobHotPmJpbm9wKTsKICAgICBQeV9WSVNJVChsei0+aXQpOwogICAgIFB5X1ZJU0lUKGx6LT50b3RhbCk7CiAgICAgcmV0dXJuIDA7CkBAIC0yNjU1LDggKzI2NjQsMTEgQEAKICAgICAgICAgbHotPnRvdGFsID0gdmFsOwogICAgICAgICByZXR1cm4gbHotPnRvdGFsOwogICAgIH0KLSAgIAotICAgIG5ld3RvdGFsID0gUHlOdW1iZXJfQWRkKGx6LT50b3RhbCwgdmFsKTsKKworICAgIGlmIChsei0+Ymlub3AgPT0gTlVMTCkgCisgICAgICAgIG5ld3RvdGFsID0gUHlOdW1iZXJfQWRkKGx6LT50b3RhbCwgdmFsKTsKKyAgICBlbHNlCisgICAgICAgIG5ld3RvdGFsID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhsei0+Ymlub3AsIGx6LT50b3RhbCwgdmFsLCBOVUxMKTsKICAgICBQeV9ERUNSRUYodmFsKTsKICAgICBpZiAobmV3dG90YWwgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yNjcwLDkgKzI2ODIsOSBAQAogfQogCiBQeURvY19TVFJWQVIoYWNjdW11bGF0ZV9kb2MsCi0iYWNjdW11bGF0ZShpdGVyYWJsZSkgLS0+IGFjY3VtdWxhdGUgb2JqZWN0XG5cCisiYWNjdW11bGF0ZShpdGVyYWJsZVssIGZ1bmNdKSAtLT4gYWNjdW11bGF0ZSBvYmplY3RcblwKIFxuXAotUmV0dXJuIHNlcmllcyBvZiBhY2N1bXVsYXRlZCBzdW1zLiIpOworUmV0dXJuIHNlcmllcyBvZiBhY2N1bXVsYXRlZCBzdW1zIChvciBvdGhlciBiaW5hcnkgZnVuY3Rpb24gcmVzdWx0cykuIik7CiAKIHN0YXRpYyBQeVR5cGVPYmplY3QgYWNjdW11bGF0ZV90eXBlID0gewogICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVChOVUxMLCAwKQpAQCAtMzYzMyw3ICszNjQ1LDcgQEAKIHJlcGVhdChlbGVtIFssbl0pIC0tPiBlbGVtLCBlbGVtLCBlbGVtLCAuLi4gZW5kbGVzc2x5IG9yIHVwIHRvIG4gdGltZXNcblwKIFxuXAogSXRlcmF0b3JzIHRlcm1pbmF0aW5nIG9uIHRoZSBzaG9ydGVzdCBpbnB1dCBzZXF1ZW5jZTpcblwKLWFjY3VtdWxhdGUocCwgc3RhcnQ9MCkgLS0+IHAwLCBwMCtwMSwgcDArcDErcDJcblwKK2FjY3VtdWxhdGUocFssIGZ1bmNdKSAtLT4gcDAsIHAwK3AxLCBwMCtwMStwMlxuXAogY2hhaW4ocCwgcSwgLi4uKSAtLT4gcDAsIHAxLCAuLi4gcGxhc3QsIHEwLCBxMSwgLi4uIFxuXAogY29tcHJlc3MoZGF0YSwgc2VsZWN0b3JzKSAtLT4gKGRbMF0gaWYgc1swXSksIChkWzFdIGlmIHNbMV0pLCAuLi5cblwKIGRyb3B3aGlsZShwcmVkLCBzZXEpIC0tPiBzZXFbbl0sIHNlcVtuKzFdLCBzdGFydGluZyB3aGVuIHByZWQgZmFpbHNcblwKZGlmZiAtLWdpdCBhL01vZHVsZXMvbWFpbi5jIGIvTW9kdWxlcy9tYWluLmMKaW5kZXggMTI4MmY0Ni4uNmViMDVlOSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9tYWluLmMKKysrIGIvTW9kdWxlcy9tYWluLmMKQEAgLTYsNiArNiw3IEBACiAjaW5jbHVkZSA8bG9jYWxlLmg+CiAKICNpZmRlZiBfX1ZNUworI2Vycm9yICJQRVAgMTE6IFZNUyBpcyBub3cgdW5zdXBwb3J0ZWQsIGNvZGUgd2lsbCBiZSByZW1vdmVkIGluIFB5dGhvbiAzLjQiCiAjaW5jbHVkZSA8dW5peGxpYi5oPgogI2VuZGlmCiAKQEAgLTcyLDkgKzczLDYgQEAKIC1PICAgICA6IG9wdGltaXplIGdlbmVyYXRlZCBieXRlY29kZSBzbGlnaHRseTsgYWxzbyBQWVRIT05PUFRJTUlaRT14XG5cCiAtT08gICAgOiByZW1vdmUgZG9jLXN0cmluZ3MgaW4gYWRkaXRpb24gdG8gdGhlIC1PIG9wdGltaXphdGlvbnNcblwKIC1xICAgICA6IGRvbid0IHByaW50IHZlcnNpb24gYW5kIGNvcHlyaWdodCBtZXNzYWdlcyBvbiBpbnRlcmFjdGl2ZSBzdGFydHVwXG5cCi0tUiAgICAgOiB1c2UgYSBwc2V1ZG8tcmFuZG9tIHNhbHQgdG8gbWFrZSBoYXNoKCkgdmFsdWVzIG9mIHZhcmlvdXMgdHlwZXMgYmVcblwKLSAgICAgICAgIHVucHJlZGljdGFibGUgYmV0d2VlbiBzZXBhcmF0ZSBpbnZvY2F0aW9ucyBvZiB0aGUgaW50ZXJwcmV0ZXIsIGFzXG5cCi0gICAgICAgICBhIGRlZmVuY2UgYWdhaW5zdCBkZW5pYWwtb2Ytc2VydmljZSBhdHRhY2tzXG5cCiAtcyAgICAgOiBkb24ndCBhZGQgdXNlciBzaXRlIGRpcmVjdG9yeSB0byBzeXMucGF0aDsgYWxzbyBQWVRIT05OT1VTRVJTSVRFXG5cCiAtUyAgICAgOiBkb24ndCBpbXBseSAnaW1wb3J0IHNpdGUnIG9uIGluaXRpYWxpemF0aW9uXG5cCiAiOwpAQCAtMTAyLDEzICsxMDAsMTQgQEAKICJQWVRIT05IT01FICAgOiBhbHRlcm5hdGUgPHByZWZpeD4gZGlyZWN0b3J5IChvciA8cHJlZml4PiVjPGV4ZWNfcHJlZml4PikuXG4iCiAiICAgICAgICAgICAgICAgVGhlIGRlZmF1bHQgbW9kdWxlIHNlYXJjaCBwYXRoIHVzZXMgJXMuXG4iCiAiUFlUSE9OQ0FTRU9LIDogaWdub3JlIGNhc2UgaW4gJ2ltcG9ydCcgc3RhdGVtZW50cyAoV2luZG93cykuXG4iCi0iUFlUSE9OSU9FTkNPRElORzogRW5jb2RpbmdbOmVycm9yc10gdXNlZCBmb3Igc3RkaW4vc3Rkb3V0L3N0ZGVyci5cblwKKyJQWVRIT05JT0VOQ09ESU5HOiBFbmNvZGluZ1s6ZXJyb3JzXSB1c2VkIGZvciBzdGRpbi9zdGRvdXQvc3RkZXJyLlxuIgorIlBZVEhPTkZBVUxUSEFORExFUjogZHVtcCB0aGUgUHl0aG9uIHRyYWNlYmFjayBvbiBmYXRhbCBlcnJvcnMuXG5cCiAiOwogc3RhdGljIGNoYXIgKnVzYWdlXzYgPSAiXAotUFlUSE9OSEFTSFNFRUQ6IGlmIHRoaXMgdmFyaWFibGUgaXMgc2V0IHRvICdyYW5kb20nLCB0aGUgZWZmZWN0IGlzIHRoZSBzYW1lXG5cCi0gICBhcyBzcGVjaWZ5aW5nIHRoZSAtUiBvcHRpb246IGEgcmFuZG9tIHZhbHVlIGlzIHVzZWQgdG8gc2VlZCB0aGUgaGFzaGVzIG9mXG5cCi0gICBzdHIsIGJ5dGVzIGFuZCBkYXRldGltZSBvYmplY3RzLiAgSXQgY2FuIGFsc28gYmUgc2V0IHRvIGFuIGludGVnZXJcblwKLSAgIGluIHRoZSByYW5nZSBbMCw0Mjk0OTY3Mjk1XSB0byBnZXQgaGFzaCB2YWx1ZXMgd2l0aCBhIHByZWRpY3RhYmxlIHNlZWQuXG5cCitQWVRIT05IQVNIU0VFRDogaWYgdGhpcyB2YXJpYWJsZSBpcyBzZXQgdG8gJ3JhbmRvbScsIGEgcmFuZG9tIHZhbHVlIGlzIHVzZWRcblwKKyAgIHRvIHNlZWQgdGhlIGhhc2hlcyBvZiBzdHIsIGJ5dGVzIGFuZCBkYXRldGltZSBvYmplY3RzLiAgSXQgY2FuIGFsc28gYmVcblwKKyAgIHNldCB0byBhbiBpbnRlZ2VyIGluIHRoZSByYW5nZSBbMCw0Mjk0OTY3Mjk1XSB0byBnZXQgaGFzaCB2YWx1ZXMgd2l0aCBhXG5cCisgICBwcmVkaWN0YWJsZSBzZWVkLlxuXAogIjsKIAogc3RhdGljIGludApAQCAtMzQ1LDIxICszNDQsMTMgQEAKICAgICAgICAgICAgICAgIG5vdCBpbnRlcnByZXRlciBvcHRpb25zLiAqLwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSAgICAgICAgc3dpdGNoIChjKSB7Ci0gICAgICAgIGNhc2UgJ0UnOgorICAgICAgICBpZiAoYyA9PSAnRScpIHsKICAgICAgICAgICAgIFB5X0lnbm9yZUVudmlyb25tZW50RmxhZysrOwogICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgJ1InOgotICAgICAgICAgICAgUHlfSGFzaFJhbmRvbWl6YXRpb25GbGFnKys7Ci0gICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgIH0KLSAgICAvKiBUaGUgdmFyaWFibGUgaXMgb25seSB0ZXN0ZWQgZm9yIGV4aXN0ZW5jZSBoZXJlOyBfUHlSYW5kb21fSW5pdCB3aWxsCi0gICAgICAgY2hlY2sgaXRzIHZhbHVlIGZ1cnRoZXIuICovCi0gICAgaWYgKCFQeV9IYXNoUmFuZG9taXphdGlvbkZsYWcgJiYKLSAgICAgICAgKHAgPSBQeV9HRVRFTlYoIlBZVEhPTkhBU0hTRUVEIikpICYmICpwICE9ICdcMCcpCi0gICAgICAgIFB5X0hhc2hSYW5kb21pemF0aW9uRmxhZyA9IDE7CiAKKyAgICBQeV9IYXNoUmFuZG9taXphdGlvbkZsYWcgPSAxOwogICAgIF9QeVJhbmRvbV9Jbml0KCk7CiAKICAgICBQeVN5c19SZXNldFdhcm5PcHRpb25zKCk7CkBAIC00NjYsNyArNDU3LDcgQEAKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgJ1InOgotICAgICAgICAgICAgLyogQWxyZWFkeSBoYW5kbGVkIGFib3ZlICovCisgICAgICAgICAgICAvKiBJZ25vcmVkICovCiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAvKiBUaGlzIHNwYWNlIHJlc2VydmVkIGZvciBvdGhlciBvcHRpb25zICovCkBAIC01MzMsMTYgKzUyNCwxMyBAQAogICAgICAgICAgICAgLyogVXNlIHV0Zi04IG9uIE1hYyBPUyBYICovCiAgICAgICAgICAgICB1bmljb2RlID0gUHlVbmljb2RlX0Zyb21TdHJpbmcocCk7CiAjZWxzZQotICAgICAgICAgICAgd2NoYXJfdCAqd2NoYXI7Ci0gICAgICAgICAgICBzaXplX3QgbGVuOwotICAgICAgICAgICAgd2NoYXIgPSBfUHlfY2hhcjJ3Y2hhcihwLCAmbGVuKTsKLSAgICAgICAgICAgIGlmICh3Y2hhciA9PSBOVUxMKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgdW5pY29kZSA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIod2NoYXIsIGxlbik7Ci0gICAgICAgICAgICBQeU1lbV9GcmVlKHdjaGFyKTsKKyAgICAgICAgICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKHAsICJzdXJyb2dhdGVlc2NhcGUiKTsKICNlbmRpZgotICAgICAgICAgICAgaWYgKHVuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgICAgIGlmICh1bmljb2RlID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICAvKiBpZ25vcmUgZXJyb3JzICovCisgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIFB5U3lzX0FkZFdhcm5PcHRpb25Vbmljb2RlKHVuaWNvZGUpOwogICAgICAgICAgICAgUHlfREVDUkVGKHVuaWNvZGUpOwogICAgICAgICB9CkBAIC02MTcsNyArNjA1LDYgQEAKICAgICBpZiAoKHAgPSBQeV9HRVRFTlYoIlBZVEhPTkVYRUNVVEFCTEUiKSkgJiYgKnAgIT0gJ1wwJykgewogICAgICAgICB3Y2hhcl90KiBidWZmZXI7CiAgICAgICAgIHNpemVfdCBsZW4gPSBzdHJsZW4ocCk7Ci0gICAgICAgIHNpemVfdCByOwogCiAgICAgICAgIGJ1ZmZlciA9IG1hbGxvYyhsZW4gKiBzaXplb2Yod2NoYXJfdCkpOwogICAgICAgICBpZiAoYnVmZmVyID09IE5VTEwpIHsKQEAgLTYyNSw3ICs2MTIsNyBAQAogICAgICAgICAgICAgICAgIm5vdCBlbm91Z2ggbWVtb3J5IHRvIGNvcHkgUFlUSE9ORVhFQ1VUQUJMRSIpOwogICAgICAgICB9CiAKLSAgICAgICAgciA9IG1ic3Rvd2NzKGJ1ZmZlciwgcCwgbGVuKTsKKyAgICAgICAgbWJzdG93Y3MoYnVmZmVyLCBwLCBsZW4pOwogICAgICAgICBQeV9TZXRQcm9ncmFtTmFtZShidWZmZXIpOwogICAgICAgICAvKiBidWZmZXIgaXMgbm93IGhhbmRlZCBvZmYgLSBkbyBub3QgZnJlZSAqLwogICAgIH0gZWxzZSB7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL21hdGhtb2R1bGUuYyBiL01vZHVsZXMvbWF0aG1vZHVsZS5jCmluZGV4IDI5YzMyYTMuLjA0ZjhmNjYgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvbWF0aG1vZHVsZS5jCisrKyBiL01vZHVsZXMvbWF0aG1vZHVsZS5jCkBAIC01NSwxMSArNTUsNiBAQAogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgIl9tYXRoLmgiCiAKLSNpZmRlZiBfT1NGX1NPVVJDRQotLyogT1NGMSA1LjEgZG9lc24ndCBtYWtlIHRoaXMgYXZhaWxhYmxlIHdpdGggWE9QRU5fU09VUkNFX0VYVEVOREVEIGRlZmluZWQgKi8KLWV4dGVybiBkb3VibGUgY29weXNpZ24oZG91YmxlLCBkb3VibGUpOwotI2VuZGlmCi0KIC8qCiAgICBzaW4ocGkqeCksIGdpdmluZyBhY2N1cmF0ZSByZXN1bHRzIGZvciBhbGwgZmluaXRlIHggKGVzcGVjaWFsbHkgeAogICAgaW50ZWdyYWwgb3IgY2xvc2UgdG8gYW4gaW50ZWdlcikuICBUaGlzIGlzIGhlcmUgZm9yIHVzZSBpbiB0aGUKQEAgLTI0NCw3ICsyMzksOCBAQAogICAgIH0KICAgICBpZiAoeCA9PSAwLjApIHsKICAgICAgICAgZXJybm8gPSBFRE9NOwotICAgICAgICByZXR1cm4gMS4wL3g7IC8qIHRnYW1tYSgrLTAuMCkgPSArLWluZiwgZGl2aWRlLWJ5LXplcm8gKi8KKyAgICAgICAgLyogdGdhbW1hKCstMC4wKSA9ICstaW5mLCBkaXZpZGUtYnktemVybyAqLworICAgICAgICByZXR1cm4gY29weXNpZ24oUHlfSFVHRV9WQUwsIHgpOwogICAgIH0KIAogICAgIC8qIGludGVnZXIgYXJndW1lbnRzICovCkBAIC01ODIsNiArNTc4LDYxIEBACiAgICAgfQogfQogCisvKgorICAgbG9nMjogbG9nIHRvIGJhc2UgMi4KKworICAgVXNlcyBhbiBhbGdvcml0aG0gdGhhdCBzaG91bGQ6CisKKyAgICAgKGEpIHByb2R1Y2UgZXhhY3QgcmVzdWx0cyBmb3IgcG93ZXJzIG9mIDIsIGFuZAorICAgICAoYikgZ2l2ZSBhIG1vbm90b25pYyBsb2cyIChmb3IgcG9zaXRpdmUgZmluaXRlIGZsb2F0cyksCisgICAgICAgICBhc3N1bWluZyB0aGF0IHRoZSBzeXN0ZW0gbG9nIGlzIG1vbm90b25pYy4KKyovCisKK3N0YXRpYyBkb3VibGUKK21fbG9nMihkb3VibGUgeCkKK3sKKyAgICBpZiAoIVB5X0lTX0ZJTklURSh4KSkgeworICAgICAgICBpZiAoUHlfSVNfTkFOKHgpKQorICAgICAgICAgICAgcmV0dXJuIHg7IC8qIGxvZzIobmFuKSA9IG5hbiAqLworICAgICAgICBlbHNlIGlmICh4ID4gMC4wKQorICAgICAgICAgICAgcmV0dXJuIHg7IC8qIGxvZzIoK2luZikgPSAraW5mICovCisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgZXJybm8gPSBFRE9NOworICAgICAgICAgICAgcmV0dXJuIFB5X05BTjsgLyogbG9nMigtaW5mKSA9IG5hbiwgaW52YWxpZC1vcGVyYXRpb24gKi8KKyAgICAgICAgfQorICAgIH0KKworICAgIGlmICh4ID4gMC4wKSB7CisjaWZkZWYgSEFWRV9MT0cyCisgICAgICAgIHJldHVybiBsb2cyKHgpOworI2Vsc2UKKyAgICAgICAgZG91YmxlIG07CisgICAgICAgIGludCBlOworICAgICAgICBtID0gZnJleHAoeCwgJmUpOworICAgICAgICAvKiBXZSB3YW50IGxvZzIobSAqIDIqKmUpID09IGxvZyhtKSAvIGxvZygyKSArIGUuICBDYXJlIGlzIG5lZWRlZCB3aGVuCisgICAgICAgICAqIHggaXMganVzdCBncmVhdGVyIHRoYW4gMS4wOiBpbiB0aGF0IGNhc2UgZSBpcyAxLCBsb2cobSkgaXMgbmVnYXRpdmUsCisgICAgICAgICAqIGFuZCB3ZSBnZXQgc2lnbmlmaWNhbnQgY2FuY2VsbGF0aW9uIGVycm9yIGZyb20gdGhlIGFkZGl0aW9uIG9mCisgICAgICAgICAqIGxvZyhtKSAvIGxvZygyKSB0byBlLiAgVGhlIHNsaWdodCByZXdyaXRlIG9mIHRoZSBleHByZXNzaW9uIGJlbG93CisgICAgICAgICAqIGF2b2lkcyB0aGlzIHByb2JsZW0uCisgICAgICAgICAqLworICAgICAgICBpZiAoeCA+PSAxLjApIHsKKyAgICAgICAgICAgIHJldHVybiBsb2coMi4wICogbSkgLyBsb2coMi4wKSArIChlIC0gMSk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICByZXR1cm4gbG9nKG0pIC8gbG9nKDIuMCkgKyBlOworICAgICAgICB9CisjZW5kaWYKKyAgICB9CisgICAgZWxzZSBpZiAoeCA9PSAwLjApIHsKKyAgICAgICAgZXJybm8gPSBFRE9NOworICAgICAgICByZXR1cm4gLVB5X0hVR0VfVkFMOyAvKiBsb2cyKDApID0gLWluZiwgZGl2aWRlLWJ5LXplcm8gKi8KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGVycm5vID0gRURPTTsKKyAgICAgICAgcmV0dXJuIFB5X05BTjsgLyogbG9nMigtaW5mKSA9IG5hbiwgaW52YWxpZC1vcGVyYXRpb24gKi8KKyAgICB9Cit9CisKIHN0YXRpYyBkb3VibGUKIG1fbG9nMTAoZG91YmxlIHgpCiB7CkBAIC04MzYsMTAgKzg4NywxMCBAQAogICAgICAgImF0YW5oKHgpXG5cblJldHVybiB0aGUgaHlwZXJib2xpYyBhcmMgdGFuZ2VudCAobWVhc3VyZWQgaW4gcmFkaWFucykgb2YgeC4iKQogCiBzdGF0aWMgUHlPYmplY3QgKiBtYXRoX2NlaWwoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpudW1iZXIpIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmNlaWxfc3RyID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2NlaWxfXyk7CiAgICAgUHlPYmplY3QgKm1ldGhvZCwgKnJlc3VsdDsKIAotICAgIG1ldGhvZCA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKG51bWJlciwgIl9fY2VpbF9fIiwgJmNlaWxfc3RyKTsKKyAgICBtZXRob2QgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChudW1iZXIsICZQeUlkX19fY2VpbF9fKTsKICAgICBpZiAobWV0aG9kID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTg3NCwxMCArOTI1LDEwIEBACiAgICAgICAiZmFicyh4KVxuXG5SZXR1cm4gdGhlIGFic29sdXRlIHZhbHVlIG9mIHRoZSBmbG9hdCB4LiIpCiAKIHN0YXRpYyBQeU9iamVjdCAqIG1hdGhfZmxvb3IoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpudW1iZXIpIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmZsb29yX3N0ciA9IE5VTEw7CisgICAgX1B5X0lERU5USUZJRVIoX19mbG9vcl9fKTsKICAgICBQeU9iamVjdCAqbWV0aG9kLCAqcmVzdWx0OwogCi0gICAgbWV0aG9kID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobnVtYmVyLCAiX19mbG9vcl9fIiwgJmZsb29yX3N0cik7CisgICAgbWV0aG9kID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobnVtYmVyLCAmUHlJZF9fX2Zsb29yX18pOwogICAgIGlmIChtZXRob2QgPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTM4NCw3ICsxNDM1LDcgQEAKICAgICB9CiAKICAgICAvKiB1c2UgbG9va3VwIHRhYmxlIGlmIHggaXMgc21hbGwgKi8KLSAgICBpZiAoeCA8IChsb25nKShzaXplb2YoU21hbGxGYWN0b3JpYWxzKS9zaXplb2YoU21hbGxGYWN0b3JpYWxzWzBdKSkpCisgICAgaWYgKHggPCAobG9uZylQeV9BUlJBWV9MRU5HVEgoU21hbGxGYWN0b3JpYWxzKSkKICAgICAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nKFNtYWxsRmFjdG9yaWFsc1t4XSk7CiAKICAgICAvKiBlbHNlIGV4cHJlc3MgaW4gdGhlIGZvcm0gb2RkX3BhcnQgKiAyKip0d29fdmFsdWF0aW9uLCBhbmQgY29tcHV0ZSBhcwpAQCAtMTQxMSw3ICsxNDYyLDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBtYXRoX3RydW5jKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqbnVtYmVyKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqdHJ1bmNfc3RyID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX3RydW5jX18pOwogICAgIFB5T2JqZWN0ICp0cnVuYywgKnJlc3VsdDsKIAogICAgIGlmIChQeV9UWVBFKG51bWJlciktPnRwX2RpY3QgPT0gTlVMTCkgewpAQCAtMTQxOSw3ICsxNDcwLDcgQEAKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIHRydW5jID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobnVtYmVyLCAiX190cnVuY19fIiwgJnRydW5jX3N0cik7CisgICAgdHJ1bmMgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChudW1iZXIsICZQeUlkX19fdHJ1bmNfXyk7CiAgICAgaWYgKHRydW5jID09IE5VTEwpIHsKICAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKQEAgLTE2MjgsNiArMTY3OSwxNSBAQAogSWYgdGhlIGJhc2Ugbm90IHNwZWNpZmllZCwgcmV0dXJucyB0aGUgbmF0dXJhbCBsb2dhcml0aG0gKGJhc2UgZSkgb2YgeC4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKK21hdGhfbG9nMihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZykKK3sKKyAgICByZXR1cm4gbG9naGVscGVyKGFyZywgbV9sb2cyLCAibG9nMiIpOworfQorCitQeURvY19TVFJWQVIobWF0aF9sb2cyX2RvYywKKyJsb2cyKHgpXG5cblJldHVybiB0aGUgYmFzZSAyIGxvZ2FyaXRobSBvZiB4LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgogbWF0aF9sb2cxMChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZykKIHsKICAgICByZXR1cm4gbG9naGVscGVyKGFyZywgbV9sb2cxMCwgImxvZzEwIik7CkBAIC0xODk5LDYgKzE5NTksNyBAQAogICAgIHsibG9nIiwgICAgICAgICAgICAgbWF0aF9sb2csICAgICAgIE1FVEhfVkFSQVJHUywgICBtYXRoX2xvZ19kb2N9LAogICAgIHsibG9nMXAiLCAgICAgICAgICAgbWF0aF9sb2cxcCwgICAgIE1FVEhfTywgICAgICAgICBtYXRoX2xvZzFwX2RvY30sCiAgICAgeyJsb2cxMCIsICAgICAgICAgICBtYXRoX2xvZzEwLCAgICAgTUVUSF9PLCAgICAgICAgIG1hdGhfbG9nMTBfZG9jfSwKKyAgICB7ImxvZzIiLCAgICAgICAgICAgIG1hdGhfbG9nMiwgICAgICBNRVRIX08sICAgICAgICAgbWF0aF9sb2cyX2RvY30sCiAgICAgeyJtb2RmIiwgICAgICAgICAgICBtYXRoX21vZGYsICAgICAgTUVUSF9PLCAgICAgICAgIG1hdGhfbW9kZl9kb2N9LAogICAgIHsicG93IiwgICAgICAgICAgICAgbWF0aF9wb3csICAgICAgIE1FVEhfVkFSQVJHUywgICBtYXRoX3Bvd19kb2N9LAogICAgIHsicmFkaWFucyIsICAgICAgICAgbWF0aF9yYWRpYW5zLCAgIE1FVEhfTywgICAgICAgICBtYXRoX3JhZGlhbnNfZG9jfSwKZGlmZiAtLWdpdCBhL01vZHVsZXMvbWQ1bW9kdWxlLmMgYi9Nb2R1bGVzL21kNW1vZHVsZS5jCmluZGV4IDIwODkzMGQuLjg2ZjYwMmUgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvbWQ1bW9kdWxlLmMKKysrIGIvTW9kdWxlcy9tZDVtb2R1bGUuYwpAQCAtMjQzLDcgKzI0Myw3IEBACiAgICAgICAgICAgIGluICAgICAgICAgICAgICs9IE1ENV9CTE9DS1NJWkU7CiAgICAgICAgICAgIGlubGVuICAgICAgICAgIC09IE1ENV9CTE9DS1NJWkU7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgIG4gPSBNSU4oaW5sZW4sIChNRDVfQkxPQ0tTSVpFIC0gbWQ1LT5jdXJsZW4pKTsKKyAgICAgICAgICAgbiA9IE1JTihpbmxlbiwgKFB5X3NzaXplX3QpKE1ENV9CTE9DS1NJWkUgLSBtZDUtPmN1cmxlbikpOwogICAgICAgICAgICBtZW1jcHkobWQ1LT5idWYgKyBtZDUtPmN1cmxlbiwgaW4sIChzaXplX3Qpbik7CiAgICAgICAgICAgIG1kNS0+Y3VybGVuICAgICs9IG47CiAgICAgICAgICAgIGluICAgICAgICAgICAgICs9IG47CkBAIC0zNzYsNyArMzc2LDcgQEAKICAgICB1bnNpZ25lZCBjaGFyIGRpZ2VzdFtNRDVfRElHRVNUU0laRV07CiAgICAgc3RydWN0IG1kNV9zdGF0ZSB0ZW1wOwogICAgIFB5T2JqZWN0ICpyZXR2YWw7Ci0gICAgUHlfVU5JQ09ERSAqaGV4X2RpZ2VzdDsKKyAgICBQeV9VQ1MxICpoZXhfZGlnZXN0OwogICAgIGludCBpLCBqOwogCiAgICAgLyogR2V0IHRoZSByYXcgKGJpbmFyeSkgZGlnZXN0IHZhbHVlICovCkBAIC0zODQsMjQgKzM4NCwxOCBAQAogICAgIG1kNV9kb25lKCZ0ZW1wLCBkaWdlc3QpOwogCiAgICAgLyogQ3JlYXRlIGEgbmV3IHN0cmluZyAqLwotICAgIHJldHZhbCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBNRDVfRElHRVNUU0laRSAqIDIpOworICAgIHJldHZhbCA9IFB5VW5pY29kZV9OZXcoTUQ1X0RJR0VTVFNJWkUgKiAyLCAxMjcpOwogICAgIGlmICghcmV0dmFsKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaGV4X2RpZ2VzdCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJldHZhbCk7Ci0gICAgaWYgKCFoZXhfZGlnZXN0KSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmV0dmFsKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKyAgICBoZXhfZGlnZXN0ID0gUHlVbmljb2RlXzFCWVRFX0RBVEEocmV0dmFsKTsKIAogICAgIC8qIE1ha2UgaGV4IHZlcnNpb24gb2YgdGhlIGRpZ2VzdCAqLwogICAgIGZvcihpPWo9MDsgaTxNRDVfRElHRVNUU0laRTsgaSsrKSB7Ci0gICAgICAgIGNoYXIgYzsKKyAgICAgICAgdW5zaWduZWQgY2hhciBjOwogICAgICAgICBjID0gKGRpZ2VzdFtpXSA+PiA0KSAmIDB4ZjsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgICAgIGMgPSAoZGlnZXN0W2ldICYgMHhmKTsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgfQogICAgIHJldHVybiByZXR2YWw7CiB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL21tYXBtb2R1bGUuYyBiL01vZHVsZXMvbW1hcG1vZHVsZS5jCmluZGV4IGRhOTI4M2IuLmY1MmRjZTUgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvbW1hcG1vZHVsZS5jCisrKyBiL01vZHVsZXMvbW1hcG1vZHVsZS5jCkBAIC03OCw4ICs3OCw2IEBACiAjICBkZWZpbmUgTUFQX0FOT05ZTU9VUyBNQVBfQU5PTgogI2VuZGlmCiAKLXN0YXRpYyBQeU9iamVjdCAqbW1hcF9tb2R1bGVfZXJyb3I7Ci0KIHR5cGVkZWYgZW51bQogewogICAgIEFDQ0VTU19ERUZBVUxULApAQCAtMjQwLDE1ICsyMzgsMzcgQEAKICAgICByZXR1cm4gcmVzdWx0OwogfQogCisvKiBCYXNpY2FsbHkgdGhlICJuIiBmb3JtYXQgY29kZSB3aXRoIHRoZSBhYmlsaXR5IHRvIHR1cm4gTm9uZSBpbnRvIC0xLiAqLworc3RhdGljIGludAorbW1hcF9jb252ZXJ0X3NzaXplX3QoUHlPYmplY3QgKm9iaiwgdm9pZCAqcmVzdWx0KSB7CisgICAgUHlfc3NpemVfdCBsaW1pdDsKKyAgICBpZiAob2JqID09IFB5X05vbmUpIHsKKyAgICAgICAgbGltaXQgPSAtMTsKKyAgICB9CisgICAgZWxzZSBpZiAoUHlOdW1iZXJfQ2hlY2sob2JqKSkgeworICAgICAgICBsaW1pdCA9IFB5TnVtYmVyX0FzU3NpemVfdChvYmosIFB5RXhjX092ZXJmbG93RXJyb3IpOworICAgICAgICBpZiAobGltaXQgPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJpbnRlZ2VyIGFyZ3VtZW50IGV4cGVjdGVkLCBnb3QgJyUuMjAwcyciLAorICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShvYmopLT50cF9uYW1lKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgICooKFB5X3NzaXplX3QgKilyZXN1bHQpID0gbGltaXQ7CisgICAgcmV0dXJuIDE7Cit9CisKIHN0YXRpYyBQeU9iamVjdCAqCiBtbWFwX3JlYWRfbWV0aG9kKG1tYXBfb2JqZWN0ICpzZWxmLAogICAgICAgICAgICAgICAgICBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeV9zc2l6ZV90IG51bV9ieXRlcywgbjsKKyAgICBQeV9zc2l6ZV90IG51bV9ieXRlcyA9IC0xLCBuOwogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAKICAgICBDSEVDS19WQUxJRChOVUxMKTsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIm46cmVhZCIsICZudW1fYnl0ZXMpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifE8mOnJlYWQiLCBtbWFwX2NvbnZlcnRfc3NpemVfdCwgJm51bV9ieXRlcykpCiAgICAgICAgIHJldHVybihOVUxMKTsKIAogICAgIC8qIHNpbGVudGx5ICdhZGp1c3QnIG91dC1vZi1yYW5nZSByZXF1ZXN0cyAqLwpAQCAtNDM3LDcgKzQ1Nyw3IEBACiAgICAgewogICAgICAgICBzdHJ1Y3Qgc3RhdCBidWY7CiAgICAgICAgIGlmICgtMSA9PSBmc3RhdChzZWxmLT5mZCwgJmJ1ZikpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhtbWFwX21vZHVsZV9lcnJvcik7CisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogI2lmZGVmIEhBVkVfTEFSR0VGSUxFX1NVUFBPUlQKQEAgLTUyNyw3ICs1NDcsNyBAQAogICAgICAgICB2b2lkICpuZXdtYXA7CiAKICAgICAgICAgaWYgKGZ0cnVuY2F0ZShzZWxmLT5mZCwgc2VsZi0+b2Zmc2V0ICsgbmV3X3NpemUpID09IC0xKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KIApAQCAtNTQyLDcgKzU2Miw3IEBACiAjZW5kaWYKICAgICAgICAgaWYgKG5ld21hcCA9PSAodm9pZCAqKS0xKQogICAgICAgICB7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgc2VsZi0+ZGF0YSA9IG5ld21hcDsKQEAgLTU4Myw3ICs2MDMsNyBAQAogICAgIC8qIFhYWCBzZW1hbnRpY3Mgb2YgcmV0dXJuIHZhbHVlPyAqLwogICAgIC8qIFhYWCBmbGFncyBmb3IgbXN5bmM/ICovCiAgICAgaWYgKC0xID09IG1zeW5jKHNlbGYtPmRhdGEgKyBvZmZzZXQsIHNpemUsIE1TX1NZTkMpKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhtbWFwX21vZHVsZV9lcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoMCk7CkBAIC02NDUsOSArNjY1LDkgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLyogYm91bmRzIGNoZWNrIHRoZSB2YWx1ZXMgKi8KLSAgICAgICAgaWYgKGNudCA8IDAgfHwgKGNudCArIGRlc3QpIDwgY250IHx8IChjbnQgKyBzcmMpIDwgY250IHx8Ci0gICAgICAgICAgIHNyYyA8IDAgfHwgc3JjID4gc2VsZi0+c2l6ZSB8fCAoc3JjICsgY250KSA+IHNlbGYtPnNpemUgfHwKLSAgICAgICAgICAgZGVzdCA8IDAgfHwgZGVzdCA+IHNlbGYtPnNpemUgfHwgKGRlc3QgKyBjbnQpID4gc2VsZi0+c2l6ZSkgeworICAgICAgICBpZiAoKGNudCArIGRlc3QpIDwgY250IHx8IChjbnQgKyBzcmMpIDwgY250IHx8CisgICAgICAgICAgIHNyYyA+IHNlbGYtPnNpemUgfHwgKHNyYyArIGNudCkgPiBzZWxmLT5zaXplIHx8CisgICAgICAgICAgIGRlc3QgPiBzZWxmLT5zaXplIHx8IChkZXN0ICsgY250KSA+IHNlbGYtPnNpemUpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICJzb3VyY2UsIGRlc3RpbmF0aW9uLCBvciBjb3VudCBvdXQgb2YgcmFuZ2UiKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNjgwLDcgKzcwMCw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogbW1hcF9fZXhpdF9fbWV0aG9kKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLCAiY2xvc2UiLCBOVUxMKTsKKyAgICBfUHlfSURFTlRJRklFUihjbG9zZSk7CisKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLCAmUHlJZF9jbG9zZSwgTlVMTCk7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgUHlNZXRob2REZWYgbW1hcF9vYmplY3RfbWV0aG9kc1tdID0gewpAQCAtOTM3LDEzICs5NTksMTMgQEAKIH0KIAogc3RhdGljIFB5U2VxdWVuY2VNZXRob2RzIG1tYXBfYXNfc2VxdWVuY2UgPSB7Ci0gICAgKGxlbmZ1bmMpbW1hcF9sZW5ndGgsICAgICAgICAgICAgICAgICAgICAgIC8qc3FfbGVuZ3RoKi8KLSAgICAoYmluYXJ5ZnVuYyltbWFwX2NvbmNhdCwgICAgICAgICAgICAgICAgICAgLypzcV9jb25jYXQqLwotICAgIChzc2l6ZWFyZ2Z1bmMpbW1hcF9yZXBlYXQsICAgICAgICAgICAgICAgICAvKnNxX3JlcGVhdCovCi0gICAgKHNzaXplYXJnZnVuYyltbWFwX2l0ZW0sICAgICAgICAgICAgICAgICAgICAgICAgICAgLypzcV9pdGVtKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKnNxX3NsaWNlKi8KLSAgICAoc3NpemVvYmphcmdwcm9jKW1tYXBfYXNzX2l0ZW0sICAgICAgICAgICAgLypzcV9hc3NfaXRlbSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypzcV9hc3Nfc2xpY2UqLworICAgIChsZW5mdW5jKW1tYXBfbGVuZ3RoLCAgICAgICAgICAgIC8qc3FfbGVuZ3RoKi8KKyAgICAoYmluYXJ5ZnVuYyltbWFwX2NvbmNhdCwgICAgICAgICAvKnNxX2NvbmNhdCovCisgICAgKHNzaXplYXJnZnVuYyltbWFwX3JlcGVhdCwgICAgICAgLypzcV9yZXBlYXQqLworICAgIChzc2l6ZWFyZ2Z1bmMpbW1hcF9pdGVtLCAgICAgICAgIC8qc3FfaXRlbSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypzcV9zbGljZSovCisgICAgKHNzaXplb2JqYXJncHJvYyltbWFwX2Fzc19pdGVtLCAgLypzcV9hc3NfaXRlbSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypzcV9hc3Nfc2xpY2UqLwogfTsKIAogc3RhdGljIFB5TWFwcGluZ01ldGhvZHMgbW1hcF9hc19tYXBwaW5nID0gewpAQCAtMTAwNSw3ICsxMDI3LDcgQEAKICAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwgICAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0YXR0cm8qLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9zZXRhdHRybyovCiAgICAgJm1tYXBfYXNfYnVmZmVyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX2J1ZmZlciovCi0gICAgUHlfVFBGTEFHU19ERUZBVUxUIHwgUHlfVFBGTEFHU19CQVNFVFlQRSwgICAgICAgICAgICAgICAgICAgLyp0cF9mbGFncyovCisgICAgUHlfVFBGTEFHU19ERUZBVUxUIHwgUHlfVFBGTEFHU19CQVNFVFlQRSwgICAvKnRwX2ZsYWdzKi8KICAgICBtbWFwX2RvYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZG9jKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jbGVhciAqLwpAQCAtMTAyMSwxMCArMTA0MywxMCBAQAogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3JfZ2V0ICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9zZXQgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3RvZmZzZXQgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaW5pdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaW5pdCAqLwogICAgIFB5VHlwZV9HZW5lcmljQWxsb2MsICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYWxsb2MgKi8KICAgICBuZXdfbW1hcF9vYmplY3QsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX25ldyAqLwotICAgIFB5T2JqZWN0X0RlbCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9mcmVlICovCisgICAgUHlPYmplY3RfRGVsLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9mcmVlICovCiB9OwogCiAKQEAgLTEwNzUsOCArMTA5Nyw4IEBACiAgICAgaW50IGRldnplcm8gPSAtMTsKICAgICBpbnQgYWNjZXNzID0gKGludClBQ0NFU1NfREVGQVVMVDsKICAgICBzdGF0aWMgY2hhciAqa2V5d29yZHNbXSA9IHsiZmlsZW5vIiwgImxlbmd0aCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZsYWdzIiwgInByb3QiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhY2Nlc3MiLCAib2Zmc2V0IiwgTlVMTH07CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZsYWdzIiwgInByb3QiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhY2Nlc3MiLCAib2Zmc2V0IiwgTlVMTH07CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RpY3QsICJpT3xpaWkiIF9QeV9QQVJTRV9PRkZfVCwga2V5d29yZHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZkLCAmbWFwX3NpemVfb2JqLCAmZmxhZ3MsICZwcm90LApAQCAtMTE4MSw3ICsxMjAzLDcgQEAKICAgICAgICAgZmQgPSBkZXZ6ZXJvID0gb3BlbigiL2Rldi96ZXJvIiwgT19SRFdSKTsKICAgICAgICAgaWYgKGRldnplcm8gPT0gLTEpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihtX29iaik7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICNlbmRpZgpAQCAtMTE4OSw3ICsxMjExLDcgQEAKICAgICAgICAgbV9vYmotPmZkID0gZHVwKGZkKTsKICAgICAgICAgaWYgKG1fb2JqLT5mZCA9PSAtMSkgewogICAgICAgICAgICAgUHlfREVDUkVGKG1fb2JqKTsKLSAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhtbWFwX21vZHVsZV9lcnJvcik7CisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgIH0KQEAgLTEyMDUsNyArMTIyNyw3IEBACiAgICAgaWYgKG1fb2JqLT5kYXRhID09IChjaGFyICopLTEpIHsKICAgICAgICAgbV9vYmotPmRhdGEgPSBOVUxMOwogICAgICAgICBQeV9ERUNSRUYobV9vYmopOwotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBtX29iai0+YWNjZXNzID0gKGFjY2Vzc19tb2RlKWFjY2VzczsKQEAgLTEyMzgsOCArMTI2MCw4IEBACiAgICAgaW50IGFjY2VzcyA9IChhY2Nlc3NfbW9kZSlBQ0NFU1NfREVGQVVMVDsKICAgICBEV09SRCBmbFByb3RlY3QsIGR3RGVzaXJlZEFjY2VzczsKICAgICBzdGF0aWMgY2hhciAqa2V5d29yZHNbXSA9IHsgImZpbGVubyIsICJsZW5ndGgiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFnbmFtZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhY2Nlc3MiLCAib2Zmc2V0IiwgTlVMTCB9OworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGFnbmFtZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhY2Nlc3MiLCAib2Zmc2V0IiwgTlVMTCB9OwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkaWN0LCAiaU98emlMIiwga2V5d29yZHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZpbGVubywgJm1hcF9zaXplX29iaiwKQEAgLTEyODYsMTIgKzEzMDgsMTIgQEAKICAgICBpZiAoZmlsZW5vICE9IC0xICYmIGZpbGVubyAhPSAwKSB7CiAgICAgICAgIC8qIEVuc3VyZSB0aGF0IGZpbGVubyBpcyB3aXRoaW4gdGhlIENSVCdzIHZhbGlkIHJhbmdlICovCiAgICAgICAgIGlmIChfUHlWZXJpZnlfZmQoZmlsZW5vKSA9PSAwKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgZmggPSAoSEFORExFKV9nZXRfb3NmaGFuZGxlKGZpbGVubyk7CiAgICAgICAgIGlmIChmaD09KEhBTkRMRSktMSkgewotICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKG1tYXBfbW9kdWxlX2Vycm9yKTsKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAgICAgICAgIC8qIFdpbjl4IGFwcGVhcnMgdG8gbmVlZCB1cyBzZWVrZWQgdG8gemVybyAqLwpAQCAtMTQ0NSwxMSArMTQ2Nyw3IEBACiAgICAgZGljdCA9IFB5TW9kdWxlX0dldERpY3QobW9kdWxlKTsKICAgICBpZiAoIWRpY3QpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIG1tYXBfbW9kdWxlX2Vycm9yID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJtbWFwLmVycm9yIiwKLSAgICAgICAgUHlFeGNfRW52aXJvbm1lbnRFcnJvciAsIE5VTEwpOwotICAgIGlmIChtbWFwX21vZHVsZV9lcnJvciA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBQeURpY3RfU2V0SXRlbVN0cmluZyhkaWN0LCAiZXJyb3IiLCBtbWFwX21vZHVsZV9lcnJvcik7CisgICAgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZGljdCwgImVycm9yIiwgUHlFeGNfT1NFcnJvcik7CiAgICAgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZGljdCwgIm1tYXAiLCAoUHlPYmplY3QqKSAmbW1hcF9vYmplY3RfdHlwZSk7CiAjaWZkZWYgUFJPVF9FWEVDCiAgICAgc2V0aW50KGRpY3QsICJQUk9UX0VYRUMiLCBQUk9UX0VYRUMpOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9uaXNtb2R1bGUuYyBiL01vZHVsZXMvbmlzbW9kdWxlLmMKaW5kZXggYTgxY2E4Yy4uMGFmNDk1ZiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9uaXNtb2R1bGUuYworKysgYi9Nb2R1bGVzL25pc21vZHVsZS5jCkBAIC00MTEsNyArNDExLDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKChsaXN0ID0gUHlMaXN0X05ldygwKSkgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZm9yIChtYXBzID0gbWFwczsgbWFwczsgbWFwcyA9IG1hcHMtPm5leHQpIHsKKyAgICBmb3IgKDsgbWFwczsgbWFwcyA9IG1hcHMtPm5leHQpIHsKICAgICAgICAgUHlPYmplY3QgKnN0ciA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKG1hcHMtPm1hcCk7CiAgICAgICAgIGlmICghc3RyIHx8IFB5TGlzdF9BcHBlbmQobGlzdCwgc3RyKSA8IDApCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL01vZHVsZXMvb3BlcmF0b3IuYyBiL01vZHVsZXMvb3BlcmF0b3IuYwppbmRleCA4NjZlYzNhLi4yZjQ3NTczIDEwMDY0NAotLS0gYS9Nb2R1bGVzL29wZXJhdG9yLmMKKysrIGIvTW9kdWxlcy9vcGVyYXRvci5jCkBAIC00MDIsNyArNDAyLDggQEAKICAgICBmb3IgKGlkeCA9IDA7IGlkeCA8IG5hdHRyczsgKytpZHgpIHsKICAgICAgICAgUHlPYmplY3QgKml0ZW0gPSBQeVR1cGxlX0dFVF9JVEVNKGFyZ3MsIGlkeCk7CiAgICAgICAgIFB5X3NzaXplX3QgaXRlbV9sZW47Ci0gICAgICAgIFB5X1VOSUNPREUgKml0ZW1fYnVmZmVyOworICAgICAgICB2b2lkICpkYXRhOworICAgICAgICB1bnNpZ25lZCBpbnQga2luZDsKICAgICAgICAgaW50IGRvdF9jb3VudDsKIAogICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhpdGVtKSkgewpAQCAtNDExLDEzICs0MTIsMTggQEAKICAgICAgICAgICAgIFB5X0RFQ1JFRihhdHRyKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIGl0ZW1fbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGl0ZW0pOwotICAgICAgICBpdGVtX2J1ZmZlciA9IFB5VW5pY29kZV9BU19VTklDT0RFKGl0ZW0pOworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKGl0ZW0pKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoYXR0cik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBpdGVtX2xlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGl0ZW0pOworICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoaXRlbSk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShpdGVtKTsKIAogICAgICAgICAvKiBjaGVjayB3aGV0aGVyZSB0aGUgc3RyaW5nIGlzIGRvdHRlZCAqLwogICAgICAgICBkb3RfY291bnQgPSAwOwogICAgICAgICBmb3IgKGNoYXJfaWR4ID0gMDsgY2hhcl9pZHggPCBpdGVtX2xlbjsgKytjaGFyX2lkeCkgewotICAgICAgICAgICAgaWYgKGl0ZW1fYnVmZmVyW2NoYXJfaWR4XSA9PSAoUHlfVU5JQ09ERSknLicpCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgY2hhcl9pZHgpID09ICcuJykKICAgICAgICAgICAgICAgICArK2RvdF9jb3VudDsKICAgICAgICAgfQogCkBAIC00MzgsMTIgKzQ0NCwxMiBAQAogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBmb3IgKDsgZG90X2NvdW50ID4gMDsgLS1kb3RfY291bnQpIHsKLSAgICAgICAgICAgICAgICB3aGlsZSAoaXRlbV9idWZmZXJbdW5pYnVmZl90aWxsXSAhPSAoUHlfVU5JQ09ERSknLicpIHsKKyAgICAgICAgICAgICAgICB3aGlsZSAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgdW5pYnVmZl90aWxsKSAhPSAnLicpIHsKICAgICAgICAgICAgICAgICAgICAgKyt1bmlidWZmX3RpbGw7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGF0dHJfY2hhaW5faXRlbSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbV9idWZmZXIgKyB1bmlidWZmX2Zyb20sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaWJ1ZmZfdGlsbCAtIHVuaWJ1ZmZfZnJvbSk7CisgICAgICAgICAgICAgICAgYXR0cl9jaGFpbl9pdGVtID0gUHlVbmljb2RlX1N1YnN0cmluZyhpdGVtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmlidWZmX2Zyb20sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaWJ1ZmZfdGlsbCk7CiAgICAgICAgICAgICAgICAgaWYgKGF0dHJfY2hhaW5faXRlbSA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihhdHRyX2NoYWluKTsKICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGF0dHIpOwpAQCAtNDU2LDkgKzQ2Miw4IEBACiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIC8qIG5vdyBhZGQgdGhlIGxhc3QgZG90bGVzcyBuYW1lICovCi0gICAgICAgICAgICBhdHRyX2NoYWluX2l0ZW0gPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbV9idWZmZXIgKyB1bmlidWZmX2Zyb20sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbV9sZW4gLSB1bmlidWZmX2Zyb20pOworICAgICAgICAgICAgYXR0cl9jaGFpbl9pdGVtID0gUHlVbmljb2RlX1N1YnN0cmluZyhpdGVtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmlidWZmX2Zyb20sIGl0ZW1fbGVuKTsKICAgICAgICAgICAgIGlmIChhdHRyX2NoYWluX2l0ZW0gPT0gTlVMTCkgewogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihhdHRyX2NoYWluKTsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoYXR0cik7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL29zc2F1ZGlvZGV2LmMgYi9Nb2R1bGVzL29zc2F1ZGlvZGV2LmMKaW5kZXggYjM4Y2U1Mi4uYTE3YTY0NyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9vc3NhdWRpb2Rldi5jCisrKyBiL01vZHVsZXMvb3NzYXVkaW9kZXYuYwpAQCAtMjE0LDYgKzIxNCwyMSBAQAogICogSGVscGVyIGZ1bmN0aW9ucwogICovCiAKKy8qIENoZWNrIGlmIGEgZ2l2ZW4gZmlsZSBkZXNjcmlwdG9yIGlzIHZhbGlkIChpLmUuIGhhc24ndCBiZWVuIGNsb3NlZCkuCisgKiBJZiB0cnVlLCByZXR1cm4gMS4gT3RoZXJ3aXNlLCByYWlzZSBWYWx1ZUVycm9yIGFuZCByZXR1cm4gMC4KKyAqLworc3RhdGljIGludCBfaXNfZmRfdmFsaWQoaW50IGZkKQoreworICAgIC8qIHRoZSBGRCBpcyBzZXQgdG8gLTEgaW4gb3NzX2Nsb3NlKCkvb3NzX21peGVyX2Nsb3NlKCkgKi8KKyAgICBpZiAoZmQgPj0gMCkgeworICAgICAgICByZXR1cm4gMTsKKyAgICB9IGVsc2UgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJPcGVyYXRpb24gb24gY2xvc2VkIE9TUyBkZXZpY2UuIik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KK30KKwogLyogX2RvX2lvY3RsXzEoKSBpcyBhIHByaXZhdGUgaGVscGVyIGZ1bmN0aW9uIHVzZWQgZm9yIHRoZSBPU1MgaW9jdGxzIC0tCiAgICBTTkRDVExfRFNQX3tTRVRGTVQsQ0hBTk5FTFMsU1BFRUR9IC0tIHRoYXQgdGhhdCBhcmUgY2FsbGVkIGZyb20gQwogICAgbGlrZSB0aGlzOgpAQCAtMzAxLDYgKzMxNiw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogb3NzX25vbmJsb2NrKG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICAvKiBIbW1tOiBpdCBkb2Vzbid0IGFwcGVhciB0byBiZSBwb3NzaWJsZSB0byByZXR1cm4gdG8gYmxvY2tpbmcKICAgICAgICBtb2RlIG9uY2Ugd2UncmUgaW4gbm9uLWJsb2NraW5nIG1vZGUhICovCiAgICAgaWYgKGlvY3RsKHNlbGYtPmZkLCBTTkRDVExfRFNQX05PTkJMT0NLLCBOVUxMKSA9PSAtMSkKQEAgLTMxMiw2ICszMzAsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIG9zc19zZXRmbXQob3NzX2F1ZGlvX3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gX2RvX2lvY3RsXzEoc2VsZi0+ZmQsIGFyZ3MsICJzZXRmbXQiLCBTTkRDVExfRFNQX1NFVEZNVCk7CiB9CiAKQEAgLTMxOSw2ICszNDAsMTAgQEAKIG9zc19nZXRmbXRzKG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQogewogICAgIGludCBtYXNrOworCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmIChpb2N0bChzZWxmLT5mZCwgU05EQ1RMX0RTUF9HRVRGTVRTLCAmbWFzaykgPT0gLTEpCiAgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhtYXNrKTsKQEAgLTMyNywzMCArMzUyLDQ1IEBACiBzdGF0aWMgUHlPYmplY3QgKgogb3NzX2NoYW5uZWxzKG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIF9kb19pb2N0bF8xKHNlbGYtPmZkLCBhcmdzLCAiY2hhbm5lbHMiLCBTTkRDVExfRFNQX0NIQU5ORUxTKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIG9zc19zcGVlZChvc3NfYXVkaW9fdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBfZG9faW9jdGxfMShzZWxmLT5mZCwgYXJncywgInNwZWVkIiwgU05EQ1RMX0RTUF9TUEVFRCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3Nfc3luYyhvc3NfYXVkaW9fdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBfZG9faW9jdGxfMChzZWxmLT5mZCwgYXJncywgInN5bmMiLCBTTkRDVExfRFNQX1NZTkMpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogb3NzX3Jlc2V0KG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIF9kb19pb2N0bF8wKHNlbGYtPmZkLCBhcmdzLCAicmVzZXQiLCBTTkRDVExfRFNQX1JFU0VUKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIG9zc19wb3N0KG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIF9kb19pb2N0bF8wKHNlbGYtPmZkLCBhcmdzLCAicG9zdCIsIFNORENUTF9EU1BfUE9TVCk7CiB9CiAKQEAgLTM2NSw2ICs0MDUsOSBAQAogICAgIGNoYXIgKmNwOwogICAgIFB5T2JqZWN0ICpydjsKIAorICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6cmVhZCIsICZzaXplKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcnYgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIHNpemUpOwpAQCAtMzkyLDYgKzQzNSw5IEBACiAgICAgY2hhciAqY3A7CiAgICAgaW50IHJ2LCBzaXplOwogCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieSM6d3JpdGUiLCAmY3AsICZzaXplKSkgewogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC00MjMsNiArNDY5LDkgQEAKICAgICAgICBtb2RlLCB0aGUgYmVoYXZpb3VyIG9mIHdyaXRlKCkgYW5kIHdyaXRlYWxsKCkgZnJvbSBQeXRob24gaXMKICAgICAgICBpbmRpc3Rpbmd1aXNoYWJsZS4gKi8KIAorICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkjOndyaXRlIiwgJmNwLCAmc2l6ZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCkBAIC00ODIsMTAgKzUzMSwxMiBAQAogICAgIHJldHVybiBzZWxmOwogfQogCi1zdGF0aWMgUHlPYmplY3QgKiAKK3N0YXRpYyBQeU9iamVjdCAqCiBvc3NfZXhpdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKIHsKLSAgICBQeU9iamVjdCAqcmV0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLCAiY2xvc2UiLCBOVUxMKTsKKyAgICBfUHlfSURFTlRJRklFUihjbG9zZSk7CisKKyAgICBQeU9iamVjdCAqcmV0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLCAmUHlJZF9jbG9zZSwgTlVMTCk7CiAgICAgaWYgKCFyZXQpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0RFQ1JFRihyZXQpOwpAQCAtNDk1LDYgKzU0Niw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogb3NzX2ZpbGVubyhvc3NfYXVkaW9fdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKIHsKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhzZWxmLT5mZCk7CiB9CiAKQEAgLTUwOSw2ICs1NjMsOSBAQAogICAgIGludCBmbXQsIGNoYW5uZWxzLCByYXRlOwogICAgIFB5T2JqZWN0ICogcnY7ICAgICAgICAgICAgICAgICAgICAvKiByZXR1cm4gdHVwbGUgKGZtdCwgY2hhbm5lbHMsIHJhdGUpICovCiAKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpaWl8aTpzZXRwYXJhbWV0ZXJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJndhbnRlZF9mbXQsICZ3YW50ZWRfY2hhbm5lbHMsICZ3YW50ZWRfcmF0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0cmljdCkpCkBAIC01OTksNiArNjU2LDkgQEAKICAgICBhdWRpb19idWZfaW5mbyBhaTsKICAgICBpbnQgbmNoYW5uZWxzPTAsIHNzaXplPTA7CiAKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgaWYgKF9zc2l6ZShzZWxmLCAmbmNoYW5uZWxzLCAmc3NpemUpIDwgMCB8fCAhbmNoYW5uZWxzIHx8ICFzc2l6ZSkgewogICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNjE4LDYgKzY3OCw5IEBACiAgICAgYXVkaW9fYnVmX2luZm8gYWk7CiAgICAgaW50IG5jaGFubmVscz0wLCBzc2l6ZT0wOwogCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmIChfc3NpemUoc2VsZiwgJm5jaGFubmVscywgJnNzaXplKSA8IDAgfHwgIW5jaGFubmVscyB8fCAhc3NpemUpIHsKICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTYzOCw2ICs3MDEsOSBAQAogICAgIGF1ZGlvX2J1Zl9pbmZvIGFpOwogICAgIGludCBuY2hhbm5lbHM9MCwgc3NpemU9MDsKIAorICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoX3NzaXplKHNlbGYsICZuY2hhbm5lbHMsICZzc2l6ZSkgPCAwIHx8ICFuY2hhbm5lbHMgfHwgIXNzaXplKSB7CiAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC02NTUsNiArNzIxLDkgQEAKICAgICBjb3VudF9pbmZvIGluZm87CiAgICAgaW50IHJlcTsKIAorICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoc2VsZi0+bW9kZSA9PSBPX1JET05MWSkKICAgICAgICAgcmVxID0gU05EQ1RMX0RTUF9HRVRJUFRSOwogICAgIGVsc2UKQEAgLTY4NSw2ICs3NTQsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIG9zc19taXhlcl9maWxlbm8ob3NzX21peGVyX3QgKnNlbGYsIFB5T2JqZWN0ICp1bnVzZWQpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoc2VsZi0+ZmQpOwogfQogCkBAIC02OTMsNiArNzY1LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfY29udHJvbHMob3NzX21peGVyX3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gX2RvX2lvY3RsXzFfaW50ZXJuYWwoc2VsZi0+ZmQsIGFyZ3MsICJjb250cm9scyIsCiAgICAgICAgIFNPVU5EX01JWEVSX1JFQURfREVWTUFTSyk7CiB9CkBAIC03MDAsNiArNzc1LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfc3RlcmVvY29udHJvbHMob3NzX21peGVyX3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gX2RvX2lvY3RsXzFfaW50ZXJuYWwoc2VsZi0+ZmQsIGFyZ3MsICJzdGVyZW9jb250cm9scyIsCiAgICAgICAgIFNPVU5EX01JWEVSX1JFQURfU1RFUkVPREVWUyk7CiB9CkBAIC03MDcsNiArNzg1LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfcmVjY29udHJvbHMob3NzX21peGVyX3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gX2RvX2lvY3RsXzFfaW50ZXJuYWwoc2VsZi0+ZmQsIGFyZ3MsICJyZWNjb250cm9scyIsCiAgICAgICAgIFNPVU5EX01JWEVSX1JFQURfUkVDTUFTSyk7CiB9CkBAIC03MTYsNiArNzk3LDkgQEAKIHsKICAgICBpbnQgY2hhbm5lbCwgdm9sdW1lOwogCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIC8qIENhbid0IHVzZSBfZG9faW9jdGxfMSBiZWNhdXNlIG9mIGVuY29kZWQgYXJnIHRoaW5neS4gKi8KICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6Z2V0IiwgJmNoYW5uZWwpKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTczNiw2ICs4MjAsOSBAQAogewogICAgIGludCBjaGFubmVsLCB2b2x1bWUsIGxlZnRWb2wsIHJpZ2h0Vm9sOwogCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIC8qIENhbid0IHVzZSBfZG9faW9jdGxfMSBiZWNhdXNlIG9mIGVuY29kZWQgYXJnIHRoaW5neS4gKi8KICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImkoaWkpOnNldCIsICZjaGFubmVsLCAmbGVmdFZvbCwgJnJpZ2h0Vm9sKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC03NjEsNiArODQ4LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfZ2V0X3JlY3NyYyhvc3NfbWl4ZXJfdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBfZG9faW9jdGxfMV9pbnRlcm5hbChzZWxmLT5mZCwgYXJncywgImdldF9yZWNzcmMiLAogICAgICAgICBTT1VORF9NSVhFUl9SRUFEX1JFQ1NSQyk7CiB9CkBAIC03NjgsNiArODU4LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfc2V0X3JlY3NyYyhvc3NfbWl4ZXJfdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBfZG9faW9jdGxfMShzZWxmLT5mZCwgYXJncywgInNldF9yZWNzcmMiLAogICAgICAgICBTT1VORF9NSVhFUl9XUklURV9SRUNTUkMpOwogfQpAQCAtOTcxLDggKzEwNjQsOCBAQAogICAgIGludCBudW1fY29udHJvbHM7CiAgICAgaW50IGk7CiAKLSAgICBudW1fY29udHJvbHMgPSBzaXplb2YoY29udHJvbF9sYWJlbHMpIC8gc2l6ZW9mKGNvbnRyb2xfbGFiZWxzWzBdKTsKLSAgICBhc3NlcnQobnVtX2NvbnRyb2xzID09IHNpemVvZihjb250cm9sX25hbWVzKSAvIHNpemVvZihjb250cm9sX25hbWVzWzBdKSk7CisgICAgbnVtX2NvbnRyb2xzID0gUHlfQVJSQVlfTEVOR1RIKGNvbnRyb2xfbGFiZWxzKTsKKyAgICBhc3NlcnQobnVtX2NvbnRyb2xzID09IFB5X0FSUkFZX0xFTkdUSChjb250cm9sX25hbWVzKSk7CiAKICAgICBsYWJlbHMgPSBQeUxpc3RfTmV3KG51bV9jb250cm9scyk7CiAgICAgbmFtZXMgPSBQeUxpc3RfTmV3KG51bV9jb250cm9scyk7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3BhcnNlcm1vZHVsZS5jIGIvTW9kdWxlcy9wYXJzZXJtb2R1bGUuYwppbmRleCAzY2RmMTM1Li45ZDFiY2E1IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3BhcnNlcm1vZHVsZS5jCisrKyBiL01vZHVsZXMvcGFyc2VybW9kdWxlLmMKQEAgLTI5OCwyNSArMjk4LDI1IEBACiAKICAgICAvKiBDb252ZXJ0IHJldHVybiB2YWx1ZSB0byBhIEJvb2xlYW4gKi8KICAgICBzd2l0Y2ggKG9wKSB7Ci0gICAgY2FzZSBQeV9FUToKKyAgICAgIGNhc2UgUHlfRVE6CiAgICAgICAgIHYgPSBURVNUX0NPTkQocmVzdWx0ID09IDApOwogICAgICAgICBicmVhazsKLSAgICBjYXNlIFB5X05FOgorICAgICAgY2FzZSBQeV9ORToKICAgICAgICAgdiA9IFRFU1RfQ09ORChyZXN1bHQgIT0gMCk7CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgUHlfTEU6CisgICAgICBjYXNlIFB5X0xFOgogICAgICAgICB2ID0gVEVTVF9DT05EKHJlc3VsdCA8PSAwKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQeV9HRToKKyAgICAgIGNhc2UgUHlfR0U6CiAgICAgICAgIHYgPSBURVNUX0NPTkQocmVzdWx0ID49IDApOwogICAgICAgICBicmVhazsKLSAgICBjYXNlIFB5X0xUOgorICAgICAgY2FzZSBQeV9MVDoKICAgICAgICAgdiA9IFRFU1RfQ09ORChyZXN1bHQgPCAwKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQeV9HVDoKKyAgICAgIGNhc2UgUHlfR1Q6CiAgICAgICAgIHYgPSBURVNUX0NPTkQocmVzdWx0ID4gMCk7CiAgICAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6CisgICAgICBkZWZhdWx0OgogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC01ODEsOCArNTgxLDEwIEBACiAgICAgICAgICAgICBpZiAocmVzKQogICAgICAgICAgICAgICAgICgoUHlTVF9PYmplY3QgKilyZXMpLT5zdF9mbGFncy5jZl9mbGFncyA9IGZsYWdzICYgUHlDRl9NQVNLOwogICAgICAgICB9Ci0gICAgICAgIGVsc2UKKyAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICBQeVBhcnNlcl9TZXRFcnJvcigmZXJyKTsKKyAgICAgICAgfQorICAgICAgICBQeVBhcnNlcl9DbGVhckVycm9yKCZlcnIpOwogICAgIH0KICAgICByZXR1cm4gKHJlcyk7CiB9CkBAIC05NzQsNiArOTc2LDcgQEAKIFZBTElEQVRFUih0ZXN0bGlzdF9jb21wKTsgICAgICAgVkFMSURBVEVSKHlpZWxkX2V4cHIpOwogVkFMSURBVEVSKG9yX3Rlc3QpOwogVkFMSURBVEVSKHRlc3Rfbm9jb25kKTsgICAgICAgICBWQUxJREFURVIobGFtYmRlZl9ub2NvbmQpOworVkFMSURBVEVSKHlpZWxkX2FyZyk7CiAKICN1bmRlZiBWQUxJREFURVIKIApAQCAtMTYzNCwyMiArMTYzNyw0OSBAQAogfQogCiAKLS8qIHlpZWxkX2V4cHI6ICd5aWVsZCcgW3Rlc3RsaXN0XQorLyogeWllbGRfZXhwcjogJ3lpZWxkJyBbeWllbGRfYXJnXQogICovCiBzdGF0aWMgaW50CiB2YWxpZGF0ZV95aWVsZF9leHByKG5vZGUgKnRyZWUpCiB7CiAgICAgaW50IG5jaCA9IE5DSCh0cmVlKTsKLSAgICBpbnQgcmVzID0gKHZhbGlkYXRlX250eXBlKHRyZWUsIHlpZWxkX2V4cHIpCi0gICAgICAgICAgICAgICAmJiAoKG5jaCA9PSAxKSB8fCAobmNoID09IDIpKQotICAgICAgICAgICAgICAgJiYgdmFsaWRhdGVfbmFtZShDSElMRCh0cmVlLCAwKSwgInlpZWxkIikpOwotCi0gICAgaWYgKHJlcyAmJiAobmNoID09IDIpKQotICAgICAgICByZXMgPSB2YWxpZGF0ZV90ZXN0bGlzdChDSElMRCh0cmVlLCAxKSk7Ci0KLSAgICByZXR1cm4gKHJlcyk7CisgICAgaWYgKG5jaCA8IDEgfHwgbmNoID4gMikKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCF2YWxpZGF0ZV9udHlwZSh0cmVlLCB5aWVsZF9leHByKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCF2YWxpZGF0ZV9uYW1lKENISUxEKHRyZWUsIDApLCAieWllbGQiKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKG5jaCA9PSAyKSB7CisgICAgICAgIGlmICghdmFsaWRhdGVfeWllbGRfYXJnKENISUxEKHRyZWUsIDEpKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICByZXR1cm4gMTsKIH0KIAorLyogeWllbGRfYXJnOiAnZnJvbScgdGVzdCB8IHRlc3RsaXN0CisgKi8KK3N0YXRpYyBpbnQKK3ZhbGlkYXRlX3lpZWxkX2FyZyhub2RlICp0cmVlKQoreworICAgIGludCBuY2ggPSBOQ0godHJlZSk7CisgICAgaWYgKCF2YWxpZGF0ZV9udHlwZSh0cmVlLCB5aWVsZF9hcmcpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBzd2l0Y2ggKG5jaCkgeworICAgICAgY2FzZSAxOgorICAgICAgICBpZiAoIXZhbGlkYXRlX3Rlc3RsaXN0KENISUxEKHRyZWUsIG5jaCAtIDEpKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgMjoKKyAgICAgICAgaWYgKCF2YWxpZGF0ZV9uYW1lKENISUxEKHRyZWUsIDApLCAiZnJvbSIpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGlmICghdmFsaWRhdGVfdGVzdChDSElMRCh0cmVlLCAxKSkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgYnJlYWs7CisgICAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgcmV0dXJuIDE7Cit9CiAKIC8qIHlpZWxkX3N0bXQ6IHlpZWxkX2V4cHIKICAqLwpAQCAtMjExOCwxNiArMjE0OCwxNiBAQAogICAgICAgICAgKi8KICAgICAgICAgdHJlZSA9IENISUxEKHRyZWUsIDApOwogICAgICAgICBzd2l0Y2ggKFRZUEUodHJlZSkpIHsKLSAgICAgICAgICAgIGNhc2UgTEVTUzoKLSAgICAgICAgICAgIGNhc2UgR1JFQVRFUjoKLSAgICAgICAgICAgIGNhc2UgRVFFUVVBTDoKLSAgICAgICAgICAgIGNhc2UgRVFVQUw6Ci0gICAgICAgICAgICBjYXNlIExFU1NFUVVBTDoKLSAgICAgICAgICAgIGNhc2UgR1JFQVRFUkVRVUFMOgotICAgICAgICAgICAgY2FzZSBOT1RFUVVBTDoKKyAgICAgICAgICBjYXNlIExFU1M6CisgICAgICAgICAgY2FzZSBHUkVBVEVSOgorICAgICAgICAgIGNhc2UgRVFFUVVBTDoKKyAgICAgICAgICBjYXNlIEVRVUFMOgorICAgICAgICAgIGNhc2UgTEVTU0VRVUFMOgorICAgICAgICAgIGNhc2UgR1JFQVRFUkVRVUFMOgorICAgICAgICAgIGNhc2UgTk9URVFVQUw6CiAgICAgICAgICAgICAgIHJlcyA9IDE7CiAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgY2FzZSBOQU1FOgorICAgICAgICAgIGNhc2UgTkFNRToKICAgICAgICAgICAgICAgcmVzID0gKChzdHJjbXAoU1RSKHRyZWUpLCAiaW4iKSA9PSAwKQogICAgICAgICAgICAgICAgICAgICAgfHwgKHN0cmNtcChTVFIodHJlZSksICJpcyIpID09IDApKTsKICAgICAgICAgICAgICAgaWYgKCFyZXMpIHsKQEAgLTI2NjMsOSArMjY5Myw5IEBACiB7CiAgICAgaW50IG5jaCA9IE5DSCh0cmVlKTsKICAgICBpbnQgcmVzID0gKHZhbGlkYXRlX250eXBlKHRyZWUsIGFyZ3VtZW50KQotICAgICAgICAgICAgICAgJiYgKChuY2ggPT0gMSkgfHwgKG5jaCA9PSAyKSB8fCAobmNoID09IDMpKQotICAgICAgICAgICAgICAgJiYgdmFsaWRhdGVfdGVzdChDSElMRCh0cmVlLCAwKSkpOwotCisgICAgICAgICAgICAgICAmJiAoKG5jaCA9PSAxKSB8fCAobmNoID09IDIpIHx8IChuY2ggPT0gMykpKTsKKyAgICBpZiAocmVzKSAKKyAgICAgICAgcmVzID0gdmFsaWRhdGVfdGVzdChDSElMRCh0cmVlLCAwKSk7CiAgICAgaWYgKHJlcyAmJiAobmNoID09IDIpKQogICAgICAgICByZXMgPSB2YWxpZGF0ZV9jb21wX2ZvcihDSElMRCh0cmVlLCAxKSk7CiAgICAgZWxzZSBpZiAocmVzICYmIChuY2ggPT0gMykpCkBAIC0zMjM5LDEwICszMjY5LDEzIEBACiAgICAgY29weXJlZyA9IFB5SW1wb3J0X0ltcG9ydE1vZHVsZU5vQmxvY2soImNvcHlyZWciKTsKICAgICBpZiAoY29weXJlZyAhPSBOVUxMKSB7CiAgICAgICAgIFB5T2JqZWN0ICpmdW5jLCAqcGlja2xlcjsKKyAgICAgICAgX1B5X0lERU5USUZJRVIocGlja2xlKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoc2VxdWVuY2Uyc3QpOworICAgICAgICBfUHlfSURFTlRJRklFUihfcGlja2xlcik7CiAKLSAgICAgICAgZnVuYyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoY29weXJlZywgInBpY2tsZSIpOwotICAgICAgICBwaWNrbGVfY29uc3RydWN0b3IgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG1vZHVsZSwgInNlcXVlbmNlMnN0Iik7Ci0gICAgICAgIHBpY2tsZXIgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG1vZHVsZSwgIl9waWNrbGVyIik7CisgICAgICAgIGZ1bmMgPSBfUHlPYmplY3RfR2V0QXR0cklkKGNvcHlyZWcsICZQeUlkX3BpY2tsZSk7CisgICAgICAgIHBpY2tsZV9jb25zdHJ1Y3RvciA9IF9QeU9iamVjdF9HZXRBdHRySWQobW9kdWxlLCAmUHlJZF9zZXF1ZW5jZTJzdCk7CisgICAgICAgIHBpY2tsZXIgPSBfUHlPYmplY3RfR2V0QXR0cklkKG1vZHVsZSwgJlB5SWRfX3BpY2tsZXIpOwogICAgICAgICBQeV9YSU5DUkVGKHBpY2tsZV9jb25zdHJ1Y3Rvcik7CiAgICAgICAgIGlmICgoZnVuYyAhPSBOVUxMKSAmJiAocGlja2xlX2NvbnN0cnVjdG9yICE9IE5VTEwpCiAgICAgICAgICAgICAmJiAocGlja2xlciAhPSBOVUxMKSkgewpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9wb3NpeG1vZHVsZS5jIGIvTW9kdWxlcy9wb3NpeG1vZHVsZS5jCmluZGV4IDlmNTc2NzMuLjYyOGIwYjkgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvcG9zaXhtb2R1bGUuYworKysgYi9Nb2R1bGVzL3Bvc2l4bW9kdWxlLmMKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlICJQeXRob24uaCIKIAogI2lmIGRlZmluZWQoX19WTVMpCisjICAgIGVycm9yICJQRVAgMTE6IFZNUyBpcyBub3cgdW5zdXBwb3J0ZWQsIGNvZGUgd2lsbCBiZSByZW1vdmVkIGluIFB5dGhvbiAzLjQiCiAjICAgIGluY2x1ZGUgPHVuaXhpby5oPgogI2VuZGlmIC8qIGRlZmluZWQoX19WTVMpICovCiAKQEAgLTQzLDYgKzQ0LDcgQEAKIAogCiAjaWYgZGVmaW5lZChQWU9TX09TMikKKyNlcnJvciAiUEVQIDExOiBPUy8yIGlzIG5vdyB1bnN1cHBvcnRlZCwgY29kZSB3aWxsIGJlIHJlbW92ZWQgaW4gUHl0aG9uIDMuNCIKICNkZWZpbmUgIElOQ0xfRE9TCiAjZGVmaW5lICBJTkNMX0RPU0VSUk9SUwogI2RlZmluZSAgSU5DTF9ET1NQUk9DRVNTCkBAIC01Nyw2ICs1OSwxMCBAQAogI2luY2x1ZGUgIm9zZGVmcy5oIgogI2VuZGlmCiAKKyNpZmRlZiBIQVZFX1NZU19VSU9fSAorI2luY2x1ZGUgPHN5cy91aW8uaD4KKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogI2VuZGlmIC8qIEhBVkVfU1lTX1RZUEVTX0ggKi8KQEAgLTkzLDYgKzk5LDQ0IEBACiAjaW5jbHVkZSA8bGFuZ2luZm8uaD4KICNlbmRpZgogCisjaWZkZWYgSEFWRV9TWVNfU0VOREZJTEVfSAorI2luY2x1ZGUgPHN5cy9zZW5kZmlsZS5oPgorI2VuZGlmCisKKyNpZmRlZiBIQVZFX1NDSEVEX0gKKyNpbmNsdWRlIDxzY2hlZC5oPgorI2VuZGlmCisKKyNpZiBkZWZpbmVkKEhBVkVfU1lTX1hBVFRSX0gpICYmIGRlZmluZWQoX19HTElCQ19fKQorI2RlZmluZSBVU0VfWEFUVFJTCisjZW5kaWYKKworI2lmZGVmIFVTRV9YQVRUUlMKKyNpbmNsdWRlIDxzeXMveGF0dHIuaD4KKyNlbmRpZgorCisjaWYgZGVmaW5lZChfX0ZyZWVCU0RfXykgfHwgZGVmaW5lZChfX0RyYWdvbkZseV9fKSB8fCBkZWZpbmVkKF9fQVBQTEVfXykKKyNpZmRlZiBIQVZFX1NZU19TT0NLRVRfSAorI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KKyNlbmRpZgorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0RMRkNOX0gKKyNpbmNsdWRlIDxkbGZjbi5oPgorI2VuZGlmCisKKyNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpCisjICBkZWZpbmUgVEVSTVNJWkVfVVNFX0NPTklPCisjZWxpZiBkZWZpbmVkKEhBVkVfU1lTX0lPQ1RMX0gpCisjICBpbmNsdWRlIDxzeXMvaW9jdGwuaD4KKyMgIGlmIGRlZmluZWQoSEFWRV9URVJNSU9TX0gpCisjICAgIGluY2x1ZGUgPHRlcm1pb3MuaD4KKyMgIGVuZGlmCisjICBpZiBkZWZpbmVkKFRJT0NHV0lOU1opCisjICAgIGRlZmluZSBURVJNU0laRV9VU0VfSU9DVEwKKyMgIGVuZGlmCisjZW5kaWYgLyogTVNfV0lORE9XUyAqLworCiAvKiBWYXJpb3VzIGNvbXBpbGVycyBoYXZlIG9ubHkgY2VydGFpbiBwb3NpeCBmdW5jdGlvbnMgKi8KIC8qIFhYWCBHb3NoIEkgd2lzaCB0aGVzZSB3ZXJlIGFsbCBtb3ZlZCBpbnRvIHB5Y29uZmlnLmggKi8KICNpZiBkZWZpbmVkKFBZQ0NfVkFDUFApICYmIGRlZmluZWQoUFlPU19PUzIpCkBAIC0xNTUsNiArMTk5LDkgQEAKICNlbmRpZiAgLyogISBfX1dBVENPTUNfXyB8fCBfX1FOWF9fICovCiAjZW5kaWYgLyogISBfX0lCTUNfXyAqLwogCisKKworCiAjaWZuZGVmIF9NU0NfVkVSCiAKICNpZiBkZWZpbmVkKF9fc2dpKSYmX0NPTVBJTEVSX1ZFUlNJT04+PTcwMApAQCAtMzQ3LDYgKzM5NCwyMiBAQAogI2VuZGlmCiAjZW5kaWYKIAorLyogQSBoZWxwZXIgdXNlZCBieSBhIG51bWJlciBvZiBQT1NJWC1vbmx5IGZ1bmN0aW9ucyAqLworI2lmbmRlZiBNU19XSU5ET1dTCitzdGF0aWMgaW50CitfcGFyc2Vfb2ZmX3QoUHlPYmplY3QqIGFyZywgdm9pZCogYWRkcikKK3sKKyNpZiAhZGVmaW5lZChIQVZFX0xBUkdFRklMRV9TVVBQT1JUKQorICAgICooKG9mZl90KilhZGRyKSA9IFB5TG9uZ19Bc0xvbmcoYXJnKTsKKyNlbHNlCisgICAgKigob2ZmX3QqKWFkZHIpID0gUHlMb25nX0FzTG9uZ0xvbmcoYXJnKTsKKyNlbmRpZgorICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gMTsKK30KKyNlbmRpZgorCiAjaWYgZGVmaW5lZCBfTVNDX1ZFUiAmJiBfTVNDX1ZFUiA+PSAxNDAwCiAvKiBNaWNyb3NvZnQgQ1JUIGluIFZTMjAwNSBhbmQgaGlnaGVyIHdpbGwgdmVyaWZ5IHRoYXQgYSBmaWxlaGFuZGxlIGlzCiAgKiB2YWxpZCBhbmQgdGhyb3cgYW4gYXNzZXJ0aW9uIGlmIGl0IGlzbid0LgpAQCAtNDk4LDYgKzU2MSwzNCBAQAogCiAgICAgcmV0dXJuIFRSVUU7CiB9CisKK3N0YXRpYyBpbnQKK3dpbjMyX3dhcm5fYnl0ZXNfYXBpKCkKK3sKKyAgICByZXR1cm4gUHlFcnJfV2FybkV4KFB5RXhjX0RlcHJlY2F0aW9uV2FybmluZywKKyAgICAgICAgIlRoZSBXaW5kb3dzIGJ5dGVzIEFQSSBoYXMgYmVlbiBkZXByZWNhdGVkLCAiCisgICAgICAgICJ1c2UgVW5pY29kZSBmaWxlbmFtZXMgaW5zdGVhZCIsCisgICAgICAgIDEpOworfQorCitzdGF0aWMgUHlPYmplY3QqCit3aW4zMl9kZWNvZGVfZmlsZW5hbWUoUHlPYmplY3QgKm9iaikKK3sKKyAgICBQeU9iamVjdCAqdW5pY29kZTsKKyAgICBpZiAoUHlVbmljb2RlX0NoZWNrKG9iaikpIHsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShvYmopKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIFB5X0lOQ1JFRihvYmopOworICAgICAgICByZXR1cm4gb2JqOworICAgIH0KKyAgICBpZiAoIVB5VW5pY29kZV9GU0RlY29kZXIob2JqLCAmdW5pY29kZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICh3aW4zMl93YXJuX2J5dGVzX2FwaSgpKSB7CisgICAgICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJldHVybiB1bmljb2RlOworfQogI2VuZGlmIC8qIE1TX1dJTkRPV1MgKi8KIAogLyogUmV0dXJuIGEgZGljdGlvbmFyeSBjb3JyZXNwb25kaW5nIHRvIHRoZSBQT1NJWCBlbnZpcm9ubWVudCB0YWJsZSAqLwpAQCAtNjUzLDcgKzc0NCw3IEBACiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCi13aW4zMl9lcnJvcl91bmljb2RlKGNoYXIqIGZ1bmN0aW9uLCBQeV9VTklDT0RFKiBmaWxlbmFtZSkKK3dpbjMyX2Vycm9yX3VuaWNvZGUoY2hhciogZnVuY3Rpb24sIHdjaGFyX3QqIGZpbGVuYW1lKQogewogICAgIC8qIFhYWCAtIHNlZSB3aW4zMl9lcnJvciBmb3IgY29tbWVudHMgb24gJ2Z1bmN0aW9uJyAqLwogICAgIGVycm5vID0gR2V0TGFzdEVycm9yKCk7CkBAIC02NjMsMjEgKzc1NCwxOCBAQAogICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoZXJybm8pOwogfQogCi1zdGF0aWMgaW50Ci1jb252ZXJ0X3RvX3VuaWNvZGUoUHlPYmplY3QgKipwYXJhbSkKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9lcnJvcl9vYmplY3QoY2hhciogZnVuY3Rpb24sIFB5T2JqZWN0KiBmaWxlbmFtZSkKIHsKLSAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3QoKnBhcmFtKSkKLSAgICAgICAgUHlfSU5DUkVGKCpwYXJhbSk7Ci0gICAgZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKCpwYXJhbSkpCi0gICAgICAgIC8qIEZvciBhIFVuaWNvZGUgc3VidHlwZSB0aGF0J3Mgbm90IGEgVW5pY29kZSBvYmplY3QsCi0gICAgICAgICAgIHJldHVybiBhIHRydWUgVW5pY29kZSBvYmplY3Qgd2l0aCB0aGUgc2FtZSBkYXRhLiAqLwotICAgICAgICAqcGFyYW0gPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoUHlVbmljb2RlX0FTX1VOSUNPREUoKnBhcmFtKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSgqcGFyYW0pKTsKKyAgICAvKiBYWFggLSBzZWUgd2luMzJfZXJyb3IgZm9yIGNvbW1lbnRzIG9uICdmdW5jdGlvbicgKi8KKyAgICBlcnJubyA9IEdldExhc3RFcnJvcigpOworICAgIGlmIChmaWxlbmFtZSkKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyV2l0aEZpbGVuYW1lT2JqZWN0KAorICAgICAgICAgICAgICAgICAgICBQeUV4Y19XaW5kb3dzRXJyb3IsCisgICAgICAgICAgICAgICAgICAgIGVycm5vLAorICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZSk7CiAgICAgZWxzZQotICAgICAgICAqcGFyYW0gPSBQeVVuaWNvZGVfRnJvbUVuY29kZWRPYmplY3QoKnBhcmFtLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpY3QiKTsKLSAgICByZXR1cm4gKCpwYXJhbSkgIT0gTlVMTDsKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKGVycm5vKTsKIH0KIAogI2VuZGlmIC8qIE1TX1dJTkRPV1MgKi8KQEAgLTgzNCwyMiArOTIyLDI4IEBACiAgICAgICAgICAgIGNoYXIqIHdmb3JtYXQsIEJPT0wgKF9fc3RkY2FsbCAqZnVuY1cpKExQV1NUUikpCiB7CiAgICAgUHlPYmplY3QgKnVuaTsKLSAgICBjaGFyICphbnNpOworICAgIGNvbnN0IGNoYXIgKmFuc2k7CiAgICAgQk9PTCByZXN1bHQ7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgd2Zvcm1hdCwgJnVuaSkpCi0gICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgZWxzZSB7CisgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgd2Zvcm1hdCwgJnVuaSkpCisgICAgeworICAgICAgICB3Y2hhcl90ICp3c3RyID0gUHlVbmljb2RlX0FzVW5pY29kZSh1bmkpOworICAgICAgICBpZiAod3N0ciA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgcmVzdWx0ID0gZnVuY1coUHlVbmljb2RlX0FzVW5pY29kZSh1bmkpKTsKKyAgICAgICAgcmVzdWx0ID0gZnVuY1cod3N0cik7CiAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgICAgIGlmICghcmVzdWx0KQotICAgICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX3VuaWNvZGUoZnVuYywgUHlVbmljb2RlX0FzVW5pY29kZSh1bmkpKTsKKyAgICAgICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl9vYmplY3QoZnVuYywgdW5pKTsKICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgICAgICByZXR1cm4gUHlfTm9uZTsKICAgICB9CisgICAgUHlFcnJfQ2xlYXIoKTsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBmb3JtYXQsICZhbnNpKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKHdpbjMyX3dhcm5fYnl0ZXNfYXBpKCkpCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICByZXN1bHQgPSBmdW5jQShhbnNpKTsKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwpAQCAtMTA2NCwxOCArMTE1OCwxOSBAQAogCiAvKiBHcmFiIEdldEZpbmFsUGF0aE5hbWVCeUhhbmRsZSBkeW5hbWljYWxseSBmcm9tIGtlcm5lbDMyICovCiBzdGF0aWMgaW50IGhhc19HZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGUgPSAwOwotc3RhdGljIERXT1JEIChDQUxMQkFDSyAqUHlfR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlQSkoSEFORExFLCBMUFNUUiwgRFdPUkQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEV09SRCk7CiBzdGF0aWMgRFdPUkQgKENBTExCQUNLICpQeV9HZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGVXKShIQU5ETEUsIExQV1NUUiwgRFdPUkQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEV09SRCk7CiBzdGF0aWMgaW50CiBjaGVja19HZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGUoKQogewogICAgIEhJTlNUQU5DRSBoS2VybmVsMzI7CisgICAgRFdPUkQgKENBTExCQUNLICpQeV9HZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGVBKShIQU5ETEUsIExQU1RSLCBEV09SRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERXT1JEKTsKKwogICAgIC8qIG9ubHkgcmVjaGVjayAqLwogICAgIGlmICghaGFzX0dldEZpbmFsUGF0aE5hbWVCeUhhbmRsZSkKICAgICB7Ci0gICAgICAgIGhLZXJuZWwzMiA9IEdldE1vZHVsZUhhbmRsZSgiS0VSTkVMMzIiKTsKKyAgICAgICAgaEtlcm5lbDMyID0gR2V0TW9kdWxlSGFuZGxlVyhMIktFUk5FTDMyIik7CiAgICAgICAgICooRkFSUFJPQyopJlB5X0dldEZpbmFsUGF0aE5hbWVCeUhhbmRsZUEgPSBHZXRQcm9jQWRkcmVzcyhoS2VybmVsMzIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlQSIpOwogICAgICAgICAqKEZBUlBST0MqKSZQeV9HZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGVXID0gR2V0UHJvY0FkZHJlc3MoaEtlcm5lbDMyLApAQCAtMTU0NCw5ICsxNjM5LDM5IEBACiAgICAgMTAKIH07CiAKKyNpZiBkZWZpbmVkKEhBVkVfV0FJVElEKSAmJiAhZGVmaW5lZChfX0FQUExFX18pCitQeURvY19TVFJWQVIod2FpdGlkX3Jlc3VsdF9fZG9jX18sCisid2FpdGlkX3Jlc3VsdDogUmVzdWx0IGZyb20gd2FpdGlkLlxuXG5cCitUaGlzIG9iamVjdCBtYXkgYmUgYWNjZXNzZWQgZWl0aGVyIGFzIGEgdHVwbGUgb2ZcblwKKyAgKHNpX3BpZCwgc2lfdWlkLCBzaV9zaWdubywgc2lfc3RhdHVzLCBzaV9jb2RlKSxcblwKK29yIHZpYSB0aGUgYXR0cmlidXRlcyBzaV9waWQsIHNpX3VpZCwgYW5kIHNvIG9uLlxuXAorXG5cCitTZWUgb3Mud2FpdGlkIGZvciBtb3JlIGluZm9ybWF0aW9uLiIpOworCitzdGF0aWMgUHlTdHJ1Y3RTZXF1ZW5jZV9GaWVsZCB3YWl0aWRfcmVzdWx0X2ZpZWxkc1tdID0geworICAgIHsic2lfcGlkIiwgIH0sCisgICAgeyJzaV91aWQiLCB9LAorICAgIHsic2lfc2lnbm8iLCB9LAorICAgIHsic2lfc3RhdHVzIiwgIH0sCisgICAgeyJzaV9jb2RlIiwgfSwKKyAgICB7MH0KK307CisKK3N0YXRpYyBQeVN0cnVjdFNlcXVlbmNlX0Rlc2Mgd2FpdGlkX3Jlc3VsdF9kZXNjID0geworICAgICJ3YWl0aWRfcmVzdWx0IiwgLyogbmFtZSAqLworICAgIHdhaXRpZF9yZXN1bHRfX2RvY19fLCAvKiBkb2MgKi8KKyAgICB3YWl0aWRfcmVzdWx0X2ZpZWxkcywKKyAgICA1Cit9Oworc3RhdGljIFB5VHlwZU9iamVjdCBXYWl0aWRSZXN1bHRUeXBlOworI2VuZGlmCisKIHN0YXRpYyBpbnQgaW5pdGlhbGl6ZWQ7CiBzdGF0aWMgUHlUeXBlT2JqZWN0IFN0YXRSZXN1bHRUeXBlOwogc3RhdGljIFB5VHlwZU9iamVjdCBTdGF0VkZTUmVzdWx0VHlwZTsKKyNpZiBkZWZpbmVkKEhBVkVfU0NIRURfU0VUUEFSQU0pIHx8IGRlZmluZWQoSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIpCitzdGF0aWMgUHlUeXBlT2JqZWN0IFNjaGVkUGFyYW1UeXBlOworI2VuZGlmCiBzdGF0aWMgbmV3ZnVuYyBzdHJ1Y3RzZXFfbmV3OwogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMTcyNyw3ICsxODUyLDcgQEAKICAgICAgICAgICAgICAgaW50ICgqc3RhdGZ1bmMpKGNvbnN0IGNoYXIgKiwgU1RSVUNUX1NUQVQgKiksCiAjZW5kaWYKICAgICAgICAgICAgICAgY2hhciAqd2Zvcm1hdCwKLSAgICAgICAgICAgICAgaW50ICgqd3N0YXRmdW5jKShjb25zdCBQeV9VTklDT0RFICosIFNUUlVDVF9TVEFUICopKQorICAgICAgICAgICAgICBpbnQgKCp3c3RhdGZ1bmMpKGNvbnN0IHdjaGFyX3QgKiwgU1RSVUNUX1NUQVQgKikpCiB7CiAgICAgU1RSVUNUX1NUQVQgc3Q7CiAgICAgUHlPYmplY3QgKm9wYXRoOwpAQCAtMTczNiwxOCArMTg2MSwxOCBAQAogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAKICNpZmRlZiBNU19XSU5ET1dTCi0gICAgUHlVbmljb2RlT2JqZWN0ICpwbzsKKyAgICBQeU9iamVjdCAqcG87CiAgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgd2Zvcm1hdCwgJnBvKSkgewotICAgICAgICBQeV9VTklDT0RFICp3cGF0aCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHBvKTsKKyAgICAgICAgd2NoYXJfdCAqd3BhdGggPSBQeVVuaWNvZGVfQXNVbmljb2RlKHBvKTsKKyAgICAgICAgaWYgKHdwYXRoID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgICAgICAvKiBQeVVuaWNvZGVfQVNfVU5JQ09ERSByZXN1bHQgT0sgd2l0aG91dAotICAgICAgICAgICAgICAgdGhyZWFkIGxvY2sgYXMgaXQgaXMgYSBzaW1wbGUgZGVyZWZlcmVuY2UuICovCiAgICAgICAgIHJlcyA9IHdzdGF0ZnVuYyh3cGF0aCwgJnN0KTsKICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKIAogICAgICAgICBpZiAocmVzICE9IDApCi0gICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3JfdW5pY29kZSgic3RhdCIsIHdwYXRoKTsKKyAgICAgICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl9vYmplY3QoInN0YXQiLCBwbyk7CiAgICAgICAgIHJldHVybiBfcHlzdGF0X2Zyb21zdHJ1Y3RzdGF0KCZzdCk7CiAgICAgfQogICAgIC8qIERyb3AgdGhlIGFyZ3VtZW50IHBhcnNpbmcgZXJyb3IgYXMgbmFycm93IHN0cmluZ3MKQEAgLTE3NTgsNiArMTg4MywxMiBAQAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBmb3JtYXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CisjaWZkZWYgTVNfV0lORE9XUworICAgIGlmICh3aW4zMl93YXJuX2J5dGVzX2FwaSgpKSB7CisgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyNlbmRpZgogICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgcmVzID0gKCpzdGF0ZnVuYykocGF0aCwgJnN0KTsKQEAgLTE3OTAsMzIgKzE5MjEsMzEgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBwb3NpeF9hY2Nlc3MoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5T2JqZWN0ICpvcGF0aDsKLSAgICBjaGFyICpwYXRoOworICAgIGNvbnN0IGNoYXIgKnBhdGg7CiAgICAgaW50IG1vZGU7CiAKICNpZmRlZiBNU19XSU5ET1dTCiAgICAgRFdPUkQgYXR0cjsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnBvOworICAgIFB5T2JqZWN0ICpwbzsKICAgICBpZiAoUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVWk6YWNjZXNzIiwgJnBvLCAmbW9kZSkpIHsKKyAgICAgICAgd2NoYXJfdCogd3BhdGggPSBQeVVuaWNvZGVfQXNVbmljb2RlKHBvKTsKKyAgICAgICAgaWYgKHdwYXRoID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICAvKiBQeVVuaWNvZGVfQVNfVU5JQ09ERSBPSyB3aXRob3V0IHRocmVhZCBsb2NrIGFzCi0gICAgICAgICAgIGl0IGlzIGEgc2ltcGxlIGRlcmVmZXJlbmNlLiAqLwotICAgICAgICBhdHRyID0gR2V0RmlsZUF0dHJpYnV0ZXNXKFB5VW5pY29kZV9BU19VTklDT0RFKHBvKSk7CisgICAgICAgIGF0dHIgPSBHZXRGaWxlQXR0cmlidXRlc1cod3BhdGgpOwogICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgICAgICBnb3RvIGZpbmlzaDsKICAgICB9CiAgICAgLyogRHJvcCB0aGUgYXJndW1lbnQgcGFyc2luZyBlcnJvciBhcyBuYXJyb3cgc3RyaW5ncwogICAgICAgIGFyZSBhbHNvIHZhbGlkLiAqLwogICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJmk6YWNjZXNzIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsICZtb2RlKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInlpOmFjY2VzcyIsICZwYXRoLCAmbW9kZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIGF0dHIgPSBHZXRGaWxlQXR0cmlidXRlc0EocGF0aCk7CiAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICBQeV9ERUNSRUYob3BhdGgpOwogZmluaXNoOgogICAgIGlmIChhdHRyID09IDB4RkZGRkZGRkYpCiAgICAgICAgIC8qIEZpbGUgZG9lcyBub3QgZXhpc3QsIG9yIGNhbm5vdCByZWFkIGF0dHJpYnV0ZXMgKi8KQEAgLTE4MjcsNiArMTk1Nyw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICB8fCAhKGF0dHIgJiBGSUxFX0FUVFJJQlVURV9SRUFET05MWSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IChhdHRyICYgRklMRV9BVFRSSUJVVEVfRElSRUNUT1JZKSk7CiAjZWxzZQorICAgIFB5T2JqZWN0ICpvcGF0aDsKICAgICBpbnQgcmVzOwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZpOmFjY2VzcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmbW9kZSkpCkBAIC0xOTQ2LDI4ICsyMDc3LDMwIEBACiBwb3NpeF9jaG1vZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKm9wYXRoID0gTlVMTDsKLSAgICBjaGFyICpwYXRoID0gTlVMTDsKKyAgICBjb25zdCBjaGFyICpwYXRoID0gTlVMTDsKICAgICBpbnQgaTsKICAgICBpbnQgcmVzOwogI2lmZGVmIE1TX1dJTkRPV1MKICAgICBEV09SRCBhdHRyOwotICAgIFB5VW5pY29kZU9iamVjdCAqcG87CisgICAgUHlPYmplY3QgKnBvOwogICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVaXw6Y2htb2QiLCAmcG8sICZpKSkgeworICAgICAgICB3Y2hhcl90ICp3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocG8pOworICAgICAgICBpZiAod3BhdGggPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIGF0dHIgPSBHZXRGaWxlQXR0cmlidXRlc1coUHlVbmljb2RlX0FTX1VOSUNPREUocG8pKTsKKyAgICAgICAgYXR0ciA9IEdldEZpbGVBdHRyaWJ1dGVzVyh3cGF0aCk7CiAgICAgICAgIGlmIChhdHRyICE9IDB4RkZGRkZGRkYpIHsKICAgICAgICAgICAgIGlmIChpICYgX1NfSVdSSVRFKQogICAgICAgICAgICAgICAgIGF0dHIgJj0gfkZJTEVfQVRUUklCVVRFX1JFQURPTkxZOwogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIGF0dHIgfD0gRklMRV9BVFRSSUJVVEVfUkVBRE9OTFk7Ci0gICAgICAgICAgICByZXMgPSBTZXRGaWxlQXR0cmlidXRlc1coUHlVbmljb2RlX0FTX1VOSUNPREUocG8pLCBhdHRyKTsKKyAgICAgICAgICAgIHJlcyA9IFNldEZpbGVBdHRyaWJ1dGVzVyh3cGF0aCwgYXR0cik7CiAgICAgICAgIH0KICAgICAgICAgZWxzZQogICAgICAgICAgICAgcmVzID0gMDsKICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKICAgICAgICAgaWYgKCFyZXMpCi0gICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3JfdW5pY29kZSgiY2htb2QiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUocG8pKTsKKyAgICAgICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl9vYmplY3QoImNobW9kIiwgcG8pOwogICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgICAgIHJldHVybiBQeV9Ob25lOwogICAgIH0KQEAgLTE5NzUsMTAgKzIxMDgsMTAgQEAKICAgICAgICBhcmUgYWxzbyB2YWxpZC4gKi8KICAgICBQeUVycl9DbGVhcigpOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJmk6Y2htb2QiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZvcGF0aCwgJmkpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieWk6Y2htb2QiLCAmcGF0aCwgJmkpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisgICAgaWYgKHdpbjMyX3dhcm5fYnl0ZXNfYXBpKCkpCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICBhdHRyID0gR2V0RmlsZUF0dHJpYnV0ZXNBKHBhdGgpOwogICAgIGlmIChhdHRyICE9IDB4RkZGRkZGRkYpIHsKQEAgLTE5OTMsMTAgKzIxMjYsOCBAQAogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgaWYgKCFyZXMpIHsKICAgICAgICAgd2luMzJfZXJyb3IoImNobW9kIiwgcGF0aCk7Ci0gICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBQeV9ERUNSRUYob3BhdGgpOwogICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICByZXR1cm4gUHlfTm9uZTsKICNlbHNlIC8qIE1TX1dJTkRPV1MgKi8KQEAgLTIxNDMsNiArMjI3NCwyMSBAQAogfQogI2VuZGlmIC8qIEhBVkVfRlNZTkMgKi8KIAorI2lmZGVmIEhBVkVfU1lOQworUHlEb2NfU1RSVkFSKHBvc2l4X3N5bmNfX2RvY19fLAorInN5bmMoKVxuXG5cCitGb3JjZSB3cml0ZSBvZiBldmVyeXRoaW5nIHRvIGRpc2suIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zeW5jKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqbm9hcmdzKQoreworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICBzeW5jKCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9GREFUQVNZTkMKIAogI2lmZGVmIF9faHB1eApAQCAtMjI3OSw2ICsyNDI1LDkgQEAKICAgICAgICAgaWYgKHdidWYyICE9IHdidWYpIGZyZWUod2J1ZjIpOwogICAgICAgICByZXR1cm4gcmVzb2JqOwogICAgIH0KKworICAgIGlmICh3aW4zMl93YXJuX2J5dGVzX2FwaSgpKQorICAgICAgICByZXR1cm4gTlVMTDsKICNlbmRpZgogCiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwpAQCAtMjMzNyw0MyArMjQ4Niw1NiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHdpbjMyX2xpbmsoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5T2JqZWN0ICpvc3JjLCAqb2RzdDsKLSAgICBjaGFyICpzcmMsICpkc3Q7Ci0gICAgQk9PTCByc2x0OworICAgIFB5T2JqZWN0ICpzcmMsICpkc3Q7CisgICAgQk9PTCBvazsKIAotICAgIFB5VW5pY29kZU9iamVjdCAqdXNyYywgKnVkc3Q7Ci0gICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVVOmxpbmsiLCAmdXNyYywgJnVkc3QpKSB7CisgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVVOmxpbmsiLCAmc3JjLCAmZHN0KSkKKyAgICB7CisgICAgICAgIHdjaGFyX3QgKndzcmMsICp3ZHN0OworCisgICAgICAgIHdzcmMgPSBQeVVuaWNvZGVfQXNVbmljb2RlKHNyYyk7CisgICAgICAgIGlmICh3c3JjID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB3ZHN0ID0gUHlVbmljb2RlX0FzVW5pY29kZShkc3QpOworICAgICAgICBpZiAod2RzdCA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKwogICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIHJzbHQgPSBDcmVhdGVIYXJkTGlua1coUHlVbmljb2RlX0FTX1VOSUNPREUodWRzdCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUodXNyYyksIE5VTEwpOworICAgICAgICBvayA9IENyZWF0ZUhhcmRMaW5rVyh3ZHN0LCB3c3JjLCBOVUxMKTsKICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKIAotICAgICAgICBpZiAocnNsdCA9PSAwKQorICAgICAgICBpZiAoIW9rKQogICAgICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yKCJsaW5rIiwgTlVMTCk7Ci0KICAgICAgICAgUHlfUkVUVVJOX05PTkU7CiAgICAgfQorICAgIGVsc2UgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6bGluayIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZzcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZkc3QpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICAvKiBOYXJyb3cgc3RyaW5ncyBhbHNvIHZhbGlkLiAqLwotICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIGlmICh3aW4zMl93YXJuX2J5dGVzX2FwaSgpKQorICAgICAgICAgICAgZ290byBlcnJvcjsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZPJjpsaW5rIiwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3NyYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb2RzdCkpCisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgb2sgPSBDcmVhdGVIYXJkTGlua0EoUHlCeXRlc19BU19TVFJJTkcoZHN0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc3JjKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICAgICAgUHlfWERFQ1JFRihzcmMpOworICAgICAgICBQeV9YREVDUkVGKGRzdCk7CisKKyAgICAgICAgaWYgKCFvaykKKyAgICAgICAgICAgIHJldHVybiB3aW4zMl9lcnJvcigibGluayIsIE5VTEwpOworICAgICAgICBQeV9SRVRVUk5fTk9ORTsKKworICAgIGVycm9yOgorICAgICAgICBQeV9YREVDUkVGKHNyYyk7CisgICAgICAgIFB5X1hERUNSRUYoZHN0KTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICBzcmMgPSBQeUJ5dGVzX0FzU3RyaW5nKG9zcmMpOwotICAgIGRzdCA9IFB5Qnl0ZXNfQXNTdHJpbmcob2RzdCk7Ci0KLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcnNsdCA9IENyZWF0ZUhhcmRMaW5rQShkc3QsIHNyYywgTlVMTCk7Ci0gICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLQotICAgIFB5X0RFQ1JFRihvc3JjKTsKLSAgICBQeV9ERUNSRUYob2RzdCk7Ci0gICAgaWYgKHJzbHQgPT0gMCkKLSAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yKCJsaW5rIiwgTlVMTCk7Ci0KLSAgICBQeV9SRVRVUk5fTk9ORTsKKyAgICB9CiB9CiAjZW5kaWYgLyogTVNfV0lORE9XUyAqLwogCkBAIC0yMzk4LDcgKzI1NjAsOCBAQAogICAgIEhBTkRMRSBoRmluZEZpbGU7CiAgICAgQk9PTCByZXN1bHQ7CiAgICAgV0lOMzJfRklORF9EQVRBIEZpbGVEYXRhOwotICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBjb25zdCBjaGFyICpwYXRoOworICAgIFB5X3NzaXplX3QgcGF0aGxlbjsKICAgICBjaGFyIG5hbWVidWZbTUFYX1BBVEgrNV07IC8qIE92ZXJhbGxvY2F0ZSBmb3IgXFwqLipcMCAqLwogICAgIGNoYXIgKmJ1ZnB0ciA9IG5hbWVidWY7CiAgICAgUHlfc3NpemVfdCBsZW4gPSBzaXplb2YobmFtZWJ1ZiktNTsgLyogb25seSBjbGFpbSB0byBoYXZlIHNwYWNlIGZvciBNQVhfUEFUSCAqLwpAQCAtMjQwNiwxNCArMjU2OSwxNSBAQAogICAgIFB5T2JqZWN0ICpwbyA9IE5VTEw7CiAgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxVOmxpc3RkaXIiLCAmcG8pKSB7CiAgICAgICAgIFdJTjMyX0ZJTkRfREFUQVcgd0ZpbGVEYXRhOwotICAgICAgICBQeV9VTklDT0RFICp3bmFtZWJ1ZiwgKnBvX3djaGFyczsKKyAgICAgICAgd2NoYXJfdCAqd25hbWVidWYsICpwb193Y2hhcnM7CiAKICAgICAgICAgaWYgKHBvID09IE5VTEwpIHsgLyogRGVmYXVsdCBhcmc6ICIuIiAqLwogICAgICAgICAgICAgcG9fd2NoYXJzID0gTCIuIjsKICAgICAgICAgICAgIGxlbiA9IDE7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBwb193Y2hhcnMgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShwbyk7Ci0gICAgICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUocG8pOworICAgICAgICAgICAgcG9fd2NoYXJzID0gUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUocG8sICZsZW4pOworICAgICAgICAgICAgaWYgKHBvX3djaGFycyA9PSBOVUxMKQorICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAgICAgICAgIC8qIE92ZXJhbGxvY2F0ZSBmb3IgXFwqLipcMCAqLwogICAgICAgICB3bmFtZWJ1ZiA9IG1hbGxvYygobGVuICsgNSkgKiBzaXplb2Yod2NoYXJfdCkpOwpAQCAtMjQyMyw3ICsyNTg3LDcgQEAKICAgICAgICAgfQogICAgICAgICB3Y3NjcHkod25hbWVidWYsIHBvX3djaGFycyk7CiAgICAgICAgIGlmIChsZW4gPiAwKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIHdjaCA9IHduYW1lYnVmW2xlbi0xXTsKKyAgICAgICAgICAgIHdjaGFyX3Qgd2NoID0gd25hbWVidWZbbGVuLTFdOwogICAgICAgICAgICAgaWYgKHdjaCAhPSBMJy8nICYmIHdjaCAhPSBMJ1xcJyAmJiB3Y2ggIT0gTCc6JykKICAgICAgICAgICAgICAgICB3bmFtZWJ1ZltsZW4rK10gPSBMJ1xcJzsKICAgICAgICAgICAgIHdjc2NweSh3bmFtZWJ1ZiArIGxlbiwgTCIqLioiKTsKQEAgLTI0NTAsNyArMjYxNCw3IEBACiAgICAgICAgICAgICAvKiBTa2lwIG92ZXIgLiBhbmQgLi4gKi8KICAgICAgICAgICAgIGlmICh3Y3NjbXAod0ZpbGVEYXRhLmNGaWxlTmFtZSwgTCIuIikgIT0gMCAmJgogICAgICAgICAgICAgICAgIHdjc2NtcCh3RmlsZURhdGEuY0ZpbGVOYW1lLCBMIi4uIikgIT0gMCkgewotICAgICAgICAgICAgICAgIHYgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUod0ZpbGVEYXRhLmNGaWxlTmFtZSwgd2NzbGVuKHdGaWxlRGF0YS5jRmlsZU5hbWUpKTsKKyAgICAgICAgICAgICAgICB2ID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcih3RmlsZURhdGEuY0ZpbGVOYW1lLCB3Y3NsZW4od0ZpbGVEYXRhLmNGaWxlTmFtZSkpOwogICAgICAgICAgICAgICAgIGlmICh2ID09IE5VTEwpIHsKICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGQpOwogICAgICAgICAgICAgICAgICAgICBkID0gTlVMTDsKQEAgLTI0OTEsMTcgKzI2NTUsMTYgQEAKICAgICAgICBhcmUgYWxzbyB2YWxpZC4gKi8KICAgICBQeUVycl9DbGVhcigpOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJjpsaXN0ZGlyIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieSM6bGlzdGRpciIsICZwYXRoLCAmcGF0aGxlbikpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmIChQeUJ5dGVzX0dFVF9TSVpFKG9wYXRoKSsxID4gTUFYX1BBVEgpIHsKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKHBhdGhsZW4rMSA+IE1BWF9QQVRIKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAicGF0aCB0b28gbG9uZyIpOwotICAgICAgICBQeV9ERUNSRUYob3BhdGgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgc3RyY3B5KG5hbWVidWYsIFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpKTsKLSAgICBsZW4gPSBQeU9iamVjdF9TaXplKG9wYXRoKTsKLSAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIHN0cmNweShuYW1lYnVmLCBwYXRoKTsKKyAgICBsZW4gPSBwYXRobGVuOwogICAgIGlmIChsZW4gPiAwKSB7CiAgICAgICAgIGNoYXIgY2ggPSBuYW1lYnVmW2xlbi0xXTsKICAgICAgICAgaWYgKGNoICE9IFNFUCAmJiBjaCAhPSBBTFRTRVAgJiYgY2ggIT0gJzonKQpAQCAtMjcxOCwzNiArMjg4MSwxMTUgQEAKICNlbmRpZiAvKiB3aGljaCBPUyAqLwogfSAgLyogZW5kIG9mIHBvc2l4X2xpc3RkaXIgKi8KIAorI2lmZGVmIEhBVkVfRkRPUEVORElSCitQeURvY19TVFJWQVIocG9zaXhfZmxpc3RkaXJfX2RvY19fLAorImZsaXN0ZGlyKGZkKSAtPiBsaXN0X29mX3N0cmluZ3NcblxuXAorTGlrZSBsaXN0ZGlyKCksIGJ1dCB1c2VzIGEgZmlsZSBkZXNjcmlwdG9yIGluc3RlYWQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mbGlzdGRpcihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKmQsICp2OworICAgIERJUiAqZGlycDsKKyAgICBzdHJ1Y3QgZGlyZW50ICplcDsKKyAgICBpbnQgZmQ7CisKKyAgICBlcnJubyA9IDA7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpOmZsaXN0ZGlyIiwgJmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgLyogY2xvc2VkaXIoKSBjbG9zZXMgdGhlIEZELCBzbyB3ZSBkdXBsaWNhdGUgaXQgKi8KKyAgICBmZCA9IGR1cChmZCk7CisgICAgaWYgKGZkIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIGRpcnAgPSBmZG9wZW5kaXIoZmQpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgaWYgKGRpcnAgPT0gTlVMTCkgeworICAgICAgICBjbG9zZShmZCk7CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKyAgICBpZiAoKGQgPSBQeUxpc3RfTmV3KDApKSA9PSBOVUxMKSB7CisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgY2xvc2VkaXIoZGlycCk7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBmb3IgKDs7KSB7CisgICAgICAgIGVycm5vID0gMDsKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICBlcCA9IHJlYWRkaXIoZGlycCk7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgICAgIGlmIChlcCA9PSBOVUxMKSB7CisgICAgICAgICAgICBpZiAoZXJybm8gPT0gMCkgeworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgICAgICAgICAgcmV3aW5kZGlyKGRpcnApOworICAgICAgICAgICAgICAgIGNsb3NlZGlyKGRpcnApOworICAgICAgICAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgICAgICAgICAgICAgUHlfREVDUkVGKGQpOworICAgICAgICAgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmIChlcC0+ZF9uYW1lWzBdID09ICcuJyAmJgorICAgICAgICAgICAgKE5BTUxFTihlcCkgPT0gMSB8fAorICAgICAgICAgICAgIChlcC0+ZF9uYW1lWzFdID09ICcuJyAmJiBOQU1MRU4oZXApID09IDIpKSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB2ID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUoZXAtPmRfbmFtZSwgTkFNTEVOKGVwKSk7CisgICAgICAgIGlmICh2ID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5X0NMRUFSKGQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQoZCwgdikgIT0gMCkgeworICAgICAgICAgICAgUHlfREVDUkVGKHYpOworICAgICAgICAgICAgUHlfQ0xFQVIoZCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYodik7CisgICAgfQorICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXdpbmRkaXIoZGlycCk7CisgICAgY2xvc2VkaXIoZGlycCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKworICAgIHJldHVybiBkOworfQorI2VuZGlmCisKICNpZmRlZiBNU19XSU5ET1dTCiAvKiBBIGhlbHBlciBmdW5jdGlvbiBmb3IgYWJzcGF0aCBvbiB3aW4zMiAqLwogc3RhdGljIFB5T2JqZWN0ICoKIHBvc2l4X19nZXRmdWxscGF0aG5hbWUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5T2JqZWN0ICpvcGF0aDsKLSAgICBjaGFyICpwYXRoOworICAgIGNvbnN0IGNoYXIgKnBhdGg7CiAgICAgY2hhciBvdXRidWZbTUFYX1BBVEgqMl07CiAgICAgY2hhciAqdGVtcDsKLSNpZmRlZiBNU19XSU5ET1dTCi0gICAgUHlVbmljb2RlT2JqZWN0ICpwbzsKLSAgICBpZiAoUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVXw6X2dldGZ1bGxwYXRobmFtZSIsICZwbykpIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqd3BhdGggPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShwbyk7Ci0gICAgICAgIFB5X1VOSUNPREUgd291dGJ1ZltNQVhfUEFUSCoyXSwgKndvdXRidWZwID0gd291dGJ1ZjsKLSAgICAgICAgUHlfVU5JQ09ERSAqd3RlbXA7CisgICAgUHlPYmplY3QgKnBvOworCisgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlV8Ol9nZXRmdWxscGF0aG5hbWUiLCAmcG8pKQorICAgIHsKKyAgICAgICAgd2NoYXJfdCAqd3BhdGg7CisgICAgICAgIHdjaGFyX3Qgd291dGJ1ZltNQVhfUEFUSCoyXSwgKndvdXRidWZwID0gd291dGJ1ZjsKKyAgICAgICAgd2NoYXJfdCAqd3RlbXA7CiAgICAgICAgIERXT1JEIHJlc3VsdDsKICAgICAgICAgUHlPYmplY3QgKnY7CisKKyAgICAgICAgd3BhdGggPSBQeVVuaWNvZGVfQXNVbmljb2RlKHBvKTsKKyAgICAgICAgaWYgKHdwYXRoID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgcmVzdWx0ID0gR2V0RnVsbFBhdGhOYW1lVyh3cGF0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yod291dGJ1Zikvc2l6ZW9mKHdvdXRidWZbMF0pLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X0FSUkFZX0xFTkdUSCh3b3V0YnVmKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3b3V0YnVmLCAmd3RlbXApOwotICAgICAgICBpZiAocmVzdWx0ID4gc2l6ZW9mKHdvdXRidWYpL3NpemVvZih3b3V0YnVmWzBdKSkgewotICAgICAgICAgICAgd291dGJ1ZnAgPSBtYWxsb2MocmVzdWx0ICogc2l6ZW9mKFB5X1VOSUNPREUpKTsKKyAgICAgICAgaWYgKHJlc3VsdCA+IFB5X0FSUkFZX0xFTkdUSCh3b3V0YnVmKSkgeworICAgICAgICAgICAgd291dGJ1ZnAgPSBtYWxsb2MocmVzdWx0ICogc2l6ZW9mKHdjaGFyX3QpKTsKICAgICAgICAgICAgIGlmICghd291dGJ1ZnApCiAgICAgICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgICAgICByZXN1bHQgPSBHZXRGdWxsUGF0aE5hbWVXKHdwYXRoLCByZXN1bHQsIHdvdXRidWZwLCAmd3RlbXApOwogICAgICAgICB9CiAgICAgICAgIGlmIChyZXN1bHQpCi0gICAgICAgICAgICB2ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHdvdXRidWZwLCB3Y3NsZW4od291dGJ1ZnApKTsKKyAgICAgICAgICAgIHYgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHdvdXRidWZwLCB3Y3NsZW4od291dGJ1ZnApKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgdiA9IHdpbjMyX2Vycm9yX3VuaWNvZGUoIkdldEZ1bGxQYXRoTmFtZVciLCB3cGF0aCk7CisgICAgICAgICAgICB2ID0gd2luMzJfZXJyb3Jfb2JqZWN0KCJHZXRGdWxsUGF0aE5hbWVXIiwgcG8pOwogICAgICAgICBpZiAod291dGJ1ZnAgIT0gd291dGJ1ZikKICAgICAgICAgICAgIGZyZWUod291dGJ1ZnApOwogICAgICAgICByZXR1cm4gdjsKQEAgLTI3NTYsMTggKzI5OTgsMTYgQEAKICAgICAgICBhcmUgYWxzbyB2YWxpZC4gKi8KICAgICBQeUVycl9DbGVhcigpOwogCi0jZW5kaWYKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUgKGFyZ3MsICJPJjpfZ2V0ZnVsbHBhdGhuYW1lIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUgKGFyZ3MsICJ5Ol9nZXRmdWxscGF0aG5hbWUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBhdGgpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7Ci0gICAgaWYgKCFHZXRGdWxsUGF0aE5hbWUocGF0aCwgc2l6ZW9mKG91dGJ1Zikvc2l6ZW9mKG91dGJ1ZlswXSksCisgICAgaWYgKHdpbjMyX3dhcm5fYnl0ZXNfYXBpKCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICghR2V0RnVsbFBhdGhOYW1lKHBhdGgsIFB5X0FSUkFZX0xFTkdUSChvdXRidWYpLAogICAgICAgICAgICAgICAgICAgICAgICAgIG91dGJ1ZiwgJnRlbXApKSB7CiAgICAgICAgIHdpbjMyX2Vycm9yKCJHZXRGdWxsUGF0aE5hbWUiLCBwYXRoKTsKLSAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIFB5X0RFQ1JFRihvcGF0aCk7CiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhQeVR1cGxlX0dldEl0ZW0oYXJncywgMCkpKSB7CiAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlKG91dGJ1Ziwgc3RybGVuKG91dGJ1ZiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcsIE5VTEwpOwpAQCAtMjc4NSwxMiArMzAyNSwxNCBAQAogICAgIGludCBidWZfc2l6ZTsKICAgICB3Y2hhcl90ICp0YXJnZXRfcGF0aDsKICAgICBpbnQgcmVzdWx0X2xlbmd0aDsKLSAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICpwbywgKnJlc3VsdDsKICAgICB3Y2hhcl90ICpwYXRoOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ1fDpfZ2V0ZmluYWxwYXRobmFtZSIsICZwYXRoKSkgeworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVXw6X2dldGZpbmFscGF0aG5hbWUiLCAmcG8pKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CisgICAgcGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocG8pOworICAgIGlmIChwYXRoID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYoIWNoZWNrX0dldEZpbmFsUGF0aE5hbWVCeUhhbmRsZSgpKSB7CiAgICAgICAgIC8qIElmIHRoZSBPUyBkb2Vzbid0IGhhdmUgR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlLCByZXR1cm4gYQpAQCAtMjgwOSwxOCArMzA1MSwxNSBAQAogICAgICAgICBGSUxFX0ZMQUdfQkFDS1VQX1NFTUFOVElDUywKICAgICAgICAgTlVMTCk7CiAKLSAgICBpZihoRmlsZSA9PSBJTlZBTElEX0hBTkRMRV9WQUxVRSkgewotICAgICAgICByZXR1cm4gd2luMzJfZXJyb3JfdW5pY29kZSgiR2V0RmluYWxQYXRoTmFteUJ5SGFuZGxlIiwgcGF0aCk7Ci0gICAgICAgIHJldHVybiBQeUVycl9Gb3JtYXQoUHlFeGNfUnVudGltZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJDb3VsZCBub3QgZ2V0IGEgaGFuZGxlIHRvIGZpbGUuIik7Ci0gICAgfQorICAgIGlmKGhGaWxlID09IElOVkFMSURfSEFORExFX1ZBTFVFKQorICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJDcmVhdGVGaWxlVyIsIHBvKTsKIAogICAgIC8qIFdlIGhhdmUgYSBnb29kIGhhbmRsZSB0byB0aGUgdGFyZ2V0LCB1c2UgaXQgdG8gZGV0ZXJtaW5lIHRoZQogICAgICAgIHRhcmdldCBwYXRoIG5hbWUuICovCiAgICAgYnVmX3NpemUgPSBQeV9HZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGVXKGhGaWxlLCAwLCAwLCBWT0xVTUVfTkFNRV9OVCk7CiAKICAgICBpZighYnVmX3NpemUpCi0gICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl91bmljb2RlKCJHZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGUiLCBwYXRoKTsKKyAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX29iamVjdCgiR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlIiwgcG8pOwogCiAgICAgdGFyZ2V0X3BhdGggPSAod2NoYXJfdCAqKW1hbGxvYygoYnVmX3NpemUrMSkqc2l6ZW9mKHdjaGFyX3QpKTsKICAgICBpZighdGFyZ2V0X3BhdGgpCkBAIC0yODI5LDEzICszMDY4LDEzIEBACiAgICAgcmVzdWx0X2xlbmd0aCA9IFB5X0dldEZpbmFsUGF0aE5hbWVCeUhhbmRsZVcoaEZpbGUsIHRhcmdldF9wYXRoLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1Zl9zaXplLCBWT0xVTUVfTkFNRV9ET1MpOwogICAgIGlmKCFyZXN1bHRfbGVuZ3RoKQotICAgICAgICByZXR1cm4gd2luMzJfZXJyb3JfdW5pY29kZSgiR2V0RmluYWxQYXRoTmFteUJ5SGFuZGxlIiwgcGF0aCk7CisgICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl9vYmplY3QoIkdldEZpbmFsUGF0aE5hbXlCeUhhbmRsZSIsIHBvKTsKIAogICAgIGlmKCFDbG9zZUhhbmRsZShoRmlsZSkpCi0gICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl91bmljb2RlKCJHZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGUiLCBwYXRoKTsKKyAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX29iamVjdCgiQ2xvc2VIYW5kbGUiLCBwbyk7CiAKICAgICB0YXJnZXRfcGF0aFtyZXN1bHRfbGVuZ3RoXSA9IDA7Ci0gICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHRhcmdldF9wYXRoLCByZXN1bHRfbGVuZ3RoKTsKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHRhcmdldF9wYXRoLCByZXN1bHRfbGVuZ3RoKTsKICAgICBmcmVlKHRhcmdldF9wYXRoKTsKICAgICByZXR1cm4gcmVzdWx0OwogCkBAIC0yODcyLDEzICszMTExLDE0IEBACiBzdGF0aWMgUHlPYmplY3QgKgogcG9zaXhfX2lzZGlyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeU9iamVjdCAqb3BhdGg7Ci0gICAgY2hhciAqcGF0aDsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnBvOworICAgIGNvbnN0IGNoYXIgKnBhdGg7CisgICAgUHlPYmplY3QgKnBvOwogICAgIERXT1JEIGF0dHJpYnV0ZXM7CiAKICAgICBpZiAoUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVXw6X2lzZGlyIiwgJnBvKSkgewotICAgICAgICBQeV9VTklDT0RFICp3cGF0aCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHBvKTsKKyAgICAgICAgd2NoYXJfdCAqd3BhdGggPSBQeVVuaWNvZGVfQXNVbmljb2RlKHBvKTsKKyAgICAgICAgaWYgKHdwYXRoID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgICAgICBhdHRyaWJ1dGVzID0gR2V0RmlsZUF0dHJpYnV0ZXNXKHdwYXRoKTsKICAgICAgICAgaWYgKGF0dHJpYnV0ZXMgPT0gSU5WQUxJRF9GSUxFX0FUVFJJQlVURVMpCkBAIC0yODg5LDExICszMTI5LDEwIEBACiAgICAgICAgYXJlIGFsc28gdmFsaWQuICovCiAgICAgUHlFcnJfQ2xlYXIoKTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6X2lzZGlyIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieTpfaXNkaXIiLCAmcGF0aCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOworICAgIGlmICh3aW4zMl93YXJuX2J5dGVzX2FwaSgpKQorICAgICAgICByZXR1cm4gTlVMTDsKICAgICBhdHRyaWJ1dGVzID0gR2V0RmlsZUF0dHJpYnV0ZXNBKHBhdGgpOwogICAgIGlmIChhdHRyaWJ1dGVzID09IElOVkFMSURfRklMRV9BVFRSSUJVVEVTKQogICAgICAgICBQeV9SRVRVUk5fRkFMU0U7CkBAIC0yOTE0LDQ0ICszMTUzLDQzIEBACiBwb3NpeF9ta2RpcihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgaW50IHJlczsKLSAgICBQeU9iamVjdCAqb3BhdGg7Ci0gICAgY2hhciAqcGF0aDsKKyAgICBjb25zdCBjaGFyICpwYXRoOwogICAgIGludCBtb2RlID0gMDc3NzsKIAogI2lmZGVmIE1TX1dJTkRPV1MKLSAgICBQeVVuaWNvZGVPYmplY3QgKnBvOwotICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVfGk6bWtkaXIiLCAmcG8sICZtb2RlKSkgeworICAgIFB5T2JqZWN0ICpwbzsKKyAgICBpZiAoUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVXxpOm1rZGlyIiwgJnBvLCAmbW9kZSkpCisgICAgeworICAgICAgICB3Y2hhcl90ICp3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocG8pOworICAgICAgICBpZiAod3BhdGggPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgLyogUHlVbmljb2RlX0FTX1VOSUNPREUgT0sgd2l0aG91dCB0aHJlYWQgbG9jayBhcwotICAgICAgICAgICBpdCBpcyBhIHNpbXBsZSBkZXJlZmVyZW5jZS4gKi8KLSAgICAgICAgcmVzID0gQ3JlYXRlRGlyZWN0b3J5VyhQeVVuaWNvZGVfQVNfVU5JQ09ERShwbyksIE5VTEwpOworICAgICAgICByZXMgPSBDcmVhdGVEaXJlY3RvcnlXKHdwYXRoLCBOVUxMKTsKICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKICAgICAgICAgaWYgKCFyZXMpCi0gICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3JfdW5pY29kZSgibWtkaXIiLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShwbykpOworICAgICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX29iamVjdCgibWtkaXIiLCBwbyk7CiAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICAgICAgcmV0dXJuIFB5X05vbmU7CiAgICAgfQogICAgIC8qIERyb3AgdGhlIGFyZ3VtZW50IHBhcnNpbmcgZXJyb3IgYXMgbmFycm93IHN0cmluZ3MKICAgICAgICBhcmUgYWxzbyB2YWxpZC4gKi8KICAgICBQeUVycl9DbGVhcigpOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZ8aTpta2RpciIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmbW9kZSkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5fGk6bWtkaXIiLCAmcGF0aCwgJm1vZGUpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisgICAgaWYgKHdpbjMyX3dhcm5fYnl0ZXNfYXBpKCkpCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAvKiBQeVVuaWNvZGVfQVNfVU5JQ09ERSBPSyB3aXRob3V0IHRocmVhZCBsb2NrIGFzCi0gICAgICAgaXQgaXMgYSBzaW1wbGUgZGVyZWZlcmVuY2UuICovCiAgICAgcmVzID0gQ3JlYXRlRGlyZWN0b3J5QShwYXRoLCBOVUxMKTsKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmICghcmVzKSB7CiAgICAgICAgIHdpbjMyX2Vycm9yKCJta2RpciIsIHBhdGgpOwotICAgICAgICBQeV9ERUNSRUYob3BhdGgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgUHlfREVDUkVGKG9wYXRoKTsKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgcmV0dXJuIFB5X05vbmU7CiAjZWxzZQorICAgIFB5T2JqZWN0ICpvcGF0aDsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZ8aTpta2RpciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmbW9kZSkpCkBAIC0zMDE1LDYgKzMyNTMsMTEwIEBACiB9CiAjZW5kaWYgLyogSEFWRV9OSUNFICovCiAKKworI2lmZGVmIEhBVkVfR0VUUFJJT1JJVFkKK1B5RG9jX1NUUlZBUihwb3NpeF9nZXRwcmlvcml0eV9fZG9jX18sCisiZ2V0cHJpb3JpdHkod2hpY2gsIHdobykgLT4gY3VycmVudF9wcmlvcml0eVxuXG5cCitHZXQgcHJvZ3JhbSBzY2hlZHVsaW5nIHByaW9yaXR5LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfZ2V0cHJpb3JpdHkoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCB3aGljaCwgd2hvLCByZXR2YWw7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlpIiwgJndoaWNoLCAmd2hvKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgZXJybm8gPSAwOworICAgIHJldHZhbCA9IGdldHByaW9yaXR5KHdoaWNoLCB3aG8pOworICAgIGlmIChlcnJubyAhPSAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKChsb25nKXJldHZhbCk7Cit9CisjZW5kaWYgLyogSEFWRV9HRVRQUklPUklUWSAqLworCisKKyNpZmRlZiBIQVZFX1NFVFBSSU9SSVRZCitQeURvY19TVFJWQVIocG9zaXhfc2V0cHJpb3JpdHlfX2RvY19fLAorInNldHByaW9yaXR5KHdoaWNoLCB3aG8sIHByaW8pIC0+IE5vbmVcblxuXAorU2V0IHByb2dyYW0gc2NoZWR1bGluZyBwcmlvcml0eS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3NldHByaW9yaXR5KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgd2hpY2gsIHdobywgcHJpbywgcmV0dmFsOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpaWkiLCAmd2hpY2gsICZ3aG8sICZwcmlvKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dmFsID0gc2V0cHJpb3JpdHkod2hpY2gsIHdobywgcHJpbyk7CisgICAgaWYgKHJldHZhbCA9PSAtMSkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYgLyogSEFWRV9TRVRQUklPUklUWSAqLworCisKK3N0YXRpYyBQeU9iamVjdCAqCitpbnRlcm5hbF9yZW5hbWUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBpbnQgaXNfcmVwbGFjZSkKK3sKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgUHlPYmplY3QgKnNyYywgKmRzdDsKKyAgICBCT09MIHJlc3VsdDsKKyAgICBpbnQgZmxhZ3MgPSBpc19yZXBsYWNlID8gTU9WRUZJTEVfUkVQTEFDRV9FWElTVElORyA6IDA7CisgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywKKyAgICAgICAgICAgICAgICAgICAgICAgICBpc19yZXBsYWNlID8gIlVVOnJlcGxhY2UiIDogIlVVOnJlbmFtZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgJnNyYywgJmRzdCkpCisgICAgeworICAgICAgICB3Y2hhcl90ICp3c3JjLCAqd2RzdDsKKworICAgICAgICB3c3JjID0gUHlVbmljb2RlX0FzVW5pY29kZShzcmMpOworICAgICAgICBpZiAod3NyYyA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHdkc3QgPSBQeVVuaWNvZGVfQXNVbmljb2RlKGRzdCk7CisgICAgICAgIGlmICh3ZHN0ID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXN1bHQgPSBNb3ZlRmlsZUV4Vyh3c3JjLCB3ZHN0LCBmbGFncyk7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yKGlzX3JlcGxhY2UgPyAicmVwbGFjZSIgOiAicmVuYW1lIiwgTlVMTCk7CisgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgcmV0dXJuIFB5X05vbmU7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzX3JlcGxhY2UgPyAiTyZPJjpyZXBsYWNlIiA6ICJPJk8mOnJlbmFtZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZzcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZkc3QpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAgICAgaWYgKHdpbjMyX3dhcm5fYnl0ZXNfYXBpKCkpCisgICAgICAgICAgICBnb3RvIGVycm9yOworCisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgcmVzdWx0ID0gTW92ZUZpbGVFeEEoUHlCeXRlc19BU19TVFJJTkcoc3JjKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoZHN0KSwgZmxhZ3MpOworICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgICAgIFB5X1hERUNSRUYoc3JjKTsKKyAgICAgICAgUHlfWERFQ1JFRihkc3QpOworCisgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yKGlzX3JlcGxhY2UgPyAicmVwbGFjZSIgOiAicmVuYW1lIiwgTlVMTCk7CisgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgcmV0dXJuIFB5X05vbmU7CisKK2Vycm9yOgorICAgICAgICBQeV9YREVDUkVGKHNyYyk7CisgICAgICAgIFB5X1hERUNSRUYoZHN0KTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorI2Vsc2UKKyAgICByZXR1cm4gcG9zaXhfMnN0cihhcmdzLAorICAgICAgICAgICAgICAgICAgICAgIGlzX3JlcGxhY2UgPyAiTyZPJjpyZXBsYWNlIiA6ICJPJk8mOnJlbmFtZSIsIHJlbmFtZSk7CisjZW5kaWYKK30KKwogUHlEb2NfU1RSVkFSKHBvc2l4X3JlbmFtZV9fZG9jX18sCiAicmVuYW1lKG9sZCwgbmV3KVxuXG5cCiBSZW5hbWUgYSBmaWxlIG9yIGRpcmVjdG9yeS4iKTsKQEAgLTMwMjIsNDQgKzMzNjQsMTggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBwb3NpeF9yZW5hbWUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotI2lmZGVmIE1TX1dJTkRPV1MKLSAgICBQeU9iamVjdCAqbzEsICpvMjsKLSAgICBjaGFyICpwMSwgKnAyOwotICAgIEJPT0wgcmVzdWx0OwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT086cmVuYW1lIiwgJm8xLCAmbzIpKQotICAgICAgICBnb3RvIGVycm9yOwotICAgIGlmICghY29udmVydF90b191bmljb2RlKCZvMSkpCi0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgaWYgKCFjb252ZXJ0X3RvX3VuaWNvZGUoJm8yKSkgewotICAgICAgICBQeV9ERUNSRUYobzEpOwotICAgICAgICBnb3RvIGVycm9yOwotICAgIH0KLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcmVzdWx0ID0gTW92ZUZpbGVXKFB5VW5pY29kZV9Bc1VuaWNvZGUobzEpLAotICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQXNVbmljb2RlKG8yKSk7Ci0gICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICBQeV9ERUNSRUYobzEpOwotICAgIFB5X0RFQ1JFRihvMik7Ci0gICAgaWYgKCFyZXN1bHQpCi0gICAgICAgIHJldHVybiB3aW4zMl9lcnJvcigicmVuYW1lIiwgTlVMTCk7Ci0gICAgUHlfSU5DUkVGKFB5X05vbmUpOwotICAgIHJldHVybiBQeV9Ob25lOwotZXJyb3I6Ci0gICAgUHlFcnJfQ2xlYXIoKTsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInNzOnJlbmFtZSIsICZwMSwgJnAyKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgIHJlc3VsdCA9IE1vdmVGaWxlQShwMSwgcDIpOwotICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgaWYgKCFyZXN1bHQpCi0gICAgICAgIHJldHVybiB3aW4zMl9lcnJvcigicmVuYW1lIiwgTlVMTCk7Ci0gICAgUHlfSU5DUkVGKFB5X05vbmUpOwotICAgIHJldHVybiBQeV9Ob25lOwotI2Vsc2UKLSAgICByZXR1cm4gcG9zaXhfMnN0cihhcmdzLCAiTyZPJjpyZW5hbWUiLCByZW5hbWUpOwotI2VuZGlmCisgICAgcmV0dXJuIGludGVybmFsX3JlbmFtZShzZWxmLCBhcmdzLCAwKTsKIH0KIAorUHlEb2NfU1RSVkFSKHBvc2l4X3JlcGxhY2VfX2RvY19fLAorInJlcGxhY2Uob2xkLCBuZXcpXG5cblwKK1JlbmFtZSBhIGZpbGUgb3IgZGlyZWN0b3J5LCBvdmVyd3JpdGluZyB0aGUgZGVzdGluYXRpb24uIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9yZXBsYWNlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICByZXR1cm4gaW50ZXJuYWxfcmVuYW1lKHNlbGYsIGFyZ3MsIDEpOworfQogCiBQeURvY19TVFJWQVIocG9zaXhfcm1kaXJfX2RvY19fLAogInJtZGlyKHBhdGgpXG5cblwKQEAgLTMyMjMsMjkgKzM1MzksMTggQEAKIH0KICNlbmRpZiAvKiBIQVZFX1VOQU1FICovCiAKKwogc3RhdGljIGludAotZXh0cmFjdF90aW1lKFB5T2JqZWN0ICp0LCB0aW1lX3QqIHNlYywgbG9uZyogdXNlYykKK2V4dHJhY3RfdGltZShQeU9iamVjdCAqdCwgdGltZV90KiBzZWMsIGxvbmcqIG5zZWMpCiB7CiAgICAgdGltZV90IGludHZhbDsKICAgICBpZiAoUHlGbG9hdF9DaGVjayh0KSkgewotICAgICAgICBkb3VibGUgdHZhbCA9IFB5RmxvYXRfQXNEb3VibGUodCk7Ci0gICAgICAgIFB5T2JqZWN0ICppbnRvYmogPSBQeU51bWJlcl9Mb25nKHQpOwotICAgICAgICBpZiAoIWludG9iaikKLSAgICAgICAgICAgIHJldHVybiAtMTsKLSNpZiBTSVpFT0ZfVElNRV9UID4gU0laRU9GX0xPTkcKLSAgICAgICAgaW50dmFsID0gUHlMb25nX0FzVW5zaWduZWRMb25nTG9uZ01hc2soaW50b2JqKTsKLSNlbHNlCi0gICAgICAgIGludHZhbCA9IFB5TG9uZ19Bc0xvbmcoaW50b2JqKTsKLSNlbmRpZgotICAgICAgICBQeV9ERUNSRUYoaW50b2JqKTsKLSAgICAgICAgaWYgKGludHZhbCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICAqc2VjID0gaW50dmFsOwotICAgICAgICAqdXNlYyA9IChsb25nKSgodHZhbCAtIGludHZhbCkgKiAxZTYpOyAvKiBjYW4ndCBleGNlZWQgMTAwMDAwMCAqLwotICAgICAgICBpZiAoKnVzZWMgPCAwKQotICAgICAgICAgICAgLyogSWYgcm91bmRpbmcgZ2F2ZSB1cyBhIG5lZ2F0aXZlIG51bWJlciwKLSAgICAgICAgICAgICAgIHRydW5jYXRlLiAgKi8KLSAgICAgICAgICAgICp1c2VjID0gMDsKKyAgICAgICAgZG91YmxlIGQgPSBQeUZsb2F0X0FzRG91YmxlKHQpOworICAgICAgICBkb3VibGUgbW9kOworICAgICAgICAqc2VjID0gKHRpbWVfdClkOworICAgICAgICBtb2QgPSBmbW9kKGQsIDEuMCk7CisgICAgICAgIG1vZCAqPSAxZTk7CisgICAgICAgICpuc2VjID0gKGxvbmcpbW9kOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAjaWYgU0laRU9GX1RJTUVfVCA+IFNJWkVPRl9MT05HCkBAIC0zMjU2LDUwICszNTYxLDUyIEBACiAgICAgaWYgKGludHZhbCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICByZXR1cm4gLTE7CiAgICAgKnNlYyA9IGludHZhbDsKLSAgICAqdXNlYyA9IDA7CisgICAgKm5zZWMgPSAwOwogICAgIHJldHVybiAwOwogfQogCiBQeURvY19TVFJWQVIocG9zaXhfdXRpbWVfX2RvY19fLAotInV0aW1lKHBhdGgsIChhdGltZSwgbXRpbWUpKVxuXAotdXRpbWUocGF0aCwgTm9uZSlcblxuXAotU2V0IHRoZSBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWUgb2YgdGhlIGZpbGUgdG8gdGhlIGdpdmVuIHZhbHVlcy4gIElmIHRoZVxuXAotc2Vjb25kIGZvcm0gaXMgdXNlZCwgc2V0IHRoZSBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWVzIHRvIHRoZSBjdXJyZW50IHRpbWUuIik7CisidXRpbWUocGF0aFssIChhdGltZSwgbXRpbWUpXSlcblwKK1NldCB0aGUgYWNjZXNzIGFuZCBtb2RpZmllZCB0aW1lIG9mIHRoZSBmaWxlIHRvIHRoZSBnaXZlbiB2YWx1ZXMuXG5cCitJZiBubyBzZWNvbmQgYXJndW1lbnQgaXMgdXNlZCwgc2V0IHRoZSBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWVzIHRvXG5cCit0aGUgY3VycmVudCB0aW1lLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgogcG9zaXhfdXRpbWUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogI2lmZGVmIE1TX1dJTkRPV1MKLSAgICBQeU9iamVjdCAqYXJnOwotICAgIFB5VW5pY29kZU9iamVjdCAqb2J3cGF0aDsKKyAgICBQeU9iamVjdCAqYXJnID0gUHlfTm9uZTsKKyAgICBQeU9iamVjdCAqb2J3cGF0aDsKICAgICB3Y2hhcl90ICp3cGF0aCA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKm9hcGF0aDsKLSAgICBjaGFyICphcGF0aDsKKyAgICBjb25zdCBjaGFyICphcGF0aDsKICAgICBIQU5ETEUgaEZpbGU7CiAgICAgdGltZV90IGF0aW1lc2VjLCBtdGltZXNlYzsKLSAgICBsb25nIGF1c2VjLCBtdXNlYzsKKyAgICBsb25nIGFuc2VjLCBtbnNlYzsKICAgICBGSUxFVElNRSBhdGltZSwgbXRpbWU7CiAgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CiAKLSAgICBpZiAoUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVU98OnV0aW1lIiwgJm9id3BhdGgsICZhcmcpKSB7Ci0gICAgICAgIHdwYXRoID0gUHlVbmljb2RlX0FTX1VOSUNPREUob2J3cGF0aCk7CisgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlV8Tzp1dGltZSIsICZvYndwYXRoLCAmYXJnKSkgeworICAgICAgICB3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUob2J3cGF0aCk7CisgICAgICAgIGlmICh3cGF0aCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgaEZpbGUgPSBDcmVhdGVGaWxlVyh3cGF0aCwgRklMRV9XUklURV9BVFRSSUJVVEVTLCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE9QRU5fRVhJU1RJTkcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRklMRV9GTEFHX0JBQ0tVUF9TRU1BTlRJQ1MsIE5VTEwpOwogICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgICAgICBpZiAoaEZpbGUgPT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUpCi0gICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3JfdW5pY29kZSgidXRpbWUiLCB3cGF0aCk7Ci0gICAgfSBlbHNlCisgICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJ1dGltZSIsIG9id3BhdGgpOworICAgIH0KKyAgICBlbHNlIHsKICAgICAgICAgLyogRHJvcCB0aGUgYXJndW1lbnQgcGFyc2luZyBlcnJvciBhcyBuYXJyb3cgc3RyaW5ncwogICAgICAgICAgICBhcmUgYWxzbyB2YWxpZC4gKi8KICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKIAotICAgIGlmICghd3BhdGgpIHsKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJk86dXRpbWUiLAotICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb2FwYXRoLCAmYXJnKSkKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5fE86dXRpbWUiLCAmYXBhdGgsICZhcmcpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGFwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvYXBhdGgpOworICAgICAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgaEZpbGUgPSBDcmVhdGVGaWxlQShhcGF0aCwgRklMRV9XUklURV9BVFRSSUJVVEVTLCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE9QRU5fRVhJU1RJTkcsCkBAIC0zMzA3LDEwICszNjE0LDggQEAKICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKICAgICAgICAgaWYgKGhGaWxlID09IElOVkFMSURfSEFORExFX1ZBTFVFKSB7CiAgICAgICAgICAgICB3aW4zMl9lcnJvcigidXRpbWUiLCBhcGF0aCk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYob2FwYXRoKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIFB5X0RFQ1JFRihvYXBhdGgpOwogICAgIH0KIAogICAgIGlmIChhcmcgPT0gUHlfTm9uZSkgewpAQCAtMzMyOSwxMyArMzYzNCwxMyBAQAogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgaWYgKGV4dHJhY3RfdGltZShQeVR1cGxlX0dFVF9JVEVNKGFyZywgMCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgJmF0aW1lc2VjLCAmYXVzZWMpID09IC0xKQorICAgICAgICAgICAgICAgICAgICAgICAgICZhdGltZXNlYywgJmFuc2VjKSA9PSAtMSkKICAgICAgICAgICAgIGdvdG8gZG9uZTsKLSAgICAgICAgdGltZV90X3RvX0ZJTEVfVElNRShhdGltZXNlYywgMTAwMCphdXNlYywgJmF0aW1lKTsKKyAgICAgICAgdGltZV90X3RvX0ZJTEVfVElNRShhdGltZXNlYywgYW5zZWMsICZhdGltZSk7CiAgICAgICAgIGlmIChleHRyYWN0X3RpbWUoUHlUdXBsZV9HRVRfSVRFTShhcmcsIDEpLAotICAgICAgICAgICAgICAgICAgICAgICAgICZtdGltZXNlYywgJm11c2VjKSA9PSAtMSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAmbXRpbWVzZWMsICZtbnNlYykgPT0gLTEpCiAgICAgICAgICAgICBnb3RvIGRvbmU7Ci0gICAgICAgIHRpbWVfdF90b19GSUxFX1RJTUUobXRpbWVzZWMsIDEwMDAqbXVzZWMsICZtdGltZSk7CisgICAgICAgIHRpbWVfdF90b19GSUxFX1RJTUUobXRpbWVzZWMsIG1uc2VjLCAmbXRpbWUpOwogICAgIH0KICAgICBpZiAoIVNldEZpbGVUaW1lKGhGaWxlLCBOVUxMLCAmYXRpbWUsICZtdGltZSkpIHsKICAgICAgICAgLyogQXZvaWQgcHV0dGluZyB0aGUgZmlsZSBuYW1lIGludG8gdGhlIGVycm9yIGhlcmUsCkBAIC0zMzU1LDI5ICszNjYwLDExIEBACiAgICAgUHlPYmplY3QgKm9wYXRoOwogICAgIGNoYXIgKnBhdGg7CiAgICAgdGltZV90IGF0aW1lLCBtdGltZTsKLSAgICBsb25nIGF1c2VjLCBtdXNlYzsKKyAgICBsb25nIGFuc2VjLCBtbnNlYzsKICAgICBpbnQgcmVzOwotICAgIFB5T2JqZWN0KiBhcmc7CisgICAgUHlPYmplY3QqIGFyZyA9IFB5X05vbmU7CiAKLSNpZiBkZWZpbmVkKEhBVkVfVVRJTUVTKQotICAgIHN0cnVjdCB0aW1ldmFsIGJ1ZlsyXTsKLSNkZWZpbmUgQVRJTUUgYnVmWzBdLnR2X3NlYwotI2RlZmluZSBNVElNRSBidWZbMV0udHZfc2VjCi0jZWxpZiBkZWZpbmVkKEhBVkVfVVRJTUVfSCkKLS8qIFhYWCBzaG91bGQgZGVmaW5lIHN0cnVjdCB1dGltYnVmIGluc3RlYWQsIGFib3ZlICovCi0gICAgc3RydWN0IHV0aW1idWYgYnVmOwotI2RlZmluZSBBVElNRSBidWYuYWN0aW1lCi0jZGVmaW5lIE1USU1FIGJ1Zi5tb2R0aW1lCi0jZGVmaW5lIFVUSU1FX0FSRyAmYnVmCi0jZWxzZSAvKiBIQVZFX1VUSU1FUyAqLwotICAgIHRpbWVfdCBidWZbMl07Ci0jZGVmaW5lIEFUSU1FIGJ1ZlswXQotI2RlZmluZSBNVElNRSBidWZbMV0KLSNkZWZpbmUgVVRJTUVfQVJHIGJ1ZgotI2VuZGlmIC8qIEhBVkVfVVRJTUVTICovCi0KLQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZPOnV0aW1lIiwKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mfE86dXRpbWUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJmFyZykpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKQEAgLTMzOTUsMjggKzM2ODIsNDYgQEAKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIGlmIChleHRyYWN0X3RpbWUoUHlUdXBsZV9HRVRfSVRFTShhcmcsIDApLAotICAgICAgICAgICAgICAgICAgICAgICAgICZhdGltZSwgJmF1c2VjKSA9PSAtMSkgeworICAgICAgICAgICAgICAgICAgICAgICAgICZhdGltZSwgJmFuc2VjKSA9PSAtMSkgewogICAgICAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAgICAgICAgIGlmIChleHRyYWN0X3RpbWUoUHlUdXBsZV9HRVRfSVRFTShhcmcsIDEpLAotICAgICAgICAgICAgICAgICAgICAgICAgICZtdGltZSwgJm11c2VjKSA9PSAtMSkgeworICAgICAgICAgICAgICAgICAgICAgICAgICZtdGltZSwgJm1uc2VjKSA9PSAtMSkgewogICAgICAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIEFUSU1FID0gYXRpbWU7Ci0gICAgICAgIE1USU1FID0gbXRpbWU7Ci0jaWZkZWYgSEFWRV9VVElNRVMKLSAgICAgICAgYnVmWzBdLnR2X3VzZWMgPSBhdXNlYzsKLSAgICAgICAgYnVmWzFdLnR2X3VzZWMgPSBtdXNlYzsKKwogICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHsKKyNpZmRlZiBIQVZFX1VUSU1FTlNBVAorICAgICAgICBzdHJ1Y3QgdGltZXNwZWMgYnVmWzJdOworICAgICAgICBidWZbMF0udHZfc2VjID0gYXRpbWU7CisgICAgICAgIGJ1ZlswXS50dl9uc2VjID0gYW5zZWM7CisgICAgICAgIGJ1ZlsxXS50dl9zZWMgPSBtdGltZTsKKyAgICAgICAgYnVmWzFdLnR2X25zZWMgPSBtbnNlYzsKKyAgICAgICAgcmVzID0gdXRpbWVuc2F0KEFUX0ZEQ1dELCBwYXRoLCBidWYsIDApOworI2VsaWYgZGVmaW5lZChIQVZFX1VUSU1FUykKKyAgICAgICAgc3RydWN0IHRpbWV2YWwgYnVmWzJdOworICAgICAgICBidWZbMF0udHZfc2VjID0gYXRpbWU7CisgICAgICAgIGJ1ZlswXS50dl91c2VjID0gYW5zZWMgLyAxMDAwOworICAgICAgICBidWZbMV0udHZfc2VjID0gbXRpbWU7CisgICAgICAgIGJ1ZlsxXS50dl91c2VjID0gbW5zZWMgLyAxMDAwOwogICAgICAgICByZXMgPSB1dGltZXMocGF0aCwgYnVmKTsKLSAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyNlbGlmIGRlZmluZWQoSEFWRV9VVElNRV9IKQorICAgICAgICAvKiBYWFggc2hvdWxkIGRlZmluZSBzdHJ1Y3QgdXRpbWJ1ZiBpbnN0ZWFkLCBhYm92ZSAqLworICAgICAgICBzdHJ1Y3QgdXRpbWJ1ZiBidWY7CisgICAgICAgIGJ1Zi5hY3RpbWUgPSBhdGltZTsKKyAgICAgICAgYnVmLm1vZHRpbWUgPSBtdGltZTsKKyAgICAgICAgcmVzID0gdXRpbWUocGF0aCwgJmJ1Zik7CiAjZWxzZQotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIHJlcyA9IHV0aW1lKHBhdGgsIFVUSU1FX0FSRyk7CisgICAgICAgIHRpbWVfdCBidWZbMl07CisgICAgICAgIGJ1ZlswXSA9IGF0aW1lOworICAgICAgICBidWZbMV0gPSBtdGltZTsKKyAgICAgICAgcmVzID0gdXRpbWUocGF0aCwgYnVmKTsKKyNlbmRpZgorICAgICAgICB9CiAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0jZW5kaWYgLyogSEFWRV9VVElNRVMgKi8KICAgICB9CiAgICAgaWYgKHJlcyA8IDApIHsKICAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yX3dpdGhfYWxsb2NhdGVkX2ZpbGVuYW1lKG9wYXRoKTsKQEAgLTM0MjQsMTIgKzM3MjksMTk4IEBACiAgICAgUHlfREVDUkVGKG9wYXRoKTsKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgcmV0dXJuIFB5X05vbmU7Ci0jdW5kZWYgVVRJTUVfQVJHCi0jdW5kZWYgQVRJTUUKLSN1bmRlZiBNVElNRQorI3VuZGVmIFVUSU1FX0VYVFJBQ1QKICNlbmRpZiAvKiBNU19XSU5ET1dTICovCiB9CiAKKyNpZmRlZiBIQVZFX0ZVVElNRVMKK1B5RG9jX1NUUlZBUihwb3NpeF9mdXRpbWVzX19kb2NfXywKKyJmdXRpbWVzKGZkWywgKGF0aW1lLCBtdGltZSldKVxuXAorU2V0IHRoZSBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWUgb2YgdGhlIGZpbGUgc3BlY2lmaWVkIGJ5IHRoZSBmaWxlXG5cCitkZXNjcmlwdG9yIGZkIHRvIHRoZSBnaXZlbiB2YWx1ZXMuIElmIG5vIHNlY29uZCBhcmd1bWVudCBpcyB1c2VkLCBzZXQgdGhlXG5cCithY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWVzIHRvIHRoZSBjdXJyZW50IHRpbWUuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mdXRpbWVzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgcmVzLCBmZDsKKyAgICBQeU9iamVjdCogYXJnID0gUHlfTm9uZTsKKyAgICB0aW1lX3QgYXRpbWUsIG10aW1lOworICAgIGxvbmcgYW5zZWMsIG1uc2VjOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpfE86ZnV0aW1lcyIsICZmZCwgJmFyZykpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKGFyZyA9PSBQeV9Ob25lKSB7CisgICAgICAgIC8qIG9wdGlvbmFsIHRpbWUgdmFsdWVzIG5vdCBnaXZlbiAqLworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHJlcyA9IGZ1dGltZXMoZmQsIE5VTEwpOworICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIH0KKyAgICBlbHNlIGlmICghUHlUdXBsZV9DaGVjayhhcmcpIHx8IFB5VHVwbGVfU2l6ZShhcmcpICE9IDIpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAiZnV0aW1lcygpIGFyZyAyIG11c3QgYmUgYSB0dXBsZSAoYXRpbWUsIG10aW1lKSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGlmIChleHRyYWN0X3RpbWUoUHlUdXBsZV9HRVRfSVRFTShhcmcsIDApLAorICAgICAgICAgICAgICAgICZhdGltZSwgJmFuc2VjKSA9PSAtMSkgeworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGV4dHJhY3RfdGltZShQeVR1cGxlX0dFVF9JVEVNKGFyZywgMSksCisgICAgICAgICAgICAgICAgJm10aW1lLCAmbW5zZWMpID09IC0xKSB7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHsKKyNpZmRlZiBIQVZFX0ZVVElNRU5TCisgICAgICAgIHN0cnVjdCB0aW1lc3BlYyBidWZbMl07CisgICAgICAgIGJ1ZlswXS50dl9zZWMgPSBhdGltZTsKKyAgICAgICAgYnVmWzBdLnR2X25zZWMgPSBhbnNlYzsKKyAgICAgICAgYnVmWzFdLnR2X3NlYyA9IG10aW1lOworICAgICAgICBidWZbMV0udHZfbnNlYyA9IG1uc2VjOworICAgICAgICByZXMgPSBmdXRpbWVucyhmZCwgYnVmKTsKKyNlbHNlCisgICAgICAgIHN0cnVjdCB0aW1ldmFsIGJ1ZlsyXTsKKyAgICAgICAgYnVmWzBdLnR2X3NlYyA9IGF0aW1lOworICAgICAgICBidWZbMF0udHZfdXNlYyA9IGFuc2VjIC8gMTAwMDsKKyAgICAgICAgYnVmWzFdLnR2X3NlYyA9IG10aW1lOworICAgICAgICBidWZbMV0udHZfdXNlYyA9IG1uc2VjIC8gMTAwMDsKKyAgICAgICAgcmVzID0gZnV0aW1lcyhmZCwgYnVmKTsKKyNlbmRpZgorICAgICAgICB9CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgfQorICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWZkZWYgSEFWRV9MVVRJTUVTCitQeURvY19TVFJWQVIocG9zaXhfbHV0aW1lc19fZG9jX18sCisibHV0aW1lcyhwYXRoWywgKGF0aW1lLCBtdGltZSldKVxuXAorTGlrZSB1dGltZSgpLCBidXQgaWYgcGF0aCBpcyBhIHN5bWJvbGljIGxpbmssIGl0IGlzIG5vdCBkZXJlZmVyZW5jZWQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9sdXRpbWVzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgUHlPYmplY3QgKmFyZyA9IFB5X05vbmU7CisgICAgY29uc3QgY2hhciAqcGF0aDsKKyAgICBpbnQgcmVzOworICAgIHRpbWVfdCBhdGltZSwgbXRpbWU7CisgICAgbG9uZyBhbnNlYywgbW5zZWM7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mfE86bHV0aW1lcyIsCisgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJmFyZykpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKyAgICBpZiAoYXJnID09IFB5X05vbmUpIHsKKyAgICAgICAgLyogb3B0aW9uYWwgdGltZSB2YWx1ZXMgbm90IGdpdmVuICovCisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgcmVzID0gbHV0aW1lcyhwYXRoLCBOVUxMKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgZWxzZSBpZiAoIVB5VHVwbGVfQ2hlY2soYXJnKSB8fCBQeVR1cGxlX1NpemUoYXJnKSAhPSAyKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAibHV0aW1lcygpIGFyZyAyIG11c3QgYmUgYSB0dXBsZSAoYXRpbWUsIG10aW1lKSIpOworICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGlmIChleHRyYWN0X3RpbWUoUHlUdXBsZV9HRVRfSVRFTShhcmcsIDApLAorICAgICAgICAgICAgICAgICZhdGltZSwgJmFuc2VjKSA9PSAtMSkgeworICAgICAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIGlmIChleHRyYWN0X3RpbWUoUHlUdXBsZV9HRVRfSVRFTShhcmcsIDEpLAorICAgICAgICAgICAgICAgICZtdGltZSwgJm1uc2VjKSA9PSAtMSkgeworICAgICAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgeworI2lmZGVmIEhBVkVfVVRJTUVOU0FUCisgICAgICAgIHN0cnVjdCB0aW1lc3BlYyBidWZbMl07CisgICAgICAgIGJ1ZlswXS50dl9zZWMgPSBhdGltZTsKKyAgICAgICAgYnVmWzBdLnR2X25zZWMgPSBhbnNlYzsKKyAgICAgICAgYnVmWzFdLnR2X3NlYyA9IG10aW1lOworICAgICAgICBidWZbMV0udHZfbnNlYyA9IG1uc2VjOworICAgICAgICByZXMgPSB1dGltZW5zYXQoQVRfRkRDV0QsIHBhdGgsIGJ1ZiwgQVRfU1lNTElOS19OT0ZPTExPVyk7CisjZWxzZQorICAgICAgICBzdHJ1Y3QgdGltZXZhbCBidWZbMl07CisgICAgICAgIGJ1ZlswXS50dl9zZWMgPSBhdGltZTsKKyAgICAgICAgYnVmWzBdLnR2X3VzZWMgPSBhbnNlYyAvIDEwMDA7CisgICAgICAgIGJ1ZlsxXS50dl9zZWMgPSBtdGltZTsKKyAgICAgICAgYnVmWzFdLnR2X3VzZWMgPSBtbnNlYyAvIDEwMDA7CisgICAgICAgIHJlcyA9IGx1dGltZXMocGF0aCwgYnVmKTsKKyNlbmRpZgorICAgICAgICB9CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgfQorICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgaWYgKHJlcyA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0ZVVElNRU5TCitQeURvY19TVFJWQVIocG9zaXhfZnV0aW1lbnNfX2RvY19fLAorImZ1dGltZW5zKGZkWywgKGF0aW1lX3NlYywgYXRpbWVfbnNlYyksIChtdGltZV9zZWMsIG10aW1lX25zZWMpXSlcblwKK1VwZGF0ZXMgdGhlIHRpbWVzdGFtcHMgb2YgYSBmaWxlIHNwZWNpZmllZCBieSB0aGUgZmlsZSBkZXNjcmlwdG9yIGZkLCB3aXRoXG5cCituYW5vc2Vjb25kIHByZWNpc2lvbi5cblwKK0lmIG5vIHNlY29uZCBhcmd1bWVudCBpcyBnaXZlbiwgc2V0IGF0aW1lIGFuZCBtdGltZSB0byB0aGUgY3VycmVudCB0aW1lLlxuXAorSWYgKl9uc2VjIGlzIHNwZWNpZmllZCBhcyBVVElNRV9OT1csIHRoZSB0aW1lc3RhbXAgaXMgdXBkYXRlZCB0byB0aGVcblwKK2N1cnJlbnQgdGltZS5cblwKK0lmICpfbnNlYyBpcyBzcGVjaWZpZWQgYXMgVVRJTUVfT01JVCwgdGhlIHRpbWVzdGFtcCBpcyBub3QgdXBkYXRlZC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2Z1dGltZW5zKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgcmVzLCBmZDsKKyAgICBQeU9iamVjdCAqYXRpbWUgPSBQeV9Ob25lOworICAgIFB5T2JqZWN0ICptdGltZSA9IFB5X05vbmU7CisgICAgc3RydWN0IHRpbWVzcGVjIGJ1ZlsyXTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaXxPTzpmdXRpbWVucyIsCisgICAgICAgICAgICAmZmQsICZhdGltZSwgJm10aW1lKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKGF0aW1lID09IFB5X05vbmUgJiYgbXRpbWUgPT0gUHlfTm9uZSkgeworICAgICAgICAvKiBvcHRpb25hbCB0aW1lIHZhbHVlcyBub3QgZ2l2ZW4gKi8KKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXMgPSBmdXRpbWVucyhmZCwgTlVMTCk7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgfQorICAgIGVsc2UgaWYgKCFQeVR1cGxlX0NoZWNrKGF0aW1lKSB8fCBQeVR1cGxlX1NpemUoYXRpbWUpICE9IDIpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJmdXRpbWVucygpIGFyZyAyIG11c3QgYmUgYSB0dXBsZSAoYXRpbWVfc2VjLCBhdGltZV9uc2VjKSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZSBpZiAoIVB5VHVwbGVfQ2hlY2sobXRpbWUpIHx8IFB5VHVwbGVfU2l6ZShtdGltZSkgIT0gMikgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgImZ1dGltZW5zKCkgYXJnIDMgbXVzdCBiZSBhIHR1cGxlIChtdGltZV9zZWMsIG10aW1lX25zZWMpIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGF0aW1lLCAibGw6ZnV0aW1lbnMiLAorICAgICAgICAgICAgICAgICYoYnVmWzBdLnR2X3NlYyksICYoYnVmWzBdLnR2X25zZWMpKSkgeworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKG10aW1lLCAibGw6ZnV0aW1lbnMiLAorICAgICAgICAgICAgICAgICYoYnVmWzFdLnR2X3NlYyksICYoYnVmWzFdLnR2X25zZWMpKSkgeworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXMgPSBmdXRpbWVucyhmZCwgYnVmKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgaWYgKHJlcyA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCiAKIC8qIFByb2Nlc3Mgb3BlcmF0aW9ucyAqLwogCkBAIC0zNDc0LDc5ICszOTY1LDcgQEAKIH0KICNlbmRpZgogCi0KLSNpZmRlZiBIQVZFX0VYRUNWCi1QeURvY19TVFJWQVIocG9zaXhfZXhlY3ZfX2RvY19fLAotImV4ZWN2KHBhdGgsIGFyZ3MpXG5cblwKLUV4ZWN1dGUgYW4gZXhlY3V0YWJsZSBwYXRoIHdpdGggYXJndW1lbnRzLCByZXBsYWNpbmcgY3VycmVudCBwcm9jZXNzLlxuXAotXG5cCi0gICAgcGF0aDogcGF0aCBvZiBleGVjdXRhYmxlIGZpbGVcblwKLSAgICBhcmdzOiB0dXBsZSBvciBsaXN0IG9mIHN0cmluZ3MiKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLXBvc2l4X2V4ZWN2KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBQeU9iamVjdCAqb3BhdGg7Ci0gICAgY2hhciAqcGF0aDsKLSAgICBQeU9iamVjdCAqYXJndjsKLSAgICBjaGFyICoqYXJndmxpc3Q7Ci0gICAgUHlfc3NpemVfdCBpLCBhcmdjOwotICAgIFB5T2JqZWN0ICooKmdldGl0ZW0pKFB5T2JqZWN0ICosIFB5X3NzaXplX3QpOwotCi0gICAgLyogZXhlY3YgaGFzIHR3byBhcmd1bWVudHM6IChwYXRoLCBhcmd2KSwgd2hlcmUKLSAgICAgICBhcmd2IGlzIGEgbGlzdCBvciB0dXBsZSBvZiBzdHJpbmdzLiAqLwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJk86ZXhlY3YiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZvcGF0aCwgJmFyZ3YpKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7Ci0gICAgaWYgKFB5TGlzdF9DaGVjayhhcmd2KSkgewotICAgICAgICBhcmdjID0gUHlMaXN0X1NpemUoYXJndik7Ci0gICAgICAgIGdldGl0ZW0gPSBQeUxpc3RfR2V0SXRlbTsKLSAgICB9Ci0gICAgZWxzZSBpZiAoUHlUdXBsZV9DaGVjayhhcmd2KSkgewotICAgICAgICBhcmdjID0gUHlUdXBsZV9TaXplKGFyZ3YpOwotICAgICAgICBnZXRpdGVtID0gUHlUdXBsZV9HZXRJdGVtOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImV4ZWN2KCkgYXJnIDIgbXVzdCBiZSBhIHR1cGxlIG9yIGxpc3QiKTsKLSAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIGlmIChhcmdjIDwgMSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgImV4ZWN2KCkgYXJnIDIgbXVzdCBub3QgYmUgZW1wdHkiKTsKLSAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgYXJndmxpc3QgPSBQeU1lbV9ORVcoY2hhciAqLCBhcmdjKzEpOwotICAgIGlmIChhcmd2bGlzdCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7Ci0gICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOwotICAgIH0KLSAgICBmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKSB7Ci0gICAgICAgIGlmICghZnNjb252ZXJ0X3N0cmR1cCgoKmdldGl0ZW0pKGFyZ3YsIGkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFyZ3ZsaXN0W2ldKSkgewotICAgICAgICAgICAgZnJlZV9zdHJpbmdfYXJyYXkoYXJndmxpc3QsIGkpOwotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhlY3YoKSBhcmcgMiBtdXN0IGNvbnRhaW4gb25seSBzdHJpbmdzIik7Ci0gICAgICAgICAgICBQeV9ERUNSRUYob3BhdGgpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICAgICAgfQotICAgIH0KLSAgICBhcmd2bGlzdFthcmdjXSA9IE5VTEw7Ci0KLSAgICBleGVjdihwYXRoLCBhcmd2bGlzdCk7Ci0KLSAgICAvKiBJZiB3ZSBnZXQgaGVyZSBpdCdzIGRlZmluaXRlbHkgYW4gZXJyb3IgKi8KLQotICAgIGZyZWVfc3RyaW5nX2FycmF5KGFyZ3ZsaXN0LCBhcmdjKTsKLSAgICBQeV9ERUNSRUYob3BhdGgpOwotICAgIHJldHVybiBwb3NpeF9lcnJvcigpOwotfQotCisjaWYgZGVmaW5lZChIQVZFX0VYRUNWKSB8fCBkZWZpbmVkIChIQVZFX0ZFWEVDVkUpCiBzdGF0aWMgY2hhcioqCiBwYXJzZV9lbnZsaXN0KFB5T2JqZWN0KiBlbnYsIFB5X3NzaXplX3QgKmVudmNfcHRyKQogewpAQCAtMzYyOCw2ICs0MDQ3LDg3IEBACiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKK3N0YXRpYyBjaGFyKioKK3BhcnNlX2FyZ2xpc3QoUHlPYmplY3QqIGFyZ3YsIFB5X3NzaXplX3QgKmFyZ2MpCit7CisgICAgaW50IGk7CisgICAgY2hhciAqKmFyZ3ZsaXN0ID0gUHlNZW1fTkVXKGNoYXIgKiwgKmFyZ2MrMSk7CisgICAgaWYgKGFyZ3ZsaXN0ID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGZvciAoaSA9IDA7IGkgPCAqYXJnYzsgaSsrKSB7CisgICAgICAgIFB5T2JqZWN0KiBpdGVtID0gUHlTZXF1ZW5jZV9JVEVNKGFyZ3YsIGkpOworICAgICAgICBpZiAoaXRlbSA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICBpZiAoIWZzY29udmVydF9zdHJkdXAoaXRlbSwgJmFyZ3ZsaXN0W2ldKSkgeworICAgICAgICAgICAgUHlfREVDUkVGKGl0ZW0pOworICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKKyAgICB9CisgICAgYXJndmxpc3RbKmFyZ2NdID0gTlVMTDsKKyAgICByZXR1cm4gYXJndmxpc3Q7CitmYWlsOgorICAgICphcmdjID0gaTsKKyAgICBmcmVlX3N0cmluZ19hcnJheShhcmd2bGlzdCwgKmFyZ2MpOworICAgIHJldHVybiBOVUxMOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0VYRUNWCitQeURvY19TVFJWQVIocG9zaXhfZXhlY3ZfX2RvY19fLAorImV4ZWN2KHBhdGgsIGFyZ3MpXG5cblwKK0V4ZWN1dGUgYW4gZXhlY3V0YWJsZSBwYXRoIHdpdGggYXJndW1lbnRzLCByZXBsYWNpbmcgY3VycmVudCBwcm9jZXNzLlxuXAorXG5cCisgICAgcGF0aDogcGF0aCBvZiBleGVjdXRhYmxlIGZpbGVcblwKKyAgICBhcmdzOiB0dXBsZSBvciBsaXN0IG9mIHN0cmluZ3MiKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2V4ZWN2KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY2hhciAqcGF0aDsKKyAgICBQeU9iamVjdCAqYXJndjsKKyAgICBjaGFyICoqYXJndmxpc3Q7CisgICAgUHlfc3NpemVfdCBhcmdjOworCisgICAgLyogZXhlY3YgaGFzIHR3byBhcmd1bWVudHM6IChwYXRoLCBhcmd2KSwgd2hlcmUKKyAgICAgICBhcmd2IGlzIGEgbGlzdCBvciB0dXBsZSBvZiBzdHJpbmdzLiAqLworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJk86ZXhlY3YiLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZvcGF0aCwgJmFyZ3YpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisgICAgaWYgKCFQeUxpc3RfQ2hlY2soYXJndikgJiYgIVB5VHVwbGVfQ2hlY2soYXJndikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJleGVjdigpIGFyZyAyIG11c3QgYmUgYSB0dXBsZSBvciBsaXN0Iik7CisgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBhcmdjID0gUHlTZXF1ZW5jZV9TaXplKGFyZ3YpOworICAgIGlmIChhcmdjIDwgMSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgImV4ZWN2KCkgYXJnIDIgbXVzdCBub3QgYmUgZW1wdHkiKTsKKyAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgYXJndmxpc3QgPSBwYXJzZV9hcmdsaXN0KGFyZ3YsICZhcmdjKTsKKyAgICBpZiAoYXJndmxpc3QgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBleGVjdihwYXRoLCBhcmd2bGlzdCk7CisKKyAgICAvKiBJZiB3ZSBnZXQgaGVyZSBpdCdzIGRlZmluaXRlbHkgYW4gZXJyb3IgKi8KKworICAgIGZyZWVfc3RyaW5nX2FycmF5KGFyZ3ZsaXN0LCBhcmdjKTsKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworfQorCiBQeURvY19TVFJWQVIocG9zaXhfZXhlY3ZlX19kb2NfXywKICJleGVjdmUocGF0aCwgYXJncywgZW52KVxuXG5cCiBFeGVjdXRlIGEgcGF0aCB3aXRoIGFyZ3VtZW50cyBhbmQgZW52aXJvbm1lbnQsIHJlcGxhY2luZyBjdXJyZW50IHByb2Nlc3MuXG5cCkBAIC0zNjQ0LDkgKzQxNDQsNyBAQAogICAgIFB5T2JqZWN0ICphcmd2LCAqZW52OwogICAgIGNoYXIgKiphcmd2bGlzdDsKICAgICBjaGFyICoqZW52bGlzdDsKLSAgICBQeV9zc2l6ZV90IGksIGFyZ2MsIGVudmM7Ci0gICAgUHlPYmplY3QgKigqZ2V0aXRlbSkoUHlPYmplY3QgKiwgUHlfc3NpemVfdCk7Ci0gICAgUHlfc3NpemVfdCBsYXN0YXJnID0gMDsKKyAgICBQeV9zc2l6ZV90IGFyZ2MsIGVudmM7CiAKICAgICAvKiBleGVjdmUgaGFzIHRocmVlIGFyZ3VtZW50czogKHBhdGgsIGFyZ3YsIGVudiksIHdoZXJlCiAgICAgICAgYXJndiBpcyBhIGxpc3Qgb3IgdHVwbGUgb2Ygc3RyaW5ncyBhbmQgZW52IGlzIGEgZGljdGlvbmFyeQpAQCAtMzY1Nyw0MCArNDE1NSwyMiBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAmb3BhdGgsICZhcmd2LCAmZW52KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOwotICAgIGlmIChQeUxpc3RfQ2hlY2soYXJndikpIHsKLSAgICAgICAgYXJnYyA9IFB5TGlzdF9TaXplKGFyZ3YpOwotICAgICAgICBnZXRpdGVtID0gUHlMaXN0X0dldEl0ZW07Ci0gICAgfQotICAgIGVsc2UgaWYgKFB5VHVwbGVfQ2hlY2soYXJndikpIHsKLSAgICAgICAgYXJnYyA9IFB5VHVwbGVfU2l6ZShhcmd2KTsKLSAgICAgICAgZ2V0aXRlbSA9IFB5VHVwbGVfR2V0SXRlbTsKLSAgICB9Ci0gICAgZWxzZSB7CisgICAgaWYgKCFQeUxpc3RfQ2hlY2soYXJndikgJiYgIVB5VHVwbGVfQ2hlY2soYXJndikpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJleGVjdmUoKSBhcmcgMiBtdXN0IGJlIGEgdHVwbGUgb3IgbGlzdCIpOwogICAgICAgICBnb3RvIGZhaWxfMDsKICAgICB9CisgICAgYXJnYyA9IFB5U2VxdWVuY2VfU2l6ZShhcmd2KTsKICAgICBpZiAoIVB5TWFwcGluZ19DaGVjayhlbnYpKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAiZXhlY3ZlKCkgYXJnIDMgbXVzdCBiZSBhIG1hcHBpbmcgb2JqZWN0Iik7CiAgICAgICAgIGdvdG8gZmFpbF8wOwogICAgIH0KIAotICAgIGFyZ3ZsaXN0ID0gUHlNZW1fTkVXKGNoYXIgKiwgYXJnYysxKTsKKyAgICBhcmd2bGlzdCA9IHBhcnNlX2FyZ2xpc3QoYXJndiwgJmFyZ2MpOwogICAgIGlmIChhcmd2bGlzdCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIGdvdG8gZmFpbF8wOwogICAgIH0KLSAgICBmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKSB7Ci0gICAgICAgIGlmICghZnNjb252ZXJ0X3N0cmR1cCgoKmdldGl0ZW0pKGFyZ3YsIGkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFyZ3ZsaXN0W2ldKSkKLSAgICAgICAgewotICAgICAgICAgICAgbGFzdGFyZyA9IGk7Ci0gICAgICAgICAgICBnb3RvIGZhaWxfMTsKLSAgICAgICAgfQotICAgIH0KLSAgICBsYXN0YXJnID0gYXJnYzsKLSAgICBhcmd2bGlzdFthcmdjXSA9IE5VTEw7CiAKICAgICBlbnZsaXN0ID0gcGFyc2VfZW52bGlzdChlbnYsICZlbnZjKTsKICAgICBpZiAoZW52bGlzdCA9PSBOVUxMKQpAQCAtMzcwNiwxMyArNDE4Niw2OSBAQAogICAgICAgICBQeU1lbV9ERUwoZW52bGlzdFtlbnZjXSk7CiAgICAgUHlNZW1fREVMKGVudmxpc3QpOwogICBmYWlsXzE6Ci0gICAgZnJlZV9zdHJpbmdfYXJyYXkoYXJndmxpc3QsIGxhc3RhcmcpOworICAgIGZyZWVfc3RyaW5nX2FycmF5KGFyZ3ZsaXN0LCBhcmdjKTsKICAgZmFpbF8wOgogICAgIFB5X0RFQ1JFRihvcGF0aCk7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAjZW5kaWYgLyogSEFWRV9FWEVDViAqLwogCisjaWZkZWYgSEFWRV9GRVhFQ1ZFCitQeURvY19TVFJWQVIocG9zaXhfZmV4ZWN2ZV9fZG9jX18sCisiZmV4ZWN2ZShmZCwgYXJncywgZW52KVxuXG5cCitFeGVjdXRlIHRoZSBwcm9ncmFtIHNwZWNpZmllZCBieSBhIGZpbGUgZGVzY3JpcHRvciB3aXRoIGFyZ3VtZW50cyBhbmRcblwKK2Vudmlyb25tZW50LCByZXBsYWNpbmcgdGhlIGN1cnJlbnQgcHJvY2Vzcy5cblwKK1xuXAorICAgIGZkOiBmaWxlIGRlc2NyaXB0b3Igb2YgZXhlY3V0YWJsZVxuXAorICAgIGFyZ3M6IHR1cGxlIG9yIGxpc3Qgb2YgYXJndW1lbnRzXG5cCisgICAgZW52OiBkaWN0aW9uYXJ5IG9mIHN0cmluZ3MgbWFwcGluZyB0byBzdHJpbmdzIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mZXhlY3ZlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgZmQ7CisgICAgUHlPYmplY3QgKmFyZ3YsICplbnY7CisgICAgY2hhciAqKmFyZ3ZsaXN0OworICAgIGNoYXIgKiplbnZsaXN0OworICAgIFB5X3NzaXplX3QgYXJnYywgZW52YzsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU9POmZleGVjdmUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmZmQsICZhcmd2LCAmZW52KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKCFQeUxpc3RfQ2hlY2soYXJndikgJiYgIVB5VHVwbGVfQ2hlY2soYXJndikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJmZXhlY3ZlKCkgYXJnIDIgbXVzdCBiZSBhIHR1cGxlIG9yIGxpc3QiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGFyZ2MgPSBQeVNlcXVlbmNlX1NpemUoYXJndik7CisgICAgaWYgKCFQeU1hcHBpbmdfQ2hlY2soZW52KSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgImZleGVjdmUoKSBhcmcgMyBtdXN0IGJlIGEgbWFwcGluZyBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgYXJndmxpc3QgPSBwYXJzZV9hcmdsaXN0KGFyZ3YsICZhcmdjKTsKKyAgICBpZiAoYXJndmxpc3QgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBlbnZsaXN0ID0gcGFyc2VfZW52bGlzdChlbnYsICZlbnZjKTsKKyAgICBpZiAoZW52bGlzdCA9PSBOVUxMKQorICAgICAgICBnb3RvIGZhaWw7CisKKyAgICBmZXhlY3ZlKGZkLCBhcmd2bGlzdCwgZW52bGlzdCk7CisKKyAgICAvKiBJZiB3ZSBnZXQgaGVyZSBpdCdzIGRlZmluaXRlbHkgYW4gZXJyb3IgKi8KKworICAgICh2b2lkKSBwb3NpeF9lcnJvcigpOworCisgICAgd2hpbGUgKC0tZW52YyA+PSAwKQorICAgICAgICBQeU1lbV9ERUwoZW52bGlzdFtlbnZjXSk7CisgICAgUHlNZW1fREVMKGVudmxpc3QpOworICBmYWlsOgorICAgIGZyZWVfc3RyaW5nX2FycmF5KGFyZ3ZsaXN0LCBhcmdjKTsKKyAgICByZXR1cm4gTlVMTDsKK30KKyNlbmRpZiAvKiBIQVZFX0ZFWEVDVkUgKi8KIAogI2lmZGVmIEhBVkVfU1BBV05WCiBQeURvY19TVFJWQVIocG9zaXhfc3Bhd252X19kb2NfXywKQEAgLTQxNTMsNiArNDY4OSw1NzQgQEAKIH0KICNlbmRpZgogCisjaWZkZWYgSEFWRV9TQ0hFRF9ICisKKyNpZmRlZiBIQVZFX1NDSEVEX0dFVF9QUklPUklUWV9NQVgKKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX2dldF9wcmlvcml0eV9tYXhfX2RvY19fLAorInNjaGVkX2dldF9wcmlvcml0eV9tYXgocG9saWN5KVxuXG5cCitHZXQgdGhlIG1heGltdW0gc2NoZWR1bGluZyBwcmlvcml0eSBmb3IgKnBvbGljeSouIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zY2hlZF9nZXRfcHJpb3JpdHlfbWF4KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgcG9saWN5LCBtYXg7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6c2NoZWRfZ2V0X3ByaW9yaXR5X21heCIsICZwb2xpY3kpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBtYXggPSBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4KHBvbGljeSk7CisgICAgaWYgKG1heCA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcobWF4KTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX2dldF9wcmlvcml0eV9taW5fX2RvY19fLAorInNjaGVkX2dldF9wcmlvcml0eV9taW4ocG9saWN5KVxuXG5cCitHZXQgdGhlIG1pbmltdW0gc2NoZWR1bGluZyBwcmlvcml0eSBmb3IgKnBvbGljeSouIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zY2hlZF9nZXRfcHJpb3JpdHlfbWluKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgcG9saWN5LCBtaW47CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6c2NoZWRfZ2V0X3ByaW9yaXR5X21pbiIsICZwb2xpY3kpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBtaW4gPSBzY2hlZF9nZXRfcHJpb3JpdHlfbWluKHBvbGljeSk7CisgICAgaWYgKG1pbiA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcobWluKTsKK30KKworI2VuZGlmIC8qIEhBVkVfU0NIRURfR0VUX1BSSU9SSVRZX01BWCAqLworCisjaWZkZWYgSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIKKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX2dldHNjaGVkdWxlcl9fZG9jX18sCisic2NoZWRfZ2V0c2NoZWR1bGVyKHBpZClcblxuXAorR2V0IHRoZSBzY2hlZHVsaW5nIHBvbGljeSBmb3IgdGhlIHByb2Nlc3Mgd2l0aCBhIFBJRCBvZiAqcGlkKi5cblwKK1Bhc3NpbmcgYSBQSUQgb2YgMCByZXR1cm5zIHRoZSBzY2hlZHVsaW5nIHBvbGljeSBmb3IgdGhlIGNhbGxpbmcgcHJvY2Vzcy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3NjaGVkX2dldHNjaGVkdWxlcihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcGlkX3QgcGlkOworICAgIGludCBwb2xpY3k7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgX1B5X1BBUlNFX1BJRCAiOnNjaGVkX2dldHNjaGVkdWxlciIsICZwaWQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwb2xpY3kgPSBzY2hlZF9nZXRzY2hlZHVsZXIocGlkKTsKKyAgICBpZiAocG9saWN5IDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhwb2xpY3kpOworfQorCisjZW5kaWYKKworI2lmIGRlZmluZWQoSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIpIHx8IGRlZmluZWQoSEFWRV9TQ0hFRF9TRVRQQVJBTSkKKworc3RhdGljIFB5T2JqZWN0ICoKK3NjaGVkX3BhcmFtX25ldyhQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQoreworICAgIFB5T2JqZWN0ICpyZXMsICpwcmlvcml0eTsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InNjaGVkX3ByaW9yaXR5IiwgTlVMTH07CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsICJPOnNjaGVkX3BhcmFtIiwga3dsaXN0LCAmcHJpb3JpdHkpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXMgPSBQeVN0cnVjdFNlcXVlbmNlX05ldyh0eXBlKTsKKyAgICBpZiAoIXJlcykKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfSU5DUkVGKHByaW9yaXR5KTsKKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHJlcywgMCwgcHJpb3JpdHkpOworICAgIHJldHVybiByZXM7Cit9CisKK1B5RG9jX1NUUlZBUihzY2hlZF9wYXJhbV9fZG9jX18sCisic2NoZWRfcGFyYW0oc2NoZWRfcHJpb3JpdHkpOiBBIHNjaGVkdWxpbmcgcGFyYW1ldGVyLlxuXG5cCitDdXJyZW50IGhhcyBvbmx5IG9uZSBmaWVsZDogc2NoZWRfcHJpb3JpdHkiKTsKKworc3RhdGljIFB5U3RydWN0U2VxdWVuY2VfRmllbGQgc2NoZWRfcGFyYW1fZmllbGRzW10gPSB7CisgICAgeyJzY2hlZF9wcmlvcml0eSIsICJ0aGUgc2NoZWR1bGluZyBwcmlvcml0eSJ9LAorICAgIHswfQorfTsKKworc3RhdGljIFB5U3RydWN0U2VxdWVuY2VfRGVzYyBzY2hlZF9wYXJhbV9kZXNjID0geworICAgICJzY2hlZF9wYXJhbSIsIC8qIG5hbWUgKi8KKyAgICBzY2hlZF9wYXJhbV9fZG9jX18sIC8qIGRvYyAqLworICAgIHNjaGVkX3BhcmFtX2ZpZWxkcywKKyAgICAxCit9OworCitzdGF0aWMgaW50Citjb252ZXJ0X3NjaGVkX3BhcmFtKFB5T2JqZWN0ICpwYXJhbSwgc3RydWN0IHNjaGVkX3BhcmFtICpyZXMpCit7CisgICAgbG9uZyBwcmlvcml0eTsKKworICAgIGlmIChQeV9UWVBFKHBhcmFtKSAhPSAmU2NoZWRQYXJhbVR5cGUpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIm11c3QgaGF2ZSBhIHNjaGVkX3BhcmFtIG9iamVjdCIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgcHJpb3JpdHkgPSBQeUxvbmdfQXNMb25nKFB5U3RydWN0U2VxdWVuY2VfR0VUX0lURU0ocGFyYW0sIDApKTsKKyAgICBpZiAocHJpb3JpdHkgPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKHByaW9yaXR5ID4gSU5UX01BWCB8fCBwcmlvcml0eSA8IElOVF9NSU4pIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsICJzY2hlZF9wcmlvcml0eSBvdXQgb2YgcmFuZ2UiKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIHJlcy0+c2NoZWRfcHJpb3JpdHkgPSBQeV9TQUZFX0RPV05DQVNUKHByaW9yaXR5LCBsb25nLCBpbnQpOworICAgIHJldHVybiAxOworfQorCisjZW5kaWYKKworI2lmZGVmIEhBVkVfU0NIRURfU0VUU0NIRURVTEVSCisKK1B5RG9jX1NUUlZBUihwb3NpeF9zY2hlZF9zZXRzY2hlZHVsZXJfX2RvY19fLAorInNjaGVkX3NldHNjaGVkdWxlcihwaWQsIHBvbGljeSwgcGFyYW0pXG5cblwKK1NldCB0aGUgc2NoZWR1bGluZyBwb2xpY3ksICpwb2xpY3kqLCBmb3IgKnBpZCouXG5cCitJZiAqcGlkKiBpcyAwLCB0aGUgY2FsbGluZyBwcm9jZXNzIGlzIGNoYW5nZWQuXG5cCisqcGFyYW0qIGlzIGFuIGluc3RhbmNlIG9mIHNjaGVkX3BhcmFtLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfc2NoZWRfc2V0c2NoZWR1bGVyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBwaWRfdCBwaWQ7CisgICAgaW50IHBvbGljeTsKKyAgICBzdHJ1Y3Qgc2NoZWRfcGFyYW0gcGFyYW07CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgX1B5X1BBUlNFX1BJRCAiaU8mOnNjaGVkX3NldHNjaGVkdWxlciIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZwaWQsICZwb2xpY3ksICZjb252ZXJ0X3NjaGVkX3BhcmFtLCAmcGFyYW0pKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIC8qCisgICAgKiogc2NoZWRfc2V0c2NoZWR1bGVyKCkgcmV0dXJucyAwIGluIExpbnV4LCBidXQgdGhlIHByZXZpb3VzCisgICAgKiogc2NoZWR1bGluZyBwb2xpY3kgdW5kZXIgU29sYXJpcy9JbGx1bW9zLCBhbmQgb3RoZXJzLgorICAgICoqIE9uIGVycm9yLCAtMSBpcyByZXR1cm5lZCBpbiBhbGwgT3BlcmF0aW5nIFN5c3RlbXMuCisgICAgKi8KKyAgICBpZiAoc2NoZWRfc2V0c2NoZWR1bGVyKHBpZCwgcG9saWN5LCAmcGFyYW0pID09IC0xKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworI2VuZGlmCisKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVFBBUkFNCisKK1B5RG9jX1NUUlZBUihwb3NpeF9zY2hlZF9nZXRwYXJhbV9fZG9jX18sCisic2NoZWRfZ2V0cGFyYW0ocGlkKSAtPiBzY2hlZF9wYXJhbVxuXG5cCitSZXR1cm5zIHNjaGVkdWxpbmcgcGFyYW1ldGVycyBmb3IgdGhlIHByb2Nlc3Mgd2l0aCAqcGlkKiBhcyBhbiBpbnN0YW5jZSBvZiB0aGVcblwKK3NjaGVkX3BhcmFtIGNsYXNzLiBBIFBJRCBvZiAwIG1lYW5zIHRoZSBjYWxsaW5nIHByb2Nlc3MuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zY2hlZF9nZXRwYXJhbShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcGlkX3QgcGlkOworICAgIHN0cnVjdCBzY2hlZF9wYXJhbSBwYXJhbTsKKyAgICBQeU9iamVjdCAqcmVzLCAqcHJpb3JpdHk7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgX1B5X1BBUlNFX1BJRCAiOnNjaGVkX2dldHBhcmFtIiwgJnBpZCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzY2hlZF9nZXRwYXJhbShwaWQsICZwYXJhbSkpCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIHJlcyA9IFB5U3RydWN0U2VxdWVuY2VfTmV3KCZTY2hlZFBhcmFtVHlwZSk7CisgICAgaWYgKCFyZXMpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHByaW9yaXR5ID0gUHlMb25nX0Zyb21Mb25nKHBhcmFtLnNjaGVkX3ByaW9yaXR5KTsKKyAgICBpZiAoIXByaW9yaXR5KSB7CisgICAgICAgIFB5X0RFQ1JFRihyZXMpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXMsIDAsIHByaW9yaXR5KTsKKyAgICByZXR1cm4gcmVzOworfQorCitQeURvY19TVFJWQVIocG9zaXhfc2NoZWRfc2V0cGFyYW1fX2RvY19fLAorInNjaGVkX3NldHBhcmFtKHBpZCwgcGFyYW0pXG5cblwKK1NldCBzY2hlZHVsaW5nIHBhcmFtZXRlcnMgZm9yIGEgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKi5cblwKK0EgUElEIG9mIDAgbWVhbnMgdGhlIGNhbGxpbmcgcHJvY2Vzcy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3NjaGVkX3NldHBhcmFtKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBwaWRfdCBwaWQ7CisgICAgc3RydWN0IHNjaGVkX3BhcmFtIHBhcmFtOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIF9QeV9QQVJTRV9QSUQgIk8mOnNjaGVkX3NldHBhcmFtIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJnBpZCwgJmNvbnZlcnRfc2NoZWRfcGFyYW0sICZwYXJhbSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzY2hlZF9zZXRwYXJhbShwaWQsICZwYXJhbSkpCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorCisjZW5kaWYKKworI2lmZGVmIEhBVkVfU0NIRURfUlJfR0VUX0lOVEVSVkFMCisKK1B5RG9jX1NUUlZBUihwb3NpeF9zY2hlZF9ycl9nZXRfaW50ZXJ2YWxfX2RvY19fLAorInNjaGVkX3JyX2dldF9pbnRlcnZhbChwaWQpIC0+IGZsb2F0XG5cblwKK1JldHVybiB0aGUgcm91bmQtcm9iaW4gcXVhbnR1bSBmb3IgdGhlIHByb2Nlc3Mgd2l0aCBQSUQgKnBpZCogaW4gc2Vjb25kcy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3NjaGVkX3JyX2dldF9pbnRlcnZhbChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcGlkX3QgcGlkOworICAgIHN0cnVjdCB0aW1lc3BlYyBpbnRlcnZhbDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBfUHlfUEFSU0VfUElEICI6c2NoZWRfcnJfZ2V0X2ludGVydmFsIiwgJnBpZCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzY2hlZF9ycl9nZXRfaW50ZXJ2YWwocGlkLCAmaW50ZXJ2YWwpKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKChkb3VibGUpaW50ZXJ2YWwudHZfc2VjICsgMWUtOSppbnRlcnZhbC50dl9uc2VjKTsKK30KKworI2VuZGlmCisKK1B5RG9jX1NUUlZBUihwb3NpeF9zY2hlZF95aWVsZF9fZG9jX18sCisic2NoZWRfeWllbGQoKVxuXG5cCitWb2x1bnRhcmlseSByZWxpbnF1aXNoIHRoZSBDUFUuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zY2hlZF95aWVsZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm5vYXJncykKK3sKKyAgICBpZiAoc2NoZWRfeWllbGQoKSkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVEFGRklOSVRZCisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBQeU9iamVjdF9IRUFEOworICAgIFB5X3NzaXplX3Qgc2l6ZTsKKyAgICBpbnQgbmNwdXM7CisgICAgY3B1X3NldF90ICpzZXQ7Cit9IFB5X2NwdV9zZXQ7CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgY3B1X3NldF90eXBlOworCitzdGF0aWMgdm9pZAorY3B1X3NldF9kZWFsbG9jKFB5X2NwdV9zZXQgKnNldCkKK3sKKyAgICBhc3NlcnQoc2V0LT5zZXQpOworICAgIENQVV9GUkVFKHNldC0+c2V0KTsKKyAgICBQeV9UWVBFKHNldCktPnRwX2ZyZWUoc2V0KTsKK30KKworc3RhdGljIFB5X2NwdV9zZXQgKgorbWFrZV9uZXdfY3B1X3NldChQeVR5cGVPYmplY3QgKnR5cGUsIFB5X3NzaXplX3Qgc2l6ZSkKK3sKKyAgICBQeV9jcHVfc2V0ICpzZXQ7CisKKyAgICBpZiAoc2l6ZSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJuZWdhdGl2ZSBzaXplIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBzZXQgPSAoUHlfY3B1X3NldCAqKXR5cGUtPnRwX2FsbG9jKHR5cGUsIDApOworICAgIGlmICghc2V0KQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBzZXQtPm5jcHVzID0gc2l6ZTsKKyAgICBzZXQtPnNpemUgPSBDUFVfQUxMT0NfU0laRShzaXplKTsKKyAgICBzZXQtPnNldCA9IENQVV9BTExPQyhzaXplKTsKKyAgICBpZiAoIXNldC0+c2V0KSB7CisgICAgICAgIHR5cGUtPnRwX2ZyZWUoc2V0KTsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIENQVV9aRVJPX1Moc2V0LT5zaXplLCBzZXQtPnNldCk7CisgICAgcmV0dXJuIHNldDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2NwdV9zZXRfbmV3KFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCit7CisgICAgaW50IHNpemU7CisKKyAgICBpZiAoIV9QeUFyZ19Ob0tleXdvcmRzKCJjcHVfc2V0KCkiLCBrd2FyZ3MpIHx8CisgICAgICAgICFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpOmNwdV9zZXQiLCAmc2l6ZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiAoUHlPYmplY3QgKiltYWtlX25ld19jcHVfc2V0KHR5cGUsIHNpemUpOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorY3B1X3NldF9yZXByKFB5X2NwdV9zZXQgKnNldCkKK3sKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjxjcHVfc2V0IHdpdGggJWxpIGVudHJpZXM+Iiwgc2V0LT5uY3B1cyk7Cit9CisKK3N0YXRpYyBQeV9zc2l6ZV90CitjcHVfc2V0X2xlbihQeV9jcHVfc2V0ICpzZXQpCit7CisgICAgcmV0dXJuIHNldC0+bmNwdXM7Cit9CisKK3N0YXRpYyBpbnQKK19nZXRfY3B1KFB5X2NwdV9zZXQgKnNldCwgY29uc3QgY2hhciAqcmVxdWVzdGVyLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgY3B1OworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCByZXF1ZXN0ZXIsICZjcHUpKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKGNwdSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJjcHUgPCAwIG5vdCB2YWxpZCIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmIChjcHUgPj0gc2V0LT5uY3B1cykgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgImNwdSB0b28gbGFyZ2UgZm9yIHNldCIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHJldHVybiBjcHU7Cit9CisKK1B5RG9jX1NUUlZBUihjcHVfc2V0X3NldF9kb2MsCisiY3B1X3NldC5zZXQoaSlcblxuXAorQWRkIENQVSAqaSogdG8gdGhlIHNldC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2NwdV9zZXRfc2V0KFB5X2NwdV9zZXQgKnNldCwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IGNwdSA9IF9nZXRfY3B1KHNldCwgIml8c2V0IiwgYXJncyk7CisgICAgaWYgKGNwdSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgQ1BVX1NFVF9TKGNwdSwgc2V0LT5zaXplLCBzZXQtPnNldCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihjcHVfc2V0X2NvdW50X2RvYywKKyJjcHVfc2V0LmNvdW50KCkgLT4gaW50XG5cblwKK1JldHVybiB0aGUgbnVtYmVyIG9mIENQVXMgYWN0aXZlIGluIHRoZSBzZXQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitjcHVfc2V0X2NvdW50KFB5X2NwdV9zZXQgKnNldCwgUHlPYmplY3QgKm5vYXJncykKK3sKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKENQVV9DT1VOVF9TKHNldC0+c2l6ZSwgc2V0LT5zZXQpKTsKK30KKworUHlEb2NfU1RSVkFSKGNwdV9zZXRfY2xlYXJfZG9jLAorImNwdV9zZXQuY2xlYXIoaSlcblxuXAorUmVtb3ZlIENQVSAqaSogZnJvbSB0aGUgc2V0LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorY3B1X3NldF9jbGVhcihQeV9jcHVfc2V0ICpzZXQsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBjcHUgPSBfZ2V0X2NwdShzZXQsICJpfGNsZWFyIiwgYXJncyk7CisgICAgaWYgKGNwdSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgQ1BVX0NMUl9TKGNwdSwgc2V0LT5zaXplLCBzZXQtPnNldCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihjcHVfc2V0X2lzc2V0X2RvYywKKyJjcHVfc2V0Lmlzc2V0KGkpIC0+IGJvb2xcblxuXAorVGVzdCBpZiBDUFUgKmkqIGlzIGluIHRoZSBzZXQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitjcHVfc2V0X2lzc2V0KFB5X2NwdV9zZXQgKnNldCwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IGNwdSA9IF9nZXRfY3B1KHNldCwgIml8aXNzZXQiLCBhcmdzKTsKKyAgICBpZiAoY3B1ID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoQ1BVX0lTU0VUX1MoY3B1LCBzZXQtPnNpemUsIHNldC0+c2V0KSkKKyAgICAgICAgUHlfUkVUVVJOX1RSVUU7CisgICAgUHlfUkVUVVJOX0ZBTFNFOworfQorCitQeURvY19TVFJWQVIoY3B1X3NldF96ZXJvX2RvYywKKyJjcHVfc2V0Lnplcm8oKVxuXG5cCitDbGVhciB0aGUgY3B1X3NldC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2NwdV9zZXRfemVybyhQeV9jcHVfc2V0ICpzZXQsIFB5T2JqZWN0ICpub2FyZ3MpCit7CisgICAgQ1BVX1pFUk9fUyhzZXQtPnNpemUsIHNldC0+c2V0KTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2NwdV9zZXRfcmljaGNvbXBhcmUoUHlfY3B1X3NldCAqc2V0LCBQeV9jcHVfc2V0ICpvdGhlciwgaW50IG9wKQoreworICAgIGludCBlcTsKKworICAgIGlmICgob3AgIT0gUHlfRVEgJiYgb3AgIT0gUHlfTkUpIHx8IFB5X1RZUEUob3RoZXIpICE9ICZjcHVfc2V0X3R5cGUpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKKworICAgIGVxID0gc2V0LT5uY3B1cyA9PSBvdGhlci0+bmNwdXMgJiYgQ1BVX0VRVUFMX1Moc2V0LT5zaXplLCBzZXQtPnNldCwgb3RoZXItPnNldCk7CisgICAgaWYgKChvcCA9PSBQeV9FUSkgPyBlcSA6ICFlcSkKKyAgICAgICAgUHlfUkVUVVJOX1RSVUU7CisgICAgZWxzZQorICAgICAgICBQeV9SRVRVUk5fRkFMU0U7Cit9CisKKyNkZWZpbmUgQ1BVX1NFVF9CSU5PUChuYW1lLCBvcCkgXAorICAgIHN0YXRpYyBQeU9iamVjdCAqIFwKKyAgICBkb19jcHVfc2V0XyMjbmFtZShQeV9jcHVfc2V0ICpsZWZ0LCBQeV9jcHVfc2V0ICpyaWdodCwgUHlfY3B1X3NldCAqcmVzKSB7IFwKKyAgICAgICAgaWYgKHJlcykgeyBcCisgICAgICAgICAgICBQeV9JTkNSRUYocmVzKTsgXAorICAgICAgICB9IFwKKyAgICAgICAgZWxzZSB7IFwKKyAgICAgICAgICAgIHJlcyA9IG1ha2VfbmV3X2NwdV9zZXQoJmNwdV9zZXRfdHlwZSwgbGVmdC0+bmNwdXMpOyBcCisgICAgICAgICAgICBpZiAoIXJlcykgXAorICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOyBcCisgICAgICAgIH0gXAorICAgICAgICBpZiAoUHlfVFlQRShyaWdodCkgIT0gJmNwdV9zZXRfdHlwZSB8fCBsZWZ0LT5uY3B1cyAhPSByaWdodC0+bmNwdXMpIHsgXAorICAgICAgICAgICAgUHlfREVDUkVGKHJlcyk7IFwKKyAgICAgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsgXAorICAgICAgICB9IFwKKyAgICAgICAgYXNzZXJ0KGxlZnQtPnNpemUgPT0gcmlnaHQtPnNpemUgJiYgcmlnaHQtPnNpemUgPT0gcmVzLT5zaXplKTsgXAorICAgICAgICBvcChyZXMtPnNpemUsIHJlcy0+c2V0LCBsZWZ0LT5zZXQsIHJpZ2h0LT5zZXQpOyBcCisgICAgICAgIHJldHVybiAoUHlPYmplY3QgKilyZXM7IFwKKyAgICB9IFwKKyAgICBzdGF0aWMgUHlPYmplY3QgKiBcCisgICAgY3B1X3NldF8jI25hbWUoUHlfY3B1X3NldCAqbGVmdCwgUHlfY3B1X3NldCAqcmlnaHQpIHsgXAorICAgICAgICByZXR1cm4gZG9fY3B1X3NldF8jI25hbWUobGVmdCwgcmlnaHQsIE5VTEwpOyBcCisgICAgfSBcCisgICAgc3RhdGljIFB5T2JqZWN0ICogXAorICAgIGNwdV9zZXRfaSMjbmFtZShQeV9jcHVfc2V0ICpsZWZ0LCBQeV9jcHVfc2V0ICpyaWdodCkgeyBcCisgICAgICAgIHJldHVybiBkb19jcHVfc2V0XyMjbmFtZShsZWZ0LCByaWdodCwgbGVmdCk7IFwKKyAgICB9IFwKKworQ1BVX1NFVF9CSU5PUChhbmQsIENQVV9BTkRfUykKK0NQVV9TRVRfQklOT1Aob3IsIENQVV9PUl9TKQorQ1BVX1NFVF9CSU5PUCh4b3IsIENQVV9YT1JfUykKKyN1bmRlZiBDUFVfU0VUX0JJTk9QCisKK1B5RG9jX1NUUlZBUihjcHVfc2V0X2RvYywKKyJjcHVfc2V0KHNpemUpXG5cblwKK0NyZWF0ZSBhbiBlbXB0eSBtYXNrIG9mIENQVXMuIik7CisKK3N0YXRpYyBQeU51bWJlck1ldGhvZHMgY3B1X3NldF9hc19udW1iZXIgPSB7CisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9hZGQqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfc3VidHJhY3QqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfbXVsdGlwbHkqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfcmVtYWluZGVyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2Rpdm1vZCovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9wb3dlciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9uZWdhdGl2ZSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9wb3NpdGl2ZSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9hYnNvbHV0ZSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9ib29sKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2ludmVydCovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9sc2hpZnQqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfcnNoaWZ0Ki8KKyAgICAoYmluYXJ5ZnVuYyljcHVfc2V0X2FuZCwgICAgICAgICAgICAvKm5iX2FuZCovCisgICAgKGJpbmFyeWZ1bmMpY3B1X3NldF94b3IsICAgICAgICAgICAgLypuYl94b3IqLworICAgIChiaW5hcnlmdW5jKWNwdV9zZXRfb3IsICAgICAgICAgICAgIC8qbmJfb3IqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfaW50Ki8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX3Jlc2VydmVkKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2Zsb2F0Ki8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2lucGxhY2VfYWRkKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2lucGxhY2Vfc3VidHJhY3QqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfaW5wbGFjZV9tdWx0aXBseSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9pbnBsYWNlX3JlbWFpbmRlciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9pbnBsYWNlX3Bvd2VyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2lucGxhY2VfbHNoaWZ0Ki8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2lucGxhY2VfcnNoaWZ0Ki8KKyAgICAoYmluYXJ5ZnVuYyljcHVfc2V0X2lhbmQsICAgICAgICAgICAvKm5iX2lucGxhY2VfYW5kKi8KKyAgICAoYmluYXJ5ZnVuYyljcHVfc2V0X2l4b3IsICAgICAgICAgICAvKm5iX2lucGxhY2VfeG9yKi8KKyAgICAoYmluYXJ5ZnVuYyljcHVfc2V0X2lvciwgICAgICAgICAgICAvKm5iX2lucGxhY2Vfb3IqLworfTsKKworc3RhdGljIFB5U2VxdWVuY2VNZXRob2RzIGNwdV9zZXRfYXNfc2VxdWVuY2UgPSB7CisgICAgKGxlbmZ1bmMpY3B1X3NldF9sZW4sICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNxX2xlbmd0aCAqLworfTsKKworc3RhdGljIFB5TWV0aG9kRGVmIGNwdV9zZXRfbWV0aG9kc1tdID0geworICAgIHsiY2xlYXIiLCAoUHlDRnVuY3Rpb24pY3B1X3NldF9jbGVhciwgTUVUSF9WQVJBUkdTLCBjcHVfc2V0X2NsZWFyX2RvY30sCisgICAgeyJjb3VudCIsIChQeUNGdW5jdGlvbiljcHVfc2V0X2NvdW50LCBNRVRIX05PQVJHUywgY3B1X3NldF9jb3VudF9kb2N9LAorICAgIHsiaXNzZXQiLCAoUHlDRnVuY3Rpb24pY3B1X3NldF9pc3NldCwgTUVUSF9WQVJBUkdTLCBjcHVfc2V0X2lzc2V0X2RvY30sCisgICAgeyJzZXQiLCAoUHlDRnVuY3Rpb24pY3B1X3NldF9zZXQsIE1FVEhfVkFSQVJHUywgY3B1X3NldF9zZXRfZG9jfSwKKyAgICB7Inplcm8iLCAoUHlDRnVuY3Rpb24pY3B1X3NldF96ZXJvLCBNRVRIX05PQVJHUywgY3B1X3NldF96ZXJvX2RvY30sCisgICAge05VTEwsIE5VTEx9ICAgLyogc2VudGluZWwgKi8KK307CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgY3B1X3NldF90eXBlID0geworICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVCgmUHlUeXBlX1R5cGUsIDApCisgICAgInBvc2l4LmNwdV9zZXQiLCAgICAgICAgICAgICAgICAgICAgLyogdHBfbmFtZSAqLworICAgIHNpemVvZihQeV9jcHVfc2V0KSwgICAgICAgICAgICAgICAgIC8qIHRwX2Jhc2ljc2l6ZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZW1zaXplICovCisgICAgLyogbWV0aG9kcyAqLworICAgIChkZXN0cnVjdG9yKWNwdV9zZXRfZGVhbGxvYywgICAgICAgIC8qIHRwX2RlYWxsb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9wcmludCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVzZXJ2ZWQgKi8KKyAgICAocmVwcmZ1bmMpY3B1X3NldF9yZXByLCAgICAgICAgICAgICAvKiB0cF9yZXByICovCisgICAgJmNwdV9zZXRfYXNfbnVtYmVyLCAgICAgICAgICAgICAgICAgLyogdHBfYXNfbnVtYmVyICovCisgICAgJmNwdV9zZXRfYXNfc2VxdWVuY2UsICAgICAgICAgICAgICAgLyogdHBfYXNfc2VxdWVuY2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19tYXBwaW5nICovCisgICAgUHlPYmplY3RfSGFzaE5vdEltcGxlbWVudGVkLCAgICAgICAgLyogdHBfaGFzaCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KKyAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwgICAgICAgICAgICAvKiB0cF9nZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfYnVmZmVyICovCisgICAgUHlfVFBGTEFHU19ERUZBVUxULCAgICAgICAgICAgICAgICAgLyogdHBfZmxhZ3MgKi8KKyAgICBjcHVfc2V0X2RvYywgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF90cmF2ZXJzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NsZWFyICovCisgICAgKHJpY2hjbXBmdW5jKWNwdV9zZXRfcmljaGNvbXBhcmUsICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLworICAgIGNwdV9zZXRfbWV0aG9kcywgICAgICAgICAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYmFzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3QgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9nZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9zZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaW5pdCAqLworICAgIFB5VHlwZV9HZW5lcmljQWxsb2MsICAgICAgICAgICAgICAgIC8qIHRwX2FsbG9jICovCisgICAgY3B1X3NldF9uZXcsICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbmV3ICovCisgICAgUHlPYmplY3RfRGVsLCAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZnJlZSAqLworfTsKKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX3NldGFmZmluaXR5X19kb2NfXywKKyJzY2hlZF9zZXRhZmZpbml0eShwaWQsIGNwdV9zZXQpXG5cblwKK1NldCB0aGUgYWZmaW5pdHkgb2YgdGhlIHByb2Nlc3Mgd2l0aCBQSUQgKnBpZCogdG8gKmNwdV9zZXQqLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfc2NoZWRfc2V0YWZmaW5pdHkoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIHBpZF90IHBpZDsKKyAgICBQeV9jcHVfc2V0ICpjcHVfc2V0OworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIF9QeV9QQVJTRV9QSUQgIk8hOnNjaGVkX3NldGFmZmluaXR5IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJnBpZCwgJmNwdV9zZXRfdHlwZSwgJmNwdV9zZXQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoc2NoZWRfc2V0YWZmaW5pdHkocGlkLCBjcHVfc2V0LT5zaXplLCBjcHVfc2V0LT5zZXQpKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX2dldGFmZmluaXR5X19kb2NfXywKKyJzY2hlZF9nZXRhZmZpbml0eShwaWQsIG5jcHVzKSAtPiBjcHVfc2V0XG5cblwKK1JldHVybiB0aGUgYWZmaW5pdHkgb2YgdGhlIHByb2Nlc3Mgd2l0aCBQSUQgKnBpZCouXG5cCitUaGUgcmV0dXJuZWQgY3B1X3NldCB3aWxsIGJlIG9mIHNpemUgKm5jcHVzKi4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3NjaGVkX2dldGFmZmluaXR5KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBwaWRfdCBwaWQ7CisgICAgaW50IG5jcHVzOworICAgIFB5X2NwdV9zZXQgKnJlczsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBfUHlfUEFSU0VfUElEICJpOnNjaGVkX2dldGFmZmluaXR5IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJnBpZCwgJm5jcHVzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzID0gbWFrZV9uZXdfY3B1X3NldCgmY3B1X3NldF90eXBlLCBuY3B1cyk7CisgICAgaWYgKCFyZXMpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzY2hlZF9nZXRhZmZpbml0eShwaWQsIHJlcy0+c2l6ZSwgcmVzLT5zZXQpKSB7CisgICAgICAgIFB5X0RFQ1JFRihyZXMpOworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgcmV0dXJuIChQeU9iamVjdCAqKXJlczsKK30KKworI2VuZGlmIC8qIEhBVkVfU0NIRURfU0VUQUZGSU5JVFkgKi8KKworI2VuZGlmIC8qIEhBVkVfU0NIRURfSCAqLworCiAvKiBBSVggdXNlcyAvZGV2L3B0YyBidXQgaXMgb3RoZXJ3aXNlIHRoZSBzYW1lIGFzIC9kZXYvcHRteCAqLwogLyogSVJJWCBoYXMgYm90aCAvZGV2L3B0YyBhbmQgL2Rldi9wdG14LCB1c2UgcHRteCAqLwogI2lmIGRlZmluZWQoSEFWRV9ERVZfUFRDKSAmJiAhZGVmaW5lZChIQVZFX0RFVl9QVE1YKQpAQCAtNDI3OSw2ICs1MzgzLDcgQEAKIH0KICNlbmRpZgogCisKICNpZmRlZiBIQVZFX0dFVEVHSUQKIFB5RG9jX1NUUlZBUihwb3NpeF9nZXRlZ2lkX19kb2NfXywKICJnZXRlZ2lkKCkgLT4gZWdpZFxuXG5cCkBAIC00MzI4LDYgKzU0MzMsNzAgQEAKICAgICByZXR1cm4gUHlMb25nX0Zyb21QaWQoZ2V0cGlkKCkpOwogfQogCisjaWZkZWYgSEFWRV9HRVRHUk9VUExJU1QKK1B5RG9jX1NUUlZBUihwb3NpeF9nZXRncm91cGxpc3RfX2RvY19fLAorImdldGdyb3VwbGlzdCh1c2VyLCBncm91cCkgLT4gbGlzdCBvZiBncm91cHMgdG8gd2hpY2ggYSB1c2VyIGJlbG9uZ3NcblxuXAorUmV0dXJucyBhIGxpc3Qgb2YgZ3JvdXBzIHRvIHdoaWNoIGEgdXNlciBiZWxvbmdzLlxuXG5cCisgICAgdXNlcjogdXNlcm5hbWUgdG8gbG9va3VwXG5cCisgICAgZ3JvdXA6IGJhc2UgZ3JvdXAgaWQgb2YgdGhlIHVzZXIiKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2dldGdyb3VwbGlzdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisjaWZkZWYgTkdST1VQU19NQVgKKyNkZWZpbmUgTUFYX0dST1VQUyBOR1JPVVBTX01BWAorI2Vsc2UKKyAgICAvKiBkZWZpbmVkIHRvIGJlIDE2IG9uIFNvbGFyaXM3LCBzbyB0aGlzIHNob3VsZCBiZSBhIHNtYWxsIG51bWJlciAqLworI2RlZmluZSBNQVhfR1JPVVBTIDY0CisjZW5kaWYKKworICAgIGNvbnN0IGNoYXIgKnVzZXI7CisgICAgaW50IGksIG5ncm91cHM7CisgICAgUHlPYmplY3QgKmxpc3Q7CisjaWZkZWYgX19BUFBMRV9fCisgICAgaW50ICpncm91cHMsIGJhc2VnaWQ7CisjZWxzZQorICAgIGdpZF90ICpncm91cHMsIGJhc2VnaWQ7CisjZW5kaWYKKyAgICBuZ3JvdXBzID0gTUFYX0dST1VQUzsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAic2kiLCAmdXNlciwgJmJhc2VnaWQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworI2lmZGVmIF9fQVBQTEVfXworICAgIGdyb3VwcyA9IFB5TWVtX01hbGxvYyhuZ3JvdXBzICogc2l6ZW9mKGludCkpOworI2Vsc2UKKyAgICBncm91cHMgPSBQeU1lbV9NYWxsb2Mobmdyb3VwcyAqIHNpemVvZihnaWRfdCkpOworI2VuZGlmCisgICAgaWYgKGdyb3VwcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKworICAgIGlmIChnZXRncm91cGxpc3QodXNlciwgYmFzZWdpZCwgZ3JvdXBzLCAmbmdyb3VwcykgPT0gLTEpIHsKKyAgICAgICAgUHlNZW1fRGVsKGdyb3Vwcyk7CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKworICAgIGxpc3QgPSBQeUxpc3RfTmV3KG5ncm91cHMpOworICAgIGlmIChsaXN0ID09IE5VTEwpIHsKKyAgICAgICAgUHlNZW1fRGVsKGdyb3Vwcyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGZvciAoaSA9IDA7IGkgPCBuZ3JvdXBzOyBpKyspIHsKKyAgICAgICAgUHlPYmplY3QgKm8gPSBQeUxvbmdfRnJvbVVuc2lnbmVkTG9uZygodW5zaWduZWQgbG9uZylncm91cHNbaV0pOworICAgICAgICBpZiAobyA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYobGlzdCk7CisgICAgICAgICAgICBQeU1lbV9EZWwoZ3JvdXBzKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIFB5TGlzdF9TRVRfSVRFTShsaXN0LCBpLCBvKTsKKyAgICB9CisKKyAgICBQeU1lbV9EZWwoZ3JvdXBzKTsKKworICAgIHJldHVybiBsaXN0OworfQorI2VuZGlmCiAKICNpZmRlZiBIQVZFX0dFVEdST1VQUwogUHlEb2NfU1RSVkFSKHBvc2l4X2dldGdyb3Vwc19fZG9jX18sCkBAIC00NTY1LDcgKzU3MzQsNyBAQAogICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwogI2lmZGVmIE1TX1dJTkRPV1MKICAgICB3Y2hhcl90IHVzZXJfbmFtZVtVTkxFTiArIDFdOwotICAgIERXT1JEIG51bV9jaGFycyA9IHNpemVvZih1c2VyX25hbWUpL3NpemVvZih1c2VyX25hbWVbMF0pOworICAgIERXT1JEIG51bV9jaGFycyA9IFB5X0FSUkFZX0xFTkdUSCh1c2VyX25hbWUpOwogCiAgICAgaWYgKEdldFVzZXJOYW1lVyh1c2VyX25hbWUsICZudW1fY2hhcnMpKSB7CiAgICAgICAgIC8qIG51bV9jaGFycyBpcyB0aGUgbnVtYmVyIG9mIHVuaWNvZGUgY2hhcnMgcGx1cyBudWxsIHRlcm1pbmF0b3IgKi8KQEAgLTQ5NjUsNiArNjEzNCw3IEBACiB7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKICAgICBzdGF0aWMgUHlPYmplY3QgKnN0cnVjdF9ydXNhZ2U7CisgICAgX1B5X0lERU5USUZJRVIoc3RydWN0X3J1c2FnZSk7CiAKICAgICBpZiAocGlkID09IC0xKQogICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKQEAgLTQ5NzMsNyArNjE0Myw3IEBACiAgICAgICAgIFB5T2JqZWN0ICptID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygicmVzb3VyY2UiKTsKICAgICAgICAgaWYgKG0gPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBzdHJ1Y3RfcnVzYWdlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhtLCAic3RydWN0X3J1c2FnZSIpOworICAgICAgICBzdHJ1Y3RfcnVzYWdlID0gX1B5T2JqZWN0X0dldEF0dHJJZChtLCAmUHlJZF9zdHJ1Y3RfcnVzYWdlKTsKICAgICAgICAgUHlfREVDUkVGKG0pOwogICAgICAgICBpZiAoc3RydWN0X3J1c2FnZSA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC01MDY5LDYgKzYyMzksNTUgQEAKIH0KICNlbmRpZiAvKiBIQVZFX1dBSVQ0ICovCiAKKyNpZiBkZWZpbmVkKEhBVkVfV0FJVElEKSAmJiAhZGVmaW5lZChfX0FQUExFX18pCitQeURvY19TVFJWQVIocG9zaXhfd2FpdGlkX19kb2NfXywKKyJ3YWl0aWQoaWR0eXBlLCBpZCwgb3B0aW9ucykgLT4gd2FpdGlkX3Jlc3VsdFxuXG5cCitXYWl0IGZvciB0aGUgY29tcGxldGlvbiBvZiBvbmUgb3IgbW9yZSBjaGlsZCBwcm9jZXNzZXMuXG5cblwKK2lkdHlwZSBjYW4gYmUgUF9QSUQsIFBfUEdJRCBvciBQX0FMTC5cblwKK2lkIHNwZWNpZmllcyB0aGUgcGlkIHRvIHdhaXQgb24uXG5cCitvcHRpb25zIGlzIGNvbnN0cnVjdGVkIGZyb20gdGhlIE9SaW5nIG9mIG9uZSBvciBtb3JlIG9mIFdFWElURUQsIFdTVE9QUEVEXG5cCitvciBXQ09OVElOVUVEIGFuZCBhZGRpdGlvbmFsbHkgbWF5IGJlIE9SZWQgd2l0aCBXTk9IQU5HIG9yIFdOT1dBSVQuXG5cCitSZXR1cm5zIGVpdGhlciB3YWl0aWRfcmVzdWx0IG9yIE5vbmUgaWYgV05PSEFORyBpcyBzcGVjaWZpZWQgYW5kIHRoZXJlIGFyZVxuXAorbm8gY2hpbGRyZW4gaW4gYSB3YWl0YWJsZSBzdGF0ZS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3dhaXRpZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBpZHR5cGVfdCBpZHR5cGU7CisgICAgaWRfdCBpZDsKKyAgICBpbnQgb3B0aW9ucywgcmVzOworICAgIHNpZ2luZm9fdCBzaTsKKyAgICBzaS5zaV9waWQgPSAwOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaSIgX1B5X1BBUlNFX1BJRCAiaTp3YWl0aWQiLCAmaWR0eXBlLCAmaWQsICZvcHRpb25zKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IHdhaXRpZChpZHR5cGUsIGlkLCAmc2ksIG9wdGlvbnMpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgaWYgKHJlcyA9PSAtMSkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisKKyAgICBpZiAoc2kuc2lfcGlkID09IDApCisgICAgICAgIFB5X1JFVFVSTl9OT05FOworCisgICAgcmVzdWx0ID0gUHlTdHJ1Y3RTZXF1ZW5jZV9OZXcoJldhaXRpZFJlc3VsdFR5cGUpOworICAgIGlmICghcmVzdWx0KQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0ocmVzdWx0LCAwLCBQeUxvbmdfRnJvbVBpZChzaS5zaV9waWQpKTsKKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHJlc3VsdCwgMSwgUHlMb25nX0Zyb21QaWQoc2kuc2lfdWlkKSk7CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXN1bHQsIDIsIFB5TG9uZ19Gcm9tTG9uZygobG9uZykoc2kuc2lfc2lnbm8pKSk7CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXN1bHQsIDMsIFB5TG9uZ19Gcm9tTG9uZygobG9uZykoc2kuc2lfc3RhdHVzKSkpOworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0ocmVzdWx0LCA0LCBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpKHNpLnNpX2NvZGUpKSk7CisgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKKyAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7Cit9CisjZW5kaWYKKwogI2lmZGVmIEhBVkVfV0FJVFBJRAogUHlEb2NfU1RSVkFSKHBvc2l4X3dhaXRwaWRfX2RvY19fLAogIndhaXRwaWQocGlkLCBvcHRpb25zKSAtPiAocGlkLCBzdGF0dXMpXG5cblwKQEAgLTUyMzIsNyArNjQ1MSw3IEBACiAgICAgd2NoYXJfdCAqcGF0aDsKICAgICBEV09SRCBuX2J5dGVzX3JldHVybmVkOwogICAgIERXT1JEIGlvX3Jlc3VsdDsKLSAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICpwbywgKnJlc3VsdDsKICAgICBIQU5ETEUgcmVwYXJzZV9wb2ludF9oYW5kbGU7CiAKICAgICBjaGFyIHRhcmdldF9idWZmZXJbTUFYSU1VTV9SRVBBUlNFX0RBVEFfQlVGRkVSX1NJWkVdOwpAQCAtNTI0MCw4ICs2NDU5LDExIEBACiAgICAgd2NoYXJfdCAqcHJpbnRfbmFtZTsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLAotICAgICAgICAgICAgICAgICAgInU6cmVhZGxpbmsiLAotICAgICAgICAgICAgICAgICAgJnBhdGgpKQorICAgICAgICAgICAgICAgICAgIlU6cmVhZGxpbmsiLAorICAgICAgICAgICAgICAgICAgJnBvKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocG8pOworICAgIGlmIChwYXRoID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgLyogRmlyc3QgZ2V0IGEgaGFuZGxlIHRvIHRoZSByZXBhcnNlIHBvaW50ICovCkBAIC01MjU3LDkgKzY0NzksNyBAQAogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAKICAgICBpZiAocmVwYXJzZV9wb2ludF9oYW5kbGU9PUlOVkFMSURfSEFORExFX1ZBTFVFKQotICAgIHsKLSAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX3VuaWNvZGUoInJlYWRsaW5rIiwgcGF0aCk7Ci0gICAgfQorICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJyZWFkbGluayIsIHBvKTsKIAogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAvKiBOZXcgY2FsbCBEZXZpY2VJb0NvbnRyb2wgdG8gcmVhZCB0aGUgcmVwYXJzZSBwb2ludCAqLwpAQCAtNTI3NSw5ICs2NDk1LDcgQEAKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogCiAgICAgaWYgKGlvX3Jlc3VsdD09MCkKLSAgICB7Ci0gICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl91bmljb2RlKCJyZWFkbGluayIsIHBhdGgpOwotICAgIH0KKyAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX29iamVjdCgicmVhZGxpbmsiLCBwbyk7CiAKICAgICBpZiAocmRiLT5SZXBhcnNlVGFnICE9IElPX1JFUEFSU0VfVEFHX1NZTUxJTkspCiAgICAgewpAQCAtNTMwNyw3ICs2NTI1LDcgQEAKICAgICAvKiBvbmx5IHJlY2hlY2sgKi8KICAgICBpZiAoaGFzX0NyZWF0ZVN5bWJvbGljTGlua1cpCiAgICAgICAgIHJldHVybiBoYXNfQ3JlYXRlU3ltYm9saWNMaW5rVzsKLSAgICBoS2VybmVsMzIgPSBHZXRNb2R1bGVIYW5kbGUoIktFUk5FTDMyIik7CisgICAgaEtlcm5lbDMyID0gR2V0TW9kdWxlSGFuZGxlVyhMIktFUk5FTDMyIik7CiAgICAgKihGQVJQUk9DKikmUHlfQ3JlYXRlU3ltYm9saWNMaW5rVyA9IEdldFByb2NBZGRyZXNzKGhLZXJuZWwzMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNyZWF0ZVN5bWJvbGljTGlua1ciKTsKICAgICBpZiAoUHlfQ3JlYXRlU3ltYm9saWNMaW5rVykKQEAgLTUzMjcsNyArNjU0NSw5IEBACiB3aW5fc3ltbGluayhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCiB7CiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJzcmMiLCAiZGVzdCIsICJ0YXJnZXRfaXNfZGlyZWN0b3J5IiwgTlVMTH07Ci0gICAgUHlPYmplY3QgKnNyYywgKmRlc3Q7CisgICAgUHlPYmplY3QgKm9zcmMsICpvZGVzdDsKKyAgICBQeU9iamVjdCAqdXNyYyA9IE5VTEwsICp1ZGVzdCA9IE5VTEw7CisgICAgd2NoYXJfdCAqd3NyYywgKndkZXN0OwogICAgIGludCB0YXJnZXRfaXNfZGlyZWN0b3J5ID0gMDsKICAgICBEV09SRCByZXM7CiAKQEAgLTUzMzcsMzQgKzY1NTcsNDQgQEAKICAgICAgICAgcmV0dXJuIFB5RXJyX0Zvcm1hdChQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yLAogICAgICAgICAgICAgIkNyZWF0ZVN5bWJvbGljTGlua1cgbm90IGZvdW5kIik7CiAgICAgfQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgIk9PfGk6c3ltbGluayIsCi0gICAgICAgIGt3bGlzdCwgJnNyYywgJmRlc3QsICZ0YXJnZXRfaXNfZGlyZWN0b3J5KSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcygKKyAgICAgICAgICAgIGFyZ3MsIGt3YXJncywgIk9PfGk6c3ltbGluayIsIGt3bGlzdCwKKyAgICAgICAgICAgICZvc3JjLCAmb2Rlc3QsICZ0YXJnZXRfaXNfZGlyZWN0b3J5KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKKyAgICB1c3JjID0gd2luMzJfZGVjb2RlX2ZpbGVuYW1lKG9zcmMpOworICAgIGlmICghdXNyYykKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgdWRlc3QgPSB3aW4zMl9kZWNvZGVfZmlsZW5hbWUob2Rlc3QpOworICAgIGlmICghdWRlc3QpCisgICAgICAgIGdvdG8gZXJyb3I7CisKICAgICBpZiAod2luMzJfY2FuX3N5bWxpbmsgPT0gMCkKICAgICAgICAgcmV0dXJuIFB5RXJyX0Zvcm1hdChQeUV4Y19PU0Vycm9yLCAic3ltYm9saWMgbGluayBwcml2aWxlZ2Ugbm90IGhlbGQiKTsKIAotICAgIGlmICghY29udmVydF90b191bmljb2RlKCZzcmMpKSB7IHJldHVybiBOVUxMOyB9Ci0gICAgaWYgKCFjb252ZXJ0X3RvX3VuaWNvZGUoJmRlc3QpKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihzcmMpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CisgICAgd3NyYyA9IFB5VW5pY29kZV9Bc1VuaWNvZGUodXNyYyk7CisgICAgaWYgKHdzcmMgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICB3ZGVzdCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUodWRlc3QpOworICAgIGlmICh3c3JjID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcmVzID0gUHlfQ3JlYXRlU3ltYm9saWNMaW5rVygKLSAgICAgICAgUHlVbmljb2RlX0FzVW5pY29kZShkZXN0KSwKLSAgICAgICAgUHlVbmljb2RlX0FzVW5pY29kZShzcmMpLAotICAgICAgICB0YXJnZXRfaXNfZGlyZWN0b3J5KTsKKyAgICByZXMgPSBQeV9DcmVhdGVTeW1ib2xpY0xpbmtXKHdkZXN0LCB3c3JjLCB0YXJnZXRfaXNfZGlyZWN0b3J5KTsKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIFB5X0RFQ1JFRihzcmMpOwotICAgIFB5X0RFQ1JFRihkZXN0KTsKKworICAgIFB5X0RFQ1JFRih1c3JjKTsKKyAgICBQeV9ERUNSRUYodWRlc3QpOwogICAgIGlmICghcmVzKQotICAgIHsKLSAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX3VuaWNvZGUoInN5bWxpbmsiLCBQeVVuaWNvZGVfQXNVbmljb2RlKHNyYykpOwotICAgIH0KKyAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX29iamVjdCgic3ltbGluayIsIG9zcmMpOwogCiAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgIHJldHVybiBQeV9Ob25lOworCitlcnJvcjoKKyAgICBQeV9YREVDUkVGKHVzcmMpOworICAgIFB5X1hERUNSRUYodWRlc3QpOworICAgIHJldHVybiBOVUxMOwogfQogI2VuZGlmIC8qIGRlZmluZWQoSEFWRV9TWU1MSU5LKSAmJiBkZWZpbmVkKE1TX1dJTkRPV1MpICovCiAKQEAgLTU1NTksMTIgKzY3ODksMTQgQEAKICAgICBpbnQgZmQ7CiAKICNpZmRlZiBNU19XSU5ET1dTCi0gICAgUHlVbmljb2RlT2JqZWN0ICpwbzsKKyAgICBQeU9iamVjdCAqcG87CiAgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVpfGk6b3BlbiIsICZwbywgJmZsYWcsICZtb2RlKSkgeworICAgICAgICB3Y2hhcl90ICp3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocG8pOworICAgICAgICBpZiAod3BhdGggPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgLyogUHlVbmljb2RlX0FTX1VOSUNPREUgT0sgd2l0aG91dCB0aHJlYWQKLSAgICAgICAgICAgbG9jayBhcyBpdCBpcyBhIHNpbXBsZSBkZXJlZmVyZW5jZS4gKi8KLSAgICAgICAgZmQgPSBfd29wZW4oUHlVbmljb2RlX0FTX1VOSUNPREUocG8pLCBmbGFnLCBtb2RlKTsKKyAgICAgICAgZmQgPSBfd29wZW4od3BhdGgsIGZsYWcsIG1vZGUpOwogICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgICAgICBpZiAoZmQgPCAwKQogICAgICAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CkBAIC01NTc5LDYgKzY4MTEsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb2ZpbGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZmbGFnLCAmbW9kZSkpCiAgICAgICAgIHJldHVybiBOVUxMOworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkgeworICAgICAgICBQeV9ERUNSRUYob2ZpbGUpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisjZW5kaWYKICAgICBmaWxlID0gUHlCeXRlc19Bc1N0cmluZyhvZmlsZSk7CiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIGZkID0gb3BlbihmaWxlLCBmbGFnLCBtb2RlKTsKQEAgLTU2NDMsOSArNjg4MSw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmICghX1B5VmVyaWZ5X2ZkKGZkKSkKICAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7Ci0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIGZkID0gZHVwKGZkKTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChmZCA8IDApCiAgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOwogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpZmQpOwpAQCAtNTY2NCwxNSArNjkwMCw0MiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoIV9QeVZlcmlmeV9mZF9kdXAyKGZkLCBmZDIpKQogICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgcmVzID0gZHVwMihmZCwgZmQyKTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChyZXMgPCAwKQogICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgcmV0dXJuIFB5X05vbmU7CiB9CiAKKyNpZmRlZiBIQVZFX0xPQ0tGCitQeURvY19TVFJWQVIocG9zaXhfbG9ja2ZfX2RvY19fLAorImxvY2tmKGZkLCBjbWQsIGxlbilcblxuXAorQXBwbHksIHRlc3Qgb3IgcmVtb3ZlIGEgUE9TSVggbG9jayBvbiBhbiBvcGVuIGZpbGUgZGVzY3JpcHRvci5cblxuXAorZmQgaXMgYW4gb3BlbiBmaWxlIGRlc2NyaXB0b3IuXG5cCitjbWQgc3BlY2lmaWVzIHRoZSBjb21tYW5kIHRvIHVzZSAtIG9uZSBvZiBGX0xPQ0ssIEZfVExPQ0ssIEZfVUxPQ0sgb3JcblwKK0ZfVEVTVC5cblwKK2xlbiBzcGVjaWZpZXMgdGhlIHNlY3Rpb24gb2YgdGhlIGZpbGUgdG8gbG9jay4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2xvY2tmKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgZmQsIGNtZCwgcmVzOworICAgIG9mZl90IGxlbjsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlpTyY6bG9ja2YiLAorICAgICAgICAgICAgJmZkLCAmY21kLCBfcGFyc2Vfb2ZmX3QsICZsZW4pKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSBsb2NrZihmZCwgY21kLCBsZW4pOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpZiAocmVzIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCiAKIFB5RG9jX1NUUlZBUihwb3NpeF9sc2Vla19fZG9jX18sCiAibHNlZWsoZmQsIHBvcywgaG93KSAtPiBuZXdwb3NcblxuXApAQCAtNTcwMyw4ICs2OTY2LDcgQEAKICNpZiAhZGVmaW5lZChIQVZFX0xBUkdFRklMRV9TVVBQT1JUKQogICAgIHBvcyA9IFB5TG9uZ19Bc0xvbmcocG9zb2JqKTsKICNlbHNlCi0gICAgcG9zID0gUHlMb25nX0NoZWNrKHBvc29iaikgPwotICAgICAgICBQeUxvbmdfQXNMb25nTG9uZyhwb3NvYmopIDogUHlMb25nX0FzTG9uZyhwb3NvYmopOworICAgIHBvcyA9IFB5TG9uZ19Bc0xvbmdMb25nKHBvc29iaik7CiAjZW5kaWYKICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC01NzY0LDYgKzcwMjYsMTQwIEBACiAgICAgcmV0dXJuIGJ1ZmZlcjsKIH0KIAorI2lmIChkZWZpbmVkKEhBVkVfU0VOREZJTEUpICYmIChkZWZpbmVkKF9fRnJlZUJTRF9fKSB8fCBkZWZpbmVkKF9fRHJhZ29uRmx5X18pIFwKKyAgICB8fCBkZWZpbmVkKF9fQVBQTEVfXykpKSB8fCBkZWZpbmVkKEhBVkVfUkVBRFYpIHx8IGRlZmluZWQoSEFWRV9XUklURVYpCitzdGF0aWMgUHlfc3NpemVfdAoraW92X3NldHVwKHN0cnVjdCBpb3ZlYyAqKmlvdiwgUHlfYnVmZmVyICoqYnVmLCBQeU9iamVjdCAqc2VxLCBpbnQgY250LCBpbnQgdHlwZSkKK3sKKyAgICBpbnQgaSwgajsKKyAgICBQeV9zc2l6ZV90IGJsZW4sIHRvdGFsID0gMDsKKworICAgICppb3YgPSBQeU1lbV9OZXcoc3RydWN0IGlvdmVjLCBjbnQpOworICAgIGlmICgqaW92ID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIHRvdGFsOworICAgIH0KKworICAgICpidWYgPSBQeU1lbV9OZXcoUHlfYnVmZmVyLCBjbnQpOworICAgIGlmICgqYnVmID09IE5VTEwpIHsKKyAgICAgICAgUHlNZW1fRGVsKCppb3YpOworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gdG90YWw7CisgICAgfQorCisgICAgZm9yIChpID0gMDsgaSA8IGNudDsgaSsrKSB7CisgICAgICAgIFB5T2JqZWN0ICppdGVtID0gUHlTZXF1ZW5jZV9HZXRJdGVtKHNlcSwgaSk7CisgICAgICAgIGlmIChpdGVtID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgIGlmIChQeU9iamVjdF9HZXRCdWZmZXIoaXRlbSwgJigqYnVmKVtpXSwgdHlwZSkgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYoaXRlbSk7CisgICAgICAgICgqaW92KVtpXS5pb3ZfYmFzZSA9ICgqYnVmKVtpXS5idWY7CisgICAgICAgIGJsZW4gPSAoKmJ1ZilbaV0ubGVuOworICAgICAgICAoKmlvdilbaV0uaW92X2xlbiA9IGJsZW47CisgICAgICAgIHRvdGFsICs9IGJsZW47CisgICAgfQorICAgIHJldHVybiB0b3RhbDsKKworZmFpbDoKKyAgICBQeU1lbV9EZWwoKmlvdik7CisgICAgZm9yIChqID0gMDsgaiA8IGk7IGorKykgeworICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCYoKmJ1Zilbal0pOworICAgIH0KKyAgICBQeU1lbV9EZWwoKmJ1Zik7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lkCitpb3ZfY2xlYW51cChzdHJ1Y3QgaW92ZWMgKmlvdiwgUHlfYnVmZmVyICpidWYsIGludCBjbnQpCit7CisgICAgaW50IGk7CisgICAgUHlNZW1fRGVsKGlvdik7CisgICAgZm9yIChpID0gMDsgaSA8IGNudDsgaSsrKSB7CisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJmJ1ZltpXSk7CisgICAgfQorICAgIFB5TWVtX0RlbChidWYpOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX1JFQURWCitQeURvY19TVFJWQVIocG9zaXhfcmVhZHZfX2RvY19fLAorInJlYWR2KGZkLCBidWZmZXJzKSAtPiBieXRlc3JlYWRcblxuXAorUmVhZCBmcm9tIGEgZmlsZSBkZXNjcmlwdG9yIGludG8gYSBudW1iZXIgb2Ygd3JpdGFibGUgYnVmZmVycy4gYnVmZmVyc1xuXAoraXMgYW4gYXJiaXRyYXJ5IHNlcXVlbmNlIG9mIHdyaXRhYmxlIGJ1ZmZlcnMuXG5cCitSZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgcmVhZC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3JlYWR2KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgZmQsIGNudDsKKyAgICBQeV9zc2l6ZV90IG47CisgICAgUHlPYmplY3QgKnNlcTsKKyAgICBzdHJ1Y3QgaW92ZWMgKmlvdjsKKyAgICBQeV9idWZmZXIgKmJ1ZjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU86cmVhZHYiLCAmZmQsICZzZXEpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIVB5U2VxdWVuY2VfQ2hlY2soc2VxKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgInJlYWR2KCkgYXJnIDIgbXVzdCBiZSBhIHNlcXVlbmNlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBjbnQgPSBQeVNlcXVlbmNlX1NpemUoc2VxKTsKKworICAgIGlmICghaW92X3NldHVwKCZpb3YsICZidWYsIHNlcSwgY250LCBQeUJVRl9XUklUQUJMRSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIG4gPSByZWFkdihmZCwgaW92LCBjbnQpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpb3ZfY2xlYW51cChpb3YsIGJ1ZiwgY250KTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KG4pOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX1BSRUFECitQeURvY19TVFJWQVIocG9zaXhfcHJlYWRfX2RvY19fLAorInByZWFkKGZkLCBidWZmZXJzaXplLCBvZmZzZXQpIC0+IHN0cmluZ1xuXG5cCitSZWFkIGZyb20gYSBmaWxlIGRlc2NyaXB0b3IsIGZkLCBhdCBhIHBvc2l0aW9uIG9mIG9mZnNldC4gSXQgd2lsbCByZWFkIHVwXG5cCit0byBidWZmZXJzaXplIG51bWJlciBvZiBieXRlcy4gVGhlIGZpbGUgb2Zmc2V0IHJlbWFpbnMgdW5jaGFuZ2VkLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfcHJlYWQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBmZCwgc2l6ZTsKKyAgICBvZmZfdCBvZmZzZXQ7CisgICAgUHlfc3NpemVfdCBuOworICAgIFB5T2JqZWN0ICpidWZmZXI7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpaU8mOnByZWFkIiwgJmZkLCAmc2l6ZSwgX3BhcnNlX29mZl90LCAmb2Zmc2V0KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoc2l6ZSA8IDApIHsKKyAgICAgICAgZXJybm8gPSBFSU5WQUw7CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKyAgICBidWZmZXIgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKChjaGFyICopTlVMTCwgc2l6ZSk7CisgICAgaWYgKGJ1ZmZlciA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIV9QeVZlcmlmeV9mZChmZCkpIHsKKyAgICAgICAgUHlfREVDUkVGKGJ1ZmZlcik7CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgbiA9IHByZWFkKGZkLCBQeUJ5dGVzX0FTX1NUUklORyhidWZmZXIpLCBzaXplLCBvZmZzZXQpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgaWYgKG4gPCAwKSB7CisgICAgICAgIFB5X0RFQ1JFRihidWZmZXIpOworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgaWYgKG4gIT0gc2l6ZSkKKyAgICAgICAgX1B5Qnl0ZXNfUmVzaXplKCZidWZmZXIsIG4pOworICAgIHJldHVybiBidWZmZXI7Cit9CisjZW5kaWYKIAogUHlEb2NfU1RSVkFSKHBvc2l4X3dyaXRlX19kb2NfXywKICJ3cml0ZShmZCwgc3RyaW5nKSAtPiBieXRlc3dyaXR0ZW5cblxuXApAQCAtNTc5OCw2ICs3MTk0LDE0NCBAQAogICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3Qoc2l6ZSk7CiB9CiAKKyNpZmRlZiBIQVZFX1NFTkRGSUxFCitQeURvY19TVFJWQVIocG9zaXhfc2VuZGZpbGVfX2RvY19fLAorInNlbmRmaWxlKG91dCwgaW4sIG9mZnNldCwgbmJ5dGVzKSAtPiBieXRlc3dyaXR0ZW5cblwKK3NlbmRmaWxlKG91dCwgaW4sIG9mZnNldCwgbmJ5dGVzLCBoZWFkZXJzPU5vbmUsIHRyYWlsZXJzPU5vbmUsIGZsYWdzPTApXG5cCisgICAgICAgICAgICAtPiBieXRlc3dyaXR0ZW5cblwKK0NvcHkgbmJ5dGVzIGJ5dGVzIGZyb20gZmlsZSBkZXNjcmlwdG9yIGluIHRvIGZpbGUgZGVzY3JpcHRvciBvdXQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zZW5kZmlsZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RpY3QpCit7CisgICAgaW50IGluLCBvdXQ7CisgICAgUHlfc3NpemVfdCByZXQ7CisgICAgb2ZmX3Qgb2Zmc2V0OworCisjaWYgZGVmaW5lZChfX0ZyZWVCU0RfXykgfHwgZGVmaW5lZChfX0RyYWdvbkZseV9fKSB8fCBkZWZpbmVkKF9fQVBQTEVfXykKKyNpZm5kZWYgX19BUFBMRV9fCisgICAgUHlfc3NpemVfdCBsZW47CisjZW5kaWYKKyAgICBQeU9iamVjdCAqaGVhZGVycyA9IE5VTEwsICp0cmFpbGVycyA9IE5VTEw7CisgICAgUHlfYnVmZmVyICpoYnVmLCAqdGJ1ZjsKKyAgICBvZmZfdCBzYnl0ZXM7CisgICAgc3RydWN0IHNmX2hkdHIgc2Y7CisgICAgaW50IGZsYWdzID0gMDsKKyAgICBzZi5oZWFkZXJzID0gTlVMTDsKKyAgICBzZi50cmFpbGVycyA9IE5VTEw7CisgICAgc3RhdGljIGNoYXIgKmtleXdvcmRzW10gPSB7Im91dCIsICJpbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvZmZzZXQiLCAiY291bnQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaGVhZGVycyIsICJ0cmFpbGVycyIsICJmbGFncyIsIE5VTEx9OworCisjaWZkZWYgX19BUFBMRV9fCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkaWN0LCAiaWlPJk8mfE9PaTpzZW5kZmlsZSIsCisgICAgICAgIGtleXdvcmRzLCAmb3V0LCAmaW4sIF9wYXJzZV9vZmZfdCwgJm9mZnNldCwgX3BhcnNlX29mZl90LCAmc2J5dGVzLAorI2Vsc2UKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RpY3QsICJpaU8mbnxPT2k6c2VuZGZpbGUiLAorICAgICAgICBrZXl3b3JkcywgJm91dCwgJmluLCBfcGFyc2Vfb2ZmX3QsICZvZmZzZXQsICZsZW4sCisjZW5kaWYKKyAgICAgICAgICAgICAgICAmaGVhZGVycywgJnRyYWlsZXJzLCAmZmxhZ3MpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKGhlYWRlcnMgIT0gTlVMTCkgeworICAgICAgICBpZiAoIVB5U2VxdWVuY2VfQ2hlY2soaGVhZGVycykpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgInNlbmRmaWxlKCkgaGVhZGVycyBtdXN0IGJlIGEgc2VxdWVuY2Ugb3IgTm9uZSIpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGkgPSAwOyAvKiBBdm9pZCB1bmluaXRpYWxpemVkIHdhcm5pbmcgKi8KKyAgICAgICAgICAgIHNmLmhkcl9jbnQgPSBQeVNlcXVlbmNlX1NpemUoaGVhZGVycyk7CisgICAgICAgICAgICBpZiAoc2YuaGRyX2NudCA+IDAgJiYKKyAgICAgICAgICAgICAgICAhKGkgPSBpb3Zfc2V0dXAoJihzZi5oZWFkZXJzKSwgJmhidWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnMsIHNmLmhkcl9jbnQsIFB5QlVGX1NJTVBMRSkpKQorICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworI2lmZGVmIF9fQVBQTEVfXworICAgICAgICAgICAgc2J5dGVzICs9IGk7CisjZW5kaWYKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAodHJhaWxlcnMgIT0gTlVMTCkgeworICAgICAgICBpZiAoIVB5U2VxdWVuY2VfQ2hlY2sodHJhaWxlcnMpKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICJzZW5kZmlsZSgpIHRyYWlsZXJzIG11c3QgYmUgYSBzZXF1ZW5jZSBvciBOb25lIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgaSA9IDA7IC8qIEF2b2lkIHVuaW5pdGlhbGl6ZWQgd2FybmluZyAqLworICAgICAgICAgICAgc2YudHJsX2NudCA9IFB5U2VxdWVuY2VfU2l6ZSh0cmFpbGVycyk7CisgICAgICAgICAgICBpZiAoc2YudHJsX2NudCA+IDAgJiYKKyAgICAgICAgICAgICAgICAhKGkgPSBpb3Zfc2V0dXAoJihzZi50cmFpbGVycyksICZ0YnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFpbGVycywgc2YudHJsX2NudCwgUHlCVUZfU0lNUExFKSkpCisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisjaWZkZWYgX19BUFBMRV9fCisgICAgICAgICAgICBzYnl0ZXMgKz0gaTsKKyNlbmRpZgorICAgICAgICB9CisgICAgfQorCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworI2lmZGVmIF9fQVBQTEVfXworICAgIHJldCA9IHNlbmRmaWxlKGluLCBvdXQsIG9mZnNldCwgJnNieXRlcywgJnNmLCBmbGFncyk7CisjZWxzZQorICAgIHJldCA9IHNlbmRmaWxlKGluLCBvdXQsIG9mZnNldCwgbGVuLCAmc2YsICZzYnl0ZXMsIGZsYWdzKTsKKyNlbmRpZgorICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpZiAoc2YuaGVhZGVycyAhPSBOVUxMKQorICAgICAgICBpb3ZfY2xlYW51cChzZi5oZWFkZXJzLCBoYnVmLCBzZi5oZHJfY250KTsKKyAgICBpZiAoc2YudHJhaWxlcnMgIT0gTlVMTCkKKyAgICAgICAgaW92X2NsZWFudXAoc2YudHJhaWxlcnMsIHRidWYsIHNmLnRybF9jbnQpOworCisgICAgaWYgKHJldCA8IDApIHsKKyAgICAgICAgaWYgKChlcnJubyA9PSBFQUdBSU4pIHx8IChlcnJubyA9PSBFQlVTWSkpIHsKKyAgICAgICAgICAgIGlmIChzYnl0ZXMgIT0gMCkgeworICAgICAgICAgICAgICAgIC8vIHNvbWUgZGF0YSBoYXMgYmVlbiBzZW50CisgICAgICAgICAgICAgICAgZ290byBkb25lOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgLy8gbm8gZGF0YSBoYXMgYmVlbiBzZW50OyB1cHBlciBhcHBsaWNhdGlvbiBpcyBzdXBwb3NlZAorICAgICAgICAgICAgICAgIC8vIHRvIHJldHJ5IG9uIEVBR0FJTiBvciBFQlVTWQorICAgICAgICAgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKyAgICBnb3RvIGRvbmU7CisKK2RvbmU6CisgICAgI2lmICFkZWZpbmVkKEhBVkVfTEFSR0VGSUxFX1NVUFBPUlQpCisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJsIiwgc2J5dGVzKTsKKyAgICAjZWxzZQorICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiTCIsIHNieXRlcyk7CisgICAgI2VuZGlmCisKKyNlbHNlCisgICAgUHlfc3NpemVfdCBjb3VudDsKKyAgICBQeU9iamVjdCAqb2Zmb2JqOworICAgIHN0YXRpYyBjaGFyICprZXl3b3Jkc1tdID0geyJvdXQiLCAiaW4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib2Zmc2V0IiwgImNvdW50IiwgTlVMTH07CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkaWN0LCAiaWlPbjpzZW5kZmlsZSIsCisgICAgICAgICAgICBrZXl3b3JkcywgJm91dCwgJmluLCAmb2Zmb2JqLCAmY291bnQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyNpZmRlZiBsaW51eAorICAgIGlmIChvZmZvYmogPT0gUHlfTm9uZSkgeworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHJldCA9IHNlbmRmaWxlKG91dCwgaW4sIE5VTEwsIGNvdW50KTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKHJldCA8IDApCisgICAgICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIm4iLCByZXQpOworICAgIH0KKyNlbmRpZgorICAgIGlmICghX3BhcnNlX29mZl90KG9mZm9iaiwgJm9mZnNldCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXQgPSBzZW5kZmlsZShvdXQsIGluLCAmb2Zmc2V0LCBjb3VudCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAocmV0IDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIm4iLCByZXQpOworI2VuZGlmCit9CisjZW5kaWYKIAogUHlEb2NfU1RSVkFSKHBvc2l4X2ZzdGF0X19kb2NfXywKICJmc3RhdChmZCkgLT4gc3RhdCByZXN1bHRcblxuXApAQCAtNTg1OSw5ICs3MzkzLDcgQEAKICAgICBIRklMRSByZWFkLCB3cml0ZTsKICAgICBBUElSRVQgcmM7CiAKLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgcmMgPSBEb3NDcmVhdGVQaXBlKCAmcmVhZCwgJndyaXRlLCA0MDk2KTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChyYyAhPSBOT19FUlJPUikKICAgICAgICAgcmV0dXJuIG9zMl9lcnJvcihyYyk7CiAKQEAgLTU4NzAsOSArNzQwMiw3IEBACiAjaWYgIWRlZmluZWQoTVNfV0lORE9XUykKICAgICBpbnQgZmRzWzJdOwogICAgIGludCByZXM7Ci0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIHJlcyA9IHBpcGUoZmRzKTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChyZXMgIT0gMCkKICAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CiAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihpaSkiLCBmZHNbMF0sIGZkc1sxXSk7CkBAIC01ODgwLDkgKzc0MTAsNyBAQAogICAgIEhBTkRMRSByZWFkLCB3cml0ZTsKICAgICBpbnQgcmVhZF9mZCwgd3JpdGVfZmQ7CiAgICAgQk9PTCBvazsKLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgb2sgPSBDcmVhdGVQaXBlKCZyZWFkLCAmd3JpdGUsIE5VTEwsIDApOwotICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgaWYgKCFvaykKICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yKCJDcmVhdGVQaXBlIiwgTlVMTCk7CiAgICAgcmVhZF9mZCA9IF9vcGVuX29zZmhhbmRsZSgoUHlfaW50cHRyX3QpcmVhZCwgMCk7CkBAIC01ODkzLDYgKzc0MjEsOTkgQEAKIH0KICNlbmRpZiAgLyogSEFWRV9QSVBFICovCiAKKyNpZmRlZiBIQVZFX1BJUEUyCitQeURvY19TVFJWQVIocG9zaXhfcGlwZTJfX2RvY19fLAorInBpcGUyKGZsYWdzKSAtPiAocmVhZF9lbmQsIHdyaXRlX2VuZClcblxuXAorQ3JlYXRlIGEgcGlwZSB3aXRoIGZsYWdzIHNldCBhdG9taWNhbGx5LlxuXAorZmxhZ3MgY2FuIGJlIGNvbnN0cnVjdGVkIGJ5IE9SaW5nIHRvZ2V0aGVyIG9uZSBvciBtb3JlIG9mIHRoZXNlIHZhbHVlczpcblwKK09fTk9OQkxPQ0ssIE9fQ0xPRVhFQy5cblwKKyIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfcGlwZTIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmcpCit7CisgICAgaW50IGZsYWdzOworICAgIGludCBmZHNbMl07CisgICAgaW50IHJlczsKKworICAgIGZsYWdzID0gUHlMb25nX0FzTG9uZyhhcmcpOworICAgIGlmIChmbGFncyA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHJlcyA9IHBpcGUyKGZkcywgZmxhZ3MpOworICAgIGlmIChyZXMgIT0gMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihpaSkiLCBmZHNbMF0sIGZkc1sxXSk7Cit9CisjZW5kaWYgLyogSEFWRV9QSVBFMiAqLworCisjaWZkZWYgSEFWRV9XUklURVYKK1B5RG9jX1NUUlZBUihwb3NpeF93cml0ZXZfX2RvY19fLAorIndyaXRldihmZCwgYnVmZmVycykgLT4gYnl0ZXN3cml0dGVuXG5cblwKK1dyaXRlIHRoZSBjb250ZW50cyBvZiBidWZmZXJzIHRvIGEgZmlsZSBkZXNjcmlwdG9yLCB3aGVyZSBidWZmZXJzIGlzIGFuXG5cCithcmJpdHJhcnkgc2VxdWVuY2Ugb2YgYnVmZmVycy5cblwKK1JldHVybnMgdGhlIHRvdGFsIGJ5dGVzIHdyaXR0ZW4uIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF93cml0ZXYoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBmZCwgY250OworICAgIFB5X3NzaXplX3QgcmVzOworICAgIFB5T2JqZWN0ICpzZXE7CisgICAgc3RydWN0IGlvdmVjICppb3Y7CisgICAgUHlfYnVmZmVyICpidWY7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTzp3cml0ZXYiLCAmZmQsICZzZXEpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIVB5U2VxdWVuY2VfQ2hlY2soc2VxKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgIndyaXRldigpIGFyZyAyIG11c3QgYmUgYSBzZXF1ZW5jZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgY250ID0gUHlTZXF1ZW5jZV9TaXplKHNlcSk7CisKKyAgICBpZiAoIWlvdl9zZXR1cCgmaW92LCAmYnVmLCBzZXEsIGNudCwgUHlCVUZfU0lNUExFKSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gd3JpdGV2KGZkLCBpb3YsIGNudCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKworICAgIGlvdl9jbGVhbnVwKGlvdiwgYnVmLCBjbnQpOworICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3QocmVzKTsKK30KKyNlbmRpZgorCisjaWZkZWYgSEFWRV9QV1JJVEUKK1B5RG9jX1NUUlZBUihwb3NpeF9wd3JpdGVfX2RvY19fLAorInB3cml0ZShmZCwgc3RyaW5nLCBvZmZzZXQpIC0+IGJ5dGVzd3JpdHRlblxuXG5cCitXcml0ZSBzdHJpbmcgdG8gYSBmaWxlIGRlc2NyaXB0b3IsIGZkLCBmcm9tIG9mZnNldCwgbGVhdmluZyB0aGUgZmlsZVxuXAorb2Zmc2V0IHVuY2hhbmdlZC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3B3cml0ZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfYnVmZmVyIHBidWY7CisgICAgaW50IGZkOworICAgIG9mZl90IG9mZnNldDsKKyAgICBQeV9zc2l6ZV90IHNpemU7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIml5Kk8mOnB3cml0ZSIsICZmZCwgJnBidWYsIF9wYXJzZV9vZmZfdCwgJm9mZnNldCkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKCFfUHlWZXJpZnlfZmQoZmQpKSB7CisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBidWYpOworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHNpemUgPSBwd3JpdGUoZmQsIHBidWYuYnVmLCAoc2l6ZV90KXBidWYubGVuLCBvZmZzZXQpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGJ1Zik7CisgICAgaWYgKHNpemUgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KHNpemUpOworfQorI2VuZGlmCiAKICNpZmRlZiBIQVZFX01LRklGTwogUHlEb2NfU1RSVkFSKHBvc2l4X21rZmlmb19fZG9jX18sCkBAIC02MDA5LDE4ICs3NjMwLDggQEAKICAgICBpbnQgZmQ7CiAgICAgb2ZmX3QgbGVuZ3RoOwogICAgIGludCByZXM7Ci0gICAgUHlPYmplY3QgKmxlbm9iajsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU86ZnRydW5jYXRlIiwgJmZkLCAmbGVub2JqKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSNpZiAhZGVmaW5lZChIQVZFX0xBUkdFRklMRV9TVVBQT1JUKQotICAgIGxlbmd0aCA9IFB5TG9uZ19Bc0xvbmcobGVub2JqKTsKLSNlbHNlCi0gICAgbGVuZ3RoID0gUHlMb25nX0NoZWNrKGxlbm9iaikgPwotICAgICAgICBQeUxvbmdfQXNMb25nTG9uZyhsZW5vYmopIDogUHlMb25nX0FzTG9uZyhsZW5vYmopOwotI2VuZGlmCi0gICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyY6ZnRydW5jYXRlIiwgJmZkLCBfcGFyc2Vfb2ZmX3QsICZsZW5ndGgpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKQEAgLTYwMzMsNiArNzY0NCw5MyBAQAogfQogI2VuZGlmCiAKKyNpZmRlZiBIQVZFX1RSVU5DQVRFCitQeURvY19TVFJWQVIocG9zaXhfdHJ1bmNhdGVfX2RvY19fLAorInRydW5jYXRlKHBhdGgsIGxlbmd0aClcblxuXAorVHJ1bmNhdGUgdGhlIGZpbGUgZ2l2ZW4gYnkgcGF0aCB0byBsZW5ndGggYnl0ZXMuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF90cnVuY2F0ZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9wYXRoOworICAgIGNvbnN0IGNoYXIgKnBhdGg7CisgICAgb2ZmX3QgbGVuZ3RoOworICAgIGludCByZXM7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6dHJ1bmNhdGUiLAorICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsIF9wYXJzZV9vZmZfdCwgJmxlbmd0aCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSB0cnVuY2F0ZShwYXRoLCBsZW5ndGgpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBpZiAocmVzIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfUE9TSVhfRkFMTE9DQVRFCitQeURvY19TVFJWQVIocG9zaXhfcG9zaXhfZmFsbG9jYXRlX19kb2NfXywKKyJwb3NpeF9mYWxsb2NhdGUoZmQsIG9mZnNldCwgbGVuKVxuXG5cCitFbnN1cmVzIHRoYXQgZW5vdWdoIGRpc2sgc3BhY2UgaXMgYWxsb2NhdGVkIGZvciB0aGUgZmlsZSBzcGVjaWZpZWQgYnkgZmRcblwKK3N0YXJ0aW5nIGZyb20gb2Zmc2V0IGFuZCBjb250aW51aW5nIGZvciBsZW4gYnl0ZXMuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9wb3NpeF9mYWxsb2NhdGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIG9mZl90IGxlbiwgb2Zmc2V0OworICAgIGludCByZXMsIGZkOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZPJjpwb3NpeF9mYWxsb2NhdGUiLAorICAgICAgICAgICAgJmZkLCBfcGFyc2Vfb2ZmX3QsICZvZmZzZXQsIF9wYXJzZV9vZmZfdCwgJmxlbikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IHBvc2l4X2ZhbGxvY2F0ZShmZCwgb2Zmc2V0LCBsZW4pOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgaWYgKHJlcyAhPSAwKSB7CisgICAgICAgIGVycm5vID0gcmVzOworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfUE9TSVhfRkFEVklTRQorUHlEb2NfU1RSVkFSKHBvc2l4X3Bvc2l4X2ZhZHZpc2VfX2RvY19fLAorInBvc2l4X2ZhZHZpc2UoZmQsIG9mZnNldCwgbGVuLCBhZHZpY2UpXG5cblwKK0Fubm91bmNlcyBhbiBpbnRlbnRpb24gdG8gYWNjZXNzIGRhdGEgaW4gYSBzcGVjaWZpYyBwYXR0ZXJuIHRodXMgYWxsb3dpbmdcblwKK3RoZSBrZXJuZWwgdG8gbWFrZSBvcHRpbWl6YXRpb25zLlxuXAorVGhlIGFkdmljZSBhcHBsaWVzIHRvIHRoZSByZWdpb24gb2YgdGhlIGZpbGUgc3BlY2lmaWVkIGJ5IGZkIHN0YXJ0aW5nIGF0XG5cCitvZmZzZXQgYW5kIGNvbnRpbnVpbmcgZm9yIGxlbiBieXRlcy5cblwKK2FkdmljZSBpcyBvbmUgb2YgUE9TSVhfRkFEVl9OT1JNQUwsIFBPU0lYX0ZBRFZfU0VRVUVOVElBTCxcblwKK1BPU0lYX0ZBRFZfUkFORE9NLCBQT1NJWF9GQURWX05PUkVVU0UsIFBPU0lYX0ZBRFZfV0lMTE5FRUQgb3JcblwKK1BPU0lYX0ZBRFZfRE9OVE5FRUQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9wb3NpeF9mYWR2aXNlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBvZmZfdCBsZW4sIG9mZnNldDsKKyAgICBpbnQgcmVzLCBmZCwgYWR2aWNlOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZPJmk6cG9zaXhfZmFkdmlzZSIsCisgICAgICAgICAgICAmZmQsIF9wYXJzZV9vZmZfdCwgJm9mZnNldCwgX3BhcnNlX29mZl90LCAmbGVuLCAmYWR2aWNlKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gcG9zaXhfZmFkdmlzZShmZCwgb2Zmc2V0LCBsZW4sIGFkdmljZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAocmVzICE9IDApIHsKKyAgICAgICAgZXJybm8gPSByZXM7CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9QVVRFTlYKIFB5RG9jX1NUUlZBUihwb3NpeF9wdXRlbnZfX2RvY19fLAogInB1dGVudihrZXksIHZhbHVlKVxuXG5cCkBAIC02MDQ1LDIzICs3NzQzLDQwIEBACiBzdGF0aWMgUHlPYmplY3QgKgogcG9zaXhfcHV0ZW52KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBQeU9iamVjdCAqbmV3c3RyID0gTlVMTDsKICNpZmRlZiBNU19XSU5ET1dTCi0gICAgd2NoYXJfdCAqczEsICpzMjsKKyAgICBQeU9iamVjdCAqb3MxLCAqb3MyOwogICAgIHdjaGFyX3QgKm5ld2VudjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAiVVU6cHV0ZW52IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJm9zMSwgJm9zMikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgbmV3c3RyID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVPSVVIiwgb3MxLCBvczIpOworICAgIGlmIChuZXdzdHIgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICBnb3RvIGVycm9yOworICAgIH0KKyAgICBpZiAoX01BWF9FTlYgPCBQeVVuaWNvZGVfR0VUX0xFTkdUSChuZXdzdHIpKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgInRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBsb25nZXIgdGhhbiAldSBjaGFyYWN0ZXJzIiwKKyAgICAgICAgICAgICAgICAgICAgIF9NQVhfRU5WKTsKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICB9CisKKyAgICBuZXdlbnYgPSBQeVVuaWNvZGVfQXNVbmljb2RlKG5ld3N0cik7CisgICAgaWYgKG5ld2VudiA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycm9yOworICAgIGlmIChfd3B1dGVudihuZXdlbnYpKSB7CisgICAgICAgIHBvc2l4X2Vycm9yKCk7CisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgfQogI2Vsc2UKICAgICBQeU9iamVjdCAqb3MxLCAqb3MyOwogICAgIGNoYXIgKnMxLCAqczI7CiAgICAgY2hhciAqbmV3ZW52OwotI2VuZGlmCi0gICAgUHlPYmplY3QgKm5ld3N0ciA9IE5VTEw7Ci0gICAgc2l6ZV90IGxlbjsKIAotI2lmZGVmIE1TX1dJTkRPV1MKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgInV1OnB1dGVudiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZzMSwgJnMyKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0jZWxzZQogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiTyZPJjpwdXRlbnYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvczEsCkBAIC02MDY5LDU4ICs3Nzg0LDE0IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHMxID0gUHlCeXRlc19Bc1N0cmluZyhvczEpOwogICAgIHMyID0gUHlCeXRlc19Bc1N0cmluZyhvczIpOwotI2VuZGlmCiAKLSNpZiBkZWZpbmVkKFBZT1NfT1MyKQotICAgIGlmIChzdHJpY21wKHMxLCAiQkVHSU5MSUJQQVRIIikgPT0gMCkgewotICAgICAgICBBUElSRVQgcmM7Ci0KLSAgICAgICAgcmMgPSBEb3NTZXRFeHRMSUJQQVRIKHMyLCBCRUdJTl9MSUJQQVRIKTsKLSAgICAgICAgaWYgKHJjICE9IE5PX0VSUk9SKSB7Ci0gICAgICAgICAgICBvczJfZXJyb3IocmMpOwotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgfQotCi0gICAgfSBlbHNlIGlmIChzdHJpY21wKHMxLCAiRU5ETElCUEFUSCIpID09IDApIHsKLSAgICAgICAgQVBJUkVUIHJjOwotCi0gICAgICAgIHJjID0gRG9zU2V0RXh0TElCUEFUSChzMiwgRU5EX0xJQlBBVEgpOwotICAgICAgICBpZiAocmMgIT0gTk9fRVJST1IpIHsKLSAgICAgICAgICAgIG9zMl9lcnJvcihyYyk7Ci0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICB9Ci0gICAgfSBlbHNlIHsKLSNlbmRpZgotICAgIC8qIFhYWCBUaGlzIGNhbiBsZWFrIG1lbW9yeSAtLSBub3QgZWFzeSB0byBmaXggOi0oICovCi0gICAgLyogbGVuIGluY2x1ZGVzIHNwYWNlIGZvciBhIHRyYWlsaW5nIFwwOyB0aGUgc2l6ZSBhcmcgdG8KLSAgICAgICBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplIGRvZXMgbm90IGNvdW50IHRoYXQgKi8KLSNpZmRlZiBNU19XSU5ET1dTCi0gICAgbGVuID0gd2NzbGVuKHMxKSArIHdjc2xlbihzMikgKyAyOwotICAgIGlmIChfTUFYX0VOViA8IChsZW4gLSAxKSkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJ0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgbG9uZ2VyIHRoYW4gJXUgY2hhcmFjdGVycyIsCi0gICAgICAgICAgICAgICAgICAgICBfTUFYX0VOVik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotICAgIG5ld3N0ciA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCAoaW50KWxlbiAtIDEpOwotI2Vsc2UKLSAgICBsZW4gPSBQeUJ5dGVzX0dFVF9TSVpFKG9zMSkgKyBQeUJ5dGVzX0dFVF9TSVpFKG9zMikgKyAyOwotICAgIG5ld3N0ciA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgKGludClsZW4gLSAxKTsKLSNlbmRpZgorICAgIG5ld3N0ciA9IFB5Qnl0ZXNfRnJvbUZvcm1hdCgiJXM9JXMiLCBzMSwgczIpOwogICAgIGlmIChuZXdzdHIgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KLSNpZmRlZiBNU19XSU5ET1dTCi0gICAgbmV3ZW52ID0gUHlVbmljb2RlX0FzVW5pY29kZShuZXdzdHIpOwotICAgIF9zbndwcmludGYobmV3ZW52LCBsZW4sIEwiJXM9JXMiLCBzMSwgczIpOwotICAgIGlmIChfd3B1dGVudihuZXdlbnYpKSB7Ci0gICAgICAgIHBvc2l4X2Vycm9yKCk7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotI2Vsc2UKKwogICAgIG5ld2VudiA9IFB5Qnl0ZXNfQVNfU1RSSU5HKG5ld3N0cik7Ci0gICAgUHlPU19zbnByaW50ZihuZXdlbnYsIGxlbiwgIiVzPSVzIiwgczEsIHMyKTsKICAgICBpZiAocHV0ZW52KG5ld2VudikpIHsKICAgICAgICAgcG9zaXhfZXJyb3IoKTsKICAgICAgICAgZ290byBlcnJvcjsKQEAgLTYxMzEsMTMgKzc4MDIsNyBAQAogICAgICAqIHRoaXMgd2lsbCBjYXVzZSBwcmV2aW91cyB2YWx1ZSB0byBiZSBjb2xsZWN0ZWQuICBUaGlzIGhhcyB0bwogICAgICAqIGhhcHBlbiBhZnRlciB0aGUgcmVhbCBwdXRlbnYoKSBjYWxsIGJlY2F1c2UgdGhlIG9sZCB2YWx1ZQogICAgICAqIHdhcyBzdGlsbCBhY2Nlc3NpYmxlIHVudGlsIHRoZW4uICovCi0gICAgaWYgKFB5RGljdF9TZXRJdGVtKHBvc2l4X3B1dGVudl9nYXJiYWdlLAotI2lmZGVmIE1TX1dJTkRPV1MKLSAgICAgICAgICAgICAgICAgICAgICAgUHlUdXBsZV9HRVRfSVRFTShhcmdzLCAwKSwKLSNlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgIG9zMSwKLSNlbmRpZgotICAgICAgICAgICAgICAgICAgICAgICBuZXdzdHIpKSB7CisgICAgaWYgKFB5RGljdF9TZXRJdGVtKHBvc2l4X3B1dGVudl9nYXJiYWdlLCBvczEsIG5ld3N0cikpIHsKICAgICAgICAgLyogcmVhbGx5IG5vdCBtdWNoIHdlIGNhbiBkbzsganVzdCBsZWFrICovCiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgfQpAQCAtNjE0NSwxMCArNzgxMCw2IEBACiAgICAgICAgIFB5X0RFQ1JFRihuZXdzdHIpOwogICAgIH0KIAotI2lmIGRlZmluZWQoUFlPU19PUzIpCi0gICAgfQotI2VuZGlmCi0KICNpZm5kZWYgTVNfV0lORE9XUwogICAgIFB5X0RFQ1JFRihvczEpOwogICAgIFB5X0RFQ1JFRihvczIpOwpAQCAtNjE3MywyMyArNzgzNCwyMiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHBvc2l4X3Vuc2V0ZW52KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeU9iamVjdCAqb3MxOwotICAgIGNoYXIgKnMxOworICAgIFB5T2JqZWN0ICpuYW1lOwogI2lmbmRlZiBIQVZFX0JST0tFTl9VTlNFVEVOVgogICAgIGludCBlcnI7CiAjZW5kaWYKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6dW5zZXRlbnYiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvczEpKQorCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBzMSA9IFB5Qnl0ZXNfQXNTdHJpbmcob3MxKTsKIAogI2lmZGVmIEhBVkVfQlJPS0VOX1VOU0VURU5WCi0gICAgdW5zZXRlbnYoczEpOworICAgIHVuc2V0ZW52KFB5Qnl0ZXNfQVNfU1RSSU5HKG5hbWUpKTsKICNlbHNlCi0gICAgZXJyID0gdW5zZXRlbnYoczEpOworICAgIGVyciA9IHVuc2V0ZW52KFB5Qnl0ZXNfQVNfU1RSSU5HKG5hbWUpKTsKICAgICBpZiAoZXJyKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihvczEpOworICAgICAgICBQeV9ERUNSRUYobmFtZSk7CiAgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOwogICAgIH0KICNlbmRpZgpAQCAtNjE5OSwxMiArNzg1OSwxMSBAQAogICAgICAqIGhhcHBlbiBhZnRlciB0aGUgcmVhbCB1bnNldGVudigpIGNhbGwgYmVjYXVzZSB0aGUKICAgICAgKiBvbGQgdmFsdWUgd2FzIHN0aWxsIGFjY2Vzc2libGUgdW50aWwgdGhlbi4KICAgICAgKi8KLSAgICBpZiAoUHlEaWN0X0RlbEl0ZW0ocG9zaXhfcHV0ZW52X2dhcmJhZ2UsIG9zMSkpIHsKKyAgICBpZiAoUHlEaWN0X0RlbEl0ZW0ocG9zaXhfcHV0ZW52X2dhcmJhZ2UsIG5hbWUpKSB7CiAgICAgICAgIC8qIHJlYWxseSBub3QgbXVjaCB3ZSBjYW4gZG87IGp1c3QgbGVhayAqLwogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgIH0KLQotICAgIFB5X0RFQ1JFRihvczEpOworICAgIFB5X0RFQ1JFRihuYW1lKTsKICAgICBQeV9SRVRVUk5fTk9ORTsKIH0KICNlbmRpZiAvKiB1bnNldGVudiAqLwpAQCAtNjIyNiw3ICs3ODg1LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJlcnJvcigpIGFyZ3VtZW50IG91dCBvZiByYW5nZSIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKG1lc3NhZ2UpOworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKG1lc3NhZ2UsICJzdXJyb2dhdGVlc2NhcGUiKTsKIH0KIAogCkBAIC02NDYzLDIxICs4MTIyLDUxIEBACiBzdGF0aWMgUHlPYmplY3QgKgogcG9zaXhfc3RhdHZmcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqcGF0aDsKKyAgICBQeU9iamVjdCAqcGF0aDsKICAgICBpbnQgcmVzOwogICAgIHN0cnVjdCBzdGF0dmZzIHN0OwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiczpzdGF0dmZzIiwgJnBhdGgpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6c3RhdHZmcyIsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnBhdGgpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcmVzID0gc3RhdHZmcyhwYXRoLCAmc3QpOworICAgIHJlcyA9IHN0YXR2ZnMoUHlCeXRlc19BU19TVFJJTkcocGF0aCksICZzdCk7CiAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICBpZiAocmVzICE9IDApCi0gICAgICAgIHJldHVybiBwb3NpeF9lcnJvcl93aXRoX2ZpbGVuYW1lKHBhdGgpOworICAgIGlmIChyZXMgIT0gMCkgeworICAgICAgICBwb3NpeF9lcnJvcl93aXRoX2ZpbGVuYW1lKFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGgpKTsKKyAgICAgICAgUHlfREVDUkVGKHBhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgUHlfREVDUkVGKHBhdGgpOwogCiAgICAgcmV0dXJuIF9weXN0YXR2ZnNfZnJvbXN0cnVjdHN0YXR2ZnMoc3QpOwogfQogI2VuZGlmIC8qIEhBVkVfU1RBVFZGUyAqLwogCisjaWZkZWYgTVNfV0lORE9XUworUHlEb2NfU1RSVkFSKHdpbjMyX19nZXRkaXNrdXNhZ2VfX2RvY19fLAorIl9nZXRkaXNrdXNhZ2UocGF0aCkgLT4gKHRvdGFsLCBmcmVlKVxuXG5cCitSZXR1cm4gZGlzayB1c2FnZSBzdGF0aXN0aWNzIGFib3V0IHRoZSBnaXZlbiBwYXRoIGFzICh0b3RhbCwgZnJlZSkgdHVwbGUuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9fZ2V0ZGlza3VzYWdlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBCT09MIHJldHZhbDsKKyAgICBVTEFSR0VfSU5URUdFUiBfLCB0b3RhbCwgZnJlZTsKKyAgICBjb25zdCB3Y2hhcl90ICpwYXRoOworCisgICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAidSIsICZwYXRoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmV0dmFsID0gR2V0RGlza0ZyZWVTcGFjZUV4VyhwYXRoLCAmXywgJnRvdGFsLCAmZnJlZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAocmV0dmFsID09IDApCisgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tV2luZG93c0VycigwKTsKKworICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTEwpIiwgdG90YWwuUXVhZFBhcnQsIGZyZWUuUXVhZFBhcnQpOworfQorI2VuZGlmCisKKwogLyogVGhpcyBpcyB1c2VkIGZvciBmcGF0aGNvbmYoKSwgcGF0aGNvbmYoKSwgY29uZnN0cigpIGFuZCBzeXNjb25mKCkuCiAgKiBJdCBtYXBzIHN0cmluZ3MgcmVwcmVzZW50aW5nIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgbmFtZXMgdG8KICAqIGludGVnZXIgdmFsdWVzLCBhbGxvd2luZyB0aG9zZSBmdW5jdGlvbnMgdG8gYmUgY2FsbGVkIHdpdGggdGhlCkBAIC03NTQwLDkgKzkyMjksMTAgQEAKICAgICBQeU9iamVjdCAqb2ZpbGVwYXRoOwogICAgIGNoYXIgKmZpbGVwYXRoOwogICAgIGNoYXIgKm9wZXJhdGlvbiA9IE5VTEw7CisgICAgd2NoYXJfdCAqd3BhdGgsICp3b3BlcmF0aW9uOwogICAgIEhJTlNUQU5DRSByYzsKIAotICAgIFB5T2JqZWN0ICp1bmlwYXRoLCAqd29wZXJhdGlvbiA9IE5VTEw7CisgICAgUHlPYmplY3QgKnVuaXBhdGgsICp1b3BlcmF0aW9uID0gTlVMTDsKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlV8czpzdGFydGZpbGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmdW5pcGF0aCwgJm9wZXJhdGlvbikpIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKQEAgLTc1NTAsMjYgKzkyNDAsMzUgQEAKICAgICB9CiAKICAgICBpZiAob3BlcmF0aW9uKSB7Ci0gICAgICAgIHdvcGVyYXRpb24gPSBQeVVuaWNvZGVfRGVjb2RlQVNDSUkob3BlcmF0aW9uLAorICAgICAgICB1b3BlcmF0aW9uID0gUHlVbmljb2RlX0RlY29kZUFTQ0lJKG9wZXJhdGlvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJsZW4ob3BlcmF0aW9uKSwgTlVMTCk7Ci0gICAgICAgIGlmICghd29wZXJhdGlvbikgeworICAgICAgICBpZiAoIXVvcGVyYXRpb24pIHsKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgICAgICBvcGVyYXRpb24gPSBOVUxMOwogICAgICAgICAgICAgZ290byBub3JtYWw7CiAgICAgICAgIH0KICAgICB9CiAKKyAgICB3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUodW5pcGF0aCk7CisgICAgaWYgKHdwYXRoID09IE5VTEwpCisgICAgICAgIGdvdG8gbm9ybWFsOworICAgIGlmICh1b3BlcmF0aW9uKSB7CisgICAgICAgIHdvcGVyYXRpb24gPSBQeVVuaWNvZGVfQXNVbmljb2RlKHVvcGVyYXRpb24pOworICAgICAgICBpZiAod29wZXJhdGlvbiA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBub3JtYWw7CisgICAgfQorICAgIGVsc2UKKyAgICAgICAgd29wZXJhdGlvbiA9IE5VTEw7CisKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcmMgPSBTaGVsbEV4ZWN1dGVXKChIV05EKTAsIHdvcGVyYXRpb24gPyBQeVVuaWNvZGVfQVNfVU5JQ09ERSh3b3BlcmF0aW9uKSA6IDAsCi0gICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHVuaXBhdGgpLAotICAgICAgICBOVUxMLCBOVUxMLCBTV19TSE9XTk9STUFMKTsKKyAgICByYyA9IFNoZWxsRXhlY3V0ZVcoKEhXTkQpMCwgd29wZXJhdGlvbiwgd3BhdGgsCisgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIFNXX1NIT1dOT1JNQUwpOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAKLSAgICBQeV9YREVDUkVGKHdvcGVyYXRpb24pOworICAgIFB5X1hERUNSRUYodW9wZXJhdGlvbik7CiAgICAgaWYgKHJjIDw9IChISU5TVEFOQ0UpMzIpIHsKLSAgICAgICAgUHlPYmplY3QgKmVycnZhbCA9IHdpbjMyX2Vycm9yX3VuaWNvZGUoInN0YXJ0ZmlsZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHVuaXBhdGgpKTsKLSAgICAgICAgcmV0dXJuIGVycnZhbDsKKyAgICAgICAgd2luMzJfZXJyb3Jfb2JqZWN0KCJzdGFydGZpbGUiLCB1bmlwYXRoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICByZXR1cm4gUHlfTm9uZTsKQEAgLTc1NzksNiArOTI3OCwxMCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvZmlsZXBhdGgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZvcGVyYXRpb24pKQogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkgeworICAgICAgICBQeV9ERUNSRUYob2ZpbGVwYXRoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogICAgIGZpbGVwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvZmlsZXBhdGgpOwogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICByYyA9IFNoZWxsRXhlY3V0ZSgoSFdORCkwLCBvcGVyYXRpb24sIGZpbGVwYXRoLApAQCAtNzYyMyw2MyArOTMyNiw0OCBAQAogZGV2aWNlX2VuY29kaW5nKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBpbnQgZmQ7CisKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6ZGV2aWNlX2VuY29kaW5nIiwgJmZkKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaWYgKCFfUHlWZXJpZnlfZmQoZmQpIHx8ICFpc2F0dHkoZmQpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKLSAgICAgICAgcmV0dXJuIFB5X05vbmU7Ci0gICAgfQotI2lmIGRlZmluZWQoTVNfV0lORE9XUykgfHwgZGVmaW5lZChNU19XSU42NCkKLSAgICBpZiAoZmQgPT0gMCkgewotICAgICAgICBjaGFyIGJ1ZlsxMDBdOwotICAgICAgICBzcHJpbnRmKGJ1ZiwgImNwJWQiLCBHZXRDb25zb2xlQ1AoKSk7Ci0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhidWYpOwotICAgIH0KLSAgICBpZiAoZmQgPT0gMSB8fCBmZCA9PSAyKSB7Ci0gICAgICAgIGNoYXIgYnVmWzEwMF07Ci0gICAgICAgIHNwcmludGYoYnVmLCAiY3AlZCIsIEdldENvbnNvbGVPdXRwdXRDUCgpKTsKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKGJ1Zik7Ci0gICAgfQotI2VsaWYgZGVmaW5lZChDT0RFU0VUKQotICAgIHsKLSAgICAgICAgY2hhciAqY29kZXNldCA9IG5sX2xhbmdpbmZvKENPREVTRVQpOwotICAgICAgICBpZiAoY29kZXNldCAhPSBOVUxMICYmIGNvZGVzZXRbMF0gIT0gMCkKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhjb2Rlc2V0KTsKLSAgICB9Ci0jZW5kaWYKLSAgICBQeV9JTkNSRUYoUHlfTm9uZSk7Ci0gICAgcmV0dXJuIFB5X05vbmU7CisKKyAgICByZXR1cm4gX1B5X2RldmljZV9lbmNvZGluZyhmZCk7CiB9CiAKLVB5RG9jX1NUUlZBUihwb3NpeF91cmFuZG9tX19kb2NfXywKKyNpZmRlZiBfX1ZNUworLyogVXNlIG9wZW5zc2wgcmFuZG9tIHJvdXRpbmUgKi8KKyNpbmNsdWRlIDxvcGVuc3NsL3JhbmQuaD4KK1B5RG9jX1NUUlZBUih2bXNfdXJhbmRvbV9fZG9jX18sCiAidXJhbmRvbShuKSAtPiBzdHJcblxuXAogUmV0dXJuIG4gcmFuZG9tIGJ5dGVzIHN1aXRhYmxlIGZvciBjcnlwdG9ncmFwaGljIHVzZS4iKTsKIAotc3RhdGljIFB5T2JqZWN0ICoKLXBvc2l4X3VyYW5kb20oUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQorc3RhdGljIFB5T2JqZWN0Kgordm1zX3VyYW5kb20oUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5X3NzaXplX3Qgc2l6ZTsKLSAgICBQeU9iamVjdCAqcmVzdWx0OwotICAgIGludCByZXQ7CisgICAgaW50IGhvd01hbnk7CisgICAgUHlPYmplY3QqIHJlc3VsdDsKIAotICAgICAvKiBSZWFkIGFyZ3VtZW50cyAqLwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAibjp1cmFuZG9tIiwgJnNpemUpKQorICAgIC8qIFJlYWQgYXJndW1lbnRzICovCisgICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaTp1cmFuZG9tIiwgJmhvd01hbnkpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoc2l6ZSA8IDApCisgICAgaWYgKGhvd01hbnkgPCAwKQogICAgICAgICByZXR1cm4gUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5lZ2F0aXZlIGFyZ3VtZW50IG5vdCBhbGxvd2VkIik7Ci0gICAgcmVzdWx0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBzaXplKTsKLSAgICBpZiAocmVzdWx0ID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgcmV0ID0gX1B5T1NfVVJhbmRvbShQeUJ5dGVzX0FTX1NUUklORyhyZXN1bHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19HRVRfU0laRShyZXN1bHQpKTsKLSAgICBpZiAocmV0ID09IC0xKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAvKiBBbGxvY2F0ZSBieXRlcyAqLworICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgaG93TWFueSk7CisgICAgaWYgKHJlc3VsdCAhPSBOVUxMKSB7CisgICAgICAgIC8qIEdldCByYW5kb20gZGF0YSAqLworICAgICAgICBpZiAoUkFORF9wc2V1ZG9fYnl0ZXMoKHVuc2lnbmVkIGNoYXIqKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhvd01hbnkpIDwgMCkgeworICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgICAgICAgICByZXR1cm4gUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSQU5EX3BzZXVkb19ieXRlcyIpOworICAgICAgICB9CiAgICAgfQogICAgIHJldHVybiByZXN1bHQ7CiB9CisjZW5kaWYKIAogI2lmZGVmIEhBVkVfU0VUUkVTVUlECiBQeURvY19TVFJWQVIocG9zaXhfc2V0cmVzdWlkX19kb2NfXywKQEAgLTc3NTcsNiArOTQ0NSwxMDg4IEBACiB9CiAjZW5kaWYKIAorLyogUG9zaXggKmF0IGZhbWlseSBvZiBmdW5jdGlvbnM6CisgICAgZmFjY2Vzc2F0LCBmY2htb2RhdCwgZmNob3duYXQsIGZzdGF0YXQsIGZ1dGltZXNhdCwKKyAgICBsaW5rYXQsIG1rZGlyYXQsIG1rbm9kYXQsIG9wZW5hdCwgcmVhZGxpbmthdCwgcmVuYW1lYXQsIHN5bWxpbmthdCwKKyAgICB1bmxpbmthdCwgdXRpbWVuc2F0LCBta2ZpZm9hdCAqLworCisjaWZkZWYgSEFWRV9GQUNDRVNTQVQKK1B5RG9jX1NUUlZBUihwb3NpeF9mYWNjZXNzYXRfX2RvY19fLAorImZhY2Nlc3NhdChkaXJmZCwgcGF0aCwgbW9kZSwgZmxhZ3M9MCkgLT4gVHJ1ZSBpZiBncmFudGVkLCBGYWxzZSBvdGhlcndpc2VcblxuXAorTGlrZSBhY2Nlc3MoKSBidXQgaWYgcGF0aCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gZGlyZmQuXG5cCitmbGFncyBpcyBvcHRpb25hbCBhbmQgY2FuIGJlIGNvbnN0cnVjdGVkIGJ5IE9SaW5nIHRvZ2V0aGVyIHplcm8gb3IgbW9yZVxuXAorb2YgdGhlc2UgdmFsdWVzOiBBVF9TWU1MSU5LX05PRk9MTE9XLCBBVF9FQUNDRVNTLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mYWNjZXNzYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBjaGFyICpwYXRoOworICAgIGludCBtb2RlOworICAgIGludCByZXM7CisgICAgaW50IGRpcmZkLCBmbGFncyA9IDA7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZpfGk6ZmFjY2Vzc2F0IiwKKyAgICAgICAgICAgICZkaXJmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsICZtb2RlLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IGZhY2Nlc3NhdChkaXJmZCwgcGF0aCwgbW9kZSwgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKHJlcyA9PSAwKTsKK30KKyNlbmRpZgorCisjaWZkZWYgSEFWRV9GQ0hNT0RBVAorUHlEb2NfU1RSVkFSKHBvc2l4X2ZjaG1vZGF0X19kb2NfXywKKyJmY2htb2RhdChkaXJmZCwgcGF0aCwgbW9kZSwgZmxhZ3M9MClcblxuXAorTGlrZSBjaG1vZCgpIGJ1dCBpZiBwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkaXJmZC5cblwKK2ZsYWdzIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciBBVF9TWU1MSU5LX05PRk9MTE9XLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mY2htb2RhdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IGRpcmZkLCBtb2RlLCByZXM7CisgICAgaW50IGZsYWdzID0gMDsKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY2hhciAqcGF0aDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8maXxpOmZjaG1vZGF0IiwKKyAgICAgICAgICAgICZkaXJmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsICZtb2RlLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSBmY2htb2RhdChkaXJmZCwgcGF0aCwgbW9kZSwgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBpZiAocmVzIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYgLyogSEFWRV9GQ0hNT0RBVCAqLworCisjaWZkZWYgSEFWRV9GQ0hPV05BVAorUHlEb2NfU1RSVkFSKHBvc2l4X2ZjaG93bmF0X19kb2NfXywKKyJmY2hvd25hdChkaXJmZCwgcGF0aCwgdWlkLCBnaWQsIGZsYWdzPTApXG5cblwKK0xpa2UgY2hvd24oKSBidXQgaWYgcGF0aCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gZGlyZmQuXG5cCitmbGFncyBpcyBvcHRpb25hbCBhbmQgbWF5IGJlIDAgb3IgQVRfU1lNTElOS19OT0ZPTExPVy5cblwKK0lmIHBhdGggaXMgcmVsYXRpdmUgYW5kIGRpcmZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuIHBhdGhcblwKK2lzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfZmNob3duYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBpbnQgZGlyZmQsIHJlczsKKyAgICBsb25nIHVpZCwgZ2lkOworICAgIGludCBmbGFncyA9IDA7CisgICAgY2hhciAqcGF0aDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8mbGx8aTpmY2hvd25hdCIsCisgICAgICAgICAgICAmZGlyZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmdWlkLCAmZ2lkLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSBmY2hvd25hdChkaXJmZCwgcGF0aCwgKHVpZF90KSB1aWQsIChnaWRfdCkgZ2lkLCBmbGFncyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZiAvKiBIQVZFX0ZDSE9XTkFUICovCisKKyNpZmRlZiBIQVZFX0ZTVEFUQVQKK1B5RG9jX1NUUlZBUihwb3NpeF9mc3RhdGF0X19kb2NfXywKKyJmc3RhdGF0KGRpcmZkLCBwYXRoLCBmbGFncz0wKSAtPiBzdGF0IHJlc3VsdFxuXG5cCitMaWtlIHN0YXQoKSBidXQgaWYgcGF0aCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gZGlyZmQuXG5cCitmbGFncyBpcyBvcHRpb25hbCBhbmQgbWF5IGJlIDAgb3IgQVRfU1lNTElOS19OT0ZPTExPVy5cblwKK0lmIHBhdGggaXMgcmVsYXRpdmUgYW5kIGRpcmZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuIHBhdGhcblwKK2lzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfZnN0YXRhdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9wYXRoOworICAgIGNoYXIgKnBhdGg7CisgICAgU1RSVUNUX1NUQVQgc3Q7CisgICAgaW50IGRpcmZkLCByZXMsIGZsYWdzID0gMDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8mfGk6ZnN0YXRhdCIsCisgICAgICAgICAgICAmZGlyZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gZnN0YXRhdChkaXJmZCwgcGF0aCwgJnN0LCBmbGFncyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgIT0gMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisKKyAgICByZXR1cm4gX3B5c3RhdF9mcm9tc3RydWN0c3RhdCgmc3QpOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0ZVVElNRVNBVAorUHlEb2NfU1RSVkFSKHBvc2l4X2Z1dGltZXNhdF9fZG9jX18sCisiZnV0aW1lc2F0KGRpcmZkLCBwYXRoWywgKGF0aW1lLCBtdGltZSldKVxuXAorTGlrZSB1dGltZSgpIGJ1dCBpZiBwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkaXJmZC5cblwKK0lmIHBhdGggaXMgcmVsYXRpdmUgYW5kIGRpcmZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuIHBhdGhcblwKK2lzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfZnV0aW1lc2F0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY2hhciAqcGF0aDsKKyAgICBpbnQgcmVzLCBkaXJmZDsKKyAgICBQeU9iamVjdCogYXJnID0gUHlfTm9uZTsKKyAgICB0aW1lX3QgYXRpbWUsIG10aW1lOworICAgIGxvbmcgYW5zZWMsIG1uc2VjOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZ8TzpmdXRpbWVzYXQiLAorICAgICAgICAgICAgJmRpcmZkLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJmFyZykpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKyAgICBpZiAoYXJnID09IFB5X05vbmUpIHsKKyAgICAgICAgLyogb3B0aW9uYWwgdGltZSB2YWx1ZXMgbm90IGdpdmVuICovCisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgcmVzID0gZnV0aW1lc2F0KGRpcmZkLCBwYXRoLCBOVUxMKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgZWxzZSBpZiAoIVB5VHVwbGVfQ2hlY2soYXJnKSB8fCBQeVR1cGxlX1NpemUoYXJnKSAhPSAyKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgImZ1dGltZXNhdCgpIGFyZyAzIG11c3QgYmUgYSB0dXBsZSAoYXRpbWUsIG10aW1lKSIpOworICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGlmIChleHRyYWN0X3RpbWUoUHlUdXBsZV9HRVRfSVRFTShhcmcsIDApLAorICAgICAgICAgICAgICAgICAgICAgICAgICZhdGltZSwgJmFuc2VjKSA9PSAtMSkgeworICAgICAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIGlmIChleHRyYWN0X3RpbWUoUHlUdXBsZV9HRVRfSVRFTShhcmcsIDEpLAorICAgICAgICAgICAgICAgICAgICAgICAgICZtdGltZSwgJm1uc2VjKSA9PSAtMSkgeworICAgICAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICB7CisjaWZkZWYgSEFWRV9VVElNRU5TQVQKKyAgICAgICAgc3RydWN0IHRpbWVzcGVjIGJ1ZlsyXTsKKyAgICAgICAgYnVmWzBdLnR2X3NlYyA9IGF0aW1lOworICAgICAgICBidWZbMF0udHZfbnNlYyA9IGFuc2VjOworICAgICAgICBidWZbMV0udHZfc2VjID0gbXRpbWU7CisgICAgICAgIGJ1ZlsxXS50dl9uc2VjID0gbW5zZWM7CisgICAgICAgIHJlcyA9IHV0aW1lbnNhdChkaXJmZCwgcGF0aCwgYnVmLCAwKTsKKyNlbHNlCisgICAgICAgIHN0cnVjdCB0aW1ldmFsIGJ1ZlsyXTsKKyAgICAgICAgYnVmWzBdLnR2X3NlYyA9IGF0aW1lOworICAgICAgICBidWZbMF0udHZfdXNlYyA9IGFuc2VjIC8gMTAwMDsKKyAgICAgICAgYnVmWzFdLnR2X3NlYyA9IG10aW1lOworICAgICAgICBidWZbMV0udHZfdXNlYyA9IG1uc2VjIC8gMTAwMDsKKyAgICAgICAgcmVzID0gZnV0aW1lc2F0KGRpcmZkLCBwYXRoLCBidWYpOworI2VuZGlmCisgICAgICAgIH0KKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBpZiAocmVzIDwgMCkgeworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfTElOS0FUCitQeURvY19TVFJWQVIocG9zaXhfbGlua2F0X19kb2NfXywKKyJsaW5rYXQoc3JjZmQsIHNyY3BhdGgsIGRzdGZkLCBkc3RwYXRoLCBmbGFncz0wKVxuXG5cCitMaWtlIGxpbmsoKSBidXQgaWYgc3JjcGF0aCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gc3JjZmRcblwKK2FuZCBpZiBkc3RwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkc3RmZC5cblwKK2ZsYWdzIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciBBVF9TWU1MSU5LX0ZPTExPVy5cblwKK0lmIHNyY3BhdGggaXMgcmVsYXRpdmUgYW5kIHNyY2ZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuXG5cCitzcmNwYXRoIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiBUaGlzXG5cCithbHNvIGFwcGxpZXMgZm9yIGRzdHBhdGguIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9saW5rYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpvc3JjLCAqb2RzdDsKKyAgICBjaGFyICpzcmMsICpkc3Q7CisgICAgaW50IHJlcywgc3JjZmQsIGRzdGZkOworICAgIGludCBmbGFncyA9IDA7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlPJmlPJnxpOmxpbmthdCIsCisgICAgICAgICAgICAmc3JjZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9zcmMsICZkc3RmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb2RzdCwgJmZsYWdzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgc3JjID0gUHlCeXRlc19Bc1N0cmluZyhvc3JjKTsKKyAgICBkc3QgPSBQeUJ5dGVzX0FzU3RyaW5nKG9kc3QpOworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSBsaW5rYXQoc3JjZmQsIHNyYywgZHN0ZmQsIGRzdCwgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9zcmMpOworICAgIFB5X0RFQ1JFRihvZHN0KTsKKyAgICBpZiAocmVzIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYgLyogSEFWRV9MSU5LQVQgKi8KKworI2lmZGVmIEhBVkVfTUtESVJBVAorUHlEb2NfU1RSVkFSKHBvc2l4X21rZGlyYXRfX2RvY19fLAorIm1rZGlyYXQoZGlyZmQsIHBhdGgsIG1vZGU9MG83NzcpXG5cblwKK0xpa2UgbWtkaXIoKSBidXQgaWYgcGF0aCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gZGlyZmQuXG5cCitJZiBwYXRoIGlzIHJlbGF0aXZlIGFuZCBkaXJmZCBpcyB0aGUgc3BlY2lhbCB2YWx1ZSBBVF9GRENXRCwgdGhlbiBwYXRoXG5cCitpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X21rZGlyYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCByZXMsIGRpcmZkOworICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBjaGFyICpwYXRoOworICAgIGludCBtb2RlID0gMDc3NzsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8mfGk6bWtkaXJhdCIsCisgICAgICAgICAgICAmZGlyZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmbW9kZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gbWtkaXJhdChkaXJmZCwgcGF0aCwgbW9kZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWYgZGVmaW5lZChIQVZFX01LTk9EQVQpICYmIGRlZmluZWQoSEFWRV9NQUtFREVWKQorUHlEb2NfU1RSVkFSKHBvc2l4X21rbm9kYXRfX2RvY19fLAorIm1rbm9kYXQoZGlyZmQsIHBhdGgsIG1vZGU9MG82MDAsIGRldmljZT0wKVxuXG5cCitMaWtlIG1rbm9kKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9ta25vZGF0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY2hhciAqZmlsZW5hbWU7CisgICAgaW50IG1vZGUgPSAwNjAwOworICAgIGludCBkZXZpY2UgPSAwOworICAgIGludCByZXMsIGRpcmZkOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8mfGlpOm1rbm9kYXQiLCAmZGlyZmQsCisgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJm1vZGUsICZkZXZpY2UpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBmaWxlbmFtZSA9IFB5Qnl0ZXNfQVNfU1RSSU5HKG9wYXRoKTsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gbWtub2RhdChkaXJmZCwgZmlsZW5hbWUsIG1vZGUsIGRldmljZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWZkZWYgSEFWRV9PUEVOQVQKK1B5RG9jX1NUUlZBUihwb3NpeF9vcGVuYXRfX2RvY19fLAorIm9wZW5hdChkaXJmZCwgcGF0aCwgZmxhZywgbW9kZT0wbzc3NykgLT4gZmRcblxuXAorTGlrZSBvcGVuKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9vcGVuYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpvZmlsZTsKKyAgICBjaGFyICpmaWxlOworICAgIGludCBmbGFnLCBkaXJmZCwgZmQ7CisgICAgaW50IG1vZGUgPSAwNzc3OworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZpfGk6b3BlbmF0IiwKKyAgICAgICAgICAgICZkaXJmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb2ZpbGUsCisgICAgICAgICAgICAmZmxhZywgJm1vZGUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBmaWxlID0gUHlCeXRlc19Bc1N0cmluZyhvZmlsZSk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIGZkID0gb3BlbmF0KGRpcmZkLCBmaWxlLCBmbGFnLCBtb2RlKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIFB5X0RFQ1JFRihvZmlsZSk7CisgICAgaWYgKGZkIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZygobG9uZylmZCk7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfUkVBRExJTktBVAorUHlEb2NfU1RSVkFSKHBvc2l4X3JlYWRsaW5rYXRfX2RvY19fLAorInJlYWRsaW5rYXQoZGlyZmQsIHBhdGgpIC0+IHBhdGhcblxuXAorTGlrZSByZWFkbGluaygpIGJ1dCBpZiBwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkaXJmZC5cblwKK0lmIHBhdGggaXMgcmVsYXRpdmUgYW5kIGRpcmZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuIHBhdGhcblwKK2lzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfcmVhZGxpbmthdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnYsICpvcGF0aDsKKyAgICBjaGFyIGJ1ZltNQVhQQVRITEVOXTsKKyAgICBjaGFyICpwYXRoOworICAgIGludCBuLCBkaXJmZDsKKyAgICBpbnQgYXJnX2lzX3VuaWNvZGUgPSAwOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyY6cmVhZGxpbmthdCIsCisgICAgICAgICAgICAmZGlyZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOworICAgIHYgPSBQeVNlcXVlbmNlX0dldEl0ZW0oYXJncywgMSk7CisgICAgaWYgKHYgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHYpKSB7CisgICAgICAgIGFyZ19pc191bmljb2RlID0gMTsKKyAgICB9CisgICAgUHlfREVDUkVGKHYpOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIG4gPSByZWFkbGlua2F0KGRpcmZkLCBwYXRoLCBidWYsIChpbnQpIHNpemVvZiBidWYpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBpZiAobiA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworCisgICAgaWYgKGFyZ19pc191bmljb2RlKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUoYnVmLCBuKTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKGJ1Ziwgbik7Cit9CisjZW5kaWYgLyogSEFWRV9SRUFETElOS0FUICovCisKKyNpZmRlZiBIQVZFX1JFTkFNRUFUCitQeURvY19TVFJWQVIocG9zaXhfcmVuYW1lYXRfX2RvY19fLAorInJlbmFtZWF0KG9sZGRpcmZkLCBvbGRwYXRoLCBuZXdkaXJmZCwgbmV3cGF0aClcblxuXAorTGlrZSByZW5hbWUoKSBidXQgaWYgb2xkcGF0aCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG9cblwKK29sZGRpcmZkIGFuZCBpZiBuZXdwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBuZXdkaXJmZC5cblwKK0lmIG9sZHBhdGggaXMgcmVsYXRpdmUgYW5kIG9sZGRpcmZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuXG5cCitvbGRwYXRoIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiBUaGlzXG5cCithbHNvIGFwcGxpZXMgZm9yIG5ld3BhdGguIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9yZW5hbWVhdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IHJlczsKKyAgICBQeU9iamVjdCAqb3BhdGhvbGQsICpvcGF0aG5ldzsKKyAgICBjaGFyICpvcGF0aCwgKm5wYXRoOworICAgIGludCBvbGRmZCwgbmV3ZmQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlPJmlPJjpyZW5hbWVhdCIsCisgICAgICAgICAgICAmb2xkZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRob2xkLCAmbmV3ZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRobmV3KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgb3BhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRob2xkKTsKKyAgICBucGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGhuZXcpOworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSByZW5hbWVhdChvbGRmZCwgb3BhdGgsIG5ld2ZkLCBucGF0aCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGhvbGQpOworICAgIFB5X0RFQ1JFRihvcGF0aG5ldyk7CisgICAgaWYgKHJlcyA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCisKKyNpZiBIQVZFX1NZTUxJTktBVAorUHlEb2NfU1RSVkFSKHBvc2l4X3N5bWxpbmthdF9fZG9jX18sCisic3ltbGlua2F0KHNyYywgZHN0ZmQsIGRzdClcblxuXAorTGlrZSBzeW1saW5rKCkgYnV0IGlmIGRzdCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gZHN0ZmQuXG5cCitJZiBkc3QgaXMgcmVsYXRpdmUgYW5kIGRzdGZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuIGRzdFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zeW1saW5rYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCByZXMsIGRzdGZkOworICAgIFB5T2JqZWN0ICpvc3JjLCAqb2RzdDsKKyAgICBjaGFyICpzcmMsICpkc3Q7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8maU8mOnN5bWxpbmthdCIsCisgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvc3JjLCAmZHN0ZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9kc3QpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBzcmMgPSBQeUJ5dGVzX0FzU3RyaW5nKG9zcmMpOworICAgIGRzdCA9IFB5Qnl0ZXNfQXNTdHJpbmcob2RzdCk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IHN5bWxpbmthdChzcmMsIGRzdGZkLCBkc3QpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9zcmMpOworICAgIFB5X0RFQ1JFRihvZHN0KTsKKyAgICBpZiAocmVzIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYgLyogSEFWRV9TWU1MSU5LQVQgKi8KKworI2lmZGVmIEhBVkVfVU5MSU5LQVQKK1B5RG9jX1NUUlZBUihwb3NpeF91bmxpbmthdF9fZG9jX18sCisidW5saW5rYXQoZGlyZmQsIHBhdGgsIGZsYWdzPTApXG5cblwKK0xpa2UgdW5saW5rKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorZmxhZ3MgaXMgb3B0aW9uYWwgYW5kIG1heSBiZSAwIG9yIEFUX1JFTU9WRURJUi4gSWYgQVRfUkVNT1ZFRElSIGlzXG5cCitzcGVjaWZpZWQsIHVubGlua2F0KCkgYmVoYXZlcyBsaWtlIHJtZGlyKCkuXG5cCitJZiBwYXRoIGlzIHJlbGF0aXZlIGFuZCBkaXJmZCBpcyB0aGUgc3BlY2lhbCB2YWx1ZSBBVF9GRENXRCwgdGhlbiBwYXRoXG5cCitpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3VubGlua2F0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgZGlyZmQsIHJlcywgZmxhZ3MgPSAwOworICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBjaGFyICpwYXRoOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZ8aTp1bmxpbmthdCIsCisgICAgICAgICAgICAmZGlyZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IHVubGlua2F0KGRpcmZkLCBwYXRoLCBmbGFncyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWZkZWYgSEFWRV9VVElNRU5TQVQKK1B5RG9jX1NUUlZBUihwb3NpeF91dGltZW5zYXRfX2RvY19fLAorInV0aW1lbnNhdChkaXJmZCwgcGF0aFssIGF0aW1lPShhdGltZV9zZWMsIGF0aW1lX25zZWMpLFxuXAorICAgIG10aW1lPShtdGltZV9zZWMsIG10aW1lX25zZWMpLCBmbGFncz0wXSlcblwKK3V0aW1lbnNhdChkaXJmZCwgcGF0aCwgTm9uZSwgTm9uZSwgZmxhZ3MpXG5cblwKK1VwZGF0ZXMgdGhlIHRpbWVzdGFtcHMgb2YgYSBmaWxlIHdpdGggbmFub3NlY29uZCBwcmVjaXNpb24uIElmIHBhdGggaXNcblwKK3JlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkaXJmZC5cblwKK0lmIGF0aW1lIGFuZCBtdGltZSBhcmUgYm90aCBOb25lLCB3aGljaCBpcyB0aGUgZGVmYXVsdCwgc2V0IGF0aW1lIGFuZFxuXAorbXRpbWUgdG8gdGhlIGN1cnJlbnQgdGltZS5cblwKK2ZsYWdzIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciBBVF9TWU1MSU5LX05PRk9MTE9XLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuXG5cCitJZiAqX25zZWMgaXMgc3BlY2lmaWVkIGFzIFVUSU1FX05PVywgdGhlIHRpbWVzdGFtcCBpcyB1cGRhdGVkIHRvIHRoZVxuXAorY3VycmVudCB0aW1lLlxuXAorSWYgKl9uc2VjIGlzIHNwZWNpZmllZCBhcyBVVElNRV9PTUlULCB0aGUgdGltZXN0YW1wIGlzIG5vdCB1cGRhdGVkLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfdXRpbWVuc2F0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY2hhciAqcGF0aDsKKyAgICBpbnQgcmVzLCBkaXJmZCwgZmxhZ3MgPSAwOworICAgIFB5T2JqZWN0ICphdGltZSA9IFB5X05vbmU7CisgICAgUHlPYmplY3QgKm10aW1lID0gUHlfTm9uZTsKKworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiZGlyZmQiLCAicGF0aCIsICJhdGltZSIsICJtdGltZSIsICJmbGFncyIsIE5VTEx9OworCisgICAgc3RydWN0IHRpbWVzcGVjIGJ1ZlsyXTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgImlPJnxPT2k6dXRpbWVuc2F0Iiwga3dsaXN0LAorICAgICAgICAgICAgJmRpcmZkLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJmF0aW1lLCAmbXRpbWUsICZmbGFncykpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKyAgICBpZiAoYXRpbWUgPT0gUHlfTm9uZSAmJiBtdGltZSA9PSBQeV9Ob25lKSB7CisgICAgICAgIC8qIG9wdGlvbmFsIHRpbWUgdmFsdWVzIG5vdCBnaXZlbiAqLworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHJlcyA9IHV0aW1lbnNhdChkaXJmZCwgcGF0aCwgTlVMTCwgZmxhZ3MpOworICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIH0KKyAgICBlbHNlIGlmICghUHlUdXBsZV9DaGVjayhhdGltZSkgfHwgUHlUdXBsZV9TaXplKGF0aW1lKSAhPSAyKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAidXRpbWVuc2F0KCkgYXJnIDMgbXVzdCBiZSBhIHR1cGxlIChhdGltZV9zZWMsIGF0aW1lX25zZWMpIik7CisgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIGlmICghUHlUdXBsZV9DaGVjayhtdGltZSkgfHwgUHlUdXBsZV9TaXplKG10aW1lKSAhPSAyKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAidXRpbWVuc2F0KCkgYXJnIDQgbXVzdCBiZSBhIHR1cGxlIChtdGltZV9zZWMsIG10aW1lX25zZWMpIik7CisgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGF0aW1lLCAibGw6dXRpbWVuc2F0IiwKKyAgICAgICAgICAgICAgICAmKGJ1ZlswXS50dl9zZWMpLCAmKGJ1ZlswXS50dl9uc2VjKSkpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUobXRpbWUsICJsbDp1dGltZW5zYXQiLAorICAgICAgICAgICAgICAgICYoYnVmWzFdLnR2X3NlYyksICYoYnVmWzFdLnR2X25zZWMpKSkgeworICAgICAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgcmVzID0gdXRpbWVuc2F0KGRpcmZkLCBwYXRoLCBidWYsIGZsYWdzKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBpZiAocmVzIDwgMCkgeworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfTUtGSUZPQVQKK1B5RG9jX1NUUlZBUihwb3NpeF9ta2ZpZm9hdF9fZG9jX18sCisibWtmaWZvYXQoZGlyZmQsIHBhdGgsIG1vZGU9MG82NjYpXG5cblwKK0xpa2UgbWtmaWZvKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9ta2ZpZm9hdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9wYXRoOworICAgIGNoYXIgKmZpbGVuYW1lOworICAgIGludCBtb2RlID0gMDY2NjsKKyAgICBpbnQgcmVzLCBkaXJmZDsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlPJnxpOm1rZmlmb2F0IiwKKyAgICAgICAgICAgICZkaXJmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsICZtb2RlKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgZmlsZW5hbWUgPSBQeUJ5dGVzX0FTX1NUUklORyhvcGF0aCk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IG1rZmlmb2F0KGRpcmZkLCBmaWxlbmFtZSwgbW9kZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWZkZWYgVVNFX1hBVFRSUworCitzdGF0aWMgaW50Cit0cnlfZ2V0eGF0dHIoY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqbmFtZSwKKyAgICAgICAgICAgICBzc2l6ZV90ICgqZ2V0KShjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgdm9pZCAqLCBzaXplX3QpLAorICAgICAgICAgICAgIFB5X3NzaXplX3QgYnVmX3NpemUsIFB5T2JqZWN0ICoqcmVzKQoreworICAgIFB5T2JqZWN0ICp2YWx1ZTsKKyAgICBQeV9zc2l6ZV90IGxlbjsKKworICAgIGFzc2VydChidWZfc2l6ZSA8PSBYQVRUUl9TSVpFX01BWCk7CisgICAgdmFsdWUgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGJ1Zl9zaXplKTsKKyAgICBpZiAoIXZhbHVlKQorICAgICAgICByZXR1cm4gMDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIGxlbiA9IGdldChwYXRoLCBuYW1lLCBQeUJ5dGVzX0FTX1NUUklORyh2YWx1ZSksIGJ1Zl9zaXplKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUzsKKyAgICBpZiAobGVuIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYodmFsdWUpOworICAgICAgICBpZiAoZXJybm8gPT0gRVJBTkdFKSB7CisgICAgICAgICAgICB2YWx1ZSA9IE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBwb3NpeF9lcnJvcigpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSBpZiAobGVuICE9IGJ1Zl9zaXplKSB7CisgICAgICAgIC8qIENhbiBvbmx5IHNocmluay4gKi8KKyAgICAgICAgX1B5Qnl0ZXNfUmVzaXplKCZ2YWx1ZSwgbGVuKTsKKyAgICB9CisgICAgKnJlcyA9IHZhbHVlOworICAgIHJldHVybiAxOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorZ2V0eGF0dHJfY29tbW9uKGNvbnN0IGNoYXIgKnBhdGgsIFB5T2JqZWN0ICpuYW1lX29iaiwKKyAgICAgICAgICAgICAgICBzc2l6ZV90ICgqZ2V0KShjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgdm9pZCAqLCBzaXplX3QpKQoreworICAgIFB5T2JqZWN0ICp2YWx1ZTsKKyAgICBjb25zdCBjaGFyICpuYW1lID0gUHlCeXRlc19BU19TVFJJTkcobmFtZV9vYmopOworCisgICAgLyogVHJ5IGEgc21hbGwgdmFsdWUgZmlyc3QuICovCisgICAgaWYgKCF0cnlfZ2V0eGF0dHIocGF0aCwgbmFtZSwgZ2V0LCAxMjgsICZ2YWx1ZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICh2YWx1ZSkKKyAgICAgICAgcmV0dXJuIHZhbHVlOworICAgIC8qIE5vdyB0aGUgbWF4aW11bSBwb3NzaWJsZSBvbmUuICovCisgICAgaWYgKCF0cnlfZ2V0eGF0dHIocGF0aCwgbmFtZSwgZ2V0LCBYQVRUUl9TSVpFX01BWCwgJnZhbHVlKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgYXNzZXJ0KHZhbHVlKTsKKyAgICByZXR1cm4gdmFsdWU7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9nZXR4YXR0cl9fZG9jX18sCisiZ2V0eGF0dHIocGF0aCwgYXR0cikgLT4gdmFsdWVcblxuXAorUmV0dXJuIHRoZSB2YWx1ZSBvZiBleHRlbmRlZCBhdHRyaWJ1dGUgKm5hbWUqIG9uICpwYXRoKi4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2dldHhhdHRyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqcGF0aCwgKnJlcywgKm5hbWU7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6Z2V0eGF0dHIiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzID0gZ2V0eGF0dHJfY29tbW9uKFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGgpLCBuYW1lLCBnZXR4YXR0cik7CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIFB5X0RFQ1JFRihuYW1lKTsKKyAgICByZXR1cm4gcmVzOworfQorCitQeURvY19TVFJWQVIocG9zaXhfbGdldHhhdHRyX19kb2NfXywKKyJsZ2V0eGF0dHIocGF0aCwgYXR0cikgLT4gdmFsdWVcblxuXAorTGlrZSBnZXR4YXR0ciBidXQgZG9uJ3QgZm9sbG93IHN5bWxpbmtzLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfbGdldHhhdHRyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqcGF0aCwgKnJlcywgKm5hbWU7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6bGdldHhhdHRyIiwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmcGF0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmbmFtZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlcyA9IGdldHhhdHRyX2NvbW1vbihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgbmFtZSwgbGdldHhhdHRyKTsKKyAgICBQeV9ERUNSRUYocGF0aCk7CisgICAgUHlfREVDUkVGKG5hbWUpOworICAgIHJldHVybiByZXM7Cit9CisKK3N0YXRpYyBzc2l6ZV90Cit3cmFwX2ZnZXR4YXR0cihjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpuYW1lLCB2b2lkICp2YWx1ZSwgc2l6ZV90IHNpemUpCit7CisgICAgLyogSGFjayB0byBzaGFyZSBjb2RlLiAqLworICAgIHJldHVybiBmZ2V0eGF0dHIoKGludCkoUHlfdWludHB0cl90KXBhdGgsIG5hbWUsIHZhbHVlLCBzaXplKTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X2ZnZXR4YXR0cl9fZG9jX18sCisiZmdldHhhdHRyKGZkLCBhdHRyKSAtPiB2YWx1ZVxuXG5cCitMaWtlIGdldHhhdHRyIGJ1dCBvcGVyYXRlIG9uIGEgZmQgaW5zdGVhZCBvZiBhIHBhdGguIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mZ2V0eGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpyZXMsICpuYW1lOworICAgIGludCBmZDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8mOmZnZXR4YXR0ciIsICZmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmbmFtZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlcyA9IGdldHhhdHRyX2NvbW1vbigoY29uc3QgY2hhciAqKShQeV91aW50cHRyX3QpZmQsIG5hbWUsIHdyYXBfZmdldHhhdHRyKTsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgcmV0dXJuIHJlczsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X3NldHhhdHRyX19kb2NfXywKKyJzZXR4YXR0cihwYXRoLCBhdHRyLCB2YWx1ZSwgZmxhZ3M9MClcblxuXAorU2V0IGV4dGVuZGVkIGF0dHJpYnV0ZSAqYXR0ciogb24gKnBhdGgqIHRvICp2YWx1ZSouIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zZXR4YXR0cihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnBhdGgsICpuYW1lOworICAgIFB5X2J1ZmZlciBkYXRhOworICAgIGludCBmbGFncyA9IDAsIGVycjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZPJnkqfGk6c2V0eGF0dHIiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZwYXRoLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lLCAmZGF0YSwgJmZsYWdzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUzsKKyAgICBlcnIgPSBzZXR4YXR0cihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgUHlCeXRlc19BU19TVFJJTkcobmFtZSksCisgICAgICAgICAgICAgICAgICAgZGF0YS5idWYsIGRhdGEubGVuLCBmbGFncyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFM7CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIFB5X0RFQ1JFRihuYW1lKTsKKyAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZkYXRhKTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X2xzZXR4YXR0cl9fZG9jX18sCisibHNldHhhdHRyKHBhdGgsIGF0dHIsIHZhbHVlLCBmbGFncz0wKVxuXG5cCitMaWtlIHNldHhhdHRyIGJ1dCBkb24ndCBmb2xsb3cgc3ltbGlua3MuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9sc2V0eGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpwYXRoLCAqbmFtZTsKKyAgICBQeV9idWZmZXIgZGF0YTsKKyAgICBpbnQgZmxhZ3MgPSAwLCBlcnI7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyZ5KnxpOmxzZXR4YXR0ciIsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJnBhdGgsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm5hbWUsICZkYXRhLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIGVyciA9IGxzZXR4YXR0cihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgUHlCeXRlc19BU19TVFJJTkcobmFtZSksCisgICAgICAgICAgICAgICAgICAgIGRhdGEuYnVmLCBkYXRhLmxlbiwgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIFB5X0RFQ1JFRihwYXRoKTsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgUHlCdWZmZXJfUmVsZWFzZSgmZGF0YSk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9mc2V0eGF0dHJfX2RvY19fLAorImZzZXR4YXR0cihmZCwgYXR0ciwgdmFsdWUsIGZsYWdzPTApXG5cblwKK0xpa2Ugc2V0eGF0dHIgYnV0IG9wZXJhdGVzIG9uICpmZCogaW5zdGVhZCBvZiBhIHBhdGguIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mc2V0eGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5X2J1ZmZlciBkYXRhOworICAgIGNvbnN0IGNoYXIgKm5hbWU7CisgICAgaW50IGZkLCBmbGFncyA9IDAsIGVycjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8meSp8aTpmc2V0eGF0dHIiLCAmZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsICZkYXRhLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIGVyciA9IGZzZXR4YXR0cihmZCwgUHlCeXRlc19BU19TVFJJTkcobmFtZSksIGRhdGEuYnVmLCBkYXRhLmxlbiwgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIFB5X0RFQ1JFRihuYW1lKTsKKyAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZkYXRhKTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X3JlbW92ZXhhdHRyX19kb2NfXywKKyJyZW1vdmV4YXR0cihwYXRoLCBhdHRyKVxuXG5cCitSZW1vdmUgZXh0ZW5kZWQgYXR0cmlidXRlICphdHRyKiBvbiAqcGF0aCouIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9yZW1vdmV4YXR0cihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnBhdGgsICpuYW1lOworICAgIGludCBlcnI7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6cmVtb3ZleGF0dHIiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUzsKKyAgICBlcnIgPSByZW1vdmV4YXR0cihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgUHlCeXRlc19BU19TVFJJTkcobmFtZSkpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIFB5X0RFQ1JFRihwYXRoKTsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9scmVtb3ZleGF0dHJfX2RvY19fLAorImxyZW1vdmV4YXR0cihwYXRoLCBhdHRyKVxuXG5cCitMaWtlIHJlbW92ZXhhdHRyIGJ1dCBkb24ndCBmb2xsb3cgc3ltbGlua3MuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9scmVtb3ZleGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpwYXRoLCAqbmFtZTsKKyAgICBpbnQgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJk8mOmxyZW1vdmV4YXR0ciIsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnBhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm5hbWUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIGVyciA9IGxyZW1vdmV4YXR0cihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgUHlCeXRlc19BU19TVFJJTkcobmFtZSkpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIFB5X0RFQ1JFRihwYXRoKTsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9mcmVtb3ZleGF0dHJfX2RvY19fLAorImZyZW1vdmV4YXR0cihmZCwgYXR0cilcblxuXAorTGlrZSByZW1vdmV4YXR0ciBidXQgb3BlcmF0ZXMgb24gYSBmaWxlIGRlc2NyaXB0b3IuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mcmVtb3ZleGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpuYW1lOworICAgIGludCBmZCwgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyY6ZnJlbW92ZXhhdHRyIiwgJmZkLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUzsKKyAgICBlcnIgPSBmcmVtb3ZleGF0dHIoZmQsIFB5Qnl0ZXNfQVNfU1RSSU5HKG5hbWUpKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUzsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyBQeV9zc2l6ZV90Cit0cnlfbGlzdHhhdHRyKGNvbnN0IGNoYXIgKnBhdGgsIHNzaXplX3QgKCpsaXN0KShjb25zdCBjaGFyICosIGNoYXIgKiwgc2l6ZV90KSwKKyAgICAgICAgICAgICAgUHlfc3NpemVfdCBidWZfc2l6ZSwgY2hhciAqKmJ1ZikKK3sKKyAgICBQeV9zc2l6ZV90IGxlbjsKKworICAgICpidWYgPSBQeU1lbV9NQUxMT0MoYnVmX3NpemUpOworICAgIGlmICghKmJ1ZikgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFM7CisgICAgbGVuID0gbGlzdChwYXRoLCAqYnVmLCBidWZfc2l6ZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFM7CisgICAgaWYgKGxlbiA8IDApIHsKKyAgICAgICAgUHlNZW1fRlJFRSgqYnVmKTsKKyAgICAgICAgaWYgKGVycm5vICE9IEVSQU5HRSkKKyAgICAgICAgICAgIHBvc2l4X2Vycm9yKCk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgcmV0dXJuIGxlbjsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2xpc3R4YXR0cl9jb21tb24oY29uc3QgY2hhciAqcGF0aCwgc3NpemVfdCAoKmxpc3QpKGNvbnN0IGNoYXIgKiwgY2hhciAqLCBzaXplX3QpKQoreworICAgIFB5T2JqZWN0ICpyZXMsICphdHRyOworICAgIFB5X3NzaXplX3QgbGVuLCBlcnIsIHN0YXJ0LCBpOworICAgIGNoYXIgKmJ1ZjsKKworICAgIGxlbiA9IHRyeV9saXN0eGF0dHIocGF0aCwgbGlzdCwgMjU2LCAmYnVmKTsKKyAgICBpZiAobGVuIDwgMCkgeworICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBsZW4gPSB0cnlfbGlzdHhhdHRyKHBhdGgsIGxpc3QsIFhBVFRSX0xJU1RfTUFYLCAmYnVmKTsKKyAgICAgICAgaWYgKGxlbiA8IDApCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmVzID0gUHlMaXN0X05ldygwKTsKKyAgICBpZiAoIXJlcykgeworICAgICAgICBQeU1lbV9GUkVFKGJ1Zik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBmb3IgKHN0YXJ0ID0gaSA9IDA7IGkgPCBsZW47IGkrKykgeworICAgICAgICBpZiAoIWJ1ZltpXSkgeworICAgICAgICAgICAgYXR0ciA9IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHRBbmRTaXplKCZidWZbc3RhcnRdLCBpIC0gc3RhcnQpOworICAgICAgICAgICAgaWYgKCFhdHRyKSB7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcyk7CisgICAgICAgICAgICAgICAgUHlNZW1fRlJFRShidWYpOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZXJyID0gUHlMaXN0X0FwcGVuZChyZXMsIGF0dHIpOworICAgICAgICAgICAgUHlfREVDUkVGKGF0dHIpOworICAgICAgICAgICAgaWYgKGVycikgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXMpOworICAgICAgICAgICAgICAgIFB5TWVtX0ZSRUUoYnVmKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHN0YXJ0ID0gaSArIDE7CisgICAgICAgIH0KKyAgICB9CisgICAgUHlNZW1fRlJFRShidWYpOworICAgIHJldHVybiByZXM7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9saXN0eGF0dHJfX2RvY19fLAorImxpc3R4YXR0cihwYXRoKVxuXG5cCitSZXR1cm4gYSBsaXN0IG9mIGV4dGVuZGVkIGF0dHJpYnV0ZXMgb24gKnBhdGgqLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfbGlzdHhhdHRyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqcGF0aCwgKnJlczsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6bGlzdHhhdHRyIiwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmcGF0aCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlcyA9IGxpc3R4YXR0cl9jb21tb24oUHlCeXRlc19BU19TVFJJTkcocGF0aCksIGxpc3R4YXR0cik7CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIHJldHVybiByZXM7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9sbGlzdHhhdHRyX19kb2NfXywKKyJsbGlzdHhhdHRyKHBhdGgpXG5cblwKK0xpa2UgbGlzdHhhdHRyIGJ1dCBkb24ndCBmb2xsb3cgc3ltbGlua3MuLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfbGxpc3R4YXR0cihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnBhdGgsICpyZXM7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mOmxsaXN0eGF0dHIiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzID0gbGlzdHhhdHRyX2NvbW1vbihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgbGxpc3R4YXR0cik7CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIHJldHVybiByZXM7Cit9CisKK3N0YXRpYyBzc2l6ZV90Cit3cmFwX2ZsaXN0eGF0dHIoY29uc3QgY2hhciAqcGF0aCwgY2hhciAqYnVmLCBzaXplX3QgbGVuKQoreworICAgIC8qIEhhY2sgdG8gc2hhcmUgY29kZS4gKi8KKyAgICByZXR1cm4gZmxpc3R4YXR0cigoaW50KShQeV91aW50cHRyX3QpcGF0aCwgYnVmLCBsZW4pOworfQorCitQeURvY19TVFJWQVIocG9zaXhfZmxpc3R4YXR0cl9fZG9jX18sCisiZmxpc3R4YXR0cihwYXRoKVxuXG5cCitMaWtlIGZsaXN0eGF0dHIgYnV0IG9wZXJhdGVzIG9uIGEgZmlsZSBkZXNjcmlwdG9yLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfZmxpc3R4YXR0cihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgbG9uZyBmZDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaTpmbGlzdHhhdHRyIiwgJmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIGxpc3R4YXR0cl9jb21tb24oKGNvbnN0IGNoYXIgKikoUHlfdWludHB0cl90KWZkLCB3cmFwX2ZsaXN0eGF0dHIpOworfQorCisjZW5kaWYgLyogVVNFX1hBVFRSUyAqLworCisKK1B5RG9jX1NUUlZBUihwb3NpeF91cmFuZG9tX19kb2NfXywKKyJ1cmFuZG9tKG4pIC0+IHN0clxuXG5cCitSZXR1cm4gbiByYW5kb20gYnl0ZXMgc3VpdGFibGUgZm9yIGNyeXB0b2dyYXBoaWMgdXNlLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfdXJhbmRvbShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfc3NpemVfdCBzaXplOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgaW50IHJldDsKKworICAgICAvKiBSZWFkIGFyZ3VtZW50cyAqLworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAibjp1cmFuZG9tIiwgJnNpemUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoc2l6ZSA8IDApCisgICAgICAgIHJldHVybiBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmVnYXRpdmUgYXJndW1lbnQgbm90IGFsbG93ZWQiKTsKKyAgICByZXN1bHQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIHNpemUpOworICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXQgPSBfUHlPU19VUmFuZG9tKFB5Qnl0ZXNfQVNfU1RSSU5HKHJlc3VsdCksCisgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0dFVF9TSVpFKHJlc3VsdCkpOworICAgIGlmIChyZXQgPT0gLTEpIHsKKyAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gcmVzdWx0OworfQorCisvKiBUZXJtaW5hbCBzaXplIHF1ZXJ5aW5nICovCisKK3N0YXRpYyBQeVR5cGVPYmplY3QgVGVybWluYWxTaXplVHlwZTsKKworUHlEb2NfU1RSVkFSKFRlcm1pbmFsU2l6ZV9kb2NzdHJpbmcsCisgICAgIkEgdHVwbGUgb2YgKGNvbHVtbnMsIGxpbmVzKSBmb3IgaG9sZGluZyB0ZXJtaW5hbCB3aW5kb3cgc2l6ZSIpOworCitzdGF0aWMgUHlTdHJ1Y3RTZXF1ZW5jZV9GaWVsZCBUZXJtaW5hbFNpemVfZmllbGRzW10gPSB7CisgICAgeyJjb2x1bW5zIiwgIndpZHRoIG9mIHRoZSB0ZXJtaW5hbCB3aW5kb3cgaW4gY2hhcmFjdGVycyJ9LAorICAgIHsibGluZXMiLCAiaGVpZ2h0IG9mIHRoZSB0ZXJtaW5hbCB3aW5kb3cgaW4gY2hhcmFjdGVycyJ9LAorICAgIHtOVUxMLCBOVUxMfQorfTsKKworc3RhdGljIFB5U3RydWN0U2VxdWVuY2VfRGVzYyBUZXJtaW5hbFNpemVfZGVzYyA9IHsKKyAgICAib3MudGVybWluYWxfc2l6ZSIsCisgICAgVGVybWluYWxTaXplX2RvY3N0cmluZywKKyAgICBUZXJtaW5hbFNpemVfZmllbGRzLAorICAgIDIsCit9OworCisjaWYgZGVmaW5lZChURVJNU0laRV9VU0VfQ09OSU8pIHx8IGRlZmluZWQoVEVSTVNJWkVfVVNFX0lPQ1RMKQorUHlEb2NfU1RSVkFSKHRlcm1zaXplX19kb2NfXywKKyAgICAiUmV0dXJuIHRoZSBzaXplIG9mIHRoZSB0ZXJtaW5hbCB3aW5kb3cgYXMgKGNvbHVtbnMsIGxpbmVzKS5cbiIgICAgICAgIFwKKyAgICAiXG4iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAiVGhlIG9wdGlvbmFsIGFyZ3VtZW50IGZkIChkZWZhdWx0IHN0YW5kYXJkIG91dHB1dCkgc3BlY2lmaWVzXG4iICAgICAgIFwKKyAgICAid2hpY2ggZmlsZSBkZXNjcmlwdG9yIHNob3VsZCBiZSBxdWVyaWVkLlxuIiAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAiXG4iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAiSWYgdGhlIGZpbGUgZGVzY3JpcHRvciBpcyBub3QgY29ubmVjdGVkIHRvIGEgdGVybWluYWwsIGFuIE9TRXJyb3JcbiIgIFwKKyAgICAiaXMgdGhyb3duLlxuIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAiXG4iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAiVGhpcyBmdW5jdGlvbiB3aWxsIG9ubHkgYmUgZGVmaW5lZCBpZiBhbiBpbXBsZW1lbnRhdGlvbiBpc1xuIiAgICAgICAgIFwKKyAgICAiYXZhaWxhYmxlIGZvciB0aGlzIHN5c3RlbS5cbiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAiXG4iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAic2h1dGlsLmdldF90ZXJtaW5hbF9zaXplIGlzIHRoZSBoaWdoLWxldmVsIGZ1bmN0aW9uIHdoaWNoIHNob3VsZCBcbiIgIFwKKyAgICAibm9ybWFsbHkgYmUgdXNlZCwgb3MuZ2V0X3Rlcm1pbmFsX3NpemUgaXMgdGhlIGxvdy1sZXZlbCBpbXBsZW1lbnRhdGlvbi4iKTsKKworc3RhdGljIFB5T2JqZWN0KgorZ2V0X3Rlcm1pbmFsX3NpemUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBjb2x1bW5zLCBsaW5lczsKKyAgICBQeU9iamVjdCAqdGVybXNpemU7CisKKyAgICBpbnQgZmQgPSBmaWxlbm8oc3Rkb3V0KTsKKyAgICAvKiBVbmRlciBzb21lIGNvbmRpdGlvbnMgc3Rkb3V0IG1heSBub3QgYmUgY29ubmVjdGVkIGFuZAorICAgICAqIGZpbGVubyhzdGRvdXQpIG1heSBwb2ludCB0byBhbiBpbnZhbGlkIGZpbGUgZGVzY3JpcHRvci4gRm9yIGV4YW1wbGUKKyAgICAgKiBHVUkgYXBwcyBkb24ndCBoYXZlIHZhbGlkIHN0YW5kYXJkIHN0cmVhbXMgYnkgZGVmYXVsdC4KKyAgICAgKgorICAgICAqIElmIHRoaXMgaGFwcGVucywgYW5kIHRoZSBvcHRpb25hbCBmZCBhcmd1bWVudCBpcyBub3QgcHJlc2VudCwKKyAgICAgKiB0aGUgaW9jdGwgYmVsb3cgd2lsbCBmYWlsIHJldHVybmluZyBFQkFERi4gVGhpcyBpcyB3aGF0IHdlIHdhbnQuCisgICAgICovCisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxpIiwgJmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyNpZmRlZiBURVJNU0laRV9VU0VfSU9DVEwKKyAgICB7CisgICAgICAgIHN0cnVjdCB3aW5zaXplIHc7CisgICAgICAgIGlmIChpb2N0bChmZCwgVElPQ0dXSU5TWiwgJncpKQorICAgICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKKyAgICAgICAgY29sdW1ucyA9IHcud3NfY29sOworICAgICAgICBsaW5lcyA9IHcud3Nfcm93OworICAgIH0KKyNlbmRpZiAvKiBURVJNU0laRV9VU0VfSU9DVEwgKi8KKworI2lmZGVmIFRFUk1TSVpFX1VTRV9DT05JTworICAgIHsKKyAgICAgICAgRFdPUkQgbmhhbmRsZTsKKyAgICAgICAgSEFORExFIGhhbmRsZTsKKyAgICAgICAgQ09OU09MRV9TQ1JFRU5fQlVGRkVSX0lORk8gY3NiaTsKKyAgICAgICAgc3dpdGNoIChmZCkgeworICAgICAgICBjYXNlIDA6IG5oYW5kbGUgPSBTVERfSU5QVVRfSEFORExFOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMTogbmhhbmRsZSA9IFNURF9PVVRQVVRfSEFORExFOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjogbmhhbmRsZSA9IFNURF9FUlJPUl9IQU5ETEU7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHJldHVybiBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwgImJhZCBmaWxlIGRlc2NyaXB0b3IiKTsKKyAgICAgICAgfQorICAgICAgICBoYW5kbGUgPSBHZXRTdGRIYW5kbGUobmhhbmRsZSk7CisgICAgICAgIGlmIChoYW5kbGUgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBQeUVycl9Gb3JtYXQoUHlFeGNfT1NFcnJvciwgImhhbmRsZSBjYW5ub3QgYmUgcmV0cmlldmVkIik7CisgICAgICAgIGlmIChoYW5kbGUgPT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUpCisgICAgICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoMCk7CisKKyAgICAgICAgaWYgKCFHZXRDb25zb2xlU2NyZWVuQnVmZmVySW5mbyhoYW5kbGUsICZjc2JpKSkKKyAgICAgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tV2luZG93c0VycigwKTsKKworICAgICAgICBjb2x1bW5zID0gY3NiaS5zcldpbmRvdy5SaWdodCAtIGNzYmkuc3JXaW5kb3cuTGVmdCArIDE7CisgICAgICAgIGxpbmVzID0gY3NiaS5zcldpbmRvdy5Cb3R0b20gLSBjc2JpLnNyV2luZG93LlRvcCArIDE7CisgICAgfQorI2VuZGlmIC8qIFRFUk1TSVpFX1VTRV9DT05JTyAqLworCisgICAgdGVybXNpemUgPSBQeVN0cnVjdFNlcXVlbmNlX05ldygmVGVybWluYWxTaXplVHlwZSk7CisgICAgaWYgKHRlcm1zaXplID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0odGVybXNpemUsIDAsIFB5TG9uZ19Gcm9tTG9uZyhjb2x1bW5zKSk7CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTSh0ZXJtc2l6ZSwgMSwgUHlMb25nX0Zyb21Mb25nKGxpbmVzKSk7CisgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKKyAgICAgICAgUHlfREVDUkVGKHRlcm1zaXplKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJldHVybiB0ZXJtc2l6ZTsKK30KKyNlbmRpZiAvKiBkZWZpbmVkKFRFUk1TSVpFX1VTRV9DT05JTykgfHwgZGVmaW5lZChURVJNU0laRV9VU0VfSU9DVEwpICovCisKKwogc3RhdGljIFB5TWV0aG9kRGVmIHBvc2l4X21ldGhvZHNbXSA9IHsKICAgICB7ImFjY2VzcyIsICAgICAgICAgIHBvc2l4X2FjY2VzcywgTUVUSF9WQVJBUkdTLCBwb3NpeF9hY2Nlc3NfX2RvY19ffSwKICNpZmRlZiBIQVZFX1RUWU5BTUUKQEAgLTc4MDEsMTEgKzEwNTcxLDIwIEBACiAgICAgeyJsaW5rIiwgICAgICAgICAgICBwb3NpeF9saW5rLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2xpbmtfX2RvY19ffSwKICNlbmRpZiAvKiBIQVZFX0xJTksgKi8KICAgICB7Imxpc3RkaXIiLCAgICAgICAgIHBvc2l4X2xpc3RkaXIsIE1FVEhfVkFSQVJHUywgcG9zaXhfbGlzdGRpcl9fZG9jX199LAorI2lmZGVmIEhBVkVfRkRPUEVORElSCisgICAgeyJmbGlzdGRpciIsICAgICAgIHBvc2l4X2ZsaXN0ZGlyLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2ZsaXN0ZGlyX19kb2NfX30sCisjZW5kaWYKICAgICB7ImxzdGF0IiwgICAgICAgICAgIHBvc2l4X2xzdGF0LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2xzdGF0X19kb2NfX30sCiAgICAgeyJta2RpciIsICAgICAgICAgICBwb3NpeF9ta2RpciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9ta2Rpcl9fZG9jX199LAogI2lmZGVmIEhBVkVfTklDRQogICAgIHsibmljZSIsICAgICAgICAgICAgcG9zaXhfbmljZSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9uaWNlX19kb2NfX30sCiAjZW5kaWYgLyogSEFWRV9OSUNFICovCisjaWZkZWYgSEFWRV9HRVRQUklPUklUWQorICAgIHsiZ2V0cHJpb3JpdHkiLCAgICAgcG9zaXhfZ2V0cHJpb3JpdHksIE1FVEhfVkFSQVJHUywgcG9zaXhfZ2V0cHJpb3JpdHlfX2RvY19ffSwKKyNlbmRpZiAvKiBIQVZFX0dFVFBSSU9SSVRZICovCisjaWZkZWYgSEFWRV9TRVRQUklPUklUWQorICAgIHsic2V0cHJpb3JpdHkiLCAgICAgcG9zaXhfc2V0cHJpb3JpdHksIE1FVEhfVkFSQVJHUywgcG9zaXhfc2V0cHJpb3JpdHlfX2RvY19ffSwKKyNlbmRpZiAvKiBIQVZFX1NFVFBSSU9SSVRZICovCiAjaWZkZWYgSEFWRV9SRUFETElOSwogICAgIHsicmVhZGxpbmsiLCAgICAgICAgcG9zaXhfcmVhZGxpbmssIE1FVEhfVkFSQVJHUywgcG9zaXhfcmVhZGxpbmtfX2RvY19ffSwKICNlbmRpZiAvKiBIQVZFX1JFQURMSU5LICovCkBAIC03ODEzLDYgKzEwNTkyLDcgQEAKICAgICB7InJlYWRsaW5rIiwgICAgICAgIHdpbl9yZWFkbGluaywgTUVUSF9WQVJBUkdTLCB3aW5fcmVhZGxpbmtfX2RvY19ffSwKICNlbmRpZiAvKiAhZGVmaW5lZChIQVZFX1JFQURMSU5LKSAmJiBkZWZpbmVkKE1TX1dJTkRPV1MpICovCiAgICAgeyJyZW5hbWUiLCAgICAgICAgICBwb3NpeF9yZW5hbWUsIE1FVEhfVkFSQVJHUywgcG9zaXhfcmVuYW1lX19kb2NfX30sCisgICAgeyJyZXBsYWNlIiwgICAgICAgICBwb3NpeF9yZXBsYWNlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3JlcGxhY2VfX2RvY19ffSwKICAgICB7InJtZGlyIiwgICAgICAgICAgIHBvc2l4X3JtZGlyLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3JtZGlyX19kb2NfX30sCiAgICAgeyJzdGF0IiwgICAgICAgICAgICBwb3NpeF9zdGF0LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3N0YXRfX2RvY19ffSwKICAgICB7InN0YXRfZmxvYXRfdGltZXMiLCBzdGF0X2Zsb2F0X3RpbWVzLCBNRVRIX1ZBUkFSR1MsIHN0YXRfZmxvYXRfdGltZXNfX2RvY19ffSwKQEAgLTc4MzMsNiArMTA2MTMsMTUgQEAKICAgICB7InVubGluayIsICAgICAgICAgIHBvc2l4X3VubGluaywgTUVUSF9WQVJBUkdTLCBwb3NpeF91bmxpbmtfX2RvY19ffSwKICAgICB7InJlbW92ZSIsICAgICAgICAgIHBvc2l4X3VubGluaywgTUVUSF9WQVJBUkdTLCBwb3NpeF9yZW1vdmVfX2RvY19ffSwKICAgICB7InV0aW1lIiwgICAgICAgICAgIHBvc2l4X3V0aW1lLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3V0aW1lX19kb2NfX30sCisjaWZkZWYgSEFWRV9GVVRJTUVTCisgICAgeyJmdXRpbWVzIiwgICAgICAgICBwb3NpeF9mdXRpbWVzLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2Z1dGltZXNfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfTFVUSU1FUworICAgIHsibHV0aW1lcyIsICAgICAgICAgcG9zaXhfbHV0aW1lcywgTUVUSF9WQVJBUkdTLCBwb3NpeF9sdXRpbWVzX19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX0ZVVElNRU5TCisgICAgeyJmdXRpbWVucyIsICAgICAgICBwb3NpeF9mdXRpbWVucywgTUVUSF9WQVJBUkdTLCBwb3NpeF9mdXRpbWVuc19fZG9jX199LAorI2VuZGlmCiAjaWZkZWYgSEFWRV9USU1FUwogICAgIHsidGltZXMiLCAgICAgICAgICAgcG9zaXhfdGltZXMsIE1FVEhfTk9BUkdTLCBwb3NpeF90aW1lc19fZG9jX199LAogI2VuZGlmIC8qIEhBVkVfVElNRVMgKi8KQEAgLTc4NDEsNiArMTA2MzAsOSBAQAogICAgIHsiZXhlY3YiLCAgICAgICAgICAgcG9zaXhfZXhlY3YsIE1FVEhfVkFSQVJHUywgcG9zaXhfZXhlY3ZfX2RvY19ffSwKICAgICB7ImV4ZWN2ZSIsICAgICAgICAgIHBvc2l4X2V4ZWN2ZSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9leGVjdmVfX2RvY19ffSwKICNlbmRpZiAvKiBIQVZFX0VYRUNWICovCisjaWZkZWYgSEFWRV9GRVhFQ1ZFCisgICAgeyJmZXhlY3ZlIiwgICAgICAgICAgcG9zaXhfZmV4ZWN2ZSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mZXhlY3ZlX19kb2NfX30sCisjZW5kaWYKICNpZmRlZiBIQVZFX1NQQVdOVgogICAgIHsic3Bhd252IiwgICAgICAgICAgcG9zaXhfc3Bhd252LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3NwYXdudl9fZG9jX199LAogICAgIHsic3Bhd252ZSIsICAgICAgICAgcG9zaXhfc3Bhd252ZSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9zcGF3bnZlX19kb2NfX30sCkBAIC03ODU1LDYgKzEwNjQ3LDMyIEBACiAjaWZkZWYgSEFWRV9GT1JLCiAgICAgeyJmb3JrIiwgICAgICAgICAgICBwb3NpeF9mb3JrLCBNRVRIX05PQVJHUywgcG9zaXhfZm9ya19fZG9jX199LAogI2VuZGlmIC8qIEhBVkVfRk9SSyAqLworI2lmZGVmIEhBVkVfU0NIRURfSAorI2lmZGVmIEhBVkVfU0NIRURfR0VUX1BSSU9SSVRZX01BWAorICAgIHsic2NoZWRfZ2V0X3ByaW9yaXR5X21heCIsIHBvc2l4X3NjaGVkX2dldF9wcmlvcml0eV9tYXgsIE1FVEhfVkFSQVJHUywgcG9zaXhfc2NoZWRfZ2V0X3ByaW9yaXR5X21heF9fZG9jX199LAorICAgIHsic2NoZWRfZ2V0X3ByaW9yaXR5X21pbiIsIHBvc2l4X3NjaGVkX2dldF9wcmlvcml0eV9taW4sIE1FVEhfVkFSQVJHUywgcG9zaXhfc2NoZWRfZ2V0X3ByaW9yaXR5X21pbl9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TQ0hFRF9TRVRQQVJBTQorICAgIHsic2NoZWRfZ2V0cGFyYW0iLCBwb3NpeF9zY2hlZF9nZXRwYXJhbSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9zY2hlZF9nZXRwYXJhbV9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIKKyAgICB7InNjaGVkX2dldHNjaGVkdWxlciIsIHBvc2l4X3NjaGVkX2dldHNjaGVkdWxlciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9zY2hlZF9nZXRzY2hlZHVsZXJfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfU0NIRURfUlJfR0VUX0lOVEVSVkFMCisgICAgeyJzY2hlZF9ycl9nZXRfaW50ZXJ2YWwiLCBwb3NpeF9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwsIE1FVEhfVkFSQVJHUywgcG9zaXhfc2NoZWRfcnJfZ2V0X2ludGVydmFsX19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVFBBUkFNCisgICAgeyJzY2hlZF9zZXRwYXJhbSIsIHBvc2l4X3NjaGVkX3NldHBhcmFtLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3NjaGVkX3NldHBhcmFtX19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVFNDSEVEVUxFUgorICAgIHsic2NoZWRfc2V0c2NoZWR1bGVyIiwgcG9zaXhfc2NoZWRfc2V0c2NoZWR1bGVyLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3NjaGVkX3NldHNjaGVkdWxlcl9fZG9jX199LAorI2VuZGlmCisgICAgeyJzY2hlZF95aWVsZCIsICAgICBwb3NpeF9zY2hlZF95aWVsZCwgTUVUSF9OT0FSR1MsIHBvc2l4X3NjaGVkX3lpZWxkX19kb2NfX30sCisjaWZkZWYgSEFWRV9TQ0hFRF9TRVRBRkZJTklUWQorICAgIHsic2NoZWRfc2V0YWZmaW5pdHkiLCBwb3NpeF9zY2hlZF9zZXRhZmZpbml0eSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9zY2hlZF9zZXRhZmZpbml0eV9fZG9jX199LAorICAgIHsic2NoZWRfZ2V0YWZmaW5pdHkiLCBwb3NpeF9zY2hlZF9nZXRhZmZpbml0eSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9zY2hlZF9nZXRhZmZpbml0eV9fZG9jX199LAorI2VuZGlmCisjZW5kaWYgLyogSEFWRV9TQ0hFRF9IICovCiAjaWYgZGVmaW5lZChIQVZFX09QRU5QVFkpIHx8IGRlZmluZWQoSEFWRV9fR0VUUFRZKSB8fCBkZWZpbmVkKEhBVkVfREVWX1BUTVgpCiAgICAgeyJvcGVucHR5IiwgICAgICAgICBwb3NpeF9vcGVucHR5LCBNRVRIX05PQVJHUywgcG9zaXhfb3BlbnB0eV9fZG9jX199LAogI2VuZGlmIC8qIEhBVkVfT1BFTlBUWSB8fCBIQVZFX19HRVRQVFkgfHwgSEFWRV9ERVZfUFRNWCAqLwpAQCAtNzg3MCw2ICsxMDY4OCw5IEBACiAjaWZkZWYgSEFWRV9HRVRHSUQKICAgICB7ImdldGdpZCIsICAgICAgICAgIHBvc2l4X2dldGdpZCwgTUVUSF9OT0FSR1MsIHBvc2l4X2dldGdpZF9fZG9jX199LAogI2VuZGlmIC8qIEhBVkVfR0VUR0lEICovCisjaWZkZWYgSEFWRV9HRVRHUk9VUExJU1QKKyAgICB7ImdldGdyb3VwbGlzdCIsICAgIHBvc2l4X2dldGdyb3VwbGlzdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9nZXRncm91cGxpc3RfX2RvY19ffSwKKyNlbmRpZgogI2lmZGVmIEhBVkVfR0VUR1JPVVBTCiAgICAgeyJnZXRncm91cHMiLCAgICAgICBwb3NpeF9nZXRncm91cHMsIE1FVEhfTk9BUkdTLCBwb3NpeF9nZXRncm91cHNfX2RvY19ffSwKICNlbmRpZgpAQCAtNzkzOSw2ICsxMDc2MCw5IEBACiAjaWZkZWYgSEFWRV9XQUlUNAogICAgIHsid2FpdDQiLCAgICAgICAgICAgcG9zaXhfd2FpdDQsIE1FVEhfVkFSQVJHUywgcG9zaXhfd2FpdDRfX2RvY19ffSwKICNlbmRpZiAvKiBIQVZFX1dBSVQ0ICovCisjaWYgZGVmaW5lZChIQVZFX1dBSVRJRCkgJiYgIWRlZmluZWQoX19BUFBMRV9fKQorICAgIHsid2FpdGlkIiwgICAgICAgICAgcG9zaXhfd2FpdGlkLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3dhaXRpZF9fZG9jX199LAorI2VuZGlmCiAjaWYgZGVmaW5lZChIQVZFX1dBSVRQSUQpIHx8IGRlZmluZWQoSEFWRV9DV0FJVCkKICAgICB7IndhaXRwaWQiLCAgICAgICAgIHBvc2l4X3dhaXRwaWQsIE1FVEhfVkFSQVJHUywgcG9zaXhfd2FpdHBpZF9fZG9jX199LAogI2VuZGlmIC8qIEhBVkVfV0FJVFBJRCAqLwpAQCAtNzk2MywxNCArMTA3ODcsMzYgQEAKICAgICB7ImRldmljZV9lbmNvZGluZyIsIGRldmljZV9lbmNvZGluZywgTUVUSF9WQVJBUkdTLCBkZXZpY2VfZW5jb2RpbmdfX2RvY19ffSwKICAgICB7ImR1cCIsICAgICAgICAgICAgIHBvc2l4X2R1cCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9kdXBfX2RvY19ffSwKICAgICB7ImR1cDIiLCAgICAgICAgICAgIHBvc2l4X2R1cDIsIE1FVEhfVkFSQVJHUywgcG9zaXhfZHVwMl9fZG9jX199LAorI2lmZGVmIEhBVkVfTE9DS0YKKyAgICB7ImxvY2tmIiwgICAgICAgICAgIHBvc2l4X2xvY2tmLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2xvY2tmX19kb2NfX30sCisjZW5kaWYKICAgICB7ImxzZWVrIiwgICAgICAgICAgIHBvc2l4X2xzZWVrLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2xzZWVrX19kb2NfX30sCiAgICAgeyJyZWFkIiwgICAgICAgICAgICBwb3NpeF9yZWFkLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3JlYWRfX2RvY19ffSwKKyNpZmRlZiBIQVZFX1JFQURWCisgICAgeyJyZWFkdiIsICAgICAgICAgICBwb3NpeF9yZWFkdiwgTUVUSF9WQVJBUkdTLCBwb3NpeF9yZWFkdl9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9QUkVBRAorICAgIHsicHJlYWQiLCAgICAgICAgICAgcG9zaXhfcHJlYWQsIE1FVEhfVkFSQVJHUywgcG9zaXhfcHJlYWRfX2RvY19ffSwKKyNlbmRpZgogICAgIHsid3JpdGUiLCAgICAgICAgICAgcG9zaXhfd3JpdGUsIE1FVEhfVkFSQVJHUywgcG9zaXhfd3JpdGVfX2RvY19ffSwKKyNpZmRlZiBIQVZFX1dSSVRFVgorICAgIHsid3JpdGV2IiwgICAgICAgICAgcG9zaXhfd3JpdGV2LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3dyaXRldl9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9QV1JJVEUKKyAgICB7InB3cml0ZSIsICAgICAgICAgIHBvc2l4X3B3cml0ZSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9wd3JpdGVfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfU0VOREZJTEUKKyAgICB7InNlbmRmaWxlIiwgICAgICAgIChQeUNGdW5jdGlvbilwb3NpeF9zZW5kZmlsZSwgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpeF9zZW5kZmlsZV9fZG9jX199LAorI2VuZGlmCiAgICAgeyJmc3RhdCIsICAgICAgICAgICBwb3NpeF9mc3RhdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mc3RhdF9fZG9jX199LAogICAgIHsiaXNhdHR5IiwgICAgICAgICAgcG9zaXhfaXNhdHR5LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2lzYXR0eV9fZG9jX199LAogI2lmZGVmIEhBVkVfUElQRQogICAgIHsicGlwZSIsICAgICAgICAgICAgcG9zaXhfcGlwZSwgTUVUSF9OT0FSR1MsIHBvc2l4X3BpcGVfX2RvY19ffSwKICNlbmRpZgorI2lmZGVmIEhBVkVfUElQRTIKKyAgICB7InBpcGUyIiwgICAgICAgICAgIHBvc2l4X3BpcGUyLCBNRVRIX08sIHBvc2l4X3BpcGUyX19kb2NfX30sCisjZW5kaWYKICNpZmRlZiBIQVZFX01LRklGTwogICAgIHsibWtmaWZvIiwgICAgICAgICAgcG9zaXhfbWtmaWZvLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X21rZmlmb19fZG9jX199LAogI2VuZGlmCkBAIC03OTg1LDYgKzEwODMxLDE1IEBACiAjaWZkZWYgSEFWRV9GVFJVTkNBVEUKICAgICB7ImZ0cnVuY2F0ZSIsICAgICAgIHBvc2l4X2Z0cnVuY2F0ZSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mdHJ1bmNhdGVfX2RvY19ffSwKICNlbmRpZgorI2lmZGVmIEhBVkVfVFJVTkNBVEUKKyAgICB7InRydW5jYXRlIiwgICAgICAgIHBvc2l4X3RydW5jYXRlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3RydW5jYXRlX19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1BPU0lYX0ZBTExPQ0FURQorICAgIHsicG9zaXhfZmFsbG9jYXRlIiwgcG9zaXhfcG9zaXhfZmFsbG9jYXRlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3Bvc2l4X2ZhbGxvY2F0ZV9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9QT1NJWF9GQURWSVNFCisgICAgeyJwb3NpeF9mYWR2aXNlIiwgICBwb3NpeF9wb3NpeF9mYWR2aXNlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3Bvc2l4X2ZhZHZpc2VfX2RvY19ffSwKKyNlbmRpZgogI2lmZGVmIEhBVkVfUFVURU5WCiAgICAgeyJwdXRlbnYiLCAgICAgICAgICBwb3NpeF9wdXRlbnYsIE1FVEhfVkFSQVJHUywgcG9zaXhfcHV0ZW52X19kb2NfX30sCiAjZW5kaWYKQEAgLTc5OTgsNiArMTA4NTMsOSBAQAogI2lmZGVmIEhBVkVfRlNZTkMKICAgICB7ImZzeW5jIiwgICAgICAgcG9zaXhfZnN5bmMsIE1FVEhfTywgcG9zaXhfZnN5bmNfX2RvY19ffSwKICNlbmRpZgorI2lmZGVmIEhBVkVfU1lOQworICAgIHsic3luYyIsICAgICAgICBwb3NpeF9zeW5jLCBNRVRIX05PQVJHUywgcG9zaXhfc3luY19fZG9jX199LAorI2VuZGlmCiAjaWZkZWYgSEFWRV9GREFUQVNZTkMKICAgICB7ImZkYXRhc3luYyIsICAgcG9zaXhfZmRhdGFzeW5jLCAgTUVUSF9PLCBwb3NpeF9mZGF0YXN5bmNfX2RvY19ffSwKICNlbmRpZgpAQCAtODA1MSw2ICsxMDkwOSw3IEBACiAgICAgeyJfZ2V0ZmluYWxwYXRobmFtZSIsICAgICAgIHBvc2l4X19nZXRmaW5hbHBhdGhuYW1lLCBNRVRIX1ZBUkFSR1MsIE5VTEx9LAogICAgIHsiX2dldGZpbGVpbmZvcm1hdGlvbiIsICAgICBwb3NpeF9fZ2V0ZmlsZWluZm9ybWF0aW9uLCBNRVRIX1ZBUkFSR1MsIE5VTEx9LAogICAgIHsiX2lzZGlyIiwgICAgICAgICAgICAgICAgICBwb3NpeF9faXNkaXIsIE1FVEhfVkFSQVJHUywgcG9zaXhfX2lzZGlyX19kb2NfX30sCisgICAgeyJfZ2V0ZGlza3VzYWdlIiwgICAgICAgICAgIHdpbjMyX19nZXRkaXNrdXNhZ2UsIE1FVEhfVkFSQVJHUywgd2luMzJfX2dldGRpc2t1c2FnZV9fZG9jX199LAogI2VuZGlmCiAjaWZkZWYgSEFWRV9HRVRMT0FEQVZHCiAgICAgeyJnZXRsb2FkYXZnIiwgICAgICBwb3NpeF9nZXRsb2FkYXZnLCBNRVRIX05PQVJHUywgcG9zaXhfZ2V0bG9hZGF2Z19fZG9jX199LApAQCAtODA2OCw2ICsxMDkyNyw3MiBAQAogI2lmZGVmIEhBVkVfR0VUUkVTR0lECiAgICAgeyJnZXRyZXNnaWQiLCAgICAgICBwb3NpeF9nZXRyZXNnaWQsIE1FVEhfTk9BUkdTLCBwb3NpeF9nZXRyZXNnaWRfX2RvY19ffSwKICNlbmRpZgorCisvKiBwb3NpeCAqYXQgZmFtaWx5IG9mIGZ1bmN0aW9ucyAqLworI2lmZGVmIEhBVkVfRkFDQ0VTU0FUCisgICAgeyJmYWNjZXNzYXQiLCAgICAgICBwb3NpeF9mYWNjZXNzYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfZmFjY2Vzc2F0X19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX0ZDSE1PREFUCisgICAgeyJmY2htb2RhdCIsICAgICAgICBwb3NpeF9mY2htb2RhdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mY2htb2RhdF9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfRkNITU9EQVQgKi8KKyNpZmRlZiBIQVZFX0ZDSE9XTkFUCisgICAgeyJmY2hvd25hdCIsICAgICAgICBwb3NpeF9mY2hvd25hdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mY2hvd25hdF9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfRkNIT1dOQVQgKi8KKyNpZmRlZiBIQVZFX0ZTVEFUQVQKKyAgICB7ImZzdGF0YXQiLCAgICAgICAgIHBvc2l4X2ZzdGF0YXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfZnN0YXRhdF9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9GVVRJTUVTQVQKKyAgICB7ImZ1dGltZXNhdCIsICAgICAgIHBvc2l4X2Z1dGltZXNhdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mdXRpbWVzYXRfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfTElOS0FUCisgICAgeyJsaW5rYXQiLCAgICAgICAgICBwb3NpeF9saW5rYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfbGlua2F0X19kb2NfX30sCisjZW5kaWYgLyogSEFWRV9MSU5LQVQgKi8KKyNpZmRlZiBIQVZFX01LRElSQVQKKyAgICB7Im1rZGlyYXQiLCAgICAgICAgIHBvc2l4X21rZGlyYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfbWtkaXJhdF9fZG9jX199LAorI2VuZGlmCisjaWYgZGVmaW5lZChIQVZFX01LTk9EQVQpICYmIGRlZmluZWQoSEFWRV9NQUtFREVWKQorICAgIHsibWtub2RhdCIsICAgICAgICAgcG9zaXhfbWtub2RhdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9ta25vZGF0X19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX09QRU5BVAorICAgIHsib3BlbmF0IiwgICAgICBwb3NpeF9vcGVuYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfb3BlbmF0X19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1JFQURMSU5LQVQKKyAgICB7InJlYWRsaW5rYXQiLCAgICAgIHBvc2l4X3JlYWRsaW5rYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfcmVhZGxpbmthdF9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfUkVBRExJTktBVCAqLworI2lmZGVmIEhBVkVfUkVOQU1FQVQKKyAgICB7InJlbmFtZWF0IiwgICAgICAgIHBvc2l4X3JlbmFtZWF0LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3JlbmFtZWF0X19kb2NfX30sCisjZW5kaWYKKyNpZiBIQVZFX1NZTUxJTktBVAorICAgIHsic3ltbGlua2F0IiwgICAgICAgcG9zaXhfc3ltbGlua2F0LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3N5bWxpbmthdF9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfU1lNTElOS0FUICovCisjaWZkZWYgSEFWRV9VTkxJTktBVAorICAgIHsidW5saW5rYXQiLCAgICAgICAgcG9zaXhfdW5saW5rYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfdW5saW5rYXRfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfVVRJTUVOU0FUCisgICAgeyJ1dGltZW5zYXQiLCAgICAgICAoUHlDRnVuY3Rpb24pcG9zaXhfdXRpbWVuc2F0LAorICAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUywKKyAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l4X3V0aW1lbnNhdF9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9NS0ZJRk9BVAorICAgIHsibWtmaWZvYXQiLCAgICAgICAgcG9zaXhfbWtmaWZvYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfbWtmaWZvYXRfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIFVTRV9YQVRUUlMKKyAgICB7InNldHhhdHRyIiwgcG9zaXhfc2V0eGF0dHIsIE1FVEhfVkFSQVJHUywgcG9zaXhfc2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImxzZXR4YXR0ciIsIHBvc2l4X2xzZXR4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9sc2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImZzZXR4YXR0ciIsIHBvc2l4X2ZzZXR4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mc2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImdldHhhdHRyIiwgcG9zaXhfZ2V0eGF0dHIsIE1FVEhfVkFSQVJHUywgcG9zaXhfZ2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImxnZXR4YXR0ciIsIHBvc2l4X2xnZXR4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9sZ2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImZnZXR4YXR0ciIsIHBvc2l4X2ZnZXR4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mZ2V0eGF0dHJfX2RvY19ffSwKKyAgICB7InJlbW92ZXhhdHRyIiwgcG9zaXhfcmVtb3ZleGF0dHIsIE1FVEhfVkFSQVJHUywgcG9zaXhfcmVtb3ZleGF0dHJfX2RvY19ffSwKKyAgICB7ImxyZW1vdmV4YXR0ciIsIHBvc2l4X2xyZW1vdmV4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9scmVtb3ZleGF0dHJfX2RvY19ffSwKKyAgICB7ImZyZW1vdmV4YXR0ciIsIHBvc2l4X2ZyZW1vdmV4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mcmVtb3ZleGF0dHJfX2RvY19ffSwKKyAgICB7Imxpc3R4YXR0ciIsIHBvc2l4X2xpc3R4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9saXN0eGF0dHJfX2RvY19ffSwKKyAgICB7ImxsaXN0eGF0dHIiLCBwb3NpeF9sbGlzdHhhdHRyLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2xsaXN0eGF0dHJfX2RvY19ffSwKKyAgICB7ImZsaXN0eGF0dHIiLCBwb3NpeF9mbGlzdHhhdHRyLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2ZsaXN0eGF0dHJfX2RvY19ffSwKKyNlbmRpZgorI2lmIGRlZmluZWQoVEVSTVNJWkVfVVNFX0NPTklPKSB8fCBkZWZpbmVkKFRFUk1TSVpFX1VTRV9JT0NUTCkKKyAgICB7ImdldF90ZXJtaW5hbF9zaXplIiwgZ2V0X3Rlcm1pbmFsX3NpemUsIE1FVEhfVkFSQVJHUywgdGVybXNpemVfX2RvY19ffSwKKyNlbmRpZgogICAgIHtOVUxMLCAgICAgICAgICAgICAgTlVMTH0gICAgICAgICAgICAvKiBTZW50aW5lbCAqLwogfTsKIApAQCAtODI0NCw2ICsxMTE2OSw0MSBAQAogI2lmZGVmIE9fRVhMT0NLCiAgICAgaWYgKGlucyhkLCAiT19FWExPQ0siLCAobG9uZylPX0VYTE9DSykpIHJldHVybiAtMTsKICNlbmRpZgorI2lmZGVmIFBSSU9fUFJPQ0VTUworICAgIGlmIChpbnMoZCwgIlBSSU9fUFJPQ0VTUyIsIChsb25nKVBSSU9fUFJPQ0VTUykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFBSSU9fUEdSUAorICAgIGlmIChpbnMoZCwgIlBSSU9fUEdSUCIsIChsb25nKVBSSU9fUEdSUCkpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFBSSU9fVVNFUgorICAgIGlmIChpbnMoZCwgIlBSSU9fVVNFUiIsIChsb25nKVBSSU9fVVNFUikpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIE9fQ0xPRVhFQworICAgIGlmIChpbnMoZCwgIk9fQ0xPRVhFQyIsIChsb25nKU9fQ0xPRVhFQykpIHJldHVybiAtMTsKKyNlbmRpZgorLyogcG9zaXggLSBjb25zdGFudHMgZm9yICphdCBmdW5jdGlvbnMgKi8KKyNpZmRlZiBBVF9TWU1MSU5LX05PRk9MTE9XCisgICAgICAgIGlmIChpbnMoZCwgIkFUX1NZTUxJTktfTk9GT0xMT1ciLCAobG9uZylBVF9TWU1MSU5LX05PRk9MTE9XKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgQVRfRUFDQ0VTUworICAgICAgICBpZiAoaW5zKGQsICJBVF9FQUNDRVNTIiwgKGxvbmcpQVRfRUFDQ0VTUykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIEFUX0ZEQ1dECisgICAgICAgIGlmIChpbnMoZCwgIkFUX0ZEQ1dEIiwgKGxvbmcpQVRfRkRDV0QpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBBVF9SRU1PVkVESVIKKyAgICAgICAgaWYgKGlucyhkLCAiQVRfUkVNT1ZFRElSIiwgKGxvbmcpQVRfUkVNT1ZFRElSKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgQVRfU1lNTElOS19GT0xMT1cKKyAgICAgICAgaWYgKGlucyhkLCAiQVRfU1lNTElOS19GT0xMT1ciLCAobG9uZylBVF9TWU1MSU5LX0ZPTExPVykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFVUSU1FX05PVworICAgICAgICBpZiAoaW5zKGQsICJVVElNRV9OT1ciLCAobG9uZylVVElNRV9OT1cpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBVVElNRV9PTUlUCisgICAgICAgIGlmIChpbnMoZCwgIlVUSU1FX09NSVQiLCAobG9uZylVVElNRV9PTUlUKSkgcmV0dXJuIC0xOworI2VuZGlmCisKIAogLyogTVMgV2luZG93cyAqLwogI2lmZGVmIE9fTk9JTkhFUklUCkBAIC04MzUyLDYgKzExMzEyLDg3IEBACiAgICAgaWYgKGlucyhkLCAiU1RfTk9TVUlEIiwgKGxvbmcpU1RfTk9TVUlEKSkgcmV0dXJuIC0xOwogI2VuZGlmIC8qIFNUX05PU1VJRCAqLwogCisgICAgLyogRnJlZUJTRCBzZW5kZmlsZSgpIGNvbnN0YW50cyAqLworI2lmZGVmIFNGX05PRElTS0lPCisgICAgaWYgKGlucyhkLCAiU0ZfTk9ESVNLSU8iLCAobG9uZylTRl9OT0RJU0tJTykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFNGX01OT1dBSVQKKyAgICBpZiAoaW5zKGQsICJTRl9NTk9XQUlUIiwgKGxvbmcpU0ZfTU5PV0FJVCkpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFNGX1NZTkMKKyAgICBpZiAoaW5zKGQsICJTRl9TWU5DIiwgKGxvbmcpU0ZfU1lOQykpIHJldHVybiAtMTsKKyNlbmRpZgorCisgICAgLyogY29uc3RhbnRzIGZvciBwb3NpeF9mYWR2aXNlICovCisjaWZkZWYgUE9TSVhfRkFEVl9OT1JNQUwKKyAgICBpZiAoaW5zKGQsICJQT1NJWF9GQURWX05PUk1BTCIsIChsb25nKVBPU0lYX0ZBRFZfTk9STUFMKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9TRVFVRU5USUFMCisgICAgaWYgKGlucyhkLCAiUE9TSVhfRkFEVl9TRVFVRU5USUFMIiwgKGxvbmcpUE9TSVhfRkFEVl9TRVFVRU5USUFMKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9SQU5ET00KKyAgICBpZiAoaW5zKGQsICJQT1NJWF9GQURWX1JBTkRPTSIsIChsb25nKVBPU0lYX0ZBRFZfUkFORE9NKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9OT1JFVVNFCisgICAgaWYgKGlucyhkLCAiUE9TSVhfRkFEVl9OT1JFVVNFIiwgKGxvbmcpUE9TSVhfRkFEVl9OT1JFVVNFKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9XSUxMTkVFRAorICAgIGlmIChpbnMoZCwgIlBPU0lYX0ZBRFZfV0lMTE5FRUQiLCAobG9uZylQT1NJWF9GQURWX1dJTExORUVEKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9ET05UTkVFRAorICAgIGlmIChpbnMoZCwgIlBPU0lYX0ZBRFZfRE9OVE5FRUQiLCAobG9uZylQT1NJWF9GQURWX0RPTlRORUVEKSkgcmV0dXJuIC0xOworI2VuZGlmCisKKyAgICAvKiBjb25zdGFudHMgZm9yIHdhaXRpZCAqLworI2lmIGRlZmluZWQoSEFWRV9TWVNfV0FJVF9IKSAmJiBkZWZpbmVkKEhBVkVfV0FJVElEKQorICAgIGlmIChpbnMoZCwgIlBfUElEIiwgKGxvbmcpUF9QSUQpKSByZXR1cm4gLTE7CisgICAgaWYgKGlucyhkLCAiUF9QR0lEIiwgKGxvbmcpUF9QR0lEKSkgcmV0dXJuIC0xOworICAgIGlmIChpbnMoZCwgIlBfQUxMIiwgKGxvbmcpUF9BTEwpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBXRVhJVEVECisgICAgaWYgKGlucyhkLCAiV0VYSVRFRCIsIChsb25nKVdFWElURUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBXTk9XQUlUCisgICAgaWYgKGlucyhkLCAiV05PV0FJVCIsIChsb25nKVdOT1dBSVQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBXU1RPUFBFRAorICAgIGlmIChpbnMoZCwgIldTVE9QUEVEIiwgKGxvbmcpV1NUT1BQRUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBDTERfRVhJVEVECisgICAgaWYgKGlucyhkLCAiQ0xEX0VYSVRFRCIsIChsb25nKUNMRF9FWElURUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBDTERfRFVNUEVECisgICAgaWYgKGlucyhkLCAiQ0xEX0RVTVBFRCIsIChsb25nKUNMRF9EVU1QRUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBDTERfVFJBUFBFRAorICAgIGlmIChpbnMoZCwgIkNMRF9UUkFQUEVEIiwgKGxvbmcpQ0xEX1RSQVBQRUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBDTERfQ09OVElOVUVECisgICAgaWYgKGlucyhkLCAiQ0xEX0NPTlRJTlVFRCIsIChsb25nKUNMRF9DT05USU5VRUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKworICAgIC8qIGNvbnN0YW50cyBmb3IgbG9ja2YgKi8KKyNpZmRlZiBGX0xPQ0sKKyAgICBpZiAoaW5zKGQsICJGX0xPQ0siLCAobG9uZylGX0xPQ0spKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBGX1RMT0NLCisgICAgaWYgKGlucyhkLCAiRl9UTE9DSyIsIChsb25nKUZfVExPQ0spKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBGX1VMT0NLCisgICAgaWYgKGlucyhkLCAiRl9VTE9DSyIsIChsb25nKUZfVUxPQ0spKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBGX1RFU1QKKyAgICBpZiAoaW5zKGQsICJGX1RFU1QiLCAobG9uZylGX1RFU1QpKSByZXR1cm4gLTE7CisjZW5kaWYKKworICAgIC8qIGNvbnN0YW50cyBmb3IgZnV0aW1lbnMgKi8KKyNpZmRlZiBVVElNRV9OT1cKKyAgICBpZiAoaW5zKGQsICJVVElNRV9OT1ciLCAobG9uZylVVElNRV9OT1cpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBVVElNRV9PTUlUCisgICAgaWYgKGlucyhkLCAiVVRJTUVfT01JVCIsIChsb25nKVVUSU1FX09NSVQpKSByZXR1cm4gLTE7CisjZW5kaWYKKwogI2lmZGVmIEhBVkVfU1BBV05WCiAjaWYgZGVmaW5lZChQWU9TX09TMikgJiYgZGVmaW5lZChQWUNDX0dDQykKICAgICBpZiAoaW5zKGQsICJQX1dBSVQiLCAobG9uZylQX1dBSVQpKSByZXR1cm4gLTE7CkBAIC04MzgzLDYgKzExNDI0LDY0IEBACiAjZW5kaWYKICNlbmRpZgogCisjaWZkZWYgSEFWRV9TQ0hFRF9ICisgICAgaWYgKGlucyhkLCAiU0NIRURfT1RIRVIiLCAobG9uZylTQ0hFRF9PVEhFUikpIHJldHVybiAtMTsKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9GSUZPIiwgKGxvbmcpU0NIRURfRklGTykpIHJldHVybiAtMTsKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9SUiIsIChsb25nKVNDSEVEX1JSKSkgcmV0dXJuIC0xOworI2lmZGVmIFNDSEVEX1NQT1JBRElDCisgICAgaWYgKGlucyhkLCAiU0NIRURfU1BPUkFESUMiLCAobG9uZylTQ0hFRF9TUE9SQURJQykgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfQkFUQ0gKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9CQVRDSCIsIChsb25nKVNDSEVEX0JBVENIKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfSURMRQorICAgIGlmIChpbnMoZCwgIlNDSEVEX0lETEUiLCAobG9uZylTQ0hFRF9JRExFKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfUkVTRVRfT05fRk9SSworICAgIGlmIChpbnMoZCwgIlNDSEVEX1JFU0VUX09OX0ZPUksiLCAobG9uZylTQ0hFRF9SRVNFVF9PTl9GT1JLKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfU1lTCisgICAgaWYgKGlucyhkLCAiU0NIRURfU1lTIiwgKGxvbmcpU0NIRURfU1lTKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfSUEKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9JQSIsIChsb25nKVNDSEVEX0lBKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfRlNTCisgICAgaWYgKGlucyhkLCAiU0NIRURfRlNTIiwgKGxvbmcpU0NIRURfRlNTKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfRlgKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9GWCIsIChsb25nKVNDSEVEX0ZTUykpIHJldHVybiAtMTsKKyNlbmRpZgorI2VuZGlmCisKKyNpZmRlZiBVU0VfWEFUVFJTCisgICAgaWYgKGlucyhkLCAiWEFUVFJfQ1JFQVRFIiwgKGxvbmcpWEFUVFJfQ1JFQVRFKSkgcmV0dXJuIC0xOworICAgIGlmIChpbnMoZCwgIlhBVFRSX1JFUExBQ0UiLCAobG9uZylYQVRUUl9SRVBMQUNFKSkgcmV0dXJuIC0xOworICAgIGlmIChpbnMoZCwgIlhBVFRSX1NJWkVfTUFYIiwgKGxvbmcpWEFUVFJfU0laRV9NQVgpKSByZXR1cm4gLTE7CisjZW5kaWYKKworI2lmZGVmIFJUTERfTEFaWQorICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhkLCBSVExEX0xBWlkpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBSVExEX05PVworICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhkLCBSVExEX05PVykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFJUTERfR0xPQkFMCisgICAgaWYgKFB5TW9kdWxlX0FkZEludE1hY3JvKGQsIFJUTERfR0xPQkFMKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUlRMRF9MT0NBTAorICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhkLCBSVExEX0xPQ0FMKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUlRMRF9OT0RFTEVURQorICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhkLCBSVExEX05PREVMRVRFKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUlRMRF9OT0xPQUQKKyAgICBpZiAoUHlNb2R1bGVfQWRkSW50TWFjcm8oZCwgUlRMRF9OT0xPQUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBSVExEX0RFRVBCSU5ECisgICAgaWYgKFB5TW9kdWxlX0FkZEludE1hY3JvKGQsIFJUTERfREVFUEJJTkQpKSByZXR1cm4gLTE7CisjZW5kaWYKKwogI2lmIGRlZmluZWQoUFlPU19PUzIpCiAgICAgaWYgKGluc2VydHZhbHVlcyhkKSkgcmV0dXJuIC0xOwogI2VuZGlmCkBAIC04NDQ1LDEyICsxMTU0NCwyNCBAQAogICAgIFB5X0lOQ1JFRihQeUV4Y19PU0Vycm9yKTsKICAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgImVycm9yIiwgUHlFeGNfT1NFcnJvcik7CiAKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVEFGRklOSVRZCisgICAgaWYgKFB5VHlwZV9SZWFkeSgmY3B1X3NldF90eXBlKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworICAgIFB5X0lOQ1JFRigmY3B1X3NldF90eXBlKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgImNwdV9zZXQiLCAoUHlPYmplY3QgKikmY3B1X3NldF90eXBlKTsKKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9QVVRFTlYKICAgICBpZiAocG9zaXhfcHV0ZW52X2dhcmJhZ2UgPT0gTlVMTCkKICAgICAgICAgcG9zaXhfcHV0ZW52X2dhcmJhZ2UgPSBQeURpY3RfTmV3KCk7CiAjZW5kaWYKIAogICAgIGlmICghaW5pdGlhbGl6ZWQpIHsKKyNpZiBkZWZpbmVkKEhBVkVfV0FJVElEKSAmJiAhZGVmaW5lZChfX0FQUExFX18pCisgICAgICAgIHdhaXRpZF9yZXN1bHRfZGVzYy5uYW1lID0gTU9ETkFNRSAiLndhaXRpZF9yZXN1bHQiOworICAgICAgICBQeVN0cnVjdFNlcXVlbmNlX0luaXRUeXBlKCZXYWl0aWRSZXN1bHRUeXBlLCAmd2FpdGlkX3Jlc3VsdF9kZXNjKTsKKyNlbmRpZgorCiAgICAgICAgIHN0YXRfcmVzdWx0X2Rlc2MubmFtZSA9IE1PRE5BTUUgIi5zdGF0X3Jlc3VsdCI7CiAgICAgICAgIHN0YXRfcmVzdWx0X2Rlc2MuZmllbGRzWzddLm5hbWUgPSBQeVN0cnVjdFNlcXVlbmNlX1VubmFtZWRGaWVsZDsKICAgICAgICAgc3RhdF9yZXN1bHRfZGVzYy5maWVsZHNbOF0ubmFtZSA9IFB5U3RydWN0U2VxdWVuY2VfVW5uYW1lZEZpZWxkOwpAQCAtODQ3MCwxMiArMTE1ODEsMzEgQEAKICAgICAgICAgdGlja3NfcGVyX3NlY29uZCA9IDYwOyAvKiBtYWdpYyBmYWxsYmFjayB2YWx1ZTsgbWF5IGJlIGJvZ3VzICovCiAjICBlbmRpZgogI2VuZGlmCisKKyNpZiBkZWZpbmVkKEhBVkVfU0NIRURfU0VUUEFSQU0pIHx8IGRlZmluZWQoSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIpCisgICAgICAgIHNjaGVkX3BhcmFtX2Rlc2MubmFtZSA9IE1PRE5BTUUgIi5zY2hlZF9wYXJhbSI7CisgICAgICAgIFB5U3RydWN0U2VxdWVuY2VfSW5pdFR5cGUoJlNjaGVkUGFyYW1UeXBlLCAmc2NoZWRfcGFyYW1fZGVzYyk7CisgICAgICAgIFNjaGVkUGFyYW1UeXBlLnRwX25ldyA9IHNjaGVkX3BhcmFtX25ldzsKKyNlbmRpZgorCisgICAgICAgIC8qIGluaXRpYWxpemUgVGVybWluYWxTaXplX2luZm8gKi8KKyAgICAgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9Jbml0VHlwZSgmVGVybWluYWxTaXplVHlwZSwgJlRlcm1pbmFsU2l6ZV9kZXNjKTsKKyAgICAgICAgUHlfSU5DUkVGKCZUZXJtaW5hbFNpemVUeXBlKTsKICAgICB9CisjaWYgZGVmaW5lZChIQVZFX1dBSVRJRCkgJiYgIWRlZmluZWQoX19BUFBMRV9fKQorICAgIFB5X0lOQ1JFRigoUHlPYmplY3QqKSAmV2FpdGlkUmVzdWx0VHlwZSk7CisgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJ3YWl0aWRfcmVzdWx0IiwgKFB5T2JqZWN0KikgJldhaXRpZFJlc3VsdFR5cGUpOworI2VuZGlmCiAgICAgUHlfSU5DUkVGKChQeU9iamVjdCopICZTdGF0UmVzdWx0VHlwZSk7CiAgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJzdGF0X3Jlc3VsdCIsIChQeU9iamVjdCopICZTdGF0UmVzdWx0VHlwZSk7CiAgICAgUHlfSU5DUkVGKChQeU9iamVjdCopICZTdGF0VkZTUmVzdWx0VHlwZSk7CiAgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJzdGF0dmZzX3Jlc3VsdCIsCiAgICAgICAgICAgICAgICAgICAgICAgIChQeU9iamVjdCopICZTdGF0VkZTUmVzdWx0VHlwZSk7CisKKyNpZiBkZWZpbmVkKEhBVkVfU0NIRURfU0VUUEFSQU0pIHx8IGRlZmluZWQoSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIpCisgICAgUHlfSU5DUkVGKCZTY2hlZFBhcmFtVHlwZSk7CisgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJzY2hlZF9wYXJhbSIsIChQeU9iamVjdCAqKSZTY2hlZFBhcmFtVHlwZSk7CisjZW5kaWYKICAgICBpbml0aWFsaXplZCA9IDE7CiAKICNpZmRlZiBfX0FQUExFX18KQEAgLTg1MTUsNiArMTE2NDUsOSBAQAogCiAKICNlbmRpZiAvKiBfX0FQUExFX18gKi8KKworICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAidGVybWluYWxfc2l6ZSIsIChQeU9iamVjdCopICZUZXJtaW5hbFNpemVUeXBlKTsKKwogICAgIHJldHVybiBtOwogCiB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3B5ZXhwYXQuYyBiL01vZHVsZXMvcHlleHBhdC5jCmluZGV4IDg0OTQyM2YuLjFiYzRmZmEgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvcHlleHBhdC5jCisrKyBiL01vZHVsZXMvcHlleHBhdC5jCkBAIC0xMDAsMTYgKzEwMCwxNyBAQAogc2V0X2Vycm9yKHhtbHBhcnNlb2JqZWN0ICpzZWxmLCBlbnVtIFhNTF9FcnJvciBjb2RlKQogewogICAgIFB5T2JqZWN0ICplcnI7Ci0gICAgY2hhciBidWZmZXJbMjU2XTsKKyAgICBQeU9iamVjdCAqYnVmZmVyOwogICAgIFhNTF9QYXJzZXIgcGFyc2VyID0gc2VsZi0+aXRzZWxmOwogICAgIGludCBsaW5lbm8gPSBYTUxfR2V0RXJyb3JMaW5lTnVtYmVyKHBhcnNlcik7CiAgICAgaW50IGNvbHVtbiA9IFhNTF9HZXRFcnJvckNvbHVtbk51bWJlcihwYXJzZXIpOwogCi0gICAgLyogVGhlcmUgaXMgbm8gcmlzayBvZiBvdmVyZmxvd2luZyB0aGlzIGJ1ZmZlciwgc2luY2UKLSAgICAgICBldmVuIGZvciA2NC1iaXQgaW50ZWdlcnMsIHRoZXJlIGlzIHN1ZmZpY2llbnQgc3BhY2UuICovCi0gICAgc3ByaW50ZihidWZmZXIsICIlLjIwMHM6IGxpbmUgJWksIGNvbHVtbiAlaSIsCi0gICAgICAgICAgICBYTUxfRXJyb3JTdHJpbmcoY29kZSksIGxpbmVubywgY29sdW1uKTsKLSAgICBlcnIgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb24oRXJyb3JPYmplY3QsICJzIiwgYnVmZmVyKTsKKyAgICBidWZmZXIgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJXM6IGxpbmUgJWksIGNvbHVtbiAlaSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWE1MX0Vycm9yU3RyaW5nKGNvZGUpLCBsaW5lbm8sIGNvbHVtbik7CisgICAgaWYgKGJ1ZmZlciA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBlcnIgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb24oRXJyb3JPYmplY3QsICJPIiwgYnVmZmVyKTsKKyAgICBQeV9ERUNSRUYoYnVmZmVyKTsKICAgICBpZiAoICBlcnIgIT0gTlVMTAogICAgICAgICAgICYmIHNldF9lcnJvcl9hdHRyKGVyciwgImNvZGUiLCBjb2RlKQogICAgICAgICAgICYmIHNldF9lcnJvcl9hdHRyKGVyciwgIm9mZnNldCIsIGNvbHVtbikKQEAgLTg0Miw5ICs4NDMsOSBAQAogewogICAgIGludCBydiA9IDE7CiAgICAgUHlPYmplY3QgKnJlYWRtZXRob2QgPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKHJlYWQpOwogCi0KLSAgICByZWFkbWV0aG9kID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmLCAicmVhZCIpOworICAgIHJlYWRtZXRob2QgPSBfUHlPYmplY3RfR2V0QXR0cklkKGYsICZQeUlkX3JlYWQpOwogICAgIGlmIChyZWFkbWV0aG9kID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCBtdXN0IGhhdmUgJ3JlYWQnIGF0dHJpYnV0ZSIpOwpAQCAtMTEwMSwxNyArMTEwMiwyMiBAQAogICAgIFB5VW5pY29kZU9iamVjdCAqX3Vfc3RyaW5nID0gTlVMTDsKICAgICBpbnQgcmVzdWx0ID0gMDsKICAgICBpbnQgaTsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogCiAgICAgLyogWWVzLCBzdXBwb3J0cyBvbmx5IDhiaXQgZW5jb2RpbmdzICovCiAgICAgX3Vfc3RyaW5nID0gKFB5VW5pY29kZU9iamVjdCAqKQogICAgICAgICBQeVVuaWNvZGVfRGVjb2RlKHRlbXBsYXRlX2J1ZmZlciwgMjU2LCBuYW1lLCAicmVwbGFjZSIpOwogCi0gICAgaWYgKF91X3N0cmluZyA9PSBOVUxMKQorICAgIGlmIChfdV9zdHJpbmcgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoX3Vfc3RyaW5nKSA9PSAtMSkKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKIAorICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChfdV9zdHJpbmcpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShfdV9zdHJpbmcpOworCiAgICAgZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKSB7CiAgICAgICAgIC8qIFN0dXBpZCB0byBhY2Nlc3MgZGlyZWN0bHksIGJ1dCBmYXN0ICovCi0gICAgICAgIFB5X1VOSUNPREUgYyA9IF91X3N0cmluZy0+c3RyW2ldOworICAgICAgICBQeV9VQ1M0IGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKICAgICAgICAgaWYgKGMgPT0gUHlfVU5JQ09ERV9SRVBMQUNFTUVOVF9DSEFSQUNURVIpCiAgICAgICAgICAgICBpbmZvLT5tYXBbaV0gPSAtMTsKICAgICAgICAgZWxzZQpAQCAtMTIyOCwxMSArMTIzNCwxMyBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHhtbHBhcnNlX2dldGF0dHJvKHhtbHBhcnNlb2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqbmFtZW9iaikKIHsKLSAgICBQeV9VTklDT0RFICpuYW1lOworICAgIFB5X1VDUzQgZmlyc3RfY2hhcjsKICAgICBpbnQgaGFuZGxlcm51bSA9IC0xOwogCiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sobmFtZW9iaikpCiAgICAgICAgIGdvdG8gZ2VuZXJpYzsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKG5hbWVvYmopKQorICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGhhbmRsZXJudW0gPSBoYW5kbGVybmFtZTJpbnQobmFtZW9iaik7CiAKQEAgLTEyNDQsOCArMTI1Miw4IEBACiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQogCi0gICAgbmFtZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKG5hbWVvYmopOwotICAgIGlmIChuYW1lWzBdID09ICdFJykgeworICAgIGZpcnN0X2NoYXIgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKG5hbWVvYmosIDApOworICAgIGlmIChmaXJzdF9jaGFyID09ICdFJykgewogICAgICAgICBpZiAoUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcobmFtZW9iaiwgIkVycm9yQ29kZSIpID09IDApCiAgICAgICAgICAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKChsb25nKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhNTF9HZXRFcnJvckNvZGUoc2VsZi0+aXRzZWxmKSk7CkBAIC0xMjU5LDcgKzEyNjcsNyBAQAogICAgICAgICAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZygobG9uZykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYTUxfR2V0RXJyb3JCeXRlSW5kZXgoc2VsZi0+aXRzZWxmKSk7CiAgICAgfQotICAgIGlmIChuYW1lWzBdID09ICdDJykgeworICAgIGlmIChmaXJzdF9jaGFyID09ICdDJykgewogICAgICAgICBpZiAoUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcobmFtZW9iaiwgIkN1cnJlbnRMaW5lTnVtYmVyIikgPT0gMCkKICAgICAgICAgICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWE1MX0dldEN1cnJlbnRMaW5lTnVtYmVyKHNlbGYtPml0c2VsZikpOwpAQCAtMTI3MCw3ICsxMjc4LDcgQEAKICAgICAgICAgICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWE1MX0dldEN1cnJlbnRCeXRlSW5kZXgoc2VsZi0+aXRzZWxmKSk7CiAgICAgfQotICAgIGlmIChuYW1lWzBdID09ICdiJykgeworICAgIGlmIChmaXJzdF9jaGFyID09ICdiJykgewogICAgICAgICBpZiAoUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcobmFtZW9iaiwgImJ1ZmZlcl9zaXplIikgPT0gMCkKICAgICAgICAgICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpIHNlbGYtPmJ1ZmZlcl9zaXplKTsKICAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG5hbWVvYmosICJidWZmZXJfdGV4dCIpID09IDApCkBAIC0xNjYxLDcgKzE2NjksNiBAQAogICAgIFB5T2JqZWN0ICplcnJvcnNfbW9kdWxlOwogICAgIFB5T2JqZWN0ICptb2RlbG1vZF9uYW1lOwogICAgIFB5T2JqZWN0ICptb2RlbF9tb2R1bGU7Ci0gICAgUHlPYmplY3QgKnZlcnNpb247CiAgICAgUHlPYmplY3QgKnN5c19tb2R1bGVzOwogICAgIFB5T2JqZWN0ICp0bXBudW0sICp0bXBzdHI7CiAgICAgUHlPYmplY3QgKmNvZGVzX2RpY3Q7CkBAIC0xNjk4LDEwICsxNzA1LDYgQEAKICAgICBQeV9JTkNSRUYoJlhtbHBhcnNldHlwZSk7CiAgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJYTUxQYXJzZXJUeXBlIiwgKFB5T2JqZWN0ICopICZYbWxwYXJzZXR5cGUpOwogCi0gICAgdmVyc2lvbiA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKFBZX1ZFUlNJT04pOwotICAgIGlmICghdmVyc2lvbikKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJfX3ZlcnNpb25fXyIsIHZlcnNpb24pOwogICAgIFB5TW9kdWxlX0FkZFN0cmluZ0NvbnN0YW50KG0sICJFWFBBVF9WRVJTSU9OIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhciAqKSBYTUxfRXhwYXRWZXJzaW9uKCkpOwogICAgIHsKZGlmZiAtLWdpdCBhL01vZHVsZXMvcmVhZGxpbmUuYyBiL01vZHVsZXMvcmVhZGxpbmUuYwppbmRleCA0ZDU0ZGFkLi5hNzEwNjUyIDEwMDY0NAotLS0gYS9Nb2R1bGVzL3JlYWRsaW5lLmMKKysrIGIvTW9kdWxlcy9yZWFkbGluZS5jCkBAIC0yMzUsMTAgKzIzNSw5IEBACiAgICAgICAgIFB5X1hERUNSRUYodG1wKTsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIFB5T1Nfc25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwKLSAgICAgICAgICAgICAgICAgICAgICAic2V0XyUuNTBzKGZ1bmMpOiBhcmd1bWVudCBub3QgY2FsbGFibGUiLAotICAgICAgICAgICAgICAgICAgICAgIGZ1bmNuYW1lKTsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgYnVmKTsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJzZXRfJS41MHMoZnVuYyk6IGFyZ3VtZW50IG5vdCBjYWxsYWJsZSIsCisgICAgICAgICAgICAgICAgICAgICBmdW5jbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBQeV9SRVRVUk5fTk9ORTsKQEAgLTg5Miw3ICs4OTEsNyBAQAogI2VuZGlmCiAKICNpZmRlZiBfX0FQUExFX18KLSAgICAvKiB0aGUgbGliZWRpdCByZWFkbGluZSBlbXVsYXRpb24gcmVzZXRzIGtleSBiaW5kaW5ncyBldGMgCisgICAgLyogdGhlIGxpYmVkaXQgcmVhZGxpbmUgZW11bGF0aW9uIHJlc2V0cyBrZXkgYmluZGluZ3MgZXRjCiAgICAgICogd2hlbiBjYWxsaW5nIHJsX2luaXRpYWxpemUuICBTbyBjYWxsIGl0IHVwZnJvbnQKICAgICAgKi8KICAgICBpZiAodXNpbmdfbGliZWRpdF9lbXVsYXRpb24pCkBAIC05MzIsMTEgKzkzMSwxMSBAQAogICAgICAqLwogI2lmZGVmIF9fQVBQTEVfXwogICAgIGlmICh1c2luZ19saWJlZGl0X2VtdWxhdGlvbikKLQlybF9yZWFkX2luaXRfZmlsZShOVUxMKTsKKyAgICAgICAgcmxfcmVhZF9pbml0X2ZpbGUoTlVMTCk7CiAgICAgZWxzZQogI2VuZGlmIC8qIF9fQVBQTEVfXyAqLwogICAgICAgICBybF9pbml0aWFsaXplKCk7Ci0gICAgCisKICAgICBSRVNUT1JFX0xPQ0FMRShzYXZlZF9sb2NhbGUpCiB9CiAKZGlmZiAtLWdpdCBhL01vZHVsZXMvcmVzb3VyY2UuYyBiL01vZHVsZXMvcmVzb3VyY2UuYwppbmRleCAxODc1ZTQ4Li4xYWVkNDk3IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3Jlc291cmNlLmMKKysrIGIvTW9kdWxlcy9yZXNvdXJjZS5jCkBAIC0xOCw4ICsxOCw2IEBACiAKICNkZWZpbmUgZG91YmxldGltZShUVikgKChkb3VibGUpKFRWKS50dl9zZWMgKyAoVFYpLnR2X3VzZWMgKiAwLjAwMDAwMSkKIAotc3RhdGljIFB5T2JqZWN0ICpSZXNvdXJjZUVycm9yOwotCiBQeURvY19TVFJWQVIoc3RydWN0X3J1c2FnZV9fZG9jX18sCiAic3RydWN0X3J1c2FnZTogUmVzdWx0IGZyb20gZ2V0cnVzYWdlLlxuXG4iCiAiVGhpcyBvYmplY3QgbWF5IGJlIGFjY2Vzc2VkIGVpdGhlciBhcyBhIHR1cGxlIG9mXG4iCkBAIC03Myw3ICs3MSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImludmFsaWQgd2hvIHBhcmFtZXRlciIpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KLSAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFJlc291cmNlRXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIApAQCAtMTI1LDcgKzEyMyw3IEBACiAgICAgfQogCiAgICAgaWYgKGdldHJsaW1pdChyZXNvdXJjZSwgJnJsKSA9PSAtMSkgewotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUmVzb3VyY2VFcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCkBAIC0xODMsNyArMTgxLDcgQEAKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJub3QgYWxsb3dlZCB0byByYWlzZSBtYXhpbXVtIGxpbWl0Iik7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhSZXNvdXJjZUVycm9yKTsKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKQEAgLTI0NiwxMiArMjQ0LDggQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICAvKiBBZGQgc29tZSBzeW1ib2xpYyBjb25zdGFudHMgdG8gdGhlIG1vZHVsZSAqLwotICAgIGlmIChSZXNvdXJjZUVycm9yID09IE5VTEwpIHsKLSAgICAgICAgUmVzb3VyY2VFcnJvciA9IFB5RXJyX05ld0V4Y2VwdGlvbigicmVzb3VyY2UuZXJyb3IiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwpOwotICAgIH0KLSAgICBQeV9JTkNSRUYoUmVzb3VyY2VFcnJvcik7Ci0gICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJlcnJvciIsIFJlc291cmNlRXJyb3IpOworICAgIFB5X0lOQ1JFRihQeUV4Y19PU0Vycm9yKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgImVycm9yIiwgUHlFeGNfT1NFcnJvcik7CiAgICAgaWYgKCFpbml0aWFsaXplZCkKICAgICAgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9Jbml0VHlwZSgmU3RydWN0UlVzYWdlVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RydWN0X3J1c2FnZV9kZXNjKTsKZGlmZiAtLWdpdCBhL01vZHVsZXMvc2VsZWN0bW9kdWxlLmMgYi9Nb2R1bGVzL3NlbGVjdG1vZHVsZS5jCmluZGV4IDI0NTJhNjUuLjk0NTA1NWYgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvc2VsZWN0bW9kdWxlLmMKKysrIGIvTW9kdWxlcy9zZWxlY3Rtb2R1bGUuYwpAQCAtNyw2ICs3LDE0IEBACiAjaW5jbHVkZSAiUHl0aG9uLmgiCiAjaW5jbHVkZSA8c3RydWN0bWVtYmVyLmg+CiAKKyNpZmRlZiBIQVZFX1NZU19ERVZQT0xMX0gKKyNpbmNsdWRlIDxzeXMvcmVzb3VyY2UuaD4KKyNpbmNsdWRlIDxzeXMvZGV2cG9sbC5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNlbmRpZgorCiAjaWZkZWYgX19BUFBMRV9fCiAgICAgLyogUGVyZm9ybSBydW50aW1lIHRlc3RpbmcgZm9yIGEgYnJva2VuIHBvbGwgb24gT1NYIHRvIG1ha2UgaXQgZWFzaWVyCiAgICAgICogdG8gdXNlIHRoZSBzYW1lIGJpbmFyeSBvbiBtdWx0aXBsZSByZWxlYXNlcyBvZiB0aGUgT1MuCkBAIC01NCw4ICs2Miw2IEBACiAjICBlbmRpZgogI2VuZGlmCiAKLXN0YXRpYyBQeU9iamVjdCAqU2VsZWN0RXJyb3I7Ci0KIC8qIGxpc3Qgb2YgUHl0aG9uIG9iamVjdHMgYW5kIHRoZWlyIGZpbGUgZGVzY3JpcHRvciAqLwogdHlwZWRlZiBzdHJ1Y3QgewogICAgIFB5T2JqZWN0ICpvYmo7ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3duZWQgcmVmZXJlbmNlICovCkBAIC0yMjcsNiArMjMzLDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRpbWVvdXQgcGVyaW9kIHRvbyBsb25nIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQorICAgICAgICBpZiAodGltZW91dCA8IDApIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgInRpbWVvdXQgbXVzdCBiZSBub24tbmVnYXRpdmUiKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CiAgICAgICAgIHNlY29uZHMgPSAobG9uZyl0aW1lb3V0OwogICAgICAgICB0aW1lb3V0ID0gdGltZW91dCAtIChkb3VibGUpc2Vjb25kczsKICAgICAgICAgdHYudHZfc2VjID0gc2Vjb25kczsKQEAgLTI2OSwxMSArMjgwLDExIEBACiAKICNpZmRlZiBNU19XSU5ET1dTCiAgICAgaWYgKG4gPT0gU09DS0VUX0VSUk9SKSB7Ci0gICAgICAgIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFNlbGVjdEVycm9yLCBXU0FHZXRMYXN0RXJyb3IoKSk7CisgICAgICAgIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX09TRXJyb3IsIFdTQUdldExhc3RFcnJvcigpKTsKICAgICB9CiAjZWxzZQogICAgIGlmIChuIDwgMCkgewotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oU2VsZWN0RXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgfQogI2VuZGlmCiAgICAgZWxzZSB7CkBAIC00MjAsNyArNDMxLDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKFB5RGljdF9HZXRJdGVtKHNlbGYtPmRpY3QsIGtleSkgPT0gTlVMTCkgewogICAgICAgICBlcnJubyA9IEVOT0VOVDsKLSAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICB2YWx1ZSA9IFB5TG9uZ19Gcm9tTG9uZyhldmVudHMpOwpAQCAtNTE5LDcgKzUzMCw3IEBACiAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKIAogICAgIGlmIChwb2xsX3Jlc3VsdCA8IDApIHsKLSAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFNlbGVjdEVycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKQEAgLTY0NSw2ICs2NTYsMzM5IEBACiAgICAgcG9sbF9tZXRob2RzLCAgICAgICAgICAgICAgIC8qdHBfbWV0aG9kcyovCiB9OwogCisjaWZkZWYgSEFWRV9TWVNfREVWUE9MTF9ICit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlPYmplY3RfSEVBRAorICAgIGludCBmZF9kZXZwb2xsOworICAgIGludCBtYXhfbl9mZHM7CisgICAgaW50IG5fZmRzOworICAgIHN0cnVjdCBwb2xsZmQgKmZkczsKK30gZGV2cG9sbE9iamVjdDsKKworc3RhdGljIFB5VHlwZU9iamVjdCBkZXZwb2xsX1R5cGU7CisKK3N0YXRpYyBpbnQgZGV2cG9sbF9mbHVzaChkZXZwb2xsT2JqZWN0ICpzZWxmKQoreworICAgIGludCBzaXplLCBuOworCisgICAgaWYgKCFzZWxmLT5uX2ZkcykgcmV0dXJuIDA7CisKKyAgICBzaXplID0gc2l6ZW9mKHN0cnVjdCBwb2xsZmQpKnNlbGYtPm5fZmRzOworICAgIHNlbGYtPm5fZmRzID0gMDsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICBuID0gd3JpdGUoc2VsZi0+ZmRfZGV2cG9sbCwgc2VsZi0+ZmRzLCBzaXplKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgaWYgKG4gPT0gLTEgKSB7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAobiA8IHNpemUpIHsKKyAgICAgICAgLyoKKyAgICAgICAgKiogRGF0YSB3cml0ZWQgdG8gL2Rldi9wb2xsIGlzIGEgYmluYXJ5IGRhdGEgc3RydWN0dXJlLiBJdCBpcyBub3QKKyAgICAgICAgKiogY2xlYXIgd2hhdCB0byBkbyBpZiBhIHBhcnRpYWwgd3JpdGUgb2NjdXJyZWQuIEZvciBub3csIHJhaXNlCisgICAgICAgICoqIGFuIGV4Y2VwdGlvbiBhbmQgc2VlIGlmIHdlIGFjdHVhbGx5IGZvdW5kIHRoaXMgcHJvYmxlbSBpbgorICAgICAgICAqKiB0aGUgd2lsZC4KKyAgICAgICAgKiogU2VlIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWU2Mzk3LgorICAgICAgICAqLworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSU9FcnJvciwgImZhaWxlZCB0byB3cml0ZSBhbGwgcG9sbGZkcy4gIgorICAgICAgICAgICAgICAgICJQbGVhc2UsIHJlcG9ydCBhdCBodHRwOi8vYnVncy5weXRob24ub3JnLy4gIgorICAgICAgICAgICAgICAgICJEYXRhIHRvIHJlcG9ydDogU2l6ZSB0cmllZDogJWQsIGFjdHVhbCBzaXplIHdyaXR0ZW46ICVkLiIsCisgICAgICAgICAgICAgICAgc2l6ZSwgbik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitpbnRlcm5hbF9kZXZwb2xsX3JlZ2lzdGVyKGRldnBvbGxPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBpbnQgcmVtb3ZlKQoreworICAgIFB5T2JqZWN0ICpvOworICAgIGludCBmZCwgZXZlbnRzID0gUE9MTElOIHwgUE9MTFBSSSB8IFBPTExPVVQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98aTpyZWdpc3RlciIsICZvLCAmZXZlbnRzKSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBmZCA9IFB5T2JqZWN0X0FzRmlsZURlc2NyaXB0b3Iobyk7CisgICAgaWYgKGZkID09IC0xKSByZXR1cm4gTlVMTDsKKworICAgIGlmIChyZW1vdmUpIHsKKyAgICAgICAgc2VsZi0+ZmRzW3NlbGYtPm5fZmRzXS5mZCA9IGZkOworICAgICAgICBzZWxmLT5mZHNbc2VsZi0+bl9mZHNdLmV2ZW50cyA9IFBPTExSRU1PVkU7CisKKyAgICAgICAgaWYgKCsrc2VsZi0+bl9mZHMgPT0gc2VsZi0+bWF4X25fZmRzKSB7CisgICAgICAgICAgICBpZiAoZGV2cG9sbF9mbHVzaChzZWxmKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgIH0KKworICAgIHNlbGYtPmZkc1tzZWxmLT5uX2Zkc10uZmQgPSBmZDsKKyAgICBzZWxmLT5mZHNbc2VsZi0+bl9mZHNdLmV2ZW50cyA9IGV2ZW50czsKKworICAgIGlmICgrK3NlbGYtPm5fZmRzID09IHNlbGYtPm1heF9uX2ZkcykgeworICAgICAgICBpZiAoZGV2cG9sbF9mbHVzaChzZWxmKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIFB5X1JFVFVSTl9OT05FOworfQorCitQeURvY19TVFJWQVIoZGV2cG9sbF9yZWdpc3Rlcl9kb2MsCisicmVnaXN0ZXIoZmQgWywgZXZlbnRtYXNrXSApIC0+IE5vbmVcblxuXAorUmVnaXN0ZXIgYSBmaWxlIGRlc2NyaXB0b3Igd2l0aCB0aGUgcG9sbGluZyBvYmplY3QuXG5cCitmZCAtLSBlaXRoZXIgYW4gaW50ZWdlciwgb3IgYW4gb2JqZWN0IHdpdGggYSBmaWxlbm8oKSBtZXRob2QgcmV0dXJuaW5nIGFuXG5cCisgICAgICBpbnQuXG5cCitldmVudHMgLS0gYW4gb3B0aW9uYWwgYml0bWFzayBkZXNjcmliaW5nIHRoZSB0eXBlIG9mIGV2ZW50cyB0byBjaGVjayBmb3IiKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2RldnBvbGxfcmVnaXN0ZXIoZGV2cG9sbE9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcmV0dXJuIGludGVybmFsX2RldnBvbGxfcmVnaXN0ZXIoc2VsZiwgYXJncywgMCk7Cit9CisKK1B5RG9jX1NUUlZBUihkZXZwb2xsX21vZGlmeV9kb2MsCisibW9kaWZ5KGZkWywgZXZlbnRtYXNrXSkgLT4gTm9uZVxuXG5cCitNb2RpZnkgYSBwb3NzaWJsZSBhbHJlYWR5IHJlZ2lzdGVyZWQgZmlsZSBkZXNjcmlwdG9yLlxuXAorZmQgLS0gZWl0aGVyIGFuIGludGVnZXIsIG9yIGFuIG9iamVjdCB3aXRoIGEgZmlsZW5vKCkgbWV0aG9kIHJldHVybmluZyBhblxuXAorICAgICAgaW50LlxuXAorZXZlbnRzIC0tIGFuIG9wdGlvbmFsIGJpdG1hc2sgZGVzY3JpYmluZyB0aGUgdHlwZSBvZiBldmVudHMgdG8gY2hlY2sgZm9yIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitkZXZwb2xsX21vZGlmeShkZXZwb2xsT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICByZXR1cm4gaW50ZXJuYWxfZGV2cG9sbF9yZWdpc3RlcihzZWxmLCBhcmdzLCAxKTsKK30KKworCitQeURvY19TVFJWQVIoZGV2cG9sbF91bnJlZ2lzdGVyX2RvYywKKyJ1bnJlZ2lzdGVyKGZkKSAtPiBOb25lXG5cblwKK1JlbW92ZSBhIGZpbGUgZGVzY3JpcHRvciBiZWluZyB0cmFja2VkIGJ5IHRoZSBwb2xsaW5nIG9iamVjdC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2RldnBvbGxfdW5yZWdpc3RlcihkZXZwb2xsT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqbykKK3sKKyAgICBpbnQgZmQ7CisKKyAgICBmZCA9IFB5T2JqZWN0X0FzRmlsZURlc2NyaXB0b3IoIG8gKTsKKyAgICBpZiAoZmQgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgc2VsZi0+ZmRzW3NlbGYtPm5fZmRzXS5mZCA9IGZkOworICAgIHNlbGYtPmZkc1tzZWxmLT5uX2Zkc10uZXZlbnRzID0gUE9MTFJFTU9WRTsKKworICAgIGlmICgrK3NlbGYtPm5fZmRzID09IHNlbGYtPm1heF9uX2ZkcykgeworICAgICAgICBpZiAoZGV2cG9sbF9mbHVzaChzZWxmKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIFB5X1JFVFVSTl9OT05FOworfQorCitQeURvY19TVFJWQVIoZGV2cG9sbF9wb2xsX2RvYywKKyJwb2xsKCBbdGltZW91dF0gKSAtPiBsaXN0IG9mIChmZCwgZXZlbnQpIDItdHVwbGVzXG5cblwKK1BvbGxzIHRoZSBzZXQgb2YgcmVnaXN0ZXJlZCBmaWxlIGRlc2NyaXB0b3JzLCByZXR1cm5pbmcgYSBsaXN0IGNvbnRhaW5pbmcgXG5cCithbnkgZGVzY3JpcHRvcnMgdGhhdCBoYXZlIGV2ZW50cyBvciBlcnJvcnMgdG8gcmVwb3J0LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorZGV2cG9sbF9wb2xsKGRldnBvbGxPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIHN0cnVjdCBkdnBvbGwgZHZwOworICAgIFB5T2JqZWN0ICpyZXN1bHRfbGlzdCA9IE5VTEwsICp0b3V0ID0gTlVMTDsKKyAgICBpbnQgcG9sbF9yZXN1bHQsIGk7CisgICAgbG9uZyB0aW1lb3V0OworICAgIFB5T2JqZWN0ICp2YWx1ZSwgKm51bTEsICpudW0yOworCisgICAgaWYgKCFQeUFyZ19VbnBhY2tUdXBsZShhcmdzLCAicG9sbCIsIDAsIDEsICZ0b3V0KSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICAvKiBDaGVjayB2YWx1ZXMgZm9yIHRpbWVvdXQgKi8KKyAgICBpZiAodG91dCA9PSBOVUxMIHx8IHRvdXQgPT0gUHlfTm9uZSkKKyAgICAgICAgdGltZW91dCA9IC0xOworICAgIGVsc2UgaWYgKCFQeU51bWJlcl9DaGVjayh0b3V0KSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgInRpbWVvdXQgbXVzdCBiZSBhbiBpbnRlZ2VyIG9yIE5vbmUiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICB0b3V0ID0gUHlOdW1iZXJfTG9uZyh0b3V0KTsKKyAgICAgICAgaWYgKCF0b3V0KQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHRpbWVvdXQgPSBQeUxvbmdfQXNMb25nKHRvdXQpOworICAgICAgICBQeV9ERUNSRUYodG91dCk7CisgICAgICAgIGlmICh0aW1lb3V0ID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoKHRpbWVvdXQgPCAtMSkgfHwgKHRpbWVvdXQgPiBJTlRfTUFYKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJ0aW1lb3V0IGlzIG91dCBvZiByYW5nZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoZGV2cG9sbF9mbHVzaChzZWxmKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBkdnAuZHBfZmRzID0gc2VsZi0+ZmRzOworICAgIGR2cC5kcF9uZmRzID0gc2VsZi0+bWF4X25fZmRzOworICAgIGR2cC5kcF90aW1lb3V0ID0gdGltZW91dDsKKworICAgIC8qIGNhbGwgZGV2cG9sbCgpICovCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHBvbGxfcmVzdWx0ID0gaW9jdGwoc2VsZi0+ZmRfZGV2cG9sbCwgRFBfUE9MTCwgJmR2cCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKworICAgIGlmIChwb2xsX3Jlc3VsdCA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICAvKiBidWlsZCB0aGUgcmVzdWx0IGxpc3QgKi8KKworICAgIHJlc3VsdF9saXN0ID0gUHlMaXN0X05ldyhwb2xsX3Jlc3VsdCk7CisgICAgaWYgKCFyZXN1bHRfbGlzdCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgZWxzZSB7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBwb2xsX3Jlc3VsdDsgaSsrKSB7CisgICAgICAgICAgICBudW0xID0gUHlMb25nX0Zyb21Mb25nKHNlbGYtPmZkc1tpXS5mZCk7CisgICAgICAgICAgICBudW0yID0gUHlMb25nX0Zyb21Mb25nKHNlbGYtPmZkc1tpXS5yZXZlbnRzKTsKKyAgICAgICAgICAgIGlmICgobnVtMSA9PSBOVUxMKSB8fCAobnVtMiA9PSBOVUxMKSkgeworICAgICAgICAgICAgICAgIFB5X1hERUNSRUYobnVtMSk7CisgICAgICAgICAgICAgICAgUHlfWERFQ1JFRihudW0yKTsKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgfQorICAgICAgICAgICAgdmFsdWUgPSBQeVR1cGxlX1BhY2soMiwgbnVtMSwgbnVtMik7CisgICAgICAgICAgICBQeV9ERUNSRUYobnVtMSk7CisgICAgICAgICAgICBQeV9ERUNSRUYobnVtMik7CisgICAgICAgICAgICBpZiAodmFsdWUgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgaWYgKChQeUxpc3RfU2V0SXRlbShyZXN1bHRfbGlzdCwgaSwgdmFsdWUpKSA9PSAtMSkgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiByZXN1bHRfbGlzdDsKKworICBlcnJvcjoKKyAgICBQeV9ERUNSRUYocmVzdWx0X2xpc3QpOworICAgIHJldHVybiBOVUxMOworfQorCitzdGF0aWMgUHlNZXRob2REZWYgZGV2cG9sbF9tZXRob2RzW10gPSB7CisgICAgeyJyZWdpc3RlciIsICAgICAgICAoUHlDRnVuY3Rpb24pZGV2cG9sbF9yZWdpc3RlciwKKyAgICAgTUVUSF9WQVJBUkdTLCAgZGV2cG9sbF9yZWdpc3Rlcl9kb2N9LAorICAgIHsibW9kaWZ5IiwgICAgICAgICAgKFB5Q0Z1bmN0aW9uKWRldnBvbGxfbW9kaWZ5LAorICAgICBNRVRIX1ZBUkFSR1MsICBkZXZwb2xsX21vZGlmeV9kb2N9LAorICAgIHsidW5yZWdpc3RlciIsICAgICAgKFB5Q0Z1bmN0aW9uKWRldnBvbGxfdW5yZWdpc3RlciwKKyAgICAgTUVUSF9PLCAgICAgICAgZGV2cG9sbF91bnJlZ2lzdGVyX2RvY30sCisgICAgeyJwb2xsIiwgICAgICAgICAgICAoUHlDRnVuY3Rpb24pZGV2cG9sbF9wb2xsLAorICAgICBNRVRIX1ZBUkFSR1MsICBkZXZwb2xsX3BvbGxfZG9jfSwKKyAgICB7TlVMTCwgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAvKiBzZW50aW5lbCAqLworfTsKKworc3RhdGljIGRldnBvbGxPYmplY3QgKgorbmV3RGV2UG9sbE9iamVjdCh2b2lkKQoreworICAgIGRldnBvbGxPYmplY3QgKnNlbGY7CisgICAgaW50IGZkX2RldnBvbGwsIGxpbWl0X3Jlc3VsdDsKKyAgICBzdHJ1Y3QgcG9sbGZkICpmZHM7CisgICAgc3RydWN0IHJsaW1pdCBsaW1pdDsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAvKgorICAgICoqIElmIHdlIHRyeSB0byBwcm9jZXNzIG1vcmUgdGhhdCBnZXRybGltaXQoKQorICAgICoqIGZkcywgdGhlIGtlcm5lbCB3aWxsIGdpdmUgYW4gZXJyb3IsIHNvCisgICAgKiogd2Ugc2V0IHRoZSBsaW1pdCBoZXJlLiBJdCBpcyBhIGR5bmFtaWMKKyAgICAqKiB2YWx1ZSwgYmVjYXVzZSB3ZSBjYW4gY2hhbmdlIHJsaW1pdCgpIGFueXRpbWUuCisgICAgKi8KKyAgICBsaW1pdF9yZXN1bHQgPSBnZXRybGltaXQoUkxJTUlUX05PRklMRSwgJmxpbWl0KTsKKyAgICBpZiAobGltaXRfcmVzdWx0ICE9IC0xKQorICAgICAgICBmZF9kZXZwb2xsID0gb3BlbigiL2Rldi9wb2xsIiwgT19SRFdSKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgaWYgKGxpbWl0X3Jlc3VsdCA9PSAtMSkgeworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoZmRfZGV2cG9sbCA9PSAtMSkgeworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWUoUHlFeGNfSU9FcnJvciwgIi9kZXYvcG9sbCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBmZHMgPSBQeU1lbV9ORVcoc3RydWN0IHBvbGxmZCwgbGltaXQucmxpbV9jdXIpOworICAgIGlmIChmZHMgPT0gTlVMTCkgeworICAgICAgICBjbG9zZShmZF9kZXZwb2xsKTsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgc2VsZiA9IFB5T2JqZWN0X05ldyhkZXZwb2xsT2JqZWN0LCAmZGV2cG9sbF9UeXBlKTsKKyAgICBpZiAoc2VsZiA9PSBOVUxMKSB7CisgICAgICAgIGNsb3NlKGZkX2RldnBvbGwpOworICAgICAgICBQeU1lbV9ERUwoZmRzKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHNlbGYtPmZkX2RldnBvbGwgPSBmZF9kZXZwb2xsOworICAgIHNlbGYtPm1heF9uX2ZkcyA9IGxpbWl0LnJsaW1fY3VyOworICAgIHNlbGYtPm5fZmRzID0gMDsKKyAgICBzZWxmLT5mZHMgPSBmZHM7CisKKyAgICByZXR1cm4gc2VsZjsKK30KKworc3RhdGljIHZvaWQKK2RldnBvbGxfZGVhbGxvYyhkZXZwb2xsT2JqZWN0ICpzZWxmKQoreworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICBjbG9zZShzZWxmLT5mZF9kZXZwb2xsKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgUHlNZW1fREVMKHNlbGYtPmZkcyk7CisKKyAgICBQeU9iamVjdF9EZWwoc2VsZik7Cit9CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgZGV2cG9sbF9UeXBlID0geworICAgIC8qIFRoZSBvYl90eXBlIGZpZWxkIG11c3QgYmUgaW5pdGlhbGl6ZWQgaW4gdGhlIG1vZHVsZSBpbml0IGZ1bmN0aW9uCisgICAgICogdG8gYmUgcG9ydGFibGUgdG8gV2luZG93cyB3aXRob3V0IHVzaW5nIEMrKy4gKi8KKyAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoTlVMTCwgMCkKKyAgICAic2VsZWN0LmRldnBvbGwiLCAgICAgICAgICAgLyp0cF9uYW1lKi8KKyAgICBzaXplb2YoZGV2cG9sbE9iamVjdCksICAgICAgLyp0cF9iYXNpY3NpemUqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2l0ZW1zaXplKi8KKyAgICAvKiBtZXRob2RzICovCisgICAgKGRlc3RydWN0b3IpZGV2cG9sbF9kZWFsbG9jLCAvKnRwX2RlYWxsb2MqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3ByaW50Ki8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9nZXRhdHRyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9zZXRhdHRyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9yZXNlcnZlZCovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmVwciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfbnVtYmVyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19zZXF1ZW5jZSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfbWFwcGluZyovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaGFzaCovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfY2FsbCovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc3RyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9nZXRhdHRybyovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc2V0YXR0cm8qLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX2J1ZmZlciovCisgICAgUHlfVFBGTEFHU19ERUZBVUxULCAgICAgICAgIC8qdHBfZmxhZ3MqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2RvYyovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfdHJhdmVyc2UqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2NsZWFyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9yaWNoY29tcGFyZSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfd2Vha2xpc3RvZmZzZXQqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2l0ZXIqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2l0ZXJuZXh0Ki8KKyAgICBkZXZwb2xsX21ldGhvZHMsICAgICAgICAgICAgLyp0cF9tZXRob2RzKi8KK307CisjZW5kaWYgIC8qIEhBVkVfU1lTX0RFVlBPTExfSCAqLworCisKKwogUHlEb2NfU1RSVkFSKHBvbGxfZG9jLAogIlJldHVybnMgYSBwb2xsaW5nIG9iamVjdCwgd2hpY2ggc3VwcG9ydHMgcmVnaXN0ZXJpbmcgYW5kXG5cCiB1bnJlZ2lzdGVyaW5nIGZpbGUgZGVzY3JpcHRvcnMsIGFuZCB0aGVuIHBvbGxpbmcgdGhlbSBmb3IgSS9PIGV2ZW50cy4iKTsKQEAgLTY1NSw2ICs5OTksMTkgQEAKICAgICByZXR1cm4gKFB5T2JqZWN0ICopbmV3UG9sbE9iamVjdCgpOwogfQogCisjaWZkZWYgSEFWRV9TWVNfREVWUE9MTF9ICitQeURvY19TVFJWQVIoZGV2cG9sbF9kb2MsCisiUmV0dXJucyBhIHBvbGxpbmcgb2JqZWN0LCB3aGljaCBzdXBwb3J0cyByZWdpc3RlcmluZyBhbmRcblwKK3VucmVnaXN0ZXJpbmcgZmlsZSBkZXNjcmlwdG9ycywgYW5kIHRoZW4gcG9sbGluZyB0aGVtIGZvciBJL08gZXZlbnRzLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorc2VsZWN0X2RldnBvbGwoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICp1bnVzZWQpCit7CisgICAgcmV0dXJuIChQeU9iamVjdCAqKW5ld0RldlBvbGxPYmplY3QoKTsKK30KKyNlbmRpZgorCisKICNpZmRlZiBfX0FQUExFX18KIC8qCiAgKiBPbiBzb21lIHN5c3RlbXMgcG9sbCgpIHNldHMgZXJybm8gb24gaW52YWxpZCBmaWxlIGRlc2NyaXB0b3JzLiBXZSB0ZXN0CkBAIC03MzAsMjAgKzEwODcsMTAgQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKLW5ld1B5RXBvbGxfT2JqZWN0KFB5VHlwZU9iamVjdCAqdHlwZSwgaW50IHNpemVoaW50LCBTT0NLRVQgZmQpCituZXdQeUVwb2xsX09iamVjdChQeVR5cGVPYmplY3QgKnR5cGUsIGludCBzaXplaGludCwgaW50IGZsYWdzLCBTT0NLRVQgZmQpCiB7CiAgICAgcHlFcG9sbF9PYmplY3QgKnNlbGY7CiAKLSAgICBpZiAoc2l6ZWhpbnQgPT0gLTEpIHsKLSAgICAgICAgc2l6ZWhpbnQgPSBGRF9TRVRTSVpFLTE7Ci0gICAgfQotICAgIGVsc2UgaWYgKHNpemVoaW50IDwgMSkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJzaXplaGludCBtdXN0IGJlIGdyZWF0ZXIgemVybywgZ290ICVkIiwKLSAgICAgICAgICAgICAgICAgICAgIHNpemVoaW50KTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCiAgICAgYXNzZXJ0KHR5cGUgIT0gTlVMTCAmJiB0eXBlLT50cF9hbGxvYyAhPSBOVUxMKTsKICAgICBzZWxmID0gKHB5RXBvbGxfT2JqZWN0ICopIHR5cGUtPnRwX2FsbG9jKHR5cGUsIDApOwogICAgIGlmIChzZWxmID09IE5VTEwpCkBAIC03NTEsNiArMTA5OCwxMSBAQAogCiAgICAgaWYgKGZkID09IC0xKSB7CiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyNpZmRlZiBIQVZFX0VQT0xMX0NSRUFURTEKKyAgICAgICAgaWYgKGZsYWdzKQorICAgICAgICAgICAgc2VsZi0+ZXBmZCA9IGVwb2xsX2NyZWF0ZTEoZmxhZ3MpOworICAgICAgICBlbHNlCisjZW5kaWYKICAgICAgICAgc2VsZi0+ZXBmZCA9IGVwb2xsX2NyZWF0ZShzaXplaGludCk7CiAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgfQpAQCAtNzU5LDcgKzExMTEsNyBAQAogICAgIH0KICAgICBpZiAoc2VsZi0+ZXBmZCA8IDApIHsKICAgICAgICAgUHlfREVDUkVGKHNlbGYpOwotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiAoUHlPYmplY3QgKilzZWxmOwpAQCAtNzY5LDE0ICsxMTIxLDE4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogcHllcG9sbF9uZXcoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiB7Ci0gICAgaW50IHNpemVoaW50ID0gLTE7Ci0gICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJzaXplaGludCIsIE5VTEx9OworICAgIGludCBmbGFncyA9IDAsIHNpemVoaW50ID0gRkRfU0VUU0laRSAtIDE7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJzaXplaGludCIsICJmbGFncyIsIE5VTEx9OwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxpOmVwb2xsIiwga3dsaXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzaXplaGludCkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxpaTplcG9sbCIsIGt3bGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2l6ZWhpbnQsICZmbGFncykpCiAgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzaXplaGludCA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJuZWdhdGl2ZSBzaXplaGludCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAKLSAgICByZXR1cm4gbmV3UHlFcG9sbF9PYmplY3QodHlwZSwgc2l6ZWhpbnQsIC0xKTsKKyAgICByZXR1cm4gbmV3UHlFcG9sbF9PYmplY3QodHlwZSwgc2l6ZWhpbnQsIGZsYWdzLCAtMSk7CiB9CiAKIApAQCAtNzkyLDcgKzExNDgsNyBAQAogewogICAgIGVycm5vID0gcHllcG9sbF9pbnRlcm5hbF9jbG9zZShzZWxmKTsKICAgICBpZiAoZXJybm8gPCAwKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgUHlfUkVUVVJOX05PTkU7CkBAIC04MzQsNyArMTE5MCw3IEBACiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpOmZyb21mZCIsICZmZCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgcmV0dXJuIG5ld1B5RXBvbGxfT2JqZWN0KChQeVR5cGVPYmplY3QqKWNscywgLTEsIGZkKTsKKyAgICByZXR1cm4gbmV3UHlFcG9sbF9PYmplY3QoKFB5VHlwZU9iamVjdCopY2xzLCBGRF9TRVRTSVpFIC0gMSwgMCwgZmQpOwogfQogCiBQeURvY19TVFJWQVIocHllcG9sbF9mcm9tZmRfZG9jLApAQCAtODg1LDcgKzEyNDEsNyBAQAogICAgIH0KIAogICAgIGlmIChyZXN1bHQgPCAwKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgUHlfUkVUVVJOX05PTkU7CkBAIC05MDksNyArMTI2NSw3IEBACiBQeURvY19TVFJWQVIocHllcG9sbF9yZWdpc3Rlcl9kb2MsCiAicmVnaXN0ZXIoZmRbLCBldmVudG1hc2tdKSAtPiBOb25lXG5cCiBcblwKLVJlZ2lzdGVycyBhIG5ldyBmZCBvciByYWlzZXMgYW4gSU9FcnJvciBpZiB0aGUgZmQgaXMgYWxyZWFkeSByZWdpc3RlcmVkLlxuXAorUmVnaXN0ZXJzIGEgbmV3IGZkIG9yIHJhaXNlcyBhbiBPU0Vycm9yIGlmIHRoZSBmZCBpcyBhbHJlYWR5IHJlZ2lzdGVyZWQuXG5cCiBmZCBpcyB0aGUgdGFyZ2V0IGZpbGUgZGVzY3JpcHRvciBvZiB0aGUgb3BlcmF0aW9uLlxuXAogZXZlbnRzIGlzIGEgYml0IHNldCBjb21wb3NlZCBvZiB0aGUgdmFyaW91cyBFUE9MTCBjb25zdGFudHM7IHRoZSBkZWZhdWx0XG5cCiBpcyBFUE9MTF9JTiB8IEVQT0xMX09VVCB8IEVQT0xMX1BSSS5cblwKQEAgLTEwMDgsNyArMTM2NCw3IEBACiAgICAgbmZkcyA9IGVwb2xsX3dhaXQoc2VsZi0+ZXBmZCwgZXZzLCBtYXhldmVudHMsIHRpbWVvdXQpOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgaWYgKG5mZHMgPCAwKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KIApAQCAtMTA2Myw3ICsxNDE5LDcgQEAKIH07CiAKIFB5RG9jX1NUUlZBUihweWVwb2xsX2RvYywKLSJzZWxlY3QuZXBvbGwoW3NpemVoaW50PS0xXSlcblwKKyJzZWxlY3QuZXBvbGwoc2l6ZWhpbnQ9LTEsIGZsYWdzPTApXG5cCiBcblwKIFJldHVybnMgYW4gZXBvbGxpbmcgb2JqZWN0XG5cCiBcblwKQEAgLTEzOTksNyArMTc1NSw3IEBACiAgICAgfQogICAgIGlmIChzZWxmLT5rcWZkIDwgMCkgewogICAgICAgICBQeV9ERUNSRUYoc2VsZik7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgcmV0dXJuIChQeU9iamVjdCAqKXNlbGY7CkBAIC0xNDMxLDcgKzE3ODcsNyBAQAogewogICAgIGVycm5vID0ga3F1ZXVlX3F1ZXVlX2ludGVybmFsX2Nsb3NlKHNlbGYpOwogICAgIGlmIChlcnJubyA8IDApIHsKLSAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBQeV9SRVRVUk5fTk9ORTsKQEAgLTE3MTIsNiArMjA2OCwxMSBAQAogfTsKIAogI2VuZGlmIC8qIEhBVkVfS1FVRVVFICovCisKKworCisKKwogLyogKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovCiAKIFB5RG9jX1NUUlZBUihzZWxlY3RfZG9jLApAQCAtMTc0Myw2ICsyMTA0LDkgQEAKICNpZmRlZiBIQVZFX1BPTEwKICAgICB7InBvbGwiLCAgICAgICAgICAgIHNlbGVjdF9wb2xsLCAgICBNRVRIX05PQVJHUywgICAgcG9sbF9kb2N9LAogI2VuZGlmIC8qIEhBVkVfUE9MTCAqLworI2lmZGVmIEhBVkVfU1lTX0RFVlBPTExfSAorICAgIHsiZGV2cG9sbCIsICAgICAgICAgc2VsZWN0X2RldnBvbGwsIE1FVEhfTk9BUkdTLCAgICBkZXZwb2xsX2RvY30sCisjZW5kaWYKICAgICB7MCwgICAgICAgICAwfSwgICAgIC8qIHNlbnRpbmVsICovCiB9OwogCkBAIC0xNzY1LDYgKzIxMjksOSBAQAogICAgIE5VTEwKIH07CiAKKworCisKIFB5TU9ESU5JVF9GVU5DCiBQeUluaXRfc2VsZWN0KHZvaWQpCiB7CkBAIC0xNzczLDkgKzIxNDAsOCBAQAogICAgIGlmIChtID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgU2VsZWN0RXJyb3IgPSBQeUVycl9OZXdFeGNlcHRpb24oInNlbGVjdC5lcnJvciIsIE5VTEwsIE5VTEwpOwotICAgIFB5X0lOQ1JFRihTZWxlY3RFcnJvcik7Ci0gICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJlcnJvciIsIFNlbGVjdEVycm9yKTsKKyAgICBQeV9JTkNSRUYoUHlFeGNfT1NFcnJvcik7CisgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJlcnJvciIsIFB5RXhjX09TRXJyb3IpOwogCiAjaWZkZWYgUElQRV9CVUYKICNpZmRlZiBIQVZFX0JST0tFTl9QSVBFX0JVRgpAQCAtMTgyMiw2ICsyMTg4LDExIEBACiAgICAgfQogI2VuZGlmIC8qIEhBVkVfUE9MTCAqLwogCisjaWZkZWYgSEFWRV9TWVNfREVWUE9MTF9ICisgICAgaWYgKFB5VHlwZV9SZWFkeSgmZGV2cG9sbF9UeXBlKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworI2VuZGlmCisKICNpZmRlZiBIQVZFX0VQT0xMCiAgICAgUHlfVFlQRSgmcHlFcG9sbF9UeXBlKSA9ICZQeVR5cGVfVHlwZTsKICAgICBpZiAoUHlUeXBlX1JlYWR5KCZweUVwb2xsX1R5cGUpIDwgMCkKQEAgLTE4NDYsNiArMjIxNywxMCBAQAogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJFUE9MTFdSTk9STSIsIEVQT0xMV1JOT1JNKTsKICAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiRVBPTExXUkJBTkQiLCBFUE9MTFdSQkFORCk7CiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkVQT0xMTVNHIiwgRVBPTExNU0cpOworCisjaWZkZWYgRVBPTExfQ0xPRVhFQworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJFUE9MTF9DTE9FWEVDIiwgRVBPTExfQ0xPRVhFQyk7CisjZW5kaWYKICNlbmRpZiAvKiBIQVZFX0VQT0xMICovCiAKICNpZmRlZiBIQVZFX0tRVUVVRQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9zaGExbW9kdWxlLmMgYi9Nb2R1bGVzL3NoYTFtb2R1bGUuYwppbmRleCBiMjViZDQ0Li4zMGU1YzUwIDEwMDY0NAotLS0gYS9Nb2R1bGVzL3NoYTFtb2R1bGUuYworKysgYi9Nb2R1bGVzL3NoYTFtb2R1bGUuYwpAQCAtMjE4LDcgKzIxOCw3IEBACiAgICAgICAgICAgIGluICAgICAgICAgICAgICs9IFNIQTFfQkxPQ0tTSVpFOwogICAgICAgICAgICBpbmxlbiAgICAgICAgICAtPSBTSEExX0JMT0NLU0laRTsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgbiA9IE1JTihpbmxlbiwgKFNIQTFfQkxPQ0tTSVpFIC0gc2hhMS0+Y3VybGVuKSk7CisgICAgICAgICAgIG4gPSBNSU4oaW5sZW4sIChQeV9zc2l6ZV90KShTSEExX0JMT0NLU0laRSAtIHNoYTEtPmN1cmxlbikpOwogICAgICAgICAgICBtZW1jcHkoc2hhMS0+YnVmICsgc2hhMS0+Y3VybGVuLCBpbiwgKHNpemVfdCluKTsKICAgICAgICAgICAgc2hhMS0+Y3VybGVuICAgKz0gbjsKICAgICAgICAgICAgaW4gICAgICAgICAgICAgKz0gbjsKQEAgLTM1Miw3ICszNTIsNyBAQAogICAgIHVuc2lnbmVkIGNoYXIgZGlnZXN0W1NIQTFfRElHRVNUU0laRV07CiAgICAgc3RydWN0IHNoYTFfc3RhdGUgdGVtcDsKICAgICBQeU9iamVjdCAqcmV0dmFsOwotICAgIFB5X1VOSUNPREUgKmhleF9kaWdlc3Q7CisgICAgUHlfVUNTMSAqaGV4X2RpZ2VzdDsKICAgICBpbnQgaSwgajsKIAogICAgIC8qIEdldCB0aGUgcmF3IChiaW5hcnkpIGRpZ2VzdCB2YWx1ZSAqLwpAQCAtMzYwLDI0ICszNjAsMTggQEAKICAgICBzaGExX2RvbmUoJnRlbXAsIGRpZ2VzdCk7CiAKICAgICAvKiBDcmVhdGUgYSBuZXcgc3RyaW5nICovCi0gICAgcmV0dmFsID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIFNIQTFfRElHRVNUU0laRSAqIDIpOworICAgIHJldHZhbCA9IFB5VW5pY29kZV9OZXcoU0hBMV9ESUdFU1RTSVpFICogMiwgMTI3KTsKICAgICBpZiAoIXJldHZhbCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGhleF9kaWdlc3QgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXR2YWwpOwotICAgIGlmICghaGV4X2RpZ2VzdCkgewotICAgICAgICAgICAgUHlfREVDUkVGKHJldHZhbCk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CisgICAgaGV4X2RpZ2VzdCA9IFB5VW5pY29kZV8xQllURV9EQVRBKHJldHZhbCk7CiAKICAgICAvKiBNYWtlIGhleCB2ZXJzaW9uIG9mIHRoZSBkaWdlc3QgKi8KICAgICBmb3IoaT1qPTA7IGk8U0hBMV9ESUdFU1RTSVpFOyBpKyspIHsKLSAgICAgICAgY2hhciBjOworICAgICAgICB1bnNpZ25lZCBjaGFyIGM7CiAgICAgICAgIGMgPSAoZGlnZXN0W2ldID4+IDQpICYgMHhmOwotICAgICAgICBjID0gKGM+OSkgPyBjKydhJy0xMCA6IGMgKyAnMCc7Ci0gICAgICAgIGhleF9kaWdlc3RbaisrXSA9IGM7CisgICAgICAgIGhleF9kaWdlc3RbaisrXSA9IFB5X2hleGRpZ2l0c1tjXTsKICAgICAgICAgYyA9IChkaWdlc3RbaV0gJiAweGYpOwotICAgICAgICBjID0gKGM+OSkgPyBjKydhJy0xMCA6IGMgKyAnMCc7Ci0gICAgICAgIGhleF9kaWdlc3RbaisrXSA9IGM7CisgICAgICAgIGhleF9kaWdlc3RbaisrXSA9IFB5X2hleGRpZ2l0c1tjXTsKICAgICB9CiAgICAgcmV0dXJuIHJldHZhbDsKIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvc2hhMjU2bW9kdWxlLmMgYi9Nb2R1bGVzL3NoYTI1Nm1vZHVsZS5jCmluZGV4IDg2MTcyMTAuLmYxZWYzMjkgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvc2hhMjU2bW9kdWxlLmMKKysrIGIvTW9kdWxlcy9zaGEyNTZtb2R1bGUuYwpAQCAtNDQ1LDcgKzQ0NSw3IEBACiAgICAgdW5zaWduZWQgY2hhciBkaWdlc3RbU0hBX0RJR0VTVFNJWkVdOwogICAgIFNIQW9iamVjdCB0ZW1wOwogICAgIFB5T2JqZWN0ICpyZXR2YWw7Ci0gICAgUHlfVU5JQ09ERSAqaGV4X2RpZ2VzdDsKKyAgICBQeV9VQ1MxICpoZXhfZGlnZXN0OwogICAgIGludCBpLCBqOwogCiAgICAgLyogR2V0IHRoZSByYXcgKGJpbmFyeSkgZGlnZXN0IHZhbHVlICovCkBAIC00NTMsMjQgKzQ1MywxOCBAQAogICAgIHNoYV9maW5hbChkaWdlc3QsICZ0ZW1wKTsKIAogICAgIC8qIENyZWF0ZSBhIG5ldyBzdHJpbmcgKi8KLSAgICByZXR2YWwgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgc2VsZi0+ZGlnZXN0c2l6ZSAqIDIpOworICAgIHJldHZhbCA9IFB5VW5pY29kZV9OZXcoc2VsZi0+ZGlnZXN0c2l6ZSAqIDIsIDEyNyk7CiAgICAgaWYgKCFyZXR2YWwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBoZXhfZGlnZXN0ID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmV0dmFsKTsKLSAgICBpZiAoIWhleF9kaWdlc3QpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXR2YWwpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQorICAgIGhleF9kaWdlc3QgPSBQeVVuaWNvZGVfMUJZVEVfREFUQShyZXR2YWwpOwogCiAgICAgLyogTWFrZSBoZXggdmVyc2lvbiBvZiB0aGUgZGlnZXN0ICovCiAgICAgZm9yKGk9aj0wOyBpPHNlbGYtPmRpZ2VzdHNpemU7IGkrKykgewotICAgICAgICBjaGFyIGM7CisgICAgICAgIHVuc2lnbmVkIGNoYXIgYzsKICAgICAgICAgYyA9IChkaWdlc3RbaV0gPj4gNCkgJiAweGY7Ci0gICAgICAgIGMgPSAoYz45KSA/IGMrJ2EnLTEwIDogYyArICcwJzsKLSAgICAgICAgaGV4X2RpZ2VzdFtqKytdID0gYzsKKyAgICAgICAgaGV4X2RpZ2VzdFtqKytdID0gUHlfaGV4ZGlnaXRzW2NdOwogICAgICAgICBjID0gKGRpZ2VzdFtpXSAmIDB4Zik7Ci0gICAgICAgIGMgPSAoYz45KSA/IGMrJ2EnLTEwIDogYyArICcwJzsKLSAgICAgICAgaGV4X2RpZ2VzdFtqKytdID0gYzsKKyAgICAgICAgaGV4X2RpZ2VzdFtqKytdID0gUHlfaGV4ZGlnaXRzW2NdOwogICAgIH0KICAgICByZXR1cm4gcmV0dmFsOwogfQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9zaGE1MTJtb2R1bGUuYyBiL01vZHVsZXMvc2hhNTEybW9kdWxlLmMKaW5kZXggMGZhYWY1Yy4uNGY1YTExMyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9zaGE1MTJtb2R1bGUuYworKysgYi9Nb2R1bGVzL3NoYTUxMm1vZHVsZS5jCkBAIC01MTEsNyArNTExLDcgQEAKICAgICB1bnNpZ25lZCBjaGFyIGRpZ2VzdFtTSEFfRElHRVNUU0laRV07CiAgICAgU0hBb2JqZWN0IHRlbXA7CiAgICAgUHlPYmplY3QgKnJldHZhbDsKLSAgICBQeV9VTklDT0RFICpoZXhfZGlnZXN0OworICAgIFB5X1VDUzEgKmhleF9kaWdlc3Q7CiAgICAgaW50IGksIGo7CiAKICAgICAvKiBHZXQgdGhlIHJhdyAoYmluYXJ5KSBkaWdlc3QgdmFsdWUgKi8KQEAgLTUxOSwyNCArNTE5LDE4IEBACiAgICAgc2hhNTEyX2ZpbmFsKGRpZ2VzdCwgJnRlbXApOwogCiAgICAgLyogQ3JlYXRlIGEgbmV3IHN0cmluZyAqLwotICAgIHJldHZhbCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBzZWxmLT5kaWdlc3RzaXplICogMik7CisgICAgcmV0dmFsID0gUHlVbmljb2RlX05ldyhzZWxmLT5kaWdlc3RzaXplICogMiwgMTI3KTsKICAgICBpZiAoIXJldHZhbCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGhleF9kaWdlc3QgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXR2YWwpOwotICAgIGlmICghaGV4X2RpZ2VzdCkgewotICAgICAgICAgICAgUHlfREVDUkVGKHJldHZhbCk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CisgICAgaGV4X2RpZ2VzdCA9IFB5VW5pY29kZV8xQllURV9EQVRBKHJldHZhbCk7CiAKICAgICAvKiBNYWtlIGhleCB2ZXJzaW9uIG9mIHRoZSBkaWdlc3QgKi8KICAgICBmb3IgKGk9aj0wOyBpPHNlbGYtPmRpZ2VzdHNpemU7IGkrKykgewotICAgICAgICBjaGFyIGM7CisgICAgICAgIHVuc2lnbmVkIGNoYXIgYzsKICAgICAgICAgYyA9IChkaWdlc3RbaV0gPj4gNCkgJiAweGY7Ci0gICAgICAgIGMgPSAoYz45KSA/IGMrJ2EnLTEwIDogYyArICcwJzsKLSAgICAgICAgaGV4X2RpZ2VzdFtqKytdID0gYzsKKyAgICAgICAgaGV4X2RpZ2VzdFtqKytdID0gUHlfaGV4ZGlnaXRzW2NdOwogICAgICAgICBjID0gKGRpZ2VzdFtpXSAmIDB4Zik7Ci0gICAgICAgIGMgPSAoYz45KSA/IGMrJ2EnLTEwIDogYyArICcwJzsKLSAgICAgICAgaGV4X2RpZ2VzdFtqKytdID0gYzsKKyAgICAgICAgaGV4X2RpZ2VzdFtqKytdID0gUHlfaGV4ZGlnaXRzW2NdOwogICAgIH0KICAgICByZXR1cm4gcmV0dmFsOwogfQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9zaWduYWxtb2R1bGUuYyBiL01vZHVsZXMvc2lnbmFsbW9kdWxlLmMKaW5kZXggMzJjZDhiYi4uMmViN2YyOSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9zaWduYWxtb2R1bGUuYworKysgYi9Nb2R1bGVzL3NpZ25hbG1vZHVsZS5jCkBAIC0yMiw2ICsyMiwxNCBAQAogI2luY2x1ZGUgPHN5cy90aW1lLmg+CiAjZW5kaWYKIAorI2lmIGRlZmluZWQoSEFWRV9QVEhSRUFEX1NJR01BU0spICYmICFkZWZpbmVkKEhBVkVfQlJPS0VOX1BUSFJFQURfU0lHTUFTSykKKyMgIGRlZmluZSBQWVBUSFJFQURfU0lHTUFTSworI2VuZGlmCisKKyNpZiBkZWZpbmVkKFBZUFRIUkVBRF9TSUdNQVNLKSAmJiBkZWZpbmVkKEhBVkVfUFRIUkVBRF9IKQorIyAgaW5jbHVkZSA8cHRocmVhZC5oPgorI2VuZGlmCisKICNpZm5kZWYgU0lHX0VSUgogI2RlZmluZSBTSUdfRVJSICgoUHlPU19zaWdoYW5kbGVyX3QpKC0xKSkKICNlbmRpZgpAQCAtMTAxLDYgKzEwOSwxMCBAQAogCiBzdGF0aWMgUHlPU19zaWdoYW5kbGVyX3Qgb2xkX3NpZ2ludGhhbmRsZXIgPSBTSUdfREZMOwogCisjaWZkZWYgTVNfV0lORE9XUworc3RhdGljIEhBTkRMRSBzaWdpbnRfZXZlbnQgPSBOVUxMOworI2VuZGlmCisKICNpZmRlZiBIQVZFX0dFVElUSU1FUgogc3RhdGljIFB5T2JqZWN0ICpJdGltZXJFcnJvcjsKIApAQCAtMTY4LDE1ICsxODAsMTkgQEAKIHN0YXRpYyB2b2lkCiB0cmlwX3NpZ25hbChpbnQgc2lnX251bSkKIHsKKyAgICB1bnNpZ25lZCBjaGFyIGJ5dGU7CisKICAgICBIYW5kbGVyc1tzaWdfbnVtXS50cmlwcGVkID0gMTsKKyAgICBpZiAod2FrZXVwX2ZkICE9IC0xKSB7CisgICAgICAgIGJ5dGUgPSAodW5zaWduZWQgY2hhcilzaWdfbnVtOworICAgICAgICB3cml0ZSh3YWtldXBfZmQsICZieXRlLCAxKTsKKyAgICB9CiAgICAgaWYgKGlzX3RyaXBwZWQpCiAgICAgICAgIHJldHVybjsKICAgICAvKiBTZXQgaXNfdHJpcHBlZCBhZnRlciBzZXR0aW5nIC50cmlwcGVkLCBhcyBpdCBnZXRzCiAgICAgICAgY2xlYXJlZCBpbiBQeUVycl9DaGVja1NpZ25hbHMoKSBiZWZvcmUgLnRyaXBwZWQuICovCiAgICAgaXNfdHJpcHBlZCA9IDE7CiAgICAgUHlfQWRkUGVuZGluZ0NhbGwoY2hlY2tzaWduYWxzX3dpdGhhcmcsIE5VTEwpOwotICAgIGlmICh3YWtldXBfZmQgIT0gLTEpCi0gICAgICAgIHdyaXRlKHdha2V1cF9mZCwgIlwwIiwgMSk7CiB9CiAKIHN0YXRpYyB2b2lkCkBAIC0yMTcsNiArMjMzLDExIEBACiAgICAgLyogSXNzdWUgIzEwMzExOiBhc3luY2hyb25vdXNseSBleGVjdXRpbmcgc2lnbmFsIGhhbmRsZXJzIHNob3VsZCBub3QKICAgICAgICBtdXRhdGUgZXJybm8gdW5kZXIgdGhlIGZlZXQgb2YgdW5zdXNwZWN0aW5nIEMgY29kZS4gKi8KICAgICBlcnJubyA9IHNhdmVfZXJybm87CisKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgaWYgKHNpZ19udW0gPT0gU0lHSU5UKQorICAgICAgICBTZXRFdmVudChzaWdpbnRfZXZlbnQpOworI2VuZGlmCiB9CiAKIApAQCAtMzEzLDcgKzMzNCw3IEBACiAgICAgZWxzZQogICAgICAgICBmdW5jID0gc2lnbmFsX2hhbmRsZXI7CiAgICAgaWYgKFB5T1Nfc2V0c2lnKHNpZ19udW0sIGZ1bmMpID09IFNJR19FUlIpIHsKLSAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX1J1bnRpbWVFcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIG9sZF9oYW5kbGVyID0gSGFuZGxlcnNbc2lnX251bV0uZnVuYzsKQEAgLTM4Miw3ICs0MDMsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgaWYgKHNpZ2ludGVycnVwdChzaWdfbnVtLCBmbGFnKTwwKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19SdW50aW1lRXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIApAQCAtNDk1LDYgKzUxNiwzNDEgQEAKIFJldHVybnMgY3VycmVudCB2YWx1ZSBvZiBnaXZlbiBpdGltZXIuIik7CiAjZW5kaWYKIAorI2lmIGRlZmluZWQoUFlQVEhSRUFEX1NJR01BU0spIHx8IGRlZmluZWQoSEFWRV9TSUdXQUlUKSB8fCBcCisgICAgICAgIGRlZmluZWQoSEFWRV9TSUdXQUlUSU5GTykgfHwgZGVmaW5lZChIQVZFX1NJR1RJTUVEV0FJVCkKKy8qIENvbnZlcnQgYW4gaXRlcmFibGUgdG8gYSBzaWdzZXQuCisgICBSZXR1cm4gMCBvbiBzdWNjZXNzLCByZXR1cm4gLTEgYW5kIHJhaXNlIGFuIGV4Y2VwdGlvbiBvbiBlcnJvci4gKi8KKworc3RhdGljIGludAoraXRlcmFibGVfdG9fc2lnc2V0KFB5T2JqZWN0ICppdGVyYWJsZSwgc2lnc2V0X3QgKm1hc2spCit7CisgICAgaW50IHJlc3VsdCA9IC0xOworICAgIFB5T2JqZWN0ICppdGVyYXRvciwgKml0ZW07CisgICAgbG9uZyBzaWdudW07CisgICAgaW50IGVycjsKKworICAgIHNpZ2VtcHR5c2V0KG1hc2spOworCisgICAgaXRlcmF0b3IgPSBQeU9iamVjdF9HZXRJdGVyKGl0ZXJhYmxlKTsKKyAgICBpZiAoaXRlcmF0b3IgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcjsKKworICAgIHdoaWxlICgxKQorICAgIHsKKyAgICAgICAgaXRlbSA9IFB5SXRlcl9OZXh0KGl0ZXJhdG9yKTsKKyAgICAgICAgaWYgKGl0ZW0gPT0gTlVMTCkgeworICAgICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorCisgICAgICAgIHNpZ251bSA9IFB5TG9uZ19Bc0xvbmcoaXRlbSk7CisgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKKyAgICAgICAgaWYgKHNpZ251bSA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgaWYgKDAgPCBzaWdudW0gJiYgc2lnbnVtIDwgTlNJRykKKyAgICAgICAgICAgIGVyciA9IHNpZ2FkZHNldChtYXNrLCAoaW50KXNpZ251bSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGVyciA9IDE7CisgICAgICAgIGlmIChlcnIpIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJzaWduYWwgbnVtYmVyICVsZCBvdXQgb2YgcmFuZ2UiLCBzaWdudW0pOworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXN1bHQgPSAwOworCitlcnJvcjoKKyAgICBQeV9YREVDUkVGKGl0ZXJhdG9yKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorI2VuZGlmCisKKyNpZiBkZWZpbmVkKFBZUFRIUkVBRF9TSUdNQVNLKSB8fCBkZWZpbmVkKEhBVkVfU0lHUEVORElORykKK3N0YXRpYyBQeU9iamVjdCoKK3NpZ3NldF90b19zZXQoc2lnc2V0X3QgbWFzaykKK3sKKyAgICBQeU9iamVjdCAqc2lnbnVtLCAqcmVzdWx0OworICAgIGludCBzaWc7CisKKyAgICByZXN1bHQgPSBQeVNldF9OZXcoMCk7CisgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGZvciAoc2lnID0gMTsgc2lnIDwgTlNJRzsgc2lnKyspIHsKKyAgICAgICAgaWYgKHNpZ2lzbWVtYmVyKCZtYXNrLCBzaWcpICE9IDEpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICAvKiBIYW5kbGUgdGhlIGNhc2Ugd2hlcmUgaXQgaXMgYSBtZW1iZXIgYnkgYWRkaW5nIHRoZSBzaWduYWwgdG8KKyAgICAgICAgICAgdGhlIHJlc3VsdCBsaXN0LiAgSWdub3JlIHRoZSBvdGhlciBjYXNlcyBiZWNhdXNlIHRoZXkgbWVhbiB0aGUKKyAgICAgICAgICAgc2lnbmFsIGlzbid0IGEgbWVtYmVyIG9mIHRoZSBtYXNrIG9yIHRoZSBzaWduYWwgd2FzIGludmFsaWQsCisgICAgICAgICAgIGFuZCBhbiBpbnZhbGlkIHNpZ25hbCBtdXN0IGhhdmUgYmVlbiBvdXIgZmF1bHQgaW4gY29uc3RydWN0aW5nCisgICAgICAgICAgIHRoZSBsb29wIGJvdW5kYXJpZXMuICovCisgICAgICAgIHNpZ251bSA9IFB5TG9uZ19Gcm9tTG9uZyhzaWcpOworICAgICAgICBpZiAoc2lnbnVtID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgaWYgKFB5U2V0X0FkZChyZXN1bHQsIHNpZ251bSkgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzaWdudW0pOworICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYoc2lnbnVtKTsKKyAgICB9CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKyNlbmRpZgorCisjaWZkZWYgUFlQVEhSRUFEX1NJR01BU0sKK3N0YXRpYyBQeU9iamVjdCAqCitzaWduYWxfcHRocmVhZF9zaWdtYXNrKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgaG93OworICAgIFB5T2JqZWN0ICpzaWduYWxzOworICAgIHNpZ3NldF90IG1hc2ssIHByZXZpb3VzOworICAgIGludCBlcnI7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlPOnB0aHJlYWRfc2lnbWFzayIsICZob3csICZzaWduYWxzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoaXRlcmFibGVfdG9fc2lnc2V0KHNpZ25hbHMsICZtYXNrKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBlcnIgPSBwdGhyZWFkX3NpZ21hc2soaG93LCAmbWFzaywgJnByZXZpb3VzKTsKKyAgICBpZiAoZXJyICE9IDApIHsKKyAgICAgICAgZXJybm8gPSBlcnI7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgLyogaWYgc2lnbmFscyB3YXMgdW5ibG9ja2VkLCBzaWduYWwgaGFuZGxlcnMgaGF2ZSBiZWVuIGNhbGxlZCAqLworICAgIGlmIChQeUVycl9DaGVja1NpZ25hbHMoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXR1cm4gc2lnc2V0X3RvX3NldChwcmV2aW91cyk7Cit9CisKK1B5RG9jX1NUUlZBUihzaWduYWxfcHRocmVhZF9zaWdtYXNrX2RvYywKKyJwdGhyZWFkX3NpZ21hc2soaG93LCBtYXNrKSAtPiBvbGQgbWFza1xuXAorXG5cCitGZXRjaCBhbmQvb3IgY2hhbmdlIHRoZSBzaWduYWwgbWFzayBvZiB0aGUgY2FsbGluZyB0aHJlYWQuIik7CisjZW5kaWYgICAvKiAjaWZkZWYgUFlQVEhSRUFEX1NJR01BU0sgKi8KKworCisjaWZkZWYgSEFWRV9TSUdQRU5ESU5HCitzdGF0aWMgUHlPYmplY3QgKgorc2lnbmFsX3NpZ3BlbmRpbmcoUHlPYmplY3QgKnNlbGYpCit7CisgICAgaW50IGVycjsKKyAgICBzaWdzZXRfdCBtYXNrOworICAgIGVyciA9IHNpZ3BlbmRpbmcoJm1hc2spOworICAgIGlmIChlcnIpCisgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgcmV0dXJuIHNpZ3NldF90b19zZXQobWFzayk7Cit9CisKK1B5RG9jX1NUUlZBUihzaWduYWxfc2lncGVuZGluZ19kb2MsCisic2lncGVuZGluZygpIC0+IGxpc3RcblwKK1xuXAorRXhhbWluZSBwZW5kaW5nIHNpZ25hbHMuIik7CisjZW5kaWYgICAvKiAjaWZkZWYgSEFWRV9TSUdQRU5ESU5HICovCisKKworI2lmZGVmIEhBVkVfU0lHV0FJVAorc3RhdGljIFB5T2JqZWN0ICoKK3NpZ25hbF9zaWd3YWl0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqc2lnbmFsczsKKyAgICBzaWdzZXRfdCBzZXQ7CisgICAgaW50IGVyciwgc2lnbnVtOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPOnNpZ3dhaXQiLCAmc2lnbmFscykpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKGl0ZXJhYmxlX3RvX3NpZ3NldChzaWduYWxzLCAmc2V0KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgZXJyID0gc2lnd2FpdCgmc2V0LCAmc2lnbnVtKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIGlmIChlcnIpIHsKKyAgICAgICAgZXJybm8gPSBlcnI7CisgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgfQorCisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhzaWdudW0pOworfQorCitQeURvY19TVFJWQVIoc2lnbmFsX3NpZ3dhaXRfZG9jLAorInNpZ3dhaXQoc2lnc2V0KSAtPiBzaWdudW1cblwKK1xuXAorV2FpdCBhIHNpZ25hbC4iKTsKKyNlbmRpZiAgIC8qICNpZmRlZiBIQVZFX1NJR1BFTkRJTkcgKi8KKworI2lmIGRlZmluZWQoSEFWRV9TSUdXQUlUSU5GTykgfHwgZGVmaW5lZChIQVZFX1NJR1RJTUVEV0FJVCkKK3N0YXRpYyBpbnQgaW5pdGlhbGl6ZWQ7CitzdGF0aWMgUHlTdHJ1Y3RTZXF1ZW5jZV9GaWVsZCBzdHJ1Y3Rfc2lnaW5mb19maWVsZHNbXSA9IHsKKyAgICB7InNpX3NpZ25vIiwgICAgICAgICJzaWduYWwgbnVtYmVyIn0sCisgICAgeyJzaV9jb2RlIiwgICAgICAgICAic2lnbmFsIGNvZGUifSwKKyAgICB7InNpX2Vycm5vIiwgICAgICAgICJlcnJubyBhc3NvY2lhdGVkIHdpdGggdGhpcyBzaWduYWwifSwKKyAgICB7InNpX3BpZCIsICAgICAgICAgICJzZW5kaW5nIHByb2Nlc3MgSUQifSwKKyAgICB7InNpX3VpZCIsICAgICAgICAgICJyZWFsIHVzZXIgSUQgb2Ygc2VuZGluZyBwcm9jZXNzIn0sCisgICAgeyJzaV9zdGF0dXMiLCAgICAgICAiZXhpdCB2YWx1ZSBvciBzaWduYWwifSwKKyAgICB7InNpX2JhbmQiLCAgICAgICAgICJiYW5kIGV2ZW50IGZvciBTSUdQT0xMIn0sCisgICAgezB9Cit9OworCitQeURvY19TVFJWQVIoc3RydWN0X3NpZ2luZm9fX2RvY19fLAorInN0cnVjdF9zaWdpbmZvOiBSZXN1bHQgZnJvbSBzaWd3YWl0aW5mbyBvciBzaWd0aW1lZHdhaXQuXG5cblwKK1RoaXMgb2JqZWN0IG1heSBiZSBhY2Nlc3NlZCBlaXRoZXIgYXMgYSB0dXBsZSBvZlxuXAorKHNpX3NpZ25vLCBzaV9jb2RlLCBzaV9lcnJubywgc2lfcGlkLCBzaV91aWQsIHNpX3N0YXR1cywgc2lfYmFuZCksXG5cCitvciB2aWEgdGhlIGF0dHJpYnV0ZXMgc2lfc2lnbm8sIHNpX2NvZGUsIGFuZCBzbyBvbi4iKTsKKworc3RhdGljIFB5U3RydWN0U2VxdWVuY2VfRGVzYyBzdHJ1Y3Rfc2lnaW5mb19kZXNjID0geworICAgICJzaWduYWwuc3RydWN0X3NpZ2luZm8iLCAgICAgICAgICAgLyogbmFtZSAqLworICAgIHN0cnVjdF9zaWdpbmZvX19kb2NfXywgICAgICAgLyogZG9jICovCisgICAgc3RydWN0X3NpZ2luZm9fZmllbGRzLCAgICAgICAvKiBmaWVsZHMgKi8KKyAgICA3ICAgICAgICAgIC8qIG5faW5fc2VxdWVuY2UgKi8KK307CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgU2lnaW5mb1R5cGU7CisKK3N0YXRpYyBQeU9iamVjdCAqCitmaWxsX3NpZ2luZm8oc2lnaW5mb190ICpzaSkKK3sKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gUHlTdHJ1Y3RTZXF1ZW5jZV9OZXcoJlNpZ2luZm9UeXBlKTsKKyAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHJlc3VsdCwgMCwgUHlMb25nX0Zyb21Mb25nKChsb25nKShzaS0+c2lfc2lnbm8pKSk7CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXN1bHQsIDEsIFB5TG9uZ19Gcm9tTG9uZygobG9uZykoc2ktPnNpX2NvZGUpKSk7CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXN1bHQsIDIsIFB5TG9uZ19Gcm9tTG9uZygobG9uZykoc2ktPnNpX2Vycm5vKSkpOworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0ocmVzdWx0LCAzLCBQeUxvbmdfRnJvbVBpZChzaS0+c2lfcGlkKSk7CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXN1bHQsIDQsIFB5TG9uZ19Gcm9tTG9uZygobG9uZykoc2ktPnNpX3VpZCkpKTsKKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHJlc3VsdCwgNSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlMb25nX0Zyb21Mb25nKChsb25nKShzaS0+c2lfc3RhdHVzKSkpOworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0ocmVzdWx0LCA2LCBQeUxvbmdfRnJvbUxvbmcoc2ktPnNpX2JhbmQpKTsKKyAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkgeworICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgcmV0dXJuIHJlc3VsdDsKK30KKyNlbmRpZgorCisjaWZkZWYgSEFWRV9TSUdXQUlUSU5GTworc3RhdGljIFB5T2JqZWN0ICoKK3NpZ25hbF9zaWd3YWl0aW5mbyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnNpZ25hbHM7CisgICAgc2lnc2V0X3Qgc2V0OworICAgIHNpZ2luZm9fdCBzaTsKKyAgICBpbnQgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPOnNpZ3dhaXRpbmZvIiwgJnNpZ25hbHMpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChpdGVyYWJsZV90b19zaWdzZXQoc2lnbmFscywgJnNldCkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIGVyciA9IHNpZ3dhaXRpbmZvKCZzZXQsICZzaSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAoZXJyID09IC0xKQorICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworCisgICAgcmV0dXJuIGZpbGxfc2lnaW5mbygmc2kpOworfQorCitQeURvY19TVFJWQVIoc2lnbmFsX3NpZ3dhaXRpbmZvX2RvYywKKyJzaWd3YWl0aW5mbyhzaWdzZXQpIC0+IHN0cnVjdF9zaWdpbmZvXG5cCitcblwKK1dhaXQgc3luY2hyb25vdXNseSBmb3IgYSBzaWduYWwgdW50aWwgb25lIG9mIHRoZSBzaWduYWxzIGluICpzaWdzZXQqIGlzXG5cCitkZWxpdmVyZWQuXG5cCitSZXR1cm5zIGEgc3RydWN0X3NpZ2luZm8gY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc2lnbmFsLiIpOworI2VuZGlmICAgLyogI2lmZGVmIEhBVkVfU0lHV0FJVElORk8gKi8KKworI2lmZGVmIEhBVkVfU0lHVElNRURXQUlUCitzdGF0aWMgUHlPYmplY3QgKgorc2lnbmFsX3NpZ3RpbWVkd2FpdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnNpZ25hbHMsICp0aW1lb3V0OworICAgIHN0cnVjdCB0aW1lc3BlYyBidWY7CisgICAgc2lnc2V0X3Qgc2V0OworICAgIHNpZ2luZm9fdCBzaTsKKyAgICBpbnQgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPTzpzaWd0aW1lZHdhaXQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmc2lnbmFscywgJnRpbWVvdXQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChfUHlUaW1lX09iamVjdFRvVGltZXNwZWModGltZW91dCwgJmJ1Zi50dl9zZWMsICZidWYudHZfbnNlYykgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKGJ1Zi50dl9zZWMgPCAwIHx8IGJ1Zi50dl9uc2VjIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInRpbWVvdXQgbXVzdCBiZSBub24tbmVnYXRpdmUiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKGl0ZXJhYmxlX3RvX3NpZ3NldChzaWduYWxzLCAmc2V0KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgZXJyID0gc2lndGltZWR3YWl0KCZzZXQsICZzaSwgJmJ1Zik7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAoZXJyID09IC0xKSB7CisgICAgICAgIGlmIChlcnJubyA9PSBFQUdBSU4pCisgICAgICAgICAgICBQeV9SRVRVUk5fTk9ORTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKKyAgICB9CisKKyAgICByZXR1cm4gZmlsbF9zaWdpbmZvKCZzaSk7Cit9CisKK1B5RG9jX1NUUlZBUihzaWduYWxfc2lndGltZWR3YWl0X2RvYywKKyJzaWd0aW1lZHdhaXQoc2lnc2V0LCAodGltZW91dF9zZWMsIHRpbWVvdXRfbnNlYykpIC0+IHN0cnVjdF9zaWdpbmZvXG5cCitcblwKK0xpa2Ugc2lnd2FpdGluZm8oKSwgYnV0IHdpdGggYSB0aW1lb3V0IHNwZWNpZmllZCBhcyBhIHR1cGxlIG9mIChzZWNvbmRzLFxuXAorbmFub3NlY29uZHMpLiIpOworI2VuZGlmICAgLyogI2lmZGVmIEhBVkVfU0lHVElNRURXQUlUICovCisKKworI2lmIGRlZmluZWQoSEFWRV9QVEhSRUFEX0tJTEwpICYmIGRlZmluZWQoV0lUSF9USFJFQUQpCitzdGF0aWMgUHlPYmplY3QgKgorc2lnbmFsX3B0aHJlYWRfa2lsbChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgbG9uZyB0aWQ7CisgICAgaW50IHNpZ251bTsKKyAgICBpbnQgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJsaTpwdGhyZWFkX2tpbGwiLCAmdGlkLCAmc2lnbnVtKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBlcnIgPSBwdGhyZWFkX2tpbGwoKHB0aHJlYWRfdCl0aWQsIHNpZ251bSk7CisgICAgaWYgKGVyciAhPSAwKSB7CisgICAgICAgIGVycm5vID0gZXJyOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIC8qIHRoZSBzaWduYWwgbWF5IGhhdmUgYmVlbiBzZW5kIHRvIHRoZSBjdXJyZW50IHRocmVhZCAqLworICAgIGlmIChQeUVycl9DaGVja1NpZ25hbHMoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKHNpZ25hbF9wdGhyZWFkX2tpbGxfZG9jLAorInB0aHJlYWRfa2lsbCh0aHJlYWRfaWQsIHNpZ251bSlcblwKK1xuXAorU2VuZCBhIHNpZ25hbCB0byBhIHRocmVhZC4iKTsKKyNlbmRpZiAgIC8qICNpZiBkZWZpbmVkKEhBVkVfUFRIUkVBRF9LSUxMKSAmJiBkZWZpbmVkKFdJVEhfVEhSRUFEKSAqLworCisKIAogLyogTGlzdCBvZiBmdW5jdGlvbnMgZGVmaW5lZCBpbiB0aGUgbW9kdWxlICovCiBzdGF0aWMgUHlNZXRob2REZWYgc2lnbmFsX21ldGhvZHNbXSA9IHsKQEAgLTUxNSwxMCArODcxLDM0IEBACiAjZW5kaWYKICNpZmRlZiBIQVZFX1BBVVNFCiAgICAgeyJwYXVzZSIsICAgICAgICAgICAgICAgICAgIChQeUNGdW5jdGlvbilzaWduYWxfcGF1c2UsCi0gICAgIE1FVEhfTk9BUkdTLHBhdXNlX2RvY30sCisgICAgIE1FVEhfTk9BUkdTLCBwYXVzZV9kb2N9LAogI2VuZGlmCiAgICAgeyJkZWZhdWx0X2ludF9oYW5kbGVyIiwgc2lnbmFsX2RlZmF1bHRfaW50X2hhbmRsZXIsCiAgICAgIE1FVEhfVkFSQVJHUywgZGVmYXVsdF9pbnRfaGFuZGxlcl9kb2N9LAorI2lmIGRlZmluZWQoSEFWRV9QVEhSRUFEX0tJTEwpICYmIGRlZmluZWQoV0lUSF9USFJFQUQpCisgICAgeyJwdGhyZWFkX2tpbGwiLCAgICAgICAgICAgIChQeUNGdW5jdGlvbilzaWduYWxfcHRocmVhZF9raWxsLAorICAgICBNRVRIX1ZBUkFSR1MsIHNpZ25hbF9wdGhyZWFkX2tpbGxfZG9jfSwKKyNlbmRpZgorI2lmZGVmIFBZUFRIUkVBRF9TSUdNQVNLCisgICAgeyJwdGhyZWFkX3NpZ21hc2siLCAgICAgICAgIChQeUNGdW5jdGlvbilzaWduYWxfcHRocmVhZF9zaWdtYXNrLAorICAgICBNRVRIX1ZBUkFSR1MsIHNpZ25hbF9wdGhyZWFkX3NpZ21hc2tfZG9jfSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfU0lHUEVORElORworICAgIHsic2lncGVuZGluZyIsICAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pc2lnbmFsX3NpZ3BlbmRpbmcsCisgICAgIE1FVEhfTk9BUkdTLCBzaWduYWxfc2lncGVuZGluZ19kb2N9LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TSUdXQUlUCisgICAgeyJzaWd3YWl0IiwgICAgICAgICAgICAgICAgIChQeUNGdW5jdGlvbilzaWduYWxfc2lnd2FpdCwKKyAgICAgTUVUSF9WQVJBUkdTLCBzaWduYWxfc2lnd2FpdF9kb2N9LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TSUdXQUlUSU5GTworICAgIHsic2lnd2FpdGluZm8iLCAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pc2lnbmFsX3NpZ3dhaXRpbmZvLAorICAgICBNRVRIX1ZBUkFSR1MsIHNpZ25hbF9zaWd3YWl0aW5mb19kb2N9LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TSUdUSU1FRFdBSVQKKyAgICB7InNpZ3RpbWVkd2FpdCIsICAgICAgICAgICAgKFB5Q0Z1bmN0aW9uKXNpZ25hbF9zaWd0aW1lZHdhaXQsCisgICAgIE1FVEhfVkFSQVJHUywgc2lnbmFsX3NpZ3RpbWVkd2FpdF9kb2N9LAorI2VuZGlmCiAgICAge05VTEwsICAgICAgICAgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAvKiBzZW50aW5lbCAqLwogfTsKIApAQCAtNTg3LDYgKzk2NywxNSBAQAogICAgIGlmIChtID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCisjaWYgZGVmaW5lZChIQVZFX1NJR1dBSVRJTkZPKSB8fCBkZWZpbmVkKEhBVkVfU0lHVElNRURXQUlUKQorICAgIGlmICghaW5pdGlhbGl6ZWQpCisgICAgICAgIFB5U3RydWN0U2VxdWVuY2VfSW5pdFR5cGUoJlNpZ2luZm9UeXBlLCAmc3RydWN0X3NpZ2luZm9fZGVzYyk7CisKKyAgICBQeV9JTkNSRUYoKFB5T2JqZWN0KikgJlNpZ2luZm9UeXBlKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgInN0cnVjdF9zaWdpbmZvIiwgKFB5T2JqZWN0KikgJlNpZ2luZm9UeXBlKTsKKyAgICBpbml0aWFsaXplZCA9IDE7CisjZW5kaWYKKwogICAgIC8qIEFkZCBzb21lIHN5bWJvbGljIGNvbnN0YW50cyB0byB0aGUgbW9kdWxlICovCiAgICAgZCA9IFB5TW9kdWxlX0dldERpY3QobSk7CiAKQEAgLTYwMyw2ICs5OTIsMTkgQEAKICAgICAgICAgZ290byBmaW5hbGx5OwogICAgIFB5X0RFQ1JFRih4KTsKIAorI2lmZGVmIFNJR19CTE9DSworICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhtLCBTSUdfQkxPQ0spKQorICAgICAgICAgZ290byBmaW5hbGx5OworI2VuZGlmCisjaWZkZWYgU0lHX1VOQkxPQ0sKKyAgICBpZiAoUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgU0lHX1VOQkxPQ0spKQorICAgICAgICAgZ290byBmaW5hbGx5OworI2VuZGlmCisjaWZkZWYgU0lHX1NFVE1BU0sKKyAgICBpZiAoUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgU0lHX1NFVE1BU0spKQorICAgICAgICAgZ290byBmaW5hbGx5OworI2VuZGlmCisKICAgICB4ID0gSW50SGFuZGxlciA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKGQsICJkZWZhdWx0X2ludF9oYW5kbGVyIik7CiAgICAgaWYgKCF4KQogICAgICAgICBnb3RvIGZpbmFsbHk7CkBAIC04NTUsNiArMTI1NywxMSBAQAogICAgIFB5X0RFQ1JFRih4KTsKICNlbmRpZgogCisjaWZkZWYgTVNfV0lORE9XUworICAgIC8qIENyZWF0ZSBtYW51YWwtcmVzZXQgZXZlbnQsIGluaXRpYWxseSB1bnNldCAqLworICAgIHNpZ2ludF9ldmVudCA9IENyZWF0ZUV2ZW50KE5VTEwsIFRSVUUsIEZBTFNFLCBGQUxTRSk7CisjZW5kaWYKKwogICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKSB7CiAgICAgICAgIFB5X0RFQ1JFRihtKTsKICAgICAgICAgbSA9IE5VTEw7CkBAIC0xMDAxLDMgKzE0MDgsMjUgQEAKICAgICBfUHlJbXBvcnRfUmVJbml0TG9jaygpOwogI2VuZGlmCiB9CisKK2ludAorX1B5T1NfSXNNYWluVGhyZWFkKHZvaWQpCit7CisjaWZkZWYgV0lUSF9USFJFQUQKKyAgICByZXR1cm4gUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpID09IG1haW5fdGhyZWFkOworI2Vsc2UKKyAgICByZXR1cm4gMTsKKyNlbmRpZgorfQorCisjaWZkZWYgTVNfV0lORE9XUwordm9pZCAqX1B5T1NfU2lnaW50RXZlbnQodm9pZCkKK3sKKyAgICAvKiBSZXR1cm5zIGEgbWFudWFsLXJlc2V0IGV2ZW50IHdoaWNoIGdldHMgdHJpcHBlZCB3aGVuZXZlcgorICAgICAgIFNJR0lOVCBpcyByZWNlaXZlZC4KKworICAgICAgIFB5dGhvbi5oIGRvZXMgbm90IGluY2x1ZGUgd2luZG93cy5oIHNvIHdlIGRvIGNhbm5vdCB1c2UgSEFORExFCisgICAgICAgYXMgdGhlIHJldHVybiB0eXBlIG9mIHRoaXMgZnVuY3Rpb24uICBXZSB1c2Ugdm9pZCogaW5zdGVhZC4gKi8KKyAgICByZXR1cm4gc2lnaW50X2V2ZW50OworfQorI2VuZGlmCmRpZmYgLS1naXQgYS9Nb2R1bGVzL3NvY2tldG1vZHVsZS5jIGIvTW9kdWxlcy9zb2NrZXRtb2R1bGUuYwppbmRleCAzMjAyMjdmLi5kZjFjOWY5IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3NvY2tldG1vZHVsZS5jCisrKyBiL01vZHVsZXMvc29ja2V0bW9kdWxlLmMKQEAgLTQyLDYgKzQyLDkgQEAKIC0gc29ja2V0LmluZXRfbnRvYShwYWNrZWQgSVApIC0+IElQIGFkZHJlc3Mgc3RyaW5nCiAtIHNvY2tldC5nZXRkZWZhdWx0dGltZW91dCgpIC0+IE5vbmUgfCBmbG9hdAogLSBzb2NrZXQuc2V0ZGVmYXVsdHRpbWVvdXQoTm9uZSB8IGZsb2F0KQorLSBzb2NrZXQuaWZfbmFtZWluZGV4KCkgLT4gbGlzdCBvZiB0dXBsZXMgKGlmX2luZGV4LCBpZl9uYW1lKQorLSBzb2NrZXQuaWZfbmFtZXRvaW5kZXgobmFtZSkgLT4gY29ycmVzcG9uZGluZyBpbnRlcmZhY2UgaW5kZXgKKy0gc29ja2V0LmlmX2luZGV4dG9uYW1lKGluZGV4KSAtPiBjb3JyZXNwb25kaW5nIGludGVyZmFjZSBuYW1lCiAtIGFuIEludGVybmV0IHNvY2tldCBhZGRyZXNzIGlzIGEgcGFpciAoaG9zdG5hbWUsIHBvcnQpCiAgIHdoZXJlIGhvc3RuYW1lIGNhbiBiZSBhbnl0aGluZyByZWNvZ25pemVkIGJ5IGdldGhvc3RieW5hbWUoKQogICAoaW5jbHVkaW5nIHRoZSBkZC5kZC5kZC5kZCBub3RhdGlvbikgYW5kIHBvcnQgaXMgaW4gaG9zdCBieXRlIG9yZGVyCkBAIC0xMzMsNiArMTM2LDkgQEAKIHNldHNvY2tvcHQobGV2ZWwsIG9wdG5hbWUsIHZhbHVlKSAtLSBzZXQgc29ja2V0IG9wdGlvbnNcblwKIHNldHRpbWVvdXQoTm9uZSB8IGZsb2F0KSAtLSBzZXQgb3IgY2xlYXIgdGhlIHRpbWVvdXRcblwKIHNodXRkb3duKGhvdykgLS0gc2h1dCBkb3duIHRyYWZmaWMgaW4gb25lIG9yIGJvdGggZGlyZWN0aW9uc1xuXAoraWZfbmFtZWluZGV4KCkgLS0gcmV0dXJuIGFsbCBuZXR3b3JrIGludGVyZmFjZSBpbmRpY2VzIGFuZCBuYW1lc1xuXAoraWZfbmFtZXRvaW5kZXgobmFtZSkgLS0gcmV0dXJuIHRoZSBjb3JyZXNwb25kaW5nIGludGVyZmFjZSBpbmRleFxuXAoraWZfaW5kZXh0b25hbWUoaW5kZXgpIC0tIHJldHVybiB0aGUgY29ycmVzcG9uZGluZyBpbnRlcmZhY2UgbmFtZVxuXAogXG5cCiAgWypdIG5vdCBhdmFpbGFibGUgb24gYWxsIHBsYXRmb3JtcyEiKTsKIApAQCAtMTUwLDEyICsxNTYsMTYgQEAKICMgdW5kZWYgSEFWRV9HRVRIT1NUQllOQU1FX1JfNl9BUkcKICNlbmRpZgogCisjaWYgZGVmaW5lZChfX09wZW5CU0RfXykKKyMgaW5jbHVkZSA8c3lzL3Vpby5oPgorI2VuZGlmCisKICNpZm5kZWYgV0lUSF9USFJFQUQKICMgdW5kZWYgSEFWRV9HRVRIT1NUQllOQU1FX1IKICNlbmRpZgogCiAjaWZkZWYgSEFWRV9HRVRIT1NUQllOQU1FX1IKLSMgaWYgZGVmaW5lZChfQUlYKSB8fCBkZWZpbmVkKF9fb3NmX18pCisjIGlmIGRlZmluZWQoX0FJWCkKICMgIGRlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUVfUl8zX0FSRwogIyBlbGlmIGRlZmluZWQoX19zdW4pIHx8IGRlZmluZWQoX19zZ2kpCiAjICBkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FX1JfNV9BUkcKQEAgLTIwOCw2ICsyMTgsMTEgQEAKICMgIGluY2x1ZGUgPGlvY3RsLmg+CiAjZW5kaWYKIAorI2lmZGVmIF9fQVBQTEVfXworIyBpbmNsdWRlIDxzeXMvaW9jdGwuaD4KKyNlbmRpZgorCisKICNpZiBkZWZpbmVkKFBZT1NfT1MyKQogIyBkZWZpbmUgIElOQ0xfRE9TCiAjIGRlZmluZSAgSU5DTF9ET1NFUlJPUlMKQEAgLTI1MCw2ICsyNjUsMTQgQEAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNlbmRpZgogCisjaWZkZWYgSEFWRV9TWVNfU09DS0VUX0gKKyNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CisjZW5kaWYKKworI2lmZGVmIEhBVkVfTkVUX0lGX0gKKyNpbmNsdWRlIDxuZXQvaWYuaD4KKyNlbmRpZgorCiAvKiBHZW5lcmljIHNvY2tldCBvYmplY3QgZGVmaW5pdGlvbnMgYW5kIGluY2x1ZGVzICovCiAjZGVmaW5lIFB5U29ja2V0X0JVSUxESU5HX1NPQ0tFVAogI2luY2x1ZGUgInNvY2tldG1vZHVsZS5oIgpAQCAtMjYwLDYgKzI4Myw3IEBACiAKIC8qIE5vbi1NUyBXSU5ET1dTIGluY2x1ZGVzICovCiAjIGluY2x1ZGUgPG5ldGRiLmg+CisjIGluY2x1ZGUgPHVuaXN0ZC5oPgogCiAvKiBIZWFkZXJzIG5lZWRlZCBmb3IgaW5ldF9udG9hKCkgYW5kIGluZXRfYWRkcigpICovCiAjIGlmIGRlZmluZWQoUFlPU19PUzIpICYmIGRlZmluZWQoUFlDQ19WQUNQUCkKQEAgLTQxNyw3ICs0NDEsOCBAQAogI2RlZmluZSBTRUdNRU5UX1NJWkUgKDMyICogMTAyNCAtMSkKICNlbmRpZgogCi0jZGVmaW5lIFNBUzJTQSh4KSAgICAgICAoKHN0cnVjdCBzb2NrYWRkciAqKSh4KSkKKy8qIENvbnZlcnQgInNvY2tfYWRkcl90ICoiIHRvICJzdHJ1Y3Qgc29ja2FkZHIgKiIuICovCisjZGVmaW5lIFNBUzJTQSh4KSAgICAgICAoJigoeCktPnNhKSkKIAogLyoKICAqIENvbnN0YW50cyBmb3IgZ2V0bmFtZWluZm8oKQpAQCAtNDM4LDcgKzQ2Myw2IEBACiAKIC8qIEdsb2JhbCB2YXJpYWJsZSBob2xkaW5nIHRoZSBleGNlcHRpb24gdHlwZSBmb3IgZXJyb3JzIGRldGVjdGVkCiAgICBieSB0aGlzIG1vZHVsZSAoYnV0IG5vdCBhcmd1bWVudCB0eXBlIG9yIG1lbW9yeSBlcnJvcnMsIGV0Yy4pLiAqLwotc3RhdGljIFB5T2JqZWN0ICpzb2NrZXRfZXJyb3I7CiBzdGF0aWMgUHlPYmplY3QgKnNvY2tldF9oZXJyb3I7CiBzdGF0aWMgUHlPYmplY3QgKnNvY2tldF9nYWllcnJvcjsKIHN0YXRpYyBQeU9iamVjdCAqc29ja2V0X3RpbWVvdXQ7CkBAIC00NTUsNiArNDc5LDE3IEBACiAjaW5jbHVkZSA8c3lzL3BvbGwuaD4KICNlbmRpZgogCisvKiBMYXJnZXN0IHZhbHVlIHRvIHRyeSB0byBzdG9yZSBpbiBhIHNvY2tsZW5fdCAodXNlZCB3aGVuIGhhbmRsaW5nCisgICBhbmNpbGxhcnkgZGF0YSkuICBQT1NJWCByZXF1aXJlcyBzb2NrbGVuX3QgdG8gaG9sZCBhdCBsZWFzdAorICAgKDIqKjMxKS0xIGFuZCByZWNvbW1lbmRzIGFnYWluc3Qgc3RvcmluZyBsYXJnZXIgdmFsdWVzLCBidXQKKyAgIHNvY2tsZW5fdCB3YXMgb3JpZ2luYWxseSBpbnQgaW4gdGhlIEJTRCBpbnRlcmZhY2UsIHNvIHRvIGJlIG9uIHRoZQorICAgc2FmZSBzaWRlIHdlIHVzZSB0aGUgc21hbGxlciBvZiAoMioqMzEpLTEgYW5kIElOVF9NQVguICovCisjaWYgSU5UX01BWCA+IDB4N2ZmZmZmZmYKKyNkZWZpbmUgU09DS0xFTl9UX0xJTUlUIDB4N2ZmZmZmZmYKKyNlbHNlCisjZGVmaW5lIFNPQ0tMRU5fVF9MSU1JVCBJTlRfTUFYCisjZW5kaWYKKwogI2lmZGVmIEhBVkVfUE9MTAogLyogSW5zdGVhZCBvZiBzZWxlY3QoKSwgd2UnbGwgdXNlIHBvbGwoKSBzaW5jZSBwb2xsKCkgd29ya3Mgb24gYW55IGZkLiAqLwogI2RlZmluZSBJU19TRUxFQ1RBQkxFKHMpIDEKQEAgLTQ2OCw3ICs1MDMsNyBAQAogc3RhdGljIFB5T2JqZWN0Kgogc2VsZWN0X2Vycm9yKHZvaWQpCiB7Ci0gICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgInVuYWJsZSB0byBzZWxlY3Qgb24gc29ja2V0Iik7CisgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJ1bmFibGUgdG8gc2VsZWN0IG9uIHNvY2tldCIpOwogICAgIHJldHVybiBOVUxMOwogfQogCkBAIC00OTUsNyArNTMwLDcgQEAKICAgICAgICByZWNvZ25pemVzIHRoZSBlcnJvciBjb2RlcyB1c2VkIGJ5IGJvdGggR2V0TGFzdEVycm9yKCkgYW5kCiAgICAgICAgV1NBR2V0TGFzdEVycm9yICovCiAgICAgaWYgKGVycl9ubykKLSAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKHNvY2tldF9lcnJvciwgZXJyX25vKTsKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX09TRXJyb3IsIGVycl9ubyk7CiAjZW5kaWYKIAogI2lmIGRlZmluZWQoUFlPU19PUzIpICYmICFkZWZpbmVkKFBZQ0NfR0NDKQpAQCAtNTI2LDcgKzU2MSw3IEBACiAgICAgICAgICAgICB9CiAgICAgICAgICAgICB2ID0gUHlfQnVpbGRWYWx1ZSgiKGlzKSIsIG15ZXJyb3Jjb2RlLCBvdXRidWYpOwogICAgICAgICAgICAgaWYgKHYgIT0gTlVMTCkgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldE9iamVjdChzb2NrZXRfZXJyb3IsIHYpOworICAgICAgICAgICAgICAgIFB5RXJyX1NldE9iamVjdChQeUV4Y19PU0Vycm9yLCB2KTsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTUzNCw3ICs1NjksNyBAQAogICAgIH0KICNlbmRpZgogCi0gICAgcmV0dXJuIFB5RXJyX1NldEZyb21FcnJubyhzb2NrZXRfZXJyb3IpOworICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiB9CiAKIApAQCAtODUzLDEzICs4ODgsMTMgQEAKICNlbmRpZgogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgZnJlZWFkZHJpbmZvKHJlcyk7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAgICAgInVuc3VwcG9ydGVkIGFkZHJlc3MgZmFtaWx5Iik7CiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIH0KICAgICAgICAgaWYgKHJlcy0+YWlfbmV4dCkgewogICAgICAgICAgICAgZnJlZWFkZHJpbmZvKHJlcyk7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAgICAgIndpbGRjYXJkIHJlc29sdmVkIHRvIG11bHRpcGxlIGFkZHJlc3MiKTsKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgfQpAQCAtODcyLDcgKzkwNyw3IEBACiAgICAgaWYgKG5hbWVbMF0gPT0gJzwnICYmIHN0cmNtcChuYW1lLCAiPGJyb2FkY2FzdD4iKSA9PSAwKSB7CiAgICAgICAgIHN0cnVjdCBzb2NrYWRkcl9pbiAqc2luOwogICAgICAgICBpZiAoYWYgIT0gQUZfSU5FVCAmJiBhZiAhPSBBRl9VTlNQRUMpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICAgICAiYWRkcmVzcyBmYW1pbHkgbWlzbWF0Y2hlZCIpOwogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICB9CkBAIC05MzAsNyArOTY1LDcgQEAKICAgICAgICAgcmV0dXJuIDE2OwogI2VuZGlmCiAgICAgZGVmYXVsdDoKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgInVua25vd24gYWRkcmVzcyBmYW1pbHkiKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJ1bmtub3duIGFkZHJlc3MgZmFtaWx5Iik7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiB9CkBAIC05NzksNyArMTAxNCw3IEBACiAgICAgICAgIGJkYWRkci0+Yls1XSA9IGI1OwogICAgICAgICByZXR1cm4gNjsKICAgICB9IGVsc2UgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiYmFkIGJsdWV0b290aCBhZGRyZXNzIik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAiYmFkIGJsdWV0b290aCBhZGRyZXNzIik7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiB9CkBAIC0xMDQ0LDcgKzEwNzksNyBAQAogI2VuZGlmIC8qIGxpbnV4ICovCiAgICAgICAgIHsKICAgICAgICAgICAgIC8qIHJlZ3VsYXIgTlVMTC10ZXJtaW5hdGVkIHN0cmluZyAqLwotICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKGEtPnN1bl9wYXRoKTsKKyAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGEtPnN1bl9wYXRoKTsKICAgICAgICAgfQogICAgIH0KICNlbmRpZiAvKiBBRl9VTklYICovCkBAIC0xMTkwLDYgKzEyMjUsNDIgQEAKICAgICB9CiAjZW5kaWYKIAorI2lmZGVmIEFGX0NBTgorICAgIGNhc2UgQUZfQ0FOOgorICAgIHsKKyAgICAgICAgc3RydWN0IHNvY2thZGRyX2NhbiAqYSA9IChzdHJ1Y3Qgc29ja2FkZHJfY2FuICopYWRkcjsKKyAgICAgICAgY2hhciAqaWZuYW1lID0gIiI7CisgICAgICAgIHN0cnVjdCBpZnJlcSBpZnI7CisgICAgICAgIC8qIG5lZWQgdG8gbG9vayB1cCBpbnRlcmZhY2UgbmFtZSBnaXZlbiBpbmRleCAqLworICAgICAgICBpZiAoYS0+Y2FuX2lmaW5kZXgpIHsKKyAgICAgICAgICAgIGlmci5pZnJfaWZpbmRleCA9IGEtPmNhbl9pZmluZGV4OworICAgICAgICAgICAgaWYgKGlvY3RsKHNvY2tmZCwgU0lPQ0dJRk5BTUUsICZpZnIpID09IDApCisgICAgICAgICAgICAgICAgaWZuYW1lID0gaWZyLmlmcl9uYW1lOworICAgICAgICB9CisKKyAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIk8maCIsIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhLT5jYW5fZmFtaWx5KTsKKyAgICB9CisjZW5kaWYKKworI2lmZGVmIFBGX1NZU1RFTQorICAgIGNhc2UgUEZfU1lTVEVNOgorICAgICAgICBzd2l0Y2gocHJvdG8pIHsKKyNpZmRlZiBTWVNQUk9UT19DT05UUk9MCisgICAgICAgIGNhc2UgU1lTUFJPVE9fQ09OVFJPTDoKKyAgICAgICAgeworICAgICAgICAgICAgc3RydWN0IHNvY2thZGRyX2N0bCAqYSA9IChzdHJ1Y3Qgc29ja2FkZHJfY3RsICopYWRkcjsKKyAgICAgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoSUkpIiwgYS0+c2NfaWQsIGEtPnNjX3VuaXQpOworICAgICAgICB9CisjZW5kaWYKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJbnZhbGlkIGFkZHJlc3MgdHlwZSIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyNlbmRpZgorCiAgICAgLyogTW9yZSBjYXNlcyBoZXJlLi4uICovCiAKICAgICBkZWZhdWx0OgpAQCAtMTIyMSwxNyArMTI5MiwyNyBAQAogICAgICAgICBzdHJ1Y3Qgc29ja2FkZHJfdW4qIGFkZHI7CiAgICAgICAgIGNoYXIgKnBhdGg7CiAgICAgICAgIGludCBsZW47Ci0gICAgICAgIGlmICghUHlBcmdfUGFyc2UoYXJncywgInMjIiwgJnBhdGgsICZsZW4pKQotICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGludCByZXR2YWwgPSAwOworCisgICAgICAgIC8qIFBFUCAzODMuICBOb3QgdXNpbmcgUHlVbmljb2RlX0ZTQ29udmVydGVyIHNpbmNlIHdlIG5lZWQgdG8KKyAgICAgICAgICAgYWxsb3cgZW1iZWRkZWQgbnVsbHMgb24gTGludXguICovCisgICAgICAgIGlmIChQeVVuaWNvZGVfQ2hlY2soYXJncykpIHsKKyAgICAgICAgICAgIGlmICgoYXJncyA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQoYXJncykpID09IE5VTEwpCisgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICAgICAgUHlfSU5DUkVGKGFyZ3MpOworICAgICAgICBpZiAoIVB5QXJnX1BhcnNlKGFyZ3MsICJ5IyIsICZwYXRoLCAmbGVuKSkKKyAgICAgICAgICAgIGdvdG8gdW5peF9vdXQ7CiAKICAgICAgICAgYWRkciA9IChzdHJ1Y3Qgc29ja2FkZHJfdW4qKWFkZHJfcmV0OwogI2lmZGVmIGxpbnV4CiAgICAgICAgIGlmIChsZW4gPiAwICYmIHBhdGhbMF0gPT0gMCkgewogICAgICAgICAgICAgLyogTGludXggYWJzdHJhY3QgbmFtZXNwYWNlIGV4dGVuc2lvbiAqLwogICAgICAgICAgICAgaWYgKGxlbiA+IHNpemVvZiBhZGRyLT5zdW5fcGF0aCkgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsCisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJBRl9VTklYIHBhdGggdG9vIGxvbmciKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgICAgICBnb3RvIHVuaXhfb3V0OwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGVsc2UKQEAgLTEyMzksOSArMTMyMCw5IEBACiAgICAgICAgIHsKICAgICAgICAgICAgIC8qIHJlZ3VsYXIgTlVMTC10ZXJtaW5hdGVkIHN0cmluZyAqLwogICAgICAgICAgICAgaWYgKGxlbiA+PSBzaXplb2YgYWRkci0+c3VuX3BhdGgpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQUZfVU5JWCBwYXRoIHRvbyBsb25nIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICAgICAgZ290byB1bml4X291dDsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGFkZHItPnN1bl9wYXRoW2xlbl0gPSAwOwogICAgICAgICB9CkBAIC0xMjUyLDcgKzEzMzMsMTAgQEAKICNlbHNlCiAgICAgICAgICpsZW5fcmV0ID0gbGVuICsgb2Zmc2V0b2Yoc3RydWN0IHNvY2thZGRyX3VuLCBzdW5fcGF0aCk7CiAjZW5kaWYKLSAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIHJldHZhbCA9IDE7CisgICAgdW5peF9vdXQ6CisgICAgICAgIFB5X0RFQ1JFRihhcmdzKTsKKyAgICAgICAgcmV0dXJuIHJldHZhbDsKICAgICB9CiAjZW5kaWYgLyogQUZfVU5JWCAqLwogCkBAIC0xMjgwLDYgKzEzNjQsMTEgQEAKICAgICB9CiAjZW5kaWYKIAorI2lmZGVmIEFGX1JEUworICAgIGNhc2UgQUZfUkRTOgorICAgICAgICAvKiBSRFMgc29ja2V0cyB1c2Ugc29ja2FkZHJfaW46IGZhbGwtdGhyb3VnaCAqLworI2VuZGlmCisKICAgICBjYXNlIEFGX0lORVQ6CiAgICAgewogICAgICAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4qIGFkZHI7CkBAIC0xMzc2LDcgKzE0NjUsNyBAQAogICAgICAgICAgICAgX0JUX0wyX01FTUIoYWRkciwgZmFtaWx5KSA9IEFGX0JMVUVUT09USDsKICAgICAgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAic2kiLCAmc3RyYWRkciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmX0JUX0wyX01FTUIoYWRkciwgcHNtKSkpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6ICIKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImdldHNvY2thZGRyYXJnOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3cm9uZyBmb3JtYXQiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgIH0KQEAgLTEzOTUsNyArMTQ4NCw3IEBACiAgICAgICAgICAgICBfQlRfUkNfTUVNQihhZGRyLCBmYW1pbHkpID0gQUZfQkxVRVRPT1RIOwogICAgICAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzaSIsICZzdHJhZGRyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfQlRfUkNfTUVNQihhZGRyLCBjaGFubmVsKSkpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6ICIKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImdldHNvY2thZGRyYXJnOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3cm9uZyBmb3JtYXQiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgIH0KQEAgLTE0MTMsNyArMTUwMiw3IEBACiAKICAgICAgICAgICAgICAgICAgICAgICAgIF9CVF9IQ0lfTUVNQihhZGRyLCBmYW1pbHkpID0gQUZfQkxVRVRPT1RIOwogICAgICAgICAgICAgaWYgKHN0cmFkZHIgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsICJnZXRzb2NrYWRkcmFyZzogIgorICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6ICIKICAgICAgICAgICAgICAgICAgICAgIndyb25nIGZvcm1hdCIpOwogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgfQpAQCAtMTQyMiw3ICsxNTExLDcgQEAKICNlbHNlCiAgICAgICAgICAgICBfQlRfSENJX01FTUIoYWRkciwgZmFtaWx5KSA9IEFGX0JMVUVUT09USDsKICAgICAgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaSIsICZfQlRfSENJX01FTUIoYWRkciwgZGV2KSkpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6ICIKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImdldHNvY2thZGRyYXJnOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3cm9uZyBmb3JtYXQiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgIH0KQEAgLTE0MzksNyArMTUyOCw3IEBACiAgICAgICAgICAgICBhZGRyID0gKHN0cnVjdCBzb2NrYWRkcl9zY28gKilhZGRyX3JldDsKICAgICAgICAgICAgIF9CVF9TQ09fTUVNQihhZGRyLCBmYW1pbHkpID0gQUZfQkxVRVRPT1RIOwogICAgICAgICAgICAgaWYgKCFQeUJ5dGVzX0NoZWNrKGFyZ3MpKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgImdldHNvY2thZGRyYXJnOiAiCisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJnZXRzb2NrYWRkcmFyZzogIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid3JvbmcgZm9ybWF0Iik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICB9CkBAIC0xNDUyLDcgKzE1NDEsNyBAQAogICAgICAgICB9CiAjZW5kaWYKICAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsICJnZXRzb2NrYWRkcmFyZzogdW5rbm93biBCbHVldG9vdGggcHJvdG9jb2wiKTsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6IHVua25vd24gQmx1ZXRvb3RoIHByb3RvY29sIik7CiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQogICAgIH0KQEAgLTE1NjQsMTAgKzE2NTMsMTE1IEBACiAgICAgfQogI2VuZGlmCiAKKyNpZmRlZiBBRl9DQU4KKyAgICBjYXNlIEFGX0NBTjoKKyAgICAgICAgc3dpdGNoIChzLT5zb2NrX3Byb3RvKSB7CisgICAgICAgIGNhc2UgQ0FOX1JBVzoKKyAgICAgICAgeworICAgICAgICAgICAgc3RydWN0IHNvY2thZGRyX2NhbiAqYWRkcjsKKyAgICAgICAgICAgIFB5T2JqZWN0ICppbnRlcmZhY2VOYW1lOworICAgICAgICAgICAgc3RydWN0IGlmcmVxIGlmcjsKKyAgICAgICAgICAgIGFkZHIgPSAoc3RydWN0IHNvY2thZGRyX2NhbiAqKWFkZHJfcmV0OworICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CisKKyAgICAgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyYiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmludGVyZmFjZU5hbWUpKQorICAgICAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgICAgICBsZW4gPSBQeUJ5dGVzX0dFVF9TSVpFKGludGVyZmFjZU5hbWUpOworCisgICAgICAgICAgICBpZiAobGVuID09IDApIHsKKyAgICAgICAgICAgICAgICBpZnIuaWZyX2lmaW5kZXggPSAwOworICAgICAgICAgICAgfSBlbHNlIGlmIChsZW4gPCBzaXplb2YoaWZyLmlmcl9uYW1lKSkgeworICAgICAgICAgICAgICAgIHN0cmNweShpZnIuaWZyX25hbWUsIFB5Qnl0ZXNfQVNfU1RSSU5HKGludGVyZmFjZU5hbWUpKTsKKyAgICAgICAgICAgICAgICBpZiAoaW9jdGwocy0+c29ja19mZCwgU0lPQ0dJRklOREVYLCAmaWZyKSA8IDApIHsKKyAgICAgICAgICAgICAgICAgICAgcy0+ZXJyb3JoYW5kbGVyKCk7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihpbnRlcmZhY2VOYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkFGX0NBTiBpbnRlcmZhY2UgbmFtZSB0b28gbG9uZyIpOworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihpbnRlcmZhY2VOYW1lKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgYWRkci0+Y2FuX2ZhbWlseSA9IEFGX0NBTjsKKyAgICAgICAgICAgIGFkZHItPmNhbl9pZmluZGV4ID0gaWZyLmlmcl9pZmluZGV4OworCisgICAgICAgICAgICAqbGVuX3JldCA9IHNpemVvZigqYWRkcik7CisgICAgICAgICAgICBQeV9ERUNSRUYoaW50ZXJmYWNlTmFtZSk7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgfQorICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdldHNvY2thZGRyYXJnOiB1bnN1cHBvcnRlZCBDQU4gcHJvdG9jb2wiKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisjZW5kaWYKKyAgICAgICAgICAgIAorI2lmZGVmIFBGX1NZU1RFTQorICAgIGNhc2UgUEZfU1lTVEVNOgorICAgICAgICBzd2l0Y2ggKHMtPnNvY2tfcHJvdG8pIHsKKyNpZmRlZiBTWVNQUk9UT19DT05UUk9MCisgICAgICAgIGNhc2UgU1lTUFJPVE9fQ09OVFJPTDoKKyAgICAgICAgeworICAgICAgICAgICAgc3RydWN0IHNvY2thZGRyX2N0bCAqYWRkcjsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgYWRkciA9IChzdHJ1Y3Qgc29ja2FkZHJfY3RsICopYWRkcl9yZXQ7CisgICAgICAgICAgICBhZGRyLT5zY19mYW1pbHkgPSBBRl9TWVNURU07CisgICAgICAgICAgICBhZGRyLT5zc19zeXNhZGRyID0gQUZfU1lTX0NPTlRST0w7IAorCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKGFyZ3MpKSB7CisgICAgICAgICAgICAgICAgc3RydWN0IGN0bF9pbmZvIGluZm87CisgICAgICAgICAgICAgICAgUHlPYmplY3QgKmN0bF9uYW1lOworCisgICAgICAgICAgICAgICAgaWYgKCFQeUFyZ19QYXJzZShhcmdzLCAiTyYiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZjdGxfbmFtZSkpIHsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgaWYgKFB5Qnl0ZXNfR0VUX1NJWkUoY3RsX25hbWUpID4gc2l6ZW9mKGluZm8uY3RsX25hbWUpKSB7CisgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInByb3ZpZGVkIHN0cmluZyBpcyB0b28gbG9uZyIpOworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoY3RsX25hbWUpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgc3RybmNweShpbmZvLmN0bF9uYW1lLCBQeUJ5dGVzX0FTX1NUUklORyhjdGxfbmFtZSksCisgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YoaW5mby5jdGxfbmFtZSkpOworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihjdGxfbmFtZSk7CisKKyAgICAgICAgICAgICAgICBpZiAoaW9jdGwocy0+c29ja19mZCwgQ1RMSU9DR0lORk8sICZpbmZvKSkgeworICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgImNhbm5vdCBmaW5kIGtlcm5lbCBjb250cm9sIHdpdGggcHJvdmlkZWQgbmFtZSIpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgYWRkci0+c2NfaWQgPSBpbmZvLmN0bF9pZDsKKyAgICAgICAgICAgICAgICBhZGRyLT5zY191bml0ID0gMDsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIklJIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJihhZGRyLT5zY19pZCksICYoYWRkci0+c2NfdW5pdCkpKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImdldHNvY2thZGRyYXJnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHBlY3RlZCBzdHIgb3IgdHVwbGUgb2YgdHdvIGludHMiKTsKKyAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgCisgICAgICAgICAgICAqbGVuX3JldCA9IHNpemVvZigqYWRkcik7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgfQorI2VuZGlmCisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ2V0c29ja2FkZHJhcmc6IHVuc3VwcG9ydGVkIFBGX1NZU1RFTSBwcm90b2NvbCIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyNlbmRpZgorCiAgICAgLyogTW9yZSBjYXNlcyBoZXJlLi4uICovCiAKICAgICBkZWZhdWx0OgotICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6IGJhZCBmYW1pbHkiKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJnZXRzb2NrYWRkcmFyZzogYmFkIGZhbWlseSIpOwogICAgICAgICByZXR1cm4gMDsKIAogICAgIH0KQEAgLTE1OTgsNiArMTc5MiwxMSBAQAogICAgICAgIH0KICNlbmRpZgogCisjaWZkZWYgQUZfUkRTCisgICAgY2FzZSBBRl9SRFM6CisgICAgICAgIC8qIFJEUyBzb2NrZXRzIHVzZSBzb2NrYWRkcl9pbjogZmFsbC10aHJvdWdoICovCisjZW5kaWYKKwogICAgIGNhc2UgQUZfSU5FVDoKICAgICB7CiAgICAgICAgICpsZW5fcmV0ID0gc2l6ZW9mIChzdHJ1Y3Qgc29ja2FkZHJfaW4pOwpAQCAtMTYzMyw3ICsxODMyLDcgQEAKICAgICAgICAgICAgIHJldHVybiAxOwogI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiZ2V0c29ja2FkZHJsZW46ICIKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAiZ2V0c29ja2FkZHJsZW46ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidW5rbm93biBCVCBwcm90b2NvbCIpOwogICAgICAgICAgICAgcmV0dXJuIDA7CiAKQEAgLTE2NTcsMTYgKzE4NTYsMTUxIEBACiAgICAgfQogI2VuZGlmCiAKKyNpZmRlZiBBRl9DQU4KKyAgICBjYXNlIEFGX0NBTjoKKyAgICB7CisgICAgICAgICpsZW5fcmV0ID0gc2l6ZW9mIChzdHJ1Y3Qgc29ja2FkZHJfY2FuKTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorI2VuZGlmCisgICAgICAgICAgICAKKyNpZmRlZiBQRl9TWVNURU0KKyAgICBjYXNlIFBGX1NZU1RFTToKKyAgICAgICAgc3dpdGNoKHMtPnNvY2tfcHJvdG8pIHsKKyNpZmRlZiBTWVNQUk9UT19DT05UUk9MCisgICAgICAgIGNhc2UgU1lTUFJPVE9fQ09OVFJPTDoKKyAgICAgICAgICAgICpsZW5fcmV0ID0gc2l6ZW9mIChzdHJ1Y3Qgc29ja2FkZHJfY3RsKTsKKyAgICAgICAgICAgIHJldHVybiAxOworI2VuZGlmCisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImdldHNvY2thZGRybGVuOiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVua25vd24gUEZfU1lTVEVNIHByb3RvY29sIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorI2VuZGlmCisKICAgICAvKiBNb3JlIGNhc2VzIGhlcmUuLi4gKi8KIAogICAgIGRlZmF1bHQ6Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsICJnZXRzb2NrYWRkcmxlbjogYmFkIGZhbWlseSIpOworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImdldHNvY2thZGRybGVuOiBiYWQgZmFtaWx5Iik7CiAgICAgICAgIHJldHVybiAwOwogCiAgICAgfQogfQogCiAKKy8qIFN1cHBvcnQgZnVuY3Rpb25zIGZvciB0aGUgc2VuZG1zZygpIGFuZCByZWN2bXNnW19pbnRvXSgpIG1ldGhvZHMuCisgICBDdXJyZW50bHksIHRoZXNlIG1ldGhvZHMgYXJlIG9ubHkgY29tcGlsZWQgaWYgdGhlIFJGQyAyMjkyLzM1NDIKKyAgIENNU0dfTEVOKCkgbWFjcm8gaXMgYXZhaWxhYmxlLiAgT2xkZXIgc3lzdGVtcyBzZWVtIHRvIGhhdmUgdXNlZAorICAgc2l6ZW9mKHN0cnVjdCBjbXNnaGRyKSArIChsZW5ndGgpIHdoZXJlIENNU0dfTEVOKCkgaXMgdXNlZCBub3csIHNvCisgICBpdCBtYXkgYmUgcG9zc2libGUgdG8gZGVmaW5lIENNU0dfTEVOKCkgdGhhdCB3YXkgaWYgaXQncyBub3QKKyAgIHByb3ZpZGVkLiAgU29tZSBhcmNoaXRlY3R1cmVzIG1pZ2h0IG5lZWQgZXh0cmEgcGFkZGluZyBhZnRlciB0aGUKKyAgIGNtc2doZHIsIGhvd2V2ZXIsIGFuZCBDTVNHX0xFTigpIHdvdWxkIGhhdmUgdG8gdGFrZSBhY2NvdW50IG9mCisgICB0aGlzLiAqLworI2lmZGVmIENNU0dfTEVOCisvKiBJZiBsZW5ndGggaXMgaW4gcmFuZ2UsIHNldCAqcmVzdWx0IHRvIENNU0dfTEVOKGxlbmd0aCkgYW5kIHJldHVybgorICAgdHJ1ZTsgb3RoZXJ3aXNlLCByZXR1cm4gZmFsc2UuICovCitzdGF0aWMgaW50CitnZXRfQ01TR19MRU4oc2l6ZV90IGxlbmd0aCwgc2l6ZV90ICpyZXN1bHQpCit7CisgICAgc2l6ZV90IHRtcDsKKworICAgIGlmIChsZW5ndGggPiAoU09DS0xFTl9UX0xJTUlUIC0gQ01TR19MRU4oMCkpKQorICAgICAgICByZXR1cm4gMDsKKyAgICB0bXAgPSBDTVNHX0xFTihsZW5ndGgpOworICAgIGlmICh0bXAgPiBTT0NLTEVOX1RfTElNSVQgfHwgdG1wIDwgbGVuZ3RoKQorICAgICAgICByZXR1cm4gMDsKKyAgICAqcmVzdWx0ID0gdG1wOworICAgIHJldHVybiAxOworfQorCisjaWZkZWYgQ01TR19TUEFDRQorLyogSWYgbGVuZ3RoIGlzIGluIHJhbmdlLCBzZXQgKnJlc3VsdCB0byBDTVNHX1NQQUNFKGxlbmd0aCkgYW5kIHJldHVybgorICAgdHJ1ZTsgb3RoZXJ3aXNlLCByZXR1cm4gZmFsc2UuICovCitzdGF0aWMgaW50CitnZXRfQ01TR19TUEFDRShzaXplX3QgbGVuZ3RoLCBzaXplX3QgKnJlc3VsdCkKK3sKKyAgICBzaXplX3QgdG1wOworCisgICAgLyogVXNlIENNU0dfU1BBQ0UoMSkgaGVyZSBpbiBvcmRlciB0byB0YWtlIGFjY291bnQgb2YgdGhlIHBhZGRpbmcKKyAgICAgICBuZWNlc3NhcnkgYmVmb3JlICphbmQqIGFmdGVyIHRoZSBkYXRhLiAqLworICAgIGlmIChsZW5ndGggPiAoU09DS0xFTl9UX0xJTUlUIC0gQ01TR19TUEFDRSgxKSkpCisgICAgICAgIHJldHVybiAwOworICAgIHRtcCA9IENNU0dfU1BBQ0UobGVuZ3RoKTsKKyAgICBpZiAodG1wID4gU09DS0xFTl9UX0xJTUlUIHx8IHRtcCA8IGxlbmd0aCkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgKnJlc3VsdCA9IHRtcDsKKyAgICByZXR1cm4gMTsKK30KKyNlbmRpZgorCisvKiBSZXR1cm4gdHJ1ZSBpZmYgbXNnLT5tc2dfY29udHJvbGxlbiBpcyB2YWxpZCwgY21zZ2ggaXMgYSB2YWxpZAorICAgcG9pbnRlciBpbiBtc2ctPm1zZ19jb250cm9sIHdpdGggYXQgbGVhc3QgInNwYWNlIiBieXRlcyBhZnRlciBpdCwKKyAgIGFuZCBpdHMgY21zZ19sZW4gbWVtYmVyIGluc2lkZSB0aGUgYnVmZmVyLiAqLworc3RhdGljIGludAorY21zZ19taW5fc3BhY2Uoc3RydWN0IG1zZ2hkciAqbXNnLCBzdHJ1Y3QgY21zZ2hkciAqY21zZ2gsIHNpemVfdCBzcGFjZSkKK3sKKyAgICBzaXplX3QgY21zZ19vZmZzZXQ7CisgICAgc3RhdGljIGNvbnN0IHNpemVfdCBjbXNnX2xlbl9lbmQgPSAob2Zmc2V0b2Yoc3RydWN0IGNtc2doZHIsIGNtc2dfbGVuKSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGNtc2doLT5jbXNnX2xlbikpOworCisgICAgLyogTm90ZSB0aGF0IFBPU0lYIGFsbG93cyBtc2dfY29udHJvbGxlbiB0byBiZSBvZiBzaWduZWQgdHlwZS4gKi8KKyAgICBpZiAoY21zZ2ggPT0gTlVMTCB8fCBtc2ctPm1zZ19jb250cm9sID09IE5VTEwgfHwgbXNnLT5tc2dfY29udHJvbGxlbiA8IDApCisgICAgICAgIHJldHVybiAwOworICAgIGlmIChzcGFjZSA8IGNtc2dfbGVuX2VuZCkKKyAgICAgICAgc3BhY2UgPSBjbXNnX2xlbl9lbmQ7CisgICAgY21zZ19vZmZzZXQgPSAoY2hhciAqKWNtc2doIC0gKGNoYXIgKiltc2ctPm1zZ19jb250cm9sOworICAgIHJldHVybiAoY21zZ19vZmZzZXQgPD0gKHNpemVfdCktMSAtIHNwYWNlICYmCisgICAgICAgICAgICBjbXNnX29mZnNldCArIHNwYWNlIDw9IG1zZy0+bXNnX2NvbnRyb2xsZW4pOworfQorCisvKiBJZiBwb2ludGVyIENNU0dfREFUQShjbXNnaCkgaXMgaW4gYnVmZmVyIG1zZy0+bXNnX2NvbnRyb2wsIHNldAorICAgKnNwYWNlIHRvIG51bWJlciBvZiBieXRlcyBmb2xsb3dpbmcgaXQgaW4gdGhlIGJ1ZmZlciBhbmQgcmV0dXJuCisgICB0cnVlOyBvdGhlcndpc2UsIHJldHVybiBmYWxzZS4gIEFzc3VtZXMgY21zZ2gsIG1zZy0+bXNnX2NvbnRyb2wgYW5kCisgICBtc2ctPm1zZ19jb250cm9sbGVuIGFyZSB2YWxpZC4gKi8KK3N0YXRpYyBpbnQKK2dldF9jbXNnX2RhdGFfc3BhY2Uoc3RydWN0IG1zZ2hkciAqbXNnLCBzdHJ1Y3QgY21zZ2hkciAqY21zZ2gsIHNpemVfdCAqc3BhY2UpCit7CisgICAgc2l6ZV90IGRhdGFfb2Zmc2V0OworICAgIGNoYXIgKmRhdGFfcHRyOworCisgICAgaWYgKChkYXRhX3B0ciA9IChjaGFyICopQ01TR19EQVRBKGNtc2doKSkgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgZGF0YV9vZmZzZXQgPSBkYXRhX3B0ciAtIChjaGFyICopbXNnLT5tc2dfY29udHJvbDsKKyAgICBpZiAoZGF0YV9vZmZzZXQgPiBtc2ctPm1zZ19jb250cm9sbGVuKQorICAgICAgICByZXR1cm4gMDsKKyAgICAqc3BhY2UgPSBtc2ctPm1zZ19jb250cm9sbGVuIC0gZGF0YV9vZmZzZXQ7CisgICAgcmV0dXJuIDE7Cit9CisKKy8qIElmIGNtc2doIGlzIGludmFsaWQgb3Igbm90IGNvbnRhaW5lZCBpbiB0aGUgYnVmZmVyIHBvaW50ZWQgdG8gYnkKKyAgIG1zZy0+bXNnX2NvbnRyb2wsIHJldHVybiAtMS4gIElmIGNtc2doIGlzIHZhbGlkIGFuZCBpdHMgYXNzb2NpYXRlZAorICAgZGF0YSBpcyBlbnRpcmVseSBjb250YWluZWQgaW4gdGhlIGJ1ZmZlciwgc2V0ICpkYXRhX2xlbiB0byB0aGUKKyAgIGxlbmd0aCBvZiB0aGUgYXNzb2NpYXRlZCBkYXRhIGFuZCByZXR1cm4gMC4gIElmIG9ubHkgcGFydCBvZiB0aGUKKyAgIGFzc29jaWF0ZWQgZGF0YSBpcyBjb250YWluZWQgaW4gdGhlIGJ1ZmZlciBidXQgY21zZ2ggaXMgb3RoZXJ3aXNlCisgICB2YWxpZCwgc2V0ICpkYXRhX2xlbiB0byB0aGUgbGVuZ3RoIGNvbnRhaW5lZCBpbiB0aGUgYnVmZmVyIGFuZAorICAgcmV0dXJuIDEuICovCitzdGF0aWMgaW50CitnZXRfY21zZ19kYXRhX2xlbihzdHJ1Y3QgbXNnaGRyICptc2csIHN0cnVjdCBjbXNnaGRyICpjbXNnaCwgc2l6ZV90ICpkYXRhX2xlbikKK3sKKyAgICBzaXplX3Qgc3BhY2UsIGNtc2dfZGF0YV9sZW47CisKKyAgICBpZiAoIWNtc2dfbWluX3NwYWNlKG1zZywgY21zZ2gsIENNU0dfTEVOKDApKSB8fAorICAgICAgICBjbXNnaC0+Y21zZ19sZW4gPCBDTVNHX0xFTigwKSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGNtc2dfZGF0YV9sZW4gPSBjbXNnaC0+Y21zZ19sZW4gLSBDTVNHX0xFTigwKTsKKyAgICBpZiAoIWdldF9jbXNnX2RhdGFfc3BhY2UobXNnLCBjbXNnaCwgJnNwYWNlKSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGlmIChzcGFjZSA+PSBjbXNnX2RhdGFfbGVuKSB7CisgICAgICAgICpkYXRhX2xlbiA9IGNtc2dfZGF0YV9sZW47CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICAqZGF0YV9sZW4gPSBzcGFjZTsKKyAgICByZXR1cm4gMTsKK30KKyNlbmRpZiAgICAvKiBDTVNHX0xFTiAqLworCisKIC8qIHMuX2FjY2VwdCgpIC0+IChmZCwgYWRkcmVzcykgKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTE4ODksNyArMjIyMyw3IEBACiAjZWxzZQogICAgIGlmIChidWZsZW4gPD0gMCB8fCBidWZsZW4gPiAxMDI0KSB7CiAjZW5kaWYKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAiZ2V0c29ja29wdCBidWZsZW4gb3V0IG9mIHJhbmdlIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KQEAgLTI2MjAsNiArMjk1NCwzMzEgQEAKIExpa2UgcmVjdl9pbnRvKGJ1ZmZlclssIG5ieXRlc1ssIGZsYWdzXV0pIGJ1dCBhbHNvIHJldHVybiB0aGUgc2VuZGVyJ3MgYWRkcmVzcyBpbmZvLiIpOwogCiAKKy8qIFRoZSBzZW5kbXNnKCkgYW5kIHJlY3Ztc2dbX2ludG9dKCkgbWV0aG9kcyByZXF1aXJlIGEgd29ya2luZworICAgQ01TR19MRU4oKS4gIFNlZSB0aGUgY29tbWVudCBuZWFyIGdldF9DTVNHX0xFTigpLiAqLworI2lmZGVmIENNU0dfTEVOCisvKgorICogQ2FsbCByZWN2bXNnKCkgd2l0aCB0aGUgc3VwcGxpZWQgaW92ZWMgc3RydWN0dXJlcywgZmxhZ3MsIGFuZAorICogYW5jaWxsYXJ5IGRhdGEgYnVmZmVyIHNpemUgKGNvbnRyb2xsZW4pLiAgUmV0dXJucyB0aGUgdHVwbGUgcmV0dXJuCisgKiB2YWx1ZSBmb3IgcmVjdm1zZygpIG9yIHJlY3Ztc2dfaW50bygpLCB3aXRoIHRoZSBmaXJzdCBpdGVtIHByb3ZpZGVkCisgKiBieSB0aGUgc3VwcGxpZWQgbWFrZXZhbCgpIGZ1bmN0aW9uLiAgbWFrZXZhbCgpIHdpbGwgYmUgY2FsbGVkIHdpdGgKKyAqIHRoZSBsZW5ndGggcmVhZCBhbmQgbWFrZXZhbF9kYXRhIGFzIGFyZ3VtZW50cywgYW5kIG11c3QgcmV0dXJuIGEKKyAqIG5ldyByZWZlcmVuY2UgKHdoaWNoIHdpbGwgYmUgZGVjcmVmZWQgaWYgdGhlcmUgaXMgYSBzdWJzZXF1ZW50CisgKiBlcnJvcikuICBPbiBlcnJvciwgY2xvc2VzIGFueSBmaWxlIGRlc2NyaXB0b3JzIHJlY2VpdmVkIHZpYQorICogU0NNX1JJR0hUUy4KKyAqLworc3RhdGljIFB5T2JqZWN0ICoKK3NvY2tfcmVjdm1zZ19ndXRzKFB5U29ja2V0U29ja09iamVjdCAqcywgc3RydWN0IGlvdmVjICppb3YsIGludCBpb3ZsZW4sCisgICAgICAgICAgICAgICAgICBpbnQgZmxhZ3MsIFB5X3NzaXplX3QgY29udHJvbGxlbiwKKyAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICooKm1ha2V2YWwpKHNzaXplX3QsIHZvaWQgKiksIHZvaWQgKm1ha2V2YWxfZGF0YSkKK3sKKyAgICBzc2l6ZV90IGJ5dGVzX3JlY2VpdmVkID0gLTE7CisgICAgaW50IHRpbWVvdXQ7CisgICAgc29ja19hZGRyX3QgYWRkcmJ1ZjsKKyAgICBzb2NrbGVuX3QgYWRkcmJ1ZmxlbjsKKyAgICBzdHJ1Y3QgbXNnaGRyIG1zZyA9IHswfTsKKyAgICBQeU9iamVjdCAqY21zZ19saXN0ID0gTlVMTCwgKnJldHZhbCA9IE5VTEw7CisgICAgdm9pZCAqY29udHJvbGJ1ZiA9IE5VTEw7CisgICAgc3RydWN0IGNtc2doZHIgKmNtc2doOworICAgIHNpemVfdCBjbXNnZGF0YWxlbiA9IDA7CisgICAgaW50IGNtc2dfc3RhdHVzOworCisgICAgLyogWFhYOiBQT1NJWCBzYXlzIHRoYXQgbXNnX25hbWUgYW5kIG1zZ19uYW1lbGVuICJzaGFsbCBiZQorICAgICAgIGlnbm9yZWQiIHdoZW4gdGhlIHNvY2tldCBpcyBjb25uZWN0ZWQgKExpbnV4IGZpbGxzIHRoZW0gaW4KKyAgICAgICBhbnl3YXkgZm9yIEFGX1VOSVggc29ja2V0cyBhdCBsZWFzdCkuICBOb3JtYWxseSBtc2dfbmFtZWxlbgorICAgICAgIHNlZW1zIHRvIGJlIHNldCB0byAwIGlmIHRoZXJlJ3Mgbm8gYWRkcmVzcywgYnV0IHRyeSB0bworICAgICAgIGluaXRpYWxpemUgbXNnX25hbWUgdG8gc29tZXRoaW5nIHRoYXQgd29uJ3QgYmUgbWlzdGFrZW4gZm9yIGEKKyAgICAgICByZWFsIGFkZHJlc3MgaWYgdGhhdCBkb2Vzbid0IGhhcHBlbi4gKi8KKyAgICBpZiAoIWdldHNvY2thZGRybGVuKHMsICZhZGRyYnVmbGVuKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbWVtc2V0KCZhZGRyYnVmLCAwLCBhZGRyYnVmbGVuKTsKKyAgICBTQVMyU0EoJmFkZHJidWYpLT5zYV9mYW1pbHkgPSBBRl9VTlNQRUM7CisKKyAgICBpZiAoY29udHJvbGxlbiA8IDAgfHwgY29udHJvbGxlbiA+IFNPQ0tMRU5fVF9MSU1JVCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJpbnZhbGlkIGFuY2lsbGFyeSBkYXRhIGJ1ZmZlciBsZW5ndGgiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmIChjb250cm9sbGVuID4gMCAmJiAoY29udHJvbGJ1ZiA9IFB5TWVtX01hbGxvYyhjb250cm9sbGVuKSkgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisKKyAgICAvKiBNYWtlIHRoZSBzeXN0ZW0gY2FsbC4gKi8KKyAgICBpZiAoIUlTX1NFTEVDVEFCTEUocykpIHsKKyAgICAgICAgc2VsZWN0X2Vycm9yKCk7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisKKyAgICBCRUdJTl9TRUxFQ1RfTE9PUChzKQorICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFM7CisgICAgbXNnLm1zZ19uYW1lID0gU0FTMlNBKCZhZGRyYnVmKTsKKyAgICBtc2cubXNnX25hbWVsZW4gPSBhZGRyYnVmbGVuOworICAgIG1zZy5tc2dfaW92ID0gaW92OworICAgIG1zZy5tc2dfaW92bGVuID0gaW92bGVuOworICAgIG1zZy5tc2dfY29udHJvbCA9IGNvbnRyb2xidWY7CisgICAgbXNnLm1zZ19jb250cm9sbGVuID0gY29udHJvbGxlbjsKKyAgICB0aW1lb3V0ID0gaW50ZXJuYWxfc2VsZWN0X2V4KHMsIDAsIGludGVydmFsKTsKKyAgICBpZiAoIXRpbWVvdXQpCisgICAgICAgIGJ5dGVzX3JlY2VpdmVkID0gcmVjdm1zZyhzLT5zb2NrX2ZkLCAmbXNnLCBmbGFncyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFM7CisgICAgaWYgKHRpbWVvdXQgPT0gMSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X3RpbWVvdXQsICJ0aW1lZCBvdXQiKTsKKyAgICAgICAgZ290byBmaW5hbGx5OworICAgIH0KKyAgICBFTkRfU0VMRUNUX0xPT1AocykKKworICAgIGlmIChieXRlc19yZWNlaXZlZCA8IDApIHsKKyAgICAgICAgcy0+ZXJyb3JoYW5kbGVyKCk7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisKKyAgICAvKiBNYWtlIGxpc3Qgb2YgKGxldmVsLCB0eXBlLCBkYXRhKSB0dXBsZXMgZnJvbSBjb250cm9sIG1lc3NhZ2VzLiAqLworICAgIGlmICgoY21zZ19saXN0ID0gUHlMaXN0X05ldygwKSkgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJfY2xvc2VmZHM7CisgICAgLyogQ2hlY2sgZm9yIGVtcHR5IGFuY2lsbGFyeSBkYXRhIGFzIG9sZCBDTVNHX0ZJUlNUSERSKCkKKyAgICAgICBpbXBsZW1lbnRhdGlvbnMgZGlkbid0IGRvIHNvLiAqLworICAgIGZvciAoY21zZ2ggPSAoKG1zZy5tc2dfY29udHJvbGxlbiA+IDApID8gQ01TR19GSVJTVEhEUigmbXNnKSA6IE5VTEwpOworICAgICAgICAgY21zZ2ggIT0gTlVMTDsgY21zZ2ggPSBDTVNHX05YVEhEUigmbXNnLCBjbXNnaCkpIHsKKyAgICAgICAgUHlPYmplY3QgKmJ5dGVzLCAqdHVwbGU7CisgICAgICAgIGludCB0bXA7CisKKyAgICAgICAgY21zZ19zdGF0dXMgPSBnZXRfY21zZ19kYXRhX2xlbigmbXNnLCBjbXNnaCwgJmNtc2dkYXRhbGVuKTsKKyAgICAgICAgaWYgKGNtc2dfc3RhdHVzICE9IDApIHsKKyAgICAgICAgICAgIGlmIChQeUVycl9XYXJuRXgoUHlFeGNfUnVudGltZVdhcm5pbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZWNlaXZlZCBtYWxmb3JtZWQgb3IgaW1wcm9wZXJseS10cnVuY2F0ZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5jaWxsYXJ5IGRhdGEiLCAxKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBnb3RvIGVycl9jbG9zZWZkczsKKyAgICAgICAgfQorICAgICAgICBpZiAoY21zZ19zdGF0dXMgPCAwKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGlmIChjbXNnZGF0YWxlbiA+IFBZX1NTSVpFX1RfTUFYKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImNvbnRyb2wgbWVzc2FnZSB0b28gbG9uZyIpOworICAgICAgICAgICAgZ290byBlcnJfY2xvc2VmZHM7CisgICAgICAgIH0KKworICAgICAgICBieXRlcyA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoKGNoYXIgKilDTVNHX0RBVEEoY21zZ2gpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY21zZ2RhdGFsZW4pOworICAgICAgICB0dXBsZSA9IFB5X0J1aWxkVmFsdWUoImlpTiIsIChpbnQpY21zZ2gtPmNtc2dfbGV2ZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW50KWNtc2doLT5jbXNnX3R5cGUsIGJ5dGVzKTsKKyAgICAgICAgaWYgKHR1cGxlID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGVycl9jbG9zZWZkczsKKyAgICAgICAgdG1wID0gUHlMaXN0X0FwcGVuZChjbXNnX2xpc3QsIHR1cGxlKTsKKyAgICAgICAgUHlfREVDUkVGKHR1cGxlKTsKKyAgICAgICAgaWYgKHRtcCAhPSAwKQorICAgICAgICAgICAgZ290byBlcnJfY2xvc2VmZHM7CisKKyAgICAgICAgaWYgKGNtc2dfc3RhdHVzICE9IDApCisgICAgICAgICAgICBicmVhazsKKyAgICB9CisKKyAgICByZXR2YWwgPSBQeV9CdWlsZFZhbHVlKCJOT2lOIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICgqbWFrZXZhbCkoYnl0ZXNfcmVjZWl2ZWQsIG1ha2V2YWxfZGF0YSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjbXNnX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW50KW1zZy5tc2dfZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWtlc29ja2FkZHIocy0+c29ja19mZCwgU0FTMlNBKCZhZGRyYnVmKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKG1zZy5tc2dfbmFtZWxlbiA+IGFkZHJidWZsZW4pID8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkcmJ1ZmxlbiA6IG1zZy5tc2dfbmFtZWxlbiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+c29ja19wcm90bykpOworICAgIGlmIChyZXR2YWwgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJfY2xvc2VmZHM7CisKK2ZpbmFsbHk6CisgICAgUHlfWERFQ1JFRihjbXNnX2xpc3QpOworICAgIFB5TWVtX0ZyZWUoY29udHJvbGJ1Zik7CisgICAgcmV0dXJuIHJldHZhbDsKKworZXJyX2Nsb3NlZmRzOgorI2lmZGVmIFNDTV9SSUdIVFMKKyAgICAvKiBDbG9zZSBhbGwgZGVzY3JpcHRvcnMgY29taW5nIGZyb20gU0NNX1JJR0hUUywgc28gdGhleSBkb24ndCBsZWFrLiAqLworICAgIGZvciAoY21zZ2ggPSAoKG1zZy5tc2dfY29udHJvbGxlbiA+IDApID8gQ01TR19GSVJTVEhEUigmbXNnKSA6IE5VTEwpOworICAgICAgICAgY21zZ2ggIT0gTlVMTDsgY21zZ2ggPSBDTVNHX05YVEhEUigmbXNnLCBjbXNnaCkpIHsKKyAgICAgICAgY21zZ19zdGF0dXMgPSBnZXRfY21zZ19kYXRhX2xlbigmbXNnLCBjbXNnaCwgJmNtc2dkYXRhbGVuKTsKKyAgICAgICAgaWYgKGNtc2dfc3RhdHVzIDwgMCkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBpZiAoY21zZ2gtPmNtc2dfbGV2ZWwgPT0gU09MX1NPQ0tFVCAmJgorICAgICAgICAgICAgY21zZ2gtPmNtc2dfdHlwZSA9PSBTQ01fUklHSFRTKSB7CisgICAgICAgICAgICBzaXplX3QgbnVtZmRzOworICAgICAgICAgICAgaW50ICpmZHA7CisKKyAgICAgICAgICAgIG51bWZkcyA9IGNtc2dkYXRhbGVuIC8gc2l6ZW9mKGludCk7CisgICAgICAgICAgICBmZHAgPSAoaW50ICopQ01TR19EQVRBKGNtc2doKTsKKyAgICAgICAgICAgIHdoaWxlIChudW1mZHMtLSA+IDApCisgICAgICAgICAgICAgICAgY2xvc2UoKmZkcCsrKTsKKyAgICAgICAgfQorICAgICAgICBpZiAoY21zZ19zdGF0dXMgIT0gMCkKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKyNlbmRpZiAvKiBTQ01fUklHSFRTICovCisgICAgZ290byBmaW5hbGx5OworfQorCisKK3N0YXRpYyBQeU9iamVjdCAqCittYWtldmFsX3JlY3Ztc2coc3NpemVfdCByZWNlaXZlZCwgdm9pZCAqZGF0YSkKK3sKKyAgICBQeU9iamVjdCAqKmJ1ZiA9IGRhdGE7CisKKyAgICBpZiAocmVjZWl2ZWQgPCBQeUJ5dGVzX0dFVF9TSVpFKCpidWYpKQorICAgICAgICBfUHlCeXRlc19SZXNpemUoYnVmLCByZWNlaXZlZCk7CisgICAgUHlfWElOQ1JFRigqYnVmKTsKKyAgICByZXR1cm4gKmJ1ZjsKK30KKworLyogcy5yZWN2bXNnKGJ1ZnNpemVbLCBhbmNidWZzaXplWywgZmxhZ3NdXSkgbWV0aG9kICovCisKK3N0YXRpYyBQeU9iamVjdCAqCitzb2NrX3JlY3Ztc2coUHlTb2NrZXRTb2NrT2JqZWN0ICpzLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeV9zc2l6ZV90IGJ1ZnNpemUsIGFuY2J1ZnNpemUgPSAwOworICAgIGludCBmbGFncyA9IDA7CisgICAgc3RydWN0IGlvdmVjIGlvdjsKKyAgICBQeU9iamVjdCAqYnVmID0gTlVMTCwgKnJldHZhbCA9IE5VTEw7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIm58bmk6cmVjdm1zZyIsICZidWZzaXplLCAmYW5jYnVmc2l6ZSwgJmZsYWdzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoYnVmc2l6ZSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJuZWdhdGl2ZSBidWZmZXIgc2l6ZSBpbiByZWN2bXNnKCkiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmICgoYnVmID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBidWZzaXplKSkgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaW92Lmlvdl9iYXNlID0gUHlCeXRlc19BU19TVFJJTkcoYnVmKTsKKyAgICBpb3YuaW92X2xlbiA9IGJ1ZnNpemU7CisKKyAgICAvKiBOb3RlIHRoYXQgd2UncmUgcGFzc2luZyBhIHBvaW50ZXIgdG8gKm91ciBwb2ludGVyKiB0byB0aGUgYnl0ZXMKKyAgICAgICBvYmplY3QgaGVyZSAoJmJ1Zik7IG1ha2V2YWxfcmVjdm1zZygpIG1heSBpbmNyZWYgdGhlIG9iamVjdCwgb3IKKyAgICAgICBkZWFsbG9jYXRlIGl0IGFuZCBzZXQgb3VyIHBvaW50ZXIgdG8gTlVMTC4gKi8KKyAgICByZXR2YWwgPSBzb2NrX3JlY3Ztc2dfZ3V0cyhzLCAmaW92LCAxLCBmbGFncywgYW5jYnVmc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWFrZXZhbF9yZWN2bXNnLCAmYnVmKTsKKyAgICBQeV9YREVDUkVGKGJ1Zik7CisgICAgcmV0dXJuIHJldHZhbDsKK30KKworUHlEb2NfU1RSVkFSKHJlY3Ztc2dfZG9jLAorInJlY3Ztc2coYnVmc2l6ZVssIGFuY2J1ZnNpemVbLCBmbGFnc11dKSAtPiAoZGF0YSwgYW5jZGF0YSwgbXNnX2ZsYWdzLCBhZGRyZXNzKVxuXAorXG5cCitSZWNlaXZlIG5vcm1hbCBkYXRhICh1cCB0byBidWZzaXplIGJ5dGVzKSBhbmQgYW5jaWxsYXJ5IGRhdGEgZnJvbSB0aGVcblwKK3NvY2tldC4gIFRoZSBhbmNidWZzaXplIGFyZ3VtZW50IHNldHMgdGhlIHNpemUgaW4gYnl0ZXMgb2YgdGhlXG5cCitpbnRlcm5hbCBidWZmZXIgdXNlZCB0byByZWNlaXZlIHRoZSBhbmNpbGxhcnkgZGF0YTsgaXQgZGVmYXVsdHMgdG8gMCxcblwKK21lYW5pbmcgdGhhdCBubyBhbmNpbGxhcnkgZGF0YSB3aWxsIGJlIHJlY2VpdmVkLiAgQXBwcm9wcmlhdGUgYnVmZmVyXG5cCitzaXplcyBmb3IgYW5jaWxsYXJ5IGRhdGEgY2FuIGJlIGNhbGN1bGF0ZWQgdXNpbmcgQ01TR19TUEFDRSgpIG9yXG5cCitDTVNHX0xFTigpLCBhbmQgaXRlbXMgd2hpY2ggZG8gbm90IGZpdCBpbnRvIHRoZSBidWZmZXIgbWlnaHQgYmVcblwKK3RydW5jYXRlZCBvciBkaXNjYXJkZWQuICBUaGUgZmxhZ3MgYXJndW1lbnQgZGVmYXVsdHMgdG8gMCBhbmQgaGFzIHRoZVxuXAorc2FtZSBtZWFuaW5nIGFzIGZvciByZWN2KCkuXG5cCitcblwKK1RoZSByZXR1cm4gdmFsdWUgaXMgYSA0LXR1cGxlOiAoZGF0YSwgYW5jZGF0YSwgbXNnX2ZsYWdzLCBhZGRyZXNzKS5cblwKK1RoZSBkYXRhIGl0ZW0gaXMgYSBieXRlcyBvYmplY3QgaG9sZGluZyB0aGUgbm9uLWFuY2lsbGFyeSBkYXRhXG5cCityZWNlaXZlZC4gIFRoZSBhbmNkYXRhIGl0ZW0gaXMgYSBsaXN0IG9mIHplcm8gb3IgbW9yZSB0dXBsZXNcblwKKyhjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSkgcmVwcmVzZW50aW5nIHRoZSBhbmNpbGxhcnkgZGF0YVxuXAorKGNvbnRyb2wgbWVzc2FnZXMpIHJlY2VpdmVkOiBjbXNnX2xldmVsIGFuZCBjbXNnX3R5cGUgYXJlIGludGVnZXJzXG5cCitzcGVjaWZ5aW5nIHRoZSBwcm90b2NvbCBsZXZlbCBhbmQgcHJvdG9jb2wtc3BlY2lmaWMgdHlwZSByZXNwZWN0aXZlbHksXG5cCithbmQgY21zZ19kYXRhIGlzIGEgYnl0ZXMgb2JqZWN0IGhvbGRpbmcgdGhlIGFzc29jaWF0ZWQgZGF0YS4gIFRoZVxuXAorbXNnX2ZsYWdzIGl0ZW0gaXMgdGhlIGJpdHdpc2UgT1Igb2YgdmFyaW91cyBmbGFncyBpbmRpY2F0aW5nXG5cCitjb25kaXRpb25zIG9uIHRoZSByZWNlaXZlZCBtZXNzYWdlOyBzZWUgeW91ciBzeXN0ZW0gZG9jdW1lbnRhdGlvbiBmb3JcblwKK2RldGFpbHMuICBJZiB0aGUgcmVjZWl2aW5nIHNvY2tldCBpcyB1bmNvbm5lY3RlZCwgYWRkcmVzcyBpcyB0aGVcblwKK2FkZHJlc3Mgb2YgdGhlIHNlbmRpbmcgc29ja2V0LCBpZiBhdmFpbGFibGU7IG90aGVyd2lzZSwgaXRzIHZhbHVlIGlzXG5cCit1bnNwZWNpZmllZC5cblwKK1xuXAorSWYgcmVjdm1zZygpIHJhaXNlcyBhbiBleGNlcHRpb24gYWZ0ZXIgdGhlIHN5c3RlbSBjYWxsIHJldHVybnMsIGl0XG5cCit3aWxsIGZpcnN0IGF0dGVtcHQgdG8gY2xvc2UgYW55IGZpbGUgZGVzY3JpcHRvcnMgcmVjZWl2ZWQgdmlhIHRoZVxuXAorU0NNX1JJR0hUUyBtZWNoYW5pc20uIik7CisKKworc3RhdGljIFB5T2JqZWN0ICoKK21ha2V2YWxfcmVjdm1zZ19pbnRvKHNzaXplX3QgcmVjZWl2ZWQsIHZvaWQgKmRhdGEpCit7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChyZWNlaXZlZCk7Cit9CisKKy8qIHMucmVjdm1zZ19pbnRvKGJ1ZmZlcnNbLCBhbmNidWZzaXplWywgZmxhZ3NdXSkgbWV0aG9kICovCisKK3N0YXRpYyBQeU9iamVjdCAqCitzb2NrX3JlY3Ztc2dfaW50byhQeVNvY2tldFNvY2tPYmplY3QgKnMsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5X3NzaXplX3QgYW5jYnVmc2l6ZSA9IDA7CisgICAgaW50IGZsYWdzID0gMDsKKyAgICBzdHJ1Y3QgaW92ZWMgKmlvdnMgPSBOVUxMOworICAgIFB5X3NzaXplX3QgaSwgbml0ZW1zLCBuYnVmcyA9IDA7CisgICAgUHlfYnVmZmVyICpidWZzID0gTlVMTDsKKyAgICBQeU9iamVjdCAqYnVmZmVyc19hcmcsICpmYXN0LCAqcmV0dmFsID0gTlVMTDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xuaTpyZWN2bXNnX2ludG8iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmYnVmZmVyc19hcmcsICZhbmNidWZzaXplLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmICgoZmFzdCA9IFB5U2VxdWVuY2VfRmFzdChidWZmZXJzX2FyZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlY3Ztc2dfaW50bygpIGFyZ3VtZW50IDEgbXVzdCBiZSBhbiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVyYWJsZSIpKSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBuaXRlbXMgPSBQeVNlcXVlbmNlX0Zhc3RfR0VUX1NJWkUoZmFzdCk7CisgICAgaWYgKG5pdGVtcyA+IElOVF9NQVgpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJyZWN2bXNnX2ludG8oKSBhcmd1bWVudCAxIGlzIHRvbyBsb25nIik7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisKKyAgICAvKiBGaWxsIGluIGFuIGlvdmVjIGZvciBlYWNoIGl0ZW0sIGFuZCBzYXZlIHRoZSBQeV9idWZmZXIKKyAgICAgICBzdHJ1Y3RzIHRvIHJlbGVhc2UgYWZ0ZXJ3YXJkcy4gKi8KKyAgICBpZiAobml0ZW1zID4gMCAmJiAoKGlvdnMgPSBQeU1lbV9OZXcoc3RydWN0IGlvdmVjLCBuaXRlbXMpKSA9PSBOVUxMIHx8CisgICAgICAgICAgICAgICAgICAgICAgIChidWZzID0gUHlNZW1fTmV3KFB5X2J1ZmZlciwgbml0ZW1zKSkgPT0gTlVMTCkpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgZ290byBmaW5hbGx5OworICAgIH0KKyAgICBmb3IgKDsgbmJ1ZnMgPCBuaXRlbXM7IG5idWZzKyspIHsKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZShQeVNlcXVlbmNlX0Zhc3RfR0VUX0lURU0oZmFzdCwgbmJ1ZnMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJ3KjtyZWN2bXNnX2ludG8oKSBhcmd1bWVudCAxIG11c3QgYmUgYW4gaXRlcmFibGUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJvZiBzaW5nbGUtc2VnbWVudCByZWFkLXdyaXRlIGJ1ZmZlcnMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICZidWZzW25idWZzXSkpCisgICAgICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgICAgIGlvdnNbbmJ1ZnNdLmlvdl9iYXNlID0gYnVmc1tuYnVmc10uYnVmOworICAgICAgICBpb3ZzW25idWZzXS5pb3ZfbGVuID0gYnVmc1tuYnVmc10ubGVuOworICAgIH0KKworICAgIHJldHZhbCA9IHNvY2tfcmVjdm1zZ19ndXRzKHMsIGlvdnMsIG5pdGVtcywgZmxhZ3MsIGFuY2J1ZnNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1ha2V2YWxfcmVjdm1zZ19pbnRvLCBOVUxMKTsKK2ZpbmFsbHk6CisgICAgZm9yIChpID0gMDsgaSA8IG5idWZzOyBpKyspCisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJmJ1ZnNbaV0pOworICAgIFB5TWVtX0ZyZWUoYnVmcyk7CisgICAgUHlNZW1fRnJlZShpb3ZzKTsKKyAgICBQeV9ERUNSRUYoZmFzdCk7CisgICAgcmV0dXJuIHJldHZhbDsKK30KKworUHlEb2NfU1RSVkFSKHJlY3Ztc2dfaW50b19kb2MsCisicmVjdm1zZ19pbnRvKGJ1ZmZlcnNbLCBhbmNidWZzaXplWywgZmxhZ3NdXSkgLT4gKG5ieXRlcywgYW5jZGF0YSwgbXNnX2ZsYWdzLCBhZGRyZXNzKVxuXAorXG5cCitSZWNlaXZlIG5vcm1hbCBkYXRhIGFuZCBhbmNpbGxhcnkgZGF0YSBmcm9tIHRoZSBzb2NrZXQsIHNjYXR0ZXJpbmcgdGhlXG5cCitub24tYW5jaWxsYXJ5IGRhdGEgaW50byBhIHNlcmllcyBvZiBidWZmZXJzLiAgVGhlIGJ1ZmZlcnMgYXJndW1lbnRcblwKK211c3QgYmUgYW4gaXRlcmFibGUgb2Ygb2JqZWN0cyB0aGF0IGV4cG9ydCB3cml0YWJsZSBidWZmZXJzXG5cCisoZS5nLiBieXRlYXJyYXkgb2JqZWN0cyk7IHRoZXNlIHdpbGwgYmUgZmlsbGVkIHdpdGggc3VjY2Vzc2l2ZSBjaHVua3NcblwKK29mIHRoZSBub24tYW5jaWxsYXJ5IGRhdGEgdW50aWwgaXQgaGFzIGFsbCBiZWVuIHdyaXR0ZW4gb3IgdGhlcmUgYXJlXG5cCitubyBtb3JlIGJ1ZmZlcnMuICBUaGUgYW5jYnVmc2l6ZSBhcmd1bWVudCBzZXRzIHRoZSBzaXplIGluIGJ5dGVzIG9mXG5cCit0aGUgaW50ZXJuYWwgYnVmZmVyIHVzZWQgdG8gcmVjZWl2ZSB0aGUgYW5jaWxsYXJ5IGRhdGE7IGl0IGRlZmF1bHRzIHRvXG5cCiswLCBtZWFuaW5nIHRoYXQgbm8gYW5jaWxsYXJ5IGRhdGEgd2lsbCBiZSByZWNlaXZlZC4gIEFwcHJvcHJpYXRlXG5cCitidWZmZXIgc2l6ZXMgZm9yIGFuY2lsbGFyeSBkYXRhIGNhbiBiZSBjYWxjdWxhdGVkIHVzaW5nIENNU0dfU1BBQ0UoKVxuXAorb3IgQ01TR19MRU4oKSwgYW5kIGl0ZW1zIHdoaWNoIGRvIG5vdCBmaXQgaW50byB0aGUgYnVmZmVyIG1pZ2h0IGJlXG5cCit0cnVuY2F0ZWQgb3IgZGlzY2FyZGVkLiAgVGhlIGZsYWdzIGFyZ3VtZW50IGRlZmF1bHRzIHRvIDAgYW5kIGhhcyB0aGVcblwKK3NhbWUgbWVhbmluZyBhcyBmb3IgcmVjdigpLlxuXAorXG5cCitUaGUgcmV0dXJuIHZhbHVlIGlzIGEgNC10dXBsZTogKG5ieXRlcywgYW5jZGF0YSwgbXNnX2ZsYWdzLCBhZGRyZXNzKS5cblwKK1RoZSBuYnl0ZXMgaXRlbSBpcyB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIG9mIG5vbi1hbmNpbGxhcnkgZGF0YVxuXAord3JpdHRlbiBpbnRvIHRoZSBidWZmZXJzLiAgVGhlIGFuY2RhdGEgaXRlbSBpcyBhIGxpc3Qgb2YgemVybyBvciBtb3JlXG5cCit0dXBsZXMgKGNtc2dfbGV2ZWwsIGNtc2dfdHlwZSwgY21zZ19kYXRhKSByZXByZXNlbnRpbmcgdGhlIGFuY2lsbGFyeVxuXAorZGF0YSAoY29udHJvbCBtZXNzYWdlcykgcmVjZWl2ZWQ6IGNtc2dfbGV2ZWwgYW5kIGNtc2dfdHlwZSBhcmVcblwKK2ludGVnZXJzIHNwZWNpZnlpbmcgdGhlIHByb3RvY29sIGxldmVsIGFuZCBwcm90b2NvbC1zcGVjaWZpYyB0eXBlXG5cCityZXNwZWN0aXZlbHksIGFuZCBjbXNnX2RhdGEgaXMgYSBieXRlcyBvYmplY3QgaG9sZGluZyB0aGUgYXNzb2NpYXRlZFxuXAorZGF0YS4gIFRoZSBtc2dfZmxhZ3MgaXRlbSBpcyB0aGUgYml0d2lzZSBPUiBvZiB2YXJpb3VzIGZsYWdzXG5cCitpbmRpY2F0aW5nIGNvbmRpdGlvbnMgb24gdGhlIHJlY2VpdmVkIG1lc3NhZ2U7IHNlZSB5b3VyIHN5c3RlbVxuXAorZG9jdW1lbnRhdGlvbiBmb3IgZGV0YWlscy4gIElmIHRoZSByZWNlaXZpbmcgc29ja2V0IGlzIHVuY29ubmVjdGVkLFxuXAorYWRkcmVzcyBpcyB0aGUgYWRkcmVzcyBvZiB0aGUgc2VuZGluZyBzb2NrZXQsIGlmIGF2YWlsYWJsZTsgb3RoZXJ3aXNlLFxuXAoraXRzIHZhbHVlIGlzIHVuc3BlY2lmaWVkLlxuXAorXG5cCitJZiByZWN2bXNnX2ludG8oKSByYWlzZXMgYW4gZXhjZXB0aW9uIGFmdGVyIHRoZSBzeXN0ZW0gY2FsbCByZXR1cm5zLFxuXAoraXQgd2lsbCBmaXJzdCBhdHRlbXB0IHRvIGNsb3NlIGFueSBmaWxlIGRlc2NyaXB0b3JzIHJlY2VpdmVkIHZpYSB0aGVcblwKK1NDTV9SSUdIVFMgbWVjaGFuaXNtLiIpOworI2VuZGlmICAgIC8qIENNU0dfTEVOICovCisKKwogLyogcy5zZW5kKGRhdGEgWyxmbGFnc10pIG1ldGhvZCAqLwogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMjc3MSw2ICszNDMwLDcgQEAKICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgInNlbmR0bygpIHRha2VzIDIgb3IgMyBhcmd1bWVudHMgKCVkIGdpdmVuKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnbGVuKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yODE0LDYgKzM0NzQsMjM0IEBACiBGb3IgSVAgc29ja2V0cywgdGhlIGFkZHJlc3MgaXMgYSBwYWlyIChob3N0YWRkciwgcG9ydCkuIik7CiAKIAorLyogVGhlIHNlbmRtc2coKSBhbmQgcmVjdm1zZ1tfaW50b10oKSBtZXRob2RzIHJlcXVpcmUgYSB3b3JraW5nCisgICBDTVNHX0xFTigpLiAgU2VlIHRoZSBjb21tZW50IG5lYXIgZ2V0X0NNU0dfTEVOKCkuICovCisjaWZkZWYgQ01TR19MRU4KKy8qIHMuc2VuZG1zZyhidWZmZXJzWywgYW5jZGF0YVssIGZsYWdzWywgYWRkcmVzc11dXSkgbWV0aG9kICovCisKK3N0YXRpYyBQeU9iamVjdCAqCitzb2NrX3NlbmRtc2coUHlTb2NrZXRTb2NrT2JqZWN0ICpzLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeV9zc2l6ZV90IGksIG5kYXRhcGFydHMsIG5kYXRhYnVmcyA9IDAsIG5jbXNncywgbmNtc2didWZzID0gMDsKKyAgICBQeV9idWZmZXIgKmRhdGFidWZzID0gTlVMTDsKKyAgICBzdHJ1Y3QgaW92ZWMgKmlvdnMgPSBOVUxMOworICAgIHNvY2tfYWRkcl90IGFkZHJidWY7CisgICAgc3RydWN0IG1zZ2hkciBtc2cgPSB7MH07CisgICAgc3RydWN0IGNtc2dpbmZvIHsKKyAgICAgICAgaW50IGxldmVsOworICAgICAgICBpbnQgdHlwZTsKKyAgICAgICAgUHlfYnVmZmVyIGRhdGE7CisgICAgfSAqY21zZ3MgPSBOVUxMOworICAgIHZvaWQgKmNvbnRyb2xidWYgPSBOVUxMOworICAgIHNpemVfdCBjb250cm9sbGVuLCBjb250cm9sbGVuX2xhc3Q7CisgICAgc3NpemVfdCBieXRlc19zZW50ID0gLTE7CisgICAgaW50IGFkZHJsZW4sIHRpbWVvdXQsIGZsYWdzID0gMDsKKyAgICBQeU9iamVjdCAqZGF0YV9hcmcsICpjbXNnX2FyZyA9IE5VTEwsICphZGRyX2FyZyA9IE5VTEwsICpkYXRhX2Zhc3QgPSBOVUxMLAorICAgICAgICAqY21zZ19mYXN0ID0gTlVMTCwgKnJldHZhbCA9IE5VTEw7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98T2lPOnNlbmRtc2ciLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmZGF0YV9hcmcsICZjbXNnX2FyZywgJmZsYWdzLCAmYWRkcl9hcmcpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIC8qIFBhcnNlIGRlc3RpbmF0aW9uIGFkZHJlc3MuICovCisgICAgaWYgKGFkZHJfYXJnICE9IE5VTEwgJiYgYWRkcl9hcmcgIT0gUHlfTm9uZSkgeworICAgICAgICBpZiAoIWdldHNvY2thZGRyYXJnKHMsIGFkZHJfYXJnLCBTQVMyU0EoJmFkZHJidWYpLCAmYWRkcmxlbikpCisgICAgICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgICAgIG1zZy5tc2dfbmFtZSA9ICZhZGRyYnVmOworICAgICAgICBtc2cubXNnX25hbWVsZW4gPSBhZGRybGVuOworICAgIH0KKworICAgIC8qIEZpbGwgaW4gYW4gaW92ZWMgZm9yIGVhY2ggbWVzc2FnZSBwYXJ0LCBhbmQgc2F2ZSB0aGUgUHlfYnVmZmVyCisgICAgICAgc3RydWN0cyB0byByZWxlYXNlIGFmdGVyd2FyZHMuICovCisgICAgaWYgKChkYXRhX2Zhc3QgPSBQeVNlcXVlbmNlX0Zhc3QoZGF0YV9hcmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNlbmRtc2coKSBhcmd1bWVudCAxIG11c3QgYmUgYW4gIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVyYWJsZSIpKSA9PSBOVUxMKQorICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgbmRhdGFwYXJ0cyA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfU0laRShkYXRhX2Zhc3QpOworICAgIGlmIChuZGF0YXBhcnRzID4gSU5UX01BWCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgInNlbmRtc2coKSBhcmd1bWVudCAxIGlzIHRvbyBsb25nIik7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisgICAgbXNnLm1zZ19pb3ZsZW4gPSBuZGF0YXBhcnRzOworICAgIGlmIChuZGF0YXBhcnRzID4gMCAmJgorICAgICAgICAoKG1zZy5tc2dfaW92ID0gaW92cyA9IFB5TWVtX05ldyhzdHJ1Y3QgaW92ZWMsIG5kYXRhcGFydHMpKSA9PSBOVUxMIHx8CisgICAgICAgICAoZGF0YWJ1ZnMgPSBQeU1lbV9OZXcoUHlfYnVmZmVyLCBuZGF0YXBhcnRzKSkgPT0gTlVMTCkpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgZ290byBmaW5hbGx5OworICAgIH0KKyAgICBmb3IgKDsgbmRhdGFidWZzIDwgbmRhdGFwYXJ0czsgbmRhdGFidWZzKyspIHsKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZShQeVNlcXVlbmNlX0Zhc3RfR0VUX0lURU0oZGF0YV9mYXN0LCBuZGF0YWJ1ZnMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJ5KjtzZW5kbXNnKCkgYXJndW1lbnQgMSBtdXN0IGJlIGFuIGl0ZXJhYmxlIG9mICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAiYnVmZmVyLWNvbXBhdGlibGUgb2JqZWN0cyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgJmRhdGFidWZzW25kYXRhYnVmc10pKQorICAgICAgICAgICAgZ290byBmaW5hbGx5OworICAgICAgICBpb3ZzW25kYXRhYnVmc10uaW92X2Jhc2UgPSBkYXRhYnVmc1tuZGF0YWJ1ZnNdLmJ1ZjsKKyAgICAgICAgaW92c1tuZGF0YWJ1ZnNdLmlvdl9sZW4gPSBkYXRhYnVmc1tuZGF0YWJ1ZnNdLmxlbjsKKyAgICB9CisKKyAgICBpZiAoY21zZ19hcmcgPT0gTlVMTCkKKyAgICAgICAgbmNtc2dzID0gMDsKKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKChjbXNnX2Zhc3QgPSBQeVNlcXVlbmNlX0Zhc3QoY21zZ19hcmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzZW5kbXNnKCkgYXJndW1lbnQgMiBtdXN0IGJlIGFuICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIml0ZXJhYmxlIikpID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgICAgIG5jbXNncyA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfU0laRShjbXNnX2Zhc3QpOworICAgIH0KKworI2lmbmRlZiBDTVNHX1NQQUNFCisgICAgaWYgKG5jbXNncyA+IDEpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAic2VuZGluZyBtdWx0aXBsZSBjb250cm9sIG1lc3NhZ2VzIGlzIG5vdCBzdXBwb3J0ZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgIm9uIHRoaXMgc3lzdGVtIik7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisjZW5kaWYKKyAgICAvKiBTYXZlIGxldmVsLCB0eXBlIGFuZCBQeV9idWZmZXIgZm9yIGVhY2ggY29udHJvbCBtZXNzYWdlLAorICAgICAgIGFuZCBjYWxjdWxhdGUgdG90YWwgc2l6ZS4gKi8KKyAgICBpZiAobmNtc2dzID4gMCAmJiAoY21zZ3MgPSBQeU1lbV9OZXcoc3RydWN0IGNtc2dpbmZvLCBuY21zZ3MpKSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisgICAgY29udHJvbGxlbiA9IGNvbnRyb2xsZW5fbGFzdCA9IDA7CisgICAgd2hpbGUgKG5jbXNnYnVmcyA8IG5jbXNncykgeworICAgICAgICBzaXplX3QgYnVmc2l6ZSwgc3BhY2U7CisKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZShQeVNlcXVlbmNlX0Zhc3RfR0VUX0lURU0oY21zZ19mYXN0LCBuY21zZ2J1ZnMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICIoaWl5Kik6W3NlbmRtc2coKSBhbmNpbGxhcnkgZGF0YSBpdGVtc10iLAorICAgICAgICAgICAgICAgICAgICAgICAgICZjbXNnc1tuY21zZ2J1ZnNdLmxldmVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICZjbXNnc1tuY21zZ2J1ZnNdLnR5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgJmNtc2dzW25jbXNnYnVmc10uZGF0YSkpCisgICAgICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgICAgIGJ1ZnNpemUgPSBjbXNnc1tuY21zZ2J1ZnMrK10uZGF0YS5sZW47CisKKyNpZmRlZiBDTVNHX1NQQUNFCisgICAgICAgIGlmICghZ2V0X0NNU0dfU1BBQ0UoYnVmc2l6ZSwgJnNwYWNlKSkgeworI2Vsc2UKKyAgICAgICAgaWYgKCFnZXRfQ01TR19MRU4oYnVmc2l6ZSwgJnNwYWNlKSkgeworI2VuZGlmCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImFuY2lsbGFyeSBkYXRhIGl0ZW0gdG9vIGxhcmdlIik7CisgICAgICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgICAgIH0KKyAgICAgICAgY29udHJvbGxlbiArPSBzcGFjZTsKKyAgICAgICAgaWYgKGNvbnRyb2xsZW4gPiBTT0NLTEVOX1RfTElNSVQgfHwgY29udHJvbGxlbiA8IGNvbnRyb2xsZW5fbGFzdCkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJ0b28gbXVjaCBhbmNpbGxhcnkgZGF0YSIpOworICAgICAgICAgICAgZ290byBmaW5hbGx5OworICAgICAgICB9CisgICAgICAgIGNvbnRyb2xsZW5fbGFzdCA9IGNvbnRyb2xsZW47CisgICAgfQorCisgICAgLyogQ29uc3RydWN0IGFuY2lsbGFyeSBkYXRhIGJsb2NrIGZyb20gY29udHJvbCBtZXNzYWdlIGluZm8uICovCisgICAgaWYgKG5jbXNnYnVmcyA+IDApIHsKKyAgICAgICAgc3RydWN0IGNtc2doZHIgKmNtc2doID0gTlVMTDsKKworICAgICAgICBpZiAoKG1zZy5tc2dfY29udHJvbCA9IGNvbnRyb2xidWYgPQorICAgICAgICAgICAgIFB5TWVtX01hbGxvYyhjb250cm9sbGVuKSkgPT0gTlVMTCkgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICAgICAgfQorICAgICAgICBtc2cubXNnX2NvbnRyb2xsZW4gPSBjb250cm9sbGVuOworCisgICAgICAgIC8qIE5lZWQgdG8gemVybyBvdXQgdGhlIGJ1ZmZlciBhcyBhIHdvcmthcm91bmQgZm9yIGdsaWJjJ3MKKyAgICAgICAgICAgQ01TR19OWFRIRFIoKSBpbXBsZW1lbnRhdGlvbi4gIEFmdGVyIGdldHRpbmcgdGhlIHBvaW50ZXIgdG8KKyAgICAgICAgICAgdGhlIG5leHQgaGVhZGVyLCBpdCBjaGVja3MgaXRzICh1bmluaXRpYWxpemVkKSBjbXNnX2xlbgorICAgICAgICAgICBtZW1iZXIgdG8gc2VlIGlmIHRoZSAibWVzc2FnZSIgZml0cyBpbiB0aGUgYnVmZmVyLCBhbmQKKyAgICAgICAgICAgcmV0dXJucyBOVUxMIGlmIGl0IGRvZXNuJ3QuICBaZXJvLWZpbGxpbmcgdGhlIGJ1ZmZlcgorICAgICAgICAgICBlbnN1cmVzIHRoYXQgdGhhdCBkb2Vzbid0IGhhcHBlbi4gKi8KKyAgICAgICAgbWVtc2V0KGNvbnRyb2xidWYsIDAsIGNvbnRyb2xsZW4pOworCisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuY21zZ2J1ZnM7IGkrKykgeworICAgICAgICAgICAgc2l6ZV90IG1zZ19sZW4sIGRhdGFfbGVuID0gY21zZ3NbaV0uZGF0YS5sZW47CisgICAgICAgICAgICBpbnQgZW5vdWdoX3NwYWNlID0gMDsKKworICAgICAgICAgICAgY21zZ2ggPSAoaSA9PSAwKSA/IENNU0dfRklSU1RIRFIoJm1zZykgOiBDTVNHX05YVEhEUigmbXNnLCBjbXNnaCk7CisgICAgICAgICAgICBpZiAoY21zZ2ggPT0gTlVMTCkgeworICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1bmV4cGVjdGVkIE5VTEwgcmVzdWx0IGZyb20gJXMoKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpID09IDApID8gIkNNU0dfRklSU1RIRFIiIDogIkNNU0dfTlhUSERSIik7CisgICAgICAgICAgICAgICAgZ290byBmaW5hbGx5OworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKCFnZXRfQ01TR19MRU4oZGF0YV9sZW4sICZtc2dfbGVuKSkgeworICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVtIHNpemUgb3V0IG9mIHJhbmdlIGZvciBDTVNHX0xFTigpIik7CisgICAgICAgICAgICAgICAgZ290byBmaW5hbGx5OworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGNtc2dfbWluX3NwYWNlKCZtc2csIGNtc2doLCBtc2dfbGVuKSkgeworICAgICAgICAgICAgICAgIHNpemVfdCBzcGFjZTsKKworICAgICAgICAgICAgICAgIGNtc2doLT5jbXNnX2xlbiA9IG1zZ19sZW47CisgICAgICAgICAgICAgICAgaWYgKGdldF9jbXNnX2RhdGFfc3BhY2UoJm1zZywgY21zZ2gsICZzcGFjZSkpCisgICAgICAgICAgICAgICAgICAgIGVub3VnaF9zcGFjZSA9IChzcGFjZSA+PSBkYXRhX2xlbik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoIWVub3VnaF9zcGFjZSkgeworICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbmNpbGxhcnkgZGF0YSBkb2VzIG5vdCBmaXQgaW4gY2FsY3VsYXRlZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGFjZSIpOworICAgICAgICAgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNtc2doLT5jbXNnX2xldmVsID0gY21zZ3NbaV0ubGV2ZWw7CisgICAgICAgICAgICBjbXNnaC0+Y21zZ190eXBlID0gY21zZ3NbaV0udHlwZTsKKyAgICAgICAgICAgIG1lbWNweShDTVNHX0RBVEEoY21zZ2gpLCBjbXNnc1tpXS5kYXRhLmJ1ZiwgZGF0YV9sZW4pOworICAgICAgICB9CisgICAgfQorCisgICAgLyogTWFrZSB0aGUgc3lzdGVtIGNhbGwuICovCisgICAgaWYgKCFJU19TRUxFQ1RBQkxFKHMpKSB7CisgICAgICAgIHNlbGVjdF9lcnJvcigpOworICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgfQorCisgICAgQkVHSU5fU0VMRUNUX0xPT1AocykKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIHRpbWVvdXQgPSBpbnRlcm5hbF9zZWxlY3RfZXgocywgMSwgaW50ZXJ2YWwpOworICAgIGlmICghdGltZW91dCkKKyAgICAgICAgYnl0ZXNfc2VudCA9IHNlbmRtc2cocy0+c29ja19mZCwgJm1zZywgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIGlmICh0aW1lb3V0ID09IDEpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF90aW1lb3V0LCAidGltZWQgb3V0Iik7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisgICAgRU5EX1NFTEVDVF9MT09QKHMpCisKKyAgICBpZiAoYnl0ZXNfc2VudCA8IDApIHsKKyAgICAgICAgcy0+ZXJyb3JoYW5kbGVyKCk7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisgICAgcmV0dmFsID0gUHlMb25nX0Zyb21Tc2l6ZV90KGJ5dGVzX3NlbnQpOworCitmaW5hbGx5OgorICAgIFB5TWVtX0ZyZWUoY29udHJvbGJ1Zik7CisgICAgZm9yIChpID0gMDsgaSA8IG5jbXNnYnVmczsgaSsrKQorICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZjbXNnc1tpXS5kYXRhKTsKKyAgICBQeU1lbV9GcmVlKGNtc2dzKTsKKyAgICBQeV9YREVDUkVGKGNtc2dfZmFzdCk7CisgICAgZm9yIChpID0gMDsgaSA8IG5kYXRhYnVmczsgaSsrKQorICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZkYXRhYnVmc1tpXSk7CisgICAgUHlNZW1fRnJlZShkYXRhYnVmcyk7CisgICAgUHlNZW1fRnJlZShpb3ZzKTsKKyAgICBQeV9YREVDUkVGKGRhdGFfZmFzdCk7CisgICAgcmV0dXJuIHJldHZhbDsKK30KKworUHlEb2NfU1RSVkFSKHNlbmRtc2dfZG9jLAorInNlbmRtc2coYnVmZmVyc1ssIGFuY2RhdGFbLCBmbGFnc1ssIGFkZHJlc3NdXV0pIC0+IGNvdW50XG5cCitcblwKK1NlbmQgbm9ybWFsIGFuZCBhbmNpbGxhcnkgZGF0YSB0byB0aGUgc29ja2V0LCBnYXRoZXJpbmcgdGhlXG5cCitub24tYW5jaWxsYXJ5IGRhdGEgZnJvbSBhIHNlcmllcyBvZiBidWZmZXJzIGFuZCBjb25jYXRlbmF0aW5nIGl0IGludG9cblwKK2Egc2luZ2xlIG1lc3NhZ2UuICBUaGUgYnVmZmVycyBhcmd1bWVudCBzcGVjaWZpZXMgdGhlIG5vbi1hbmNpbGxhcnlcblwKK2RhdGEgYXMgYW4gaXRlcmFibGUgb2YgYnVmZmVyLWNvbXBhdGlibGUgb2JqZWN0cyAoZS5nLiBieXRlcyBvYmplY3RzKS5cblwKK1RoZSBhbmNkYXRhIGFyZ3VtZW50IHNwZWNpZmllcyB0aGUgYW5jaWxsYXJ5IGRhdGEgKGNvbnRyb2wgbWVzc2FnZXMpXG5cCithcyBhbiBpdGVyYWJsZSBvZiB6ZXJvIG9yIG1vcmUgdHVwbGVzIChjbXNnX2xldmVsLCBjbXNnX3R5cGUsXG5cCitjbXNnX2RhdGEpLCB3aGVyZSBjbXNnX2xldmVsIGFuZCBjbXNnX3R5cGUgYXJlIGludGVnZXJzIHNwZWNpZnlpbmcgdGhlXG5cCitwcm90b2NvbCBsZXZlbCBhbmQgcHJvdG9jb2wtc3BlY2lmaWMgdHlwZSByZXNwZWN0aXZlbHksIGFuZCBjbXNnX2RhdGFcblwKK2lzIGEgYnVmZmVyLWNvbXBhdGlibGUgb2JqZWN0IGhvbGRpbmcgdGhlIGFzc29jaWF0ZWQgZGF0YS4gIFRoZSBmbGFnc1xuXAorYXJndW1lbnQgZGVmYXVsdHMgdG8gMCBhbmQgaGFzIHRoZSBzYW1lIG1lYW5pbmcgYXMgZm9yIHNlbmQoKS4gIElmXG5cCithZGRyZXNzIGlzIHN1cHBsaWVkIGFuZCBub3QgTm9uZSwgaXQgc2V0cyBhIGRlc3RpbmF0aW9uIGFkZHJlc3MgZm9yXG5cCit0aGUgbWVzc2FnZS4gIFRoZSByZXR1cm4gdmFsdWUgaXMgdGhlIG51bWJlciBvZiBieXRlcyBvZiBub24tYW5jaWxsYXJ5XG5cCitkYXRhIHNlbnQuIik7CisjZW5kaWYgICAgLyogQ01TR19MRU4gKi8KKworCiAvKiBzLnNodXRkb3duKGhvdykgbWV0aG9kICovCiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0yOTQwLDYgKzM4MjgsMTQgQEAKICAgICAgICAgICAgICAgICAgICAgICBzZXRzb2Nrb3B0X2RvY30sCiAgICAgeyJzaHV0ZG93biIsICAgICAgICAgIChQeUNGdW5jdGlvbilzb2NrX3NodXRkb3duLCBNRVRIX08sCiAgICAgICAgICAgICAgICAgICAgICAgc2h1dGRvd25fZG9jfSwKKyNpZmRlZiBDTVNHX0xFTgorICAgIHsicmVjdm1zZyIsICAgICAgICAgICAoUHlDRnVuY3Rpb24pc29ja19yZWN2bXNnLCBNRVRIX1ZBUkFSR1MsCisgICAgICAgICAgICAgICAgICAgICAgcmVjdm1zZ19kb2N9LAorICAgIHsicmVjdm1zZ19pbnRvIiwgICAgICAoUHlDRnVuY3Rpb24pc29ja19yZWN2bXNnX2ludG8sIE1FVEhfVkFSQVJHUywKKyAgICAgICAgICAgICAgICAgICAgICByZWN2bXNnX2ludG9fZG9jLH0sCisgICAgeyJzZW5kbXNnIiwgICAgICAgICAgIChQeUNGdW5jdGlvbilzb2NrX3NlbmRtc2csIE1FVEhfVkFSQVJHUywKKyAgICAgICAgICAgICAgICAgICAgICBzZW5kbXNnX2RvY30sCisjZW5kaWYKICAgICB7TlVMTCwgICAgICAgICAgICAgICAgICAgICAgTlVMTH0gICAgICAgICAgIC8qIHNlbnRpbmVsICovCiB9OwogCkBAIC0zMTE1LDI1ICs0MDExLDM1IEBACiAgICAgICAgdmVyc2lvbiBvZiB0aGUgaG9zdG5hbWUsIHdoZXJlYXMgd2UgbmVlZCBhIFVuaWNvZGUgc3RyaW5nLgogICAgICAgIE90aGVyd2lzZSwgZ2V0aG9zdG5hbWUgYXBwYXJlbnRseSBhbHNvIHJldHVybnMgdGhlIEROUyBuYW1lLiAqLwogICAgIHdjaGFyX3QgYnVmW01BWF9DT01QVVRFUk5BTUVfTEVOR1RIICsgMV07Ci0gICAgRFdPUkQgc2l6ZSA9IHNpemVvZihidWYpIC8gc2l6ZW9mKHdjaGFyX3QpOworICAgIERXT1JEIHNpemUgPSBQeV9BUlJBWV9MRU5HVEgoYnVmKTsKKyAgICB3Y2hhcl90ICpuYW1lOwogICAgIFB5T2JqZWN0ICpyZXN1bHQ7Ci0gICAgaWYgKCFHZXRDb21wdXRlck5hbWVFeFcoQ29tcHV0ZXJOYW1lUGh5c2ljYWxEbnNIb3N0bmFtZSwgYnVmLCAmc2l6ZSkpIHsKLSAgICAgICAgaWYgKEdldExhc3RFcnJvcigpID09IEVSUk9SX01PUkVfREFUQSkgewotICAgICAgICAgICAgLyogTVNETiBzYXlzIHRoaXMgbWF5IG9jY3VyICJiZWNhdXNlIEROUyBhbGxvd3MgbG9uZ2VyIG5hbWVzICovCi0gICAgICAgICAgICBpZiAoc2l6ZSA9PSAwKSAvKiBYWFg6IEknbSBub3Qgc3VyZSBob3cgdG8gaGFuZGxlIHRoaXMgKi8KLSAgICAgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIDApOwotICAgICAgICAgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHNpemUgLSAxKTsKLSAgICAgICAgICAgIGlmICghcmVzdWx0KQotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgaWYgKEdldENvbXB1dGVyTmFtZUV4VyhDb21wdXRlck5hbWVQaHlzaWNhbERuc0hvc3RuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2l6ZSkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwotICAgICAgICB9Ci0gICAgICAgIHJldHVybiBQeUVycl9TZXRFeGNGcm9tV2luZG93c0VycihQeUV4Y19XaW5kb3dzRXJyb3IsIEdldExhc3RFcnJvcigpKTsKKworICAgIGlmIChHZXRDb21wdXRlck5hbWVFeFcoQ29tcHV0ZXJOYW1lUGh5c2ljYWxEbnNIb3N0bmFtZSwgYnVmLCAmc2l6ZSkpCisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKGJ1Ziwgc2l6ZSk7CisKKyAgICBpZiAoR2V0TGFzdEVycm9yKCkgIT0gRVJST1JfTU9SRV9EQVRBKQorICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoMCk7CisKKyAgICBpZiAoc2l6ZSA9PSAwKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX05ldygwLCAwKTsKKworICAgIC8qIE1TRE4gc2F5cyBFUlJPUl9NT1JFX0RBVEEgbWF5IG9jY3VyIGJlY2F1c2UgRE5TIGFsbG93cyBsb25nZXIKKyAgICAgICBuYW1lcyAqLworICAgIG5hbWUgPSBQeU1lbV9NYWxsb2Moc2l6ZSAqIHNpemVvZih3Y2hhcl90KSk7CisgICAgaWYgKCFuYW1lKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIUdldENvbXB1dGVyTmFtZUV4VyhDb21wdXRlck5hbWVQaHlzaWNhbERuc0hvc3RuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICZzaXplKSkKKyAgICB7CisgICAgICAgIFB5TWVtX0ZyZWUobmFtZSk7CisgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tV2luZG93c0VycigwKTsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShidWYsIHNpemUpOyAgICAgICAgICAgIAorCisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihuYW1lLCBzaXplKTsKKyAgICBQeU1lbV9GcmVlKG5hbWUpOworICAgIHJldHVybiByZXN1bHQ7CiAjZWxzZQogICAgIGNoYXIgYnVmWzEwMjRdOwogICAgIGludCByZXM7CkBAIC0zMTUyLDYgKzQwNTgsMzcgQEAKIFxuXAogUmV0dXJuIHRoZSBjdXJyZW50IGhvc3QgbmFtZS4iKTsKIAorI2lmZGVmIEhBVkVfU0VUSE9TVE5BTUUKK1B5RG9jX1NUUlZBUihzZXRob3N0bmFtZV9kb2MsCisic2V0aG9zdG5hbWUobmFtZSlcblxuXAorU2V0cyB0aGUgaG9zdG5hbWUgdG8gbmFtZS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3NvY2tldF9zZXRob3N0bmFtZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKmhub2JqOworICAgIFB5X2J1ZmZlciBidWY7CisgICAgaW50IHJlcywgZmxhZyA9IDA7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlM6c2V0aG9zdG5hbWUiLCAmaG5vYmopKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6c2V0aG9zdG5hbWUiLAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJmhub2JqKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBmbGFnID0gMTsKKyAgICB9CisgICAgcmVzID0gUHlPYmplY3RfR2V0QnVmZmVyKGhub2JqLCAmYnVmLCBQeUJVRl9TSU1QTEUpOworICAgIGlmICghcmVzKSB7CisgICAgICAgIHJlcyA9IHNldGhvc3RuYW1lKGJ1Zi5idWYsIGJ1Zi5sZW4pOworICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZidWYpOworICAgIH0KKyAgICBpZiAoZmxhZykKKyAgICAgICAgUHlfREVDUkVGKGhub2JqKTsKKyAgICBpZiAocmVzKQorICAgICAgICByZXR1cm4gc2V0X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKIAogLyogUHl0aG9uIGludGVyZmFjZSB0byBnZXRob3N0YnluYW1lKG5hbWUpLiAqLwogCkBAIC0zMTk4LDkgKzQxMzUsOCBAQAogCiAgICAgaWYgKGgtPmhfYWRkcnR5cGUgIT0gYWYpIHsKICAgICAgICAgLyogTGV0J3MgZ2V0IHJlYWwgZXJyb3IgbWVzc2FnZSB0byByZXR1cm4gKi8KLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgIChjaGFyICopc3RyZXJyb3IoRUFGTk9TVVBQT1JUKSk7Ci0KKyAgICAgICAgZXJybm8gPSBFQUZOT1NVUFBPUlQ7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCkBAIC0zMjgzLDcgKzQyMTksNyBAQAogI2VuZGlmCiAKICAgICAgICAgZGVmYXVsdDogICAgICAgICAgICAgICAgLyogY2FuJ3QgaGFwcGVuICovCi0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVuc3VwcG9ydGVkIGFkZHJlc3MgZmFtaWx5Iik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQpAQCAtMzMxNSwxMSArNDI1MSw3IEBACiB7CiAgICAgY2hhciAqbmFtZTsKICAgICBzdHJ1Y3QgaG9zdGVudCAqaDsKLSNpZmRlZiBFTkFCTEVfSVBWNgotICAgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIGFkZHI7Ci0jZWxzZQotICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyOwotI2VuZGlmCisgICAgc29ja19hZGRyX3QgYWRkcjsKICAgICBzdHJ1Y3Qgc29ja2FkZHIgKnNhOwogICAgIFB5T2JqZWN0ICpyZXQgPSBOVUxMOwogI2lmZGVmIEhBVkVfR0VUSE9TVEJZTkFNRV9SCkBAIC0zMzMxLDE5ICs0MjYzLDE5IEBACiAgICAgaW50IGJ1Zl9sZW4gPSAoc2l6ZW9mIGJ1ZikgLSAxOwogICAgIGludCBlcnJub3A7CiAjZW5kaWYKLSNpZiBkZWZpbmVkKEhBVkVfR0VUSE9TVEJZTkFNRV9SXzNfQVJHKSB8fCBkZWZpbmVkKEhBVkVfR0VUSE9TVEJZTkFNRV9SXzZfQVJHKQorI2lmZGVmIEhBVkVfR0VUSE9TVEJZTkFNRV9SXzNfQVJHCiAgICAgaW50IHJlc3VsdDsKICNlbmRpZgogI2VuZGlmIC8qIEhBVkVfR0VUSE9TVEJZTkFNRV9SICovCiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImV0OmdldGhvc3RieW5hbWVfZXgiLCAiaWRuYSIsICZuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaWYgKHNldGlwYWRkcihuYW1lLCAoc3RydWN0IHNvY2thZGRyICopJmFkZHIsIHNpemVvZihhZGRyKSwgQUZfSU5FVCkgPCAwKQorICAgIGlmIChzZXRpcGFkZHIobmFtZSwgU0FTMlNBKCZhZGRyKSwgc2l6ZW9mKGFkZHIpLCBBRl9JTkVUKSA8IDApCiAgICAgICAgIGdvdG8gZmluYWxseTsKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAjaWZkZWYgSEFWRV9HRVRIT1NUQllOQU1FX1IKICNpZiAgIGRlZmluZWQoSEFWRV9HRVRIT1NUQllOQU1FX1JfNl9BUkcpCi0gICAgcmVzdWx0ID0gZ2V0aG9zdGJ5bmFtZV9yKG5hbWUsICZocF9hbGxvY2F0ZWQsIGJ1ZiwgYnVmX2xlbiwKKyAgICBnZXRob3N0YnluYW1lX3IobmFtZSwgJmhwX2FsbG9jYXRlZCwgYnVmLCBidWZfbGVuLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmaCwgJmVycm5vcCk7CiAjZWxpZiBkZWZpbmVkKEhBVkVfR0VUSE9TVEJZTkFNRV9SXzVfQVJHKQogICAgIGggPSBnZXRob3N0YnluYW1lX3IobmFtZSwgJmhwX2FsbG9jYXRlZCwgYnVmLCBidWZfbGVuLCAmZXJybm9wKTsKQEAgLTMzNjMsOCArNDI5NSw4IEBACiAgICAgICAgYWRkci5zc19mYW1pbHkuCiAgICAgICAgVGhlcmVmb3JlLCB3ZSBjYXN0IHRoZSBzb2NrYWRkcl9zdG9yYWdlIGludG8gc29ja2FkZHIgdG8KICAgICAgICBhY2Nlc3Mgc2FfZmFtaWx5LiAqLwotICAgIHNhID0gKHN0cnVjdCBzb2NrYWRkciopJmFkZHI7Ci0gICAgcmV0ID0gZ2V0aG9zdF9jb21tb24oaCwgKHN0cnVjdCBzb2NrYWRkciAqKSZhZGRyLCBzaXplb2YoYWRkciksCisgICAgc2EgPSBTQVMyU0EoJmFkZHIpOworICAgIHJldCA9IGdldGhvc3RfY29tbW9uKGgsIFNBUzJTQSgmYWRkciksIHNpemVvZihhZGRyKSwKICAgICAgICAgICAgICAgICAgICAgICAgICBzYS0+c2FfZmFtaWx5KTsKICNpZmRlZiBVU0VfR0VUSE9TVEJZTkFNRV9MT0NLCiAgICAgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKG5ldGRiX2xvY2spOwpAQCAtMzM4NywxMiArNDMxOSw4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc29ja2V0X2dldGhvc3RieWFkZHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotI2lmZGVmIEVOQUJMRV9JUFY2Ci0gICAgc3RydWN0IHNvY2thZGRyX3N0b3JhZ2UgYWRkcjsKLSNlbHNlCi0gICAgc3RydWN0IHNvY2thZGRyX2luIGFkZHI7Ci0jZW5kaWYKLSAgICBzdHJ1Y3Qgc29ja2FkZHIgKnNhID0gKHN0cnVjdCBzb2NrYWRkciAqKSZhZGRyOworICAgIHNvY2tfYWRkcl90IGFkZHI7CisgICAgc3RydWN0IHNvY2thZGRyICpzYSA9IFNBUzJTQSgmYWRkcik7CiAgICAgY2hhciAqaXBfbnVtOwogICAgIHN0cnVjdCBob3N0ZW50ICpoOwogICAgIFB5T2JqZWN0ICpyZXQgPSBOVUxMOwpAQCAtMzQwOSw3ICs0MzM3LDcgQEAKICAgICBpbnQgYnVmX2xlbiA9IChzaXplb2YgYnVmKSAtIDE7CiAgICAgaW50IGVycm5vcDsKICNlbmRpZgotI2lmIGRlZmluZWQoSEFWRV9HRVRIT1NUQllOQU1FX1JfM19BUkcpIHx8IGRlZmluZWQoSEFWRV9HRVRIT1NUQllOQU1FX1JfNl9BUkcpCisjaWZkZWYgSEFWRV9HRVRIT1NUQllOQU1FX1JfM19BUkcKICAgICBpbnQgcmVzdWx0OwogI2VuZGlmCiAjZW5kaWYgLyogSEFWRV9HRVRIT1NUQllOQU1FX1IgKi8KQEAgLTM0MjQsNyArNDM1Miw3IEBACiAgICAgICAgIGdvdG8gZmluYWxseTsKICAgICBhZiA9IHNhLT5zYV9mYW1pbHk7CiAgICAgYXAgPSBOVUxMOwotICAgIGFsID0gMDsKKyAgICAvKiBhbCA9IDA7ICovCiAgICAgc3dpdGNoIChhZikgewogICAgIGNhc2UgQUZfSU5FVDoKICAgICAgICAgYXAgPSAoY2hhciAqKSYoKHN0cnVjdCBzb2NrYWRkcl9pbiAqKXNhKS0+c2luX2FkZHI7CkBAIC0zNDM3LDEzICs0MzY1LDEzIEBACiAgICAgICAgIGJyZWFrOwogI2VuZGlmCiAgICAgZGVmYXVsdDoKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgInVuc3VwcG9ydGVkIGFkZHJlc3MgZmFtaWx5Iik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAidW5zdXBwb3J0ZWQgYWRkcmVzcyBmYW1pbHkiKTsKICAgICAgICAgZ290byBmaW5hbGx5OwogICAgIH0KICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAjaWZkZWYgSEFWRV9HRVRIT1NUQllOQU1FX1IKICNpZiAgIGRlZmluZWQoSEFWRV9HRVRIT1NUQllOQU1FX1JfNl9BUkcpCi0gICAgcmVzdWx0ID0gZ2V0aG9zdGJ5YWRkcl9yKGFwLCBhbCwgYWYsCisgICAgZ2V0aG9zdGJ5YWRkcl9yKGFwLCBhbCwgYWYsCiAgICAgICAgICZocF9hbGxvY2F0ZWQsIGJ1ZiwgYnVmX2xlbiwKICAgICAgICAgJmgsICZlcnJub3ApOwogI2VsaWYgZGVmaW5lZChIQVZFX0dFVEhPU1RCWU5BTUVfUl81X0FSRykKQEAgLTM0NjEsNyArNDM4OSw3IEBACiAgICAgaCA9IGdldGhvc3RieWFkZHIoYXAsIGFsLCBhZik7CiAjZW5kaWYgLyogSEFWRV9HRVRIT1NUQllOQU1FX1IgKi8KICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIHJldCA9IGdldGhvc3RfY29tbW9uKGgsIChzdHJ1Y3Qgc29ja2FkZHIgKikmYWRkciwgc2l6ZW9mKGFkZHIpLCBhZik7CisgICAgcmV0ID0gZ2V0aG9zdF9jb21tb24oaCwgU0FTMlNBKCZhZGRyKSwgc2l6ZW9mKGFkZHIpLCBhZik7CiAjaWZkZWYgVVNFX0dFVEhPU1RCWU5BTUVfTE9DSwogICAgIFB5VGhyZWFkX3JlbGVhc2VfbG9jayhuZXRkYl9sb2NrKTsKICNlbmRpZgpAQCAtMzQ5Myw3ICs0NDIxLDcgQEAKICAgICBzcCA9IGdldHNlcnZieW5hbWUobmFtZSwgcHJvdG8pOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgaWYgKHNwID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgInNlcnZpY2UvcHJvdG8gbm90IGZvdW5kIik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAic2VydmljZS9wcm90byBub3QgZm91bmQiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpIG50b2hzKHNwLT5zX3BvcnQpKTsKQEAgLTM1MzAsNyArNDQ1OCw3IEBACiAgICAgc3AgPSBnZXRzZXJ2Ynlwb3J0KGh0b25zKChzaG9ydClwb3J0KSwgcHJvdG8pOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgaWYgKHNwID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgInBvcnQvcHJvdG8gbm90IGZvdW5kIik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAicG9ydC9wcm90byBub3QgZm91bmQiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhzcC0+c19uYW1lKTsKQEAgLTM1NTksNyArNDQ4Nyw3IEBACiAgICAgc3AgPSBnZXRwcm90b2J5bmFtZShuYW1lKTsKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChzcCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsICJwcm90b2NvbCBub3QgZm91bmQiKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJwcm90b2NvbCBub3QgZm91bmQiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpIHNwLT5wX3Byb3RvKTsKQEAgLTM4MTQsNyArNDc0Miw3IEBACiAgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKChjaGFyICopKCZidWYpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGJ1ZikpOwogCi0gICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwKKyAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICAgICAgICAgImlsbGVnYWwgSVAgYWRkcmVzcyBzdHJpbmcgcGFzc2VkIHRvIGluZXRfYXRvbiIpOwogICAgIHJldHVybiBOVUxMOwogCkBAIC0zODM1LDcgKzQ3NjMsNyBAQAogICAgICAgICBwYWNrZWRfYWRkciA9IGluZXRfYWRkcihpcF9hZGRyKTsKIAogICAgICAgICBpZiAocGFja2VkX2FkZHIgPT0gSU5BRERSX05PTkUpIHsgICAgICAgICAgICAgICAvKiBpbnZhbGlkIGFkZHJlc3MgKi8KLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICAgICAiaWxsZWdhbCBJUCBhZGRyZXNzIHN0cmluZyBwYXNzZWQgdG8gaW5ldF9hdG9uIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQpAQCAtMzg2Nyw3ICs0Nzk1LDcgQEAKICAgICB9CiAKICAgICBpZiAoYWRkcl9sZW4gIT0gc2l6ZW9mKHBhY2tlZF9hZGRyKSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICJwYWNrZWQgSVAgd3JvbmcgbGVuZ3RoIGZvciBpbmV0X250b2EiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMzkwMiw3ICs0ODMwLDcgQEAKIAogI2lmICFkZWZpbmVkKEVOQUJMRV9JUFY2KSAmJiBkZWZpbmVkKEFGX0lORVQ2KQogICAgIGlmKGFmID09IEFGX0lORVQ2KSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsCisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgImNhbid0IHVzZSBBRl9JTkVUNiwgSVB2NiBpcyBkaXNhYmxlZCIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC0zOTEwLDEwICs0ODM4LDEwIEBACiAKICAgICByZXR2YWwgPSBpbmV0X3B0b24oYWYsIGlwLCBwYWNrZWQpOwogICAgIGlmIChyZXR2YWwgPCAwKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhzb2NrZXRfZXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0gZWxzZSBpZiAocmV0dmFsID09IDApIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAiaWxsZWdhbCBJUCBhZGRyZXNzIHN0cmluZyBwYXNzZWQgdG8gaW5ldF9wdG9uIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0gZWxzZSBpZiAoYWYgPT0gQUZfSU5FVCkgewpAQCAtMzkyNSw3ICs0ODUzLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihzdHJ1Y3QgaW42X2FkZHIpKTsKICNlbmRpZgogICAgIH0gZWxzZSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsICJ1bmtub3duIGFkZHJlc3MgZmFtaWx5Iik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAidW5rbm93biBhZGRyZXNzIGZhbWlseSIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiB9CkBAIC0zOTc3LDcgKzQ5MDUsNyBAQAogCiAgICAgcmV0dmFsID0gaW5ldF9udG9wKGFmLCBwYWNrZWQsIGlwLCBzaXplb2YoaXApKTsKICAgICBpZiAoIXJldHZhbCkgewotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oc29ja2V0X2Vycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9IGVsc2UgewogICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcocmV0dmFsKTsKQEAgLTM5OTYsNyArNDkyNCw3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc29ja2V0X2dldGFkZHJpbmZvKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QqIGt3YXJncykKIHsKLSAgICBzdGF0aWMgY2hhcioga3duYW1lc1tdID0geyJob3N0IiwgInBvcnQiLCAiZmFtaWx5IiwgInR5cGUiLCAicHJvdG8iLCAKKyAgICBzdGF0aWMgY2hhcioga3duYW1lc1tdID0geyJob3N0IiwgInBvcnQiLCAiZmFtaWx5IiwgInR5cGUiLCAicHJvdG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZsYWdzIiwgMH07CiAgICAgc3RydWN0IGFkZHJpbmZvIGhpbnRzLCAqcmVzOwogICAgIHN0cnVjdCBhZGRyaW5mbyAqcmVzMCA9IE5VTEw7CkBAIC00MDExLDcgKzQ5MzksNyBAQAogCiAgICAgZmFtaWx5ID0gc29ja3R5cGUgPSBwcm90b2NvbCA9IGZsYWdzID0gMDsKICAgICBmYW1pbHkgPSBBRl9VTlNQRUM7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dhcmdzLCAiT098aWlpaTpnZXRhZGRyaW5mbyIsIAorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgIk9PfGlpaWk6Z2V0YWRkcmluZm8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICBrd25hbWVzLCAmaG9iaiwgJnBvYmosICZmYW1pbHksICZzb2NrdHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJnByb3RvY29sLCAmZmxhZ3MpKSB7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNDAxOSw3ICs0OTQ3LDkgQEAKICAgICBpZiAoaG9iaiA9PSBQeV9Ob25lKSB7CiAgICAgICAgIGhwdHIgPSBOVUxMOwogICAgIH0gZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKGhvYmopKSB7Ci0gICAgICAgIGlkbmEgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGhvYmosICJlbmNvZGUiLCAicyIsICJpZG5hIik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGVuY29kZSk7CisKKyAgICAgICAgaWRuYSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoaG9iaiwgJlB5SWRfZW5jb2RlLCAicyIsICJpZG5hIik7CiAgICAgICAgIGlmICghaWRuYSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBhc3NlcnQoUHlCeXRlc19DaGVjayhpZG5hKSk7CkBAIC00MDQ2LDcgKzQ5NzYsNyBAQAogICAgIH0gZWxzZSBpZiAocG9iaiA9PSBQeV9Ob25lKSB7CiAgICAgICAgIHBwdHIgPSAoY2hhciAqKU5VTEw7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgIkludCBvciBTdHJpbmcgZXhwZWN0ZWQiKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJJbnQgb3IgU3RyaW5nIGV4cGVjdGVkIik7CiAgICAgICAgIGdvdG8gZXJyOwogICAgIH0KICAgICBtZW1zZXQoJmhpbnRzLCAwLCBzaXplb2YoaGludHMpKTsKQEAgLTQxNDksNyArNTA3OSw3IEBACiAgICAgICAgIGdvdG8gZmFpbDsKICAgICB9CiAgICAgaWYgKHJlcy0+YWlfbmV4dCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICJzb2NrYWRkciByZXNvbHZlZCB0byBtdWx0aXBsZSBhZGRyZXNzZXMiKTsKICAgICAgICAgZ290byBmYWlsOwogICAgIH0KQEAgLTQxNTcsNyArNTA4Nyw3IEBACiAgICAgY2FzZSBBRl9JTkVUOgogICAgICAgICB7CiAgICAgICAgIGlmIChQeVR1cGxlX0dFVF9TSVpFKHNhKSAhPSAyKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAgICAgIklQdjQgc29ja2FkZHIgbXVzdCBiZSAyIHR1cGxlIik7CiAgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgIH0KQEAgLTQyNDQsNiArNTE3NCwxNjMgQEAKIEEgdmFsdWUgb2YgTm9uZSBpbmRpY2F0ZXMgdGhhdCBuZXcgc29ja2V0IG9iamVjdHMgaGF2ZSBubyB0aW1lb3V0LlxuXAogV2hlbiB0aGUgc29ja2V0IG1vZHVsZSBpcyBmaXJzdCBpbXBvcnRlZCwgdGhlIGRlZmF1bHQgaXMgTm9uZS4iKTsKIAorI2lmZGVmIEhBVkVfSUZfTkFNRUlOREVYCisvKiBQeXRob24gQVBJIGZvciBnZXR0aW5nIGludGVyZmFjZSBpbmRpY2VzIGFuZCBuYW1lcyAqLworCitzdGF0aWMgUHlPYmplY3QgKgorc29ja2V0X2lmX25hbWVpbmRleChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZykKK3sKKyAgICBQeU9iamVjdCAqbGlzdDsKKyAgICBpbnQgaTsKKyAgICBzdHJ1Y3QgaWZfbmFtZWluZGV4ICpuaTsKKworICAgIG5pID0gaWZfbmFtZWluZGV4KCk7CisgICAgaWYgKG5pID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBsaXN0ID0gUHlMaXN0X05ldygwKTsKKyAgICBpZiAobGlzdCA9PSBOVUxMKSB7CisgICAgICAgIGlmX2ZyZWVuYW1laW5kZXgobmkpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBmb3IgKGkgPSAwOyBuaVtpXS5pZl9pbmRleCAhPSAwICYmIGkgPCBJTlRfTUFYOyBpKyspIHsKKyAgICAgICAgUHlPYmplY3QgKm5pX3R1cGxlID0gUHlfQnVpbGRWYWx1ZSgiSU8mIiwKKyAgICAgICAgICAgICAgICBuaVtpXS5pZl9pbmRleCwgUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdCwgbmlbaV0uaWZfbmFtZSk7CisKKyAgICAgICAgaWYgKG5pX3R1cGxlID09IE5VTEwgfHwgUHlMaXN0X0FwcGVuZChsaXN0LCBuaV90dXBsZSkgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5X1hERUNSRUYobmlfdHVwbGUpOworICAgICAgICAgICAgUHlfREVDUkVGKGxpc3QpOworICAgICAgICAgICAgaWZfZnJlZW5hbWVpbmRleChuaSk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYobmlfdHVwbGUpOworICAgIH0KKworICAgIGlmX2ZyZWVuYW1laW5kZXgobmkpOworICAgIHJldHVybiBsaXN0OworfQorCitQeURvY19TVFJWQVIoaWZfbmFtZWluZGV4X2RvYywKKyJpZl9uYW1laW5kZXgoKVxuXAorXG5cCitSZXR1cm5zIGEgbGlzdCBvZiBuZXR3b3JrIGludGVyZmFjZSBpbmZvcm1hdGlvbiAoaW5kZXgsIG5hbWUpIHR1cGxlcy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3NvY2tldF9pZl9uYW1ldG9pbmRleChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9uYW1lOworICAgIHVuc2lnbmVkIGxvbmcgaW5kZXg7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mOmlmX25hbWV0b2luZGV4IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb25hbWUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGluZGV4ID0gaWZfbmFtZXRvaW5kZXgoUHlCeXRlc19BU19TVFJJTkcob25hbWUpKTsKKyAgICBQeV9ERUNSRUYob25hbWUpOworICAgIGlmIChpbmRleCA9PSAwKSB7CisgICAgICAgIC8qIGlmX25hbWV0b2luZGV4KCkgZG9lc24ndCBzZXQgZXJybm8gKi8KKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJubyBpbnRlcmZhY2Ugd2l0aCB0aGlzIG5hbWUiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nKGluZGV4KTsKK30KKworUHlEb2NfU1RSVkFSKGlmX25hbWV0b2luZGV4X2RvYywKKyJpZl9uYW1ldG9pbmRleChpZl9uYW1lKVxuXAorXG5cCitSZXR1cm5zIHRoZSBpbnRlcmZhY2UgaW5kZXggY29ycmVzcG9uZGluZyB0byB0aGUgaW50ZXJmYWNlIG5hbWUgaWZfbmFtZS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3NvY2tldF9pZl9pbmRleHRvbmFtZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZykKK3sKKyAgICB1bnNpZ25lZCBsb25nIGluZGV4OworICAgIGNoYXIgbmFtZVtJRl9OQU1FU0laRSArIDFdOworCisgICAgaW5kZXggPSBQeUxvbmdfQXNVbnNpZ25lZExvbmcoYXJnKTsKKyAgICBpZiAoaW5kZXggPT0gKHVuc2lnbmVkIGxvbmcpIC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChpZl9pbmRleHRvbmFtZShpbmRleCwgbmFtZSkgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KG5hbWUpOworfQorCitQeURvY19TVFJWQVIoaWZfaW5kZXh0b25hbWVfZG9jLAorImlmX2luZGV4dG9uYW1lKGlmX2luZGV4KVxuXAorXG5cCitSZXR1cm5zIHRoZSBpbnRlcmZhY2UgbmFtZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBpbnRlcmZhY2UgaW5kZXggaWZfaW5kZXguIik7CisKKyNlbmRpZiAgLyogSEFWRV9JRl9OQU1FSU5ERVggKi8KKworCisjaWZkZWYgQ01TR19MRU4KKy8qIFB5dGhvbiBpbnRlcmZhY2UgdG8gQ01TR19MRU4obGVuZ3RoKS4gKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK3NvY2tldF9DTVNHX0xFTihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfc3NpemVfdCBsZW5ndGg7CisgICAgc2l6ZV90IHJlc3VsdDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAibjpDTVNHX0xFTiIsICZsZW5ndGgpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAobGVuZ3RoIDwgMCB8fCAhZ2V0X0NNU0dfTEVOKGxlbmd0aCwgJnJlc3VsdCkpIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX092ZXJmbG93RXJyb3IsICJDTVNHX0xFTigpIGFyZ3VtZW50IG91dCBvZiByYW5nZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU2l6ZV90KHJlc3VsdCk7Cit9CisKK1B5RG9jX1NUUlZBUihDTVNHX0xFTl9kb2MsCisiQ01TR19MRU4obGVuZ3RoKSAtPiBjb250cm9sIG1lc3NhZ2UgbGVuZ3RoXG5cCitcblwKK1JldHVybiB0aGUgdG90YWwgbGVuZ3RoLCB3aXRob3V0IHRyYWlsaW5nIHBhZGRpbmcsIG9mIGFuIGFuY2lsbGFyeVxuXAorZGF0YSBpdGVtIHdpdGggYXNzb2NpYXRlZCBkYXRhIG9mIHRoZSBnaXZlbiBsZW5ndGguICBUaGlzIHZhbHVlIGNhblxuXAorb2Z0ZW4gYmUgdXNlZCBhcyB0aGUgYnVmZmVyIHNpemUgZm9yIHJlY3Ztc2coKSB0byByZWNlaXZlIGEgc2luZ2xlXG5cCitpdGVtIG9mIGFuY2lsbGFyeSBkYXRhLCBidXQgUkZDIDM1NDIgcmVxdWlyZXMgcG9ydGFibGUgYXBwbGljYXRpb25zIHRvXG5cCit1c2UgQ01TR19TUEFDRSgpIGFuZCB0aHVzIGluY2x1ZGUgc3BhY2UgZm9yIHBhZGRpbmcsIGV2ZW4gd2hlbiB0aGVcblwKK2l0ZW0gd2lsbCBiZSB0aGUgbGFzdCBpbiB0aGUgYnVmZmVyLiAgUmFpc2VzIE92ZXJmbG93RXJyb3IgaWYgbGVuZ3RoXG5cCitpcyBvdXRzaWRlIHRoZSBwZXJtaXNzaWJsZSByYW5nZSBvZiB2YWx1ZXMuIik7CisKKworI2lmZGVmIENNU0dfU1BBQ0UKKy8qIFB5dGhvbiBpbnRlcmZhY2UgdG8gQ01TR19TUEFDRShsZW5ndGgpLiAqLworCitzdGF0aWMgUHlPYmplY3QgKgorc29ja2V0X0NNU0dfU1BBQ0UoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5X3NzaXplX3QgbGVuZ3RoOworICAgIHNpemVfdCByZXN1bHQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIm46Q01TR19TUEFDRSIsICZsZW5ndGgpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAobGVuZ3RoIDwgMCB8fCAhZ2V0X0NNU0dfU1BBQ0UobGVuZ3RoLCAmcmVzdWx0KSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJDTVNHX1NQQUNFKCkgYXJndW1lbnQgb3V0IG9mIHJhbmdlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gUHlMb25nX0Zyb21TaXplX3QocmVzdWx0KTsKK30KKworUHlEb2NfU1RSVkFSKENNU0dfU1BBQ0VfZG9jLAorIkNNU0dfU1BBQ0UobGVuZ3RoKSAtPiBidWZmZXIgc2l6ZVxuXAorXG5cCitSZXR1cm4gdGhlIGJ1ZmZlciBzaXplIG5lZWRlZCBmb3IgcmVjdm1zZygpIHRvIHJlY2VpdmUgYW4gYW5jaWxsYXJ5XG5cCitkYXRhIGl0ZW0gd2l0aCBhc3NvY2lhdGVkIGRhdGEgb2YgdGhlIGdpdmVuIGxlbmd0aCwgYWxvbmcgd2l0aCBhbnlcblwKK3RyYWlsaW5nIHBhZGRpbmcuICBUaGUgYnVmZmVyIHNwYWNlIG5lZWRlZCB0byByZWNlaXZlIG11bHRpcGxlIGl0ZW1zXG5cCitpcyB0aGUgc3VtIG9mIHRoZSBDTVNHX1NQQUNFKCkgdmFsdWVzIGZvciB0aGVpciBhc3NvY2lhdGVkIGRhdGFcblwKK2xlbmd0aHMuICBSYWlzZXMgT3ZlcmZsb3dFcnJvciBpZiBsZW5ndGggaXMgb3V0c2lkZSB0aGUgcGVybWlzc2libGVcblwKK3JhbmdlIG9mIHZhbHVlcy4iKTsKKyNlbmRpZiAgICAvKiBDTVNHX1NQQUNFICovCisjZW5kaWYgICAgLyogQ01TR19MRU4gKi8KKwogCiAvKiBMaXN0IG9mIGZ1bmN0aW9ucyBleHBvcnRlZCBieSB0aGlzIG1vZHVsZS4gKi8KIApAQCAtNDI1Niw2ICs1MzQzLDEwIEBACiAgICAgIE1FVEhfVkFSQVJHUywgZ2V0aG9zdGJ5YWRkcl9kb2N9LAogICAgIHsiZ2V0aG9zdG5hbWUiLCAgICAgICAgICAgICBzb2NrZXRfZ2V0aG9zdG5hbWUsCiAgICAgIE1FVEhfTk9BUkdTLCAgZ2V0aG9zdG5hbWVfZG9jfSwKKyNpZmRlZiBIQVZFX1NFVEhPU1ROQU1FCisgICAgeyJzZXRob3N0bmFtZSIsICAgICAgICAgICAgIHNvY2tldF9zZXRob3N0bmFtZSwKKyAgICAgTUVUSF9WQVJBUkdTLCAgc2V0aG9zdG5hbWVfZG9jfSwKKyNlbmRpZgogICAgIHsiZ2V0c2VydmJ5bmFtZSIsICAgICAgICAgICBzb2NrZXRfZ2V0c2VydmJ5bmFtZSwKICAgICAgTUVUSF9WQVJBUkdTLCBnZXRzZXJ2YnluYW1lX2RvY30sCiAgICAgeyJnZXRzZXJ2Ynlwb3J0IiwgICAgICAgICAgIHNvY2tldF9nZXRzZXJ2Ynlwb3J0LApAQCAtNDI5Niw2ICs1Mzg3LDIyIEBACiAgICAgIE1FVEhfTk9BUkdTLCBnZXRkZWZhdWx0dGltZW91dF9kb2N9LAogICAgIHsic2V0ZGVmYXVsdHRpbWVvdXQiLCAgICAgICBzb2NrZXRfc2V0ZGVmYXVsdHRpbWVvdXQsCiAgICAgIE1FVEhfTywgc2V0ZGVmYXVsdHRpbWVvdXRfZG9jfSwKKyNpZmRlZiBIQVZFX0lGX05BTUVJTkRFWAorICAgIHsiaWZfbmFtZWluZGV4Iiwgc29ja2V0X2lmX25hbWVpbmRleCwKKyAgICAgTUVUSF9OT0FSR1MsIGlmX25hbWVpbmRleF9kb2N9LAorICAgIHsiaWZfbmFtZXRvaW5kZXgiLCBzb2NrZXRfaWZfbmFtZXRvaW5kZXgsCisgICAgIE1FVEhfVkFSQVJHUywgaWZfbmFtZXRvaW5kZXhfZG9jfSwKKyAgICB7ImlmX2luZGV4dG9uYW1lIiwgc29ja2V0X2lmX2luZGV4dG9uYW1lLAorICAgICBNRVRIX08sIGlmX2luZGV4dG9uYW1lX2RvY30sCisjZW5kaWYKKyNpZmRlZiBDTVNHX0xFTgorICAgIHsiQ01TR19MRU4iLCAgICAgICAgICAgICAgICBzb2NrZXRfQ01TR19MRU4sCisgICAgIE1FVEhfVkFSQVJHUywgQ01TR19MRU5fZG9jfSwKKyNpZmRlZiBDTVNHX1NQQUNFCisgICAgeyJDTVNHX1NQQUNFIiwgICAgICAgICAgICAgIHNvY2tldF9DTVNHX1NQQUNFLAorICAgICBNRVRIX1ZBUkFSR1MsIENNU0dfU1BBQ0VfZG9jfSwKKyNlbmRpZgorI2VuZGlmCiAgICAge05VTEwsICAgICAgICAgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAgLyogU2VudGluZWwgKi8KIH07CiAKQEAgLTQ0MjgsMjcgKzU1MzUsMjQgQEAKICAgICBpZiAobSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHNvY2tldF9lcnJvciA9IFB5RXJyX05ld0V4Y2VwdGlvbigic29ja2V0LmVycm9yIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFeGNfSU9FcnJvciwgTlVMTCk7Ci0gICAgaWYgKHNvY2tldF9lcnJvciA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBQeVNvY2tldE1vZHVsZUFQSS5lcnJvciA9IHNvY2tldF9lcnJvcjsKLSAgICBQeV9JTkNSRUYoc29ja2V0X2Vycm9yKTsKLSAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgImVycm9yIiwgc29ja2V0X2Vycm9yKTsKKyAgICBQeV9JTkNSRUYoUHlFeGNfT1NFcnJvcik7CisgICAgUHlTb2NrZXRNb2R1bGVBUEkuZXJyb3IgPSBQeUV4Y19PU0Vycm9yOworICAgIFB5X0lOQ1JFRihQeUV4Y19PU0Vycm9yKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgImVycm9yIiwgUHlFeGNfT1NFcnJvcik7CiAgICAgc29ja2V0X2hlcnJvciA9IFB5RXJyX05ld0V4Y2VwdGlvbigic29ja2V0LmhlcnJvciIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXRfZXJyb3IsIE5VTEwpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFeGNfT1NFcnJvciwgTlVMTCk7CiAgICAgaWYgKHNvY2tldF9oZXJyb3IgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgUHlfSU5DUkVGKHNvY2tldF9oZXJyb3IpOwogICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiaGVycm9yIiwgc29ja2V0X2hlcnJvcik7Ci0gICAgc29ja2V0X2dhaWVycm9yID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJzb2NrZXQuZ2FpZXJyb3IiLCBzb2NrZXRfZXJyb3IsCisgICAgc29ja2V0X2dhaWVycm9yID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJzb2NrZXQuZ2FpZXJyb3IiLCBQeUV4Y19PU0Vycm9yLAogICAgICAgICBOVUxMKTsKICAgICBpZiAoc29ja2V0X2dhaWVycm9yID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0lOQ1JFRihzb2NrZXRfZ2FpZXJyb3IpOwogICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiZ2FpZXJyb3IiLCBzb2NrZXRfZ2FpZXJyb3IpOwogICAgIHNvY2tldF90aW1lb3V0ID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJzb2NrZXQudGltZW91dCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0X2Vycm9yLCBOVUxMKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUV4Y19PU0Vycm9yLCBOVUxMKTsKICAgICBpZiAoc29ja2V0X3RpbWVvdXQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgUHlTb2NrZXRNb2R1bGVBUEkudGltZW91dF9lcnJvciA9IHNvY2tldF90aW1lb3V0OwpAQCAtNDYzNCw2ICs1NzM4LDMxIEBACiAgICAgUHlNb2R1bGVfQWRkU3RyaW5nQ29uc3RhbnQobSwgIkJEQUREUl9MT0NBTCIsICIwMDowMDowMDpGRjpGRjpGRiIpOwogI2VuZGlmCiAKKyNpZmRlZiBBRl9DQU4KKyAgICAvKiBDb250cm9sbGVyIEFyZWEgTmV0d29yayAqLworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJBRl9DQU4iLCBBRl9DQU4pOworI2VuZGlmCisjaWZkZWYgUEZfQ0FOCisgICAgLyogQ29udHJvbGxlciBBcmVhIE5ldHdvcmsgKi8KKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUEZfQ0FOIiwgUEZfQ0FOKTsKKyNlbmRpZgorCisvKiBSZWxpYWJsZSBEYXRhZ3JhbSBTb2NrZXRzICovCisjaWZkZWYgQUZfUkRTCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkFGX1JEUyIsIEFGX1JEUyk7CisjZW5kaWYKKyNpZmRlZiBQRl9SRFMKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUEZfUkRTIiwgUEZfUkRTKTsKKyNlbmRpZgorCisvKiBLZXJuZWwgZXZlbnQgbWVzc2FnZXMgKi8KKyNpZmRlZiBQRl9TWVNURU0KKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUEZfU1lTVEVNIiwgUEZfU1lTVEVNKTsKKyNlbmRpZgorI2lmZGVmIEFGX1NZU1RFTQorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJBRl9TWVNURU0iLCBBRl9TWVNURU0pOworI2VuZGlmCisKICNpZmRlZiBBRl9QQUNLRVQKICAgICBQeU1vZHVsZV9BZGRJbnRNYWNybyhtLCBBRl9QQUNLRVQpOwogI2VuZGlmCkBAIC00NzgzLDYgKzU5MTIsMTggQEAKICNpZmRlZiAgU09fU0VURklCCiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlNPX1NFVEZJQiIsIFNPX1NFVEZJQik7CiAjZW5kaWYKKyNpZmRlZiAgU09fUEFTU0NSRUQKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiU09fUEFTU0NSRUQiLCBTT19QQVNTQ1JFRCk7CisjZW5kaWYKKyNpZmRlZiAgU09fUEVFUkNSRUQKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiU09fUEVFUkNSRUQiLCBTT19QRUVSQ1JFRCk7CisjZW5kaWYKKyNpZmRlZiAgTE9DQUxfUEVFUkNSRUQKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiTE9DQUxfUEVFUkNSRUQiLCBMT0NBTF9QRUVSQ1JFRCk7CisjZW5kaWYKKyNpZmRlZiAgU09fQklORFRPREVWSUNFCisgICAgUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgU09fQklORFRPREVWSUNFKTsKKyNlbmRpZgogCiAgICAgLyogTWF4aW11bSBudW1iZXIgb2YgY29ubmVjdGlvbnMgZm9yICJsaXN0ZW4iICovCiAjaWZkZWYgIFNPTUFYQ09OTgpAQCAtNDc5MSw2ICs1OTMyLDE3IEBACiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlNPTUFYQ09OTiIsIDUpOyAvKiBDb21tb24gdmFsdWUgKi8KICNlbmRpZgogCisgICAgLyogQW5jaWxsaWFyeSBtZXNzYWdlIHR5cGVzICovCisjaWZkZWYgIFNDTV9SSUdIVFMKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiU0NNX1JJR0hUUyIsIFNDTV9SSUdIVFMpOworI2VuZGlmCisjaWZkZWYgIFNDTV9DUkVERU5USUFMUworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJTQ01fQ1JFREVOVElBTFMiLCBTQ01fQ1JFREVOVElBTFMpOworI2VuZGlmCisjaWZkZWYgIFNDTV9DUkVEUworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJTQ01fQ1JFRFMiLCBTQ01fQ1JFRFMpOworI2VuZGlmCisKICAgICAvKiBGbGFncyBmb3Igc2VuZCwgcmVjdiAqLwogI2lmZGVmICBNU0dfT09CCiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk1TR19PT0IiLCBNU0dfT09CKTsKQEAgLTQ4MjIsNiArNTk3NCwzMyBAQAogI2lmZGVmICBNU0dfRVRBRwogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJNU0dfRVRBRyIsIE1TR19FVEFHKTsKICNlbmRpZgorI2lmZGVmICBNU0dfTk9TSUdOQUwKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiTVNHX05PU0lHTkFMIiwgTVNHX05PU0lHTkFMKTsKKyNlbmRpZgorI2lmZGVmICBNU0dfTk9USUZJQ0FUSU9OCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk1TR19OT1RJRklDQVRJT04iLCBNU0dfTk9USUZJQ0FUSU9OKTsKKyNlbmRpZgorI2lmZGVmICBNU0dfQ01TR19DTE9FWEVDCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk1TR19DTVNHX0NMT0VYRUMiLCBNU0dfQ01TR19DTE9FWEVDKTsKKyNlbmRpZgorI2lmZGVmICBNU0dfRVJSUVVFVUUKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiTVNHX0VSUlFVRVVFIiwgTVNHX0VSUlFVRVVFKTsKKyNlbmRpZgorI2lmZGVmICBNU0dfQ09ORklSTQorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJNU0dfQ09ORklSTSIsIE1TR19DT05GSVJNKTsKKyNlbmRpZgorI2lmZGVmICBNU0dfTU9SRQorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJNU0dfTU9SRSIsIE1TR19NT1JFKTsKKyNlbmRpZgorI2lmZGVmICBNU0dfRU9GCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk1TR19FT0YiLCBNU0dfRU9GKTsKKyNlbmRpZgorI2lmZGVmICBNU0dfQkNBU1QKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiTVNHX0JDQVNUIiwgTVNHX0JDQVNUKTsKKyNlbmRpZgorI2lmZGVmICBNU0dfTUNBU1QKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiTVNHX01DQVNUIiwgTVNHX01DQVNUKTsKKyNlbmRpZgogCiAgICAgLyogUHJvdG9jb2wgbGV2ZWwgYW5kIG51bWJlcnMsIHVzYWJsZSBmb3IgW2dzXWV0c29ja29wdCAqLwogI2lmZGVmICBTT0xfU09DS0VUCkBAIC00ODU3LDYgKzYwMzYsNDkgQEAKICNlbHNlCiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlNPTF9VRFAiLCAxNyk7CiAjZW5kaWYKKyNpZmRlZiBTT0xfQ0FOX0JBU0UKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiU09MX0NBTl9CQVNFIiwgU09MX0NBTl9CQVNFKTsKKyNlbmRpZgorI2lmZGVmIFNPTF9DQU5fUkFXCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlNPTF9DQU5fUkFXIiwgU09MX0NBTl9SQVcpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJDQU5fUkFXIiwgQ0FOX1JBVyk7CisjZW5kaWYKKyNpZmRlZiBIQVZFX0xJTlVYX0NBTl9ICisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkNBTl9FRkZfRkxBRyIsIENBTl9FRkZfRkxBRyk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkNBTl9SVFJfRkxBRyIsIENBTl9SVFJfRkxBRyk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkNBTl9FUlJfRkxBRyIsIENBTl9FUlJfRkxBRyk7CisKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiQ0FOX1NGRl9NQVNLIiwgQ0FOX1NGRl9NQVNLKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiQ0FOX0VGRl9NQVNLIiwgQ0FOX0VGRl9NQVNLKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiQ0FOX0VSUl9NQVNLIiwgQ0FOX0VSUl9NQVNLKTsKKyNlbmRpZgorI2lmZGVmIEhBVkVfTElOVVhfQ0FOX1JBV19ICisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkNBTl9SQVdfRklMVEVSIiwgQ0FOX1JBV19GSUxURVIpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJDQU5fUkFXX0VSUl9GSUxURVIiLCBDQU5fUkFXX0VSUl9GSUxURVIpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJDQU5fUkFXX0xPT1BCQUNLIiwgQ0FOX1JBV19MT09QQkFDSyk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkNBTl9SQVdfUkVDVl9PV05fTVNHUyIsIENBTl9SQVdfUkVDVl9PV05fTVNHUyk7CisjZW5kaWYKKyNpZmRlZiBTT0xfUkRTCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlNPTF9SRFMiLCBTT0xfUkRTKTsKKyNlbmRpZgorI2lmZGVmIFJEU19DQU5DRUxfU0VOVF9UTworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfQ0FOQ0VMX1NFTlRfVE8iLCBSRFNfQ0FOQ0VMX1NFTlRfVE8pOworI2VuZGlmCisjaWZkZWYgUkRTX0dFVF9NUgorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfR0VUX01SIiwgUkRTX0dFVF9NUik7CisjZW5kaWYKKyNpZmRlZiBSRFNfRlJFRV9NUgorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfRlJFRV9NUiIsIFJEU19GUkVFX01SKTsKKyNlbmRpZgorI2lmZGVmIFJEU19SRUNWRVJSCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19SRUNWRVJSIiwgUkRTX1JFQ1ZFUlIpOworI2VuZGlmCisjaWZkZWYgUkRTX0NPTkdfTU9OSVRPUgorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfQ09OR19NT05JVE9SIiwgUkRTX0NPTkdfTU9OSVRPUik7CisjZW5kaWYKKyNpZmRlZiBSRFNfR0VUX01SX0ZPUl9ERVNUCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19HRVRfTVJfRk9SX0RFU1QiLCBSRFNfR0VUX01SX0ZPUl9ERVNUKTsKKyNlbmRpZgogI2lmZGVmICBJUFBST1RPX0lQCiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIklQUFJPVE9fSVAiLCBJUFBST1RPX0lQKTsKICNlbHNlCkBAIC00OTYxLDYgKzYxODMsOSBAQAogI2lmZGVmICBJUFBST1RPX1ZSUlAKICAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiSVBQUk9UT19WUlJQIiwgSVBQUk9UT19WUlJQKTsKICNlbmRpZgorI2lmZGVmICBJUFBST1RPX1NDVFAKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiSVBQUk9UT19TQ1RQIiwgSVBQUk9UT19TQ1RQKTsKKyNlbmRpZgogI2lmZGVmICBJUFBST1RPX0JJUAogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJJUFBST1RPX0JJUCIsIElQUFJPVE9fQklQKTsKICNlbmRpZgpAQCAtNDk3NCw2ICs2MTk5LDEwIEBACiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIklQUFJPVE9fTUFYIiwgSVBQUk9UT19NQVgpOwogI2VuZGlmCiAKKyNpZmRlZiAgU1lTUFJPVE9fQ09OVFJPTAorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJTWVNQUk9UT19DT05UUk9MIiwgU1lTUFJPVE9fQ09OVFJPTCk7CisjZW5kaWYKKwogICAgIC8qIFNvbWUgcG9ydCBjb25maWd1cmF0aW9uICovCiAjaWZkZWYgIElQUE9SVF9SRVNFUlZFRAogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJJUFBPUlRfUkVTRVJWRUQiLCBJUFBPUlRfUkVTRVJWRUQpOwpAQCAtNTA3Niw2ICs2MzA1LDkgQEAKICNpZmRlZiAgSVBfTUFYX01FTUJFUlNISVBTCiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIklQX01BWF9NRU1CRVJTSElQUyIsIElQX01BWF9NRU1CRVJTSElQUyk7CiAjZW5kaWYKKyNpZmRlZiAgSVBfVFJBTlNQQVJFTlQKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiSVBfVFJBTlNQQVJFTlQiLCBJUF9UUkFOU1BBUkVOVCk7CisjZW5kaWYKIAogICAgIC8qIElQdjYgW2dzXWV0c29ja29wdCBvcHRpb25zLCBkZWZpbmVkIGluIFJGQzI1NTMgKi8KICNpZmRlZiAgSVBWNl9KT0lOX0dST1VQCkBAIC01MjA2LDYgKzY0MzgsNDQgQEAKICAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiSVBYX1RZUEUiLCBJUFhfVFlQRSk7CiAjZW5kaWYKIAorLyogUmVsaWFibGUgRGF0YWdyYW0gU29ja2V0cyAqLworI2lmZGVmIFJEU19DTVNHX1JETUFfQVJHUworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfQ01TR19SRE1BX0FSR1MiLCBSRFNfQ01TR19SRE1BX0FSR1MpOworI2VuZGlmCisjaWZkZWYgUkRTX0NNU0dfUkRNQV9ERVNUCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19DTVNHX1JETUFfREVTVCIsIFJEU19DTVNHX1JETUFfREVTVCk7CisjZW5kaWYKKyNpZmRlZiBSRFNfQ01TR19SRE1BX01BUAorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfQ01TR19SRE1BX01BUCIsIFJEU19DTVNHX1JETUFfTUFQKTsKKyNlbmRpZgorI2lmZGVmIFJEU19DTVNHX1JETUFfU1RBVFVTCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19DTVNHX1JETUFfU1RBVFVTIiwgUkRTX0NNU0dfUkRNQV9TVEFUVVMpOworI2VuZGlmCisjaWZkZWYgUkRTX0NNU0dfUkRNQV9VUERBVEUKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX0NNU0dfUkRNQV9VUERBVEUiLCBSRFNfQ01TR19SRE1BX1VQREFURSk7CisjZW5kaWYKKyNpZmRlZiBSRFNfUkRNQV9SRUFEV1JJVEUKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX1JETUFfUkVBRFdSSVRFIiwgUkRTX1JETUFfUkVBRFdSSVRFKTsKKyNlbmRpZgorI2lmZGVmIFJEU19SRE1BX0ZFTkNFCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19SRE1BX0ZFTkNFIiwgUkRTX1JETUFfRkVOQ0UpOworI2VuZGlmCisjaWZkZWYgUkRTX1JETUFfSU5WQUxJREFURQorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfUkRNQV9JTlZBTElEQVRFIiwgUkRTX1JETUFfSU5WQUxJREFURSk7CisjZW5kaWYKKyNpZmRlZiBSRFNfUkRNQV9VU0VfT05DRQorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfUkRNQV9VU0VfT05DRSIsIFJEU19SRE1BX1VTRV9PTkNFKTsKKyNlbmRpZgorI2lmZGVmIFJEU19SRE1BX0RPTlRXQUlUCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19SRE1BX0RPTlRXQUlUIiwgUkRTX1JETUFfRE9OVFdBSVQpOworI2VuZGlmCisjaWZkZWYgUkRTX1JETUFfTk9USUZZX01FCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19SRE1BX05PVElGWV9NRSIsIFJEU19SRE1BX05PVElGWV9NRSk7CisjZW5kaWYKKyNpZmRlZiBSRFNfUkRNQV9TSUxFTlQKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX1JETUFfU0lMRU5UIiwgUkRTX1JETUFfU0lMRU5UKTsKKyNlbmRpZgorCiAgICAgLyogZ2V0e2FkZHIsbmFtZX1pbmZvIHBhcmFtZXRlcnMgKi8KICNpZmRlZiBFQUlfQUREUkZBTUlMWQogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJFQUlfQUREUkZBTUlMWSIsIEVBSV9BRERSRkFNSUxZKTsKQEAgLTUzMzIsNyArNjYwMiw3IEBACiAgICAgICAgIERXT1JEIGNvZGVzW10gPSB7U0lPX1JDVkFMTCwgU0lPX0tFRVBBTElWRV9WQUxTfTsKICAgICAgICAgY29uc3QgY2hhciAqbmFtZXNbXSA9IHsiU0lPX1JDVkFMTCIsICJTSU9fS0VFUEFMSVZFX1ZBTFMifTsKICAgICAgICAgaW50IGk7Ci0gICAgICAgIGZvcihpID0gMDsgaTxzaXplb2YoY29kZXMpL3NpemVvZigqY29kZXMpOyArK2kpIHsKKyAgICAgICAgZm9yKGkgPSAwOyBpPFB5X0FSUkFZX0xFTkdUSChjb2Rlcyk7ICsraSkgewogICAgICAgICAgICAgUHlPYmplY3QgKnRtcDsKICAgICAgICAgICAgIHRtcCA9IFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nKGNvZGVzW2ldKTsKICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkKZGlmZiAtLWdpdCBhL01vZHVsZXMvc29ja2V0bW9kdWxlLmggYi9Nb2R1bGVzL3NvY2tldG1vZHVsZS5oCmluZGV4IGYwNjQ3OTUuLjA0MzU4NzggMTAwNjQ0Ci0tLSBhL01vZHVsZXMvc29ja2V0bW9kdWxlLmgKKysrIGIvTW9kdWxlcy9zb2NrZXRtb2R1bGUuaApAQCAtNTksOSArNTksMTIgQEAKICNpbmNsdWRlIDxibHVldG9vdGguaD4KICNlbmRpZgogCisjaWZkZWYgSEFWRV9ORVRfSUZfSAorIyBpbmNsdWRlIDxuZXQvaWYuaD4KKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9ORVRQQUNLRVRfUEFDS0VUX0gKICMgaW5jbHVkZSA8c3lzL2lvY3RsLmg+Ci0jIGluY2x1ZGUgPG5ldC9pZi5oPgogIyBpbmNsdWRlIDxuZXRwYWNrZXQvcGFja2V0Lmg+CiAjZW5kaWYKIApAQCAtNjksNiArNzIsMjEgQEAKICMgaW5jbHVkZSA8bGludXgvdGlwYy5oPgogI2VuZGlmCiAKKyNpZmRlZiBIQVZFX0xJTlVYX0NBTl9ICisjaW5jbHVkZSA8bGludXgvY2FuLmg+CisjZW5kaWYKKworI2lmZGVmIEhBVkVfTElOVVhfQ0FOX1JBV19ICisjaW5jbHVkZSA8bGludXgvY2FuL3Jhdy5oPgorI2VuZGlmCisKKyNpZmRlZiBIQVZFX1NZU19TWVNfRE9NQUlOX0gKKyNpbmNsdWRlIDxzeXMvc3lzX2RvbWFpbi5oPgorI2VuZGlmCisjaWZkZWYgSEFWRV9TWVNfS0VSTl9DT05UUk9MX0gKKyNpbmNsdWRlIDxzeXMva2Vybl9jb250cm9sLmg+CisjZW5kaWYKKwogI2lmbmRlZiBQeV9fU09DS0VUX0gKICNkZWZpbmUgUHlfX1NPQ0tFVF9ICiAjaWZkZWYgX19jcGx1c3BsdXMKQEAgLTEwNCw2ICsxMjIsNyBAQAogLyogU29ja2V0IGFkZHJlc3MgKi8KIHR5cGVkZWYgdW5pb24gc29ja19hZGRyIHsKICAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gaW47CisgICAgc3RydWN0IHNvY2thZGRyIHNhOwogI2lmZGVmIEFGX1VOSVgKICAgICBzdHJ1Y3Qgc29ja2FkZHJfdW4gdW47CiAjZW5kaWYKQEAgLTEyMyw2ICsxNDIsMTIgQEAKICNpZmRlZiBIQVZFX05FVFBBQ0tFVF9QQUNLRVRfSAogICAgIHN0cnVjdCBzb2NrYWRkcl9sbCBsbDsKICNlbmRpZgorI2lmZGVmIEhBVkVfTElOVVhfQ0FOX0gKKyAgICBzdHJ1Y3Qgc29ja2FkZHJfY2FuIGNhbjsKKyNlbmRpZgorI2lmZGVmIEhBVkVfU1lTX0tFUk5fQ09OVFJPTF9ICisgICAgc3RydWN0IHNvY2thZGRyX2N0bCBjdGw7CisjZW5kaWYKIH0gc29ja19hZGRyX3Q7CiAKIC8qIFRoZSBvYmplY3QgaG9sZGluZyBhIHNvY2tldC4gIEl0IGhvbGRzIHNvbWUgZXh0cmEgaW5mb3JtYXRpb24sCmRpZmYgLS1naXQgYS9Nb2R1bGVzL3NyZS5oIGIvTW9kdWxlcy9zcmUuaAppbmRleCBhZWM5YjU0Li4wMWFiY2IwIDEwMDY0NAotLS0gYS9Nb2R1bGVzL3NyZS5oCisrKyBiL01vZHVsZXMvc3JlLmgKQEAgLTMwLDcgKzMwLDggQEAKICAgICBQeU9iamVjdCogcGF0dGVybjsgLyogcGF0dGVybiBzb3VyY2UgKG9yIE5vbmUpICovCiAgICAgaW50IGZsYWdzOyAvKiBmbGFncyB1c2VkIHdoZW4gY29tcGlsaW5nIHBhdHRlcm4gc291cmNlICovCiAgICAgUHlPYmplY3QgKndlYWtyZWZsaXN0OyAvKiBMaXN0IG9mIHdlYWsgcmVmZXJlbmNlcyAqLwotCWludCBjaGFyc2l6ZTsgLyogcGF0dGVybiBjaGFyc2l6ZSAob3IgLTEpICovCisgICAgaW50IGxvZ2ljYWxfY2hhcnNpemU7IC8qIHBhdHRlcm4gY2hhcnNpemUgKG9yIC0xKSAqLworICAgIGludCBjaGFyc2l6ZTsKICAgICBQeV9idWZmZXIgdmlldzsKICAgICAvKiBwYXR0ZXJuIGNvZGUgKi8KICAgICBQeV9zc2l6ZV90IGNvZGVzaXplOwpAQCAtNzIsNiArNzMsNyBAQAogICAgIFB5T2JqZWN0KiBzdHJpbmc7CiAgICAgUHlfc3NpemVfdCBwb3MsIGVuZHBvczsKICAgICAvKiBjaGFyYWN0ZXIgc2l6ZSAqLworICAgIGludCBsb2dpY2FsX2NoYXJzaXplOyAvKiBraW5kIG9mIHRoaW5nOiAxIC0gYnl0ZXMsIDIvNCAtIHVuaWNvZGUgKi8KICAgICBpbnQgY2hhcnNpemU7CiAgICAgLyogcmVnaXN0ZXJzICovCiAgICAgUHlfc3NpemVfdCBsYXN0aW5kZXg7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3N5c2xvZ21vZHVsZS5jIGIvTW9kdWxlcy9zeXNsb2dtb2R1bGUuYwppbmRleCA1Yjg2OTYzLi5jN2EyNDg3IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3N5c2xvZ21vZHVsZS5jCisrKyBiL01vZHVsZXMvc3lzbG9nbW9kdWxlLmMKQEAgLTcwLDcgKzcwLDcgQEAKIAogICAgIFB5X3NzaXplX3QgYXJndl9sZW4sIHNjcmlwdGxlbjsKICAgICBQeU9iamVjdCAqc2NyaXB0b2JqOwotICAgIFB5X1VOSUNPREUgKmF0c2xhc2gsICphdHN0YXJ0OworICAgIFB5X3NzaXplX3Qgc2xhc2g7CiAgICAgUHlPYmplY3QgKmFyZ3YgPSBQeVN5c19HZXRPYmplY3QoImFyZ3YiKTsKIAogICAgIGlmIChhcmd2ID09IE5VTEwpIHsKQEAgLTkwLDE2ICs5MCwxNiBAQAogICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHNjcmlwdG9iaikpIHsKICAgICAgICAgcmV0dXJuKE5VTEwpOwogICAgIH0KLSAgICBzY3JpcHRsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUoc2NyaXB0b2JqKTsKKyAgICBzY3JpcHRsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzY3JpcHRvYmopOwogICAgIGlmIChzY3JpcHRsZW4gPT0gMCkgewogICAgICAgICByZXR1cm4oTlVMTCk7CiAgICAgfQogCi0gICAgYXRzdGFydCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNjcmlwdG9iaik7Ci0gICAgYXRzbGFzaCA9IFB5X1VOSUNPREVfc3RycmNocihhdHN0YXJ0LCBTRVApOwotICAgIGlmIChhdHNsYXNoKSB7Ci0gICAgICAgIHJldHVybihQeVVuaWNvZGVfRnJvbVVuaWNvZGUoYXRzbGFzaCArIDEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NyaXB0bGVuIC0gKGF0c2xhc2ggLSBhdHN0YXJ0KSAtIDEpKTsKKyAgICBzbGFzaCA9IFB5VW5pY29kZV9GaW5kQ2hhcihzY3JpcHRvYmosIFNFUCwgMCwgc2NyaXB0bGVuLCAtMSk7CisgICAgaWYgKHNsYXNoID09IC0yKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoc2xhc2ggIT0gLTEpIHsKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9TdWJzdHJpbmcoc2NyaXB0b2JqLCBzbGFzaCwgc2NyaXB0bGVuKTsKICAgICB9IGVsc2UgewogICAgICAgICBQeV9JTkNSRUYoc2NyaXB0b2JqKTsKICAgICAgICAgcmV0dXJuKHNjcmlwdG9iaik7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3Rlcm1pb3MuYyBiL01vZHVsZXMvdGVybWlvcy5jCmluZGV4IGVkZWI2ZjUuLmI3OGQzM2UgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvdGVybWlvcy5jCisrKyBiL01vZHVsZXMvdGVybWlvcy5jCkBAIC05LDExICs5LDYgQEAKICNlbmRpZgogCiAjaW5jbHVkZSA8dGVybWlvcy5oPgotI2lmZGVmIF9fb3NmX18KLS8qIE9uIE9TRiwgc3lzL2lvY3RsLmggcmVxdWlyZXMgdGhhdCBzdHJ1Y3QgdGVybWlvIGFscmVhZHkgYmUgZGVmaW5lZCwKLSAqIHNvIHRoaXMgbmVlZHMgdG8gYmUgaW5jbHVkZWQgZmlyc3Qgb24gdGhhdCBwbGF0Zm9ybS4gKi8KLSNpbmNsdWRlIDx0ZXJtaW8uaD4KLSNlbmRpZgogI2luY2x1ZGUgPHN5cy9pb2N0bC5oPgogCiAvKiBIUC1VWCByZXF1aXJlcyB0aGF0IHRoaXMgYmUgaW5jbHVkZWQgdG8gcGljayB1cCBNRENELCBNQ1RTLCBNRFNSLApkaWZmIC0tZ2l0IGEvTW9kdWxlcy90ZXN0Y2FwaV9sb25nLmggYi9Nb2R1bGVzL3Rlc3RjYXBpX2xvbmcuaAppbmRleCBmYTk0ZmQ2Li42YmRkYWQ3IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3Rlc3RjYXBpX2xvbmcuaAorKysgYi9Nb2R1bGVzL3Rlc3RjYXBpX2xvbmcuaApAQCAtMzMsOCArMzMsNyBAQAogICAgICAgICAgICAgdW5zaWduZWQgVFlQRU5BTUUgdWluLCB1b3V0OwogCiAgICAgICAgICAgICAvKiBGb3IgMCwgMSwgMiB1c2UgYmFzZTsgZm9yIDMsIDQsIDUgdXNlIC1iYXNlICovCi0gICAgICAgICAgICB1aW4gPSBqIDwgMyA/IGJhc2UKLSAgICAgICAgICAgICAgICAgICAgICAgIDogKHVuc2lnbmVkIFRZUEVOQU1FKSgtKFRZUEVOQU1FKWJhc2UpOworICAgICAgICAgICAgdWluID0gaiA8IDMgPyBiYXNlIDogMFUgLSBiYXNlOwogCiAgICAgICAgICAgICAvKiBGb3IgMCAmIDMsIHN1YnRyYWN0IDEuCiAgICAgICAgICAgICAgKiBGb3IgMSAmIDQsIGxlYXZlIGFsb25lLgpAQCAtMTc3LDYgKzE3NiwzMiBAQAogICAgICAgICBQeV9ERUNSRUYob25lKTsKICAgICB9CiAKKyAgICAvKiBUZXN0IEZfUFlfVE9fe1MsVX0gb24gbm9uLXB5bG9uZyBpbnB1dC4gVGhpcyBzaG91bGQgcmFpc2UgYSBUeXBlRXJyb3IuICovCisgICAgeworICAgICAgICBUWVBFTkFNRSBvdXQ7CisgICAgICAgIHVuc2lnbmVkIFRZUEVOQU1FIHVvdXQ7CisKKyAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworCisgICAgICAgIG91dCA9IEZfUFlfVE9fUyhQeV9Ob25lKTsKKyAgICAgICAgaWYgKG91dCAhPSAoVFlQRU5BTUUpLTEgfHwgIVB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICByZXR1cm4gZXJyb3IoIlB5TG9uZ19Bc1hYWChOb25lKSBkaWRuJ3QgY29tcGxhaW4iKTsKKyAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX1R5cGVFcnJvcikpCisgICAgICAgICAgICByZXR1cm4gZXJyb3IoIlB5TG9uZ19Bc1hYWChOb25lKSByYWlzZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJzb21ldGhpbmcgb3RoZXIgdGhhbiBUeXBlRXJyb3IiKTsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKworICAgICAgICB1b3V0ID0gRl9QWV9UT19VKFB5X05vbmUpOworICAgICAgICBpZiAodW91dCAhPSAodW5zaWduZWQgVFlQRU5BTUUpLTEgfHwgIVB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICByZXR1cm4gZXJyb3IoIlB5TG9uZ19Bc1hYWChOb25lKSBkaWRuJ3QgY29tcGxhaW4iKTsKKyAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX1R5cGVFcnJvcikpCisgICAgICAgICAgICByZXR1cm4gZXJyb3IoIlB5TG9uZ19Bc1hYWChOb25lKSByYWlzZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJzb21ldGhpbmcgb3RoZXIgdGhhbiBUeXBlRXJyb3IiKTsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKworICAgICAgICBQeV9ERUNSRUYoUHlfTm9uZSk7CisgICAgfQorCiAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgIHJldHVybiBQeV9Ob25lOwogfQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy90aW1lbW9kdWxlLmMgYi9Nb2R1bGVzL3RpbWVtb2R1bGUuYwppbmRleCA2MjZkYjNlLi41OWZlM2VlIDEwMDY0NAotLS0gYS9Nb2R1bGVzL3RpbWVtb2R1bGUuYworKysgYi9Nb2R1bGVzL3RpbWVtb2R1bGUuYwpAQCAtMjEsMTkgKzIxLDYgQEAKICNpbmNsdWRlIDx3aW5kb3dzLmg+CiAjaW5jbHVkZSAicHl0aHJlYWQuaCIKIAotLyogaGVscGVyIHRvIGFsbG93IHVzIHRvIGludGVycnVwdCBzbGVlcCgpIG9uIFdpbmRvd3MqLwotc3RhdGljIEhBTkRMRSBoSW50ZXJydXB0RXZlbnQgPSBOVUxMOwotc3RhdGljIEJPT0wgV0lOQVBJIFB5Q3RybEhhbmRsZXIoRFdPUkQgZHdDdHJsVHlwZSkKLXsKLSAgICBTZXRFdmVudChoSW50ZXJydXB0RXZlbnQpOwotICAgIC8qIGFsbG93IG90aGVyIGRlZmF1bHQgaGFuZGxlcnMgdG8gYmUgY2FsbGVkLgotICAgICAgIERlZmF1bHQgUHl0aG9uIGhhbmRsZXIgd2lsbCBzZXR1cCB0aGUKLSAgICAgICBLZXlib2FyZEludGVycnVwdCBleGNlcHRpb24uCi0gICAgKi8KLSAgICByZXR1cm4gRkFMU0U7Ci19Ci1zdGF0aWMgbG9uZyBtYWluX3RocmVhZDsKLQogI2lmIGRlZmluZWQoX19CT1JMQU5EQ19fKQogLyogVGhlc2Ugb3ZlcnJpZGVzIG5vdCBuZWVkZWQgZm9yIFdpbjMyICovCiAjZGVmaW5lIHRpbWV6b25lIF90aW1lem9uZQpAQCAtNDMsMTEgKzMwLDYgQEAKICNlbmRpZiAvKiBNU19XSU5ET1dTICovCiAjZW5kaWYgLyogIV9fV0FUQ09NQ19fIHx8IF9fUU5YX18gKi8KIAotI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgIWRlZmluZWQoX19CT1JMQU5EQ19fKQotLyogV2luMzIgaGFzIGJldHRlciBjbG9jayByZXBsYWNlbWVudDsgd2UgaGF2ZSBvdXIgb3duIHZlcnNpb24gYmVsb3cuICovCi0jdW5kZWYgSEFWRV9DTE9DSwotI2VuZGlmIC8qIE1TX1dJTkRPV1MgJiYgIWRlZmluZWQoX19CT1JMQU5EQ19fKSAqLwotCiAjaWYgZGVmaW5lZChQWU9TX09TMikKICNkZWZpbmUgSU5DTF9ET1MKICNkZWZpbmUgSU5DTF9FUlJPUlMKQEAgLTYyLDkgKzQ0LDYgQEAKIHN0YXRpYyBpbnQgZmxvYXRzbGVlcChkb3VibGUpOwogc3RhdGljIGRvdWJsZSBmbG9hdHRpbWUodm9pZCk7CiAKLS8qIEZvciBZMksgY2hlY2sgKi8KLXN0YXRpYyBQeU9iamVjdCAqbW9kZGljdDsKLQogc3RhdGljIFB5T2JqZWN0ICoKIHRpbWVfdGltZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKIHsKQEAgLTgzLDcgKzYyLDcgQEAKIFJldHVybiB0aGUgY3VycmVudCB0aW1lIGluIHNlY29uZHMgc2luY2UgdGhlIEVwb2NoLlxuXAogRnJhY3Rpb25zIG9mIGEgc2Vjb25kIG1heSBiZSBwcmVzZW50IGlmIHRoZSBzeXN0ZW0gY2xvY2sgcHJvdmlkZXMgdGhlbS4iKTsKIAotI2lmZGVmIEhBVkVfQ0xPQ0sKKyNpZiBkZWZpbmVkKEhBVkVfQ0xPQ0spCiAKICNpZm5kZWYgQ0xPQ0tTX1BFUl9TRUMKICNpZmRlZiBDTEtfVENLCkBAIC05NCw0MiArNzMsNjIgQEAKICNlbmRpZgogCiBzdGF0aWMgUHlPYmplY3QgKgotdGltZV9jbG9jayhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKK3B5Y2xvY2sodm9pZCkKIHsKLSAgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKCgoZG91YmxlKWNsb2NrKCkpIC8gQ0xPQ0tTX1BFUl9TRUMpOworICAgIGNsb2NrX3QgdmFsdWU7CisgICAgdmFsdWUgPSBjbG9jaygpOworICAgIGlmICh2YWx1ZSA9PSAoY2xvY2tfdCktMSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICJ0aGUgcHJvY2Vzc29yIHRpbWUgdXNlZCBpcyBub3QgYXZhaWxhYmxlICIKKyAgICAgICAgICAgICAgICAib3IgaXRzIHZhbHVlIGNhbm5vdCBiZSByZXByZXNlbnRlZCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZSgoZG91YmxlKXZhbHVlIC8gQ0xPQ0tTX1BFUl9TRUMpOwogfQogI2VuZGlmIC8qIEhBVkVfQ0xPQ0sgKi8KIAogI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgIWRlZmluZWQoX19CT1JMQU5EQ19fKQotLyogRHVlIHRvIE1hcmsgSGFtbW9uZCBhbmQgVGltIFBldGVycyAqLworLyogV2luMzIgaGFzIGJldHRlciBjbG9jayByZXBsYWNlbWVudDsgd2UgaGF2ZSBvdXIgb3duIHZlcnNpb24sIGR1ZSB0byBNYXJrCisgICBIYW1tb25kIGFuZCBUaW0gUGV0ZXJzICovCiBzdGF0aWMgUHlPYmplY3QgKgotdGltZV9jbG9jayhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKK3dpbjMyX2Nsb2NrKGludCBmYWxsYmFjaykKIHsKLSAgICBzdGF0aWMgTEFSR0VfSU5URUdFUiBjdHJTdGFydDsKLSAgICBzdGF0aWMgZG91YmxlIGRpdmlzb3IgPSAwLjA7CisgICAgc3RhdGljIExPTkdMT05HIGNwdV9mcmVxdWVuY3kgPSAwOworICAgIHN0YXRpYyBMT05HTE9ORyBjdHJTdGFydDsKICAgICBMQVJHRV9JTlRFR0VSIG5vdzsKICAgICBkb3VibGUgZGlmZjsKIAotICAgIGlmIChkaXZpc29yID09IDAuMCkgeworICAgIGlmIChjcHVfZnJlcXVlbmN5ID09IDApIHsKICAgICAgICAgTEFSR0VfSU5URUdFUiBmcmVxOwotICAgICAgICBRdWVyeVBlcmZvcm1hbmNlQ291bnRlcigmY3RyU3RhcnQpOworICAgICAgICBRdWVyeVBlcmZvcm1hbmNlQ291bnRlcigmbm93KTsKKyAgICAgICAgY3RyU3RhcnQgPSBub3cuUXVhZFBhcnQ7CiAgICAgICAgIGlmICghUXVlcnlQZXJmb3JtYW5jZUZyZXF1ZW5jeSgmZnJlcSkgfHwgZnJlcS5RdWFkUGFydCA9PSAwKSB7CiAgICAgICAgICAgICAvKiBVbmxpa2VseSB0byBoYXBwZW4gLSB0aGlzIHdvcmtzIG9uIGFsbCBpbnRlbAogICAgICAgICAgICAgICAgbWFjaGluZXMgYXQgbGVhc3QhICBSZXZlcnQgdG8gY2xvY2soKSAqLwotICAgICAgICAgICAgcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZSgoKGRvdWJsZSljbG9jaygpKSAvCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENMT0NLU19QRVJfU0VDKTsKKyAgICAgICAgICAgIGlmIChmYWxsYmFjaykKKyAgICAgICAgICAgICAgICByZXR1cm4gcHljbG9jaygpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tV2luZG93c0VycigwKTsKICAgICAgICAgfQotICAgICAgICBkaXZpc29yID0gKGRvdWJsZSlmcmVxLlF1YWRQYXJ0OworICAgICAgICBjcHVfZnJlcXVlbmN5ID0gZnJlcS5RdWFkUGFydDsKICAgICB9CiAgICAgUXVlcnlQZXJmb3JtYW5jZUNvdW50ZXIoJm5vdyk7Ci0gICAgZGlmZiA9IChkb3VibGUpKG5vdy5RdWFkUGFydCAtIGN0clN0YXJ0LlF1YWRQYXJ0KTsKLSAgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKGRpZmYgLyBkaXZpc29yKTsKKyAgICBkaWZmID0gKGRvdWJsZSkobm93LlF1YWRQYXJ0IC0gY3RyU3RhcnQpOworICAgIHJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUoZGlmZiAvIChkb3VibGUpY3B1X2ZyZXF1ZW5jeSk7Cit9CisjZW5kaWYKKworI2lmIChkZWZpbmVkKE1TX1dJTkRPV1MpICYmICFkZWZpbmVkKF9fQk9STEFORENfXykpIHx8IGRlZmluZWQoSEFWRV9DTE9DSykKK3N0YXRpYyBQeU9iamVjdCAqCit0aW1lX2Nsb2NrKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQoreworI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgIWRlZmluZWQoX19CT1JMQU5EQ19fKQorICAgIHJldHVybiB3aW4zMl9jbG9jaygxKTsKKyNlbHNlCisgICAgcmV0dXJuIHB5Y2xvY2soKTsKKyNlbmRpZgogfQogCi0jZGVmaW5lIEhBVkVfQ0xPQ0sgLyogU28gaXQgZ2V0cyBpbmNsdWRlZCBpbiB0aGUgbWV0aG9kcyAqLwotI2VuZGlmIC8qIE1TX1dJTkRPV1MgJiYgIWRlZmluZWQoX19CT1JMQU5EQ19fKSAqLwotCi0jaWZkZWYgSEFWRV9DTE9DSwogUHlEb2NfU1RSVkFSKGNsb2NrX2RvYywKICJjbG9jaygpIC0+IGZsb2F0aW5nIHBvaW50IG51bWJlclxuXAogXG5cCkBAIC0xMzgsMTIgKzEzNyw2OSBAQAogcmVjb3Jkcy4iKTsKICNlbmRpZgogCisjaWZkZWYgSEFWRV9DTE9DS19HRVRUSU1FCitzdGF0aWMgUHlPYmplY3QgKgordGltZV9jbG9ja19nZXR0aW1lKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgcmV0OworICAgIGNsb2NraWRfdCBjbGtfaWQ7CisgICAgc3RydWN0IHRpbWVzcGVjIHRwOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpOmNsb2NrX2dldHRpbWUiLCAmY2xrX2lkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXQgPSBjbG9ja19nZXR0aW1lKChjbG9ja2lkX3QpY2xrX2lkLCAmdHApOworICAgIGlmIChyZXQgIT0gMCkgeworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUodHAudHZfc2VjICsgdHAudHZfbnNlYyAqIDFlLTkpOworfQorCitQeURvY19TVFJWQVIoY2xvY2tfZ2V0dGltZV9kb2MsCisiY2xvY2tfZ2V0dGltZShjbGtfaWQpIC0+IGZsb2F0aW5nIHBvaW50IG51bWJlclxuXAorXG5cCitSZXR1cm4gdGhlIHRpbWUgb2YgdGhlIHNwZWNpZmllZCBjbG9jayBjbGtfaWQuIik7CisjZW5kaWYKKworI2lmZGVmIEhBVkVfQ0xPQ0tfR0VUUkVTCitzdGF0aWMgUHlPYmplY3QgKgordGltZV9jbG9ja19nZXRyZXMoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCByZXQ7CisgICAgY2xvY2tpZF90IGNsa19pZDsKKyAgICBzdHJ1Y3QgdGltZXNwZWMgdHA7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6Y2xvY2tfZ2V0cmVzIiwgJmNsa19pZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcmV0ID0gY2xvY2tfZ2V0cmVzKChjbG9ja2lkX3QpY2xrX2lkLCAmdHApOworICAgIGlmIChyZXQgIT0gMCkgeworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUodHAudHZfc2VjICsgdHAudHZfbnNlYyAqIDFlLTkpOworfQorCitQeURvY19TVFJWQVIoY2xvY2tfZ2V0cmVzX2RvYywKKyJjbG9ja19nZXRyZXMoY2xrX2lkKSAtPiBmbG9hdGluZyBwb2ludCBudW1iZXJcblwKK1xuXAorUmV0dXJuIHRoZSByZXNvbHV0aW9uIChwcmVjaXNpb24pIG9mIHRoZSBzcGVjaWZpZWQgY2xvY2sgY2xrX2lkLiIpOworI2VuZGlmCisKIHN0YXRpYyBQeU9iamVjdCAqCiB0aW1lX3NsZWVwKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBkb3VibGUgc2VjczsKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImQ6c2xlZXAiLCAmc2VjcykpCiAgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzZWNzIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJzbGVlcCBsZW5ndGggbXVzdCBiZSBub24tbmVnYXRpdmUiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogICAgIGlmIChmbG9hdHNsZWVwKHNlY3MpICE9IDApCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKQEAgLTIxMiw1NSArMjY4LDUzIEBACiAgICAgcmV0dXJuIHY7CiB9CiAKLXN0YXRpYyBQeU9iamVjdCAqCi10aW1lX2NvbnZlcnQoZG91YmxlIHdoZW4sIHN0cnVjdCB0bSAqICgqZnVuY3Rpb24pKGNvbnN0IHRpbWVfdCAqKSkKLXsKLSAgICBzdHJ1Y3QgdG0gKnA7Ci0gICAgdGltZV90IHdoZW50ID0gX1B5VGltZV9Eb3VibGVUb1RpbWV0KHdoZW4pOwotCi0gICAgaWYgKHdoZW50ID09ICh0aW1lX3QpLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZXJybm8gPSAwOwotICAgIHAgPSBmdW5jdGlvbigmd2hlbnQpOwotICAgIGlmIChwID09IE5VTEwpIHsKLSNpZmRlZiBFSU5WQUwKLSAgICAgICAgaWYgKGVycm5vID09IDApCi0gICAgICAgICAgICBlcnJubyA9IEVJTlZBTDsKLSNlbmRpZgotICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX1ZhbHVlRXJyb3IpOwotICAgIH0KLSAgICByZXR1cm4gdG10b3R1cGxlKHApOwotfQotCiAvKiBQYXJzZSBhcmcgdHVwbGUgdGhhdCBjYW4gY29udGFpbiBhbiBvcHRpb25hbCBmbG9hdC1vci1Ob25lIHZhbHVlOwogICAgZm9ybWF0IG5lZWRzIHRvIGJlICJ8TzpuYW1lIi4KICAgIFJldHVybnMgbm9uLXplcm8gb24gc3VjY2VzcyAocGFyYWxsZWxzIFB5QXJnX1BhcnNlVHVwbGUpLgogKi8KIHN0YXRpYyBpbnQKLXBhcnNlX3RpbWVfZG91YmxlX2FyZ3MoUHlPYmplY3QgKmFyZ3MsIGNoYXIgKmZvcm1hdCwgZG91YmxlICpwd2hlbikKK3BhcnNlX3RpbWVfdF9hcmdzKFB5T2JqZWN0ICphcmdzLCBjaGFyICpmb3JtYXQsIHRpbWVfdCAqcHdoZW4pCiB7CiAgICAgUHlPYmplY3QgKm90ID0gTlVMTDsKKyAgICB0aW1lX3Qgd2hlbnQ7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgZm9ybWF0LCAmb3QpKQogICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAob3QgPT0gTlVMTCB8fCBvdCA9PSBQeV9Ob25lKQotICAgICAgICAqcHdoZW4gPSBmbG9hdHRpbWUoKTsKKyAgICBpZiAob3QgPT0gTlVMTCB8fCBvdCA9PSBQeV9Ob25lKSB7CisgICAgICAgIHdoZW50ID0gdGltZShOVUxMKTsKKyAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIGRvdWJsZSB3aGVuID0gUHlGbG9hdF9Bc0RvdWJsZShvdCk7CisgICAgICAgIGRvdWJsZSBkID0gUHlGbG9hdF9Bc0RvdWJsZShvdCk7CiAgICAgICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICpwd2hlbiA9IHdoZW47CisgICAgICAgIHdoZW50ID0gX1B5VGltZV9Eb3VibGVUb1RpbWV0KGQpOworICAgICAgICBpZiAod2hlbnQgPT0gKHRpbWVfdCktMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQorICAgICpwd2hlbiA9IHdoZW50OwogICAgIHJldHVybiAxOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogdGltZV9nbXRpbWUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIGRvdWJsZSB3aGVuOwotICAgIGlmICghcGFyc2VfdGltZV9kb3VibGVfYXJncyhhcmdzLCAifE86Z210aW1lIiwgJndoZW4pKQorICAgIHRpbWVfdCB3aGVuOworICAgIHN0cnVjdCB0bSBidWYsICpsb2NhbDsKKworICAgIGlmICghcGFyc2VfdGltZV90X2FyZ3MoYXJncywgInxPOmdtdGltZSIsICZ3aGVuKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmV0dXJuIHRpbWVfY29udmVydCh3aGVuLCBnbXRpbWUpOworCisgICAgZXJybm8gPSAwOworICAgIGxvY2FsID0gZ210aW1lKCZ3aGVuKTsKKyAgICBpZiAobG9jYWwgPT0gTlVMTCkgeworI2lmZGVmIEVJTlZBTAorICAgICAgICBpZiAoZXJybm8gPT0gMCkKKyAgICAgICAgICAgIGVycm5vID0gRUlOVkFMOworI2VuZGlmCisgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgfQorICAgIGJ1ZiA9ICpsb2NhbDsKKyAgICByZXR1cm4gdG10b3R1cGxlKCZidWYpOwogfQogCiBQeURvY19TVFJWQVIoZ210aW1lX2RvYywKQEAgLTI3MCwxMyArMzI0LDM3IEBACiBDb252ZXJ0IHNlY29uZHMgc2luY2UgdGhlIEVwb2NoIHRvIGEgdGltZSB0dXBsZSBleHByZXNzaW5nIFVUQyAoYS5rLmEuXG5cCiBHTVQpLiAgV2hlbiAnc2Vjb25kcycgaXMgbm90IHBhc3NlZCBpbiwgY29udmVydCB0aGUgY3VycmVudCB0aW1lIGluc3RlYWQuIik7CiAKK3N0YXRpYyBpbnQKK3B5bG9jYWx0aW1lKHRpbWVfdCAqdGltZXAsIHN0cnVjdCB0bSAqcmVzdWx0KQoreworICAgIHN0cnVjdCB0bSAqbG9jYWw7CisKKyAgICBhc3NlcnQgKHRpbWVwICE9IE5VTEwpOworICAgIGxvY2FsID0gbG9jYWx0aW1lKHRpbWVwKTsKKyAgICBpZiAobG9jYWwgPT0gTlVMTCkgeworICAgICAgICAvKiB1bmNvbnZlcnRpYmxlIHRpbWUgKi8KKyNpZmRlZiBFSU5WQUwKKyAgICAgICAgaWYgKGVycm5vID09IDApCisgICAgICAgICAgICBlcnJubyA9IEVJTlZBTDsKKyNlbmRpZgorICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgKnJlc3VsdCA9ICpsb2NhbDsKKyAgICByZXR1cm4gMDsKK30KKwogc3RhdGljIFB5T2JqZWN0ICoKIHRpbWVfbG9jYWx0aW1lKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBkb3VibGUgd2hlbjsKLSAgICBpZiAoIXBhcnNlX3RpbWVfZG91YmxlX2FyZ3MoYXJncywgInxPOmxvY2FsdGltZSIsICZ3aGVuKSkKKyAgICB0aW1lX3Qgd2hlbjsKKyAgICBzdHJ1Y3QgdG0gYnVmOworCisgICAgaWYgKCFwYXJzZV90aW1lX3RfYXJncyhhcmdzLCAifE86bG9jYWx0aW1lIiwgJndoZW4pKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXR1cm4gdGltZV9jb252ZXJ0KHdoZW4sIGxvY2FsdGltZSk7CisgICAgaWYgKHB5bG9jYWx0aW1lKCZ3aGVuLCAmYnVmKSA9PSAxKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gdG10b3R1cGxlKCZidWYpOwogfQogCiBQeURvY19TVFJWQVIobG9jYWx0aW1lX2RvYywKQEAgLTMwNyw0OSArMzg1LDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgJnAtPnRtX2hvdXIsICZwLT50bV9taW4sICZwLT50bV9zZWMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZwLT50bV93ZGF5LCAmcC0+dG1feWRheSwgJnAtPnRtX2lzZHN0KSkKICAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAvKiBJZiB5ZWFyIGlzIHNwZWNpZmllZCB3aXRoIGxlc3MgdGhhbiA0IGRpZ2l0cywgaXRzIGludGVycHJldGF0aW9uCi0gICAgICogZGVwZW5kcyBvbiB0aGUgYWNjZXB0MmR5ZWFyIHZhbHVlLgotICAgICAqCi0gICAgICogSWYgYWNjZXB0MmR5ZWFyIGlzIHRydWUgKGRlZmF1bHQpLCBhIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgYmVoYXZpb3IgaXMKLSAgICAgKiBpbnZva2VkIGFzIGZvbGxvd3M6Ci0gICAgICoKLSAgICAgKiAgIC0gZm9yIDItZGlnaXQgeWVhciwgY2VudHVyeSBpcyBndWVzc2VkIGFjY29yZGluZyB0byBQT1NJWCBydWxlcyBmb3IKLSAgICAgKiAgICAgICV5IHN0cnB0aW1lIGZvcm1hdDogMjFzdCBjZW50dXJ5IGZvciB5IDwgNjksIDIwdGggY2VudHVyeQotICAgICAqICAgICAgb3RoZXJ3aXNlLiAgQSBkZXByZWNhdGlvbiB3YXJuaW5nIGlzIGlzc3VlZCB3aGVuIGNlbnR1cnkKLSAgICAgKiAgICAgIGluZm9ybWF0aW9uIGlzIGd1ZXNzZWQgaW4gdGhpcyB3YXkuCi0gICAgICoKLSAgICAgKiAgIC0gZm9yIDMtZGlnaXQgb3IgbmVnYXRpdmUgeWVhciwgYSBWYWx1ZUVycm9yIGV4Y2VwdGlvbiBpcyByYWlzZWQuCi0gICAgICoKLSAgICAgKiBJZiBhY2NlcHQyZHllYXIgaXMgZmFsc2UgKHNldCBieSB0aGUgcHJvZ3JhbSBvciBhcyBhIHJlc3VsdCBvZiBhCi0gICAgICogbm9uLWVtcHR5IHZhbHVlIGFzc2lnbmVkIHRvIFBZVEhPTlkySyBlbnZpcm9ubWVudCB2YXJpYWJsZSkgYWxsIHllYXIKLSAgICAgKiB2YWx1ZXMgYXJlIGludGVycHJldGVkIGFzIGdpdmVuLgotICAgICAqLwotICAgIGlmICh5IDwgMTAwMCkgewotICAgICAgICBQeU9iamVjdCAqYWNjZXB0ID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcobW9kZGljdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhY2NlcHQyZHllYXIiKTsKLSAgICAgICAgaWYgKGFjY2VwdCAhPSBOVUxMKSB7Ci0gICAgICAgICAgICBpbnQgYWNjZXB0dmFsID0gIFB5T2JqZWN0X0lzVHJ1ZShhY2NlcHQpOwotICAgICAgICAgICAgaWYgKGFjY2VwdHZhbCA9PSAtMSkKLSAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgIGlmIChhY2NlcHR2YWwpIHsKLSAgICAgICAgICAgICAgICBpZiAoMCA8PSB5ICYmIHkgPCA2OSkKLSAgICAgICAgICAgICAgICAgICAgeSArPSAyMDAwOwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKDY5IDw9IHkgJiYgeSA8IDEwMCkKLSAgICAgICAgICAgICAgICAgICAgeSArPSAxOTAwOwotICAgICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ5ZWFyIG91dCBvZiByYW5nZSIpOwotICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5RXJyX1dhcm5FeChQeUV4Y19EZXByZWNhdGlvbldhcm5pbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAiQ2VudHVyeSBpbmZvIGd1ZXNzZWQgZm9yIGEgMi1kaWdpdCB5ZWFyLiIsIDEpICE9IDApCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgIH0KICAgICBwLT50bV95ZWFyID0geSAtIDE5MDA7CiAgICAgcC0+dG1fbW9uLS07CiAgICAgcC0+dG1fd2RheSA9IChwLT50bV93ZGF5ICsgMSkgJSA3OwpAQCAtNDcwLDcgKzUwNSw4IEBACiAKICAgICBpZiAodHVwID09IE5VTEwpIHsKICAgICAgICAgdGltZV90IHR0ID0gdGltZShOVUxMKTsKLSAgICAgICAgYnVmID0gKmxvY2FsdGltZSgmdHQpOworICAgICAgICBpZiAocHlsb2NhbHRpbWUoJnR0LCAmYnVmKSA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBlbHNlIGlmICghZ2V0dG1hcmcodHVwLCAmYnVmKSB8fCAhY2hlY2t0bSgmYnVmKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC00OTgsNyArNTM0LDcgQEAKICAgICBmbXQgPSBmb3JtYXQ7CiAjZWxzZQogICAgIC8qIENvbnZlcnQgdGhlIHVuaWNvZGUgc3RyaW5nIHRvIGFuIGFzY2lpIG9uZSAqLwotICAgIGZvcm1hdCA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQoZm9ybWF0X2FyZyk7CisgICAgZm9ybWF0ID0gUHlVbmljb2RlX0VuY29kZUxvY2FsZShmb3JtYXRfYXJnLCAic3Vycm9nYXRlZXNjYXBlIik7CiAgICAgaWYgKGZvcm1hdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBmbXQgPSBQeUJ5dGVzX0FTX1NUUklORyhmb3JtYXQpOwpAQCAtNTQ5LDcgKzU4NSw4IEBACiAjaWZkZWYgSEFWRV9XQ1NGVElNRQogICAgICAgICAgICAgcmV0ID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihvdXRidWYsIGJ1Zmxlbik7CiAjZWxzZQotICAgICAgICAgICAgcmV0ID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUob3V0YnVmLCBidWZsZW4pOworICAgICAgICAgICAgcmV0ID0gUHlVbmljb2RlX0RlY29kZUxvY2FsZUFuZFNpemUob3V0YnVmLCBidWZsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3Vycm9nYXRlZXNjYXBlIik7CiAjZW5kaWYKICAgICAgICAgICAgIFB5TWVtX0ZyZWUob3V0YnVmKTsKICAgICAgICAgICAgIGJyZWFrOwpAQCAtNTg3LDExICs2MjQsMTIgQEAKIHsKICAgICBQeU9iamVjdCAqc3RycHRpbWVfbW9kdWxlID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygiX3N0cnB0aW1lIik7CiAgICAgUHlPYmplY3QgKnN0cnB0aW1lX3Jlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihfc3RycHRpbWVfdGltZSk7CiAKICAgICBpZiAoIXN0cnB0aW1lX21vZHVsZSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgc3RycHRpbWVfcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzdHJwdGltZV9tb2R1bGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJfc3RycHRpbWVfdGltZSIsICJPIiwgYXJncyk7CisgICAgc3RycHRpbWVfcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzdHJwdGltZV9tb2R1bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmUHlJZF9fc3RycHRpbWVfdGltZSwgIk8iLCBhcmdzKTsKICAgICBQeV9ERUNSRUYoc3RycHRpbWVfbW9kdWxlKTsKICAgICByZXR1cm4gc3RycHRpbWVfcmVzdWx0OwogfQpAQCAtNjA4LDMxICs2NDYsMjAgQEAKIHsKICAgICAvKiBJbnNwaXJlZCBieSBPcGVuIEdyb3VwIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBhdmFpbGFibGUgYXQKICAgICAgKiBodHRwOi8vcHVicy5vcGVuZ3JvdXAub3JnL29ubGluZXB1YnMvMDA5Njk1Mzk5L2Z1bmN0aW9ucy9hc2N0aW1lLmh0bWwgKi8KLSAgICBzdGF0aWMgY2hhciB3ZGF5X25hbWVbN11bM10gPSB7CisgICAgc3RhdGljIGNoYXIgd2RheV9uYW1lWzddWzRdID0gewogICAgICAgICAiU3VuIiwgIk1vbiIsICJUdWUiLCAiV2VkIiwgIlRodSIsICJGcmkiLCAiU2F0IgogICAgIH07Ci0gICAgc3RhdGljIGNoYXIgbW9uX25hbWVbMTJdWzNdID0geworICAgIHN0YXRpYyBjaGFyIG1vbl9uYW1lWzEyXVs0XSA9IHsKICAgICAgICAgIkphbiIsICJGZWIiLCAiTWFyIiwgIkFwciIsICJNYXkiLCAiSnVuIiwKICAgICAgICAgIkp1bCIsICJBdWciLCAiU2VwIiwgIk9jdCIsICJOb3YiLCAiRGVjIgogICAgIH07Ci0gICAgY2hhciBidWZbMjBdOyAvKiAnU3VuIFNlcCAxNiAwMTowMzo1MlwwJyAqLwotICAgIGludCBuOwotCi0gICAgbiA9IFB5T1Nfc25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgIiUuM3MgJS4zcyUzZCAlLjJkOiUuMmQ6JS4yZCIsCi0gICAgICAgICAgICAgICAgICAgICAgd2RheV9uYW1lW3RpbWVwdHItPnRtX3dkYXldLAotICAgICAgICAgICAgICAgICAgICAgIG1vbl9uYW1lW3RpbWVwdHItPnRtX21vbl0sCi0gICAgICAgICAgICAgICAgICAgICAgdGltZXB0ci0+dG1fbWRheSwgdGltZXB0ci0+dG1faG91ciwKLSAgICAgICAgICAgICAgICAgICAgICB0aW1lcHRyLT50bV9taW4sIHRpbWVwdHItPnRtX3NlYyk7Ci0gICAgLyogWFhYOiBzaW5jZSB0aGUgZmllbGRzIHVzZWQgYnkgc25wcmludGYgYWJvdmUgYXJlIHZhbGlkYXRlZCBpbiBjaGVja3RtLAotICAgICAqIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uIHNob3VsZCBuZXZlciB0cmlnZ2VyLiBXZSBrZWVwIHRoZSBjaGVjayBiZWNhdXNlCi0gICAgICogaGlzdG9yaWNhbGx5IGZpeGVkIHNpemUgYnVmZmVyIHVzZWQgaW4gYXNjdGltZSB3YXMgdGhlIHNvdXJjZSBvZgotICAgICAqIGNyYXNoZXMuICovCi0gICAgaWYgKG4gKyAxICE9IHNpemVvZihidWYpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAidW5jb252ZXJ0aWJsZSB0aW1lIik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJXMgJWQiLCBidWYsIDE5MDAgKyB0aW1lcHRyLT50bV95ZWFyKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoCisgICAgICAgICIlcyAlcyUzZCAlLjJkOiUuMmQ6JS4yZCAlZCIsCisgICAgICAgIHdkYXlfbmFtZVt0aW1lcHRyLT50bV93ZGF5XSwKKyAgICAgICAgbW9uX25hbWVbdGltZXB0ci0+dG1fbW9uXSwKKyAgICAgICAgdGltZXB0ci0+dG1fbWRheSwgdGltZXB0ci0+dG1faG91ciwKKyAgICAgICAgdGltZXB0ci0+dG1fbWluLCB0aW1lcHRyLT50bV9zZWMsCisgICAgICAgIDE5MDAgKyB0aW1lcHRyLT50bV95ZWFyKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTY0NSw3ICs2NzIsOSBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAodHVwID09IE5VTEwpIHsKICAgICAgICAgdGltZV90IHR0ID0gdGltZShOVUxMKTsKLSAgICAgICAgYnVmID0gKmxvY2FsdGltZSgmdHQpOworICAgICAgICBpZiAocHlsb2NhbHRpbWUoJnR0LCAmYnVmKSA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgfSBlbHNlIGlmICghZ2V0dG1hcmcodHVwLCAmYnVmKSB8fCAhY2hlY2t0bSgmYnVmKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcmV0dXJuIF9hc2N0aW1lKCZidWYpOwpAQCAtNjYxLDI4ICs2OTAsMTMgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiB0aW1lX2N0aW1lKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeU9iamVjdCAqb3QgPSBOVUxMOwogICAgIHRpbWVfdCB0dDsKLSAgICBzdHJ1Y3QgdG0gKnRpbWVwdHI7Ci0KLSAgICBpZiAoIVB5QXJnX1VucGFja1R1cGxlKGFyZ3MsICJjdGltZSIsIDAsIDEsICZvdCkpCisgICAgc3RydWN0IHRtIGJ1ZjsKKyAgICBpZiAoIXBhcnNlX3RpbWVfdF9hcmdzKGFyZ3MsICJ8TzpjdGltZSIsICZ0dCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmIChvdCA9PSBOVUxMIHx8IG90ID09IFB5X05vbmUpCi0gICAgICAgIHR0ID0gdGltZShOVUxMKTsKLSAgICBlbHNlIHsKLSAgICAgICAgZG91YmxlIGR0ID0gUHlGbG9hdF9Bc0RvdWJsZShvdCk7Ci0gICAgICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIHR0ID0gX1B5VGltZV9Eb3VibGVUb1RpbWV0KGR0KTsKLSAgICAgICAgaWYgKHR0ID09ICh0aW1lX3QpLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICB0aW1lcHRyID0gbG9jYWx0aW1lKCZ0dCk7Ci0gICAgaWYgKHRpbWVwdHIgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInVuY29udmVydGlibGUgdGltZSIpOworICAgIGlmIChweWxvY2FsdGltZSgmdHQsICZidWYpID09IC0xKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgcmV0dXJuIF9hc2N0aW1lKHRpbWVwdHIpOworICAgIHJldHVybiBfYXNjdGltZSgmYnVmKTsKIH0KIAogUHlEb2NfU1RSVkFSKGN0aW1lX2RvYywKQEAgLTc1NSw2ICs3NjksOTYgQEAKIHNob3VsZCBub3QgYmUgcmVsaWVkIG9uLiIpOwogI2VuZGlmIC8qIEhBVkVfV09SS0lOR19UWlNFVCAqLwogCitzdGF0aWMgUHlPYmplY3QgKgordGltZV93YWxsY2xvY2soUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICp1bnVzZWQpCit7CisjaWYgZGVmaW5lZChNU19XSU5ET1dTKSAmJiAhZGVmaW5lZChfX0JPUkxBTkRDX18pCisgICAgcmV0dXJuIHdpbjMyX2Nsb2NrKDEpOworI2VsaWYgZGVmaW5lZChIQVZFX0NMT0NLX0dFVFRJTUUpICYmIGRlZmluZWQoQ0xPQ0tfTU9OT1RPTklDKQorICAgIHN0YXRpYyBpbnQgY2xrX2luZGV4ID0gMDsKKyAgICBjbG9ja2lkX3QgY2xrX2lkc1tdID0geworI2lmZGVmIENMT0NLX01PTk9UT05JQ19SQVcKKyAgICAgICAgQ0xPQ0tfTU9OT1RPTklDX1JBVywKKyNlbmRpZgorICAgICAgICBDTE9DS19NT05PVE9OSUMKKyNpZmRlZiBDTE9DS19SRUFMVElNRQorICAgICAgICAgIC8qIE9uIExpbnV4LCBDTE9DS19SRUFMVElNRSB1c2VzIHRoZSBzYW1lIGNsb2NrIHRoYW4gZ2V0dGltZW9mZGF5KCksCisgICAgICAgICAgICAgYnV0IGNsb2NrX2dldHRpbWUoKSBoYXMgYSBuYW5vc2Vjb25kIHJlc29sdXRpb24uICovCisgICAgICAgICwgQ0xPQ0tfUkVBTFRJTUUKKyNlbmRpZgorICAgIH07CisgICAgaW50IHJldDsKKyAgICBzdHJ1Y3QgdGltZXNwZWMgdHA7CisKKyAgICB3aGlsZSAoMCA8PSBjbGtfaW5kZXgpIHsKKyAgICAgICAgY2xvY2tpZF90IGNsa19pZCA9IGNsa19pZHNbY2xrX2luZGV4XTsKKyAgICAgICAgcmV0ID0gY2xvY2tfZ2V0dGltZShjbGtfaWQsICZ0cCk7CisgICAgICAgIGlmIChyZXQgPT0gMCkKKyAgICAgICAgICAgIHJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUodHAudHZfc2VjICsgdHAudHZfbnNlYyAqIDFlLTkpOworCisgICAgICAgIGNsa19pbmRleCsrOworICAgICAgICBpZiAoUHlfQVJSQVlfTEVOR1RIKGNsa19pZHMpIDw9IGNsa19pbmRleCkKKyAgICAgICAgICAgIGNsa19pbmRleCA9IC0xOworICAgIH0KKyAgICByZXR1cm4gdGltZV90aW1lKHNlbGYsIE5VTEwpOworI2Vsc2UKKyAgICByZXR1cm4gdGltZV90aW1lKHNlbGYsIE5VTEwpOworI2VuZGlmCit9CisKK1B5RG9jX1NUUlZBUih3YWxsY2xvY2tfZG9jLAorIndhbGxjbG9jaygpIC0+IGZsb2F0XG5cCitcblwKK1JldHVybiB0aGUgY3VycmVudCB0aW1lIGluIGZyYWN0aW9ucyBvZiBhIHNlY29uZCB0byB0aGUgc3lzdGVtJ3MgYmVzdFxuXAorYWJpbGl0eS4gVXNlIHRoaXMgd2hlbiB0aGUgbW9zdCBhY2N1cmF0ZSByZXByZXNlbnRhdGlvbiBvZiB3YWxsLWNsb2NrIGlzXG5cCityZXF1aXJlZCwgaS5lLiB3aGVuIFwicHJvY2Vzc29yIHRpbWVcIiBpcyBpbmFwcHJvcHJpYXRlLiBUaGUgcmVmZXJlbmNlIHBvaW50XG5cCitvZiB0aGUgcmV0dXJuZWQgdmFsdWUgaXMgdW5kZWZpbmVkIHNvIG9ubHkgdGhlIGRpZmZlcmVuY2Ugb2YgY29uc2VjdXRpdmVcblwKK2NhbGxzIGlzIHZhbGlkLiIpOworCisjaWYgKGRlZmluZWQoTVNfV0lORE9XUykgJiYgIWRlZmluZWQoX19CT1JMQU5EQ19fKSkgXAorICAgIHx8IChkZWZpbmVkKEhBVkVfQ0xPQ0tfR0VUVElNRSkgJiYgZGVmaW5lZChDTE9DS19NT05PVE9OSUMpKQorIyAgZGVmaW5lIEhBVkVfUFlUSU1FX01PTk9UT05JQworI2VuZGlmCisKKyNpZmRlZiBIQVZFX1BZVElNRV9NT05PVE9OSUMKK3N0YXRpYyBQeU9iamVjdCAqCit0aW1lX21vbm90b25pYyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKK3sKKyNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpICYmICFkZWZpbmVkKF9fQk9STEFORENfXykKKyAgICByZXR1cm4gd2luMzJfY2xvY2soMCk7CisjZWxzZQorICAgIHN0YXRpYyBpbnQgY2xrX2luZGV4ID0gMDsKKyAgICBjbG9ja2lkX3QgY2xrX2lkc1tdID0geworI2lmZGVmIENMT0NLX01PTk9UT05JQ19SQVcKKyAgICAgICAgQ0xPQ0tfTU9OT1RPTklDX1JBVywKKyNlbmRpZgorICAgICAgICBDTE9DS19NT05PVE9OSUMKKyAgICB9OworICAgIGludCByZXQ7CisgICAgc3RydWN0IHRpbWVzcGVjIHRwOworCisgICAgd2hpbGUgKDAgPD0gY2xrX2luZGV4KSB7CisgICAgICAgIGNsb2NraWRfdCBjbGtfaWQgPSBjbGtfaWRzW2Nsa19pbmRleF07CisgICAgICAgIHJldCA9IGNsb2NrX2dldHRpbWUoY2xrX2lkLCAmdHApOworICAgICAgICBpZiAocmV0ID09IDApCisgICAgICAgICAgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKHRwLnR2X3NlYyArIHRwLnR2X25zZWMgKiAxZS05KTsKKworICAgICAgICBjbGtfaW5kZXgrKzsKKyAgICAgICAgaWYgKFB5X0FSUkFZX0xFTkdUSChjbGtfaWRzKSA8PSBjbGtfaW5kZXgpCisgICAgICAgICAgICBjbGtfaW5kZXggPSAtMTsKKyAgICB9CisgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgIHJldHVybiBOVUxMOworI2VuZGlmCit9CisKK1B5RG9jX1NUUlZBUihtb25vdG9uaWNfZG9jLAorIm1vbm90b25pYygpIC0+IGZsb2F0XG5cCitcblwKK01vbm90b25pYyBjbG9jay4gVGhlIHJlZmVyZW5jZSBwb2ludCBvZiB0aGUgcmV0dXJuZWQgdmFsdWUgaXMgdW5kZWZpbmVkIHNvXG5cCitvbmx5IHRoZSBkaWZmZXJlbmNlIG9mIGNvbnNlY3V0aXZlIGNhbGxzIGlzIHZhbGlkLiIpOworI2VuZGlmCisKIHN0YXRpYyB2b2lkCiBQeUluaXRfdGltZXpvbmUoUHlPYmplY3QgKm0pIHsKICAgICAvKiBUaGlzIGNvZGUgbW92ZWQgZnJvbSBQeUluaXRfdGltZSB3aG9sZXNhbGUgdG8gYWxsb3cgY2FsbGluZyBpdCBmcm9tCkBAIC03OTEsOCArODk1LDggQEAKICNlbmRpZiAvKiBQWU9TX09TMiAqLwogI2VuZGlmCiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgImRheWxpZ2h0IiwgZGF5bGlnaHQpOwotICAgIG90ejAgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZSh0em5hbWVbMF0sIHN0cmxlbih0em5hbWVbMF0pKTsKLSAgICBvdHoxID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUodHpuYW1lWzFdLCBzdHJsZW4odHpuYW1lWzFdKSk7CisgICAgb3R6MCA9IFB5VW5pY29kZV9EZWNvZGVMb2NhbGUodHpuYW1lWzBdLCAic3Vycm9nYXRlZXNjYXBlIik7CisgICAgb3R6MSA9IFB5VW5pY29kZV9EZWNvZGVMb2NhbGUodHpuYW1lWzFdLCAic3Vycm9nYXRlZXNjYXBlIik7CiAgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJ0em5hbWUiLCBQeV9CdWlsZFZhbHVlKCIoTk4pIiwgb3R6MCwgb3R6MSkpOwogI2Vsc2UgLyogIUhBVkVfVFpOQU1FIHx8IF9fR0xJQkNfXyB8fCBfX0NZR1dJTl9fKi8KICNpZmRlZiBIQVZFX1NUUlVDVF9UTV9UTV9aT05FCkBAIC04NDMsMTQgKzk0NywzOCBAQAogICAgICAgICAgICAgICAgICAgICAgICBQeV9CdWlsZFZhbHVlKCIoenopIiwgX3R6bmFtZVswXSwgX3R6bmFtZVsxXSkpOwogI2VuZGlmIC8qIF9fQ1lHV0lOX18gKi8KICNlbmRpZiAvKiAhSEFWRV9UWk5BTUUgfHwgX19HTElCQ19fIHx8IF9fQ1lHV0lOX18qLworCisjaWYgZGVmaW5lZChIQVZFX0NMT0NLX0dFVFRJTUUpIHx8IGRlZmluZWQoSEFWRV9DTE9DS19HRVRSRVMpCisjaWZkZWYgQ0xPQ0tfUkVBTFRJTUUKKyAgICBQeU1vZHVsZV9BZGRJbnRNYWNybyhtLCBDTE9DS19SRUFMVElNRSk7CisjZW5kaWYKKyNpZmRlZiBDTE9DS19NT05PVE9OSUMKKyAgICBQeU1vZHVsZV9BZGRJbnRNYWNybyhtLCBDTE9DS19NT05PVE9OSUMpOworI2VuZGlmCisjaWZkZWYgQ0xPQ0tfTU9OT1RPTklDX1JBVworICAgIFB5TW9kdWxlX0FkZEludE1hY3JvKG0sIENMT0NLX01PTk9UT05JQ19SQVcpOworI2VuZGlmCisjaWZkZWYgQ0xPQ0tfUFJPQ0VTU19DUFVUSU1FX0lECisgICAgUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgQ0xPQ0tfUFJPQ0VTU19DUFVUSU1FX0lEKTsKKyNlbmRpZgorI2lmZGVmIENMT0NLX1RIUkVBRF9DUFVUSU1FX0lECisgICAgUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgQ0xPQ0tfVEhSRUFEX0NQVVRJTUVfSUQpOworI2VuZGlmCisjZW5kaWYgLyogSEFWRV9DTE9DS19HRVRUSU1FICovCiB9CiAKIAogc3RhdGljIFB5TWV0aG9kRGVmIHRpbWVfbWV0aG9kc1tdID0gewogICAgIHsidGltZSIsICAgICAgICAgICAgdGltZV90aW1lLCBNRVRIX05PQVJHUywgdGltZV9kb2N9LAotI2lmZGVmIEhBVkVfQ0xPQ0sKKyNpZiAoZGVmaW5lZChNU19XSU5ET1dTKSAmJiAhZGVmaW5lZChfX0JPUkxBTkRDX18pKSB8fCBkZWZpbmVkKEhBVkVfQ0xPQ0spCiAgICAgeyJjbG9jayIsICAgICAgICAgICB0aW1lX2Nsb2NrLCBNRVRIX05PQVJHUywgY2xvY2tfZG9jfSwKICNlbmRpZgorI2lmZGVmIEhBVkVfQ0xPQ0tfR0VUVElNRQorICAgIHsiY2xvY2tfZ2V0dGltZSIsICAgdGltZV9jbG9ja19nZXR0aW1lLCBNRVRIX1ZBUkFSR1MsIGNsb2NrX2dldHRpbWVfZG9jfSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfQ0xPQ0tfR0VUUkVTCisgICAgeyJjbG9ja19nZXRyZXMiLCAgICB0aW1lX2Nsb2NrX2dldHJlcywgTUVUSF9WQVJBUkdTLCBjbG9ja19nZXRyZXNfZG9jfSwKKyNlbmRpZgogICAgIHsic2xlZXAiLCAgICAgICAgICAgdGltZV9zbGVlcCwgTUVUSF9WQVJBUkdTLCBzbGVlcF9kb2N9LAogICAgIHsiZ210aW1lIiwgICAgICAgICAgdGltZV9nbXRpbWUsIE1FVEhfVkFSQVJHUywgZ210aW1lX2RvY30sCiAgICAgeyJsb2NhbHRpbWUiLCAgICAgICB0aW1lX2xvY2FsdGltZSwgTUVUSF9WQVJBUkdTLCBsb2NhbHRpbWVfZG9jfSwKQEAgLTg1OSw2ICs5ODcsOSBAQAogI2lmZGVmIEhBVkVfTUtUSU1FCiAgICAgeyJta3RpbWUiLCAgICAgICAgICB0aW1lX21rdGltZSwgTUVUSF9PLCBta3RpbWVfZG9jfSwKICNlbmRpZgorI2lmZGVmIEhBVkVfUFlUSU1FX01PTk9UT05JQworICAgIHsibW9ub3RvbmljIiwgICAgICAgdGltZV9tb25vdG9uaWMsIE1FVEhfTk9BUkdTLCBtb25vdG9uaWNfZG9jfSwKKyNlbmRpZgogI2lmZGVmIEhBVkVfU1RSRlRJTUUKICAgICB7InN0cmZ0aW1lIiwgICAgICAgIHRpbWVfc3RyZnRpbWUsIE1FVEhfVkFSQVJHUywgc3RyZnRpbWVfZG9jfSwKICNlbmRpZgpAQCAtODY2LDYgKzk5Nyw3IEBACiAjaWZkZWYgSEFWRV9XT1JLSU5HX1RaU0VUCiAgICAgeyJ0enNldCIsICAgICAgICAgICB0aW1lX3R6c2V0LCBNRVRIX05PQVJHUywgdHpzZXRfZG9jfSwKICNlbmRpZgorICAgIHsid2FsbGNsb2NrIiwgICAgICAgdGltZV93YWxsY2xvY2ssIE1FVEhfTk9BUkdTLCB3YWxsY2xvY2tfZG9jfSwKICAgICB7TlVMTCwgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAvKiBzZW50aW5lbCAqLwogfTsKIApAQCAtODgxLDcgKzEwMTMsNyBAQAogXG5cCiBUaGUgb3RoZXIgcmVwcmVzZW50YXRpb24gaXMgYSB0dXBsZSBvZiA5IGludGVnZXJzIGdpdmluZyBsb2NhbCB0aW1lLlxuXAogVGhlIHR1cGxlIGl0ZW1zIGFyZTpcblwKLSAgeWVhciAoZm91ciBkaWdpdHMsIGUuZy4gMTk5OClcblwKKyAgeWVhciAoaW5jbHVkaW5nIGNlbnR1cnksIGUuZy4gMTk5OClcblwKICAgbW9udGggKDEtMTIpXG5cCiAgIGRheSAoMS0zMSlcblwKICAgaG91cnMgKDAtMjMpXG5cCkBAIC05MzMsMzAgKzEwNjUsMTMgQEAKIFB5SW5pdF90aW1lKHZvaWQpCiB7CiAgICAgUHlPYmplY3QgKm07Ci0gICAgY2hhciAqcDsKICAgICBtID0gUHlNb2R1bGVfQ3JlYXRlKCZ0aW1lbW9kdWxlKTsKICAgICBpZiAobSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIC8qIEFjY2VwdCAyLWRpZ2l0IGRhdGVzIHVubGVzcyBQWVRIT05ZMksgaXMgc2V0IGFuZCBub24tZW1wdHkgKi8KLSAgICBwID0gUHlfR0VURU5WKCJQWVRIT05ZMksiKTsKLSAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiYWNjZXB0MmR5ZWFyIiwgKGxvbmcpICghcCB8fCAhKnApKTsKLSAgICAvKiBTcXVpcnJlbCBhd2F5IHRoZSBtb2R1bGUncyBkaWN0aW9uYXJ5IGZvciB0aGUgeTJrIGNoZWNrICovCi0gICAgbW9kZGljdCA9IFB5TW9kdWxlX0dldERpY3QobSk7Ci0gICAgUHlfSU5DUkVGKG1vZGRpY3QpOwotCiAgICAgLyogU2V0LCBvciByZXNldCwgbW9kdWxlIHZhcmlhYmxlcyBsaWtlIHRpbWUudGltZXpvbmUgKi8KICAgICBQeUluaXRfdGltZXpvbmUobSk7CiAKLSNpZmRlZiBNU19XSU5ET1dTCi0gICAgLyogSGVscGVyIHRvIGFsbG93IGludGVycnVwdHMgZm9yIFdpbmRvd3MuCi0gICAgICAgSWYgQ3RybCtDIGV2ZW50IGRlbGl2ZXJlZCB3aGlsZSBub3Qgc2xlZXBpbmcKLSAgICAgICBpdCB3aWxsIGJlIGlnbm9yZWQuCi0gICAgKi8KLSAgICBtYWluX3RocmVhZCA9IFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQoKTsKLSAgICBoSW50ZXJydXB0RXZlbnQgPSBDcmVhdGVFdmVudChOVUxMLCBUUlVFLCBGQUxTRSwgTlVMTCk7Ci0gICAgU2V0Q29uc29sZUN0cmxIYW5kbGVyKCBQeUN0cmxIYW5kbGVyLCBUUlVFKTsKLSNlbmRpZiAvKiBNU19XSU5ET1dTICovCiAgICAgaWYgKCFpbml0aWFsaXplZCkgewogICAgICAgICBQeVN0cnVjdFNlcXVlbmNlX0luaXRUeXBlKCZTdHJ1Y3RUaW1lVHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RydWN0X3RpbWVfdHlwZV9kZXNjKTsKQEAgLTk4NywyMyArMTEwMiwyOCBAQAogI2lmIGRlZmluZWQoSEFWRV9TRUxFQ1QpICYmICFkZWZpbmVkKF9fRU1YX18pCiAgICAgc3RydWN0IHRpbWV2YWwgdDsKICAgICBkb3VibGUgZnJhYzsKKyAgICBpbnQgZXJyOworCiAgICAgZnJhYyA9IGZtb2Qoc2VjcywgMS4wKTsKICAgICBzZWNzID0gZmxvb3Ioc2Vjcyk7CiAgICAgdC50dl9zZWMgPSAobG9uZylzZWNzOwogICAgIHQudHZfdXNlYyA9IChsb25nKShmcmFjKjEwMDAwMDAuMCk7CiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgIGlmIChzZWxlY3QoMCwgKGZkX3NldCAqKTAsIChmZF9zZXQgKikwLCAoZmRfc2V0ICopMCwgJnQpICE9IDApIHsKKyAgICBlcnIgPSBzZWxlY3QoMCwgKGZkX3NldCAqKTAsIChmZF9zZXQgKikwLCAoZmRfc2V0ICopMCwgJnQpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgaWYgKGVyciAhPSAwKSB7CiAjaWZkZWYgRUlOVFIKLSAgICAgICAgaWYgKGVycm5vICE9IEVJTlRSKSB7Ci0jZWxzZQotICAgICAgICBpZiAoMSkgeworICAgICAgICBpZiAoZXJybm8gPT0gRUlOVFIpIHsKKyAgICAgICAgICAgIGlmIChQeUVycl9DaGVja1NpZ25hbHMoKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgZWxzZQogI2VuZGlmCi0gICAgICAgICAgICBQeV9CTE9DS19USFJFQURTCisgICAgICAgIHsKICAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgfQogICAgIH0KLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogI2VsaWYgZGVmaW5lZChfX1dBVENPTUNfXykgJiYgIWRlZmluZWQoX19RTlhfXykKICAgICAvKiBYWFggQ2FuJ3QgaW50ZXJydXB0IHRoaXMgc2xlZXAgKi8KICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCkBAIC0xMDI0LDE4ICsxMTQ0LDE0IEBACiAgICAgICAgICAqIGJ5IEd1aWRvLCBvbmx5IHRoZSBtYWluIHRocmVhZCBjYW4gYmUgaW50ZXJydXB0ZWQuCiAgICAgICAgICAqLwogICAgICAgICB1bF9taWxsaXMgPSAodW5zaWduZWQgbG9uZyltaWxsaXNlY3M7Ci0gICAgICAgIGlmICh1bF9taWxsaXMgPT0gMCB8fAotICAgICAgICAgICAgbWFpbl90aHJlYWQgIT0gUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpKQorICAgICAgICBpZiAodWxfbWlsbGlzID09IDAgfHwgIV9QeU9TX0lzTWFpblRocmVhZCgpKQogICAgICAgICAgICAgU2xlZXAodWxfbWlsbGlzKTsKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICBEV09SRCByYzsKKyAgICAgICAgICAgIEhBTkRMRSBoSW50ZXJydXB0RXZlbnQgPSBfUHlPU19TaWdpbnRFdmVudCgpOwogICAgICAgICAgICAgUmVzZXRFdmVudChoSW50ZXJydXB0RXZlbnQpOwogICAgICAgICAgICAgcmMgPSBXYWl0Rm9yU2luZ2xlT2JqZWN0KGhJbnRlcnJ1cHRFdmVudCwgdWxfbWlsbGlzKTsKICAgICAgICAgICAgIGlmIChyYyA9PSBXQUlUX09CSkVDVF8wKSB7Ci0gICAgICAgICAgICAgICAgLyogWWllbGQgdG8gbWFrZSBzdXJlIHJlYWwgUHl0aG9uIHNpZ25hbAotICAgICAgICAgICAgICAgICAqIGhhbmRsZXIgY2FsbGVkLgotICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgICAgIFNsZWVwKDEpOwogICAgICAgICAgICAgICAgIFB5X0JMT0NLX1RIUkVBRFMKICAgICAgICAgICAgICAgICBlcnJubyA9IEVJTlRSOwogICAgICAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKZGlmZiAtLWdpdCBhL01vZHVsZXMvdW5pY29kZWRhdGEuYyBiL01vZHVsZXMvdW5pY29kZWRhdGEuYwppbmRleCA1M2U0OGRmLi5lZDc5MTY1IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3VuaWNvZGVkYXRhLmMKKysrIGIvTW9kdWxlcy91bmljb2RlZGF0YS5jCkBAIC05MywxNiArOTMsMTMgQEAKIAogc3RhdGljIFB5X1VDUzQgZ2V0dWNoYXIoUHlVbmljb2RlT2JqZWN0ICpvYmopCiB7Ci0gICAgUHlfVU5JQ09ERSAqdiA9IFB5VW5pY29kZV9BU19VTklDT0RFKG9iaik7Ci0KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKG9iaikgPT0gMSkKLSAgICAgICAgcmV0dXJuICp2OwotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBlbHNlIGlmICgoUHlVbmljb2RlX0dFVF9TSVpFKG9iaikgPT0gMikgJiYKLSAgICAgICAgICAgICAoMHhEODAwIDw9IHZbMF0gJiYgdlswXSA8PSAweERCRkYpICYmCi0gICAgICAgICAgICAgKDB4REMwMCA8PSB2WzFdICYmIHZbMV0gPD0gMHhERkZGKSkKLSAgICAgICAgcmV0dXJuICgoKHZbMF0gJiAweDNGRik8PDEwKSB8ICh2WzFdICYgMHgzRkYpKSArIDB4MTAwMDA7Ci0jZW5kaWYKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKG9iaikpCisgICAgICAgIHJldHVybiAoUHlfVUNTNCktMTsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKSA9PSAxKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSkKKyAgICAgICAgICAgIHJldHVybiAoUHlfVUNTNCktMTsKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9SRUFEX0NIQVIob2JqLCAwKTsKKyAgICB9CiAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgIm5lZWQgYSBzaW5nbGUgVW5pY29kZSBjaGFyYWN0ZXIgYXMgcGFyYW1ldGVyIik7CiAgICAgcmV0dXJuIChQeV9VQ1M0KS0xOwpAQCAtNDQzLDcgKzQ0MCw3IEBACiAgICAgICAgZnJvbSBUb29scy91bmljb2RlL21ha2V1bmljb2RlZGF0YS5weSwgaXQgc2hvdWxkIG5vdCBiZSBwb3NzaWJsZQogICAgICAgIHRvIG92ZXJmbG93IGRlY29tcF9wcmVmaXguICovCiAgICAgcHJlZml4X2luZGV4ID0gZGVjb21wX2RhdGFbaW5kZXhdICYgMjU1OwotICAgIGFzc2VydChwcmVmaXhfaW5kZXggPCAoc2l6ZW9mKGRlY29tcF9wcmVmaXgpL3NpemVvZigqZGVjb21wX3ByZWZpeCkpKTsKKyAgICBhc3NlcnQocHJlZml4X2luZGV4IDwgUHlfQVJSQVlfTEVOR1RIKGRlY29tcF9wcmVmaXgpKTsKIAogICAgIC8qIGNvcHkgcHJlZml4ICovCiAgICAgaSA9IHN0cmxlbihkZWNvbXBfcHJlZml4W3ByZWZpeF9pbmRleF0pOwpAQCAtNDk4LDM2ICs0OTUsNDQgQEAKIG5mZF9uZmtkKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqaW5wdXQsIGludCBrKQogewogICAgIFB5T2JqZWN0ICpyZXN1bHQ7Ci0gICAgUHlfVU5JQ09ERSAqaSwgKmVuZCwgKm87CisgICAgUHlfVUNTNCAqb3V0cHV0OworICAgIFB5X3NzaXplX3QgaSwgbywgb3NpemU7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKICAgICAvKiBMb25nZXN0IGRlY29tcG9zaXRpb24gaW4gVW5pY29kZSAzLjI6IFUrRkRGQSAqLwotICAgIFB5X1VOSUNPREUgc3RhY2tbMjBdOworICAgIFB5X1VDUzQgc3RhY2tbMjBdOwogICAgIFB5X3NzaXplX3Qgc3BhY2UsIGlzaXplOwogICAgIGludCBpbmRleCwgcHJlZml4LCBjb3VudCwgc3RhY2twdHI7CiAgICAgdW5zaWduZWQgY2hhciBwcmV2LCBjdXI7CiAKICAgICBzdGFja3B0ciA9IDA7Ci0gICAgaXNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUoaW5wdXQpOworICAgIGlzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoaW5wdXQpOwogICAgIC8qIE92ZXJhbGxvY2F0ZSBhdG1vc3QgMTAgY2hhcmFjdGVycy4gKi8KICAgICBzcGFjZSA9IChpc2l6ZSA+IDEwID8gMTAgOiBpc2l6ZSkgKyBpc2l6ZTsKLSAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgc3BhY2UpOwotICAgIGlmICghcmVzdWx0KQorICAgIG9zaXplID0gc3BhY2U7CisgICAgb3V0cHV0ID0gUHlNZW1fTWFsbG9jKHNwYWNlICogc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICBpZiAoIW91dHB1dCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpID0gUHlVbmljb2RlX0FTX1VOSUNPREUoaW5wdXQpOwotICAgIGVuZCA9IGkgKyBpc2l6ZTsKLSAgICBvID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KTsKKyAgICB9CisgICAgaSA9IG8gPSAwOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChpbnB1dCk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKGlucHV0KTsKIAotICAgIHdoaWxlIChpIDwgZW5kKSB7Ci0gICAgICAgIHN0YWNrW3N0YWNrcHRyKytdID0gKmkrKzsKKyAgICB3aGlsZSAoaSA8IGlzaXplKSB7CisgICAgICAgIHN0YWNrW3N0YWNrcHRyKytdID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSsrKTsKICAgICAgICAgd2hpbGUoc3RhY2twdHIpIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgY29kZSA9IHN0YWNrWy0tc3RhY2twdHJdOworICAgICAgICAgICAgUHlfVUNTNCBjb2RlID0gc3RhY2tbLS1zdGFja3B0cl07CiAgICAgICAgICAgICAvKiBIYW5ndWwgRGVjb21wb3NpdGlvbiBhZGRzIHRocmVlIGNoYXJhY3RlcnMgaW4KICAgICAgICAgICAgICAgIGEgc2luZ2xlIHN0ZXAsIHNvIHdlIG5lZWQgYXRsZWFzdCB0aGF0IG11Y2ggcm9vbS4gKi8KICAgICAgICAgICAgIGlmIChzcGFjZSA8IDMpIHsKLSAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG5ld3NpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUocmVzdWx0KSArIDEwOworICAgICAgICAgICAgICAgIG9zaXplICs9IDEwOwogICAgICAgICAgICAgICAgIHNwYWNlICs9IDEwOwotICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUmVzaXplKCZyZXN1bHQsIG5ld3NpemUpID09IC0xKQorICAgICAgICAgICAgICAgIG91dHB1dCA9IFB5TWVtX1JlYWxsb2Mob3V0cHV0LCBvc2l6ZSpzaXplb2YoUHlfVUNTNCkpOworICAgICAgICAgICAgICAgIGlmIChvdXRwdXQgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgICAgICBvID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KSArIG5ld3NpemUgLSBzcGFjZTsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAvKiBIYW5ndWwgRGVjb21wb3NpdGlvbi4gKi8KICAgICAgICAgICAgIGlmIChTQmFzZSA8PSBjb2RlICYmIGNvZGUgPCAoU0Jhc2UrU0NvdW50KSkgewpAQCAtNTM1LDExICs1NDAsMTEgQEAKICAgICAgICAgICAgICAgICBpbnQgTCA9IExCYXNlICsgU0luZGV4IC8gTkNvdW50OwogICAgICAgICAgICAgICAgIGludCBWID0gVkJhc2UgKyAoU0luZGV4ICUgTkNvdW50KSAvIFRDb3VudDsKICAgICAgICAgICAgICAgICBpbnQgVCA9IFRCYXNlICsgU0luZGV4ICUgVENvdW50OwotICAgICAgICAgICAgICAgICpvKysgPSBMOwotICAgICAgICAgICAgICAgICpvKysgPSBWOworICAgICAgICAgICAgICAgIG91dHB1dFtvKytdID0gTDsKKyAgICAgICAgICAgICAgICBvdXRwdXRbbysrXSA9IFY7CiAgICAgICAgICAgICAgICAgc3BhY2UgLT0gMjsKICAgICAgICAgICAgICAgICBpZiAoVCAhPSBUQmFzZSkgewotICAgICAgICAgICAgICAgICAgICAqbysrID0gVDsKKyAgICAgICAgICAgICAgICAgICAgb3V0cHV0W28rK10gPSBUOwogICAgICAgICAgICAgICAgICAgICBzcGFjZSAtLTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgY29udGludWU7CkBAIC01NTksNyArNTY0LDcgQEAKICAgICAgICAgICAgIC8qIENvcHkgY2hhcmFjdGVyIGlmIGl0IGlzIG5vdCBkZWNvbXBvc2FibGUsIG9yIGhhcyBhCiAgICAgICAgICAgICAgICBjb21wYXRpYmlsaXR5IGRlY29tcG9zaXRpb24sIGJ1dCB3ZSBkbyBORkQuICovCiAgICAgICAgICAgICBpZiAoIWNvdW50IHx8IChwcmVmaXggJiYgIWspKSB7Ci0gICAgICAgICAgICAgICAgKm8rKyA9IGNvZGU7CisgICAgICAgICAgICAgICAgb3V0cHV0W28rK10gPSBjb2RlOwogICAgICAgICAgICAgICAgIHNwYWNlLS07CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CkBAIC01NzIsMTUgKzU3NywyMCBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgLyogRHJvcCBvdmVyYWxsb2NhdGlvbi4gQ2Fubm90IGZhaWwuICovCi0gICAgUHlVbmljb2RlX1Jlc2l6ZSgmcmVzdWx0LCBQeVVuaWNvZGVfR0VUX1NJWkUocmVzdWx0KSAtIHNwYWNlKTsKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKFB5VW5pY29kZV80QllURV9LSU5ELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0LCBvKTsKKyAgICBQeU1lbV9GcmVlKG91dHB1dCk7CisgICAgaWYgKCFyZXN1bHQpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIC8qIHJlc3VsdCBpcyBndWFyYW50ZWVkIHRvIGJlIHJlYWR5LCBhcyBpdCBpcyBjb21wYWN0LiAqLworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXN1bHQpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShyZXN1bHQpOwogCiAgICAgLyogU29ydCBjYW5vbmljYWxseS4gKi8KLSAgICBpID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KTsKLSAgICBwcmV2ID0gX2dldHJlY29yZF9leCgqaSktPmNvbWJpbmluZzsKLSAgICBlbmQgPSBpICsgUHlVbmljb2RlX0dFVF9TSVpFKHJlc3VsdCk7Ci0gICAgZm9yIChpKys7IGkgPCBlbmQ7IGkrKykgewotICAgICAgICBjdXIgPSBfZ2V0cmVjb3JkX2V4KCppKS0+Y29tYmluaW5nOworICAgIGkgPSAwOworICAgIHByZXYgPSBfZ2V0cmVjb3JkX2V4KFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKS0+Y29tYmluaW5nOworICAgIGZvciAoaSsrOyBpIDwgUHlVbmljb2RlX0dFVF9MRU5HVEgocmVzdWx0KTsgaSsrKSB7CisgICAgICAgIGN1ciA9IF9nZXRyZWNvcmRfZXgoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpLT5jb21iaW5pbmc7CiAgICAgICAgIGlmIChwcmV2ID09IDAgfHwgY3VyID09IDAgfHwgcHJldiA8PSBjdXIpIHsKICAgICAgICAgICAgIHByZXYgPSBjdXI7CiAgICAgICAgICAgICBjb250aW51ZTsKQEAgLTU4OCwzMSArNTk4LDMyIEBACiAgICAgICAgIC8qIE5vbi1jYW5vbmljYWwgb3JkZXIuIE5lZWQgdG8gc3dpdGNoICppIHdpdGggcHJldmlvdXMuICovCiAgICAgICAgIG8gPSBpIC0gMTsKICAgICAgICAgd2hpbGUgKDEpIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgdG1wID0gb1sxXTsKLSAgICAgICAgICAgIG9bMV0gPSBvWzBdOwotICAgICAgICAgICAgb1swXSA9IHRtcDsKKyAgICAgICAgICAgIFB5X1VDUzQgdG1wID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgbysxKTsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBvKzEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgbykpOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIG8sIHRtcCk7CiAgICAgICAgICAgICBvLS07Ci0gICAgICAgICAgICBpZiAobyA8IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCkpCisgICAgICAgICAgICBpZiAobyA8IDApCiAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICBwcmV2ID0gX2dldHJlY29yZF9leCgqbyktPmNvbWJpbmluZzsKKyAgICAgICAgICAgIHByZXYgPSBfZ2V0cmVjb3JkX2V4KFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIG8pKS0+Y29tYmluaW5nOwogICAgICAgICAgICAgaWYgKHByZXYgPT0gMCB8fCBwcmV2IDw9IGN1cikKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQotICAgICAgICBwcmV2ID0gX2dldHJlY29yZF9leCgqaSktPmNvbWJpbmluZzsKKyAgICAgICAgcHJldiA9IF9nZXRyZWNvcmRfZXgoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpLT5jb21iaW5pbmc7CiAgICAgfQogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIHN0YXRpYyBpbnQKLWZpbmRfbmZjX2luZGV4KFB5T2JqZWN0ICpzZWxmLCBzdHJ1Y3QgcmVpbmRleCogbmZjLCBQeV9VTklDT0RFIGNvZGUpCitmaW5kX25mY19pbmRleChQeU9iamVjdCAqc2VsZiwgc3RydWN0IHJlaW5kZXgqIG5mYywgUHlfVUNTNCBjb2RlKQogewotICAgIGludCBpbmRleDsKKyAgICB1bnNpZ25lZCBpbnQgaW5kZXg7CiAgICAgZm9yIChpbmRleCA9IDA7IG5mY1tpbmRleF0uc3RhcnQ7IGluZGV4KyspIHsKLSAgICAgICAgaW50IHN0YXJ0ID0gbmZjW2luZGV4XS5zdGFydDsKKyAgICAgICAgdW5zaWduZWQgaW50IHN0YXJ0ID0gbmZjW2luZGV4XS5zdGFydDsKICAgICAgICAgaWYgKGNvZGUgPCBzdGFydCkKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgaWYgKGNvZGUgPD0gc3RhcnQgKyBuZmNbaW5kZXhdLmNvdW50KSB7Ci0gICAgICAgICAgICBpbnQgZGVsdGEgPSBjb2RlIC0gc3RhcnQ7CisgICAgICAgICAgICB1bnNpZ25lZCBpbnQgZGVsdGEgPSBjb2RlIC0gc3RhcnQ7CiAgICAgICAgICAgICByZXR1cm4gbmZjW2luZGV4XS5pbmRleCArIGRlbHRhOwogICAgICAgICB9CiAgICAgfQpAQCAtNjIzLDI3ICs2MzQsMzYgQEAKIG5mY19uZmtjKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqaW5wdXQsIGludCBrKQogewogICAgIFB5T2JqZWN0ICpyZXN1bHQ7Ci0gICAgUHlfVU5JQ09ERSAqaSwgKmkxLCAqbywgKmVuZDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X1VDUzQgKm91dHB1dDsKKyAgICBQeV9zc2l6ZV90IGksIGkxLCBvLCBsZW47CiAgICAgaW50IGYsbCxpbmRleCxpbmRleDEsY29tYjsKLSAgICBQeV9VTklDT0RFIGNvZGU7Ci0gICAgUHlfVU5JQ09ERSAqc2tpcHBlZFsyMF07CisgICAgUHlfVUNTNCBjb2RlOworICAgIFB5X3NzaXplX3Qgc2tpcHBlZFsyMF07CiAgICAgaW50IGNza2lwcGVkID0gMDsKIAogICAgIHJlc3VsdCA9IG5mZF9uZmtkKHNlbGYsIGlucHV0LCBrKTsKICAgICBpZiAoIXJlc3VsdCkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgLyogcmVzdWx0IHdpbGwgYmUgInJlYWR5Ii4gKi8KKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQocmVzdWx0KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEocmVzdWx0KTsKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXN1bHQpOwogCi0gICAgLyogV2UgYXJlIGdvaW5nIHRvIG1vZGlmeSByZXN1bHQgaW4tcGxhY2UuCi0gICAgICAgSWYgbmZkX25ma2QgaXMgY2hhbmdlZCB0byBzb21ldGltZXMgcmV0dXJuIHRoZSBpbnB1dCwKLSAgICAgICB0aGlzIGNvZGUgbmVlZHMgdG8gYmUgcmV2aWV3ZWQuICovCi0gICAgYXNzZXJ0KHJlc3VsdCAhPSBpbnB1dCk7Ci0KLSAgICBpID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KTsKLSAgICBlbmQgPSBpICsgUHlVbmljb2RlX0dFVF9TSVpFKHJlc3VsdCk7Ci0gICAgbyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCk7CisgICAgLyogV2UgYWxsb2NhdGUgYSBidWZmZXIgZm9yIHRoZSBvdXRwdXQuCisgICAgICAgSWYgd2UgZmluZCB0aGF0IHdlIG1hZGUgbm8gY2hhbmdlcywgd2Ugc3RpbGwgcmV0dXJuCisgICAgICAgdGhlIE5GRCByZXN1bHQuICovCisgICAgb3V0cHV0ID0gUHlNZW1fTWFsbG9jKGxlbiAqIHNpemVvZihQeV9VQ1M0KSk7CisgICAgaWYgKCFvdXRwdXQpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBpID0gbyA9IDA7CiAKICAgYWdhaW46Ci0gICAgd2hpbGUgKGkgPCBlbmQpIHsKKyAgICB3aGlsZSAoaSA8IGxlbikgewogICAgICAgZm9yIChpbmRleCA9IDA7IGluZGV4IDwgY3NraXBwZWQ7IGluZGV4KyspIHsKICAgICAgICAgICBpZiAoc2tpcHBlZFtpbmRleF0gPT0gaSkgewogICAgICAgICAgICAgICAvKiAqaSBjaGFyYWN0ZXIgaXMgc2tpcHBlZC4KQEAgLTY1NiwzMyArNjc2LDQxIEBACiAgICAgICB9CiAgICAgICAvKiBIYW5ndWwgQ29tcG9zaXRpb24uIFdlIGRvbid0IG5lZWQgdG8gY2hlY2sgZm9yIDxMVixUPgogICAgICAgICAgcGFpcnMsIHNpbmNlIHdlIGFsd2F5cyBoYXZlIGRlY29tcG9zZWQgZGF0YS4gKi8KLSAgICAgIGlmIChMQmFzZSA8PSAqaSAmJiAqaSA8IChMQmFzZStMQ291bnQpICYmCi0gICAgICAgICAgaSArIDEgPCBlbmQgJiYKLSAgICAgICAgICBWQmFzZSA8PSBpWzFdICYmIGlbMV0gPD0gKFZCYXNlK1ZDb3VudCkpIHsKKyAgICAgIGNvZGUgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgIGlmIChMQmFzZSA8PSBjb2RlICYmIGNvZGUgPCAoTEJhc2UrTENvdW50KSAmJgorICAgICAgICAgIGkgKyAxIDwgbGVuICYmCisgICAgICAgICAgVkJhc2UgPD0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSsxKSAmJgorICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkrMSkgPD0gKFZCYXNlK1ZDb3VudCkpIHsKICAgICAgICAgICBpbnQgTEluZGV4LCBWSW5kZXg7Ci0gICAgICAgICAgTEluZGV4ID0gaVswXSAtIExCYXNlOwotICAgICAgICAgIFZJbmRleCA9IGlbMV0gLSBWQmFzZTsKKyAgICAgICAgICBMSW5kZXggPSBjb2RlIC0gTEJhc2U7CisgICAgICAgICAgVkluZGV4ID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSsxKSAtIFZCYXNlOwogICAgICAgICAgIGNvZGUgPSBTQmFzZSArIChMSW5kZXgqVkNvdW50K1ZJbmRleCkqVENvdW50OwogICAgICAgICAgIGkrPTI7Ci0gICAgICAgICAgaWYgKGkgPCBlbmQgJiYKLSAgICAgICAgICAgICAgVEJhc2UgPD0gKmkgJiYgKmkgPD0gKFRCYXNlK1RDb3VudCkpIHsKLSAgICAgICAgICAgICAgY29kZSArPSAqaS1UQmFzZTsKKyAgICAgICAgICBpZiAoaSA8IGxlbiAmJgorICAgICAgICAgICAgICBUQmFzZSA8PSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSAmJgorICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSA8PSAoVEJhc2UrVENvdW50KSkgeworICAgICAgICAgICAgICBjb2RlICs9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpLVRCYXNlOwogICAgICAgICAgICAgICBpKys7CiAgICAgICAgICAgfQotICAgICAgICAgICpvKysgPSBjb2RlOworICAgICAgICAgIG91dHB1dFtvKytdID0gY29kZTsKICAgICAgICAgICBjb250aW51ZTsKICAgICAgIH0KIAotICAgICAgZiA9IGZpbmRfbmZjX2luZGV4KHNlbGYsIG5mY19maXJzdCwgKmkpOworICAgICAgLyogY29kZSBpcyBzdGlsbCBpbnB1dFtpXSBoZXJlICovCisgICAgICBmID0gZmluZF9uZmNfaW5kZXgoc2VsZiwgbmZjX2ZpcnN0LCBjb2RlKTsKICAgICAgIGlmIChmID09IC0xKSB7Ci0gICAgICAgICAgKm8rKyA9ICppKys7CisgICAgICAgICAgb3V0cHV0W28rK10gPSBjb2RlOworICAgICAgICAgIGkrKzsKICAgICAgICAgICBjb250aW51ZTsKICAgICAgIH0KICAgICAgIC8qIEZpbmQgbmV4dCB1bmJsb2NrZWQgY2hhcmFjdGVyLiAqLwogICAgICAgaTEgPSBpKzE7CiAgICAgICBjb21iID0gMDsKLSAgICAgIHdoaWxlIChpMSA8IGVuZCkgewotICAgICAgICAgIGludCBjb21iMSA9IF9nZXRyZWNvcmRfZXgoKmkxKS0+Y29tYmluaW5nOworICAgICAgLyogb3V0cHV0IGJhc2UgY2hhcmFjdGVyIGZvciBub3c7IG1pZ2h0IGJlIHVwZGF0ZWQgbGF0ZXIuICovCisgICAgICBvdXRwdXRbb10gPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgIHdoaWxlIChpMSA8IGxlbikgeworICAgICAgICAgIFB5X1VDUzQgY29kZTEgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpMSk7CisgICAgICAgICAgaW50IGNvbWIxID0gX2dldHJlY29yZF9leChjb2RlMSktPmNvbWJpbmluZzsKICAgICAgICAgICBpZiAoY29tYikgewogICAgICAgICAgICAgICBpZiAoY29tYjEgPT0gMCkKICAgICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtNjkyLDggKzcyMCw4IEBACiAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgfQogICAgICAgICAgIH0KLSAgICAgICAgICBsID0gZmluZF9uZmNfaW5kZXgoc2VsZiwgbmZjX2xhc3QsICppMSk7Ci0gICAgICAgICAgLyogKmkxIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoICppLiBJZiAqaTEKKyAgICAgICAgICBsID0gZmluZF9uZmNfaW5kZXgoc2VsZiwgbmZjX2xhc3QsIGNvZGUxKTsKKyAgICAgICAgICAvKiBpMSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCBpLiBJZiBpMQogICAgICAgICAgICAgIGlzIGEgc3RhcnRlciwgd2UgZG9uJ3QgbmVlZCB0byBsb29rIGZ1cnRoZXIuCiAgICAgICAgICAgICAgT3RoZXJ3aXNlLCByZWNvcmQgdGhlIGNvbWJpbmluZyBjbGFzcy4gKi8KICAgICAgICAgICBpZiAobCA9PSAtMSkgewpAQCAtNzEyLDE5ICs3NDAsMjggQEAKICAgICAgICAgICAgICAgZ290byBub3RfY29tYmluYWJsZTsKIAogICAgICAgICAgIC8qIFJlcGxhY2UgdGhlIG9yaWdpbmFsIGNoYXJhY3Rlci4gKi8KLSAgICAgICAgICAqaSA9IGNvZGU7CisgICAgICAgICAgb3V0cHV0W29dID0gY29kZTsKICAgICAgICAgICAvKiBNYXJrIHRoZSBzZWNvbmQgY2hhcmFjdGVyIHVudXNlZC4gKi8KICAgICAgICAgICBhc3NlcnQoY3NraXBwZWQgPCAyMCk7CiAgICAgICAgICAgc2tpcHBlZFtjc2tpcHBlZCsrXSA9IGkxOwogICAgICAgICAgIGkxKys7Ci0gICAgICAgICAgZiA9IGZpbmRfbmZjX2luZGV4KHNlbGYsIG5mY19maXJzdCwgKmkpOworICAgICAgICAgIGYgPSBmaW5kX25mY19pbmRleChzZWxmLCBuZmNfZmlyc3QsIG91dHB1dFtvXSk7CiAgICAgICAgICAgaWYgKGYgPT0gLTEpCiAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgfQotICAgICAgKm8rKyA9ICppKys7CisgICAgICAvKiBPdXRwdXQgY2hhcmFjdGVyIHdhcyBhbHJlYWR5IHdyaXR0ZW4uCisgICAgICAgICBKdXN0IGFkdmFuY2UgdGhlIGluZGljZXMuICovCisgICAgICBvKys7IGkrKzsKICAgICB9Ci0gICAgaWYgKG8gIT0gZW5kKQotICAgICAgICBQeVVuaWNvZGVfUmVzaXplKCZyZXN1bHQsIG8gLSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpKTsKKyAgICBpZiAobyA9PSBsZW4pIHsKKyAgICAgICAgLyogTm8gY2hhbmdlcy4gUmV0dXJuIG9yaWdpbmFsIHN0cmluZy4gKi8KKyAgICAgICAgUHlNZW1fRnJlZShvdXRwdXQpOworICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0KKyAgICBQeV9ERUNSRUYocmVzdWx0KTsKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKFB5VW5pY29kZV80QllURV9LSU5ELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0LCBvKTsKKyAgICBQeU1lbV9GcmVlKG91dHB1dCk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIApAQCAtNzMyLDcgKzc2OSw5IEBACiBzdGF0aWMgaW50CiBpc19ub3JtYWxpemVkKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqaW5wdXQsIGludCBuZmMsIGludCBrKQogewotICAgIFB5X1VOSUNPREUgKmksICplbmQ7CisgICAgUHlfc3NpemVfdCBpLCBsZW47CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKICAgICB1bnNpZ25lZCBjaGFyIHByZXZfY29tYmluaW5nID0gMCwgcXVpY2tjaGVja19tYXNrOwogCiAgICAgLyogQW4gb2xkZXIgdmVyc2lvbiBvZiB0aGUgZGF0YWJhc2UgaXMgcmVxdWVzdGVkLCBxdWlja2NoZWNrcyBtdXN0IGJlCkBAIC03NDQsMTAgKzc4MywxMyBAQAogICAgICAgIGFzIGRlc2NyaWJlZCBpbiBodHRwOi8vdW5pY29kZS5vcmcvcmVwb3J0cy90cjE1LyNBbm5leDguICovCiAgICAgcXVpY2tjaGVja19tYXNrID0gMyA8PCAoKG5mYyA/IDQgOiAwKSArIChrID8gMiA6IDApKTsKIAotICAgIGkgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShpbnB1dCk7Ci0gICAgZW5kID0gaSArIFB5VW5pY29kZV9HRVRfU0laRShpbnB1dCk7Ci0gICAgd2hpbGUgKGkgPCBlbmQpIHsKLSAgICAgICAgY29uc3QgX1B5VW5pY29kZV9EYXRhYmFzZVJlY29yZCAqcmVjb3JkID0gX2dldHJlY29yZF9leCgqaSsrKTsKKyAgICBpID0gMDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoaW5wdXQpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShpbnB1dCk7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoaW5wdXQpOworICAgIHdoaWxlIChpIDwgbGVuKSB7CisgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKyspOworICAgICAgICBjb25zdCBfUHlVbmljb2RlX0RhdGFiYXNlUmVjb3JkICpyZWNvcmQgPSBfZ2V0cmVjb3JkX2V4KGNoKTsKICAgICAgICAgdW5zaWduZWQgY2hhciBjb21iaW5pbmcgPSByZWNvcmQtPmNvbWJpbmluZzsKICAgICAgICAgdW5zaWduZWQgY2hhciBxdWlja2NoZWNrID0gcmVjb3JkLT5ub3JtYWxpemF0aW9uX3F1aWNrX2NoZWNrOwogCkBAIC03NzYsNyArODE4LDEwIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgJmZvcm0sICZQeVVuaWNvZGVfVHlwZSwgJmlucHV0KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoUHlVbmljb2RlX0dldFNpemUoaW5wdXQpID09IDApIHsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGlucHV0KSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoaW5wdXQpID09IDApIHsKICAgICAgICAgLyogU3BlY2lhbCBjYXNlIGVtcHR5IGlucHV0IHN0cmluZ3MsIHNpbmNlIHJlc2l6aW5nCiAgICAgICAgICAgIHRoZW0gIGxhdGVyIHdvdWxkIGNhdXNlIGludGVybmFsIGVycm9ycy4gKi8KICAgICAgICAgUHlfSU5DUkVGKGlucHV0KTsKQEAgLTg3NiwxNSArOTIxLDI1IEBACiB7CiAgICAgcmV0dXJuCiAgICAgICAgICgweDM0MDAgPD0gY29kZSAmJiBjb2RlIDw9IDB4NERCNSkgICB8fCAvKiBDSksgSWRlb2dyYXBoIEV4dGVuc2lvbiBBICovCi0gICAgICAgICgweDRFMDAgPD0gY29kZSAmJiBjb2RlIDw9IDB4OUZDQikgICB8fCAvKiBDSksgSWRlb2dyYXBoICovCisgICAgICAgICgweDRFMDAgPD0gY29kZSAmJiBjb2RlIDw9IDB4OUZDQykgICB8fCAvKiBDSksgSWRlb2dyYXBoICovCiAgICAgICAgICgweDIwMDAwIDw9IGNvZGUgJiYgY29kZSA8PSAweDJBNkQ2KSB8fCAvKiBDSksgSWRlb2dyYXBoIEV4dGVuc2lvbiBCICovCiAgICAgICAgICgweDJBNzAwIDw9IGNvZGUgJiYgY29kZSA8PSAweDJCNzM0KSB8fCAvKiBDSksgSWRlb2dyYXBoIEV4dGVuc2lvbiBDICovCiAgICAgICAgICgweDJCNzQwIDw9IGNvZGUgJiYgY29kZSA8PSAweDJCODFEKTsgICAvKiBDSksgSWRlb2dyYXBoIEV4dGVuc2lvbiBEICovCiB9CiAKKy8qIG1hY3JvcyB1c2VkIHRvIGRldGVybWluZSBpZiB0aGUgZ2l2ZW4gY29kZXBvaW50IGlzIGluIHRoZSBQVUEgcmFuZ2UgdGhhdAorICogd2UgYXJlIHVzaW5nIHRvIHN0b3JlIGFsaWFzZXMgYW5kIG5hbWVkIHNlcXVlbmNlcyAqLworI2RlZmluZSBJU19BTElBUyhjcCkgKChjcCA+PSBhbGlhc2VzX3N0YXJ0KSAmJiAoY3AgPCBhbGlhc2VzX2VuZCkpCisjZGVmaW5lIElTX05BTUVEX1NFUShjcCkgKChjcCA+PSBuYW1lZF9zZXF1ZW5jZXNfc3RhcnQpICYmIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGNwIDwgbmFtZWRfc2VxdWVuY2VzX2VuZCkpCisKIHN0YXRpYyBpbnQKLV9nZXR1Y25hbWUoUHlPYmplY3QgKnNlbGYsIFB5X1VDUzQgY29kZSwgY2hhciogYnVmZmVyLCBpbnQgYnVmbGVuKQorX2dldHVjbmFtZShQeU9iamVjdCAqc2VsZiwgUHlfVUNTNCBjb2RlLCBjaGFyKiBidWZmZXIsIGludCBidWZsZW4sCisgICAgICAgICAgIGludCB3aXRoX2FsaWFzX2FuZF9zZXEpCiB7CisgICAgLyogRmluZCB0aGUgbmFtZSBhc3NvY2lhdGVkIHdpdGggdGhlIGdpdmVuIGNvZGVwb2ludC4KKyAgICAgKiBJZiB3aXRoX2FsaWFzX2FuZF9zZXEgaXMgMSwgY2hlY2sgZm9yIG5hbWVzIGluIHRoZSBQcml2YXRlIFVzZSBBcmVhIDE1CisgICAgICogdGhhdCB3ZSBhcmUgdXNpbmcgZm9yIGFsaWFzZXMgYW5kIG5hbWVkIHNlcXVlbmNlcy4gKi8KICAgICBpbnQgb2Zmc2V0OwogICAgIGludCBpOwogICAgIGludCB3b3JkOwpAQCAtODkzLDggKzk0OCwxNiBAQAogICAgIGlmIChjb2RlID49IDB4MTEwMDAwKQogICAgICAgICByZXR1cm4gMDsKIAorICAgIC8qIFhYWCBzaG91bGQgd2UganVzdCBza2lwIGFsbCB0aGUgY29kZXBvaW50cyBpbiB0aGUgUFVBcyBoZXJlPyAqLworICAgIGlmICghd2l0aF9hbGlhc19hbmRfc2VxICYmIChJU19BTElBUyhjb2RlKSB8fCBJU19OQU1FRF9TRVEoY29kZSkpKQorICAgICAgICByZXR1cm4gMDsKKwogICAgIGlmIChzZWxmICYmIFVDRF9DaGVjayhzZWxmKSkgewotICAgICAgICBjb25zdCBjaGFuZ2VfcmVjb3JkICpvbGQgPSBnZXRfb2xkX3JlY29yZChzZWxmLCBjb2RlKTsKKyAgICAgICAgLyogaW4gMy4yLjAgdGhlcmUgYXJlIG5vIGFsaWFzZXMgYW5kIG5hbWVkIHNlcXVlbmNlcyAqLworICAgICAgICBjb25zdCBjaGFuZ2VfcmVjb3JkICpvbGQ7CisgICAgICAgIGlmIChJU19BTElBUyhjb2RlKSB8fCBJU19OQU1FRF9TRVEoY29kZSkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgb2xkID0gZ2V0X29sZF9yZWNvcmQoc2VsZiwgY29kZSk7CiAgICAgICAgIGlmIChvbGQtPmNhdGVnb3J5X2NoYW5nZWQgPT0gMCkgewogICAgICAgICAgICAgLyogdW5hc3NpZ25lZCAqLwogICAgICAgICAgICAgcmV0dXJuIDA7CkBAIC05NzgsNyArMTA0MSw3IEBACiAgICAgLyogY2hlY2sgaWYgY29kZSBjb3JyZXNwb25kcyB0byB0aGUgZ2l2ZW4gbmFtZSAqLwogICAgIGludCBpOwogICAgIGNoYXIgYnVmZmVyW05BTUVfTUFYTEVOXTsKLSAgICBpZiAoIV9nZXR1Y25hbWUoc2VsZiwgY29kZSwgYnVmZmVyLCBzaXplb2YoYnVmZmVyKSkpCisgICAgaWYgKCFfZ2V0dWNuYW1lKHNlbGYsIGNvZGUsIGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciksIDEpKQogICAgICAgICByZXR1cm4gMDsKICAgICBmb3IgKGkgPSAwOyBpIDwgbmFtZWxlbjsgaSsrKSB7CiAgICAgICAgIGlmIChQeV9UT1VQUEVSKFB5X0NIQVJNQVNLKG5hbWVbaV0pKSAhPSBidWZmZXJbaV0pCkBAIC05OTQsNyArMTA1Nyw3IEBACiAgICAgKmxlbiA9IC0xOwogICAgIGZvciAoaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7CiAgICAgICAgIGNoYXIgKnMgPSBoYW5ndWxfc3lsbGFibGVzW2ldW2NvbHVtbl07Ci0gICAgICAgIGxlbjEgPSBzdHJsZW4ocyk7CisgICAgICAgIGxlbjEgPSBQeV9TQUZFX0RPV05DQVNUKHN0cmxlbihzKSwgc2l6ZV90LCBpbnQpOwogICAgICAgICBpZiAobGVuMSA8PSAqbGVuKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGlmIChzdHJuY21wKHN0ciwgcywgbGVuMSkgPT0gMCkgewpAQCAtMTAwOCw4ICsxMDcxLDI4IEBACiB9CiAKIHN0YXRpYyBpbnQKLV9nZXRjb2RlKFB5T2JqZWN0KiBzZWxmLCBjb25zdCBjaGFyKiBuYW1lLCBpbnQgbmFtZWxlbiwgUHlfVUNTNCogY29kZSkKK19jaGVja19hbGlhc19hbmRfc2VxKHVuc2lnbmVkIGludCBjcCwgUHlfVUNTNCogY29kZSwgaW50IHdpdGhfbmFtZWRfc2VxKQogeworICAgIC8qIGNoZWNrIGlmIG5hbWVkIHNlcXVlbmNlcyBhcmUgYWxsb3dlZCAqLworICAgIGlmICghd2l0aF9uYW1lZF9zZXEgJiYgSVNfTkFNRURfU0VRKGNwKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgLyogaWYgdGhlIGNvZGVwb2ludCBpcyBpbiB0aGUgUFVBIHJhbmdlIHRoYXQgd2UgdXNlIGZvciBhbGlhc2VzLAorICAgICAqIGNvbnZlcnQgaXQgdG8gb2J0YWluIHRoZSByaWdodCBjb2RlcG9pbnQgKi8KKyAgICBpZiAoSVNfQUxJQVMoY3ApKQorICAgICAgICAqY29kZSA9IG5hbWVfYWxpYXNlc1tjcC1hbGlhc2VzX3N0YXJ0XTsKKyAgICBlbHNlCisgICAgICAgICpjb2RlID0gY3A7CisgICAgcmV0dXJuIDE7Cit9CisKK3N0YXRpYyBpbnQKK19nZXRjb2RlKFB5T2JqZWN0KiBzZWxmLCBjb25zdCBjaGFyKiBuYW1lLCBpbnQgbmFtZWxlbiwgUHlfVUNTNCogY29kZSwKKyAgICAgICAgIGludCB3aXRoX25hbWVkX3NlcSkKK3sKKyAgICAvKiBSZXR1cm4gdGhlIGNvZGVwb2ludCBhc3NvY2lhdGVkIHdpdGggdGhlIGdpdmVuIG5hbWUuCisgICAgICogTmFtZWQgYWxpYXNlcyBhcmUgcmVzb2x2ZWQgdG9vICh1bmxlc3Mgc2VsZiAhPSBOVUxMIChpLmUuIHdlIGFyZSB1c2luZworICAgICAqIDMuMi4wKSkuICBJZiB3aXRoX25hbWVkX3NlcSBpcyAxLCByZXR1cm5zIHRoZSBQVUEgY29kZXBvaW50IHRoYXQgd2UgYXJlCisgICAgICogdXNpbmcgZm9yIHRoZSBuYW1lZCBzZXF1ZW5jZSwgYW5kIHRoZSBjYWxsZXIgbXVzdCB0aGVuIGNvbnZlcnQgaXQuICovCiAgICAgdW5zaWduZWQgaW50IGgsIHY7CiAgICAgdW5zaWduZWQgaW50IG1hc2sgPSBjb2RlX3NpemUtMTsKICAgICB1bnNpZ25lZCBpbnQgaSwgaW5jcjsKQEAgLTEwNjUsMTAgKzExNDgsOCBAQAogICAgIHYgPSBjb2RlX2hhc2hbaV07CiAgICAgaWYgKCF2KQogICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAoX2NtcG5hbWUoc2VsZiwgdiwgbmFtZSwgbmFtZWxlbikpIHsKLSAgICAgICAgKmNvZGUgPSB2OwotICAgICAgICByZXR1cm4gMTsKLSAgICB9CisgICAgaWYgKF9jbXBuYW1lKHNlbGYsIHYsIG5hbWUsIG5hbWVsZW4pKQorICAgICAgICByZXR1cm4gX2NoZWNrX2FsaWFzX2FuZF9zZXEodiwgY29kZSwgd2l0aF9uYW1lZF9zZXEpOwogICAgIGluY3IgPSAoaCBeIChoID4+IDMpKSAmIG1hc2s7CiAgICAgaWYgKCFpbmNyKQogICAgICAgICBpbmNyID0gbWFzazsKQEAgLTEwNzcsMTAgKzExNTgsOCBAQAogICAgICAgICB2ID0gY29kZV9oYXNoW2ldOwogICAgICAgICBpZiAoIXYpCiAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgaWYgKF9jbXBuYW1lKHNlbGYsIHYsIG5hbWUsIG5hbWVsZW4pKSB7Ci0gICAgICAgICAgICAqY29kZSA9IHY7Ci0gICAgICAgICAgICByZXR1cm4gMTsKLSAgICAgICAgfQorICAgICAgICBpZiAoX2NtcG5hbWUoc2VsZiwgdiwgbmFtZSwgbmFtZWxlbikpCisgICAgICAgICAgICByZXR1cm4gX2NoZWNrX2FsaWFzX2FuZF9zZXEodiwgY29kZSwgd2l0aF9uYW1lZF9zZXEpOwogICAgICAgICBpbmNyID0gaW5jciA8PCAxOwogICAgICAgICBpZiAoaW5jciA+IG1hc2spCiAgICAgICAgICAgICBpbmNyID0gaW5jciBeIGNvZGVfcG9seTsKQEAgLTExMTgsNyArMTE5Nyw3IEBACiAgICAgaWYgKGMgPT0gKFB5X1VDUzQpLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKCFfZ2V0dWNuYW1lKHNlbGYsIGMsIG5hbWUsIHNpemVvZihuYW1lKSkpIHsKKyAgICBpZiAoIV9nZXR1Y25hbWUoc2VsZiwgYywgbmFtZSwgc2l6ZW9mKG5hbWUpLCAwKSkgewogICAgICAgICBpZiAoZGVmb2JqID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAibm8gc3VjaCBuYW1lIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTExNDMsMjggKzEyMjIsMjYgQEAKIHVuaWNvZGVkYXRhX2xvb2t1cChQeU9iamVjdCogc2VsZiwgUHlPYmplY3QqIGFyZ3MpCiB7CiAgICAgUHlfVUNTNCBjb2RlOwotICAgIFB5X1VOSUNPREUgc3RyWzJdOwogCiAgICAgY2hhciogbmFtZTsKICAgICBpbnQgbmFtZWxlbjsKKyAgICB1bnNpZ25lZCBpbnQgaW5kZXg7CiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzIzpsb29rdXAiLCAmbmFtZSwgJm5hbWVsZW4pKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGlmICghX2dldGNvZGUoc2VsZiwgbmFtZSwgbmFtZWxlbiwgJmNvZGUpKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19LZXlFcnJvciwgInVuZGVmaW5lZCBjaGFyYWN0ZXIgbmFtZSAnJXMnIiwKLSAgICAgICAgICAgICAgICAgICAgIG5hbWUpOworICAgIGlmICghX2dldGNvZGUoc2VsZiwgbmFtZSwgbmFtZWxlbiwgJmNvZGUsIDEpKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19LZXlFcnJvciwgInVuZGVmaW5lZCBjaGFyYWN0ZXIgbmFtZSAnJXMnIiwgbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLQotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBpZiAoY29kZSA+PSAweDEwMDAwKSB7Ci0gICAgICAgIHN0clswXSA9IDB4ZDgwMCArICgoY29kZSAtIDB4MTAwMDApID4+IDEwKTsKLSAgICAgICAgc3RyWzFdID0gMHhkYzAwICsgKChjb2RlIC0gMHgxMDAwMCkgJiAweDNmZik7Ci0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoc3RyLCAyKTsKKyAgICAvLyBjaGVjayBpZiBjb2RlIGlzIGluIHRoZSBQVUEgcmFuZ2UgdGhhdCB3ZSB1c2UgZm9yIG5hbWVkIHNlcXVlbmNlcworICAgIC8vIGFuZCBjb252ZXJ0IGl0CisgICAgaWYgKElTX05BTUVEX1NFUShjb2RlKSkgeworICAgICAgICBpbmRleCA9IGNvZGUtbmFtZWRfc2VxdWVuY2VzX3N0YXJ0OworICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfMkJZVEVfS0lORCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZWRfc2VxdWVuY2VzW2luZGV4XS5zZXEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWVkX3NlcXVlbmNlc1tpbmRleF0uc2VxbGVuKTsKICAgICB9Ci0jZW5kaWYKLSAgICBzdHJbMF0gPSAoUHlfVU5JQ09ERSkgY29kZTsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHN0ciwgMSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tT3JkaW5hbChjb2RlKTsKIH0KIAogLyogWFhYIEFkZCBkb2Mgc3RyaW5ncy4gKi8KZGlmZiAtLWdpdCBhL01vZHVsZXMvdW5pY29kZWRhdGFfZGIuaCBiL01vZHVsZXMvdW5pY29kZWRhdGFfZGIuaAppbmRleCA4ZTJlNzI0Li41ZDVkY2E4IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3VuaWNvZGVkYXRhX2RiLmgKKysrIGIvTW9kdWxlcy91bmljb2RlZGF0YV9kYi5oCkBAIC0xLDYgKzEsNiBAQAogLyogdGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgYnkgVG9vbHMvdW5pY29kZS9tYWtldW5pY29kZWRhdGEucHkgMy4yICovCiAKLSNkZWZpbmUgVU5JREFUQV9WRVJTSU9OICI2LjAuMCIKKyNkZWZpbmUgVU5JREFUQV9WRVJTSU9OICI2LjEuMCIKIC8qIGEgbGlzdCBvZiB1bmlxdWUgZGF0YWJhc2UgcmVjb3JkcyAqLwogY29uc3QgX1B5VW5pY29kZV9EYXRhYmFzZVJlY29yZCBfUHlVbmljb2RlX0RhdGFiYXNlX1JlY29yZHNbXSA9IHsKICAgICB7MCwgMCwgMCwgMCwgMCwgMH0sCkBAIC0yOCwxMiArMjgsMTIgQEAKICAgICB7MjYsIDAsIDE5LCAwLCA0LCAwfSwKICAgICB7MjgsIDAsIDExLCAwLCA0LCAwfSwKICAgICB7MzAsIDAsIDE5LCAwLCAzLCAwfSwKLSAgICB7MzAsIDAsIDE5LCAwLCA0LCAwfSwKICAgICB7MjksIDAsIDE5LCAwLCA0LCAxMzZ9LAogICAgIHszMCwgMCwgMTksIDAsIDUsIDB9LAotICAgIHsyLCAwLCAxLCAwLCA0LCAxMzZ9LAorICAgIHsxOSwgMCwgMSwgMCwgNCwgMTM2fSwKICAgICB7MjQsIDAsIDE5LCAxLCA1LCAwfSwKICAgICB7MTQsIDAsIDE1LCAwLCA0LCAwfSwKKyAgICB7MzAsIDAsIDE5LCAwLCA0LCAwfSwKICAgICB7MjksIDAsIDE5LCAwLCAzLCAxMzZ9LAogICAgIHszMCwgMCwgMTEsIDAsIDQsIDB9LAogICAgIHsyNywgMCwgMTEsIDAsIDQsIDB9LApAQCAtNDksNiArNDksNyBAQAogICAgIHsyLCAwLCAxLCAwLCA1LCAxMH0sCiAgICAgezEsIDAsIDEsIDAsIDUsIDB9LAogICAgIHsxLCAwLCAxLCAwLCA0LCAxMzZ9LAorICAgIHsyLCAwLCAxLCAwLCA0LCAxMzZ9LAogICAgIHsyLCAwLCAxLCAwLCA1LCAwfSwKICAgICB7MTksIDAsIDEsIDAsIDUsIDB9LAogICAgIHsxLCAwLCAxLCAwLCA1LCAxMzZ9LApAQCAtODcsNiArODgsNyBAQAogICAgIHs2LCAwLCAxNCwgMCwgNSwgMH0sCiAgICAgezI2LCAwLCAxLCAwLCA1LCAwfSwKICAgICB7MjEsIDAsIDE5LCAwLCA1LCAwfSwKKyAgICB7MjgsIDAsIDExLCAwLCA1LCAwfSwKICAgICB7NCwgMjIwLCAxNCwgMCwgNSwgMH0sCiAgICAgezQsIDIyMiwgMTQsIDAsIDUsIDB9LAogICAgIHs0LCAyMjgsIDE0LCAwLCA1LCAwfSwKQEAgLTEzNCw2ICsxMzYsNyBAQAogICAgIHsxOSwgMCwgNSwgMCwgNSwgMTM2fSwKICAgICB7NywgMCwgOSwgMCwgNSwgMH0sCiAgICAgezMwLCAwLCA1LCAwLCA1LCAwfSwKKyAgICB7MTQsIDAsIDUsIDAsIDUsIDB9LAogICAgIHs0LCAzNiwgMTQsIDAsIDUsIDB9LAogICAgIHs0LCAwLCAxNCwgMCwgNSwgMH0sCiAgICAgezcsIDAsIDQsIDAsIDUsIDB9LApAQCAtMTQ4LDcgKzE1MSw2IEBACiAgICAgezQsIDcsIDE0LCAwLCA1LCAwfSwKICAgICB7NSwgMCwgMSwgMCwgNSwgODB9LAogICAgIHs1LCAwLCAxLCAwLCA1LCAxMH0sCi0gICAgezI4LCAwLCAxMSwgMCwgNSwgMH0sCiAgICAgezksIDAsIDEsIDAsIDUsIDB9LAogICAgIHs0LCAwLCAxNCwgMCwgNSwgODB9LAogICAgIHs0LCAwLCAxNCwgMCwgNSwgMTB9LApAQCAtMTc1LDcgKzE3Nyw2IEBACiAgICAgezE5LCAwLCAxLCAwLCA1LCA4MH0sCiAgICAgezEwLCAwLCAxOCwgMCwgNSwgMH0sCiAgICAgezgsIDAsIDEsIDAsIDUsIDB9LAotICAgIHsxNCwgMCwgMSwgMCwgNSwgMH0sCiAgICAgezUsIDksIDEsIDAsIDUsIDB9LAogICAgIHs0LCAxLCAxNCwgMCwgNSwgMH0sCiAgICAgezQsIDIzNCwgMTQsIDAsIDUsIDB9LApAQCAtMTkwLDYgKzE5MSw3IEBACiAgICAgezEwLCAwLCAxOCwgMCwgNSwgMTcwfSwKICAgICB7MTAsIDAsIDE4LCAwLCA1LCAxMzZ9LAogICAgIHsxNCwgMCwgMTUsIDAsIDUsIDB9LAorICAgIHsxNCwgMCwgMSwgMCwgNSwgMH0sCiAgICAgezE0LCAwLCA0LCAwLCA1LCAwfSwKICAgICB7MjEsIDAsIDE5LCAwLCA0LCAwfSwKICAgICB7MjEsIDAsIDE5LCAwLCA1LCAxMzZ9LApAQCAtMjU2LDcgKzI1OCw3IEBACiAgICAgezQsIDIyOCwgMTQsIDAsIDIsIDB9LAogICAgIHs0LCAyMzIsIDE0LCAwLCAyLCAwfSwKICAgICB7NCwgMjIyLCAxNCwgMCwgMiwgMH0sCi0gICAgezQsIDIyNCwgMTQsIDAsIDIsIDB9LAorICAgIHs1LCAyMjQsIDEsIDAsIDIsIDB9LAogICAgIHs4LCAwLCAxLCAwLCAyLCAxMzZ9LAogICAgIHsxOSwgMCwgMSwgMCwgMiwgMTB9LAogICAgIHs0LCA4LCAxNCwgMCwgMiwgODB9LApAQCAtMjY2LDcgKzI2OCw3IEBACiAgICAgezMwLCAwLCAxLCAwLCAyLCAwfSwKICAgICB7OSwgMCwgMSwgMCwgMiwgMTM2fSwKICAgICB7MzAsIDAsIDEsIDAsIDIsIDEzNn0sCi0gICAgezMwLCAwLCAxLCAwLCA0LCAwfSwKKyAgICB7OSwgMCwgMSwgMCwgNCwgMH0sCiAgICAgezksIDAsIDE5LCAwLCAyLCAxMzZ9LAogICAgIHsyOSwgMCwgMSwgMCwgNSwgMH0sCiAgICAgezE1LCAwLCAxLCAwLCA1LCAwfSwKQEAgLTMyNSwxMSArMzI3LDEyIEBACiAgICAgezI3LCAwLCAxLCAwLCA1LCAxMzZ9LAogICAgIHs3LCAwLCA5LCAwLCA1LCAxMzZ9LAogICAgIHszMCwgMCwgMSwgMCwgNSwgMTM2fSwKKyAgICB7MzAsIDAsIDEsIDAsIDQsIDB9LAogfTsKIAogLyogUmVpbmRleGluZyBvZiBORkMgZmlyc3QgY2hhcmFjdGVycy4gKi8KLSNkZWZpbmUgVE9UQUxfRklSU1QgMzcwCi0jZGVmaW5lIFRPVEFMX0xBU1QgNTUKKyNkZWZpbmUgVE9UQUxfRklSU1QgMzcyCisjZGVmaW5lIFRPVEFMX0xBU1QgNTYKIHN0cnVjdCByZWluZGV4e2ludCBzdGFydDtzaG9ydCBjb3VudCxpbmRleDt9Owogc3RhdGljIHN0cnVjdCByZWluZGV4IG5mY19maXJzdFtdID0gewogICB7IDYwLCAyLCAwfSwKQEAgLTUzOCw2ICs1NDEsNyBAQAogICB7IDY5Nzg1LCAwLCAzNjd9LAogICB7IDY5Nzg3LCAwLCAzNjh9LAogICB7IDY5Nzk3LCAwLCAzNjl9LAorICB7IDY5OTM3LCAxLCAzNzB9LAogICB7MCwwLDB9CiB9OwogCkBAIC01NzQsNiArNTc4LDcgQEAKICAgeyA2OTY1LCAwLCA1MX0sCiAgIHsgMTI0NDEsIDEsIDUyfSwKICAgeyA2OTgxOCwgMCwgNTR9LAorICB7IDY5OTI3LCAwLCA1NX0sCiAgIHswLDAsMH0KIH07CiAKQEAgLTY3MSw1MTUgKzY3Niw1MTUgQEAKICAgICAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAzMCwgMzEsIDMyLCAzMywgMzQsIDM1LCAzNiwgMzcsIDM4LCAKICAgICAzOSwgNDAsIDQxLCA0MSwgNDEsIDQyLCA0MywgNDQsIDQ1LCA0NiwgNDcsIDQ4LCA0OSwgNTAsIDUxLCA1MiwgNTMsIDU0LCAKICAgICA1NSwgNTYsIDU3LCA1OCwgNTksIDYwLCA2MSwgNjIsIDYzLCA2NCwgNjUsIDY2LCA2NywgNjgsIDY5LCA3MCwgNzEsIDcyLCAKLSAgICA3MywgNzQsIDc1LCA3NiwgNzcsIDc4LCA3OCwgNzksIDgwLCA4MSwgODIsIDgzLCAxNywgODQsIDg1LCA4NiwgODcsIDg4LCAKLSAgICA4OSwgOTAsIDkxLCA5MiwgOTMsIDk0LCA5NSwgOTYsIDk3LCA5OCwgOTksIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMSwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDIsIAotICAgIDEwMywgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwNCwgNDEsIDQxLCAxMDUsIDEwNiwgMTA3LCAKLSAgICAxMDgsIDEwOSwgMTEwLCAxMTEsIDExMiwgMTEzLCAxMTQsIDExNSwgMTE2LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgCi0gICAgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIAotICAgIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAKLSAgICAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgCi0gICAgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIAotICAgIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAKLSAgICAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTgsIDExOSwgCi0gICAgMTE5LCAxMTksIDExOSwgMTE5LCAxMTksIDExOSwgMTE5LCAxMTksIDExOSwgMTE5LCAxMTksIDExOSwgMTE5LCAxMTksIAotICAgIDExOSwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKKyAgICA3MywgNzQsIDc1LCA3NiwgNzcsIDc4LCA3OCwgNzksIDgwLCA4MSwgODIsIDgzLCA4NCwgODUsIDg2LCA4NywgODgsIDg5LCAKKyAgICA5MCwgOTEsIDkyLCA5MywgOTQsIDk1LCA5NiwgOTcsIDk4LCA5OSwgMTAwLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDIsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAzLCAxMDQsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDUsIDQxLCA0MSwgMTA2LCAxMDcsIAorICAgIDEwOCwgMTA5LCAxMTAsIDExMSwgMTEyLCAxMTMsIDExNCwgMTE1LCAxMTYsIDExNywgMTE4LCAxMTgsIDExOCwgMTE4LCAKKyAgICAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgCisgICAgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIAorICAgIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAKKyAgICAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgCisgICAgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIAorICAgIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE5LCAKICAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMSwgMTIxLCAxMjIsIDEyMywgMTI0LCAKLSAgICAxMjUsIDEyNiwgMTI2LCAxMjcsIDEyOCwgMTI5LCAxMzAsIDEzMSwgMTMyLCAxMzMsIDEzNCwgMTM1LCAxMzYsIDE3LCAxMzcsIAotICAgIDEzOCwgMTM5LCAxNDAsIDE0MSwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTQyLCAxNywgMTQzLCAxNywgMTQ0LCAxNywgCi0gICAgMTQ1LCAxNywgMTQ2LCAxNywgMTcsIDE3LCAxNDcsIDE3LCAxNywgMTcsIDE0OCwgMTQ5LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCAxNTAsIDE3LCAxNTEsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCAxNTIsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA0MSwgNDEsIDQxLCA0MSwgMTUzLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTU0LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA3OCwgCi0gICAgMTU1LCAxNTYsIDE1NywgMTU4LCAxNywgMTU5LCAxNywgMTYwLCAxNjEsIDE2MiwgMTYzLCAxNjQsIDE2NSwgMTY2LCAxNjcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE2OCwgMTY5LCAxNzAsIDE3MSwgMTcyLCAKLSAgICAxNywgMTczLCAxNzQsIDE3NSwgMTc2LCAxNzcsIDE3OCwgMTc5LCAxODAsIDE4MSwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIAotICAgIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxODIsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAKLSAgICAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgCi0gICAgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwLCAxODMsIDEwMCwgMTg0LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTIxLCAKLSAgICAxMjEsIDEyMSwgMTIxLCAxODUsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE4NiwgMTcsIDE4NywgCi0gICAgMTg4LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxODksIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgCi0gICAgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIAotICAgIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTIwLCAKLSAgICAxMjAsIDEyMCwgMTIwLCAxMjAsIDEyMCwgMTg5LCAKKyAgICAxMjAsIDEyMCwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMiwgMTIyLCAxMjMsIDEyNCwgCisgICAgMTI1LCAxMjYsIDEyNywgMTI3LCAxMjgsIDEyOSwgMTMwLCAxMzEsIDEzMiwgMTMzLCAxMzQsIDEzNSwgMTM2LCAxMzcsIDg0LCAKKyAgICAxMzgsIDEzOSwgMTQwLCAxNDEsIDE0MiwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgMTQzLCA4NCwgMTQ0LCAxNDUsIDE0NiwgCisgICAgODQsIDE0NywgODQsIDE0OCwgODQsIDg0LCA4NCwgMTQ5LCA4NCwgODQsIDg0LCAxNTAsIDE1MSwgMTUyLCAxNTMsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDE1NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgMTU1LCA4NCwgMTU2LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgMTU3LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgNDEsIDQxLCA0MSwgNDEsIDE1OCwgODQsIDg0LCA4NCwgODQsIAorICAgIDg0LCA4NCwgODQsIDg0LCA4NCwgMTU5LCAxNjAsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgMTYxLCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIAorICAgIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIAorICAgIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIAorICAgIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIAorICAgIDg0LCA3OCwgMTYyLCAxNjMsIDE2NCwgMTY1LCA4NCwgMTY2LCA4NCwgMTY3LCAxNjgsIDE2OSwgMTcwLCAxNzEsIDE3MiwgCisgICAgMTczLCAxNzQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgMTc1LCAxNzYsIDg0LCA4NCwgMTc3LCAxNzgsIDE3OSwgCisgICAgMTgwLCAxODEsIDg0LCAxODIsIDE4MywgMTg0LCAxODUsIDE4NiwgMTg3LCAxODgsIDE4OSwgMTkwLCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgCisgICAgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDE5MSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIAorICAgIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAKKyAgICAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDEwMSwgMTAxLCAxMDEsIDE5MiwgCisgICAgMTAxLCAxOTMsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCAxMjIsIDEyMiwgMTIyLCAxMjIsIDE5NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgCisgICAgMTk1LCA4NCwgMTk2LCAxOTcsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKKyAgICA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDE5OCwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAKKyAgICAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgCisgICAgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIAorICAgIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxMjEsIDEyMSwgMTIxLCAxOTgsIAogfTsKIAogc3RhdGljIHVuc2lnbmVkIHNob3J0IGluZGV4MltdID0gewpAQCAtMTE5MSwxNDAxICsxMTk2LDE0NjQgQEAKICAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKICAgICAyMCwgMjAsIDksIDE2LCAxMCwgMTYsIDEsIDEsIDEsIDEsIDEsIDEsIDMsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAogICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDIxLCAyMiwgOCwgOCwgMjMsIDgsIDI0LCAKLSAgICAyNSwgMjYsIDI3LCAyOCwgMjksIDE2LCAzMCwgMjUsIDMxLCAzMiwgMzMsIDM0LCAzNCwgMjYsIDM1LCAyNSwgMjIsIDI2LCAKLSAgICAzNCwgMjgsIDM2LCAzNywgMzcsIDM3LCAyMiwgMzgsIDM4LCAzOCwgMzgsIDM4LCAzOCwgMzksIDM4LCAzOCwgMzgsIDM4LCAKKyAgICAyMiwgMjUsIDI2LCAyNywgMjgsIDE2LCAyOSwgMzAsIDMxLCAzMiwgMzMsIDM0LCAzNCwgMjUsIDM1LCAyMiwgMjIsIDI1LCAKKyAgICAzNCwgMjcsIDM2LCAzNywgMzcsIDM3LCAyMiwgMzgsIDM4LCAzOCwgMzgsIDM4LCAzOCwgMzksIDM4LCAzOCwgMzgsIDM4LCAKICAgICAzOCwgMzgsIDM4LCAzOCwgMzgsIDM5LCAzOCwgMzgsIDM4LCAzOCwgMzgsIDM4LCA0MCwgMzksIDM4LCAzOCwgMzgsIDM4LCAKICAgICAzOCwgMzksIDQxLCA0MiwgNDIsIDQzLCA0MywgNDMsIDQzLCA0MSwgNDMsIDQyLCA0MiwgNDIsIDQzLCA0MiwgNDIsIDQzLCAKICAgICA0MywgNDEsIDQzLCA0MiwgNDIsIDQzLCA0MywgNDMsIDQwLCA0MSwgNDIsIDQyLCA0MywgNDIsIDQzLCA0MSwgNDMsIDM4LCAKICAgICA0MiwgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCA0NCwgNDEsIDM4LCAKICAgICA0MiwgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQyLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCAKLSAgICA0MywgMzksIDQxLCAzOCwgNDMsIDM4LCA0MiwgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MSwgNDUsIDI4LCAzOCwgNDMsIDM4LCAKLSAgICA0MywgNDEsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDQ1LCAyOCwgMzksIDQxLCAzOCwgNDIsIDM4LCA0MywgMzgsIDQyLCAKLSAgICAyOCwgMzksIDQxLCAzOCwgNDIsIDM4LCA0MywgMzgsIDQzLCAzOSwgNDEsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCAKKyAgICA0MywgMzksIDQxLCAzOCwgNDMsIDM4LCA0MiwgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MSwgNDUsIDQ2LCAzOCwgNDMsIDM4LCAKKyAgICA0MywgNDEsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDQ1LCA0NiwgMzksIDQxLCAzOCwgNDIsIDM4LCA0MywgMzgsIDQyLCAKKyAgICA0NiwgMzksIDQxLCAzOCwgNDIsIDM4LCA0MywgMzgsIDQzLCAzOSwgNDEsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCAKICAgICA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM5LCA0MSwgMzgsIDQzLCAzOCwgNDIsIDM4LCAKICAgICA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAKLSAgICAzNSwgNDYsIDQ0LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ0LCA0NiwgNDQsIDQ0LCA0NCwgNDYsIDQ2LCA0NCwgNDQsIDQ0LCAKLSAgICA0NCwgNDYsIDQ0LCA0NCwgNDYsIDQ0LCA0NCwgNDQsIDQ2LCA0NiwgNDYsIDQ0LCA0NCwgNDYsIDQ0LCAzOCwgNDMsIDQ0LCAKLSAgICA0NiwgNDQsIDQ2LCA0NCwgNDQsIDQ2LCA0NCwgNDYsIDQ2LCA0NCwgNDYsIDQ0LCAzOCwgNDMsIDQ0LCA0NCwgNDQsIDQ2LCAKLSAgICA0NCwgNDYsIDQ0LCA0NCwgNDYsIDQ2LCA0NywgNDQsIDQ2LCA0NiwgNDYsIDQ3LCA0NywgNDcsIDQ3LCA0OCwgNDksIDM1LCAKLSAgICA0OCwgNDksIDM1LCA0OCwgNDksIDM1LCAzOCwgNDIsIDM4LCA0MiwgMzgsIDQyLCAzOCwgNDIsIDM4LCA0MiwgMzgsIDQyLCAKLSAgICAzOCwgNDIsIDM4LCA0MiwgNDYsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDQ0LCA0NiwgMzgsIDQzLCAzOCwgNDMsIDM4LCAKLSAgICA0MywgMzgsIDQzLCAzOCwgNDMsIDQzLCA0OCwgNDksIDM1LCAzOCwgNDMsIDQ0LCA0NCwgMzgsIDQzLCAzOCwgNDMsIDM4LCAKKyAgICAzNSwgNDcsIDQ0LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ0LCA0NywgNDQsIDQ0LCA0NCwgNDcsIDQ3LCA0NCwgNDQsIDQ0LCAKKyAgICA0NCwgNDcsIDQ0LCA0NCwgNDcsIDQ0LCA0NCwgNDQsIDQ3LCA0NywgNDcsIDQ0LCA0NCwgNDcsIDQ0LCAzOCwgNDMsIDQ0LCAKKyAgICA0NywgNDQsIDQ3LCA0NCwgNDQsIDQ3LCA0NCwgNDcsIDQ3LCA0NCwgNDcsIDQ0LCAzOCwgNDMsIDQ0LCA0NCwgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NCwgNDcsIDQ3LCA0OCwgNDQsIDQ3LCA0NywgNDcsIDQ4LCA0OCwgNDgsIDQ4LCA0OSwgNTAsIDM1LCAKKyAgICA0OSwgNTAsIDM1LCA0OSwgNTAsIDM1LCAzOCwgNDIsIDM4LCA0MiwgMzgsIDQyLCAzOCwgNDIsIDM4LCA0MiwgMzgsIDQyLCAKKyAgICAzOCwgNDIsIDM4LCA0MiwgNDcsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDQ0LCA0NywgMzgsIDQzLCAzOCwgNDMsIDM4LCAKKyAgICA0MywgMzgsIDQzLCAzOCwgNDMsIDQzLCA0OSwgNTAsIDM1LCAzOCwgNDMsIDQ0LCA0NCwgMzgsIDQzLCAzOCwgNDMsIDM4LCAKICAgICA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCAKLSAgICA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgNDQsIDQ2LCAzOCwgNDMsIDQ0LCAKLSAgICA0NiwgNDQsIDQ2LCA0NCwgNDYsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCAKLSAgICA0MywgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDQsIDQ0LCA0NiwgNDQsIDQ0LCA0NiwgNDYsIDQ0LCA0NiwgNDQsIDQ0LCAKLSAgICA0NCwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ2LCA0MSwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDEsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDcsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUxLCA1MSwgNTIsIDUyLCA1MiwgNTIsIDUyLCA1MiwgNTIsIDUzLCAKLSAgICA1MywgNTQsIDUzLCA1MSwgNTUsIDUxLCA1NSwgNTUsIDU1LCA1MSwgNTUsIDUxLCA1MSwgNTYsIDUyLCA1MywgNTMsIDUzLCAKLSAgICA1MywgNTMsIDUzLCAyNiwgMjYsIDI2LCAyNiwgNTcsIDI2LCA1MywgNTQsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTMsIDUzLCAKLSAgICA1MywgNTMsIDUzLCA1MywgNTMsIDUxLCA1MywgNTIsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCAKLSAgICA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCA1MywgNTgsIDU4LCA1OCwgNTgsIDU4LCA1OSwgNTgsIDU4LCA1OCwgNTgsIDU4LCAKLSAgICA1OCwgNTgsIDU5LCA1OSwgNTgsIDU5LCA1OCwgNTksIDU4LCA1OCwgNjAsIDYxLCA2MSwgNjEsIDYxLCA2MCwgNjIsIDYxLCAKLSAgICA2MSwgNjEsIDYxLCA2MSwgNjMsIDYzLCA2NCwgNjQsIDY0LCA2NCwgNjUsIDY1LCA2MSwgNjEsIDYxLCA2MSwgNjQsIDY0LCAKLSAgICA2MSwgNjQsIDY0LCA2MSwgNjEsIDY2LCA2NiwgNjYsIDY2LCA2NywgNjEsIDYxLCA2MSwgNjEsIDU5LCA1OSwgNTksIDY4LCAKLSAgICA2OCwgNTgsIDY4LCA2OCwgNjksIDU5LCA2MSwgNjEsIDYxLCA1OSwgNTksIDU5LCA2MSwgNjEsIDcwLCA1OSwgNTksIDU5LCAKLSAgICA2MSwgNjEsIDYxLCA2MSwgNTksIDYwLCA2MSwgNjEsIDU5LCA3MSwgNzIsIDcyLCA3MSwgNzIsIDcyLCA3MSwgNTksIDU5LCAKLSAgICA1OSwgNTksIDU5LCA1OSwgNTksIDU5LCA1OSwgNTksIDU5LCA1OSwgNTksIDQ0LCA0NiwgNDQsIDQ2LCA3MywgNTMsIDQ0LCAKLSAgICA0NiwgMCwgMCwgNTAsIDQ2LCA0NiwgNDYsIDc0LCAwLCAwLCAwLCAwLCAwLCA1NywgNzUsIDM4LCA3NCwgMzgsIDM4LCAzOCwgCisgICAgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDQ0LCA0NywgMzgsIDQzLCA0NCwgCisgICAgNDcsIDQ0LCA0NywgNDQsIDQ3LCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgCisgICAgNDMsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ0LCA0NCwgNDcsIDQ0LCA0NCwgNDcsIDQ3LCA0NCwgNDcsIDQ0LCA0NCwgCisgICAgNDQsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NywgNDEsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCisgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQxLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCisgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCisgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCisgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ4LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCisgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA1MSwgCisgICAgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MiwgNTIsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCA1NCwgCisgICAgNTQsIDU1LCA1NCwgNTIsIDU2LCA1MiwgNTYsIDU2LCA1NiwgNTIsIDU2LCA1MiwgNTIsIDU3LCA1MywgNTQsIDU0LCA1NCwgCisgICAgNTQsIDU0LCA1NCwgMjUsIDI1LCAyNSwgMjUsIDU4LCAyNSwgNTQsIDU1LCA1MSwgNTEsIDUxLCA1MSwgNTEsIDU0LCA1NCwgCisgICAgNTQsIDU0LCA1NCwgNTQsIDU0LCA1MiwgNTQsIDUzLCA1NCwgNTQsIDU0LCA1NCwgNTQsIDU0LCA1NCwgNTQsIDU0LCA1NCwgCisgICAgNTQsIDU0LCA1NCwgNTQsIDU0LCA1NCwgNTQsIDU5LCA1OSwgNTksIDU5LCA1OSwgNjAsIDU5LCA1OSwgNTksIDU5LCA1OSwgCisgICAgNTksIDU5LCA2MCwgNjAsIDU5LCA2MCwgNTksIDYwLCA1OSwgNTksIDYxLCA2MiwgNjIsIDYyLCA2MiwgNjEsIDYzLCA2MiwgCisgICAgNjIsIDYyLCA2MiwgNjIsIDY0LCA2NCwgNjUsIDY1LCA2NSwgNjUsIDY2LCA2NiwgNjIsIDYyLCA2MiwgNjIsIDY1LCA2NSwgCisgICAgNjIsIDY1LCA2NSwgNjIsIDYyLCA2NywgNjcsIDY3LCA2NywgNjgsIDYyLCA2MiwgNjIsIDYyLCA2MCwgNjAsIDYwLCA2OSwgCisgICAgNjksIDU5LCA2OSwgNjksIDcwLCA2MCwgNjIsIDYyLCA2MiwgNjAsIDYwLCA2MCwgNjIsIDYyLCA3MSwgNjAsIDYwLCA2MCwgCisgICAgNjIsIDYyLCA2MiwgNjIsIDYwLCA2MSwgNjIsIDYyLCA2MCwgNzIsIDczLCA3MywgNzIsIDczLCA3MywgNzIsIDYwLCA2MCwgCisgICAgNjAsIDYwLCA2MCwgNjAsIDYwLCA2MCwgNjAsIDYwLCA2MCwgNjAsIDYwLCA0NCwgNDcsIDQ0LCA0NywgNzQsIDU0LCA0NCwgCisgICAgNDcsIDAsIDAsIDUxLCA0NywgNDcsIDQ3LCA3NSwgMCwgMCwgMCwgMCwgMCwgNTgsIDc2LCAzOCwgNzUsIDM4LCAzOCwgMzgsIAogICAgIDAsIDM4LCAwLCAzOCwgMzgsIDQzLCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOSwgCiAgICAgMzksIDM5LCAzOSwgMzksIDAsIDM5LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOCwgMzgsIDQzLCA0MywgNDMsIDQzLCAKICAgICA0MywgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCAKLSAgICA0NiwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQzLCA0MywgNDMsIDQzLCA0MywgNDQsIDM1LCAzNSwgNDgsIDc2LCAKLSAgICA3NiwgMzUsIDM1LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgMzUsIDM1LCAzNSwgNDYsIDQ4LCAzNSwgNzcsIDQ0LCAKLSAgICA0NiwgNDgsIDQ0LCA0NiwgNDYsIDQ0LCA0NCwgNDQsIDM4LCA3OCwgNDQsIDM4LCA0NCwgNDQsIDQ0LCAzOCwgNDQsIDQ0LCAKLSAgICA0NCwgNDQsIDM4LCAzOCwgMzgsIDQ0LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCA3OCwgMzksIDM5LCAKKyAgICA0NywgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQzLCA0MywgNDMsIDQzLCA0MywgNDQsIDM1LCAzNSwgNDksIDc3LCAKKyAgICA3NywgMzUsIDM1LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgMzUsIDM1LCAzNSwgNDcsIDQ5LCAzNSwgNzgsIDQ0LCAKKyAgICA0NywgNDksIDQ0LCA0NywgNDcsIDQ0LCA0NCwgNDQsIDM4LCA3OSwgNDQsIDM4LCA0NCwgNDQsIDQ0LCAzOCwgNDQsIDQ0LCAKKyAgICA0NCwgNDQsIDM4LCAzOCwgMzgsIDQ0LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCA3OSwgMzksIDM5LCAKICAgICAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAzOSwgMzksIDM5LCAKICAgICAzOSwgMzksIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQyLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCAKICAgICA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDEsIDQxLCA0MSwgNDMsIDQyLCAKLSAgICA0NiwgNDMsIDQ2LCA0NiwgNDYsIDQzLCA0NiwgNDYsIDQ2LCA0NiwgNDMsIDQzLCA0MywgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICAzOCwgNDMsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA3OSwgODAsIDgwLCA4MCwgODAsIDgwLCAKLSAgICA4MSwgODEsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICA0NCwgNDYsIDQ0LCAzOCwgNDMsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ2LCAKLSAgICAzOCwgNDMsIDM4LCA0MywgNDQsIDQ2LCAzOCwgNDMsIDQ0LCA0NiwgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgNDQsIDQ2LCAKLSAgICAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCA0NCwgNDYsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAKLSAgICAzOCwgNDMsIDQ0LCA0NiwgMzgsIDQzLCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgMCwgMCwgMCwgCisgICAgNDcsIDQzLCA0NywgNDcsIDQ3LCA0MywgNDcsIDQ3LCA0NywgNDcsIDQzLCA0MywgNDMsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgMzgsIDQzLCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgODAsIDgxLCA4MSwgODEsIDgxLCA4MSwgCisgICAgODIsIDgyLCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgNDQsIDQ3LCA0NCwgMzgsIDQzLCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NywgCisgICAgMzgsIDQzLCAzOCwgNDMsIDQ0LCA0NywgMzgsIDQzLCA0NCwgNDcsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDQ0LCA0NywgCisgICAgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgNDQsIDQ3LCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgCisgICAgMzgsIDQzLCA0NCwgNDcsIDM4LCA0MywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgCiAgICAgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgCi0gICAgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgMCwgMCwgNTIsIDgyLCA4MiwgODIsIDgyLCA4MiwgODIsIDAsIDQ2LCA0NiwgNDYsIAotICAgIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIAotICAgIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgMzUsIAotICAgIDAsIDgyLCA4MywgMCwgMCwgMCwgMCwgMCwgMCwgODQsIDgwLCA4MCwgODAsIDgwLCA4NCwgODAsIDgwLCA4MCwgODUsIDg0LCAKLSAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCA4MCwgODAsIDg0LCA4MCwgODAsIDg1LCAKLSAgICA4NiwgODAsIDg3LCA4OCwgODksIDkwLCA5MSwgOTIsIDkzLCA5NCwgOTUsIDk2LCA5NiwgOTcsIDk4LCA5OSwgMTAwLCAxMDEsIAotICAgIDEwMiwgMTAzLCAxMDQsIDEwMiwgODAsIDg0LCAxMDIsIDk1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDUsIDEwNSwgCi0gICAgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDIsIDEwMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA2LCAxMDYsIDEwNiwgCi0gICAgMTA2LCAwLCAwLCA3NywgNzcsIDEwNywgMTA4LCAxMDgsIDEwOSwgMTEwLCAxMTEsIDI3LCAyNywgODAsIDgwLCA4MCwgODAsIAotICAgIDgwLCA4MCwgODAsIDgwLCAxMTIsIDExMywgMTE0LCAxMTEsIDAsIDAsIDExMSwgMTExLCAxMTUsIDExNSwgMTE2LCAxMTYsIAotICAgIDExNiwgMTE2LCAxMTYsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAKLSAgICAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE3LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExOCwgMTE5LCAxMjAsIAotICAgIDExMiwgMTEzLCAxMTQsIDEyMSwgMTIyLCAxMjMsIDEyMywgMTI0LCA4NCwgODAsIDgwLCA4MCwgODAsIDgwLCA4NCwgODAsIAotICAgIDgwLCA4NCwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMDgsIDEyNiwgMTI2LCAKLSAgICAxMTEsIDExNSwgMTE1LCAxMjcsIDExNSwgMTE1LCAxMTUsIDExNSwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIAotICAgIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAKLSAgICAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIAotICAgIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE2LCAKLSAgICAxMTUsIDExNiwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTYsIDExMSwgMTE1LCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgMTA2LCAyNywgCi0gICAgODAsIDgwLCA4MCwgODAsIDg0LCA4MCwgMTE3LCAxMTcsIDgwLCA4MCwgMjcsIDg0LCA4MCwgODAsIDg0LCAxMTUsIDExNSwgCi0gICAgMTI5LCAxMjksIDEyOSwgMTI5LCAxMjksIDEyOSwgMTI5LCAxMjksIDEyOSwgMTI5LCAxMTUsIDExNSwgMTE1LCAxMzAsIAotICAgIDEzMCwgMTE1LCAxMTEsIDExMSwgMTExLCAxMTEsIDExMSwgMTExLCAxMTEsIDExMSwgMTExLCAxMTEsIDExMSwgMTExLCAKLSAgICAxMTEsIDExMSwgMCwgMTA2LCAxMTUsIDEzMSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIAotICAgIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgODAsIDg0LCA4MCwgODAsIDg0LCA4MCwgODAsIDg0LCA4NCwgCi0gICAgODQsIDgwLCA4NCwgODQsIDgwLCA4NCwgODAsIDgwLCA4MCwgODQsIDgwLCA4NCwgODAsIDg0LCA4MCwgODQsIDgwLCA4MCwgCi0gICAgMCwgMCwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAKLSAgICAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIAotICAgIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAKLSAgICAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIAotICAgIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAKLSAgICAxMzIsIDEzMiwgMTMyLCAxMTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzMywgMTMzLCAKLSAgICAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgCi0gICAgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgODAsIDgwLCAKLSAgICA4MCwgODAsIDgwLCA4MCwgODAsIDg0LCA4MCwgMTM0LCAxMzQsIDI3LCAxMzUsIDEzNSwgMTM1LCAxMzQsIDAsIDAsIDAsIDAsIAotICAgIDAsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgODAsIDgwLCA4MCwgODAsIDEzNCwgODAsIDgwLCA4MCwgCi0gICAgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgMTM0LCA4MCwgODAsIDgwLCAxMzQsIDgwLCA4MCwgODAsIDgwLCA4MCwgMCwgMCwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMCwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCA4NCwgODQsIDg0LCAKLSAgICAwLCAwLCAxMDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzMiwgMTMyLCAKLSAgICAxMzIsIDEzNiwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAorICAgIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDAsIDAsIDUzLCA4MywgODMsIDgzLCA4MywgODMsIDgzLCAwLCA0NywgNDcsIDQ3LCAKICAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCAxMzcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxMzcsIDQ3LCA0NywgMTM3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDEzMiwgMTM2LCAxMzgsIDQ3LCAxMzYsIDEzNiwgMTM2LCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgCi0gICAgMTMyLCAxMzIsIDEzMiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzksIDEzNiwgMTM2LCA0NywgODAsIDg0LCA4MCwgODAsIAotICAgIDEzMiwgMTMyLCAxMzIsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCA0NywgNDcsIDEzMiwgMTMyLCAKLSAgICA4MiwgODIsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgODIsIDUyLCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgMTMyLCAxMzYsIDEzNiwgMCwgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCA0NywgNDcsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDAsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAxNDIsIDQ3LCAKLSAgICAxNDMsIDEzNiwgMTM2LCAxMzIsIDEzMiwgMTMyLCAxMzIsIDAsIDAsIDEzNiwgMTM2LCAwLCAwLCAxNDQsIDE0NCwgMTM5LCAKLSAgICA0NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQzLCAwLCAwLCAwLCAwLCAxNDAsIDE0MCwgMCwgMTQwLCA0NywgNDcsIAotICAgIDEzMiwgMTMyLCAwLCAwLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDQ3LCA0NywgCi0gICAgMTQ1LCAxNDUsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDc5LCAxNDUsIDAsIDAsIDAsIDAsIDAsIDEzMiwgMTMyLCAKLSAgICAxMzYsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDAsIDAsIDQ3LCA0NywgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgMTQwLCAwLCA0NywgMTQwLCAwLCA0NywgNDcsIDAsIDAsIAotICAgIDE0MiwgMCwgMTM2LCAxMzYsIDEzNiwgMTMyLCAxMzIsIDAsIDAsIDAsIDAsIDEzMiwgMTMyLCAwLCAwLCAxMzIsIDEzMiwgCi0gICAgMTM5LCAwLCAwLCAwLCAxMzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0MCwgMTQwLCAxNDAsIDQ3LCAwLCAxNDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTMyLCAKLSAgICAxMzIsIDQ3LCA0NywgNDcsIDEzMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTMyLCAxMzIsIDEzNiwgMCwgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgMCwgMTQyLCAKLSAgICA0NywgMTM2LCAxMzYsIDEzNiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDAsIDEzMiwgMTMyLCAxMzYsIDAsIDEzNiwgCi0gICAgMTM2LCAxMzksIDAsIDAsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIAotICAgIDEzMiwgMTMyLCAwLCAwLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDAsIDE0NSwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTMyLCAxMzYsIDEzNiwgMCwgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCA0NywgNDcsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDE0MiwgNDcsIDE0MywgCi0gICAgMTMyLCAxMzYsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMCwgMCwgMTM2LCAxNDQsIDAsIDAsIDE0NCwgMTQ0LCAxMzksIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDE0NywgMTQzLCAwLCAwLCAwLCAwLCAxNDAsIDE0MCwgMCwgNDcsIDQ3LCA0NywgMTMyLCAKLSAgICAxMzIsIDAsIDAsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgNzksIDQ3LCAxNDYsIAotICAgIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzIsIDQ3LCAwLCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDEzNywgNDcsIDAsIDAsIDAsIDQ3LCAKLSAgICA0NywgMCwgNDcsIDAsIDQ3LCA0NywgMCwgMCwgMCwgNDcsIDQ3LCAwLCAwLCAwLCA0NywgNDcsIDQ3LCAwLCAwLCAwLCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAxNDMsIDEzNiwgMTMyLCAKLSAgICAxMzYsIDEzNiwgMCwgMCwgMCwgMTM2LCAxMzYsIDEzNiwgMCwgMTQ0LCAxNDQsIDE0NCwgMTM5LCAwLCAwLCA0NywgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMTQzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDEsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0NiwgMTQ2LCAxNDYsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDE0NSwgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDEzNiwgMTM2LCAxMzYsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgMCwgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCA0NywgMTMyLCAxMzIsIDEzMiwgMTM2LCAxMzYsIAotICAgIDEzNiwgMTM2LCAwLCAxMzIsIDEzMiwgMTQ4LCAwLCAxMzIsIDEzMiwgMTMyLCAxMzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDE0OSwgMTUwLCAwLCA0NywgNDcsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3LCA0NywgMTMyLCAxMzIsIDAsIDAsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTUxLCAxNTEsIAotICAgIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCA3OSwgMCwgMCwgMTM2LCAxMzYsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAxNDIsIDQ3LCAxMzYsIDE1MiwgMTQ0LCAxMzYsIAotICAgIDE0MywgMTM2LCAxMzYsIDAsIDE1MiwgMTQ0LCAxNDQsIDAsIDE0NCwgMTQ0LCAxMzIsIDEzOSwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTQzLCAxNDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3LCAwLCA0NywgNDcsIDEzMiwgMTMyLCAwLCAwLCAxNDEsIAotICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDAsIDQ3LCA0NywgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTM2LCAxMzYsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgMCwgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCA0NywgMTQzLCAxMzYsIDEzNiwgMTMyLCAxMzIsIAotICAgIDEzMiwgMTMyLCAwLCAxMzYsIDEzNiwgMTM2LCAwLCAxNDQsIDE0NCwgMTQ0LCAxMzksIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAxNDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3LCA0NywgMTMyLCAxMzIsIDAsIDAsIDE0MSwgMTQxLCAxNDEsIAotICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMCwgMCwgMCwgCi0gICAgNzksIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDEzNiwgMTM2LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgMCwgMCwgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDAsIDE1MywgMCwgMCwgMCwgMCwgMTQzLCAxMzYsIDEzNiwgMTMyLCAxMzIsIDEzMiwgCi0gICAgMCwgMTMyLCAwLCAxMzYsIDEzNiwgMTQ0LCAxMzYsIDE0NCwgMTQ0LCAxNDQsIDE0MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTM2LCAxMzYsIDgyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxMzIsIDQ3LCAxNTQsIAotICAgIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTU1LCAxNTUsIDEzOSwgMCwgMCwgMCwgMCwgMTQ1LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA1MiwgMTMyLCAxNTYsIDE1NiwgMTU2LCAxNTYsIDEzMiwgMTMyLCAxMzIsIDgyLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAotICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDgyLCA4MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAzNSwgCisgICAgMCwgODMsIDg0LCAwLCAwLCAwLCAwLCA4NSwgMCwgODYsIDgxLCA4MSwgODEsIDgxLCA4NiwgODEsIDgxLCA4MSwgODcsIDg2LCAKKyAgICA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4NiwgODYsIDg2LCA4NiwgODYsIDg2LCA4MSwgODEsIDg2LCA4MSwgODEsIDg3LCAKKyAgICA4OCwgODEsIDg5LCA5MCwgOTEsIDkyLCA5MywgOTQsIDk1LCA5NiwgOTcsIDk4LCA5OCwgOTksIDEwMCwgMTAxLCAxMDIsIAorICAgIDEwMywgMTA0LCAxMDUsIDEwNiwgMTA0LCA4MSwgODYsIDEwNCwgOTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDAsIDAsIDAsIDAsIAorICAgIDAsIDEwNywgMTA3LCAxMDcsIDEwNCwgMTA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDgsIDEwOCwgCisgICAgMTA4LCAxMDgsIDEwOCwgMCwgNzgsIDc4LCAxMDksIDExMCwgMTEwLCAxMTEsIDExMiwgMTEzLCAyNiwgMjYsIDgxLCA4MSwgCisgICAgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgMTE0LCAxMTUsIDExNiwgMTEzLCAwLCAwLCAxMTMsIDExMywgMTE3LCAxMTcsIAorICAgIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAKKyAgICAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgCisgICAgMTE3LCAxMTcsIDExOSwgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMjAsIAorICAgIDEyMSwgMTIyLCAxMTQsIDExNSwgMTE2LCAxMjMsIDEyNCwgMTI1LCAxMjUsIDEyNiwgODYsIDgxLCA4MSwgODEsIDgxLCA4MSwgCisgICAgODYsIDgxLCA4MSwgODYsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTEwLCAKKyAgICAxMjgsIDEyOCwgMTEzLCAxMTcsIDExNywgMTI5LCAxMTcsIDExNywgMTE3LCAxMTcsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIAorICAgIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAKKyAgICAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgCisgICAgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIAorICAgIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAKKyAgICAxMTcsIDExOCwgMTE3LCAxMTgsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgCisgICAgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE4LCAxMTMsIDExNywgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIAorICAgIDEwOCwgMjYsIDgxLCA4MSwgODEsIDgxLCA4NiwgODEsIDExOSwgMTE5LCA4MSwgODEsIDI2LCA4NiwgODEsIDgxLCA4NiwgCisgICAgMTE3LCAxMTcsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTE3LCAxMTcsIAorICAgIDExNywgMTMyLCAxMzIsIDExNywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDAsIDEzMywgMTE3LCAxMzQsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgCisgICAgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIAorICAgIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDgxLCA4NiwgODEsIDgxLCA4NiwgODEsIDgxLCAKKyAgICA4NiwgODYsIDg2LCA4MSwgODYsIDg2LCA4MSwgODYsIDgxLCA4MSwgODEsIDg2LCA4MSwgODYsIDgxLCA4NiwgODEsIDg2LCAKKyAgICA4MSwgODEsIDAsIDAsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIAorICAgIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAKKyAgICAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgCisgICAgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIAorICAgIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAKKyAgICAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgCisgICAgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIAorICAgIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzYsIAorICAgIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzYsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDgxLCAKKyAgICA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4NiwgODEsIDEzNywgMTM3LCAyNiwgMTM4LCAxMzgsIDEzOCwgMTM3LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDgxLCA4MSwgODEsIDgxLCAxMzcsIDgxLCA4MSwgCisgICAgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDEzNywgODEsIDgxLCA4MSwgMTM3LCA4MSwgODEsIDgxLCA4MSwgODEsIDAsIAorICAgIDAsIDEwNCwgMTA0LCAxMDQsIDEwNCwgMTA0LCAxMDQsIDEwNCwgMTA0LCAxMDQsIDEwNCwgMTA0LCAxMDQsIDEwNCwgMTA0LCAKKyAgICAxMDQsIDAsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgODYsIDg2LCA4NiwgCisgICAgMCwgMCwgMTA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA0NywgNDcsIDAsIDQ3LCAwLCAwLCA0NywgNDcsIDAsIDQ3LCAwLCAwLCA0NywgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIAotICAgIDQ3LCA0NywgNDcsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCAwLCA0NywgMCwgNDcsIAotICAgIDAsIDAsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDEzMiwgNDcsIDE1NCwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxNTcsIAotICAgIDE1NywgMCwgMTMyLCAxMzIsIDQ3LCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDUyLCAwLCAxNTgsIDE1OCwgMTU4LCAKLSAgICAxNTgsIDEzMiwgMTMyLCAwLCAwLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDAsIAotICAgIDAsIDE1NCwgMTU0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNzksIDc5LCA3OSwgODIsIDgyLCA4MiwgODIsIAotICAgIDgyLCA4MiwgODIsIDgyLCAxNTksIDgyLCA4MiwgODIsIDgyLCA4MiwgODIsIDc5LCA3OSwgNzksIDc5LCA3OSwgODQsIDg0LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAotICAgIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgNzksIDg0LCA3OSwgODQsIDc5LCAKLSAgICAxNjAsIDE2MSwgMTYyLCAxNjEsIDE2MiwgMTM2LCAxMzYsIDQ3LCA0NywgNDcsIDE0MCwgNDcsIDQ3LCA0NywgNDcsIDAsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCAxNDAsIDQ3LCA0NywgNDcsIDQ3LCAxNDAsIDQ3LCA0NywgNDcsIDQ3LCAxNDAsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCAxNDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDE0MCwgNDcsIDQ3LCAKLSAgICA0NywgMCwgMCwgMCwgMCwgMTYzLCAxNjQsIDE2NSwgMTY2LCAxNjUsIDE2NSwgMTY3LCAxNjUsIDE2NywgMTY0LCAxNjQsIAotICAgIDE2NCwgMTY0LCAxMzIsIDEzNiwgMTY0LCAxNjUsIDgwLCA4MCwgMTM5LCA4MiwgODAsIDgwLCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDE2NSwgMTMyLCAxMzIsIDEzMiwgMTMyLCAwLCAxMzIsIDEzMiwgCi0gICAgMTMyLCAxMzIsIDE2NSwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxNjUsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTY1LCAxMzIsIAotICAgIDEzMiwgMTMyLCAxMzIsIDE2NSwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAKLSAgICAxMzIsIDEzMiwgMTY1LCAxMzIsIDEzMiwgMTMyLCAwLCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDg0LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCAwLCA3OSwgNzksIDgyLCA4MiwgODIsIDgyLCA4MiwgNzksIDc5LCA3OSwgNzksIDgyLCAKLSAgICA4MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxMzcsIDQ3LCA0NywgNDcsIDQ3LCAxMzYsIAotICAgIDEzNiwgMTMyLCAxNDcsIDEzMiwgMTMyLCAxMzYsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxNDIsIDEzNiwgMTM5LCAKLSAgICAxMzksIDEzNiwgMTM2LCAxMzIsIDEzMiwgNDcsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAotICAgIDE0MSwgODIsIDgyLCA4MiwgODIsIDgyLCA4MiwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMTM2LCAxMzYsIDEzMiwgMTMyLCAKLSAgICA0NywgNDcsIDQ3LCA0NywgMTMyLCAxMzIsIDEzMiwgNDcsIDEzNiwgMTM2LCAxMzYsIDQ3LCA0NywgMTM2LCAxMzYsIDEzNiwgCi0gICAgMTM2LCAxMzYsIDEzNiwgMTM2LCA0NywgNDcsIDQ3LCAxMzIsIDEzMiwgMTMyLCAxMzIsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxMzIsIDEzNiwgMTM2LCAxMzIsIDEzMiwgMTM2LCAxMzYsIDEzNiwgCi0gICAgMTM2LCAxMzYsIDEzNiwgODQsIDQ3LCAxMzYsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAotICAgIDE0MSwgMTM2LCAxMzYsIDEzNiwgMTMyLCA3OSwgNzksIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTcsIDAsIDExNywgCisgICAgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAxMTcsIDExNywgMTE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MSwgCisgICAgODEsIDg2LCA4MSwgODEsIDg2LCA4MSwgODEsIDgxLCA4NiwgODYsIDg2LCAxMjAsIDEyMSwgMTIyLCA4MSwgODEsIDgxLCAKKyAgICA4NiwgODEsIDgxLCA4NiwgODYsIDgxLCA4MSwgODEsIDgxLCAwLCAxMzUsIDEzNSwgMTM1LCAxMzksIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNDAsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNDAsIDQ4LCA0OCwgMTQwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDEzNSwgMTM5LCAKKyAgICAxNDEsIDQ4LCAxMzksIDEzOSwgMTM5LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM5LCAxMzksIAorICAgIDEzOSwgMTM5LCAxNDIsIDEzOSwgMTM5LCA0OCwgODEsIDg2LCA4MSwgODEsIDEzNSwgMTM1LCAxMzUsIDE0MywgMTQzLCAKKyAgICAxNDMsIDE0MywgMTQzLCAxNDMsIDE0MywgMTQzLCA0OCwgNDgsIDEzNSwgMTM1LCA4MywgODMsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgODMsIDUzLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgMTM1LCAxMzksIDEzOSwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCAwLCAwLCA0OCwgNDgsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgCisgICAgNDgsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCAxNDUsIDQ4LCAxNDYsIDEzOSwgMTM5LCAxMzUsIDEzNSwgMTM1LCAKKyAgICAxMzUsIDAsIDAsIDEzOSwgMTM5LCAwLCAwLCAxNDcsIDE0NywgMTQyLCA0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTQ2LCAwLCAwLCAwLCAwLCAxNDMsIDE0MywgMCwgMTQzLCA0OCwgNDgsIDEzNSwgMTM1LCAwLCAwLCAxNDQsIDE0NCwgMTQ0LCAKKyAgICAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDQ4LCA0OCwgODUsIDg1LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIAorICAgIDE0OCwgMTQ4LCA4MCwgODUsIDAsIDAsIDAsIDAsIDAsIDEzNSwgMTM1LCAxMzksIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCAwLCA0OCwgMTQzLCAwLCA0OCwgMTQzLCAwLCA0OCwgNDgsIDAsIDAsIDE0NSwgMCwgMTM5LCAxMzksIDEzOSwgMTM1LCAKKyAgICAxMzUsIDAsIDAsIDAsIDAsIDEzNSwgMTM1LCAwLCAwLCAxMzUsIDEzNSwgMTQyLCAwLCAwLCAwLCAxMzUsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDE0MywgMTQzLCAxNDMsIDQ4LCAwLCAxNDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTM1LCAxMzUsIDQ4LCA0OCwgNDgsIDEzNSwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTM1LCAxMzUsIDEzOSwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgMCwgNDgsIDQ4LCA0OCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgCisgICAgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgMCwgMTQ1LCA0OCwgMTM5LCAxMzksIDEzOSwgMTM1LCAxMzUsIDEzNSwgCisgICAgMTM1LCAxMzUsIDAsIDEzNSwgMTM1LCAxMzksIDAsIDEzOSwgMTM5LCAxNDIsIDAsIDAsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDEzNSwgMTM1LCAwLCAwLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDgzLCA4NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMTM1LCAxMzksIDEzOSwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCA0OCwgNDgsIAorICAgIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgNDgsIDQ4LCAwLCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDAsIDAsIDE0NSwgNDgsIDE0NiwgMTM1LCAxMzksIDEzNSwgMTM1LCAxMzUsIDEzNSwgMCwgMCwgMTM5LCAKKyAgICAxNDcsIDAsIDAsIDE0NywgMTQ3LCAxNDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0OSwgMTQ2LCAwLCAwLCAwLCAwLCAKKyAgICAxNDMsIDE0MywgMCwgNDgsIDQ4LCA0OCwgMTM1LCAxMzUsIDAsIDAsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgMTQ0LCAxNDQsIDE0NCwgODAsIDQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAxMzUsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCAKKyAgICAwLCA0OCwgNDgsIDE0MCwgNDgsIDAsIDAsIDAsIDQ4LCA0OCwgMCwgNDgsIDAsIDQ4LCA0OCwgMCwgMCwgMCwgNDgsIDQ4LCAKKyAgICAwLCAwLCAwLCA0OCwgNDgsIDQ4LCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCAwLCAwLCAwLCAwLCAxNDYsIDEzOSwgMTM1LCAxMzksIDEzOSwgMCwgMCwgMCwgMTM5LCAxMzksIDEzOSwgMCwgMTQ3LCAKKyAgICAxNDcsIDE0NywgMTQyLCAwLCAwLCA0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQ2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0OCwgCisgICAgMTQ4LCAxNDgsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDg1LCAyNiwgMCwgMCwgMCwgMCwgMCwgMCwgMTM5LCAxMzksIAorICAgIDEzOSwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIAorICAgIDAsIDAsIDQ4LCAxMzUsIDEzNSwgMTM1LCAxMzksIDEzOSwgMTM5LCAxMzksIDAsIDEzNSwgMTM1LCAxNTAsIDAsIDEzNSwgCisgICAgMTM1LCAxMzUsIDE0MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTUxLCAxNTIsIDAsIDQ4LCA0OCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgNDgsIDQ4LCAxMzUsIDEzNSwgMCwgMCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgCisgICAgMTQ0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIDgwLCAwLCAwLCAKKyAgICAxMzksIDEzOSwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDAsIDAsIDE0NSwgNDgsIDEzOSwgMTU0LCAxNDcsIDEzOSwgMTQ2LCAxMzksIDEzOSwgMCwgMTU0LCAxNDcsIDE0NywgCisgICAgMCwgMTQ3LCAxNDcsIDEzNSwgMTQyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDYsIDE0NiwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgNDgsIDAsIDQ4LCA0OCwgMTM1LCAxMzUsIDAsIDAsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAKKyAgICAxNDQsIDE0NCwgMCwgNDgsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzksIAorICAgIDEzOSwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDAsIDAsIDQ4LCAxNDYsIDEzOSwgMTM5LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDAsIDEzOSwgMTM5LCAxMzksIDAsIAorICAgIDE0NywgMTQ3LCAxNDcsIDE0MiwgNDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgNDgsIDQ4LCAxMzUsIDEzNSwgMCwgMCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgCisgICAgMTQ0LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAwLCAwLCAwLCA4MCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgMCwgMCwgMTM5LCAxMzksIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDQ4LCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgMCwgMCwgCisgICAgMTU1LCAwLCAwLCAwLCAwLCAxNDYsIDEzOSwgMTM5LCAxMzUsIDEzNSwgMTM1LCAwLCAxMzUsIDAsIDEzOSwgMTM5LCAxNDcsIAorICAgIDEzOSwgMTQ3LCAxNDcsIDE0NywgMTQ2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAxMzksIDEzOSwgODMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDEzNSwgNDgsIDE1NiwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxNTcsIAorICAgIDE1NywgMTQyLCAwLCAwLCAwLCAwLCA4NSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNTMsIDEzNSwgMTU4LCAxNTgsIDE1OCwgCisgICAgMTU4LCAxMzUsIDEzNSwgMTM1LCA4MywgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAKKyAgICA4MywgODMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgMCwgNDgsIDAsIDAsIDQ4LCA0OCwgCisgICAgMCwgNDgsIDAsIDAsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDAsIDQ4LCAwLCA0OCwgMCwgMCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgMTM1LCA0OCwgMTU2LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDE1OSwgMTU5LCAwLCAxMzUsIDEzNSwgNDgsIDAsIDAsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgMCwgNTMsIDAsIDE2MCwgMTYwLCAxNjAsIDE2MCwgMTM1LCAxMzUsIDAsIDAsIDE0NCwgMTQ0LCAKKyAgICAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMCwgMCwgMTU2LCAxNTYsIDQ4LCA0OCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNDgsIDgwLCA4MCwgODAsIDgzLCA4MywgODMsIDgzLCA4MywgODMsIDgzLCA4MywgMTYxLCA4MywgCisgICAgODMsIDgzLCA4MywgODMsIDgzLCA4MCwgODMsIDgwLCA4MCwgODAsIDg2LCA4NiwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCisgICAgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIAorICAgIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDgwLCA4NiwgODAsIDg2LCA4MCwgMTYyLCAxNjMsIDE2NCwgMTYzLCAKKyAgICAxNjQsIDEzOSwgMTM5LCA0OCwgNDgsIDQ4LCAxNDMsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgMTQzLCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgMTQzLCA0OCwgNDgsIDQ4LCA0OCwgMTQzLCA0OCwgNDgsIDQ4LCA0OCwgMTQzLCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNDMsIDQ4LCA0OCwgNDgsIDAsIDAsIDAsIDAsIDE2NSwgCisgICAgMTY2LCAxNjcsIDE2OCwgMTY3LCAxNjcsIDE2OSwgMTY3LCAxNjksIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTM1LCAxMzksIAorICAgIDE2NiwgMTY3LCA4MSwgODEsIDE0MiwgODMsIDgxLCA4MSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxMzUsIDEzNSwgMTM1LCAKKyAgICAxMzUsIDEzNSwgMTM1LCAxNjcsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMCwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxNjcsIDEzNSwgCisgICAgMTM1LCAxMzUsIDEzNSwgMTY3LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDE2NywgMTM1LCAxMzUsIDEzNSwgMTM1LCAxNjcsIAorICAgIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDE2NywgMTM1LCAKKyAgICAxMzUsIDEzNSwgMCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4NiwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCisgICAgMCwgODAsIDgwLCA4MywgODMsIDgzLCA4MywgODMsIDgwLCA4MCwgODAsIDgwLCA4MywgODMsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTQwLCA0OCwgNDgsIDQ4LCA0OCwgMTM5LCAxMzksIDEzNSwgMTQ5LCAxMzUsIAorICAgIDEzNSwgMTM5LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTQ1LCAxMzksIDE0MiwgMTQyLCAxMzksIDEzOSwgMTM1LCAKKyAgICAxMzUsIDQ4LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDgzLCA4MywgODMsIAorICAgIDgzLCA4MywgODMsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDEzOSwgMTM5LCAxMzUsIDEzNSwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDEzNSwgMTM1LCAxMzUsIDQ4LCAxMzksIDEzOSwgMTM5LCA0OCwgNDgsIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIAorICAgIDEzOSwgNDgsIDQ4LCA0OCwgMTM1LCAxMzUsIDEzNSwgMTM1LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgMTM1LCAxMzksIDEzOSwgMTM1LCAxMzUsIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIAorICAgIDg2LCA0OCwgMTM5LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDEzOSwgMTM5LCAKKyAgICAxMzksIDEzNSwgODAsIDgwLCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIAogICAgIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIAotICAgIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgODIsIDUwLCAwLCAwLCAwLCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCA0NywgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIAotICAgIDE2OSwgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIDE2OSwgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OSwgMTY5LCAxNjksIDE2OSwgCi0gICAgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIAotICAgIDE2OSwgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIDE2OSwgMTY5LCAxNjksIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgMCwgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDQ3LCA0NywgNDcsIDQ3LCAwLCAKLSAgICAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDAsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAKLSAgICA0NywgNDcsIDQ3LCA0NywgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDAsIDAsIDgwLCA4MCwgODAsIDc5LCA4MiwgODIsIDgyLCA4MiwgODIsIDgyLCA4MiwgODIsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgCi0gICAgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIAotICAgIDE0NiwgMTQ2LCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA4MywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDgyLCA4MiwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxNzAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMTYxLCAKLSAgICAxNjIsIDAsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDgyLCA4MiwgODIsIDE3MSwgMTcxLCAxNzEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgMTMyLCAxMzIsIDEzOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgMTMyLCAxMzIsIDEzOSwgODIsIDgyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxMzIsIDEzMiwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDAsIDQ3LCA0NywgNDcsIDAsIDEzMiwgMTMyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMTcyLCAxNzIsIDEzNiwgCi0gICAgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzYsIAotICAgIDEzNiwgMTMyLCAxMzYsIDEzNiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTM5LCAKLSAgICAxMzIsIDgyLCA4MiwgODIsIDUyLCA4MiwgODIsIDgyLCAxNDUsIDQ3LCA4MCwgMCwgMCwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAwLCAwLCAwLCAwLCAwLCAwLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgCi0gICAgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDAsIDAsIDAsIDAsIDAsIDAsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIAotICAgIDgzLCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzMiwgMTMyLCAxMzIsIDE3MCwgMCwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAotICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDUyLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA4NiwgNDcsIDAsIDAsIDAsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDAsIDEzMiwgMTMyLCAxMzIsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTMyLCAKLSAgICAxMzIsIDEzNiwgMTM2LCAxMzYsIDAsIDAsIDAsIDAsIDEzNiwgMTM2LCAxMzIsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAKLSAgICAxMzYsIDg1LCA4MCwgODQsIDAsIDAsIDAsIDAsIDI3LCAwLCAwLCAwLCAxMzUsIDEzNSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgMCwgMCwgMCwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAKLSAgICAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzYsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCAxMzYsIDEzNiwgMCwgMCwgMCwgMCwgMCwgMCwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAotICAgIDE0MSwgMTQxLCAxNDYsIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDgwLCA4NCwgMTM2LCAxMzYsIDEzNiwgMCwgMCwgODIsIDgyLCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDEzNiwgCi0gICAgMTMyLCAxMzYsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMCwgMTM5LCAxMzYsIDEzMiwgMTM2LCAxMzYsIAotICAgIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAKLSAgICAxMzIsIDEzMiwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAwLCAwLCA4NCwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgCi0gICAgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDAsIDAsIDAsIDAsIDAsIDAsIDgyLCA4MiwgODIsIDgyLCA4MiwgODIsIDgyLCAKLSAgICA1MiwgODIsIDgyLCA4MiwgODIsIDgyLCA4MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgMCwgNDQsIDAsIDAsIDAsIDAsIDAsIDQ0LCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgODMsIDUxLCA0OCwgNDgsIDQ4LCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCA0OCwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAKKyAgICAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAKKyAgICAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgCisgICAgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgMCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIAorICAgIDgxLCA4MSwgODEsIDgzLCA4MywgODMsIDgzLCA4MywgODMsIDgzLCA4MywgODMsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAKKyAgICAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgCisgICAgMTQ4LCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA4NCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDgzLCA4MywgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNzIsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTYzLCAxNjQsIDAsIAorICAgIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDgzLCA4MywgODMsIDE3MywgMTczLCAxNzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgMTM1LCAxMzUsIDE0MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTM1LCAxMzUsIAorICAgIDE0MiwgODMsIDgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxMzUsIDEzNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDQ4LCAKKyAgICA0OCwgNDgsIDAsIDEzNSwgMTM1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTM1LCAxMzUsIDEzOSwgMTM1LCAxMzUsIAorICAgIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM1LCAKKyAgICAxMzksIDEzOSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTQyLCAxMzUsIDgzLCA4MywgCisgICAgODMsIDUzLCA4MywgODMsIDgzLCA4NSwgNDgsIDgxLCAwLCAwLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgMTQ0LCAxNDQsIDAsIDAsIDAsIDAsIDAsIDAsIDE1MywgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgMTUzLCAKKyAgICAxNTMsIDE1MywgMCwgMCwgMCwgMCwgMCwgMCwgMTM4LCAxMzgsIDEzOCwgMTM4LCAxMzgsIDEzOCwgODQsIDEzOCwgMTM4LCAKKyAgICAxMzgsIDEzOCwgMTM1LCAxMzUsIDEzNSwgMTcyLCAwLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgCisgICAgMTQ0LCAxNDQsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNTMsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDg4LCA0OCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgMCwgMCwgMCwgMTM1LCAxMzUsIDEzNSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzUsIDEzNSwgMTM5LCAxMzksIAorICAgIDEzOSwgMCwgMCwgMCwgMCwgMTM5LCAxMzksIDEzNSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgODcsIDgxLCA4NiwgCisgICAgMCwgMCwgMCwgMCwgMjYsIDAsIDAsIDAsIDEzOCwgMTM4LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgMTQ0LCAxNDQsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCAwLCAwLCAwLCAwLCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIAorICAgIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDEzOSwgMTM5LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0OCwgCisgICAgMCwgMCwgMCwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgODEsIDg2LCAxMzksIDEzOSwgMTM5LCAwLCAwLCA4MywgODMsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTM5LCAxMzUsIDEzOSwgMTM1LCAKKyAgICAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAwLCAxNDIsIDEzOSwgMTM1LCAxMzksIDEzOSwgMTM1LCAxMzUsIDEzNSwgCisgICAgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzNSwgMTM1LCA4MSwgODEsIAorICAgIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDAsIDAsIDg2LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgCisgICAgMTQ0LCAxNDQsIDAsIDAsIDAsIDAsIDAsIDAsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgMCwgMCwgMCwgMCwgMCwgMCwgODMsIDgzLCA4MywgODMsIDgzLCA4MywgODMsIDUzLCA4MywgODMsIDgzLCA4MywgCisgICAgODMsIDgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzIsIDEzMiwgMTMyLCAKLSAgICAxMzIsIDEzNiwgNDcsIDEzNywgNDcsIDEzNywgNDcsIDEzNywgNDcsIDEzNywgNDcsIDEzNywgNDcsIDQ3LCA0NywgMTM3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxNDIsIDE0MywgCi0gICAgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDE0NCwgMTMyLCAxNDQsIDEzNiwgMTM2LCAxNDQsIDE0NCwgMTMyLCAxNDQsIAotICAgIDE3MywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDAsIDAsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgODIsIDgyLCA4MiwgODIsIDgyLCA4MiwgODIsIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA4MCwgODQsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCAwLCAwLCAwLCAxMzIsIDEzMiwgMTM2LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxMzYsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTM2LCAxMzYsIDEzMiwgMTMyLCAxNzMsIDAsIAotICAgIDAsIDAsIDQ3LCA0NywgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzOSwgNDgsIDE0MCwgNDgsIAorICAgIDE0MCwgNDgsIDE0MCwgNDgsIDE0MCwgNDgsIDE0MCwgNDgsIDQ4LCA0OCwgMTQwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNDUsIDE0NiwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIAorICAgIDE0NywgMTM1LCAxNDcsIDEzOSwgMTM5LCAxNDcsIDE0NywgMTM1LCAxNDcsIDE3NCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDAsIDAsIDAsIDAsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgODMsIDgzLCAKKyAgICA4MywgODMsIDgzLCA4MywgODMsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MSwgODYsIDgxLCAKKyAgICA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAwLCAwLCAwLCAxMzUsIAorICAgIDEzNSwgMTM5LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxMzksIDEzNSwgMTM1LCAKKyAgICAxMzUsIDEzNSwgMTM5LCAxMzksIDEzNSwgMTM1LCAxNzQsIDE0MiwgMTM5LCAxMzksIDQ4LCA0OCwgMTQ0LCAxNDQsIDE0NCwgCisgICAgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDE0NSwgCisgICAgMTM5LCAxMzUsIDEzNSwgMTM5LCAxMzksIDEzOSwgMTM1LCAxMzksIDEzNSwgMTM1LCAxMzUsIDE3NCwgMTc0LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA4MywgODMsIDgzLCA4MywgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIAorICAgIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzksIDEzOSwgMTM1LCAxNDUsIDAsIDAsIDAsIDgzLCAKKyAgICA4MywgODMsIDgzLCA4MywgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAwLCAwLCAKKyAgICAwLCA0OCwgNDgsIDQ4LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDgzLCA4MywgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODMsIDgzLCA4MywgODMsIDgzLCA4MywgCisgICAgODMsIDgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MSwgODEsIDgxLCA4MywgMTc1LCA4NiwgODYsIDg2LCA4NiwgODYsIAorICAgIDgxLCA4MSwgODYsIDg2LCA4NiwgODYsIDgxLCAxMzksIDE3NSwgMTc1LCAxNzUsIDE3NSwgMTc1LCAxNzUsIDE3NSwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDg2LCA0OCwgNDgsIDQ4LCA0OCwgMTM5LCAxMzksIDgxLCA0OCwgNDgsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKICAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgMTQyLCAxMzYsIDEzMiwgMTMyLCAxMzYsIDEzNiwgMTM2LCAxMzIsIDEzNiwgMTMyLCAxMzIsIAotICAgIDEzMiwgMTczLCAxNzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDgyLCA4MiwgODIsIDgyLCA0NywgNDcsIDQ3LCA0NywgCisgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDUxLCA1MSwgNTEsIDUzLCA1MSwgNTEsIDUxLCA1MSwgCisgICAgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUzLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgCisgICAgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MywgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgCisgICAgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgCisgICAgNTEsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA1MSwgNDcsIDQ3LCA0NywgCiAgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxMzYsIDEzNiwgMTM2LCAKLSAgICAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzNiwgCi0gICAgMTM2LCAxMzIsIDE0MiwgMCwgMCwgMCwgODIsIDgyLCA4MiwgODIsIDgyLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDAsIDAsIDAsIDQ3LCA0NywgNDcsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAotICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNTIsIAotICAgIDUyLCA1MiwgNTIsIDUyLCA1MiwgODIsIDgyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MCwgODAsIDgwLCA4MiwgMTc0LCAKLSAgICA4NCwgODQsIDg0LCA4NCwgODQsIDgwLCA4MCwgODQsIDg0LCA4NCwgODQsIDgwLCAxMzYsIDE3NCwgMTc0LCAxNzQsIDE3NCwgCi0gICAgMTc0LCAxNzQsIDE3NCwgNDcsIDQ3LCA0NywgNDcsIDg0LCA0NywgNDcsIDQ3LCA0NywgMTM2LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgCi0gICAgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgCi0gICAgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDUwLCA1MCwgNTAsIDUyLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUyLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MiwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgCi0gICAgMzUsIDM1LCAzNSwgMzUsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA1MCwgCi0gICAgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgCi0gICAgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA4MCwgCi0gICAgODAsIDg0LCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODQsIDgwLCA4MCwgMTc1LCAxNzYsIDg0LCAxNzcsIDgwLCAKKyAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNTEsIDUxLCA1MSwgNTEsIDUxLCAKKyAgICA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCAKKyAgICA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDgxLCA4MSwgODYsIDgxLCAKKyAgICA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4NiwgODEsIDgxLCAxNzYsIDE3NywgODYsIDE3OCwgODEsIDgxLCA4MSwgODEsIAorICAgIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3OSwgODYsIAorICAgIDgxLCA4NiwgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIAorICAgIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIAorICAgIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIAorICAgIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIAorICAgIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIAorICAgIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIAorICAgIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIAorICAgIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIAorICAgIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgNDMsIDQzLCA0MywgNDMsIDM1LCAxODAsIDQ3LCA0NywgNDQsIDQ3LCAKKyAgICAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAKKyAgICAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAKKyAgICAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAKKyAgICAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAKKyAgICAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDM4LCAzOCwgMzgsIDM4LCAKKyAgICAzOCwgMzgsIDM4LCAzOCwgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgMCwgMCwgMzgsIDM4LCAzOCwgMzgsIDM4LCAzOCwgMCwgCisgICAgMCwgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCAzOCwgMzgsIDM4LCAzOCwgMzgsIDM4LCAzOCwgMzgsIDQzLCAKKyAgICA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgMzgsIDM4LCAzOCwgMzgsIDM4LCAzOCwgMzgsIDM4LCA0MywgNDMsIDQzLCAKKyAgICA0MywgNDMsIDQzLCAwLCAwLCAzOCwgMzgsIDM4LCAzOCwgMzgsIDM4LCAwLCAwLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCAKKyAgICA0MywgNDMsIDAsIDM4LCAwLCAzOCwgMCwgMzgsIDAsIDM4LCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDM4LCAKKyAgICAzOCwgMzgsIDM4LCAzOCwgMzgsIDM4LCAzOCwgNDMsIDE4MSwgNDMsIDE4MSwgNDMsIDE4MSwgNDMsIDE4MSwgNDMsIDE4MSwgCisgICAgNDMsIDE4MSwgNDMsIDE4MSwgMCwgMCwgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCAxODIsIDE4MiwgMTgyLCAKKyAgICAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCAxODIsIDE4MiwgMTgyLCAKKyAgICAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCAxODIsIDE4MiwgMTgyLCAKKyAgICAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgNDMsIDQzLCA0MywgNDMsIDQzLCAwLCA0MywgNDMsIDM4LCAzOCwgMzgsIDE4MywgCisgICAgMTgyLCA1OCwgMTgxLCA1OCwgNTgsIDc2LCA0MywgNDMsIDQzLCAwLCA0MywgNDMsIDM4LCAxODMsIDM4LCAxODMsIDE4MiwgCisgICAgNzYsIDc2LCA3NiwgNDMsIDQzLCA0MywgMTgxLCAwLCAwLCA0MywgNDMsIDM4LCAzOCwgMzgsIDE4MywgMCwgNzYsIDc2LCAKKyAgICA3NiwgNDMsIDQzLCA0MywgMTgxLCA0MywgNDMsIDQzLCA0MywgMzgsIDM4LCAzOCwgMTgzLCAzOCwgNzYsIDE4NCwgMTg0LCAKKyAgICAwLCAwLCA0MywgNDMsIDQzLCAwLCA0MywgNDMsIDM4LCAxODMsIDM4LCAxODMsIDE4MiwgMTg0LCA1OCwgMCwgMTg1LCAxODUsIAorICAgIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NywgMTg3LCAxODcsIDE4OCwgMTg5LCAKKyAgICAxOTAsIDE5MSwgODQsIDE5MCwgMTkwLCAxOTAsIDIyLCAxOTIsIDE5MywgMTk0LCAxOTUsIDE5NiwgMTkzLCAxOTQsIDE5NSwgCisgICAgMTk2LCAyMiwgMjIsIDIyLCAxMzgsIDE5NywgMTk3LCAxOTcsIDIyLCAxOTgsIDE5OSwgMjAwLCAyMDEsIDIwMiwgMjAzLCAKKyAgICAyMDQsIDIxLCAyMDUsIDExMCwgMjA1LCAyMDYsIDIwNywgMjIsIDE5MiwgMTkyLCAxMzgsIDI4LCAzNiwgMjIsIDE5MiwgCisgICAgMTM4LCAxOTcsIDIwOCwgMjA4LCAxMzgsIDEzOCwgMTM4LCAyMDksIDE2MywgMTY0LCAxOTIsIDE5MiwgMTkyLCAxMzgsIAorICAgIDEzOCwgMTM4LCAxMzgsIDEzOCwgMTM4LCAxMzgsIDEzOCwgNzgsIDEzOCwgMjA4LCAxMzgsIDEzOCwgMTkyLCAxMzgsIDEzOCwgCisgICAgMTM4LCAxMzgsIDEzOCwgMTM4LCAxMzgsIDE4NiwgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDAsIDAsIDAsIDAsIDAsIAorICAgIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDIxMCwgNTEsIDAsIDAsIDM0LCAyMTAsIDIxMCwgMjEwLCAyMTAsIDIxMCwgCisgICAgMjExLCAyMTEsIDIxMiwgMjEzLCAyMTQsIDIxNSwgMjEwLCAzNCwgMzQsIDM0LCAzNCwgMjEwLCAyMTAsIDIxMCwgMjEwLCAKKyAgICAyMTAsIDIxMSwgMjExLCAyMTIsIDIxMywgMjE0LCAwLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgCisgICAgNTEsIDUxLCA1MSwgMCwgMCwgMCwgODUsIDg1LCA4NSwgODUsIDg1LCA4NSwgODUsIDg1LCAyMTYsIDIxNywgODUsIDg1LCAKKyAgICAyMywgODUsIDg1LCA4NSwgODUsIDg1LCA4NSwgODUsIDg1LCA4NSwgODUsIDg1LCA4NSwgODUsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDgxLCA4MSwgMTc1LCAxNzUsIDgxLCA4MSwgCisgICAgODEsIDgxLCAxNzUsIDE3NSwgMTc1LCA4MSwgODEsIDgyLCA4MiwgODIsIDgyLCA4MSwgODIsIDgyLCA4MiwgMTc1LCAxNzUsIAorICAgIDgxLCA4NiwgODEsIDE3NSwgMTc1LCA4NiwgODYsIDg2LCA4NiwgODEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDIxOCwgMjE4LCA0OSwgMjE5LCAyNiwgMjE5LCAyMTgsIDQ5LCAyNiwgMjE5LCAzNSwgNDksIDQ5LCAKKyAgICA0OSwgMzUsIDM1LCA0OSwgNDksIDQ5LCA0NiwgMjYsIDQ5LCAyMTksIDI2LCA3OCwgNDksIDQ5LCA0OSwgNDksIDQ5LCAyNiwgCisgICAgMjYsIDIxOCwgMjE5LCAyMTksIDI2LCA0OSwgMjYsIDIyMCwgMjYsIDQ5LCAyNiwgMTgzLCAyMjAsIDQ5LCA0OSwgMjIxLCAKKyAgICAzNSwgNDksIDQ5LCA0NCwgNDksIDM1LCAxNTYsIDE1NiwgMTU2LCAxNTYsIDM1LCAyNiwgMjE4LCAzNSwgMzUsIDQ5LCA0OSwgCisgICAgMjIyLCA3OCwgNzgsIDc4LCA3OCwgNDksIDM1LCAzNSwgMzUsIDM1LCAyNiwgNzgsIDI2LCAyNiwgNDcsIDgwLCAyMjMsIAorICAgIDIyMywgMjIzLCAzNywgMzcsIDIyMywgMjIzLCAyMjMsIDIyMywgMjIzLCAyMjMsIDM3LCAzNywgMzcsIDM3LCAyMjMsIDIyNCwgCisgICAgMjI0LCAyMjQsIDIyNCwgMjI0LCAyMjQsIDIyNCwgMjI0LCAyMjQsIDIyNCwgMjI0LCAyMjQsIDIyNSwgMjI1LCAyMjUsIAorICAgIDIyNSwgMjI0LCAyMjQsIDIyNCwgMjI0LCAyMjQsIDIyNCwgMjI0LCAyMjQsIDIyNCwgMjI0LCAyMjUsIDIyNSwgMjI1LCAKKyAgICAyMjUsIDIyNSwgMjI1LCAxNzMsIDE3MywgMTczLCA0NCwgNDcsIDE3MywgMTczLCAxNzMsIDE3MywgMzcsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAyMjYsIDIyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDc4LCAyNiwgMjYsIDc4LCAyNiwgMjYsIDc4LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAzMCwgMzAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyMjcsIDIyNiwgMjI2LCAyNiwgMjYsIDQwLCAyNiwgNDAsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDMwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCA3OCwgNzgsIDc4LCA3OCwgNzgsIAorICAgIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA0MCwgMjI4LCAyMjksIDIyOSwgMjMwLCA3OCwgNzgsIDQwLCAyMjksIDIzMCwgCisgICAgMjI4LCAyMjksIDIzMCwgMjI4LCA3OCwgNDAsIDc4LCAyMjksIDIzMSwgMjMyLCA3OCwgMjI5LCAyMjgsIDc4LCA3OCwgNzgsIAorICAgIDIyOSwgMjI4LCAyMjgsIDIyOSwgNDAsIDIyOSwgMjI5LCAyMjgsIDIyOCwgNDAsIDIzMCwgNDAsIDIzMCwgNDAsIDQwLCA0MCwgCisgICAgNDAsIDIyOSwgMjMzLCAyMjIsIDIyOSwgMjIyLCAyMjIsIDIyOCwgMjI4LCAyMjgsIDQwLCA0MCwgNDAsIDQwLCA3OCwgMjI4LCAKKyAgICA3OCwgMjI4LCAyMjksIDIyOSwgMjI4LCAyMjgsIDIyOCwgMjMwLCAyMjgsIDIyOCwgMjMwLCAyMjgsIDIyOCwgMjMwLCAyMjksIAorICAgIDIzMCwgMjI4LCAyMjgsIDIyOSwgNzgsIDc4LCA3OCwgNzgsIDc4LCAyMjksIDIyOCwgMjI4LCAyMjgsIDc4LCA3OCwgNzgsIAorICAgIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDIyOCwgMjM0LCA0MCwgMjMwLCA3OCwgMjI5LCAyMjksIDIyOSwgMjI5LCAyMjgsIAorICAgIDIyOCwgMjI5LCAyMjksIDc4LCAyMjYsIDIzNCwgMjM0LCAyMzAsIDIzMCwgMjI4LCAyMjgsIDIzMCwgMjMwLCAyMjgsIDIyOCwgCisgICAgMjMwLCAyMzAsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIzMCwgMjMwLCAyMjksIDIyOSwgMjMwLCAyMzAsIAorICAgIDIyOSwgMjI5LCAyMzAsIDIzMCwgMjI4LCAyMjgsIDIyOCwgNzgsIDc4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDc4LCA3OCwgCisgICAgNDAsIDc4LCA3OCwgMjI4LCA0MCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAyMjgsIDIyOCwgNzgsIDQwLCAKKyAgICAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMzAsIDIzMCwgMjMwLCAyMzAsIDIyOCwgMjI4LCAyMjgsIDIyOCwgCisgICAgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgMjI4LCAyMjksIDc4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgNzgsIDc4LCA3OCwgNzgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCA3OCwgNzgsIDIyOCwgMjI4LCA3OCwgNzgsIAorICAgIDc4LCA3OCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMzAsIDIzMCwgMjMwLCAKKyAgICAyMzAsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIzMCwgMjMwLCAyMzAsIDIzMCwgNzgsIDc4LCAyMjgsIDIyOCwgCisgICAgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAzMCwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDIyOCwgMjI4LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjM1LCAyMzYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCiAgICAgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCi0gICAgODAsIDgwLCA4MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTc4LCA4NCwgODAsIDg0LCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgCi0gICAgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgCi0gICAgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgCi0gICAgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgCi0gICAgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgCi0gICAgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgCi0gICAgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgCi0gICAgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgCi0gICAgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCA0MywgNDMsIDQzLCA0MywgMzUsIDE3OSwgNDYsIAotICAgIDQ2LCA0NCwgNDYsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIAotICAgIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIAotICAgIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIAotICAgIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIAotICAgIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIDQzLCAzOCwgNDMsIDM4LCA0MywgMzgsIAotICAgIDQzLCAzOCwgNDMsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgMzgsIAotICAgIDM4LCAzOCwgMzgsIDM4LCAzOCwgMzgsIDM4LCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCAwLCAwLCAzOCwgMzgsIDM4LCAzOCwgCi0gICAgMzgsIDM4LCAwLCAwLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDM4LCAzOCwgMzgsIDM4LCAzOCwgMzgsIDM4LCAKLSAgICAzOCwgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCAzOCwgMzgsIDM4LCAzOCwgMzgsIDM4LCAzOCwgMzgsIDQzLCAKLSAgICA0MywgNDMsIDQzLCA0MywgNDMsIDAsIDAsIDM4LCAzOCwgMzgsIDM4LCAzOCwgMzgsIDAsIDAsIDQzLCA0MywgNDMsIDQzLCAKLSAgICA0MywgNDMsIDQzLCA0MywgMCwgMzgsIDAsIDM4LCAwLCAzOCwgMCwgMzgsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCAKLSAgICA0MywgMzgsIDM4LCAzOCwgMzgsIDM4LCAzOCwgMzgsIDM4LCA0MywgMTgwLCA0MywgMTgwLCA0MywgMTgwLCA0MywgMTgwLCAKLSAgICA0MywgMTgwLCA0MywgMTgwLCA0MywgMTgwLCAwLCAwLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDE4MSwgCi0gICAgMTgxLCAxODEsIDE4MSwgMTgxLCAxODEsIDE4MSwgMTgxLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDE4MSwgCi0gICAgMTgxLCAxODEsIDE4MSwgMTgxLCAxODEsIDE4MSwgMTgxLCA0MywgNDMsIDQzLCA0MywgNDMsIDQzLCA0MywgNDMsIDE4MSwgCi0gICAgMTgxLCAxODEsIDE4MSwgMTgxLCAxODEsIDE4MSwgMTgxLCA0MywgNDMsIDQzLCA0MywgNDMsIDAsIDQzLCA0MywgMzgsIDM4LCAKLSAgICAzOCwgMTgyLCAxODEsIDU3LCAxODAsIDU3LCA1NywgNzUsIDQzLCA0MywgNDMsIDAsIDQzLCA0MywgMzgsIDE4MiwgMzgsIAotICAgIDE4MiwgMTgxLCA3NSwgNzUsIDc1LCA0MywgNDMsIDQzLCAxODAsIDAsIDAsIDQzLCA0MywgMzgsIDM4LCAzOCwgMTgyLCAwLCAKLSAgICA3NSwgNzUsIDc1LCA0MywgNDMsIDQzLCAxODAsIDQzLCA0MywgNDMsIDQzLCAzOCwgMzgsIDM4LCAxODIsIDM4LCA3NSwgCi0gICAgMTgzLCAxODMsIDAsIDAsIDQzLCA0MywgNDMsIDAsIDQzLCA0MywgMzgsIDE4MiwgMzgsIDE4MiwgMTgxLCAxODMsIDU3LCAwLCAKLSAgICAxODQsIDE4NCwgMTg1LCAxODUsIDE4NSwgMTg1LCAxODUsIDE4NSwgMTg1LCAxODUsIDE4NSwgMTg2LCAxODYsIDE4NiwgCi0gICAgMTcyLCAxODcsIDE4OCwgMTg5LCA4MywgMTg4LCAxODgsIDE4OCwgMjIsIDE5MCwgMTkxLCAxOTIsIDE5MywgMTk0LCAxOTEsIAotICAgIDE5MiwgMTkzLCAxOTQsIDIyLCAyMiwgMjIsIDEzNSwgMTk1LCAxOTUsIDE5NSwgMjIsIDE5NiwgMTk3LCAxOTgsIDE5OSwgCi0gICAgMjAwLCAyMDEsIDIwMiwgMjEsIDIwMywgMTA4LCAyMDMsIDIwNCwgMjA1LCAyMiwgMTkwLCAxOTAsIDEzNSwgMjksIDM2LCAKLSAgICAyMiwgMTkwLCAxMzUsIDE5NSwgMjA2LCAyMDYsIDEzNSwgMTM1LCAxMzUsIDIwNywgMTYxLCAxNjIsIDE5MCwgMTkwLCAxOTAsIAotICAgIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCA3NywgMTM1LCAyMDYsIDEzNSwgMTM1LCAxOTAsIDEzNSwgCi0gICAgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTg1LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMjA4LCA1MCwgMCwgMCwgMzQsIDIwOCwgMjA4LCAyMDgsIDIwOCwgCi0gICAgMjA4LCAyMDksIDIwOSwgMjEwLCAyMTEsIDIxMiwgMjEzLCAyMDgsIDM0LCAzNCwgMzQsIDM0LCAyMDgsIDIwOCwgMjA4LCAKLSAgICAyMDgsIDIwOCwgMjA5LCAyMDksIDIxMCwgMjExLCAyMTIsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAxNDUsIDE0NSwgMTQ1LCAxNDUsIDE0NSwgMTQ1LCAxNDUsIDE0NSwgMjE0LCAKLSAgICAyMTUsIDE0NSwgMTQ1LCAyMywgMTQ1LCAxNDUsIDE0NSwgMTQ1LCAxNDUsIDE0NSwgMTQ1LCAxNDUsIDE0NSwgMTQ1LCAxNDUsIAotICAgIDE0NSwgMTQ1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA4MCwgODAsIDE3NCwgMTc0LCA4MCwgODAsIDgwLCA4MCwgMTc0LCAxNzQsIDE3NCwgODAsIDgwLCA4MSwgODEsIDgxLCAKLSAgICA4MSwgODAsIDgxLCA4MSwgODEsIDE3NCwgMTc0LCA4MCwgODQsIDgwLCAxNzQsIDE3NCwgODQsIDg0LCA4NCwgODQsIDgwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMTYsIDIxNiwgNDgsIDIxNywgMjcsIDIxNywgCi0gICAgMjE2LCA0OCwgMjcsIDIxNywgMzUsIDQ4LCA0OCwgNDgsIDM1LCAzNSwgNDgsIDQ4LCA0OCwgMjgsIDI3LCA0OCwgMjE3LCAKLSAgICAyNywgNzcsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMjcsIDI3LCAyMTYsIDIxNywgMjE3LCAyNywgNDgsIDI3LCAyMTgsIDI3LCAKLSAgICA0OCwgMjcsIDE4MiwgMjE4LCA0OCwgNDgsIDIxOSwgMzUsIDQ4LCA0OCwgNDQsIDQ4LCAzNSwgMTU0LCAxNTQsIDE1NCwgCi0gICAgMTU0LCAzNSwgMjcsIDIxNiwgMzUsIDM1LCA0OCwgNDgsIDIyMCwgNzcsIDc3LCA3NywgNzcsIDQ4LCAzNSwgMzUsIDM1LCAKLSAgICAzNSwgMjcsIDc3LCAyNywgMjcsIDQ2LCA3OSwgMjIxLCAyMjEsIDIyMSwgMzcsIDM3LCAyMjEsIDIyMSwgMjIxLCAyMjEsIAotICAgIDIyMSwgMjIxLCAzNywgMzcsIDM3LCAzNywgMjIxLCAyMjIsIDIyMiwgMjIyLCAyMjIsIDIyMiwgMjIyLCAyMjIsIDIyMiwgCi0gICAgMjIyLCAyMjIsIDIyMiwgMjIyLCAyMjMsIDIyMywgMjIzLCAyMjMsIDIyMiwgMjIyLCAyMjIsIDIyMiwgMjIyLCAyMjIsIAotICAgIDIyMiwgMjIyLCAyMjIsIDIyMiwgMjIzLCAyMjMsIDIyMywgMjIzLCAyMjMsIDIyMywgMTcxLCAxNzEsIDE3MSwgNDQsIDQ2LCAKLSAgICAxNzEsIDE3MSwgMTcxLCAxNzEsIDM3LCAwLCAwLCAwLCAwLCAwLCAwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDI1LCAyNSwgMjUsIAotICAgIDI1LCAyNSwgMjI0LCAyMjQsIDI3LCAyNywgMjcsIDI3LCA3NywgMjcsIDI3LCA3NywgMjcsIDI3LCA3NywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDIyNCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjUsIDI1LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjI1LCAKLSAgICAyMjQsIDIyNCwgMjcsIDI3LCA0MCwgMjcsIDQwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNSwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNDAsIDIyNiwgMjI3LCAKLSAgICAyMjcsIDIyOCwgNzcsIDc3LCA0MCwgMjI3LCAyMjgsIDIyNiwgMjI3LCAyMjgsIDIyNiwgNzcsIDQwLCA3NywgMjI3LCAyMjksIAotICAgIDIzMCwgNzcsIDIyNywgMjI2LCA3NywgNzcsIDc3LCAyMjcsIDIyNiwgMjI2LCAyMjcsIDQwLCAyMjcsIDIyNywgMjI2LCAKLSAgICAyMjYsIDQwLCAyMjgsIDQwLCAyMjgsIDQwLCA0MCwgNDAsIDQwLCAyMjcsIDIzMSwgMjIwLCAyMjcsIDIyMCwgMjIwLCAyMjYsIAotICAgIDIyNiwgMjI2LCA0MCwgNDAsIDQwLCA0MCwgNzcsIDIyNiwgNzcsIDIyNiwgMjI3LCAyMjcsIDIyNiwgMjI2LCAyMjYsIDIyOCwgCi0gICAgMjI2LCAyMjYsIDIyOCwgMjI2LCAyMjYsIDIyOCwgMjI3LCAyMjgsIDIyNiwgMjI2LCAyMjcsIDc3LCA3NywgNzcsIDc3LCAKLSAgICA3NywgMjI3LCAyMjYsIDIyNiwgMjI2LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCAyMjYsIDIzMiwgNDAsIAotICAgIDIyOCwgNzcsIDIyNywgMjI3LCAyMjcsIDIyNywgMjI2LCAyMjYsIDIyNywgMjI3LCA3NywgMjI0LCAyMzIsIDIzMiwgMjI4LCAKLSAgICAyMjgsIDIyNiwgMjI2LCAyMjgsIDIyOCwgMjI2LCAyMjYsIDIyOCwgMjI4LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgCi0gICAgMjI2LCAyMjgsIDIyOCwgMjI3LCAyMjcsIDIyOCwgMjI4LCAyMjcsIDIyNywgMjI4LCAyMjgsIDIyNiwgMjI2LCAyMjYsIDc3LCAKLSAgICA3NywgMjI2LCAyMjYsIDIyNiwgMjI2LCA3NywgNzcsIDQwLCA3NywgNzcsIDIyNiwgNDAsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDc3LCA3NywgMjI2LCAyMjYsIDc3LCA0MCwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI4LCAyMjgsIAotICAgIDIyOCwgMjI4LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDIyNiwgMjI3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCAyMjYsIDIyNiwgMjI2LCAyMjYsIAotICAgIDIyNiwgNzcsIDc3LCAyMjYsIDIyNiwgNzcsIDc3LCA3NywgNzcsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgCi0gICAgMjI2LCAyMjYsIDIyNiwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjgsIAotICAgIDIyOCwgMjI4LCAyMjgsIDc3LCA3NywgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAKLSAgICAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDIyNiwgMjI2LCAKLSAgICAyMjYsIDIyNiwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyMjYsIDIyNiwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDIzMywgMjM0LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIAotICAgIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIAotICAgIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIAotICAgIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIAotICAgIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDI3LCA3NywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgNzksIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIAotICAgIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCA3NywgNzcsIDc3LCA3NywgNzcsIAotICAgIDc3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgCisgICAgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCisgICAgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCisgICAgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgMjYsIDc4LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCA4MCwgMjYsIDI2LCAyNiwgMjYsIDI2LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgCisgICAgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzcsIDM3LCAzNywgMzcsIDM3LCAKICAgICAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAKLSAgICAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgCi0gICAgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIAotICAgIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAKLSAgICAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgCi0gICAgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIAotICAgIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAKLSAgICAyMzUsIDIzNSwgMjIxLCAyMzYsIDIzNiwgMjM2LCAyMzYsIDIzNiwgMjM2LCAyMzYsIDIzNiwgMjM2LCAyMzYsIDIzNiwgCi0gICAgMjM2LCAyMzYsIDIzNiwgMjM2LCAyMzYsIDIzNiwgMjM2LCAyMzYsIDIzNiwgMjM2LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNywgMjcsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjUsIDI1LCAyNywgMjUsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjUsIDI1LCAyNywgMjcsIDI1LCA0MCwgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI1LCAyNSwgMjcsIDI3LCAyNSwgNDAsIDI3LCAyNywgMjcsIDI3LCAyNSwgMjUsIDI1LCAyNywgMjcsIDI1LCAKLSAgICAyNywgMjcsIDI1LCAyNSwgMjUsIDI1LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjUsIDI1LCAyNSwgMjUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI1LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNSwgMjUsIDI3LCAyNywgMjUsIDI3LCAyNywgMjcsIDI3LCAyNSwgMjUsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNSwgMjUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI1LCAyNywgMjUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI1LCAyNywgMjUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjUsIDI1LCAyNywgMjUsIDI1LCAyNSwgMjcsIDI1LCAyNSwgMjUsIDI1LCAyNywgMjUsIDI1LCAKLSAgICAyNywgNDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNSwgMjUsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDc5LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI1LCAyNSwgMjcsIDI3LCAyNywgMjcsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNywgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI3LCAyNSwgMjcsIDI3LCAyNywgMjcsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKLSAgICAyNSwgMjUsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI1LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjUsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAxNjEsIDE2MiwgCi0gICAgMTYxLCAxNjIsIDE2MSwgMTYyLCAxNjEsIDE2MiwgMTYxLCAxNjIsIDE2MSwgMTYyLCAxNjEsIDE2MiwgMjM2LCAyMzYsIAotICAgIDIzNiwgMjM2LCAyMzYsIDIzNiwgMjM2LCAyMzYsIDIzNiwgMjM2LCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAKLSAgICAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyMjYsIDc3LCA3NywgMjI2LCAyMjYsIDE2MSwgMTYyLCA3NywgMjI2LCAKLSAgICAyMjYsIDc3LCAwLCAyMjYsIDAsIDc3LCA3NywgNzcsIDc3LCA3NywgMjI2LCAyMjYsIDIyNiwgMjI2LCA3NywgNzcsIDc3LCAKLSAgICA3NywgNzcsIDIyNiwgMjI2LCAyMjYsIDc3LCA3NywgNzcsIDIyNiwgMjI2LCAyMjYsIDIyNiwgOSwgMTAsIDksIDEwLCA5LCAKLSAgICAxMCwgOSwgMTAsIDE2MSwgMTYyLCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDc3LCA3NywgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDE2MSwgMTYyLCA5LCAxMCwgMTYxLCAxNjIsIDE2MSwgCi0gICAgMTYyLCAxNjEsIDE2MiwgMTYxLCAxNjIsIDE2MSwgMTYyLCAxNjEsIDE2MiwgMTYxLCAxNjIsIDE2MSwgMTYyLCAxNjEsIAotICAgIDE2MiwgNzcsIDc3LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAKLSAgICAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgCi0gICAgNzcsIDIyNiwgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDc3LCAKLSAgICA3NywgNzcsIDIyNiwgNzcsIDc3LCA3NywgNzcsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCA3NywgMjI2LCAyMjYsIDc3LCAKLSAgICA3NywgMTYxLCAxNjIsIDE2MSwgMTYyLCAyMjYsIDc3LCA3NywgNzcsIDc3LCAyMjYsIDc3LCAyMjYsIDIyNiwgMjI2LCA3NywgCi0gICAgNzcsIDIyNiwgMjI2LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgMjI2LCAyMjYsIDIyNiwgMjI2LCAKLSAgICAyMjYsIDIyNiwgNzcsIDc3LCAxNjEsIDE2MiwgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCAKLSAgICA3NywgMjI2LCAyMjYsIDIyMCwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIAotICAgIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCA3NywgMjI2LCAyMjYsIDIyNiwgMjI2LCA3NywgNzcsIDIyNiwgNzcsIDIyNiwgCi0gICAgNzcsIDc3LCAyMjYsIDc3LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDc3LCA3NywgNzcsIDc3LCA3NywgMjI2LCAyMjYsIDc3LCAKLSAgICA3NywgNzcsIDc3LCA3NywgNzcsIDIyNiwgMjI2LCAyMjYsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIAotICAgIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDIyNiwgMjI2LCA3NywgCi0gICAgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDIyNiwgMjI2LCA3NywgNzcsIDc3LCA3NywgMjI2LCAKLSAgICAyMjYsIDIyNiwgMjI2LCA3NywgMjI2LCAyMjYsIDc3LCA3NywgMjI2LCAyMjAsIDIxMCwgMjEwLCA3NywgNzcsIDIyNiwgCi0gICAgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIAotICAgIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAKLSAgICAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgNzcsIAotICAgIDc3LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgNzcsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAKLSAgICAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgCi0gICAgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIAotICAgIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCAyMjYsIDIyNiwgNzcsIDc3LCA3NywgNzcsIDc3LCAyMzcsIDc3LCAyMjYsIDc3LCAKLSAgICA3NywgNzcsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCA3NywgNzcsIDc3LCA3NywgNzcsIDIyNiwgMjI2LCAyMjYsIDc3LCAKLSAgICA3NywgNzcsIDc3LCAyMjYsIDc3LCA3NywgNzcsIDIyNiwgMjI2LCAyMjYsIDIyNiwgMjI2LCA3NywgMjI2LCA3NywgNzcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIAotICAgIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDc3LCA3NywgNzcsIDI3LCAyNywgNzcsIAotICAgIDc3LCA3NywgNzcsIDc3LCA3NywgMCwgMCwgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgCi0gICAgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgCi0gICAgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgCi0gICAgNDQsIDQ0LCA0NCwgMCwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAwLCA0NCwgNDYsIAotICAgIDQ0LCA0NCwgNDQsIDQ2LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ0LCA0NCwgNDQsIDQ2LCA0NCwgNDYsIAotICAgIDQ2LCA0NCwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgMzUsIDUwLCA0NCwgNDQsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIAotICAgIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIAotICAgIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIAotICAgIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIAotICAgIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIAotICAgIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIAotICAgIDQ0LCA0NiwgNDQsIDQ2LCA0NiwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgNDQsIDQ2LCA0NCwgNDYsIDgwLCA4MCwgODAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTUxLCAxMzUsIDEzNSwgNDYsIDQ2LCA0NiwgNDYsIAotICAgIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIAotICAgIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgODIsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzOSwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM3LCAzNywgMzcsIDM0LCAKKyAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKKyAgICAzNCwgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIAorICAgIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAKKyAgICAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgCisgICAgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIAorICAgIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAKKyAgICAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjIzLCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgCisgICAgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIAorICAgIDIzOCwgMjM4LCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgCisgICAgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgCisgICAgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgCisgICAgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgCisgICAgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMjYsIDI2LCAyNiwgMjYsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgCisgICAgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgCisgICAgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgCisgICAgMzAsIDMwLCAyNiwgMjYsIDMwLCAzMCwgMzAsIDMwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMzAsIDMwLCAyNiwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMzAsIDMwLCAyNiwgMjYsIDMwLCA0MCwgMjYsIDI2LCAyNiwgMjYsIDMwLCAzMCwgMjYsIDI2LCAzMCwgNDAsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAzMCwgMzAsIDMwLCAyNiwgMjYsIDMwLCAyNiwgMjYsIDMwLCAzMCwgMzAsIDMwLCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMzAsIDMwLCAzMCwgMzAsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDMwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDc4LCA3OCwgCisgICAgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgMjYsIDI2LCAyNiwgMjYsIDI2LCAzMCwgMzAsIDI2LCAyNiwgMzAsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAzMCwgMzAsIDI2LCAyNiwgMjYsIDI2LCAzMCwgMzAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDMwLCAyNiwgCisgICAgMzAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDMwLCAyNiwgCisgICAgMzAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMzAsIDMwLCAyNiwgMzAsIDMwLCAzMCwgCisgICAgMjYsIDMwLCAzMCwgMzAsIDMwLCAyNiwgMzAsIDMwLCAyNiwgNDAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAzMCwgMzAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDgwLCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDMwLCAzMCwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAyNiwgMzAsIDMwLCAzMCwgCisgICAgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDI2LCAzMCwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgCisgICAgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDMwLCAzMCwgMzAsIDAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDMwLCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMzAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAxNjMsIDE2NCwgMTYzLCAxNjQsIDE2MywgMTY0LCAxNjMsIDE2NCwgMTYzLCAxNjQsIAorICAgIDE2MywgMTY0LCAxNjMsIDE2NCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAKKyAgICAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgCisgICAgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyMjgsIDc4LCA3OCwgCisgICAgMjI4LCAyMjgsIDE2MywgMTY0LCA3OCwgMjI4LCAyMjgsIDc4LCAyMjgsIDIyOCwgMjI4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIAorICAgIDIyOCwgMjI4LCAyMjgsIDIyOCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAyMjgsIDIyOCwgMjI4LCA3OCwgNzgsIDc4LCAyMjgsIAorICAgIDIyOCwgMjI4LCAyMjgsIDksIDEwLCA5LCAxMCwgOSwgMTAsIDksIDEwLCAxNjMsIDE2NCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKICAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKLSAgICA4MCwgODAsIDgwLCA4MCwgMTM1LCAxMzUsIDI5LCAzNiwgMjksIDM2LCAxMzUsIDEzNSwgMTM1LCAyOSwgMzYsIDEzNSwgMjksIAotICAgIDM2LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCA4MywgMTM1LCAxMzUsIDgzLCAxMzUsIAotICAgIDI5LCAzNiwgMTM1LCAxMzUsIDI5LCAzNiwgMTYxLCAxNjIsIDE2MSwgMTYyLCAxNjEsIDE2MiwgMTYxLCAxNjIsIDEzNSwgCi0gICAgMTM1LCAxMzUsIDEzNSwgMTM1LCA1MSwgMTM1LCAxMzUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIzOCwgMjM4LCAyMzgsIDIzOCwgCi0gICAgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIAotICAgIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAwLCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOSwgMjM4LCAKLSAgICAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgCi0gICAgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIAotICAgIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAKLSAgICAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgCi0gICAgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIAotICAgIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOSwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgCi0gICAgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIAotICAgIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAKLSAgICAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgCi0gICAgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIAotICAgIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAKLSAgICAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgCi0gICAgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIAotICAgIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAKLSAgICAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgCi0gICAgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIAotICAgIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAKLSAgICAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgCi0gICAgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIAotICAgIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAKLSAgICAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAyMzksIDIzOSwgMjM5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMzgsIDIzOCwgMjM4LCAyMzgsIAotICAgIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAwLCAwLCAwLCAwLCAyNDAsIDI0MSwgMjQxLCAyNDEsIAotICAgIDIzOCwgMjQyLCAxNjgsIDI0MywgMjQ0LCAyNDUsIDI0NCwgMjQ1LCAyNDQsIDI0NSwgMjQ0LCAyNDUsIDI0NCwgMjQ1LCAKLSAgICAyMzgsIDIzOCwgMjQ0LCAyNDUsIDI0NCwgMjQ1LCAyNDQsIDI0NSwgMjQ0LCAyNDUsIDI0NiwgMjQ3LCAyNDgsIDI0OCwgCi0gICAgMjM4LCAyNDMsIDI0MywgMjQzLCAyNDMsIDI0MywgMjQzLCAyNDMsIDI0MywgMjQzLCAyNDksIDI1MCwgMjUxLCAyNTIsIAotICAgIDI1MywgMjUzLCAyNDYsIDI0MiwgMjQyLCAyNDIsIDI0MiwgMjQyLCAyMzksIDIzOCwgMjU0LCAyNTQsIDI1NCwgMjQyLCAKLSAgICAxNjgsIDI0MSwgMjM4LCAyNywgMCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDI1NSwgMTY4LCAyNTUsIDE2OCwgMjU1LCAxNjgsIDI1NSwgMTY4LCAyNTUsIDE2OCwgMjU1LCAxNjgsIDI1NSwgCi0gICAgMTY4LCAyNTUsIDE2OCwgMjU1LCAxNjgsIDI1NSwgMTY4LCAyNTUsIDE2OCwgMjU1LCAxNjgsIDE2OCwgMjU1LCAxNjgsIAotICAgIDI1NSwgMTY4LCAyNTUsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDI1NSwgMjU1LCAxNjgsIDI1NSwgMjU1LCAKLSAgICAxNjgsIDI1NSwgMjU1LCAxNjgsIDI1NSwgMjU1LCAxNjgsIDI1NSwgMjU1LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDI1NSwgMTY4LCAxNjgsIDAsIDAsIDI1NiwgMjU2LCAyNTcsIDI1NywgMjQyLCAyNTgsIDI1OSwgCi0gICAgMjQ2LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMjU1LCAxNjgsIAotICAgIDI1NSwgMTY4LCAyNTUsIDE2OCwgMjU1LCAxNjgsIDI1NSwgMTY4LCAyNTUsIDE2OCwgMjU1LCAxNjgsIDI1NSwgMTY4LCAKLSAgICAyNTUsIDE2OCwgMjU1LCAxNjgsIDI1NSwgMTY4LCAyNTUsIDE2OCwgMTY4LCAyNTUsIDE2OCwgMjU1LCAxNjgsIDI1NSwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMjU1LCAyNTUsIDE2OCwgMjU1LCAyNTUsIDE2OCwgMjU1LCAyNTUsIAotICAgIDE2OCwgMjU1LCAyNTUsIDE2OCwgMjU1LCAyNTUsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMjU1LCAxNjgsIDE2OCwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNDEsIDI0MiwgMjQyLCAyNTgsIDI1OSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDAsIDAsIDAsIAotICAgIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAKLSAgICAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgCi0gICAgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIAotICAgIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAKLSAgICAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgCi0gICAgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIAotICAgIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMCwgMjYwLCAyNjAsIDI2MSwgMjYxLCAKLSAgICAyNjEsIDI2MSwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgCi0gICAgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIAotICAgIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyMzksIDIzOSwgMCwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgCi0gICAgMjYxLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjM5LCAyNjQsIDI2NCwgCi0gICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDIzOSwgCi0gICAgMjM5LCAyMzksIDI2MCwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgCi0gICAgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjQsIDI2NCwgMjY0LCAyNjQsIAotICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyMzksIDIzOSwgMjM5LCAyMzksIDI2MiwgCi0gICAgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgCi0gICAgMjYyLCAyNjIsIDI2MiwgMjYyLCAwLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgCi0gICAgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgCi0gICAgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjM5LCAyMzksIDIzOSwgCi0gICAgMjM5LCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgCi0gICAgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgCi0gICAgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyMzksIDIzOSwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgCi0gICAgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyMzksIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAyNDIsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAwLCAwLCAwLCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAKLSAgICAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgCi0gICAgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIAotICAgIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAyMzgsIDIzOCwgMjM4LCAKLSAgICAyMzgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA1MiwgNTIsIDUyLCA1MiwgNTIsIDUyLCAKLSAgICA4MiwgODIsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDUyLCAxMzUsIDEzNSwgCi0gICAgMTM1LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCA0NywgNDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgCi0gICAgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgCi0gICAgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgCi0gICAgNDQsIDQ2LCA0NywgODAsIDgxLCA4MSwgODEsIDEzNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODAsIDgwLCAxMzUsIDUxLCAKLSAgICA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgCi0gICAgMTcxLCAxNzEsIDE3MSwgMTcxLCA4MCwgODAsIDgyLCA4MiwgODIsIDgyLCA4MiwgODIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCA1MywgCi0gICAgNTMsIDUzLCA1MywgNTMsIDUzLCA1MywgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTEsIDUxLCA1MSwgNTMsIDUzLCA0NCwgCi0gICAgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ2LCA0NiwgNDQsIDQ2LCA0NCwgCi0gICAgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgCi0gICAgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgCi0gICAgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgCi0gICAgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA1MCwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgCi0gICAgNDQsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgNDYsIDQ0LCA0NiwgNDQsIDQ2LCA1MSwgMjY1LCAyNjUsIDQ0LCA0NiwgNDQsIDQ2LCAKLSAgICAwLCA0NCwgNDYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0LCA0NiwgNDQsIDQ2LCA0NCwgCi0gICAgNDYsIDQ0LCA0NiwgNDQsIDQ2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NiwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDEzMiwgNDcsIDQ3LCA0NywgMTM5LCA0NywgNDcsIDQ3LCA0NywgMTMyLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDEzNiwgMTM2LCAKLSAgICAxMzIsIDEzMiwgMTM2LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMCwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgCi0gICAgNzksIDc5LCAxNDUsIDIxOSwgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTM2LCAxMzYsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMTM2LCAxMzYsIAotICAgIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM2LCAKLSAgICAxMzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDgyLCA4MiwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgCi0gICAgMTQxLCAxNDEsIDE0MSwgMTQxLCAwLCAwLCAwLCAwLCAwLCAwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKLSAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA4MiwgODIsIDgyLCAKLSAgICA0NywgMCwgMCwgMCwgMCwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDg0LCA4NCwgODQsIDgyLCAKLSAgICA4MiwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIAotICAgIDEzMiwgMTM2LCAxNzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDgyLCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMCwgMCwgMCwgMTMyLCAxMzIsIAotICAgIDEzMiwgMTM2LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDE0MiwgMTM2LCAxMzYsIDEzMiwgCi0gICAgMTMyLCAxMzIsIDEzMiwgMTM2LCAxMzYsIDEzMiwgMTM2LCAxMzYsIDEzNiwgMTczLCA4MiwgODIsIDgyLCA4MiwgODIsIDgyLCAKLSAgICA4MiwgODIsIDgyLCA4MiwgODIsIDgyLCA4MiwgMCwgNTIsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgCi0gICAgMTQxLCAxNDEsIDE0MSwgMCwgMCwgMCwgMCwgODIsIDgyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzNiwgMTM2LCAxMzIsIDEzMiwgMTM2LCAxMzYsIDEzMiwgMTMyLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIDQ3LCAxMzIsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgMTMyLCAxMzYsIDAsIDAsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMCwgCi0gICAgMCwgODIsIDgyLCA4MiwgODIsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA1MiwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNzksIDc5LCA3OSwgNDcsIDEzNiwgMCwgMCwgMCwgMCwgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgODAsIDQ3LCA4MCwgODAsIDg0LCA0NywgCi0gICAgNDcsIDgwLCA4MCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA4MCwgODAsIDQ3LCA4MCwgNDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3LCA0NywgNTIsIDgyLCA4MiwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICAxNjMsIDE2NCwgOSwgMTAsIDE2MywgMTY0LCAxNjMsIDE2NCwgMTYzLCAxNjQsIDE2MywgMTY0LCAxNjMsIDE2NCwgMTYzLCAKKyAgICAxNjQsIDE2MywgMTY0LCAxNjMsIDE2NCwgMTYzLCAxNjQsIDc4LCA3OCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgCisgICAgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIAorICAgIDIyOCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAyMjgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCA3OCwgNzgsIDc4LCAyMjgsIDc4LCA3OCwgNzgsIDc4LCAyMjgsIDIyOCwgCisgICAgMjI4LCAyMjgsIDIyOCwgNzgsIDIyOCwgMjI4LCA3OCwgNzgsIDE2MywgMTY0LCAxNjMsIDE2NCwgMjI4LCA3OCwgNzgsIDc4LCAKKyAgICA3OCwgMjI4LCA3OCwgMjI4LCAyMjgsIDIyOCwgNzgsIDc4LCAyMjgsIDIyOCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIAorICAgIDc4LCA3OCwgNzgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDc4LCA3OCwgMTYzLCAxNjQsIDc4LCA3OCwgNzgsIAorICAgIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDIyOCwgMjI4LCAyMjIsIDIyOCwgMjI4LCAyMjgsIDIyOCwgCisgICAgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgNzgsIDIyOCwgMjI4LCAKKyAgICAyMjgsIDIyOCwgNzgsIDc4LCAyMjgsIDc4LCAyMjgsIDc4LCA3OCwgMjI4LCA3OCwgMjI4LCAyMjgsIDIyOCwgMjI4LCA3OCwgCisgICAgNzgsIDc4LCA3OCwgNzgsIDIyOCwgMjI4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAyMjgsIDIyOCwgMjI4LCA3OCwgNzgsIAorICAgIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIAorICAgIDc4LCA3OCwgNzgsIDc4LCAyMjgsIDIyOCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCAKKyAgICAyMjgsIDIyOCwgNzgsIDc4LCA3OCwgNzgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgNzgsIDIyOCwgMjI4LCA3OCwgNzgsIDIyOCwgCisgICAgMjIyLCAyMTIsIDIxMiwgNzgsIDc4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIAorICAgIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAKKyAgICAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgCisgICAgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDc4LCA3OCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIAorICAgIDc4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgCisgICAgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIAorICAgIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDc4LCA3OCwgNzgsIAorICAgIDc4LCA3OCwgMjM5LCA3OCwgMjI4LCA3OCwgNzgsIDc4LCAyMjgsIDIyOCwgMjI4LCAyMjgsIDIyOCwgNzgsIDc4LCA3OCwgCisgICAgNzgsIDc4LCAyMjgsIDIyOCwgMjI4LCA3OCwgNzgsIDc4LCA3OCwgMjI4LCA3OCwgNzgsIDc4LCAyMjgsIDIyOCwgMjI4LCAKKyAgICAyMjgsIDIyOCwgNzgsIDIyOCwgNzgsIDc4LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIAorICAgIDc4LCA3OCwgNzgsIDc4LCAyNiwgMjYsIDc4LCA3OCwgNzgsIDc4LCA3OCwgNzgsIDAsIDAsIDAsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMzAsIDMwLCAzMCwgMzAsIDMwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDEzNiwgMTM2LCAxMzIsIDEzNiwgMTM2LCAxMzIsIAotICAgIDEzNiwgMTM2LCA4MiwgMTM2LCAxMzksIDAsIDAsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMCwgMCwgMCwgMCwgMCwgMCwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgCi0gICAgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIAotICAgIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAKLSAgICAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgCi0gICAgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIAotICAgIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAKLSAgICAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgCi0gICAgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIAotICAgIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAKLSAgICAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgCi0gICAgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIAotICAgIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAyNTUsIDI1NSwgMjU1LCAKLSAgICAyNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAwLCAwLCAwLCAwLCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDAsIDAsIDAsIDAsIAotICAgIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAKLSAgICAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgCi0gICAgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIAotICAgIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAKLSAgICAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgCi0gICAgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIAotICAgIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAKLSAgICAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgCi0gICAgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIAotICAgIDI2NiwgMjY2LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAKLSAgICAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgCi0gICAgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIAotICAgIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAKLSAgICAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgCi0gICAgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIAotICAgIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAKLSAgICAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgCi0gICAgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIAotICAgIDI2NywgMjY3LCAyNjcsIDI2NywgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKLSAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAotICAgIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKLSAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAotICAgIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKLSAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAotICAgIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKLSAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAxNjgsIDE2OCwgMjY4LCAxNjgsIDI2OCwgMTY4LCAxNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMTY4LCAyNjgsIDE2OCwgMjY4LCAxNjgsIAotICAgIDE2OCwgMjY4LCAyNjgsIDE2OCwgMTY4LCAxNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMCwgMCwgMjY4LCAyNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAotICAgIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKLSAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAotICAgIDI2OCwgMjY4LCAyNjgsIDAsIDAsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAotICAgIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKLSAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAotICAgIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKLSAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMCwgMCwgMCwgMCwgMCwgMjY5LCAyNzAsIDI2OSwgCi0gICAgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjA5LCAyNjksIDI2OSwgMjY5LCAyNjksIAotICAgIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDAsIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAKLSAgICAwLCAyNjksIDAsIDI2OSwgMjY5LCAwLCAyNjksIDI2OSwgMCwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAKLSAgICAyNjksIDI2OSwgMjcxLCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIAotICAgIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDE5MywgMjczLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDAsIDAsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDI3NCwgMjcsIDAsIDAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCAyNzUsIDI3NSwgMjc1LCAyNzUsIDI3NSwgMjc1LCAKLSAgICAyNzUsIDI3NiwgMjc3LCAyNzUsIDAsIDAsIDAsIDAsIDAsIDAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNzUsIDI3OCwgMjc4LCAyNzksIDI3OSwgMjc2LCAyNzcsIDI3NiwgMjc3LCAyNzYsIAotICAgIDI3NywgMjc2LCAyNzcsIDI3NiwgMjc3LCAyNzYsIDI3NywgMjc2LCAyNzcsIDI3NiwgMjc3LCAyNDEsIDI0MSwgMjc2LCAKLSAgICAyNzcsIDI3NSwgMjc1LCAyNzUsIDI3NSwgMjc5LCAyNzksIDI3OSwgMjgwLCAyNzUsIDI4MCwgMCwgMjc1LCAyODAsIDI3NSwgCi0gICAgMjc1LCAyNzgsIDI4MSwgMjgyLCAyODEsIDI4MiwgMjgxLCAyODIsIDI4MywgMjc1LCAyNzUsIDI4NCwgMjg1LCAyODYsIAotICAgIDI4NiwgMjg3LCAwLCAyNzUsIDI4OCwgMjgzLCAyNzUsIDAsIDAsIDAsIDAsIDEyOCwgMTI4LCAxMjgsIDExNSwgMTI4LCAwLCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAwLCAwLCAxODYsIDAsIDI4OSwgMjg5LCAyOTAsIAotICAgIDI5MSwgMjkwLCAyODksIDI4OSwgMjkyLCAyOTMsIDI4OSwgMjk0LCAyOTUsIDI5NiwgMjk1LCAyOTUsIDI5NywgMjk3LCAKLSAgICAyOTcsIDI5NywgMjk3LCAyOTcsIDI5NywgMjk3LCAyOTcsIDI5NywgMjk1LCAyODksIDI5OCwgMjk5LCAyOTgsIDI4OSwgCi0gICAgMjg5LCAzMDAsIDMwMCwgMzAwLCAzMDAsIDMwMCwgMzAwLCAzMDAsIDMwMCwgMzAwLCAzMDAsIDMwMCwgMzAwLCAzMDAsIAotICAgIDMwMCwgMzAwLCAzMDAsIDMwMCwgMzAwLCAzMDAsIDMwMCwgMzAwLCAzMDAsIDMwMCwgMzAwLCAzMDAsIDMwMCwgMjkyLCAKLSAgICAyODksIDI5MywgMzAxLCAzMDIsIDMwMSwgMzAzLCAzMDMsIDMwMywgMzAzLCAzMDMsIDMwMywgMzAzLCAzMDMsIDMwMywgCi0gICAgMzAzLCAzMDMsIDMwMywgMzAzLCAzMDMsIDMwMywgMzAzLCAzMDMsIDMwMywgMzAzLCAzMDMsIDMwMywgMzAzLCAzMDMsIAotICAgIDMwMywgMzAzLCAzMDMsIDI5MiwgMjk5LCAyOTMsIDI5OSwgMjkyLCAyOTMsIDMwNCwgMzA1LCAzMDYsIDMwNCwgMzA0LCAKLSAgICAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwOCwgMzA3LCAzMDcsIDMwNywgCi0gICAgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIAotICAgIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAKLSAgICAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgCi0gICAgMzA4LCAzMDgsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIAotICAgIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMzA3LCAKLSAgICAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMCwgMCwgMCwgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMCwgMCwgCi0gICAgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMCwgMCwgMzA3LCAzMDcsIDMwNywgMzA3LCAzMDcsIDMwNywgMCwgMCwgCi0gICAgMzA3LCAzMDcsIDMwNywgMCwgMCwgMCwgMjkxLCAyOTEsIDI5OSwgMzAxLCAzMDksIDI5MSwgMjkxLCAwLCAzMTAsIDMxMSwgCi0gICAgMzExLCAzMTEsIDMxMSwgMzEwLCAzMTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMxMiwgMzEyLCAzMTIsIDI3LCAKLSAgICAyNSwgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDQ3LCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIAorICAgIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIAorICAgIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDAsIDQ3LCA0NywgCiAgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCiAgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCisgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDQsIDQ3LCA0NCwgNDQsIDQ0LCA0NywgNDcsIDQ0LCAKKyAgICA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NCwgNDQsIDQ0LCA0NywgNDQsIDQ3LCA0NywgNDQsIDQ3LCA0NywgNDcsIDQ3LCAKKyAgICA0NywgNDcsIDUxLCA1MSwgNDQsIDQ0LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDcsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDQ0LCA0NywgNDQsIDQ3LCA4MSwgODEsIDgxLCA0NCwgNDcsIDAsIDAsIDAsIDAsIDAsIAorICAgIDEzOCwgMTM4LCAxMzgsIDEzOCwgMTUzLCAxMzgsIDEzOCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCiAgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCA4MiwgMTM1LCA3OSwgMCwgMCwgMCwgMCwgCi0gICAgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIAotICAgIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAKLSAgICAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgCi0gICAgMTQ2LCAxNDYsIDE0NiwgMCwgMCwgMCwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgMzEzLCAzMTMsIAotICAgIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAKLSAgICAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgCi0gICAgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIAotICAgIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDMxMywgMzEzLCAzMTMsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAxNTEsIDAsIDAsIDAsIAotICAgIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDg0LCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDAsIDAsIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDE3MSwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxNzEsIDAsIDAsIAorICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgNDcsIDAsIDAsIDAsIDAsIDAsIDQ3LCAwLCAKKyAgICAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUxLCA4MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMTQyLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgMCwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCAKKyAgICA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCAKKyAgICAxMzgsIDEzOCwgMjgsIDM2LCAyOCwgMzYsIDEzOCwgMTM4LCAxMzgsIDI4LCAzNiwgMTM4LCAyOCwgMzYsIDEzOCwgMTM4LCAKKyAgICAxMzgsIDEzOCwgMTM4LCAxMzgsIDEzOCwgMTM4LCAxMzgsIDg0LCAxMzgsIDEzOCwgODQsIDEzOCwgMjgsIDM2LCAxMzgsIAorICAgIDEzOCwgMjgsIDM2LCAxNjMsIDE2NCwgMTYzLCAxNjQsIDE2MywgMTY0LCAxNjMsIDE2NCwgMTM4LCAxMzgsIDEzOCwgMTM4LCAKKyAgICAxMzgsIDUyLCAxMzgsIDEzOCwgMTM4LCAxMzgsIDEzOCwgMTM4LCAxMzgsIDEzOCwgMTM4LCAxMzgsIDg0LCA4NCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgODIsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDAsIDAsIDAsIAotICAgIDAsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgODIsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIAorICAgIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAKKyAgICAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDEsIDI0MCwgCisgICAgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIAorICAgIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAKKyAgICAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgCisgICAgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIAorICAgIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAKKyAgICAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDEsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIAorICAgIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAKKyAgICAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgCisgICAgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIAorICAgIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAKKyAgICAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgCisgICAgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIAorICAgIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAKKyAgICAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgCisgICAgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIAorICAgIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAKKyAgICAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgCisgICAgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIAorICAgIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAKKyAgICAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgCisgICAgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNDEsIDI0MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAKKyAgICAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMCwgMCwgMCwgMCwgMjQyLCAyNDMsIDI0MywgMjQzLCAKKyAgICAyNDAsIDI0NCwgMTcwLCAyNDUsIDI0NiwgMjQ3LCAyNDYsIDI0NywgMjQ2LCAyNDcsIDI0NiwgMjQ3LCAyNDYsIDI0NywgCisgICAgMjQwLCAyNDAsIDI0NiwgMjQ3LCAyNDYsIDI0NywgMjQ2LCAyNDcsIDI0NiwgMjQ3LCAyNDgsIDI0OSwgMjUwLCAyNTAsIAorICAgIDI0MCwgMjQ1LCAyNDUsIDI0NSwgMjQ1LCAyNDUsIDI0NSwgMjQ1LCAyNDUsIDI0NSwgMjUxLCAyNTIsIDI1MywgMjU0LCAKKyAgICAyNTUsIDI1NSwgMjQ4LCAyNDQsIDI0NCwgMjQ0LCAyNDQsIDI0NCwgMjQxLCAyNDAsIDI1NiwgMjU2LCAyNTYsIDI0NCwgCisgICAgMTcwLCAyNDMsIDI0MCwgMjYsIDAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAyNTcsIDE3MCwgMjU3LCAxNzAsIDI1NywgMTcwLCAyNTcsIDE3MCwgMjU3LCAxNzAsIDI1NywgMTcwLCAyNTcsIAorICAgIDE3MCwgMjU3LCAxNzAsIDI1NywgMTcwLCAyNTcsIDE3MCwgMjU3LCAxNzAsIDI1NywgMTcwLCAxNzAsIDI1NywgMTcwLCAKKyAgICAyNTcsIDE3MCwgMjU3LCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAyNTcsIDI1NywgMTcwLCAyNTcsIDI1NywgCisgICAgMTcwLCAyNTcsIDI1NywgMTcwLCAyNTcsIDI1NywgMTcwLCAyNTcsIDI1NywgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAyNTcsIDE3MCwgMTcwLCAwLCAwLCAyNTgsIDI1OCwgMjU5LCAyNTksIDI0NCwgMjYwLCAyNjEsIAorICAgIDI0OCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDI1NywgMTcwLCAKKyAgICAyNTcsIDE3MCwgMjU3LCAxNzAsIDI1NywgMTcwLCAyNTcsIDE3MCwgMjU3LCAxNzAsIDI1NywgMTcwLCAyNTcsIDE3MCwgCisgICAgMjU3LCAxNzAsIDI1NywgMTcwLCAyNTcsIDE3MCwgMjU3LCAxNzAsIDE3MCwgMjU3LCAxNzAsIDI1NywgMTcwLCAyNTcsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDI1NywgMjU3LCAxNzAsIDI1NywgMjU3LCAxNzAsIDI1NywgMjU3LCAKKyAgICAxNzAsIDI1NywgMjU3LCAxNzAsIDI1NywgMjU3LCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDI1NywgMTcwLCAxNzAsIDI1NywgMjU3LCAyNTcsIDI1NywgMjQzLCAyNDQsIDI0NCwgMjYwLCAyNjEsIDAsIDAsIDAsIDAsIAorICAgIDAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAwLCAwLCAwLCAKKyAgICAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgCisgICAgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIAorICAgIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAKKyAgICAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgCisgICAgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIAorICAgIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAKKyAgICAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDAsIDI2MiwgMjYyLCAyNjMsIDI2MywgCisgICAgMjYzLCAyNjMsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIAorICAgIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAKKyAgICAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjQxLCAyNDEsIDAsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIAorICAgIDI2MywgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY1LCAyNjUsIDI2NSwgMjY1LCAyNjUsIDI2NSwgMjY1LCAyNjUsIDI0MSwgMjY2LCAyNjYsIAorICAgIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNDEsIAorICAgIDI0MSwgMjQxLCAyNjIsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIAorICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY2LCAyNjYsIDI2NiwgMjY2LCAKKyAgICAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY2LCAyNjYsIDI2NiwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjQxLCAyNDEsIDI0MSwgMjQxLCAyNjQsIAorICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIAorICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIAorICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIAorICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI0MSwgMjQxLCAyNDEsIAorICAgIDI0MSwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIAorICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIAorICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjQxLCAyNDEsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIAorICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjQxLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAyNDQsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAwLCAwLCAwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgCisgICAgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIAorICAgIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAKKyAgICAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgMjQwLCAyNDAsIDI0MCwgCisgICAgMjQwLCAyNDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA1MywgNTMsIDUzLCA1MywgNTMsIAorICAgIDUzLCA4MywgODMsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDUzLCAxMzgsIDEzOCwgCisgICAgMTM4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTQ0LCAKKyAgICAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCA0OCwgNDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgCisgICAgNDQsIDQ3LCA0OCwgODEsIDgyLCA4MiwgODIsIDEzOCwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIAorICAgIDEzOCwgNTIsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDgxLCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIAorICAgIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCA4MSwgODEsIDgzLCA4MywgODMsIDgzLCA4MywgODMsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDU0LCA1NCwgNTQsIDU0LCA1NCwgNTQsIDU0LCA1NCwgNTQsIDU0LCA1NCwgNTQsIDU0LCA1NCwgNTQsIDU0LCAKKyAgICA1NCwgNTQsIDU0LCA1NCwgNTQsIDU0LCA1NCwgNTIsIDUyLCA1MiwgNTIsIDUyLCA1MiwgNTIsIDUyLCA1MiwgNTQsIDU0LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ3LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCAKKyAgICA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA1MSwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NCwgNDcsIDQ0LCAKKyAgICA0NywgNDQsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCA0NywgNDQsIDQ3LCA1MiwgMjY3LCAyNjcsIDQ0LCA0NywgNDQsIAorICAgIDQ3LCAwLCA0NCwgNDcsIDQ0LCA0NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDQsIDQ3LCA0NCwgCisgICAgNDcsIDQ0LCA0NywgNDQsIDQ3LCA0NCwgNDcsIDQ0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MSwgNTEsIDQ3LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgMTM1LCA0OCwgNDgsIDQ4LCAxNDIsIDQ4LCA0OCwgNDgsIDQ4LCAxMzUsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgMTM5LCAxMzksIDEzNSwgMTM1LCAxMzksIDI2LCAyNiwgMjYsIDI2LCAwLCAwLCAwLCAwLCAxNDgsIDE0OCwgMTQ4LCAKKyAgICAxNDgsIDE0OCwgMTQ4LCA4MCwgODAsIDg1LCAyMjEsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxMzgsIDEzOCwgMTM4LCAxMzgsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDEzOSwgMTM5LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAKKyAgICAxMzksIDEzOSwgMTQyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MywgODMsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgCisgICAgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMCwgMCwgMCwgMCwgMCwgMCwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgCisgICAgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgODMsIDgzLCA4MywgNDgsIDAsIDAsIDAsIDAsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCA4NiwgCisgICAgODYsIDg2LCA4MywgODMsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAKKyAgICAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzOSwgMTc0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MywgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDAsIAorICAgIDAsIDAsIDEzNSwgMTM1LCAxMzUsIDEzOSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNDUsIAorICAgIDEzOSwgMTM5LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzOSwgMTM5LCAxMzUsIDEzOSwgMTM5LCAxMzksIDE3NCwgODMsIDgzLCAKKyAgICA4MywgODMsIDgzLCA4MywgODMsIDgzLCA4MywgODMsIDgzLCA4MywgODMsIDAsIDUzLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDAsIDAsIDAsIDAsIDgzLCA4MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzksIDEzOSwgMTM1LCAxMzUsIAorICAgIDEzOSwgMTM5LCAxMzUsIDEzNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgMTM1LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDEzNSwgMTM5LCAwLCAwLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAKKyAgICAxNDQsIDE0NCwgMTQ0LCAxNDQsIDAsIDAsIDgzLCA4MywgODMsIDgzLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNTMsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDgwLCA4MCwgODAsIAorICAgIDQ4LCAxMzksIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDgxLCAKKyAgICA0OCwgODEsIDgxLCA4NiwgNDgsIDQ4LCA4MSwgODEsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgODEsIDgxLCA0OCwgODEsIDQ4LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA0OCwgNDgsIDUzLCA4MywgODMsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTM5LCAxMzUsIAorICAgIDEzNSwgMTM5LCAxMzksIDgzLCA4MywgNDgsIDUzLCA1MywgMTM5LCAxNDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxMzksIDEzOSwgMTM1LCAxMzksIDEzOSwgMTM1LCAxMzksIDEzOSwgODMsIDEzOSwgCisgICAgMTQyLCAwLCAwLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgCisgICAgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIAorICAgIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAKKyAgICAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgCisgICAgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIAorICAgIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAKKyAgICAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgCisgICAgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIAorICAgIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAKKyAgICAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgCisgICAgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIAorICAgIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMCwgMCwgMCwgMCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAwLCAwLCAwLCAwLCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCisgICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAorICAgIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKKyAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCisgICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAorICAgIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKKyAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCisgICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIAorICAgIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAKKyAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY5LCAyNjksIDI2OSwgCisgICAgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIAorICAgIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAKKyAgICAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgCisgICAgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIAorICAgIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAKKyAgICAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgCisgICAgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIAorICAgIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAKKyAgICAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI3MCwgCisgICAgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAKKyAgICAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgCisgICAgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAKKyAgICAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgCisgICAgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAKKyAgICAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgCisgICAgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMTcwLCAxNzAsIDI3MCwgMTcwLCAyNzAsIDE3MCwgMTcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAKKyAgICAyNzAsIDI3MCwgMjcwLCAyNzAsIDE3MCwgMjcwLCAxNzAsIDI3MCwgMTcwLCAxNzAsIDI3MCwgMjcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAKKyAgICAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgCisgICAgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMCwgMCwgCisgICAgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAKKyAgICAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgCisgICAgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAKKyAgICAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgCisgICAgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMzUsIDM1LCAzNSwgMzUsIDM1LCAwLCAwLCAwLCAwLCAwLCAyNzEsIDI3MiwgMjcxLCAyNzMsIDI3MywgMjczLCAyNzMsIAorICAgIDI3MywgMjczLCAyNzMsIDI3MywgMjczLCAyMTEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAKKyAgICAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMCwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDAsIDI3MSwgMCwgMjcxLCAyNzEsIAorICAgIDAsIDI3MSwgMjcxLCAwLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzMsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAyNzQsIAorICAgIDI3NCwgMjc0LCAyNzQsIDI3NCwgMjc0LCAyNzQsIDI3NCwgMjc0LCAyNzQsIDI3NCwgMjc0LCAyNzQsIDI3NCwgMjc0LCAKKyAgICAyNzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTk1LCAyNzUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMCwgMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMjc2LCAyNiwgMCwgMCwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDI3NywgMjc3LCAyNzcsIDI3NywgMjc3LCAyNzcsIDI3NywgMjc4LCAyNzksIAorICAgIDI3NywgMCwgMCwgMCwgMCwgMCwgMCwgODEsIDgxLCA4MSwgODEsIDgxLCA4MSwgODEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDI3NywgMjgwLCAyODAsIDI4MSwgMjgxLCAyNzgsIDI3OSwgMjc4LCAyNzksIDI3OCwgMjc5LCAyNzgsIDI3OSwgCisgICAgMjc4LCAyNzksIDI3OCwgMjc5LCAyNzgsIDI3OSwgMjc4LCAyNzksIDI0MywgMjQzLCAyNzgsIDI3OSwgMjc3LCAyNzcsIAorICAgIDI3NywgMjc3LCAyODEsIDI4MSwgMjgxLCAyODIsIDI3NywgMjgyLCAwLCAyNzcsIDI4MiwgMjc3LCAyNzcsIDI4MCwgMjgzLCAKKyAgICAyODQsIDI4MywgMjg0LCAyODMsIDI4NCwgMjg1LCAyNzcsIDI3NywgMjg2LCAyODcsIDI4OCwgMjg4LCAyODksIDAsIDI3NywgCisgICAgMjkwLCAyODUsIDI3NywgMCwgMCwgMCwgMCwgMTMwLCAxMzAsIDEzMCwgMTE3LCAxMzAsIDAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDAsIDAsIDE4NywgMCwgMjkxLCAyOTEsIDI5MiwgMjkzLCAyOTIsIDI5MSwgCisgICAgMjkxLCAyOTQsIDI5NSwgMjkxLCAyOTYsIDI5NywgMjk4LCAyOTcsIDI5NywgMjk5LCAyOTksIDI5OSwgMjk5LCAyOTksIAorICAgIDI5OSwgMjk5LCAyOTksIDI5OSwgMjk5LCAyOTcsIDI5MSwgMzAwLCAzMDEsIDMwMCwgMjkxLCAyOTEsIDMwMiwgMzAyLCAKKyAgICAzMDIsIDMwMiwgMzAyLCAzMDIsIDMwMiwgMzAyLCAzMDIsIDMwMiwgMzAyLCAzMDIsIDMwMiwgMzAyLCAzMDIsIDMwMiwgCisgICAgMzAyLCAzMDIsIDMwMiwgMzAyLCAzMDIsIDMwMiwgMzAyLCAzMDIsIDMwMiwgMzAyLCAyOTQsIDI5MSwgMjk1LCAzMDMsIAorICAgIDMwNCwgMzAzLCAzMDUsIDMwNSwgMzA1LCAzMDUsIDMwNSwgMzA1LCAzMDUsIDMwNSwgMzA1LCAzMDUsIDMwNSwgMzA1LCAKKyAgICAzMDUsIDMwNSwgMzA1LCAzMDUsIDMwNSwgMzA1LCAzMDUsIDMwNSwgMzA1LCAzMDUsIDMwNSwgMzA1LCAzMDUsIDMwNSwgCisgICAgMjk0LCAzMDEsIDI5NSwgMzAxLCAyOTQsIDI5NSwgMzA2LCAzMDcsIDMwOCwgMzA2LCAzMDYsIDMwOSwgMzA5LCAzMDksIAorICAgIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzEwLCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAKKyAgICAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgCisgICAgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIAorICAgIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMTAsIDMxMCwgMzA5LCAKKyAgICAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgCisgICAgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAzMDksIAorICAgIDMwOSwgMzA5LCAwLCAwLCAwLCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAwLCAwLCAzMDksIDMwOSwgMzA5LCAKKyAgICAzMDksIDMwOSwgMzA5LCAwLCAwLCAzMDksIDMwOSwgMzA5LCAzMDksIDMwOSwgMzA5LCAwLCAwLCAzMDksIDMwOSwgMzA5LCAKKyAgICAwLCAwLCAwLCAyOTMsIDI5MywgMzAxLCAzMDMsIDMxMSwgMjkzLCAyOTMsIDAsIDMxMiwgMzEzLCAzMTMsIDMxMywgMzEzLCAKKyAgICAzMTIsIDMxMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzE0LCAzMTQsIDMxNCwgMjYsIDMwLCAwLCAwLCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgMCwgMCwgMCwgMCwgODMsIDEzOCwgODMsIDAsIDAsIDAsIDAsIDE0OCwgMTQ4LCAKKyAgICAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgCisgICAgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIAorICAgIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAKKyAgICAxNDgsIDAsIDAsIDAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDMxNSwgMzE1LCAzMTUsIDMxNSwgCisgICAgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIAorICAgIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAKKyAgICAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgCisgICAgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAxNTMsIDE1MywgMTUzLCAxNTMsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMTUzLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4NiwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNzMsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMTczLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA4MywgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMCwgMCwgMCwgCisgICAgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA4MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCAKICAgICA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCAKLSAgICA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCA0NiwgNDYsIDQ2LCAKLSAgICA0NiwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKKyAgICA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NywgNDcsIDQ3LCAKICAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKICAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgMCwgMCwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAotICAgIDE0MSwgMTQxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAwLCAwLCAxMDUsIDAsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgCi0gICAgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAwLCAxMDUsIDEwNSwgMCwgMCwgMCwgMTA1LCAwLCAwLCAxMDUsIDEwNSwgCi0gICAgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMCwgMTAyLCAzMTQsIDMxNCwgMzE0LCAzMTQsIDMxNCwgMzE0LCAKLSAgICAzMTQsIDMxNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAzMTQsIDMxNCwgMzE0LCAzMTQsIDMxNCwgMzE0LCAwLCAwLCAwLCAxMzUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAwLCAwLCAwLCAwLCAwLCAxMDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwNSwgMTMyLCAxMzIsIDEzMiwgMCwgMTMyLCAxMzIsIDAsIDAsIDAsIDAsIDAsIAotICAgIDEzMiwgODQsIDEzMiwgODAsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMCwgMTA1LCAxMDUsIDEwNSwgMCwgMTA1LCAxMDUsIDEwNSwgCi0gICAgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMCwgMCwgMCwgMCwgODAsIDE3NCwgCi0gICAgODQsIDAsIDAsIDAsIDAsIDEzOSwgMzE0LCAzMTQsIDMxNCwgMzE0LCAzMTQsIDMxNCwgMzE0LCAzMTQsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgCi0gICAgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAzMTQsIDMxNCwgMTAyLCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgCi0gICAgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAwLCAwLCAwLCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMCwgMCwgMzE0LCAzMTQsIDMxNCwgMzE0LCAzMTQsIDMxNCwgMzE0LCAzMTQsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMCwgMCwgMCwgMCwgMCwgMzE0LCAzMTQsIDMxNCwgMzE0LCAzMTQsIDMxNCwgCi0gICAgMzE0LCAzMTQsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgCi0gICAgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIAotICAgIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMTA1LCAKLSAgICAxMDUsIDEwNSwgMTA1LCAxMDUsIDEwNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIAotICAgIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAKLSAgICAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAzMTUsIDMxNSwgMzE1LCAwLCAxMzYsIDEzMiwgCi0gICAgMTM2LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzMiwgMTMyLCAKLSAgICAxMzksIDgyLCA4MiwgODIsIDgyLCA4MiwgODIsIDgyLCAwLCAwLCAwLCAwLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgCi0gICAgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIAotICAgIDE1MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzIsIDEzMiwgMTM2LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDEzNywgNDcsIAotICAgIDEzNywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAxMzcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCAxMzYsIDEzNiwgMTM2LCAxMzIsIDEzMiwgMTMyLCAxMzIsIDEzNiwgMTM2LCAxMzksIDEzOCwgODIsIDgyLCAKLSAgICAxNzIsIDgyLCA4MiwgODIsIDgyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNzEsIDE3MSwgMTcxLCAKLSAgICAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgCi0gICAgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIAotICAgIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAKLSAgICAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgCi0gICAgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIAotICAgIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAKLSAgICAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAxNzEsIDE3MSwgMTcxLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MiwgODIsIDgyLCA4MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKLSAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIAotICAgIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAxNjgsIDE2OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIAotICAgIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIAotICAgIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDAsIDAsIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgCi0gICAgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgMzE2LCAzMTYsIDMxNiwgMzE2LCAzMTYsIAotICAgIDMxNiwgMzE2LCAzMTcsIDMxNywgMTc0LCAxNzQsIDE3NCwgNzksIDc5LCA3OSwgMzE4LCAzMTcsIDMxNywgMzE3LCAzMTcsIAotICAgIDMxNywgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDg0LCA4NCwgODQsIDg0LCA4NCwgODQsIDg0LCAKLSAgICA4NCwgNzksIDc5LCA4MCwgODAsIDgwLCA4MCwgODAsIDg0LCA4NCwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgODAsIDgwLCA4MCwgODAsIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCAzMTYsIDMxNiwgMzE2LCAzMTYsIDMxNiwgMzE2LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIAotICAgIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIAotICAgIDc5LCA3OSwgNzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDgwLCA4MCwgODAsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAxNDYsIDE0NiwgCi0gICAgMTQ2LCAxNDYsIDE0NiwgMTQ2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCAKKyAgICA0NywgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKICAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKLSAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKLSAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKICAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKLSAgICA0OCwgNDgsIDQ4LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMCwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAogICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDQ4LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDQ4LCAwLCA0OCwgNDgsIDAsIDAsIDQ4LCAwLCAwLCA0OCwgCi0gICAgNDgsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAwLCAzNSwgMCwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKLSAgICAzNSwgMzUsIDM1LCAzNSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKLSAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKLSAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKLSAgICAzNSwgMzUsIDQ4LCA0OCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCi0gICAgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKLSAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDgsIDQ4LCAKLSAgICAwLCA0OCwgNDgsIDQ4LCA0OCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCA0OCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDQ4LCA0OCwgNDgsIDAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgCi0gICAgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDAsIDAsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAKKyAgICAxNDQsIDE0NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMCwgMCwgMTA3LCAwLCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMCwgMTA3LCAxMDcsIDAsIDAsIDAsIDEwNywgMCwgMCwgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDAsIDEwNCwgMzE2LCAzMTYsIDMxNiwgMzE2LCAzMTYsIDMxNiwgCisgICAgMzE2LCAzMTYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCisgICAgMzE2LCAzMTYsIDMxNiwgMzE2LCAzMTYsIDMxNiwgMCwgMCwgMCwgMTM4LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMCwgMCwgMCwgMCwgMCwgMTA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMCwgMCwgMCwgMCwgMCwgMCwgMTA3LCAxMDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwNywgMTM1LCAxMzUsIDEzNSwgMCwgMTM1LCAxMzUsIDAsIDAsIDAsIDAsIDAsIAorICAgIDEzNSwgODYsIDEzNSwgODEsIDEwNywgMTA3LCAxMDcsIDEwNywgMCwgMTA3LCAxMDcsIDEwNywgMCwgMTA3LCAxMDcsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMCwgMCwgMCwgMCwgODEsIDE3NSwgCisgICAgODYsIDAsIDAsIDAsIDAsIDE0MiwgMzE2LCAzMTYsIDMxNiwgMzE2LCAzMTYsIDMxNiwgMzE2LCAzMTYsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDEwNCwgMTA0LCAxMDQsIDEwNCwgMTA0LCAxMDQsIDEwNCwgMTA0LCAxMDQsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAzMTYsIDMxNiwgMTA0LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAwLCAwLCAwLCAxMzgsIDEzOCwgMTM4LCAxMzgsIDEzOCwgMTM4LCAxMzgsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMCwgMCwgMzE2LCAzMTYsIDMxNiwgMzE2LCAzMTYsIDMxNiwgMzE2LCAzMTYsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMCwgMCwgMCwgMCwgMCwgMzE2LCAzMTYsIDMxNiwgMzE2LCAzMTYsIDMxNiwgCisgICAgMzE2LCAzMTYsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCisgICAgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIAorICAgIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKKyAgICAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzE3LCAzMTcsIDMxNywgMzE3LCAzMTcsIAorICAgIDMxNywgMzE3LCAzMTcsIDMxNywgMzE3LCAzMTcsIDMxNywgMzE3LCAzMTcsIDMxNywgMzE3LCAzMTcsIDMxNywgMzE3LCAKKyAgICAzMTcsIDMxNywgMzE3LCAzMTcsIDMxNywgMzE3LCAzMTcsIDMxNywgMzE3LCAzMTcsIDMxNywgMzE3LCAwLCAxMzksIDEzNSwgCisgICAgMTM5LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAogICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDQ4LCA0OCwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAogICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCi0gICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDMxOSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDIyMCwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKLSAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDMxOSwgMzUsIDM1LCAzNSwgCi0gICAgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgCi0gICAgMzUsIDM1LCAzNSwgMzUsIDIyMCwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAKKyAgICAxNDIsIDgzLCA4MywgODMsIDgzLCA4MywgODMsIDgzLCAwLCAwLCAwLCAwLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgCisgICAgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIDE1MywgMTUzLCAxNTMsIAorICAgIDE1MywgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzUsIDEzNSwgMTM5LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDE0MCwgNDgsIAorICAgIDE0MCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNDAsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCAxMzksIDEzOSwgMTM5LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzOSwgMTM5LCAxNDIsIDE0MSwgODMsIDgzLCAKKyAgICAxODgsIDgzLCA4MywgODMsIDgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIAogICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDMxOSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKLSAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDIyMCwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAKKyAgICAxNDQsIDE0NCwgMTQ0LCAxNDQsIDAsIDAsIDAsIDAsIDAsIDAsIDgxLCA4MSwgODEsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAogICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAotICAgIDQ4LCA0OCwgNDgsIDQ4LCAzMTksIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKLSAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAyMjAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgCi0gICAgMzUsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgCi0gICAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAzMTksIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAotICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAyMjAsIDM1LCAKLSAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDQ4LCAzNSwgMCwgMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIAotICAgIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAKLSAgICAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgCi0gICAgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDMyMCwgMzIwLCAzMjAsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAKLSAgICAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgCi0gICAgMjM1LCAyMzUsIDIzNSwgMjM1LCAzMjEsIDAsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIAotICAgIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAKLSAgICAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyMzUsIDIzNSwgMjM1LCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgCi0gICAgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIAotICAgIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMCwgMCwgMCwgMCwgMCwgMCwgMjYzLCAyNjMsIDI2MywgMjYzLCAKLSAgICAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgCi0gICAgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIAotICAgIDIzNSwgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAyNjMsIDI2MywgMjYzLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxNDksIDEzNSwgMTM1LCAxMzUsIDEzNSwgCisgICAgMTM5LCAxMzUsIDE1MCwgMTUwLCAxMzUsIDEzNSwgMTM1LCAxNDIsIDE0MiwgMCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIAorICAgIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCA4MywgODMsIDgzLCA4MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAKLSAgICA3OSwgNzksIDc5LCA3OSwgNzksIDc5LCAyNjIsIDI2MiwgMjYyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIAotICAgIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAKLSAgICAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgCi0gICAgMjYyLCAyNjIsIDAsIDAsIDAsIDAsIDAsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDI2MiwgMjYyLCAyNjIsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDI2MiwgMjYyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAxMzUsIDEzNSwgMTM5LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxMzksIDEzOSwgCisgICAgMTM5LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzksIDE3NCwgNDgsIDQ4LCA0OCwgCisgICAgNDgsIDgzLCA4MywgODMsIDgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAKKyAgICAxNDQsIDE0NCwgMTQ0LCAxNDQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCAxMzUsIDEzOSwgMTM1LCAxMzksIDEzOSwgMTM1LCAxMzUsIDEzNSwgMTM1LCAxMzUsIDEzNSwgCisgICAgMTc0LCAxNDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAxNDQsIDE0NCwgMTQ0LCAKKyAgICAxNDQsIDE0NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDAsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAotICAgIDI3LCAwLCAyNywgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCA3OSwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgNzksIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgCisgICAgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIAorICAgIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAKKyAgICAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgCisgICAgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIAorICAgIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAKKyAgICAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgMTczLCAxNzMsIDE3MywgCisgICAgMTczLCAxNzMsIDE3MywgMTczLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MywgODMsIDgzLCAKKyAgICA4MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIAorICAgIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKKyAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgCisgICAgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIAorICAgIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAKKyAgICAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgMTM5LCAxMzksIDEzOSwgCisgICAgMTM5LCAxMzksIDEzOSwgMTM5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzUsIAorICAgIDEzNSwgMTM1LCAxMzUsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCA1MywgNTMsIDUzLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNzAsIAorICAgIDE3MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIAorICAgIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIAorICAgIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIAorICAgIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIAorICAgIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIAorICAgIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIAorICAgIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCisgICAgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCisgICAgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDAsIDAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAKKyAgICA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgMzE4LCAzMTgsIDMxOCwgMzE4LCAzMTgsIDMxOCwgMzE4LCAzMTksIDMxOSwgCisgICAgMTc1LCAxNzUsIDE3NSwgODAsIDgwLCA4MCwgMzIwLCAzMTksIDMxOSwgMzE5LCAzMTksIDMxOSwgMTg3LCAxODcsIDE4NywgCisgICAgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDg2LCA4NiwgODYsIDg2LCA4NiwgODYsIDg2LCA4NiwgODAsIDgwLCA4MSwgODEsIAorICAgIDgxLCA4MSwgODEsIDg2LCA4NiwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIAorICAgIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODEsIAorICAgIDgxLCA4MSwgODEsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCAzMTgsIDMxOCwgCisgICAgMzE4LCAzMTgsIDMxOCwgMzE4LCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCisgICAgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDgxLCAKKyAgICA4MSwgODEsIDI2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDgsIDE0OCwgMTQ4LCAKKyAgICAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgMTQ4LCAxNDgsIDE0OCwgCisgICAgMTQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAKKyAgICA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAKKyAgICA0OSwgNDksIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKKyAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAKKyAgICA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAKKyAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMCwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIAorICAgIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDQ5LCAwLCA0OSwgNDksIDAsIDAsIDQ5LCAwLCAwLCA0OSwgNDksIDAsIDAsIDQ5LCAKKyAgICA0OSwgNDksIDQ5LCAwLCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDM1LCAzNSwgMzUsIDM1LCAwLCAzNSwgMCwgCisgICAgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKKyAgICAzNSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAKKyAgICA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKKyAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDQ5LCAKKyAgICA0OSwgMCwgNDksIDQ5LCA0OSwgNDksIDAsIDAsIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgMCwgNDksIDQ5LCAKKyAgICA0OSwgNDksIDQ5LCA0OSwgNDksIDAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDksIDQ5LCAwLCA0OSwgCisgICAgNDksIDQ5LCA0OSwgMCwgNDksIDQ5LCA0OSwgNDksIDQ5LCAwLCA0OSwgMCwgMCwgMCwgNDksIDQ5LCA0OSwgNDksIDQ5LCAKKyAgICA0OSwgNDksIDAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIAorICAgIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIAorICAgIDQ5LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIAorICAgIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIAorICAgIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIAorICAgIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIAorICAgIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIAorICAgIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAwLCAwLCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgCisgICAgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgMzIxLCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMjIyLCAKKyAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAKKyAgICA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgMzIxLCAzNSwgMzUsIDM1LCAzNSwgCisgICAgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgCisgICAgMzUsIDM1LCAzNSwgMjIyLCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIAorICAgIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgMzIxLCAKKyAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKKyAgICAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMjIyLCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCA0OSwgNDksIDQ5LCA0OSwgCisgICAgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgCisgICAgNDksIDQ5LCA0OSwgMzIxLCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMjIyLCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAKKyAgICA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCAKKyAgICA0OSwgNDksIDQ5LCA0OSwgNDksIDQ5LCA0OSwgMzIxLCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgCisgICAgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMjIyLCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCA0OSwgMzUsIDAsIDAsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAKKyAgICAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgCisgICAgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIAorICAgIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAzMjIsIDMyMiwgMzIyLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDAsIDEzMCwgMTMwLCAwLCAxMzAsIDAsIDAsIDEzMCwgMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDAsIDEzMCwgMCwgMTMwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAxMzAsIDAsIDAsIDAsIDAsIDEzMCwgMCwgMTMwLCAwLCAxMzAsIDAsIDEzMCwgMTMwLCAxMzAsIDAsIAorICAgIDEzMCwgMTMwLCAwLCAxMzAsIDAsIDAsIDEzMCwgMCwgMTMwLCAwLCAxMzAsIDAsIDEzMCwgMCwgMTMwLCAwLCAxMzAsIDEzMCwgCisgICAgMCwgMTMwLCAwLCAwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDAsIDEzMCwgMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMCwgMCwgMCwgMCwgMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3OCwgNzgsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMCwgMCwgMCwgMCwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDAsIDAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMCwgMCwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMCwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAwLCAwLCAwLCAwLCAwLCAyMzcsIDIzNywgCisgICAgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIAorICAgIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAKKyAgICAzMjMsIDAsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgCisgICAgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAyMzcsIAorICAgIDIzNywgMjM3LCAyMzcsIDIzNywgMjM3LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAKKyAgICAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgCisgICAgMzI0LCAzMjQsIDMyNCwgMjE4LCAyMTgsIDAsIDAsIDAsIDAsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgCisgICAgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIAorICAgIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAyMzcsIDMyNCwgMzI0LCAKKyAgICAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMzI0LCAzMjQsIDMyNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCisgICAgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgODAsIDgwLCA4MCwgCisgICAgODAsIDgwLCAyNjQsIDI2NCwgMjY0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNjQsIDI2NCwgCisgICAgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIAorICAgIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAKKyAgICAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDAsIDAsIDAsIAorICAgIDAsIDAsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDI2NCwgMjY0LCAyNjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDI2NCwgMjY0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAwLCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMCwgMCwgMCwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMCwgMjYsIDI2LCAyNiwgMjYsIDI2LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDAsIDI2LCAwLCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDAsIDI2LCAyNiwgMjYsIDI2LCAwLCAwLCAwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDAsIDAsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKLSAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAyNywgMjcsIDI3LCAwLCAyNywgMCwgMjcsIDAsIDI3LCAKLSAgICAwLCAyNywgMjcsIDI3LCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMCwgMjcsIDAsIAotICAgIDAsIDI3LCAyNywgMjcsIDI3LCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAKLSAgICAwLCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIAorICAgIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMCwgMCwgCisgICAgMCwgMCwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAKKyAgICAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCi0gICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAKLSAgICAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgCi0gICAgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIAotICAgIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAxNjgsIDE2OCwgMTY4LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgCisgICAgMjYsIDI2LCAyNiwgMjYsIDI2LCAyNiwgMjYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAKKyAgICAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgCisgICAgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIAorICAgIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDE3MCwgMTcwLCAxNzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI2OCwgMjY4LCAKLSAgICAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgCi0gICAgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDI2OCwgMjY4LCAyNjgsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgCisgICAgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIAorICAgIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDI3MCwgMjcwLCAyNzAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4NywgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMTg2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAKLSAgICAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgCi0gICAgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIAotICAgIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAKLSAgICAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgCi0gICAgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIAotICAgIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAxODYsIDE4NiwgMTg2LCAKLSAgICAxODYsIDE4NiwgMTg2LCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIAotICAgIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCA3MCwgNzAsIDcwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgCi0gICAgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIAotICAgIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAKLSAgICAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgCi0gICAgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIAotICAgIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAKLSAgICAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgCi0gICAgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIAotICAgIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAyNjcsIDI2NywgMjY3LCAKLSAgICAyNjcsIDI2NywgMjY3LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgCisgICAgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIAorICAgIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAKKyAgICAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgCisgICAgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIAorICAgIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAKKyAgICAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgMTg3LCAxODcsIDE4NywgCisgICAgMTg3LCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgCisgICAgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIAorICAgIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAKKyAgICAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgCisgICAgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIAorICAgIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAKKyAgICAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgCisgICAgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIAorICAgIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAyNjksIDI2OSwgMjY5LCAwLCAKKyAgICAwLCAKIH07CiAKIC8qIGRlY29tcG9zaXRpb24gZGF0YSAqLwpAQCAtMzA3MiwzMjEgKzMxNDAsMzIyIEBACiAgICAgNTAsIDQ5LCAyNjA4NSwgNzcwLCA1MCwgNTAsIDI2MDg1LCA3NzAsIDUwLCA1MSwgMjYwODUsIDc3MCwgNTAsIDUyLCAKICAgICAyNjA4NSwgNzcwLCA1MCwgNTMsIDI2MDg1LCA3NzAsIDUwLCA1NCwgMjYwODUsIDc3MCwgNTAsIDU1LCAyNjA4NSwgNzcwLCAKICAgICA1MCwgNTYsIDI2MDg1LCA3NzAsIDUwLCA1NywgMjYwODUsIDc3MCwgNTEsIDQ4LCAyNjA4NSwgNzcwLCA1MSwgNDksIAotICAgIDI2MDg1LCA3NzgsIDEwMywgOTcsIDEwOCwgMjU5LCA0Mjg2MywgMjU2LCAzNTkxMiwgMjU2LCAyNjM1NiwgMjU2LCAzNjU1NCwgCi0gICAgMjU2LCAzNjA0MCwgMjU2LCAyODM2OSwgMjU2LCAyMDAxOCwgMjU2LCAyMTQ3NywgMjU2LCA0MDg2MCwgMjU2LCA0MDg2MCwgCi0gICAgMjU2LCAyMjg2NSwgMjU2LCAzNzMyOSwgMjU2LCAyMTg5NSwgMjU2LCAyMjg1NiwgMjU2LCAyNTA3OCwgMjU2LCAzMDMxMywgCi0gICAgMjU2LCAzMjY0NSwgMjU2LCAzNDM2NywgMjU2LCAzNDc0NiwgMjU2LCAzNTA2NCwgMjU2LCAzNzAwNywgMjU2LCAyNzEzOCwgCi0gICAgMjU2LCAyNzkzMSwgMjU2LCAyODg4OSwgMjU2LCAyOTY2MiwgMjU2LCAzMzg1MywgMjU2LCAzNzIyNiwgMjU2LCAzOTQwOSwgCi0gICAgMjU2LCAyMDA5OCwgMjU2LCAyMTM2NSwgMjU2LCAyNzM5NiwgMjU2LCAyOTIxMSwgMjU2LCAzNDM0OSwgMjU2LCA0MDQ3OCwgCi0gICAgMjU2LCAyMzg4OCwgMjU2LCAyODY1MSwgMjU2LCAzNDI1MywgMjU2LCAzNTE3MiwgMjU2LCAyNTI4OSwgMjU2LCAzMzI0MCwgCi0gICAgMjU2LCAzNDg0NywgMjU2LCAyNDI2NiwgMjU2LCAyNjM5MSwgMjU2LCAyODAxMCwgMjU2LCAyOTQzNiwgMjU2LCAzNzA3MCwgCi0gICAgMjU2LCAyMDM1OCwgMjU2LCAyMDkxOSwgMjU2LCAyMTIxNCwgMjU2LCAyNTc5NiwgMjU2LCAyNzM0NywgMjU2LCAyOTIwMCwgCi0gICAgMjU2LCAzMDQzOSwgMjU2LCAzMjc2OSwgMjU2LCAzNDMxMCwgMjU2LCAzNDM5NiwgMjU2LCAzNjMzNSwgMjU2LCAzODcwNiwgCi0gICAgMjU2LCAzOTc5MSwgMjU2LCA0MDQ0MiwgMjU2LCAzMDg2MCwgMjU2LCAzMTEwMywgMjU2LCAzMjE2MCwgMjU2LCAzMzczNywgCi0gICAgMjU2LCAzNzYzNiwgMjU2LCA0MDU3NSwgMjU2LCAzNTU0MiwgMjU2LCAyMjc1MSwgMjU2LCAyNDMyNCwgMjU2LCAzMTg0MCwgCi0gICAgMjU2LCAzMjg5NCwgMjU2LCAyOTI4MiwgMjU2LCAzMDkyMiwgMjU2LCAzNjAzNCwgMjU2LCAzODY0NywgMjU2LCAyMjc0NCwgCi0gICAgMjU2LCAyMzY1MCwgMjU2LCAyNzE1NSwgMjU2LCAyODEyMiwgMjU2LCAyODQzMSwgMjU2LCAzMjA0NywgMjU2LCAzMjMxMSwgCi0gICAgMjU2LCAzODQ3NSwgMjU2LCAyMTIwMiwgMjU2LCAzMjkwNywgMjU2LCAyMDk1NiwgMjU2LCAyMDk0MCwgMjU2LCAzMTI2MCwgCi0gICAgMjU2LCAzMjE5MCwgMjU2LCAzMzc3NywgMjU2LCAzODUxNywgMjU2LCAzNTcxMiwgMjU2LCAyNTI5NSwgMjU2LCAyNzEzOCwgCi0gICAgMjU2LCAzNTU4MiwgMjU2LCAyMDAyNSwgMjU2LCAyMzUyNywgMjU2LCAyNDU5NCwgMjU2LCAyOTU3NSwgMjU2LCAzMDA2NCwgCi0gICAgMjU2LCAyMTI3MSwgMjU2LCAzMDk3MSwgMjU2LCAyMDQxNSwgMjU2LCAyNDQ4OSwgMjU2LCAxOTk4MSwgMjU2LCAyNzg1MiwgCi0gICAgMjU2LCAyNTk3NiwgMjU2LCAzMjAzNCwgMjU2LCAyMTQ0MywgMjU2LCAyMjYyMiwgMjU2LCAzMDQ2NSwgMjU2LCAzMzg2NSwgCi0gICAgMjU2LCAzNTQ5OCwgMjU2LCAyNzU3OCwgMjU2LCAzNjc4NCwgMjU2LCAyNzc4NCwgMjU2LCAyNTM0MiwgMjU2LCAzMzUwOSwgCi0gICAgMjU2LCAyNTUwNCwgMjU2LCAzMDA1MywgMjU2LCAyMDE0MiwgMjU2LCAyMDg0MSwgMjU2LCAyMDkzNywgMjU2LCAyNjc1MywgCi0gICAgMjU2LCAzMTk3NSwgMjU2LCAzMzM5MSwgMjU2LCAzNTUzOCwgMjU2LCAzNzMyNywgMjU2LCAyMTIzNywgMjU2LCAyMTU3MCwgCi0gICAgMjU2LCAyMjg5OSwgMjU2LCAyNDMwMCwgMjU2LCAyNjA1MywgMjU2LCAyODY3MCwgMjU2LCAzMTAxOCwgMjU2LCAzODMxNywgCi0gICAgMjU2LCAzOTUzMCwgMjU2LCA0MDU5OSwgMjU2LCA0MDY1NCwgMjU2LCAyMTE0NywgMjU2LCAyNjMxMCwgMjU2LCAyNzUxMSwgCi0gICAgMjU2LCAzNjcwNiwgMjU2LCAyNDE4MCwgMjU2LCAyNDk3NiwgMjU2LCAyNTA4OCwgMjU2LCAyNTc1NCwgMjU2LCAyODQ1MSwgCi0gICAgMjU2LCAyOTAwMSwgMjU2LCAyOTgzMywgMjU2LCAzMTE3OCwgMjU2LCAzMjI0NCwgMjU2LCAzMjg3OSwgMjU2LCAzNjY0NiwgCi0gICAgMjU2LCAzNDAzMCwgMjU2LCAzNjg5OSwgMjU2LCAzNzcwNiwgMjU2LCAyMTAxNSwgMjU2LCAyMTE1NSwgMjU2LCAyMTY5MywgCi0gICAgMjU2LCAyODg3MiwgMjU2LCAzNTAxMCwgMjU2LCAzNTQ5OCwgMjU2LCAyNDI2NSwgMjU2LCAyNDU2NSwgMjU2LCAyNTQ2NywgCi0gICAgMjU2LCAyNzU2NiwgMjU2LCAzMTgwNiwgMjU2LCAyOTU1NywgMjU2LCAyMDE5NiwgMjU2LCAyMjI2NSwgMjU2LCAyMzUyNywgCi0gICAgMjU2LCAyMzk5NCwgMjU2LCAyNDYwNCwgMjU2LCAyOTYxOCwgMjU2LCAyOTgwMSwgMjU2LCAzMjY2NiwgMjU2LCAzMjgzOCwgCi0gICAgMjU2LCAzNzQyOCwgMjU2LCAzODY0NiwgMjU2LCAzODcyOCwgMjU2LCAzODkzNiwgMjU2LCAyMDM2MywgMjU2LCAzMTE1MCwgCi0gICAgMjU2LCAzNzMwMCwgMjU2LCAzODU4NCwgMjU2LCAyNDgwMSwgMjU2LCAyMDEwMiwgMjU2LCAyMDY5OCwgMjU2LCAyMzUzNCwgCi0gICAgMjU2LCAyMzYxNSwgMjU2LCAyNjAwOSwgMjU2LCAyNzEzOCwgMjU2LCAyOTEzNCwgMjU2LCAzMDI3NCwgMjU2LCAzNDA0NCwgCi0gICAgMjU2LCAzNjk4OCwgMjU2LCA0MDg0NSwgMjU2LCAyNjI0OCwgMjU2LCAzODQ0NiwgMjU2LCAyMTEyOSwgMjU2LCAyNjQ5MSwgCi0gICAgMjU2LCAyNjYxMSwgMjU2LCAyNzk2OSwgMjU2LCAyODMxNiwgMjU2LCAyOTcwNSwgMjU2LCAzMDA0MSwgMjU2LCAzMDgyNywgCi0gICAgMjU2LCAzMjAxNiwgMjU2LCAzOTAwNiwgMjU2LCAyMDg0NSwgMjU2LCAyNTEzNCwgMjU2LCAzODUyMCwgMjU2LCAyMDUyMywgCi0gICAgMjU2LCAyMzgzMywgMjU2LCAyODEzOCwgMjU2LCAzNjY1MCwgMjU2LCAyNDQ1OSwgMjU2LCAyNDkwMCwgMjU2LCAyNjY0NywgCi0gICAgMjU2LCAyOTU3NSwgMjU2LCAzODUzNCwgMjU2LCAyMTAzMywgMjU2LCAyMTUxOSwgMjU2LCAyMzY1MywgMjU2LCAyNjEzMSwgCi0gICAgMjU2LCAyNjQ0NiwgMjU2LCAyNjc5MiwgMjU2LCAyNzg3NywgMjU2LCAyOTcwMiwgMjU2LCAzMDE3OCwgMjU2LCAzMjYzMywgCi0gICAgMjU2LCAzNTAyMywgMjU2LCAzNTA0MSwgMjU2LCAzNzMyNCwgMjU2LCAzODYyNiwgMjU2LCAyMTMxMSwgMjU2LCAyODM0NiwgCi0gICAgMjU2LCAyMTUzMywgMjU2LCAyOTEzNiwgMjU2LCAyOTg0OCwgMjU2LCAzNDI5OCwgMjU2LCAzODU2MywgMjU2LCA0MDAyMywgCi0gICAgMjU2LCA0MDYwNywgMjU2LCAyNjUxOSwgMjU2LCAyODEwNywgMjU2LCAzMzI1NiwgMjU2LCAzMTQzNSwgMjU2LCAzMTUyMCwgCi0gICAgMjU2LCAzMTg5MCwgMjU2LCAyOTM3NiwgMjU2LCAyODgyNSwgMjU2LCAzNTY3MiwgMjU2LCAyMDE2MCwgMjU2LCAzMzU5MCwgCi0gICAgMjU2LCAyMTA1MCwgMjU2LCAyMDk5OSwgMjU2LCAyNDIzMCwgMjU2LCAyNTI5OSwgMjU2LCAzMTk1OCwgMjU2LCAyMzQyOSwgCi0gICAgMjU2LCAyNzkzNCwgMjU2LCAyNjI5MiwgMjU2LCAzNjY2NywgMjU2LCAzNDg5MiwgMjU2LCAzODQ3NywgMjU2LCAzNTIxMSwgCi0gICAgMjU2LCAyNDI3NSwgMjU2LCAyMDgwMCwgMjU2LCAyMTk1MiwgMjU2LCAyMjYxOCwgMjU2LCAyNjIyOCwgMjU2LCAyMDk1OCwgCi0gICAgMjU2LCAyOTQ4MiwgMjU2LCAzMDQxMCwgMjU2LCAzMTAzNiwgMjU2LCAzMTA3MCwgMjU2LCAzMTA3NywgMjU2LCAzMTExOSwgCi0gICAgMjU2LCAzODc0MiwgMjU2LCAzMTkzNCwgMjU2LCAzMjcwMSwgMjU2LCAzNDMyMiwgMjU2LCAzNTU3NiwgMjU2LCAzNjkyMCwgCi0gICAgMjU2LCAzNzExNywgMjU2LCAzOTE1MSwgMjU2LCAzOTE2NCwgMjU2LCAzOTIwOCwgMjU2LCA0MDM3MiwgMjU2LCAyMDM5OCwgCi0gICAgMjU2LCAyMDcxMSwgMjU2LCAyMDgxMywgMjU2LCAyMTE5MywgMjU2LCAyMTIyMCwgMjU2LCAyMTMyOSwgMjU2LCAyMTkxNywgCi0gICAgMjU2LCAyMjAyMiwgMjU2LCAyMjEyMCwgMjU2LCAyMjU5MiwgMjU2LCAyMjY5NiwgMjU2LCAyMzY1MiwgMjU2LCAyMzY2MiwgCi0gICAgMjU2LCAyNDcyNCwgMjU2LCAyNDkzNiwgMjU2LCAyNDk3NCwgMjU2LCAyNTA3NCwgMjU2LCAyNTkzNSwgMjU2LCAyNjA4MiwgCi0gICAgMjU2LCAyNjI1NywgMjU2LCAyNjc1NywgMjU2LCAyODAyMywgMjU2LCAyODE4NiwgMjU2LCAyODQ1MCwgMjU2LCAyOTAzOCwgCi0gICAgMjU2LCAyOTIyNywgMjU2LCAyOTczMCwgMjU2LCAzMDg2NSwgMjU2LCAzMTAzOCwgMjU2LCAzMTA0OSwgMjU2LCAzMTA0OCwgCi0gICAgMjU2LCAzMTA1NiwgMjU2LCAzMTA2MiwgMjU2LCAzMTA2OSwgMjU2LCAzMTExNywgMjU2LCAzMTExOCwgMjU2LCAzMTI5NiwgCi0gICAgMjU2LCAzMTM2MSwgMjU2LCAzMTY4MCwgMjU2LCAzMjI0NCwgMjU2LCAzMjI2NSwgMjU2LCAzMjMyMSwgMjU2LCAzMjYyNiwgCi0gICAgMjU2LCAzMjc3MywgMjU2LCAzMzI2MSwgMjU2LCAzMzQwMSwgMjU2LCAzMzQwMSwgMjU2LCAzMzg3OSwgMjU2LCAzNTA4OCwgCi0gICAgMjU2LCAzNTIyMiwgMjU2LCAzNTU4NSwgMjU2LCAzNTY0MSwgMjU2LCAzNjA1MSwgMjU2LCAzNjEwNCwgMjU2LCAzNjc5MCwgCi0gICAgMjU2LCAzNjkyMCwgMjU2LCAzODYyNywgMjU2LCAzODkxMSwgMjU2LCAzODk3MSwgMjU2LCAyNDY5MywgMjU2LCAxNDgyMDYsIAotICAgIDI1NiwgMzMzMDQsIDI1NiwgMjAwMDYsIDI1NiwgMjA5MTcsIDI1NiwgMjA4NDAsIDI1NiwgMjAzNTIsIDI1NiwgMjA4MDUsIAotICAgIDI1NiwgMjA4NjQsIDI1NiwgMjExOTEsIDI1NiwgMjEyNDIsIDI1NiwgMjE5MTcsIDI1NiwgMjE4NDUsIDI1NiwgMjE5MTMsIAotICAgIDI1NiwgMjE5ODYsIDI1NiwgMjI2MTgsIDI1NiwgMjI3MDcsIDI1NiwgMjI4NTIsIDI1NiwgMjI4NjgsIDI1NiwgMjMxMzgsIAotICAgIDI1NiwgMjMzMzYsIDI1NiwgMjQyNzQsIDI1NiwgMjQyODEsIDI1NiwgMjQ0MjUsIDI1NiwgMjQ0OTMsIDI1NiwgMjQ3OTIsIAotICAgIDI1NiwgMjQ5MTAsIDI1NiwgMjQ4NDAsIDI1NiwgMjQ5NzQsIDI1NiwgMjQ5MjgsIDI1NiwgMjUwNzQsIDI1NiwgMjUxNDAsIAotICAgIDI1NiwgMjU1NDAsIDI1NiwgMjU2MjgsIDI1NiwgMjU2ODIsIDI1NiwgMjU5NDIsIDI1NiwgMjYyMjgsIDI1NiwgMjYzOTEsIAotICAgIDI1NiwgMjYzOTUsIDI1NiwgMjY0NTQsIDI1NiwgMjc1MTMsIDI1NiwgMjc1NzgsIDI1NiwgMjc5NjksIDI1NiwgMjgzNzksIAotICAgIDI1NiwgMjgzNjMsIDI1NiwgMjg0NTAsIDI1NiwgMjg3MDIsIDI1NiwgMjkwMzgsIDI1NiwgMzA2MzEsIDI1NiwgMjkyMzcsIAotICAgIDI1NiwgMjkzNTksIDI1NiwgMjk0ODIsIDI1NiwgMjk4MDksIDI1NiwgMjk5NTgsIDI1NiwgMzAwMTEsIDI1NiwgMzAyMzcsIAotICAgIDI1NiwgMzAyMzksIDI1NiwgMzA0MTAsIDI1NiwgMzA0MjcsIDI1NiwgMzA0NTIsIDI1NiwgMzA1MzgsIDI1NiwgMzA1MjgsIAotICAgIDI1NiwgMzA5MjQsIDI1NiwgMzE0MDksIDI1NiwgMzE2ODAsIDI1NiwgMzE4NjcsIDI1NiwgMzIwOTEsIDI1NiwgMzIyNDQsIAotICAgIDI1NiwgMzI1NzQsIDI1NiwgMzI3NzMsIDI1NiwgMzM2MTgsIDI1NiwgMzM3NzUsIDI1NiwgMzQ2ODEsIDI1NiwgMzUxMzcsIAotICAgIDI1NiwgMzUyMDYsIDI1NiwgMzUyMjIsIDI1NiwgMzU1MTksIDI1NiwgMzU1NzYsIDI1NiwgMzU1MzEsIDI1NiwgMzU1ODUsIAotICAgIDI1NiwgMzU1ODIsIDI1NiwgMzU1NjUsIDI1NiwgMzU2NDEsIDI1NiwgMzU3MjIsIDI1NiwgMzYxMDQsIDI1NiwgMzY2NjQsIAotICAgIDI1NiwgMzY5NzgsIDI1NiwgMzcyNzMsIDI1NiwgMzc0OTQsIDI1NiwgMzg1MjQsIDI1NiwgMzg2MjcsIDI1NiwgMzg3NDIsIAotICAgIDI1NiwgMzg4NzUsIDI1NiwgMzg5MTEsIDI1NiwgMzg5MjMsIDI1NiwgMzg5NzEsIDI1NiwgMzk2OTgsIDI1NiwgNDA4NjAsIAotICAgIDI1NiwgMTQxMzg2LCAyNTYsIDE0MTM4MCwgMjU2LCAxNDQzNDEsIDI1NiwgMTUyNjEsIDI1NiwgMTY0MDgsIDI1NiwgCi0gICAgMTY0NDEsIDI1NiwgMTUyMTM3LCAyNTYsIDE1NDgzMiwgMjU2LCAxNjM1MzksIDI1NiwgNDA3NzEsIDI1NiwgNDA4NDYsIAotICAgIDUxNCwgMTAyLCAxMDIsIDUxNCwgMTAyLCAxMDUsIDUxNCwgMTAyLCAxMDgsIDc3MCwgMTAyLCAxMDIsIDEwNSwgNzcwLCAKLSAgICAxMDIsIDEwMiwgMTA4LCA1MTQsIDM4MywgMTE2LCA1MTQsIDExNSwgMTE2LCA1MTQsIDEzOTYsIDEzOTgsIDUxNCwgMTM5NiwgCi0gICAgMTM4MSwgNTE0LCAxMzk2LCAxMzg3LCA1MTQsIDE0MDYsIDEzOTgsIDUxNCwgMTM5NiwgMTM4OSwgNTEyLCAxNDk3LCAxNDYwLCAKLSAgICA1MTIsIDE1MjIsIDE0NjMsIDI2MiwgMTUwNiwgMjYyLCAxNDg4LCAyNjIsIDE0OTEsIDI2MiwgMTQ5MiwgMjYyLCAxNDk5LCAKLSAgICAyNjIsIDE1MDAsIDI2MiwgMTUwMSwgMjYyLCAxNTEyLCAyNjIsIDE1MTQsIDI2MiwgNDMsIDUxMiwgMTUxMywgMTQ3MywgCi0gICAgNTEyLCAxNTEzLCAxNDc0LCA1MTIsIDY0MzI5LCAxNDczLCA1MTIsIDY0MzI5LCAxNDc0LCA1MTIsIDE0ODgsIDE0NjMsIAotICAgIDUxMiwgMTQ4OCwgMTQ2NCwgNTEyLCAxNDg4LCAxNDY4LCA1MTIsIDE0ODksIDE0NjgsIDUxMiwgMTQ5MCwgMTQ2OCwgNTEyLCAKLSAgICAxNDkxLCAxNDY4LCA1MTIsIDE0OTIsIDE0NjgsIDUxMiwgMTQ5MywgMTQ2OCwgNTEyLCAxNDk0LCAxNDY4LCA1MTIsIDE0OTYsIAotICAgIDE0NjgsIDUxMiwgMTQ5NywgMTQ2OCwgNTEyLCAxNDk4LCAxNDY4LCA1MTIsIDE0OTksIDE0NjgsIDUxMiwgMTUwMCwgMTQ2OCwgCi0gICAgNTEyLCAxNTAyLCAxNDY4LCA1MTIsIDE1MDQsIDE0NjgsIDUxMiwgMTUwNSwgMTQ2OCwgNTEyLCAxNTA3LCAxNDY4LCA1MTIsIAotICAgIDE1MDgsIDE0NjgsIDUxMiwgMTUxMCwgMTQ2OCwgNTEyLCAxNTExLCAxNDY4LCA1MTIsIDE1MTIsIDE0NjgsIDUxMiwgMTUxMywgCi0gICAgMTQ2OCwgNTEyLCAxNTE0LCAxNDY4LCA1MTIsIDE0OTMsIDE0NjUsIDUxMiwgMTQ4OSwgMTQ3MSwgNTEyLCAxNDk5LCAxNDcxLCAKLSAgICA1MTIsIDE1MDgsIDE0NzEsIDUxNCwgMTQ4OCwgMTUwMCwgMjY3LCAxNjQ5LCAyNjgsIDE2NDksIDI2NywgMTY1OSwgMjY4LCAKLSAgICAxNjU5LCAyNjksIDE2NTksIDI3MCwgMTY1OSwgMjY3LCAxNjYyLCAyNjgsIDE2NjIsIDI2OSwgMTY2MiwgMjcwLCAxNjYyLCAKLSAgICAyNjcsIDE2NjQsIDI2OCwgMTY2NCwgMjY5LCAxNjY0LCAyNzAsIDE2NjQsIDI2NywgMTY1OCwgMjY4LCAxNjU4LCAyNjksIAotICAgIDE2NTgsIDI3MCwgMTY1OCwgMjY3LCAxNjYzLCAyNjgsIDE2NjMsIDI2OSwgMTY2MywgMjcwLCAxNjYzLCAyNjcsIDE2NTcsIAotICAgIDI2OCwgMTY1NywgMjY5LCAxNjU3LCAyNzAsIDE2NTcsIDI2NywgMTcwMCwgMjY4LCAxNzAwLCAyNjksIDE3MDAsIDI3MCwgCi0gICAgMTcwMCwgMjY3LCAxNzAyLCAyNjgsIDE3MDIsIDI2OSwgMTcwMiwgMjcwLCAxNzAyLCAyNjcsIDE2NjgsIDI2OCwgMTY2OCwgCi0gICAgMjY5LCAxNjY4LCAyNzAsIDE2NjgsIDI2NywgMTY2NywgMjY4LCAxNjY3LCAyNjksIDE2NjcsIDI3MCwgMTY2NywgMjY3LCAKLSAgICAxNjcwLCAyNjgsIDE2NzAsIDI2OSwgMTY3MCwgMjcwLCAxNjcwLCAyNjcsIDE2NzEsIDI2OCwgMTY3MSwgMjY5LCAxNjcxLCAKLSAgICAyNzAsIDE2NzEsIDI2NywgMTY3NywgMjY4LCAxNjc3LCAyNjcsIDE2NzYsIDI2OCwgMTY3NiwgMjY3LCAxNjc4LCAyNjgsIAotICAgIDE2NzgsIDI2NywgMTY3MiwgMjY4LCAxNjcyLCAyNjcsIDE2ODgsIDI2OCwgMTY4OCwgMjY3LCAxNjgxLCAyNjgsIDE2ODEsIAotICAgIDI2NywgMTcwNSwgMjY4LCAxNzA1LCAyNjksIDE3MDUsIDI3MCwgMTcwNSwgMjY3LCAxNzExLCAyNjgsIDE3MTEsIDI2OSwgCi0gICAgMTcxMSwgMjcwLCAxNzExLCAyNjcsIDE3MTUsIDI2OCwgMTcxNSwgMjY5LCAxNzE1LCAyNzAsIDE3MTUsIDI2NywgMTcxMywgCi0gICAgMjY4LCAxNzEzLCAyNjksIDE3MTMsIDI3MCwgMTcxMywgMjY3LCAxNzIyLCAyNjgsIDE3MjIsIDI2NywgMTcyMywgMjY4LCAKLSAgICAxNzIzLCAyNjksIDE3MjMsIDI3MCwgMTcyMywgMjY3LCAxNzI4LCAyNjgsIDE3MjgsIDI2NywgMTcyOSwgMjY4LCAxNzI5LCAKLSAgICAyNjksIDE3MjksIDI3MCwgMTcyOSwgMjY3LCAxNzI2LCAyNjgsIDE3MjYsIDI2OSwgMTcyNiwgMjcwLCAxNzI2LCAyNjcsIAotICAgIDE3NDYsIDI2OCwgMTc0NiwgMjY3LCAxNzQ3LCAyNjgsIDE3NDcsIDI2NywgMTcwOSwgMjY4LCAxNzA5LCAyNjksIDE3MDksIAotICAgIDI3MCwgMTcwOSwgMjY3LCAxNzM1LCAyNjgsIDE3MzUsIDI2NywgMTczNCwgMjY4LCAxNzM0LCAyNjcsIDE3MzYsIDI2OCwgCi0gICAgMTczNiwgMjY3LCAxNjU1LCAyNjcsIDE3MzksIDI2OCwgMTczOSwgMjY3LCAxNzMzLCAyNjgsIDE3MzMsIDI2NywgMTczNywgCi0gICAgMjY4LCAxNzM3LCAyNjcsIDE3NDQsIDI2OCwgMTc0NCwgMjY5LCAxNzQ0LCAyNzAsIDE3NDQsIDI2OSwgMTYwOSwgMjcwLCAKLSAgICAxNjA5LCA1MjMsIDE1NzQsIDE1NzUsIDUyNCwgMTU3NCwgMTU3NSwgNTIzLCAxNTc0LCAxNzQ5LCA1MjQsIDE1NzQsIDE3NDksIAotICAgIDUyMywgMTU3NCwgMTYwOCwgNTI0LCAxNTc0LCAxNjA4LCA1MjMsIDE1NzQsIDE3MzUsIDUyNCwgMTU3NCwgMTczNSwgNTIzLCAKLSAgICAxNTc0LCAxNzM0LCA1MjQsIDE1NzQsIDE3MzQsIDUyMywgMTU3NCwgMTczNiwgNTI0LCAxNTc0LCAxNzM2LCA1MjMsIDE1NzQsIAotICAgIDE3NDQsIDUyNCwgMTU3NCwgMTc0NCwgNTI1LCAxNTc0LCAxNzQ0LCA1MjMsIDE1NzQsIDE2MDksIDUyNCwgMTU3NCwgMTYwOSwgCi0gICAgNTI1LCAxNTc0LCAxNjA5LCAyNjcsIDE3NDAsIDI2OCwgMTc0MCwgMjY5LCAxNzQwLCAyNzAsIDE3NDAsIDUyMywgMTU3NCwgCi0gICAgMTU4MCwgNTIzLCAxNTc0LCAxNTgxLCA1MjMsIDE1NzQsIDE2MDUsIDUyMywgMTU3NCwgMTYwOSwgNTIzLCAxNTc0LCAxNjEwLCAKLSAgICA1MjMsIDE1NzYsIDE1ODAsIDUyMywgMTU3NiwgMTU4MSwgNTIzLCAxNTc2LCAxNTgyLCA1MjMsIDE1NzYsIDE2MDUsIDUyMywgCi0gICAgMTU3NiwgMTYwOSwgNTIzLCAxNTc2LCAxNjEwLCA1MjMsIDE1NzgsIDE1ODAsIDUyMywgMTU3OCwgMTU4MSwgNTIzLCAxNTc4LCAKLSAgICAxNTgyLCA1MjMsIDE1NzgsIDE2MDUsIDUyMywgMTU3OCwgMTYwOSwgNTIzLCAxNTc4LCAxNjEwLCA1MjMsIDE1NzksIDE1ODAsIAotICAgIDUyMywgMTU3OSwgMTYwNSwgNTIzLCAxNTc5LCAxNjA5LCA1MjMsIDE1NzksIDE2MTAsIDUyMywgMTU4MCwgMTU4MSwgNTIzLCAKLSAgICAxNTgwLCAxNjA1LCA1MjMsIDE1ODEsIDE1ODAsIDUyMywgMTU4MSwgMTYwNSwgNTIzLCAxNTgyLCAxNTgwLCA1MjMsIDE1ODIsIAotICAgIDE1ODEsIDUyMywgMTU4MiwgMTYwNSwgNTIzLCAxNTg3LCAxNTgwLCA1MjMsIDE1ODcsIDE1ODEsIDUyMywgMTU4NywgMTU4MiwgCi0gICAgNTIzLCAxNTg3LCAxNjA1LCA1MjMsIDE1ODksIDE1ODEsIDUyMywgMTU4OSwgMTYwNSwgNTIzLCAxNTkwLCAxNTgwLCA1MjMsIAotICAgIDE1OTAsIDE1ODEsIDUyMywgMTU5MCwgMTU4MiwgNTIzLCAxNTkwLCAxNjA1LCA1MjMsIDE1OTEsIDE1ODEsIDUyMywgMTU5MSwgCi0gICAgMTYwNSwgNTIzLCAxNTkyLCAxNjA1LCA1MjMsIDE1OTMsIDE1ODAsIDUyMywgMTU5MywgMTYwNSwgNTIzLCAxNTk0LCAxNTgwLCAKLSAgICA1MjMsIDE1OTQsIDE2MDUsIDUyMywgMTYwMSwgMTU4MCwgNTIzLCAxNjAxLCAxNTgxLCA1MjMsIDE2MDEsIDE1ODIsIDUyMywgCi0gICAgMTYwMSwgMTYwNSwgNTIzLCAxNjAxLCAxNjA5LCA1MjMsIDE2MDEsIDE2MTAsIDUyMywgMTYwMiwgMTU4MSwgNTIzLCAxNjAyLCAKLSAgICAxNjA1LCA1MjMsIDE2MDIsIDE2MDksIDUyMywgMTYwMiwgMTYxMCwgNTIzLCAxNjAzLCAxNTc1LCA1MjMsIDE2MDMsIDE1ODAsIAotICAgIDUyMywgMTYwMywgMTU4MSwgNTIzLCAxNjAzLCAxNTgyLCA1MjMsIDE2MDMsIDE2MDQsIDUyMywgMTYwMywgMTYwNSwgNTIzLCAKLSAgICAxNjAzLCAxNjA5LCA1MjMsIDE2MDMsIDE2MTAsIDUyMywgMTYwNCwgMTU4MCwgNTIzLCAxNjA0LCAxNTgxLCA1MjMsIDE2MDQsIAotICAgIDE1ODIsIDUyMywgMTYwNCwgMTYwNSwgNTIzLCAxNjA0LCAxNjA5LCA1MjMsIDE2MDQsIDE2MTAsIDUyMywgMTYwNSwgMTU4MCwgCi0gICAgNTIzLCAxNjA1LCAxNTgxLCA1MjMsIDE2MDUsIDE1ODIsIDUyMywgMTYwNSwgMTYwNSwgNTIzLCAxNjA1LCAxNjA5LCA1MjMsIAotICAgIDE2MDUsIDE2MTAsIDUyMywgMTYwNiwgMTU4MCwgNTIzLCAxNjA2LCAxNTgxLCA1MjMsIDE2MDYsIDE1ODIsIDUyMywgMTYwNiwgCi0gICAgMTYwNSwgNTIzLCAxNjA2LCAxNjA5LCA1MjMsIDE2MDYsIDE2MTAsIDUyMywgMTYwNywgMTU4MCwgNTIzLCAxNjA3LCAxNjA1LCAKLSAgICA1MjMsIDE2MDcsIDE2MDksIDUyMywgMTYwNywgMTYxMCwgNTIzLCAxNjEwLCAxNTgwLCA1MjMsIDE2MTAsIDE1ODEsIDUyMywgCi0gICAgMTYxMCwgMTU4MiwgNTIzLCAxNjEwLCAxNjA1LCA1MjMsIDE2MTAsIDE2MDksIDUyMywgMTYxMCwgMTYxMCwgNTIzLCAxNTg0LCAKLSAgICAxNjQ4LCA1MjMsIDE1ODUsIDE2NDgsIDUyMywgMTYwOSwgMTY0OCwgNzc5LCAzMiwgMTYxMiwgMTYxNywgNzc5LCAzMiwgCi0gICAgMTYxMywgMTYxNywgNzc5LCAzMiwgMTYxNCwgMTYxNywgNzc5LCAzMiwgMTYxNSwgMTYxNywgNzc5LCAzMiwgMTYxNiwgCi0gICAgMTYxNywgNzc5LCAzMiwgMTYxNywgMTY0OCwgNTI0LCAxNTc0LCAxNTg1LCA1MjQsIDE1NzQsIDE1ODYsIDUyNCwgMTU3NCwgCi0gICAgMTYwNSwgNTI0LCAxNTc0LCAxNjA2LCA1MjQsIDE1NzQsIDE2MDksIDUyNCwgMTU3NCwgMTYxMCwgNTI0LCAxNTc2LCAxNTg1LCAKLSAgICA1MjQsIDE1NzYsIDE1ODYsIDUyNCwgMTU3NiwgMTYwNSwgNTI0LCAxNTc2LCAxNjA2LCA1MjQsIDE1NzYsIDE2MDksIDUyNCwgCi0gICAgMTU3NiwgMTYxMCwgNTI0LCAxNTc4LCAxNTg1LCA1MjQsIDE1NzgsIDE1ODYsIDUyNCwgMTU3OCwgMTYwNSwgNTI0LCAxNTc4LCAKLSAgICAxNjA2LCA1MjQsIDE1NzgsIDE2MDksIDUyNCwgMTU3OCwgMTYxMCwgNTI0LCAxNTc5LCAxNTg1LCA1MjQsIDE1NzksIDE1ODYsIAotICAgIDUyNCwgMTU3OSwgMTYwNSwgNTI0LCAxNTc5LCAxNjA2LCA1MjQsIDE1NzksIDE2MDksIDUyNCwgMTU3OSwgMTYxMCwgNTI0LCAKLSAgICAxNjAxLCAxNjA5LCA1MjQsIDE2MDEsIDE2MTAsIDUyNCwgMTYwMiwgMTYwOSwgNTI0LCAxNjAyLCAxNjEwLCA1MjQsIDE2MDMsIAotICAgIDE1NzUsIDUyNCwgMTYwMywgMTYwNCwgNTI0LCAxNjAzLCAxNjA1LCA1MjQsIDE2MDMsIDE2MDksIDUyNCwgMTYwMywgMTYxMCwgCi0gICAgNTI0LCAxNjA0LCAxNjA1LCA1MjQsIDE2MDQsIDE2MDksIDUyNCwgMTYwNCwgMTYxMCwgNTI0LCAxNjA1LCAxNTc1LCA1MjQsIAotICAgIDE2MDUsIDE2MDUsIDUyNCwgMTYwNiwgMTU4NSwgNTI0LCAxNjA2LCAxNTg2LCA1MjQsIDE2MDYsIDE2MDUsIDUyNCwgMTYwNiwgCi0gICAgMTYwNiwgNTI0LCAxNjA2LCAxNjA5LCA1MjQsIDE2MDYsIDE2MTAsIDUyNCwgMTYwOSwgMTY0OCwgNTI0LCAxNjEwLCAxNTg1LCAKLSAgICA1MjQsIDE2MTAsIDE1ODYsIDUyNCwgMTYxMCwgMTYwNSwgNTI0LCAxNjEwLCAxNjA2LCA1MjQsIDE2MTAsIDE2MDksIDUyNCwgCi0gICAgMTYxMCwgMTYxMCwgNTI1LCAxNTc0LCAxNTgwLCA1MjUsIDE1NzQsIDE1ODEsIDUyNSwgMTU3NCwgMTU4MiwgNTI1LCAxNTc0LCAKLSAgICAxNjA1LCA1MjUsIDE1NzQsIDE2MDcsIDUyNSwgMTU3NiwgMTU4MCwgNTI1LCAxNTc2LCAxNTgxLCA1MjUsIDE1NzYsIDE1ODIsIAotICAgIDUyNSwgMTU3NiwgMTYwNSwgNTI1LCAxNTc2LCAxNjA3LCA1MjUsIDE1NzgsIDE1ODAsIDUyNSwgMTU3OCwgMTU4MSwgNTI1LCAKLSAgICAxNTc4LCAxNTgyLCA1MjUsIDE1NzgsIDE2MDUsIDUyNSwgMTU3OCwgMTYwNywgNTI1LCAxNTc5LCAxNjA1LCA1MjUsIDE1ODAsIAotICAgIDE1ODEsIDUyNSwgMTU4MCwgMTYwNSwgNTI1LCAxNTgxLCAxNTgwLCA1MjUsIDE1ODEsIDE2MDUsIDUyNSwgMTU4MiwgMTU4MCwgCi0gICAgNTI1LCAxNTgyLCAxNjA1LCA1MjUsIDE1ODcsIDE1ODAsIDUyNSwgMTU4NywgMTU4MSwgNTI1LCAxNTg3LCAxNTgyLCA1MjUsIAotICAgIDE1ODcsIDE2MDUsIDUyNSwgMTU4OSwgMTU4MSwgNTI1LCAxNTg5LCAxNTgyLCA1MjUsIDE1ODksIDE2MDUsIDUyNSwgMTU5MCwgCi0gICAgMTU4MCwgNTI1LCAxNTkwLCAxNTgxLCA1MjUsIDE1OTAsIDE1ODIsIDUyNSwgMTU5MCwgMTYwNSwgNTI1LCAxNTkxLCAxNTgxLCAKLSAgICA1MjUsIDE1OTIsIDE2MDUsIDUyNSwgMTU5MywgMTU4MCwgNTI1LCAxNTkzLCAxNjA1LCA1MjUsIDE1OTQsIDE1ODAsIDUyNSwgCi0gICAgMTU5NCwgMTYwNSwgNTI1LCAxNjAxLCAxNTgwLCA1MjUsIDE2MDEsIDE1ODEsIDUyNSwgMTYwMSwgMTU4MiwgNTI1LCAxNjAxLCAKLSAgICAxNjA1LCA1MjUsIDE2MDIsIDE1ODEsIDUyNSwgMTYwMiwgMTYwNSwgNTI1LCAxNjAzLCAxNTgwLCA1MjUsIDE2MDMsIDE1ODEsIAotICAgIDUyNSwgMTYwMywgMTU4MiwgNTI1LCAxNjAzLCAxNjA0LCA1MjUsIDE2MDMsIDE2MDUsIDUyNSwgMTYwNCwgMTU4MCwgNTI1LCAKLSAgICAxNjA0LCAxNTgxLCA1MjUsIDE2MDQsIDE1ODIsIDUyNSwgMTYwNCwgMTYwNSwgNTI1LCAxNjA0LCAxNjA3LCA1MjUsIDE2MDUsIAotICAgIDE1ODAsIDUyNSwgMTYwNSwgMTU4MSwgNTI1LCAxNjA1LCAxNTgyLCA1MjUsIDE2MDUsIDE2MDUsIDUyNSwgMTYwNiwgMTU4MCwgCi0gICAgNTI1LCAxNjA2LCAxNTgxLCA1MjUsIDE2MDYsIDE1ODIsIDUyNSwgMTYwNiwgMTYwNSwgNTI1LCAxNjA2LCAxNjA3LCA1MjUsIAotICAgIDE2MDcsIDE1ODAsIDUyNSwgMTYwNywgMTYwNSwgNTI1LCAxNjA3LCAxNjQ4LCA1MjUsIDE2MTAsIDE1ODAsIDUyNSwgMTYxMCwgCi0gICAgMTU4MSwgNTI1LCAxNjEwLCAxNTgyLCA1MjUsIDE2MTAsIDE2MDUsIDUyNSwgMTYxMCwgMTYwNywgNTI2LCAxNTc0LCAxNjA1LCAKLSAgICA1MjYsIDE1NzQsIDE2MDcsIDUyNiwgMTU3NiwgMTYwNSwgNTI2LCAxNTc2LCAxNjA3LCA1MjYsIDE1NzgsIDE2MDUsIDUyNiwgCi0gICAgMTU3OCwgMTYwNywgNTI2LCAxNTc5LCAxNjA1LCA1MjYsIDE1NzksIDE2MDcsIDUyNiwgMTU4NywgMTYwNSwgNTI2LCAxNTg3LCAKLSAgICAxNjA3LCA1MjYsIDE1ODgsIDE2MDUsIDUyNiwgMTU4OCwgMTYwNywgNTI2LCAxNjAzLCAxNjA0LCA1MjYsIDE2MDMsIDE2MDUsIAotICAgIDUyNiwgMTYwNCwgMTYwNSwgNTI2LCAxNjA2LCAxNjA1LCA1MjYsIDE2MDYsIDE2MDcsIDUyNiwgMTYxMCwgMTYwNSwgNTI2LCAKLSAgICAxNjEwLCAxNjA3LCA3ODIsIDE2MDAsIDE2MTQsIDE2MTcsIDc4MiwgMTYwMCwgMTYxNSwgMTYxNywgNzgyLCAxNjAwLCAKLSAgICAxNjE2LCAxNjE3LCA1MjMsIDE1OTEsIDE2MDksIDUyMywgMTU5MSwgMTYxMCwgNTIzLCAxNTkzLCAxNjA5LCA1MjMsIDE1OTMsIAotICAgIDE2MTAsIDUyMywgMTU5NCwgMTYwOSwgNTIzLCAxNTk0LCAxNjEwLCA1MjMsIDE1ODcsIDE2MDksIDUyMywgMTU4NywgMTYxMCwgCi0gICAgNTIzLCAxNTg4LCAxNjA5LCA1MjMsIDE1ODgsIDE2MTAsIDUyMywgMTU4MSwgMTYwOSwgNTIzLCAxNTgxLCAxNjEwLCA1MjMsIAotICAgIDE1ODAsIDE2MDksIDUyMywgMTU4MCwgMTYxMCwgNTIzLCAxNTgyLCAxNjA5LCA1MjMsIDE1ODIsIDE2MTAsIDUyMywgMTU4OSwgCi0gICAgMTYwOSwgNTIzLCAxNTg5LCAxNjEwLCA1MjMsIDE1OTAsIDE2MDksIDUyMywgMTU5MCwgMTYxMCwgNTIzLCAxNTg4LCAxNTgwLCAKLSAgICA1MjMsIDE1ODgsIDE1ODEsIDUyMywgMTU4OCwgMTU4MiwgNTIzLCAxNTg4LCAxNjA1LCA1MjMsIDE1ODgsIDE1ODUsIDUyMywgCi0gICAgMTU4NywgMTU4NSwgNTIzLCAxNTg5LCAxNTg1LCA1MjMsIDE1OTAsIDE1ODUsIDUyNCwgMTU5MSwgMTYwOSwgNTI0LCAxNTkxLCAKLSAgICAxNjEwLCA1MjQsIDE1OTMsIDE2MDksIDUyNCwgMTU5MywgMTYxMCwgNTI0LCAxNTk0LCAxNjA5LCA1MjQsIDE1OTQsIDE2MTAsIAotICAgIDUyNCwgMTU4NywgMTYwOSwgNTI0LCAxNTg3LCAxNjEwLCA1MjQsIDE1ODgsIDE2MDksIDUyNCwgMTU4OCwgMTYxMCwgNTI0LCAKLSAgICAxNTgxLCAxNjA5LCA1MjQsIDE1ODEsIDE2MTAsIDUyNCwgMTU4MCwgMTYwOSwgNTI0LCAxNTgwLCAxNjEwLCA1MjQsIDE1ODIsIAotICAgIDE2MDksIDUyNCwgMTU4MiwgMTYxMCwgNTI0LCAxNTg5LCAxNjA5LCA1MjQsIDE1ODksIDE2MTAsIDUyNCwgMTU5MCwgMTYwOSwgCi0gICAgNTI0LCAxNTkwLCAxNjEwLCA1MjQsIDE1ODgsIDE1ODAsIDUyNCwgMTU4OCwgMTU4MSwgNTI0LCAxNTg4LCAxNTgyLCA1MjQsIAotICAgIDE1ODgsIDE2MDUsIDUyNCwgMTU4OCwgMTU4NSwgNTI0LCAxNTg3LCAxNTg1LCA1MjQsIDE1ODksIDE1ODUsIDUyNCwgMTU5MCwgCi0gICAgMTU4NSwgNTI1LCAxNTg4LCAxNTgwLCA1MjUsIDE1ODgsIDE1ODEsIDUyNSwgMTU4OCwgMTU4MiwgNTI1LCAxNTg4LCAxNjA1LCAKLSAgICA1MjUsIDE1ODcsIDE2MDcsIDUyNSwgMTU4OCwgMTYwNywgNTI1LCAxNTkxLCAxNjA1LCA1MjYsIDE1ODcsIDE1ODAsIDUyNiwgCi0gICAgMTU4NywgMTU4MSwgNTI2LCAxNTg3LCAxNTgyLCA1MjYsIDE1ODgsIDE1ODAsIDUyNiwgMTU4OCwgMTU4MSwgNTI2LCAxNTg4LCAKLSAgICAxNTgyLCA1MjYsIDE1OTEsIDE2MDUsIDUyNiwgMTU5MiwgMTYwNSwgNTI0LCAxNTc1LCAxNjExLCA1MjMsIDE1NzUsIDE2MTEsIAotICAgIDc4MSwgMTU3OCwgMTU4MCwgMTYwNSwgNzgwLCAxNTc4LCAxNTgxLCAxNTgwLCA3ODEsIDE1NzgsIDE1ODEsIDE1ODAsIDc4MSwgCi0gICAgMTU3OCwgMTU4MSwgMTYwNSwgNzgxLCAxNTc4LCAxNTgyLCAxNjA1LCA3ODEsIDE1NzgsIDE2MDUsIDE1ODAsIDc4MSwgCi0gICAgMTU3OCwgMTYwNSwgMTU4MSwgNzgxLCAxNTc4LCAxNjA1LCAxNTgyLCA3ODAsIDE1ODAsIDE2MDUsIDE1ODEsIDc4MSwgCi0gICAgMTU4MCwgMTYwNSwgMTU4MSwgNzgwLCAxNTgxLCAxNjA1LCAxNjEwLCA3ODAsIDE1ODEsIDE2MDUsIDE2MDksIDc4MSwgCi0gICAgMTU4NywgMTU4MSwgMTU4MCwgNzgxLCAxNTg3LCAxNTgwLCAxNTgxLCA3ODAsIDE1ODcsIDE1ODAsIDE2MDksIDc4MCwgCi0gICAgMTU4NywgMTYwNSwgMTU4MSwgNzgxLCAxNTg3LCAxNjA1LCAxNTgxLCA3ODEsIDE1ODcsIDE2MDUsIDE1ODAsIDc4MCwgCi0gICAgMTU4NywgMTYwNSwgMTYwNSwgNzgxLCAxNTg3LCAxNjA1LCAxNjA1LCA3ODAsIDE1ODksIDE1ODEsIDE1ODEsIDc4MSwgCi0gICAgMTU4OSwgMTU4MSwgMTU4MSwgNzgwLCAxNTg5LCAxNjA1LCAxNjA1LCA3ODAsIDE1ODgsIDE1ODEsIDE2MDUsIDc4MSwgCi0gICAgMTU4OCwgMTU4MSwgMTYwNSwgNzgwLCAxNTg4LCAxNTgwLCAxNjEwLCA3ODAsIDE1ODgsIDE2MDUsIDE1ODIsIDc4MSwgCi0gICAgMTU4OCwgMTYwNSwgMTU4MiwgNzgwLCAxNTg4LCAxNjA1LCAxNjA1LCA3ODEsIDE1ODgsIDE2MDUsIDE2MDUsIDc4MCwgCi0gICAgMTU5MCwgMTU4MSwgMTYwOSwgNzgwLCAxNTkwLCAxNTgyLCAxNjA1LCA3ODEsIDE1OTAsIDE1ODIsIDE2MDUsIDc4MCwgCi0gICAgMTU5MSwgMTYwNSwgMTU4MSwgNzgxLCAxNTkxLCAxNjA1LCAxNTgxLCA3ODEsIDE1OTEsIDE2MDUsIDE2MDUsIDc4MCwgCi0gICAgMTU5MSwgMTYwNSwgMTYxMCwgNzgwLCAxNTkzLCAxNTgwLCAxNjA1LCA3ODAsIDE1OTMsIDE2MDUsIDE2MDUsIDc4MSwgCi0gICAgMTU5MywgMTYwNSwgMTYwNSwgNzgwLCAxNTkzLCAxNjA1LCAxNjA5LCA3ODAsIDE1OTQsIDE2MDUsIDE2MDUsIDc4MCwgCi0gICAgMTU5NCwgMTYwNSwgMTYxMCwgNzgwLCAxNTk0LCAxNjA1LCAxNjA5LCA3ODAsIDE2MDEsIDE1ODIsIDE2MDUsIDc4MSwgCi0gICAgMTYwMSwgMTU4MiwgMTYwNSwgNzgwLCAxNjAyLCAxNjA1LCAxNTgxLCA3ODAsIDE2MDIsIDE2MDUsIDE2MDUsIDc4MCwgCi0gICAgMTYwNCwgMTU4MSwgMTYwNSwgNzgwLCAxNjA0LCAxNTgxLCAxNjEwLCA3ODAsIDE2MDQsIDE1ODEsIDE2MDksIDc4MSwgCi0gICAgMTYwNCwgMTU4MCwgMTU4MCwgNzgwLCAxNjA0LCAxNTgwLCAxNTgwLCA3ODAsIDE2MDQsIDE1ODIsIDE2MDUsIDc4MSwgCi0gICAgMTYwNCwgMTU4MiwgMTYwNSwgNzgwLCAxNjA0LCAxNjA1LCAxNTgxLCA3ODEsIDE2MDQsIDE2MDUsIDE1ODEsIDc4MSwgCi0gICAgMTYwNSwgMTU4MSwgMTU4MCwgNzgxLCAxNjA1LCAxNTgxLCAxNjA1LCA3ODAsIDE2MDUsIDE1ODEsIDE2MTAsIDc4MSwgCi0gICAgMTYwNSwgMTU4MCwgMTU4MSwgNzgxLCAxNjA1LCAxNTgwLCAxNjA1LCA3ODEsIDE2MDUsIDE1ODIsIDE1ODAsIDc4MSwgCi0gICAgMTYwNSwgMTU4MiwgMTYwNSwgNzgxLCAxNjA1LCAxNTgwLCAxNTgyLCA3ODEsIDE2MDcsIDE2MDUsIDE1ODAsIDc4MSwgCi0gICAgMTYwNywgMTYwNSwgMTYwNSwgNzgxLCAxNjA2LCAxNTgxLCAxNjA1LCA3ODAsIDE2MDYsIDE1ODEsIDE2MDksIDc4MCwgCi0gICAgMTYwNiwgMTU4MCwgMTYwNSwgNzgxLCAxNjA2LCAxNTgwLCAxNjA1LCA3ODAsIDE2MDYsIDE1ODAsIDE2MDksIDc4MCwgCi0gICAgMTYwNiwgMTYwNSwgMTYxMCwgNzgwLCAxNjA2LCAxNjA1LCAxNjA5LCA3ODAsIDE2MTAsIDE2MDUsIDE2MDUsIDc4MSwgCi0gICAgMTYxMCwgMTYwNSwgMTYwNSwgNzgwLCAxNTc2LCAxNTgyLCAxNjEwLCA3ODAsIDE1NzgsIDE1ODAsIDE2MTAsIDc4MCwgCi0gICAgMTU3OCwgMTU4MCwgMTYwOSwgNzgwLCAxNTc4LCAxNTgyLCAxNjEwLCA3ODAsIDE1NzgsIDE1ODIsIDE2MDksIDc4MCwgCi0gICAgMTU3OCwgMTYwNSwgMTYxMCwgNzgwLCAxNTc4LCAxNjA1LCAxNjA5LCA3ODAsIDE1ODAsIDE2MDUsIDE2MTAsIDc4MCwgCi0gICAgMTU4MCwgMTU4MSwgMTYwOSwgNzgwLCAxNTgwLCAxNjA1LCAxNjA5LCA3ODAsIDE1ODcsIDE1ODIsIDE2MDksIDc4MCwgCi0gICAgMTU4OSwgMTU4MSwgMTYxMCwgNzgwLCAxNTg4LCAxNTgxLCAxNjEwLCA3ODAsIDE1OTAsIDE1ODEsIDE2MTAsIDc4MCwgCi0gICAgMTYwNCwgMTU4MCwgMTYxMCwgNzgwLCAxNjA0LCAxNjA1LCAxNjEwLCA3ODAsIDE2MTAsIDE1ODEsIDE2MTAsIDc4MCwgCi0gICAgMTYxMCwgMTU4MCwgMTYxMCwgNzgwLCAxNjEwLCAxNjA1LCAxNjEwLCA3ODAsIDE2MDUsIDE2MDUsIDE2MTAsIDc4MCwgCi0gICAgMTYwMiwgMTYwNSwgMTYxMCwgNzgwLCAxNjA2LCAxNTgxLCAxNjEwLCA3ODEsIDE2MDIsIDE2MDUsIDE1ODEsIDc4MSwgCi0gICAgMTYwNCwgMTU4MSwgMTYwNSwgNzgwLCAxNTkzLCAxNjA1LCAxNjEwLCA3ODAsIDE2MDMsIDE2MDUsIDE2MTAsIDc4MSwgCi0gICAgMTYwNiwgMTU4MCwgMTU4MSwgNzgwLCAxNjA1LCAxNTgyLCAxNjEwLCA3ODEsIDE2MDQsIDE1ODAsIDE2MDUsIDc4MCwgCi0gICAgMTYwMywgMTYwNSwgMTYwNSwgNzgwLCAxNjA0LCAxNTgwLCAxNjA1LCA3ODAsIDE2MDYsIDE1ODAsIDE1ODEsIDc4MCwgCi0gICAgMTU4MCwgMTU4MSwgMTYxMCwgNzgwLCAxNTgxLCAxNTgwLCAxNjEwLCA3ODAsIDE2MDUsIDE1ODAsIDE2MTAsIDc4MCwgCi0gICAgMTYwMSwgMTYwNSwgMTYxMCwgNzgwLCAxNTc2LCAxNTgxLCAxNjEwLCA3ODEsIDE2MDMsIDE2MDUsIDE2MDUsIDc4MSwgCi0gICAgMTU5MywgMTU4MCwgMTYwNSwgNzgxLCAxNTg5LCAxNjA1LCAxNjA1LCA3ODAsIDE1ODcsIDE1ODIsIDE2MTAsIDc4MCwgCi0gICAgMTYwNiwgMTU4MCwgMTYxMCwgNzc5LCAxNTg5LCAxNjA0LCAxNzQ2LCA3NzksIDE2MDIsIDE2MDQsIDE3NDYsIDEwMzUsIAotICAgIDE1NzUsIDE2MDQsIDE2MDQsIDE2MDcsIDEwMzUsIDE1NzUsIDE2MDMsIDE1NzYsIDE1ODUsIDEwMzUsIDE2MDUsIDE1ODEsIAotICAgIDE2MDUsIDE1ODMsIDEwMzUsIDE1ODksIDE2MDQsIDE1OTMsIDE2MDUsIDEwMzUsIDE1ODUsIDE1ODcsIDE2MDgsIDE2MDQsIAotICAgIDEwMzUsIDE1OTMsIDE2MDQsIDE2MTAsIDE2MDcsIDEwMzUsIDE2MDgsIDE1ODcsIDE2MDQsIDE2MDUsIDc3OSwgMTU4OSwgCi0gICAgMTYwNCwgMTYwOSwgNDYxOSwgMTU4OSwgMTYwNCwgMTYwOSwgMzIsIDE1NzUsIDE2MDQsIDE2MDQsIDE2MDcsIDMyLCAxNTkzLCAKLSAgICAxNjA0LCAxNjEwLCAxNjA3LCAzMiwgMTYwOCwgMTU4NywgMTYwNCwgMTYwNSwgMjA1OSwgMTU4MCwgMTYwNCwgMzIsIDE1ODAsIAotICAgIDE2MDQsIDE1NzUsIDE2MDQsIDE2MDcsIDEwMzUsIDE1ODUsIDE3NDAsIDE1NzUsIDE2MDQsIDI2NSwgNDQsIDI2NSwgCi0gICAgMTIyODksIDI2NSwgMTIyOTAsIDI2NSwgNTgsIDI2NSwgNTksIDI2NSwgMzMsIDI2NSwgNjMsIDI2NSwgMTIzMTAsIDI2NSwgCi0gICAgMTIzMTEsIDI2NSwgODIzMCwgMjY1LCA4MjI5LCAyNjUsIDgyMTIsIDI2NSwgODIxMSwgMjY1LCA5NSwgMjY1LCA5NSwgMjY1LCAKLSAgICA0MCwgMjY1LCA0MSwgMjY1LCAxMjMsIDI2NSwgMTI1LCAyNjUsIDEyMzA4LCAyNjUsIDEyMzA5LCAyNjUsIDEyMzA0LCAyNjUsIAotICAgIDEyMzA1LCAyNjUsIDEyMjk4LCAyNjUsIDEyMjk5LCAyNjUsIDEyMjk2LCAyNjUsIDEyMjk3LCAyNjUsIDEyMzAwLCAyNjUsIAotICAgIDEyMzAxLCAyNjUsIDEyMzAyLCAyNjUsIDEyMzAzLCAyNjUsIDkxLCAyNjUsIDkzLCAyNTgsIDgyNTQsIDI1OCwgODI1NCwgCi0gICAgMjU4LCA4MjU0LCAyNTgsIDgyNTQsIDI1OCwgOTUsIDI1OCwgOTUsIDI1OCwgOTUsIDI3MSwgNDQsIDI3MSwgMTIyODksIAotICAgIDI3MSwgNDYsIDI3MSwgNTksIDI3MSwgNTgsIDI3MSwgNjMsIDI3MSwgMzMsIDI3MSwgODIxMiwgMjcxLCA0MCwgMjcxLCA0MSwgCi0gICAgMjcxLCAxMjMsIDI3MSwgMTI1LCAyNzEsIDEyMzA4LCAyNzEsIDEyMzA5LCAyNzEsIDM1LCAyNzEsIDM4LCAyNzEsIDQyLCAKLSAgICAyNzEsIDQzLCAyNzEsIDQ1LCAyNzEsIDYwLCAyNzEsIDYyLCAyNzEsIDYxLCAyNzEsIDkyLCAyNzEsIDM2LCAyNzEsIDM3LCAKLSAgICAyNzEsIDY0LCA1MjMsIDMyLCAxNjExLCA1MjYsIDE2MDAsIDE2MTEsIDUyMywgMzIsIDE2MTIsIDUyMywgMzIsIDE2MTMsIAotICAgIDUyMywgMzIsIDE2MTQsIDUyNiwgMTYwMCwgMTYxNCwgNTIzLCAzMiwgMTYxNSwgNTI2LCAxNjAwLCAxNjE1LCA1MjMsIDMyLCAKLSAgICAxNjE2LCA1MjYsIDE2MDAsIDE2MTYsIDUyMywgMzIsIDE2MTcsIDUyNiwgMTYwMCwgMTYxNywgNTIzLCAzMiwgMTYxOCwgCi0gICAgNTI2LCAxNjAwLCAxNjE4LCAyNjcsIDE1NjksIDI2NywgMTU3MCwgMjY4LCAxNTcwLCAyNjcsIDE1NzEsIDI2OCwgMTU3MSwgCi0gICAgMjY3LCAxNTcyLCAyNjgsIDE1NzIsIDI2NywgMTU3MywgMjY4LCAxNTczLCAyNjcsIDE1NzQsIDI2OCwgMTU3NCwgMjY5LCAKLSAgICAxNTc0LCAyNzAsIDE1NzQsIDI2NywgMTU3NSwgMjY4LCAxNTc1LCAyNjcsIDE1NzYsIDI2OCwgMTU3NiwgMjY5LCAxNTc2LCAKLSAgICAyNzAsIDE1NzYsIDI2NywgMTU3NywgMjY4LCAxNTc3LCAyNjcsIDE1NzgsIDI2OCwgMTU3OCwgMjY5LCAxNTc4LCAyNzAsIAotICAgIDE1NzgsIDI2NywgMTU3OSwgMjY4LCAxNTc5LCAyNjksIDE1NzksIDI3MCwgMTU3OSwgMjY3LCAxNTgwLCAyNjgsIDE1ODAsIAotICAgIDI2OSwgMTU4MCwgMjcwLCAxNTgwLCAyNjcsIDE1ODEsIDI2OCwgMTU4MSwgMjY5LCAxNTgxLCAyNzAsIDE1ODEsIDI2NywgCi0gICAgMTU4MiwgMjY4LCAxNTgyLCAyNjksIDE1ODIsIDI3MCwgMTU4MiwgMjY3LCAxNTgzLCAyNjgsIDE1ODMsIDI2NywgMTU4NCwgCi0gICAgMjY4LCAxNTg0LCAyNjcsIDE1ODUsIDI2OCwgMTU4NSwgMjY3LCAxNTg2LCAyNjgsIDE1ODYsIDI2NywgMTU4NywgMjY4LCAKLSAgICAxNTg3LCAyNjksIDE1ODcsIDI3MCwgMTU4NywgMjY3LCAxNTg4LCAyNjgsIDE1ODgsIDI2OSwgMTU4OCwgMjcwLCAxNTg4LCAKLSAgICAyNjcsIDE1ODksIDI2OCwgMTU4OSwgMjY5LCAxNTg5LCAyNzAsIDE1ODksIDI2NywgMTU5MCwgMjY4LCAxNTkwLCAyNjksIAotICAgIDE1OTAsIDI3MCwgMTU5MCwgMjY3LCAxNTkxLCAyNjgsIDE1OTEsIDI2OSwgMTU5MSwgMjcwLCAxNTkxLCAyNjcsIDE1OTIsIAotICAgIDI2OCwgMTU5MiwgMjY5LCAxNTkyLCAyNzAsIDE1OTIsIDI2NywgMTU5MywgMjY4LCAxNTkzLCAyNjksIDE1OTMsIDI3MCwgCi0gICAgMTU5MywgMjY3LCAxNTk0LCAyNjgsIDE1OTQsIDI2OSwgMTU5NCwgMjcwLCAxNTk0LCAyNjcsIDE2MDEsIDI2OCwgMTYwMSwgCi0gICAgMjY5LCAxNjAxLCAyNzAsIDE2MDEsIDI2NywgMTYwMiwgMjY4LCAxNjAyLCAyNjksIDE2MDIsIDI3MCwgMTYwMiwgMjY3LCAKLSAgICAxNjAzLCAyNjgsIDE2MDMsIDI2OSwgMTYwMywgMjcwLCAxNjAzLCAyNjcsIDE2MDQsIDI2OCwgMTYwNCwgMjY5LCAxNjA0LCAKLSAgICAyNzAsIDE2MDQsIDI2NywgMTYwNSwgMjY4LCAxNjA1LCAyNjksIDE2MDUsIDI3MCwgMTYwNSwgMjY3LCAxNjA2LCAyNjgsIAotICAgIDE2MDYsIDI2OSwgMTYwNiwgMjcwLCAxNjA2LCAyNjcsIDE2MDcsIDI2OCwgMTYwNywgMjY5LCAxNjA3LCAyNzAsIDE2MDcsIAotICAgIDI2NywgMTYwOCwgMjY4LCAxNjA4LCAyNjcsIDE2MDksIDI2OCwgMTYwOSwgMjY3LCAxNjEwLCAyNjgsIDE2MTAsIDI2OSwgCi0gICAgMTYxMCwgMjcwLCAxNjEwLCA1MjMsIDE2MDQsIDE1NzAsIDUyNCwgMTYwNCwgMTU3MCwgNTIzLCAxNjA0LCAxNTcxLCA1MjQsIAotICAgIDE2MDQsIDE1NzEsIDUyMywgMTYwNCwgMTU3MywgNTI0LCAxNjA0LCAxNTczLCA1MjMsIDE2MDQsIDE1NzUsIDUyNCwgMTYwNCwgCi0gICAgMTU3NSwgMjY0LCAzMywgMjY0LCAzNCwgMjY0LCAzNSwgMjY0LCAzNiwgMjY0LCAzNywgMjY0LCAzOCwgMjY0LCAzOSwgMjY0LCAKLSAgICA0MCwgMjY0LCA0MSwgMjY0LCA0MiwgMjY0LCA0MywgMjY0LCA0NCwgMjY0LCA0NSwgMjY0LCA0NiwgMjY0LCA0NywgMjY0LCAKLSAgICA0OCwgMjY0LCA0OSwgMjY0LCA1MCwgMjY0LCA1MSwgMjY0LCA1MiwgMjY0LCA1MywgMjY0LCA1NCwgMjY0LCA1NSwgMjY0LCAKLSAgICA1NiwgMjY0LCA1NywgMjY0LCA1OCwgMjY0LCA1OSwgMjY0LCA2MCwgMjY0LCA2MSwgMjY0LCA2MiwgMjY0LCA2MywgMjY0LCAKLSAgICA2NCwgMjY0LCA2NSwgMjY0LCA2NiwgMjY0LCA2NywgMjY0LCA2OCwgMjY0LCA2OSwgMjY0LCA3MCwgMjY0LCA3MSwgMjY0LCAKLSAgICA3MiwgMjY0LCA3MywgMjY0LCA3NCwgMjY0LCA3NSwgMjY0LCA3NiwgMjY0LCA3NywgMjY0LCA3OCwgMjY0LCA3OSwgMjY0LCAKLSAgICA4MCwgMjY0LCA4MSwgMjY0LCA4MiwgMjY0LCA4MywgMjY0LCA4NCwgMjY0LCA4NSwgMjY0LCA4NiwgMjY0LCA4NywgMjY0LCAKLSAgICA4OCwgMjY0LCA4OSwgMjY0LCA5MCwgMjY0LCA5MSwgMjY0LCA5MiwgMjY0LCA5MywgMjY0LCA5NCwgMjY0LCA5NSwgMjY0LCAKLSAgICA5NiwgMjY0LCA5NywgMjY0LCA5OCwgMjY0LCA5OSwgMjY0LCAxMDAsIDI2NCwgMTAxLCAyNjQsIDEwMiwgMjY0LCAxMDMsIAotICAgIDI2NCwgMTA0LCAyNjQsIDEwNSwgMjY0LCAxMDYsIDI2NCwgMTA3LCAyNjQsIDEwOCwgMjY0LCAxMDksIDI2NCwgMTEwLCAKLSAgICAyNjQsIDExMSwgMjY0LCAxMTIsIDI2NCwgMTEzLCAyNjQsIDExNCwgMjY0LCAxMTUsIDI2NCwgMTE2LCAyNjQsIDExNywgCi0gICAgMjY0LCAxMTgsIDI2NCwgMTE5LCAyNjQsIDEyMCwgMjY0LCAxMjEsIDI2NCwgMTIyLCAyNjQsIDEyMywgMjY0LCAxMjQsIAotICAgIDI2NCwgMTI1LCAyNjQsIDEyNiwgMjY0LCAxMDYyOSwgMjY0LCAxMDYzMCwgMjcyLCAxMjI5MCwgMjcyLCAxMjMwMCwgMjcyLCAKLSAgICAxMjMwMSwgMjcyLCAxMjI4OSwgMjcyLCAxMjUzOSwgMjcyLCAxMjUzMCwgMjcyLCAxMjQ0OSwgMjcyLCAxMjQ1MSwgMjcyLCAKLSAgICAxMjQ1MywgMjcyLCAxMjQ1NSwgMjcyLCAxMjQ1NywgMjcyLCAxMjUxNSwgMjcyLCAxMjUxNywgMjcyLCAxMjUxOSwgMjcyLCAKLSAgICAxMjQ4MywgMjcyLCAxMjU0MCwgMjcyLCAxMjQ1MCwgMjcyLCAxMjQ1MiwgMjcyLCAxMjQ1NCwgMjcyLCAxMjQ1NiwgMjcyLCAKLSAgICAxMjQ1OCwgMjcyLCAxMjQ1OSwgMjcyLCAxMjQ2MSwgMjcyLCAxMjQ2MywgMjcyLCAxMjQ2NSwgMjcyLCAxMjQ2NywgMjcyLCAKLSAgICAxMjQ2OSwgMjcyLCAxMjQ3MSwgMjcyLCAxMjQ3MywgMjcyLCAxMjQ3NSwgMjcyLCAxMjQ3NywgMjcyLCAxMjQ3OSwgMjcyLCAKLSAgICAxMjQ4MSwgMjcyLCAxMjQ4NCwgMjcyLCAxMjQ4NiwgMjcyLCAxMjQ4OCwgMjcyLCAxMjQ5MCwgMjcyLCAxMjQ5MSwgMjcyLCAKLSAgICAxMjQ5MiwgMjcyLCAxMjQ5MywgMjcyLCAxMjQ5NCwgMjcyLCAxMjQ5NSwgMjcyLCAxMjQ5OCwgMjcyLCAxMjUwMSwgMjcyLCAKLSAgICAxMjUwNCwgMjcyLCAxMjUwNywgMjcyLCAxMjUxMCwgMjcyLCAxMjUxMSwgMjcyLCAxMjUxMiwgMjcyLCAxMjUxMywgMjcyLCAKLSAgICAxMjUxNCwgMjcyLCAxMjUxNiwgMjcyLCAxMjUxOCwgMjcyLCAxMjUyMCwgMjcyLCAxMjUyMSwgMjcyLCAxMjUyMiwgMjcyLCAKLSAgICAxMjUyMywgMjcyLCAxMjUyNCwgMjcyLCAxMjUyNSwgMjcyLCAxMjUyNywgMjcyLCAxMjUzMSwgMjcyLCAxMjQ0MSwgMjcyLCAKLSAgICAxMjQ0MiwgMjcyLCAxMjY0NCwgMjcyLCAxMjU5MywgMjcyLCAxMjU5NCwgMjcyLCAxMjU5NSwgMjcyLCAxMjU5NiwgMjcyLCAKLSAgICAxMjU5NywgMjcyLCAxMjU5OCwgMjcyLCAxMjU5OSwgMjcyLCAxMjYwMCwgMjcyLCAxMjYwMSwgMjcyLCAxMjYwMiwgMjcyLCAKLSAgICAxMjYwMywgMjcyLCAxMjYwNCwgMjcyLCAxMjYwNSwgMjcyLCAxMjYwNiwgMjcyLCAxMjYwNywgMjcyLCAxMjYwOCwgMjcyLCAKLSAgICAxMjYwOSwgMjcyLCAxMjYxMCwgMjcyLCAxMjYxMSwgMjcyLCAxMjYxMiwgMjcyLCAxMjYxMywgMjcyLCAxMjYxNCwgMjcyLCAKLSAgICAxMjYxNSwgMjcyLCAxMjYxNiwgMjcyLCAxMjYxNywgMjcyLCAxMjYxOCwgMjcyLCAxMjYxOSwgMjcyLCAxMjYyMCwgMjcyLCAKLSAgICAxMjYyMSwgMjcyLCAxMjYyMiwgMjcyLCAxMjYyMywgMjcyLCAxMjYyNCwgMjcyLCAxMjYyNSwgMjcyLCAxMjYyNiwgMjcyLCAKLSAgICAxMjYyNywgMjcyLCAxMjYyOCwgMjcyLCAxMjYyOSwgMjcyLCAxMjYzMCwgMjcyLCAxMjYzMSwgMjcyLCAxMjYzMiwgMjcyLCAKLSAgICAxMjYzMywgMjcyLCAxMjYzNCwgMjcyLCAxMjYzNSwgMjcyLCAxMjYzNiwgMjcyLCAxMjYzNywgMjcyLCAxMjYzOCwgMjcyLCAKLSAgICAxMjYzOSwgMjcyLCAxMjY0MCwgMjcyLCAxMjY0MSwgMjcyLCAxMjY0MiwgMjcyLCAxMjY0MywgMjY0LCAxNjIsIDI2NCwgCi0gICAgMTYzLCAyNjQsIDE3MiwgMjY0LCAxNzUsIDI2NCwgMTY2LCAyNjQsIDE2NSwgMjY0LCA4MzYxLCAyNzIsIDk0NzQsIDI3MiwgCi0gICAgODU5MiwgMjcyLCA4NTkzLCAyNzIsIDg1OTQsIDI3MiwgODU5NSwgMjcyLCA5NjMyLCAyNzIsIDk2NzUsIDUxMiwgNjk3ODUsIAotICAgIDY5ODE4LCA1MTIsIDY5Nzg3LCA2OTgxOCwgNTEyLCA2OTc5NywgNjk4MTgsIDUxMiwgMTE5MTI3LCAxMTkxNDEsIDUxMiwgCi0gICAgMTE5MTI4LCAxMTkxNDEsIDUxMiwgMTE5MTM1LCAxMTkxNTAsIDUxMiwgMTE5MTM1LCAxMTkxNTEsIDUxMiwgMTE5MTM1LCAKLSAgICAxMTkxNTIsIDUxMiwgMTE5MTM1LCAxMTkxNTMsIDUxMiwgMTE5MTM1LCAxMTkxNTQsIDUxMiwgMTE5MjI1LCAxMTkxNDEsIAotICAgIDUxMiwgMTE5MjI2LCAxMTkxNDEsIDUxMiwgMTE5MjI3LCAxMTkxNTAsIDUxMiwgMTE5MjI4LCAxMTkxNTAsIDUxMiwgCi0gICAgMTE5MjI3LCAxMTkxNTEsIDUxMiwgMTE5MjI4LCAxMTkxNTEsIDI2MiwgNjUsIDI2MiwgNjYsIDI2MiwgNjcsIDI2MiwgNjgsIAotICAgIDI2MiwgNjksIDI2MiwgNzAsIDI2MiwgNzEsIDI2MiwgNzIsIDI2MiwgNzMsIDI2MiwgNzQsIDI2MiwgNzUsIDI2MiwgNzYsIAotICAgIDI2MiwgNzcsIDI2MiwgNzgsIDI2MiwgNzksIDI2MiwgODAsIDI2MiwgODEsIDI2MiwgODIsIDI2MiwgODMsIDI2MiwgODQsIAotICAgIDI2MiwgODUsIDI2MiwgODYsIDI2MiwgODcsIDI2MiwgODgsIDI2MiwgODksIDI2MiwgOTAsIDI2MiwgOTcsIDI2MiwgOTgsIAotICAgIDI2MiwgOTksIDI2MiwgMTAwLCAyNjIsIDEwMSwgMjYyLCAxMDIsIDI2MiwgMTAzLCAyNjIsIDEwNCwgMjYyLCAxMDUsIDI2MiwgCi0gICAgMTA2LCAyNjIsIDEwNywgMjYyLCAxMDgsIDI2MiwgMTA5LCAyNjIsIDExMCwgMjYyLCAxMTEsIDI2MiwgMTEyLCAyNjIsIAotICAgIDExMywgMjYyLCAxMTQsIDI2MiwgMTE1LCAyNjIsIDExNiwgMjYyLCAxMTcsIDI2MiwgMTE4LCAyNjIsIDExOSwgMjYyLCAKLSAgICAxMjAsIDI2MiwgMTIxLCAyNjIsIDEyMiwgMjYyLCA2NSwgMjYyLCA2NiwgMjYyLCA2NywgMjYyLCA2OCwgMjYyLCA2OSwgCi0gICAgMjYyLCA3MCwgMjYyLCA3MSwgMjYyLCA3MiwgMjYyLCA3MywgMjYyLCA3NCwgMjYyLCA3NSwgMjYyLCA3NiwgMjYyLCA3NywgCi0gICAgMjYyLCA3OCwgMjYyLCA3OSwgMjYyLCA4MCwgMjYyLCA4MSwgMjYyLCA4MiwgMjYyLCA4MywgMjYyLCA4NCwgMjYyLCA4NSwgCi0gICAgMjYyLCA4NiwgMjYyLCA4NywgMjYyLCA4OCwgMjYyLCA4OSwgMjYyLCA5MCwgMjYyLCA5NywgMjYyLCA5OCwgMjYyLCA5OSwgCi0gICAgMjYyLCAxMDAsIDI2MiwgMTAxLCAyNjIsIDEwMiwgMjYyLCAxMDMsIDI2MiwgMTA1LCAyNjIsIDEwNiwgMjYyLCAxMDcsIAorICAgIDI2MDg1LCA3NzgsIDEwMywgOTcsIDEwOCwgMjU5LCA0Mjg2MywgMjU5LCAyOTQsIDI1OSwgMzM5LCAyNTYsIDM1OTEyLCAKKyAgICAyNTYsIDI2MzU2LCAyNTYsIDM2NTU0LCAyNTYsIDM2MDQwLCAyNTYsIDI4MzY5LCAyNTYsIDIwMDE4LCAyNTYsIDIxNDc3LCAKKyAgICAyNTYsIDQwODYwLCAyNTYsIDQwODYwLCAyNTYsIDIyODY1LCAyNTYsIDM3MzI5LCAyNTYsIDIxODk1LCAyNTYsIDIyODU2LCAKKyAgICAyNTYsIDI1MDc4LCAyNTYsIDMwMzEzLCAyNTYsIDMyNjQ1LCAyNTYsIDM0MzY3LCAyNTYsIDM0NzQ2LCAyNTYsIDM1MDY0LCAKKyAgICAyNTYsIDM3MDA3LCAyNTYsIDI3MTM4LCAyNTYsIDI3OTMxLCAyNTYsIDI4ODg5LCAyNTYsIDI5NjYyLCAyNTYsIDMzODUzLCAKKyAgICAyNTYsIDM3MjI2LCAyNTYsIDM5NDA5LCAyNTYsIDIwMDk4LCAyNTYsIDIxMzY1LCAyNTYsIDI3Mzk2LCAyNTYsIDI5MjExLCAKKyAgICAyNTYsIDM0MzQ5LCAyNTYsIDQwNDc4LCAyNTYsIDIzODg4LCAyNTYsIDI4NjUxLCAyNTYsIDM0MjUzLCAyNTYsIDM1MTcyLCAKKyAgICAyNTYsIDI1Mjg5LCAyNTYsIDMzMjQwLCAyNTYsIDM0ODQ3LCAyNTYsIDI0MjY2LCAyNTYsIDI2MzkxLCAyNTYsIDI4MDEwLCAKKyAgICAyNTYsIDI5NDM2LCAyNTYsIDM3MDcwLCAyNTYsIDIwMzU4LCAyNTYsIDIwOTE5LCAyNTYsIDIxMjE0LCAyNTYsIDI1Nzk2LCAKKyAgICAyNTYsIDI3MzQ3LCAyNTYsIDI5MjAwLCAyNTYsIDMwNDM5LCAyNTYsIDMyNzY5LCAyNTYsIDM0MzEwLCAyNTYsIDM0Mzk2LCAKKyAgICAyNTYsIDM2MzM1LCAyNTYsIDM4NzA2LCAyNTYsIDM5NzkxLCAyNTYsIDQwNDQyLCAyNTYsIDMwODYwLCAyNTYsIDMxMTAzLCAKKyAgICAyNTYsIDMyMTYwLCAyNTYsIDMzNzM3LCAyNTYsIDM3NjM2LCAyNTYsIDQwNTc1LCAyNTYsIDM1NTQyLCAyNTYsIDIyNzUxLCAKKyAgICAyNTYsIDI0MzI0LCAyNTYsIDMxODQwLCAyNTYsIDMyODk0LCAyNTYsIDI5MjgyLCAyNTYsIDMwOTIyLCAyNTYsIDM2MDM0LCAKKyAgICAyNTYsIDM4NjQ3LCAyNTYsIDIyNzQ0LCAyNTYsIDIzNjUwLCAyNTYsIDI3MTU1LCAyNTYsIDI4MTIyLCAyNTYsIDI4NDMxLCAKKyAgICAyNTYsIDMyMDQ3LCAyNTYsIDMyMzExLCAyNTYsIDM4NDc1LCAyNTYsIDIxMjAyLCAyNTYsIDMyOTA3LCAyNTYsIDIwOTU2LCAKKyAgICAyNTYsIDIwOTQwLCAyNTYsIDMxMjYwLCAyNTYsIDMyMTkwLCAyNTYsIDMzNzc3LCAyNTYsIDM4NTE3LCAyNTYsIDM1NzEyLCAKKyAgICAyNTYsIDI1Mjk1LCAyNTYsIDI3MTM4LCAyNTYsIDM1NTgyLCAyNTYsIDIwMDI1LCAyNTYsIDIzNTI3LCAyNTYsIDI0NTk0LCAKKyAgICAyNTYsIDI5NTc1LCAyNTYsIDMwMDY0LCAyNTYsIDIxMjcxLCAyNTYsIDMwOTcxLCAyNTYsIDIwNDE1LCAyNTYsIDI0NDg5LCAKKyAgICAyNTYsIDE5OTgxLCAyNTYsIDI3ODUyLCAyNTYsIDI1OTc2LCAyNTYsIDMyMDM0LCAyNTYsIDIxNDQzLCAyNTYsIDIyNjIyLCAKKyAgICAyNTYsIDMwNDY1LCAyNTYsIDMzODY1LCAyNTYsIDM1NDk4LCAyNTYsIDI3NTc4LCAyNTYsIDM2Nzg0LCAyNTYsIDI3Nzg0LCAKKyAgICAyNTYsIDI1MzQyLCAyNTYsIDMzNTA5LCAyNTYsIDI1NTA0LCAyNTYsIDMwMDUzLCAyNTYsIDIwMTQyLCAyNTYsIDIwODQxLCAKKyAgICAyNTYsIDIwOTM3LCAyNTYsIDI2NzUzLCAyNTYsIDMxOTc1LCAyNTYsIDMzMzkxLCAyNTYsIDM1NTM4LCAyNTYsIDM3MzI3LCAKKyAgICAyNTYsIDIxMjM3LCAyNTYsIDIxNTcwLCAyNTYsIDIyODk5LCAyNTYsIDI0MzAwLCAyNTYsIDI2MDUzLCAyNTYsIDI4NjcwLCAKKyAgICAyNTYsIDMxMDE4LCAyNTYsIDM4MzE3LCAyNTYsIDM5NTMwLCAyNTYsIDQwNTk5LCAyNTYsIDQwNjU0LCAyNTYsIDIxMTQ3LCAKKyAgICAyNTYsIDI2MzEwLCAyNTYsIDI3NTExLCAyNTYsIDM2NzA2LCAyNTYsIDI0MTgwLCAyNTYsIDI0OTc2LCAyNTYsIDI1MDg4LCAKKyAgICAyNTYsIDI1NzU0LCAyNTYsIDI4NDUxLCAyNTYsIDI5MDAxLCAyNTYsIDI5ODMzLCAyNTYsIDMxMTc4LCAyNTYsIDMyMjQ0LCAKKyAgICAyNTYsIDMyODc5LCAyNTYsIDM2NjQ2LCAyNTYsIDM0MDMwLCAyNTYsIDM2ODk5LCAyNTYsIDM3NzA2LCAyNTYsIDIxMDE1LCAKKyAgICAyNTYsIDIxMTU1LCAyNTYsIDIxNjkzLCAyNTYsIDI4ODcyLCAyNTYsIDM1MDEwLCAyNTYsIDM1NDk4LCAyNTYsIDI0MjY1LCAKKyAgICAyNTYsIDI0NTY1LCAyNTYsIDI1NDY3LCAyNTYsIDI3NTY2LCAyNTYsIDMxODA2LCAyNTYsIDI5NTU3LCAyNTYsIDIwMTk2LCAKKyAgICAyNTYsIDIyMjY1LCAyNTYsIDIzNTI3LCAyNTYsIDIzOTk0LCAyNTYsIDI0NjA0LCAyNTYsIDI5NjE4LCAyNTYsIDI5ODAxLCAKKyAgICAyNTYsIDMyNjY2LCAyNTYsIDMyODM4LCAyNTYsIDM3NDI4LCAyNTYsIDM4NjQ2LCAyNTYsIDM4NzI4LCAyNTYsIDM4OTM2LCAKKyAgICAyNTYsIDIwMzYzLCAyNTYsIDMxMTUwLCAyNTYsIDM3MzAwLCAyNTYsIDM4NTg0LCAyNTYsIDI0ODAxLCAyNTYsIDIwMTAyLCAKKyAgICAyNTYsIDIwNjk4LCAyNTYsIDIzNTM0LCAyNTYsIDIzNjE1LCAyNTYsIDI2MDA5LCAyNTYsIDI3MTM4LCAyNTYsIDI5MTM0LCAKKyAgICAyNTYsIDMwMjc0LCAyNTYsIDM0MDQ0LCAyNTYsIDM2OTg4LCAyNTYsIDQwODQ1LCAyNTYsIDI2MjQ4LCAyNTYsIDM4NDQ2LCAKKyAgICAyNTYsIDIxMTI5LCAyNTYsIDI2NDkxLCAyNTYsIDI2NjExLCAyNTYsIDI3OTY5LCAyNTYsIDI4MzE2LCAyNTYsIDI5NzA1LCAKKyAgICAyNTYsIDMwMDQxLCAyNTYsIDMwODI3LCAyNTYsIDMyMDE2LCAyNTYsIDM5MDA2LCAyNTYsIDIwODQ1LCAyNTYsIDI1MTM0LCAKKyAgICAyNTYsIDM4NTIwLCAyNTYsIDIwNTIzLCAyNTYsIDIzODMzLCAyNTYsIDI4MTM4LCAyNTYsIDM2NjUwLCAyNTYsIDI0NDU5LCAKKyAgICAyNTYsIDI0OTAwLCAyNTYsIDI2NjQ3LCAyNTYsIDI5NTc1LCAyNTYsIDM4NTM0LCAyNTYsIDIxMDMzLCAyNTYsIDIxNTE5LCAKKyAgICAyNTYsIDIzNjUzLCAyNTYsIDI2MTMxLCAyNTYsIDI2NDQ2LCAyNTYsIDI2NzkyLCAyNTYsIDI3ODc3LCAyNTYsIDI5NzAyLCAKKyAgICAyNTYsIDMwMTc4LCAyNTYsIDMyNjMzLCAyNTYsIDM1MDIzLCAyNTYsIDM1MDQxLCAyNTYsIDM3MzI0LCAyNTYsIDM4NjI2LCAKKyAgICAyNTYsIDIxMzExLCAyNTYsIDI4MzQ2LCAyNTYsIDIxNTMzLCAyNTYsIDI5MTM2LCAyNTYsIDI5ODQ4LCAyNTYsIDM0Mjk4LCAKKyAgICAyNTYsIDM4NTYzLCAyNTYsIDQwMDIzLCAyNTYsIDQwNjA3LCAyNTYsIDI2NTE5LCAyNTYsIDI4MTA3LCAyNTYsIDMzMjU2LCAKKyAgICAyNTYsIDMxNDM1LCAyNTYsIDMxNTIwLCAyNTYsIDMxODkwLCAyNTYsIDI5Mzc2LCAyNTYsIDI4ODI1LCAyNTYsIDM1NjcyLCAKKyAgICAyNTYsIDIwMTYwLCAyNTYsIDMzNTkwLCAyNTYsIDIxMDUwLCAyNTYsIDIwOTk5LCAyNTYsIDI0MjMwLCAyNTYsIDI1Mjk5LCAKKyAgICAyNTYsIDMxOTU4LCAyNTYsIDIzNDI5LCAyNTYsIDI3OTM0LCAyNTYsIDI2MjkyLCAyNTYsIDM2NjY3LCAyNTYsIDM0ODkyLCAKKyAgICAyNTYsIDM4NDc3LCAyNTYsIDM1MjExLCAyNTYsIDI0Mjc1LCAyNTYsIDIwODAwLCAyNTYsIDIxOTUyLCAyNTYsIDIyNjE4LCAKKyAgICAyNTYsIDI2MjI4LCAyNTYsIDIwOTU4LCAyNTYsIDI5NDgyLCAyNTYsIDMwNDEwLCAyNTYsIDMxMDM2LCAyNTYsIDMxMDcwLCAKKyAgICAyNTYsIDMxMDc3LCAyNTYsIDMxMTE5LCAyNTYsIDM4NzQyLCAyNTYsIDMxOTM0LCAyNTYsIDMyNzAxLCAyNTYsIDM0MzIyLCAKKyAgICAyNTYsIDM1NTc2LCAyNTYsIDM2OTIwLCAyNTYsIDM3MTE3LCAyNTYsIDM5MTUxLCAyNTYsIDM5MTY0LCAyNTYsIDM5MjA4LCAKKyAgICAyNTYsIDQwMzcyLCAyNTYsIDM3MDg2LCAyNTYsIDM4NTgzLCAyNTYsIDIwMzk4LCAyNTYsIDIwNzExLCAyNTYsIDIwODEzLCAKKyAgICAyNTYsIDIxMTkzLCAyNTYsIDIxMjIwLCAyNTYsIDIxMzI5LCAyNTYsIDIxOTE3LCAyNTYsIDIyMDIyLCAyNTYsIDIyMTIwLCAKKyAgICAyNTYsIDIyNTkyLCAyNTYsIDIyNjk2LCAyNTYsIDIzNjUyLCAyNTYsIDIzNjYyLCAyNTYsIDI0NzI0LCAyNTYsIDI0OTM2LCAKKyAgICAyNTYsIDI0OTc0LCAyNTYsIDI1MDc0LCAyNTYsIDI1OTM1LCAyNTYsIDI2MDgyLCAyNTYsIDI2MjU3LCAyNTYsIDI2NzU3LCAKKyAgICAyNTYsIDI4MDIzLCAyNTYsIDI4MTg2LCAyNTYsIDI4NDUwLCAyNTYsIDI5MDM4LCAyNTYsIDI5MjI3LCAyNTYsIDI5NzMwLCAKKyAgICAyNTYsIDMwODY1LCAyNTYsIDMxMDM4LCAyNTYsIDMxMDQ5LCAyNTYsIDMxMDQ4LCAyNTYsIDMxMDU2LCAyNTYsIDMxMDYyLCAKKyAgICAyNTYsIDMxMDY5LCAyNTYsIDMxMTE3LCAyNTYsIDMxMTE4LCAyNTYsIDMxMjk2LCAyNTYsIDMxMzYxLCAyNTYsIDMxNjgwLCAKKyAgICAyNTYsIDMyMjQ0LCAyNTYsIDMyMjY1LCAyNTYsIDMyMzIxLCAyNTYsIDMyNjI2LCAyNTYsIDMyNzczLCAyNTYsIDMzMjYxLCAKKyAgICAyNTYsIDMzNDAxLCAyNTYsIDMzNDAxLCAyNTYsIDMzODc5LCAyNTYsIDM1MDg4LCAyNTYsIDM1MjIyLCAyNTYsIDM1NTg1LCAKKyAgICAyNTYsIDM1NjQxLCAyNTYsIDM2MDUxLCAyNTYsIDM2MTA0LCAyNTYsIDM2NzkwLCAyNTYsIDM2OTIwLCAyNTYsIDM4NjI3LCAKKyAgICAyNTYsIDM4OTExLCAyNTYsIDM4OTcxLCAyNTYsIDI0NjkzLCAyNTYsIDE0ODIwNiwgMjU2LCAzMzMwNCwgMjU2LCAyMDAwNiwgCisgICAgMjU2LCAyMDkxNywgMjU2LCAyMDg0MCwgMjU2LCAyMDM1MiwgMjU2LCAyMDgwNSwgMjU2LCAyMDg2NCwgMjU2LCAyMTE5MSwgCisgICAgMjU2LCAyMTI0MiwgMjU2LCAyMTkxNywgMjU2LCAyMTg0NSwgMjU2LCAyMTkxMywgMjU2LCAyMTk4NiwgMjU2LCAyMjYxOCwgCisgICAgMjU2LCAyMjcwNywgMjU2LCAyMjg1MiwgMjU2LCAyMjg2OCwgMjU2LCAyMzEzOCwgMjU2LCAyMzMzNiwgMjU2LCAyNDI3NCwgCisgICAgMjU2LCAyNDI4MSwgMjU2LCAyNDQyNSwgMjU2LCAyNDQ5MywgMjU2LCAyNDc5MiwgMjU2LCAyNDkxMCwgMjU2LCAyNDg0MCwgCisgICAgMjU2LCAyNDk3NCwgMjU2LCAyNDkyOCwgMjU2LCAyNTA3NCwgMjU2LCAyNTE0MCwgMjU2LCAyNTU0MCwgMjU2LCAyNTYyOCwgCisgICAgMjU2LCAyNTY4MiwgMjU2LCAyNTk0MiwgMjU2LCAyNjIyOCwgMjU2LCAyNjM5MSwgMjU2LCAyNjM5NSwgMjU2LCAyNjQ1NCwgCisgICAgMjU2LCAyNzUxMywgMjU2LCAyNzU3OCwgMjU2LCAyNzk2OSwgMjU2LCAyODM3OSwgMjU2LCAyODM2MywgMjU2LCAyODQ1MCwgCisgICAgMjU2LCAyODcwMiwgMjU2LCAyOTAzOCwgMjU2LCAzMDYzMSwgMjU2LCAyOTIzNywgMjU2LCAyOTM1OSwgMjU2LCAyOTQ4MiwgCisgICAgMjU2LCAyOTgwOSwgMjU2LCAyOTk1OCwgMjU2LCAzMDAxMSwgMjU2LCAzMDIzNywgMjU2LCAzMDIzOSwgMjU2LCAzMDQxMCwgCisgICAgMjU2LCAzMDQyNywgMjU2LCAzMDQ1MiwgMjU2LCAzMDUzOCwgMjU2LCAzMDUyOCwgMjU2LCAzMDkyNCwgMjU2LCAzMTQwOSwgCisgICAgMjU2LCAzMTY4MCwgMjU2LCAzMTg2NywgMjU2LCAzMjA5MSwgMjU2LCAzMjI0NCwgMjU2LCAzMjU3NCwgMjU2LCAzMjc3MywgCisgICAgMjU2LCAzMzYxOCwgMjU2LCAzMzc3NSwgMjU2LCAzNDY4MSwgMjU2LCAzNTEzNywgMjU2LCAzNTIwNiwgMjU2LCAzNTIyMiwgCisgICAgMjU2LCAzNTUxOSwgMjU2LCAzNTU3NiwgMjU2LCAzNTUzMSwgMjU2LCAzNTU4NSwgMjU2LCAzNTU4MiwgMjU2LCAzNTU2NSwgCisgICAgMjU2LCAzNTY0MSwgMjU2LCAzNTcyMiwgMjU2LCAzNjEwNCwgMjU2LCAzNjY2NCwgMjU2LCAzNjk3OCwgMjU2LCAzNzI3MywgCisgICAgMjU2LCAzNzQ5NCwgMjU2LCAzODUyNCwgMjU2LCAzODYyNywgMjU2LCAzODc0MiwgMjU2LCAzODg3NSwgMjU2LCAzODkxMSwgCisgICAgMjU2LCAzODkyMywgMjU2LCAzODk3MSwgMjU2LCAzOTY5OCwgMjU2LCA0MDg2MCwgMjU2LCAxNDEzODYsIDI1NiwgMTQxMzgwLCAKKyAgICAyNTYsIDE0NDM0MSwgMjU2LCAxNTI2MSwgMjU2LCAxNjQwOCwgMjU2LCAxNjQ0MSwgMjU2LCAxNTIxMzcsIDI1NiwgCisgICAgMTU0ODMyLCAyNTYsIDE2MzUzOSwgMjU2LCA0MDc3MSwgMjU2LCA0MDg0NiwgNTE0LCAxMDIsIDEwMiwgNTE0LCAxMDIsIAorICAgIDEwNSwgNTE0LCAxMDIsIDEwOCwgNzcwLCAxMDIsIDEwMiwgMTA1LCA3NzAsIDEwMiwgMTAyLCAxMDgsIDUxNCwgMzgzLCAKKyAgICAxMTYsIDUxNCwgMTE1LCAxMTYsIDUxNCwgMTM5NiwgMTM5OCwgNTE0LCAxMzk2LCAxMzgxLCA1MTQsIDEzOTYsIDEzODcsIAorICAgIDUxNCwgMTQwNiwgMTM5OCwgNTE0LCAxMzk2LCAxMzg5LCA1MTIsIDE0OTcsIDE0NjAsIDUxMiwgMTUyMiwgMTQ2MywgMjYyLCAKKyAgICAxNTA2LCAyNjIsIDE0ODgsIDI2MiwgMTQ5MSwgMjYyLCAxNDkyLCAyNjIsIDE0OTksIDI2MiwgMTUwMCwgMjYyLCAxNTAxLCAKKyAgICAyNjIsIDE1MTIsIDI2MiwgMTUxNCwgMjYyLCA0MywgNTEyLCAxNTEzLCAxNDczLCA1MTIsIDE1MTMsIDE0NzQsIDUxMiwgCisgICAgNjQzMjksIDE0NzMsIDUxMiwgNjQzMjksIDE0NzQsIDUxMiwgMTQ4OCwgMTQ2MywgNTEyLCAxNDg4LCAxNDY0LCA1MTIsIAorICAgIDE0ODgsIDE0NjgsIDUxMiwgMTQ4OSwgMTQ2OCwgNTEyLCAxNDkwLCAxNDY4LCA1MTIsIDE0OTEsIDE0NjgsIDUxMiwgMTQ5MiwgCisgICAgMTQ2OCwgNTEyLCAxNDkzLCAxNDY4LCA1MTIsIDE0OTQsIDE0NjgsIDUxMiwgMTQ5NiwgMTQ2OCwgNTEyLCAxNDk3LCAxNDY4LCAKKyAgICA1MTIsIDE0OTgsIDE0NjgsIDUxMiwgMTQ5OSwgMTQ2OCwgNTEyLCAxNTAwLCAxNDY4LCA1MTIsIDE1MDIsIDE0NjgsIDUxMiwgCisgICAgMTUwNCwgMTQ2OCwgNTEyLCAxNTA1LCAxNDY4LCA1MTIsIDE1MDcsIDE0NjgsIDUxMiwgMTUwOCwgMTQ2OCwgNTEyLCAxNTEwLCAKKyAgICAxNDY4LCA1MTIsIDE1MTEsIDE0NjgsIDUxMiwgMTUxMiwgMTQ2OCwgNTEyLCAxNTEzLCAxNDY4LCA1MTIsIDE1MTQsIDE0NjgsIAorICAgIDUxMiwgMTQ5MywgMTQ2NSwgNTEyLCAxNDg5LCAxNDcxLCA1MTIsIDE0OTksIDE0NzEsIDUxMiwgMTUwOCwgMTQ3MSwgNTE0LCAKKyAgICAxNDg4LCAxNTAwLCAyNjcsIDE2NDksIDI2OCwgMTY0OSwgMjY3LCAxNjU5LCAyNjgsIDE2NTksIDI2OSwgMTY1OSwgMjcwLCAKKyAgICAxNjU5LCAyNjcsIDE2NjIsIDI2OCwgMTY2MiwgMjY5LCAxNjYyLCAyNzAsIDE2NjIsIDI2NywgMTY2NCwgMjY4LCAxNjY0LCAKKyAgICAyNjksIDE2NjQsIDI3MCwgMTY2NCwgMjY3LCAxNjU4LCAyNjgsIDE2NTgsIDI2OSwgMTY1OCwgMjcwLCAxNjU4LCAyNjcsIAorICAgIDE2NjMsIDI2OCwgMTY2MywgMjY5LCAxNjYzLCAyNzAsIDE2NjMsIDI2NywgMTY1NywgMjY4LCAxNjU3LCAyNjksIDE2NTcsIAorICAgIDI3MCwgMTY1NywgMjY3LCAxNzAwLCAyNjgsIDE3MDAsIDI2OSwgMTcwMCwgMjcwLCAxNzAwLCAyNjcsIDE3MDIsIDI2OCwgCisgICAgMTcwMiwgMjY5LCAxNzAyLCAyNzAsIDE3MDIsIDI2NywgMTY2OCwgMjY4LCAxNjY4LCAyNjksIDE2NjgsIDI3MCwgMTY2OCwgCisgICAgMjY3LCAxNjY3LCAyNjgsIDE2NjcsIDI2OSwgMTY2NywgMjcwLCAxNjY3LCAyNjcsIDE2NzAsIDI2OCwgMTY3MCwgMjY5LCAKKyAgICAxNjcwLCAyNzAsIDE2NzAsIDI2NywgMTY3MSwgMjY4LCAxNjcxLCAyNjksIDE2NzEsIDI3MCwgMTY3MSwgMjY3LCAxNjc3LCAKKyAgICAyNjgsIDE2NzcsIDI2NywgMTY3NiwgMjY4LCAxNjc2LCAyNjcsIDE2NzgsIDI2OCwgMTY3OCwgMjY3LCAxNjcyLCAyNjgsIAorICAgIDE2NzIsIDI2NywgMTY4OCwgMjY4LCAxNjg4LCAyNjcsIDE2ODEsIDI2OCwgMTY4MSwgMjY3LCAxNzA1LCAyNjgsIDE3MDUsIAorICAgIDI2OSwgMTcwNSwgMjcwLCAxNzA1LCAyNjcsIDE3MTEsIDI2OCwgMTcxMSwgMjY5LCAxNzExLCAyNzAsIDE3MTEsIDI2NywgCisgICAgMTcxNSwgMjY4LCAxNzE1LCAyNjksIDE3MTUsIDI3MCwgMTcxNSwgMjY3LCAxNzEzLCAyNjgsIDE3MTMsIDI2OSwgMTcxMywgCisgICAgMjcwLCAxNzEzLCAyNjcsIDE3MjIsIDI2OCwgMTcyMiwgMjY3LCAxNzIzLCAyNjgsIDE3MjMsIDI2OSwgMTcyMywgMjcwLCAKKyAgICAxNzIzLCAyNjcsIDE3MjgsIDI2OCwgMTcyOCwgMjY3LCAxNzI5LCAyNjgsIDE3MjksIDI2OSwgMTcyOSwgMjcwLCAxNzI5LCAKKyAgICAyNjcsIDE3MjYsIDI2OCwgMTcyNiwgMjY5LCAxNzI2LCAyNzAsIDE3MjYsIDI2NywgMTc0NiwgMjY4LCAxNzQ2LCAyNjcsIAorICAgIDE3NDcsIDI2OCwgMTc0NywgMjY3LCAxNzA5LCAyNjgsIDE3MDksIDI2OSwgMTcwOSwgMjcwLCAxNzA5LCAyNjcsIDE3MzUsIAorICAgIDI2OCwgMTczNSwgMjY3LCAxNzM0LCAyNjgsIDE3MzQsIDI2NywgMTczNiwgMjY4LCAxNzM2LCAyNjcsIDE2NTUsIDI2NywgCisgICAgMTczOSwgMjY4LCAxNzM5LCAyNjcsIDE3MzMsIDI2OCwgMTczMywgMjY3LCAxNzM3LCAyNjgsIDE3MzcsIDI2NywgMTc0NCwgCisgICAgMjY4LCAxNzQ0LCAyNjksIDE3NDQsIDI3MCwgMTc0NCwgMjY5LCAxNjA5LCAyNzAsIDE2MDksIDUyMywgMTU3NCwgMTU3NSwgCisgICAgNTI0LCAxNTc0LCAxNTc1LCA1MjMsIDE1NzQsIDE3NDksIDUyNCwgMTU3NCwgMTc0OSwgNTIzLCAxNTc0LCAxNjA4LCA1MjQsIAorICAgIDE1NzQsIDE2MDgsIDUyMywgMTU3NCwgMTczNSwgNTI0LCAxNTc0LCAxNzM1LCA1MjMsIDE1NzQsIDE3MzQsIDUyNCwgMTU3NCwgCisgICAgMTczNCwgNTIzLCAxNTc0LCAxNzM2LCA1MjQsIDE1NzQsIDE3MzYsIDUyMywgMTU3NCwgMTc0NCwgNTI0LCAxNTc0LCAxNzQ0LCAKKyAgICA1MjUsIDE1NzQsIDE3NDQsIDUyMywgMTU3NCwgMTYwOSwgNTI0LCAxNTc0LCAxNjA5LCA1MjUsIDE1NzQsIDE2MDksIDI2NywgCisgICAgMTc0MCwgMjY4LCAxNzQwLCAyNjksIDE3NDAsIDI3MCwgMTc0MCwgNTIzLCAxNTc0LCAxNTgwLCA1MjMsIDE1NzQsIDE1ODEsIAorICAgIDUyMywgMTU3NCwgMTYwNSwgNTIzLCAxNTc0LCAxNjA5LCA1MjMsIDE1NzQsIDE2MTAsIDUyMywgMTU3NiwgMTU4MCwgNTIzLCAKKyAgICAxNTc2LCAxNTgxLCA1MjMsIDE1NzYsIDE1ODIsIDUyMywgMTU3NiwgMTYwNSwgNTIzLCAxNTc2LCAxNjA5LCA1MjMsIDE1NzYsIAorICAgIDE2MTAsIDUyMywgMTU3OCwgMTU4MCwgNTIzLCAxNTc4LCAxNTgxLCA1MjMsIDE1NzgsIDE1ODIsIDUyMywgMTU3OCwgMTYwNSwgCisgICAgNTIzLCAxNTc4LCAxNjA5LCA1MjMsIDE1NzgsIDE2MTAsIDUyMywgMTU3OSwgMTU4MCwgNTIzLCAxNTc5LCAxNjA1LCA1MjMsIAorICAgIDE1NzksIDE2MDksIDUyMywgMTU3OSwgMTYxMCwgNTIzLCAxNTgwLCAxNTgxLCA1MjMsIDE1ODAsIDE2MDUsIDUyMywgMTU4MSwgCisgICAgMTU4MCwgNTIzLCAxNTgxLCAxNjA1LCA1MjMsIDE1ODIsIDE1ODAsIDUyMywgMTU4MiwgMTU4MSwgNTIzLCAxNTgyLCAxNjA1LCAKKyAgICA1MjMsIDE1ODcsIDE1ODAsIDUyMywgMTU4NywgMTU4MSwgNTIzLCAxNTg3LCAxNTgyLCA1MjMsIDE1ODcsIDE2MDUsIDUyMywgCisgICAgMTU4OSwgMTU4MSwgNTIzLCAxNTg5LCAxNjA1LCA1MjMsIDE1OTAsIDE1ODAsIDUyMywgMTU5MCwgMTU4MSwgNTIzLCAxNTkwLCAKKyAgICAxNTgyLCA1MjMsIDE1OTAsIDE2MDUsIDUyMywgMTU5MSwgMTU4MSwgNTIzLCAxNTkxLCAxNjA1LCA1MjMsIDE1OTIsIDE2MDUsIAorICAgIDUyMywgMTU5MywgMTU4MCwgNTIzLCAxNTkzLCAxNjA1LCA1MjMsIDE1OTQsIDE1ODAsIDUyMywgMTU5NCwgMTYwNSwgNTIzLCAKKyAgICAxNjAxLCAxNTgwLCA1MjMsIDE2MDEsIDE1ODEsIDUyMywgMTYwMSwgMTU4MiwgNTIzLCAxNjAxLCAxNjA1LCA1MjMsIDE2MDEsIAorICAgIDE2MDksIDUyMywgMTYwMSwgMTYxMCwgNTIzLCAxNjAyLCAxNTgxLCA1MjMsIDE2MDIsIDE2MDUsIDUyMywgMTYwMiwgMTYwOSwgCisgICAgNTIzLCAxNjAyLCAxNjEwLCA1MjMsIDE2MDMsIDE1NzUsIDUyMywgMTYwMywgMTU4MCwgNTIzLCAxNjAzLCAxNTgxLCA1MjMsIAorICAgIDE2MDMsIDE1ODIsIDUyMywgMTYwMywgMTYwNCwgNTIzLCAxNjAzLCAxNjA1LCA1MjMsIDE2MDMsIDE2MDksIDUyMywgMTYwMywgCisgICAgMTYxMCwgNTIzLCAxNjA0LCAxNTgwLCA1MjMsIDE2MDQsIDE1ODEsIDUyMywgMTYwNCwgMTU4MiwgNTIzLCAxNjA0LCAxNjA1LCAKKyAgICA1MjMsIDE2MDQsIDE2MDksIDUyMywgMTYwNCwgMTYxMCwgNTIzLCAxNjA1LCAxNTgwLCA1MjMsIDE2MDUsIDE1ODEsIDUyMywgCisgICAgMTYwNSwgMTU4MiwgNTIzLCAxNjA1LCAxNjA1LCA1MjMsIDE2MDUsIDE2MDksIDUyMywgMTYwNSwgMTYxMCwgNTIzLCAxNjA2LCAKKyAgICAxNTgwLCA1MjMsIDE2MDYsIDE1ODEsIDUyMywgMTYwNiwgMTU4MiwgNTIzLCAxNjA2LCAxNjA1LCA1MjMsIDE2MDYsIDE2MDksIAorICAgIDUyMywgMTYwNiwgMTYxMCwgNTIzLCAxNjA3LCAxNTgwLCA1MjMsIDE2MDcsIDE2MDUsIDUyMywgMTYwNywgMTYwOSwgNTIzLCAKKyAgICAxNjA3LCAxNjEwLCA1MjMsIDE2MTAsIDE1ODAsIDUyMywgMTYxMCwgMTU4MSwgNTIzLCAxNjEwLCAxNTgyLCA1MjMsIDE2MTAsIAorICAgIDE2MDUsIDUyMywgMTYxMCwgMTYwOSwgNTIzLCAxNjEwLCAxNjEwLCA1MjMsIDE1ODQsIDE2NDgsIDUyMywgMTU4NSwgMTY0OCwgCisgICAgNTIzLCAxNjA5LCAxNjQ4LCA3NzksIDMyLCAxNjEyLCAxNjE3LCA3NzksIDMyLCAxNjEzLCAxNjE3LCA3NzksIDMyLCAxNjE0LCAKKyAgICAxNjE3LCA3NzksIDMyLCAxNjE1LCAxNjE3LCA3NzksIDMyLCAxNjE2LCAxNjE3LCA3NzksIDMyLCAxNjE3LCAxNjQ4LCA1MjQsIAorICAgIDE1NzQsIDE1ODUsIDUyNCwgMTU3NCwgMTU4NiwgNTI0LCAxNTc0LCAxNjA1LCA1MjQsIDE1NzQsIDE2MDYsIDUyNCwgMTU3NCwgCisgICAgMTYwOSwgNTI0LCAxNTc0LCAxNjEwLCA1MjQsIDE1NzYsIDE1ODUsIDUyNCwgMTU3NiwgMTU4NiwgNTI0LCAxNTc2LCAxNjA1LCAKKyAgICA1MjQsIDE1NzYsIDE2MDYsIDUyNCwgMTU3NiwgMTYwOSwgNTI0LCAxNTc2LCAxNjEwLCA1MjQsIDE1NzgsIDE1ODUsIDUyNCwgCisgICAgMTU3OCwgMTU4NiwgNTI0LCAxNTc4LCAxNjA1LCA1MjQsIDE1NzgsIDE2MDYsIDUyNCwgMTU3OCwgMTYwOSwgNTI0LCAxNTc4LCAKKyAgICAxNjEwLCA1MjQsIDE1NzksIDE1ODUsIDUyNCwgMTU3OSwgMTU4NiwgNTI0LCAxNTc5LCAxNjA1LCA1MjQsIDE1NzksIDE2MDYsIAorICAgIDUyNCwgMTU3OSwgMTYwOSwgNTI0LCAxNTc5LCAxNjEwLCA1MjQsIDE2MDEsIDE2MDksIDUyNCwgMTYwMSwgMTYxMCwgNTI0LCAKKyAgICAxNjAyLCAxNjA5LCA1MjQsIDE2MDIsIDE2MTAsIDUyNCwgMTYwMywgMTU3NSwgNTI0LCAxNjAzLCAxNjA0LCA1MjQsIDE2MDMsIAorICAgIDE2MDUsIDUyNCwgMTYwMywgMTYwOSwgNTI0LCAxNjAzLCAxNjEwLCA1MjQsIDE2MDQsIDE2MDUsIDUyNCwgMTYwNCwgMTYwOSwgCisgICAgNTI0LCAxNjA0LCAxNjEwLCA1MjQsIDE2MDUsIDE1NzUsIDUyNCwgMTYwNSwgMTYwNSwgNTI0LCAxNjA2LCAxNTg1LCA1MjQsIAorICAgIDE2MDYsIDE1ODYsIDUyNCwgMTYwNiwgMTYwNSwgNTI0LCAxNjA2LCAxNjA2LCA1MjQsIDE2MDYsIDE2MDksIDUyNCwgMTYwNiwgCisgICAgMTYxMCwgNTI0LCAxNjA5LCAxNjQ4LCA1MjQsIDE2MTAsIDE1ODUsIDUyNCwgMTYxMCwgMTU4NiwgNTI0LCAxNjEwLCAxNjA1LCAKKyAgICA1MjQsIDE2MTAsIDE2MDYsIDUyNCwgMTYxMCwgMTYwOSwgNTI0LCAxNjEwLCAxNjEwLCA1MjUsIDE1NzQsIDE1ODAsIDUyNSwgCisgICAgMTU3NCwgMTU4MSwgNTI1LCAxNTc0LCAxNTgyLCA1MjUsIDE1NzQsIDE2MDUsIDUyNSwgMTU3NCwgMTYwNywgNTI1LCAxNTc2LCAKKyAgICAxNTgwLCA1MjUsIDE1NzYsIDE1ODEsIDUyNSwgMTU3NiwgMTU4MiwgNTI1LCAxNTc2LCAxNjA1LCA1MjUsIDE1NzYsIDE2MDcsIAorICAgIDUyNSwgMTU3OCwgMTU4MCwgNTI1LCAxNTc4LCAxNTgxLCA1MjUsIDE1NzgsIDE1ODIsIDUyNSwgMTU3OCwgMTYwNSwgNTI1LCAKKyAgICAxNTc4LCAxNjA3LCA1MjUsIDE1NzksIDE2MDUsIDUyNSwgMTU4MCwgMTU4MSwgNTI1LCAxNTgwLCAxNjA1LCA1MjUsIDE1ODEsIAorICAgIDE1ODAsIDUyNSwgMTU4MSwgMTYwNSwgNTI1LCAxNTgyLCAxNTgwLCA1MjUsIDE1ODIsIDE2MDUsIDUyNSwgMTU4NywgMTU4MCwgCisgICAgNTI1LCAxNTg3LCAxNTgxLCA1MjUsIDE1ODcsIDE1ODIsIDUyNSwgMTU4NywgMTYwNSwgNTI1LCAxNTg5LCAxNTgxLCA1MjUsIAorICAgIDE1ODksIDE1ODIsIDUyNSwgMTU4OSwgMTYwNSwgNTI1LCAxNTkwLCAxNTgwLCA1MjUsIDE1OTAsIDE1ODEsIDUyNSwgMTU5MCwgCisgICAgMTU4MiwgNTI1LCAxNTkwLCAxNjA1LCA1MjUsIDE1OTEsIDE1ODEsIDUyNSwgMTU5MiwgMTYwNSwgNTI1LCAxNTkzLCAxNTgwLCAKKyAgICA1MjUsIDE1OTMsIDE2MDUsIDUyNSwgMTU5NCwgMTU4MCwgNTI1LCAxNTk0LCAxNjA1LCA1MjUsIDE2MDEsIDE1ODAsIDUyNSwgCisgICAgMTYwMSwgMTU4MSwgNTI1LCAxNjAxLCAxNTgyLCA1MjUsIDE2MDEsIDE2MDUsIDUyNSwgMTYwMiwgMTU4MSwgNTI1LCAxNjAyLCAKKyAgICAxNjA1LCA1MjUsIDE2MDMsIDE1ODAsIDUyNSwgMTYwMywgMTU4MSwgNTI1LCAxNjAzLCAxNTgyLCA1MjUsIDE2MDMsIDE2MDQsIAorICAgIDUyNSwgMTYwMywgMTYwNSwgNTI1LCAxNjA0LCAxNTgwLCA1MjUsIDE2MDQsIDE1ODEsIDUyNSwgMTYwNCwgMTU4MiwgNTI1LCAKKyAgICAxNjA0LCAxNjA1LCA1MjUsIDE2MDQsIDE2MDcsIDUyNSwgMTYwNSwgMTU4MCwgNTI1LCAxNjA1LCAxNTgxLCA1MjUsIDE2MDUsIAorICAgIDE1ODIsIDUyNSwgMTYwNSwgMTYwNSwgNTI1LCAxNjA2LCAxNTgwLCA1MjUsIDE2MDYsIDE1ODEsIDUyNSwgMTYwNiwgMTU4MiwgCisgICAgNTI1LCAxNjA2LCAxNjA1LCA1MjUsIDE2MDYsIDE2MDcsIDUyNSwgMTYwNywgMTU4MCwgNTI1LCAxNjA3LCAxNjA1LCA1MjUsIAorICAgIDE2MDcsIDE2NDgsIDUyNSwgMTYxMCwgMTU4MCwgNTI1LCAxNjEwLCAxNTgxLCA1MjUsIDE2MTAsIDE1ODIsIDUyNSwgMTYxMCwgCisgICAgMTYwNSwgNTI1LCAxNjEwLCAxNjA3LCA1MjYsIDE1NzQsIDE2MDUsIDUyNiwgMTU3NCwgMTYwNywgNTI2LCAxNTc2LCAxNjA1LCAKKyAgICA1MjYsIDE1NzYsIDE2MDcsIDUyNiwgMTU3OCwgMTYwNSwgNTI2LCAxNTc4LCAxNjA3LCA1MjYsIDE1NzksIDE2MDUsIDUyNiwgCisgICAgMTU3OSwgMTYwNywgNTI2LCAxNTg3LCAxNjA1LCA1MjYsIDE1ODcsIDE2MDcsIDUyNiwgMTU4OCwgMTYwNSwgNTI2LCAxNTg4LCAKKyAgICAxNjA3LCA1MjYsIDE2MDMsIDE2MDQsIDUyNiwgMTYwMywgMTYwNSwgNTI2LCAxNjA0LCAxNjA1LCA1MjYsIDE2MDYsIDE2MDUsIAorICAgIDUyNiwgMTYwNiwgMTYwNywgNTI2LCAxNjEwLCAxNjA1LCA1MjYsIDE2MTAsIDE2MDcsIDc4MiwgMTYwMCwgMTYxNCwgMTYxNywgCisgICAgNzgyLCAxNjAwLCAxNjE1LCAxNjE3LCA3ODIsIDE2MDAsIDE2MTYsIDE2MTcsIDUyMywgMTU5MSwgMTYwOSwgNTIzLCAxNTkxLCAKKyAgICAxNjEwLCA1MjMsIDE1OTMsIDE2MDksIDUyMywgMTU5MywgMTYxMCwgNTIzLCAxNTk0LCAxNjA5LCA1MjMsIDE1OTQsIDE2MTAsIAorICAgIDUyMywgMTU4NywgMTYwOSwgNTIzLCAxNTg3LCAxNjEwLCA1MjMsIDE1ODgsIDE2MDksIDUyMywgMTU4OCwgMTYxMCwgNTIzLCAKKyAgICAxNTgxLCAxNjA5LCA1MjMsIDE1ODEsIDE2MTAsIDUyMywgMTU4MCwgMTYwOSwgNTIzLCAxNTgwLCAxNjEwLCA1MjMsIDE1ODIsIAorICAgIDE2MDksIDUyMywgMTU4MiwgMTYxMCwgNTIzLCAxNTg5LCAxNjA5LCA1MjMsIDE1ODksIDE2MTAsIDUyMywgMTU5MCwgMTYwOSwgCisgICAgNTIzLCAxNTkwLCAxNjEwLCA1MjMsIDE1ODgsIDE1ODAsIDUyMywgMTU4OCwgMTU4MSwgNTIzLCAxNTg4LCAxNTgyLCA1MjMsIAorICAgIDE1ODgsIDE2MDUsIDUyMywgMTU4OCwgMTU4NSwgNTIzLCAxNTg3LCAxNTg1LCA1MjMsIDE1ODksIDE1ODUsIDUyMywgMTU5MCwgCisgICAgMTU4NSwgNTI0LCAxNTkxLCAxNjA5LCA1MjQsIDE1OTEsIDE2MTAsIDUyNCwgMTU5MywgMTYwOSwgNTI0LCAxNTkzLCAxNjEwLCAKKyAgICA1MjQsIDE1OTQsIDE2MDksIDUyNCwgMTU5NCwgMTYxMCwgNTI0LCAxNTg3LCAxNjA5LCA1MjQsIDE1ODcsIDE2MTAsIDUyNCwgCisgICAgMTU4OCwgMTYwOSwgNTI0LCAxNTg4LCAxNjEwLCA1MjQsIDE1ODEsIDE2MDksIDUyNCwgMTU4MSwgMTYxMCwgNTI0LCAxNTgwLCAKKyAgICAxNjA5LCA1MjQsIDE1ODAsIDE2MTAsIDUyNCwgMTU4MiwgMTYwOSwgNTI0LCAxNTgyLCAxNjEwLCA1MjQsIDE1ODksIDE2MDksIAorICAgIDUyNCwgMTU4OSwgMTYxMCwgNTI0LCAxNTkwLCAxNjA5LCA1MjQsIDE1OTAsIDE2MTAsIDUyNCwgMTU4OCwgMTU4MCwgNTI0LCAKKyAgICAxNTg4LCAxNTgxLCA1MjQsIDE1ODgsIDE1ODIsIDUyNCwgMTU4OCwgMTYwNSwgNTI0LCAxNTg4LCAxNTg1LCA1MjQsIDE1ODcsIAorICAgIDE1ODUsIDUyNCwgMTU4OSwgMTU4NSwgNTI0LCAxNTkwLCAxNTg1LCA1MjUsIDE1ODgsIDE1ODAsIDUyNSwgMTU4OCwgMTU4MSwgCisgICAgNTI1LCAxNTg4LCAxNTgyLCA1MjUsIDE1ODgsIDE2MDUsIDUyNSwgMTU4NywgMTYwNywgNTI1LCAxNTg4LCAxNjA3LCA1MjUsIAorICAgIDE1OTEsIDE2MDUsIDUyNiwgMTU4NywgMTU4MCwgNTI2LCAxNTg3LCAxNTgxLCA1MjYsIDE1ODcsIDE1ODIsIDUyNiwgMTU4OCwgCisgICAgMTU4MCwgNTI2LCAxNTg4LCAxNTgxLCA1MjYsIDE1ODgsIDE1ODIsIDUyNiwgMTU5MSwgMTYwNSwgNTI2LCAxNTkyLCAxNjA1LCAKKyAgICA1MjQsIDE1NzUsIDE2MTEsIDUyMywgMTU3NSwgMTYxMSwgNzgxLCAxNTc4LCAxNTgwLCAxNjA1LCA3ODAsIDE1NzgsIDE1ODEsIAorICAgIDE1ODAsIDc4MSwgMTU3OCwgMTU4MSwgMTU4MCwgNzgxLCAxNTc4LCAxNTgxLCAxNjA1LCA3ODEsIDE1NzgsIDE1ODIsIAorICAgIDE2MDUsIDc4MSwgMTU3OCwgMTYwNSwgMTU4MCwgNzgxLCAxNTc4LCAxNjA1LCAxNTgxLCA3ODEsIDE1NzgsIDE2MDUsIAorICAgIDE1ODIsIDc4MCwgMTU4MCwgMTYwNSwgMTU4MSwgNzgxLCAxNTgwLCAxNjA1LCAxNTgxLCA3ODAsIDE1ODEsIDE2MDUsIAorICAgIDE2MTAsIDc4MCwgMTU4MSwgMTYwNSwgMTYwOSwgNzgxLCAxNTg3LCAxNTgxLCAxNTgwLCA3ODEsIDE1ODcsIDE1ODAsIAorICAgIDE1ODEsIDc4MCwgMTU4NywgMTU4MCwgMTYwOSwgNzgwLCAxNTg3LCAxNjA1LCAxNTgxLCA3ODEsIDE1ODcsIDE2MDUsIAorICAgIDE1ODEsIDc4MSwgMTU4NywgMTYwNSwgMTU4MCwgNzgwLCAxNTg3LCAxNjA1LCAxNjA1LCA3ODEsIDE1ODcsIDE2MDUsIAorICAgIDE2MDUsIDc4MCwgMTU4OSwgMTU4MSwgMTU4MSwgNzgxLCAxNTg5LCAxNTgxLCAxNTgxLCA3ODAsIDE1ODksIDE2MDUsIAorICAgIDE2MDUsIDc4MCwgMTU4OCwgMTU4MSwgMTYwNSwgNzgxLCAxNTg4LCAxNTgxLCAxNjA1LCA3ODAsIDE1ODgsIDE1ODAsIAorICAgIDE2MTAsIDc4MCwgMTU4OCwgMTYwNSwgMTU4MiwgNzgxLCAxNTg4LCAxNjA1LCAxNTgyLCA3ODAsIDE1ODgsIDE2MDUsIAorICAgIDE2MDUsIDc4MSwgMTU4OCwgMTYwNSwgMTYwNSwgNzgwLCAxNTkwLCAxNTgxLCAxNjA5LCA3ODAsIDE1OTAsIDE1ODIsIAorICAgIDE2MDUsIDc4MSwgMTU5MCwgMTU4MiwgMTYwNSwgNzgwLCAxNTkxLCAxNjA1LCAxNTgxLCA3ODEsIDE1OTEsIDE2MDUsIAorICAgIDE1ODEsIDc4MSwgMTU5MSwgMTYwNSwgMTYwNSwgNzgwLCAxNTkxLCAxNjA1LCAxNjEwLCA3ODAsIDE1OTMsIDE1ODAsIAorICAgIDE2MDUsIDc4MCwgMTU5MywgMTYwNSwgMTYwNSwgNzgxLCAxNTkzLCAxNjA1LCAxNjA1LCA3ODAsIDE1OTMsIDE2MDUsIAorICAgIDE2MDksIDc4MCwgMTU5NCwgMTYwNSwgMTYwNSwgNzgwLCAxNTk0LCAxNjA1LCAxNjEwLCA3ODAsIDE1OTQsIDE2MDUsIAorICAgIDE2MDksIDc4MCwgMTYwMSwgMTU4MiwgMTYwNSwgNzgxLCAxNjAxLCAxNTgyLCAxNjA1LCA3ODAsIDE2MDIsIDE2MDUsIAorICAgIDE1ODEsIDc4MCwgMTYwMiwgMTYwNSwgMTYwNSwgNzgwLCAxNjA0LCAxNTgxLCAxNjA1LCA3ODAsIDE2MDQsIDE1ODEsIAorICAgIDE2MTAsIDc4MCwgMTYwNCwgMTU4MSwgMTYwOSwgNzgxLCAxNjA0LCAxNTgwLCAxNTgwLCA3ODAsIDE2MDQsIDE1ODAsIAorICAgIDE1ODAsIDc4MCwgMTYwNCwgMTU4MiwgMTYwNSwgNzgxLCAxNjA0LCAxNTgyLCAxNjA1LCA3ODAsIDE2MDQsIDE2MDUsIAorICAgIDE1ODEsIDc4MSwgMTYwNCwgMTYwNSwgMTU4MSwgNzgxLCAxNjA1LCAxNTgxLCAxNTgwLCA3ODEsIDE2MDUsIDE1ODEsIAorICAgIDE2MDUsIDc4MCwgMTYwNSwgMTU4MSwgMTYxMCwgNzgxLCAxNjA1LCAxNTgwLCAxNTgxLCA3ODEsIDE2MDUsIDE1ODAsIAorICAgIDE2MDUsIDc4MSwgMTYwNSwgMTU4MiwgMTU4MCwgNzgxLCAxNjA1LCAxNTgyLCAxNjA1LCA3ODEsIDE2MDUsIDE1ODAsIAorICAgIDE1ODIsIDc4MSwgMTYwNywgMTYwNSwgMTU4MCwgNzgxLCAxNjA3LCAxNjA1LCAxNjA1LCA3ODEsIDE2MDYsIDE1ODEsIAorICAgIDE2MDUsIDc4MCwgMTYwNiwgMTU4MSwgMTYwOSwgNzgwLCAxNjA2LCAxNTgwLCAxNjA1LCA3ODEsIDE2MDYsIDE1ODAsIAorICAgIDE2MDUsIDc4MCwgMTYwNiwgMTU4MCwgMTYwOSwgNzgwLCAxNjA2LCAxNjA1LCAxNjEwLCA3ODAsIDE2MDYsIDE2MDUsIAorICAgIDE2MDksIDc4MCwgMTYxMCwgMTYwNSwgMTYwNSwgNzgxLCAxNjEwLCAxNjA1LCAxNjA1LCA3ODAsIDE1NzYsIDE1ODIsIAorICAgIDE2MTAsIDc4MCwgMTU3OCwgMTU4MCwgMTYxMCwgNzgwLCAxNTc4LCAxNTgwLCAxNjA5LCA3ODAsIDE1NzgsIDE1ODIsIAorICAgIDE2MTAsIDc4MCwgMTU3OCwgMTU4MiwgMTYwOSwgNzgwLCAxNTc4LCAxNjA1LCAxNjEwLCA3ODAsIDE1NzgsIDE2MDUsIAorICAgIDE2MDksIDc4MCwgMTU4MCwgMTYwNSwgMTYxMCwgNzgwLCAxNTgwLCAxNTgxLCAxNjA5LCA3ODAsIDE1ODAsIDE2MDUsIAorICAgIDE2MDksIDc4MCwgMTU4NywgMTU4MiwgMTYwOSwgNzgwLCAxNTg5LCAxNTgxLCAxNjEwLCA3ODAsIDE1ODgsIDE1ODEsIAorICAgIDE2MTAsIDc4MCwgMTU5MCwgMTU4MSwgMTYxMCwgNzgwLCAxNjA0LCAxNTgwLCAxNjEwLCA3ODAsIDE2MDQsIDE2MDUsIAorICAgIDE2MTAsIDc4MCwgMTYxMCwgMTU4MSwgMTYxMCwgNzgwLCAxNjEwLCAxNTgwLCAxNjEwLCA3ODAsIDE2MTAsIDE2MDUsIAorICAgIDE2MTAsIDc4MCwgMTYwNSwgMTYwNSwgMTYxMCwgNzgwLCAxNjAyLCAxNjA1LCAxNjEwLCA3ODAsIDE2MDYsIDE1ODEsIAorICAgIDE2MTAsIDc4MSwgMTYwMiwgMTYwNSwgMTU4MSwgNzgxLCAxNjA0LCAxNTgxLCAxNjA1LCA3ODAsIDE1OTMsIDE2MDUsIAorICAgIDE2MTAsIDc4MCwgMTYwMywgMTYwNSwgMTYxMCwgNzgxLCAxNjA2LCAxNTgwLCAxNTgxLCA3ODAsIDE2MDUsIDE1ODIsIAorICAgIDE2MTAsIDc4MSwgMTYwNCwgMTU4MCwgMTYwNSwgNzgwLCAxNjAzLCAxNjA1LCAxNjA1LCA3ODAsIDE2MDQsIDE1ODAsIAorICAgIDE2MDUsIDc4MCwgMTYwNiwgMTU4MCwgMTU4MSwgNzgwLCAxNTgwLCAxNTgxLCAxNjEwLCA3ODAsIDE1ODEsIDE1ODAsIAorICAgIDE2MTAsIDc4MCwgMTYwNSwgMTU4MCwgMTYxMCwgNzgwLCAxNjAxLCAxNjA1LCAxNjEwLCA3ODAsIDE1NzYsIDE1ODEsIAorICAgIDE2MTAsIDc4MSwgMTYwMywgMTYwNSwgMTYwNSwgNzgxLCAxNTkzLCAxNTgwLCAxNjA1LCA3ODEsIDE1ODksIDE2MDUsIAorICAgIDE2MDUsIDc4MCwgMTU4NywgMTU4MiwgMTYxMCwgNzgwLCAxNjA2LCAxNTgwLCAxNjEwLCA3NzksIDE1ODksIDE2MDQsIAorICAgIDE3NDYsIDc3OSwgMTYwMiwgMTYwNCwgMTc0NiwgMTAzNSwgMTU3NSwgMTYwNCwgMTYwNCwgMTYwNywgMTAzNSwgMTU3NSwgCisgICAgMTYwMywgMTU3NiwgMTU4NSwgMTAzNSwgMTYwNSwgMTU4MSwgMTYwNSwgMTU4MywgMTAzNSwgMTU4OSwgMTYwNCwgMTU5MywgCisgICAgMTYwNSwgMTAzNSwgMTU4NSwgMTU4NywgMTYwOCwgMTYwNCwgMTAzNSwgMTU5MywgMTYwNCwgMTYxMCwgMTYwNywgMTAzNSwgCisgICAgMTYwOCwgMTU4NywgMTYwNCwgMTYwNSwgNzc5LCAxNTg5LCAxNjA0LCAxNjA5LCA0NjE5LCAxNTg5LCAxNjA0LCAxNjA5LCAKKyAgICAzMiwgMTU3NSwgMTYwNCwgMTYwNCwgMTYwNywgMzIsIDE1OTMsIDE2MDQsIDE2MTAsIDE2MDcsIDMyLCAxNjA4LCAxNTg3LCAKKyAgICAxNjA0LCAxNjA1LCAyMDU5LCAxNTgwLCAxNjA0LCAzMiwgMTU4MCwgMTYwNCwgMTU3NSwgMTYwNCwgMTYwNywgMTAzNSwgCisgICAgMTU4NSwgMTc0MCwgMTU3NSwgMTYwNCwgMjY1LCA0NCwgMjY1LCAxMjI4OSwgMjY1LCAxMjI5MCwgMjY1LCA1OCwgMjY1LCAKKyAgICA1OSwgMjY1LCAzMywgMjY1LCA2MywgMjY1LCAxMjMxMCwgMjY1LCAxMjMxMSwgMjY1LCA4MjMwLCAyNjUsIDgyMjksIDI2NSwgCisgICAgODIxMiwgMjY1LCA4MjExLCAyNjUsIDk1LCAyNjUsIDk1LCAyNjUsIDQwLCAyNjUsIDQxLCAyNjUsIDEyMywgMjY1LCAxMjUsIAorICAgIDI2NSwgMTIzMDgsIDI2NSwgMTIzMDksIDI2NSwgMTIzMDQsIDI2NSwgMTIzMDUsIDI2NSwgMTIyOTgsIDI2NSwgMTIyOTksIAorICAgIDI2NSwgMTIyOTYsIDI2NSwgMTIyOTcsIDI2NSwgMTIzMDAsIDI2NSwgMTIzMDEsIDI2NSwgMTIzMDIsIDI2NSwgMTIzMDMsIAorICAgIDI2NSwgOTEsIDI2NSwgOTMsIDI1OCwgODI1NCwgMjU4LCA4MjU0LCAyNTgsIDgyNTQsIDI1OCwgODI1NCwgMjU4LCA5NSwgCisgICAgMjU4LCA5NSwgMjU4LCA5NSwgMjcxLCA0NCwgMjcxLCAxMjI4OSwgMjcxLCA0NiwgMjcxLCA1OSwgMjcxLCA1OCwgMjcxLCAKKyAgICA2MywgMjcxLCAzMywgMjcxLCA4MjEyLCAyNzEsIDQwLCAyNzEsIDQxLCAyNzEsIDEyMywgMjcxLCAxMjUsIDI3MSwgMTIzMDgsIAorICAgIDI3MSwgMTIzMDksIDI3MSwgMzUsIDI3MSwgMzgsIDI3MSwgNDIsIDI3MSwgNDMsIDI3MSwgNDUsIDI3MSwgNjAsIDI3MSwgCisgICAgNjIsIDI3MSwgNjEsIDI3MSwgOTIsIDI3MSwgMzYsIDI3MSwgMzcsIDI3MSwgNjQsIDUyMywgMzIsIDE2MTEsIDUyNiwgCisgICAgMTYwMCwgMTYxMSwgNTIzLCAzMiwgMTYxMiwgNTIzLCAzMiwgMTYxMywgNTIzLCAzMiwgMTYxNCwgNTI2LCAxNjAwLCAxNjE0LCAKKyAgICA1MjMsIDMyLCAxNjE1LCA1MjYsIDE2MDAsIDE2MTUsIDUyMywgMzIsIDE2MTYsIDUyNiwgMTYwMCwgMTYxNiwgNTIzLCAzMiwgCisgICAgMTYxNywgNTI2LCAxNjAwLCAxNjE3LCA1MjMsIDMyLCAxNjE4LCA1MjYsIDE2MDAsIDE2MTgsIDI2NywgMTU2OSwgMjY3LCAKKyAgICAxNTcwLCAyNjgsIDE1NzAsIDI2NywgMTU3MSwgMjY4LCAxNTcxLCAyNjcsIDE1NzIsIDI2OCwgMTU3MiwgMjY3LCAxNTczLCAKKyAgICAyNjgsIDE1NzMsIDI2NywgMTU3NCwgMjY4LCAxNTc0LCAyNjksIDE1NzQsIDI3MCwgMTU3NCwgMjY3LCAxNTc1LCAyNjgsIAorICAgIDE1NzUsIDI2NywgMTU3NiwgMjY4LCAxNTc2LCAyNjksIDE1NzYsIDI3MCwgMTU3NiwgMjY3LCAxNTc3LCAyNjgsIDE1NzcsIAorICAgIDI2NywgMTU3OCwgMjY4LCAxNTc4LCAyNjksIDE1NzgsIDI3MCwgMTU3OCwgMjY3LCAxNTc5LCAyNjgsIDE1NzksIDI2OSwgCisgICAgMTU3OSwgMjcwLCAxNTc5LCAyNjcsIDE1ODAsIDI2OCwgMTU4MCwgMjY5LCAxNTgwLCAyNzAsIDE1ODAsIDI2NywgMTU4MSwgCisgICAgMjY4LCAxNTgxLCAyNjksIDE1ODEsIDI3MCwgMTU4MSwgMjY3LCAxNTgyLCAyNjgsIDE1ODIsIDI2OSwgMTU4MiwgMjcwLCAKKyAgICAxNTgyLCAyNjcsIDE1ODMsIDI2OCwgMTU4MywgMjY3LCAxNTg0LCAyNjgsIDE1ODQsIDI2NywgMTU4NSwgMjY4LCAxNTg1LCAKKyAgICAyNjcsIDE1ODYsIDI2OCwgMTU4NiwgMjY3LCAxNTg3LCAyNjgsIDE1ODcsIDI2OSwgMTU4NywgMjcwLCAxNTg3LCAyNjcsIAorICAgIDE1ODgsIDI2OCwgMTU4OCwgMjY5LCAxNTg4LCAyNzAsIDE1ODgsIDI2NywgMTU4OSwgMjY4LCAxNTg5LCAyNjksIDE1ODksIAorICAgIDI3MCwgMTU4OSwgMjY3LCAxNTkwLCAyNjgsIDE1OTAsIDI2OSwgMTU5MCwgMjcwLCAxNTkwLCAyNjcsIDE1OTEsIDI2OCwgCisgICAgMTU5MSwgMjY5LCAxNTkxLCAyNzAsIDE1OTEsIDI2NywgMTU5MiwgMjY4LCAxNTkyLCAyNjksIDE1OTIsIDI3MCwgMTU5MiwgCisgICAgMjY3LCAxNTkzLCAyNjgsIDE1OTMsIDI2OSwgMTU5MywgMjcwLCAxNTkzLCAyNjcsIDE1OTQsIDI2OCwgMTU5NCwgMjY5LCAKKyAgICAxNTk0LCAyNzAsIDE1OTQsIDI2NywgMTYwMSwgMjY4LCAxNjAxLCAyNjksIDE2MDEsIDI3MCwgMTYwMSwgMjY3LCAxNjAyLCAKKyAgICAyNjgsIDE2MDIsIDI2OSwgMTYwMiwgMjcwLCAxNjAyLCAyNjcsIDE2MDMsIDI2OCwgMTYwMywgMjY5LCAxNjAzLCAyNzAsIAorICAgIDE2MDMsIDI2NywgMTYwNCwgMjY4LCAxNjA0LCAyNjksIDE2MDQsIDI3MCwgMTYwNCwgMjY3LCAxNjA1LCAyNjgsIDE2MDUsIAorICAgIDI2OSwgMTYwNSwgMjcwLCAxNjA1LCAyNjcsIDE2MDYsIDI2OCwgMTYwNiwgMjY5LCAxNjA2LCAyNzAsIDE2MDYsIDI2NywgCisgICAgMTYwNywgMjY4LCAxNjA3LCAyNjksIDE2MDcsIDI3MCwgMTYwNywgMjY3LCAxNjA4LCAyNjgsIDE2MDgsIDI2NywgMTYwOSwgCisgICAgMjY4LCAxNjA5LCAyNjcsIDE2MTAsIDI2OCwgMTYxMCwgMjY5LCAxNjEwLCAyNzAsIDE2MTAsIDUyMywgMTYwNCwgMTU3MCwgCisgICAgNTI0LCAxNjA0LCAxNTcwLCA1MjMsIDE2MDQsIDE1NzEsIDUyNCwgMTYwNCwgMTU3MSwgNTIzLCAxNjA0LCAxNTczLCA1MjQsIAorICAgIDE2MDQsIDE1NzMsIDUyMywgMTYwNCwgMTU3NSwgNTI0LCAxNjA0LCAxNTc1LCAyNjQsIDMzLCAyNjQsIDM0LCAyNjQsIDM1LCAKKyAgICAyNjQsIDM2LCAyNjQsIDM3LCAyNjQsIDM4LCAyNjQsIDM5LCAyNjQsIDQwLCAyNjQsIDQxLCAyNjQsIDQyLCAyNjQsIDQzLCAKKyAgICAyNjQsIDQ0LCAyNjQsIDQ1LCAyNjQsIDQ2LCAyNjQsIDQ3LCAyNjQsIDQ4LCAyNjQsIDQ5LCAyNjQsIDUwLCAyNjQsIDUxLCAKKyAgICAyNjQsIDUyLCAyNjQsIDUzLCAyNjQsIDU0LCAyNjQsIDU1LCAyNjQsIDU2LCAyNjQsIDU3LCAyNjQsIDU4LCAyNjQsIDU5LCAKKyAgICAyNjQsIDYwLCAyNjQsIDYxLCAyNjQsIDYyLCAyNjQsIDYzLCAyNjQsIDY0LCAyNjQsIDY1LCAyNjQsIDY2LCAyNjQsIDY3LCAKKyAgICAyNjQsIDY4LCAyNjQsIDY5LCAyNjQsIDcwLCAyNjQsIDcxLCAyNjQsIDcyLCAyNjQsIDczLCAyNjQsIDc0LCAyNjQsIDc1LCAKKyAgICAyNjQsIDc2LCAyNjQsIDc3LCAyNjQsIDc4LCAyNjQsIDc5LCAyNjQsIDgwLCAyNjQsIDgxLCAyNjQsIDgyLCAyNjQsIDgzLCAKKyAgICAyNjQsIDg0LCAyNjQsIDg1LCAyNjQsIDg2LCAyNjQsIDg3LCAyNjQsIDg4LCAyNjQsIDg5LCAyNjQsIDkwLCAyNjQsIDkxLCAKKyAgICAyNjQsIDkyLCAyNjQsIDkzLCAyNjQsIDk0LCAyNjQsIDk1LCAyNjQsIDk2LCAyNjQsIDk3LCAyNjQsIDk4LCAyNjQsIDk5LCAKKyAgICAyNjQsIDEwMCwgMjY0LCAxMDEsIDI2NCwgMTAyLCAyNjQsIDEwMywgMjY0LCAxMDQsIDI2NCwgMTA1LCAyNjQsIDEwNiwgCisgICAgMjY0LCAxMDcsIDI2NCwgMTA4LCAyNjQsIDEwOSwgMjY0LCAxMTAsIDI2NCwgMTExLCAyNjQsIDExMiwgMjY0LCAxMTMsIAorICAgIDI2NCwgMTE0LCAyNjQsIDExNSwgMjY0LCAxMTYsIDI2NCwgMTE3LCAyNjQsIDExOCwgMjY0LCAxMTksIDI2NCwgMTIwLCAKKyAgICAyNjQsIDEyMSwgMjY0LCAxMjIsIDI2NCwgMTIzLCAyNjQsIDEyNCwgMjY0LCAxMjUsIDI2NCwgMTI2LCAyNjQsIDEwNjI5LCAKKyAgICAyNjQsIDEwNjMwLCAyNzIsIDEyMjkwLCAyNzIsIDEyMzAwLCAyNzIsIDEyMzAxLCAyNzIsIDEyMjg5LCAyNzIsIDEyNTM5LCAKKyAgICAyNzIsIDEyNTMwLCAyNzIsIDEyNDQ5LCAyNzIsIDEyNDUxLCAyNzIsIDEyNDUzLCAyNzIsIDEyNDU1LCAyNzIsIDEyNDU3LCAKKyAgICAyNzIsIDEyNTE1LCAyNzIsIDEyNTE3LCAyNzIsIDEyNTE5LCAyNzIsIDEyNDgzLCAyNzIsIDEyNTQwLCAyNzIsIDEyNDUwLCAKKyAgICAyNzIsIDEyNDUyLCAyNzIsIDEyNDU0LCAyNzIsIDEyNDU2LCAyNzIsIDEyNDU4LCAyNzIsIDEyNDU5LCAyNzIsIDEyNDYxLCAKKyAgICAyNzIsIDEyNDYzLCAyNzIsIDEyNDY1LCAyNzIsIDEyNDY3LCAyNzIsIDEyNDY5LCAyNzIsIDEyNDcxLCAyNzIsIDEyNDczLCAKKyAgICAyNzIsIDEyNDc1LCAyNzIsIDEyNDc3LCAyNzIsIDEyNDc5LCAyNzIsIDEyNDgxLCAyNzIsIDEyNDg0LCAyNzIsIDEyNDg2LCAKKyAgICAyNzIsIDEyNDg4LCAyNzIsIDEyNDkwLCAyNzIsIDEyNDkxLCAyNzIsIDEyNDkyLCAyNzIsIDEyNDkzLCAyNzIsIDEyNDk0LCAKKyAgICAyNzIsIDEyNDk1LCAyNzIsIDEyNDk4LCAyNzIsIDEyNTAxLCAyNzIsIDEyNTA0LCAyNzIsIDEyNTA3LCAyNzIsIDEyNTEwLCAKKyAgICAyNzIsIDEyNTExLCAyNzIsIDEyNTEyLCAyNzIsIDEyNTEzLCAyNzIsIDEyNTE0LCAyNzIsIDEyNTE2LCAyNzIsIDEyNTE4LCAKKyAgICAyNzIsIDEyNTIwLCAyNzIsIDEyNTIxLCAyNzIsIDEyNTIyLCAyNzIsIDEyNTIzLCAyNzIsIDEyNTI0LCAyNzIsIDEyNTI1LCAKKyAgICAyNzIsIDEyNTI3LCAyNzIsIDEyNTMxLCAyNzIsIDEyNDQxLCAyNzIsIDEyNDQyLCAyNzIsIDEyNjQ0LCAyNzIsIDEyNTkzLCAKKyAgICAyNzIsIDEyNTk0LCAyNzIsIDEyNTk1LCAyNzIsIDEyNTk2LCAyNzIsIDEyNTk3LCAyNzIsIDEyNTk4LCAyNzIsIDEyNTk5LCAKKyAgICAyNzIsIDEyNjAwLCAyNzIsIDEyNjAxLCAyNzIsIDEyNjAyLCAyNzIsIDEyNjAzLCAyNzIsIDEyNjA0LCAyNzIsIDEyNjA1LCAKKyAgICAyNzIsIDEyNjA2LCAyNzIsIDEyNjA3LCAyNzIsIDEyNjA4LCAyNzIsIDEyNjA5LCAyNzIsIDEyNjEwLCAyNzIsIDEyNjExLCAKKyAgICAyNzIsIDEyNjEyLCAyNzIsIDEyNjEzLCAyNzIsIDEyNjE0LCAyNzIsIDEyNjE1LCAyNzIsIDEyNjE2LCAyNzIsIDEyNjE3LCAKKyAgICAyNzIsIDEyNjE4LCAyNzIsIDEyNjE5LCAyNzIsIDEyNjIwLCAyNzIsIDEyNjIxLCAyNzIsIDEyNjIyLCAyNzIsIDEyNjIzLCAKKyAgICAyNzIsIDEyNjI0LCAyNzIsIDEyNjI1LCAyNzIsIDEyNjI2LCAyNzIsIDEyNjI3LCAyNzIsIDEyNjI4LCAyNzIsIDEyNjI5LCAKKyAgICAyNzIsIDEyNjMwLCAyNzIsIDEyNjMxLCAyNzIsIDEyNjMyLCAyNzIsIDEyNjMzLCAyNzIsIDEyNjM0LCAyNzIsIDEyNjM1LCAKKyAgICAyNzIsIDEyNjM2LCAyNzIsIDEyNjM3LCAyNzIsIDEyNjM4LCAyNzIsIDEyNjM5LCAyNzIsIDEyNjQwLCAyNzIsIDEyNjQxLCAKKyAgICAyNzIsIDEyNjQyLCAyNzIsIDEyNjQzLCAyNjQsIDE2MiwgMjY0LCAxNjMsIDI2NCwgMTcyLCAyNjQsIDE3NSwgMjY0LCAxNjYsIAorICAgIDI2NCwgMTY1LCAyNjQsIDgzNjEsIDI3MiwgOTQ3NCwgMjcyLCA4NTkyLCAyNzIsIDg1OTMsIDI3MiwgODU5NCwgMjcyLCAKKyAgICA4NTk1LCAyNzIsIDk2MzIsIDI3MiwgOTY3NSwgNTEyLCA2OTc4NSwgNjk4MTgsIDUxMiwgNjk3ODcsIDY5ODE4LCA1MTIsIAorICAgIDY5Nzk3LCA2OTgxOCwgNTEyLCA2OTkzNywgNjk5MjcsIDUxMiwgNjk5MzgsIDY5OTI3LCA1MTIsIDExOTEyNywgMTE5MTQxLCAKKyAgICA1MTIsIDExOTEyOCwgMTE5MTQxLCA1MTIsIDExOTEzNSwgMTE5MTUwLCA1MTIsIDExOTEzNSwgMTE5MTUxLCA1MTIsIAorICAgIDExOTEzNSwgMTE5MTUyLCA1MTIsIDExOTEzNSwgMTE5MTUzLCA1MTIsIDExOTEzNSwgMTE5MTU0LCA1MTIsIDExOTIyNSwgCisgICAgMTE5MTQxLCA1MTIsIDExOTIyNiwgMTE5MTQxLCA1MTIsIDExOTIyNywgMTE5MTUwLCA1MTIsIDExOTIyOCwgMTE5MTUwLCAKKyAgICA1MTIsIDExOTIyNywgMTE5MTUxLCA1MTIsIDExOTIyOCwgMTE5MTUxLCAyNjIsIDY1LCAyNjIsIDY2LCAyNjIsIDY3LCAyNjIsIAorICAgIDY4LCAyNjIsIDY5LCAyNjIsIDcwLCAyNjIsIDcxLCAyNjIsIDcyLCAyNjIsIDczLCAyNjIsIDc0LCAyNjIsIDc1LCAyNjIsIAorICAgIDc2LCAyNjIsIDc3LCAyNjIsIDc4LCAyNjIsIDc5LCAyNjIsIDgwLCAyNjIsIDgxLCAyNjIsIDgyLCAyNjIsIDgzLCAyNjIsIAorICAgIDg0LCAyNjIsIDg1LCAyNjIsIDg2LCAyNjIsIDg3LCAyNjIsIDg4LCAyNjIsIDg5LCAyNjIsIDkwLCAyNjIsIDk3LCAyNjIsIAorICAgIDk4LCAyNjIsIDk5LCAyNjIsIDEwMCwgMjYyLCAxMDEsIDI2MiwgMTAyLCAyNjIsIDEwMywgMjYyLCAxMDQsIDI2MiwgMTA1LCAKKyAgICAyNjIsIDEwNiwgMjYyLCAxMDcsIDI2MiwgMTA4LCAyNjIsIDEwOSwgMjYyLCAxMTAsIDI2MiwgMTExLCAyNjIsIDExMiwgCisgICAgMjYyLCAxMTMsIDI2MiwgMTE0LCAyNjIsIDExNSwgMjYyLCAxMTYsIDI2MiwgMTE3LCAyNjIsIDExOCwgMjYyLCAxMTksIAorICAgIDI2MiwgMTIwLCAyNjIsIDEyMSwgMjYyLCAxMjIsIDI2MiwgNjUsIDI2MiwgNjYsIDI2MiwgNjcsIDI2MiwgNjgsIDI2MiwgCisgICAgNjksIDI2MiwgNzAsIDI2MiwgNzEsIDI2MiwgNzIsIDI2MiwgNzMsIDI2MiwgNzQsIDI2MiwgNzUsIDI2MiwgNzYsIDI2MiwgCisgICAgNzcsIDI2MiwgNzgsIDI2MiwgNzksIDI2MiwgODAsIDI2MiwgODEsIDI2MiwgODIsIDI2MiwgODMsIDI2MiwgODQsIDI2MiwgCisgICAgODUsIDI2MiwgODYsIDI2MiwgODcsIDI2MiwgODgsIDI2MiwgODksIDI2MiwgOTAsIDI2MiwgOTcsIDI2MiwgOTgsIDI2MiwgCisgICAgOTksIDI2MiwgMTAwLCAyNjIsIDEwMSwgMjYyLCAxMDIsIDI2MiwgMTAzLCAyNjIsIDEwNSwgMjYyLCAxMDYsIDI2MiwgMTA3LCAKICAgICAyNjIsIDEwOCwgMjYyLCAxMDksIDI2MiwgMTEwLCAyNjIsIDExMSwgMjYyLCAxMTIsIDI2MiwgMTEzLCAyNjIsIDExNCwgCiAgICAgMjYyLCAxMTUsIDI2MiwgMTE2LCAyNjIsIDExNywgMjYyLCAxMTgsIDI2MiwgMTE5LCAyNjIsIDEyMCwgMjYyLCAxMjEsIAogICAgIDI2MiwgMTIyLCAyNjIsIDY1LCAyNjIsIDY2LCAyNjIsIDY3LCAyNjIsIDY4LCAyNjIsIDY5LCAyNjIsIDcwLCAyNjIsIDcxLCAKQEAgLTM1MTAsMjAgKzM1NzksNDIgQEAKICAgICA1MiwgMjYyLCA1MywgMjYyLCA1NCwgMjYyLCA1NSwgMjYyLCA1NiwgMjYyLCA1NywgMjYyLCA0OCwgMjYyLCA0OSwgMjYyLCAKICAgICA1MCwgMjYyLCA1MSwgMjYyLCA1MiwgMjYyLCA1MywgMjYyLCA1NCwgMjYyLCA1NSwgMjYyLCA1NiwgMjYyLCA1NywgMjYyLCAKICAgICA0OCwgMjYyLCA0OSwgMjYyLCA1MCwgMjYyLCA1MSwgMjYyLCA1MiwgMjYyLCA1MywgMjYyLCA1NCwgMjYyLCA1NSwgMjYyLCAKLSAgICA1NiwgMjYyLCA1NywgNTE0LCA0OCwgNDYsIDUxNCwgNDgsIDQ0LCA1MTQsIDQ5LCA0NCwgNTE0LCA1MCwgNDQsIDUxNCwgNTEsIAotICAgIDQ0LCA1MTQsIDUyLCA0NCwgNTE0LCA1MywgNDQsIDUxNCwgNTQsIDQ0LCA1MTQsIDU1LCA0NCwgNTE0LCA1NiwgNDQsIDUxNCwgCi0gICAgNTcsIDQ0LCA3NzAsIDQwLCA2NSwgNDEsIDc3MCwgNDAsIDY2LCA0MSwgNzcwLCA0MCwgNjcsIDQxLCA3NzAsIDQwLCA2OCwgCi0gICAgNDEsIDc3MCwgNDAsIDY5LCA0MSwgNzcwLCA0MCwgNzAsIDQxLCA3NzAsIDQwLCA3MSwgNDEsIDc3MCwgNDAsIDcyLCA0MSwgCi0gICAgNzcwLCA0MCwgNzMsIDQxLCA3NzAsIDQwLCA3NCwgNDEsIDc3MCwgNDAsIDc1LCA0MSwgNzcwLCA0MCwgNzYsIDQxLCA3NzAsIAotICAgIDQwLCA3NywgNDEsIDc3MCwgNDAsIDc4LCA0MSwgNzcwLCA0MCwgNzksIDQxLCA3NzAsIDQwLCA4MCwgNDEsIDc3MCwgNDAsIAotICAgIDgxLCA0MSwgNzcwLCA0MCwgODIsIDQxLCA3NzAsIDQwLCA4MywgNDEsIDc3MCwgNDAsIDg0LCA0MSwgNzcwLCA0MCwgODUsIAotICAgIDQxLCA3NzAsIDQwLCA4NiwgNDEsIDc3MCwgNDAsIDg3LCA0MSwgNzcwLCA0MCwgODgsIDQxLCA3NzAsIDQwLCA4OSwgNDEsIAotICAgIDc3MCwgNDAsIDkwLCA0MSwgNzcwLCAxMjMwOCwgODMsIDEyMzA5LCAyNjMsIDY3LCAyNjMsIDgyLCA1MTksIDY3LCA2OCwgCi0gICAgNTE5LCA4NywgOTAsIDI2NiwgNjUsIDI2NiwgNjYsIDI2NiwgNjcsIDI2NiwgNjgsIDI2NiwgNjksIDI2NiwgNzAsIDI2NiwgCi0gICAgNzEsIDI2NiwgNzIsIDI2NiwgNzMsIDI2NiwgNzQsIDI2NiwgNzUsIDI2NiwgNzYsIDI2NiwgNzcsIDI2NiwgNzgsIDI2NiwgCi0gICAgNzksIDI2NiwgODAsIDI2NiwgODEsIDI2NiwgODIsIDI2NiwgODMsIDI2NiwgODQsIDI2NiwgODUsIDI2NiwgODYsIDI2NiwgCi0gICAgODcsIDI2NiwgODgsIDI2NiwgODksIDI2NiwgOTAsIDUyMiwgNzIsIDg2LCA1MjIsIDc3LCA4NiwgNTIyLCA4MywgNjgsIAotICAgIDUyMiwgODMsIDgzLCA3NzgsIDgwLCA4MCwgODYsIDUyMiwgODcsIDY3LCA1MjIsIDY4LCA3NCwgNTIyLCAxMjQxMSwgCisgICAgNTYsIDI2MiwgNTcsIDI2MiwgMTU3NSwgMjYyLCAxNTc2LCAyNjIsIDE1ODAsIDI2MiwgMTU4MywgMjYyLCAxNjA4LCAyNjIsIAorICAgIDE1ODYsIDI2MiwgMTU4MSwgMjYyLCAxNTkxLCAyNjIsIDE2MTAsIDI2MiwgMTYwMywgMjYyLCAxNjA0LCAyNjIsIDE2MDUsIAorICAgIDI2MiwgMTYwNiwgMjYyLCAxNTg3LCAyNjIsIDE1OTMsIDI2MiwgMTYwMSwgMjYyLCAxNTg5LCAyNjIsIDE2MDIsIDI2MiwgCisgICAgMTU4NSwgMjYyLCAxNTg4LCAyNjIsIDE1NzgsIDI2MiwgMTU3OSwgMjYyLCAxNTgyLCAyNjIsIDE1ODQsIDI2MiwgMTU5MCwgCisgICAgMjYyLCAxNTkyLCAyNjIsIDE1OTQsIDI2MiwgMTY0NiwgMjYyLCAxNzIyLCAyNjIsIDE2OTcsIDI2MiwgMTY0NywgMjYyLCAKKyAgICAxNTc2LCAyNjIsIDE1ODAsIDI2MiwgMTYwNywgMjYyLCAxNTgxLCAyNjIsIDE2MTAsIDI2MiwgMTYwMywgMjYyLCAxNjA0LCAKKyAgICAyNjIsIDE2MDUsIDI2MiwgMTYwNiwgMjYyLCAxNTg3LCAyNjIsIDE1OTMsIDI2MiwgMTYwMSwgMjYyLCAxNTg5LCAyNjIsIAorICAgIDE2MDIsIDI2MiwgMTU4OCwgMjYyLCAxNTc4LCAyNjIsIDE1NzksIDI2MiwgMTU4MiwgMjYyLCAxNTkwLCAyNjIsIDE1OTQsIAorICAgIDI2MiwgMTU4MCwgMjYyLCAxNTgxLCAyNjIsIDE2MTAsIDI2MiwgMTYwNCwgMjYyLCAxNjA2LCAyNjIsIDE1ODcsIDI2MiwgCisgICAgMTU5MywgMjYyLCAxNTg5LCAyNjIsIDE2MDIsIDI2MiwgMTU4OCwgMjYyLCAxNTgyLCAyNjIsIDE1OTAsIDI2MiwgMTU5NCwgCisgICAgMjYyLCAxNzIyLCAyNjIsIDE2NDcsIDI2MiwgMTU3NiwgMjYyLCAxNTgwLCAyNjIsIDE2MDcsIDI2MiwgMTU4MSwgMjYyLCAKKyAgICAxNTkxLCAyNjIsIDE2MTAsIDI2MiwgMTYwMywgMjYyLCAxNjA1LCAyNjIsIDE2MDYsIDI2MiwgMTU4NywgMjYyLCAxNTkzLCAKKyAgICAyNjIsIDE2MDEsIDI2MiwgMTU4OSwgMjYyLCAxNjAyLCAyNjIsIDE1ODgsIDI2MiwgMTU3OCwgMjYyLCAxNTc5LCAyNjIsIAorICAgIDE1ODIsIDI2MiwgMTU5MCwgMjYyLCAxNTkyLCAyNjIsIDE1OTQsIDI2MiwgMTY0NiwgMjYyLCAxNjk3LCAyNjIsIDE1NzUsIAorICAgIDI2MiwgMTU3NiwgMjYyLCAxNTgwLCAyNjIsIDE1ODMsIDI2MiwgMTYwNywgMjYyLCAxNjA4LCAyNjIsIDE1ODYsIDI2MiwgCisgICAgMTU4MSwgMjYyLCAxNTkxLCAyNjIsIDE2MTAsIDI2MiwgMTYwNCwgMjYyLCAxNjA1LCAyNjIsIDE2MDYsIDI2MiwgMTU4NywgCisgICAgMjYyLCAxNTkzLCAyNjIsIDE2MDEsIDI2MiwgMTU4OSwgMjYyLCAxNjAyLCAyNjIsIDE1ODUsIDI2MiwgMTU4OCwgMjYyLCAKKyAgICAxNTc4LCAyNjIsIDE1NzksIDI2MiwgMTU4MiwgMjYyLCAxNTg0LCAyNjIsIDE1OTAsIDI2MiwgMTU5MiwgMjYyLCAxNTk0LCAKKyAgICAyNjIsIDE1NzYsIDI2MiwgMTU4MCwgMjYyLCAxNTgzLCAyNjIsIDE2MDgsIDI2MiwgMTU4NiwgMjYyLCAxNTgxLCAyNjIsIAorICAgIDE1OTEsIDI2MiwgMTYxMCwgMjYyLCAxNjA0LCAyNjIsIDE2MDUsIDI2MiwgMTYwNiwgMjYyLCAxNTg3LCAyNjIsIDE1OTMsIAorICAgIDI2MiwgMTYwMSwgMjYyLCAxNTg5LCAyNjIsIDE2MDIsIDI2MiwgMTU4NSwgMjYyLCAxNTg4LCAyNjIsIDE1NzgsIDI2MiwgCisgICAgMTU3OSwgMjYyLCAxNTgyLCAyNjIsIDE1ODQsIDI2MiwgMTU5MCwgMjYyLCAxNTkyLCAyNjIsIDE1OTQsIDUxNCwgNDgsIDQ2LCAKKyAgICA1MTQsIDQ4LCA0NCwgNTE0LCA0OSwgNDQsIDUxNCwgNTAsIDQ0LCA1MTQsIDUxLCA0NCwgNTE0LCA1MiwgNDQsIDUxNCwgNTMsIAorICAgIDQ0LCA1MTQsIDU0LCA0NCwgNTE0LCA1NSwgNDQsIDUxNCwgNTYsIDQ0LCA1MTQsIDU3LCA0NCwgNzcwLCA0MCwgNjUsIDQxLCAKKyAgICA3NzAsIDQwLCA2NiwgNDEsIDc3MCwgNDAsIDY3LCA0MSwgNzcwLCA0MCwgNjgsIDQxLCA3NzAsIDQwLCA2OSwgNDEsIDc3MCwgCisgICAgNDAsIDcwLCA0MSwgNzcwLCA0MCwgNzEsIDQxLCA3NzAsIDQwLCA3MiwgNDEsIDc3MCwgNDAsIDczLCA0MSwgNzcwLCA0MCwgCisgICAgNzQsIDQxLCA3NzAsIDQwLCA3NSwgNDEsIDc3MCwgNDAsIDc2LCA0MSwgNzcwLCA0MCwgNzcsIDQxLCA3NzAsIDQwLCA3OCwgCisgICAgNDEsIDc3MCwgNDAsIDc5LCA0MSwgNzcwLCA0MCwgODAsIDQxLCA3NzAsIDQwLCA4MSwgNDEsIDc3MCwgNDAsIDgyLCA0MSwgCisgICAgNzcwLCA0MCwgODMsIDQxLCA3NzAsIDQwLCA4NCwgNDEsIDc3MCwgNDAsIDg1LCA0MSwgNzcwLCA0MCwgODYsIDQxLCA3NzAsIAorICAgIDQwLCA4NywgNDEsIDc3MCwgNDAsIDg4LCA0MSwgNzcwLCA0MCwgODksIDQxLCA3NzAsIDQwLCA5MCwgNDEsIDc3MCwgCisgICAgMTIzMDgsIDgzLCAxMjMwOSwgMjYzLCA2NywgMjYzLCA4MiwgNTE5LCA2NywgNjgsIDUxOSwgODcsIDkwLCAyNjYsIDY1LCAKKyAgICAyNjYsIDY2LCAyNjYsIDY3LCAyNjYsIDY4LCAyNjYsIDY5LCAyNjYsIDcwLCAyNjYsIDcxLCAyNjYsIDcyLCAyNjYsIDczLCAKKyAgICAyNjYsIDc0LCAyNjYsIDc1LCAyNjYsIDc2LCAyNjYsIDc3LCAyNjYsIDc4LCAyNjYsIDc5LCAyNjYsIDgwLCAyNjYsIDgxLCAKKyAgICAyNjYsIDgyLCAyNjYsIDgzLCAyNjYsIDg0LCAyNjYsIDg1LCAyNjYsIDg2LCAyNjYsIDg3LCAyNjYsIDg4LCAyNjYsIDg5LCAKKyAgICAyNjYsIDkwLCA1MjIsIDcyLCA4NiwgNTIyLCA3NywgODYsIDUyMiwgODMsIDY4LCA1MjIsIDgzLCA4MywgNzc4LCA4MCwgODAsIAorICAgIDg2LCA1MjIsIDg3LCA2NywgNTE1LCA3NywgNjcsIDUxNSwgNzcsIDY4LCA1MjIsIDY4LCA3NCwgNTIyLCAxMjQxMSwgCiAgICAgMTIzNjMsIDUyMiwgMTI0NjcsIDEyNDY3LCAyNjYsIDEyNDY5LCAyNjYsIDI1MTYzLCAyNjYsIDIzMzgzLCAyNjYsIDIxNDUyLCAKICAgICAyNjYsIDEyNDg3LCAyNjYsIDIwMTA4LCAyNjYsIDIyODEwLCAyNjYsIDM1Mjk5LCAyNjYsIDIyODI1LCAyNjYsIDIwMTMyLCAKICAgICAyNjYsIDI2MTQ0LCAyNjYsIDI4OTYxLCAyNjYsIDI2MDA5LCAyNjYsIDIxMDY5LCAyNjYsIDI0NDYwLCAyNjYsIDIwODc3LCAKQEAgLTM2NDMsNyArMzczNCw3IEBACiAgICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCiAgICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCiAgICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMzUsIDM2LCAzNywgMzgsIDM5LCA0MCwgCi0gICAgNDEsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDQyLCA3LCA3LCA3LCA3LCA3LCA3LCAKKyAgICA0MSwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNDIsIDQzLCA3LCA3LCA3LCA3LCAKICAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKICAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKICAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKQEAgLTM2NTEsOSArMzc0Miw5IEBACiAgICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCiAgICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCiAgICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNDMsIDcsIDcsIDQ0LCA0NSwgCi0gICAgNDYsIDQ3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA0OCwgNDksIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAorICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDQ0LCA3LCA3LCA0NSwgCisgICAgNDYsIDQ3LCA0OCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCisgICAgNywgNywgNDksIDcsIDcsIDUwLCA1MSwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCiAgICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCiAgICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCiAgICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCkBAIC0zNjY0LDcgKzM3NTUsNyBAQAogICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAogICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAogICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDUwLCA1MSwgNTIsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAorICAgIDcsIDcsIDcsIDcsIDcsIDUyLCA1MywgNTQsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAogICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAogICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAogICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIApAQCAtMzgxMyw3ICszOTA0LDcgQEAKICAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKICAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKICAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKKyAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKIH07CiAKIHN0YXRpYyB1bnNpZ25lZCBzaG9ydCBkZWNvbXBfaW5kZXgyW10gPSB7CkBAIC00MjgyLDM1NiArNDM3MywxNjMgQEAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA2NjQ4LCA2NjUwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NjUyLCA2NjU0LCA2NjU2LCA2NjU4LCA2NjYwLCA2NjYyLCA2NjY0LCAKKyAgICA2NjY2LCA2NjY4LCA2NjcwLCA2NjcyLCA2Njc0LCA2Njc2LCA2Njc4LCA2NjgwLCA2NjgyLCA2Njg0LCA2Njg2LCA2Njg4LCAKKyAgICA2NjkwLCA2NjkyLCA2Njk0LCA2Njk2LCA2Njk4LCA2NzAwLCA2NzAyLCA2NzA0LCA2NzA2LCA2NzA4LCA2NzEwLCA2NzEyLCAKKyAgICA2NzE0LCA2NzE2LCA2NzE4LCA2NzIwLCA2NzIyLCA2NzI0LCA2NzI2LCA2NzI4LCA2NzMwLCA2NzMyLCA2NzM0LCA2NzM2LCAKKyAgICA2NzM4LCA2NzQwLCA2NzQyLCA2NzQ0LCA2NzQ2LCA2NzQ4LCA2NzUwLCA2NzUyLCA2NzU0LCA2NzU2LCA2NzU4LCA2NzYwLCAKKyAgICA2NzYyLCA2NzY0LCA2NzY2LCA2NzY4LCA2NzcwLCA2NzcyLCA2Nzc0LCA2Nzc2LCA2Nzc4LCA2NzgwLCA2NzgyLCA2Nzg0LCAKKyAgICA2Nzg2LCA2Nzg4LCA2NzkwLCA2NzkyLCA2Nzk0LCA2Nzk2LCA2Nzk4LCA2ODAwLCA2ODAyLCA2ODA0LCA2ODA2LCA2ODA4LCAKKyAgICA2ODEwLCA2ODEyLCA2ODE0LCA2ODE2LCA2ODE4LCA2ODIwLCA2ODIyLCA2ODI0LCA2ODI2LCA2ODI4LCA2ODMwLCA2ODMyLCAKKyAgICA2ODM0LCA2ODM2LCA2ODM4LCA2ODQwLCA2ODQyLCA2ODQ0LCA2ODQ2LCA2ODQ4LCA2ODUwLCA2ODUyLCA2ODU0LCA2ODU2LCAKKyAgICA2ODU4LCA2ODYwLCA2ODYyLCA2ODY0LCA2ODY2LCA2ODY4LCA2ODcwLCA2ODcyLCA2ODc0LCA2ODc2LCA2ODc4LCA2ODgwLCAKKyAgICA2ODgyLCA2ODg0LCA2ODg2LCA2ODg4LCA2ODkwLCA2ODkyLCA2ODk0LCA2ODk2LCA2ODk4LCA2OTAwLCA2OTAyLCA2OTA0LCAKKyAgICA2OTA2LCA2OTA4LCA2OTEwLCA2OTEyLCA2OTE0LCA2OTE2LCA2OTE4LCA2OTIwLCA2OTIyLCA2OTI0LCA2OTI2LCA2OTI4LCAKKyAgICA2OTMwLCA2OTMyLCA2OTM0LCA2OTM2LCA2OTM4LCA2OTQwLCA2OTQyLCA2OTQ0LCA2OTQ2LCA2OTQ4LCA2OTUwLCA2OTUyLCAKKyAgICA2OTU0LCA2OTU2LCA2OTU4LCA2OTYwLCA2OTYyLCA2OTY0LCA2OTY2LCA2OTY4LCA2OTcwLCA2OTcyLCA2OTc0LCA2OTc2LCAKKyAgICA2OTc4LCA2OTgwLCA2OTgyLCA2OTg0LCA2OTg2LCA2OTg4LCA2OTkwLCA2OTkyLCA2OTk0LCA2OTk2LCA2OTk4LCA3MDAwLCAKKyAgICA3MDAyLCA3MDA0LCA3MDA2LCA3MDA4LCA3MDEwLCA3MDEyLCA3MDE0LCA3MDE2LCA3MDE4LCA3MDIwLCA3MDIyLCA3MDI0LCAKKyAgICA3MDI2LCA3MDI4LCA3MDMwLCA3MDMyLCA3MDM0LCA3MDM2LCA3MDM4LCA3MDQwLCA3MDQyLCA3MDQ0LCA3MDQ2LCA3MDQ4LCAKKyAgICA3MDUwLCA3MDUyLCA3MDU0LCA3MDU2LCA3MDU4LCA3MDYwLCA3MDYyLCA3MDY0LCA3MDY2LCA3MDY4LCA3MDcwLCA3MDcyLCAKKyAgICA3MDc0LCA3MDc2LCA3MDc4LCA3MDgwLCA3MDgyLCA3MDg0LCA3MDg2LCA3MDg4LCA3MDkwLCA3MDkyLCA3MDk0LCA3MDk2LCAKKyAgICA3MDk4LCA3MTAwLCA3MTAyLCA3MTA0LCA3MTA2LCA3MTA4LCA3MTEwLCA3MTEyLCA3MTE0LCA3MTE2LCA3MTE4LCA3MTIwLCAKKyAgICA3MTIyLCA3MTI0LCA3MTI2LCA3MTI4LCA3MTMwLCA3MTMyLCA3MTM0LCA3MTM2LCA3MTM4LCA3MTQwLCA3MTQyLCA3MTQ0LCAKKyAgICA3MTQ2LCA3MTQ4LCA3MTUwLCA3MTUyLCA3MTU0LCA3MTU2LCA3MTU4LCA3MTYwLCA3MTYyLCA3MTY0LCA3MTY2LCA3MTY4LCAKKyAgICA3MTcwLCA3MTcyLCA3MTc0LCA3MTc2LCA3MTc4LCA3MTgwLCA3MTgyLCA3MTg0LCA3MTg2LCA3MTg4LCA3MTkwLCAwLCAwLCAKKyAgICA3MTkyLCAwLCA3MTk0LCAwLCAwLCA3MTk2LCA3MTk4LCA3MjAwLCA3MjAyLCA3MjA0LCA3MjA2LCA3MjA4LCA3MjEwLCAKKyAgICA3MjEyLCA3MjE0LCAwLCA3MjE2LCAwLCA3MjE4LCAwLCAwLCA3MjIwLCA3MjIyLCAwLCAwLCAwLCA3MjI0LCA3MjI2LCAKKyAgICA3MjI4LCA3MjMwLCA3MjMyLCA3MjM0LCA3MjM2LCA3MjM4LCA3MjQwLCA3MjQyLCA3MjQ0LCA3MjQ2LCA3MjQ4LCA3MjUwLCAKKyAgICA3MjUyLCA3MjU0LCA3MjU2LCA3MjU4LCA3MjYwLCA3MjYyLCA3MjY0LCA3MjY2LCA3MjY4LCA3MjcwLCA3MjcyLCA3Mjc0LCAKKyAgICA3Mjc2LCA3Mjc4LCA3MjgwLCA3MjgyLCA3Mjg0LCA3Mjg2LCA3Mjg4LCA3MjkwLCA3MjkyLCA3Mjk0LCA3Mjk2LCA3Mjk4LCAKKyAgICA3MzAwLCA3MzAyLCA3MzA0LCA3MzA2LCA3MzA4LCA3MzEwLCA3MzEyLCA3MzE0LCA3MzE2LCA3MzE4LCA3MzIwLCA3MzIyLCAKKyAgICA3MzI0LCA3MzI2LCA3MzI4LCA3MzMwLCA3MzMyLCA3MzM0LCA3MzM2LCA3MzM4LCA3MzQwLCA3MzQyLCA3MzQ0LCA3MzQ2LCAKKyAgICA3MzQ4LCA3MzUwLCA3MzUyLCA3MzU0LCA3MzU2LCA3MzU4LCAwLCAwLCA3MzYwLCA3MzYyLCA3MzY0LCA3MzY2LCA3MzY4LCAKKyAgICA3MzcwLCA3MzcyLCA3Mzc0LCA3Mzc2LCA3Mzc4LCA3MzgwLCA3MzgyLCA3Mzg0LCA3Mzg2LCA3Mzg4LCA3MzkwLCA3MzkyLCAKKyAgICA3Mzk0LCA3Mzk2LCA3Mzk4LCA3NDAwLCA3NDAyLCA3NDA0LCA3NDA2LCA3NDA4LCA3NDEwLCA3NDEyLCA3NDE0LCA3NDE2LCAKKyAgICA3NDE4LCA3NDIwLCA3NDIyLCA3NDI0LCA3NDI2LCA3NDI4LCA3NDMwLCA3NDMyLCA3NDM0LCA3NDM2LCA3NDM4LCA3NDQwLCAKKyAgICA3NDQyLCA3NDQ0LCA3NDQ2LCA3NDQ4LCA3NDUwLCA3NDUyLCA3NDU0LCA3NDU2LCA3NDU4LCA3NDYwLCA3NDYyLCA3NDY0LCAKKyAgICA3NDY2LCA3NDY4LCA3NDcwLCA3NDcyLCA3NDc0LCA3NDc2LCA3NDc4LCA3NDgwLCA3NDgyLCA3NDg0LCA3NDg2LCA3NDg4LCAKKyAgICA3NDkwLCA3NDkyLCA3NDk0LCA3NDk2LCA3NDk4LCA3NTAwLCA3NTAyLCA3NTA0LCA3NTA2LCA3NTA4LCA3NTEwLCA3NTEyLCAKKyAgICA3NTE0LCA3NTE2LCA3NTE4LCA3NTIwLCA3NTIyLCA3NTI0LCA3NTI2LCA3NTI4LCA3NTMwLCA3NTMyLCA3NTM0LCA3NTM2LCAKKyAgICA3NTM4LCA3NTQwLCA3NTQyLCA3NTQ0LCA3NTQ2LCA3NTQ4LCA3NTUwLCA3NTUyLCA3NTU0LCA3NTU2LCA3NTU4LCA3NTYwLCAKKyAgICA3NTYyLCA3NTY0LCA3NTY2LCA3NTY4LCA3NTcwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NjQ4LCA2NjUwLCA2NjUyLCA2NjU0LCA2NjU2LCA2NjU4LCA2NjYwLCA2NjYyLCAKLSAgICA2NjY0LCA2NjY2LCA2NjY4LCA2NjcwLCA2NjcyLCA2Njc0LCA2Njc2LCA2Njc4LCA2NjgwLCA2NjgyLCA2Njg0LCA2Njg2LCAKLSAgICA2Njg4LCA2NjkwLCA2NjkyLCA2Njk0LCA2Njk2LCA2Njk4LCA2NzAwLCA2NzAyLCA2NzA0LCA2NzA2LCA2NzA4LCA2NzEwLCAKLSAgICA2NzEyLCA2NzE0LCA2NzE2LCA2NzE4LCA2NzIwLCA2NzIyLCA2NzI0LCA2NzI2LCA2NzI4LCA2NzMwLCA2NzMyLCA2NzM0LCAKLSAgICA2NzM2LCA2NzM4LCA2NzQwLCA2NzQyLCA2NzQ0LCA2NzQ2LCA2NzQ4LCA2NzUwLCA2NzUyLCA2NzU0LCA2NzU2LCA2NzU4LCAKLSAgICA2NzYwLCA2NzYyLCA2NzY0LCA2NzY2LCA2NzY4LCA2NzcwLCA2NzcyLCA2Nzc0LCA2Nzc2LCA2Nzc4LCA2NzgwLCA2NzgyLCAKLSAgICA2Nzg0LCA2Nzg2LCA2Nzg4LCA2NzkwLCA2NzkyLCA2Nzk0LCA2Nzk2LCA2Nzk4LCA2ODAwLCA2ODAyLCA2ODA0LCA2ODA2LCAKLSAgICA2ODA4LCA2ODEwLCA2ODEyLCA2ODE0LCA2ODE2LCA2ODE4LCA2ODIwLCA2ODIyLCA2ODI0LCA2ODI2LCA2ODI4LCA2ODMwLCAKLSAgICA2ODMyLCA2ODM0LCA2ODM2LCA2ODM4LCA2ODQwLCA2ODQyLCA2ODQ0LCA2ODQ2LCA2ODQ4LCA2ODUwLCA2ODUyLCA2ODU0LCAKLSAgICA2ODU2LCA2ODU4LCA2ODYwLCA2ODYyLCA2ODY0LCA2ODY2LCA2ODY4LCA2ODcwLCA2ODcyLCA2ODc0LCA2ODc2LCA2ODc4LCAKLSAgICA2ODgwLCA2ODgyLCA2ODg0LCA2ODg2LCA2ODg4LCA2ODkwLCA2ODkyLCA2ODk0LCA2ODk2LCA2ODk4LCA2OTAwLCA2OTAyLCAKLSAgICA2OTA0LCA2OTA2LCA2OTA4LCA2OTEwLCA2OTEyLCA2OTE0LCA2OTE2LCA2OTE4LCA2OTIwLCA2OTIyLCA2OTI0LCA2OTI2LCAKLSAgICA2OTI4LCA2OTMwLCA2OTMyLCA2OTM0LCA2OTM2LCA2OTM4LCA2OTQwLCA2OTQyLCA2OTQ0LCA2OTQ2LCA2OTQ4LCA2OTUwLCAKLSAgICA2OTUyLCA2OTU0LCA2OTU2LCA2OTU4LCA2OTYwLCA2OTYyLCA2OTY0LCA2OTY2LCA2OTY4LCA2OTcwLCA2OTcyLCA2OTc0LCAKLSAgICA2OTc2LCA2OTc4LCA2OTgwLCA2OTgyLCA2OTg0LCA2OTg2LCA2OTg4LCA2OTkwLCA2OTkyLCA2OTk0LCA2OTk2LCA2OTk4LCAKLSAgICA3MDAwLCA3MDAyLCA3MDA0LCA3MDA2LCA3MDA4LCA3MDEwLCA3MDEyLCA3MDE0LCA3MDE2LCA3MDE4LCA3MDIwLCA3MDIyLCAKLSAgICA3MDI0LCA3MDI2LCA3MDI4LCA3MDMwLCA3MDMyLCA3MDM0LCA3MDM2LCA3MDM4LCA3MDQwLCA3MDQyLCA3MDQ0LCA3MDQ2LCAKLSAgICA3MDQ4LCA3MDUwLCA3MDUyLCA3MDU0LCA3MDU2LCA3MDU4LCA3MDYwLCA3MDYyLCA3MDY0LCA3MDY2LCA3MDY4LCA3MDcwLCAKLSAgICA3MDcyLCA3MDc0LCA3MDc2LCA3MDc4LCA3MDgwLCA3MDgyLCA3MDg0LCA3MDg2LCA3MDg4LCA3MDkwLCA3MDkyLCA3MDk0LCAKLSAgICA3MDk2LCA3MDk4LCA3MTAwLCA3MTAyLCA3MTA0LCA3MTA2LCA3MTA4LCA3MTEwLCA3MTEyLCA3MTE0LCA3MTE2LCA3MTE4LCAKLSAgICA3MTIwLCA3MTIyLCA3MTI0LCA3MTI2LCA3MTI4LCA3MTMwLCA3MTMyLCA3MTM0LCA3MTM2LCA3MTM4LCA3MTQwLCA3MTQyLCAKLSAgICA3MTQ0LCA3MTQ2LCA3MTQ4LCA3MTUwLCA3MTUyLCA3MTU0LCA3MTU2LCA3MTU4LCA3MTYwLCA3MTYyLCA3MTY0LCA3MTY2LCAKLSAgICA3MTY4LCA3MTcwLCA3MTcyLCA3MTc0LCA3MTc2LCA3MTc4LCA3MTgwLCA3MTgyLCA3MTg0LCA3MTg2LCAwLCAwLCA3MTg4LCAKLSAgICAwLCA3MTkwLCAwLCAwLCA3MTkyLCA3MTk0LCA3MTk2LCA3MTk4LCA3MjAwLCA3MjAyLCA3MjA0LCA3MjA2LCA3MjA4LCAKLSAgICA3MjEwLCAwLCA3MjEyLCAwLCA3MjE0LCAwLCAwLCA3MjE2LCA3MjE4LCAwLCAwLCAwLCA3MjIwLCA3MjIyLCA3MjI0LCAKLSAgICA3MjI2LCAwLCAwLCA3MjI4LCA3MjMwLCA3MjMyLCA3MjM0LCA3MjM2LCA3MjM4LCA3MjQwLCA3MjQyLCA3MjQ0LCA3MjQ2LCAKLSAgICA3MjQ4LCA3MjUwLCA3MjUyLCA3MjU0LCA3MjU2LCA3MjU4LCA3MjYwLCA3MjYyLCA3MjY0LCA3MjY2LCA3MjY4LCA3MjcwLCAKLSAgICA3MjcyLCA3Mjc0LCA3Mjc2LCA3Mjc4LCA3MjgwLCA3MjgyLCA3Mjg0LCA3Mjg2LCA3Mjg4LCA3MjkwLCA3MjkyLCA3Mjk0LCAKLSAgICA3Mjk2LCA3Mjk4LCA3MzAwLCA3MzAyLCA3MzA0LCA3MzA2LCA3MzA4LCA3MzEwLCA3MzEyLCA3MzE0LCA3MzE2LCA3MzE4LCAKLSAgICA3MzIwLCA3MzIyLCA3MzI0LCA3MzI2LCA3MzI4LCA3MzMwLCA3MzMyLCA3MzM0LCA3MzM2LCA3MzM4LCA3MzQwLCA3MzQyLCAKLSAgICA3MzQ0LCA3MzQ2LCA3MzQ4LCA3MzUwLCAwLCAwLCA3MzUyLCA3MzU0LCA3MzU2LCA3MzU4LCA3MzYwLCA3MzYyLCA3MzY0LCAKLSAgICA3MzY2LCA3MzY4LCA3MzcwLCA3MzcyLCA3Mzc0LCA3Mzc2LCA3Mzc4LCA3MzgwLCA3MzgyLCA3Mzg0LCA3Mzg2LCA3Mzg4LCAKLSAgICA3MzkwLCA3MzkyLCA3Mzk0LCA3Mzk2LCA3Mzk4LCA3NDAwLCA3NDAyLCA3NDA0LCA3NDA2LCA3NDA4LCA3NDEwLCA3NDEyLCAKLSAgICA3NDE0LCA3NDE2LCA3NDE4LCA3NDIwLCA3NDIyLCA3NDI0LCA3NDI2LCA3NDI4LCA3NDMwLCA3NDMyLCA3NDM0LCA3NDM2LCAKLSAgICA3NDM4LCA3NDQwLCA3NDQyLCA3NDQ0LCA3NDQ2LCA3NDQ4LCA3NDUwLCA3NDUyLCA3NDU0LCA3NDU2LCA3NDU4LCA3NDYwLCAKLSAgICA3NDYyLCA3NDY0LCA3NDY2LCA3NDY4LCA3NDcwLCA3NDcyLCA3NDc0LCA3NDc2LCA3NDc4LCA3NDgwLCA3NDgyLCA3NDg0LCAKLSAgICA3NDg2LCA3NDg4LCA3NDkwLCA3NDkyLCA3NDk0LCA3NDk2LCA3NDk4LCA3NTAwLCA3NTAyLCA3NTA0LCA3NTA2LCA3NTA4LCAKLSAgICA3NTEwLCA3NTEyLCA3NTE0LCA3NTE2LCA3NTE4LCA3NTIwLCA3NTIyLCA3NTI0LCA3NTI2LCA3NTI4LCA3NTMwLCA3NTMyLCAKLSAgICA3NTM0LCA3NTM2LCA3NTM4LCA3NTQwLCA3NTQyLCA3NTQ0LCA3NTQ2LCA3NTQ4LCA3NTUwLCA3NTUyLCA3NTU0LCA3NTU2LCAKLSAgICA3NTU4LCA3NTYwLCA3NTYyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3NTY0LCA3NTY3LCAKLSAgICA3NTcwLCA3NTczLCA3NTc3LCA3NTgxLCA3NTg0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3NTg3LCAKLSAgICA3NTkwLCA3NTkzLCA3NTk2LCA3NTk5LCAwLCAwLCAwLCAwLCAwLCA3NjAyLCAwLCA3NjA1LCA3NjA4LCA3NjEwLCA3NjEyLCAKLSAgICA3NjE0LCA3NjE2LCA3NjE4LCA3NjIwLCA3NjIyLCA3NjI0LCA3NjI2LCA3NjI4LCA3NjMxLCA3NjM0LCA3NjM3LCA3NjQwLCAKLSAgICA3NjQzLCA3NjQ2LCA3NjQ5LCA3NjUyLCA3NjU1LCA3NjU4LCA3NjYxLCA3NjY0LCAwLCA3NjY3LCA3NjcwLCA3NjczLCAKLSAgICA3Njc2LCA3Njc5LCAwLCA3NjgyLCAwLCA3Njg1LCA3Njg4LCAwLCA3NjkxLCA3Njk0LCAwLCA3Njk3LCA3NzAwLCA3NzAzLCAKLSAgICA3NzA2LCA3NzA5LCA3NzEyLCA3NzE1LCA3NzE4LCA3NzIxLCA3NzI0LCA3NzI3LCA3NzI5LCA3NzMxLCA3NzMzLCA3NzM1LCAKLSAgICA3NzM3LCA3NzM5LCA3NzQxLCA3NzQzLCA3NzQ1LCA3NzQ3LCA3NzQ5LCA3NzUxLCA3NzUzLCA3NzU1LCA3NzU3LCA3NzU5LCAKLSAgICA3NzYxLCA3NzYzLCA3NzY1LCA3NzY3LCA3NzY5LCA3NzcxLCA3NzczLCA3Nzc1LCA3Nzc3LCA3Nzc5LCA3NzgxLCA3NzgzLCAKLSAgICA3Nzg1LCA3Nzg3LCA3Nzg5LCA3NzkxLCA3NzkzLCA3Nzk1LCA3Nzk3LCA3Nzk5LCA3ODAxLCA3ODAzLCA3ODA1LCA3ODA3LCAKLSAgICA3ODA5LCA3ODExLCA3ODEzLCA3ODE1LCA3ODE3LCA3ODE5LCA3ODIxLCA3ODIzLCA3ODI1LCA3ODI3LCA3ODI5LCA3ODMxLCAKLSAgICA3ODMzLCA3ODM1LCA3ODM3LCA3ODM5LCA3ODQxLCA3ODQzLCA3ODQ1LCA3ODQ3LCA3ODQ5LCA3ODUxLCA3ODUzLCA3ODU1LCAKLSAgICA3ODU3LCA3ODU5LCA3ODYxLCA3ODYzLCA3ODY1LCA3ODY3LCA3ODY5LCA3ODcxLCA3ODczLCA3ODc1LCA3ODc3LCA3ODc5LCAKLSAgICA3ODgxLCA3ODgzLCA3ODg1LCA3ODg3LCA3ODg5LCA3ODkxLCA3ODkzLCA3ODk1LCA3ODk3LCA3ODk5LCA3OTAxLCA3OTAzLCAKLSAgICA3OTA1LCA3OTA3LCA3OTA5LCA3OTExLCA3OTEzLCA3OTE1LCA3OTE3LCA3OTE5LCA3OTIxLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA3NTcyLCA3NTc1LCA3NTc4LCA3NTgxLCA3NTg1LCA3NTg5LCA3NTkyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA3NTk1LCA3NTk4LCA3NjAxLCA3NjA0LCA3NjA3LCAwLCAwLCAwLCAwLCAwLCA3NjEwLCAwLCA3NjEzLCA3NjE2LCAKKyAgICA3NjE4LCA3NjIwLCA3NjIyLCA3NjI0LCA3NjI2LCA3NjI4LCA3NjMwLCA3NjMyLCA3NjM0LCA3NjM2LCA3NjM5LCA3NjQyLCAKKyAgICA3NjQ1LCA3NjQ4LCA3NjUxLCA3NjU0LCA3NjU3LCA3NjYwLCA3NjYzLCA3NjY2LCA3NjY5LCA3NjcyLCAwLCA3Njc1LCAKKyAgICA3Njc4LCA3NjgxLCA3Njg0LCA3Njg3LCAwLCA3NjkwLCAwLCA3NjkzLCA3Njk2LCAwLCA3Njk5LCA3NzAyLCAwLCA3NzA1LCAKKyAgICA3NzA4LCA3NzExLCA3NzE0LCA3NzE3LCA3NzIwLCA3NzIzLCA3NzI2LCA3NzI5LCA3NzMyLCA3NzM1LCA3NzM3LCA3NzM5LCAKKyAgICA3NzQxLCA3NzQzLCA3NzQ1LCA3NzQ3LCA3NzQ5LCA3NzUxLCA3NzUzLCA3NzU1LCA3NzU3LCA3NzU5LCA3NzYxLCA3NzYzLCAKKyAgICA3NzY1LCA3NzY3LCA3NzY5LCA3NzcxLCA3NzczLCA3Nzc1LCA3Nzc3LCA3Nzc5LCA3NzgxLCA3NzgzLCA3Nzg1LCA3Nzg3LCAKKyAgICA3Nzg5LCA3NzkxLCA3NzkzLCA3Nzk1LCA3Nzk3LCA3Nzk5LCA3ODAxLCA3ODAzLCA3ODA1LCA3ODA3LCA3ODA5LCA3ODExLCAKKyAgICA3ODEzLCA3ODE1LCA3ODE3LCA3ODE5LCA3ODIxLCA3ODIzLCA3ODI1LCA3ODI3LCA3ODI5LCA3ODMxLCA3ODMzLCA3ODM1LCAKKyAgICA3ODM3LCA3ODM5LCA3ODQxLCA3ODQzLCA3ODQ1LCA3ODQ3LCA3ODQ5LCA3ODUxLCA3ODUzLCA3ODU1LCA3ODU3LCA3ODU5LCAKKyAgICA3ODYxLCA3ODYzLCA3ODY1LCA3ODY3LCA3ODY5LCA3ODcxLCA3ODczLCA3ODc1LCA3ODc3LCA3ODc5LCA3ODgxLCA3ODgzLCAKKyAgICA3ODg1LCA3ODg3LCA3ODg5LCA3ODkxLCA3ODkzLCA3ODk1LCA3ODk3LCA3ODk5LCA3OTAxLCA3OTAzLCA3OTA1LCA3OTA3LCAKKyAgICA3OTA5LCA3OTExLCA3OTEzLCA3OTE1LCA3OTE3LCA3OTE5LCA3OTIxLCA3OTIzLCA3OTI1LCA3OTI3LCA3OTI5LCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA3OTIzLCA3OTI1LCA3OTI3LCA3OTI5LCA3OTMxLCA3OTMzLCA3OTM1LCA3OTM3LCA3OTM5LCA3OTQxLCAKLSAgICA3OTQzLCA3OTQ1LCA3OTQ3LCA3OTQ5LCA3OTUxLCA3OTUzLCA3OTU1LCA3OTU3LCA3OTU5LCA3OTYxLCA3OTYzLCA3OTY1LCAKLSAgICA3OTY3LCA3OTY5LCA3OTcyLCA3OTc1LCA3OTc4LCA3OTgxLCA3OTg0LCA3OTg3LCA3OTkwLCA3OTkzLCA3OTk2LCA3OTk5LCAKLSAgICA4MDAyLCA4MDA1LCA4MDA4LCA4MDExLCA4MDE0LCA4MDE3LCA4MDIwLCA4MDIzLCA4MDI1LCA4MDI3LCA4MDI5LCA4MDMxLCAKLSAgICA4MDM0LCA4MDM3LCA4MDQwLCA4MDQzLCA4MDQ2LCA4MDQ5LCA4MDUyLCA4MDU1LCA4MDU4LCA4MDYxLCA4MDY0LCA4MDY3LCAKLSAgICA4MDcwLCA4MDczLCA4MDc2LCA4MDc5LCA4MDgyLCA4MDg1LCA4MDg4LCA4MDkxLCA4MDk0LCA4MDk3LCA4MTAwLCA4MTAzLCAKLSAgICA4MTA2LCA4MTA5LCA4MTEyLCA4MTE1LCA4MTE4LCA4MTIxLCA4MTI0LCA4MTI3LCA4MTMwLCA4MTMzLCA4MTM2LCA4MTM5LCAKLSAgICA4MTQyLCA4MTQ1LCA4MTQ4LCA4MTUxLCA4MTU0LCA4MTU3LCA4MTYwLCA4MTYzLCA4MTY2LCA4MTY5LCA4MTcyLCA4MTc1LCAKLSAgICA4MTc4LCA4MTgxLCA4MTg0LCA4MTg3LCA4MTkwLCA4MTkzLCA4MTk2LCA4MTk5LCA4MjAyLCA4MjA1LCA4MjA4LCA4MjExLCAKLSAgICA4MjE0LCA4MjE3LCA4MjIwLCA4MjIzLCA4MjI2LCA4MjI5LCA4MjMyLCA4MjM1LCA4MjM4LCA4MjQxLCA4MjQ0LCA4MjQ3LCAKLSAgICA4MjUwLCA4MjUzLCA4MjU2LCA4MjU5LCA4MjYyLCA4MjY1LCA4MjY4LCA4MjcxLCA4Mjc0LCA4Mjc3LCA4MjgwLCA4MjgzLCAKLSAgICA4Mjg2LCA4Mjg5LCA4MjkyLCA4Mjk1LCA4Mjk4LCA4MzAxLCA4MzA0LCA4MzA3LCA4MzEwLCA4MzEzLCA4MzE3LCA4MzIxLCAKLSAgICA4MzI1LCA4MzI5LCA4MzMzLCA4MzM3LCA4MzQwLCA4MzQzLCA4MzQ2LCA4MzQ5LCA4MzUyLCA4MzU1LCA4MzU4LCA4MzYxLCAKLSAgICA4MzY0LCA4MzY3LCA4MzcwLCA4MzczLCA4Mzc2LCA4Mzc5LCA4MzgyLCA4Mzg1LCA4Mzg4LCA4MzkxLCA4Mzk0LCA4Mzk3LCAKLSAgICA4NDAwLCA4NDAzLCA4NDA2LCA4NDA5LCA4NDEyLCA4NDE1LCA4NDE4LCA4NDIxLCA4NDI0LCA4NDI3LCA4NDMwLCA4NDMzLCAKLSAgICA4NDM2LCA4NDM5LCA4NDQyLCA4NDQ1LCA4NDQ4LCA4NDUxLCA4NDU0LCA4NDU3LCA4NDYwLCA4NDYzLCA4NDY2LCA4NDY5LCAKLSAgICA4NDcyLCA4NDc1LCA4NDc4LCA4NDgxLCA4NDg0LCA4NDg3LCA4NDkwLCA4NDkzLCA4NDk2LCA4NDk5LCA4NTAyLCA4NTA1LCAKLSAgICA4NTA4LCA4NTExLCA4NTE0LCA4NTE3LCA4NTIwLCA4NTIzLCA4NTI2LCA4NTI5LCA4NTMyLCA4NTM1LCA4NTM4LCA4NTQxLCAKLSAgICA4NTQ0LCA4NTQ3LCA4NTUwLCA4NTUzLCA4NTU2LCA4NTU5LCA4NTYyLCA4NTY1LCA4NTY4LCA4NTcxLCA4NTc0LCA4NTc3LCAKLSAgICA4NTgwLCA4NTgzLCA4NTg2LCA4NTg5LCA4NTkyLCA4NTk1LCA4NTk4LCA4NjAxLCA4NjA0LCA4NjA3LCA4NjEwLCA4NjEzLCAKLSAgICA4NjE2LCA4NjE5LCA4NjIyLCA4NjI1LCA4NjI4LCA4NjMxLCA4NjM0LCA4NjM3LCA4NjQwLCA4NjQzLCA4NjQ2LCA4NjQ5LCAKLSAgICA4NjUyLCA4NjU1LCA4NjU4LCA4NjYxLCA4NjY0LCA4NjY3LCA4NjcwLCA4NjczLCA4Njc2LCA4Njc5LCA4NjgyLCA4Njg1LCAKLSAgICA4Njg4LCA4NjkxLCA4Njk0LCA4Njk3LCA4NzAwLCA4NzAzLCA4NzA2LCA4NzA5LCA4NzEyLCA4NzE1LCA4NzE4LCA4NzIxLCAKLSAgICA4NzI0LCA4NzI3LCA4NzMwLCA4NzMzLCA4NzM2LCA4NzM5LCA4NzQyLCA4NzQ1LCA4NzQ4LCA4NzUxLCA4NzU0LCA4NzU3LCAKLSAgICA4NzYwLCA4NzYzLCA4NzY3LCA4NzcxLCA4Nzc1LCA4Nzc4LCA4NzgxLCA4Nzg0LCA4Nzg3LCA4NzkwLCA4NzkzLCA4Nzk2LCAKLSAgICA4Nzk5LCA4ODAyLCA4ODA1LCA4ODA4LCA4ODExLCA4ODE0LCA4ODE3LCA4ODIwLCA4ODIzLCA4ODI2LCA4ODI5LCA4ODMyLCAKLSAgICA4ODM1LCA4ODM4LCA4ODQxLCA4ODQ0LCA4ODQ3LCA4ODUwLCA4ODUzLCA4ODU2LCA4ODU5LCA4ODYyLCA4ODY1LCA4ODY4LCAKLSAgICA4ODcxLCA4ODc0LCA4ODc3LCA4ODgwLCA4ODgzLCA4ODg2LCA4ODg5LCA4ODkyLCA4ODk1LCA4ODk4LCA4OTAxLCA4OTA0LCAKLSAgICA4OTA3LCA4OTEwLCA4OTEzLCA4OTE2LCA4OTE5LCA4OTIyLCA4OTI1LCA4OTI4LCA4OTMxLCA4OTM0LCA4OTM3LCA4OTQwLCAKLSAgICA4OTQzLCA4OTQ2LCA4OTQ5LCA4OTUyLCA4OTU1LCA4OTU4LCA4OTYxLCA4OTY0LCA4OTY3LCA4OTcwLCA4OTczLCA4OTc2LCAKLSAgICA4OTc5LCA4OTgyLCA4OTg1LCA4OTg4LCA4OTkxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA4OTk0LCA4OTk4LCA5MDAyLCA5MDA2LCA5MDEwLCA5MDE0LCA5MDE4LCA5MDIyLCA5MDI2LCA5MDMwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3OTMxLCA3OTMzLCA3OTM1LCA3OTM3LCA3OTM5LCA3OTQxLCA3OTQzLCA3OTQ1LCAKKyAgICA3OTQ3LCA3OTQ5LCA3OTUxLCA3OTUzLCA3OTU1LCA3OTU3LCA3OTU5LCA3OTYxLCA3OTYzLCA3OTY1LCA3OTY3LCA3OTY5LCAKKyAgICA3OTcxLCA3OTczLCA3OTc1LCA3OTc3LCA3OTgwLCA3OTgzLCA3OTg2LCA3OTg5LCA3OTkyLCA3OTk1LCA3OTk4LCA4MDAxLCAKKyAgICA4MDA0LCA4MDA3LCA4MDEwLCA4MDEzLCA4MDE2LCA4MDE5LCA4MDIyLCA4MDI1LCA4MDI4LCA4MDMxLCA4MDMzLCA4MDM1LCAKKyAgICA4MDM3LCA4MDM5LCA4MDQyLCA4MDQ1LCA4MDQ4LCA4MDUxLCA4MDU0LCA4MDU3LCA4MDYwLCA4MDYzLCA4MDY2LCA4MDY5LCAKKyAgICA4MDcyLCA4MDc1LCA4MDc4LCA4MDgxLCA4MDg0LCA4MDg3LCA4MDkwLCA4MDkzLCA4MDk2LCA4MDk5LCA4MTAyLCA4MTA1LCAKKyAgICA4MTA4LCA4MTExLCA4MTE0LCA4MTE3LCA4MTIwLCA4MTIzLCA4MTI2LCA4MTI5LCA4MTMyLCA4MTM1LCA4MTM4LCA4MTQxLCAKKyAgICA4MTQ0LCA4MTQ3LCA4MTUwLCA4MTUzLCA4MTU2LCA4MTU5LCA4MTYyLCA4MTY1LCA4MTY4LCA4MTcxLCA4MTc0LCA4MTc3LCAKKyAgICA4MTgwLCA4MTgzLCA4MTg2LCA4MTg5LCA4MTkyLCA4MTk1LCA4MTk4LCA4MjAxLCA4MjA0LCA4MjA3LCA4MjEwLCA4MjEzLCAKKyAgICA4MjE2LCA4MjE5LCA4MjIyLCA4MjI1LCA4MjI4LCA4MjMxLCA4MjM0LCA4MjM3LCA4MjQwLCA4MjQzLCA4MjQ2LCA4MjQ5LCAKKyAgICA4MjUyLCA4MjU1LCA4MjU4LCA4MjYxLCA4MjY0LCA4MjY3LCA4MjcwLCA4MjczLCA4Mjc2LCA4Mjc5LCA4MjgyLCA4Mjg1LCAKKyAgICA4Mjg4LCA4MjkxLCA4Mjk0LCA4Mjk3LCA4MzAwLCA4MzAzLCA4MzA2LCA4MzA5LCA4MzEyLCA4MzE1LCA4MzE4LCA4MzIxLCAKKyAgICA4MzI1LCA4MzI5LCA4MzMzLCA4MzM3LCA4MzQxLCA4MzQ1LCA4MzQ4LCA4MzUxLCA4MzU0LCA4MzU3LCA4MzYwLCA4MzYzLCAKKyAgICA4MzY2LCA4MzY5LCA4MzcyLCA4Mzc1LCA4Mzc4LCA4MzgxLCA4Mzg0LCA4Mzg3LCA4MzkwLCA4MzkzLCA4Mzk2LCA4Mzk5LCAKKyAgICA4NDAyLCA4NDA1LCA4NDA4LCA4NDExLCA4NDE0LCA4NDE3LCA4NDIwLCA4NDIzLCA4NDI2LCA4NDI5LCA4NDMyLCA4NDM1LCAKKyAgICA4NDM4LCA4NDQxLCA4NDQ0LCA4NDQ3LCA4NDUwLCA4NDUzLCA4NDU2LCA4NDU5LCA4NDYyLCA4NDY1LCA4NDY4LCA4NDcxLCAKKyAgICA4NDc0LCA4NDc3LCA4NDgwLCA4NDgzLCA4NDg2LCA4NDg5LCA4NDkyLCA4NDk1LCA4NDk4LCA4NTAxLCA4NTA0LCA4NTA3LCAKKyAgICA4NTEwLCA4NTEzLCA4NTE2LCA4NTE5LCA4NTIyLCA4NTI1LCA4NTI4LCA4NTMxLCA4NTM0LCA4NTM3LCA4NTQwLCA4NTQzLCAKKyAgICA4NTQ2LCA4NTQ5LCA4NTUyLCA4NTU1LCA4NTU4LCA4NTYxLCA4NTY0LCA4NTY3LCA4NTcwLCA4NTczLCA4NTc2LCA4NTc5LCAKKyAgICA4NTgyLCA4NTg1LCA4NTg4LCA4NTkxLCA4NTk0LCA4NTk3LCA4NjAwLCA4NjAzLCA4NjA2LCA4NjA5LCA4NjEyLCA4NjE1LCAKKyAgICA4NjE4LCA4NjIxLCA4NjI0LCA4NjI3LCA4NjMwLCA4NjMzLCA4NjM2LCA4NjM5LCA4NjQyLCA4NjQ1LCA4NjQ4LCA4NjUxLCAKKyAgICA4NjU0LCA4NjU3LCA4NjYwLCA4NjYzLCA4NjY2LCA4NjY5LCA4NjcyLCA4Njc1LCA4Njc4LCA4NjgxLCA4Njg0LCA4Njg3LCAKKyAgICA4NjkwLCA4NjkzLCA4Njk2LCA4Njk5LCA4NzAyLCA4NzA1LCA4NzA4LCA4NzExLCA4NzE0LCA4NzE3LCA4NzIwLCA4NzIzLCAKKyAgICA4NzI2LCA4NzI5LCA4NzMyLCA4NzM1LCA4NzM4LCA4NzQxLCA4NzQ0LCA4NzQ3LCA4NzUwLCA4NzUzLCA4NzU2LCA4NzU5LCAKKyAgICA4NzYyLCA4NzY1LCA4NzY4LCA4NzcxLCA4Nzc1LCA4Nzc5LCA4NzgzLCA4Nzg2LCA4Nzg5LCA4NzkyLCA4Nzk1LCA4Nzk4LCAKKyAgICA4ODAxLCA4ODA0LCA4ODA3LCA4ODEwLCA4ODEzLCA4ODE2LCA4ODE5LCA4ODIyLCA4ODI1LCA4ODI4LCA4ODMxLCA4ODM0LCAKKyAgICA4ODM3LCA4ODQwLCA4ODQzLCA4ODQ2LCA4ODQ5LCA4ODUyLCA4ODU1LCA4ODU4LCA4ODYxLCA4ODY0LCA4ODY3LCA4ODcwLCAKKyAgICA4ODczLCA4ODc2LCA4ODc5LCA4ODgyLCA4ODg1LCA4ODg4LCA4ODkxLCA4ODk0LCA4ODk3LCA4OTAwLCA4OTAzLCA4OTA2LCAKKyAgICA4OTA5LCA4OTEyLCA4OTE1LCA4OTE4LCA4OTIxLCA4OTI0LCA4OTI3LCA4OTMwLCA4OTMzLCA4OTM2LCA4OTM5LCA4OTQyLCAKKyAgICA4OTQ1LCA4OTQ4LCA4OTUxLCA4OTU0LCA4OTU3LCA4OTYwLCA4OTYzLCA4OTY2LCA4OTY5LCA4OTcyLCA4OTc1LCA4OTc4LCAKKyAgICA4OTgxLCA4OTg0LCA4OTg3LCA4OTkwLCA4OTkzLCA4OTk2LCA4OTk5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MDAyLCA5MDA2LCA5MDEwLCA5MDE0LCA5MDE4LCA5MDIyLCA5MDI2LCA5MDMwLCAKICAgICA5MDM0LCA5MDM4LCA5MDQyLCA5MDQ2LCA5MDUwLCA5MDU0LCA5MDU4LCA5MDYyLCA5MDY2LCA5MDcwLCA5MDc0LCA5MDc4LCAKICAgICA5MDgyLCA5MDg2LCA5MDkwLCA5MDk0LCA5MDk4LCA5MTAyLCA5MTA2LCA5MTEwLCA5MTE0LCA5MTE4LCA5MTIyLCA5MTI2LCAKICAgICA5MTMwLCA5MTM0LCA5MTM4LCA5MTQyLCA5MTQ2LCA5MTUwLCA5MTU0LCA5MTU4LCA5MTYyLCA5MTY2LCA5MTcwLCA5MTc0LCAKICAgICA5MTc4LCA5MTgyLCA5MTg2LCA5MTkwLCA5MTk0LCA5MTk4LCA5MjAyLCA5MjA2LCA5MjEwLCA5MjE0LCA5MjE4LCA5MjIyLCAKLSAgICA5MjI2LCA5MjMwLCA5MjM0LCA5MjM4LCA5MjQyLCA5MjQ2LCAwLCAwLCA5MjUwLCA5MjU0LCA5MjU4LCA5MjYyLCA5MjY2LCAKKyAgICA5MjI2LCA5MjMwLCA5MjM0LCA5MjM4LCA5MjQyLCA5MjQ2LCA5MjUwLCA5MjU0LCAwLCAwLCA5MjU4LCA5MjYyLCA5MjY2LCAKICAgICA5MjcwLCA5Mjc0LCA5Mjc4LCA5MjgyLCA5Mjg2LCA5MjkwLCA5Mjk0LCA5Mjk4LCA5MzAyLCA5MzA2LCA5MzEwLCA5MzE0LCAKICAgICA5MzE4LCA5MzIyLCA5MzI2LCA5MzMwLCA5MzM0LCA5MzM4LCA5MzQyLCA5MzQ2LCA5MzUwLCA5MzU0LCA5MzU4LCA5MzYyLCAKICAgICA5MzY2LCA5MzcwLCA5Mzc0LCA5Mzc4LCA5MzgyLCA5Mzg2LCA5MzkwLCA5Mzk0LCA5Mzk4LCA5NDAyLCA5NDA2LCA5NDEwLCAKICAgICA5NDE0LCA5NDE4LCA5NDIyLCA5NDI2LCA5NDMwLCA5NDM0LCA5NDM4LCA5NDQyLCA5NDQ2LCA5NDUwLCA5NDU0LCA5NDU4LCAKLSAgICA5NDYyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5NDY2LCA5NDcwLCA5NDc0LCAKLSAgICA5NDc5LCA5NDg0LCA5NDg5LCA5NDk0LCA5NDk5LCA5NTA0LCA5NTA5LCA5NTEzLCA5NTMyLCA5NTQxLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5NTQ2LCA5NTQ4LCA5NTUwLCA5NTUyLCAKLSAgICA5NTU0LCA5NTU2LCA5NTU4LCA5NTYwLCA5NTYyLCA5NTY0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5NTY2LCA5NTY4LCA5NTcwLCA5NTcyLCA5NTc0LCA5NTc2LCA5NTc4LCAKLSAgICA5NTgwLCA5NTgyLCA5NTg0LCA5NTg2LCA5NTg4LCA5NTkwLCA5NTkyLCA5NTk0LCA5NTk2LCA5NTk4LCA5NjAwLCA5NjAyLCAKLSAgICA5NjA0LCA5NjA2LCAwLCAwLCA5NjA4LCA5NjEwLCA5NjEyLCA5NjE0LCA5NjE2LCA5NjE4LCA5NjIwLCA5NjIyLCA5NjI0LCAKLSAgICA5NjI2LCA5NjI4LCA5NjMwLCAwLCA5NjMyLCA5NjM0LCA5NjM2LCA5NjM4LCA5NjQwLCA5NjQyLCA5NjQ0LCA5NjQ2LCAKLSAgICA5NjQ4LCA5NjUwLCA5NjUyLCA5NjU0LCA5NjU2LCA5NjU4LCA5NjYwLCA5NjYyLCA5NjY0LCA5NjY2LCA5NjY4LCAwLCAKLSAgICA5NjcwLCA5NjcyLCA5Njc0LCA5Njc2LCAwLCAwLCAwLCAwLCA5Njc4LCA5NjgxLCA5Njg0LCAwLCA5Njg3LCAwLCA5NjkwLCAKLSAgICA5NjkzLCA5Njk2LCA5Njk5LCA5NzAyLCA5NzA1LCA5NzA4LCA5NzExLCA5NzE0LCA5NzE3LCA5NzIwLCA5NzIyLCA5NzI0LCAKLSAgICA5NzI2LCA5NzI4LCA5NzMwLCA5NzMyLCA5NzM0LCA5NzM2LCA5NzM4LCA5NzQwLCA5NzQyLCA5NzQ0LCA5NzQ2LCA5NzQ4LCAKLSAgICA5NzUwLCA5NzUyLCA5NzU0LCA5NzU2LCA5NzU4LCA5NzYwLCA5NzYyLCA5NzY0LCA5NzY2LCA5NzY4LCA5NzcwLCA5NzcyLCAKLSAgICA5Nzc0LCA5Nzc2LCA5Nzc4LCA5NzgwLCA5NzgyLCA5Nzg0LCA5Nzg2LCA5Nzg4LCA5NzkwLCA5NzkyLCA5Nzk0LCA5Nzk2LCAKLSAgICA5Nzk4LCA5ODAwLCA5ODAyLCA5ODA0LCA5ODA2LCA5ODA4LCA5ODEwLCA5ODEyLCA5ODE0LCA5ODE2LCA5ODE4LCA5ODIwLCAKLSAgICA5ODIyLCA5ODI0LCA5ODI2LCA5ODI4LCA5ODMwLCA5ODMyLCA5ODM0LCA5ODM2LCA5ODM4LCA5ODQwLCA5ODQyLCA5ODQ0LCAKLSAgICA5ODQ2LCA5ODQ4LCA5ODUwLCA5ODUyLCA5ODU0LCA5ODU2LCA5ODU4LCA5ODYwLCA5ODYyLCA5ODY0LCA5ODY2LCA5ODY4LCAKLSAgICA5ODcwLCA5ODcyLCA5ODc0LCA5ODc2LCA5ODc4LCA5ODgwLCA5ODgyLCA5ODg0LCA5ODg2LCA5ODg4LCA5ODkwLCA5ODkyLCAKLSAgICA5ODk0LCA5ODk2LCA5ODk4LCA5OTAwLCA5OTAyLCA5OTA0LCA5OTA2LCA5OTA4LCA5OTEwLCA5OTEyLCA5OTE0LCA5OTE2LCAKLSAgICA5OTE4LCA5OTIwLCA5OTIyLCA5OTI0LCA5OTI2LCA5OTI4LCA5OTMwLCA5OTMyLCA5OTM0LCA5OTM2LCA5OTM4LCA5OTQwLCAKLSAgICA5OTQyLCA5OTQ0LCA5OTQ2LCA5OTQ4LCA5OTUwLCA5OTUyLCA5OTU0LCA5OTU3LCA5OTYwLCA5OTYzLCA5OTY2LCA5OTY5LCAKLSAgICA5OTcyLCA5OTc1LCAwLCAwLCAwLCAwLCA5OTc4LCA5OTgwLCA5OTgyLCA5OTg0LCA5OTg2LCA5OTg4LCA5OTkwLCA5OTkyLCAKLSAgICA5OTk0LCA5OTk2LCA5OTk4LCAxMDAwMCwgMTAwMDIsIDEwMDA0LCAxMDAwNiwgMTAwMDgsIDEwMDEwLCAxMDAxMiwgMTAwMTQsIAotICAgIDEwMDE2LCAxMDAxOCwgMTAwMjAsIDEwMDIyLCAxMDAyNCwgMTAwMjYsIDEwMDI4LCAxMDAzMCwgMTAwMzIsIDEwMDM0LCAKLSAgICAxMDAzNiwgMTAwMzgsIDEwMDQwLCAxMDA0MiwgMTAwNDQsIDEwMDQ2LCAxMDA0OCwgMTAwNTAsIDEwMDUyLCAxMDA1NCwgCi0gICAgMTAwNTYsIDEwMDU4LCAxMDA2MCwgMTAwNjIsIDEwMDY0LCAxMDA2NiwgMTAwNjgsIDEwMDcwLCAxMDA3MiwgMTAwNzQsIAotICAgIDEwMDc2LCAxMDA3OCwgMTAwODAsIDEwMDgyLCAxMDA4NCwgMTAwODYsIDEwMDg4LCAxMDA5MCwgMTAwOTIsIDEwMDk0LCAKLSAgICAxMDA5NiwgMTAwOTgsIDEwMTAwLCAxMDEwMiwgMTAxMDQsIDEwMTA2LCAxMDEwOCwgMTAxMTAsIDEwMTEyLCAxMDExNCwgCi0gICAgMTAxMTYsIDEwMTE4LCAxMDEyMCwgMTAxMjIsIDEwMTI0LCAxMDEyNiwgMTAxMjgsIDEwMTMwLCAxMDEzMiwgMTAxMzQsIAotICAgIDEwMTM2LCAxMDEzOCwgMTAxNDAsIDEwMTQyLCAxMDE0NCwgMTAxNDYsIDEwMTQ4LCAxMDE1MCwgMTAxNTIsIDEwMTU0LCAKLSAgICAxMDE1NiwgMTAxNTgsIDEwMTYwLCAxMDE2MiwgMTAxNjQsIDEwMTY2LCAxMDE2OCwgMTAxNzAsIDEwMTcyLCAxMDE3NCwgCi0gICAgMTAxNzYsIDEwMTc4LCAxMDE4MCwgMTAxODIsIDEwMTg0LCAxMDE4NiwgMTAxODgsIDEwMTkwLCAxMDE5MiwgMTAxOTQsIAotICAgIDEwMTk2LCAxMDE5OCwgMTAyMDAsIDEwMjAyLCAxMDIwNCwgMTAyMDYsIDEwMjA4LCAxMDIxMCwgMTAyMTIsIDEwMjE0LCAKLSAgICAxMDIxNiwgMTAyMTgsIDEwMjIwLCAxMDIyMiwgMTAyMjQsIDEwMjI2LCAxMDIyOCwgMTAyMzAsIDEwMjMyLCAxMDIzNCwgCi0gICAgMTAyMzYsIDEwMjM4LCAxMDI0MCwgMTAyNDIsIDEwMjQ0LCAxMDI0NiwgMTAyNDgsIDEwMjUwLCAxMDI1MiwgMTAyNTQsIAotICAgIDEwMjU2LCAxMDI1OCwgMTAyNjAsIDEwMjYyLCAxMDI2NCwgMTAyNjYsIDEwMjY4LCAxMDI3MCwgMTAyNzIsIDEwMjc0LCAKLSAgICAxMDI3NiwgMTAyNzgsIDEwMjgwLCAxMDI4MiwgMTAyODQsIDEwMjg2LCAxMDI4OCwgMTAyOTAsIDEwMjkyLCAxMDI5NCwgCi0gICAgMTAyOTYsIDEwMjk4LCAxMDMwMCwgMTAzMDIsIDEwMzA0LCAxMDMwNiwgMTAzMDgsIDEwMzEwLCAxMDMxMiwgMTAzMTQsIAotICAgIDEwMzE2LCAxMDMxOCwgMTAzMjAsIDEwMzIyLCAxMDMyNCwgMTAzMjYsIDEwMzI4LCAxMDMzMCwgMTAzMzIsIDEwMzM0LCAKLSAgICAxMDMzNiwgMTAzMzgsIDEwMzQwLCAxMDM0MiwgMTAzNDQsIDEwMzQ2LCAxMDM0OCwgMTAzNTAsIDEwMzUyLCAxMDM1NCwgCi0gICAgMTAzNTYsIDAsIDAsIDAsIDEwMzU4LCAxMDM2MCwgMTAzNjIsIDEwMzY0LCAxMDM2NiwgMTAzNjgsIDAsIDAsIDEwMzcwLCAKLSAgICAxMDM3MiwgMTAzNzQsIDEwMzc2LCAxMDM3OCwgMTAzODAsIDAsIDAsIDEwMzgyLCAxMDM4NCwgMTAzODYsIDEwMzg4LCAKLSAgICAxMDM5MCwgMTAzOTIsIDAsIDAsIDEwMzk0LCAxMDM5NiwgMTAzOTgsIDAsIDAsIDAsIDEwNDAwLCAxMDQwMiwgMTA0MDQsIAotICAgIDEwNDA2LCAxMDQwOCwgMTA0MTAsIDEwNDEyLCAwLCAxMDQxNCwgMTA0MTYsIDEwNDE4LCAxMDQyMCwgMTA0MjIsIDEwNDI0LCAKLSAgICAxMDQyNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgOTQ2MiwgOTQ2NiwgOTQ3MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTQ3NCwgCisgICAgOTQ3OCwgOTQ4MiwgOTQ4NywgOTQ5MiwgOTQ5NywgOTUwMiwgOTUwNywgOTUxMiwgOTUxNywgOTUyMSwgOTU0MCwgOTU0OSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTU1NCwgOTU1NiwgCisgICAgOTU1OCwgOTU2MCwgOTU2MiwgOTU2NCwgOTU2NiwgOTU2OCwgOTU3MCwgOTU3MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTU3NCwgOTU3NiwgOTU3OCwgOTU4MCwgOTU4MiwgCisgICAgOTU4NCwgOTU4NiwgOTU4OCwgOTU5MCwgOTU5MiwgOTU5NCwgOTU5NiwgOTU5OCwgOTYwMCwgOTYwMiwgOTYwNCwgOTYwNiwgCisgICAgOTYwOCwgOTYxMCwgOTYxMiwgOTYxNCwgMCwgMCwgOTYxNiwgOTYxOCwgOTYyMCwgOTYyMiwgOTYyNCwgOTYyNiwgOTYyOCwgCisgICAgOTYzMCwgOTYzMiwgOTYzNCwgOTYzNiwgOTYzOCwgMCwgOTY0MCwgOTY0MiwgOTY0NCwgOTY0NiwgOTY0OCwgOTY1MCwgCisgICAgOTY1MiwgOTY1NCwgOTY1NiwgOTY1OCwgOTY2MCwgOTY2MiwgOTY2NCwgOTY2NiwgOTY2OCwgOTY3MCwgOTY3MiwgOTY3NCwgCisgICAgOTY3NiwgMCwgOTY3OCwgOTY4MCwgOTY4MiwgOTY4NCwgMCwgMCwgMCwgMCwgOTY4NiwgOTY4OSwgOTY5MiwgMCwgOTY5NSwgCisgICAgMCwgOTY5OCwgOTcwMSwgOTcwNCwgOTcwNywgOTcxMCwgOTcxMywgOTcxNiwgOTcxOSwgOTcyMiwgOTcyNSwgOTcyOCwgCisgICAgOTczMCwgOTczMiwgOTczNCwgOTczNiwgOTczOCwgOTc0MCwgOTc0MiwgOTc0NCwgOTc0NiwgOTc0OCwgOTc1MCwgOTc1MiwgCisgICAgOTc1NCwgOTc1NiwgOTc1OCwgOTc2MCwgOTc2MiwgOTc2NCwgOTc2NiwgOTc2OCwgOTc3MCwgOTc3MiwgOTc3NCwgOTc3NiwgCisgICAgOTc3OCwgOTc4MCwgOTc4MiwgOTc4NCwgOTc4NiwgOTc4OCwgOTc5MCwgOTc5MiwgOTc5NCwgOTc5NiwgOTc5OCwgOTgwMCwgCisgICAgOTgwMiwgOTgwNCwgOTgwNiwgOTgwOCwgOTgxMCwgOTgxMiwgOTgxNCwgOTgxNiwgOTgxOCwgOTgyMCwgOTgyMiwgOTgyNCwgCisgICAgOTgyNiwgOTgyOCwgOTgzMCwgOTgzMiwgOTgzNCwgOTgzNiwgOTgzOCwgOTg0MCwgOTg0MiwgOTg0NCwgOTg0NiwgOTg0OCwgCisgICAgOTg1MCwgOTg1MiwgOTg1NCwgOTg1NiwgOTg1OCwgOTg2MCwgOTg2MiwgOTg2NCwgOTg2NiwgOTg2OCwgOTg3MCwgOTg3MiwgCisgICAgOTg3NCwgOTg3NiwgOTg3OCwgOTg4MCwgOTg4MiwgOTg4NCwgOTg4NiwgOTg4OCwgOTg5MCwgOTg5MiwgOTg5NCwgOTg5NiwgCisgICAgOTg5OCwgOTkwMCwgOTkwMiwgOTkwNCwgOTkwNiwgOTkwOCwgOTkxMCwgOTkxMiwgOTkxNCwgOTkxNiwgOTkxOCwgOTkyMCwgCisgICAgOTkyMiwgOTkyNCwgOTkyNiwgOTkyOCwgOTkzMCwgOTkzMiwgOTkzNCwgOTkzNiwgOTkzOCwgOTk0MCwgOTk0MiwgOTk0NCwgCisgICAgOTk0NiwgOTk0OCwgOTk1MCwgOTk1MiwgOTk1NCwgOTk1NiwgOTk1OCwgOTk2MCwgOTk2MiwgOTk2NSwgOTk2OCwgOTk3MSwgCisgICAgOTk3NCwgOTk3NywgOTk4MCwgOTk4MywgMCwgMCwgMCwgMCwgOTk4NiwgOTk4OCwgOTk5MCwgOTk5MiwgOTk5NCwgOTk5NiwgCisgICAgOTk5OCwgMTAwMDAsIDEwMDAyLCAxMDAwNCwgMTAwMDYsIDEwMDA4LCAxMDAxMCwgMTAwMTIsIDEwMDE0LCAxMDAxNiwgCisgICAgMTAwMTgsIDEwMDIwLCAxMDAyMiwgMTAwMjQsIDEwMDI2LCAxMDAyOCwgMTAwMzAsIDEwMDMyLCAxMDAzNCwgMTAwMzYsIAorICAgIDEwMDM4LCAxMDA0MCwgMTAwNDIsIDEwMDQ0LCAxMDA0NiwgMTAwNDgsIDEwMDUwLCAxMDA1MiwgMTAwNTQsIDEwMDU2LCAKKyAgICAxMDA1OCwgMTAwNjAsIDEwMDYyLCAxMDA2NCwgMTAwNjYsIDEwMDY4LCAxMDA3MCwgMTAwNzIsIDEwMDc0LCAxMDA3NiwgCisgICAgMTAwNzgsIDEwMDgwLCAxMDA4MiwgMTAwODQsIDEwMDg2LCAxMDA4OCwgMTAwOTAsIDEwMDkyLCAxMDA5NCwgMTAwOTYsIAorICAgIDEwMDk4LCAxMDEwMCwgMTAxMDIsIDEwMTA0LCAxMDEwNiwgMTAxMDgsIDEwMTEwLCAxMDExMiwgMTAxMTQsIDEwMTE2LCAKKyAgICAxMDExOCwgMTAxMjAsIDEwMTIyLCAxMDEyNCwgMTAxMjYsIDEwMTI4LCAxMDEzMCwgMTAxMzIsIDEwMTM0LCAxMDEzNiwgCisgICAgMTAxMzgsIDEwMTQwLCAxMDE0MiwgMTAxNDQsIDEwMTQ2LCAxMDE0OCwgMTAxNTAsIDEwMTUyLCAxMDE1NCwgMTAxNTYsIAorICAgIDEwMTU4LCAxMDE2MCwgMTAxNjIsIDEwMTY0LCAxMDE2NiwgMTAxNjgsIDEwMTcwLCAxMDE3MiwgMTAxNzQsIDEwMTc2LCAKKyAgICAxMDE3OCwgMTAxODAsIDEwMTgyLCAxMDE4NCwgMTAxODYsIDEwMTg4LCAxMDE5MCwgMTAxOTIsIDEwMTk0LCAxMDE5NiwgCisgICAgMTAxOTgsIDEwMjAwLCAxMDIwMiwgMTAyMDQsIDEwMjA2LCAxMDIwOCwgMTAyMTAsIDEwMjEyLCAxMDIxNCwgMTAyMTYsIAorICAgIDEwMjE4LCAxMDIyMCwgMTAyMjIsIDEwMjI0LCAxMDIyNiwgMTAyMjgsIDEwMjMwLCAxMDIzMiwgMTAyMzQsIDEwMjM2LCAKKyAgICAxMDIzOCwgMTAyNDAsIDEwMjQyLCAxMDI0NCwgMTAyNDYsIDEwMjQ4LCAxMDI1MCwgMTAyNTIsIDEwMjU0LCAxMDI1NiwgCisgICAgMTAyNTgsIDEwMjYwLCAxMDI2MiwgMTAyNjQsIDEwMjY2LCAxMDI2OCwgMTAyNzAsIDEwMjcyLCAxMDI3NCwgMTAyNzYsIAorICAgIDEwMjc4LCAxMDI4MCwgMTAyODIsIDEwMjg0LCAxMDI4NiwgMTAyODgsIDEwMjkwLCAxMDI5MiwgMTAyOTQsIDEwMjk2LCAKKyAgICAxMDI5OCwgMTAzMDAsIDEwMzAyLCAxMDMwNCwgMTAzMDYsIDEwMzA4LCAxMDMxMCwgMTAzMTIsIDEwMzE0LCAxMDMxNiwgCisgICAgMTAzMTgsIDEwMzIwLCAxMDMyMiwgMTAzMjQsIDEwMzI2LCAxMDMyOCwgMTAzMzAsIDEwMzMyLCAxMDMzNCwgMTAzMzYsIAorICAgIDEwMzM4LCAxMDM0MCwgMTAzNDIsIDEwMzQ0LCAxMDM0NiwgMTAzNDgsIDEwMzUwLCAxMDM1MiwgMTAzNTQsIDEwMzU2LCAKKyAgICAxMDM1OCwgMTAzNjAsIDEwMzYyLCAxMDM2NCwgMCwgMCwgMCwgMTAzNjYsIDEwMzY4LCAxMDM3MCwgMTAzNzIsIDEwMzc0LCAKKyAgICAxMDM3NiwgMCwgMCwgMTAzNzgsIDEwMzgwLCAxMDM4MiwgMTAzODQsIDEwMzg2LCAxMDM4OCwgMCwgMCwgMTAzOTAsIAorICAgIDEwMzkyLCAxMDM5NCwgMTAzOTYsIDEwMzk4LCAxMDQwMCwgMCwgMCwgMTA0MDIsIDEwNDA0LCAxMDQwNiwgMCwgMCwgMCwgCisgICAgMTA0MDgsIDEwNDEwLCAxMDQxMiwgMTA0MTQsIDEwNDE2LCAxMDQxOCwgMTA0MjAsIDAsIDEwNDIyLCAxMDQyNCwgMTA0MjYsIAorICAgIDEwNDI4LCAxMDQzMCwgMTA0MzIsIDEwNDM0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxMDQyOCwgMCwgMTA0MzEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDEwNDM0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDQzNiwgMCwgMTA0MzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwNDQyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDQzNywgMTA0NDAsIDEwNDQzLCAxMDQ0NiwgMTA0NDksIAotICAgIDEwNDUyLCAxMDQ1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA0NTgsIDEwNDYxLCAKLSAgICAxMDQ2NCwgMTA0NjcsIDEwNDcwLCAxMDQ3MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTA0NzYsIDEwNDc4LCAxMDQ4MCwgMTA0ODIsIDEwNDg0LCAxMDQ4NiwgMTA0ODgsIDEwNDkwLCAxMDQ5MiwgMTA0OTQsIAotICAgIDEwNDk2LCAxMDQ5OCwgMTA1MDAsIDEwNTAyLCAxMDUwNCwgMTA1MDYsIDEwNTA4LCAxMDUxMCwgMTA1MTIsIDEwNTE0LCAKLSAgICAxMDUxNiwgMTA1MTgsIDEwNTIwLCAxMDUyMiwgMTA1MjQsIDEwNTI2LCAxMDUyOCwgMTA1MzAsIDEwNTMyLCAxMDUzNCwgCi0gICAgMTA1MzYsIDEwNTM4LCAxMDU0MCwgMTA1NDIsIDEwNTQ0LCAxMDU0NiwgMTA1NDgsIDEwNTUwLCAxMDU1MiwgMTA1NTQsIAotICAgIDEwNTU2LCAxMDU1OCwgMTA1NjAsIDEwNTYyLCAxMDU2NCwgMTA1NjYsIDEwNTY4LCAxMDU3MCwgMTA1NzIsIDEwNTc0LCAKLSAgICAxMDU3NiwgMTA1NzgsIDEwNTgwLCAxMDU4MiwgMTA1ODQsIDEwNTg2LCAxMDU4OCwgMTA1OTAsIDEwNTkyLCAxMDU5NCwgCi0gICAgMTA1OTYsIDEwNTk4LCAxMDYwMCwgMTA2MDIsIDEwNjA0LCAxMDYwNiwgMTA2MDgsIDEwNjEwLCAxMDYxMiwgMTA2MTQsIAotICAgIDEwNjE2LCAxMDYxOCwgMTA2MjAsIDEwNjIyLCAxMDYyNCwgMTA2MjYsIDEwNjI4LCAxMDYzMCwgMTA2MzIsIDEwNjM0LCAKLSAgICAxMDYzNiwgMTA2MzgsIDEwNjQwLCAxMDY0MiwgMTA2NDQsIDAsIDEwNjQ2LCAxMDY0OCwgMTA2NTAsIDEwNjUyLCAxMDY1NCwgCi0gICAgMTA2NTYsIDEwNjU4LCAxMDY2MCwgMTA2NjIsIDEwNjY0LCAxMDY2NiwgMTA2NjgsIDEwNjcwLCAxMDY3MiwgMTA2NzQsIAotICAgIDEwNjc2LCAxMDY3OCwgMTA2ODAsIDEwNjgyLCAxMDY4NCwgMTA2ODYsIDEwNjg4LCAxMDY5MCwgMTA2OTIsIDEwNjk0LCAKLSAgICAxMDY5NiwgMTA2OTgsIDEwNzAwLCAxMDcwMiwgMTA3MDQsIDEwNzA2LCAxMDcwOCwgMTA3MTAsIDEwNzEyLCAxMDcxNCwgCi0gICAgMTA3MTYsIDEwNzE4LCAxMDcyMCwgMTA3MjIsIDEwNzI0LCAxMDcyNiwgMTA3MjgsIDEwNzMwLCAxMDczMiwgMTA3MzQsIAotICAgIDEwNzM2LCAxMDczOCwgMTA3NDAsIDEwNzQyLCAxMDc0NCwgMTA3NDYsIDEwNzQ4LCAxMDc1MCwgMTA3NTIsIDEwNzU0LCAKLSAgICAxMDc1NiwgMTA3NTgsIDEwNzYwLCAxMDc2MiwgMTA3NjQsIDEwNzY2LCAxMDc2OCwgMTA3NzAsIDEwNzcyLCAxMDc3NCwgCi0gICAgMTA3NzYsIDEwNzc4LCAxMDc4MCwgMTA3ODIsIDEwNzg0LCAxMDc4NiwgMCwgMTA3ODgsIDEwNzkwLCAwLCAwLCAxMDc5MiwgCi0gICAgMCwgMCwgMTA3OTQsIDEwNzk2LCAwLCAwLCAxMDc5OCwgMTA4MDAsIDEwODAyLCAxMDgwNCwgMCwgMTA4MDYsIDEwODA4LCAKLSAgICAxMDgxMCwgMTA4MTIsIDEwODE0LCAxMDgxNiwgMTA4MTgsIDEwODIwLCAxMDgyMiwgMTA4MjQsIDEwODI2LCAxMDgyOCwgMCwgCi0gICAgMTA4MzAsIDAsIDEwODMyLCAxMDgzNCwgMTA4MzYsIDEwODM4LCAxMDg0MCwgMTA4NDIsIDEwODQ0LCAwLCAxMDg0NiwgCi0gICAgMTA4NDgsIDEwODUwLCAxMDg1MiwgMTA4NTQsIDEwODU2LCAxMDg1OCwgMTA4NjAsIDEwODYyLCAxMDg2NCwgMTA4NjYsIAotICAgIDEwODY4LCAxMDg3MCwgMTA4NzIsIDEwODc0LCAxMDg3NiwgMTA4NzgsIDEwODgwLCAxMDg4MiwgMTA4ODQsIDEwODg2LCAKLSAgICAxMDg4OCwgMTA4OTAsIDEwODkyLCAxMDg5NCwgMTA4OTYsIDEwODk4LCAxMDkwMCwgMTA5MDIsIDEwOTA0LCAxMDkwNiwgCi0gICAgMTA5MDgsIDEwOTEwLCAxMDkxMiwgMTA5MTQsIDEwOTE2LCAxMDkxOCwgMTA5MjAsIDEwOTIyLCAxMDkyNCwgMTA5MjYsIAotICAgIDEwOTI4LCAxMDkzMCwgMTA5MzIsIDEwOTM0LCAxMDkzNiwgMTA5MzgsIDEwOTQwLCAxMDk0MiwgMTA5NDQsIDEwOTQ2LCAKLSAgICAxMDk0OCwgMTA5NTAsIDEwOTUyLCAxMDk1NCwgMTA5NTYsIDEwOTU4LCAxMDk2MCwgMTA5NjIsIDEwOTY0LCAxMDk2NiwgCi0gICAgMTA5NjgsIDEwOTcwLCAxMDk3MiwgMTA5NzQsIDAsIDEwOTc2LCAxMDk3OCwgMTA5ODAsIDEwOTgyLCAwLCAwLCAxMDk4NCwgCi0gICAgMTA5ODYsIDEwOTg4LCAxMDk5MCwgMTA5OTIsIDEwOTk0LCAxMDk5NiwgMTA5OTgsIDAsIDExMDAwLCAxMTAwMiwgMTEwMDQsIAotICAgIDExMDA2LCAxMTAwOCwgMTEwMTAsIDExMDEyLCAwLCAxMTAxNCwgMTEwMTYsIDExMDE4LCAxMTAyMCwgMTEwMjIsIDExMDI0LCAKLSAgICAxMTAyNiwgMTEwMjgsIDExMDMwLCAxMTAzMiwgMTEwMzQsIDExMDM2LCAxMTAzOCwgMTEwNDAsIDExMDQyLCAxMTA0NCwgCi0gICAgMTEwNDYsIDExMDQ4LCAxMTA1MCwgMTEwNTIsIDExMDU0LCAxMTA1NiwgMTEwNTgsIDExMDYwLCAxMTA2MiwgMTEwNjQsIAotICAgIDExMDY2LCAxMTA2OCwgMCwgMTEwNzAsIDExMDcyLCAxMTA3NCwgMTEwNzYsIDAsIDExMDc4LCAxMTA4MCwgMTEwODIsIAotICAgIDExMDg0LCAxMTA4NiwgMCwgMTEwODgsIDAsIDAsIDAsIDExMDkwLCAxMTA5MiwgMTEwOTQsIDExMDk2LCAxMTA5OCwgCi0gICAgMTExMDAsIDExMTAyLCAwLCAxMTEwNCwgMTExMDYsIDExMTA4LCAxMTExMCwgMTExMTIsIDExMTE0LCAxMTExNiwgMTExMTgsIAotICAgIDExMTIwLCAxMTEyMiwgMTExMjQsIDExMTI2LCAxMTEyOCwgMTExMzAsIDExMTMyLCAxMTEzNCwgMTExMzYsIDExMTM4LCAKLSAgICAxMTE0MCwgMTExNDIsIDExMTQ0LCAxMTE0NiwgMTExNDgsIDExMTUwLCAxMTE1MiwgMTExNTQsIDExMTU2LCAxMTE1OCwgCi0gICAgMTExNjAsIDExMTYyLCAxMTE2NCwgMTExNjYsIDExMTY4LCAxMTE3MCwgMTExNzIsIDExMTc0LCAxMTE3NiwgMTExNzgsIAotICAgIDExMTgwLCAxMTE4MiwgMTExODQsIDExMTg2LCAxMTE4OCwgMTExOTAsIDExMTkyLCAxMTE5NCwgMTExOTYsIDExMTk4LCAKLSAgICAxMTIwMCwgMTEyMDIsIDExMjA0LCAxMTIwNiwgMTEyMDgsIDExMjEwLCAxMTIxMiwgMTEyMTQsIDExMjE2LCAxMTIxOCwgCi0gICAgMTEyMjAsIDExMjIyLCAxMTIyNCwgMTEyMjYsIDExMjI4LCAxMTIzMCwgMTEyMzIsIDExMjM0LCAxMTIzNiwgMTEyMzgsIAotICAgIDExMjQwLCAxMTI0MiwgMTEyNDQsIDExMjQ2LCAxMTI0OCwgMTEyNTAsIDExMjUyLCAxMTI1NCwgMTEyNTYsIDExMjU4LCAKLSAgICAxMTI2MCwgMTEyNjIsIDExMjY0LCAxMTI2NiwgMTEyNjgsIDExMjcwLCAxMTI3MiwgMTEyNzQsIDExMjc2LCAxMTI3OCwgCi0gICAgMTEyODAsIDExMjgyLCAxMTI4NCwgMTEyODYsIDExMjg4LCAxMTI5MCwgMTEyOTIsIDExMjk0LCAxMTI5NiwgMTEyOTgsIAotICAgIDExMzAwLCAxMTMwMiwgMTEzMDQsIDExMzA2LCAxMTMwOCwgMTEzMTAsIDExMzEyLCAxMTMxNCwgMTEzMTYsIDExMzE4LCAKLSAgICAxMTMyMCwgMTEzMjIsIDExMzI0LCAxMTMyNiwgMTEzMjgsIDExMzMwLCAxMTMzMiwgMTEzMzQsIDExMzM2LCAxMTMzOCwgCi0gICAgMTEzNDAsIDExMzQyLCAxMTM0NCwgMTEzNDYsIDExMzQ4LCAxMTM1MCwgMTEzNTIsIDExMzU0LCAxMTM1NiwgMTEzNTgsIAotICAgIDExMzYwLCAxMTM2MiwgMTEzNjQsIDExMzY2LCAxMTM2OCwgMTEzNzAsIDExMzcyLCAxMTM3NCwgMTEzNzYsIDExMzc4LCAKLSAgICAxMTM4MCwgMTEzODIsIDExMzg0LCAxMTM4NiwgMTEzODgsIDExMzkwLCAxMTM5MiwgMTEzOTQsIDExMzk2LCAxMTM5OCwgCi0gICAgMTE0MDAsIDExNDAyLCAxMTQwNCwgMTE0MDYsIDExNDA4LCAxMTQxMCwgMTE0MTIsIDExNDE0LCAxMTQxNiwgMTE0MTgsIAotICAgIDExNDIwLCAxMTQyMiwgMTE0MjQsIDExNDI2LCAxMTQyOCwgMTE0MzAsIDExNDMyLCAxMTQzNCwgMTE0MzYsIDExNDM4LCAKLSAgICAxMTQ0MCwgMTE0NDIsIDExNDQ0LCAxMTQ0NiwgMTE0NDgsIDExNDUwLCAxMTQ1MiwgMTE0NTQsIDExNDU2LCAxMTQ1OCwgCi0gICAgMTE0NjAsIDExNDYyLCAxMTQ2NCwgMTE0NjYsIDExNDY4LCAxMTQ3MCwgMTE0NzIsIDExNDc0LCAxMTQ3NiwgMTE0NzgsIAotICAgIDExNDgwLCAxMTQ4MiwgMTE0ODQsIDExNDg2LCAxMTQ4OCwgMTE0OTAsIDExNDkyLCAxMTQ5NCwgMTE0OTYsIDExNDk4LCAKLSAgICAxMTUwMCwgMTE1MDIsIDExNTA0LCAxMTUwNiwgMTE1MDgsIDExNTEwLCAxMTUxMiwgMTE1MTQsIDExNTE2LCAxMTUxOCwgCi0gICAgMTE1MjAsIDExNTIyLCAxMTUyNCwgMTE1MjYsIDExNTI4LCAxMTUzMCwgMTE1MzIsIDExNTM0LCAxMTUzNiwgMTE1MzgsIAotICAgIDExNTQwLCAxMTU0MiwgMTE1NDQsIDExNTQ2LCAxMTU0OCwgMTE1NTAsIDExNTUyLCAxMTU1NCwgMTE1NTYsIDExNTU4LCAKLSAgICAxMTU2MCwgMTE1NjIsIDExNTY0LCAxMTU2NiwgMTE1NjgsIDExNTcwLCAxMTU3MiwgMTE1NzQsIDExNTc2LCAxMTU3OCwgCi0gICAgMTE1ODAsIDExNTgyLCAxMTU4NCwgMTE1ODYsIDExNTg4LCAxMTU5MCwgMTE1OTIsIDExNTk0LCAxMTU5NiwgMTE1OTgsIAotICAgIDExNjAwLCAxMTYwMiwgMTE2MDQsIDExNjA2LCAxMTYwOCwgMTE2MTAsIDExNjEyLCAxMTYxNCwgMTE2MTYsIDExNjE4LCAKLSAgICAxMTYyMCwgMTE2MjIsIDExNjI0LCAxMTYyNiwgMTE2MjgsIDExNjMwLCAxMTYzMiwgMTE2MzQsIDExNjM2LCAxMTYzOCwgCi0gICAgMTE2NDAsIDExNjQyLCAxMTY0NCwgMTE2NDYsIDExNjQ4LCAxMTY1MCwgMTE2NTIsIDExNjU0LCAxMTY1NiwgMTE2NTgsIAotICAgIDExNjYwLCAxMTY2MiwgMTE2NjQsIDExNjY2LCAxMTY2OCwgMTE2NzAsIDExNjcyLCAxMTY3NCwgMTE2NzYsIDExNjc4LCAKLSAgICAxMTY4MCwgMTE2ODIsIDExNjg0LCAxMTY4NiwgMTE2ODgsIDExNjkwLCAxMTY5MiwgMTE2OTQsIDExNjk2LCAxMTY5OCwgCi0gICAgMTE3MDAsIDExNzAyLCAxMTcwNCwgMTE3MDYsIDExNzA4LCAxMTcxMCwgMTE3MTIsIDExNzE0LCAxMTcxNiwgMTE3MTgsIAotICAgIDExNzIwLCAxMTcyMiwgMTE3MjQsIDExNzI2LCAxMTcyOCwgMTE3MzAsIDExNzMyLCAxMTczNCwgMTE3MzYsIDExNzM4LCAKLSAgICAxMTc0MCwgMTE3NDIsIDExNzQ0LCAxMTc0NiwgMTE3NDgsIDExNzUwLCAxMTc1MiwgMTE3NTQsIDExNzU2LCAxMTc1OCwgCi0gICAgMTE3NjAsIDExNzYyLCAxMTc2NCwgMTE3NjYsIDExNzY4LCAxMTc3MCwgMTE3NzIsIDExNzc0LCAxMTc3NiwgMTE3NzgsIAotICAgIDExNzgwLCAxMTc4MiwgMCwgMCwgMTE3ODQsIDExNzg2LCAxMTc4OCwgMTE3OTAsIDExNzkyLCAxMTc5NCwgMTE3OTYsIAotICAgIDExNzk4LCAxMTgwMCwgMTE4MDIsIDExODA0LCAxMTgwNiwgMTE4MDgsIDExODEwLCAxMTgxMiwgMTE4MTQsIDExODE2LCAKLSAgICAxMTgxOCwgMTE4MjAsIDExODIyLCAxMTgyNCwgMTE4MjYsIDExODI4LCAxMTgzMCwgMTE4MzIsIDExODM0LCAxMTgzNiwgCi0gICAgMTE4MzgsIDExODQwLCAxMTg0MiwgMTE4NDQsIDExODQ2LCAxMTg0OCwgMTE4NTAsIDExODUyLCAxMTg1NCwgMTE4NTYsIAotICAgIDExODU4LCAxMTg2MCwgMTE4NjIsIDExODY0LCAxMTg2NiwgMTE4NjgsIDExODcwLCAxMTg3MiwgMTE4NzQsIDExODc2LCAKLSAgICAxMTg3OCwgMTE4ODAsIDExODgyLCAxMTg4NCwgMTE4ODYsIDExODg4LCAxMTg5MCwgMTE4OTIsIDExODk0LCAxMTg5NiwgCi0gICAgMTE4OTgsIDExOTAwLCAxMTkwMiwgMTE5MDQsIDExOTA2LCAxMTkwOCwgMTE5MTAsIDExOTEyLCAxMTkxNCwgMTE5MTYsIAotICAgIDExOTE4LCAxMTkyMCwgMTE5MjIsIDExOTI0LCAxMTkyNiwgMTE5MjgsIDExOTMwLCAxMTkzMiwgMTE5MzQsIDExOTM2LCAKLSAgICAxMTkzOCwgMTE5NDAsIDExOTQyLCAxMTk0NCwgMTE5NDYsIDExOTQ4LCAxMTk1MCwgMTE5NTIsIDExOTU0LCAxMTk1NiwgCi0gICAgMTE5NTgsIDExOTYwLCAxMTk2MiwgMTE5NjQsIDExOTY2LCAxMTk2OCwgMTE5NzAsIDExOTcyLCAxMTk3NCwgMTE5NzYsIAotICAgIDExOTc4LCAxMTk4MCwgMTE5ODIsIDExOTg0LCAxMTk4NiwgMTE5ODgsIDExOTkwLCAxMTk5MiwgMTE5OTQsIDExOTk2LCAKLSAgICAxMTk5OCwgMTIwMDAsIDEyMDAyLCAxMjAwNCwgMTIwMDYsIDEyMDA4LCAxMjAxMCwgMTIwMTIsIDEyMDE0LCAxMjAxNiwgCi0gICAgMTIwMTgsIDEyMDIwLCAxMjAyMiwgMTIwMjQsIDEyMDI2LCAxMjAyOCwgMTIwMzAsIDEyMDMyLCAxMjAzNCwgMTIwMzYsIAotICAgIDEyMDM4LCAxMjA0MCwgMTIwNDIsIDEyMDQ0LCAxMjA0NiwgMTIwNDgsIDEyMDUwLCAxMjA1MiwgMTIwNTQsIDEyMDU2LCAKLSAgICAxMjA1OCwgMTIwNjAsIDEyMDYyLCAxMjA2NCwgMTIwNjYsIDEyMDY4LCAxMjA3MCwgMTIwNzIsIDEyMDc0LCAxMjA3NiwgCi0gICAgMTIwNzgsIDEyMDgwLCAxMjA4MiwgMTIwODQsIDEyMDg2LCAxMjA4OCwgMTIwOTAsIDEyMDkyLCAxMjA5NCwgMTIwOTYsIAotICAgIDEyMDk4LCAxMjEwMCwgMTIxMDIsIDEyMTA0LCAxMjEwNiwgMTIxMDgsIDEyMTEwLCAxMjExMiwgMTIxMTQsIDEyMTE2LCAKLSAgICAxMjExOCwgMTIxMjAsIDEyMTIyLCAxMjEyNCwgMTIxMjYsIDEyMTI4LCAxMjEzMCwgMTIxMzIsIDEyMTM0LCAxMjEzNiwgCi0gICAgMTIxMzgsIDEyMTQwLCAxMjE0MiwgMTIxNDQsIDEyMTQ2LCAxMjE0OCwgMTIxNTAsIDEyMTUyLCAxMjE1NCwgMTIxNTYsIAotICAgIDEyMTU4LCAxMjE2MCwgMTIxNjIsIDEyMTY0LCAxMjE2NiwgMTIxNjgsIDEyMTcwLCAxMjE3MiwgMTIxNzQsIDEyMTc2LCAKLSAgICAxMjE3OCwgMTIxODAsIDEyMTgyLCAxMjE4NCwgMTIxODYsIDEyMTg4LCAxMjE5MCwgMTIxOTIsIDEyMTk0LCAxMjE5NiwgCi0gICAgMTIxOTgsIDEyMjAwLCAxMjIwMiwgMTIyMDQsIDEyMjA2LCAxMjIwOCwgMTIyMTAsIDEyMjEyLCAxMjIxNCwgMTIyMTYsIAotICAgIDEyMjE4LCAxMjIyMCwgMTIyMjIsIDEyMjI0LCAxMjIyNiwgMTIyMjgsIDEyMjMwLCAxMjIzMiwgMTIyMzQsIDEyMjM2LCAKLSAgICAxMjIzOCwgMTIyNDAsIDEyMjQyLCAxMjI0NCwgMTIyNDYsIDEyMjQ4LCAxMjI1MCwgMTIyNTIsIDEyMjU0LCAxMjI1NiwgCi0gICAgMTIyNTgsIDEyMjYwLCAxMjI2MiwgMTIyNjQsIDEyMjY2LCAxMjI2OCwgMTIyNzAsIDEyMjcyLCAxMjI3NCwgMTIyNzYsIAotICAgIDEyMjc4LCAxMjI4MCwgMTIyODIsIDEyMjg0LCAxMjI4NiwgMTIyODgsIDEyMjkwLCAxMjI5MiwgMTIyOTQsIDEyMjk2LCAKLSAgICAxMjI5OCwgMTIzMDAsIDEyMzAyLCAxMjMwNCwgMTIzMDYsIDEyMzA4LCAxMjMxMCwgMTIzMTIsIDEyMzE0LCAxMjMxNiwgCi0gICAgMTIzMTgsIDEyMzIwLCAxMjMyMiwgMTIzMjQsIDEyMzI2LCAxMjMyOCwgMTIzMzAsIDEyMzMyLCAxMjMzNCwgMTIzMzYsIAotICAgIDEyMzM4LCAxMjM0MCwgMTIzNDIsIDEyMzQ0LCAxMjM0NiwgMTIzNDgsIDEyMzUwLCAxMjM1MiwgMTIzNTQsIDEyMzU2LCAKLSAgICAxMjM1OCwgMTIzNjAsIDEyMzYyLCAxMjM2NCwgMTIzNjYsIDAsIDAsIDEyMzY4LCAxMjM3MCwgMTIzNzIsIDEyMzc0LCAKLSAgICAxMjM3NiwgMTIzNzgsIDEyMzgwLCAxMjM4MiwgMTIzODQsIDEyMzg2LCAxMjM4OCwgMTIzOTAsIDEyMzkyLCAxMjM5NCwgCi0gICAgMTIzOTYsIDEyMzk4LCAxMjQwMCwgMTI0MDIsIDEyNDA0LCAxMjQwNiwgMTI0MDgsIDEyNDEwLCAxMjQxMiwgMTI0MTQsIAotICAgIDEyNDE2LCAxMjQxOCwgMTI0MjAsIDEyNDIyLCAxMjQyNCwgMTI0MjYsIDEyNDI4LCAxMjQzMCwgMTI0MzIsIDEyNDM0LCAKLSAgICAxMjQzNiwgMTI0MzgsIDEyNDQwLCAxMjQ0MiwgMTI0NDQsIDEyNDQ2LCAxMjQ0OCwgMTI0NTAsIDEyNDUyLCAxMjQ1NCwgCi0gICAgMTI0NTYsIDEyNDU4LCAxMjQ2MCwgMTI0NjIsIDEyNDY0LCAxMjQ2NiwgMTI0NjgsIDEyNDcxLCAxMjQ3NCwgMTI0NzcsIAotICAgIDEyNDgwLCAxMjQ4MywgMTI0ODYsIDEyNDg5LCAxMjQ5MiwgMTI0OTUsIDEyNDk4LCAwLCAwLCAwLCAwLCAwLCAxMjUwMSwgCi0gICAgMTI1MDUsIDEyNTA5LCAxMjUxMywgMTI1MTcsIDEyNTIxLCAxMjUyNSwgMTI1MjksIDEyNTMzLCAxMjUzNywgMTI1NDEsIAotICAgIDEyNTQ1LCAxMjU0OSwgMTI1NTMsIDEyNTU3LCAxMjU2MSwgMTI1NjUsIDEyNTY5LCAxMjU3MywgMTI1NzcsIDEyNTgxLCAKLSAgICAxMjU4NSwgMTI1ODksIDEyNTkzLCAxMjU5NywgMTI2MDEsIDEyNjA1LCAxMjYwOSwgMTI2MTEsIDEyNjEzLCAxMjYxNiwgMCwgCi0gICAgMTI2MTksIDEyNjIxLCAxMjYyMywgMTI2MjUsIDEyNjI3LCAxMjYyOSwgMTI2MzEsIDEyNjMzLCAxMjYzNSwgMTI2MzcsIAotICAgIDEyNjM5LCAxMjY0MSwgMTI2NDMsIDEyNjQ1LCAxMjY0NywgMTI2NDksIDEyNjUxLCAxMjY1MywgMTI2NTUsIDEyNjU3LCAKLSAgICAxMjY1OSwgMTI2NjEsIDEyNjYzLCAxMjY2NSwgMTI2NjcsIDEyNjY5LCAxMjY3MSwgMTI2NzQsIDEyNjc3LCAxMjY4MCwgCi0gICAgMTI2ODMsIDEyNjg3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjY5MCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI2OTMsIDEyNjk2LCAxMjY5OSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI3MDEsIDEyNzAzLCAxMjcwNSwgMTI3MDcsIDEyNzA5LCAxMjcxMSwgCi0gICAgMTI3MTMsIDEyNzE1LCAxMjcxNywgMTI3MTksIDEyNzIxLCAxMjcyMywgMTI3MjUsIDEyNzI3LCAxMjcyOSwgMTI3MzEsIAotICAgIDEyNzMzLCAxMjczNSwgMTI3MzcsIDEyNzM5LCAxMjc0MSwgMTI3NDMsIDEyNzQ1LCAxMjc0NywgMTI3NDksIDEyNzUxLCAKLSAgICAxMjc1MywgMTI3NTUsIDEyNzU3LCAxMjc1OSwgMTI3NjEsIDEyNzYzLCAxMjc2NSwgMTI3NjcsIDEyNzY5LCAxMjc3MSwgCi0gICAgMTI3NzMsIDEyNzc1LCAxMjc3NywgMTI3NzksIDEyNzgxLCAxMjc4MywgMTI3ODUsIDAsIDAsIDAsIDAsIDAsIDEyNzg3LCAKLSAgICAxMjc5MSwgMTI3OTUsIDEyNzk5LCAxMjgwMywgMTI4MDcsIDEyODExLCAxMjgxNSwgMTI4MTksIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDEyODIzLCAxMjgyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI4MjcsIDEyODI5LCAxMjgzMSwgMTI4MzMsIDEyODM1LCAKLSAgICAxMjgzNywgMTI4MzksIDEyODQxLCAxMjg0MywgMTI4NDUsIDEyODQ3LCAxMjg0OSwgMTI4NTEsIDEyODUzLCAxMjg1NSwgCi0gICAgMTI4NTcsIDEyODU5LCAxMjg2MSwgMTI4NjMsIDEyODY1LCAxMjg2NywgMTI4NjksIDEyODcxLCAxMjg3MywgMTI4NzUsIAotICAgIDEyODc3LCAxMjg3OSwgMTI4ODEsIDEyODgzLCAxMjg4NSwgMTI4ODcsIDEyODg5LCAxMjg5MSwgMTI4OTMsIDEyODk1LCAKLSAgICAxMjg5NywgMTI4OTksIDEyOTAxLCAxMjkwMywgMTI5MDUsIDEyOTA3LCAxMjkwOSwgMTI5MTEsIDEyOTEzLCAxMjkxNSwgCi0gICAgMTI5MTcsIDEyOTE5LCAxMjkyMSwgMTI5MjMsIDEyOTI1LCAxMjkyNywgMTI5MjksIDEyOTMxLCAxMjkzMywgMTI5MzUsIAotICAgIDEyOTM3LCAxMjkzOSwgMTI5NDEsIDEyOTQzLCAxMjk0NSwgMTI5NDcsIDEyOTQ5LCAxMjk1MSwgMTI5NTMsIDEyOTU1LCAKLSAgICAxMjk1NywgMTI5NTksIDEyOTYxLCAxMjk2MywgMTI5NjUsIDEyOTY3LCAxMjk2OSwgMTI5NzEsIDEyOTczLCAxMjk3NSwgCi0gICAgMTI5NzcsIDEyOTc5LCAxMjk4MSwgMTI5ODMsIDEyOTg1LCAxMjk4NywgMTI5ODksIDEyOTkxLCAxMjk5MywgMTI5OTUsIAotICAgIDEyOTk3LCAxMjk5OSwgMTMwMDEsIDEzMDAzLCAxMzAwNSwgMTMwMDcsIDEzMDA5LCAxMzAxMSwgMTMwMTMsIDEzMDE1LCAKLSAgICAxMzAxNywgMTMwMTksIDEzMDIxLCAxMzAyMywgMTMwMjUsIDEzMDI3LCAxMzAyOSwgMTMwMzEsIDEzMDMzLCAxMzAzNSwgCi0gICAgMTMwMzcsIDEzMDM5LCAxMzA0MSwgMTMwNDMsIDEzMDQ1LCAxMzA0NywgMTMwNDksIDEzMDUxLCAxMzA1MywgMTMwNTUsIAotICAgIDEzMDU3LCAxMzA1OSwgMTMwNjEsIDEzMDYzLCAxMzA2NSwgMTMwNjcsIDEzMDY5LCAxMzA3MSwgMTMwNzMsIDEzMDc1LCAKLSAgICAxMzA3NywgMTMwNzksIDEzMDgxLCAxMzA4MywgMTMwODUsIDEzMDg3LCAxMzA4OSwgMTMwOTEsIDEzMDkzLCAxMzA5NSwgCi0gICAgMTMwOTcsIDEzMDk5LCAxMzEwMSwgMTMxMDMsIDEzMTA1LCAxMzEwNywgMTMxMDksIDEzMTExLCAxMzExMywgMTMxMTUsIAotICAgIDEzMTE3LCAxMzExOSwgMTMxMjEsIDEzMTIzLCAxMzEyNSwgMTMxMjcsIDEzMTI5LCAxMzEzMSwgMTMxMzMsIDEzMTM1LCAKLSAgICAxMzEzNywgMTMxMzksIDEzMTQxLCAxMzE0MywgMTMxNDUsIDEzMTQ3LCAxMzE0OSwgMTMxNTEsIDEzMTUzLCAxMzE1NSwgCi0gICAgMTMxNTcsIDEzMTU5LCAxMzE2MSwgMTMxNjMsIDEzMTY1LCAxMzE2NywgMTMxNjksIDEzMTcxLCAxMzE3MywgMTMxNzUsIAotICAgIDEzMTc3LCAxMzE3OSwgMTMxODEsIDEzMTgzLCAxMzE4NSwgMTMxODcsIDEzMTg5LCAxMzE5MSwgMTMxOTMsIDEzMTk1LCAKLSAgICAxMzE5NywgMTMxOTksIDEzMjAxLCAxMzIwMywgMTMyMDUsIDEzMjA3LCAxMzIwOSwgMTMyMTEsIDEzMjEzLCAxMzIxNSwgCi0gICAgMTMyMTcsIDEzMjE5LCAxMzIyMSwgMTMyMjMsIDEzMjI1LCAxMzIyNywgMTMyMjksIDEzMjMxLCAxMzIzMywgMTMyMzUsIAotICAgIDEzMjM3LCAxMzIzOSwgMTMyNDEsIDEzMjQzLCAxMzI0NSwgMTMyNDcsIDEzMjQ5LCAxMzI1MSwgMTMyNTMsIDEzMjU1LCAKLSAgICAxMzI1NywgMTMyNTksIDEzMjYxLCAxMzI2MywgMTMyNjUsIDEzMjY3LCAxMzI2OSwgMTMyNzEsIDEzMjczLCAxMzI3NSwgCi0gICAgMTMyNzcsIDEzMjc5LCAxMzI4MSwgMTMyODMsIDEzMjg1LCAxMzI4NywgMTMyODksIDEzMjkxLCAxMzI5MywgMTMyOTUsIAotICAgIDEzMjk3LCAxMzI5OSwgMTMzMDEsIDEzMzAzLCAxMzMwNSwgMTMzMDcsIDEzMzA5LCAxMzMxMSwgMTMzMTMsIDEzMzE1LCAKLSAgICAxMzMxNywgMTMzMTksIDEzMzIxLCAxMzMyMywgMTMzMjUsIDEzMzI3LCAxMzMyOSwgMTMzMzEsIDEzMzMzLCAxMzMzNSwgCi0gICAgMTMzMzcsIDEzMzM5LCAxMzM0MSwgMTMzNDMsIDEzMzQ1LCAxMzM0NywgMTMzNDksIDEzMzUxLCAxMzM1MywgMTMzNTUsIAotICAgIDEzMzU3LCAxMzM1OSwgMTMzNjEsIDEzMzYzLCAxMzM2NSwgMTMzNjcsIDEzMzY5LCAxMzM3MSwgMTMzNzMsIDEzMzc1LCAKLSAgICAxMzM3NywgMTMzNzksIDEzMzgxLCAxMzM4MywgMTMzODUsIDEzMzg3LCAxMzM4OSwgMTMzOTEsIDEzMzkzLCAxMzM5NSwgCi0gICAgMTMzOTcsIDEzMzk5LCAxMzQwMSwgMTM0MDMsIDEzNDA1LCAxMzQwNywgMTM0MDksIDEzNDExLCAxMzQxMywgMTM0MTUsIAotICAgIDEzNDE3LCAxMzQxOSwgMTM0MjEsIDEzNDIzLCAxMzQyNSwgMTM0MjcsIDEzNDI5LCAxMzQzMSwgMTM0MzMsIDEzNDM1LCAKLSAgICAxMzQzNywgMTM0MzksIDEzNDQxLCAxMzQ0MywgMTM0NDUsIDEzNDQ3LCAxMzQ0OSwgMTM0NTEsIDEzNDUzLCAxMzQ1NSwgCi0gICAgMTM0NTcsIDEzNDU5LCAxMzQ2MSwgMTM0NjMsIDEzNDY1LCAxMzQ2NywgMTM0NjksIDEzNDcxLCAxMzQ3MywgMTM0NzUsIAotICAgIDEzNDc3LCAxMzQ3OSwgMTM0ODEsIDEzNDgzLCAxMzQ4NSwgMTM0ODcsIDEzNDg5LCAxMzQ5MSwgMTM0OTMsIDEzNDk1LCAKLSAgICAxMzQ5NywgMTM0OTksIDEzNTAxLCAxMzUwMywgMTM1MDUsIDEzNTA3LCAxMzUwOSwgMTM1MTEsIDEzNTEzLCAxMzUxNSwgCi0gICAgMTM1MTcsIDEzNTE5LCAxMzUyMSwgMTM1MjMsIDEzNTI1LCAxMzUyNywgMTM1MjksIDEzNTMxLCAxMzUzMywgMTM1MzUsIAotICAgIDEzNTM3LCAxMzUzOSwgMTM1NDEsIDEzNTQzLCAxMzU0NSwgMTM1NDcsIDEzNTQ5LCAxMzU1MSwgMTM1NTMsIDEzNTU1LCAKLSAgICAxMzU1NywgMTM1NTksIDEzNTYxLCAxMzU2MywgMTM1NjUsIDEzNTY3LCAxMzU2OSwgMTM1NzEsIDEzNTczLCAxMzU3NSwgCi0gICAgMTM1NzcsIDEzNTc5LCAxMzU4MSwgMTM1ODMsIDEzNTg1LCAxMzU4NywgMTM1ODksIDEzNTkxLCAxMzU5MywgMTM1OTUsIAotICAgIDEzNTk3LCAxMzU5OSwgMTM2MDEsIDEzNjAzLCAxMzYwNSwgMTM2MDcsIDEzNjA5LCAxMzYxMSwgMTM2MTMsIDEzNjE1LCAKLSAgICAxMzYxNywgMTM2MTksIDEzNjIxLCAxMzYyMywgMTM2MjUsIDEzNjI3LCAxMzYyOSwgMTM2MzEsIDEzNjMzLCAxMzYzNSwgCi0gICAgMTM2MzcsIDEzNjM5LCAxMzY0MSwgMTM2NDMsIDEzNjQ1LCAxMzY0NywgMTM2NDksIDEzNjUxLCAxMzY1MywgMTM2NTUsIAotICAgIDEzNjU3LCAxMzY1OSwgMTM2NjEsIDEzNjYzLCAxMzY2NSwgMTM2NjcsIDEzNjY5LCAxMzY3MSwgMTM2NzMsIDEzNjc1LCAKLSAgICAxMzY3NywgMTM2NzksIDEzNjgxLCAxMzY4MywgMTM2ODUsIDEzNjg3LCAxMzY4OSwgMTM2OTEsIDEzNjkzLCAxMzY5NSwgCi0gICAgMTM2OTcsIDEzNjk5LCAxMzcwMSwgMTM3MDMsIDEzNzA1LCAxMzcwNywgMTM3MDksIDEzNzExLCAxMzcxMywgMTM3MTUsIAotICAgIDEzNzE3LCAxMzcxOSwgMTM3MjEsIDEzNzIzLCAxMzcyNSwgMTM3MjcsIDEzNzI5LCAxMzczMSwgMTM3MzMsIDEzNzM1LCAKLSAgICAxMzczNywgMTM3MzksIDEzNzQxLCAxMzc0MywgMTM3NDUsIDEzNzQ3LCAxMzc0OSwgMTM3NTEsIDEzNzUzLCAxMzc1NSwgCi0gICAgMTM3NTcsIDEzNzU5LCAxMzc2MSwgMTM3NjMsIDEzNzY1LCAxMzc2NywgMTM3NjksIDEzNzcxLCAxMzc3MywgMTM3NzUsIAotICAgIDEzNzc3LCAxMzc3OSwgMTM3ODEsIDEzNzgzLCAxMzc4NSwgMTM3ODcsIDEzNzg5LCAxMzc5MSwgMTM3OTMsIDEzNzk1LCAKLSAgICAxMzc5NywgMTM3OTksIDEzODAxLCAxMzgwMywgMTM4MDUsIDEzODA3LCAxMzgwOSwgMTM4MTEsIDEzODEzLCAxMzgxNSwgCi0gICAgMTM4MTcsIDEzODE5LCAxMzgyMSwgMTM4MjMsIDEzODI1LCAxMzgyNywgMTM4MjksIDEzODMxLCAxMzgzMywgMTM4MzUsIAotICAgIDEzODM3LCAxMzgzOSwgMTM4NDEsIDEzODQzLCAxMzg0NSwgMTM4NDcsIDEzODQ5LCAxMzg1MSwgMTM4NTMsIDEzODU1LCAKLSAgICAxMzg1NywgMTM4NTksIDEzODYxLCAxMzg2MywgMTM4NjUsIDEzODY3LCAxMzg2OSwgMTM4NzEsIDEzODczLCAxMzg3NSwgCi0gICAgMTM4NzcsIDEzODc5LCAxMzg4MSwgMTM4ODMsIDEzODg1LCAxMzg4NywgMTM4ODksIDEzODkxLCAxMzg5MywgMTM4OTUsIAotICAgIDEzODk3LCAxMzg5OSwgMTM5MDEsIDEzOTAzLCAxMzkwNSwgMTM5MDcsIDEzOTA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDQ0NSwgMTA0NDgsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIApAQCAtNDY0MSw0MDIgKzQ1MzksNjIzIEBACiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA0NTEsIDEwNDU0LCAxMDQ1NywgMTA0NjAsIDEwNDYzLCAKKyAgICAxMDQ2NiwgMTA0NjksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwNDcyLCAxMDQ3NSwgCisgICAgMTA0NzgsIDEwNDgxLCAxMDQ4NCwgMTA0ODcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDEwNDkwLCAxMDQ5MiwgMTA0OTQsIDEwNDk2LCAxMDQ5OCwgMTA1MDAsIDEwNTAyLCAxMDUwNCwgMTA1MDYsIDEwNTA4LCAKKyAgICAxMDUxMCwgMTA1MTIsIDEwNTE0LCAxMDUxNiwgMTA1MTgsIDEwNTIwLCAxMDUyMiwgMTA1MjQsIDEwNTI2LCAxMDUyOCwgCisgICAgMTA1MzAsIDEwNTMyLCAxMDUzNCwgMTA1MzYsIDEwNTM4LCAxMDU0MCwgMTA1NDIsIDEwNTQ0LCAxMDU0NiwgMTA1NDgsIAorICAgIDEwNTUwLCAxMDU1MiwgMTA1NTQsIDEwNTU2LCAxMDU1OCwgMTA1NjAsIDEwNTYyLCAxMDU2NCwgMTA1NjYsIDEwNTY4LCAKKyAgICAxMDU3MCwgMTA1NzIsIDEwNTc0LCAxMDU3NiwgMTA1NzgsIDEwNTgwLCAxMDU4MiwgMTA1ODQsIDEwNTg2LCAxMDU4OCwgCisgICAgMTA1OTAsIDEwNTkyLCAxMDU5NCwgMTA1OTYsIDEwNTk4LCAxMDYwMCwgMTA2MDIsIDEwNjA0LCAxMDYwNiwgMTA2MDgsIAorICAgIDEwNjEwLCAxMDYxMiwgMTA2MTQsIDEwNjE2LCAxMDYxOCwgMTA2MjAsIDEwNjIyLCAxMDYyNCwgMTA2MjYsIDEwNjI4LCAKKyAgICAxMDYzMCwgMTA2MzIsIDEwNjM0LCAxMDYzNiwgMTA2MzgsIDEwNjQwLCAxMDY0MiwgMTA2NDQsIDEwNjQ2LCAxMDY0OCwgCisgICAgMTA2NTAsIDEwNjUyLCAxMDY1NCwgMTA2NTYsIDEwNjU4LCAwLCAxMDY2MCwgMTA2NjIsIDEwNjY0LCAxMDY2NiwgMTA2NjgsIAorICAgIDEwNjcwLCAxMDY3MiwgMTA2NzQsIDEwNjc2LCAxMDY3OCwgMTA2ODAsIDEwNjgyLCAxMDY4NCwgMTA2ODYsIDEwNjg4LCAKKyAgICAxMDY5MCwgMTA2OTIsIDEwNjk0LCAxMDY5NiwgMTA2OTgsIDEwNzAwLCAxMDcwMiwgMTA3MDQsIDEwNzA2LCAxMDcwOCwgCisgICAgMTA3MTAsIDEwNzEyLCAxMDcxNCwgMTA3MTYsIDEwNzE4LCAxMDcyMCwgMTA3MjIsIDEwNzI0LCAxMDcyNiwgMTA3MjgsIAorICAgIDEwNzMwLCAxMDczMiwgMTA3MzQsIDEwNzM2LCAxMDczOCwgMTA3NDAsIDEwNzQyLCAxMDc0NCwgMTA3NDYsIDEwNzQ4LCAKKyAgICAxMDc1MCwgMTA3NTIsIDEwNzU0LCAxMDc1NiwgMTA3NTgsIDEwNzYwLCAxMDc2MiwgMTA3NjQsIDEwNzY2LCAxMDc2OCwgCisgICAgMTA3NzAsIDEwNzcyLCAxMDc3NCwgMTA3NzYsIDEwNzc4LCAxMDc4MCwgMTA3ODIsIDEwNzg0LCAxMDc4NiwgMTA3ODgsIAorICAgIDEwNzkwLCAxMDc5MiwgMTA3OTQsIDEwNzk2LCAxMDc5OCwgMTA4MDAsIDAsIDEwODAyLCAxMDgwNCwgMCwgMCwgMTA4MDYsIAorICAgIDAsIDAsIDEwODA4LCAxMDgxMCwgMCwgMCwgMTA4MTIsIDEwODE0LCAxMDgxNiwgMTA4MTgsIDAsIDEwODIwLCAxMDgyMiwgCisgICAgMTA4MjQsIDEwODI2LCAxMDgyOCwgMTA4MzAsIDEwODMyLCAxMDgzNCwgMTA4MzYsIDEwODM4LCAxMDg0MCwgMTA4NDIsIDAsIAorICAgIDEwODQ0LCAwLCAxMDg0NiwgMTA4NDgsIDEwODUwLCAxMDg1MiwgMTA4NTQsIDEwODU2LCAxMDg1OCwgMCwgMTA4NjAsIAorICAgIDEwODYyLCAxMDg2NCwgMTA4NjYsIDEwODY4LCAxMDg3MCwgMTA4NzIsIDEwODc0LCAxMDg3NiwgMTA4NzgsIDEwODgwLCAKKyAgICAxMDg4MiwgMTA4ODQsIDEwODg2LCAxMDg4OCwgMTA4OTAsIDEwODkyLCAxMDg5NCwgMTA4OTYsIDEwODk4LCAxMDkwMCwgCisgICAgMTA5MDIsIDEwOTA0LCAxMDkwNiwgMTA5MDgsIDEwOTEwLCAxMDkxMiwgMTA5MTQsIDEwOTE2LCAxMDkxOCwgMTA5MjAsIAorICAgIDEwOTIyLCAxMDkyNCwgMTA5MjYsIDEwOTI4LCAxMDkzMCwgMTA5MzIsIDEwOTM0LCAxMDkzNiwgMTA5MzgsIDEwOTQwLCAKKyAgICAxMDk0MiwgMTA5NDQsIDEwOTQ2LCAxMDk0OCwgMTA5NTAsIDEwOTUyLCAxMDk1NCwgMTA5NTYsIDEwOTU4LCAxMDk2MCwgCisgICAgMTA5NjIsIDEwOTY0LCAxMDk2NiwgMTA5NjgsIDEwOTcwLCAxMDk3MiwgMTA5NzQsIDEwOTc2LCAxMDk3OCwgMTA5ODAsIAorICAgIDEwOTgyLCAxMDk4NCwgMTA5ODYsIDEwOTg4LCAwLCAxMDk5MCwgMTA5OTIsIDEwOTk0LCAxMDk5NiwgMCwgMCwgMTA5OTgsIAorICAgIDExMDAwLCAxMTAwMiwgMTEwMDQsIDExMDA2LCAxMTAwOCwgMTEwMTAsIDExMDEyLCAwLCAxMTAxNCwgMTEwMTYsIDExMDE4LCAKKyAgICAxMTAyMCwgMTEwMjIsIDExMDI0LCAxMTAyNiwgMCwgMTEwMjgsIDExMDMwLCAxMTAzMiwgMTEwMzQsIDExMDM2LCAxMTAzOCwgCisgICAgMTEwNDAsIDExMDQyLCAxMTA0NCwgMTEwNDYsIDExMDQ4LCAxMTA1MCwgMTEwNTIsIDExMDU0LCAxMTA1NiwgMTEwNTgsIAorICAgIDExMDYwLCAxMTA2MiwgMTEwNjQsIDExMDY2LCAxMTA2OCwgMTEwNzAsIDExMDcyLCAxMTA3NCwgMTEwNzYsIDExMDc4LCAKKyAgICAxMTA4MCwgMTEwODIsIDAsIDExMDg0LCAxMTA4NiwgMTEwODgsIDExMDkwLCAwLCAxMTA5MiwgMTEwOTQsIDExMDk2LCAKKyAgICAxMTA5OCwgMTExMDAsIDAsIDExMTAyLCAwLCAwLCAwLCAxMTEwNCwgMTExMDYsIDExMTA4LCAxMTExMCwgMTExMTIsIAorICAgIDExMTE0LCAxMTExNiwgMCwgMTExMTgsIDExMTIwLCAxMTEyMiwgMTExMjQsIDExMTI2LCAxMTEyOCwgMTExMzAsIDExMTMyLCAKKyAgICAxMTEzNCwgMTExMzYsIDExMTM4LCAxMTE0MCwgMTExNDIsIDExMTQ0LCAxMTE0NiwgMTExNDgsIDExMTUwLCAxMTE1MiwgCisgICAgMTExNTQsIDExMTU2LCAxMTE1OCwgMTExNjAsIDExMTYyLCAxMTE2NCwgMTExNjYsIDExMTY4LCAxMTE3MCwgMTExNzIsIAorICAgIDExMTc0LCAxMTE3NiwgMTExNzgsIDExMTgwLCAxMTE4MiwgMTExODQsIDExMTg2LCAxMTE4OCwgMTExOTAsIDExMTkyLCAKKyAgICAxMTE5NCwgMTExOTYsIDExMTk4LCAxMTIwMCwgMTEyMDIsIDExMjA0LCAxMTIwNiwgMTEyMDgsIDExMjEwLCAxMTIxMiwgCisgICAgMTEyMTQsIDExMjE2LCAxMTIxOCwgMTEyMjAsIDExMjIyLCAxMTIyNCwgMTEyMjYsIDExMjI4LCAxMTIzMCwgMTEyMzIsIAorICAgIDExMjM0LCAxMTIzNiwgMTEyMzgsIDExMjQwLCAxMTI0MiwgMTEyNDQsIDExMjQ2LCAxMTI0OCwgMTEyNTAsIDExMjUyLCAKKyAgICAxMTI1NCwgMTEyNTYsIDExMjU4LCAxMTI2MCwgMTEyNjIsIDExMjY0LCAxMTI2NiwgMTEyNjgsIDExMjcwLCAxMTI3MiwgCisgICAgMTEyNzQsIDExMjc2LCAxMTI3OCwgMTEyODAsIDExMjgyLCAxMTI4NCwgMTEyODYsIDExMjg4LCAxMTI5MCwgMTEyOTIsIAorICAgIDExMjk0LCAxMTI5NiwgMTEyOTgsIDExMzAwLCAxMTMwMiwgMTEzMDQsIDExMzA2LCAxMTMwOCwgMTEzMTAsIDExMzEyLCAKKyAgICAxMTMxNCwgMTEzMTYsIDExMzE4LCAxMTMyMCwgMTEzMjIsIDExMzI0LCAxMTMyNiwgMTEzMjgsIDExMzMwLCAxMTMzMiwgCisgICAgMTEzMzQsIDExMzM2LCAxMTMzOCwgMTEzNDAsIDExMzQyLCAxMTM0NCwgMTEzNDYsIDExMzQ4LCAxMTM1MCwgMTEzNTIsIAorICAgIDExMzU0LCAxMTM1NiwgMTEzNTgsIDExMzYwLCAxMTM2MiwgMTEzNjQsIDExMzY2LCAxMTM2OCwgMTEzNzAsIDExMzcyLCAKKyAgICAxMTM3NCwgMTEzNzYsIDExMzc4LCAxMTM4MCwgMTEzODIsIDExMzg0LCAxMTM4NiwgMTEzODgsIDExMzkwLCAxMTM5MiwgCisgICAgMTEzOTQsIDExMzk2LCAxMTM5OCwgMTE0MDAsIDExNDAyLCAxMTQwNCwgMTE0MDYsIDExNDA4LCAxMTQxMCwgMTE0MTIsIAorICAgIDExNDE0LCAxMTQxNiwgMTE0MTgsIDExNDIwLCAxMTQyMiwgMTE0MjQsIDExNDI2LCAxMTQyOCwgMTE0MzAsIDExNDMyLCAKKyAgICAxMTQzNCwgMTE0MzYsIDExNDM4LCAxMTQ0MCwgMTE0NDIsIDExNDQ0LCAxMTQ0NiwgMTE0NDgsIDExNDUwLCAxMTQ1MiwgCisgICAgMTE0NTQsIDExNDU2LCAxMTQ1OCwgMTE0NjAsIDExNDYyLCAxMTQ2NCwgMTE0NjYsIDExNDY4LCAxMTQ3MCwgMTE0NzIsIAorICAgIDExNDc0LCAxMTQ3NiwgMTE0NzgsIDExNDgwLCAxMTQ4MiwgMTE0ODQsIDExNDg2LCAxMTQ4OCwgMTE0OTAsIDExNDkyLCAKKyAgICAxMTQ5NCwgMTE0OTYsIDExNDk4LCAxMTUwMCwgMTE1MDIsIDExNTA0LCAxMTUwNiwgMTE1MDgsIDExNTEwLCAxMTUxMiwgCisgICAgMTE1MTQsIDExNTE2LCAxMTUxOCwgMTE1MjAsIDExNTIyLCAxMTUyNCwgMTE1MjYsIDExNTI4LCAxMTUzMCwgMTE1MzIsIAorICAgIDExNTM0LCAxMTUzNiwgMTE1MzgsIDExNTQwLCAxMTU0MiwgMTE1NDQsIDExNTQ2LCAxMTU0OCwgMTE1NTAsIDExNTUyLCAKKyAgICAxMTU1NCwgMTE1NTYsIDExNTU4LCAxMTU2MCwgMTE1NjIsIDExNTY0LCAxMTU2NiwgMTE1NjgsIDExNTcwLCAxMTU3MiwgCisgICAgMTE1NzQsIDExNTc2LCAxMTU3OCwgMTE1ODAsIDExNTgyLCAxMTU4NCwgMTE1ODYsIDExNTg4LCAxMTU5MCwgMTE1OTIsIAorICAgIDExNTk0LCAxMTU5NiwgMTE1OTgsIDExNjAwLCAxMTYwMiwgMTE2MDQsIDExNjA2LCAxMTYwOCwgMTE2MTAsIDExNjEyLCAKKyAgICAxMTYxNCwgMTE2MTYsIDExNjE4LCAxMTYyMCwgMTE2MjIsIDExNjI0LCAxMTYyNiwgMTE2MjgsIDExNjMwLCAxMTYzMiwgCisgICAgMTE2MzQsIDExNjM2LCAxMTYzOCwgMTE2NDAsIDExNjQyLCAxMTY0NCwgMTE2NDYsIDExNjQ4LCAxMTY1MCwgMTE2NTIsIAorICAgIDExNjU0LCAxMTY1NiwgMTE2NTgsIDExNjYwLCAxMTY2MiwgMTE2NjQsIDExNjY2LCAxMTY2OCwgMTE2NzAsIDExNjcyLCAKKyAgICAxMTY3NCwgMTE2NzYsIDExNjc4LCAxMTY4MCwgMTE2ODIsIDExNjg0LCAxMTY4NiwgMTE2ODgsIDExNjkwLCAxMTY5MiwgCisgICAgMTE2OTQsIDExNjk2LCAxMTY5OCwgMTE3MDAsIDExNzAyLCAxMTcwNCwgMTE3MDYsIDExNzA4LCAxMTcxMCwgMTE3MTIsIAorICAgIDExNzE0LCAxMTcxNiwgMTE3MTgsIDExNzIwLCAxMTcyMiwgMTE3MjQsIDExNzI2LCAxMTcyOCwgMTE3MzAsIDExNzMyLCAKKyAgICAxMTczNCwgMTE3MzYsIDExNzM4LCAxMTc0MCwgMTE3NDIsIDExNzQ0LCAxMTc0NiwgMTE3NDgsIDExNzUwLCAxMTc1MiwgCisgICAgMTE3NTQsIDExNzU2LCAxMTc1OCwgMTE3NjAsIDExNzYyLCAxMTc2NCwgMTE3NjYsIDExNzY4LCAxMTc3MCwgMTE3NzIsIAorICAgIDExNzc0LCAxMTc3NiwgMTE3NzgsIDExNzgwLCAxMTc4MiwgMTE3ODQsIDExNzg2LCAxMTc4OCwgMTE3OTAsIDExNzkyLCAKKyAgICAxMTc5NCwgMTE3OTYsIDAsIDAsIDExNzk4LCAxMTgwMCwgMTE4MDIsIDExODA0LCAxMTgwNiwgMTE4MDgsIDExODEwLCAKKyAgICAxMTgxMiwgMTE4MTQsIDExODE2LCAxMTgxOCwgMTE4MjAsIDExODIyLCAxMTgyNCwgMTE4MjYsIDExODI4LCAxMTgzMCwgCisgICAgMTE4MzIsIDExODM0LCAxMTgzNiwgMTE4MzgsIDExODQwLCAxMTg0MiwgMTE4NDQsIDExODQ2LCAxMTg0OCwgMTE4NTAsIAorICAgIDExODUyLCAxMTg1NCwgMTE4NTYsIDExODU4LCAxMTg2MCwgMTE4NjIsIDExODY0LCAxMTg2NiwgMTE4NjgsIDExODcwLCAKKyAgICAxMTg3MiwgMTE4NzQsIDExODc2LCAxMTg3OCwgMTE4ODAsIDExODgyLCAxMTg4NCwgMTE4ODYsIDExODg4LCAxMTg5MCwgCisgICAgMTE4OTIsIDExODk0LCAxMTg5NiwgMTE4OTgsIDExOTAwLCAxMTkwMiwgMTE5MDQsIDExOTA2LCAxMTkwOCwgMTE5MTAsIAorICAgIDExOTEyLCAxMTkxNCwgMTE5MTYsIDExOTE4LCAxMTkyMCwgMTE5MjIsIDExOTI0LCAxMTkyNiwgMTE5MjgsIDExOTMwLCAKKyAgICAxMTkzMiwgMTE5MzQsIDExOTM2LCAxMTkzOCwgMTE5NDAsIDExOTQyLCAxMTk0NCwgMTE5NDYsIDExOTQ4LCAxMTk1MCwgCisgICAgMTE5NTIsIDExOTU0LCAxMTk1NiwgMTE5NTgsIDExOTYwLCAxMTk2MiwgMTE5NjQsIDExOTY2LCAxMTk2OCwgMTE5NzAsIAorICAgIDExOTcyLCAxMTk3NCwgMTE5NzYsIDExOTc4LCAxMTk4MCwgMTE5ODIsIDExOTg0LCAxMTk4NiwgMTE5ODgsIDExOTkwLCAKKyAgICAxMTk5MiwgMTE5OTQsIDExOTk2LCAxMTk5OCwgMTIwMDAsIDEyMDAyLCAxMjAwNCwgMTIwMDYsIDEyMDA4LCAxMjAxMCwgCisgICAgMTIwMTIsIDEyMDE0LCAxMjAxNiwgMTIwMTgsIDEyMDIwLCAxMjAyMiwgMTIwMjQsIDEyMDI2LCAxMjAyOCwgMTIwMzAsIAorICAgIDEyMDMyLCAxMjAzNCwgMTIwMzYsIDEyMDM4LCAxMjA0MCwgMTIwNDIsIDEyMDQ0LCAxMjA0NiwgMTIwNDgsIDEyMDUwLCAKKyAgICAxMjA1MiwgMTIwNTQsIDEyMDU2LCAxMjA1OCwgMTIwNjAsIDEyMDYyLCAxMjA2NCwgMTIwNjYsIDEyMDY4LCAxMjA3MCwgCisgICAgMTIwNzIsIDEyMDc0LCAxMjA3NiwgMTIwNzgsIDEyMDgwLCAxMjA4MiwgMTIwODQsIDEyMDg2LCAxMjA4OCwgMTIwOTAsIAorICAgIDEyMDkyLCAxMjA5NCwgMTIwOTYsIDEyMDk4LCAxMjEwMCwgMTIxMDIsIDEyMTA0LCAxMjEwNiwgMTIxMDgsIDEyMTEwLCAKKyAgICAxMjExMiwgMTIxMTQsIDEyMTE2LCAxMjExOCwgMTIxMjAsIDEyMTIyLCAxMjEyNCwgMTIxMjYsIDEyMTI4LCAxMjEzMCwgCisgICAgMTIxMzIsIDEyMTM0LCAxMjEzNiwgMTIxMzgsIDEyMTQwLCAxMjE0MiwgMTIxNDQsIDEyMTQ2LCAxMjE0OCwgMTIxNTAsIAorICAgIDEyMTUyLCAxMjE1NCwgMTIxNTYsIDEyMTU4LCAxMjE2MCwgMTIxNjIsIDEyMTY0LCAxMjE2NiwgMTIxNjgsIDEyMTcwLCAKKyAgICAxMjE3MiwgMTIxNzQsIDEyMTc2LCAxMjE3OCwgMTIxODAsIDEyMTgyLCAxMjE4NCwgMTIxODYsIDEyMTg4LCAxMjE5MCwgCisgICAgMTIxOTIsIDEyMTk0LCAxMjE5NiwgMTIxOTgsIDEyMjAwLCAxMjIwMiwgMTIyMDQsIDEyMjA2LCAxMjIwOCwgMTIyMTAsIAorICAgIDEyMjEyLCAxMjIxNCwgMTIyMTYsIDEyMjE4LCAxMjIyMCwgMTIyMjIsIDEyMjI0LCAxMjIyNiwgMTIyMjgsIDEyMjMwLCAKKyAgICAxMjIzMiwgMTIyMzQsIDEyMjM2LCAxMjIzOCwgMTIyNDAsIDEyMjQyLCAxMjI0NCwgMTIyNDYsIDEyMjQ4LCAxMjI1MCwgCisgICAgMTIyNTIsIDEyMjU0LCAxMjI1NiwgMTIyNTgsIDEyMjYwLCAxMjI2MiwgMTIyNjQsIDEyMjY2LCAxMjI2OCwgMTIyNzAsIAorICAgIDEyMjcyLCAxMjI3NCwgMTIyNzYsIDEyMjc4LCAxMjI4MCwgMTIyODIsIDEyMjg0LCAxMjI4NiwgMTIyODgsIDEyMjkwLCAKKyAgICAxMjI5MiwgMTIyOTQsIDEyMjk2LCAxMjI5OCwgMTIzMDAsIDEyMzAyLCAxMjMwNCwgMTIzMDYsIDEyMzA4LCAxMjMxMCwgCisgICAgMTIzMTIsIDEyMzE0LCAxMjMxNiwgMTIzMTgsIDEyMzIwLCAxMjMyMiwgMTIzMjQsIDEyMzI2LCAxMjMyOCwgMTIzMzAsIAorICAgIDEyMzMyLCAxMjMzNCwgMTIzMzYsIDEyMzM4LCAxMjM0MCwgMTIzNDIsIDEyMzQ0LCAxMjM0NiwgMTIzNDgsIDEyMzUwLCAKKyAgICAxMjM1MiwgMTIzNTQsIDEyMzU2LCAxMjM1OCwgMTIzNjAsIDEyMzYyLCAxMjM2NCwgMTIzNjYsIDEyMzY4LCAxMjM3MCwgCisgICAgMTIzNzIsIDEyMzc0LCAxMjM3NiwgMTIzNzgsIDEyMzgwLCAwLCAwLCAxMjM4MiwgMTIzODQsIDEyMzg2LCAxMjM4OCwgCisgICAgMTIzOTAsIDEyMzkyLCAxMjM5NCwgMTIzOTYsIDEyMzk4LCAxMjQwMCwgMTI0MDIsIDEyNDA0LCAxMjQwNiwgMTI0MDgsIAorICAgIDEyNDEwLCAxMjQxMiwgMTI0MTQsIDEyNDE2LCAxMjQxOCwgMTI0MjAsIDEyNDIyLCAxMjQyNCwgMTI0MjYsIDEyNDI4LCAKKyAgICAxMjQzMCwgMTI0MzIsIDEyNDM0LCAxMjQzNiwgMTI0MzgsIDEyNDQwLCAxMjQ0MiwgMTI0NDQsIDEyNDQ2LCAxMjQ0OCwgCisgICAgMTI0NTAsIDEyNDUyLCAxMjQ1NCwgMTI0NTYsIDEyNDU4LCAxMjQ2MCwgMTI0NjIsIDEyNDY0LCAxMjQ2NiwgMTI0NjgsIAorICAgIDEyNDcwLCAxMjQ3MiwgMTI0NzQsIDEyNDc2LCAxMjQ3OCwgMTI0ODAsIDEyNDgyLCAxMjQ4NCwgMTI0ODYsIDEyNDg4LCAwLCAKKyAgICAxMjQ5MCwgMTI0OTIsIDEyNDk0LCAxMjQ5NiwgMTI0OTgsIDEyNTAwLCAxMjUwMiwgMTI1MDQsIDEyNTA2LCAxMjUwOCwgCisgICAgMTI1MTAsIDEyNTEyLCAxMjUxNCwgMTI1MTYsIDEyNTE4LCAxMjUyMCwgMTI1MjIsIDEyNTI0LCAxMjUyNiwgMTI1MjgsIAorICAgIDEyNTMwLCAxMjUzMiwgMTI1MzQsIDEyNTM2LCAxMjUzOCwgMTI1NDAsIDEyNTQyLCAwLCAxMjU0NCwgMTI1NDYsIDAsIAorICAgIDEyNTQ4LCAwLCAwLCAxMjU1MCwgMCwgMTI1NTIsIDEyNTU0LCAxMjU1NiwgMTI1NTgsIDEyNTYwLCAxMjU2MiwgMTI1NjQsIAorICAgIDEyNTY2LCAxMjU2OCwgMTI1NzAsIDAsIDEyNTcyLCAxMjU3NCwgMTI1NzYsIDEyNTc4LCAwLCAxMjU4MCwgMCwgMTI1ODIsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDEyNTg0LCAwLCAwLCAwLCAwLCAxMjU4NiwgMCwgMTI1ODgsIDAsIDEyNTkwLCAwLCAxMjU5MiwgCisgICAgMTI1OTQsIDEyNTk2LCAwLCAxMjU5OCwgMTI2MDAsIDAsIDEyNjAyLCAwLCAwLCAxMjYwNCwgMCwgMTI2MDYsIDAsIDEyNjA4LCAKKyAgICAwLCAxMjYxMCwgMCwgMTI2MTIsIDAsIDEyNjE0LCAxMjYxNiwgMCwgMTI2MTgsIDAsIDAsIDEyNjIwLCAxMjYyMiwgMTI2MjQsIAorICAgIDEyNjI2LCAwLCAxMjYyOCwgMTI2MzAsIDEyNjMyLCAxMjYzNCwgMTI2MzYsIDEyNjM4LCAxMjY0MCwgMCwgMTI2NDIsIAorICAgIDEyNjQ0LCAxMjY0NiwgMTI2NDgsIDAsIDEyNjUwLCAxMjY1MiwgMTI2NTQsIDEyNjU2LCAwLCAxMjY1OCwgMCwgMTI2NjAsIAorICAgIDEyNjYyLCAxMjY2NCwgMTI2NjYsIDEyNjY4LCAxMjY3MCwgMTI2NzIsIDEyNjc0LCAxMjY3NiwgMTI2NzgsIDAsIDEyNjgwLCAKKyAgICAxMjY4MiwgMTI2ODQsIDEyNjg2LCAxMjY4OCwgMTI2OTAsIDEyNjkyLCAxMjY5NCwgMTI2OTYsIDEyNjk4LCAxMjcwMCwgCisgICAgMTI3MDIsIDEyNzA0LCAxMjcwNiwgMTI3MDgsIDEyNzEwLCAxMjcxMiwgMCwgMCwgMCwgMCwgMCwgMTI3MTQsIDEyNzE2LCAKKyAgICAxMjcxOCwgMCwgMTI3MjAsIDEyNzIyLCAxMjcyNCwgMTI3MjYsIDEyNzI4LCAwLCAxMjczMCwgMTI3MzIsIDEyNzM0LCAKKyAgICAxMjczNiwgMTI3MzgsIDEyNzQwLCAxMjc0MiwgMTI3NDQsIDEyNzQ2LCAxMjc0OCwgMTI3NTAsIDEyNzUyLCAxMjc1NCwgCisgICAgMTI3NTYsIDEyNzU4LCAxMjc2MCwgMTI3NjIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDEyNzY0LCAxMjc2NywgMTI3NzAsIDEyNzczLCAxMjc3NiwgMTI3NzksIDEyNzgyLCAxMjc4NSwgCisgICAgMTI3ODgsIDEyNzkxLCAxMjc5NCwgMCwgMCwgMCwgMCwgMCwgMTI3OTcsIDEyODAxLCAxMjgwNSwgMTI4MDksIDEyODEzLCAKKyAgICAxMjgxNywgMTI4MjEsIDEyODI1LCAxMjgyOSwgMTI4MzMsIDEyODM3LCAxMjg0MSwgMTI4NDUsIDEyODQ5LCAxMjg1MywgCisgICAgMTI4NTcsIDEyODYxLCAxMjg2NSwgMTI4NjksIDEyODczLCAxMjg3NywgMTI4ODEsIDEyODg1LCAxMjg4OSwgMTI4OTMsIAorICAgIDEyODk3LCAxMjkwMSwgMTI5MDUsIDEyOTA3LCAxMjkwOSwgMTI5MTIsIDAsIDEyOTE1LCAxMjkxNywgMTI5MTksIDEyOTIxLCAKKyAgICAxMjkyMywgMTI5MjUsIDEyOTI3LCAxMjkyOSwgMTI5MzEsIDEyOTMzLCAxMjkzNSwgMTI5MzcsIDEyOTM5LCAxMjk0MSwgCisgICAgMTI5NDMsIDEyOTQ1LCAxMjk0NywgMTI5NDksIDEyOTUxLCAxMjk1MywgMTI5NTUsIDEyOTU3LCAxMjk1OSwgMTI5NjEsIAorICAgIDEyOTYzLCAxMjk2NSwgMTI5NjcsIDEyOTcwLCAxMjk3MywgMTI5NzYsIDEyOTc5LCAxMjk4MywgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI5ODYsIDEyOTg5LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjk5MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMTI5OTUsIDEyOTk4LCAxMzAwMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMTMwMDMsIDEzMDA1LCAxMzAwNywgMTMwMDksIDEzMDExLCAxMzAxMywgMTMwMTUsIDEzMDE3LCAxMzAxOSwgMTMwMjEsIAorICAgIDEzMDIzLCAxMzAyNSwgMTMwMjcsIDEzMDI5LCAxMzAzMSwgMTMwMzMsIDEzMDM1LCAxMzAzNywgMTMwMzksIDEzMDQxLCAKKyAgICAxMzA0MywgMTMwNDUsIDEzMDQ3LCAxMzA0OSwgMTMwNTEsIDEzMDUzLCAxMzA1NSwgMTMwNTcsIDEzMDU5LCAxMzA2MSwgCisgICAgMTMwNjMsIDEzMDY1LCAxMzA2NywgMTMwNjksIDEzMDcxLCAxMzA3MywgMTMwNzUsIDEzMDc3LCAxMzA3OSwgMTMwODEsIAorICAgIDEzMDgzLCAxMzA4NSwgMTMwODcsIDAsIDAsIDAsIDAsIDAsIDEzMDg5LCAxMzA5MywgMTMwOTcsIDEzMTAxLCAxMzEwNSwgCisgICAgMTMxMDksIDEzMTEzLCAxMzExNywgMTMxMjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzMTI1LCAxMzEyNywgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMTMxMjksIDEzMTMxLCAxMzEzMywgMTMxMzUsIDEzMTM3LCAxMzEzOSwgMTMxNDEsIDEzMTQzLCAxMzE0NSwgCisgICAgMTMxNDcsIDEzMTQ5LCAxMzE1MSwgMTMxNTMsIDEzMTU1LCAxMzE1NywgMTMxNTksIDEzMTYxLCAxMzE2MywgMTMxNjUsIAorICAgIDEzMTY3LCAxMzE2OSwgMTMxNzEsIDEzMTczLCAxMzE3NSwgMTMxNzcsIDEzMTc5LCAxMzE4MSwgMTMxODMsIDEzMTg1LCAKKyAgICAxMzE4NywgMTMxODksIDEzMTkxLCAxMzE5MywgMTMxOTUsIDEzMTk3LCAxMzE5OSwgMTMyMDEsIDEzMjAzLCAxMzIwNSwgCisgICAgMTMyMDcsIDEzMjA5LCAxMzIxMSwgMTMyMTMsIDEzMjE1LCAxMzIxNywgMTMyMTksIDEzMjIxLCAxMzIyMywgMTMyMjUsIAorICAgIDEzMjI3LCAxMzIyOSwgMTMyMzEsIDEzMjMzLCAxMzIzNSwgMTMyMzcsIDEzMjM5LCAxMzI0MSwgMTMyNDMsIDEzMjQ1LCAKKyAgICAxMzI0NywgMTMyNDksIDEzMjUxLCAxMzI1MywgMTMyNTUsIDEzMjU3LCAxMzI1OSwgMTMyNjEsIDEzMjYzLCAxMzI2NSwgCisgICAgMTMyNjcsIDEzMjY5LCAxMzI3MSwgMTMyNzMsIDEzMjc1LCAxMzI3NywgMTMyNzksIDEzMjgxLCAxMzI4MywgMTMyODUsIAorICAgIDEzMjg3LCAxMzI4OSwgMTMyOTEsIDEzMjkzLCAxMzI5NSwgMTMyOTcsIDEzMjk5LCAxMzMwMSwgMTMzMDMsIDEzMzA1LCAKKyAgICAxMzMwNywgMTMzMDksIDEzMzExLCAxMzMxMywgMTMzMTUsIDEzMzE3LCAxMzMxOSwgMTMzMjEsIDEzMzIzLCAxMzMyNSwgCisgICAgMTMzMjcsIDEzMzI5LCAxMzMzMSwgMTMzMzMsIDEzMzM1LCAxMzMzNywgMTMzMzksIDEzMzQxLCAxMzM0MywgMTMzNDUsIAorICAgIDEzMzQ3LCAxMzM0OSwgMTMzNTEsIDEzMzUzLCAxMzM1NSwgMTMzNTcsIDEzMzU5LCAxMzM2MSwgMTMzNjMsIDEzMzY1LCAKKyAgICAxMzM2NywgMTMzNjksIDEzMzcxLCAxMzM3MywgMTMzNzUsIDEzMzc3LCAxMzM3OSwgMTMzODEsIDEzMzgzLCAxMzM4NSwgCisgICAgMTMzODcsIDEzMzg5LCAxMzM5MSwgMTMzOTMsIDEzMzk1LCAxMzM5NywgMTMzOTksIDEzNDAxLCAxMzQwMywgMTM0MDUsIAorICAgIDEzNDA3LCAxMzQwOSwgMTM0MTEsIDEzNDEzLCAxMzQxNSwgMTM0MTcsIDEzNDE5LCAxMzQyMSwgMTM0MjMsIDEzNDI1LCAKKyAgICAxMzQyNywgMTM0MjksIDEzNDMxLCAxMzQzMywgMTM0MzUsIDEzNDM3LCAxMzQzOSwgMTM0NDEsIDEzNDQzLCAxMzQ0NSwgCisgICAgMTM0NDcsIDEzNDQ5LCAxMzQ1MSwgMTM0NTMsIDEzNDU1LCAxMzQ1NywgMTM0NTksIDEzNDYxLCAxMzQ2MywgMTM0NjUsIAorICAgIDEzNDY3LCAxMzQ2OSwgMTM0NzEsIDEzNDczLCAxMzQ3NSwgMTM0NzcsIDEzNDc5LCAxMzQ4MSwgMTM0ODMsIDEzNDg1LCAKKyAgICAxMzQ4NywgMTM0ODksIDEzNDkxLCAxMzQ5MywgMTM0OTUsIDEzNDk3LCAxMzQ5OSwgMTM1MDEsIDEzNTAzLCAxMzUwNSwgCisgICAgMTM1MDcsIDEzNTA5LCAxMzUxMSwgMTM1MTMsIDEzNTE1LCAxMzUxNywgMTM1MTksIDEzNTIxLCAxMzUyMywgMTM1MjUsIAorICAgIDEzNTI3LCAxMzUyOSwgMTM1MzEsIDEzNTMzLCAxMzUzNSwgMTM1MzcsIDEzNTM5LCAxMzU0MSwgMTM1NDMsIDEzNTQ1LCAKKyAgICAxMzU0NywgMTM1NDksIDEzNTUxLCAxMzU1MywgMTM1NTUsIDEzNTU3LCAxMzU1OSwgMTM1NjEsIDEzNTYzLCAxMzU2NSwgCisgICAgMTM1NjcsIDEzNTY5LCAxMzU3MSwgMTM1NzMsIDEzNTc1LCAxMzU3NywgMTM1NzksIDEzNTgxLCAxMzU4MywgMTM1ODUsIAorICAgIDEzNTg3LCAxMzU4OSwgMTM1OTEsIDEzNTkzLCAxMzU5NSwgMTM1OTcsIDEzNTk5LCAxMzYwMSwgMTM2MDMsIDEzNjA1LCAKKyAgICAxMzYwNywgMTM2MDksIDEzNjExLCAxMzYxMywgMTM2MTUsIDEzNjE3LCAxMzYxOSwgMTM2MjEsIDEzNjIzLCAxMzYyNSwgCisgICAgMTM2MjcsIDEzNjI5LCAxMzYzMSwgMTM2MzMsIDEzNjM1LCAxMzYzNywgMTM2MzksIDEzNjQxLCAxMzY0MywgMTM2NDUsIAorICAgIDEzNjQ3LCAxMzY0OSwgMTM2NTEsIDEzNjUzLCAxMzY1NSwgMTM2NTcsIDEzNjU5LCAxMzY2MSwgMTM2NjMsIDEzNjY1LCAKKyAgICAxMzY2NywgMTM2NjksIDEzNjcxLCAxMzY3MywgMTM2NzUsIDEzNjc3LCAxMzY3OSwgMTM2ODEsIDEzNjgzLCAxMzY4NSwgCisgICAgMTM2ODcsIDEzNjg5LCAxMzY5MSwgMTM2OTMsIDEzNjk1LCAxMzY5NywgMTM2OTksIDEzNzAxLCAxMzcwMywgMTM3MDUsIAorICAgIDEzNzA3LCAxMzcwOSwgMTM3MTEsIDEzNzEzLCAxMzcxNSwgMTM3MTcsIDEzNzE5LCAxMzcyMSwgMTM3MjMsIDEzNzI1LCAKKyAgICAxMzcyNywgMTM3MjksIDEzNzMxLCAxMzczMywgMTM3MzUsIDEzNzM3LCAxMzczOSwgMTM3NDEsIDEzNzQzLCAxMzc0NSwgCisgICAgMTM3NDcsIDEzNzQ5LCAxMzc1MSwgMTM3NTMsIDEzNzU1LCAxMzc1NywgMTM3NTksIDEzNzYxLCAxMzc2MywgMTM3NjUsIAorICAgIDEzNzY3LCAxMzc2OSwgMTM3NzEsIDEzNzczLCAxMzc3NSwgMTM3NzcsIDEzNzc5LCAxMzc4MSwgMTM3ODMsIDEzNzg1LCAKKyAgICAxMzc4NywgMTM3ODksIDEzNzkxLCAxMzc5MywgMTM3OTUsIDEzNzk3LCAxMzc5OSwgMTM4MDEsIDEzODAzLCAxMzgwNSwgCisgICAgMTM4MDcsIDEzODA5LCAxMzgxMSwgMTM4MTMsIDEzODE1LCAxMzgxNywgMTM4MTksIDEzODIxLCAxMzgyMywgMTM4MjUsIAorICAgIDEzODI3LCAxMzgyOSwgMTM4MzEsIDEzODMzLCAxMzgzNSwgMTM4MzcsIDEzODM5LCAxMzg0MSwgMTM4NDMsIDEzODQ1LCAKKyAgICAxMzg0NywgMTM4NDksIDEzODUxLCAxMzg1MywgMTM4NTUsIDEzODU3LCAxMzg1OSwgMTM4NjEsIDEzODYzLCAxMzg2NSwgCisgICAgMTM4NjcsIDEzODY5LCAxMzg3MSwgMTM4NzMsIDEzODc1LCAxMzg3NywgMTM4NzksIDEzODgxLCAxMzg4MywgMTM4ODUsIAorICAgIDEzODg3LCAxMzg4OSwgMTM4OTEsIDEzODkzLCAxMzg5NSwgMTM4OTcsIDEzODk5LCAxMzkwMSwgMTM5MDMsIDEzOTA1LCAKKyAgICAxMzkwNywgMTM5MDksIDEzOTExLCAxMzkxMywgMTM5MTUsIDEzOTE3LCAxMzkxOSwgMTM5MjEsIDEzOTIzLCAxMzkyNSwgCisgICAgMTM5MjcsIDEzOTI5LCAxMzkzMSwgMTM5MzMsIDEzOTM1LCAxMzkzNywgMTM5MzksIDEzOTQxLCAxMzk0MywgMTM5NDUsIAorICAgIDEzOTQ3LCAxMzk0OSwgMTM5NTEsIDEzOTUzLCAxMzk1NSwgMTM5NTcsIDEzOTU5LCAxMzk2MSwgMTM5NjMsIDEzOTY1LCAKKyAgICAxMzk2NywgMTM5NjksIDEzOTcxLCAxMzk3MywgMTM5NzUsIDEzOTc3LCAxMzk3OSwgMTM5ODEsIDEzOTgzLCAxMzk4NSwgCisgICAgMTM5ODcsIDEzOTg5LCAxMzk5MSwgMTM5OTMsIDEzOTk1LCAxMzk5NywgMTM5OTksIDE0MDAxLCAxNDAwMywgMTQwMDUsIAorICAgIDE0MDA3LCAxNDAwOSwgMTQwMTEsIDE0MDEzLCAxNDAxNSwgMTQwMTcsIDE0MDE5LCAxNDAyMSwgMTQwMjMsIDE0MDI1LCAKKyAgICAxNDAyNywgMTQwMjksIDE0MDMxLCAxNDAzMywgMTQwMzUsIDE0MDM3LCAxNDAzOSwgMTQwNDEsIDE0MDQzLCAxNDA0NSwgCisgICAgMTQwNDcsIDE0MDQ5LCAxNDA1MSwgMTQwNTMsIDE0MDU1LCAxNDA1NywgMTQwNTksIDE0MDYxLCAxNDA2MywgMTQwNjUsIAorICAgIDE0MDY3LCAxNDA2OSwgMTQwNzEsIDE0MDczLCAxNDA3NSwgMTQwNzcsIDE0MDc5LCAxNDA4MSwgMTQwODMsIDE0MDg1LCAKKyAgICAxNDA4NywgMTQwODksIDE0MDkxLCAxNDA5MywgMTQwOTUsIDE0MDk3LCAxNDA5OSwgMTQxMDEsIDE0MTAzLCAxNDEwNSwgCisgICAgMTQxMDcsIDE0MTA5LCAxNDExMSwgMTQxMTMsIDE0MTE1LCAxNDExNywgMTQxMTksIDE0MTIxLCAxNDEyMywgMTQxMjUsIAorICAgIDE0MTI3LCAxNDEyOSwgMTQxMzEsIDE0MTMzLCAxNDEzNSwgMTQxMzcsIDE0MTM5LCAxNDE0MSwgMTQxNDMsIDE0MTQ1LCAKKyAgICAxNDE0NywgMTQxNDksIDE0MTUxLCAxNDE1MywgMTQxNTUsIDE0MTU3LCAxNDE1OSwgMTQxNjEsIDE0MTYzLCAxNDE2NSwgCisgICAgMTQxNjcsIDE0MTY5LCAxNDE3MSwgMTQxNzMsIDE0MTc1LCAxNDE3NywgMTQxNzksIDE0MTgxLCAxNDE4MywgMTQxODUsIAorICAgIDE0MTg3LCAxNDE4OSwgMTQxOTEsIDE0MTkzLCAxNDE5NSwgMTQxOTcsIDE0MTk5LCAxNDIwMSwgMTQyMDMsIDE0MjA1LCAKKyAgICAxNDIwNywgMTQyMDksIDE0MjExLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKIH07CiAKIC8qIE5GQyBwYWlycyAqLwogI2RlZmluZSBDT01QX1NISUZUIDIKIHN0YXRpYyB1bnNpZ25lZCBzaG9ydCBjb21wX2luZGV4W10gPSB7CiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMiwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMywgMCwgMCwgMCwgMCwgMCwgMCwgNCwgNSwgNiwgNywgOCwgOSwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTAsIDAsIDAsIDExLCAwLCAxMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTMsIDE0LCAKLSAgICAxNSwgMCwgMCwgMTYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3LCAxOCwgMTksIDIwLCAyMSwgMjIsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzEsIDMyLCAzMywgMCwgMCwgMzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDM1LCAzNiwgMzcsIDM4LCAzOSwgNDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQxLCA0MiwgNDMsIDQ0LCA0NSwgNDYsIDQ3LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDksIDAsIAotICAgIDUwLCAwLCA1MSwgNTIsIDUzLCAwLCAwLCAwLCAwLCAwLCAwLCA1NCwgMCwgMCwgNTUsIDU2LCA1NywgNTgsIDU5LCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA2MCwgNjEsIDAsIDAsIDYyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MywgNjQsIDY1LCAwLCAKLSAgICA2NiwgNjcsIDY4LCAwLCAwLCAwLCAwLCAwLCAwLCA2OSwgNzAsIDcxLCA3MiwgNzMsIDc0LCA3NSwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNzYsIDAsIDc3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3OCwgNzksIDAsIDgwLCA4MSwgODIsIAotICAgIDgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4NCwgODUsIDg2LCAwLCA4NywgODgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDg5LCA5MCwgMCwgOTEsIDkyLCA5MywgMCwgMCwgMCwgMCwgMCwgMCwgOTQsIDk1LCA5NiwgOTcsIDk4LCA5OSwgMTAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDEsIDAsIDAsIDEwMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTAzLCAKLSAgICAxMDQsIDAsIDAsIDEwNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAxMDcsIDEwOCwgMTA5LCAwLCAxMTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExMSwgMTEyLCAKLSAgICAwLCAxMTMsIDExNCwgMCwgMTE1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTYsIDExNywgMTE4LCAxMTksIDEyMCwgMTIxLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjIsIDAsIDAsIDEyMywgMCwgMTI0LCAwLCAwLCAwLCAwLCAwLCAwLCAxMjUsIAotICAgIDEyNiwgMTI3LCAxMjgsIDAsIDEyOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTMwLCAwLCAxMzEsIDEzMiwgMTMzLCAKLSAgICAxMzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzNSwgMTM2LCAxMzcsIDEzOCwgMTM5LCAxNDAsIDE0MSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMTQyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDMsIDE0NCwgMTQ1LCAxNDYsIDAsIAotICAgIDE0NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQ4LCAxNDksIDE1MCwgMTUxLCAxNTIsIDE1MywgMTU0LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAxNTUsIDE1NiwgMTU3LCAxNTgsIDE1OSwgMTYwLCAxNjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE2MiwgCi0gICAgMCwgMTYzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNjQsIDAsIDAsIDE2NSwgMTY2LCAxNjcsIDAsIDE2OCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMTY5LCAwLCAwLCAxNzAsIDE3MSwgMTcyLCAxNzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDE3NCwgMTc1LCAwLCAwLCAxNzYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3NywgMTc4LCAxNzksIDE4MCwgMCwgMTgxLCAKLSAgICAxODIsIDE4MywgMCwgMCwgMCwgMCwgMCwgMCwgMTg0LCAxODUsIDE4NiwgMTg3LCAxODgsIDAsIDE4OSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMTkwLCAxOTEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5MiwgMTkzLCAxOTQsIAotICAgIDE5NSwgMTk2LCAxOTcsIDE5OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTk5LCAyMDAsIDIwMSwgMCwgMjAyLCAyMDMsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIwNCwgMjA1LCAyMDYsIDIwNywgMjA4LCAyMDksIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDIxMCwgMjExLCAyMTIsIDIxMywgMjE0LCAyMTUsIDIxNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjE3LCAwLCAwLCAwLCAKLSAgICAyMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIxOSwgMjIwLCAyMjEsIDIyMiwgMCwgMjIzLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAyMjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIyNSwgMjI2LCAyMjcsIDAsIAotICAgIDIyOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjI5LCAyMzAsIDIzMSwgMCwgMjMyLCAwLCAyMzMsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDIzNCwgMjM1LCAwLCAwLCAwLCAwLCAwLCAyMzYsIDAsIDAsIDAsIDAsIDAsIDAsIDIzNywgMjM4LCAyMzksIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI0MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMjQxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDI0MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjQ0LCAyNDUsIDI0NiwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAyNDgsIDI0OSwgMjUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNTEsIDI1MiwgMjUzLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1NSwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjU2LCAyNTcsIDAsIDI1OCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMjU5LCAyNjAsIDI2MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjYyLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDI2NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjY1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAyNjYsIDI2NywgMjY4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNjksIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI3MCwgMjcxLCAyNzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDI3MywgMjc0LCAyNzUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI3NiwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjc3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNzgsIDI3OSwgCi0gICAgMCwgMjgwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyODEsIDI4MiwgMjgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAyODQsIDI4NSwgMjg2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyODcsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI4OCwgMjg5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAyOTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI5MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMjkyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyOTMsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI5NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMjk1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyOTYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDI5NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjk4LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyOTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDMwMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzAxLCAzMDIsIDMwMywgMCwgMCwgMzA0LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAzMDUsIDMwNiwgMzA3LCAwLCAzMDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMwOSwgCi0gICAgMzEwLCAzMTEsIDAsIDMxMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzEzLCAwLCAzMTQsIDAsIDMxNSwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMTcsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMzE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMjAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDMyMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzIyLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDMyNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzI1LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAzMjYsIDMyNywgMCwgMzI4LCAzMjksIDAsIDAsIDMzMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzMxLCAwLCAKLSAgICAwLCAzMzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMzMywgMzM0LCAwLCAwLCAzMzUsIDAsIDAsIDAsIDMzNiwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMzM3LCAzMzgsIDMzOSwgMCwgMzQwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzNDEsIDAsIDAsIAotICAgIDM0MiwgMzQzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzNDQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDM0NSwgMzQ2LCAzNDcsIDAsIDM0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzQ5LCAwLCAwLCAwLCAKLSAgICAzNTAsIDAsIDAsIDM1MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzUyLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzNTMsIDAsIDAsIDAsIDAsIDAsIDM1NCwgMzU1LCAzNTYsIDAsIDM1NywgMCwgCi0gICAgMCwgMzU4LCAzNTksIDAsIDAsIDAsIDAsIDAsIDM2MCwgMCwgMCwgMCwgMzYxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAzNjIsIDAsIDAsIDM2MywgMzY0LCAwLCAwLCAzNjUsIDAsIDAsIDAsIDAsIDAsIDAsIDM2NiwgMzY3LCAwLCAzNjgsIDAsIDAsIAotICAgIDAsIDM2OSwgMCwgMCwgMCwgMCwgMCwgMzcwLCAzNzEsIDAsIDAsIDM3MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMzczLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzNzQsIDM3NSwgMzc2LCAzNzcsIDM3OCwgMCwgMCwgCi0gICAgMzc5LCAwLCAwLCAwLCAwLCAwLCAwLCAzODAsIDAsIDAsIDM4MSwgMCwgMCwgMCwgMzgyLCAwLCAwLCAwLCAwLCAwLCAzODMsIAotICAgIDM4NCwgMCwgMCwgMCwgMCwgMCwgMzg1LCAwLCAwLCAwLCAwLCAwLCAwLCAzODYsIDAsIDAsIDAsIDAsIDAsIDAsIDM4NywgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzg4LCAwLCAwLCAwLCAwLCAwLCAwLCAzODksIDM5MCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzkxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAzOTIsIDM5MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzk0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAzOTUsIDM5NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzk3LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzOTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDM5OSwgNDAwLCA0MDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQwMiwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDAzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MDQsIAotICAgIDQwNSwgNDA2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDQwOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDA5LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MTAsIDQxMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNDEyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MTMsIDQxNCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDE1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MTYsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQxNywgNDE4LCA0MTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDQyMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDIxLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MjIsIDQyMywgNDI0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA0MjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQyNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MjgsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQyOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNDMwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MzEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDQzMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDMzLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDQzNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDM2LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQzOCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDM5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA0NDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0MSwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDQyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NDMsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNDQ1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NDYsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDQ4LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDQ1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDUxLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NTIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ1MywgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDU0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA0NTUsIDQ1NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDU3LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ1OSwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDYwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0LCA1LCA2LCA3LCA4LCA5LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMCwgMCwgMCwgMTEsIDAsIDEyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMywgCisgICAgMTQsIDE1LCAwLCAwLCAxNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE4LCAwLCAxOSwgMjAsIDIxLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAyMiwgMjMsIDI0LCAyNSwgMjYsIDI3LCAyOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjksIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMwLCAzMSwgMzIsIDAsIDAsIDMzLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAzNCwgMzUsIDM2LCAwLCAzNywgMzgsIDM5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MCwgNDEsIDQyLCA0MywgNDQsIAorICAgIDQ1LCA0NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDQ4LCAwLCA0OSwgMCwgNTAsIDUxLCA1MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTMsIDAsIDU0LCAwLCA1NSwgNTYsIDU3LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1OCwgNTksIDAsIDAsIDYwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MSwgNjIsIAorICAgIDYzLCAwLCA2NCwgNjUsIDY2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NywgNjgsIDY5LCA3MCwgNzEsIDcyLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA3MywgNzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc1LCA3NiwgNzcsIAorICAgIDc4LCA3OSwgODAsIDgxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MiwgODMsIDg0LCAwLCA4NSwgODYsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDg3LCA4OCwgMCwgODksIDkwLCA5MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTIsIDkzLCA5NCwgCisgICAgOTUsIDk2LCA5NywgOTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDk5LCAwLCAwLCAwLCAxMDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDEwMSwgMTAyLCAwLCAwLCAxMDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwNCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA1LCAxMDYsIDEwNywgMCwgMTA4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAxMDksIDExMCwgMTExLCAwLCAxMTIsIDAsIDExMywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE0LCAxMTUsIDExNiwgCisgICAgMTE3LCAxMTgsIDExOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTIwLCAwLCAwLCAxMjEsIDAsIDEyMiwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMTIzLCAxMjQsIDEyNSwgMCwgMCwgMTI2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjcsIAorICAgIDEyOCwgMCwgMTI5LCAxMzAsIDEzMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTMyLCAxMzMsIDEzNCwgMTM1LCAxMzYsIDEzNywgCisgICAgMTM4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDE0MCwgMTQxLCAxNDIsIDAsIDAsIDE0MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQ0LCAxNDUsIDE0NiwgMCwgMTQ3LCAKKyAgICAxNDgsIDE0OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTUwLCAxNTEsIDE1MiwgMTUzLCAxNTQsIDE1NSwgMTU2LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAxNTcsIDAsIDE1OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTU5LCAwLCAxNjAsIAorICAgIDAsIDE2MSwgMTYyLCAxNjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE2NCwgMCwgMTY1LCAwLCAxNjYsIDE2NywgMTY4LCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAxNjksIDE3MCwgMCwgMCwgMTcxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNzIsIAorICAgIDE3MywgMTc0LCAwLCAxNzUsIDE3NiwgMTc3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNzgsIDE3OSwgMTgwLCAxODEsIDE4MiwgCisgICAgMTgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxODQsIDE4NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMTg2LCAxODcsIDE4OCwgMTg5LCAxOTAsIDE5MSwgMTkyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOTMsIDE5NCwgMTk1LCAKKyAgICAwLCAxOTYsIDE5NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTk4LCAxOTksIDAsIDIwMCwgMjAxLCAyMDIsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDIwMywgMjA0LCAyMDUsIDIwNiwgMjA3LCAyMDgsIDIwOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMjEwLCAwLCAwLCAwLCAyMTEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIxMiwgMjEzLCAyMTQsIDAsIDIxNSwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMTcsIAorICAgIDIxOCwgMjE5LCAwLCAyMjAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIyMSwgMjIyLCAyMjMsIDAsIDIyNCwgMCwgCisgICAgMjI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMjYsIDAsIDAsIDAsIDAsIDAsIDAsIDIyNywgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMjI4LCAwLCAyMjksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIzMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMjMxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMzIsIDIzMywgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjM0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAyMzUsIDAsIDIzNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjM3LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMzgsIDAsIDIzOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMjQwLCAyNDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI0MiwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMjQzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNDQsIDI0NSwgCisgICAgMjQ2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNDcsIDAsIDI0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMjQ5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNTAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1MSwgMjUyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAyNTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1NCwgMCwgMjU1LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAyNTYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1NywgMCwgCisgICAgMjU4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNTksIDI2MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMjYxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNjIsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI2MywgMjY0LCAyNjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDI2NiwgMCwgMjY3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNjgsIDAsIDI2OSwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjcwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNzEsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI3MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMjczLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNzQsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI3NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjc2LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDI3OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjc5LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyODAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI4MSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjgyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAyODMsIDAsIDI4NCwgMCwgMjg1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyODYsIDAsIDI4NywgMCwgCisgICAgMjg4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyODksIDAsIDI5MCwgMCwgMjkxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAyOTIsIDAsIDI5MywgMCwgMjk0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyOTUsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI5NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMjk3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyOTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDI5OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDMwMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzAzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAzMDQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMwNSwgMzA2LCAwLCAzMDcsIAorICAgIDAsIDAsIDAsIDMwOCwgMCwgMCwgMCwgMCwgMCwgMCwgMzA5LCAwLCAwLCAzMTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDMxMSwgMCwgMCwgMzEyLCAwLCAwLCAwLCAzMTMsIDAsIDAsIDAsIDAsIDAsIDAsIDMxNCwgMzE1LCAwLCAzMTYsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMxNywgMCwgMCwgMzE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAzMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMyMCwgMzIxLCAwLCAzMjIsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMyMywgMCwgMCwgMzI0LCAwLCAwLCAwLCAzMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDMyNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzI3LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAzMjgsIDMyOSwgMCwgMzMwLCAwLCAwLCAwLCAzMzEsIDAsIDAsIDAsIDAsIDAsIDAsIDMzMiwgMCwgMCwgCisgICAgMzMzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMzQsIDAsIDAsIDMzNSwgMCwgMCwgMCwgMzM2LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAzMzcsIDMzOCwgMCwgMzM5LCAwLCAwLCAwLCAzNDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM0MSwgMCwgMCwgCisgICAgMzQyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzNDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDM0NCwgMzQ1LCAwLCAzNDYsIDAsIDAsIDAsIDM0NywgMCwgMCwgMCwgMCwgMCwgMCwgMzQ4LCAwLCAwLCAzNDksIAorICAgIDAsIDAsIDAsIDM1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMzUxLCAwLCAwLCAwLCAwLCAwLCAwLCAzNTIsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDM1MywgMCwgMCwgMCwgMCwgMCwgMCwgMzU0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAzNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDM1NiwgMzU3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAzNTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM1OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMzYwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzNjEsIDM2MiwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzYzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAzNjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM2NSwgMzY2LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAzNjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM2OCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzY5LCAzNzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDM3MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzcyLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzNzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM3NCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzc1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAzNzYsIDM3NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzc4LCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzNzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM4MCwgCisgICAgMzgxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzODIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDM4MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzg0LCAzODUsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM4NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMzg3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzODgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDM4OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzkwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzOTEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDM5MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzkzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAzOTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM5NSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzk2LCAzOTcsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM5OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzk5LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDQwMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDAyLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDQwNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA0MDYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQwNywgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDA4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA0MDksIDQxMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDExLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MTIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQxMywgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDE0LCA0MTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDQxNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDE3LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDQxOSwgNDIwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQyMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDIzLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDQyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDI2LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQyOCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDI5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA0MzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQzMSwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDMyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MzMsIDAsIAorICAgIDAsIDQzNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDM1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA0MzYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQzNywgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDM4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA0MzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0MCwgNDQxLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA0NDIsIDQ0MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDQ0LCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDQ0NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NDgsIDAsIDAsIDAsIDAsIDAsIDAsIDQ0OSwgMCwgMCwgMCwgMCwgMCwgMCwgNDUwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA0NTEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ1MiwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDUzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA0NTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgNDU2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NTcsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDQ1OCwgMCwgMCwgMCwgMCwgMCwgMCwgNDU5LCAwLCAwLCAwLCAwLCAwLCAwLCA0NjAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDQ2MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDYyLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ2NCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDY1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA0NjYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ2NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgNDY4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NjksIDAsIAotICAgIDQ3MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA0NzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3MywgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDc0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA0NzUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3NiwgNDc3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA0NzgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3OSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA0ODEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNDgzLCAwLCAwLCAwLCAwLCAwLCAwLCA0ODQsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4NSwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNDg2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0ODcsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDg5LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDQ5MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDkyLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA0OTMsIDAsIDAsIDAsIDAsIDAsIDAsIDQ5NCwgMCwgMCwgMCwgMCwgMCwgMCwgNDk1LCAwLCAwLCAwLCAwLCAwLCAwLCA0OTYsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ5NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNDk4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OTksIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAxLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MDIsIDAsIDAsIDAsIDAsIDAsIDAsIDUwMywgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MDUsIAotICAgIDUwNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA1MDgsIDAsIDAsIDAsIDAsIDAsIDAsIDUwOSwgMCwgMCwgMCwgMCwgMCwgMCwgNTEwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA1MTEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUxMiwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTEzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MTQsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUxNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNTE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MTcsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDUxOCwgMCwgMCwgMCwgMCwgMCwgMCwgNTE5LCAwLCAwLCAwLCAwLCAwLCAwLCA1MjAsIDAsIDAsIDAsIDAsIDAsIDAsIDUyMSwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTIyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA1MjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUyNCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MjYsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUyNywgMCwgMCwgMCwgMCwgMCwgMCwgNTI4LCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA1MjksIDAsIDAsIDAsIDAsIDAsIDAsIDUzMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTMxLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA1MzIsIDUzMywgMCwgMCwgMCwgMCwgMCwgNTM0LCAwLCAwLCAwLCAwLCAwLCAwLCA1MzUsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDUzNiwgMCwgMCwgMCwgMCwgMCwgMCwgNTM3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MzgsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUzOSwgNTQwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA1NDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU0MiwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgNTQzLCAwLCAwLCAwLCAwLCAwLCAwLCA1NDQsIDAsIDAsIDAsIDAsIDAsIDAsIDU0NSwgMCwgMCwgMCwgMCwgMCwgNTQ2LCAKLSAgICA1NDcsIDAsIDAsIDAsIDAsIDAsIDU0OCwgMCwgMCwgMCwgMCwgMCwgMCwgNTQ5LCAwLCAwLCAwLCAwLCAwLCAwLCA1NTAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDU1MSwgMCwgMCwgMCwgMCwgMCwgMCwgNTUyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA1NTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1NCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NTYsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNTU4LCAwLCAwLCAwLCAwLCAwLCA1NTksIDAsIDAsIDAsIDAsIDAsIDAsIDU2MCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNTYxLCAwLCAwLCAwLCAwLCAwLCAwLCA1NjIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU2MywgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTY0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA1NjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU2NiwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTY3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NjgsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU2OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgNTcwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NzEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDU3MiwgMCwgMCwgMCwgMCwgMCwgNTczLCAwLCAwLCAwLCAwLCAwLCAwLCA1NzQsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU3NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgNTc2LCAwLCAwLCAwLCAwLCAwLCA1NzcsIDU3OCwgMCwgMCwgMCwgMCwgMCwgNTc5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCA1ODAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU4MSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDYzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NjQsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ2NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgNDY2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NjcsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDQ2OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDY5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA0NzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3MSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcyLCAwLCAwLCAwLCAwLCAwLCAwLCA0NzMsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDQ3NCwgMCwgMCwgMCwgMCwgMCwgMCwgNDc1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA0NzYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNDc4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NzksIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNDgxLCAwLCAwLCAwLCAwLCAwLCAwLCA0ODIsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4MywgMCwgMCwgMCwgMCwgMCwgMCwgNDg0LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA0ODUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4NiwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDg3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA0ODgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ4OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgNDkwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OTEsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDQ5MiwgMCwgMCwgMCwgMCwgMCwgMCwgNDkzLCAwLCAwLCAwLCAwLCAwLCAwLCA0OTQsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDQ5NSwgMCwgMCwgMCwgMCwgMCwgMCwgNDk2LCAwLCAwLCAwLCAwLCAwLCAwLCA0OTcsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDQ5OCwgMCwgMCwgMCwgMCwgMCwgMCwgNDk5LCAwLCAwLCAwLCAwLCAwLCAwLCA1MDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAyLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDUwNCwgMCwgMCwgMCwgMCwgMCwgMCwgNTA1LCAwLCAwLCAwLCAwLCAwLCAwLCA1MDYsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDUwNywgMCwgMCwgMCwgMCwgMCwgMCwgNTA4LCAwLCAwLCAwLCAwLCAwLCAwLCA1MDksIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDUxMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTExLCAwLCAwLCAwLCAwLCAwLCAwLCA1MTIsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDUxMywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTE0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA1MTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUxNiwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA1MTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUxOSwgMCwgMCwgMCwgMCwgMCwgMCwgNTIwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA1MjEsIDAsIDAsIDAsIDAsIDAsIDAsIDUyMiwgMCwgMCwgMCwgMCwgMCwgMCwgNTIzLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDUyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTI2LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUyOCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTI5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA1MzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUzMSwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTMyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MzMsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDUzNCwgMCwgMCwgMCwgMCwgMCwgMCwgNTM1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCA1MzYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUzNywgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgNTM4LCAwLCAwLCAwLCAwLCAwLCAwLCA1MzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU0MCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTQxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCA1NDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU0MywgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTQ0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NDUsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU0NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgNTQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NDgsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU0OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NTEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDU1MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUzLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1NSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTU2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCA1NTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1OCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTU5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NjAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU2MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgNTYyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NjMsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU2NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTY1LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NjYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDU2NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTY4LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NjksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU3MCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTcxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCA1NzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU3MywgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTc0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NzUsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU3NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgNTc3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NzgsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU3OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTgwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1ODEsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU4MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgNTgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1ODQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDU4NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTg2LCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1ODcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDU4NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTg2LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1ODcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDU4OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTg5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA1OTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU5MSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTkyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA1OTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU5NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNTk1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1OTYsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU5NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTk4LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1OTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDYwMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjAxLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYwMywgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA2MDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYwNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgNjA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MDgsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYwOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNjEwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MTEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDYxMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjEzLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDYxNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA2MTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYxOCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA2MjAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYyMSwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjIyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA1OTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU5MSwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTkyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA1OTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU5NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNTk1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1OTYsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU5NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNTk4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1OTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDYwMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjAxLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDYwMywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA2MDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYwNiwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA2MDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYwOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNjEwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MTEsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYxMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNjEzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDYxNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjE2LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDYxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA2MjAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYyMSwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjIyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICA2MjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYyNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgNjI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MjYsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICA2MjgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYyOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNjMwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MzEsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYzMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNjMzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDYzNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjM2LCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDYzOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjM5LCA2NDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDY0MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjQyLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDY0NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjQ1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA2NDYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDY0NywgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA2NDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDY1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNjUxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NTIsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDY1MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNjU0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDY1NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjU3LCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDY1OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjYwLCA2NjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDY2MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjYzLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDY2NSwgNjY2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDY2OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjY5LCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDY3MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjcyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA2NzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDY3NCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNjMwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MzEsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYzMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNjMzLCAKIH07CiAKIHN0YXRpYyB1bnNpZ25lZCBpbnQgY29tcF9kYXRhW10gPSB7Ci0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODgxNCwgMCwgMCwgODgwMCwgMCwgMCwgODgxNSwgMCwgMCwgMCwgMTkyLCAxOTMsIAotICAgIDE5NCwgMTk1LCAyNTYsIDI1OCwgNTUwLCAxOTYsIDc4NDIsIDE5NywgMCwgNDYxLCA1MTIsIDUxNCwgMCwgMCwgMCwgNzg0MCwgCi0gICAgMCwgNzY4MCwgMCwgMCwgMjYwLCAwLCAwLCA3NjgyLCAwLCAwLCA3Njg0LCAwLCAwLCAwLCAwLCA3Njg2LCAwLCAyNjIsIAotICAgIDI2NCwgMCwgMCwgMCwgMjY2LCAwLCAwLCAwLCAwLCAyNjgsIDAsIDE5OSwgMCwgMCwgMCwgNzY5MCwgMCwgMCwgMCwgMCwgCi0gICAgMjcwLCAwLCAwLCAwLCAwLCAwLCA3NjkyLCAwLCAwLCAwLCA3Njk2LCAwLCA3Njk4LCAwLCAwLCA3Njk0LCAwLCAwLCAwLCAwLCAKLSAgICAyMDAsIDIwMSwgMjAyLCA3ODY4LCAyNzQsIDI3NiwgMjc4LCAyMDMsIDc4NjYsIDAsIDAsIDI4MiwgNTE2LCA1MTgsIDAsIDAsIAotICAgIDAsIDc4NjQsIDAsIDAsIDAsIDU1MiwgMjgwLCA3NzA0LCAwLCA3NzA2LCAwLCAwLCAwLCA3NzEwLCAwLCA1MDAsIDI4NCwgMCwgCi0gICAgNzcxMiwgMjg2LCAyODgsIDAsIDAsIDAsIDAsIDQ4NiwgMCwgMjkwLCAwLCAwLCAwLCAyOTIsIDAsIDAsIDAsIDc3MTQsIAotICAgIDc3MTgsIDAsIDAsIDAsIDU0MiwgMCwgMCwgMCwgMCwgMCwgNzcxNiwgMCwgMCwgMCwgNzcyMCwgMCwgMCwgNzcyMiwgMCwgMCwgCi0gICAgMjA0LCAyMDUsIDIwNiwgMjk2LCAyOTgsIDMwMCwgMzA0LCAyMDcsIDc4ODAsIDAsIDAsIDQ2MywgNTIwLCA1MjIsIDAsIDAsIAotICAgIDAsIDc4ODIsIDAsIDAsIDAsIDAsIDMwMiwgMCwgMCwgNzcyNCwgMCwgMCwgMCwgMzA4LCAwLCA3NzI4LCAwLCAwLCAwLCAwLCAKLSAgICAwLCA0ODgsIDAsIDc3MzAsIDAsIDAsIDAsIDMxMCwgMCwgMCwgMCwgMCwgNzczMiwgMCwgMCwgMCwgMCwgMCwgMzEzLCAwLCAKLSAgICAzMTcsIDAsIDAsIDAsIDAsIDAsIDc3MzQsIDAsIDAsIDAsIDMxNSwgMCwgNzc0MCwgMCwgMCwgNzczOCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgNzc0MiwgMCwgMCwgMCwgMCwgNzc0NCwgMCwgMCwgNzc0NiwgMCwgNTA0LCAzMjMsIDAsIDIwOSwgMCwgMCwgNzc0OCwgCi0gICAgMCwgMCwgMCwgMCwgMzI3LCAwLCA3NzUwLCAwLCAwLCAwLCAzMjUsIDAsIDc3NTQsIDAsIDAsIDc3NTIsIDAsIDAsIDAsIDAsIAotICAgIDIxMCwgMjExLCAyMTIsIDIxMywgMzMyLCAzMzQsIDU1OCwgMjE0LCA3ODg2LCAwLCAzMzYsIDQ2NSwgNTI0LCA1MjYsIDAsIAotICAgIDAsIDQxNiwgNzg4NCwgMCwgMCwgMCwgMCwgNDkwLCAwLCAwLCAwLCAwLCAwLCA3NzY0LCA3NzY2LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAzNDAsIDAsIDAsIDAsIDAsIDc3NjgsIDM0NCwgNTI4LCA1MzAsIDAsIDAsIDAsIDc3NzAsIDAsIDAsIDAsIDM0MiwgMCwgMCwgCi0gICAgMCwgMCwgNzc3NCwgMCwgMzQ2LCAzNDgsIDAsIDAsIDAsIDc3NzYsIDAsIDAsIDAsIDAsIDM1MiwgMCwgNzc3OCwgMCwgMCwgCi0gICAgNTM2LCAzNTAsIDAsIDAsIDAsIDc3ODYsIDAsIDAsIDAsIDAsIDM1NiwgMCwgNzc4OCwgMCwgMCwgNTM4LCAzNTQsIDAsIAotICAgIDc3OTIsIDAsIDAsIDc3OTAsIDAsIDAsIDAsIDAsIDIxNywgMjE4LCAyMTksIDM2MCwgMzYyLCAzNjQsIDAsIDIyMCwgNzkxMCwgCi0gICAgMzY2LCAzNjgsIDQ2NywgNTMyLCA1MzQsIDAsIDAsIDQzMSwgNzkwOCwgNzc5NCwgMCwgMCwgMCwgMzcwLCA3Nzk4LCAwLCAKLSAgICA3Nzk2LCA3ODA0LCAwLCAwLCAwLCAwLCAwLCA3ODA2LCAwLCA3ODA4LCA3ODEwLCAzNzIsIDAsIDAsIDAsIDc4MTQsIDc4MTIsIAotICAgIDAsIDc4MTYsIDAsIDAsIDAsIDc4MTgsIDc4MjAsIDAsIDAsIDAsIDc5MjIsIDIyMSwgMzc0LCA3OTI4LCA1NjIsIDAsIAotICAgIDc4MjIsIDM3NiwgNzkyNiwgMCwgMCwgMCwgMCwgNzkyNCwgMCwgMCwgMzc3LCA3ODI0LCAwLCAwLCAwLCAzNzksIDM4MSwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNzgyNiwgMCwgMCwgMCwgMCwgNzgyOCwgMjI0LCAyMjUsIDIyNiwgMjI3LCAyNTcsIDI1OSwgNTUxLCAKLSAgICAyMjgsIDc4NDMsIDIyOSwgMCwgNDYyLCA1MTMsIDUxNSwgMCwgMCwgMCwgNzg0MSwgMCwgNzY4MSwgMCwgMCwgMjYxLCAwLCAKLSAgICAwLCA3NjgzLCAwLCAwLCA3Njg1LCAwLCAwLCAwLCAwLCA3Njg3LCAwLCAwLCAwLCAwLCAwLCAyNjMsIDI2NSwgMCwgMCwgMCwgCi0gICAgMjY3LCAwLCAwLCAwLCAwLCAyNjksIDAsIDAsIDAsIDAsIDAsIDIzMSwgMCwgMCwgMCwgNzY5MSwgMjcxLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA3NjkzLCAwLCAwLCAwLCA3Njk3LCAwLCA3Njk5LCAwLCAwLCA3Njk1LCAyMzIsIDIzMywgMjM0LCA3ODY5LCAyNzUsIAotICAgIDI3NywgMjc5LCAyMzUsIDc4NjcsIDAsIDAsIDI4MywgNTE3LCA1MTksIDAsIDAsIDAsIDc4NjUsIDAsIDAsIDAsIDU1MywgCi0gICAgMjgxLCA3NzA1LCAwLCA3NzA3LCAwLCAwLCAwLCA3NzExLCAwLCAwLCAwLCAwLCAwLCA1MDEsIDI4NSwgMCwgNzcxMywgMjg3LCAKLSAgICAyODksIDAsIDAsIDAsIDAsIDQ4NywgMCwgMCwgMCwgMCwgMCwgMjkxLCAwLCAwLCAwLCAyOTMsIDAsIDAsIDAsIDc3MTUsIAotICAgIDc3MTksIDAsIDAsIDAsIDU0MywgMCwgMCwgMCwgMCwgMCwgNzcxNywgMCwgMCwgMCwgNzcyMSwgMCwgMCwgNzcyMywgMCwgCi0gICAgNzgzMCwgMjM2LCAyMzcsIDIzOCwgMjk3LCAyOTksIDMwMSwgMCwgMjM5LCA3ODgxLCAwLCAwLCA0NjQsIDUyMSwgNTIzLCAwLCAKLSAgICAwLCAwLCA3ODgzLCAwLCAwLCAwLCAwLCAzMDMsIDAsIDAsIDc3MjUsIDAsIDAsIDAsIDMwOSwgMCwgMCwgMCwgMCwgNDk2LCAKLSAgICAwLCAwLCAwLCAwLCA3NzI5LCAwLCA0ODksIDAsIDAsIDAsIDAsIDAsIDc3MzEsIDAsIDAsIDAsIDMxMSwgNzczMywgMCwgMCwgCi0gICAgMCwgMCwgMCwgMzE0LCAwLCAzMTgsIDAsIDAsIDAsIDAsIDAsIDc3MzUsIDAsIDAsIDAsIDMxNiwgMCwgNzc0MSwgMCwgMCwgCi0gICAgNzczOSwgMCwgNzc0MywgMCwgMCwgMCwgMCwgNzc0NSwgMCwgMCwgNzc0NywgMCwgMCwgMCwgMCwgMCwgNTA1LCAzMjQsIDAsIAotICAgIDI0MSwgMCwgMCwgNzc0OSwgMCwgMCwgMCwgMCwgMzI4LCAwLCA3NzUxLCAwLCAwLCAwLCAzMjYsIDAsIDc3NTUsIDAsIDAsIAotICAgIDc3NTMsIDAsIDAsIDAsIDAsIDI0MiwgMjQzLCAyNDQsIDI0NSwgMzMzLCAzMzUsIDU1OSwgMjQ2LCA3ODg3LCAwLCAzMzcsIAotICAgIDQ2NiwgNTI1LCA1MjcsIDAsIDAsIDQxNywgNzg4NSwgNDkxLCAwLCAwLCAwLCAwLCAwLCA3NzY1LCAwLCAwLCAwLCAwLCAKLSAgICA3NzY3LCAwLCAzNDEsIDAsIDAsIDAsIDAsIDc3NjksIDAsIDAsIDAsIDAsIDM0NSwgNTI5LCA1MzEsIDAsIDAsIDAsIDc3NzEsIAotICAgIDAsIDAsIDAsIDM0MywgMCwgMCwgMCwgMCwgNzc3NSwgMCwgMzQ3LCAzNDksIDAsIDAsIDAsIDc3NzcsIDAsIDAsIDAsIDAsIAotICAgIDM1MywgMCwgNzc3OSwgMCwgMCwgNTM3LCAzNTEsIDAsIDAsIDAsIDc3ODcsIDc4MzEsIDAsIDAsIDAsIDM1NywgMCwgMCwgMCwgCi0gICAgMCwgMCwgNzc4OSwgMCwgMCwgNTM5LCAzNTUsIDAsIDc3OTMsIDAsIDAsIDc3OTEsIDAsIDAsIDAsIDAsIDI0OSwgMjUwLCAKLSAgICAyNTEsIDM2MSwgMzYzLCAzNjUsIDAsIDI1MiwgNzkxMSwgMzY3LCAzNjksIDQ2OCwgNTMzLCA1MzUsIDAsIDAsIDQzMiwgCi0gICAgNzkwOSwgNzc5NSwgMCwgMCwgMCwgMzcxLCA3Nzk5LCAwLCA3Nzk3LCAwLCAwLCAwLCAwLCA3ODA1LCAwLCA3ODA3LCAwLCAwLCAKLSAgICAwLCAwLCAwLCA3ODA5LCA3ODExLCAzNzMsIDAsIDAsIDAsIDc4MTUsIDc4MTMsIDAsIDc4MzIsIDAsIDAsIDAsIDc4MTcsIDAsIAotICAgIDAsIDAsIDc4MTksIDc4MjEsIDAsIDAsIDAsIDc5MjMsIDI1MywgMzc1LCA3OTI5LCA1NjMsIDAsIDc4MjMsIDI1NSwgNzkyNywgCi0gICAgNzgzMywgMCwgMCwgMCwgNzkyNSwgMCwgMCwgMzc4LCA3ODI1LCAwLCAwLCAwLCAzODAsIDAsIDAsIDAsIDAsIDM4MiwgMCwgCi0gICAgNzgyNywgMCwgMCwgMCwgMCwgNzgyOSwgMCwgMCwgMCwgMCwgODE3MywgOTAxLCAwLCAwLCAwLCAwLCAwLCAwLCA4MTI5LCAwLCAKLSAgICAwLCA3ODQ2LCA3ODQ0LCAwLCA3ODUwLCAwLCAwLCAwLCAwLCA3ODQ4LCAwLCAwLCA0NzgsIDAsIDAsIDAsIDUwNiwgMCwgMCwgCi0gICAgNTA4LCAwLCAwLCA0ODIsIDAsIDAsIDAsIDc2ODgsIDAsIDc4NzIsIDc4NzAsIDAsIDc4NzYsIDAsIDAsIDAsIDAsIDc4NzQsIAotICAgIDAsIDAsIDAsIDc3MjYsIDAsIDAsIDAsIDAsIDAsIDc4OTAsIDc4ODgsIDAsIDc4OTQsIDAsIDAsIDAsIDAsIDc4OTIsIDAsIAotICAgIDAsIDAsIDc3NTYsIDAsIDAsIDU1NiwgMCwgMCwgNzc1OCwgMCwgMCwgMCwgNTU0LCAwLCAwLCAwLCA1MTAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDQ3NSwgNDcxLCAwLCAwLCA0NjksIDAsIDAsIDQ3MywgMCwgMCwgMCwgNzg0NywgNzg0NSwgMCwgNzg1MSwgMCwgMCwgCi0gICAgMCwgMCwgNzg0OSwgMCwgMCwgNDc5LCAwLCAwLCAwLCA1MDcsIDAsIDAsIDUwOSwgMCwgMCwgNDgzLCAwLCAwLCAwLCA3Njg5LCAKLSAgICAwLCA3ODczLCA3ODcxLCAwLCA3ODc3LCAwLCAwLCAwLCAwLCA3ODc1LCAwLCAwLCAwLCA3NzI3LCAwLCAwLCAwLCAwLCAwLCAKLSAgICA3ODkxLCA3ODg5LCAwLCA3ODk1LCAwLCAwLCAwLCAwLCA3ODkzLCAwLCAwLCAwLCA3NzU3LCAwLCAwLCA1NTcsIDAsIDAsIAotICAgIDc3NTksIDAsIDAsIDAsIDU1NSwgMCwgMCwgMCwgNTExLCAwLCAwLCAwLCAwLCAwLCA0NzYsIDQ3MiwgMCwgMCwgNDcwLCAwLCAKLSAgICAwLCA0NzQsIDAsIDAsIDAsIDc4NTYsIDc4NTQsIDAsIDc4NjAsIDAsIDAsIDAsIDAsIDc4NTgsIDAsIDAsIDc4NTcsIDc4NTUsIAotICAgIDAsIDc4NjEsIDAsIDAsIDAsIDAsIDc4NTksIDAsIDAsIDc3MDAsIDc3MDIsIDAsIDAsIDAsIDAsIDAsIDc3MDEsIDc3MDMsIAotICAgIDAsIDAsIDAsIDAsIDAsIDc3NjAsIDc3NjIsIDAsIDc3NjEsIDc3NjMsIDAsIDAsIDAsIDc3ODAsIDAsIDAsIDc3ODEsIDAsIAotICAgIDAsIDc3ODIsIDAsIDAsIDAsIDAsIDAsIDAsIDc3ODMsIDAsIDc4MDAsIDAsIDAsIDc4MDEsIDAsIDAsIDAsIDAsIDc4MDIsIAotICAgIDAsIDAsIDc4MDMsIDAsIDAsIDAsIDAsIDAsIDc4MzUsIDAsIDAsIDAsIDAsIDc5MDAsIDc4OTgsIDAsIDc5MDQsIDAsIDAsIAotICAgIDAsIDAsIDc5MDIsIDc5MDYsIDAsIDAsIDAsIDAsIDAsIDc5MDEsIDc4OTksIDAsIDc5MDUsIDAsIDAsIDAsIDAsIDc5MDMsIAotICAgIDAsIDAsIDAsIDAsIDc5MDcsIDAsIDc5MTQsIDc5MTIsIDAsIDc5MTgsIDAsIDAsIDAsIDAsIDc5MTYsIDAsIDAsIDAsIDAsIAotICAgIDc5MjAsIDAsIDc5MTUsIDc5MTMsIDAsIDc5MTksIDc5MTcsIDAsIDAsIDAsIDAsIDc5MjEsIDAsIDAsIDAsIDAsIDQ5NCwgMCwgCi0gICAgMCwgMCwgNDkyLCAwLCAwLCA0OTMsIDAsIDAsIDQ4MCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgxLCAwLCAwLCAwLCA3NzA4LCAwLCAKLSAgICAwLCA3NzA5LCAwLCA1NjAsIDAsIDAsIDAsIDAsIDAsIDAsIDU2MSwgMCwgNDk1LCAwLCAwLCAwLCA4MTIyLCA5MDIsIDAsIDAsIAotICAgIDgxMjEsIDgxMjAsIDAsIDAsIDAsIDAsIDc5NDQsIDc5NDUsIDAsIDAsIDAsIDAsIDAsIDgxMjQsIDAsIDgxMzYsIDkwNCwgMCwgCi0gICAgMCwgMCwgMCwgNzk2MCwgNzk2MSwgMCwgMCwgMCwgODEzOCwgOTA1LCAwLCAwLCAwLCAwLCA3OTc2LCA3OTc3LCAwLCA4MTQwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA4MTU0LCA5MDYsIDAsIDAsIDgxNTMsIDgxNTIsIDAsIDkzOCwgMCwgMCwgNzk5MiwgNzk5MywgMCwgCi0gICAgMCwgMCwgODE4NCwgOTA4LCAwLCAwLCAwLCAwLCA4MDA4LCA4MDA5LCAwLCAwLCAwLCAwLCAwLCAwLCA4MTcyLCAwLCAwLCAwLCAKLSAgICA4MTcwLCA5MTAsIDAsIDAsIDgxNjksIDgxNjgsIDAsIDkzOSwgMCwgMCwgMCwgODAyNSwgMCwgMCwgMCwgODE4NiwgOTExLCAKLSAgICA4MDQwLCA4MDQxLCAwLCAwLCAwLCAwLCAwLCA4MTg4LCAwLCAwLCA4MTE2LCAwLCAwLCA4MTMyLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA4MDQ4LCA5NDAsIDAsIDAsIDgxMTMsIDgxMTIsIDAsIDAsIDAsIDAsIDc5MzYsIDc5MzcsIDAsIDAsIDAsIDAsIDgxMTgsIAotICAgIDgxMTUsIDAsIDAsIDAsIDAsIDAsIDgwNTAsIDk0MSwgNzk1MiwgNzk1MywgMCwgMCwgMCwgODA1MiwgOTQyLCAwLCAwLCAwLCAKLSAgICAwLCA3OTY4LCA3OTY5LCAwLCAwLCAwLCAwLCA4MTM0LCA4MTMxLCAwLCA4MDU0LCA5NDMsIDAsIDAsIDgxNDUsIDgxNDQsIDAsIAotICAgIDk3MCwgMCwgMCwgNzk4NCwgNzk4NSwgODE1MCwgMCwgMCwgMCwgMCwgMCwgMCwgODA1NiwgOTcyLCAwLCAwLCAwLCAwLCAKLSAgICA4MDAwLCA4MDAxLCAwLCA4MTY0LCA4MTY1LCAwLCAwLCAwLCA4MDU4LCA5NzMsIDAsIDAsIDgxNjEsIDgxNjAsIDAsIDk3MSwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgODAxNiwgODAxNywgMCwgMCwgMCwgMCwgODE2NiwgMCwgMCwgODA2MCwgOTc0LCAwLCAwLCAwLCAKLSAgICAwLCA4MDMyLCA4MDMzLCA4MTgyLCA4MTc5LCAwLCAwLCAwLCAwLCAwLCA4MTQ2LCA5MTIsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDgxNTEsIDAsIDAsIDgxNjIsIDk0NCwgMCwgMCwgODE2NywgMCwgMCwgMCwgODE4MCwgMCwgMCwgOTc5LCAwLCAwLCAwLCAwLCAKLSAgICAwLCA5ODAsIDAsIDAsIDEwMzEsIDAsIDAsIDAsIDAsIDEyMzIsIDAsIDEyMzQsIDAsIDAsIDAsIDAsIDEwMjcsIDAsIDEwMjQsIAotICAgIDAsIDAsIDAsIDAsIDEyMzgsIDAsIDEwMjUsIDEyMTcsIDAsIDEyNDQsIDAsIDAsIDEyNDYsIDAsIDAsIDAsIDEwMzcsIDAsIAotICAgIDAsIDAsIDEyNTAsIDEwNDksIDAsIDEyNTIsIDAsIDAsIDAsIDAsIDEwMzYsIDAsIDAsIDAsIDAsIDEyNTQsIDAsIDAsIDAsIAotICAgIDEyNjIsIDEwMzgsIDAsIDEyNjQsIDAsIDAsIDEyNjYsIDAsIDAsIDAsIDEyNjgsIDAsIDAsIDAsIDAsIDAsIDAsIDEyNzIsIAotICAgIDAsIDAsIDEyNjAsIDAsIDAsIDAsIDAsIDEyMzMsIDAsIDEyMzUsIDAsIDAsIDAsIDAsIDExMDcsIDAsIDExMDQsIDAsIDAsIAotICAgIDAsIDAsIDEyMzksIDAsIDExMDUsIDEyMTgsIDAsIDEyNDUsIDAsIDAsIDEyNDcsIDAsIDAsIDAsIDExMTcsIDAsIDAsIDAsIAotICAgIDEyNTEsIDEwODEsIDAsIDEyNTMsIDAsIDAsIDAsIDAsIDExMTYsIDAsIDAsIDAsIDAsIDEyNTUsIDAsIDAsIDAsIDEyNjMsIAotICAgIDExMTgsIDAsIDEyNjUsIDAsIDAsIDEyNjcsIDAsIDAsIDAsIDEyNjksIDAsIDAsIDAsIDAsIDAsIDAsIDEyNzMsIDAsIDAsIAotICAgIDEyNjEsIDAsIDAsIDExMTEsIDAsIDAsIDAsIDExNDIsIDAsIDAsIDExNDMsIDAsIDAsIDAsIDAsIDAsIDEyNDIsIDAsIDAsIAotICAgIDEyNDMsIDAsIDAsIDEyNTgsIDAsIDAsIDAsIDAsIDAsIDAsIDEyNTksIDAsIDE1NzAsIDE1NzEsIDE1NzMsIDAsIDE1NzIsIAotICAgIDAsIDAsIDE1NzQsIDAsIDAsIDAsIDAsIDAsIDAsIDE3MzAsIDAsIDAsIDE3NDcsIDAsIDAsIDE3MjgsIDAsIDAsIDAsIDAsIAotICAgIDIzNDUsIDAsIDAsIDIzNTMsIDAsIDAsIDIzNTYsIDAsIDAsIDAsIDI1MDcsIDI1MDgsIDAsIDAsIDAsIDI4OTEsIDI4ODgsIAotICAgIDI4OTIsIDI5NjQsIDAsIDAsIDAsIDAsIDAsIDMwMTgsIDMwMjAsIDAsIDMwMTksIDAsIDAsIDAsIDAsIDMxNDQsIDAsIDAsIAotICAgIDAsIDAsIDMyNjQsIDAsIDMyNzQsIDMyNzEsIDMyNzIsIDAsIDMyNzUsIDAsIDAsIDAsIDAsIDM0MDIsIDM0MDQsIDAsIAotICAgIDM0MDMsIDAsIDAsIDAsIDAsIDM1NDYsIDM1NDgsIDM1NTAsIDAsIDAsIDAsIDAsIDM1NDksIDAsIDAsIDAsIDAsIDAsIAotICAgIDQxMzQsIDAsIDAsIDAsIDY5MTgsIDAsIDAsIDY5MjAsIDAsIDAsIDY5MjIsIDAsIDAsIDY5MjQsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDY5MjYsIDAsIDAsIDY5MzAsIDAsIDAsIDY5NzEsIDAsIDAsIDY5NzMsIDAsIDAsIDAsIDAsIDAsIDAsIDY5NzYsIDAsIAotICAgIDAsIDY5NzcsIDAsIDAsIDY5NzksIDAsIDAsIDAsIDc3MzYsIDAsIDAsIDc3MzcsIDAsIDAsIDAsIDAsIDAsIDAsIDc3NzIsIAotICAgIDAsIDAsIDc3NzMsIDAsIDAsIDAsIDAsIDc3ODQsIDAsIDAsIDc3ODUsIDAsIDAsIDc4NTIsIDAsIDAsIDc4NjIsIDAsIDAsIAotICAgIDAsIDc4NTMsIDAsIDAsIDc4NjMsIDAsIDAsIDAsIDc4NzgsIDAsIDAsIDc4NzksIDAsIDAsIDc4OTYsIDAsIDAsIDc4OTcsIAotICAgIDAsIDAsIDAsIDAsIDc5MzgsIDc5NDAsIDAsIDAsIDc5NDIsIDgwNjQsIDAsIDc5MzksIDc5NDEsIDAsIDAsIDc5NDMsIAotICAgIDgwNjUsIDAsIDAsIDgwNjYsIDAsIDAsIDAsIDAsIDAsIDAsIDgwNjcsIDAsIDAsIDgwNjgsIDAsIDAsIDgwNjksIDAsIDAsIAotICAgIDgwNzAsIDAsIDAsIDAsIDAsIDAsIDAsIDgwNzEsIDAsIDc5NDYsIDc5NDgsIDAsIDAsIDc5NTAsIDgwNzIsIDAsIDc5NDcsIAotICAgIDc5NDksIDAsIDAsIDc5NTEsIDgwNzMsIDAsIDAsIDgwNzQsIDAsIDAsIDAsIDAsIDAsIDAsIDgwNzUsIDAsIDAsIDgwNzYsIAotICAgIDAsIDAsIDgwNzcsIDAsIDAsIDgwNzgsIDAsIDAsIDAsIDAsIDAsIDAsIDgwNzksIDAsIDc5NTQsIDc5NTYsIDAsIDc5NTUsIAotICAgIDc5NTcsIDAsIDAsIDAsIDAsIDAsIDc5NjIsIDc5NjQsIDAsIDAsIDAsIDAsIDAsIDc5NjMsIDc5NjUsIDAsIDc5NzAsIAotICAgIDc5NzIsIDAsIDAsIDc5NzQsIDgwODAsIDAsIDc5NzEsIDc5NzMsIDAsIDAsIDc5NzUsIDgwODEsIDAsIDAsIDgwODIsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDgwODMsIDAsIDAsIDgwODQsIDAsIDAsIDgwODUsIDAsIDAsIDgwODYsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDgwODcsIDAsIDc5NzgsIDc5ODAsIDAsIDAsIDc5ODIsIDgwODgsIDAsIDc5NzksIDc5ODEsIDAsIDAsIDc5ODMsIAotICAgIDgwODksIDAsIDAsIDgwOTAsIDAsIDAsIDAsIDAsIDAsIDAsIDgwOTEsIDAsIDAsIDgwOTIsIDAsIDAsIDgwOTMsIDAsIDAsIAotICAgIDgwOTQsIDAsIDAsIDAsIDAsIDAsIDAsIDgwOTUsIDAsIDc5ODYsIDc5ODgsIDAsIDAsIDc5OTAsIDAsIDAsIDc5ODcsIAotICAgIDc5ODksIDAsIDAsIDc5OTEsIDAsIDAsIDAsIDAsIDAsIDAsIDc5OTQsIDc5OTYsIDAsIDAsIDAsIDAsIDAsIDAsIDc5OTgsIAotICAgIDAsIDAsIDc5OTUsIDc5OTcsIDAsIDAsIDc5OTksIDAsIDAsIDgwMDIsIDgwMDQsIDAsIDgwMDMsIDgwMDUsIDAsIDAsIDAsIAotICAgIDAsIDAsIDgwMTAsIDgwMTIsIDAsIDAsIDAsIDAsIDAsIDgwMTEsIDgwMTMsIDAsIDgwMTgsIDgwMjAsIDAsIDAsIDgwMjIsIAotICAgIDAsIDAsIDgwMTksIDgwMjEsIDAsIDAsIDgwMjMsIDAsIDAsIDAsIDAsIDAsIDAsIDgwMjcsIDgwMjksIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDgwMzEsIDAsIDAsIDgwMzQsIDgwMzYsIDAsIDAsIDgwMzgsIDgwOTYsIDAsIDgwMzUsIDgwMzcsIDAsIDAsIAotICAgIDgwMzksIDgwOTcsIDAsIDAsIDgwOTgsIDAsIDAsIDgwOTksIDAsIDAsIDAsIDAsIDAsIDAsIDgxMDAsIDAsIDAsIDgxMDEsIAotICAgIDAsIDAsIDgxMDIsIDAsIDAsIDgxMDMsIDAsIDAsIDAsIDAsIDAsIDgwNDIsIDgwNDQsIDAsIDAsIDgwNDYsIDgxMDQsIDAsIAotICAgIDgwNDMsIDgwNDUsIDAsIDAsIDgwNDcsIDgxMDUsIDAsIDAsIDgxMDYsIDAsIDAsIDgxMDcsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDgxMDgsIDAsIDAsIDgxMDksIDAsIDAsIDgxMTAsIDAsIDAsIDgxMTEsIDAsIDAsIDAsIDAsIDAsIDAsIDgxMTQsIDAsIDAsIAotICAgIDgxMzAsIDAsIDAsIDgxNzgsIDAsIDAsIDgxMTksIDAsIDAsIDAsIDAsIDAsIDgxNDEsIDgxNDIsIDAsIDAsIDgxNDMsIDAsIAotICAgIDAsIDAsIDgxMzUsIDAsIDAsIDgxODMsIDAsIDAsIDAsIDAsIDAsIDgxNTcsIDgxNTgsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDgxNTksIDAsIDg2MDIsIDAsIDAsIDg2MDMsIDAsIDAsIDAsIDAsIDAsIDAsIDg2MjIsIDAsIDAsIDg2NTMsIDAsIDAsIAotICAgIDg2NTUsIDAsIDAsIDg2NTQsIDAsIDAsIDAsIDAsIDAsIDAsIDg3MDgsIDAsIDAsIDg3MTMsIDAsIDAsIDg3MTYsIDAsIDAsIAotICAgIDg3NDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg3NDIsIDAsIDAsIDg3NjksIDAsIDAsIDg3NzIsIDAsIDAsIDg3NzUsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDg3NzcsIDAsIDAsIDg4MTMsIDAsIDAsIDg4MDIsIDAsIDAsIDg4MTYsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDg4MTcsIDAsIDAsIDg4MjAsIDAsIDAsIDg4MjEsIDAsIDAsIDg4MjQsIDAsIDAsIDAsIDAsIDAsIDAsIDg4MjUsIDAsIDAsIAotICAgIDg4MzIsIDAsIDAsIDg4MzMsIDAsIDAsIDg5MjgsIDAsIDAsIDAsIDAsIDAsIDAsIDg5MjksIDAsIDAsIDg4MzYsIDAsIDAsIAotICAgIDg4MzcsIDAsIDAsIDg4NDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg4NDEsIDAsIDAsIDg5MzAsIDAsIDAsIDg5MzEsIDAsIDAsIAotICAgIDg4NzYsIDAsIDAsIDAsIDAsIDAsIDAsIDg4NzcsIDAsIDAsIDg4NzgsIDAsIDAsIDg4NzksIDAsIDAsIDg5MzgsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDg5MzksIDAsIDAsIDg5NDAsIDAsIDAsIDg5NDEsIDAsIDAsIDAsIDEyNDM2LCAwLCAwLCAxMjM2NCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTIzNjYsIDAsIDAsIDEyMzY4LCAwLCAwLCAxMjM3MCwgMCwgMCwgMTIzNzIsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDEyMzc0LCAwLCAwLCAxMjM3NiwgMCwgMCwgMTIzNzgsIDAsIDAsIDEyMzgwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAxMjM4MiwgMCwgMCwgMTIzODQsIDAsIDAsIDEyMzg2LCAwLCAwLCAxMjM4OSwgMCwgMCwgMCwgMCwgMCwgMCwgMTIzOTEsIDAsIAotICAgIDAsIDEyMzkzLCAwLCAwLCAxMjQwMCwgMTI0MDEsIDAsIDEyNDAzLCAxMjQwNCwgMCwgMCwgMCwgMCwgMCwgMTI0MDYsIAotICAgIDEyNDA3LCAwLCAwLCAwLCAwLCAwLCAxMjQwOSwgMTI0MTAsIDAsIDEyNDEyLCAxMjQxMywgMCwgMTI0NDYsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDEyNTMyLCAwLCAwLCAxMjQ2MCwgMCwgMCwgMTI0NjIsIDAsIDAsIDEyNDY0LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAxMjQ2NiwgMCwgMCwgMTI0NjgsIDAsIDAsIDEyNDcwLCAwLCAwLCAxMjQ3MiwgMCwgMCwgMCwgMCwgMCwgMCwgMTI0NzQsIDAsIAotICAgIDAsIDEyNDc2LCAwLCAwLCAxMjQ3OCwgMCwgMCwgMTI0ODAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyNDgyLCAwLCAwLCAxMjQ4NSwgCi0gICAgMCwgMCwgMTI0ODcsIDAsIDAsIDEyNDg5LCAwLCAwLCAwLCAwLCAwLCAwLCAxMjQ5NiwgMTI0OTcsIDAsIDAsIDAsIDAsIDAsIAotICAgIDEyNDk5LCAxMjUwMCwgMCwgMTI1MDIsIDEyNTAzLCAwLCAxMjUwNSwgMTI1MDYsIDAsIDAsIDAsIDAsIDAsIDEyNTA4LCAKLSAgICAxMjUwOSwgMCwgMCwgMCwgMCwgMCwgMTI1MzUsIDAsIDAsIDEyNTM2LCAwLCAwLCAxMjUzNywgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTI1MzgsIDAsIDAsIDEyNTQyLCAwLCAwLCAwLCAwLCA2OTc4NiwgMCwgMCwgNjk3ODgsIDAsIDAsIDY5ODAzLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4ODE0LCAwLCAwLCAwLCA4ODAwLCAwLCAwLCAwLCA4ODE1LCAxOTIsIDE5MywgMTk0LCAKKyAgICAxOTUsIDI1NiwgMjU4LCA1NTAsIDE5NiwgNzg0MiwgMTk3LCAwLCA0NjEsIDUxMiwgNTE0LCAwLCAwLCAwLCA3ODQwLCAwLCAKKyAgICA3NjgwLCAwLCAwLCAyNjAsIDAsIDAsIDAsIDc2ODIsIDAsIDAsIDc2ODQsIDAsIDAsIDAsIDAsIDc2ODYsIDAsIDAsIDI2MiwgCisgICAgMjY0LCAwLCAwLCAwLCAyNjYsIDAsIDAsIDAsIDAsIDI2OCwgMCwgMTk5LCAwLCAwLCAwLCAwLCA3NjkwLCAwLCAwLCAwLCAwLCAKKyAgICAyNzAsIDAsIDc2OTIsIDAsIDAsIDAsIDc2OTYsIDAsIDc2OTgsIDAsIDAsIDc2OTQsIDAsIDIwMCwgMjAxLCAyMDIsIDc4NjgsIAorICAgIDI3NCwgMjc2LCAyNzgsIDIwMywgNzg2NiwgMCwgMCwgMjgyLCA1MTYsIDUxOCwgMCwgMCwgMCwgNzg2NCwgMCwgMCwgMCwgCisgICAgNTUyLCAyODAsIDc3MDQsIDAsIDc3MDYsIDAsIDAsIDAsIDAsIDc3MTAsIDAsIDAsIDUwMCwgMjg0LCAwLCA3NzEyLCAyODYsIAorICAgIDI4OCwgMCwgMCwgMCwgMCwgNDg2LCAwLCAyOTAsIDAsIDAsIDAsIDAsIDI5MiwgMCwgMCwgMCwgNzcxNCwgNzcxOCwgMCwgMCwgCisgICAgMCwgNTQyLCAwLCA3NzE2LCAwLCAwLCAwLCA3NzIwLCAwLCAwLCA3NzIyLCAwLCAwLCAwLCAyMDQsIDIwNSwgMjA2LCAyOTYsIAorICAgIDI5OCwgMzAwLCAzMDQsIDIwNywgNzg4MCwgMCwgMCwgNDYzLCA1MjAsIDUyMiwgMCwgMCwgMCwgNzg4MiwgMCwgMCwgMCwgMCwgCisgICAgMzAyLCAwLCAwLCA3NzI0LCAwLCAwLCAwLCAwLCAzMDgsIDAsIDAsIDc3MjgsIDAsIDAsIDAsIDAsIDAsIDQ4OCwgMCwgCisgICAgNzczMCwgMCwgMCwgMCwgMzEwLCAwLCAwLCAwLCAwLCA3NzMyLCAwLCAwLCAzMTMsIDAsIDAsIDAsIDAsIDAsIDMxNywgMCwgCisgICAgNzczNCwgMCwgMCwgMCwgMzE1LCAwLCA3NzQwLCAwLCAwLCA3NzM4LCAwLCAwLCA3NzQyLCAwLCAwLCAwLCAwLCA3NzQ0LCAwLCAKKyAgICAwLCA3NzQ2LCAwLCAwLCA1MDQsIDMyMywgMCwgMjA5LCAwLCAwLCA3NzQ4LCAwLCAwLCAwLCAwLCAzMjcsIDAsIDc3NTAsIDAsIAorICAgIDAsIDAsIDMyNSwgMCwgNzc1NCwgMCwgMCwgNzc1MiwgMCwgMjEwLCAyMTEsIDIxMiwgMjEzLCAzMzIsIDMzNCwgNTU4LCAKKyAgICAyMTQsIDc4ODYsIDAsIDMzNiwgNDY1LCA1MjQsIDUyNiwgMCwgMCwgNDE2LCA3ODg0LCAwLCAwLCAwLCAwLCA0OTAsIDAsIDAsIAorICAgIDc3NjQsIDAsIDAsIDAsIDAsIDc3NjYsIDAsIDAsIDM0MCwgMCwgMCwgMCwgMCwgNzc2OCwgMCwgMCwgMCwgMCwgMzQ0LCAKKyAgICA1MjgsIDUzMCwgMCwgMCwgMCwgNzc3MCwgMCwgMCwgMCwgMzQyLCAwLCAwLCAwLCAwLCA3Nzc0LCAwLCAwLCAzNDYsIDM0OCwgCisgICAgMCwgMCwgMCwgNzc3NiwgMCwgMCwgMCwgMCwgMzUyLCAwLCA3Nzc4LCAwLCAwLCA1MzYsIDM1MCwgMCwgMCwgMCwgMCwgCisgICAgNzc4NiwgMCwgMCwgMCwgMCwgMzU2LCAwLCA3Nzg4LCAwLCAwLCA1MzgsIDM1NCwgMCwgNzc5MiwgMCwgMCwgNzc5MCwgMCwgCisgICAgMjE3LCAyMTgsIDIxOSwgMzYwLCAzNjIsIDM2NCwgMCwgMjIwLCA3OTEwLCAzNjYsIDM2OCwgNDY3LCA1MzIsIDUzNCwgMCwgCisgICAgMCwgNDMxLCA3OTA4LCA3Nzk0LCAwLCAwLCAwLCAzNzAsIDc3OTgsIDAsIDc3OTYsIDAsIDAsIDAsIDAsIDAsIDc4MDQsIDAsIAorICAgIDc4MDYsIDAsIDAsIDc4MDgsIDc4MTAsIDM3MiwgMCwgMCwgMCwgNzgxNCwgNzgxMiwgMCwgNzgxNiwgMCwgMCwgMCwgMCwgCisgICAgNzgxOCwgNzgyMCwgNzkyMiwgMjIxLCAzNzQsIDc5MjgsIDU2MiwgMCwgNzgyMiwgMzc2LCA3OTI2LCAwLCAwLCAwLCAwLCAKKyAgICA3OTI0LCAwLCAwLCAwLCAzNzcsIDc4MjQsIDAsIDAsIDAsIDM3OSwgMCwgMCwgMCwgMCwgMzgxLCAwLCA3ODI2LCAwLCAwLCAKKyAgICAwLCAwLCA3ODI4LCAwLCAyMjQsIDIyNSwgMjI2LCAyMjcsIDI1NywgMjU5LCA1NTEsIDIyOCwgNzg0MywgMjI5LCAwLCA0NjIsIAorICAgIDUxMywgNTE1LCAwLCAwLCAwLCA3ODQxLCAwLCA3NjgxLCAwLCAwLCAyNjEsIDAsIDAsIDAsIDc2ODMsIDAsIDAsIDc2ODUsIAorICAgIDAsIDAsIDAsIDAsIDc2ODcsIDAsIDAsIDI2MywgMjY1LCAwLCAwLCAwLCAyNjcsIDAsIDAsIDAsIDAsIDI2OSwgMCwgMjMxLCAKKyAgICAwLCAwLCAwLCAwLCA3NjkxLCAwLCAwLCAwLCAwLCAyNzEsIDAsIDc2OTMsIDAsIDAsIDAsIDc2OTcsIDAsIDc2OTksIDAsIDAsIAorICAgIDc2OTUsIDAsIDIzMiwgMjMzLCAyMzQsIDc4NjksIDI3NSwgMjc3LCAyNzksIDIzNSwgNzg2NywgMCwgMCwgMjgzLCA1MTcsIAorICAgIDUxOSwgMCwgMCwgMCwgNzg2NSwgMCwgMCwgMCwgNTUzLCAyODEsIDc3MDUsIDAsIDc3MDcsIDAsIDAsIDAsIDAsIDc3MTEsIAorICAgIDAsIDAsIDUwMSwgMjg1LCAwLCA3NzEzLCAyODcsIDI4OSwgMCwgMCwgMCwgMCwgNDg3LCAwLCAyOTEsIDAsIDAsIDAsIDAsIAorICAgIDI5MywgMCwgMCwgMCwgNzcxNSwgNzcxOSwgMCwgMCwgMCwgNTQzLCAwLCA3NzE3LCAwLCAwLCAwLCA3NzIxLCAwLCAwLCAKKyAgICA3NzIzLCAwLCA3ODMwLCAwLCAyMzYsIDIzNywgMjM4LCAyOTcsIDI5OSwgMzAxLCAwLCAyMzksIDc4ODEsIDAsIDAsIDQ2NCwgCisgICAgNTIxLCA1MjMsIDAsIDAsIDAsIDc4ODMsIDAsIDAsIDAsIDAsIDMwMywgMCwgMCwgNzcyNSwgMCwgMCwgMCwgMCwgMzA5LCAwLCAKKyAgICAwLCAwLCAwLCA0OTYsIDAsIDc3MjksIDAsIDAsIDAsIDAsIDAsIDQ4OSwgMCwgNzczMSwgMCwgMCwgMCwgMzExLCAwLCAwLCAKKyAgICAwLCAwLCA3NzMzLCAwLCAwLCAzMTQsIDAsIDAsIDAsIDAsIDAsIDMxOCwgMCwgNzczNSwgMCwgMCwgMCwgMzE2LCAwLCAKKyAgICA3NzQxLCAwLCAwLCA3NzM5LCAwLCAwLCA3NzQzLCAwLCAwLCAwLCAwLCA3NzQ1LCAwLCAwLCA3NzQ3LCAwLCAwLCA1MDUsIAorICAgIDMyNCwgMCwgMjQxLCAwLCAwLCA3NzQ5LCAwLCAwLCAwLCAwLCAzMjgsIDAsIDc3NTEsIDAsIDAsIDAsIDMyNiwgMCwgNzc1NSwgCisgICAgMCwgMCwgNzc1MywgMCwgMjQyLCAyNDMsIDI0NCwgMjQ1LCAzMzMsIDMzNSwgNTU5LCAyNDYsIDc4ODcsIDAsIDMzNywgNDY2LCAKKyAgICA1MjUsIDUyNywgMCwgMCwgNDE3LCA3ODg1LCAwLCAwLCAwLCAwLCA0OTEsIDAsIDAsIDc3NjUsIDAsIDAsIDAsIDAsIDc3NjcsIAorICAgIDAsIDAsIDM0MSwgMCwgMCwgMCwgMCwgNzc2OSwgMCwgMCwgMCwgMCwgMzQ1LCA1MjksIDUzMSwgMCwgMCwgMCwgNzc3MSwgMCwgCisgICAgMCwgMCwgMzQzLCAwLCAwLCAwLCAwLCA3Nzc1LCAwLCAwLCAzNDcsIDM0OSwgMCwgMCwgMCwgNzc3NywgMCwgMCwgMCwgMCwgCisgICAgMzUzLCAwLCA3Nzc5LCAwLCAwLCA1MzcsIDM1MSwgMCwgMCwgMCwgMCwgNzc4NywgNzgzMSwgMCwgMCwgMCwgMzU3LCAwLCAKKyAgICA3Nzg5LCAwLCAwLCA1MzksIDM1NSwgMCwgNzc5MywgMCwgMCwgNzc5MSwgMCwgMjQ5LCAyNTAsIDI1MSwgMzYxLCAzNjMsIAorICAgIDM2NSwgMCwgMjUyLCA3OTExLCAzNjcsIDM2OSwgNDY4LCA1MzMsIDUzNSwgMCwgMCwgNDMyLCA3OTA5LCA3Nzk1LCAwLCAwLCAKKyAgICAwLCAzNzEsIDc3OTksIDAsIDc3OTcsIDAsIDAsIDAsIDAsIDAsIDc4MDUsIDAsIDc4MDcsIDAsIDAsIDc4MDksIDc4MTEsIAorICAgIDM3MywgMCwgMCwgMCwgNzgxNSwgNzgxMywgMCwgNzgzMiwgMCwgMCwgMCwgNzgxNywgMCwgMCwgMCwgMCwgNzgxOSwgNzgyMSwgCisgICAgNzkyMywgMjUzLCAzNzUsIDc5MjksIDU2MywgMCwgNzgyMywgMjU1LCA3OTI3LCA3ODMzLCAwLCAwLCAwLCA3OTI1LCAwLCAwLCAKKyAgICAwLCAzNzgsIDc4MjUsIDAsIDAsIDAsIDM4MCwgMCwgMCwgMCwgMCwgMzgyLCAwLCA3ODI3LCAwLCAwLCAwLCAwLCA3ODI5LCAKKyAgICAwLCA4MTczLCA5MDEsIDAsIDAsIDgxMjksIDAsIDAsIDAsIDc4NDYsIDc4NDQsIDAsIDc4NTAsIDc4NDgsIDAsIDAsIDAsIAorICAgIDQ3OCwgMCwgMCwgMCwgMCwgNTA2LCAwLCAwLCAwLCA1MDgsIDAsIDAsIDQ4MiwgMCwgMCwgMCwgMCwgNzY4OCwgMCwgMCwgCisgICAgNzg3MiwgNzg3MCwgMCwgNzg3NiwgNzg3NCwgMCwgMCwgMCwgMCwgNzcyNiwgMCwgMCwgNzg5MCwgNzg4OCwgMCwgNzg5NCwgCisgICAgNzg5MiwgMCwgMCwgMCwgMCwgNzc1NiwgMCwgMCwgNTU2LCAwLCAwLCA3NzU4LCA1NTQsIDAsIDAsIDAsIDAsIDUxMCwgMCwgCisgICAgMCwgNDc1LCA0NzEsIDAsIDAsIDQ2OSwgMCwgMCwgMCwgMCwgMCwgMCwgNDczLCA3ODQ3LCA3ODQ1LCAwLCA3ODUxLCA3ODQ5LCAKKyAgICAwLCAwLCAwLCA0NzksIDAsIDAsIDAsIDAsIDUwNywgMCwgMCwgMCwgNTA5LCAwLCAwLCA0ODMsIDAsIDAsIDAsIDAsIDc2ODksIAorICAgIDAsIDAsIDc4NzMsIDc4NzEsIDAsIDc4NzcsIDc4NzUsIDAsIDAsIDAsIDAsIDc3MjcsIDAsIDAsIDc4OTEsIDc4ODksIDAsIAorICAgIDc4OTUsIDc4OTMsIDAsIDAsIDAsIDAsIDc3NTcsIDAsIDAsIDU1NywgMCwgMCwgNzc1OSwgNTU1LCAwLCAwLCAwLCAwLCAKKyAgICA1MTEsIDAsIDAsIDQ3NiwgNDcyLCAwLCAwLCA0NzAsIDAsIDAsIDAsIDAsIDAsIDAsIDQ3NCwgNzg1NiwgNzg1NCwgMCwgCisgICAgNzg2MCwgNzg1OCwgMCwgMCwgMCwgNzg1NywgNzg1NSwgMCwgNzg2MSwgNzg1OSwgMCwgMCwgMCwgNzcwMCwgNzcwMiwgMCwgCisgICAgMCwgNzcwMSwgNzcwMywgMCwgMCwgNzc2MCwgNzc2MiwgMCwgMCwgNzc2MSwgNzc2MywgMCwgMCwgMCwgMCwgNzc4MCwgMCwgCisgICAgMCwgMCwgNzc4MSwgMCwgMCwgMCwgNzc4MiwgMCwgMCwgMCwgNzc4MywgMCwgMCwgNzgwMCwgMCwgMCwgMCwgNzgwMSwgMCwgCisgICAgMCwgMCwgMCwgMCwgNzgwMiwgMCwgMCwgMCwgNzgwMywgMCwgMCwgNzgzNSwgMCwgNzkwMCwgNzg5OCwgMCwgNzkwNCwgCisgICAgNzkwMiwgMCwgMCwgMCwgMCwgNzkwNiwgMCwgMCwgNzkwMSwgNzg5OSwgMCwgNzkwNSwgNzkwMywgMCwgMCwgMCwgMCwgCisgICAgNzkwNywgMCwgMCwgNzkxNCwgNzkxMiwgMCwgNzkxOCwgNzkxNiwgMCwgMCwgMCwgMCwgNzkyMCwgMCwgMCwgNzkxNSwgCisgICAgNzkxMywgMCwgNzkxOSwgNzkxNywgMCwgMCwgMCwgMCwgNzkyMSwgMCwgMCwgMCwgMCwgMCwgNDk0LCA0OTIsIDAsIDAsIDAsIAorICAgIDQ5MywgMCwgMCwgMCwgNDgwLCAwLCAwLCAwLCA0ODEsIDAsIDAsIDAsIDAsIDc3MDgsIDAsIDAsIDAsIDc3MDksIDAsIDAsIAorICAgIDU2MCwgMCwgMCwgMCwgNTYxLCAwLCAwLCAwLCAwLCAwLCAwLCA0OTUsIDgxMjIsIDkwMiwgMCwgMCwgODEyMSwgODEyMCwgMCwgCisgICAgMCwgMCwgMCwgNzk0NCwgNzk0NSwgMCwgODEyNCwgMCwgMCwgODEzNiwgOTA0LCAwLCAwLCAwLCAwLCA3OTYwLCA3OTYxLCAKKyAgICA4MTM4LCA5MDUsIDAsIDAsIDAsIDAsIDc5NzYsIDc5NzcsIDAsIDgxNDAsIDAsIDAsIDgxNTQsIDkwNiwgMCwgMCwgODE1MywgCisgICAgODE1MiwgMCwgOTM4LCAwLCAwLCA3OTkyLCA3OTkzLCA4MTg0LCA5MDgsIDAsIDAsIDAsIDAsIDgwMDgsIDgwMDksIDAsIDAsIAorICAgIDAsIDgxNzIsIDgxNzAsIDkxMCwgMCwgMCwgODE2OSwgODE2OCwgMCwgOTM5LCAwLCAwLCAwLCA4MDI1LCA4MTg2LCA5MTEsIAorICAgIDAsIDAsIDAsIDAsIDgwNDAsIDgwNDEsIDAsIDgxODgsIDAsIDAsIDAsIDgxMTYsIDAsIDAsIDAsIDgxMzIsIDAsIDAsIAorICAgIDgwNDgsIDk0MCwgMCwgMCwgODExMywgODExMiwgMCwgMCwgMCwgMCwgNzkzNiwgNzkzNywgODExOCwgODExNSwgMCwgMCwgCisgICAgODA1MCwgOTQxLCAwLCAwLCAwLCAwLCA3OTUyLCA3OTUzLCA4MDUyLCA5NDIsIDAsIDAsIDAsIDAsIDc5NjgsIDc5NjksIAorICAgIDgxMzQsIDgxMzEsIDAsIDAsIDgwNTQsIDk0MywgMCwgMCwgODE0NSwgODE0NCwgMCwgOTcwLCAwLCAwLCA3OTg0LCA3OTg1LCAKKyAgICA4MTUwLCAwLCAwLCAwLCA4MDU2LCA5NzIsIDAsIDAsIDAsIDAsIDgwMDAsIDgwMDEsIDAsIDAsIDgxNjQsIDgxNjUsIDgwNTgsIAorICAgIDk3MywgMCwgMCwgODE2MSwgODE2MCwgMCwgOTcxLCAwLCAwLCA4MDE2LCA4MDE3LCA4MTY2LCAwLCAwLCAwLCA4MDYwLCAKKyAgICA5NzQsIDAsIDAsIDAsIDAsIDgwMzIsIDgwMzMsIDgxODIsIDgxNzksIDAsIDAsIDgxNDYsIDkxMiwgMCwgMCwgODE1MSwgMCwgCisgICAgMCwgMCwgODE2MiwgOTQ0LCAwLCAwLCA4MTY3LCAwLCAwLCAwLCAwLCA4MTgwLCAwLCAwLCAwLCA5NzksIDAsIDAsIDAsIDAsIAorICAgIDAsIDk4MCwgMCwgMCwgMCwgMTAzMSwgMCwgMTIzMiwgMCwgMTIzNCwgMCwgMTAyNywgMCwgMCwgMTAyNCwgMCwgMCwgMCwgMCwgCisgICAgMTIzOCwgMCwgMTAyNSwgMCwgMTIxNywgMCwgMTI0NCwgMCwgMCwgMCwgMTI0NiwgMTAzNywgMCwgMCwgMCwgMTI1MCwgCisgICAgMTA0OSwgMCwgMTI1MiwgMCwgMTAzNiwgMCwgMCwgMCwgMCwgMCwgMTI1NCwgMTI2MiwgMTAzOCwgMCwgMTI2NCwgMCwgMCwgCisgICAgMTI2NiwgMCwgMCwgMCwgMCwgMTI2OCwgMCwgMCwgMCwgMTI3MiwgMCwgMCwgMCwgMTI2MCwgMCwgMTIzMywgMCwgMTIzNSwgCisgICAgMCwgMTEwNywgMCwgMCwgMTEwNCwgMCwgMCwgMCwgMCwgMTIzOSwgMCwgMTEwNSwgMCwgMTIxOCwgMCwgMTI0NSwgMCwgMCwgCisgICAgMCwgMTI0NywgMTExNywgMCwgMCwgMCwgMTI1MSwgMTA4MSwgMCwgMTI1MywgMCwgMTExNiwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTI1NSwgMTI2MywgMTExOCwgMCwgMTI2NSwgMCwgMCwgMTI2NywgMCwgMCwgMCwgMCwgMTI2OSwgMCwgMCwgMCwgMTI3MywgCisgICAgMCwgMCwgMCwgMTI2MSwgMCwgMCwgMCwgMTExMSwgMTE0MiwgMCwgMCwgMCwgMTE0MywgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTI0MiwgMCwgMCwgMCwgMTI0MywgMCwgMCwgMCwgMTI1OCwgMCwgMCwgMCwgMTI1OSwgMCwgMCwgMTU3MCwgMTU3MSwgCisgICAgMTU3MywgMCwgMCwgMCwgMCwgMCwgMCwgMTU3MiwgMCwgMCwgMCwgMTU3NCwgMCwgMCwgMCwgMTczMCwgMCwgMCwgMCwgCisgICAgMTc0NywgMCwgMCwgMCwgMTcyOCwgMCwgMjM0NSwgMCwgMCwgMCwgMjM1MywgMCwgMCwgMCwgMjM1NiwgMCwgMCwgMCwgMCwgCisgICAgMjUwNywgMjUwOCwgMjg5MSwgMjg4OCwgMjg5MiwgMCwgMjk2NCwgMCwgMCwgMCwgMCwgMCwgMCwgMzAxOCwgMzAyMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMzAxOSwgMCwgMzE0NCwgMCwgMCwgMCwgMCwgMCwgMzI2NCwgMCwgMCwgMzI3NCwgMzI3MSwgCisgICAgMzI3MiwgMCwgMCwgMCwgMCwgMCwgMCwgMzI3NSwgMCwgMzQwMiwgMzQwNCwgMCwgMCwgMzQwMywgMCwgMCwgMCwgMCwgMCwgCisgICAgMzU0NiwgMzU0OCwgMzU1MCwgMCwgMCwgMCwgMCwgMCwgMzU0OSwgMCwgMCwgNDEzNCwgMCwgMCwgMCwgMCwgNjkxOCwgMCwgCisgICAgMCwgMCwgNjkyMCwgMCwgMCwgMCwgNjkyMiwgMCwgMCwgMCwgNjkyNCwgMCwgMCwgMCwgNjkyNiwgMCwgMCwgMCwgNjkzMCwgCisgICAgMCwgMCwgMCwgNjk3MSwgMCwgMCwgMCwgNjk3MywgMCwgMCwgMCwgNjk3NiwgMCwgMCwgMCwgNjk3NywgMCwgMCwgMCwgCisgICAgNjk3OSwgNzczNiwgMCwgMCwgMCwgNzczNywgMCwgMCwgMCwgNzc3MiwgMCwgMCwgMCwgNzc3MywgMCwgMCwgMCwgMCwgMCwgCisgICAgNzc4NCwgMCwgMCwgMCwgNzc4NSwgMCwgMCwgMCwgNzg1MiwgMCwgMCwgNzg2MiwgMCwgMCwgMCwgMCwgNzg1MywgMCwgMCwgCisgICAgNzg2MywgMCwgMCwgMCwgMCwgNzg3OCwgMCwgMCwgMCwgNzg3OSwgMCwgMCwgMCwgNzg5NiwgMCwgMCwgMCwgNzg5NywgMCwgCisgICAgNzkzOCwgNzk0MCwgMCwgMCwgNzk0MiwgODA2NCwgMCwgMCwgNzkzOSwgNzk0MSwgMCwgMCwgNzk0MywgODA2NSwgMCwgMCwgCisgICAgMCwgODA2NiwgMCwgMCwgMCwgODA2NywgMCwgMCwgMCwgODA2OCwgMCwgMCwgMCwgODA2OSwgMCwgMCwgMCwgODA3MCwgMCwgCisgICAgMCwgMCwgODA3MSwgMCwgMCwgNzk0NiwgNzk0OCwgMCwgMCwgNzk1MCwgODA3MiwgMCwgMCwgNzk0NywgNzk0OSwgMCwgMCwgCisgICAgNzk1MSwgODA3MywgMCwgMCwgMCwgODA3NCwgMCwgMCwgMCwgODA3NSwgMCwgMCwgMCwgODA3NiwgMCwgMCwgMCwgODA3NywgCisgICAgMCwgMCwgMCwgODA3OCwgMCwgMCwgMCwgODA3OSwgMCwgMCwgNzk1NCwgNzk1NiwgMCwgMCwgNzk1NSwgNzk1NywgMCwgMCwgCisgICAgNzk2MiwgNzk2NCwgMCwgMCwgNzk2MywgNzk2NSwgMCwgMCwgNzk3MCwgNzk3MiwgMCwgMCwgNzk3NCwgODA4MCwgMCwgMCwgCisgICAgNzk3MSwgNzk3MywgMCwgMCwgNzk3NSwgODA4MSwgMCwgMCwgMCwgODA4MiwgMCwgMCwgMCwgODA4MywgMCwgMCwgMCwgCisgICAgODA4NCwgMCwgMCwgMCwgODA4NSwgMCwgMCwgMCwgODA4NiwgMCwgMCwgMCwgODA4NywgMCwgMCwgNzk3OCwgNzk4MCwgMCwgCisgICAgMCwgNzk4MiwgODA4OCwgMCwgMCwgNzk3OSwgNzk4MSwgMCwgMCwgNzk4MywgODA4OSwgMCwgMCwgMCwgODA5MCwgMCwgMCwgCisgICAgMCwgODA5MSwgMCwgMCwgMCwgODA5MiwgMCwgMCwgMCwgODA5MywgMCwgMCwgMCwgODA5NCwgMCwgMCwgMCwgODA5NSwgMCwgCisgICAgMCwgNzk4NiwgNzk4OCwgMCwgMCwgNzk5MCwgMCwgMCwgMCwgNzk4NywgNzk4OSwgMCwgMCwgNzk5MSwgMCwgMCwgMCwgCisgICAgNzk5NCwgNzk5NiwgMCwgMCwgNzk5OCwgMCwgMCwgMCwgNzk5NSwgNzk5NywgMCwgMCwgNzk5OSwgMCwgMCwgMCwgODAwMiwgCisgICAgODAwNCwgMCwgMCwgODAwMywgODAwNSwgMCwgMCwgODAxMCwgODAxMiwgMCwgMCwgODAxMSwgODAxMywgMCwgMCwgODAxOCwgCisgICAgODAyMCwgMCwgMCwgODAyMiwgMCwgMCwgMCwgODAxOSwgODAyMSwgMCwgMCwgODAyMywgMCwgMCwgMCwgODAyNywgODAyOSwgCisgICAgMCwgMCwgODAzMSwgMCwgMCwgMCwgODAzNCwgODAzNiwgMCwgMCwgODAzOCwgODA5NiwgMCwgMCwgODAzNSwgODAzNywgMCwgCisgICAgMCwgODAzOSwgODA5NywgMCwgMCwgMCwgODA5OCwgMCwgMCwgMCwgODA5OSwgMCwgMCwgMCwgODEwMCwgMCwgMCwgMCwgCisgICAgODEwMSwgMCwgMCwgMCwgODEwMiwgMCwgMCwgMCwgODEwMywgMCwgMCwgODA0MiwgODA0NCwgMCwgMCwgODA0NiwgODEwNCwgCisgICAgMCwgMCwgODA0MywgODA0NSwgMCwgMCwgODA0NywgODEwNSwgMCwgMCwgMCwgODEwNiwgMCwgMCwgMCwgODEwNywgMCwgMCwgCisgICAgMCwgODEwOCwgMCwgMCwgMCwgODEwOSwgMCwgMCwgMCwgODExMCwgMCwgMCwgMCwgODExMSwgMCwgMCwgMCwgODExNCwgMCwgCisgICAgMCwgMCwgODEzMCwgMCwgMCwgMCwgODE3OCwgMCwgMCwgMCwgODExOSwgMCwgMCwgODE0MSwgODE0MiwgMCwgMCwgODE0MywgCisgICAgMCwgMCwgMCwgMCwgODEzNSwgMCwgMCwgMCwgODE4MywgMCwgMCwgODE1NywgODE1OCwgMCwgMCwgODE1OSwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgODYwMiwgMCwgMCwgMCwgODYwMywgMCwgMCwgMCwgODYyMiwgMCwgMCwgMCwgODY1MywgMCwgMCwgMCwgCisgICAgODY1NSwgMCwgMCwgMCwgODY1NCwgMCwgMCwgMCwgODcwOCwgMCwgMCwgMCwgODcxMywgMCwgMCwgMCwgODcxNiwgMCwgMCwgCisgICAgMCwgODc0MCwgMCwgMCwgMCwgODc0MiwgMCwgMCwgMCwgODc2OSwgMCwgMCwgMCwgODc3MiwgMCwgMCwgMCwgODc3NSwgMCwgCisgICAgMCwgMCwgODc3NywgMCwgMCwgMCwgODgxMywgMCwgMCwgMCwgODgwMiwgMCwgMCwgMCwgODgxNiwgMCwgMCwgMCwgODgxNywgCisgICAgMCwgMCwgMCwgODgyMCwgMCwgMCwgMCwgODgyMSwgMCwgMCwgMCwgODgyNCwgMCwgMCwgMCwgODgyNSwgMCwgMCwgMCwgCisgICAgODgzMiwgMCwgMCwgMCwgODgzMywgMCwgMCwgMCwgODkyOCwgMCwgMCwgMCwgODkyOSwgMCwgMCwgMCwgODgzNiwgMCwgMCwgCisgICAgMCwgODgzNywgMCwgMCwgMCwgODg0MCwgMCwgMCwgMCwgODg0MSwgMCwgMCwgMCwgODkzMCwgMCwgMCwgMCwgODkzMSwgMCwgCisgICAgMCwgMCwgODg3NiwgMCwgMCwgMCwgODg3NywgMCwgMCwgMCwgODg3OCwgMCwgMCwgMCwgODg3OSwgMCwgMCwgMCwgODkzOCwgCisgICAgMCwgMCwgMCwgODkzOSwgMCwgMCwgMCwgODk0MCwgMCwgMCwgMCwgODk0MSwgMTI0MzYsIDAsIDAsIDAsIDEyMzY0LCAwLCAwLCAKKyAgICAwLCAxMjM2NiwgMCwgMCwgMCwgMTIzNjgsIDAsIDAsIDAsIDEyMzcwLCAwLCAwLCAwLCAxMjM3MiwgMCwgMCwgMCwgMTIzNzQsIAorICAgIDAsIDAsIDAsIDEyMzc2LCAwLCAwLCAwLCAxMjM3OCwgMCwgMCwgMCwgMTIzODAsIDAsIDAsIDAsIDEyMzgyLCAwLCAwLCAwLCAKKyAgICAxMjM4NCwgMCwgMCwgMCwgMTIzODYsIDAsIDAsIDAsIDEyMzg5LCAwLCAwLCAwLCAxMjM5MSwgMCwgMCwgMCwgMTIzOTMsIDAsIAorICAgIDAsIDAsIDEyNDAwLCAxMjQwMSwgMCwgMCwgMTI0MDMsIDEyNDA0LCAwLCAwLCAxMjQwNiwgMTI0MDcsIDAsIDAsIDEyNDA5LCAKKyAgICAxMjQxMCwgMCwgMCwgMTI0MTIsIDEyNDEzLCAwLCAwLCAxMjQ0NiwgMCwgMCwgMCwgMTI1MzIsIDAsIDAsIDAsIDEyNDYwLCAKKyAgICAwLCAwLCAwLCAxMjQ2MiwgMCwgMCwgMCwgMTI0NjQsIDAsIDAsIDAsIDEyNDY2LCAwLCAwLCAwLCAxMjQ2OCwgMCwgMCwgMCwgCisgICAgMTI0NzAsIDAsIDAsIDAsIDEyNDcyLCAwLCAwLCAwLCAxMjQ3NCwgMCwgMCwgMCwgMTI0NzYsIDAsIDAsIDAsIDEyNDc4LCAwLCAKKyAgICAwLCAwLCAxMjQ4MCwgMCwgMCwgMCwgMTI0ODIsIDAsIDAsIDAsIDEyNDg1LCAwLCAwLCAwLCAxMjQ4NywgMCwgMCwgMCwgCisgICAgMTI0ODksIDAsIDAsIDAsIDEyNDk2LCAxMjQ5NywgMCwgMCwgMTI0OTksIDEyNTAwLCAwLCAwLCAxMjUwMiwgMTI1MDMsIDAsIAorICAgIDAsIDEyNTA1LCAxMjUwNiwgMCwgMCwgMTI1MDgsIDEyNTA5LCAwLCAwLCAxMjUzNSwgMCwgMCwgMCwgMTI1MzYsIDAsIDAsIAorICAgIDAsIDEyNTM3LCAwLCAwLCAwLCAxMjUzOCwgMCwgMCwgMCwgMTI1NDIsIDAsIDAsIDAsIDAsIDAsIDY5Nzg2LCAwLCAwLCAwLCAKKyAgICA2OTc4OCwgMCwgMCwgMCwgNjk4MDMsIDAsIDAsIDAsIDAsIDY5OTM0LCAwLCAwLCAwLCA2OTkzNSwgCiB9OwogCiBzdGF0aWMgY29uc3QgY2hhbmdlX3JlY29yZCBjaGFuZ2VfcmVjb3Jkc18zXzJfMFtdID0gewogCXsgMjU1LCAyNTUsIDI1NSwgMjU1LCAwIH0sCiAJeyAxMSwgMjU1LCAyNTUsIDI1NSwgMCB9LAogCXsgMTAsIDI1NSwgMjU1LCAyNTUsIDAgfSwKKwl7IDI1NSwgMzAsIDI1NSwgMjU1LCAwIH0sCisJeyAyNTUsIDIsIDI1NSwgMjU1LCAwIH0sCiAJeyAxOSwgMjEsIDI1NSwgMjU1LCAwIH0sCiAJeyAyNTUsIDI1NSwgMiwgMjU1LCAwIH0sCiAJeyAyNTUsIDI1NSwgMywgMjU1LCAwIH0sCiAJeyAyNTUsIDI1NSwgMSwgMjU1LCAwIH0sCiAJeyAyNTUsIDAsIDI1NSwgMjU1LCAwIH0sCi0JeyAyNTUsIDIsIDI1NSwgMjU1LCAwIH0sCiAJeyAyNTUsIDI5LCAyNTUsIDI1NSwgMCB9LAogCXsgMjU1LCAyNiwgMjU1LCAyNTUsIDAgfSwKIAl7IDUsIDI1NSwgMjU1LCAyNTUsIDAgfSwKQEAgLTUwNTgsNyArNTE3Nyw3IEBACiAJeyAyNTUsIDcsIDcsIDI1NSwgMCB9LAogCXsgMjU1LCA3LCA4LCAyNTUsIDAgfSwKIAl7IDI1NSwgNywgOSwgMjU1LCAwIH0sCi0JeyAyNTUsIDUsIDI1NSwgMjU1LCAwIH0sCisJeyAxLCA1LCAyNTUsIDI1NSwgMCB9LAogCXsgMTUsIDE0LCAyNTUsIDI1NSwgMCB9LAogCXsgMjU1LCAxMCwgMjU1LCAyNTUsIDAgfSwKIAl7IDE4LCAyNTUsIDI1NSwgMjU1LCAwIH0sCkBAIC01MDcwLDEyICs1MTg5LDEyIEBACiAJeyAyNTUsIDI1NSwgNywgMjU1LCAwIH0sCiAJeyAyNTUsIDI1NSwgOCwgMjU1LCAwIH0sCiAJeyAyNTUsIDI1NSwgOSwgMjU1LCAwIH0sCi0JeyAyNTUsIDMwLCAyNTUsIDI1NSwgMCB9LAogCXsgMTksIDMwLCAyNTUsIDI1NSwgMCB9LAogCXsgMjU1LCA4LCAyNTUsIDI1NSwgMCB9LAogCXsgMjU1LCAyMiwgMjU1LCAyNTUsIDAgfSwKIAl7IDI1NSwgMjMsIDI1NSwgMjU1LCAwIH0sCiAJeyA5LCAyNTUsIDI1NSwgMjU1LCAwIH0sCisJeyAxNCwgNCwgMjU1LCAyNTUsIDAgfSwKIAl7IDI1NSwgMjAsIDI1NSwgMjU1LCAwIH0sCiAJeyAyNTUsIDI1NSwgMjU1LCAyNTUsIDFlKzE2IH0sCiAJeyAyNTUsIDI1NSwgMjU1LCAyNTUsIDFlKzIwIH0sCkBAIC01MDg0LDc0ICs1MjAzLDc0IEBACiAJeyAxLCAyNTUsIDI1NSwgMCwgMCB9LAogfTsKIHN0YXRpYyB1bnNpZ25lZCBjaGFyIGNoYW5nZXNfM18yXzBfaW5kZXhbXSA9IHsKLSAgICAwLCAxLCAyLCAyLCAzLCA0LCA1LCA2LCAyLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDIsIDE1LCAxNiwgMTcsIAotICAgIDE4LCAxOSwgMjAsIDIxLCAyMiwgMjMsIDIsIDIsIDIsIDI0LCAyNSwgMjYsIDI3LCAyOCwgMjksIDMwLCAzMSwgMzIsIDMzLCAKLSAgICAzNCwgMiwgMiwgMiwgMzUsIDM2LCAyLCAzNywgMzgsIDM5LCA0MCwgNDEsIDQyLCA0MywgNDQsIDQ1LCA0NiwgNDcsIDQ4LCAKLSAgICA0OSwgMiwgNTAsIDIsIDIsIDUxLCA1MiwgNTMsIDU0LCA1NSwgMiwgMiwgNTYsIDU3LCA1OCwgMiwgMiwgNTksIDYwLCA2MSwgCi0gICAgNjIsIDYzLCA2MywgMiwgMiwgMiwgMiwgNjQsIDIsIDY1LCA2NiwgNjcsIDY4LCA2OSwgMiwgMiwgMiwgMiwgNzAsIDcxLCAKLSAgICA3MiwgNzMsIDc0LCA3NSwgNzYsIDc3LCA3OCwgMiwgMiwgMiwgMiwgMiwgMiwgNzksIDIsIDIsIDIsIDIsIDIsIDgwLCAyLCAKKyAgICAwLCAxLCAyLCAyLCAzLCA0LCA1LCA2LCAyLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMTcsIDE4LCAKKyAgICAxOSwgMjAsIDIxLCAyMiwgMjMsIDI0LCAyLCAyLCAyNSwgMjYsIDI3LCAyOCwgMjksIDMwLCAzMSwgMzIsIDMzLCAzNCwgMzUsIAorICAgIDM2LCAyLCAyLCAyLCAzNywgMzgsIDIsIDM5LCA0MCwgNDEsIDQyLCA0MywgNDQsIDQ1LCA0NiwgNDcsIDQ4LCA0OSwgNTAsIAorICAgIDUxLCAyLCA1MiwgMiwgMiwgNTMsIDU0LCA1NSwgNTYsIDU3LCAyLCAyLCA1OCwgNTksIDYwLCAyLCAyLCA2MSwgNjIsIDYzLCAKKyAgICA2NCwgNjUsIDY1LCAyLCAyLCAyLCAyLCA2NiwgMiwgNjcsIDY4LCA2OSwgNzAsIDcxLCAyLCAyLCAyLCA3MiwgNzMsIDc0LCAKKyAgICA3NSwgNzYsIDc3LCA3OCwgNzksIDgwLCA4MSwgMiwgMiwgMiwgMiwgMiwgMiwgODIsIDIsIDIsIDIsIDIsIDIsIDgzLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKLSAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCA4MSwgMiwgODIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDgzLCAKLSAgICA4NCwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgODUsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDg2LCA4NywgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgODQsIDIsIDg1LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCA4NiwgCisgICAgODcsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDg4LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCA4OSwgOTAsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAotICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDg4LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKKyAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCA5MSwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgODksIDIsIDIsIDIsIDIsIAotICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDkwLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKLSAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCA5MSwgOTIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDkzLCA0OCwgNDgsIAotICAgIDk0LCA5NSwgNDgsIDk2LCA5NywgOTgsIDk5LCAxMDAsIDEwMSwgMTAyLCAxMDMsIDEwNCwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMTA1LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKKyAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCA5MiwgMiwgMiwgMiwgMiwgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgOTMsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAorICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDk0LCA5NSwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgOTYsIDUwLCA1MCwgCisgICAgOTcsIDk4LCA1MCwgOTksIDEwMCwgMTAxLCAxMDIsIDEwMywgMTA0LCAxMDUsIDEwNiwgMTA3LCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKLSAgICAyLCAyLCAyLCAxMDYsIDEwNywgMTA4LCAxMDksIDExMCwgMTExLCAyLCAyLCAyLCAxMTIsIDExMywgMiwgMTE0LCAxMTUsIAotICAgIDExNiwgMTE3LCAxMTgsIDExOSwgMiwgMTIwLCAxMjEsIDEyMiwgMTIzLCAxMjQsIDIsIDIsIDIsIDIsIDIsIDIsIDEyNSwgMiwgCi0gICAgMTI2LCAyLCAxMjcsIDIsIDEyOCwgMiwgMTI5LCAyLCAyLCAyLCAxMzAsIDIsIDIsIDIsIDEzMSwgMTMyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKLSAgICAyLCAyLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAxMzMsIDIsIDEzNCwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKLSAgICAxMzUsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAorICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDEwOCwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCisgICAgMiwgMiwgMiwgMiwgMTA5LCAxMTAsIDExMSwgMTEyLCAxMTMsIDExNCwgMiwgMiwgMiwgMTE1LCAxMTYsIDIsIDExNywgMTE4LCAKKyAgICAxMTksIDEyMCwgMTIxLCAxMjIsIDIsIDEyMywgMTI0LCAxMjUsIDEyNiwgMTI3LCAyLCAyLCAyLCAyLCAyLCAyLCAxMjgsIDIsIAorICAgIDEyOSwgMTMwLCAxMzEsIDIsIDEzMiwgMiwgMTMzLCAyLCAyLCAyLCAxMzQsIDIsIDIsIDIsIDEzNSwgMTM2LCAxMzcsIDEzOCwgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMTM5LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKKyAgICAyLCAyLCAyLCAyLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNDAsIDIsIDE0MSwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAorICAgIDUwLCAxNDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAotICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDQ4LCA0OCwgNDgsIDQ4LCAxMzYsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAorICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDUwLCA1MCwgNTAsIDUwLCAxNDMsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAorICAgIDIsIDIsIDE0NCwgMTQ1LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKLSAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxMzcsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAorICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDE0NiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMTM4LCAyLCAxMzksIDIsIDE0MCwgMiwgMiwgMTQxLCAyLCAyLCAyLCAxNDIsIDE0MywgMTQ0LCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKLSAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxNDUsIAotICAgIDE0NiwgMTQ3LCAxNDgsIDE0OSwgMiwgMTUwLCAxNTEsIDE1MiwgMTUzLCAxNTQsIDE1NSwgMTU2LCAxMzksIDE1NywgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMTU4LCAxNTksIDkwLCAyLCAyLCAyLCAyLCAyLCAKLSAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCA3OSwgMTYwLCAyLCAxNjEsIDE2MiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMTQ3LCAyLCAxNDgsIDIsIDE0OSwgMiwgMiwgMTUwLCAyLCAyLCAyLCAxNTEsIDE1MiwgCisgICAgMTUzLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKKyAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxNTQsIDE1NSwgCisgICAgMiwgMiwgMTU2LCAxNTcsIDE1OCwgMTU5LCAxNjAsIDIsIDE2MSwgMTYyLCAxNjMsIDE2NCwgMTY1LCAxNjYsIDE2NywgMTQ4LCAKKyAgICAxNjgsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDE2OSwgMTcwLCA5MywgMiwgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgODIsIDE3MSwgMiwgMTcyLCAxNzMsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAotICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDE2MywgMiwgMiwgMiwgMiwgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMiwgMTY0LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKLSAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxNjUsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAorICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDE3NCwgMiwgMiwgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMTc1LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKKyAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxNzYsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAotICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDE2NiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCisgICAgMiwgMiwgMTc3LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKLSAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKLSAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCAKLSAgICA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDE2NywgNDgsIDE2OCwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgNTAsIDUwLCA1MCwgCisgICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCisgICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzgsIDUwLCAxNzksIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAotICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDE2MywgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCisgICAgMiwgMiwgMiwgMTc0LCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKICAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAKQEAgLTUzODYsNyArNTUwNSw3IEBACiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCi0gICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgNDgsIDE2OSwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgNTAsIDE4MCwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCiAgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgCkBAIC01NDUwLDcgKzU1NjksNyBAQAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAotICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAorICAgIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIAogfTsKIAogc3RhdGljIHVuc2lnbmVkIGNoYXIgY2hhbmdlc18zXzJfMF9kYXRhW10gPSB7CkBAIC01NDYwLDggKzU1NzksOSBAQAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMsIAorICAgIDAsIDAsIDQsIDAsIDAsIDUsIDAsIDAsIDAsIDAsIDYsIDcsIDAsIDAsIDMsIDAsIDAsIDgsIDQsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDMsIDAsIDAsIDAsIDAsIDQsIDUsIDAsIDAsIDAsIDAsIDAsIDYsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIApAQCAtNTQ3MCw4NDggKzU1OTAsOTA2IEBACiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTAsIDEwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAxMCwgMTAsIDEwLCAxMCwgMTAsIDEwLCAxMCwgMTAsIDEwLCAxMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTAsIAorICAgIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDEwLCAwLCA5LCA5LCAwLCAwLCAwLCA5LCA5LCAKKyAgICA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA5LCAwLCA3LCA3LCAwLCAwLCAwLCA3LCA3LCA3LCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAxMSwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgOSwgMCwgOSwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgCisgICAgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMTAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDcsIDAsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyLCAxMywgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExLCAxMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIAorICAgIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDcsIDAsIDAsIDAsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDksIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIDAsIDAsIAorICAgIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDE0LCAxNSwgMTYsIDE3LCAxOCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgNywgMCwgNywgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTUsIDE2LCAxNywgMTgsIDE5LCAwLCAwLCA5LCAKKyAgICAwLCAwLCAwLCAwLCAwLCA5LCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCAwLCAKLSAgICAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDIwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNywgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgCi0gICAgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgMCwgMCwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjAsIDIwLCAyMCwgMjAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIAotICAgIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDcsIDAsIDAsIDAsIDAsIDAsIDcsIDAsIDAsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIAotICAgIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDIxLCAyMSwgMjEsIDIxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA3LCA3LCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAKKyAgICAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCAwLCAwLCAwLCAwLCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAKKyAgICAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCAKKyAgICAwLCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAKKyAgICA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMiwgMjMsIAorICAgIDI0LCAyNSwgMjYsIDI3LCAyOCwgMjksIDMwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMCwgMjAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDIxLCAyMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzAsIDMwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzEsIDMxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAzMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgCi0gICAgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgMCwgMCwgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgMCwgMCwgMCwgMCwgMCwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgOSwgCisgICAgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgOSwgCisgICAgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgCi0gICAgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDMzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAzNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgMCwgNywgNywgNywgCi0gICAgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzUsIDgsIDAsIAotICAgIDAsIDM2LCAzNywgMzgsIDM5LCA0MCwgNDEsIDEsIDEsIDAsIDAsIDAsIDgsIDM1LCA2LCA0LCA1LCAzNiwgMzcsIDM4LCAzOSwgCi0gICAgNDAsIDQxLCAxLCAxLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA0MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzNCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzUsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIAorICAgIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM2LCA0LCAwLCAwLCAzNywgMzgsIDM5LCA0MCwgCisgICAgNDEsIDQyLCAxLCAxLCAwLCAwLCAwLCA0LCAzNiwgOCwgNiwgNywgMzcsIDM4LCAzOSwgNDAsIDQxLCA0MiwgMSwgMSwgMCwgCisgICAgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDQsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIAorICAgIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQzLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA0NCwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNDUsIDQ2LCAxMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDUsIAorICAgIDQ2LCAxMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAKKyAgICAwLCAwLCAwLCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCiAgICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgCi0gICAgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA0NywgNDcsIDQ3LCA0NywgNDcsIDQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDcsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDAsIDcsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDAsIDcsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDksIDAsIDksIDAsIDAsIDAsIDAsIDksIDksIDksIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIAorICAgIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIDAsIDcsIDcsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIAorICAgIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgMzUsIDM1LCAzNSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgCisgICAgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCA5LCAwLCAwLCAwLCAwLCAwLCA5LCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0OCwgNDgsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDQ4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA0OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTksIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDksIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MSwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDUxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgMCwgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgNywgNywgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgNywgNywgNywgNywgNywgNywgMCwgMCwgNywgNywgNywgNywgNywgNywgMCwgMCwgNywgNywgNywgNywgNywgNywgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgMCwgNywgNywgNywgNywgNywgNywgNywgMCwgCisgICAgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAwLCAwLCAwLCAwLCAKLSAgICAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAwLCAxOCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDAsIDAsIDAsIDEsIDEsIDIwLCAyMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMSwgMCwgMSwgMCwgMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDgsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDEzLCAxMywgMTMsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIAotICAgIDcsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIAorICAgIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIAorICAgIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIAorICAgIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDAsIDAsIDksIDksIDksIDksIDksIDksIDAsIDAsIDksIDksIDksIDksIDksIAorICAgIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDAsIDksIDksIDksIDksIDksIDksIAorICAgIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUyLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAKKyAgICAwLCAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgNywgMCwgMCwgNywgMCwgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgNywgNywgMCwgMCwgMCwgNywgCi0gICAgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgMCwgCi0gICAgMCwgMCwgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgNywgCi0gICAgNywgNywgNywgNywgNywgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAxOSwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIAotICAgIDcsIDcsIDcsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIAorICAgIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDAsIDAsIDAsIDEsIDEsIDIxLCAyMSwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMSwgMCwgMSwgMCwgMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgNDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDE0LCAxNCwgMTQsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDAsIDksIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUzLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUzLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA1MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTMsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDAsIDAsIDksIDAsIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDksIDksIDAsIDAsIAorICAgIDAsIDksIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDAsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDAsIDcsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIDcsIDcsIDcsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDAsIDksIDksIDAsIDAsIDAsIDAsIAorICAgIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDksIDksIDksIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDksIDksIDksIAorICAgIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDcsIDcsIDcsIDAsIDcsIDAsIDcsIDAsIDcsIDAsIDcsIAotICAgIDcsIDcsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDAsIDcsIDAsIDAsIDcsIDcsIDcsIDcsIDAsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIDksIAorICAgIDksIDksIDksIDksIDksIDksIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDksIDksIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDU0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTQsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDU0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgCisgICAgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgMCwgOSwgMCwgMCwgOSwgMCwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgMCwgOSwgMCwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgCisgICAgMCwgMCwgMCwgMCwgOSwgMCwgOSwgMCwgOSwgMCwgOSwgOSwgOSwgMCwgOSwgOSwgMCwgOSwgMCwgMCwgOSwgMCwgOSwgMCwgCisgICAgOSwgMCwgOSwgMCwgOSwgMCwgOSwgOSwgMCwgOSwgMCwgMCwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgMCwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgMCwgOSwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgCisgICAgOSwgMCwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgOSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgMCwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgCisgICAgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCkBAIC02MzE5LDI1ICs2NDk3LDI1IEBACiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCkBAIC02MzQ2LDI0ICs2NTI0LDI0IEBACiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIDcsIAotICAgIDcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAKLSAgICA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCA3LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAKKyAgICA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAKIH07CiAKIHN0YXRpYyBjb25zdCBjaGFuZ2VfcmVjb3JkKiBnZXRfY2hhbmdlXzNfMl8wKFB5X1VDUzQgbikKZGlmZiAtLWdpdCBhL01vZHVsZXMvdW5pY29kZW5hbWVfZGIuaCBiL01vZHVsZXMvdW5pY29kZW5hbWVfZGIuaAppbmRleCA4ODMwNTYwLi4zODM4ODgyIDEwMDY0NAotLS0gYS9Nb2R1bGVzL3VuaWNvZGVuYW1lX2RiLmgKKysrIGIvTW9kdWxlcy91bmljb2RlbmFtZV9kYi5oCkBAIC00LDMzNyArNCw0MjggQEAKIAogLyogbGV4aWNvbiAqLwogc3RhdGljIHVuc2lnbmVkIGNoYXIgbGV4aWNvbltdID0gewotICAgIDc2LCA2OSwgODQsIDg0LCA2OSwgMjEwLCA4NywgNzMsIDg0LCAyMDAsIDgzLCA3NywgNjUsIDc2LCAyMDQsIDgzLCA4OSwgCi0gICAgNzYsIDc2LCA2NSwgNjYsIDc2LCAxOTcsIDgzLCA3MywgNzEsIDIwNiwgNjcsIDY1LCA4MCwgNzMsIDg0LCA2NSwgMjA0LCAKLSAgICA3NiwgNjUsIDg0LCA3MywgMjA2LCA4OSwgMjAxLCA2NywgNzQsIDIwMywgNjksIDcxLCA4OSwgODAsIDg0LCA3MywgNjUsIAotICAgIDIwNiwgNzIsIDczLCA2OSwgODIsIDc5LCA3MSwgNzYsIDg5LCA4MCwgMjAwLCA2NSwgODIsIDY1LCA2NiwgNzMsIDE5NSwgCi0gICAgNjcsIDc5LCA3NywgODAsIDY1LCA4NCwgNzMsIDY2LCA3MywgNzYsIDczLCA4NCwgMjE3LCA3NywgNjUsIDg0LCA3MiwgNjksIAotICAgIDc3LCA2NSwgODQsIDczLCA2NywgNjUsIDIwNCwgNjcsIDg1LCA3OCwgNjksIDczLCA3MCwgNzksIDgyLCAyMDUsIDgzLCA4OSwgCi0gICAgNzcsIDY2LCA3OSwgMjA0LCA3MCwgNzksIDgyLCA3NywgMTI4LCA2NywgNjUsIDc4LCA2NSwgNjgsIDczLCA2NSwgMjA2LCAKLSAgICA4MywgODksIDc2LCA3NiwgNjUsIDY2LCA3MywgNjcsIDIxMSwgNjYsIDY1LCA3NywgODUsIDIwNSwgNjgsIDczLCA3MSwgNzMsIAotICAgIDIxMiwgNjYsIDc5LCA3NiwgMTk2LCA3MiwgNjUsIDc4LCA3MSwgODUsIDIwNCwgNjUsIDc4LCAxOTYsIDcxLCA4MiwgNjksIAotICAgIDY5LCAyMDMsIDc2LCA3MywgNzEsIDY1LCA4NCwgODUsIDgyLCAxOTcsIDc3LCA4NSwgODMsIDczLCA2NywgNjUsIDIwNCwgCi0gICAgNjksIDg0LCA3MiwgNzMsIDc5LCA4MCwgNzMsIDE5NSwgODQsIDczLCA3NywgNjksIDIxMSwgODYsIDc5LCA4NywgNjksIAotICAgIDIwNCwgNzAsIDc5LCAyMTAsIDczLCA4NCwgNjUsIDc2LCA3MywgMTk1LCA2NywgODksIDgyLCA3MywgNzYsIDc2LCA3MywgCisgICAgNzYsIDY5LCA4NCwgODQsIDY5LCAyMTAsIDg3LCA3MywgODQsIDIwMCwgODMsIDg5LCA3NiwgNzYsIDY1LCA2NiwgNzYsIAorICAgIDE5NywgODMsIDc3LCA2NSwgNzYsIDIwNCwgODMsIDczLCA3MSwgMjA2LCA2NywgNjUsIDgwLCA3MywgODQsIDY1LCAyMDQsIAorICAgIDc2LCA2NSwgODQsIDczLCAyMDYsIDg5LCAyMDEsIDY3LCA3NCwgMjAzLCA2NSwgODIsIDY1LCA2NiwgNzMsIDE5NSwgNzcsIAorICAgIDY1LCA4NCwgNzIsIDY5LCA3NywgNjUsIDg0LCA3MywgNjcsIDY1LCAyMDQsIDY5LCA3MSwgODksIDgwLCA4NCwgNzMsIDY1LCAKKyAgICAyMDYsIDcyLCA3MywgNjksIDgyLCA3OSwgNzEsIDc2LCA4OSwgODAsIDIwMCwgNjcsIDc5LCA3NywgODAsIDY1LCA4NCwgNzMsIAorICAgIDY2LCA3MywgNzYsIDczLCA4NCwgMjE3LCA2NywgODUsIDc4LCA2OSwgNzMsIDcwLCA3OSwgODIsIDIwNSwgODMsIDg5LCA3NywgCisgICAgNjYsIDc5LCAyMDQsIDcwLCA3OSwgODIsIDc3LCAxMjgsIDY3LCA2NSwgNzgsIDY1LCA2OCwgNzMsIDY1LCAyMDYsIDgzLCAKKyAgICA4OSwgNzYsIDc2LCA2NSwgNjYsIDczLCA2NywgMjExLCA2NiwgNjUsIDc3LCA4NSwgMjA1LCA2OCwgNzMsIDcxLCA3MywgCisgICAgMjEyLCA2NSwgNzgsIDE5NiwgNjYsIDc5LCA3NiwgMTk2LCA3MiwgNjUsIDc4LCA3MSwgODUsIDIwNCwgODYsIDc5LCA4NywgCisgICAgNjksIDIwNCwgNzEsIDgyLCA2OSwgNjksIDIwMywgNzYsIDczLCA3MSwgNjUsIDg0LCA4NSwgODIsIDE5NywgNzcsIDg1LCAKKyAgICA4MywgNzMsIDY3LCA2NSwgMjA0LCA2OSwgODQsIDcyLCA3MywgNzksIDgwLCA3MywgMTk1LCA4NCwgNzMsIDc3LCA2OSwgCisgICAgMjExLCA3MCwgNzksIDIxMCwgNzMsIDg0LCA2NSwgNzYsIDczLCAxOTUsIDY3LCA4OSwgODIsIDczLCA3NiwgNzYsIDczLCAKICAgICAxOTUsIDgyLCA2NSwgNjgsIDczLCA2NywgNjUsIDIwNCwgODMsIDY1LCA3OCwgODMsIDQ1LCA4MywgNjksIDgyLCA3MywgCi0gICAgMTk4LCA2NywgNzMsIDgyLCA2NywgNzYsIDY5LCAxOTYsIDY3LCA3OSwgNzcsIDY2LCA3MywgNzgsIDczLCA3OCwgMTk5LCAKLSAgICA4NCwgNjUsIDIwMSwgODYsIDY1LCAyMDEsIDcwLCA3MywgNzgsIDY1LCAyMDQsIDgzLCA4MSwgODUsIDY1LCA4MiwgMTk3LCAKLSAgICA3NiwgNjksIDcwLCAyMTIsIDg2LCA2NSwgODIsIDczLCA2NSwgODQsIDczLCA3OSwgMjA2LCA2NiwgODIsIDY1LCA3MywgNzYsIAotICAgIDc2LCAxOTcsIDgwLCA2NSwgODQsIDg0LCA2OSwgODIsIDIwNiwgODIsIDczLCA3MSwgNzIsIDIxMiwgNjYsIDg5LCA5MCwgCi0gICAgNjUsIDc4LCA4NCwgNzMsIDc4LCAxOTcsIDczLCA4MywgNzksIDc2LCA2NSwgODQsIDY5LCAxOTYsIDY1LCA2NiwgNzksIDg2LCAKLSAgICA2OSwgMTI4LCA3OCwgODUsIDc3LCA2NiwgNjksIDIxMCwgNjgsIDc5LCA4NSwgNjYsIDc2LCAxOTcsIDgzLCA3MywgNzEsIAotICAgIDc4LCAxMjgsIDE5NCwgNjYsIDY5LCA3NiwgNzksIDg3LCAxMjgsIDc1LCA2NSwgODQsIDY1LCA3NSwgNjUsIDc4LCAxOTMsIAotICAgIDc1LCA2NSwgNzgsIDcxLCA4OCwgMjAxLCA3NiwgNzMsIDc4LCA2OSwgNjUsIDIxMCwgNzcsIDc5LCA2OCwgNzMsIDcwLCA3MywgCi0gICAgNjksIDIxMCwgODQsIDczLCA2NiwgNjksIDg0LCA2NSwgMjA2LCA2NSwgMTI4LCA2OCwgNzksIDIxMiwgNzcsIDY5LCA2OSwgCi0gICAgMjA1LCA3NywgODksIDY1LCA3OCwgNzcsIDY1LCAyMTAsIDc5LCAxOTgsIDY3LCA2NSwgODIsIDgyLCA3MywgNjksIDIxMCwgCi0gICAgODcsIDcyLCA3MywgODQsIDE5NywgNjUsIDgyLCA4MiwgNzksIDg3LCAxMjgsIDg1LCAxMjgsIDczLCA3OCwgNzMsIDg0LCAKLSAgICA3MywgNjUsIDIwNCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDIwNCwgNzMsIDEyOCwgODksIDY5LCAyMDAsIDc5LCAKLSAgICAxMjgsIDY1LCA4MiwgODIsIDc5LCAyMTUsIDc3LCA2NSwgODIsIDc1LCAxMjgsIDY1LCA2NiwgNzksIDg2LCAxOTcsIDY3LCAKLSAgICA3OSwgODAsIDg0LCA3MywgMTk1LCA4MCwgNzIsIDY1LCA4MywgNjksIDQ1LCAxOTcsIDc3LCA3OSwgNzgsIDcxLCA3OSwgNzYsIAotICAgIDczLCA2NSwgMjA2LCA2OCwgNjksIDg2LCA2NSwgNzgsIDY1LCA3MSwgNjUsIDgyLCAyMDEsIDY2LCA3NiwgNjUsIDY3LCAKLSAgICAyMDMsIDc1LCA3MiwgNzcsIDY5LCAyMTAsIDg0LCA3MywgNzYsIDE5NywgODAsIDY1LCA4MiwgNjksIDc4LCA4NCwgNzIsIAotICAgIDY5LCA4MywgNzMsIDkwLCA2OSwgMTk2LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCAxMjgsIDg0LCA3MiwgNjUsIDIwNSwgCi0gICAgNzQsIDc5LCA3OCwgNzEsIDgzLCA2OSwgNzksIDc4LCAxOTksIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDEyOCwgODMsIDgxLCAKLSAgICA4NSwgNjUsIDgyLCA2OSwgMTk2LCA2NiwgNzksIDIxNiwgNzIsIDY5LCA2NiwgODIsIDY5LCAyMTUsIDgwLCA3NiwgODUsIAotICAgIDIxMSwgODIsIDczLCA3MSwgNzIsIDg0LCA4NywgNjUsIDgyLCA2OCwgMjExLCA2OCwgODIsIDY1LCA4NywgNzMsIDc4LCA3MSwgCisgICAgMTk4LCA4NCwgNjUsIDc3LCA3MywgMjA0LCA2NywgNzMsIDgyLCA2NywgNzYsIDY5LCAxOTYsIDY3LCA3OSwgNzcsIDY2LCAKKyAgICA3MywgNzgsIDczLCA3OCwgMTk5LCA4NCwgNjUsIDIwMSwgNzAsIDczLCA3OCwgNjUsIDIwNCwgODYsIDY1LCAyMDEsIDgzLCAKKyAgICA4MSwgODUsIDY1LCA4MiwgMTk3LCA3NiwgNjksIDcwLCAyMTIsIDgyLCA3MywgNzEsIDcyLCAyMTIsIDg2LCA2NSwgODIsIAorICAgIDczLCA2NSwgODQsIDczLCA3OSwgMjA2LCA2NiwgODIsIDY1LCA3MywgNzYsIDc2LCAxOTcsIDgwLCA2NSwgODQsIDg0LCA2OSwgCisgICAgODIsIDIwNiwgNjUsIDY2LCA3OSwgODYsIDY5LCAxMjgsIDY2LCA4OSwgOTAsIDY1LCA3OCwgODQsIDczLCA3OCwgMTk3LCAKKyAgICA4MywgNzMsIDcxLCA3OCwgMTI4LCA2NiwgNjksIDc2LCA3OSwgODcsIDEyOCwgNjgsIDc5LCA4NSwgNjYsIDc2LCAxOTcsIAorICAgIDczLCA4MywgNzksIDc2LCA2NSwgODQsIDY5LCAxOTYsIDc4LCA4NSwgNzcsIDY2LCA2OSwgMjEwLCA3NSwgNjUsIDg0LCA2NSwgCisgICAgNzUsIDY1LCA3OCwgMTkzLCAxOTQsIDc3LCA3OSwgNjgsIDczLCA3MCwgNzMsIDY5LCAyMTAsIDY4LCA3OSwgMjEyLCA3NSwgCisgICAgNjUsIDc4LCA3MSwgODgsIDIwMSwgNjUsIDEyOCwgNzYsIDczLCA3OCwgNjksIDY1LCAyMTAsIDg0LCA3MywgNjYsIDY5LCAKKyAgICA4NCwgNjUsIDIwNiwgNzksIDE5OCwgNzMsIDc4LCA3MywgODQsIDczLCA2NSwgMjA0LCA3NywgNjksIDY5LCAyMDUsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCAyMDQsIDc3LCA4OSwgNjUsIDc4LCA3NywgNjUsIDIxMCwgNzUsIDcyLCA3NywgNjksIAorICAgIDIxMCwgODUsIDEyOCwgODcsIDcyLCA3MywgODQsIDE5NywgNjcsIDY1LCA4MiwgODIsIDczLCA2OSwgMjEwLCA3MywgMTI4LCAKKyAgICA2NSwgODIsIDgyLCA3OSwgODcsIDEyOCwgNzksIDEyOCwgNjUsIDY2LCA3OSwgODYsIDE5NywgNzcsIDY1LCA4MiwgNzUsIAorICAgIDEyOCwgODksIDY5LCAyMDAsIDY1LCA4MiwgODIsIDc5LCAyMTUsIDY3LCA3OSwgODAsIDg0LCA3MywgMTk1LCA4MCwgNzIsIAorICAgIDY1LCA4MywgNjksIDQ1LCAxOTcsIDc3LCA3OSwgNzgsIDcxLCA3OSwgNzYsIDczLCA2NSwgMjA2LCA2OCwgNjksIDg2LCA2NSwgCisgICAgNzgsIDY1LCA3MSwgNjUsIDgyLCAyMDEsIDY2LCA3NiwgNjUsIDY3LCAyMDMsIDg0LCA3MywgNzYsIDE5NywgODMsIDg5LCAKKyAgICA3NywgNjYsIDc5LCA3NiwgMTI4LCA4MCwgNjUsIDgyLCA2OSwgNzgsIDg0LCA3MiwgNjksIDgzLCA3MywgOTAsIDY5LCAxOTYsIAorICAgIDg0LCA3MiwgNjUsIDIwNSwgNzQsIDc5LCA3OCwgNzEsIDgzLCA2OSwgNzksIDc4LCAxOTksIDgzLCA4NCwgODIsIDc5LCA3NSwgCisgICAgNjksIDEyOCwgODMsIDgxLCA4NSwgNjUsIDgyLCA2OSwgMTk2LCA2NiwgNzksIDIxNiwgNzIsIDY5LCA2NiwgODIsIDY5LCAKKyAgICAyMTUsIDc3LCA3MywgNjUsIDIwNywgODAsIDc2LCA4NSwgMjExLCA4MiwgNzMsIDcxLCA3MiwgODQsIDg3LCA2NSwgODIsIAorICAgIDY4LCAyMTEsIDcxLCA2OSwgNzksIDgyLCA3MSwgNzMsIDY1LCAyMDYsIDY4LCA4MiwgNjUsIDg3LCA3MywgNzgsIDcxLCAKICAgICAyMTEsIDY3LCA3MiwgNzksIDgzLCA2OSwgNzksIDc4LCAxOTksIDcyLCA2NSwgNzYsIDcwLCA4NywgNzMsIDY4LCA4NCwgCi0gICAgMjAwLCA2NiwgNjUsIDc2LCA3MywgNzgsIDY5LCA4MywgMTk3LCA3MSwgNjksIDc5LCA4MiwgNzEsIDczLCA2NSwgMjA2LCAKLSAgICA3MiwgNzksIDc5LCA3NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgMjA1LCA4MCwgNzIsIDY1LCA4MywgNjksIAotICAgIDQ1LCAxOTYsIDY1LCA3NiwgNjcsIDcyLCA2OSwgNzcsIDczLCA2NywgNjUsIDIwNCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNzMsIDE5NSwgNjUsIDc2LCA2OSwgMTk4LCA3MiwgNjksIDY1LCA4NiwgMjE3LCA4NCwgNzksIDEyOCwgCi0gICAgODQsIDg3LCA3OSwgMTI4LCA3OSwgODYsIDY5LCAyMTAsIDIxMywgNjYsIDgyLCA2NSwgNzIsIDc3LCAyMDEsIDgzLCA2NywgCi0gICAgODIsIDczLCA4MCwgMjEyLCA4NSwgMjA4LCA3NiwgNzksIDIxNSwgNzksIDc4LCA2OSwgMTI4LCA4NCwgODcsIDIwNywgNjgsIAotICAgIDc5LCA4NywgMjA2LCA3MCwgODUsIDc2LCA3NiwgODcsIDczLCA2OCwgODQsIDIwMCwgNzIsIDY1LCAyMDAsIDc5LCA3OCwgCi0gICAgMTk3LCA2OSwgODEsIDg1LCA2NSwgMjA0LCA3MiwgNzMsIDcxLCAyMDAsIDY2LCA4MiwgNjUsIDY3LCA3NSwgNjksIDg0LCAKLSAgICAxMjgsIDg0LCA2NSwgMTk5LCA2OCwgNzksIDc3LCA3MywgNzgsIDIwNywgNzgsIDg1LCA3NywgNjksIDgyLCA3MywgMTk1LCAKLSAgICA3MCwgODIsIDY1LCA3NSwgODQsIDg1LCAyMTAsIDc3LCA2NSwgNzYsIDY1LCA4OSwgNjUsIDc2LCA2NSwgMjA1LCA4MCwgNzIsIAotICAgIDY1LCA4MywgNjksIDQ1LCAxOTUsIDc2LCA2OSwgNzAsIDg0LCA4NywgNjUsIDgyLCA2OCwgMjExLCA4NCwgNzIsIDgyLCA2OSwgCi0gICAgMTk3LCA2NiwgNjUsIDgyLCAxMjgsIDc0LCA4NSwgNzgsIDcxLCA4MywgNjksIDc5LCA3OCwgMTk5LCA3MSwgNzYsIDY1LCAKLSAgICA3MSwgNzksIDc2LCA3MywgODQsIDczLCAxOTUsIDY3LCA3MiwgNjUsIDgyLCA2NSwgNjcsIDg0LCA2OSwgMjEwLCA3NywgNjksIAotICAgIDY4LCA3MywgNjUsIDIwNCwgODQsIDY5LCA3NiwgODUsIDcxLCAyMTMsIDY2LCA2OSwgNzgsIDcxLCA2NSwgNzYsIDIwMSwgCi0gICAgNjUsIDgyLCA3NywgNjksIDc4LCA3MywgNjUsIDIwNiwgNzIsIDczLCA4MiwgNjUsIDcxLCA2NSwgNzgsIDE5MywgNzMsIDY4LCAKLSAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAyMDAsIDc0LCA2NSwgODYsIDY1LCA3OCwgNjksIDgzLCAxOTcsIDc0LCA2OSwgNjksIAotICAgIDIwNSwgNzgsIDY5LCA3MSwgNjUsIDg0LCA3MywgODYsIDE5NywgNzksIDgyLCA3MywgODksIDE5MywgODcsIDY5LCA4MywgCi0gICAgODQsIDQ1LCA2NywgODIsIDY5LCAxOTcsIDcyLCA2NSwgNzYsIDE5OCwgNzcsIDY1LCA4MiwgMjAzLCA4MCwgNzIsIDY1LCAKLSAgICA4MywgNjksIDQ1LCAxOTMsIDg0LCA3MiwgNjUsIDIwMSwgNzUsIDY1LCA3OCwgNzgsIDY1LCA2OCwgMTkzLCA3OCwgNjksIAotICAgIDIxNSwgNjcsIDcyLCA2OSwgODIsIDc5LCA3NSwgNjksIDE5NywgNzIsIDY1LCAxMjgsIDg0LCA3OSwgNzgsIDE5NywgODYsIAotICAgIDc5LCA2NywgNjUsIDc2LCA3MywgMTk1LCA2NywgNzIsIDY1LCAyMDUsIDcwLCA3OSwgODUsIDgyLCAxMjgsIDcxLCA4NSwgCi0gICAgNzQsIDY1LCA4MiwgNjUsIDg0LCAyMDEsIDc2LCA4NSwgMTk3LCA4NCwgNzIsIDgyLCA2OSwgNjksIDEyOCwgODIsIDg1LCAKLSAgICA3OCwgNzMsIDE5NSwgODMsIDY1LCA4NSwgODIsIDY1LCA4MywgNzIsIDg0LCA4MiwgMTkzLCA4NCwgNjksIDg0LCA4MiwgNjUsIAotICAgIDcxLCA4MiwgNjUsIDIwNSwgNjgsIDY5LCA4MywgNjksIDgyLCA2OSwgMjEyLCA4MywgNzMsIDc4LCA3MiwgNjUsIDc2LCAKLSAgICAxOTMsIDcxLCA4NSwgODIsIDc3LCA4NSwgNzUsIDcyLCAyMDEsIDc4LCA3OSwgODQsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIAotICAgIDgzLCA4OSwgODIsIDczLCA2NSwgMTk1LCA2OCwgNzksIDg0LCAyMTEsIDc2LCA3MywgNzEsIDcyLCAyMTIsIDg0LCA2NSwgCi0gICAgNzcsIDczLCAyMDQsIDY1LCA2NywgODUsIDg0LCA2OSwgMTI4LCA3MCwgNzMsIDg2LCA2OSwgMTI4LCA3NSwgNjUsIDEyOCwgCi0gICAgNzYsIDY5LCA4MCwgNjcsIDcyLCAxOTMsIDc2LCA3OSwgNzgsIDE5OSwgODQsIDg1LCA4MiwgNzUsIDczLCAxOTUsIDg5LCAKLSAgICA2NSwgMTI4LCA2OCwgNzksIDg1LCA2NiwgNzYsIDY5LCA0NSwgODMsIDg0LCA4MiwgODUsIDY3LCAyMDMsIDc3LCA2NSwgCi0gICAgMTI4LCA4MywgNzMsIDg4LCAxMjgsIDg2LCA3MywgNjksIDIxMiwgNzIsIDY1LCA3NywgOTAsIDE5MywgODAsIDY1LCAxMjgsIAotICAgIDY1LCA4MCwgMjA0LCA2OSwgNzMsIDcxLCA3MiwgODQsIDEyOCwgNzAsIDg1LCA3OCwgNjcsIDg0LCA3MywgNzksIDc4LCA2NSwgCi0gICAgMjA0LCA4MywgMTI4LCA4MywgNjksIDg2LCA2OSwgNzgsIDEyOCwgNzIsIDc5LCA4MiwgNzMsIDkwLCA3OSwgNzgsIDg0LCAKLSAgICA2NSwgMjA0LCA3OCwgNzMsIDc4LCA2OSwgMTI4LCA4NCwgNjksIDc2LCA2OSwgNzEsIDgyLCA2NSwgODAsIDIwMCwgNjYsIAotICAgIDc5LCA4MCwgNzksIDc3LCA3OSwgNzAsIDIwNywgODIsIDY1LCAxMjgsIDc4LCA2NSwgMTI4LCA2NiwgNjUsIDgyLCAxOTQsIAotICAgIDY4LCA2NSwgODMsIDczLCAxOTMsIDc1LCA2NSwgNzMsIDg0LCA3MiwgMjAxLCA3NiwgNzMsIDc3LCA2NiwgMjEzLCA3NywgCi0gICAgNjUsIDc1LCA4MywgODUsIDgyLCAxOTMsIDg0LCAyMDcsIDkwLCA5MCwgODksIDg4LCAxMjgsIDkwLCA5MCwgODksIDg0LCAKLSAgICAxMjgsIDkwLCA5MCwgODksIDgyLCA4OCwgMTI4LCA5MCwgOTAsIDg5LCA4MiwgMTI4LCA5MCwgOTAsIDg5LCA4MCwgMTI4LCAKLSAgICA5MCwgOTAsIDg5LCAxMjgsIDkwLCA5MCwgODUsIDg4LCAxMjgsIDkwLCA5MCwgODUsIDgyLCA4OCwgMTI4LCA5MCwgOTAsIAotICAgIDg1LCA4MiwgMTI4LCA5MCwgOTAsIDg1LCA4MCwgMTI4LCA5MCwgOTAsIDg1LCAxMjgsIDkwLCA5MCwgNzksIDg4LCAxMjgsIAotICAgIDkwLCA5MCwgNzksIDgwLCAxMjgsIDkwLCA5MCwgNzksIDEyOCwgOTAsIDkwLCA3MywgODgsIDEyOCwgOTAsIDkwLCA3MywgCi0gICAgODQsIDEyOCwgOTAsIDkwLCA3MywgODAsIDEyOCwgOTAsIDkwLCA3MywgNjksIDg4LCAxMjgsIDkwLCA5MCwgNzMsIDY5LCAKLSAgICA4NCwgMTI4LCA5MCwgOTAsIDczLCA2OSwgODAsIDEyOCwgOTAsIDkwLCA3MywgNjksIDEyOCwgOTAsIDkwLCA3MywgMTI4LCAKLSAgICA5MCwgOTAsIDY5LCA4OCwgMTI4LCA5MCwgOTAsIDY5LCA4MCwgMTI4LCA5MCwgOTAsIDY5LCA2OSwgMTI4LCA5MCwgOTAsIAotICAgIDY5LCAxMjgsIDkwLCA5MCwgNjUsIDg4LCAxMjgsIDkwLCA5MCwgNjUsIDg0LCAxMjgsIDkwLCA5MCwgNjUsIDgwLCAxMjgsIAotICAgIDkwLCA5MCwgNjUsIDY1LCAxMjgsIDkwLCA5MCwgNjUsIDEyOCwgOTAsIDg5LCA3MSwgNzksIDgzLCAxMjgsIDkwLCA4NywgCi0gICAgNjUsIDgyLCA2NSwgNzUsIDY1LCA4OSwgMTI4LCA5MCwgODcsIDY1LCAxMjgsIDkwLCA4NSwgODQsIDEyOCwgOTAsIDg1LCAKLSAgICA3OSwgODgsIDEyOCwgOTAsIDg1LCA3OSwgODAsIDEyOCwgOTAsIDg1LCA3OSwgMTI4LCA5MCwgODUsIDc3LCAxMjgsIDkwLCAKLSAgICA4NSwgNjYsIDg1LCA4MiwgMTI4LCA5MCwgODUsIDUzLCAxMjgsIDkwLCA4NSwgMTgxLCA5MCwgODIsIDY1LCAxMjgsIDkwLCAKLSAgICA4MSwgNjUsIDgwLCA3MiwgMTkzLCA5MCwgNzksIDg0LCAxMjgsIDkwLCA3OSwgNzksIDEyOCwgOTAsIDc5LCA2NSwgMTI4LCAKLSAgICA5MCwgNzYsIDY1LCA3NywgMTkzLCA5MCwgNzYsIDY1LCAxMjgsIDkwLCA3NiwgMTkzLCA5MCwgNzQsIDY5LCAxMjgsIDkwLCAKLSAgICA3MywgOTAsIDUwLCAxMjgsIDkwLCA3MywgODEsIDY1LCA2NSwgMTI4LCA5MCwgNzMsIDc4LCA3OSwgODIsIDEyOCwgOTAsIAotICAgIDczLCA3NiwgNjgsIDY5LCAxMjgsIDkwLCA3MywgNzEsIDkwLCA2NSwgMTk5LCA5MCwgNzMsIDcxLCAxMjgsIDkwLCA3MywgCi0gICAgNjgsIDE5MywgOTAsIDczLCA2NiwgMTI4LCA5MCwgNzMsIDE5NCwgOTAsIDczLCA1MSwgMTI4LCA5MCwgMjAxLCA5MCwgNzIsIAotICAgIDg5LCA4OCwgMTI4LCA5MCwgNzIsIDg5LCA4NCwgMTI4LCA5MCwgNzIsIDg5LCA4MiwgODgsIDEyOCwgOTAsIDcyLCA4OSwgCi0gICAgODIsIDEyOCwgOTAsIDcyLCA4OSwgODAsIDEyOCwgOTAsIDcyLCA4OSwgMTI4LCA5MCwgNzIsIDg3LCA2OSwgMTI4LCA5MCwgCi0gICAgNzIsIDg3LCA2NSwgMTI4LCA5MCwgNzIsIDg1LCA4OCwgMTI4LCA5MCwgNzIsIDg1LCA4NCwgMTI4LCA5MCwgNzIsIDg1LCAKLSAgICA4MiwgODgsIDEyOCwgOTAsIDcyLCA4NSwgODIsIDEyOCwgOTAsIDcyLCA4NSwgODAsIDEyOCwgOTAsIDcyLCA4NSwgNzksIAotICAgIDg4LCAxMjgsIDkwLCA3MiwgODUsIDc5LCA4MCwgMTI4LCA5MCwgNzIsIDg1LCA3OSwgMTI4LCA5MCwgNzIsIDg1LCAxMjgsIAotICAgIDkwLCA3MiwgNzksIDg4LCAxMjgsIDkwLCA3MiwgNzksIDg0LCAxMjgsIDkwLCA3MiwgNzksIDgwLCAxMjgsIDkwLCA3MiwgCi0gICAgNzksIDc5LCAxMjgsIDkwLCA3MiwgNzksIDEyOCwgOTAsIDcyLCA3MywgODYsIDY5LCA4NCwgNjksIDEyOCwgOTAsIDcyLCAKLSAgICA3MywgMTI4LCA5MCwgNzIsIDY5LCA4OCwgMTI4LCA5MCwgNzIsIDY5LCA4NCwgMTI4LCA5MCwgNzIsIDY5LCA4MCwgMTI4LCAKLSAgICA5MCwgNzIsIDY5LCA2OSwgMTI4LCA5MCwgNzIsIDY5LCAxMjgsIDkwLCA3MiwgMTk3LCA5MCwgNzIsIDY1LCA4OCwgMTI4LCAKLSAgICA5MCwgNzIsIDY1LCA4NCwgMTI4LCA5MCwgNzIsIDY1LCA4MiwgMTI4LCA5MCwgNzIsIDY1LCA4MCwgMTI4LCA5MCwgNzIsIAotICAgIDY1LCA3MywgNzgsIDEyOCwgOTAsIDcyLCA2NSwgNjUsIDEyOCwgOTAsIDcyLCA2NSwgMTI4LCA5MCwgNzIsIDEyOCwgOTAsIAotICAgIDY5LCA4NCwgNjUsIDEyOCwgOTAsIDY5LCA4MiwgNzksIDEyOCwgOTAsIDY5LCA4MiwgMjA3LCA5MCwgNjksIDc4LCAxMjgsIAotICAgIDkwLCA2OSwgNzcsIDc2LCA4OSwgNjUsIDEyOCwgOTAsIDY5LCA3NywgNzYsIDc0LCA2NSwgMTI4LCA5MCwgNjksIDUwLCAKLSAgICAxMjgsIDkwLCAxOTcsIDkwLCA2NSwgODksIDc4LCAxMjgsIDkwLCA2NSwgODksIDczLCA3OCwgMTI4LCA5MCwgNjUsIDg5LCAKLSAgICA3MywgMjA2LCA5MCwgNjUsIDg2LCA3MywgODksIDY1LCA3OCwgNzMsIDEyOCwgOTAsIDY1LCA4NCwgNjUsIDEyOCwgOTAsIAotICAgIDY1LCA4MiwgODEsIDY1LCAxMjgsIDkwLCA2NSwgODEsIDY5LCAxOTgsIDkwLCA2NSwgNzcsIDg4LCAxMjgsIDkwLCA2NSwgCi0gICAgMjA0LCA5MCwgNjUsIDczLCA3OCwgMTI4LCA5MCwgNjUsIDczLCAyMDYsIDkwLCA2NSwgNzMsIDEyOCwgOTAsIDY1LCA3MiwgCi0gICAgMTI4LCA5MCwgNjUsIDIwMCwgOTAsIDY1LCA3MSwgMTI4LCA5MCwgNjUsIDY5LCA3MCwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgCi0gICAgNzIsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDcxLCAxMjgsIDkwLCA0OCwgNDksIDU0LCA3MCwgMTI4LCA5MCwgNDgsIDQ5LCAKLSAgICA1NCwgNjksIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDY4LCAxMjgsIDkwLCA0OCwgNDksIDU0LCA2NywgMTI4LCA5MCwgNDgsIAotICAgIDQ5LCA1NCwgNjYsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDY1LCAxMjgsIDkwLCA0OCwgNDksIDU0LCAxMjgsIDkwLCA0OCwgCi0gICAgNDksIDUzLCA3MywgMTI4LCA5MCwgNDgsIDQ5LCA1MywgNzIsIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDcxLCAxMjgsIDkwLCAKLSAgICA0OCwgNDksIDUzLCA3MCwgMTI4LCA5MCwgNDgsIDQ5LCA1MywgNjksIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDY4LCAxMjgsIAotICAgIDkwLCA0OCwgNDksIDUzLCA2NywgMTI4LCA5MCwgNDgsIDQ5LCA1MywgNjYsIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDY1LCAKLSAgICAxMjgsIDkwLCA0OCwgNDksIDUzLCAxMjgsIDkwLCA0OCwgNDksIDUyLCAxMjgsIDkwLCA0OCwgNDksIDUxLCAxMjgsIDkwLCAKLSAgICA0OCwgNDksIDUwLCAxMjgsIDkwLCA0OCwgNDksIDQ5LCAxMjgsIDkwLCA0OCwgNDksIDQ4LCAxMjgsIDkwLCA0OCwgNDgsIAotICAgIDU3LCAxMjgsIDkwLCA0OCwgNDgsIDU2LCAxMjgsIDkwLCA0OCwgNDgsIDU1LCAxMjgsIDkwLCA0OCwgNDgsIDU0LCAxMjgsIAotICAgIDkwLCA0OCwgNDgsIDUzLCA2NSwgMTI4LCA5MCwgNDgsIDQ4LCA1MywgMTI4LCA5MCwgNDgsIDQ4LCA1MiwgNjUsIDEyOCwgCi0gICAgOTAsIDQ4LCA0OCwgNTIsIDEyOCwgOTAsIDQ4LCA0OCwgNTEsIDY2LCAxMjgsIDkwLCA0OCwgNDgsIDUxLCA2NSwgMTI4LCAKLSAgICA5MCwgNDgsIDQ4LCA1MSwgMTI4LCA5MCwgNDgsIDQ4LCA1MCwgNjgsIDEyOCwgOTAsIDQ4LCA0OCwgNTAsIDY3LCAxMjgsIAotICAgIDkwLCA0OCwgNDgsIDUwLCA2NiwgMTI4LCA5MCwgNDgsIDQ4LCA1MCwgNjUsIDEyOCwgOTAsIDQ4LCA0OCwgNTAsIDEyOCwgCi0gICAgOTAsIDQ4LCA0OCwgNDksIDEyOCwgOTAsIDEyOCwgMjE4LCA4OSwgODksIDg4LCAxMjgsIDg5LCA4OSwgODQsIDEyOCwgODksIAotICAgIDg5LCA4MiwgODgsIDEyOCwgODksIDg5LCA4MiwgMTI4LCA4OSwgODksIDgwLCAxMjgsIDg5LCA4OSwgNjksIDEyOCwgODksIAotICAgIDg5LCA2NSwgMTI4LCA4OSwgODksIDEyOCwgODksIDg3LCA3OSwgNzksIDEyOCwgODksIDg3LCA3OSwgMTI4LCA4OSwgODcsIAotICAgIDczLCA3MywgMTI4LCA4OSwgODcsIDczLCAxMjgsIDg5LCA4NywgNjksIDEyOCwgODksIDg3LCA2NSwgNjUsIDEyOCwgODksIAotICAgIDg3LCA2NSwgMTI4LCA4OSwgODYsIDEyOCwgODksIDg1LCA4OCwgMTI4LCA4OSwgODUsIDg3LCA3OSwgODEsIDEyOCwgODksIAotICAgIDg1LCA4NSwgNzUsIDY1LCA3NiwgNjksIDY1LCA4MCwgNzMsIDc4LCA4NCwgODUsIDEyOCwgODksIDg1LCA4NCwgMTI4LCA4OSwgCi0gICAgODUsIDgzLCAxMjgsIDg5LCA4NSwgMjExLCA4OSwgODUsIDgyLCA4OCwgMTI4LCA4OSwgODUsIDgyLCAxMjgsIDg5LCA4NSwgCi0gICAgODEsIDEyOCwgODksIDg1LCAyMDksIDg5LCA4NSwgODAsIDEyOCwgODksIDg1LCA3OSwgODgsIDEyOCwgODksIDg1LCA3OSwgCi0gICAgODQsIDEyOCwgODksIDg1LCA3OSwgODAsIDEyOCwgODksIDg1LCA3OSwgNzcsIDEyOCwgODksIDg1LCA3OSwgMTI4LCA4OSwgCi0gICAgODUsIDc4LCAxMjgsIDg5LCA4NSwgNzcsIDEyOCwgODksIDg1LCA2OSwgODEsIDEyOCwgODksIDg1LCA2OSwgMTI4LCA4OSwgCi0gICAgODUsIDY4LCA3MiwgMTI4LCA4OSwgODUsIDY4LCAyMDAsIDg5LCA4NSwgNjUsIDc4LCAxMjgsIDg5LCA4NSwgNjUsIDY5LCAKLSAgICA3OCwgMTI4LCA4OSwgODUsIDQ1LCA4OSwgNjksIDc5LCAxMjgsIDg5LCA4NSwgNDUsIDg5LCA2OSwgMTI4LCA4OSwgODUsIAotICAgIDQ1LCA4NSwgMTI4LCA4OSwgODUsIDQ1LCA3OSwgMTI4LCA4OSwgODUsIDQ1LCA3MywgMTI4LCA4OSwgODUsIDQ1LCA2OSwgCi0gICAgNzksIDEyOCwgODksIDg1LCA0NSwgNjksIDEyOCwgODksIDg1LCA0NSwgNjUsIDY5LCAxMjgsIDg5LCA4NSwgNDUsIDY1LCAKLSAgICAxMjgsIDg5LCA4NSwgMTI4LCA4OSwgMjEzLCA4OSwgODAsIDgzLCA3MywgNzYsIDczLCAxMjgsIDg5LCA4MCwgNzksIDgyLCAKLSAgICA4MiwgNzksIDczLCAxMjgsIDg5LCA4MCwgNzksIDc1LCA4MiwgNzMsIDgzLCA3MywgODMsIDEyOCwgODksIDgwLCA3OSwgNzUsIAotICAgIDgyLCA3MywgODMsIDczLCAyMTEsIDg5LCA4MCwgNzksIDcxLCA2OSwgNzEsIDgyLCA2NSwgNzcsIDc3LCA2OSwgNzgsIDczLCAKLSAgICAxMjgsIDg5LCA3OSwgODksIDEyOCwgODksIDc5LCA4OCwgMTI4LCA4OSwgNzksIDg1LCA4NCwgNzIsIDcwLCA4NSwgNzYsIAotICAgIDc4LCA2OSwgODMsIDgzLCAxMjgsIDg5LCA3OSwgODUsIDg0LCA3MiwgNzAsIDg1LCAyMDQsIDg5LCA3OSwgODQsIDEyOCwgCi0gICAgODksIDc5LCA4MiwgNzMsIDEyOCwgODksIDc5LCA4MSwgMTI4LCA4OSwgNzksIDIwOSwgODksIDc5LCA4MCwgMTI4LCA4OSwgCi0gICAgNzksIDc5LCAxMjgsIDg5LCA3OSwgNzcsIDc5LCAxMjgsIDg5LCA3OSwgNzEsIDcyLCAxMjgsIDg5LCA3OSwgNjgsIDcyLCAKLSAgICAxMjgsIDg5LCA3OSwgNjgsIDEyOCwgODksIDc5LCAxOTYsIDg5LCA3OSwgNjUsIDEyOCwgODksIDc5LCA0NSwgODksIDY5LCAKLSAgICA3OSwgMTI4LCA4OSwgNzksIDQ1LCA4OSwgNjUsIDY5LCAxMjgsIDg5LCA3OSwgNDUsIDg5LCA2NSwgMTI4LCA4OSwgNzksIAotICAgIDQ1LCA3OSwgMTI4LCA4OSwgNzksIDQ1LCA3MywgMTI4LCA4OSwgNzksIDQ1LCA2OSwgNzksIDEyOCwgODksIDc5LCA0NSwgCi0gICAgNjUsIDY5LCAxMjgsIDg5LCA3OSwgNDUsIDY1LCAxMjgsIDg5LCA3OSwgMTI4LCA4OSwgMjA3LCA4OSwgNzMsIDkwLCA2OSwgCi0gICAgODQsIDEyOCwgODksIDczLCA4OCwgMTI4LCA4OSwgNzMsIDg3LCA3OCwgMTI4LCA4OSwgNzMsIDg0LCAxMjgsIDg5LCA3MywgCi0gICAgODAsIDEyOCwgODksIDczLCA3OCwgNzEsIDEyOCwgODksIDczLCA3MywgMTI4LCA4OSwgNzMsIDE5OSwgODksIDczLCA2OSwgCi0gICAgODgsIDEyOCwgODksIDczLCA2OSwgODQsIDEyOCwgODksIDczLCA2OSwgODAsIDEyOCwgODksIDczLCA2OSwgNjksIDEyOCwgCi0gICAgODksIDczLCA2OSwgMTI4LCA4OSwgNzMsIDY4LCA2OCwgNzMsIDgzLCAyMDAsIDg5LCA3MywgNDUsIDg1LCAxMjgsIDg5LCAKLSAgICA3MywgMTI4LCA4OSwgNzAsIDY5LCA4MywgNzMsIDgzLCAxMjgsIDg5LCA3MCwgNjksIDgzLCA3MywgMjExLCA4OSwgNzAsIAotICAgIDY5LCAyMDYsIDg5LCA2OSwgODksIDEyOCwgODksIDY5LCA4NywgMTI4LCA4OSwgNjksIDg1LCA4OCwgMTI4LCA4OSwgNjksIAotICAgIDg1LCA4MiwgNjUsIDY5LCAxMjgsIDg5LCA2OSwgODUsIDgxLCAxMjgsIDg5LCA2OSwgODUsIDc3LCAxMjgsIDg5LCA2OSwgCi0gICAgODUsIDY1LCA2OSwgODQsIDEyOCwgODksIDY5LCA4NSwgNjUsIDY5LCAxMjgsIDg5LCA2OSwgODQsIDczLCA4NiwgMTI4LCAKLSAgICA4OSwgNjksIDgzLCA4NCwgODUsIDEyOCwgODksIDY5LCA4MywgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgODMsIDczLCA3OSwgCi0gICAgODMsIDEyOCwgODksIDY5LCA4MywgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgODAsIDY1LCA3OCwgODMsIDczLCA3OSwgODMsIAotICAgIDEyOCwgODksIDY5LCA4MywgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCAxMjgsIDg5LCA2OSwgCi0gICAgODMsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA4OSwgNjksIDgzLCA3MywgNjksIAotICAgIDg1LCA3OCwgNzEsIDEyOCwgODksIDY5LCA4MiwgODUsIDEyOCwgODksIDY5LCA4MiwgMjEzLCA4OSwgNjksIDgyLCA3MywgCi0gICAgMTI4LCA4OSwgNjksIDgyLCA2NSwgMjAwLCA4OSwgNjksIDgyLCAxMjgsIDg5LCA2OSwgNzksIDgyLCA3MywgNzgsIDcyLCAKLSAgICA3MywgNjksIDg1LCA3MiwgMTI4LCA4OSwgNjksIDc5LCA0NSwgODksIDY1LCAxMjgsIDg5LCA2OSwgNzksIDQ1LCA4NSwgCi0gICAgMTI4LCA4OSwgNjksIDc5LCA0NSwgNzksIDEyOCwgODksIDY5LCA3OCwgNzMsIDgzLCA2OSwgMjAxLCA4OSwgNjksIDc4LCAKLSAgICA2NSwgODAsIDEyOCwgODksIDY5LCA3OCwgMTI4LCA4OSwgNjksIDIwNiwgODksIDY5LCA3NiwgNzYsIDc5LCA4NywgMTI4LCAKLSAgICA4OSwgNjksIDc2LCA3NiwgNzksIDIxNSwgODksIDY5LCA3MiwgMTI4LCA4OSwgNjksIDY5LCAxMjgsIDg5LCA2OSwgNjUsIAotICAgIDIxMCwgODksIDY5LCA2NSwgMTI4LCA4OSwgNjUsIDkwLCA5MCwgMTI4LCA4OSwgNjUsIDkwLCA3MiwgMTI4LCA4OSwgNjUsIAotICAgIDkwLCAxMjgsIDg5LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDg5LCA2NSwgODksIDEyOCwgODksIDY1LCA4NywgCi0gICAgMTI4LCA4OSwgNjUsIDg2LCAxMjgsIDg5LCA2NSwgODQsIDg0LCAxMjgsIDg5LCA2NSwgODQsIDczLCAxMjgsIDg5LCA2NSwgCi0gICAgODQsIDcyLCAxMjgsIDg5LCA2NSwgODQsIDEyOCwgODksIDY1LCA4MywgODMsIDEyOCwgODksIDY1LCA4MywgNzIsIDEyOCwgCi0gICAgODksIDY1LCA4MywgMTI4LCA4OSwgNjUsIDgyLCA4MiwgMTI4LCA4OSwgNjUsIDgyLCAxMjgsIDg5LCA2NSwgMjEwLCA4OSwgCi0gICAgNjUsIDgxLCAxMjgsIDg5LCA2NSwgODAsIDEyOCwgODksIDY1LCA3OCwgNzEsIDEyOCwgODksIDY1LCA3OCwgMTk5LCA4OSwgCi0gICAgNjUsIDc4LCAxMjgsIDg5LCA2NSwgNzcsIDc5LCA3NSwgMTI4LCA4OSwgNjUsIDc3LCA2NSwgNzUsIDc1LCA2NSwgNzgsIAotICAgIDEyOCwgODksIDY1LCA3NywgMTI4LCA4OSwgNjUsIDc2LCAxMjgsIDg5LCA2NSwgNzUsIDcyLCA3MiwgMTI4LCA4OSwgNjUsIAotICAgIDc1LCA3MiwgMTI4LCA4OSwgNjUsIDc1LCA2NSwgODMsIDcyLCAxMjgsIDg5LCA2NSwgNzUsIDEyOCwgODksIDY1LCA3NCwgCi0gICAgODUsIDgyLCA4NiwgNjksIDY4LCA3MywgMTk1LCA4OSwgNjUsIDc0LCAxMjgsIDg5LCA2NSwgNzIsIDcyLCAxMjgsIDg5LCAKLSAgICA2NSwgNzIsIDEyOCwgODksIDY1LCA3MSwgNzgsIDEyOCwgODksIDY1LCA3MSwgNzIsIDcyLCAxMjgsIDg5LCA2NSwgNzEsIAotICAgIDcyLCAxMjgsIDg5LCA2NSwgNzEsIDEyOCwgODksIDY1LCA3MCwgMjEzLCA4OSwgNjUsIDcwLCAxMjgsIDg5LCA2NSwgNjksIAotICAgIDc3LCA3NywgNjUsIDY5LCAxMjgsIDg5LCA2NSwgNjgsIDcyLCAxMjgsIDg5LCA2NSwgNjgsIDY4LCA3MiwgMTI4LCA4OSwgCi0gICAgNjUsIDY4LCA2OCwgMTI4LCA4OSwgNjUsIDY4LCAxMjgsIDg5LCA2NSwgNjcsIDcyLCAxMjgsIDg5LCA2NSwgNjYsIDcyLCAKLSAgICAxMjgsIDg5LCA2NSwgNjYsIDEyOCwgODksIDY1LCA2NSwgODIsIDg1LCAxMjgsIDg5LCA2NSwgNjUsIDczLCAxMjgsIDg5LCAKLSAgICA2NSwgNjUsIDY4LCA3OSwgMTI4LCA4OSwgNjUsIDY1LCAxMjgsIDg5LCA2NSwgNDUsIDg5LCA3OSwgMTI4LCA4OSwgNjUsIAotICAgIDQ1LCA4NSwgMTI4LCA4OSwgNjUsIDQ1LCA3OSwgMTI4LCA4OSwgNDgsIDQ4LCA1NiwgMTI4LCA4OSwgNDgsIDQ4LCA1NSwgCi0gICAgMTI4LCA4OSwgNDgsIDQ4LCA1NCwgMTI4LCA4OSwgNDgsIDQ4LCA1MywgMTI4LCA4OSwgNDgsIDQ4LCA1MiwgMTI4LCA4OSwgCi0gICAgNDgsIDQ4LCA1MSwgMTI4LCA4OSwgNDgsIDQ4LCA1MCwgMTI4LCA4OSwgNDgsIDQ4LCA0OSwgNjUsIDEyOCwgODksIDQ4LCAKLSAgICA0OCwgNDksIDEyOCwgODksIDQ1LCA2NywgODIsIDY5LCAxOTcsIDg4LCA4OSwgODgsIDEyOCwgODgsIDg5LCA4NSwgMTI4LCAKLSAgICA4OCwgODksIDg0LCAxMjgsIDg4LCA4OSwgODIsIDg4LCAxMjgsIDg4LCA4OSwgODIsIDEyOCwgODgsIDg5LCA4MCwgMTI4LCAKLSAgICA4OCwgODksIDc5LCAxMjgsIDg4LCA4OSwgNzMsIDEyOCwgODgsIDg5LCA2OSwgNjksIDEyOCwgODgsIDg5LCA2OSwgMTI4LCAKLSAgICA4OCwgODksIDY1LCA2NSwgMTI4LCA4OCwgODksIDY1LCAxMjgsIDg4LCA4OSwgMTI4LCA4OCwgODcsIDczLCAxMjgsIDg4LCAKLSAgICA4NywgNjksIDY5LCAxMjgsIDg4LCA4NywgNjksIDEyOCwgODgsIDg3LCA2NSwgNjUsIDEyOCwgODgsIDg3LCA2NSwgMTI4LCAKLSAgICA4OCwgODYsIDY5LCAxMjgsIDg4LCA4NiwgNjUsIDEyOCwgODgsIDg1LCA3OSwgODgsIDEyOCwgODgsIDg1LCA3OSwgMTI4LCAKLSAgICA4OCwgODUsIDEyOCwgODgsIDgzLCA3MiwgNjUsIDY1LCA4OSwgNjUsIDg0LCA3MiwgNzMsIDg5LCA2NSwgMTI4LCA4OCwgNzksIAotICAgIDg4LCAxMjgsIDg4LCA3OSwgODQsIDEyOCwgODgsIDc5LCA4MiwgMTI4LCA4OCwgNzksIDgwLCAxMjgsIDg4LCA3OSwgNjUsIAotICAgIDEyOCwgODgsIDc5LCAxMjgsIDg4LCA3MywgODgsIDEyOCwgODgsIDczLCA4NCwgMTI4LCA4OCwgNzMsIDgyLCA3OSwgMjA2LCAKLSAgICA4OCwgNzMsIDgwLCAxMjgsIDg4LCA3MywgNjksIDg4LCAxMjgsIDg4LCA3MywgNjksIDg0LCAxMjgsIDg4LCA3MywgNjksIAotICAgIDgwLCAxMjgsIDg4LCA3MywgNjksIDEyOCwgODgsIDczLCAxMjgsIDg4LCA3MSwgMTI4LCA4OCwgNjksIDgzLCA4NCwgNjksIAotICAgIDIxMSwgODgsIDY5LCA3MiwgMTI4LCA4OCwgNjksIDY5LCAxMjgsIDg4LCA2OSwgMTI4LCA4OCwgNjUsIDc4LCAxMjgsIDg4LCAKLSAgICA2NSwgNjUsIDEyOCwgODgsIDY1LCAxMjgsIDg4LCA0OCwgNDgsIDU2LCA2NSwgMTI4LCA4OCwgNDgsIDQ4LCA1NiwgMTI4LCAKLSAgICA4OCwgNDgsIDQ4LCA1NSwgMTI4LCA4OCwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgODgsIDQ4LCA0OCwgNTQsIDEyOCwgODgsIAotICAgIDQ4LCA0OCwgNTMsIDEyOCwgODgsIDQ4LCA0OCwgNTIsIDY2LCAxMjgsIDg4LCA0OCwgNDgsIDUyLCA2NSwgMTI4LCA4OCwgCi0gICAgNDgsIDQ4LCA1MiwgMTI4LCA4OCwgNDgsIDQ4LCA1MSwgMTI4LCA4OCwgNDgsIDQ4LCA1MCwgMTI4LCA4OCwgNDgsIDQ4LCAKLSAgICA0OSwgMTI4LCA4NywgOTAsIDEyOCwgODcsIDg5LCA3OCwgNzgsIDEyOCwgODcsIDg5LCA3OCwgMjA2LCA4NywgODYsIDEyOCwgCi0gICAgODcsIDg1LCA4MCwgMTI4LCA4NywgODUsIDc5LCA4OCwgMTI4LCA4NywgODUsIDc5LCA4MCwgMTI4LCA4NywgODUsIDc5LCAKLSAgICAxMjgsIDg3LCA4NSwgNzgsIDc0LCAyMDcsIDg3LCA4NSwgNzgsIDEyOCwgODcsIDg1LCA3NiwgODUsIDEyOCwgODcsIDg1LCAKLSAgICA3NiwgMjEzLCA4NywgODUsIDY5LCAxMjgsIDg3LCA4NSwgNjUsIDY5LCA4NCwgMTI4LCA4NywgODUsIDY1LCA2OSwgNzgsIAotICAgIDEyOCwgODcsIDg1LCAxMjgsIDg3LCA4MiwgMjE3LCA4NywgODIsIDc5LCA3OCwgNzEsIDEyOCwgODcsIDgyLCA3MywgODQsIAotICAgIDczLCA3OCwgMTk5LCA4NywgODIsIDY5LCA3OCwgNjcsIDcyLCAxMjgsIDg3LCA4MiwgNjksIDY1LCA4NCwgMjAwLCA4NywgCi0gICAgODIsIDY1LCA4MCwgODAsIDY5LCAxOTYsIDg3LCA4MiwgNjUsIDgwLCAxMjgsIDg3LCA3OSwgODgsIDEyOCwgODcsIDc5LCAKLSAgICA4MiwgNzUsIDY5LCA4MiwgMTI4LCA4NywgNzksIDgyLCA3NSwgMTI4LCA4NywgNzksIDgyLCAyMDMsIDg3LCA3OSwgODIsIAotICAgIDY4LCA4MywgODAsIDY1LCA2NywgNjksIDEyOCwgODcsIDc5LCA4MiwgMTk2LCA4NywgNzksIDgwLCAxMjgsIDg3LCA3OSwgCi0gICAgNzksIDc4LCAxMjgsIDg3LCA3OSwgNzksIDc2LCAxMjgsIDg3LCA3OSwgNzksIDY4LCA4MywgNDUsIDY3LCA4MiwgNjksIAotICAgIDE5NywgODcsIDc5LCA3OSwgNjgsIDEyOCwgODcsIDc5LCA3OCwgMTI4LCA4NywgNzksIDIwNiwgODcsIDc5LCA3NywgNjksIAotICAgIDc4LCAyMTEsIDg3LCA3OSwgNzcsIDY5LCAyMDYsIDg3LCA3OSwgNzcsIDY1LCA3OCwgMjExLCA4NywgNzksIDc3LCA2NSwgCi0gICAgNzgsIDEyOCwgODcsIDc5LCA3NywgNjUsIDIwNiwgODcsIDc5LCA3NiwgNzksIDgzLCA3OSwgMTI4LCA4NywgNzksIDc2LCAKLSAgICAxOTgsIDg3LCA3OSwgNjksIDEyOCwgODcsIDc5LCA2NSwgMTI4LCA4NywgNzMsIDg0LCA3MiwgNzksIDg1LCAyMTIsIDg3LCAKLSAgICA3MywgNzgsIDg0LCA2OSwgODIsIDEyOCwgODcsIDczLCA3OCwgNzUsIDczLCA3OCwgMTk5LCA4NywgNzMsIDc4LCA3NCwgNjUsIAotICAgIDEyOCwgODcsIDczLCA3OCwgNzEsIDgzLCAxMjgsIDg3LCA3MywgNzgsIDY5LCAxMjgsIDg3LCA3MywgNzgsIDE5NywgODcsIAotICAgIDczLCA3OCwgNjgsIDg1LCAxMjgsIDg3LCA3MywgNzgsIDY4LCAxMjgsIDg3LCA3MywgNzgsIDE5NiwgODcsIDczLCA3OCwgCi0gICAgMTI4LCA4NywgNzMsIDcxLCA3OCwgODksIDY1LCA3OCwgMTI4LCA4NywgNzMsIDcxLCA3MSwgNzYsIDIxNywgODcsIDczLCAKLSAgICA2OCwgNjksIDQ1LCA3MiwgNjksIDY1LCA2OCwgNjksIDE5NiwgODcsIDczLCA2OCwgMTk3LCA4NywgNzMsIDY1LCA3OCwgNzEsIAotICAgIDg3LCA2NSwgNjUsIDc1LCAxMjgsIDg3LCA3MywgNjUsIDc4LCA3MSwgMTI4LCA4NywgNzIsIDc5LCA3NiwgMTk3LCA4NywgCi0gICAgNzIsIDczLCA4NCwgNjksIDQ1LCA3MCwgNjksIDY1LCA4NCwgNzIsIDY5LCA4MiwgNjksIDE5NiwgODcsIDcyLCA3MywgODQsIAotICAgIDY5LCAxMjgsIDg3LCA3MiwgNjksIDY5LCA3NiwgNjksIDE5NiwgODcsIDcyLCA2OSwgNjksIDc2LCA2NywgNzIsIDY1LCA3MywgCi0gICAgMjEwLCA4NywgNzIsIDY5LCA2OSwgNzYsIDEyOCwgODcsIDcyLCA2OSwgNjksIDIwNCwgODcsIDcyLCA2OSwgNjUsIDg0LCAKLSAgICAxMjgsIDg3LCA3MiwgNjUsIDc2LCA2OSwgMTI4LCA4NywgNzEsIDEyOCwgODcsIDY5LCA4OCwgMTI4LCA4NywgNjksIDg1LCAKLSAgICA4OCwgMTI4LCA4NywgNjksIDgzLCA4NCwgNjksIDgyLCAyMDYsIDg3LCA2OSwgODMsIDg0LCAxMjgsIDg3LCA2OSwgODMsIAotICAgIDIxMiwgODcsIDY5LCA4MCwgMTI4LCA4NywgNjksIDc5LCAxMjgsIDg3LCA2OSwgNzgsIDEyOCwgODcsIDY5LCA3NiwgNzYsIAotICAgIDEyOCwgODcsIDY5LCA3MywgNzEsIDcyLCAyMTIsIDg3LCA2OSwgNjksIDc4LCAxMjgsIDg3LCA2OSwgNjgsIDcxLCA2OSwgCi0gICAgNDUsIDg0LCA2NSwgNzMsIDc2LCA2OSwgMTk2LCA4NywgNjksIDY4LCA2OCwgNzMsIDc4LCA3MSwgMTI4LCA4NywgNjksIDY1LCAKLSAgICA4MiwgMjE3LCA4NywgNjksIDY1LCA4MCwgNzksIDc4LCAxMjgsIDg3LCA2NywgMTI4LCA4NywgNjYsIDEyOCwgODcsIDY1LCAKLSAgICA4OSwgMTI4LCA4NywgNjUsIDIxNywgODcsIDY1LCA4OCwgNzMsIDc4LCAxOTksIDg3LCA2NSwgODgsIDEyOCwgODcsIDY1LCAKLSAgICA4NywgNDUsIDY1LCA4OSwgNzMsIDc4LCA0NSwgODIsIDY5LCA4MywgNzIsIDEyOCwgODcsIDY1LCA4NywgMTI4LCA4NywgNjUsIAotICAgIDIxNSwgODcsIDY1LCA4NiwgMjE3LCA4NywgNjUsIDg2LCA3MywgNzgsIDE5OSwgODcsIDY1LCA4NiwgNjksIDgzLCAxMjgsIAotICAgIDg3LCA2NSwgODYsIDY5LCAxMjgsIDg3LCA2NSwgODYsIDE5NywgODcsIDY1LCA4NSwgMTI4LCA4NywgNjUsIDg0LCA4NCwgCi0gICAgNzksIDEyOCwgODcsIDY1LCA4NCwgNjksIDgyLCA3NywgNjksIDc2LCA3OSwgNzgsIDEyOCwgODcsIDY1LCA4NCwgNjksIDgyLCAKLSAgICAxMjgsIDg3LCA2NSwgODQsIDY5LCAyMTAsIDg3LCA2NSwgODQsIDY3LCA3MiwgMTI4LCA4NywgNjUsIDg0LCAxMjgsIDg3LCAKLSAgICA2NSwgODMsIDg0LCA3MywgNzgsIDcxLCAxMjgsIDg3LCA2NSwgODMsIDgzLCA2NSwgNzYsIDc2LCA2NSwgNzcsIDEyOCwgODcsIAotICAgIDY1LCA4MywgNzYsIDY1LCAxMjgsIDg3LCA2NSwgODMsIDc2LCAxOTMsIDg3LCA2NSwgODMsIDY1LCA3NiwgNzYsIDY1LCA3NywgCi0gICAgMTI4LCA4NywgNjUsIDgzLCA2NSwgNzYsIDc2LCA2NSwgMjA1LCA4NywgNjUsIDgyLCA3OCwgNzMsIDc4LCAxOTksIDg3LCAKLSAgICA2NSwgODAsIDEyOCwgODcsIDY1LCA3OCwgNzMsIDc4LCAxOTksIDg3LCA2NSwgNzgsIDcxLCA3NSwgODUsIDc5LCA4MSwgCi0gICAgMTI4LCA4NywgNjUsIDc4LCA2OCwgNjksIDgyLCA2OSwgODIsIDEyOCwgODcsIDY1LCA3OCwgMTI4LCA4NywgNjUsIDc2LCAKLSAgICA3NiwgMTI4LCA4NywgNjUsIDc2LCA3NSwgMTI4LCA4NywgNjUsIDc2LCAyMDMsIDg3LCA2NSwgNzMsIDg0LCA3MywgNzgsIAotICAgIDcxLCAxMjgsIDg3LCA2NSwgNzMsIDEyOCwgODcsIDY1LCA2OSwgNzgsIDEyOCwgODcsIDY1LCA2OSwgMTI4LCA4NywgNjUsIAotICAgIDY1LCA4NiwgODUsIDEyOCwgODcsIDQ4LCA1MCwgNTMsIDEyOCwgODcsIDQ4LCA1MCwgNTIsIDY1LCAxMjgsIDg3LCA0OCwgCi0gICAgNTAsIDUyLCAxMjgsIDg3LCA0OCwgNTAsIDUxLCAxMjgsIDg3LCA0OCwgNTAsIDUwLCAxMjgsIDg3LCA0OCwgNTAsIDQ5LCAKLSAgICAxMjgsIDg3LCA0OCwgNTAsIDQ4LCAxMjgsIDg3LCA0OCwgNDksIDU3LCAxMjgsIDg3LCA0OCwgNDksIDU2LCA2NSwgMTI4LCAKLSAgICA4NywgNDgsIDQ5LCA1NiwgMTI4LCA4NywgNDgsIDQ5LCA1NSwgNjUsIDEyOCwgODcsIDQ4LCA0OSwgNTUsIDEyOCwgODcsIAotICAgIDQ4LCA0OSwgNTQsIDEyOCwgODcsIDQ4LCA0OSwgNTMsIDEyOCwgODcsIDQ4LCA0OSwgNTIsIDY1LCAxMjgsIDg3LCA0OCwgCi0gICAgNDksIDUyLCAxMjgsIDg3LCA0OCwgNDksIDUxLCAxMjgsIDg3LCA0OCwgNDksIDUwLCAxMjgsIDg3LCA0OCwgNDksIDQ5LCAKLSAgICAxMjgsIDg3LCA0OCwgNDksIDQ4LCA2NSwgMTI4LCA4NywgNDgsIDQ5LCA0OCwgMTI4LCA4NywgNDgsIDQ4LCA1NywgNjUsIAotICAgIDEyOCwgODcsIDQ4LCA0OCwgNTcsIDEyOCwgODcsIDQ4LCA0OCwgNTYsIDEyOCwgODcsIDQ4LCA0OCwgNTUsIDEyOCwgODcsIAotICAgIDQ4LCA0OCwgNTQsIDEyOCwgODcsIDQ4LCA0OCwgNTMsIDEyOCwgODcsIDQ4LCA0OCwgNTIsIDEyOCwgODcsIDQ4LCA0OCwgCi0gICAgNTEsIDY1LCAxMjgsIDg3LCA0OCwgNDgsIDUxLCAxMjgsIDg3LCA0OCwgNDgsIDUwLCAxMjgsIDg3LCA0OCwgNDgsIDQ5LCAKLSAgICAxMjgsIDg2LCA5MCwgNzcsIDY5LCA4NCwgMTI4LCA4NiwgODksIDg4LCAxMjgsIDg2LCA4OSwgODQsIDEyOCwgODYsIDg5LCAKLSAgICA4MiwgODgsIDEyOCwgODYsIDg5LCA4MiwgMTI4LCA4NiwgODksIDgwLCAxMjgsIDg2LCA4OSwgMTI4LCA4NiwgODcsIDY1LCAKLSAgICAxMjgsIDg2LCA4NSwgODgsIDEyOCwgODYsIDg1LCA4NCwgMTI4LCA4NiwgODUsIDgyLCA4OCwgMTI4LCA4NiwgODUsIDgyLCAKLSAgICAxMjgsIDg2LCA4NSwgODAsIDEyOCwgODYsIDg1LCA3NiwgNzEsIDY1LCAyMTAsIDg2LCA4NSwgNjksIDgxLCAxMjgsIDg2LCAKLSAgICA4MywgMTI4LCA4NiwgODIsIDY1LCA2NywgNzIsIDg5LCAxMjgsIDg2LCA3OSwgODgsIDEyOCwgODYsIDc5LCA4NywgNjksIAotICAgIDc2LCA0NSwgNjcsIDY1LCA4MiwgODIsIDczLCA2OSwgMjEwLCA4NiwgNzksIDg3LCAxMjgsIDg2LCA3OSwgODUsIDEyOCwgCi0gICAgODYsIDc5LCA4NCwgMTI4LCA4NiwgNzksIDgwLCAxMjgsIDg2LCA3OSwgNzksIDEyOCwgODYsIDc5LCA3NywgMTI4LCA4NiwgCi0gICAgNzksIDc2LCA4NSwgNzcsIDE5NywgODYsIDc5LCA3NiwgODQsIDY1LCA3MSwgMTk3LCA4NiwgNzksIDc2LCA2NywgNjUsIDc4LCAKLSAgICA3OSwgMTI4LCA4NiwgNzksIDczLCAxOTYsIDg2LCA3OSwgNzMsIDY3LCA3MywgNzgsIDcxLCAxMjgsIDg2LCA3OSwgNzMsIAotICAgIDY3LCA2OSwgNzYsIDY5LCA4MywgMjExLCA4NiwgNzksIDczLCA2NywgNjksIDE5NiwgODYsIDc5LCA2NywgNjUsIDc2LCA3MywgCi0gICAgOTAsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDg2LCA3OSwgNjcsIDY1LCAyMDQsIDg2LCA3OSwgMTI4LCA4NiwgNzMsIDg4LCAKLSAgICAxMjgsIDg2LCA3MywgODQsIDgyLCA3MywgNzksIDc2LCA0NSwgNTAsIDEyOCwgODYsIDczLCA4NCwgODIsIDczLCA3OSwgNzYsIAotICAgIDEyOCwgODYsIDczLCA4NCwgNjUsIDY5LCA0NSwgNTAsIDEyOCwgODYsIDczLCA4NCwgNjUsIDY5LCAxMjgsIDg2LCA3MywgCi0gICAgODQsIDEyOCwgODYsIDczLCA4MywgNzMsIDcxLCA3OSwgODQsIDcyLCA3MywgMTk1LCA4NiwgNzMsIDgzLCA2NSwgODIsIDcxLCAKLSAgICA2NSwgODksIDY1LCAxMjgsIDg2LCA3MywgODMsIDY1LCA4MiwgNzEsIDY1LCAxMjgsIDg2LCA3MywgODMsIDY1LCA4MiwgNzEsIAotICAgIDE5MywgODYsIDczLCA4MiwgNzMsIDY1LCA3NywgMTI4LCA4NiwgNzMsIDgyLCA3MSwgNzksIDEyOCwgODYsIDczLCA4MiwgCi0gICAgNzEsIDY1LCAxMjgsIDg2LCA3MywgODIsIDY1LCA3NywgNjUsIDEyOCwgODYsIDczLCA4MCwgMTI4LCA4NiwgNzMsIDc5LCAKLSAgICA3NiwgNzMsIDc4LCAxMjgsIDg2LCA3MywgNzgsIDY5LCA3MSwgNjUsIDgyLCA0NSwgNTEsIDEyOCwgODYsIDczLCA3OCwgNjksIAotICAgIDcxLCA2NSwgODIsIDQ1LCA1MCwgMTI4LCA4NiwgNzMsIDc4LCA2OSwgNzEsIDY1LCA4MiwgMTI4LCA4NiwgNzMsIDc4LCA2OSwgCi0gICAgNzEsIDY1LCAyMTAsIDg2LCA3MywgNzgsIDY5LCAxMjgsIDg2LCA3MywgNzgsIDEyOCwgODYsIDczLCA3NiwgNzYsIDY1LCAKLSAgICA3MSwgNjksIDEyOCwgODYsIDczLCA2OSwgODgsIDEyOCwgODYsIDczLCA2OSwgODcsIDczLCA3OCwgMTk5LCA4NiwgNzMsIAotICAgIDY5LCA4NywgNjgsIDY1LCA4NCwgMTkzLCA4NiwgNzMsIDY5LCA4NCwgMTI4LCA4NiwgNzMsIDY5LCA4MCwgMTI4LCA4NiwgCi0gICAgNzMsIDY5LCAxMjgsIDg2LCA3MywgNjgsIDY5LCA3OSwgNjcsIDY1LCA4MywgODMsIDY5LCA4NCwgODQsIDY5LCAxMjgsIDg2LCAKKyAgICAyMDAsIDY2LCA2NSwgNzYsIDczLCA3OCwgNjksIDgzLCAxOTcsIDcyLCA3OSwgNzksIDc1LCAxMjgsIDIxMywgODQsIDg3LCAKKyAgICA3OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgMjA1LCA4MCwgNzIsIDY1LCA4MywgNjksIDQ1LCAxOTYsIAorICAgIDY1LCA3NiwgNjcsIDcyLCA2OSwgNzcsIDczLCA2NywgNjUsIDIwNCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNzMsIDE5NSwgNzksIDc4LCA2OSwgMTI4LCA4NCwgNzksIDEyOCwgNjUsIDc2LCA2OSwgMTk4LCA4NCwgODcsIDIwNywgCisgICAgNzIsIDY5LCA2NSwgODYsIDIxNywgNjcsIDc5LCA3OCwgODMsIDc5LCA3OCwgNjUsIDc4LCAyMTIsIDc5LCA4NiwgNjksIAorICAgIDIxMCwgNjYsIDgyLCA2NSwgNzIsIDc3LCAyMDEsIDgzLCA2NywgODIsIDczLCA4MCwgMjEyLCA4NSwgMjA4LCA3NiwgNzksIAorICAgIDIxNSwgNzIsIDY1LCAyMDAsIDc5LCA3OCwgMTk3LCA2OCwgNzksIDg3LCAyMDYsIDcyLCA3MywgNzEsIDIwMCwgNzAsIDg1LCAKKyAgICA3NiwgNzYsIDg3LCA3MywgNjgsIDg0LCAyMDAsIDY2LCA4MiwgNjUsIDY3LCA3NSwgNjksIDg0LCAxMjgsIDY5LCA4MSwgODUsIAorICAgIDY1LCAyMDQsIDg0LCA2NSwgMTk5LCA2NiwgNjUsIDgyLCAxMjgsIDY4LCA3OSwgNzcsIDczLCA3OCwgMjA3LCA3OCwgODUsIAorICAgIDc3LCA2OSwgODIsIDczLCAxOTUsIDcwLCA4MiwgNjUsIDc1LCA4NCwgODUsIDIxMCwgODQsIDcyLCA4MiwgNjksIDE5NywgCisgICAgNjcsIDcyLCA2NSwgODIsIDY1LCA2NywgODQsIDY5LCAyMTAsIDc3LCA2NSwgNzYsIDY1LCA4OSwgNjUsIDc2LCA2NSwgMjA1LCAKKyAgICA4MCwgNzIsIDY1LCA4MywgNjksIDQ1LCAxOTUsIDg0LCA3OSwgNzgsIDE5NywgNjgsIDc5LCA4NSwgNjYsIDc2LCA2OSwgNDUsIAorICAgIDgzLCA4NCwgODIsIDg1LCA2NywgMjAzLCA3NiwgNjksIDcwLCA4NCwgODcsIDY1LCA4MiwgNjgsIDIxMSwgNzIsIDczLCA4MiwgCisgICAgNjUsIDcxLCA2NSwgNzgsIDE5MywgNjUsIDY3LCA4NSwgODQsIDY5LCAxMjgsIDc0LCA4NSwgNzgsIDcxLCA4MywgNjksIDc5LCAKKyAgICA3OCwgMTk5LCA3MSwgNzYsIDY1LCA3MSwgNzksIDc2LCA3MywgODQsIDczLCAxOTUsIDY2LCA2OSwgNzgsIDcxLCA2NSwgNzYsIAorICAgIDIwMSwgNzcsIDY5LCA2OCwgNzMsIDY1LCAyMDQsIDg0LCA2OSwgNzYsIDg1LCA3MSwgMjEzLCA4NiwgNzksIDY3LCA2NSwgCisgICAgNzYsIDczLCAxOTUsIDY1LCA4MiwgNzcsIDY5LCA3OCwgNzMsIDY1LCAyMDYsIDc0LCA2OSwgNjksIDIwNSwgNzgsIDY5LCAKKyAgICA3MSwgNjUsIDg0LCA3MywgODYsIDE5NywgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAyMDAsIDc0LCA2NSwgODYsIAorICAgIDY1LCA3OCwgNjksIDgzLCAxOTcsIDc5LCA4MiwgNzMsIDg5LCAxOTMsIDg0LCA3MiwgODIsIDY5LCA2OSwgMTI4LCA4NywgCisgICAgNjksIDgzLCA4NCwgNDUsIDY3LCA4MiwgNjksIDE5NywgNzAsIDc5LCA4NSwgODIsIDEyOCwgNzIsIDY1LCAxMjgsIDcyLCAKKyAgICA2NSwgNzYsIDE5OCwgNzcsIDY1LCA4MiwgMjAzLCA3NSwgNjUsIDc4LCA3OCwgNjUsIDY4LCAxOTMsIDc4LCA2OSwgMjE1LCAKKyAgICA4MCwgNzIsIDY1LCA4MywgNjksIDQ1LCAxOTMsIDg0LCA3MiwgNjUsIDIwMSwgNjcsIDcyLCA2OSwgODIsIDc5LCA3NSwgNjksIAorICAgIDE5NywgNjgsIDc5LCA4NCwgMjExLCA3MSwgODUsIDc0LCA2NSwgODIsIDY1LCA4NCwgMjAxLCA2NywgNzIsIDY1LCAyMDUsIAorICAgIDc2LCA4NSwgMTk3LCA4MywgNzIsIDY1LCA4MiwgNjUsIDY4LCAxOTMsIDgzLCA3MywgNzgsIDcyLCA2NSwgNzYsIDE5MywgCisgICAgNzUsIDY1LCAxMjgsIDgyLCA4NSwgNzgsIDczLCAxOTUsIDgzLCA2NSwgODUsIDgyLCA2NSwgODMsIDcyLCA4NCwgODIsIAorICAgIDE5MywgODQsIDY5LCA4NCwgODIsIDY1LCA3MSwgODIsIDY1LCAyMDUsIDY4LCA2OSwgODMsIDY5LCA4MiwgNjksIDIxMiwgCisgICAgODQsIDczLCA3NiwgNjgsIDY5LCAxMjgsIDcxLCA4NSwgODIsIDc3LCA4NSwgNzUsIDcyLCAyMDEsIDc3LCA2NSwgMTI4LCAKKyAgICA3NywgNjUsIDg5LCA2OSwgMjAzLCA3NywgNjksIDY5LCA4NCwgNjksIDIwMSwgNzgsIDc5LCA4NCwgNjUsIDg0LCA3MywgNzksIAorICAgIDIwNiwgODMsIDg5LCA4MiwgNzMsIDY1LCAxOTUsIDcwLCA3MywgODYsIDY5LCAxMjgsIDgwLCA2NSwgMTI4LCA4OSwgNjUsIAorICAgIDEyOCwgNzYsIDczLCA3MSwgNzIsIDIxMiwgODMsIDczLCA4OCwgMTI4LCA2OSwgNzMsIDcxLCA3MiwgODQsIDEyOCwgNzYsIAorICAgIDY5LCA4MCwgNjcsIDcyLCAxOTMsIDc4LCA2NSwgMTI4LCA4MywgNjksIDg2LCA2OSwgNzgsIDEyOCwgNzYsIDc5LCA3OCwgCisgICAgMTk5LCA3OCwgNzMsIDc4LCA2OSwgMTI4LCA4NCwgODUsIDgyLCA3NSwgNzMsIDE5NSwgNzIsIDY1LCA3NywgOTAsIDE5MywgCisgICAgNzIsIDc5LCA4MiwgNzMsIDkwLCA3OSwgNzgsIDg0LCA2NSwgMjA0LCA3OSwgODAsIDY5LCAyMDYsIDgyLCA2NSwgMTI4LCAKKyAgICA4MywgNjUsIDEyOCwgODMsIDg1LCA3OCwgNjgsIDY1LCA3OCwgNjksIDgzLCAxOTcsIDg2LCA3MywgNjksIDIxMiwgNzYsIAorICAgIDY1LCAyMDcsIDkwLCA5MCwgODksIDg4LCAxMjgsIDkwLCA5MCwgODksIDg0LCAxMjgsIDkwLCA5MCwgODksIDgyLCA4OCwgCisgICAgMTI4LCA5MCwgOTAsIDg5LCA4MiwgMTI4LCA5MCwgOTAsIDg5LCA4MCwgMTI4LCA5MCwgOTAsIDg5LCA2NSwgMTI4LCA5MCwgCisgICAgOTAsIDg5LCAxMjgsIDkwLCA5MCwgODUsIDg4LCAxMjgsIDkwLCA5MCwgODUsIDgyLCA4OCwgMTI4LCA5MCwgOTAsIDg1LCAKKyAgICA4MiwgMTI4LCA5MCwgOTAsIDg1LCA4MCwgMTI4LCA5MCwgOTAsIDg1LCAxMjgsIDkwLCA5MCwgODMsIDg5LCA2NSwgMTI4LCAKKyAgICA5MCwgOTAsIDgzLCA2NSwgMTI4LCA5MCwgOTAsIDc5LCA4OCwgMTI4LCA5MCwgOTAsIDc5LCA4MCwgMTI4LCA5MCwgOTAsIAorICAgIDc5LCAxMjgsIDkwLCA5MCwgNzMsIDg4LCAxMjgsIDkwLCA5MCwgNzMsIDg0LCAxMjgsIDkwLCA5MCwgNzMsIDgwLCAxMjgsIAorICAgIDkwLCA5MCwgNzMsIDY5LCA4OCwgMTI4LCA5MCwgOTAsIDczLCA2OSwgODQsIDEyOCwgOTAsIDkwLCA3MywgNjksIDgwLCAKKyAgICAxMjgsIDkwLCA5MCwgNzMsIDY5LCAxMjgsIDkwLCA5MCwgNzMsIDEyOCwgOTAsIDkwLCA2OSwgODgsIDEyOCwgOTAsIDkwLCAKKyAgICA2OSwgODAsIDEyOCwgOTAsIDkwLCA2OSwgNjksIDEyOCwgOTAsIDkwLCA2OSwgMTI4LCA5MCwgOTAsIDY1LCA4OCwgMTI4LCAKKyAgICA5MCwgOTAsIDY1LCA4NCwgMTI4LCA5MCwgOTAsIDY1LCA4MCwgMTI4LCA5MCwgOTAsIDY1LCA2NSwgMTI4LCA5MCwgOTAsIAorICAgIDY1LCAxMjgsIDkwLCA4OSwgNzEsIDc5LCA4MywgMTI4LCA5MCwgODcsIDgzLCA4MCwgMTI4LCA5MCwgODcsIDc4LCA3NCwgCisgICAgMTI4LCA5MCwgODcsIDc4LCA2NiwgODMsIDgwLCAxMjgsIDkwLCA4NywgNzQsIDEyOCwgOTAsIDg3LCA2NSwgODIsIDY1LCAKKyAgICA3NSwgNjUsIDg5LCAxMjgsIDkwLCA4NywgNjUsIDEyOCwgOTAsIDg1LCA4NCwgMTI4LCA5MCwgODUsIDc5LCA4OCwgMTI4LCAKKyAgICA5MCwgODUsIDc5LCA4MCwgMTI4LCA5MCwgODUsIDc5LCAxMjgsIDkwLCA4NSwgNzcsIDEyOCwgOTAsIDg1LCA2NiwgODUsIAorICAgIDgyLCAxMjgsIDkwLCA4NSwgNTMsIDEyOCwgOTAsIDg1LCAxODEsIDkwLCA4MywgNzIsIDY1LCAxMjgsIDkwLCA4MiwgNjUsIAorICAgIDEyOCwgOTAsIDgxLCA2NSwgODAsIDcyLCAxOTMsIDkwLCA3OSwgODQsIDEyOCwgOTAsIDc5LCA3OSwgMTI4LCA5MCwgNzksIAorICAgIDY1LCAxMjgsIDkwLCA3NiwgNjUsIDc3LCAxOTMsIDkwLCA3NiwgNjUsIDEyOCwgOTAsIDc2LCAxOTMsIDkwLCA3NCwgNjksIAorICAgIDEyOCwgOTAsIDczLCA5MCwgNTAsIDEyOCwgOTAsIDczLCA4MSwgNjUsIDY1LCAxMjgsIDkwLCA3MywgNzgsIDc5LCA4MiwgCisgICAgMTI4LCA5MCwgNzMsIDc2LCA2OCwgNjksIDEyOCwgOTAsIDczLCA3MSwgOTAsIDY1LCAxOTksIDkwLCA3MywgNzEsIDEyOCwgCisgICAgOTAsIDczLCA2OCwgMTkzLCA5MCwgNzMsIDY2LCAxMjgsIDkwLCA3MywgMTk0LCA5MCwgNzMsIDUxLCAxMjgsIDkwLCAyMDEsIAorICAgIDkwLCA3MiwgODksIDg4LCAxMjgsIDkwLCA3MiwgODksIDg0LCAxMjgsIDkwLCA3MiwgODksIDgyLCA4OCwgMTI4LCA5MCwgCisgICAgNzIsIDg5LCA4MiwgMTI4LCA5MCwgNzIsIDg5LCA4MCwgMTI4LCA5MCwgNzIsIDg5LCAxMjgsIDkwLCA3MiwgODcsIDY5LCAKKyAgICAxMjgsIDkwLCA3MiwgODcsIDY1LCAxMjgsIDkwLCA3MiwgODUsIDg4LCAxMjgsIDkwLCA3MiwgODUsIDg0LCAxMjgsIDkwLCAKKyAgICA3MiwgODUsIDgyLCA4OCwgMTI4LCA5MCwgNzIsIDg1LCA4MiwgMTI4LCA5MCwgNzIsIDg1LCA4MCwgMTI4LCA5MCwgNzIsIAorICAgIDg1LCA3OSwgODgsIDEyOCwgOTAsIDcyLCA4NSwgNzksIDgwLCAxMjgsIDkwLCA3MiwgODUsIDc5LCAxMjgsIDkwLCA3MiwgCisgICAgODUsIDEyOCwgOTAsIDcyLCA3OSwgODgsIDEyOCwgOTAsIDcyLCA3OSwgODQsIDEyOCwgOTAsIDcyLCA3OSwgODAsIDEyOCwgCisgICAgOTAsIDcyLCA3OSwgNzksIDEyOCwgOTAsIDcyLCA3OSwgMTI4LCA5MCwgNzIsIDczLCA4NiwgNjksIDg0LCA2OSwgMTI4LCAKKyAgICA5MCwgNzIsIDczLCAxMjgsIDkwLCA3MiwgNjksIDg4LCAxMjgsIDkwLCA3MiwgNjksIDg0LCAxMjgsIDkwLCA3MiwgNjksIAorICAgIDgwLCAxMjgsIDkwLCA3MiwgNjksIDY5LCAxMjgsIDkwLCA3MiwgNjksIDEyOCwgOTAsIDcyLCAxOTcsIDkwLCA3MiwgNjUsIAorICAgIDg4LCAxMjgsIDkwLCA3MiwgNjUsIDg0LCAxMjgsIDkwLCA3MiwgNjUsIDgyLCAxMjgsIDkwLCA3MiwgNjUsIDgwLCAxMjgsIAorICAgIDkwLCA3MiwgNjUsIDczLCA3OCwgMTI4LCA5MCwgNzIsIDY1LCA2NSwgMTI4LCA5MCwgNzIsIDY1LCAxMjgsIDkwLCA3MiwgCisgICAgMTI4LCA5MCwgNjksIDg0LCA2NSwgMTI4LCA5MCwgNjksIDgyLCA3OSwgMTI4LCA5MCwgNjksIDgyLCAyMDcsIDkwLCA2OSwgCisgICAgNzgsIDEyOCwgOTAsIDY5LCA3NywgNzYsIDg5LCA2NSwgMTI4LCA5MCwgNjksIDc3LCA3NiwgNzQsIDY1LCAxMjgsIDkwLCAKKyAgICA2OSwgNTAsIDEyOCwgOTAsIDE5NywgOTAsIDY1LCA4OSwgNzgsIDEyOCwgOTAsIDY1LCA4OSwgNzMsIDc4LCAxMjgsIDkwLCAKKyAgICA2NSwgODksIDczLCAyMDYsIDkwLCA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA5MCwgNjUsIDg0LCA2NSwgCisgICAgMTI4LCA5MCwgNjUsIDgyLCA4MSwgNjUsIDEyOCwgOTAsIDY1LCA4MSwgNjksIDE5OCwgOTAsIDY1LCA3NywgODgsIDEyOCwgCisgICAgOTAsIDY1LCAyMDQsIDkwLCA2NSwgNzMsIDc4LCAxMjgsIDkwLCA2NSwgNzMsIDIwNiwgOTAsIDY1LCA3MywgMTI4LCA5MCwgCisgICAgNjUsIDcyLCAxMjgsIDkwLCA2NSwgMjAwLCA5MCwgNjUsIDcxLCAxMjgsIDkwLCA2NSwgNjksIDcwLCAxMjgsIDkwLCA0OCwgCisgICAgNDksIDU0LCA3MiwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgNzEsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDcwLCAxMjgsIDkwLCAKKyAgICA0OCwgNDksIDU0LCA2OSwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgNjgsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDY3LCAxMjgsIAorICAgIDkwLCA0OCwgNDksIDU0LCA2NiwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgNjUsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDEyOCwgCisgICAgOTAsIDQ4LCA0OSwgNTMsIDczLCAxMjgsIDkwLCA0OCwgNDksIDUzLCA3MiwgMTI4LCA5MCwgNDgsIDQ5LCA1MywgNzEsIAorICAgIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDcwLCAxMjgsIDkwLCA0OCwgNDksIDUzLCA2OSwgMTI4LCA5MCwgNDgsIDQ5LCA1MywgCisgICAgNjgsIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDY3LCAxMjgsIDkwLCA0OCwgNDksIDUzLCA2NiwgMTI4LCA5MCwgNDgsIDQ5LCAKKyAgICA1MywgNjUsIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDEyOCwgOTAsIDQ4LCA0OSwgNTIsIDEyOCwgOTAsIDQ4LCA0OSwgNTEsIAorICAgIDEyOCwgOTAsIDQ4LCA0OSwgNTAsIDEyOCwgOTAsIDQ4LCA0OSwgNDksIDEyOCwgOTAsIDQ4LCA0OSwgNDgsIDEyOCwgOTAsIAorICAgIDQ4LCA0OCwgNTcsIDEyOCwgOTAsIDQ4LCA0OCwgNTYsIDEyOCwgOTAsIDQ4LCA0OCwgNTUsIDEyOCwgOTAsIDQ4LCA0OCwgCisgICAgNTQsIDEyOCwgOTAsIDQ4LCA0OCwgNTMsIDY1LCAxMjgsIDkwLCA0OCwgNDgsIDUzLCAxMjgsIDkwLCA0OCwgNDgsIDUyLCAKKyAgICA2NSwgMTI4LCA5MCwgNDgsIDQ4LCA1MiwgMTI4LCA5MCwgNDgsIDQ4LCA1MSwgNjYsIDEyOCwgOTAsIDQ4LCA0OCwgNTEsIAorICAgIDY1LCAxMjgsIDkwLCA0OCwgNDgsIDUxLCAxMjgsIDkwLCA0OCwgNDgsIDUwLCA2OCwgMTI4LCA5MCwgNDgsIDQ4LCA1MCwgCisgICAgNjcsIDEyOCwgOTAsIDQ4LCA0OCwgNTAsIDY2LCAxMjgsIDkwLCA0OCwgNDgsIDUwLCA2NSwgMTI4LCA5MCwgNDgsIDQ4LCAKKyAgICA1MCwgMTI4LCA5MCwgNDgsIDQ4LCA0OSwgMTI4LCA5MCwgMTI4LCAyMTgsIDg5LCA4OSwgODgsIDEyOCwgODksIDg5LCA4NCwgCisgICAgMTI4LCA4OSwgODksIDgyLCA4OCwgMTI4LCA4OSwgODksIDgyLCAxMjgsIDg5LCA4OSwgODAsIDEyOCwgODksIDg5LCA2OSwgCisgICAgMTI4LCA4OSwgODksIDY1LCA2NSwgMTI4LCA4OSwgODksIDY1LCAxMjgsIDg5LCA4OSwgMTI4LCA4OSwgODcsIDc5LCA3OSwgCisgICAgMTI4LCA4OSwgODcsIDc5LCAxMjgsIDg5LCA4NywgNzMsIDczLCAxMjgsIDg5LCA4NywgNzMsIDEyOCwgODksIDg3LCA2OSwgCisgICAgMTI4LCA4OSwgODcsIDY1LCA2NSwgMTI4LCA4OSwgODcsIDY1LCAxMjgsIDg5LCA4NiwgMTI4LCA4OSwgODUsIDg4LCAxMjgsIAorICAgIDg5LCA4NSwgODcsIDc5LCA4MSwgMTI4LCA4OSwgODUsIDg1LCA3NSwgNjUsIDc2LCA2OSwgNjUsIDgwLCA3MywgNzgsIDg0LCAKKyAgICA4NSwgMTI4LCA4OSwgODUsIDg1LCAxMjgsIDg5LCA4NSwgODQsIDEyOCwgODksIDg1LCA4MywgMTI4LCA4OSwgODUsIDIxMSwgCisgICAgODksIDg1LCA4MiwgODgsIDEyOCwgODksIDg1LCA4MiwgMTI4LCA4OSwgODUsIDgxLCAxMjgsIDg5LCA4NSwgMjA5LCA4OSwgCisgICAgODUsIDgwLCAxMjgsIDg5LCA4NSwgNzksIDg4LCAxMjgsIDg5LCA4NSwgNzksIDg0LCAxMjgsIDg5LCA4NSwgNzksIDgwLCAKKyAgICAxMjgsIDg5LCA4NSwgNzksIDc3LCAxMjgsIDg5LCA4NSwgNzksIDEyOCwgODksIDg1LCA3OCwgMTI4LCA4OSwgODUsIDc3LCAKKyAgICAxMjgsIDg5LCA4NSwgNjksIDgxLCAxMjgsIDg5LCA4NSwgNjksIDEyOCwgODksIDg1LCA2OCwgNzIsIDEyOCwgODksIDg1LCAKKyAgICA2OCwgMjAwLCA4OSwgODUsIDY1LCA3OCwgMTI4LCA4OSwgODUsIDY1LCA2OSwgNzgsIDEyOCwgODksIDg1LCA0NSwgODksIAorICAgIDY5LCA3OSwgMTI4LCA4OSwgODUsIDQ1LCA4OSwgNjksIDEyOCwgODksIDg1LCA0NSwgODUsIDEyOCwgODksIDg1LCA0NSwgCisgICAgNzksIDEyOCwgODksIDg1LCA0NSwgNzMsIDEyOCwgODksIDg1LCA0NSwgNjksIDc5LCAxMjgsIDg5LCA4NSwgNDUsIDY5LCAKKyAgICAxMjgsIDg5LCA4NSwgNDUsIDY1LCA2OSwgMTI4LCA4OSwgODUsIDQ1LCA2NSwgMTI4LCA4OSwgODUsIDEyOCwgODksIDIxMywgCisgICAgODksIDgwLCA4MywgNzMsIDc2LCA3MywgMTI4LCA4OSwgODAsIDc5LCA4MiwgODIsIDc5LCA3MywgMTI4LCA4OSwgODAsIDc5LCAKKyAgICA3NSwgODIsIDczLCA4MywgNzMsIDgzLCAxMjgsIDg5LCA4MCwgNzksIDc1LCA4MiwgNzMsIDgzLCA3MywgMjExLCA4OSwgODAsIAorICAgIDc5LCA3MSwgNjksIDcxLCA4MiwgNjUsIDc3LCA3NywgNjksIDc4LCA3MywgMTI4LCA4OSwgNzksIDg5LCAxMjgsIDg5LCA3OSwgCisgICAgODgsIDEyOCwgODksIDc5LCA4NSwgODQsIDcyLCA3MCwgODUsIDc2LCA3OCwgNjksIDgzLCA4MywgMTI4LCA4OSwgNzksIDg1LCAKKyAgICA4NCwgNzIsIDcwLCA4NSwgMjA0LCA4OSwgNzksIDg0LCAxMjgsIDg5LCA3OSwgODIsIDczLCAxMjgsIDg5LCA3OSwgODEsIAorICAgIDEyOCwgODksIDc5LCAyMDksIDg5LCA3OSwgODAsIDEyOCwgODksIDc5LCA3OSwgMTI4LCA4OSwgNzksIDc3LCA3OSwgMTI4LCAKKyAgICA4OSwgNzksIDcxLCA3MiwgMTI4LCA4OSwgNzksIDY4LCA3MiwgMTI4LCA4OSwgNzksIDY4LCAxMjgsIDg5LCA3OSwgMTk2LCAKKyAgICA4OSwgNzksIDY1LCAxMjgsIDg5LCA3OSwgNDUsIDg5LCA2OSwgNzksIDEyOCwgODksIDc5LCA0NSwgODksIDY1LCA2OSwgCisgICAgMTI4LCA4OSwgNzksIDQ1LCA4OSwgNjUsIDEyOCwgODksIDc5LCA0NSwgNzksIDEyOCwgODksIDc5LCA0NSwgNzMsIDEyOCwgCisgICAgODksIDc5LCA0NSwgNjksIDc5LCAxMjgsIDg5LCA3OSwgNDUsIDY1LCA2OSwgMTI4LCA4OSwgNzksIDQ1LCA2NSwgMTI4LCAKKyAgICA4OSwgNzksIDEyOCwgODksIDIwNywgODksIDczLCA5MCwgNjksIDg0LCAxMjgsIDg5LCA3MywgODgsIDEyOCwgODksIDczLCAKKyAgICA4NywgNzgsIDEyOCwgODksIDczLCA4NCwgMTI4LCA4OSwgNzMsIDgwLCAxMjgsIDg5LCA3MywgNzgsIDcxLCAxMjgsIDg5LCAKKyAgICA3MywgNzMsIDEyOCwgODksIDczLCAxOTksIDg5LCA3MywgNjksIDg4LCAxMjgsIDg5LCA3MywgNjksIDg0LCAxMjgsIDg5LCAKKyAgICA3MywgNjksIDgwLCAxMjgsIDg5LCA3MywgNjksIDY5LCAxMjgsIDg5LCA3MywgNjksIDEyOCwgODksIDczLCA2OCwgNjgsIAorICAgIDczLCA4MywgMjAwLCA4OSwgNzMsIDQ1LCA4NSwgMTI4LCA4OSwgNzMsIDEyOCwgODksIDcwLCA2OSwgODMsIDczLCA4MywgCisgICAgMTI4LCA4OSwgNzAsIDY5LCA4MywgNzMsIDIxMSwgODksIDcwLCA2OSwgMjA2LCA4OSwgNjksIDg5LCAxMjgsIDg5LCA2OSwgCisgICAgODcsIDEyOCwgODksIDY5LCA4NSwgODgsIDEyOCwgODksIDY5LCA4NSwgODIsIDY1LCA2OSwgMTI4LCA4OSwgNjksIDg1LCAKKyAgICA4MSwgMTI4LCA4OSwgNjksIDg1LCA3NywgMTI4LCA4OSwgNjksIDg1LCA2NSwgNjksIDg0LCAxMjgsIDg5LCA2OSwgODUsIAorICAgIDY1LCA2OSwgMTI4LCA4OSwgNjksIDg0LCA3MywgODYsIDEyOCwgODksIDY5LCA4MywgODQsIDg1LCAxMjgsIDg5LCA2OSwgCisgICAgODMsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDgzLCA3MywgNzksIDgzLCAxMjgsIDg5LCA2OSwgODMsIDczLCA2OSwgODUsIAorICAgIDc4LCA3MSwgNDUsIDgwLCA2NSwgNzgsIDgzLCA3MywgNzksIDgzLCAxMjgsIDg5LCA2OSwgODMsIDczLCA2OSwgODUsIDc4LCAKKyAgICA3MSwgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgMTI4LCA4OSwgNjksIDgzLCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA3MiwgCisgICAgNzMsIDY5LCA4NSwgNzIsIDEyOCwgODksIDY5LCA4MywgNzMsIDY5LCA4NSwgNzgsIDcxLCAxMjgsIDg5LCA2OSwgODIsIDg1LCAKKyAgICAxMjgsIDg5LCA2OSwgODIsIDIxMywgODksIDY5LCA4MiwgNzMsIDEyOCwgODksIDY5LCA4MiwgNjUsIDIwMCwgODksIDY5LCAKKyAgICA4MiwgMTI4LCA4OSwgNjksIDc5LCA4MiwgNzMsIDc4LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgODksIDY5LCA3OSwgNDUsIAorICAgIDg5LCA2NSwgMTI4LCA4OSwgNjksIDc5LCA0NSwgODUsIDEyOCwgODksIDY5LCA3OSwgNDUsIDc5LCAxMjgsIDg5LCA2OSwgCisgICAgNzgsIDczLCA4MywgNjksIDIwMSwgODksIDY5LCA3OCwgNjUsIDgwLCAxMjgsIDg5LCA2OSwgNzgsIDEyOCwgODksIDY5LCAKKyAgICAyMDYsIDg5LCA2OSwgNzYsIDc2LCA3OSwgODcsIDEyOCwgODksIDY5LCA3NiwgNzYsIDc5LCAyMTUsIDg5LCA2OSwgNzIsIAorICAgIDEyOCwgODksIDY5LCA2OSwgMTI4LCA4OSwgNjksIDY1LCAyMTAsIDg5LCA2OSwgNjUsIDEyOCwgODksIDY1LCA5MCwgOTAsIAorICAgIDEyOCwgODksIDY1LCA5MCwgNzIsIDEyOCwgODksIDY1LCA5MCwgMTI4LCA4OSwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgCisgICAgMTI4LCA4OSwgNjUsIDg5LCAxMjgsIDg5LCA2NSwgODcsIDEyOCwgODksIDY1LCA4NiwgMTI4LCA4OSwgNjUsIDg1LCAxMjgsIAorICAgIDg5LCA2NSwgODQsIDg0LCAxMjgsIDg5LCA2NSwgODQsIDczLCAxMjgsIDg5LCA2NSwgODQsIDcyLCAxMjgsIDg5LCA2NSwgCisgICAgODQsIDEyOCwgODksIDY1LCA4MywgODMsIDEyOCwgODksIDY1LCA4MywgNzIsIDEyOCwgODksIDY1LCA4MywgMTI4LCA4OSwgCisgICAgNjUsIDgyLCA4MiwgMTI4LCA4OSwgNjUsIDgyLCAxMjgsIDg5LCA2NSwgMjEwLCA4OSwgNjUsIDgxLCAxMjgsIDg5LCA2NSwgCisgICAgODAsIDEyOCwgODksIDY1LCA3OCwgODMsIDY1LCA4OSwgNjUsIDEyOCwgODksIDY1LCA3OCwgNzEsIDEyOCwgODksIDY1LCAKKyAgICA3OCwgMTk5LCA4OSwgNjUsIDc4LCAxMjgsIDg5LCA2NSwgNzcsIDc5LCA3NSwgMTI4LCA4OSwgNjUsIDc3LCA2NSwgNzUsIAorICAgIDc1LCA2NSwgNzgsIDEyOCwgODksIDY1LCA3NywgMTI4LCA4OSwgNjUsIDc2LCAxMjgsIDg5LCA2NSwgNzUsIDcyLCA3MiwgCisgICAgMTI4LCA4OSwgNjUsIDc1LCA3MiwgMTI4LCA4OSwgNjUsIDc1LCA2NSwgODMsIDcyLCAxMjgsIDg5LCA2NSwgNzUsIDEyOCwgCisgICAgODksIDY1LCA3NCwgODUsIDgyLCA4NiwgNjksIDY4LCA3MywgMTk1LCA4OSwgNjUsIDc0LCAxMjgsIDg5LCA2NSwgNzMsIAorICAgIDEyOCwgODksIDY1LCA3MiwgNzIsIDEyOCwgODksIDY1LCA3MiwgMTI4LCA4OSwgNjUsIDcxLCA3OCwgMTI4LCA4OSwgNjUsIAorICAgIDcxLCA3MiwgNzIsIDEyOCwgODksIDY1LCA3MSwgNzIsIDEyOCwgODksIDY1LCA3MSwgMTI4LCA4OSwgNjUsIDcwLCAyMTMsIAorICAgIDg5LCA2NSwgNzAsIDEyOCwgODksIDY1LCA2OSwgNzcsIDc3LCA2NSwgNjksIDEyOCwgODksIDY1LCA2OCwgNzIsIDEyOCwgCisgICAgODksIDY1LCA2OCwgNjgsIDcyLCAxMjgsIDg5LCA2NSwgNjgsIDY4LCAxMjgsIDg5LCA2NSwgNjgsIDEyOCwgODksIDY1LCAKKyAgICA2NywgNzIsIDEyOCwgODksIDY1LCA2NiwgNzIsIDEyOCwgODksIDY1LCA2NiwgMTI4LCA4OSwgNjUsIDY1LCA4MiwgODUsIAorICAgIDEyOCwgODksIDY1LCA2NSwgNzMsIDEyOCwgODksIDY1LCA2NSwgNjgsIDc5LCAxMjgsIDg5LCA2NSwgNDUsIDg5LCA3OSwgCisgICAgMTI4LCA4OSwgNjUsIDQ1LCA4NSwgMTI4LCA4OSwgNjUsIDQ1LCA3OSwgMTI4LCA4OSwgNDgsIDQ4LCA1NiwgMTI4LCA4OSwgCisgICAgNDgsIDQ4LCA1NSwgMTI4LCA4OSwgNDgsIDQ4LCA1NCwgMTI4LCA4OSwgNDgsIDQ4LCA1MywgMTI4LCA4OSwgNDgsIDQ4LCAKKyAgICA1MiwgMTI4LCA4OSwgNDgsIDQ4LCA1MSwgMTI4LCA4OSwgNDgsIDQ4LCA1MCwgMTI4LCA4OSwgNDgsIDQ4LCA0OSwgNjUsIAorICAgIDEyOCwgODksIDQ4LCA0OCwgNDksIDEyOCwgODksIDQ1LCA2NywgODIsIDY5LCAxOTcsIDg4LCA4OSwgODgsIDEyOCwgODgsIAorICAgIDg5LCA4NSwgMTI4LCA4OCwgODksIDg0LCAxMjgsIDg4LCA4OSwgODIsIDg4LCAxMjgsIDg4LCA4OSwgODIsIDEyOCwgODgsIAorICAgIDg5LCA4MCwgMTI4LCA4OCwgODksIDc5LCAxMjgsIDg4LCA4OSwgNzMsIDEyOCwgODgsIDg5LCA2OSwgNjksIDEyOCwgODgsIAorICAgIDg5LCA2OSwgMTI4LCA4OCwgODksIDY1LCA2NSwgMTI4LCA4OCwgODksIDY1LCAxMjgsIDg4LCA4OSwgMTI4LCA4OCwgODcsIAorICAgIDczLCAxMjgsIDg4LCA4NywgNjksIDY5LCAxMjgsIDg4LCA4NywgNjksIDEyOCwgODgsIDg3LCA2NSwgNjUsIDEyOCwgODgsIAorICAgIDg3LCA2NSwgMTI4LCA4OCwgODYsIDY5LCAxMjgsIDg4LCA4NiwgNjUsIDEyOCwgODgsIDg1LCA3OSwgODgsIDEyOCwgODgsIAorICAgIDg1LCA3OSwgMTI4LCA4OCwgODUsIDEyOCwgODgsIDgzLCA3MiwgNjUsIDY1LCA4OSwgNjUsIDg0LCA3MiwgNzMsIDg5LCA2NSwgCisgICAgMTI4LCA4OCwgNzksIDg4LCAxMjgsIDg4LCA3OSwgODQsIDEyOCwgODgsIDc5LCA4MiwgMTI4LCA4OCwgNzksIDgwLCAxMjgsIAorICAgIDg4LCA3OSwgNjUsIDEyOCwgODgsIDc5LCAxMjgsIDg4LCA3MywgODgsIDEyOCwgODgsIDczLCA4NCwgMTI4LCA4OCwgNzMsIAorICAgIDgyLCA3OSwgMjA2LCA4OCwgNzMsIDgwLCAxMjgsIDg4LCA3MywgNjksIDg4LCAxMjgsIDg4LCA3MywgNjksIDg0LCAxMjgsIAorICAgIDg4LCA3MywgNjksIDgwLCAxMjgsIDg4LCA3MywgNjksIDEyOCwgODgsIDczLCAxMjgsIDg4LCA3MSwgMTI4LCA4OCwgNjksIAorICAgIDgzLCA4NCwgNjksIDIxMSwgODgsIDY5LCA3MiwgMTI4LCA4OCwgNjksIDY5LCAxMjgsIDg4LCA2OSwgMTI4LCA4OCwgNjUsIAorICAgIDc4LCAxMjgsIDg4LCA2NSwgNjUsIDEyOCwgODgsIDY1LCAxMjgsIDg4LCA0OCwgNDgsIDU2LCA2NSwgMTI4LCA4OCwgNDgsIAorICAgIDQ4LCA1NiwgMTI4LCA4OCwgNDgsIDQ4LCA1NSwgMTI4LCA4OCwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgODgsIDQ4LCA0OCwgCisgICAgNTQsIDEyOCwgODgsIDQ4LCA0OCwgNTMsIDEyOCwgODgsIDQ4LCA0OCwgNTIsIDY2LCAxMjgsIDg4LCA0OCwgNDgsIDUyLCAKKyAgICA2NSwgMTI4LCA4OCwgNDgsIDQ4LCA1MiwgMTI4LCA4OCwgNDgsIDQ4LCA1MSwgMTI4LCA4OCwgNDgsIDQ4LCA1MCwgMTI4LCAKKyAgICA4OCwgNDgsIDQ4LCA0OSwgMTI4LCA4NywgOTAsIDEyOCwgODcsIDg5LCA3OCwgNzgsIDEyOCwgODcsIDg5LCA3OCwgMjA2LCAKKyAgICA4NywgODYsIDEyOCwgODcsIDg1LCA4MCwgMTI4LCA4NywgODUsIDc5LCA4OCwgMTI4LCA4NywgODUsIDc5LCA4MCwgMTI4LCAKKyAgICA4NywgODUsIDc5LCAxMjgsIDg3LCA4NSwgNzgsIDc0LCAyMDcsIDg3LCA4NSwgNzgsIDEyOCwgODcsIDg1LCA3NiwgODUsIAorICAgIDEyOCwgODcsIDg1LCA3NiwgMjEzLCA4NywgODUsIDY5LCAxMjgsIDg3LCA4NSwgNjUsIDY5LCA4NCwgMTI4LCA4NywgODUsIAorICAgIDY1LCA2OSwgNzgsIDEyOCwgODcsIDg1LCAxMjgsIDg3LCA4MiwgMjE3LCA4NywgODIsIDc5LCA3OCwgNzEsIDEyOCwgODcsIAorICAgIDgyLCA3MywgODQsIDczLCA3OCwgMTk5LCA4NywgODIsIDY5LCA3OCwgNjcsIDcyLCAxMjgsIDg3LCA4MiwgNjksIDY1LCA4NCwgCisgICAgMjAwLCA4NywgODIsIDY1LCA4MCwgODAsIDY5LCAxOTYsIDg3LCA4MiwgNjUsIDgwLCAxMjgsIDg3LCA3OSwgODgsIDEyOCwgCisgICAgODcsIDc5LCA4MiwgODIsIDczLCA2OSwgMTk2LCA4NywgNzksIDgyLCA3NSwgNjksIDgyLCAxMjgsIDg3LCA3OSwgODIsIDc1LCAKKyAgICAxMjgsIDg3LCA3OSwgODIsIDIwMywgODcsIDc5LCA4MiwgNjgsIDgzLCA4MCwgNjUsIDY3LCA2OSwgMTI4LCA4NywgNzksIAorICAgIDgyLCAxOTYsIDg3LCA3OSwgODAsIDEyOCwgODcsIDc5LCA3OSwgNzgsIDEyOCwgODcsIDc5LCA3OSwgNzYsIDEyOCwgODcsIAorICAgIDc5LCA3OSwgNjgsIDgzLCA0NSwgNjcsIDgyLCA2OSwgMTk3LCA4NywgNzksIDc5LCA2OCwgMTI4LCA4NywgNzksIDc4LCAKKyAgICAxMjgsIDg3LCA3OSwgMjA2LCA4NywgNzksIDc3LCA2OSwgNzgsIDIxMSwgODcsIDc5LCA3NywgNjksIDIwNiwgODcsIDc5LCAKKyAgICA3NywgNjUsIDc4LCAyMTEsIDg3LCA3OSwgNzcsIDY1LCA3OCwgMTI4LCA4NywgNzksIDc3LCA2NSwgMjA2LCA4NywgNzksIAorICAgIDc2LCA3OSwgODMsIDc5LCAxMjgsIDg3LCA3OSwgNzYsIDE5OCwgODcsIDc5LCA2OSwgMTI4LCA4NywgNzksIDY1LCAxMjgsIAorICAgIDg3LCA3MywgODQsIDcyLCA3OSwgODUsIDIxMiwgODcsIDczLCA4NCwgNzIsIDczLCA3OCwgMTI4LCA4NywgNzMsIDc4LCA4NCwgCisgICAgNjksIDgyLCAxMjgsIDg3LCA3MywgNzgsIDc1LCA3MywgNzgsIDE5OSwgODcsIDczLCA3OCwgNzQsIDY1LCAxMjgsIDg3LCAKKyAgICA3MywgNzgsIDcxLCA4MywgMTI4LCA4NywgNzMsIDc4LCA2OSwgMTI4LCA4NywgNzMsIDc4LCAxOTcsIDg3LCA3MywgNzgsIAorICAgIDY4LCA4NSwgMTI4LCA4NywgNzMsIDc4LCA2OCwgMTI4LCA4NywgNzMsIDc4LCAxOTYsIDg3LCA3MywgNzgsIDEyOCwgODcsIAorICAgIDczLCA3MSwgNzgsIDg5LCA2NSwgNzgsIDEyOCwgODcsIDczLCA3MSwgNzEsIDc2LCAyMTcsIDg3LCA3MywgNjgsIDY5LCA0NSwgCisgICAgNzIsIDY5LCA2NSwgNjgsIDY5LCAxOTYsIDg3LCA3MywgNjgsIDE5NywgODcsIDczLCA2NSwgNzgsIDcxLCA4NywgNjUsIDY1LCAKKyAgICA3NSwgMTI4LCA4NywgNzMsIDY1LCA3OCwgNzEsIDEyOCwgODcsIDcyLCA3OSwgNzYsIDE5NywgODcsIDcyLCA3MywgODQsIAorICAgIDY5LCA0NSwgNzAsIDY5LCA2NSwgODQsIDcyLCA2OSwgODIsIDY5LCAxOTYsIDg3LCA3MiwgNzMsIDg0LCA2OSwgMTI4LCA4NywgCisgICAgNzIsIDY5LCA2OSwgNzYsIDY5LCAxOTYsIDg3LCA3MiwgNjksIDY5LCA3NiwgNjcsIDcyLCA2NSwgNzMsIDIxMCwgODcsIDcyLCAKKyAgICA2OSwgNjksIDc2LCAxMjgsIDg3LCA3MiwgNjksIDY5LCAyMDQsIDg3LCA3MiwgNjksIDY1LCA4NCwgMTI4LCA4NywgNzIsIAorICAgIDY1LCA3NiwgNjksIDEyOCwgODcsIDcxLCAxMjgsIDg3LCA2OSwgODgsIDEyOCwgODcsIDY5LCA4NSwgODgsIDEyOCwgODcsIAorICAgIDY5LCA4MywgODQsIDY5LCA4MiwgMjA2LCA4NywgNjksIDgzLCA4NCwgMTI4LCA4NywgNjksIDgzLCAyMTIsIDg3LCA2OSwgCisgICAgODAsIDEyOCwgODcsIDY5LCA3OSwgMTI4LCA4NywgNjksIDc4LCAxMjgsIDg3LCA2OSwgNzYsIDc2LCAxMjgsIDg3LCA2OSwgCisgICAgNzMsIDcxLCA3MiwgMjEyLCA4NywgNjksIDczLCA2OSwgODIsIDgzLCA4NCwgODIsIDY1LCA4MywgMjExLCA4NywgNjksIDY5LCAKKyAgICA3OCwgMTI4LCA4NywgNjksIDY4LCA3MSwgNjksIDQ1LCA4NCwgNjUsIDczLCA3NiwgNjksIDE5NiwgODcsIDY5LCA2OCwgNjgsIAorICAgIDczLCA3OCwgNzEsIDEyOCwgODcsIDY5LCA2NSwgODIsIDIxNywgODcsIDY5LCA2NSwgODAsIDc5LCA3OCwgMTI4LCA4NywgCisgICAgNjcsIDEyOCwgODcsIDY2LCAxMjgsIDg3LCA2NSwgODksIDEyOCwgODcsIDY1LCAyMTcsIDg3LCA2NSwgODgsIDczLCA3OCwgCisgICAgMTk5LCA4NywgNjUsIDg4LCAxMjgsIDg3LCA2NSwgODcsIDQ1LCA2NSwgODksIDczLCA3OCwgNDUsIDgyLCA2OSwgODMsIDcyLCAKKyAgICAxMjgsIDg3LCA2NSwgODcsIDEyOCwgODcsIDY1LCAyMTUsIDg3LCA2NSwgODYsIDIxNywgODcsIDY1LCA4NiwgNzMsIDc4LCAKKyAgICAxOTksIDg3LCA2NSwgODYsIDY5LCA4MywgMTI4LCA4NywgNjUsIDg2LCA2OSwgMTI4LCA4NywgNjUsIDg2LCAxOTcsIDg3LCAKKyAgICA2NSwgODUsIDEyOCwgODcsIDY1LCA4NCwgODQsIDc5LCAxMjgsIDg3LCA2NSwgODQsIDY5LCA4MiwgNzcsIDY5LCA3NiwgNzksIAorICAgIDc4LCAxMjgsIDg3LCA2NSwgODQsIDY5LCA4MiwgMTI4LCA4NywgNjUsIDg0LCA2OSwgMjEwLCA4NywgNjUsIDg0LCA2NywgCisgICAgNzIsIDEyOCwgODcsIDY1LCA4NCwgMTI4LCA4NywgNjUsIDgzLCA4NCwgNzMsIDc4LCA3MSwgMTI4LCA4NywgNjUsIDgzLCAKKyAgICA4MywgNjUsIDc2LCA3NiwgNjUsIDc3LCAxMjgsIDg3LCA2NSwgODMsIDc2LCA2NSwgMTI4LCA4NywgNjUsIDgzLCA3NiwgCisgICAgMTkzLCA4NywgNjUsIDgzLCA2NSwgNzYsIDc2LCA2NSwgNzcsIDEyOCwgODcsIDY1LCA4MywgNjUsIDc2LCA3NiwgNjUsIAorICAgIDIwNSwgODcsIDY1LCA4MiwgNzgsIDczLCA3OCwgMTk5LCA4NywgNjUsIDgwLCAxMjgsIDg3LCA2NSwgNzgsIDczLCA3OCwgCisgICAgMTk5LCA4NywgNjUsIDc4LCA3MSwgNzUsIDg1LCA3OSwgODEsIDEyOCwgODcsIDY1LCA3OCwgNjgsIDY5LCA4MiwgNjksIDgyLCAKKyAgICAxMjgsIDg3LCA2NSwgNzgsIDEyOCwgODcsIDY1LCA3NiwgNzYsIDEyOCwgODcsIDY1LCA3NiwgNzUsIDEyOCwgODcsIDY1LCAKKyAgICA3NiwgMjAzLCA4NywgNjUsIDczLCA4NCwgNzMsIDc4LCA3MSwgMTI4LCA4NywgNjUsIDczLCAxMjgsIDg3LCA2NSwgNjksIAorICAgIDc4LCAxMjgsIDg3LCA2NSwgNjksIDEyOCwgODcsIDY1LCA2NSwgODYsIDg1LCAxMjgsIDg3LCA0OCwgNTAsIDUzLCAxMjgsIAorICAgIDg3LCA0OCwgNTAsIDUyLCA2NSwgMTI4LCA4NywgNDgsIDUwLCA1MiwgMTI4LCA4NywgNDgsIDUwLCA1MSwgMTI4LCA4NywgCisgICAgNDgsIDUwLCA1MCwgMTI4LCA4NywgNDgsIDUwLCA0OSwgMTI4LCA4NywgNDgsIDUwLCA0OCwgMTI4LCA4NywgNDgsIDQ5LCAKKyAgICA1NywgMTI4LCA4NywgNDgsIDQ5LCA1NiwgNjUsIDEyOCwgODcsIDQ4LCA0OSwgNTYsIDEyOCwgODcsIDQ4LCA0OSwgNTUsIAorICAgIDY1LCAxMjgsIDg3LCA0OCwgNDksIDU1LCAxMjgsIDg3LCA0OCwgNDksIDU0LCAxMjgsIDg3LCA0OCwgNDksIDUzLCAxMjgsIAorICAgIDg3LCA0OCwgNDksIDUyLCA2NSwgMTI4LCA4NywgNDgsIDQ5LCA1MiwgMTI4LCA4NywgNDgsIDQ5LCA1MSwgMTI4LCA4NywgCisgICAgNDgsIDQ5LCA1MCwgMTI4LCA4NywgNDgsIDQ5LCA0OSwgMTI4LCA4NywgNDgsIDQ5LCA0OCwgNjUsIDEyOCwgODcsIDQ4LCAKKyAgICA0OSwgNDgsIDEyOCwgODcsIDQ4LCA0OCwgNTcsIDY1LCAxMjgsIDg3LCA0OCwgNDgsIDU3LCAxMjgsIDg3LCA0OCwgNDgsIAorICAgIDU2LCAxMjgsIDg3LCA0OCwgNDgsIDU1LCAxMjgsIDg3LCA0OCwgNDgsIDU0LCAxMjgsIDg3LCA0OCwgNDgsIDUzLCAxMjgsIAorICAgIDg3LCA0OCwgNDgsIDUyLCAxMjgsIDg3LCA0OCwgNDgsIDUxLCA2NSwgMTI4LCA4NywgNDgsIDQ4LCA1MSwgMTI4LCA4NywgCisgICAgNDgsIDQ4LCA1MCwgMTI4LCA4NywgNDgsIDQ4LCA0OSwgMTI4LCA4NiwgOTAsIDc3LCA2OSwgODQsIDEyOCwgODYsIDg5LCAKKyAgICA4OCwgMTI4LCA4NiwgODksIDg0LCAxMjgsIDg2LCA4OSwgODIsIDg4LCAxMjgsIDg2LCA4OSwgODIsIDEyOCwgODYsIDg5LCAKKyAgICA4MCwgMTI4LCA4NiwgODksIDEyOCwgODYsIDg3LCA2NSwgMTI4LCA4NiwgODUsIDg4LCAxMjgsIDg2LCA4NSwgODUsIDEyOCwgCisgICAgODYsIDg1LCA4NCwgMTI4LCA4NiwgODUsIDgyLCA4OCwgMTI4LCA4NiwgODUsIDgyLCAxMjgsIDg2LCA4NSwgODAsIDEyOCwgCisgICAgODYsIDg1LCA3NiwgNzEsIDY1LCAyMTAsIDg2LCA4NSwgNjksIDgxLCAxMjgsIDg2LCA4NCwgODMsIDEyOCwgODYsIDg0LCAKKyAgICAxMjgsIDg2LCA4MywgNTcsIDU3LCAxMjgsIDg2LCA4MywgNTcsIDU2LCAxMjgsIDg2LCA4MywgNTcsIDU1LCAxMjgsIDg2LCAKKyAgICA4MywgNTcsIDU0LCAxMjgsIDg2LCA4MywgNTcsIDUzLCAxMjgsIDg2LCA4MywgNTcsIDUyLCAxMjgsIDg2LCA4MywgNTcsIAorICAgIDUxLCAxMjgsIDg2LCA4MywgNTcsIDUwLCAxMjgsIDg2LCA4MywgNTcsIDQ5LCAxMjgsIDg2LCA4MywgNTcsIDQ4LCAxMjgsIAorICAgIDg2LCA4MywgNTcsIDEyOCwgODYsIDgzLCA1NiwgNTcsIDEyOCwgODYsIDgzLCA1NiwgNTYsIDEyOCwgODYsIDgzLCA1NiwgCisgICAgNTUsIDEyOCwgODYsIDgzLCA1NiwgNTQsIDEyOCwgODYsIDgzLCA1NiwgNTMsIDEyOCwgODYsIDgzLCA1NiwgNTIsIDEyOCwgCisgICAgODYsIDgzLCA1NiwgNTEsIDEyOCwgODYsIDgzLCA1NiwgNTAsIDEyOCwgODYsIDgzLCA1NiwgNDksIDEyOCwgODYsIDgzLCAKKyAgICA1NiwgNDgsIDEyOCwgODYsIDgzLCA1NiwgMTI4LCA4NiwgODMsIDU1LCA1NywgMTI4LCA4NiwgODMsIDU1LCA1NiwgMTI4LCAKKyAgICA4NiwgODMsIDU1LCA1NSwgMTI4LCA4NiwgODMsIDU1LCA1NCwgMTI4LCA4NiwgODMsIDU1LCA1MywgMTI4LCA4NiwgODMsIAorICAgIDU1LCA1MiwgMTI4LCA4NiwgODMsIDU1LCA1MSwgMTI4LCA4NiwgODMsIDU1LCA1MCwgMTI4LCA4NiwgODMsIDU1LCA0OSwgCisgICAgMTI4LCA4NiwgODMsIDU1LCA0OCwgMTI4LCA4NiwgODMsIDU1LCAxMjgsIDg2LCA4MywgNTQsIDU3LCAxMjgsIDg2LCA4MywgCisgICAgNTQsIDU2LCAxMjgsIDg2LCA4MywgNTQsIDU1LCAxMjgsIDg2LCA4MywgNTQsIDU0LCAxMjgsIDg2LCA4MywgNTQsIDUzLCAKKyAgICAxMjgsIDg2LCA4MywgNTQsIDUyLCAxMjgsIDg2LCA4MywgNTQsIDUxLCAxMjgsIDg2LCA4MywgNTQsIDUwLCAxMjgsIDg2LCAKKyAgICA4MywgNTQsIDQ5LCAxMjgsIDg2LCA4MywgNTQsIDQ4LCAxMjgsIDg2LCA4MywgNTQsIDEyOCwgODYsIDgzLCA1MywgNTcsIAorICAgIDEyOCwgODYsIDgzLCA1MywgNTYsIDEyOCwgODYsIDgzLCA1MywgNTUsIDEyOCwgODYsIDgzLCA1MywgNTQsIDEyOCwgODYsIAorICAgIDgzLCA1MywgNTMsIDEyOCwgODYsIDgzLCA1MywgNTIsIDEyOCwgODYsIDgzLCA1MywgNTEsIDEyOCwgODYsIDgzLCA1MywgCisgICAgNTAsIDEyOCwgODYsIDgzLCA1MywgNDksIDEyOCwgODYsIDgzLCA1MywgNDgsIDEyOCwgODYsIDgzLCA1MywgMTI4LCA4NiwgCisgICAgODMsIDUyLCA1NywgMTI4LCA4NiwgODMsIDUyLCA1NiwgMTI4LCA4NiwgODMsIDUyLCA1NSwgMTI4LCA4NiwgODMsIDUyLCAKKyAgICA1NCwgMTI4LCA4NiwgODMsIDUyLCA1MywgMTI4LCA4NiwgODMsIDUyLCA1MiwgMTI4LCA4NiwgODMsIDUyLCA1MSwgMTI4LCAKKyAgICA4NiwgODMsIDUyLCA1MCwgMTI4LCA4NiwgODMsIDUyLCA0OSwgMTI4LCA4NiwgODMsIDUyLCA0OCwgMTI4LCA4NiwgODMsIAorICAgIDUyLCAxMjgsIDg2LCA4MywgNTEsIDU3LCAxMjgsIDg2LCA4MywgNTEsIDU2LCAxMjgsIDg2LCA4MywgNTEsIDU1LCAxMjgsIAorICAgIDg2LCA4MywgNTEsIDU0LCAxMjgsIDg2LCA4MywgNTEsIDUzLCAxMjgsIDg2LCA4MywgNTEsIDUyLCAxMjgsIDg2LCA4MywgCisgICAgNTEsIDUxLCAxMjgsIDg2LCA4MywgNTEsIDUwLCAxMjgsIDg2LCA4MywgNTEsIDQ5LCAxMjgsIDg2LCA4MywgNTEsIDQ4LCAKKyAgICAxMjgsIDg2LCA4MywgNTEsIDEyOCwgODYsIDgzLCA1MCwgNTcsIDEyOCwgODYsIDgzLCA1MCwgNTYsIDEyOCwgODYsIDgzLCAKKyAgICA1MCwgNTUsIDEyOCwgODYsIDgzLCA1MCwgNTQsIDEyOCwgODYsIDgzLCA1MCwgNTMsIDU0LCAxMjgsIDg2LCA4MywgNTAsIAorICAgIDUzLCA1MywgMTI4LCA4NiwgODMsIDUwLCA1MywgNTIsIDEyOCwgODYsIDgzLCA1MCwgNTMsIDUxLCAxMjgsIDg2LCA4MywgCisgICAgNTAsIDUzLCA1MCwgMTI4LCA4NiwgODMsIDUwLCA1MywgNDksIDEyOCwgODYsIDgzLCA1MCwgNTMsIDQ4LCAxMjgsIDg2LCAKKyAgICA4MywgNTAsIDUzLCAxMjgsIDg2LCA4MywgNTAsIDUyLCA1NywgMTI4LCA4NiwgODMsIDUwLCA1MiwgNTYsIDEyOCwgODYsIAorICAgIDgzLCA1MCwgNTIsIDU1LCAxMjgsIDg2LCA4MywgNTAsIDUyLCA1NCwgMTI4LCA4NiwgODMsIDUwLCA1MiwgNTMsIDEyOCwgCisgICAgODYsIDgzLCA1MCwgNTIsIDUyLCAxMjgsIDg2LCA4MywgNTAsIDUyLCA1MSwgMTI4LCA4NiwgODMsIDUwLCA1MiwgNTAsIAorICAgIDEyOCwgODYsIDgzLCA1MCwgNTIsIDQ5LCAxMjgsIDg2LCA4MywgNTAsIDUyLCA0OCwgMTI4LCA4NiwgODMsIDUwLCA1MiwgCisgICAgMTI4LCA4NiwgODMsIDUwLCA1MSwgNTcsIDEyOCwgODYsIDgzLCA1MCwgNTEsIDU2LCAxMjgsIDg2LCA4MywgNTAsIDUxLCAKKyAgICA1NSwgMTI4LCA4NiwgODMsIDUwLCA1MSwgNTQsIDEyOCwgODYsIDgzLCA1MCwgNTEsIDUzLCAxMjgsIDg2LCA4MywgNTAsIAorICAgIDUxLCA1MiwgMTI4LCA4NiwgODMsIDUwLCA1MSwgNTEsIDEyOCwgODYsIDgzLCA1MCwgNTEsIDUwLCAxMjgsIDg2LCA4MywgCisgICAgNTAsIDUxLCA0OSwgMTI4LCA4NiwgODMsIDUwLCA1MSwgNDgsIDEyOCwgODYsIDgzLCA1MCwgNTEsIDEyOCwgODYsIDgzLCAKKyAgICA1MCwgNTAsIDU3LCAxMjgsIDg2LCA4MywgNTAsIDUwLCA1NiwgMTI4LCA4NiwgODMsIDUwLCA1MCwgNTUsIDEyOCwgODYsIAorICAgIDgzLCA1MCwgNTAsIDU0LCAxMjgsIDg2LCA4MywgNTAsIDUwLCA1MywgMTI4LCA4NiwgODMsIDUwLCA1MCwgNTIsIDEyOCwgCisgICAgODYsIDgzLCA1MCwgNTAsIDUxLCAxMjgsIDg2LCA4MywgNTAsIDUwLCA1MCwgMTI4LCA4NiwgODMsIDUwLCA1MCwgNDksIAorICAgIDEyOCwgODYsIDgzLCA1MCwgNTAsIDQ4LCAxMjgsIDg2LCA4MywgNTAsIDUwLCAxMjgsIDg2LCA4MywgNTAsIDQ5LCA1NywgCisgICAgMTI4LCA4NiwgODMsIDUwLCA0OSwgNTYsIDEyOCwgODYsIDgzLCA1MCwgNDksIDU1LCAxMjgsIDg2LCA4MywgNTAsIDQ5LCAKKyAgICA1NCwgMTI4LCA4NiwgODMsIDUwLCA0OSwgNTMsIDEyOCwgODYsIDgzLCA1MCwgNDksIDUyLCAxMjgsIDg2LCA4MywgNTAsIAorICAgIDQ5LCA1MSwgMTI4LCA4NiwgODMsIDUwLCA0OSwgNTAsIDEyOCwgODYsIDgzLCA1MCwgNDksIDQ5LCAxMjgsIDg2LCA4MywgCisgICAgNTAsIDQ5LCA0OCwgMTI4LCA4NiwgODMsIDUwLCA0OSwgMTI4LCA4NiwgODMsIDUwLCA0OCwgNTcsIDEyOCwgODYsIDgzLCAKKyAgICA1MCwgNDgsIDU2LCAxMjgsIDg2LCA4MywgNTAsIDQ4LCA1NSwgMTI4LCA4NiwgODMsIDUwLCA0OCwgNTQsIDEyOCwgODYsIAorICAgIDgzLCA1MCwgNDgsIDUzLCAxMjgsIDg2LCA4MywgNTAsIDQ4LCA1MiwgMTI4LCA4NiwgODMsIDUwLCA0OCwgNTEsIDEyOCwgCisgICAgODYsIDgzLCA1MCwgNDgsIDUwLCAxMjgsIDg2LCA4MywgNTAsIDQ4LCA0OSwgMTI4LCA4NiwgODMsIDUwLCA0OCwgNDgsIAorICAgIDEyOCwgODYsIDgzLCA1MCwgNDgsIDEyOCwgODYsIDgzLCA1MCwgMTI4LCA4NiwgODMsIDQ5LCA1NywgNTcsIDEyOCwgODYsIAorICAgIDgzLCA0OSwgNTcsIDU2LCAxMjgsIDg2LCA4MywgNDksIDU3LCA1NSwgMTI4LCA4NiwgODMsIDQ5LCA1NywgNTQsIDEyOCwgCisgICAgODYsIDgzLCA0OSwgNTcsIDUzLCAxMjgsIDg2LCA4MywgNDksIDU3LCA1MiwgMTI4LCA4NiwgODMsIDQ5LCA1NywgNTEsIAorICAgIDEyOCwgODYsIDgzLCA0OSwgNTcsIDUwLCAxMjgsIDg2LCA4MywgNDksIDU3LCA0OSwgMTI4LCA4NiwgODMsIDQ5LCA1NywgCisgICAgNDgsIDEyOCwgODYsIDgzLCA0OSwgNTcsIDEyOCwgODYsIDgzLCA0OSwgNTYsIDU3LCAxMjgsIDg2LCA4MywgNDksIDU2LCAKKyAgICA1NiwgMTI4LCA4NiwgODMsIDQ5LCA1NiwgNTUsIDEyOCwgODYsIDgzLCA0OSwgNTYsIDU0LCAxMjgsIDg2LCA4MywgNDksIAorICAgIDU2LCA1MywgMTI4LCA4NiwgODMsIDQ5LCA1NiwgNTIsIDEyOCwgODYsIDgzLCA0OSwgNTYsIDUxLCAxMjgsIDg2LCA4MywgCisgICAgNDksIDU2LCA1MCwgMTI4LCA4NiwgODMsIDQ5LCA1NiwgNDksIDEyOCwgODYsIDgzLCA0OSwgNTYsIDQ4LCAxMjgsIDg2LCAKKyAgICA4MywgNDksIDU2LCAxMjgsIDg2LCA4MywgNDksIDU1LCA1NywgMTI4LCA4NiwgODMsIDQ5LCA1NSwgNTYsIDEyOCwgODYsIAorICAgIDgzLCA0OSwgNTUsIDU1LCAxMjgsIDg2LCA4MywgNDksIDU1LCA1NCwgMTI4LCA4NiwgODMsIDQ5LCA1NSwgNTMsIDEyOCwgCisgICAgODYsIDgzLCA0OSwgNTUsIDUyLCAxMjgsIDg2LCA4MywgNDksIDU1LCA1MSwgMTI4LCA4NiwgODMsIDQ5LCA1NSwgNTAsIAorICAgIDEyOCwgODYsIDgzLCA0OSwgNTUsIDQ5LCAxMjgsIDg2LCA4MywgNDksIDU1LCA0OCwgMTI4LCA4NiwgODMsIDQ5LCA1NSwgCisgICAgMTI4LCA4NiwgODMsIDQ5LCA1NCwgNTcsIDEyOCwgODYsIDgzLCA0OSwgNTQsIDU2LCAxMjgsIDg2LCA4MywgNDksIDU0LCAKKyAgICA1NSwgMTI4LCA4NiwgODMsIDQ5LCA1NCwgNTQsIDEyOCwgODYsIDgzLCA0OSwgNTQsIDUzLCAxMjgsIDg2LCA4MywgNDksIAorICAgIDU0LCA1MiwgMTI4LCA4NiwgODMsIDQ5LCA1NCwgNTEsIDEyOCwgODYsIDgzLCA0OSwgNTQsIDUwLCAxMjgsIDg2LCA4MywgCisgICAgNDksIDU0LCA0OSwgMTI4LCA4NiwgODMsIDQ5LCA1NCwgNDgsIDEyOCwgODYsIDgzLCA0OSwgNTQsIDEyOCwgODYsIDgzLCAKKyAgICA0OSwgNTMsIDU3LCAxMjgsIDg2LCA4MywgNDksIDUzLCA1NiwgMTI4LCA4NiwgODMsIDQ5LCA1MywgNTUsIDEyOCwgODYsIAorICAgIDgzLCA0OSwgNTMsIDU0LCAxMjgsIDg2LCA4MywgNDksIDUzLCA1MywgMTI4LCA4NiwgODMsIDQ5LCA1MywgNTIsIDEyOCwgCisgICAgODYsIDgzLCA0OSwgNTMsIDUxLCAxMjgsIDg2LCA4MywgNDksIDUzLCA1MCwgMTI4LCA4NiwgODMsIDQ5LCA1MywgNDksIAorICAgIDEyOCwgODYsIDgzLCA0OSwgNTMsIDQ4LCAxMjgsIDg2LCA4MywgNDksIDUzLCAxMjgsIDg2LCA4MywgNDksIDUyLCA1NywgCisgICAgMTI4LCA4NiwgODMsIDQ5LCA1MiwgNTYsIDEyOCwgODYsIDgzLCA0OSwgNTIsIDU1LCAxMjgsIDg2LCA4MywgNDksIDUyLCAKKyAgICA1NCwgMTI4LCA4NiwgODMsIDQ5LCA1MiwgNTMsIDEyOCwgODYsIDgzLCA0OSwgNTIsIDUyLCAxMjgsIDg2LCA4MywgNDksIAorICAgIDUyLCA1MSwgMTI4LCA4NiwgODMsIDQ5LCA1MiwgNTAsIDEyOCwgODYsIDgzLCA0OSwgNTIsIDQ5LCAxMjgsIDg2LCA4MywgCisgICAgNDksIDUyLCA0OCwgMTI4LCA4NiwgODMsIDQ5LCA1MiwgMTI4LCA4NiwgODMsIDQ5LCA1MSwgNTcsIDEyOCwgODYsIDgzLCAKKyAgICA0OSwgNTEsIDU2LCAxMjgsIDg2LCA4MywgNDksIDUxLCA1NSwgMTI4LCA4NiwgODMsIDQ5LCA1MSwgNTQsIDEyOCwgODYsIAorICAgIDgzLCA0OSwgNTEsIDUzLCAxMjgsIDg2LCA4MywgNDksIDUxLCA1MiwgMTI4LCA4NiwgODMsIDQ5LCA1MSwgNTEsIDEyOCwgCisgICAgODYsIDgzLCA0OSwgNTEsIDUwLCAxMjgsIDg2LCA4MywgNDksIDUxLCA0OSwgMTI4LCA4NiwgODMsIDQ5LCA1MSwgNDgsIAorICAgIDEyOCwgODYsIDgzLCA0OSwgNTEsIDEyOCwgODYsIDgzLCA0OSwgNTAsIDU3LCAxMjgsIDg2LCA4MywgNDksIDUwLCA1NiwgCisgICAgMTI4LCA4NiwgODMsIDQ5LCA1MCwgNTUsIDEyOCwgODYsIDgzLCA0OSwgNTAsIDU0LCAxMjgsIDg2LCA4MywgNDksIDUwLCAKKyAgICA1MywgMTI4LCA4NiwgODMsIDQ5LCA1MCwgNTIsIDEyOCwgODYsIDgzLCA0OSwgNTAsIDUxLCAxMjgsIDg2LCA4MywgNDksIAorICAgIDUwLCA1MCwgMTI4LCA4NiwgODMsIDQ5LCA1MCwgNDksIDEyOCwgODYsIDgzLCA0OSwgNTAsIDQ4LCAxMjgsIDg2LCA4MywgCisgICAgNDksIDUwLCAxMjgsIDg2LCA4MywgNDksIDQ5LCA1NywgMTI4LCA4NiwgODMsIDQ5LCA0OSwgNTYsIDEyOCwgODYsIDgzLCAKKyAgICA0OSwgNDksIDU1LCAxMjgsIDg2LCA4MywgNDksIDQ5LCA1NCwgMTI4LCA4NiwgODMsIDQ5LCA0OSwgNTMsIDEyOCwgODYsIAorICAgIDgzLCA0OSwgNDksIDUyLCAxMjgsIDg2LCA4MywgNDksIDQ5LCA1MSwgMTI4LCA4NiwgODMsIDQ5LCA0OSwgNTAsIDEyOCwgCisgICAgODYsIDgzLCA0OSwgNDksIDQ5LCAxMjgsIDg2LCA4MywgNDksIDQ5LCA0OCwgMTI4LCA4NiwgODMsIDQ5LCA0OSwgMTI4LCAKKyAgICA4NiwgODMsIDQ5LCA0OCwgNTcsIDEyOCwgODYsIDgzLCA0OSwgNDgsIDU2LCAxMjgsIDg2LCA4MywgNDksIDQ4LCA1NSwgCisgICAgMTI4LCA4NiwgODMsIDQ5LCA0OCwgNTQsIDEyOCwgODYsIDgzLCA0OSwgNDgsIDUzLCAxMjgsIDg2LCA4MywgNDksIDQ4LCAKKyAgICA1MiwgMTI4LCA4NiwgODMsIDQ5LCA0OCwgNTEsIDEyOCwgODYsIDgzLCA0OSwgNDgsIDUwLCAxMjgsIDg2LCA4MywgNDksIAorICAgIDQ4LCA0OSwgMTI4LCA4NiwgODMsIDQ5LCA0OCwgNDgsIDEyOCwgODYsIDgzLCA0OSwgNDgsIDEyOCwgODYsIDgzLCA0OSwgCisgICAgMTI4LCA4NiwgODMsIDEyOCwgODYsIDgyLCA2NSwgNjcsIDcyLCA4OSwgMTI4LCA4NiwgNzksIDg4LCAxMjgsIDg2LCA3OSwgCisgICAgODcsIDY5LCA3NiwgNDUsIDY3LCA2NSwgODIsIDgyLCA3MywgNjksIDIxMCwgODYsIDc5LCA4NywgMTI4LCA4NiwgNzksIDg1LCAKKyAgICAxMjgsIDg2LCA3OSwgODQsIDEyOCwgODYsIDc5LCA4MCwgMTI4LCA4NiwgNzksIDc5LCAxMjgsIDg2LCA3OSwgNzcsIDEyOCwgCisgICAgODYsIDc5LCA3NiwgODUsIDc3LCAxOTcsIDg2LCA3OSwgNzYsIDg0LCA2NSwgNzEsIDE5NywgODYsIDc5LCA3NiwgNjcsIDY1LCAKKyAgICA3OCwgNzksIDEyOCwgODYsIDc5LCA3MywgMTk2LCA4NiwgNzksIDczLCA2NywgNzMsIDc4LCA3MSwgMTI4LCA4NiwgNzksIAorICAgIDczLCA2NywgNjksIDc2LCA2OSwgODMsIDIxMSwgODYsIDc5LCA3MywgNjcsIDY5LCAxOTYsIDg2LCA3OSwgNjcsIDY1LCA3NiwgCisgICAgNzMsIDkwLCA2NSwgODQsIDczLCA3OSwgMjA2LCA4NiwgNzksIDY3LCA2NSwgMjA0LCA4NiwgNzksIDEyOCwgODYsIDczLCAKKyAgICA4OCwgMTI4LCA4NiwgNzMsIDg0LCA4MiwgNzMsIDc5LCA3NiwgNDUsIDUwLCAxMjgsIDg2LCA3MywgODQsIDgyLCA3MywgNzksIAorICAgIDc2LCAxMjgsIDg2LCA3MywgODQsIDY1LCA2OSwgNDUsIDUwLCAxMjgsIDg2LCA3MywgODQsIDY1LCA2OSwgMTI4LCA4NiwgCisgICAgNzMsIDg0LCAxMjgsIDg2LCA3MywgODMsIDczLCA3MSwgNzksIDg0LCA3MiwgNzMsIDE5NSwgODYsIDczLCA4MywgNjUsIDgyLCAKKyAgICA3MSwgNjUsIDg5LCA2NSwgMTI4LCA4NiwgNzMsIDgzLCA2NSwgODIsIDcxLCA2NSwgMTI4LCA4NiwgNzMsIDgzLCA2NSwgODIsIAorICAgIDcxLCAxOTMsIDg2LCA3MywgODIsIDczLCA2NSwgNzcsIDEyOCwgODYsIDczLCA4MiwgNzEsIDc5LCAxMjgsIDg2LCA3MywgCisgICAgODIsIDcxLCA2NSwgMTI4LCA4NiwgNzMsIDgyLCA2NSwgNzcsIDY1LCAxMjgsIDg2LCA3MywgODAsIDEyOCwgODYsIDczLCAKKyAgICA3OSwgNzYsIDczLCA3OCwgMTI4LCA4NiwgNzMsIDc4LCA2OSwgNzEsIDY1LCA4MiwgNDUsIDUxLCAxMjgsIDg2LCA3MywgNzgsIAorICAgIDY5LCA3MSwgNjUsIDgyLCA0NSwgNTAsIDEyOCwgODYsIDczLCA3OCwgNjksIDcxLCA2NSwgODIsIDEyOCwgODYsIDczLCA3OCwgCisgICAgNjksIDcxLCA2NSwgMjEwLCA4NiwgNzMsIDc4LCA2OSwgMTI4LCA4NiwgNzMsIDc4LCAxMjgsIDg2LCA3MywgNzYsIDc2LCAKKyAgICA2NSwgNzEsIDY5LCAxMjgsIDg2LCA3MywgNzMsIDEyOCwgODYsIDczLCA2OSwgODgsIDEyOCwgODYsIDczLCA2OSwgODcsIAorICAgIDczLCA3OCwgMTk5LCA4NiwgNzMsIDY5LCA4NywgNjgsIDY1LCA4NCwgMTkzLCA4NiwgNzMsIDY5LCA4NCwgMTI4LCA4NiwgCisgICAgNzMsIDY5LCA4MCwgMTI4LCA4NiwgNzMsIDY5LCAxMjgsIDg2LCA3MywgNjgsIDc0LCA0NSwgNTAsIDEyOCwgODYsIDczLCAKKyAgICA2OCwgNzQsIDEyOCwgODYsIDczLCA2OCwgNjksIDc5LCA2NywgNjUsIDgzLCA4MywgNjksIDg0LCA4NCwgNjksIDEyOCwgODYsIAogICAgIDczLCA2OCwgNjksIDIwNywgODYsIDczLCA2OCwgNjUsIDEyOCwgODYsIDczLCA2NywgODQsIDc5LCA4MiwgMjE3LCA4NiwgCi0gICAgNzMsIDY2LCA4MiwgNjUsIDg0LCA3MywgNzksIDIwNiwgODYsIDczLCAxMjgsIDg2LCA2OSwgODgsIDEyOCwgODYsIDY5LCAKLSAgICA4NywgMTI4LCA4NiwgNjksIDIxNSwgODYsIDY5LCA4NSwgODgsIDEyOCwgODYsIDY5LCA4NSwgNzcsIDEyOCwgODYsIDY5LCAKLSAgICA4NSwgNjUsIDY5LCA4MCwgNjksIDc4LCAxMjgsIDg2LCA2OSwgODUsIDY1LCA2OSwgMTI4LCA4NiwgNjksIDgzLCA4NCwgNjUsIAotICAgIDEyOCwgODYsIDY5LCA4MywgODMsIDY5LCAyMDQsIDg2LCA2OSwgODIsIDIxNywgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA3NiwgODksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA3NiwgMjE3LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTQsIDQ1LCA0OCwgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDU0LCA0NSwgNDgsIDUzLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1NCwgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTQsIDQ1LCAKLSAgICA0OCwgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDU0LCA0NSwgNDgsIDUwLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTQsIDQ1LCA0OCwgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIDU0LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MywgNDUsIDQ4LCA1MywgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTMsIDQ1LCAKLSAgICA0OCwgNTIsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIDUxLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MCwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTMsIDQ1LCA0OCwgNDksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIDQ4LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MiwgNDUsIDQ4LCA1NCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTIsIDQ1LCAKLSAgICA0OCwgNTMsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUyLCA0NSwgNDgsIDUyLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MSwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTIsIDQ1LCA0OCwgNTAsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUyLCA0NSwgNDgsIDQ5LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MiwgNDUsIDQ4LCA0OCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTEsIDQ1LCAKLSAgICA0OCwgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUxLCA0NSwgNDgsIDUzLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTEsIDQ1LCA0OCwgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUxLCA0NSwgNDgsIDUwLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MSwgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTEsIDQ1LCAKLSAgICA0OCwgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIDU0LCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1MywgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTAsIDQ1LCA0OCwgNTIsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIDUxLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MCwgNDUsIDQ4LCA1MCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTAsIDQ1LCAKLSAgICA0OCwgNDksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIDQ4LCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1NCwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDksIDQ1LCA0OCwgNTMsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDQ5LCA0NSwgNDgsIDUyLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA0OSwgNDUsIDQ4LCA1MSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDksIDQ1LCAKLSAgICA0OCwgNTAsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ5LCA0NSwgNDgsIDQ5LCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA0OCwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDgsIDQ1LCA0OCwgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDQ4LCA0NSwgNDgsIDUzLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA0OCwgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDgsIDQ1LCAKLSAgICA0OCwgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ4LCA0NSwgNDgsIDUwLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDgsIDQ1LCA0OCwgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCAxMjgsIDg2LCA2OSwgODIsIDgzLCA3MywgNjcsIDc2LCA2OSwgMTI4LCA4NiwgNjksIDgyLCA4MywgMTk3LCAKLSAgICA4NiwgNjksIDgyLCA3MSwgNjksIDEyOCwgODYsIDY5LCA4MiwgNjgsIDczLCA3MSwgODIsIDczLCA4MywgMTI4LCA4NiwgNjksIAotICAgIDgwLCAxMjgsIDg2LCA2OSwgNzgsIDY4LCAxMjgsIDg2LCA2OSwgNzMsIDc2LCAxMjgsIDg2LCA2OSwgNzIsIDczLCA2NywgCi0gICAgNzYsIDY5LCAxMjgsIDg2LCA2OSwgNzIsIDEyOCwgODYsIDY5LCAyMDAsIDg2LCA2OSwgNjksIDEyOCwgODYsIDY5LCAxOTcsIAotICAgIDg2LCA2OSwgNjgsIDY5LCAxMjgsIDg2LCA2OSwgNjcsIDg0LCA3OSwgMjEwLCA4NiwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgCi0gICAgMTI4LCA4NiwgNjUsIDg4LCAxMjgsIDg2LCA2NSwgODYsIDEyOCwgODYsIDY1LCAyMTQsIDg2LCA2NSwgODQsIDcyLCA4OSwgCi0gICAgMTI4LCA4NiwgNjUsIDg0LCAxMjgsIDg2LCA2NSwgODMsIDg0LCA3OCwgNjksIDgzLCAyMTEsIDg2LCA2NSwgODMsIDczLCAKLSAgICA4MywgMTI4LCA4NiwgNjUsIDgyLCA4OSwgMjExLCA4NiwgNjUsIDgyLCA3MywgNzUsIDY1LCAxMjgsIDg2LCA2NSwgODIsIAotICAgIDczLCA2NSwgNzgsIDIxMiwgODYsIDY1LCA4MiwgNzMsIDY1LCAxMjgsIDg2LCA2NSwgODIsIDczLCAxOTMsIDg2LCA2NSwgCi0gICAgODIsIDY5LCA3MywgNjUsIDIwMSwgODYsIDY1LCA4MiwgNjksIDczLCAxOTMsIDg2LCA2NSwgODAsIDc5LCA4NSwgODIsIDgzLCAKLSAgICAxMjgsIDg2LCA2NSwgODAsIDEyOCwgODYsIDY1LCA3OCwgNjksIDEyOCwgODYsIDY1LCA3NywgNjUsIDcxLCA3OSwgNzcsIAotICAgIDg1LCA3NSwgNzIsIDY1LCAxMjgsIDg2LCA2NSwgNzcsIDY1LCA3MSwgNzksIDc3LCA4NSwgNzUsIDcyLCAxOTMsIDg2LCA2NSwgCi0gICAgNzYsIDc2LCA2OSwgODksIDEyOCwgODYsIDY1LCA2NSwgODYsIDg1LCAxMjgsIDg2LCA2NSwgNjUsIDEyOCwgODYsIDQ4LCAKKyAgICA3MywgNjYsIDgyLCA2NSwgODQsIDczLCA3OSwgMjA2LCA4NiwgNzMsIDEyOCwgODYsIDcwLCA2NSwgMTI4LCA4NiwgNjksIAorICAgIDg4LCAxMjgsIDg2LCA2OSwgODcsIDEyOCwgODYsIDY5LCAyMTUsIDg2LCA2OSwgODUsIDg4LCAxMjgsIDg2LCA2OSwgODUsIAorICAgIDc3LCAxMjgsIDg2LCA2OSwgODUsIDY1LCA2OSwgODAsIDY5LCA3OCwgMTI4LCA4NiwgNjksIDg1LCA2NSwgNjksIDEyOCwgCisgICAgODYsIDY5LCA4MywgODQsIDY1LCAxMjgsIDg2LCA2OSwgODMsIDgzLCA2OSwgMjA0LCA4NiwgNjksIDgyLCAyMTcsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNzYsIDg5LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgCisgICAgNzYsIDIxNywgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDU0LCA0NSwgNDgsIDU0LCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA1MywgMTI4LCA4NiwgNjksIDgyLCA4NCwgCisgICAgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTQsIDQ1LCA0OCwgNTIsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIAorICAgIDc2LCA0NSwgNDgsIDU0LCA0NSwgNDgsIDUxLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA1NCwgNDUsIDQ4LCA1MCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTQsIDQ1LCA0OCwgCisgICAgNDksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDU0LCA0NSwgNDgsIDQ4LCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1NCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgCisgICAgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTMsIDQ1LCA0OCwgNTMsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIAorICAgIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIDUyLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA1MywgNDUsIDQ4LCA1MSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTMsIDQ1LCA0OCwgCisgICAgNTAsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIDQ5LCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA0OCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgCisgICAgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTIsIDQ1LCA0OCwgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIAorICAgIDc2LCA0NSwgNDgsIDUyLCA0NSwgNDgsIDUzLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA1MiwgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTIsIDQ1LCA0OCwgCisgICAgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUyLCA0NSwgNDgsIDUwLCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgCisgICAgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTIsIDQ1LCA0OCwgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIAorICAgIDc2LCA0NSwgNDgsIDUxLCA0NSwgNDgsIDU0LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA1MSwgNDUsIDQ4LCA1MywgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTEsIDQ1LCA0OCwgCisgICAgNTIsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUxLCA0NSwgNDgsIDUxLCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgCisgICAgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTEsIDQ1LCA0OCwgNDksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIAorICAgIDc2LCA0NSwgNDgsIDUxLCA0NSwgNDgsIDQ4LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA1MCwgNDUsIDQ4LCA1NCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTAsIDQ1LCA0OCwgCisgICAgNTMsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIDUyLCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1MSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgCisgICAgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTAsIDQ1LCA0OCwgNTAsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIAorICAgIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIDQ5LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA1MCwgNDUsIDQ4LCA0OCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDksIDQ1LCA0OCwgCisgICAgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ5LCA0NSwgNDgsIDUzLCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgNjksIDgyLCA4NCwgCisgICAgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDksIDQ1LCA0OCwgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIAorICAgIDc2LCA0NSwgNDgsIDQ5LCA0NSwgNDgsIDUwLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA0OSwgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDksIDQ1LCA0OCwgCisgICAgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ4LCA0NSwgNDgsIDU0LCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MywgMTI4LCA4NiwgNjksIDgyLCA4NCwgCisgICAgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDgsIDQ1LCA0OCwgNTIsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIAorICAgIDc2LCA0NSwgNDgsIDQ4LCA0NSwgNDgsIDUxLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA0OCwgNDUsIDQ4LCA1MCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDgsIDQ1LCA0OCwgCisgICAgNDksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ4LCA0NSwgNDgsIDQ4LCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgMTI4LCA4NiwgNjksIDgyLCA4MywgNzMsIDY3LCA3NiwgNjksIDEyOCwgODYsIAorICAgIDY5LCA4MiwgODMsIDE5NywgODYsIDY5LCA4MiwgNzEsIDY5LCAxMjgsIDg2LCA2OSwgODIsIDY4LCA3MywgNzEsIDgyLCA3MywgCisgICAgODMsIDEyOCwgODYsIDY5LCA4MCwgMTI4LCA4NiwgNjksIDc4LCA2OCwgMTI4LCA4NiwgNjksIDczLCA3NiwgMTI4LCA4NiwgCisgICAgNjksIDcyLCA3MywgNjcsIDc2LCA2OSwgMTI4LCA4NiwgNjksIDcyLCAxMjgsIDg2LCA2OSwgMjAwLCA4NiwgNjksIDY5LCAKKyAgICAxMjgsIDg2LCA2OSwgMTk3LCA4NiwgNjksIDY4LCA2OSwgMTI4LCA4NiwgNjksIDY3LCA4NCwgNzksIDIxMCwgODYsIDY1LCAKKyAgICA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgODYsIDY1LCA4OCwgMTI4LCA4NiwgNjUsIDg2LCAxMjgsIDg2LCA2NSwgMjE0LCAKKyAgICA4NiwgNjUsIDg1LCAxMjgsIDg2LCA2NSwgODQsIDcyLCA4OSwgMTI4LCA4NiwgNjUsIDg0LCAxMjgsIDg2LCA2NSwgODMsIAorICAgIDg0LCA3OCwgNjksIDgzLCAyMTEsIDg2LCA2NSwgODMsIDczLCA4MywgMTI4LCA4NiwgNjUsIDgyLCA4OSwgMjExLCA4NiwgCisgICAgNjUsIDgyLCA3MywgNzUsIDY1LCAxMjgsIDg2LCA2NSwgODIsIDczLCA2NSwgNzgsIDIxMiwgODYsIDY1LCA4MiwgNzMsIDY1LCAKKyAgICAxMjgsIDg2LCA2NSwgODIsIDczLCAxOTMsIDg2LCA2NSwgODIsIDY5LCA3MywgNjUsIDIwMSwgODYsIDY1LCA4MiwgNjksIAorICAgIDczLCAxOTMsIDg2LCA2NSwgODAsIDc5LCA4NSwgODIsIDgzLCAxMjgsIDg2LCA2NSwgODAsIDEyOCwgODYsIDY1LCA3OCwgCisgICAgNjksIDEyOCwgODYsIDY1LCA3NywgNjUsIDcxLCA3OSwgNzcsIDg1LCA3NSwgNzIsIDY1LCAxMjgsIDg2LCA2NSwgNzcsIDY1LCAKKyAgICA3MSwgNzksIDc3LCA4NSwgNzUsIDcyLCAxOTMsIDg2LCA2NSwgNzYsIDc2LCA2OSwgODksIDEyOCwgODYsIDY1LCA3MywgCisgICAgMTI4LCA4NiwgNjUsIDcyLCAxMjgsIDg2LCA2NSwgNjUsIDg2LCA4NSwgMTI4LCA4NiwgNjUsIDY1LCAxMjgsIDg2LCA0OCwgCiAgICAgNTIsIDQ4LCA2NSwgMTI4LCA4NiwgNDgsIDUyLCA0OCwgMTI4LCA4NiwgNDgsIDUxLCA1NywgMTI4LCA4NiwgNDgsIDUxLCAKICAgICA1NiwgMTI4LCA4NiwgNDgsIDUxLCA1NSwgNjUsIDEyOCwgODYsIDQ4LCA1MSwgNTUsIDEyOCwgODYsIDQ4LCA1MSwgNTQsIAogICAgIDEyOCwgODYsIDQ4LCA1MSwgNTMsIDEyOCwgODYsIDQ4LCA1MSwgNTIsIDEyOCwgODYsIDQ4LCA1MSwgNTEsIDY1LCAxMjgsIApAQCAtMzY1LDE1ICs0NTYsMTYgQEAKICAgICA4NSwgODUsIDg1LCA1MCwgMTI4LCA4NSwgODUsIDY5LCAxMjgsIDg1LCA4NCwgODUsIDc1LCA3MywgMTI4LCA4NSwgODMsIAogICAgIDgzLCA4NSwgNTEsIDEyOCwgODUsIDgzLCA4MywgODUsIDEyOCwgODUsIDgzLCA3MiwgODgsIDEyOCwgODUsIDgzLCA3MiwgCiAgICAgODUsIDc3LCA4OCwgMTI4LCA4NSwgODMsIDcyLCA2OSwgNzgsIDc4LCA2NSwgMTI4LCA4NSwgODMsIDcyLCA1MCwgMTI4LCAKLSAgICA4NSwgODMsIDcyLCAxMjgsIDg1LCA4MywgMjAwLCA4NSwgODMsIDY5LCAxOTYsIDg1LCA4MywgNjksIDEyOCwgODUsIDgyLCAKLSAgICA4NSwgMjE4LCA4NSwgODIsIDg1LCA4MywgMTI4LCA4NSwgODIsIDg1LCA2OCwgNjUsIDEyOCwgODUsIDgyLCA4NSwgNjgsIAotICAgIDE5MywgODUsIDgyLCA4NSwgMTI4LCA4NSwgODIsIDIxMywgODUsIDgyLCA3OCwgMTI4LCA4NSwgODIsIDczLCA3OCwgNjksIAotICAgIDEyOCwgODUsIDgyLCA3MywgNTEsIDEyOCwgODUsIDgyLCA3MywgMTI4LCA4NSwgODIsIDY1LCA3OCwgODUsIDgzLCAxMjgsIAotICAgIDg1LCA4MiwgNjUsIDEyOCwgODUsIDgyLCA1MiwgMTI4LCA4NSwgODIsIDUwLCAxMjgsIDg1LCA4MiwgMTc4LCA4NSwgODAsIAotICAgIDg3LCA2NSwgODIsIDY4LCA4MywgMTI4LCA4NSwgODAsIDg3LCA2NSwgODIsIDY4LCAyMTEsIDg1LCA4MCwgODcsIDY1LCA4MiwgCi0gICAgNjgsIDEyOCwgODUsIDgwLCA4NywgNjUsIDgyLCAxOTYsIDg1LCA4MCwgODQsIDg1LCA4MiwgNzgsIDEyOCwgODUsIDgwLCAKLSAgICA4MywgNzMsIDc2LCA3OSwgNzgsIDEyOCwgODUsIDgwLCA4MywgNzMsIDc2LCA3OSwgMjA2LCA4NSwgODAsIDgyLCA3MywgNzEsIAotICAgIDcyLCAyMTIsIDg1LCA4MCwgODAsIDY5LCAyMTAsIDg1LCA4MCwgNjUsIDY4LCA3MiwgNzcsIDY1LCA3OCwgNzMsIDg5LCA2NSwgCisgICAgODUsIDgzLCA3MiwgMTI4LCA4NSwgODMsIDIwMCwgODUsIDgzLCA2OSwgMTk2LCA4NSwgODMsIDY5LCA0NSwgNTAsIDEyOCwgCisgICAgODUsIDgzLCA2OSwgNDUsIDQ5LCAxMjgsIDg1LCA4MywgNjksIDEyOCwgODUsIDgzLCAxOTcsIDg1LCA4MiwgODUsIDIxOCwgCisgICAgODUsIDgyLCA4NSwgODMsIDEyOCwgODUsIDgyLCA4NSwgNjgsIDY1LCAxMjgsIDg1LCA4MiwgODUsIDY4LCAxOTMsIDg1LCAKKyAgICA4MiwgODUsIDEyOCwgODUsIDgyLCAyMTMsIDg1LCA4MiwgNzgsIDEyOCwgODUsIDgyLCA3MywgNzgsIDY5LCAxMjgsIDg1LCAKKyAgICA4MiwgNzMsIDUxLCAxMjgsIDg1LCA4MiwgNzMsIDEyOCwgODUsIDgyLCA2NSwgNzgsIDg1LCA4MywgMTI4LCA4NSwgODIsIAorICAgIDY1LCAxMjgsIDg1LCA4MiwgNTIsIDEyOCwgODUsIDgyLCA1MCwgMTI4LCA4NSwgODIsIDE3OCwgODUsIDgwLCA4NywgNjUsIAorICAgIDgyLCA2OCwgODMsIDEyOCwgODUsIDgwLCA4NywgNjUsIDgyLCA2OCwgMjExLCA4NSwgODAsIDg3LCA2NSwgODIsIDY4LCAKKyAgICAxMjgsIDg1LCA4MCwgODcsIDY1LCA4MiwgMTk2LCA4NSwgODAsIDg0LCA4NSwgODIsIDc4LCAxMjgsIDg1LCA4MCwgODMsIAorICAgIDczLCA3NiwgNzksIDc4LCAxMjgsIDg1LCA4MCwgODMsIDczLCA3NiwgNzksIDIwNiwgODUsIDgwLCA4MiwgNzMsIDcxLCA3MiwgCisgICAgMjEyLCA4NSwgODAsIDgwLCA2OSwgMjEwLCA4NSwgODAsIDY1LCA2OCwgNzIsIDc3LCA2NSwgNzgsIDczLCA4OSwgNjUsIAogICAgIDEyOCwgODUsIDgwLCA0NSwgODAsIDc5LCA3MywgNzgsIDg0LCA3MywgNzgsIDE5OSwgODUsIDc5LCA3OCwgMTI4LCA4NSwgCiAgICAgNzgsIDc4LCAxMjgsIDg1LCA3OCwgNzcsIDY1LCA4MiwgODIsIDczLCA2OSwgMTk2LCA4NSwgNzgsIDc1LCA3OCwgNzksIDg3LCAKICAgICA3OCwgMTI4LCA4NSwgNzgsIDczLCA4NiwgNjksIDgyLCA4MywgNjUsIDIwNCwgODUsIDc4LCA3MywgODQsIDg5LCAxMjgsIApAQCAtMzg4LDEwMCArNDgwLDEwNCBAQAogICAgIDEyOCwgODUsIDc1LCA4NSwgMTI4LCA4NSwgNzUsIDgyLCA2NSwgNzMsIDc4LCA3MywgNjUsIDIwNiwgODUsIDc1LCA2NSwgCiAgICAgODIsIDY1LCAxMjgsIDg1LCA3NSwgNjUsIDgyLCAxOTMsIDg1LCA3NSwgMTI4LCA4NSwgNzMsIDc2LCA3NiwgNjksIDY1LCAKICAgICA3OCwgNzgsIDEyOCwgODUsIDczLCA3MSwgNzIsIDg1LCAyMTAsIDg1LCA3MSwgNjUsIDgyLCA3MywgODQsIDczLCAxOTUsIAotICAgIDg1LCA2OSwgODksIDEyOCwgODUsIDY5LCA2OSwgMTI4LCA4NSwgNjksIDY1LCAxMjgsIDg1LCA2OCwgODUsIDcxLCAxMjgsIAotICAgIDg1LCA2OCwgNjUsIDg0LCA4NCwgNjUsIDEyOCwgODUsIDY4LCA2NSwgODQsIDg0LCAxOTMsIDg1LCA2OCwgNjUsIDY1LCA4NCwgCi0gICAgMTI4LCA4NSwgNjgsIDEyOCwgODUsIDE5NiwgODUsIDY3LCAxMjgsIDg1LCA2NiwgODUsIDcwLCA3MywgNzYsIDczLCAxMjgsIAotICAgIDg1LCA2NiwgNzIsIDY1LCA4OSwgNjUsIDg0LCAyMDcsIDg1LCA2NiwgNjUsIDY4LCA2NSwgNzcsIDY1LCAxMjgsIDg1LCA2NiwgCi0gICAgMTI4LCA4NSwgNjUsIDg0LCA3MiwgMTI4LCA4NSwgNjUsIDEyOCwgODUsIDE3OCwgODUsIDQ4LCA1MiwgNTAsIDEyOCwgODUsIAotICAgIDQ4LCA1MiwgNDksIDEyOCwgODUsIDQ4LCA1MiwgNDgsIDEyOCwgODUsIDQ4LCA1MSwgNTcsIDEyOCwgODUsIDQ4LCA1MSwgCi0gICAgNTYsIDEyOCwgODUsIDQ4LCA1MSwgNTUsIDEyOCwgODUsIDQ4LCA1MSwgNTQsIDEyOCwgODUsIDQ4LCA1MSwgNTMsIDEyOCwgCi0gICAgODUsIDQ4LCA1MSwgNTIsIDEyOCwgODUsIDQ4LCA1MSwgNTEsIDEyOCwgODUsIDQ4LCA1MSwgNTAsIDY1LCAxMjgsIDg1LCAKLSAgICA0OCwgNTEsIDUwLCAxMjgsIDg1LCA0OCwgNTEsIDQ5LCAxMjgsIDg1LCA0OCwgNTEsIDQ4LCAxMjgsIDg1LCA0OCwgNTAsIAotICAgIDU3LCA2NSwgMTI4LCA4NSwgNDgsIDUwLCA1NywgMTI4LCA4NSwgNDgsIDUwLCA1NiwgMTI4LCA4NSwgNDgsIDUwLCA1NSwgCi0gICAgMTI4LCA4NSwgNDgsIDUwLCA1NCwgMTI4LCA4NSwgNDgsIDUwLCA1MywgMTI4LCA4NSwgNDgsIDUwLCA1MiwgMTI4LCA4NSwgCi0gICAgNDgsIDUwLCA1MSwgNjUsIDEyOCwgODUsIDQ4LCA1MCwgNTEsIDEyOCwgODUsIDQ4LCA1MCwgNTAsIDEyOCwgODUsIDQ4LCAKLSAgICA1MCwgNDksIDEyOCwgODUsIDQ4LCA1MCwgNDgsIDEyOCwgODUsIDQ4LCA0OSwgNTcsIDEyOCwgODUsIDQ4LCA0OSwgNTYsIAotICAgIDEyOCwgODUsIDQ4LCA0OSwgNTUsIDEyOCwgODUsIDQ4LCA0OSwgNTQsIDEyOCwgODUsIDQ4LCA0OSwgNTMsIDEyOCwgODUsIAotICAgIDQ4LCA0OSwgNTIsIDEyOCwgODUsIDQ4LCA0OSwgNTEsIDEyOCwgODUsIDQ4LCA0OSwgNTAsIDEyOCwgODUsIDQ4LCA0OSwgCi0gICAgNDksIDEyOCwgODUsIDQ4LCA0OSwgNDgsIDEyOCwgODUsIDQ4LCA0OCwgNTcsIDEyOCwgODUsIDQ4LCA0OCwgNTYsIDEyOCwgCi0gICAgODUsIDQ4LCA0OCwgNTUsIDEyOCwgODUsIDQ4LCA0OCwgNTQsIDY2LCAxMjgsIDg1LCA0OCwgNDgsIDU0LCA2NSwgMTI4LCAKLSAgICA4NSwgNDgsIDQ4LCA1NCwgMTI4LCA4NSwgNDgsIDQ4LCA1MywgMTI4LCA4NSwgNDgsIDQ4LCA1MiwgMTI4LCA4NSwgNDgsIAotICAgIDQ4LCA1MSwgMTI4LCA4NSwgNDgsIDQ4LCA1MCwgMTI4LCA4NSwgNDgsIDQ4LCA0OSwgMTI4LCA4NSwgNDUsIDczLCA0NSwgCi0gICAgNzMsIDEyOCwgODUsIDQ1LCA2OSwgNzksIDQ1LCA2OSwgODUsIDEyOCwgODQsIDkwLCA4NSwgMTI4LCA4NCwgOTAsIDc5LCAKLSAgICA2NSwgMTI4LCA4NCwgOTAsIDc5LCAxMjgsIDg0LCA5MCwgNzMsIDIxMCwgODQsIDkwLCA3MywgMTI4LCA4NCwgOTAsIDY5LCAKLSAgICA2OSwgMTI4LCA4NCwgOTAsIDY5LCAxMjgsIDg0LCA5MCwgNjUsIDY1LCAxMjgsIDg0LCA5MCwgNjUsIDEyOCwgODQsIDkwLCAKLSAgICAxMjgsIDg0LCA4OSwgMjEwLCA4NCwgODksIDgwLCA2OSwgNDUsIDE4MywgODQsIDg5LCA4MCwgNjksIDQ1LCAxODIsIDg0LCAKLSAgICA4OSwgODAsIDY5LCA0NSwgMTgxLCA4NCwgODksIDgwLCA2OSwgNDUsIDE4MCwgODQsIDg5LCA4MCwgNjksIDQ1LCAxNzksIAotICAgIDg0LCA4OSwgODAsIDY5LCA0NSwgMTc4LCA4NCwgODksIDgwLCA2OSwgNDUsIDE3NywgODQsIDg5LCA4MCwgMTk3LCA4NCwgCi0gICAgODksIDc5LCAxMjgsIDg0LCA4OSwgNzMsIDEyOCwgODQsIDg5LCA2OSwgMTI4LCA4NCwgODksIDY1LCAxMjgsIDg0LCA4NywgCi0gICAgNzksIDc5LCAxMjgsIDg0LCA4NywgNzksIDQ1LCA4NywgNjUsIDIxNywgODQsIDg3LCA3OSwgNDUsIDg0LCA3MiwgNzMsIDgyLCAKLSAgICA4NCwgODksIDEyOCwgODQsIDg3LCA3OSwgNDUsIDc2LCA3MywgNzgsIDE5NywgODQsIDg3LCA3OSwgNDUsIDcyLCA2OSwgNjUsIAotICAgIDY4LCA2OSwgMTk2LCA4NCwgODcsIDczLCA4MywgODQsIDY5LCAxOTYsIDg0LCA4NywgNzMsIDczLCAxMjgsIDg0LCA4NywgCi0gICAgNzMsIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCA4OSwgNDUsIDg0LCA4NywgNzksIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCAKLSAgICA4OSwgNDUsIDg0LCA3MiwgODIsIDY5LCA2OSwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgODMsIDczLCA4OCwgCi0gICAgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgODMsIDY5LCA4NiwgNjksIDc4LCAxMjgsIDg0LCA4NywgNjksIDc4LCAKLSAgICA4NCwgODksIDQ1LCA3OSwgNzgsIDY5LCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA3OCwgNzMsIDc4LCA2OSwgCi0gICAgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgNzAsIDc5LCA4NSwgODIsIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCAKLSAgICA4OSwgNDUsIDcwLCA3MywgODYsIDY5LCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA2OSwgNzMsIDcxLCA3MiwgCi0gICAgODQsIDIwMCwgODQsIDg3LCA2OSwgNzgsIDg0LCA4OSwgNDUsIDY5LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA4NCwgODcsIDY5LCAKLSAgICA3OCwgODQsIDg5LCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgMjE3LCA4NCwgODcsIDY5LCA3NiwgODYsIDY5LCA0NSwgODQsIAotICAgIDcyLCA3MywgODIsIDg0LCA4OSwgMTI4LCA4NCwgODcsIDY5LCA3NiwgODYsIDY5LCAxMjgsIDg0LCA4NywgNjksIDc2LCA4NiwgCi0gICAgMTk3LCA4NCwgODcsIDY5LCAxMjgsIDg0LCA4NywgNjUsIDY1LCAxMjgsIDg0LCA4NywgNjUsIDEyOCwgODQsIDg2LCA4MiwgCi0gICAgNzMsIDY4LCA3OSwgMTI4LCA4NCwgODYsIDczLCA3NywgNjUsIDY4LCA4NSwgMjEwLCA4NCwgODUsIDg4LCAxMjgsIDg0LCAKLSAgICA4NSwgODUsIDc3LCA4NSwgMTI4LCA4NCwgODUsIDg0LCA4NCwgODksIDEyOCwgODQsIDg1LCA4NCwgNjksIDg5LCA2NSwgODMsIAotICAgIDY1LCA4NCwgMTI4LCA4NCwgODUsIDg0LCAxMjgsIDg0LCA4NSwgODIsIDg4LCAxMjgsIDg0LCA4NSwgODIsIDg1LCAxMjgsIAotICAgIDg0LCA4NSwgODIsIDg0LCA3NiwgNjksIDEyOCwgODQsIDg1LCA4MiwgNzksIDUwLCAxMjgsIDg0LCA4NSwgODIsIDc4LCA4MywgCi0gICAgODQsIDczLCA3NiwgNjksIDEyOCwgODQsIDg1LCA4MiwgNzgsIDY5LCAxOTYsIDg0LCA4NSwgODIsIDIwNiwgODQsIDg1LCAKLSAgICA4MiwgNjYsIDY1LCA3OCwgMTI4LCA4NCwgODUsIDgyLCAxMjgsIDg0LCA4NSwgODAsIDEyOCwgODQsIDg1LCA3OSwgODgsIAotICAgIDEyOCwgODQsIDg1LCA3OSwgODQsIDEyOCwgODQsIDg1LCA3OSwgODAsIDEyOCwgODQsIDg1LCA3OSwgMTI4LCA4NCwgODUsIAotICAgIDc4LCA3OCwgODksIDEyOCwgODQsIDg1LCA3NywgNjksIDg0LCA2OSwgODMsIDEyOCwgODQsIDg1LCA3NywgNjUsIDY5LCAKLSAgICAxMjgsIDg0LCA4NSwgNzcsIDEyOCwgODQsIDg1LCA3NiwgNzMsIDgwLCAxMjgsIDg0LCA4NSwgNzUsIDg3LCA2OSwgNzgsIAotICAgIDg0LCA3MywgODMsIDEyOCwgODQsIDg1LCA3NSwgMTI4LCA4NCwgODUsIDcxLCA4MiwgNzMsIDIwMywgODQsIDg1LCA3MSwgCi0gICAgNTAsIDEyOCwgODQsIDg1LCA3MSwgMTc4LCA4NCwgODUsIDY1LCA4MiwgNjksIDE5OSwgODQsIDg1LCA2NSwgNjksIDgwLCAKLSAgICAxMjgsIDg0LCA4NSwgNjUsIDY5LCAxMjgsIDg0LCAyMTMsIDg0LCA4NCwgODUsIDY4LCA2OCwgNjUsIDcxLCAxMjgsIDg0LCAKLSAgICA4NCwgODUsIDY4LCA2OCwgNjUsIDY1LCA3MSwgMTI4LCA4NCwgODQsIDg1LCAxMjgsIDg0LCA4NCwgODQsIDcyLCA2NSwgCisgICAgODUsIDY5LCA4OSwgMTI4LCA4NSwgNjksIDczLCAxMjgsIDg1LCA2OSwgNjksIDEyOCwgODUsIDY5LCA2NSwgMTI4LCA4NSwgCisgICAgNjgsIDg1LCA3MSwgMTI4LCA4NSwgNjgsIDY1LCA4NCwgODQsIDY1LCAxMjgsIDg1LCA2OCwgNjUsIDg0LCA4NCwgMTkzLCAKKyAgICA4NSwgNjgsIDY1LCA2NSwgODQsIDEyOCwgODUsIDY4LCAxMjgsIDg1LCAxOTYsIDg1LCA2NywgMTI4LCA4NSwgNjYsIDg1LCAKKyAgICA3MCwgNzMsIDc2LCA3MywgMTI4LCA4NSwgNjYsIDcyLCA2NSwgODksIDY1LCA4NCwgMjA3LCA4NSwgNjYsIDY1LCA2OCwgNjUsIAorICAgIDc3LCA2NSwgMTI4LCA4NSwgNjYsIDEyOCwgODUsIDY1LCA4NCwgNzIsIDEyOCwgODUsIDY1LCA3OCwgNzEsIDEyOCwgODUsIAorICAgIDY1LCAxMjgsIDg1LCAxNzgsIDg1LCA0OCwgNTIsIDUwLCAxMjgsIDg1LCA0OCwgNTIsIDQ5LCAxMjgsIDg1LCA0OCwgNTIsIAorICAgIDQ4LCAxMjgsIDg1LCA0OCwgNTEsIDU3LCAxMjgsIDg1LCA0OCwgNTEsIDU2LCAxMjgsIDg1LCA0OCwgNTEsIDU1LCAxMjgsIAorICAgIDg1LCA0OCwgNTEsIDU0LCAxMjgsIDg1LCA0OCwgNTEsIDUzLCAxMjgsIDg1LCA0OCwgNTEsIDUyLCAxMjgsIDg1LCA0OCwgCisgICAgNTEsIDUxLCAxMjgsIDg1LCA0OCwgNTEsIDUwLCA2NSwgMTI4LCA4NSwgNDgsIDUxLCA1MCwgMTI4LCA4NSwgNDgsIDUxLCAKKyAgICA0OSwgMTI4LCA4NSwgNDgsIDUxLCA0OCwgMTI4LCA4NSwgNDgsIDUwLCA1NywgNjUsIDEyOCwgODUsIDQ4LCA1MCwgNTcsIAorICAgIDEyOCwgODUsIDQ4LCA1MCwgNTYsIDEyOCwgODUsIDQ4LCA1MCwgNTUsIDEyOCwgODUsIDQ4LCA1MCwgNTQsIDEyOCwgODUsIAorICAgIDQ4LCA1MCwgNTMsIDEyOCwgODUsIDQ4LCA1MCwgNTIsIDEyOCwgODUsIDQ4LCA1MCwgNTEsIDY1LCAxMjgsIDg1LCA0OCwgCisgICAgNTAsIDUxLCAxMjgsIDg1LCA0OCwgNTAsIDUwLCAxMjgsIDg1LCA0OCwgNTAsIDQ5LCAxMjgsIDg1LCA0OCwgNTAsIDQ4LCAKKyAgICAxMjgsIDg1LCA0OCwgNDksIDU3LCAxMjgsIDg1LCA0OCwgNDksIDU2LCAxMjgsIDg1LCA0OCwgNDksIDU1LCAxMjgsIDg1LCAKKyAgICA0OCwgNDksIDU0LCAxMjgsIDg1LCA0OCwgNDksIDUzLCAxMjgsIDg1LCA0OCwgNDksIDUyLCAxMjgsIDg1LCA0OCwgNDksIAorICAgIDUxLCAxMjgsIDg1LCA0OCwgNDksIDUwLCAxMjgsIDg1LCA0OCwgNDksIDQ5LCAxMjgsIDg1LCA0OCwgNDksIDQ4LCAxMjgsIAorICAgIDg1LCA0OCwgNDgsIDU3LCAxMjgsIDg1LCA0OCwgNDgsIDU2LCAxMjgsIDg1LCA0OCwgNDgsIDU1LCAxMjgsIDg1LCA0OCwgCisgICAgNDgsIDU0LCA2NiwgMTI4LCA4NSwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgODUsIDQ4LCA0OCwgNTQsIDEyOCwgODUsIDQ4LCAKKyAgICA0OCwgNTMsIDEyOCwgODUsIDQ4LCA0OCwgNTIsIDEyOCwgODUsIDQ4LCA0OCwgNTEsIDEyOCwgODUsIDQ4LCA0OCwgNTAsIAorICAgIDEyOCwgODUsIDQ4LCA0OCwgNDksIDEyOCwgODUsIDQ1LCA3MywgNDUsIDczLCAxMjgsIDg1LCA0NSwgNjksIDc5LCA0NSwgCisgICAgNjksIDg1LCAxMjgsIDg1LCA0NSwgNjYsIDgyLCA3NCwgNzEsIDg1LCAxMjgsIDg0LCA5MCwgODUsIDEyOCwgODQsIDkwLCAKKyAgICA3OSwgNjUsIDEyOCwgODQsIDkwLCA3OSwgMTI4LCA4NCwgOTAsIDczLCAyMTAsIDg0LCA5MCwgNzMsIDEyOCwgODQsIDkwLCAKKyAgICA2OSwgNjksIDEyOCwgODQsIDkwLCA2OSwgMTI4LCA4NCwgOTAsIDY1LCA2NSwgMTI4LCA4NCwgOTAsIDY1LCAxMjgsIDg0LCAKKyAgICA5MCwgMTI4LCA4NCwgODksIDIxMCwgODQsIDg5LCA4MCwgNjksIDQ1LCAxODMsIDg0LCA4OSwgODAsIDY5LCA0NSwgMTgyLCAKKyAgICA4NCwgODksIDgwLCA2OSwgNDUsIDE4MSwgODQsIDg5LCA4MCwgNjksIDQ1LCAxODAsIDg0LCA4OSwgODAsIDY5LCA0NSwgCisgICAgMTc5LCA4NCwgODksIDgwLCA2OSwgNDUsIDE3OCwgODQsIDg5LCA4MCwgNjksIDQ1LCAxNzcsIDg0LCA4OSwgODAsIDE5NywgCisgICAgODQsIDg5LCA3OSwgMTI4LCA4NCwgODksIDczLCAxMjgsIDg0LCA4OSwgNjksIDEyOCwgODQsIDg5LCA2NSwgMTI4LCA4NCwgCisgICAgODcsIDc5LCA3OSwgMTI4LCA4NCwgODcsIDc5LCA0NSwgODcsIDY1LCAyMTcsIDg0LCA4NywgNzksIDQ1LCA4NCwgNzIsIDczLCAKKyAgICA4MiwgODQsIDg5LCAxMjgsIDg0LCA4NywgNzksIDQ1LCA3NiwgNzMsIDc4LCAxOTcsIDg0LCA4NywgNzksIDQ1LCA3MiwgNjksIAorICAgIDY1LCA2OCwgNjksIDE5NiwgODQsIDg3LCA3OSwgNDUsIDY5LCAyMDUsIDg0LCA4NywgNzMsIDgzLCA4NCwgNjksIDE5NiwgCisgICAgODQsIDg3LCA3MywgNzMsIDEyOCwgODQsIDg3LCA3MywgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgODQsIDg3LCAKKyAgICA3OSwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgODQsIDcyLCA4MiwgNjksIDY5LCAxMjgsIDg0LCA4NywgNjksIAorICAgIDc4LCA4NCwgODksIDQ1LCA4MywgNzMsIDg4LCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA4MywgNjksIDg2LCAKKyAgICA2OSwgNzgsIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCA4OSwgNDUsIDc5LCA3OCwgNjksIDEyOCwgODQsIDg3LCA2OSwgNzgsIAorICAgIDg0LCA4OSwgNDUsIDc4LCA3MywgNzgsIDY5LCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA3MCwgNzksIDg1LCAKKyAgICA4MiwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgNzAsIDczLCA4NiwgNjksIDEyOCwgODQsIDg3LCA2OSwgNzgsIAorICAgIDg0LCA4OSwgNDUsIDY5LCA3MywgNzEsIDcyLCA4NCwgMjAwLCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgNjksIDczLCAKKyAgICA3MSwgNzIsIDg0LCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCAyMTcsIAorICAgIDg0LCA4NywgNjksIDc2LCA4NiwgNjksIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDg0LCA4NywgNjksIDc2LCAKKyAgICA4NiwgNjksIDEyOCwgODQsIDg3LCA2OSwgNzYsIDg2LCAxOTcsIDg0LCA4NywgNjksIDEyOCwgODQsIDg3LCA2NSwgNjUsIAorICAgIDEyOCwgODQsIDg3LCA2NSwgMTI4LCA4NCwgODYsIDgyLCA3MywgNjgsIDc5LCAxMjgsIDg0LCA4NiwgNzMsIDc3LCA2NSwgCisgICAgNjgsIDg1LCAyMTAsIDg0LCA4NSwgODgsIDEyOCwgODQsIDg1LCA4NSwgNzcsIDg1LCAxMjgsIDg0LCA4NSwgODUsIDEyOCwgCisgICAgODQsIDg1LCA4NCwgODQsIDg5LCAxMjgsIDg0LCA4NSwgODQsIDY5LCA4OSwgNjUsIDgzLCA2NSwgODQsIDEyOCwgODQsIDg1LCAKKyAgICA4NCwgMTI4LCA4NCwgODUsIDgyLCA4OCwgMTI4LCA4NCwgODUsIDgyLCA4NSwgMTI4LCA4NCwgODUsIDgyLCA4NCwgNzYsIAorICAgIDY5LCAxMjgsIDg0LCA4NSwgODIsIDc5LCA1MCwgMTI4LCA4NCwgODUsIDgyLCA3OCwgODMsIDg0LCA3MywgNzYsIDY5LCAKKyAgICAxMjgsIDg0LCA4NSwgODIsIDc4LCA2OSwgMTk2LCA4NCwgODUsIDgyLCAyMDYsIDg0LCA4NSwgODIsIDY2LCA2NSwgNzgsIAorICAgIDEyOCwgODQsIDg1LCA4MiwgMTI4LCA4NCwgODUsIDgwLCAxMjgsIDg0LCA4NSwgNzksIDg4LCAxMjgsIDg0LCA4NSwgNzksIAorICAgIDg0LCAxMjgsIDg0LCA4NSwgNzksIDgwLCAxMjgsIDg0LCA4NSwgNzksIDEyOCwgODQsIDg1LCA3OCwgNzgsIDg5LCAxMjgsIAorICAgIDg0LCA4NSwgNzcsIDY5LCA4NCwgNjksIDgzLCAxMjgsIDg0LCA4NSwgNzcsIDY1LCA2OSwgMTI4LCA4NCwgODUsIDc3LCAKKyAgICAxMjgsIDg0LCA4NSwgNzYsIDczLCA4MCwgMTI4LCA4NCwgODUsIDc1LCA4NywgNjksIDc4LCA4NCwgNzMsIDgzLCAxMjgsIAorICAgIDg0LCA4NSwgNzUsIDEyOCwgODQsIDg1LCA3MSwgODIsIDczLCAyMDMsIDg0LCA4NSwgNzEsIDUwLCAxMjgsIDg0LCA4NSwgCisgICAgNzEsIDE3OCwgODQsIDg1LCA2NSwgODIsIDY5LCAxOTksIDg0LCA4NSwgNjUsIDY5LCA4MCwgMTI4LCA4NCwgODUsIDY1LCAKKyAgICA2OSwgMTI4LCA4NCwgMjEzLCA4NCwgODQsIDg1LCA4NSwgMTI4LCA4NCwgODQsIDg1LCA2OCwgNjgsIDY1LCA3MSwgMTI4LCAKKyAgICA4NCwgODQsIDg1LCA2OCwgNjgsIDY1LCA2NSwgNzEsIDEyOCwgODQsIDg0LCA4NSwgMTI4LCA4NCwgODQsIDg0LCA3MiwgNjUsIAogICAgIDEyOCwgODQsIDg0LCA4NCwgNjUsIDEyOCwgODQsIDg0LCA4MywgODUsIDEyOCwgODQsIDg0LCA4MywgNzksIDEyOCwgODQsIAogICAgIDg0LCA4MywgNzMsIDEyOCwgODQsIDg0LCA4MywgNjksIDY5LCAxMjgsIDg0LCA4NCwgODMsIDY5LCAxMjgsIDg0LCA4NCwgCi0gICAgODMsIDY1LCAxMjgsIDg0LCA4NCwgNzMsIDEyOCwgODQsIDg0LCA3MiwgODcsIDY5LCAxMjgsIDg0LCA4NCwgNzIsIDg1LCAKLSAgICAxMjgsIDg0LCA4NCwgNzIsIDc5LCA3OSwgMTI4LCA4NCwgODQsIDcyLCA3OSwgMTI4LCA4NCwgODQsIDcyLCA3MywgMTI4LCAKLSAgICA4NCwgODQsIDcyLCA2OSwgNjksIDEyOCwgODQsIDg0LCA3MiwgNjksIDEyOCwgODQsIDg0LCA3MiwgNjUsIDY1LCAxMjgsIAotICAgIDg0LCA4NCwgNzIsIDEyOCwgODQsIDg0LCA2OSwgNzIsIDY5LCA3MiwgMTI4LCA4NCwgODQsIDY5LCA3MiwgNjksIDIwMCwgCi0gICAgODQsIDg0LCA2OSwgNzIsIDEyOCwgODQsIDg0LCA2OSwgMjAwLCA4NCwgODQsIDY5LCA2OSwgMTI4LCA4NCwgODQsIDY1LCAKLSAgICA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgODQsIDg0LCA2NSwgNjUsIDEyOCwgODQsIDg0LCA1MCwgMTI4LCA4NCwgODMsIAotICAgIDg3LCA2OSwgMTI4LCA4NCwgODMsIDg3LCA2NSwgMTI4LCA4NCwgODMsIDg2LCAxMjgsIDg0LCA4MywgODMsIDY5LCAxMjgsIAotICAgIDg0LCA4MywgNzIsIDg1LCA3MSwgODMsIDEyOCwgODQsIDgzLCA3MiwgNzksIDc5LCA3NSwgMTI4LCA4NCwgODMsIDcyLCA3OSwgCi0gICAgNzksIDIwMywgODQsIDgzLCA3MiwgNjksIDgzLCAxMjgsIDg0LCA4MywgNzIsIDY5LCA3MSwgMTI4LCA4NCwgODMsIDcyLCAKLSAgICA2OSwgMTk5LCA4NCwgODMsIDcyLCA2OSwgMTI4LCA4NCwgODMsIDcyLCA2NSwgMTI4LCA4NCwgODMsIDY5LCA4MiwgNjksIAotICAgIDEyOCwgODQsIDgzLCA2NSwgNjgsIDczLCAxMjgsIDg0LCA4MywgNjUsIDY4LCAyMDEsIDg0LCA4MywgNjUsIDY1LCA2OCwgCi0gICAgNzMsIDg5LCAxMjgsIDg0LCA4MywgNjUsIDY1LCAxMjgsIDg0LCA4MywgMTkzLCA4NCwgODIsIDg5LCA2NiwgNzYsIDczLCAKLSAgICA3OSwgMjA2LCA4NCwgODIsIDg1LCA4NCwgNzIsIDEyOCwgODQsIDgyLCA4NSwgNzgsIDc1LCAxMjgsIDg0LCA4MiwgODUsIAotICAgIDc4LCA2NywgNjUsIDg0LCA2OSwgMTk2LCA4NCwgODIsIDg1LCA3NywgODAsIDY5LCA4NCwgMTI4LCA4NCwgODIsIDg1LCA2OSwgCi0gICAgMTI4LCA4NCwgODIsIDg1LCA2NywgNzUsIDEyOCwgODQsIDgyLCA3OSwgODAsIDczLCA2NywgNjUsIDIwNCwgODQsIDgyLCAKLSAgICA3OSwgODAsIDcyLCA4OSwgMTI4LCA4NCwgODIsIDc5LCA3NywgNzMsIDc1LCA3OSwgODMsIDg5LCA3OCwgNjUsIDcxLCA3NywgCi0gICAgNjUsIDEyOCwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIDgwLCA4MywgNzMsIDcwLCA3MywgODMsIDg0LCA3OSwgNzgsIAotICAgIDEyOCwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIDgwLCA2NSwgODIsIDY1LCA3NSwgNjUsIDc2LCA2OSwgODMsIDc3LCAKLSAgICA2NSwgMTI4LCA4NCwgODIsIDc5LCA3NywgNzMsIDc1LCA3OSwgNzgsIDEyOCwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIAotICAgIDIwNiwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIDc2LCA4OSwgNzEsIDczLCA4MywgNzcsIDY1LCAxMjgsIDg0LCA4MiwgCi0gICAgNzksIDc2LCA3NiwgNjksIDg5LCA2NiwgODUsIDgzLCAxMjgsIDg0LCA4MiwgNzksIDc1LCA4NSwgODQsIDY1LCA4MywgODQsIAotICAgIDIwMSwgODQsIDgyLCA3OSwgNjksIDkwLCA2OSwgNzgsIDczLCA2NSwgMjA2LCA4NCwgODIsIDczLCA4NSwgNzcsIDgwLCA3MiwgCi0gICAgMTI4LCA4NCwgODIsIDczLCA4NCwgNzksIDIxMSwgODQsIDgyLCA3MywgODQsIDczLCA3NywgNzksIDgyLCA3MywgNzksIDc4LCAKLSAgICAxMjgsIDg0LCA4MiwgNzMsIDgzLCA3MywgNzcsIDc5LCA4NSwgMTI4LCA4NCwgODIsIDczLCA4MywgNjksIDc3LCA2OSwgCi0gICAgMTI4LCA4NCwgODIsIDczLCA4MCwgNzksIDY4LCAxMjgsIDg0LCA4MiwgNzMsIDgwLCA3NiwgNzMsIDEyOCwgODQsIDgyLCAKLSAgICA3MywgODAsIDc2LCAxOTcsIDg0LCA4MiwgNzMsIDc5LCAyMDYsIDg0LCA4MiwgNzMsIDczLCA4MywgNjUsIDgwLCAxMjgsIAotICAgIDg0LCA4MiwgNzMsIDcxLCA4MiwgNjUsIDc3LCA3NywgNzksIDIxMSwgODQsIDgyLCA3MywgNzEsIDgyLCA2NSwgMjA1LCA4NCwgCi0gICAgODIsIDczLCA3MSwgNzksIDgyLCA3MSwgNzksIDc4LCAxMjgsIDg0LCA4MiwgNzMsIDcwLCA3OSwgNzgsIDczLCA2NSwgODMsIAotICAgIDEyOCwgODQsIDgyLCA3MywgNzAsIDc5LCA3NiwgNzMsIDY1LCA4NCwgMTk3LCA4NCwgODIsIDczLCA2OCwgNjksIDc4LCA4NCwgCi0gICAgMTI4LCA4NCwgODIsIDczLCA2OCwgNjksIDc4LCAyMTIsIDg0LCA4MiwgNzMsIDY3LCA3OSwgNzYsIDc5LCA3OCwgMTI4LCAKLSAgICA4NCwgODIsIDczLCA2NSwgNzgsIDcxLCA4NSwgNzYsIDY1LCAyMTAsIDg0LCA4MiwgNzMsIDY1LCA3OCwgNzEsIDc2LCA2OSwgCi0gICAgNDUsIDgyLCA3OSwgODUsIDc4LCAxOTYsIDg0LCA4MiwgNzMsIDY1LCA3OCwgNzEsIDc2LCA2OSwgNDUsIDcyLCA2OSwgNjUsIAotICAgIDY4LCA2OSwgMTk2LCA4NCwgODIsIDczLCA2NSwgNzgsIDcxLCA3NiwgNjksIDEyOCwgODQsIDgyLCA3MywgNjUsIDc4LCA3MSwgCi0gICAgNzYsIDE5NywgODQsIDgyLCA3MywgNjUsIDEyOCwgODQsIDgyLCA3MywgMTI4LCA4NCwgODIsIDY5LCA4MywgNzMsIDc2LCAKLSAgICA3NiwgNzksIDEyOCwgODQsIDgyLCA2OSwgNzgsIDY4LCAxMjgsIDg0LCA4MiwgNjksIDc4LCAxOTYsIDg0LCA4MiwgNjksIAotICAgIDc3LCA3OSwgNzYsIDc5LCA0NSwgNTEsIDEyOCwgODQsIDgyLCA2OSwgNzcsIDc5LCA3NiwgNzksIDQ1LCA1MCwgMTI4LCA4NCwgCi0gICAgODIsIDY5LCA3NywgNzksIDc2LCA3OSwgNDUsIDQ5LCAxMjgsIDg0LCA4MiwgNjksIDY5LCAxMjgsIDg0LCA4MiwgNjksIAotICAgIDE5NywgODQsIDgyLCA2OSwgNjUsIDY4LCA3MywgNzgsIDcxLCAxMjgsIDg0LCA4MiwgNjUsIDg5LCAxMjgsIDg0LCA4MiwgCi0gICAgNjUsIDgwLCA2OSwgOTAsIDczLCA4NSwgNzcsIDEyOCwgODQsIDgyLCA2NSwgNzgsIDgzLCA4NiwgNjksIDgyLCA4MywgNjUsIAotICAgIDIwNCwgODQsIDgyLCA2NSwgNzgsIDgzLCA4MCwgNzksIDgzLCA3MywgODQsIDczLCA3OSwgMjA2LCA4NCwgODIsIDY1LCA3OCwgCisgICAgODMsIDY1LCAxMjgsIDg0LCA4NCwgNzksIDc5LCAxMjgsIDg0LCA4NCwgNzMsIDczLCAxMjgsIDg0LCA4NCwgNzMsIDEyOCwgCisgICAgODQsIDg0LCA3MiwgODcsIDY5LCAxMjgsIDg0LCA4NCwgNzIsIDg1LCAxMjgsIDg0LCA4NCwgNzIsIDc5LCA3OSwgMTI4LCAKKyAgICA4NCwgODQsIDcyLCA3OSwgMTI4LCA4NCwgODQsIDcyLCA3MywgMTI4LCA4NCwgODQsIDcyLCA2OSwgNjksIDEyOCwgODQsIAorICAgIDg0LCA3MiwgNjksIDEyOCwgODQsIDg0LCA3MiwgNjUsIDY1LCAxMjgsIDg0LCA4NCwgNzIsIDEyOCwgODQsIDg0LCA2OSwgCisgICAgNzIsIDY5LCA3MiwgMTI4LCA4NCwgODQsIDY5LCA3MiwgNjksIDIwMCwgODQsIDg0LCA2OSwgNzIsIDEyOCwgODQsIDg0LCAKKyAgICA2OSwgMjAwLCA4NCwgODQsIDY5LCA2OSwgMTI4LCA4NCwgODQsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgODQsIAorICAgIDg0LCA2NSwgODUsIDEyOCwgODQsIDg0LCA2NSwgNzMsIDEyOCwgODQsIDg0LCA2NSwgNjUsIDEyOCwgODQsIDg0LCA1MCwgCisgICAgMTI4LCA4NCwgODMsIDg3LCA2OSwgMTI4LCA4NCwgODMsIDg3LCA2NSwgMTI4LCA4NCwgODMsIDg2LCAxMjgsIDg0LCA4MywgCisgICAgODMsIDY5LCAxMjgsIDg0LCA4MywgODMsIDY1LCAxMjgsIDg0LCA4MywgNzIsIDg1LCA3MSwgODMsIDEyOCwgODQsIDgzLCAKKyAgICA3MiwgNzksIDc5LCA3NSwgMTI4LCA4NCwgODMsIDcyLCA3OSwgNzksIDIwMywgODQsIDgzLCA3MiwgNjksIDgzLCAxMjgsIAorICAgIDg0LCA4MywgNzIsIDY5LCA3MSwgMTI4LCA4NCwgODMsIDcyLCA2OSwgMTk5LCA4NCwgODMsIDcyLCA2OSwgMTI4LCA4NCwgCisgICAgODMsIDcyLCA2NSwgMTI4LCA4NCwgODMsIDY5LCA4MiwgNjksIDEyOCwgODQsIDgzLCA2NSwgNjgsIDczLCAxMjgsIDg0LCAKKyAgICA4MywgNjUsIDY4LCAyMDEsIDg0LCA4MywgNjUsIDY1LCA2OCwgNzMsIDg5LCAxMjgsIDg0LCA4MywgNjUsIDY1LCAxMjgsIAorICAgIDg0LCA4MywgMTkzLCA4NCwgODIsIDg5LCA2NiwgNzYsIDczLCA3OSwgMjA2LCA4NCwgODIsIDg1LCA4NCwgNzIsIDEyOCwgCisgICAgODQsIDgyLCA4NSwgNzgsIDc1LCAxMjgsIDg0LCA4MiwgODUsIDc4LCA2NywgNjUsIDg0LCA2OSwgMTk2LCA4NCwgODIsIDg1LCAKKyAgICA3NywgODAsIDY5LCA4NCwgMTI4LCA4NCwgODIsIDg1LCA2OSwgMTI4LCA4NCwgODIsIDg1LCA2NywgNzUsIDEyOCwgODQsIAorICAgIDgyLCA3OSwgODAsIDczLCA2NywgNjUsIDIwNCwgODQsIDgyLCA3OSwgODAsIDcyLCA4OSwgMTI4LCA4NCwgODIsIDc5LCA3NywgCisgICAgNzMsIDc1LCA3OSwgODMsIDg5LCA3OCwgNjUsIDcxLCA3NywgNjUsIDEyOCwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIAorICAgIDgwLCA4MywgNzMsIDcwLCA3MywgODMsIDg0LCA3OSwgNzgsIDEyOCwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIDgwLCAKKyAgICA2NSwgODIsIDY1LCA3NSwgNjUsIDc2LCA2OSwgODMsIDc3LCA2NSwgMTI4LCA4NCwgODIsIDc5LCA3NywgNzMsIDc1LCA3OSwgCisgICAgNzgsIDEyOCwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIDIwNiwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIDc2LCAKKyAgICA4OSwgNzEsIDczLCA4MywgNzcsIDY1LCAxMjgsIDg0LCA4MiwgNzksIDc2LCA3NiwgNjksIDg5LCA2NiwgODUsIDgzLCAxMjgsIAorICAgIDg0LCA4MiwgNzksIDc1LCA4NSwgODQsIDY1LCA4MywgODQsIDIwMSwgODQsIDgyLCA3OSwgNjksIDkwLCA2OSwgNzgsIDczLCAKKyAgICA2NSwgMjA2LCA4NCwgODIsIDczLCA4NSwgNzcsIDgwLCA3MiwgMTI4LCA4NCwgODIsIDczLCA4NCwgNzksIDIxMSwgODQsIAorICAgIDgyLCA3MywgODQsIDczLCA3NywgNzksIDgyLCA3MywgNzksIDc4LCAxMjgsIDg0LCA4MiwgNzMsIDgzLCA3MywgNzcsIDc5LCAKKyAgICA4NSwgMTI4LCA4NCwgODIsIDczLCA4MywgNjksIDc3LCA2OSwgMTI4LCA4NCwgODIsIDczLCA4MCwgNzksIDY4LCAxMjgsIAorICAgIDg0LCA4MiwgNzMsIDgwLCA3NiwgNzMsIDEyOCwgODQsIDgyLCA3MywgODAsIDc2LCAxOTcsIDg0LCA4MiwgNzMsIDc5LCAKKyAgICAyMDYsIDg0LCA4MiwgNzMsIDczLCA4MywgNjUsIDgwLCAxMjgsIDg0LCA4MiwgNzMsIDcxLCA4MiwgNjUsIDc3LCA3NywgNzksIAorICAgIDIxMSwgODQsIDgyLCA3MywgNzEsIDgyLCA2NSwgMjA1LCA4NCwgODIsIDczLCA3MSwgNzksIDgyLCA3MSwgNzksIDc4LCAKKyAgICAxMjgsIDg0LCA4MiwgNzMsIDcwLCA3OSwgNzgsIDczLCA2NSwgODMsIDEyOCwgODQsIDgyLCA3MywgNzAsIDc5LCA3NiwgNzMsIAorICAgIDY1LCA4NCwgMTk3LCA4NCwgODIsIDczLCA2OCwgNjksIDc4LCA4NCwgMTI4LCA4NCwgODIsIDczLCA2OCwgNjksIDc4LCAKKyAgICAyMTIsIDg0LCA4MiwgNzMsIDY3LCA3OSwgNzYsIDc5LCA3OCwgMTI4LCA4NCwgODIsIDczLCA2NSwgNzgsIDcxLCA4NSwgNzYsIAorICAgIDY1LCAyMTAsIDg0LCA4MiwgNzMsIDY1LCA3OCwgNzEsIDc2LCA2OSwgNDUsIDgyLCA3OSwgODUsIDc4LCAxOTYsIDg0LCA4MiwgCisgICAgNzMsIDY1LCA3OCwgNzEsIDc2LCA2OSwgNDUsIDcyLCA2OSwgNjUsIDY4LCA2OSwgMTk2LCA4NCwgODIsIDczLCA2NSwgNzgsIAorICAgIDcxLCA3NiwgNjksIDEyOCwgODQsIDgyLCA3MywgNjUsIDc4LCA3MSwgNzYsIDE5NywgODQsIDgyLCA3MywgNjUsIDEyOCwgCisgICAgODQsIDgyLCA3MywgMTI4LCA4NCwgODIsIDY5LCA4MywgNzMsIDc2LCA3NiwgNzksIDEyOCwgODQsIDgyLCA2OSwgNzgsIDY4LCAKKyAgICAxMjgsIDg0LCA4MiwgNjksIDc4LCAxOTYsIDg0LCA4MiwgNjksIDc3LCA3OSwgNzYsIDc5LCA0NSwgNTEsIDEyOCwgODQsIAorICAgIDgyLCA2OSwgNzcsIDc5LCA3NiwgNzksIDQ1LCA1MCwgMTI4LCA4NCwgODIsIDY5LCA3NywgNzksIDc2LCA3OSwgNDUsIDQ5LCAKKyAgICAxMjgsIDg0LCA4MiwgNjksIDY5LCAxMjgsIDg0LCA4MiwgNjksIDE5NywgODQsIDgyLCA2OSwgNjUsIDY4LCA3MywgNzgsIAorICAgIDcxLCAxMjgsIDg0LCA4MiwgNjUsIDg5LCAxMjgsIDg0LCA4MiwgNjUsIDgwLCA2OSwgOTAsIDczLCA4NSwgNzcsIDEyOCwgCisgICAgODQsIDgyLCA2NSwgNzgsIDgzLCA4NiwgNjksIDgyLCA4MywgNjUsIDIwNCwgODQsIDgyLCA2NSwgNzgsIDgzLCA4MCwgNzksIAorICAgIDgzLCA3MywgODQsIDczLCA3OSwgMjA2LCA4NCwgODIsIDY1LCA3OCwgODMsIDc3LCA3MywgMjEyLCA4NCwgODIsIDY1LCA3OCwgCiAgICAgODMsIDc3LCA3MywgODMsIDgzLCA3MywgNzksIDc4LCAxMjgsIDg0LCA4MiwgNjUsIDc4LCA4MywgNzcsIDczLCA4MywgODMsIAogICAgIDczLCA3OSwgMjA2LCA4NCwgODIsIDY1LCA3NywgODcsIDY1LCA4OSwgMTI4LCA4NCwgODIsIDY1LCA3NywgMTI4LCA4NCwgCiAgICAgODIsIDY1LCAyMDUsIDg0LCA4MiwgNjUsIDczLCA3OCwgMTI4LCA4NCwgODIsIDY1LCA3MywgMjA2LCA4NCwgODIsIDY1LCAKQEAgLTQ5MywxNiArNTg5LDE3IEBACiAgICAgNzksIDgyLCA2NywgODUsIDc2LCA4NSwgMjExLCA4NCwgNzksIDgyLCA2NywgNzIsIDEyOCwgODQsIDc5LCA4MSwgMTI4LCAKICAgICA4NCwgNzksIDgwLCA2NiwgNjUsIDgyLCAxMjgsIDg0LCA3OSwgODAsIDQ1LCA3NiwgNzMsIDcxLCA3MiwgODQsIDY5LCAxOTYsIAogICAgIDg0LCA3OSwgODAsIDEyOCwgODQsIDc5LCAyMDgsIDg0LCA3OSwgNzksIDg0LCA3MiwgMTI4LCA4NCwgNzksIDc5LCA3OCwgCi0gICAgMTI4LCA4NCwgNzksIDc5LCAxMjgsIDg0LCA3OSwgNzgsIDc5LCA4MywgMTI4LCA4NCwgNzksIDc4LCA3MSwgODUsIDY5LCAKLSAgICAxMjgsIDg0LCA3OSwgNzgsIDcxLCA4NSwgMTk3LCA4NCwgNzksIDc4LCA3MSwgMTI4LCA4NCwgNzksIDc4LCA2OSwgNDUsIAotICAgIDU0LCAxMjgsIDg0LCA3OSwgNzgsIDY5LCA0NSwgNTMsIDEyOCwgODQsIDc5LCA3OCwgNjksIDQ1LCA1MiwgMTI4LCA4NCwgCi0gICAgNzksIDc4LCA2OSwgNDUsIDUxLCAxMjgsIDg0LCA3OSwgNzgsIDY5LCA0NSwgNTAsIDEyOCwgODQsIDc5LCA3OCwgNjksIDQ1LCAKLSAgICA0OSwgMTI4LCA4NCwgNzksIDc4LCA2OSwgMTI4LCA4NCwgNzksIDc4LCA2NSwgMjA0LCA4NCwgNzksIDc3LCA4MCwgNzMsIAotICAgIDEyOCwgODQsIDc5LCA3NywgNjUsIDg0LCA3OSwgMTI4LCA4NCwgNzksIDc2LCA3OSwgNzgsIDcxLCAxMjgsIDg0LCA3OSwgCi0gICAgNzUsIDg5LCAyMDcsIDg0LCA3OSwgNzMsIDc2LCA2OSwgODQsIDEyOCwgODQsIDc5LCA3MSwgNjksIDg0LCA3MiwgNjksIDgyLCAKLSAgICAxMjgsIDg0LCA3OSwgNjgsIDIwNywgODQsIDc5LCA2NSwgNzgsIDY4LCA2NSwgNzUsIDcyLCA3MywgNjUsIDg0LCAxMjgsIAotICAgIDg0LCA3OSwgNjUsIDEyOCwgODQsIDc4LCAxMjgsIDg0LCA3NiwgODYsIDEyOCwgODQsIDc2LCA4NSwgMTI4LCA4NCwgNzYsIAotICAgIDc5LCAxMjgsIDg0LCA3NiwgNzMsIDEyOCwgODQsIDc2LCA3MiwgODcsIDY5LCAxMjgsIDg0LCA3NiwgNzIsIDg1LCAxMjgsIAorICAgIDEyOCwgODQsIDc5LCA3OCwgNzksIDgzLCAxMjgsIDg0LCA3OSwgNzgsIDcxLCA4NSwgNjksIDEyOCwgODQsIDc5LCA3OCwgCisgICAgNzEsIDg1LCAxOTcsIDg0LCA3OSwgNzgsIDcxLCAxMjgsIDg0LCA3OSwgNzgsIDY5LCA0NSwgNTYsIDEyOCwgODQsIDc5LCAKKyAgICA3OCwgNjksIDQ1LCA1NSwgMTI4LCA4NCwgNzksIDc4LCA2OSwgNDUsIDU0LCAxMjgsIDg0LCA3OSwgNzgsIDY5LCA0NSwgNTMsIAorICAgIDEyOCwgODQsIDc5LCA3OCwgNjksIDQ1LCA1MiwgMTI4LCA4NCwgNzksIDc4LCA2OSwgNDUsIDUxLCAxMjgsIDg0LCA3OSwgCisgICAgNzgsIDY5LCA0NSwgNTAsIDEyOCwgODQsIDc5LCA3OCwgNjksIDQ1LCA0OSwgMTI4LCA4NCwgNzksIDc4LCA2OSwgMTI4LCAKKyAgICA4NCwgNzksIDc4LCA2NSwgMjA0LCA4NCwgNzksIDc3LCA4MCwgNzMsIDEyOCwgODQsIDc5LCA3NywgNjUsIDg0LCA3OSwgCisgICAgMTI4LCA4NCwgNzksIDc2LCA3OSwgNzgsIDcxLCAxMjgsIDg0LCA3OSwgNzUsIDg5LCAyMDcsIDg0LCA3OSwgNzMsIDc2LCAKKyAgICA2OSwgODQsIDEyOCwgODQsIDc5LCA3MSwgNjksIDg0LCA3MiwgNjksIDgyLCAxMjgsIDg0LCA3OSwgNjgsIDIwNywgODQsIAorICAgIDc5LCA2NSwgNzgsIDY4LCA2NSwgNzUsIDcyLCA3MywgNjUsIDg0LCAxMjgsIDg0LCA3OSwgNjUsIDEyOCwgODQsIDc4LCAKKyAgICAxMjgsIDg0LCA3NiwgODYsIDEyOCwgODQsIDc2LCA4NSwgMTI4LCA4NCwgNzYsIDc5LCAxMjgsIDg0LCA3NiwgNzMsIDEyOCwgCisgICAgODQsIDc2LCA3MiwgODksIDY1LCAxMjgsIDg0LCA3NiwgNzIsIDg3LCA2OSwgMTI4LCA4NCwgNzYsIDcyLCA4NSwgMTI4LCAKICAgICA4NCwgNzYsIDcyLCA3OSwgNzksIDEyOCwgODQsIDc2LCA3MiwgNzksIDEyOCwgODQsIDc2LCA3MiwgNzMsIDEyOCwgODQsIAogICAgIDc2LCA3MiwgNjksIDY5LCAxMjgsIDg0LCA3NiwgNzIsIDY5LCAxMjgsIDg0LCA3NiwgNzIsIDY1LCAxMjgsIDg0LCA3NiwgCiAgICAgNjksIDY5LCAxMjgsIDg0LCA3NiwgNjUsIDEyOCwgODQsIDc0LCA2OSwgMTI4LCA4NCwgNzMsIDg4LCAxMjgsIDg0LCA3MywgCkBAIC01MTMsMTIxICs2MTAsMTIzIEBACiAgICAgODQsIDczLCA4MCwgNjksIDcyLCA2NSwgMTI4LCA4NCwgNzMsIDgwLCAxMjgsIDg0LCA3MywgMjA4LCA4NCwgNzMsIDc4LCAKICAgICA4OSwgMTI4LCA4NCwgNzMsIDc4LCAyMTcsIDg0LCA3MywgNzgsIDc4LCA2OSwgMTI4LCA4NCwgNzMsIDc4LCA2NywgODQsIAogICAgIDg1LCA4MiwgNjksIDEyOCwgODQsIDczLCA3OCwgNjUsIDcxLCA3NywgNjUsIDEyOCwgODQsIDczLCA3NywgNjksIDgzLCAKLSAgICAxMjgsIDg0LCA3MywgNzcsIDY5LCAyMTAsIDg0LCA3MywgNzcsIDY5LCAxMjgsIDg0LCA3MywgNzYsIDY4LCA2OSwgMTI4LCAKLSAgICA4NCwgNzMsIDc2LCA2OCwgMTk3LCA4NCwgNzMsIDc2LCAxMjgsIDg0LCA3MywgMjA0LCA4NCwgNzMsIDc1LCA2OSwgODUsIAotICAgIDg0LCA0NSwgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgNzIsIDEyOCwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDgzLCAKLSAgICA3MywgNzksIDgzLCA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgCi0gICAgODMsIDczLCA3OSwgODMsIDEyOCwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDgyLCA3MywgNjksIDg1LCA3NiwgMTI4LCAKLSAgICA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDg0LCA3MywgNzUsIDY5LCA4NSwgCi0gICAgODQsIDQ1LCA3NywgNzMsIDY5LCA4NSwgNzcsIDEyOCwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDc1LCA3MywgODksIAotICAgIDY5LCA3OSwgNzUsIDEyOCwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA4NCwgCi0gICAgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgODQsIDczLCA3NSwgNjksIAotICAgIDg1LCA4NCwgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDIxMiwgODQsIDczLCA3MywgMTI4LCA4NCwgNzMsIDcxLCA3MiwgCi0gICAgODQsIDc2LCA4OSwgNDUsIDY3LCA3NiwgNzksIDgzLCA2OSwgMTk2LCA4NCwgNzMsIDcxLCA3MiwgMjEyLCA4NCwgNzMsIDcxLCAKLSAgICA2OSwgODIsIDEyOCwgODQsIDczLCA3MSwgNjksIDIxMCwgODQsIDczLCA3MCwgNzMsIDc4LCA2NSwgNzEsIDIwMCwgODQsIAotICAgIDczLCA2OSwgODgsIDEyOCwgODQsIDczLCA2OSwgODAsIDEyOCwgODQsIDczLCAxOTcsIDg0LCA3MywgNjcsIDc1LCA2OSwgCi0gICAgODQsIDEyOCwgODQsIDczLCA2NywgNzUsIDEyOCwgODQsIDczLCA2NywgMjAzLCA4NCwgNzMsIDY1LCA4MiwgNjUsIDEyOCwgCi0gICAgODQsIDcyLCA5MCwgMTI4LCA4NCwgNzIsIDg5LCA3OSwgNzksIDIwNSwgODQsIDcyLCA4NywgNzksIDc5LCAxMjgsIDg0LCAKLSAgICA3MiwgODcsIDc5LCAxMjgsIDg0LCA3MiwgODcsIDczLCA3MywgMTI4LCA4NCwgNzIsIDg3LCA3MywgMTI4LCA4NCwgNzIsIAotICAgIDg3LCA2OSwgNjksIDEyOCwgODQsIDcyLCA4NywgNjUsIDY1LCAxMjgsIDg0LCA3MiwgODcsIDY1LCAxMjgsIDg0LCA3MiwgCi0gICAgODUsIDgyLCAyMTEsIDg0LCA3MiwgODUsIDgyLCA3MywgODMsIDY1LCAyMTgsIDg0LCA3MiwgODUsIDc4LCA3MSwgMTI4LCAKLSAgICA4NCwgNzIsIDg1LCA3OCwgNjgsIDY5LCA4MiwgODMsIDg0LCA3OSwgODIsIDc3LCAxMjgsIDg0LCA3MiwgODUsIDc4LCA2OCwgCi0gICAgNjksIDgyLCAxMjgsIDg0LCA3MiwgODUsIDc4LCA2OCwgNjksIDIxMCwgODQsIDcyLCA4NSwgNzcsIDY2LCAyMTEsIDg0LCAKLSAgICA3MiwgODIsIDc5LCA4NywgNzMsIDc4LCAxOTksIDg0LCA3MiwgODIsIDc5LCA4NSwgNzEsIDcyLCAxMjgsIDg0LCA3MiwgODIsIAotICAgIDc5LCA4NSwgNzEsIDIwMCwgODQsIDcyLCA4MiwgNjksIDY5LCA0NSwgODQsIDcyLCA3MywgODIsIDg0LCA4OSwgMTI4LCA4NCwgCi0gICAgNzIsIDgyLCA2OSwgNjksIDQ1LCA4MCwgNjksIDgyLCA0NSwgNjksIDIwNSwgODQsIDcyLCA4MiwgNjksIDY5LCA0NSwgNzYsIAotICAgIDczLCA3OCwgMTk3LCA4NCwgNzIsIDgyLCA2OSwgNjksIDQ1LCAxOTYsIDg0LCA3MiwgODIsIDY5LCA2NSwgNjgsIDEyOCwgCi0gICAgODQsIDcyLCA3OSwgODUsIDgzLCA2NSwgNzgsIDY4LCAyMTEsIDg0LCA3MiwgNzksIDg1LCA4MywgNjUsIDc4LCA2OCwgMTI4LCAKLSAgICA4NCwgNzIsIDc5LCA4NSwgODMsIDY1LCA3OCwgMTk2LCA4NCwgNzIsIDc5LCA4NSwgNzEsIDcyLCAyMTIsIDg0LCA3MiwgNzksIAotICAgIDg1LCAxMjgsIDg0LCA3MiwgNzksIDgyLCA3OCwgMTI4LCA4NCwgNzIsIDc5LCA4MiwgMjA2LCA4NCwgNzIsIDc5LCA3OCwgCi0gICAgNzEsIDEyOCwgODQsIDcyLCA3OSwgNjUsIDEyOCwgODQsIDcyLCAyMDcsIDg0LCA3MiwgNzMsIDg1LCA4NCwgNzIsIDEyOCwgCi0gICAgODQsIDcyLCA3MywgODQsIDY1LCAxMjgsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDQ1LCA4MywgNjksIDY3LCA3OSwgNzgsIAotICAgIDE5NiwgODQsIDcyLCA3MywgODIsIDg0LCA4OSwgNDUsIDc5LCA3OCwgNjksIDEyOCwgODQsIDcyLCA3MywgODIsIDg0LCAKLSAgICAyMTcsIDg0LCA3MiwgNzMsIDgyLCA4NCwgNjksIDY5LCA3OCwgMTI4LCA4NCwgNzIsIDczLCA4MiwgODQsIDY5LCA2OSwgCi0gICAgMjA2LCA4NCwgNzIsIDczLCA4MiwgNjgsIDgzLCAxMjgsIDg0LCA3MiwgNzMsIDgyLCA2OCwgMjExLCA4NCwgNzIsIDczLCAKLSAgICA4MiwgNjgsIDEyOCwgODQsIDcyLCA3MywgODIsIDE5NiwgODQsIDcyLCA3MywgMjA2LCA4NCwgNzIsIDczLCA3MywgMTI4LCAKLSAgICA4NCwgNzIsIDczLCA3MSwgNzIsIDEyOCwgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgMjAwLCA4NCwgNzIsIDY5LCA4OSwgCi0gICAgMTI4LCA4NCwgNzIsIDY5LCA4NCwgNzIsIDY5LCAxMjgsIDg0LCA3MiwgNjksIDg0LCA3MiwgMTI4LCA4NCwgNzIsIDY5LCAKLSAgICA4NCwgNjUsIDEyOCwgODQsIDcyLCA2OSwgODQsIDE5MywgODQsIDcyLCA2OSwgODMsIDgwLCA3MywgNjUsIDIwNiwgODQsIAotICAgIDcyLCA2OSwgODMsIDY5LCA3OSwgODMsIDEyOCwgODQsIDcyLCA2OSwgODMsIDY5LCA3OSwgMjExLCA4NCwgNzIsIDY5LCAKLSAgICAyMTEsIDg0LCA3MiwgNjksIDgyLCA3NywgNzksIDY4LCA4OSwgNzgsIDY1LCA3NywgNzMsIDY3LCAxMjgsIDg0LCA3MiwgNjksIAotICAgIDgyLCA2OSwgNzAsIDc5LCA4MiwgNjksIDEyOCwgODQsIDcyLCA2OSwgODIsIDE5NywgODQsIDcyLCA2OSwgMjA2LCA4NCwgCi0gICAgNzIsIDY5LCA3NywgNjUsIDg0LCA3MywgODMsIDc3LCA3OSwgMjExLCA4NCwgNzIsIDY5LCA3NywgNjUsIDEyOCwgODQsIDcyLCAKLSAgICA2OSwgNzcsIDE5MywgODQsIDcyLCA2OSwgNzIsIDEyOCwgODQsIDcyLCA2OSwgMjAwLCA4NCwgNzIsIDE5NywgODQsIDcyLCAKLSAgICA2NSwgODcsIDEyOCwgODQsIDcyLCA2NSwgNzgsIDg0LCA3MiwgNjUsIDc1LCA3MiwgNjUsIDg0LCAxMjgsIDg0LCA3MiwgNjUsIAotICAgIDc4LCA3OCwgNjUsIDEyOCwgODQsIDcyLCA2NSwgNzgsIDEyOCwgODQsIDcyLCA2NSwgMjA2LCA4NCwgNzIsIDY1LCA3NiwgCi0gICAgMTI4LCA4NCwgNzIsIDY1LCAyMDQsIDg0LCA3MiwgNjUsIDcyLCA2NSwgNzgsIDEyOCwgODQsIDcyLCA2NSwgNjUsIDc4LCAKLSAgICAxOTMsIDg0LCA3MiwgNjUsIDY1LCA3NiwgODUsIDEyOCwgODQsIDcyLCA0NSwgNjcsIDgyLCA2OSwgMTk3LCA4NCwgNjksIAotICAgIDg4LCA4NCwgMTI4LCA4NCwgNjksIDg4LCAxMjgsIDg0LCA2OSwgODYsIDczLCA4MiwgMTI4LCA4NCwgNjksIDg1LCA4NCwgCi0gICAgNjksIDg1LCA4OCwgMTI4LCA4NCwgNjksIDg1LCA4NCwgNjksIDg1LCA4NywgNjksIDc4LCAxMjgsIDg0LCA2OSwgODUsIDg0LCAKLSAgICAxMjgsIDg0LCA2OSwgODUsIDc4LCAxMjgsIDg0LCA2OSwgODUsIDY1LCA2OSwgODEsIDEyOCwgODQsIDY5LCA4NSwgNjUsIAotICAgIDY5LCA3OCwgMTI4LCA4NCwgNjksIDg1LCAxMjgsIDg0LCA2OSwgODQsIDgyLCA2NSwgODMsIDczLCA3NywgNzksIDg1LCAKLSAgICAxMjgsIDg0LCA2OSwgODQsIDgyLCA2NSwgODMsIDY5LCA3NywgNjksIDEyOCwgODQsIDY5LCA4NCwgODIsIDY1LCA4MCwgNzYsIAotICAgIDczLCAxMjgsIDg0LCA2OSwgODQsIDgyLCA2NSwgNzAsIDc5LCA3OCwgNzMsIDY1LCA4MywgMTI4LCA4NCwgNjksIDg0LCA3MiwgCi0gICAgMTI4LCA4NCwgNjksIDg0LCAyMDAsIDg0LCA2OSwgODQsIDY1LCA4MiwgODQsIDc5LCAyMTEsIDg0LCA2OSwgODQsIDY1LCAKLSAgICA4MiwgODQsIDczLCA3NywgNzksIDgyLCA3MywgNzksIDc4LCAxMjgsIDg0LCA2OSwgODQsIDEyOCwgODQsIDY5LCAyMTIsIAotICAgIDg0LCA2OSwgODMsIDgzLCA2OSwgODIsIDY1LCAxMjgsIDg0LCA2OSwgODMsIDgzLCA2OSwgODIsIDE5MywgODQsIDY5LCA4MywgCi0gICAgODMsIDY1LCA4MiwgNzksIDIwNiwgODQsIDY5LCA4MywgMjAwLCA4NCwgNjksIDgyLCA3NywgNzMsIDc4LCA2NSwgODQsIDc5LCAKLSAgICA4MiwgMTI4LCA4NCwgNjksIDgwLCAxMjgsIDg0LCA2OSwgNzgsIDg1LCA4NCwgNzksIDEyOCwgODQsIDY5LCA3OCwgODUsIAotICAgIDEyOCwgODQsIDY5LCA3OCwgMjEzLCA4NCwgNjksIDc4LCA4NCwgNzIsIDEyOCwgODQsIDY5LCA3OCwgODQsIDEyOCwgODQsIAotICAgIDY5LCA3OCwgMjExLCA4NCwgNjksIDc4LCA3OCwgNzMsIDIxMSwgODQsIDY5LCA3OCwgNzEsIDE5NywgODQsIDY5LCA3OCwgCi0gICAgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgODQsIDY5LCA3OCwgMTI4LCA4NCwgNjksIDIwNiwgODQsIDY5LCAKLSAgICA3NywgODAsIDg1LCAyMTEsIDg0LCA2OSwgNzYsIDg1LCAxMjgsIDg0LCA2OSwgNzYsIDc5LCA4NSwgMjExLCA4NCwgNjksIAotICAgIDc2LCA3NiwgNjksIDIxMCwgODQsIDY5LCA3NiwgNzMsIDgzLCA3MiwgMTkzLCA4NCwgNjksIDc2LCA2OSwgODYsIDczLCA4MywgCi0gICAgNzMsIDc5LCA3OCwgMTI4LCA4NCwgNjksIDc2LCA2OSwgODMsIDY3LCA3OSwgODAsIDY5LCAxMjgsIDg0LCA2OSwgNzYsIDY5LCAKLSAgICA4MCwgNzIsIDc5LCA3OCwgNjksIDEyOCwgODQsIDY5LCA3NiwgNjksIDgwLCA3MiwgNzksIDc4LCAxOTcsIDg0LCA2OSwgNzYsIAotICAgIDY5LCA3MywgNjUsIDEyOCwgODQsIDY5LCA3MywgODcsIDgzLCAxMjgsIDg0LCA2OSwgNzEsIDY5LCA3MiwgMTI4LCA4NCwgCi0gICAgNjksIDY5LCA2OSwgNjksIDEyOCwgODQsIDY5LCAxOTcsIDg0LCA2OSwgNjgsIDg1LCA3OCwgNzEsIDEyOCwgODQsIDY5LCAKLSAgICA2NSwgODIsIDIxMSwgODQsIDY5LCA2NSwgODIsIDY4LCA4MiwgNzksIDgwLCA0NSwgODMsIDgwLCA3OSwgNzUsIDY5LCAxOTYsIAotICAgIDg0LCA2OSwgNjUsIDgyLCA2OCwgODIsIDc5LCA4MCwgNDUsIDgzLCA3MiwgNjUsIDc4LCA3NSwgNjksIDE5NiwgODQsIDY5LCAKLSAgICA2NSwgODIsIDY4LCA4MiwgNzksIDgwLCA0NSwgNjYsIDY1LCA4MiwgNjYsIDY5LCAxOTYsIDg0LCA2OSwgNjUsIDgyLCA0NSwgCi0gICAgNzksIDcwLCAxOTgsIDg0LCA2OSwgNjUsIDY3LCA4NSwgMjA4LCA4NCwgNjksIDQ1LCA4NSwgMTI4LCA4NCwgNjcsIDcyLCAKLSAgICA2OSwgNzIsIDY5LCA3MiwgMTI4LCA4NCwgNjcsIDcyLCA2OSwgNzIsIDY5LCAyMDAsIDg0LCA2NywgNzIsIDY5LCA3MiwgCi0gICAgMTI4LCA4NCwgNjcsIDcyLCA2OSwgMjAwLCA4NCwgNjcsIDcyLCA2OSwgMTI4LCA4NCwgMTk1LCA4NCwgNjUsIDg5LCAxMjgsIAotICAgIDg0LCA2NSwgODgsIDczLCAxMjgsIDg0LCA2NSwgODgsIDEyOCwgODQsIDY1LCA4NywgNjksIDc2LCA3NiwgNjksIDc3LCA2OSwgCi0gICAgMjEyLCA4NCwgNjUsIDg3LCA2NSwgMTI4LCA4NCwgNjUsIDg3LCAxMjgsIDg0LCA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCAKLSAgICA3MywgMTI4LCA4NCwgNjUsIDg2LCAxMjgsIDg0LCA2NSwgMjE0LCA4NCwgNjUsIDg1LCA4MiwgODUsIDgzLCAxMjgsIDg0LCAKLSAgICA2NSwgODUsIDEyOCwgODQsIDY1LCAyMTMsIDg0LCA2NSwgODQsIDg3LCA2OSwgNjksIDc2LCAxMjgsIDg0LCA2NSwgODQsIAotICAgIDg3LCA2OSwgNjksIDIwNCwgODQsIDY1LCA4NCwgODQsIDc5LCA3OSwgNjksIDE5NiwgODQsIDY1LCA4NCwgMTI4LCA4NCwgCi0gICAgNjUsIDgyLCA4NSwgNzgsIDcxLCAxMjgsIDg0LCA2NSwgODIsIDg0LCA2NSwgODIsIDQ1LCA1MCwgMTI4LCA4NCwgNjUsIDgyLCAKLSAgICA4NCwgNjUsIDgyLCAxMjgsIDg0LCA2NSwgODEsIDEyOCwgODQsIDY1LCA4MCwgNjksIDgyLCAxMjgsIDg0LCA2NSwgODAsIAotICAgIDE5NywgODQsIDY1LCA4MCwgMTI4LCA4NCwgNjUsIDc5LCAxMjgsIDg0LCA2NSwgNzgsIDc4LCA2OSwgMTk2LCA4NCwgNjUsIAotICAgIDc4LCA3MSwgNjksIDgyLCA3MywgNzgsIDY5LCAxMjgsIDg0LCA2NSwgNzgsIDE5OSwgODQsIDY1LCA3OCwgNjUsIDY2LCA2NSwgCi0gICAgODQsIDE5MywgODQsIDY1LCA3OCwgMTI4LCA4NCwgNjUsIDc3LCA3MywgNzgsIDcxLCAxMjgsIDg0LCA2NSwgNzcsIDEyOCwgCi0gICAgODQsIDY1LCA3NiwgNzYsIDEyOCwgODQsIDY1LCA3NiwgMjA0LCA4NCwgNjUsIDc2LCA3MywgNzgsIDcxLCAxMjgsIDg0LCAKLSAgICA2NSwgNzYsIDczLCA3OCwgMTk5LCA4NCwgNjUsIDc2LCA2OSwgNzgsIDg0LCA4MywgMTI4LCA4NCwgNjUsIDc2LCA2OSwgNzgsIAotICAgIDIxMiwgODQsIDY1LCA3NSwgNzIsIDY1LCA3NiwgNzYsIDg1LCA4MywgMTI4LCA4NCwgNjUsIDc1LCA2OSwgMTI4LCA4NCwgCi0gICAgNjUsIDc1LCA1MiwgMTI4LCA4NCwgNjUsIDc1LCAxMjgsIDg0LCA2NSwgNzMsIDgzLCA4OSwgNzksIDg1LCAxMjgsIDg0LCAKLSAgICA2NSwgNzMsIDc2LCA3NiwgNjksIDgzLCAyMTEsIDg0LCA2NSwgNzMsIDc2LCAxMjgsIDg0LCA2NSwgNzMsIDIwNCwgODQsIAotICAgIDY1LCA3MiwgMTI4LCA4NCwgNjUsIDIwMCwgODQsIDY1LCA3MSwgNjYsIDY1LCA3OCwgODcsIDE5MywgODQsIDY1LCA3MSwgCi0gICAgNjUsIDc2LCA3OSwgMTk5LCA4NCwgNjUsIDcxLCAxMjgsIDg0LCA2NSwgNjksIDIwNiwgODQsIDY1LCA2NywgNzUsIDEyOCwgCi0gICAgODQsIDY1LCA2NywgMjAzLCA4NCwgNjUsIDY2LCA4NSwgNzYsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA4NCwgNjUsIDY2LCAKLSAgICA4MywgMTI4LCA4NCwgNjUsIDY2LCA3NiwgNjksIDEyOCwgODQsIDY1LCA2NiwgMTI4LCA4NCwgNjUsIDE5NCwgODQsIDY1LCAKLSAgICA2NSwgODMsIDcyLCA2NSwgNjksIDEyOCwgODQsIDY1LCA2NSwgODEsIDEyOCwgODQsIDY1LCA2NSwgNzcsIDEyOCwgODQsIAotICAgIDY1LCA2NSwgNzYsIDg1LCA3NCwgMTkzLCA4NCwgNjUsIDY1LCA3MywgMTI4LCA4NCwgNjUsIDY1LCA3MCwgMTI4LCA4NCwgCi0gICAgNjUsIDUwLCAxMjgsIDg0LCA2NSwgNDUsIDgyLCA3OSwgNzYsIDEyOCwgODQsIDQ4LCA1MSwgNTQsIDEyOCwgODQsIDQ4LCAKLSAgICA1MSwgNTMsIDEyOCwgODQsIDQ4LCA1MSwgNTIsIDEyOCwgODQsIDQ4LCA1MSwgNTEsIDY1LCAxMjgsIDg0LCA0OCwgNTEsIAotICAgIDUxLCAxMjgsIDg0LCA0OCwgNTEsIDUwLCA2NSwgMTI4LCA4NCwgNDgsIDUxLCA1MCwgMTI4LCA4NCwgNDgsIDUxLCA0OSwgCi0gICAgMTI4LCA4NCwgNDgsIDUxLCA0OCwgMTI4LCA4NCwgNDgsIDUwLCA1NywgMTI4LCA4NCwgNDgsIDUwLCA1NiwgMTI4LCA4NCwgCi0gICAgNDgsIDUwLCA1NSwgMTI4LCA4NCwgNDgsIDUwLCA1NCwgMTI4LCA4NCwgNDgsIDUwLCA1MywgMTI4LCA4NCwgNDgsIDUwLCAKLSAgICA1MiwgMTI4LCA4NCwgNDgsIDUwLCA1MSwgMTI4LCA4NCwgNDgsIDUwLCA1MCwgMTI4LCA4NCwgNDgsIDUwLCA0OSwgMTI4LCAKLSAgICA4NCwgNDgsIDUwLCA0OCwgMTI4LCA4NCwgNDgsIDQ5LCA1NywgMTI4LCA4NCwgNDgsIDQ5LCA1NiwgMTI4LCA4NCwgNDgsIAotICAgIDQ5LCA1NSwgMTI4LCA4NCwgNDgsIDQ5LCA1NCwgNjUsIDEyOCwgODQsIDQ4LCA0OSwgNTQsIDEyOCwgODQsIDQ4LCA0OSwgCi0gICAgNTMsIDEyOCwgODQsIDQ4LCA0OSwgNTIsIDEyOCwgODQsIDQ4LCA0OSwgNTEsIDEyOCwgODQsIDQ4LCA0OSwgNTAsIDEyOCwgCi0gICAgODQsIDQ4LCA0OSwgNDksIDY1LCAxMjgsIDg0LCA0OCwgNDksIDQ5LCAxMjgsIDg0LCA0OCwgNDksIDQ4LCAxMjgsIDg0LCAKLSAgICA0OCwgNDgsIDU3LCA2NSwgMTI4LCA4NCwgNDgsIDQ4LCA1NywgMTI4LCA4NCwgNDgsIDQ4LCA1NiwgNjUsIDEyOCwgODQsIAotICAgIDQ4LCA0OCwgNTYsIDEyOCwgODQsIDQ4LCA0OCwgNTUsIDY1LCAxMjgsIDg0LCA0OCwgNDgsIDU1LCAxMjgsIDg0LCA0OCwgCi0gICAgNDgsIDU0LCAxMjgsIDg0LCA0OCwgNDgsIDUzLCAxMjgsIDg0LCA0OCwgNDgsIDUyLCAxMjgsIDg0LCA0OCwgNDgsIDUxLCAKLSAgICA2NSwgMTI4LCA4NCwgNDgsIDQ4LCA1MSwgMTI4LCA4NCwgNDgsIDQ4LCA1MCwgMTI4LCA4NCwgNDgsIDQ4LCA0OSwgMTI4LCAKLSAgICA4NCwgNDUsIDgzLCA3MiwgNzMsIDgyLCA4NCwgMTI4LCA4MywgOTAsIDkwLCAxMjgsIDgzLCA5MCwgODcsIDcxLCAxMjgsIAotICAgIDgzLCA5MCwgODcsIDY1LCAxMjgsIDgzLCA5MCwgODUsIDEyOCwgODMsIDkwLCA3OSwgMTI4LCA4MywgOTAsIDczLCAxMjgsIAotICAgIDgzLCA5MCwgNjksIDY5LCAxMjgsIDgzLCA5MCwgNjksIDEyOCwgODMsIDkwLCA2NSwgNjUsIDEyOCwgODMsIDkwLCA2NSwgCi0gICAgMTI4LCA4MywgOTAsIDEyOCwgODMsIDg5LCA4OCwgMTI4LCA4MywgODksIDg0LCAxMjgsIDgzLCA4OSwgODIsIDg4LCAxMjgsIAotICAgIDgzLCA4OSwgODIsIDc3LCA2NSwgODQsIDczLCA3NSwgNzMsIDEyOCwgODMsIDg5LCA4MiwgNzcsIDY1LCAxMjgsIDgzLCA4OSwgCi0gICAgODIsIDczLCA3OCwgNzEsIDY5LCAxMjgsIDgzLCA4OSwgODIsIDEyOCwgODMsIDg5LCA4MCwgMTI4LCA4MywgODksIDc5LCAKLSAgICA4NSwgODcsIDY1LCAxMjgsIDgzLCA4OSwgNzgsIDY5LCA4NiwgNzcsIDY1LCAxMjgsIDgzLCA4OSwgNzgsIDY4LCA2OSwgODMsIAotICAgIDc3LCA3OSwgMjExLCA4MywgODksIDc4LCA2NywgNzIsIDgyLCA3OSwgNzgsIDc5LCA4NSwgMjExLCA4MywgODksIDc4LCA2NSwgCi0gICAgNzEsIDc3LCAxOTMsIDgzLCA4OSwgNzgsIDY1LCA3MCwgNzMsIDEyOCwgODMsIDg5LCA3NywgNzcsIDY5LCA4NCwgODIsIDg5LCAKKyAgICAxMjgsIDg0LCA3MywgNzcsIDY5LCAyMTAsIDg0LCA3MywgNzcsIDY5LCAxMjgsIDg0LCA3MywgNzYsIDY4LCAxOTcsIDg0LCAKKyAgICA3MywgNzYsIDEyOCwgODQsIDczLCAyMDQsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCA4NCwgNzIsIDczLCA2OSwgODUsIAorICAgIDg0LCA3MiwgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgODMsIDczLCA3OSwgODMsIDQ1LCA3NSwgNzMsIDg5LCAKKyAgICA2OSwgNzksIDc1LCAxMjgsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCA4MywgNzMsIDc5LCA4MywgMTI4LCA4NCwgNzMsIAorICAgIDc1LCA2OSwgODUsIDg0LCA0NSwgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCAKKyAgICA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgCisgICAgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA4NCwgNzMsIDc1LCAKKyAgICA2OSwgODUsIDg0LCA0NSwgNjcsIDczLCA2OSwgODUsIDY3LCAxMjgsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCA2NywgCisgICAgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAxMjgsIDg0LCA3MywgNzUsIDY5LCAKKyAgICA4NSwgMjEyLCA4NCwgNzMsIDcxLCA3MiwgODQsIDc2LCA4OSwgNDUsIDY3LCA3NiwgNzksIDgzLCA2OSwgMTk2LCA4NCwgNzMsIAorICAgIDcxLCA3MiwgMjEyLCA4NCwgNzMsIDcxLCA2OSwgODIsIDEyOCwgODQsIDczLCA3MSwgNjksIDIxMCwgODQsIDczLCA3MCwgCisgICAgNzMsIDc4LCA2NSwgNzEsIDIwMCwgODQsIDczLCA2OSwgODgsIDEyOCwgODQsIDczLCA2OSwgODAsIDEyOCwgODQsIDczLCAKKyAgICAxOTcsIDg0LCA3MywgNjcsIDc1LCA2OSwgODQsIDEyOCwgODQsIDczLCA2NywgNzUsIDEyOCwgODQsIDczLCA2NywgMjAzLCAKKyAgICA4NCwgNzMsIDY1LCA4MiwgNjUsIDEyOCwgODQsIDcyLCA5MCwgMTI4LCA4NCwgNzIsIDg5LCA3OSwgNzksIDIwNSwgODQsIAorICAgIDcyLCA4NywgNzksIDc5LCAxMjgsIDg0LCA3MiwgODcsIDc5LCAxMjgsIDg0LCA3MiwgODcsIDczLCA3MywgMTI4LCA4NCwgCisgICAgNzIsIDg3LCA3MywgMTI4LCA4NCwgNzIsIDg3LCA2OSwgNjksIDEyOCwgODQsIDcyLCA4NywgNjUsIDY1LCAxMjgsIDg0LCAKKyAgICA3MiwgODcsIDY1LCAxMjgsIDg0LCA3MiwgODUsIDgyLCAyMTEsIDg0LCA3MiwgODUsIDgyLCA3MywgODMsIDY1LCAyMTgsIAorICAgIDg0LCA3MiwgODUsIDc4LCA3MSwgMTI4LCA4NCwgNzIsIDg1LCA3OCwgNjgsIDY5LCA4MiwgODMsIDg0LCA3OSwgODIsIDc3LCAKKyAgICAxMjgsIDg0LCA3MiwgODUsIDc4LCA2OCwgNjksIDgyLCAxMjgsIDg0LCA3MiwgODUsIDc4LCA2OCwgNjksIDIxMCwgODQsIAorICAgIDcyLCA4NSwgNzcsIDY2LCAyMTEsIDg0LCA3MiwgODIsIDc5LCA4NywgNzMsIDc4LCAxOTksIDg0LCA3MiwgODIsIDc5LCA4NSwgCisgICAgNzEsIDcyLCAxMjgsIDg0LCA3MiwgODIsIDc5LCA4NSwgNzEsIDIwMCwgODQsIDcyLCA4MiwgNjksIDY5LCA0NSwgODQsIDcyLCAKKyAgICA3MywgODIsIDg0LCA4OSwgMTI4LCA4NCwgNzIsIDgyLCA2OSwgNjksIDQ1LCA4MCwgNjksIDgyLCA0NSwgNjksIDIwNSwgODQsIAorICAgIDcyLCA4MiwgNjksIDY5LCA0NSwgNzYsIDczLCA3OCwgMTk3LCA4NCwgNzIsIDgyLCA2OSwgNjksIDQ1LCA2OSwgMjA1LCA4NCwgCisgICAgNzIsIDgyLCA2OSwgNjksIDQ1LCAxOTYsIDg0LCA3MiwgODIsIDY5LCA2NSwgNjgsIDEyOCwgODQsIDcyLCA3OSwgODUsIDgzLCAKKyAgICA2NSwgNzgsIDY4LCAyMTEsIDg0LCA3MiwgNzksIDg1LCA4MywgNjUsIDc4LCA2OCwgMTI4LCA4NCwgNzIsIDc5LCA4NSwgODMsIAorICAgIDY1LCA3OCwgMTk2LCA4NCwgNzIsIDc5LCA4NSwgNzEsIDcyLCAyMTIsIDg0LCA3MiwgNzksIDg1LCAxMjgsIDg0LCA3MiwgCisgICAgNzksIDgyLCA3OCwgMTI4LCA4NCwgNzIsIDc5LCA4MiwgMjA2LCA4NCwgNzIsIDc5LCA3OCwgNzEsIDEyOCwgODQsIDcyLCAKKyAgICA3OSwgNjUsIDEyOCwgODQsIDcyLCAyMDcsIDg0LCA3MiwgNzMsIDg1LCA4NCwgNzIsIDEyOCwgODQsIDcyLCA3MywgODQsIAorICAgIDY1LCAxMjgsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDQ1LCA4MywgNjksIDY3LCA3OSwgNzgsIDE5NiwgODQsIDcyLCA3MywgCisgICAgODIsIDg0LCA4OSwgNDUsIDc5LCA3OCwgNjksIDEyOCwgODQsIDcyLCA3MywgODIsIDg0LCAyMTcsIDg0LCA3MiwgNzMsIDgyLCAKKyAgICA4NCwgNjksIDY5LCA3OCwgMTI4LCA4NCwgNzIsIDczLCA4MiwgODQsIDY5LCA2OSwgMjA2LCA4NCwgNzIsIDczLCA4MiwgNjgsIAorICAgIDgzLCAxMjgsIDg0LCA3MiwgNzMsIDgyLCA2OCwgMjExLCA4NCwgNzIsIDczLCA4MiwgNjgsIDEyOCwgODQsIDcyLCA3MywgCisgICAgODIsIDE5NiwgODQsIDcyLCA3MywgMjA2LCA4NCwgNzIsIDczLCA3MywgMTI4LCA4NCwgNzIsIDczLCA3MSwgNzIsIDEyOCwgCisgICAgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgMjAwLCA4NCwgNzIsIDY5LCA4OSwgMTI4LCA4NCwgNzIsIDY5LCA4NCwgNzIsIDY5LCAKKyAgICAxMjgsIDg0LCA3MiwgNjksIDg0LCA3MiwgMTI4LCA4NCwgNzIsIDY5LCA4NCwgNjUsIDEyOCwgODQsIDcyLCA2OSwgODQsIAorICAgIDE5MywgODQsIDcyLCA2OSwgODMsIDgwLCA3MywgNjUsIDIwNiwgODQsIDcyLCA2OSwgODMsIDY5LCA3OSwgODMsIDEyOCwgCisgICAgODQsIDcyLCA2OSwgODMsIDY5LCA3OSwgMjExLCA4NCwgNzIsIDY5LCAyMTEsIDg0LCA3MiwgNjksIDgyLCA3NywgNzksIDY4LCAKKyAgICA4OSwgNzgsIDY1LCA3NywgNzMsIDY3LCAxMjgsIDg0LCA3MiwgNjksIDgyLCA2OSwgNzAsIDc5LCA4MiwgNjksIDEyOCwgODQsIAorICAgIDcyLCA2OSwgODIsIDE5NywgODQsIDcyLCA2OSwgMjA2LCA4NCwgNzIsIDY5LCA3NywgNjUsIDg0LCA3MywgODMsIDc3LCA3OSwgCisgICAgMjExLCA4NCwgNzIsIDY5LCA3NywgNjUsIDEyOCwgODQsIDcyLCA2OSwgNzcsIDE5MywgODQsIDcyLCA2OSwgNzIsIDEyOCwgCisgICAgODQsIDcyLCA2OSwgMjAwLCA4NCwgNzIsIDE5NywgODQsIDcyLCA2NSwgODcsIDEyOCwgODQsIDcyLCA2NSwgNzgsIDg0LCAKKyAgICA3MiwgNjUsIDc1LCA3MiwgNjUsIDg0LCAxMjgsIDg0LCA3MiwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgODQsIDcyLCA2NSwgNzgsIAorICAgIDEyOCwgODQsIDcyLCA2NSwgMjA2LCA4NCwgNzIsIDY1LCA3NiwgMTI4LCA4NCwgNzIsIDY1LCAyMDQsIDg0LCA3MiwgNjUsIAorICAgIDcyLCA2NSwgNzgsIDEyOCwgODQsIDcyLCA2NSwgNjUsIDc4LCAxOTMsIDg0LCA3MiwgNjUsIDY1LCA3NiwgODUsIDEyOCwgCisgICAgODQsIDcyLCA0NSwgNjcsIDgyLCA2OSwgMTk3LCA4NCwgNjksIDg4LCA4NCwgMTI4LCA4NCwgNjksIDg4LCAxMjgsIDg0LCAKKyAgICA2OSwgODYsIDczLCA4MiwgMTI4LCA4NCwgNjksIDg1LCA4NCwgNjksIDg1LCA4OCwgMTI4LCA4NCwgNjksIDg1LCA4NCwgNjksIAorICAgIDg1LCA4NywgNjksIDc4LCAxMjgsIDg0LCA2OSwgODUsIDg0LCAxMjgsIDg0LCA2OSwgODUsIDc4LCAxMjgsIDg0LCA2OSwgCisgICAgODUsIDY1LCA2OSwgODEsIDEyOCwgODQsIDY5LCA4NSwgNjUsIDY5LCA3OCwgMTI4LCA4NCwgNjksIDg1LCAxMjgsIDg0LCAKKyAgICA2OSwgODQsIDgyLCA2NSwgODMsIDczLCA3NywgNzksIDg1LCAxMjgsIDg0LCA2OSwgODQsIDgyLCA2NSwgODMsIDY5LCA3NywgCisgICAgNjksIDEyOCwgODQsIDY5LCA4NCwgODIsIDY1LCA4MCwgNzYsIDczLCAxMjgsIDg0LCA2OSwgODQsIDgyLCA2NSwgNzAsIDc5LCAKKyAgICA3OCwgNzMsIDY1LCA4MywgMTI4LCA4NCwgNjksIDg0LCA3MiwgMTI4LCA4NCwgNjksIDg0LCAyMDAsIDg0LCA2OSwgODQsIAorICAgIDY1LCA4MiwgODQsIDc5LCAyMTEsIDg0LCA2OSwgODQsIDY1LCA4MiwgODQsIDczLCA3NywgNzksIDgyLCA3MywgNzksIDc4LCAKKyAgICAxMjgsIDg0LCA2OSwgODQsIDEyOCwgODQsIDY5LCAyMTIsIDg0LCA2OSwgODMsIDgzLCA2OSwgODIsIDY1LCAxMjgsIDg0LCAKKyAgICA2OSwgODMsIDgzLCA2OSwgODIsIDE5MywgODQsIDY5LCA4MywgODMsIDY1LCA4MiwgNzksIDIwNiwgODQsIDY5LCA4MywgCisgICAgMjAwLCA4NCwgNjksIDgyLCA3NywgNzMsIDc4LCA2NSwgODQsIDc5LCA4MiwgMTI4LCA4NCwgNjksIDgwLCAxMjgsIDg0LCAKKyAgICA2OSwgNzgsIDg1LCA4NCwgNzksIDEyOCwgODQsIDY5LCA3OCwgODUsIDEyOCwgODQsIDY5LCA3OCwgMjEzLCA4NCwgNjksIAorICAgIDc4LCA4NCwgNzIsIDEyOCwgODQsIDY5LCA3OCwgODQsIDEyOCwgODQsIDY5LCA3OCwgMjExLCA4NCwgNjksIDc4LCA3OCwgCisgICAgNzMsIDIxMSwgODQsIDY5LCA3OCwgNzEsIDE5NywgODQsIDY5LCA3OCwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIAorICAgIDEyOCwgODQsIDY5LCA3OCwgMTI4LCA4NCwgNjksIDIwNiwgODQsIDY5LCA3NywgODAsIDg1LCAyMTEsIDg0LCA2OSwgNzYsIAorICAgIDg1LCAxMjgsIDg0LCA2OSwgNzYsIDc5LCA4NSwgMjExLCA4NCwgNjksIDc2LCA3NiwgNjksIDIxMCwgODQsIDY5LCA3NiwgCisgICAgNzMsIDgzLCA3MiwgMTkzLCA4NCwgNjksIDc2LCA2OSwgODYsIDczLCA4MywgNzMsIDc5LCA3OCwgMTI4LCA4NCwgNjksIDc2LCAKKyAgICA2OSwgODMsIDY3LCA3OSwgODAsIDY5LCAxMjgsIDg0LCA2OSwgNzYsIDY5LCA4MCwgNzIsIDc5LCA3OCwgNjksIDEyOCwgODQsIAorICAgIDY5LCA3NiwgNjksIDgwLCA3MiwgNzksIDc4LCAxOTcsIDg0LCA2OSwgNzYsIDY5LCA3MywgNjUsIDEyOCwgODQsIDY5LCA3NiwgCisgICAgNjksIDcxLCA4MiwgNjUsIDgwLCAyMDAsIDg0LCA2OSwgNzMsIDg3LCA4MywgMTI4LCA4NCwgNjksIDcxLCA2OSwgNzIsIAorICAgIDEyOCwgODQsIDY5LCA2OSwgNjksIDY5LCAxMjgsIDg0LCA2OSwgMTk3LCA4NCwgNjksIDY4LCA4NSwgNzgsIDcxLCAxMjgsIAorICAgIDg0LCA2OSwgNjUsIDgyLCAyMTEsIDg0LCA2OSwgNjUsIDgyLCA2OCwgODIsIDc5LCA4MCwgNDUsIDgzLCA4MCwgNzksIDc1LCAKKyAgICA2OSwgMTk2LCA4NCwgNjksIDY1LCA4MiwgNjgsIDgyLCA3OSwgODAsIDQ1LCA4MywgNzIsIDY1LCA3OCwgNzUsIDY5LCAxOTYsIAorICAgIDg0LCA2OSwgNjUsIDgyLCA2OCwgODIsIDc5LCA4MCwgNDUsIDY2LCA2NSwgODIsIDY2LCA2OSwgMTk2LCA4NCwgNjksIDY1LCAKKyAgICA4MiwgNDUsIDc5LCA3MCwgMTk4LCA4NCwgNjksIDY1LCA2NywgODUsIDIwOCwgODQsIDY5LCA0NSwgODUsIDEyOCwgODQsIAorICAgIDY5LCA0NSwgNTAsIDEyOCwgODQsIDY3LCA3MiwgNjksIDcyLCA2OSwgNzIsIDEyOCwgODQsIDY3LCA3MiwgNjksIDcyLCA2OSwgCisgICAgMjAwLCA4NCwgNjcsIDcyLCA2OSwgNzIsIDEyOCwgODQsIDY3LCA3MiwgNjksIDIwMCwgODQsIDY3LCA3MiwgNjksIDEyOCwgCisgICAgODQsIDE5NSwgODQsIDY1LCA4OSwgMTI4LCA4NCwgNjUsIDg4LCA3MywgMTI4LCA4NCwgNjUsIDg4LCAxMjgsIDg0LCA2NSwgCisgICAgODcsIDY5LCA3NiwgNzYsIDY5LCA3NywgNjksIDIxMiwgODQsIDY1LCA4NywgNjUsIDEyOCwgODQsIDY1LCA4NywgMTI4LCAKKyAgICA4NCwgNjUsIDg2LCA3MywgODksIDY1LCA3OCwgNzMsIDEyOCwgODQsIDY1LCA4NiwgMTI4LCA4NCwgNjUsIDIxNCwgODQsIAorICAgIDY1LCA4NSwgODIsIDg1LCA4MywgMTI4LCA4NCwgNjUsIDIxMywgODQsIDY1LCA4NCwgODcsIDY5LCA2OSwgNzYsIDEyOCwgCisgICAgODQsIDY1LCA4NCwgODcsIDY5LCA2OSwgMjA0LCA4NCwgNjUsIDg0LCA4NCwgNzksIDc5LCA2OSwgMTk2LCA4NCwgNjUsIDg0LCAKKyAgICAxMjgsIDg0LCA2NSwgODIsIDg1LCA3OCwgNzEsIDEyOCwgODQsIDY1LCA4MiwgODQsIDY1LCA4MiwgNDUsIDUwLCAxMjgsIAorICAgIDg0LCA2NSwgODIsIDg0LCA2NSwgODIsIDEyOCwgODQsIDY1LCA4MSwgMTI4LCA4NCwgNjUsIDgwLCA2OSwgODIsIDEyOCwgCisgICAgODQsIDY1LCA4MCwgMTk3LCA4NCwgNjUsIDgwLCAxMjgsIDg0LCA2NSwgNzksIDEyOCwgODQsIDY1LCA3OCwgNzgsIDY5LCAKKyAgICAxOTYsIDg0LCA2NSwgNzgsIDcxLCA2OSwgODIsIDczLCA3OCwgNjksIDEyOCwgODQsIDY1LCA3OCwgMTk5LCA4NCwgNjUsIAorICAgIDc4LCA2NSwgNjYsIDY1LCA4NCwgMTkzLCA4NCwgNjUsIDc4LCAxMjgsIDg0LCA2NSwgNzcsIDczLCA3OCwgNzEsIDEyOCwgCisgICAgODQsIDY1LCA3NywgMTI4LCA4NCwgNjUsIDc2LCA3NiwgMTI4LCA4NCwgNjUsIDc2LCAyMDQsIDg0LCA2NSwgNzYsIDczLCAKKyAgICA3OCwgNzEsIDEyOCwgODQsIDY1LCA3NiwgNzMsIDc4LCAxOTksIDg0LCA2NSwgNzYsIDY5LCA3OCwgODQsIDgzLCAxMjgsIAorICAgIDg0LCA2NSwgNzYsIDY5LCA3OCwgMjEyLCA4NCwgNjUsIDc1LCA4MiwgMjAxLCA4NCwgNjUsIDc1LCA3MiwgNjUsIDc2LCA3NiwgCisgICAgODUsIDgzLCAxMjgsIDg0LCA2NSwgNzUsIDY5LCAxMjgsIDg0LCA2NSwgNzUsIDUyLCAxMjgsIDg0LCA2NSwgNzUsIDEyOCwgCisgICAgODQsIDY1LCA3MywgODMsIDg5LCA3OSwgODUsIDEyOCwgODQsIDY1LCA3MywgNzYsIDc2LCA2OSwgODMsIDIxMSwgODQsIDY1LCAKKyAgICA3MywgNzYsIDEyOCwgODQsIDY1LCA3MywgMjA0LCA4NCwgNjUsIDcyLCAxMjgsIDg0LCA2NSwgMjAwLCA4NCwgNjUsIDcxLCAKKyAgICA2NiwgNjUsIDc4LCA4NywgMTkzLCA4NCwgNjUsIDcxLCA2NSwgNzYsIDc5LCAxOTksIDg0LCA2NSwgNzEsIDEyOCwgODQsIAorICAgIDY1LCA2OSwgMjA2LCA4NCwgNjUsIDY3LCA3NSwgMTI4LCA4NCwgNjUsIDY3LCAyMDMsIDg0LCA2NSwgNjYsIDg1LCA3NiwgCisgICAgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDg0LCA2NSwgNjYsIDg1LCA3NiwgNjUsIDg0LCA3MywgNzksIDIwNiwgODQsIDY1LCAKKyAgICA2NiwgODMsIDEyOCwgODQsIDY1LCA2NiwgNzYsIDY5LCAxMjgsIDg0LCA2NSwgNjYsIDEyOCwgODQsIDY1LCAxOTQsIDg0LCAKKyAgICA2NSwgNjUsIDgzLCA3MiwgNjUsIDY5LCAxMjgsIDg0LCA2NSwgNjUsIDgxLCAxMjgsIDg0LCA2NSwgNjUsIDc3LCAxMjgsIAorICAgIDg0LCA2NSwgNjUsIDc2LCA4NSwgNzQsIDE5MywgODQsIDY1LCA2NSwgNzMsIDEyOCwgODQsIDY1LCA2NSwgNzAsIDEyOCwgCisgICAgODQsIDY1LCA1MCwgMTI4LCA4NCwgNjUsIDQ1LCA4MiwgNzksIDc2LCAxMjgsIDg0LCA2NSwgNDUsIDUwLCAxMjgsIDg0LCAKKyAgICA0OCwgNTEsIDU0LCAxMjgsIDg0LCA0OCwgNTEsIDUzLCAxMjgsIDg0LCA0OCwgNTEsIDUyLCAxMjgsIDg0LCA0OCwgNTEsIAorICAgIDUxLCA2NSwgMTI4LCA4NCwgNDgsIDUxLCA1MSwgMTI4LCA4NCwgNDgsIDUxLCA1MCwgNjUsIDEyOCwgODQsIDQ4LCA1MSwgCisgICAgNTAsIDEyOCwgODQsIDQ4LCA1MSwgNDksIDEyOCwgODQsIDQ4LCA1MSwgNDgsIDEyOCwgODQsIDQ4LCA1MCwgNTcsIDEyOCwgCisgICAgODQsIDQ4LCA1MCwgNTYsIDEyOCwgODQsIDQ4LCA1MCwgNTUsIDEyOCwgODQsIDQ4LCA1MCwgNTQsIDEyOCwgODQsIDQ4LCAKKyAgICA1MCwgNTMsIDEyOCwgODQsIDQ4LCA1MCwgNTIsIDEyOCwgODQsIDQ4LCA1MCwgNTEsIDEyOCwgODQsIDQ4LCA1MCwgNTAsIAorICAgIDEyOCwgODQsIDQ4LCA1MCwgNDksIDEyOCwgODQsIDQ4LCA1MCwgNDgsIDEyOCwgODQsIDQ4LCA0OSwgNTcsIDEyOCwgODQsIAorICAgIDQ4LCA0OSwgNTYsIDEyOCwgODQsIDQ4LCA0OSwgNTUsIDEyOCwgODQsIDQ4LCA0OSwgNTQsIDY1LCAxMjgsIDg0LCA0OCwgCisgICAgNDksIDU0LCAxMjgsIDg0LCA0OCwgNDksIDUzLCAxMjgsIDg0LCA0OCwgNDksIDUyLCAxMjgsIDg0LCA0OCwgNDksIDUxLCAKKyAgICAxMjgsIDg0LCA0OCwgNDksIDUwLCAxMjgsIDg0LCA0OCwgNDksIDQ5LCA2NSwgMTI4LCA4NCwgNDgsIDQ5LCA0OSwgMTI4LCAKKyAgICA4NCwgNDgsIDQ5LCA0OCwgMTI4LCA4NCwgNDgsIDQ4LCA1NywgNjUsIDEyOCwgODQsIDQ4LCA0OCwgNTcsIDEyOCwgODQsIAorICAgIDQ4LCA0OCwgNTYsIDY1LCAxMjgsIDg0LCA0OCwgNDgsIDU2LCAxMjgsIDg0LCA0OCwgNDgsIDU1LCA2NSwgMTI4LCA4NCwgCisgICAgNDgsIDQ4LCA1NSwgMTI4LCA4NCwgNDgsIDQ4LCA1NCwgMTI4LCA4NCwgNDgsIDQ4LCA1MywgMTI4LCA4NCwgNDgsIDQ4LCAKKyAgICA1MiwgMTI4LCA4NCwgNDgsIDQ4LCA1MSwgNjUsIDEyOCwgODQsIDQ4LCA0OCwgNTEsIDEyOCwgODQsIDQ4LCA0OCwgNTAsIAorICAgIDEyOCwgODQsIDQ4LCA0OCwgNDksIDEyOCwgODQsIDQ1LCA4MywgNzIsIDczLCA4MiwgODQsIDEyOCwgODMsIDkwLCA5MCwgCisgICAgMTI4LCA4MywgOTAsIDg3LCA3MSwgMTI4LCA4MywgOTAsIDg3LCA2NSwgMTI4LCA4MywgOTAsIDg1LCAxMjgsIDgzLCA5MCwgCisgICAgNzksIDEyOCwgODMsIDkwLCA3MywgMTI4LCA4MywgOTAsIDY5LCA2OSwgMTI4LCA4MywgOTAsIDY5LCAxMjgsIDgzLCA5MCwgCisgICAgNjUsIDY1LCAxMjgsIDgzLCA5MCwgNjUsIDEyOCwgODMsIDkwLCAxMjgsIDgzLCA4OSwgODgsIDEyOCwgODMsIDg5LCA4NCwgCisgICAgMTI4LCA4MywgODksIDgzLCA4NCwgNjksIDIwNSwgODMsIDg5LCA4MiwgODgsIDEyOCwgODMsIDg5LCA4MiwgNzcsIDY1LCAKKyAgICA4NCwgNzMsIDc1LCA3MywgMTI4LCA4MywgODksIDgyLCA3NywgNjUsIDEyOCwgODMsIDg5LCA4MiwgNzMsIDc4LCA3MSwgNjksIAorICAgIDEyOCwgODMsIDg5LCA4MiwgMTI4LCA4MywgODksIDgwLCAxMjgsIDgzLCA4OSwgNzksIDg1LCA4NywgNjUsIDEyOCwgODMsIAorICAgIDg5LCA3OCwgNjksIDg2LCA3NywgNjUsIDEyOCwgODMsIDg5LCA3OCwgNjgsIDY5LCA4MywgNzcsIDc5LCAyMTEsIDgzLCA4OSwgCisgICAgNzgsIDY3LCA3MiwgODIsIDc5LCA3OCwgNzksIDg1LCAyMTEsIDgzLCA4OSwgNzgsIDY1LCA3MSwgNzcsIDE5MywgODMsIDg5LCAKKyAgICA3OCwgNjUsIDcwLCA3MywgMTI4LCA4MywgODksIDc4LCAxMjgsIDgzLCA4OSwgNzcsIDc3LCA2OSwgODQsIDgyLCA4OSwgCiAgICAgMTI4LCA4MywgODksIDc3LCA3NywgNjksIDg0LCA4MiwgNzMsIDE5NSwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgODMsIAogICAgIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDU3LCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1NiwgCiAgICAgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTUsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDU0LCAKQEAgLTY1NCwyMjMgKzc1MywyMjggQEAKICAgICA2NiwgNzksIDc2LCA0NSwgNDksIDUyLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA0OSwgNTEsIDEyOCwgODMsIAogICAgIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDQ5LCA1MCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNDksIDQ5LCAKICAgICAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA0OSwgNDgsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIAotICAgIDQ5LCAxMjgsIDgzLCA4OSwgNzYsIDc5LCA4NCwgMjAxLCA4MywgODksIDY1LCAxMjgsIDgzLCA4OSwgMTI4LCA4MywgODcsIAotICAgIDkwLCAxMjgsIDgzLCA4NywgODUsIDc4LCAxOTksIDgzLCA4NywgNzksIDgyLCA2OCwgODMsIDEyOCwgODMsIDg3LCA3OSwgCi0gICAgODIsIDY4LCAxMjgsIDgzLCA4NywgNzksIDc5LCAxMjgsIDgzLCA4NywgNzksIDEyOCwgODMsIDg3LCA3MywgODIsIDIwNCwgCi0gICAgODMsIDg3LCA3MywgNzcsIDc3LCA3MywgNzgsIDcxLCAxMjgsIDgzLCA4NywgNzMsIDc3LCA3NywgNjksIDgyLCAxMjgsIDgzLCAKLSAgICA4NywgNzMsIDczLCAxMjgsIDgzLCA4NywgNzMsIDEyOCwgODMsIDg3LCA3MSwgMTI4LCA4MywgODcsIDY5LCA2OSwgODQsIAotICAgIDEyOCwgODMsIDg3LCA2OSwgNjksIDIxMiwgODMsIDg3LCA2OSwgNjUsIDg0LCAxMjgsIDgzLCA4NywgNjksIDY1LCAyMTIsIAotICAgIDgzLCA4NywgNjUsIDgzLCAyMDAsIDgzLCA4NywgNjUsIDgwLCA4MCwgNzMsIDc4LCA3MSwgMTI4LCA4MywgODcsIDY1LCA2NSwgCi0gICAgMTI4LCA4MywgODcsIDEyOCwgODMsIDg2LCA2NSwgODMsIDg0LCAyMDEsIDgzLCA4NiwgNjUsIDgyLCA3MywgODQsIDY1LCAKLSAgICAxMjgsIDgzLCA4NiwgNjUsIDgyLCA3MywgODQsIDE5MywgODMsIDg1LCA4OCwgMTI4LCA4MywgODUsIDg1LCAxMjgsIDgzLCAKLSAgICA4NSwgODQsIDEyOCwgODMsIDg1LCA4MywgODAsIDY5LCA3OCwgODMsIDczLCA3OSwgMjA2LCA4MywgODUsIDgzLCA3MiwgNzMsIAotICAgIDEyOCwgODMsIDg1LCA4MiwgODgsIDEyOCwgODMsIDg1LCA4MiwgODIsIDc5LCA4NSwgNzgsIDY4LCAxMjgsIDgzLCA4NSwgCi0gICAgODIsIDgyLCA3OSwgODUsIDc4LCAxOTYsIDgzLCA4NSwgODIsIDcwLCA2OSwgODIsIDEyOCwgODMsIDg1LCA4MiwgNzAsIDY1LCAKLSAgICA2NywgMTk3LCA4MywgODUsIDgyLCA2OSwgMTI4LCA4MywgODUsIDgyLCA2NSwgNzgsIDcxLCAxMjgsIDgzLCA4NSwgODIsIAotICAgIDU3LCAxMjgsIDgzLCA4NSwgODIsIDEyOCwgODMsIDg1LCAyMTAsIDgzLCA4NSwgODAsIDgyLCA2NSwgNzYsIDczLCA3OCwgCi0gICAgNjksIDY1LCAyMTAsIDgzLCA4NSwgODAsIDY5LCA4MiwgODYsIDczLCA4MywgNjksIDEyOCwgODMsIDg1LCA4MCwgNjksIDgyLCAKLSAgICA4MywgNjksIDg0LCAxMjgsIDgzLCA4NSwgODAsIDY5LCA4MiwgODMsIDY5LCAyMTIsIDgzLCA4NSwgODAsIDY5LCA4MiwgODMsIAotICAgIDY3LCA4MiwgNzMsIDgwLCAyMTIsIDgzLCA4NSwgODAsIDY5LCA4MiwgNzMsIDc3LCA4MCwgNzksIDgzLCA2OSwgMTk2LCA4MywgCi0gICAgODUsIDgwLCA2OSwgODIsIDcwLCA3MywgODgsIDY5LCAxOTYsIDgzLCA4NSwgODAsIDY5LCAyMTAsIDgzLCA4NSwgODAsIAotICAgIDEyOCwgODMsIDg1LCA3OSwgODgsIDEyOCwgODMsIDg1LCA3OSwgODAsIDEyOCwgODMsIDg1LCA3OSwgMTI4LCA4MywgODUsIAotICAgIDc4LCA4MywgNjksIDIxMiwgODMsIDg1LCA3OCwgODIsIDczLCA4MywgNjksIDEyOCwgODMsIDg1LCA3OCwgODIsIDczLCA4MywgCi0gICAgMTk3LCA4MywgODUsIDc4LCA3MSwgNzYsIDY1LCA4MywgODMsIDY5LCA4MywgMTI4LCA4MywgODUsIDc4LCA3MSwgMTI4LCAKLSAgICA4MywgODUsIDc4LCA3MCwgNzYsIDc5LCA4NywgNjksIDgyLCAxMjgsIDgzLCA4NSwgNzgsIDY4LCA2NSwgNzgsIDY5LCA4MywgCi0gICAgMTk3LCA4MywgODUsIDc4LCAxMjgsIDgzLCA4NSwgMjA2LCA4MywgODUsIDc3LCA3NywgNjksIDgyLCAxMjgsIDgzLCA4NSwgCi0gICAgNzcsIDc3LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgODMsIDg1LCA3NywgNzcsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDgzLCAKLSAgICA4NSwgNzcsIDY1LCA4MywgNzIsIDEyOCwgODMsIDg1LCA3NywgMTI4LCA4MywgODUsIDc2LCA3MCwgODUsIDgyLCAxMjgsIAotICAgIDgzLCA4NSwgNzUsIDg1LCA3OCwgMTI4LCA4MywgODUsIDc1LCA4NSwgMjA2LCA4MywgODUsIDc1LCA4NSwgMTI4LCA4MywgCi0gICAgODUsIDc1LCAyMTMsIDgzLCA4NSwgNzMsIDg0LCA2NSwgNjYsIDc2LCA2OSwgMTI4LCA4MywgODUsIDczLCA4NCwgMTI4LCAKLSAgICA4MywgODUsIDcyLCA4NSwgODIsIDEyOCwgODMsIDg1LCA2OSwgMTI4LCA4MywgODUsIDY4LCA1MCwgMTI4LCA4MywgODUsIAotICAgIDY4LCAxMjgsIDgzLCA4NSwgNjcsIDY3LCA2OSwgNjksIDY4LCA4MywgMTI4LCA4MywgODUsIDY3LCA2NywgNjksIDY5LCA2OCwgCi0gICAgMjExLCA4MywgODUsIDY3LCA2NywgNjksIDY5LCA2OCwgMTI4LCA4MywgODUsIDY3LCA2NywgNjksIDY5LCAxOTYsIDgzLCAKLSAgICA4NSwgNjYsIDg1LCA3OCwgNzMsIDg0LCAxMjgsIDgzLCA4NSwgNjYsIDgzLCA4NCwgNzMsIDg0LCA4NSwgODQsIDczLCA3OSwgCi0gICAgMjA2LCA4MywgODUsIDY2LCA4MywgODQsIDczLCA4NCwgODUsIDg0LCA2OSwgMTI4LCA4MywgODUsIDY2LCA4MywgODQsIDczLCAKLSAgICA4NCwgODUsIDg0LCAxOTcsIDgzLCA4NSwgNjYsIDgzLCA2OSwgODQsIDEyOCwgODMsIDg1LCA2NiwgODMsIDY5LCAyMTIsIAotICAgIDgzLCA4NSwgNjYsIDgzLCA2NywgODIsIDczLCA4MCwgMjEyLCA4MywgODUsIDY2LCA4MCwgODUsIDc4LCA2NywgODQsIDczLCAKLSAgICA4MywgMTI4LCA4MywgODUsIDY2LCA3NiwgNzMsIDc4LCA2OSwgNjUsIDIxMCwgODMsIDg1LCA2NiwgNzYsIDczLCA3NywgNjUsIAotICAgIDg0LCA3MywgNzksIDc4LCAxMjgsIDgzLCA4NSwgNjYsIDc2LCA3MywgNzcsIDY1LCA4NCwgNjksIDQ1LCA1MSwgMTI4LCA4MywgCi0gICAgODUsIDY2LCA3NiwgNzMsIDc3LCA2NSwgODQsIDY5LCA0NSwgNTAsIDEyOCwgODMsIDg1LCA2NiwgNzYsIDczLCA3NywgNjUsIAotICAgIDg0LCA2OSwgMTI4LCA4MywgODUsIDY2LCA3NiwgNzMsIDc3LCA2NSwgODQsIDE5NywgODMsIDg1LCA2NiwgNzQsIDc5LCA3MywgCi0gICAgNzgsIDY5LCAxOTYsIDgzLCA4NSwgNjYsIDc0LCA2OSwgNjcsIDg0LCAxMjgsIDgzLCA4NSwgNjYsIDczLCA4NCwgNzksIAotICAgIDEyOCwgODMsIDg1LCA2NiwgNzEsIDgyLCA3OSwgODUsIDgwLCAxMjgsIDgzLCA4NSwgNjYsIDcxLCA4MiwgNzksIDg1LCAKLSAgICAyMDgsIDgzLCA4NSwgNjUsIDY5LCA4NCwgMTI4LCA4MywgODUsIDY1LCA2OSwgNzgsIDEyOCwgODMsIDg1LCA2NSwgNjksIAotICAgIDEyOCwgODMsIDg1LCA2NSwgMTI4LCA4MywgMjEzLCA4MywgODQsIDg3LCA2NSwgMTI4LCA4MywgODQsIDg1LCA2OCwgODksIAotICAgIDEyOCwgODMsIDg0LCA4NSwgNjcsIDc1LCA0NSwgNzksIDg1LCAyMTIsIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDgzLCAKLSAgICAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDIxMSwgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgNDUsIDU3LCAxMjgsIAotICAgIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDQ1LCA1NiwgMTI4LCA4MywgODQsIDgyLCA3OSwgNzUsIDY5LCA0NSwgNTUsIDEyOCwgCi0gICAgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgNDUsIDU0LCAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDQ1LCA1MywgMTI4LCAKLSAgICA4MywgODQsIDgyLCA3OSwgNzUsIDY5LCA0NSwgNTIsIDEyOCwgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgNDUsIDUxLCAxMjgsIAotICAgIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDQ1LCA1MCwgMTI4LCA4MywgODQsIDgyLCA3OSwgNzUsIDY5LCA0NSwgNDksIDQ5LCAKLSAgICAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDQ1LCA0OSwgNDgsIDEyOCwgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgNDUsIAotICAgIDQ5LCAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgMTk3LCA4MywgODQsIDgyLCA3MywgODAsIDY5LCAxMjgsIDgzLCA4NCwgCi0gICAgODIsIDczLCA3NSwgNjksIDg0LCA3MiwgODIsIDc5LCA4NSwgNzEsIDcyLCAxMjgsIDgzLCA4NCwgODIsIDczLCA2OCwgNjksIAotICAgIDEyOCwgODMsIDg0LCA4MiwgNzMsIDY3LCA4NCwgNzYsIDIxNywgODMsIDg0LCA4MiwgNjksIDg0LCA2NywgNzIsIDY5LCAKLSAgICAxOTYsIDgzLCA4NCwgODIsIDY5LCA4MywgMjExLCA4MywgODQsIDgyLCA2OSwgNzgsIDcxLCA4NCwgNzIsIDEyOCwgODMsIAotICAgIDg0LCA4MiwgNjksIDY1LCA3NywgNjksIDgyLCAxMjgsIDgzLCA4NCwgODIsIDY1LCA4NywgNjYsIDY5LCA4MiwgODIsIDg5LCAKLSAgICAxMjgsIDgzLCA4NCwgODIsIDY1LCA4NCwgODUsIDc3LCA0NSwgNTAsIDEyOCwgODMsIDg0LCA4MiwgNjUsIDg0LCA4NSwgNzcsIAotICAgIDEyOCwgODMsIDg0LCA4MiwgNjUsIDg0LCA4NSwgMjA1LCA4MywgODQsIDgyLCA2NSwgODQsIDczLCA2NSwgMjA2LCA4MywgCi0gICAgODQsIDgyLCA2NSwgNzMsIDc4LCA2OSwgODIsIDEyOCwgODMsIDg0LCA4MiwgNjUsIDczLCA3MSwgNzIsIDg0LCA3OCwgNjksIAotICAgIDgzLCA4MywgMTI4LCA4MywgODQsIDgyLCA2NSwgNzMsIDcxLCA3MiwgMjEyLCA4MywgODQsIDgyLCA2NSwgNzMsIDcwLCAKLSAgICAxMjgsIDgzLCA4NCwgODIsIDY1LCA3MSwgNzEsIDczLCA4MywgNzcsIDY1LCA4NCwgNjUsIDEyOCwgODMsIDg0LCA3OSwgODYsIAotICAgIDY5LCAxMjgsIDgzLCA4NCwgNzksIDgyLCA2OSwgMTI4LCA4MywgODQsIDc5LCA4MCwgODcsIDY1LCA4NCwgNjcsIDcyLCAKLSAgICAxMjgsIDgzLCA4NCwgNzksIDgwLCA4MCwgNzMsIDc4LCA3MSwgMTI4LCA4MywgODQsIDc5LCA4MCwgODAsIDY1LCA3MSwgNjksIAotICAgIDEyOCwgODMsIDg0LCA3OSwgODAsIDEyOCwgODMsIDg0LCA3OSwgMjA4LCA4MywgODQsIDc5LCA3OCwgNjksIDEyOCwgODMsIAotICAgIDg0LCA3OSwgNjcsIDc1LCAxMjgsIDgzLCA4NCwgNzMsIDc3LCA3NywgNjksIDEyOCwgODMsIDg0LCA3MywgNzYsIDIwNCwgCi0gICAgODMsIDg0LCA3MywgNzYsIDE5NywgODMsIDg0LCA3MywgNzEsIDc3LCA2NSwgMTI4LCA4MywgODQsIDY5LCA4MCwgMTI4LCAKLSAgICA4MywgODQsIDY5LCA3NywgMTI4LCA4MywgODQsIDY5LCAyMDUsIDgzLCA4NCwgNjksIDY1LCA3NywgNzMsIDc4LCAxOTksIAotICAgIDgzLCA4NCwgNjksIDY1LCA3NywgMTI4LCA4MywgODQsIDY5LCA2NSwgMjA1LCA4MywgODQsIDY1LCA4NiwgODIsIDc5LCA4NSwgCi0gICAgMTI4LCA4MywgODQsIDY1LCA4NiwgODIsIDc5LCA4MywgMTI4LCA4MywgODQsIDY1LCA4NiwgODIsIDc5LCAyMTEsIDgzLCAKLSAgICA4NCwgNjUsIDg1LCA4MiwgNzksIDgzLCAxMjgsIDgzLCA4NCwgNjUsIDg0LCA4NSwgMTk3LCA4MywgODQsIDY1LCA4NCwgNzMsIAotICAgIDc5LCA3OCwgMTI4LCA4MywgODQsIDY1LCA4NCwgNjksIDgyLCA4MywgMTI4LCA4MywgODQsIDY1LCA4MiwgMjEyLCA4MywgCi0gICAgODQsIDY1LCA4MiwgODMsIDEyOCwgODMsIDg0LCA2NSwgODIsIDgyLCA2OSwgMTk2LCA4MywgODQsIDY1LCA4MiwgNzUsIAotICAgIDEyOCwgODMsIDg0LCA2NSwgODIsIDEyOCwgODMsIDg0LCA2NSwgMjEwLCA4MywgODQsIDY1LCA3OCwgNjgsIDgzLCA4NCwgCi0gICAgNzMsIDc2LCA3NiwgMTI4LCA4MywgODQsIDY1LCA3OCwgNjgsIDY1LCA4MiwgMTk2LCA4MywgODQsIDY1LCA3OCwgNjgsIAotICAgIDEyOCwgODMsIDg0LCA2NSwgNzgsIDEyOCwgODMsIDg0LCA2NSwgNzYsIDc2LCA3MywgNzksIDc4LCAxMjgsIDgzLCA4NCwgCi0gICAgNjUsIDcwLCA3MCwgMTI4LCA4MywgODQsIDY1LCA3MCwgMTk4LCA4MywgODQsIDY1LCA2NywgNjcsIDY1LCA4NCwgNzksIAotICAgIDEyOCwgODMsIDg0LCA2NSwgNjcsIDY3LCA2NSwgODQsIDczLCA4MywgODMsIDczLCA3NywgNzksIDEyOCwgODMsIDg0LCA1MCwgCi0gICAgMTI4LCA4MywgODMsIDg5LCA4OCwgMTI4LCA4MywgODMsIDg5LCA4NCwgMTI4LCA4MywgODMsIDg5LCA4MiwgODgsIDEyOCwgCi0gICAgODMsIDgzLCA4OSwgODIsIDEyOCwgODMsIDgzLCA4OSwgODAsIDEyOCwgODMsIDgzLCA4OSwgMTI4LCA4MywgODMsIDg1LCAKLSAgICA4OCwgMTI4LCA4MywgODMsIDg1LCA4NCwgMTI4LCA4MywgODMsIDg1LCA4MCwgMTI4LCA4MywgODMsIDc5LCA4OCwgMTI4LCAKLSAgICA4MywgODMsIDc5LCA4NCwgMTI4LCA4MywgODMsIDc5LCA4MCwgMTI4LCA4MywgODMsIDc5LCAxMjgsIDgzLCA4MywgNzMsIAotICAgIDg4LCAxMjgsIDgzLCA4MywgNzMsIDg0LCAxMjgsIDgzLCA4MywgNzMsIDgwLCAxMjgsIDgzLCA4MywgNzMsIDY5LCA4OCwgCi0gICAgMTI4LCA4MywgODMsIDczLCA2OSwgODAsIDEyOCwgODMsIDgzLCA3MywgNjksIDEyOCwgODMsIDgzLCA3MywgMTI4LCA4MywgCi0gICAgODMsIDcyLCA2OSwgMTI4LCA4MywgODMsIDY5LCA4OCwgMTI4LCA4MywgODMsIDY5LCA4MCwgMTI4LCA4MywgODMsIDY5LCAKLSAgICA2OSwgMTI4LCA4MywgODMsIDY1LCA4OCwgMTI4LCA4MywgODMsIDY1LCA4NCwgMTI4LCA4MywgODMsIDY1LCA4MCwgMTI4LCAKLSAgICA4MywgODMsIDY1LCA3OCwgNzEsIDg5LCA2OSwgNzksIDgyLCA3MywgNzgsIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA4MywgCi0gICAgODMsIDY1LCA3OCwgNzEsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODMsIAotICAgIDgzLCA2NSwgNzgsIDcxLCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgODQsIDcyLCAKLSAgICA3MywgNjksIDg1LCA4NCwgNzIsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MywgNzMsIDc5LCA4MywgNDUsIDg0LCA3MywgCi0gICAgNzUsIDY5LCA4NSwgODQsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MywgNzMsIDc5LCA4MywgNDUsIDgwLCA3MywgNjksIAotICAgIDg1LCA4MCwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCAKLSAgICA3NSwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgODIsIAotICAgIDczLCA2OSwgODUsIDc2LCA0NSwgNzUsIDcyLCA3MywgNjksIDg1LCA3NSwgNzIsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCAKLSAgICA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODMsIAotICAgIDgzLCA2NSwgNzgsIDcxLCA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA3NywgNzMsIDY5LCAKLSAgICA4NSwgNzcsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIDgzLCA4MywgNjUsIAotICAgIDc4LCA3MSwgNzMsIDY5LCA4NSwgNzgsIDcxLCAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgNzIsIDczLCA2OSwgODUsIDcyLCAKLSAgICAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgNjcsIDczLCA2OSwgODUsIDY3LCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIAotICAgIDgzLCA4MywgNjUsIDc4LCA3MSwgNjcsIDczLCA2OSwgODUsIDY3LCAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgNjUsIDgyLCAKLSAgICA2NSwgNjksIDY1LCAxMjgsIDgzLCA4MywgNjUsIDY1LCAxMjgsIDgzLCA4MywgNjUsIDEyOCwgODMsIDgyLCAxMjgsIDgzLCAKLSAgICA4MSwgODUsIDczLCA4MywgMjAwLCA4MywgODEsIDg1LCA3MywgODIsIDgyLCA2OSwgMjA0LCA4MywgODEsIDg1LCA3MywgNzEsIAotICAgIDcxLCA3NiwgMTk3LCA4MywgODEsIDg1LCA2NSwgMjEyLCA4MywgODEsIDg1LCA2NSwgODIsIDY5LCA4MywgMTI4LCA4MywgCi0gICAgODEsIDg1LCA2NSwgODIsIDY5LCA2OCwgMTI4LCA4MywgODEsIDg1LCA2NSwgODIsIDY5LCAxMjgsIDgzLCA4MCwgODcsIDY1LCAKLSAgICAxMjgsIDgzLCA4MCwgODUsIDc4LCA3MSwgMjExLCA4MywgODAsIDgyLCA3OSwgODUsIDg0LCAxMjgsIDgzLCA4MCwgODIsIAotICAgIDczLCA3OCwgNzEsIDgzLCAxMjgsIDgzLCA4MCwgODIsIDczLCA3OCwgNzEsIDEyOCwgODMsIDgwLCA4MiwgNjksIDY3LCA3MiwgCi0gICAgNzEsIDY5LCA4MywgNjUsIDc4LCAxOTksIDgzLCA4MCwgNzksIDg1LCA4NCwgNzMsIDc4LCAxOTksIDgzLCA4MCwgNzksIDg0LCAKLSAgICAxMjgsIDgzLCA4MCwgNzksIDc5LCA3OCwgMTI4LCA4MywgODAsIDc2LCA3MywgODQsIDg0LCA3MywgNzgsIDE5OSwgODMsIAotICAgIDgwLCA3NiwgNjUsIDgzLCA3MiwgNzMsIDc4LCAxOTksIDgzLCA4MCwgNzMsIDgyLCA3MywgODQsIDg1LCAyMTEsIDgzLCA4MCwgCi0gICAgNzMsIDgyLCA3MywgODQsIDEyOCwgODMsIDgwLCA3MywgODIsIDczLCAyMTIsIDgzLCA4MCwgNzMsIDgyLCA2NSwgNzgsIDg0LCAKLSAgICAxMjgsIDgzLCA4MCwgNzMsIDgyLCA2NSwgNzYsIDEyOCwgODMsIDgwLCA3MywgODIsIDY1LCAyMDQsIDgzLCA4MCwgNzMsIAotICAgIDY4LCA2OSwgODIsIDIxNywgODMsIDgwLCA3MywgNjcsIDY5LCAxMjgsIDgzLCA4MCwgNzIsIDY5LCA4MiwgNzMsIDY3LCA2NSwgCi0gICAgMjA0LCA4MywgODAsIDY5LCA4MywgNzcsIDczLCA3NiwgMjA3LCA4MywgODAsIDY5LCA2OSwgNjgsIDY2LCA3OSwgNjUsIDg0LCAKLSAgICAxMjgsIDgzLCA4MCwgNjksIDY5LCA2NywgNzIsIDEyOCwgODMsIDgwLCA2OSwgNjksIDY3LCAyMDAsIDgzLCA4MCwgNjksIAotICAgIDY3LCA3MywgNjUsIDc2LCAxMjgsIDgzLCA4MCwgNjksIDY1LCA4MiwgMTI4LCA4MywgODAsIDY5LCA2NSwgNzUsIDY5LCA4MiwgCi0gICAgMTI4LCA4MywgODAsIDY5LCA2NSwgNzUsIDY5LCAyMTAsIDgzLCA4MCwgNjksIDY1LCA3NSwgNDUsIDc4LCA3OSwgNDUsIDY5LCAKLSAgICA4NiwgNzMsIDIwNCwgODMsIDgwLCA2NSwgODQsIDcyLCA3MywgMTI4LCA4MywgODAsIDY1LCA4MiwgNzUsIDc2LCA3MywgNzgsIAotICAgIDE5OSwgODMsIDgwLCA2NSwgODIsIDc1LCA3NiwgNjksIDgzLCAxMjgsIDgzLCA4MCwgNjUsIDgyLCA3NSwgNzYsIDY5LCA4MiwgCi0gICAgMTI4LCA4MywgODAsIDY1LCA4MiwgNzUsIDc2LCA2OSwgMTI4LCA4MywgODAsIDY1LCA3MSwgNzIsIDY5LCA4NCwgODQsIDczLCAKLSAgICAxMjgsIDgzLCA4MCwgNjUsIDY4LCA2OSwgODMsIDEyOCwgODMsIDgwLCA2NSwgNjgsIDE5NywgODMsIDgwLCA2NSwgNjcsIAotICAgIDczLCA3OCwgMTk5LCA4MywgODAsIDY1LCA2NywgMTk3LCA4MywgODAsIDEyOCwgODMsIDc5LCA4OSwgMTI4LCA4MywgNzksIAotICAgIDg3LCA3MywgNzYsIDIwNywgODMsIDc5LCA4NywgMTI4LCA4MywgNzksIDg1LCA4NCwgNzIsIDY5LCA4MiwgMjA2LCA4MywgCi0gICAgNzksIDg1LCA4NCwgNzIsIDQ1LCA4MywgNzYsIDY1LCA4NiwgNjksIDIxNywgODMsIDc5LCA4NSwgODQsIDIwMCwgODMsIDc5LCAKLSAgICA4NSwgODIsIDY3LCA2OSwgMTI4LCA4MywgNzksIDg1LCA3OCwgNjgsIDEyOCwgODMsIDc5LCA4NSwgNzgsIDE5NiwgODMsIAotICAgIDc5LCA4NSwgNzgsIDY1LCA4MCwgMTI4LCA4MywgNzksIDg1LCAxMjgsIDgzLCA3OSwgODMsIDEyOCwgODMsIDc5LCA4MSwgCi0gICAgMTI4LCA4MywgNzksIDc5LCAyMDYsIDgzLCA3OSwgNzksIDEyOCwgODMsIDc5LCA3OCwgNzQsIDY1LCA3NywgMTI4LCA4MywgCi0gICAgNzksIDc4LCA3MSwgMTI4LCA4MywgNzksIDc4LCAxMjgsIDgzLCA3OSwgNzcsIDEyOCwgODMsIDc5LCA3NiwgNzMsIDY4LCAKLSAgICA4NSwgODMsIDEyOCwgODMsIDc5LCA3NiwgNzMsIDY4LCA4NSwgMjExLCA4MywgNzksIDcxLCA2OCwgNzMsIDY1LCAyMDYsIAotICAgIDgzLCA3OSwgNzAsIDg0LCA4NywgNjUsIDgyLCA2OSwgNDUsIDcwLCA4NSwgNzgsIDY3LCA4NCwgNzMsIDc5LCAyMDYsIDgzLCAKLSAgICA3OSwgNzAsIDg0LCA3OCwgNjksIDgzLCA4MywgMTI4LCA4MywgNzksIDcwLCAyMTIsIDgzLCA3OSwgMTk4LCA4MywgNzksIAotICAgIDY3LCA3MywgNjksIDg0LCA4OSwgMTI4LCA4MywgNzksIDY3LCA2NywgNjksIDIxMCwgODMsIDc5LCA2NSwgODAsIDEyOCwgCi0gICAgODMsIDc5LCA2NSwgMTI4LCA4MywgMjA3LCA4MywgNzgsIDc5LCA4NywgNzcsIDY1LCA3OCwgMTI4LCA4MywgNzgsIDc5LCAKLSAgICA4NywgNzcsIDY1LCAyMDYsIDgzLCA3OCwgNzksIDg3LCA3MCwgNzYsIDY1LCA3NSwgNjksIDEyOCwgODMsIDc4LCA3OSwgODcsIAotICAgIDY2LCA3OSwgNjUsIDgyLCA2OCwgNjksIDgyLCAxMjgsIDgzLCA3OCwgNzksIDg3LCAxMjgsIDgzLCA3OCwgNzksIDg1LCA4NCwgCi0gICAgMTI4LCA4MywgNzgsIDc5LCA4NSwgMjEyLCA4MywgNzgsIDY1LCAyMDgsIDgzLCA3OCwgNjUsIDc1LCA2OSwgMTI4LCA4MywgCi0gICAgNzgsIDY1LCA3NSwgMTk3LCA4MywgNzgsIDY1LCA3MywgNzYsIDEyOCwgODMsIDc4LCAxOTMsIDgzLCA3NywgNzksIDc1LCAKLSAgICA3MywgNzgsIDE5OSwgODMsIDc3LCA3MywgODIsIDc1LCA3MywgNzgsIDE5OSwgODMsIDc3LCA3MywgNzYsIDczLCA3OCwgCi0gICAgMTk5LCA4MywgNzcsIDczLCA3NiwgNjksIDEyOCwgODMsIDc3LCA2OSwgNjUsIDgyLCAxMjgsIDgzLCA3NywgNjUsIDgzLCAKLSAgICAyMDAsIDgzLCA3NywgNjUsIDc2LCA3NiwgNjksIDIxMCwgODMsIDc3LCA2NSwgNzYsIDc2LCAxMjgsIDgzLCA3NiwgODUsIAotICAgIDgyLCAxMjgsIDgzLCA3NiwgNzksIDg3LCA3NiwgODksIDEyOCwgODMsIDc2LCA3OSwgMjE1LCA4MywgNzYsIDc5LCA4NiwgCi0gICAgNzksIDEyOCwgODMsIDc2LCA3OSwgMjEyLCA4MywgNzYsIDc5LCA4MCwgNzMsIDc4LCAxOTksIDgzLCA3NiwgNzksIDgwLCAKLSAgICA2OSwgMTI4LCA4MywgNzYsIDczLCA3OCwgNzEsIDEyOCwgODMsIDc2LCA3MywgNjgsIDczLCA3OCwgNzEsIDEyOCwgODMsIAotICAgIDc2LCA3MywgNjcsIDY5LCAxMjgsIDgzLCA3NiwgNzMsIDY3LCAxOTcsIDgzLCA3NiwgNjksIDY5LCA4MCwgMjE3LCA4MywgCi0gICAgNzYsIDY5LCA2OSwgODAsIDczLCA3OCwgMTk5LCA4MywgNzYsIDY1LCA4NiwgNzksIDc4LCA3MywgMTk1LCA4MywgNzYsIDY1LCAKLSAgICA4NiwgNjksIDEyOCwgODMsIDc2LCA2NSwgODMsIDcyLCAxMjgsIDgzLCA3NiwgNjUsIDgzLCAyMDAsIDgzLCA3NiwgNjUsIAotICAgIDc4LCA4NCwgNjksIDE5NiwgODMsIDc1LCA4NywgNjUsIDEyOCwgODMsIDc1LCA4NywgMTI4LCA4MywgNzUsIDg1LCA3NiwgCi0gICAgNzYsIDEyOCwgODMsIDc1LCA4NSwgNzYsIDIwNCwgODMsIDc1LCA3NiwgNzMsIDgyLCA3OSwgMjA2LCA4MywgNzUsIDczLCAKLSAgICA3OCwgMTI4LCA4MywgNzUsIDczLCA2OSwgODIsIDEyOCwgODMsIDc1LCAyMDEsIDgzLCA3NSwgNjksIDg3LCA2OSwgMTk2LCAKLSAgICA4MywgNzUsIDY1LCA4NCwgNjksIDEyOCwgODMsIDc1LCAxMjgsIDgzLCA3NCwgNjksIDEyOCwgODMsIDczLCA4OCwgODQsIAotICAgIDg5LCA0NSwgNzAsIDc5LCA4NSwgODIsIDg0LCAyMDAsIDgzLCA3MywgODgsIDg0LCA4OSwgMTI4LCA4MywgNzMsIDg4LCA4NCwgCi0gICAgMjE3LCA4MywgNzMsIDg4LCA4NCwgNzIsIDgzLCAxMjgsIDgzLCA3MywgODgsIDg0LCA3MiwgMjExLCA4MywgNzMsIDg4LCAKLSAgICA4NCwgNzIsIDEyOCwgODMsIDczLCA4OCwgODQsIDY5LCA2OSwgNzgsIDg0LCA3MiwgODMsIDEyOCwgODMsIDczLCA4OCwgODQsIAotICAgIDY5LCA2OSwgNzgsIDg0LCA3MiwgMTI4LCA4MywgNzMsIDg4LCA4NCwgNjksIDY5LCA3OCwgODQsIDIwMCwgODMsIDczLCA4OCwgCi0gICAgODQsIDY5LCA2OSwgNzgsIDEyOCwgODMsIDczLCA4OCwgODQsIDY5LCA2OSwgMjA2LCA4MywgNzMsIDg4LCA0NSwgODQsIDcyLCAKLSAgICA3MywgODIsIDg0LCA4OSwgMTI4LCA4MywgNzMsIDg4LCA0NSwgODMsIDg0LCA4MiwgNzMsIDc4LCAxOTksIDgzLCA3MywgODgsIAotICAgIDQ1LCA4MCwgNjksIDgyLCA0NSwgNjksIDIwNSwgODMsIDczLCA4OCwgNDUsIDc2LCA3MywgNzgsIDE5NywgODMsIDczLCAKLSAgICAyMTYsIDgzLCA3MywgODQsIDY5LCAxMjgsIDgzLCA3MywgODMsIDY1LCAxMjgsIDgzLCA3MywgODIsIDczLCA3OCwgNzEsIAotICAgIDg1LCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgNzIsIDEyOCwgODMsIDczLCA3OSwgCi0gICAgODMsIDQ1LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgODIsIAotICAgIDczLCA2OSwgODUsIDc2LCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgNzUsIDczLCAKLSAgICA4OSwgNjksIDc5LCA3NSwgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIDcyLCAxMjgsIAotICAgIDgzLCA3MywgNzksIDgzLCA0NSwgODAsIDY1LCA3OCwgODMsIDczLCA3OSwgODMsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCAKLSAgICA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA3NywgNzMsIDY5LCA4NSwgNzcsIDEyOCwgODMsIAotICAgIDczLCA3OSwgODMsIDQ1LCA3NSwgNzIsIDczLCA2OSwgODUsIDc1LCA3MiwgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIDc1LCAKLSAgICA2NSwgODAsIDg5LCA2OSwgNzksIDg1LCA3OCwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgCi0gICAgNzMsIDY5LCA4NSwgNzgsIDcxLCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgzLCAKLSAgICA3MywgNzksIDgzLCA0NSwgNjcsIDczLCA2OSwgODUsIDY3LCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgNjcsIDcyLCA3MywgCi0gICAgNjksIDg1LCA2NywgNzIsIDEyOCwgODMsIDczLCA3OSwgMjExLCA4MywgNzMsIDc4LCA3NSwgNzMsIDc4LCA3MSwgMTI4LCAKLSAgICA4MywgNzMsIDc4LCA3MSwgNzYsIDY5LCA0NSwgNzYsIDczLCA3OCwgMTk3LCA4MywgNzMsIDc4LCA3MSwgNzYsIDY5LCAxMjgsIAotICAgIDgzLCA3MywgNzgsIDcxLCA3NiwgMTk3LCA4MywgNzMsIDc4LCA3MSwgNjUsIDY1LCA4NCwgMTI4LCA4MywgNzMsIDc4LCAKLSAgICAxOTcsIDgzLCA3MywgNzgsIDY4LCA3MiwgMjAxLCA4MywgNzMsIDIwNiwgODMsIDczLCA3NywgODAsIDc2LCA3MywgNzAsIAotICAgIDczLCA2OSwgMTk2LCA4MywgNzMsIDc3LCA3MywgNzYsIDY1LCA4MiwgMTI4LCA4MywgNzMsIDc3LCA3MywgNzYsIDY1LCAKLSAgICAyMTAsIDgzLCA3MywgNzcsIDY1LCA3OCwgODMsIDczLCAyMTEsIDgzLCA3MywgNzcsIDY1LCA3NiwgODUsIDc4LCA3MSwgODUsIAotICAgIDIwNiwgODMsIDczLCA3NywgNjUsIDEyOCwgODMsIDczLCA3NiwgODYsIDY5LCA4MiwgMTI4LCA4MywgNzMsIDc2LCA3NSwgCi0gICAgMTI4LCA4MywgNzMsIDc2LCA3MywgODEsIDg1LCAxOTMsIDgzLCA3MywgNzYsIDcyLCA3OSwgODUsIDY5LCA4NCwgODQsIDY5LCAKLSAgICAxMjgsIDgzLCA3MywgNzYsIDcyLCA3OSwgODUsIDY5LCA4NCwgODQsIDE5NywgODMsIDczLCA3NiwgNjUsIDUxLCAxMjgsIAotICAgIDgzLCA3MywgNzUsIDczLCAxMjgsIDgzLCA3MywgNzUsIDUwLCAxMjgsIDgzLCA3MywgNzUsIDE3OCwgODMsIDczLCA3MywgCi0gICAgMTI4LCA4MywgNzMsIDcxLCA3OCwgODMsIDEyOCwgODMsIDczLCA3MSwgNzcsIDY1LCAxMjgsIDgzLCA3MywgNzEsIDc3LCAKLSAgICAxOTMsIDgzLCA3MywgNzEsIDY5LCAyMDQsIDgzLCA3MywgNzEsIDUyLCAxMjgsIDgzLCA3MywgNzEsIDE4MCwgODMsIDczLCAKLSAgICA3MSwgMTI4LCA4MywgNzMsIDY5LCA2OSwgMTI4LCA4MywgNzMsIDY4LCA2OSwgODcsIDY1LCA4OSwgMjExLCA4MywgNzMsIAotICAgIDY3LCA3NSwgNzgsIDY5LCA4MywgODMsIDEyOCwgODMsIDczLCA2NywgNzUsIDc2LCA2OSwgMTI4LCA4MywgNzMsIDY2LCAKLSAgICAxOTcsIDgzLCAyMDEsIDgzLCA3MiwgODksIDg4LCAxMjgsIDgzLCA3MiwgODksIDg0LCAxMjgsIDgzLCA3MiwgODksIDgyLCAKLSAgICA4OCwgMTI4LCA4MywgNzIsIDg5LCA4MiwgMTI4LCA4MywgNzIsIDg5LCA4MCwgMTI4LCA4MywgNzIsIDg5LCA2OSwgMTI4LCAKLSAgICA4MywgNzIsIDg5LCA2NSwgMTI4LCA4MywgNzIsIDg5LCAxMjgsIDgzLCA3MiwgODcsIDc5LCA4OSwgMTI4LCA4MywgNzIsIAotICAgIDg3LCA3OSwgNzksIDEyOCwgODMsIDcyLCA4NywgNzksIDEyOCwgODMsIDcyLCA4NywgNzMsIDczLCAxMjgsIDgzLCA3MiwgCi0gICAgODcsIDczLCAxMjgsIDgzLCA3MiwgODcsIDY5LCAxMjgsIDgzLCA3MiwgODcsIDY1LCA2NSwgMTI4LCA4MywgNzIsIDg3LCAKLSAgICA2NSwgMTI4LCA4MywgNzIsIDg1LCA4OCwgMTI4LCA4MywgNzIsIDg1LCA4NCwgMTI4LCA4MywgNzIsIDg1LCA4MiwgODgsIAotICAgIDEyOCwgODMsIDcyLCA4NSwgODIsIDEyOCwgODMsIDcyLCA4NSwgODAsIDEyOCwgODMsIDcyLCA4NSwgNzksIDg4LCAxMjgsIAotICAgIDgzLCA3MiwgODUsIDc5LCA4MCwgMTI4LCA4MywgNzIsIDg1LCA3OSwgMTI4LCA4MywgNzIsIDg1LCA3NywgMTI4LCA4MywgCi0gICAgNzIsIDg1LCA3MCwgNzAsIDc2LCAxOTcsIDgzLCA3MiwgODUsIDY5LCA4MSwgMTI4LCA4MywgNzIsIDg1LCA2OSwgNzgsIDgzLCAKLSAgICA3MiwgODUsIDY5LCA4NCwgMTI4LCA4MywgNzIsIDg1LCA2NiwgODUsIDgyLCAxMjgsIDgzLCA3MiwgODUsIDUwLCAxMjgsIAotICAgIDgzLCA3MiwgODUsIDE3OCwgODMsIDcyLCA4NSwgMTI4LCA4MywgNzIsIDIxMywgODMsIDcyLCA4NCwgNjUsIDgwLCA3MywgCi0gICAgNjcsIDEyOCwgODMsIDcyLCA4NCwgNjUsIDEyOCwgODMsIDcyLCA4MiwgNzMsIDc4LCA2OSwgMTI4LCA4MywgNzIsIDgyLCAKLSAgICA3MywgNzcsIDgwLCAxMjgsIDgzLCA3MiwgNzksIDg5LCAxMjgsIDgzLCA3MiwgNzksIDg4LCAxMjgsIDgzLCA3MiwgNzksIAotICAgIDg3LCA2OSwgODIsIDEyOCwgODMsIDcyLCA3OSwgODUsIDc2LCA2OCwgNjksIDgyLCA2OSwgMTk2LCA4MywgNzIsIDc5LCA4NCwgCi0gICAgMTI4LCA4MywgNzIsIDc5LCA4MiwgODQsIDgzLCAxMjgsIDgzLCA3MiwgNzksIDgyLCA4NCwgMjExLCA4MywgNzIsIDc5LCAKLSAgICA4MiwgODQsIDY5LCA3OCwgNjksIDgyLCAxMjgsIDgzLCA3MiwgNzksIDgyLCA4NCwgNjcsIDY1LCA3NSwgNjksIDEyOCwgODMsIAotICAgIDcyLCA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA4OSwgODIsIDEyOCwgODMsIDcyLCA3OSwgODIsIDg0LCAKLSAgICA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA4NCwgODksIDIxMCwgODMsIDcyLCA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgCi0gICAgNzEsIDQ1LCA4MywgNzksIDIwNCwgODMsIDcyLCA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA3OSwgODMsIAotICAgIDIxMSwgODMsIDcyLCA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA3OCwgNjUsIDg1LCAxOTYsIDgzLCA3MiwgCi0gICAgNzksIDgyLCA4NCwgNDUsIDg0LCA4NywgNzMsIDcxLCA0NSwgNzcsIDY1LCA2OCwgMjEwLCA4MywgNzIsIDc5LCA4MiwgODQsIAotICAgIDQ1LCA4NCwgODcsIDczLCA3MSwgNDUsIDcyLCA2NSwgNzEsIDY1LCA3NiwgMjA0LCA4MywgNzIsIDc5LCA4MiwgODQsIDQ1LCAKLSAgICA4NCwgODcsIDczLCA3MSwgNDUsIDY2LCA3NCwgNjUsIDgyLCA3NSwgNjUsIDIwNiwgODMsIDcyLCA3OSwgODIsIDg0LCA0NSwgCi0gICAgODQsIDg3LCA3MywgNzEsIDQ1LCA2NSwgMjEwLCA4MywgNzIsIDc5LCA4MiwgODQsIDEyOCwgODMsIDcyLCA3OSwgODIsIAotICAgIDIxMiwgODMsIDcyLCA3OSwgODEsIDEyOCwgODMsIDcyLCA3OSwgMjA5LCA4MywgNzIsIDc5LCA4MCwgMTI4LCA4MywgNzIsIAotICAgIDc5LCA3OSwgODQsIDczLCA3OCwgMTk5LCA4MywgNzIsIDc5LCA3OSwgODQsIDEyOCwgODMsIDcyLCA3OSwgNzksIDEyOCwgCi0gICAgODMsIDcyLCA3OSwgNzEsIDIwMSwgODMsIDcyLCA3OSwgMTk5LCA4MywgNzIsIDc5LCA2OSwgMTI4LCA4MywgNzIsIDc5LCAKLSAgICAxOTcsIDgzLCA3MiwgNzksIDY1LCAxMjgsIDgzLCA3MiwgNzksIDEyOCwgODMsIDcyLCA3MywgODksIDg5LCA2NSwgNjUsIAotICAgIDc2LCA2NSwgNjUsIDEyOCwgODMsIDcyLCA3MywgODQsIDY1LCAxMjgsIDgzLCA3MiwgNzMsIDg0LCAxOTMsIDgzLCA3MiwgCi0gICAgNzMsIDgyLCAyMTIsIDgzLCA3MiwgNzMsIDgyLCA2NSwgNjksIDEyOCwgODMsIDcyLCA3MywgODIsIDEyOCwgODMsIDcyLCAKLSAgICA3MywgMjEwLCA4MywgNzIsIDczLCA4MSwgMTI4LCA4MywgNzIsIDczLCA4MCwgMTI4LCA4MywgNzIsIDczLCA3OCwgODQsIAotICAgIDIwNywgODMsIDcyLCA3MywgNzgsIDczLCA3MSwgMTI4LCA4MywgNzIsIDczLCA3OCwgNjgsIDE5MywgODMsIDcyLCA3MywgCi0gICAgNzgsIDEyOCwgODMsIDcyLCA3MywgMjA2LCA4MywgNzIsIDczLCA3NywgNjUsIDEyOCwgODMsIDcyLCA3MywgNzcsIDE5MywgCi0gICAgODMsIDcyLCA3MywgNzcsIDEyOCwgODMsIDcyLCA3MywgMjA1LCA4MywgNzIsIDczLCA3MywgNzgsIDEyOCwgODMsIDcyLCAKLSAgICA3MywgNzMsIDEyOCwgODMsIDcyLCA3MywgNzAsIDIxMiwgODMsIDcyLCA3MywgNjksIDc2LCA2OCwgMTI4LCA4MywgNzIsIAotICAgIDczLCA2OCwgMTI4LCA4MywgNzIsIDczLCAxOTYsIDgzLCA3MiwgNzIsIDY1LCAxMjgsIDgzLCA3MiwgNzIsIDE5MywgODMsIAotICAgIDcyLCA2OSwgODgsIDEyOCwgODMsIDcyLCA2OSwgODYsIDY1LCAxMjgsIDgzLCA3MiwgNjksIDg1LCA4OCwgMTI4LCA4MywgCi0gICAgNzIsIDY5LCA4NSwgNzksIDgxLCAxMjgsIDgzLCA3MiwgNjksIDg1LCA2NSwgNjksIDgxLCA4NCwgODUsIDEyOCwgODMsIDcyLCAKLSAgICA2OSwgODUsIDY1LCA2OSwgODEsIDEyOCwgODMsIDcyLCA2OSwgODUsIDY1LCA2OSwgMTI4LCA4MywgNzIsIDY5LCA4NCwgCisgICAgNDksIDEyOCwgODMsIDg5LCA3NiwgNzksIDg0LCAyMDEsIDgzLCA4OSwgMTI4LCA4MywgODcsIDkwLCAxMjgsIDgzLCA4NywgCisgICAgODUsIDc4LCAxOTksIDgzLCA4NywgNzksIDgyLCA2OCwgODMsIDEyOCwgODMsIDg3LCA3OSwgODIsIDY4LCAxMjgsIDgzLCAKKyAgICA4NywgNzksIDc5LCAxMjgsIDgzLCA4NywgNzksIDEyOCwgODMsIDg3LCA3MywgODIsIDIwNCwgODMsIDg3LCA3MywgNzcsIAorICAgIDc3LCA3MywgNzgsIDcxLCAxMjgsIDgzLCA4NywgNzMsIDc3LCA3NywgNjksIDgyLCAxMjgsIDgzLCA4NywgNzMsIDczLCAKKyAgICAxMjgsIDgzLCA4NywgNzMsIDEyOCwgODMsIDg3LCA3MSwgMTI4LCA4MywgODcsIDY5LCA2OSwgODQsIDEyOCwgODMsIDg3LCAKKyAgICA2OSwgNjksIDIxMiwgODMsIDg3LCA2OSwgNjUsIDg0LCAxMjgsIDgzLCA4NywgNjksIDY1LCAyMTIsIDgzLCA4NywgNjUsIAorICAgIDgzLCAyMDAsIDgzLCA4NywgNjUsIDgwLCA4MCwgNzMsIDc4LCA3MSwgMTI4LCA4MywgODcsIDY1LCA2NSwgMTI4LCA4MywgCisgICAgODcsIDEyOCwgODMsIDg2LCA2NSwgODMsIDg0LCAyMDEsIDgzLCA4NiwgNjUsIDgyLCA3MywgODQsIDY1LCAxMjgsIDgzLCAKKyAgICA4NiwgNjUsIDgyLCA3MywgODQsIDE5MywgODMsIDg1LCA4OCwgMTI4LCA4MywgODUsIDg1LCAxMjgsIDgzLCA4NSwgODQsIAorICAgIDEyOCwgODMsIDg1LCA4MywgODAsIDY5LCA3OCwgODMsIDczLCA3OSwgMjA2LCA4MywgODUsIDgzLCA3MiwgNzMsIDEyOCwgCisgICAgODMsIDg1LCA4MiwgODksIDY1LCAxMjgsIDgzLCA4NSwgODIsIDg4LCAxMjgsIDgzLCA4NSwgODIsIDgyLCA3OSwgODUsIDc4LCAKKyAgICA2OCwgMTI4LCA4MywgODUsIDgyLCA4MiwgNzksIDg1LCA3OCwgMTk2LCA4MywgODUsIDgyLCA3MCwgNjksIDgyLCAxMjgsIAorICAgIDgzLCA4NSwgODIsIDcwLCA2NSwgNjcsIDE5NywgODMsIDg1LCA4MiwgNjksIDEyOCwgODMsIDg1LCA4MiwgNjUsIDc4LCA3MSwgCisgICAgMTI4LCA4MywgODUsIDgyLCA1NywgMTI4LCA4MywgODUsIDgyLCAxMjgsIDgzLCA4NSwgMjEwLCA4MywgODUsIDgwLCA4MiwgCisgICAgNjUsIDc2LCA3MywgNzgsIDY5LCA2NSwgMjEwLCA4MywgODUsIDgwLCA2OSwgODIsIDg2LCA3MywgODMsIDY5LCAxMjgsIDgzLCAKKyAgICA4NSwgODAsIDY5LCA4MiwgODMsIDY5LCA4NCwgMTI4LCA4MywgODUsIDgwLCA2OSwgODIsIDgzLCA2OSwgMjEyLCA4MywgODUsIAorICAgIDgwLCA2OSwgODIsIDgzLCA2NywgODIsIDczLCA4MCwgMjEyLCA4MywgODUsIDgwLCA2OSwgODIsIDczLCA3NywgODAsIDc5LCAKKyAgICA4MywgNjksIDE5NiwgODMsIDg1LCA4MCwgNjksIDgyLCA3MCwgNzMsIDg4LCA2OSwgMTk2LCA4MywgODUsIDgwLCA2OSwgCisgICAgMjEwLCA4MywgODUsIDgwLCAxMjgsIDgzLCA4NSwgNzksIDg4LCAxMjgsIDgzLCA4NSwgNzksIDgwLCAxMjgsIDgzLCA4NSwgCisgICAgNzksIDEyOCwgODMsIDg1LCA3OCwgODMsIDY5LCAyMTIsIDgzLCA4NSwgNzgsIDgyLCA3MywgODMsIDY5LCAxMjgsIDgzLCAKKyAgICA4NSwgNzgsIDgyLCA3MywgODMsIDE5NywgODMsIDg1LCA3OCwgNzEsIDc2LCA2NSwgODMsIDgzLCA2OSwgODMsIDEyOCwgODMsIAorICAgIDg1LCA3OCwgNzEsIDEyOCwgODMsIDg1LCA3OCwgNzAsIDc2LCA3OSwgODcsIDY5LCA4MiwgMTI4LCA4MywgODUsIDc4LCAKKyAgICAxMjgsIDgzLCA4NSwgMjA2LCA4MywgODUsIDc3LCA3NywgNjksIDgyLCAxMjgsIDgzLCA4NSwgNzcsIDc3LCA2NSwgODQsIAorICAgIDczLCA3OSwgNzgsIDEyOCwgODMsIDg1LCA3NywgNzcsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDgzLCA4NSwgNzcsIDY1LCA4MywgCisgICAgNzIsIDEyOCwgODMsIDg1LCA3NywgMTI4LCA4MywgODUsIDc2LCA3MCwgODUsIDgyLCAxMjgsIDgzLCA4NSwgNzUsIDg1LCAKKyAgICA3OCwgMTI4LCA4MywgODUsIDc1LCA4NSwgMjA2LCA4MywgODUsIDc1LCA4NSwgMTI4LCA4MywgODUsIDc1LCAyMTMsIDgzLCAKKyAgICA4NSwgNzMsIDg0LCA2NSwgNjYsIDc2LCA2OSwgMTI4LCA4MywgODUsIDczLCA4NCwgMTI4LCA4MywgODUsIDcyLCA4NSwgODIsIAorICAgIDEyOCwgODMsIDg1LCA2OSwgMTI4LCA4MywgODUsIDY4LCA1MCwgMTI4LCA4MywgODUsIDY4LCAxMjgsIDgzLCA4NSwgNjcsIAorICAgIDY3LCA2OSwgNjksIDY4LCA4MywgMTI4LCA4MywgODUsIDY3LCA2NywgNjksIDY5LCA2OCwgMjExLCA4MywgODUsIDY3LCA2NywgCisgICAgNjksIDY5LCA2OCwgMTI4LCA4MywgODUsIDY3LCA2NywgNjksIDY5LCAxOTYsIDgzLCA4NSwgNjYsIDg1LCA3OCwgNzMsIDg0LCAKKyAgICAxMjgsIDgzLCA4NSwgNjYsIDgzLCA4NCwgNzMsIDg0LCA4NSwgODQsIDczLCA3OSwgMjA2LCA4MywgODUsIDY2LCA4MywgODQsIAorICAgIDczLCA4NCwgODUsIDg0LCA2OSwgMTI4LCA4MywgODUsIDY2LCA4MywgODQsIDczLCA4NCwgODUsIDg0LCAxOTcsIDgzLCA4NSwgCisgICAgNjYsIDgzLCA2OSwgODQsIDEyOCwgODMsIDg1LCA2NiwgODMsIDY5LCAyMTIsIDgzLCA4NSwgNjYsIDgzLCA2NywgODIsIDczLCAKKyAgICA4MCwgMjEyLCA4MywgODUsIDY2LCA4MCwgODUsIDc4LCA2NywgODQsIDczLCA4MywgMTI4LCA4MywgODUsIDY2LCA3NiwgNzMsIAorICAgIDc4LCA2OSwgNjUsIDIxMCwgODMsIDg1LCA2NiwgNzYsIDczLCA3NywgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgzLCA4NSwgCisgICAgNjYsIDc2LCA3MywgNzcsIDY1LCA4NCwgNjksIDQ1LCA1MSwgMTI4LCA4MywgODUsIDY2LCA3NiwgNzMsIDc3LCA2NSwgODQsIAorICAgIDY5LCA0NSwgNTAsIDEyOCwgODMsIDg1LCA2NiwgNzYsIDczLCA3NywgNjUsIDg0LCA2OSwgMTI4LCA4MywgODUsIDY2LCA3NiwgCisgICAgNzMsIDc3LCA2NSwgODQsIDE5NywgODMsIDg1LCA2NiwgNzQsIDc5LCA3MywgNzgsIDY5LCAxOTYsIDgzLCA4NSwgNjYsIDc0LCAKKyAgICA2OSwgNjcsIDg0LCAxMjgsIDgzLCA4NSwgNjYsIDczLCA4NCwgNzksIDEyOCwgODMsIDg1LCA2NiwgNzEsIDgyLCA3OSwgODUsIAorICAgIDgwLCAxMjgsIDgzLCA4NSwgNjYsIDcxLCA4MiwgNzksIDg1LCAyMDgsIDgzLCA4NSwgNjYsIDEyOCwgODMsIDg1LCA2NSwgCisgICAgNjksIDg0LCAxMjgsIDgzLCA4NSwgNjUsIDY5LCA3OCwgMTI4LCA4MywgODUsIDY1LCA2OSwgMTI4LCA4MywgODUsIDY1LCAKKyAgICAxMjgsIDgzLCAyMTMsIDgzLCA4NCwgODgsIDEyOCwgODMsIDg0LCA4NywgNjUsIDEyOCwgODMsIDg0LCA4NSwgNjgsIDg5LCAKKyAgICAxMjgsIDgzLCA4NCwgODUsIDY3LCA3NSwgNDUsIDc5LCA4NSwgMjEyLCA4MywgODQsIDgzLCAxMjgsIDgzLCA4NCwgODIsIAorICAgIDc5LCA3NSwgNjksIDgzLCAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDIxMSwgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgCisgICAgNDUsIDU3LCAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDQ1LCA1NiwgMTI4LCA4MywgODQsIDgyLCA3OSwgNzUsIDY5LCAKKyAgICA0NSwgNTUsIDEyOCwgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgNDUsIDU0LCAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIAorICAgIDQ1LCA1MywgMTI4LCA4MywgODQsIDgyLCA3OSwgNzUsIDY5LCA0NSwgNTIsIDEyOCwgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgCisgICAgNDUsIDUxLCAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDQ1LCA1MCwgMTI4LCA4MywgODQsIDgyLCA3OSwgNzUsIDY5LCAKKyAgICA0NSwgNDksIDQ5LCAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgNjksIDQ1LCA0OSwgNDgsIDEyOCwgODMsIDg0LCA4MiwgNzksIAorICAgIDc1LCA2OSwgNDUsIDQ5LCAxMjgsIDgzLCA4NCwgODIsIDc5LCA3NSwgMTk3LCA4MywgODQsIDgyLCA3MywgODAsIDY5LCAKKyAgICAxMjgsIDgzLCA4NCwgODIsIDczLCA3OCwgNzEsIDEyOCwgODMsIDg0LCA4MiwgNzMsIDc4LCAxOTksIDgzLCA4NCwgODIsIAorICAgIDczLCA3NSwgNjksIDg0LCA3MiwgODIsIDc5LCA4NSwgNzEsIDcyLCAxMjgsIDgzLCA4NCwgODIsIDczLCA2OCwgNjksIDEyOCwgCisgICAgODMsIDg0LCA4MiwgNzMsIDY3LCA4NCwgNzYsIDIxNywgODMsIDg0LCA4MiwgNjksIDg0LCA2NywgNzIsIDY5LCAxOTYsIDgzLCAKKyAgICA4NCwgODIsIDY5LCA4MywgMjExLCA4MywgODQsIDgyLCA2OSwgNzgsIDcxLCA4NCwgNzIsIDEyOCwgODMsIDg0LCA4MiwgNjksIAorICAgIDY1LCA3NywgNjksIDgyLCAxMjgsIDgzLCA4NCwgODIsIDY1LCA4NywgNjYsIDY5LCA4MiwgODIsIDg5LCAxMjgsIDgzLCA4NCwgCisgICAgODIsIDY1LCA4NCwgODUsIDc3LCA0NSwgNTAsIDEyOCwgODMsIDg0LCA4MiwgNjUsIDg0LCA4NSwgNzcsIDEyOCwgODMsIDg0LCAKKyAgICA4MiwgNjUsIDg0LCA4NSwgMjA1LCA4MywgODQsIDgyLCA2NSwgODQsIDczLCA2NSwgMjA2LCA4MywgODQsIDgyLCA2NSwgNzMsIAorICAgIDc4LCA2OSwgODIsIDEyOCwgODMsIDg0LCA4MiwgNjUsIDczLCA3MSwgNzIsIDg0LCA3OCwgNjksIDgzLCA4MywgMTI4LCA4MywgCisgICAgODQsIDgyLCA2NSwgNzMsIDcxLCA3MiwgMjEyLCA4MywgODQsIDgyLCA2NSwgNzMsIDcwLCAxMjgsIDgzLCA4NCwgODIsIDY1LCAKKyAgICA3MSwgNzEsIDczLCA4MywgNzcsIDY1LCA4NCwgNjUsIDEyOCwgODMsIDg0LCA3OSwgODYsIDY5LCAxMjgsIDgzLCA4NCwgNzksIAorICAgIDgyLCA2OSwgMTI4LCA4MywgODQsIDc5LCA4MCwgODcsIDY1LCA4NCwgNjcsIDcyLCAxMjgsIDgzLCA4NCwgNzksIDgwLCA4MCwgCisgICAgNzMsIDc4LCA3MSwgMTI4LCA4MywgODQsIDc5LCA4MCwgODAsIDY1LCA3MSwgNjksIDEyOCwgODMsIDg0LCA3OSwgODAsIAorICAgIDEyOCwgODMsIDg0LCA3OSwgMjA4LCA4MywgODQsIDc5LCA3OCwgNjksIDEyOCwgODMsIDg0LCA3OSwgNjcsIDc1LCAxMjgsIAorICAgIDgzLCA4NCwgNzMsIDc3LCA3NywgNjksIDEyOCwgODMsIDg0LCA3MywgNzYsIDIwNCwgODMsIDg0LCA3MywgNzYsIDE5NywgCisgICAgODMsIDg0LCA3MywgNzEsIDc3LCA2NSwgMTI4LCA4MywgODQsIDY5LCA4MCwgMTI4LCA4MywgODQsIDY5LCA3NywgMTI4LCAKKyAgICA4MywgODQsIDY5LCA2NSwgNzcsIDczLCA3OCwgMTk5LCA4MywgODQsIDY5LCA2NSwgNzcsIDEyOCwgODMsIDg0LCA2OSwgNjUsIAorICAgIDIwNSwgODMsIDg0LCA2NSwgODYsIDgyLCA3OSwgODUsIDEyOCwgODMsIDg0LCA2NSwgODYsIDgyLCA3OSwgODMsIDEyOCwgCisgICAgODMsIDg0LCA2NSwgODYsIDgyLCA3OSwgMjExLCA4MywgODQsIDY1LCA4NSwgODIsIDc5LCA4MywgMTI4LCA4MywgODQsIDY1LCAKKyAgICA4NCwgODUsIDE5NywgODMsIDg0LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgODMsIDg0LCA2NSwgODQsIDY5LCA4MiwgODMsIAorICAgIDEyOCwgODMsIDg0LCA2NSwgODQsIDY5LCAxMjgsIDgzLCA4NCwgNjUsIDgyLCAyMTIsIDgzLCA4NCwgNjUsIDgyLCA4MywgCisgICAgMTI4LCA4MywgODQsIDY1LCA4MiwgODIsIDY5LCAxOTYsIDgzLCA4NCwgNjUsIDgyLCA3NSwgMTI4LCA4MywgODQsIDY1LCAKKyAgICA4MiwgMTI4LCA4MywgODQsIDY1LCAyMTAsIDgzLCA4NCwgNjUsIDc4LCA2OCwgODMsIDg0LCA3MywgNzYsIDc2LCAxMjgsIAorICAgIDgzLCA4NCwgNjUsIDc4LCA2OCwgNjUsIDgyLCAxOTYsIDgzLCA4NCwgNjUsIDc4LCA2OCwgMTI4LCA4MywgODQsIDY1LCA3OCwgCisgICAgMTI4LCA4MywgODQsIDY1LCA3NiwgNzYsIDczLCA3OSwgNzgsIDEyOCwgODMsIDg0LCA2NSwgNzAsIDcwLCAxMjgsIDgzLCAKKyAgICA4NCwgNjUsIDcwLCAxOTgsIDgzLCA4NCwgNjUsIDY3LCA2NywgNjUsIDg0LCA3OSwgMTI4LCA4MywgODQsIDY1LCA2NywgNjcsIAorICAgIDY1LCA4NCwgNzMsIDgzLCA4MywgNzMsIDc3LCA3OSwgMTI4LCA4MywgODQsIDUwLCAxMjgsIDgzLCA4MywgODksIDg4LCAKKyAgICAxMjgsIDgzLCA4MywgODksIDg0LCAxMjgsIDgzLCA4MywgODksIDgyLCA4OCwgMTI4LCA4MywgODMsIDg5LCA4MiwgMTI4LCAKKyAgICA4MywgODMsIDg5LCA4MCwgMTI4LCA4MywgODMsIDg5LCAxMjgsIDgzLCA4MywgODUsIDg4LCAxMjgsIDgzLCA4MywgODUsIAorICAgIDg1LCAxMjgsIDgzLCA4MywgODUsIDg0LCAxMjgsIDgzLCA4MywgODUsIDgwLCAxMjgsIDgzLCA4MywgNzksIDg4LCAxMjgsIAorICAgIDgzLCA4MywgNzksIDg0LCAxMjgsIDgzLCA4MywgNzksIDgwLCAxMjgsIDgzLCA4MywgNzksIDc5LCAxMjgsIDgzLCA4MywgCisgICAgNzksIDEyOCwgODMsIDgzLCA3MywgODgsIDEyOCwgODMsIDgzLCA3MywgODQsIDEyOCwgODMsIDgzLCA3MywgODAsIDEyOCwgCisgICAgODMsIDgzLCA3MywgNzMsIDEyOCwgODMsIDgzLCA3MywgNjksIDg4LCAxMjgsIDgzLCA4MywgNzMsIDY5LCA4MCwgMTI4LCAKKyAgICA4MywgODMsIDczLCA2OSwgMTI4LCA4MywgODMsIDczLCAxMjgsIDgzLCA4MywgNzIsIDY5LCAxMjgsIDgzLCA4MywgNjksIAorICAgIDg4LCAxMjgsIDgzLCA4MywgNjksIDgwLCAxMjgsIDgzLCA4MywgNjksIDY5LCAxMjgsIDgzLCA4MywgNjUsIDg4LCAxMjgsIAorICAgIDgzLCA4MywgNjUsIDg1LCAxMjgsIDgzLCA4MywgNjUsIDg0LCAxMjgsIDgzLCA4MywgNjUsIDgwLCAxMjgsIDgzLCA4MywgCisgICAgNjUsIDc4LCA3MSwgODksIDY5LCA3OSwgODIsIDczLCA3OCwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgzLCA4MywgNjUsIAorICAgIDc4LCA3MSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA4MywgODMsIDY1LCAKKyAgICA3OCwgNzEsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4NCwgNzIsIDczLCA2OSwgCisgICAgODUsIDg0LCA3MiwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCA0NSwgODQsIDczLCA3NSwgNjksIAorICAgIDg1LCA4NCwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAKKyAgICAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIAorICAgIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MiwgNzMsIDY5LCAKKyAgICA4NSwgNzYsIDQ1LCA3NSwgNzIsIDczLCA2OSwgODUsIDc1LCA3MiwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgyLCA3MywgCisgICAgNjksIDg1LCA3NiwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA4MywgODMsIDY1LCAKKyAgICA3OCwgNzEsIDc4LCA3MywgNjksIDg1LCA3OCwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDc3LCA3MywgNjksIDg1LCA3NywgCisgICAgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCAKKyAgICA3MywgNjksIDg1LCA3OCwgNzEsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgODMsIAorICAgIDgzLCA2NSwgNzgsIDcxLCA2NywgNzMsIDY5LCA4NSwgNjcsIDQ1LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgODMsIDgzLCAKKyAgICA2NSwgNzgsIDcxLCA2NywgNzMsIDY5LCA4NSwgNjcsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA2NSwgODIsIDY1LCA2OSwgCisgICAgNjUsIDEyOCwgODMsIDgzLCA2NSwgNzMsIDEyOCwgODMsIDgzLCA2NSwgNjUsIDEyOCwgODMsIDgzLCA1MSwgMTI4LCA4MywgCisgICAgODMsIDUwLCAxMjgsIDgzLCA4MiwgMTI4LCA4MywgODEsIDg1LCA3MywgODMsIDIwMCwgODMsIDgxLCA4NSwgNzMsIDgyLCAKKyAgICA4MiwgNjksIDIwNCwgODMsIDgxLCA4NSwgNzMsIDcxLCA3MSwgNzYsIDE5NywgODMsIDgxLCA4NSwgNjUsIDIxMiwgODMsIAorICAgIDgxLCA4NSwgNjUsIDgyLCA2OSwgODMsIDEyOCwgODMsIDgxLCA4NSwgNjUsIDgyLCA2OSwgNjgsIDEyOCwgODMsIDgxLCA4NSwgCisgICAgNjUsIDgyLCA2OSwgMTI4LCA4MywgODAsIDg3LCA2NSwgMTI4LCA4MywgODAsIDg1LCA3OCwgNzEsIDIxMSwgODMsIDgwLCAKKyAgICA4MiwgNzksIDg1LCA4NCwgMTI4LCA4MywgODAsIDgyLCA3MywgNzgsIDcxLCA4MywgMTI4LCA4MywgODAsIDgyLCA3MywgNzgsIAorICAgIDcxLCAxMjgsIDgzLCA4MCwgODIsIDY5LCA2NywgNzIsIDcxLCA2OSwgODMsIDY1LCA3OCwgMTk5LCA4MywgODAsIDc5LCA4NSwgCisgICAgODQsIDczLCA3OCwgMTk5LCA4MywgODAsIDc5LCA4NCwgMTI4LCA4MywgODAsIDc5LCA3OSwgNzgsIDEyOCwgODMsIDgwLCAKKyAgICA3NiwgNzMsIDg0LCA4NCwgNzMsIDc4LCAxOTksIDgzLCA4MCwgNzYsIDY1LCA4MywgNzIsIDczLCA3OCwgMTk5LCA4MywgODAsIAorICAgIDczLCA4MiwgNzMsIDg0LCA4NSwgMjExLCA4MywgODAsIDczLCA4MiwgNzMsIDg0LCAxMjgsIDgzLCA4MCwgNzMsIDgyLCA3MywgCisgICAgMjEyLCA4MywgODAsIDczLCA4MiwgNjUsIDc4LCA4NCwgMTI4LCA4MywgODAsIDczLCA4MiwgNjUsIDc2LCAxMjgsIDgzLCAKKyAgICA4MCwgNzMsIDgyLCA2NSwgMjA0LCA4MywgODAsIDczLCA2OCwgNjksIDgyLCAyMTcsIDgzLCA4MCwgNzMsIDY3LCA2OSwgCisgICAgMTI4LCA4MywgODAsIDcyLCA2OSwgODIsIDczLCA2NywgNjUsIDIwNCwgODMsIDgwLCA2OSwgODMsIDc3LCA3MywgNzYsIAorICAgIDIwNywgODMsIDgwLCA2OSwgNjksIDY4LCA2NiwgNzksIDY1LCA4NCwgMTI4LCA4MywgODAsIDY5LCA2OSwgNjcsIDcyLCAKKyAgICAxMjgsIDgzLCA4MCwgNjksIDY5LCA2NywgMjAwLCA4MywgODAsIDY5LCA2NywgNzMsIDY1LCA3NiwgMTI4LCA4MywgODAsIAorICAgIDY5LCA2NSwgODIsIDEyOCwgODMsIDgwLCA2OSwgNjUsIDc1LCA2OSwgODIsIDEyOCwgODMsIDgwLCA2OSwgNjUsIDc1LCA2OSwgCisgICAgMjEwLCA4MywgODAsIDY5LCA2NSwgNzUsIDQ1LCA3OCwgNzksIDQ1LCA2OSwgODYsIDczLCAyMDQsIDgzLCA4MCwgNjUsIDg0LCAKKyAgICA3MiwgNzMsIDEyOCwgODMsIDgwLCA2NSwgODIsIDc1LCA3NiwgNzMsIDc4LCAxOTksIDgzLCA4MCwgNjUsIDgyLCA3NSwgNzYsIAorICAgIDY5LCA4MywgMTI4LCA4MywgODAsIDY1LCA4MiwgNzUsIDc2LCA2OSwgODIsIDEyOCwgODMsIDgwLCA2NSwgODIsIDc1LCA3NiwgCisgICAgNjksIDEyOCwgODMsIDgwLCA2NSwgNzEsIDcyLCA2OSwgODQsIDg0LCA3MywgMTI4LCA4MywgODAsIDY1LCA2OCwgNjksIDgzLCAKKyAgICAxMjgsIDgzLCA4MCwgNjUsIDY4LCAxOTcsIDgzLCA4MCwgNjUsIDY3LCA3MywgNzgsIDE5OSwgODMsIDgwLCA2NSwgNjcsIAorICAgIDE5NywgODMsIDgwLCA2NSwgMTI4LCA4MywgNzksIDg5LCAxMjgsIDgzLCA3OSwgODcsIDczLCA3NiwgMjA3LCA4MywgNzksIAorICAgIDg3LCAxMjgsIDgzLCA3OSwgODUsIDg0LCA3MiwgNjksIDgyLCAyMDYsIDgzLCA3OSwgODUsIDg0LCA3MiwgNDUsIDgzLCA3NiwgCisgICAgNjUsIDg2LCA2OSwgMjE3LCA4MywgNzksIDg1LCA4NCwgMjAwLCA4MywgNzksIDg1LCA4MiwgNjcsIDY5LCAxMjgsIDgzLCAKKyAgICA3OSwgODUsIDc4LCA2OCwgMTI4LCA4MywgNzksIDg1LCA3OCwgMTk2LCA4MywgNzksIDg1LCA3OCwgNjUsIDgwLCAxMjgsIAorICAgIDgzLCA3OSwgODUsIDEyOCwgODMsIDc5LCA4MywgMTI4LCA4MywgNzksIDgyLCAxOTMsIDgzLCA3OSwgODEsIDEyOCwgODMsIAorICAgIDc5LCA3OSwgMjA2LCA4MywgNzksIDc4LCA3NCwgNjUsIDc3LCAxMjgsIDgzLCA3OSwgNzgsIDcxLCAxMjgsIDgzLCA3OSwgCisgICAgNzgsIDEyOCwgODMsIDc5LCA3NywgODAsIDY5LCA3OCwgMTk5LCA4MywgNzksIDc3LCAxMjgsIDgzLCA3OSwgNzYsIDczLCAKKyAgICA2OCwgODUsIDgzLCAxMjgsIDgzLCA3OSwgNzYsIDczLCA2OCwgODUsIDIxMSwgODMsIDc5LCA3MiwgMTI4LCA4MywgNzksIAorICAgIDcxLCA2OCwgNzMsIDY1LCAyMDYsIDgzLCA3OSwgNzAsIDg0LCA4NywgNjUsIDgyLCA2OSwgNDUsIDcwLCA4NSwgNzgsIDY3LCAKKyAgICA4NCwgNzMsIDc5LCAyMDYsIDgzLCA3OSwgNzAsIDg0LCA3OCwgNjksIDgzLCA4MywgMTI4LCA4MywgNzksIDcwLCAyMTIsIAorICAgIDgzLCA3OSwgMTk4LCA4MywgNzksIDY3LCA3MywgNjksIDg0LCA4OSwgMTI4LCA4MywgNzksIDY3LCA2NywgNjksIDIxMCwgCisgICAgODMsIDc5LCA2NSwgODAsIDEyOCwgODMsIDc5LCA2NSwgMTI4LCA4MywgMjA3LCA4MywgNzgsIDc5LCA4NywgNzcsIDY1LCAKKyAgICA3OCwgMTI4LCA4MywgNzgsIDc5LCA4NywgNzcsIDY1LCAyMDYsIDgzLCA3OCwgNzksIDg3LCA3MCwgNzYsIDY1LCA3NSwgNjksIAorICAgIDEyOCwgODMsIDc4LCA3OSwgODcsIDY2LCA3OSwgNjUsIDgyLCA2OCwgNjksIDgyLCAxMjgsIDgzLCA3OCwgNzksIDg3LCAKKyAgICAxMjgsIDgzLCA3OCwgNzksIDg1LCA4NCwgMTI4LCA4MywgNzgsIDc5LCA4NSwgMjEyLCA4MywgNzgsIDY1LCAyMDgsIDgzLCAKKyAgICA3OCwgNjUsIDc1LCA2OSwgMTI4LCA4MywgNzgsIDY1LCA3NSwgMTk3LCA4MywgNzgsIDY1LCA3MywgNzYsIDEyOCwgODMsIAorICAgIDc4LCAxOTMsIDgzLCA3NywgNzksIDc1LCA3MywgNzgsIDE5OSwgODMsIDc3LCA3MywgODIsIDc1LCA3MywgNzgsIDE5OSwgCisgICAgODMsIDc3LCA3MywgNzYsIDczLCA3OCwgMTk5LCA4MywgNzcsIDczLCA3NiwgNjksIDEyOCwgODMsIDc3LCA2OSwgNjUsIDgyLCAKKyAgICAxMjgsIDgzLCA3NywgNjUsIDgzLCAyMDAsIDgzLCA3NywgNjUsIDc2LCA3NiwgNjksIDIxMCwgODMsIDc3LCA2NSwgNzYsIAorICAgIDc2LCAxMjgsIDgzLCA3NiwgODUsIDgyLCAxMjgsIDgzLCA3NiwgNzksIDg3LCA3NiwgODksIDEyOCwgODMsIDc2LCA3OSwgCisgICAgMjE1LCA4MywgNzYsIDc5LCA4NiwgNzksIDEyOCwgODMsIDc2LCA3OSwgMjEyLCA4MywgNzYsIDc5LCA4MCwgNzMsIDc4LCAKKyAgICAxOTksIDgzLCA3NiwgNzksIDgwLCA2OSwgMTI4LCA4MywgNzYsIDczLCA3OCwgNzEsIDEyOCwgODMsIDc2LCA3MywgNjgsIAorICAgIDczLCA3OCwgNzEsIDEyOCwgODMsIDc2LCA3MywgNjcsIDY5LCAxMjgsIDgzLCA3NiwgNzMsIDY3LCAxOTcsIDgzLCA3NiwgCisgICAgNjksIDY5LCA4MCwgMjE3LCA4MywgNzYsIDY5LCA2OSwgODAsIDczLCA3OCwgMTk5LCA4MywgNzYsIDY1LCA4NiwgNzksIDc4LCAKKyAgICA3MywgMTk1LCA4MywgNzYsIDY1LCA4NiwgNjksIDEyOCwgODMsIDc2LCA2NSwgODMsIDcyLCAxMjgsIDgzLCA3NiwgNjUsIAorICAgIDgzLCAyMDAsIDgzLCA3NiwgNjUsIDc4LCA4NCwgNjksIDE5NiwgODMsIDc1LCA4NywgNjUsIDEyOCwgODMsIDc1LCA4NywgCisgICAgMTI4LCA4MywgNzUsIDg1LCA3NiwgNzYsIDEyOCwgODMsIDc1LCA4NSwgNzYsIDIwNCwgODMsIDc1LCA3NiwgNzMsIDgyLCAKKyAgICA3OSwgMjA2LCA4MywgNzUsIDczLCA3OCwgMTI4LCA4MywgNzUsIDczLCA2OSwgODIsIDEyOCwgODMsIDc1LCAyMDEsIDgzLCAKKyAgICA3NSwgNjksIDg3LCA2OSwgMTk2LCA4MywgNzUsIDY1LCA4NCwgNjksIDEyOCwgODMsIDc1LCAxMjgsIDgzLCA3NCwgNjksIAorICAgIDEyOCwgODMsIDczLCA4OCwgODQsIDg5LCA0NSwgNzAsIDc5LCA4NSwgODIsIDg0LCAyMDAsIDgzLCA3MywgODgsIDg0LCA4OSwgCisgICAgMTI4LCA4MywgNzMsIDg4LCA4NCwgMjE3LCA4MywgNzMsIDg4LCA4NCwgNzIsIDgzLCAxMjgsIDgzLCA3MywgODgsIDg0LCAKKyAgICA3MiwgMjExLCA4MywgNzMsIDg4LCA4NCwgNzIsIDEyOCwgODMsIDczLCA4OCwgODQsIDY5LCA2OSwgNzgsIDg0LCA3MiwgODMsIAorICAgIDEyOCwgODMsIDczLCA4OCwgODQsIDY5LCA2OSwgNzgsIDg0LCA3MiwgMTI4LCA4MywgNzMsIDg4LCA4NCwgNjksIDY5LCA3OCwgCisgICAgODQsIDIwMCwgODMsIDczLCA4OCwgODQsIDY5LCA2OSwgNzgsIDEyOCwgODMsIDczLCA4OCwgODQsIDY5LCA2OSwgMjA2LCAKKyAgICA4MywgNzMsIDg4LCA0NSwgODQsIDcyLCA3MywgODIsIDg0LCA4OSwgMTI4LCA4MywgNzMsIDg4LCA0NSwgODMsIDg0LCA4MiwgCisgICAgNzMsIDc4LCAxOTksIDgzLCA3MywgODgsIDQ1LCA4MCwgNjksIDgyLCA0NSwgNjksIDIwNSwgODMsIDczLCA4OCwgNDUsIDc2LCAKKyAgICA3MywgNzgsIDE5NywgODMsIDczLCAyMTYsIDgzLCA3MywgODQsIDY5LCAxMjgsIDgzLCA3MywgODMsIDY1LCAxMjgsIDgzLCAKKyAgICA3MywgODIsIDczLCA3OCwgNzEsIDg1LCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgCisgICAgNzIsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgzLCAKKyAgICA3MywgNzksIDgzLCA0NSwgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgODAsIDczLCA2OSwgCisgICAgODUsIDgwLCA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIDgwLCA3MiwgNzMsIAorICAgIDY5LCA4NSwgODAsIDcyLCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgODAsIDY1LCA3OCwgODMsIDczLCA3OSwgODMsIDEyOCwgCisgICAgODMsIDczLCA3OSwgODMsIDQ1LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA3NywgNzMsIAorICAgIDY5LCA4NSwgNzcsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA3NSwgNzIsIDczLCA2OSwgODUsIDc1LCA3MiwgMTI4LCA4MywgCisgICAgNzMsIDc5LCA4MywgNDUsIDc1LCA2NSwgODAsIDg5LCA2OSwgNzksIDg1LCA3OCwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIAorICAgIDgzLCA3MywgNzksIDgzLCA0NSwgNzMsIDY5LCA4NSwgNzgsIDcxLCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgNzIsIDczLCAKKyAgICA2OSwgODUsIDcyLCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgNjcsIDczLCA2OSwgODUsIDY3LCAxMjgsIDgzLCA3MywgNzksIAorICAgIDgzLCA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgODMsIDczLCA3OSwgMjExLCA4MywgNzMsIDc4LCA3NSwgCisgICAgNzMsIDc4LCA3MSwgMTI4LCA4MywgNzMsIDc4LCA3MSwgNzYsIDY5LCA0NSwgODMsIDcyLCA3MywgNzAsIDg0LCA0NSwgNTEsIAorICAgIDEyOCwgODMsIDczLCA3OCwgNzEsIDc2LCA2OSwgNDUsIDgzLCA3MiwgNzMsIDcwLCA4NCwgNDUsIDUwLCAxMjgsIDgzLCA3MywgCisgICAgNzgsIDcxLCA3NiwgNjksIDQ1LCA3NiwgNzMsIDc4LCAxOTcsIDgzLCA3MywgNzgsIDcxLCA3NiwgNjksIDEyOCwgODMsIDczLCAKKyAgICA3OCwgNzEsIDc2LCAxOTcsIDgzLCA3MywgNzgsIDcxLCA2NSwgNjUsIDg0LCAxMjgsIDgzLCA3MywgNzgsIDE5NywgODMsIAorICAgIDczLCA3OCwgNjgsIDcyLCAyMDEsIDgzLCA3MywgMjA2LCA4MywgNzMsIDc3LCA4MCwgNzYsIDczLCA3MCwgNzMsIDY5LCAKKyAgICAxOTYsIDgzLCA3MywgNzcsIDczLCA3NiwgNjUsIDgyLCAxMjgsIDgzLCA3MywgNzcsIDczLCA3NiwgNjUsIDIxMCwgODMsIAorICAgIDczLCA3NywgNjUsIDc4LCA4MywgNzMsIDIxMSwgODMsIDczLCA3NywgNjUsIDc2LCA4NSwgNzgsIDcxLCA4NSwgMjA2LCA4MywgCisgICAgNzMsIDc3LCA2NSwgMTI4LCA4MywgNzMsIDc2LCA4NiwgNjksIDgyLCAxMjgsIDgzLCA3MywgNzYsIDc1LCAxMjgsIDgzLCAKKyAgICA3MywgNzYsIDczLCA4MSwgODUsIDE5MywgODMsIDczLCA3NiwgNzIsIDc5LCA4NSwgNjksIDg0LCA4NCwgNjksIDEyOCwgODMsIAorICAgIDczLCA3NiwgNzIsIDc5LCA4NSwgNjksIDg0LCA4NCwgMTk3LCA4MywgNzMsIDc2LCA2NSwgNTEsIDEyOCwgODMsIDczLCA3NSwgCisgICAgNzMsIDEyOCwgODMsIDczLCA3NSwgNTAsIDEyOCwgODMsIDczLCA3NSwgMTc4LCA4MywgNzMsIDcxLCA3OCwgODMsIDEyOCwgCisgICAgODMsIDczLCA3MSwgNzcsIDY1LCAxMjgsIDgzLCA3MywgNzEsIDc3LCAxOTMsIDgzLCA3MywgNzEsIDY5LCAyMDQsIDgzLCAKKyAgICA3MywgNzEsIDUyLCAxMjgsIDgzLCA3MywgNzEsIDE4MCwgODMsIDczLCA3MSwgMTI4LCA4MywgNzMsIDY5LCA2OSwgMTI4LCAKKyAgICA4MywgNzMsIDY4LCA2OSwgODcsIDY1LCA4OSwgMjExLCA4MywgNzMsIDY3LCA3NSwgNzgsIDY5LCA4MywgODMsIDEyOCwgODMsIAorICAgIDczLCA2NywgNzUsIDc2LCA2OSwgMTI4LCA4MywgNzMsIDY2LCAxOTcsIDgzLCAyMDEsIDgzLCA3MiwgODksIDg4LCAxMjgsIAorICAgIDgzLCA3MiwgODksIDg0LCAxMjgsIDgzLCA3MiwgODksIDgyLCA4OCwgMTI4LCA4MywgNzIsIDg5LCA4MiwgMTI4LCA4MywgCisgICAgNzIsIDg5LCA4MCwgMTI4LCA4MywgNzIsIDg5LCA2OSwgMTI4LCA4MywgNzIsIDg5LCA2NSwgMTI4LCA4MywgNzIsIDg5LCAKKyAgICAxMjgsIDgzLCA3MiwgODcsIDc5LCA4OSwgMTI4LCA4MywgNzIsIDg3LCA3OSwgNzksIDEyOCwgODMsIDcyLCA4NywgNzksIAorICAgIDEyOCwgODMsIDcyLCA4NywgNzMsIDczLCAxMjgsIDgzLCA3MiwgODcsIDczLCAxMjgsIDgzLCA3MiwgODcsIDY5LCAxMjgsIAorICAgIDgzLCA3MiwgODcsIDY1LCA2NSwgMTI4LCA4MywgNzIsIDg3LCA2NSwgMTI4LCA4MywgNzIsIDg1LCA4OCwgMTI4LCA4MywgCisgICAgNzIsIDg1LCA4NSwgMTI4LCA4MywgNzIsIDg1LCA4NCwgMTI4LCA4MywgNzIsIDg1LCA4MiwgODgsIDEyOCwgODMsIDcyLCAKKyAgICA4NSwgODIsIDEyOCwgODMsIDcyLCA4NSwgODAsIDEyOCwgODMsIDcyLCA4NSwgNzksIDg4LCAxMjgsIDgzLCA3MiwgODUsIAorICAgIDc5LCA4MCwgMTI4LCA4MywgNzIsIDg1LCA3OSwgMTI4LCA4MywgNzIsIDg1LCA3NywgMTI4LCA4MywgNzIsIDg1LCA3MCwgCisgICAgNzAsIDc2LCAxOTcsIDgzLCA3MiwgODUsIDY5LCA4MSwgMTI4LCA4MywgNzIsIDg1LCA2OSwgNzgsIDgzLCA3MiwgODUsIDY5LCAKKyAgICA4NCwgMTI4LCA4MywgNzIsIDg1LCA2NiwgODUsIDgyLCAxMjgsIDgzLCA3MiwgODUsIDUwLCAxMjgsIDgzLCA3MiwgODUsIAorICAgIDE3OCwgODMsIDcyLCA4NSwgMTI4LCA4MywgNzIsIDIxMywgODMsIDcyLCA4NCwgNjUsIDgwLCA3MywgNjcsIDEyOCwgODMsIAorICAgIDcyLCA4NCwgNjUsIDEyOCwgODMsIDcyLCA4MiwgNzMsIDc4LCA2OSwgMTI4LCA4MywgNzIsIDgyLCA3MywgNzcsIDgwLCAKKyAgICAxMjgsIDgzLCA3MiwgODIsIDczLCA3MywgMTI4LCA4MywgNzIsIDc5LCA4OSwgMTI4LCA4MywgNzIsIDc5LCA4OCwgMTI4LCAKKyAgICA4MywgNzIsIDc5LCA4NywgNjksIDgyLCAxMjgsIDgzLCA3MiwgNzksIDg1LCA3NiwgNjgsIDY5LCA4MiwgNjksIDE5NiwgODMsIAorICAgIDcyLCA3OSwgODQsIDEyOCwgODMsIDcyLCA3OSwgODIsIDg0LCA4MywgMTI4LCA4MywgNzIsIDc5LCA4MiwgODQsIDIxMSwgCisgICAgODMsIDcyLCA3OSwgODIsIDg0LCA2OSwgNzgsIDY5LCA4MiwgMTI4LCA4MywgNzIsIDc5LCA4MiwgODQsIDY3LCA2NSwgNzUsIAorICAgIDY5LCAxMjgsIDgzLCA3MiwgNzksIDgyLCA4NCwgNDUsIDg0LCA4NywgNzMsIDcxLCA0NSwgODksIDgyLCAxMjgsIDgzLCA3MiwgCisgICAgNzksIDgyLCA4NCwgNDUsIDg0LCA4NywgNzMsIDcxLCA0NSwgODQsIDg5LCAyMTAsIDgzLCA3MiwgNzksIDgyLCA4NCwgNDUsIAorICAgIDg0LCA4NywgNzMsIDcxLCA0NSwgODMsIDc5LCAyMDQsIDgzLCA3MiwgNzksIDgyLCA4NCwgNDUsIDg0LCA4NywgNzMsIDcxLCAKKyAgICA0NSwgNzksIDgzLCAyMTEsIDgzLCA3MiwgNzksIDgyLCA4NCwgNDUsIDg0LCA4NywgNzMsIDcxLCA0NSwgNzgsIDY1LCA4NSwgCisgICAgMTk2LCA4MywgNzIsIDc5LCA4MiwgODQsIDQ1LCA4NCwgODcsIDczLCA3MSwgNDUsIDc3LCA2NSwgNjgsIDIxMCwgODMsIDcyLCAKKyAgICA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA3MiwgNjUsIDcxLCA2NSwgNzYsIDIwNCwgODMsIDcyLCA3OSwgCisgICAgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA2NiwgNzQsIDY1LCA4MiwgNzUsIDY1LCAyMDYsIDgzLCA3MiwgNzksIAorICAgIDgyLCA4NCwgNDUsIDg0LCA4NywgNzMsIDcxLCA0NSwgNjUsIDIxMCwgODMsIDcyLCA3OSwgODIsIDg0LCAxMjgsIDgzLCA3MiwgCisgICAgNzksIDgyLCAyMTIsIDgzLCA3MiwgNzksIDgxLCAxMjgsIDgzLCA3MiwgNzksIDIwOSwgODMsIDcyLCA3OSwgODAsIDEyOCwgCisgICAgODMsIDcyLCA3OSwgNzksIDg0LCA3MywgNzgsIDE5OSwgODMsIDcyLCA3OSwgNzksIDg0LCAxMjgsIDgzLCA3MiwgNzksIDc5LCAKKyAgICAxMjgsIDgzLCA3MiwgNzksIDcxLCAyMDEsIDgzLCA3MiwgNzksIDE5OSwgODMsIDcyLCA3OSwgNjksIDEyOCwgODMsIDcyLCAKKyAgICA3OSwgMTk3LCA4MywgNzIsIDc5LCA2NSwgMTI4LCA4MywgNzIsIDc5LCAxMjgsIDgzLCA3MiwgNzMsIDg5LCA4OSwgNjUsIAorICAgIDY1LCA3NiwgNjUsIDY1LCAxMjgsIDgzLCA3MiwgNzMsIDg0LCA2NSwgMTI4LCA4MywgNzIsIDczLCA4NCwgMTkzLCA4MywgCisgICAgNzIsIDczLCA4MiwgMjEyLCA4MywgNzIsIDczLCA4MiwgNjUsIDY5LCAxMjgsIDgzLCA3MiwgNzMsIDgyLCAxMjgsIDgzLCAKKyAgICA3MiwgNzMsIDIxMCwgODMsIDcyLCA3MywgODEsIDEyOCwgODMsIDcyLCA3MywgODAsIDEyOCwgODMsIDcyLCA3MywgNzgsIAorICAgIDg0LCAyMDcsIDgzLCA3MiwgNzMsIDc4LCA3MywgNzEsIDEyOCwgODMsIDcyLCA3MywgNzgsIDY4LCAxOTMsIDgzLCA3MiwgCisgICAgNzMsIDc4LCAxMjgsIDgzLCA3MiwgNzMsIDIwNiwgODMsIDcyLCA3MywgNzcsIDY1LCAxMjgsIDgzLCA3MiwgNzMsIDc3LCAKKyAgICAxOTMsIDgzLCA3MiwgNzMsIDc3LCAxMjgsIDgzLCA3MiwgNzMsIDIwNSwgODMsIDcyLCA3MywgNzMsIDc4LCAxMjgsIDgzLCAKKyAgICA3MiwgNzMsIDczLCAxMjgsIDgzLCA3MiwgNzMsIDcwLCAyMTIsIDgzLCA3MiwgNzMsIDY5LCA3NiwgNjgsIDEyOCwgODMsIAorICAgIDcyLCA3MywgNjgsIDEyOCwgODMsIDcyLCA3MywgMTk2LCA4MywgNzIsIDcyLCA2NSwgMTI4LCA4MywgNzIsIDcyLCAxOTMsIAorICAgIDgzLCA3MiwgNjksIDg4LCAxMjgsIDgzLCA3MiwgNjksIDg2LCA2NSwgMTI4LCA4MywgNzIsIDY5LCA4NSwgODgsIDEyOCwgCisgICAgODMsIDcyLCA2OSwgODUsIDc5LCA4MSwgMTI4LCA4MywgNzIsIDY5LCA4NSwgNjUsIDY5LCA4MSwgODQsIDg1LCAxMjgsIDgzLCAKKyAgICA3MiwgNjksIDg1LCA2NSwgNjksIDgxLCAxMjgsIDgzLCA3MiwgNjksIDg1LCA2NSwgNjksIDEyOCwgODMsIDcyLCA2OSwgODQsIAogICAgIDEyOCwgODMsIDcyLCA2OSwgMjEyLCA4MywgNzIsIDY5LCA4MywgNzIsIDc2LCA2NSwgNzcsIDEyOCwgODMsIDcyLCA2OSwgCiAgICAgODMsIDcyLCA3MywgNzEsIDEyOCwgODMsIDcyLCA2OSwgODMsIDcyLCA3MywgMTk5LCA4MywgNzIsIDY5LCA4MywgNzIsIDUwLCAKICAgICAxMjgsIDgzLCA3MiwgNjksIDgzLCA3MiwgMTI4LCA4MywgNzIsIDY5LCA4MSwgNjksIDIwNCwgODMsIDcyLCA2OSwgODAsIApAQCAtODgwLDM3NiArOTg0LDM4NCBAQAogICAgIDEyOCwgODMsIDcyLCA2OSwgNjksIDIwNiwgODMsIDcyLCA2OSwgNjksIDEyOCwgODMsIDcyLCA2OSwgNDUsIDcxLCA3OSwgCiAgICAgNjUsIDg0LCAxMjgsIDgzLCA3MiwgMTk3LCA4MywgNzIsIDY3LCA3MiwgNjUsIDEyOCwgODMsIDcyLCA2NSwgODksIDEyOCwgCiAgICAgODMsIDcyLCA2NSwgODgsIDEyOCwgODMsIDcyLCA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA4MywgNzIsIDY1LCAKLSAgICA4NiwgNzMsIDY1LCAyMDYsIDgzLCA3MiwgNjUsIDg2LCA2OSwgMTk2LCA4MywgNzIsIDY1LCA4NCwgMTI4LCA4MywgNzIsIAotICAgIDY1LCA4MiwgODUsIDEyOCwgODMsIDcyLCA2NSwgODIsIDIxMywgODMsIDcyLCA2NSwgODIsIDgwLCAxMjgsIDgzLCA3MiwgCi0gICAgNjUsIDgyLCAyMDgsIDgzLCA3MiwgNjUsIDgyLCA2NSwgMTI4LCA4MywgNzIsIDY1LCA4MiwgNTAsIDEyOCwgODMsIDcyLCAKLSAgICA2NSwgODIsIDE3OCwgODMsIDcyLCA2NSwgODAsIDczLCA3OCwgNzEsIDEyOCwgODMsIDcyLCA2NSwgODAsIDY5LCA4MywgCi0gICAgMTI4LCA4MywgNzIsIDY1LCA4MCwgMTk3LCA4MywgNzIsIDY1LCA4MCwgMTI4LCA4MywgNzIsIDY1LCA3OCwgNzEsIDEyOCwgCi0gICAgODMsIDcyLCA2NSwgNzgsIDEyOCwgODMsIDcyLCA2NSwgMjA2LCA4MywgNzIsIDY1LCA3NywgODIsIDc5LCA2NywgNzUsIAotICAgIDEyOCwgODMsIDcyLCA2NSwgNzYsIDgzLCA3MiwgNjksIDc2LCA2OSwgODQsIDEyOCwgODMsIDcyLCA2NSwgNzUsIDg0LCA3MywgCi0gICAgMTI4LCA4MywgNzIsIDY1LCA2OCwgNzksIDg3LCA2OSwgMTk2LCA4MywgNzIsIDY1LCA2OCwgNjksIDEyOCwgODMsIDcyLCAKLSAgICA2NSwgNjgsIDY4LCA2NSwgMTI4LCA4MywgNzIsIDY1LCA2OCwgNjgsIDE5MywgODMsIDcyLCA2NSwgNjgsIDEyOCwgODMsIAotICAgIDcyLCA2NSwgMTk2LCA4MywgNzIsIDY1LCA2NiwgNTQsIDEyOCwgODMsIDcyLCA2NSwgNjUsIDEyOCwgODMsIDcyLCA2NSwgCi0gICAgNTQsIDEyOCwgODMsIDcyLCA2NSwgNTEsIDEyOCwgODMsIDcyLCA2NSwgMTc5LCA4MywgNzEsIDgyLCAxOTMsIDgzLCA3MSwgCi0gICAgNzksIDIxMCwgODMsIDcxLCA2NSwgMjE1LCA4MywgNzEsIDY1LCAxOTQsIDgzLCA3MSwgMTI4LCA4MywgNjksIDg4LCA4NCwgCi0gICAgODUsIDc2LCAxOTMsIDgzLCA2OSwgODgsIDg0LCA3MywgNzYsIDY5LCAxMjgsIDgzLCA2OSwgODgsIDg0LCA2NSwgNzgsIAotICAgIDIxMSwgODMsIDY5LCA4NiwgNjksIDgyLCA2NSwgNzgsIDY3LCA2OSwgMTI4LCA4MywgNjksIDg2LCA2OSwgNzgsIDg0LCA4OSwgCi0gICAgMTI4LCA4MywgNjksIDg2LCA2OSwgNzgsIDg0LCAyMTcsIDgzLCA2OSwgODYsIDY5LCA3OCwgODQsIDcyLCAxMjgsIDgzLCAKLSAgICA2OSwgODYsIDY5LCA3OCwgODQsIDY5LCA2OSwgNzgsIDEyOCwgODMsIDY5LCA4NiwgNjksIDc4LCA4NCwgNjksIDY5LCAyMDYsIAotICAgIDgzLCA2OSwgODYsIDY5LCA3OCwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgODMsIDY5LCA4NiwgNjksIDIwNiwgCi0gICAgODMsIDY5LCA4NSwgODgsIDEyOCwgODMsIDY5LCA4NSwgNzgsIDg5LCA2NSwgNzcsIDEyOCwgODMsIDY5LCA4NSwgNjUsIDY5LCAKLSAgICA4MSwgMTI4LCA4MywgNjksIDg0LCA3MCwgNzksIDc4LCAxMjgsIDgzLCA2OSwgODMsIDg0LCA2OSwgODIsIDg0LCA3MywgODUsIAotICAgIDIxMSwgODMsIDY5LCA4MywgODEsIDg1LCA3MywgODEsIDg1LCA2NSwgNjgsIDgyLCA2NSwgODQsIDY5LCAxMjgsIDgzLCA2OSwgCi0gICAgODMsIDY1LCA3NywgMTk3LCA4MywgNjksIDgyLCA4NiwgNzMsIDY3LCAxOTcsIDgzLCA2OSwgODIsIDczLCA3MCwgODMsIAotICAgIDEyOCwgODMsIDY5LCA4MiwgNzMsIDcwLCAyMTEsIDgzLCA2OSwgODAsIDg0LCA2OSwgNzcsIDY2LCA2OSwgODIsIDEyOCwgCi0gICAgODMsIDY5LCA4MCwgNjUsIDgyLCA2NSwgODQsIDc5LCA4MiwgMTI4LCA4MywgNjksIDgwLCA2NSwgODIsIDY1LCA4NCwgNzksIAotICAgIDIxMCwgODMsIDY5LCA3OCwgODQsIDc5LCAxMjgsIDgzLCA2OSwgNzgsIDg0LCA3MywgMTI4LCA4MywgNjksIDc3LCA4NSwgCi0gICAgNzgsIDY3LCA3MywgMTkzLCA4MywgNjksIDc3LCA3NSwgNjUsIDg0LCA3MiwgMTI4LCA4MywgNjksIDc3LCA3NSwgMTI4LCAKLSAgICA4MywgNjksIDc3LCA3MywgODYsIDc5LCA4NywgNjksIDIwNCwgODMsIDY5LCA3NywgNzMsIDgzLCA3OSwgNzAsIDIxMiwgODMsIAotICAgIDY5LCA3NywgNzMsIDgzLCA2OSwgODgsIDg0LCA3MywgNzYsIDY5LCAxMjgsIDgzLCA2OSwgNzcsIDczLCA3NywgNzMsIDc4LCAKLSAgICA3MywgNzcsIDE5MywgODMsIDY5LCA3NywgNzMsIDY4LCA3MywgODIsIDY5LCA2NywgMjEyLCA4MywgNjksIDc3LCA3MywgNjcsIAotICAgIDc5LCA3NiwgNzksIDc4LCAxMjgsIDgzLCA2OSwgNzcsIDczLCA2NywgNzksIDc2LCA3OSwgMjA2LCA4MywgNjksIDc3LCA3MywgCi0gICAgNjcsIDczLCA4MiwgNjcsIDg1LCA3NiwgNjUsIDIxMCwgODMsIDY5LCA3NywgNzMsIDY3LCA3MywgODIsIDY3LCA3NiwgMTk3LCAKLSAgICA4MywgNjksIDc3LCA3MywgNjYsIDgyLCA2OSwgODYsIDczLCAyMTEsIDgzLCA2OSwgNzcsIDczLCA0NSwgODYsIDc5LCA3MywgCi0gICAgNjcsIDY5LCAxOTYsIDgzLCA2OSwgNzYsIDcwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU3LCAKLSAgICA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NywgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIAotICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTcsIDU1LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU3LCAKLSAgICA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NywgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIAotICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTcsIDUyLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU3LCAKLSAgICA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NywgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIAotICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTcsIDQ5LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU3LCAKLSAgICA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAotICAgIDg0LCA3OSwgODIsIDQ1LCA1NiwgNTcsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTYsIDU2LCAKLSAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU2LCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAotICAgIDg0LCA3OSwgODIsIDQ1LCA1NiwgNTQsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTYsIDUzLCAKLSAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU2LCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAotICAgIDg0LCA3OSwgODIsIDQ1LCA1NiwgNTEsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTYsIDUwLCAKLSAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU2LCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAotICAgIDg0LCA3OSwgODIsIDQ1LCA1NiwgNDgsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTYsIDEyOCwgCi0gICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTUsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAotICAgIDc5LCA4MiwgNDUsIDU1LCA1NiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NSwgNTUsIDEyOCwgCi0gICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTUsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAotICAgIDc5LCA4MiwgNDUsIDU1LCA1MywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NSwgNTIsIDEyOCwgCi0gICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTUsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAotICAgIDc5LCA4MiwgNDUsIDU1LCA1MCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NSwgNDksIDEyOCwgCi0gICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTUsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAotICAgIDc5LCA4MiwgNDUsIDU1LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU0LCA1NywgMTI4LCA4MywgCi0gICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NCwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAotICAgIDgyLCA0NSwgNTQsIDU1LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU0LCA1NCwgMTI4LCA4MywgCi0gICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NCwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAotICAgIDgyLCA0NSwgNTQsIDUyLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU0LCA1MSwgMTI4LCA4MywgCi0gICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NCwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAotICAgIDgyLCA0NSwgNTQsIDQ5LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU0LCA0OCwgMTI4LCA4MywgCi0gICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAotICAgIDQ1LCA1MywgNTcsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTMsIDU2LCAxMjgsIDgzLCA2OSwgCi0gICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUzLCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAotICAgIDQ1LCA1MywgNTQsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTMsIDUzLCAxMjgsIDgzLCA2OSwgCi0gICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUzLCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAotICAgIDQ1LCA1MywgNTEsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTMsIDUwLCAxMjgsIDgzLCA2OSwgCi0gICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUzLCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAotICAgIDQ1LCA1MywgNDgsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTMsIDEyOCwgODMsIDY5LCA3NiwgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTIsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAotICAgIDUyLCA1NiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MiwgNTUsIDEyOCwgODMsIDY5LCA3NiwgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTIsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAotICAgIDUyLCA1MywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MiwgNTIsIDEyOCwgODMsIDY5LCA3NiwgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTIsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAotICAgIDUyLCA1MCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MiwgNDksIDEyOCwgODMsIDY5LCA3NiwgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTIsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAotICAgIDUyLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUxLCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgCi0gICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MSwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTEsIAotICAgIDU1LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUxLCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgCi0gICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MSwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTEsIAotICAgIDUyLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUxLCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgCi0gICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MSwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTEsIAotICAgIDQ5LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUxLCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgCi0gICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTcsIAotICAgIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgCi0gICAgODQsIDc5LCA4MiwgNDUsIDUwLCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTQsIAotICAgIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUzLCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgCi0gICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTMsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAotICAgIDUwLCA1MywgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUzLCA1MSwgMTI4LCA4MywgCi0gICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTMsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAotICAgIDc5LCA4MiwgNDUsIDUwLCA1MywgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUzLCAKLSAgICA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIAotICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUyLCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKLSAgICA1MCwgNTIsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MiwgNTUsIDEyOCwgODMsIAotICAgIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUyLCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCAKLSAgICA3OSwgODIsIDQ1LCA1MCwgNTIsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MiwgCi0gICAgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUyLCA1MSwgMTI4LCA4MywgNjksIDc2LCAKLSAgICA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTIsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgCi0gICAgNDUsIDUwLCA1MiwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUyLCA0OCwgMTI4LCAKLSAgICA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgCi0gICAgNzksIDgyLCA0NSwgNTAsIDUxLCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTEsIAotICAgIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MSwgNTUsIDEyOCwgODMsIDY5LCA3NiwgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUxLCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAotICAgIDQ1LCA1MCwgNTEsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MSwgNTIsIDEyOCwgCi0gICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUxLCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAotICAgIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTEsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCAKLSAgICA1MSwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUxLCA0OCwgMTI4LCA4MywgNjksIAotICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTEsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKLSAgICA0NSwgNTAsIDUwLCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTAsIDU2LCAxMjgsIAotICAgIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MCwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCAKLSAgICA4NCwgNzksIDgyLCA0NSwgNTAsIDUwLCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgCi0gICAgNTAsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MCwgNTIsIDEyOCwgODMsIDY5LCAKLSAgICA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUwLCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgCi0gICAgODIsIDQ1LCA1MCwgNTAsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MCwgNDksIAotICAgIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUwLCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgCi0gICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIAotICAgIDQ5LCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDksIDU2LCAxMjgsIDgzLCA2OSwgCi0gICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OSwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAotICAgIDgyLCA0NSwgNTAsIDQ5LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDksIDUzLCAKLSAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OSwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIAotICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ5LCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKLSAgICA1MCwgNDksIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OSwgNDksIDEyOCwgODMsIAotICAgIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ5LCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCAKLSAgICA3OSwgODIsIDQ1LCA1MCwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ4LCA1NywgCi0gICAgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDgsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCAKLSAgICA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OCwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgCi0gICAgNTAsIDQ4LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDgsIDUzLCAxMjgsIDgzLCAKLSAgICA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OCwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgCi0gICAgNzksIDgyLCA0NSwgNTAsIDQ4LCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDgsIAotICAgIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OCwgNDksIDEyOCwgODMsIDY5LCA3NiwgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ4LCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAotICAgIDQ1LCA1MCwgNDgsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDEyOCwgODMsIDY5LCA3NiwgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU3LCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAotICAgIDQ1LCA0OSwgNTcsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NywgNTUsIDEyOCwgCi0gICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU3LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAotICAgIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTcsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCAKLSAgICA1NywgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU3LCA1MSwgMTI4LCA4MywgNjksIAotICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTcsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCAKLSAgICA4MiwgNDUsIDQ5LCA1NywgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU3LCA0OCwgCi0gICAgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTcsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCAKLSAgICA4NCwgNzksIDgyLCA0NSwgNDksIDU2LCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgCi0gICAgNTYsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NiwgNTUsIDEyOCwgODMsIDY5LCAKLSAgICA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU2LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgCi0gICAgODIsIDQ1LCA0OSwgNTYsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NiwgNTIsIAotICAgIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU2LCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgCi0gICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTYsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAotICAgIDQ5LCA1NiwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU2LCA0OCwgMTI4LCA4MywgCi0gICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAotICAgIDgyLCA0NSwgNDksIDU1LCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTUsIDU2LCAKLSAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NSwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIAotICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU1LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKLSAgICA0OSwgNTUsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NSwgNTIsIDEyOCwgODMsIAotICAgIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU1LCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCAKLSAgICA3OSwgODIsIDQ1LCA0OSwgNTUsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NSwgCi0gICAgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU1LCA0OCwgMTI4LCA4MywgNjksIDc2LCAKLSAgICA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgCi0gICAgNDksIDU0LCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTQsIDU2LCAxMjgsIDgzLCAKLSAgICA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NCwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgCi0gICAgNzksIDgyLCA0NSwgNDksIDU0LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTQsIAotICAgIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NCwgNTIsIDEyOCwgODMsIDY5LCA3NiwgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU0LCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAotICAgIDQ1LCA0OSwgNTQsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NCwgNDksIDEyOCwgCi0gICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU0LCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAotICAgIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTQsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUzLCAKLSAgICA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTMsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIAotICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MywgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKLSAgICA0NSwgNDksIDUzLCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTMsIDUzLCAxMjgsIAotICAgIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MywgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCAKLSAgICA4NCwgNzksIDgyLCA0NSwgNDksIDUzLCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgCi0gICAgNTMsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MywgNDksIDEyOCwgODMsIDY5LCAKLSAgICA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUzLCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgCi0gICAgODIsIDQ1LCA0OSwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUyLCA1NywgMTI4LCAKLSAgICA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTIsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgCi0gICAgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MiwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIAotICAgIDUyLCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTIsIDUzLCAxMjgsIDgzLCA2OSwgCi0gICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MiwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAotICAgIDgyLCA0NSwgNDksIDUyLCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTIsIDUwLCAKLSAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MiwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIAotICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUyLCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKLSAgICA0OSwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUxLCA1NywgMTI4LCA4MywgNjksIAotICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTEsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCAKLSAgICA4MiwgNDUsIDQ5LCA1MSwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUxLCA1NCwgCi0gICAgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTEsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCAKLSAgICA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MSwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgCi0gICAgNDksIDUxLCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTEsIDUwLCAxMjgsIDgzLCAKLSAgICA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MSwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgCi0gICAgNzksIDgyLCA0NSwgNDksIDUxLCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTEsIAotICAgIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUwLCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgCi0gICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTAsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAotICAgIDQ5LCA1MCwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUwLCA1NCwgMTI4LCA4MywgCi0gICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTAsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAotICAgIDc5LCA4MiwgNDUsIDQ5LCA1MCwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUwLCAKLSAgICA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTAsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIAotICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MCwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKLSAgICA0NSwgNDksIDUwLCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTAsIDEyOCwgODMsIAotICAgIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDQ5LCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCAKLSAgICA3OSwgODIsIDQ1LCA0OSwgNDksIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OSwgCi0gICAgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDQ5LCA1NCwgMTI4LCA4MywgNjksIDc2LCAKLSAgICA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDksIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgCi0gICAgNDUsIDQ5LCA0OSwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDQ5LCA1MSwgMTI4LCAKLSAgICA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDksIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgCi0gICAgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OSwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIAotICAgIDQ5LCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDksIDEyOCwgODMsIDY5LCA3NiwgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDQ4LCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAotICAgIDQ1LCA0OSwgNDgsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OCwgNTUsIDEyOCwgCi0gICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDQ4LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAotICAgIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDgsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCAKLSAgICA0OCwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDQ4LCA1MSwgMTI4LCA4MywgNjksIAotICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDgsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCAKLSAgICA4MiwgNDUsIDQ5LCA0OCwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDQ4LCA0OCwgCi0gICAgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDgsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCAKLSAgICA4NCwgNzksIDgyLCA0NSwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDIxMCwgODMsIDY5LCA3MywgODMsIAotICAgIDc3LCA2NSwgMTI4LCA4MywgNjksIDczLCA4MywgNzcsIDE5MywgODMsIDY5LCA3MiwgMTI4LCA4MywgNjksIDcxLCA3OSwgCi0gICAgNzYsIDEyOCwgODMsIDY5LCA3MSwgNzgsIDc5LCAxMjgsIDgzLCA2OSwgNzEsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDgzLCAKLSAgICA2OSwgNjksIDc4LCA4NSwgMTI4LCA4MywgNjksIDY5LCA3OCwgMTI4LCA4MywgNjksIDY5LCAyMDYsIDgzLCA2OSwgNjksIAotICAgIDY4LCA3NiwgNzMsIDc4LCA3MSwgMTI4LCA4MywgNjksIDY5LCA0NSwgNzgsIDc5LCA0NSwgNjksIDg2LCA3MywgMjA0LCA4MywgCi0gICAgNjksIDY3LCA4NCwgNzksIDgyLCAxMjgsIDgzLCA2OSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgzLCA2OSwgNjcsIDg0LCAKLSAgICA3MywgNzksIDIwNiwgODMsIDY5LCA2NywgODIsIDY5LCA4NCwgMTI4LCA4MywgNjksIDY3LCA3OSwgNzgsIDY4LCAxMjgsIAotICAgIDgzLCA2OSwgNjYsIDY1LCA4NCwgNjYsIDY5LCA3MywgMjEyLCA4MywgNjksIDY1LCA4NCwgMTI4LCA4MywgNjksIDY1LCA3NiwgCi0gICAgMTI4LCA4MywgNjksIDY1LCA3MSwgODUsIDc2LCAyMDQsIDgzLCA2OCwgNzksIDc4LCAxOTksIDgzLCA2OCwgMTI4LCA4MywgCi0gICAgNjcsIDg3LCA2NSwgMTI4LCA4MywgNjcsIDgyLCA4NSwgODAsIDc2LCA2OSwgMTI4LCA4MywgNjcsIDgyLCA3OSwgNzYsIDc2LCAKLSAgICAxMjgsIDgzLCA2NywgODIsIDczLCA4MCwgODQsIDEyOCwgODMsIDY3LCA4MiwgNjksIDY5LCA3OCwgMTI4LCA4MywgNjcsIAotICAgIDgyLCA2OSwgNjksIDIwNiwgODMsIDY3LCA4MiwgNjksIDY1LCA3NywgNzMsIDc4LCAxOTksIDgzLCA2NywgNzksIDgyLCA4MCwgCi0gICAgNzMsIDg1LCA4MywgMTI4LCA4MywgNjcsIDc5LCA4MiwgNjksIDEyOCwgODMsIDY3LCA3MywgODMsIDgzLCA3OSwgODIsIDgzLCAKLSAgICAxMjgsIDgzLCA2NywgNzIsIDg3LCA2NSwgMTI4LCA4MywgNjcsIDcyLCA4NywgMTkzLCA4MywgNjcsIDcyLCA4MiwgNzksIAotICAgIDY5LCA2OCwgNjksIDgyLCAxMjgsIDgzLCA2NywgNzIsIDc5LCA3OSwgNzYsIDEyOCwgODMsIDY3LCA3MiwgNzksIDc5LCAKLSAgICAyMDQsIDgzLCA2NywgNzIsIDc5LCA3NiwgNjUsIDgyLCAxMjgsIDgzLCA2NywgNzIsIDY5LCA3NywgMTkzLCA4MywgNjcsIAotICAgIDY5LCA4MCwgODQsIDY5LCAyMTAsIDgzLCA2NywgNjUsIDc4LCA2OCwgNzMsIDY3LCA4NSwgODMsIDEyOCwgODMsIDY3LCA2NSwgCi0gICAgNzgsIDY4LCA3MywgNjcsIDg1LCAyMTEsIDgzLCA2NywgNjUsIDIwNiwgODMsIDY3LCA2NSwgNzYsIDY5LCA4MywgMTI4LCAKLSAgICA4MywgNjYsIDg1LCAxOTQsIDgzLCA2NiwgODIsIDg1LCAyMDQsIDgzLCA2NSwgODksIDczLCA4MywgMjAxLCA4MywgNjUsIAotICAgIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA4MywgNjUsIDg5LCAxMjgsIDgzLCA2NSwgODgsIDc5LCA4MCwgNzIsIDc5LCA3OCwgCi0gICAgNjksIDEyOCwgODMsIDY1LCA4OCwgNzMsIDc3LCA2NSwgODQsIDY1LCAxMjgsIDgzLCA2NSwgODcsIDY1LCA3OCwgMTI4LCAKLSAgICA4MywgNjUsIDg3LCAxMjgsIDgzLCA2NSwgODYsIDc5LCA4NSwgODIsIDczLCA3OCwgMTk5LCA4MywgNjUsIDg1LCA3MywgNzYsIAotICAgIDEyOCwgODMsIDY1LCA4NCwgODUsIDgyLCA3OCwgMTI4LCA4MywgNjUsIDg0LCA3NSwgNjUsIDY1LCA3OCwgNzUsIDg1LCA4NSwgCi0gICAgMTI4LCA4MywgNjUsIDg0LCA3NSwgNjUsIDY1LCA3OCwgMTI4LCA4MywgNjUsIDg0LCA2OSwgNzYsIDc2LCA3MywgODQsIAotICAgIDE5NywgODMsIDY1LCA4NCwgNjcsIDcyLCA2OSwgNzYsIDEyOCwgODMsIDY1LCA4MywgNzIsIDEyOCwgODMsIDY1LCA4MywgCi0gICAgNjUsIDc1LCAxMjgsIDgzLCA2NSwgODIsIDczLCAxMjgsIDgzLCA2NSwgODIsIDE5MywgODMsIDY1LCA4MiwgMTI4LCA4MywgCi0gICAgNjUsIDgxLCAxMjgsIDgzLCA2NSwgODAsIDY1LCAxMjgsIDgzLCA2NSwgNzgsIDg5LCA3OSwgNzksIDcxLCAxOTMsIDgzLCAKLSAgICA2NSwgNzgsIDg5LCA2NSwgNzUsIDE5MywgODMsIDY1LCA3OCwgODQsIDczLCA3MywgNzcsIDg1LCAxMjgsIDgzLCA2NSwgNzgsIAotICAgIDc4LCA4OSwgNjUsIDEyOCwgODMsIDY1LCA3OCwgNzEsIDY1LCA1MCwgMTI4LCA4MywgNjUsIDc4LCA2OCwgNjUsIDc2LCAKLSAgICAxMjgsIDgzLCA2NSwgNzgsIDY1LCA3MiwgMTI4LCA4MywgNjUsIDc4LCAxMjgsIDgzLCA2NSwgNzcsIDg5LCA3OSwgMjAzLCAKLSAgICA4MywgNjUsIDc3LCA4MCwgNzMsIDEyOCwgODMsIDY1LCA3NywgODAsIDcyLCA2NSwgNzksIDEyOCwgODMsIDY1LCA3NywgNzUsIAotICAgIDY1LCAxMjgsIDgzLCA2NSwgNzcsIDY5LCA3NSwgNzIsIDEyOCwgODMsIDY1LCA3NywgNjksIDc1LCAyMDAsIDgzLCA2NSwgCi0gICAgNzcsIDY2LCA2NSwgMTI4LCA4MywgNjUsIDc3LCA2NSwgODIsIDczLCA4NCwgNjUsIDIwNiwgODMsIDY1LCA3NywgMTI4LCAKLSAgICA4MywgNjUsIDc2LCA4NCwgNzMsIDgyLCA2OSwgMTI4LCA4MywgNjUsIDc2LCA4NCwgNzMsIDc2LCA3NiwgNzksIDEyOCwgODMsIAotICAgIDY1LCA3NiwgODQsIDQ1LCA1MCwgMTI4LCA4MywgNjUsIDc2LCA4NCwgMTI4LCA4MywgNjUsIDc2LCAyMTIsIDgzLCA2NSwgCi0gICAgNzYsIDc2LCA2NSwgNzYsIDc2LCA2NSwgNzIsIDc5LCAyMTMsIDgzLCA2NSwgNzYsIDc2LCAxOTMsIDgzLCA2NSwgNzYsIDY1LCAKLSAgICAyMDUsIDgzLCA2NSwgNzYsIDY1LCAxMjgsIDgzLCA2NSwgNzYsIDQ1LCA2NSwgNzcsIDc3LCA3OSwgNzgsIDczLCA2NSwgNjcsIAotICAgIDEyOCwgODMsIDY1LCA3NiwgMTI4LCA4MywgNjUsIDc1LCA3OSwgODQsIDEyOCwgODMsIDY1LCA3NSwgNjksIDg1LCA2NSwgCi0gICAgNjksIDEyOCwgODMsIDY1LCA3NSwgMTk3LCA4MywgNjUsIDc0LCA2OCwgNjUsIDcyLCAxMjgsIDgzLCA2NSwgNzMsIDc2LCAKLSAgICA2NiwgNzksIDY1LCA4NCwgMTI4LCA4MywgNjUsIDczLCA3NiwgMTI4LCA4MywgNjUsIDczLCA3NSwgODUsIDgyLCA4NSwgCi0gICAgMTI4LCA4MywgNjUsIDcxLCA3MywgODQsIDg0LCA2NSwgODIsIDczLCA4NSwgODMsIDEyOCwgODMsIDY1LCA3MSwgNjUsIAotICAgIDEyOCwgODMsIDY1LCA3MSwgMTI4LCA4MywgNjUsIDE5OSwgODMsIDY1LCA3MCwgNzIsIDY1LCAxMjgsIDgzLCA2NSwgNjgsIAotICAgIDcyLCA2OSwgMTI4LCA4MywgNjUsIDY4LCA2OSwgMTI4LCA4MywgNjUsIDY4LCAxMjgsIDgzLCA2NSwgMTk2LCA4MywgNjUsIAotICAgIDY3LCA4MiwgNzMsIDcwLCA3MywgNjcsIDczLCA2NSwgMjA0LCA4MywgNjUsIDY1LCA3MywgMTI4LCA4MywgNjUsIDY1LCA2OCwgCi0gICAgNzIsIDg1LCAxMjgsIDgzLCA2NSwgNDUsIDczLCAxMjgsIDgzLCA0OCwgNTIsIDU0LCAxMjgsIDgzLCA0OCwgNTIsIDUzLCAKLSAgICAxMjgsIDgzLCA0OCwgNTIsIDUyLCAxMjgsIDgzLCA0OCwgNTIsIDUxLCAxMjgsIDgzLCA0OCwgNTIsIDUwLCAxMjgsIDgzLCAKLSAgICA0OCwgNTIsIDQ5LCAxMjgsIDgzLCA0OCwgNTIsIDQ4LCAxMjgsIDgzLCA0OCwgNTEsIDU3LCAxMjgsIDgzLCA0OCwgNTEsIAotICAgIDU2LCAxMjgsIDgzLCA0OCwgNTEsIDU1LCAxMjgsIDgzLCA0OCwgNTEsIDU0LCAxMjgsIDgzLCA0OCwgNTEsIDUzLCA2NSwgCi0gICAgMTI4LCA4MywgNDgsIDUxLCA1MywgMTI4LCA4MywgNDgsIDUxLCA1MiwgMTI4LCA4MywgNDgsIDUxLCA1MSwgMTI4LCA4MywgCi0gICAgNDgsIDUxLCA1MCwgMTI4LCA4MywgNDgsIDUxLCA0OSwgMTI4LCA4MywgNDgsIDUxLCA0OCwgMTI4LCA4MywgNDgsIDUwLCAKLSAgICA1NywgMTI4LCA4MywgNDgsIDUwLCA1NiwgMTI4LCA4MywgNDgsIDUwLCA1NSwgMTI4LCA4MywgNDgsIDUwLCA1NCwgNjYsIAotICAgIDEyOCwgODMsIDQ4LCA1MCwgNTQsIDY1LCAxMjgsIDgzLCA0OCwgNTAsIDU0LCAxMjgsIDgzLCA0OCwgNTAsIDUzLCAxMjgsIAotICAgIDgzLCA0OCwgNTAsIDUyLCAxMjgsIDgzLCA0OCwgNTAsIDUxLCAxMjgsIDgzLCA0OCwgNTAsIDUwLCAxMjgsIDgzLCA0OCwgCi0gICAgNTAsIDQ5LCAxMjgsIDgzLCA0OCwgNTAsIDQ4LCAxMjgsIDgzLCA0OCwgNDksIDU3LCAxMjgsIDgzLCA0OCwgNDksIDU2LCAKLSAgICAxMjgsIDgzLCA0OCwgNDksIDU1LCA2NSwgMTI4LCA4MywgNDgsIDQ5LCA1NSwgMTI4LCA4MywgNDgsIDQ5LCA1NCwgMTI4LCAKLSAgICA4MywgNDgsIDQ5LCA1MywgMTI4LCA4MywgNDgsIDQ5LCA1MiwgNjYsIDEyOCwgODMsIDQ4LCA0OSwgNTIsIDY1LCAxMjgsIAotICAgIDgzLCA0OCwgNDksIDUyLCAxMjgsIDgzLCA0OCwgNDksIDUxLCAxMjgsIDgzLCA0OCwgNDksIDUwLCAxMjgsIDgzLCA0OCwgCi0gICAgNDksIDQ5LCAxMjgsIDgzLCA0OCwgNDksIDQ4LCAxMjgsIDgzLCA0OCwgNDgsIDU3LCAxMjgsIDgzLCA0OCwgNDgsIDU2LCAKLSAgICAxMjgsIDgzLCA0OCwgNDgsIDU1LCAxMjgsIDgzLCA0OCwgNDgsIDU0LCA2NSwgMTI4LCA4MywgNDgsIDQ4LCA1NCwgMTI4LCAKLSAgICA4MywgNDgsIDQ4LCA1MywgMTI4LCA4MywgNDgsIDQ4LCA1MiwgMTI4LCA4MywgNDgsIDQ4LCA1MSwgMTI4LCA4MywgNDgsIAotICAgIDQ4LCA1MCwgNjUsIDEyOCwgODMsIDQ4LCA0OCwgNTAsIDEyOCwgODMsIDQ4LCA0OCwgNDksIDEyOCwgODMsIDQ1LCA4NywgCi0gICAgMTI4LCA4MywgNDUsIDgzLCA3MiwgNjUsIDgwLCA2OSwgMTk2LCA4MiwgODksIDg5LCAxMjgsIDgyLCA4OSwgODgsIDEyOCwgCi0gICAgODIsIDg5LCA4NCwgMTI4LCA4MiwgODksIDgyLCA4OCwgMTI4LCA4MiwgODksIDgyLCAxMjgsIDgyLCA4OSwgODAsIDEyOCwgCi0gICAgODIsIDg5LCA2NSwgMTI4LCA4MiwgODcsIDc5LCA3OSwgMTI4LCA4MiwgODcsIDc5LCAxMjgsIDgyLCA4NywgNzMsIDczLCAKLSAgICAxMjgsIDgyLCA4NywgNzMsIDEyOCwgODIsIDg3LCA2OSwgNjksIDEyOCwgODIsIDg3LCA2OSwgMTI4LCA4MiwgODcsIDY1LCAKLSAgICA3MiwgNjUsIDEyOCwgODIsIDg3LCA2NSwgNjUsIDEyOCwgODIsIDg3LCA2NSwgMTI4LCA4MiwgODUsIDg4LCAxMjgsIDgyLCAKLSAgICA4NSwgODUsIDY2LCA4NSwgODIsIDg1LCAxMjgsIDgyLCA4NSwgODQsIDEyOCwgODIsIDg1LCA4MywgNzMsIDEyOCwgODIsIAotICAgIDg1LCA4MiwgODgsIDEyOCwgODIsIDg1LCA4MiwgMTI4LCA4MiwgODUsIDgwLCA3MywgNzMsIDEyOCwgODIsIDg1LCA4MCwgCi0gICAgNjksIDE5NywgODIsIDg1LCA4MCwgMTI4LCA4MiwgODUsIDc5LCA4OCwgMTI4LCA4MiwgODUsIDc5LCA4MCwgMTI4LCA4MiwgCi0gICAgODUsIDc5LCAxMjgsIDgyLCA4NSwgNzgsIDc5LCA4NSwgODQsIDEyOCwgODIsIDg1LCA3OCwgNzgsIDczLCA3OCwgMTk5LCAKLSAgICA4MiwgODUsIDc4LCA3OCwgNjksIDgyLCAxMjgsIDgyLCA4NSwgNzgsIDEyOCwgODIsIDg1LCA3NywgMjAxLCA4MiwgODUsIAotICAgIDc3LCA2NSwgMjAxLCA4MiwgODUsIDc3LCAxMjgsIDgyLCA4NSwgMjA1LCA4MiwgODUsIDc2LCA2OSwgODIsIDEyOCwgODIsIAotICAgIDg1LCA3NiwgNjksIDQ1LCA2OCwgNjksIDc2LCA2NSwgODksIDY5LCA2OCwgMTI4LCA4MiwgODUsIDc2LCA2OSwgMTI4LCA4MiwgCi0gICAgODUsIDc1LCA3NSwgNjUsIDc1LCA3MiwgNjUsIDEyOCwgODIsIDg1LCA3MywgODMsIDEyOCwgODIsIDg1LCA3MSwgNjYsIAotICAgIDIxNywgODIsIDg1LCAxOTQsIDgyLCA4NSwgNjUsIDEyOCwgODIsIDg0LCA3MiwgNjUsIDc4LCAxOTksIDgyLCA4NCwgNjUsIAotICAgIDcxLCA4MywgMTI4LCA4MiwgODQsIDY1LCA3MSwgMjExLCA4MiwgODIsIDg5LCA4OCwgMTI4LCA4MiwgODIsIDg5LCA4NCwgCi0gICAgMTI4LCA4MiwgODIsIDg5LCA4MiwgODgsIDEyOCwgODIsIDgyLCA4OSwgODIsIDEyOCwgODIsIDgyLCA4OSwgODAsIDEyOCwgCi0gICAgODIsIDgyLCA4NSwgODgsIDEyOCwgODIsIDgyLCA4NSwgODQsIDEyOCwgODIsIDgyLCA4NSwgODIsIDg4LCAxMjgsIDgyLCAKLSAgICA4MiwgODUsIDgyLCAxMjgsIDgyLCA4MiwgODUsIDgwLCAxMjgsIDgyLCA4MiwgODUsIDc5LCA4OCwgMTI4LCA4MiwgODIsIAotICAgIDg1LCA3OSwgMTI4LCA4MiwgODIsIDg1LCAxMjgsIDgyLCA4MiwgNzksIDg4LCAxMjgsIDgyLCA4MiwgNzksIDg0LCAxMjgsIAotICAgIDgyLCA4MiwgNzksIDgwLCAxMjgsIDgyLCA4MiwgNzksIDEyOCwgODIsIDgyLCA2OSwgODgsIDEyOCwgODIsIDgyLCA2OSwgCi0gICAgODQsIDEyOCwgODIsIDgyLCA2OSwgODAsIDEyOCwgODIsIDgyLCA2OSwgNzIsIDEyOCwgODIsIDgyLCA2OSwgMjAwLCA4MiwgCi0gICAgODIsIDY5LCAxMjgsIDgyLCA4MiwgNjUsIDg4LCAxMjgsIDgyLCA4MiwgNjUsIDEyOCwgODIsIDc5LCA4NywgNjYsIDc5LCAKLSAgICA2NSwgODQsIDEyOCwgODIsIDc5LCA4NSwgNzgsIDY4LCA2OSwgMTk2LCA4MiwgNzksIDg1LCA3OCwgNjgsIDQ1LCA4NCwgNzMsIAotICAgIDgwLCA4MCwgNjksIDE5NiwgODIsIDc5LCA4NCwgODUsIDc4LCA2OCwgNjUsIDEyOCwgODIsIDc5LCA4NCwgNjUsIDg0LCA2OSwgCi0gICAgMTk2LCA4MiwgNzksIDgzLCA3MiwgMTI4LCA4MiwgNzksIDgzLCA2OSwgODQsIDg0LCA2OSwgMTI4LCA4MiwgNzksIDgzLCAKLSAgICA2OSwgMTI4LCA4MiwgNzksIDc5LCA4NCwgMTI4LCA4MiwgNzksIDc5LCA4MywgODQsIDY5LCA4MiwgMTI4LCA4MiwgNzksIAotICAgIDc5LCA3NSwgMTI4LCA4MiwgNzksIDc5LCA3MCwgMTI4LCA4MiwgNzksIDc5LCAxMjgsIDgyLCA3OSwgNzcsIDY1LCAyMDYsIAotICAgIDgyLCA3OSwgNzcsIDEyOCwgODIsIDc5LCA3NiwgNzYsIDY5LCAyMTAsIDgyLCA3OSwgMTk2LCA4MiwgNzksIDY3LCA3NSwgCi0gICAgNjksIDg0LCAxMjgsIDgyLCA3OSwgNjcsIDIwMywgODIsIDc5LCA2NywgMTI4LCA4MiwgNzksIDY2LCA2NSwgODQsIDEyOCwgCi0gICAgODIsIDc5LCA2NSwgODMsIDg0LCA2OSwgMTk2LCA4MiwgNzksIDY1LCA4MiwgMTI4LCA4MiwgNzksIDY1LCAxMjgsIDgyLCAKLSAgICA3OCwgODksIDczLCA3OCwgMTk5LCA4MiwgNzgsIDc5LCA3OSwgNzgsIDEyOCwgODIsIDc4LCA3OSwgNzksIDIwNiwgODIsIAotICAgIDc4LCA2NSwgMjA1LCA4MiwgNzQsIDY5LCAyMTEsIDgyLCA3NCwgNjksIDEyOCwgODIsIDc0LCAxOTcsIDgyLCA3MywgODYsIAotICAgIDY5LCA4MiwgMTI4LCA4MiwgNzMsIDg0LCA4NSwgNjUsIDc2LCAxMjgsIDgyLCA3MywgODQsIDg0LCA3OSwgODIsIDg1LCAKLSAgICAxMjgsIDgyLCA3MywgODQsIDgzLCA3MywgMTI4LCA4MiwgNzMsIDgzLCA3MywgNzgsIDE5OSwgODIsIDczLCA4MywgNzIsIAotICAgIDEyOCwgODIsIDczLCA4MiwgNjUsIDEyOCwgODIsIDczLCA4MCwgMTI4LCA4MiwgNzMsIDc4LCA3MSwgMjExLCA4MiwgNzMsIAotICAgIDc4LCA3MCwgNzksIDgyLCA5MCwgNjUsIDc4LCA2OCwgNzksIDEyOCwgODIsIDczLCAyMDYsIDgyLCA3MywgNzcsIDcxLCA2NiwgCi0gICAgNjUsIDEyOCwgODIsIDczLCA3NSwgODIsIDczLCA3NSwgMTI4LCA4MiwgNzMsIDczLCAxMjgsIDgyLCA3MywgNzEsIDg2LCAKLSAgICA2OSwgNjgsIDczLCAxOTUsIDgyLCA3MywgNzEsIDcyLCA4NCwgODcsIDY1LCA4MiwgNjgsIDgzLCAxMjgsIDgyLCA3MywgNzEsIAotICAgIDcyLCA4NCwgNzIsIDY1LCA3OCwgMTk2LCA4MiwgNzMsIDcxLCA3MiwgODQsIDQ1LCA4NCwgNzksIDQ1LCA3NiwgNjksIDcwLCAKLSAgICAyMTIsIDgyLCA3MywgNzEsIDcyLCA4NCwgNDUsIDgzLCA3MywgNjgsIDE5NywgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgODMsIAotICAgIDcyLCA2NSwgNjgsIDc5LCA4NywgNjksIDE5NiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgODMsIDcyLCA2NSwgNjgsIDY5LCAKLSAgICAxOTYsIDgyLCA3MywgNzEsIDcyLCA4NCwgNDUsIDgwLCA3OSwgNzMsIDc4LCA4NCwgNzMsIDc4LCAxOTksIDgyLCA3MywgNzEsIAotICAgIDcyLCA4NCwgNDUsIDcyLCA2NSwgNzgsIDY4LCA2OSwgMTk2LCA4MiwgNzMsIDcxLCA3MiwgODQsIDQ1LCA3MiwgNjUsIDc4LCAKLSAgICAxOTYsIDgyLCA3MywgNzEsIDcyLCA4NCwgNDUsIDcwLCA2NSwgNjcsIDczLCA3OCwgMTk5LCA4MiwgNzMsIDcxLCA3MiwgODQsIAotICAgIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODksIDY5LCA4MywgNzMsIDY5LCA4NSwgNzgsIDcxLCAxMjgsIDgyLCA3MywgCi0gICAgNjksIDg1LCA3NiwgNDUsIDg5LCA2OSwgNzksIDgyLCA3MywgNzgsIDcyLCA3MywgNjksIDg1LCA3MiwgNDUsIDcyLCA3MywgCi0gICAgNjksIDg1LCA3MiwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4OSwgNjksIDc5LCA4MiwgNzMsIDc4LCA3MiwgNzMsIAotICAgIDY5LCA4NSwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDcyLCAKLSAgICA3MywgNjksIDg1LCA3MiwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAxMjgsIAotICAgIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDg0LCA3MiwgNzMsIDY5LCA4NSwgODQsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCAKLSAgICA3NiwgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgCi0gICAgNzYsIDQ1LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIAotICAgIDgzLCA4MywgNjUsIDc4LCA3MSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgzLCAKLSAgICA4MywgNjUsIDc4LCA3MSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4MywgCi0gICAgNzMsIDc5LCA4MywgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4NCwgNzMsIAotICAgIDc1LCA2OSwgODUsIDg0LCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCAKLSAgICA3MywgNzksIDgzLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgwLCA3MiwgCi0gICAgNzMsIDY5LCA4NSwgODAsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIAotICAgIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgCi0gICAgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIAotICAgIDc2LCA0NSwgODAsIDY1LCA3OCwgODMsIDczLCA3OSwgODMsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzgsIDczLCAKLSAgICA2OSwgODUsIDc4LCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDgzLCA3MywgCi0gICAgNzksIDgzLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDc1LCA3MywgODksIAotICAgIDY5LCA3OSwgNzUsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgNzIsIDczLCAKLSAgICA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgMTI4LCA4MiwgNzMsIAotICAgIDY5LCA4NSwgNzYsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgODMsIDczLCA3OSwgODMsIDEyOCwgODIsIDczLCAKLSAgICA2OSwgODUsIDc2LCA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgNDUsIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA4MiwgCi0gICAgNzMsIDY5LCA4NSwgNzYsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIAotICAgIDc1LCA2NSwgODAsIDg5LCA2OSwgNzksIDg1LCA3OCwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgyLCA3MywgNjksIDg1LCAKLSAgICA3NiwgNDUsIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA2NywgNzMsIDY5LCA4NSwgCi0gICAgNjcsIDEyOCwgODIsIDczLCA2OSwgODUsIDIwNCwgODIsIDczLCA2OSwgNzYsIDEyOCwgODIsIDczLCA2OSwgNjksIDEyOCwgCi0gICAgODIsIDczLCA2NywgNjksIDc3LCAxMjgsIDgyLCA3MywgNjcsIDY5LCAxMjgsIDgyLCA3MywgNjcsIDE5NywgODIsIDczLCAKLSAgICA2NiwgNjYsIDc5LCA3OCwgMTI4LCA4MiwgNzMsIDY1LCAyMDQsIDgyLCA3MiwgNzksIDg0LCA3MywgMTk1LCA4MiwgNzIsIAotICAgIDc5LCAxMjgsIDgyLCA3MiwgMjA3LCA4MiwgNzIsIDY1LCAxMjgsIDgyLCA3MSwgODksIDczLCA3OCwgNzEsIDgzLCAxMjgsIAotICAgIDgyLCA3MSwgODksIDY1LCA3OCwgMTI4LCA4MiwgNzEsIDg5LCAxOTMsIDgyLCA2OSwgODYsIDc5LCA3NiwgODYsIDczLCA3OCwgCi0gICAgMTk5LCA4MiwgNjksIDg2LCA3OSwgNzYsIDg1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA4MiwgNjksIDg2LCA3NywgNjUsIAotICAgIDEyOCwgODIsIDY5LCA4NiwgNzMsIDY1LCAxMjgsIDgyLCA2OSwgODYsIDY5LCA4MiwgODMsIDY5LCA2OCwgMTI4LCA4MiwgCi0gICAgNjksIDg2LCA2OSwgODIsIDgzLCA2OSwgMTk2LCA4MiwgNjksIDg2LCA2OSwgODIsIDgzLCAxOTcsIDgyLCA2OSwgODUsIDg4LCAKLSAgICAxMjgsIDgyLCA2OSwgODQsIDg1LCA4MiwgNzgsIDEyOCwgODIsIDY5LCA4NCwgODUsIDgyLCAyMDYsIDgyLCA2OSwgODQsIAotICAgIDgyLCA3OSwgNzAsIDc2LCA2OSwgMjE2LCA4MiwgNjksIDg0LCA4MiwgNjksIDY1LCA4NCwgMTI4LCA4MiwgNjksIDg0LCA3OSwgCi0gICAgODIsIDg0LCAxMjgsIDgyLCA2OSwgODMsIDg1LCA4MCwgNzMsIDc4LCA4NSwgODMsIDEyOCwgODIsIDY5LCA4MywgODQsIDgyLCAKLSAgICA3OSwgNzksIDc3LCAxMjgsIDgyLCA2OSwgODMsIDg0LCA4MiwgNzMsIDY3LCA4NCwgNjksIDE5NiwgODIsIDY5LCA4MywgODQsIAotICAgIDEyOCwgODIsIDY5LCA4MywgODAsIDc5LCA3OCwgODMsIDY5LCAxMjgsIDgyLCA2OSwgODMsIDc5LCA4NSwgODIsIDY3LCA2OSwgCi0gICAgMTI4LCA4MiwgNjksIDgzLCA3OSwgNzYsIDg1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA4MiwgNjksIDgzLCA3MywgODMsIDg0LCAKLSAgICA2NSwgNzgsIDY3LCA2OSwgMTI4LCA4MiwgNjksIDgzLCA3MywgNjgsIDY5LCA3OCwgNjcsIDY5LCAxMjgsIDgyLCA2OSwgODMsIAotICAgIDIwMCwgODIsIDY5LCA4MiwgNjksIDc4LCA3MSwgNzEsIDY1LCA3OCwgMTI4LCA4MiwgNjksIDgyLCA2OSwgNzUsIDY1LCA3OCwgCi0gICAgMTI4LCA4MiwgNjksIDgwLCA4MiwgNjksIDgzLCA2OSwgNzgsIDg0LCAxMjgsIDgyLCA2OSwgODAsIDc2LCA2NSwgNjcsIDY5LCAKLSAgICA3NywgNjksIDc4LCAyMTIsIDgyLCA2OSwgODAsIDcyLCAxMjgsIDgyLCA2OSwgODAsIDY5LCA2NSwgODQsIDY5LCAxOTYsIAotICAgIDgyLCA2OSwgODAsIDY5LCA2NSwgODQsIDEyOCwgODIsIDY5LCA4MCwgNjksIDY1LCAyMTIsIDgyLCA2OSwgODAsIDY1LCAKLSAgICAxMjgsIDgyLCA2OSwgODAsIDE5MywgODIsIDY5LCA3OCwgODQsIDc5LCA3MSwgNjksIDc4LCAxMjgsIDgyLCA2OSwgNzgsIAotICAgIDEyOCwgODIsIDY5LCAyMDYsIDgyLCA2OSwgNzcsIDg1LCAxMjgsIDgyLCA2OSwgNzcsIDY5LCA2OCwgODksIDEyOCwgODIsIAotICAgIDY5LCA3NiwgNzMsIDcxLCA3MywgNzksIDc4LCAxMjgsIDgyLCA2OSwgNzYsIDczLCA2OSwgODYsIDY5LCAxOTYsIDgyLCA2OSwgCi0gICAgNzYsIDY5LCA2NSwgODMsIDY5LCAxMjgsIDgyLCA2OSwgNzYsIDY1LCA4NCwgNzMsIDc5LCA3OCwgNjUsIDIwNCwgODIsIDY5LCAKLSAgICA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgyLCA2OSwgNzYsIDY1LCA2NSwgMTI4LCA4MiwgNjksIDc0LCA2NSwgNzgsIAotICAgIDE5OSwgODIsIDY5LCA3MywgMTk2LCA4MiwgNjksIDcxLCA4NSwgNzYsIDg1LCA4MywgNDUsIDUyLCAxMjgsIDgyLCA2OSwgCi0gICAgNzEsIDg1LCA3NiwgODUsIDgzLCA0NSwgNTEsIDEyOCwgODIsIDY5LCA3MSwgODUsIDc2LCA4NSwgODMsIDQ1LCA1MCwgMTI4LCAKLSAgICA4MiwgNjksIDcxLCA4NSwgNzYsIDg1LCA4MywgMTI4LCA4MiwgNjksIDcxLCA4NSwgNzYsIDg1LCAyMTEsIDgyLCA2OSwgNzEsIAotICAgIDczLCA4MywgODQsIDY5LCA4MiwgNjksIDE5NiwgODIsIDY5LCA3MSwgNzMsIDc5LCA3OCwgNjUsIDIwNCwgODIsIDY5LCA3MSwgCi0gICAgNzMsIDY1LCA0NSwgNTAsIDEyOCwgODIsIDY5LCA3MSwgNzMsIDY1LCAxMjgsIDgyLCA2OSwgNzAsIDY5LCA4MiwgNjksIDc4LCAKKyAgICA4NiwgNzMsIDY1LCAyMDYsIDgzLCA3MiwgNjUsIDg2LCA2OSwgMTk2LCA4MywgNzIsIDY1LCA4NSwgMTI4LCA4MywgNzIsIAorICAgIDY1LCA4NCwgMTI4LCA4MywgNzIsIDY1LCA4MiwgODUsIDEyOCwgODMsIDcyLCA2NSwgODIsIDIxMywgODMsIDcyLCA2NSwgCisgICAgODIsIDgwLCAxMjgsIDgzLCA3MiwgNjUsIDgyLCAyMDgsIDgzLCA3MiwgNjUsIDgyLCA2NSwgMTI4LCA4MywgNzIsIDY1LCAKKyAgICA4MiwgNTAsIDEyOCwgODMsIDcyLCA2NSwgODIsIDE3OCwgODMsIDcyLCA2NSwgODAsIDczLCA3OCwgNzEsIDEyOCwgODMsIAorICAgIDcyLCA2NSwgODAsIDY5LCA4MywgMTI4LCA4MywgNzIsIDY1LCA4MCwgMTk3LCA4MywgNzIsIDY1LCA4MCwgMTI4LCA4MywgCisgICAgNzIsIDY1LCA3OCwgNzEsIDEyOCwgODMsIDcyLCA2NSwgNzgsIDEyOCwgODMsIDcyLCA2NSwgMjA2LCA4MywgNzIsIDY1LCAKKyAgICA3NywgODIsIDc5LCA2NywgNzUsIDEyOCwgODMsIDcyLCA2NSwgNzYsIDgzLCA3MiwgNjksIDc2LCA2OSwgODQsIDEyOCwgODMsIAorICAgIDcyLCA2NSwgNzUsIDg0LCA3MywgMTI4LCA4MywgNzIsIDY1LCA3MywgMTI4LCA4MywgNzIsIDY1LCA2OCwgNzksIDg3LCA2OSwgCisgICAgMTk2LCA4MywgNzIsIDY1LCA2OCwgNjksIDEyOCwgODMsIDcyLCA2NSwgNjgsIDY4LCA2NSwgMTI4LCA4MywgNzIsIDY1LCAKKyAgICA2OCwgNjgsIDE5MywgODMsIDcyLCA2NSwgNjgsIDEyOCwgODMsIDcyLCA2NSwgMTk2LCA4MywgNzIsIDY1LCA2NiwgNTQsIAorICAgIDEyOCwgODMsIDcyLCA2NSwgNjUsIDEyOCwgODMsIDcyLCA2NSwgNTQsIDEyOCwgODMsIDcyLCA2NSwgNTEsIDEyOCwgODMsIAorICAgIDcyLCA2NSwgMTc5LCA4MywgNzEsIDgyLCAxOTMsIDgzLCA3MSwgNzksIDIxMCwgODMsIDcxLCA2NywgMTI4LCA4MywgNzEsIAorICAgIDY1LCAyMTUsIDgzLCA3MSwgNjUsIDE5NCwgODMsIDcxLCAxMjgsIDgzLCA2OSwgODgsIDg0LCA4NSwgNzYsIDE5MywgODMsIAorICAgIDY5LCA4OCwgODQsIDczLCA3NiwgNjksIDEyOCwgODMsIDY5LCA4OCwgODQsIDY1LCA3OCwgMjExLCA4MywgNjksIDg2LCA2OSwgCisgICAgODIsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDgzLCA2OSwgODYsIDY5LCA3OCwgODQsIDg5LCAxMjgsIDgzLCA2OSwgODYsIDY5LCAKKyAgICA3OCwgODQsIDIxNywgODMsIDY5LCA4NiwgNjksIDc4LCA4NCwgNzIsIDEyOCwgODMsIDY5LCA4NiwgNjksIDc4LCA4NCwgNjksIAorICAgIDY5LCA3OCwgMTI4LCA4MywgNjksIDg2LCA2OSwgNzgsIDg0LCA2OSwgNjksIDIwNiwgODMsIDY5LCA4NiwgNjksIDc4LCA0NSwgCisgICAgODQsIDcyLCA3MywgODIsIDg0LCA4OSwgMTI4LCA4MywgNjksIDg2LCA2OSwgMjA2LCA4MywgNjksIDg1LCA4OCwgMTI4LCAKKyAgICA4MywgNjksIDg1LCA3OCwgODksIDY1LCA3NywgMTI4LCA4MywgNjksIDg1LCA2NSwgNjksIDgxLCAxMjgsIDgzLCA2OSwgODQsIAorICAgIDcwLCA3OSwgNzgsIDEyOCwgODMsIDY5LCA4MywgODQsIDY5LCA4MiwgODQsIDczLCA4NSwgMjExLCA4MywgNjksIDgzLCA4MSwgCisgICAgODUsIDczLCA4MSwgODUsIDY1LCA2OCwgODIsIDY1LCA4NCwgNjksIDEyOCwgODMsIDY5LCA4MywgNjUsIDc3LCAxOTcsIDgzLCAKKyAgICA2OSwgODIsIDg2LCA3MywgNjcsIDE5NywgODMsIDY5LCA4MiwgNzMsIDcwLCA4MywgMTI4LCA4MywgNjksIDgyLCA3MywgNzAsIAorICAgIDIxMSwgODMsIDY5LCA4MSwgODUsIDY5LCA3OCwgNjcsIDE5NywgODMsIDY5LCA4MCwgODQsIDY5LCA3NywgNjYsIDY5LCA4MiwgCisgICAgMTI4LCA4MywgNjksIDgwLCA2NSwgODIsIDY1LCA4NCwgNzksIDgyLCAxMjgsIDgzLCA2OSwgODAsIDY1LCA4MiwgNjUsIDg0LCAKKyAgICA3OSwgMjEwLCA4MywgNjksIDc4LCA4NCwgNzksIDEyOCwgODMsIDY5LCA3OCwgODQsIDczLCAxMjgsIDgzLCA2OSwgNzcsIAorICAgIDg1LCA3OCwgNjcsIDczLCAxOTMsIDgzLCA2OSwgNzcsIDc1LCA2NSwgODQsIDcyLCAxMjgsIDgzLCA2OSwgNzcsIDc1LCAKKyAgICAxMjgsIDgzLCA2OSwgNzcsIDczLCA4NiwgNzksIDg3LCA2OSwgMjA0LCA4MywgNjksIDc3LCA3MywgODMsIDc5LCA3MCwgCisgICAgMjEyLCA4MywgNjksIDc3LCA3MywgODMsIDY5LCA4OCwgODQsIDczLCA3NiwgNjksIDEyOCwgODMsIDY5LCA3NywgNzMsIDc3LCAKKyAgICA3MywgNzgsIDczLCA3NywgMTkzLCA4MywgNjksIDc3LCA3MywgNjgsIDczLCA4MiwgNjksIDY3LCAyMTIsIDgzLCA2OSwgNzcsIAorICAgIDczLCA2NywgNzksIDc2LCA3OSwgNzgsIDEyOCwgODMsIDY5LCA3NywgNzMsIDY3LCA3OSwgNzYsIDc5LCAyMDYsIDgzLCA2OSwgCisgICAgNzcsIDczLCA2NywgNzMsIDgyLCA2NywgODUsIDc2LCA2NSwgMjEwLCA4MywgNjksIDc3LCA3MywgNjcsIDczLCA4MiwgNjcsIAorICAgIDc2LCAxOTcsIDgzLCA2OSwgNzcsIDczLCA2NiwgODIsIDY5LCA4NiwgNzMsIDIxMSwgODMsIDY5LCA3NywgNzMsIDQ1LCA4NiwgCisgICAgNzksIDczLCA2NywgNjksIDE5NiwgODMsIDY5LCA3NiwgNzAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKKyAgICA0NSwgNTcsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU3LCA1NiwgMTI4LCA4MywgNjksIAorICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NywgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKKyAgICA0NSwgNTcsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU3LCA1MywgMTI4LCA4MywgNjksIAorICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NywgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKKyAgICA0NSwgNTcsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU3LCA1MCwgMTI4LCA4MywgNjksIAorICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NywgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKKyAgICA0NSwgNTcsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIAorICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU2LCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKKyAgICA1NiwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTYsIDU1LCAxMjgsIDgzLCA2OSwgNzYsIAorICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU2LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKKyAgICA1NiwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTYsIDUyLCAxMjgsIDgzLCA2OSwgNzYsIAorICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU2LCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKKyAgICA1NiwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTYsIDQ5LCAxMjgsIDgzLCA2OSwgNzYsIAorICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU2LCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKKyAgICA1NiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NSwgNTcsIDEyOCwgODMsIDY5LCA3NiwgNjksIAorICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTUsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU1LCAKKyAgICA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NSwgNTQsIDEyOCwgODMsIDY5LCA3NiwgNjksIAorICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTUsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU1LCAKKyAgICA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NSwgNTEsIDEyOCwgODMsIDY5LCA3NiwgNjksIAorICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTUsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU1LCAKKyAgICA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1NSwgNDgsIDEyOCwgODMsIDY5LCA3NiwgNjksIAorICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTQsIDU3LCAKKyAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU0LCA1NiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAorICAgIDg0LCA3OSwgODIsIDQ1LCA1NCwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTQsIDU0LCAKKyAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU0LCA1MywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAorICAgIDg0LCA3OSwgODIsIDQ1LCA1NCwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTQsIDUxLCAKKyAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU0LCA1MCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAorICAgIDg0LCA3OSwgODIsIDQ1LCA1NCwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTQsIDQ4LCAKKyAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAorICAgIDc5LCA4MiwgNDUsIDUzLCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MywgNTYsIDEyOCwgCisgICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTMsIDU1LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAorICAgIDc5LCA4MiwgNDUsIDUzLCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MywgNTMsIDEyOCwgCisgICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTMsIDUyLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAorICAgIDc5LCA4MiwgNDUsIDUzLCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MywgNTAsIDEyOCwgCisgICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTMsIDQ5LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAorICAgIDc5LCA4MiwgNDUsIDUzLCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MywgMTI4LCA4MywgCisgICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MiwgNTcsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAorICAgIDgyLCA0NSwgNTIsIDU2LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUyLCA1NSwgMTI4LCA4MywgCisgICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MiwgNTQsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAorICAgIDgyLCA0NSwgNTIsIDUzLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUyLCA1MiwgMTI4LCA4MywgCisgICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MiwgNTEsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAorICAgIDgyLCA0NSwgNTIsIDUwLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUyLCA0OSwgMTI4LCA4MywgCisgICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MiwgNDgsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAorICAgIDgyLCA0NSwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTEsIDU3LCAxMjgsIDgzLCA2OSwgCisgICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUxLCA1NiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAorICAgIDQ1LCA1MSwgNTUsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTEsIDU0LCAxMjgsIDgzLCA2OSwgCisgICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUxLCA1MywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAorICAgIDQ1LCA1MSwgNTIsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTEsIDUxLCAxMjgsIDgzLCA2OSwgCisgICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUxLCA1MCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAorICAgIDQ1LCA1MSwgNDksIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTEsIDQ4LCAxMjgsIDgzLCA2OSwgCisgICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAorICAgIDUwLCA1NywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTYsIDEyOCwgODMsIDY5LCA3NiwgCisgICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDU1LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAorICAgIDUwLCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTMsIDU0LCAxMjgsIDgzLCA2OSwgCisgICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MywgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAorICAgIDgyLCA0NSwgNTAsIDUzLCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTMsIDUxLCAKKyAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MywgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIAorICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUzLCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKKyAgICA1MCwgNTMsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MywgMTI4LCA4MywgNjksIAorICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTIsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCAKKyAgICA4MiwgNDUsIDUwLCA1MiwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUyLCA1NSwgCisgICAgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTIsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCAKKyAgICA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MiwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgCisgICAgNTAsIDUyLCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTIsIDUxLCAxMjgsIDgzLCAKKyAgICA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MiwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgCisgICAgNzksIDgyLCA0NSwgNTAsIDUyLCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTIsIAorICAgIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgCisgICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTEsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAorICAgIDUwLCA1MSwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUxLCA1NSwgMTI4LCA4MywgCisgICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTEsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAorICAgIDc5LCA4MiwgNDUsIDUwLCA1MSwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUxLCAKKyAgICA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTEsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIAorICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MSwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKKyAgICA0NSwgNTAsIDUxLCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTEsIDQ4LCAxMjgsIAorICAgIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCAKKyAgICA3OSwgODIsIDQ1LCA1MCwgNTAsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MCwgCisgICAgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUwLCA1NSwgMTI4LCA4MywgNjksIDc2LCAKKyAgICA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTAsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgCisgICAgNDUsIDUwLCA1MCwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDUwLCA1MiwgMTI4LCAKKyAgICA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTAsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgCisgICAgODQsIDc5LCA4MiwgNDUsIDUwLCA1MCwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIAorICAgIDUwLCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNTAsIDQ4LCAxMjgsIDgzLCA2OSwgCisgICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA1MCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAorICAgIDQ1LCA1MCwgNDksIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OSwgNTYsIDEyOCwgCisgICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ5LCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAorICAgIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDksIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCAKKyAgICA0OSwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ5LCA1MiwgMTI4LCA4MywgNjksIAorICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDksIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCAKKyAgICA4MiwgNDUsIDUwLCA0OSwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ5LCA0OSwgCisgICAgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDksIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCAKKyAgICA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgCisgICAgNDgsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OCwgNTYsIDEyOCwgODMsIDY5LCAKKyAgICA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ4LCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgCisgICAgODIsIDQ1LCA1MCwgNDgsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDUwLCA0OCwgNTMsIAorICAgIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ4LCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgCisgICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDgsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAorICAgIDUwLCA0OCwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNTAsIDQ4LCA0OSwgMTI4LCA4MywgCisgICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgNDgsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAorICAgIDc5LCA4MiwgNDUsIDUwLCA0OCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA1MCwgMTI4LCA4MywgCisgICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTcsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAorICAgIDc5LCA4MiwgNDUsIDQ5LCA1NywgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU3LCAKKyAgICA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTcsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIAorICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NywgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKKyAgICA0NSwgNDksIDU3LCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTcsIDUxLCAxMjgsIAorICAgIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NywgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCAKKyAgICA4NCwgNzksIDgyLCA0NSwgNDksIDU3LCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgCisgICAgNTcsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NywgMTI4LCA4MywgNjksIDc2LCAKKyAgICA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTYsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgCisgICAgNDUsIDQ5LCA1NiwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU2LCA1NSwgMTI4LCAKKyAgICA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTYsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgCisgICAgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NiwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIAorICAgIDU2LCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTYsIDUxLCAxMjgsIDgzLCA2OSwgCisgICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NiwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAorICAgIDgyLCA0NSwgNDksIDU2LCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTYsIDQ4LCAKKyAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAorICAgIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTUsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCAKKyAgICA1NSwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU1LCA1NSwgMTI4LCA4MywgNjksIAorICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTUsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCAKKyAgICA4MiwgNDUsIDQ5LCA1NSwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU1LCA1MiwgCisgICAgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTUsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCAKKyAgICA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NSwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgCisgICAgNDksIDU1LCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTUsIDQ4LCAxMjgsIDgzLCAKKyAgICA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgCisgICAgODIsIDQ1LCA0OSwgNTQsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NCwgNTYsIAorICAgIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU0LCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgCisgICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTQsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAorICAgIDQ5LCA1NCwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU0LCA1MiwgMTI4LCA4MywgCisgICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTQsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAorICAgIDc5LCA4MiwgNDUsIDQ5LCA1NCwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDU0LCAKKyAgICA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTQsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIAorICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1NCwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKKyAgICA0OSwgNTMsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MywgNTYsIDEyOCwgODMsIAorICAgIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUzLCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCAKKyAgICA3OSwgODIsIDQ1LCA0OSwgNTMsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MywgCisgICAgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUzLCA1MiwgMTI4LCA4MywgNjksIDc2LCAKKyAgICA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTMsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgCisgICAgNDUsIDQ5LCA1MywgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUzLCA0OSwgMTI4LCAKKyAgICA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTMsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgCisgICAgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MywgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTIsIAorICAgIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MiwgNTYsIDEyOCwgODMsIDY5LCA3NiwgCisgICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUyLCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAorICAgIDQ1LCA0OSwgNTIsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MiwgNTMsIDEyOCwgCisgICAgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUyLCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIAorICAgIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTIsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCAKKyAgICA1MiwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUyLCA0OSwgMTI4LCA4MywgNjksIAorICAgIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTIsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCAKKyAgICA4MiwgNDUsIDQ5LCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTEsIDU3LCAxMjgsIAorICAgIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MSwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCAKKyAgICA4NCwgNzksIDgyLCA0NSwgNDksIDUxLCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgCisgICAgNTEsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MSwgNTMsIDEyOCwgODMsIDY5LCAKKyAgICA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUxLCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgCisgICAgODIsIDQ1LCA0OSwgNTEsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MSwgNTAsIAorICAgIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUxLCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgCisgICAgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTEsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIAorICAgIDQ5LCA1MSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTAsIDU3LCAxMjgsIDgzLCA2OSwgCisgICAgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MCwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIAorICAgIDgyLCA0NSwgNDksIDUwLCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNTAsIDU0LCAKKyAgICAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MCwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIAorICAgIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUwLCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCAKKyAgICA0OSwgNTAsIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MCwgNTAsIDEyOCwgODMsIAorICAgIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDUwLCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCAKKyAgICA3OSwgODIsIDQ1LCA0OSwgNTAsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA1MCwgCisgICAgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDksIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCAKKyAgICA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OSwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgCisgICAgNDksIDQ5LCA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDksIDU0LCAxMjgsIDgzLCAKKyAgICA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OSwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgCisgICAgNzksIDgyLCA0NSwgNDksIDQ5LCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDksIAorICAgIDUxLCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OSwgNTAsIDEyOCwgODMsIDY5LCA3NiwgCisgICAgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDQ5LCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIAorICAgIDQ1LCA0OSwgNDksIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OSwgMTI4LCA4MywgCisgICAgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDgsIDU3LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIAorICAgIDc5LCA4MiwgNDUsIDQ5LCA0OCwgNTYsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCA0NSwgNDksIDQ4LCAKKyAgICA1NSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDgsIDU0LCAxMjgsIDgzLCA2OSwgNzYsIAorICAgIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OCwgNTMsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCA4NCwgNzksIDgyLCAKKyAgICA0NSwgNDksIDQ4LCA1MiwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgNDgsIDUxLCAxMjgsIAorICAgIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OCwgNTAsIDEyOCwgODMsIDY5LCA3NiwgNjksIDY3LCAKKyAgICA4NCwgNzksIDgyLCA0NSwgNDksIDQ4LCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgCisgICAgNDgsIDQ4LCAxMjgsIDgzLCA2OSwgNzYsIDY5LCA2NywgODQsIDc5LCA4MiwgNDUsIDQ5LCA0OCwgMTI4LCA4MywgNjksIDc2LCAKKyAgICA2OSwgNjcsIDg0LCA3OSwgODIsIDQ1LCA0OSwgMTI4LCA4MywgNjksIDc2LCA2OSwgNjcsIDg0LCA3OSwgMjEwLCA4MywgNjksIAorICAgIDc2LCA2OSwgNjcsIDg0LCA2OSwgMTk2LCA4MywgNjksIDczLCA4MywgNzcsIDY1LCAxMjgsIDgzLCA2OSwgNzMsIDgzLCA3NywgCisgICAgMTkzLCA4MywgNjksIDcyLCAxMjgsIDgzLCA2OSwgNzEsIDc5LCA3NiwgMTI4LCA4MywgNjksIDcxLCA3OCwgNzksIDEyOCwgCisgICAgODMsIDY5LCA3MSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgODMsIDY5LCA2OSwgNzgsIDg1LCAxMjgsIDgzLCA2OSwgNjksIDc4LCAKKyAgICAxMjgsIDgzLCA2OSwgNjksIDIwNiwgODMsIDY5LCA2OSwgNjgsIDc2LCA3MywgNzgsIDcxLCAxMjgsIDgzLCA2OSwgNjksIAorICAgIDQ1LCA3OCwgNzksIDQ1LCA2OSwgODYsIDczLCAyMDQsIDgzLCA2OSwgNjcsIDg0LCA3OSwgODIsIDEyOCwgODMsIDY5LCA2NywgCisgICAgODQsIDczLCA3OSwgNzgsIDEyOCwgODMsIDY5LCA2NywgODQsIDczLCA3OSwgMjA2LCA4MywgNjksIDY3LCA4MiwgNjksIDg0LCAKKyAgICAxMjgsIDgzLCA2OSwgNjcsIDc5LCA3OCwgNjgsIDEyOCwgODMsIDY5LCA2NiwgNjUsIDg0LCA2NiwgNjksIDczLCAyMTIsIAorICAgIDgzLCA2OSwgNjUsIDg0LCAxMjgsIDgzLCA2OSwgNjUsIDc2LCAxMjgsIDgzLCA2OSwgNjUsIDcxLCA4NSwgNzYsIDIwNCwgCisgICAgODMsIDY4LCA3OSwgNzgsIDE5OSwgODMsIDY4LCAxMjgsIDgzLCA2NywgODcsIDY1LCAxMjgsIDgzLCA2NywgODIsIDg1LCAKKyAgICA4MCwgNzYsIDY5LCAxMjgsIDgzLCA2NywgODIsIDc5LCA3NiwgNzYsIDEyOCwgODMsIDY3LCA4MiwgNzMsIDgwLCA4NCwgCisgICAgMTI4LCA4MywgNjcsIDgyLCA2OSwgNjksIDc4LCAxMjgsIDgzLCA2NywgODIsIDY5LCA2OSwgMjA2LCA4MywgNjcsIDgyLCAKKyAgICA2OSwgNjUsIDc3LCA3MywgNzgsIDE5OSwgODMsIDY3LCA3OSwgODIsIDgwLCA3MywgODUsIDgzLCAxMjgsIDgzLCA2NywgNzksIAorICAgIDgyLCA2OSwgMTI4LCA4MywgNjcsIDczLCA4MywgODMsIDc5LCA4MiwgODMsIDEyOCwgODMsIDY3LCA3MywgMTI4LCA4MywgCisgICAgNjcsIDcyLCA4NywgNjUsIDEyOCwgODMsIDY3LCA3MiwgODcsIDE5MywgODMsIDY3LCA3MiwgODIsIDc5LCA2OSwgNjgsIDY5LCAKKyAgICA4MiwgMTI4LCA4MywgNjcsIDcyLCA3OSwgNzksIDc2LCAxMjgsIDgzLCA2NywgNzIsIDc5LCA3OSwgMjA0LCA4MywgNjcsIAorICAgIDcyLCA3OSwgNzYsIDY1LCA4MiwgMTI4LCA4MywgNjcsIDcyLCA2OSwgNzcsIDE5MywgODMsIDY3LCA2OSwgODAsIDg0LCA2OSwgCisgICAgMjEwLCA4MywgNjcsIDY1LCA3OCwgNjgsIDczLCA2NywgODUsIDgzLCAxMjgsIDgzLCA2NywgNjUsIDc4LCA2OCwgNzMsIDY3LCAKKyAgICA4NSwgMjExLCA4MywgNjcsIDY1LCAyMDYsIDgzLCA2NywgNjUsIDc2LCA2OSwgODMsIDEyOCwgODMsIDY2LCA4NSwgMTk0LCAKKyAgICA4MywgNjYsIDgyLCA4NSwgMjA0LCA4MywgNjUsIDg5LCA3MywgODMsIDIwMSwgODMsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIAorICAgIDEyOCwgODMsIDY1LCA4OSwgMTI4LCA4MywgNjUsIDg4LCA3OSwgODAsIDcyLCA3OSwgNzgsIDY5LCAxMjgsIDgzLCA2NSwgCisgICAgODgsIDczLCA3NywgNjUsIDg0LCA2NSwgMTI4LCA4MywgNjUsIDg3LCA2NSwgNzgsIDEyOCwgODMsIDY1LCA4NywgMTI4LCAKKyAgICA4MywgNjUsIDg2LCA3OSwgODUsIDgyLCA3MywgNzgsIDE5OSwgODMsIDY1LCA4NSwgNzMsIDc2LCAxMjgsIDgzLCA2NSwgODQsIAorICAgIDg1LCA4MiwgNzgsIDEyOCwgODMsIDY1LCA4NCwgNzUsIDY1LCA2NSwgNzgsIDc1LCA4NSwgODUsIDEyOCwgODMsIDY1LCA4NCwgCisgICAgNzUsIDY1LCA2NSwgNzgsIDEyOCwgODMsIDY1LCA4NCwgNjksIDc2LCA3NiwgNzMsIDg0LCAxOTcsIDgzLCA2NSwgODQsIDY3LCAKKyAgICA3MiwgNjksIDc2LCAxMjgsIDgzLCA2NSwgODQsIDY1LCA3OCwgNzEsIDY1LCAxMjgsIDgzLCA2NSwgODMsIDcyLCAxMjgsIAorICAgIDgzLCA2NSwgODMsIDY1LCA3NSwgMTI4LCA4MywgNjUsIDgyLCA3MywgMTI4LCA4MywgNjUsIDgyLCAxOTMsIDgzLCA2NSwgCisgICAgODIsIDEyOCwgODMsIDY1LCA4MSwgMTI4LCA4MywgNjUsIDgwLCA2NSwgMTI4LCA4MywgNjUsIDc4LCA4OSwgNzksIDc5LCAKKyAgICA3MSwgMTkzLCA4MywgNjUsIDc4LCA4OSwgNjUsIDc1LCAxOTMsIDgzLCA2NSwgNzgsIDg0LCA3MywgNzMsIDc3LCA4NSwgCisgICAgMTI4LCA4MywgNjUsIDc4LCA3OCwgODksIDY1LCAxMjgsIDgzLCA2NSwgNzgsIDcxLCA2NSwgNTAsIDEyOCwgODMsIDY1LCAKKyAgICA3OCwgNjgsIDY1LCA3NiwgMTI4LCA4MywgNjUsIDc4LCA2NSwgNzIsIDEyOCwgODMsIDY1LCA3OCwgMTI4LCA4MywgNjUsIAorICAgIDc3LCA4OSwgNzksIDIwMywgODMsIDY1LCA3NywgODYsIDY1LCA4NCwgMTI4LCA4MywgNjUsIDc3LCA4MCwgNzMsIDEyOCwgCisgICAgODMsIDY1LCA3NywgODAsIDcyLCA2NSwgNzksIDEyOCwgODMsIDY1LCA3NywgNzUsIDY1LCAxMjgsIDgzLCA2NSwgNzcsIDY5LCAKKyAgICA3NSwgNzIsIDEyOCwgODMsIDY1LCA3NywgNjksIDc1LCAyMDAsIDgzLCA2NSwgNzcsIDY2LCA2NSwgMTI4LCA4MywgNjUsIAorICAgIDc3LCA2NSwgODIsIDczLCA4NCwgNjUsIDIwNiwgODMsIDY1LCA3NywgMTI4LCA4MywgNjUsIDc2LCA4NCwgNzMsIDgyLCA2OSwgCisgICAgMTI4LCA4MywgNjUsIDc2LCA4NCwgNzMsIDc2LCA3NiwgNzksIDEyOCwgODMsIDY1LCA3NiwgODQsIDQ1LCA1MCwgMTI4LCAKKyAgICA4MywgNjUsIDc2LCA4NCwgMTI4LCA4MywgNjUsIDc2LCAyMTIsIDgzLCA2NSwgNzYsIDc2LCA2NSwgNzYsIDc2LCA2NSwgNzIsIAorICAgIDc5LCAyMTMsIDgzLCA2NSwgNzYsIDc2LCAxOTMsIDgzLCA2NSwgNzYsIDY1LCAyMDUsIDgzLCA2NSwgNzYsIDY1LCAxMjgsIAorICAgIDgzLCA2NSwgNzYsIDQ1LCA2NSwgNzcsIDc3LCA3OSwgNzgsIDczLCA2NSwgNjcsIDEyOCwgODMsIDY1LCA3NiwgMTI4LCA4MywgCisgICAgNjUsIDc1LCA3OSwgODQsIDEyOCwgODMsIDY1LCA3NSwgNjksIDg1LCA2NSwgNjksIDEyOCwgODMsIDY1LCA3NSwgMTk3LCAKKyAgICA4MywgNjUsIDc0LCA2OCwgNjUsIDcyLCAxMjgsIDgzLCA2NSwgNzMsIDc2LCA2NiwgNzksIDY1LCA4NCwgMTI4LCA4MywgNjUsIAorICAgIDczLCA3NiwgMTI4LCA4MywgNjUsIDczLCA3NSwgODUsIDgyLCA4NSwgMTI4LCA4MywgNjUsIDcyLCAxMjgsIDgzLCA2NSwgCisgICAgNzEsIDczLCA4NCwgODQsIDY1LCA4MiwgNzMsIDg1LCA4MywgMTI4LCA4MywgNjUsIDcxLCA2NSwgMTI4LCA4MywgNjUsIDcxLCAKKyAgICAxMjgsIDgzLCA2NSwgMTk5LCA4MywgNjUsIDcwLCA3MiwgNjUsIDEyOCwgODMsIDY1LCA2OCwgNzIsIDY5LCAxMjgsIDgzLCAKKyAgICA2NSwgNjgsIDY5LCAxMjgsIDgzLCA2NSwgNjgsIDEyOCwgODMsIDY1LCAxOTYsIDgzLCA2NSwgNjcsIDgyLCA3MywgNzAsIAorICAgIDczLCA2NywgNzMsIDY1LCAyMDQsIDgzLCA2NSwgNjUsIDczLCAxMjgsIDgzLCA2NSwgNjUsIDY4LCA3MiwgODUsIDEyOCwgCisgICAgODMsIDY1LCA0NSwgNzMsIDEyOCwgODMsIDY1LCA0NSwgNTAsIDEyOCwgODMsIDQ4LCA1MiwgNTQsIDEyOCwgODMsIDQ4LCAKKyAgICA1MiwgNTMsIDEyOCwgODMsIDQ4LCA1MiwgNTIsIDEyOCwgODMsIDQ4LCA1MiwgNTEsIDEyOCwgODMsIDQ4LCA1MiwgNTAsIAorICAgIDEyOCwgODMsIDQ4LCA1MiwgNDksIDEyOCwgODMsIDQ4LCA1MiwgNDgsIDEyOCwgODMsIDQ4LCA1MSwgNTcsIDEyOCwgODMsIAorICAgIDQ4LCA1MSwgNTYsIDEyOCwgODMsIDQ4LCA1MSwgNTUsIDEyOCwgODMsIDQ4LCA1MSwgNTQsIDEyOCwgODMsIDQ4LCA1MSwgCisgICAgNTMsIDY1LCAxMjgsIDgzLCA0OCwgNTEsIDUzLCAxMjgsIDgzLCA0OCwgNTEsIDUyLCAxMjgsIDgzLCA0OCwgNTEsIDUxLCAKKyAgICAxMjgsIDgzLCA0OCwgNTEsIDUwLCAxMjgsIDgzLCA0OCwgNTEsIDQ5LCAxMjgsIDgzLCA0OCwgNTEsIDQ4LCAxMjgsIDgzLCAKKyAgICA0OCwgNTAsIDU3LCAxMjgsIDgzLCA0OCwgNTAsIDU2LCAxMjgsIDgzLCA0OCwgNTAsIDU1LCAxMjgsIDgzLCA0OCwgNTAsIAorICAgIDU0LCA2NiwgMTI4LCA4MywgNDgsIDUwLCA1NCwgNjUsIDEyOCwgODMsIDQ4LCA1MCwgNTQsIDEyOCwgODMsIDQ4LCA1MCwgCisgICAgNTMsIDEyOCwgODMsIDQ4LCA1MCwgNTIsIDEyOCwgODMsIDQ4LCA1MCwgNTEsIDEyOCwgODMsIDQ4LCA1MCwgNTAsIDEyOCwgCisgICAgODMsIDQ4LCA1MCwgNDksIDEyOCwgODMsIDQ4LCA1MCwgNDgsIDEyOCwgODMsIDQ4LCA0OSwgNTcsIDEyOCwgODMsIDQ4LCAKKyAgICA0OSwgNTYsIDEyOCwgODMsIDQ4LCA0OSwgNTUsIDY1LCAxMjgsIDgzLCA0OCwgNDksIDU1LCAxMjgsIDgzLCA0OCwgNDksIAorICAgIDU0LCAxMjgsIDgzLCA0OCwgNDksIDUzLCAxMjgsIDgzLCA0OCwgNDksIDUyLCA2NiwgMTI4LCA4MywgNDgsIDQ5LCA1MiwgCisgICAgNjUsIDEyOCwgODMsIDQ4LCA0OSwgNTIsIDEyOCwgODMsIDQ4LCA0OSwgNTEsIDEyOCwgODMsIDQ4LCA0OSwgNTAsIDEyOCwgCisgICAgODMsIDQ4LCA0OSwgNDksIDEyOCwgODMsIDQ4LCA0OSwgNDgsIDEyOCwgODMsIDQ4LCA0OCwgNTcsIDEyOCwgODMsIDQ4LCAKKyAgICA0OCwgNTYsIDEyOCwgODMsIDQ4LCA0OCwgNTUsIDEyOCwgODMsIDQ4LCA0OCwgNTQsIDY1LCAxMjgsIDgzLCA0OCwgNDgsIAorICAgIDU0LCAxMjgsIDgzLCA0OCwgNDgsIDUzLCAxMjgsIDgzLCA0OCwgNDgsIDUyLCAxMjgsIDgzLCA0OCwgNDgsIDUxLCAxMjgsIAorICAgIDgzLCA0OCwgNDgsIDUwLCA2NSwgMTI4LCA4MywgNDgsIDQ4LCA1MCwgMTI4LCA4MywgNDgsIDQ4LCA0OSwgMTI4LCA4MywgCisgICAgNDUsIDg3LCAxMjgsIDgzLCA0NSwgODMsIDcyLCA2NSwgODAsIDY5LCAxOTYsIDgyLCA4OSwgODksIDEyOCwgODIsIDg5LCAKKyAgICA4OCwgMTI4LCA4MiwgODksIDg0LCAxMjgsIDgyLCA4OSwgODIsIDg4LCAxMjgsIDgyLCA4OSwgODIsIDEyOCwgODIsIDg5LCAKKyAgICA4MCwgMTI4LCA4MiwgODcsIDc5LCA3OSwgMTI4LCA4MiwgODcsIDc5LCAxMjgsIDgyLCA4NywgNzMsIDczLCAxMjgsIDgyLCAKKyAgICA4NywgNzMsIDEyOCwgODIsIDg3LCA2OSwgNjksIDEyOCwgODIsIDg3LCA2OSwgMTI4LCA4MiwgODcsIDY1LCA3MiwgNjUsIAorICAgIDEyOCwgODIsIDg3LCA2NSwgNjUsIDEyOCwgODIsIDg3LCA2NSwgMTI4LCA4MiwgODUsIDg4LCAxMjgsIDgyLCA4NSwgODUsIAorICAgIDY2LCA4NSwgODIsIDg1LCAxMjgsIDgyLCA4NSwgODUsIDEyOCwgODIsIDg1LCA4NCwgMTI4LCA4MiwgODUsIDgzLCA3MywgCisgICAgMTI4LCA4MiwgODUsIDgyLCA4OCwgMTI4LCA4MiwgODUsIDgyLCAxMjgsIDgyLCA4NSwgODAsIDczLCA3MywgMTI4LCA4MiwgCisgICAgODUsIDgwLCA2OSwgMTk3LCA4MiwgODUsIDgwLCAxMjgsIDgyLCA4NSwgNzksIDg4LCAxMjgsIDgyLCA4NSwgNzksIDgwLCAKKyAgICAxMjgsIDgyLCA4NSwgNzksIDEyOCwgODIsIDg1LCA3OCwgNzksIDg1LCA4NCwgMTI4LCA4MiwgODUsIDc4LCA3OCwgNzMsIAorICAgIDc4LCAxOTksIDgyLCA4NSwgNzgsIDc4LCA2OSwgODIsIDEyOCwgODIsIDg1LCA3OCwgMTI4LCA4MiwgODUsIDc3LCAyMDEsIAorICAgIDgyLCA4NSwgNzcsIDY1LCAyMDEsIDgyLCA4NSwgNzcsIDEyOCwgODIsIDg1LCAyMDUsIDgyLCA4NSwgNzYsIDY5LCA4MiwgCisgICAgMTI4LCA4MiwgODUsIDc2LCA2OSwgNDUsIDY4LCA2OSwgNzYsIDY1LCA4OSwgNjksIDY4LCAxMjgsIDgyLCA4NSwgNzYsIDY5LCAKKyAgICAxMjgsIDgyLCA4NSwgNzUsIDc1LCA2NSwgNzUsIDcyLCA2NSwgMTI4LCA4MiwgODUsIDczLCA4MywgMTI4LCA4MiwgODUsIAorICAgIDcxLCA2NiwgMjE3LCA4MiwgODUsIDE5NCwgODIsIDg1LCA2NSwgMTI4LCA4MiwgODQsIDcyLCA2NSwgNzgsIDE5OSwgODIsIAorICAgIDg0LCA2NSwgNzEsIDgzLCAxMjgsIDgyLCA4NCwgNjUsIDcxLCAyMTEsIDgyLCA4MiwgODksIDg4LCAxMjgsIDgyLCA4MiwgCisgICAgODksIDg0LCAxMjgsIDgyLCA4MiwgODksIDgyLCA4OCwgMTI4LCA4MiwgODIsIDg5LCA4MiwgMTI4LCA4MiwgODIsIDg5LCAKKyAgICA4MCwgMTI4LCA4MiwgODIsIDg1LCA4OCwgMTI4LCA4MiwgODIsIDg1LCA4NSwgMTI4LCA4MiwgODIsIDg1LCA4NCwgMTI4LCAKKyAgICA4MiwgODIsIDg1LCA4MiwgODgsIDEyOCwgODIsIDgyLCA4NSwgODIsIDEyOCwgODIsIDgyLCA4NSwgODAsIDEyOCwgODIsIAorICAgIDgyLCA4NSwgNzksIDg4LCAxMjgsIDgyLCA4MiwgODUsIDc5LCAxMjgsIDgyLCA4MiwgODUsIDEyOCwgODIsIDgyLCA3OSwgCisgICAgODgsIDEyOCwgODIsIDgyLCA3OSwgODQsIDEyOCwgODIsIDgyLCA3OSwgODAsIDEyOCwgODIsIDgyLCA3OSwgNzksIDEyOCwgCisgICAgODIsIDgyLCA3OSwgMTI4LCA4MiwgODIsIDczLCA3MywgMTI4LCA4MiwgODIsIDczLCAxMjgsIDgyLCA4MiwgNjksIDg4LCAKKyAgICAxMjgsIDgyLCA4MiwgNjksIDg0LCAxMjgsIDgyLCA4MiwgNjksIDgwLCAxMjgsIDgyLCA4MiwgNjksIDcyLCAxMjgsIDgyLCAKKyAgICA4MiwgNjksIDIwMCwgODIsIDgyLCA2OSwgNjksIDEyOCwgODIsIDgyLCA2OSwgMTI4LCA4MiwgODIsIDY1LCA4OCwgMTI4LCAKKyAgICA4MiwgODIsIDY1LCA4NSwgMTI4LCA4MiwgODIsIDY1LCA3MywgMTI4LCA4MiwgODIsIDY1LCA2NSwgMTI4LCA4MiwgODIsIAorICAgIDY1LCAxMjgsIDgyLCA3OSwgODcsIDY2LCA3OSwgNjUsIDg0LCAxMjgsIDgyLCA3OSwgODUsIDc4LCA2OCwgNjksIDE5NiwgCisgICAgODIsIDc5LCA4NSwgNzgsIDY4LCA0NSwgODQsIDczLCA4MCwgODAsIDY5LCAxOTYsIDgyLCA3OSwgODQsIDg1LCA3OCwgNjgsIAorICAgIDY1LCAxMjgsIDgyLCA3OSwgODQsIDY1LCA4NCwgNjksIDE5NiwgODIsIDc5LCA4MywgNzIsIDEyOCwgODIsIDc5LCA4MywgCisgICAgNjksIDg0LCA4NCwgNjksIDEyOCwgODIsIDc5LCA4MywgNjksIDEyOCwgODIsIDc5LCA3OSwgODQsIDEyOCwgODIsIDc5LCAKKyAgICA3OSwgODMsIDg0LCA2OSwgODIsIDEyOCwgODIsIDc5LCA3OSwgNzUsIDEyOCwgODIsIDc5LCA3OSwgNzAsIDEyOCwgODIsIAorICAgIDc5LCA3NywgNjUsIDIwNiwgODIsIDc5LCA3NywgMTI4LCA4MiwgNzksIDc2LCA3NiwgNjksIDIxMCwgODIsIDc5LCA3MiwgCisgICAgNzMsIDc4LCA3MSwgODksIDE5MywgODIsIDc5LCAxOTYsIDgyLCA3OSwgNjcsIDc1LCA2OSwgODQsIDEyOCwgODIsIDc5LCAKKyAgICA2NywgMjAzLCA4MiwgNzksIDY3LCAxMjgsIDgyLCA3OSwgNjYsIDY1LCA4NCwgMTI4LCA4MiwgNzksIDY1LCA4MywgODQsIAorICAgIDY5LCAxOTYsIDgyLCA3OSwgNjUsIDgyLCAxMjgsIDgyLCA3OSwgNjUsIDEyOCwgODIsIDc4LCA4OSwgNzMsIDc4LCAxOTksIAorICAgIDgyLCA3OCwgNzksIDc5LCA3OCwgMTI4LCA4MiwgNzgsIDc5LCA3OSwgMjA2LCA4MiwgNzgsIDY1LCAyMDUsIDgyLCA3NywgCisgICAgODQsIDEyOCwgODIsIDc2LCA3OSwgMTI4LCA4MiwgNzYsIDc3LCAxMjgsIDgyLCA3NiwgNjksIDEyOCwgODIsIDc0LCA2OSwgCisgICAgMjExLCA4MiwgNzQsIDY5LCAxMjgsIDgyLCA3NCwgMTk3LCA4MiwgNzMsIDg2LCA2OSwgODIsIDEyOCwgODIsIDczLCA4NCwgCisgICAgODUsIDY1LCA3NiwgMTI4LCA4MiwgNzMsIDg0LCA4NCwgNzksIDgyLCA4NSwgMTI4LCA4MiwgNzMsIDg0LCA4MywgNzMsIAorICAgIDEyOCwgODIsIDczLCA4MywgNzMsIDc4LCAxOTksIDgyLCA3MywgODMsIDcyLCAxMjgsIDgyLCA3MywgODIsIDY1LCAxMjgsIAorICAgIDgyLCA3MywgODAsIDEyOCwgODIsIDczLCA3OCwgNzEsIDIxMSwgODIsIDczLCA3OCwgNzAsIDc5LCA4MiwgOTAsIDY1LCA3OCwgCisgICAgNjgsIDc5LCAxMjgsIDgyLCA3MywgMjA2LCA4MiwgNzMsIDc3LCA3MSwgNjYsIDY1LCAxMjgsIDgyLCA3MywgNzUsIDgyLCAKKyAgICA3MywgNzUsIDEyOCwgODIsIDczLCA3MSwgODYsIDY5LCA2OCwgNzMsIDE5NSwgODIsIDczLCA3MSwgNzIsIDg0LCA4NywgNjUsIAorICAgIDgyLCA2OCwgODMsIDEyOCwgODIsIDczLCA3MSwgNzIsIDg0LCA3MiwgNjUsIDc4LCAxOTYsIDgyLCA3MywgNzEsIDcyLCA4NCwgCisgICAgNDUsIDg0LCA3OSwgNDUsIDc2LCA2OSwgNzAsIDIxMiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgODMsIDczLCA2OCwgMTk3LCAKKyAgICA4MiwgNzMsIDcxLCA3MiwgODQsIDQ1LCA4MywgNzIsIDY1LCA2OCwgNzksIDg3LCA2OSwgMTk2LCA4MiwgNzMsIDcxLCA3MiwgCisgICAgODQsIDQ1LCA4MywgNzIsIDY1LCA2OCwgNjksIDE5NiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgODAsIDc5LCA3MywgNzgsIAorICAgIDg0LCA3MywgNzgsIDE5OSwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgNzIsIDY1LCA3OCwgNjgsIDY5LCAxOTYsIDgyLCA3MywgCisgICAgNzEsIDcyLCA4NCwgNDUsIDcyLCA2NSwgNzgsIDE5NiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgNzAsIDY1LCA2NywgNzMsIAorICAgIDc4LCAxOTksIDgyLCA3MywgNzEsIDcyLCA4NCwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4OSwgNjksIDgzLCA3MywgCisgICAgNjksIDg1LCA3OCwgNzEsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODksIDY5LCA3OSwgODIsIDczLCA3OCwgNzIsIAorICAgIDczLCA2OSwgODUsIDcyLCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDg5LCAKKyAgICA2OSwgNzksIDgyLCA3MywgNzgsIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4NCwgCisgICAgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIAorICAgIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODQsIDcyLCA3MywgNjksIDg1LCAKKyAgICA4NCwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA4NCwgNzMsIDc1LCA2OSwgCisgICAgODUsIDg0LCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIAorICAgIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgCisgICAgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIAorICAgIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgwLCAKKyAgICA3MywgNjksIDg1LCA4MCwgNDUsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgCisgICAgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgODMsIDczLCA3OSwgODMsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODAsIAorICAgIDczLCA2OSwgODUsIDgwLCA0NSwgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCAKKyAgICA0NSwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgCisgICAgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4MCwgNzIsIDczLCA2OSwgODUsIAorICAgIDgwLCA3MiwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4MCwgNjUsIDc4LCA4MywgNzMsIDc5LCA4MywgMTI4LCA4MiwgCisgICAgNzMsIDY5LCA4NSwgNzYsIDQ1LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIAorICAgIDczLCA2OSwgODUsIDc3LCA0NSwgODMsIDczLCA3OSwgODMsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIDczLCAKKyAgICA2OSwgODUsIDc3LCA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA3NywgCisgICAgNzMsIDY5LCA4NSwgNzcsIDQ1LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIAorICAgIDczLCA2OSwgODUsIDc3LCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCAKKyAgICA4MywgNzMsIDc5LCA4MywgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgCisgICAgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIAorICAgIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzUsIDY1LCA4MCwgODksIDY5LCA3OSwgODUsIDc4LCA4MCwgNzMsIDY5LCAKKyAgICA4NSwgODAsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIAorICAgIDg1LCA3NiwgNDUsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA4MiwgNzMsIDY5LCA4NSwgMjA0LCA4MiwgNzMsIDY5LCA3NiwgCisgICAgMTI4LCA4MiwgNzMsIDY5LCA2OSwgMTI4LCA4MiwgNzMsIDY3LCA2OSwgNzcsIDEyOCwgODIsIDczLCA2NywgNjksIDEyOCwgCisgICAgODIsIDczLCA2NywgMTk3LCA4MiwgNzMsIDY2LCA2NiwgNzksIDc4LCAxMjgsIDgyLCA3MywgNjUsIDIwNCwgODIsIDcyLCAKKyAgICA3OSwgODQsIDczLCAxOTUsIDgyLCA3MiwgNzksIDEyOCwgODIsIDcyLCAyMDcsIDgyLCA3MiwgNjUsIDEyOCwgODIsIDcxLCAKKyAgICA4OSwgNzMsIDc4LCA3MSwgODMsIDEyOCwgODIsIDcxLCA4OSwgNjUsIDc4LCAxMjgsIDgyLCA3MSwgODksIDE5MywgODIsIAorICAgIDY5LCA4NiwgNzksIDc2LCA4NiwgNzMsIDc4LCAxOTksIDgyLCA2OSwgODYsIDc5LCA3NiwgODUsIDg0LCA3MywgNzksIDc4LCAKKyAgICAxMjgsIDgyLCA2OSwgODYsIDc3LCA2NSwgMTI4LCA4MiwgNjksIDg2LCA3MywgNjUsIDEyOCwgODIsIDY5LCA4NiwgNjksIAorICAgIDgyLCA4MywgNjksIDY4LCAxMjgsIDgyLCA2OSwgODYsIDY5LCA4MiwgODMsIDY5LCAxOTYsIDgyLCA2OSwgODYsIDY5LCA4MiwgCisgICAgODMsIDE5NywgODIsIDY5LCA4NSwgODgsIDEyOCwgODIsIDY5LCA4NSwgMTI4LCA4MiwgNjksIDg0LCA4NSwgODIsIDc4LCAKKyAgICAxMjgsIDgyLCA2OSwgODQsIDg1LCA4MiwgMjA2LCA4MiwgNjksIDg0LCA4MiwgNzksIDcwLCA3NiwgNjksIDIxNiwgODIsIAorICAgIDY5LCA4NCwgODIsIDY5LCA2NSwgODQsIDEyOCwgODIsIDY5LCA4NCwgNzksIDgyLCA4NCwgMTI4LCA4MiwgNjksIDgzLCA4NSwgCisgICAgODAsIDczLCA3OCwgODUsIDgzLCAxMjgsIDgyLCA2OSwgODMsIDg0LCA4MiwgNzksIDc5LCA3NywgMTI4LCA4MiwgNjksIDgzLCAKKyAgICA4NCwgODIsIDczLCA2NywgODQsIDY5LCAxOTYsIDgyLCA2OSwgODMsIDg0LCAxMjgsIDgyLCA2OSwgODMsIDgwLCA3OSwgNzgsIAorICAgIDgzLCA2OSwgMTI4LCA4MiwgNjksIDgzLCA3OSwgODUsIDgyLCA2NywgNjksIDEyOCwgODIsIDY5LCA4MywgNzksIDc2LCA4NSwgCisgICAgODQsIDczLCA3OSwgNzgsIDEyOCwgODIsIDY5LCA4MywgNzMsIDgzLCA4NCwgNjUsIDc4LCA2NywgNjksIDEyOCwgODIsIDY5LCAKKyAgICA4MywgNzMsIDY4LCA2OSwgNzgsIDY3LCA2OSwgMTI4LCA4MiwgNjksIDgzLCAyMDAsIDgyLCA2OSwgODIsIDY5LCA3OCwgNzEsIAorICAgIDcxLCA2NSwgNzgsIDEyOCwgODIsIDY5LCA4MiwgNjksIDc1LCA2NSwgNzgsIDEyOCwgODIsIDY5LCA4MCwgODIsIDY5LCA4MywgCisgICAgNjksIDc4LCA4NCwgMTI4LCA4MiwgNjksIDgwLCA3NiwgNjUsIDY3LCA2OSwgNzcsIDY5LCA3OCwgMjEyLCA4MiwgNjksIDgwLCAKKyAgICA3MiwgMTI4LCA4MiwgNjksIDgwLCA2OSwgODQsIDczLCA4NCwgNzMsIDc5LCAyMDYsIDgyLCA2OSwgODAsIDY5LCA2NSwgODQsIAorICAgIDY5LCAxOTYsIDgyLCA2OSwgODAsIDY5LCA2NSwgODQsIDEyOCwgODIsIDY5LCA4MCwgNjksIDY1LCAyMTIsIDgyLCA2OSwgCisgICAgODAsIDY1LCA4OSwgNjUsIDEyOCwgODIsIDY5LCA4MCwgNjUsIDEyOCwgODIsIDY5LCA4MCwgMTkzLCA4MiwgNjksIDc4LCAKKyAgICA4NCwgNzksIDcxLCA2OSwgNzgsIDEyOCwgODIsIDY5LCA3OCwgMTI4LCA4MiwgNjksIDIwNiwgODIsIDY5LCA3NywgODUsIAorICAgIDEyOCwgODIsIDY5LCA3NywgNjksIDY4LCA4OSwgMTI4LCA4MiwgNjksIDc2LCA3MywgNzEsIDczLCA3OSwgNzgsIDEyOCwgCisgICAgODIsIDY5LCA3NiwgNzMsIDY5LCA4NiwgNjksIDE5NiwgODIsIDY5LCA3NiwgNjksIDY1LCA4MywgNjksIDEyOCwgODIsIDY5LCAKKyAgICA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCA2NSwgMjA0LCA4MiwgNjksIDc2LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgODIsIAorICAgIDY5LCA3NiwgNjUsIDY1LCAxMjgsIDgyLCA2OSwgNzQsIDY1LCA3OCwgMTk5LCA4MiwgNjksIDczLCAxOTYsIDgyLCA2OSwgCisgICAgNzEsIDg1LCA3NiwgODUsIDgzLCA0NSwgNTIsIDEyOCwgODIsIDY5LCA3MSwgODUsIDc2LCA4NSwgODMsIDQ1LCA1MSwgMTI4LCAKKyAgICA4MiwgNjksIDcxLCA4NSwgNzYsIDg1LCA4MywgNDUsIDUwLCAxMjgsIDgyLCA2OSwgNzEsIDg1LCA3NiwgODUsIDgzLCAxMjgsIAorICAgIDgyLCA2OSwgNzEsIDg1LCA3NiwgODUsIDIxMSwgODIsIDY5LCA3MSwgNzMsIDgzLCA4NCwgNjksIDgyLCA2OSwgMTk2LCA4MiwgCisgICAgNjksIDcxLCA3MywgNzksIDc4LCA2NSwgMjA0LCA4MiwgNjksIDcxLCA3MywgNjUsIDQ1LCA1MCwgMTI4LCA4MiwgNjksIDcxLCAKKyAgICA3MywgNjUsIDEyOCwgODIsIDY5LCA3MCwgNzksIDgyLCA3NywgNjksIDE5NiwgODIsIDY5LCA3MCwgNjksIDgyLCA2OSwgNzgsIAogICAgIDY3LCAxOTcsIDgyLCA2OSwgNjgsIDg1LCA4MCwgNzYsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgyLCA2OSwgCiAgICAgNjcsIDg5LCA2NywgNzYsIDczLCA3OCwgMTk5LCA4MiwgNjksIDY3LCA4OSwgNjcsIDc2LCA2OSwgMTk2LCA4MiwgNjksIDY3LCAKICAgICA4NCwgNzMsIDc2LCA3MywgNzgsIDY5LCA2NSwgMjEwLCA4MiwgNjksIDY3LCA4NCwgNjUsIDc4LCA3MSwgODUsIDc2LCA2NSwgCkBAIC0xMjY1LDU2ICsxMzc3LDU3IEBACiAgICAgODMsIDg3LCA2NSwgNjgsIDczLCAxMjgsIDgyLCA2NSwgODMsIDc5LCA4NSwgMjA0LCA4MiwgNjUsIDgzLCA3MiwgNjUsIAogICAgIDEyOCwgODIsIDY1LCA4MSwgMTI4LCA4MiwgNjUsIDgwLCA3MywgODMsIDc3LCA2NSwgMTI4LCA4MiwgNjUsIDc4LCA3MSwgCiAgICAgMTk3LCA4MiwgNjUsIDc4LCA2NSwgMTI4LCA4MiwgNjUsIDc4LCAxMjgsIDgyLCA2NSwgNzcsIDIxMSwgODIsIDY1LCA3NywgCi0gICAgNjYsIDY1LCA4NCwgMTI4LCA4MiwgNjUsIDc1LCA3MiwgNjUsIDc4LCA3MSwgMTI4LCA4MiwgNjUsIDczLCA4MywgNzMsIDc4LCAKLSAgICAxOTksIDgyLCA2NSwgNzMsIDgzLCA2OSwgMTk2LCA4MiwgNjUsIDczLCA3OCwgNjYsIDc5LCA4NywgMTI4LCA4MiwgNjUsIAotICAgIDczLCA3NiwgODcsIDY1LCA4OSwgMTI4LCA4MiwgNjUsIDczLCA3NiwgODcsIDY1LCAyMTcsIDgyLCA2NSwgNzMsIDc2LCAKLSAgICAxMjgsIDgyLCA2NSwgNzMsIDY4LCAyMDcsIDgyLCA2NSwgNzMsIDY4LCA2NSwgMTI4LCA4MiwgNjUsIDczLCAxMjgsIDgyLCAKLSAgICA2NSwgNzIsIDc3LCA2NSwgODQsIDg1LCA3NiwgNzYsIDY1LCAyMDAsIDgyLCA2NSwgNzAsIDY5LCAxMjgsIDgyLCA2NSwgNjksIAotICAgIDc3LCAxMjgsIDgyLCA2NSwgNjgsIDczLCA3OSwgNjUsIDY3LCA4NCwgNzMsIDg2LCAxOTcsIDgyLCA2NSwgNjgsIDczLCA3OSwgCi0gICAgMTI4LCA4MiwgNjUsIDY4LCA3MywgMjA3LCA4MiwgNjUsIDY4LCAyMDEsIDgyLCA2NSwgNjgsIDEyOCwgODIsIDY1LCAxOTYsIAotICAgIDgyLCA2NSwgNjcsIDgxLCA4NSwgNjksIDIxMiwgODIsIDY1LCA2NywgNzMsIDc4LCA3MSwgMTI4LCA4MiwgNjUsIDY2LCA2NiwgCi0gICAgNzMsIDg0LCAxMjgsIDgyLCA2NSwgNjYsIDY2LCA3MywgMjEyLCA4MiwgNjUsIDY2LCAxMjgsIDgyLCA2NSwgNjUsIDczLCAKLSAgICAxMjgsIDgyLCA2NSwgNjUsIDEyOCwgODIsIDY1LCA1MSwgMTI4LCA4MiwgNjUsIDUwLCAxMjgsIDgyLCA0OCwgNTAsIDU3LCAKLSAgICAxMjgsIDgyLCA0OCwgNTAsIDU2LCAxMjgsIDgyLCA0OCwgNTAsIDU1LCAxMjgsIDgyLCA0OCwgNTAsIDU0LCAxMjgsIDgyLCAKLSAgICA0OCwgNTAsIDUzLCAxMjgsIDgyLCA0OCwgNTAsIDUyLCAxMjgsIDgyLCA0OCwgNTAsIDUxLCAxMjgsIDgyLCA0OCwgNTAsIAotICAgIDUwLCAxMjgsIDgyLCA0OCwgNTAsIDQ5LCAxMjgsIDgyLCA0OCwgNTAsIDQ4LCAxMjgsIDgyLCA0OCwgNDksIDU3LCAxMjgsIAotICAgIDgyLCA0OCwgNDksIDU2LCAxMjgsIDgyLCA0OCwgNDksIDU1LCAxMjgsIDgyLCA0OCwgNDksIDU0LCA2NSwgMTI4LCA4MiwgCi0gICAgNDgsIDQ5LCA1NCwgMTI4LCA4MiwgNDgsIDQ5LCA1MywgMTI4LCA4MiwgNDgsIDQ5LCA1MiwgMTI4LCA4MiwgNDgsIDQ5LCAKLSAgICA1MSwgMTI4LCA4MiwgNDgsIDQ5LCA1MCwgMTI4LCA4MiwgNDgsIDQ5LCA0OSwgMTI4LCA4MiwgNDgsIDQ5LCA0OCwgNjUsIAotICAgIDEyOCwgODIsIDQ4LCA0OSwgNDgsIDEyOCwgODIsIDQ4LCA0OCwgNTcsIDEyOCwgODIsIDQ4LCA0OCwgNTYsIDEyOCwgODIsIAotICAgIDQ4LCA0OCwgNTUsIDEyOCwgODIsIDQ4LCA0OCwgNTQsIDEyOCwgODIsIDQ4LCA0OCwgNTMsIDEyOCwgODIsIDQ4LCA0OCwgCi0gICAgNTIsIDEyOCwgODIsIDQ4LCA0OCwgNTEsIDY2LCAxMjgsIDgyLCA0OCwgNDgsIDUxLCA2NSwgMTI4LCA4MiwgNDgsIDQ4LCAKLSAgICA1MSwgMTI4LCA4MiwgNDgsIDQ4LCA1MCwgNjUsIDEyOCwgODIsIDQ4LCA0OCwgNTAsIDEyOCwgODIsIDQ4LCA0OCwgNDksIAotICAgIDEyOCwgODIsIDQ1LCA2NywgODIsIDY5LCAxOTcsIDgxLCA4OSwgODgsIDEyOCwgODEsIDg5LCA4NSwgMTI4LCA4MSwgODksIAotICAgIDg0LCAxMjgsIDgxLCA4OSwgODIsIDg4LCAxMjgsIDgxLCA4OSwgODIsIDEyOCwgODEsIDg5LCA4MCwgMTI4LCA4MSwgODksIAotICAgIDc5LCAxMjgsIDgxLCA4OSwgNzMsIDEyOCwgODEsIDg5LCA2OSwgNjksIDEyOCwgODEsIDg5LCA2OSwgMTI4LCA4MSwgODksIAotICAgIDY1LCA2NSwgMTI4LCA4MSwgODksIDY1LCAxMjgsIDgxLCA4OSwgMTI4LCA4MSwgODcsIDczLCAxMjgsIDgxLCA4NywgNjksIAotICAgIDY5LCAxMjgsIDgxLCA4NywgNjksIDEyOCwgODEsIDg3LCA2NSwgNjUsIDEyOCwgODEsIDg3LCA2NSwgMTI4LCA4MSwgODUsIAotICAgIDg4LCAxMjgsIDgxLCA4NSwgODYsIDEyOCwgODEsIDg1LCA4NSwgODYsIDEyOCwgODEsIDg1LCA4NSwgMTI4LCA4MSwgODUsIAotICAgIDg0LCAxMjgsIDgxLCA4NSwgODMsIDcyLCA4MywgNzIsIDY1LCA4OSwgNjUsIDEyOCwgODEsIDg1LCA4MiwgODgsIDEyOCwgCi0gICAgODEsIDg1LCA4MiwgMTI4LCA4MSwgODUsIDgwLCAxMjgsIDgxLCA4NSwgNzksIDg4LCAxMjgsIDgxLCA4NSwgNzksIDg0LCAKLSAgICAxOTcsIDgxLCA4NSwgNzksIDg0LCA2NSwgODQsIDczLCA3OSwgMjA2LCA4MSwgODUsIDc5LCA4NCwgMTI4LCA4MSwgODUsIAotICAgIDc5LCA4MCwgMTI4LCA4MSwgODUsIDc5LCAxMjgsIDgxLCA4NSwgNzUsIDEyOCwgODEsIDg1LCA3MywgNzgsIDg0LCA2OSwgCi0gICAgODMsIDgzLCA2OSwgNzgsIDY3LCA2OSwgMTI4LCA4MSwgODUsIDczLCA3OCwgNjgsIDczLCA2NywgNjksIDgzLCA3MywgNzcsIAotICAgIDE5MywgODEsIDg1LCA3MywgNzgsIDY3LCA4NSwgNzgsIDg4LCAxMjgsIDgxLCA4NSwgNzMsIDc4LCA2NSwgODIsIDczLCA4NSwgCi0gICAgMjExLCA4MSwgODUsIDczLCA3NiwgNzYsIDEyOCwgODEsIDg1LCA3MywgNjcsIDIwMywgODEsIDg1LCA3MywgMTI4LCA4MSwgCi0gICAgODUsIDcwLCAxMjgsIDgxLCA4NSwgNjksIDgzLCA4NCwgNzMsIDc5LCA3OCwgNjksIDE5NiwgODEsIDg1LCA2OSwgODMsIDg0LCAKLSAgICA3MywgNzksIDc4LCAxMjgsIDgxLCA4NSwgNjksIDgzLCA4NCwgNzMsIDc5LCAyMDYsIDgxLCA4NSwgNjksIDY5LCA3OCwgCi0gICAgMTI4LCA4MSwgODUsIDY5LCA2OSwgMjA2LCA4MSwgODUsIDY5LCAxMjgsIDgxLCA4NSwgNjYsIDg1LCA4NCwgODMsIDEyOCwgCi0gICAgODEsIDg1LCA2NSwgODQsIDY5LCA4MiwgNzgsIDczLCA3OSwgMjA2LCA4MSwgODUsIDY1LCA4MiwgODQsIDY5LCA4MiwgODMsIAotICAgIDEyOCwgODEsIDg1LCA2NSwgODIsIDg0LCA2OSwgODIsIDIxMSwgODEsIDg1LCA2NSwgODIsIDg0LCA2OSwgODIsIDEyOCwgCi0gICAgODEsIDg1LCA2NSwgODIsIDg0LCA2OSwgMjEwLCA4MSwgODUsIDY1LCA3OCwgODQsIDczLCA4NCwgMjE3LCA4MSwgODUsIDY1LCAKLSAgICA2OCwgODIsIDg1LCA4MCwgNzYsIDE5NywgODEsIDg1LCA2NSwgNjgsIDgyLCA2NSwgNzgsIDg0LCAxMjgsIDgxLCA4NSwgNjUsIAotICAgIDY4LCA4MiwgNjUsIDc4LCAyMTIsIDgxLCA4NSwgNjUsIDY4LCAxMjgsIDgxLCA4NSwgNjUsIDE5NiwgODEsIDg1LCA2NSwgCi0gICAgMTI4LCA4MSwgODUsIDEyOCwgODEsIDIwOCwgODEsIDc5LCA4OCwgMTI4LCA4MSwgNzksIDg0LCAxMjgsIDgxLCA3OSwgODAsIAotICAgIDcyLCAxMjgsIDgxLCA3OSwgODAsIDY1LCAxMjgsIDgxLCA3OSwgODAsIDEyOCwgODEsIDc5LCA3OSwgMTI4LCA4MSwgNzksIAotICAgIDIwNywgODEsIDc5LCA3MCwgMTI4LCA4MSwgNzksIDE5OCwgODEsIDc5LCA2NSwgMTI4LCA4MSwgNzksIDEyOCwgODEsIDc4LCAKLSAgICAxMjgsIDgxLCA3MywgODgsIDEyOCwgODEsIDczLCA4NCwgODMsIDY1LCAxMjgsIDgxLCA3MywgODQsIDEyOCwgODEsIDczLCAKLSAgICA4MCwgMTI4LCA4MSwgNzMsIDczLCAxMjgsIDgxLCA3MywgNjksIDg4LCAxMjgsIDgxLCA3MywgNjksIDg0LCAxMjgsIDgxLCAKLSAgICA3MywgNjksIDgwLCAxMjgsIDgxLCA3MywgNjksIDEyOCwgODEsIDczLCAxMjgsIDgxLCA3MiwgODcsIDczLCAxMjgsIDgxLCAKLSAgICA3MiwgODcsIDY5LCA2OSwgMTI4LCA4MSwgNzIsIDg3LCA2OSwgMTI4LCA4MSwgNzIsIDg3LCA2NSwgNjUsIDEyOCwgODEsIAotICAgIDcyLCA4NywgNjUsIDEyOCwgODEsIDcyLCA4NSwgMTI4LCA4MSwgNzIsIDc5LCAxMjgsIDgxLCA3MiwgNzMsIDEyOCwgODEsIAotICAgIDcyLCA2OSwgNjksIDEyOCwgODEsIDcyLCA2OSwgMTI4LCA4MSwgNzIsIDY1LCA2NSwgMTI4LCA4MSwgNzIsIDY1LCAxMjgsIAorICAgIDY2LCA2NSwgODQsIDEyOCwgODIsIDY1LCA3NSwgNzIsIDY1LCA3OCwgNzEsIDEyOCwgODIsIDY1LCA3NSwgNjUsIDY1LCA4MiwgCisgICAgNjUsIDY1LCA3OCwgODMsIDY1LCA4OSwgNjUsIDEyOCwgODIsIDY1LCA3MywgODMsIDczLCA3OCwgMTk5LCA4MiwgNjUsIDczLCAKKyAgICA4MywgNjksIDE5NiwgODIsIDY1LCA3MywgNzgsIDY2LCA3OSwgODcsIDEyOCwgODIsIDY1LCA3MywgNzYsIDg3LCA2NSwgODksIAorICAgIDEyOCwgODIsIDY1LCA3MywgNzYsIDg3LCA2NSwgMjE3LCA4MiwgNjUsIDczLCA3NiwgMTI4LCA4MiwgNjUsIDczLCA2OCwgCisgICAgMjA3LCA4MiwgNjUsIDczLCA2OCwgNjUsIDEyOCwgODIsIDY1LCA3MiwgNzcsIDY1LCA4NCwgODUsIDc2LCA3NiwgNjUsIAorICAgIDIwMCwgODIsIDY1LCA3MiwgMTI4LCA4MiwgNjUsIDcwLCA2OSwgMTI4LCA4MiwgNjUsIDY5LCA3NywgMTI4LCA4MiwgNjUsIAorICAgIDY4LCA3MywgNzksIDY1LCA2NywgODQsIDczLCA4NiwgMTk3LCA4MiwgNjUsIDY4LCA3MywgNzksIDEyOCwgODIsIDY1LCA2OCwgCisgICAgNzMsIDIwNywgODIsIDY1LCA2OCwgMjAxLCA4MiwgNjUsIDY4LCAxMjgsIDgyLCA2NSwgMTk2LCA4MiwgNjUsIDY3LCA4MSwgCisgICAgODUsIDY5LCAyMTIsIDgyLCA2NSwgNjcsIDczLCA3OCwgNzEsIDEyOCwgODIsIDY1LCA2NiwgNjYsIDczLCA4NCwgMTI4LCAKKyAgICA4MiwgNjUsIDY2LCA2NiwgNzMsIDIxMiwgODIsIDY1LCA2NiwgMTI4LCA4MiwgNjUsIDY1LCA3MywgMTI4LCA4MiwgNjUsIAorICAgIDUxLCAxMjgsIDgyLCA2NSwgNTAsIDEyOCwgODIsIDY1LCA0NSwgNTAsIDEyOCwgODIsIDQ4LCA1MCwgNTcsIDEyOCwgODIsIAorICAgIDQ4LCA1MCwgNTYsIDEyOCwgODIsIDQ4LCA1MCwgNTUsIDEyOCwgODIsIDQ4LCA1MCwgNTQsIDEyOCwgODIsIDQ4LCA1MCwgCisgICAgNTMsIDEyOCwgODIsIDQ4LCA1MCwgNTIsIDEyOCwgODIsIDQ4LCA1MCwgNTEsIDEyOCwgODIsIDQ4LCA1MCwgNTAsIDEyOCwgCisgICAgODIsIDQ4LCA1MCwgNDksIDEyOCwgODIsIDQ4LCA1MCwgNDgsIDEyOCwgODIsIDQ4LCA0OSwgNTcsIDEyOCwgODIsIDQ4LCAKKyAgICA0OSwgNTYsIDEyOCwgODIsIDQ4LCA0OSwgNTUsIDEyOCwgODIsIDQ4LCA0OSwgNTQsIDY1LCAxMjgsIDgyLCA0OCwgNDksIAorICAgIDU0LCAxMjgsIDgyLCA0OCwgNDksIDUzLCAxMjgsIDgyLCA0OCwgNDksIDUyLCAxMjgsIDgyLCA0OCwgNDksIDUxLCAxMjgsIAorICAgIDgyLCA0OCwgNDksIDUwLCAxMjgsIDgyLCA0OCwgNDksIDQ5LCAxMjgsIDgyLCA0OCwgNDksIDQ4LCA2NSwgMTI4LCA4MiwgCisgICAgNDgsIDQ5LCA0OCwgMTI4LCA4MiwgNDgsIDQ4LCA1NywgMTI4LCA4MiwgNDgsIDQ4LCA1NiwgMTI4LCA4MiwgNDgsIDQ4LCAKKyAgICA1NSwgMTI4LCA4MiwgNDgsIDQ4LCA1NCwgMTI4LCA4MiwgNDgsIDQ4LCA1MywgMTI4LCA4MiwgNDgsIDQ4LCA1MiwgMTI4LCAKKyAgICA4MiwgNDgsIDQ4LCA1MSwgNjYsIDEyOCwgODIsIDQ4LCA0OCwgNTEsIDY1LCAxMjgsIDgyLCA0OCwgNDgsIDUxLCAxMjgsIAorICAgIDgyLCA0OCwgNDgsIDUwLCA2NSwgMTI4LCA4MiwgNDgsIDQ4LCA1MCwgMTI4LCA4MiwgNDgsIDQ4LCA0OSwgMTI4LCA4MiwgCisgICAgNDUsIDY3LCA4MiwgNjksIDE5NywgODEsIDg5LCA4OCwgMTI4LCA4MSwgODksIDg1LCAxMjgsIDgxLCA4OSwgODQsIDEyOCwgCisgICAgODEsIDg5LCA4MiwgODgsIDEyOCwgODEsIDg5LCA4MiwgMTI4LCA4MSwgODksIDgwLCAxMjgsIDgxLCA4OSwgNzksIDEyOCwgCisgICAgODEsIDg5LCA3MywgMTI4LCA4MSwgODksIDY5LCA2OSwgMTI4LCA4MSwgODksIDY5LCAxMjgsIDgxLCA4OSwgNjUsIDY1LCAKKyAgICAxMjgsIDgxLCA4OSwgNjUsIDEyOCwgODEsIDg5LCAxMjgsIDgxLCA4NywgNzMsIDEyOCwgODEsIDg3LCA2OSwgNjksIDEyOCwgCisgICAgODEsIDg3LCA2OSwgMTI4LCA4MSwgODcsIDY1LCA2NSwgMTI4LCA4MSwgODcsIDY1LCAxMjgsIDgxLCA4NSwgODgsIDEyOCwgCisgICAgODEsIDg1LCA4NiwgMTI4LCA4MSwgODUsIDg1LCA4NiwgMTI4LCA4MSwgODUsIDg1LCAxMjgsIDgxLCA4NSwgODQsIDEyOCwgCisgICAgODEsIDg1LCA4MywgNzIsIDgzLCA3MiwgNjUsIDg5LCA2NSwgMTI4LCA4MSwgODUsIDgyLCA4OCwgMTI4LCA4MSwgODUsIDgyLCAKKyAgICAxMjgsIDgxLCA4NSwgODAsIDEyOCwgODEsIDg1LCA3OSwgODgsIDEyOCwgODEsIDg1LCA3OSwgODQsIDE5NywgODEsIDg1LCAKKyAgICA3OSwgODQsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDgxLCA4NSwgNzksIDg0LCAxMjgsIDgxLCA4NSwgNzksIDgwLCAxMjgsIAorICAgIDgxLCA4NSwgNzksIDEyOCwgODEsIDg1LCA3NSwgMTI4LCA4MSwgODUsIDczLCA3OCwgODQsIDY5LCA4MywgODMsIDY5LCA3OCwgCisgICAgNjcsIDY5LCAxMjgsIDgxLCA4NSwgNzMsIDc4LCA2OCwgNzMsIDY3LCA2OSwgODMsIDczLCA3NywgMTkzLCA4MSwgODUsIDczLCAKKyAgICA3OCwgNjcsIDg1LCA3OCwgODgsIDEyOCwgODEsIDg1LCA3MywgNzgsIDY1LCA4MiwgNzMsIDg1LCAyMTEsIDgxLCA4NSwgNzMsIAorICAgIDc2LCA3NiwgMTI4LCA4MSwgODUsIDczLCA2NywgMjAzLCA4MSwgODUsIDczLCAxMjgsIDgxLCA4NSwgNzAsIDEyOCwgODEsIAorICAgIDg1LCA2OSwgODMsIDg0LCA3MywgNzksIDc4LCA2OSwgMTk2LCA4MSwgODUsIDY5LCA4MywgODQsIDczLCA3OSwgNzgsIDEyOCwgCisgICAgODEsIDg1LCA2OSwgODMsIDg0LCA3MywgNzksIDIwNiwgODEsIDg1LCA2OSwgNjksIDc4LCAxMjgsIDgxLCA4NSwgNjksIDY5LCAKKyAgICAyMDYsIDgxLCA4NSwgNjksIDEyOCwgODEsIDg1LCA2NiwgODUsIDg0LCA4MywgMTI4LCA4MSwgODUsIDY1LCA4NCwgNjksIAorICAgIDgyLCA3OCwgNzMsIDc5LCAyMDYsIDgxLCA4NSwgNjUsIDgyLCA4NCwgNjksIDgyLCA4MywgMTI4LCA4MSwgODUsIDY1LCA4MiwgCisgICAgODQsIDY5LCA4MiwgMjExLCA4MSwgODUsIDY1LCA4MiwgODQsIDY5LCA4MiwgMTI4LCA4MSwgODUsIDY1LCA4MiwgODQsIDY5LCAKKyAgICAyMTAsIDgxLCA4NSwgNjUsIDc4LCA4NCwgNzMsIDg0LCAyMTcsIDgxLCA4NSwgNjUsIDY4LCA4MiwgODUsIDgwLCA3NiwgCisgICAgMTk3LCA4MSwgODUsIDY1LCA2OCwgODIsIDY1LCA3OCwgODQsIDEyOCwgODEsIDg1LCA2NSwgNjgsIDgyLCA2NSwgNzgsIAorICAgIDIxMiwgODEsIDg1LCA2NSwgNjgsIDEyOCwgODEsIDg1LCA2NSwgMTk2LCA4MSwgODUsIDY1LCAxMjgsIDgxLCA4NSwgMTI4LCAKKyAgICA4MSwgMjA4LCA4MSwgNzksIDg4LCAxMjgsIDgxLCA3OSwgODQsIDEyOCwgODEsIDc5LCA4MCwgNzIsIDEyOCwgODEsIDc5LCAKKyAgICA4MCwgNjUsIDEyOCwgODEsIDc5LCA4MCwgMTI4LCA4MSwgNzksIDc5LCAxMjgsIDgxLCA3OSwgMjA3LCA4MSwgNzksIDcwLCAKKyAgICAxMjgsIDgxLCA3OSwgMTk4LCA4MSwgNzksIDY1LCAxMjgsIDgxLCA3OSwgMTI4LCA4MSwgNzgsIDEyOCwgODEsIDczLCA4OCwgCisgICAgMTI4LCA4MSwgNzMsIDg0LCA4MywgNjUsIDEyOCwgODEsIDczLCA4NCwgMTI4LCA4MSwgNzMsIDgwLCAxMjgsIDgxLCA3MywgCisgICAgNzMsIDEyOCwgODEsIDczLCA2OSwgODgsIDEyOCwgODEsIDczLCA2OSwgODQsIDEyOCwgODEsIDczLCA2OSwgODAsIDEyOCwgCisgICAgODEsIDczLCA2OSwgMTI4LCA4MSwgNzMsIDEyOCwgODEsIDcyLCA4NywgNzMsIDEyOCwgODEsIDcyLCA4NywgNjksIDY5LCAKKyAgICAxMjgsIDgxLCA3MiwgODcsIDY5LCAxMjgsIDgxLCA3MiwgODcsIDY1LCA2NSwgMTI4LCA4MSwgNzIsIDg3LCA2NSwgMTI4LCAKKyAgICA4MSwgNzIsIDg1LCAxMjgsIDgxLCA3MiwgNzksIDEyOCwgODEsIDcyLCA3MywgMTI4LCA4MSwgNzIsIDY5LCA2OSwgMTI4LCAKKyAgICA4MSwgNzIsIDY5LCAxMjgsIDgxLCA3MiwgNjUsIDY1LCAxMjgsIDgxLCA3MiwgNjUsIDEyOCwgODEsIDcxLCA2NSwgMTI4LCAKICAgICA4MSwgNjksIDg0LCA2NSwgNzgsIDY1LCAxMjgsIDgxLCA2OSwgNjksIDEyOCwgODEsIDY5LCAxMjgsIDgxLCA2NSwgODUsIAogICAgIDEyOCwgODEsIDY1LCA4NCwgNjUsIDc4LCAxMjgsIDgxLCA2NSwgODIsIDc4LCA2OSwgMjE3LCA4MSwgNjUsIDgyLCAxMjgsIAogICAgIDgxLCA2NSwgODEsIDEyOCwgODEsIDY1LCA4MCwgNzIsIDEyOCwgODEsIDY1LCA3NywgNjUsIDg0LCA4MywgMTI4LCA4MSwgCkBAIC0xMzI4LDI5NyArMTQ0MSwzMDcgQEAKICAgICA4NywgNzksIDc5LCAxMjgsIDgwLCA4NywgNzksIDEyOCwgODAsIDg3LCAyMDcsIDgwLCA4NywgNzMsIDczLCAxMjgsIDgwLCAKICAgICA4NywgNzMsIDEyOCwgODAsIDg3LCA2OSwgNjksIDEyOCwgODAsIDg3LCA2OSwgMTI4LCA4MCwgODcsIDY1LCA2NSwgMTI4LCAKICAgICA4MCwgODcsIDEyOCwgODAsIDg2LCAxMjgsIDgwLCA4NSwgODgsIDEyOCwgODAsIDg1LCA4NSwgODQsIDEyOCwgODAsIDg1LCAKLSAgICA4NCwgODIsIDY5LCA3MCwgNjUsIDY3LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA4MCwgODUsIDg0LCAxMjgsIDgwLCA4NSwgCi0gICAgMjEyLCA4MCwgODUsIDgzLCA3MiwgODAsIDczLCA3OCwgMTI4LCA4MCwgODUsIDgzLCA3MiwgODAsIDczLCA3NSwgNjUsIAotICAgIDEyOCwgODAsIDg1LCA4MywgNzIsIDczLCA3OCwgMTk5LCA4MCwgODUsIDgyLCA4OCwgMTI4LCA4MCwgODUsIDgyLCA4MywgCi0gICAgNjksIDEyOCwgODAsIDg1LCA4MiwgODAsIDc2LCAxOTcsIDgwLCA4NSwgODIsIDczLCA4NCwgODksIDEyOCwgODAsIDg1LCAKLSAgICA4MiwgNzMsIDcwLCA4OSwgMTI4LCA4MCwgODUsIDgyLCAxMjgsIDgwLCA4NSwgODEsIDEyOCwgODAsIDg1LCA4MCwgMTI4LCAKLSAgICA4MCwgODUsIDc5LCA4OCwgMTI4LCA4MCwgODUsIDc5LCA4MCwgMTI4LCA4MCwgODUsIDc5LCAxMjgsIDgwLCA4NSwgNzgsIAotICAgIDcxLCA2NSwgNjUsIDc3LCAxMjgsIDgwLCA4NSwgNzgsIDcxLCAxMjgsIDgwLCA4NSwgNzgsIDY3LCA4NCwgODUsIDY1LCA4NCwgCi0gICAgNzMsIDc5LCA3OCwgMTI4LCA4MCwgODUsIDc4LCA2NywgODQsIDg1LCA2NSwgODQsIDczLCA3OSwgMjA2LCA4MCwgODUsIDc3LCAKLSAgICA4MCwgMTI4LCA4MCwgODUsIDc3LCAxMjgsIDgwLCA4NSwgNjksIDEyOCwgODAsIDg1LCA2NiwgNzYsIDczLCAxOTUsIDgwLCAKLSAgICA4NSwgNjUsIDgxLCAxMjgsIDgwLCA4NSwgNjUsIDY5LCAxMjgsIDgwLCA4NSwgNTAsIDEyOCwgODAsIDg1LCAxMjgsIDgwLCAKLSAgICA4NCwgNzIsIDY1LCA3MiwgMTkzLCA4MCwgODQsIDY5LCAxMjgsIDgwLCA4MywgNzMsIDc2LCAyMDEsIDgwLCA4MywgNzMsIAotICAgIDcwLCA3MywgODMsIDg0LCA3OSwgODMsIDg5LCA3OCwgNjUsIDcxLCA3NywgNjUsIDEyOCwgODAsIDgzLCA3MywgNzAsIDczLCAKLSAgICA4MywgODQsIDc5LCA4MCwgNjUsIDgyLCA2NSwgNzUsIDY1LCA3NiwgNjksIDgzLCA3NywgNjUsIDEyOCwgODAsIDgzLCA3MywgCi0gICAgNzAsIDczLCA4MywgODQsIDc5LCAyMDYsIDgwLCA4MywgNzMsIDcwLCA3MywgODMsIDg0LCA3OSwgNzYsIDg5LCA3MSwgNzMsIAotICAgIDgzLCA3NywgNjUsIDEyOCwgODAsIDgzLCA3MywgMTI4LCA4MCwgODMsIDEyOCwgODAsIDgyLCA3OSwgODYsIDY5LCAxMjgsIAotICAgIDgwLCA4MiwgNzksIDg0LCA3OSwgODYsIDY1LCA4MiwgODksIDIxMSwgODAsIDgyLCA3OSwgODQsIDc5LCAyMTEsIDgwLCA4MiwgCi0gICAgNzksIDgzLCA3MSwgNjksIDcxLCA4MiwgNjUsIDc3LCA3NywgNjksIDc4LCA3MywgMTI4LCA4MCwgODIsIDc5LCA4MCwgNzksIAotICAgIDgyLCA4NCwgNzMsIDc5LCA3OCwgNjUsIDIwNCwgODAsIDgyLCA3OSwgODAsIDc5LCA4MiwgODQsIDczLCA3OSwgNzgsIDEyOCwgCi0gICAgODAsIDgyLCA3OSwgODAsIDY5LCA4MiwgODQsIDIxNywgODAsIDgyLCA3OSwgODAsIDY5LCA3NiwgNzYsIDY5LCAyMTAsIDgwLCAKLSAgICA4MiwgNzksIDc5LCA3MCwgMTI4LCA4MCwgODIsIDc5LCA3NiwgNzksIDc4LCA3MSwgNjksIDE5NiwgODAsIDgyLCA3OSwgNzYsIAotICAgIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTk3LCA4MCwgODIsIDc5LCA3NCwgNjksIDY3LCA4NCwgNzMsIDg2LCA2OSwgMTI4LCA4MCwgCi0gICAgODIsIDc5LCA3NCwgNjksIDY3LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA4MCwgODIsIDc5LCA3MSwgODIsIDY5LCA4MywgODMsIAotICAgIDEyOCwgODAsIDgyLCA3OSwgNzAsIDc5LCA4NSwgNzgsIDY4LCAxMjgsIDgwLCA4MiwgNzksIDY4LCA4NSwgNjcsIDg0LCAKLSAgICAxMjgsIDgwLCA4MiwgNzksIDY4LCA4NSwgNjcsIDIxMiwgODAsIDgyLCA3MywgODYsIDY1LCA4NCwgNjksIDEyOCwgODAsIAotICAgIDgyLCA3MywgODMsIDcyLCA4NCwgNzIsIDY1LCA3NywgNjUsIDg0LCA4MiwgMTkzLCA4MCwgODIsIDczLCA3OCwgODQsIDgzLCAKLSAgICAxMjgsIDgwLCA4MiwgNzMsIDc4LCA4NCwgMTI4LCA4MCwgODIsIDczLCA3OCwgMjEyLCA4MCwgODIsIDczLCA3OCwgNjcsIAotICAgIDY5LCA4MywgODMsIDEyOCwgODAsIDgyLCA3MywgNzcsIDY5LCAxMjgsIDgwLCA4MiwgNzMsIDc3LCAxOTcsIDgwLCA4MiwgCi0gICAgNjksIDg2LCA3MywgNzksIDg1LCAyMTEsIDgwLCA4MiwgNjksIDgzLCA2OSwgNzgsIDg0LCA2NSwgODQsIDczLCA3OSwgMjA2LCAKLSAgICA4MCwgODIsIDY5LCA4MywgNjcsIDgyLCA3MywgODAsIDg0LCA3MywgNzksIDIwNiwgODAsIDgyLCA2OSwgODAsIDc5LCA3OCwgCi0gICAgNjgsIDY5LCA4MiwgNjUsIDc4LCA2NywgNjksIDEyOCwgODAsIDgyLCA2OSwgNzgsIDc1LCA3MiwgNjUsIDEyOCwgODAsIDgyLCAKLSAgICA2OSwgNzAsIDY1LCA2NywgMTk3LCA4MCwgODIsIDY5LCA2NywgNzMsIDgwLCA3MywgODQsIDY1LCA4NCwgNjksIDEyOCwgODAsIAotICAgIDgyLCA2OSwgNjcsIDY5LCA2OCwgNzMsIDc4LCAxOTksIDgwLCA4MiwgNjksIDY3LCA2OSwgNjgsIDY5LCA4MywgMTI4LCA4MCwgCi0gICAgODIsIDY5LCA2NywgNjksIDY4LCA2OSwgMjExLCA4MCwgODIsIDY5LCA2NywgNjksIDY4LCA2OSwgMTk2LCA4MCwgODIsIDY5LCAKLSAgICA2NywgNjksIDY4LCA2OSwgMTI4LCA4MCwgODIsIDY5LCA2NywgNjksIDY4LCAxOTcsIDgwLCA4MiwgNjUsIDc3LCA0NSwgODAsIAotICAgIDczLCA3MywgMTI4LCA4MCwgODIsIDY1LCA3NywgNDUsIDgwLCA3MywgMjAxLCA4MCwgODIsIDY1LCA3NywgNDUsIDc3LCA4NSwgCi0gICAgNzksIDg5LCAxMjgsIDgwLCA4MiwgNjUsIDc3LCA0NSwgNzcsIDg1LCA3OSwgMjE3LCA4MCwgODIsIDY1LCA3NywgNDUsIDY2LCAKLSAgICA4NSwgNzksIDc4LCAxMjgsIDgwLCA4MiwgNjUsIDc3LCA0NSwgNjYsIDg1LCA3OSwgMjA2LCA4MCwgODIsIDY1LCA3NywgNDUsIAotICAgIDY2LCA2OSwgNzMsIDEyOCwgODAsIDgyLCA2NSwgNzcsIDQ1LCA2NiwgNjksIDIwMSwgODAsIDgyLCA2NSwgNzcsIDEyOCwgCi0gICAgODAsIDgyLCA2NSwgMjA1LCA4MCwgODIsIDEyOCwgODAsIDgwLCA4NiwgMTI4LCA4MCwgODAsIDc3LCAxMjgsIDgwLCA4MCwgCi0gICAgNjUsIDEyOCwgODAsIDc5LCA4OSwgMTI4LCA4MCwgNzksIDg4LCAxMjgsIDgwLCA3OSwgODcsIDY5LCA4MiwgMjExLCA4MCwgCi0gICAgNzksIDg3LCA2OSwgODIsIDEyOCwgODAsIDc5LCA4NywgNjgsIDY5LCA4MiwgNjksIDE5NiwgODAsIDc5LCA4NywgNjgsIDY5LCAKLSAgICA4MiwgMTI4LCA4MCwgNzksIDg1LCA3OCwgMTk2LCA4MCwgNzksIDg1LCA3NiwgODQsIDgyLCAyMTcsIDgwLCA3OSwgODUsIAotICAgIDY3LCA3MiwgMTI4LCA4MCwgNzksIDg0LCA2NSwgODQsIDc5LCAxMjgsIDgwLCA3OSwgODQsIDY1LCA2NiwgNzYsIDE5NywgCi0gICAgODAsIDc5LCAyMTIsIDgwLCA3OSwgODMsIDg0LCA4MCwgNzksIDgzLCA3MywgODQsIDczLCA3OSwgMjA2LCA4MCwgNzksIDgzLCAKLSAgICA4NCwgNjYsIDc5LCA4OCwgMTI4LCA4MCwgNzksIDgzLCA4NCwgNjUsIDIwNCwgODAsIDc5LCA4MywgODQsIDEyOCwgODAsIAotICAgIDc5LCA4MywgMjEyLCA4MCwgNzksIDgzLCA4MywgNjksIDgzLCA4MywgNzMsIDc5LCA3OCwgMTI4LCA4MCwgNzksIDgyLCA4MiwgCi0gICAgNjksIDY3LCA4NCwgODUsIDgzLCAxMjgsIDgwLCA3OSwgODIsIDgyLCA2OSwgNjcsIDg0LCA4NSwgMjExLCA4MCwgNzksIDgwLCAKLSAgICA4MCwgNjksIDgyLCAxMjgsIDgwLCA3OSwgODAsIDEyOCwgODAsIDc5LCAyMDgsIDgwLCA3OSwgNzksIDY4LCA3NiwgNjksIAotICAgIDEyOCwgODAsIDc5LCA3OSwgMTI4LCA4MCwgNzksIDc4LCA2OCwgNzksIDEyOCwgODAsIDc5LCAyMDYsIDgwLCA3OSwgNzYsIAotICAgIDczLCA4MywgNzIsIDEyOCwgODAsIDc5LCA3NiwgNzMsIDY3LCAxOTcsIDgwLCA3OSwgNzYsIDIwMSwgODAsIDc5LCA3NiwgCi0gICAgNjksIDEyOCwgODAsIDc5LCA3NiwgMTk3LCA4MCwgNzksIDc1LCA4MiwgODksIDg0LCA3MywgNjksIDEyOCwgODAsIDc5LCAKLSAgICA3NSwgNzksIDc0LCA3MywgMTI4LCA4MCwgNzksIDczLCA3OCwgODQsIDIxMSwgODAsIDc5LCA3MywgNzgsIDg0LCA3OSwgCi0gICAgMTI4LCA4MCwgNzksIDczLCA3OCwgODQsIDY5LCA4MiwgMTI4LCA4MCwgNzksIDczLCA3OCwgODQsIDY5LCAxOTYsIDgwLCAKLSAgICA3OSwgNzMsIDc4LCA4NCwgMTI4LCA4MCwgNzksIDczLCA3OCwgMjEyLCA4MCwgNzksIDY5LCA4NCwgODIsIDIxNywgODAsIAotICAgIDc5LCA2OSwgODQsIDczLCAxOTUsIDgwLCA3OSwgNjgsIDY1LCA4NCwgODUsIDgzLCAxMjgsIDgwLCA3OSwgNjUsIDEyOCwgCi0gICAgODAsIDc5LCAxMjgsIDgwLCAyMDcsIDgwLCA3OCwgNjksIDg1LCA3NywgNjUsIDg0LCA2NSwgMTI4LCA4MCwgNzYsIDg1LCAKLSAgICA4NCwgNzksIDEyOCwgODAsIDc2LCA4NSwgODMsIDQ1LCA3NywgNzMsIDc4LCA4NSwgMjExLCA4MCwgNzYsIDg1LCA4MywgCi0gICAgMTI4LCA4MCwgNzYsIDg1LCA4MiwgNjUsIDc2LCAxMjgsIDgwLCA3NiwgODUsIDc3LCA2OSwgMTk2LCA4MCwgNzYsIDg1LCAKLSAgICA3NywgMTI4LCA4MCwgNzYsIDg1LCA3NSwgMTI4LCA4MCwgNzYsIDg1LCA3MSwgMTI4LCA4MCwgNzYsIDc5LCA4NywgMTI4LCAKLSAgICA4MCwgNzYsIDc5LCA4MCwgNzIsIDg1LCAxMjgsIDgwLCA3NiwgNjksIDg0LCA3MiwgODIsIDc5LCA3OCwgMTI4LCA4MCwgNzYsIAotICAgIDY1LCA4OSwgNzMsIDc4LCAxOTksIDgwLCA3NiwgNjUsIDgzLCA4NCwgNzMsIDY3LCA4MywgMTI4LCA4MCwgNzYsIDY1LCA3OCwgCi0gICAgNjksIDEyOCwgODAsIDc2LCA2NSwgNzgsIDE5NywgODAsIDc2LCA2NSwgNzgsIDY3LCAyMDMsIDgwLCA3NiwgNjUsIDc1LCAKLSAgICAxMjgsIDgwLCA3NiwgNjUsIDcxLCA3MywgNzksIDIxMSwgODAsIDc2LCA2NSwgNjcsIDY5LCA3MiwgNzksIDc2LCA2OCwgNjksIAotICAgIDIxMCwgODAsIDc2LCA2NSwgNjcsIDE5NywgODAsIDc2LCA2NSwgMTI4LCA4MCwgNzMsIDkwLCA5MCwgNzMsIDY3LCA2NSwgCi0gICAgODQsIDc5LCAxMjgsIDgwLCA3MywgOTAsIDkwLCA2NSwgMTI4LCA4MCwgNzMsIDg4LCAxMjgsIDgwLCA3MywgODcsIDgyLCAKLSAgICAxMjgsIDgwLCA3MywgODQsIDY3LCA3MiwgNzAsIDc5LCA4MiwgNzUsIDEyOCwgODAsIDczLCA4NCwgNjcsIDcyLCA3MCwgNzksIAotICAgIDgyLCAyMDMsIDgwLCA3MywgODQsIDEyOCwgODAsIDczLCA4MywgODQsIDc5LCA3NiwgMTI4LCA4MCwgNzMsIDgzLCA2OSwgCi0gICAgNzYsIDY5LCA3MiwgMTI4LCA4MCwgNzMsIDgzLCA2NywgNjksIDgzLCAxMjgsIDgwLCA3MywgODIsIDczLCA3MSwgMTI4LCAKLSAgICA4MCwgNzMsIDgyLCA3MywgMTk5LCA4MCwgNzMsIDgyLCA3MywgNjksIDY5LCA3OCwgMTI4LCA4MCwgNzMsIDgwLCA3MywgNzgsIAotICAgIDcxLCAxMjgsIDgwLCA3MywgODAsIDY1LCA2OSwgNzcsIDcxLCA2NiwgNzMsIDY5LCA2OSwgMTI4LCA4MCwgNzMsIDgwLCA2NSwgCi0gICAgNjksIDc3LCA2NiwgNjUsIDEyOCwgODAsIDczLCA4MCwgMTI4LCA4MCwgNzMsIDc4LCA4NywgNzIsIDY5LCA2OSwgMjA0LCAKLSAgICA4MCwgNzMsIDc4LCA2OSwgNjUsIDgwLCA4MCwgNzYsIDY5LCAxMjgsIDgwLCA3MywgNzgsIDE5NywgODAsIDczLCA3OCwgNjUsIAotICAgIDgyLCA2NiwgNzksIDgyLCA2NSwgODMsIDEyOCwgODAsIDczLCA3NiwgNzYsIDEyOCwgODAsIDczLCA3NiwgMTk3LCA4MCwgCi0gICAgNzMsIDc2LCA2NywgODIsIDc5LCAyMTUsIDgwLCA3MywgNzUsIDg1LCA4MiwgODUsIDEyOCwgODAsIDczLCA3NSwgNzksIAotICAgIDEyOCwgODAsIDczLCA3MSwgMTI4LCA4MCwgNzMsIDE5OSwgODAsIDczLCA2OSwgODgsIDEyOCwgODAsIDczLCA2OSwgODUsIAotICAgIDgwLCA0NSwgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgNzIsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgODMsIDgzLCAKLSAgICA2NSwgNzgsIDcxLCA4MywgNzMsIDc5LCA4MywgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIDc5LCA4MywgCi0gICAgNDUsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgODMsIDczLCA3OSwgODMsIAotICAgIDQ1LCA4NCwgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIDc5LCAKLSAgICA4MywgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIDc5LCA4MywgCi0gICAgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgODMsIDczLCA3OSwgODMsIAotICAgIDQ1LCA2NywgNzMsIDY5LCA4NSwgNjcsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgODIsIDczLCA2OSwgODUsIDc2LCAKLSAgICA0NSwgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgODIsIDczLCA2OSwgCi0gICAgODUsIDc2LCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDc4LCA3MywgNjksIDg1LCA3OCwgMTI4LCA4MCwgNzMsIDY5LCAKLSAgICA4NSwgODAsIDQ1LCA3NywgNzMsIDY5LCA4NSwgNzcsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgNzUsIDcyLCA3MywgCi0gICAgNjksIDg1LCA3NSwgNzIsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgNjcsIDczLCA2OSwgODUsIDY3LCAxMjgsIDgwLCAKLSAgICA3MywgNjksIDg1LCA4MCwgNDUsIDY3LCA3MiwgNzMsIDY5LCA4NSwgNjcsIDcyLCAxMjgsIDgwLCA3MywgNjksIDg1LCAyMDgsIAotICAgIDgwLCA3MywgNjksIDg0LCAxMjgsIDgwLCA3MywgNjksIDgwLCAxMjgsIDgwLCA3MywgNjksIDY5LCA4NCwgMTI4LCA4MCwgCi0gICAgNzMsIDY5LCA2OSwgODEsIDEyOCwgODAsIDczLCA2OSwgNjcsIDY5LCAxMjgsIDgwLCA3MywgNjksIDEyOCwgODAsIDczLCAKLSAgICA2NywgNzUsIDY5LCA4NCwgMTI4LCA4MCwgNzMsIDY3LCA3NSwgMTI4LCA4MCwgNzMsIDY1LCA4MywgODUsIDg0LCA3OSwgODIsIAotICAgIDg1LCAxMjgsIDgwLCA3MywgNjUsIDgzLCA3NywgMTkzLCA4MCwgNzMsIDY1LCA3OCwgNzksIDEyOCwgODAsIDIwMSwgODAsIAotICAgIDcyLCA4NywgNjUsIDEyOCwgODAsIDcyLCA4NSwgODQsIDcyLCA2NSwgNzksIDEyOCwgODAsIDcyLCA4NSwgMjEwLCA4MCwgCi0gICAgNzIsIDg1LCA3OCwgNzEsIDEyOCwgODAsIDcyLCA4MiwgNjUsIDgzLCA2OSwgMTI4LCA4MCwgNzIsIDc5LCA3OCwgNjksIDgzLCAKLSAgICAxMjgsIDgwLCA3MiwgNzksIDY5LCA3OCwgNzMsIDY3LCA3MywgNjUsIDIwNiwgODAsIDcyLCA3OSwgNjUsIDEyOCwgODAsIAotICAgIDcyLCA3OSwgMTI4LCA4MCwgNzIsIDIwNywgODAsIDcyLCA3OCwgNjUsIDY5LCAyMDMsIDgwLCA3MiwgNzMsIDc4LCA4NCwgCi0gICAgNzIsIDg1LCAxMjgsIDgwLCA3MiwgNzMsIDc2LCA3OSwgODMsIDc5LCA4MCwgNzIsIDY5LCA4MiwgMjExLCA4MCwgNzIsIDczLCAKLSAgICA3NiwgNzMsIDgwLCA4MCwgNzMsIDc4LCAxOTcsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIDcyLCA0NSwgODQsIDcyLCA3MywgCi0gICAgNjksIDg1LCA4NCwgNzIsIDEyOCwgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDQ1LCA4MywgNzMsIDc5LCA4MywgMTI4LCAKLSAgICA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA4MCwgNzIsIDczLCA2OSwgCi0gICAgODUsIDgwLCA3MiwgNDUsIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCAyMDAsIDgwLCAKLSAgICA3MiwgNzMsIDEyOCwgODAsIDcyLCAyMDEsIDgwLCA3MiwgNjksIDY5LCAxMjgsIDgwLCA3MiwgNjksIDEyOCwgODAsIDcyLCAKLSAgICA2NSwgODMsIDY5LCA0NSwgMTk4LCA4MCwgNzIsIDY1LCA4MywgNjksIDQ1LCAxOTQsIDgwLCA3MiwgNjUsIDgyLCA4OSwgNzgsIAotICAgIDcxLCA2OSwgNjUsIDIwNCwgODAsIDcyLCA2NSwgODIsIDEyOCwgODAsIDcyLCA2NSwgNzgsIDEyOCwgODAsIDcyLCA2NSwgCi0gICAgNzcsIDEyOCwgODAsIDcyLCA2NSwgNzMsIDgzLCA4NCwgNzksIDIxMSwgODAsIDcyLCA2NSwgNzEsIDgzLCA0NSwgODAsIAotICAgIDE5MywgODAsIDcyLCA2NSwgNjUsIDgyLCA3NSwgNjUsIDY1LCAxMjgsIDgwLCA3MiwgNjUsIDY1LCAxMjgsIDgwLCA3MiwgCi0gICAgNjUsIDEyOCwgODAsIDcxLCAxMjgsIDgwLCA3MCwgMTI4LCA4MCwgNjksIDg1LCA4OCwgMTI4LCA4MCwgNjksIDg1LCA4NCwgCi0gICAgNjUsIDY5LCAxMjgsIDgwLCA2OSwgODUsIDg0LCAxMjgsIDgwLCA2OSwgODQsIDY1LCA4MywgODQsIDc5LCA3NSwgNzksIDg1LCAKLSAgICA3MCwgNzMsIDgzLCA3NywgNjUsIDEyOCwgODAsIDY5LCA4NCwgNjUsIDgzLCA4NCwgNzMsIDEyOCwgODAsIDY5LCA4NCwgNjUsIAotICAgIDgzLCA3NywgNjUsIDEyOCwgODAsIDY5LCA4NCwgNjUsIDc2LCA3NiwgNjksIDE5NiwgODAsIDY5LCA4MywgNzksIDEyOCwgCi0gICAgODAsIDY5LCA4MywgMjA3LCA4MCwgNjksIDgzLCA3MiwgNTAsIDEyOCwgODAsIDY5LCA4MywgNjksIDg0LCAxOTMsIDgwLCAKLSAgICA2OSwgMjExLCA4MCwgNjksIDgyLCA4NCwgNzIsIDIwNywgODAsIDY5LCA4MiwgODMsIDgwLCA2OSwgNjcsIDg0LCA3MywgODYsIAotICAgIDY5LCAxMjgsIDgwLCA2OSwgODIsIDgzLCA3OSwgNzgsIDY1LCAyMDQsIDgwLCA2OSwgODIsIDgzLCA3OSwgNzgsIDEyOCwgCi0gICAgODAsIDY5LCA4MiwgODMsIDc5LCAyMDYsIDgwLCA2OSwgODIsIDgzLCA3MywgNjUsIDIwNiwgODAsIDY5LCA4MiwgODMsIDY5LCAKLSAgICA4NiwgNjksIDgyLCA3MywgNzgsIDE5OSwgODAsIDY5LCA4MiwgODAsIDY5LCA3OCwgNjgsIDczLCA2NywgODUsIDc2LCA2NSwgCi0gICAgODIsIDEyOCwgODAsIDY5LCA4MiwgODAsIDY5LCA3OCwgNjgsIDczLCA2NywgODUsIDc2LCA2NSwgMjEwLCA4MCwgNjksIDgyLCAKLSAgICA3NywgNjUsIDc4LCA2OSwgNzgsIDIxMiwgODAsIDY5LCA4MiwgNzMsIDgzLCA4MCwgNzksIDc3LCA2OSwgNzgsIDczLCAxMjgsIAotICAgIDgwLCA2OSwgODIsIDczLCA4MywgODAsIDc5LCA3NywgNjksIDc4LCAyMDEsIDgwLCA2OSwgODIsIDcwLCA3OSwgODIsIDc3LCAKLSAgICA3MywgNzgsIDE5OSwgODAsIDY5LCA4MiwgNzAsIDY5LCA2NywgODQsIDg1LCAyMDUsIDgwLCA2OSwgODIsIDcwLCA2OSwgNjcsIAotICAgIDg0LCA2NSwgMTI4LCA4MCwgNjksIDgyLCA3MCwgNjksIDY3LCA4NCwgMTkzLCA4MCwgNjksIDgyLCA2NywgODUsIDgzLCA4MywgCi0gICAgNzMsIDg2LCA2OSwgMTI4LCA4MCwgNjksIDgyLCA2NywgNjksIDc4LCAyMTIsIDgwLCA2OSwgODAsIDY5LCA4NCwgMTI4LCAKLSAgICA4MCwgNjksIDgwLCA2OSwgMjEyLCA4MCwgNjksIDc5LCA4MiwgODQsIDIwMCwgODAsIDY5LCA3OSwgODAsIDc2LCA2OSwgCi0gICAgMTI4LCA4MCwgNjksIDc4LCA4NCwgNjUsIDgzLCA2OSwgNzcsIDY5LCAxMjgsIDgwLCA2OSwgNzgsIDg0LCA2NSwgNzEsIDgyLCAKLSAgICA2NSwgNzcsIDEyOCwgODAsIDY5LCA3OCwgODQsIDY1LCA3MSwgNzksIDc4LCAxMjgsIDgwLCA2OSwgNzgsIDgzLCA4NSwgCi0gICAgMTI4LCA4MCwgNjksIDc4LCA4MywgNzMsIDg2LCAxOTcsIDgwLCA2OSwgNzgsIDc4LCAyMTcsIDgwLCA2OSwgNzgsIDczLCAKLSAgICA3MiwgNzMsIDEyOCwgODAsIDY5LCA3OCwgNzEsIDg1LCA3MywgNzgsIDEyOCwgODAsIDY5LCA3OCwgNzEsIDc1LCA2NSwgNzYsIAotICAgIDEyOCwgODAsIDY5LCA3OCwgNjksIDg0LCA4MiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgwLCA2OSwgNzgsIDY3LCA3MywgCi0gICAgNzYsIDEyOCwgODAsIDY5LCA3NiwgNjUsIDgzLCA4NCwgNzksIDc4LCAxMjgsIDgwLCA2OSwgNzYsIDY1LCA4MywgODQsIDc5LCAKLSAgICAyMDYsIDgwLCA2OSwgNzMsIDg0LCA3MiwgMTI4LCA4MCwgNjksIDcyLCA2OSwgNzIsIDEyOCwgODAsIDY5LCA3MiwgNjksIAotICAgIDIwMCwgODAsIDY5LCA3MiwgMTI4LCA4MCwgNjksIDIwMCwgODAsIDY5LCA2OSwgOTAsIDczLCAxMjgsIDgwLCA2OSwgNjksIAotICAgIDgzLCA3MiwgNzMsIDEyOCwgODAsIDY5LCA2OSwgODAsIDEyOCwgODAsIDY5LCA2OSwgNzcsIDEyOCwgODAsIDY5LCA2OSwgCi0gICAgMTI4LCA4MCwgNjksIDY4LCA2OSwgODMsIDg0LCA4MiwgNzMsIDY1LCA3OCwgODMsIDEyOCwgODAsIDY5LCA2OCwgNjksIDgzLCAKLSAgICA4NCwgODIsIDczLCA2NSwgNzgsIDEyOCwgODAsIDY5LCA2OCwgNjksIDgzLCA4NCwgNjUsIDc2LCAxMjgsIDgwLCA2OSwgNjgsIAotICAgIDY5LCA4MywgODQsIDY1LCAyMDQsIDgwLCA2OSwgNjgsIDY1LCAyMDQsIDgwLCA2OSwgNjUsIDY3LCA3MiwgMTI4LCA4MCwgCi0gICAgNjksIDY1LCA2NywgNjksIDEyOCwgODAsIDY5LCA2NSwgNjcsIDE5NywgODAsIDY4LCAxMjgsIDgwLCA2NywgMTI4LCA4MCwgCi0gICAgNjUsIDkwLCA2OSwgODIsIDEyOCwgODAsIDY1LCA4OSwgNjksIDgyLCA3OSwgNzUsIDEyOCwgODAsIDY1LCA4OSwgNjUsIDc4LCAKLSAgICA3OCwgNjUsIDEyOCwgODAsIDY1LCA4OSwgMTI4LCA4MCwgNjUsIDg4LCAxMjgsIDgwLCA2NSwgODcsIDc4LCAxMjgsIDgwLCAKLSAgICA2NSwgMjE1LCA4MCwgNjUsIDg2LCA3MywgODksIDY1LCA3OCwgNzMsIDEyOCwgODAsIDY1LCA4NCwgODQsIDY5LCA4MiwgNzgsIAotICAgIDEyOCwgODAsIDY1LCA4NCwgNzIsIDY1LCA3NywgNjUsIDgzLCA2NSwgODQsIDEyOCwgODAsIDY1LCA4NCwgMjAwLCA4MCwgCi0gICAgNjUsIDg0LCA2NSwgNzUsIDEyOCwgODAsIDY1LCA4NCwgNjUsIDcyLCAxMjgsIDgwLCA2NSwgODQsIDEyOCwgODAsIDY1LCAKLSAgICA4MywgODUsIDgxLCAxMjgsIDgwLCA2NSwgODMsIDgzLCA4MCwgNzksIDgyLCAyMTIsIDgwLCA2NSwgODMsIDgzLCA3MywgODYsIAotICAgIDY5LCA0NSwgODAsIDg1LCA3NiwgNzYsIDQ1LCA4NSwgODAsIDQ1LCA3OSwgODUsIDg0LCA4MCwgODUsIDIxMiwgODAsIDY1LCAKLSAgICA4MywgODMsIDczLCA4NiwgNjksIDQ1LCA4MCwgODUsIDc2LCA3NiwgNDUsIDY4LCA3OSwgODcsIDc4LCA0NSwgNzksIDg1LCAKLSAgICA4NCwgODAsIDg1LCAyMTIsIDgwLCA2NSwgODMsIDcyLCA4NCwgNjUsIDEyOCwgODAsIDY1LCA4MywgNzIsIDY1LCA2OSwgCi0gICAgMTI4LCA4MCwgNjUsIDgzLCA2OSwgODEsIDEyOCwgODAsIDY1LCA4MiwgODUsIDc3LCAxMjgsIDgwLCA2NSwgODIsIDg0LCAKLSAgICAyMTcsIDgwLCA2NSwgODIsIDg0LCA3OCwgNjksIDgyLCA4MywgNzIsIDczLCAyMDgsIDgwLCA2NSwgODIsIDg0LCA3MywgNjUsIAotICAgIDc2LCA3NiwgODksIDQ1LCA4MiwgNjksIDY3LCA4OSwgNjcsIDc2LCA2OSwgMTk2LCA4MCwgNjUsIDgyLCA4NCwgNzMsIDY1LCAKLSAgICAyMDQsIDgwLCA2NSwgODIsIDg0LCA3MiwgNzMsIDY1LCAyMDYsIDgwLCA2NSwgODIsIDIxMiwgODAsIDY1LCA4MiwgNzMsIAotICAgIDY3LCA3MiwgNzksIDc4LCAxMjgsIDgwLCA2NSwgODIsIDY5LCA4MywgODQsIDczLCA3MSwgNzcsIDY5LCA3OCwgNzksIDIwNiwgCi0gICAgODAsIDY1LCA4MiwgNjksIDgyLCA2OSwgNzgsIDEyOCwgODAsIDY1LCA4MiwgNjksIDc4LCA4NCwgNzIsIDY5LCA4MywgNzMsIAotICAgIDgzLCAxMjgsIDgwLCA2NSwgODIsIDY5LCA3OCwgODQsIDcyLCA2OSwgODMsIDczLCAyMTEsIDgwLCA2NSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDgyLCA2NSwgODMsIDE5NywgODAsIDY1LCA4MiwgNjUsIDc2LCA3NiwgNjksIDc2LCA3OSwgNzEsIDgyLCA2NSwgNzcsIAotICAgIDEyOCwgODAsIDY1LCA4MiwgNjUsIDc2LCA3NiwgNjksIDc2LCAxMjgsIDgwLCA2NSwgODIsIDY1LCA3NiwgNzYsIDY5LCAKLSAgICAyMDQsIDgwLCA2NSwgODIsIDY1LCA3NSwgNzYsIDczLCA4NCwgNzMsIDc1LCA3MywgMTI4LCA4MCwgNjUsIDgyLCA2NSwgNzUsIAotICAgIDc2LCA3MywgODQsIDczLCA3NSwgMjAxLCA4MCwgNjUsIDgyLCA2NSwgNzUsIDY1LCA3NiwgNjksIDgzLCA3NywgMTkzLCA4MCwgCi0gICAgNjUsIDgyLCA2NSwgNzEsIDgyLCA2NSwgODAsIDcyLCA3OSwgODMsIDEyOCwgODAsIDY1LCA4MiwgNjUsIDcxLCA4MiwgNjUsIAotICAgIDgwLCA3MiwgMTI4LCA4MCwgNjUsIDgyLCA2NSwgNzEsIDgyLCA2NSwgODAsIDIwMCwgODAsIDY1LCA4MiwgNjUsIDEyOCwgCi0gICAgODAsIDY1LCA4MiwgMTI4LCA4MCwgNjUsIDgwLCA4OSwgODIsIDg1LCA4MywgMTI4LCA4MCwgNjUsIDgwLCA2OSwgODIsIDY3LCAKLSAgICA3NiwgNzMsIDgwLCAxMjgsIDgwLCA2NSwgODAsIDY5LCAyMTAsIDgwLCA2NSwgODAsIDEyOCwgODAsIDY1LCAyMDgsIDgwLCAKLSAgICA2NSwgMjA3LCA4MCwgNjUsIDc4LCA4OSwgODUsIDc1LCA4NSwgMTI4LCA4MCwgNjUsIDc4LCA4OSwgNzMsIDc1LCA4NSwgCi0gICAgMTI4LCA4MCwgNjUsIDc4LCA4OSwgNjksIDY3LCA2OSwgNzUsIDEyOCwgODAsIDY1LCA3OCwgODksIDY1LCA3OCwgNzEsIDcxLCAKLSAgICA2NSwgMTI4LCA4MCwgNjUsIDc4LCA4OSwgNjUsIDc1LCA4MiwgNjUsIDEyOCwgODAsIDY1LCA3OCwgODQsIDczLCAxMjgsIAotICAgIDgwLCA2NSwgNzgsIDgzLCA3MywgNzksIDgzLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgwLCA2NSwgNzgsIDgzLCAKLSAgICA3MywgNzksIDgzLCA0NSwgNzUsIDY1LCA4MCwgODksIDY5LCA3OSwgODUsIDc4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgCi0gICAgODAsIDY1LCA3OCwgNzksIDc4LCA3MSwgNzksIDc4LCA2NSwgNzgsIDEyOCwgODAsIDY1LCA3OCwgNzksIDc2LCA3OSwgNzgsIAotICAgIDcxLCAxMjgsIDgwLCA2NSwgNzgsIDcxLCA4NywgNzMsIDgzLCA2NSwgNjgsIDEyOCwgODAsIDY1LCA3OCwgNzEsIDgyLCA2NSwgCi0gICAgNzgsIDcxLCA3NSwgNjksIDgwLCAxMjgsIDgwLCA2NSwgNzgsIDcxLCA3OSwgNzYsIDY1LCA4NCwgMTI4LCA4MCwgNjUsIDc4LCAKLSAgICA3MSwgNzYsIDY1LCA4OSwgNjUsIDgyLCAxMjgsIDgwLCA2NSwgNzgsIDcxLCA3NSwgNzksIDc4LCAxMjgsIDgwLCA2NSwgNzgsIAotICAgIDcxLCA3NSwgNjUsIDg0LCAxMjgsIDgwLCA2NSwgNzgsIDcxLCA3MiwgODUsIDc2LCA4NSwgMTI4LCA4MCwgNjUsIDc4LCA3MSwgCi0gICAgMTI4LCA4MCwgNjUsIDc4LCA2OSwgODUsIDc2LCA2OSwgODUsIDc4LCA3MSwgMTI4LCA4MCwgNjUsIDc4LCA2OCwgMTkzLCAKLSAgICA4MCwgNjUsIDc4LCA2NSwgNjksIDc2LCA2NSwgNjksIDc4LCA3MSwgMTI4LCA4MCwgNjUsIDc4LCAxMjgsIDgwLCA2NSwgNzcsIAotICAgIDg1LCA3OCwgNzEsIDc1LCA2NSwgNzIsIDEyOCwgODAsIDY1LCA3NywgODUsIDY4LCA4MCwgNzksIDY4LCAxMjgsIDgwLCA2NSwgCi0gICAgNzcsIDgzLCA3MiwgNjUsIDY5LCAxMjgsIDgwLCA2NSwgNzcsIDgwLCA3MiwgODksIDc2LCA3MywgNjUsIDIwNiwgODAsIDY1LCAKLSAgICA3NywgNzMsIDc4LCA3MSwgNzUsIDY1LCA3NiwgMTI4LCA4MCwgNjUsIDc3LCA2OSwgODAsIDY5LCA4NCwgMTI4LCA4MCwgNjUsIAotICAgIDc3LCA2OSwgNzgsIDY5LCA3OCwgNzEsIDEyOCwgODAsIDY1LCA3NywgNjUsIDY4LCA2NSwgMTI4LCA4MCwgNjUsIDc3LCA2NSwgCi0gICAgNjUsIDY5LCA3MiwgMTI4LCA4MCwgNjUsIDc2LCA4NSwgODQsIDY1LCAxMjgsIDgwLCA2NSwgNzYsIDc5LCA2NywgNzIsIDc1LCAKLSAgICA2NSwgMTI4LCA4MCwgNjUsIDc2LCAyMDUsIDgwLCA2NSwgNzYsIDc2LCA2NSwgODcsIDY1LCAxMjgsIDgwLCA2NSwgNzYsIAotICAgIDc2LCA2NSwgODMsIDEyOCwgODAsIDY1LCA3NiwgNjksIDg0LCA4NCwgNjksIDEyOCwgODAsIDY1LCA3NiwgNjUsIDg1LCA3OCwgCi0gICAgMTk5LCA4MCwgNjUsIDc2LCA2NSwgODQsIDY1LCA3NiwgNzMsIDkwLCA2OSwgMTk2LCA4MCwgNjUsIDc2LCA2NSwgODQsIDY1LCAKLSAgICA3NiwgNzMsIDkwLCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgODAsIDY1LCA3NiwgNjUsIDg0LCA2NSwgMjA0LCA4MCwgNjUsIAotICAgIDc1LCA4MCwgNjUsIDIwMywgODAsIDY1LCA3MywgODksIDY1LCA3OCwgNzgsIDc5LCA3MywgMTI4LCA4MCwgNjUsIDczLCA4MiwgCi0gICAgODQsIDcyLCA4MiwgNjUsIDEyOCwgODAsIDY1LCA3MywgODIsIDY5LCAxOTYsIDgwLCA2NSwgNzIsIDc2LCA2NSwgODYsIAotICAgIDIwMSwgODAsIDY1LCA3MSwgNjksIDgyLCAxMjgsIDgwLCA2NSwgNzEsIDE5NywgODAsIDY1LCA2OCwgNzcsIDE5MywgODAsIAotICAgIDY1LCA2OCwgMTkzLCA4MCwgNjUsIDY4LCAxMjgsIDgwLCA2NSwgNjcsIDc1LCA3MywgNzgsIDcxLCAxMjgsIDgwLCA2NSwgCi0gICAgNjcsIDc1LCA2NSwgNzEsIDY5LCAxMjgsIDgwLCA2NSwgNjUsIDg0LCA4NSwgMTI4LCA4MCwgNjUsIDY1LCA4MywgNjksIDc4LCAKLSAgICA4NCwgNzksIDEyOCwgODAsIDY1LCA2NSwgODIsIDY1LCA2OSwgMTI4LCA4MCwgNjUsIDY1LCA3NywgMTI4LCA4MCwgNjUsIAotICAgIDY1LCA3MywgMTI4LCA4MCwgNjUsIDY1LCA0NSwgODAsIDczLCA3NiwgNzYsIDY1LCAxMjgsIDgwLCA2NSwgNjUsIDEyOCwgCi0gICAgODAsIDUwLCAxMjgsIDgwLCA0OCwgNDksIDQ5LCAxMjgsIDgwLCA0OCwgNDksIDQ4LCAxMjgsIDgwLCA0OCwgNDgsIDU3LCAKLSAgICAxMjgsIDgwLCA0OCwgNDgsIDU2LCAxMjgsIDgwLCA0OCwgNDgsIDU1LCAxMjgsIDgwLCA0OCwgNDgsIDU0LCAxMjgsIDgwLCAKLSAgICA0OCwgNDgsIDUzLCAxMjgsIDgwLCA0OCwgNDgsIDUyLCAxMjgsIDgwLCA0OCwgNDgsIDUxLCA2NSwgMTI4LCA4MCwgNDgsIAotICAgIDQ4LCA1MSwgMTI4LCA4MCwgNDgsIDQ4LCA1MCwgMTI4LCA4MCwgNDgsIDQ4LCA0OSwgNjUsIDEyOCwgODAsIDQ4LCA0OCwgCi0gICAgNDksIDEyOCwgNzksIDg5LCA4MiwgNjUsIDc4LCA3MywgODMsIDc3LCAxOTMsIDc5LCA4OSwgNjUsIDc4LCA3OCwgNjUsIAotICAgIDEyOCwgNzksIDg4LCA3MywgNjUsIDEyOCwgNzksIDg4LCA3MywgMTkzLCA3OSwgODgsIDY5LCA3MywgNjUsIDIwMSwgNzksIAotICAgIDg4LCA2OSwgNzMsIDE5MywgNzksIDg2LCA2OSwgODIsIDgyLCA3MywgNjgsIDY5LCAxMjgsIDc5LCA4NiwgNjksIDgyLCA3NiwgCi0gICAgNzksIDc4LCAxOTksIDc5LCA4NiwgNjksIDgyLCA3NiwgNzMsIDc4LCA2OSwgMTI4LCA3OSwgODYsIDY5LCA4MiwgNzYsIDY1LCAKLSAgICA4OSwgMTI4LCA3OSwgODYsIDY5LCA4MiwgNzYsIDY1LCA4MCwgODAsIDczLCA3OCwgMTk5LCA3OSwgODYsIDY5LCA4MiwgNzYsIAotICAgIDY1LCA3MywgNjgsIDEyOCwgNzksIDg2LCA2OSwgODIsIDY2LCA2NSwgODIsIDEyOCwgNzksIDg2LCA2NSwgMjA0LCA3OSwgCi0gICAgODYsIDEyOCwgNzksIDg1LCA4NCwgNzYsIDczLCA3OCwgNjksIDE5NiwgNzksIDg1LCA4NCwgNzYsIDczLCA3OCwgNjksIAotICAgIDEyOCwgNzksIDg1LCA4NCwgNjksIDIxMCwgNzksIDg1LCA4NCwgNjYsIDc5LCAyMTYsIDc5LCA4NSwgNzgsIDc1LCA3MywgCi0gICAgMTkzLCA3OSwgODUsIDc4LCA2NywgNjksIDEyOCwgNzksIDg1LCA3OCwgNjcsIDE5NywgNzksIDg0LCA4NSwgMTI4LCA3OSwgCi0gICAgODQsIDg0LCA2NSwgODYsIDE5MywgNzksIDg0LCA4NCwgMTI4LCA3OSwgODQsIDcyLCA2NSwgNzYsIDY1LCAyMDYsIDc5LCAKLSAgICA4NCwgNzIsIDY1LCA3NiwgMTI4LCA3OSwgODMsIDc3LCA2NSwgNzgsIDg5LCAxOTMsIDc5LCA4MiwgODQsIDcyLCA3OSwgNzEsIAotICAgIDc5LCA3OCwgNjUsIDIwNCwgNzksIDgyLCA4NCwgNzIsIDc5LCA2OCwgNzksIDIxNiwgNzksIDgyLCA3OCwgNjUsIDg0LCAKLSAgICAxOTcsIDc5LCA4MiwgNzgsIDY1LCA3NywgNjksIDc4LCA4NCwgMTI4LCA3OSwgODIsIDc4LCA2NSwgNzcsIDY5LCA3OCwgCi0gICAgMjEyLCA3OSwgODIsIDc1LCA3MiwgNzksIDIwNiwgNzksIDgyLCA3MywgNzEsIDczLCA3OCwgNjUsIDIwNCwgNzksIDgyLCAKLSAgICA3MywgNzEsIDczLCA3OCwgMTI4LCA3OSwgODIsIDY5LCA0NSwgNTAsIDEyOCwgNzksIDgyLCA2OCwgNzMsIDc4LCA2NSwgCi0gICAgMjA0LCA3OSwgODIsIDY3LCA3MiwgNzMsIDY4LCAxMjgsIDc5LCA4MiwgNjUsIDc4LCA3MSwgMTk3LCA3OSwgODAsIDg0LCAKLSAgICA3MywgNzksIDIwNiwgNzksIDgwLCA4NCwgNzMsIDY3LCA2NSwgMjA0LCA3OSwgODAsIDgwLCA4MiwgNjksIDgzLCA4MywgNzMsIAotICAgIDc5LCA3OCwgMTI4LCA3OSwgODAsIDgwLCA3OSwgODMsIDczLCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA3OSwgODAsIDgwLCA3OSwgCi0gICAgODMsIDczLCA3OCwgMTk5LCA3OSwgODAsIDgwLCA3OSwgODMsIDY5LCAxMjgsIDc5LCA4MCwgNzIsIDczLCA4NSwgNjcsIDcyLCAKLSAgICA4NSwgODMsIDEyOCwgNzksIDgwLCA2OSwgODIsIDY1LCA4NCwgNzksIDgyLCAxMjgsIDc5LCA4MCwgNjksIDgyLCA2NSwgODQsIAotICAgIDc5LCAyMTAsIDc5LCA4MCwgNjksIDc4LCA3MywgNzgsIDE5OSwgNzksIDgwLCA2OSwgNzgsIDQ1LCA4MCwgMTI4LCA3OSwgCi0gICAgODAsIDY5LCA3OCwgNDUsIDc5LCA4NSwgODQsIDc2LCA3MywgNzgsIDY5LCAxOTYsIDc5LCA4MCwgNjksIDc4LCA0NSwgNzIsIAotICAgIDY5LCA2NSwgNjgsIDY5LCAxOTYsIDc5LCA4MCwgNjksIDc4LCA0NSwgNjcsIDczLCA4MiwgNjcsIDg1LCA3MywgODQsIDQ1LCAKLSAgICA3OSwgODUsIDg0LCA4MCwgODUsIDIxMiwgNzksIDgwLCA2OSwgMjA2LCA3OSwgNzksIDkwLCA2OSwgMTI4LCA3OSwgNzksIAotICAgIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3OSwgNzksIDg1LCAxMjgsIDc5LCA3OSwgNzcsIDg1LCAxMjgsIDc5LCA3OSwgCi0gICAgNjksIDEyOCwgNzksIDc5LCA2NiwgNzksIDc5LCA3MCwgNzMsIDc2LCA3MywgMTI4LCA3OSwgNzgsIDg1LCAxMjgsIDc5LCAKLSAgICA3OCwgODMsIDg1LCAxMjgsIDc5LCA3OCwgNzgsIDEyOCwgNzksIDc4LCA3NSwgNjUsIDgyLCAxMjgsIDc5LCA3OCwgNjksIAotICAgIDgzLCA2OSwgNzYsIDcwLCAxMjgsIDc5LCA3OCwgNjksIDQ1LCA4NywgNjUsIDIxNywgNzksIDc4LCA2OSwgNDUsIDg0LCA3MiwgCi0gICAgNzMsIDgyLCA4NCwgODksIDEyOCwgNzksIDc4LCA2OSwgNDUsIDc2LCA3MywgNzgsIDE5NywgNzksIDc4LCA2NywgNzksIDc3LCAKLSAgICA3MywgNzgsIDE5OSwgNzksIDc4LCA2NSwgODAsIDEyOCwgNzksIDc3LCA3MywgODMsIDgzLCA3MywgNzksIDIwNiwgNzksIAotICAgIDc3LCA3MywgNjcsIDgyLCA3OSwgNzgsIDEyOCwgNzksIDc3LCA3MywgNjcsIDgyLCA3OSwgMjA2LCA3OSwgNzcsIDY5LCA3MSwgCi0gICAgNjUsIDEyOCwgNzksIDc3LCA2OSwgNzEsIDE5MywgNzksIDc3LCA2NSwgNzYsIDc5LCA3OCwgMTI4LCA3OSwgNzYsIDczLCAKLSAgICA4NiwgNjksIDEyOCwgNzksIDc2LCA3MywgNzEsIDc5LCAyMDYsIDc5LCA3NiwgNjgsIDEyOCwgNzksIDc1LCA4NCwgMjA3LCAKLSAgICA3OSwgNzUsIDY1LCA4MiwgNjUsIDEyOCwgNzksIDc1LCA2NSwgODIsIDE5MywgNzksIDc0LCA3MywgNjYsIDg3LCA2NSwgCi0gICAgMjE3LCA3OSwgNzQsIDY5LCA3OSwgNzgsIDEyOCwgNzksIDczLCA3NiwgMTI4LCA3OSwgNzIsIDc3LCAxMjgsIDc5LCA3MiwgCi0gICAgMjA1LCA3OSwgNzIsIDEyOCwgNzksIDcxLCA4MiwgNjksIDEyOCwgNzksIDcxLCA3OSwgNzgsIDY5LCA3NSwgMTI4LCA3OSwgCi0gICAgNzEsIDc5LCA3OCwgNjksIDIwMywgNzksIDcxLCA3MiwgNjUsIDIwNSwgNzksIDcwLCA3MCwgNzMsIDY3LCA2OSwgODIsIAotICAgIDEyOCwgNzksIDcwLCA3MCwgNzMsIDY3LCA2OSwgMTI4LCA3OSwgNzAsIDcwLCA3MywgNjcsIDE5NywgNzksIDcwLCA3MCwgCi0gICAgMTI4LCA3OSwgNjksIDc1LCAxMjgsIDc5LCA2OCwgNjksIDc4LCAxMjgsIDc5LCA2OCwgMTk2LCA3OSwgNjcsIDg0LCA3OSwgCi0gICAgODAsIDg1LCA4MywgMTI4LCA3OSwgNjcsIDg0LCA3OSwgNjYsIDY5LCA4MiwgMTI4LCA3OSwgNjcsIDIxMCwgNzksIDY3LCAKLSAgICA3NiwgNzksIDY3LCA3NSwgMTI4LCA3OSwgNjcsIDY3LCA3NiwgODUsIDgzLCA3MywgNzksIDc4LCAxMjgsIDc5LCA2NiwgODMsIAotICAgIDg0LCA4MiwgODUsIDY3LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA3OSwgNjYsIDc5LCA3NiwgMjExLCA3OSwgNjYsIDc5LCAKLSAgICAyMDQsIDc5LCA2NiwgNzksIDcwLCA3MywgNzYsIDczLCAxMjgsIDc5LCA2NiwgNzYsIDczLCA4MSwgODUsIDE5NywgNzksIAotICAgIDY2LCA3NCwgNjksIDY3LCAyMTIsIDc5LCA2NiwgNjksIDc2LCA4NSwgODMsIDEyOCwgNzksIDY2LCA2OSwgNzYsIDc5LCA4MywgCi0gICAgMTI4LCA3OSwgNjYsIDEyOCwgNzksIDY1LCA4OSwgMTI4LCA3OSwgNjUsIDc1LCAxMjgsIDc5LCA2NSwgNjYsIDc5LCA2NSwgCi0gICAgNzAsIDczLCA3NiwgNzMsIDEyOCwgNzksIDE5MywgNzksIDQ4LCA1MywgNDksIDEyOCwgNzksIDQ4LCA1MywgNDgsIDY2LCAKLSAgICAxMjgsIDc5LCA0OCwgNTMsIDQ4LCA2NSwgMTI4LCA3OSwgNDgsIDUzLCA0OCwgMTI4LCA3OSwgNDgsIDUyLCA1NywgMTI4LCAKLSAgICA3OSwgNDgsIDUyLCA1NiwgMTI4LCA3OSwgNDgsIDUyLCA1NSwgMTI4LCA3OSwgNDgsIDUyLCA1NCwgMTI4LCA3OSwgNDgsIAotICAgIDUyLCA1MywgMTI4LCA3OSwgNDgsIDUyLCA1MiwgMTI4LCA3OSwgNDgsIDUyLCA1MSwgMTI4LCA3OSwgNDgsIDUyLCA1MCwgCi0gICAgMTI4LCA3OSwgNDgsIDUyLCA0OSwgMTI4LCA3OSwgNDgsIDUyLCA0OCwgMTI4LCA3OSwgNDgsIDUxLCA1NywgMTI4LCA3OSwgCi0gICAgNDgsIDUxLCA1NiwgMTI4LCA3OSwgNDgsIDUxLCA1NSwgMTI4LCA3OSwgNDgsIDUxLCA1NCwgNjgsIDEyOCwgNzksIDQ4LCAKLSAgICA1MSwgNTQsIDY3LCAxMjgsIDc5LCA0OCwgNTEsIDU0LCA2NiwgMTI4LCA3OSwgNDgsIDUxLCA1NCwgNjUsIDEyOCwgNzksIAotICAgIDQ4LCA1MSwgNTQsIDEyOCwgNzksIDQ4LCA1MSwgNTMsIDEyOCwgNzksIDQ4LCA1MSwgNTIsIDEyOCwgNzksIDQ4LCA1MSwgCi0gICAgNTEsIDY1LCAxMjgsIDc5LCA0OCwgNTEsIDUxLCAxMjgsIDc5LCA0OCwgNTEsIDUwLCAxMjgsIDc5LCA0OCwgNTEsIDQ5LCAKLSAgICAxMjgsIDc5LCA0OCwgNTEsIDQ4LCA2NSwgMTI4LCA3OSwgNDgsIDUxLCA0OCwgMTI4LCA3OSwgNDgsIDUwLCA1NywgNjUsIAotICAgIDEyOCwgNzksIDQ4LCA1MCwgNTcsIDEyOCwgNzksIDQ4LCA1MCwgNTYsIDEyOCwgNzksIDQ4LCA1MCwgNTUsIDEyOCwgNzksIAotICAgIDQ4LCA1MCwgNTQsIDEyOCwgNzksIDQ4LCA1MCwgNTMsIDY1LCAxMjgsIDc5LCA0OCwgNTAsIDUzLCAxMjgsIDc5LCA0OCwgCi0gICAgNTAsIDUyLCA2NSwgMTI4LCA3OSwgNDgsIDUwLCA1MiwgMTI4LCA3OSwgNDgsIDUwLCA1MSwgMTI4LCA3OSwgNDgsIDUwLCAKLSAgICA1MCwgMTI4LCA3OSwgNDgsIDUwLCA0OSwgMTI4LCA3OSwgNDgsIDUwLCA0OCwgNjUsIDEyOCwgNzksIDQ4LCA1MCwgNDgsIAotICAgIDEyOCwgNzksIDQ4LCA0OSwgNTcsIDY1LCAxMjgsIDc5LCA0OCwgNDksIDU3LCAxMjgsIDc5LCA0OCwgNDksIDU2LCAxMjgsIAotICAgIDc5LCA0OCwgNDksIDU1LCAxMjgsIDc5LCA0OCwgNDksIDU0LCAxMjgsIDc5LCA0OCwgNDksIDUzLCAxMjgsIDc5LCA0OCwgCi0gICAgNDksIDUyLCAxMjgsIDc5LCA0OCwgNDksIDUxLCAxMjgsIDc5LCA0OCwgNDksIDUwLCAxMjgsIDc5LCA0OCwgNDksIDQ5LCAKLSAgICAxMjgsIDc5LCA0OCwgNDksIDQ4LCA2NywgMTI4LCA3OSwgNDgsIDQ5LCA0OCwgNjYsIDEyOCwgNzksIDQ4LCA0OSwgNDgsIAotICAgIDY1LCAxMjgsIDc5LCA0OCwgNDksIDQ4LCAxMjgsIDc5LCA0OCwgNDgsIDU3LCAxMjgsIDc5LCA0OCwgNDgsIDU2LCAxMjgsIAotICAgIDc5LCA0OCwgNDgsIDU1LCAxMjgsIDc5LCA0OCwgNDgsIDU0LCA3MCwgMTI4LCA3OSwgNDgsIDQ4LCA1NCwgNjksIDEyOCwgCi0gICAgNzksIDQ4LCA0OCwgNTQsIDY4LCAxMjgsIDc5LCA0OCwgNDgsIDU0LCA2NywgMTI4LCA3OSwgNDgsIDQ4LCA1NCwgNjYsIAotICAgIDEyOCwgNzksIDQ4LCA0OCwgNTQsIDY1LCAxMjgsIDc5LCA0OCwgNDgsIDU0LCAxMjgsIDc5LCA0OCwgNDgsIDUzLCA2NSwgCi0gICAgMTI4LCA3OSwgNDgsIDQ4LCA1MywgMTI4LCA3OSwgNDgsIDQ4LCA1MiwgMTI4LCA3OSwgNDgsIDQ4LCA1MSwgMTI4LCA3OSwgCi0gICAgNDgsIDQ4LCA1MCwgMTI4LCA3OSwgNDgsIDQ4LCA0OSwgNjUsIDEyOCwgNzksIDQ4LCA0OCwgNDksIDEyOCwgNzksIDQ1LCAKLSAgICA4OSwgNjksIDEyOCwgNzksIDQ1LCA3OSwgNDUsIDczLCAxMjgsIDc5LCA0NSwgNjksIDEyOCwgNzgsIDkwLCA4OSwgODgsIAotICAgIDEyOCwgNzgsIDkwLCA4OSwgODQsIDEyOCwgNzgsIDkwLCA4OSwgODIsIDg4LCAxMjgsIDc4LCA5MCwgODksIDgyLCAxMjgsIAotICAgIDc4LCA5MCwgODksIDgwLCAxMjgsIDc4LCA5MCwgODksIDEyOCwgNzgsIDkwLCA4NSwgODgsIDEyOCwgNzgsIDkwLCA4NSwgCi0gICAgODIsIDg4LCAxMjgsIDc4LCA5MCwgODUsIDgyLCAxMjgsIDc4LCA5MCwgODUsIDgxLCAxMjgsIDc4LCA5MCwgODUsIDgwLCAKLSAgICAxMjgsIDc4LCA5MCwgODUsIDc5LCA4OCwgMTI4LCA3OCwgOTAsIDg1LCA3OSwgMTI4LCA3OCwgOTAsIDg1LCAyMDYsIDc4LCAKLSAgICA5MCwgODUsIDEyOCwgNzgsIDkwLCA3OSwgODgsIDEyOCwgNzgsIDkwLCA3OSwgODAsIDEyOCwgNzgsIDkwLCA3MywgODgsIAotICAgIDEyOCwgNzgsIDkwLCA3MywgODQsIDEyOCwgNzgsIDkwLCA3MywgODAsIDEyOCwgNzgsIDkwLCA3MywgNjksIDg4LCAxMjgsIAotICAgIDc4LCA5MCwgNzMsIDY5LCA4MCwgMTI4LCA3OCwgOTAsIDczLCA2OSwgMTI4LCA3OCwgOTAsIDczLCAxMjgsIDc4LCA5MCwgCi0gICAgNjksIDg4LCAxMjgsIDc4LCA5MCwgNjksIDg1LCA3NywgMTI4LCA3OCwgOTAsIDY5LCAxMjgsIDc4LCA5MCwgNjUsIDg4LCAKLSAgICAxMjgsIDc4LCA5MCwgNjUsIDg0LCAxMjgsIDc4LCA5MCwgNjUsIDgxLCAxMjgsIDc4LCA5MCwgNjUsIDgwLCAxMjgsIDc4LCAKLSAgICA5MCwgNjUsIDEyOCwgNzgsIDkwLCAxOTMsIDc4LCA4OSwgODcsIDY1LCAxMjgsIDc4LCA4OSwgODUsIDg4LCAxMjgsIDc4LCAKKyAgICA4NSwgMTI4LCA4MCwgODUsIDg0LCA4MiwgNjksIDcwLCA2NSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgwLCA4NSwgODQsIAorICAgIDEyOCwgODAsIDg1LCAyMTIsIDgwLCA4NSwgODMsIDcyLCA4MCwgNzMsIDc4LCAxMjgsIDgwLCA4NSwgODMsIDcyLCA4MCwgCisgICAgNzMsIDc1LCA2NSwgMTI4LCA4MCwgODUsIDgzLCA3MiwgNzMsIDc4LCAxOTksIDgwLCA4NSwgODIsIDg4LCAxMjgsIDgwLCAKKyAgICA4NSwgODIsIDgzLCA2OSwgMTI4LCA4MCwgODUsIDgyLCA4MCwgNzYsIDE5NywgODAsIDg1LCA4MiwgNzgsIDY1LCA3NywgNjUsIAorICAgIDEyOCwgODAsIDg1LCA4MiwgNzMsIDg0LCA4OSwgMTI4LCA4MCwgODUsIDgyLCA3MywgNzAsIDg5LCAxMjgsIDgwLCA4NSwgCisgICAgODIsIDEyOCwgODAsIDg1LCA4MSwgMTI4LCA4MCwgODUsIDgwLCAxMjgsIDgwLCA4NSwgNzksIDg4LCAxMjgsIDgwLCA4NSwgCisgICAgNzksIDgwLCAxMjgsIDgwLCA4NSwgNzksIDEyOCwgODAsIDg1LCA3OCwgNzEsIDY1LCA2NSwgNzcsIDEyOCwgODAsIDg1LCAKKyAgICA3OCwgNzEsIDEyOCwgODAsIDg1LCA3OCwgNjcsIDg0LCA4NSwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgwLCA4NSwgNzgsIAorICAgIDY3LCA4NCwgODUsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDgwLCA4NSwgNzcsIDgwLCAxMjgsIDgwLCA4NSwgNzcsIDEyOCwgCisgICAgODAsIDg1LCA2OSwgMTI4LCA4MCwgODUsIDY2LCA3NiwgNzMsIDE5NSwgODAsIDg1LCA2NSwgODEsIDEyOCwgODAsIDg1LCAKKyAgICA2NSwgNjksIDEyOCwgODAsIDg1LCA1MCwgMTI4LCA4MCwgODUsIDQ5LCAxMjgsIDgwLCA4NSwgMTI4LCA4MCwgODQsIDcyLCAKKyAgICA2NSwgNzIsIDE5MywgODAsIDg0LCA2OSwgMTI4LCA4MCwgODMsIDczLCA3NiwgMjAxLCA4MCwgODMsIDczLCA3MCwgNzMsIAorICAgIDgzLCA4NCwgNzksIDgzLCA4OSwgNzgsIDY1LCA3MSwgNzcsIDY1LCAxMjgsIDgwLCA4MywgNzMsIDcwLCA3MywgODMsIDg0LCAKKyAgICA3OSwgODAsIDY1LCA4MiwgNjUsIDc1LCA2NSwgNzYsIDY5LCA4MywgNzcsIDY1LCAxMjgsIDgwLCA4MywgNzMsIDcwLCA3MywgCisgICAgODMsIDg0LCA3OSwgMjA2LCA4MCwgODMsIDczLCA3MCwgNzMsIDgzLCA4NCwgNzksIDc2LCA4OSwgNzEsIDczLCA4MywgNzcsIAorICAgIDY1LCAxMjgsIDgwLCA4MywgNzMsIDEyOCwgODAsIDgzLCAxMjgsIDgwLCA4MiwgNzksIDg2LCA2OSwgMTI4LCA4MCwgODIsIAorICAgIDc5LCA4NCwgNzksIDg2LCA2NSwgODIsIDg5LCAyMTEsIDgwLCA4MiwgNzksIDg0LCA3OSwgMjExLCA4MCwgODIsIDc5LCA4NCwgCisgICAgNjksIDY3LCA4NCwgNjksIDE5NiwgODAsIDgyLCA3OSwgODMsIDcxLCA2OSwgNzEsIDgyLCA2NSwgNzcsIDc3LCA2OSwgNzgsIAorICAgIDczLCAxMjgsIDgwLCA4MiwgNzksIDgwLCA3OSwgODIsIDg0LCA3MywgNzksIDc4LCA2NSwgMjA0LCA4MCwgODIsIDc5LCA4MCwgCisgICAgNzksIDgyLCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA4MCwgODIsIDc5LCA4MCwgNjksIDgyLCA4NCwgMjE3LCA4MCwgODIsIDc5LCAKKyAgICA4MCwgNjksIDc2LCA3NiwgNjksIDIxMCwgODAsIDgyLCA3OSwgNzksIDcwLCAxMjgsIDgwLCA4MiwgNzksIDc2LCA3OSwgNzgsIAorICAgIDcxLCA2OSwgMTk2LCA4MCwgODIsIDc5LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCAxOTcsIDgwLCA4MiwgNzksIDc0LCA2OSwgCisgICAgNjcsIDg0LCA3MywgODYsIDY5LCAxMjgsIDgwLCA4MiwgNzksIDc0LCA2OSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgwLCAKKyAgICA4MiwgNzksIDcxLCA4MiwgNjksIDgzLCA4MywgMTI4LCA4MCwgODIsIDc5LCA3MSwgODIsIDY1LCAyMDUsIDgwLCA4MiwgNzksIAorICAgIDcwLCA3OSwgODUsIDc4LCA2OCwgMTI4LCA4MCwgODIsIDc5LCA2OCwgODUsIDY3LCA4NCwgMTI4LCA4MCwgODIsIDc5LCA2OCwgCisgICAgODUsIDY3LCAyMTIsIDgwLCA4MiwgNzMsIDg2LCA2NSwgODQsIDY5LCAxMjgsIDgwLCA4MiwgNzMsIDg2LCA2NSwgODQsIAorICAgIDE5NywgODAsIDgyLCA3MywgODYsIDY1LCA2NywgMjE3LCA4MCwgODIsIDczLCA4MywgNzIsIDg0LCA3MiwgNjUsIDc3LCA2NSwgCisgICAgODQsIDgyLCAxOTMsIDgwLCA4MiwgNzMsIDc4LCA4NCwgODMsIDEyOCwgODAsIDgyLCA3MywgNzgsIDg0LCAxMjgsIDgwLCAKKyAgICA4MiwgNzMsIDc4LCAyMTIsIDgwLCA4MiwgNzMsIDc4LCA2NywgNjksIDgzLCA4MywgMTI4LCA4MCwgODIsIDczLCA3NywgNjksIAorICAgIDEyOCwgODAsIDgyLCA3MywgNzcsIDE5NywgODAsIDgyLCA2OSwgODYsIDczLCA3OSwgODUsIDIxMSwgODAsIDgyLCA2OSwgCisgICAgODMsIDY5LCA4NCwgMTI4LCA4MCwgODIsIDY5LCA4MywgNjksIDc4LCA4NCwgNjUsIDg0LCA3MywgNzksIDIwNiwgODAsIDgyLCAKKyAgICA2OSwgODMsIDY3LCA4MiwgNzMsIDgwLCA4NCwgNzMsIDc5LCAyMDYsIDgwLCA4MiwgNjksIDgwLCA3OSwgNzgsIDY4LCA2OSwgCisgICAgODIsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDgwLCA4MiwgNjksIDc4LCA3NSwgNzIsIDY1LCAxMjgsIDgwLCA4MiwgNjksIDcwLCAKKyAgICA2NSwgNjcsIDE5NywgODAsIDgyLCA2OSwgNjcsIDczLCA4MCwgNzMsIDg0LCA2NSwgODQsIDY5LCAxMjgsIDgwLCA4MiwgNjksIAorICAgIDY3LCA2OSwgNjgsIDczLCA3OCwgMTk5LCA4MCwgODIsIDY5LCA2NywgNjksIDY4LCA2OSwgODMsIDEyOCwgODAsIDgyLCA2OSwgCisgICAgNjcsIDY5LCA2OCwgNjksIDIxMSwgODAsIDgyLCA2OSwgNjcsIDY5LCA2OCwgNjksIDE5NiwgODAsIDgyLCA2OSwgNjcsIDY5LCAKKyAgICA2OCwgNjksIDEyOCwgODAsIDgyLCA2OSwgNjcsIDY5LCA2OCwgMTk3LCA4MCwgODIsIDY1LCA3NywgNDUsIDgwLCA3MywgNzMsIAorICAgIDEyOCwgODAsIDgyLCA2NSwgNzcsIDQ1LCA4MCwgNzMsIDIwMSwgODAsIDgyLCA2NSwgNzcsIDQ1LCA3NywgODUsIDc5LCA4OSwgCisgICAgMTI4LCA4MCwgODIsIDY1LCA3NywgNDUsIDc3LCA4NSwgNzksIDIxNywgODAsIDgyLCA2NSwgNzcsIDQ1LCA2NiwgODUsIDc5LCAKKyAgICA3OCwgMTI4LCA4MCwgODIsIDY1LCA3NywgNDUsIDY2LCA4NSwgNzksIDIwNiwgODAsIDgyLCA2NSwgNzcsIDQ1LCA2NiwgNjksIAorICAgIDczLCAxMjgsIDgwLCA4MiwgNjUsIDc3LCA0NSwgNjYsIDY5LCAyMDEsIDgwLCA4MiwgNjUsIDc3LCAxMjgsIDgwLCA4MiwgCisgICAgNjUsIDIwNSwgODAsIDgyLCAxMjgsIDgwLCA4MCwgODYsIDEyOCwgODAsIDgwLCA3NywgMTI4LCA4MCwgODAsIDY1LCAxMjgsIAorICAgIDgwLCA3OSwgODksIDEyOCwgODAsIDc5LCA4OCwgMTI4LCA4MCwgNzksIDg3LCA2OSwgODIsIDIxMSwgODAsIDc5LCA4NywgCisgICAgNjksIDgyLCAxMjgsIDgwLCA3OSwgODcsIDY4LCA2OSwgODIsIDY5LCAxOTYsIDgwLCA3OSwgODcsIDY4LCA2OSwgODIsIAorICAgIDEyOCwgODAsIDc5LCA4NSwgNzgsIDE5NiwgODAsIDc5LCA4NSwgNzYsIDg0LCA4MiwgMjE3LCA4MCwgNzksIDg1LCA2NywgCisgICAgNzIsIDEyOCwgODAsIDc5LCA4NCwgNjUsIDg0LCA3OSwgMTI4LCA4MCwgNzksIDg0LCA2NSwgNjYsIDc2LCAxOTcsIDgwLCAKKyAgICA3OSwgMjEyLCA4MCwgNzksIDgzLCA4NCwgODAsIDc5LCA4MywgNzMsIDg0LCA3MywgNzksIDIwNiwgODAsIDc5LCA4MywgODQsIAorICAgIDY2LCA3OSwgODgsIDEyOCwgODAsIDc5LCA4MywgODQsIDY1LCAyMDQsIDgwLCA3OSwgODMsIDg0LCAxMjgsIDgwLCA3OSwgCisgICAgODMsIDIxMiwgODAsIDc5LCA4MywgODMsIDY5LCA4MywgODMsIDczLCA3OSwgNzgsIDEyOCwgODAsIDc5LCA4MiwgODIsIDY5LCAKKyAgICA2NywgODQsIDg1LCA4MywgMTI4LCA4MCwgNzksIDgyLCA4MiwgNjksIDY3LCA4NCwgODUsIDIxMSwgODAsIDc5LCA4MCwgODAsIAorICAgIDY5LCA4MiwgMTI4LCA4MCwgNzksIDgwLCAxMjgsIDgwLCA3OSwgMjA4LCA4MCwgNzksIDc5LCA2OCwgNzYsIDY5LCAxMjgsIAorICAgIDgwLCA3OSwgNzksIDEyOCwgODAsIDc5LCA3OCwgNjgsIDc5LCAxMjgsIDgwLCA3OSwgMjA2LCA4MCwgNzksIDc3LCA3NywgCisgICAgNjksIDY5LCAxMjgsIDgwLCA3OSwgNzcsIDc3LCA2OSwgMTk3LCA4MCwgNzksIDc2LCA3MywgODMsIDcyLCAxMjgsIDgwLCAKKyAgICA3OSwgNzYsIDczLCA2NywgMTk3LCA4MCwgNzksIDc2LCAyMDEsIDgwLCA3OSwgNzYsIDY5LCAxMjgsIDgwLCA3OSwgNzYsIAorICAgIDE5NywgODAsIDc5LCA3NSwgODIsIDg5LCA4NCwgNzMsIDY5LCAxMjgsIDgwLCA3OSwgNzUsIDc5LCA3NCwgNzMsIDEyOCwgCisgICAgODAsIDc5LCA3MywgNzgsIDg0LCAyMTEsIDgwLCA3OSwgNzMsIDc4LCA4NCwgNzksIDEyOCwgODAsIDc5LCA3MywgNzgsIDg0LCAKKyAgICA2OSwgODIsIDEyOCwgODAsIDc5LCA3MywgNzgsIDg0LCA2OSwgMTk2LCA4MCwgNzksIDczLCA3OCwgODQsIDEyOCwgODAsIAorICAgIDc5LCA3MywgNzgsIDIxMiwgODAsIDc5LCA2OSwgODQsIDgyLCAyMTcsIDgwLCA3OSwgNjksIDg0LCA3MywgMTk1LCA4MCwgCisgICAgNzksIDY4LCA2NSwgODQsIDg1LCA4MywgMTI4LCA4MCwgNzksIDY1LCAxMjgsIDgwLCA3OSwgMTI4LCA4MCwgMjA3LCA4MCwgCisgICAgNzgsIDY5LCA4NSwgNzcsIDY1LCA4NCwgNjUsIDEyOCwgODAsIDc2LCA4NSwgODQsIDc5LCAxMjgsIDgwLCA3NiwgODUsIDgzLCAKKyAgICA0NSwgNzcsIDczLCA3OCwgODUsIDIxMSwgODAsIDc2LCA4NSwgODMsIDEyOCwgODAsIDc2LCA4NSwgODIsIDY1LCA3NiwgCisgICAgMTI4LCA4MCwgNzYsIDg1LCA3NywgNjksIDE5NiwgODAsIDc2LCA4NSwgNzcsIDEyOCwgODAsIDc2LCA4NSwgNzUsIDEyOCwgCisgICAgODAsIDc2LCA4NSwgNzEsIDEyOCwgODAsIDc2LCA4NSwgMTI4LCA4MCwgNzYsIDc5LCA4NywgMTI4LCA4MCwgNzYsIDc5LCAKKyAgICA4MCwgNzIsIDg1LCAxMjgsIDgwLCA3NiwgNjksIDg0LCA3MiwgODIsIDc5LCA3OCwgMTI4LCA4MCwgNzYsIDY4LCAxMjgsIAorICAgIDgwLCA3NiwgNjUsIDg5LCA3MywgNzgsIDE5OSwgODAsIDc2LCA2NSwgODMsIDg0LCA3MywgNjcsIDgzLCAxMjgsIDgwLCA3NiwgCisgICAgNjUsIDc4LCA2OSwgMTI4LCA4MCwgNzYsIDY1LCA3OCwgMTk3LCA4MCwgNzYsIDY1LCA3OCwgNjcsIDIwMywgODAsIDc2LCAKKyAgICA2NSwgNzUsIDEyOCwgODAsIDc2LCA2NSwgNzEsIDczLCA3OSwgMjExLCA4MCwgNzYsIDY1LCA2NywgNjksIDcyLCA3OSwgNzYsIAorICAgIDY4LCA2OSwgMjEwLCA4MCwgNzYsIDY1LCA2NywgMTk3LCA4MCwgNzYsIDY1LCAxMjgsIDgwLCA3MywgOTAsIDkwLCA3MywgCisgICAgNjcsIDY1LCA4NCwgNzksIDEyOCwgODAsIDczLCA5MCwgOTAsIDY1LCAxMjgsIDgwLCA3MywgODgsIDEyOCwgODAsIDczLCAKKyAgICA4NywgODIsIDEyOCwgODAsIDczLCA4NCwgNjcsIDcyLCA3MCwgNzksIDgyLCA3NSwgMTI4LCA4MCwgNzMsIDg0LCA2NywgNzIsIAorICAgIDcwLCA3OSwgODIsIDIwMywgODAsIDczLCA4NCwgMTI4LCA4MCwgNzMsIDgzLCA4NCwgNzksIDc2LCAxMjgsIDgwLCA3MywgCisgICAgODMsIDY5LCA3NiwgNjksIDcyLCAxMjgsIDgwLCA3MywgODMsIDY3LCA2OSwgODMsIDEyOCwgODAsIDczLCA4MiwgNzMsIDcxLCAKKyAgICAxMjgsIDgwLCA3MywgODIsIDczLCAxOTksIDgwLCA3MywgODIsIDczLCA2OSwgNjksIDc4LCAxMjgsIDgwLCA3MywgODAsIAorICAgIDczLCA3OCwgNzEsIDEyOCwgODAsIDczLCA4MCwgNjUsIDY5LCA3NywgNzEsIDY2LCA3MywgNjksIDY5LCAxMjgsIDgwLCA3MywgCisgICAgODAsIDY1LCA2OSwgNzcsIDY2LCA2NSwgMTI4LCA4MCwgNzMsIDgwLCAxMjgsIDgwLCA3MywgNzgsIDg3LCA3MiwgNjksIDY5LCAKKyAgICAyMDQsIDgwLCA3MywgNzgsIDY5LCA2NSwgODAsIDgwLCA3NiwgNjksIDEyOCwgODAsIDczLCA3OCwgMTk3LCA4MCwgNzMsIAorICAgIDc4LCA2NSwgODIsIDY2LCA3OSwgODIsIDY1LCA4MywgMTI4LCA4MCwgNzMsIDc2LCA3NiwgMTI4LCA4MCwgNzMsIDc2LCAKKyAgICAxOTcsIDgwLCA3MywgNzYsIDY3LCA4MiwgNzksIDIxNSwgODAsIDczLCA3NSwgODUsIDgyLCA4NSwgMTI4LCA4MCwgNzMsIAorICAgIDc1LCA3OSwgMTI4LCA4MCwgNzMsIDcxLCAxMjgsIDgwLCA3MywgMTk5LCA4MCwgNzMsIDY5LCA4OCwgMTI4LCA4MCwgNzMsIAorICAgIDY5LCA4NSwgODAsIDQ1LCA4NCwgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCAKKyAgICA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCA3MywgCisgICAgNzksIDgzLCA0NSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIAorICAgIDc5LCA4MywgNDUsIDg0LCA3MiwgNzMsIDY5LCA4NSwgODQsIDcyLCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCAKKyAgICA3MywgNzksIDgzLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCA3MywgCisgICAgNzksIDgzLCA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIAorICAgIDc5LCA4MywgNDUsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MiwgNzMsIDY5LCAKKyAgICA4NSwgNzYsIDQ1LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MiwgCisgICAgNzMsIDY5LCA4NSwgNzYsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgNzgsIDczLCA2OSwgODUsIDc4LCAxMjgsIDgwLCAKKyAgICA3MywgNjksIDg1LCA4MCwgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA3NSwgCisgICAgNzIsIDczLCA2OSwgODUsIDc1LCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA2NywgNzMsIDY5LCA4NSwgNjcsIAorICAgIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgODAsIDczLCA2OSwgCisgICAgODUsIDIwOCwgODAsIDczLCA2OSwgODQsIDEyOCwgODAsIDczLCA2OSwgODAsIDEyOCwgODAsIDczLCA2OSwgNjksIDg0LCAKKyAgICAxMjgsIDgwLCA3MywgNjksIDY5LCA4MSwgMTI4LCA4MCwgNzMsIDY5LCA2NywgNjksIDEyOCwgODAsIDczLCA2OSwgMTI4LCAKKyAgICA4MCwgNzMsIDY3LCA3NSwgNjksIDg0LCAxMjgsIDgwLCA3MywgNjcsIDc1LCAxMjgsIDgwLCA3MywgNjUsIDgzLCA4NSwgODQsIAorICAgIDc5LCA4MiwgODUsIDEyOCwgODAsIDczLCA2NSwgODMsIDc3LCAxOTMsIDgwLCA3MywgNjUsIDc4LCA3OSwgMTI4LCA4MCwgCisgICAgMjAxLCA4MCwgNzIsIDg3LCA2NSwgMTI4LCA4MCwgNzIsIDg1LCA4NCwgNzIsIDY1LCA3OSwgMTI4LCA4MCwgNzIsIDg1LCAKKyAgICAyMTAsIDgwLCA3MiwgODUsIDc4LCA3MSwgMTI4LCA4MCwgNzIsIDgyLCA2NSwgODMsIDY5LCAxMjgsIDgwLCA3MiwgNzksIAorICAgIDc4LCA2OSwgODMsIDEyOCwgODAsIDcyLCA3OSwgNjksIDc4LCA3MywgNjcsIDczLCA2NSwgMjA2LCA4MCwgNzIsIDc5LCA2NSwgCisgICAgMTI4LCA4MCwgNzIsIDc5LCAxMjgsIDgwLCA3MiwgMjA3LCA4MCwgNzIsIDc4LCA2NSwgNjksIDIwMywgODAsIDcyLCA3MywgCisgICAgNzgsIDg0LCA3MiwgODUsIDEyOCwgODAsIDcyLCA3MywgNzYsIDc5LCA4MywgNzksIDgwLCA3MiwgNjksIDgyLCAyMTEsIDgwLCAKKyAgICA3MiwgNzMsIDc2LCA3MywgODAsIDgwLCA3MywgNzgsIDE5NywgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDQ1LCA4NCwgCisgICAgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgNDUsIDgzLCA3MywgNzksIAorICAgIDgzLCAxMjgsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIDcyLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgwLCA3MiwgCisgICAgNzMsIDY5LCA4NSwgODAsIDcyLCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIAorICAgIDIwMCwgODAsIDcyLCA3MywgMTI4LCA4MCwgNzIsIDIwMSwgODAsIDcyLCA2OSwgNjksIDEyOCwgODAsIDcyLCA2OSwgMTI4LCAKKyAgICA4MCwgNzIsIDY1LCA4MywgNjksIDQ1LCAxOTgsIDgwLCA3MiwgNjUsIDgzLCA2OSwgNDUsIDE5NCwgODAsIDcyLCA2NSwgODIsIAorICAgIDg5LCA3OCwgNzEsIDY5LCA2NSwgMjA0LCA4MCwgNzIsIDY1LCA4MiwgMTI4LCA4MCwgNzIsIDY1LCA3OCwgMTI4LCA4MCwgCisgICAgNzIsIDY1LCA3NywgMTI4LCA4MCwgNzIsIDY1LCA3MywgODMsIDg0LCA3OSwgMjExLCA4MCwgNzIsIDY1LCA3MSwgODMsIDQ1LCAKKyAgICA4MCwgMTkzLCA4MCwgNzIsIDY1LCA2NSwgODIsIDc1LCA2NSwgNjUsIDEyOCwgODAsIDcyLCA2NSwgNjUsIDEyOCwgODAsIAorICAgIDcyLCA2NSwgMTI4LCA4MCwgNzEsIDEyOCwgODAsIDcwLCAxMjgsIDgwLCA2OSwgODUsIDg4LCAxMjgsIDgwLCA2OSwgODUsIAorICAgIDg0LCA2NSwgNjksIDEyOCwgODAsIDY5LCA4NSwgODQsIDEyOCwgODAsIDY5LCA4NCwgNjUsIDgzLCA4NCwgNzksIDc1LCA3OSwgCisgICAgODUsIDcwLCA3MywgODMsIDc3LCA2NSwgMTI4LCA4MCwgNjksIDg0LCA2NSwgODMsIDg0LCA3MywgMTI4LCA4MCwgNjksIDg0LCAKKyAgICA2NSwgODMsIDc3LCA2NSwgMTI4LCA4MCwgNjksIDg0LCA2NSwgNzYsIDc2LCA2OSwgMTk2LCA4MCwgNjksIDgzLCA3OSwgCisgICAgMTI4LCA4MCwgNjksIDgzLCAyMDcsIDgwLCA2OSwgODMsIDcyLCA1MCwgMTI4LCA4MCwgNjksIDgzLCA2OSwgODQsIDE5MywgCisgICAgODAsIDY5LCAyMTEsIDgwLCA2OSwgODIsIDg0LCA3MiwgMjA3LCA4MCwgNjksIDgyLCA4MywgODAsIDY5LCA2NywgODQsIDczLCAKKyAgICA4NiwgNjksIDEyOCwgODAsIDY5LCA4MiwgODMsIDc5LCA3OCwgNjUsIDIwNCwgODAsIDY5LCA4MiwgODMsIDc5LCA3OCwgCisgICAgMTI4LCA4MCwgNjksIDgyLCA4MywgNzksIDIwNiwgODAsIDY5LCA4MiwgODMsIDczLCA2NSwgMjA2LCA4MCwgNjksIDgyLCAKKyAgICA4MywgNjksIDg2LCA2OSwgODIsIDczLCA3OCwgMTk5LCA4MCwgNjksIDgyLCA4MCwgNjksIDc4LCA2OCwgNzMsIDY3LCA4NSwgCisgICAgNzYsIDY1LCA4MiwgMTI4LCA4MCwgNjksIDgyLCA4MCwgNjksIDc4LCA2OCwgNzMsIDY3LCA4NSwgNzYsIDY1LCAyMTAsIDgwLCAKKyAgICA2OSwgODIsIDc3LCA3MywgODQsIDg0LCA2OSwgMTk2LCA4MCwgNjksIDgyLCA3NywgNjUsIDc4LCA2OSwgNzgsIDIxMiwgODAsIAorICAgIDY5LCA4MiwgNzMsIDgzLCA4MCwgNzksIDc3LCA2OSwgNzgsIDczLCAxMjgsIDgwLCA2OSwgODIsIDczLCA4MywgODAsIDc5LCAKKyAgICA3NywgNjksIDc4LCAyMDEsIDgwLCA2OSwgODIsIDcwLCA3OSwgODIsIDc3LCA3MywgNzgsIDE5OSwgODAsIDY5LCA4MiwgNzAsIAorICAgIDY5LCA2NywgODQsIDg1LCAyMDUsIDgwLCA2OSwgODIsIDcwLCA2OSwgNjcsIDg0LCA2NSwgMTI4LCA4MCwgNjksIDgyLCA3MCwgCisgICAgNjksIDY3LCA4NCwgMTkzLCA4MCwgNjksIDgyLCA2NywgODUsIDgzLCA4MywgNzMsIDg2LCA2OSwgMTI4LCA4MCwgNjksIDgyLCAKKyAgICA2NywgNjksIDc4LCAyMTIsIDgwLCA2OSwgODAsIDY5LCA4NCwgMTI4LCA4MCwgNjksIDgwLCA2OSwgMjEyLCA4MCwgNjksIAorICAgIDc5LCA4MiwgODQsIDIwMCwgODAsIDY5LCA3OSwgODAsIDc2LCA2OSwgMTI4LCA4MCwgNjksIDc4LCA4NCwgNjUsIDgzLCA2OSwgCisgICAgNzcsIDY5LCAxMjgsIDgwLCA2OSwgNzgsIDg0LCA2NSwgNzEsIDgyLCA2NSwgNzcsIDEyOCwgODAsIDY5LCA3OCwgODQsIDY1LCAKKyAgICA3MSwgNzksIDc4LCAxMjgsIDgwLCA2OSwgNzgsIDgzLCA4NSwgMTI4LCA4MCwgNjksIDc4LCA4MywgNzMsIDg2LCAxOTcsIAorICAgIDgwLCA2OSwgNzgsIDc4LCAyMTcsIDgwLCA2OSwgNzgsIDczLCA3MiwgNzMsIDEyOCwgODAsIDY5LCA3OCwgNzEsIDg1LCA3MywgCisgICAgNzgsIDEyOCwgODAsIDY5LCA3OCwgNzEsIDc1LCA2NSwgNzYsIDEyOCwgODAsIDY5LCA3OCwgNjksIDg0LCA4MiwgNjUsIDg0LCAKKyAgICA3MywgNzksIDc4LCAxMjgsIDgwLCA2OSwgNzgsIDY3LCA3MywgNzYsIDEyOCwgODAsIDY5LCA3NiwgNjUsIDgzLCA4NCwgNzksIAorICAgIDc4LCAxMjgsIDgwLCA2OSwgNzYsIDY1LCA4MywgODQsIDc5LCAyMDYsIDgwLCA2OSwgNzMsIDg0LCA3MiwgMTI4LCA4MCwgCisgICAgNjksIDcyLCA2OSwgNzIsIDEyOCwgODAsIDY5LCA3MiwgNjksIDIwMCwgODAsIDY5LCA3MiwgMTI4LCA4MCwgNjksIDIwMCwgCisgICAgODAsIDY5LCA2OSwgOTAsIDczLCAxMjgsIDgwLCA2OSwgNjksIDgzLCA3MiwgNzMsIDEyOCwgODAsIDY5LCA2OSwgODAsIAorICAgIDEyOCwgODAsIDY5LCA2OSwgNzcsIDEyOCwgODAsIDY5LCA2OSwgMTI4LCA4MCwgNjksIDY4LCA2OSwgODMsIDg0LCA4MiwgCisgICAgNzMsIDY1LCA3OCwgODMsIDEyOCwgODAsIDY5LCA2OCwgNjksIDgzLCA4NCwgODIsIDczLCA2NSwgNzgsIDEyOCwgODAsIDY5LCAKKyAgICA2OCwgNjksIDgzLCA4NCwgNjUsIDc2LCAxMjgsIDgwLCA2OSwgNjgsIDY5LCA4MywgODQsIDY1LCAyMDQsIDgwLCA2OSwgNjgsIAorICAgIDY1LCAyMDQsIDgwLCA2OSwgNjUsIDY3LCA3MiwgMTI4LCA4MCwgNjksIDY1LCA2NywgNjksIDEyOCwgODAsIDY5LCA2NSwgCisgICAgNjcsIDE5NywgODAsIDY4LCA3MCwgMTI4LCA4MCwgNjgsIDEyOCwgODAsIDY3LCAxMjgsIDgwLCA2NSwgOTAsIDY5LCA4MiwgCisgICAgMTI4LCA4MCwgNjUsIDg5LCA2OSwgODIsIDc5LCA3NSwgMTI4LCA4MCwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCAKKyAgICA4MCwgNjUsIDg5LCAxMjgsIDgwLCA2NSwgODgsIDEyOCwgODAsIDY1LCA4NywgNzgsIDEyOCwgODAsIDY1LCAyMTUsIDgwLCAKKyAgICA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA4MCwgNjUsIDg1LCAxMjgsIDgwLCA2NSwgODQsIDg0LCA2OSwgODIsIAorICAgIDc4LCAxMjgsIDgwLCA2NSwgODQsIDcyLCA2NSwgNzcsIDY1LCA4MywgNjUsIDg0LCAxMjgsIDgwLCA2NSwgODQsIDIwMCwgCisgICAgODAsIDY1LCA4NCwgNjUsIDc1LCAxMjgsIDgwLCA2NSwgODQsIDY1LCA3MiwgMTI4LCA4MCwgNjUsIDg0LCAxMjgsIDgwLCAKKyAgICA2NSwgODMsIDg1LCA4MSwgMTI4LCA4MCwgNjUsIDgzLCA4MywgODAsIDc5LCA4MiwgMjEyLCA4MCwgNjUsIDgzLCA4MywgNzMsIAorICAgIDg2LCA2OSwgNDUsIDgwLCA4NSwgNzYsIDc2LCA0NSwgODUsIDgwLCA0NSwgNzksIDg1LCA4NCwgODAsIDg1LCAyMTIsIDgwLCAKKyAgICA2NSwgODMsIDgzLCA3MywgODYsIDY5LCA0NSwgODAsIDg1LCA3NiwgNzYsIDQ1LCA2OCwgNzksIDg3LCA3OCwgNDUsIDc5LCAKKyAgICA4NSwgODQsIDgwLCA4NSwgMjEyLCA4MCwgNjUsIDgzLCA3MiwgODQsIDY1LCAxMjgsIDgwLCA2NSwgODMsIDcyLCA2NSwgNjksIAorICAgIDEyOCwgODAsIDY1LCA4MywgNjksIDgxLCAxMjgsIDgwLCA2NSwgODMsIDY1LCA3OCwgNzEsIDY1LCAyMDYsIDgwLCA2NSwgCisgICAgODIsIDg1LCA3NywgMTI4LCA4MCwgNjUsIDgyLCA4NCwgMjE3LCA4MCwgNjUsIDgyLCA4NCwgNzgsIDY5LCA4MiwgODMsIDcyLCAKKyAgICA3MywgMjA4LCA4MCwgNjUsIDgyLCA4NCwgNzMsIDY1LCA3NiwgNzYsIDg5LCA0NSwgODIsIDY5LCA2NywgODksIDY3LCA3NiwgCisgICAgNjksIDE5NiwgODAsIDY1LCA4MiwgODQsIDczLCA2NSwgMjA0LCA4MCwgNjUsIDgyLCA4NCwgNzIsIDczLCA2NSwgMjA2LCAKKyAgICA4MCwgNjUsIDgyLCAyMTIsIDgwLCA2NSwgODIsIDczLCA2NywgNzIsIDc5LCA3OCwgMTI4LCA4MCwgNjUsIDgyLCA2OSwgODMsIAorICAgIDg0LCA3MywgNzEsIDc3LCA2OSwgNzgsIDc5LCAyMDYsIDgwLCA2NSwgODIsIDY5LCA4MiwgNjksIDc4LCAxMjgsIDgwLCA2NSwgCisgICAgODIsIDY5LCA3OCwgODQsIDcyLCA2OSwgODMsIDczLCA4MywgMTI4LCA4MCwgNjUsIDgyLCA2OSwgNzgsIDg0LCA3MiwgNjksIAorICAgIDgzLCA3MywgMjExLCA4MCwgNjUsIDgyLCA2NSwgODAsIDcyLCA4MiwgNjUsIDgzLCAxOTcsIDgwLCA2NSwgODIsIDY1LCA3NiwgCisgICAgNzYsIDY5LCA3NiwgNzksIDcxLCA4MiwgNjUsIDc3LCAxMjgsIDgwLCA2NSwgODIsIDY1LCA3NiwgNzYsIDY5LCA3NiwgMTI4LCAKKyAgICA4MCwgNjUsIDgyLCA2NSwgNzYsIDc2LCA2OSwgMjA0LCA4MCwgNjUsIDgyLCA2NSwgNzUsIDc2LCA3MywgODQsIDczLCA3NSwgCisgICAgNzMsIDEyOCwgODAsIDY1LCA4MiwgNjUsIDc1LCA3NiwgNzMsIDg0LCA3MywgNzUsIDIwMSwgODAsIDY1LCA4MiwgNjUsIDc1LCAKKyAgICA2NSwgNzYsIDY5LCA4MywgNzcsIDE5MywgODAsIDY1LCA4MiwgNjUsIDcxLCA4MiwgNjUsIDgwLCA3MiwgNzksIDgzLCAxMjgsIAorICAgIDgwLCA2NSwgODIsIDY1LCA3MSwgODIsIDY1LCA4MCwgNzIsIDEyOCwgODAsIDY1LCA4MiwgNjUsIDcxLCA4MiwgNjUsIDgwLCAKKyAgICAyMDAsIDgwLCA2NSwgODIsIDY1LCAxMjgsIDgwLCA2NSwgODIsIDEyOCwgODAsIDY1LCA4MCwgODksIDgyLCA4NSwgODMsIAorICAgIDEyOCwgODAsIDY1LCA4MCwgNjksIDgyLCA2NywgNzYsIDczLCA4MCwgMTI4LCA4MCwgNjUsIDgwLCA2OSwgMjEwLCA4MCwgCisgICAgNjUsIDgwLCAxMjgsIDgwLCA2NSwgMjA4LCA4MCwgNjUsIDIwNywgODAsIDY1LCA3OCwgODksIDg1LCA3NSwgODUsIDEyOCwgCisgICAgODAsIDY1LCA3OCwgODksIDczLCA3NSwgODUsIDEyOCwgODAsIDY1LCA3OCwgODksIDY5LCA2NywgNjksIDc1LCAxMjgsIDgwLCAKKyAgICA2NSwgNzgsIDg5LCA2NSwgNzgsIDcxLCA3MSwgNjUsIDEyOCwgODAsIDY1LCA3OCwgODksIDY1LCA3NSwgODIsIDY1LCAxMjgsIAorICAgIDgwLCA2NSwgNzgsIDg0LCA3MywgMTI4LCA4MCwgNjUsIDc4LCA4MywgNzMsIDc5LCA4MywgNDUsIDgwLCA3MywgNjksIDg1LCAKKyAgICA4MCwgMTI4LCA4MCwgNjUsIDc4LCA4MywgNzMsIDc5LCA4MywgNDUsIDc1LCA2NSwgODAsIDg5LCA2OSwgNzksIDg1LCA3OCwgCisgICAgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgwLCA2NSwgNzgsIDc5LCA3OCwgNzEsIDc5LCA3OCwgNjUsIDc4LCAxMjgsIDgwLCAKKyAgICA2NSwgNzgsIDc5LCA3NiwgNzksIDc4LCA3MSwgMTI4LCA4MCwgNjUsIDc4LCA3MSwgODcsIDczLCA4MywgNjUsIDY4LCAxMjgsIAorICAgIDgwLCA2NSwgNzgsIDcxLCA4MiwgNjUsIDc4LCA3MSwgNzUsIDY5LCA4MCwgMTI4LCA4MCwgNjUsIDc4LCA3MSwgNzksIDc2LCAKKyAgICA2NSwgODQsIDEyOCwgODAsIDY1LCA3OCwgNzEsIDc2LCA3OSwgNzgsIDcxLCAxMjgsIDgwLCA2NSwgNzgsIDcxLCA3NiwgNjUsIAorICAgIDg5LCA2NSwgODIsIDEyOCwgODAsIDY1LCA3OCwgNzEsIDc1LCA3OSwgNzgsIDEyOCwgODAsIDY1LCA3OCwgNzEsIDc1LCA2NSwgCisgICAgODQsIDEyOCwgODAsIDY1LCA3OCwgNzEsIDcyLCA4NSwgNzYsIDg1LCAxMjgsIDgwLCA2NSwgNzgsIDcxLCAxMjgsIDgwLCAKKyAgICA2NSwgNzgsIDY5LCA4NSwgNzYsIDY5LCA4NSwgNzgsIDcxLCAxMjgsIDgwLCA2NSwgNzgsIDY4LCAxOTMsIDgwLCA2NSwgNzgsIAorICAgIDY1LCA2OSwgNzYsIDY1LCA2OSwgNzgsIDcxLCAxMjgsIDgwLCA2NSwgNzgsIDEyOCwgODAsIDY1LCA3NywgODUsIDc4LCA3MSwgCisgICAgNzUsIDY1LCA3MiwgMTI4LCA4MCwgNjUsIDc3LCA4NSwgNjgsIDgwLCA3OSwgNjgsIDEyOCwgODAsIDY1LCA3NywgODMsIDcyLCAKKyAgICA2NSwgNjksIDEyOCwgODAsIDY1LCA3NywgODAsIDcyLCA4OSwgNzYsIDczLCA2NSwgMjA2LCA4MCwgNjUsIDc3LCA3MywgNzgsIAorICAgIDcxLCA3NSwgNjUsIDc2LCAxMjgsIDgwLCA2NSwgNzcsIDY5LCA4MCwgNjksIDg0LCAxMjgsIDgwLCA2NSwgNzcsIDY5LCA3OCwgCisgICAgNjksIDc4LCA3MSwgMTI4LCA4MCwgNjUsIDc3LCA2NSwgNjgsIDY1LCAxMjgsIDgwLCA2NSwgNzcsIDY1LCA2NSwgNjksIDcyLCAKKyAgICAxMjgsIDgwLCA2NSwgNzYsIDg1LCA4NCwgNjUsIDEyOCwgODAsIDY1LCA3NiwgNzksIDY3LCA3MiwgNzUsIDY1LCAxMjgsIAorICAgIDgwLCA2NSwgNzYsIDIwNSwgODAsIDY1LCA3NiwgNzYsIDY1LCA4NywgNjUsIDEyOCwgODAsIDY1LCA3NiwgNzYsIDY1LCA4MywgCisgICAgMTI4LCA4MCwgNjUsIDc2LCA2OSwgODQsIDg0LCA2OSwgMTI4LCA4MCwgNjUsIDc2LCA2NSwgODUsIDc4LCAxOTksIDgwLCAKKyAgICA2NSwgNzYsIDY1LCA4NCwgNjUsIDc2LCA3MywgOTAsIDY5LCAxOTYsIDgwLCA2NSwgNzYsIDY1LCA4NCwgNjUsIDc2LCA3MywgCisgICAgOTAsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA4MCwgNjUsIDc2LCA2NSwgODQsIDY1LCAyMDQsIDgwLCA2NSwgNzUsIDgwLCAKKyAgICA2NSwgMjAzLCA4MCwgNjUsIDczLCA4OSwgNjUsIDc4LCA3OCwgNzksIDczLCAxMjgsIDgwLCA2NSwgNzMsIDgyLCA4NCwgNzIsIAorICAgIDgyLCA2NSwgMTI4LCA4MCwgNjUsIDczLCA4MiwgNjksIDE5NiwgODAsIDY1LCA3MywgMTI4LCA4MCwgNjUsIDcyLCA3NiwgCisgICAgNjUsIDg2LCAyMDEsIDgwLCA2NSwgNzIsIDEyOCwgODAsIDY1LCA3MSwgNjksIDgyLCAxMjgsIDgwLCA2NSwgNzEsIDE5NywgCisgICAgODAsIDY1LCA2OCwgNzcsIDE5MywgODAsIDY1LCA2OCwgNjgsIDczLCA3OCwgMTk5LCA4MCwgNjUsIDY4LCAxOTMsIDgwLCAKKyAgICA2NSwgNjgsIDEyOCwgODAsIDY1LCA2NywgNzUsIDczLCA3OCwgNzEsIDEyOCwgODAsIDY1LCA2NywgNzUsIDY1LCA3MSwgNjksIAorICAgIDEyOCwgODAsIDY1LCA2NSwgODQsIDg1LCAxMjgsIDgwLCA2NSwgNjUsIDgzLCA2OSwgNzgsIDg0LCA3OSwgMTI4LCA4MCwgCisgICAgNjUsIDY1LCA4MiwgNjUsIDY5LCAxMjgsIDgwLCA2NSwgNjUsIDc3LCAxMjgsIDgwLCA2NSwgNjUsIDczLCAxMjgsIDgwLCAKKyAgICA2NSwgNjUsIDQ1LCA4MCwgNzMsIDc2LCA3NiwgNjUsIDEyOCwgODAsIDY1LCA2NSwgMTI4LCA4MCwgNTAsIDEyOCwgODAsIAorICAgIDQ4LCA0OSwgNDksIDEyOCwgODAsIDQ4LCA0OSwgNDgsIDEyOCwgODAsIDQ4LCA0OCwgNTcsIDEyOCwgODAsIDQ4LCA0OCwgCisgICAgNTYsIDEyOCwgODAsIDQ4LCA0OCwgNTUsIDEyOCwgODAsIDQ4LCA0OCwgNTQsIDEyOCwgODAsIDQ4LCA0OCwgNTMsIDEyOCwgCisgICAgODAsIDQ4LCA0OCwgNTIsIDEyOCwgODAsIDQ4LCA0OCwgNTEsIDY1LCAxMjgsIDgwLCA0OCwgNDgsIDUxLCAxMjgsIDgwLCAKKyAgICA0OCwgNDgsIDUwLCAxMjgsIDgwLCA0OCwgNDgsIDQ5LCA2NSwgMTI4LCA4MCwgNDgsIDQ4LCA0OSwgMTI4LCA3OSwgODksIAorICAgIDgyLCA2NSwgNzgsIDczLCA4MywgNzcsIDE5MywgNzksIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3OSwgODgsIDczLCA2NSwgCisgICAgMTI4LCA3OSwgODgsIDczLCAxOTMsIDc5LCA4OCwgNjksIDczLCA2NSwgMjAxLCA3OSwgODgsIDY5LCA3MywgMTkzLCA3OSwgCisgICAgODYsIDY5LCA4MiwgODIsIDczLCA2OCwgNjksIDEyOCwgNzksIDg2LCA2OSwgODIsIDc2LCA3OSwgNzgsIDE5OSwgNzksIDg2LCAKKyAgICA2OSwgODIsIDc2LCA3MywgNzgsIDY5LCAxMjgsIDc5LCA4NiwgNjksIDgyLCA3NiwgNjUsIDg5LCAxMjgsIDc5LCA4NiwgNjksIAorICAgIDgyLCA3NiwgNjUsIDgwLCA4MCwgNzMsIDc4LCAxOTksIDc5LCA4NiwgNjksIDgyLCA3NiwgNjUsIDczLCA2OCwgMTI4LCA3OSwgCisgICAgODYsIDY5LCA4MiwgNjYsIDY1LCA4MiwgMTI4LCA3OSwgODYsIDY1LCAyMDQsIDc5LCA4NiwgMTI4LCA3OSwgODUsIDg0LCAKKyAgICA3NiwgNzMsIDc4LCA2OSwgMTk2LCA3OSwgODUsIDg0LCA3NiwgNzMsIDc4LCA2OSwgMTI4LCA3OSwgODUsIDg0LCA2OSwgCisgICAgMjEwLCA3OSwgODUsIDg0LCA2NiwgNzksIDIxNiwgNzksIDg1LCA3OCwgNzUsIDczLCAxOTMsIDc5LCA4NSwgNzgsIDY3LCAKKyAgICA2OSwgMTI4LCA3OSwgODUsIDc4LCA2NywgMTk3LCA3OSwgODQsIDg1LCAxMjgsIDc5LCA4NCwgODQsIDY1LCA4NiwgMTkzLCAKKyAgICA3OSwgODQsIDg0LCAxMjgsIDc5LCA4NCwgNzIsIDY1LCA3NiwgNjUsIDIwNiwgNzksIDg0LCA3MiwgNjUsIDc2LCAxMjgsIAorICAgIDc5LCA4MywgNzcsIDY1LCA3OCwgODksIDE5MywgNzksIDgzLCA2NywgMTI4LCA3OSwgODIsIDg0LCA3MiwgNzksIDcxLCA3OSwgCisgICAgNzgsIDY1LCAyMDQsIDc5LCA4MiwgODQsIDcyLCA3OSwgNjgsIDc5LCAyMTYsIDc5LCA4MiwgNzgsIDY1LCA4NCwgMTk3LCAKKyAgICA3OSwgODIsIDc4LCA2NSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNzksIDgyLCA3OCwgNjUsIDc3LCA2OSwgNzgsIDIxMiwgNzksIAorICAgIDgyLCA3NSwgNzIsIDc5LCAyMDYsIDc5LCA4MiwgNzMsIDcxLCA3MywgNzgsIDY1LCAyMDQsIDc5LCA4MiwgNzMsIDcxLCA3MywgCisgICAgNzgsIDEyOCwgNzksIDgyLCA2OSwgNDUsIDUwLCAxMjgsIDc5LCA4MiwgNjgsIDczLCA3OCwgNjUsIDIwNCwgNzksIDgyLCAKKyAgICA2OCwgNjksIDIxMCwgNzksIDgyLCA2NywgNzIsIDczLCA2OCwgMTI4LCA3OSwgODIsIDY1LCA3OCwgNzEsIDE5NywgNzksIAorICAgIDgwLCA4NCwgNzMsIDc5LCAyMDYsIDc5LCA4MCwgODQsIDczLCA2NywgNjUsIDIwNCwgNzksIDgwLCA4MCwgODIsIDY5LCA4MywgCisgICAgODMsIDczLCA3OSwgNzgsIDEyOCwgNzksIDgwLCA4MCwgNzksIDgzLCA3MywgODQsIDczLCA3OSwgNzgsIDEyOCwgNzksIDgwLCAKKyAgICA4MCwgNzksIDgzLCA3MywgNzgsIDE5OSwgNzksIDgwLCA4MCwgNzksIDgzLCA2OSwgMTI4LCA3OSwgODAsIDcyLCA3MywgODUsIAorICAgIDY3LCA3MiwgODUsIDgzLCAxMjgsIDc5LCA4MCwgNjksIDgyLCA2NSwgODQsIDc5LCA4MiwgMTI4LCA3OSwgODAsIDY5LCA4MiwgCisgICAgNjUsIDg0LCA3OSwgMjEwLCA3OSwgODAsIDY5LCA4MiwgNjUsIDg0LCA3MywgNzgsIDE5OSwgNzksIDgwLCA2OSwgNzgsIDczLCAKKyAgICA3OCwgMTk5LCA3OSwgODAsIDY5LCA3OCwgNDUsIDgwLCAxMjgsIDc5LCA4MCwgNjksIDc4LCA0NSwgNzksIDg1LCA4NCwgNzYsIAorICAgIDczLCA3OCwgNjksIDE5NiwgNzksIDgwLCA2OSwgNzgsIDQ1LCA3MiwgNjksIDY1LCA2OCwgNjksIDE5NiwgNzksIDgwLCA2OSwgCisgICAgNzgsIDQ1LCA2NywgNzMsIDgyLCA2NywgODUsIDczLCA4NCwgNDUsIDc5LCA4NSwgODQsIDgwLCA4NSwgMjEyLCA3OSwgNzksIAorICAgIDkwLCA2OSwgMTI4LCA3OSwgNzksIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3OSwgNzksIDg1LCAxMjgsIDc5LCA3OSwgCisgICAgNzcsIDg1LCAxMjgsIDc5LCA3OSwgNjksIDEyOCwgNzksIDc5LCA2NiwgNzksIDc5LCA3MCwgNzMsIDc2LCA3MywgMTI4LCAKKyAgICA3OSwgNzgsIDg1LCAxMjgsIDc5LCA3OCwgODMsIDg1LCAxMjgsIDc5LCA3OCwgNzgsIDEyOCwgNzksIDc4LCA3NSwgNjUsIAorICAgIDgyLCAxMjgsIDc5LCA3OCwgNjksIDgzLCA2OSwgNzYsIDcwLCAxMjgsIDc5LCA3OCwgNjksIDQ1LCA4NywgNjUsIDIxNywgCisgICAgNzksIDc4LCA2OSwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgNzksIDc4LCA2OSwgNDUsIDc2LCA3MywgNzgsIAorICAgIDE5NywgNzksIDc4LCA2NywgNzksIDc3LCA3MywgNzgsIDE5OSwgNzksIDc4LCA2NSwgODAsIDEyOCwgNzksIDc3LCA3MywgCisgICAgODMsIDgzLCA3MywgNzksIDIwNiwgNzksIDc3LCA3MywgNjcsIDgyLCA3OSwgNzgsIDEyOCwgNzksIDc3LCA3MywgNjcsIDgyLCAKKyAgICA3OSwgMjA2LCA3OSwgNzcsIDY5LCA3MSwgNjUsIDEyOCwgNzksIDc3LCA2OSwgNzEsIDE5MywgNzksIDc3LCA2NSwgNzYsIAorICAgIDc5LCA3OCwgMTI4LCA3OSwgNzYsIDczLCA4NiwgNjksIDEyOCwgNzksIDc2LCA3MywgNzEsIDc5LCAyMDYsIDc5LCA3NiwgCisgICAgNjgsIDEyOCwgNzksIDc1LCA4NCwgMjA3LCA3OSwgNzUsIDY1LCA4MiwgNjUsIDEyOCwgNzksIDc1LCA2NSwgODIsIDE5MywgCisgICAgNzksIDc0LCA3MywgNjYsIDg3LCA2NSwgMjE3LCA3OSwgNzQsIDY5LCA3OSwgNzgsIDEyOCwgNzksIDczLCA3NiwgMTI4LCAKKyAgICA3OSwgNzIsIDc3LCAxMjgsIDc5LCA3MiwgMjA1LCA3OSwgNzEsIDgyLCA2OSwgMTI4LCA3OSwgNzEsIDc5LCA3OCwgNjksIAorICAgIDc1LCAxMjgsIDc5LCA3MSwgNzksIDc4LCA2OSwgMjAzLCA3OSwgNzEsIDcyLCA2NSwgMjA1LCA3OSwgNzAsIDcwLCA3MywgCisgICAgNjcsIDY5LCA4MiwgMTI4LCA3OSwgNzAsIDcwLCA3MywgNjcsIDY5LCAxMjgsIDc5LCA3MCwgNzAsIDczLCA2NywgMTk3LCAKKyAgICA3OSwgNzAsIDcwLCAxMjgsIDc5LCA2OSwgODksIDEyOCwgNzksIDY5LCA3NSwgMTI4LCA3OSwgNjgsIDY5LCA3OCwgMTI4LCAKKyAgICA3OSwgNjgsIDE5NiwgNzksIDY3LCA4NCwgNzksIDgwLCA4NSwgODMsIDEyOCwgNzksIDY3LCA4NCwgNzksIDY2LCA2OSwgODIsIAorICAgIDEyOCwgNzksIDY3LCA4NCwgNjksIDIxMiwgNzksIDY3LCAyMTAsIDc5LCA2NywgNzYsIDc5LCA2NywgNzUsIDEyOCwgNzksIAorICAgIDY3LCA2NywgNzYsIDg1LCA4MywgNzMsIDc5LCA3OCwgMTI4LCA3OSwgNjYsIDgzLCA4NCwgODIsIDg1LCA2NywgODQsIDczLCAKKyAgICA3OSwgNzgsIDEyOCwgNzksIDY2LCA3OSwgNzYsIDIxMSwgNzksIDY2LCA3OSwgMjA0LCA3OSwgNjYsIDc5LCA3MCwgNzMsIAorICAgIDc2LCA3MywgMTI4LCA3OSwgNjYsIDc2LCA3MywgODEsIDg1LCAxOTcsIDc5LCA2NiwgNzQsIDY5LCA2NywgMjEyLCA3OSwgCisgICAgNjYsIDY5LCA3NiwgODUsIDgzLCAxMjgsIDc5LCA2NiwgNjksIDc2LCA3OSwgODMsIDEyOCwgNzksIDY2LCAxMjgsIDc5LCAKKyAgICA2NSwgODksIDEyOCwgNzksIDY1LCA3NSwgMTI4LCA3OSwgNjUsIDY2LCA3OSwgNjUsIDcwLCA3MywgNzYsIDczLCAxMjgsIAorICAgIDc5LCAxOTMsIDc5LCA0OCwgNTMsIDQ5LCAxMjgsIDc5LCA0OCwgNTMsIDQ4LCA2NiwgMTI4LCA3OSwgNDgsIDUzLCA0OCwgCisgICAgNjUsIDEyOCwgNzksIDQ4LCA1MywgNDgsIDEyOCwgNzksIDQ4LCA1MiwgNTcsIDEyOCwgNzksIDQ4LCA1MiwgNTYsIDEyOCwgCisgICAgNzksIDQ4LCA1MiwgNTUsIDEyOCwgNzksIDQ4LCA1MiwgNTQsIDEyOCwgNzksIDQ4LCA1MiwgNTMsIDEyOCwgNzksIDQ4LCAKKyAgICA1MiwgNTIsIDEyOCwgNzksIDQ4LCA1MiwgNTEsIDEyOCwgNzksIDQ4LCA1MiwgNTAsIDEyOCwgNzksIDQ4LCA1MiwgNDksIAorICAgIDEyOCwgNzksIDQ4LCA1MiwgNDgsIDEyOCwgNzksIDQ4LCA1MSwgNTcsIDEyOCwgNzksIDQ4LCA1MSwgNTYsIDEyOCwgNzksIAorICAgIDQ4LCA1MSwgNTUsIDEyOCwgNzksIDQ4LCA1MSwgNTQsIDY4LCAxMjgsIDc5LCA0OCwgNTEsIDU0LCA2NywgMTI4LCA3OSwgCisgICAgNDgsIDUxLCA1NCwgNjYsIDEyOCwgNzksIDQ4LCA1MSwgNTQsIDY1LCAxMjgsIDc5LCA0OCwgNTEsIDU0LCAxMjgsIDc5LCAKKyAgICA0OCwgNTEsIDUzLCAxMjgsIDc5LCA0OCwgNTEsIDUyLCAxMjgsIDc5LCA0OCwgNTEsIDUxLCA2NSwgMTI4LCA3OSwgNDgsIAorICAgIDUxLCA1MSwgMTI4LCA3OSwgNDgsIDUxLCA1MCwgMTI4LCA3OSwgNDgsIDUxLCA0OSwgMTI4LCA3OSwgNDgsIDUxLCA0OCwgCisgICAgNjUsIDEyOCwgNzksIDQ4LCA1MSwgNDgsIDEyOCwgNzksIDQ4LCA1MCwgNTcsIDY1LCAxMjgsIDc5LCA0OCwgNTAsIDU3LCAKKyAgICAxMjgsIDc5LCA0OCwgNTAsIDU2LCAxMjgsIDc5LCA0OCwgNTAsIDU1LCAxMjgsIDc5LCA0OCwgNTAsIDU0LCAxMjgsIDc5LCAKKyAgICA0OCwgNTAsIDUzLCA2NSwgMTI4LCA3OSwgNDgsIDUwLCA1MywgMTI4LCA3OSwgNDgsIDUwLCA1MiwgNjUsIDEyOCwgNzksIAorICAgIDQ4LCA1MCwgNTIsIDEyOCwgNzksIDQ4LCA1MCwgNTEsIDEyOCwgNzksIDQ4LCA1MCwgNTAsIDEyOCwgNzksIDQ4LCA1MCwgCisgICAgNDksIDEyOCwgNzksIDQ4LCA1MCwgNDgsIDY1LCAxMjgsIDc5LCA0OCwgNTAsIDQ4LCAxMjgsIDc5LCA0OCwgNDksIDU3LCAKKyAgICA2NSwgMTI4LCA3OSwgNDgsIDQ5LCA1NywgMTI4LCA3OSwgNDgsIDQ5LCA1NiwgMTI4LCA3OSwgNDgsIDQ5LCA1NSwgMTI4LCAKKyAgICA3OSwgNDgsIDQ5LCA1NCwgMTI4LCA3OSwgNDgsIDQ5LCA1MywgMTI4LCA3OSwgNDgsIDQ5LCA1MiwgMTI4LCA3OSwgNDgsIAorICAgIDQ5LCA1MSwgMTI4LCA3OSwgNDgsIDQ5LCA1MCwgMTI4LCA3OSwgNDgsIDQ5LCA0OSwgMTI4LCA3OSwgNDgsIDQ5LCA0OCwgCisgICAgNjcsIDEyOCwgNzksIDQ4LCA0OSwgNDgsIDY2LCAxMjgsIDc5LCA0OCwgNDksIDQ4LCA2NSwgMTI4LCA3OSwgNDgsIDQ5LCAKKyAgICA0OCwgMTI4LCA3OSwgNDgsIDQ4LCA1NywgMTI4LCA3OSwgNDgsIDQ4LCA1NiwgMTI4LCA3OSwgNDgsIDQ4LCA1NSwgMTI4LCAKKyAgICA3OSwgNDgsIDQ4LCA1NCwgNzAsIDEyOCwgNzksIDQ4LCA0OCwgNTQsIDY5LCAxMjgsIDc5LCA0OCwgNDgsIDU0LCA2OCwgCisgICAgMTI4LCA3OSwgNDgsIDQ4LCA1NCwgNjcsIDEyOCwgNzksIDQ4LCA0OCwgNTQsIDY2LCAxMjgsIDc5LCA0OCwgNDgsIDU0LCAKKyAgICA2NSwgMTI4LCA3OSwgNDgsIDQ4LCA1NCwgMTI4LCA3OSwgNDgsIDQ4LCA1MywgNjUsIDEyOCwgNzksIDQ4LCA0OCwgNTMsIAorICAgIDEyOCwgNzksIDQ4LCA0OCwgNTIsIDEyOCwgNzksIDQ4LCA0OCwgNTEsIDEyOCwgNzksIDQ4LCA0OCwgNTAsIDEyOCwgNzksIAorICAgIDQ4LCA0OCwgNDksIDY1LCAxMjgsIDc5LCA0OCwgNDgsIDQ5LCAxMjgsIDc5LCA0NSwgODksIDY5LCAxMjgsIDc5LCA0NSwgCisgICAgNzksIDQ1LCA3MywgMTI4LCA3OSwgNDUsIDY5LCAxMjgsIDc4LCA5MCwgODksIDg4LCAxMjgsIDc4LCA5MCwgODksIDg0LCAKKyAgICAxMjgsIDc4LCA5MCwgODksIDgyLCA4OCwgMTI4LCA3OCwgOTAsIDg5LCA4MiwgMTI4LCA3OCwgOTAsIDg5LCA4MCwgMTI4LCAKKyAgICA3OCwgOTAsIDg5LCAxMjgsIDc4LCA5MCwgODUsIDg4LCAxMjgsIDc4LCA5MCwgODUsIDgyLCA4OCwgMTI4LCA3OCwgOTAsIAorICAgIDg1LCA4MiwgMTI4LCA3OCwgOTAsIDg1LCA4MSwgMTI4LCA3OCwgOTAsIDg1LCA4MCwgMTI4LCA3OCwgOTAsIDg1LCA3OSwgCisgICAgODgsIDEyOCwgNzgsIDkwLCA4NSwgNzksIDEyOCwgNzgsIDkwLCA4NSwgMjA2LCA3OCwgOTAsIDg1LCAxMjgsIDc4LCA5MCwgCisgICAgNzksIDg4LCAxMjgsIDc4LCA5MCwgNzksIDgwLCAxMjgsIDc4LCA5MCwgNzMsIDg4LCAxMjgsIDc4LCA5MCwgNzMsIDg0LCAKKyAgICAxMjgsIDc4LCA5MCwgNzMsIDgwLCAxMjgsIDc4LCA5MCwgNzMsIDY5LCA4OCwgMTI4LCA3OCwgOTAsIDczLCA2OSwgODAsIAorICAgIDEyOCwgNzgsIDkwLCA3MywgNjksIDEyOCwgNzgsIDkwLCA3MywgMTI4LCA3OCwgOTAsIDY5LCA4OCwgMTI4LCA3OCwgOTAsIAorICAgIDY5LCA4NSwgNzcsIDEyOCwgNzgsIDkwLCA2OSwgMTI4LCA3OCwgOTAsIDY1LCA4OCwgMTI4LCA3OCwgOTAsIDY1LCA4NCwgCisgICAgMTI4LCA3OCwgOTAsIDY1LCA4MSwgMTI4LCA3OCwgOTAsIDY1LCA4MCwgMTI4LCA3OCwgOTAsIDY1LCAxMjgsIDc4LCA5MCwgCisgICAgMTkzLCA3OCwgODksIDg3LCA2NSwgMTI4LCA3OCwgODksIDg1LCA4OCwgMTI4LCA3OCwgODksIDg1LCA4NSwgMTI4LCA3OCwgCiAgICAgODksIDg1LCA4NCwgMTI4LCA3OCwgODksIDg1LCA4MCwgMTI4LCA3OCwgODksIDg1LCA3OSwgODgsIDEyOCwgNzgsIDg5LCAKICAgICA4NSwgNzksIDgwLCAxMjgsIDc4LCA4OSwgODUsIDc5LCAxMjgsIDc4LCA4OSwgODUsIDY5LCAxMjgsIDc4LCA4OSwgODUsIAogICAgIDEyOCwgNzgsIDg5LCA3OSwgODgsIDEyOCwgNzgsIDg5LCA3OSwgODQsIDEyOCwgNzgsIDg5LCA3OSwgODAsIDEyOCwgNzgsIAogICAgIDg5LCA3OSwgNzksIDEyOCwgNzgsIDg5LCA3OSwgNjUsIDEyOCwgNzgsIDg5LCA3OSwgMTI4LCA3OCwgODksIDc0LCA2NSwgCiAgICAgMTI4LCA3OCwgODksIDczLCA4OCwgMTI4LCA3OCwgODksIDczLCA4NCwgMTI4LCA3OCwgODksIDczLCAyMTIsIDc4LCA4OSwgCiAgICAgNzMsIDIxMSwgNzgsIDg5LCA3MywgMjEwLCA3OCwgODksIDczLCA4MCwgMTI4LCA3OCwgODksIDczLCA3OCwgNDUsIDY4LCAKLSAgICA3OSwgMTI4LCA3OCwgODksIDczLCA2OSwgODgsIDEyOCwgNzgsIDg5LCA3MywgNjksIDg0LCAxMjgsIDc4LCA4OSwgNzMsIAotICAgIDY5LCA4MCwgMTI4LCA3OCwgODksIDczLCA2OSwgMTI4LCA3OCwgODksIDczLCAxMjgsIDc4LCA4OSwgMjAxLCA3OCwgODksIAotICAgIDY5LCA4NCwgMTI4LCA3OCwgODksIDY5LCAyMTIsIDc4LCA4OSwgNjksIDcyLCAxMjgsIDc4LCA4OSwgNjksIDIwMCwgNzgsIAotICAgIDg5LCA2OSwgNjksIDEyOCwgNzgsIDg5LCA2OSwgMTI4LCA3OCwgODksIDE5NiwgNzgsIDg5LCA2NywgNjUsIDEyOCwgNzgsIAotICAgIDg5LCA2NSwgNjksIDc3LCA2NSwgNjksIDEyOCwgNzgsIDg5LCA2NSwgNjUsIDEyOCwgNzgsIDg3LCA3OSwgNzksIDEyOCwgCi0gICAgNzgsIDg3LCA3OSwgMTI4LCA3OCwgODcsIDczLCA3MywgMTI4LCA3OCwgODcsIDczLCAxMjgsIDc4LCA4NywgNjksIDEyOCwgCi0gICAgNzgsIDg3LCA2NSwgNjUsIDEyOCwgNzgsIDg3LCA2NSwgMTI4LCA3OCwgODcsIDEyOCwgNzgsIDg2LCAxMjgsIDc4LCA4NSwgCi0gICAgODgsIDEyOCwgNzgsIDg1LCA4NSwgNzgsIDEyOCwgNzgsIDg1LCA4NCwgNzMsIDc2LCA3NiwgODUsIDEyOCwgNzgsIDg1LCAKLSAgICA4NCwgMTI4LCA3OCwgODUsIDIxMiwgNzgsIDg1LCA4MiwgODgsIDEyOCwgNzgsIDg1LCA4MiwgMTI4LCA3OCwgODUsIDgwLCAKLSAgICAxMjgsIDc4LCA4NSwgNzksIDg4LCAxMjgsIDc4LCA4NSwgNzksIDgwLCAxMjgsIDc4LCA4NSwgNzksIDEyOCwgNzgsIDg1LCAKLSAgICA3OCwgODUsIDkwLCAxMjgsIDc4LCA4NSwgNzgsIDg1LCAyMTgsIDc4LCA4NSwgNzgsIDcxLCAxMjgsIDc4LCA4NSwgNzgsIAotICAgIDY1LCA4NiwgODUsIDIxMiwgNzgsIDg1LCA3OCwgNjUsIDg2LCA3MywgMjAzLCA3OCwgODUsIDc4LCAxMjgsIDc4LCA4NSwgCi0gICAgMjA2LCA3OCwgODUsIDc3LCA2OSwgODIsIDIwNywgNzgsIDg1LCA3NywgNjksIDgyLCA2NSwgODQsIDc5LCAyMTAsIDc4LCAKLSAgICA4NSwgNzcsIDY5LCA4MiwgNjUsIDIwNCwgNzgsIDg1LCA3NywgNjYsIDY5LCA4MiwgODMsIDEyOCwgNzgsIDg1LCA3NywgNjYsIAotICAgIDY5LCA4MiwgMTI4LCA3OCwgODUsIDc3LCAxMjgsIDc4LCA4NSwgNzYsIDc2LCAxMjgsIDc4LCA4NSwgNzYsIDIwNCwgNzgsIAorICAgIDc5LCAxMjgsIDc4LCA4OSwgNzMsIDczLCAxMjgsIDc4LCA4OSwgNzMsIDY5LCA4OCwgMTI4LCA3OCwgODksIDczLCA2OSwgCisgICAgODQsIDEyOCwgNzgsIDg5LCA3MywgNjksIDgwLCAxMjgsIDc4LCA4OSwgNzMsIDY5LCAxMjgsIDc4LCA4OSwgNzMsIDEyOCwgCisgICAgNzgsIDg5LCAyMDEsIDc4LCA4OSwgNzIsIDY1LCAxMjgsIDc4LCA4OSwgNjksIDg0LCAxMjgsIDc4LCA4OSwgNjksIDIxMiwgCisgICAgNzgsIDg5LCA2OSwgNzIsIDEyOCwgNzgsIDg5LCA2OSwgMjAwLCA3OCwgODksIDY5LCA2OSwgMTI4LCA3OCwgODksIDY5LCAKKyAgICAxMjgsIDc4LCA4OSwgMTk2LCA3OCwgODksIDY3LCA2NSwgMTI4LCA3OCwgODksIDY1LCA4NSwgMTI4LCA3OCwgODksIDY1LCAKKyAgICA3MywgMTI4LCA3OCwgODksIDY1LCA3MiwgMTI4LCA3OCwgODksIDY1LCA2OSwgNzcsIDY1LCA2OSwgMTI4LCA3OCwgODksIAorICAgIDY1LCA2NSwgMTI4LCA3OCwgODcsIDc5LCA3OSwgMTI4LCA3OCwgODcsIDc5LCAxMjgsIDc4LCA4NywgNzMsIDczLCAxMjgsIAorICAgIDc4LCA4NywgNzMsIDEyOCwgNzgsIDg3LCA2OSwgMTI4LCA3OCwgODcsIDY1LCA2NSwgMTI4LCA3OCwgODcsIDY1LCAxMjgsIAorICAgIDc4LCA4NywgMTI4LCA3OCwgODYsIDEyOCwgNzgsIDg1LCA4OCwgMTI4LCA3OCwgODUsIDg1LCA3OCwgMTI4LCA3OCwgODUsIAorICAgIDg1LCAxMjgsIDc4LCA4NSwgODQsIDczLCA3NiwgNzYsIDg1LCAxMjgsIDc4LCA4NSwgODQsIDEyOCwgNzgsIDg1LCAyMTIsIAorICAgIDc4LCA4NSwgODIsIDg4LCAxMjgsIDc4LCA4NSwgODIsIDEyOCwgNzgsIDg1LCA4MCwgMTI4LCA3OCwgODUsIDc5LCA4OCwgCisgICAgMTI4LCA3OCwgODUsIDc5LCA4MCwgMTI4LCA3OCwgODUsIDc5LCAxMjgsIDc4LCA4NSwgNzgsIDg1LCA5MCwgMTI4LCA3OCwgCisgICAgODUsIDc4LCA4NSwgMjE4LCA3OCwgODUsIDc4LCA3MSwgMTI4LCA3OCwgODUsIDc4LCA2NSwgODYsIDg1LCAyMTIsIDc4LCAKKyAgICA4NSwgNzgsIDY1LCA4NiwgNzMsIDIwMywgNzgsIDg1LCA3OCwgMTI4LCA3OCwgODUsIDIwNiwgNzgsIDg1LCA3NywgNjksIAorICAgIDgyLCAyMDcsIDc4LCA4NSwgNzcsIDY5LCA4MiwgNjUsIDg0LCA3OSwgMjEwLCA3OCwgODUsIDc3LCA2OSwgODIsIDY1LCAKKyAgICAyMDQsIDc4LCA4NSwgNzcsIDY2LCA2OSwgODIsIDgzLCAxMjgsIDc4LCA4NSwgNzcsIDY2LCA2OSwgODIsIDEyOCwgNzgsIAorICAgIDg1LCA3NywgMTI4LCA3OCwgODUsIDc2LCA3NiwgMTI4LCA3OCwgODUsIDc2LCAyMDQsIDc4LCA4NSwgNzYsIDEyOCwgNzgsIAogICAgIDg1LCA3NSwgODQsIDY1LCAxMjgsIDc4LCA4NSwgNjksIDc4LCA3MSwgMTI4LCA3OCwgODUsIDY5LCAxMjgsIDc4LCA4NSwgCiAgICAgNjYsIDczLCA2NSwgMjA2LCA3OCwgODUsIDY1LCA2OSwgMTI4LCA3OCwgODUsIDQ5LCA0OSwgMTI4LCA3OCwgODUsIDQ4LCAKICAgICA1MCwgNTAsIDY1LCAxMjgsIDc4LCA4NSwgNDgsIDUwLCA1MCwgMTI4LCA3OCwgODUsIDQ4LCA1MCwgNDksIDEyOCwgNzgsIApAQCAtMTY1OSw0NzAgKzE3ODIsNDkzIEBACiAgICAgNjUsIDY2LCA3NiwgMTk3LCA3OCwgNzksIDc4LCA0NSwgNzQsIDc5LCA3MywgNzgsIDY5LCA4MiwgMTI4LCA3OCwgNzksIDc4LCAKICAgICA0NSwgNjYsIDgyLCA2OSwgNjUsIDc1LCA3MywgNzgsIDE5OSwgNzgsIDc5LCA3NywgNzMsIDc4LCA2NSwgMjA0LCA3OCwgNzksIAogICAgIDc1LCA3MiwgODUsIDc1LCAxMjgsIDc4LCA3OSwgNjgsIDY5LCAxMjgsIDc4LCA3OSwgNjUsIDEyOCwgNzgsIDc5LCA0NSwgCi0gICAgNjYsIDgyLCA2OSwgNjUsIDIwMywgNzgsIDc4LCA3OSwgMTI4LCA3OCwgNzgsIDc4LCA2NSwgMTI4LCA3OCwgNzgsIDcxLCAKKyAgICA2NiwgODIsIDY5LCA2NSwgMjAzLCA3OCwgNzgsIDg1LCA4NSwgMTI4LCA3OCwgNzgsIDg1LCAxMjgsIDc4LCA3OCwgNzksIAorICAgIDc5LCAxMjgsIDc4LCA3OCwgNzksIDEyOCwgNzgsIDc4LCA3OCwgODUsIDg1LCAxMjgsIDc4LCA3OCwgNzgsIDg1LCAxMjgsIAorICAgIDc4LCA3OCwgNzgsIDc5LCA3OSwgMTI4LCA3OCwgNzgsIDc4LCA3OSwgMTI4LCA3OCwgNzgsIDc4LCA3MywgNzMsIDEyOCwgCisgICAgNzgsIDc4LCA3OCwgNzMsIDEyOCwgNzgsIDc4LCA3OCwgNjksIDY5LCAxMjgsIDc4LCA3OCwgNzgsIDY5LCAxMjgsIDc4LCAKKyAgICA3OCwgNzgsIDY1LCA4NSwgMTI4LCA3OCwgNzgsIDc4LCA2NSwgNzMsIDEyOCwgNzgsIDc4LCA3OCwgNjUsIDY1LCAxMjgsIAorICAgIDc4LCA3OCwgNzgsIDY1LCAxMjgsIDc4LCA3OCwgNzgsIDEyOCwgNzgsIDc4LCA3MiwgNjUsIDEyOCwgNzgsIDc4LCA3MSwgCiAgICAgNzksIDc5LCAxMjgsIDc4LCA3OCwgNzEsIDc5LCAxMjgsIDc4LCA3OCwgNzEsIDczLCA3MywgMTI4LCA3OCwgNzgsIDcxLCAKICAgICA3MywgMTI4LCA3OCwgNzgsIDcxLCA2NSwgNjUsIDEyOCwgNzgsIDc4LCA3MSwgNjUsIDEyOCwgNzgsIDc4LCA3MSwgMTI4LCAKLSAgICA3OCwgNzcsIDEyOCwgNzgsIDc2LCA0OCwgNTAsIDQ4LCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1NywgMTI4LCA3OCwgNzYsIAotICAgIDQ4LCA0OSwgNTYsIDEyOCwgNzgsIDc2LCA0OCwgNDksIDU1LCA2NSwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTUsIDEyOCwgCi0gICAgNzgsIDc2LCA0OCwgNDksIDU0LCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1MywgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTIsIAotICAgIDEyOCwgNzgsIDc2LCA0OCwgNDksIDUxLCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1MCwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgCi0gICAgNDksIDEyOCwgNzgsIDc2LCA0OCwgNDksIDQ4LCAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA1NywgMTI4LCA3OCwgNzYsIDQ4LCAKLSAgICA0OCwgNTYsIDEyOCwgNzgsIDc2LCA0OCwgNDgsIDU1LCAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA1NCwgMTI4LCA3OCwgNzYsIAotICAgIDQ4LCA0OCwgNTMsIDY1LCAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA1MywgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTIsIDEyOCwgCi0gICAgNzgsIDc2LCA0OCwgNDgsIDUxLCAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA1MCwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNDksIAotICAgIDEyOCwgNzgsIDc1LCA3OSwgNzcsIDEyOCwgNzgsIDc1LCAyMDcsIDc4LCA3NSwgNzMsIDc4LCA2OCwgNzMsIDEyOCwgNzgsIAotICAgIDc1LCA2NSwgNjUsIDgyLCA2NSwgNjksIDEyOCwgNzgsIDc0LCA4OSwgODgsIDEyOCwgNzgsIDc0LCA4OSwgODQsIDEyOCwgCi0gICAgNzgsIDc0LCA4OSwgODIsIDg4LCAxMjgsIDc4LCA3NCwgODksIDgyLCAxMjgsIDc4LCA3NCwgODksIDgwLCAxMjgsIDc4LCAKLSAgICA3NCwgODksIDEyOCwgNzgsIDc0LCA4NSwgODgsIDEyOCwgNzgsIDc0LCA4NSwgODIsIDg4LCAxMjgsIDc4LCA3NCwgODUsIAotICAgIDgyLCAxMjgsIDc4LCA3NCwgODUsIDgxLCA2NSwgMTI4LCA3OCwgNzQsIDg1LCA4MCwgMTI4LCA3OCwgNzQsIDg1LCA3OSwgCi0gICAgODgsIDEyOCwgNzgsIDc0LCA4NSwgNzksIDEyOCwgNzgsIDc0LCA4NSwgNjksIDgxLCAxMjgsIDc4LCA3NCwgODUsIDY1LCAKLSAgICA2OSwgMTI4LCA3OCwgNzQsIDg1LCAxMjgsIDc4LCA3NCwgNzksIDg4LCAxMjgsIDc4LCA3NCwgNzksIDg0LCAxMjgsIDc4LCAKLSAgICA3NCwgNzksIDgwLCAxMjgsIDc4LCA3NCwgNzksIDc5LCAxMjgsIDc4LCA3NCwgNzksIDEyOCwgNzgsIDc0LCA3MywgODgsIAotICAgIDEyOCwgNzgsIDc0LCA3MywgODQsIDEyOCwgNzgsIDc0LCA3MywgODAsIDEyOCwgNzgsIDc0LCA3MywgNjksIDg4LCAxMjgsIAotICAgIDc4LCA3NCwgNzMsIDY5LCA4NCwgMTI4LCA3OCwgNzQsIDczLCA2OSwgODAsIDEyOCwgNzgsIDc0LCA3MywgNjksIDY5LCAKLSAgICAxMjgsIDc4LCA3NCwgNzMsIDY5LCAxMjgsIDc4LCA3NCwgNzMsIDEyOCwgNzgsIDc0LCAyMDEsIDc4LCA3NCwgNjksIDg1LCAKLSAgICA4OCwgMTI4LCA3OCwgNzQsIDY5LCA4NSwgODQsIDEyOCwgNzgsIDc0LCA2OSwgODUsIDY1LCA2OSwgNzgsIDY1LCAxMjgsIAotICAgIDc4LCA3NCwgNjksIDg1LCA2NSwgNjksIDc3LCAxMjgsIDc4LCA3NCwgNjksIDY5LCA2OSwgNjksIDEyOCwgNzgsIDc0LCA2OSwgCi0gICAgNjksIDEyOCwgNzgsIDc0LCA2OSwgMTk3LCA3OCwgNzQsIDY5LCAxMjgsIDc4LCA3NCwgNjUsIDgxLCAxMjgsIDc4LCA3NCwgCi0gICAgNjUsIDgwLCAxMjgsIDc4LCA3NCwgNjUsIDY5LCA3NywgNzYsIDczLCAxMjgsIDc4LCA3NCwgNjUsIDY5LCA3NywgMTI4LCAKLSAgICA3OCwgNzQsIDY1LCA2NSwgMTI4LCA3OCwgNzQsIDEyOCwgNzgsIDczLCA4OCwgMTI4LCA3OCwgNzMsIDg0LCA4MiwgNjksIAotICAgIDEyOCwgNzgsIDczLCA4MywgNjUsIDcxLCAxMjgsIDc4LCA3MywgODIsIDg1LCA3MSwgODUsIDEyOCwgNzgsIDczLCA4MCwgCi0gICAgMTI4LCA3OCwgNzMsIDc4LCA4NCwgNzIsIDEyOCwgNzgsIDczLCA3OCwgNjksIDg0LCA4OSwgMTI4LCA3OCwgNzMsIDc4LCAKLSAgICA2OSwgODQsIDIxNywgNzgsIDczLCA3OCwgNjksIDg0LCA2OSwgNjksIDc4LCAxMjgsIDc4LCA3MywgNzgsIDY5LCA4NCwgNjksIAotICAgIDY5LCAyMDYsIDc4LCA3MywgNzgsIDY5LCA0NSwgODQsIDcyLCA3MywgODIsIDg0LCA4OSwgMTI4LCA3OCwgNzMsIDc4LCAKLSAgICAxOTcsIDc4LCA3MywgNzgsIDY4LCA2NSwgNTAsIDEyOCwgNzgsIDczLCA3OCwgNjgsIDY1LCAxNzgsIDc4LCA3MywgNzcsIAotICAgIDEyOCwgNzgsIDczLCAyMDUsIDc4LCA3MywgNzUsIDcyLCA2NSwgNzIsIDczLCA4NCwgMTI4LCA3OCwgNzMsIDc1LCA2NSwgCi0gICAgNzIsIDczLCA4NCwgMTI4LCA3OCwgNzMsIDc1LCA2NSwgMTI4LCA3OCwgNzMsIDczLCAxMjgsIDc4LCA3MywgNzIsIDgzLCAKLSAgICA3MiwgODYsIDY1LCA4MywgNjUsIDEyOCwgNzgsIDczLCA3MSwgNzMsIDY4LCA2NSwgNzcsIDczLCA3OCwgMTI4LCA3OCwgNzMsIAotICAgIDcxLCA3MywgNjgsIDY1LCA2OSwgODMsIDcyLCAxMjgsIDc4LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA3OCwgNzMsIDcxLCA3MiwgCi0gICAgMjEyLCA3OCwgNzMsIDcxLCA3MSwgNjUsIDcyLCA3MywgODQsIDY1LCAxMjgsIDc4LCA3MywgNjksIDg4LCAxMjgsIDc4LCAKLSAgICA3MywgNjksIDg1LCA3OCwgNDUsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgCi0gICAgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgNzIsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgODMsIDczLCA3OSwgODMsIAotICAgIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIDc4LCA3MywgNjksIDg1LCA3OCwgCi0gICAgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDQ1LCA4MCwgNjUsIDc4LCA4MywgNzMsIAotICAgIDc5LCA4MywgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIDc4LCA3MywgCi0gICAgNjksIDg1LCA3OCwgNDUsIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDQ1LCA2NywgNzMsIAotICAgIDY5LCA4NSwgNjcsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgCi0gICAgNzgsIDczLCA2OSwgODUsIDIwNiwgNzgsIDczLCA2OSwgODAsIDEyOCwgNzgsIDczLCA2OSwgMTI4LCA3OCwgNzMsIDY2LCAKLSAgICAxMjgsIDc4LCA3MywgNjUsIDEyOCwgNzgsIDczLCA1MCwgMTI4LCA3OCwgNzIsIDg1LCA2OSwgMTI4LCA3OCwgNzIsIDc0LCAKLSAgICA2NSwgMTI4LCA3OCwgNzIsIDY1LCAxMjgsIDc4LCA3MiwgMTI4LCA3OCwgNzEsIDg5LCA2OSwgMTI4LCA3OCwgNzEsIDg2LCAKLSAgICA2OSwgMTI4LCA3OCwgNzEsIDg1LCA3OSwgODgsIDEyOCwgNzgsIDcxLCA4NSwgNzksIDg0LCAxMjgsIDc4LCA3MSwgODUsIAotICAgIDc5LCAxMjgsIDc4LCA3MSwgODUsIDY1LCA2OSwgODQsIDEyOCwgNzgsIDcxLCA4NSwgNjUsIDY5LCAxMjgsIDc4LCA3MSwgCi0gICAgNzksIDg4LCAxMjgsIDc4LCA3MSwgNzksIDg1LCAxMjgsIDc4LCA3MSwgNzksIDIxMywgNzgsIDcxLCA3OSwgODQsIDEyOCwgCi0gICAgNzgsIDcxLCA3OSwgODEsIDEyOCwgNzgsIDcxLCA3OSwgODAsIDEyOCwgNzgsIDcxLCA3OSwgNzgsIDEyOCwgNzgsIDcxLCAKLSAgICA3OSwgNzcsIDEyOCwgNzgsIDcxLCA3OSwgNjksIDcyLCAxMjgsIDc4LCA3MSwgNzksIDY5LCAyMDAsIDc4LCA3MSwgMjA3LCAKLSAgICA3OCwgNzEsIDc1LCA4OSwgNjksIDY5LCAxMjgsIDc4LCA3MSwgNzUsIDg3LCA2NSwgNjksIDc4LCAxMjgsIDc4LCA3MSwgNzUsIAotICAgIDg1LCA4MCwgMTI4LCA3OCwgNzEsIDc1LCA4NSwgNzgsIDEyOCwgNzgsIDcxLCA3NSwgODUsIDc3LCAxMjgsIDc4LCA3MSwgCi0gICAgNzUsIDg1LCA2OSwgNzgsIDkwLCA2OSwgODUsIDc3LCAxMjgsIDc4LCA3MSwgNzUsIDg1LCAxOTcsIDc4LCA3MSwgNzUsIDczLCAKLSAgICA3OCwgNjgsIDIwMSwgNzgsIDcxLCA3NSwgNzMsIDY5LCA2OSwgMTI4LCA3OCwgNzEsIDc1LCA2OSwgODUsIDg4LCAxMjgsIAotICAgIDc4LCA3MSwgNzUsIDY5LCA4NSwgODIsIDczLCAxMjgsIDc4LCA3MSwgNzUsIDY5LCA4NSwgNjUsIDY5LCA4MSwgMTI4LCA3OCwgCi0gICAgNzEsIDc1LCA2OSwgODUsIDY1LCA2OSwgNzcsIDEyOCwgNzgsIDcxLCA3NSwgNjUsIDgxLCAxMjgsIDc4LCA3MSwgNzUsIDY1LCAKLSAgICA4MCwgMTI4LCA3OCwgNzEsIDc1LCA2NSwgNjUsIDc3LCA3MywgMTI4LCA3OCwgNzEsIDc1LCA2NSwgMTI4LCA3OCwgNzEsIAotICAgIDczLCA2OSwgODgsIDEyOCwgNzgsIDcxLCA3MywgNjksIDgwLCAxMjgsIDc4LCA3MSwgNzMsIDY5LCAxMjgsIDc4LCA3MSwgCi0gICAgNzEsIDg3LCA2NSwgNjksIDc4LCAxMjgsIDc4LCA3MSwgNzEsIDg1LCA4MiwgNjUsIDY5LCAxMjgsIDc4LCA3MSwgNzEsIDg1LCAKLSAgICA4MCwgMTI4LCA3OCwgNzEsIDcxLCA4NSwgNzksIDgxLCAxMjgsIDc4LCA3MSwgNzEsIDg1LCA3OSwgMjA5LCA3OCwgNzEsIAotICAgIDcxLCA4NSwgNzksIDc4LCAxMjgsIDc4LCA3MSwgNzEsIDg1LCA3OSwgNzcsIDEyOCwgNzgsIDcxLCA3MSwgODUsIDc3LCAKLSAgICAxMjgsIDc4LCA3MSwgNzEsIDg1LCA2OSwgNjksIDg0LCAxMjgsIDc4LCA3MSwgNzEsIDg1LCA2NSwgNjksIDgzLCA3MiwgNjUsIAotICAgIDE5NywgNzgsIDcxLCA3MSwgODUsIDY1LCA2OSwgMjA2LCA3OCwgNzEsIDcxLCA4NSwgMTI4LCA3OCwgNzEsIDcxLCA3OSwgCi0gICAgNzksIDEyOCwgNzgsIDcxLCA3MSwgNzksIDEyOCwgNzgsIDcxLCA3MSwgNzMsIDEyOCwgNzgsIDcxLCA3MSwgNjksIDg1LCAKLSAgICA4OCwgMTI4LCA3OCwgNzEsIDcxLCA2OSwgODUsIDY1LCA2OSwgODQsIDEyOCwgNzgsIDcxLCA3MSwgNjksIDg1LCA2NSwgNjksIAotICAgIDEyOCwgNzgsIDcxLCA3MSwgNjksIDIxMywgNzgsIDcxLCA3MSwgNjksIDc4LCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA2OSwgCi0gICAgODQsIDEyOCwgNzgsIDcxLCA3MSwgNjksIDY5LCA2OSwgNjksIDEyOCwgNzgsIDcxLCA3MSwgNjksIDY5LCAxMjgsIDc4LCAKLSAgICA3MSwgNzEsIDY5LCAxMjgsIDc4LCA3MSwgNzEsIDY1LCA4MCwgMTI4LCA3OCwgNzEsIDcxLCA2NSwgNjUsIDc3LCA2NSwgNjksIAotICAgIDEyOCwgNzgsIDcxLCA3MSwgNjUsIDY1LCA3NywgMTI4LCA3OCwgNzEsIDcxLCAxMjgsIDc4LCA3MSwgNjksIDg4LCAxMjgsIAotICAgIDc4LCA3MSwgNjksIDg1LCA4MiwgNjksIDg1LCA4NCwgMTI4LCA3OCwgNzEsIDY5LCA4MCwgMTI4LCA3OCwgNzEsIDY5LCA3OCwgCi0gICAgMTI4LCA3OCwgNzEsIDY5LCA2NSwgNjgsIDY1LCA3NiwgMTI4LCA3OCwgNzEsIDY1LCA4OCwgMTI4LCA3OCwgNzEsIDY1LCAKLSAgICA4NCwgMTI4LCA3OCwgNzEsIDY1LCAyMTEsIDc4LCA3MSwgNjUsIDgxLCAxMjgsIDc4LCA3MSwgNjUsIDgwLCAxMjgsIDc4LCAKLSAgICA3MSwgNjUsIDc4LCA3MSwgODUsIDEyOCwgNzgsIDcxLCA2NSwgNzgsIDEyOCwgNzgsIDcxLCA2NSwgNzMsIDEyOCwgNzgsIAotICAgIDcxLCA2NSwgNjUsIDczLCAxMjgsIDc4LCA3MSwgMTkzLCA3OCwgNzAsIDEyOCwgNzgsIDY5LCA4OCwgMjEyLCA3OCwgNjksIAotICAgIDg4LCAxMjgsIDc4LCA2OSwgODcsIDgzLCA4MCwgNjUsIDgwLCA2OSwgODIsIDEyOCwgNzgsIDY5LCA4NywgNzYsIDczLCA3OCwgCi0gICAgNjksIDEyOCwgNzgsIDY5LCA4NywgMTI4LCA3OCwgNjksIDg1LCA4NCwgODIsIDY1LCAyMDQsIDc4LCA2OSwgODUsIDg0LCAKLSAgICA2OSwgODIsIDEyOCwgNzgsIDY5LCA4NCwgMTI4LCA3OCwgNjksIDIxMiwgNzgsIDY5LCA4MywgODQsIDY5LCAxOTYsIDc4LCAKLSAgICA2OSwgODEsIDg1LCA2OCwgNjUsIDY1LCAxMjgsIDc4LCA2OSwgODAsIDg0LCA4NSwgNzgsIDY5LCAxMjgsIDc4LCA2OSwgODAsIAotICAgIDEyOCwgNzgsIDY5LCA3OSwgMTI4LCA3OCwgNjksIDIwNywgNzgsIDY5LCA3OCwgNjUsIDc4LCA3OSwgMTI4LCA3OCwgNjksIAotICAgIDc4LCAxMjgsIDc4LCA2OSwgNzMsIDg0LCA3MiwgNjksIDIxMCwgNzgsIDY5LCA3MSwgNjUsIDg0LCA3MywgNzksIDIwNiwgCi0gICAgNzgsIDY5LCA3MSwgNjUsIDg0LCA2OSwgMTk2LCA3OCwgNjksIDY5LCAxMjgsIDc4LCA2OSwgNjcsIDc1LCA4NCwgNzMsIDY5LCAKLSAgICAxMjgsIDc4LCA2OSwgNjYsIDY5LCA3OCwgODMsIDg0LCA3MywgNzcsIDc3LCA2OSwgMTI4LCA3OCwgNjgsIDg1LCA4OCwgCi0gICAgMTI4LCA3OCwgNjgsIDg1LCA4NCwgMTI4LCA3OCwgNjgsIDg1LCA4MiwgODgsIDEyOCwgNzgsIDY4LCA4NSwgODIsIDEyOCwgCi0gICAgNzgsIDY4LCA4NSwgODAsIDEyOCwgNzgsIDY4LCA4NSwgNzgsIDEyOCwgNzgsIDY4LCAyMTMsIDc4LCA2OCwgNzksIDg4LCAKLSAgICAxMjgsIDc4LCA2OCwgNzksIDg0LCAxMjgsIDc4LCA2OCwgNzksIDgwLCAxMjgsIDc4LCA2OCwgNzksIDc5LCAxMjgsIDc4LCAKLSAgICA2OCwgNzksIDc4LCAxMjgsIDc4LCA2OCwgNzksIDc3LCA2NiwgODUsIDEyOCwgNzgsIDY4LCA3OSwgNzYsIDE5NywgNzgsIAotICAgIDY4LCA3MywgODgsIDEyOCwgNzgsIDY4LCA3MywgODQsIDEyOCwgNzgsIDY4LCA3MywgODEsIDEyOCwgNzgsIDY4LCA3MywgCi0gICAgODAsIDEyOCwgNzgsIDY4LCA3MywgNjksIDg4LCAxMjgsIDc4LCA2OCwgNzMsIDY5LCAxMjgsIDc4LCA2OCwgNzMsIDY4LCAKLSAgICA2NSwgMTI4LCA3OCwgNjgsIDczLCA2NSwgODEsIDEyOCwgNzgsIDY4LCA2OSwgODgsIDEyOCwgNzgsIDY4LCA2OSwgODUsIAotICAgIDg4LCAxMjgsIDc4LCA2OCwgNjksIDg1LCA4NCwgMTI4LCA3OCwgNjgsIDY5LCA4NSwgNjUsIDY5LCA4MiwgNjksIDY5LCAKLSAgICAxMjgsIDc4LCA2OCwgNjksIDgwLCAxMjgsIDc4LCA2OCwgNjksIDY5LCAxMjgsIDc4LCA2OCwgNjksIDEyOCwgNzgsIDY4LCAKLSAgICA2NSwgODgsIDEyOCwgNzgsIDY4LCA2NSwgODQsIDEyOCwgNzgsIDY4LCA2NSwgODAsIDEyOCwgNzgsIDY4LCA2NSwgNzcsIAotICAgIDEyOCwgNzgsIDY4LCA2NSwgNjUsIDc4LCA3MSwgNzEsIDY5LCA4NSwgNjUsIDY5LCA4NCwgMTI4LCA3OCwgNjgsIDY1LCA2NSwgCi0gICAgMTI4LCA3OCwgNjgsIDY1LCAxOTMsIDc4LCA2NiwgODksIDg4LCAxMjgsIDc4LCA2NiwgODksIDg0LCAxMjgsIDc4LCA2NiwgCi0gICAgODksIDgyLCA4OCwgMTI4LCA3OCwgNjYsIDg5LCA4MiwgMTI4LCA3OCwgNjYsIDg5LCA4MCwgMTI4LCA3OCwgNjYsIDg5LCAKLSAgICAxMjgsIDc4LCA2NiwgODUsIDg4LCAxMjgsIDc4LCA2NiwgODUsIDg0LCAxMjgsIDc4LCA2NiwgODUsIDgyLCA4OCwgMTI4LCAKLSAgICA3OCwgNjYsIDg1LCA4MiwgMTI4LCA3OCwgNjYsIDg1LCA4MCwgMTI4LCA3OCwgNjYsIDg1LCAxMjgsIDc4LCA2NiwgNzksIAotICAgIDg4LCAxMjgsIDc4LCA2NiwgNzksIDg0LCAxMjgsIDc4LCA2NiwgNzksIDgwLCAxMjgsIDc4LCA2NiwgNzksIDEyOCwgNzgsIAotICAgIDY2LCA3MywgODgsIDEyOCwgNzgsIDY2LCA3MywgODQsIDEyOCwgNzgsIDY2LCA3MywgODAsIDEyOCwgNzgsIDY2LCA3MywgCi0gICAgNjksIDg4LCAxMjgsIDc4LCA2NiwgNzMsIDY5LCA4MCwgMTI4LCA3OCwgNjYsIDczLCA2OSwgMTI4LCA3OCwgNjYsIDczLCAKLSAgICAxMjgsIDc4LCA2NiwgNjUsIDg4LCAxMjgsIDc4LCA2NiwgNjUsIDg0LCAxMjgsIDc4LCA2NiwgNjUsIDgwLCAxMjgsIDc4LCAKLSAgICA2NiwgNjUsIDEyOCwgNzgsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzgsIDY1LCA4OSwgMTI4LCA3OCwgNjUsIAotICAgIDg4LCA3MywgNjUsIDIwNiwgNzgsIDY1LCA4OCwgMTI4LCA3OCwgNjUsIDg1LCA4NCwgNzIsIDgzLCAxMjgsIDc4LCA2NSwgCi0gICAgODUsIDY4LCA3MywgMjE4LCA3OCwgNjUsIDg0LCA4NSwgODIsIDY1LCAyMDQsIDc4LCA2NSwgODQsIDczLCA3OSwgNzgsIDY1LCAKLSAgICAyMDQsIDc4LCA2NSwgODMsIDc1LCA2NSwgODAsIDIwMSwgNzgsIDY1LCA4MywgNzIsIDczLCAxMjgsIDc4LCA2NSwgODMsIAotICAgIDY1LCA3NiwgNzMsIDkwLCA2NSwgODQsIDczLCA3OSwgMjA2LCA3OCwgNjUsIDgyLCA4MiwgNzksIDIxNSwgNzgsIDY1LCA4MiwgCi0gICAgMTI4LCA3OCwgNjUsIDgxLCAxMjgsIDc4LCA2NSwgNzksIDIxMSwgNzgsIDY1LCA3OCwgODMsIDY1LCA3OCwgNjUsIDgxLCAKLSAgICAxMjgsIDc4LCA2NSwgNzgsIDcxLCA3NywgNzksIDc4LCA4NCwgNzIsIDc5LCAxMjgsIDc4LCA2NSwgNzgsIDY4LCAxMjgsIAotICAgIDc4LCA2NSwgNzgsIDY1LCAxMjgsIDc4LCA2NSwgNzcsIDY5LCAxMjgsIDc4LCA2NSwgNzcsIDE5NywgNzgsIDY1LCA3NywgCi0gICAgNTAsIDEyOCwgNzgsIDY1LCA3NywgMTI4LCA3OCwgNjUsIDczLCA4MiwgMTkzLCA3OCwgNjUsIDczLCAyMDQsIDc4LCA2NSwgCi0gICAgNzEsIDgyLCAyMDEsIDc4LCA2NSwgNzEsIDY1LCA4MiwgMTI4LCA3OCwgNjUsIDcxLCA2NSwgMTI4LCA3OCwgNjUsIDcxLCAKLSAgICAxOTMsIDc4LCA2NSwgNzEsIDEyOCwgNzgsIDY1LCAxOTksIDc4LCA2NSwgNjksIDEyOCwgNzgsIDY1LCA2NiwgNzYsIDY1LCAKLSAgICAxMjgsIDc4LCA2NSwgNjUsIDgzLCA3MywgNzUsIDg5LCA2NSwgODksIDY1LCAxMjgsIDc4LCA2NSwgNjUsIDc1LCA4MywgNzMsIAotICAgIDc1LCA4OSwgNjUsIDg5LCA2NSwgMTI4LCA3OCwgNjUsIDY1LCA3MywgMTI4LCA3OCwgNjUsIDY1LCAxMjgsIDc4LCA2NSwgCi0gICAgMTkzLCA3OCwgNjUsIDUwLCAxMjgsIDc4LCA0OCwgNTIsIDUwLCAxMjgsIDc4LCA0OCwgNTIsIDQ5LCAxMjgsIDc4LCA0OCwgCi0gICAgNTIsIDQ4LCAxMjgsIDc4LCA0OCwgNTEsIDU3LCAxMjgsIDc4LCA0OCwgNTEsIDU2LCAxMjgsIDc4LCA0OCwgNTEsIDU1LCAKLSAgICA2NSwgMTI4LCA3OCwgNDgsIDUxLCA1NSwgMTI4LCA3OCwgNDgsIDUxLCA1NCwgMTI4LCA3OCwgNDgsIDUxLCA1MywgNjUsIAotICAgIDEyOCwgNzgsIDQ4LCA1MSwgNTMsIDEyOCwgNzgsIDQ4LCA1MSwgNTIsIDY1LCAxMjgsIDc4LCA0OCwgNTEsIDUyLCAxMjgsIAotICAgIDc4LCA0OCwgNTEsIDUxLCA2NSwgMTI4LCA3OCwgNDgsIDUxLCA1MSwgMTI4LCA3OCwgNDgsIDUxLCA1MCwgMTI4LCA3OCwgCi0gICAgNDgsIDUxLCA0OSwgMTI4LCA3OCwgNDgsIDUxLCA0OCwgMTI4LCA3OCwgNDgsIDUwLCA1NywgMTI4LCA3OCwgNDgsIDUwLCAKLSAgICA1NiwgMTI4LCA3OCwgNDgsIDUwLCA1NSwgMTI4LCA3OCwgNDgsIDUwLCA1NCwgMTI4LCA3OCwgNDgsIDUwLCA1MywgNjUsIAotICAgIDEyOCwgNzgsIDQ4LCA1MCwgNTMsIDEyOCwgNzgsIDQ4LCA1MCwgNTIsIDEyOCwgNzgsIDQ4LCA1MCwgNTEsIDEyOCwgNzgsIAotICAgIDQ4LCA1MCwgNTAsIDEyOCwgNzgsIDQ4LCA1MCwgNDksIDEyOCwgNzgsIDQ4LCA1MCwgNDgsIDEyOCwgNzgsIDQ4LCA0OSwgCi0gICAgNTcsIDEyOCwgNzgsIDQ4LCA0OSwgNTYsIDY2LCAxMjgsIDc4LCA0OCwgNDksIDU2LCA2NSwgMTI4LCA3OCwgNDgsIDQ5LCAKLSAgICA1NiwgMTI4LCA3OCwgNDgsIDQ5LCA1NSwgMTI4LCA3OCwgNDgsIDQ5LCA1NCwgMTI4LCA3OCwgNDgsIDQ5LCA1MywgMTI4LCAKLSAgICA3OCwgNDgsIDQ5LCA1MiwgMTI4LCA3OCwgNDgsIDQ5LCA1MSwgMTI4LCA3OCwgNDgsIDQ5LCA1MCwgMTI4LCA3OCwgNDgsIAotICAgIDQ5LCA0OSwgMTI4LCA3OCwgNDgsIDQ5LCA0OCwgMTI4LCA3OCwgNDgsIDQ4LCA1NywgMTI4LCA3OCwgNDgsIDQ4LCA1NiwgCi0gICAgMTI4LCA3OCwgNDgsIDQ4LCA1NSwgMTI4LCA3OCwgNDgsIDQ4LCA1NCwgMTI4LCA3OCwgNDgsIDQ4LCA1MywgMTI4LCA3OCwgCi0gICAgNDgsIDQ4LCA1MiwgMTI4LCA3OCwgNDgsIDQ4LCA1MSwgMTI4LCA3OCwgNDgsIDQ4LCA1MCwgMTI4LCA3OCwgNDgsIDQ4LCAKLSAgICA0OSwgMTI4LCA3OCwgNDUsIDY3LCA4MiwgNjksIDE5NywgNzgsIDQ1LCA2NSwgODIsIDIxNywgNzcsIDg5LCA4OCwgMTI4LCAKLSAgICA3NywgODksIDg0LCAxMjgsIDc3LCA4OSwgODMsIDc2LCA3MywgODQsIDY5LCAxMjgsIDc3LCA4OSwgODAsIDEyOCwgNzcsIAotICAgIDg5LCA2NSwgMTI4LCA3NywgODksIDE5MywgNzcsIDg5LCAxMjgsIDc3LCAyMTcsIDc3LCA4NywgNzksIDc5LCAxMjgsIDc3LCAKLSAgICA4NywgNzksIDEyOCwgNzcsIDg3LCA3MywgNzMsIDEyOCwgNzcsIDg3LCA3MywgMTI4LCA3NywgODcsIDY5LCA2OSwgMTI4LCAKLSAgICA3NywgODcsIDY5LCAxMjgsIDc3LCA4NywgNjUsIDY1LCAxMjgsIDc3LCA4NywgNjUsIDEyOCwgNzcsIDg3LCAxMjgsIDc3LCAKLSAgICAyMTUsIDc3LCA4NiwgNzksIDgwLCAxMjgsIDc3LCA4NiwgNzMsIDEyOCwgNzcsIDg2LCA2OSwgODUsIDY1LCA2OSwgNzgsIAotICAgIDcxLCA2NSwgNzcsIDEyOCwgNzcsIDg2LCAxMjgsIDc3LCAyMTQsIDc3LCA4NSwgODgsIDEyOCwgNzcsIDg1LCA4NSwgODMsIAotICAgIDczLCA3NSwgNjUsIDg0LCA3OSwgNjUsIDc4LCAxMjgsIDc3LCA4NSwgODUsIDgyLCA2OCwgNzIsIDY1LCA3NCwgMTkzLCA3NywgCi0gICAgODUsIDg0LCAxMjgsIDc3LCA4NSwgODMsIDczLCA2NywgMTI4LCA3NywgODUsIDgzLCA3MywgMTk1LCA3NywgODUsIDgzLCAKLSAgICA3MiwgODIsIDc5LCA3OSwgNzcsIDEyOCwgNzcsIDg1LCA4MywgNzIsIDUxLCAxMjgsIDc3LCA4NSwgODMsIDcyLCAxNzksIAotICAgIDc3LCA4NSwgODMsIDcyLCAxMjgsIDc3LCA4NSwgODMsIDIwMCwgNzcsIDg1LCA4MiwgODgsIDEyOCwgNzcsIDg1LCA4MiwgCi0gICAgNzEsIDg1LCA1MCwgMTI4LCA3NywgODUsIDgyLCA2OSwgMTI4LCA3NywgODUsIDgyLCA2OCwgNjUsIDEyOCwgNzcsIDg1LCAKLSAgICA4MiwgNjgsIDE5MywgNzcsIDg1LCA4MiwgMTI4LCA3NywgODUsIDgxLCA2OCwgNjUsIDc3LCAxMjgsIDc3LCA4NSwgODAsIAotICAgIDEyOCwgNzcsIDg1LCA3OSwgODgsIDEyOCwgNzcsIDg1LCA3OSwgODQsIDEyOCwgNzcsIDg1LCA3OSwgODAsIDEyOCwgNzcsIAotICAgIDg1LCA3OSwgNzcsIDY1LCA2OSwgMTI4LCA3NywgODUsIDc5LCAxMjgsIDc3LCA4NSwgNzgsIDgzLCA4NSwgNjYsIDEyOCwgCi0gICAgNzcsIDg1LCA3OCwgNjUsIDcyLCAxMjgsIDc3LCA4NSwgNzYsIDg0LCA3MywgODMsIDY5LCA4NCwgMTI4LCA3NywgODUsIDc2LCAKLSAgICA4NCwgNzMsIDgzLCA2OSwgMjEyLCA3NywgODUsIDc2LCA4NCwgNzMsIDgwLCA3NiwgNzMsIDY3LCA2NSwgODQsIDczLCA3OSwgCi0gICAgNzgsIDEyOCwgNzcsIDg1LCA3NiwgODQsIDczLCA4MCwgNzYsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDIwNiwgNzcsIDg1LCAKLSAgICA3NiwgODQsIDczLCA4MCwgNzYsIDE5NywgNzcsIDg1LCA3NiwgODQsIDczLCA3OSwgNjcsIDg1LCA3NiwgNjUsIDIxMCwgNzcsIAotICAgIDg1LCA3NiwgODQsIDczLCA3NywgNjUsIDgwLCAxMjgsIDc3LCA4NSwgNzYsIDg0LCAyMDEsIDc3LCA4NSwgNzUsIDgwLCA3MiwgCi0gICAgODIsIDY5LCA3OCwgNzEsIDEyOCwgNzcsIDg1LCA3MywgNzgsIDEyOCwgNzcsIDg1LCA3MSwgODMsIDEyOCwgNzcsIDg1LCAKLSAgICA3MSwgMTI4LCA3NywgODUsIDE5OSwgNzcsIDg1LCA2OSwgMTI4LCA3NywgODUsIDY3LCA3MiwgMTI4LCA3NywgODUsIDY3LCAKLSAgICAyMDAsIDc3LCA4NSwgNjcsIDY1LCA2NSwgNjgsIDEyOCwgNzcsIDg1LCA2NSwgNzgsIDEyOCwgNzcsIDg1LCA2NSwgNjksIAotICAgIDEyOCwgNzcsIDg1LCA0NSwgNzEsIDY1LCA2NSwgNzIsIDc2LCA2NSwgMTkzLCA3NywgMjEzLCA3NywgODMsIDEyOCwgNzcsIAotICAgIDgwLCA2NSwgMTI4LCA3NywgNzksIDg5LCA2NSwgNzMsIDEyOCwgNzcsIDc5LCA4OCwgMTI4LCA3NywgNzksIDg2LCA3MywgCi0gICAgMTk3LCA3NywgNzksIDg2LCA2OSwgMTk2LCA3NywgNzksIDg1LCA4NCwgNzIsIDEyOCwgNzcsIDc5LCA4NSwgODQsIDIwMCwgCi0gICAgNzcsIDc5LCA4NSwgODMsIDY5LCAxMjgsIDc3LCA3OSwgODUsIDgzLCAxOTcsIDc3LCA3OSwgODUsIDc4LCA4NCwgNjUsIDczLCAKLSAgICA3OCwgODMsIDEyOCwgNzcsIDc5LCA4NSwgNzgsIDg0LCA2NSwgNzMsIDc4LCAxMjgsIDc3LCA3OSwgODUsIDc4LCA4NCwgNjUsIAotICAgIDczLCAyMDYsIDc3LCA3OSwgODUsIDc4LCAyMTIsIDc3LCA3OSwgODUsIDc4LCA2OCwgMTI4LCA3NywgNzksIDg1LCA3OCwgCi0gICAgMTk2LCA3NywgNzksIDg0LCA3MiwgNjksIDgyLCAxMjgsIDc3LCA3OSwgODQsIDEyOCwgNzcsIDc5LCA4MiwgODQsIDg1LCAKLSAgICA4NSwgNzcsIDEyOCwgNzcsIDc5LCA4MiwgODQsIDY1LCA4MiwgMTI4LCA3NywgNzksIDgyLCA4MCwgNzIsIDc5LCA3NiwgNzksIAotICAgIDcxLCA3MywgNjcsIDY1LCAyMDQsIDc3LCA3OSwgODIsIDc4LCA3MywgNzgsIDcxLCAxMjgsIDc3LCA3OSwgODAsIDEyOCwgCi0gICAgNzcsIDc5LCA3OSwgODMsIDY5LCA0NSwgNjcsIDgyLCA2OSwgMTk3LCA3NywgNzksIDc5LCA3OCwgMTI4LCA3NywgNzksIDc5LCAKLSAgICAyMDYsIDc3LCA3OSwgNzksIDc3LCA4MCwgODUsIDgxLCAxMjgsIDc3LCA3OSwgNzksIDc3LCA2OSwgODUsIDg0LCAxMjgsIAotICAgIDc3LCA3OSwgNzksIDEyOCwgNzcsIDc5LCA3OCwgODQsIDczLCA2OSwgNjksIDc4LCAxMjgsIDc3LCA3OSwgNzgsIDg0LCA3MiwgCi0gICAgMTI4LCA3NywgNzksIDc4LCA4NCwgMjAwLCA3NywgNzksIDc4LCA4MywgODQsIDY5LCA4MiwgMTI4LCA3NywgNzksIDc4LCAKLSAgICA3OSwgODMsIDg0LCA2NSwgNjYsIDc2LCAxOTcsIDc3LCA3OSwgNzgsIDc5LCA4MywgODAsIDY1LCA2NywgMTk3LCA3NywgNzksIAotICAgIDc4LCA3OSwgODIsIDY1LCA3MywgNzYsIDEyOCwgNzcsIDc5LCA3OCwgNzksIDcxLCA4MiwgNjUsIDgwLCAyMDAsIDc3LCA3OSwgCi0gICAgNzgsIDc5LCA3MSwgODIsIDY1LCA3NywgNzcsIDc5LCAyMTEsIDc3LCA3OSwgNzgsIDc5LCA3MSwgODIsIDY1LCAyMDUsIDc3LCAKLSAgICA3OSwgNzgsIDc5LCA3MCwgNzksIDc4LCA3MywgNjUsIDgzLCAxMjgsIDc3LCA3OSwgNzgsIDc5LCA2NywgODUsIDc2LCA2NSwgCi0gICAgMjEwLCA3NywgNzksIDc4LCA3NSwgNjksIDg5LCAxMjgsIDc3LCA3OSwgNzgsIDc1LCA2OSwgMjE3LCA3NywgNzksIDc4LCAKLSAgICA3MywgMTI4LCA3NywgNzksIDc4LCA3MSwgNzUsIDY5LCA4NSwgNjUsIDY5LCA4MSwgMTI4LCA3NywgNzksIDc4LCA2OSwgCi0gICAgMjE3LCA3NywgNzksIDc4LCAxMjgsIDc3LCA3OSwgMjA2LCA3NywgNzksIDc2LCAxMjgsIDc3LCA3OSwgNzIsIDY1LCA3NywgCi0gICAgNzcsIDY1LCAxOTYsIDc3LCA3OSwgNjgsIDg1LCA3NiwgMjA3LCA3NywgNzksIDY4LCA2OSwgODMsIDg0LCA4OSwgMTI4LCAKLSAgICA3NywgNzksIDY4LCA2OSwgNzYsIDgzLCAxMjgsIDc3LCA3OSwgNjgsIDY5LCA3NiwgMTI4LCA3NywgNzksIDY4LCA2OSwgCi0gICAgMTI4LCA3NywgNzksIDY2LCA3MywgNzYsIDE5NywgNzcsIDc5LCA2NSwgMTI4LCA3NywgMjA3LCA3NywgNzgsIDg5LCA2NSwgCi0gICAgMjA1LCA3NywgNzgsIDY1LCA4MywgMTI4LCA3NywgNzcsIDEyOCwgNzcsIDIwNSwgNzcsIDc2LCA2NSwgMTI4LCA3NywgNzYsIAotICAgIDEyOCwgNzcsIDc1LCA4MCwgNjUsIDgyLCA2NSwgMjA5LCA3NywgNzMsIDg4LCAxMjgsIDc3LCA3MywgODQsIDEyOCwgNzcsIAotICAgIDczLCAyMTIsIDc3LCA3MywgODMsIDgyLCA2NSwgMTI4LCA3NywgNzMsIDgyLCA3MywgNjYsIDY1LCA2NSwgODIsIDg1LCAKLSAgICAxMjgsIDc3LCA3MywgODIsIDczLCAxMjgsIDc3LCA3MywgODIsIDY5LCA2OCwgMTI4LCA3NywgNzMsIDgwLCAxMjgsIDc3LCAKLSAgICA3MywgNzgsIDg5LCAxMjgsIDc3LCA3MywgNzgsIDg1LCA4MywgNDUsIDc5LCA4MiwgNDUsIDgwLCA3NiwgODUsIDIxMSwgNzcsIAotICAgIDczLCA3OCwgODUsIDgzLCAxMjgsIDc3LCA3MywgNzgsIDczLCA4MywgODQsIDY5LCA4MiwgMTI4LCA3NywgNzMsIDc4LCA3MywgCi0gICAgNzcsIDY1LCAxMjgsIDc3LCA3MywgNzgsIDczLCA2OCwgNzMsIDgzLCA2NywgMTI4LCA3NywgNzMsIDc4LCA3MywgNjYsIDg1LCAKLSAgICA4MywgMTI4LCA3NywgNzMsIDc3LCA2OSwgMTI4LCA3NywgNzMsIDc3LCAxMjgsIDc3LCA3MywgNzYsIDc2LCA3MywgNzksIAotICAgIDc4LCAyMTEsIDc3LCA3MywgNzYsIDc2LCA2OSwgODQsIDEyOCwgNzcsIDczLCA3NiwgNzYsIDE5NywgNzcsIDczLCA3NiwgCi0gICAgMjA0LCA3NywgNzMsIDc2LCA3NSwgMjE3LCA3NywgNzMsIDc2LCAxMjgsIDc3LCA3MywgNzUsIDg1LCA4MiwgNzksIDc4LCAKLSAgICAxMjgsIDc3LCA3MywgNzUsIDgyLCA3OSwgMjA2LCA3NywgNzMsIDc1LCA4MiwgNzMsIDEyOCwgNzcsIDczLCA3MywgNzgsIAotICAgIDEyOCwgNzcsIDczLCA3MywgMTI4LCA3NywgNzMsIDE5OSwgNzcsIDczLCA2OSwgODgsIDEyOCwgNzcsIDczLCA2OSwgODUsIAotICAgIDc3LCA0NSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4MywgODMsIDY1LCAKLSAgICA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgCi0gICAgNzgsIDczLCA2OSwgODUsIDc4LCAxMjgsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDgyLCA3MywgNjksIDg1LCA3NiwgMTI4LCAKLSAgICA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIDc5LCA4MywgMTI4LCA3NywgCi0gICAgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgODAsIAotICAgIDY1LCA3OCwgODMsIDczLCA3OSwgODMsIDEyOCwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgNzgsIDczLCA2OSwgODUsIDc4LCAKLSAgICAxMjgsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIAotICAgIDQ1LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgMTI4LCA3NywgNzMsIDY5LCA4NSwgMjA1LCA3NywgNzMsIDY5LCA4MCwgCi0gICAgMTI4LCA3NywgNzMsIDY5LCA2OSwgMTI4LCA3NywgNzMsIDY5LCAxMjgsIDc3LCA3MywgNjgsIDc2LCA3MywgNzgsIDE5NywgCi0gICAgNzcsIDczLCA2OCwgNjgsIDc2LCA2OSwgNDUsIDg3LCA2OSwgNzYsIDgzLCAyMDAsIDc3LCA3MywgNjgsIDY4LCA3NiwgMTk3LCAKLSAgICA3NywgNzMsIDE5NiwgNzcsIDczLCA2NywgODIsIDc5LCA4MywgNjcsIDc5LCA4MCwgNjksIDEyOCwgNzcsIDczLCA2NywgODIsIAotICAgIDc5LCA4MCwgNzIsIDc5LCA3OCwgNjksIDEyOCwgNzcsIDczLCA2NywgODIsIDIwNywgNzcsIDcyLCA5MCwgMTI4LCA3NywgCi0gICAgNzIsIDEyOCwgNzcsIDcxLCA4NSwgODgsIDEyOCwgNzcsIDcxLCA4NSwgODQsIDEyOCwgNzcsIDcxLCA4NSwgODIsIDg4LCAKLSAgICAxMjgsIDc3LCA3MSwgODUsIDgyLCAxMjgsIDc3LCA3MSwgODUsIDgwLCAxMjgsIDc3LCA3MSwgODUsIDc5LCA4OCwgMTI4LCAKLSAgICA3NywgNzEsIDg1LCA3OSwgODAsIDEyOCwgNzcsIDcxLCA4NSwgNzksIDEyOCwgNzcsIDcxLCA4NSwgMTI4LCA3NywgNzEsIAotICAgIDc5LCA4OCwgMTI4LCA3NywgNzEsIDc5LCA4NCwgMTI4LCA3NywgNzEsIDc5LCA4MCwgMTI4LCA3NywgNzEsIDc5LCAxMjgsIAotICAgIDc3LCA3MSwgMjA3LCA3NywgNzEsIDczLCA2OSwgODgsIDEyOCwgNzcsIDcxLCA3MywgNjksIDEyOCwgNzcsIDcxLCA2OSwgCi0gICAgODgsIDEyOCwgNzcsIDcxLCA2OSwgODAsIDEyOCwgNzcsIDcxLCA2OSwgMTI4LCA3NywgNzEsIDY2LCA4NSwgMTI4LCA3NywgCi0gICAgNzEsIDY2LCA3OSwgNzksIDEyOCwgNzcsIDcxLCA2NiwgNzksIDcwLCA4NSwgNzcsIDEyOCwgNzcsIDcxLCA2NiwgNzksIAotICAgIDEyOCwgNzcsIDcxLCA2NiwgNzMsIDEyOCwgNzcsIDcxLCA2NiwgNjksIDg1LCA3OCwgMTI4LCA3NywgNzEsIDY2LCA2OSwgCi0gICAgNzgsIDEyOCwgNzcsIDcxLCA2NiwgNjksIDY5LCAxMjgsIDc3LCA3MSwgNjYsIDY5LCAxMjgsIDc3LCA3MSwgNjYsIDY1LCAKLSAgICA4MywgNjUsIDgxLCAxMjgsIDc3LCA3MSwgNjYsIDY1LCA4MywgNjUsIDEyOCwgNzcsIDcxLCA2NSwgODgsIDEyOCwgNzcsIAotICAgIDcxLCA2NSwgODQsIDEyOCwgNzcsIDcxLCA2NSwgODAsIDEyOCwgNzcsIDcxLCA2NSwgMTI4LCA3NywgNzEsIDEyOCwgNzcsIAotICAgIDcwLCA3OSwgNzgsIDEyOCwgNzcsIDcwLCA3OSwgMjA2LCA3NywgNzAsIDc5LCAxMjgsIDc3LCA3MCwgNzMsIDg5LCA2NSwgCi0gICAgODEsIDEyOCwgNzcsIDcwLCA3MywgNjksIDY5LCAxMjgsIDc3LCA3MCwgNjksIDg1LCA4NCwgMTI4LCA3NywgNzAsIDY5LCAKLSAgICA4NSwgODEsIDEyOCwgNzcsIDcwLCA2OSwgODUsIDY1LCA2OSwgMTI4LCA3NywgNzAsIDY1LCA2NSwgMTI4LCA3NywgNjksIAotICAgIDkwLCA5MCwgNzksIDEyOCwgNzcsIDY5LCA4OCwgMTI4LCA3NywgNjksIDg1LCAyMTIsIDc3LCA2OSwgODUsIDgxLCAxMjgsIAotICAgIDc3LCA2OSwgODUsIDc4LCA3NCwgNzksIDc3LCA3OCwgNjgsIDY5LCA4NSwgODEsIDEyOCwgNzcsIDY5LCA4NSwgNzgsIDEyOCwgCi0gICAgNzcsIDY5LCA4NCwgODIsIDc5LCAxMjgsIDc3LCA2OSwgODQsIDgyLCA3MywgNjcsIDY1LCAyMDQsIDc3LCA2OSwgODQsIDgyLCAKLSAgICA3MywgNjUsIDEyOCwgNzcsIDY5LCA4NCwgODIsIDY5LCA4NCwgNjksIDIxMSwgNzcsIDY5LCA4NCwgNzksIDY2LCA2OSwgNzYsIAotICAgIDg1LCA4MywgMTI4LCA3NywgNjksIDg0LCA2OSwgNzUsIDEyOCwgNzcsIDY5LCA4NCwgNjksIDcxLCAxMjgsIDc3LCA2OSwgCi0gICAgODQsIDY1LCA3NiwgMTI4LCA3NywgNjksIDg0LCAxOTMsIDc3LCA2OSwgODMsIDgzLCA2OSwgNzgsIDczLCA2NSwgMjA2LCAKLSAgICA3NywgNjksIDgzLCA3OSwgMTI4LCA3NywgNjksIDgzLCA3MywgMTI4LCA3NywgNjksIDgzLCA3MiwgMTI4LCA3NywgNjksIAotICAgIDgyLCA3NSwgNzIsIDY1LCAxMjgsIDc3LCA2OSwgODIsIDc1LCA3MiwgMTkzLCA3NywgNjksIDgyLCA3MywgNjgsIDczLCA2NSwgCi0gICAgNzgsIDgzLCAxMjgsIDc3LCA2OSwgODIsIDczLCAxMjgsIDc3LCA2OSwgODIsIDcxLCA2OSwgMTI4LCA3NywgNjksIDgyLCAKLSAgICA2NywgODUsIDgyLCA4OSwgMTI4LCA3NywgNjksIDgyLCA2NywgODUsIDgyLCAyMTcsIDc3LCA2OSwgNzgsIDY4LCA4NSwgODQsIAotICAgIDEyOCwgNzcsIDY5LCA3OCwgMTI4LCA3NywgNjksIDc3LCA3OSwgMTI4LCA3NywgNjksIDc3LCA2NiwgNjksIDgyLCA4MywgCi0gICAgNzIsIDczLCA4MCwgMTI4LCA3NywgNjksIDc3LCA2NiwgNjksIDgyLCAxMjgsIDc3LCA2OSwgNzcsIDY2LCA2OSwgMjEwLCAKLSAgICA3NywgNjksIDc3LCA0NSwgODEsIDc5LCA4MCwgNzIsIDEyOCwgNzcsIDY5LCA3NywgMTI4LCA3NywgNjksIDIwNSwgNzcsIAotICAgIDY5LCA3NiwgNzksIDY4LCA3MywgMTk1LCA3NywgNjksIDc2LCA3MywgNzUsIDEyOCwgNzcsIDY5LCA3MywgOTAsIDczLCAKLSAgICAxMjgsIDc3LCA2OSwgNzEsIDY1LCA4NCwgNzksIDc4LCAxMjgsIDc3LCA2OSwgNzEsIDY1LCA4MCwgNzIsIDc5LCA3OCwgNjksIAotICAgIDEyOCwgNzcsIDY5LCA3MSwgNjUsIDc2LCA3MywgMTI4LCA3NywgNjksIDY5LCA4NCwgNzksIDgyLCA4NSwgMTI4LCA3NywgCi0gICAgNjksIDY5LCA4NCwgNjksIDIwMSwgNzcsIDY5LCA2OSwgODQsIDEyOCwgNzcsIDY5LCA2OSwgNzcsIDg1LCAxMjgsIDc3LCAKLSAgICA2OSwgNjksIDc3LCAxMjgsIDc3LCA2OSwgNjksIDY5LCA2OSwgMTI4LCA3NywgNjksIDY5LCAxMjgsIDc3LCA2OSwgNjgsIAotICAgIDczLCA4NSwgNzcsIDEyOCwgNzcsIDY5LCA2OCwgNzMsIDg1LCAyMDUsIDc3LCA2OSwgNjgsIDczLCA2NywgNzMsIDc4LCA2OSwgCi0gICAgMTI4LCA3NywgNjksIDY4LCA3MywgNjcsIDY1LCAyMDQsIDc3LCA2OSwgNjUsIDg0LCAxMjgsIDc3LCA2OSwgNjUsIDIxMiwgCi0gICAgNzcsIDY5LCA2NSwgODMsIDg1LCA4MiwgNjksIDE5NiwgNzcsIDY5LCA2NSwgODMsIDg1LCA4MiwgNjksIDEyOCwgNzcsIDY5LCAKLSAgICA2NSwgODMsIDg1LCA4MiwgMTk3LCA3NywgNjgsIDg1LCAyMDYsIDc3LCA2NywgNzIsIDIxMywgNzcsIDY3LCA3MiwgNjUsIAotICAgIDIwNiwgNzcsIDY2LCA4NSwgNzksIDgxLCAxMjgsIDc3LCA2NiwgODUsIDc5LCAxMjgsIDc3LCA2NiwgODUsIDY5LCAxMjgsIAotICAgIDc3LCA2NiwgODUsIDY1LCA2OSwgNzcsIDEyOCwgNzcsIDY2LCA4NSwgNjUsIDY5LCAxMjgsIDc3LCA2NiwgNzksIDc5LCAKLSAgICAxMjgsIDc3LCA2NiwgNzksIDEyOCwgNzcsIDY2LCA3MywgODQsIDEyOCwgNzcsIDY2LCA3MywgMjEyLCA3NywgNjYsIDczLCAKLSAgICA4MiwgNzMsIDY5LCA2OSwgNzgsIDEyOCwgNzcsIDY2LCA3MywgMTI4LCA3NywgNjYsIDY5LCA4NSwgODgsIDEyOCwgNzcsIAotICAgIDY2LCA2OSwgODUsIDgyLCA3MywgMTI4LCA3NywgNjYsIDY5LCA4NSwgNzcsIDEyOCwgNzcsIDY2LCA2OSwgODIsIDY1LCA2OSwgCi0gICAgMTI4LCA3NywgNjYsIDY5LCA3OCwgMTI4LCA3NywgNjYsIDY5LCA2OSwgNzUsIDY5LCA2OSwgODQsIDEyOCwgNzcsIDY2LCAKLSAgICA2OSwgNjksIDEyOCwgNzcsIDY2LCA2OSwgMTI4LCA3NywgNjYsIDY1LCA4MSwgMTI4LCA3NywgNjYsIDY1LCA3OCwgODksIAotICAgIDczLCAxMjgsIDc3LCA2NiwgNjUsIDY1LCA4MiwgNjUsIDY5LCAxMjgsIDc3LCA2NiwgNjUsIDY1LCA3NSwgNjksIDg0LCAKLSAgICAxMjgsIDc3LCA2NiwgNjUsIDY1LCAxMjgsIDc3LCA2NiwgNjUsIDE5MywgNzcsIDY2LCAxOTMsIDc3LCA2NiwgNTIsIDEyOCwgCi0gICAgNzcsIDY2LCA1MSwgMTI4LCA3NywgNjYsIDUwLCAxMjgsIDc3LCA2NiwgMTI4LCA3NywgMTk0LCA3NywgNjUsIDg5LCA2OSwgCi0gICAgMjAzLCA3NywgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3NywgNjUsIDg5LCAxMjgsIDc3LCA2NSwgODgsIDczLCAKLSAgICA3NywgNjUsIDEyOCwgNzcsIDY1LCA4OCwgMTI4LCA3NywgNjUsIDg0LCA4NCwgNzksIDY3LCA3NSwgMTI4LCA3NywgNjUsIAotICAgIDg0LCA4MiwgNzMsIDg4LCAxMjgsIDc3LCA2NSwgODQsIDY5LCA4MiwgNzMsIDY1LCA3NiwgODMsIDEyOCwgNzcsIDY1LCA4NCwgCi0gICAgMTI4LCA3NywgNjUsIDgzLCAyMTMsIDc3LCA2NSwgODMsIDgzLCA3MywgNzgsIDcxLCAxMjgsIDc3LCA2NSwgODMsIDgzLCAKLSAgICA2NSwgNzEsIDY5LCAxMjgsIDc3LCA2NSwgODMsIDc5LCA4MiwgMTkzLCA3NywgNjUsIDgzLCA3NSwgMTI4LCA3NywgNjUsIAotICAgIDgzLCA3MiwgNzAsIDY1LCA2NSwgODQsIDEyOCwgNzcsIDY1LCA4MywgNzIsIDUwLCAxMjgsIDc3LCA2NSwgODMsIDY3LCA4NSwgCi0gICAgNzYsIDczLCA3OCwgMTk3LCA3NywgNjUsIDgyLCA4OSwgMTI4LCA3NywgNjUsIDgyLCA4NSwgNzUsIDg1LCAxMjgsIDc3LCAKLSAgICA2NSwgODIsIDg0LCA4OSwgODIsIDczLCAxOTMsIDc3LCA2NSwgODIsIDgyLCA4OSwgNzMsIDc4LCAxOTksIDc3LCA2NSwgODIsIAotICAgIDgyLCA3MywgNjUsIDcxLCAxOTcsIDc3LCA2NSwgODIsIDc1LCA2OSwgODIsIDEyOCwgNzcsIDY1LCA4MiwgNzUsIDQ1LCA1MiwgCi0gICAgMTI4LCA3NywgNjUsIDgyLCA3NSwgNDUsIDUxLCAxMjgsIDc3LCA2NSwgODIsIDc1LCA0NSwgNTAsIDEyOCwgNzcsIDY1LCAKLSAgICA4MiwgNzUsIDQ1LCA0OSwgMTI4LCA3NywgNjUsIDgyLCA2OSwgMTI4LCA3NywgNjUsIDgyLCA2NywgNzIsIDEyOCwgNzcsIAotICAgIDY1LCA4MiwgNjcsIDY1LCA4NCwgNzksIDQ1LCA4MywgODQsIDY1LCA2NywgNjcsIDY1LCA4NCwgNzksIDEyOCwgNzcsIDY1LCAKLSAgICA4MiwgNjcsIDY1LCA4NCwgNzksIDEyOCwgNzcsIDY1LCA4MiwgNjcsIDY1LCA4MywgNzMsIDg0LCA2OSwgMTI4LCA3NywgNjUsIAotICAgIDgyLCA2NiwgODUsIDg0LCA2NSwgMTI4LCA3NywgNjUsIDgyLCA2NiwgODUsIDg0LCAxOTMsIDc3LCA2NSwgODIsIDEyOCwgCi0gICAgNzcsIDY1LCA4MSwgNjUsIDcwLCAxMjgsIDc3LCA2NSwgODEsIDEyOCwgNzcsIDY1LCA4MCwgNzYsIDE5NywgNzcsIDY1LCAKLSAgICA4MCwgNzMsIDgxLCAxMjgsIDc3LCA2NSwgMjA4LCA3NywgNjUsIDc5LCAxMjgsIDc3LCA2NSwgNzgsIDgzLCA4OSwgNzksIAotICAgIDc4LCAxMjgsIDc3LCA2NSwgNzgsIDgzLCA4NSwgNjUsIDY5LCAxMjgsIDc3LCA2NSwgNzgsIDc4LCA2NSwgMjE4LCA3NywgCi0gICAgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzcsIDY1LCA3OCwgNzEsIDY1LCA3NiwgNjUsIDc3LCAxMjgsIDc3LCA2NSwgNzgsIDY4LCAKLSAgICA2NSwgNzMsIDc2LCA3MywgNzgsIDE5OSwgNzcsIDY1LCA3OCwgNjgsIDY1LCA3MywgMTk1LCA3NywgNjUsIDc4LCA2NywgNzIsIAotICAgIDIxMywgNzcsIDY1LCA3OCwgNjUsIDY3LCA3NiwgNjksIDgzLCAxMjgsIDc3LCA2NSwgNzYsIDg0LCA2OSwgODMsIDE5NywgCi0gICAgNzcsIDY1LCA3NiwgNjksIDY5LCA4MiwgNzMsIDEyOCwgNzcsIDY1LCA3NiwgNjksIDEyOCwgNzcsIDY1LCA3NiwgMTk3LCAKLSAgICA3NywgNjUsIDc2LCA2NSwgNzUsIDc5LCAyMDYsIDc3LCA2NSwgNzUsIDgzLCA4NSwgODIsIDY1LCAxMjgsIDc3LCA2NSwgNzMsIAotICAgIDkwLCA2OSwgMTI4LCA3NywgNjUsIDczLCA4OSwgNjUsIDc3LCA3OSwgNzUsIDEyOCwgNzcsIDY1LCA3MywgODQsIDY1LCA3MywgCi0gICAgNzUsIDcyLCA4NSwgMTI4LCA3NywgNjUsIDczLCA4MiwgODUsIDEyOCwgNzcsIDY1LCA3MywgNzcsIDg1LCA2NSwgNzgsIAotICAgIDEyOCwgNzcsIDY1LCA3MywgNzcsIDY1LCA3NiwgNjUsIDczLCAxMjgsIDc3LCA2NSwgNzMsIDc2LCA2NiwgNzksIDIxNiwgCi0gICAgNzcsIDY1LCA3MywgNzUsIDg1LCA4MiwgNzksIDEyOCwgNzcsIDY1LCA3MywgNjgsIDY5LCA3OCwgMTI4LCA3NywgNjUsIDcyLCAKLSAgICA3NCwgNzksIDc4LCAxOTksIDc3LCA2NSwgNzIsIDcyLCA2NSwgMTI4LCA3NywgNjUsIDcyLCA2NSwgODAsIDgyLCA2NSwgNzgsIAotICAgIDY1LCAxMjgsIDc3LCA2NSwgNzIsIDY1LCA4MCwgNjUsIDc1LCA3MiwgMTI4LCA3NywgNjUsIDcyLCA2NSwgNjUsIDgwLCA4MiwgCi0gICAgNjUsIDY1LCA3OCwgMTkzLCA3NywgNjUsIDcyLCAxMjgsIDc3LCA2NSwgNzEsIDc4LCA3MywgNzAsIDg5LCA3MywgNzgsIAotICAgIDE5OSwgNzcsIDY1LCA2OSwgODMsIDczLCAxMjgsIDc3LCA2NSwgNjksIDc4LCA4OSwgNzMsIDEyOCwgNzcsIDY1LCA2OSwgCi0gICAgNzgsIDc0LCA2OSwgODQsIDEyOCwgNzcsIDY1LCA2OSwgNzcsIDg2LCA2OSwgODUsIDg4LCAxMjgsIDc3LCA2NSwgNjksIDc3LCAKLSAgICA3NSwgODAsIDY5LCA3OCwgMTI4LCA3NywgNjUsIDY5LCA3NywgNzEsIDY2LCA3MywgNjksIDY5LCAxMjgsIDc3LCA2NSwgNjksIAotICAgIDc3LCA2NiwgNzEsIDY2LCA3MywgNjksIDY5LCAxMjgsIDc3LCA2NSwgNjksIDc3LCA2NiwgNjUsIDEyOCwgNzcsIDY1LCA2OSwgCi0gICAgNzcsIDEyOCwgNzcsIDY1LCA2OSwgNzYsIDY5LCA2OSwgMTI4LCA3NywgNjUsIDY5LCA3NSwgNjksIDg1LCA4MCwgMTI4LCAKLSAgICA3NywgNjUsIDY4LCA4OSwgNjUsIDEyOCwgNzcsIDY1LCA2OCwgODUsIDEyOCwgNzcsIDY1LCA2OCwgNjgsIDY1LCAyMDAsIAotICAgIDc3LCA2NSwgNjgsIDY4LCA2NSwgMTI4LCA3NywgNjUsIDY4LCA2OCwgMTkzLCA3NywgNjUsIDY3LCA4MiwgNzksIDc4LCA0NSwgCi0gICAgNzEsIDgyLCA2NSwgODYsIDY5LCAxMjgsIDc3LCA2NSwgNjcsIDgyLCA3OSwgNzgsIDQ1LCA2NiwgODIsIDY5LCA4NiwgNjksIAotICAgIDEyOCwgNzcsIDY1LCA2NywgODIsIDc5LCA3OCwgNDUsIDY1LCA2NywgODUsIDg0LCA2OSwgMTI4LCA3NywgNjUsIDY3LCA4MiwgCi0gICAgNzksIDc4LCAxMjgsIDc3LCA2NSwgNjcsIDgyLCA3OSwgMjA2LCA3NywgNjUsIDY3LCA3MiwgNzMsIDc4LCA2OSwgMTI4LCAKLSAgICA3NywgNjUsIDY1LCA3MywgMTI4LCA3NywgNjUsIDY1LCAxMjgsIDc3LCA2NSwgNTAsIDEyOCwgNzcsIDQ4LCA1MiwgNTIsIAotICAgIDEyOCwgNzcsIDQ4LCA1MiwgNTEsIDEyOCwgNzcsIDQ4LCA1MiwgNTAsIDEyOCwgNzcsIDQ4LCA1MiwgNDksIDEyOCwgNzcsIAotICAgIDQ4LCA1MiwgNDgsIDY1LCAxMjgsIDc3LCA0OCwgNTIsIDQ4LCAxMjgsIDc3LCA0OCwgNTEsIDU3LCAxMjgsIDc3LCA0OCwgCi0gICAgNTEsIDU2LCAxMjgsIDc3LCA0OCwgNTEsIDU1LCAxMjgsIDc3LCA0OCwgNTEsIDU0LCAxMjgsIDc3LCA0OCwgNTEsIDUzLCAKLSAgICAxMjgsIDc3LCA0OCwgNTEsIDUyLCAxMjgsIDc3LCA0OCwgNTEsIDUxLCA2NiwgMTI4LCA3NywgNDgsIDUxLCA1MSwgNjUsIAotICAgIDEyOCwgNzcsIDQ4LCA1MSwgNTEsIDEyOCwgNzcsIDQ4LCA1MSwgNTAsIDEyOCwgNzcsIDQ4LCA1MSwgNDksIDY1LCAxMjgsIAotICAgIDc3LCA0OCwgNTEsIDQ5LCAxMjgsIDc3LCA0OCwgNTEsIDQ4LCAxMjgsIDc3LCA0OCwgNTAsIDU3LCAxMjgsIDc3LCA0OCwgCi0gICAgNTAsIDU2LCA2NSwgMTI4LCA3NywgNDgsIDUwLCA1NiwgMTI4LCA3NywgNDgsIDUwLCA1NSwgMTI4LCA3NywgNDgsIDUwLCAKLSAgICA1NCwgMTI4LCA3NywgNDgsIDUwLCA1MywgMTI4LCA3NywgNDgsIDUwLCA1MiwgNjUsIDEyOCwgNzcsIDQ4LCA1MCwgNTIsIAotICAgIDEyOCwgNzcsIDQ4LCA1MCwgNTEsIDEyOCwgNzcsIDQ4LCA1MCwgNTAsIDY1LCAxMjgsIDc3LCA0OCwgNTAsIDUwLCAxMjgsIAotICAgIDc3LCA0OCwgNTAsIDQ5LCAxMjgsIDc3LCA0OCwgNTAsIDQ4LCAxMjgsIDc3LCA0OCwgNDksIDU3LCAxMjgsIDc3LCA0OCwgCi0gICAgNDksIDU2LCAxMjgsIDc3LCA0OCwgNDksIDU1LCA2NSwgMTI4LCA3NywgNDgsIDQ5LCA1NSwgMTI4LCA3NywgNDgsIDQ5LCAKLSAgICA1NCwgNjUsIDEyOCwgNzcsIDQ4LCA0OSwgNTQsIDEyOCwgNzcsIDQ4LCA0OSwgNTMsIDY1LCAxMjgsIDc3LCA0OCwgNDksIAotICAgIDUzLCAxMjgsIDc3LCA0OCwgNDksIDUyLCAxMjgsIDc3LCA0OCwgNDksIDUxLCAxMjgsIDc3LCA0OCwgNDksIDUwLCA3MiwgCi0gICAgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNzEsIDEyOCwgNzcsIDQ4LCA0OSwgNTAsIDcwLCAxMjgsIDc3LCA0OCwgNDksIDUwLCAKLSAgICA2OSwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNjgsIDEyOCwgNzcsIDQ4LCA0OSwgNTAsIDY3LCAxMjgsIDc3LCA0OCwgNDksIAotICAgIDUwLCA2NiwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNjUsIDEyOCwgNzcsIDQ4LCA0OSwgNTAsIDEyOCwgNzcsIDQ4LCA0OSwgCi0gICAgNDksIDEyOCwgNzcsIDQ4LCA0OSwgNDgsIDY1LCAxMjgsIDc3LCA0OCwgNDksIDQ4LCAxMjgsIDc3LCA0OCwgNDgsIDU3LCAKLSAgICAxMjgsIDc3LCA0OCwgNDgsIDU2LCAxMjgsIDc3LCA0OCwgNDgsIDU1LCAxMjgsIDc3LCA0OCwgNDgsIDU0LCAxMjgsIDc3LCAKLSAgICA0OCwgNDgsIDUzLCAxMjgsIDc3LCA0OCwgNDgsIDUyLCAxMjgsIDc3LCA0OCwgNDgsIDUxLCA2NSwgMTI4LCA3NywgNDgsIAotICAgIDQ4LCA1MSwgMTI4LCA3NywgNDgsIDQ4LCA1MCwgMTI4LCA3NywgNDgsIDQ4LCA0OSwgNjYsIDEyOCwgNzcsIDQ4LCA0OCwgCi0gICAgNDksIDY1LCAxMjgsIDc3LCA0OCwgNDgsIDQ5LCAxMjgsIDc2LCAyMTgsIDc2LCA4OSwgODksIDEyOCwgNzYsIDg5LCA4OCwgCi0gICAgMTI4LCA3NiwgODksIDg0LCAxMjgsIDc2LCA4OSwgODIsIDg4LCAxMjgsIDc2LCA4OSwgODIsIDEyOCwgNzYsIDg5LCA4MCwgCi0gICAgMTI4LCA3NiwgODksIDY4LCA3MywgNjUsIDIwNiwgNzYsIDg5LCA2NywgNzMsIDY1LCAyMDYsIDc2LCA4OCwgMTI4LCA3NiwgCi0gICAgODcsIDc5LCA3OSwgMTI4LCA3NiwgODcsIDc5LCAxMjgsIDc2LCA4NywgNzMsIDczLCAxMjgsIDc2LCA4NywgNzMsIDEyOCwgCi0gICAgNzYsIDg3LCA2OSwgMTI4LCA3NiwgODcsIDY1LCA2NSwgMTI4LCA3NiwgODcsIDY1LCAxMjgsIDc2LCA4NSwgODgsIDEyOCwgCi0gICAgNzYsIDg1LCA4NCwgMTI4LCA3NiwgODUsIDgyLCA4OCwgMTI4LCA3NiwgODUsIDgwLCAxMjgsIDc2LCA4NSwgNzksIDg4LCAKLSAgICAxMjgsIDc2LCA4NSwgNzksIDg0LCAxMjgsIDc2LCA4NSwgNzksIDgwLCAxMjgsIDc2LCA4NSwgNzksIDEyOCwgNzYsIDg1LCAKLSAgICA3OCwgNzEsIDgzLCA3MywgMTI4LCA3NiwgODUsIDc4LCA2NSwgODQsIDE5NywgNzYsIDg1LCAyMDUsIDc2LCA4NSwgNzYsIAotICAgIDEyOCwgNzYsIDg1LCA3MywgODMsIDEyOCwgNzYsIDg1LCA3MiwgODUsIDgyLCAxMjgsIDc2LCA4NSwgNzIsIDEyOCwgNzYsIAotICAgIDg1LCA3MSwgNzEsIDY1LCA3MSwgNjksIDEyOCwgNzYsIDg1LCA3MSwgNjUsIDc2LCAxMjgsIDc2LCA4NSwgNzEsIDY1LCAKLSAgICAyMDQsIDc2LCA4NSwgNjksIDEyOCwgNzYsIDg1LCA2NSwgNjksIDgwLCAxMjgsIDc2LCA4NSwgNTEsIDEyOCwgNzYsIDg1LCAKLSAgICA1MCwgMTI4LCA3NiwgODUsIDE3OCwgNzYsIDc5LCA5MCwgNjksIDc4LCA3MSwgNjksIDEyOCwgNzYsIDc5LCA5MCwgNjksIAotICAgIDc4LCA3MSwgMTk3LCA3NiwgNzksIDg4LCAxMjgsIDc2LCA3OSwgODcsIDY5LCA4MiwgNjksIDE5NiwgNzYsIDc5LCA4NywgCi0gICAgNjksIDIxMCwgNzYsIDc5LCA4NywgNDUsIDE4NSwgNzYsIDc5LCA4NiwgMTk3LCA3NiwgNzksIDg1LCA4MiwgNjksIDEyOCwgCi0gICAgNzYsIDc5LCA4NSwgNjgsIDgzLCA4MCwgNjksIDY1LCA3NSwgNjksIDgyLCAxMjgsIDc2LCA3OSwgODUsIDY4LCA3NiwgMjE3LCAKLSAgICA3NiwgNzksIDg0LCA4NSwgODMsIDEyOCwgNzYsIDc5LCA4NCwgMTI4LCA3NiwgNzksIDgyLCA4MiwgODksIDEyOCwgNzYsIAotICAgIDc5LCA4MiwgODIsIDY1LCA3MywgNzgsIDY5LCAxMjgsIDc2LCA3OSwgODEsIDEyOCwgNzYsIDc5LCA4MCwgMTI4LCA3NiwgCi0gICAgNzksIDc5LCA4NCwgMTI4LCA3NiwgNzksIDc5LCA4MCwgMTI4LCA3NiwgNzksIDc5LCA3OCwgMTI4LCA3NiwgNzksIDc5LCAKLSAgICAyMDMsIDc2LCA3OSwgNzksIDEyOCwgNzYsIDc5LCA3OCwgODMsIDg1LCA3NywgMTI4LCA3NiwgNzksIDc4LCA3MSwgNjUsIAotICAgIDEyOCwgNzYsIDc5LCA3OCwgNzEsIDE5MywgNzYsIDc5LCA3OCwgNzEsIDQ1LCA2NiwgODIsIDY1LCA3OCwgNjcsIDcyLCA0NSwgCi0gICAgODksIDgyLCAxMjgsIDc2LCA3OSwgNzgsIDcxLCA0NSwgNjYsIDgyLCA2NSwgNzgsIDY3LCA3MiwgNDUsIDgzLCA3OSwgMjA0LCAKLSAgICA3NiwgNzksIDc4LCA3MSwgNDUsIDY2LCA4MiwgNjUsIDc4LCA2NywgNzIsIDQ1LCA3OSwgODMsIDIxMSwgNzYsIDc5LCA3OCwgCi0gICAgNzEsIDQ1LCA2NiwgODIsIDY1LCA3OCwgNjcsIDcyLCA0NSwgNzcsIDY1LCA2OCwgMjEwLCA3NiwgNzksIDc4LCA3MSwgNDUsIAotICAgIDY2LCA4MiwgNjUsIDc4LCA2NywgNzIsIDQ1LCA3MiwgNjUsIDcxLCA2NSwgNzYsIDIwNCwgNzYsIDc5LCA3OCwgNzEsIDQ1LCAKLSAgICA2NiwgODIsIDY1LCA3OCwgNjcsIDcyLCA0NSwgNjUsIDIxMCwgNzYsIDc5LCA3NywgNzcsIDY1LCA2OSwgMTI4LCA3NiwgNzksIAotICAgIDc3LCAxMjgsIDc2LCA3OSwgMjA1LCA3NiwgNzksIDc2LCA3NiwgNzMsIDgwLCA3OSwgODAsIDEyOCwgNzYsIDc5LCA3NiwgCi0gICAgNzYsIDEyOCwgNzYsIDc5LCA3MSwgMjEwLCA3NiwgNzksIDcxLCA3OSwgODQsIDg5LCA4MCwgMTk3LCA3NiwgNzksIDcxLCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgMjA1LCA3NiwgNzksIDcxLCAxMjgsIDc2LCA3OSwgNjgsIDY5LCA4MywgODQsIDc5LCA3OCwgNjksIAotICAgIDEyOCwgNzYsIDc5LCA2NywgNzksIDc3LCA3OSwgODQsIDczLCA4NiwgNjksIDEyOCwgNzYsIDc5LCA2NywgMjAzLCA3NiwgCi0gICAgNzksIDY3LCA2NSwgODQsIDczLCA4NiwgNjksIDEyOCwgNzYsIDc5LCA2NywgNjUsIDg0LCA3MywgNzksIDIwNiwgNzYsIDc5LCAKLSAgICA2NSwgMTI4LCA3NiwgNzgsIDEyOCwgNzYsIDc3LCAxMjgsIDc2LCA3NiwgNzYsIDY1LCAxMjgsIDc2LCA3NCwgODUsIDY4LCAKLSAgICA3MywgNzQsIDY5LCAxMjgsIDc2LCA3NCwgNjksIDEyOCwgNzYsIDc0LCAxMjgsIDc2LCA3MywgODgsIDEyOCwgNzYsIDczLCAKLSAgICA4NywgNzgsIDEyOCwgNzYsIDczLCA4NiwgODIsIDE5NywgNzYsIDczLCA4NCwgODQsIDc2LCAxOTcsIDc2LCA3MywgODQsIAotICAgIDg0LCA2OSwgMjEwLCA3NiwgNzMsIDg0LCA4MiwgMTkzLCA3NiwgNzMsIDg0LCAxMjgsIDc2LCA3MywgODMsIDIxMywgNzYsIAotICAgIDczLCA4MiwgMTkzLCA3NiwgNzMsIDgxLCA4NSwgNzMsIDE5NiwgNzYsIDczLCA4MSwgMTI4LCA3NiwgNzMsIDgwLCA4MywgCi0gICAgODQsIDczLCA2NywgNzUsIDEyOCwgNzYsIDczLCA3OCwgNzUsIDczLCA3OCwgMTk5LCA3NiwgNzMsIDc4LCAyMDMsIDc2LCAKLSAgICA3MywgNzgsIDcxLCA4MywgNjUsIDEyOCwgNzYsIDczLCA3OCwgNjksIDgzLCAxMjgsIDc2LCA3MywgNzgsIDY5LCAyMTEsIAotICAgIDc2LCA3MywgNzgsIDY5LCA0NSwgNTcsIDEyOCwgNzYsIDczLCA3OCwgNjksIDQ1LCA1NSwgMTI4LCA3NiwgNzMsIDc4LCA2OSwgCi0gICAgNDUsIDUxLCAxMjgsIDc2LCA3MywgNzgsIDY5LCA0NSwgNDksIDEyOCwgNzYsIDczLCA3NywgNzcsIDg1LCA1MiwgMTI4LCAKLSAgICA3NiwgNzMsIDc3LCA3NywgODUsIDUwLCAxMjgsIDc2LCA3MywgNzcsIDc3LCA4NSwgMTI4LCA3NiwgNzMsIDc3LCA3NywgCi0gICAgMjEzLCA3NiwgNzMsIDc3LCA3MywgODQsIDY5LCAxOTYsIDc2LCA3MywgNzcsIDczLCA4NCwgNjUsIDg0LCA3MywgNzksIDc4LCAKLSAgICAxMjgsIDc2LCA3MywgNzcsIDczLCA4NCwgMTI4LCA3NiwgNzMsIDc3LCA2OSwgMTI4LCA3NiwgNzMsIDc2LCA4OSwgMTI4LCAKLSAgICA3NiwgNzMsIDc2LCA3MywgODQsIDcyLCAxMjgsIDc2LCA3MywgNzYsIDEyOCwgNzYsIDczLCA3MywgMTI4LCA3NiwgNzMsIAotICAgIDcxLCA3MiwgODQsIDc4LCA3MywgNzgsIDcxLCAxMjgsIDc2LCA3MywgNzEsIDcyLCA4NCwgNzIsIDc5LCA4NSwgODMsIDY5LCAKLSAgICAxMjgsIDc2LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA3NiwgNzMsIDcwLCA2OSwgMTI4LCA3NiwgNzMsIDY5LCA4OCwgMTI4LCAKLSAgICA3NiwgNzMsIDY5LCA4NCwgMTI4LCA3NiwgNzMsIDY5LCA4MCwgMTI4LCA3NiwgNzMsIDY5LCA2OSwgMTI4LCA3NiwgNzMsIAotICAgIDY5LCAxMjgsIDc2LCA3MywgNjgsIDEyOCwgNzYsIDczLCA2NiwgODIsIDY1LCAxMjgsIDc2LCA3MywgNjYsIDY5LCA4MiwgCi0gICAgODQsIDg5LCAxMjgsIDc2LCA3MywgNjUsIDY2LCA3MywgNzYsIDczLCA4NCwgMjE3LCA3NiwgNzIsIDczLCA3MywgMTI4LCAKLSAgICA3NiwgNzIsIDY1LCA4NiwgNzMsIDg5LCA2NSwgNzgsIDczLCAxMjgsIDc2LCA3MiwgNjUsIDE5OSwgNzYsIDcyLCA2NSwgNjUsIAotICAgIDEyOCwgNzYsIDcyLCAxMjgsIDc2LCA2OSwgOTAsIDcyLCAxMjgsIDc2LCA2OSwgODgsIDEyOCwgNzYsIDY5LCA4NiwgNjksIAotICAgIDIwNCwgNzYsIDY5LCA4NSwgNzcsIDEyOCwgNzYsIDY5LCA4NSwgNjUsIDY5LCA4MCwgMTI4LCA3NiwgNjksIDg1LCA2NSwgCi0gICAgNjksIDc3LCAxMjgsIDc2LCA2OSwgODQsIDg0LCA2OSwgODIsIDgzLCAxMjgsIDc2LCA2OSwgODQsIDg0LCA2OSwgODIsIAotICAgIDEyOCwgNzYsIDY5LCAyMTIsIDc2LCA2OSwgODMsIDgzLCA2OSwgMjEwLCA3NiwgNjksIDgzLCA4MywgNDUsIDg0LCA3MiwgCi0gICAgNjUsIDc4LCAxMjgsIDc2LCA2OSwgODMsIDgzLCA0NSwgODQsIDcyLCA2NSwgMjA2LCA3NiwgNjksIDgwLCAxMjgsIDc2LCAKLSAgICA2OSwgNzksIDgwLCA2NSwgODIsIDY4LCAxMjgsIDc2LCA2OSwgNzksIDEyOCwgNzYsIDY5LCA3OCwgODQsIDczLCA2NywgODUsIAotICAgIDc2LCA2NSwgMjEwLCA3NiwgNjksIDc4LCA3MywgODMsIDEyOCwgNzYsIDY5LCA3OCwgNzEsIDg0LCA3MiwgNjksIDc4LCA2OSwgCi0gICAgODIsIDEyOCwgNzYsIDY5LCA3OCwgNzEsIDg0LCAyMDAsIDc2LCA2OSwgNzgsIDcxLCA2NSwgMTI4LCA3NiwgNjksIDc4LCAKLSAgICA3MSwgMTkzLCA3NiwgNjksIDc3LCA3OSwgNzgsIDEyOCwgNzYsIDY5LCA3NywgNzksIDczLCAxMjgsIDc2LCA2OSwgNzYsIAotICAgIDY5LCA4NCwgMTI4LCA3NiwgNjksIDc2LCA2OSwgMjEyLCA3NiwgNjksIDIwMywgNzYsIDY5LCA3MywgNzcsIDc3LCA2NSwgCi0gICAgMTI4LCA3NiwgNjksIDczLCA3NywgNzcsIDE5MywgNzYsIDY5LCA3MSwgODMsIDEyOCwgNzYsIDY5LCA3MSwgNzMsIDc5LCAKLSAgICA3OCwgMTI4LCA3NiwgNjksIDcxLCA2OSwgODQsIDc5LCAyMTEsIDc2LCA2OSwgNzEsIDEyOCwgNzYsIDY5LCA3MCwgODQsIAotICAgIDg3LCA2NSwgODIsIDY4LCA4MywgMTI4LCA3NiwgNjksIDcwLCA4NCwgNDUsIDg0LCA3OSwgNDUsIDgyLCA3MywgNzEsIDcyLCAKLSAgICAyMTIsIDc2LCA2OSwgNzAsIDg0LCA0NSwgODMsIDg0LCA2OSwgMjA1LCA3NiwgNjksIDcwLCA4NCwgNDUsIDgzLCA3MywgNjgsIAotICAgIDE5NywgNzYsIDY5LCA3MCwgODQsIDQ1LCA4MywgNzIsIDY1LCA2OCwgNjksIDE5NiwgNzYsIDY5LCA3MCwgODQsIDQ1LCA4MCwgCi0gICAgNzksIDczLCA3OCwgODQsIDczLCA3OCwgMTk5LCA3NiwgNjksIDcwLCA4NCwgNDUsIDcyLCA2NSwgNzgsIDY4LCA2OSwgMTk2LCAKLSAgICA3NiwgNjksIDcwLCA4NCwgNDUsIDcyLCA2NSwgNzgsIDE5NiwgNzYsIDY5LCA3MCwgODQsIDQ1LCA3MCwgNjUsIDY3LCA3MywgCi0gICAgNzgsIDE5OSwgNzYsIDY5LCA3MCwgODQsIDEyOCwgNzYsIDY5LCA2OSwgODIsIDY1LCA2OSwgODcsIDY1LCAxMjgsIDc2LCAKLSAgICA2OSwgNjksIDc1LCAxMjgsIDc2LCA2OSwgNjksIDY5LCA2OSwgMTI4LCA3NiwgNjksIDY4LCA3MSwgNjksIDgyLCAxMjgsIAotICAgIDc2LCA2OSwgNjUsIDg0LCA3MiwgNjksIDgyLCAxMjgsIDc2LCA2OSwgNjUsIDcwLCAxMjgsIDc2LCA2OSwgNjUsIDE5OCwgCi0gICAgNzYsIDY5LCA2NSwgNjgsIDczLCA3OCwgMTk5LCA3NiwgNjksIDY1LCA2OCwgNjksIDgyLCAxMjgsIDc2LCA2OSwgNjUsIAotICAgIDE5NiwgNzYsIDY4LCA2NSwgNzgsIDEyOCwgNzYsIDY4LCA1MCwgMTI4LCA3NiwgNjcsIDIwMSwgNzYsIDY3LCAxOTcsIDc2LCAKLSAgICA2NSwgOTAsIDIxNywgNzYsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzYsIDY1LCA4OCwgMTI4LCA3NiwgNjUsIAotICAgIDg3LCAxMjgsIDc2LCA2NSwgMjE1LCA3NiwgNjUsIDg1LCA3NiwgNjUsIDEyOCwgNzYsIDY1LCA4NSwgNzUsIDY1LCAyMTgsIAotICAgIDc2LCA2NSwgODQsIDczLCA3OCwgNjUsIDg0LCAxOTcsIDc2LCA2NSwgODQsIDczLCA3NSwgMTI4LCA3NiwgNjUsIDg0LCA2OSwgCi0gICAgODIsIDY1LCAyMDQsIDc2LCA2NSwgODQsIDE5NywgNzYsIDY1LCA4MywgMjEyLCA3NiwgNjUsIDgyLCA4OSwgNzgsIDcxLCAKLSAgICA2OSwgNjUsIDIwNCwgNzYsIDY1LCA4MiwgNzEsIDY5LCAyMTAsIDc2LCA2NSwgODIsIDcxLCA2OSwgMTI4LCA3NiwgNjUsIAotICAgIDgyLCA3MSwgMTk3LCA3NiwgNjUsIDgxLCAxMjgsIDc2LCA2NSwgODAsIDY1LCA4MSwgMTI4LCA3NiwgNjUsIDgwLCAxMjgsIAotICAgIDc2LCA2NSwgMjA3LCA3NiwgNjUsIDc4LCA4NCwgNjksIDgyLCA3OCwgMTI4LCA3NiwgNjUsIDc4LCA3MSwgODUsIDY1LCA3MSwgCi0gICAgMTk3LCA3NiwgNjUsIDc4LCA2OSwgODMsIDEyOCwgNzYsIDY1LCA3NywgNjksIDY4LCA3MiwgMTI4LCA3NiwgNjUsIDc3LCAKLSAgICA2OSwgNjgsIDEyOCwgNzYsIDY1LCA3NywgNjksIDE5NiwgNzYsIDY1LCA3NywgNjksIDEyOCwgNzYsIDY1LCA3NywgMTk3LCAKLSAgICA3NiwgNjUsIDc3LCA2OCwgNjUsIDEyOCwgNzYsIDY1LCA3NywgNjgsIDEyOCwgNzYsIDY1LCA3NywgNjYsIDY4LCAxOTMsIAotICAgIDc2LCA2NSwgNzcsIDY1LCA2OCwgNzIsIDEyOCwgNzYsIDY1LCA3NiwgMTI4LCA3NiwgNjUsIDIwNCwgNzYsIDY1LCA3NSwgCi0gICAgNzUsIDcyLCA2NSwgNzgsIDcxLCA4OSwgNjUsIDc5LCAxMjgsIDc2LCA2NSwgNzQsIDY1LCA3OCwgODksIDY1LCA3NiwgNjUsIAotICAgIDc4LCAxMjgsIDc2LCA2NSwgMjAxLCA3NiwgNjUsIDcyLCA4MywgNzIsIDg1LCAxMjgsIDc2LCA2NSwgNzEsIDg1LCA4MywgCisgICAgNzgsIDc4LCA2NiwgODMsIDgwLCAxMjgsIDc4LCA3NywgMTI4LCA3OCwgNzYsIDQ4LCA1MCwgNDgsIDEyOCwgNzgsIDc2LCAKKyAgICA0OCwgNDksIDU3LCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1NiwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTUsIDY1LCAxMjgsIAorICAgIDc4LCA3NiwgNDgsIDQ5LCA1NSwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTQsIDEyOCwgNzgsIDc2LCA0OCwgNDksIDUzLCAKKyAgICAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1MiwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTEsIDEyOCwgNzgsIDc2LCA0OCwgNDksIAorICAgIDUwLCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA0OSwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNDgsIDEyOCwgNzgsIDc2LCA0OCwgCisgICAgNDgsIDU3LCAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA1NiwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTUsIDEyOCwgNzgsIDc2LCAKKyAgICA0OCwgNDgsIDU0LCAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA1MywgNjUsIDEyOCwgNzgsIDc2LCA0OCwgNDgsIDUzLCAxMjgsIAorICAgIDc4LCA3NiwgNDgsIDQ4LCA1MiwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTEsIDEyOCwgNzgsIDc2LCA0OCwgNDgsIDUwLCAKKyAgICAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA0OSwgMTI4LCA3OCwgNzYsIDEyOCwgNzgsIDc1LCA3OSwgNzcsIDEyOCwgNzgsIDc1LCAKKyAgICAyMDcsIDc4LCA3NSwgNzMsIDc4LCA2OCwgNzMsIDEyOCwgNzgsIDc1LCA2NSwgNjUsIDgyLCA2NSwgNjksIDEyOCwgNzgsIAorICAgIDc0LCA4OSwgODgsIDEyOCwgNzgsIDc0LCA4OSwgODQsIDEyOCwgNzgsIDc0LCA4OSwgODIsIDg4LCAxMjgsIDc4LCA3NCwgCisgICAgODksIDgyLCAxMjgsIDc4LCA3NCwgODksIDgwLCAxMjgsIDc4LCA3NCwgODksIDEyOCwgNzgsIDc0LCA4NSwgODgsIDEyOCwgCisgICAgNzgsIDc0LCA4NSwgODIsIDg4LCAxMjgsIDc4LCA3NCwgODUsIDgyLCAxMjgsIDc4LCA3NCwgODUsIDgxLCA2NSwgMTI4LCAKKyAgICA3OCwgNzQsIDg1LCA4MCwgMTI4LCA3OCwgNzQsIDg1LCA3OSwgODgsIDEyOCwgNzgsIDc0LCA4NSwgNzksIDEyOCwgNzgsIAorICAgIDc0LCA4NSwgNjksIDgxLCAxMjgsIDc4LCA3NCwgODUsIDY1LCA2OSwgMTI4LCA3OCwgNzQsIDg1LCAxMjgsIDc4LCA3NCwgCisgICAgNzksIDg4LCAxMjgsIDc4LCA3NCwgNzksIDg0LCAxMjgsIDc4LCA3NCwgNzksIDgwLCAxMjgsIDc4LCA3NCwgNzksIDc5LCAKKyAgICAxMjgsIDc4LCA3NCwgNzksIDEyOCwgNzgsIDc0LCA3MywgODgsIDEyOCwgNzgsIDc0LCA3MywgODQsIDEyOCwgNzgsIDc0LCAKKyAgICA3MywgODAsIDEyOCwgNzgsIDc0LCA3MywgNjksIDg4LCAxMjgsIDc4LCA3NCwgNzMsIDY5LCA4NCwgMTI4LCA3OCwgNzQsIAorICAgIDczLCA2OSwgODAsIDEyOCwgNzgsIDc0LCA3MywgNjksIDY5LCAxMjgsIDc4LCA3NCwgNzMsIDY5LCAxMjgsIDc4LCA3NCwgCisgICAgNzMsIDEyOCwgNzgsIDc0LCAyMDEsIDc4LCA3NCwgNjksIDg1LCA4OCwgMTI4LCA3OCwgNzQsIDY5LCA4NSwgODQsIDEyOCwgCisgICAgNzgsIDc0LCA2OSwgODUsIDY1LCA2OSwgNzgsIDY1LCAxMjgsIDc4LCA3NCwgNjksIDg1LCA2NSwgNjksIDc3LCAxMjgsIDc4LCAKKyAgICA3NCwgNjksIDY5LCA2OSwgNjksIDEyOCwgNzgsIDc0LCA2OSwgNjksIDEyOCwgNzgsIDc0LCA2OSwgMTk3LCA3OCwgNzQsIAorICAgIDY5LCAxMjgsIDc4LCA3NCwgNjUsIDgxLCAxMjgsIDc4LCA3NCwgNjUsIDgwLCAxMjgsIDc4LCA3NCwgNjUsIDY5LCA3NywgCisgICAgNzYsIDczLCAxMjgsIDc4LCA3NCwgNjUsIDY5LCA3NywgMTI4LCA3OCwgNzQsIDY1LCA2NSwgMTI4LCA3OCwgNzMsIDg4LCAKKyAgICAxMjgsIDc4LCA3MywgODQsIDgyLCA2OSwgMTI4LCA3OCwgNzMsIDgzLCA2NSwgNzEsIDEyOCwgNzgsIDczLCA4MiwgODUsIAorICAgIDcxLCA4NSwgMTI4LCA3OCwgNzMsIDgwLCAxMjgsIDc4LCA3MywgNzgsIDg0LCA3MiwgMTI4LCA3OCwgNzMsIDc4LCA2OSwgCisgICAgODQsIDg5LCAxMjgsIDc4LCA3MywgNzgsIDY5LCA4NCwgMjE3LCA3OCwgNzMsIDc4LCA2OSwgODQsIDY5LCA2OSwgNzgsIAorICAgIDEyOCwgNzgsIDczLCA3OCwgNjksIDg0LCA2OSwgNjksIDIwNiwgNzgsIDczLCA3OCwgNjksIDQ1LCA4NCwgNzIsIDczLCA4MiwgCisgICAgODQsIDg5LCAxMjgsIDc4LCA3MywgNzgsIDE5NywgNzgsIDczLCA3OCwgNjgsIDY1LCA1MCwgMTI4LCA3OCwgNzMsIDc4LCAKKyAgICA2OCwgNjUsIDE3OCwgNzgsIDczLCA3NywgMTI4LCA3OCwgNzMsIDIwNSwgNzgsIDczLCA3NSwgNzIsIDY1LCA3MiwgNzMsIAorICAgIDg0LCAxMjgsIDc4LCA3MywgNzUsIDY1LCA3MiwgNzMsIDg0LCAxMjgsIDc4LCA3MywgNzUsIDY1LCAxMjgsIDc4LCA3MywgCisgICAgNzIsIDgzLCA3MiwgODYsIDY1LCA4MywgNjUsIDEyOCwgNzgsIDczLCA3MSwgNzMsIDY4LCA2NSwgNzcsIDczLCA3OCwgMTI4LCAKKyAgICA3OCwgNzMsIDcxLCA3MywgNjgsIDY1LCA2OSwgODMsIDcyLCAxMjgsIDc4LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA3OCwgNzMsIAorICAgIDcxLCA3MiwgMjEyLCA3OCwgNzMsIDcxLCA3MSwgNjUsIDcyLCA3MywgODQsIDY1LCAxMjgsIDc4LCA3MywgNjksIDg4LCAKKyAgICAxMjgsIDc4LCA3MywgNjksIDg1LCA3OCwgNDUsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgNzgsIDczLCA2OSwgODUsIAorICAgIDc4LCA0NSwgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgNzIsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgODMsIDczLCAKKyAgICA3OSwgODMsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIDc4LCA3MywgNjksIAorICAgIDg1LCA3OCwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDQ1LCA4MCwgNjUsIDc4LCAKKyAgICA4MywgNzMsIDc5LCA4MywgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIAorICAgIDc4LCA3MywgNjksIDg1LCA3OCwgNDUsIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDQ1LCAKKyAgICA2NywgNzMsIDY5LCA4NSwgNjcsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgCisgICAgNzIsIDEyOCwgNzgsIDczLCA2OSwgODUsIDIwNiwgNzgsIDczLCA2OSwgODAsIDEyOCwgNzgsIDczLCA2OSwgMTI4LCA3OCwgCisgICAgNzMsIDY2LCAxMjgsIDc4LCA3MywgNjUsIDEyOCwgNzgsIDczLCA1MCwgMTI4LCA3OCwgNzIsIDg1LCA2OSwgMTI4LCA3OCwgCisgICAgNzIsIDc0LCA2NSwgMTI4LCA3OCwgNzIsIDEyOCwgNzgsIDcxLCA4OSwgNjksIDEyOCwgNzgsIDcxLCA4NiwgNjksIDEyOCwgCisgICAgNzgsIDcxLCA4NSwgODUsIDEyOCwgNzgsIDcxLCA4NSwgNzksIDg4LCAxMjgsIDc4LCA3MSwgODUsIDc5LCA4NCwgMTI4LCAKKyAgICA3OCwgNzEsIDg1LCA3OSwgMTI4LCA3OCwgNzEsIDg1LCA2NSwgNjksIDg0LCAxMjgsIDc4LCA3MSwgODUsIDY1LCA2OSwgCisgICAgMTI4LCA3OCwgNzEsIDc5LCA4OCwgMTI4LCA3OCwgNzEsIDc5LCA4NSwgMTI4LCA3OCwgNzEsIDc5LCAyMTMsIDc4LCA3MSwgCisgICAgNzksIDg0LCAxMjgsIDc4LCA3MSwgNzksIDgxLCAxMjgsIDc4LCA3MSwgNzksIDgwLCAxMjgsIDc4LCA3MSwgNzksIDc4LCAKKyAgICAxMjgsIDc4LCA3MSwgNzksIDc3LCAxMjgsIDc4LCA3MSwgNzksIDY5LCA3MiwgMTI4LCA3OCwgNzEsIDc5LCA2OSwgMjAwLCAKKyAgICA3OCwgNzEsIDIwNywgNzgsIDcxLCA3NSwgODksIDY5LCA2OSwgMTI4LCA3OCwgNzEsIDc1LCA4NywgNjUsIDY5LCA3OCwgCisgICAgMTI4LCA3OCwgNzEsIDc1LCA4NSwgODAsIDEyOCwgNzgsIDcxLCA3NSwgODUsIDc4LCAxMjgsIDc4LCA3MSwgNzUsIDg1LCAKKyAgICA3NywgMTI4LCA3OCwgNzEsIDc1LCA4NSwgNjksIDc4LCA5MCwgNjksIDg1LCA3NywgMTI4LCA3OCwgNzEsIDc1LCA4NSwgCisgICAgMTk3LCA3OCwgNzEsIDc1LCA3MywgNzgsIDY4LCAyMDEsIDc4LCA3MSwgNzUsIDczLCA2OSwgNjksIDEyOCwgNzgsIDcxLCAKKyAgICA3NSwgNjksIDg1LCA4OCwgMTI4LCA3OCwgNzEsIDc1LCA2OSwgODUsIDgyLCA3MywgMTI4LCA3OCwgNzEsIDc1LCA2OSwgODUsIAorICAgIDY1LCA2OSwgODEsIDEyOCwgNzgsIDcxLCA3NSwgNjksIDg1LCA2NSwgNjksIDc3LCAxMjgsIDc4LCA3MSwgNzUsIDY1LCA4MSwgCisgICAgMTI4LCA3OCwgNzEsIDc1LCA2NSwgODAsIDEyOCwgNzgsIDcxLCA3NSwgNjUsIDY1LCA3NywgNzMsIDEyOCwgNzgsIDcxLCAKKyAgICA3NSwgNjUsIDEyOCwgNzgsIDcxLCA3MywgNjksIDg4LCAxMjgsIDc4LCA3MSwgNzMsIDY5LCA4MCwgMTI4LCA3OCwgNzEsIAorICAgIDczLCA2OSwgMTI4LCA3OCwgNzEsIDcyLCA2NSwgMTI4LCA3OCwgNzEsIDcxLCA4NywgNjUsIDY5LCA3OCwgMTI4LCA3OCwgCisgICAgNzEsIDcxLCA4NSwgODIsIDY1LCA2OSwgMTI4LCA3OCwgNzEsIDcxLCA4NSwgODAsIDEyOCwgNzgsIDcxLCA3MSwgODUsIDc5LCAKKyAgICA4MSwgMTI4LCA3OCwgNzEsIDcxLCA4NSwgNzksIDIwOSwgNzgsIDcxLCA3MSwgODUsIDc5LCA3OCwgMTI4LCA3OCwgNzEsIAorICAgIDcxLCA4NSwgNzksIDc3LCAxMjgsIDc4LCA3MSwgNzEsIDg1LCA3NywgMTI4LCA3OCwgNzEsIDcxLCA4NSwgNjksIDY5LCA4NCwgCisgICAgMTI4LCA3OCwgNzEsIDcxLCA4NSwgNjUsIDY5LCA4MywgNzIsIDY1LCAxOTcsIDc4LCA3MSwgNzEsIDg1LCA2NSwgNjksIAorICAgIDIwNiwgNzgsIDcxLCA3MSwgODUsIDEyOCwgNzgsIDcxLCA3MSwgNzksIDc5LCAxMjgsIDc4LCA3MSwgNzEsIDc5LCAxMjgsIAorICAgIDc4LCA3MSwgNzEsIDczLCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA4NSwgODgsIDEyOCwgNzgsIDcxLCA3MSwgNjksIDg1LCA2NSwgCisgICAgNjksIDg0LCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA4NSwgNjUsIDY5LCAxMjgsIDc4LCA3MSwgNzEsIDY5LCAyMTMsIDc4LCAKKyAgICA3MSwgNzEsIDY5LCA3OCwgMTI4LCA3OCwgNzEsIDcxLCA2OSwgNjksIDg0LCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA2OSwgNjksIAorICAgIDY5LCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA2OSwgMTI4LCA3OCwgNzEsIDcxLCA2OSwgMTI4LCA3OCwgNzEsIDcxLCA2NSwgCisgICAgODAsIDEyOCwgNzgsIDcxLCA3MSwgNjUsIDY1LCA3NywgNjUsIDY5LCAxMjgsIDc4LCA3MSwgNzEsIDY1LCA2NSwgNzcsIAorICAgIDEyOCwgNzgsIDcxLCA3MSwgMTI4LCA3OCwgNzEsIDY5LCA4OCwgMTI4LCA3OCwgNzEsIDY5LCA4NSwgODIsIDY5LCA4NSwgCisgICAgODQsIDEyOCwgNzgsIDcxLCA2OSwgODAsIDEyOCwgNzgsIDcxLCA2OSwgNzgsIDEyOCwgNzgsIDcxLCA2OSwgNjksIDEyOCwgCisgICAgNzgsIDcxLCA2OSwgNjUsIDY4LCA2NSwgNzYsIDEyOCwgNzgsIDcxLCA2NSwgODgsIDEyOCwgNzgsIDcxLCA2NSwgODUsIAorICAgIDEyOCwgNzgsIDcxLCA2NSwgODQsIDEyOCwgNzgsIDcxLCA2NSwgMjExLCA3OCwgNzEsIDY1LCA4MSwgMTI4LCA3OCwgNzEsIAorICAgIDY1LCA4MCwgMTI4LCA3OCwgNzEsIDY1LCA3OCwgNzEsIDg1LCAxMjgsIDc4LCA3MSwgNjUsIDc4LCAxMjgsIDc4LCA3MSwgCisgICAgNjUsIDczLCAxMjgsIDc4LCA3MSwgNjUsIDcyLCAxMjgsIDc4LCA3MSwgNjUsIDY1LCA3MywgMTI4LCA3OCwgNzEsIDE5MywgCisgICAgNzgsIDcwLCAxMjgsIDc4LCA2OSwgODgsIDIxMiwgNzgsIDY5LCA4OCwgMTI4LCA3OCwgNjksIDg3LCA4MywgODAsIDY1LCAKKyAgICA4MCwgNjksIDgyLCAxMjgsIDc4LCA2OSwgODcsIDc2LCA3MywgNzgsIDY5LCAxMjgsIDc4LCA2OSwgODcsIDEyOCwgNzgsIAorICAgIDY5LCA4NSwgODQsIDgyLCA2NSwgMjA0LCA3OCwgNjksIDg1LCA4NCwgNjksIDgyLCAxMjgsIDc4LCA2OSwgODQsIDEyOCwgCisgICAgNzgsIDY5LCAyMTIsIDc4LCA2OSwgODMsIDg0LCA2OSwgMTk2LCA3OCwgNjksIDgxLCA4NSwgNjgsIDY1LCA2NSwgMTI4LCAKKyAgICA3OCwgNjksIDgwLCA4NCwgODUsIDc4LCA2OSwgMTI4LCA3OCwgNjksIDgwLCAxMjgsIDc4LCA2OSwgNzksIDEyOCwgNzgsIAorICAgIDY5LCAyMDcsIDc4LCA2OSwgNzgsIDY1LCA3OCwgNzksIDEyOCwgNzgsIDY5LCA3OCwgMTI4LCA3OCwgNjksIDc2LCAxMjgsIAorICAgIDc4LCA2OSwgNzMsIDg0LCA3MiwgNjksIDIxMCwgNzgsIDY5LCA3MSwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzgsIDY5LCA3MSwgCisgICAgNjUsIDg0LCA2OSwgMTk2LCA3OCwgNjksIDY3LCA3NSwgODQsIDczLCA2OSwgMTI4LCA3OCwgNjksIDY2LCA2OSwgNzgsIDgzLCAKKyAgICA4NCwgNzMsIDc3LCA3NywgNjksIDEyOCwgNzgsIDY4LCA4NSwgODgsIDEyOCwgNzgsIDY4LCA4NSwgODQsIDEyOCwgNzgsIAorICAgIDY4LCA4NSwgODIsIDg4LCAxMjgsIDc4LCA2OCwgODUsIDgyLCAxMjgsIDc4LCA2OCwgODUsIDgwLCAxMjgsIDc4LCA2OCwgCisgICAgODUsIDc4LCAxMjgsIDc4LCA2OCwgMjEzLCA3OCwgNjgsIDc5LCA4OCwgMTI4LCA3OCwgNjgsIDc5LCA4NCwgMTI4LCA3OCwgCisgICAgNjgsIDc5LCA4MCwgMTI4LCA3OCwgNjgsIDc5LCA3OSwgMTI4LCA3OCwgNjgsIDc5LCA3OCwgMTI4LCA3OCwgNjgsIDc5LCAKKyAgICA3NywgNjYsIDg1LCAxMjgsIDc4LCA2OCwgNzksIDc2LCAxOTcsIDc4LCA2OCwgNzMsIDg4LCAxMjgsIDc4LCA2OCwgNzMsIAorICAgIDg0LCAxMjgsIDc4LCA2OCwgNzMsIDgxLCAxMjgsIDc4LCA2OCwgNzMsIDgwLCAxMjgsIDc4LCA2OCwgNzMsIDY5LCA4OCwgCisgICAgMTI4LCA3OCwgNjgsIDczLCA2OSwgMTI4LCA3OCwgNjgsIDczLCA2OCwgNjUsIDEyOCwgNzgsIDY4LCA3MywgNjUsIDgxLCAKKyAgICAxMjgsIDc4LCA2OCwgNjksIDg4LCAxMjgsIDc4LCA2OCwgNjksIDg1LCA4OCwgMTI4LCA3OCwgNjgsIDY5LCA4NSwgODQsIAorICAgIDEyOCwgNzgsIDY4LCA2OSwgODUsIDY1LCA2OSwgODIsIDY5LCA2OSwgMTI4LCA3OCwgNjgsIDY5LCA4MCwgMTI4LCA3OCwgCisgICAgNjgsIDY5LCA2OSwgMTI4LCA3OCwgNjgsIDY5LCAxMjgsIDc4LCA2OCwgNjUsIDg4LCAxMjgsIDc4LCA2OCwgNjUsIDg0LCAKKyAgICAxMjgsIDc4LCA2OCwgNjUsIDgwLCAxMjgsIDc4LCA2OCwgNjUsIDc3LCAxMjgsIDc4LCA2OCwgNjUsIDY1LCA3OCwgNzEsIAorICAgIDcxLCA2OSwgODUsIDY1LCA2OSwgODQsIDEyOCwgNzgsIDY4LCA2NSwgNjUsIDEyOCwgNzgsIDY4LCA2NSwgMTkzLCA3OCwgCisgICAgNjYsIDg5LCA4OCwgMTI4LCA3OCwgNjYsIDg5LCA4NCwgMTI4LCA3OCwgNjYsIDg5LCA4MiwgODgsIDEyOCwgNzgsIDY2LCAKKyAgICA4OSwgODIsIDEyOCwgNzgsIDY2LCA4OSwgODAsIDEyOCwgNzgsIDY2LCA4OSwgMTI4LCA3OCwgNjYsIDg1LCA4OCwgMTI4LCAKKyAgICA3OCwgNjYsIDg1LCA4NCwgMTI4LCA3OCwgNjYsIDg1LCA4MiwgODgsIDEyOCwgNzgsIDY2LCA4NSwgODIsIDEyOCwgNzgsIAorICAgIDY2LCA4NSwgODAsIDEyOCwgNzgsIDY2LCA4NSwgMTI4LCA3OCwgNjYsIDc5LCA4OCwgMTI4LCA3OCwgNjYsIDc5LCA4NCwgCisgICAgMTI4LCA3OCwgNjYsIDc5LCA4MCwgMTI4LCA3OCwgNjYsIDc5LCAxMjgsIDc4LCA2NiwgNzMsIDg4LCAxMjgsIDc4LCA2NiwgCisgICAgNzMsIDg0LCAxMjgsIDc4LCA2NiwgNzMsIDgwLCAxMjgsIDc4LCA2NiwgNzMsIDY5LCA4OCwgMTI4LCA3OCwgNjYsIDczLCAKKyAgICA2OSwgODAsIDEyOCwgNzgsIDY2LCA3MywgNjksIDEyOCwgNzgsIDY2LCA3MywgMTI4LCA3OCwgNjYsIDcyLCAxMjgsIDc4LCAKKyAgICA2NiwgNjUsIDg4LCAxMjgsIDc4LCA2NiwgNjUsIDg0LCAxMjgsIDc4LCA2NiwgNjUsIDgwLCAxMjgsIDc4LCA2NiwgNjUsIAorICAgIDEyOCwgNzgsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzgsIDY1LCA4OSwgMTI4LCA3OCwgNjUsIDg4LCA3MywgCisgICAgNjUsIDIwNiwgNzgsIDY1LCA4OCwgMTI4LCA3OCwgNjUsIDg1LCA4NCwgNzIsIDgzLCAxMjgsIDc4LCA2NSwgODUsIDY4LCAKKyAgICA3MywgMjE4LCA3OCwgNjUsIDg0LCA4NSwgODIsIDY1LCAyMDQsIDc4LCA2NSwgODQsIDczLCA3OSwgNzgsIDY1LCAyMDQsIAorICAgIDc4LCA2NSwgODMsIDc1LCA2NSwgODAsIDIwMSwgNzgsIDY1LCA4MywgNzIsIDczLCAxMjgsIDc4LCA2NSwgODMsIDY1LCA3NiwgCisgICAgNzMsIDkwLCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNzgsIDY1LCA4MywgNjUsIDc2LCA3MywgOTAsIDY1LCA4NCwgNzMsIAorICAgIDc5LCAyMDYsIDc4LCA2NSwgODIsIDgyLCA3OSwgMjE1LCA3OCwgNjUsIDgyLCAxMjgsIDc4LCA2NSwgODEsIDEyOCwgNzgsIAorICAgIDY1LCA3OSwgMjExLCA3OCwgNjUsIDc4LCA4MywgNjUsIDc4LCA2NSwgODEsIDEyOCwgNzgsIDY1LCA3OCwgNzEsIDc3LCA3OSwgCisgICAgNzgsIDg0LCA3MiwgNzksIDEyOCwgNzgsIDY1LCA3OCwgNjgsIDEyOCwgNzgsIDY1LCA3OCwgNjUsIDEyOCwgNzgsIDY1LCAKKyAgICA3NywgNjksIDEyOCwgNzgsIDY1LCA3NywgMTk3LCA3OCwgNjUsIDc3LCA1MCwgMTI4LCA3OCwgNjUsIDc3LCAxMjgsIDc4LCAKKyAgICA2NSwgNzUsIDEyOCwgNzgsIDY1LCA3MywgODIsIDE5MywgNzgsIDY1LCA3MywgMjA0LCA3OCwgNjUsIDcxLCA4MiwgMjAxLCAKKyAgICA3OCwgNjUsIDcxLCA2NSwgODIsIDEyOCwgNzgsIDY1LCA3MSwgNjUsIDEyOCwgNzgsIDY1LCA3MSwgMTkzLCA3OCwgNjUsIAorICAgIDcxLCAxMjgsIDc4LCA2NSwgMTk5LCA3OCwgNjUsIDY5LCAxMjgsIDc4LCA2NSwgNjYsIDc2LCA2NSwgMTI4LCA3OCwgNjUsIAorICAgIDY1LCA4MywgNzMsIDc1LCA4OSwgNjUsIDg5LCA2NSwgMTI4LCA3OCwgNjUsIDY1LCA3NSwgODMsIDczLCA3NSwgODksIDY1LCAKKyAgICA4OSwgNjUsIDEyOCwgNzgsIDY1LCA2NSwgNzMsIDEyOCwgNzgsIDY1LCAxOTMsIDc4LCA2NSwgNTAsIDEyOCwgNzgsIDY1LCAKKyAgICA0NSwgNTAsIDEyOCwgNzgsIDQ4LCA1MiwgNTAsIDEyOCwgNzgsIDQ4LCA1MiwgNDksIDEyOCwgNzgsIDQ4LCA1MiwgNDgsIAorICAgIDEyOCwgNzgsIDQ4LCA1MSwgNTcsIDEyOCwgNzgsIDQ4LCA1MSwgNTYsIDEyOCwgNzgsIDQ4LCA1MSwgNTUsIDY1LCAxMjgsIAorICAgIDc4LCA0OCwgNTEsIDU1LCAxMjgsIDc4LCA0OCwgNTEsIDU0LCAxMjgsIDc4LCA0OCwgNTEsIDUzLCA2NSwgMTI4LCA3OCwgCisgICAgNDgsIDUxLCA1MywgMTI4LCA3OCwgNDgsIDUxLCA1MiwgNjUsIDEyOCwgNzgsIDQ4LCA1MSwgNTIsIDEyOCwgNzgsIDQ4LCAKKyAgICA1MSwgNTEsIDY1LCAxMjgsIDc4LCA0OCwgNTEsIDUxLCAxMjgsIDc4LCA0OCwgNTEsIDUwLCAxMjgsIDc4LCA0OCwgNTEsIAorICAgIDQ5LCAxMjgsIDc4LCA0OCwgNTEsIDQ4LCAxMjgsIDc4LCA0OCwgNTAsIDU3LCAxMjgsIDc4LCA0OCwgNTAsIDU2LCAxMjgsIAorICAgIDc4LCA0OCwgNTAsIDU1LCAxMjgsIDc4LCA0OCwgNTAsIDU0LCAxMjgsIDc4LCA0OCwgNTAsIDUzLCA2NSwgMTI4LCA3OCwgCisgICAgNDgsIDUwLCA1MywgMTI4LCA3OCwgNDgsIDUwLCA1MiwgMTI4LCA3OCwgNDgsIDUwLCA1MSwgMTI4LCA3OCwgNDgsIDUwLCAKKyAgICA1MCwgMTI4LCA3OCwgNDgsIDUwLCA0OSwgMTI4LCA3OCwgNDgsIDUwLCA0OCwgMTI4LCA3OCwgNDgsIDQ5LCA1NywgMTI4LCAKKyAgICA3OCwgNDgsIDQ5LCA1NiwgNjYsIDEyOCwgNzgsIDQ4LCA0OSwgNTYsIDY1LCAxMjgsIDc4LCA0OCwgNDksIDU2LCAxMjgsIAorICAgIDc4LCA0OCwgNDksIDU1LCAxMjgsIDc4LCA0OCwgNDksIDU0LCAxMjgsIDc4LCA0OCwgNDksIDUzLCAxMjgsIDc4LCA0OCwgCisgICAgNDksIDUyLCAxMjgsIDc4LCA0OCwgNDksIDUxLCAxMjgsIDc4LCA0OCwgNDksIDUwLCAxMjgsIDc4LCA0OCwgNDksIDQ5LCAKKyAgICAxMjgsIDc4LCA0OCwgNDksIDQ4LCAxMjgsIDc4LCA0OCwgNDgsIDU3LCAxMjgsIDc4LCA0OCwgNDgsIDU2LCAxMjgsIDc4LCAKKyAgICA0OCwgNDgsIDU1LCAxMjgsIDc4LCA0OCwgNDgsIDU0LCAxMjgsIDc4LCA0OCwgNDgsIDUzLCAxMjgsIDc4LCA0OCwgNDgsIAorICAgIDUyLCAxMjgsIDc4LCA0OCwgNDgsIDUxLCAxMjgsIDc4LCA0OCwgNDgsIDUwLCAxMjgsIDc4LCA0OCwgNDgsIDQ5LCAxMjgsIAorICAgIDc4LCA0NSwgNjcsIDgyLCA2OSwgMTk3LCA3OCwgNDUsIDY1LCA4MiwgMjE3LCA3NywgODksIDg4LCAxMjgsIDc3LCA4OSwgCisgICAgODQsIDEyOCwgNzcsIDg5LCA4MywgNzYsIDczLCA4NCwgNjksIDEyOCwgNzcsIDg5LCA4MCwgMTI4LCA3NywgODksIDY1LCAKKyAgICAxMjgsIDc3LCA4OSwgMTkzLCA3NywgODksIDEyOCwgNzcsIDIxNywgNzcsIDg3LCA3OSwgNzksIDEyOCwgNzcsIDg3LCA3OSwgCisgICAgMTI4LCA3NywgODcsIDczLCA3MywgMTI4LCA3NywgODcsIDczLCAxMjgsIDc3LCA4NywgNjksIDY5LCAxMjgsIDc3LCA4NywgCisgICAgNjksIDEyOCwgNzcsIDg3LCA2NSwgNjUsIDEyOCwgNzcsIDg3LCA2NSwgMTI4LCA3NywgODcsIDEyOCwgNzcsIDIxNSwgNzcsIAorICAgIDg2LCA4MywgMTI4LCA3NywgODYsIDc5LCA4MCwgMTI4LCA3NywgODYsIDczLCAxMjgsIDc3LCA4NiwgNjksIDg1LCA2NSwgCisgICAgNjksIDc4LCA3MSwgNjUsIDc3LCAxMjgsIDc3LCA4NiwgMTI4LCA3NywgMjE0LCA3NywgODUsIDg4LCAxMjgsIDc3LCA4NSwgCisgICAgODUsIDgzLCA3MywgNzUsIDY1LCA4NCwgNzksIDY1LCA3OCwgMTI4LCA3NywgODUsIDg1LCA4MiwgNjgsIDcyLCA2NSwgNzQsIAorICAgIDE5MywgNzcsIDg1LCA4NSwgMTI4LCA3NywgODUsIDg0LCAxMjgsIDc3LCA4NSwgODMsIDczLCA2NywgMTI4LCA3NywgODUsIAorICAgIDgzLCA3MywgMTk1LCA3NywgODUsIDgzLCA3MiwgODIsIDc5LCA3OSwgNzcsIDEyOCwgNzcsIDg1LCA4MywgNzIsIDUxLCAKKyAgICAxMjgsIDc3LCA4NSwgODMsIDcyLCAxNzksIDc3LCA4NSwgODMsIDcyLCAxMjgsIDc3LCA4NSwgODMsIDIwMCwgNzcsIDg1LCAKKyAgICA4MiwgODgsIDEyOCwgNzcsIDg1LCA4MiwgNzEsIDg1LCA1MCwgMTI4LCA3NywgODUsIDgyLCA2OSwgMTI4LCA3NywgODUsIAorICAgIDgyLCA2OCwgNjUsIDEyOCwgNzcsIDg1LCA4MiwgNjgsIDE5MywgNzcsIDg1LCA4MiwgMTI4LCA3NywgODUsIDgxLCA2OCwgCisgICAgNjUsIDc3LCAxMjgsIDc3LCA4NSwgODAsIDEyOCwgNzcsIDg1LCA3OSwgODgsIDEyOCwgNzcsIDg1LCA3OSwgODQsIDEyOCwgCisgICAgNzcsIDg1LCA3OSwgODAsIDEyOCwgNzcsIDg1LCA3OSwgNzcsIDY1LCA2OSwgMTI4LCA3NywgODUsIDc5LCAxMjgsIDc3LCAKKyAgICA4NSwgNzgsIDgzLCA4NSwgNjYsIDEyOCwgNzcsIDg1LCA3OCwgNjUsIDcyLCAxMjgsIDc3LCA4NSwgNzYsIDg0LCA3MywgODMsIAorICAgIDY5LCA4NCwgMTI4LCA3NywgODUsIDc2LCA4NCwgNzMsIDgzLCA2OSwgMjEyLCA3NywgODUsIDc2LCA4NCwgNzMsIDgwLCA3NiwgCisgICAgNzMsIDY3LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNzcsIDg1LCA3NiwgODQsIDczLCA4MCwgNzYsIDczLCA2NywgNjUsIAorICAgIDg0LCA3MywgNzksIDIwNiwgNzcsIDg1LCA3NiwgODQsIDczLCA4MCwgNzYsIDE5NywgNzcsIDg1LCA3NiwgODQsIDczLCA3OSwgCisgICAgNjcsIDg1LCA3NiwgNjUsIDIxMCwgNzcsIDg1LCA3NiwgODQsIDczLCA3NywgNjUsIDgwLCAxMjgsIDc3LCA4NSwgNzYsIDg0LCAKKyAgICAyMDEsIDc3LCA4NSwgNzUsIDgwLCA3MiwgODIsIDY5LCA3OCwgNzEsIDEyOCwgNzcsIDg1LCA3MywgNzgsIDEyOCwgNzcsIAorICAgIDg1LCA3MSwgODMsIDEyOCwgNzcsIDg1LCA3MSwgMTI4LCA3NywgODUsIDE5OSwgNzcsIDg1LCA2OSwgMTI4LCA3NywgODUsIAorICAgIDY3LCA3MiwgMTI4LCA3NywgODUsIDY3LCAyMDAsIDc3LCA4NSwgNjcsIDY1LCA2NSwgNjgsIDEyOCwgNzcsIDg1LCA2NSwgCisgICAgNzgsIDEyOCwgNzcsIDg1LCA2NSwgNjksIDEyOCwgNzcsIDg1LCA0NSwgNzEsIDY1LCA2NSwgNzIsIDc2LCA2NSwgMTkzLCAKKyAgICA3NywgMjEzLCA3NywgODMsIDEyOCwgNzcsIDgwLCA2NSwgMTI4LCA3NywgNzksIDg5LCA2NSwgNzMsIDEyOCwgNzcsIDc5LCAKKyAgICA4OCwgMTI4LCA3NywgNzksIDg2LCA3MywgMTk3LCA3NywgNzksIDg2LCA2OSwgMTk2LCA3NywgNzksIDg1LCA4NCwgNzIsIAorICAgIDEyOCwgNzcsIDc5LCA4NSwgODQsIDIwMCwgNzcsIDc5LCA4NSwgODMsIDY5LCAxMjgsIDc3LCA3OSwgODUsIDgzLCAxOTcsIAorICAgIDc3LCA3OSwgODUsIDc4LCA4NCwgNjUsIDczLCA3OCwgODMsIDEyOCwgNzcsIDc5LCA4NSwgNzgsIDg0LCA2NSwgNzMsIDc4LCAKKyAgICAxMjgsIDc3LCA3OSwgODUsIDc4LCA4NCwgNjUsIDczLCAyMDYsIDc3LCA3OSwgODUsIDc4LCAyMTIsIDc3LCA3OSwgODUsIAorICAgIDc4LCA2OCwgMTI4LCA3NywgNzksIDg1LCA3OCwgMTk2LCA3NywgNzksIDg0LCA3MiwgNjksIDgyLCAxMjgsIDc3LCA3OSwgCisgICAgODQsIDEyOCwgNzcsIDc5LCA4MiwgODQsIDg1LCA4NSwgNzcsIDEyOCwgNzcsIDc5LCA4MiwgODQsIDY1LCA4MiwgMTI4LCAKKyAgICA3NywgNzksIDgyLCA4MCwgNzIsIDc5LCA3NiwgNzksIDcxLCA3MywgNjcsIDY1LCAyMDQsIDc3LCA3OSwgODIsIDc4LCA3MywgCisgICAgNzgsIDcxLCAxMjgsIDc3LCA3OSwgODAsIDEyOCwgNzcsIDc5LCA3OSwgODMsIDY5LCA0NSwgNjcsIDgyLCA2OSwgMTk3LCAKKyAgICA3NywgNzksIDc5LCA3OCwgMTI4LCA3NywgNzksIDc5LCAyMDYsIDc3LCA3OSwgNzksIDc3LCA4MCwgODUsIDgxLCAxMjgsIAorICAgIDc3LCA3OSwgNzksIDc3LCA2OSwgODUsIDg0LCAxMjgsIDc3LCA3OSwgNzksIDEyOCwgNzcsIDc5LCA3OCwgODQsIDczLCA2OSwgCisgICAgNjksIDc4LCAxMjgsIDc3LCA3OSwgNzgsIDg0LCA3MiwgMTI4LCA3NywgNzksIDc4LCA4NCwgMjAwLCA3NywgNzksIDc4LCAKKyAgICA4MywgODQsIDY5LCA4MiwgMTI4LCA3NywgNzksIDc4LCA3OSwgODMsIDg0LCA2NSwgNjYsIDc2LCAxOTcsIDc3LCA3OSwgNzgsIAorICAgIDc5LCA4MywgODAsIDY1LCA2NywgMTk3LCA3NywgNzksIDc4LCA3OSwgODIsIDY1LCA3MywgNzYsIDEyOCwgNzcsIDc5LCA3OCwgCisgICAgNzksIDcxLCA4MiwgNjUsIDgwLCAyMDAsIDc3LCA3OSwgNzgsIDc5LCA3MSwgODIsIDY1LCA3NywgNzcsIDc5LCAyMTEsIDc3LCAKKyAgICA3OSwgNzgsIDc5LCA3MSwgODIsIDY1LCAyMDUsIDc3LCA3OSwgNzgsIDc5LCA3MCwgNzksIDc4LCA3MywgNjUsIDgzLCAxMjgsIAorICAgIDc3LCA3OSwgNzgsIDc5LCA2NywgODUsIDc2LCA2NSwgMjEwLCA3NywgNzksIDc4LCA3NSwgNjksIDg5LCAxMjgsIDc3LCA3OSwgCisgICAgNzgsIDc1LCA2OSwgMjE3LCA3NywgNzksIDc4LCA3MywgMTI4LCA3NywgNzksIDc4LCA3MSwgNzUsIDY5LCA4NSwgNjUsIDY5LCAKKyAgICA4MSwgMTI4LCA3NywgNzksIDc4LCA2OSwgMjE3LCA3NywgNzksIDc4LCAxMjgsIDc3LCA3OSwgMjA2LCA3NywgNzksIDc2LCAKKyAgICAxMjgsIDc3LCA3OSwgNzIsIDY1LCA3NywgNzcsIDY1LCAxOTYsIDc3LCA3OSwgNjgsIDg1LCA3NiwgMjA3LCA3NywgNzksIAorICAgIDY4LCA2OSwgODMsIDg0LCA4OSwgMTI4LCA3NywgNzksIDY4LCA2OSwgNzYsIDgzLCAxMjgsIDc3LCA3OSwgNjgsIDY5LCA3NiwgCisgICAgMTI4LCA3NywgNzksIDY4LCA2OSwgMTI4LCA3NywgNzksIDY2LCA3MywgNzYsIDE5NywgNzcsIDc5LCA2NSwgMTI4LCA3NywgCisgICAgMjA3LCA3NywgNzgsIDg5LCA2NSwgMjA1LCA3NywgNzgsIDY1LCA4MywgMTI4LCA3NywgNzcsIDgzLCA4MCwgMTI4LCA3NywgCisgICAgNzcsIDEyOCwgNzcsIDIwNSwgNzcsIDc2LCA2NSwgMTI4LCA3NywgNzYsIDEyOCwgNzcsIDc1LCA4MCwgNjUsIDgyLCA2NSwgCisgICAgMjA5LCA3NywgNzMsIDg4LCAxMjgsIDc3LCA3MywgODQsIDEyOCwgNzcsIDczLCA4MywgODIsIDY1LCAxMjgsIDc3LCA3MywgCisgICAgODIsIDczLCA2NiwgNjUsIDY1LCA4MiwgODUsIDEyOCwgNzcsIDczLCA4MiwgNzMsIDEyOCwgNzcsIDczLCA4MiwgNjksIDY4LCAKKyAgICAxMjgsIDc3LCA3MywgODAsIDEyOCwgNzcsIDczLCA3OCwgODksIDEyOCwgNzcsIDczLCA3OCwgODUsIDgzLCA0NSwgNzksIAorICAgIDgyLCA0NSwgODAsIDc2LCA4NSwgMjExLCA3NywgNzMsIDc4LCA4NSwgODMsIDEyOCwgNzcsIDczLCA3OCwgNzMsIDgzLCA4NCwgCisgICAgNjksIDgyLCAxMjgsIDc3LCA3MywgNzgsIDczLCA3NywgNjUsIDEyOCwgNzcsIDczLCA3OCwgNzMsIDY4LCA3MywgODMsIDY3LCAKKyAgICAxMjgsIDc3LCA3MywgNzgsIDczLCA2NiwgODUsIDgzLCAxMjgsIDc3LCA3MywgNzcsIDY5LCAxMjgsIDc3LCA3MywgNzcsIAorICAgIDEyOCwgNzcsIDczLCA3NiwgNzYsIDczLCA3OSwgNzgsIDIxMSwgNzcsIDczLCA3NiwgNzYsIDY5LCA4NCwgMTI4LCA3NywgCisgICAgNzMsIDc2LCA3NiwgMTk3LCA3NywgNzMsIDc2LCAyMDQsIDc3LCA3MywgNzYsIDc1LCAyMTcsIDc3LCA3MywgNzYsIDEyOCwgCisgICAgNzcsIDczLCA3NSwgODUsIDgyLCA3OSwgNzgsIDEyOCwgNzcsIDczLCA3NSwgODIsIDc5LCAyMDYsIDc3LCA3MywgNzUsIDgyLCAKKyAgICA3MywgMTI4LCA3NywgNzMsIDczLCA3OCwgMTI4LCA3NywgNzMsIDczLCAxMjgsIDc3LCA3MywgMTk5LCA3NywgNzMsIDY5LCAKKyAgICA4OCwgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAxMjgsIDc3LCA3MywgNjksIAorICAgIDg1LCA3NywgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIDEyOCwgNzcsIDczLCA2OSwgODUsIDc3LCAKKyAgICA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgCisgICAgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIAorICAgIDgzLCA3MywgNzksIDgzLCAxMjgsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA3NywgCisgICAgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4MCwgNjUsIDc4LCA4MywgNzMsIDc5LCA4MywgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIAorICAgIDQ1LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgNjcsIDczLCA2OSwgODUsIDY3LCAKKyAgICAxMjgsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDY3LCA3MiwgNzMsIDY5LCA4NSwgNjcsIDcyLCAxMjgsIDc3LCA3MywgNjksIAorICAgIDg1LCAyMDUsIDc3LCA3MywgNjksIDgwLCAxMjgsIDc3LCA3MywgNjksIDY5LCAxMjgsIDc3LCA3MywgNjksIDEyOCwgNzcsIAorICAgIDczLCA2OCwgNzYsIDczLCA3OCwgMTk3LCA3NywgNzMsIDY4LCA2OCwgNzYsIDY5LCA0NSwgODcsIDY5LCA3NiwgODMsIDIwMCwgCisgICAgNzcsIDczLCA2OCwgNjgsIDc2LCAxOTcsIDc3LCA3MywgMTk2LCA3NywgNzMsIDY3LCA4MiwgNzksIDgzLCA2NywgNzksIDgwLCAKKyAgICA2OSwgMTI4LCA3NywgNzMsIDY3LCA4MiwgNzksIDgwLCA3MiwgNzksIDc4LCA2OSwgMTI4LCA3NywgNzMsIDY3LCA4MiwgCisgICAgMjA3LCA3NywgNzMsIDY3LCAyMTAsIDc3LCA3MiwgOTAsIDEyOCwgNzcsIDcyLCA2NSwgMTI4LCA3NywgNzIsIDEyOCwgNzcsIAorICAgIDcxLCA4NSwgODgsIDEyOCwgNzcsIDcxLCA4NSwgODQsIDEyOCwgNzcsIDcxLCA4NSwgODIsIDg4LCAxMjgsIDc3LCA3MSwgCisgICAgODUsIDgyLCAxMjgsIDc3LCA3MSwgODUsIDgwLCAxMjgsIDc3LCA3MSwgODUsIDc5LCA4OCwgMTI4LCA3NywgNzEsIDg1LCAKKyAgICA3OSwgODAsIDEyOCwgNzcsIDcxLCA4NSwgNzksIDEyOCwgNzcsIDcxLCA4NSwgMTI4LCA3NywgNzEsIDc5LCA4OCwgMTI4LCAKKyAgICA3NywgNzEsIDc5LCA4NCwgMTI4LCA3NywgNzEsIDc5LCA4MCwgMTI4LCA3NywgNzEsIDc5LCAxMjgsIDc3LCA3MSwgMjA3LCAKKyAgICA3NywgNzEsIDczLCA2OSwgODgsIDEyOCwgNzcsIDcxLCA3MywgNjksIDEyOCwgNzcsIDcxLCA2OSwgODgsIDEyOCwgNzcsIAorICAgIDcxLCA2OSwgODAsIDEyOCwgNzcsIDcxLCA2OSwgMTI4LCA3NywgNzEsIDY2LCA4NSwgMTI4LCA3NywgNzEsIDY2LCA3OSwgCisgICAgNzksIDEyOCwgNzcsIDcxLCA2NiwgNzksIDcwLCA4NSwgNzcsIDEyOCwgNzcsIDcxLCA2NiwgNzksIDEyOCwgNzcsIDcxLCAKKyAgICA2NiwgNzMsIDEyOCwgNzcsIDcxLCA2NiwgNjksIDg1LCA3OCwgMTI4LCA3NywgNzEsIDY2LCA2OSwgNzgsIDEyOCwgNzcsIAorICAgIDcxLCA2NiwgNjksIDY5LCAxMjgsIDc3LCA3MSwgNjYsIDY5LCAxMjgsIDc3LCA3MSwgNjYsIDY1LCA4MywgNjUsIDgxLCAKKyAgICAxMjgsIDc3LCA3MSwgNjYsIDY1LCA4MywgNjUsIDEyOCwgNzcsIDcxLCA2NSwgODgsIDEyOCwgNzcsIDcxLCA2NSwgODQsIAorICAgIDEyOCwgNzcsIDcxLCA2NSwgODAsIDEyOCwgNzcsIDcxLCA2NSwgMTI4LCA3NywgNzEsIDEyOCwgNzcsIDcwLCA3OSwgNzgsIAorICAgIDEyOCwgNzcsIDcwLCA3OSwgMjA2LCA3NywgNzAsIDc5LCAxMjgsIDc3LCA3MCwgNzMsIDg5LCA2NSwgODEsIDEyOCwgNzcsIAorICAgIDcwLCA3MywgNjksIDY5LCAxMjgsIDc3LCA3MCwgNjksIDg1LCA4NCwgMTI4LCA3NywgNzAsIDY5LCA4NSwgODEsIDEyOCwgCisgICAgNzcsIDcwLCA2OSwgODUsIDY1LCA2OSwgMTI4LCA3NywgNzAsIDY1LCA2NSwgMTI4LCA3NywgNjksIDkwLCA5MCwgNzksIAorICAgIDEyOCwgNzcsIDY5LCA4OCwgMTI4LCA3NywgNjksIDg1LCAyMTIsIDc3LCA2OSwgODUsIDgxLCAxMjgsIDc3LCA2OSwgODUsIAorICAgIDc4LCA3NCwgNzksIDc3LCA3OCwgNjgsIDY5LCA4NSwgODEsIDEyOCwgNzcsIDY5LCA4NSwgNzgsIDEyOCwgNzcsIDY5LCA4NCwgCisgICAgODIsIDc5LCAxMjgsIDc3LCA2OSwgODQsIDgyLCA3MywgNjcsIDY1LCAyMDQsIDc3LCA2OSwgODQsIDgyLCA3MywgNjUsIAorICAgIDEyOCwgNzcsIDY5LCA4NCwgODIsIDY5LCA4NCwgNjksIDIxMSwgNzcsIDY5LCA4NCwgNzksIDY2LCA2OSwgNzYsIDg1LCA4MywgCisgICAgMTI4LCA3NywgNjksIDg0LCA2OSwgNzUsIDEyOCwgNzcsIDY5LCA4NCwgNjksIDcxLCAxMjgsIDc3LCA2OSwgODQsIDY1LCAKKyAgICA3NiwgMTI4LCA3NywgNjksIDg0LCAxOTMsIDc3LCA2OSwgODMsIDgzLCA2OSwgNzgsIDczLCA2NSwgMjA2LCA3NywgNjksIAorICAgIDgzLCA4MywgNjUsIDcxLCA2OSwgMTI4LCA3NywgNjksIDgzLCA4MywgNjUsIDcxLCAxOTcsIDc3LCA2OSwgODMsIDc5LCAKKyAgICAxMjgsIDc3LCA2OSwgODMsIDczLCAxMjgsIDc3LCA2OSwgODMsIDcyLCAxMjgsIDc3LCA2OSwgODIsIDc5LCA3MywgODQsIAorICAgIDczLCAxOTUsIDc3LCA2OSwgODIsIDc1LCA3MiwgNjUsIDEyOCwgNzcsIDY5LCA4MiwgNzUsIDcyLCAxOTMsIDc3LCA2OSwgCisgICAgODIsIDczLCA2OCwgNzMsIDY1LCA3OCwgODMsIDEyOCwgNzcsIDY5LCA4MiwgNzMsIDEyOCwgNzcsIDY5LCA4MiwgNzEsIDY5LCAKKyAgICAxMjgsIDc3LCA2OSwgODIsIDY3LCA4NSwgODIsIDg5LCAxMjgsIDc3LCA2OSwgODIsIDY3LCA4NSwgODIsIDIxNywgNzcsIAorICAgIDY5LCA3OCwgNjgsIDg1LCA4NCwgMTI4LCA3NywgNjksIDc4LCAxMjgsIDc3LCA2OSwgNzcsIDc5LCAxMjgsIDc3LCA2OSwgCisgICAgNzcsIDY2LCA2OSwgODIsIDgzLCA3MiwgNzMsIDgwLCAxMjgsIDc3LCA2OSwgNzcsIDY2LCA2OSwgODIsIDEyOCwgNzcsIDY5LCAKKyAgICA3NywgNjYsIDY5LCAyMTAsIDc3LCA2OSwgNzcsIDQ1LCA4MSwgNzksIDgwLCA3MiwgMTI4LCA3NywgNjksIDc3LCAxMjgsIAorICAgIDc3LCA2OSwgMjA1LCA3NywgNjksIDc2LCA3OSwgNjgsIDczLCAxOTUsIDc3LCA2OSwgNzYsIDczLCA3NSwgMTI4LCA3NywgCisgICAgNjksIDczLCA5MCwgNzMsIDEyOCwgNzcsIDY5LCA3MSwgNjUsIDg0LCA3OSwgNzgsIDEyOCwgNzcsIDY5LCA3MSwgNjUsIDgwLCAKKyAgICA3MiwgNzksIDc4LCA2OSwgMTI4LCA3NywgNjksIDcxLCA2NSwgNzYsIDczLCAxMjgsIDc3LCA2OSwgNjksIDg0LCA3OSwgODIsIAorICAgIDg1LCAxMjgsIDc3LCA2OSwgNjksIDg0LCAxMjgsIDc3LCA2OSwgNjksIDc3LCA4NSwgMTI4LCA3NywgNjksIDY5LCA3NywgCisgICAgMTI4LCA3NywgNjksIDY5LCA2OSwgNjksIDEyOCwgNzcsIDY5LCA2OCwgNzMsIDg1LCA3NywgMTI4LCA3NywgNjksIDY4LCAKKyAgICA3MywgODUsIDIwNSwgNzcsIDY5LCA2OCwgNzMsIDY3LCA3MywgNzgsIDY5LCAxMjgsIDc3LCA2OSwgNjgsIDczLCA2NywgNjUsIAorICAgIDIwNCwgNzcsIDY5LCA2NSwgODQsIDEyOCwgNzcsIDY5LCA2NSwgMjEyLCA3NywgNjksIDY1LCA4MywgODUsIDgyLCA2OSwgCisgICAgMTk2LCA3NywgNjksIDY1LCA4MywgODUsIDgyLCA2OSwgMTI4LCA3NywgNjksIDY1LCA4MywgODUsIDgyLCAxOTcsIDc3LCAKKyAgICA2OCwgODUsIDIwNiwgNzcsIDE5NiwgNzcsIDY3LCA3MiwgMjEzLCA3NywgNjcsIDcyLCA2NSwgMjA2LCA3NywgMTk1LCA3NywgCisgICAgNjYsIDg1LCA3OSwgODEsIDEyOCwgNzcsIDY2LCA4NSwgNzksIDEyOCwgNzcsIDY2LCA4NSwgNjksIDEyOCwgNzcsIDY2LCAKKyAgICA4NSwgNjUsIDY5LCA3NywgMTI4LCA3NywgNjYsIDg1LCA2NSwgNjksIDEyOCwgNzcsIDY2LCA3OSwgNzksIDEyOCwgNzcsIAorICAgIDY2LCA3OSwgMTI4LCA3NywgNjYsIDczLCA4NCwgMTI4LCA3NywgNjYsIDczLCAyMTIsIDc3LCA2NiwgNzMsIDgyLCA3MywgCisgICAgNjksIDY5LCA3OCwgMTI4LCA3NywgNjYsIDczLCAxMjgsIDc3LCA2NiwgNjksIDg1LCA4OCwgMTI4LCA3NywgNjYsIDY5LCAKKyAgICA4NSwgODIsIDczLCAxMjgsIDc3LCA2NiwgNjksIDg1LCA3NywgMTI4LCA3NywgNjYsIDY5LCA4MiwgNjUsIDY5LCAxMjgsIAorICAgIDc3LCA2NiwgNjksIDc4LCAxMjgsIDc3LCA2NiwgNjksIDY5LCA3NSwgNjksIDY5LCA4NCwgMTI4LCA3NywgNjYsIDY5LCA2OSwgCisgICAgMTI4LCA3NywgNjYsIDY5LCAxMjgsIDc3LCA2NiwgNjUsIDgxLCAxMjgsIDc3LCA2NiwgNjUsIDc4LCA4OSwgNzMsIDEyOCwgCisgICAgNzcsIDY2LCA2NSwgNjUsIDgyLCA2NSwgNjksIDEyOCwgNzcsIDY2LCA2NSwgNjUsIDc1LCA2OSwgODQsIDEyOCwgNzcsIDY2LCAKKyAgICA2NSwgNjUsIDEyOCwgNzcsIDY2LCA2NSwgMTkzLCA3NywgNjYsIDE5MywgNzcsIDY2LCA1MiwgMTI4LCA3NywgNjYsIDUxLCAKKyAgICAxMjgsIDc3LCA2NiwgNTAsIDEyOCwgNzcsIDY2LCAxMjgsIDc3LCAxOTQsIDc3LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAKKyAgICAxMjgsIDc3LCA2NSwgODksIDEyOCwgNzcsIDY1LCA4OCwgNzMsIDc3LCA2NSwgMTI4LCA3NywgNjUsIDg4LCAxMjgsIDc3LCAKKyAgICA2NSwgODUsIDEyOCwgNzcsIDY1LCA4NCwgODQsIDc5LCA2NywgNzUsIDEyOCwgNzcsIDY1LCA4NCwgODIsIDczLCA4OCwgCisgICAgMTI4LCA3NywgNjUsIDg0LCA2OSwgODIsIDczLCA2NSwgNzYsIDgzLCAxMjgsIDc3LCA2NSwgODQsIDEyOCwgNzcsIDY1LCAKKyAgICA4MywgMjEzLCA3NywgNjUsIDgzLCA4MywgNzMsIDc4LCA3MSwgMTI4LCA3NywgNjUsIDgzLCA4MywgNjUsIDcxLCA2OSwgCisgICAgMTI4LCA3NywgNjUsIDgzLCA3OSwgODIsIDE5MywgNzcsIDY1LCA4MywgNzUsIDEyOCwgNzcsIDY1LCA4MywgNzIsIDcwLCAKKyAgICA2NSwgNjUsIDg0LCAxMjgsIDc3LCA2NSwgODMsIDcyLCA1MCwgMTI4LCA3NywgNjUsIDgzLCA2NywgODUsIDc2LCA3MywgNzgsIAorICAgIDE5NywgNzcsIDY1LCA4MiwgODksIDEyOCwgNzcsIDY1LCA4MiwgODUsIDc1LCA4NSwgMTI4LCA3NywgNjUsIDgyLCA4NCwgCisgICAgODksIDgyLCA3MywgMTkzLCA3NywgNjUsIDgyLCA4MiwgODksIDczLCA3OCwgMTk5LCA3NywgNjUsIDgyLCA4MiwgNzMsIDY1LCAKKyAgICA3MSwgMTk3LCA3NywgNjUsIDgyLCA3NSwgNjksIDgyLCAxMjgsIDc3LCA2NSwgODIsIDc1LCA0NSwgNTIsIDEyOCwgNzcsIAorICAgIDY1LCA4MiwgNzUsIDQ1LCA1MSwgMTI4LCA3NywgNjUsIDgyLCA3NSwgNDUsIDUwLCAxMjgsIDc3LCA2NSwgODIsIDc1LCA0NSwgCisgICAgNDksIDEyOCwgNzcsIDY1LCA4MiwgNjksIDEyOCwgNzcsIDY1LCA4MiwgNjcsIDcyLCAxMjgsIDc3LCA2NSwgODIsIDY3LCAKKyAgICA2NSwgODQsIDc5LCA0NSwgODMsIDg0LCA2NSwgNjcsIDY3LCA2NSwgODQsIDc5LCAxMjgsIDc3LCA2NSwgODIsIDY3LCA2NSwgCisgICAgODQsIDc5LCAxMjgsIDc3LCA2NSwgODIsIDY3LCA2NSwgODMsIDczLCA4NCwgNjksIDEyOCwgNzcsIDY1LCA4MiwgNjYsIDg1LCAKKyAgICA4NCwgNjUsIDEyOCwgNzcsIDY1LCA4MiwgNjYsIDg1LCA4NCwgMTkzLCA3NywgNjUsIDgyLCAxMjgsIDc3LCA2NSwgODEsIAorICAgIDY1LCA3MCwgMTI4LCA3NywgNjUsIDgxLCAxMjgsIDc3LCA2NSwgODAsIDc2LCAxOTcsIDc3LCA2NSwgODAsIDczLCA4MSwgCisgICAgMTI4LCA3NywgNjUsIDIwOCwgNzcsIDY1LCA3OSwgMTI4LCA3NywgNjUsIDc4LCA4MywgODksIDc5LCA3OCwgMTI4LCA3NywgCisgICAgNjUsIDc4LCA4MywgODUsIDY1LCA2OSwgMTI4LCA3NywgNjUsIDc4LCA3OCwgNjUsIDIxOCwgNzcsIDY1LCA3OCwgNzgsIDY1LCAKKyAgICAxMjgsIDc3LCA2NSwgNzgsIDcxLCA2NSwgNzYsIDY1LCA3NywgMTI4LCA3NywgNjUsIDc4LCA2OCwgNjUsIDczLCA3NiwgNzMsIAorICAgIDc4LCAxOTksIDc3LCA2NSwgNzgsIDY4LCA2NSwgNzMsIDE5NSwgNzcsIDY1LCA3OCwgNjcsIDcyLCAyMTMsIDc3LCA2NSwgCisgICAgNzgsIDY1LCA2NywgNzYsIDY5LCA4MywgMTI4LCA3NywgNjUsIDc2LCA4NCwgNjksIDgzLCAxOTcsIDc3LCA2NSwgNzYsIDY5LCAKKyAgICA2OSwgODIsIDczLCAxMjgsIDc3LCA2NSwgNzYsIDY5LCAxMjgsIDc3LCA2NSwgNzYsIDE5NywgNzcsIDY1LCA3NiwgNjUsIAorICAgIDc1LCA3OSwgMjA2LCA3NywgNjUsIDc1LCA4MywgODUsIDgyLCA2NSwgMTI4LCA3NywgNjUsIDc1LCA4MywgODUsIDgyLCAKKyAgICAxOTMsIDc3LCA2NSwgNzMsIDkwLCA2OSwgMTI4LCA3NywgNjUsIDczLCA4OSwgNjUsIDc3LCA3OSwgNzUsIDEyOCwgNzcsIAorICAgIDY1LCA3MywgODQsIDY1LCA3MywgNzUsIDcyLCA4NSwgMTI4LCA3NywgNjUsIDczLCA4MiwgODUsIDEyOCwgNzcsIDY1LCA3MywgCisgICAgNzcsIDg1LCA2NSwgNzgsIDEyOCwgNzcsIDY1LCA3MywgNzcsIDY1LCA3NiwgNjUsIDczLCAxMjgsIDc3LCA2NSwgNzMsIDc2LCAKKyAgICA2NiwgNzksIDIxNiwgNzcsIDY1LCA3MywgNzUsIDg1LCA4MiwgNzksIDEyOCwgNzcsIDY1LCA3MywgNjgsIDY5LCA3OCwgCisgICAgMTI4LCA3NywgNjUsIDczLCAxMjgsIDc3LCA2NSwgNzIsIDc0LCA3OSwgNzgsIDE5OSwgNzcsIDY1LCA3MiwgNzIsIDY1LCAKKyAgICAxMjgsIDc3LCA2NSwgNzIsIDY1LCA4MCwgODIsIDY1LCA3OCwgNjUsIDEyOCwgNzcsIDY1LCA3MiwgNjUsIDgwLCA2NSwgNzUsIAorICAgIDcyLCAxMjgsIDc3LCA2NSwgNzIsIDY1LCA2NSwgODAsIDgyLCA2NSwgNjUsIDc4LCAxOTMsIDc3LCA2NSwgNzIsIDEyOCwgCisgICAgNzcsIDY1LCA3MSwgNzgsIDczLCA3MCwgODksIDczLCA3OCwgMTk5LCA3NywgNjUsIDY5LCA4MywgNzMsIDEyOCwgNzcsIDY1LCAKKyAgICA2OSwgNzgsIDg5LCA3MywgMTI4LCA3NywgNjUsIDY5LCA3OCwgNzQsIDY5LCA4NCwgMTI4LCA3NywgNjUsIDY5LCA3NywgODYsIAorICAgIDY5LCA4NSwgODgsIDEyOCwgNzcsIDY1LCA2OSwgNzcsIDc1LCA4MCwgNjksIDc4LCAxMjgsIDc3LCA2NSwgNjksIDc3LCA3MSwgCisgICAgNjYsIDczLCA2OSwgNjksIDEyOCwgNzcsIDY1LCA2OSwgNzcsIDY2LCA3MSwgNjYsIDczLCA2OSwgNjksIDEyOCwgNzcsIDY1LCAKKyAgICA2OSwgNzcsIDY2LCA2NSwgMTI4LCA3NywgNjUsIDY5LCA3NywgMTI4LCA3NywgNjUsIDY5LCA3NiwgNjksIDY5LCAxMjgsIAorICAgIDc3LCA2NSwgNjksIDc1LCA2OSwgODUsIDgwLCAxMjgsIDc3LCA2NSwgNjgsIDg5LCA2NSwgMTI4LCA3NywgNjUsIDY4LCA4NSwgCisgICAgMTI4LCA3NywgNjUsIDY4LCA2OCwgNjUsIDIwMCwgNzcsIDY1LCA2OCwgNjgsIDY1LCAxMjgsIDc3LCA2NSwgNjgsIDY4LCAKKyAgICAxOTMsIDc3LCA2NSwgNjcsIDgyLCA3OSwgNzgsIDQ1LCA3MSwgODIsIDY1LCA4NiwgNjksIDEyOCwgNzcsIDY1LCA2NywgODIsIAorICAgIDc5LCA3OCwgNDUsIDY2LCA4MiwgNjksIDg2LCA2OSwgMTI4LCA3NywgNjUsIDY3LCA4MiwgNzksIDc4LCA0NSwgNjUsIDY3LCAKKyAgICA4NSwgODQsIDY5LCAxMjgsIDc3LCA2NSwgNjcsIDgyLCA3OSwgNzgsIDEyOCwgNzcsIDY1LCA2NywgODIsIDc5LCAyMDYsIAorICAgIDc3LCA2NSwgNjcsIDcyLCA3MywgNzgsIDY5LCAxMjgsIDc3LCA2NSwgNjUsIDg5LCA4OSwgNjUsIDY1LCAxMjgsIDc3LCA2NSwgCisgICAgNjUsIDczLCAxMjgsIDc3LCA2NSwgNjUsIDEyOCwgNzcsIDY1LCA1MCwgMTI4LCA3NywgNDgsIDUyLCA1MiwgMTI4LCA3NywgCisgICAgNDgsIDUyLCA1MSwgMTI4LCA3NywgNDgsIDUyLCA1MCwgMTI4LCA3NywgNDgsIDUyLCA0OSwgMTI4LCA3NywgNDgsIDUyLCAKKyAgICA0OCwgNjUsIDEyOCwgNzcsIDQ4LCA1MiwgNDgsIDEyOCwgNzcsIDQ4LCA1MSwgNTcsIDEyOCwgNzcsIDQ4LCA1MSwgNTYsIAorICAgIDEyOCwgNzcsIDQ4LCA1MSwgNTUsIDEyOCwgNzcsIDQ4LCA1MSwgNTQsIDEyOCwgNzcsIDQ4LCA1MSwgNTMsIDEyOCwgNzcsIAorICAgIDQ4LCA1MSwgNTIsIDEyOCwgNzcsIDQ4LCA1MSwgNTEsIDY2LCAxMjgsIDc3LCA0OCwgNTEsIDUxLCA2NSwgMTI4LCA3NywgCisgICAgNDgsIDUxLCA1MSwgMTI4LCA3NywgNDgsIDUxLCA1MCwgMTI4LCA3NywgNDgsIDUxLCA0OSwgNjUsIDEyOCwgNzcsIDQ4LCAKKyAgICA1MSwgNDksIDEyOCwgNzcsIDQ4LCA1MSwgNDgsIDEyOCwgNzcsIDQ4LCA1MCwgNTcsIDEyOCwgNzcsIDQ4LCA1MCwgNTYsIAorICAgIDY1LCAxMjgsIDc3LCA0OCwgNTAsIDU2LCAxMjgsIDc3LCA0OCwgNTAsIDU1LCAxMjgsIDc3LCA0OCwgNTAsIDU0LCAxMjgsIAorICAgIDc3LCA0OCwgNTAsIDUzLCAxMjgsIDc3LCA0OCwgNTAsIDUyLCA2NSwgMTI4LCA3NywgNDgsIDUwLCA1MiwgMTI4LCA3NywgCisgICAgNDgsIDUwLCA1MSwgMTI4LCA3NywgNDgsIDUwLCA1MCwgNjUsIDEyOCwgNzcsIDQ4LCA1MCwgNTAsIDEyOCwgNzcsIDQ4LCAKKyAgICA1MCwgNDksIDEyOCwgNzcsIDQ4LCA1MCwgNDgsIDEyOCwgNzcsIDQ4LCA0OSwgNTcsIDEyOCwgNzcsIDQ4LCA0OSwgNTYsIAorICAgIDEyOCwgNzcsIDQ4LCA0OSwgNTUsIDY1LCAxMjgsIDc3LCA0OCwgNDksIDU1LCAxMjgsIDc3LCA0OCwgNDksIDU0LCA2NSwgCisgICAgMTI4LCA3NywgNDgsIDQ5LCA1NCwgMTI4LCA3NywgNDgsIDQ5LCA1MywgNjUsIDEyOCwgNzcsIDQ4LCA0OSwgNTMsIDEyOCwgCisgICAgNzcsIDQ4LCA0OSwgNTIsIDEyOCwgNzcsIDQ4LCA0OSwgNTEsIDEyOCwgNzcsIDQ4LCA0OSwgNTAsIDcyLCAxMjgsIDc3LCAKKyAgICA0OCwgNDksIDUwLCA3MSwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNzAsIDEyOCwgNzcsIDQ4LCA0OSwgNTAsIDY5LCAxMjgsIAorICAgIDc3LCA0OCwgNDksIDUwLCA2OCwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNjcsIDEyOCwgNzcsIDQ4LCA0OSwgNTAsIDY2LCAKKyAgICAxMjgsIDc3LCA0OCwgNDksIDUwLCA2NSwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgMTI4LCA3NywgNDgsIDQ5LCA0OSwgMTI4LCAKKyAgICA3NywgNDgsIDQ5LCA0OCwgNjUsIDEyOCwgNzcsIDQ4LCA0OSwgNDgsIDEyOCwgNzcsIDQ4LCA0OCwgNTcsIDEyOCwgNzcsIAorICAgIDQ4LCA0OCwgNTYsIDEyOCwgNzcsIDQ4LCA0OCwgNTUsIDEyOCwgNzcsIDQ4LCA0OCwgNTQsIDEyOCwgNzcsIDQ4LCA0OCwgCisgICAgNTMsIDEyOCwgNzcsIDQ4LCA0OCwgNTIsIDEyOCwgNzcsIDQ4LCA0OCwgNTEsIDY1LCAxMjgsIDc3LCA0OCwgNDgsIDUxLCAKKyAgICAxMjgsIDc3LCA0OCwgNDgsIDUwLCAxMjgsIDc3LCA0OCwgNDgsIDQ5LCA2NiwgMTI4LCA3NywgNDgsIDQ4LCA0OSwgNjUsIAorICAgIDEyOCwgNzcsIDQ4LCA0OCwgNDksIDEyOCwgNzYsIDIxOCwgNzYsIDg5LCA4OSwgMTI4LCA3NiwgODksIDg4LCAxMjgsIDc2LCAKKyAgICA4OSwgODQsIDEyOCwgNzYsIDg5LCA4MiwgODgsIDEyOCwgNzYsIDg5LCA4MiwgMTI4LCA3NiwgODksIDgwLCAxMjgsIDc2LCAKKyAgICA4OSwgNjgsIDczLCA2NSwgMjA2LCA3NiwgODksIDY3LCA3MywgNjUsIDIwNiwgNzYsIDg4LCAxMjgsIDc2LCA4NywgNzksIAorICAgIDc5LCAxMjgsIDc2LCA4NywgNzksIDEyOCwgNzYsIDg3LCA3MywgNzMsIDEyOCwgNzYsIDg3LCA3MywgMTI4LCA3NiwgODcsIAorICAgIDY5LCAxMjgsIDc2LCA4NywgNjUsIDY1LCAxMjgsIDc2LCA4NywgNjUsIDEyOCwgNzYsIDg1LCA4OCwgMTI4LCA3NiwgODUsIAorICAgIDg1LCAxMjgsIDc2LCA4NSwgODQsIDEyOCwgNzYsIDg1LCA4MiwgODgsIDEyOCwgNzYsIDg1LCA4MCwgMTI4LCA3NiwgODUsIAorICAgIDc5LCA4OCwgMTI4LCA3NiwgODUsIDc5LCA4NCwgMTI4LCA3NiwgODUsIDc5LCA4MCwgMTI4LCA3NiwgODUsIDc5LCAxMjgsIAorICAgIDc2LCA4NSwgNzgsIDcxLCA4MywgNzMsIDEyOCwgNzYsIDg1LCA3OCwgNjUsIDg0LCAxOTcsIDc2LCA4NSwgMjA1LCA3NiwgCisgICAgODUsIDc2LCAxMjgsIDc2LCA4NSwgNzMsIDgzLCAxMjgsIDc2LCA4NSwgNzIsIDg1LCA4MiwgMTI4LCA3NiwgODUsIDcyLCAKKyAgICAxMjgsIDc2LCA4NSwgNzEsIDcxLCA2NSwgNzEsIDY5LCAxMjgsIDc2LCA4NSwgNzEsIDY1LCA3NiwgMTI4LCA3NiwgODUsIAorICAgIDcxLCA2NSwgMjA0LCA3NiwgODUsIDY5LCAxMjgsIDc2LCA4NSwgNjUsIDY5LCA4MCwgMTI4LCA3NiwgODUsIDUxLCAxMjgsIAorICAgIDc2LCA4NSwgNTAsIDEyOCwgNzYsIDg1LCAxNzgsIDc2LCA4MiwgNzksIDEyOCwgNzYsIDgyLCA3NywgMTI4LCA3NiwgODIsIAorICAgIDY5LCAxMjgsIDc2LCA3OSwgOTAsIDY5LCA3OCwgNzEsIDY5LCAxMjgsIDc2LCA3OSwgOTAsIDY5LCA3OCwgNzEsIDE5NywgCisgICAgNzYsIDc5LCA4OCwgMTI4LCA3NiwgNzksIDg3LCA2OSwgODIsIDY5LCAxOTYsIDc2LCA3OSwgODcsIDY5LCAyMTAsIDc2LCAKKyAgICA3OSwgODcsIDQ1LCAxODUsIDc2LCA3OSwgODYsIDE5NywgNzYsIDc5LCA4NSwgODIsIDY5LCAxMjgsIDc2LCA3OSwgODUsIAorICAgIDY4LCA4MywgODAsIDY5LCA2NSwgNzUsIDY5LCA4MiwgMTI4LCA3NiwgNzksIDg1LCA2OCwgNzYsIDIxNywgNzYsIDc5LCA4NCwgCisgICAgODUsIDgzLCAxMjgsIDc2LCA3OSwgODQsIDEyOCwgNzYsIDc5LCA4MiwgODIsIDg5LCAxMjgsIDc2LCA3OSwgODIsIDgyLCAKKyAgICA2NSwgNzMsIDc4LCA2OSwgMTI4LCA3NiwgNzksIDgxLCAxMjgsIDc2LCA3OSwgODAsIDEyOCwgNzYsIDc5LCA3OSwgODQsIAorICAgIDEyOCwgNzYsIDc5LCA3OSwgODAsIDY5LCAxOTYsIDc2LCA3OSwgNzksIDgwLCAxMjgsIDc2LCA3OSwgNzksIDIwOCwgNzYsIAorICAgIDc5LCA3OSwgNzgsIDEyOCwgNzYsIDc5LCA3OSwgMjAzLCA3NiwgNzksIDc5LCAxMjgsIDc2LCA3OSwgNzgsIDgzLCA4NSwgCisgICAgNzcsIDEyOCwgNzYsIDc5LCA3OCwgNzEsIDY1LCAxMjgsIDc2LCA3OSwgNzgsIDcxLCAxOTMsIDc2LCA3OSwgNzgsIDcxLCAKKyAgICA0NSwgNjYsIDgyLCA2NSwgNzgsIDY3LCA3MiwgNDUsIDg5LCA4MiwgMTI4LCA3NiwgNzksIDc4LCA3MSwgNDUsIDY2LCA4MiwgCisgICAgNjUsIDc4LCA2NywgNzIsIDQ1LCA4MywgNzksIDIwNCwgNzYsIDc5LCA3OCwgNzEsIDQ1LCA2NiwgODIsIDY1LCA3OCwgNjcsIAorICAgIDcyLCA0NSwgNzksIDgzLCAyMTEsIDc2LCA3OSwgNzgsIDcxLCA0NSwgNjYsIDgyLCA2NSwgNzgsIDY3LCA3MiwgNDUsIDc3LCAKKyAgICA2NSwgNjgsIDIxMCwgNzYsIDc5LCA3OCwgNzEsIDQ1LCA2NiwgODIsIDY1LCA3OCwgNjcsIDcyLCA0NSwgNzIsIDY1LCA3MSwgCisgICAgNjUsIDc2LCAyMDQsIDc2LCA3OSwgNzgsIDcxLCA0NSwgNjYsIDgyLCA2NSwgNzgsIDY3LCA3MiwgNDUsIDY1LCAyMTAsIDc2LCAKKyAgICA3OSwgNzcsIDc3LCA2NSwgNjksIDEyOCwgNzYsIDc5LCA3NywgMTI4LCA3NiwgNzksIDIwNSwgNzYsIDc5LCA3NiwgNzYsIAorICAgIDczLCA4MCwgNzksIDgwLCAxMjgsIDc2LCA3OSwgNzYsIDc2LCAxMjgsIDc2LCA3OSwgNzEsIDIxMCwgNzYsIDc5LCA3MSwgCisgICAgNzksIDg0LCA4OSwgODAsIDE5NywgNzYsIDc5LCA3MSwgNzksIDcxLCA4MiwgNjUsIDIwNSwgNzYsIDc5LCA3MSwgMTI4LCAKKyAgICA3NiwgNzksIDY4LCA2OSwgODMsIDg0LCA3OSwgNzgsIDY5LCAxMjgsIDc2LCA3OSwgNjcsIDc5LCA3NywgNzksIDg0LCA3MywgCisgICAgODYsIDY5LCAxMjgsIDc2LCA3OSwgNjcsIDc1LCA3MywgNzgsIDcxLCA0NSwgODMsIDcyLCA3MywgNzAsIDIxMiwgNzYsIDc5LCAKKyAgICA2NywgMjAzLCA3NiwgNzksIDY3LCA2NSwgODQsIDczLCA4NiwgNjksIDEyOCwgNzYsIDc5LCA2NywgNjUsIDg0LCA3MywgNzksIAorICAgIDIwNiwgNzYsIDc5LCA2NSwgMTI4LCA3NiwgNzgsIDEyOCwgNzYsIDc2LCA4NSwgODUsIDEyOCwgNzYsIDc2LCA3OSwgNzksIAorICAgIDEyOCwgNzYsIDc2LCA3NiwgODUsIDg1LCAxMjgsIDc2LCA3NiwgNzYsIDg1LCAxMjgsIDc2LCA3NiwgNzYsIDc5LCA3OSwgCisgICAgMTI4LCA3NiwgNzYsIDc2LCA3OSwgMTI4LCA3NiwgNzYsIDc2LCA3MywgNzMsIDEyOCwgNzYsIDc2LCA3NiwgNzMsIDEyOCwgCisgICAgNzYsIDc2LCA3NiwgNjksIDY5LCAxMjgsIDc2LCA3NiwgNzYsIDY5LCAxMjgsIDc2LCA3NiwgNzYsIDY1LCA4NSwgMTI4LCAKKyAgICA3NiwgNzYsIDc2LCA2NSwgNzMsIDEyOCwgNzYsIDc2LCA3NiwgNjUsIDY1LCAxMjgsIDc2LCA3NiwgNzYsIDY1LCAxMjgsIAorICAgIDc2LCA3NiwgNzYsIDEyOCwgNzYsIDc0LCA4NSwgNjgsIDczLCA3NCwgNjksIDEyOCwgNzYsIDc0LCA2OSwgMTI4LCA3NiwgCisgICAgNzQsIDEyOCwgNzYsIDczLCA4OCwgMTI4LCA3NiwgNzMsIDg3LCA3OCwgMTI4LCA3NiwgNzMsIDg2LCA4MiwgMTk3LCA3NiwgCisgICAgNzMsIDg0LCA4NCwgNzYsIDE5NywgNzYsIDczLCA4NCwgODQsIDY5LCAyMTAsIDc2LCA3MywgODQsIDgyLCAxOTMsIDc2LCAKKyAgICA3MywgODQsIDEyOCwgNzYsIDczLCA4MywgMjEzLCA3NiwgNzMsIDgyLCAxOTMsIDc2LCA3MywgODEsIDg1LCA3MywgMTk2LCAKKyAgICA3NiwgNzMsIDgxLCAxMjgsIDc2LCA3MywgODAsIDgzLCA4NCwgNzMsIDY3LCA3NSwgMTI4LCA3NiwgNzMsIDc4LCA3NSwgNzMsIAorICAgIDc4LCAxOTksIDc2LCA3MywgNzgsIDIwMywgNzYsIDczLCA3OCwgNzEsIDgzLCA2NSwgMTI4LCA3NiwgNzMsIDc4LCA2OSwgCisgICAgODMsIDEyOCwgNzYsIDczLCA3OCwgNjksIDIxMSwgNzYsIDczLCA3OCwgNjksIDQ1LCA1NywgMTI4LCA3NiwgNzMsIDc4LCAKKyAgICA2OSwgNDUsIDU1LCAxMjgsIDc2LCA3MywgNzgsIDY5LCA0NSwgNTEsIDEyOCwgNzYsIDczLCA3OCwgNjksIDQ1LCA0OSwgCisgICAgMTI4LCA3NiwgNzMsIDc3LCA3NywgODUsIDUyLCAxMjgsIDc2LCA3MywgNzcsIDc3LCA4NSwgNTAsIDEyOCwgNzYsIDczLCAKKyAgICA3NywgNzcsIDg1LCAxMjgsIDc2LCA3MywgNzcsIDc3LCAyMTMsIDc2LCA3MywgNzcsIDczLCA4NCwgNjksIDE5NiwgNzYsIAorICAgIDczLCA3NywgNzMsIDg0LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNzYsIDczLCA3NywgNzMsIDg0LCAxMjgsIDc2LCA3MywgCisgICAgNzcsIDY5LCAxMjgsIDc2LCA3MywgNzcsIDY2LCAyMTMsIDc2LCA3MywgNzYsIDg5LCAxMjgsIDc2LCA3MywgNzYsIDczLCAKKyAgICA4NCwgNzIsIDEyOCwgNzYsIDczLCA3NiwgMTI4LCA3NiwgNzMsIDcxLCA3MiwgODQsIDc4LCA3MywgNzgsIDcxLCAxMjgsIAorICAgIDc2LCA3MywgNzEsIDcyLCA4NCwgNzIsIDc5LCA4NSwgODMsIDY5LCAxMjgsIDc2LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA3NiwgCisgICAgNzMsIDcwLCA2OSwgMTI4LCA3NiwgNzMsIDY5LCA4OCwgMTI4LCA3NiwgNzMsIDY5LCA4NCwgMTI4LCA3NiwgNzMsIDY5LCAKKyAgICA4MCwgMTI4LCA3NiwgNzMsIDY5LCA2OSwgMTI4LCA3NiwgNzMsIDY5LCAxMjgsIDc2LCA3MywgNjgsIDEyOCwgNzYsIDczLCAKKyAgICA2NiwgODIsIDY1LCAxMjgsIDc2LCA3MywgNjYsIDY5LCA4MiwgODQsIDg5LCAxMjgsIDc2LCA3MywgNjUsIDY2LCA3MywgNzYsIAorICAgIDczLCA4NCwgMjE3LCA3NiwgNzIsIDczLCA3MywgMTI4LCA3NiwgNzIsIDY1LCA4NiwgNzMsIDg5LCA2NSwgNzgsIDczLCAKKyAgICAxMjgsIDc2LCA3MiwgNjUsIDE5OSwgNzYsIDcyLCA2NSwgNjUsIDEyOCwgNzYsIDcyLCAxMjgsIDc2LCA2OSwgOTAsIDcyLCAKKyAgICAxMjgsIDc2LCA2OSwgODgsIDEyOCwgNzYsIDY5LCA4NiwgNjksIDIwNCwgNzYsIDY5LCA4NSwgNzcsIDEyOCwgNzYsIDY5LCAKKyAgICA4NSwgNjUsIDY5LCA4MCwgMTI4LCA3NiwgNjksIDg1LCA2NSwgNjksIDc3LCAxMjgsIDc2LCA2OSwgODUsIDEyOCwgNzYsIAorICAgIDY5LCAyMTMsIDc2LCA2OSwgODQsIDg0LCA2OSwgODIsIDgzLCAxMjgsIDc2LCA2OSwgODQsIDg0LCA2OSwgODIsIDEyOCwgCisgICAgNzYsIDY5LCAyMTIsIDc2LCA2OSwgODMsIDgzLCA2OSwgMjEwLCA3NiwgNjksIDgzLCA4MywgNDUsIDg0LCA3MiwgNjUsIDc4LCAKKyAgICAxMjgsIDc2LCA2OSwgODMsIDgzLCA0NSwgODQsIDcyLCA2NSwgMjA2LCA3NiwgNjksIDgwLCAxMjgsIDc2LCA2OSwgNzksIAorICAgIDgwLCA2NSwgODIsIDY4LCAxMjgsIDc2LCA2OSwgNzksIDEyOCwgNzYsIDY5LCA3OCwgODQsIDczLCA2NywgODUsIDc2LCA2NSwgCisgICAgMjEwLCA3NiwgNjksIDc4LCA3MywgODMsIDEyOCwgNzYsIDY5LCA3OCwgNzEsIDg0LCA3MiwgNjksIDc4LCA2OSwgODIsIAorICAgIDEyOCwgNzYsIDY5LCA3OCwgNzEsIDg0LCAyMDAsIDc2LCA2OSwgNzgsIDcxLCA2NSwgMTI4LCA3NiwgNjksIDc4LCA3MSwgCisgICAgMTkzLCA3NiwgNjksIDc3LCA3OSwgNzgsIDEyOCwgNzYsIDY5LCA3NywgNzksIDczLCAxMjgsIDc2LCA2OSwgNzYsIDY5LCAKKyAgICA4NCwgMTI4LCA3NiwgNjksIDc2LCA2OSwgMjEyLCA3NiwgNjksIDIwMywgNzYsIDY5LCA3MywgNzcsIDc3LCA2NSwgMTI4LCAKKyAgICA3NiwgNjksIDczLCA3NywgNzcsIDE5MywgNzYsIDY5LCA3MSwgODMsIDEyOCwgNzYsIDY5LCA3MSwgNzMsIDc5LCA3OCwgCisgICAgMTI4LCA3NiwgNjksIDcxLCA2OSwgODQsIDc5LCAyMTEsIDc2LCA2OSwgNzEsIDEyOCwgNzYsIDY5LCA3MCwgODQsIDg3LCAKKyAgICA2NSwgODIsIDY4LCA4MywgMTI4LCA3NiwgNjksIDcwLCA4NCwgNDUsIDg0LCA3OSwgNDUsIDgyLCA3MywgNzEsIDcyLCAyMTIsIAorICAgIDc2LCA2OSwgNzAsIDg0LCA0NSwgODMsIDg0LCA2OSwgMjA1LCA3NiwgNjksIDcwLCA4NCwgNDUsIDgzLCA3MywgNjgsIDE5NywgCisgICAgNzYsIDY5LCA3MCwgODQsIDQ1LCA4MywgNzIsIDY1LCA2OCwgNjksIDE5NiwgNzYsIDY5LCA3MCwgODQsIDQ1LCA4MCwgNzksIAorICAgIDczLCA3OCwgODQsIDczLCA3OCwgMTk5LCA3NiwgNjksIDcwLCA4NCwgNDUsIDcyLCA2NSwgNzgsIDY4LCA2OSwgMTk2LCA3NiwgCisgICAgNjksIDcwLCA4NCwgNDUsIDcyLCA2NSwgNzgsIDE5NiwgNzYsIDY5LCA3MCwgODQsIDQ1LCA3MCwgNjUsIDY3LCA3MywgNzgsIAorICAgIDE5OSwgNzYsIDY5LCA3MCwgODQsIDEyOCwgNzYsIDY5LCA2OSwgODIsIDY1LCA2OSwgODcsIDY1LCAxMjgsIDc2LCA2OSwgCisgICAgNjksIDc1LCAxMjgsIDc2LCA2OSwgNjksIDY5LCA2OSwgMTI4LCA3NiwgNjksIDY4LCA3MSwgNjksIDgyLCAxMjgsIDc2LCAKKyAgICA2OSwgNjUsIDg0LCA3MiwgNjksIDgyLCAxMjgsIDc2LCA2OSwgNjUsIDcwLCAxMjgsIDc2LCA2OSwgNjUsIDE5OCwgNzYsIAorICAgIDY5LCA2NSwgNjgsIDczLCA3OCwgMTk5LCA3NiwgNjksIDY1LCA2OCwgNjksIDgyLCAxMjgsIDc2LCA2OSwgNjUsIDE5NiwgCisgICAgNzYsIDY4LCA2NSwgNzgsIDEyOCwgNzYsIDY4LCA1MCwgMTI4LCA3NiwgNjcsIDIwMSwgNzYsIDY3LCAxOTcsIDc2LCA2NSwgCisgICAgOTAsIDIxNywgNzYsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzYsIDY1LCA4OCwgMTI4LCA3NiwgNjUsIDg3LCAKKyAgICAxMjgsIDc2LCA2NSwgMjE1LCA3NiwgNjUsIDg1LCA3NiwgNjUsIDEyOCwgNzYsIDY1LCA4NSwgNzUsIDY1LCAyMTgsIDc2LCAKKyAgICA2NSwgODQsIDczLCA3OCwgNjUsIDg0LCAxOTcsIDc2LCA2NSwgODQsIDczLCA3NSwgMTI4LCA3NiwgNjUsIDg0LCA2OSwgODIsIAorICAgIDY1LCAyMDQsIDc2LCA2NSwgODQsIDE5NywgNzYsIDY1LCA4MywgMjEyLCA3NiwgNjUsIDgyLCA4OSwgNzgsIDcxLCA2OSwgCisgICAgNjUsIDIwNCwgNzYsIDY1LCA4MiwgNzEsIDY5LCAyMTAsIDc2LCA2NSwgODIsIDcxLCA2OSwgMTI4LCA3NiwgNjUsIDgyLCAKKyAgICA3MSwgMTk3LCA3NiwgNjUsIDgxLCAxMjgsIDc2LCA2NSwgODAsIDY1LCA4MSwgMTI4LCA3NiwgNjUsIDgwLCAxMjgsIDc2LCAKKyAgICA2NSwgNzgsIDg0LCA2OSwgODIsIDc4LCAxMjgsIDc2LCA2NSwgNzgsIDcxLCA4NSwgNjUsIDcxLCAxOTcsIDc2LCA2NSwgNzgsIAorICAgIDY5LCA4MywgMTI4LCA3NiwgNjUsIDc3LCA2OSwgNjgsIDcyLCAxMjgsIDc2LCA2NSwgNzcsIDY5LCA2OCwgMTI4LCA3NiwgCisgICAgNjUsIDc3LCA2OSwgMTk2LCA3NiwgNjUsIDc3LCA2OSwgMTI4LCA3NiwgNjUsIDc3LCAxOTcsIDc2LCA2NSwgNzcsIDY4LCAKKyAgICA2NSwgMTI4LCA3NiwgNjUsIDc3LCA2OCwgMTI4LCA3NiwgNjUsIDc3LCA2NiwgNjgsIDE5MywgNzYsIDY1LCA3NywgNjUsIAorICAgIDY4LCA3MiwgMTI4LCA3NiwgNjUsIDc2LCAxMjgsIDc2LCA2NSwgMjA0LCA3NiwgNjUsIDc1LCA3NSwgNzIsIDY1LCA3OCwgCisgICAgNzEsIDg5LCA2NSwgNzksIDEyOCwgNzYsIDY1LCA3NCwgNjUsIDc4LCA4OSwgNjUsIDc2LCA2NSwgNzgsIDEyOCwgNzYsIDY1LCAKKyAgICAyMDEsIDc2LCA2NSwgNzIsIDgzLCA3MiwgODUsIDEyOCwgNzYsIDY1LCA3MiwgMTI4LCA3NiwgNjUsIDcxLCA4NSwgODMsIAogICAgIDEyOCwgNzYsIDY1LCA3MSwgMjEzLCA3NiwgNjUsIDcxLCA2NSwgODIsIDEyOCwgNzYsIDY1LCA3MSwgNjUsIDIxMCwgNzYsIAogICAgIDY1LCA3MSwgNjUsIDY2LCAxMjgsIDc2LCA2NSwgNzEsIDY1LCAxOTQsIDc2LCA2NSwgNjksIDg2LCAxMjgsIDc2LCA2NSwgCiAgICAgNjksIDEyOCwgNzYsIDY1LCA2OCwgMjE3LCA3NiwgNjUsIDY3LCA3NSwgMTI4LCA3NiwgNjUsIDY3LCA2NSwgMTI4LCA3NiwgCiAgICAgNjUsIDY2LCA3OSwgODUsIDgyLCA3MywgNzgsIDcxLCAxMjgsIDc2LCA2NSwgNjYsIDc5LCA4MiwgMTI4LCA3NiwgNjUsIDY2LCAKLSAgICA3MywgNjUsIDc2LCA3MywgOTAsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDc2LCA2NSwgNjYsIDY1LCA4NCwgMTI4LCA3NiwgNjUsIAotICAgIDY1LCA3OCwgNjUsIDY5LCAxMjgsIDc2LCA2NSwgNjUsIDc4LCAxMjgsIDc2LCA2NSwgNjUsIDc3LCA4NSwgMTI4LCA3NiwgCi0gICAgNjUsIDY1LCA3NywgMTI4LCA3NiwgNjUsIDY1LCA3MywgMTI4LCA3NiwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgNzYsIDQ4LCAKLSAgICA0OCwgNTAsIDY1LCAxMjgsIDc2LCA0NSwgODQsIDg5LCA4MCwgMTk3LCA3NiwgNDUsIDgzLCA3MiwgNjUsIDgwLCA2OSwgCi0gICAgMTk2LCA3NSwgODksIDg1LCA4MiwgNzMsIDczLCAxMjgsIDc1LCA4OSwgODUsIDEyOCwgNzUsIDg5LCA3OSwgMTI4LCA3NSwgCi0gICAgODksIDc2LCA3MywgODMsIDc3LCA2NSwgMTI4LCA3NSwgODksIDczLCAxMjgsIDc1LCA4OSwgNjksIDEyOCwgNzUsIDg5LCAKLSAgICA2NSwgODQsIDcyLCA3OSwgMjExLCA3NSwgODksIDY1LCA2NSwgMTI4LCA3NSwgODksIDY1LCAxMjgsIDc1LCA4OCwgODcsIAotICAgIDczLCAxMjgsIDc1LCA4OCwgODcsIDY5LCA2OSwgMTI4LCA3NSwgODgsIDg3LCA2OSwgMTI4LCA3NSwgODgsIDg3LCA2NSwgCi0gICAgNjUsIDEyOCwgNzUsIDg4LCA4NywgNjUsIDEyOCwgNzUsIDg4LCA4NSwgMTI4LCA3NSwgODgsIDc5LCAxMjgsIDc1LCA4OCwgCi0gICAgNzMsIDEyOCwgNzUsIDg4LCA2OSwgNjksIDEyOCwgNzUsIDg4LCA2OSwgMTI4LCA3NSwgODgsIDY1LCA2NSwgMTI4LCA3NSwgCi0gICAgODgsIDY1LCAxMjgsIDc1LCA4NywgODUsIDUxLCA0OSwgNTYsIDEyOCwgNzUsIDg3LCA3OSwgNzksIDEyOCwgNzUsIDg3LCAKLSAgICA3OSwgMTI4LCA3NSwgODcsIDczLCA3MywgMTI4LCA3NSwgODcsIDczLCAxMjgsIDc1LCA4NywgNjksIDY5LCAxMjgsIDc1LCAKLSAgICA4NywgNjksIDEyOCwgNzUsIDg3LCA2NSwgODksIDEyOCwgNzUsIDg3LCA2NSwgNjksIDg0LCAxMjgsIDc1LCA4NywgNjUsIAotICAgIDY1LCAxMjgsIDc1LCA4NiwgNjUsIDEyOCwgNzUsIDg2LCAxMjgsIDc1LCA4NSwgODgsIDEyOCwgNzUsIDg1LCA4NSwgNzIsIAotICAgIDEyOCwgNzUsIDg1LCA4NCwgMTI4LCA3NSwgODUsIDgzLCA3NywgNjUsIDEyOCwgNzUsIDg1LCA4MywgNzIsIDg1LCA1MCwgCi0gICAgMTI4LCA3NSwgODUsIDgyLCA4OCwgMTI4LCA3NSwgODUsIDgyLCA4NSwgOTAsIDY5LCA3MywgODIsIDc5LCAxMjgsIDc1LCAKLSAgICA4NSwgODIsIDg0LCAxMjgsIDc1LCA4NSwgODIsIDc5LCA3OSwgNzgsIDY5LCAxMjgsIDc1LCA4NSwgODIsIDEyOCwgNzUsIAotICAgIDg1LCAyMTAsIDc1LCA4NSwgODEsIDEyOCwgNzUsIDg1LCA3OSwgODgsIDEyOCwgNzUsIDg1LCA3OSwgODAsIDEyOCwgNzUsIAotICAgIDg1LCA3OSwgMjA4LCA3NSwgODUsIDc5LCA3NywgMTI4LCA3NSwgODUsIDc5LCAxMjgsIDc1LCA4NSwgNzgsIDcxLCAxMjgsIAotICAgIDc1LCA4NSwgNzgsIDY4LCA2OCwgNjUsIDc2LCA3MywgODksIDY1LCAxMjgsIDc1LCA4NSwgNzYsIDEyOCwgNzUsIDg1LCAKLSAgICAyMDQsIDc1LCA4NSwgNjksIDg0LCAxMjgsIDc1LCA4NSwgNTUsIDEyOCwgNzUsIDg1LCA1MiwgMTI4LCA3NSwgODUsIDE4MCwgCi0gICAgNzUsIDg1LCA1MSwgMTI4LCA3NSwgODUsIDE3OSwgNzUsIDg0LCAxMjgsIDc1LCA4MywgODMsIDY1LCAxMjgsIDc1LCA4MywgCi0gICAgNzMsIDEyOCwgNzUsIDgyLCA2OSwgNzcsIDY1LCA4MywgODQsIDczLCAxMjgsIDc1LCA4MiwgNjUsIDg0LCA3MywgNzcsIDc5LCAKLSAgICA4OSwgODAsIDc5LCA4MiwgODIsIDc5LCA3OSwgNzgsIDEyOCwgNzUsIDgyLCA2NSwgODQsIDczLCA3NywgNzksIDc1LCA3OSwgCi0gICAgODUsIDcwLCA3MywgODMsIDc3LCA2NSwgMTI4LCA3NSwgODIsIDY1LCA4NCwgNzMsIDc3LCA2NSwgODQsIDY1LCAxMjgsIDc1LCAKLSAgICA4MiwgNjUsIDg0LCA3MywgNzcsIDE5MywgNzUsIDgwLCA4NSwgMTI4LCA3NSwgODAsIDc5LCA4MSwgMTI4LCA3NSwgODAsIAotICAgIDc5LCA3OSwgMTI4LCA3NSwgODAsIDc5LCAxMjgsIDc1LCA4MCwgNzMsIDEyOCwgNzUsIDgwLCA2OSwgODUsIDg4LCAxMjgsIAotICAgIDc1LCA4MCwgNjksIDY5LCAxMjgsIDc1LCA4MCwgNjksIDEyOCwgNzUsIDgwLCA2NSwgODIsIDY1LCA4MSwgMTI4LCA3NSwgCi0gICAgODAsIDY1LCA3OCwgMTI4LCA3NSwgODAsIDY1LCAxMjgsIDc1LCA3OSwgODgsIDEyOCwgNzUsIDc5LCA4NiwgODUsIDg1LCAKLSAgICAxMjgsIDc1LCA3OSwgODQsIDc5LCAxMjgsIDc1LCA3OSwgODIsIDg1LCA3OCwgNjUsIDEyOCwgNzUsIDc5LCA4MiwgNzksIAotICAgIDc4LCA3MywgODMsIDEyOCwgNzUsIDc5LCA4MiwgNjksIDY1LCAyMDYsIDc1LCA3OSwgODIsIDY1LCA3OCwgNzMsIDE5NSwgCi0gICAgNzUsIDc5LCA4MSwgNzgsIDY4LCA3OSwgNzgsIDEyOCwgNzUsIDc5LCA4MCwgODAsIDY1LCAxMjgsIDc1LCA3OSwgODAsIAotICAgIDEyOCwgNzUsIDc5LCA3OSwgODAsIDc5LCAxMjgsIDc1LCA3OSwgNzksIDc3LCA4NSwgODUsIDg0LCAxMjgsIDc1LCA3OSwgCi0gICAgNzksIDEyOCwgNzUsIDc5LCA3OCwgODQsIDY5LCA4NiwgNzcsIDY1LCAxMjgsIDc1LCA3OSwgNzgsIDg0LCA2OSwgODYsIDc3LCAKLSAgICAxOTMsIDc1LCA3OSwgNzcsIDIwMSwgNzUsIDc5LCA3NywgNjYsIDg1LCA4NiwgNjUsIDEyOCwgNzUsIDc5LCA3NywgNjYsIAotICAgIDg1LCA4NiwgMTkzLCA3NSwgNzksIDc3LCA2NiwgMjEzLCA3NSwgNzksIDc1LCA3OSwgMTI4LCA3NSwgNzksIDc1LCAxMjgsIAotICAgIDc1LCA3OSwgMjAzLCA3NSwgNzksIDczLCAxMjgsIDc1LCA3OSwgMjAxLCA3NSwgNzksIDcyLCAxMjgsIDc1LCA3OSwgNzEsIAotICAgIDcyLCA3OSwgNzcsIDEyOCwgNzUsIDc5LCA2OSwgODQsIDEyOCwgNzUsIDc5LCA2NSwgNzYsIDY1LCAxMjgsIDc1LCA3OSwgCi0gICAgNjUsIDEyOCwgNzUsIDc4LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA3NSwgNzgsIDczLCA3MSwgNzIsIDIxMiwgNzUsIDc4LCAKLSAgICA3MywgNzAsIDY5LCAxMjgsIDc1LCA3OCwgNzMsIDcwLCAxOTcsIDc1LCA3NywgMTI4LCA3NSwgMjA1LCA3NSwgNzYsIDczLCAKLSAgICA4NCwgNzksIDc4LCAxMjgsIDc1LCA3NiwgNjUsIDgzLCA3NywgNjUsIDEyOCwgNzUsIDc2LCA2NSwgODMsIDc3LCAxOTMsIAotICAgIDc1LCA3NiwgNjUsIDEyOCwgNzUsIDc2LCAxMjgsIDc1LCA3NSwgODUsIDEyOCwgNzUsIDc1LCA3OSwgMTI4LCA3NSwgNzUsIAotICAgIDczLCAxMjgsIDc1LCA3NSwgNjksIDY5LCAxMjgsIDc1LCA3NSwgNjksIDEyOCwgNzUsIDc1LCA2NSwgMTI4LCA3NSwgNzUsIAotICAgIDEyOCwgNzUsIDc0LCA2OSwgMTI4LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgCi0gICAgMTI4LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgODMsIDczLCA3OSwgODMsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIAotICAgIDc1LCAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgNzUsIDczLCA4OSwgCi0gICAgNjksIDc5LCA3NSwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgNzgsIAotICAgIDczLCA2OSwgODUsIDc4LCAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA3NSwgNzIsIDczLCA2OSwgODUsIDc1LCAKLSAgICA3MiwgMTI4LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgNzUsIAotICAgIDczLCA4OSwgNjksIDc5LCAyMDMsIDc1LCA3MywgODgsIDEyOCwgNzUsIDczLCA4NCwgMTI4LCA3NSwgNzMsIDgzLCA4MywgCi0gICAgNzMsIDc4LCAxOTksIDc1LCA3MywgODMsIDgzLCAxMjgsIDc1LCA3MywgODMsIDIxMSwgNzUsIDczLCA4MywgNzMsIDc3LCAKLSAgICA1MywgMTI4LCA3NSwgNzMsIDgzLCA3MywgNzcsIDE4MSwgNzUsIDczLCA4MywgNzIsIDEyOCwgNzUsIDczLCA4MywgNjUsIAotICAgIDc2LCAxMjgsIDc1LCA3MywgODIsIDc5LCA4NywgNjUsIDg0LCA4NCwgNzksIDEyOCwgNzUsIDczLCA4MiwgNzksIDc3LCA2OSwgCi0gICAgNjksIDg0LCA3OSwgODIsIDg1LCAxMjgsIDc1LCA3MywgODIsIDc5LCA3MSwgODUsIDgyLCA2NSwgNzcsIDg1LCAxMjgsIDc1LCAKLSAgICA3MywgODIsIDc5LCAxMjgsIDc1LCA3MywgODIsIDcxLCA3MiwgNzMsIDIxOCwgNzUsIDczLCA4MSwgMTI4LCA3NSwgNzMsIAotICAgIDgwLCAxMjgsIDc1LCA3MywgMjA4LCA3NSwgNzMsIDc4LCA4MywgNzIsIDczLCA4MCwgMTI4LCA3NSwgNzMsIDc4LCA2OCwgCi0gICAgNjksIDgyLCA3MSwgNjUsIDgyLCA4NCwgNjksIDc4LCAxMjgsIDc1LCA3MywgNzcsIDc5LCA3OCwgNzksIDEyOCwgNzUsIDczLCAKLSAgICA3MywgMTI4LCA3NSwgNzMsIDcyLCAxMjgsIDc1LCA3MywgNjksIDg4LCAxMjgsIDc1LCA3MywgNjksIDgwLCAxMjgsIDc1LCAKLSAgICA3MywgNjksIDY5LCA3NywgMTI4LCA3NSwgNzMsIDY5LCAxMjgsIDc1LCA3MywgNjgsIDEyOCwgNzUsIDczLCAxOTYsIDc1LCAKLSAgICA3MywgNjcsIDc1LCAxMjgsIDc1LCA3MiwgOTAsIDEyOCwgNzUsIDcyLCA4NywgNjUsIDczLCAxMjgsIDc1LCA3MiwgODUsIAotICAgIDY5LCA3OCwgNDUsIDc2LCA4NSwgMTk3LCA3NSwgNzIsIDg1LCA2OSwgMjA2LCA3NSwgNzIsIDg1LCA2NSwgODQsIDEyOCwgCi0gICAgNzUsIDcyLCA3OSwgODUsIDEyOCwgNzUsIDcyLCA3OSwgMjEyLCA3NSwgNzIsIDc5LCA3OCwgMTI4LCA3NSwgNzIsIDc5LCAKLSAgICA3NywgODUsIDg0LCAxMjgsIDc1LCA3MiwgNzksIDEyOCwgNzUsIDcyLCAyMDcsIDc1LCA3MiwgNzMsIDg0LCAxMjgsIDc1LCAKLSAgICA3MiwgNzMsIDY5LCA4NSwgNzUsIDIwMCwgNzUsIDcyLCA3MywgMTI4LCA3NSwgNzIsIDcyLCA3OSwgMTI4LCA3NSwgNzIsIAotICAgIDcyLCA2NSwgMTI4LCA3NSwgNzIsIDY5LCA4NCwgNzIsIDEyOCwgNzUsIDcyLCA2OSwgNzMsIDEyOCwgNzUsIDcyLCA2OSwgCi0gICAgNjksIDEyOCwgNzUsIDcyLCA2OSwgMTI4LCA3NSwgNzIsIDY1LCA4MiwgNzksIDgzLCA3MiwgODQsIDcyLCAyMDEsIDc1LCAKLSAgICA3MiwgNjUsIDgyLCAxMjgsIDc1LCA3MiwgNjUsIDgwLCA3MiwgMTI4LCA3NSwgNzIsIDY1LCA3OCwgMTk5LCA3NSwgNzIsIAotICAgIDY1LCA3OCwgNjgsIDE5MywgNzUsIDcyLCA2NSwgNzgsIDEyOCwgNzUsIDcyLCA2NSwgNzcsIDg0LCAyMDEsIDc1LCA3MiwgCi0gICAgNjUsIDc1LCA2NSwgODMsIDgzLCA3MywgNjUsIDIwNiwgNzUsIDcyLCA2NSwgNzMsIDEyOCwgNzUsIDcyLCA2NSwgNzIsIAorICAgIDczLCA2NSwgNzYsIDczLCA5MCwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzYsIDY1LCA2NiwgNzMsIDY1LCAyMDQsIDc2LCA2NSwgCisgICAgNjYsIDY1LCA4NCwgMTI4LCA3NiwgNjUsIDY1LCA3OCwgNjUsIDY5LCAxMjgsIDc2LCA2NSwgNjUsIDc4LCAxMjgsIDc2LCAKKyAgICA2NSwgNjUsIDc3LCA4NSwgMTI4LCA3NiwgNjUsIDY1LCA3NywgMTI4LCA3NiwgNjUsIDY1LCA3MywgMTI4LCA3NiwgNDgsIAorICAgIDQ4LCA1NCwgNjUsIDEyOCwgNzYsIDQ4LCA0OCwgNTAsIDY1LCAxMjgsIDc2LCA0NSwgODQsIDg5LCA4MCwgMTk3LCA3NiwgCisgICAgNDUsIDgzLCA3MiwgNjUsIDgwLCA2OSwgMTk2LCA3NSwgODksIDg1LCA4MiwgNzMsIDczLCAxMjgsIDc1LCA4OSwgODUsIAorICAgIDEyOCwgNzUsIDg5LCA3OSwgMTI4LCA3NSwgODksIDc2LCA3MywgODMsIDc3LCA2NSwgMTI4LCA3NSwgODksIDczLCAxMjgsIAorICAgIDc1LCA4OSwgNjksIDEyOCwgNzUsIDg5LCA2NSwgODQsIDcyLCA3OSwgMjExLCA3NSwgODksIDY1LCA2NSwgMTI4LCA3NSwgCisgICAgODksIDY1LCAxMjgsIDc1LCA4OCwgODcsIDczLCAxMjgsIDc1LCA4OCwgODcsIDY5LCA2OSwgMTI4LCA3NSwgODgsIDg3LCAKKyAgICA2OSwgMTI4LCA3NSwgODgsIDg3LCA2NSwgNjUsIDEyOCwgNzUsIDg4LCA4NywgNjUsIDEyOCwgNzUsIDg4LCA4NSwgMTI4LCAKKyAgICA3NSwgODgsIDc5LCAxMjgsIDc1LCA4OCwgNzMsIDEyOCwgNzUsIDg4LCA2OSwgNjksIDEyOCwgNzUsIDg4LCA2OSwgMTI4LCAKKyAgICA3NSwgODgsIDY1LCA2NSwgMTI4LCA3NSwgODgsIDY1LCAxMjgsIDc1LCA4NywgODUsIDUxLCA0OSwgNTYsIDEyOCwgNzUsIAorICAgIDg3LCA3OSwgNzksIDEyOCwgNzUsIDg3LCA3OSwgMTI4LCA3NSwgODcsIDczLCA3MywgMTI4LCA3NSwgODcsIDczLCAxMjgsIAorICAgIDc1LCA4NywgNjksIDY5LCAxMjgsIDc1LCA4NywgNjksIDEyOCwgNzUsIDg3LCA2NSwgODksIDEyOCwgNzUsIDg3LCA2NSwgCisgICAgNjksIDg0LCAxMjgsIDc1LCA4NywgNjUsIDY1LCAxMjgsIDc1LCA4NiwgNjUsIDEyOCwgNzUsIDg2LCAxMjgsIDc1LCA4NSwgCisgICAgODgsIDEyOCwgNzUsIDg1LCA4NSwgNzIsIDEyOCwgNzUsIDg1LCA4NCwgMTI4LCA3NSwgODUsIDgzLCA3NywgNjUsIDEyOCwgCisgICAgNzUsIDg1LCA4MywgNzIsIDg1LCA1MCwgMTI4LCA3NSwgODUsIDgyLCA4OCwgMTI4LCA3NSwgODUsIDgyLCA4NSwgOTAsIDY5LCAKKyAgICA3MywgODIsIDc5LCAxMjgsIDc1LCA4NSwgODIsIDg0LCAxMjgsIDc1LCA4NSwgODIsIDc5LCA3OSwgNzgsIDY5LCAxMjgsIAorICAgIDc1LCA4NSwgODIsIDEyOCwgNzUsIDg1LCAyMTAsIDc1LCA4NSwgODEsIDEyOCwgNzUsIDg1LCA3OSwgODgsIDEyOCwgNzUsIAorICAgIDg1LCA3OSwgODAsIDEyOCwgNzUsIDg1LCA3OSwgMjA4LCA3NSwgODUsIDc5LCA3NywgMTI4LCA3NSwgODUsIDc5LCAxMjgsIAorICAgIDc1LCA4NSwgNzgsIDcxLCAxMjgsIDc1LCA4NSwgNzgsIDY4LCA2OCwgNjUsIDc2LCA3MywgODksIDY1LCAxMjgsIDc1LCA4NSwgCisgICAgNzYsIDEyOCwgNzUsIDg1LCAyMDQsIDc1LCA4NSwgNjksIDg0LCAxMjgsIDc1LCA4NSwgNTUsIDEyOCwgNzUsIDg1LCA1MiwgCisgICAgMTI4LCA3NSwgODUsIDE4MCwgNzUsIDg1LCA1MSwgMTI4LCA3NSwgODUsIDE3OSwgNzUsIDg0LCAxMjgsIDc1LCA4MywgODMsIAorICAgIDg1LCA4NSwgMTI4LCA3NSwgODMsIDgzLCA4NSwgMTI4LCA3NSwgODMsIDgzLCA3OSwgNzksIDEyOCwgNzUsIDgzLCA4MywgCisgICAgNzksIDEyOCwgNzUsIDgzLCA4MywgNzMsIDczLCAxMjgsIDc1LCA4MywgODMsIDczLCAxMjgsIDc1LCA4MywgODMsIDY5LCAKKyAgICA2OSwgMTI4LCA3NSwgODMsIDgzLCA2OSwgMTI4LCA3NSwgODMsIDgzLCA2NSwgODUsIDEyOCwgNzUsIDgzLCA4MywgNjUsIAorICAgIDczLCAxMjgsIDc1LCA4MywgODMsIDY1LCA2NSwgMTI4LCA3NSwgODMsIDgzLCA2NSwgMTI4LCA3NSwgODMsIDgzLCAxMjgsIAorICAgIDc1LCA4MywgNzMsIDEyOCwgNzUsIDgyLCA2OSwgNzcsIDY1LCA4MywgODQsIDczLCAxMjgsIDc1LCA4MiwgNjUsIDg0LCA3MywgCisgICAgNzcsIDc5LCA4OSwgODAsIDc5LCA4MiwgODIsIDc5LCA3OSwgNzgsIDEyOCwgNzUsIDgyLCA2NSwgODQsIDczLCA3NywgNzksIAorICAgIDc1LCA3OSwgODUsIDcwLCA3MywgODMsIDc3LCA2NSwgMTI4LCA3NSwgODIsIDY1LCA4NCwgNzMsIDc3LCA2NSwgODQsIDY1LCAKKyAgICAxMjgsIDc1LCA4MiwgNjUsIDg0LCA3MywgNzcsIDE5MywgNzUsIDgwLCA4NSwgMTI4LCA3NSwgODAsIDc5LCA4MSwgMTI4LCAKKyAgICA3NSwgODAsIDc5LCA3OSwgMTI4LCA3NSwgODAsIDc5LCAxMjgsIDc1LCA4MCwgNzMsIDEyOCwgNzUsIDgwLCA2OSwgODUsIAorICAgIDg4LCAxMjgsIDc1LCA4MCwgNjksIDY5LCAxMjgsIDc1LCA4MCwgNjksIDEyOCwgNzUsIDgwLCA2NSwgODIsIDY1LCA4MSwgCisgICAgMTI4LCA3NSwgODAsIDY1LCA3OCwgMTI4LCA3NSwgODAsIDY1LCAxMjgsIDc1LCA3OSwgODgsIDEyOCwgNzUsIDc5LCA4NiwgCisgICAgODUsIDg1LCAxMjgsIDc1LCA3OSwgODQsIDc5LCAxMjgsIDc1LCA3OSwgODIsIDg1LCA3OCwgNjUsIDEyOCwgNzUsIDc5LCAKKyAgICA4MiwgNzksIDc4LCA3MywgODMsIDEyOCwgNzUsIDc5LCA4MiwgNjksIDY1LCAyMDYsIDc1LCA3OSwgODIsIDY1LCA3OCwgNzMsIAorICAgIDE5NSwgNzUsIDc5LCA4MSwgNzgsIDY4LCA3OSwgNzgsIDEyOCwgNzUsIDc5LCA4MCwgODAsIDY1LCAxMjgsIDc1LCA3OSwgCisgICAgODAsIDEyOCwgNzUsIDc5LCA3OSwgODAsIDc5LCAxMjgsIDc1LCA3OSwgNzksIDc3LCA4NSwgODUsIDg0LCAxMjgsIDc1LCAKKyAgICA3OSwgNzksIDEyOCwgNzUsIDc5LCA3OCwgODQsIDY5LCA4NiwgNzcsIDY1LCAxMjgsIDc1LCA3OSwgNzgsIDg0LCA2OSwgODYsIAorICAgIDc3LCAxOTMsIDc1LCA3OSwgNzcsIDIwMSwgNzUsIDc5LCA3NywgNjYsIDg1LCA4NiwgNjUsIDEyOCwgNzUsIDc5LCA3NywgCisgICAgNjYsIDg1LCA4NiwgMTkzLCA3NSwgNzksIDc3LCA2NiwgMjEzLCA3NSwgNzksIDc1LCA3OSwgMTI4LCA3NSwgNzksIDc1LCAKKyAgICAxMjgsIDc1LCA3OSwgMjAzLCA3NSwgNzksIDczLCAxMjgsIDc1LCA3OSwgMjAxLCA3NSwgNzksIDcyLCAxMjgsIDc1LCA3OSwgCisgICAgNzEsIDcyLCA3OSwgNzcsIDEyOCwgNzUsIDc5LCA2OSwgODQsIDEyOCwgNzUsIDc5LCA2NSwgNzYsIDY1LCAxMjgsIDc1LCAKKyAgICA3OSwgNjUsIDEyOCwgNzUsIDc4LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA3NSwgNzgsIDczLCA3MSwgNzIsIDIxMiwgNzUsIAorICAgIDc4LCA3MywgNzAsIDY5LCAxMjgsIDc1LCA3OCwgNzMsIDcwLCAxOTcsIDc1LCA3NywgMTI4LCA3NSwgMjA1LCA3NSwgNzYsIAorICAgIDczLCA4NCwgNzksIDc4LCAxMjgsIDc1LCA3NiwgNjUsIDgzLCA3NywgNjUsIDEyOCwgNzUsIDc2LCA2NSwgODMsIDc3LCAKKyAgICAxOTMsIDc1LCA3NiwgNjUsIDEyOCwgNzUsIDc2LCAxMjgsIDc1LCA3NSwgODUsIDEyOCwgNzUsIDc1LCA3OSwgMTI4LCA3NSwgCisgICAgNzUsIDczLCAxMjgsIDc1LCA3NSwgNjksIDY5LCAxMjgsIDc1LCA3NSwgNjksIDEyOCwgNzUsIDc1LCA2NSwgMTI4LCA3NSwgCisgICAgNzUsIDEyOCwgNzUsIDc0LCA2OSwgMTI4LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgODQsIDczLCA3NSwgNjksIDg1LCAKKyAgICA4NCwgMTI4LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgODMsIDczLCA3OSwgODMsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgCisgICAgNzksIDc1LCAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgNzUsIDczLCAKKyAgICA4OSwgNjksIDc5LCA3NSwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgCisgICAgNzgsIDczLCA2OSwgODUsIDc4LCAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA3NSwgNzIsIDczLCA2OSwgODUsIAorICAgIDc1LCA3MiwgMTI4LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgCisgICAgNzUsIDczLCA4OSwgNjksIDc5LCAyMDMsIDc1LCA3MywgODgsIDEyOCwgNzUsIDczLCA4NCwgMTI4LCA3NSwgNzMsIDgzLCAKKyAgICA4MywgNzMsIDc4LCAxOTksIDc1LCA3MywgODMsIDgzLCAxMjgsIDc1LCA3MywgODMsIDIxMSwgNzUsIDczLCA4MywgNzMsIAorICAgIDc3LCA1MywgMTI4LCA3NSwgNzMsIDgzLCA3MywgNzcsIDE4MSwgNzUsIDczLCA4MywgNzIsIDEyOCwgNzUsIDczLCA4MywgCisgICAgNjUsIDc2LCAxMjgsIDc1LCA3MywgODIsIDc5LCA4NywgNjUsIDg0LCA4NCwgNzksIDEyOCwgNzUsIDczLCA4MiwgNzksIDc3LCAKKyAgICA2OSwgNjksIDg0LCA3OSwgODIsIDg1LCAxMjgsIDc1LCA3MywgODIsIDc5LCA3MSwgODUsIDgyLCA2NSwgNzcsIDg1LCAxMjgsIAorICAgIDc1LCA3MywgODIsIDc5LCAxMjgsIDc1LCA3MywgODIsIDcxLCA3MiwgNzMsIDIxOCwgNzUsIDczLCA4MSwgMTI4LCA3NSwgCisgICAgNzMsIDgwLCAxMjgsIDc1LCA3MywgMjA4LCA3NSwgNzMsIDc4LCA4MywgNzIsIDczLCA4MCwgMTI4LCA3NSwgNzMsIDc4LCAKKyAgICA2OCwgNjksIDgyLCA3MSwgNjUsIDgyLCA4NCwgNjksIDc4LCAxMjgsIDc1LCA3MywgNzcsIDc5LCA3OCwgNzksIDEyOCwgNzUsIAorICAgIDczLCA3MywgMTI4LCA3NSwgNzMsIDcyLCAxMjgsIDc1LCA3MywgNjksIDg4LCAxMjgsIDc1LCA3MywgNjksIDgwLCAxMjgsIAorICAgIDc1LCA3MywgNjksIDY5LCA3NywgMTI4LCA3NSwgNzMsIDY5LCAxMjgsIDc1LCA3MywgNjgsIDEyOCwgNzUsIDczLCAxOTYsIAorICAgIDc1LCA3MywgNjcsIDc1LCAxMjgsIDc1LCA3MiwgOTAsIDEyOCwgNzUsIDcyLCA4NywgNjUsIDczLCAxMjgsIDc1LCA3MiwgCisgICAgODUsIDY5LCA3OCwgNDUsIDc2LCA4NSwgMTk3LCA3NSwgNzIsIDg1LCA2OSwgMjA2LCA3NSwgNzIsIDg1LCA2OCwgNjUsIDc3LCAKKyAgICAxMjgsIDc1LCA3MiwgODUsIDY1LCA4NCwgMTI4LCA3NSwgNzIsIDc5LCA4NSwgMTI4LCA3NSwgNzIsIDc5LCAyMTIsIDc1LCAKKyAgICA3MiwgNzksIDc4LCAxMjgsIDc1LCA3MiwgNzksIDc3LCA4NSwgODQsIDEyOCwgNzUsIDcyLCA3OSwgMTI4LCA3NSwgNzIsIAorICAgIDIwNywgNzUsIDcyLCA3NywgMjEzLCA3NSwgNzIsIDczLCA4NCwgMTI4LCA3NSwgNzIsIDczLCA3OCwgODksIDY1LCAxMjgsIAorICAgIDc1LCA3MiwgNzMsIDY5LCA4NSwgNzUsIDIwMCwgNzUsIDcyLCA3MywgMTI4LCA3NSwgNzIsIDcyLCA3OSwgMTI4LCA3NSwgCisgICAgNzIsIDcyLCA2NSwgMTI4LCA3NSwgNzIsIDY5LCA4NCwgNzIsIDEyOCwgNzUsIDcyLCA2OSwgNzMsIDEyOCwgNzUsIDcyLCAKKyAgICA2OSwgNjksIDEyOCwgNzUsIDcyLCA2OSwgMTI4LCA3NSwgNzIsIDY1LCA4MiwgNzksIDgzLCA3MiwgODQsIDcyLCAyMDEsIAorICAgIDc1LCA3MiwgNjUsIDgyLCAxMjgsIDc1LCA3MiwgNjUsIDgwLCA3MiwgMTI4LCA3NSwgNzIsIDY1LCA3OCwgMTk5LCA3NSwgCisgICAgNzIsIDY1LCA3OCwgNjgsIDE5MywgNzUsIDcyLCA2NSwgNzgsIDEyOCwgNzUsIDcyLCA2NSwgNzcsIDg0LCAyMDEsIDc1LCAKKyAgICA3MiwgNjUsIDc1LCA2NSwgODMsIDgzLCA3MywgNjUsIDIwNiwgNzUsIDcyLCA2NSwgNzMsIDEyOCwgNzUsIDcyLCA2NSwgNzIsIAogICAgIDEyOCwgNzUsIDcyLCA2NSwgMjAwLCA3NSwgNzIsIDY1LCA2NSwgMTI4LCA3NSwgNzEsIDEyOCwgNzUsIDY5LCA4OSwgNjcsIAogICAgIDY1LCA4MCwgMTI4LCA3NSwgNjksIDg5LCA2NywgNjUsIDIwOCwgNzUsIDY5LCA4OSwgNjYsIDc5LCA2NSwgODIsIDY4LCAKICAgICAxMjgsIDc1LCA2OSwgODgsIDEyOCwgNzUsIDY5LCA4NSwgODksIDY5LCA4NSwgODgsIDEyOCwgNzUsIDY5LCA4NSwgODMsIApAQCAtMjE0MSw3MSArMjI4Nyw3NCBAQAogICAgIDY5LCA2OSwgODAsIDczLCA3OCwgMTk5LCA3NSwgNjksIDY5LCA3OCwgNzEsIDEyOCwgNzUsIDY3LCA2NSwgNzYsIDEyOCwgCiAgICAgNzUsIDY2LCAxMjgsIDc1LCA2NSwgOTAsIDY1LCA3NSwgMjAwLCA3NSwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCAKICAgICA3NSwgNjUsIDg5LCA2NSwgMjAwLCA3NSwgNjUsIDg4LCAxMjgsIDc1LCA2NSwgODcsIDczLCAxMjgsIDc1LCA2NSwgODYsIAotICAgIDg5LCA3NSwgNjUsIDEyOCwgNzUsIDY1LCA4NSwgNzgsIDY1LCAxMjgsIDc1LCA2NSwgODUsIDIwNiwgNzUsIDY1LCA4NCwgCi0gICAgNzksIDEyOCwgNzUsIDY1LCA4NCwgNzIsIDczLCA4MywgODQsIDczLCAxMjgsIDc1LCA2NSwgODQsIDcyLCA2NSwgNzUsIAotICAgIDE5MywgNzUsIDY1LCA4NCwgNjUsIDg2LCA2NSwgODMsIDc3LCA2NSwgMTI4LCA3NSwgNjUsIDg0LCA2NSwgODYsIDE5MywgCi0gICAgNzUsIDY1LCA4NCwgNjUsIDc1LCA2NSwgNzgsIDY1LCA0NSwgNzIsIDczLCA4MiwgNjUsIDcxLCA2NSwgNzgsIDE5MywgNzUsIAotICAgIDY1LCA4MywgODIsIDY1LCA4NCwgNjUsIDc4LCAxMjgsIDc1LCA2NSwgODMsIDgyLCA2NSwgODQsIDY1LCAyMDYsIDc1LCA2NSwgCi0gICAgODMsIDgyLCA2NSwgMTI4LCA3NSwgNjUsIDgzLCA4MiwgMTkzLCA3NSwgNjUsIDgzLCA3NSwgNjUsIDc2LCAxMjgsIDc1LCAKLSAgICA2NSwgODMsIDc1LCA2NSwgMjA0LCA3NSwgNjUsIDgzLCA3MiwgNzcsIDczLCA4MiwgMjAxLCA3NSwgNjUsIDgyLCA4MywgNzIsIAotICAgIDY1LCA3OCwgNjUsIDEyOCwgNzUsIDY1LCA4MiwgNzksIDgyLCA3MywgNzMsIDEyOCwgNzUsIDY1LCA4MiwgMjA3LCA3NSwgCi0gICAgNjUsIDgyLCA2OSwgMjA2LCA3NSwgNjUsIDgyLCA2NSwgODQsIDg0LCA3OSwgMTI4LCA3NSwgNjUsIDgyLCA2NSwgNzgsIAotICAgIDEyOCwgNzUsIDY1LCA4MCwgODksIDY5LCA3OSwgODUsIDc4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgwLCA3MywgNjksIDg1LCAKLSAgICA4MCwgMTI4LCA3NSwgNjUsIDgwLCA4OSwgNjksIDc5LCA4NSwgNzgsIDgyLCA3MywgNjksIDg1LCA3NiwgMTI4LCA3NSwgNjUsIAotICAgIDgwLCA4OSwgNjksIDc5LCA4NSwgNzgsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIDcyLCAxMjgsIDc1LCA2NSwgODAsIDg5LCAKLSAgICA2OSwgNzksIDg1LCA3OCwgNzcsIDczLCA2OSwgODUsIDc3LCAxMjgsIDc1LCA2NSwgODAsIDgwLCA2NSwgMTI4LCA3NSwgNjUsIAotICAgIDgwLCA4MCwgMTkzLCA3NSwgNjUsIDgwLCA3OSwgMTI4LCA3NSwgNjUsIDgwLCA3MiwgMTI4LCA3NSwgNjUsIDgwLCA2NSwgCi0gICAgNzYsIDEyOCwgNzUsIDY1LCA4MCwgNjUsIDEyOCwgNzUsIDY1LCA3OCwgODQsIDY1LCA3NCwgMTkzLCA3NSwgNjUsIDc4LCAKLSAgICA3MSwgMTI4LCA3NSwgNjUsIDc4LCAxOTksIDc1LCA2NSwgNzgsIDY1LCA3NSwgNzksIDEyOCwgNzUsIDY1LCA3NywgNTIsIAotICAgIDEyOCwgNzUsIDY1LCA3NywgNTAsIDEyOCwgNzUsIDY1LCA3NywgMTI4LCA3NSwgNjUsIDc1LCA3OSwgMTI4LCA3NSwgNjUsIAotICAgIDc1LCA2NSwgNjYsIDY1LCA4NCwgMTI4LCA3NSwgNjUsIDc1LCAxMjgsIDc1LCA2NSwgMjAzLCA3NSwgNjUsIDczLCA4MiwgCi0gICAgNzMsIDEyOCwgNzUsIDY1LCA3MywgMTI4LCA3NSwgNjUsIDIwMSwgNzUsIDY1LCA3MCwgNjUsIDEyOCwgNzUsIDY1LCA3MCwgCi0gICAgMTI4LCA3NSwgNjUsIDE5OCwgNzUsIDY1LCA2OCwgNTMsIDEyOCwgNzUsIDY1LCA2OCwgMTgxLCA3NSwgNjUsIDY4LCA1MiwgCi0gICAgMTI4LCA3NSwgNjUsIDY4LCA1MSwgMTI4LCA3NSwgNjUsIDY4LCAxNzksIDc1LCA2NSwgNjgsIDUwLCAxMjgsIDc1LCA2NSwgCi0gICAgNjgsIDEyOCwgNzUsIDY1LCA2NiwgMTkzLCA3NSwgNjUsIDY2LCAxMjgsIDc1LCA2NSwgNjUsIDczLCAxMjgsIDc1LCA2NSwgCi0gICAgNjUsIDcwLCA4NSwgMTI4LCA3NSwgNjUsIDY1LCA3MCwgMTI4LCA3NSwgNjUsIDUwLCAxMjgsIDc1LCA2NSwgMTc4LCA3NSwgCi0gICAgNDgsIDQ4LCA1NiwgMTI4LCA3NSwgNDgsIDQ4LCA1NSwgMTI4LCA3NSwgNDgsIDQ4LCA1NCwgMTI4LCA3NSwgNDgsIDQ4LCAKLSAgICA1MywgMTI4LCA3NSwgNDgsIDQ4LCA1MiwgMTI4LCA3NSwgNDgsIDQ4LCA1MSwgMTI4LCA3NSwgNDgsIDQ4LCA1MCwgMTI4LCAKLSAgICA3NSwgNDgsIDQ4LCA0OSwgMTI4LCA3NCwgODcsIDY1LCAxMjgsIDc0LCA4NSwgODUsIDEyOCwgNzQsIDg1LCA4NCwgMTI4LCAKLSAgICA3NCwgODUsIDgwLCA3MywgODQsIDY5LCA4MiwgMTI4LCA3NCwgODUsIDc5LCA4NCwgMTI4LCA3NCwgODUsIDc5LCA4MCwgCi0gICAgMTI4LCA3NCwgODUsIDc4LCA3OSwgMTI4LCA3NCwgODUsIDc4LCA2OSwgMTI4LCA3NCwgODUsIDc2LCA4OSwgMTI4LCA3NCwgCi0gICAgODUsIDY5LCA4NSwgNzMsIDEyOCwgNzQsIDg1LCA2OCwgODUsIDc2LCAxMjgsIDc0LCA4NSwgNjgsIDcxLCA2OSwgMTI4LCAKLSAgICA3NCwgODUsIDY4LCA2OSwgNzksIDQ1LCA4MywgODAsIDY1LCA3OCwgNzMsIDgzLCAyMDAsIDc0LCA3OSwgODksIDc5LCA4NSwgCi0gICAgMjExLCA3NCwgNzksIDg5LCAxMjgsIDc0LCA3OSwgODYsIDY5LCAxMjgsIDc0LCA3OSwgMjEyLCA3NCwgNzksIDc4LCA3MSwgCi0gICAgMTI4LCA3NCwgNzksIDc4LCAxOTMsIDc0LCA3OSwgNzUsIDY5LCA4MiwgMTI4LCA3NCwgNzksIDczLCA3OCwgNjksIDY4LCAKLSAgICAxMjgsIDc0LCA3OSwgNzMsIDc4LCAxMjgsIDc0LCA3OSwgNjUsIDEyOCwgNzQsIDc0LCA4OSwgODgsIDEyOCwgNzQsIDc0LCAKLSAgICA4OSwgODQsIDEyOCwgNzQsIDc0LCA4OSwgODAsIDEyOCwgNzQsIDc0LCA4OSwgMTI4LCA3NCwgNzQsIDg1LCA4OCwgMTI4LCAKLSAgICA3NCwgNzQsIDg1LCA4NCwgMTI4LCA3NCwgNzQsIDg1LCA4MiwgODgsIDEyOCwgNzQsIDc0LCA4NSwgODIsIDEyOCwgNzQsIAotICAgIDc0LCA4NSwgODAsIDEyOCwgNzQsIDc0LCA4NSwgNzksIDg4LCAxMjgsIDc0LCA3NCwgODUsIDc5LCA4MCwgMTI4LCA3NCwgCi0gICAgNzQsIDg1LCA3OSwgMTI4LCA3NCwgNzQsIDg1LCAxMjgsIDc0LCA3NCwgNzksIDg4LCAxMjgsIDc0LCA3NCwgNzksIDg0LCAKLSAgICAxMjgsIDc0LCA3NCwgNzksIDgwLCAxMjgsIDc0LCA3NCwgNzksIDEyOCwgNzQsIDc0LCA3MywgODgsIDEyOCwgNzQsIDc0LCAKLSAgICA3MywgODQsIDEyOCwgNzQsIDc0LCA3MywgODAsIDEyOCwgNzQsIDc0LCA3MywgNjksIDg4LCAxMjgsIDc0LCA3NCwgNzMsIAotICAgIDY5LCA4NCwgMTI4LCA3NCwgNzQsIDczLCA2OSwgODAsIDEyOCwgNzQsIDc0LCA3MywgNjksIDEyOCwgNzQsIDc0LCA3MywgCi0gICAgMTI4LCA3NCwgNzQsIDY5LCA2OSwgMTI4LCA3NCwgNzQsIDY5LCAxMjgsIDc0LCA3NCwgNjUsIDEyOCwgNzQsIDczLCA3NiwgCi0gICAgMTI4LCA3NCwgNzMsIDcyLCA4NiwgNjUsIDc3LCA4NSwgNzYsIDczLCA4OSwgNjUsIDEyOCwgNzQsIDczLCA2NSwgMTI4LCAKLSAgICA3NCwgNzIsIDc5LCAxMjgsIDc0LCA3MiwgNjksIDcyLCAxMjgsIDc0LCA3MiwgNjUsIDc4LCAxMjgsIDc0LCA3MiwgNjUsIAotICAgIDc3LCAxMjgsIDc0LCA3MiwgNjUsIDEyOCwgNzQsIDY5LCA4NSwgMTI4LCA3NCwgNjksIDgyLCA4NSwgODMsIDY1LCA3NiwgCi0gICAgNjksIDc3LCAxMjgsIDc0LCA2OSwgODIsIDY1LCAyMDYsIDc0LCA2OSwgODIsIDY1LCAxMjgsIDc0LCA2OSwgODIsIDEyOCwgCi0gICAgNzQsIDY5LCA3MiwgMTI4LCA3NCwgNjksIDIwMCwgNzQsIDY5LCA3MSwgNzksIDcxLCA2NSwgNzgsIDEyOCwgNzQsIDY5LCAKLSAgICA2OSwgNzcsIDEyOCwgNzQsIDY5LCA2NSwgNzgsIDgzLCAxMjgsIDc0LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIAotICAgIDc0LCA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA3NCwgNjUsIDgyLCAxMjgsIDc0LCA2NSwgODAsIDY1LCA3OCwgCi0gICAgNjksIDgzLCAxOTcsIDc0LCA2NSwgODAsIDY1LCA3OCwgMTI4LCA3NCwgNjUsIDc4LCA4NSwgNjUsIDgyLCA4OSwgMTI4LCAKLSAgICA3NCwgNjUsIDc2LCA3NiwgNjUsIDc0LCA2NSwgNzYsIDY1LCA3NiwgNzksIDg1LCA3MiwgNzksIDg1LCAxMjgsIDc0LCA2NSwgCi0gICAgNjgsIDY5LCAxMjgsIDc0LCA2NSwgNjcsIDc1LCA0NSwgNzksIDQ1LCA3NiwgNjUsIDc4LCA4NCwgNjksIDgyLCA3OCwgMTI4LCAKLSAgICA3NCwgNjUsIDY3LCAyMDMsIDc0LCA0NSwgODMsIDczLCA3NywgODAsIDc2LCA3MywgNzAsIDczLCA2OSwgMTk2LCAyMDIsIAotICAgIDczLCA5MCwgNzIsIDczLCA4NCwgODMsIDY1LCAxMjgsIDczLCA5MCwgNzIsIDczLCA4NCwgODMsIDE5MywgNzMsIDkwLCA3MiwgCi0gICAgNjksIDEyOCwgNzMsIDkwLCA2NSwgNzUsIDY1LCA4OSwgMTkzLCA3MywgODksIDY5LCA3NSwgMTI4LCA3MywgODksIDY1LCAKLSAgICA3OCwgNzgsIDY1LCAxMjgsIDczLCA4NSwgNzQsIDY1LCAxMjgsIDczLCA4NSwgMTI4LCA3MywgODQsIDIxMSwgNzMsIDg0LCAKLSAgICA2OSwgODIsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDczLCA4NCwgNjksIDc3LCAxMjgsIDczLCA4MywgODMsIDcyLCA2NSwgODIsIAotICAgIDEyOCwgNzMsIDgzLCA3OSwgNzgsIDEyOCwgNzMsIDgzLCA3OSwgMjA2LCA3MywgODMsIDY5LCA3OCwgNDUsIDczLCA4MywgCi0gICAgNjksIDc4LCAxMjgsIDczLCA4MywgNjUsIDc1LCA3MywgMTkzLCA3MywgODMsIDQ1LCA4MCwgNzMsIDc2LCA3NiwgNjUsIAotICAgIDEyOCwgNzMsIDgyLCA4NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDczLCA4MiwgODUsIDg1LCA4OSwgNjUsIDc4LCA3OCwgCi0gICAgNjUsIDEyOCwgNzMsIDgyLCA3OSwgNzgsIDQ1LCA2NywgNzksIDgwLCA4MCwgNjksIDIxMCwgNzMsIDgyLCA3OSwgNzgsIAotICAgIDEyOCwgNzMsIDc5LCA4NCwgNzMsIDcwLCA3MywgNjksIDE5NiwgNzMsIDc5LCA4NCwgNjUsIDg0LCA2OSwgMTk2LCA3MywgCi0gICAgNzksIDg0LCA2NSwgMTI4LCA3MywgNzksIDg0LCAxOTMsIDczLCA3OSwgODIsIDEyOCwgNzMsIDc5LCA2OCwgNzIsIDY1LCAKLSAgICA2OCwgNzIsIDEyOCwgNzMsIDc4LCA4NiwgNzMsIDgzLCA3MywgNjYsIDc2LCAxOTcsIDczLCA3OCwgODYsIDY5LCA4MiwgODQsIAotICAgIDY5LCA2OCwgMTI4LCA3MywgNzgsIDg2LCA2OSwgODIsIDg0LCA2OSwgMTk2LCA3MywgNzgsIDg2LCA2OSwgODIsIDgzLCAKLSAgICAxOTcsIDczLCA3OCwgODQsIDczLCAxMjgsIDczLCA3OCwgODQsIDY5LCA4MiwgODMsIDg5LCA3NiwgNzYsIDY1LCA2NiwgNzMsIAorICAgIDg5LCA3NSwgNjUsIDEyOCwgNzUsIDY1LCA4NSwgNzgsIDY1LCAxMjgsIDc1LCA2NSwgODUsIDIwNiwgNzUsIDY1LCA4NSwgCisgICAgMTI4LCA3NSwgNjUsIDg0LCA3OSwgMTI4LCA3NSwgNjUsIDg0LCA3MiwgNzMsIDgzLCA4NCwgNzMsIDEyOCwgNzUsIDY1LCAKKyAgICA4NCwgNzIsIDY1LCA3NSwgMTkzLCA3NSwgNjUsIDg0LCA2NSwgODYsIDY1LCA4MywgNzcsIDY1LCAxMjgsIDc1LCA2NSwgODQsIAorICAgIDY1LCA4NiwgMTkzLCA3NSwgNjUsIDg0LCA2NSwgNzUsIDY1LCA3OCwgNjUsIDQ1LCA3MiwgNzMsIDgyLCA2NSwgNzEsIDY1LCAKKyAgICA3OCwgMTkzLCA3NSwgNjUsIDgzLCA4MiwgNjUsIDg0LCA2NSwgNzgsIDEyOCwgNzUsIDY1LCA4MywgODIsIDY1LCA4NCwgNjUsIAorICAgIDIwNiwgNzUsIDY1LCA4MywgODIsIDY1LCAxMjgsIDc1LCA2NSwgODMsIDgyLCAxOTMsIDc1LCA2NSwgODMsIDc1LCA2NSwgCisgICAgNzYsIDEyOCwgNzUsIDY1LCA4MywgNzUsIDY1LCAyMDQsIDc1LCA2NSwgODMsIDcyLCA3NywgNzMsIDgyLCAyMDEsIDc1LCAKKyAgICA2NSwgODIsIDgzLCA3MiwgNjUsIDc4LCA2NSwgMTI4LCA3NSwgNjUsIDgyLCA3OSwgODIsIDczLCA3MywgMTI4LCA3NSwgNjUsIAorICAgIDgyLCAyMDcsIDc1LCA2NSwgODIsIDY5LCAyMDYsIDc1LCA2NSwgODIsIDY1LCA4NCwgODQsIDc5LCAxMjgsIDc1LCA2NSwgCisgICAgODIsIDY1LCA3OCwgMTI4LCA3NSwgNjUsIDgwLCA4OSwgNjksIDc5LCA4NSwgNzgsIDgzLCA4MywgNjUsIDc4LCA3MSwgODAsIAorICAgIDczLCA2OSwgODUsIDgwLCAxMjgsIDc1LCA2NSwgODAsIDg5LCA2OSwgNzksIDg1LCA3OCwgODIsIDczLCA2OSwgODUsIDc2LCAKKyAgICAxMjgsIDc1LCA2NSwgODAsIDg5LCA2OSwgNzksIDg1LCA3OCwgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDEyOCwgNzUsIAorICAgIDY1LCA4MCwgODksIDY5LCA3OSwgODUsIDc4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDEyOCwgNzUsIDY1LCA4MCwgODAsIDY1LCAKKyAgICAxMjgsIDc1LCA2NSwgODAsIDgwLCAxOTMsIDc1LCA2NSwgODAsIDc5LCAxMjgsIDc1LCA2NSwgODAsIDcyLCAxMjgsIDc1LCAKKyAgICA2NSwgODAsIDY1LCA3NiwgMTI4LCA3NSwgNjUsIDgwLCA2NSwgMTI4LCA3NSwgNjUsIDc4LCA4NCwgNjUsIDc0LCAxOTMsIAorICAgIDc1LCA2NSwgNzgsIDcxLCAxMjgsIDc1LCA2NSwgNzgsIDE5OSwgNzUsIDY1LCA3OCwgNjUsIDc1LCA3OSwgMTI4LCA3NSwgCisgICAgNjUsIDc3LCA1MiwgMTI4LCA3NSwgNjUsIDc3LCA1MCwgMTI4LCA3NSwgNjUsIDc3LCAxMjgsIDc1LCA2NSwgNzUsIDc5LCAKKyAgICAxMjgsIDc1LCA2NSwgNzUsIDY1LCA2NiwgNjUsIDg0LCAxMjgsIDc1LCA2NSwgNzUsIDEyOCwgNzUsIDY1LCAyMDMsIDc1LCAKKyAgICA2NSwgNzMsIDg0LCA3MiwgMjAxLCA3NSwgNjUsIDczLCA4MiwgNzMsIDEyOCwgNzUsIDY1LCA3MywgMTI4LCA3NSwgNjUsIAorICAgIDIwMSwgNzUsIDY1LCA3MCwgNjUsIDEyOCwgNzUsIDY1LCA3MCwgMTI4LCA3NSwgNjUsIDE5OCwgNzUsIDY1LCA2OCwgNTMsIAorICAgIDEyOCwgNzUsIDY1LCA2OCwgMTgxLCA3NSwgNjUsIDY4LCA1MiwgMTI4LCA3NSwgNjUsIDY4LCA1MSwgMTI4LCA3NSwgNjUsIAorICAgIDY4LCAxNzksIDc1LCA2NSwgNjgsIDUwLCAxMjgsIDc1LCA2NSwgNjgsIDEyOCwgNzUsIDY1LCA2NiwgMTkzLCA3NSwgNjUsIAorICAgIDY2LCAxMjgsIDc1LCA2NSwgNjUsIDczLCAxMjgsIDc1LCA2NSwgNjUsIDcwLCA4NSwgMTI4LCA3NSwgNjUsIDY1LCA3MCwgCisgICAgMTI4LCA3NSwgNjUsIDUwLCAxMjgsIDc1LCA2NSwgMTc4LCA3NSwgNDgsIDQ4LCA1NiwgMTI4LCA3NSwgNDgsIDQ4LCA1NSwgCisgICAgMTI4LCA3NSwgNDgsIDQ4LCA1NCwgMTI4LCA3NSwgNDgsIDQ4LCA1MywgMTI4LCA3NSwgNDgsIDQ4LCA1MiwgMTI4LCA3NSwgCisgICAgNDgsIDQ4LCA1MSwgMTI4LCA3NSwgNDgsIDQ4LCA1MCwgMTI4LCA3NSwgNDgsIDQ4LCA0OSwgMTI4LCA3NCwgODcsIDY1LCAKKyAgICAxMjgsIDc0LCA4NSwgODUsIDEyOCwgNzQsIDg1LCA4NCwgMTI4LCA3NCwgODUsIDgzLCA4NCwgNzMsIDcwLCA3MywgNjcsIAorICAgIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA3NCwgODUsIDgwLCA3MywgODQsIDY5LCA4MiwgMTI4LCA3NCwgODUsIDc5LCA4NCwgCisgICAgMTI4LCA3NCwgODUsIDc5LCA4MCwgMTI4LCA3NCwgODUsIDc4LCA3OSwgMTI4LCA3NCwgODUsIDc4LCA2OSwgMTI4LCA3NCwgCisgICAgODUsIDc2LCA4OSwgMTI4LCA3NCwgODUsIDY5LCA4NSwgNzMsIDEyOCwgNzQsIDg1LCA2OCwgODUsIDc2LCAxMjgsIDc0LCAKKyAgICA4NSwgNjgsIDcxLCA2OSwgMTI4LCA3NCwgODUsIDY4LCA2OSwgNzksIDQ1LCA4MywgODAsIDY1LCA3OCwgNzMsIDgzLCAyMDAsIAorICAgIDc0LCA3OSwgODksIDc5LCA4NSwgMjExLCA3NCwgNzksIDg5LCAxMjgsIDc0LCA3OSwgODYsIDY5LCAxMjgsIDc0LCA3OSwgCisgICAgMjEyLCA3NCwgNzksIDc4LCA3MSwgMTI4LCA3NCwgNzksIDc4LCAxOTMsIDc0LCA3OSwgNzUsIDY5LCA4MiwgMTI4LCA3NCwgCisgICAgNzksIDczLCA3OCwgNjksIDY4LCAxMjgsIDc0LCA3OSwgNzMsIDc4LCAxMjgsIDc0LCA3OSwgNjUsIDEyOCwgNzQsIDc0LCAKKyAgICA4OSwgODgsIDEyOCwgNzQsIDc0LCA4OSwgODQsIDEyOCwgNzQsIDc0LCA4OSwgODAsIDEyOCwgNzQsIDc0LCA4OSwgMTI4LCAKKyAgICA3NCwgNzQsIDg1LCA4OCwgMTI4LCA3NCwgNzQsIDg1LCA4NCwgMTI4LCA3NCwgNzQsIDg1LCA4MiwgODgsIDEyOCwgNzQsIAorICAgIDc0LCA4NSwgODIsIDEyOCwgNzQsIDc0LCA4NSwgODAsIDEyOCwgNzQsIDc0LCA4NSwgNzksIDg4LCAxMjgsIDc0LCA3NCwgCisgICAgODUsIDc5LCA4MCwgMTI4LCA3NCwgNzQsIDg1LCA3OSwgMTI4LCA3NCwgNzQsIDg1LCAxMjgsIDc0LCA3NCwgNzksIDg4LCAKKyAgICAxMjgsIDc0LCA3NCwgNzksIDg0LCAxMjgsIDc0LCA3NCwgNzksIDgwLCAxMjgsIDc0LCA3NCwgNzksIDEyOCwgNzQsIDc0LCAKKyAgICA3MywgODgsIDEyOCwgNzQsIDc0LCA3MywgODQsIDEyOCwgNzQsIDc0LCA3MywgODAsIDEyOCwgNzQsIDc0LCA3MywgNjksIAorICAgIDg4LCAxMjgsIDc0LCA3NCwgNzMsIDY5LCA4NCwgMTI4LCA3NCwgNzQsIDczLCA2OSwgODAsIDEyOCwgNzQsIDc0LCA3MywgCisgICAgNjksIDEyOCwgNzQsIDc0LCA3MywgMTI4LCA3NCwgNzQsIDY5LCA2OSwgMTI4LCA3NCwgNzQsIDY5LCAxMjgsIDc0LCA3NCwgCisgICAgNjUsIDEyOCwgNzQsIDczLCA3NiwgMTI4LCA3NCwgNzMsIDczLCAxMjgsIDc0LCA3MywgNzIsIDg2LCA2NSwgNzcsIDg1LCAKKyAgICA3NiwgNzMsIDg5LCA2NSwgMTI4LCA3NCwgNzMsIDY1LCAxMjgsIDc0LCA3MiwgNzksIDEyOCwgNzQsIDcyLCA2OSwgNzIsIAorICAgIDEyOCwgNzQsIDcyLCA2NSwgNzgsIDEyOCwgNzQsIDcyLCA2NSwgNzcsIDEyOCwgNzQsIDcyLCA2NSwgNjUsIDEyOCwgNzQsIAorICAgIDcyLCA2NSwgMTI4LCA3NCwgNjksIDg1LCAxMjgsIDc0LCA2OSwgODIsIDg1LCA4MywgNjUsIDc2LCA2OSwgNzcsIDEyOCwgCisgICAgNzQsIDY5LCA4MiwgNjUsIDIwNiwgNzQsIDY5LCA4MiwgNjUsIDEyOCwgNzQsIDY5LCA4MiwgMTI4LCA3NCwgNjksIDcyLCAKKyAgICAxMjgsIDc0LCA2OSwgMjAwLCA3NCwgNjksIDcxLCA3OSwgNzEsIDY1LCA3OCwgMTI4LCA3NCwgNjksIDY5LCA3NywgMTI4LCAKKyAgICA3NCwgNjksIDY1LCA3OCwgODMsIDEyOCwgNzQsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzQsIDY1LCA4NiwgNzMsIAorICAgIDg5LCA2NSwgNzgsIDczLCAxMjgsIDc0LCA2NSwgODUsIDEyOCwgNzQsIDY1LCA4MiwgMTI4LCA3NCwgNjUsIDgwLCA2NSwgCisgICAgNzgsIDY5LCA4MywgMTk3LCA3NCwgNjUsIDgwLCA2NSwgNzgsIDEyOCwgNzQsIDY1LCA3OCwgODUsIDY1LCA4MiwgODksIAorICAgIDEyOCwgNzQsIDY1LCA3NiwgNzYsIDY1LCA3NCwgNjUsIDc2LCA2NSwgNzYsIDc5LCA4NSwgNzIsIDc5LCA4NSwgMTI4LCA3NCwgCisgICAgNjUsIDczLCAxMjgsIDc0LCA2NSwgNzIsIDEyOCwgNzQsIDY1LCA2OCwgNjksIDEyOCwgNzQsIDY1LCA2NywgNzUsIDQ1LCAKKyAgICA3OSwgNDUsIDc2LCA2NSwgNzgsIDg0LCA2OSwgODIsIDc4LCAxMjgsIDc0LCA2NSwgNjcsIDIwMywgNzQsIDQ1LCA4MywgNzMsIAorICAgIDc3LCA4MCwgNzYsIDczLCA3MCwgNzMsIDY5LCAxOTYsIDIwMiwgNzMsIDkwLCA3MiwgNzMsIDg0LCA4MywgNjUsIDEyOCwgCisgICAgNzMsIDkwLCA3MiwgNzMsIDg0LCA4MywgMTkzLCA3MywgOTAsIDcyLCA2OSwgMTI4LCA3MywgOTAsIDY1LCA3NSwgNjUsIDg5LCAKKyAgICAxOTMsIDczLCA4OSwgNjksIDc1LCAxMjgsIDczLCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzMsIDg1LCA3NCwgNjUsIAorICAgIDEyOCwgNzMsIDg1LCAxMjgsIDczLCA4NCwgMjExLCA3MywgODQsIDY5LCA4MiwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzMsIAorICAgIDg0LCA2OSwgNzcsIDEyOCwgNzMsIDgzLCA4MywgNzIsIDY1LCA4MiwgMTI4LCA3MywgODMsIDc5LCA3OCwgMTI4LCA3MywgCisgICAgODMsIDc5LCAyMDYsIDczLCA4MywgNjksIDc4LCA0NSwgNzMsIDgzLCA2OSwgNzgsIDEyOCwgNzMsIDgzLCA2NSwgNzUsIDczLCAKKyAgICAxOTMsIDczLCA4MywgNDUsIDgwLCA3MywgNzYsIDc2LCA2NSwgMTI4LCA3MywgODIsIDg1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIAorICAgIDEyOCwgNzMsIDgyLCA4NSwgODUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MywgODIsIDc5LCA3OCwgNDUsIDY3LCA3OSwgCisgICAgODAsIDgwLCA2OSwgMjEwLCA3MywgODIsIDc5LCA3OCwgMTI4LCA3MywgNzksIDg0LCA3MywgNzAsIDczLCA2OSwgMTk2LCAKKyAgICA3MywgNzksIDg0LCA2NSwgODQsIDY5LCAxOTYsIDczLCA3OSwgODQsIDY1LCAxMjgsIDczLCA3OSwgODQsIDE5MywgNzMsIAorICAgIDc5LCA4MiwgMTI4LCA3MywgNzksIDY4LCA3MiwgNjUsIDY4LCA3MiwgMTI4LCA3MywgNzgsIDg2LCA3MywgODMsIDczLCA2NiwgCisgICAgNzYsIDE5NywgNzMsIDc4LCA4NiwgNjksIDgyLCA4NCwgNjksIDY4LCAxMjgsIDczLCA3OCwgODYsIDY5LCA4MiwgODQsIDY5LCAKKyAgICAxOTYsIDczLCA3OCwgODYsIDY5LCA4MiwgODMsIDE5NywgNzMsIDc4LCA4NCwgODIsIDc5LCA2OCwgODUsIDY3LCA2OSwgODIsIAorICAgIDEyOCwgNzMsIDc4LCA4NCwgNzMsIDEyOCwgNzMsIDc4LCA4NCwgNjksIDgyLCA4MywgODksIDc2LCA3NiwgNjUsIDY2LCA3MywgCiAgICAgMTk1LCA3MywgNzgsIDg0LCA2OSwgODIsIDgzLCA2OSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDczLCA3OCwgODQsIDY5LCAKICAgICA4MiwgODMsIDY5LCA2NywgODQsIDczLCA3OSwgMjA2LCA3MywgNzgsIDg0LCA2OSwgODIsIDgzLCA2OSwgNjcsIDg0LCA3MywgCiAgICAgNzgsIDE5OSwgNzMsIDc4LCA4NCwgNjksIDgyLCA4MiwgNzksIDY2LCA2NSwgNzgsIDcxLCAxMjgsIDczLCA3OCwgODQsIDY5LCAKQEAgLTIyMzQsMTIyNiArMjM4MywxMjMzIEBACiAgICAgNzgsIDY3LCA3MiwgMTI4LCA3MywgNzgsIDY2LCA3OSwgMjE2LCA3MywgNzgsIDY1LCA4MCwgMTI4LCA3MywgNzgsIDQ1LCAKICAgICA2NSwgNzYsIDY1LCA3MCwgMTI4LCA3MywgNzcsIDgwLCA2OSwgODIsIDczLCA2NSwgMjA0LCA3MywgNzcsIDgwLCA2OSwgODIsIAogICAgIDcwLCA2OSwgNjcsIDg0LCA4NSwgMjA1LCA3MywgNzcsIDgwLCA2OSwgODIsIDcwLCA2OSwgNjcsIDg0LCA2NSwgMTI4LCA3MywgCi0gICAgNzcsIDgwLCA2OSwgODIsIDcwLCA2OSwgNjcsIDg0LCAxOTMsIDczLCA3NywgNzMsIDgzLCA2OSwgNzksIDIxMSwgNzMsIDc3LCAKLSAgICA3MywgNzgsIDUxLCAxMjgsIDczLCA3NywgNzMsIDc4LCAxMjgsIDczLCA3NywgNzMsIDIwNiwgNzMsIDc3LCA3MywgNzAsIAotICAgIDg0LCA3MiwgNzksIDgyLCA3OSwgNzgsIDEyOCwgNzMsIDc3LCA3MywgNzAsIDg0LCA3MiwgNzksIDgyLCA2NSwgMTI4LCA3MywgCi0gICAgNzcsIDczLCA3MCwgNzksIDc4LCA3OSwgNzgsIDEyOCwgNzMsIDc3LCA3MywgNjgsIDczLCA2NSwgODIsIDcxLCA3OSwgNzgsIAotICAgIDEyOCwgNzMsIDc3LCA2NSwgNzEsIDE5NywgNzMsIDc2LCA4NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDczLCA3NiwgCi0gICAgODUsIDg5LCAxMjgsIDczLCA3NiwgODUsIDg1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzMsIDc2LCA4NSwgODQsIAotICAgIDEyOCwgNzMsIDc2LCA3MywgNzcsIDc3LCA4NSwgNTIsIDEyOCwgNzMsIDc2LCA3MywgNzcsIDc3LCA4NSwgNTEsIDEyOCwgCi0gICAgNzMsIDc2LCA3MywgNzcsIDc3LCA4NSwgMTI4LCA3MywgNzYsIDczLCA3NywgNzcsIDIxMywgNzMsIDc2LCA1MCwgMTI4LCAKLSAgICA3MywgNzUsIDY1LCA4MiwgNjUsIDEyOCwgNzMsIDc1LCA2NSwgODIsIDE5MywgNzMsIDc0LCAxMjgsIDczLCA3MywgODksIAotICAgIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDczLCA3MSwgNzMsIDEyOCwgNzMsIDcxLCAyMDEsIDczLCA3MSwgNzEsIDg3LCA4MywgCi0gICAgMTI4LCA3MywgNzAsIDczLCA3OCwgMTI4LCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAKLSAgICAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDg0LCA3MiwgNzMsIDY5LCA4NSwgODQsIDcyLCAxMjgsIDczLCA2OSwgODUsIAotICAgIDc4LCA3MSwgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA3MywgNjksIDg1LCAKLSAgICA3OCwgNzEsIDQ1LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgODAsIDczLCA2OSwgCi0gICAgODUsIDgwLCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIDcyLCAxMjgsIDczLCAKLSAgICA2OSwgODUsIDc4LCA3MSwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgCi0gICAgNzUsIDcyLCA3MywgNjksIDg1LCA3NSwgNzIsIDEyOCwgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgNjcsIDczLCA2OSwgODUsIAotICAgIDY3LCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDY3LCA3MiwgNzMsIDY5LCA4NSwgNjcsIDcyLCAxMjgsIDczLCA2OSwgCi0gICAgODUsIDc4LCAxOTksIDczLCA2OCwgNzYsIDY5LCAxMjgsIDczLCA2OCwgNzMsIDc3LCAxMjgsIDczLCA2OCwgNzMsIDIwNSwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDY4LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDY3LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDY3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDY3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDY2LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDY2LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDY2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDcwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDY1LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDY1LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNjUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU3LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU2LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU2LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDcwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU1LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU1LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU0LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTQsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU0LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTQsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDU0LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDcwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTMsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUzLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTMsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUzLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTMsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUyLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTIsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUyLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTIsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUyLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTEsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUxLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTEsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUxLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTEsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUxLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTAsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUwLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNTAsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDUwLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNDksIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDQ5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNDksIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDQ5LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNDksIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDQ5LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDcwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNDgsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDQ4LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNDgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIAotICAgIDQ4LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA2NSwgNDgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDcwLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNzAsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDcwLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNzAsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDcwLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjksIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjksIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY5LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjksIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY5LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDcwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjgsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY4LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY4LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY3LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY2LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY2LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDcwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY1LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDY1LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNjUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU3LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU2LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU2LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDcwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU1LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU1LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU0LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTQsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU0LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTQsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDU0LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTMsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUzLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTMsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUzLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTMsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUzLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDcwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTIsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUyLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTIsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUyLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTIsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUxLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTEsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUxLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTEsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUxLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTAsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUwLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDY2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTAsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUwLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDUzLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNTAsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDUwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDcwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNDksIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDQ5LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNDksIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDQ5LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDUxLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNDksIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDQ4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNDgsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDQ4LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDcwLCA1NywgNDgsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIAotICAgIDQ4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTcsIDQ4LCA1MiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDU2LCA2OCwgNTUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NiwgNjcsIAotICAgIDY1LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTYsIDU3LCA2OSwgNTEsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU1LCA2OCwgNTIsIDUwLCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NSwgNjUsIDU1LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTUsIDU3LCA1NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDU1LCA1NCwgNjgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NSwgNTMsIAotICAgIDUxLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTUsIDUzLCA0OSwgNzAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU1LCA0OSwgNTAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NSwgNDgsIDY2LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTQsIDcwLCA0OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDU0LCA2OSwgNTYsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTUsIAotICAgIDUwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDU1LCA0OCwgNTcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1NSwgNDgsIDU2LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTQsIDUwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTQsIDUzLCA2NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDU0LCA1MywgNTcsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTMsIAotICAgIDUzLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDUxLCA1MywgNTMsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1MSwgNDgsIDU1LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTAsIDU3LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTQsIDUwLCA1MywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDU0LCA1MCwgNTIsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNzAsIAotICAgIDU2LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDY4LCA2OSwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA2NiwgNTYsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNjYsIDUzLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTMsIDU3LCA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDUzLCA1NywgNDksIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTYsIAotICAgIDcwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUzLCA2NiwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MiwgNTEsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTIsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTMsIDUxLCA3MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDUzLCA1MSwgNjcsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTAsIAotICAgIDY4LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUwLCA1NSwgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MCwgNTIsIDY4LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTAsIDQ5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTMsIDQ5LCA1NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgCi0gICAgNDUsIDUyLCA2OSwgNjUsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MiwgNjksIAotICAgIDU2LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTIsIDY5LCA1MCwgNjgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUyLCA2OSwgNDgsIDU3LCAxMjgsIDczLCA2OCwgNjksIAotICAgIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MiwgNjksIDQ4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNjUsIDQ5LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA2NSwgNDksIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgCi0gICAgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA1NiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDU1LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNjUsIDQ5LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA2NSwgNDksIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgCi0gICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA3MCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDY5LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNjUsIDQ4LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA2NSwgNDgsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgCi0gICAgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA1NCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDUzLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNjUsIDQ4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNzAsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgCi0gICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA2OCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDY3LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDcwLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNzAsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgCi0gICAgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA1MiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDUxLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDY5LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNjksIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgCi0gICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA2NiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDY1LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDY5LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNjksIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgCi0gICAgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA1MCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDQ5LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDY4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNjgsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgCi0gICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA1NywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDU2LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDY4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNjgsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgCi0gICAgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA0OCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDcwLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDY3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNjcsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgCi0gICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA1NSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDU0LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDY3LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNjcsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgCi0gICAgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA2OSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDY4LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDY2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNjYsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgCi0gICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA1MywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDUyLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDY1LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNjUsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgCi0gICAgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA2NywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDY2LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDY1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNjUsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgCi0gICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA1MSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDUwLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDU3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTcsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgCi0gICAgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA2NSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDU3LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDU3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTcsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgCi0gICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA0OSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDQ4LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDU2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTYsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgCi0gICAgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA1NiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDU1LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDU2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTYsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgCi0gICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA3MCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDY5LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDU1LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTUsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgCi0gICAgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA1NCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDUzLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDU1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTQsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgCi0gICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA2OCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDY3LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDU0LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTQsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgCi0gICAgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA1MiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDUxLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDUzLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTMsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgCi0gICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA2NiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDY1LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDUzLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTMsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgCi0gICAgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA1MCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDQ5LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDUyLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTIsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgCi0gICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA1NywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDU2LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDUyLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTIsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgCi0gICAgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA0OCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDcwLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDUxLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTEsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgCi0gICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA1NSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDU0LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDUxLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTEsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgCi0gICAgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA2OSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDY4LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDUwLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNTAsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgCi0gICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA1MywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDUyLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDQ5LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNDksIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgCi0gICAgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA2NywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDY2LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDQ5LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNDksIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgCi0gICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA1MSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDUwLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDQ4LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNDgsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgCi0gICAgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA2NSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDU3LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTcsIDQ4LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NywgNDgsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgCi0gICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA0OSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDQ4LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDcwLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNzAsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgCi0gICAgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA1NiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDU1LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDcwLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNzAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgCi0gICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA3MCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDY5LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDY5LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNjksIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgCi0gICAgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA1NCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDUzLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDY5LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNjgsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgCi0gICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA2OCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDY3LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDY4LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNjgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgCi0gICAgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA1MiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDUxLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDY3LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNjcsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgCi0gICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA2NiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDY1LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDY3LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNjcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgCi0gICAgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA1MCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDQ5LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDY2LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNjYsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgCi0gICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA1NywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDU2LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDY2LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNjYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgCi0gICAgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA0OCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDcwLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDY1LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNjUsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgCi0gICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA1NSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDU0LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDY1LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNjUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgCi0gICAgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA2OSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDY4LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDU3LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTcsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgCi0gICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA1MywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDUyLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDU2LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgCi0gICAgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA2NywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDY2LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDU2LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTYsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgCi0gICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA1MSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDUwLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDU1LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgCi0gICAgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA2NSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDU3LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDU1LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTUsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgCi0gICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA0OSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDQ4LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDU0LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTQsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgCi0gICAgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA1NiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDU1LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDU0LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTQsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgCi0gICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA3MCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDY5LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDUzLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTMsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgCi0gICAgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA1NCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDUzLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDUzLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTIsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgCi0gICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA2OCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDY3LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDUyLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTIsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgCi0gICAgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA1MiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDUxLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDUxLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTEsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgCi0gICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA2NiwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDY1LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDUxLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTEsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgCi0gICAgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA1MCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDQ5LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDUwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTAsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgCi0gICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA1NywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDU2LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDUwLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNTAsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgCi0gICAgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA0OCwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDcwLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDQ5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNDksIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgCi0gICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA1NSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDU0LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDQ5LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNDksIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgCi0gICAgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA2OSwgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDY4LCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIAotICAgIDUwLCA3MCwgNTYsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCAKLSAgICA1NiwgNDgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgCi0gICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA1MywgMTI4LCAKLSAgICA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDUyLCAxMjgsIDczLCA2OCwgCi0gICAgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAotICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCAKLSAgICA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgCi0gICAgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzgsIDg0LCA3MywgNzAsIDczLCA2NywgNjUsIAotICAgIDg0LCA3MywgNzksIDc4LCAxMjgsIDczLCA2OCwgNjksIDc4LCA4NCwgNzMsIDY3LCA2NSwgMjA0LCA3MywgNjcsIDcyLCA3OSwgCi0gICAgODUsIDEyOCwgNzMsIDY3LCA3MiwgNzksIDgzLCAxMjgsIDczLCA2NywgNzIsIDczLCA3NywgNjUsIDg0LCA3OSwgODMsIAotICAgIDEyOCwgNzMsIDY3LCA3MiwgNjUsIDY4LCA3MywgNzgsIDEyOCwgNzMsIDY3LCA2OSwgNzYsIDY1LCA3OCwgNjgsIDczLCA2NywgCi0gICAgNDUsIDg5LCA4MiwgMTI4LCA3MywgNjYsIDczLCA3MCwgNzMsIDc2LCA3MywgMTI4LCA3MywgNjUsIDg1LCA2OCwgNjUsIAotICAgIDEyOCwgNzMsIDQ4LCA0OSwgNTMsIDEyOCwgNzMsIDQ4LCA0OSwgNTIsIDEyOCwgNzMsIDQ4LCA0OSwgNTEsIDEyOCwgNzMsIAotICAgIDQ4LCA0OSwgNTAsIDEyOCwgNzMsIDQ4LCA0OSwgNDksIDY1LCAxMjgsIDczLCA0OCwgNDksIDQ5LCAxMjgsIDczLCA0OCwgCi0gICAgNDksIDQ4LCA2NSwgMTI4LCA3MywgNDgsIDQ5LCA0OCwgMTI4LCA3MywgNDgsIDQ4LCA1NywgNjUsIDEyOCwgNzMsIDQ4LCAKLSAgICA0OCwgNTcsIDEyOCwgNzMsIDQ4LCA0OCwgNTYsIDEyOCwgNzMsIDQ4LCA0OCwgNTUsIDEyOCwgNzMsIDQ4LCA0OCwgNTQsIAotICAgIDEyOCwgNzMsIDQ4LCA0OCwgNTMsIDY1LCAxMjgsIDczLCA0OCwgNDgsIDUzLCAxMjgsIDczLCA0OCwgNDgsIDUyLCAxMjgsIAotICAgIDczLCA0OCwgNDgsIDUxLCAxMjgsIDczLCA0OCwgNDgsIDUwLCAxMjgsIDczLCA0OCwgNDgsIDQ5LCAxMjgsIDczLCA0NSwgCi0gICAgODksIDg1LCAxMjgsIDczLCA0NSwgODksIDc5LCAxMjgsIDczLCA0NSwgODksIDY5LCA3OSwgMTI4LCA3MywgNDUsIDg5LCAKLSAgICA2OSwgMTI4LCA3MywgNDUsIDg5LCA2NSwgNjksIDEyOCwgNzMsIDQ1LCA4OSwgNjUsIDQ1LCA3OSwgMTI4LCA3MywgNDUsIAotICAgIDg5LCA2NSwgMTI4LCA3MywgNDUsIDc5LCA0NSwgNzMsIDEyOCwgNzMsIDQ1LCA3OSwgMTI4LCA3MywgNDUsIDY5LCA4NSwgCi0gICAgMTI4LCA3MywgNDUsIDY2LCA2OSwgNjUsIDc3LCAxMjgsIDczLCA0NSwgNjUsIDgyLCA2NSwgNjksIDY1LCAxMjgsIDczLCAKLSAgICA0NSwgNjUsIDEyOCwgNzIsIDkwLCA5MCwgOTAsIDcxLCAxMjgsIDcyLCA5MCwgOTAsIDkwLCAxMjgsIDcyLCA5MCwgOTAsIAotICAgIDgwLCAxMjgsIDcyLCA5MCwgOTAsIDEyOCwgNzIsIDkwLCA4NywgNzEsIDEyOCwgNzIsIDkwLCA4NywgMTI4LCA3MiwgOTAsIAotICAgIDg0LCAxMjgsIDcyLCA5MCwgNzEsIDEyOCwgNzIsIDg5LCA4MywgODQsIDY5LCA4MiwgNjksIDgzLCA3MywgMjExLCA3MiwgCi0gICAgODksIDgwLCA3OSwgNjgsIDczLCA2NSwgODMsIDg0LCA3OSwgNzYsIDY5LCAxMjgsIDcyLCA4OSwgODAsIDcyLCA2OSwgNzgsIAotICAgIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDcyLCA4OSwgODAsIDcyLCA2OSwgNzgsIDQ1LCA3NywgNzMsIDc4LCA4NSwgODMsIDEyOCwgCi0gICAgNzIsIDg5LCA4MCwgNzIsIDY5LCA3OCwgMTI4LCA3MiwgODksIDgwLCA3MiwgNjksIDIwNiwgNzIsIDg4LCA4NywgNzEsIAotICAgIDEyOCwgNzIsIDg4LCA4NSwgNzksIDg4LCAxMjgsIDcyLCA4OCwgODUsIDc5LCA4NCwgMTI4LCA3MiwgODgsIDg1LCA3OSwgCi0gICAgODAsIDEyOCwgNzIsIDg4LCA4NSwgNzksIDEyOCwgNzIsIDg4LCA3OSwgODgsIDEyOCwgNzIsIDg4LCA3OSwgODQsIDEyOCwgCi0gICAgNzIsIDg4LCA3OSwgODAsIDEyOCwgNzIsIDg4LCA3OSwgMTI4LCA3MiwgODgsIDczLCA4OCwgMTI4LCA3MiwgODgsIDczLCAKLSAgICA4NCwgMTI4LCA3MiwgODgsIDczLCA4MCwgMTI4LCA3MiwgODgsIDczLCA2OSwgODgsIDEyOCwgNzIsIDg4LCA3MywgNjksIAotICAgIDg0LCAxMjgsIDcyLCA4OCwgNzMsIDY5LCA4MCwgMTI4LCA3MiwgODgsIDczLCA2OSwgMTI4LCA3MiwgODgsIDczLCAxMjgsIAotICAgIDcyLCA4OCwgNjksIDg4LCAxMjgsIDcyLCA4OCwgNjksIDgwLCAxMjgsIDcyLCA4OCwgNjksIDEyOCwgNzIsIDg4LCA2NSwgCi0gICAgODgsIDEyOCwgNzIsIDg4LCA2NSwgODQsIDEyOCwgNzIsIDg4LCA2NSwgODAsIDEyOCwgNzIsIDg4LCA2NSwgMTI4LCA3MiwgCi0gICAgODcsIDg1LCAxMjgsIDcyLCA4NywgNjUsIDczLCA4MiwgMTI4LCA3MiwgODYsIDEyOCwgNzIsIDg1LCA4MiwgNjUsIDc4LCAKKyAgICA3NywgODAsIDY5LCA4MiwgNzAsIDY5LCA2NywgODQsIDE5MywgNzMsIDc3LCA3OCwgMTI4LCA3MywgNzcsIDczLCA4MywgNjksIAorICAgIDc5LCAyMTEsIDczLCA3NywgNzMsIDc4LCA1MSwgMTI4LCA3MywgNzcsIDczLCA3OCwgMTI4LCA3MywgNzcsIDczLCAyMDYsIAorICAgIDczLCA3NywgNzMsIDcwLCA4NCwgNzIsIDc5LCA4MiwgNzksIDc4LCAxMjgsIDczLCA3NywgNzMsIDcwLCA4NCwgNzIsIDc5LCAKKyAgICA4MiwgNjUsIDEyOCwgNzMsIDc3LCA3MywgNzAsIDc5LCA3OCwgNzksIDc4LCAxMjgsIDczLCA3NywgNzMsIDY4LCA3MywgNjUsIAorICAgIDgyLCA3MSwgNzksIDc4LCAxMjgsIDczLCA3NywgNjUsIDcxLCAxOTcsIDczLCA3NiwgODUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgCisgICAgMTI4LCA3MywgNzYsIDg1LCA4OSwgMTI4LCA3MywgNzYsIDg1LCA4NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDczLCAKKyAgICA3NiwgODUsIDg0LCAxMjgsIDczLCA3NiwgNzMsIDc3LCA3NywgODUsIDUyLCAxMjgsIDczLCA3NiwgNzMsIDc3LCA3NywgODUsIAorICAgIDUxLCAxMjgsIDczLCA3NiwgNzMsIDc3LCA3NywgODUsIDEyOCwgNzMsIDc2LCA3MywgNzcsIDc3LCAyMTMsIDczLCA3NiwgCisgICAgNTAsIDEyOCwgNzMsIDc1LCA2NSwgODIsIDY1LCAxMjgsIDczLCA3NSwgNjUsIDgyLCAxOTMsIDczLCA3NCwgMTI4LCA3MywgCisgICAgNzMsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MywgNzEsIDczLCAxMjgsIDczLCA3MSwgMjAxLCA3MywgNzEsIDcxLCAKKyAgICA4NywgODMsIDEyOCwgNzMsIDcwLCA3MywgNzgsIDEyOCwgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgODQsIDczLCA3NSwgNjksIAorICAgIDg1LCA4NCwgMTI4LCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA4NCwgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA3MywgCisgICAgNjksIDg1LCA3OCwgNzEsIDQ1LCA4MywgODMsIDY1LCA3OCwgNzEsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgNzMsIAorICAgIDY5LCA4NSwgNzgsIDcxLCA0NSwgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDgwLCAKKyAgICA3MywgNjksIDg1LCA4MCwgMTI4LCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgCisgICAgMTI4LCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIDczLCA2OSwgODUsIDc4LCAKKyAgICA3MSwgNDUsIDc1LCA3MiwgNzMsIDY5LCA4NSwgNzUsIDcyLCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDY3LCA3MywgCisgICAgNjksIDg1LCA2NywgMTI4LCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgMTI4LCAKKyAgICA3MywgNjksIDg1LCA3OCwgMTk5LCA3MywgNjgsIDc2LCA2OSwgMTI4LCA3MywgNjgsIDczLCA3NywgMTI4LCA3MywgNjgsIAorICAgIDczLCAyMDUsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA2OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA2NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIAorICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA2NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIAorICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA2NywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIAorICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA0OSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA2NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA2NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA2NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA2NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA2NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIAorICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIAorICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIAorICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA0OSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1NCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIAorICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIAorICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIAorICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA0OSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA1MCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA0OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIAorICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA0OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIAorICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA0OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIAorICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA0OSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA0OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA0OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDY1LCA0OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA3MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA3MCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIAorICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIAorICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIAorICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA0OSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIAorICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIAorICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIAorICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA0OSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA2NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIAorICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIAorICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIAorICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA0OSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1NCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIAorICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIAorICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIAorICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA0OSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIAorICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIAorICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA1MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIAorICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA0OSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA0OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA2NiwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA0OSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIAorICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA1MywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA0OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA3MCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA0OCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNzAsIDU3LCA0OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTcsIDQ4LCA1MiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU2LCA2OCwgNTUsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NiwgNjcsIDY1LCA1NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTYsIDU3LCA2OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU1LCA2OCwgNTIsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA1NSwgNjUsIDU1LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTUsIDU3LCA1NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU1LCA1NCwgNjgsIAorICAgIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NSwgNTMsIDUxLCA1MSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTUsIDUzLCA0OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU1LCA0OSwgNTAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA1NSwgNDgsIDY2LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTQsIDcwLCA0OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA2OSwgNTYsIAorICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTUsIDUwLCA2NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDU1LCA0OCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1NSwgNDgsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA1NCwgNTQsIDUwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTQsIDUzLCA2NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1MywgNTcsIAorICAgIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTMsIDUzLCA1NSwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDUxLCA1MywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1MSwgNDgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA1NCwgNTAsIDU3LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTQsIDUwLCA1MywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1MCwgNTIsIAorICAgIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNzAsIDU2LCA2NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDY4LCA2OSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA2NiwgNTYsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA1MywgNjYsIDUzLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTMsIDU3LCA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1NywgNDksIAorICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTYsIDcwLCA0OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUzLCA2NiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MiwgNTEsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA1MywgNTIsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTMsIDUxLCA3MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MSwgNjcsIAorICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTAsIDY4LCA2OCwgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUwLCA1NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MCwgNTIsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA1MywgNTAsIDQ5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTMsIDQ5LCA1NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUyLCA2OSwgNjUsIAorICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MiwgNjksIDU2LCA2NywgMTI4LCA3MywgCisgICAgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTIsIDY5LCA1MCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUyLCA2OSwgNDgsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCAKKyAgICA4MCwgNzIsIDQ1LCA1MiwgNjksIDQ4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA2NSwgNDksIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDY1LCA0OSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCAKKyAgICA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDY1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNTcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA2NSwgNDksIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDY1LCA0OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCAKKyAgICA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDQ5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNDgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA2NSwgNDgsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDY1LCA0OCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCAKKyAgICA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDU2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNTUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA2NSwgNDgsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDY1LCA0OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCAKKyAgICA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDcwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNjksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNzAsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA3MCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCAKKyAgICA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDU0LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNTMsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNzAsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCAKKyAgICA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDY4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNjcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjksIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2OSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCAKKyAgICA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDUyLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNTEsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjgsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCAKKyAgICA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDY2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNjUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjgsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2OCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCAKKyAgICA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDUwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNDksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjcsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCAKKyAgICA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDU3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNTYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjcsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NywgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCAKKyAgICA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDQ4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNzAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjYsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCAKKyAgICA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDU1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNTQsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjYsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCAKKyAgICA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDY5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNjgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjUsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCAKKyAgICA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDUzLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNTIsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTcsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCAKKyAgICA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDY3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNjYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTcsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCAKKyAgICA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDUxLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNTAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTYsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCAKKyAgICA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDY1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNTcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTYsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCAKKyAgICA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDQ5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNDgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTUsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCAKKyAgICA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDU2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNTUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTUsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCAKKyAgICA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDcwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNjksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTQsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCAKKyAgICA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDU0LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNTMsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTQsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCAKKyAgICA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDY4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNjcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTMsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCAKKyAgICA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDUyLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNTEsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTIsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCAKKyAgICA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDY2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNjUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTIsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCAKKyAgICA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDUwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNDksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTEsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCAKKyAgICA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDU3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNTYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTEsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCAKKyAgICA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDQ4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNzAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTAsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCAKKyAgICA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDU1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNTQsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCAKKyAgICA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDY5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNjgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNDksIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA0OSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCAKKyAgICA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDUzLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNTIsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNDgsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA0OCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCAKKyAgICA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDY3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNjYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNDgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA0OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCAKKyAgICA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDUxLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNTAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNzAsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA3MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCAKKyAgICA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDY1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNTcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNzAsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA3MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCAKKyAgICA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDQ5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNDgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjksIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2OSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCAKKyAgICA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDU2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNTUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjksIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCAKKyAgICA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDcwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNjksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjgsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCAKKyAgICA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDU0LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNTMsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCAKKyAgICA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDY4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNjcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjcsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCAKKyAgICA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDUyLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNTEsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCAKKyAgICA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDY2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNjUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjYsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCAKKyAgICA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDUwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNDksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCAKKyAgICA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDU3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNTYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjUsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCAKKyAgICA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDQ4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNzAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCAKKyAgICA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDU1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNTQsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCAKKyAgICA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDY5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNjgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCAKKyAgICA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDUzLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNTIsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTUsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCAKKyAgICA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDY3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNjYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCAKKyAgICA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDUxLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNTAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTQsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCAKKyAgICA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDY1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNTcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTQsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCAKKyAgICA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDQ5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNDgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTMsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MywgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCAKKyAgICA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDU2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNTUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTMsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MywgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCAKKyAgICA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDcwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNjksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTIsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MiwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCAKKyAgICA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDU0LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNTMsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTIsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCAKKyAgICA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDY4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNjcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTEsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCAKKyAgICA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDUyLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNTEsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTAsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCAKKyAgICA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDY2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNjUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTAsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCAKKyAgICA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDUwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNDksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNDksIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA0OSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCAKKyAgICA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDU3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNTYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNDksIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA0OSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCAKKyAgICA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDQ4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNzAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNDgsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA0OCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCAKKyAgICA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDU1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNTQsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNDgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA0OCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzgsIDg0LCA3MywgNzAsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDc4LCAKKyAgICAxMjgsIDczLCA2OCwgNjksIDc4LCA4NCwgNzMsIDY3LCA2NSwgMjA0LCA3MywgNjcsIDcyLCA3OSwgODUsIDEyOCwgNzMsIAorICAgIDY3LCA3MiwgNzksIDgzLCAxMjgsIDczLCA2NywgNzIsIDczLCA3NywgNjUsIDg0LCA3OSwgODMsIDEyOCwgNzMsIDY3LCA3MiwgCisgICAgNjUsIDY4LCA3MywgNzgsIDEyOCwgNzMsIDY3LCA2OSwgNzYsIDY1LCA3OCwgNjgsIDczLCA2NywgNDUsIDg5LCA4MiwgMTI4LCAKKyAgICA3MywgNjYsIDczLCA3MCwgNzMsIDc2LCA3MywgMTI4LCA3MywgNjUsIDg1LCA2OCwgNjUsIDEyOCwgNzMsIDQ4LCA0OSwgNTMsIAorICAgIDEyOCwgNzMsIDQ4LCA0OSwgNTIsIDEyOCwgNzMsIDQ4LCA0OSwgNTEsIDEyOCwgNzMsIDQ4LCA0OSwgNTAsIDEyOCwgNzMsIAorICAgIDQ4LCA0OSwgNDksIDY1LCAxMjgsIDczLCA0OCwgNDksIDQ5LCAxMjgsIDczLCA0OCwgNDksIDQ4LCA2NSwgMTI4LCA3MywgCisgICAgNDgsIDQ5LCA0OCwgMTI4LCA3MywgNDgsIDQ4LCA1NywgNjUsIDEyOCwgNzMsIDQ4LCA0OCwgNTcsIDEyOCwgNzMsIDQ4LCAKKyAgICA0OCwgNTYsIDEyOCwgNzMsIDQ4LCA0OCwgNTUsIDEyOCwgNzMsIDQ4LCA0OCwgNTQsIDEyOCwgNzMsIDQ4LCA0OCwgNTMsIAorICAgIDY1LCAxMjgsIDczLCA0OCwgNDgsIDUzLCAxMjgsIDczLCA0OCwgNDgsIDUyLCAxMjgsIDczLCA0OCwgNDgsIDUxLCAxMjgsIAorICAgIDczLCA0OCwgNDgsIDUwLCAxMjgsIDczLCA0OCwgNDgsIDQ5LCAxMjgsIDczLCA0NSwgODksIDg1LCAxMjgsIDczLCA0NSwgCisgICAgODksIDc5LCAxMjgsIDczLCA0NSwgODksIDY5LCA3OSwgMTI4LCA3MywgNDUsIDg5LCA2OSwgMTI4LCA3MywgNDUsIDg5LCAKKyAgICA2NSwgNjksIDEyOCwgNzMsIDQ1LCA4OSwgNjUsIDQ1LCA3OSwgMTI4LCA3MywgNDUsIDg5LCA2NSwgMTI4LCA3MywgNDUsIAorICAgIDc5LCA0NSwgNzMsIDEyOCwgNzMsIDQ1LCA3OSwgMTI4LCA3MywgNDUsIDY5LCA4NSwgMTI4LCA3MywgNDUsIDY2LCA2OSwgCisgICAgNjUsIDc3LCAxMjgsIDczLCA0NSwgNjUsIDgyLCA2NSwgNjksIDY1LCAxMjgsIDczLCA0NSwgNjUsIDEyOCwgNzIsIDkwLCAKKyAgICA5MCwgOTAsIDcxLCAxMjgsIDcyLCA5MCwgOTAsIDkwLCAxMjgsIDcyLCA5MCwgOTAsIDgwLCAxMjgsIDcyLCA5MCwgOTAsIAorICAgIDEyOCwgNzIsIDkwLCA4NywgNzEsIDEyOCwgNzIsIDkwLCA4NywgMTI4LCA3MiwgOTAsIDg0LCAxMjgsIDcyLCA5MCwgNzEsIAorICAgIDEyOCwgNzIsIDg5LCA4MywgODQsIDY5LCA4MiwgNjksIDgzLCA3MywgMjExLCA3MiwgODksIDgwLCA3OSwgNjgsIDczLCA2NSwgCisgICAgODMsIDg0LCA3OSwgNzYsIDY5LCAxMjgsIDcyLCA4OSwgODAsIDcyLCA2OSwgNzgsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDcyLCAKKyAgICA4OSwgODAsIDcyLCA2OSwgNzgsIDQ1LCA3NywgNzMsIDc4LCA4NSwgODMsIDEyOCwgNzIsIDg5LCA4MCwgNzIsIDY5LCA3OCwgCisgICAgMTI4LCA3MiwgODksIDgwLCA3MiwgNjksIDIwNiwgNzIsIDg4LCA4NywgNzEsIDEyOCwgNzIsIDg4LCA4NSwgNzksIDg4LCAKKyAgICAxMjgsIDcyLCA4OCwgODUsIDc5LCA4NCwgMTI4LCA3MiwgODgsIDg1LCA3OSwgODAsIDEyOCwgNzIsIDg4LCA4NSwgNzksIAorICAgIDEyOCwgNzIsIDg4LCA3OSwgODgsIDEyOCwgNzIsIDg4LCA3OSwgODQsIDEyOCwgNzIsIDg4LCA3OSwgODAsIDEyOCwgNzIsIAorICAgIDg4LCA3OSwgMTI4LCA3MiwgODgsIDczLCA4OCwgMTI4LCA3MiwgODgsIDczLCA4NCwgMTI4LCA3MiwgODgsIDczLCA4MCwgCisgICAgMTI4LCA3MiwgODgsIDczLCA2OSwgODgsIDEyOCwgNzIsIDg4LCA3MywgNjksIDg0LCAxMjgsIDcyLCA4OCwgNzMsIDY5LCAKKyAgICA4MCwgMTI4LCA3MiwgODgsIDczLCA2OSwgMTI4LCA3MiwgODgsIDczLCAxMjgsIDcyLCA4OCwgNjksIDg4LCAxMjgsIDcyLCAKKyAgICA4OCwgNjksIDgwLCAxMjgsIDcyLCA4OCwgNjksIDEyOCwgNzIsIDg4LCA2NSwgODgsIDEyOCwgNzIsIDg4LCA2NSwgODQsIAorICAgIDEyOCwgNzIsIDg4LCA2NSwgODAsIDEyOCwgNzIsIDg4LCA2NSwgMTI4LCA3MiwgODcsIDg1LCAxMjgsIDcyLCA4NywgNjUsIAorICAgIDczLCA4MiwgMTI4LCA3MiwgODYsIDEyOCwgNzIsIDg1LCA4MywgNzIsIDY5LCAxOTYsIDcyLCA4NSwgODIsIDY1LCA3OCwgCiAgICAgMTI4LCA3MiwgODUsIDc5LCA4NCwgMTI4LCA3MiwgODUsIDc4LCA2OCwgODIsIDY5LCA2OCwgMTI4LCA3MiwgODUsIDc4LCAKICAgICA2OCwgODIsIDY5LCAxOTYsIDcyLCA4NSwgNzgsIDEyOCwgNzIsIDg1LCA3NywgNjUsIDc4LCAxMjgsIDcyLCA4NSwgNzcsIAogICAgIDY1LCAyMDYsIDcyLCA4NSwgNzYsIDUwLCAxMjgsIDcyLCA4NSwgNzMsIDczLCA4NCwgNzksIDEyOCwgNzIsIDg1LCA2NiwgCiAgICAgNTAsIDEyOCwgNzIsIDg1LCA2NiwgMTc4LCA3MiwgODUsIDY2LCAxMjgsIDcyLCA4NSwgNjUsIDgyLCA2NSwgNjgsIDY4LCAKLSAgICA3OSwgMTI4LCA3MiwgODIsIDg5LCA4NiwgNzgsIDczLCAxOTMsIDcyLCA4MCwgODcsIDcxLCAxMjgsIDcyLCA4MCwgNjUsIAotICAgIDEyOCwgNzIsIDgwLCAxMjgsIDcyLCA3OSwgODUsIDgzLCAxOTcsIDcyLCA3OSwgODUsIDgyLCA3MSwgNzYsIDY1LCA4MywgCi0gICAgODMsIDEyOCwgNzIsIDc5LCA4NSwgODIsIDcxLCA3NiwgNjUsIDgzLCAyMTEsIDcyLCA3OSwgODUsIDgyLCAxMjgsIDcyLCAKLSAgICA3OSwgODUsIDIxMCwgNzIsIDc5LCA4NCwgNjksIDc2LCAxMjgsIDcyLCA3OSwgODQsIDY1LCAxMjgsIDcyLCA3OSwgODMsIAotICAgIDgwLCA3MywgODQsIDY1LCA3NiwgMTI4LCA3MiwgNzksIDgyLCA4MywgNjksIDEyOCwgNzIsIDc5LCA4MiwgODMsIDE5NywgCi0gICAgNzIsIDc5LCA4MiwgNzgsIDgzLCAxMjgsIDcyLCA3OSwgODIsIDczLCA5MCwgNzksIDc4LCA4NCwgNjUsIDc2LCA3NiwgMjE3LCAKLSAgICA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgCi0gICAgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIAotICAgIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCAKLSAgICA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgCi0gICAgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIAotICAgIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCAKLSAgICA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgCi0gICAgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIAotICAgIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCAKLSAgICA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgCi0gICAgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MywgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCAKLSAgICA1MywgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MywgCi0gICAgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIAotICAgIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCAKLSAgICA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MiwgCi0gICAgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MSwgMTI4LCAKLSAgICA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgCi0gICAgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIAotICAgIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCAKLSAgICA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgCi0gICAgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIAotICAgIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCAKLSAgICA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgCi0gICAgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIAotICAgIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCAKLSAgICA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgCi0gICAgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MCwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCAKLSAgICA1MCwgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgCi0gICAgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIAotICAgIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCAKLSAgICA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA0OCwgCi0gICAgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1NCwgMTI4LCAKLSAgICA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgCi0gICAgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIAotICAgIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCAKLSAgICA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgCi0gICAgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIAotICAgIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCAKLSAgICA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgCi0gICAgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIAotICAgIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCAKLSAgICA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgCi0gICAgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA0OCwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCAKLSAgICA0OCwgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgMTI4LCA3MiwgNzksIAotICAgIDgyLCA3MywgMTI4LCA3MiwgNzksIDgyLCAxOTMsIDcyLCA3OSwgNzksIDgyLCA4NSwgMTI4LCA3MiwgNzksIDc5LCA4MCwgCi0gICAgMTI4LCA3MiwgNzksIDc5LCA3OCwgMTI4LCA3MiwgNzksIDc4LCA2OSwgODksIDY2LCA2OSwgNjksIDEyOCwgNzIsIDc5LCAKLSAgICA3OCwgNjksIDIxNywgNzIsIDc5LCA3NywgNzksIDg0LCA3MiwgNjksIDg0LCA3MywgNjcsIDEyOCwgNzIsIDc5LCA3NywgNzksIAotICAgIDg0LCA3MiwgNjksIDg0LCA3MywgMTk1LCA3MiwgNzksIDc2LCA2OSwgMTI4LCA3MiwgNzksIDc2LCA2OCwgNzMsIDc4LCAKLSAgICAxOTksIDcyLCA3OSwgNzYsIDY1LCA3NywgMTI4LCA3MiwgNzksIDc2LCA2NSwgMjA1LCA3MiwgNzksIDc1LCA2NSwgMTI4LCAKLSAgICA3MiwgNzksIDczLCAxMjgsIDcyLCA3OSwgNjcsIDcyLCA3OSwgMTI4LCA3MiwgNzgsIDg1LCA4NCwgMTI4LCA3MiwgNzgsIAotICAgIDg1LCA3OSwgODgsIDEyOCwgNzIsIDc4LCA4NSwgNzksIDEyOCwgNzIsIDc4LCA3OSwgODgsIDEyOCwgNzIsIDc4LCA3OSwgCi0gICAgODQsIDEyOCwgNzIsIDc4LCA3OSwgODAsIDEyOCwgNzIsIDc4LCA3MywgODgsIDEyOCwgNzIsIDc4LCA3MywgODQsIDEyOCwgCi0gICAgNzIsIDc4LCA3MywgODAsIDEyOCwgNzIsIDc4LCA3MywgNjksIDg4LCAxMjgsIDcyLCA3OCwgNzMsIDY5LCA4NCwgMTI4LCAKLSAgICA3MiwgNzgsIDczLCA2OSwgODAsIDEyOCwgNzIsIDc4LCA3MywgNjksIDEyOCwgNzIsIDc4LCA3MywgMTI4LCA3MiwgNzgsIAotICAgIDY5LCA4OCwgMTI4LCA3MiwgNzgsIDY5LCA4MCwgMTI4LCA3MiwgNzgsIDY5LCAxMjgsIDcyLCA3OCwgNjUsIDg4LCAxMjgsIAotICAgIDcyLCA3OCwgNjUsIDg0LCAxMjgsIDcyLCA3OCwgNjUsIDgwLCAxMjgsIDcyLCA3OCwgNjUsIDEyOCwgNzIsIDc3LCA4OSwgCi0gICAgODgsIDEyOCwgNzIsIDc3LCA4OSwgODIsIDg4LCAxMjgsIDcyLCA3NywgODksIDgyLCAxMjgsIDcyLCA3NywgODksIDgwLCAKLSAgICAxMjgsIDcyLCA3NywgODksIDEyOCwgNzIsIDc3LCA4NSwgODgsIDEyOCwgNzIsIDc3LCA4NSwgODQsIDEyOCwgNzIsIDc3LCAKLSAgICA4NSwgODIsIDg4LCAxMjgsIDcyLCA3NywgODUsIDgyLCAxMjgsIDcyLCA3NywgODUsIDgwLCAxMjgsIDcyLCA3NywgODUsIAotICAgIDc5LCA4OCwgMTI4LCA3MiwgNzcsIDg1LCA3OSwgODAsIDEyOCwgNzIsIDc3LCA4NSwgNzksIDEyOCwgNzIsIDc3LCA4NSwgCi0gICAgMTI4LCA3MiwgNzcsIDc5LCA4OCwgMTI4LCA3MiwgNzcsIDc5LCA4NCwgMTI4LCA3MiwgNzcsIDc5LCA4MCwgMTI4LCA3MiwgCi0gICAgNzcsIDc5LCAxMjgsIDcyLCA3NywgNzMsIDg4LCAxMjgsIDcyLCA3NywgNzMsIDg0LCAxMjgsIDcyLCA3NywgNzMsIDgwLCAKLSAgICAxMjgsIDcyLCA3NywgNzMsIDY5LCA4OCwgMTI4LCA3MiwgNzcsIDczLCA2OSwgODAsIDEyOCwgNzIsIDc3LCA3MywgNjksIAotICAgIDEyOCwgNzIsIDc3LCA3MywgMTI4LCA3MiwgNzcsIDY5LCAxMjgsIDcyLCA3NywgNjUsIDg4LCAxMjgsIDcyLCA3NywgNjUsIAotICAgIDg0LCAxMjgsIDcyLCA3NywgNjUsIDgwLCAxMjgsIDcyLCA3NywgNjUsIDEyOCwgNzIsIDc2LCA4OSwgODgsIDEyOCwgNzIsIAotICAgIDc2LCA4OSwgODQsIDEyOCwgNzIsIDc2LCA4OSwgODIsIDg4LCAxMjgsIDcyLCA3NiwgODksIDgyLCAxMjgsIDcyLCA3NiwgCi0gICAgODksIDgwLCAxMjgsIDcyLCA3NiwgODksIDEyOCwgNzIsIDc2LCA4NSwgODgsIDEyOCwgNzIsIDc2LCA4NSwgODQsIDEyOCwgCi0gICAgNzIsIDc2LCA4NSwgODIsIDg4LCAxMjgsIDcyLCA3NiwgODUsIDgyLCAxMjgsIDcyLCA3NiwgODUsIDgwLCAxMjgsIDcyLCAKLSAgICA3NiwgODUsIDc5LCA4OCwgMTI4LCA3MiwgNzYsIDg1LCA3OSwgODAsIDEyOCwgNzIsIDc2LCA4NSwgNzksIDEyOCwgNzIsIAotICAgIDc2LCA4NSwgMTI4LCA3MiwgNzYsIDc5LCA4OCwgMTI4LCA3MiwgNzYsIDc5LCA4MCwgMTI4LCA3MiwgNzYsIDc5LCAxMjgsIAotICAgIDcyLCA3NiwgNzMsIDg4LCAxMjgsIDcyLCA3NiwgNzMsIDg0LCAxMjgsIDcyLCA3NiwgNzMsIDgwLCAxMjgsIDcyLCA3NiwgCi0gICAgNzMsIDY5LCA4OCwgMTI4LCA3MiwgNzYsIDczLCA2OSwgODAsIDEyOCwgNzIsIDc2LCA3MywgNjksIDEyOCwgNzIsIDc2LCAKLSAgICA3MywgMTI4LCA3MiwgNzYsIDY5LCA4OCwgMTI4LCA3MiwgNzYsIDY5LCA4MCwgMTI4LCA3MiwgNzYsIDY5LCAxMjgsIDcyLCAKLSAgICA3NiwgNjUsIDg4LCAxMjgsIDcyLCA3NiwgNjUsIDg0LCAxMjgsIDcyLCA3NiwgNjUsIDgwLCAxMjgsIDcyLCA3NiwgNjUsIAotICAgIDEyOCwgNzIsIDc1LCAxMjgsIDcyLCA3MywgOTAsIDY2LCAxMjgsIDcyLCA3MywgODMsIDg0LCA3OSwgODIsIDczLCAxOTUsIAotICAgIDcyLCA3MywgODIsIDczLCA4MSwgMTI4LCA3MiwgNzMsIDcxLCA3MiwgNDUsIDgzLCA4MCwgNjksIDY5LCAxOTYsIDcyLCA3MywgCi0gICAgNzEsIDcyLCA0NSwgODIsIDY5LCA4NiwgNjksIDgyLCA4MywgNjksIDY4LCA0NSwgMTg1LCA3MiwgNzMsIDcxLCA3MiwgNDUsIAotICAgIDcyLCA2OSwgNjksIDc2LCA2OSwgMTk2LCA3MiwgNzMsIDY5LCA4OCwgMTI4LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDQ1LCA4MywgCi0gICAgNzMsIDc5LCA4MywgMTI4LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDQ1LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgNzIsIDczLCAKLSAgICA2OSwgODUsIDcyLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDcyLCA3MywgNjksIDg1LCA3MiwgNDUsIDc4LCA3MywgCi0gICAgNjksIDg1LCA3OCwgMTI4LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDQ1LCA3NywgNzMsIDY5LCA4NSwgNzcsIDEyOCwgNzIsIDczLCAKLSAgICA2OSwgODUsIDIwMCwgNzIsIDczLCA2OSwgMTI4LCA3MiwgNzMsIDY4LCA3MywgNzgsIDE5OSwgNzIsIDczLCA2OCwgNjksIAotICAgIDg0LCAxMjgsIDcyLCA3MywgNjgsIDY5LCAxMjgsIDcyLCA3MywgNjYsIDczLCA4MywgNjcsIDg1LCA4MywgMTI4LCA3MiwgCi0gICAgNzIsIDg3LCA2NSwgMTI4LCA3MiwgNzIsIDg1LCAxMjgsIDcyLCA3MiwgNzMsIDEyOCwgNzIsIDcyLCA2OSwgNjksIDEyOCwgCi0gICAgNzIsIDcyLCA2OSwgMTI4LCA3MiwgNzIsIDY1LCA2NSwgMTI4LCA3MiwgNzEsIDEyOCwgNzIsIDY5LCA4OCwgNzMsIDcwLCAKLSAgICA3OSwgODIsIDIwNSwgNzIsIDY5LCA4OCwgNjUsIDcxLCA4MiwgNjUsIDIwNSwgNzIsIDY5LCA4OCwgNjUsIDcxLCA3OSwgNzgsIAotICAgIDEyOCwgNzIsIDY5LCA4MiwgODUsIDg0LCA4NSwgMTI4LCA3MiwgNjksIDgyLCA4NSwgMTI4LCA3MiwgNjksIDgyLCA3NywgCi0gICAgNzMsIDg0LCA3MywgNjUsIDIwNiwgNzIsIDY5LCA4MiwgNzcsIDczLCA3OSwgNzgsIDczLCA2NSwgMjA2LCA3MiwgNjksIDgyLCAKLSAgICA3NywgNjksIDgzLCAxMjgsIDcyLCA2OSwgODIsIDY2LCAxMjgsIDcyLCA2OSwgODIsIDY1LCA2OSwgODUsIDIwNSwgNzIsIAotICAgIDY5LCA3OCwgNzEsIDEyOCwgNzIsIDY5LCA3OCwgMTk5LCA3MiwgNjksIDc3LCA4MCwgMTI4LCA3MiwgNjksIDc2LCA3NywgCi0gICAgNjksIDg0LCAxMjgsIDcyLCA2OSwgNzYsIDc3LCA2OSwgMjEyLCA3MiwgNjksIDc2LCAyMDUsIDcyLCA2OSwgNzYsIDczLCAKLSAgICA2NywgNzksIDgwLCA4NCwgNjksIDgyLCAxMjgsIDcyLCA2OSwgNzUsIDg1LCA4NCwgNjUsIDY1LCA4MiwgODUsIDEyOCwgNzIsIAotICAgIDY5LCA3MywgODMsIDY5LCA3MywgMTI4LCA3MiwgNjksIDY1LCA4NiwgODksIDEyOCwgNzIsIDY5LCA2NSwgODYsIDY5LCA3OCwgCi0gICAgNzYsIDIxNywgNzIsIDY5LCA2NSwgODYsIDY5LCA3OCwgMTI4LCA3MiwgNjksIDY1LCA4NiwgNjksIDIwNiwgNzIsIDY5LCAKLSAgICA2NSwgODIsIDg0LCA4MywgMTI4LCA3MiwgNjksIDY1LCA4MiwgODQsIDQ1LCA4MywgNzIsIDY1LCA4MCwgNjksIDE5NiwgNzIsIAotICAgIDY5LCA2NSwgODIsIDg0LCAxMjgsIDcyLCA2OSwgNjUsIDgyLCAyMTIsIDcyLCA2OSwgNjUsIDgyLCA0NSwgNzgsIDc5LCA0NSwgCi0gICAgNjksIDg2LCA3MywgMjA0LCA3MiwgNjksIDY1LCA2OCwgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgMTI4LCA3MiwgNjksIDY1LCAKLSAgICA2OCwgODMsIDg0LCA3OSwgNzgsIDE5NywgNzIsIDY5LCA2NSwgNjgsIDgwLCA3MiwgNzksIDc4LCA2OSwgMTI4LCA3MiwgNjksIAotICAgIDY1LCA2OCwgNzMsIDc4LCA3MSwgMTI4LCA3MiwgNjYsIDY1LCA4MywgNjUsIDQ1LCA2OSwgODMsIDY1LCA4MywgMTkzLCA3MiwgCi0gICAgNjYsIDY1LCA4MywgMTkzLCA3MiwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MiwgNjUsIDg2LCA2OSwgMTI4LCAKLSAgICA3MiwgNjUsIDg1LCA4MCwgODQsIDgzLCA4NCwgNzMsIDc3LCA3NywgNjksIDEyOCwgNzIsIDY1LCA4NCwgNzIsIDczLCAxMjgsIAotICAgIDcyLCA2NSwgODQsIDY5LCAxMjgsIDcyLCA2NSwgODQsIDY3LCA3MiwgNzMsIDc4LCAxOTksIDcyLCA2NSwgODQsIDY1LCAKLSAgICAxOTgsIDcyLCA2NSwgODMsIDY5LCAyMTAsIDcyLCA2NSwgODMsIDY1LCA3OCwgODQsIDY1LCAxMjgsIDcyLCA2NSwgODIsIAotICAgIDgwLCA3OSwgNzksIDc4LCAxMjgsIDcyLCA2NSwgODIsIDgwLCA3OSwgNzksIDIwNiwgNzIsIDY1LCA4MiwgNzcsIDc5LCA3OCwgCi0gICAgNzMsIDY3LCAxMjgsIDcyLCA2NSwgODIsIDc1LCA3NiwgNjksIDY1LCAyMDYsIDcyLCA2NSwgODIsIDY4LCA3OCwgNjksIDgzLCAKLSAgICA4MywgMTI4LCA3MiwgNjUsIDgyLCAxOTYsIDcyLCA2NSwgODAsIDgwLCAyMTcsIDcyLCA2NSwgNzgsIDg1LCA3OCwgNzksIAotICAgIDIwNywgNzIsIDY1LCA3OCwgNzEsIDkwLCA3MiwgNzksIDIxMywgNzIsIDY1LCA3OCwgNjgsIDgzLCAxMjgsIDcyLCA2NSwgCi0gICAgNzgsIDY4LCAyMTEsIDcyLCA2NSwgNzgsIDY4LCA3NiwgNjksIDgzLCAxMjgsIDcyLCA2NSwgNzgsIDY4LCA3NiwgNjksIAotICAgIDEyOCwgNzIsIDY1LCA3OCwgNjgsIDY2LCA2NSwgNzEsIDEyOCwgNzIsIDY1LCA3OCwgNjgsIDEyOCwgNzIsIDY1LCA3OCwgCi0gICAgNDUsIDY1LCA3NSwgNjUsIDg0LCAxMjgsIDcyLCA2NSwgNzcsIDkwLCA2NSwgMTI4LCA3MiwgNjUsIDc3LCA4MywgODQsIDY5LCAKLSAgICAyMTAsIDcyLCA2NSwgNzcsIDc3LCA2OSwgODIsIDEyOCwgNzIsIDY1LCA3NywgNzcsIDY5LCAyMTAsIDcyLCA2NSwgNzcsIAotICAgIDY2LCA4NSwgODIsIDcxLCA2OSwgODIsIDEyOCwgNzIsIDY1LCA3NiwgODEsIDY1LCAxMjgsIDcyLCA2NSwgNzYsIDc5LCAKLSAgICAxMjgsIDcyLCA2NSwgNzYsIDcwLCAxMjgsIDcyLCA2NSwgNzYsIDY2LCA2OSwgODIsIDY4LCAxMjgsIDcyLCA2NSwgNzYsIAotICAgIDY1LCA3OCwgODQsIDY1LCAxMjgsIDcyLCA2NSwgNzMsIDg0LCA4NSwgMTI4LCA3MiwgNjUsIDczLCA4MiwgNjcsIDg1LCA4NCwgCi0gICAgMTI4LCA3MiwgNjUsIDczLCA4MiwgMTI4LCA3MiwgNjUsIDcxLCA3NiwgNjUsIDIxOCwgNzIsIDY1LCA3MSwgNzYsIDEyOCwgCi0gICAgNzIsIDY1LCA3MCwgODUsIDc1LCA3MiwgNjUsIDEyOCwgNzIsIDY1LCA3MCwgODUsIDc1LCA3MiwgMTI4LCA3MiwgNjUsIDY5LCAKLSAgICA3MSwgMjA0LCA3MiwgNjUsIDY1LCA4MiwgODUsIDEyOCwgNzIsIDY1LCA2NSwgNzcsIDEyOCwgNzIsIDY1LCAxOTMsIDcyLCAKLSAgICA2NSwgNDUsIDcyLCA2NSwgMTI4LCA3MiwgNDgsIDQ4LCA1NiwgMTI4LCA3MiwgNDgsIDQ4LCA1NSwgMTI4LCA3MiwgNDgsIAotICAgIDQ4LCA1NCwgNjUsIDEyOCwgNzIsIDQ4LCA0OCwgNTQsIDEyOCwgNzIsIDQ4LCA0OCwgNTMsIDEyOCwgNzIsIDQ4LCA0OCwgCi0gICAgNTIsIDEyOCwgNzIsIDQ4LCA0OCwgNTEsIDEyOCwgNzIsIDQ4LCA0OCwgNTAsIDEyOCwgNzIsIDQ4LCA0OCwgNDksIDEyOCwgCi0gICAgNzIsIDQ1LCA4NCwgODksIDgwLCAxOTcsIDcxLCA4OSwgODUsIDEyOCwgNzEsIDg5LCA3OSwgNzgsIDEyOCwgNzEsIDg5LCAKLSAgICA3OSwgMTI4LCA3MSwgODksIDczLCAxMjgsIDcxLCA4OSwgNzAsIDIxMywgNzEsIDg5LCA2OSwgNjksIDEyOCwgNzEsIDg5LCAKLSAgICA2NSwgODMsIDEyOCwgNzEsIDg5LCA2NSwgNjUsIDEyOCwgNzEsIDg5LCA2NSwgMTI4LCA3MSwgODksIDEyOCwgNzEsIDg3LCAKLSAgICA4NSwgMTI4LCA3MSwgODcsIDczLCAxMjgsIDcxLCA4NywgNjksIDY5LCAxMjgsIDcxLCA4NywgNjksIDEyOCwgNzEsIDg3LCAKLSAgICA2NSwgNjUsIDEyOCwgNzEsIDg3LCA2NSwgMTI4LCA3MSwgODYsIDEyOCwgNzEsIDg1LCA4MiwgODUsIDgzLCA3MiwgMTI4LCAKLSAgICA3MSwgODUsIDgyLCA4NSwgNzgsIDEyOCwgNzEsIDg1LCA4MiwgNjUsIDc3LCA4NSwgODQsIDc5LCA3OCwgMTI4LCA3MSwgODUsIAotICAgIDgyLCA1NSwgMTI4LCA3MSwgODUsIDc4LCA4NSwgMTI4LCA3MSwgODUsIDc4LCAyMTMsIDcxLCA4NSwgMjA1LCA3MSwgODUsIAotICAgIDc2LCAxMjgsIDcxLCA4NSwgNzMsIDg0LCA2NSwgODIsIDEyOCwgNzEsIDg1LCAxOTksIDcxLCA4NSwgNjksIDcyLCAxMjgsIAotICAgIDcxLCA4NSwgNjksIDIwMCwgNzEsIDg1LCA2OCwgMTI4LCA3MSwgODUsIDE5NiwgNzEsIDg1LCA2NSwgODIsIDY4LCA4MywgCi0gICAgNzcsIDY1LCA3OCwgMTI4LCA3MSwgODUsIDY1LCA4MiwgNjgsIDY5LCA2OCwgNzgsIDY5LCA4MywgODMsIDEyOCwgNzEsIDg1LCAKLSAgICA2NSwgODIsIDY1LCA3OCwgMjAxLCA3MSwgODUsIDE5MywgNzEsIDg1LCAxNzgsIDcxLCA4NCwgNjksIDIxMCwgNzEsIDgzLCAKLSAgICA4NSwgNzcsIDEyOCwgNzEsIDgzLCA4NSwgMjA1LCA3MSwgODIsIDIxMywgNzEsIDgyLCA3OSwgODcsIDczLCA3OCwgMTk5LCAKLSAgICA3MSwgODIsIDc5LCA4NSwgNzgsIDY4LCAxMjgsIDcxLCA4MiwgNzksIDc4LCA4NCwgNzIsIDczLCA4MywgNzcsIDY1LCA4NCwgCi0gICAgNjUsIDEyOCwgNzEsIDgyLCA3MywgNzgsIDc4LCA3MywgNzgsIDE5OSwgNzEsIDgyLCA2OSwgNzEsIDc5LCA4MiwgNzMsIDY1LCAKLSAgICAyMDYsIDcxLCA4MiwgNjksIDY5LCAyMDYsIDcxLCA4MiwgNjksIDY1LCA4NCwgNzgsIDY5LCA4MywgODMsIDEyOCwgNzEsIAotICAgIDgyLCA2OSwgNjUsIDg0LCA2OSwgODIsIDQ1LCA4NCwgNzIsIDY1LCA3OCwgMTI4LCA3MSwgODIsIDY5LCA2NSwgODQsIDY5LCAKLSAgICA4MiwgNDUsIDg0LCA3MiwgNjUsIDIwNiwgNzEsIDgyLCA2OSwgNjUsIDg0LCA2OSwgMjEwLCA3MSwgODIsIDY5LCA2NSwgCi0gICAgMjEyLCA3MSwgODIsIDY1LCA4NiwgNjksIDg5LCA2NSwgODIsIDE5NiwgNzEsIDgyLCA2NSwgODYsIDY5LCA0NSwgNzcsIDY1LCAKLSAgICA2NywgODIsIDc5LCA3OCwgMTI4LCA3MSwgODIsIDY1LCA4NiwgNjksIDQ1LCA2NSwgNjcsIDg1LCA4NCwgNjksIDQ1LCA3MSwgCi0gICAgODIsIDY1LCA4NiwgNjksIDEyOCwgNzEsIDgyLCA2NSwgODYsIDE5NywgNzEsIDgyLCA2NSwgODQsIDY5LCA4MiwgMTI4LCAKLSAgICA3MSwgODIsIDY1LCA4MywgODMsIDEyOCwgNzEsIDgyLCA2NSwgODMsIDIxMSwgNzEsIDgyLCA2NSwgODAsIDcyLCA2OSwgNzcsIAotICAgIDE5NywgNzEsIDgyLCA2NSwgODAsIDY5LCA4MywgMTI4LCA3MSwgODIsIDY1LCA3NywgNzcsIDE5MywgNzEsIDgyLCA2NSwgCi0gICAgNzMsIDc4LCAxMjgsIDcxLCA4MiwgNjUsIDY4LCA4NSwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzEsIDgyLCA2NSwgNjcsIDY5LCAKLSAgICAxMjgsIDcxLCA4MiwgNjUsIDY3LCAxOTcsIDcxLCA4MCwgNjUsIDEyOCwgNzEsIDc5LCA4MiwgODQsIDcyLCA3NywgNzMsIAotICAgIDc1LCA3OSwgMjA2LCA3MSwgNzksIDgyLCA4NCwgMTI4LCA3MSwgNzksIDgyLCA3MSwgNzksIDg0LCA2OSwgODIsIDczLCAKLSAgICAxMjgsIDcxLCA3OSwgODIsIDcxLCA3OSwgODMsIDg5LCA3OCwgODQsIDcyLCA2OSwgODQsIDc5LCA3OCwgMTI4LCA3MSwgNzksIAotICAgIDgyLCA3MSwgNzksIDIwNiwgNzEsIDc5LCA4MiwgNzEsIDczLCAxMjgsIDcxLCA3OSwgODIsIDY1LCAxMjgsIDcxLCA3OSwgCi0gICAgNzksIDE5NiwgNzEsIDc5LCA3OCwgNzEsIDEyOCwgNzEsIDc5LCA3NiwgNjgsIDEyOCwgNzEsIDc5LCA3NSwgMTI4LCA3MSwgCi0gICAgNzksIDczLCA3OCwgMTk5LCA3MSwgNzksIDY2LCA3NiwgNzMsIDc4LCAxMjgsIDcxLCA3OSwgNjUsIDc2LCAxMjgsIDcxLCAKLSAgICA3OSwgNjUsIDIwNCwgNzEsIDc5LCA2NSwgMTI4LCA3MSwgNzgsIDg5LCA3MywgODMsIDEyOCwgNzEsIDc4LCA2NSwgODYsIAotICAgIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA3MSwgNzYsIDc5LCA4NywgNzMsIDc4LCAxOTksIDcxLCA3NiwgNzksIDg0LCA4NCwgCi0gICAgNjUsIDIwNCwgNzEsIDc2LCA3OSwgNjYsIDE5NywgNzEsIDc2LCA3MywgODMsIDgzLCA2NSwgNzgsIDY4LCAyMDcsIDcxLCAKLSAgICA3NiwgNjksIDczLCA2NywgMjAwLCA3MSwgNzYsIDY1LCA3MSwgNzksIDc2LCA3MywgMTI4LCA3MSwgNzYsIDY1LCAxMjgsIAotICAgIDcxLCA3NCwgNjksIDEyOCwgNzEsIDczLCA4OCwgMTI4LCA3MSwgNzMsIDg0LCAxMjgsIDcxLCA3MywgODMsIDcyLCAxMjgsIAotICAgIDcxLCA3MywgODMsIDIwMCwgNzEsIDczLCA4MywgNjUsIDc2LCAxMjgsIDcxLCA3MywgODIsIDg1LCA2OCwgNjUsIDY1LCAKLSAgICAxMjgsIDcxLCA3MywgODIsIDc2LCAxMjgsIDcxLCA3MywgODIsIDUxLCAxMjgsIDcxLCA3MywgODIsIDE3OSwgNzEsIDczLCAKLSAgICA4MiwgNTAsIDEyOCwgNzEsIDczLCA4MiwgMTc4LCA3MSwgNzMsIDgwLCAxMjgsIDcxLCA3MywgNzgsIDczLCA3MywgMTI4LCAKLSAgICA3MSwgNzMsIDc3LCA2OSwgNzYsIDEyOCwgNzEsIDczLCA3NywgNjksIDIwNCwgNzEsIDczLCA3NywgMTI4LCA3MSwgNzMsIAotICAgIDcxLCA2NSwgMTI4LCA3MSwgNzMsIDY5LCA4NCwgMTI4LCA3MSwgNzMsIDY4LCA3MywgNzcsIDEyOCwgNzEsIDczLCA2NiwgCi0gICAgNjYsIDc5LCA4NSwgMjExLCA3MSwgNzMsIDY2LCA2NSwgMTI4LCA3MSwgNzMsIDUyLCAxMjgsIDcxLCA3MywgMTgwLCA3MSwgCi0gICAgNzIsIDkwLCAxMjgsIDcxLCA3MiwgODcsIDY1LCAxMjgsIDcxLCA3MiwgODUsIDc4LCA3OCwgNjUsIDEyOCwgNzEsIDcyLCAKLSAgICA4NSwgNzgsIDc4LCAxOTMsIDcxLCA3MiwgODUsIDEyOCwgNzEsIDcyLCA3OSwgODUsIDEyOCwgNzEsIDcyLCA3OSwgODMsIAotICAgIDg0LCAxMjgsIDcxLCA3MiwgNzksIDEyOCwgNzEsIDcyLCA3MywgMTI4LCA3MSwgNzIsIDcyLCA2NSwgMTI4LCA3MSwgNzIsIAotICAgIDY5LCA4NSwgODgsIDEyOCwgNzEsIDcyLCA2OSwgODUsIDc4LCAxMjgsIDcxLCA3MiwgNjksIDg1LCA3MSwgNzIsIDY5LCA4NSwgCi0gICAgNjUsIDY5LCA3NywgMTI4LCA3MSwgNzIsIDY5LCA4NSwgNzEsIDcyLCA2OSwgNzgsIDEyOCwgNzEsIDcyLCA2OSwgODUsIDY1LCAKLSAgICA2OSwgODIsIDY1LCA2OSwgMTI4LCA3MSwgNzIsIDY5LCA4NSwgNjUsIDY5LCA3MSwgNzIsIDY5LCA4NSwgNjUsIDY5LCAxMjgsIAotICAgIDcxLCA3MiwgNjksIDg0LCAxMjgsIDcxLCA3MiwgNjksIDY5LCAxMjgsIDcxLCA3MiwgNjksIDEyOCwgNzEsIDcyLCAxOTcsIAotICAgIDcxLCA3MiwgNjUsIDg5LCA3OCwgMTI4LCA3MSwgNzIsIDY1LCA4MiwgNjUsIDY5LCAxMjgsIDcxLCA3MiwgNjUsIDgwLCAKLSAgICAxMjgsIDcxLCA3MiwgNjUsIDc4LCAxMjgsIDcxLCA3MiwgNjUsIDc3LCA2NSwgNzYsIDEyOCwgNzEsIDcyLCA2NSwgNzMsIAotICAgIDc4LCA4NSwgMTI4LCA3MSwgNzIsIDY1LCA3MywgNzgsIDEyOCwgNzEsIDcyLCA2NSwgNzMsIDIwNiwgNzEsIDcyLCA2NSwgCi0gICAgNjgsIDEyOCwgNzEsIDcyLCA2NSwgNjUsIDc3LCA2NSwgNjksIDEyOCwgNzEsIDcyLCA2NSwgNjUsIDEyOCwgNzEsIDcyLCAKLSAgICA2NSwgMTI4LCA3MSwgNzEsIDg3LCA3MywgMTI4LCA3MSwgNzEsIDg3LCA2OSwgNjksIDEyOCwgNzEsIDcxLCA4NywgNjksIAotICAgIDEyOCwgNzEsIDcxLCA4NywgNjUsIDY1LCAxMjgsIDcxLCA3MSwgODcsIDY1LCAxMjgsIDcxLCA3MSwgODUsIDg4LCAxMjgsIAotICAgIDcxLCA3MSwgODUsIDg0LCAxMjgsIDcxLCA3MSwgODUsIDgyLCA4OCwgMTI4LCA3MSwgNzEsIDg1LCA4MiwgMTI4LCA3MSwgCi0gICAgNzEsIDg1LCA3OSwgODgsIDEyOCwgNzEsIDcxLCA4NSwgNzksIDg0LCAxMjgsIDcxLCA3MSwgODUsIDc5LCA4MCwgMTI4LCAKLSAgICA3MSwgNzEsIDg1LCA3OSwgMTI4LCA3MSwgNzEsIDc5LCA4OCwgMTI4LCA3MSwgNzEsIDc5LCA4NCwgMTI4LCA3MSwgNzEsIAotICAgIDc5LCA4MCwgMTI4LCA3MSwgNzEsIDczLCA4OCwgMTI4LCA3MSwgNzEsIDczLCA4NCwgMTI4LCA3MSwgNzEsIDczLCA2OSwgCi0gICAgODgsIDEyOCwgNzEsIDcxLCA3MywgNjksIDgwLCAxMjgsIDcxLCA3MSwgNzMsIDY5LCAxMjgsIDcxLCA3MSwgNjksIDg4LCAKLSAgICAxMjgsIDcxLCA3MSwgNjksIDg0LCAxMjgsIDcxLCA3MSwgNjksIDgwLCAxMjgsIDcxLCA3MSwgNjUsIDg4LCAxMjgsIDcxLCAKLSAgICA3MSwgNjUsIDg0LCAxMjgsIDcxLCA3MSwgNjUsIDY1LCAxMjgsIDcxLCA2OSwgODQsIDE5MywgNzEsIDY5LCA4MywgODQsIAotICAgIDg1LCA4MiwgNjksIDEyOCwgNzEsIDY5LCA4MywgNzIsIDg1LCAxMjgsIDcxLCA2OSwgODMsIDcyLCA4NCwgNzMsIDc4LCAKLSAgICAxMjgsIDcxLCA2OSwgODMsIDcyLCA4NCwgNzMsIDIwNiwgNzEsIDY5LCA4MywgNzIsIDUwLCAxMjgsIDcxLCA2OSwgODIsIAotICAgIDgzLCA3MiwgNjUsIDg5LCA3MywgNzcsIDEyOCwgNzEsIDY5LCA4MiwgNzcsIDY1LCAyMDYsIDcxLCA2OSwgODIsIDY5LCA4MywgCi0gICAgNzIsIDEyOCwgNzEsIDY5LCA4MiwgNjksIDgzLCAyMDAsIDcxLCA2OSwgNzksIDc3LCA2OSwgODQsIDgyLCA3MywgNjcsIDY1LCAKLSAgICA3NiwgNzYsIDIxNywgNzEsIDY5LCA3OSwgNzcsIDY5LCA4NCwgODIsIDczLCAxOTUsIDcxLCA2OSwgNzgsIDg0LCA3NiwgCi0gICAgMTk3LCA3MSwgNjksIDc4LCA3MywgODQsIDczLCA4NiwgNjksIDEyOCwgNzEsIDY5LCA3OCwgNzMsIDc1LCAyMDEsIDcxLCAKLSAgICA2OSwgNzgsIDY5LCA4MiwgNzMsIDE5NSwgNzEsIDY5LCA3NywgNzMsIDc4LCA3MywgMTI4LCA3MSwgNjksIDc3LCA3MywgNzgsIAotICAgIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDcxLCA2OSwgMjA1LCA3MSwgNjksIDY4LCA3OSwgNzYsIDY1LCAxMjgsIDcxLCA2OSwgCi0gICAgNjgsIDY5LCAxMjgsIDcxLCA2OSwgNjYsIDIwNywgNzEsIDY5LCA2NiwgMTkzLCA3MSwgNjksIDY1LCA4MiwgMTI4LCA3MSwgCi0gICAgNjksIDY1LCAyMTAsIDcxLCA2OCwgNjUsIDc4LCAxMjgsIDcxLCA2NywgNzMsIDcxLCAxMjgsIDcxLCA2NywgNjUsIDIwNiwgCi0gICAgNzEsIDY2LCA3OSwgNzgsIDEyOCwgNzEsIDY2LCA3MywgNjksIDE5NywgNzEsIDY2LCA2OSwgODUsIDg4LCAxMjgsIDcxLCAKLSAgICA2NiwgNjksIDg0LCAxMjgsIDcxLCA2NiwgNjUsIDg5LCA3MywgMTI4LCA3MSwgNjYsIDY1LCA3NSwgODUsIDgyLCA4NSwgNzgsIAotICAgIDY5LCA3OCwgMTI4LCA3MSwgNjYsIDEyOCwgNzEsIDY1LCA4OSwgNjUsIDc4LCA4NSwgNzUsIDczLCA4NCwgODQsIDY1LCAKLSAgICAxMjgsIDcxLCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDcxLCA2NSwgODksIDEyOCwgNzEsIDY1LCA4NSwgNzgsIAotICAgIDg0LCA3NiwgNjksIDg0LCAxMjgsIDcxLCA2NSwgODQsIDcyLCA2OSwgODIsIDczLCA3OCwgNzEsIDEyOCwgNzEsIDY1LCA4NCwgCi0gICAgNzIsIDY5LCA4MiwgNzMsIDc4LCAxOTksIDcxLCA2NSwgODQsIDY5LCAxMjgsIDcxLCA2NSwgODMsIDcyLCA2NSwgNzgsIAotICAgIDEyOCwgNzEsIDY1LCA4MiwgODMsIDcyLCA4NSwgNzgsIDczLCAxMjgsIDcxLCA2NSwgODIsIDc5LCA3OCwgMTI4LCA3MSwgCi0gICAgNjUsIDgyLCA3NywgNjksIDc4LCA4NCwgMTI4LCA3MSwgNjUsIDgyLCA2OCwgNjksIDc4LCAxMjgsIDcxLCA2NSwgODIsIDUxLCAKLSAgICAxMjgsIDcxLCA2NSwgODAsIDgwLCA2OSwgMTk2LCA3MSwgNjUsIDIwOCwgNzEsIDY1LCA3OCwgNzcsIDY1LCAxMjgsIDcxLCAKLSAgICA2NSwgNzgsIDcxLCA3MywgNjUsIDEyOCwgNzEsIDY1LCA3OCwgNjgsIDE5MywgNzEsIDY1LCA3OCwgNTAsIDEyOCwgNzEsIAotICAgIDY1LCA3OCwgMTc4LCA3MSwgNjUsIDc3LCA3NywgNjUsIDEyOCwgNzEsIDY1LCA3NywgNzYsIDY1LCAxMjgsIDcxLCA2NSwgCi0gICAgNzcsIDc2LCAxMjgsIDcxLCA2NSwgNzcsIDY5LCAxMjgsIDcxLCA2NSwgNzcsIDE5NywgNzEsIDY1LCA3NywgNjUsIDc4LCAKLSAgICAxMjgsIDcxLCA2NSwgNzcsIDY1LCA3NiwgMTI4LCA3MSwgNjUsIDc3LCA2NSwgMjA0LCA3MSwgNjUsIDcxLCAxMjgsIDcxLCAKLSAgICA2NSwgNzAsIDEyOCwgNzEsIDY1LCAxOTgsIDcxLCA2NSwgNjksIDg0LCA4NCwgNjUsIDQ1LCA4MCwgNzMsIDc2LCA3NiwgNjUsIAotICAgIDEyOCwgNzEsIDY1LCA2OCwgNzksIDc2LCAxMjgsIDcxLCA2NSwgNjgsIDEyOCwgNzEsIDY1LCAxOTYsIDcxLCA2NSwgNjYsIAotICAgIDY1LCAxMjgsIDcxLCA2NSwgNjYsIDE5MywgNzEsIDY1LCA2NSwgNzAsIDg1LCAxMjgsIDcxLCA2NSwgMTc4LCA3MSwgNDgsIAotICAgIDUzLCA1MiwgMTI4LCA3MSwgNDgsIDUzLCA1MSwgMTI4LCA3MSwgNDgsIDUzLCA1MCwgMTI4LCA3MSwgNDgsIDUzLCA0OSwgCi0gICAgMTI4LCA3MSwgNDgsIDUzLCA0OCwgMTI4LCA3MSwgNDgsIDUyLCA1NywgMTI4LCA3MSwgNDgsIDUyLCA1NiwgMTI4LCA3MSwgCi0gICAgNDgsIDUyLCA1NSwgMTI4LCA3MSwgNDgsIDUyLCA1NCwgMTI4LCA3MSwgNDgsIDUyLCA1MywgNjUsIDEyOCwgNzEsIDQ4LCAKLSAgICA1MiwgNTMsIDEyOCwgNzEsIDQ4LCA1MiwgNTIsIDEyOCwgNzEsIDQ4LCA1MiwgNTEsIDY1LCAxMjgsIDcxLCA0OCwgNTIsIAotICAgIDUxLCAxMjgsIDcxLCA0OCwgNTIsIDUwLCAxMjgsIDcxLCA0OCwgNTIsIDQ5LCAxMjgsIDcxLCA0OCwgNTIsIDQ4LCAxMjgsIAotICAgIDcxLCA0OCwgNTEsIDU3LCAxMjgsIDcxLCA0OCwgNTEsIDU2LCAxMjgsIDcxLCA0OCwgNTEsIDU1LCA2NSwgMTI4LCA3MSwgCi0gICAgNDgsIDUxLCA1NSwgMTI4LCA3MSwgNDgsIDUxLCA1NCwgNjUsIDEyOCwgNzEsIDQ4LCA1MSwgNTQsIDEyOCwgNzEsIDQ4LCAKLSAgICA1MSwgNTMsIDEyOCwgNzEsIDQ4LCA1MSwgNTIsIDEyOCwgNzEsIDQ4LCA1MSwgNTEsIDEyOCwgNzEsIDQ4LCA1MSwgNTAsIAotICAgIDEyOCwgNzEsIDQ4LCA1MSwgNDksIDEyOCwgNzEsIDQ4LCA1MSwgNDgsIDEyOCwgNzEsIDQ4LCA1MCwgNTcsIDEyOCwgNzEsIAotICAgIDQ4LCA1MCwgNTYsIDEyOCwgNzEsIDQ4LCA1MCwgNTUsIDEyOCwgNzEsIDQ4LCA1MCwgNTQsIDY1LCAxMjgsIDcxLCA0OCwgCi0gICAgNTAsIDU0LCAxMjgsIDcxLCA0OCwgNTAsIDUzLCAxMjgsIDcxLCA0OCwgNTAsIDUyLCAxMjgsIDcxLCA0OCwgNTAsIDUxLCAKLSAgICAxMjgsIDcxLCA0OCwgNTAsIDUwLCAxMjgsIDcxLCA0OCwgNTAsIDQ5LCAxMjgsIDcxLCA0OCwgNTAsIDQ4LCA2NSwgMTI4LCAKLSAgICA3MSwgNDgsIDUwLCA0OCwgMTI4LCA3MSwgNDgsIDQ5LCA1NywgMTI4LCA3MSwgNDgsIDQ5LCA1NiwgMTI4LCA3MSwgNDgsIAotICAgIDQ5LCA1NSwgMTI4LCA3MSwgNDgsIDQ5LCA1NCwgMTI4LCA3MSwgNDgsIDQ5LCA1MywgMTI4LCA3MSwgNDgsIDQ5LCA1MiwgCi0gICAgMTI4LCA3MSwgNDgsIDQ5LCA1MSwgMTI4LCA3MSwgNDgsIDQ5LCA1MCwgMTI4LCA3MSwgNDgsIDQ5LCA0OSwgNjUsIDEyOCwgCi0gICAgNzEsIDQ4LCA0OSwgNDksIDEyOCwgNzEsIDQ4LCA0OSwgNDgsIDEyOCwgNzEsIDQ4LCA0OCwgNTcsIDEyOCwgNzEsIDQ4LCAKLSAgICA0OCwgNTYsIDEyOCwgNzEsIDQ4LCA0OCwgNTUsIDY2LCAxMjgsIDcxLCA0OCwgNDgsIDU1LCA2NSwgMTI4LCA3MSwgNDgsIAotICAgIDQ4LCA1NSwgMTI4LCA3MSwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgNzEsIDQ4LCA0OCwgNTQsIDEyOCwgNzEsIDQ4LCA0OCwgCi0gICAgNTMsIDEyOCwgNzEsIDQ4LCA0OCwgNTIsIDEyOCwgNzEsIDQ4LCA0OCwgNTEsIDEyOCwgNzEsIDQ4LCA0OCwgNTAsIDEyOCwgCi0gICAgNzEsIDQ4LCA0OCwgNDksIDEyOCwgNzAsIDg5LCA4OCwgMTI4LCA3MCwgODksIDg0LCAxMjgsIDcwLCA4OSwgODAsIDEyOCwgCi0gICAgNzAsIDg5LCA2NSwgMTI4LCA3MCwgODcsIDczLCAxMjgsIDcwLCA4NywgNjksIDY5LCAxMjgsIDcwLCA4NywgNjksIDEyOCwgCi0gICAgNzAsIDg3LCA2NSwgNjUsIDEyOCwgNzAsIDg3LCA2NSwgMTI4LCA3MCwgODUsIDg4LCAxMjgsIDcwLCA4NSwgODQsIDEyOCwgCi0gICAgNzAsIDg1LCA4MywgNjksIDEyOCwgNzAsIDg1LCA4MywgMTkzLCA3MCwgODUsIDgyLCA4OCwgMTI4LCA3MCwgODUsIDgwLCAKLSAgICAxMjgsIDcwLCA4NSwgNzgsIDY5LCA4MiwgNjUsIDIwNCwgNzAsIDg1LCA3OCwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIAotICAgIDcwLCA4NSwgNzYsIDc2LCA3OCwgNjksIDgzLCA4MywgMTI4LCA3MCwgODUsIDc2LCAyMDQsIDcwLCA4NSwgNzQsIDczLCAKLSAgICAxMjgsIDcwLCA4NSwgNjksIDg0LCAxMjgsIDcwLCA4NSwgNjksIDIwNCwgNzAsIDg1LCA2OSwgMTI4LCA3MCwgODQsIDcyLCAKLSAgICA3OSwgODIsIDE5MywgNzAsIDgyLCA3OSwgODcsIDc4LCA3MywgNzgsIDcxLCAxMjgsIDcwLCA4MiwgNzksIDg3LCA3OCwgNzMsIAotICAgIDc4LCAxOTksIDcwLCA4MiwgNzksIDg3LCA3OCwgMTI4LCA3MCwgODIsIDc5LCA3OCwgODQsIDQ1LCA4NCwgNzMsIDc2LCA4NCwgCi0gICAgNjksIDE5NiwgNzAsIDgyLCA3OSwgNzgsIDg0LCA0NSwgNzAsIDY1LCA2NywgNzMsIDc4LCAxOTksIDcwLCA4MiwgNzksIAotICAgIDIwNSwgNzAsIDgyLCA3OSwgNzEsIDEyOCwgNzAsIDgyLCA3OSwgMTk5LCA3MCwgODIsIDczLCA4NCwgODUsIDEyOCwgNzAsIAotICAgIDgyLCA3MywgNjksIDgzLCAxMjgsIDcwLCA4MiwgNzMsIDY5LCAxOTYsIDcwLCA4MiwgNzMsIDY3LCA2NSwgODQsIDczLCA4NiwgCi0gICAgNjksIDEyOCwgNzAsIDgyLCA2OSwgODQsIDY2LCA3OSwgNjUsIDgyLCA2OCwgMTI4LCA3MCwgODIsIDY5LCA3OCwgNjcsIAotICAgIDIwMCwgNzAsIDgyLCA2OSwgNjksIDEyOCwgNzAsIDgyLCA2OSwgMTk3LCA3MCwgODIsIDY1LCA3OCwgMTk1LCA3MCwgODIsIAotICAgIDY1LCA3NywgNjksIDEyOCwgNzAsIDgyLCA2NSwgNzEsIDgyLCA2NSwgNzgsIDg0LCAxMjgsIDcwLCA4MiwgNjUsIDcxLCA3NywgCi0gICAgNjksIDc4LCA4NCwgMTI4LCA3MCwgODIsIDY1LCA2NywgODQsIDczLCA3OSwgMjA2LCA3MCwgNzksIDg4LCAxMjgsIDcwLCAKLSAgICA3OSwgODUsIDgyLCA4NCwgNjksIDY5LCA3OCwgMTI4LCA3MCwgNzksIDg1LCA4MiwgODQsIDY5LCA2OSwgMjA2LCA3MCwgNzksIAotICAgIDg1LCA4MiwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgNzAsIDc5LCA4NSwgODIsIDQ1LCA4MywgODQsIDgyLCAKLSAgICA3MywgNzgsIDE5OSwgNzAsIDc5LCA4NSwgODIsIDQ1LCA4MCwgNjksIDgyLCA0NSwgNjksIDIwNSwgNzAsIDc5LCA4NSwgODIsIAotICAgIDQ1LCA3NiwgNzMsIDc4LCAxOTcsIDcwLCA3OSwgODUsIDIxMCwgNzAsIDc5LCA4NSwgNzgsIDg0LCA2NSwgNzMsIDc4LCAKLSAgICAxMjgsIDcwLCA3OSwgODMsIDg0LCA2OSwgODIsIDczLCA3OCwgNzEsIDEyOCwgNzAsIDc5LCA4MiwgODQsIDg5LCAxMjgsIAorICAgIDc5LCAxMjgsIDcyLCA4NCwgODMsIDEyOCwgNzIsIDg0LCA3NCwgMTI4LCA3MiwgODIsIDg5LCA4NiwgNzgsIDczLCAxOTMsIAorICAgIDcyLCA4MCwgODcsIDcxLCAxMjgsIDcyLCA4MCwgNjUsIDEyOCwgNzIsIDgwLCAxMjgsIDcyLCA3OSwgODUsIDgzLCAxOTcsIAorICAgIDcyLCA3OSwgODUsIDgyLCA3MSwgNzYsIDY1LCA4MywgODMsIDEyOCwgNzIsIDc5LCA4NSwgODIsIDcxLCA3NiwgNjUsIDgzLCAKKyAgICAyMTEsIDcyLCA3OSwgODUsIDgyLCAxMjgsIDcyLCA3OSwgODUsIDIxMCwgNzIsIDc5LCA4NCwgNjksIDc2LCAxMjgsIDcyLCAKKyAgICA3OSwgODQsIDY1LCAxMjgsIDcyLCA3OSwgODMsIDgwLCA3MywgODQsIDY1LCA3NiwgMTI4LCA3MiwgNzksIDgyLCA4MywgNjksIAorICAgIDEyOCwgNzIsIDc5LCA4MiwgODMsIDE5NywgNzIsIDc5LCA4MiwgNzgsIDgzLCAxMjgsIDcyLCA3OSwgODIsIDczLCA5MCwgCisgICAgNzksIDc4LCA4NCwgNjUsIDc2LCA3NiwgMjE3LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIAorICAgIDQ4LCA1NCwgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA1NCwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgCisgICAgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIAorICAgIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCAKKyAgICA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA0OSwgCisgICAgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA0OCwgMTI4LCAKKyAgICA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgCisgICAgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIAorICAgIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCAKKyAgICA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgCisgICAgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIAorICAgIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCAKKyAgICA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgCisgICAgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIAorICAgIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgCisgICAgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIAorICAgIDQ4LCA1MiwgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA1MiwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgCisgICAgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIAorICAgIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCAKKyAgICA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MiwgCisgICAgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MSwgMTI4LCAKKyAgICA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgCisgICAgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIAorICAgIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCAKKyAgICA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgCisgICAgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIAorICAgIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCAKKyAgICA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgCisgICAgODQsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIAorICAgIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgCisgICAgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1NCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIAorICAgIDQ4LCA0OSwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCAKKyAgICA0OSwgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgCisgICAgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIAorICAgIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCAKKyAgICA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA0OCwgCisgICAgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1NCwgMTI4LCAKKyAgICA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MywgMTI4LCA3MiwgCisgICAgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MiwgMTI4LCA3MiwgNzksIAorICAgIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MSwgMTI4LCA3MiwgNzksIDgyLCAKKyAgICA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MCwgMTI4LCA3MiwgNzksIDgyLCA3MywgCisgICAgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIAorICAgIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCAKKyAgICA3OCwgODQsIDY1LCA3NiwgMTI4LCA3MiwgNzksIDgyLCA3MywgMTI4LCA3MiwgNzksIDgyLCAxOTMsIDcyLCA3OSwgNzksIAorICAgIDgyLCA4NSwgMTI4LCA3MiwgNzksIDc5LCA4MCwgMTI4LCA3MiwgNzksIDc5LCA3OCwgMTI4LCA3MiwgNzksIDc5LCA3NSwgCisgICAgNjksIDE5NiwgNzIsIDc5LCA3OCwgNjksIDg5LCA2NiwgNjksIDY5LCAxMjgsIDcyLCA3OSwgNzgsIDY5LCAyMTcsIDcyLCAKKyAgICA3OSwgNzcsIDc5LCA4NCwgNzIsIDY5LCA4NCwgNzMsIDY3LCAxMjgsIDcyLCA3OSwgNzcsIDc5LCA4NCwgNzIsIDY5LCA4NCwgCisgICAgNzMsIDE5NSwgNzIsIDc5LCA3NiwgNjksIDEyOCwgNzIsIDc5LCA3NiwgNjgsIDczLCA3OCwgMTk5LCA3MiwgNzksIDc2LCAKKyAgICA2NSwgNzcsIDEyOCwgNzIsIDc5LCA3NiwgNjUsIDIwNSwgNzIsIDc5LCA3NSwgNjUsIDEyOCwgNzIsIDc5LCA3MywgMTI4LCAKKyAgICA3MiwgNzksIDY3LCA3MiwgNzksIDEyOCwgNzIsIDc4LCA4NSwgODQsIDEyOCwgNzIsIDc4LCA4NSwgNzksIDg4LCAxMjgsIAorICAgIDcyLCA3OCwgODUsIDc5LCAxMjgsIDcyLCA3OCwgNzksIDg4LCAxMjgsIDcyLCA3OCwgNzksIDg0LCAxMjgsIDcyLCA3OCwgCisgICAgNzksIDgwLCAxMjgsIDcyLCA3OCwgNzMsIDg4LCAxMjgsIDcyLCA3OCwgNzMsIDg0LCAxMjgsIDcyLCA3OCwgNzMsIDgwLCAKKyAgICAxMjgsIDcyLCA3OCwgNzMsIDY5LCA4OCwgMTI4LCA3MiwgNzgsIDczLCA2OSwgODQsIDEyOCwgNzIsIDc4LCA3MywgNjksIAorICAgIDgwLCAxMjgsIDcyLCA3OCwgNzMsIDY5LCAxMjgsIDcyLCA3OCwgNzMsIDEyOCwgNzIsIDc4LCA2OSwgODgsIDEyOCwgNzIsIAorICAgIDc4LCA2OSwgODAsIDEyOCwgNzIsIDc4LCA2OSwgMTI4LCA3MiwgNzgsIDY1LCA4OCwgMTI4LCA3MiwgNzgsIDY1LCA4NCwgCisgICAgMTI4LCA3MiwgNzgsIDY1LCA4MCwgMTI4LCA3MiwgNzgsIDY1LCAxMjgsIDcyLCA3NywgODksIDg4LCAxMjgsIDcyLCA3NywgCisgICAgODksIDgyLCA4OCwgMTI4LCA3MiwgNzcsIDg5LCA4MiwgMTI4LCA3MiwgNzcsIDg5LCA4MCwgMTI4LCA3MiwgNzcsIDg5LCAKKyAgICAxMjgsIDcyLCA3NywgODUsIDg4LCAxMjgsIDcyLCA3NywgODUsIDg0LCAxMjgsIDcyLCA3NywgODUsIDgyLCA4OCwgMTI4LCAKKyAgICA3MiwgNzcsIDg1LCA4MiwgMTI4LCA3MiwgNzcsIDg1LCA4MCwgMTI4LCA3MiwgNzcsIDg1LCA3OSwgODgsIDEyOCwgNzIsIAorICAgIDc3LCA4NSwgNzksIDgwLCAxMjgsIDcyLCA3NywgODUsIDc5LCAxMjgsIDcyLCA3NywgODUsIDEyOCwgNzIsIDc3LCA3OSwgCisgICAgODgsIDEyOCwgNzIsIDc3LCA3OSwgODQsIDEyOCwgNzIsIDc3LCA3OSwgODAsIDEyOCwgNzIsIDc3LCA3OSwgMTI4LCA3MiwgCisgICAgNzcsIDczLCA4OCwgMTI4LCA3MiwgNzcsIDczLCA4NCwgMTI4LCA3MiwgNzcsIDczLCA4MCwgMTI4LCA3MiwgNzcsIDczLCAKKyAgICA2OSwgODgsIDEyOCwgNzIsIDc3LCA3MywgNjksIDgwLCAxMjgsIDcyLCA3NywgNzMsIDY5LCAxMjgsIDcyLCA3NywgNzMsIAorICAgIDEyOCwgNzIsIDc3LCA2OSwgMTI4LCA3MiwgNzcsIDY1LCA4OCwgMTI4LCA3MiwgNzcsIDY1LCA4NCwgMTI4LCA3MiwgNzcsIAorICAgIDY1LCA4MCwgMTI4LCA3MiwgNzcsIDY1LCAxMjgsIDcyLCA3NiwgODksIDg4LCAxMjgsIDcyLCA3NiwgODksIDg0LCAxMjgsIAorICAgIDcyLCA3NiwgODksIDgyLCA4OCwgMTI4LCA3MiwgNzYsIDg5LCA4MiwgMTI4LCA3MiwgNzYsIDg5LCA4MCwgMTI4LCA3MiwgCisgICAgNzYsIDg5LCAxMjgsIDcyLCA3NiwgODUsIDg4LCAxMjgsIDcyLCA3NiwgODUsIDg0LCAxMjgsIDcyLCA3NiwgODUsIDgyLCAKKyAgICA4OCwgMTI4LCA3MiwgNzYsIDg1LCA4MiwgMTI4LCA3MiwgNzYsIDg1LCA4MCwgMTI4LCA3MiwgNzYsIDg1LCA3OSwgODgsIAorICAgIDEyOCwgNzIsIDc2LCA4NSwgNzksIDgwLCAxMjgsIDcyLCA3NiwgODUsIDc5LCAxMjgsIDcyLCA3NiwgODUsIDEyOCwgNzIsIAorICAgIDc2LCA3OSwgODgsIDEyOCwgNzIsIDc2LCA3OSwgODAsIDEyOCwgNzIsIDc2LCA3OSwgMTI4LCA3MiwgNzYsIDczLCA4OCwgCisgICAgMTI4LCA3MiwgNzYsIDczLCA4NCwgMTI4LCA3MiwgNzYsIDczLCA4MCwgMTI4LCA3MiwgNzYsIDczLCA2OSwgODgsIDEyOCwgCisgICAgNzIsIDc2LCA3MywgNjksIDgwLCAxMjgsIDcyLCA3NiwgNzMsIDY5LCAxMjgsIDcyLCA3NiwgNzMsIDEyOCwgNzIsIDc2LCAKKyAgICA2OSwgODgsIDEyOCwgNzIsIDc2LCA2OSwgODAsIDEyOCwgNzIsIDc2LCA2OSwgMTI4LCA3MiwgNzYsIDY1LCA4OCwgMTI4LCAKKyAgICA3MiwgNzYsIDY1LCA4NCwgMTI4LCA3MiwgNzYsIDY1LCA4MCwgMTI4LCA3MiwgNzYsIDY1LCAxMjgsIDcyLCA3NSwgMTI4LCAKKyAgICA3MiwgNzMsIDkwLCA2NiwgMTI4LCA3MiwgNzMsIDgzLCA4NCwgNzksIDgyLCA3MywgMTk1LCA3MiwgNzMsIDgyLCA3MywgODEsIAorICAgIDEyOCwgNzIsIDczLCA3MSwgNzIsIDQ1LCA4MywgODAsIDY5LCA2OSwgMTk2LCA3MiwgNzMsIDcxLCA3MiwgNDUsIDgyLCA2OSwgCisgICAgODYsIDY5LCA4MiwgODMsIDY5LCA2OCwgNDUsIDE4NSwgNzIsIDczLCA3MSwgNzIsIDQ1LCA3MiwgNjksIDY5LCA3NiwgNjksIAorICAgIDE5NiwgNzIsIDczLCA2OSwgODgsIDEyOCwgNzIsIDczLCA2OSwgODUsIDcyLCA0NSwgODMsIDczLCA3OSwgODMsIDEyOCwgCisgICAgNzIsIDczLCA2OSwgODUsIDcyLCA0NSwgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIDcyLCA3MywgNjksIDg1LCA3MiwgNDUsIAorICAgIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDQ1LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgCisgICAgNzIsIDczLCA2OSwgODUsIDcyLCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCAxMjgsIDcyLCA3MywgNjksIDg1LCAyMDAsIDcyLCAKKyAgICA3MywgNjksIDgyLCA3OSwgNzEsIDc2LCA4OSwgODAsIDcyLCA3MywgMTk1LCA3MiwgNzMsIDY5LCAxMjgsIDcyLCA3MywgNjgsIAorICAgIDczLCA3OCwgMTk5LCA3MiwgNzMsIDY4LCA2OSwgODQsIDEyOCwgNzIsIDczLCA2OCwgNjksIDEyOCwgNzIsIDczLCA2NiwgCisgICAgNzMsIDgzLCA2NywgODUsIDgzLCAxMjgsIDcyLCA3MiwgODcsIDY1LCAxMjgsIDcyLCA3MiwgODUsIDEyOCwgNzIsIDcyLCAKKyAgICA3MywgMTI4LCA3MiwgNzIsIDY5LCA2OSwgMTI4LCA3MiwgNzIsIDY5LCAxMjgsIDcyLCA3MiwgNjUsIDY1LCAxMjgsIDcyLCAKKyAgICA3MSwgMTI4LCA3MiwgNjksIDg4LCA3MywgNzAsIDc5LCA4MiwgMjA1LCA3MiwgNjksIDg4LCA2NSwgNzEsIDgyLCA2NSwgCisgICAgMjA1LCA3MiwgNjksIDg4LCA2NSwgNzEsIDc5LCA3OCwgMTI4LCA3MiwgNjksIDgyLCA4NSwgODQsIDg1LCAxMjgsIDcyLCAKKyAgICA2OSwgODIsIDg1LCAxMjgsIDcyLCA2OSwgODIsIDc3LCA3MywgODQsIDczLCA2NSwgMjA2LCA3MiwgNjksIDgyLCA3NywgNzMsIAorICAgIDc5LCA3OCwgNzMsIDY1LCAyMDYsIDcyLCA2OSwgODIsIDc3LCA2OSwgODMsIDEyOCwgNzIsIDY5LCA4MiwgNjksIDEyOCwgCisgICAgNzIsIDY5LCA4MiwgNjYsIDEyOCwgNzIsIDY5LCA4MiwgNjUsIDY5LCA4NSwgMjA1LCA3MiwgNjksIDc4LCA3MSwgMTI4LCAKKyAgICA3MiwgNjksIDc4LCAxOTksIDcyLCA2OSwgNzcsIDgwLCAxMjgsIDcyLCA2OSwgNzYsIDc3LCA2OSwgODQsIDEyOCwgNzIsIAorICAgIDY5LCA3NiwgNzcsIDY5LCAyMTIsIDcyLCA2OSwgNzYsIDIwNSwgNzIsIDY5LCA3NiwgNzMsIDY3LCA3OSwgODAsIDg0LCA2OSwgCisgICAgODIsIDEyOCwgNzIsIDY5LCA3NSwgODUsIDg0LCA2NSwgNjUsIDgyLCA4NSwgMTI4LCA3MiwgNjksIDczLCA4MywgNjksIDczLCAKKyAgICAxMjgsIDcyLCA2OSwgNjUsIDg2LCA4OSwgMTI4LCA3MiwgNjksIDY1LCA4NiwgNjksIDc4LCA3NiwgMjE3LCA3MiwgNjksIAorICAgIDY1LCA4NiwgNjksIDc4LCAxMjgsIDcyLCA2OSwgNjUsIDg2LCA2OSwgMjA2LCA3MiwgNjksIDY1LCA4MiwgODQsIDgzLCAKKyAgICAxMjgsIDcyLCA2OSwgNjUsIDgyLCA4NCwgNDUsIDgzLCA3MiwgNjUsIDgwLCA2OSwgMTk2LCA3MiwgNjksIDY1LCA4MiwgODQsIAorICAgIDEyOCwgNzIsIDY5LCA2NSwgODIsIDIxMiwgNzIsIDY5LCA2NSwgODIsIDQ1LCA3OCwgNzksIDQ1LCA2OSwgODYsIDczLCAKKyAgICAyMDQsIDcyLCA2OSwgNjUsIDY4LCA4MywgODQsIDgyLCA3OSwgNzUsIDY5LCAxMjgsIDcyLCA2OSwgNjUsIDY4LCA4MywgODQsIAorICAgIDc5LCA3OCwgMTk3LCA3MiwgNjksIDY1LCA2OCwgODAsIDcyLCA3OSwgNzgsIDY5LCAxMjgsIDcyLCA2OSwgNjUsIDY4LCA3MywgCisgICAgNzgsIDcxLCAxMjgsIDcyLCA2NiwgNjUsIDgzLCA2NSwgNDUsIDY5LCA4MywgNjUsIDgzLCAxOTMsIDcyLCA2NiwgNjUsIDgzLCAKKyAgICAxOTMsIDcyLCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDcyLCA2NSwgODYsIDY5LCAxMjgsIDcyLCA2NSwgODUsIAorICAgIDgwLCA4NCwgODMsIDg0LCA3MywgNzcsIDc3LCA2OSwgMTI4LCA3MiwgNjUsIDg0LCA3MiwgNzMsIDEyOCwgNzIsIDY1LCA4NCwgCisgICAgNjksIDEyOCwgNzIsIDY1LCA4NCwgNjcsIDcyLCA3MywgNzgsIDE5OSwgNzIsIDY1LCA4NCwgNjUsIDE5OCwgNzIsIDY1LCAKKyAgICA4MywgNjksIDIxMCwgNzIsIDY1LCA4MywgNjUsIDc4LCA4NCwgNjUsIDEyOCwgNzIsIDY1LCA4MiwgODAsIDc5LCA3OSwgNzgsIAorICAgIDEyOCwgNzIsIDY1LCA4MiwgODAsIDc5LCA3OSwgMjA2LCA3MiwgNjUsIDgyLCA3NywgNzksIDc4LCA3MywgNjcsIDEyOCwgCisgICAgNzIsIDY1LCA4MiwgNzUsIDc2LCA2OSwgNjUsIDIwNiwgNzIsIDY1LCA4MiwgNjgsIDc4LCA2OSwgODMsIDgzLCAxMjgsIDcyLCAKKyAgICA2NSwgODIsIDE5NiwgNzIsIDY1LCA4MCwgODAsIDIxNywgNzIsIDY1LCA3OCwgODUsIDc4LCA3OSwgMjA3LCA3MiwgNjUsIAorICAgIDc4LCA3MSwgOTAsIDcyLCA3OSwgMjEzLCA3MiwgNjUsIDc4LCA2OCwgODMsIDEyOCwgNzIsIDY1LCA3OCwgNjgsIDIxMSwgCisgICAgNzIsIDY1LCA3OCwgNjgsIDc2LCA2OSwgODMsIDEyOCwgNzIsIDY1LCA3OCwgNjgsIDc2LCA2OSwgMTI4LCA3MiwgNjUsIDc4LCAKKyAgICA2OCwgNjYsIDY1LCA3MSwgMTI4LCA3MiwgNjUsIDc4LCA2OCwgMTI4LCA3MiwgNjUsIDc4LCA0NSwgNjUsIDc1LCA2NSwgODQsIAorICAgIDEyOCwgNzIsIDY1LCA3NywgOTAsIDY1LCAxMjgsIDcyLCA2NSwgNzcsIDgzLCA4NCwgNjksIDIxMCwgNzIsIDY1LCA3NywgCisgICAgNzcsIDY5LCA4MiwgMTI4LCA3MiwgNjUsIDc3LCA3NywgNjksIDIxMCwgNzIsIDY1LCA3NywgNjYsIDg1LCA4MiwgNzEsIDY5LCAKKyAgICA4MiwgMTI4LCA3MiwgNjUsIDc2LCA4MSwgNjUsIDEyOCwgNzIsIDY1LCA3NiwgNzksIDEyOCwgNzIsIDY1LCA3NiwgNzAsIAorICAgIDQ1LCA2NywgNzMsIDgyLCA2NywgNzYsIDE5NywgNzIsIDY1LCA3NiwgNzAsIDEyOCwgNzIsIDY1LCA3NiwgNjYsIDY5LCA4MiwgCisgICAgNjgsIDEyOCwgNzIsIDY1LCA3NiwgNjUsIDc4LCA4NCwgNjUsIDEyOCwgNzIsIDY1LCA3MywgODQsIDg1LCAxMjgsIDcyLCAKKyAgICA2NSwgNzMsIDgyLCA2NywgODUsIDg0LCAxMjgsIDcyLCA2NSwgNzMsIDgyLCAxMjgsIDcyLCA2NSwgNzEsIDc2LCA2NSwgCisgICAgMjE4LCA3MiwgNjUsIDcxLCA3NiwgMTI4LCA3MiwgNjUsIDcwLCA4NSwgNzUsIDcyLCA2NSwgMTI4LCA3MiwgNjUsIDcwLCAKKyAgICA4NSwgNzUsIDcyLCAxMjgsIDcyLCA2NSwgNjksIDcxLCAyMDQsIDcyLCA2NSwgNjUsIDgyLCA4NSwgMTI4LCA3MiwgNjUsIAorICAgIDY1LCA3NywgMTI4LCA3MiwgNjUsIDE5MywgNzIsIDY1LCA0NSwgNzIsIDY1LCAxMjgsIDcyLCA0OCwgNDgsIDU2LCAxMjgsIAorICAgIDcyLCA0OCwgNDgsIDU1LCAxMjgsIDcyLCA0OCwgNDgsIDU0LCA2NSwgMTI4LCA3MiwgNDgsIDQ4LCA1NCwgMTI4LCA3MiwgCisgICAgNDgsIDQ4LCA1MywgMTI4LCA3MiwgNDgsIDQ4LCA1MiwgMTI4LCA3MiwgNDgsIDQ4LCA1MSwgMTI4LCA3MiwgNDgsIDQ4LCAKKyAgICA1MCwgMTI4LCA3MiwgNDgsIDQ4LCA0OSwgMTI4LCA3MiwgNDUsIDg0LCA4OSwgODAsIDE5NywgNzEsIDg5LCA4NSwgMTI4LCAKKyAgICA3MSwgODksIDc5LCA3OCwgMTI4LCA3MSwgODksIDc5LCAxMjgsIDcxLCA4OSwgNzMsIDEyOCwgNzEsIDg5LCA3MCwgMjEzLCAKKyAgICA3MSwgODksIDY5LCA2OSwgMTI4LCA3MSwgODksIDY1LCA4MywgMTI4LCA3MSwgODksIDY1LCA2NSwgMTI4LCA3MSwgODksIAorICAgIDY1LCAxMjgsIDcxLCA4OSwgMTI4LCA3MSwgODcsIDg1LCAxMjgsIDcxLCA4NywgNzMsIDEyOCwgNzEsIDg3LCA2OSwgNjksIAorICAgIDEyOCwgNzEsIDg3LCA2OSwgMTI4LCA3MSwgODcsIDY1LCA2NSwgMTI4LCA3MSwgODcsIDY1LCAxMjgsIDcxLCA4NiwgMTI4LCAKKyAgICA3MSwgODUsIDgyLCA4NSwgODMsIDcyLCAxMjgsIDcxLCA4NSwgODIsIDg1LCA3OCwgMTI4LCA3MSwgODUsIDgyLCA2NSwgNzcsIAorICAgIDg1LCA4NCwgNzksIDc4LCAxMjgsIDcxLCA4NSwgODIsIDU1LCAxMjgsIDcxLCA4NSwgNzgsIDg1LCAxMjgsIDcxLCA4NSwgCisgICAgNzgsIDIxMywgNzEsIDg1LCAyMDUsIDcxLCA4NSwgNzYsIDEyOCwgNzEsIDg1LCA3MywgODQsIDY1LCA4MiwgMTI4LCA3MSwgCisgICAgODUsIDE5OSwgNzEsIDg1LCA2OSwgNzIsIDEyOCwgNzEsIDg1LCA2OSwgMjAwLCA3MSwgODUsIDY4LCAxMjgsIDcxLCA4NSwgCisgICAgMTk2LCA3MSwgODUsIDY1LCA4MiwgNjgsIDgzLCA3NywgNjUsIDc4LCAxMjgsIDcxLCA4NSwgNjUsIDgyLCA2OCwgNjksIDY4LCAKKyAgICA3OCwgNjksIDgzLCA4MywgMTI4LCA3MSwgODUsIDY1LCA4MiwgNjgsIDY5LCAxOTYsIDcxLCA4NSwgNjUsIDgyLCA2OCwgCisgICAgMTI4LCA3MSwgODUsIDY1LCA4MiwgNjUsIDc4LCAyMDEsIDcxLCA4NSwgMTkzLCA3MSwgODUsIDE3OCwgNzEsIDg0LCA2OSwgCisgICAgMjEwLCA3MSwgODMsIDg1LCA3NywgMTI4LCA3MSwgODMsIDg1LCAyMDUsIDcxLCA4MiwgMjEzLCA3MSwgODIsIDc5LCA4NywgCisgICAgNzMsIDc4LCAxOTksIDcxLCA4MiwgNzksIDg1LCA3OCwgNjgsIDEyOCwgNzEsIDgyLCA3OSwgNzgsIDg0LCA3MiwgNzMsIDgzLCAKKyAgICA3NywgNjUsIDg0LCA2NSwgMTI4LCA3MSwgODIsIDczLCA3OCwgNzgsIDczLCA3OCwgMTk5LCA3MSwgODIsIDczLCA3NywgNjUsIAorICAgIDY3LCA3MywgNzgsIDE5OSwgNzEsIDgyLCA2OSwgNzEsIDc5LCA4MiwgNzMsIDY1LCAyMDYsIDcxLCA4MiwgNjksIDY5LCAKKyAgICAyMDYsIDcxLCA4MiwgNjksIDY1LCA4NCwgNzgsIDY5LCA4MywgODMsIDEyOCwgNzEsIDgyLCA2OSwgNjUsIDg0LCA2OSwgODIsIAorICAgIDQ1LCA4NCwgNzIsIDY1LCA3OCwgMTI4LCA3MSwgODIsIDY5LCA2NSwgODQsIDY5LCA4MiwgNDUsIDg0LCA3MiwgNjUsIDIwNiwgCisgICAgNzEsIDgyLCA2OSwgNjUsIDg0LCA2OSwgMjEwLCA3MSwgODIsIDY5LCA2NSwgMjEyLCA3MSwgODIsIDY1LCA4NiwgNjksIDg5LCAKKyAgICA2NSwgODIsIDE5NiwgNzEsIDgyLCA2NSwgODYsIDY5LCA0NSwgNzcsIDY1LCA2NywgODIsIDc5LCA3OCwgMTI4LCA3MSwgODIsIAorICAgIDY1LCA4NiwgNjksIDQ1LCA2NSwgNjcsIDg1LCA4NCwgNjksIDQ1LCA3MSwgODIsIDY1LCA4NiwgNjksIDEyOCwgNzEsIDgyLCAKKyAgICA2NSwgODYsIDE5NywgNzEsIDgyLCA2NSwgODQsIDY5LCA4MiwgMTI4LCA3MSwgODIsIDY1LCA4MywgODMsIDEyOCwgNzEsIAorICAgIDgyLCA2NSwgODMsIDIxMSwgNzEsIDgyLCA2NSwgODAsIDcyLCA2OSwgNzcsIDE5NywgNzEsIDgyLCA2NSwgODAsIDY5LCA4MywgCisgICAgMTI4LCA3MSwgODIsIDY1LCA3NywgNzcsIDE5MywgNzEsIDgyLCA2NSwgNzMsIDc4LCAxMjgsIDcxLCA4MiwgNjUsIDY4LCAKKyAgICA4NSwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzEsIDgyLCA2NSwgNjcsIDY5LCAxMjgsIDcxLCA4MiwgNjUsIDY3LCAxOTcsIAorICAgIDcxLCA4MCwgNjUsIDEyOCwgNzEsIDc5LCA4MiwgODQsIDcyLCA3NywgNzMsIDc1LCA3OSwgMjA2LCA3MSwgNzksIDgyLCA4NCwgCisgICAgMTI4LCA3MSwgNzksIDgyLCA3MSwgNzksIDg0LCA2OSwgODIsIDczLCAxMjgsIDcxLCA3OSwgODIsIDcxLCA3OSwgODMsIDg5LCAKKyAgICA3OCwgODQsIDcyLCA2OSwgODQsIDc5LCA3OCwgMTI4LCA3MSwgNzksIDgyLCA3MSwgNzksIDIwNiwgNzEsIDc5LCA4MiwgNzEsIAorICAgIDczLCAxMjgsIDcxLCA3OSwgODIsIDY1LCAxMjgsIDcxLCA3OSwgNzksIDE5NiwgNzEsIDc5LCA3OCwgNzEsIDEyOCwgNzEsIAorICAgIDc5LCA3NiwgNjgsIDEyOCwgNzEsIDc5LCA3NSwgMTI4LCA3MSwgNzksIDczLCA3OCwgMTk5LCA3MSwgNzksIDY2LCA3NiwgCisgICAgNzMsIDc4LCAxMjgsIDcxLCA3OSwgNjUsIDc2LCAxMjgsIDcxLCA3OSwgNjUsIDIwNCwgNzEsIDc5LCA2NSwgMTI4LCA3MSwgCisgICAgNzgsIDg5LCA3MywgODMsIDEyOCwgNzEsIDc4LCA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA3MSwgNzYsIDc5LCAKKyAgICA4NywgNzMsIDc4LCAxOTksIDcxLCA3NiwgNzksIDg0LCA4NCwgNjUsIDIwNCwgNzEsIDc2LCA3OSwgNjYsIDE5NywgNzEsIAorICAgIDc2LCA3MywgODMsIDgzLCA2NSwgNzgsIDY4LCAyMDcsIDcxLCA3NiwgNjksIDczLCA2NywgMjAwLCA3MSwgNzYsIDY1LCA3MSwgCisgICAgNzksIDc2LCA3MywgMTI4LCA3MSwgNzYsIDY1LCAxMjgsIDcxLCA3NCwgNjksIDEyOCwgNzEsIDczLCA4OCwgMTI4LCA3MSwgCisgICAgNzMsIDg0LCAxMjgsIDcxLCA3MywgODMsIDcyLCAxMjgsIDcxLCA3MywgODMsIDIwMCwgNzEsIDczLCA4MywgNjUsIDc2LCAKKyAgICAxMjgsIDcxLCA3MywgODIsIDg1LCA2OCwgNjUsIDY1LCAxMjgsIDcxLCA3MywgODIsIDc2LCAxMjgsIDcxLCA3MywgODIsIAorICAgIDUxLCAxMjgsIDcxLCA3MywgODIsIDE3OSwgNzEsIDczLCA4MiwgNTAsIDEyOCwgNzEsIDczLCA4MiwgMTc4LCA3MSwgNzMsIAorICAgIDgwLCAxMjgsIDcxLCA3MywgNzgsIDczLCA3MywgMTI4LCA3MSwgNzMsIDc3LCA2OSwgNzYsIDEyOCwgNzEsIDczLCA3NywgCisgICAgNjksIDIwNCwgNzEsIDczLCA3NywgMTI4LCA3MSwgNzMsIDcxLCA2NSwgMTI4LCA3MSwgNzMsIDY5LCA4NCwgMTI4LCA3MSwgCisgICAgNzMsIDY4LCA3MywgNzcsIDEyOCwgNzEsIDczLCA2NiwgNjYsIDc5LCA4NSwgMjExLCA3MSwgNzMsIDY2LCA2NSwgMTI4LCAKKyAgICA3MSwgNzMsIDUyLCAxMjgsIDcxLCA3MywgMTgwLCA3MSwgNzIsIDkwLCAxMjgsIDcxLCA3MiwgODcsIDY1LCAxMjgsIDcxLCAKKyAgICA3MiwgODUsIDc4LCA3OCwgNjUsIDEyOCwgNzEsIDcyLCA4NSwgNzgsIDc4LCAxOTMsIDcxLCA3MiwgODUsIDEyOCwgNzEsIAorICAgIDcyLCA3OSwgODUsIDEyOCwgNzEsIDcyLCA3OSwgODMsIDg0LCAxMjgsIDcxLCA3MiwgNzksIDEyOCwgNzEsIDcyLCA3MywgCisgICAgMTI4LCA3MSwgNzIsIDcyLCA2NSwgMTI4LCA3MSwgNzIsIDY5LCA4NSwgODgsIDEyOCwgNzEsIDcyLCA2OSwgODUsIDc4LCAKKyAgICAxMjgsIDcxLCA3MiwgNjksIDg1LCA3MSwgNzIsIDY5LCA4NSwgNjUsIDY5LCA3NywgMTI4LCA3MSwgNzIsIDY5LCA4NSwgNzEsIAorICAgIDcyLCA2OSwgNzgsIDEyOCwgNzEsIDcyLCA2OSwgODUsIDY1LCA2OSwgODIsIDY1LCA2OSwgMTI4LCA3MSwgNzIsIDY5LCA4NSwgCisgICAgNjUsIDY5LCA3MSwgNzIsIDY5LCA4NSwgNjUsIDY5LCAxMjgsIDcxLCA3MiwgNjksIDg0LCAxMjgsIDcxLCA3MiwgNjksIDY5LCAKKyAgICAxMjgsIDcxLCA3MiwgNjksIDEyOCwgNzEsIDcyLCAxOTcsIDcxLCA3MiwgNjUsIDg5LCA3OCwgMTI4LCA3MSwgNzIsIDY1LCAKKyAgICA4MiwgNjUsIDY5LCAxMjgsIDcxLCA3MiwgNjUsIDgwLCAxMjgsIDcxLCA3MiwgNjUsIDc4LCAxMjgsIDcxLCA3MiwgNjUsIAorICAgIDc3LCA2NSwgNzYsIDEyOCwgNzEsIDcyLCA2NSwgNzMsIDc4LCA4NSwgMTI4LCA3MSwgNzIsIDY1LCA3MywgNzgsIDEyOCwgCisgICAgNzEsIDcyLCA2NSwgNzMsIDIwNiwgNzEsIDcyLCA2NSwgNjgsIDEyOCwgNzEsIDcyLCA2NSwgNjUsIDc3LCA2NSwgNjksIAorICAgIDEyOCwgNzEsIDcyLCA2NSwgNjUsIDEyOCwgNzEsIDcxLCA4NywgNzMsIDEyOCwgNzEsIDcxLCA4NywgNjksIDY5LCAxMjgsIAorICAgIDcxLCA3MSwgODcsIDY5LCAxMjgsIDcxLCA3MSwgODcsIDY1LCA2NSwgMTI4LCA3MSwgNzEsIDg3LCA2NSwgMTI4LCA3MSwgCisgICAgNzEsIDg1LCA4OCwgMTI4LCA3MSwgNzEsIDg1LCA4NCwgMTI4LCA3MSwgNzEsIDg1LCA4MiwgODgsIDEyOCwgNzEsIDcxLCAKKyAgICA4NSwgODIsIDEyOCwgNzEsIDcxLCA4NSwgNzksIDg4LCAxMjgsIDcxLCA3MSwgODUsIDc5LCA4NCwgMTI4LCA3MSwgNzEsIAorICAgIDg1LCA3OSwgODAsIDEyOCwgNzEsIDcxLCA4NSwgNzksIDEyOCwgNzEsIDcxLCA3OSwgODgsIDEyOCwgNzEsIDcxLCA3OSwgCisgICAgODQsIDEyOCwgNzEsIDcxLCA3OSwgODAsIDEyOCwgNzEsIDcxLCA3MywgODgsIDEyOCwgNzEsIDcxLCA3MywgODQsIDEyOCwgCisgICAgNzEsIDcxLCA3MywgNjksIDg4LCAxMjgsIDcxLCA3MSwgNzMsIDY5LCA4MCwgMTI4LCA3MSwgNzEsIDczLCA2OSwgMTI4LCAKKyAgICA3MSwgNzEsIDY5LCA4OCwgMTI4LCA3MSwgNzEsIDY5LCA4NCwgMTI4LCA3MSwgNzEsIDY5LCA4MCwgMTI4LCA3MSwgNzEsIAorICAgIDY1LCA4OCwgMTI4LCA3MSwgNzEsIDY1LCA4NCwgMTI4LCA3MSwgNzEsIDY1LCA2NSwgMTI4LCA3MSwgNjksIDg0LCAxOTMsIAorICAgIDcxLCA2OSwgODMsIDg0LCA4NSwgODIsIDY5LCAxMjgsIDcxLCA2OSwgODMsIDcyLCA4NSwgMTI4LCA3MSwgNjksIDgzLCA3MiwgCisgICAgODQsIDczLCA3OCwgMTI4LCA3MSwgNjksIDgzLCA3MiwgODQsIDczLCAyMDYsIDcxLCA2OSwgODMsIDcyLCA1MCwgMTI4LCAKKyAgICA3MSwgNjksIDgyLCA4MywgNzIsIDY1LCA4OSwgNzMsIDc3LCAxMjgsIDcxLCA2OSwgODIsIDc3LCA2NSwgMjA2LCA3MSwgNjksIAorICAgIDgyLCA2OSwgODMsIDcyLCAxMjgsIDcxLCA2OSwgODIsIDY5LCA4MywgMjAwLCA3MSwgNjksIDc5LCA3NywgNjksIDg0LCA4MiwgCisgICAgNzMsIDY3LCA2NSwgNzYsIDc2LCAyMTcsIDcxLCA2OSwgNzksIDc3LCA2OSwgODQsIDgyLCA3MywgMTk1LCA3MSwgNjksIDc4LCAKKyAgICA4NCwgNzYsIDE5NywgNzEsIDY5LCA3OCwgNzMsIDg0LCA3MywgODYsIDY5LCAxMjgsIDcxLCA2OSwgNzgsIDczLCA3NSwgCisgICAgMjAxLCA3MSwgNjksIDc4LCA2OSwgODIsIDczLCAxOTUsIDcxLCA2OSwgNzcsIDczLCA3OCwgNzMsIDEyOCwgNzEsIDY5LCAKKyAgICA3NywgNzMsIDc4LCA2NSwgODQsIDczLCA3OSwgMjA2LCA3MSwgNjksIDIwNSwgNzEsIDY5LCA2OCwgNzksIDc2LCA2NSwgCisgICAgMTI4LCA3MSwgNjksIDY4LCA2OSwgMTI4LCA3MSwgNjksIDY2LCAyMDcsIDcxLCA2OSwgNjYsIDE5MywgNzEsIDY5LCA2NSwgCisgICAgODIsIDEyOCwgNzEsIDY5LCA2NSwgMjEwLCA3MSwgNjgsIDY1LCA3OCwgMTI4LCA3MSwgNjcsIDczLCA3MSwgMTI4LCA3MSwgCisgICAgNjcsIDY1LCAyMDYsIDcxLCA2NiwgNzksIDc4LCAxMjgsIDcxLCA2NiwgNzMsIDY5LCAxOTcsIDcxLCA2NiwgNjksIDg1LCAKKyAgICA4OCwgMTI4LCA3MSwgNjYsIDY5LCA4NCwgMTI4LCA3MSwgNjYsIDY1LCA4OSwgNzMsIDEyOCwgNzEsIDY2LCA2NSwgNzUsIAorICAgIDg1LCA4MiwgODUsIDc4LCA2OSwgNzgsIDEyOCwgNzEsIDY2LCAxMjgsIDcxLCA2NSwgODksIDY1LCA3OCwgODUsIDc1LCA3MywgCisgICAgODQsIDg0LCA2NSwgMTI4LCA3MSwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MSwgNjUsIDg5LCAxMjgsIDcxLCAKKyAgICA2NSwgODUsIDc4LCA4NCwgNzYsIDY5LCA4NCwgMTI4LCA3MSwgNjUsIDg0LCA3MiwgNjksIDgyLCA3MywgNzgsIDcxLCAxMjgsIAorICAgIDcxLCA2NSwgODQsIDcyLCA2OSwgODIsIDczLCA3OCwgMTk5LCA3MSwgNjUsIDg0LCA2OSwgMTI4LCA3MSwgNjUsIDgzLCA3MiwgCisgICAgNjUsIDc4LCAxMjgsIDcxLCA2NSwgODIsIDgzLCA3MiwgODUsIDc4LCA3MywgMTI4LCA3MSwgNjUsIDgyLCA3OSwgNzgsIAorICAgIDEyOCwgNzEsIDY1LCA4MiwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNzEsIDY1LCA4MiwgNjgsIDY5LCA3OCwgMTI4LCA3MSwgCisgICAgNjUsIDgyLCA1MSwgMTI4LCA3MSwgNjUsIDgwLCA4MCwgNjksIDE5NiwgNzEsIDY1LCAyMDgsIDcxLCA2NSwgNzgsIDc3LCAKKyAgICA2NSwgMTI4LCA3MSwgNjUsIDc4LCA3MSwgNzMsIDY1LCAxMjgsIDcxLCA2NSwgNzgsIDY4LCAxOTMsIDcxLCA2NSwgNzgsIAorICAgIDUwLCAxMjgsIDcxLCA2NSwgNzgsIDE3OCwgNzEsIDY1LCA3NywgNzcsIDY1LCAxMjgsIDcxLCA2NSwgNzcsIDc2LCA2NSwgCisgICAgMTI4LCA3MSwgNjUsIDc3LCA3NiwgMTI4LCA3MSwgNjUsIDc3LCA2OSwgMTI4LCA3MSwgNjUsIDc3LCAxOTcsIDcxLCA2NSwgCisgICAgNzcsIDY1LCA3OCwgMTI4LCA3MSwgNjUsIDc3LCA2NSwgNzYsIDEyOCwgNzEsIDY1LCA3NywgNjUsIDIwNCwgNzEsIDY1LCAKKyAgICA3MSwgMTI4LCA3MSwgNjUsIDcwLCAxMjgsIDcxLCA2NSwgMTk4LCA3MSwgNjUsIDY5LCA4NCwgODQsIDY1LCA0NSwgODAsIAorICAgIDczLCA3NiwgNzYsIDY1LCAxMjgsIDcxLCA2NSwgNjgsIDc5LCA3NiwgMTI4LCA3MSwgNjUsIDY4LCAxMjgsIDcxLCA2NSwgCisgICAgMTk2LCA3MSwgNjUsIDY2LCA2NSwgMTI4LCA3MSwgNjUsIDY2LCAxOTMsIDcxLCA2NSwgNjUsIDcwLCA4NSwgMTI4LCA3MSwgCisgICAgNjUsIDE3OCwgNzEsIDQ4LCA1MywgNTIsIDEyOCwgNzEsIDQ4LCA1MywgNTEsIDEyOCwgNzEsIDQ4LCA1MywgNTAsIDEyOCwgCisgICAgNzEsIDQ4LCA1MywgNDksIDEyOCwgNzEsIDQ4LCA1MywgNDgsIDEyOCwgNzEsIDQ4LCA1MiwgNTcsIDEyOCwgNzEsIDQ4LCAKKyAgICA1MiwgNTYsIDEyOCwgNzEsIDQ4LCA1MiwgNTUsIDEyOCwgNzEsIDQ4LCA1MiwgNTQsIDEyOCwgNzEsIDQ4LCA1MiwgNTMsIAorICAgIDY1LCAxMjgsIDcxLCA0OCwgNTIsIDUzLCAxMjgsIDcxLCA0OCwgNTIsIDUyLCAxMjgsIDcxLCA0OCwgNTIsIDUxLCA2NSwgCisgICAgMTI4LCA3MSwgNDgsIDUyLCA1MSwgMTI4LCA3MSwgNDgsIDUyLCA1MCwgMTI4LCA3MSwgNDgsIDUyLCA0OSwgMTI4LCA3MSwgCisgICAgNDgsIDUyLCA0OCwgMTI4LCA3MSwgNDgsIDUxLCA1NywgMTI4LCA3MSwgNDgsIDUxLCA1NiwgMTI4LCA3MSwgNDgsIDUxLCAKKyAgICA1NSwgNjUsIDEyOCwgNzEsIDQ4LCA1MSwgNTUsIDEyOCwgNzEsIDQ4LCA1MSwgNTQsIDY1LCAxMjgsIDcxLCA0OCwgNTEsIAorICAgIDU0LCAxMjgsIDcxLCA0OCwgNTEsIDUzLCAxMjgsIDcxLCA0OCwgNTEsIDUyLCAxMjgsIDcxLCA0OCwgNTEsIDUxLCAxMjgsIAorICAgIDcxLCA0OCwgNTEsIDUwLCAxMjgsIDcxLCA0OCwgNTEsIDQ5LCAxMjgsIDcxLCA0OCwgNTEsIDQ4LCAxMjgsIDcxLCA0OCwgCisgICAgNTAsIDU3LCAxMjgsIDcxLCA0OCwgNTAsIDU2LCAxMjgsIDcxLCA0OCwgNTAsIDU1LCAxMjgsIDcxLCA0OCwgNTAsIDU0LCAKKyAgICA2NSwgMTI4LCA3MSwgNDgsIDUwLCA1NCwgMTI4LCA3MSwgNDgsIDUwLCA1MywgMTI4LCA3MSwgNDgsIDUwLCA1MiwgMTI4LCAKKyAgICA3MSwgNDgsIDUwLCA1MSwgMTI4LCA3MSwgNDgsIDUwLCA1MCwgMTI4LCA3MSwgNDgsIDUwLCA0OSwgMTI4LCA3MSwgNDgsIAorICAgIDUwLCA0OCwgNjUsIDEyOCwgNzEsIDQ4LCA1MCwgNDgsIDEyOCwgNzEsIDQ4LCA0OSwgNTcsIDEyOCwgNzEsIDQ4LCA0OSwgCisgICAgNTYsIDEyOCwgNzEsIDQ4LCA0OSwgNTUsIDEyOCwgNzEsIDQ4LCA0OSwgNTQsIDEyOCwgNzEsIDQ4LCA0OSwgNTMsIDEyOCwgCisgICAgNzEsIDQ4LCA0OSwgNTIsIDEyOCwgNzEsIDQ4LCA0OSwgNTEsIDEyOCwgNzEsIDQ4LCA0OSwgNTAsIDEyOCwgNzEsIDQ4LCAKKyAgICA0OSwgNDksIDY1LCAxMjgsIDcxLCA0OCwgNDksIDQ5LCAxMjgsIDcxLCA0OCwgNDksIDQ4LCAxMjgsIDcxLCA0OCwgNDgsIAorICAgIDU3LCAxMjgsIDcxLCA0OCwgNDgsIDU2LCAxMjgsIDcxLCA0OCwgNDgsIDU1LCA2NiwgMTI4LCA3MSwgNDgsIDQ4LCA1NSwgCisgICAgNjUsIDEyOCwgNzEsIDQ4LCA0OCwgNTUsIDEyOCwgNzEsIDQ4LCA0OCwgNTQsIDY1LCAxMjgsIDcxLCA0OCwgNDgsIDU0LCAKKyAgICAxMjgsIDcxLCA0OCwgNDgsIDUzLCAxMjgsIDcxLCA0OCwgNDgsIDUyLCAxMjgsIDcxLCA0OCwgNDgsIDUxLCAxMjgsIDcxLCAKKyAgICA0OCwgNDgsIDUwLCAxMjgsIDcxLCA0OCwgNDgsIDQ5LCAxMjgsIDcwLCA4OSwgODgsIDEyOCwgNzAsIDg5LCA4NCwgMTI4LCAKKyAgICA3MCwgODksIDgwLCAxMjgsIDcwLCA4OSwgNjUsIDEyOCwgNzAsIDg3LCA3MywgMTI4LCA3MCwgODcsIDY5LCA2OSwgMTI4LCAKKyAgICA3MCwgODcsIDY5LCAxMjgsIDcwLCA4NywgNjUsIDY1LCAxMjgsIDcwLCA4NywgNjUsIDEyOCwgNzAsIDg2LCA4MywgNTEsIAorICAgIDEyOCwgNzAsIDg2LCA4MywgNTAsIDEyOCwgNzAsIDg2LCA4MywgNDksIDEyOCwgNzAsIDg1LCA4OCwgMTI4LCA3MCwgODUsIAorICAgIDg0LCAxMjgsIDcwLCA4NSwgODMsIDY5LCAxMjgsIDcwLCA4NSwgODMsIDE5MywgNzAsIDg1LCA4MiwgODgsIDEyOCwgNzAsIAorICAgIDg1LCA4MCwgMTI4LCA3MCwgODUsIDc4LCA2OSwgODIsIDY1LCAyMDQsIDcwLCA4NSwgNzgsIDY3LCA4NCwgNzMsIDc5LCA3OCwgCisgICAgNjUsIDIwNCwgNzAsIDg1LCA3OCwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDcwLCA4NSwgNzYsIDc2LCA3OCwgNjksIDgzLCAKKyAgICA4MywgMTI4LCA3MCwgODUsIDc2LCAyMDQsIDcwLCA4NSwgNzQsIDczLCAxMjgsIDcwLCA4NSwgNjksIDg0LCAxMjgsIDcwLCAKKyAgICA4NSwgNjksIDIwNCwgNzAsIDg1LCA2OSwgMTI4LCA3MCwgODQsIDcyLCA3OSwgODIsIDE5MywgNzAsIDgyLCA3OSwgODcsIAorICAgIDc4LCA3MywgNzgsIDcxLCAxMjgsIDcwLCA4MiwgNzksIDg3LCA3OCwgNzMsIDc4LCAxOTksIDcwLCA4MiwgNzksIDg3LCA3OCwgCisgICAgMTI4LCA3MCwgODIsIDc5LCA3OCwgODQsIDQ1LCA4NCwgNzMsIDc2LCA4NCwgNjksIDE5NiwgNzAsIDgyLCA3OSwgNzgsIDg0LCAKKyAgICA0NSwgNzAsIDY1LCA2NywgNzMsIDc4LCAxOTksIDcwLCA4MiwgNzksIDIwNSwgNzAsIDgyLCA3OSwgNzEsIDEyOCwgNzAsIAorICAgIDgyLCA3OSwgMTk5LCA3MCwgODIsIDczLCA4NCwgODUsIDEyOCwgNzAsIDgyLCA3MywgNjksIDgzLCAxMjgsIDcwLCA4MiwgCisgICAgNzMsIDY5LCAxOTYsIDcwLCA4MiwgNzMsIDY3LCA2NSwgODQsIDczLCA4NiwgNjksIDEyOCwgNzAsIDgyLCA2OSwgODQsIDY2LCAKKyAgICA3OSwgNjUsIDgyLCA2OCwgMTI4LCA3MCwgODIsIDY5LCA3OCwgNjcsIDIwMCwgNzAsIDgyLCA2OSwgNjksIDEyOCwgNzAsIAorICAgIDgyLCA2OSwgMTk3LCA3MCwgODIsIDY1LCA3OCwgMTk1LCA3MCwgODIsIDY1LCA3NywgNjksIDEyOCwgNzAsIDgyLCA2NSwgCisgICAgNzEsIDgyLCA2NSwgNzgsIDg0LCAxMjgsIDcwLCA4MiwgNjUsIDcxLCA3NywgNjksIDc4LCA4NCwgMTI4LCA3MCwgODIsIDY1LCAKKyAgICA2NywgODQsIDczLCA3OSwgMjA2LCA3MCwgNzksIDg4LCAxMjgsIDcwLCA3OSwgODUsIDgyLCA4NCwgNjksIDY5LCA3OCwgCisgICAgMTI4LCA3MCwgNzksIDg1LCA4MiwgODQsIDY5LCA2OSwgMjA2LCA3MCwgNzksIDg1LCA4MiwgNDUsIDg0LCA3MiwgNzMsIDgyLCAKKyAgICA4NCwgODksIDEyOCwgNzAsIDc5LCA4NSwgODIsIDQ1LCA4MywgODQsIDgyLCA3MywgNzgsIDE5OSwgNzAsIDc5LCA4NSwgODIsIAorICAgIDQ1LCA4MCwgNjksIDgyLCA0NSwgNjksIDIwNSwgNzAsIDc5LCA4NSwgODIsIDQ1LCA3NiwgNzMsIDc4LCAxOTcsIDcwLCA3OSwgCisgICAgODUsIDIxMCwgNzAsIDc5LCA4NSwgNzgsIDg0LCA2NSwgNzMsIDc4LCAxMjgsIDcwLCA3OSwgODMsIDg0LCA2OSwgODIsIDczLCAKKyAgICA3OCwgNzEsIDEyOCwgNzAsIDc5LCA4MiwgODcsIDY1LCA4MiwgNjgsIDEyOCwgNzAsIDc5LCA4MiwgODQsIDg5LCAxMjgsIAogICAgIDcwLCA3OSwgODIsIDg0LCAyMTcsIDcwLCA3OSwgODIsIDg0LCA2OSwgMTI4LCA3MCwgNzksIDgyLCA3NywgMjExLCA3MCwgCiAgICAgNzksIDgyLCA3NywgNjUsIDg0LCA4NCwgNzMsIDc4LCA3MSwgMTI4LCA3MCwgNzksIDgyLCA3NSwgNjksIDE5NiwgNzAsIDc5LCAKICAgICA4MiwgNjcsIDY5LCA4MywgMTI4LCA3MCwgNzksIDgyLCA2NywgNjksIDEyOCwgNzAsIDc5LCA4MCwgMTI4LCA3MCwgNzksIApAQCAtMzQ2MiwzODQgKzM2MTgsMzg5IEBACiAgICAgMTI4LCA3MCwgNzksIDc5LCA4NCwgMTI4LCA3MCwgNzksIDc5LCA2OCwgMTI4LCA3MCwgNzksIDc5LCAxMjgsIDcwLCA3OSwgCiAgICAgNzgsIDcxLCA3NywgNjUsIDc4LCAxMjgsIDcwLCA3OSwgNzcsIDEyOCwgNzAsIDc5LCA3NiwgNzYsIDg5LCAxMjgsIDcwLCAKICAgICA3OSwgNzYsIDc2LCA3OSwgODcsIDczLCA3OCwgNzEsIDEyOCwgNzAsIDc5LCA3NiwgNjgsIDY5LCA4MiwgMTI4LCA3MCwgNzksIAotICAgIDc2LCA2OCwgNjksIDE5NiwgNzAsIDc5LCA3MSwgNzEsIDg5LCAxMjgsIDcwLCA3NywgMTI4LCA3MCwgNzYsIDg5LCAxMjgsIAotICAgIDcwLCA3NiwgODUsIDg0LCA4NCwgNjksIDgyLCA3MywgNzgsIDE5OSwgNzAsIDc2LCA4NSwgODQsIDY5LCAxMjgsIDcwLCA3NiwgCi0gICAgODUsIDgzLCA3MiwgNjksIDE5NiwgNzAsIDc2LCA3OSwgODcsIDczLCA3OCwgMTk5LCA3MCwgNzYsIDc5LCA4NywgNjksIAotICAgIDIxMCwgNzAsIDc2LCA3OSwgODUsIDgyLCA3MywgODMsIDcyLCAxMjgsIDcwLCA3NiwgNzksIDgyLCA2OSwgODQsIDg0LCA2OSwgCi0gICAgMTI4LCA3MCwgNzYsIDc5LCA4MiwgNjUsIDIwNCwgNzAsIDc2LCA3OSwgODAsIDgwLCAyMTcsIDcwLCA3NiwgNzksIDc5LCAKLSAgICA4MiwgMTI4LCA3MCwgNzYsIDczLCA4MCwgMTI4LCA3MCwgNzYsIDczLCA3MSwgNzIsIDg0LCAxMjgsIDcwLCA3NiwgNjksIAotICAgIDg4LCA4NSwgODMsIDEyOCwgNzAsIDc2LCA2OSwgODgsIDY5LCAxOTYsIDcwLCA3NiwgNjksIDg1LCA4MiwgNDUsIDY4LCA2OSwgCi0gICAgNDUsIDc2LCA3MywgODMsIDEyOCwgNzAsIDc2LCA2NSwgODQsIDg0LCA2OSwgNzgsIDY5LCAxOTYsIDcwLCA3NiwgNjUsIDg0LCAKLSAgICA3OCwgNjksIDgzLCA4MywgMTI4LCA3MCwgNzYsIDY1LCA4NCwgMTI4LCA3MCwgNzYsIDY1LCAyMTIsIDcwLCA3NiwgNjUsIAotICAgIDcxLCA4MywgMTI4LCA3MCwgNzYsIDY1LCA3MSwgNDUsIDUzLCAxMjgsIDcwLCA3NiwgNjUsIDcxLCA0NSwgNTIsIDEyOCwgCi0gICAgNzAsIDc2LCA2NSwgNzEsIDQ1LCA1MSwgMTI4LCA3MCwgNzYsIDY1LCA3MSwgNDUsIDUwLCAxMjgsIDcwLCA3NiwgNjUsIDcxLCAKLSAgICA0NSwgNDksIDEyOCwgNzAsIDc2LCA2NSwgNzEsIDEyOCwgNzAsIDc2LCA2NSwgMTk5LCA3MCwgNzYsIDY1LCAxMjgsIDcwLCAKLSAgICA3NiwgMTI4LCA3MCwgNzMsIDg4LCA2OSwgNjgsIDQ1LCA3MCwgNzksIDgyLCAyMDUsIDcwLCA3MywgODgsIDEyOCwgNzAsIAotICAgIDczLCA4NiwgNjksIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDcwLCA3MywgODYsIDY5LCA0NSwgNzYsIDczLCAKLSAgICA3OCwgMTk3LCA3MCwgNzMsIDg2LCAxOTcsIDcwLCA3MywgODQsIDY1LCAxMjgsIDcwLCA3MywgODQsIDEyOCwgNzAsIDczLCAKLSAgICA4MywgODQsIDY5LCAxOTYsIDcwLCA3MywgODMsIDg0LCAxMjgsIDcwLCA3MywgODMsIDcyLCA3MywgNzgsIDE5OSwgNzAsIAotICAgIDczLCA4MywgNzIsIDcyLCA3OSwgNzksIDc1LCAxMjgsIDcwLCA3MywgODMsIDcyLCA3MiwgNzksIDc5LCAyMDMsIDcwLCA3MywgCi0gICAgODMsIDcyLCA2OSwgODksIDY5LCAxMjgsIDcwLCA3MywgODMsIDcyLCAxMjgsIDcwLCA3MywgODMsIDIwMCwgNzAsIDczLCAKLSAgICA4MiwgODMsIDIxMiwgNzAsIDczLCA4MiwgNzMsIDEyOCwgNzAsIDczLCA4MiwgNjksIDg3LCA3OSwgODIsIDc1LCA4MywgCi0gICAgMTI4LCA3MCwgNzMsIDgyLCA2OSwgODcsIDc5LCA4MiwgMjAzLCA3MCwgNzMsIDgyLCA2OSwgMTI4LCA3MCwgNzMsIDgyLCAKLSAgICAxOTcsIDcwLCA3MywgODAsIDEyOCwgNzAsIDczLCA3OCwgNzMsIDg0LCAxOTcsIDcwLCA3MywgNzgsIDcxLCA2OSwgODIsIAotICAgIDc4LCA2NSwgNzMsIDc2LCA4MywgMTI4LCA3MCwgNzMsIDc4LCA3MSwgNjksIDgyLCA2OSwgMTk2LCA3MCwgNzMsIDc4LCA2NSwgCi0gICAgNzgsIDY3LCA3MywgNjUsIDc2LCAxMjgsIDcwLCA3MywgNzYsIDc2LCA2OSwgODIsIDEyOCwgNzAsIDczLCA3NiwgNzYsIDY5LCAKLSAgICAxOTYsIDcwLCA3MywgNzYsIDc2LCAxMjgsIDcwLCA3MywgNzYsIDIwNCwgNzAsIDczLCA3NiwgMTk3LCA3MCwgNzMsIDczLCAKLSAgICAxMjgsIDcwLCA3MywgNzEsIDg1LCA4MiwgNjksIDQ1LCA1MSwgMTI4LCA3MCwgNzMsIDcxLCA4NSwgODIsIDY5LCA0NSwgNTAsIAotICAgIDEyOCwgNzAsIDczLCA3MSwgODUsIDgyLCA2OSwgNDUsIDQ5LCAxMjgsIDcwLCA3MywgNzEsIDg1LCA4MiwgMTk3LCA3MCwgCi0gICAgNzMsIDcxLCA3MiwgODQsIDEyOCwgNzAsIDczLCA3MCwgODQsIDg5LCAxMjgsIDcwLCA3MywgNzAsIDg0LCAyMTcsIDcwLCAKLSAgICA3MywgNzAsIDg0LCA3MiwgODMsIDEyOCwgNzAsIDczLCA3MCwgODQsIDcyLCAxMjgsIDcwLCA3MywgNzAsIDg0LCA2OSwgNjksIAotICAgIDc4LCAxMjgsIDcwLCA3MywgNzAsIDg0LCA2OSwgNjksIDIwNiwgNzAsIDczLCA2OSwgNzYsIDY4LCAxMjgsIDcwLCA3MiwgCi0gICAgODQsIDc5LCA4MiwgMTkzLCA3MCwgNzAsIDc2LCAxMjgsIDcwLCA3MCwgNzMsIDEyOCwgNzAsIDY5LCA4NSwgODgsIDEyOCwgCi0gICAgNzAsIDY5LCA4NSwgNzAsIDY5LCA4NSwgNjUsIDY5LCA4NCwgMTI4LCA3MCwgNjksIDgzLCA4NCwgNzMsIDg2LCA2NSwgNzYsIAotICAgIDEyOCwgNzAsIDY5LCA4MiwgODIsIDg5LCAxMjgsIDcwLCA2OSwgODIsIDgyLCA3MywgMjExLCA3MCwgNjksIDgyLCA3NywgCi0gICAgNjUsIDg0LCA2NSwgMTI4LCA3MCwgNjksIDgyLCA3NywgNjUsIDg0LCAxOTMsIDcwLCA2OSwgNzksIDIwMCwgNzAsIDY5LCAKLSAgICA3OCwgMTk5LCA3MCwgNjksIDc4LCA2NywgNjksIDEyOCwgNzAsIDY5LCA3NywgNzMsIDc4LCA3MywgNzgsIDE5NywgNzAsIAotICAgIDY5LCA3NywgNjUsIDc2LCA2OSwgMTI4LCA3MCwgNjksIDc3LCA2NSwgNzYsIDE5NywgNzAsIDY5LCA3NiwgNzYsIDc5LCA4NywgCi0gICAgODMsIDcyLCA3MywgODAsIDEyOCwgNzAsIDY5LCA3MywgMTI4LCA3MCwgNjksIDcyLCAyMTMsIDcwLCA2OSwgNzIsIDEyOCwgCi0gICAgNzAsIDY5LCAyMDAsIDcwLCA2OSwgNjksIDc4LCA3MSwgMTI4LCA3MCwgNjksIDY5LCA2OCwgMTI4LCA3MCwgNjksIDY5LCAKLSAgICAxOTYsIDcwLCA2OSwgNjksIDEyOCwgNzAsIDY5LCA2NiwgODIsIDg1LCA2NSwgODIsIDg5LCAxMjgsIDcwLCA2OSwgNjUsIAotICAgIDg0LCA3MiwgNjksIDgyLCAxMjgsIDcwLCA2OSwgNjUsIDg0LCA3MiwgNjksIDIxMCwgNzAsIDY5LCA2NSwgODIsIDc4LCAKLSAgICAxMjgsIDcwLCA2OSwgNjUsIDgyLCA3MCwgODUsIDIwNCwgNzAsIDY5LCA2NSwgODIsIDEyOCwgNzAsIDY1LCA4OSwgNjUsIAotICAgIDc4LCA3OCwgNjUsIDEyOCwgNzAsIDY1LCA4OCwgMTI4LCA3MCwgNjUsIDIxNiwgNzAsIDY1LCA4NCwgNzMsIDcxLCA4NSwgCi0gICAgNjksIDEyOCwgNzAsIDY1LCA4NCwgNzIsIDY5LCA4MiwgMTI4LCA3MCwgNjUsIDg0LCA3MiwgNjksIDIxMCwgNzAsIDY1LCAKLSAgICA4NCwgNzIsIDY1LCA4NCwgNjUsIDc4LCAxMjgsIDcwLCA2NSwgODQsIDcyLCA2NSwgODQsIDY1LCAyMDYsIDcwLCA2NSwgODQsIAotICAgIDcyLCA2NSwgMTI4LCA3MCwgNjUsIDg0LCA3MiwgMTkzLCA3MCwgNjUsIDg0LCAxMjgsIDcwLCA2NSwgODIsIDgzLCAyMDEsIAotICAgIDcwLCA2NSwgODEsIDEyOCwgNzAsIDY1LCA4MCwgMTI4LCA3MCwgNjUsIDc4LCA3MSwgMTI4LCA3MCwgNjUsIDc4LCA2OSwgCi0gICAgODIsIDc5LCA4MywgNzMsIDIxMSwgNzAsIDY1LCA3OCwgMTI4LCA3MCwgNjUsIDc3LCA3MywgNzYsIDg5LCAxMjgsIDcwLCAKLSAgICA2NSwgNzYsIDc2LCA3MywgNzgsIDE5OSwgNzAsIDY1LCA3NiwgNzYsIDY5LCAyMDYsIDcwLCA2NSwgNzMsIDc2LCA4NSwgODIsIAotICAgIDY5LCAxMjgsIDcwLCA2NSwgNzMsIDcyLCA4NSwgMTI4LCA3MCwgNjUsIDcyLCA4MiwgNjksIDc4LCA3MiwgNjksIDczLCA4NCwgCi0gICAgMTI4LCA3MCwgNjUsIDY3LCA4NCwgNzksIDgyLCA4OSwgMTI4LCA3MCwgNjUsIDY3LCA4NCwgNzksIDIxMCwgNzAsIDY1LCAKLSAgICA2NywgODMsIDczLCA3NywgNzMsIDc2LCAxOTcsIDcwLCA2NSwgNjcsIDY5LCA0NSwgNTQsIDEyOCwgNzAsIDY1LCA2NywgNjksIAotICAgIDQ1LCA1MywgMTI4LCA3MCwgNjUsIDY3LCA2OSwgNDUsIDUyLCAxMjgsIDcwLCA2NSwgNjcsIDY5LCA0NSwgNTEsIDEyOCwgCi0gICAgNzAsIDY1LCA2NywgNjksIDQ1LCA1MCwgMTI4LCA3MCwgNjUsIDY3LCA2OSwgNDUsIDQ5LCAxMjgsIDcwLCA2NSwgNjUsIDc3LCAKLSAgICA2NSwgNjksIDEyOCwgNzAsIDY1LCA2NSwgNzMsIDEyOCwgNzAsIDY1LCA2NSwgNzAsIDg1LCAxMjgsIDcwLCA0OCwgNTMsIAotICAgIDUxLCAxMjgsIDcwLCA0OCwgNTMsIDUwLCAxMjgsIDcwLCA0OCwgNTMsIDQ5LCA2NywgMTI4LCA3MCwgNDgsIDUzLCA0OSwgCi0gICAgNjYsIDEyOCwgNzAsIDQ4LCA1MywgNDksIDY1LCAxMjgsIDcwLCA0OCwgNTMsIDQ5LCAxMjgsIDcwLCA0OCwgNTMsIDQ4LCAKLSAgICAxMjgsIDcwLCA0OCwgNTIsIDU3LCAxMjgsIDcwLCA0OCwgNTIsIDU2LCAxMjgsIDcwLCA0OCwgNTIsIDU1LCA2NSwgMTI4LCAKLSAgICA3MCwgNDgsIDUyLCA1NSwgMTI4LCA3MCwgNDgsIDUyLCA1NCwgNjUsIDEyOCwgNzAsIDQ4LCA1MiwgNTQsIDEyOCwgNzAsIAotICAgIDQ4LCA1MiwgNTMsIDY1LCAxMjgsIDcwLCA0OCwgNTIsIDUzLCAxMjgsIDcwLCA0OCwgNTIsIDUyLCAxMjgsIDcwLCA0OCwgCi0gICAgNTIsIDUxLCAxMjgsIDcwLCA0OCwgNTIsIDUwLCAxMjgsIDcwLCA0OCwgNTIsIDQ5LCAxMjgsIDcwLCA0OCwgNTIsIDQ4LCAKLSAgICAxMjgsIDcwLCA0OCwgNTEsIDU3LCAxMjgsIDcwLCA0OCwgNTEsIDU2LCA2NSwgMTI4LCA3MCwgNDgsIDUxLCA1NiwgMTI4LCAKLSAgICA3MCwgNDgsIDUxLCA1NSwgNjUsIDEyOCwgNzAsIDQ4LCA1MSwgNTUsIDEyOCwgNzAsIDQ4LCA1MSwgNTQsIDEyOCwgNzAsIAotICAgIDQ4LCA1MSwgNTMsIDEyOCwgNzAsIDQ4LCA1MSwgNTIsIDEyOCwgNzAsIDQ4LCA1MSwgNTEsIDEyOCwgNzAsIDQ4LCA1MSwgCi0gICAgNTAsIDEyOCwgNzAsIDQ4LCA1MSwgNDksIDY1LCAxMjgsIDcwLCA0OCwgNTEsIDQ5LCAxMjgsIDcwLCA0OCwgNTEsIDQ4LCAKLSAgICAxMjgsIDcwLCA0OCwgNTAsIDU3LCAxMjgsIDcwLCA0OCwgNTAsIDU2LCAxMjgsIDcwLCA0OCwgNTAsIDU1LCAxMjgsIDcwLCAKLSAgICA0OCwgNTAsIDU0LCAxMjgsIDcwLCA0OCwgNTAsIDUzLCAxMjgsIDcwLCA0OCwgNTAsIDUyLCAxMjgsIDcwLCA0OCwgNTAsIAotICAgIDUxLCAxMjgsIDcwLCA0OCwgNTAsIDUwLCAxMjgsIDcwLCA0OCwgNTAsIDQ5LCA2NSwgMTI4LCA3MCwgNDgsIDUwLCA0OSwgCi0gICAgMTI4LCA3MCwgNDgsIDUwLCA0OCwgMTI4LCA3MCwgNDgsIDQ5LCA1NywgMTI4LCA3MCwgNDgsIDQ5LCA1NiwgMTI4LCA3MCwgCi0gICAgNDgsIDQ5LCA1NSwgMTI4LCA3MCwgNDgsIDQ5LCA1NCwgMTI4LCA3MCwgNDgsIDQ5LCA1MywgMTI4LCA3MCwgNDgsIDQ5LCAKLSAgICA1MiwgMTI4LCA3MCwgNDgsIDQ5LCA1MSwgNjUsIDEyOCwgNzAsIDQ4LCA0OSwgNTEsIDEyOCwgNzAsIDQ4LCA0OSwgNTAsIAotICAgIDEyOCwgNzAsIDQ4LCA0OSwgNDksIDEyOCwgNzAsIDQ4LCA0OSwgNDgsIDEyOCwgNzAsIDQ4LCA0OCwgNTcsIDEyOCwgNzAsIAotICAgIDQ4LCA0OCwgNTYsIDEyOCwgNzAsIDQ4LCA0OCwgNTUsIDEyOCwgNzAsIDQ4LCA0OCwgNTQsIDEyOCwgNzAsIDQ4LCA0OCwgCi0gICAgNTMsIDEyOCwgNzAsIDQ4LCA0OCwgNTIsIDEyOCwgNzAsIDQ4LCA0OCwgNTEsIDEyOCwgNzAsIDQ4LCA0OCwgNTAsIDEyOCwgCi0gICAgNzAsIDQ4LCA0OCwgNDksIDY1LCAxMjgsIDcwLCA0OCwgNDgsIDQ5LCAxMjgsIDY5LCA5MCwgMjAwLCA2OSwgOTAsIDY5LCAKLSAgICA3OCwgMTI4LCA2OSwgOTAsIDY5LCAyMDYsIDY5LCA5MCwgMTI4LCA2OSwgODksIDY5LCA4MywgMTI4LCA2OSwgODksIDY5LCAKLSAgICA3MSwgNzYsIDY1LCA4MywgODMsIDY5LCA4MywgMTI4LCA2OSwgODksIDY2LCA2OSwgODksIDcwLCA3MywgNzYsIDczLCAxMjgsIAotICAgIDY5LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNjksIDg4LCA4NCwgODIsIDY1LCA4NCwgNjksIDgyLCA4MiwgNjksIDgzLCAKLSAgICA4NCwgODIsIDczLCA2NSwgMjA0LCA2OSwgODgsIDg0LCA4MiwgNjUsIDQ1LCA3NiwgNzksIDIxNSwgNjksIDg4LCA4NCwgODIsIAotICAgIDY1LCA0NSwgNzIsIDczLCA3MSwgMjAwLCA2OSwgODgsIDg0LCA2OSwgNzgsIDgzLCA3MywgNzksIDc4LCAxMjgsIDY5LCA4OCwgCi0gICAgODQsIDY5LCA3OCwgNjgsIDY5LCAxOTYsIDY5LCA4OCwgODAsIDc5LCA3OCwgNjksIDc4LCAyMTIsIDY5LCA4OCwgNzksIAotICAgIDEyOCwgNjksIDg4LCAyMDcsIDY5LCA4OCwgNzMsIDgzLCA4NCwgODMsIDEyOCwgNjksIDg4LCA3MywgODMsIDg0LCAxMjgsIAotICAgIDY5LCA4OCwgNzIsIDY1LCA4NSwgODMsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY5LCA4OCwgNjcsIDc2LCA2NSwgNzcsIDY1LCAKLSAgICA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2OSwgODgsIDY3LCA3NiwgNjUsIDc3LCA2NSwgODQsIDczLCA3OSwgMjA2LCA2OSwgODgsIAotICAgIDY3LCA3MiwgNjUsIDc4LCA3MSwgNjksIDEyOCwgNjksIDg4LCA2NywgNjksIDgzLCA4MywgMTI4LCA2OSwgODgsIDY3LCA2OSwgCi0gICAgNzYsIDc2LCA2OSwgNzgsIDg0LCAxMjgsIDY5LCA4NywgNjksIDEyOCwgNjksIDg2LCA2OSwgODIsIDcxLCA4MiwgNjksIDY5LCAKLSAgICAyMDYsIDY5LCA4NiwgNjksIDc4LCA3MywgNzgsIDcxLCAxMjgsIDY5LCA4NSwgODIsIDc5LCA4MCwgNjksIDY1LCAyMDYsIAotICAgIDY5LCA4NSwgODIsIDc5LCA4MCwgNjksIDQ1LCA2NSwgNzAsIDgyLCA3MywgNjcsIDY1LCAxMjgsIDY5LCA4NSwgODIsIDc5LCAKLSAgICA0NSwgNjcsIDg1LCA4MiwgODIsIDY5LCA3OCwgNjcsIDIxNywgNjksIDg1LCA4MiwgMjA3LCA2OSwgODUsIDc2LCA2OSwgCi0gICAgMjEwLCA2OSwgODUsIDQ1LCA4NSwgMTI4LCA2OSwgODUsIDQ1LCA3OSwgMTI4LCA2OSwgODUsIDQ1LCA2OSwgODUsIDEyOCwgCi0gICAgNjksIDg1LCA0NSwgNjksIDc5LCAxMjgsIDY5LCA4NSwgNDUsIDY5LCAxMjgsIDY5LCA4NSwgNDUsIDY1LCAxMjgsIDY5LCAKLSAgICA4NCwgNzgsIDY1LCA3MiwgODQsIDY1LCAxMjgsIDY5LCA4NCwgNzIsIDY5LCAyMDQsIDY5LCA4NCwgNjksIDgyLCA3OSwgCi0gICAgMjA2LCA2OSwgODQsIDY5LCA4MiwgNzgsIDczLCA4NCwgODksIDEyOCwgNjksIDgzLCA4NSwgNzUsIDg1LCA4NSwgNjgsIDc5LCAKLSAgICAxMjgsIDY5LCA4MywgODQsIDczLCA3NywgNjUsIDg0LCA2OSwgODMsIDEyOCwgNjksIDgzLCA4NCwgNzMsIDc3LCA2NSwgODQsIAotICAgIDY5LCAxOTYsIDY5LCA4MywgNzIsIDY5LCA1MSwgMTI4LCA2OSwgODMsIDcyLCA1MCwgNDksIDEyOCwgNjksIDgzLCA3MiwgCi0gICAgMTc4LCA2OSwgODMsIDcyLCA0OSwgNTQsIDEyOCwgNjksIDgzLCA2NywgNjUsIDgwLCA2OSwgMTI4LCA2OSwgODMsIDQ1LCAKLSAgICA4NCwgNjksIDEyOCwgNjksIDgyLCA4MiwgNzksIDgyLCA0NSwgNjYsIDY1LCA4MiwgODIsIDY5LCAxOTYsIDY5LCA4MiwgODIsIAotICAgIDEyOCwgNjksIDgyLCA3MywgNzgsIDUwLCAxMjgsIDY5LCA4MiwgNzEsIDEyOCwgNjksIDgyLCA2NSwgODMsIDE5NywgNjksIAotICAgIDgxLCA4NSwgNzMsIDg2LCA2NSwgNzYsIDY5LCA3OCwgMjEyLCA2OSwgODEsIDg1LCA3MywgNjgsIDEyOCwgNjksIDgxLCA4NSwgCi0gICAgNzMsIDY1LCA3OCwgNzEsIDg1LCA3NiwgNjUsIDIxMCwgNjksIDgxLCA4NSwgNjUsIDc2LCA4MywgMTI4LCA2OSwgODEsIDg1LCAKLSAgICA2NSwgNzYsIDIxMSwgNjksIDgxLCA4NSwgNjUsIDc2LCAxMjgsIDY5LCA4MCwgODMsIDczLCA3NiwgNzksIDc4LCAxMjgsIAotICAgIDY5LCA4MCwgODMsIDczLCA3NiwgNzksIDIwNiwgNjksIDgwLCA3OSwgNjcsIDcyLCAxMjgsIDY5LCA4MCwgNzMsIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNzMsIDE5NSwgNjksIDgwLCA3MywgNjgsIDY1LCA4NSwgODIsIDY5LCA2NSwgMjA2LCA2OSwgODAsIDY5LCAKLSAgICA3OCwgODQsIDcyLCA2OSwgODQsIDczLCAxOTUsIDY5LCA4MCwgNjksIDcxLCA2OSwgODIsIDc3LCA2NSwgMTI4LCA2OSwgNzksIAotICAgIDc2LCA3MiwgODgsIDEyOCwgNjksIDc5LCA3MiwgMTI4LCA2OSwgNzgsIDg5LCAxMjgsIDY5LCA3OCwgODYsIDY5LCA3NiwgCisgICAgNzYsIDY4LCA2OSwgMTk2LCA3MCwgNzksIDcxLCA3MSwgODksIDEyOCwgNzAsIDIwNywgNzAsIDc3LCAxMjgsIDcwLCA3NiwgCisgICAgODksIDEyOCwgNzAsIDc2LCA4NSwgODQsIDg0LCA2OSwgODIsIDczLCA3OCwgMTk5LCA3MCwgNzYsIDg1LCA4NCwgNjksIAorICAgIDEyOCwgNzAsIDc2LCA4NSwgODMsIDcyLCA2OSwgMTk2LCA3MCwgNzYsIDc5LCA4NywgNzMsIDc4LCAxOTksIDcwLCA3NiwgCisgICAgNzksIDg3LCA2OSwgMjEwLCA3MCwgNzYsIDc5LCA4NSwgODIsIDczLCA4MywgNzIsIDEyOCwgNzAsIDc2LCA3OSwgODIsIDY5LCAKKyAgICA4NCwgODQsIDY5LCAxMjgsIDcwLCA3NiwgNzksIDgyLCA2NSwgMjA0LCA3MCwgNzYsIDc5LCA4MCwgODAsIDIxNywgNzAsIAorICAgIDc2LCA3OSwgNzksIDgyLCAxMjgsIDcwLCA3NiwgNzMsIDgwLCAxMjgsIDcwLCA3NiwgNzMsIDcxLCA3MiwgODQsIDEyOCwgCisgICAgNzAsIDc2LCA2OSwgODgsIDg1LCA4MywgMTI4LCA3MCwgNzYsIDY5LCA4OCwgNjksIDE5NiwgNzAsIDc2LCA2OSwgODUsIDgyLCAKKyAgICA0NSwgNjgsIDY5LCA0NSwgNzYsIDczLCA4MywgMTI4LCA3MCwgNzYsIDY1LCA4NCwgODQsIDY5LCA3OCwgNjksIDE5NiwgNzAsIAorICAgIDc2LCA2NSwgODQsIDc4LCA2OSwgODMsIDgzLCAxMjgsIDcwLCA3NiwgNjUsIDg0LCAxMjgsIDcwLCA3NiwgNjUsIDIxMiwgCisgICAgNzAsIDc2LCA2NSwgNzEsIDgzLCAxMjgsIDcwLCA3NiwgNjUsIDcxLCA0NSwgNTMsIDEyOCwgNzAsIDc2LCA2NSwgNzEsIDQ1LCAKKyAgICA1MiwgMTI4LCA3MCwgNzYsIDY1LCA3MSwgNDUsIDUxLCAxMjgsIDcwLCA3NiwgNjUsIDcxLCA0NSwgNTAsIDEyOCwgNzAsIAorICAgIDc2LCA2NSwgNzEsIDQ1LCA0OSwgMTI4LCA3MCwgNzYsIDY1LCA3MSwgMTI4LCA3MCwgNzYsIDY1LCAxOTksIDcwLCA3NiwgCisgICAgNjUsIDEyOCwgNzAsIDc2LCAxMjgsIDcwLCA3MywgODgsIDY5LCA2OCwgNDUsIDcwLCA3OSwgODIsIDIwNSwgNzAsIDczLCAKKyAgICA4OCwgMTI4LCA3MCwgNzMsIDg2LCA2OSwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgNzAsIDczLCA4NiwgNjksIAorICAgIDQ1LCA3NiwgNzMsIDc4LCAxOTcsIDcwLCA3MywgODYsIDE5NywgNzAsIDczLCA4NCwgNjUsIDEyOCwgNzAsIDczLCA4NCwgCisgICAgMTI4LCA3MCwgNzMsIDgzLCA4NCwgNjksIDE5NiwgNzAsIDczLCA4MywgODQsIDEyOCwgNzAsIDczLCA4MywgNzIsIDczLCAKKyAgICA3OCwgMTk5LCA3MCwgNzMsIDgzLCA3MiwgNzIsIDc5LCA3OSwgNzUsIDEyOCwgNzAsIDczLCA4MywgNzIsIDcyLCA3OSwgNzksIAorICAgIDIwMywgNzAsIDczLCA4MywgNzIsIDY5LCA4OSwgNjksIDEyOCwgNzAsIDczLCA4MywgNzIsIDEyOCwgNzAsIDczLCA4MywgCisgICAgMjAwLCA3MCwgNzMsIDgyLCA4MywgMjEyLCA3MCwgNzMsIDgyLCA3MywgMTI4LCA3MCwgNzMsIDgyLCA2OSwgODcsIDc5LCAKKyAgICA4MiwgNzUsIDgzLCAxMjgsIDcwLCA3MywgODIsIDY5LCA4NywgNzksIDgyLCAyMDMsIDcwLCA3MywgODIsIDY5LCAxMjgsIAorICAgIDcwLCA3MywgODIsIDE5NywgNzAsIDczLCA4MCwgMTI4LCA3MCwgNzMsIDc4LCA3MywgODQsIDE5NywgNzAsIDczLCA3OCwgCisgICAgNzEsIDY5LCA4MiwgNzgsIDY1LCA3MywgNzYsIDgzLCAxMjgsIDcwLCA3MywgNzgsIDcxLCA2OSwgODIsIDY5LCAxOTYsIDcwLCAKKyAgICA3MywgNzgsIDY1LCA3OCwgNjcsIDczLCA2NSwgNzYsIDEyOCwgNzAsIDczLCA3NiwgNzYsIDY5LCA4MiwgMTI4LCA3MCwgNzMsIAorICAgIDc2LCA3NiwgNjksIDE5NiwgNzAsIDczLCA3NiwgNzYsIDEyOCwgNzAsIDczLCA3NiwgMjA0LCA3MCwgNzMsIDc2LCAxOTcsIAorICAgIDcwLCA3MywgNzMsIDEyOCwgNzAsIDczLCA3MSwgODUsIDgyLCA2OSwgNDUsIDUxLCAxMjgsIDcwLCA3MywgNzEsIDg1LCA4MiwgCisgICAgNjksIDQ1LCA1MCwgMTI4LCA3MCwgNzMsIDcxLCA4NSwgODIsIDY5LCA0NSwgNDksIDEyOCwgNzAsIDczLCA3MSwgODUsIDgyLCAKKyAgICAxOTcsIDcwLCA3MywgNzEsIDcyLCA4NCwgMTI4LCA3MCwgNzMsIDcwLCA4NCwgODksIDEyOCwgNzAsIDczLCA3MCwgODQsIAorICAgIDIxNywgNzAsIDczLCA3MCwgODQsIDcyLCA4MywgMTI4LCA3MCwgNzMsIDcwLCA4NCwgNzIsIDEyOCwgNzAsIDczLCA3MCwgCisgICAgODQsIDY5LCA2OSwgNzgsIDEyOCwgNzAsIDczLCA3MCwgODQsIDY5LCA2OSwgMjA2LCA3MCwgNzMsIDY5LCA3NiwgNjgsIAorICAgIDEyOCwgNzAsIDcyLCA4NCwgNzksIDgyLCAxOTMsIDcwLCA3MCwgNzYsIDEyOCwgNzAsIDcwLCA3MywgMTI4LCA3MCwgNjksIAorICAgIDg1LCA4OCwgMTI4LCA3MCwgNjksIDg1LCA3MCwgNjksIDg1LCA2NSwgNjksIDg0LCAxMjgsIDcwLCA2OSwgODMsIDg0LCA3MywgCisgICAgODYsIDY1LCA3NiwgMTI4LCA3MCwgNjksIDgyLCA4MiwgODksIDEyOCwgNzAsIDY5LCA4MiwgODIsIDczLCAyMTEsIDcwLCAKKyAgICA2OSwgODIsIDc3LCA2NSwgODQsIDY1LCAxMjgsIDcwLCA2OSwgODIsIDc3LCA2NSwgODQsIDE5MywgNzAsIDY5LCA3OSwgCisgICAgMjAwLCA3MCwgNjksIDc4LCAxOTksIDcwLCA2OSwgNzgsIDY3LCA2OSwgMTI4LCA3MCwgNjksIDc3LCA3MywgNzgsIDczLCAKKyAgICA3OCwgMTk3LCA3MCwgNjksIDc3LCA2NSwgNzYsIDY5LCAxMjgsIDcwLCA2OSwgNzcsIDY1LCA3NiwgMTk3LCA3MCwgNjksIAorICAgIDc2LCA3NiwgNzksIDg3LCA4MywgNzIsIDczLCA4MCwgMTI4LCA3MCwgNjksIDczLCAxMjgsIDcwLCA2OSwgNzIsIDIxMywgCisgICAgNzAsIDY5LCA3MiwgMTI4LCA3MCwgNjksIDIwMCwgNzAsIDY5LCA2OSwgNzgsIDcxLCAxMjgsIDcwLCA2OSwgNjksIDY4LCAKKyAgICAxMjgsIDcwLCA2OSwgNjksIDE5NiwgNzAsIDY5LCA2OSwgMTI4LCA3MCwgNjksIDY2LCA4MiwgODUsIDY1LCA4MiwgODksIAorICAgIDEyOCwgNzAsIDY5LCA2NSwgODQsIDcyLCA2OSwgODIsIDEyOCwgNzAsIDY5LCA2NSwgODQsIDcyLCA2OSwgMjEwLCA3MCwgCisgICAgNjksIDY1LCA4MiwgNzgsIDEyOCwgNzAsIDY5LCA2NSwgODIsIDcwLCA4NSwgMjA0LCA3MCwgNjksIDY1LCA4MiwgMTI4LCAKKyAgICA3MCwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MCwgNjUsIDg5LCAxMjgsIDcwLCA2NSwgODgsIDEyOCwgNzAsIAorICAgIDY1LCAyMTYsIDcwLCA2NSwgODQsIDczLCA3MSwgODUsIDY5LCAxMjgsIDcwLCA2NSwgODQsIDcyLCA2OSwgODIsIDEyOCwgCisgICAgNzAsIDY1LCA4NCwgNzIsIDY5LCAyMTAsIDcwLCA2NSwgODQsIDcyLCA2NSwgODQsIDY1LCA3OCwgMTI4LCA3MCwgNjUsIDg0LCAKKyAgICA3MiwgNjUsIDg0LCA2NSwgMjA2LCA3MCwgNjUsIDg0LCA3MiwgNjUsIDEyOCwgNzAsIDY1LCA4NCwgNzIsIDE5MywgNzAsIAorICAgIDY1LCA4NCwgMTI4LCA3MCwgNjUsIDgyLCA4MywgMjAxLCA3MCwgNjUsIDgxLCAxMjgsIDcwLCA2NSwgODAsIDEyOCwgNzAsIAorICAgIDY1LCA3OCwgNzEsIDEyOCwgNzAsIDY1LCA3OCwgNjksIDgyLCA3OSwgODMsIDczLCAyMTEsIDcwLCA2NSwgNzgsIDEyOCwgCisgICAgNzAsIDY1LCA3NywgNzMsIDc2LCA4OSwgMTI4LCA3MCwgNjUsIDc2LCA3NiwgNzMsIDc4LCAxOTksIDcwLCA2NSwgNzYsIDc2LCAKKyAgICA2OSwgMjA2LCA3MCwgNjUsIDczLCA3NiwgODUsIDgyLCA2OSwgMTI4LCA3MCwgNjUsIDczLCA3MiwgODUsIDEyOCwgNzAsIAorICAgIDY1LCA3MiwgODIsIDY5LCA3OCwgNzIsIDY5LCA3MywgODQsIDEyOCwgNzAsIDY1LCA2NywgODQsIDc5LCA4MiwgODksIDEyOCwgCisgICAgNzAsIDY1LCA2NywgODQsIDc5LCAyMTAsIDcwLCA2NSwgNjcsIDgzLCA3MywgNzcsIDczLCA3NiwgMTk3LCA3MCwgNjUsIDY3LCAKKyAgICA2OSwgNDUsIDU0LCAxMjgsIDcwLCA2NSwgNjcsIDY5LCA0NSwgNTMsIDEyOCwgNzAsIDY1LCA2NywgNjksIDQ1LCA1MiwgCisgICAgMTI4LCA3MCwgNjUsIDY3LCA2OSwgNDUsIDUxLCAxMjgsIDcwLCA2NSwgNjcsIDY5LCA0NSwgNTAsIDEyOCwgNzAsIDY1LCAKKyAgICA2NywgNjksIDQ1LCA0OSwgMTI4LCA3MCwgNjUsIDY1LCA3NywgNjUsIDY5LCAxMjgsIDcwLCA2NSwgNjUsIDczLCAxMjgsIAorICAgIDcwLCA2NSwgNjUsIDcwLCA4NSwgMTI4LCA3MCwgNDgsIDUzLCA1MSwgMTI4LCA3MCwgNDgsIDUzLCA1MCwgMTI4LCA3MCwgCisgICAgNDgsIDUzLCA0OSwgNjcsIDEyOCwgNzAsIDQ4LCA1MywgNDksIDY2LCAxMjgsIDcwLCA0OCwgNTMsIDQ5LCA2NSwgMTI4LCAKKyAgICA3MCwgNDgsIDUzLCA0OSwgMTI4LCA3MCwgNDgsIDUzLCA0OCwgMTI4LCA3MCwgNDgsIDUyLCA1NywgMTI4LCA3MCwgNDgsIAorICAgIDUyLCA1NiwgMTI4LCA3MCwgNDgsIDUyLCA1NSwgNjUsIDEyOCwgNzAsIDQ4LCA1MiwgNTUsIDEyOCwgNzAsIDQ4LCA1MiwgCisgICAgNTQsIDY1LCAxMjgsIDcwLCA0OCwgNTIsIDU0LCAxMjgsIDcwLCA0OCwgNTIsIDUzLCA2NSwgMTI4LCA3MCwgNDgsIDUyLCAKKyAgICA1MywgMTI4LCA3MCwgNDgsIDUyLCA1MiwgMTI4LCA3MCwgNDgsIDUyLCA1MSwgMTI4LCA3MCwgNDgsIDUyLCA1MCwgMTI4LCAKKyAgICA3MCwgNDgsIDUyLCA0OSwgMTI4LCA3MCwgNDgsIDUyLCA0OCwgMTI4LCA3MCwgNDgsIDUxLCA1NywgMTI4LCA3MCwgNDgsIAorICAgIDUxLCA1NiwgNjUsIDEyOCwgNzAsIDQ4LCA1MSwgNTYsIDEyOCwgNzAsIDQ4LCA1MSwgNTUsIDY1LCAxMjgsIDcwLCA0OCwgCisgICAgNTEsIDU1LCAxMjgsIDcwLCA0OCwgNTEsIDU0LCAxMjgsIDcwLCA0OCwgNTEsIDUzLCAxMjgsIDcwLCA0OCwgNTEsIDUyLCAKKyAgICAxMjgsIDcwLCA0OCwgNTEsIDUxLCAxMjgsIDcwLCA0OCwgNTEsIDUwLCAxMjgsIDcwLCA0OCwgNTEsIDQ5LCA2NSwgMTI4LCAKKyAgICA3MCwgNDgsIDUxLCA0OSwgMTI4LCA3MCwgNDgsIDUxLCA0OCwgMTI4LCA3MCwgNDgsIDUwLCA1NywgMTI4LCA3MCwgNDgsIAorICAgIDUwLCA1NiwgMTI4LCA3MCwgNDgsIDUwLCA1NSwgMTI4LCA3MCwgNDgsIDUwLCA1NCwgMTI4LCA3MCwgNDgsIDUwLCA1MywgCisgICAgMTI4LCA3MCwgNDgsIDUwLCA1MiwgMTI4LCA3MCwgNDgsIDUwLCA1MSwgMTI4LCA3MCwgNDgsIDUwLCA1MCwgMTI4LCA3MCwgCisgICAgNDgsIDUwLCA0OSwgNjUsIDEyOCwgNzAsIDQ4LCA1MCwgNDksIDEyOCwgNzAsIDQ4LCA1MCwgNDgsIDEyOCwgNzAsIDQ4LCAKKyAgICA0OSwgNTcsIDEyOCwgNzAsIDQ4LCA0OSwgNTYsIDEyOCwgNzAsIDQ4LCA0OSwgNTUsIDEyOCwgNzAsIDQ4LCA0OSwgNTQsIAorICAgIDEyOCwgNzAsIDQ4LCA0OSwgNTMsIDEyOCwgNzAsIDQ4LCA0OSwgNTIsIDEyOCwgNzAsIDQ4LCA0OSwgNTEsIDY1LCAxMjgsIAorICAgIDcwLCA0OCwgNDksIDUxLCAxMjgsIDcwLCA0OCwgNDksIDUwLCAxMjgsIDcwLCA0OCwgNDksIDQ5LCAxMjgsIDcwLCA0OCwgCisgICAgNDksIDQ4LCAxMjgsIDcwLCA0OCwgNDgsIDU3LCAxMjgsIDcwLCA0OCwgNDgsIDU2LCAxMjgsIDcwLCA0OCwgNDgsIDU1LCAKKyAgICAxMjgsIDcwLCA0OCwgNDgsIDU0LCAxMjgsIDcwLCA0OCwgNDgsIDUzLCAxMjgsIDcwLCA0OCwgNDgsIDUyLCAxMjgsIDcwLCAKKyAgICA0OCwgNDgsIDUxLCAxMjgsIDcwLCA0OCwgNDgsIDUwLCAxMjgsIDcwLCA0OCwgNDgsIDQ5LCA2NSwgMTI4LCA3MCwgNDgsIAorICAgIDQ4LCA0OSwgMTI4LCA2OSwgOTAsIDIwMCwgNjksIDkwLCA2OSwgNzgsIDEyOCwgNjksIDkwLCA2OSwgMjA2LCA2OSwgOTAsIAorICAgIDEyOCwgNjksIDg5LCA2OSwgODMsIDEyOCwgNjksIDg5LCA2OSwgNzEsIDc2LCA2NSwgODMsIDgzLCA2OSwgODMsIDEyOCwgCisgICAgNjksIDg5LCA2NiwgNjksIDg5LCA3MCwgNzMsIDc2LCA3MywgMTI4LCA2OSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY5LCAKKyAgICA4OCwgODQsIDgyLCA2NSwgODQsIDY5LCA4MiwgODIsIDY5LCA4MywgODQsIDgyLCA3MywgNjUsIDIwNCwgNjksIDg4LCA4NCwgCisgICAgODIsIDY1LCA0NSwgNzYsIDc5LCAyMTUsIDY5LCA4OCwgODQsIDgyLCA2NSwgNDUsIDcyLCA3MywgNzEsIDIwMCwgNjksIDg4LCAKKyAgICA4NCwgNjksIDc4LCA4MywgNzMsIDc5LCA3OCwgMTI4LCA2OSwgODgsIDg0LCA2OSwgNzgsIDY4LCA2OSwgMTk2LCA2OSwgODgsIAorICAgIDgwLCA4MiwgNjksIDgzLCA4MywgNzMsIDc5LCA3OCwgNzYsIDY5LCA4MywgMjExLCA2OSwgODgsIDgwLCA3OSwgNzgsIDY5LCAKKyAgICA3OCwgMjEyLCA2OSwgODgsIDc5LCAxMjgsIDY5LCA4OCwgMjA3LCA2OSwgODgsIDczLCA4MywgODQsIDgzLCAxMjgsIDY5LCAKKyAgICA4OCwgNzMsIDgzLCA4NCwgMTI4LCA2OSwgODgsIDcyLCA2NSwgODUsIDgzLCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2OSwgODgsIAorICAgIDY3LCA3NiwgNjUsIDc3LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjksIDg4LCA2NywgNzYsIDY1LCA3NywgNjUsIDg0LCAKKyAgICA3MywgNzksIDIwNiwgNjksIDg4LCA2NywgNzIsIDY1LCA3OCwgNzEsIDY5LCAxMjgsIDY5LCA4OCwgNjcsIDY5LCA4MywgODMsIAorICAgIDEyOCwgNjksIDg4LCA2NywgNjksIDc2LCA3NiwgNjksIDc4LCA4NCwgMTI4LCA2OSwgODcsIDY5LCAxMjgsIDY5LCA4NiwgCisgICAgNjksIDgyLCA3MSwgODIsIDY5LCA2OSwgMjA2LCA2OSwgODYsIDY5LCA3OCwgNzMsIDc4LCA3MSwgMTI4LCA2OSwgODUsIDgyLCAKKyAgICA3OSwgODAsIDY5LCA2NSwgMjA2LCA2OSwgODUsIDgyLCA3OSwgODAsIDY5LCA0NSwgNjUsIDcwLCA4MiwgNzMsIDY3LCA2NSwgCisgICAgMTI4LCA2OSwgODUsIDgyLCA3OSwgNDUsIDY3LCA4NSwgODIsIDgyLCA2OSwgNzgsIDY3LCAyMTcsIDY5LCA4NSwgODIsIAorICAgIDIwNywgNjksIDg1LCA3NiwgNjksIDIxMCwgNjksIDg1LCA0NSwgODUsIDEyOCwgNjksIDg1LCA0NSwgNzksIDEyOCwgNjksIAorICAgIDg1LCA0NSwgNjksIDg1LCAxMjgsIDY5LCA4NSwgNDUsIDY5LCA3OSwgMTI4LCA2OSwgODUsIDQ1LCA2OSwgMTI4LCA2OSwgCisgICAgODUsIDQ1LCA2NSwgMTI4LCA2OSwgODQsIDg4LCAxMjgsIDY5LCA4NCwgNzgsIDY1LCA3MiwgODQsIDY1LCAxMjgsIDY5LCAKKyAgICA4NCwgNzIsIDY5LCAyMDQsIDY5LCA4NCwgNjksIDgyLCA3OSwgMjA2LCA2OSwgODQsIDY5LCA4MiwgNzgsIDczLCA4NCwgODksIAorICAgIDEyOCwgNjksIDg0LCA2NiwgMTI4LCA2OSwgODMsIDg1LCA3NSwgODUsIDg1LCA2OCwgNzksIDEyOCwgNjksIDgzLCA4NCwgCisgICAgNzMsIDc3LCA2NSwgODQsIDY5LCA4MywgMTI4LCA2OSwgODMsIDg0LCA3MywgNzcsIDY1LCA4NCwgNjksIDE5NiwgNjksIDgzLCAKKyAgICA3MiwgNjksIDUxLCAxMjgsIDY5LCA4MywgNzIsIDUwLCA0OSwgMTI4LCA2OSwgODMsIDcyLCAxNzgsIDY5LCA4MywgNzIsIAorICAgIDQ5LCA1NCwgMTI4LCA2OSwgODMsIDY3LCA2NSwgODAsIDY5LCAxMjgsIDY5LCA4MywgNjcsIDEyOCwgNjksIDgzLCA2NSwgCisgICAgMTI4LCA2OSwgODMsIDQ1LCA4NCwgNjksIDEyOCwgNjksIDgyLCA4MiwgNzksIDgyLCA0NSwgNjYsIDY1LCA4MiwgODIsIDY5LCAKKyAgICAxOTYsIDY5LCA4MiwgODIsIDEyOCwgNjksIDgyLCA3MywgNzgsIDUwLCAxMjgsIDY5LCA4MiwgNzEsIDEyOCwgNjksIDgyLCAKKyAgICA2NSwgODMsIDE5NywgNjksIDgxLCA4NSwgNzMsIDg2LCA2NSwgNzYsIDY5LCA3OCwgMjEyLCA2OSwgODEsIDg1LCA3MywgNjgsIAorICAgIDEyOCwgNjksIDgxLCA4NSwgNzMsIDY1LCA3OCwgNzEsIDg1LCA3NiwgNjUsIDIxMCwgNjksIDgxLCA4NSwgNjUsIDc2LCA4MywgCisgICAgMTI4LCA2OSwgODEsIDg1LCA2NSwgNzYsIDIxMSwgNjksIDgxLCA4NSwgNjUsIDc2LCAxMjgsIDY5LCA4MCwgODMsIDczLCAKKyAgICA3NiwgNzksIDc4LCAxMjgsIDY5LCA4MCwgODMsIDczLCA3NiwgNzksIDIwNiwgNjksIDgwLCA3OSwgNjcsIDcyLCAxMjgsIAorICAgIDY5LCA4MCwgNzMsIDcxLCA4MiwgNjUsIDgwLCA3MiwgNzMsIDE5NSwgNjksIDgwLCA3MywgNjgsIDY1LCA4NSwgODIsIDY5LCAKKyAgICA2NSwgMjA2LCA2OSwgODAsIDY5LCA3OCwgODQsIDcyLCA2OSwgODQsIDczLCAxOTUsIDY5LCA4MCwgNjksIDcxLCA2OSwgODIsIAorICAgIDc3LCA2NSwgMTI4LCA2OSwgNzksIDg0LCAxMjgsIDY5LCA3OSwgNzcsIDEyOCwgNjksIDc5LCA3NiwgNzIsIDg4LCAxMjgsIAorICAgIDY5LCA3OSwgNzYsIDEyOCwgNjksIDc5LCA3MiwgMTI4LCA2OSwgNzgsIDg5LCAxMjgsIDY5LCA3OCwgODYsIDY5LCA3NiwgCiAgICAgNzksIDgwLCA2OSwgMTI4LCA2OSwgNzgsIDg2LCA2OSwgNzYsIDc5LCA4MCwgMTk3LCA2OSwgNzgsIDg1LCA3NywgNjksIDgyLCAKICAgICA2NSwgODQsIDczLCA3OSwgMjA2LCA2OSwgNzgsIDg0LCA4MiwgODksIDQ1LCA1MCwgMTI4LCA2OSwgNzgsIDg0LCA4MiwgODksIAogICAgIDQ1LCA0OSwgMTI4LCA2OSwgNzgsIDg0LCA4MiwgODksIDEyOCwgNjksIDc4LCA4NCwgODIsIDIxNywgNjksIDc4LCA4NCwgCiAgICAgNzIsIDg1LCA4MywgNzMsIDY1LCA4MywgNzcsIDEyOCwgNjksIDc4LCA4NCwgNjksIDgyLCA4MCwgODIsIDczLCA4MywgNjksIAogICAgIDEyOCwgNjksIDc4LCA4NCwgNjksIDgyLCA3MywgNzgsIDE5OSwgNjksIDc4LCA4NCwgNjksIDgyLCAxMjgsIDY5LCA3OCwgCi0gICAgODQsIDY5LCAyMTAsIDY5LCA3OCwgODEsIDg1LCA3MywgODIsIDg5LCAxMjgsIDY5LCA3OCwgNzksIDIxMSwgNjksIDc4LCAKLSAgICA3OCwgMTI4LCA2OSwgNzgsIDc2LCA2NSwgODIsIDcxLCA2OSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNjksIDc4LCA3MSwgNzMsIAotICAgIDc4LCA2OSwgMTI4LCA2OSwgNzgsIDY4LCA3OSwgNzAsIDc5LCA3OCwgNzksIDc4LCAxMjgsIDY5LCA3OCwgNjgsIDczLCA3OCwgCi0gICAgMTk5LCA2OSwgNzgsIDY4LCA2OSwgODAsIDEyOCwgNjksIDc4LCA2OCwgNjksIDY1LCA4NiwgNzksIDg1LCA4MiwgMTI4LCAKLSAgICA2OSwgNzgsIDY3LCA3OSwgODUsIDc4LCA4NCwgNjksIDgyLCA4MywgMTI4LCA2OSwgNzgsIDY3LCA3NiwgNzksIDgzLCA4NSwgCi0gICAgODIsIDY5LCAxMjgsIDY5LCA3OCwgNjcsIDc2LCA3OSwgODMsIDczLCA3OCwgMTk5LCA2OSwgNzgsIDY3LCAxMjgsIDY5LCAKLSAgICA3OCwgNjUsIDgyLCA4OCwgNzMsIDIxMSwgNjksIDc4LCA2NSwgODIsIDc3LCA3OSwgNzgsIDczLCA3OSwgMjExLCA2OSwgNzcsIAotICAgIDgwLCA4NCwgMjE3LCA2OSwgNzcsIDgwLCA3MiwgNjUsIDg0LCA3MywgMTk1LCA2OSwgNzcsIDgwLCA3MiwgNjUsIDgzLCA3MywgCi0gICAgMjExLCA2OSwgNzcsIDY2LCA4MiwgNzksIDczLCA2OCwgNjksIDgyLCA4OSwgMTI4LCA2OSwgNzcsIDY2LCA3NiwgNjksIDc3LCAKLSAgICAxMjgsIDY5LCA3NywgNjYsIDY5LCA3NiwgNzYsIDczLCA4MywgNzIsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDY5LCA3NywgNjYsIAotICAgIDY5LCA2OCwgNjgsIDczLCA3OCwgNzEsIDEyOCwgNjksIDc2LCA4NCwgMTI4LCA2OSwgNzYsIDc2LCA3MywgODAsIDgzLCA3MywgCi0gICAgODMsIDEyOCwgNjksIDc2LCA3NiwgNzMsIDgwLCA4MywgNjksIDEyOCwgNjksIDc2LCA3MywgNzAsIDczLCAxMjgsIDY5LCAKLSAgICA3NiwgNjksIDg2LCA2OSwgNzgsIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDY5LCA3NiwgNjksIDg2LCA2OSwgCi0gICAgNzgsIDEyOCwgNjksIDc2LCA2OSwgODYsIDY5LCAyMDYsIDY5LCA3NiwgNjksIDgwLCA3MiwgNjUsIDc4LCA4NCwgMTI4LCAKLSAgICA2OSwgNzYsIDY5LCA3NywgNjksIDc4LCAyMTIsIDY5LCA3NiwgNjksIDY3LCA4NCwgODIsIDczLCA2NywgNjUsIDIwNCwgNjksIAotICAgIDc2LCA2OSwgNjcsIDg0LCA4MiwgNzMsIDE5NSwgNjksIDc2LCA2NSwgNzAsIDgyLCA3OSwgNzgsIDEyOCwgNjksIDc1LCA4MywgCi0gICAgODQsIDgyLCA2OSwgODAsIDg0LCA3OSwgNzgsIDEyOCwgNjksIDc1LCA4MywgMTI4LCA2OSwgNzUsIDcwLCA3OSwgNzgsIDczLCAKLSAgICA4NCwgNzMsIDc1LCA3OSwgNzgsIDEyOCwgNjksIDc1LCA2NSwgODIsIDY1LCAxMjgsIDY5LCA3NCwgNjksIDY3LCAyMTIsIAotICAgIDY5LCA3MywgODMsIDEyOCwgNjksIDczLCA3MSwgNzIsIDg0LCA4OSwgMTI4LCA2OSwgNzMsIDcxLCA3MiwgODQsIDIxNywgCi0gICAgNjksIDczLCA3MSwgNzIsIDg0LCA3MiwgODMsIDEyOCwgNjksIDczLCA3MSwgNzIsIDg0LCA3MiwgMjExLCA2OSwgNzMsIDcxLCAKLSAgICA3MiwgODQsIDcyLCAxMjgsIDY5LCA3MywgNzEsIDcyLCA4NCwgNjksIDY5LCA3OCwgMTI4LCA2OSwgNzMsIDcxLCA3MiwgODQsIAotICAgIDY5LCA2OSwgMjA2LCA2OSwgNzMsIDcxLCA3MiwgODQsIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDY5LCA3MywgCi0gICAgNjksIDEyOCwgNjksIDcyLCA4NywgNjUsIDIxOCwgNjksIDcxLCA4OSwgODAsIDg0LCA3OSwgNzYsIDc5LCA3MSwgNzMsIDY3LCAKLSAgICA2NSwgMjA0LCA2OSwgNzEsIDczLCA4MiwgMTI4LCA2OSwgNzEsIDcxLCAxMjgsIDY5LCA2OSwgODksIDY1LCA3OCwgNzgsIAotICAgIDY1LCAxMjgsIDY5LCA2OSwgNzUsIDY1LCA2NSwgMTI4LCA2OSwgNjksIDY2LCA2OSwgNjksIDcwLCA3MywgNzYsIDczLCAKLSAgICAxMjgsIDY5LCA2OCwgNzMsIDg0LCA3OSwgODIsIDczLCA2NSwgMjA0LCA2OSwgNjgsIDczLCA3OCwgMTI4LCA2OSwgNjgsIAotICAgIDY4LCAxMjgsIDY5LCA2NiwgNjksIDcwLCA3MywgNzYsIDczLCAxMjgsIDY5LCA2NSwgODMsIDg0LCA2OSwgODIsIDIwNiwgCi0gICAgNjksIDY1LCA4MywgMjEyLCA2OSwgNjUsIDgyLCA4NCwgNzIsIDc2LCAyMTcsIDY5LCA2NSwgODIsIDg0LCA3MiwgMTI4LCAKLSAgICA2OSwgNjUsIDgyLCA4NCwgMjAwLCA2OSwgNjUsIDgyLCA4MywgMTI4LCA2OSwgNjUsIDgyLCA3NiwgMjE3LCA2OSwgNjUsIAotICAgIDc3LCA3MiwgNjUsIDc4LCA2NywgNzIsIDc5LCA3NiwgNzYsIDEyOCwgNjksIDY1LCA3MSwgNzYsIDY5LCAxMjgsIDY5LCA2NSwgCi0gICAgNjgsIDcyLCA2NSwgNjgsIDcyLCAxMjgsIDY5LCA2NSwgNjYsIDcyLCA2NSwgNjgsIDcyLCAxMjgsIDY5LCAxNzgsIDY5LCAKLSAgICA0OCwgNTEsIDU2LCAxMjgsIDY5LCA0OCwgNTEsIDU1LCAxMjgsIDY5LCA0OCwgNTEsIDU0LCAxMjgsIDY5LCA0OCwgNTEsIAotICAgIDUyLCA2NSwgMTI4LCA2OSwgNDgsIDUxLCA1MiwgMTI4LCA2OSwgNDgsIDUxLCA1MSwgMTI4LCA2OSwgNDgsIDUxLCA1MCwgCi0gICAgMTI4LCA2OSwgNDgsIDUxLCA0OSwgMTI4LCA2OSwgNDgsIDUxLCA0OCwgMTI4LCA2OSwgNDgsIDUwLCA1NywgMTI4LCA2OSwgCi0gICAgNDgsIDUwLCA1NiwgNjUsIDEyOCwgNjksIDQ4LCA1MCwgNTYsIDEyOCwgNjksIDQ4LCA1MCwgNTUsIDEyOCwgNjksIDQ4LCAKLSAgICA1MCwgNTQsIDEyOCwgNjksIDQ4LCA1MCwgNTMsIDEyOCwgNjksIDQ4LCA1MCwgNTIsIDEyOCwgNjksIDQ4LCA1MCwgNTEsIAotICAgIDEyOCwgNjksIDQ4LCA1MCwgNTAsIDEyOCwgNjksIDQ4LCA1MCwgNDksIDEyOCwgNjksIDQ4LCA1MCwgNDgsIDY1LCAxMjgsIAotICAgIDY5LCA0OCwgNTAsIDQ4LCAxMjgsIDY5LCA0OCwgNDksIDU3LCAxMjgsIDY5LCA0OCwgNDksIDU2LCAxMjgsIDY5LCA0OCwgCi0gICAgNDksIDU1LCA2NSwgMTI4LCA2OSwgNDgsIDQ5LCA1NSwgMTI4LCA2OSwgNDgsIDQ5LCA1NCwgNjUsIDEyOCwgNjksIDQ4LCAKLSAgICA0OSwgNTQsIDEyOCwgNjksIDQ4LCA0OSwgNTMsIDEyOCwgNjksIDQ4LCA0OSwgNTIsIDEyOCwgNjksIDQ4LCA0OSwgNTEsIAotICAgIDEyOCwgNjksIDQ4LCA0OSwgNTAsIDEyOCwgNjksIDQ4LCA0OSwgNDksIDEyOCwgNjksIDQ4LCA0OSwgNDgsIDEyOCwgNjksIAotICAgIDQ4LCA0OCwgNTcsIDY1LCAxMjgsIDY5LCA0OCwgNDgsIDU3LCAxMjgsIDY5LCA0OCwgNDgsIDU2LCA2NSwgMTI4LCA2OSwgCi0gICAgNDgsIDQ4LCA1NiwgMTI4LCA2OSwgNDgsIDQ4LCA1NSwgMTI4LCA2OSwgNDgsIDQ4LCA1NCwgMTI4LCA2OSwgNDgsIDQ4LCAKLSAgICA1MywgMTI4LCA2OSwgNDgsIDQ4LCA1MiwgMTI4LCA2OSwgNDgsIDQ4LCA1MSwgMTI4LCA2OSwgNDgsIDQ4LCA1MCwgMTI4LCAKLSAgICA2OSwgNDgsIDQ4LCA0OSwgMTI4LCA2OSwgNDUsIDc3LCA2NSwgNzMsIDIwNCwgNjgsIDkwLCA5MCwgNjksIDEyOCwgNjgsIAotICAgIDkwLCA4NywgNjksIDEyOCwgNjgsIDkwLCA4NSwgMTI4LCA2OCwgOTAsIDc5LCAxMjgsIDY4LCA5MCwgNzQsIDY5LCAxMjgsIAotICAgIDY4LCA5MCwgNzMsIDEyOCwgNjgsIDkwLCA3MiwgNjksIDEyOCwgNjgsIDkwLCA3MiwgNjUsIDEyOCwgNjgsIDkwLCA2OSwgCi0gICAgNzYsIDc5LCAxMjgsIDY4LCA5MCwgNjksIDY5LCAxMjgsIDY4LCA5MCwgNjksIDEyOCwgNjgsIDkwLCA2NSwgNjUsIDEyOCwgCi0gICAgNjgsIDkwLCA2NSwgMTI4LCA2OCwgOTAsIDEyOCwgNjgsIDIxOCwgNjgsIDg5LCA3OSwgMTI4LCA2OCwgODksIDIwNywgNjgsIAotICAgIDg5LCA2OSwgNzIsIDEyOCwgNjgsIDg5LCA2OSwgMjAwLCA2OCwgODcsIDc5LCAxMjgsIDY4LCA4NywgNjksIDEyOCwgNjgsIAotICAgIDg3LCA2NSwgMTI4LCA2OCwgODYsIDczLCA4MywgODYsIDY1LCA4MiwgNjUsIDEyOCwgNjgsIDg2LCA2OCwgMTI4LCA2OCwgCi0gICAgODYsIDEyOCwgNjgsIDg1LCA4NCwgNzMsIDY5LCA4MywgMTI4LCA2OCwgODUsIDgzLCA3NSwgMTI4LCA2OCwgODUsIDgzLCAKLSAgICA3MiwgNjksIDc4LCA3OCwgNjUsIDEyOCwgNjgsIDg1LCA4MiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY4LCA4NSwgODIsIAotICAgIDUwLCAxMjgsIDY4LCA4NSwgODAsIDc5LCA3OCwgNjgsIDczLCA4NSwgMjExLCA2OCwgODUsIDc5LCA4OCwgMTI4LCA2OCwgCi0gICAgODUsIDc5LCAxMjgsIDY4LCA4NSwgNzgsIDUyLCAxMjgsIDY4LCA4NSwgNzgsIDUxLCAxMjgsIDY4LCA4NSwgNzgsIDE3OSwgCi0gICAgNjgsIDg1LCA3NywgMTI4LCA2OCwgODUsIDIwNCwgNjgsIDg1LCA3MiwgMTI4LCA2OCwgODUsIDcxLCA4NSwgNjgsIDEyOCwgCi0gICAgNjgsIDg1LCA2NiwgNTAsIDEyOCwgNjgsIDg1LCA2NiwgMTI4LCA2OCwgODUsIDE5NCwgNjgsIDgyLCA4OSwgMTI4LCA2OCwgCi0gICAgODIsIDIxNywgNjgsIDgyLCA4NSwgNzcsIDEyOCwgNjgsIDgyLCA4NSwgMjA1LCA2OCwgODIsIDc5LCA4MCwgODMsIDEyOCwgCi0gICAgNjgsIDgyLCA3OSwgODAsIDc2LCA2OSwgODQsIDEyOCwgNjgsIDgyLCA3OSwgODAsIDQ1LCA4MywgNzIsIDY1LCA2OCwgNzksIAotICAgIDg3LCA2OSwgMTk2LCA2OCwgODIsIDc5LCA3NywgNjksIDY4LCA2NSwgODIsIDIxNywgNjgsIDgyLCA3MywgODYsIDY5LCAKLSAgICAxMjgsIDY4LCA4MiwgNzMsIDg2LCAxOTcsIDY4LCA4MiwgNzMsIDc4LCA3NSwgMTI4LCA2OCwgODIsIDczLCAyMDQsIDY4LCAKLSAgICA4MiwgNjksIDgzLCA4MywgMTI4LCA2OCwgODIsIDY1LCA4NSwgNzEsIDcyLCA4NCwgMjExLCA2OCwgODIsIDY1LCA3NywgCi0gICAgMTI4LCA2OCwgODIsIDY1LCA3MSwgNzksIDc4LCAxMjgsIDY4LCA4MiwgNjUsIDcxLCA3OSwgMjA2LCA2OCwgODIsIDY1LCAKLSAgICA3MCwgODQsIDczLCA3OCwgMTk5LCA2OCwgODIsIDY1LCA2NywgNzIsIDc3LCA2NSwgODMsIDEyOCwgNjgsIDgyLCA2NSwgNjcsIAotICAgIDcyLCA3NywgNjUsIDEyOCwgNjgsIDgyLCA2NSwgNjcsIDcyLCA3NywgMTkzLCA2OCwgNzksIDg3LCA3OCwgODcsIDY1LCA4MiwgCi0gICAgNjgsIDgzLCAxMjgsIDY4LCA3OSwgODcsIDc4LCA4NywgNjUsIDgyLCA2OCwgMjExLCA2OCwgNzksIDg3LCA3OCwgNDUsIDgwLCAKLSAgICA3OSwgNzMsIDc4LCA4NCwgNzMsIDc4LCAxOTksIDY4LCA3OSwgODcsIDc4LCAxMjgsIDY4LCA3OSwgODYsIDY5LCAxMjgsIAotICAgIDY4LCA3OSwgODUsIDcxLCA3MiwgNzgsIDg1LCA4NCwgMTI4LCA2OCwgNzksIDg1LCA2NiwgODQsIDEyOCwgNjgsIDc5LCA4NSwgCi0gICAgNjYsIDc2LCA2OSwgMTk2LCA2OCwgNzksIDg1LCA2NiwgNzYsIDY5LCA0NSwgNzYsIDczLCA3OCwgMTk3LCA2OCwgNzksIDg1LCAKLSAgICA2NiwgNzYsIDY5LCA0NSwgNjksIDc4LCA2OCwgNjksIDE5NiwgNjgsIDc5LCA4NSwgNjYsIDc2LCA2OSwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4NCwgNjksIDY4LCA0NSwgODAsIDEyOCwgNjgsIDc5LCA4NCwgODQsIDY5LCA2OCwgNDUsIDc4LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDg0LCA2OSwgNjgsIDQ1LCA3NiwgMTI4LCA2OCwgNzksIDg0LCA4NCwgNjksIDY4LCAxMjgsIDY4LCA3OSwgODQsIDg0LCAKLSAgICA2OSwgMTk2LCA2OCwgNzksIDg0LCA4MywgNDUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTUsIDU2LCAxMjgsIAotICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MywgNTUsIAotICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU0LCA1NiwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU0LCAKLSAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCAxMjgsIAotICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDU1LCA1NiwgMTI4LCA2OCwgCi0gICAgNzksIDg0LCA4MywgNDUsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCAKLSAgICA4NCwgODMsIDQ1LCA1MiwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1NCwgNTUsIDEyOCwgNjgsIAotICAgIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNTIsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU1LCAxMjgsIDY4LCAKLSAgICA3OSwgODQsIDgzLCA0NSwgNTIsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU0LCA1NSwgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCAKLSAgICA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1NSwgNTYsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTQsIDU2LCAKLSAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTQsIAotICAgIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCA1NiwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCAKLSAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIAotICAgIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA1MSwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNTEsIDUyLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNTEsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNTEsIDUyLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1NCwgNTUsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1MywgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA1MSwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4MywgNDUsIDUxLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCAKLSAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAotICAgIDUxLCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1NSwgNTYsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTQsIDU2LCAKLSAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTQsIAotICAgIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCA1NiwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCAKLSAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIAotICAgIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA1MCwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNTAsIDUyLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNTAsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNTAsIDUyLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1NCwgNTUsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1MywgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA1MCwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4MywgNDUsIDUwLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCAKLSAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAotICAgIDUwLCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgCi0gICAgNTEsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA1MCwgNTEsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAotICAgIDQ1LCA1MCwgNTEsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDU0LCA1NSwgMTI4LCA2OCwgCi0gICAgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUzLCA1NiwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgCi0gICAgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNTAsIDUxLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU0LCA1NSwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCAKLSAgICA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIAotICAgIDUxLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA1MCwgNTEsIDUyLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1NCwgNTUsIAotICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCi0gICAgNTAsIDUxLCA1MiwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1MywgNTYsIDEyOCwgNjgsIDc5LCAKLSAgICA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgCi0gICAgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCAKLSAgICA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgCi0gICAgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCAKLSAgICA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4MywgNDUsIDUwLCA1MSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCi0gICAgNDksIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCAKLSAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTQsIAotICAgIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUzLCAKLSAgICA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAotICAgIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MywgNTQsIDEyOCwgNjgsIDc5LCAKLSAgICA4NCwgODMsIDQ1LCA0OSwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNDksIDUyLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU1LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNDksIDUyLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU0LCA1NSwgNTYsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgCi0gICAgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCAKLSAgICA1MiwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNDksIDUyLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1MywgNTQsIDU1LCAKLSAgICA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAotICAgIDQ5LCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgCi0gICAgNDUsIDQ5LCA1MiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA0OSwgNTEsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAotICAgIDQ1LCA0OSwgNTEsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgCi0gICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1NCwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgCi0gICAgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA0OSwgNTEsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIAotICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCAKLSAgICA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAotICAgIDUxLCA1MiwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDU0LCA1NiwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTEsIDUyLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NCwgMTI4LCA2OCwgNzksIDg0LCAKLSAgICA4MywgNDUsIDQ5LCA1MSwgNTIsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDUzLCA1NSwgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA0OSwgNTEsIDUyLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTMsIDU0LCA1NSwgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNDksIDUxLCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTMsIDEyOCwgNjgsIAotICAgIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNDksIDUwLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTUsIDU2LCAxMjgsIDY4LCAKLSAgICA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTQsIDU2LCAxMjgsIAotICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCAKLSAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAotICAgIDUwLCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTMsIDU0LCA1NiwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTAsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCAKLSAgICA4MywgNDUsIDQ5LCA1MCwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1NiwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU1LCAKLSAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAotICAgIDUwLCA1MiwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU0LCA1NSwgMTI4LCA2OCwgCi0gICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTMsIAotICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCi0gICAgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NCwgNTYsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCi0gICAgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgNTQsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgCi0gICAgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCAKLSAgICA1MCwgNTEsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDU1LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNDksIDUwLCA1MSwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTQsIDU1LCAKLSAgICA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAotICAgIDQ5LCA1MCwgNTEsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIAotICAgIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIAotICAgIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1NiwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTAsIDUxLCA1MiwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCAKLSAgICA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTAsIDUxLCA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDU0LCAxMjgsIDY4LCAKLSAgICA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgCi0gICAgNTEsIDUyLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NSwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCi0gICAgNDksIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIAotICAgIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCAKLSAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDEyOCwgNjgsIDc5LCA4NCwgODMsIDEyOCwgNjgsIDc5LCA4NCwgNzYsIAotICAgIDY5LCA4MywgMjExLCA2OCwgNzksIDgyLCA4NSwgMTI4LCA2OCwgNzksIDc5LCA4MiwgMTI4LCA2OCwgNzksIDc5LCA3OCwgCi0gICAgNzEsIDEyOCwgNjgsIDc5LCA3OCwgNzEsIDEyOCwgNjgsIDc5LCA3NywgNjUsIDczLCAyMDYsIDY4LCA3OSwgNzYsIDgwLCAKLSAgICA3MiwgNzMsIDc4LCAxMjgsIDY4LCA3OSwgNzYsIDc2LCA4MywgMTI4LCA2OCwgNzksIDc2LCA3NiwgNjUsIDIxMCwgNjgsIAotICAgIDc5LCA3NiwgNzMsIDg1LCA3NywgMTI4LCA2OCwgNzksIDc1LCA3NywgNjUsIDczLCAxMjgsIDY4LCA3OSwgNzMsIDg0LCAKLSAgICAxMjgsIDY4LCA3OSwgNzEsIDEyOCwgNjgsIDc5LCAxOTksIDY4LCA3OSwgNjksIDIxMSwgNjgsIDc5LCA2OCwgNjksIDc1LCAKLSAgICA2NSwgODQsIDY1LCAxMjgsIDY4LCA3OSwgNjYsIDgyLCA3OSwgMTI4LCA2OCwgNzksIDY1LCA2NywgNzIsIDY1LCA4MywgNzIsIAotICAgIDc3LCA2OSwgNjksIDEyOCwgNjgsIDc5LCA2NSwgNjcsIDcyLCA2NSwgODMsIDcyLCA3NywgNjksIDE5NywgNjgsIDc5LCA2NSwgCi0gICAgMTI4LCA2OCwgNzksIDQ1LCA3OSwgMTI4LCA2OCwgNzcsIDEyOCwgNjgsIDIwNSwgNjgsIDc2LCA4NSwgMTI4LCA2OCwgNzYsIAotICAgIDc5LCAxMjgsIDY4LCA3NiwgNzMsIDEyOCwgNjgsIDc2LCA2OSwgNjksIDEyOCwgNjgsIDc2LCA2NSwgMTI4LCA2OCwgNzYsIAotICAgIDEyOCwgNjgsIDc1LCA2NSwgODIsIDEyOCwgNjgsIDc1LCA2NSwgMjEwLCA2OCwgNzQsIDY5LCA4MiwgODYsIDczLCAxMjgsIAotICAgIDY4LCA3NCwgNjksIDgyLCA4NiwgMTI4LCA2OCwgNzQsIDY5LCAxMjgsIDY4LCA3NCwgNjUsIDEyOCwgNjgsIDc0LCAxMjgsIAotICAgIDY4LCA3MywgOTAsIDkwLCAyMTcsIDY4LCA3MywgODYsIDc5LCA4MiwgNjcsIDE5NywgNjgsIDczLCA4NiwgNzMsIDgzLCA3MywgCi0gICAgNzksIDc4LCAxMjgsIDY4LCA3MywgODYsIDczLCA4MywgNzMsIDc5LCAyMDYsIDY4LCA3MywgODYsIDczLCA3OCwgNjUsIDg0LCAKLSAgICA3MywgNzksIDc4LCAxMjgsIDY4LCA3MywgODYsIDczLCA2OCwgNjksIDgzLCAxMjgsIDY4LCA3MywgODYsIDczLCA2OCwgNjksIAotICAgIDgyLCAxMjgsIDY4LCA3MywgODYsIDczLCA2OCwgNjksIDE5NiwgNjgsIDczLCA4NiwgNzMsIDY4LCA2OSwgMTI4LCA2OCwgCi0gICAgNzMsIDg2LCA3MywgNjgsIDE5NywgNjgsIDczLCA4NiwgNjksIDgyLCA3MSwgNjksIDc4LCA2NywgNjksIDEyOCwgNjgsIDczLCAKLSAgICA4NCwgODQsIDIwNywgNjgsIDczLCA4MywgODQsIDc5LCA4MiwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjgsIDczLCA4MywgODQsIAotICAgIDczLCA3OCwgNzEsIDg1LCA3MywgODMsIDcyLCAxMjgsIDY4LCA3MywgODMsIDg0LCA3MywgNzYsIDc2LCAxMjgsIDY4LCA3MywgCi0gICAgODMsIDgzLCA3OSwgNzYsIDg2LCA2OSwgNDUsIDUwLCAxMjgsIDY4LCA3MywgODMsIDgzLCA3OSwgNzYsIDg2LCA2OSwgMTI4LCAKLSAgICA2OCwgNzMsIDgzLCA4MCwgNjksIDgyLCA4MywgNzMsIDc5LCA3OCwgMTI4LCA2OCwgNzMsIDgzLCA3NSwgMTI4LCA2OCwgNzMsIAotICAgIDgzLCA3MywgNzcsIDc5LCA4NSwgMTI4LCA2OCwgNzMsIDgzLCA3MiwgMTI4LCA2OCwgNzMsIDgzLCA2NywgNzksIDc4LCA4NCwgCi0gICAgNzMsIDc4LCA4NSwgNzksIDg1LCAyMTEsIDY4LCA3MywgODMsIDE5NSwgNjgsIDczLCA4MywgNjUsIDgwLCA4MCwgNzksIDczLCAKLSAgICA3OCwgODQsIDY5LCAxOTYsIDY4LCA3MywgODMsIDY1LCA2NiwgNzYsIDY5LCAxOTYsIDY4LCA3MywgODIsIDcxLCAxOTMsIAotICAgIDY4LCA3MywgODIsIDY5LCA2NywgODQsIDc2LCAyMTcsIDY4LCA3MywgODIsIDY5LCA2NywgODQsIDczLCA3OSwgNzgsIDY1LCAKLSAgICAyMDQsIDY4LCA3MywgODAsIDg0LCA2OSwgMTI4LCA2OCwgNzMsIDgwLCA4MCwgNjksIDgyLCAxMjgsIDY4LCA3MywgODAsIAotICAgIDc2LCA3OSwgODUsIDc4LCAxMjgsIDY4LCA3MywgODAsIDc2LCA3MywgMTI4LCA2OCwgNzMsIDgwLCA3NiwgMjAxLCA2OCwgCi0gICAgNzMsIDc4LCA3MSwgNjYsIDY1LCAyMTIsIDY4LCA3MywgMjA2LCA2OCwgNzMsIDc3LCA3NywgNzMsIDc4LCA3MSwgMTI4LCAKLSAgICA2OCwgNzMsIDc3LCA3MywgNzgsIDg1LCA4NCwgNzMsIDc5LCA3OCwgNDUsIDUxLCAxMjgsIDY4LCA3MywgNzcsIDczLCA3OCwgCi0gICAgODUsIDg0LCA3MywgNzksIDc4LCA0NSwgNTAsIDEyOCwgNjgsIDczLCA3NywgNzMsIDc4LCA4NSwgODQsIDczLCA3OSwgNzgsIAotICAgIDQ1LCA0OSwgMTI4LCA2OCwgNzMsIDc3LCA3MywgNzgsIDczLCA4MywgNzIsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDY4LCA3MywgCi0gICAgNzcsIDczLCA2OCwgNzMsIDE5MywgNjgsIDczLCA3NywgNjksIDc4LCA4MywgNzMsIDc5LCA3OCwgNjUsIDIwNCwgNjgsIDczLCAKLSAgICA3NywgNjksIDc4LCA4MywgNzMsIDc5LCAyMDYsIDY4LCA3MywgNzcsIDUwLCAxMjgsIDY4LCA3MywgNzYsIDEyOCwgNjgsIAotICAgIDczLCA3MSwgODIsIDY1LCA4MCwgNzIsIDEyOCwgNjgsIDczLCA3MSwgODIsIDY1LCA4MCwgMjAwLCA2OCwgNzMsIDcxLCA4MiwgCi0gICAgNjUsIDc3LCA3NywgNzksIDIxMSwgNjgsIDczLCA3MSwgODIsIDY1LCA3NywgNzcsIDE5MywgNjgsIDczLCA3MSwgODIsIDY1LCAKLSAgICAyMDUsIDY4LCA3MywgNzEsIDc5LCA4MiwgNzEsIDc5LCA3OCwgMTI4LCA2OCwgNzMsIDcxLCA3OSwgODIsIDcxLCA3OSwgCi0gICAgMjA2LCA2OCwgNzMsIDcxLCA2NSwgNzcsIDc3LCA2NSwgMTI4LCA2OCwgNzMsIDcxLCAxOTMsIDY4LCA3MywgNzAsIDg0LCAKLSAgICA3OSwgNzEsIDcxLCA3OSwgMjExLCA2OCwgNzMsIDcwLCA3OSwgNzgsIDczLCA2NSwgODMsIDEyOCwgNjgsIDczLCA3MCwgNzAsIAotICAgIDczLCA2NywgODUsIDc2LCA4NCwgMjE3LCA2OCwgNzMsIDcwLCA3MCwgNzMsIDY3LCA4NSwgNzYsIDg0LCA3MywgNjksIDgzLCAKLSAgICAxMjgsIDY4LCA3MywgNzAsIDcwLCA2OSwgODIsIDY5LCA3OCwgODQsIDczLCA2NSwgNzYsIDEyOCwgNjgsIDczLCA3MCwgNzAsIAotICAgIDY5LCA4MiwgNjksIDc4LCA2NywgMTk3LCA2OCwgNzMsIDcwLCA2NSwgODQsIDEyOCwgNjgsIDczLCA2OSwgODMsIDczLCA4MywgCi0gICAgMTI4LCA2OCwgNzMsIDY5LCA4MywgNzMsIDIxMSwgNjgsIDczLCA2OSwgODAsIDEyOCwgNjgsIDczLCAxOTcsIDY4LCA3MywgCi0gICAgNjYsIDEyOCwgNjgsIDczLCA2NSwgODQsIDc5LCA3OCwgNzksIDIwNiwgNjgsIDczLCA2NSwgODQsIDc5LCA3OCwgNzMsIDc1LCAKLSAgICAyMDEsIDY4LCA3MywgNjUsIDgzLCA4NCwgNzksIDc2LCAyMDEsIDY4LCA3MywgNjUsIDc3LCA3OSwgNzgsIDY4LCA4MywgCi0gICAgMTI4LCA2OCwgNzMsIDY1LCA3NywgNzksIDc4LCA2OCwgMTI4LCA2OCwgNzMsIDY1LCA3NywgNzksIDc4LCAxOTYsIDY4LCAKLSAgICA3MywgNjUsIDc3LCA2OSwgODQsIDY5LCAyMTAsIDY4LCA3MywgNjUsIDc2LCA4OSwgODQsIDczLCA3NSwgNjUsIDEyOCwgNjgsIAotICAgIDczLCA2NSwgNzYsIDg5LCA4NCwgNzMsIDc1LCAxOTMsIDY4LCA3MywgNjUsIDc2LCA2OSwgNjcsIDg0LCA0NSwgMjA4LCA2OCwgCi0gICAgNzMsIDY1LCA3MSwgNzksIDc4LCA2NSwgNzYsIDEyOCwgNjgsIDczLCA2NSwgNzEsIDc5LCA3OCwgNjUsIDIwNCwgNjgsIDczLCAKLSAgICA2NSwgNjksIDgyLCA2OSwgODMsIDczLCA5MCwgNjksIDE5NiwgNjgsIDczLCA2NSwgNjksIDgyLCA2OSwgODMsIDczLCA4MywgCi0gICAgMTI4LCA2OCwgNzMsIDY1LCA2OSwgODIsIDY5LCA4MywgNzMsIDIxMSwgNjgsIDcyLCA3OSwgODUsIDEyOCwgNjgsIDcyLCAKLSAgICA3OSwgNzksIDEyOCwgNjgsIDcyLCA3OSwgMTI4LCA2OCwgNzIsIDczLCAxMjgsIDY4LCA3MiwgNzIsIDg1LCAxMjgsIDY4LCAKLSAgICA3MiwgNzIsIDc5LCA3OSwgMTI4LCA2OCwgNzIsIDcyLCA3OSwgMTI4LCA2OCwgNzIsIDcyLCA3MywgMTI4LCA2OCwgNzIsIAotICAgIDcyLCA2OSwgNjksIDEyOCwgNjgsIDcyLCA3MiwgNjksIDEyOCwgNjgsIDcyLCA3MiwgNjUsIDEyOCwgNjgsIDcyLCA2OSwgCi0gICAgNjksIDEyOCwgNjgsIDcyLCA2NSwgODIsIDc3LCA2NSwgMTI4LCA2OCwgNzIsIDY1LCA3NiwgNjksIDg0LCA3MiwgMTI4LCAKLSAgICA2OCwgNzIsIDY1LCA3NiwgNjUsIDg0LCA3MiwgMTI4LCA2OCwgNzIsIDY1LCA3NiwgMTI4LCA2OCwgNzIsIDY1LCA2OCwgNzIsIAotICAgIDY5LCAxMjgsIDY4LCA3MiwgNjUsIDY1LCA3NiwgODUsIDEyOCwgNjgsIDcyLCA2NSwgMTI4LCA2OCwgNjksIDkwLCAyMDAsIAorICAgIDg0LCA2OSwgMjEwLCA2OSwgNzgsIDgxLCA4NSwgNzMsIDgyLCA4OSwgMTI4LCA2OSwgNzgsIDgxLCAxMjgsIDY5LCA3OCwgCisgICAgNzksIDIxMSwgNjksIDc4LCA3OCwgMTI4LCA2OSwgNzgsIDc2LCA2NSwgODIsIDcxLCA2OSwgNzcsIDY5LCA3OCwgODQsIAorICAgIDEyOCwgNjksIDc4LCA3MSwgNzMsIDc4LCA2OSwgMTI4LCA2OSwgNzgsIDY4LCA3OSwgNzAsIDc5LCA3OCwgNzksIDc4LCAKKyAgICAxMjgsIDY5LCA3OCwgNjgsIDczLCA3OCwgMTk5LCA2OSwgNzgsIDY4LCA2OSwgODAsIDEyOCwgNjksIDc4LCA2OCwgNjksIAorICAgIDY1LCA4NiwgNzksIDg1LCA4MiwgMTI4LCA2OSwgNzgsIDY3LCA3OSwgODUsIDc4LCA4NCwgNjksIDgyLCA4MywgMTI4LCA2OSwgCisgICAgNzgsIDY3LCA3NiwgNzksIDgzLCA4NSwgODIsIDY5LCAxMjgsIDY5LCA3OCwgNjcsIDc2LCA3OSwgODMsIDczLCA3OCwgMTk5LCAKKyAgICA2OSwgNzgsIDY3LCAxMjgsIDY5LCA3OCwgNjUsIDgyLCA4OCwgNzMsIDIxMSwgNjksIDc4LCA2NSwgODIsIDc3LCA3OSwgNzgsIAorICAgIDczLCA3OSwgMjExLCA2OSwgNzcsIDgwLCA4NCwgMjE3LCA2OSwgNzcsIDgwLCA3MiwgNjUsIDg0LCA3MywgMTk1LCA2OSwgCisgICAgNzcsIDgwLCA3MiwgNjUsIDgzLCA3MywgMjExLCA2OSwgNzcsIDY2LCA4MiwgNzksIDczLCA2OCwgNjksIDgyLCA4OSwgMTI4LCAKKyAgICA2OSwgNzcsIDY2LCA3NiwgNjksIDc3LCAxMjgsIDY5LCA3NywgNjYsIDY5LCA3NiwgNzYsIDczLCA4MywgNzIsIDc3LCA2OSwgCisgICAgNzgsIDg0LCAxMjgsIDY5LCA3NywgNjYsIDY5LCA2OCwgNjgsIDczLCA3OCwgNzEsIDEyOCwgNjksIDc2LCA4NCwgMTI4LCAKKyAgICA2OSwgNzYsIDc2LCA3MywgODAsIDg0LCA3MywgMTk1LCA2OSwgNzYsIDc2LCA3MywgODAsIDgzLCA3MywgODMsIDEyOCwgNjksIAorICAgIDc2LCA3NiwgNzMsIDgwLCA4MywgNjksIDEyOCwgNjksIDc2LCA3MywgNzAsIDczLCAxMjgsIDY5LCA3NiwgNjksIDg2LCA2OSwgCisgICAgNzgsIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDY5LCA3NiwgNjksIDg2LCA2OSwgNzgsIDEyOCwgNjksIDc2LCAKKyAgICA2OSwgODYsIDY5LCAyMDYsIDY5LCA3NiwgNjksIDgwLCA3MiwgNjUsIDc4LCA4NCwgMTI4LCA2OSwgNzYsIDY5LCA3NywgNjksIAorICAgIDc4LCAyMTIsIDY5LCA3NiwgNjksIDY3LCA4NCwgODIsIDczLCA2NywgNjUsIDIwNCwgNjksIDc2LCA2OSwgNjcsIDg0LCA4MiwgCisgICAgNzMsIDE5NSwgNjksIDc2LCA2NSwgNzAsIDgyLCA3OSwgNzgsIDEyOCwgNjksIDc1LCA4MywgODQsIDgyLCA2OSwgODAsIDg0LCAKKyAgICA3OSwgNzgsIDEyOCwgNjksIDc1LCA4MywgMTI4LCA2OSwgNzUsIDcwLCA3OSwgNzgsIDczLCA4NCwgNzMsIDc1LCA3OSwgNzgsIAorICAgIDEyOCwgNjksIDc1LCA2NSwgODIsIDY1LCAxMjgsIDY5LCA3NCwgNjksIDY3LCAyMTIsIDY5LCA3MywgODMsIDEyOCwgNjksIAorICAgIDczLCA3MSwgNzIsIDg0LCA4OSwgMTI4LCA2OSwgNzMsIDcxLCA3MiwgODQsIDIxNywgNjksIDczLCA3MSwgNzIsIDg0LCA3MiwgCisgICAgODMsIDEyOCwgNjksIDczLCA3MSwgNzIsIDg0LCA3MiwgMjExLCA2OSwgNzMsIDcxLCA3MiwgODQsIDcyLCAxMjgsIDY5LCAKKyAgICA3MywgNzEsIDcyLCA4NCwgNjksIDY5LCA3OCwgMTI4LCA2OSwgNzMsIDcxLCA3MiwgODQsIDY5LCA2OSwgMjA2LCA2OSwgNzMsIAorICAgIDcxLCA3MiwgODQsIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDY5LCA3MywgNjksIDEyOCwgNjksIDcyLCA4NywgCisgICAgNjUsIDIxOCwgNjksIDcxLCA4OSwgODAsIDg0LCA3OSwgNzYsIDc5LCA3MSwgNzMsIDY3LCA2NSwgMjA0LCA2OSwgNzEsIDczLCAKKyAgICA4MiwgMTI4LCA2OSwgNzEsIDcxLCAxMjgsIDY5LCA2OSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY5LCA2OSwgNzUsIAorICAgIDY1LCA2NSwgMTI4LCA2OSwgNjksIDcyLCAxMjgsIDY5LCA2OSwgNjYsIDY5LCA2OSwgNzAsIDczLCA3NiwgNzMsIDEyOCwgCisgICAgNjksIDY4LCA3MywgODQsIDc5LCA4MiwgNzMsIDY1LCAyMDQsIDY5LCA2OCwgNzMsIDc4LCAxMjgsIDY5LCA2OCwgNjgsIAorICAgIDEyOCwgNjksIDY2LCA2OSwgNzAsIDczLCA3NiwgNzMsIDEyOCwgNjksIDY1LCA4MywgODQsIDY5LCA4MiwgMjA2LCA2OSwgCisgICAgNjUsIDgzLCAyMTIsIDY5LCA2NSwgODIsIDg0LCA3MiwgNzYsIDIxNywgNjksIDY1LCA4MiwgODQsIDcyLCAxMjgsIDY5LCAKKyAgICA2NSwgODIsIDg0LCAyMDAsIDY5LCA2NSwgODIsIDgzLCAxMjgsIDY5LCA2NSwgODIsIDc2LCAyMTcsIDY5LCA2NSwgNzcsIAorICAgIDcyLCA2NSwgNzgsIDY3LCA3MiwgNzksIDc2LCA3NiwgMTI4LCA2OSwgNjUsIDcxLCA3NiwgNjksIDEyOCwgNjksIDY1LCA2OCwgCisgICAgNzIsIDY1LCA2OCwgNzIsIDEyOCwgNjksIDY1LCA2NiwgNzIsIDY1LCA2OCwgNzIsIDEyOCwgNjksIDE3OCwgNjksIDQ4LCAKKyAgICA1MSwgNTYsIDEyOCwgNjksIDQ4LCA1MSwgNTUsIDEyOCwgNjksIDQ4LCA1MSwgNTQsIDEyOCwgNjksIDQ4LCA1MSwgNTIsIAorICAgIDY1LCAxMjgsIDY5LCA0OCwgNTEsIDUyLCAxMjgsIDY5LCA0OCwgNTEsIDUxLCAxMjgsIDY5LCA0OCwgNTEsIDUwLCAxMjgsIAorICAgIDY5LCA0OCwgNTEsIDQ5LCAxMjgsIDY5LCA0OCwgNTEsIDQ4LCAxMjgsIDY5LCA0OCwgNTAsIDU3LCAxMjgsIDY5LCA0OCwgCisgICAgNTAsIDU2LCA2NSwgMTI4LCA2OSwgNDgsIDUwLCA1NiwgMTI4LCA2OSwgNDgsIDUwLCA1NSwgMTI4LCA2OSwgNDgsIDUwLCAKKyAgICA1NCwgMTI4LCA2OSwgNDgsIDUwLCA1MywgMTI4LCA2OSwgNDgsIDUwLCA1MiwgMTI4LCA2OSwgNDgsIDUwLCA1MSwgMTI4LCAKKyAgICA2OSwgNDgsIDUwLCA1MCwgMTI4LCA2OSwgNDgsIDUwLCA0OSwgMTI4LCA2OSwgNDgsIDUwLCA0OCwgNjUsIDEyOCwgNjksIAorICAgIDQ4LCA1MCwgNDgsIDEyOCwgNjksIDQ4LCA0OSwgNTcsIDEyOCwgNjksIDQ4LCA0OSwgNTYsIDEyOCwgNjksIDQ4LCA0OSwgCisgICAgNTUsIDY1LCAxMjgsIDY5LCA0OCwgNDksIDU1LCAxMjgsIDY5LCA0OCwgNDksIDU0LCA2NSwgMTI4LCA2OSwgNDgsIDQ5LCAKKyAgICA1NCwgMTI4LCA2OSwgNDgsIDQ5LCA1MywgMTI4LCA2OSwgNDgsIDQ5LCA1MiwgMTI4LCA2OSwgNDgsIDQ5LCA1MSwgMTI4LCAKKyAgICA2OSwgNDgsIDQ5LCA1MCwgMTI4LCA2OSwgNDgsIDQ5LCA0OSwgMTI4LCA2OSwgNDgsIDQ5LCA0OCwgMTI4LCA2OSwgNDgsIAorICAgIDQ4LCA1NywgNjUsIDEyOCwgNjksIDQ4LCA0OCwgNTcsIDEyOCwgNjksIDQ4LCA0OCwgNTYsIDY1LCAxMjgsIDY5LCA0OCwgCisgICAgNDgsIDU2LCAxMjgsIDY5LCA0OCwgNDgsIDU1LCAxMjgsIDY5LCA0OCwgNDgsIDU0LCAxMjgsIDY5LCA0OCwgNDgsIDUzLCAKKyAgICAxMjgsIDY5LCA0OCwgNDgsIDUyLCAxMjgsIDY5LCA0OCwgNDgsIDUxLCAxMjgsIDY5LCA0OCwgNDgsIDUwLCAxMjgsIDY5LCAKKyAgICA0OCwgNDgsIDQ5LCAxMjgsIDY5LCA0NSwgNzcsIDY1LCA3MywgMjA0LCA2OCwgOTAsIDkwLCA2OSwgMTI4LCA2OCwgOTAsIAorICAgIDkwLCA2NSwgMTI4LCA2OCwgOTAsIDg3LCA2OSwgMTI4LCA2OCwgOTAsIDg1LCAxMjgsIDY4LCA5MCwgNzksIDEyOCwgNjgsIAorICAgIDkwLCA3NCwgNjksIDEyOCwgNjgsIDkwLCA3MywgMTI4LCA2OCwgOTAsIDcyLCA2OSwgMTI4LCA2OCwgOTAsIDcyLCA2NSwgCisgICAgMTI4LCA2OCwgOTAsIDY5LCA3NiwgNzksIDEyOCwgNjgsIDkwLCA2OSwgNjksIDEyOCwgNjgsIDkwLCA2OSwgMTI4LCA2OCwgCisgICAgOTAsIDY1LCA2NSwgMTI4LCA2OCwgOTAsIDY1LCAxMjgsIDY4LCA5MCwgMTI4LCA2OCwgMjE4LCA2OCwgODksIDc5LCAxMjgsIAorICAgIDY4LCA4OSwgMjA3LCA2OCwgODksIDY5LCA3MiwgMTI4LCA2OCwgODksIDY5LCAyMDAsIDY4LCA4NywgNzksIDEyOCwgNjgsIAorICAgIDg3LCA2OSwgMTI4LCA2OCwgODcsIDY1LCAxMjgsIDY4LCA4NiwgNzMsIDgzLCA4NiwgNjUsIDgyLCA2NSwgMTI4LCA2OCwgCisgICAgODYsIDY4LCAxMjgsIDY4LCA4NiwgMTI4LCA2OCwgODUsIDg0LCA3MywgNjksIDgzLCAxMjgsIDY4LCA4NSwgODMsIDc1LCAKKyAgICAxMjgsIDY4LCA4NSwgODMsIDcyLCA2OSwgNzgsIDc4LCA2NSwgMTI4LCA2OCwgODUsIDgyLCA2NSwgODQsIDczLCA3OSwgNzgsIAorICAgIDEyOCwgNjgsIDg1LCA4MiwgNTAsIDEyOCwgNjgsIDg1LCA4MCwgNzksIDc4LCA2OCwgNzMsIDg1LCAyMTEsIDY4LCA4NSwgCisgICAgNzksIDg4LCAxMjgsIDY4LCA4NSwgNzksIDEyOCwgNjgsIDg1LCA3OCwgNTIsIDEyOCwgNjgsIDg1LCA3OCwgNTEsIDEyOCwgCisgICAgNjgsIDg1LCA3OCwgMTc5LCA2OCwgODUsIDc3LCAxMjgsIDY4LCA4NSwgMjA0LCA2OCwgODUsIDcyLCAxMjgsIDY4LCA4NSwgCisgICAgNzEsIDg1LCA2OCwgMTI4LCA2OCwgODUsIDY2LCA1MCwgMTI4LCA2OCwgODUsIDY2LCAxMjgsIDY4LCA4NSwgMTk0LCA2OCwgCisgICAgODIsIDg5LCAxMjgsIDY4LCA4MiwgMjE3LCA2OCwgODIsIDg1LCA3NywgMTI4LCA2OCwgODIsIDg1LCAyMDUsIDY4LCA4MiwgCisgICAgNzksIDgwLCA4MywgMTI4LCA2OCwgODIsIDc5LCA4MCwgNzYsIDY5LCA4NCwgMTI4LCA2OCwgODIsIDc5LCA4MCwgNDUsIDgzLCAKKyAgICA3MiwgNjUsIDY4LCA3OSwgODcsIDY5LCAxOTYsIDY4LCA4MiwgNzksIDc3LCA2OSwgNjgsIDY1LCA4MiwgMjE3LCA2OCwgODIsIAorICAgIDczLCA4NiwgNjksIDEyOCwgNjgsIDgyLCA3MywgODYsIDE5NywgNjgsIDgyLCA3MywgNzgsIDc1LCAxMjgsIDY4LCA4MiwgCisgICAgNzMsIDIwNCwgNjgsIDgyLCA2OSwgODMsIDgzLCAxMjgsIDY4LCA4MiwgNjUsIDg1LCA3MSwgNzIsIDg0LCAyMTEsIDY4LCAKKyAgICA4MiwgNjUsIDc3LCAxMjgsIDY4LCA4MiwgNjUsIDIwNSwgNjgsIDgyLCA2NSwgNzEsIDc5LCA3OCwgMTI4LCA2OCwgODIsIAorICAgIDY1LCA3MSwgNzksIDIwNiwgNjgsIDgyLCA2NSwgNzAsIDg0LCA3MywgNzgsIDE5OSwgNjgsIDgyLCA2NSwgNjcsIDcyLCA3NywgCisgICAgNjUsIDgzLCAxMjgsIDY4LCA4MiwgNjUsIDY3LCA3MiwgNzcsIDY1LCAxMjgsIDY4LCA4MiwgNjUsIDY3LCA3MiwgNzcsIAorICAgIDE5MywgNjgsIDc5LCA4NywgNzgsIDg3LCA2NSwgODIsIDY4LCA4MywgMTI4LCA2OCwgNzksIDg3LCA3OCwgODcsIDY1LCA4MiwgCisgICAgNjgsIDIxMSwgNjgsIDc5LCA4NywgNzgsIDQ1LCA4MCwgNzksIDczLCA3OCwgODQsIDczLCA3OCwgMTk5LCA2OCwgNzksIDg3LCAKKyAgICA3OCwgMTI4LCA2OCwgNzksIDg2LCA2OSwgMTI4LCA2OCwgNzksIDg1LCA3MSwgNzIsIDc4LCA4NSwgODQsIDEyOCwgNjgsIAorICAgIDc5LCA4NSwgNjYsIDg0LCAxMjgsIDY4LCA3OSwgODUsIDY2LCA3NiwgNjksIDE5NiwgNjgsIDc5LCA4NSwgNjYsIDc2LCA2OSwgCisgICAgNDUsIDc2LCA3MywgNzgsIDE5NywgNjgsIDc5LCA4NSwgNjYsIDc2LCA2OSwgNDUsIDY5LCA3OCwgNjgsIDY5LCAxOTYsIDY4LCAKKyAgICA3OSwgODUsIDY2LCA3NiwgNjksIDEyOCwgNjgsIDc5LCA4NCwgODQsIDY5LCA2OCwgNDUsIDgwLCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDg0LCA2OSwgNjgsIDQ1LCA3OCwgMTI4LCA2OCwgNzksIDg0LCA4NCwgNjksIDY4LCA0NSwgNzYsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODQsIDY5LCA2OCwgMTI4LCA2OCwgNzksIDg0LCA4NCwgNjksIDE5NiwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1NiwgMTI4LCAKKyAgICA2OCwgNzksIDg0LCA4MywgNDUsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDU1LCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDgzLCA0NSwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCisgICAgNDUsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU2LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCA1NSwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MywgNTQsIDU1LCAKKyAgICA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MywgNTQsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1NiwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDUyLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTUsIDEyOCwgNjgsIDc5LCAKKyAgICA4NCwgODMsIDQ1LCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIAorICAgIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNTIsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1MywgNTUsIDU2LCAxMjgsIDY4LCAKKyAgICA3OSwgODQsIDgzLCA0NSwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1MywgNTQsIDU2LCAxMjgsIAorICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDUzLCAKKyAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIAorICAgIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTYsIDEyOCwgCisgICAgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDU1LCAxMjgsIDY4LCAKKyAgICA3OSwgODQsIDgzLCA0NSwgNTEsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1NCwgNTUsIDU2LCAxMjgsIAorICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1NCwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDUxLCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTMsIDU1LCA1NiwgMTI4LCAKKyAgICA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTMsIDU0LCA1NiwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCAKKyAgICA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAorICAgIDUxLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgCisgICAgNTIsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA1MSwgNTIsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDUxLCA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1NCwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1MywgNTUsIAorICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgCisgICAgNTIsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCAKKyAgICA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1MywgCisgICAgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTYsIDEyOCwgNjgsIAorICAgIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDU1LCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNTAsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCAKKyAgICA3OSwgODQsIDgzLCA0NSwgNTAsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1NCwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDUwLCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDUwLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTMsIDU0LCA1NiwgMTI4LCAKKyAgICA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MywgCisgICAgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCAKKyAgICA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIAorICAgIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgCisgICAgNTIsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDUwLCA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1NCwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDUwLCA1MiwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1MywgNTUsIDU2LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIAorICAgIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNTAsIDUyLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1MywgNTQsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTUsIAorICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgCisgICAgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKKyAgICA0NSwgNTAsIDUxLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDU0LCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDgzLCA0NSwgNTAsIDUxLCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUzLCA1NSwgNTYsIDEyOCwgCisgICAgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIAorICAgIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA1MCwgNTEsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUzLCA1NCwgMTI4LCAKKyAgICA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1NiwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCAKKyAgICA1MSwgNTIsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDU0LCAKKyAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIAorICAgIDUxLCA1MiwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIAorICAgIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIAorICAgIDUyLCA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgCisgICAgNDUsIDUwLCA1MSwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA1MCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1NSwgNTYsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTQsIDU2LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTQsIAorICAgIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUzLCA1NiwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUzLCAKKyAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAorICAgIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA0OSwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKKyAgICA0NSwgNDksIDUyLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDgzLCA0NSwgNDksIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNDksIDUyLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1NCwgNTUsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1MywgCisgICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA0OSwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDUzLCAKKyAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAorICAgIDQ5LCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCisgICAgNTEsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA0OSwgNTEsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAorICAgIDQ1LCA0OSwgNTEsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDU0LCA1NSwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUzLCA1NiwgMTI4LCAKKyAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgCisgICAgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKKyAgICA0NSwgNDksIDUxLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTMsIDU0LCA1NSwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCAKKyAgICA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAorICAgIDUxLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NCwgNTUsIAorICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCisgICAgNDksIDUxLCA1MiwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1MywgNTYsIDEyOCwgNjgsIDc5LCAKKyAgICA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgCisgICAgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDQ5LCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgCisgICAgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDQ5LCA1MSwgNTIsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDQ5LCA1MSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA0OSwgNTAsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTUsIDEyOCwgNjgsIDc5LCAKKyAgICA4NCwgODMsIDQ1LCA0OSwgNTAsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTQsIDU1LCA1NiwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCAKKyAgICA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAorICAgIDUwLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NCwgNTUsIAorICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCisgICAgNDksIDUwLCA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKKyAgICA0NSwgNDksIDUwLCA1MiwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1NSwgNTYsIDEyOCwgNjgsIAorICAgIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU0LCAKKyAgICA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAorICAgIDQ1LCA0OSwgNTAsIDUyLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1NCwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIAorICAgIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTMsIAorICAgIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTMsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgCisgICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA0OSwgNTAsIDUxLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDU0LCA1NiwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCAKKyAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAorICAgIDQ5LCA1MCwgNTEsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUzLCA1NSwgNTYsIDEyOCwgCisgICAgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIAorICAgIDUxLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgCisgICAgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAorICAgIDUwLCA1MSwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTUsIAorICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCisgICAgNDksIDUwLCA1MSwgNTIsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1NCwgNTUsIAorICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgCisgICAgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTYsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCisgICAgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTMsIAorICAgIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAorICAgIDUwLCA1MSwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1MywgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgMTI4LCAKKyAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDgzLCAxMjgsIDY4LCA3OSwgODQsIDc2LCA2OSwgODMsIDIxMSwgNjgsIDc5LCA4MiwgODUsIDEyOCwgNjgsIDc5LCA3OSwgCisgICAgODIsIDEyOCwgNjgsIDc5LCA3OSwgNzgsIDcxLCAxMjgsIDY4LCA3OSwgNzgsIDcxLCAxMjgsIDY4LCA3OSwgNzcsIDY1LCAKKyAgICA3MywgMjA2LCA2OCwgNzksIDc2LCA4MCwgNzIsIDczLCA3OCwgMTI4LCA2OCwgNzksIDc2LCA3NiwgODMsIDEyOCwgNjgsIAorICAgIDc5LCA3NiwgNzYsIDY1LCAyMTAsIDY4LCA3OSwgNzYsIDczLCA4NSwgNzcsIDEyOCwgNjgsIDc5LCA3NSwgNzcsIDY1LCA3MywgCisgICAgMTI4LCA2OCwgNzksIDczLCA4NCwgMTI4LCA2OCwgNzksIDcxLCAxMjgsIDY4LCA3OSwgMTk5LCA2OCwgNzksIDY5LCAyMTEsIAorICAgIDY4LCA3OSwgNjgsIDY5LCA3NSwgNjUsIDg0LCA2NSwgMTI4LCA2OCwgNzksIDY2LCA4MiwgNzksIDEyOCwgNjgsIDc5LCA2NSwgCisgICAgNjcsIDcyLCA2NSwgODMsIDcyLCA3NywgNjksIDY5LCAxMjgsIDY4LCA3OSwgNjUsIDY3LCA3MiwgNjUsIDgzLCA3MiwgNzcsIAorICAgIDY5LCAxOTcsIDY4LCA3OSwgNjUsIDEyOCwgNjgsIDc5LCA0NSwgNzksIDEyOCwgNjgsIDc3LCAxMjgsIDY4LCAyMDUsIDY4LCAKKyAgICA3NiwgODUsIDEyOCwgNjgsIDc2LCA3OSwgMTI4LCA2OCwgNzYsIDczLCAxMjgsIDY4LCA3NiwgNzIsIDg5LCA2NSwgMTI4LCAKKyAgICA2OCwgNzYsIDcyLCA2NSwgMTI4LCA2OCwgNzYsIDY5LCA2OSwgMTI4LCA2OCwgNzYsIDY1LCAxMjgsIDY4LCA3NiwgMTI4LCAKKyAgICA2OCwgNzUsIDY1LCA4MiwgMTI4LCA2OCwgNzUsIDY1LCAyMTAsIDY4LCA3NCwgNjksIDgyLCA4NiwgNzMsIDEyOCwgNjgsIAorICAgIDc0LCA2OSwgODIsIDg2LCAxMjgsIDY4LCA3NCwgNjksIDEyOCwgNjgsIDc0LCA2NSwgMTI4LCA2OCwgNzMsIDkwLCA5MCwgCisgICAgMjE3LCA2OCwgNzMsIDg2LCA3OSwgODIsIDY3LCAxOTcsIDY4LCA3MywgODYsIDczLCA4MywgNzMsIDc5LCA3OCwgMTI4LCAKKyAgICA2OCwgNzMsIDg2LCA3MywgODMsIDczLCA3OSwgMjA2LCA2OCwgNzMsIDg2LCA3MywgNzgsIDY1LCA4NCwgNzMsIDc5LCA3OCwgCisgICAgMTI4LCA2OCwgNzMsIDg2LCA3MywgNjgsIDY5LCA4MywgMTI4LCA2OCwgNzMsIDg2LCA3MywgNjgsIDY5LCA4MiwgMTI4LCAKKyAgICA2OCwgNzMsIDg2LCA3MywgNjgsIDY5LCAxOTYsIDY4LCA3MywgODYsIDczLCA2OCwgNjksIDEyOCwgNjgsIDczLCA4NiwgNzMsIAorICAgIDY4LCAxOTcsIDY4LCA3MywgODYsIDY5LCA4MiwgNzEsIDY5LCA3OCwgNjcsIDY5LCAxMjgsIDY4LCA3MywgODQsIDg0LCAKKyAgICAyMDcsIDY4LCA3MywgODMsIDg0LCA3OSwgODIsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY4LCA3MywgODMsIDg0LCA3MywgNzgsIAorICAgIDcxLCA4NSwgNzMsIDgzLCA3MiwgMTI4LCA2OCwgNzMsIDgzLCA4NCwgNzMsIDc2LCA3NiwgMTI4LCA2OCwgNzMsIDgzLCA4MywgCisgICAgNzksIDc2LCA4NiwgNjksIDQ1LCA1MCwgMTI4LCA2OCwgNzMsIDgzLCA4MywgNzksIDc2LCA4NiwgNjksIDEyOCwgNjgsIDczLCAKKyAgICA4MywgODAsIDY5LCA4MiwgODMsIDczLCA3OSwgNzgsIDEyOCwgNjgsIDczLCA4MywgNzUsIDEyOCwgNjgsIDczLCA4MywgNzMsIAorICAgIDc3LCA3OSwgODUsIDEyOCwgNjgsIDczLCA4MywgNzIsIDEyOCwgNjgsIDczLCA4MywgNjcsIDc5LCA3OCwgODQsIDczLCA3OCwgCisgICAgODUsIDc5LCA4NSwgMjExLCA2OCwgNzMsIDgzLCAxOTUsIDY4LCA3MywgODMsIDY1LCA4MCwgODAsIDc5LCA3MywgNzgsIDg0LCAKKyAgICA2OSwgMTk2LCA2OCwgNzMsIDgzLCA2NSwgNjYsIDc2LCA2OSwgMTk2LCA2OCwgNzMsIDgyLCA3MSwgMTkzLCA2OCwgNzMsIAorICAgIDgyLCA2OSwgNjcsIDg0LCA3NiwgMjE3LCA2OCwgNzMsIDgyLCA2OSwgNjcsIDg0LCA3MywgNzksIDc4LCA2NSwgMjA0LCA2OCwgCisgICAgNzMsIDgwLCA4NCwgNjksIDEyOCwgNjgsIDczLCA4MCwgODAsIDY5LCA4MiwgMTI4LCA2OCwgNzMsIDgwLCA3NiwgNzksIDg1LCAKKyAgICA3OCwgMTI4LCA2OCwgNzMsIDgwLCA3NiwgNzMsIDEyOCwgNjgsIDczLCA4MCwgNzYsIDIwMSwgNjgsIDczLCA3OCwgNzEsIAorICAgIDY2LCA2NSwgMjEyLCA2OCwgNzMsIDIwNiwgNjgsIDczLCA3NywgNzcsIDczLCA3OCwgNzEsIDEyOCwgNjgsIDczLCA3NywgCisgICAgNzMsIDc4LCA4NSwgODQsIDczLCA3OSwgNzgsIDQ1LCA1MSwgMTI4LCA2OCwgNzMsIDc3LCA3MywgNzgsIDg1LCA4NCwgNzMsIAorICAgIDc5LCA3OCwgNDUsIDUwLCAxMjgsIDY4LCA3MywgNzcsIDczLCA3OCwgODUsIDg0LCA3MywgNzksIDc4LCA0NSwgNDksIDEyOCwgCisgICAgNjgsIDczLCA3NywgNzMsIDc4LCA3MywgODMsIDcyLCA3NywgNjksIDc4LCA4NCwgMTI4LCA2OCwgNzMsIDc3LCA3MywgNjgsIAorICAgIDczLCAxOTMsIDY4LCA3MywgNzcsIDY5LCA3OCwgODMsIDczLCA3OSwgNzgsIDY1LCAyMDQsIDY4LCA3MywgNzcsIDY5LCA3OCwgCisgICAgODMsIDczLCA3OSwgMjA2LCA2OCwgNzMsIDc3LCA1MCwgMTI4LCA2OCwgNzMsIDc2LCAxMjgsIDY4LCA3MywgNzEsIDgyLCAKKyAgICA2NSwgODAsIDcyLCAxMjgsIDY4LCA3MywgNzEsIDgyLCA2NSwgODAsIDIwMCwgNjgsIDczLCA3MSwgODIsIDY1LCA3NywgNzcsIAorICAgIDc5LCAyMTEsIDY4LCA3MywgNzEsIDgyLCA2NSwgNzcsIDc3LCAxOTMsIDY4LCA3MywgNzEsIDgyLCA2NSwgMjA1LCA2OCwgCisgICAgNzMsIDcxLCA3OSwgODIsIDcxLCA3OSwgNzgsIDEyOCwgNjgsIDczLCA3MSwgNzksIDgyLCA3MSwgNzksIDIwNiwgNjgsIDczLCAKKyAgICA3MSwgNjUsIDc3LCA3NywgNjUsIDEyOCwgNjgsIDczLCA3MSwgMTkzLCA2OCwgNzMsIDcwLCA4NCwgNzksIDcxLCA3MSwgNzksIAorICAgIDIxMSwgNjgsIDczLCA3MCwgNzksIDc4LCA3MywgNjUsIDgzLCAxMjgsIDY4LCA3MywgNzAsIDcwLCA3MywgNjcsIDg1LCA3NiwgCisgICAgODQsIDIxNywgNjgsIDczLCA3MCwgNzAsIDczLCA2NywgODUsIDc2LCA4NCwgNzMsIDY5LCA4MywgMTI4LCA2OCwgNzMsIDcwLCAKKyAgICA3MCwgNjksIDgyLCA2OSwgNzgsIDg0LCA3MywgNjUsIDc2LCAxMjgsIDY4LCA3MywgNzAsIDcwLCA2OSwgODIsIDY5LCA3OCwgCisgICAgNjcsIDE5NywgNjgsIDczLCA3MCwgNjUsIDg0LCAxMjgsIDY4LCA3MywgNjksIDgzLCA3MywgODMsIDEyOCwgNjgsIDczLCAKKyAgICA2OSwgODMsIDczLCAyMTEsIDY4LCA3MywgNjksIDgwLCAxMjgsIDY4LCA3MywgMTk3LCA2OCwgNzMsIDY2LCAxMjgsIDY4LCAKKyAgICA3MywgNjUsIDg0LCA3OSwgNzgsIDc5LCAyMDYsIDY4LCA3MywgNjUsIDg0LCA3OSwgNzgsIDczLCA3NSwgMjAxLCA2OCwgNzMsIAorICAgIDY1LCA4MywgODQsIDc5LCA3NiwgMjAxLCA2OCwgNzMsIDY1LCA3NywgNzksIDc4LCA2OCwgODMsIDEyOCwgNjgsIDczLCA2NSwgCisgICAgNzcsIDc5LCA3OCwgNjgsIDEyOCwgNjgsIDczLCA2NSwgNzcsIDc5LCA3OCwgMTk2LCA2OCwgNzMsIDY1LCA3NywgNjksIDg0LCAKKyAgICA2OSwgMjEwLCA2OCwgNzMsIDY1LCA3NiwgODksIDg0LCA3MywgNzUsIDY1LCAxMjgsIDY4LCA3MywgNjUsIDc2LCA4OSwgODQsIAorICAgIDczLCA3NSwgMTkzLCA2OCwgNzMsIDY1LCA3NiwgNjksIDY3LCA4NCwgNDUsIDIwOCwgNjgsIDczLCA2NSwgNzEsIDc5LCA3OCwgCisgICAgNjUsIDc2LCAxMjgsIDY4LCA3MywgNjUsIDcxLCA3OSwgNzgsIDY1LCAyMDQsIDY4LCA3MywgNjUsIDY5LCA4MiwgNjksIDgzLCAKKyAgICA3MywgOTAsIDY5LCAxOTYsIDY4LCA3MywgNjUsIDY5LCA4MiwgNjksIDgzLCA3MywgODMsIDEyOCwgNjgsIDczLCA2NSwgNjksIAorICAgIDgyLCA2OSwgODMsIDczLCAyMTEsIDY4LCA3MiwgNzksIDg1LCAxMjgsIDY4LCA3MiwgNzksIDc5LCAxMjgsIDY4LCA3MiwgCisgICAgNzksIDEyOCwgNjgsIDcyLCA3MywgMTI4LCA2OCwgNzIsIDcyLCA4NSwgMTI4LCA2OCwgNzIsIDcyLCA3OSwgNzksIDEyOCwgCisgICAgNjgsIDcyLCA3MiwgNzksIDEyOCwgNjgsIDcyLCA3MiwgNzMsIDEyOCwgNjgsIDcyLCA3MiwgNjksIDY5LCAxMjgsIDY4LCAKKyAgICA3MiwgNzIsIDY5LCAxMjgsIDY4LCA3MiwgNzIsIDY1LCAxMjgsIDY4LCA3MiwgNjksIDY5LCAxMjgsIDY4LCA3MiwgNjUsIAorICAgIDgyLCA3NywgNjUsIDEyOCwgNjgsIDcyLCA2NSwgNzYsIDY5LCA4NCwgNzIsIDEyOCwgNjgsIDcyLCA2NSwgNzYsIDY1LCA4NCwgCisgICAgNzIsIDEyOCwgNjgsIDcyLCA2NSwgNzYsIDEyOCwgNjgsIDcyLCA2NSwgNjgsIDcyLCA2OSwgMTI4LCA2OCwgNzIsIDY1LCAKKyAgICA2NSwgNzYsIDg1LCAxMjgsIDY4LCA3MiwgNjUsIDY1LCAxMjgsIDY4LCA3MiwgNjUsIDEyOCwgNjgsIDY5LCA5MCwgMjAwLCAKICAgICA2OCwgNjksIDg5LCA4NCwgNjksIDgyLCA3OSwgMjEzLCA2OCwgNjksIDg5LCA4NCwgNjksIDgyLCA3OSwgMjExLCA2OCwgNjksIAogICAgIDg4LCA3MywgNjUsIDEyOCwgNjgsIDY5LCA4NiwgNzMsIDY3LCAxOTcsIDY4LCA2OSwgODYsIDY5LCA3NiwgNzksIDgwLCA3NywgCiAgICAgNjksIDc4LCA4NCwgMTI4LCA2OCwgNjksIDg1LCA3OCwgNzEsIDEyOCwgNjgsIDY5LCA4MywgMjAzLCA2OCwgNjksIDgzLCAKQEAgLTM4NzksMTYxICs0MDQwLDE2NCBAQAogICAgIDY4LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY4LCA2OCwgNjUsIDg4LCAxMjgsIDY4LCA2OCwgNjUsIDg0LCAKICAgICAxMjgsIDY4LCA2OCwgNjUsIDgwLCAxMjgsIDY4LCA2OCwgNjUsIDc2LCAxMjgsIDY4LCA2OCwgNjUsIDIwNCwgNjgsIDY4LCAKICAgICA2NSwgNzIsIDY1LCA3NiwgMTI4LCA2OCwgNjgsIDY1LCA3MiwgNjUsIDIwNCwgNjgsIDY4LCA2NSwgNjUsIDEyOCwgNjgsIAotICAgIDE5NCwgNjgsIDY1LCA4OSwgNDUsIDc4LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA2OCwgNjUsIDIxNywgNjgsIDY1LCA4NiwgCi0gICAgNzMsIDg5LCA2NSwgNzgsIDczLCAxMjgsIDY4LCA2NSwgODYsIDczLCA2OCwgMTI4LCA2OCwgNjUsIDg0LCAxOTcsIDY4LCAKLSAgICA2NSwgODMsIDczLCA2NSwgMTI4LCA2OCwgNjUsIDgzLCA3MiwgNjksIDE5NiwgNjgsIDY1LCA4MywgNzIsIDEyOCwgNjgsIAotICAgIDY1LCA4MywgMjAwLCA2OCwgNjUsIDgzLCA2OSwgNzMsIDY1LCAxMjgsIDY4LCA2NSwgODIsIDg0LCAxMjgsIDY4LCA2NSwgCi0gICAgODIsIDc1LCA2OSwgNzgsIDczLCA3OCwgNzEsIDEyOCwgNjgsIDY1LCA4MiwgNzUsIDY5LCA3OCwgNzMsIDc4LCAxOTksIDY4LCAKLSAgICA2NSwgODIsIDIwMywgNjgsIDY1LCA4MiwgNzEsIDY1LCAxMjgsIDY4LCA2NSwgODIsIDY1LCA1MiwgMTI4LCA2OCwgNjUsIAotICAgIDgyLCA2NSwgNTEsIDEyOCwgNjgsIDY1LCA4MiwgMTI4LCA2OCwgNjUsIDgwLCA0NSwgODAsIDgyLCA2NSwgMjA1LCA2OCwgCi0gICAgNjUsIDgwLCA0NSwgODAsIDczLCAyMDEsIDY4LCA2NSwgODAsIDQ1LCA3NywgODUsIDc5LCAyMTcsIDY4LCA2NSwgODAsIDQ1LCAKLSAgICA2NiwgODUsIDc5LCAyMDYsIDY4LCA2NSwgODAsIDQ1LCA2NiwgNjksIDIwMSwgNjgsIDY1LCAyMDgsIDY4LCA2NSwgNzgsIAotICAgIDg0LCA2NSwgNzQsIDE5MywgNjgsIDY1LCA3OCwgNzEsIDc5LCAxMjgsIDY4LCA2NSwgNzgsIDcxLCAxMjgsIDY4LCA2NSwgCi0gICAgNzgsIDE5OSwgNjgsIDY1LCA3OCwgNjgsIDY1LCAxMjgsIDY4LCA2NSwgNzgsIDY3LCA2OSwgODIsIDEyOCwgNjgsIDY1LCAKLSAgICA3NywgODAsIDEyOCwgNjgsIDY1LCA3NywgMjA4LCA2OCwgNjUsIDc3LCA3NywgNjUsIDg0LCA2NSwgNzgsIDEyOCwgNjgsIAotICAgIDY1LCA3NywgNzcsIDY1LCA4NCwgNjUsIDIwNiwgNjgsIDY1LCA3NywgNzcsIDY1LCAxMjgsIDY4LCA2NSwgNzcsIDc3LCAKLSAgICAxOTMsIDY4LCA2NSwgNzcsIDY1LCA4MiwgODUsIDEyOCwgNjgsIDY1LCA3NiwgNjksIDg0LCA3MiwgMTI4LCA2OCwgNjUsIAotICAgIDc2LCA2OSwgODQsIDEyOCwgNjgsIDY1LCA3NiwgNjksIDIxMiwgNjgsIDY1LCA3NiwgNjgsIDY1LCAxMjgsIDY4LCA2NSwgCi0gICAgNzYsIDY1LCA4NCwgNzIsIDEyOCwgNjgsIDY1LCA3NiwgNjUsIDg0LCAyMDAsIDY4LCA2NSwgNzYsIDY1LCA4NCwgMTI4LCAKLSAgICA2OCwgNjUsIDczLCA4MiwgMTI4LCA2OCwgNjUsIDczLCA3OCwgNzEsIDEyOCwgNjgsIDY1LCA3MiwgODksIDY1LCA2NSwgODUsIAotICAgIDgzLCA3MiwgNDUsIDUwLCAxMjgsIDY4LCA2NSwgNzIsIDg5LCA2NSwgNjUsIDg1LCA4MywgNzIsIDEyOCwgNjgsIDY1LCA3MSwgCi0gICAgODMsIDEyOCwgNjgsIDY1LCA3MSwgNzEsIDY5LCA4MiwgMTI4LCA2OCwgNjUsIDcxLCA2OSwgODMsIDcyLCAxMjgsIDY4LCAKLSAgICA2NSwgNzEsIDY5LCA4MywgMjAwLCA2OCwgNjUsIDcxLCA2NiwgNjUsIDgzLCA3MywgNzgsIDc4LCA2NSwgMTI4LCA2OCwgNjUsIAotICAgIDcxLCA2NSwgMjE4LCA2OCwgNjUsIDcxLCA2NSwgNzYsIDcxLCA2NSwgMTI4LCA2OCwgNjUsIDE5OSwgNjgsIDY1LCA2OSwgCi0gICAgNzgsIDcxLCAxMjgsIDY4LCA2NSwgNjksIDE5OSwgNjgsIDY1LCA2OCwgMTI4LCA2OCwgNjUsIDE5NiwgNjgsIDY1LCA2NSwgCi0gICAgODMsIDg1LCAxMjgsIDY4LCA2NSwgNjUsIDY4LCA3MiwgODUsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDcyLCAxMjgsIDY4LCAKLSAgICA0OCwgNTQsIDU1LCA3MSwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgNzAsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDY5LCAxMjgsIAotICAgIDY4LCA0OCwgNTQsIDU1LCA2OCwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgNjcsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDY2LCAKLSAgICAxMjgsIDY4LCA0OCwgNTQsIDU1LCA2NSwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgMTI4LCA2OCwgNDgsIDU0LCA1NCwgMTI4LCAKLSAgICA2OCwgNDgsIDU0LCA1MywgMTI4LCA2OCwgNDgsIDU0LCA1MiwgMTI4LCA2OCwgNDgsIDU0LCA1MSwgMTI4LCA2OCwgNDgsIAotICAgIDU0LCA1MCwgMTI4LCA2OCwgNDgsIDU0LCA0OSwgMTI4LCA2OCwgNDgsIDU0LCA0OCwgMTI4LCA2OCwgNDgsIDUzLCA1NywgCi0gICAgMTI4LCA2OCwgNDgsIDUzLCA1NiwgMTI4LCA2OCwgNDgsIDUzLCA1NSwgMTI4LCA2OCwgNDgsIDUzLCA1NCwgMTI4LCA2OCwgCi0gICAgNDgsIDUzLCA1MywgMTI4LCA2OCwgNDgsIDUzLCA1MiwgNjUsIDEyOCwgNjgsIDQ4LCA1MywgNTIsIDEyOCwgNjgsIDQ4LCAKLSAgICA1MywgNTEsIDEyOCwgNjgsIDQ4LCA1MywgNTAsIDY1LCAxMjgsIDY4LCA0OCwgNTMsIDUwLCAxMjgsIDY4LCA0OCwgNTMsIAotICAgIDQ5LCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA3MywgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNzIsIDEyOCwgNjgsIDQ4LCA1MywgCi0gICAgNDgsIDcxLCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA3MCwgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNjksIDEyOCwgNjgsIDQ4LCAKLSAgICA1MywgNDgsIDY4LCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA2NywgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNjYsIDEyOCwgNjgsIAotICAgIDQ4LCA1MywgNDgsIDY1LCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCAxMjgsIDY4LCA0OCwgNTIsIDU3LCAxMjgsIDY4LCA0OCwgCi0gICAgNTIsIDU2LCA2NSwgMTI4LCA2OCwgNDgsIDUyLCA1NiwgMTI4LCA2OCwgNDgsIDUyLCA1NSwgMTI4LCA2OCwgNDgsIDUyLCAKLSAgICA1NCwgNjUsIDEyOCwgNjgsIDQ4LCA1MiwgNTQsIDEyOCwgNjgsIDQ4LCA1MiwgNTMsIDEyOCwgNjgsIDQ4LCA1MiwgNTIsIAotICAgIDEyOCwgNjgsIDQ4LCA1MiwgNTEsIDEyOCwgNjgsIDQ4LCA1MiwgNTAsIDEyOCwgNjgsIDQ4LCA1MiwgNDksIDEyOCwgNjgsIAotICAgIDQ4LCA1MiwgNDgsIDEyOCwgNjgsIDQ4LCA1MSwgNTcsIDEyOCwgNjgsIDQ4LCA1MSwgNTYsIDEyOCwgNjgsIDQ4LCA1MSwgCi0gICAgNTUsIDEyOCwgNjgsIDQ4LCA1MSwgNTQsIDEyOCwgNjgsIDQ4LCA1MSwgNTMsIDEyOCwgNjgsIDQ4LCA1MSwgNTIsIDY1LCAKLSAgICAxMjgsIDY4LCA0OCwgNTEsIDUyLCAxMjgsIDY4LCA0OCwgNTEsIDUxLCAxMjgsIDY4LCA0OCwgNTEsIDUwLCAxMjgsIDY4LCAKLSAgICA0OCwgNTEsIDQ5LCA2NSwgMTI4LCA2OCwgNDgsIDUxLCA0OSwgMTI4LCA2OCwgNDgsIDUxLCA0OCwgMTI4LCA2OCwgNDgsIAotICAgIDUwLCA1NywgMTI4LCA2OCwgNDgsIDUwLCA1NiwgMTI4LCA2OCwgNDgsIDUwLCA1NSwgNjUsIDEyOCwgNjgsIDQ4LCA1MCwgCi0gICAgNTUsIDEyOCwgNjgsIDQ4LCA1MCwgNTQsIDEyOCwgNjgsIDQ4LCA1MCwgNTMsIDEyOCwgNjgsIDQ4LCA1MCwgNTIsIDEyOCwgCi0gICAgNjgsIDQ4LCA1MCwgNTEsIDEyOCwgNjgsIDQ4LCA1MCwgNTAsIDEyOCwgNjgsIDQ4LCA1MCwgNDksIDEyOCwgNjgsIDQ4LCAKLSAgICA1MCwgNDgsIDEyOCwgNjgsIDQ4LCA0OSwgNTcsIDEyOCwgNjgsIDQ4LCA0OSwgNTYsIDEyOCwgNjgsIDQ4LCA0OSwgNTUsIAotICAgIDEyOCwgNjgsIDQ4LCA0OSwgNTQsIDEyOCwgNjgsIDQ4LCA0OSwgNTMsIDEyOCwgNjgsIDQ4LCA0OSwgNTIsIDEyOCwgNjgsIAotICAgIDQ4LCA0OSwgNTEsIDEyOCwgNjgsIDQ4LCA0OSwgNTAsIDEyOCwgNjgsIDQ4LCA0OSwgNDksIDEyOCwgNjgsIDQ4LCA0OSwgCi0gICAgNDgsIDEyOCwgNjgsIDQ4LCA0OCwgNTcsIDEyOCwgNjgsIDQ4LCA0OCwgNTYsIDY1LCAxMjgsIDY4LCA0OCwgNDgsIDU2LCAKLSAgICAxMjgsIDY4LCA0OCwgNDgsIDU1LCAxMjgsIDY4LCA0OCwgNDgsIDU0LCAxMjgsIDY4LCA0OCwgNDgsIDUzLCAxMjgsIDY4LCAKLSAgICA0OCwgNDgsIDUyLCAxMjgsIDY4LCA0OCwgNDgsIDUxLCAxMjgsIDY4LCA0OCwgNDgsIDUwLCAxMjgsIDY4LCA0OCwgNDgsIAotICAgIDQ5LCAxMjgsIDY3LCA4OSwgODgsIDEyOCwgNjcsIDg5LCA4NCwgMTI4LCA2NywgODksIDgyLCA4OCwgMTI4LCA2NywgODksIAotICAgIDgyLCA2OSwgNzgsIDY1LCA3MywgMTk1LCA2NywgODksIDgyLCAxMjgsIDY3LCA4OSwgODAsIDgyLCA3MywgNzksIDIxMiwgCi0gICAgNjcsIDg5LCA4MCwgNjksIDgyLCA4NSwgODMsIDEyOCwgNjcsIDg5LCA4MCwgMTI4LCA2NywgODksIDc2LCA3MywgNzgsIDY4LCAKLSAgICA4MiwgNzMsIDY3LCA3MywgODQsIDg5LCAxMjgsIDY3LCA4OSwgNjcsIDc2LCA3OSwgNzgsIDY5LCAxMjgsIDY3LCA4OSwgNjUsIAotICAgIDEyOCwgNjcsIDg5LCAxMjgsIDY3LCA4NywgNzksIDc5LCAxMjgsIDY3LCA4NywgNzksIDEyOCwgNjcsIDg3LCA3MywgNzMsIAotICAgIDEyOCwgNjcsIDg3LCA3MywgMTI4LCA2NywgODcsIDY5LCA3OSwgODIsIDg0LCA3MiwgMTI4LCA2NywgODcsIDY5LCAxMjgsIAotICAgIDY3LCA4NywgNjUsIDY1LCAxMjgsIDY3LCA4NSwgODgsIDEyOCwgNjcsIDg1LCAyMTIsIDY3LCA4NSwgODMsIDg0LCA3OSwgCi0gICAgNzcsIDgzLCAxMjgsIDY3LCA4NSwgODMsIDg0LCA3OSwgNzcsIDY5LCAyMTAsIDY3LCA4NSwgODMsIDg0LCA2NSwgODIsIDY4LCAKLSAgICAxMjgsIDY3LCA4NSwgODIsIDg4LCAxMjgsIDY3LCA4NSwgODIsIDg2LCA3MywgNzgsIDE5OSwgNjcsIDg1LCA4MiwgODYsIAotICAgIDY5LCAxOTYsIDY3LCA4NSwgODIsIDg2LCA2OSwgMTI4LCA2NywgODUsIDgyLCA4NiwgMTk3LCA2NywgODUsIDgyLCA4MiwgCi0gICAgMjE3LCA2NywgODUsIDgyLCA4MiwgNjksIDc4LCA4NCwgMTI4LCA2NywgODUsIDgyLCA4MiwgNjksIDc4LCAyMTIsIDY3LCAKLSAgICA4NSwgODIsIDc2LCAyMTcsIDY3LCA4NSwgODIsIDc2LCAxMjgsIDY3LCA4NSwgODIsIDEyOCwgNjcsIDg1LCA4MCwgMTI4LCAKLSAgICA2NywgODUsIDc5LCA4OCwgMTI4LCA2NywgODUsIDc5LCA4MCwgMTI4LCA2NywgODUsIDc5LCAxMjgsIDY3LCA4NSwgMjA1LCAKLSAgICA2NywgODUsIDY2LCA2OSwgNjgsIDEyOCwgNjcsIDg1LCA2NiwgMTk3LCA2NywgODUsIDY1LCA4NCwgODIsIDczLCA3NiwgNzYsIAotICAgIDc5LCAxMjgsIDY3LCA4NSwgNjUsIDg0LCA4MiwgNzMsIDc2LCA3NiwgMjA3LCA2NywgODUsIDEyOCwgNjcsIDgyLCA4OSwgCi0gICAgODMsIDg0LCA2NSwgMjA0LCA2NywgODIsIDg5LCA4MCwgODQsIDc5LCA3MSwgODIsIDY1LCA3NywgNzcsIDczLCAxOTUsIDY3LCAKLSAgICA4MiwgODksIDczLCA3OCwgMTk5LCA2NywgODIsIDg1LCA5MCwgNjksIDczLCA4MiwgMjA3LCA2NywgODIsIDg1LCA2NywgNzMsIAotICAgIDY2LCA3NiwgNjksIDQ1LCA1MywgMTI4LCA2NywgODIsIDg1LCA2NywgNzMsIDY2LCA3NiwgNjksIDQ1LCA1MiwgMTI4LCA2NywgCi0gICAgODIsIDg1LCA2NywgNzMsIDY2LCA3NiwgNjksIDQ1LCA1MSwgMTI4LCA2NywgODIsIDg1LCA2NywgNzMsIDY2LCA3NiwgNjksIAotICAgIDQ1LCA1MCwgMTI4LCA2NywgODIsIDg1LCA2NywgNzMsIDY2LCA3NiwgNjksIDEyOCwgNjcsIDgyLCA3OSwgODcsIDc4LCAKLSAgICAxMjgsIDY3LCA4MiwgNzksIDgzLCA4MywgNzMsIDc4LCA3MSwgMTI4LCA2NywgODIsIDc5LCA4MywgODMsIDczLCA3OCwgCi0gICAgMTk5LCA2NywgODIsIDc5LCA4MywgODMsIDcyLCA2NSwgODQsIDY3LCAyMDAsIDY3LCA4MiwgNzksIDgzLCA4MywgNjksIDY4LCAKLSAgICA0NSwgODQsIDY1LCA3MywgNzYsIDEyOCwgNjcsIDgyLCA3OSwgODMsIDgzLCA2OSwgMTk2LCA2NywgODIsIDc5LCA4MywgODMsIAotICAgIDY2LCA3OSwgNzgsIDY5LCA4MywgMTI4LCA2NywgODIsIDc5LCA4MywgODMsIDEyOCwgNjcsIDgyLCA3OSwgODMsIDIxMSwgCi0gICAgNjcsIDgyLCA3OSwgODAsIDEyOCwgNjcsIDgyLCA3OSwgNzMsIDg4LCAxMjgsIDY3LCA4MiwgNzksIDY3LCA4NSwgMjExLCAKLSAgICA2NywgODIsIDc5LCA2NywgNzksIDY4LCA3MywgNzYsIDY5LCAxMjgsIDY3LCA4MiwgNjksIDgzLCA2NywgNjksIDc4LCA4NCwgCi0gICAgMTI4LCA2NywgODIsIDY5LCA4MywgNjcsIDY5LCA3OCwgMjEyLCA2NywgODIsIDY5LCA2OCwgNzMsIDIxMiwgNjcsIDgyLCAKLSAgICA2OSwgNjUsIDg0LCA3MywgODYsIDE5NywgNjcsIDgyLCA2OSwgNjUsIDc3LCAxMjgsIDY3LCA4MiwgNjUsIDY3LCA3NSwgNjksIAotICAgIDgyLCAxMjgsIDY3LCA3OSwgODgsIDEyOCwgNjcsIDc5LCA4NywgMTI4LCA2NywgNzksIDIxNSwgNjcsIDc5LCA4NiwgNjksIAotICAgIDgyLCAxMjgsIDY3LCA3OSwgODUsIDgwLCA3NiwgMTk3LCA2NywgNzksIDg1LCA3OCwgODQsIDczLCA3OCwgMTk5LCA2NywgCi0gICAgNzksIDg1LCA3OCwgODQsIDY5LCA4MiwgODMsIDczLCA3OCwgNzUsIDEyOCwgNjcsIDc5LCA4NSwgNzgsIDg0LCA2OSwgODIsIAotICAgIDY2LCA3OSwgODIsIDY5LCAxMjgsIDY3LCA3OSwgODUsIDc4LCA2NywgNzMsIDIwNCwgNjcsIDc5LCA4NCwgMTI4LCA2NywgCi0gICAgNzksIDgyLCA4MiwgNjksIDgzLCA4MCwgNzksIDc4LCA2OCwgMjExLCA2NywgNzksIDgyLCA4MiwgNjksIDY3LCA4NCwgMTI4LCAKLSAgICA2NywgNzksIDgyLCA4MCwgODMsIDY5LCAxMjgsIDY3LCA3OSwgODIsIDgwLCA3OSwgODIsIDY1LCA4NCwgNzMsIDc5LCA3OCwgCi0gICAgMTI4LCA2NywgNzksIDgyLCA3OSwgNzgsIDczLCA4MywgMTI4LCA2NywgNzksIDgyLCA3OCwgNjksIDgyLCA4MywgMTI4LCAKLSAgICA2NywgNzksIDgyLCA3OCwgNjksIDgyLCAxMjgsIDY3LCA3OSwgODIsIDc4LCA2OSwgMjEwLCA2NywgNzksIDgwLCA4OSwgODIsIAotICAgIDczLCA3MSwgNzIsIDg0LCAxMjgsIDY3LCA3OSwgODAsIDg5LCA4MiwgNzMsIDcxLCA3MiwgMjEyLCA2NywgNzksIDgwLCA4OSwgCi0gICAgMTI4LCA2NywgNzksIDgwLCA4MiwgNzksIDY4LCA4NSwgNjcsIDg0LCAxMjgsIDY3LCA3OSwgODAsIDgwLCA2OSwgODIsIDQ1LCAKLSAgICA1MCwgMTI4LCA2NywgNzksIDgwLCA4MCwgNjksIDgyLCAxMjgsIDY3LCA3OSwgODAsIDEyOCwgNjcsIDc5LCA3OSwgNzYsIAotICAgIDEyOCwgNjcsIDc5LCA3OSwgNzUsIDczLCA3OCwgNzEsIDEyOCwgNjcsIDc5LCA3OSwgNzUsIDczLCA2OSwgMTI4LCA2NywgCi0gICAgNzksIDc5LCA3NSwgNjksIDE5NiwgNjcsIDc5LCA3OSwgMTI4LCA2NywgNzksIDc4LCA4NiwgNjksIDgyLCA3MSwgNzMsIDc4LCAKLSAgICAxOTksIDY3LCA3OSwgNzgsIDg2LCA2OSwgNzgsIDczLCA2OSwgNzgsIDY3LCAxOTcsIDY3LCA3OSwgNzgsIDg0LCA4MiwgNzksIAotICAgIDc2LCAxMjgsIDY3LCA3OSwgNzgsIDg0LCA4MiwgNzksIDIwNCwgNjcsIDc5LCA3OCwgODQsIDgyLCA2NSwgODIsIDczLCA2OSwgCi0gICAgODQsIDg5LCAxMjgsIDY3LCA3OSwgNzgsIDg0LCA4MiwgNjUsIDY3LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NywgNzksIDc4LCAKLSAgICA4NCwgNzksIDg1LCA4MiwgNjksIDE5NiwgNjcsIDc5LCA3OCwgODQsIDc5LCA4NSwgMjEwLCA2NywgNzksIDc4LCA4NCwgNjksIAotICAgIDc4LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NywgNzksIDc4LCA4NCwgNjksIDc3LCA4MCwgNzYsIDY1LCA4NCwgNzMsIDc5LCAKLSAgICA3OCwgMTI4LCA2NywgNzksIDc4LCA4NCwgNjUsIDczLCA3OCwgMjExLCA2NywgNzksIDc4LCA4NCwgNjUsIDczLCA3OCwgNzMsIAotICAgIDc4LCAxOTksIDY3LCA3OSwgNzgsIDg0LCA2NSwgNzMsIDIwNiwgNjcsIDc5LCA3OCwgODQsIDY1LCA2NywgODQsIDEyOCwgCi0gICAgNjcsIDc5LCA3OCwgODMsIDg0LCA4MiwgODUsIDY3LCA4NCwgNzMsIDc5LCAyMDYsIDY3LCA3OSwgNzgsIDgzLCA4NCwgNjUsIAotICAgIDc4LCA4NCwgMTI4LCA2NywgNzksIDc4LCA4MywgODQsIDY1LCA3OCwgMjEyLCA2NywgNzksIDc4LCA4MywgODQsIDY1LCA3OCwgCi0gICAgNjcsIDg5LCAxMjgsIDY3LCA3OSwgNzgsIDgzLCA3OSwgNzgsIDY1LCA3OCwgMjEyLCA2NywgNzksIDc4LCA4MywgNjksIDY3LCAKLSAgICA4NSwgODQsIDczLCA4NiwgMTk3LCA2NywgNzksIDc4LCA3NCwgODUsIDc4LCA2NywgODQsIDczLCA3OSwgNzgsIDEyOCwgNjcsIAotICAgIDc5LCA3OCwgNzQsIDg1LCA3MSwgNjUsIDg0LCAxOTcsIDY3LCA3OSwgNzgsIDc0LCA3OSwgNzMsIDc4LCA3MywgNzgsIDE5OSwgCi0gICAgNjcsIDc5LCA3OCwgNzMsIDY3LCA2NSwgMjA0LCA2NywgNzksIDc4LCA3MSwgODIsIDg1LCA2OSwgNzgsIDIxMiwgNjcsIDc5LCAKLSAgICA3OCwgNzEsIDgyLCA2NSwgODQsIDg1LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY3LCA3OSwgNzgsIDcwLCA3OSwgCi0gICAgODUsIDc4LCA2OCwgNjksIDE5NiwgNjcsIDc5LCA3OCwgNzAsIDc2LCA3MywgNjcsIDg0LCAxMjgsIDY3LCA3OSwgNzgsIDcwLCAKLSAgICA2OSwgODQsIDg0LCAyMDEsIDY3LCA3OSwgNzgsIDY3LCA2NSwgODYsIDY5LCA0NSwgODMsIDczLCA2OCwgNjksIDE5NiwgNjcsIAotICAgIDc5LCA3OCwgNjcsIDY1LCA4NiwgNjksIDQ1LCA4MCwgNzksIDczLCA3OCwgODQsIDY5LCAxOTYsIDY3LCA3OSwgNzgsIDEyOCwgCi0gICAgNjcsIDc5LCA3NywgODAsIDg1LCA4NCwgNjksIDgyLCAxMjgsIDY3LCA3OSwgNzcsIDgwLCA3OSwgODMsIDczLCA4NCwgNzMsIAotICAgIDc5LCA3OCwgMTI4LCA2NywgNzksIDc3LCA4MCwgNzksIDgzLCA3MywgODQsIDczLCA3OSwgMjA2LCA2NywgNzksIDc3LCA4MCwgCi0gICAgNzYsIDczLCA2NSwgNzgsIDY3LCA2OSwgMTI4LCA2NywgNzksIDc3LCA4MCwgNzYsIDY5LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCAKLSAgICA2NywgNzksIDc3LCA4MCwgNzYsIDY5LCA4NCwgNjksIDY4LCAxMjgsIDY3LCA3OSwgNzcsIDgwLCA3NiwgNjksIDc3LCA2OSwgCi0gICAgNzgsIDg0LCAxMjgsIDY3LCA3OSwgNzcsIDgwLCA2NSwgODIsIDY5LCAxMjgsIDY3LCA3OSwgNzcsIDc3LCA3OSwgMjA2LCAKLSAgICA2NywgNzksIDc3LCA3NywgNjksIDgyLCA2NywgNzMsIDY1LCAyMDQsIDY3LCA3OSwgNzcsIDc3LCA2NSwgMTI4LCA2NywgNzksIAotICAgIDc3LCA3NywgMTkzLCA2NywgNzksIDc3LCA2OSwgODQsIDEyOCwgNjcsIDc5LCA3NywgNjYsIDEyOCwgNjcsIDc5LCA3NiwgCi0gICAgODUsIDc3LCA3OCwgMTI4LCA2NywgNzksIDc2LCA3OSwgODIsIDEyOCwgNjcsIDc5LCA3NiwgNzYsIDczLCA4MywgNzMsIDc5LCAKLSAgICAyMDYsIDY3LCA3OSwgNzYsIDc2LCAxMjgsIDY3LCA3OSwgNzYsIDE5NiwgNjcsIDc5LCA3MCwgNzAsIDczLCA3OCwgMTI4LCAKLSAgICA2NywgNzksIDY5LCA3OCwgNzEsIDEyOCwgNjcsIDc5LCA2OCwgNjUsIDEyOCwgNjcsIDc5LCA2NywgNzUsIDg0LCA2NSwgNzMsIAotICAgIDIwNCwgNjcsIDc5LCA2NSwgODMsIDg0LCA2OSwgODIsIDEyOCwgNjcsIDc5LCA2NSwgMTI4LCA2NywgNzksIDEyOCwgNjcsIAotICAgIDc3LCAxMjgsIDY3LCAyMDUsIDY3LCA3NiwgODUsIDgzLCA4NCwgNjksIDIxMCwgNjcsIDc2LCA4NSwgNjYsIDgzLCAxMjgsIAotICAgIDY3LCA3NiwgODUsIDY2LCA0NSwgODMsIDgwLCA3OSwgNzUsIDY5LCAxOTYsIDY3LCA3NiwgODUsIDY2LCAxMjgsIDY3LCA3NiwgCi0gICAgODUsIDE5NCwgNjcsIDc2LCA3OSwgODYsIDY5LCA4MiwgMTI4LCA2NywgNzYsIDc5LCA4NSwgNjgsIDEyOCwgNjcsIDc2LCAKLSAgICA3OSwgODUsIDE5NiwgNjcsIDc2LCA3OSwgODQsIDcyLCA2OSwgODMsIDEyOCwgNjcsIDc2LCA3OSwgODQsIDcyLCAxMjgsIAotICAgIDY3LCA3NiwgNzksIDgzLCA2OSwgODQsIDEyOCwgNjcsIDc2LCA3OSwgODMsIDY5LCA3OCwgNjksIDgzLCA4MywgMTI4LCA2NywgCi0gICAgNzYsIDc5LCA4MywgNjksIDY4LCAxMjgsIDY3LCA3NiwgNzksIDgzLCAxOTcsIDY3LCA3NiwgNzksIDY3LCA3NSwgODcsIDczLCAKLSAgICA4MywgMTk3LCA2NywgNzYsIDc5LCA2NywgMjAzLCA2NywgNzYsIDczLCA4NiwgNzMsIDgzLCAxMjgsIDY3LCA3NiwgNzMsIAotICAgIDgwLCA2NiwgNzksIDY1LCA4MiwgNjgsIDEyOCwgNjcsIDc2LCA3MywgNzgsIDc1LCA3MywgNzgsIDE5OSwgNjcsIDc2LCA3MywgCi0gICAgNzgsIDcxLCA3MywgNzgsIDE5OSwgNjcsIDc2LCA3MywgNzcsIDY1LCA2NywgODUsIDgzLCAxMjgsIDY3LCA3NiwgNzMsIDcwLCAKLSAgICA3MCwgMTI4LCA2NywgNzYsIDczLCA2NywgNzUsIDEyOCwgNjcsIDc2LCA2OSwgNzAsIDQ1LCA1MCwgMTI4LCA2NywgNzYsIAotICAgIDY5LCA3MCwgNDUsIDQ5LCAxMjgsIDY3LCA3NiwgNjksIDcwLCAxMjgsIDY3LCA3NiwgNjksIDE5OCwgNjcsIDc2LCA2OSwgCi0gICAgNjUsIDg2LCA2OSwgODIsIDEyOCwgNjcsIDc2LCA2OSwgNjUsIDIxMCwgNjcsIDc2LCA2NSwgODcsIDEyOCwgNjcsIDc2LCAKLSAgICA2NSwgODAsIDgwLCA3MywgNzgsIDE5OSwgNjcsIDc2LCA2NSwgODAsIDgwLCA2OSwgMjEwLCA2NywgNzYsIDY1LCA3OCwgCi0gICAgMTI4LCA2NywgNzYsIDY1LCA3MywgNzcsIDEyOCwgNjcsIDc2LCAxMjgsIDY3LCA3MywgODgsIDEyOCwgNjcsIDczLCA4NiwgCi0gICAgNzMsIDc2LCA3MywgNjUsIDc4LCAxMjgsIDY3LCA3MywgODQsIDg5LCA4MywgNjcsIDY1LCA4MCwgMTk3LCA2NywgNzMsIDg0LCAKLSAgICAxMjgsIDY3LCA3MywgODIsIDY3LCA4NSwgMjExLCA2NywgNzMsIDgyLCA2NywgODUsIDc3LCA3MCwgNzYsIDY5LCA4OCwgCi0gICAgMTI4LCA2NywgNzMsIDgyLCA2NywgODUsIDc3LCA3MCwgNzYsIDY5LCAyMTYsIDY3LCA3MywgODIsIDY3LCA4NSwgNzYsIDY1LCAKLSAgICA4NCwgNzMsIDc5LCAyMDYsIDY3LCA3MywgODIsIDY3LCA3NiwgNjksIDgzLCAxMjgsIDY3LCA3MywgODIsIDY3LCA3NiwgNjksIAotICAgIDEyOCwgNjcsIDczLCA4MCwgMTI4LCA2NywgNzMsIDc4LCA3OCwgNjUsIDY2LCA2NSwgODIsIDEyOCwgNjcsIDczLCA3OCwgCi0gICAgNjksIDc3LCA2NSwgMTI4LCA2NywgNzMsIDczLCAxMjgsIDY3LCA3MywgNjksIDg4LCAxMjgsIDY3LCA3MywgNjksIDg1LCAKLSAgICA2NywgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDY3LCA3MywgNjksIDg1LCA2NywgCi0gICAgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA2NywgNzMsIDY5LCA4NSwgNjcsIDQ1LCA3MywgNjksIDg1LCA3OCwgNzEsIAotICAgIDEyOCwgNjcsIDczLCA2OSwgODUsIDE5NSwgNjcsIDczLCA2OSwgODQsIDEyOCwgNjcsIDczLCA2OSwgODAsIDEyOCwgNjcsIAotICAgIDczLCA2OSwgMTI4LCA2NywgNzMsIDEyOCwgNjcsIDcyLCA4OSwgODgsIDEyOCwgNjcsIDcyLCA4OSwgODQsIDEyOCwgNjcsIAotICAgIDcyLCA4OSwgODIsIDg4LCAxMjgsIDY3LCA3MiwgODksIDgyLCAxMjgsIDY3LCA3MiwgODksIDgwLCAxMjgsIDY3LCA3MiwgCi0gICAgODUsIDg4LCAxMjgsIDY3LCA3MiwgODUsIDgyLCA4OCwgMTI4LCA2NywgNzIsIDg1LCA4MiwgNjcsIDcyLCAxMjgsIDY3LCAKLSAgICA3MiwgODUsIDgyLCAxMjgsIDY3LCA3MiwgODUsIDgwLCAxMjgsIDY3LCA3MiwgODUsIDc5LCA4OCwgMTI4LCA2NywgNzIsIAotICAgIDg1LCA3OSwgODQsIDEyOCwgNjcsIDcyLCA4NSwgNzksIDgwLCAxMjgsIDY3LCA3MiwgODUsIDc5LCAxMjgsIDY3LCA3MiwgCi0gICAgODUsIDc2LCA2NSwgMTI4LCA2NywgNzIsIDg1LCAxMjgsIDY3LCA3MiwgODIsIDg5LCA4MywgNjUsIDc4LCA4NCwgNzIsIDY5LCAKLSAgICA3NywgODUsIDc3LCAxMjgsIDY3LCA3MiwgODIsIDc5LCA3OCwgNzksIDg1LCAxMjgsIDY3LCA3MiwgODIsIDc5LCA3OCwgNzksIAotICAgIDc4LCAxMjgsIDY3LCA3MiwgODIsIDc5LCA3NywgMTkzLCA2NywgNzIsIDgyLCA3OSwgMTkzLCA2NywgNzIsIDgyLCA3MywgCi0gICAgODYsIDczLCAxMjgsIDY3LCA3MiwgODIsIDczLCA4MywgODQsIDc3LCA2NSwgODMsIDEyOCwgNjcsIDcyLCA4MiwgNzMsIDgzLCAKLSAgICA4NCwgNzcsIDY1LCAyMTEsIDY3LCA3MiwgNzksIDg4LCAxMjgsIDY3LCA3MiwgNzksIDg0LCAxMjgsIDY3LCA3MiwgNzksIAotICAgIDgyLCA2OSwgODYsIDc3LCAxOTMsIDY3LCA3MiwgNzksIDgwLCAxMjgsIDY3LCA3MiwgNzksIDc1LCA2OSwgMTI4LCA2NywgCi0gICAgNzIsIDc5LCA2OSwgMTI4LCA2NywgNzIsIDc5LCA2NywgNzksIDc2LCA2NSwgODQsIDE5NywgNjcsIDcyLCA3OSwgNjUsIAorICAgIDY3LCA4MywgMTI4LCA2OCwgNjcsIDUyLCAxMjgsIDY4LCA2NywgNTEsIDEyOCwgNjgsIDY3LCA1MCwgMTI4LCA2OCwgNjcsIAorICAgIDQ5LCAxMjgsIDY4LCAxOTQsIDY4LCA2NSwgODksIDQ1LCA3OCwgNzMsIDcxLCA3MiwgODQsIDEyOCwgNjgsIDY1LCAyMTcsIAorICAgIDY4LCA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA2OCwgNjUsIDg2LCA3MywgNjgsIDEyOCwgNjgsIDY1LCA4NCwgCisgICAgMTk3LCA2OCwgNjUsIDgzLCA3MywgNjUsIDEyOCwgNjgsIDY1LCA4MywgNzMsIDE5MywgNjgsIDY1LCA4MywgNzIsIDY5LCAKKyAgICAxOTYsIDY4LCA2NSwgODMsIDcyLCAxMjgsIDY4LCA2NSwgODMsIDIwMCwgNjgsIDY1LCA4MywgNjksIDczLCA2NSwgMTI4LCAKKyAgICA2OCwgNjUsIDgyLCA4NCwgMTI4LCA2OCwgNjUsIDgyLCA3NSwgNjksIDc4LCA3MywgNzgsIDcxLCAxMjgsIDY4LCA2NSwgODIsIAorICAgIDc1LCA2OSwgNzgsIDczLCA3OCwgMTk5LCA2OCwgNjUsIDgyLCAyMDMsIDY4LCA2NSwgODIsIDcxLCA2NSwgMTI4LCA2OCwgCisgICAgNjUsIDgyLCA2NSwgNTIsIDEyOCwgNjgsIDY1LCA4MiwgNjUsIDUxLCAxMjgsIDY4LCA2NSwgODIsIDEyOCwgNjgsIDY1LCAKKyAgICA4MCwgNDUsIDgwLCA4MiwgNjUsIDIwNSwgNjgsIDY1LCA4MCwgNDUsIDgwLCA3MywgMjAxLCA2OCwgNjUsIDgwLCA0NSwgNzcsIAorICAgIDg1LCA3OSwgMjE3LCA2OCwgNjUsIDgwLCA0NSwgNjYsIDg1LCA3OSwgMjA2LCA2OCwgNjUsIDgwLCA0NSwgNjYsIDY5LCAKKyAgICAyMDEsIDY4LCA2NSwgMjA4LCA2OCwgNjUsIDc4LCA4NCwgNjUsIDc0LCAxOTMsIDY4LCA2NSwgNzgsIDcxLCA3OSwgMTI4LCAKKyAgICA2OCwgNjUsIDc4LCA3MSwgMTI4LCA2OCwgNjUsIDc4LCAxOTksIDY4LCA2NSwgNzgsIDY4LCA2NSwgMTI4LCA2OCwgNjUsIAorICAgIDc4LCA2NywgNjksIDgyLCAxMjgsIDY4LCA2NSwgNzcsIDgwLCAxMjgsIDY4LCA2NSwgNzcsIDIwOCwgNjgsIDY1LCA3NywgCisgICAgNzcsIDY1LCA4NCwgNjUsIDc4LCAxMjgsIDY4LCA2NSwgNzcsIDc3LCA2NSwgODQsIDY1LCAyMDYsIDY4LCA2NSwgNzcsIDc3LCAKKyAgICA2NSwgMTI4LCA2OCwgNjUsIDc3LCA3NywgMTkzLCA2OCwgNjUsIDc3LCA2NSwgODIsIDg1LCAxMjgsIDY4LCA2NSwgNzYsIAorICAgIDY5LCA4NCwgNzIsIDEyOCwgNjgsIDY1LCA3NiwgNjksIDg0LCAxMjgsIDY4LCA2NSwgNzYsIDY5LCAyMTIsIDY4LCA2NSwgCisgICAgNzYsIDY4LCA2NSwgMTI4LCA2OCwgNjUsIDc2LCA2NSwgODQsIDcyLCAxMjgsIDY4LCA2NSwgNzYsIDY1LCA4NCwgMjAwLCAKKyAgICA2OCwgNjUsIDc2LCA2NSwgODQsIDEyOCwgNjgsIDY1LCA3MywgODIsIDEyOCwgNjgsIDY1LCA3MywgNzgsIDcxLCAxMjgsIAorICAgIDY4LCA2NSwgNzIsIDg5LCA2NSwgNjUsIDg1LCA4MywgNzIsIDQ1LCA1MCwgMTI4LCA2OCwgNjUsIDcyLCA4OSwgNjUsIDY1LCAKKyAgICA4NSwgODMsIDcyLCAxMjgsIDY4LCA2NSwgNzEsIDgzLCAxMjgsIDY4LCA2NSwgNzEsIDcxLCA2OSwgODIsIDEyOCwgNjgsIAorICAgIDY1LCA3MSwgNzEsIDY5LCAyMTAsIDY4LCA2NSwgNzEsIDY5LCA4MywgNzIsIDEyOCwgNjgsIDY1LCA3MSwgNjksIDgzLCAKKyAgICAyMDAsIDY4LCA2NSwgNzEsIDY2LCA2NSwgODMsIDczLCA3OCwgNzgsIDY1LCAxMjgsIDY4LCA2NSwgNzEsIDY1LCAyMTgsIAorICAgIDY4LCA2NSwgNzEsIDY1LCA3NiwgNzEsIDY1LCAxMjgsIDY4LCA2NSwgMTk5LCA2OCwgNjUsIDY5LCA3OCwgNzEsIDEyOCwgCisgICAgNjgsIDY1LCA2OSwgMTk5LCA2OCwgNjUsIDY4LCAxMjgsIDY4LCA2NSwgMTk2LCA2OCwgNjUsIDY1LCA4MywgODUsIDEyOCwgCisgICAgNjgsIDY1LCA2NSwgNjgsIDcyLCA4NSwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgNzIsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDcxLCAKKyAgICAxMjgsIDY4LCA0OCwgNTQsIDU1LCA3MCwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgNjksIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIAorICAgIDY4LCAxMjgsIDY4LCA0OCwgNTQsIDU1LCA2NywgMTI4LCA2OCwgNDgsIDU0LCA1NSwgNjYsIDEyOCwgNjgsIDQ4LCA1NCwgCisgICAgNTUsIDY1LCAxMjgsIDY4LCA0OCwgNTQsIDU1LCAxMjgsIDY4LCA0OCwgNTQsIDU0LCAxMjgsIDY4LCA0OCwgNTQsIDUzLCAKKyAgICAxMjgsIDY4LCA0OCwgNTQsIDUyLCAxMjgsIDY4LCA0OCwgNTQsIDUxLCAxMjgsIDY4LCA0OCwgNTQsIDUwLCAxMjgsIDY4LCAKKyAgICA0OCwgNTQsIDQ5LCAxMjgsIDY4LCA0OCwgNTQsIDQ4LCAxMjgsIDY4LCA0OCwgNTMsIDU3LCAxMjgsIDY4LCA0OCwgNTMsIAorICAgIDU2LCAxMjgsIDY4LCA0OCwgNTMsIDU1LCAxMjgsIDY4LCA0OCwgNTMsIDU0LCAxMjgsIDY4LCA0OCwgNTMsIDUzLCAxMjgsIAorICAgIDY4LCA0OCwgNTMsIDUyLCA2NSwgMTI4LCA2OCwgNDgsIDUzLCA1MiwgMTI4LCA2OCwgNDgsIDUzLCA1MSwgMTI4LCA2OCwgCisgICAgNDgsIDUzLCA1MCwgNjUsIDEyOCwgNjgsIDQ4LCA1MywgNTAsIDEyOCwgNjgsIDQ4LCA1MywgNDksIDEyOCwgNjgsIDQ4LCAKKyAgICA1MywgNDgsIDczLCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA3MiwgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNzEsIDEyOCwgNjgsIAorICAgIDQ4LCA1MywgNDgsIDcwLCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA2OSwgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNjgsIDEyOCwgCisgICAgNjgsIDQ4LCA1MywgNDgsIDY3LCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA2NiwgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNjUsIAorICAgIDEyOCwgNjgsIDQ4LCA1MywgNDgsIDEyOCwgNjgsIDQ4LCA1MiwgNTcsIDEyOCwgNjgsIDQ4LCA1MiwgNTYsIDY1LCAxMjgsIAorICAgIDY4LCA0OCwgNTIsIDU2LCAxMjgsIDY4LCA0OCwgNTIsIDU1LCAxMjgsIDY4LCA0OCwgNTIsIDU0LCA2NSwgMTI4LCA2OCwgCisgICAgNDgsIDUyLCA1NCwgMTI4LCA2OCwgNDgsIDUyLCA1MywgMTI4LCA2OCwgNDgsIDUyLCA1MiwgMTI4LCA2OCwgNDgsIDUyLCAKKyAgICA1MSwgMTI4LCA2OCwgNDgsIDUyLCA1MCwgMTI4LCA2OCwgNDgsIDUyLCA0OSwgMTI4LCA2OCwgNDgsIDUyLCA0OCwgMTI4LCAKKyAgICA2OCwgNDgsIDUxLCA1NywgMTI4LCA2OCwgNDgsIDUxLCA1NiwgMTI4LCA2OCwgNDgsIDUxLCA1NSwgMTI4LCA2OCwgNDgsIAorICAgIDUxLCA1NCwgMTI4LCA2OCwgNDgsIDUxLCA1MywgMTI4LCA2OCwgNDgsIDUxLCA1MiwgNjUsIDEyOCwgNjgsIDQ4LCA1MSwgCisgICAgNTIsIDEyOCwgNjgsIDQ4LCA1MSwgNTEsIDEyOCwgNjgsIDQ4LCA1MSwgNTAsIDEyOCwgNjgsIDQ4LCA1MSwgNDksIDY1LCAKKyAgICAxMjgsIDY4LCA0OCwgNTEsIDQ5LCAxMjgsIDY4LCA0OCwgNTEsIDQ4LCAxMjgsIDY4LCA0OCwgNTAsIDU3LCAxMjgsIDY4LCAKKyAgICA0OCwgNTAsIDU2LCAxMjgsIDY4LCA0OCwgNTAsIDU1LCA2NSwgMTI4LCA2OCwgNDgsIDUwLCA1NSwgMTI4LCA2OCwgNDgsIAorICAgIDUwLCA1NCwgMTI4LCA2OCwgNDgsIDUwLCA1MywgMTI4LCA2OCwgNDgsIDUwLCA1MiwgMTI4LCA2OCwgNDgsIDUwLCA1MSwgCisgICAgMTI4LCA2OCwgNDgsIDUwLCA1MCwgMTI4LCA2OCwgNDgsIDUwLCA0OSwgMTI4LCA2OCwgNDgsIDUwLCA0OCwgMTI4LCA2OCwgCisgICAgNDgsIDQ5LCA1NywgMTI4LCA2OCwgNDgsIDQ5LCA1NiwgMTI4LCA2OCwgNDgsIDQ5LCA1NSwgMTI4LCA2OCwgNDgsIDQ5LCAKKyAgICA1NCwgMTI4LCA2OCwgNDgsIDQ5LCA1MywgMTI4LCA2OCwgNDgsIDQ5LCA1MiwgMTI4LCA2OCwgNDgsIDQ5LCA1MSwgMTI4LCAKKyAgICA2OCwgNDgsIDQ5LCA1MCwgMTI4LCA2OCwgNDgsIDQ5LCA0OSwgMTI4LCA2OCwgNDgsIDQ5LCA0OCwgMTI4LCA2OCwgNDgsIAorICAgIDQ4LCA1NywgMTI4LCA2OCwgNDgsIDQ4LCA1NiwgNjUsIDEyOCwgNjgsIDQ4LCA0OCwgNTYsIDEyOCwgNjgsIDQ4LCA0OCwgCisgICAgNTUsIDEyOCwgNjgsIDQ4LCA0OCwgNTQsIDEyOCwgNjgsIDQ4LCA0OCwgNTMsIDEyOCwgNjgsIDQ4LCA0OCwgNTIsIDEyOCwgCisgICAgNjgsIDQ4LCA0OCwgNTEsIDEyOCwgNjgsIDQ4LCA0OCwgNTAsIDEyOCwgNjgsIDQ4LCA0OCwgNDksIDEyOCwgNjcsIDg5LCAKKyAgICA4OCwgMTI4LCA2NywgODksIDg0LCAxMjgsIDY3LCA4OSwgODIsIDg4LCAxMjgsIDY3LCA4OSwgODIsIDY5LCA3OCwgNjUsIAorICAgIDczLCAxOTUsIDY3LCA4OSwgODIsIDEyOCwgNjcsIDg5LCA4MCwgODIsIDczLCA3OSwgMjEyLCA2NywgODksIDgwLCA2OSwgCisgICAgODIsIDg1LCA4MywgMTI4LCA2NywgODksIDgwLCAxMjgsIDY3LCA4OSwgNzYsIDczLCA3OCwgNjgsIDgyLCA3MywgNjcsIDczLCAKKyAgICA4NCwgODksIDEyOCwgNjcsIDg5LCA2NywgNzYsIDc5LCA3OCwgNjksIDEyOCwgNjcsIDg5LCA2NSwgMTI4LCA2NywgODksIAorICAgIDEyOCwgNjcsIDg3LCA3OSwgNzksIDEyOCwgNjcsIDg3LCA3OSwgMTI4LCA2NywgODcsIDczLCA3MywgMTI4LCA2NywgODcsIAorICAgIDczLCAxMjgsIDY3LCA4NywgNjksIDc5LCA4MiwgODQsIDcyLCAxMjgsIDY3LCA4NywgNjksIDEyOCwgNjcsIDg3LCA2NSwgCisgICAgNjUsIDEyOCwgNjcsIDg1LCA4OCwgMTI4LCA2NywgODUsIDg1LCAxMjgsIDY3LCA4NSwgMjEyLCA2NywgODUsIDgzLCA4NCwgCisgICAgNzksIDc3LCA4MywgMTI4LCA2NywgODUsIDgzLCA4NCwgNzksIDc3LCA2OSwgMjEwLCA2NywgODUsIDgzLCA4NCwgNjUsIDgyLCAKKyAgICA2OCwgMTI4LCA2NywgODUsIDgyLCA4OCwgMTI4LCA2NywgODUsIDgyLCA4NiwgNzMsIDc4LCAxOTksIDY3LCA4NSwgODIsIAorICAgIDg2LCA2OSwgMTk2LCA2NywgODUsIDgyLCA4NiwgNjksIDEyOCwgNjcsIDg1LCA4MiwgODYsIDE5NywgNjcsIDg1LCA4MiwgCisgICAgODMsIDczLCA4NiwgMTk3LCA2NywgODUsIDgyLCA4MiwgMjE3LCA2NywgODUsIDgyLCA4MiwgNjksIDc4LCA4NCwgMTI4LCAKKyAgICA2NywgODUsIDgyLCA4MiwgNjksIDc4LCAyMTIsIDY3LCA4NSwgODIsIDc2LCAyMTcsIDY3LCA4NSwgODIsIDc2LCAxMjgsIAorICAgIDY3LCA4NSwgODIsIDEyOCwgNjcsIDg1LCA4MCwgMTI4LCA2NywgODUsIDc5LCA4OCwgMTI4LCA2NywgODUsIDc5LCA4MCwgCisgICAgMTI4LCA2NywgODUsIDc5LCAxMjgsIDY3LCA4NSwgMjA1LCA2NywgODUsIDY2LCA2OSwgNjgsIDEyOCwgNjcsIDg1LCA2NiwgCisgICAgMTk3LCA2NywgODUsIDY1LCA4NCwgODIsIDczLCA3NiwgNzYsIDc5LCAxMjgsIDY3LCA4NSwgNjUsIDg0LCA4MiwgNzMsIDc2LCAKKyAgICA3NiwgMjA3LCA2NywgODUsIDEyOCwgNjcsIDgzLCA3MywgMTI4LCA2NywgODIsIDg5LCA4MywgODQsIDY1LCAyMDQsIDY3LCAKKyAgICA4MiwgODksIDgwLCA4NCwgNzksIDcxLCA4MiwgNjUsIDc3LCA3NywgNzMsIDE5NSwgNjcsIDgyLCA4OSwgNzMsIDc4LCAxOTksIAorICAgIDY3LCA4MiwgODUsIDkwLCA2OSwgNzMsIDgyLCAyMDcsIDY3LCA4MiwgODUsIDY3LCA3MywgNjYsIDc2LCA2OSwgNDUsIDUzLCAKKyAgICAxMjgsIDY3LCA4MiwgODUsIDY3LCA3MywgNjYsIDc2LCA2OSwgNDUsIDUyLCAxMjgsIDY3LCA4MiwgODUsIDY3LCA3MywgNjYsIAorICAgIDc2LCA2OSwgNDUsIDUxLCAxMjgsIDY3LCA4MiwgODUsIDY3LCA3MywgNjYsIDc2LCA2OSwgNDUsIDUwLCAxMjgsIDY3LCA4MiwgCisgICAgODUsIDY3LCA3MywgNjYsIDc2LCA2OSwgMTI4LCA2NywgODIsIDc5LCA4NywgNzgsIDEyOCwgNjcsIDgyLCA3OSwgODMsIDgzLCAKKyAgICA3MywgNzgsIDcxLCAxMjgsIDY3LCA4MiwgNzksIDgzLCA4MywgNzMsIDc4LCAxOTksIDY3LCA4MiwgNzksIDgzLCA4MywgNzIsIAorICAgIDY1LCA4NCwgNjcsIDIwMCwgNjcsIDgyLCA3OSwgODMsIDgzLCA2OSwgNjgsIDQ1LCA4NCwgNjUsIDczLCA3NiwgMTI4LCA2NywgCisgICAgODIsIDc5LCA4MywgODMsIDY5LCAxOTYsIDY3LCA4MiwgNzksIDgzLCA4MywgNjYsIDc5LCA3OCwgNjksIDgzLCAxMjgsIDY3LCAKKyAgICA4MiwgNzksIDgzLCA4MywgMTI4LCA2NywgODIsIDc5LCA4MywgMjExLCA2NywgODIsIDc5LCA4MCwgMTI4LCA2NywgODIsIAorICAgIDc5LCA3MywgODgsIDEyOCwgNjcsIDgyLCA3OSwgNjcsIDg1LCAyMTEsIDY3LCA4MiwgNzksIDY3LCA3OSwgNjgsIDczLCA3NiwgCisgICAgNjksIDEyOCwgNjcsIDgyLCA2OSwgODMsIDY3LCA2OSwgNzgsIDg0LCAxMjgsIDY3LCA4MiwgNjksIDgzLCA2NywgNjksIDc4LCAKKyAgICAyMTIsIDY3LCA4MiwgNjksIDY4LCA3MywgMjEyLCA2NywgODIsIDY5LCA2NSwgODQsIDczLCA4NiwgMTk3LCA2NywgODIsIAorICAgIDY5LCA2NSwgNzcsIDEyOCwgNjcsIDgyLCA2NSwgNjcsIDc1LCA2OSwgODIsIDEyOCwgNjcsIDgyLCAxMjgsIDY3LCA3OSwgCisgICAgODgsIDEyOCwgNjcsIDc5LCA4NywgMTI4LCA2NywgNzksIDIxNSwgNjcsIDc5LCA4NiwgNjksIDgyLCAxMjgsIDY3LCA3OSwgCisgICAgODUsIDgwLCA3NiwgMTk3LCA2NywgNzksIDg1LCA3OCwgODQsIDczLCA3OCwgMTk5LCA2NywgNzksIDg1LCA3OCwgODQsIDY5LCAKKyAgICA4MiwgODMsIDczLCA3OCwgNzUsIDEyOCwgNjcsIDc5LCA4NSwgNzgsIDg0LCA2OSwgODIsIDY2LCA3OSwgODIsIDY5LCAxMjgsIAorICAgIDY3LCA3OSwgODUsIDc4LCA2NywgNzMsIDIwNCwgNjcsIDc5LCA4NCwgMTI4LCA2NywgNzksIDgyLCA4MiwgNjksIDgzLCA4MCwgCisgICAgNzksIDc4LCA2OCwgMjExLCA2NywgNzksIDgyLCA4MiwgNjksIDY3LCA4NCwgMTI4LCA2NywgNzksIDgyLCA4MCwgODMsIDY5LCAKKyAgICAxMjgsIDY3LCA3OSwgODIsIDgwLCA3OSwgODIsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NywgNzksIDgyLCA3OSwgNzgsIAorICAgIDczLCA4MywgMTI4LCA2NywgNzksIDgyLCA3OCwgNjksIDgyLCA4MywgMTI4LCA2NywgNzksIDgyLCA3OCwgNjksIDgyLCAKKyAgICAxMjgsIDY3LCA3OSwgODIsIDc4LCA2OSwgMjEwLCA2NywgNzksIDgwLCA4OSwgODIsIDczLCA3MSwgNzIsIDg0LCAxMjgsIAorICAgIDY3LCA3OSwgODAsIDg5LCA4MiwgNzMsIDcxLCA3MiwgMjEyLCA2NywgNzksIDgwLCA4OSwgMTI4LCA2NywgNzksIDgwLCA4MiwgCisgICAgNzksIDY4LCA4NSwgNjcsIDg0LCAxMjgsIDY3LCA3OSwgODAsIDgwLCA2OSwgODIsIDQ1LCA1MCwgMTI4LCA2NywgNzksIDgwLCAKKyAgICA4MCwgNjksIDgyLCAxMjgsIDY3LCA3OSwgODAsIDEyOCwgNjcsIDc5LCA3OSwgNzYsIDEyOCwgNjcsIDc5LCA3OSwgNzUsIAorICAgIDczLCA3OCwgNzEsIDEyOCwgNjcsIDc5LCA3OSwgNzUsIDczLCA2OSwgMTI4LCA2NywgNzksIDc5LCA3NSwgNjksIDE5NiwgCisgICAgNjcsIDc5LCA3OSwgMTI4LCA2NywgNzksIDc4LCA4NiwgNjksIDgyLCA3MSwgNzMsIDc4LCAxOTksIDY3LCA3OSwgNzgsIDg2LCAKKyAgICA2OSwgNzgsIDczLCA2OSwgNzgsIDY3LCAxOTcsIDY3LCA3OSwgNzgsIDg0LCA4MiwgNzksIDc2LCAxMjgsIDY3LCA3OSwgNzgsIAorICAgIDg0LCA4MiwgNzksIDIwNCwgNjcsIDc5LCA3OCwgODQsIDgyLCA2NSwgODIsIDczLCA2OSwgODQsIDg5LCAxMjgsIDY3LCA3OSwgCisgICAgNzgsIDg0LCA4MiwgNjUsIDY3LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NywgNzksIDc4LCA4NCwgNzksIDg1LCA4MiwgNjksIAorICAgIDE5NiwgNjcsIDc5LCA3OCwgODQsIDc5LCA4NSwgMjEwLCA2NywgNzksIDc4LCA4NCwgNjksIDc4LCA4NCwgNzMsIDc5LCA3OCwgCisgICAgMTI4LCA2NywgNzksIDc4LCA4NCwgNjksIDc3LCA4MCwgNzYsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NywgNzksIDc4LCAKKyAgICA4NCwgNjUsIDczLCA3OCwgMjExLCA2NywgNzksIDc4LCA4NCwgNjUsIDczLCA3OCwgNzMsIDc4LCAxOTksIDY3LCA3OSwgNzgsIAorICAgIDg0LCA2NSwgNzMsIDIwNiwgNjcsIDc5LCA3OCwgODQsIDY1LCA2NywgODQsIDEyOCwgNjcsIDc5LCA3OCwgODMsIDg0LCA4MiwgCisgICAgODUsIDY3LCA4NCwgNzMsIDc5LCAyMDYsIDY3LCA3OSwgNzgsIDgzLCA4NCwgNjUsIDc4LCA4NCwgMTI4LCA2NywgNzksIDc4LCAKKyAgICA4MywgODQsIDY1LCA3OCwgMjEyLCA2NywgNzksIDc4LCA4MywgODQsIDY1LCA3OCwgNjcsIDg5LCAxMjgsIDY3LCA3OSwgNzgsIAorICAgIDgzLCA2OSwgNjcsIDg1LCA4NCwgNzMsIDg2LCAxOTcsIDY3LCA3OSwgNzgsIDc0LCA4NSwgNzgsIDY3LCA4NCwgNzMsIDc5LCAKKyAgICA3OCwgMTI4LCA2NywgNzksIDc4LCA3NCwgODUsIDcxLCA2NSwgODQsIDE5NywgNjcsIDc5LCA3OCwgNzQsIDc5LCA3MywgNzgsIAorICAgIDczLCA3OCwgMTk5LCA2NywgNzksIDc4LCA3MywgNjcsIDY1LCAyMDQsIDY3LCA3OSwgNzgsIDcxLCA4MiwgODUsIDY5LCA3OCwgCisgICAgMjEyLCA2NywgNzksIDc4LCA3MSwgODIsIDY1LCA4NCwgODUsIDc2LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjcsIDc5LCAKKyAgICA3OCwgNzAsIDg1LCA4MywgNjksIDE5NiwgNjcsIDc5LCA3OCwgNzAsIDc5LCA4NSwgNzgsIDY4LCA2OSwgMTk2LCA2NywgNzksIAorICAgIDc4LCA3MCwgNzYsIDczLCA2NywgODQsIDEyOCwgNjcsIDc5LCA3OCwgNzAsIDY5LCA4NCwgODQsIDIwMSwgNjcsIDc5LCA3OCwgCisgICAgNjcsIDY1LCA4NiwgNjksIDQ1LCA4MywgNzMsIDY4LCA2OSwgMTk2LCA2NywgNzksIDc4LCA2NywgNjUsIDg2LCA2OSwgNDUsIAorICAgIDgwLCA3OSwgNzMsIDc4LCA4NCwgNjksIDE5NiwgNjcsIDc5LCA3OCwgMTI4LCA2NywgNzksIDc3LCA4MCwgODUsIDg0LCA2OSwgCisgICAgODIsIDEyOCwgNjcsIDc5LCA3NywgODAsIDc5LCA4MywgNzMsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY3LCA3OSwgNzcsIDgwLCAKKyAgICA3OSwgODMsIDczLCA4NCwgNzMsIDc5LCAyMDYsIDY3LCA3OSwgNzcsIDgwLCA3NiwgNzMsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIAorICAgIDY3LCA3OSwgNzcsIDgwLCA3NiwgNjksIDg0LCA3MywgNzksIDc4LCAxMjgsIDY3LCA3OSwgNzcsIDgwLCA3NiwgNjksIDg0LCAKKyAgICA2OSwgNjgsIDEyOCwgNjcsIDc5LCA3NywgODAsIDc2LCA2OSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNjcsIDc5LCA3NywgODAsIAorICAgIDY1LCA4MiwgNjksIDEyOCwgNjcsIDc5LCA3NywgNzcsIDc5LCAyMDYsIDY3LCA3OSwgNzcsIDc3LCA2OSwgODIsIDY3LCA3MywgCisgICAgNjUsIDIwNCwgNjcsIDc5LCA3NywgNzcsIDY1LCA3OCwgNjgsIDEyOCwgNjcsIDc5LCA3NywgNzcsIDY1LCAxMjgsIDY3LCAKKyAgICA3OSwgNzcsIDc3LCAxOTMsIDY3LCA3OSwgNzcsIDY5LCA4NCwgMTI4LCA2NywgNzksIDc3LCA2NiwgMTI4LCA2NywgNzksIAorICAgIDc2LCA4NSwgNzcsIDc4LCAxMjgsIDY3LCA3OSwgNzYsIDc5LCA4MiwgMTI4LCA2NywgNzksIDc2LCA3NiwgNzMsIDgzLCA3MywgCisgICAgNzksIDIwNiwgNjcsIDc5LCA3NiwgNzYsIDEyOCwgNjcsIDc5LCA3NiwgMTk2LCA2NywgNzksIDcwLCA3MCwgNzMsIDc4LCAKKyAgICAxMjgsIDY3LCA3OSwgNjksIDc4LCA3MSwgMTI4LCA2NywgNzksIDY5LCA3OCwgMTk5LCA2NywgNzksIDY4LCA2NSwgMTI4LCAKKyAgICA2NywgNzksIDY3LCA3NSwgODQsIDY1LCA3MywgMjA0LCA2NywgNzksIDY1LCA4MywgODQsIDY5LCA4MiwgMTI4LCA2NywgNzksIAorICAgIDY1LCAxMjgsIDY3LCA3OSwgMTI4LCA2NywgNzcsIDEyOCwgNjcsIDIwNSwgNjcsIDc2LCA4NSwgODMsIDg0LCA2OSwgMjEwLCAKKyAgICA2NywgNzYsIDg1LCA2NiwgODMsIDEyOCwgNjcsIDc2LCA4NSwgNjYsIDQ1LCA4MywgODAsIDc5LCA3NSwgNjksIDE5NiwgNjcsIAorICAgIDc2LCA4NSwgNjYsIDEyOCwgNjcsIDc2LCA4NSwgMTk0LCA2NywgNzYsIDc5LCA4NiwgNjksIDgyLCAxMjgsIDY3LCA3NiwgCisgICAgNzksIDg1LCA2OCwgMTI4LCA2NywgNzYsIDc5LCA4NSwgMTk2LCA2NywgNzYsIDc5LCA4NCwgNzIsIDY5LCA4MywgMTI4LCAKKyAgICA2NywgNzYsIDc5LCA4NCwgNzIsIDEyOCwgNjcsIDc2LCA3OSwgODMsIDY5LCA4NCwgMTI4LCA2NywgNzYsIDc5LCA4MywgNjksIAorICAgIDc4LCA2OSwgODMsIDgzLCAxMjgsIDY3LCA3NiwgNzksIDgzLCA2OSwgNjgsIDEyOCwgNjcsIDc2LCA3OSwgODMsIDE5NywgCisgICAgNjcsIDc2LCA3OSwgNjcsIDc1LCA4NywgNzMsIDgzLCAxOTcsIDY3LCA3NiwgNzksIDY3LCAyMDMsIDY3LCA3NiwgNzMsIDg2LCAKKyAgICA3MywgODMsIDEyOCwgNjcsIDc2LCA3MywgODAsIDY2LCA3OSwgNjUsIDgyLCA2OCwgMTI4LCA2NywgNzYsIDczLCA3OCwgNzUsIAorICAgIDczLCA3OCwgMTk5LCA2NywgNzYsIDczLCA3OCwgNzEsIDczLCA3OCwgMTk5LCA2NywgNzYsIDczLCA3NywgNjUsIDY3LCA4NSwgCisgICAgODMsIDEyOCwgNjcsIDc2LCA3MywgNzAsIDcwLCAxMjgsIDY3LCA3NiwgNzMsIDY3LCA3NSwgMTI4LCA2NywgNzYsIDY5LCAKKyAgICA3MCwgNDUsIDUwLCAxMjgsIDY3LCA3NiwgNjksIDcwLCA0NSwgNDksIDEyOCwgNjcsIDc2LCA2OSwgNzAsIDEyOCwgNjcsIAorICAgIDc2LCA2OSwgMTk4LCA2NywgNzYsIDY5LCA2NSwgODYsIDY5LCA4MiwgMTI4LCA2NywgNzYsIDY5LCA2NSwgMjEwLCA2NywgCisgICAgNzYsIDY1LCA4NywgMTI4LCA2NywgNzYsIDY1LCA4MCwgODAsIDczLCA3OCwgMTk5LCA2NywgNzYsIDY1LCA4MCwgODAsIDY5LCAKKyAgICAyMTAsIDY3LCA3NiwgNjUsIDc4LCAxMjgsIDY3LCA3NiwgNjUsIDczLCA3NywgMTI4LCA2NywgNzYsIDEyOCwgNjcsIDczLCAKKyAgICA4OCwgMTI4LCA2NywgNzMsIDg2LCA3MywgNzYsIDczLCA2NSwgNzgsIDEyOCwgNjcsIDczLCA4NCwgODksIDgzLCA2NywgNjUsIAorICAgIDgwLCAxOTcsIDY3LCA3MywgODQsIDEyOCwgNjcsIDczLCA4MiwgNjcsIDg1LCAyMTEsIDY3LCA3MywgODIsIDY3LCA4NSwgCisgICAgNzcsIDcwLCA3NiwgNjksIDg4LCAxMjgsIDY3LCA3MywgODIsIDY3LCA4NSwgNzcsIDcwLCA3NiwgNjksIDIxNiwgNjcsIDczLCAKKyAgICA4MiwgNjcsIDg1LCA3NiwgNjUsIDg0LCA3MywgNzksIDIwNiwgNjcsIDczLCA4MiwgNjcsIDc2LCA2OSwgODMsIDEyOCwgNjcsIAorICAgIDczLCA4MiwgNjcsIDc2LCA2OSwgMTI4LCA2NywgNzMsIDgwLCAxMjgsIDY3LCA3MywgNzgsIDc4LCA2NSwgNjYsIDY1LCA4MiwgCisgICAgMTI4LCA2NywgNzMsIDc4LCA2OSwgNzcsIDY1LCAxMjgsIDY3LCA3MywgNzMsIDEyOCwgNjcsIDczLCA2OSwgODgsIDEyOCwgCisgICAgNjcsIDczLCA2OSwgODUsIDY3LCA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgNjcsIAorICAgIDczLCA2OSwgODUsIDY3LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDY3LCA3MywgNjksIDg1LCA2NywgNDUsIDczLCAKKyAgICA2OSwgODUsIDc4LCA3MSwgMTI4LCA2NywgNzMsIDY5LCA4NSwgMTk1LCA2NywgNzMsIDY5LCA4NCwgMTI4LCA2NywgNzMsIAorICAgIDY5LCA4MCwgMTI4LCA2NywgNzMsIDY5LCAxMjgsIDY3LCA3MiwgODksIDg4LCAxMjgsIDY3LCA3MiwgODksIDg0LCAxMjgsIAorICAgIDY3LCA3MiwgODksIDgyLCA4OCwgMTI4LCA2NywgNzIsIDg5LCA4MiwgMTI4LCA2NywgNzIsIDg5LCA4MCwgMTI4LCA2NywgCisgICAgNzIsIDg1LCA4OCwgMTI4LCA2NywgNzIsIDg1LCA4MiwgODgsIDEyOCwgNjcsIDcyLCA4NSwgODIsIDY3LCA3MiwgMTI4LCAKKyAgICA2NywgNzIsIDg1LCA4MiwgMTI4LCA2NywgNzIsIDg1LCA4MCwgMTI4LCA2NywgNzIsIDg1LCA3OSwgODgsIDEyOCwgNjcsIAorICAgIDcyLCA4NSwgNzksIDg0LCAxMjgsIDY3LCA3MiwgODUsIDc5LCA4MCwgMTI4LCA2NywgNzIsIDg1LCA3OSwgMTI4LCA2NywgCisgICAgNzIsIDg1LCA3NiwgNjUsIDEyOCwgNjcsIDcyLCA4NSwgMTI4LCA2NywgNzIsIDgyLCA4OSwgODMsIDY1LCA3OCwgODQsIDcyLCAKKyAgICA2OSwgNzcsIDg1LCA3NywgMTI4LCA2NywgNzIsIDgyLCA3OSwgNzgsIDc5LCA4NSwgMTI4LCA2NywgNzIsIDgyLCA3OSwgNzgsIAorICAgIDc5LCA3OCwgMTI4LCA2NywgNzIsIDgyLCA3OSwgNzcsIDE5MywgNjcsIDcyLCA4MiwgNzksIDE5MywgNjcsIDcyLCA4MiwgCisgICAgNzMsIDg2LCA3MywgMTI4LCA2NywgNzIsIDgyLCA3MywgODMsIDg0LCA3NywgNjUsIDgzLCAxMjgsIDY3LCA3MiwgODIsIDczLCAKKyAgICA4MywgODQsIDc3LCA2NSwgMjExLCA2NywgNzIsIDc5LCA4OCwgMTI4LCA2NywgNzIsIDc5LCA4NCwgMTI4LCA2NywgNzIsIAorICAgIDc5LCA4MiwgNjksIDg2LCA3NywgMTkzLCA2NywgNzIsIDc5LCA4MCwgMTI4LCA2NywgNzIsIDc5LCA3NSwgNjksIDEyOCwgCisgICAgNjcsIDcyLCA3OSwgNjksIDEyOCwgNjcsIDcyLCA3OSwgNjcsIDc5LCA3NiwgNjUsIDg0LCAxOTcsIDY3LCA3MiwgNzksIDY1LCAKICAgICAxMjgsIDY3LCA3MiwgMjA3LCA2NywgNzIsIDczLCA4NCwgODUsIDY5LCA4NSwgNzcsIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIAogICAgIDczLCA3OSwgODMsIDEyOCwgNjcsIDcyLCA3MywgODQsIDg1LCA2OSwgODUsIDc3LCA4MywgODMsIDY1LCA3OCwgNzEsIDY3LCAKICAgICA3MywgNjksIDg1LCA2NywgMTI4LCA2NywgNzIsIDczLCA4NCwgODUsIDY5LCA4NSwgNzcsIDgzLCA3MywgNzksIDgzLCAxMjgsIApAQCAtNDA1MSw5MDc1ICs0MjE1LDk2MDggQEAKICAgICAyMTEsIDY3LCA3MiwgNjksIDgyLCA4MiwgMjE3LCA2NywgNzIsIDY5LCA4MiwgODIsIDczLCA2OSwgODMsIDEyOCwgNjcsIAogICAgIDcyLCA2OSwgODEsIDg1LCA2OSwgODIsIDY5LCAxOTYsIDY3LCA3MiwgNjksIDgwLCAxMjgsIDY3LCA3MiwgNjksIDIwNiwgCiAgICAgNjcsIDcyLCA2OSwgNzMsIDc4LCA2NSwgODAsIDEyOCwgNjcsIDcyLCA2OSwgNzMsIDc1LCA3MiwgNjksIDczLCAxMjgsIDY3LCAKLSAgICA3MiwgNjksIDY5LCA4MiwgNzMsIDc4LCAxOTksIDY3LCA3MiwgNjksIDY5LCAxMjgsIDY3LCA3MiwgNjksIDY3LCA3NSwgCi0gICAgMTI4LCA2NywgNzIsIDY5LCA2NywgMjAzLCA2NywgNzIsIDE5NywgNjcsIDcyLCA2NSwgODgsIDEyOCwgNjcsIDcyLCA2NSwgCi0gICAgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA2NywgNzIsIDY1LCA4NCwgODQsIDY1LCA4NywgNjUsIDEyOCwgNjcsIDcyLCAKLSAgICA2NSwgODQsIDEyOCwgNjcsIDcyLCA2NSwgODIsIDg0LCAxMjgsIDY3LCA3MiwgNjUsIDgyLCAyMTIsIDY3LCA3MiwgNjUsIAotICAgIDgyLCA3MywgNzksIDg0LCAxMjgsIDY3LCA3MiwgNjUsIDgyLCA3MywgNzksIDIxMiwgNjcsIDcyLCA2NSwgODIsIDY1LCA2NywgCi0gICAgODQsIDY5LCA4MiwgODMsIDEyOCwgNjcsIDcyLCA2NSwgODIsIDY1LCA2NywgODQsIDY5LCA4MiwgMTI4LCA2NywgNzIsIDY1LCAKLSAgICA4MiwgMTI4LCA2NywgNzIsIDY1LCA4MCwgMTI4LCA2NywgNzIsIDY1LCA3OCwgNzEsIDEyOCwgNjcsIDcyLCA2NSwgNzgsIAotICAgIDEyOCwgNjcsIDcyLCA2NSwgNzcsIDc1LCA3OSwgMTI4LCA2NywgNzIsIDY1LCA3NywgNzMsIDc2LCA3OSwgNzgsIDEyOCwgCi0gICAgNjcsIDcyLCA2NSwgNzcsIDczLCA3NiwgNzMsIDEyOCwgNjcsIDcyLCA2NSwgNzMsIDgyLCAxMjgsIDY3LCA3MiwgNjUsIDczLCAKLSAgICA3OCwgODMsIDEyOCwgNjcsIDcyLCA2NSwgNjgsIDY1LCAxMjgsIDY3LCA3MiwgNjUsIDE5NiwgNjcsIDcyLCA2NSwgNjUsIAotICAgIDEyOCwgNjcsIDY5LCA4OCwgMTI4LCA2NywgNjksIDgyLCA2OSwgODMsIDEyOCwgNjcsIDY5LCA4MiwgNjksIDc3LCA3OSwgCi0gICAgNzgsIDg5LCAxMjgsIDY3LCA2OSwgODIsIDY5LCA3NSwgMTI4LCA2NywgNjksIDgyLCA0NSwgODcsIDY1LCAxMjgsIDY3LCAKLSAgICA2OSwgODAsIDEyOCwgNjcsIDY5LCA3OSwgNzgsIDcxLCA2NywgNzIsIDczLCA2OSwgODUsIDc3LCA4MywgODMsIDY1LCA3OCwgCi0gICAgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDY3LCA2OSwgNzksIDc4LCA3MSwgNjcsIDcyLCA3MywgNjksIDg1LCA3NywgODMsIAotICAgIDgzLCA2NSwgNzgsIDcxLCA2NywgNzMsIDY5LCA4NSwgNjcsIDEyOCwgNjcsIDY5LCA3OSwgNzgsIDcxLCA2NywgNzIsIDczLCAKLSAgICA2OSwgODUsIDc3LCA4MywgNzMsIDc5LCA4MywgMTI4LCA2NywgNjksIDc5LCA3OCwgNzEsIDY3LCA3MiwgNzMsIDY5LCA4NSwgCi0gICAgNzcsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA2NywgNjksIDc5LCA3OCwgNzEsIDY3LCA3MiwgNzMsIDY5LCA4NSwgNzcsIAotICAgIDY3LCA3MiwgNzMsIDY5LCA4NSwgNjcsIDcyLCAxMjgsIDY3LCA2OSwgNzgsIDg0LCA4NSwgODIsIDczLCA2NSwgMjA0LCA2NywgCi0gICAgNjksIDc4LCA4NCwgODIsIDY5LCA3NiwgNzMsIDc4LCAxOTcsIDY3LCA2OSwgNzgsIDg0LCA4MiwgNjksIDE5NiwgNjcsIDY5LCAKLSAgICA3OCwgODQsIDgyLCA2OSwgMTI4LCA2NywgNjksIDc4LCA4NCwgODIsIDE5NywgNjcsIDY5LCA3OCwgMTI4LCA2NywgNjksIAotICAgIDc2LCA4MywgNzMsIDg1LCA4MywgMTI4LCA2NywgNjksIDc2LCA2OSwgNjYsIDgyLCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgCi0gICAgNjcsIDY5LCA3MywgODIsIDg0LCAxMjgsIDY3LCA2OSwgNzMsIDc2LCA3MywgNzgsIDcxLCAxMjgsIDY3LCA2OSwgNjksIAotICAgIDEyOCwgNjcsIDY5LCA2OCwgNzMsIDc2LCA3NiwgNjUsIDEyOCwgNjcsIDY5LCA2OCwgNzMsIDc2LCA3NiwgMTkzLCA2NywgCi0gICAgNjksIDY4LCAyMDEsIDY3LCA2OSwgNjcsIDY5LCA3NSwgMTI4LCA2NywgNjksIDY3LCA2NSwgNzUsIDEyOCwgNjcsIDY5LCAKLSAgICA2NywgNjUsIDIwMywgNjcsIDY5LCA2NSwgNzYsIDY3LCAxMjgsIDY3LCA2NywgODUsIDEyOCwgNjcsIDY3LCA3OSwgMTI4LCAKLSAgICA2NywgNjcsIDczLCAxMjgsIDY3LCA2NywgNzIsIDg1LCAxMjgsIDY3LCA2NywgNzIsIDc5LCAxMjgsIDY3LCA2NywgNzIsIAotICAgIDczLCAxMjgsIDY3LCA2NywgNzIsIDcyLCA4NSwgMTI4LCA2NywgNjcsIDcyLCA3MiwgNzksIDEyOCwgNjcsIDY3LCA3MiwgCi0gICAgNzIsIDczLCAxMjgsIDY3LCA2NywgNzIsIDcyLCA2OSwgNjksIDEyOCwgNjcsIDY3LCA3MiwgNzIsIDY5LCAxMjgsIDY3LCAKLSAgICA2NywgNzIsIDcyLCA2NSwgNjUsIDEyOCwgNjcsIDY3LCA3MiwgNzIsIDY1LCAxMjgsIDY3LCA2NywgNzIsIDY5LCA2OSwgCisgICAgNzIsIDY5LCA3MywgNzUsIDcyLCA2NSwgNzgsIDEyOCwgNjcsIDcyLCA2OSwgNjksIDgyLCA3MywgNzgsIDE5OSwgNjcsIDcyLCAKKyAgICA2OSwgNjksIDEyOCwgNjcsIDcyLCA2OSwgNjcsIDc1LCAxMjgsIDY3LCA3MiwgNjksIDY3LCAyMDMsIDY3LCA3MiwgMTk3LCAKKyAgICA2NywgNzIsIDY1LCA4OCwgMTI4LCA2NywgNzIsIDY1LCA4NiwgNzMsIDg5LCA2NSwgNzgsIDczLCAxMjgsIDY3LCA3MiwgNjUsIAorICAgIDg0LCA4NCwgNjUsIDg3LCA2NSwgMTI4LCA2NywgNzIsIDY1LCA4NCwgMTI4LCA2NywgNzIsIDY1LCA4MiwgODQsIDEyOCwgCisgICAgNjcsIDcyLCA2NSwgODIsIDIxMiwgNjcsIDcyLCA2NSwgODIsIDczLCA3OSwgODQsIDEyOCwgNjcsIDcyLCA2NSwgODIsIDczLCAKKyAgICA3OSwgMjEyLCA2NywgNzIsIDY1LCA4MiwgNjUsIDY3LCA4NCwgNjksIDgyLCA4MywgMTI4LCA2NywgNzIsIDY1LCA4MiwgNjUsIAorICAgIDY3LCA4NCwgNjksIDgyLCAxMjgsIDY3LCA3MiwgNjUsIDgyLCAxMjgsIDY3LCA3MiwgNjUsIDgwLCAxMjgsIDY3LCA3MiwgCisgICAgNjUsIDc4LCA3MSwgMTI4LCA2NywgNzIsIDY1LCA3OCwgMTI4LCA2NywgNzIsIDY1LCA3NywgNzUsIDc5LCAxMjgsIDY3LCAKKyAgICA3MiwgNjUsIDc3LCA3MywgNzYsIDc5LCA3OCwgMTI4LCA2NywgNzIsIDY1LCA3NywgNzMsIDc2LCA3MywgMTI4LCA2NywgNzIsIAorICAgIDY1LCA3NSwgNzcsIDE5MywgNjcsIDcyLCA2NSwgNzMsIDgyLCAxMjgsIDY3LCA3MiwgNjUsIDczLCA3OCwgODMsIDEyOCwgCisgICAgNjcsIDcyLCA2NSwgNjgsIDY1LCAxMjgsIDY3LCA3MiwgNjUsIDE5NiwgNjcsIDcyLCA2NSwgNjUsIDEyOCwgNjcsIDcxLCAKKyAgICA3NCwgMTI4LCA2NywgNjksIDg4LCAxMjgsIDY3LCA2OSwgODIsIDY5LCA4MywgMTI4LCA2NywgNjksIDgyLCA2OSwgNzcsIAorICAgIDc5LCA3OCwgODksIDEyOCwgNjcsIDY5LCA4MiwgNjksIDc1LCAxMjgsIDY3LCA2OSwgODIsIDQ1LCA4NywgNjUsIDEyOCwgCisgICAgNjcsIDY5LCA4MCwgMTI4LCA2NywgNjksIDc5LCA3OCwgNzEsIDY3LCA3MiwgNzMsIDY5LCA4NSwgNzcsIDgzLCA4MywgNjUsIAorICAgIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIDEyOCwgNjcsIDY5LCA3OSwgNzgsIDcxLCA2NywgNzIsIDczLCA2OSwgODUsIDc3LCAKKyAgICA4MywgODMsIDY1LCA3OCwgNzEsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA2NywgNjksIDc5LCA3OCwgNzEsIDY3LCA3MiwgCisgICAgNzMsIDY5LCA4NSwgNzcsIDgzLCA3MywgNzksIDgzLCAxMjgsIDY3LCA2OSwgNzksIDc4LCA3MSwgNjcsIDcyLCA3MywgNjksIAorICAgIDg1LCA3NywgNjcsIDczLCA2OSwgODUsIDY3LCAxMjgsIDY3LCA2OSwgNzksIDc4LCA3MSwgNjcsIDcyLCA3MywgNjksIDg1LCAKKyAgICA3NywgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgNjcsIDY5LCA3OCwgODQsIDg1LCA4MiwgNzMsIDY1LCAyMDQsIAorICAgIDY3LCA2OSwgNzgsIDg0LCA4MiwgNjksIDc2LCA3MywgNzgsIDE5NywgNjcsIDY5LCA3OCwgODQsIDgyLCA2OSwgMTk2LCA2NywgCisgICAgNjksIDc4LCA4NCwgODIsIDY5LCAxMjgsIDY3LCA2OSwgNzgsIDg0LCA4MiwgMTk3LCA2NywgNjksIDc4LCAxMjgsIDY3LCAKKyAgICA2OSwgNzYsIDgzLCA3MywgODUsIDgzLCAxMjgsIDY3LCA2OSwgNzYsIDY5LCA2NiwgODIsIDY1LCA4NCwgNzMsIDc5LCA3OCwgCisgICAgMTI4LCA2NywgNjksIDczLCA4MiwgODQsIDEyOCwgNjcsIDY5LCA3MywgNzYsIDczLCA3OCwgNzEsIDEyOCwgNjcsIDY5LCAKKyAgICA2OSwgMTI4LCA2NywgNjksIDY4LCA3MywgNzYsIDc2LCA2NSwgMTI4LCA2NywgNjksIDY4LCA3MywgNzYsIDc2LCAxOTMsIAorICAgIDY3LCA2OSwgNjgsIDIwMSwgNjcsIDY5LCA2NywgNjksIDc1LCAxMjgsIDY3LCA2OSwgNjcsIDY1LCA3NSwgMTI4LCA2NywgCisgICAgNjksIDY3LCA2NSwgMjAzLCA2NywgNjksIDY1LCA3NiwgNjcsIDEyOCwgNjcsIDY3LCA4NSwgMTI4LCA2NywgNjcsIDc5LCAKKyAgICAxMjgsIDY3LCA2NywgNzMsIDEyOCwgNjcsIDY3LCA3MiwgODUsIDEyOCwgNjcsIDY3LCA3MiwgNzksIDEyOCwgNjcsIDY3LCAKKyAgICA3MiwgNzMsIDEyOCwgNjcsIDY3LCA3MiwgNzIsIDg1LCAxMjgsIDY3LCA2NywgNzIsIDcyLCA3OSwgMTI4LCA2NywgNjcsIAorICAgIDcyLCA3MiwgNzMsIDEyOCwgNjcsIDY3LCA3MiwgNzIsIDY5LCA2OSwgMTI4LCA2NywgNjcsIDcyLCA3MiwgNjksIDEyOCwgCisgICAgNjcsIDY3LCA3MiwgNzIsIDY1LCA2NSwgMTI4LCA2NywgNjcsIDcyLCA3MiwgNjUsIDEyOCwgNjcsIDY3LCA3MiwgNjksIDY5LCAKICAgICAxMjgsIDY3LCA2NywgNzIsIDY5LCAxMjgsIDY3LCA2NywgNzIsIDY1LCA2NSwgMTI4LCA2NywgNjcsIDcyLCA2NSwgMTI4LCAKLSAgICA2NywgNjcsIDY5LCA2OSwgMTI4LCA2NywgNjcsIDY5LCAxMjgsIDY3LCA2NywgNjUsIDY1LCAxMjgsIDY3LCA2NywgNjUsIAotICAgIDEyOCwgNjcsIDY1LCA4OSwgNzgsIDEyOCwgNjcsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNjcsIDY1LCA4OCwgCi0gICAgMTI4LCA2NywgNjUsIDg2LCA2OSwgMTI4LCA2NywgNjUsIDg1LCA4NCwgNzMsIDc5LCAyMDYsIDY3LCA2NSwgODUsIDc2LCAKLSAgICA2OCwgODIsIDc5LCA3OCwgMTI4LCA2NywgNjUsIDg1LCA2OCwgNjUsIDEyOCwgNjcsIDY1LCA4NCwgNjUsIDg3LCA2NSwgCi0gICAgMTI4LCA2NywgNjUsIDg0LCAxMjgsIDY3LCA2NSwgMjEyLCA2NywgNjUsIDgzLCA4NCwgNzYsIDY5LCAxMjgsIDY3LCA2NSwgCi0gICAgODIsIDg5LCA4MywgODQsIDczLCA2NSwgMjA2LCA2NywgNjUsIDgyLCA4NCwgMTI4LCA2NywgNjUsIDgyLCAyMTEsIDY3LCAKLSAgICA2NSwgODIsIDgyLCA3MywgNjUsIDcxLCAxOTcsIDY3LCA2NSwgODIsIDgwLCA2OSwgNzgsIDg0LCA4MiwgMjE3LCA2NywgNjUsIAotICAgIDgyLCAyMDgsIDY3LCA2NSwgODIsIDc5LCA4NSwgODMsIDY5LCAyMDQsIDY3LCA2NSwgODIsIDc5LCA3OCwgMTI4LCA2NywgCi0gICAgNjUsIDgyLCA3OSwgMjA2LCA2NywgNjUsIDgyLCA3MywgMjAzLCA2NywgNjUsIDgyLCA3MywgNjUsIDIwNiwgNjcsIDY1LCAKLSAgICA4MiwgNjksIDg0LCAxMjgsIDY3LCA2NSwgODIsIDY5LCAyMTIsIDY3LCA2NSwgODIsIDE5NywgNjcsIDY1LCA4MiwgNjgsIAotICAgIDgzLCAxMjgsIDY3LCA2NSwgODIsIDY4LCAxMjgsIDY3LCA2NSwgODIsIDE5NiwgNjcsIDY1LCA4MiwgMTI4LCA2NywgNjUsIAotICAgIDIxMCwgNjcsIDY1LCA4MCwgODUsIDIxMiwgNjcsIDY1LCA4MCwgODQsIDczLCA4NiwgNjksIDEyOCwgNjcsIDY1LCA4MCwgCi0gICAgODIsIDczLCA2NywgNzksIDgyLCA3OCwgMTI4LCA2NywgNjUsIDgwLCA3OSwgMTI4LCA2NywgNjUsIDgwLCA3MywgODQsIDY1LCAKLSAgICA3NiwgMTI4LCA2NywgNjUsIDc4LCA4NCwgNzMsIDc2LCA3NiwgNjUsIDg0LCA3MywgNzksIDIwNiwgNjcsIDY1LCA3OCwgCi0gICAgMTk5LCA2NywgNjUsIDc4LCA2OCwgODksIDEyOCwgNjcsIDY1LCA3OCwgNjgsIDgyLCA2NSwgNjYsIDczLCA3OCwgNjgsIDg1LCAKLSAgICAxMjgsIDY3LCA2NSwgNzgsIDY4LCA4MiwgNjUsIDY2LCA3MywgNzgsIDY4LCAyMTMsIDY3LCA2NSwgNzgsIDY4LCA4MiwgNjUsIAotICAgIDEyOCwgNjcsIDY1LCA3OCwgNjgsIDgyLCAxOTMsIDY3LCA2NSwgNzgsIDY3LCA2OSwgODIsIDEyOCwgNjcsIDY1LCA3OCwgCi0gICAgNjcsIDY5LCA3NiwgNzYsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY3LCA2NSwgNzgsIDY3LCA2OSwgNzYsIDEyOCwgNjcsIDY1LCAKLSAgICA3OCwgNjcsIDY5LCAyMDQsIDY3LCA2NSwgNzgsIDEyOCwgNjcsIDY1LCA3NywgNzgsIDg1LCAxOTUsIDY3LCA2NSwgNzcsIAotICAgIDY5LCA4MiwgNjUsIDEyOCwgNjcsIDY1LCA3NywgNjksIDc2LCAxMjgsIDY3LCA2NSwgNzYsIDg5LCA2NSwgMTI4LCA2NywgCi0gICAgNjUsIDc2LCA4OSwgMTkzLCA2NywgNjUsIDc2LCA4OCwgMTI4LCA2NywgNjUsIDc2LCA3NiwgMTI4LCA2NywgNjUsIDc2LCAKLSAgICA2OSwgNzgsIDY4LCA2NSwgODIsIDEyOCwgNjcsIDY1LCA3NiwgNjcsIDEyOCwgNjcsIDY1LCA3NSwgODIsIDY1LCAxMjgsIAotICAgIDY3LCA2NSwgNzUsIDE5NywgNjcsIDY1LCA2OSwgODMsIDg1LCA4MiwgNjUsIDEyOCwgNjcsIDY1LCA2OCwgODUsIDY3LCA2OSwgCi0gICAgODUsIDgzLCAxMjgsIDY3LCA2NSwgNjgsIDE5MywgNjcsIDY1LCA2NywgODQsIDg1LCA4MywgMTI4LCA2NywgNjUsIDY2LCAKLSAgICA3NiwgNjksIDg3LCA2NSwgODksIDEyOCwgNjcsIDY1LCA2NiwgNjYsIDY1LCA3MSwgNjksIDQ1LCA4NCwgODIsIDY5LCA2OSwgCi0gICAgMTI4LCA2NywgNjUsIDY1LCA3OCwgNzEsIDEyOCwgNjcsIDY1LCA2NSwgNzMsIDEyOCwgNjcsIDE5MywgNjcsIDQ4LCA1MCwgCi0gICAgNTIsIDEyOCwgNjcsIDQ4LCA1MCwgNTEsIDEyOCwgNjcsIDQ4LCA1MCwgNTAsIDEyOCwgNjcsIDQ4LCA1MCwgNDksIDEyOCwgCi0gICAgNjcsIDQ4LCA1MCwgNDgsIDEyOCwgNjcsIDQ4LCA0OSwgNTcsIDEyOCwgNjcsIDQ4LCA0OSwgNTYsIDEyOCwgNjcsIDQ4LCAKLSAgICA0OSwgNTUsIDEyOCwgNjcsIDQ4LCA0OSwgNTQsIDEyOCwgNjcsIDQ4LCA0OSwgNTMsIDEyOCwgNjcsIDQ4LCA0OSwgNTIsIAotICAgIDEyOCwgNjcsIDQ4LCA0OSwgNTEsIDEyOCwgNjcsIDQ4LCA0OSwgNTAsIDEyOCwgNjcsIDQ4LCA0OSwgNDksIDEyOCwgNjcsIAotICAgIDQ4LCA0OSwgNDgsIDY1LCAxMjgsIDY3LCA0OCwgNDksIDQ4LCAxMjgsIDY3LCA0OCwgNDgsIDU3LCAxMjgsIDY3LCA0OCwgCi0gICAgNDgsIDU2LCAxMjgsIDY3LCA0OCwgNDgsIDU1LCAxMjgsIDY3LCA0OCwgNDgsIDU0LCAxMjgsIDY3LCA0OCwgNDgsIDUzLCAKLSAgICAxMjgsIDY3LCA0OCwgNDgsIDUyLCAxMjgsIDY3LCA0OCwgNDgsIDUxLCAxMjgsIDY3LCA0OCwgNDgsIDUwLCA2NywgMTI4LCAKLSAgICA2NywgNDgsIDQ4LCA1MCwgNjYsIDEyOCwgNjcsIDQ4LCA0OCwgNTAsIDY1LCAxMjgsIDY3LCA0OCwgNDgsIDUwLCAxMjgsIAotICAgIDY3LCA0OCwgNDgsIDQ5LCAxMjgsIDY3LCA0NSwgODMsIDczLCA3NywgODAsIDc2LCA3MywgNzAsIDczLCA2OSwgMTk2LCA2NywgCi0gICAgNDUsIDUxLCA1NywgMTI4LCA2NywgNDUsIDQ5LCA1NiwgMTI4LCA2NiwgOTAsIDg1LCA3OCwgMTk5LCA2NiwgOTAsIDcyLCAKLSAgICAyMDEsIDY2LCA4OSwgNjksIDc2LCA3OSwgODIsIDg1LCA4MywgODMsIDczLCA2NSwgNzgsIDQ1LCA4NSwgNzUsIDgyLCA2NSwgCi0gICAgNzMsIDc4LCA3MywgNjUsIDIwNiwgNjYsIDg4LCA3MSwgMTI4LCA2NiwgODcsIDczLCAxMjgsIDY2LCA4NywgNjksIDY5LCAKLSAgICAxMjgsIDY2LCA4NywgNjksIDEyOCwgNjYsIDg3LCA2NSwgMTI4LCA2NiwgODUsIDg1LCA3NywgNzMsIDgzLCA3MiwgMTI4LCAKLSAgICA2NiwgODUsIDg0LCA4NCwgNzksIDc4LCAxMjgsIDY2LCA4NSwgMjEyLCA2NiwgODUsIDgzLCA4NCwgMjExLCA2NiwgODUsIAotICAgIDgzLCAyMTIsIDY2LCA4NSwgODMsIDgzLCA4OSwgNjksIDgyLCA4NSwgMTI4LCA2NiwgODUsIDIxMSwgNjYsIDg1LCA4MiwgCi0gICAgMjEzLCA2NiwgODUsIDgyLCA1MCwgMTI4LCA2NiwgODUsIDIxMCwgNjYsIDg1LCA3OSwgODgsIDEyOCwgNjYsIDg1LCA3OSwgCi0gICAgODAsIDEyOCwgNjYsIDg1LCA3OCwgNzgsIDIxNywgNjYsIDg1LCA3OCwgNzEsIDEyOCwgNjYsIDg1LCA3NywgODAsIDIxNywgCi0gICAgNjYsIDg1LCA3NiwgODUsIDcxLCAxMjgsIDY2LCA4NSwgNzYsIDg1LCAxOTksIDY2LCA4NSwgNzYsIDc2LCA4MywgNjksIDg5LCAKLSAgICA2OSwgMTI4LCA2NiwgODUsIDc2LCA3NiwgMjExLCA2NiwgODUsIDc2LCA3NiwgNjksIDg0LCAxMjgsIDY2LCA4NSwgNzYsIAotICAgIDc2LCA2OSwgMjEyLCA2NiwgODUsIDc2LCA3NiwgMTI4LCA2NiwgODUsIDc2LCA2NiwgMTI4LCA2NiwgODUsIDc1LCA4OSwgCi0gICAgMTI4LCA2NiwgODUsIDczLCA3NiwgNjgsIDczLCA3OCwgNzEsIDgzLCAxMjgsIDY2LCA4NSwgNzMsIDc2LCA2OCwgNzMsIDc4LCAKLSAgICA3MSwgMTI4LCA2NiwgODUsIDcyLCA3MywgMTk2LCA2NiwgODUsIDcxLCA3MywgNzgsIDY5LCA4MywgMTk3LCA2NiwgODUsIAotICAgIDcxLCAxMjgsIDY2LCA4NSwgNzAsIDcwLCA2NSwgNzYsIDc5LCAxMjgsIDY2LCA4NSwgNjcsIDc1LCA3NiwgNjksIDEyOCwgCi0gICAgNjYsIDgzLCA4NCwgNjUsIDgyLCAxMjgsIDY2LCA4MywgNzUsIDg1LCAyMTAsIDY2LCA4MywgNzUsIDY1LCAxNzMsIDY2LCAKLSAgICA4MywgNjgsIDg1LCAyMTEsIDY2LCA4MiwgODUsIDgzLCA3MiwgMTI4LCA2NiwgODIsIDg1LCA4MywgMjAwLCA2NiwgODIsIAotICAgIDc5LCA3OCwgOTAsIDY5LCAxMjgsIDY2LCA4MiwgNzksIDc1LCA2OSwgMjA2LCA2NiwgODIsIDc5LCA2NSwgMTk2LCA2NiwgCi0gICAgODIsIDczLCA4MywgODQsIDc2LCA2OSwgMTI4LCA2NiwgODIsIDczLCA3MSwgNzIsIDg0LCA3OCwgNjksIDgzLCAyMTEsIDY2LCAKLSAgICA4MiwgNzMsIDY5LCA3MCwgNjcsIDY1LCA4MywgNjksIDEyOCwgNjYsIDgyLCA3MywgNjgsIDcxLCAxOTcsIDY2LCA4MiwgNzMsIAotICAgIDY4LCAxOTcsIDY2LCA4MiwgNzMsIDY3LCA3NSwgMTI4LCA2NiwgODIsIDY5LCA4NiwgNzMsIDgzLCAxMjgsIDY2LCA4MiwgCi0gICAgNjksIDg2LCA2OSwgNDUsIDc3LCA2NSwgNjcsIDgyLCA3OSwgNzgsIDEyOCwgNjYsIDgyLCA2OSwgODYsIDE5NywgNjYsIDgyLCAKLSAgICA2OSwgNjUsIDg0LCAyMDAsIDY2LCA4MiwgNjksIDY1LCA3NSwgODQsIDcyLCA4MiwgNzksIDg1LCA3MSwgNzIsIDEyOCwgNjYsIAotICAgIDgyLCA2OSwgNjUsIDY4LCAxMjgsIDY2LCA4MiwgNjgsIDE5MywgNjYsIDgyLCA2NSwgNzgsIDY3LCA3MiwgNzMsIDc4LCAKLSAgICAxOTksIDY2LCA4MiwgNjUsIDc4LCA2NywgNzIsIDEyOCwgNjYsIDgyLCA2NSwgNzgsIDY3LCAyMDAsIDY2LCA4MiwgNjUsIAotICAgIDc1LCA2NywgNjksIDg0LCAxMjgsIDY2LCA4MiwgNjUsIDY3LCA3NSwgNjksIDg0LCA2OSwgMTk2LCA2NiwgODIsIDY1LCA2NywgCi0gICAgNzUsIDY5LCAyMTIsIDY2LCA4MiwgNjUsIDY3LCA2OSwgMTI4LCA2NiwgODEsIDEyOCwgNjYsIDc5LCA4OSwgMTI4LCA2NiwgCi0gICAgNzksIDg3LCA4NCwgNzMsIDY5LCAxMjgsIDY2LCA3OSwgODcsIDg0LCA3MywgMTk3LCA2NiwgNzksIDg3LCA3NiwgNzMsIDc4LCAKLSAgICA3MSwgMTI4LCA2NiwgNzksIDg3LCA3NiwgMTI4LCA2NiwgNzksIDg3LCA3MywgNzgsIDE5OSwgNjYsIDc5LCAyMTUsIDY2LCAKLSAgICA3OSwgODUsIDgxLCA4NSwgNjksIDg0LCAxMjgsIDY2LCA3OSwgODUsIDc4LCA2OCwgNjUsIDgyLCAyMTcsIDY2LCA3OSwgODQsIAotICAgIDg0LCA3OSwgNzcsIDQ1LCA3NiwgNzMsIDcxLCA3MiwgODQsIDY5LCAxOTYsIDY2LCA3OSwgODQsIDg0LCA3OSwgNzcsIDEyOCwgCi0gICAgNjYsIDc5LCA4NCwgODQsIDc5LCAyMDUsIDY2LCA3OSwgODQsIDg0LCA3NiwgNjksIDEyOCwgNjYsIDc5LCA4NCwgODQsIDc2LCAKLSAgICAxOTcsIDY2LCA3OSwgODQsIDIwMCwgNjYsIDc5LCA4MiwgODUsIDg0LCA3OSwgMTI4LCA2NiwgNzksIDgyLCA2NSwgODgsIAotICAgIDQ1LCA1MSwgMTI4LCA2NiwgNzksIDgyLCA2NSwgODgsIDQ1LCA1MCwgMTI4LCA2NiwgNzksIDgyLCA2NSwgODgsIDEyOCwgCi0gICAgNjYsIDc5LCA3OSwgODQsIDgzLCAxMjgsIDY2LCA3OSwgNzksIDg0LCAxMjgsIDY2LCA3OSwgNzksIDc3LCA2OSwgODIsIDY1LCAKLSAgICA3OCwgNzEsIDEyOCwgNjYsIDc5LCA3OSwgNzUsIDgzLCAxMjgsIDY2LCA3OSwgNzksIDc1LCA3NywgNjUsIDgyLCA3NSwgCi0gICAgMTI4LCA2NiwgNzksIDc5LCA3NSwgNzcsIDY1LCA4MiwgMjAzLCA2NiwgNzksIDc4LCA2OSwgMTI4LCA2NiwgNzksIDc3LCAKLSAgICA2NiwgMTI4LCA2NiwgNzksIDc2LCA4NCwgMTI4LCA2NiwgNzksIDc2LCAyMTIsIDY2LCA3OSwgNjgsIDg5LCAxMjgsIDY2LCAKLSAgICA3OSwgNjUsIDgyLCAxMjgsIDY2LCA3OSwgNjUsIDEyOCwgNjYsIDc2LCA4NSwgNjksIDEyOCwgNjYsIDc2LCA4NSwgMTk3LCAKLSAgICA2NiwgNzYsIDc5LCA4NywgNzAsIDczLCA4MywgNzIsIDEyOCwgNjYsIDc2LCA3OSwgODMsIDgzLCA3OSwgNzcsIDEyOCwgNjYsIAotICAgIDc2LCA3OSwgNzksIDY4LCAxMjgsIDY2LCA3NiwgNzksIDc4LCAxOTYsIDY2LCA3NiwgNzksIDY3LCA3NSwgMTI4LCA2NiwgCi0gICAgNzYsIDY5LCA3OCwgNjgsIDY5LCAxOTYsIDY2LCA3NiwgNjUsIDc4LCA3NSwgMTI4LCA2NiwgNzYsIDY1LCA3OCwgMjAzLCAKLSAgICA2NiwgNzYsIDY1LCA2OCwgMTk3LCA2NiwgNzYsIDY1LCA2NywgNzUsIDcwLCA3OSwgNzksIDIxMiwgNjYsIDc2LCA2NSwgNjcsIAotICAgIDc1LCA0NSwgNzYsIDY5LCA4NCwgODQsIDY5LCAyMTAsIDY2LCA3NiwgNjUsIDY3LCA3NSwgNDUsIDcwLCA2OSwgNjUsIDg0LCAKLSAgICA3MiwgNjksIDgyLCA2OSwgMTk2LCA2NiwgNzYsIDY1LCA2NywgNzUsIDEyOCwgNjYsIDc1LCA2NSwgMTczLCA2NiwgNzMsIAotICAgIDg0LCA4NCwgNjksIDgyLCAxMjgsIDY2LCA3MywgODQsIDczLCA3OCwgMTk5LCA2NiwgNzMsIDgzLCA3NywgODUsIDg0LCAKLSAgICAyMDAsIDY2LCA3MywgODMsIDc3LCA3MywgNzYsIDc2LCA2NSwgMjAwLCA2NiwgNzMsIDgzLCA3MiwgNzksIDgwLCAxMjgsIAotICAgIDY2LCA3MywgODMsIDY5LCA2NywgODQsIDczLCA3OCwgMTk5LCA2NiwgNzMsIDgzLCA2NSwgNzIsIDEyOCwgNjYsIDczLCA4MiwgCi0gICAgODUsIDEyOCwgNjYsIDczLCA4MiwgODQsIDcyLCA2OCwgNjUsIDIxNywgNjYsIDczLCA4MiwgNzEsIDY1LCAxMjgsIDY2LCAKLSAgICA3MywgODIsIDY4LCAxMjgsIDY2LCA3MywgNzksIDcyLCA2NSwgOTAsIDY1LCA4MiwgMTk2LCA2NiwgNzMsIDc4LCA3OSwgNjcsIAotICAgIDg1LCA3NiwgNjUsIDIxMCwgNjYsIDczLCA3OCwgNjgsIDczLCA3OCwgMTk5LCA2NiwgNzMsIDc4LCA2OCwgNzMsIDEyOCwgCi0gICAgNjYsIDczLCA3OCwgNjUsIDgyLCAyMTcsIDY2LCA3MywgNzYsIDc2LCA3MywgNjUsIDgyLCA2OCwgODMsIDEyOCwgNjYsIDczLCAKLSAgICA3NiwgNjUsIDY2LCA3MywgNjUsIDIwNCwgNjYsIDczLCA3NSwgNzMsIDc4LCA3MywgMTI4LCA2NiwgNzMsIDcxLCAxMjgsIAotICAgIDY2LCA3MywgMTk5LCA2NiwgNzMsIDY5LCA4NCwgMTI4LCA2NiwgNzMsIDY4LCA2OSwgNzgsIDg0LCA2NSwgMjA0LCA2NiwgCi0gICAgNzMsIDY3LCA4OSwgNjcsIDc2LCA3MywgODMsIDg0LCAxMjgsIDY2LCA3MywgNjcsIDg5LCA2NywgNzYsIDY5LCA4MywgMTI4LCAKLSAgICA2NiwgNzMsIDY3LCA4OSwgNjcsIDc2LCA2OSwgMTI4LCA2NiwgNzMsIDY3LCA2OSwgODAsIDgzLCAxMjgsIDY2LCA3MywgNjYsIAotICAgIDc2LCA2OSwgNDUsIDY3LCA4MiwgNjksIDE5NywgNjYsIDczLCA2NiwgMTI4LCA2NiwgMjAxLCA2NiwgNzIsIDg1LCAxMjgsIAotICAgIDY2LCA3MiwgNzksIDc5LCAxMjgsIDY2LCA3MiwgNzksIDEyOCwgNjYsIDcyLCA3MywgMTI4LCA2NiwgNzIsIDY5LCA4NCwgCi0gICAgNzIsIDEyOCwgNjYsIDcyLCA2OSwgNjksIDEyOCwgNjYsIDcyLCA2OSwgMTI4LCA2NiwgNzIsIDY1LCA4NCwgODQsIDczLCAKLSAgICA4MCwgODIsIDc5LCA3NiwgMjEzLCA2NiwgNzIsIDY1LCA3NywgMTI4LCA2NiwgNzIsIDY1LCAxMjgsIDY2LCA2OSwgODksIAotICAgIDg5LCA2NSwgNzYsIDEyOCwgNjYsIDY5LCA4OCwgMTI4LCA2NiwgNjksIDg2LCA2OSwgODIsIDY1LCA3MSwgNjksIDEyOCwgCi0gICAgNjYsIDY5LCA4NCwgODcsIDY5LCA2OSwgNzgsIDEyOCwgNjYsIDY5LCA4NCwgODcsIDY5LCA2OSwgMjA2LCA2NiwgNjksIDg0LCAKLSAgICA3MiwgMTI4LCA2NiwgNjksIDg0LCA2NSwgMTI4LCA2NiwgNjksIDg0LCAxOTMsIDY2LCA2OSwgMjEyLCA2NiwgNjksIDgzLCAKLSAgICA3MywgNjgsIDE5NywgNjYsIDY5LCA4MiwgNzUsIDY1LCA3OCwgNjUsIDIwNiwgNjYsIDY5LCA4MiwgNjYsIDY5LCAyMTAsIAotICAgIDY2LCA2OSwgODAsIDEyOCwgNjYsIDY5LCA3OSwgODIsIDE5NSwgNjYsIDY5LCA3OCwgOTAsIDY5LCA3OCwgMTk3LCA2NiwgCi0gICAgNjksIDc4LCA4NCwgMjA3LCA2NiwgNjksIDc4LCA2OCwgNjksIDEyOCwgNjYsIDY5LCA3OCwgNjgsIDEyOCwgNjYsIDY5LCAKLSAgICAyMDYsIDY2LCA2OSwgNzYsIDg0LCAxMjgsIDY2LCA2OSwgNzYsIDIxMiwgNjYsIDY5LCA3NiwgNzksIDIxNSwgNjYsIDY5LCAKLSAgICA3NiwgNzYsIDEyOCwgNjYsIDY5LCA3NiwgMjA0LCA2NiwgNjksIDc2LCA3MSwgODQsIDcyLCA3OSwgMjEwLCA2NiwgNjksIAotICAgIDczLCA4NCwgNzIsIDEyOCwgNjYsIDY5LCA3MiwgNzMsIDc4LCAxOTYsIDY2LCA2OSwgNzIsIDY5LCA3MiwgMTI4LCA2NiwgCi0gICAgNjksIDcyLCA2OSwgMjAwLCA2NiwgNjksIDcyLCAxMjgsIDY2LCA2OSwgMjAwLCA2NiwgNjksIDcxLCA3MywgNzgsIDc4LCAKLSAgICA3MywgNzgsIDcxLCAxMjgsIDY2LCA2OSwgNzEsIDczLCA3OCwgNzgsIDY5LCA4MiwgMTI4LCA2NiwgNjksIDcxLCA3MywgCi0gICAgMjA2LCA2NiwgNjksIDcwLCA3OSwgODIsIDE5NywgNjYsIDY5LCA2OSwgODQsIDc2LCA2OSwgMTI4LCA2NiwgNjksIDY5LCAKLSAgICA4NCwgNjUsIDEyOCwgNjYsIDY5LCA2OSwgMjEwLCA2NiwgNjksIDY5LCA3MiwgNzMsIDg2LCA2OSwgMTI4LCA2NiwgNjksIAotICAgIDY5LCA3MiwgMTI4LCA2NiwgNjksIDY5LCAyMDAsIDY2LCA2OSwgNjcsIDY1LCA4NSwgODMsIDY5LCAxMjgsIDY2LCA2OSwgCi0gICAgNjUsIDg2LCA2OSwgMjEwLCA2NiwgNjksIDY1LCA4NCwgNzMsIDc4LCAxOTksIDY2LCA2OSwgNjUsIDg0LCAxMjgsIDY2LCAKLSAgICA2OSwgNjUsIDIxMCwgNjYsIDY5LCA2NSwgNzgsIDEyOCwgNjYsIDY5LCA2NSwgNzcsIDY5LCAxOTYsIDY2LCA2NywgNjUsIAotICAgIDY4LCAxMjgsIDY2LCA2NywgNjUsIDE5NiwgNjYsIDY2LCA4OSwgODgsIDEyOCwgNjYsIDY2LCA4OSwgODQsIDEyOCwgNjYsIAotICAgIDY2LCA4OSwgODAsIDEyOCwgNjYsIDY2LCA4OSwgMTI4LCA2NiwgNjYsIDg1LCA4OCwgMTI4LCA2NiwgNjYsIDg1LCA4NCwgCi0gICAgMTI4LCA2NiwgNjYsIDg1LCA4MiwgODgsIDEyOCwgNjYsIDY2LCA4NSwgODIsIDEyOCwgNjYsIDY2LCA4NSwgODAsIDEyOCwgCi0gICAgNjYsIDY2LCA4NSwgNzksIDg4LCAxMjgsIDY2LCA2NiwgODUsIDc5LCA4MCwgMTI4LCA2NiwgNjYsIDg1LCA3OSwgMTI4LCAKLSAgICA2NiwgNjYsIDg1LCAxMjgsIDY2LCA2NiwgNzksIDg4LCAxMjgsIDY2LCA2NiwgNzksIDg0LCAxMjgsIDY2LCA2NiwgNzksIAotICAgIDgwLCAxMjgsIDY2LCA2NiwgNzksIDEyOCwgNjYsIDY2LCA3MywgODgsIDEyOCwgNjYsIDY2LCA3MywgODAsIDEyOCwgNjYsIAotICAgIDY2LCA3MywgNjksIDg4LCAxMjgsIDY2LCA2NiwgNzMsIDY5LCA4NCwgMTI4LCA2NiwgNjYsIDczLCA2OSwgODAsIDEyOCwgCi0gICAgNjYsIDY2LCA3MywgNjksIDEyOCwgNjYsIDY2LCA3MywgMTI4LCA2NiwgNjYsIDY5LCA4OCwgMTI4LCA2NiwgNjYsIDY5LCAKLSAgICA4MCwgMTI4LCA2NiwgNjYsIDY5LCA2OSwgMTI4LCA2NiwgNjYsIDY5LCAxMjgsIDY2LCA2NiwgNjUsIDg4LCAxMjgsIDY2LCAKLSAgICA2NiwgNjUsIDg0LCAxMjgsIDY2LCA2NiwgNjUsIDgwLCAxMjgsIDY2LCA2NiwgNjUsIDY1LCAxMjgsIDY2LCA2NiwgNjUsIAotICAgIDEyOCwgNjYsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNjYsIDY1LCA4NSwgMTI4LCA2NiwgNjUsIDg0LCA4NCwgCi0gICAgNjksIDgyLCA4OSwgMTI4LCA2NiwgNjUsIDg0LCA3MiwgODQsIDg1LCA2NiwgMTI4LCA2NiwgNjUsIDg0LCA3MiwgNjUsIDc3LCAKLSAgICA2NSwgODMsIDY1LCA4NCwgMTI4LCA2NiwgNjUsIDg0LCA3MiwgMTI4LCA2NiwgNjUsIDg0LCAyMDAsIDY2LCA2NSwgODQsIAotICAgIDY1LCAyMDMsIDY2LCA2NSwgODMsIDgzLCA2NSwgMTI4LCA2NiwgNjUsIDgzLCA3NSwgNjksIDg0LCA2NiwgNjUsIDc2LCAKLSAgICAyMDQsIDY2LCA2NSwgODMsIDcyLCA3NSwgNzMsIDIxMCwgNjYsIDY1LCA4MywgNzIsIDEyOCwgNjYsIDY1LCA4MywgNjksIAotICAgIDY2LCA2NSwgNzYsIDc2LCAxMjgsIDY2LCA2NSwgODMsIDY5LCAxMjgsIDY2LCA2NSwgODMsIDE5NywgNjYsIDY1LCA4MiwgCi0gICAgODMsIDEyOCwgNjYsIDY1LCA4MiwgODIsIDczLCA2OSwgODIsIDEyOCwgNjYsIDY1LCA4MiwgODIsIDY5LCA3NSwgNzIsIAotICAgIDEyOCwgNjYsIDY1LCA4MiwgODIsIDY5LCA2OSwgMTI4LCA2NiwgNjUsIDgyLCA4MiwgNjksIDE5NywgNjYsIDY1LCA4MiwgCi0gICAgNzYsIDczLCA3OCwgNjksIDEyOCwgNjYsIDY1LCA4MiwgNzYsIDY5LCA4OSwgMTI4LCA2NiwgNjUsIDgyLCA3MywgODksIDc5LCAKLSAgICA3OSwgODMsIDY1LCA3OCwgMTI4LCA2NiwgNjUsIDgyLCA2NiwgNjksIDIxMCwgNjYsIDY1LCA4MiwgNjUsIDUwLCAxMjgsIAotICAgIDY2LCA2NSwgMjEwLCA2NiwgNjUsIDc4LCA4NCwgNzksIDY3LCAxMjgsIDY2LCA2NSwgNzgsIDc1LCA3OCwgNzksIDg0LCAKLSAgICAxOTcsIDY2LCA2NSwgNzgsIDc1LCAxMjgsIDY2LCA2NSwgNzgsIDIwMywgNjYsIDY1LCA3OCwgNjgsIDEyOCwgNjYsIDY1LCAKLSAgICA3OCwgNjUsIDc4LCA2NSwgMTI4LCA2NiwgNjUsIDc4LCA1MCwgMTI4LCA2NiwgNjUsIDc4LCAxNzgsIDY2LCA2NSwgNzcsIAotICAgIDY2LCA3OSwgNzksIDgzLCAxMjgsIDY2LCA2NSwgNzcsIDY2LCA3OSwgNzksIDEyOCwgNjYsIDY1LCA3NiwgODUsIDY4LCA2NSwgCi0gICAgMTI4LCA2NiwgNjUsIDc2LCA3NiwgNzksIDIxMiwgNjYsIDY1LCA3NiwgNzYsIDc5LCA3OSwgNzgsIDQ1LCA4MywgODAsIDc5LCAKLSAgICA3NSwgNjksIDE5NiwgNjYsIDY1LCA3NiwgNzYsIDc5LCA3OSwgNzgsIDEyOCwgNjYsIDY1LCA3NiwgNjUsIDcxLCAxMjgsIAotICAgIDY2LCA2NSwgNzYsIDEyOCwgNjYsIDY1LCAyMDQsIDY2LCA2NSwgNzMsIDgyLCA3NSwgNjUsIDc4LCAxMjgsIDY2LCA2NSwgCi0gICAgNzMsIDc3LCA2NSwgNzMsIDEyOCwgNjYsIDY1LCA3MiwgODQsIDEyOCwgNjYsIDY1LCA3MiwgNzMsIDgyLCA3MSwgNzksIDc3LCAKLSAgICA4NSwgNzUsIDcyLCA2NSwgMTI4LCA2NiwgNjUsIDcyLCA2NSwgODIsIDUwLCAxMjgsIDY2LCA2NSwgNzEsIDcxLCA2NSwgNzEsIAotICAgIDE5NywgNjYsIDY1LCA3MSwgNjUsIDEyOCwgNjYsIDY1LCA3MSwgNTEsIDEyOCwgNjYsIDY1LCAxOTksIDY2LCA2NSwgNjgsIAotICAgIDcxLCA2OSwgODIsIDEyOCwgNjYsIDY1LCA2OCwgNzEsIDY5LCAxMjgsIDY2LCA2NSwgNjgsIDEyOCwgNjYsIDY1LCA2NywgCi0gICAgODQsIDgyLCA3MywgNjUsIDIwNiwgNjYsIDY1LCA2NywgNzUsIDgzLCA4MCwgNjUsIDY3LCA2OSwgMTI4LCA2NiwgNjUsIDY3LCAKLSAgICA3NSwgODMsIDc2LCA2NSwgODMsIDcyLCAxMjgsIDY2LCA2NSwgNjcsIDc1LCA4MywgNzYsIDY1LCA4MywgMjAwLCA2NiwgNjUsIAotICAgIDY3LCA3NSwgNzIsIDY1LCA3OCwgMTk2LCA2NiwgNjUsIDY3LCA3NSwgNDUsIDg0LCA3MywgNzYsIDg0LCA2OSwgMTk2LCA2NiwgCi0gICAgNjUsIDY3LCA3NSwgMTI4LCA2NiwgNjUsIDY3LCAyMDMsIDY2LCA2NSwgNjYsIDg5LCAxMjgsIDY2LCA2NSwgNjYsIDIxNywgCi0gICAgNjYsIDY1LCA2NSwgODIsIDY5LCA4MiwgODUsIDEyOCwgNjYsIDUxLCA0OCwgNTMsIDEyOCwgNjYsIDUwLCA1MywgNTcsIAotICAgIDEyOCwgNjYsIDUwLCA1MywgNTYsIDEyOCwgNjYsIDUwLCA1MywgNTUsIDEyOCwgNjYsIDUwLCA1MywgNTQsIDEyOCwgNjYsIAotICAgIDUwLCA1MywgNTMsIDEyOCwgNjYsIDUwLCA1MywgMTgwLCA2NiwgNTAsIDUzLCA1MSwgMTI4LCA2NiwgNTAsIDUzLCA1MCwgCi0gICAgMTI4LCA2NiwgNTAsIDUzLCA0OSwgMTI4LCA2NiwgNTAsIDUzLCA0OCwgMTI4LCA2NiwgNTAsIDUyLCA1NywgMTI4LCA2NiwgCi0gICAgNTAsIDUyLCA1NiwgMTI4LCA2NiwgNTAsIDUyLCAxODMsIDY2LCA1MCwgNTIsIDU0LCAxMjgsIDY2LCA1MCwgNTIsIDUzLCAKLSAgICAxMjgsIDY2LCA1MCwgNTIsIDE3OSwgNjYsIDUwLCA1MiwgMTc4LCA2NiwgNTAsIDUyLCAxNzcsIDY2LCA1MCwgNTIsIDE3NiwgCi0gICAgNjYsIDUwLCA1MSwgNTQsIDEyOCwgNjYsIDUwLCA1MSwgNTIsIDEyOCwgNjYsIDUwLCA1MSwgMTc5LCA2NiwgNTAsIDUxLCAKLSAgICA1MCwgMTI4LCA2NiwgNTAsIDUxLCAxNzcsIDY2LCA1MCwgNTEsIDE3NiwgNjYsIDUwLCA1MCwgNTcsIDEyOCwgNjYsIDUwLCAKLSAgICA1MCwgNTYsIDEyOCwgNjYsIDUwLCA1MCwgNTUsIDEyOCwgNjYsIDUwLCA1MCwgNTQsIDEyOCwgNjYsIDUwLCA1MCwgMTgxLCAKLSAgICA2NiwgNTAsIDUwLCA1MCwgMTI4LCA2NiwgNTAsIDUwLCA0OSwgMTI4LCA2NiwgNTAsIDUwLCAxNzYsIDY2LCA1MCwgNDksIAotICAgIDU3LCAxMjgsIDY2LCA1MCwgNDksIDU2LCAxMjgsIDY2LCA1MCwgNDksIDU1LCAxMjgsIDY2LCA1MCwgNDksIDU0LCAxMjgsIAotICAgIDY2LCA1MCwgNDksIDUzLCAxMjgsIDY2LCA1MCwgNDksIDUyLCAxMjgsIDY2LCA1MCwgNDksIDUxLCAxMjgsIDY2LCA1MCwgCi0gICAgNDksIDUwLCAxMjgsIDY2LCA1MCwgNDksIDQ5LCAxMjgsIDY2LCA1MCwgNDksIDQ4LCAxMjgsIDY2LCA1MCwgNDgsIDU3LCAKLSAgICAxMjgsIDY2LCA1MCwgNDgsIDU2LCAxMjgsIDY2LCA1MCwgNDgsIDU1LCAxMjgsIDY2LCA1MCwgNDgsIDU0LCAxMjgsIDY2LCAKLSAgICA1MCwgNDgsIDUzLCAxMjgsIDY2LCA1MCwgNDgsIDUyLCAxMjgsIDY2LCA1MCwgNDgsIDUxLCAxMjgsIDY2LCA1MCwgNDgsIAotICAgIDUwLCAxMjgsIDY2LCA1MCwgNDgsIDQ5LCAxMjgsIDY2LCA1MCwgNDgsIDQ4LCAxMjgsIDY2LCA0OSwgNTcsIDE3NywgNjYsIAotICAgIDQ5LCA1NywgNDgsIDEyOCwgNjYsIDQ5LCA1NiwgNTcsIDEyOCwgNjYsIDQ5LCA1NiwgNTMsIDEyOCwgNjYsIDQ5LCA1NiwgCi0gICAgNTIsIDEyOCwgNjYsIDQ5LCA1NiwgNTEsIDEyOCwgNjYsIDQ5LCA1NiwgNTAsIDEyOCwgNjYsIDQ5LCA1NiwgNDksIDEyOCwgCi0gICAgNjYsIDQ5LCA1NiwgNDgsIDEyOCwgNjYsIDQ5LCA1NSwgNTcsIDEyOCwgNjYsIDQ5LCA1NSwgNTYsIDEyOCwgNjYsIDQ5LCAKLSAgICA1NSwgNTUsIDEyOCwgNjYsIDQ5LCA1NSwgMTgyLCA2NiwgNDksIDU1LCA1MiwgMTI4LCA2NiwgNDksIDU1LCAxNzksIDY2LCAKLSAgICA0OSwgNTUsIDUwLCAxMjgsIDY2LCA0OSwgNTUsIDQ5LCAxMjgsIDY2LCA0OSwgNTUsIDQ4LCAxMjgsIDY2LCA0OSwgNTQsIAotICAgIDU3LCAxMjgsIDY2LCA0OSwgNTQsIDU2LCAxMjgsIDY2LCA0OSwgNTQsIDU1LCAxMjgsIDY2LCA0OSwgNTQsIDU0LCAxMjgsIAotICAgIDY2LCA0OSwgNTQsIDUzLCAxMjgsIDY2LCA0OSwgNTQsIDUyLCAxMjgsIDY2LCA0OSwgNTQsIDE3OSwgNjYsIDQ5LCA1NCwgCi0gICAgMTc4LCA2NiwgNDksIDU0LCA0OSwgMTI4LCA2NiwgNDksIDU0LCA0OCwgMTI4LCA2NiwgNDksIDUzLCAxODUsIDY2LCA0OSwgCi0gICAgNTMsIDU2LCAxMjgsIDY2LCA0OSwgNTMsIDU1LCAxMjgsIDY2LCA0OSwgNTMsIDE4MiwgNjYsIDQ5LCA1MywgNTMsIDEyOCwgCi0gICAgNjYsIDQ5LCA1MywgNTIsIDEyOCwgNjYsIDQ5LCA1MywgNTEsIDEyOCwgNjYsIDQ5LCA1MywgNTAsIDEyOCwgNjYsIDQ5LCAKLSAgICA1MywgMTc3LCA2NiwgNDksIDUzLCA0OCwgMTI4LCA2NiwgNDksIDUyLCA1NCwgMTI4LCA2NiwgNDksIDUyLCAxODEsIDY2LCAKLSAgICA0OSwgNTIsIDUwLCAxMjgsIDY2LCA0OSwgNTIsIDE3NywgNjYsIDQ5LCA1MiwgMTc2LCA2NiwgNDksIDUxLCAxODEsIDY2LCAKLSAgICA0OSwgNTEsIDE3OSwgNjYsIDQ5LCA1MSwgNTAsIDEyOCwgNjYsIDQ5LCA1MSwgMTc3LCA2NiwgNDksIDUxLCAxNzYsIDY2LCAKLSAgICA0OSwgNTAsIDE4NCwgNjYsIDQ5LCA1MCwgMTgzLCA2NiwgNDksIDUwLCAxODEsIDY2LCA0OSwgNTAsIDE3OSwgNjYsIDQ5LCAKLSAgICA1MCwgMTc4LCA2NiwgNDksIDUwLCAxNzcsIDY2LCA0OSwgNTAsIDE3NiwgNjYsIDQ5LCA0OCwgNTcsIDIwNSwgNjYsIDQ5LCAKLSAgICA0OCwgNTcsIDE5OCwgNjYsIDQ5LCA0OCwgNTYsIDIwNSwgNjYsIDQ5LCA0OCwgNTYsIDE5OCwgNjYsIDQ5LCA0OCwgNTUsIAotICAgIDIwNSwgNjYsIDQ5LCA0OCwgNTUsIDE5OCwgNjYsIDQ5LCA0OCwgNTQsIDIwNSwgNjYsIDQ5LCA0OCwgNTQsIDE5OCwgNjYsIAotICAgIDQ5LCA0OCwgNTMsIDIwNSwgNjYsIDQ5LCA0OCwgNTMsIDE5OCwgNjYsIDQ5LCA0OCwgMTgxLCA2NiwgNDksIDQ4LCAxODAsIAotICAgIDY2LCA0OSwgNDgsIDE3OCwgNjYsIDQ5LCA0OCwgMTc2LCA2NiwgNDgsIDU3LCAxNzcsIDY2LCA0OCwgNTcsIDE3NiwgNjYsIAotICAgIDQ4LCA1NiwgNTcsIDEyOCwgNjYsIDQ4LCA1NiwgMTgzLCA2NiwgNDgsIDU2LCA1NCwgMTI4LCA2NiwgNDgsIDU2LCAxODEsIAotICAgIDY2LCA0OCwgNTYsIDUxLCAxMjgsIDY2LCA0OCwgNTYsIDUwLCAxMjgsIDY2LCA0OCwgNTYsIDE3NywgNjYsIDQ4LCA1NiwgCi0gICAgMTc2LCA2NiwgNDgsIDU1LCA1NywgMTI4LCA2NiwgNDgsIDU1LCAxODQsIDY2LCA0OCwgNTUsIDE4MywgNjYsIDQ4LCA1NSwgCi0gICAgMTgyLCA2NiwgNDgsIDU1LCAxODEsIDY2LCA0OCwgNTUsIDE4MCwgNjYsIDQ4LCA1NSwgMTc5LCA2NiwgNDgsIDU1LCAxNzgsIAotICAgIDY2LCA0OCwgNTUsIDE3NywgNjYsIDQ4LCA1NSwgMTc2LCA2NiwgNDgsIDU0LCAxODUsIDY2LCA0OCwgNTQsIDE4NCwgNjYsIAotICAgIDQ4LCA1NCwgMTgzLCA2NiwgNDgsIDU0LCAxODIsIDY2LCA0OCwgNTQsIDE4MSwgNjYsIDQ4LCA1NCwgNTIsIDEyOCwgNjYsIAotICAgIDQ4LCA1NCwgNTEsIDEyOCwgNjYsIDQ4LCA1NCwgMTc4LCA2NiwgNDgsIDU0LCAxNzcsIDY2LCA0OCwgNTQsIDE3NiwgNjYsIAotICAgIDQ4LCA1MywgMTg1LCA2NiwgNDgsIDUzLCAxODQsIDY2LCA0OCwgNTMsIDE4MywgNjYsIDQ4LCA1MywgNTQsIDEyOCwgNjYsIAotICAgIDQ4LCA1MywgMTgxLCA2NiwgNDgsIDUzLCAxODAsIDY2LCA0OCwgNTMsIDE3OSwgNjYsIDQ4LCA1MywgMTc4LCA2NiwgNDgsIAotICAgIDUzLCAxNzcsIDY2LCA0OCwgNTMsIDE3NiwgNjYsIDQ4LCA1MiwgNTcsIDEyOCwgNjYsIDQ4LCA1MiwgMTg0LCA2NiwgNDgsIAotICAgIDUyLCA1NSwgMTI4LCA2NiwgNDgsIDUyLCAxODIsIDY2LCA0OCwgNTIsIDE4MSwgNjYsIDQ4LCA1MiwgMTgwLCA2NiwgNDgsIAotICAgIDUyLCAxNzksIDY2LCA0OCwgNTIsIDE3OCwgNjYsIDQ4LCA1MiwgMTc3LCA2NiwgNDgsIDUyLCAxNzYsIDY2LCA0OCwgNTEsIAotICAgIDE4NSwgNjYsIDQ4LCA1MSwgMTg0LCA2NiwgNDgsIDUxLCAxODMsIDY2LCA0OCwgNTEsIDE4MiwgNjYsIDQ4LCA1MSwgNTIsIAotICAgIDEyOCwgNjYsIDQ4LCA1MSwgMTc5LCA2NiwgNDgsIDUxLCAxNzgsIDY2LCA0OCwgNTEsIDE3NywgNjYsIDQ4LCA1MSwgMTc2LCAKLSAgICA2NiwgNDgsIDUwLCAxODUsIDY2LCA0OCwgNTAsIDE4NCwgNjYsIDQ4LCA1MCwgMTgzLCA2NiwgNDgsIDUwLCAxODIsIDY2LCAKLSAgICA0OCwgNTAsIDE4MSwgNjYsIDQ4LCA1MCwgMTgwLCA2NiwgNDgsIDUwLCAxNzksIDY2LCA0OCwgNTAsIDUwLCAxMjgsIDY2LCAKLSAgICA0OCwgNTAsIDE3NywgNjYsIDQ4LCA1MCwgMTc2LCA2NiwgNDgsIDQ5LCA1NywgMTI4LCA2NiwgNDgsIDQ5LCA1NiwgMTI4LCAKLSAgICA2NiwgNDgsIDQ5LCAxODMsIDY2LCA0OCwgNDksIDE4MiwgNjYsIDQ4LCA0OSwgMTgxLCA2NiwgNDgsIDQ5LCAxODAsIDY2LCAKLSAgICA0OCwgNDksIDE3OSwgNjYsIDQ4LCA0OSwgMTc4LCA2NiwgNDgsIDQ5LCAxNzcsIDY2LCA0OCwgNDksIDE3NiwgNjYsIDQ4LCAKLSAgICA0OCwgNTcsIDEyOCwgNjYsIDQ4LCA0OCwgMTg1LCA2NiwgNDgsIDQ4LCA1NiwgMTI4LCA2NiwgNDgsIDQ4LCAxODQsIDY2LCAKLSAgICA0OCwgNDgsIDU1LCAxMjgsIDY2LCA0OCwgNDgsIDE4MywgNjYsIDQ4LCA0OCwgNTQsIDEyOCwgNjYsIDQ4LCA0OCwgMTgyLCAKLSAgICA2NiwgNDgsIDQ4LCA1MywgNjUsIDEyOCwgNjYsIDQ4LCA0OCwgNTMsIDEyOCwgNjYsIDQ4LCA0OCwgMTgxLCA2NiwgNDgsIAotICAgIDQ4LCA1MiwgMTI4LCA2NiwgNDgsIDQ4LCAxODAsIDY2LCA0OCwgNDgsIDUxLCAxMjgsIDY2LCA0OCwgNDgsIDE3OSwgNjYsIAotICAgIDQ4LCA0OCwgNTAsIDEyOCwgNjYsIDQ4LCA0OCwgMTc4LCA2NiwgNDgsIDQ4LCA0OSwgMTI4LCA2NiwgNDgsIDQ4LCAxNzcsIAotICAgIDY1LCA5MCwgODUsIDEyOCwgNjUsIDg5LCA2OSwgMjEwLCA2NSwgODksIDY2LCAxMjgsIDY1LCA4OSwgNjUsIDcyLCAxMjgsIAotICAgIDY1LCA4OCwgNjksIDEyOCwgNjUsIDg3LCA2OSwgMTI4LCA2NSwgODYsIDY5LCA4MywgODQsIDY1LCAyMDYsIDY1LCA4NiwgCi0gICAgNjksIDgyLCA2NSwgNzEsIDE5NywgNjUsIDg2LCA2NSwgNzUsIDgyLCA2NSwgNzIsIDY1LCA4MywgNjUsIDc4LCA4OSwgNjUsIAotICAgIDEyOCwgNjUsIDg2LCA2NSwgNzEsIDgyLCA2NSwgNzIsIDY1LCAxMjgsIDY1LCA4NSwgODksIDY1LCA3OCwgNzgsIDY1LCAKLSAgICAxMjgsIDY1LCA4NSwgODQsIDg1LCA3NywgNzgsIDEyOCwgNjUsIDg1LCA4NCwgNzksIDc3LCA3OSwgNjYsIDczLCA3NiwgNjksIAotICAgIDEyOCwgNjUsIDg1LCA4NCwgNzksIDc3LCA2NSwgODQsIDY5LCAxOTYsIDY1LCA4NSwgODMsIDg0LCA4MiwgNjUsIDIwNCwgCi0gICAgNjUsIDg1LCA4MiwgNzMsIDgwLCA3MywgNzEsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDY1LCA4NSwgODIsIDY1LCA3NywgNjUsIAotICAgIDkwLCA2OCwgNjUsIDY1LCA3MiwgNjUsIDEyOCwgNjUsIDg1LCA4MiwgNjUsIDc3LCA2NSwgOTAsIDY4LCA2NSwgNjUsIDQ1LCAKLSAgICA1MCwgMTI4LCA2NSwgODUsIDgyLCA2NSwgNzcsIDY1LCA5MCwgNjgsIDY1LCA2NSwgMTI4LCA2NSwgODUsIDc4LCA3OCwgCi0gICAgMTI4LCA2NSwgODUsIDcxLCA4NSwgODMsIDg0LCAxMjgsIDY1LCA4NSwgNzEsIDc3LCA2OSwgNzgsIDg0LCA2NSwgODQsIDczLCAKLSAgICA3OSwgMjA2LCA2NSwgODUsIDY5LCAxMjgsIDY1LCA4NSwgNjYsIDY5LCA4MiwgNzEsIDczLCA3OCwgNjksIDEyOCwgNjUsIAotICAgIDg0LCA4NCwgNzMsIDE5NSwgNjUsIDg0LCA4NCwgNzIsIDY1LCA2NywgNjUsIDc4LCAxMjgsIDY1LCA4NCwgODQsIDY5LCA3OCwgCi0gICAgODQsIDczLCA3OSwgNzgsIDEyOCwgNjUsIDg0LCA4NCwgNjUsIDIwMywgNjUsIDg0LCA3OSwgMjA1LCA2NSwgODQsIDc4LCAKLSAgICA2NSwgMjAwLCA2NSwgODQsIDc3LCA2NSwgNjUsIDg1LCAxMjgsIDY1LCA4NCwgNzMsIDg5LCA2NSwgMTI4LCA2NSwgODQsIAotICAgIDcyLCA3NiwgNjksIDg0LCA3MywgMTk1LCA2NSwgODQsIDcyLCA2NSwgODIsIDg2LCA2NSwgODYsIDY5LCA2OCwgNzMsIDE5NSwgCi0gICAgNjUsIDg0LCA3MiwgNjUsIDgwLCA2NSwgODMsIDY3LCA2NSwgMjA2LCA2NSwgODMsIDkwLCAxMjgsIDY1LCA4MywgODksIDg1LCAKLSAgICA4MiwgMTkzLCA2NSwgODMsIDg5LCA3NywgODAsIDg0LCA3OSwgODQsIDczLCA2NywgNjUsIDc2LCA3NiwgMjE3LCA2NSwgODMsIAotICAgIDg0LCA4MiwgNzksIDc4LCA3OSwgNzcsIDczLCA2NywgNjUsIDIwNCwgNjUsIDgzLCA4NCwgODIsIDc5LCA3NiwgNzksIDcxLCAKLSAgICA3MywgNjcsIDY1LCAyMDQsIDY1LCA4MywgODQsIDc5LCA3OCwgNzMsIDgzLCA3MiwgNjksIDE5NiwgNjUsIDgzLCA4NCwgNjksIAotICAgIDgyLCA3MywgODMsIDc3LCAxMjgsIDY1LCA4MywgODQsIDY5LCA4MiwgNzMsIDgzLCA3NSwgMjExLCA2NSwgODMsIDg0LCA2OSwgCi0gICAgODIsIDczLCA4MywgNzUsIDEyOCwgNjUsIDgzLCA4NCwgNjksIDgyLCA3MywgODMsIDIwMywgNjUsIDgzLCA4NCwgNjksIDgyLCAKLSAgICA3MywgODMsIDY3LCA4NSwgODMsIDEyOCwgNjUsIDgzLCA4MywgODksIDgyLCA3MywgNjUsIDIwNiwgNjUsIDgzLCA4MywgNjksIAotICAgIDgyLCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NSwgODMsIDgwLCA3MywgODIsIDY1LCA4NCwgNjksIDE5NiwgNjUsIDgzLCA4MCwgCi0gICAgNjksIDgyLCAxMjgsIDY1LCA4MywgNzMsIDY1LCA0NSwgNjUsIDg1LCA4MywgODQsIDgyLCA2NSwgNzYsIDczLCA2NSwgMTI4LCAKLSAgICA2NSwgODMsIDcyLCA3MSwgNjUsIDY2LCAxMjgsIDY1LCA4MywgNzIsIDY5LCA4MywgMTI4LCA2NSwgODMsIDcyLCA1NywgCi0gICAgMTI4LCA2NSwgODMsIDcyLCAxNzgsIDY1LCA4MywgNjcsIDY5LCA3OCwgODQsIDEyOCwgNjUsIDgzLCA2NywgNjksIDc4LCAKLSAgICA2OCwgNzMsIDc4LCAxOTksIDY1LCA4MywgNjUsIDc2LCA1MCwgMTI4LCA2NSwgODIsIDg1LCA3MiwgODUsIDY1LCAxMjgsIAotICAgIDY1LCA4MiwgODQsIDczLCA4MywgMjEyLCA2NSwgODIsIDg0LCA3MywgNjcsIDg1LCA3NiwgNjUsIDg0LCA2OSwgMTk2LCA2NSwgCi0gICAgODIsIDg0LCA2NSwgNjYsIDE5NywgNjUsIDgyLCA4MywgNjksIDc5LCA4MywgMTI4LCA2NSwgODIsIDgzLCA2OSwgNzksIAotICAgIDIxMSwgNjUsIDgyLCA4MywgNjksIDc4LCA3MywgNjcsIDEyOCwgNjUsIDgyLCA4MiwgNzksIDg3LCA4MywgMTI4LCA2NSwgCi0gICAgODIsIDgyLCA3OSwgODcsIDIxMSwgNjUsIDgyLCA4MiwgNzksIDg3LCA3MiwgNjksIDY1LCA2OCwgMTI4LCA2NSwgODIsIDgyLCAKLSAgICA3OSwgODcsIDcyLCA2OSwgNjUsIDE5NiwgNjUsIDgyLCA4MiwgNzksIDg3LCA0NSwgODQsIDY1LCA3MywgNzYsIDEyOCwgNjUsIAotICAgIDgyLCA4MiwgNzMsIDg2LCA2OSwgMTI4LCA2NSwgODIsIDgyLCA2NSwgODksIDEyOCwgNjUsIDgyLCA4MCwgNjksIDcxLCA3MSwgCi0gICAgNzMsIDY1LCA4NCwgMjA3LCA2NSwgODIsIDc5LCA4NSwgODMsIDczLCA3OCwgMTk5LCA2NSwgODIsIDc5LCA4NSwgODIsIAotICAgIDE5MywgNjUsIDgyLCA3OSwgODUsIDc4LCA2OCwgNDUsIDgwLCA4MiwgNzksIDcwLCA3MywgNzYsIDY5LCAxMjgsIDY1LCA4MiwgCi0gICAgNzksIDg1LCA3OCwgMTk2LCA2NSwgODIsIDc3LCA4OSwgMTI4LCA2NSwgODIsIDc3LCA3OSwgODUsIDgyLCAxMjgsIDY1LCAKLSAgICA4MiwgMjA1LCA2NSwgODIsIDc2LCA2NSwgODUsIDE5OSwgNjUsIDgyLCA3NSwgODQsIDczLCA3NSwgMjA3LCA2NSwgODIsIAotICAgIDc1LCA2NSwgNjYsIDEyOCwgNjUsIDgyLCA3NSwgNjUsIDY1LCA3OCwgODUsIDEyOCwgNjUsIDgyLCA3MywgODMsIDg0LCA2OSwgCi0gICAgODIsIDY1LCAxMjgsIDY1LCA4MiwgNzMsIDgzLCA4NCwgNjksIDgyLCAxOTMsIDY1LCA4MiwgNzMsIDY5LCA4MywgMTI4LCAKLSAgICA2NSwgODIsIDcxLCA3OSwgODQsIDY5LCA4MiwgNzMsIDEyOCwgNjUsIDgyLCA3MSwgNzksIDgzLCA4OSwgNzgsIDg0LCA3MiwgCi0gICAgNjksIDg0LCA3OSwgNzgsIDEyOCwgNjUsIDgyLCA3MSwgNzMsIDEyOCwgNjUsIDgyLCA2OSwgODAsIDY1LCAxMjgsIDY1LCAKLSAgICA4MiwgNjgsIDcyLCA2NSwgODYsIDczLCA4MywgNjUsIDgyLCA3MSwgNjUsIDEyOCwgNjUsIDgyLCA2NywgNzIsIDY1LCA3MywgCi0gICAgNzksIDc4LCAxMjgsIDY1LCA4MiwgNjcsIDcyLCA2NSwgNzMsIDc5LCAyMDYsIDY1LCA4MiwgNjcsIDcyLCA2NSwgNzMsIAotICAgIDE5NSwgNjUsIDgyLCA2NywgMjAwLCA2NSwgODIsIDY3LCAxMjgsIDY1LCA4MiwgMTk1LCA2NSwgODIsIDY1LCA3NywgNjUsIAotICAgIDczLCAxOTUsIDY1LCA4MiwgNjUsIDY5LCA2NSwgNjksIDEyOCwgNjUsIDgyLCA2NSwgNjksIDY1LCA0NSwgODUsIDEyOCwgCi0gICAgNjUsIDgyLCA2NSwgNjksIDY1LCA0NSwgNzMsIDEyOCwgNjUsIDgyLCA2NSwgNjksIDY1LCA0NSwgNjksIDc5LCAxMjgsIDY1LCAKLSAgICA4MiwgNjUsIDY5LCA2NSwgNDUsIDY5LCAxMjgsIDY1LCA4MiwgNjUsIDY5LCA2NSwgNDUsIDY1LCAxMjgsIDY1LCA4MiwgNjUsIAotICAgIDY4LCAxMjgsIDY1LCA4MiwgNjUsIDE5NiwgNjUsIDgyLCA2NSwgNjYsIDczLCA2NywgNDUsIDczLCA3OCwgNjgsIDczLCAKLSAgICAxOTUsIDY1LCA4MiwgNjUsIDY2LCA3MywgNjUsIDIwNiwgNjUsIDgyLCA0NSwgODIsIDY1LCA3MiwgNzcsIDY1LCAyMDYsIAotICAgIDY1LCA4MiwgNDUsIDgyLCA2NSwgNzIsIDY5LCA2OSwgNzcsIDEyOCwgNjUsIDgxLCA4NSwgNjUsIDgyLCA3MywgODUsIDgzLCAKLSAgICAxMjgsIDY1LCA4MSwgODUsIDY1LCA3MCwgNzksIDgyLCA4NCwgNzMsIDgzLCAxMjgsIDY1LCA4MSwgODUsIDE5MywgNjUsIAotICAgIDgwLCA4NSwgMjA2LCA2NSwgODAsIDgyLCA3MywgNzYsIDEyOCwgNjUsIDgwLCA4MCwgODIsIDc5LCA4OCwgNzMsIDc3LCA2NSwgCi0gICAgODQsIDY5LCA3NiwgMjE3LCA2NSwgODAsIDgwLCA4MiwgNzksIDg4LCA3MywgNzcsIDY1LCA4NCwgNjksIDEyOCwgNjUsIDgwLCAKLSAgICA4MCwgODIsIDc5LCA2NSwgNjcsIDcyLCA2OSwgMjExLCA2NSwgODAsIDgwLCA4MiwgNzksIDY1LCA2NywgNzIsIDEyOCwgNjUsIAotICAgIDgwLCA4MCwgNzYsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY1LCA4MCwgNzksIDg0LCA3MiwgNjksIDgzLCAKLSAgICAxMjgsIDY1LCA4MCwgNzksIDg0LCA3MiwgNjksIDc3LCA2NSwgMTI4LCA2NSwgODAsIDc5LCA4MywgODQsIDgyLCA3OSwgODAsIAotICAgIDcyLCA2OSwgMTI4LCA2NSwgODAsIDc5LCA4MywgODQsIDgyLCA3OSwgNzAsIDc5LCA4MywgMTI4LCA2NSwgODAsIDc5LCA4MywgCi0gICAgODQsIDgyLCA3OSwgNzAsIDc5LCAyMTEsIDY1LCA4MCwgNzksIDgzLCA4NCwgODIsIDc5LCA3MCwgNzksIDIwMSwgNjUsIDgwLCAKLSAgICA3OSwgNjgsIDY5LCA4OCwgNzMsIDY1LCAxMjgsIDY1LCA4MCwgNzksIDY4LCA2OSwgODIsIDc3LCAxOTMsIDY1LCA4MCwgNzYsIAotICAgIDc5LCA4NSwgNzgsIDEyOCwgNjUsIDgwLCA3NiwgMjAxLCA2NSwgODAsIDczLCA3OCwgMTI4LCA2NSwgODAsIDY5LCA4MywgCi0gICAgMjA3LCA2NSwgODAsIDY1LCA4MiwgODQsIDEyOCwgNjUsIDgwLCA2NSwgNjUsIDg0LCA3OSwgMTI4LCA2NSwgNzgsIDg1LCAKLSAgICA4MywgODYsIDY1LCA4MiwgNjUsIDg5LCA2NSwgMTI4LCA2NSwgNzgsIDg1LCA4MywgODYsIDY1LCA4MiwgNjUsIDEyOCwgNjUsIAotICAgIDc4LCA4NSwgODMsIDg2LCA2NSwgODIsIDE5MywgNjUsIDc4LCA4NSwgNjgsIDY1LCA4NCwgODQsIDY1LCAxMjgsIDY1LCA3OCwgCi0gICAgODUsIDY4LCA2NSwgODQsIDg0LCAxOTMsIDY1LCA3OCwgODQsIDczLCA4MiwgNjksIDgzLCA4NCwgODIsIDczLCA2NywgODQsIAotICAgIDczLCA3OSwgNzgsIDEyOCwgNjUsIDc4LCA4NCwgNzMsIDc3LCA3OSwgNzgsIDg5LCA0NSwgNTAsIDEyOCwgNjUsIDc4LCA4NCwgCi0gICAgNzMsIDc3LCA3OSwgNzgsIDg5LCAxMjgsIDY1LCA3OCwgODQsIDczLCA3NywgNzksIDc4LCAyMTcsIDY1LCA3OCwgODQsIDczLCAKLSAgICA3NywgNzksIDc4LCA3MywgNjUsIDg0LCA2OSwgMTI4LCA2NSwgNzgsIDg0LCA3MywgNzUsIDY5LCA3OCwgNzksIDc3LCA2NSwgCi0gICAgMTI4LCA2NSwgNzgsIDg0LCA3MywgNzUsIDY5LCA3OCwgNzksIDc1LCA4OSwgNzYsIDczLCA4MywgNzcsIDY1LCAxMjgsIDY1LCAKLSAgICA3OCwgODQsIDczLCA3MCwgNzksIDc4LCA3MywgNjUsIDEyOCwgNjUsIDc4LCA4NCwgNzMsIDY3LCA3NiwgNzksIDY3LCA3NSwgCi0gICAgODcsIDczLCA4MywgNjksIDQ1LCA4MiwgNzksIDg0LCA2NSwgODQsIDY5LCAxOTYsIDY1LCA3OCwgODQsIDczLCA2NywgNzYsIAotICAgIDc5LCA2NywgNzUsIDg3LCA3MywgODMsIDE5NywgNjUsIDc4LCA4NCwgNjksIDc4LCA3OCwgNjUsIDEyOCwgNjUsIDc4LCA4NCwgCi0gICAgNjksIDc4LCA3OCwgMTkzLCA2NSwgNzgsIDg0LCA2NSwgODIsIDcxLCA3OSwgNzcsIDg1LCA3NSwgNzIsIDY1LCAxMjgsIDY1LCAKLSAgICA3OCwgODMsIDg1LCAyMTgsIDY1LCA3OCwgODMsIDcyLCA2OSwgMTI4LCA2NSwgNzgsIDgwLCA2OSwgNjUsIDEyOCwgNjUsIAotICAgIDc4LCAyMDcsIDY1LCA3OCwgNzgsIDg1LCA3MywgODQsIDIxNywgNjUsIDc4LCA3OCwgNzksIDg0LCA2NSwgODQsIDczLCA3OSwgCi0gICAgMjA2LCA2NSwgNzgsIDc4LCA2NSwgNjUsIDg1LCAxMjgsIDY1LCA3OCwgNzUsIDcyLCAxMjgsIDY1LCA3OCwgNzIsIDg1LCAKLSAgICAxMjgsIDY1LCA3OCwgNzEsIDg1LCA3NiwgNjUsIDgyLCAxMjgsIDY1LCA3OCwgNzEsIDgzLCA4NCwgODIsIDc5LCAyMDUsIAotICAgIDY1LCA3OCwgNzEsIDgyLCAyMTcsIDY1LCA3OCwgNzEsIDc1LCA3MiwgNjUsIDc4LCA3NSwgNzIsIDg1LCAxMjgsIDY1LCA3OCwgCi0gICAgNzEsIDY5LCAyMTAsIDY1LCA3OCwgNzEsIDY5LCA3NiwgMTI4LCA2NSwgNzgsIDcxLCA2OSwgNjgsIDEyOCwgNjUsIDc4LCAKLSAgICA2OCwgNjUsIDgwLCAxMjgsIDY1LCA3OCwgNjcsIDc5LCA4MiwgNjUsIDEyOCwgNjUsIDc4LCA2NywgNzIsIDc5LCA4MiwgCi0gICAgMTI4LCA2NSwgNzgsIDY1LCA4NCwgODIsIDczLCA2NywgNzIsIDczLCA4MywgNzcsIDY1LCAxMjgsIDY1LCA3OCwgNjUsIDgwLCAKLSAgICAxMjgsIDY1LCA3NywgODAsIDgzLCAxMjgsIDY1LCA3NywgODAsIDY5LCA4MiwgODMsIDY1LCA3OCwgNjgsIDEyOCwgNjUsIAotICAgIDc3LCA3OSwgODUsIDc4LCAyMTIsIDY1LCA3NywgNjksIDgyLCA3MywgNjcsIDY1LCA4MywgMTI4LCA2NSwgNzcsIDY5LCA4MiwgCi0gICAgNzMsIDY3LCA2NSwgMjA2LCA2NSwgNzcsIDY2LCA4NSwgNzYsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDY1LCA3NywgNjYsIAotICAgIDE5MywgNjUsIDc3LCA2NSwgODIsIDEyOCwgNjUsIDc3LCA2NSwgMjEwLCA2NSwgNzcsIDY1LCA3NiwgNzEsIDY1LCA3NywgCi0gICAgNjUsIDg0LCA3MywgNzksIDIwNiwgNjUsIDc3LCA2NSwgNzYsIDcxLCA2NSwgNzcsIDEyOCwgNjUsIDc2LCA4NiwgNjksIDc5LCAKLSAgICA3NiwgNjUsIDIxMCwgNjUsIDc2LCA4NSwgNzcsIDEyOCwgNjUsIDc2LCA4NCwgNjksIDgyLCA3OCwgNjUsIDg0LCA3MywgODYsIAotICAgIDE5NywgNjUsIDc2LCA4NCwgNjksIDgyLCA3OCwgNjUsIDg0LCA3MywgNzksIDIwNiwgNjUsIDc2LCA4NCwgNjksIDgyLCA3OCwgCi0gICAgNjUsIDg0LCAxOTcsIDY1LCA3NiwgODQsIDY1LCAxMjgsIDY1LCA3NiwgODAsIDcyLCA2NSwgMTI4LCA2NSwgNzYsIDgwLCAKLSAgICA3MiwgMTkzLCA2NSwgNzYsIDgwLCA2NSwgODAsIDgyLCA2NSwgNzgsIDY1LCAxMjgsIDY1LCA3NiwgODAsIDY1LCA4MCwgODIsIAotICAgIDY1LCA2NSwgNzgsIDE5MywgNjUsIDc2LCA4MCwgNjUsIDEyOCwgNjUsIDc2LCA3NywgNzksIDgzLCAyMTIsIDY1LCA3NiwgCi0gICAgNzYsIDc5LCAxMjgsIDY1LCA3NiwgNzYsIDczLCA2NSwgNzgsIDY3LCA2OSwgMTI4LCA2NSwgNzYsIDc2LCAyMDEsIDY1LCAKLSAgICA3NiwgNzYsIDY1LCAyMDAsIDY1LCA3NiwgNzUsIDY1LCA3NiwgNzMsIDQ1LCA1MCwgMTI4LCA2NSwgNzYsIDc1LCA2NSwgNzYsIAotICAgIDczLCAxMjgsIDY1LCA3NiwgNzMsIDcxLCA3OCwgNjksIDE5NiwgNjUsIDc2LCA3MywgNzAsIDg1LCAxMjgsIDY1LCA3NiwgCi0gICAgNzMsIDY5LCA3OCwgMTI4LCA2NSwgNzYsIDczLCA2OSwgMjA2LCA2NSwgNzYsIDcxLCA3MywgMjE4LCA2NSwgNzYsIDcwLCAKLSAgICA2NSwgMTI4LCA2NSwgNzYsIDY5LCA4NSwgMjEyLCA2NSwgNzYsIDY5LCA4MCwgNzIsIDEyOCwgNjUsIDc2LCA2OSwgNzcsIAotICAgIDY2LCA3MywgNjcsIDEyOCwgNjUsIDc2LCA2OSwgNzAsIDEyOCwgNjUsIDc2LCA2NSwgODksIDcyLCA2OSwgMTI4LCA2NSwgCi0gICAgNzYsIDY1LCA4OSwgNzIsIDE5NywgNjUsIDc2LCA2NSwgODIsIDIwNSwgNjUsIDc2LCA2NSwgODAsIDcyLCAxMjgsIDY1LCAKLSAgICA3NiwgNDUsIDc2LCA2NSwgNzUsIDg1LCA3OCwgNjUsIDEyOCwgNjUsIDc1LCA4NCwgNzMsIDY5LCA4MywgNjksIDc2LCA4MywgCi0gICAgNzUsIDY1LCA2NiwgMTI4LCA2NSwgNzUsIDgzLCA2NSwgMTI4LCA2NSwgNzUsIDcyLCA3NywgNzMsIDc3LCA3MywgMTk1LCAKLSAgICA2NSwgNzUsIDY2LCA2NSwgMjEwLCA2NSwgNzUsIDY1LCA4MiwgNjUsIDEyOCwgNjUsIDc1LCA2NSwgODIsIDE5MywgNjUsIAotICAgIDczLCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNjUsIDczLCA4NiwgNzMsIDc2LCA3MywgMjAzLCA2NSwgNzMsIDg0LCA3OSwgCi0gICAgMjA2LCA2NSwgNzMsIDgyLCA4MCwgNzYsIDY1LCA3OCwgNjksIDEyOCwgNjUsIDczLCA3OCwgNzgsIDEyOCwgNjUsIDczLCAKLSAgICA3NiwgNzcsIDEyOCwgNjUsIDczLCA3NSwgNjUsIDgyLCA2NSwgMTI4LCA2NSwgNzMsIDcyLCA4NiwgODUsIDgzLCAxMjgsIAotICAgIDY1LCA3MiwgODMsIDY4LCA2NSwgMTI4LCA2NSwgNzIsIDgzLCA2NSwgMTI4LCA2NSwgNzIsIDY1LCA3MSwgNzEsIDY1LCAKLSAgICAyMTAsIDY1LCA3MiwgNjUsIDY4LCAxMjgsIDY1LCA3MSwgODUsIDc4LCA3MSwgMTI4LCA2NSwgNzEsIDc5LCA3MSwgMjAxLCAKLSAgICA2NSwgNzEsIDcxLCA4MiwgNjUsIDg2LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjUsIDcxLCA3MSwgODIsIDY1LCA4NiwgCi0gICAgNjUsIDg0LCA2OSwgMTk2LCA2NSwgNzEsIDY1LCA3MywgNzgsIDEyOCwgNjUsIDcwLCA4NCwgNjksIDIxMCwgNjUsIDcwLCAKLSAgICA4MywgNjUsIDY1LCA4MSwgMTI4LCA2NSwgNzAsIDgyLCA3MywgNjcsIDY1LCAyMDYsIDY1LCA3MCwgNzksIDgyLCA2OSwgNzcsIAotICAgIDY5LCA3OCwgODQsIDczLCA3OSwgNzgsIDY5LCA2OCwgMTI4LCA2NSwgNzAsIDcxLCA3MiwgNjUsIDc4LCAyMDEsIDY1LCA3MCwgCi0gICAgNzAsIDgyLCA3MywgNjcsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY1LCA2OSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY1LCAKLSAgICA2OSwgODksIDEyOCwgNjUsIDY5LCA4MywgNjcsIDg1LCA3NiwgNjUsIDgwLCA3MywgODUsIDgzLCAxMjgsIDY1LCA2OSwgODMsIAotICAgIDY3LCAxMjgsIDY1LCA2OSwgODMsIDEyOCwgNjUsIDY5LCA4MiwgNzMsIDY1LCAyMDQsIDY1LCA2OSwgODIsIDEyOCwgNjUsIAotICAgIDY5LCA3NiwgNjUsIDQ1LCA4MCwgNzMsIDc2LCA3NiwgNjUsIDEyOCwgNjUsIDY5LCA3NiwgMTI4LCA2NSwgNjksIDc1LCAKLSAgICAxMjgsIDY1LCA2OSwgNzEsIDY5LCA2NSwgMjA2LCA2NSwgNjksIDcxLCAxMjgsIDY1LCA2OSwgNjksIDg5LCA2NSwgNzgsIAotICAgIDc4LCA2NSwgMTI4LCA2NSwgNjksIDY5LCAxMjgsIDY1LCA2OSwgNjgsIDY1LCA0NSwgODAsIDczLCA3NiwgNzYsIDY1LCAKLSAgICAxMjgsIDY1LCA2OSwgNjgsIDEyOCwgNjUsIDY5LCA2NiwgMTI4LCA2NSwgNjgsIDg2LCA2NSwgNzgsIDg0LCA2NSwgNzEsIAotICAgIDY5LCAxMjgsIDY1LCA2OCwgODYsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDY1LCA2OCwgNjksIDcxLCAxMjgsIDY1LCA2OCwgCi0gICAgNjksIDE5OSwgNjUsIDY4LCA2OCwgODIsIDY5LCA4MywgODMsIDY5LCAxOTYsIDY1LCA2OCwgNjgsIDgyLCA2OSwgODMsIAotICAgIDIxMSwgNjUsIDY4LCA2OCwgNjUsIDc1LCAxMjgsIDY1LCA2OCwgNjUsIDIwMywgNjUsIDY3LCA4NSwgODQsIDY5LCA0NSwgCi0gICAgNzcsIDY1LCA2NywgODIsIDc5LCA3OCwgMTI4LCA2NSwgNjcsIDg1LCA4NCwgNjksIDQ1LCA3MSwgODIsIDY1LCA4NiwgNjksIAotICAgIDQ1LCA2NSwgNjcsIDg1LCA4NCwgNjksIDEyOCwgNjUsIDY3LCA4NSwgODQsIDE5NywgNjUsIDY3LCA4NCwgODUsIDY1LCA3NiwgCi0gICAgNzYsIDIxNywgNjUsIDY3LCA4NCwgNzMsIDg2LCA2NSwgODQsIDE5NywgNjUsIDY3LCA4MiwgNzksIDgwLCA3MiwgNzksIDc4LCAKLSAgICA3MywgMTk1LCA2NSwgNjcsIDc1LCA3OCwgNzksIDg3LCA3NiwgNjksIDY4LCA3MSwgNjksIDEyOCwgNjUsIDY3LCA2NywgODUsIAotICAgIDc3LCA4NSwgNzYsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NSwgNjcsIDY3LCA3OSwgODUsIDc4LCAyMTIsIDY1LCA2NywgCi0gICAgNjcsIDY5LCA4MCwgODQsIDEyOCwgNjUsIDY3LCA2NywgNjksIDc4LCA4NCwgNDUsIDgzLCA4NCwgNjUsIDY3LCA2NywgNjUsIAotICAgIDg0LCA3OSwgMTI4LCA2NSwgNjcsIDY3LCA2OSwgNzgsIDg0LCAxMjgsIDY1LCA2NywgNjcsIDY5LCA3OCwgMjEyLCA2NSwgCi0gICAgNjcsIDY1LCA2OCwgNjksIDc3LCAyMTcsIDY1LCA2NiwgODksIDgzLCA3NywgNjUsIDIwNCwgNjUsIDY2LCA4NSwgNzgsIDY4LCAKLSAgICA2NSwgNzgsIDY3LCA2OSwgMTI4LCA2NSwgNjYsIDc1LCA3MiwgNjUsIDgzLCA3MywgNjUsIDIwNiwgNjUsIDY2LCA2NiwgODIsIAotICAgIDY5LCA4NiwgNzMsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY1LCA2NiwgNjUsIDcwLCA3MywgNzYsIDczLCAxMjgsIDY1LCA2NiwgCi0gICAgMTc4LCA2NSwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA2NSwgNjUsIDg5LCAxMjgsIDY1LCA2NSwgODcsIDEyOCwgCi0gICAgNjUsIDY1LCA3OSwgMTI4LCA2NSwgNjUsIDc0LCAxMjgsIDY1LCA2NSwgNjYsIDY1LCA2NSwgNzAsIDczLCA3NiwgNzMsIAotICAgIDEyOCwgNjUsIDY1LCA0OCwgNTEsIDUwLCAxMjgsIDY1LCA2NSwgNDgsIDUxLCA0OSwgMTI4LCA2NSwgNjUsIDQ4LCA1MSwgCi0gICAgNDgsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDU3LCAxMjgsIDY1LCA2NSwgNDgsIDUwLCA1NiwgMTI4LCA2NSwgNjUsIDQ4LCAKLSAgICA1MCwgNTUsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDU0LCAxMjgsIDY1LCA2NSwgNDgsIDUwLCA1MywgMTI4LCA2NSwgNjUsIAotICAgIDQ4LCA1MCwgNTIsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDUxLCAxMjgsIDY1LCA2NSwgNDgsIDUwLCA1MCwgMTI4LCA2NSwgCi0gICAgNjUsIDQ4LCA1MCwgNDksIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDQ4LCAxMjgsIDY1LCA2NSwgNDgsIDQ5LCA1NywgMTI4LCAKLSAgICA2NSwgNjUsIDQ4LCA0OSwgNTYsIDEyOCwgNjUsIDY1LCA0OCwgNDksIDU1LCAxMjgsIDY1LCA2NSwgNDgsIDQ5LCA1NCwgCi0gICAgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNTMsIDEyOCwgNjUsIDY1LCA0OCwgNDksIDUyLCAxMjgsIDY1LCA2NSwgNDgsIDQ5LCAKLSAgICA1MSwgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNTAsIDEyOCwgNjUsIDY1LCA0OCwgNDksIDQ5LCAxMjgsIDY1LCA2NSwgNDgsIAotICAgIDQ5LCA0OCwgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTcsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDU2LCAxMjgsIDY1LCA2NSwgCi0gICAgNDgsIDQ4LCA1NSwgNjYsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDU1LCA2NSwgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTUsIAotICAgIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDU0LCAxMjgsIDY1LCA2NSwgNDgsIDQ4LCA1MywgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgCi0gICAgNTIsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDUxLCAxMjgsIDY1LCA2NSwgNDgsIDQ4LCA1MCwgMTI4LCA2NSwgNjUsIDQ4LCAKLSAgICA0OCwgNDksIDEyOCwgNjUsIDQ4LCA1NSwgNDgsIDEyOCwgNjUsIDQ4LCA1NCwgNTcsIDEyOCwgNjUsIDQ4LCA1NCwgNTYsIAotICAgIDEyOCwgNjUsIDQ4LCA1NCwgNTUsIDEyOCwgNjUsIDQ4LCA1NCwgNTQsIDEyOCwgNjUsIDQ4LCA1NCwgNTMsIDEyOCwgNjUsIAotICAgIDQ4LCA1NCwgNTIsIDEyOCwgNjUsIDQ4LCA1NCwgNTEsIDEyOCwgNjUsIDQ4LCA1NCwgNTAsIDEyOCwgNjUsIDQ4LCA1NCwgCi0gICAgNDksIDEyOCwgNjUsIDQ4LCA1NCwgNDgsIDEyOCwgNjUsIDQ4LCA1MywgNTcsIDEyOCwgNjUsIDQ4LCA1MywgNTYsIDEyOCwgCi0gICAgNjUsIDQ4LCA1MywgNTUsIDEyOCwgNjUsIDQ4LCA1MywgNTQsIDEyOCwgNjUsIDQ4LCA1MywgNTMsIDEyOCwgNjUsIDQ4LCAKLSAgICA1MywgNTIsIDEyOCwgNjUsIDQ4LCA1MywgNTEsIDEyOCwgNjUsIDQ4LCA1MywgNTAsIDEyOCwgNjUsIDQ4LCA1MywgNDksIAotICAgIDEyOCwgNjUsIDQ4LCA1MywgNDgsIDEyOCwgNjUsIDQ4LCA1MiwgNTcsIDEyOCwgNjUsIDQ4LCA1MiwgNTYsIDEyOCwgNjUsIAotICAgIDQ4LCA1MiwgNTUsIDEyOCwgNjUsIDQ4LCA1MiwgNTQsIDEyOCwgNjUsIDQ4LCA1MiwgNTMsIDY1LCAxMjgsIDY1LCA0OCwgCi0gICAgNTIsIDUzLCAxMjgsIDY1LCA0OCwgNTIsIDUyLCAxMjgsIDY1LCA0OCwgNTIsIDUxLCA2NSwgMTI4LCA2NSwgNDgsIDUyLCAKLSAgICA1MSwgMTI4LCA2NSwgNDgsIDUyLCA1MCwgNjUsIDEyOCwgNjUsIDQ4LCA1MiwgNTAsIDEyOCwgNjUsIDQ4LCA1MiwgNDksIAotICAgIDEyOCwgNjUsIDQ4LCA1MiwgNDgsIDY1LCAxMjgsIDY1LCA0OCwgNTIsIDQ4LCAxMjgsIDY1LCA0OCwgNTEsIDU3LCAxMjgsIAotICAgIDY1LCA0OCwgNTEsIDU2LCAxMjgsIDY1LCA0OCwgNTEsIDU1LCAxMjgsIDY1LCA0OCwgNTEsIDU0LCAxMjgsIDY1LCA0OCwgCi0gICAgNTEsIDUzLCAxMjgsIDY1LCA0OCwgNTEsIDUyLCAxMjgsIDY1LCA0OCwgNTEsIDUxLCAxMjgsIDY1LCA0OCwgNTEsIDUwLCAKLSAgICA2NSwgMTI4LCA2NSwgNDgsIDQ5LCA1NSwgNjUsIDEyOCwgNjUsIDQ4LCA0OSwgNTIsIDY1LCAxMjgsIDY1LCA0OCwgNDgsIAotICAgIDU0LCA2NiwgMTI4LCA2NSwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgNjUsIDQ4LCA0OCwgNTMsIDY1LCAxMjgsIDY1LCA0NSwgCi0gICAgNjksIDg1LCAxMjgsIDQ1LCA4NSwgMjA1LCA0NSwgODAsIDcyLCA4MiwgODUsIDEyOCwgNDUsIDc1LCA3MiwgODksIDg1LCAKLSAgICAxOTYsIDQ1LCA3NSwgNzIsIDg5LCA3MywgNzYsIDEyOCwgNDUsIDY4LCA5MCwgODUsIDE5NiwgNDUsIDY3LCA3MiwgNjUsIAotICAgIDIxMCwgNDUsIDY3LCA3MiwgNjUsIDc2LCAxMjgsIAorICAgIDY3LCA2NywgNzIsIDEyOCwgNjcsIDY3LCA2OSwgNjksIDEyOCwgNjcsIDY3LCA2OSwgMTI4LCA2NywgNjcsIDY1LCA2NSwgCisgICAgMTI4LCA2NywgNjcsIDY1LCAxMjgsIDY3LCA2NSwgODksIDc4LCAxMjgsIDY3LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAKKyAgICAxMjgsIDY3LCA2NSwgODgsIDEyOCwgNjcsIDY1LCA4NiwgNjksIDEyOCwgNjcsIDY1LCA4NSwgODQsIDczLCA3OSwgMjA2LCAKKyAgICA2NywgNjUsIDg1LCA3NiwgNjgsIDgyLCA3OSwgNzgsIDEyOCwgNjcsIDY1LCA4NSwgNjgsIDY1LCAxMjgsIDY3LCA2NSwgODUsIAorICAgIDEyOCwgNjcsIDY1LCA4NCwgNjUsIDg3LCA2NSwgMTI4LCA2NywgNjUsIDg0LCAxMjgsIDY3LCA2NSwgMjEyLCA2NywgNjUsIAorICAgIDgzLCA4NCwgNzYsIDY5LCAxMjgsIDY3LCA2NSwgODIsIDg5LCA4MywgODQsIDczLCA2NSwgMjA2LCA2NywgNjUsIDgyLCA4NCwgCisgICAgMTI4LCA2NywgNjUsIDgyLCAyMTEsIDY3LCA2NSwgODIsIDgyLCA3MywgNjUsIDcxLCAxOTcsIDY3LCA2NSwgODIsIDgwLCAKKyAgICA2OSwgNzgsIDg0LCA4MiwgMjE3LCA2NywgNjUsIDgyLCAyMDgsIDY3LCA2NSwgODIsIDc5LCA4NSwgODMsIDY5LCAyMDQsIAorICAgIDY3LCA2NSwgODIsIDc5LCA3OCwgMTI4LCA2NywgNjUsIDgyLCA3OSwgMjA2LCA2NywgNjUsIDgyLCA3MywgMjAzLCA2NywgCisgICAgNjUsIDgyLCA3MywgNjUsIDIwNiwgNjcsIDY1LCA4MiwgNjksIDg0LCAxMjgsIDY3LCA2NSwgODIsIDY5LCAyMTIsIDY3LCAKKyAgICA2NSwgODIsIDE5NywgNjcsIDY1LCA4MiwgNjgsIDgzLCAxMjgsIDY3LCA2NSwgODIsIDY4LCAxMjgsIDY3LCA2NSwgODIsIAorICAgIDE5NiwgNjcsIDY1LCA4MiwgMTI4LCA2NywgNjUsIDIxMCwgNjcsIDY1LCA4MCwgODUsIDIxMiwgNjcsIDY1LCA4MCwgODQsIAorICAgIDczLCA4NiwgNjksIDEyOCwgNjcsIDY1LCA4MCwgODIsIDczLCA2NywgNzksIDgyLCA3OCwgMTI4LCA2NywgNjUsIDgwLCA3OSwgCisgICAgMTI4LCA2NywgNjUsIDgwLCA3MywgODQsIDY1LCA3NiwgMTI4LCA2NywgNjUsIDc4LCA4NCwgNzMsIDc2LCA3NiwgNjUsIDg0LCAKKyAgICA3MywgNzksIDIwNiwgNjcsIDY1LCA3OCwgMTk5LCA2NywgNjUsIDc4LCA2OCwgODksIDEyOCwgNjcsIDY1LCA3OCwgNjgsIAorICAgIDgyLCA2NSwgNjYsIDczLCA3OCwgNjgsIDg1LCAxMjgsIDY3LCA2NSwgNzgsIDY4LCA4MiwgNjUsIDY2LCA3MywgNzgsIDY4LCAKKyAgICAyMTMsIDY3LCA2NSwgNzgsIDY4LCA4MiwgNjUsIDEyOCwgNjcsIDY1LCA3OCwgNjgsIDgyLCAxOTMsIDY3LCA2NSwgNzgsIAorICAgIDY3LCA2OSwgODIsIDEyOCwgNjcsIDY1LCA3OCwgNjcsIDY5LCA3NiwgNzYsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY3LCA2NSwgCisgICAgNzgsIDY3LCA2OSwgNzYsIDEyOCwgNjcsIDY1LCA3OCwgNjcsIDY5LCAyMDQsIDY3LCA2NSwgNzgsIDEyOCwgNjcsIDY1LCAKKyAgICA3NywgNzgsIDg1LCAxOTUsIDY3LCA2NSwgNzcsIDY5LCA4MiwgNjUsIDEyOCwgNjcsIDY1LCA3NywgNjksIDc2LCAxMjgsIAorICAgIDY3LCA2NSwgNzYsIDg5LCA2NSwgMTI4LCA2NywgNjUsIDc2LCA4OSwgMTkzLCA2NywgNjUsIDc2LCA4OCwgMTI4LCA2NywgCisgICAgNjUsIDc2LCA3NiwgMTI4LCA2NywgNjUsIDc2LCA2OSwgNzgsIDY4LCA2NSwgODIsIDEyOCwgNjcsIDY1LCA3NiwgNjcsIAorICAgIDEyOCwgNjcsIDY1LCA3NSwgODIsIDY1LCAxMjgsIDY3LCA2NSwgNzUsIDE5NywgNjcsIDY1LCA3MywgMTI4LCA2NywgNjUsIAorICAgIDcyLCAxMjgsIDY3LCA2NSwgNjksIDgzLCA4NSwgODIsIDY1LCAxMjgsIDY3LCA2NSwgNjgsIDg1LCA2NywgNjksIDg1LCA4MywgCisgICAgMTI4LCA2NywgNjUsIDY4LCAxOTMsIDY3LCA2NSwgNjcsIDg0LCA4NSwgODMsIDEyOCwgNjcsIDY1LCA2NiwgNzYsIDY5LCAKKyAgICA4NywgNjUsIDg5LCAxMjgsIDY3LCA2NSwgNjYsIDY2LCA2NSwgNzEsIDY5LCA0NSwgODQsIDgyLCA2OSwgNjksIDEyOCwgNjcsIAorICAgIDY1LCA2NSwgNzgsIDcxLCAxMjgsIDY3LCA2NSwgNjUsIDczLCAxMjgsIDY3LCAxOTMsIDY3LCA0OCwgNTAsIDUyLCAxMjgsIAorICAgIDY3LCA0OCwgNTAsIDUxLCAxMjgsIDY3LCA0OCwgNTAsIDUwLCAxMjgsIDY3LCA0OCwgNTAsIDQ5LCAxMjgsIDY3LCA0OCwgCisgICAgNTAsIDQ4LCAxMjgsIDY3LCA0OCwgNDksIDU3LCAxMjgsIDY3LCA0OCwgNDksIDU2LCAxMjgsIDY3LCA0OCwgNDksIDU1LCAKKyAgICAxMjgsIDY3LCA0OCwgNDksIDU0LCAxMjgsIDY3LCA0OCwgNDksIDUzLCAxMjgsIDY3LCA0OCwgNDksIDUyLCAxMjgsIDY3LCAKKyAgICA0OCwgNDksIDUxLCAxMjgsIDY3LCA0OCwgNDksIDUwLCAxMjgsIDY3LCA0OCwgNDksIDQ5LCAxMjgsIDY3LCA0OCwgNDksIAorICAgIDQ4LCA2NSwgMTI4LCA2NywgNDgsIDQ5LCA0OCwgMTI4LCA2NywgNDgsIDQ4LCA1NywgMTI4LCA2NywgNDgsIDQ4LCA1NiwgCisgICAgMTI4LCA2NywgNDgsIDQ4LCA1NSwgMTI4LCA2NywgNDgsIDQ4LCA1NCwgMTI4LCA2NywgNDgsIDQ4LCA1MywgMTI4LCA2NywgCisgICAgNDgsIDQ4LCA1MiwgMTI4LCA2NywgNDgsIDQ4LCA1MSwgMTI4LCA2NywgNDgsIDQ4LCA1MCwgNjcsIDEyOCwgNjcsIDQ4LCAKKyAgICA0OCwgNTAsIDY2LCAxMjgsIDY3LCA0OCwgNDgsIDUwLCA2NSwgMTI4LCA2NywgNDgsIDQ4LCA1MCwgMTI4LCA2NywgNDgsIAorICAgIDQ4LCA0OSwgMTI4LCA2NywgNDUsIDgzLCA3MywgNzcsIDgwLCA3NiwgNzMsIDcwLCA3MywgNjksIDE5NiwgNjcsIDQ1LCA1MSwgCisgICAgNTcsIDEyOCwgNjcsIDQ1LCA0OSwgNTYsIDEyOCwgNjYsIDkwLCA4NSwgNzgsIDE5OSwgNjYsIDkwLCA3MiwgMjAxLCA2NiwgCisgICAgODksIDg0LCAxOTcsIDY2LCA4OSwgNjksIDc2LCA3OSwgODIsIDg1LCA4MywgODMsIDczLCA2NSwgNzgsIDQ1LCA4NSwgNzUsIAorICAgIDgyLCA2NSwgNzMsIDc4LCA3MywgNjUsIDIwNiwgNjYsIDg4LCA3MSwgMTI4LCA2NiwgODcsIDczLCAxMjgsIDY2LCA4NywgCisgICAgNjksIDY5LCAxMjgsIDY2LCA4NywgNjksIDEyOCwgNjYsIDg3LCA2NSwgMTI4LCA2NiwgODUsIDg1LCA3NywgNzMsIDgzLCAKKyAgICA3MiwgMTI4LCA2NiwgODUsIDg0LCA4NCwgNzksIDc4LCAxMjgsIDY2LCA4NSwgMjEyLCA2NiwgODUsIDgzLCA4NCwgMjExLCAKKyAgICA2NiwgODUsIDgzLCAyMTIsIDY2LCA4NSwgODMsIDgzLCA4OSwgNjksIDgyLCA4NSwgMTI4LCA2NiwgODUsIDIxMSwgNjYsIAorICAgIDg1LCA4MiwgMjEzLCA2NiwgODUsIDgyLCA1MCwgMTI4LCA2NiwgODUsIDIxMCwgNjYsIDg1LCA3OSwgODgsIDEyOCwgNjYsIAorICAgIDg1LCA3OSwgODAsIDEyOCwgNjYsIDg1LCA3OCwgNzgsIDIxNywgNjYsIDg1LCA3OCwgNzEsIDEyOCwgNjYsIDg1LCA3NywgCisgICAgODAsIDIxNywgNjYsIDg1LCA3NiwgODUsIDcxLCAxMjgsIDY2LCA4NSwgNzYsIDg1LCAxOTksIDY2LCA4NSwgNzYsIDc2LCAKKyAgICA4MywgNjksIDg5LCA2OSwgMTI4LCA2NiwgODUsIDc2LCA3NiwgMjExLCA2NiwgODUsIDc2LCA3NiwgNjksIDg0LCAxMjgsIAorICAgIDY2LCA4NSwgNzYsIDc2LCA2OSwgMjEyLCA2NiwgODUsIDc2LCA3NiwgMTI4LCA2NiwgODUsIDc2LCA2NiwgMTI4LCA2NiwgCisgICAgODUsIDc1LCA4OSwgMTI4LCA2NiwgODUsIDczLCA3NiwgNjgsIDczLCA3OCwgNzEsIDgzLCAxMjgsIDY2LCA4NSwgNzMsIDc2LCAKKyAgICA2OCwgNzMsIDc4LCA3MSwgMTI4LCA2NiwgODUsIDcyLCA3MywgMTk2LCA2NiwgODUsIDcxLCA3MywgNzgsIDY5LCA4MywgCisgICAgMTk3LCA2NiwgODUsIDcxLCAxMjgsIDY2LCA4NSwgNzAsIDcwLCA2NSwgNzYsIDc5LCAxMjgsIDY2LCA4NSwgNjcsIDc1LCAKKyAgICA3NiwgNjksIDEyOCwgNjYsIDgzLCA4NCwgNjUsIDgyLCAxMjgsIDY2LCA4MywgNzUsIDg1LCAyMTAsIDY2LCA4MywgNzUsIAorICAgIDY1LCAxNzMsIDY2LCA4MywgNjgsIDg1LCAyMTEsIDY2LCA4MiwgODUsIDgzLCA3MiwgMTI4LCA2NiwgODIsIDg1LCA4MywgCisgICAgMjAwLCA2NiwgODIsIDc5LCA3OCwgOTAsIDY5LCAxMjgsIDY2LCA4MiwgNzksIDc1LCA2OSwgMjA2LCA2NiwgODIsIDc5LCAKKyAgICA2NSwgMTk2LCA2NiwgODIsIDczLCA4MywgODQsIDc2LCA2OSwgMTI4LCA2NiwgODIsIDczLCA3MSwgNzIsIDg0LCA3OCwgNjksIAorICAgIDgzLCAyMTEsIDY2LCA4MiwgNzMsIDY5LCA3MCwgNjcsIDY1LCA4MywgNjksIDEyOCwgNjYsIDgyLCA3MywgNjgsIDcxLCAKKyAgICAxOTcsIDY2LCA4MiwgNzMsIDY4LCAxOTcsIDY2LCA4MiwgNzMsIDY3LCA3NSwgMTI4LCA2NiwgODIsIDY5LCA4NiwgNzMsIAorICAgIDgzLCAxMjgsIDY2LCA4MiwgNjksIDg2LCA2OSwgNDUsIDc3LCA2NSwgNjcsIDgyLCA3OSwgNzgsIDEyOCwgNjYsIDgyLCA2OSwgCisgICAgODYsIDE5NywgNjYsIDgyLCA2OSwgNjUsIDg0LCAyMDAsIDY2LCA4MiwgNjksIDY1LCA3NSwgODQsIDcyLCA4MiwgNzksIDg1LCAKKyAgICA3MSwgNzIsIDEyOCwgNjYsIDgyLCA2OSwgNjUsIDY4LCAxMjgsIDY2LCA4MiwgNjgsIDE5MywgNjYsIDgyLCA2NSwgNzgsIAorICAgIDY3LCA3MiwgNzMsIDc4LCAxOTksIDY2LCA4MiwgNjUsIDc4LCA2NywgNzIsIDEyOCwgNjYsIDgyLCA2NSwgNzgsIDY3LCAKKyAgICAyMDAsIDY2LCA4MiwgNjUsIDc1LCA2NywgNjksIDg0LCAxMjgsIDY2LCA4MiwgNjUsIDY3LCA3NSwgNjksIDg0LCA2OSwgCisgICAgMTk2LCA2NiwgODIsIDY1LCA2NywgNzUsIDY5LCAyMTIsIDY2LCA4MiwgNjUsIDY3LCA2OSwgMTI4LCA2NiwgODEsIDEyOCwgCisgICAgNjYsIDgwLCA3MiwgMTI4LCA2NiwgNzksIDg5LCAxMjgsIDY2LCA3OSwgODcsIDg0LCA3MywgNjksIDEyOCwgNjYsIDc5LCAKKyAgICA4NywgODQsIDczLCAxOTcsIDY2LCA3OSwgODcsIDc2LCA3MywgNzgsIDcxLCAxMjgsIDY2LCA3OSwgODcsIDc2LCAxMjgsIAorICAgIDY2LCA3OSwgODcsIDczLCA3OCwgMTk5LCA2NiwgNzksIDIxNSwgNjYsIDc5LCA4NSwgODEsIDg1LCA2OSwgODQsIDEyOCwgCisgICAgNjYsIDc5LCA4NSwgNzgsIDY4LCA2NSwgODIsIDIxNywgNjYsIDc5LCA4NCwgODQsIDc5LCA3NywgNDUsIDc2LCA3MywgNzEsIAorICAgIDcyLCA4NCwgNjksIDE5NiwgNjYsIDc5LCA4NCwgODQsIDc5LCA3NywgMTI4LCA2NiwgNzksIDg0LCA4NCwgNzksIDIwNSwgCisgICAgNjYsIDc5LCA4NCwgODQsIDc2LCA2OSwgMTI4LCA2NiwgNzksIDg0LCA4NCwgNzYsIDE5NywgNjYsIDc5LCA4NCwgMjAwLCAKKyAgICA2NiwgNzksIDgyLCA4NSwgODQsIDc5LCAxMjgsIDY2LCA3OSwgODIsIDY1LCA4OCwgNDUsIDUxLCAxMjgsIDY2LCA3OSwgODIsIAorICAgIDY1LCA4OCwgNDUsIDUwLCAxMjgsIDY2LCA3OSwgODIsIDY1LCA4OCwgMTI4LCA2NiwgNzksIDgwLCA3OSwgNzcsIDc5LCA3MCwgCisgICAgMjA3LCA2NiwgNzksIDc5LCA4NCwgODMsIDEyOCwgNjYsIDc5LCA3OSwgODQsIDEyOCwgNjYsIDc5LCA3OSwgNzcsIDY5LCAKKyAgICA4MiwgNjUsIDc4LCA3MSwgMTI4LCA2NiwgNzksIDc5LCA3NSwgODMsIDEyOCwgNjYsIDc5LCA3OSwgNzUsIDc3LCA2NSwgODIsIAorICAgIDc1LCAxMjgsIDY2LCA3OSwgNzksIDc1LCA3NywgNjUsIDgyLCAyMDMsIDY2LCA3OSwgNzgsIDY5LCAxMjgsIDY2LCA3OSwgCisgICAgNzcsIDY2LCAxMjgsIDY2LCA3OSwgNzcsIDEyOCwgNjYsIDc5LCA3NiwgODQsIDEyOCwgNjYsIDc5LCA3NiwgMjEyLCA2NiwgCisgICAgNzksIDcyLCA2NSwgNzMsIDgyLCA3MywgMTk1LCA2NiwgNzksIDY4LCA4OSwgMTI4LCA2NiwgNzksIDY1LCA4MiwgMTI4LCAKKyAgICA2NiwgNzksIDY1LCAxMjgsIDY2LCA3NiwgODUsIDY5LCAxMjgsIDY2LCA3NiwgODUsIDE5NywgNjYsIDc2LCA3OSwgODcsIAorICAgIDcwLCA3MywgODMsIDcyLCAxMjgsIDY2LCA3NiwgNzksIDgzLCA4MywgNzksIDc3LCAxMjgsIDY2LCA3NiwgNzksIDc5LCA2OCwgCisgICAgMTI4LCA2NiwgNzYsIDc5LCA3OCwgMTk2LCA2NiwgNzYsIDc5LCA2NywgNzUsIDEyOCwgNjYsIDc2LCA2OSwgNzgsIDY4LCAKKyAgICA2OSwgMTk2LCA2NiwgNzYsIDY1LCA3OCwgNzUsIDEyOCwgNjYsIDc2LCA2NSwgNzgsIDIwMywgNjYsIDc2LCA2NSwgNjgsIAorICAgIDE5NywgNjYsIDc2LCA2NSwgNjcsIDc1LCA3MCwgNzksIDc5LCAyMTIsIDY2LCA3NiwgNjUsIDY3LCA3NSwgNDUsIDc2LCA2OSwgCisgICAgODQsIDg0LCA2OSwgMjEwLCA2NiwgNzYsIDY1LCA2NywgNzUsIDQ1LCA3MCwgNjksIDY1LCA4NCwgNzIsIDY5LCA4MiwgNjksIAorICAgIDE5NiwgNjYsIDc2LCA2NSwgNjcsIDc1LCAxMjgsIDY2LCA3NSwgNjUsIDE3MywgNjYsIDczLCA4NCwgODQsIDY5LCA4MiwgCisgICAgMTI4LCA2NiwgNzMsIDg0LCA3MywgNzgsIDE5OSwgNjYsIDczLCA4MywgNzcsIDg1LCA4NCwgMjAwLCA2NiwgNzMsIDgzLCAKKyAgICA3NywgNzMsIDc2LCA3NiwgNjUsIDIwMCwgNjYsIDczLCA4MywgNzIsIDc5LCA4MCwgMTI4LCA2NiwgNzMsIDgzLCA2OSwgNjcsIAorICAgIDg0LCA3MywgNzgsIDE5OSwgNjYsIDczLCA4MywgNjUsIDcyLCAxMjgsIDY2LCA3MywgODIsIDg1LCAxMjgsIDY2LCA3MywgCisgICAgODIsIDg0LCA3MiwgNjgsIDY1LCAyMTcsIDY2LCA3MywgODIsIDcxLCA2NSwgMTI4LCA2NiwgNzMsIDgyLCA2OCwgMTI4LCAKKyAgICA2NiwgNzMsIDc5LCA3MiwgNjUsIDkwLCA2NSwgODIsIDE5NiwgNjYsIDczLCA3OCwgNzksIDY3LCA4NSwgNzYsIDY1LCAyMTAsIAorICAgIDY2LCA3MywgNzgsIDY4LCA3MywgNzgsIDE5OSwgNjYsIDczLCA3OCwgNjgsIDczLCAxMjgsIDY2LCA3MywgNzgsIDY1LCA4MiwgCisgICAgMjE3LCA2NiwgNzMsIDc2LCA3NiwgNzMsIDY1LCA4MiwgNjgsIDgzLCAxMjgsIDY2LCA3MywgNzYsIDY1LCA2NiwgNzMsIDY1LCAKKyAgICAyMDQsIDY2LCA3MywgNzUsIDczLCA3OCwgNzMsIDEyOCwgNjYsIDczLCA3MSwgMTI4LCA2NiwgNzMsIDE5OSwgNjYsIDczLCAKKyAgICA2OSwgODQsIDEyOCwgNjYsIDczLCA2OCwgNjksIDc4LCA4NCwgNjUsIDIwNCwgNjYsIDczLCA2OCwgNjUsIDc1LCA4NSwgNzksIAorICAgIDIwNiwgNjYsIDczLCA2NywgODksIDY3LCA3NiwgNzMsIDgzLCA4NCwgMTI4LCA2NiwgNzMsIDY3LCA4OSwgNjcsIDc2LCA2OSwgCisgICAgODMsIDEyOCwgNjYsIDczLCA2NywgODksIDY3LCA3NiwgNjksIDEyOCwgNjYsIDczLCA2NywgNjksIDgwLCA4MywgMTI4LCAKKyAgICA2NiwgNzMsIDY2LCA3NiwgNjksIDQ1LCA2NywgODIsIDY5LCAxOTcsIDY2LCA3MywgNjYsIDEyOCwgNjYsIDIwMSwgNjYsIAorICAgIDcyLCA4NSwgMTI4LCA2NiwgNzIsIDc5LCA3OSwgMTI4LCA2NiwgNzIsIDc5LCAxMjgsIDY2LCA3MiwgNzMsIDEyOCwgNjYsIAorICAgIDcyLCA2OSwgODQsIDcyLCAxMjgsIDY2LCA3MiwgNjksIDY5LCAxMjgsIDY2LCA3MiwgNjksIDEyOCwgNjYsIDcyLCA2NSwgCisgICAgODQsIDg0LCA3MywgODAsIDgyLCA3OSwgNzYsIDIxMywgNjYsIDcyLCA2NSwgNzcsIDEyOCwgNjYsIDcyLCA2NSwgNjUsIAorICAgIDEyOCwgNjYsIDcyLCA2NSwgMTI4LCA2NiwgNjksIDg5LCA4OSwgNjUsIDc2LCAxMjgsIDY2LCA2OSwgODgsIDEyOCwgNjYsIAorICAgIDY5LCA4NiwgNjksIDgyLCA2NSwgNzEsIDY5LCAxMjgsIDY2LCA2OSwgODQsIDg3LCA2OSwgNjksIDc4LCAxMjgsIDY2LCA2OSwgCisgICAgODQsIDg3LCA2OSwgNjksIDIwNiwgNjYsIDY5LCA4NCwgNzIsIDEyOCwgNjYsIDY5LCA4NCwgNjUsIDEyOCwgNjYsIDY5LCAKKyAgICA4NCwgMTkzLCA2NiwgNjksIDIxMiwgNjYsIDY5LCA4MywgNzMsIDY4LCAxOTcsIDY2LCA2OSwgODIsIDc1LCA2NSwgNzgsIAorICAgIDY1LCAyMDYsIDY2LCA2OSwgODIsIDY2LCA2OSwgMjEwLCA2NiwgNjksIDgwLCAxMjgsIDY2LCA2OSwgNzksIDgyLCAxOTUsIAorICAgIDY2LCA2OSwgNzgsIDkwLCA2OSwgNzgsIDE5NywgNjYsIDY5LCA3OCwgODQsIDIwNywgNjYsIDY5LCA3OCwgNjgsIDY5LCAKKyAgICAxMjgsIDY2LCA2OSwgNzgsIDY4LCAxMjgsIDY2LCA2OSwgMjA2LCA2NiwgNjksIDc2LCA4NCwgMTI4LCA2NiwgNjksIDc2LCAKKyAgICAyMTIsIDY2LCA2OSwgNzYsIDc5LCAyMTUsIDY2LCA2OSwgNzYsIDc2LCAxMjgsIDY2LCA2OSwgNzYsIDIwNCwgNjYsIDY5LCAKKyAgICA3NiwgNzEsIDg0LCA3MiwgNzksIDIxMCwgNjYsIDY5LCA3NiwgMTI4LCA2NiwgNjksIDczLCA4NCwgNzIsIDEyOCwgNjYsIAorICAgIDY5LCA3MiwgNzMsIDc4LCAxOTYsIDY2LCA2OSwgNzIsIDY5LCA3MiwgMTI4LCA2NiwgNjksIDcyLCA2OSwgMjAwLCA2NiwgCisgICAgNjksIDcyLCAxMjgsIDY2LCA2OSwgMjAwLCA2NiwgNjksIDcxLCA3MywgNzgsIDc4LCA3MywgNzgsIDcxLCAxMjgsIDY2LCAKKyAgICA2OSwgNzEsIDczLCA3OCwgNzgsIDY5LCA4MiwgMTI4LCA2NiwgNjksIDcxLCA3MywgMjA2LCA2NiwgNjksIDcwLCA3OSwgODIsIAorICAgIDE5NywgNjYsIDY5LCA2OSwgODQsIDc2LCA2OSwgMTI4LCA2NiwgNjksIDY5LCA4NCwgNjUsIDEyOCwgNjYsIDY5LCA2OSwgCisgICAgMjEwLCA2NiwgNjksIDY5LCA3MiwgNzMsIDg2LCA2OSwgMTI4LCA2NiwgNjksIDY5LCA3MiwgMTI4LCA2NiwgNjksIDY5LCAKKyAgICAyMDAsIDY2LCA2OSwgNjcsIDY1LCA4NSwgODMsIDY5LCAxMjgsIDY2LCA2OSwgNjUsIDg2LCA2OSwgMjEwLCA2NiwgNjksIAorICAgIDY1LCA4NCwgNzMsIDc4LCAxOTksIDY2LCA2OSwgNjUsIDg0LCAxMjgsIDY2LCA2OSwgNjUsIDIxMCwgNjYsIDY5LCA2NSwgCisgICAgNzgsIDEyOCwgNjYsIDY5LCA2NSwgNzcsIDY5LCAxOTYsIDY2LCA2NywgNjUsIDY4LCAxMjgsIDY2LCA2NywgNjUsIDE5NiwgCisgICAgNjYsIDY2LCA4OSwgODgsIDEyOCwgNjYsIDY2LCA4OSwgODQsIDEyOCwgNjYsIDY2LCA4OSwgODAsIDEyOCwgNjYsIDY2LCAKKyAgICA4OSwgMTI4LCA2NiwgNjYsIDg1LCA4OCwgMTI4LCA2NiwgNjYsIDg1LCA4NCwgMTI4LCA2NiwgNjYsIDg1LCA4MiwgODgsIAorICAgIDEyOCwgNjYsIDY2LCA4NSwgODIsIDEyOCwgNjYsIDY2LCA4NSwgODAsIDEyOCwgNjYsIDY2LCA4NSwgNzksIDg4LCAxMjgsIAorICAgIDY2LCA2NiwgODUsIDc5LCA4MCwgMTI4LCA2NiwgNjYsIDg1LCA3OSwgMTI4LCA2NiwgNjYsIDg1LCAxMjgsIDY2LCA2NiwgCisgICAgNzksIDg4LCAxMjgsIDY2LCA2NiwgNzksIDg0LCAxMjgsIDY2LCA2NiwgNzksIDgwLCAxMjgsIDY2LCA2NiwgNzksIDEyOCwgCisgICAgNjYsIDY2LCA3MywgODgsIDEyOCwgNjYsIDY2LCA3MywgODAsIDEyOCwgNjYsIDY2LCA3MywgNjksIDg4LCAxMjgsIDY2LCAKKyAgICA2NiwgNzMsIDY5LCA4NCwgMTI4LCA2NiwgNjYsIDczLCA2OSwgODAsIDEyOCwgNjYsIDY2LCA3MywgNjksIDEyOCwgNjYsIAorICAgIDY2LCA3MywgMTI4LCA2NiwgNjYsIDY5LCA4OCwgMTI4LCA2NiwgNjYsIDY5LCA4MCwgMTI4LCA2NiwgNjYsIDY5LCA2OSwgCisgICAgMTI4LCA2NiwgNjYsIDY5LCAxMjgsIDY2LCA2NiwgNjUsIDg4LCAxMjgsIDY2LCA2NiwgNjUsIDg0LCAxMjgsIDY2LCA2NiwgCisgICAgNjUsIDgwLCAxMjgsIDY2LCA2NiwgNjUsIDY1LCAxMjgsIDY2LCA2NiwgNjUsIDEyOCwgNjYsIDY1LCA4OSwgNjUsIDc4LCAKKyAgICA3OCwgNjUsIDEyOCwgNjYsIDY1LCA4NSwgMTI4LCA2NiwgNjUsIDg0LCA4NCwgNjksIDgyLCA4OSwgMTI4LCA2NiwgNjUsIAorICAgIDg0LCA3MiwgODQsIDg1LCA2NiwgMTI4LCA2NiwgNjUsIDg0LCA3MiwgNjUsIDc3LCA2NSwgODMsIDY1LCA4NCwgMTI4LCA2NiwgCisgICAgNjUsIDg0LCA3MiwgMTI4LCA2NiwgNjUsIDg0LCAyMDAsIDY2LCA2NSwgODQsIDY1LCAyMDMsIDY2LCA2NSwgODMsIDgzLCAKKyAgICA2NSwgMTI4LCA2NiwgNjUsIDgzLCA3NSwgNjksIDg0LCA2NiwgNjUsIDc2LCAyMDQsIDY2LCA2NSwgODMsIDcyLCA3NSwgNzMsIAorICAgIDIxMCwgNjYsIDY1LCA4MywgNzIsIDEyOCwgNjYsIDY1LCA4MywgNjksIDY2LCA2NSwgNzYsIDc2LCAxMjgsIDY2LCA2NSwgCisgICAgODMsIDY5LCAxMjgsIDY2LCA2NSwgODMsIDE5NywgNjYsIDY1LCA4MiwgODMsIDEyOCwgNjYsIDY1LCA4MiwgODIsIDczLCAKKyAgICA2OSwgODIsIDEyOCwgNjYsIDY1LCA4MiwgODIsIDY5LCA3NSwgNzIsIDEyOCwgNjYsIDY1LCA4MiwgODIsIDY5LCA2OSwgCisgICAgMTI4LCA2NiwgNjUsIDgyLCA4MiwgNjksIDE5NywgNjYsIDY1LCA4MiwgNzYsIDczLCA3OCwgNjksIDEyOCwgNjYsIDY1LCAKKyAgICA4MiwgNzYsIDY5LCA4OSwgMTI4LCA2NiwgNjUsIDgyLCA3MywgODksIDc5LCA3OSwgODMsIDY1LCA3OCwgMTI4LCA2NiwgNjUsIAorICAgIDgyLCA2NiwgNjksIDIxMCwgNjYsIDY1LCA4MiwgMTk0LCA2NiwgNjUsIDgyLCA2NSwgNTAsIDEyOCwgNjYsIDY1LCAyMTAsIAorICAgIDY2LCA2NSwgNzgsIDg0LCA3OSwgNjcsIDEyOCwgNjYsIDY1LCA3OCwgNzUsIDc4LCA3OSwgODQsIDE5NywgNjYsIDY1LCA3OCwgCisgICAgNzUsIDEyOCwgNjYsIDY1LCA3OCwgMjAzLCA2NiwgNjUsIDc4LCA2OCwgMTI4LCA2NiwgNjUsIDc4LCA2NSwgNzgsIDY1LCAKKyAgICAxMjgsIDY2LCA2NSwgNzgsIDUwLCAxMjgsIDY2LCA2NSwgNzgsIDE3OCwgNjYsIDY1LCA3NywgNjYsIDc5LCA3OSwgODMsIAorICAgIDEyOCwgNjYsIDY1LCA3NywgNjYsIDc5LCA3OSwgMTI4LCA2NiwgNjUsIDc2LCA4NSwgNjgsIDY1LCAxMjgsIDY2LCA2NSwgCisgICAgNzYsIDc2LCA3OSwgMjEyLCA2NiwgNjUsIDc2LCA3NiwgNzksIDc5LCA3OCwgNDUsIDgzLCA4MCwgNzksIDc1LCA2OSwgMTk2LCAKKyAgICA2NiwgNjUsIDc2LCA3NiwgNzksIDc5LCA3OCwgMTI4LCA2NiwgNjUsIDc2LCA2NSwgNzEsIDEyOCwgNjYsIDY1LCA3NiwgCisgICAgMTI4LCA2NiwgNjUsIDIwNCwgNjYsIDY1LCA3MywgODIsIDc1LCA2NSwgNzgsIDEyOCwgNjYsIDY1LCA3MywgNzcsIDY1LCAKKyAgICA3MywgMTI4LCA2NiwgNjUsIDcyLCA4NCwgMTI4LCA2NiwgNjUsIDcyLCA3MywgODIsIDcxLCA3OSwgNzcsIDg1LCA3NSwgNzIsIAorICAgIDY1LCAxMjgsIDY2LCA2NSwgNzIsIDY1LCA4MiwgNTAsIDEyOCwgNjYsIDY1LCA3MiwgMTI4LCA2NiwgNjUsIDcxLCA3MSwgCisgICAgNjUsIDcxLCAxOTcsIDY2LCA2NSwgNzEsIDY1LCAxMjgsIDY2LCA2NSwgNzEsIDUxLCAxMjgsIDY2LCA2NSwgMTk5LCA2NiwgCisgICAgNjUsIDY4LCA3MSwgNjksIDgyLCAxMjgsIDY2LCA2NSwgNjgsIDcxLCA2OSwgMTI4LCA2NiwgNjUsIDY4LCAxMjgsIDY2LCAKKyAgICA2NSwgNjcsIDg0LCA4MiwgNzMsIDY1LCAyMDYsIDY2LCA2NSwgNjcsIDc1LCA4NywgNjUsIDgyLCA2OCwgMTI4LCA2NiwgNjUsIAorICAgIDY3LCA3NSwgODMsIDgwLCA2NSwgNjcsIDY5LCAxMjgsIDY2LCA2NSwgNjcsIDc1LCA4MywgNzYsIDY1LCA4MywgNzIsIDEyOCwgCisgICAgNjYsIDY1LCA2NywgNzUsIDgzLCA3NiwgNjUsIDgzLCAyMDAsIDY2LCA2NSwgNjcsIDc1LCA3MiwgNjUsIDc4LCAxOTYsIDY2LCAKKyAgICA2NSwgNjcsIDc1LCA0NSwgODQsIDczLCA3NiwgODQsIDY5LCAxOTYsIDY2LCA2NSwgNjcsIDc1LCAxMjgsIDY2LCA2NSwgNjcsIAorICAgIDIwMywgNjYsIDY1LCA2NiwgODksIDEyOCwgNjYsIDY1LCA2NiwgMjE3LCA2NiwgNjUsIDY1LCA4MiwgNjksIDgyLCA4NSwgCisgICAgMTI4LCA2NiwgNjUsIDQ1LCA1MCwgMTI4LCA2NiwgNTEsIDQ4LCA1MywgMTI4LCA2NiwgNTAsIDUzLCA1NywgMTI4LCA2NiwgCisgICAgNTAsIDUzLCA1NiwgMTI4LCA2NiwgNTAsIDUzLCA1NSwgMTI4LCA2NiwgNTAsIDUzLCA1NCwgMTI4LCA2NiwgNTAsIDUzLCAKKyAgICA1MywgMTI4LCA2NiwgNTAsIDUzLCAxODAsIDY2LCA1MCwgNTMsIDUxLCAxMjgsIDY2LCA1MCwgNTMsIDUwLCAxMjgsIDY2LCAKKyAgICA1MCwgNTMsIDQ5LCAxMjgsIDY2LCA1MCwgNTMsIDQ4LCAxMjgsIDY2LCA1MCwgNTIsIDU3LCAxMjgsIDY2LCA1MCwgNTIsIAorICAgIDU2LCAxMjgsIDY2LCA1MCwgNTIsIDE4MywgNjYsIDUwLCA1MiwgNTQsIDEyOCwgNjYsIDUwLCA1MiwgNTMsIDEyOCwgNjYsIAorICAgIDUwLCA1MiwgMTc5LCA2NiwgNTAsIDUyLCAxNzgsIDY2LCA1MCwgNTIsIDE3NywgNjYsIDUwLCA1MiwgMTc2LCA2NiwgNTAsIAorICAgIDUxLCA1NCwgMTI4LCA2NiwgNTAsIDUxLCA1MiwgMTI4LCA2NiwgNTAsIDUxLCAxNzksIDY2LCA1MCwgNTEsIDUwLCAxMjgsIAorICAgIDY2LCA1MCwgNTEsIDE3NywgNjYsIDUwLCA1MSwgMTc2LCA2NiwgNTAsIDUwLCA1NywgMTI4LCA2NiwgNTAsIDUwLCA1NiwgCisgICAgMTI4LCA2NiwgNTAsIDUwLCA1NSwgMTI4LCA2NiwgNTAsIDUwLCA1NCwgMTI4LCA2NiwgNTAsIDUwLCAxODEsIDY2LCA1MCwgCisgICAgNTAsIDUwLCAxMjgsIDY2LCA1MCwgNTAsIDQ5LCAxMjgsIDY2LCA1MCwgNTAsIDE3NiwgNjYsIDUwLCA0OSwgNTcsIDEyOCwgCisgICAgNjYsIDUwLCA0OSwgNTYsIDEyOCwgNjYsIDUwLCA0OSwgNTUsIDEyOCwgNjYsIDUwLCA0OSwgNTQsIDEyOCwgNjYsIDUwLCAKKyAgICA0OSwgNTMsIDEyOCwgNjYsIDUwLCA0OSwgNTIsIDEyOCwgNjYsIDUwLCA0OSwgNTEsIDEyOCwgNjYsIDUwLCA0OSwgNTAsIAorICAgIDEyOCwgNjYsIDUwLCA0OSwgNDksIDEyOCwgNjYsIDUwLCA0OSwgNDgsIDEyOCwgNjYsIDUwLCA0OCwgNTcsIDEyOCwgNjYsIAorICAgIDUwLCA0OCwgNTYsIDEyOCwgNjYsIDUwLCA0OCwgNTUsIDEyOCwgNjYsIDUwLCA0OCwgNTQsIDEyOCwgNjYsIDUwLCA0OCwgCisgICAgNTMsIDEyOCwgNjYsIDUwLCA0OCwgNTIsIDEyOCwgNjYsIDUwLCA0OCwgNTEsIDEyOCwgNjYsIDUwLCA0OCwgNTAsIDEyOCwgCisgICAgNjYsIDUwLCA0OCwgNDksIDEyOCwgNjYsIDUwLCA0OCwgNDgsIDEyOCwgNjYsIDQ5LCA1NywgMTc3LCA2NiwgNDksIDU3LCAKKyAgICA0OCwgMTI4LCA2NiwgNDksIDU2LCA1NywgMTI4LCA2NiwgNDksIDU2LCA1MywgMTI4LCA2NiwgNDksIDU2LCA1MiwgMTI4LCAKKyAgICA2NiwgNDksIDU2LCA1MSwgMTI4LCA2NiwgNDksIDU2LCA1MCwgMTI4LCA2NiwgNDksIDU2LCA0OSwgMTI4LCA2NiwgNDksIAorICAgIDU2LCA0OCwgMTI4LCA2NiwgNDksIDU1LCA1NywgMTI4LCA2NiwgNDksIDU1LCA1NiwgMTI4LCA2NiwgNDksIDU1LCA1NSwgCisgICAgMTI4LCA2NiwgNDksIDU1LCAxODIsIDY2LCA0OSwgNTUsIDUyLCAxMjgsIDY2LCA0OSwgNTUsIDE3OSwgNjYsIDQ5LCA1NSwgCisgICAgNTAsIDEyOCwgNjYsIDQ5LCA1NSwgNDksIDEyOCwgNjYsIDQ5LCA1NSwgNDgsIDEyOCwgNjYsIDQ5LCA1NCwgNTcsIDEyOCwgCisgICAgNjYsIDQ5LCA1NCwgNTYsIDEyOCwgNjYsIDQ5LCA1NCwgNTUsIDEyOCwgNjYsIDQ5LCA1NCwgNTQsIDEyOCwgNjYsIDQ5LCAKKyAgICA1NCwgNTMsIDEyOCwgNjYsIDQ5LCA1NCwgNTIsIDEyOCwgNjYsIDQ5LCA1NCwgMTc5LCA2NiwgNDksIDU0LCAxNzgsIDY2LCAKKyAgICA0OSwgNTQsIDQ5LCAxMjgsIDY2LCA0OSwgNTQsIDQ4LCAxMjgsIDY2LCA0OSwgNTMsIDE4NSwgNjYsIDQ5LCA1MywgNTYsIAorICAgIDEyOCwgNjYsIDQ5LCA1MywgNTUsIDEyOCwgNjYsIDQ5LCA1MywgMTgyLCA2NiwgNDksIDUzLCA1MywgMTI4LCA2NiwgNDksIAorICAgIDUzLCA1MiwgMTI4LCA2NiwgNDksIDUzLCA1MSwgMTI4LCA2NiwgNDksIDUzLCA1MCwgMTI4LCA2NiwgNDksIDUzLCAxNzcsIAorICAgIDY2LCA0OSwgNTMsIDQ4LCAxMjgsIDY2LCA0OSwgNTIsIDU0LCAxMjgsIDY2LCA0OSwgNTIsIDE4MSwgNjYsIDQ5LCA1MiwgCisgICAgNTAsIDEyOCwgNjYsIDQ5LCA1MiwgMTc3LCA2NiwgNDksIDUyLCAxNzYsIDY2LCA0OSwgNTEsIDE4MSwgNjYsIDQ5LCA1MSwgCisgICAgMTc5LCA2NiwgNDksIDUxLCA1MCwgMTI4LCA2NiwgNDksIDUxLCAxNzcsIDY2LCA0OSwgNTEsIDE3NiwgNjYsIDQ5LCA1MCwgCisgICAgMTg0LCA2NiwgNDksIDUwLCAxODMsIDY2LCA0OSwgNTAsIDE4MSwgNjYsIDQ5LCA1MCwgMTc5LCA2NiwgNDksIDUwLCAxNzgsIAorICAgIDY2LCA0OSwgNTAsIDE3NywgNjYsIDQ5LCA1MCwgMTc2LCA2NiwgNDksIDQ4LCA1NywgMjA1LCA2NiwgNDksIDQ4LCA1NywgCisgICAgMTk4LCA2NiwgNDksIDQ4LCA1NiwgMjA1LCA2NiwgNDksIDQ4LCA1NiwgMTk4LCA2NiwgNDksIDQ4LCA1NSwgMjA1LCA2NiwgCisgICAgNDksIDQ4LCA1NSwgMTk4LCA2NiwgNDksIDQ4LCA1NCwgMjA1LCA2NiwgNDksIDQ4LCA1NCwgMTk4LCA2NiwgNDksIDQ4LCAKKyAgICA1MywgMjA1LCA2NiwgNDksIDQ4LCA1MywgMTk4LCA2NiwgNDksIDQ4LCAxODEsIDY2LCA0OSwgNDgsIDE4MCwgNjYsIDQ5LCAKKyAgICA0OCwgMTc4LCA2NiwgNDksIDQ4LCAxNzYsIDY2LCA0OCwgNTcsIDE3NywgNjYsIDQ4LCA1NywgMTc2LCA2NiwgNDgsIDU2LCAKKyAgICA1NywgMTI4LCA2NiwgNDgsIDU2LCAxODMsIDY2LCA0OCwgNTYsIDU0LCAxMjgsIDY2LCA0OCwgNTYsIDE4MSwgNjYsIDQ4LCAKKyAgICA1NiwgNTEsIDEyOCwgNjYsIDQ4LCA1NiwgNTAsIDEyOCwgNjYsIDQ4LCA1NiwgMTc3LCA2NiwgNDgsIDU2LCAxNzYsIDY2LCAKKyAgICA0OCwgNTUsIDU3LCAxMjgsIDY2LCA0OCwgNTUsIDE4NCwgNjYsIDQ4LCA1NSwgMTgzLCA2NiwgNDgsIDU1LCAxODIsIDY2LCAKKyAgICA0OCwgNTUsIDE4MSwgNjYsIDQ4LCA1NSwgMTgwLCA2NiwgNDgsIDU1LCAxNzksIDY2LCA0OCwgNTUsIDE3OCwgNjYsIDQ4LCAKKyAgICA1NSwgMTc3LCA2NiwgNDgsIDU1LCAxNzYsIDY2LCA0OCwgNTQsIDE4NSwgNjYsIDQ4LCA1NCwgMTg0LCA2NiwgNDgsIDU0LCAKKyAgICAxODMsIDY2LCA0OCwgNTQsIDE4MiwgNjYsIDQ4LCA1NCwgMTgxLCA2NiwgNDgsIDU0LCA1MiwgMTI4LCA2NiwgNDgsIDU0LCAKKyAgICA1MSwgMTI4LCA2NiwgNDgsIDU0LCAxNzgsIDY2LCA0OCwgNTQsIDE3NywgNjYsIDQ4LCA1NCwgMTc2LCA2NiwgNDgsIDUzLCAKKyAgICAxODUsIDY2LCA0OCwgNTMsIDE4NCwgNjYsIDQ4LCA1MywgMTgzLCA2NiwgNDgsIDUzLCA1NCwgMTI4LCA2NiwgNDgsIDUzLCAKKyAgICAxODEsIDY2LCA0OCwgNTMsIDE4MCwgNjYsIDQ4LCA1MywgMTc5LCA2NiwgNDgsIDUzLCAxNzgsIDY2LCA0OCwgNTMsIDE3NywgCisgICAgNjYsIDQ4LCA1MywgMTc2LCA2NiwgNDgsIDUyLCA1NywgMTI4LCA2NiwgNDgsIDUyLCAxODQsIDY2LCA0OCwgNTIsIDU1LCAKKyAgICAxMjgsIDY2LCA0OCwgNTIsIDE4MiwgNjYsIDQ4LCA1MiwgMTgxLCA2NiwgNDgsIDUyLCAxODAsIDY2LCA0OCwgNTIsIDE3OSwgCisgICAgNjYsIDQ4LCA1MiwgMTc4LCA2NiwgNDgsIDUyLCAxNzcsIDY2LCA0OCwgNTIsIDE3NiwgNjYsIDQ4LCA1MSwgMTg1LCA2NiwgCisgICAgNDgsIDUxLCAxODQsIDY2LCA0OCwgNTEsIDE4MywgNjYsIDQ4LCA1MSwgMTgyLCA2NiwgNDgsIDUxLCA1MiwgMTI4LCA2NiwgCisgICAgNDgsIDUxLCAxNzksIDY2LCA0OCwgNTEsIDE3OCwgNjYsIDQ4LCA1MSwgMTc3LCA2NiwgNDgsIDUxLCAxNzYsIDY2LCA0OCwgCisgICAgNTAsIDE4NSwgNjYsIDQ4LCA1MCwgMTg0LCA2NiwgNDgsIDUwLCAxODMsIDY2LCA0OCwgNTAsIDE4MiwgNjYsIDQ4LCA1MCwgCisgICAgMTgxLCA2NiwgNDgsIDUwLCAxODAsIDY2LCA0OCwgNTAsIDE3OSwgNjYsIDQ4LCA1MCwgNTAsIDEyOCwgNjYsIDQ4LCA1MCwgCisgICAgMTc3LCA2NiwgNDgsIDUwLCAxNzYsIDY2LCA0OCwgNDksIDU3LCAxMjgsIDY2LCA0OCwgNDksIDU2LCAxMjgsIDY2LCA0OCwgCisgICAgNDksIDE4MywgNjYsIDQ4LCA0OSwgMTgyLCA2NiwgNDgsIDQ5LCAxODEsIDY2LCA0OCwgNDksIDE4MCwgNjYsIDQ4LCA0OSwgCisgICAgMTc5LCA2NiwgNDgsIDQ5LCAxNzgsIDY2LCA0OCwgNDksIDE3NywgNjYsIDQ4LCA0OSwgMTc2LCA2NiwgNDgsIDQ4LCA1NywgCisgICAgMTI4LCA2NiwgNDgsIDQ4LCAxODUsIDY2LCA0OCwgNDgsIDU2LCAxMjgsIDY2LCA0OCwgNDgsIDE4NCwgNjYsIDQ4LCA0OCwgCisgICAgNTUsIDEyOCwgNjYsIDQ4LCA0OCwgMTgzLCA2NiwgNDgsIDQ4LCA1NCwgMTI4LCA2NiwgNDgsIDQ4LCAxODIsIDY2LCA0OCwgCisgICAgNDgsIDUzLCA2NSwgMTI4LCA2NiwgNDgsIDQ4LCA1MywgMTI4LCA2NiwgNDgsIDQ4LCAxODEsIDY2LCA0OCwgNDgsIDUyLCAKKyAgICAxMjgsIDY2LCA0OCwgNDgsIDE4MCwgNjYsIDQ4LCA0OCwgNTEsIDEyOCwgNjYsIDQ4LCA0OCwgMTc5LCA2NiwgNDgsIDQ4LCAKKyAgICA1MCwgMTI4LCA2NiwgNDgsIDQ4LCAxNzgsIDY2LCA0OCwgNDgsIDQ5LCAxMjgsIDY2LCA0OCwgNDgsIDE3NywgNjUsIDkwLCAKKyAgICA4NSwgMTI4LCA2NSwgODksIDY5LCAyMTAsIDY1LCA4OSwgNjYsIDEyOCwgNjUsIDg5LCA2NSwgNzIsIDEyOCwgNjUsIDg4LCAKKyAgICA2OSwgMTI4LCA2NSwgODcsIDY5LCAxMjgsIDY1LCA4NiwgNjksIDgzLCA4NCwgNjUsIDIwNiwgNjUsIDg2LCA2OSwgODIsIAorICAgIDY1LCA3MSwgMTk3LCA2NSwgODYsIDY1LCA3NSwgODIsIDY1LCA3MiwgNjUsIDgzLCA2NSwgNzgsIDg5LCA2NSwgMTI4LCA2NSwgCisgICAgODYsIDY1LCA3MSwgODIsIDY1LCA3MiwgNjUsIDEyOCwgNjUsIDg1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNjUsIDg1LCAKKyAgICA4NCwgODUsIDc3LCA3OCwgMTI4LCA2NSwgODUsIDg0LCA3OSwgNzcsIDc5LCA2NiwgNzMsIDc2LCA2OSwgMTI4LCA2NSwgODUsIAorICAgIDg0LCA3OSwgNzcsIDY1LCA4NCwgNjksIDE5NiwgNjUsIDg1LCA4MywgODQsIDgyLCA2NSwgMjA0LCA2NSwgODUsIDgyLCA3MywgCisgICAgODAsIDczLCA3MSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNjUsIDg1LCA4MiwgNjUsIDc3LCA2NSwgOTAsIDY4LCA2NSwgNjUsIAorICAgIDcyLCA2NSwgMTI4LCA2NSwgODUsIDgyLCA2NSwgNzcsIDY1LCA5MCwgNjgsIDY1LCA2NSwgNDUsIDUwLCAxMjgsIDY1LCA4NSwgCisgICAgODIsIDY1LCA3NywgNjUsIDkwLCA2OCwgNjUsIDY1LCAxMjgsIDY1LCA4NSwgNzgsIDc4LCAxMjgsIDY1LCA4NSwgNzEsIDg1LCAKKyAgICA4MywgODQsIDEyOCwgNjUsIDg1LCA3MSwgNzcsIDY5LCA3OCwgODQsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY1LCA4NSwgNjksIAorICAgIDEyOCwgNjUsIDg1LCA2NiwgNjksIDgyLCA3MSwgNzMsIDc4LCA2OSwgMTI4LCA2NSwgODQsIDg0LCA3MywgMTk1LCA2NSwgCisgICAgODQsIDg0LCA3MiwgNjUsIDY3LCA2NSwgNzgsIDEyOCwgNjUsIDg0LCA4NCwgNjksIDc4LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCAKKyAgICA2NSwgODQsIDg0LCA2NSwgMjAzLCA2NSwgODQsIDc5LCAyMDUsIDY1LCA4NCwgNzgsIDY1LCAyMDAsIDY1LCA4NCwgNzcsIAorICAgIDY1LCA2NSwgODUsIDEyOCwgNjUsIDg0LCA3MywgODksIDY1LCAxMjgsIDY1LCA4NCwgNzIsIDc2LCA2OSwgODQsIDczLCAKKyAgICAxOTUsIDY1LCA4NCwgNzIsIDY1LCA4MiwgODYsIDY1LCA4NiwgNjksIDY4LCA3MywgMTk1LCA2NSwgODQsIDcyLCA2NSwgODAsIAorICAgIDY1LCA4MywgNjcsIDY1LCAyMDYsIDY1LCA4MywgOTAsIDEyOCwgNjUsIDgzLCA4OSwgODUsIDgyLCAxOTMsIDY1LCA4MywgCisgICAgODksIDc3LCA4MCwgODQsIDc5LCA4NCwgNzMsIDY3LCA2NSwgNzYsIDc2LCAyMTcsIDY1LCA4MywgODQsIDgyLCA3OSwgNzgsIAorICAgIDc5LCA3NywgNzMsIDY3LCA2NSwgMjA0LCA2NSwgODMsIDg0LCA4MiwgNzksIDc2LCA3OSwgNzEsIDczLCA2NywgNjUsIDIwNCwgCisgICAgNjUsIDgzLCA4NCwgNzksIDc4LCA3MywgODMsIDcyLCA2OSwgMTk2LCA2NSwgODMsIDg0LCA2OSwgODIsIDczLCA4MywgNzcsIAorICAgIDEyOCwgNjUsIDgzLCA4NCwgNjksIDgyLCA3MywgODMsIDc1LCAyMTEsIDY1LCA4MywgODQsIDY5LCA4MiwgNzMsIDgzLCA3NSwgCisgICAgMTI4LCA2NSwgODMsIDg0LCA2OSwgODIsIDczLCA4MywgMjAzLCA2NSwgODMsIDg0LCA2OSwgODIsIDczLCA4MywgNjcsIDg1LCAKKyAgICA4MywgMTI4LCA2NSwgODMsIDgzLCA4OSwgODIsIDczLCA2NSwgMjA2LCA2NSwgODMsIDgzLCA2OSwgODIsIDg0LCA3MywgNzksIAorICAgIDc4LCAxMjgsIDY1LCA4MywgODAsIDczLCA4MiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY1LCA4MywgODAsIDczLCA4MiwgCisgICAgNjUsIDg0LCA2OSwgMTk2LCA2NSwgODMsIDgwLCA2OSwgODIsIDEyOCwgNjUsIDgzLCA3MywgNjUsIDQ1LCA2NSwgODUsIDgzLCAKKyAgICA4NCwgODIsIDY1LCA3NiwgNzMsIDY1LCAxMjgsIDY1LCA4MywgNzIsIDcxLCA2NSwgNjYsIDEyOCwgNjUsIDgzLCA3MiwgNjksIAorICAgIDgzLCAxMjgsIDY1LCA4MywgNzIsIDU3LCAxMjgsIDY1LCA4MywgNzIsIDE3OCwgNjUsIDgzLCA2NywgNjksIDc4LCA4NCwgCisgICAgMTI4LCA2NSwgODMsIDY3LCA2OSwgNzgsIDY4LCA3MywgNzgsIDE5OSwgNjUsIDgzLCA2NSwgNzYsIDUwLCAxMjgsIDY1LCAKKyAgICA4MiwgODUsIDcyLCA4NSwgNjUsIDEyOCwgNjUsIDgyLCA4NCwgNzMsIDgzLCAyMTIsIDY1LCA4MiwgODQsIDczLCA2NywgODUsIAorICAgIDc2LCA2NSwgODQsIDY5LCAxOTYsIDY1LCA4MiwgODQsIDY1LCA2NiwgMTk3LCA2NSwgODIsIDgzLCA2OSwgNzksIDgzLCAKKyAgICAxMjgsIDY1LCA4MiwgODMsIDY5LCA3OSwgMjExLCA2NSwgODIsIDgzLCA2OSwgNzgsIDczLCA2NywgMTI4LCA2NSwgODIsIAorICAgIDgyLCA3OSwgODcsIDgzLCAxMjgsIDY1LCA4MiwgODIsIDc5LCA4NywgMjExLCA2NSwgODIsIDgyLCA3OSwgODcsIDcyLCA2OSwgCisgICAgNjUsIDY4LCAxMjgsIDY1LCA4MiwgODIsIDc5LCA4NywgNzIsIDY5LCA2NSwgMTk2LCA2NSwgODIsIDgyLCA3OSwgODcsIDQ1LCAKKyAgICA4NCwgNjUsIDczLCA3NiwgMTI4LCA2NSwgODIsIDgyLCA3MywgODYsIDY5LCAxMjgsIDY1LCA4MiwgODIsIDY1LCA4OSwgCisgICAgMTI4LCA2NSwgODIsIDgwLCA2OSwgNzEsIDcxLCA3MywgNjUsIDg0LCAyMDcsIDY1LCA4MiwgNzksIDg1LCA4MywgNzMsIDc4LCAKKyAgICAxOTksIDY1LCA4MiwgNzksIDg1LCA4MiwgMTkzLCA2NSwgODIsIDc5LCA4NSwgNzgsIDY4LCA0NSwgODAsIDgyLCA3OSwgNzAsIAorICAgIDczLCA3NiwgNjksIDEyOCwgNjUsIDgyLCA3OSwgODUsIDc4LCAxOTYsIDY1LCA4MiwgNzcsIDg5LCAxMjgsIDY1LCA4MiwgCisgICAgNzcsIDc5LCA4NSwgODIsIDEyOCwgNjUsIDgyLCAyMDUsIDY1LCA4MiwgNzYsIDY1LCA4NSwgMTk5LCA2NSwgODIsIDc1LCAKKyAgICA4NCwgNzMsIDc1LCAyMDcsIDY1LCA4MiwgNzUsIDY1LCA2NiwgMTI4LCA2NSwgODIsIDc1LCA2NSwgNjUsIDc4LCA4NSwgCisgICAgMTI4LCA2NSwgODIsIDczLCA4MywgODQsIDY5LCA4MiwgNjUsIDEyOCwgNjUsIDgyLCA3MywgODMsIDg0LCA2OSwgODIsIAorICAgIDE5MywgNjUsIDgyLCA3MywgNjksIDgzLCAxMjgsIDY1LCA4MiwgNzEsIDc5LCA4NCwgNjksIDgyLCA3MywgMTI4LCA2NSwgCisgICAgODIsIDcxLCA3OSwgODMsIDg5LCA3OCwgODQsIDcyLCA2OSwgODQsIDc5LCA3OCwgMTI4LCA2NSwgODIsIDcxLCA3MywgMTI4LCAKKyAgICA2NSwgODIsIDY5LCA4MCwgNjUsIDEyOCwgNjUsIDgyLCA2OSwgNjUsIDEyOCwgNjUsIDgyLCA2OCwgNzIsIDY1LCA4NiwgNzMsIAorICAgIDgzLCA2NSwgODIsIDcxLCA2NSwgMTI4LCA2NSwgODIsIDY3LCA3MiwgNjUsIDczLCA3OSwgNzgsIDEyOCwgNjUsIDgyLCA2NywgCisgICAgNzIsIDY1LCA3MywgNzksIDIwNiwgNjUsIDgyLCA2NywgNzIsIDY1LCA3MywgMTk1LCA2NSwgODIsIDY3LCAyMDAsIDY1LCAKKyAgICA4MiwgNjcsIDEyOCwgNjUsIDgyLCAxOTUsIDY1LCA4MiwgNjUsIDc3LCA2NSwgNzMsIDE5NSwgNjUsIDgyLCA2NSwgNjksIAorICAgIDY1LCA2OSwgMTI4LCA2NSwgODIsIDY1LCA2OSwgNjUsIDQ1LCA4NSwgMTI4LCA2NSwgODIsIDY1LCA2OSwgNjUsIDQ1LCA3MywgCisgICAgMTI4LCA2NSwgODIsIDY1LCA2OSwgNjUsIDQ1LCA2OSwgNzksIDEyOCwgNjUsIDgyLCA2NSwgNjksIDY1LCA0NSwgNjksIAorICAgIDEyOCwgNjUsIDgyLCA2NSwgNjksIDY1LCA0NSwgNjUsIDEyOCwgNjUsIDgyLCA2NSwgNjgsIDEyOCwgNjUsIDgyLCA2NSwgCisgICAgMTk2LCA2NSwgODIsIDY1LCA2NiwgNzMsIDY3LCA0NSwgNzMsIDc4LCA2OCwgNzMsIDE5NSwgNjUsIDgyLCA2NSwgNjYsIDczLCAKKyAgICA2NSwgMjA2LCA2NSwgODIsIDQ1LCA4MiwgNjUsIDcyLCA3NywgNjUsIDIwNiwgNjUsIDgyLCA0NSwgODIsIDY1LCA3MiwgNjksIAorICAgIDY5LCA3NywgMTI4LCA2NSwgODEsIDg1LCA2NSwgODIsIDczLCA4NSwgODMsIDEyOCwgNjUsIDgxLCA4NSwgNjUsIDcwLCA3OSwgCisgICAgODIsIDg0LCA3MywgODMsIDEyOCwgNjUsIDgxLCA4NSwgMTkzLCA2NSwgODAsIDg1LCAyMDYsIDY1LCA4MCwgODIsIDczLCAKKyAgICA3NiwgMTI4LCA2NSwgODAsIDgwLCA4MiwgNzksIDg4LCA3MywgNzcsIDY1LCA4NCwgNjksIDc2LCAyMTcsIDY1LCA4MCwgODAsIAorICAgIDgyLCA3OSwgODgsIDczLCA3NywgNjUsIDg0LCA2OSwgMTI4LCA2NSwgODAsIDgwLCA4MiwgNzksIDY1LCA2NywgNzIsIDY5LCAKKyAgICAyMTEsIDY1LCA4MCwgODAsIDgyLCA3OSwgNjUsIDY3LCA3MiwgMTI4LCA2NSwgODAsIDgwLCA3NiwgNzMsIDY3LCA2NSwgODQsIAorICAgIDczLCA3OSwgNzgsIDEyOCwgNjUsIDgwLCA4MCwgNzYsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDIwNiwgNjUsIDgwLCA3OSwgCisgICAgODQsIDcyLCA2OSwgODMsIDEyOCwgNjUsIDgwLCA3OSwgODQsIDcyLCA2OSwgNzcsIDY1LCAxMjgsIDY1LCA4MCwgNzksIDgzLCAKKyAgICA4NCwgODIsIDc5LCA4MCwgNzIsIDY5LCAxMjgsIDY1LCA4MCwgNzksIDgzLCA4NCwgODIsIDc5LCA3MCwgNzksIDgzLCAxMjgsIAorICAgIDY1LCA4MCwgNzksIDgzLCA4NCwgODIsIDc5LCA3MCwgNzksIDIxMSwgNjUsIDgwLCA3OSwgODMsIDg0LCA4MiwgNzksIDcwLCAKKyAgICA3OSwgMjAxLCA2NSwgODAsIDc5LCA2OCwgNjksIDg4LCA3MywgNjUsIDEyOCwgNjUsIDgwLCA3OSwgNjgsIDY5LCA4MiwgNzcsIAorICAgIDE5MywgNjUsIDgwLCA3NiwgNzksIDg1LCA3OCwgMTI4LCA2NSwgODAsIDc2LCAyMDEsIDY1LCA4MCwgMjA0LCA2NSwgODAsIAorICAgIDczLCA3OCwgMTI4LCA2NSwgODAsIDY5LCA4MywgMjA3LCA2NSwgODAsIDY3LCAxMjgsIDY1LCA4MCwgNjUsIDgyLCA4NCwgCisgICAgMTI4LCA2NSwgODAsIDY1LCA2NSwgODQsIDc5LCAxMjgsIDY1LCA3OCwgODUsIDgzLCA4NiwgNjUsIDgyLCA2NSwgODksIDY1LCAKKyAgICAxMjgsIDY1LCA3OCwgODUsIDgzLCA4NiwgNjUsIDgyLCA2NSwgMTI4LCA2NSwgNzgsIDg1LCA4MywgODYsIDY1LCA4MiwgCisgICAgMTkzLCA2NSwgNzgsIDg1LCA2OCwgNjUsIDg0LCA4NCwgNjUsIDEyOCwgNjUsIDc4LCA4NSwgNjgsIDY1LCA4NCwgODQsIAorICAgIDE5MywgNjUsIDc4LCA4NCwgNzMsIDgyLCA2OSwgODMsIDg0LCA4MiwgNzMsIDY3LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NSwgCisgICAgNzgsIDg0LCA3MywgNzcsIDc5LCA3OCwgODksIDQ1LCA1MCwgMTI4LCA2NSwgNzgsIDg0LCA3MywgNzcsIDc5LCA3OCwgODksIAorICAgIDEyOCwgNjUsIDc4LCA4NCwgNzMsIDc3LCA3OSwgNzgsIDIxNywgNjUsIDc4LCA4NCwgNzMsIDc3LCA3OSwgNzgsIDczLCA2NSwgCisgICAgODQsIDY5LCAxMjgsIDY1LCA3OCwgODQsIDczLCA3NSwgNjksIDc4LCA3OSwgNzcsIDY1LCAxMjgsIDY1LCA3OCwgODQsIDczLCAKKyAgICA3NSwgNjksIDc4LCA3OSwgNzUsIDg5LCA3NiwgNzMsIDgzLCA3NywgNjUsIDEyOCwgNjUsIDc4LCA4NCwgNzMsIDcwLCA3OSwgCisgICAgNzgsIDczLCA2NSwgMTI4LCA2NSwgNzgsIDg0LCA3MywgNjcsIDc2LCA3OSwgNjcsIDc1LCA4NywgNzMsIDgzLCA2OSwgNDUsIAorICAgIDgyLCA3OSwgODQsIDY1LCA4NCwgNjksIDE5NiwgNjUsIDc4LCA4NCwgNzMsIDY3LCA3NiwgNzksIDY3LCA3NSwgODcsIDczLCAKKyAgICA4MywgMTk3LCA2NSwgNzgsIDg0LCA2OSwgNzgsIDc4LCA2NSwgMTI4LCA2NSwgNzgsIDg0LCA2OSwgNzgsIDc4LCAxOTMsIAorICAgIDY1LCA3OCwgODQsIDY1LCA4MiwgNzEsIDc5LCA3NywgODUsIDc1LCA3MiwgNjUsIDEyOCwgNjUsIDc4LCA4MywgODUsIDIxOCwgCisgICAgNjUsIDc4LCA4MywgNzIsIDY5LCAxMjgsIDY1LCA3OCwgODAsIDY5LCA2NSwgMTI4LCA2NSwgNzgsIDIwNywgNjUsIDc4LCAKKyAgICA3OCwgODUsIDczLCA4NCwgMjE3LCA2NSwgNzgsIDc4LCA3OSwgODQsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY1LCA3OCwgNzgsIAorICAgIDY1LCA2NSwgODUsIDEyOCwgNjUsIDc4LCA3NSwgNzIsIDEyOCwgNjUsIDc4LCA3NCwgNzMsIDEyOCwgNjUsIDc4LCA3MiwgCisgICAgODUsIDEyOCwgNjUsIDc4LCA3MSwgODUsIDc2LCA2NSwgODIsIDEyOCwgNjUsIDc4LCA3MSwgODUsIDczLCA4MywgNzIsIDY5LCAKKyAgICAxOTYsIDY1LCA3OCwgNzEsIDgzLCA4NCwgODIsIDc5LCAyMDUsIDY1LCA3OCwgNzEsIDgyLCAyMTcsIDY1LCA3OCwgNzEsIAorICAgIDc1LCA3MiwgNjUsIDc4LCA3NSwgNzIsIDg1LCAxMjgsIDY1LCA3OCwgNzEsIDY5LCAyMTAsIDY1LCA3OCwgNzEsIDY5LCA3NiwgCisgICAgMTI4LCA2NSwgNzgsIDcxLCA2OSwgNjgsIDEyOCwgNjUsIDc4LCA2OCwgNjUsIDgwLCAxMjgsIDY1LCA3OCwgNjcsIDc5LCAKKyAgICA4MiwgNjUsIDEyOCwgNjUsIDc4LCA2NywgNzIsIDc5LCA4MiwgMTI4LCA2NSwgNzgsIDY1LCA4NCwgODIsIDczLCA2NywgNzIsIAorICAgIDczLCA4MywgNzcsIDY1LCAxMjgsIDY1LCA3OCwgNjUsIDgwLCAxMjgsIDY1LCA3NywgODAsIDgzLCAxMjgsIDY1LCA3NywgCisgICAgODAsIDY5LCA4MiwgODMsIDY1LCA3OCwgNjgsIDEyOCwgNjUsIDc3LCA3OSwgODUsIDc4LCAyMTIsIDY1LCA3NywgNjksIDgyLCAKKyAgICA3MywgNjcsIDY1LCA4MywgMTI4LCA2NSwgNzcsIDY5LCA4MiwgNzMsIDY3LCA2NSwgMjA2LCA2NSwgNzcsIDY2LCA4NSwgNzYsIAorICAgIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDY1LCA3NywgNjYsIDE5MywgNjUsIDc3LCA2NSwgODIsIDEyOCwgNjUsIDc3LCA2NSwgCisgICAgMjEwLCA2NSwgNzcsIDY1LCA3NiwgNzEsIDY1LCA3NywgNjUsIDg0LCA3MywgNzksIDIwNiwgNjUsIDc3LCA2NSwgNzYsIDcxLCAKKyAgICA2NSwgNzcsIDEyOCwgNjUsIDc2LCA4NiwgNjksIDc5LCA3NiwgNjUsIDIxMCwgNjUsIDc2LCA4NSwgNzcsIDEyOCwgNjUsIAorICAgIDc2LCA4NCwgNjksIDgyLCA3OCwgNjUsIDg0LCA3MywgODYsIDE5NywgNjUsIDc2LCA4NCwgNjksIDgyLCA3OCwgNjUsIDg0LCAKKyAgICA3MywgNzksIDIwNiwgNjUsIDc2LCA4NCwgNjksIDgyLCA3OCwgNjUsIDg0LCAxOTcsIDY1LCA3NiwgODQsIDY1LCAxMjgsIAorICAgIDY1LCA3NiwgODAsIDcyLCA2NSwgMTI4LCA2NSwgNzYsIDgwLCA3MiwgMTkzLCA2NSwgNzYsIDgwLCA2NSwgODAsIDgyLCA2NSwgCisgICAgNzgsIDY1LCAxMjgsIDY1LCA3NiwgODAsIDY1LCA4MCwgODIsIDY1LCA2NSwgNzgsIDE5MywgNjUsIDc2LCA4MCwgNjUsIAorICAgIDEyOCwgNjUsIDc2LCA3NywgNzksIDgzLCAyMTIsIDY1LCA3NiwgNzYsIDc5LCAxMjgsIDY1LCA3NiwgNzYsIDczLCA2NSwgCisgICAgNzgsIDY3LCA2OSwgMTI4LCA2NSwgNzYsIDc2LCAyMDEsIDY1LCA3NiwgNzYsIDY1LCAyMDAsIDY1LCA3NiwgNzUsIDY1LCAKKyAgICA3NiwgNzMsIDQ1LCA1MCwgMTI4LCA2NSwgNzYsIDc1LCA2NSwgNzYsIDczLCAxMjgsIDY1LCA3NiwgNzMsIDcxLCA3OCwgNjksIAorICAgIDE5NiwgNjUsIDc2LCA3MywgNzAsIDg1LCAxMjgsIDY1LCA3NiwgNzMsIDY5LCA3OCwgMTI4LCA2NSwgNzYsIDczLCA2OSwgCisgICAgMjA2LCA2NSwgNzYsIDcxLCA3MywgMjE4LCA2NSwgNzYsIDcwLCA2NSwgMTI4LCA2NSwgNzYsIDY5LCA4NSwgMjEyLCA2NSwgCisgICAgNzYsIDY5LCA4MiwgODQsIDEyOCwgNjUsIDc2LCA2OSwgODAsIDcyLCAxMjgsIDY1LCA3NiwgNjksIDc3LCA2NiwgNzMsIDY3LCAKKyAgICAxMjgsIDY1LCA3NiwgNjksIDcwLCAxMjgsIDY1LCA3NiwgNjUsIDg5LCA3MiwgNjksIDEyOCwgNjUsIDc2LCA2NSwgODksIAorICAgIDcyLCAxOTcsIDY1LCA3NiwgNjUsIDgyLCAyMDUsIDY1LCA3NiwgNjUsIDgwLCA3MiwgMTI4LCA2NSwgNzYsIDQ1LCA3NiwgCisgICAgNjUsIDc1LCA4NSwgNzgsIDY1LCAxMjgsIDY1LCA3NSwgODQsIDczLCA2OSwgODMsIDY5LCA3NiwgODMsIDc1LCA2NSwgNjYsIAorICAgIDEyOCwgNjUsIDc1LCA4MywgNjUsIDEyOCwgNjUsIDc1LCA3MiwgNzcsIDczLCA3NywgNzMsIDE5NSwgNjUsIDc1LCA2NiwgCisgICAgNjUsIDIxMCwgNjUsIDc1LCA2NSwgODIsIDY1LCAxMjgsIDY1LCA3NSwgNjUsIDgyLCAxOTMsIDY1LCA3MywgODksIDY1LCAKKyAgICA3OCwgNzgsIDY1LCAxMjgsIDY1LCA3MywgODYsIDczLCA3NiwgNzMsIDIwMywgNjUsIDczLCA4NCwgNzksIDIwNiwgNjUsIAorICAgIDczLCA4MiwgODAsIDc2LCA2NSwgNzgsIDY5LCAxMjgsIDY1LCA3MywgNzgsIDIxMywgNjUsIDczLCA3OCwgNzgsIDEyOCwgCisgICAgNjUsIDczLCA3NiwgNzcsIDEyOCwgNjUsIDczLCA3NSwgNjUsIDgyLCA2NSwgMTI4LCA2NSwgNzMsIDcyLCA4NiwgODUsIDgzLCAKKyAgICAxMjgsIDY1LCA3MiwgODMsIDY4LCA2NSwgMTI4LCA2NSwgNzIsIDgzLCA2NSwgMTI4LCA2NSwgNzIsIDY1LCA3OCwgMTk5LCAKKyAgICA2NSwgNzIsIDY1LCA3MSwgNzEsIDY1LCAyMTAsIDY1LCA3MiwgNjUsIDY4LCAxMjgsIDY1LCA3MSwgODUsIDc4LCA3MSwgCisgICAgMTI4LCA2NSwgNzEsIDc5LCA3MSwgMjAxLCA2NSwgNzEsIDcxLCA4MiwgNjUsIDg2LCA2NSwgODQsIDczLCA3OSwgNzgsIAorICAgIDEyOCwgNjUsIDcxLCA3MSwgODIsIDY1LCA4NiwgNjUsIDg0LCA2OSwgMTk2LCA2NSwgNzEsIDY1LCA3MywgNzgsIDEyOCwgCisgICAgNjUsIDcwLCA4NCwgNjksIDIxMCwgNjUsIDcwLCA4MywgNjUsIDY1LCA4MSwgMTI4LCA2NSwgNzAsIDgyLCA3MywgNjcsIDY1LCAKKyAgICAyMDYsIDY1LCA3MCwgNzksIDgyLCA2OSwgNzcsIDY5LCA3OCwgODQsIDczLCA3OSwgNzgsIDY5LCA2OCwgMTI4LCA2NSwgNzAsIAorICAgIDcxLCA3MiwgNjUsIDc4LCAyMDEsIDY1LCA3MCwgNzAsIDgyLCA3MywgNjcsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY1LCA2OSwgCisgICAgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY1LCA2OSwgODksIDEyOCwgNjUsIDY5LCA4MywgNjcsIDg1LCA3NiwgNjUsIDgwLCAKKyAgICA3MywgODUsIDgzLCAxMjgsIDY1LCA2OSwgODMsIDY3LCAxMjgsIDY1LCA2OSwgODMsIDEyOCwgNjUsIDY5LCA4MiwgNzMsIAorICAgIDY1LCAyMDQsIDY1LCA2OSwgODIsIDEyOCwgNjUsIDY5LCA3NiwgNjUsIDQ1LCA4MCwgNzMsIDc2LCA3NiwgNjUsIDEyOCwgCisgICAgNjUsIDY5LCA3NiwgMTI4LCA2NSwgNjksIDc1LCAxMjgsIDY1LCA2OSwgNzEsIDY5LCA2NSwgMjA2LCA2NSwgNjksIDcxLCAKKyAgICAxMjgsIDY1LCA2OSwgNjksIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA2NSwgNjksIDY5LCAxMjgsIDY1LCA2OSwgNjgsIAorICAgIDY1LCA0NSwgODAsIDczLCA3NiwgNzYsIDY1LCAxMjgsIDY1LCA2OSwgNjgsIDEyOCwgNjUsIDY5LCA2NiwgMTI4LCA2NSwgCisgICAgNjgsIDg2LCA2NSwgNzgsIDg0LCA2NSwgNzEsIDY5LCAxMjgsIDY1LCA2OCwgODYsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDY1LCAKKyAgICA2OCwgNjksIDcxLCAxMjgsIDY1LCA2OCwgNjksIDE5OSwgNjUsIDY4LCA2OCwgODIsIDY5LCA4MywgODMsIDY5LCAxOTYsIAorICAgIDY1LCA2OCwgNjgsIDgyLCA2OSwgODMsIDIxMSwgNjUsIDY4LCA2OCwgNjUsIDc1LCAxMjgsIDY1LCA2OCwgNjUsIDIwMywgCisgICAgNjUsIDY3LCA4NSwgODQsIDY5LCA0NSwgNzcsIDY1LCA2NywgODIsIDc5LCA3OCwgMTI4LCA2NSwgNjcsIDg1LCA4NCwgNjksIAorICAgIDQ1LCA3MSwgODIsIDY1LCA4NiwgNjksIDQ1LCA2NSwgNjcsIDg1LCA4NCwgNjksIDEyOCwgNjUsIDY3LCA4NSwgODQsIDE5NywgCisgICAgNjUsIDY3LCA4NCwgODUsIDY1LCA3NiwgNzYsIDIxNywgNjUsIDY3LCA4NCwgNzMsIDg2LCA2NSwgODQsIDE5NywgNjUsIDY3LCAKKyAgICA4MiwgNzksIDgwLCA3MiwgNzksIDc4LCA3MywgMTk1LCA2NSwgNjcsIDc1LCA3OCwgNzksIDg3LCA3NiwgNjksIDY4LCA3MSwgCisgICAgNjksIDEyOCwgNjUsIDY3LCA2NywgODUsIDc3LCA4NSwgNzYsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NSwgNjcsIDY3LCAKKyAgICA3OSwgODUsIDc4LCAyMTIsIDY1LCA2NywgNjcsIDY5LCA4MCwgODQsIDEyOCwgNjUsIDY3LCA2NywgNjksIDc4LCA4NCwgNDUsIAorICAgIDgzLCA4NCwgNjUsIDY3LCA2NywgNjUsIDg0LCA3OSwgMTI4LCA2NSwgNjcsIDY3LCA2OSwgNzgsIDg0LCAxMjgsIDY1LCA2NywgCisgICAgNjcsIDY5LCA3OCwgMjEyLCA2NSwgNjcsIDY1LCA2OCwgNjksIDc3LCAyMTcsIDY1LCA2NiwgODksIDgzLCA3NywgNjUsIAorICAgIDIwNCwgNjUsIDY2LCA4NSwgNzgsIDY4LCA2NSwgNzgsIDY3LCA2OSwgMTI4LCA2NSwgNjYsIDc1LCA3MiwgNjUsIDgzLCA3MywgCisgICAgNjUsIDIwNiwgNjUsIDY2LCA2NiwgODIsIDY5LCA4NiwgNzMsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY1LCA2NiwgNjUsIDcwLCAKKyAgICA3MywgNzYsIDczLCAxMjgsIDY1LCA2NiwgMTc4LCA2NSwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA2NSwgNjUsIAorICAgIDg5LCAxMjgsIDY1LCA2NSwgODcsIDEyOCwgNjUsIDY1LCA3OSwgMTI4LCA2NSwgNjUsIDc0LCAxMjgsIDY1LCA2NSwgNjYsIAorICAgIDY1LCA2NSwgNzAsIDczLCA3NiwgNzMsIDEyOCwgNjUsIDY1LCA0OCwgNTEsIDUwLCAxMjgsIDY1LCA2NSwgNDgsIDUxLCA0OSwgCisgICAgMTI4LCA2NSwgNjUsIDQ4LCA1MSwgNDgsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDU3LCAxMjgsIDY1LCA2NSwgNDgsIDUwLCAKKyAgICA1NiwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNTUsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDU0LCAxMjgsIDY1LCA2NSwgNDgsIAorICAgIDUwLCA1MywgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNTIsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDUxLCAxMjgsIDY1LCA2NSwgCisgICAgNDgsIDUwLCA1MCwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNDksIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDQ4LCAxMjgsIDY1LCAKKyAgICA2NSwgNDgsIDQ5LCA1NywgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNTYsIDEyOCwgNjUsIDY1LCA0OCwgNDksIDU1LCAxMjgsIAorICAgIDY1LCA2NSwgNDgsIDQ5LCA1NCwgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNTMsIDEyOCwgNjUsIDY1LCA0OCwgNDksIDUyLCAKKyAgICAxMjgsIDY1LCA2NSwgNDgsIDQ5LCA1MSwgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNTAsIDEyOCwgNjUsIDY1LCA0OCwgNDksIAorICAgIDQ5LCAxMjgsIDY1LCA2NSwgNDgsIDQ5LCA0OCwgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTcsIDEyOCwgNjUsIDY1LCA0OCwgCisgICAgNDgsIDU2LCAxMjgsIDY1LCA2NSwgNDgsIDQ4LCA1NSwgNjYsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDU1LCA2NSwgMTI4LCAKKyAgICA2NSwgNjUsIDQ4LCA0OCwgNTUsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDU0LCAxMjgsIDY1LCA2NSwgNDgsIDQ4LCA1MywgCisgICAgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTIsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDUxLCAxMjgsIDY1LCA2NSwgNDgsIDQ4LCAKKyAgICA1MCwgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNDksIDEyOCwgNjUsIDQ4LCA1NSwgNDgsIDEyOCwgNjUsIDQ4LCA1NCwgNTcsIAorICAgIDEyOCwgNjUsIDQ4LCA1NCwgNTYsIDEyOCwgNjUsIDQ4LCA1NCwgNTUsIDEyOCwgNjUsIDQ4LCA1NCwgNTQsIDEyOCwgNjUsIAorICAgIDQ4LCA1NCwgNTMsIDEyOCwgNjUsIDQ4LCA1NCwgNTIsIDEyOCwgNjUsIDQ4LCA1NCwgNTEsIDEyOCwgNjUsIDQ4LCA1NCwgCisgICAgNTAsIDEyOCwgNjUsIDQ4LCA1NCwgNDksIDEyOCwgNjUsIDQ4LCA1NCwgNDgsIDEyOCwgNjUsIDQ4LCA1MywgNTcsIDEyOCwgCisgICAgNjUsIDQ4LCA1MywgNTYsIDEyOCwgNjUsIDQ4LCA1MywgNTUsIDEyOCwgNjUsIDQ4LCA1MywgNTQsIDEyOCwgNjUsIDQ4LCAKKyAgICA1MywgNTMsIDEyOCwgNjUsIDQ4LCA1MywgNTIsIDEyOCwgNjUsIDQ4LCA1MywgNTEsIDEyOCwgNjUsIDQ4LCA1MywgNTAsIAorICAgIDEyOCwgNjUsIDQ4LCA1MywgNDksIDEyOCwgNjUsIDQ4LCA1MywgNDgsIDEyOCwgNjUsIDQ4LCA1MiwgNTcsIDEyOCwgNjUsIAorICAgIDQ4LCA1MiwgNTYsIDEyOCwgNjUsIDQ4LCA1MiwgNTUsIDEyOCwgNjUsIDQ4LCA1MiwgNTQsIDEyOCwgNjUsIDQ4LCA1MiwgCisgICAgNTMsIDY1LCAxMjgsIDY1LCA0OCwgNTIsIDUzLCAxMjgsIDY1LCA0OCwgNTIsIDUyLCAxMjgsIDY1LCA0OCwgNTIsIDUxLCAKKyAgICA2NSwgMTI4LCA2NSwgNDgsIDUyLCA1MSwgMTI4LCA2NSwgNDgsIDUyLCA1MCwgNjUsIDEyOCwgNjUsIDQ4LCA1MiwgNTAsIAorICAgIDEyOCwgNjUsIDQ4LCA1MiwgNDksIDEyOCwgNjUsIDQ4LCA1MiwgNDgsIDY1LCAxMjgsIDY1LCA0OCwgNTIsIDQ4LCAxMjgsIAorICAgIDY1LCA0OCwgNTEsIDU3LCAxMjgsIDY1LCA0OCwgNTEsIDU2LCAxMjgsIDY1LCA0OCwgNTEsIDU1LCAxMjgsIDY1LCA0OCwgCisgICAgNTEsIDU0LCAxMjgsIDY1LCA0OCwgNTEsIDUzLCAxMjgsIDY1LCA0OCwgNTEsIDUyLCAxMjgsIDY1LCA0OCwgNTEsIDUxLCAKKyAgICAxMjgsIDY1LCA0OCwgNTEsIDUwLCA2NSwgMTI4LCA2NSwgNDgsIDQ5LCA1NSwgNjUsIDEyOCwgNjUsIDQ4LCA0OSwgNTIsIAorICAgIDY1LCAxMjgsIDY1LCA0OCwgNDgsIDU0LCA2NiwgMTI4LCA2NSwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgNjUsIDQ4LCA0OCwgCisgICAgNTMsIDY1LCAxMjgsIDY1LCA0NSwgNjksIDg1LCAxMjgsIDQ1LCA4NSwgMjA1LCA0NSwgODAsIDcyLCA4MiwgODUsIDEyOCwgCisgICAgNDUsIDc1LCA3MiwgODksIDg1LCAxOTYsIDQ1LCA3NSwgNzIsIDg5LCA3MywgNzYsIDEyOCwgNDUsIDY4LCA5MCwgODUsIAorICAgIDE5NiwgNDUsIDY3LCA3MiwgNjUsIDIxMCwgNDUsIDY3LCA3MiwgNjUsIDc2LCAxMjgsIAogfTsKIAogc3RhdGljIHVuc2lnbmVkIGludCBsZXhpY29uX29mZnNldFtdID0gewotICAgIDAsIDAsIDYsIDEwLCAxNSwgMjMsIDI3LCAzNCwgMzksIDQxLCA0NCwgNTIsIDYyLCA2OCwgODEsIDkzLCAxMDIsIDEwOCwgCi0gICAgMTEzLCAxMjEsIDEzMCwgMTM1LCAxNDAsIDE0NCwgMTUwLCAxNTMsIDE1OCwgMTY2LCAxNzMsIDE4MSwgMTg2LCAxOTEsIAotICAgIDE5NCwgMjAwLCAyMDgsIDIxNSwgMjI1LCAyMzIsIDI0MSwgMjQ0LCAyNDcsIDI1MiwgMjU4LCAyNjIsIDI3MSwgMjc4LCAKLSAgICAyODUsIDI5MCwgMjk5LCAzMDcsIDMxMywgMzE5LCAzMjUsIDE0MSwgMzMwLCAzMzEsIDMzNywgMzQ1LCAzNTEsIDM1NywgCi0gICAgMzY1LCAzNzIsIDM3NCwgMzc3LCAzODEsIDM4OCwgMzkwLCAzOTcsIDQwMiwgNDA4LCA0MTAsIDQxNywgNDI1LCA0MjcsIAotICAgIDMxMSwgNDMwLCA0MzIsIDQzNywgNDQyLCA0NDcsIDQ1MywgNDYwLCA0NjksIDQ3OSwgNDg0LCA0ODksIDQ5MywgNTA2LCAKLSAgICA1MTMsIDUxNywgNTI2LCA1MzMsIDU0MCwgNTQzLCA1NDksIDU1MywgNTYzLCA1NzEsIDU3OSwgNTg4LCA1OTYsIDYwNCwgCi0gICAgNjA5LCA2MTcsIDYyNCwgNjM0LCA2NDUsIDY0OSwgNjU0LCA2NTcsIDY2MSwgNjY1LCA2NjYsIDY3MiwgNjc4LCA2ODAsIAotICAgIDY4MywgNjg3LCAzNDQsIDY5MCwgNjk0LCA3MDMsIDcwNiwgNzA5LCA3MTQsIDcxOCwgNzI2LCA3MjksIDczNSwgNzQyLCAKLSAgICA3NDksIDc1OCwgNzY1LCA3NzQsIDc3OSwgNzgzLCA3OTIsIDgwMiwgODExLCA4MTcsIDgyMywgODMwLCA4MzgsIDg0NiwgCi0gICAgODU1LCA4NjMsIDg2NywgODc1LCA4ODAsIDc4MSwgNTExLCA4ODksIDg5MywgODk3LCA5MDQsIDkwOCwgOTE1LCA2ODksIAotICAgIDkxOCwgOTI2LCA5MjksIDkzMywgOTQwLCA5NDQsIDk0OSwgOTU3LCA5NjAsIDE5MiwgOTY2LCA5NzEsIDk4MSwgOTkwLCAKLSAgICA5OTcsIDEwMDQsIDEwMTIsIDEwMjAsIDEwMjYsIDEwMzAsIDEwMzUsIDEwNDAsIDEwNDYsIDEwNTEsIDEwNTQsIDExMSwgCi0gICAgMTA2MCwgMTA2NCwgMTA3MCwgMTA3MywgMTA4NiwgMTA4OSwgMTA5MywgMjIsIDEwOTcsIDExMDIsIDExMDUsIDExMDgsIAotICAgIDExMTQsIDExMjQsIDExMjYsIDExMzIsIDExNDIsIDExNDcsIDExNTYsIDExNjQsIDMyOCwgMTE2NywgMTE3MCwgMTE3NCwgCi0gICAgMTE3OSwgMTE4NSwgMTE5MCwgMTE5NywgMTE5OSwgMTIwNCwgMTIwOSwgMTIxNSwgMTIyMCwgMTIyNSwgMTIyOSwgMTIzNCwgCi0gICAgMTI0MCwgMTI0NSwgMTI1MCwgMTI1NCwgMTI1OSwgMTI2NCwgMTI2OCwgMTI3MywgMTI3OCwgMTI4MywgMTI4OSwgMTI5NSwgCi0gICAgMTMwMSwgMTMwNiwgMTMxMCwgMTMxNSwgMTMyMCwgMTMyNSwgMTMyOSwgMTMzNCwgMTMzOSwgMTM0NCwgMTM0OSwgMTIwMCwgCi0gICAgMTIwNSwgMTIxMCwgMTIxNiwgMTIyMSwgMTM1MywgMTIyNiwgMTM1OSwgMTM2OCwgMTIzMCwgMTM3MiwgMTIzNSwgMTI0MSwgCi0gICAgMTI0NiwgMTM3NiwgMTM4MSwgMTM4NiwgMTM5MCwgMTM5NCwgMTQwMCwgMTQwNCwgMTI1MSwgMTQwNywgMTQxMSwgMTI1NSwgCi0gICAgMTQxNywgMTI2MCwgMTQyMSwgMTQyNSwgMTI2NSwgMTQyOSwgMTQzNCwgMTQzOCwgMTQ0MSwgMTQ0NSwgMTI2OSwgMTI3NCwgCi0gICAgMTQ1MCwgMTI3OSwgMTQ1NiwgMTQ2MiwgMTQ2OCwgMTQ3NCwgMTI4NCwgMTI5NiwgMTMwMiwgMTQ3OCwgMTQ4MiwgMTQ4NiwgCi0gICAgMTQ4OSwgMTMwNywgMTQ5MywgMTQ5NSwgMTUwMCwgMTUwNSwgMTUxMSwgMTUxNiwgMTUyMSwgMTUyNSwgMTUzMCwgMTUzNSwgCi0gICAgMTU0MCwgMTU0NSwgMTU1MSwgMTU1NiwgMTU2MSwgMTU2NywgMTU3MywgMTU3OCwgMTU4MiwgMTU4NywgMTU5MiwgMTU5NywgCi0gICAgMTYwMiwgMTYwNiwgMTYxNCwgMTYxOCwgMTYyMywgMTYyOCwgMTYzMywgMTYzOCwgMTY0MiwgMTY0NSwgMTY1MCwgMTY1NSwgCi0gICAgMTY2MCwgMTY2NSwgMTY3MSwgMTY3NiwgMTY4MCwgMTMxMSwgMTY4MywgMTY4OCwgMTY5MywgMTMxNiwgMTY5NywgMTcwMSwgCi0gICAgMTcwOCwgMTMyMSwgMTcxNSwgMTMyNiwgMTcxOSwgMTcyMSwgMTcyNiwgMTczMiwgMTMzMCwgMTczNywgMTc0NiwgMTMzNSwgCi0gICAgMTc1MSwgMTc1NywgMTM0MCwgMTc2MiwgMTc2NywgMTc3MCwgMTc3NSwgMTc3OSwgMTc4MywgMTc4NywgMTc5MCwgMTc5NCwgCi0gICAgMTM0NSwgMTM1MCwgMTEwMCwgMTc5OSwgMTgwNSwgMTgxMSwgMTgxNywgMTgyMywgMTgyOSwgMTgzNSwgMTg0MSwgMTg0NywgCi0gICAgMTg1MiwgMTg1OCwgMTg2NCwgMTg3MCwgMTg3NiwgMTg4MiwgMTg4OCwgMTg5NCwgMTkwMCwgMTkwNiwgMTkxMSwgMTkxNiwgCi0gICAgMTkyMSwgMTkyNiwgMTkzMSwgMTkzNiwgMTk0MSwgMTk0NiwgMTk1MSwgMTk1NiwgMTk2MiwgMTk2NywgMTk3MywgMTk3OCwgCi0gICAgMTk4NCwgMTk5MCwgMTk5NSwgMjAwMSwgMjAwNywgMjAxMywgMjAxOSwgMjAyNCwgMjAyOSwgMjAzMSwgMjAzMiwgMjAzNiwgCi0gICAgMjA0MCwgMjA0NSwgMjA0OSwgMjA1MywgMjA1NywgMjA2MSwgMjA2NCwgMjA2OSwgMjA3MywgMjA3OCwgMjA4MiwgMjA4NiwgCi0gICAgMjA5MSwgMjA5NSwgMjA5OCwgMjEwMiwgMjEwOCwgMjEyMiwgMjEyNiwgMjEzMCwgMjEzMywgMjEzOCwgMjE0MiwgMjE0NiwgCi0gICAgMjE0OSwgMjE1MywgMjE1OCwgMjE2MywgMjE2OCwgMjE3MywgMjE3NywgMjE4MSwgMjE4NSwgMjE5MCwgMjE5NCwgMjE5OSwgCi0gICAgMjIwMywgMjIwOCwgMjIxNCwgMjIyMSwgMjIyNywgMjIzMiwgMjIzNywgMjI0MiwgMjI0OCwgMjI1MywgMjI1OSwgMjI2NCwgCi0gICAgMjI2NywgMTIxNywgMjI2OSwgMjI3NiwgMjI4NCwgMjI5NCwgMjMwMywgMjMxNywgMjMyMSwgMjMyNSwgMjMzOCwgMjM0NiwgCi0gICAgMjM1MCwgMjM1NSwgMjM1OSwgMjM2MiwgMjM2NiwgMjM3MCwgMjM3NSwgMjM4MCwgMjM4NSwgMjM4OSwgMjM5MiwgMjM5NiwgCi0gICAgMjQwMywgMjQxMCwgMjQxNiwgMjQyMSwgMjQyNiwgMjQzMiwgMjQzOCwgMjQ0MywgMjQ0NiwgMTcyMywgMjQ0OCwgMjQ1NCwgCi0gICAgMjQ1OCwgMjQ2MywgMjQ2NywgMjQ3MSwgMTcyOCwgMTczNCwgMjQ3NiwgMjQ4MCwgMjQ4MywgMjQ4OCwgMjQ5MywgMjQ5OCwgCi0gICAgMjUwMywgMjUwNywgMjUxNCwgMjUxOSwgMjUyMiwgMjUyOSwgMjUzNSwgMjUzOSwgMjU0MywgMjU0NywgMjU1MiwgMjU1OSwgCi0gICAgMjU2NCwgMjU2OSwgMjU3NiwgMjU4MiwgMjU4OCwgMjU5NCwgMjYwOCwgMjYyNSwgMjY0MCwgMjY1NSwgMjY2NCwgMjY2OSwgCi0gICAgMjY3MywgMjY3OCwgMjY4MywgMjY4NywgMjY5OSwgMjcwNiwgMjcxMiwgMjIxNywgMjcxOCwgMjcyNSwgMjczMSwgMjczNSwgCi0gICAgMjczOCwgMjc0NSwgMjc1MSwgMjc1NSwgMjc1OSwgMjc2MywgMjA1NCwgMjc2NywgMjc3MiwgMjc3NywgMjc4MSwgMjc4OSwgCi0gICAgMjc5MywgMjc5NywgMjgwMSwgMjgwNiwgMjgxMSwgMjgxNiwgMjgyMCwgMjgyNSwgMjgzMCwgMjgzNCwgMjgzOSwgMjg0MywgCi0gICAgMjg0NiwgMjg1MCwgMjg1NCwgMjg1OSwgMjg2MywgMjg2NywgMjg3MywgMjg4MiwgMjg4NiwgMjg5MCwgMjg5NiwgMjkwMSwgCi0gICAgMjkwOCwgMjkxMiwgMjkyMiwgMjkyNiwgMjkzMSwgMjkzNSwgMjk0MCwgMjk0NiwgMjk1MSwgMjk1NSwgMjk1OSwgMjk2MywgCi0gICAgMjQwNiwgMjk3MSwgMjk3NiwgMjk4MiwgMjk4NywgMjk5MSwgMjk5NiwgMzAwMSwgMzAwNSwgMzAxMSwgMzAxNiwgMzAyMiwgCi0gICAgMzAyNiwgMzAzMiwgMzAzNywgMzA0MiwgMzA0NywgMzA1MiwgMzA1NywgMzA2MiwgMzA2NywgMzA3MiwgMzA3NywgMzA4MywgCi0gICAgMzA4OCwgMTIyNywgODAsIDMwOTQsIDMwOTgsIDMxMDIsIDMxMDYsIDMxMTEsIDMxMTUsIDMxMTksIDMxMjMsIDMxMjcsIAotICAgIDMxMzIsIDMxMzYsIDMxNDEsIDMxNDUsIDMxNDgsIDMxNTIsIDMxNTcsIDMxNjEsIDMxNjYsIDMxNzAsIDMxNzQsIDMxNzgsIAotICAgIDMxODMsIDMxODcsIDMxOTAsIDMyMDMsIDMyMDcsIDMyMTEsIDMyMTUsIDMyMTksIDMyMjMsIDMyMjYsIDMyMzAsIDMyMzQsIAotICAgIDMyMzksIDMyNDMsIDMyNDgsIDMyNTMsIDMyNTgsIDMyNjIsIDMyNjUsIDMyNjgsIDMyNzQsIDMyNzgsIDMyODIsIDMyODUsIAotICAgIDMyODksIDMyOTMsIDMyOTYsIDMzMDIsIDMzMDcsIDMzMTIsIDMzMTgsIDMzMjMsIDMzMjgsIDMzMzQsIDMzNDAsIDMzNDUsIAotICAgIDMzNTAsIDMzNTUsIDEwOTEsIDU0MiwgMzM2MCwgMzM2MywgMzM2OCwgMzM3MiwgMzM3NSwgMzM3OSwgMzM4NCwgMzM4OSwgCi0gICAgMzM5MywgMzM5OCwgMzQwMiwgMzQwNywgMzQxMSwgMzQxNSwgMzQyMSwgMzQyNywgMzQzMCwgMzQzMywgMzQzOSwgMzQ0NiwgCi0gICAgMzQ1MywgMzQ1OSwgMzQ2NiwgMzQ3MSwgMzQ3NSwgMzQ4MiwgMzQ4NywgMzQ5MSwgMzUwMSwgMzUwNSwgMzUwOSwgMzUxNCwgCi0gICAgMzUxOSwgMzUyOSwgMjA2NSwgMzUzNCwgMzUzOCwgMzU0MSwgMzU0NywgMzU1MiwgMzU1OCwgMzU2NCwgMzU2OSwgMzU3NiwgCi0gICAgMzU4MCwgMzU4NCwgNjU4LCA2ODgsIDM1ODgsIDM1OTUsIDM2MDIsIDM2MDksIDM2MTUsIDM2MjEsIDM2MjYsIDM2MzAsIAotICAgIDM2MzYsIDM2NDEsIDM2NDUsIDIwNzQsIDM2NDksIDM2NTcsIDU4MywgMzY2MywgMzY3NCwgMzY3OCwgMzY4OCwgMjA3OSwgCi0gICAgMzY5NCwgMzY5OSwgMzcxNCwgMzcyMCwgMzcyNywgMzczNywgMzc0MywgMzc0OCwgMzc1NCwgMzc2MCwgMzc2MywgMzc2NywgCi0gICAgMzc3MiwgMzc3OSwgMzc4NCwgMzc4OCwgMzc5MiwgMzc5NiwgMzgwMCwgMzgwNSwgMzgxMSwgMzE1MywgMzgxNiwgMzgyOCwgCi0gICAgMzgzNiwgMzg0MSwgMTUyNywgMzg0OCwgMzg1MSwgMzg1NCwgMzg1OCwgMzg2MSwgMzg2NywgMzg3MSwgMzg4NSwgMzg4OSwgCi0gICAgMzg5MiwgMzg5NiwgMzkwMiwgMzkwOCwgMzkxMywgMzkxNywgMzkyMSwgMzkyNywgMzkzOCwgMzk0NCwgMzk0OSwgMzk1NSwgCi0gICAgMzk1OSwgMzk2NywgMzk3NywgMzk4MywgMzk4OCwgMzk5NywgNDAwNSwgNDAxMiwgNDAxNiwgNDAyMiwgNDAzMSwgNDA0MCwgCi0gICAgNDA0NCwgNDA0OSwgNDA1NCwgNDA1OCwgNDA2NiwgNDA3MCwgNDA3NSwgNDA3OSwgMjA4NywgMTM2OSwgNDA4NSwgNDA5MCwgCi0gICAgNDA5NiwgNDEwMSwgNDEwNiwgNDExMSwgNDExNiwgNDEyMSwgNDEyNiwgNDEzMiwgNDEzNywgNDE0MywgNDE0OCwgNDE1MywgCi0gICAgNDE1OCwgNDE2NCwgNDE2OSwgNDE3NCwgNDE3OSwgNDE4NCwgNDE5MCwgNDE5NSwgNDIwMSwgNDIwNiwgNDIxMSwgNDIxNiwgCi0gICAgNDIyMSwgNDIyNiwgNDIzMSwgNDIzNywgNDI0MiwgNDI0NywgMzM1LCA0MzYsIDQyNTIsIDQyNTgsIDQyNjIsIDQyNjYsIAotICAgIDQyNzEsIDQyNzUsIDQyNzksIDQyODIsIDQyODYsIDQyOTAsIDQyOTQsIDQyOTksIDQzMDMsIDQzMDcsIDQzMTMsIDQwODIsIAotICAgIDQzMTgsIDQzMjEsIDQzMjgsIDQzMzIsIDQzNDUsIDQzNDksIDQzNTMsIDQzNTcsIDQzNjEsIDQzNjUsIDQzNjksIDQzNzUsIAotICAgIDQzODIsIDQzOTAsIDQzOTQsIDQ0MDIsIDQ0MTEsIDQ0MTcsIDQ0MjksIDQ0MzQsIDQ0MzcsIDQ0NDEsIDQ0NTEsIDQ0NTksIAotICAgIDQ0NjcsIDQ0NzMsIDQ0NzcsIDQ0ODcsIDQ0OTcsIDQ1MDUsIDQ1MTIsIDQ1MTksIDQ1MjUsIDQ1MzEsIDQ1MzgsIDQ1NDIsIAotICAgIDQ1NDksIDQ1NTksIDQ1NjksIDQ1NzcsIDQ1ODQsIDQ1ODksIDQ1OTMsIDQ2MDEsIDQ2MDYsIDQ2MTMsIDQ2MjEsIDQ2MjYsIAotICAgIDQ2MzEsIDQ2MzUsIDQ2NDksIDQ2NTQsIDQ2NTksIDQ2NjYsIDQ2NzUsIDQ2NzgsIDQ2ODIsIDQ2ODYsIDQ2ODksIDQ2OTQsIAotICAgIDQ2OTksIDQ3MDgsIDQ3MTQsIDQ3MjAsIDQ3MjYsIDQ3MzAsIDQ3NDEsIDQ3NTEsIDQ3NjYsIDQ3ODEsIDQ3OTYsIDQ4MTEsIAotICAgIDQ4MjYsIDQ4NDEsIDQ4NTYsIDQ4NzEsIDQ4ODYsIDQ5MDEsIDQ5MTYsIDQ5MzEsIDQ5NDYsIDQ5NjEsIDQ5NzYsIDQ5OTEsIAotICAgIDUwMDYsIDUwMjEsIDUwMzYsIDUwNTEsIDUwNjYsIDUwODEsIDUwOTYsIDUxMTEsIDUxMjYsIDUxNDEsIDUxNTYsIDUxNzEsIAotICAgIDUxODYsIDUyMDEsIDUyMTYsIDUyMzEsIDUyNDYsIDUyNjEsIDUyNzYsIDUyOTEsIDUzMDYsIDUzMjEsIDUzMzYsIDUzNTEsIAotICAgIDUzNjYsIDUzODEsIDUzOTYsIDU0MTEsIDU0MjYsIDU0NDEsIDU0NTYsIDU0NzEsIDU0ODYsIDU0OTUsIDU1MDQsIDU1MDksIAotICAgIDU1MTUsIDU1MjUsIDU1MjksIDU1MzQsIDU1MzksIDU1NDcsIDU1NTEsIDU1NTQsIDU1NTgsIDI5MTcsIDU1NjEsIDU1NjYsIAotICAgIDMxMCwgNDQ1LCA1NTcyLCA1NTgwLCA1NTg0LCA1NTg4LCA1NTkxLCA1NTk3LCA1NjAxLCA1NjA5LCA1NjE1LCA1NjIwLCAKLSAgICA1NjI3LCA1NjM0LCA1NjQwLCA1NjQ1LCA1NjUyLCA1NjU4LCA1NjY2LCA1NjcwLCA1Njc1LCA1Njg3LCA1Njk4LCA1NzA1LCAKLSAgICA1NzExLCAzMTc1LCA1NzE1LCA1NzIxLCA1NzI2LCA1NzMxLCA1NzM2LCA1NzQyLCA1NzQ3LCA1NzUyLCA1NzU3LCA1NzYyLCAKLSAgICA1NzY4LCA1NzczLCA1Nzc4LCA1Nzg0LCA1Nzg5LCA1Nzk1LCA1ODAwLCA1ODA2LCA1ODExLCA1ODE3LCA1ODIyLCA1ODI3LCAKLSAgICA1ODMyLCA1ODM3LCA1ODQyLCA1ODQ4LCA1ODUzLCA1ODU4LCA1ODYzLCA1ODY5LCA1ODc1LCA1ODgxLCA1ODg3LCA1ODkzLCAKLSAgICA1ODk5LCA1OTA1LCA1OTExLCA1OTE3LCA1OTIzLCA1OTI5LCA1OTM1LCA1OTQwLCA1OTQ1LCA1OTUwLCA1OTU1LCA1OTYwLCAKLSAgICA1OTY1LCA1OTcwLCA1OTc1LCA1OTgxLCA1OTg3LCA1OTkyLCA1OTk4LCA2MDA0LCA2MDEwLCA2MDE1LCA2MDIwLCA2MDI1LCAKLSAgICA2MDMwLCA2MDM2LCA2MDQyLCA2MDQ3LCA2MDUyLCA2MDU3LCA2MDYyLCA2MDY3LCA2MDczLCA2MDc4LCA2MDg0LCA2MDkwLCAKLSAgICA2MDk2LCA2MTAyLCA2MTA4LCA2MTE0LCA2MTIwLCA2MTI2LCA2MTMyLCAyMDk2LCA1NTkwLCA2MTM3LCA2MTQxLCA2MTQ1LCAKLSAgICA2MTQ4LCA2MTU1LCA2MTU4LCA2MTY2LCA2MTcxLCA2MTc2LCA2MTY3LCA2MTgxLCA2MTY4LCA2MTg1LCA2MTkxLCA2MTk3LCAKLSAgICA2MjAyLCA2MjA3LCA2MjE0LCA2MjIyLCA2MjI3LCA2MjMxLCA2MjM0LCA2MjM4LCAyMTI3LCA1NTEsIDYyNDIsIDYyNDYsIAotICAgIDYyNTEsIDYyNTcsIDYyNjIsIDYyNjYsIDYyNjksIDYyNzMsIDYyNzksIDYyODQsIDYyODgsIDYyOTUsIDYyOTksIDYzMDMsIAotICAgIDYzMDcsIDk0NiwgNzQ3LCA2MzEwLCA2MzE4LCA2MzI1LCA2MzMyLCA2MzM4LCA2MzQ1LCA2MzUzLCA2MzYwLCA2MzY3LCAKLSAgICA2MzcyLCA2Mzg0LCAxMjQ3LCAxMzc3LCAxMzgyLCA2Mzk1LCAxMzg3LCA2Mzk5LCA2NDAzLCA2NDEyLCA2NDIwLCA2NDI5LCAKLSAgICA2NDM1LCA2NDQwLCA2NDQ0LCA2NDUwLCA2NDU1LCA2NDYyLCA2NDY2LCA2NDc1LCA2NDg0LCA2NDkzLCA2NTAyLCA2NTA3LCAKLSAgICA2NTEyLCA2NTI0LCA2NTI5LCA2NTM3LCAyMTc4LCA2NTQxLCA2NTQzLCA2NTQ4LCA2NTUyLCA2NTYxLCA2NTY5LCAxMzkxLCAKLSAgICAxMzMsIDM0MDMsIDM0MDgsIDY1NzUsIDY1NzksIDY1ODgsIDY1OTQsIDY1OTksIDY2MDIsIDY2MTEsIDI2NTIsIDY2MTcsIAotICAgIDY2MjUsIDY2MjksIDY2MzMsIDIxOTEsIDY2MzcsIDY2NDIsIDY2NDksIDY2NTUsIDY2NjEsIDY2NjQsIDY2NjYsIDY2NjksIAotICAgIDY2NzcsIDY2ODUsIDY2OTMsIDY2OTYsIDY3MDEsIDYxNzgsIDY3MDQsIDY3MDYsIDY3MTEsIDY3MTYsIDY3MjEsIDY3MjYsIAotICAgIDY3MzEsIDY3MzYsIDY3NDEsIDY3NDYsIDY3NTEsIDY3NTYsIDY3NjIsIDY3NjcsIDY3NzIsIDY3NzcsIDY3ODMsIDY3ODgsIAotICAgIDY3OTMsIDY3OTgsIDY4MDMsIDY4MDgsIDY4MTMsIDY4MTksIDY4MjQsIDY4MjksIDY4MzQsIDY4MzksIDY4NDQsIDY4NDksIAotICAgIDY4NTQsIDY4NTksIDY4NjQsIDY4NjksIDY4NzQsIDY4NzksIDY4ODQsIDY4ODksIDY4OTQsIDY4OTksIDY5MDQsIDY5MTAsIAotICAgIDY5MTYsIDY5MjEsIDY5MjYsIDY5MzEsIDY5MzYsIDY5NDEsIDIyMTUsIDIyMjIsIDIyMjgsIDY5NDYsIDY5NTIsIDIyNTQsIAotICAgIDIyNjAsIDY5NjAsIDY5NjQsIDY5NjksIDY5NzMsIDY5NzcsIDY5ODEsIDY5ODYsIDY5OTAsIDY5OTUsIDY5OTksIDcwMDIsIAotICAgIDcwMDUsIDcwMTEsIDcwMTcsIDcwMjMsIDcwMjksIDcwMzUsIDcwNDEsIDcwNDcsIDcwNTEsIDcwNTUsIDcwNTksIDcwNjMsIAotICAgIDcwNjcsIDcwNzIsIDcwNzksIDcwOTAsIDcwOTgsIDcxMDgsIDcxMTUsIDcxMjAsIDcxMjQsIDcxMzUsIDcxNDgsIDcxNTksIAotICAgIDcxNzIsIDcxODMsIDcxOTUsIDcyMDcsIDcyMTksIDcyMzIsIDcyNDUsIDcyNTIsIDcyNTgsIDcyNzIsIDcyNzksIDcyODUsIAotICAgIDcyODksIDcyOTQsIDcyOTgsIDczMDUsIDczMTMsIDczMTcsIDczMjMsIDczMjksIDczMzksIDczNDMsIDczNDgsIDczNTMsIAotICAgIDczNjAsIDczNjYsIDczNzYsIDYzNDAsIDczODIsIDczODYsIDczOTMsIDc0NiwgNzM5NywgNzQwMSwgNzQwNiwgNzQxMSwgCi0gICAgNzQxNiwgNzQyMCwgNzQyNiwgNzQzNCwgNzQ0MCwgNzQ0NCwgNzQ1MCwgNzQ2MCwgNzQ2NCwgNzQ3MCwgNzQ3NSwgNzQ3OSwgCi0gICAgNzQ4NSwgNzQ5MSwgMjExOSwgNzQ5NiwgNzQ5OCwgNzUwNiwgNzUxNSwgNzUxOSwgNzUyNSwgNzUzMCwgNzUzNSwgNzU0MCwgCi0gICAgNzU0NSwgNzU1MSwgNzU1NiwgMzkyMywgNzU2MSwgNzU2NSwgNzU3MSwgNzU3NiwgNzU4MiwgNzU4NywgNzU5MiwgNzU5OCwgCi0gICAgNzYwMywgNzUyMCwgNzYwOSwgNzYxMywgNzYyMCwgNzYyNiwgNzYzMSwgNzYzNSwgNDY0NSwgNzY0MCwgNzY0OSwgNjY0NSwgCi0gICAgNjY1MiwgNzY1NCwgMjgwMywgNzY1OCwgNzY2MywgNzY2OCwgNzUzMSwgNzY3MiwgNzUzNiwgNzU0MSwgNzY3NywgNzY4NCwgCi0gICAgNzY5MSwgNzY5NywgNzcwMywgNzcwOSwgNzcxNCwgNzcxOSwgNzcyNCwgNzU0NiwgNzU1MiwgNzczMCwgNzczNiwgNzc0MSwgCi0gICAgNzc0OSwgNzU1NywgNzc1NCwgMTAyOCwgNzc1NywgNzc2NSwgNzc3MSwgNzc3NywgNzc4NiwgNzc5NCwgNzc5OSwgNzgwNSwgCi0gICAgNzgxMywgNzgyMCwgNzgzNSwgNzg1MiwgNzg3MSwgNzg4MCwgNzg4OCwgNzkwMywgNzkxNCwgNzkyNCwgNzkzNCwgNzk0MiwgCi0gICAgNzk0OCwgNzk2MCwgNzk2OSwgNzk3NywgNzk4NCwgNzk5MSwgNzk5NywgODAwMiwgODAxMCwgODAyMCwgODAyNywgODAzNywgCi0gICAgODA0NywgODA1NywgODA2NSwgODA3MiwgODA4MSwgODA5MSwgODEwNSwgODEyMCwgODEyOSwgODEzNywgODE0MiwgODE0NiwgCi0gICAgODE1NSwgODE2MSwgODE2NiwgODE3NiwgODE4NiwgODE5NiwgODIwMSwgODIwNSwgODIxNCwgODIxOSwgODIyOSwgODI0MCwgCi0gICAgODI1MywgODI2NiwgODI3OCwgODI4NiwgODI5MSwgODI5NSwgODMwMSwgODMwNiwgODMxNCwgODMyMiwgODMyOSwgODMzNCwgCi0gICAgODM0MiwgODM0OCwgODM1MSwgODM1NSwgODM2MSwgODM2OSwgODM3NCwgODM3OCwgODM4NiwgODM5NSwgODQwMywgODQwOSwgCi0gICAgODQxMywgODQyMCwgODQzMSwgODQzNSwgODQzOCwgODQ0NCwgODQ0OSwgODQ1MywgODQ1OSwgODQ2NiwgODQ3MiwgODQ3NywgCi0gICAgODQ4NCwgODQ5MSwgODQ5OCwgODUwNSwgODUxMiwgODUxOSwgODUyNCwgNzg0OCwgODUyOSwgODUzNSwgODU0MiwgODU0OSwgCi0gICAgODU1NCwgODU2MSwgODU3MCwgODU3NCwgODU4NiwgODU5MCwgODU5MywgODU5NywgODYwMSwgODYwNSwgODYwOSwgODYxNSwgCi0gICAgODYyMCwgODYyNiwgODYzMSwgODYzNiwgODY0MiwgODY0NywgODY1MiwgNzM1NiwgODY1NywgODY2MSwgODY2NSwgODY2OSwgCi0gICAgODY3NCwgODY3OSwgODY4NywgODY5MywgODY5NywgODcwMSwgODcwOCwgODcxMywgODcyMSwgODcyNiwgODczMCwgODczMywgCi0gICAgODczOSwgODc0NiwgODc1MCwgODc1MywgODc1OCwgODc2MiwgMzk2MiwgODc2OCwgODc3NywgMzYsIDg3ODUsIDg3OTEsIAotICAgIDg3OTYsIDczNzEsIDg4MDEsIDg4MDcsIDg4MTIsIDg4MTYsIDg4MTksIDg4MzQsIDg4NTMsIDg4NjUsIDg4NzgsIDg4OTEsIAotICAgIDg5MDQsIDg5MTgsIDg5MzEsIDg5NDYsIDg5NTMsIDg5NTksIDg5NjMsIDg5NzcsIDg5ODIsIDg5ODgsIDg5OTMsIDkwMDEsIAotICAgIDkwMDYsIDY0NzEsIDkwMTEsIDkwMTQsIDkwMjEsIDkwMjYsIDkwMzAsIDI4MDgsIDk1NSwgOTAzNiwgOTA0MCwgOTA0NiwgCi0gICAgOTA1MiwgOTA1NywgOTA2MywgOTA2OCwgNzU2NiwgOTA3NCwgOTA4MCwgOTA4NSwgOTA5MCwgOTA5OCwgOTEwNCwgOTExNywgCi0gICAgOTEyNSwgOTEzMiwgNzU3MiwgOTEzOCwgOTE0NiwgOTE1NCwgOTE2MSwgOTE3NCwgOTE4NiwgOTE5NiwgOTIwMywgOTIxMCwgCi0gICAgOTIxOSwgOTIyOCwgOTIzNiwgOTI0MywgOTI0OCwgOTI1NCwgNzU3NywgOTI1OSwgOTI2NSwgNzU4MywgOTI3MCwgOTI3MywgCi0gICAgOTI4MCwgOTI4NiwgOTI5OSwgNzA4MywgOTMxMCwgOTMxNiwgOTMyNSwgOTMzMywgOTM0MCwgOTM0NiwgOTM1MiwgOTM1NywgCi0gICAgOTM2MSwgOTM2NiwgODgyNiwgOTM3MiwgNzU4OCwgOTM3OSwgOTM4NCwgOTM5MSwgOTM5NywgOTQwMywgOTQwOCwgOTQxNiwgCi0gICAgOTQyNCwgOTQzMSwgOTQzNSwgOTQ0OSwgOTQ1OSwgOTQ2NCwgOTQ2OCwgOTQ3OSwgOTQ4NSwgOTQ5MCwgOTQ5NSwgNzU5MywgCi0gICAgNzU5OSwgOTQ5OSwgOTUwMiwgOTUwNywgOTUxOSwgOTUyNiwgOTUzMSwgOTUzNSwgOTU0MCwgOTU0NCwgOTU1MSwgOTU1NywgCi0gICAgNzYwNCwgNzUyMSwgOTU2NCwgMjgxMywgOCwgOTU3MSwgOTU3NiwgOTU4MCwgOTU4NiwgOTU5NCwgOTYwNCwgOTYwOSwgCi0gICAgOTYxNCwgOTYyMSwgOTYyOCwgOTYzMiwgOTY0MywgOTY1MywgOTY2MiwgOTY3NCwgOTY3OSwgOTY4MywgOTY5MSwgOTcwNSwgCi0gICAgOTcwOSwgOTcxMiwgOTcyMCwgOTcyNywgOTczNSwgOTczOSwgOTc1MCwgOTc1NCwgOTc2MSwgOTc2NiwgOTc3MCwgOTc3NiwgCi0gICAgOTc4MSwgOTc4NSwgOTc5MSwgOTc5NiwgOTgwNywgOTgxMSwgOTgxNCwgOTgyMCwgOTgyNSwgOTgzMSwgOTgzNywgOTg0NCwgCi0gICAgOTg1NSwgOTg2NSwgOTg3NSwgOTg4NCwgOTg5MSwgNzYxNCwgNzYyMSwgNzYyNywgNzYzMiwgOTg5NywgOTkwMywgNzYzNiwgCi0gICAgOTkwOSwgOTkxMiwgOTkxOSwgOTkyNCwgOTkzOSwgOTk1NSwgOTk3MCwgOTk3OCwgOTk4NCwgMTA0MywgNDAwLCA5OTg5LCAKLSAgICA5OTk3LCAxMDAwNCwgMTAwMTAsIDEwMDE1LCAxMDAyMCwgNzY0MSwgMTAwMjIsIDEwMDI2LCAxMDAzMSwgMTAwMzUsIAotICAgIDEwMDQ1LCAxMDA1MCwgMTAwNTQsIDEwMDYzLCAxMDA2NywgMTAwNzAsIDEwMDc3LCAxMDA4MSwgMTAwODQsIDEwMDkyLCAKLSAgICAxMDA5OSwgMTAxMDcsIDEwMTExLCAxMDExOCwgMTAxMjcsIDEwMTMwLCAxMDEzNCwgMTAxMzgsIDEwMTQ0LCAxMDE0OCwgCi0gICAgMTAxNTIsIDEwMTU2LCAxMDE2MiwgMTAxNzIsIDEwMTc2LCAxMDE4NCwgMTAxODgsIDEwMTk1LCAxMDE5OSwgMTAyMDQsIAotICAgIDEwMjA4LCAxMDIxNSwgMTAyMjEsIDEwMjI5LCAxMDIzNSwgMTAyNDUsIDEwMjUwLCAxMDI1NSwgMTAyNTksIDEwMjY3LCAKLSAgICAzODIyLCAxMDI3NSwgMTAyODAsIDEwMjg0LCAxMDI4OCwgMTAyOTEsIDEwMjk5LCAxMDMwNiwgMTAzMTAsIDQ0NjksIAotICAgIDEwMzE0LCAxMDMxOSwgMTAzMjMsIDEwMzM0LCAxMDMzOSwgMTAzNDUsIDEwMzQ5LCAxMDM1MiwgMTAzNjAsIDEwMzY1LCAKLSAgICAxMDM3MCwgMTAzNzcsIDEwMzgyLCA3NjUwLCAxMDM4NywgMTAzOTEsIDE2ODUsIDQ2MTksIDEwMzk4LCAxMDQwMywgMTA0MDgsIAotICAgIDEwNDEzLCAxMDQxOSwgMTA0MjQsIDEwNDMwLCAxMDQzNSwgMTA0NDAsIDEwNDQ1LCAxMDQ1MCwgMTA0NTUsIDEwNDYwLCAKLSAgICAxMDQ2NSwgMTA0NzAsIDEwNDc1LCAxMDQ4MCwgMTA0ODUsIDEwNDkwLCAxMDQ5NSwgMTA1MDAsIDEwNTA1LCAxMDUxMCwgCi0gICAgMTA1MTYsIDEwNTIxLCAxMDUyNiwgMTA1MzEsIDEwNTM2LCAxMDU0MSwgMTA1NDcsIDEwNTUyLCAxMDU1NywgMTA1NjMsIAotICAgIDEwNTY4LCAxMDU3NCwgMTA1NzksIDEwNTg1LCAxMDU5MCwgMTA1OTUsIDEwNjAwLCAxMDYwNSwgMTA2MTEsIDEwNjE2LCAKLSAgICAxMDYyMSwgMTA2MjYsIDcyNCwgMTM5LCAxMDYzNCwgMTA2MzgsIDEwNjQzLCAxMDY0OCwgMTA2NTIsIDEwNjU2LCAxMDY2MCwgCi0gICAgMTA2NjUsIDEwNjY5LCAxMDY3NCwgMTA2NzgsIDEwNjgxLCAxMDY4NSwgMTA2ODksIDEwNjk0LCAxMDcwNCwgMTA3MTAsIAotICAgIDEwNzE4LCAxMDcyMiwgMTA3MjYsIDEwNzMzLCAxMDc0MSwgMTA3NTAsIDEwNzYxLCAxMDc2OCwgMTA3NzUsIDEwNzg0LCAKLSAgICAxMDc5MywgMTA4MDEsIDEwODEwLCAxMDgxOSwgMTA4MjgsIDEwODM3LCAxMDg0NywgMTA4NTcsIDEwODY3LCAxMDg3NywgCi0gICAgMTA4ODcsIDEwODk2LCAxMDkwNiwgMTA5MTYsIDEwOTI2LCAxMDkzNiwgMTA5NDYsIDEwOTU2LCAxMDk2NiwgMTA5NzUsIAotICAgIDEwOTg1LCAxMDk5NSwgMTEwMDUsIDExMDE1LCAxMTAyNSwgMTEwMzUsIDExMDQ0LCAxMTA1NCwgMTEwNjQsIDExMDc0LCAKLSAgICAxMTA4NCwgMTEwOTQsIDExMTA0LCAxMTExNCwgMTExMjQsIDExMTM0LCAxMTE0MywgMTExNTMsIDExMTYzLCAxMTE3MywgCi0gICAgMTExODMsIDExMTkzLCAxMTIwMywgMTEyMTMsIDExMjIzLCAxMTIzMywgMTEyNDMsIDExMjUyLCAxMTI1OCwgMTEyNjIsIAotICAgIDExMjY1LCAxMTI2OSwgMTEyNzQsIDExMjgxLCAxMTI4NywgMTEyOTIsIDExMjk2LCAxMTMwMSwgMTEzMTAsIDExMzE4LCAKLSAgICAxMTMyMywgMTEzMjcsIDExMzMxLCAxMTMzNywgMTEzNDIsIDExMzQ4LCA3NjU5LCAxMTM1MywgMTEzNTgsIDExMzY3LCAKLSAgICA3NjY0LCAxMTM3MiwgMTEzNzUsIDExMzgxLCAxMTM4OSwgNzY2OSwgMTEzOTYsIDExNDAwLCAxMTQwNCwgMTE0MDgsIAotICAgIDExNDE4LCAxMTQyNCwgMTE0MjksIDExNDM4LCAxMTQ0NiwgMTE0NTMsIDExNDYwLCAxMTQ2NSwgMTE0NzIsIDExNDc3LCAKLSAgICAxMTQ4MSwgMTE0ODQsIDExNDk1LCAxMTUwNSwgMTE1MTQsIDExNTIyLCAxMTUzMywgMTE1NDUsIDExNTU1LCAxMTU2MCwgCi0gICAgMTE1NjQsIDExNTY5LCAxMTU3NCwgMTE1NzgsIDExNTg0LCAxMTU5MiwgMTE1OTksIDExNjEwLCAxMTYxNSwgMTE2MjUsIAotICAgIDExNjM0LCAxMTYzOCwgMTE2NDEsIDExNjQ4LCAxMTY1OCwgMTE2NjcsIDExNjc0LCAxMTY3OCwgMTE2ODUsIDExNjkxLCAKLSAgICAxMTY5NiwgMTE3MDEsIDExNzA1LCAxMTcxNCwgMTE3MTksIDExNzI1LCAxMTcyOSwgMTE3MzQsIDExNzM4LCAxMTc0NywgCi0gICAgMTE3NTUsIDExNzYzLCAxMTc3MCwgMTE3NzgsIDExNzkwLCAxMTgwMSwgMTE4MTEsIDExODE4LCAxMTgyNCwgMTE4MzMsIAotICAgIDExODQ0LCAxMTg1MywgMTE4NjUsIDExODc3LCAxMTg4OSwgMTE4OTksIDExOTA4LCAxMTkxNywgMTE5MjUsIDExOTMyLCAKLSAgICAxMTk0MSwgMTE5NDksIDExOTU1LCAxMTk2MSwgMTE5NjYsIDYxOTksIDExOTcwLCAxMTk3MiwgMTE5NzcsIDExOTgzLCAKLSAgICAxMTk5MiwgMTIwMDAsIDEyMDA3LCAxMjAxNiwgMTIwMjUsIDEyMDM0LCAxMjA0MywgMTIwNTIsIDEyMDYxLCAxMjA3MCwgCi0gICAgMTIwNzksIDEyMDg5LCAxMjA5OSwgMTIxMDgsIDEyMTE0LCAxMjEyMSwgMTIxMzUsIDEyMTQyLCAxMjE1MCwgMTIxNTksIAotICAgIDEyMTY1LCAxMjE3NCwgMTIxODMsIDEyMTk0LCAxMjIwNCwgMTIyMTIsIDEyMjE5LCAxMjIyNywgMTIyMzYsIDEyMjQ5LCAKLSAgICAxMjI1NywgMTIyNjQsIDEyMjc3LCAxMjI4MywgMTIyODksIDEyMjk5LCAxMjMwOCwgMTIzMTcsIDEyMzIyLCAxMjMyNiwgCi0gICAgMTIzMzIsIDEyMzM4LCAxMjM0NSwgNzM3MCwgMTIzNTAsIDEyMzU1LCAxMjM2MiwgMTIzNjcsIDEyMzcyLCAxMjM3NiwgCi0gICAgMTIzODQsIDEyMzkwLCAxMjM5NSwgMTI0MDMsIDEyNDExLCAxMjQxOCwgMTI0MjYsIDEyNDMyLCAxMjQ0MCwgMTI0NDgsIAotICAgIDEyNDUzLCAxMjQ1OSwgMTI0NjYsIDEyNDcyLCAxMjQ3NywgMTI0ODEsIDEyNDkyLCAxMjUwMCwgMTI1MDYsIDEyNTExLCAKLSAgICAxMjUyMCwgMTI1MjYsIDEyNTMxLCAxMjU0MCwgMTI1NTQsIDM3ODEsIDEyNTU4LCAxMjU2MywgMTI1NjgsIDEyNTc0LCAKLSAgICAxMjU3OSwgMTI1ODQsIDEyNTg4LCAxMjU5MywgMTI1OTgsIDYxOTgsIDEyNjAzLCAxMjYwOCwgMTI2MTMsIDEyNjE4LCAKLSAgICAxMjYyMiwgMTI2MjcsIDEyNjMyLCAxMjYzNywgMTI2NDMsIDEyNjQ5LCAxMjY1NCwgMTI2NTgsIDEyNjYzLCAxMjY2OCwgCi0gICAgMTI2NzMsIDc2NzMsIDEyNjc4LCAxMjY4MywgMTI2ODgsIDEyNjkzLCAxMjcxMCwgMTI3MjgsIDEyNzQwLCAxMjc1MywgCi0gICAgMTI3NzAsIDEyNzg2LCAxMjgwMywgMTI4MTMsIDEyODMyLCAxMjg0MywgMTI4NTQsIDEyODY1LCAxMjg3NiwgMTI4ODgsIAotICAgIDEyODk5LCAxMjkxMCwgMTI5MjcsIDEyOTM4LCAxMjk0OSwgMTI5NTQsIDIzMzUsIDEyOTU4LCAxMjk2MSwgMTI5NjcsIAotICAgIDEyOTc1LCAxMjk4MywgMTI5ODgsIDEyOTk2LCAxMzAwNCwgMTMwMTEsIDEzMDE2LCAxMzAyMiwgMTMwMjksIDEzMDM3LCAKLSAgICAxMzA0NCwgMTMwNTYsIDEzMDY0LCAxMzA2OSwgOTkzMywgMTMwNzUsIDEzMDg0LCAxMzA5MywgMTMxMDEsIDEzMTA4LCAKLSAgICAxMzExNCwgMTMxMjIsIDEzMTI5LCAxMzEzNSwgMTMxNDIsIDEzMTQ4LCAxMzE1NywgMTMxNjUsIDEzMTc1LCAxMzE4MiwgCi0gICAgMTMxODgsIDEzMTk2LCAxMzIwMiwgMTMyMTAsIDEzMjE3LCAxMzIzMCwgMTMyMzcsIDEzMjQ2LCAxMzI1NSwgMTMyNjQsIAotICAgIDEzMjcyLCAxMzI4MiwgMTMyODksIDEzMjk0LCAzNDk1LCAxMzMwMSwgMTMzMDYsIDEzMzA5LCAxMjYwNCwgMTMzMTMsIAotICAgIDEzMzE5LCAxMzMyMywgMTMzMzEsIDEzMzQzLCAxMzM0OCwgMTMzNTUsIDEzMzYxLCAxMzM2NiwgMTMzNzMsIDEyNjA5LCAKLSAgICAxMzM3NywgMTMzODEsIDEyNjE0LCAxMzM4NSwgMTMzODksIDEzMzkzLCAxMzQwMCwgMTM0MDUsIDEzNDA5LCAxMzQxMywgCi0gICAgMTM0MjEsIDEzNDI4LCAxMzQzNSwgMTM0NTIsIDEzNDYxLCAxMzQ2NSwgMTM0NjgsIDEzNDc2LCAxMzQ4MiwgMTM0ODcsIAotICAgIDM1NzMsIDEzNDkxLCAxMzQ5MywgMTM1MDEsIDEzNTA4LCAxMzUxOCwgMTM1MzAsIDEzNTM1LCAxMzU0MSwgMTM1NDYsIAotICAgIDEzNTUwLCAxMzU1NiwgMTM1NjEsIDEzNTY3LCAxMzU3MCwgMTM1NzcsIDEzNTg1LCAxMzU5MiwgMTM1OTgsIDEzNjA0LCAKLSAgICAxMzYwOSwgMTM2MTYsIDEzNjIyLCAxMzYyNywgMTM2MzQsIDEzNjM4LCAxMzY0NCwgMTM2NDgsIDEzNjU1LCAxMzY2MSwgCi0gICAgMTM2NjcsIDEzNjc1LCAxMzY4MSwgMTM2ODYsIDEzNjkyLCAxMzcwMCwgMTM3MDgsIDEzNzE0LCAxMzcyMCwgMTM3MjUsIAotICAgIDEzNzMyLCAxMzczNywgMTM3NDEsIDEzNzQ3LCAxMzc1MiwgMTM3NTksIDEzNzY0LCAxMzc3MCwgMTM3NzMsIDEzNzc5LCAKLSAgICAxMzc4NSwgMTM3ODgsIDEzNzkyLCAxMzgwNCwgMTM4MTAsIDEzODE1LCAxMzgyMiwgMTM4MjgsIDEzODM0LCAxMzg0NSwgCi0gICAgMTM4NTUsIDEzODY0LCAxMzg3MiwgMTM4NzksIDEzODkwLCAxMzkwMCwgMTM5MTAsIDEzOTE4LCAxMzkyMSwgMTI2MjgsIAotICAgIDEzOTI2LCAxMzkzMSwgMTI2MzMsIDEyNzU4LCAxMzkzOSwgMTM5NTIsIDEzOTY3LCAxMzk3OCwgMTI3NzUsIDEzOTk2LCAKLSAgICAxNDAwOSwgMTQwMjIsIDE0MDMzLCA4ODQxLCAxNDA0NCwgMTQwNTcsIDE0MDc2LCAxNDA4NywgMTQwOTgsIDE0MTA5LCAKLSAgICAyNjAzLCAxNDEyMiwgMTQxMjYsIDE0MTM0LCAxNDE0NSwgMTQxNTIsIDE0MTU4LCAxNDE2NiwgMTQxNzAsIDE0MTc2LCAKLSAgICAxNDE3OSwgMTQxODksIDE0MTk3LCAxNDIwNCwgMTQyMTIsIDE0MjIyLCAxNDIyNywgMTQyMzQsIDE0MjM5LCAxNDI0NiwgCi0gICAgMTQyNTcsIDE0MjY3LCAxNDI3MywgMTQyNzgsIDE0MjgzLCAxNDI4NywgMTQyOTEsIDE0Mjk3LCAxNDMwMywgMTQzMDgsIAotICAgIDE0MzEzLCAxNDMxOCwgMTQzMjIsIDEyNjM4LCAxMjY0NCwgMTQzMjYsIDEyNjUwLCAxNDMzMSwgMTQzMzksIDE0MzQ4LCAKLSAgICAxNDM1NSwgNzU0MiwgMTQzNTksIDE0MzYxLCAxNDM2NiwgMTQzNzEsIDE0Mzc3LCAxNDM4MiwgMTQzODcsIDE0MzkyLCAKLSAgICAxNDM5NywgMTQ0MDEsIDE0NDA3LCAxNDQxMywgMTQ0MTgsIDE0NDI0LCAxNDQyOSwgMTQ0MzQsIDE0NDQwLCAxNDQ0NSwgCi0gICAgMTQ0NTAsIDE0NDU1LCAxNDQ2MSwgMTQ0NjYsIDE0NDcxLCAxNDQ3NywgMTQ0ODMsIDE0NDg4LCAxNDQ5MywgMTQ1MDAsIAotICAgIDE0NTA2LCAxNDUxNywgMTQ1MjQsIDE0NTI5LCAxNDUzMywgMTQ1MzcsIDE0NTQwLCAxNDU0OCwgMTQ1NTMsIDE0NTYwLCAKLSAgICAxNDU2NywgMTQ1NzIsIDE0NTc3LCAxNDU4NCwgMTQ1OTQsIDE0NTk5LCAxNDYwNiwgMTQ2MTIsIDE0NjIyLCAxNDYzMiwgCi0gICAgMTQ2NDYsIDE0NjYwLCAxNDY3NCwgMTQ2ODgsIDE0NzAzLCAxNDcxOCwgMTQ3MzUsIDE0NzUzLCAxNDc2NiwgMTQ3NzIsIAotICAgIDE0Nzc3LCAxNDc4MiwgMTQ3ODYsIDE0NzkxLCAxNDc5OSwgMTQ4MDUsIDE0ODEwLCAxNDgxNSwgMTQ4MTksIDE0ODI0LCAKLSAgICAxNDgyOCwgMTQ4MzMsIDE0ODM3LCAxNDg0OCwgMTQ4NTQsIDE0ODU5LCAxNDg2NCwgMTQ4NzEsIDE0ODc2LCAxNDg4MCwgCi0gICAgMTQ4ODUsIDE0ODkwLCAxNDg5NiwgMTQ5MDMsIDE0OTA5LCAxNDkxNCwgMTQ5MTgsIDE0OTI0LCAxNDkyOSwgMTQ5MzQsIAotICAgIDE0OTM4LCAxNDk0NCwgMTQ5NDksIDE0OTU0LCAxNDk2MSwgMTQ5NjYsIDExNDIwLCAxNDk3MCwgMTQ5NzUsIDE0OTc5LCAKLSAgICAxNDk4NCwgMTQ5OTAsIDE0OTk2LCAxNTAwMywgMTUwMTMsIDE1MDIxLCAxNTAyOCwgMTUwMzMsIDE1MDM3LCAxNTA0NiwgCi0gICAgMTUwNTQsIDE1MDYxLCAxNTA2OCwgMTUwNzQsIDE1MDgwLCAxNTA4NSwgMTUwOTAsIDE1MDk2LCAxNTEwMSwgMTUxMDcsIAotICAgIDE1MTEyLCAxNTExOCwgMTUxMjQsIDE1MTMxLCAxNTEzNywgMTUxNDIsIDE1MTQ3LCA3NzE1LCAxNTE1NiwgMTUxNTksIAotICAgIDE1MTY1LCAxNTE3MCwgMTUxNzUsIDE1MTg1LCAxNTE5MiwgMTUxOTgsIDE1MjAzLCAxNTIwOSwgMTUyMTQsIDE1MjIwLCAKLSAgICAxNTIyNSwgMTUyMzEsIDE1MjM3LCAxNTI0MiwgMTUyNTAsIDE1MjU3LCAxNTI2MiwgMTUyNjcsIDE1MjczLCAxNTI3OCwgCi0gICAgMTUyODIsIDE1MjkxLCAxNTMwMiwgMTUzMDksIDE1MzE3LCAxNTMyMywgMTUzMzAsIDE1MzM2LCAxNTM0MSwgMTUzNDUsIAotICAgIDE1MzUxLCAxNTM1NiwgMTUzNjEsIDE1MzY2LCA3NzIwLCA2MjIzLCAyODI3LCAxNTM3MCwgMTUzNzQsIDE1Mzc4LCAxNTM4MiwgCi0gICAgMTUzODYsIDE1Mzg5LCAxNTM5NiwgMTU0MDQsIDEyNjY0LCAxNTQxMSwgMTU0MjEsIDE1NDI5LCAxNTQzNiwgMTU0NDQsIAotICAgIDE1NDU0LCAxNTQ2MywgMTU0NzYsIDE1NDgxLCAxNTQ4NiwgMTU0OTQsIDE1NTAxLCAxMTUxMCwgMTE1MTksIDE1NTA4LCAKLSAgICAxNTUxOCwgMTU1MzMsIDE1NTM5LCAxNTU0NiwgMTU1NTMsIDE1NTU5LCAxNTU2OSwgMTU1NzksIDEyNjY5LCAxNTU4OCwgCi0gICAgMTU1OTQsIDE1NjAwLCAxNTYwOCwgMTU2MTYsIDE1NjIxLCAxNTYzMCwgMTU2MzgsIDE1NjUwLCAxNTY2MCwgMTU2NzAsIAotICAgIDE1NjgwLCAxNTY4OSwgMTU3MDEsIDE1NzExLCAxNTcyMSwgMTU3MzIsIDE1NzM3LCAxNTc0OSwgMTU3NjEsIDE1NzczLCAKLSAgICAxNTc4NSwgMTU3OTcsIDE1ODA5LCAxNTgyMSwgMTU4MzMsIDE1ODQ1LCAxNTg1NywgMTU4NjgsIDE1ODgwLCAxNTg5MiwgCi0gICAgMTU5MDQsIDE1OTE2LCAxNTkyOCwgMTU5NDAsIDE1OTUyLCAxNTk2NCwgMTU5NzYsIDE1OTg4LCAxNTk5OSwgMTYwMTEsIAotICAgIDE2MDIzLCAxNjAzNSwgMTYwNDcsIDE2MDU5LCAxNjA3MSwgMTYwODMsIDE2MDk1LCAxNjEwNywgMTYxMTksIDE2MTMwLCAKLSAgICAxNjE0MiwgMTYxNTQsIDE2MTY2LCAxNjE3OCwgMTYxOTAsIDE2MjAyLCAxNjIxNCwgMTYyMjYsIDE2MjM4LCAxNjI1MCwgCi0gICAgMTYyNjEsIDE2MjczLCAxNjI4NSwgMTYyOTcsIDE2MzA5LCAxNjMyMSwgMTYzMzMsIDE2MzQ1LCAxNjM1NywgMTYzNjksIAotICAgIDE2MzgxLCAxNjM5MiwgMTY0MDQsIDE2NDE2LCAxNjQyOCwgMTY0NDAsIDE2NDUyLCAxNjQ2NCwgMTY0NzYsIDE2NDg4LCAKLSAgICAxNjUwMCwgMTY1MTIsIDE2NTIzLCAxNjUzNSwgMTY1NDcsIDE2NTU5LCAxNjU3MSwgMTY1ODMsIDE2NTk1LCAxNjYwNywgCi0gICAgMTY2MTksIDE2NjMxLCAxNjY0MywgMTY2NTQsIDE2NjY2LCAxNjY3OCwgMTY2OTAsIDE2NzAyLCAxNjcxNSwgMTY3MjgsIAotICAgIDE2NzQxLCAxNjc1NCwgMTY3NjcsIDE2NzgwLCAxNjc5MywgMTY4MDUsIDE2ODE4LCAxNjgzMSwgMTY4NDQsIDE2ODU3LCAKLSAgICAxNjg3MCwgMTY4ODMsIDE2ODk2LCAxNjkwOSwgMTY5MjIsIDE2OTM1LCAxNjk0NywgMTY5NjAsIDE2OTczLCAxNjk4NiwgCi0gICAgMTY5OTksIDE3MDEyLCAxNzAyNSwgMTcwMzgsIDE3MDUxLCAxNzA2NCwgMTcwNzcsIDE3MDg5LCAxNzEwMiwgMTcxMTUsIAotICAgIDE3MTI4LCAxNzE0MSwgMTcxNTQsIDE3MTY3LCAxNzE4MCwgMTcxOTMsIDE3MjA2LCAxNzIxOSwgMTcyMzEsIDE3MjQ0LCAKLSAgICAxNzI1NywgMTcyNzAsIDE3MjgzLCAxNzI5NiwgMTczMDksIDE3MzIyLCAxNzMzNSwgMTczNDgsIDE3MzYxLCAxNzM3MywgCi0gICAgMTczODYsIDE3Mzk5LCAxNzQxMiwgMTc0MjUsIDE3NDM4LCAxNzQ1MSwgMTc0NjQsIDE3NDc3LCAxNzQ5MCwgMTc1MDMsIAotICAgIDE3NTE1LCAxNzUyNiwgMTc1MzksIDE3NTUyLCAxNzU2NSwgMTc1NzgsIDE3NTkxLCAxNzYwNCwgMTc2MTcsIDE3NjMwLCAKLSAgICAxNzY0MywgMTc2NTYsIDE3NjY4LCAxNzY4MSwgMTc2OTQsIDE3NzA3LCAxNzcyMCwgMTc3MzMsIDE3NzQ2LCAxNzc1OSwgCi0gICAgMTc3NzIsIDE3Nzg1LCAxNzc5OCwgMTc4MTAsIDE3ODIzLCAxNzgzNiwgMTc4NDksIDE3ODYyLCAxNzg3NSwgMTc4ODgsIAotICAgIDE3OTAxLCAxNzkxNCwgMTc5MjcsIDE3OTQwLCAxNzk1MiwgMTc5NjUsIDE3OTc4LCAxNzk5MSwgMTgwMDQsIDE4MDE3LCAKLSAgICAxODAzMCwgMTgwNDMsIDE4MDU2LCAxODA2OSwgMTgwODIsIDE4MDk0LCAxODEwNywgMTgxMjAsIDE4MTMzLCAxODE0NiwgCi0gICAgMTgxNTksIDE4MTcyLCAxODE4NSwgMTgxOTgsIDE4MjExLCAxODIyNCwgMTgyMzYsIDE4MjQ5LCAxODI2MiwgMTgyNzUsIAotICAgIDE4Mjg4LCAxODMwMSwgMTgzMTQsIDE4MzI3LCAxODM0MCwgMTgzNTMsIDE4MzY2LCAxODM3OCwgMTgzOTEsIDE4NDA0LCAKLSAgICAxODQxNywgMTg0MzAsIDE4NDQzLCAxODQ1NiwgMTg0NjksIDE4NDgyLCAxODQ5NSwgMTg1MDgsIDE4NTIwLCAxODUzMywgCi0gICAgMTg1NDYsIDE4NTU5LCAxODU3MiwgMTg1ODUsIDE4NTk4LCAxODYxMSwgMTg2MjQsIDE4NjM3LCAxODY1MCwgMTg2NjIsIAotICAgIDE4Njc1LCAxODY4OCwgMTg3MDEsIDE4NzE0LCAxODcyNywgMTg3NDAsIDE4NzUzLCAxODc2NiwgMTg3NzksIDE4NzkyLCAKLSAgICAxODgwNCwgMTg4MTcsIDE4ODMwLCAxODg0MywgMTg4NTYsIDE4ODY5LCAxODg4MiwgMTg4OTUsIDE4OTA4LCAxODkyMSwgCi0gICAgMTg5MzQsIDE4OTQ2LCAxODk1NywgMTg5NjUsIDE4OTcyLCAxODk3OCwgMTg5ODIsIDE4OTg4LCAxODk5NCwgMTkwMDIsIAotICAgIDE5MDA4LCAxOTAxMywgMTkwMTcsIDE5MDI2LCA3NTQ3LCAxOTAzNywgMTkwNDQsIDE5MDUyLCAxOTA1OSwgMTkwNjYsIAotICAgIDkyOTMsIDE5MDczLCAxOTA4MiwgMTkwODcsIDE5MDkyLCA2MjM5LCAxOTA5OSwgMTkxMDQsIDE5MTA3LCAxOTExMiwgCi0gICAgMTkxMjAsIDE5MTI3LCAxOTEzNCwgMTkxNDEsIDE5MTQ3LCAxOTE1NiwgMTkxNjUsIDE5MTcxLCAxOTE4MCwgMTkxODYsIAotICAgIDE5MTkxLCAxOTIwMSwgMTkyMDgsIDE5MjE0LCAxOTIyMiwgMTkyMjgsIDE5MjM1LCAxOTI0NSwgMTkyNTQsIDE5MjU4LCAKLSAgICAxOTI2NSwgMTkyNjksIDE5Mjc0LCAxOTI4MCwgMTkyODgsIDE5MjkyLCAxOTMwMiwgMTI2NzksIDE5MzExLCAxOTMxNywgCi0gICAgMTkzMjEsIDE5MzMwLCAxOTMzNiwgMTkzNDMsIDE5MzU0LCAxOTM2MiwgMTkzNzEsIDczMzUsIDE5Mzc5LCAxOTM4NCwgCi0gICAgMTkzOTAsIDE5Mzk1LCAxOTM5OSwgMTk0MDMsIDE5NDA3LCA4MDA2LCAxOTQxMiwgMTk0MjAsIDE5NDI3LCAxOTQzNiwgCi0gICAgMTk0NDMsIDE5NDUwLCA5MjIzLCAxOTQ1NywgMTk0NjMsIDE5NDY3LCAxOTQ3MywgMTk0NzksIDE5NDg3LCAxOTQ5MywgCi0gICAgMTk1MDAsIDE5NTA2LCAxOTUxMiwgMTk1MjEsIDE5NTI1LCAxOTUzMywgMTk1NDIsIDE5NTQ5LCAxOTU1NCwgMTk1NTgsIAotICAgIDE5NTY5LCAxOTU3NCwgMTk1NzksIDE5NTg0LCAxOTU5NywgNjQyNiwgMTk2MDEsIDE5NjA3LCAxOTYxNSwgMTk2MTksIAotICAgIDE5NjI2LCAxOTYzNSwgMTk2NDAsIDE5NjQ4LCAxOTY2MCwgMTk2NjUsIDE5NjY5LCAxOTY3MiwgMTk2NzgsIDE5Njg0LCAKLSAgICAxOTY4OSwgMTk2OTMsIDE5Njk2LCAxOTcwNywgMTk3MTIsIDc3NTAsIDE5NzE5LCA3NTU4LCA3NzU1LCAxOTcyNCwgMTk3MjksIAotICAgIDE5NzM0LCAxOTczOSwgMTk3NDQsIDE5NzQ5LCAxOTc1NCwgMTk3NTksIDE5NzY0LCAxOTc2OSwgMTk3NzQsIDE5Nzc5LCAKLSAgICAxOTc4NSwgMTk3OTAsIDE5Nzk1LCAxOTgwMCwgMTk4MDUsIDE5ODEwLCAxOTgxNSwgMTk4MjAsIDE5ODI1LCAxOTgzMCwgCi0gICAgMTk4MzYsIDE5ODQyLCAxOTg0NywgMTk4NTIsIDE5ODU3LCAxOTg2MiwgMTk4NjcsIDE5ODcyLCAxOTg3NywgMTk4ODIsIAotICAgIDE5ODg3LCAxOTg5MywgMTk4OTgsIDE5OTAzLCAxOTkwOCwgMTk5MTQsIDE5OTIwLCAxOTkyNSwgMTk5MzAsIDE5OTM1LCAKLSAgICAxOTk0MCwgMTk5NDUsIDE5OTUwLCAxOTk1NSwgMTk5NjAsIDE5OTY2LCAxOTk3MSwgMTk5NzYsIDE5OTgxLCAxOTk4NiwgCi0gICAgMTk5OTIsIDE5OTk3LCAyMDAwMiwgMjAwMDYsIDEyOSwgMjAwMTQsIDIwMDE4LCAyMDAyMiwgMjAwMjYsIDIwMDMxLCAKLSAgICAyMDAzNSwgMjAwMzksIDEwNzgxLCAyMDA0MywgMjAwNDgsIDIwMDUyLCAyMDA1NywgMjAwNjEsIDIwMDY2LCAyMDA3MCwgCi0gICAgMjAwNzYsIDIwMDgxLCAyMDA4NSwgMjAwODksIDIwMDk3LCAyMDEwMSwgMjAxMDYsIDIwMTExLCAyMDExNSwgMjAxMjEsIAotICAgIDIwMTI2LCAyMDEzMCwgMjAxMzUsIDIwMTQwLCAyMDE0NCwgMjAxNTEsIDIwMTU4LCAyMDE2NSwgMjAxNjksIDIwMTczLCAKLSAgICAyMDE3OCwgMjAxODIsIDIwMTg1LCAyMDE5MSwgMjAyMDQsIDIwMjA5LCAyMDIxOCwgMjAyMjMsIDc3OTUsIDIwMjI4LCAKLSAgICAyMDIzMSwgMjY2NiwgMjY3MSwgMjAyMzUsIDIwMjQxLCAyMDI0NywgMjAyNTIsIDIwMjU3LCAyMDI2MiwgMjAyNjgsIAotICAgIDIwMjczLCAxMjE5MCwgMjAyNzgsIDIwMjgzLCAyMDI4OCwgMjAyOTQsIDIwMjk5LCAyMDMwNCwgMjAzMTAsIDIwMzE1LCAKLSAgICAyMDMxOSwgMjAzMjQsIDIwMzI5LCAyMDMzNCwgMjAzMzgsIDIwMzQzLCAyMDM0OCwgMjAzNTMsIDIwMzU4LCAyMDM2MiwgCi0gICAgMjAzNjYsIDIwMzcxLCAyODM2LCAyMDMyMCwgMjAzNzUsIDIwMzgzLCAyMDM5MCwgODEwMCwgMjA0MDIsIDIwNDEwLCAKLSAgICAyMDMyNSwgMjA0MTcsIDIwNDIyLCAyMDQzMCwgMjAzMzAsIDIwNDM1LCAyMDQ0MCwgMjA0NDgsIDIwNDUzLCAyMDQ1OCwgCi0gICAgMjA0NjIsIDIwNDY3LCAyMDQ3MSwgMjA0NzcsIDIwNDgwLCAyMDQ4NywgMjA0OTEsIDIwNDk1LCAyMDUwMSwgMjA1MDgsIAotICAgIDIwNTEzLCA3MzYyLCAxNjkwLCAxNjk1LCAyMDUxNywgMjA1MjMsIDIwNTI5LCAyMDUzNCwgMjA1MzgsIDIwNTQyLCAyMDU0NiwgCi0gICAgMjA1NDksIDIwNTU1LCAyMDU2MiwgMjA1NzAsIDIwNTc2LCAyMDU4MiwgMjA1ODcsIDIwNTkyLCAyMDU5NiwgMTMwMzksIAotICAgIDEzODk2LCAyMDYwMSwgMjA2MTMsIDIwNjE2LCAyMDYyMywgMjA2MzAsIDIwNjM0LCAyMDY0MiwgMjA2NTMsIDIwNjYyLCAKLSAgICAyMDY3NSwgMjA2ODUsIDIwNjk5LCAyMDcxMSwgMjA3MjUsIDIwNzM3LCAyMDc0NywgMjA3NTksIDIwNzY1LCAyMDc4MCwgCi0gICAgMjA4MDQsIDIwODIyLCAyMDg0MSwgMjA4NTQsIDIwODY4LCAyMDg4NiwgMjA5MDIsIDIwOTE5LCAyMDkzNywgMjA5NDgsIAotICAgIDIwOTY3LCAyMDk4NCwgMjEwMDQsIDIxMDIyLCAyMTAzNCwgMjEwNDgsIDIxMDYyLCAyMTA3NCwgMjEwOTEsIDIxMTEwLCAKLSAgICAyMTEyOCwgMjExNDAsIDIxMTU4LCAyMTE3NywgMTI4MTgsIDIxMTkwLCAyMTIxMCwgMjEyMjIsIDg4NzIsIDIxMjM0LCAKLSAgICAyMTIzOSwgMjEyNDQsIDIxMjQ5LCAyMTI1NSwgMjEyNjAsIDIxMjY0LCAyMTI3MSwgMjM1MiwgMjEyNzUsIDIxMjgxLCAKLSAgICAyMTI4NSwgMjEyODgsIDIxMjkyLCAyMTMwMCwgMjEzMDYsIDIwMzM5LCAyMTMxMCwgMjEzMTksIDIxMzMwLCAyMTMzNiwgCi0gICAgMjEzNDIsIDIxMzUxLCAyMTM1OSwgMjEzNjYsIDIxMzcxLCAyMTM3OCwgMjEzODQsIDIxMzkzLCAyMTQwMSwgMjE0MDgsIAotICAgIDIxNDE4LCAyMTQyNywgMjE0MzcsIDIxNDQyLCAyMTQ1MSwgMjE0NjAsIDIxNDcxLCAyMTQ4MiwgMzg4MCwgMjE0OTIsIAotICAgIDIxNDk2LCAyMTUwNiwgMjE1MTQsIDIxNTI0LCAyMTUzNSwgMjE1NDAsIDIxNTQ4LCAyMTU1NSwgMjE1NjEsIDIxNTY2LCAKLSAgICAyMDM0OSwgMjE1NzAsIDIxNTc5LCAyMTU4MywgMjE1ODYsIDIxNTkxLCAyMTU5OCwgMjE2MDcsIDIxNjE1LCAyMTYyMywgCi0gICAgMjE2MzMsIDIxNjQyLCAyMTY0OCwgMjE2NTQsIDIwMzU0LCAyMDM1OSwgMjE2NTgsIDIxNjY4LCAyMTY3OCwgMjE2ODgsIAotICAgIDIxNjk2LCAyMTcwMywgMjE3MTMsIDIxNzIxLCAyMTcyOSwgMjE3MzUsIDk2MiwgMjE3NDQsIDEzMDAwLCA1MzcsIDIxNzU4LCAKLSAgICAyMTc2NywgMjE3NzUsIDIxNzg2LCAyMTc5NywgMjE4MDcsIDIxODE2LCAyMTgyOCwgMjE4MzcsIDIxODQ2LCAyMTg1MiwgCi0gICAgMjE4NjEsIDIxODcwLCAyMTg4MCwgMjE4ODgsIDIxODk2LCA3NzI3LCAyMTkwMiwgMjE5MDUsIDIxOTA5LCAyMTkxNCwgCi0gICAgMjE5MTksIDgyMTUsIDIwMzY3LCAyMTkyNywgMjE5MzMsIDIxOTM5LCAyMTk0NCwgMjE5NDksIDIxOTUzLCAyMTk2MSwgCi0gICAgMjE5NjcsIDIxOTczLCAyMTk3NywgMzQ2NywgMjE5ODUsIDIxOTkwLCAyMTk5NSwgMjE5OTksIDIyMDAzLCA4Mjg3LCAKLSAgICAyMjAxMCwgMjIwMTgsIDIyMDI1LCAyMjAzMSwgODI5NiwgODMwMiwgMjIwMzksIDIyMDQ3LCAyMjA1NCwgMjIwNTksIAotICAgIDIyMDY0LCAyMjA3MCwgMjIwNzQsIDIyMDg1LCAyMjA5MCwgMjU1NSwgMjIwOTUsIDIyMTA2LCAyMjExMiwgMjIxMTcsIAotICAgIDIyMTIxLCAyMjEyNSwgMjIxMjgsIDIyMTM1LCAyMjE0MiwgMjIxNDksIDIyMTU1LCAyMjE1OSwgMjIxNjQsIDIyMTY4LCAKLSAgICAyMjE3MiwgOTc5LCAyMjE3NiwgMjIxODEsIDIyMTg2LCAyMjE5MSwgMjIxOTYsIDIyMjAxLCAyMjIwNiwgMjIyMTEsIAotICAgIDIyMjE2LCAyMjIyMSwgMjIyMjYsIDIyMjMxLCAyMjIzNiwgMjIyNDEsIDIyMjQ3LCAyMjI1MiwgMjIyNTcsIDIyMjYyLCAKLSAgICAyMjI2NywgMjIyNzIsIDIyMjc3LCAyMjI4MywgMjIyODgsIDIyMjkzLCAyMjI5OCwgMjIzMDMsIDIyMzA4LCAyMjMxMywgCi0gICAgMjIzMTgsIDIyMzI0LCAyMjMzMCwgMjIzMzUsIDIyMzQxLCAyMjM0NiwgMjIzNTEsIDUsIDIyMzU3LCAyMjM2MSwgMjIzNjUsIAotICAgIDIyMzY5LCAyMjM3NCwgMjIzNzgsIDIyMzgyLCAyMjM4NiwgMjIzOTAsIDIyMzk1LCAyMjM5OSwgMjI0MDQsIDIyNDA4LCAKLSAgICAyMjQxMSwgMjI0MTUsIDIyNDIwLCAyMjQyNCwgMjI0MjksIDIyNDMzLCAyMjQzNywgMjI0NDEsIDIyNDQ2LCAyMjQ1MCwgCi0gICAgMjI0NTQsIDIyNDY0LCAyMjQ2OSwgMjI0NzMsIDIyNDc3LCAyMjQ4MiwgMjI0ODcsIDIyNDk2LCAyMjUwMSwgMjI1MDYsIAotICAgIDIyNTEwLCAyMjUxNCwgMjI1MjcsIDIyNTM5LCAyMjU0OCwgMjI1NTcsIDIyNTYzLCAyMjU2OCwgMjI1NzIsIDIyNTc2LCAKLSAgICAyMjU4NiwgMjI1OTUsIDIyNjAzLCAyMjYwOSwgMjI2MTQsIDIyNjE4LCAyMjYyNSwgMjI2MzUsIDIyNjQ0LCAyMjY1MiwgCi0gICAgMjI2NjAsIDIyNjY3LCAyMjY3NSwgMjI2ODQsIDIyNjkzLCAyMjcwMSwgMjI3MDYsIDIyNzEwLCAyMjcxNCwgMjI3MTcsIAotICAgIDIyNzE5LCAyMjcyMywgMjI3MjcsIDIyNzMyLCAyMjczNywgMjI3NDEsIDIyNzQ1LCAyMjc0OCwgMjI3NTIsIDIyNzU1LCAKLSAgICAyMjc1OSwgMjI3NjIsIDIyNzY1LCAyMjc2OSwgMjI3NzUsIDIyNzc5LCAyMjc4MywgMjI3ODcsIDIyNzkyLCAyMjc5NywgCi0gICAgMjI4MDIsIDIyODA2LCAyMjgwOSwgMjI4MTQsIDIyODIwLCAyMjgyNSwgMjI4MzEsIDIyODM2LCAyMjg0MCwgMjI4NDQsIAotICAgIDIyODQ4LCAyMjg1MywgMjI4NTcsIDIyODYyLCAyMjg2NiwgMjI4NzMsIDIyODc3LCAyMjg4MCwgMjI4ODQsIDIyODkwLCAKLSAgICAyMjg5NiwgMjI5MDAsIDIyOTA0LCAyMjkwOSwgMjI5MTYsIDIyOTIyLCAyMjkyNiwgMjI5MzUsIDIyOTM5LCAyMjk0MywgCi0gICAgMjI5NDYsIDIyOTUyLCAyMjk1NywgMjI5NjMsIDE0NTIsIDE3NTQsIDIyOTY4LCAyMjk3MywgMjI5NzgsIDIyOTgzLCAKLSAgICAyMjk4OCwgMjI5OTMsIDIyOTk4LCAyMTA2LCAyMTQ4LCAyMzAwMywgMjMwMDYsIDIzMDEwLCAyMzAxNCwgMjMwMTksIAotICAgIDIzMDIzLCAyMzAyNywgMjMwMzAsIDIzMDM1LCAyMzA0MCwgMjMwNDQsIDIzMDQ3LCAyMzA1MiwgMjMwNTYsIDIzMDYxLCAKLSAgICAyMzA2NSwgMTMwMTIsIDIzMDcwLCAyMzA3MywgMjMwNzYsIDIzMDgwLCAyMzA4NSwgMjMwOTgsIDIzMTAyLCAyMzEwNSwgCi0gICAgMjMxMTMsIDIzMTIyLCAyMzEyOSwgMjMxMzQsIDIzMTQwLCAyMzE0NiwgMjMxNTMsIDIzMTYwLCAyMzE2NCwgMjMxNjgsIAotICAgIDIzMTcyLCAyMzE3NywgMjMxODIsIDIzMTg2LCAyMzE5NCwgMjMxOTksIDIzMjExLCAyMzIyMiwgMjMyMjcsIDIzMjMxLCAKLSAgICAyMzIzNSwgMjMyNDEsIDIzMjQ2LCAyMzI1MSwgMjMyNTUsIDIzMjU4LCAyMzI2NCwgNjM0NiwgMjI3MCwgMjMyNjgsIAotICAgIDIzMjczLCAyMzI4OSwgNzg0MiwgMjMzMDksIDIzMzE4LCAyMzMzNCwgMjMzMzgsIDIzMzQxLCAyMzM0NywgMjMzNTcsIAotICAgIDIzMzYzLCAyMzM3OCwgMjMzOTAsIDIzNDAxLCAyMzQwOSwgMjM0MTgsIDIzNDI0LCAyMzQzMywgMjM0NDMsIDIzNDU0LCAKLSAgICAyMzQ2NSwgMjM0NzQsIDIzNDgzLCAyMzQ5MSwgMjM0OTgsIDIzNTA2LCAyMzUxOSwgMjM1MjYsIDIzNTMyLCAyMzUzNywgCi0gICAgMjM1NDYsIDIzNTUyLCAyMzU1NywgMjM1NjUsIDIxNTE2LCAyMzU3NywgMjM1ODksIDIzNjAzLCAyMzYxMSwgMjM2MTgsIAotICAgIDIzNjMwLCAyMzYzOSwgMjM2NDgsIDIzNjU2LCAyMzY2NCwgMjM2NzIsIDIzNjc5LCAyMzY4OCwgMjM2OTYsIDIzNzA2LCAKLSAgICAyMzcxNSwgMjM3MjUsIDIzNzM0LCAyMzc0MywgMjM3NTEsIDIzNzU2LCAyMzc2MCwgMjM3NjMsIDIzNzY3LCAyMzc3MSwgCi0gICAgMjM3NzUsIDIzNzc5LCAyMzc4MywgMjM3ODksIDIzNzk1LCAyMzgwMywgMTMwNTcsIDIzODEwLCAyMzgxNSwgMjM4MjIsIAotICAgIDIzODI4LCAyMzgzNSwgMTMwNjUsIDIzODQyLCAyMzg0NSwgMjM4NTcsIDIzODY1LCAyMzg3MSwgMjM4NzYsIDIzODgwLCAKLSAgICA4MjQ1LCAyMzg5MSwgMjM5MDEsIDIzOTEwLCAyMzkxNywgMjM5MjEsIDEzMDcwLCAyMzkyNCwgMjM5MzEsIDIzOTM1LCAKLSAgICAyMzk0MSwgMjM5NDQsIDIzOTUxLCAyMzk1NywgMjM5NjEsIDIzOTY2LCAyMzk3MCwgMjM5NzksIDIzOTg2LCAyMzk5MiwgCi0gICAgNjM4NywgMjM5OTksIDI0MDA3LCAyNDAxNCwgMjQwMjAsIDI0MDI1LCAyNDAzMSwgMjQwMzcsIDI0MDQ1LCAyNDA0OSwgCi0gICAgMjQwNTIsIDI0MDU0LCAyMzc2OCwgMjQwNjMsIDI0MDY5LCAyNDA3OSwgMjQwODQsIDI0MDkxLCAyNDA5NywgMjQxMDIsIAotICAgIDI0MTA3LCAyNDExMiwgMjQxMTcsIDI0MTI0LCAyNDEzMywgMjQxNDAsIDI0MTQ5LCAyNDE1NSwgMjQxNjAsIDI0MTY2LCAKLSAgICAyNDE3MSwgMjQxNzgsIDI0MTg5LCAyNDE5NCwgMjQxOTgsIDI0MjA4LCAyNDIxNCwgMjQyMTgsIDI0MjIzLCAyNDIzMywgCi0gICAgMjQyNDIsIDI0MjQ2LCAyNDI1MywgMjQyNjEsIDI0MjY4LCAyNDI3NCwgMjQyNzksIDI0Mjg3LCAyNDI5NCwgMjQzMDYsIAotICAgIDI0MzE1LCAyNDMxOSwgMTEzNjIsIDI0MzI3LCAyNDMzNywgMjQzNDEsIDIzMTA5LCAyNDM1MiwgMjQzNTcsIDI0MzYxLCAKLSAgICAyNDM2OCwgMjQzNzUsIDIwMTE3LCAyMzY5MywgMjQzODAsIDI0Mzg0LCAyNDM4NywgMjA5NTQsIDI0MzkyLCAyNDQwNiwgCi0gICAgMjQ0MjIsIDI0NDQwLCAyNDQ1OSwgMjQ0NzYsIDI0NDk0LCAyMDk3MywgMjQ1MTEsIDI0NTMxLCAyMDk5MCwgMjQ1NDMsIAotICAgIDI0NTU1LCAxMzk4MywgMjQ1NjcsIDIxMDEwLCAyNDU4MSwgMjQ1OTMsIDg4ODUsIDI0NjA3LCAyNDYxMiwgMjQ2MTcsIAotICAgIDI0NjIyLCAyNDYyOCwgMjQ2MzQsIDI0NjQwLCAyNDY0NCwgMjQ2NTEsIDI0NjU2LCAyNDY2NiwgMjQ2NzIsIDg1MzIsIAotICAgIDI0Njc4LCAyNDY4MCwgMjQ2ODUsIDI0NjkzLCAyNDY5NywgMjQxMjAsIDI0NzAzLCAyNDcxMCwgOTg2OSwgOTg3OSwgCi0gICAgMjQ3MTcsIDI0NzI3LCAyNDczMiwgMjQ3MzYsIDI0NzM5LCAyNDc0NSwgMjQ3NTMsIDI0NzY1LCAyNDc3NSwgMjQ3OTEsIAotICAgIDI0ODA0LCAyNDgxOCwgMTQwMDEsIDI0ODMyLCAyNDgzOSwgMjQ4NDMsIDI0ODQ2LCAyNDg1MSwgMjQ4NTUsIDI0ODYyLCAKLSAgICAyNDg2OSwgMjQ4NzksIDI0ODg0LCAyNDg4OSwgMjQ4OTQsIDI0OTAyLCAyNDkxMCwgMjQ5MTksIDI0OTI0LCA3OTM5LCAKLSAgICAyNDkyOCwgMjQ5MzEsIDI0OTM0LCAyNDkzOSwgMjQ5NDYsIDI0OTUxLCAyNDk2NywgMjQ5NzUsIDI0OTgzLCA3NzkwLCAKLSAgICAyNDk5MSwgMjQ5OTYsIDI1MDAwLCAyNTAwNiwgMjUwMTIsIDI1MDE1LCAyNTAyMSwgMjUwMzMsIDI1MDQxLCAyNTA0OCwgCi0gICAgMjUwNTQsIDI1MDYxLCAyNTA3MiwgMjUwODYsIDI1MDk5LCAyNTEwOCwgMjUxMjAsIDI1MTMxLCAyNTE0MSwgMjUxNTAsIAotICAgIDI1MTU5LCAyNTE2NywgMjUxNzgsIDYzNjksIDI1MTg1LCAyNTE5MSwgMjUxOTYsIDI1MjAyLCAyNTIwOSwgMjUyMTksIAotICAgIDI1MjI5LCAyNTIzOCwgMjUyNDQsIDI1MjUxLCAyNTI1NiwgMjUyNjMsIDI1MjcxLCAyNTI3OSwgMjUyOTEsIDQ3MDQsIAotICAgIDI1Mjk4LCAyNTMwNywgMjUzMTUsIDI1MzIxLCAyNTMyNywgMjUzMzIsIDI1MzM2LCAyNTMzOSwgMjUzNDUsIDI1MzUyLCAKLSAgICAyNTM1NywgMjUzNjIsIDI1MzY2LCAyNTM3OCwgMjUzODksIDI1Mzk4LCAyNTQwNiwgMTMxOTcsIDI1NDExLCAyNTQxNywgCi0gICAgMjU0MjMsIDk4NjIsIDcwNDksIDI1NDI4LCAyNTQzMSwgMjU0MzQsIDI1NDQwLCAyNTQ0OCwgMjU0NTYsIDI1NDYwLCAKLSAgICAyNTQ2NCwgMjU0NjksIDI1NDcyLCAyNTQ4MSwgMjU0ODksIDI1NTAwLCAyNTUwNCwgMjU1MTAsIDI1NTE2LCAyNTUyMCwgCi0gICAgMjU1MjYsIDI1NTM0LCAyNTU1NiwgMjU1ODAsIDI1NTg3LCAyNTU5NCwgMjU2MDAsIDI1NjA2LCAyNTYxMSwgMjU2MjIsIAotICAgIDI1NjQwLCAyNTY0NywgMjU2NTUsIDI1NjU5LCAyNTY2OCwgMjU2ODEsIDI1Njg5LCAyNTcwMSwgMjU3MTIsIDI1NzIyLCAKLSAgICAyNTczNiwgMjU3NDUsIDI1NzUzLCAyNTc2NSwgNzg1OSwgMjU3NzYsIDI1Nzg3LCAyNTc5OSwgMjU4MDksIDI1ODE4LCAKLSAgICAyNTgyMywgMjU4MjcsIDI1ODM1LCAyNTg0NSwgMjU4NTAsIDI1ODU0LCAyNTg1NywgMjU4NjAsIDI1ODY4LCAyNTg3NiwgCi0gICAgMjU4ODUsIDI1ODk1LCAyNTkwNCwgMjU5MTAsIDI1OTI0LCAyNjE3LCAyNTk0NiwgMjU5NTcsIDI1OTY2LCAyNTk3NiwgCi0gICAgMjU5ODgsIDI1OTk3LCAyNjAwNywgMjYwMTUsIDI2MDIzLCAyNjAzMiwgMjYwMzcsIDI2MDQ4LCAyNjA1MywgMjYwNjQsIAotICAgIDI2MDY4LCAyNjA3OCwgMjYwODcsIDI2MDk1LCAyNjEwNSwgMjYxMTUsIDI2MTIzLCAyNjEzMiwgMjYxMzksIDI2MTQ3LCAKLSAgICAyNjE1NCwgMjYxNjMsIDI2MTY3LCAyNjE3NSwgMjYxODIsIDI2MTkwLCAyNjE5NywgMjYyMDgsIDI2MjIzLCAyNjIzMCwgCi0gICAgMjYyMzYsIDI2MjQ2LCAyNjI1NSwgMjYyNjEsIDI2MjY4LCAxMjMxMiwgMjYyNzQsIDI2Mjc4LCAyNjI4MywgMjYyODcsIAotICAgIDI2MjkxLCAyNjI5OSwgMjYzMDcsIDI2MzEzLCAyNjMyMiwgMjYzMjksIDI2MzM0LCAyNjMzOSwgMjYzNDksIDIxNTY4LCAKLSAgICAyNjM1MywgMjYzNTYsIDI2MzYxLCAyNjM2NiwgMjYzNzEsIDI2Mzc2LCAyNjM4MSwgMjYzODYsIDI2MzkxLCAyNjM5NiwgCi0gICAgMjY0MDIsIDI2NDA3LCAyNjQxMiwgMjY0MTgsIDEyMjMsIDY3OSwgMjY0MjMsIDI2NDMyLCAyMzE4LCAyNjQzOSwgMjY0NDQsIAotICAgIDI2NDQ4LCAyNjQ1NCwgMTI1NiwgNTQxLCAzMzQsIDI2NDU5LCAyNjQ2OCwgMjY0NzYsIDI2NDg1LCAyNjQ5MywgMjY1MDQsIAotICAgIDI2NTEzLCAyNjUyMSwgMjY1MjUsIDI2NTI4LCAyNjUzNiwgMjY1NDQsIDI2NTQ5LCAxMzAyNSwgMjY1NTUsIDI2NTYxLCAKLSAgICAyNjU2NywgNDM1MCwgMjY1NzIsIDI2NTc2LCAyNjU4MiwgMjY1ODYsIDI2NTkzLCAxNDE4LCAyNjU5OSwgNzk0NiwgMjY2MDYsIAotICAgIDI2NjE2LCAyNjYyNCwgMjY2MzAsIDI2NjM5LCAyNjY0NywgMjY2NTMsIDI2NjYxLCAyNjY2OCwgOTQ1NSwgMjY2NzQsIAotICAgIDI2NjgxLCAyNjY4OCwgMTQ1OSwgMjEwNSwgMjY2OTQsIDI2NzAwLCAyNjcwNywgMjY3MTgsIDI2NzI5LCAyNjczNywgCi0gICAgMjY3NDQsIDI2NzU0LCAyNjc2MywgMjY3NzEsIDI2Nzc4LCAyNjc4NSwgMjY3OTgsIDI2ODA5LCAyNjgyOCwgMTI2MSwgCi0gICAgMjY4MzIsIDI2ODM3LCAyNjg0NSwgMzUxMCwgMjY4NDksIDI2ODU0LCAyNjg1OCwgMTQyMiwgMjI3NDYsIDI2ODY4LCAKLSAgICAyNjg3MiwgMjY4NzcsIDI2ODgxLCAzNDM1LCAyNjg4NywgMjY4OTUsIDI2OTAyLCAyNjkxMywgMjY5MjEsIDI2OTI5LCAKLSAgICAzNTExLCAyNjksIDI2OTM0LCAyNjk0MiwgMjY5NTAsIDI2OTU3LCAyNjk2MywgMjY5NjgsIDIxNzAsIDI2OTc1LCAyNjk4MSwgCi0gICAgMjM5NjIsIDI0MTg0LCAyNjk4NywgMTA2LCAyNjk5MSwgMjY5OTUsIDI3MDAxLCA2MDYsIDc2OTUsIDI3MDA2LCAyNzAxMywgCi0gICAgMjcwMTksIDIyODEsIDI3MDIzLCAyNzAyNywgMjcwMzAsIDI3MDMzLCAyNzAzOCwgMjcwNDUsIDI3MDUxLCAyNzA1NiwgCi0gICAgMjcwNjQsIDI3MDcxLCAyNzA3NywgMjA0NTUsIDI3MDgxLCAzNTgxLCAxNDgyNiwgMjcwODUsIDI3MDkwLCAyNzA5MywgCi0gICAgMjcxMDEsIDI3MTA5LCAyNzExMiwgMjcxMTksIDI3MTI5LCAyNzE0MSwgMjcxNDYsIDI3MTUwLCAyNzE1OCwgMjcxNjUsIAotICAgIDI3MTcxLCAyNzE3OCwgMjcxODUsIDI3MTg4LCAyNzE5MiwgMjcxOTYsIDE0MjYsIDI3MjA2LCAyNzIwOCwgMjcyMTMsIAotICAgIDI3MjE5LCAyNzIyNSwgMjcyMzAsIDI3MjM1LCAyNzI0MCwgMjcyNDUsIDI3MjUwLCAyNzI1NSwgMjcyNjAsIDI3MjY1LCAKLSAgICAyNzI3MCwgMjcyNzUsIDI3MjgwLCAyNzI4NSwgMjcyOTAsIDI3Mjk1LCAyNzMwMSwgMjczMDcsIDI3MzEzLCAyNzMxOSwgCi0gICAgMjczMjQsIDI3MzI5LCAyNzMzNCwgMjczNDAsIDI3MzQ1LCAyNzM1MCwgMjczNTUsIDI3MzYxLCAyNzM2NiwgMjczNzIsIAotICAgIDI3Mzc3LCAyNzM4MiwgMjczODcsIDI3MzkyLCAyNzM5OCwgMjc0MDMsIDI3NDA5LCAyNzQxNCwgMjc0MTksIDI3NDI0LCAKLSAgICAyNzQyOSwgMjc0MzUsIDI3NDQwLCAyNzQ0NiwgMjc0NTEsIDI3NDU2LCAyNzQ2MSwgMjc0NjYsIDI3NDcxLCAyNzQ3NiwgCi0gICAgMjc0ODEsIDI3NDg2LCAyNzQ5MSwgMjc0OTcsIDI3NTAzLCAyNzUwOSwgMjc1MTQsIDI3NTE5LCAyNzUyNCwgMjc1MjksIAotICAgIDI3NTM1LCAyNzU0MSwgMjc1NDcsIDI3NTUzLCAyNzU1OSwgMjc1NjUsIDI3NTcwLCAyNzU3NiwgMjc1ODEsIDI3NTg2LCAKLSAgICAyNzU5MSwgMjc1OTYsIDI3NjAyLCAyMzk3LCAyNzYwNywgMjQwNCwgMjQxMSwgMjcwOCwgMjc2MTIsIDI0MTcsIDI0MjcsIAotICAgIDI3NjE4LCAyNzYyMiwgMjc2MjcsIDI3NjMyLCAyNzYzOCwgMjc2NDMsIDI3NjQ4LCAyNzY1MiwgMjc2NTcsIDI3NjYzLCAKLSAgICAyNzY2OCwgMjc2NzMsIDI3Njc4LCAyNzY4NCwgMjc2ODksIDI3NjkzLCAyNzY5NywgMjc3MDIsIDI3NzA3LCAyNzcxMiwgCi0gICAgMjc3MTcsIDI3NzIyLCAyNzcyOCwgMjc3MzQsIDI3NzM5LCAyNzc0MywgMjc3NDgsIDI3NzU0LCAyNzc1OCwgMjc3NjMsIAotICAgIDI3NzY4LCAyNzc3MywgMjc3NzgsIDI3NzgyLCAyNzc4NSwgMjc3OTAsIDI3Nzk1LCAyNzgwMCwgMjc4MDUsIDI3ODExLCAKLSAgICAyNzgxNywgMjc4MjIsIDI3ODI3LCAyNzgzMSwgMjc4MzYsIDI3ODQxLCAyNzg0NiwgMjc4NTEsIDI3ODU2LCAyNzg2MCwgCi0gICAgMjc4NjUsIDI3ODcwLCAyNzg3NSwgMjc4NzksIDI3ODgzLCAyNzg4NywgMjc4OTIsIDI3OTAwLCAyNzkwNiwgMjc5MTIsIAotICAgIDI3OTE4LCAyNzkyMywgMjc5MjcsIDI3OTMwLCAyNzkzNSwgMjc5MzksIDI3OTQ0LCAyNzk0OCwgMjc5NTMsIDI3OTU3LCAKLSAgICAyNzk2MCwgMTU0ODksIDI3OTY1LCAyNzk3MywgMTk0MzksIDI2NjAzLCAyNzk3OCwgMjc5ODMsIDI3OTg3LCAyNzk5MiwgCi0gICAgMjc5OTYsIDI4MDAwLCAyODAwNSwgMjgwMDksIDI4MDEyLCAyODAxNSwgMjgwMTksIDI4MDI0LCAyODAzMiwgMjgwMzYsIAotICAgIDI4MDM5LCAyODA0NCwgMjgwNDgsIDI4MDUyLCAyODA1NywgMjgwNjIsIDI4MDY2LCAyODA3MiwgMjgwNzcsIDI4MDgyLCAKLSAgICAyODA4OSwgMjgwOTYsIDI4MTAwLCAyODEwMywgMjgxMDksIDI4MTE4LCAyODEyNSwgMjgxMzMsIDI4MTQwLCAyODE0NCwgCi0gICAgMjgxNDksIDI4MTUzLCAyODE1OSwgMjgxNjUsIDI4MTY5LCAyODE3NSwgMjgxODAsIDI4MTg1LCAyODE5MiwgMjgxOTgsIAotICAgIDI4MjA0LCAyODIxMCwgMjgyMTYsIDI4MjIzLCAyODIyOSwgMjgyMzUsIDI4MjQxLCAyODI0NywgMjgyNTMsIDI4MjU5LCAKLSAgICAyODI2NSwgMjgyNzIsIDI4Mjc4LCAyODI4NSwgMjgyOTEsIDI4Mjk3LCAyODMwMywgMjgzMDksIDI4MzE1LCAyODMyMSwgCi0gICAgMjgzMjcsIDI4MzMzLCAyODMzOSwgOTc2MywgMjgzNDUsIDI4MzUwLCAyODM1NSwgMjgzNTgsIDI4MzY2LCAyODM3MSwgCi0gICAgMjgzODAsIDI4Mzg2LCAyODM5MSwgMjgzOTYsIDI4NDAxLCAyODQwNSwgMjg0MTAsIDI4NDE1LCAyODQyMCwgMjg0MjUsIAotICAgIDI4NDMwLCAyODQzNywgMjg0NDQsIDI4NDUwLCAyODQ1NiwgMjg0NjEsIDE0NTEwLCAyODQ2OCwgMjg0NzQsIDI4NDgxLCAKLSAgICAyODQ4NywgMjg0OTMsIDI4NDk4LCAyODUwNiwgMjg1MTEsIDE0Mjk0LCAyODUxNSwgMjg1MjAsIDI4NTI1LCAyODUzMSwgCi0gICAgMjg1MzYsIDI4NTQxLCAyODU0NSwgMjg1NTAsIDI4NTU1LCAyODU2MSwgMjg1NjYsIDI4NTcxLCAyODU3NSwgMjg1ODAsIAotICAgIDI4NTg1LCAyODU4OSwgMjg1OTQsIDI4NTk5LCAyODYwNCwgMjg2MDgsIDI4NjEzLCAyODYxOCwgMjg2MjMsIDI4NjI3LCAKLSAgICAyODYzMSwgMTM1MzEsIDI4NjM1LCAyODY0NCwgMjg2NTAsIDI4NjU2LCAyODY2NSwgMjg2NzMsIDI4NjgyLCAyODY5MCwgCi0gICAgMjg2OTUsIDI4Njk5LCAyODcwNiwgMjg3MTIsIDI4NzE2LCAyODcxOSwgMjg3MjQsIDI4NzMzLCAyODc0MSwgMjg3NDYsIAotICAgIDE0NTgsIDI4NzUyLCAyODc1NSwgMjg3NTksIDIwNTI0LCAyMDUzMCwgMjg3NjUsIDI4NzY5LCAyODc4MCwgMjg3OTEsIAotICAgIDI4ODAyLCAyODgxNCwgMjg4MjEsIDI4ODI4LCAyODgzMywgMjg4MzcsIDQzODcsIDczMywgMTk0MzgsIDI4ODQ1LCAyODg0OSwgCi0gICAgMjg4NTQsIDI4ODYwLCAyODg2NSwgMjg4NzEsIDI4ODc2LCAyODg4MiwgMjg4ODcsIDg3NjQsIDI3ODUsIDMzNjUsIDI4ODkxLCAKLSAgICAyODg5NCwgMjg5MDAsIDI4OTA2LCAyODkxMiwgMjg5MTksIDI4OTI1LCAyODkzMSwgMjg5MzcsIDI4OTQzLCAyODk0OSwgCi0gICAgMjg5NTUsIDI4OTYxLCAyODk2NywgMjg5NzMsIDI4OTc5LCAyODk4NSwgMjg5OTEsIDI4OTk4LCAyOTAwNCwgMjkwMTAsIAotICAgIDI5MDE2LCAyOTAyMiwgMjkwMjgsIDI5MDMzLCAyOTAzNiwgMjkwNDMsIDI5MDUxLCAyOTA1NiwgMjkwNjEsIDI5MDY3LCAKLSAgICAyOTA3MiwgMjkwNzcsIDI5MDgxLCAyOTA4NiwgMjkwOTIsIDI5MDk3LCAyOTEwMywgMjkxMDgsIDI5MTE0LCAyOTExOSwgCi0gICAgMjkxMjUsIDI5MTMxLCAyOTEzNSwgMjkxNDAsIDI5MTQ1LCAyOTE1MCwgMjkxNTUsIDI5MTU5LCAyOTE2NCwgMjkxNjksIAotICAgIDI5MTc0LCAyOTE4MCwgMjkxODYsIDI5MTkyLCAyOTE5OCwgMjkyMDMsIDI5MjA3LCAyOTIxMCwgMjkyMTYsIDI5MjIyLCAKLSAgICAyOTIzMSwgMjkyMzksIDI5MjQ2LCAyOTI1MSwgMjkyNTUsIDI5MjU5LCAyOTI2NCwgMTMzOTUsIDI5MjY5LCAyOTI3NywgCi0gICAgMjkyODMsIDM2MTEsIDI5Mjg4LCAyOTI5MSwgMjkyOTUsIDY0MzYsIDI5MzAxLCAyOTMwNywgMjkzMTQsIDY0NDUsIDI5MzE4LCAKLSAgICAyOTMyNCwgMjkzMzEsIDI5MzM3LCAyOTM0NiwgMjkzNTQsIDI5MzY2LCAyOTM3MCwgMjkzNzcsIDI5MzgzLCAyOTM4NywgCi0gICAgMjkzOTAsIDI5Mzk5LCAyOTQwNywgMjk0MTIsIDI5NDE2LCAyOTQyNiwgMjk0MzYsIDI5NDQ2LCAyOTQ1MiwgMjk0NTcsIAotICAgIDI5NDY3LCAyOTQ3MiwgMjk0ODUsIDI5NDk5LCAyOTUxMCwgMjk1MjIsIDI5NTM0LCAyOTU0OCwgMjk1NjEsIDI5NTczLCAKLSAgICAyOTU4NSwgMTI4NTksIDI5NTk5LCAyOTYwNCwgMjk2MDksIDI5NjEzLCAyOTYxNywgMjk2MjEsIDE3NDMsIDI1MTI5LCAKLSAgICAyOTYyNSwgMjk2MzAsIDI5NjM1LCAyOTYzOSwgMjk2NDIsIDI5NjQ3LCAyOTY1MiwgMjk2NTgsIDI5NjY0LCA4NDYxLCAKLSAgICAyOTY2OSwgMjk2NzYsIDEzOTM1LCAyOTY4MiwgMjk2ODcsIDI5NjkyLCAyOTY5NiwgMjk3MDEsIDI5NzA2LCAyODg1NSwgCi0gICAgMjk3MTEsIDI5NzE2LCAyOTcyMSwgMjk3MjcsIDI4ODYxLCAyOTczMiwgMjk3MzUsIDI5NzQyLCAyOTc1MCwgMjk3NTYsIAotICAgIDI5NzYyLCAyOTc2OCwgMjk3NzksIDI5Nzg0LCAyOTc5MSwgMjk3OTgsIDI5ODA1LCAyOTgxMywgMjk4MjIsIDI5ODMxLCAKLSAgICAyOTgzNywgMjk4NDMsIDI5ODUxLCAyODg2NiwgMjk4NTYsIDI5ODYyLCAyOTg2OCwgMjg4NzIsIDI5ODczLCAyOTg4MSwgCi0gICAgMjk4ODksIDI5ODk1LCAyOTkwMiwgMjk5MDgsIDI5OTE1LCAyOTkyMiwgMjk5MjgsIDI5OTM2LCAyOTk0NiwgMjk5NTMsIAotICAgIDI5OTU4LCAyOTk2NCwgMjk5NjksIDI5OTc0LCAyOTk4MSwgMjk5OTAsIDI5OTk4LCAzMDAwMywgMzAwMDksIDMwMDE2LCAKLSAgICAzMDAyNCwgMzAwMzAsIDMwMDM1LCAzMDA0MSwgMzAwNTAsIDI1ODkwLCAzMDA1NywgMzAwNjEsIDMwMDY2LCAzMDA3NSwgCi0gICAgMzAwODAsIDMwMDg1LCAxMDcxNCwgMzAwOTMsIDMwMDk4LCAzMDEwMywgMzAxMDcsIDMwMTEyLCAzMDExNywgMzAxMjQsIAotICAgIDMwMTI5LCAzMDEzNCwgMjg4NzcsIDI4ODgzLCAzMDE0MCwgMjQ3MywgMjM5LCAzMDE0MywgMzAxNDYsIDMwMTUwLCAzMDE1NCwgCi0gICAgMzAxNjQsIDMwMTcyLCAzMDE3NiwgMzAxODMsIDMwMTkwLCAzMDE5NCwgMzAxOTcsIDMwMjAzLCAzMDIxMSwgMzAyMTksIAotICAgIDMwMjIzLCAzMDIyNywgMzAyMzAsIDMwMjM3LCAzMDI0MSwgMzAyNDgsIDMwMjU2LCAzMDI2MywgMzAyNjcsIDMwMjc1LCAKLSAgICA2ODQsIDI5NywgMzAyODcsIDMwMjkyLCAzMDI5NywgMzAzMDMsIDMwMzA4LCAzMDMxMywgMzYzMiwgMzAzMTgsIDMwMzIxLCAKLSAgICAzMDMyNiwgMzAzMzEsIDMwMzM2LCAzMDM0MSwgMzAzNDYsIDMwMzUzLCAyMDYwOSwgMzAzNTgsIDMwMzYzLCAzMDM2OCwgCi0gICAgMzAzNzMsIDMwMzc4LCAzMDM4NCwgMzAzODksIDMwMzk1LCAyOTAzOSwgMzA0MDEsIDMwNDA2LCAzMDQxMiwgMzA0MTgsIAotICAgIDMwNDI4LCAzMDQzMywgMzA0MzgsIDMwNDQyLCAzMDQ0NywgMzA0NTIsIDMwNDU3LCAzMDQ2MiwgMzA0NzUsIDMwNDgwLCAKLSAgICAyMDQwNiwgMTQ5MDYsIDM2MzgsIDMwNDg0LCAzMDQ4OSwgMzA0OTQsIDMwNTAwLCAzMDUwNSwgMzA1MTAsIDMwNTE0LCAKLSAgICAzMDUxOSwgMzA1MjQsIDMwNTMwLCAzMDUzNSwgMzA1NDAsIDMwNTQ0LCAzMDU0OSwgMzA1NTQsIDMwNTU5LCAzMDU2MywgCi0gICAgMzA1NjgsIDMwNTczLCAzMDU3OCwgMzA1ODQsIDMwNTkwLCAzMDU5NSwgMzA1OTksIDMwNjA0LCAzMDYwOSwgMzA2MTQsIAotICAgIDMwNjE4LCAzMDYyNiwgMzA2MzAsIDMwNjM2LCAzMDY0MCwgMzA2NDcsIDE0Njk5LCAzMDY1MywgMzA2NjAsIDMwNjY4LCAKLSAgICAzMDY3NSwgMzA2ODEsIDMwNjkzLCAzMDY5OSwgMzA3MDMsIDI3MjcsIDMwNzA3LCAzMDcxMSwgMzAyMzIsIDMwNzIwLCAKLSAgICAzMDczMSwgMzA3MzYsIDMwNzQxLCAzMDc0NiwgMzA3NTAsIDMwNzU1LCAyMDUzNSwgMzA3NTksIDMwNzY0LCAxOTQ1OSwgCi0gICAgMzA3NjgsIDMwNzczLCAzMDc3OSwgMzA3ODQsIDMwNzg4LCAzMDc5MiwgMzA3OTUsIDMwNzk5LCAzMDgwNSwgMzA4MTYsIAotICAgIDMwODI4LCAzMDgzMywgMzA4MzcsIDMwODQwLCAzNDMsIDMwODQ0LCAzMDg0OSwgMzA4NTQsIDMwODU5LCAzMDg2NCwgCi0gICAgMzA4NjksIDMwODc1LCAzMDg4MCwgMzA4ODUsIDMwODkxLCAzMDg5NiwgMzA5MDIsIDMwOTA3LCAzMDkxMywgMzA5MTgsIAotICAgIDMwOTIzLCAzMDkyOCwgMzA5MzMsIDMwOTM4LCAzMDk0MywgMzA5NDgsIDMwOTUzLCAzMDk1OSwgMzA5NjQsIDMwOTY5LCAKLSAgICAzMDk3NCwgMzA5NzksIDMwOTg0LCAzMDk4OSwgMzA5OTQsIDMxMDAwLCAzMTAwNiwgMzEwMTEsIDMxMDE2LCAzMTAyMSwgCi0gICAgMzEwMjYsIDMxMDMxLCAzMTAzNiwgMzEwNDEsIDMxMDQ2LCAzMTA1MSwgMzEwNTYsIDMxMDYxLCAzMTA2NiwgMzEwNzEsIAotICAgIDMxMDc2LCAzMTA4MSwgMzEwODYsIDMxMDkxLCAzMTA5NiwgMzExMDIsIDI2LCAzMTEwNywgMzExMTEsIDMxMTE1LCAzMTEyMywgCi0gICAgMzExMjcsIDMxMTMxLCAzMTEzNCwgMzExMzcsIDMxMTM5LCAzMTE0NCwgMzExNDgsIDMxMTUzLCAzMTE1NywgMzExNjIsIAotICAgIDMxMTY2LCAzMTE3MSwgMzExNzUsIDMxMTc4LCAzMTE4MCwgMzExODUsIDMxMTg5LCAzMTIwMCwgMzEyMDMsIDMxMjA1LCAKLSAgICAzMTIwOSwgMzEyMjEsIDMxMjMwLCAzMTIzNCwgMzEyNDAsIDMxMjQ1LCAzMTI1NCwgMzEyNjAsIDMxMjY1LCAzMTI3MCwgCi0gICAgMzEyNzQsIDMxMjc5LCAzMTI4NiwgMzEyOTEsIDMxMjk3LCAzMTMwMiwgMzEzMDYsIDMxMzEzLCAyMzcwMSwgMjM3MTEsIAotICAgIDMxMzE3LCAzMTMyMiwgMzEzMjcsIDMxMzMyLCAzMTMzOSwgMzEzNDMsIDMxMzUwLCA2NTQ0LCAzMTM1NiwgMzEzNjUsIAotICAgIDMxMzczLCAzMTM4OCwgMzE0MDIsIDMxNDEwLCAzMTQyMSwgMzE0MzAsIDMxNDM1LCA1NjgxLCAzMTQ0NSwgMzE0NTAsIAotICAgIDMxNDU1LCAzMTQ1OSwgMzE0NjIsIDMxNDY2LCAzMTQ3MSwgMzE0NzUsIDMxNDgyLCAzMTQ4NywgMzE0OTIsIDczMjAsIAotICAgIDMxNTAyLCAzMTUwNCwgMzE1MDcsIDMxNTExLCAzMTUxNywgMzE1MjEsIDMxNTI2LCAzMTUzMSwgMzE1MzcsIDMxNTQyLCAKLSAgICAzMTU0OCwgMzE1NTMsIDMxNTYzLCAzMTU3MiwgMzE1ODAsIDMxNTg1LCAzMTU5MSwgMzE1OTYsIDMxNjAzLCAzMTYwNywgCi0gICAgMzE2MTUsIDMxNjIyLCAzMTYzNSwgMzE2NDMsIDMxNjQ3LCAzMTY1NywgMzE2NjIsIDMxNjY2LCAzMTY3NCwgMzE2ODIsIAotICAgIDMxNjg2LCAzMTY5NSwgMzE3MDEsIDMxNzA2LCAzMTcxNCwgMzE3MjQsIDMxNzMzLCAzMTc0MiwgMzE3NTEsIDMxNzYyLCAKLSAgICAzMTc3MCwgMzE3ODEsIDMxNzkwLCAzMTc5NywgMzE4MDMsIDMxODA4LCAzMTgxOSwgMzE4MjQsIDMxODI4LCAzMTgzMSwgCi0gICAgMzE4MzUsIDMxODQzLCAzMTg0OSwgMzE4NTcsIDMxODY0LCAzMTg3MCwgMzE4NzUsIDMxODgxLCAyMzcyLCAzMTg4NSwgCi0gICAgMzE4ODcsIDMxODkyLCAzMTg5NywgMzE5MDAsIDMxOTAyLCAzMTkwNiwgMzE5MDksIDMxOTE2LCAzMTkyMCwgMzE5MjQsIAotICAgIDMxOTI3LCAzMTkzMywgMzE5NDMsIDMxOTQ4LCAzMTk1NCwgMzE5NTgsIDMxOTYzLCAzMTk3NiwgMjQwNzQsIDMxOTgyLCAKLSAgICAzMTk5MSwgMTU2NTQsIDMxOTk4LCAzMjAwNywgMjk0MzIsIDMyMDE1LCAzMjAyMCwgMzIwMjQsIDMyMDMyLCAzMjAzOSwgCi0gICAgMzIwNDQsIDMyMDQ4LCAzMjA1MywgMzIwNTcsIDMyMDY1LCAzMjA3MSwgMzIwNzcsIDMyMDgyLCAzMjA4NiwgMzIwODksIAotICAgIDMyMDk0LCAzMjEwNywgMzIxMjMsIDIxMDgwLCAzMjE0MCwgMzIxNTIsIDMyMTY5LCAzMjE4MSwgMzIxOTUsIDIxMDk3LCAKLSAgICAyMTExNiwgMzIyMDcsIDMyMjE5LCAyNjM0LCAzMjIzMywgMzIyMzgsIDMyMjQzLCAzMjI0OCwgMzIyNTIsIDMyMjU5LCAKLSAgICAzMjI3MSwgMzIyNzcsIDMyMjgwLCAzMjI5MSwgMzIzMDIsIDI5ODQ4LCA2NzAsIDMyMzA3LCAzMjMxMSwgMzIzMTQsIAotICAgIDMyMzE5LCAzMjMyNCwgMzIzMzAsIDMyMzM1LCAzMjM0MCwgMzIzNDYsIDMyMzUyLCAzMjM1NywgMzIzNjEsIDMyMzY2LCAKLSAgICAzMjM3MSwgMzIzNzYsIDMyMzgwLCAzMjM4MywgMzIzODksIDMyMzk0LCAzMjM5OSwgMzI0MDQsIDMyNDA4LCAzMjQxMywgCi0gICAgMzI0MTksIDMyNDI3LCAyNDI5OSwgMzI0MzIsIDMyNDM3LCAzMjQ0NCwgMzI0NTAsIDMyNDU2LCAzMjQ2MSwgMzI0NjksIAotICAgIDIwNjE4LCAzMjQ3NiwgMzI0ODEsIDMyNDg2LCAzMjQ5MSwgMzI0OTUsIDMyNDk4LCAzMjUwMywgMzI1MDcsIDMyNTExLCAKLSAgICAzMjUxOCwgMzI1MjQsIDMyNTMwLCAzMjUzNiwgMzI1NDMsIDMyNTQ4LCAzMjU1NCwgMzE2NzcsIDMyNTU4LCAzMjU2MiwgCi0gICAgMzI1NjcsIDMyNTgwLCAzMjU4NSwgMzI1OTEsIDMyNTk5LCAzMjYwNiwgMzI2MTQsIDMyNjI0LCAzMjYzMCwgMzI2MzYsIAotICAgIDMyNjQyLCAzMjY0NiwgMzI2NTUsIDMyNjYwLCAzMjY2NSwgODc4NywgMzI2NzAsIDMyNjc3LCAzMjY4MywgMzI2OTMsIAotICAgIDMyNjk4LCAzMjcwNCwgMzI3MTIsIDM1NDMsIDMyNzE5LCAzMjcyNiwgMzU0OSwgMzI3MzAsIDMyNzM1LCAzMjc0NiwgCi0gICAgMzI3NTMsIDMyNzU5LCAzMjc2OCwgMzI3NzIsIDM5MzIsIDMyNzc1LCAzMjc4MiwgMzI3ODgsIDMyNzk0LCAzMjgwMiwgCi0gICAgMzI4MTIsIDI2OTU4LCAzMjgxOSwgMzI4MjcsIDMyODMzLCAzMjgzOCwgMzI4NDQsIDMyODQ5LCAzMjg1NSwgMzI4NTksIAotICAgIDMyODY2LCAzMjg3MiwgMzI4ODEsIDI0MDk0LCAzMjg4OCwgMzI4OTMsIDMyODk3LCAzMjkwNSwgMzI5MTMsIDc5NzQsIAotICAgIDQzNzMsIDMyOTIwLCAzMjkyNCwgMzI5MjgsIDMyOTMzLCAzMjkzOSwgMzI5NDQsIDMyOTQ5LCAzMjk1NiwgMzAzNDksIAotICAgIDMyOTYyLCAzMjk2NywgMzI5NzEsIDMyOTc2LCAzMjk4MCwgMzI5ODksIDMyOTkzLCAzMjk5OSwgMzMwMDYsIDMzMDEyLCAKLSAgICAzMzAxOSwgMzMwMjQsIDMzMDMzLCAzMzAzOCwgMzMwNDIsIDMzMDQ3LCAzMzA1NCwgMzMwNjIsIDMzMDcwLCAzMzA3NSwgCi0gICAgMTk1MDgsIDMzMDc5LCAzMzA4MiwgMzMwODYsIDMzMDkwLCAzMzA5NCwgMzMwOTcsIDMzMDk5LCAzMzEwNCwgMzMxMTIsIAotICAgIDMzMTE2LCAzMzEyMywgMzMxMjcsIDMzMTM1LCAzMzE0MiwgMzMxNTIsIDMzMTU2LCAzMzE2MCwgMzMxNjgsIDMzMTc2LCAKLSAgICAzMzE4MiwgMzMxODcsIDMzMTk2LCAxMTY2OSwgMzMyMDIsIDMzMjExLCAzMzIxNiwgMzMyMjMsIDMzMjMxLCAzMzIzOSwgCi0gICAgMzMyNDcsIDMzMjU0LCAzMzI2MSwgMzMyNjgsIDMzMjc1LCAzMzI4MiwgMzMyODcsIDMzMjkzLCAzMzMxMCwgMzMzMTgsIAotICAgIDMzMzI4LCAzMzMzNiwgMzMzNDMsIDM4NSwgMzMzNDcsIDMzMzUzLCAzMzM1NywgMzMzNjIsIDMxNDI2LCAzMzM2OCwgCi0gICAgMzMzNzEsIDMzMzc1LCAzMzM4MywgMzU1NCwgMzMzOTEsIDMzMzk3LCAzMzQwMywgMzM0MTIsIDMzNDIyLCAzMzQyOSwgCi0gICAgMzM0MzUsIDM1NjAsIDM1NjYsIDMzNDQ0LCAzMzQ1MSwgMzM0NTksIDMzNDY0LCAzMzQ2OCwgMzM0NzUsIDMzNDgzLCAKLSAgICAzMzQ4OSwgMzM0OTgsIDMzNTA4LCAzMzUxNCwgMzM1MjIsIDMzNTMxLCAzMzUzOCwgMzM1NDYsIDIwMTc1LCAzMzU1MywgCi0gICAgMzM1NjAsIDMzNTY2LCAzMzU3NiwgMzM1ODUsIDMzNTk2LCAzMzYwMCwgMzM2MTAsIDMzNjE2LCAzMzYyMywgMzM2MzEsIAotICAgIDMzNjQwLCAzMzY0OSwgMzM2NTksIDMzNjcwLCAzMzY3NywgMzM2ODIsIDMzNjg5LCAyOTY3LCAzMzY5NywgMzM3MDMsIAotICAgIDMzNzA4LCAzMzcxNCwgMzM3MjAsIDMzNzI1LCAzMzczOCwgMzM3NTEsIDMzNzY0LCAzMzc3MSwgMzM3NzcsIDMzNzg1LCAKLSAgICAzMzc5MCwgMzM3OTQsIDE0MzIsIDMzNzk4LCAzMzgwMywgMzM4MDgsIDMzODEzLCAzMzgxOCwgMzM4MjQsIDMzODI5LCAKLSAgICAzMzgzNCwgMzM4MzksIDMzODQ0LCAzMzg0OSwgMzM4NTQsIDMzODU5LCAzMzg2NSwgMzM4NzEsIDMzODc2LCAzMzg4MSwgCi0gICAgMzM4ODcsIDMzODkyLCAzMzg5NywgMzM5MDIsIDMzOTA4LCAzMzkxMywgMzM5MTgsIDMzOTIzLCAzMzkyOCwgMzM5MzQsIAotICAgIDMzOTM5LCAzMzk0NCwgMzM5NTAsIDMzOTU1LCAzMzk2MCwgMzM5NjUsIDMzOTcwLCAzMzk3NSwgMzM5ODEsIDMzOTg2LCAKLSAgICAzMzk5MiwgMzM5OTcsIDM0MDAzLCAzNDAwOCwgMzQwMTMsIDM0MDE4LCAzNDAyNCwgMzQwMzAsIDM0MDM2LCAzNDA0MiwgCi0gICAgMzQwNDgsIDM0MDU0LCAzNDA2MCwgMzQwNjYsIDM0MDcxLCAzNDA3NiwgMzQwODIsIDM0MDg3LCAzNDA5MiwgMzQwOTcsIAotICAgIDM0MTAyLCAzNDEwNywgMzQxMTIsIDM0MTE3LCAzNDEyMywgMzQxMjgsIDM0MTMzLCAzNDEzOSwgMzQxNDUsIDEwMSwgCi0gICAgMzQxNTAsIDM0MTUyLCAzNDE1NiwgMzQxNjAsIDM0MTY0LCAzNDE2OSwgMzQxNzMsIDc4OTUsIDM0MTc3LCAzNDE4MywgCi0gICAgNDczOCwgMzQxODksIDM0MTkyLCAzNDE5NywgMzQyMDEsIDM0MjA2LCAzNDIxMCwgMzQyMTQsIDM0MjE5LCA4NTk0LCAKLSAgICAzNDIyMywgMzQyMjcsIDM0MjMxLCAxMzYyMywgMzQyMzYsIDM0MjQwLCAzNDI0NSwgMzQyNTAsIDM0MjU1LCAzNDI1OSwgCi0gICAgMzQyNjYsIDI0MDk4LCAzNDI3MiwgMzQyNzUsIDM0Mjc5LCAzNDI4NCwgMzQyOTAsIDM0Mjk0LCAzNDMwMiwgMzQzMDgsIAotICAgIDM0MzEzLCAzNDMxNywgMzQzMjMsIDM0MzI3LCAzNDMzMSwgMzQwNCwgMzQwOSwgMjcxNDQsIDM0MzM0LCAzNDM0MiwgCi0gICAgMzQzNDksIDM0MzUzLCAzNDM2MCwgMzQzNjUsIDMzMywgMzQzNzAsIDM0Mzc0LCAzNDM4MCwgMzQzOTIsIDM0Mzk4LCAKLSAgICAzNDQwNCwgMzQ0MDgsIDM0NDE0LCAzNDQyMywgMzQ0MjcsIDM0NDMxLCAzNDQzNiwgMzQ0NDEsIDM0NDQ2LCAzNDQ1MCwgCi0gICAgMzQ0NTQsIDM0NDYxLCAzNDQ2NywgMzQ0NzIsIDM0NDg3LCAzNDUwMiwgMzQ1MTcsIDM0NTMzLCAzNDU1MSwgODU0NCwgCi0gICAgMzQ1NjUsIDM0NTcyLCAzNDU3NiwgMzQ1NzksIDM0NTg4LCAzNDU5MywgMzQ1OTcsIDM0NjA1LCAzMTYyOCwgMzQ2MTMsIAotICAgIDM0NjE3LCAzNDYyNywgMjcxMTQsIDM0NjM4LCAzNDY0MiwgMzQ2NTEsIDM0NjU5LCA4MTUyLCAxMzE2MywgMzQ2NjMsIAotICAgIDM0NjY2LCAzNDY2OSwgNjU1NywgMzgwMiwgMzQ2NzQsIDM0NjgyLCAzNDY4NiwgMzQ2ODksIDM0NjkzLCAzNDY5OCwgCi0gICAgMzQ3MDMsIDM0NzA5LCAzNDcxNSwgMzQ3MjAsIDM0NzI0LCAyMzk0NiwgMzQ3MjgsIDM0NzMyLCAzNDczOCwgMzQ3NDIsIAotICAgIDc0NDYsIDM0NzUxLCAzNDc1OCwgMzQ3NjIsIDEwMjEwLCAzNDc2OSwgMzQ3NzUsIDM0NzgwLCAzNDc4NywgMzQ3OTQsIAotICAgIDM0ODAxLCAyNjQ4MCwgNjQ4MCwgMzQ4MDgsIDM0ODE1LCAzNDgyMiwgMzQ4MjgsIDM0ODMzLCAzNDg0MCwgMzQ4NTEsIAotICAgIDM0ODU3LCAzNDg2MiwgMzQ4NjcsIDM0ODc0LCAzNDg3OCwgMzQ4ODIsIDM0ODkyLCAzNDkwMywgMzQ5MDksIDM0OTE0LCAKLSAgICAzNDkxOSwgMzQ5MjQsIDM0OTI5LCAzNDkzNCwgMzQ5MzgsIDM0OTQyLCAzNDk0OCwgMzQ5NTYsIDIyNzMsIDgyOCwgODYxNiwgCi0gICAgODYyMSwgODYyNywgMzQ5NjUsIDg2MzIsIDg2MzcsIDg2NDMsIDM0OTcwLCAzNDk4MCwgMzQ5ODQsIDg2NDgsIDM0OTg5LCAKLSAgICAzNDk5MiwgMzQ5OTcsIDM1MDAxLCAzNTAwNiwgMzUwMTEsIDM1MDE4LCAzNTAyNSwgMzUwMzMsIDg1NTcsIDM1MDQwLCAKLSAgICAzNTA0MywgMzUwNDksIDM1MDU5LCA0NDA3LCAzNTA2OCwgMzUwNzIsIDM1MDgwLCAzNTA4NCwgMzUwOTQsIDM1MTAwLCAKLSAgICAzNTExMSwgMzUxMTcsIDM1MTIzLCAzNTEyOCwgMzUxMzQsIDM1MTQwLCAzNTE0NiwgMzUxNTEsIDM1MTU0LCAzNTE2MSwgCi0gICAgMzUxNjcsIDM1MTcyLCAzNTE3OSwgMzUxODYsIDM1MTkwLCAzNTIwMCwgMzUyMTMsIDM1MjIyLCAzNTIzMSwgMzUyNDIsIAotICAgIDM1MjU1LCAzNTI2NiwgMzUyNzUsIDM1Mjg2LCAzNTI5MSwgMzUzMDAsIDM1MzA1LCA4NjUzLCAzNTMxMSwgMzUzMTgsIAotICAgIDM1MzI2LCAzNTMzMSwgMzUzMzUsIDM1MzQyLCAzNTM0OSwgMzc1NywgMjEsIDM1MzUzLCAzNTM1OCwgMTQ5NTgsIDM1MzYyLCAKLSAgICAzNTM2NSwgMzUzNjgsIDI2MDAxLCAzNTM3MiwgMjY0ODksIDM1MzgwLCAzNTM4NCwgMzUzODgsIDM1MzkxLCAzNTM5NywgCi0gICAgMzU0MDMsIDM1NDExLCAzNTQxNywgMzU0MjQsIDI1OTkzLCAzNTQyOCwgMjYxNzgsIDM1NDMyLCAzNTQ0MSwgMzU0NDcsIAotICAgIDM1NDUzLCAzNTQ1OCwgMzU0NjIsIDM1NDY4LCAzNTQ3MiwgMzU0NzUsIDM1NDgzLCAzNTQ5MSwgMjQxNTYsIDM1NDk3LCAKLSAgICAzNTUwNCwgMzU1MTAsIDM1NTE1LCAzNTUyMCwgMzU1MjQsIDM1NTMwLCAzNTUzNSwgMzU1NDEsIDM5NzMsIDc1NSwgMzU1NDgsIAotICAgIDM1NTUyLCAzNTU1NSwgMTM1MTMsIDM1NTY3LCAzMzUyNywgMzU1NzgsIDM1NTgxLCAzNTU4OCwgMzU1OTQsIDM1NTk4LCAKLSAgICAzNTYwNCwgMzU2MDksIDM1NjE1LCAzNTYyMCwgMzU2MjUsIDM1NjI5LCAzNTYzMywgMzU2MzgsIDM1NjQzLCAzNTY1MywgCi0gICAgMzU2NTksIDM1NjcyLCAzNTY3OCwgMzU2ODUsIDM1NjkwLCAzNTY5NiwgMzU3MDEsIDE0ODQ0LCAxNDM1LCAxMDAyLCAKLSAgICAyODk3NCwgMjg5ODAsIDM1NzA2LCAyODk4NiwgMjg5OTksIDI5MDA1LCAyOTAxMSwgMzU3MTIsIDI5MDE3LCAyOTAyMywgCi0gICAgMzU3MTgsIDM1NzI0LCAxNCwgMzU3MzIsIDM1NzM5LCAzNTc0MywgMzU3NDcsIDM1NzU1LCAyOTczNywgMzU3NTksIDM1NzYzLCAKLSAgICAzNTc3MCwgMzU3NzUsIDM1Nzc5LCAzNTc4NCwgMzU3OTAsIDM1Nzk1LCAzNTgwMSwgMzU4MDYsIDM1ODEwLCAzNTgxNCwgCi0gICAgMzU4MTgsIDM1ODIzLCAzNTgyNywgMzU4MzIsIDM1ODM2LCAzNTg0MywgMzU4NDgsIDM1ODUyLCAzNTg1NywgMzU4NjEsIAotICAgIDM1ODY2LCAzNTg3MCwgMzU4NzUsIDM1ODgxLCAxMzczMywgMTM3MzgsIDM1ODg2LCAzNTg5MCwgMzU4OTMsIDM1ODk3LCAKLSAgICAzNTkwMiwgMzU5MDYsIDM1OTEyLCAzNTkxOSwgMzU5MjQsIDM1OTM0LCAzNTkzOSwgMzU5NDcsIDM1OTUxLCAzNTk1NCwgCi0gICAgMjk3NTIsIDM1OTU4LCA0MDI2LCAzNTk2MywgMzU5NjgsIDM1OTcyLCAzNTk3NywgMzU5ODEsIDM1OTg2LCAxMTY4NywgCi0gICAgMzU5OTcsIDM2MDAxLCAzNjAwNCwgMzYwMDksIDM2MDEzLCAzNjAxNywgMzYwMjAsIDM2MDI0LCA2NTc2LCAxMTcwMywgCi0gICAgMzYwMjcsIDM2MDMwLCAzNjAzNSwgMzYwMzksIDM2MDQ4LCAzNjA2NCwgMzYwODAsIDM2MDkwLCAyNTkwMCwgMzYwOTcsIAotICAgIDM2MTAxLCAzNjEwNiwgMzYxMTEsIDM2MTE1LCAzNjExOSwgMzM2NDQsIDM2MTI1LCAzNjEzMCwgMzYxMzQsIDM2MTQxLCAKLSAgICAzNjE0NiwgMzYxNTAsIDM2MTU0LCAyNDk1OCwgMzYxNjAsIDE5NjAzLCAzNjE2NSwgMzYxNzIsIDM2MTgwLCAzNjE4NiwgCi0gICAgMzYxOTMsIDM2MjAxLCAzNjIwNywgMzYyMTEsIDM2MjE3LCAzNjIyNSwgMzYyMjksIDM2MjM4LCA3ODc2LCAzNjI0NiwgCi0gICAgMzYyNTAsIDM2MjU4LCAzNjI2NSwgMzYyNzAsIDM2Mjc1LCAzNjI3OSwgMzYyODIsIDM2Mjg2LCAzNjI4OSwgMzYyOTMsIAotICAgIDM2MzAwLCAzNjMwNSwgMzYzMTEsIDI0Mzc3LCAyOTAzNCwgMzYzMTUsIDM2MzIyLCAzNjMyOCwgMzYzMzQsIDM2MzM5LCAKLSAgICAzNjM0MiwgMzYzNDQsIDM2MzUxLCAzNjM1OCwgMzYzNjQsIDM2MzY4LCAzNjM3MSwgMzYzNzUsIDM2Mzc5LCAzNjM4MywgCi0gICAgMzYzODgsIDM2MzkyLCAzNjM5NiwgMzYzOTksIDM2NDAzLCAzNjQxNywgMjExNDYsIDM2NDM2LCAzNjQ0OSwgMzY0NjIsIAotICAgIDM2NDc1LCAyMTE2NCwgMzY0OTAsIDg4NDYsIDM2NTA1LCAzNjUxMSwgMzY1MTUsIDM2NTE5LCAzNjUyNiwgMzY1MzEsIAotICAgIDM2NTM1LCAzNjU0MiwgMzY1NDgsIDM2NTUzLCAzNjU1OSwgMzY1NjksIDM2NTgxLCAzNjU5MiwgMzY1OTcsIDM2NjA0LCAKLSAgICAzNjYwOCwgMzY2MTIsIDM2NjE1LCAxNDEyOSwgMzYwNSwgMzY2MjMsIDEzNzYwLCAzNjYzNiwgMzY2NDMsIDM2NjQ3LCAKLSAgICAzNjY1MSwgMzY2NTYsIDM2NjYxLCAzNjY2NywgMzY2NzEsIDM2Njc1LCAzNjY3OCwgNjE4OCwgMTM3NzEsIDM2NjgzLCAKLSAgICAzNjY4NywgMzY2OTMsIDM2NzAyLCAzNjcwNywgMzM1MDQsIDM2NzEzLCAzNjcxOCwgMzY3MjIsIDM2NzI3LCAzNjczNCwgCi0gICAgMzY3MzgsIDM2NzQxLCAxMjgyNCwgMzY3NDYsIDM2NzUzLCAxMDA5LCAzNjc1NywgMzY3NjIsIDM2NzY3LCAzNjc3MywgCi0gICAgMzY3NzgsIDM2NzgzLCAzNjc4NywgMzY3OTcsIDM2ODAyLCAzNjgwOCwgMzY4MTMsIDM2ODE5LCAzNjgyNCwgMzY4MzAsIAotICAgIDM2ODQwLCAzNjg0NSwgMzY4NTAsIDM2ODU0LCA1NjgzLCA1Njk1LCAzNjg1OSwgMzY4NjIsIDM2ODY5LCAzNjg3NSwgCi0gICAgMzE3OTMsIDMxODAwLCAzNjg4NCwgMzY4ODgsIDI5ODAwLCAzNjg5NiwgMzY5MDcsIDM2OTE1LCAzMzY5MiwgMzY5MjIsIAotICAgIDM2OTI3LCAzNjkzMiwgMzY5NDMsIDM2OTUwLCAzNjk2MSwgMjk4MjQsIDE5NjA5LCAzNjk2OSwgNzIyLCAzNjk3NCwgCi0gICAgMzY5ODAsIDI1OTg0LCAzNjk4NiwgMzY5OTEsIDM3MDAxLCAzNzAxMCwgMzcwMTcsIDM3MDIzLCAzNzAyNywgMzcwMzAsIAotICAgIDM3MDM3LCAzNzA0MywgMzcwNTAsIDM3MDU2LCAzNzA2NiwgMzcwNzQsIDM3MDgwLCAzNzA4NiwgMzcwOTEsIDM3MDk1LCAKLSAgICAzNzEwMiwgMzcxMDgsIDM3MTE1LCAzNjM4NCwgNTMwLCAxMjExMiwgMzcxMjEsIDM3MTI2LCAzNzEyOSwgMzcxMzUsIAotICAgIDM3MTQzLCAxMzY0LCAzNzE0OCwgMzcxNTIsIDM3MTU3LCAzNzE2NCwgMzcxNzAsIDM3MTc0LCAzNzE3OSwgMzcxODgsIAotICAgIDM3MTk1LCAzNzIwNSwgMzcyMTEsIDI2MDE5LCAzNzIyOCwgMzcyMzcsIDM3MjQ1LCAzNzI1MSwgMzcyNTYsIDM3MjYzLCAKLSAgICAzNzI2OSwgMzcyNzcsIDM3Mjg2LCAzNzI5NCwgMzcyOTgsIDM3MzAzLCAzNzMxMSwgMjk4MzMsIDM3MzE3LCAzNzMzNiwgCi0gICAgMTQwNjIsIDM3MzUwLCAzNzM2NiwgMzczODAsIDM3Mzg2LCAzNzM5MSwgMzczOTYsIDM3NDAxLCAzNzQwNywgMjk4MzksIAotICAgIDM3NDEyLCAzNzQxOSwgMzc0MjQsIDM3NDI4LCAzNDEsIDI4NzgsIDM3NDM1LCAzNzQ0MCwgMzc0NDUsIDI1Mjc1LCAzNzI2NiwgCi0gICAgMzc0NDksIDM3NDU0LCAzNzQ2MiwgMzc0NjYsIDM3NDY5LCAzNzQ3NSwgMzc0NzksIDI2MDc0LCAzNzQ4MiwgMzc0ODcsIAotICAgIDM3NDkxLCAzNzQ5NCwgMzc0OTksIDM3NTAzLCAzNzUwOCwgMzc1MTMsIDM3NTE3LCAzNzUyMiwgMzc1MjYsIDM3NTMwLCAKLSAgICAxOTM0NiwgMTkzNTcsIDM3NTM0LCAzNzUzOSwgMzc1NDUsIDI0OTE1LCAzNzU1MCwgMzc1NTQsIDE5NDI1LCAxNDI4MCwgCi0gICAgMzc1NTcsIDM3NTYyLCAzNzU2NywgMzc1NzIsIDM3NTc3LCAzNzU4MiwgMzc1ODcsIDM3NTkyLCA0NDAsIDQzLCAyOTA1MiwgCi0gICAgMjkwNTcsIDI5MDYyLCAyOTA2OCwgMjkwNzMsIDI5MDc4LCAzNzU5NywgMjkwODIsIDM3NjAxLCAzNzYwNSwgMjkwODcsIAotICAgIDI5MDkzLCAzNzYwOSwgMjkxMDQsIDI5MTA5LCAzNzYxNywgMzc2MjIsIDI5MTE1LCAzNzYyNywgMzc2MzIsIDM3NjM3LCAKLSAgICAzNzY0MiwgMzc2NDgsIDM3NjU0LCAzNzY2MCwgMjkxMzIsIDM3NjczLCAzNzY3OSwgMjkxMzYsIDM3NjgzLCAyOTE0MSwgCi0gICAgMzc2ODgsIDI5MTQ2LCAyOTE1MSwgMzc2OTEsIDM3Njk2LCAzNzcwMCwgMjg3OTUsIDM3NzA2LCAxMTkxMSwgMzc3MTMsIAotICAgIDM3NzE4LCAyOTE1NiwgMzc3MjIsIDM3NzI3LCAzNzczMiwgMzc3MzcsIDM3NzQxLCAzNzc0NiwgMzc3NTEsIDM3NzU3LCAKLSAgICAzNzc2MiwgMzc3NjcsIDM3NzczLCAzNzc3OSwgMzc3ODQsIDM3Nzg4LCAzNzc5MywgMzc3OTgsIDM3ODAzLCAzNzgwNywgCi0gICAgMzc4MTIsIDM3ODE3LCAzNzgyMiwgMzc4MjgsIDM3ODM0LCAzNzg0MCwgMzc4NDUsIDM3ODQ5LCAzNzg1NCwgMzc4NTgsIAotICAgIDI5MTYwLCAyOTE2NSwgMjkxNzAsIDM3ODYyLCAzNzg2NiwgMjkxNzUsIDI5MTgxLCAyOTE4NywgMjkxOTksIDM3ODc4LCAKLSAgICAyMzk4MywgMzc4ODIsIDM3ODg2LCAzNzg5MSwgMzc4OTYsIDM3OTAxLCAzNzkwNSwgMzc5MDksIDM3OTE5LCAzNzkyNCwgCi0gICAgMzc5MjksIDM3OTMzLCAzNzkzNywgMzc5NDAsIDM3OTQ4LCAyOTI0NywgMzc5NTMsIDE0NDIsIDM3OTU5LCAzNzk2NywgCi0gICAgMzc5NzYsIDM3OTgwLCAzNzk4OCwgMzc5OTQsIDM4MDAyLCAzODAxOCwgMzgwMjMsIDM4MDM4LCAyOTI4NCwgMTcxMiwgCi0gICAgMTAzNzUsIDM4MDQyLCAyOTI0LCAzODA1NCwgMzgwNTUsIDM4MDYzLCAzODA3MCwgMzgwNzUsIDM4MDgyLCAzODA4NywgCi0gICAgNzc0NiwgMTA5MCwgODY3NSwgMzgwOTQsIDM4MDk5LCAzODEwMiwgMzgxMDUsIDM4MTE0LCAxMjc1LCAzODExOSwgMzY1MzIsIAotICAgIDM4MTI2LCAzODEzMSwgMjA1ODMsIDI1MTEsIDM4MTM1LCA5MDk0LCAzODE0NSwgMzgxNTEsIDIyOTEsIDIzMDEsIDM4MTYwLCAKLSAgICAzODE2OSwgMzgxNzksIDM4MTkwLCAzMjM1LCAzMTk0NCwgODcyNywgMzczNSwgMTQ4ODIsIDEyODAsIDM4MTk1LCAzODIwMywgCi0gICAgMzgyMTAsIDM4MjE1LCAzODIxOSwgMzgyMjMsIDIxOTMwLCA4NzU0LCAzODIzMSwgMzgyNDAsIDM4MjQ5LCAzODI1NywgCi0gICAgMzgyNjQsIDM4MjY5LCAzODI4MiwgMzgyOTUsIDM4MzA3LCAzODMxOSwgMzgzMzEsIDM4MzQ0LCAzODM1NSwgMzgzNjYsIAotICAgIDM4Mzc2LCAzODM4NCwgMzgzOTIsIDM4NDA0LCAzODQxNiwgMzg0MjcsIDM4NDM2LCAzODQ0NCwgMzg0NTEsIDM4NDYzLCAKLSAgICAzODQ3MCwgMzg0NzksIDM4NDg2LCAzODQ5OSwgMzg1MDQsIDM4NTE0LCAzODUxOSwgMzg1MjUsIDM4NTMwLCAzNDc1OSwgCi0gICAgMzg1MzQsIDM4NTQxLCAzODU0NSwgMzg1NTIsIDM4NTYwLCAyNDcyLCAzODU2NywgMzg1NzgsIDM4NTg4LCAzODU5NywgCi0gICAgMzg2MDUsIDM4NjE1LCAzODYyMywgMzg2MzMsIDM4NjQyLCAzODY0NywgMzg2NTMsIDM4NjU5LCAzODY3MCwgMzg2ODAsIAotICAgIDM4Njg5LCAzODY5OCwgMzg3MDgsIDM4NzE2LCAzODcyNSwgMzg3MzAsIDM4NzM1LCAzODc0MCwgMTY2OCwgMzcsIDM4NzQ4LCAKLSAgICAzODc1NiwgMzg3NjcsIDM4Nzc4LCAxNDU2MywgMzg3ODgsIDM4Nzk1LCAzODgwMSwgMzg4MDYsIDM4ODEwLCAzODgyMSwgCi0gICAgMzg4MzEsIDM4ODQwLCAzODg1MSwgMTQ5MzEsIDE0OTM2LCAzODg1NiwgMzg4NjUsIDM4ODcwLCAzODg4MCwgMzg4ODUsIAotICAgIDM4ODkzLCAzODkwMSwgMzg5MDgsIDM4OTE0LCA1NTM2LCAxMDM4LCAzODkxOCwgMzg5MjQsIDM4OTI5LCAzODkzMiwgMjA3NSwgCi0gICAgMzY2NDgsIDM4OTQwLCAzODk0NCwgMzg5NDcsIDE0NzUsIDM4OTUzLCAxMjI2MSwgMTI4NSwgMzg5NTgsIDM4OTcxLCAKLSAgICAzODk4NSwgMjU5NywgMzkwMDMsIDM5MDE1LCAzOTAyNywgMjYxMSwgMjYyOCwgMzkwNDEsIDM5MDU0LCAyNjQzLCAzOTA2OCwgCi0gICAgMzkwODAsIDI2NTgsIDM5MDk0LCAxMjkxLCAxMjk3LCAxMzAzLCA5MDEyLCAzOTA5OSwgMzkxMDQsIDM5MTA5LCAzOTExMywgCi0gICAgMzkxMjgsIDM5MTQzLCAzOTE1OCwgMzkxNzMsIDM5MTg4LCAzOTIwMywgMzkyMTgsIDM5MjMzLCAzOTI0OCwgMzkyNjMsIAotICAgIDM5Mjc4LCAzOTI5MywgMzkzMDgsIDM5MzIzLCAzOTMzOCwgMzkzNTMsIDM5MzY4LCAzOTM4MywgMzkzOTgsIDM5NDEzLCAKLSAgICAzOTQyOCwgMzk0NDMsIDM5NDU4LCAzOTQ3MywgMzk0ODgsIDM5NTAzLCAzOTUxOCwgMzk1MzMsIDM5NTQ4LCAzOTU2MywgCi0gICAgMzk1NzgsIDM5NTkzLCAzOTYwOCwgMzk2MjMsIDM5NjM4LCAzOTY1MywgMzk2NjgsIDM5NjgzLCAzOTY5OCwgMzk3MTMsIAotICAgIDM5NzI4LCAzOTc0MywgMzk3NTgsIDM5NzczLCAzOTc4OCwgMzk4MDMsIDM5ODE4LCAzOTgzMywgMzk4NDgsIDM5ODYzLCAKLSAgICAzOTg3OCwgMzk4OTMsIDM5OTA4LCAzOTkyMywgMzk5MzgsIDM5OTUzLCAzOTk2OCwgMzk5ODMsIDM5OTk4LCA0MDAxMywgCi0gICAgNDAwMjgsIDQwMDQzLCA0MDA1OCwgNDAwNzMsIDQwMDg4LCA0MDEwMywgNDAxMTgsIDQwMTMzLCA0MDE0OCwgNDAxNjMsIAotICAgIDQwMTc4LCA0MDE5MywgNDAyMDgsIDQwMjIzLCA0MDIzOCwgNDAyNTMsIDQwMjY4LCA0MDI4MywgNDAyOTgsIDQwMzEzLCAKLSAgICA0MDMyOCwgNDAzNDMsIDQwMzU4LCA0MDM3MywgNDAzODgsIDQwNDAzLCA0MDQxOCwgNDA0MzMsIDQwNDQ4LCA0MDQ2MywgCi0gICAgNDA0NzgsIDQwNDkzLCA0MDUwOCwgNDA1MjMsIDQwNTM4LCA0MDU1MywgNDA1NjgsIDQwNTgzLCA0MDU5OCwgNDA2MTMsIAotICAgIDQwNjI4LCA0MDY0MywgNDA2NTgsIDQwNjczLCA0MDY4OCwgNDA3MDMsIDQwNzE4LCA0MDczMywgNDA3NDgsIDQwNzYzLCAKLSAgICA0MDc3OCwgNDA3OTMsIDQwODA4LCA0MDgyMywgNDA4MzgsIDQwODUzLCA0MDg2OCwgNDA4ODMsIDQwODk4LCA0MDkxMywgCi0gICAgNDA5MjgsIDQwOTQzLCA0MDk1OCwgNDA5NzMsIDQwOTg4LCA0MTAwMywgNDEwMTgsIDQxMDMzLCA0MTA0OCwgNDEwNjMsIAotICAgIDQxMDc4LCA0MTA5MywgNDExMDgsIDQxMTIzLCA0MTEzOCwgNDExNTMsIDQxMTY4LCA0MTE4MywgNDExOTgsIDQxMjEzLCAKLSAgICA0MTIyOCwgNDEyNDMsIDQxMjU4LCA0MTI3MywgNDEyODgsIDQxMzAzLCA0MTMxOCwgNDEzMzMsIDQxMzQ4LCA0MTM2MywgCi0gICAgNDEzNzgsIDQxMzkzLCA0MTQwOCwgNDE0MjMsIDQxNDM4LCA0MTQ1MywgNDE0NjgsIDQxNDgzLCA0MTQ5OCwgNDE1MTMsIAotICAgIDQxNTI4LCA0MTU0MywgNDE1NTgsIDQxNTczLCA0MTU4OCwgNDE2MDMsIDQxNjE4LCA0MTYzMywgNDE2NDgsIDQxNjYzLCAKLSAgICA0MTY3OCwgNDE2OTMsIDQxNzA4LCA0MTcyMywgNDE3MzgsIDQxNzUzLCA0MTc2OCwgNDE3ODMsIDQxNzk4LCA0MTgxMywgCi0gICAgNDE4MjgsIDQxODQzLCA0MTg1OCwgNDE4NzMsIDQxODg4LCA0MTkwMywgNDE5MTgsIDQxOTMzLCA0MTk0OCwgNDE5NjMsIAotICAgIDQxOTc4LCA0MTk5MywgNDIwMDgsIDQyMDIzLCA0MjAzOCwgNDIwNTMsIDQyMDY4LCA0MjA4MywgNDIwOTgsIDQyMTEzLCAKLSAgICA0MjEyOCwgNDIxNDMsIDQyMTU4LCA0MjE3MywgNDIxODgsIDQyMjAzLCA0MjIxOCwgNDIyMzMsIDQyMjQ4LCA0MjI2MywgCi0gICAgNDIyNzgsIDQyMjkzLCA0MjMwOCwgNDIzMjMsIDQyMzM4LCA0MjM1MywgNDIzNjgsIDQyMzgzLCA0MjM5OCwgNDI0MTMsIAotICAgIDQyNDI4LCA0MjQ0MywgNDI0NTgsIDQyNDczLCA0MjQ4OCwgNDI1MDMsIDQyNTE4LCA0MjUzMywgNDI1NDgsIDQyNTYzLCAKLSAgICA0MjU3OCwgNDI1OTMsIDQyNjA4LCA0MjYyMywgNDI2MzgsIDQyNjUzLCA0MjY2OCwgNDI2ODMsIDQyNjk4LCA0MjcxMywgCi0gICAgNDI3MjgsIDQyNzQzLCA0Mjc1OCwgNDI3NzMsIDQyNzg4LCA0MjgwMywgNDI4MTgsIDQyODMzLCA0Mjg0OCwgNDI4NjMsIAotICAgIDQyODc4LCA0Mjg5MywgNDI5MDgsIDQyOTIzLCA0MjkzOCwgNDI5NTMsIDQyOTY4LCA0Mjk4MywgNDI5OTgsIDQzMDEzLCAKLSAgICA0MzAyOCwgNDMwNDMsIDQzMDU4LCA0MzA3MywgNDMwODgsIDQzMTAzLCA0MzExOCwgNDMxMzMsIDQzMTQ4LCA0MzE2MywgCi0gICAgNDMxNzgsIDQzMTkzLCA0MzIwOCwgNDMyMjMsIDQzMjM4LCA0MzI1MywgNDMyNjgsIDQzMjgzLCA0MzI5OCwgNDMzMTMsIAotICAgIDQzMzI4LCA0MzM0MywgNDMzNTgsIDQzMzczLCA0MzM4OCwgNDM0MDMsIDQzNDE4LCA0MzQzMywgNDM0NDgsIDQzNDYzLCAKLSAgICA0MzQ3OCwgNDM0OTMsIDQzNTA4LCA0MzUyMywgNDM1MzgsIDQzNTUzLCA0MzU2OCwgNDM1ODMsIDQzNTk4LCA0MzYxMywgCi0gICAgNDM2MjgsIDQzNjQzLCA0MzY1OCwgNDM2NzMsIDQzNjg4LCA0MzcwMywgNDM3MTgsIDQzNzMzLCA0Mzc0OCwgNDM3NjMsIAotICAgIDQzNzc4LCA0Mzc5MywgNDM4MDgsIDQzODIzLCA0MzgzOCwgNDM4NTMsIDQzODY4LCA0Mzg4MywgNDM4OTgsIDQzOTEzLCAKLSAgICA0MzkyOCwgNDM5NDMsIDQzOTU4LCA0Mzk3MywgNDM5ODgsIDQ0MDAzLCA0NDAxOCwgNDQwMzMsIDQ0MDQ4LCA0NDA2MywgCi0gICAgNDQwNzgsIDQ0MDkzLCA0NDEwOCwgNDQxMjMsIDQ0MTM4LCA0NDE1MywgNDQxNjgsIDQ0MTgzLCA0NDE5OCwgNDQyMTMsIAotICAgIDQ0MjI4LCA0NDI0MywgNDQyNTgsIDQ0MjczLCA0NDI4OCwgNDQzMDMsIDQ0MzE4LCA0NDMzMywgNDQzNDgsIDQ0MzYzLCAKLSAgICA0NDM3OCwgNDQzOTMsIDQ0NDA4LCA0NDQyMywgNDQ0MzgsIDQ0NDUzLCA0NDQ2OCwgNDQ0ODMsIDQ0NDk4LCA0NDUxMywgCi0gICAgNDQ1MjgsIDQ0NTQzLCA0NDU1OCwgNDQ1NzMsIDQ0NTg4LCA0NDYwMywgNDQ2MTgsIDQ0NjMzLCA0NDY0OCwgNDQ2NjMsIAotICAgIDQ0Njc4LCA0NDY5MywgNDQ3MDgsIDQ0NzIzLCA0NDczOCwgNDQ3NTMsIDQ0NzY4LCA0NDc4MywgNDQ3OTgsIDQ0ODEzLCAKLSAgICA0NDgyOCwgNDQ4NDMsIDQ0ODU4LCA0NDg3MywgNDQ4ODgsIDQ0OTAzLCA0NDkxOCwgNDQ5MzMsIDQ0OTQ4LCA0NDk2MywgCi0gICAgNDQ5NzgsIDQ0OTkzLCA0NTAwOCwgNDUwMjMsIDQ1MDM4LCA0NTA1MywgNDUwNjgsIDQ1MDgzLCA0NTA5OCwgNDUxMTMsIAotICAgIDQ1MTI4LCA0NTE0MywgNDUxNTgsIDQ1MTczLCA0NTE4OCwgNDUyMDMsIDQ1MjE4LCA0NTIzMywgNDUyNDgsIDQ1MjYzLCAKLSAgICA0NTI3OCwgNDUyOTMsIDQ1MzA4LCA0NTMyMywgNDUzMzgsIDQ1MzUzLCA0NTM2OCwgNDUzODMsIDQ1Mzk4LCA0NTQxMywgCi0gICAgNDU0MjgsIDQ1NDQzLCA0NTQ1OCwgNDU0NzMsIDQ1NDg4LCA0NTUwMywgNDU1MTgsIDQ1NTMzLCA0NTU0OCwgNDU1NjMsIAotICAgIDQ1NTc4LCA0NTU5MywgNDU2MDgsIDQ1NjIzLCA0NTYzOCwgNDU2NTMsIDQ1NjY4LCA0NTY4MywgNDU2OTgsIDQ1NzEzLCAKLSAgICA0NTcyOCwgNDU3NDMsIDQ1NzU4LCA0NTc3MywgNDU3ODgsIDQ1ODAzLCA0NTgxOCwgNDU4MzMsIDQ1ODQ4LCA0NTg2MywgCi0gICAgNDU4NzgsIDQ1ODkzLCA0NTkwOCwgNDU5MjMsIDQ1OTM4LCA0NTk1MywgNDU5NjgsIDQ1OTgzLCA0NTk5OCwgNDYwMTMsIAotICAgIDQ2MDI4LCA0NjA0MywgNDYwNTgsIDQ2MDczLCA0NjA4OCwgNDYxMDMsIDQ2MTE4LCA0NjEzMywgNDYxNDgsIDQ2MTYzLCAKLSAgICA0NjE3OCwgNDYxOTMsIDQ2MjA4LCA0NjIyMywgNDYyMzgsIDQ2MjUzLCA0NjI2OCwgNDYyODMsIDQ2Mjk4LCA0NjMxMywgCi0gICAgNDYzMjgsIDQ2MzQzLCA0NjM1OCwgNDYzNzMsIDQ2Mzg4LCA0NjQwMywgNDY0MTgsIDQ2NDMzLCA0NjQ0OCwgNDY0NjMsIAotICAgIDQ2NDc4LCA0NjQ5MywgNDY1MDgsIDQ2NTIzLCA0NjUzOCwgNDY1NTMsIDQ2NTY4LCA0NjU4MywgNDY1OTgsIDQ2NjEzLCAKLSAgICA0NjYyOCwgNDY2NDMsIDQ2NjU4LCA0NjY3MywgNDY2ODgsIDQ2NzAzLCA0NjcxOCwgNDY3MzMsIDQ2NzQ4LCA0Njc2MywgCi0gICAgNDY3NzgsIDQ2NzkzLCA0NjgwOCwgNDY4MjMsIDQ2ODM4LCA0Njg1MywgNDY4NjgsIDQ2ODgzLCA0Njg5OSwgNDY5MTUsIAotICAgIDQ2OTMxLCA0Njk0NywgNDY5NjMsIDQ2OTc5LCA0Njk5NSwgNDcwMTEsIDQ3MDI3LCA0NzA0MywgNDcwNTksIDQ3MDc1LCAKLSAgICA0NzA5MSwgNDcxMDcsIDQ3MTIzLCA0NzEzOSwgNDcxNTUsIDQ3MTcxLCA0NzE4NywgNDcyMDMsIDQ3MjE5LCA0NzIzNSwgCi0gICAgNDcyNTEsIDQ3MjY3LCA0NzI4MywgNDcyOTksIDQ3MzE1LCA0NzMzMSwgNDczNDcsIDQ3MzYzLCA0NzM3OSwgNDczOTUsIAotICAgIDQ3NDExLCA0NzQyNywgNDc0NDMsIDQ3NDU5LCA0NzQ3NSwgNDc0OTEsIDQ3NTA3LCA0NzUyMywgNDc1MzksIDQ3NTU1LCAKLSAgICA0NzU3MSwgNDc1ODcsIDQ3NjAzLCA0NzYxOSwgNDc2MzUsIDQ3NjUxLCA0NzY2NywgNDc2ODMsIDQ3Njk5LCA0NzcxNSwgCi0gICAgNDc3MzEsIDQ3NzQ3LCA0Nzc2MywgNDc3NzksIDQ3Nzk1LCA0NzgxMSwgNDc4MjcsIDQ3ODQzLCA0Nzg1OSwgNDc4NzUsIAotICAgIDQ3ODkxLCA0NzkwNywgNDc5MjMsIDQ3OTM5LCA0Nzk1NSwgNDc5NzEsIDQ3OTg3LCA0ODAwMywgNDgwMTksIDQ4MDM1LCAKLSAgICA0ODA1MSwgNDgwNjcsIDQ4MDgzLCA0ODA5OSwgNDgxMTUsIDQ4MTMxLCA0ODE0NywgNDgxNjMsIDQ4MTc5LCA0ODE5NSwgCi0gICAgNDgyMTEsIDQ4MjI3LCA0ODI0MywgNDgyNTksIDQ4Mjc1LCA0ODI5MSwgNDgzMDcsIDQ4MzIzLCA0ODMzOSwgNDgzNTUsIAotICAgIDQ4MzcxLCA0ODM4NywgNDg0MDMsIDQ4NDE5LCA0ODQzNSwgNDg0NTEsIDQ4NDY3LCA0ODQ4MywgNDg0OTksIDQ4NTE1LCAKLSAgICA0ODUzMSwgNDg1NDcsIDQ4NTYzLCA0ODU3OSwgNDg1OTUsIDQ4NjExLCA0ODYyNywgNDg2NDMsIDQ4NjU5LCA0ODY3NSwgCi0gICAgNDg2OTEsIDQ4NzA3LCA0ODcyMywgNDg3MzksIDQ4NzU1LCA0ODc3MSwgNDg3ODcsIDQ4ODAzLCA0ODgxOSwgNDg4MzUsIAotICAgIDQ4ODUxLCA0ODg2NywgNDg4ODMsIDQ4ODk5LCA0ODkxNSwgNDg5MzEsIDQ4OTQ3LCA0ODk2MywgNDg5NzksIDQ4OTk1LCAKLSAgICA0OTAxMSwgNDkwMjcsIDQ5MDQzLCA0OTA1OSwgNDkwNzUsIDQ5MDkxLCA0OTEwNywgNDkxMjMsIDQ5MTM5LCA0OTE1NSwgCi0gICAgNDkxNzEsIDQ5MTg3LCA0OTIwMywgNDkyMTksIDQ5MjM1LCA0OTI1MSwgNDkyNjcsIDQ5MjgzLCA0OTI5OSwgNDkzMTUsIAotICAgIDQ5MzMxLCA0OTM0NywgNDkzNjMsIDQ5Mzc5LCA0OTM5NSwgNDk0MTEsIDQ5NDI3LCA0OTQ0MywgNDk0NTksIDQ5NDc1LCAKLSAgICA0OTQ5MSwgNDk1MDcsIDQ5NTIzLCA0OTUzOSwgNDk1NTUsIDQ5NTcxLCA0OTU4NywgNDk2MDMsIDQ5NjE5LCA0OTYzNSwgCi0gICAgNDk2NTEsIDQ5NjY3LCA0OTY4MywgNDk2OTksIDQ5NzE1LCA0OTczMSwgNDk3NDcsIDQ5NzYzLCA0OTc3OSwgNDk3OTUsIAotICAgIDQ5ODExLCA0OTgyNywgNDk4NDMsIDQ5ODU5LCA0OTg3NSwgNDk4OTEsIDQ5OTA3LCA0OTkyMywgNDk5MzksIDQ5OTU1LCAKLSAgICA0OTk3MSwgNDk5ODcsIDUwMDAzLCA1MDAxOSwgNTAwMzUsIDUwMDUxLCA1MDA2NywgNTAwODMsIDUwMDk5LCA1MDExNSwgCi0gICAgNTAxMzEsIDUwMTQ3LCA1MDE2MywgNTAxNzksIDUwMTk1LCA1MDIxMSwgNTAyMjcsIDUwMjQzLCA1MDI1OSwgNTAyNzUsIAotICAgIDUwMjkxLCA1MDMwNywgNTAzMjMsIDUwMzM5LCA1MDM1NSwgNTAzNzEsIDUwMzg3LCA1MDQwMywgNTA0MTksIDUwNDM1LCAKLSAgICA1MDQ1MSwgNTA0NjcsIDUwNDgzLCA1MDQ5OSwgNTA1MTUsIDUwNTMxLCA1MDU0NywgNTA1NjMsIDUwNTc5LCA1MDU5NSwgCi0gICAgNTA2MTEsIDUwNjI3LCA1MDY0MywgNTA2NTksIDUwNjc1LCA1MDY5MSwgNTA3MDcsIDUwNzIzLCA1MDczOSwgNTA3NTUsIAotICAgIDUwNzcxLCA1MDc4NywgNTA4MDMsIDUwODE5LCA1MDgzNSwgNTA4NTEsIDUwODY3LCA1MDg4MywgNTA4OTksIDUwOTE1LCAKLSAgICA1MDkzMSwgNTA5NDcsIDUwOTYzLCA1MDk3OSwgNTA5OTUsIDUxMDExLCA1MTAyNywgNTEwNDMsIDUxMDU5LCA1MTA3NSwgCi0gICAgNTEwOTEsIDUxMTA3LCA1MTEyMywgNTExMzksIDUxMTU1LCA1MTE3MSwgNTExODcsIDUxMjAzLCA1MTIxOSwgNTEyMzUsIAotICAgIDUxMjUxLCA1MTI2NywgNTEyODMsIDUxMjk5LCA1MTMxNSwgNTEzMzEsIDUxMzQ3LCA1MTM2MywgNTEzNzksIDUxMzk1LCAKLSAgICA1MTQxMSwgNTE0MjcsIDUxNDQzLCA1MTQ1OSwgNTE0NzUsIDUxNDkxLCA1MTUwNywgNTE1MjMsIDUxNTM5LCA1MTU1NSwgCi0gICAgNTE1NzEsIDUxNTg3LCA1MTYwMywgNTE2MTksIDUxNjM1LCA1MTY1MSwgNTE2NjcsIDUxNjgzLCA1MTY5OSwgNTE3MTUsIAotICAgIDUxNzMxLCA1MTc0NywgNTE3NjMsIDUxNzc5LCA1MTc5NSwgNTE4MTEsIDUxODI3LCA1MTg0MywgNTE4NTksIDUxODc1LCAKLSAgICA1MTg5MSwgNTE5MDcsIDUxOTIzLCA1MTkzOSwgNTE5NTUsIDUxOTcxLCA1MTk4NywgNTIwMDMsIDUyMDE5LCA1MjAzNSwgCi0gICAgNTIwNTEsIDUyMDY3LCA1MjA4MywgNTIwOTksIDUyMTE1LCA1MjEzMSwgNTIxNDcsIDUyMTYzLCA1MjE3OSwgNTIxOTUsIAotICAgIDUyMjExLCA1MjIyNywgNTIyNDMsIDUyMjU5LCA1MjI3NSwgNTIyOTEsIDUyMzA3LCA1MjMyMywgNTIzMzksIDUyMzU1LCAKLSAgICA1MjM3MSwgNTIzODcsIDUyNDAzLCA1MjQxOSwgNTI0MzUsIDUyNDUxLCA1MjQ2NywgNTI0ODMsIDUyNDk5LCA1MjUxNSwgCi0gICAgNTI1MzEsIDUyNTQ3LCA1MjU2MywgNTI1NzksIDUyNTk1LCA1MjYxMSwgNTI2MjcsIDUyNjQzLCA1MjY1OSwgNTI2NzUsIAotICAgIDUyNjkxLCA1MjcwNywgNTI3MjMsIDUyNzM5LCA1Mjc1NSwgNTI3NzEsIDUyNzg3LCA1MjgwMywgNTI4MTksIDUyODM1LCAKLSAgICA1Mjg1MSwgNTI4NjcsIDUyODgzLCA1Mjg5OSwgNTI5MTUsIDUyOTMxLCA1Mjk0NywgNTI5NjMsIDUyOTc5LCA1Mjk5NSwgCi0gICAgNTMwMTEsIDUzMDI3LCA1MzA0MywgNTMwNTksIDUzMDc1LCA1MzA5MSwgNTMxMDcsIDUzMTIzLCA1MzEzOSwgNTMxNTUsIAotICAgIDUzMTcxLCA1MzE4NywgNTMyMDMsIDUzMjE5LCA1MzIzNSwgNTMyNTEsIDUzMjY3LCA1MzI4MywgNTMyOTksIDUzMzE1LCAKLSAgICA1MzMzMSwgNTMzNDcsIDUzMzYzLCA1MzM3OSwgNTMzOTUsIDUzNDExLCA1MzQyNywgNTM0NDMsIDUzNDU5LCA1MzQ3NSwgCi0gICAgNTM0OTEsIDUzNTA3LCA1MzUyMywgNTM1MzksIDUzNTU1LCA1MzU3MSwgNTM1ODcsIDUzNjAzLCA1MzYxOSwgNTM2MzUsIAotICAgIDUzNjUxLCA1MzY2NywgNTM2ODMsIDUzNjk5LCA1MzcxNSwgNTM3MzEsIDUzNzQ3LCA1Mzc2MywgNTM3NzksIDUzNzk1LCAKLSAgICA1MzgxMSwgNTM4MjcsIDUzODQzLCA1Mzg1OSwgNTM4NzUsIDUzODkxLCA1MzkwNywgNTM5MjMsIDUzOTM5LCA1Mzk1NSwgCi0gICAgNTM5NzEsIDUzOTg3LCA1NDAwMywgNTQwMTksIDU0MDM1LCA1NDA1MSwgNTQwNjcsIDU0MDgzLCA1NDA5OSwgNTQxMTUsIAotICAgIDU0MTMxLCA1NDE0NywgNTQxNjMsIDU0MTc5LCA1NDE5NSwgNTQyMTEsIDU0MjI3LCA1NDI0MywgNTQyNTksIDU0Mjc1LCAKLSAgICA1NDI5MSwgNTQzMDcsIDU0MzIzLCA1NDMzOSwgNTQzNTUsIDU0MzcxLCA1NDM4NywgNTQ0MDMsIDU0NDE5LCA1NDQzNSwgCi0gICAgNTQ0NTEsIDU0NDY3LCA1NDQ4MywgNTQ0OTksIDU0NTE1LCA1NDUzMSwgNTQ1NDcsIDU0NTYzLCA1NDU3OSwgNTQ1OTUsIAotICAgIDU0NjExLCA1NDYyNywgNTQ2NDMsIDU0NjU5LCA1NDY3NSwgNTQ2OTEsIDU0NzA3LCA1NDcyMywgNTQ3MzksIDU0NzU1LCAKLSAgICA1NDc3MSwgNTQ3ODcsIDU0ODAzLCA1NDgxOSwgNTQ4MzUsIDU0ODUxLCA1NDg2NywgNTQ4ODMsIDU0ODk5LCA1NDkxNSwgCi0gICAgNTQ5MzEsIDU0OTQ3LCA1NDk2MywgNTQ5NzksIDU0OTk1LCA1NTAxMSwgNTUwMjcsIDU1MDQzLCA1NTA1OSwgNTUwNzUsIAotICAgIDU1MDkxLCA1NTEwNywgNTUxMjMsIDU1MTM5LCA1NTE1NSwgNTUxNzEsIDU1MTg3LCA1NTIwMywgNTUyMTksIDU1MjM1LCAKLSAgICA1NTI1MSwgNTUyNjcsIDU1MjgzLCA1NTI5OSwgNTUzMTUsIDU1MzMxLCA1NTM0NywgNTUzNjMsIDU1Mzc5LCA1NTM5NSwgCi0gICAgNTU0MTEsIDU1NDI3LCA1NTQ0MywgNTU0NTksIDU1NDc1LCA1NTQ5MSwgNTU1MDcsIDU1NTIzLCA1NTUzOSwgNTU1NTUsIAotICAgIDU1NTcwLCAxNDk2MywgNTU1NzksIDU1NTg1LCA1NTU5MSwgNTU2MDEsIDU1NjA5LCAxMzE0NCwgMTM2ODMsIDgzMTksIAotICAgIDU1NjIyLCAxNDgzLCA1NTYzMCwgMjUzODUsIDU2MzcsIDU1NjM2LCA1NTY0MSwgNTU2NDYsIDU1NjUxLCA1NTY1NiwgCi0gICAgNTU2NjIsIDU1NjY3LCA1NTY3MywgNTU2NzgsIDU1Njg0LCA1NTY4OSwgNTU2OTQsIDU1Njk5LCA1NTcwNCwgNTU3MTAsIAotICAgIDU1NzE1LCA1NTcyMCwgNTU3MjUsIDU1NzMwLCA1NTczNSwgNTU3NDAsIDU1NzQ1LCA1NTc1MSwgNTU3NTYsIDU1NzYyLCAKLSAgICA1NTc2OSwgMjUxNSwgNTU3NzQsIDU1NzgwLCA2OTQ4LCA1NTc4NCwgNTU3ODksIDU1Nzk2LCA1NTgwNCwgNDAsIDU1ODA4LCAKLSAgICA1NTgxNCwgNTU4MTksIDU1ODI0LCA1NTgyOCwgNTU4MzMsIDU1ODM3LCA1NTg0MSwgOTAzNywgNTU4NDUsIDU1ODU1LCAKLSAgICA1NTg2OCwgNTU4NzksIDU1ODkyLCA1NTg5OSwgNTU5MDUsIDU1OTEwLCA1NTkxNiwgNTU5MjIsIDU1OTI4LCA1NTkzMywgCi0gICAgNTU5MzgsIDU1OTQzLCA1NTk0OCwgNTU5NTIsIDU1OTU3LCA1NTk2MiwgNTU5NjcsIDU1OTczLCA1NTk3OSwgNTU5ODUsIAotICAgIDU1OTkwLCA1NTk5NCwgNTU5OTksIDU2MDA0LCA1NjAwOCwgNTYwMTMsIDU2MDE4LCA1NjAyMywgNTYwMjcsIDkwNTMsIAotICAgIDkwNjQsIDkwNjksIDE1MjYsIDU2MDMxLCAxNTMxLCA1NjAzNywgNTYwNDAsIDE1NjIsIDU2MDQ2LCAxNTY4LCAxNTc0LCAKLSAgICA5MDk5LCA1NjA1MSwgNTYwNTksIDU2MDY2LCA1NjA3MCwgNTYwNzYsIDU2MDgxLCAyODgyNCwgNTYwODYsIDU2MDkzLCAKLSAgICA1NjA5OCwgNTYxMDIsIDU2MTA2LCAxNTc5LCAxNDUzOCwgMTQ1NDksIDU2MTE1LCA1NjEyMiwgNTYxMjcsIDU2MTMxLCAKLSAgICAxNDU2OCwgMTU4MywgMzQ4OTcsIDU2MTM0LCA1NjEzOSwgNTYxNDksIDU2MTU4LCA1NjE2MywgNTYxNjcsIDU2MTczLCAKLSAgICAxNTg4LCAzNjcxOSwgNTYxNzgsIDU2MTg3LCA1NjE5MywgNTYxOTgsIDkyNDksIDkyNTUsIDU2MjA0LCA1NjIxNiwgNTYyMzMsIAotICAgIDU2MjUwLCA1NjI2NywgNTYyODQsIDU2MzAxLCA1NjMxOCwgNTYzMzUsIDU2MzUyLCA1NjM2OSwgNTYzODYsIDU2NDAzLCAKLSAgICA1NjQyMCwgNTY0MzcsIDU2NDU0LCA1NjQ3MSwgNTY0ODgsIDU2NTA1LCA1NjUyMiwgNTY1MzksIDU2NTU2LCA1NjU3MywgCi0gICAgNTY1OTAsIDU2NjA3LCA1NjYyNCwgNTY2NDEsIDU2NjU4LCA1NjY3NSwgNTY2OTIsIDU2NzA5LCA1NjcyNiwgNTY3NDMsIAotICAgIDU2NzYwLCA1Njc3NywgNTY3OTQsIDU2ODExLCA1NjgyOCwgNTY4NDUsIDU2ODYyLCA1Njg3OSwgNTY4OTYsIDU2OTEzLCAKLSAgICA1NjkzMCwgNTY5NDcsIDU2OTY0LCA1Njk4MSwgNTY5OTgsIDU3MDE1LCA1NzAzMiwgNTcwNDksIDU3MDYwLCA1NzA2NSwgCi0gICAgMTU5MywgNTcwNjksIDU3MDc1LCA1NzA4MCwgNzY5MywgMTU5OCwgNTcwODUsIDU3MDk0LCAyNTY2NCwgNTcwOTksIDU3MTEwLCAKLSAgICA1NzEyMCwgNTcxMjUsIDU3MTMyLCA1NzEzOCwgNTcxNDMsIDU3MTQ4LCAxNDgyMCwgNTcxNTIsIDkyNjYsIDE2MDMsIDkyNzEsIAotICAgIDU3MTU4LCA1NzE2MywgNTcxNjksIDU3MTc0LCA1NzE3OSwgNTcxODQsIDU3MTg5LCA1NzE5NCwgNTcxOTksIDU3MjA0LCAKLSAgICA1NzIxMCwgNTcyMTYsIDU3MjIyLCA1NzIyNywgNTcyMzEsIDU3MjM2LCA1NzI0MSwgNTcyNDUsIDU3MjUwLCA1NzI1NSwgCi0gICAgNTcyNjAsIDU3MjY0LCA1NzI2OSwgNTcyNzUsIDU3MjgwLCA1NzI4NSwgNTcyODksIDU3Mjk0LCA1NzI5OSwgNTczMDUsIAotICAgIDU3MzEwLCA1NzMxNSwgNTczMjEsIDU3MzI3LCA1NzMzMiwgNTczMzYsIDU3MzQxLCA1NzM0NiwgNTczNTEsIDU3MzU1LCAKLSAgICA1NzM2MCwgNTczNjUsIDU3MzcwLCA1NzM3NiwgNTczODIsIDU3Mzg3LCA1NzM5MSwgNTczOTUsIDU3NDAwLCA1NzQwNSwgCi0gICAgNTc0MTAsIDI3MDI0LCA1NzQxNCwgNTc0MTksIDU3NDI0LCA1NzQzMCwgNTc0MzUsIDU3NDQwLCA1NzQ0NCwgNTc0NDksIAotICAgIDU3NDU0LCA1NzQ2MCwgNTc0NjUsIDU3NDcwLCA1NzQ3NiwgNTc0ODIsIDU3NDg3LCA1NzQ5MSwgNTc0OTYsIDU3NTAxLCAKLSAgICA1NzUwNSwgNTc1MTAsIDU3NTE1LCA1NzUyMCwgNTc1MjYsIDU3NTMyLCA1NzUzNywgNTc1NDEsIDU3NTQ2LCA1NzU1MSwgCi0gICAgNTc1NTUsIDU3NTYwLCA1NzU2NSwgNTc1NzAsIDU3NTc0LCA1NzU3NywgMjkzOTUsIDU3NTgyLCA1NzU5MCwgMTQ4ODYsIAotICAgIDE0OTEwLCA5MzYyLCA1NzU5NiwgNTc2MDYsIDU3NjIxLCA5MzY3LCA1NzYzMiwgNTc2MzcsIDU3NjQ4LCA1NzY2MCwgCi0gICAgNTc2NzIsIDU3Njg0LCAyNjQ5LCA1NzY5NiwgNTc3MDEsIDU3NzA1LCA1NzcxMSwgNTc3MTcsIDU3NzIyLCAxNjE1LCAxMDEwLCAKLSAgICA1NzczMSwgNTc3MzYsIDM2NzU4LCA1Nzc0MCwgNTc3NDQsIDU3NzQ5LCA1Nzc1MywgMTQ5NzEsIDU3NzU4LCA1Nzc2MSwgCi0gICAgNTc3NjksIDU3Nzc3LCAxNjE5LCA5MzkyLCA5Mzk4LCAxNjI0LCA1Nzc4NSwgNTc3OTIsIDU3Nzk3LCA1NzgwNiwgNTc4MTYsIAotICAgIDU3ODIzLCA1NzgyOCwgMTYyOSwgNTc4MzUsIDU3ODQwLCAxNTA4NiwgNTc4NDQsIDU3ODQ5LCA1Nzg1NiwgNTc4NjIsIAotICAgIDU3ODY2LCA1Nzg3NywgNTc4ODcsIDE1MTA4LCA3NjE2LCA3NjIzLCAxNjM0LCA1Nzg5NCwgNTc5MDAsIDU3OTA4LCA1NzkxNSwgCi0gICAgNTc5MjEsIDU3OTI4LCA1Nzk0MCwgNTc5NDYsIDU3OTUxLCA1Nzk2MywgNTc5NzQsIDU3OTgzLCA1Nzk5MywgMzY2OCwgCi0gICAgMjg2NjAsIDI4NjY5LCAxNTE0OCwgMTYzOSwgMTY0MywgNTgwMDEsIDU4MDEyLCA1ODAxNywgMTY0NiwgNTgwMjUsIDU4MDMwLCAKLSAgICA1ODA0MiwgNTgwNDgsIDU4MDUzLCA1ODA2MSwgMTY1MSwgNTgwNjYsIDU4MDcxLCA1ODA3OSwgNTgwODcsIDU4MDk0LCAKLSAgICA1ODEwMywgNTgxMTEsIDU4MTIwLCAxNjU2LCA1ODEyNCwgMTY2MSwgNTgxMjksIDU4MTM2LCAxNTI2OCwgNTgxNDQsIAotICAgIDU4MTUwLCA1ODE1NSwgNTgxNjMsIDU4MTcwLCA1ODE3OCwgMjA2NTgsIDU4MTgzLCA5NTI3LCA1ODE5MiwgNTgxOTgsIAotICAgIDU4MjA1LCA1ODIxMiwgNTgyMTgsIDU4MjI4LCA1ODIzNCwgNTgyMzksIDU4MjQ0LCA1ODI1MiwgOTUzNiwgOTU0MSwgCi0gICAgNTgyNjAsIDU4MjY2LCA1ODI3NCwgMzczMywgMzY4NDYsIDU4Mjc5LCA1ODI4NSwgNTgyOTAsIDU4Mjk4LCA1ODMwNSwgCi0gICAgMTAzNTYsIDU4MzEwLCA1ODMxNiwgMTY3MiwgNTgzMjEsIDU4MzI0LCAxMDU4LCA1ODMzMCwgNTgzMzUsIDU4MzQwLCAKLSAgICA1ODM0NiwgNTgzNTEsIDU4MzU2LCA1ODM2MSwgNTgzNjYsIDU4MzcxLCA1ODM3NiwgMTY4MSwgOSwgNTgzODIsIDU4Mzg2LCAKLSAgICA1ODM5MSwgNTgzOTUsIDU4Mzk5LCA1ODQwMywgMjk2NDMsIDU4NDA4LCA1ODQxMywgNTg0MTgsIDU4NDIyLCA1ODQyNSwgCi0gICAgNTg0MjksIDU4NDMzLCA1ODQzOCwgNTg0NDIsIDU4NDQ3LCA1ODQ1MSwgMzIzMTUsIDMyMzIwLCAzMjMyNSwgNTg0NTQsIAotICAgIDU4NDYxLCA1ODQ2NywgMzY1ODUsIDU4NDc3LCAzMjMzMSwgMjk4OTEsIDI5NjUzLCAyOTY1OSwgMzIzNDcsIDI5NjY1LCAKLSAgICA1ODQ4MiwgNTg0ODcsIDI5OTI0LCA1ODQ5MSwgNTg0OTQsIDU4NDk4LCA1ODUwNSwgNTg1MDgsIDU4NTEzLCA1ODUxNywgCi0gICAgNTg1MjEsIDU4NTI0LCA1ODUzNCwgNTg1NDYsIDU4NTUzLCAzMTI4MiwgNTg1NTYsIDEzOTM2LCA4MjEsIDU4NTU5LCAKLSAgICA1ODU2MywgNTg1NjgsIDU4NTcyLCA1ODU3NSwgMTE5NDQsIDU4NTgyLCA1ODU4OSwgNTg2MDIsIDU4NjEwLCA1ODYxOSwgCi0gICAgNTg2MjQsIDU4NjM0LCA1ODY0NywgNTg2NTksIDU4NjY2LCA1ODY3MSwgNTg2ODAsIDU4NjkzLCAzMzczMiwgNTg3MTEsIAotICAgIDU4NzE2LCA1ODcyMywgNTg3MjksIDU4NzM0LCA1ODc0MiwgNTg3NDksIDI1MjI0LCA2MTMsIDU4NzU1LCA1ODc2MSwgCi0gICAgNTg3NzEsIDU4Nzc3LCA1ODc4MiwgMjk2ODMsIDQ0ODEsIDI5Njk3LCA1ODc4NiwgNTg3OTYsIDU4ODAxLCA1ODgxMSwgCi0gICAgNTg4MjYsIDU4ODMyLCA1ODgzOCwgMjk3MDcsIDU4ODQzLCAyODg1NiwgNTg4NDcsIDU4ODUyLCA1ODg1NywgNTg4NjEsIAotICAgIDU4ODY2LCAxNTE1MSwgNTg4NzMsIDU4ODc4LCA1ODg4MiwgNDUyMiwgMjk3MzMsIDU4ODg2LCA1ODg5MiwgMzI3LCA1ODkwMiwgCi0gICAgNTg5MDksIDU4OTE2LCA1ODkyMSwgNTg5MzAsIDU2MTQzLCA1ODkzNiwgNTg5NDQsIDU4OTQ4LCA1ODk1MiwgNTg5NTYsIAotICAgIDU4OTYwLCA1ODk2NSwgNTg5NjksIDU4OTc1LCA1ODk4MywgNTg5ODgsIDU4OTkzLCA1ODk5NywgNTkwMDIsIDU5MDA2LCAKLSAgICA1OTAxMCwgNTkwMTYsIDU5MDIyLCA1OTAyNywgNTkwMzEsIDI5ODU3LCA1OTAzNiwgMjk4NjMsIDI5ODY5LCA1OTA0MSwgCi0gICAgNTkwNDcsIDU5MDU0LCA1OTA1OSwgNTkwNjMsIDI4ODczLCAxNDgxMywgNTkwNjYsIDU5MDcwLCA1OTA3NSwgNTkwODIsIAotICAgIDU5MDg4LCA1OTA5MiwgNTkwOTcsIDM2Mjk1LCA1OTEwMywgNTkxMDcsIDU5MTExLCA1OTExNiwgNTkxMjIsIDU5MTI4LCAKLSAgICA1OTE0MCwgNTkxNDksIDU5MTU5LCA1OTE2NSwgNTkxNzIsIDU5MTc3LCA1OTE4MiwgNTkxODYsIDU5MTg5LCA1OTE5NSwgCi0gICAgNTkyMDIsIDU5MjA3LCA1OTIxMiwgNTkyMTksIDU5MjI2LCA1OTIzMiwgNTkyMzcsIDU5MjQyLCA1OTI1MCwgNTkyNTUsIAotICAgIDIzNzcsIDU5MjU5LCA1OTI2NCwgNTkyNzAsIDU5Mjc1LCA1OTI4MSwgNTkyODYsIDU5MjkxLCA1OTI5NiwgNTkzMDIsIAotICAgIDI5ODkwLCA1OTMwNywgNTkzMTMsIDU5MzE5LCA1OTMyNSwgMjk5NTQsIDU5MzMwLCA1OTMzNSwgNTkzNDAsIDI5OTY1LCAKLSAgICA1OTM0NSwgNTkzNTAsIDU5MzU1LCA1OTM2MSwgNTkzNjcsIDI5OTcwLCA1OTM3MiwgNTkzNzcsIDU5MzgyLCAzMDAyNSwgCi0gICAgMzAwMzEsIDU5Mzg3LCA1OTM5MiwgMzAwMzYsIDU5Mzk3LCAyNTg5MSwgMzAwNTgsIDMwMDYyLCA1OTQwMiwgNTkzNzgsIAotICAgIDU5NDA2LCA1OTQxNCwgNTk0MjAsIDU5NDI4LCA1OTQzNSwgNTk0NDEsIDU5NDUxLCA1OTQ1NywgNTk0NjQsIDg5ODQsIAotICAgIDMwMDc2LCA1OTQ3MCwgNTk0ODMsIDU5NDkyLCA1OTQ5OCwgNTk1MDcsIDU5NTEzLCAyMTU3NSwgNTk1MjAsIDU5NTI3LCAKLSAgICA1OTUzNywgMzAwMjYsIDU5NTQwLCA1OTU0NywgNTk1NTIsIDU5NTU2LCA1OTU2MCwgNTk1NjUsIDQ1OTgsIDU5NTY5LCAKLSAgICA1OTU3NCwgNTk1NzksIDMyNDA5LCAzMjQxNCwgNTk1ODMsIDMyNDI4LCA1OTU4OCwgMzI0MzMsIDU5NTkzLCA1OTU5OSwgCi0gICAgMzI0NDUsIDMyNDUxLCAzMjQ1NywgNTk2MDQsIDU5NjEwLCAyMDYxOSwgNTk2MjEsIDU5NjI0LCA1OTYzNiwgNTk2NDQsIAotICAgIDMwMDk0LCA1OTY0OCwgNTk2NTcsIDU5NjY3LCA1OTY3NiwgMzAwOTksIDU5NjgxLCA1OTY4OCwgNTk2OTcsIDU5NzAzLCAKLSAgICA1OTcxMSwgNTk3MTgsIDQ1NzMsIDQzMTAsIDU5NzIzLCAzMDAzNywgNTk3MjksIDU5NzMyLCA1OTczOCwgNTk3NDUsIAotICAgIDU5NzUwLCA1OTc1NSwgMjE1MDIsIDU5NzU5LCA1OTc2NSwgNTk3NzEsIDU5Nzc2LCA1OTc4MSwgNTk3ODUsIDU5NzkxLCAKLSAgICA1OTc5NywgMzExOTYsIDgyNiwgMzM0MDYsIDM0MzA0LCAzNDMxMCwgNTk4MDIsIDU5ODA2LCA1OTgxMCwgNTk4MTMsIAotICAgIDU5ODI2LCA1OTgzMiwgNTk4MzYsIDU5ODM5LCA1OTg0NCwgMzE0OTUsIDU5ODQ4LCAyODg3OCwgMTk0NDYsIDU5ODU0LCAKLSAgICA0NTAyLCA0NTEwLCA3NDcyLCA1OTg1NywgNTk4NjIsIDU5ODY3LCA1OTg3MiwgNTk4NzcsIDU5ODgyLCA1OTg4NywgNTk4OTIsIAotICAgIDU5ODk3LCA1OTkwMiwgNTk5MDgsIDU5OTEzLCA1OTkxOCwgNTk5MjQsIDU5OTI5LCA1OTkzNCwgNTk5MzksIDU5OTQ0LCAKLSAgICA1OTk0OSwgNTk5NTQsIDU5OTYwLCA1OTk2NSwgNTk5NzEsIDU5OTc2LCA1OTk4MSwgNTk5ODYsIDU5OTkxLCA1OTk5NiwgCi0gICAgNjAwMDEsIDYwMDA2LCA2MDAxMSwgNjAwMTYsIDYwMDIxLCA2MDAyNywgNjAwMzIsIDYwMDM3LCA2MDA0MiwgNjAwNDcsIAotICAgIDYwMDUyLCA2MDA1NywgNjAwNjMsIDYwMDY4LCA2MDA3MywgNjAwNzgsIDYwMDgzLCA2MDA4OCwgNjAwOTMsIDYwMDk4LCAKLSAgICA2MDEwMywgNjAxMDgsIDYwMTE0LCA2MDExOSwgNjAxMjQsIDYwMTI5LCA2MDEzNCwgNjAxNDAsIDYwMTQ2LCA2MDE1MSwgCi0gICAgNjAxNTcsIDYwMTYyLCA2MDE2NywgNjAxNzIsIDYwMTc3LCA2MDE4MiwgMTQ3NiwgMjQwLCA2MDE4NywgNjAxOTEsIDYwMTk1LCAKLSAgICA2MDE5OSwgMjMxNTcsIDYwMjAzLCA2MDIwNywgNjAyMTIsIDYwMjE2LCA2MDIyMSwgNjAyMjUsIDYwMjI5LCA2MDIzMywgCi0gICAgNjAyMzgsIDYwMjQyLCAxMTY4MSwgNjAyNDcsIDYwMjUxLCA2MDI1OCwgMTM0NDQsIDYwMjY3LCA2MDI3NiwgNjAyODAsIAotICAgIDYwMjg1LCA2MDI5MCwgNjAyOTQsIDIyOTYwLCAyOTU3LCA2MDI5OCwgNjAzMDQsIDYwMzEzLCA2MDMyMSwgNjAzMjcsIAotICAgIDYwMzM5LCA2MDM1MSwgNjAzNTUsIDYwMzYwLCA2MDM2NCwgNjAzNzAsIDYwMzc2LCA2MDM4MSwgNjAzOTEsIDYwNDAxLCAKLSAgICA2MDQwNywgNjA0MTIsIDYwNDE2LCA2MDQyMSwgNjA0MjcsIDYwNDM2LCA2MDQ0NSwgNjA0NTMsIDEzNzk4LCA2MDQ1NywgCi0gICAgNjA0NjYsIDYwNDc0LCA2MDQ4NiwgNjA0OTcsIDYwNTA4LCA2MDUxNywgNjA1MjEsIDYwNTMwLCA2MDU0MCwgNjA1NDYsIAotICAgIDYwNTUxLCA2MDU1NywgNjA1NjIsIDk4LCAyODc3MiwgNjA1NzMsIDI0MjI4LCAyNDIzOCwgNjA1NzksIDYwNTg2LCA2MDU5MiwgCi0gICAgNjA1OTYsIDYwNjA2LCA2MDYxNywgNjA2MjUsIDYwNjM0LCA2MDYzOSwgNjA2NDQsIDYwNjQ4LCAxNTUwNCwgNjA2NTYsIAotICAgIDYwNjYwLCA2MDY2NiwgNjA2NzYsIDYwNjgzLCA2MDY4OSwgMzI1MDgsIDExNjIsIDYwNjk1LCA2MDY5OCwgNjA3MDIsIAotICAgIDYwNzEyLCA2MDcxOCwgNjA3MjUsIDExNjE4LCA2MDczMiwgNjA3MzgsIDYwNzQ3LCA2MDc1NiwgNjA3NjIsIDYwNzY4LCAKLSAgICA2MDc3NCwgNjA3NzksIDYwNzg2LCA2MDc5MywgNjA3OTksIDYwODEyLCA2MDgyMSwgNjA4MzAsIDYwODM1LCA2MDgzOSwgCi0gICAgNjA4NDUsIDYwODUyLCA2MDg1OSwgNjA4NjYsIDYwODczLCA2MDg4MCwgNjA4ODUsIDYwODg5LCA2MDg5MywgNjA4OTYsIAotICAgIDYwOTA2LCA2MDkxMCwgNjA5MjIsIDYwOTMxLCA2MDkzNSwgNjA5NDAsIDYwOTQ0LCA2MDk1MCwgNjA5NTUsIDYwOTYyLCAKLSAgICA2MDk3MSwgNjA5NzksIDYwOTg3LCA2MDk5MiwgNjA5OTYsIDYxMDAxLCA2MTAwNiwgNjEwMTYsIDYxMDI0LCA2MTAyOSwgCi0gICAgNjEwMzMsIDYxMDM3LCA2MTA0MywgNjEwNTUsIDYxMDYzLCA2MTA3MywgNjEwODAsIDYxMDg2LCA2MTA5MSwgNjEwOTUsIAotICAgIDYxMDk5LCA2MTEwMywgNjExMTIsIDYxMTIxLCA2MTEzMCwgNjExMzYsIDYxMTQyLCA2MTE0OCwgNjExNTMsIDYxMTYwLCAKLSAgICA2MTE2NiwgNjExNzQsIDYxMTgxLCAxMDc3MiwgNjExODcsIDYxMTkzLCA2MTE5NywgMTI1MjMsIDYxMjAxLCA2MTIwNiwgCi0gICAgNjEyMTYsIDYxMjI1LCA2MTIzMSwgNjEyMzcsIDYxMjQ1LCA2MTI1MiwgNjEyNTYsIDYxMjYwLCA2MTI2NiwgNjEyNzQsIAotICAgIDYxMjgxLCA2MTI4NywgNjEyOTgsIDYxMzAyLCA2MTMwNiwgNjEzMTAsIDYxMzEzLCA2MTMxOSwgNjEzMjQsIDYxMzI4LCAKLSAgICA2MTMzMiwgNjEzNDEsIDYxMzQ5LCA2MTM1NiwgNjEzNjIsIDYxMzY5LCAyMjA4NywgMzYzMzcsIDYxMzc0LCA2MTM4MiwgCi0gICAgNjEzODYsIDYxMzg5LCA2MTM5NywgNjE0MDQsIDYxNDEwLCA2MTQxOSwgNjE0MjcsIDYxNDMzLCA2MTQzOCwgNjE0NDIsIAotICAgIDYxNDQ3LCA2MTQ1MSwgNjE0NTUsIDYxNDYwLCA2MTQ2OSwgNjE0NzMsIDYxNDgwLCA2MTQ4NywgNjE0OTMsIDYxNTAxLCAKLSAgICA2MTUwNywgNjE1MTgsIDYxNTI2LCA2MTUzMiwgMjA3NTMsIDYxNTQxLCA2MTU0OCwgNjE1NTUsIDYxNTYyLCA2MTU2OSwgCi0gICAgNjE1NzYsIDM5Mjg4LCAxMTQ1NiwgNjE1ODMsIDYxNTkwLCA2MTU5NSwgMzI1NDQsIDM3NDg0LCA2MTYwMSwgNjE2MDYsIAotICAgIDYxNjExLCA2MTYxNywgNjE2MjMsIDYxNjI5LCA2MTYzNCwgNjE2MzksIDYxNjQ0LCA2MTY0OSwgNjE2NTUsIDYxNjYwLCAKLSAgICA2MTY2NiwgNjE2NzEsIDYxNjc3LCA2MTY4MiwgNjE2ODcsIDYxNjkyLCA2MTY5NywgNjE3MDIsIDYxNzA3LCA2MTcxMiwgCi0gICAgNjE3MTgsIDYxNzIzLCA2MTcyOSwgNjE3MzQsIDYxNzM5LCA2MTc0NCwgNjE3NDksIDYxNzU0LCA2MTc1OSwgNjE3NjUsIAotICAgIDYxNzcwLCA2MTc3NSwgNjE3ODAsIDYxNzg1LCA2MTc5MCwgNjE3OTUsIDYxODAwLCA2MTgwNSwgNjE4MTAsIDYxODE1LCAKLSAgICA2MTgyMSwgNjE4MjYsIDYxODMxLCA2MTgzNiwgNjE4NDEsIDYxODQ2LCA2MTg1MSwgNjE4NTYsIDYxODYxLCA2MTg2NywgCi0gICAgNjE4NzIsIDYxODc3LCA2MTg4MiwgNjE4ODcsIDYxODkyLCA2MTg5NywgNjE5MDIsIDYxOTA3LCA2MTkxMiwgNjE5MTcsIAotICAgIDYxOTIyLCA2MTkyNywgNjE5MzMsIDE3OTcsIDIyNCwgMzQ5OTMsIDYxOTM4LCA2MTk0MSwgNjE5NDYsIDYxOTUwLCA2MTk1MywgCi0gICAgNjE5NTgsIDYwOTgzLCA2MTk2OSwgNjE5NzksIDYxOTg2LCA2MjAwMiwgNjIwMTEsIDYyMDIxLCA2MjAzMSwgNjIwMzksIAotICAgIDYyMDQ3LCA2MjA1MSwgNjIwNTQsIDYyMDYxLCA2MjA2NywgNjIwNzgsIDYyMDkwLCA2MjEwMSwgNjIxMTAsIDYyMTE3LCAKLSAgICAxMjg2LCAyMTM5MSwgNjIxMjcsIDI1NDQsIDYyMTMxLCA2MjE0MCwgMTEyNywgMTU0NzcsIDM1NjIyLCA2MjE0OCwgNjIxNTYsIAotICAgIDYyMTcwLCA2MjE4MywgNjIxODcsIDYyMTkyLCA2MjE5NywgNjIyMDIsIDYyMjA4LCA2MjIxNCwgNjIyMTksIDY5NTcsIAotICAgIDYyMjI0LCA2MjIzMiwgOTM5MywgNjIyMzcsIDYyMjQzLCAxNjg0LCA5NDA1LCA3MjMsIDYyMjUyLCA2MjI2MSwgNjIyNzEsIAotICAgIDI0OTkyLCA2MjI4MCwgNjIyODYsIDE1MDYzLCA2MjI5MiwgNjIyOTYsIDM4ODEsIDk3MzYsIDYyMzAyLCA1ODAwNywgCi0gICAgNjIzMDksIDM5MDUsIDE4NCwgMTI0NDQsIDYyMzE1LCA2MjMyNywgNjIzMzEsIDYyMzM3LCAyNTY4NCwgNjIzNDEsIDk3MjQsIAotICAgIDI2ODQsIDQsIDYyMzQ2LCA2MjM1NiwgNjIzNjIsIDYyMzczLCA2MjM4MCwgNjIzODYsIDYyMzkyLCA2MjQwMCwgNjI0MDcsIAotICAgIDYyNDEzLCA2MjQyMywgNjI0MzMsIDYyNDQzLCAxMjk4LCA2MjQ1MiwgNjI0NTgsIDI3MDcsIDI3MTMsIDY5NTQsIDIyMTgsIAotICAgIDYyNDYyLCA2MjQ2NiwgNjI0NzUsIDYyNDgzLCA2MjQ5NCwgNjI1MDIsIDYyNTEwLCA2MjUxNiwgNjI1MjEsIDYyNTMyLCAKLSAgICA2MjU0MywgNjI1NTEsIDYyNTU3LCA4MDYxLCA2MjU2MiwgNjI1NzAsIDYyNTc0LCA2MjU3OCwgNjI1OTAsIDI2MDYwLCAKLSAgICA2MjU5NywgNjI2MDcsIDYyNjEzLCA2MjYxOSwgODE2MywgNjI2MjksIDYyNjQwLCA2MjY1MCwgNjI2NTksIDYyNjYzLCAKLSAgICA2MjY3MCwgMTEyOSwgMjUzNywgNjI2ODAsIDYyNjg1LCA2MjY5MywgNjI3MDEsIDYyNzEyLCA2MjcxOSwgNjI3MzMsIAotICAgIDEyMzY5LCAzNzksIDYyNzQzLCA2Mjc0NywgNjI3NTYsIDYyNzY0LCA2Mjc3MCwgNjI3ODQsIDYyNzkxLCA2Mjc5NywgCi0gICAgNjI4MDYsIDYyODEzLCA2MjgyMywgNjI4MzEsIDM3NDAsIDE4OSwgNjI4MzksIDYyODUwLCA2Mjg1NCwgNjI4NjYsIDI1ODgyLCAKLSAgICAxNTYsIDYyODcyLCA2Mjg3NywgNjI4ODEsIDYyODg4LCA2Mjg5NCwgNjI5MDIsIDYyOTA5LCA3MjI2LCA2MjkxNiwgNjI5MjUsIAotICAgIDYyOTMzLCAzODA2LCA2Mjk0NiwgMTUxMDksIDYyOTUwLCAyNzUyLCA0MjgsIDYyOTU1LCA2Mjk2OCwgNjI5NzMsIDE3OTYsIAotICAgIDY0NywgNjI5NzcsIDM4MTIsIDYyOTg1LCA2Mjk5MSwgOTYzLCA2MzAwMSwgNjMwMTAsIDYzMDE1LCAxMzE3OCwgMTMxODUsIAotICAgIDQyNjIwLCA2MzAxOSwgMzc1MCwgMTEzNTAsIDYzMDI3LCA2MzAzNCwgMjE2MTgsIDYzMDM4LCA2MzA0NSwgNjMwNTEsIAotICAgIDYzMDU2LCA2MzA2MSwgMTMxOTgsIDM1NCwgNjMwNjYsIDYzMDc4LCA2MzA4NCwgNjMwOTIsIDI3NjQsIDE3MTYsIDYzMTAwLCAKLSAgICA2MzEwMiwgNjMxMDcsIDYzMTEyLCA2MzExNywgNjMxMjMsIDYzMTI4LCA2MzEzMywgNjMxMzgsIDYzMTQzLCA2MzE0OCwgCi0gICAgNjMxNTMsIDYzMTU5LCA2MzE2NCwgNjMxNjksIDYzMTc0LCA2MzE3OSwgNjMxODQsIDYzMTg5LCA2MzE5NCwgNjMxOTksIAotICAgIDYzMjA1LCA2MzIxMCwgNjMyMTUsIDYzMjIwLCA2MzIyNiwgNjMyMzEsIDYzMjM3LCA2MzI0MiwgNjMyNDcsIDYzMjUyLCAKLSAgICA2MzI1NywgNjMyNjIsIDYzMjY3LCA2MzI3MiwgNjMyNzgsIDYzMjgzLCA2MzI4OSwgNjMyOTQsIDYzMjk5LCA2MzMwNCwgCi0gICAgNjMzMDksIDYzMzE0LCA2MzMxOSwgNjMzMjQsIDYzMzI5LCA2MzMzNSwgNjMzNDAsIDYzMzQ1LCA2MzM0OSwgNjMzNTMsIAotICAgIDYzMzU4LCA2MzM2MiwgNjMzNjcsIDYzMzcyLCA2MzM3OCwgNjMzODMsIDYzMzg3LCA2MzM5MiwgNjMzOTYsIDYzMzk5LCAKLSAgICA2MzQwMSwgNjM0MDUsIDYzNDA4LCA2MzQxMywgNjM0MTcsIDYzNDIxLCA2MzQyNSwgNjM0MjksIDYzNDM4LCA2MzQ0MiwgCi0gICAgMzAyODgsIDYzNDQ1LCAzMDI5MywgNjM0NTIsIDYzNDU3LCAzMDI5OCwgNjM0NjYsIDYzNDc1LCAzMDMwNCwgNjM0ODAsIAotICAgIDMwMzA5LCA2MzQ4OSwgNjM0OTQsIDk5MTQsIDYzNDk4LCA2MzUwMywgNjM1MDgsIDMwMzE0LCA2MzUxMiwgMzc2NTAsIAotICAgIDYzNTE2LCA2MzUxOSwgNjM1MjMsIDY2MzgsIDYzNTI5LCA2MzUzNCwgNjM1MzgsIDM2MzMsIDMwMzE5LCA2MzU0MSwgCi0gICAgNjM1NDUsIDYzNTQ4LCA2MzU1MywgNjM1NTcsIDYzNTYzLCA2MzU3MSwgNjM1ODQsIDYzNTkzLCA2MzU5OSwgNjM2MDQsIAotICAgIDYzNjEwLCA2MzYxNCwgNjM2MjAsIDYzNjI4LCA2MzYzMywgNjM2NDAsIDYzNjQ2LCA2MzY1NCwgNjM2NjMsIDYzNjcxLCAKLSAgICAzMDMyMiwgNjM2NzgsIDYzNjg4LCA2MzY5NywgNjM3MTAsIDYzNzE1LCA2MzcyMCwgNjM3MjksIDYzNzM1LCA2Mzc0MiwgCi0gICAgNjM3NTMsIDYzNzY1LCA2Mzc3MiwgNjM3ODEsIDYzNzkwLCA2Mzc5OSwgNjM4MDYsIDYzODEyLCA2MzgxOSwgNjM4MjcsIAotICAgIDYzODM0LCA2Mzg0MiwgNjM4NTEsIDYzODU5LCA2Mzg2NiwgNjM4NzQsIDYzODgzLCA2Mzg5MSwgNjM5MDAsIDYzOTEwLCAKLSAgICA2MzkxOSwgNjM5MjcsIDYzOTM0LCA2Mzk0MiwgNjM5NTEsIDYzOTU5LCA2Mzk2OCwgNjM5NzgsIDYzOTg3LCA2Mzk5NSwgCi0gICAgNjQwMDQsIDY0MDE0LCA2NDAyMywgNjQwMzMsIDY0MDQ0LCA2NDA1NCwgNjQwNjMsIDY0MDcxLCA2NDA3OCwgNjQwODYsIAotICAgIDY0MDk1LCA2NDEwMywgNjQxMTIsIDY0MTIyLCA2NDEzMSwgNjQxMzksIDY0MTQ4LCA2NDE1OCwgNjQxNjcsIDY0MTc3LCAKLSAgICA2NDE4OCwgNjQxOTgsIDY0MjA3LCA2NDIxNSwgNjQyMjQsIDY0MjM0LCA2NDI0MywgNjQyNTMsIDY0MjY0LCA2NDI3NCwgCi0gICAgNjQyODMsIDY0MjkzLCA2NDMwNCwgNjQzMTQsIDY0MzI1LCA2NDMzNywgNjQzNDgsIDY0MzU4LCA2NDM2NywgNjQzNzUsIAotICAgIDY0MzgyLCA2NDM5MCwgNjQzOTksIDY0NDA3LCA2NDQxNiwgNjQ0MjYsIDY0NDM1LCA2NDQ0MywgNjQ0NTIsIDY0NDYyLCAKLSAgICA2NDQ3MSwgNjQ0ODEsIDY0NDkyLCA2NDUwMiwgNjQ1MTEsIDY0NTE5LCA2NDUyOCwgNjQ1MzgsIDY0NTQ3LCA2NDU1NywgCi0gICAgNjQ1NjgsIDY0NTc4LCA2NDU4NywgNjQ1OTcsIDY0NjA4LCA2NDYxOCwgNjQ2MjksIDY0NjQxLCA2NDY1MiwgNjQ2NjIsIAotICAgIDY0NjcxLCA2NDY3OSwgNjQ2ODgsIDY0Njk4LCA2NDcwNywgNjQ3MTcsIDY0NzI4LCA2NDczOCwgNjQ3NDcsIDY0NzU3LCAKLSAgICA2NDc2OCwgNjQ3NzgsIDY0Nzg5LCA2NDgwMSwgNjQ4MTIsIDY0ODIyLCA2NDgzMSwgNjQ4NDEsIDY0ODUyLCA2NDg2MiwgCi0gICAgNjQ4NzMsIDY0ODg1LCA2NDg5NiwgNjQ5MDYsIDY0OTE3LCA2NDkyOSwgNjQ5NDAsIDY0OTUyLCA2NDk2NSwgNjQ5NzcsIAotICAgIDY0OTg4LCA2NDk5OCwgNjUwMDcsIDY1MDE1LCA2NTAyMiwgNjUwMzAsIDY1MDM5LCA2NTA0NywgNjUwNTYsIDY1MDY2LCAKLSAgICA2NTA3NSwgNjUwODMsIDY1MDkyLCA2NTEwMiwgNjUxMTEsIDY1MTIxLCA2NTEzMiwgNjUxNDIsIDY1MTUxLCA2NTE1OSwgCi0gICAgNjUxNjgsIDY1MTc4LCA2NTE4NywgNjUxOTcsIDY1MjA4LCA2NTIxOCwgNjUyMjcsIDY1MjM3LCA2NTI0OCwgNjUyNTgsIAotICAgIDY1MjY5LCA2NTI4MSwgNjUyOTIsIDY1MzAyLCA2NTMxMSwgNjUzMTksIDY1MzI4LCA2NTMzOCwgNjUzNDcsIDY1MzU3LCAKLSAgICA2NTM2OCwgNjUzNzgsIDY1Mzg3LCA2NTM5NywgNjU0MDgsIDY1NDE4LCA2NTQyOSwgNjU0NDEsIDY1NDUyLCA2NTQ2MiwgCi0gICAgNjU0NzEsIDY1NDgxLCA2NTQ5MiwgNjU1MDIsIDY1NTEzLCA2NTUyNSwgNjU1MzYsIDY1NTQ2LCA2NTU1NywgNjU1NjksIAotICAgIDY1NTgwLCA2NTU5MiwgNjU2MDUsIDY1NjE3LCA2NTYyOCwgNjU2MzgsIDY1NjQ3LCA2NTY1NSwgNjU2NjQsIDY1Njc0LCAKLSAgICA2NTY4MywgNjU2OTMsIDY1NzA0LCA2NTcxNCwgNjU3MjMsIDY1NzMzLCA2NTc0NCwgNjU3NTQsIDY1NzY1LCA2NTc3NywgCi0gICAgNjU3ODgsIDY1Nzk4LCA2NTgwNywgNjU4MTcsIDY1ODI4LCA2NTgzOCwgNjU4NDksIDY1ODYxLCA2NTg3MiwgNjU4ODIsIAotICAgIDY1ODkzLCA2NTkwNSwgNjU5MTYsIDY1OTI4LCA2NTk0MSwgNjU5NTMsIDY1OTY0LCA2NTk3NCwgNjU5ODMsIDY1OTkzLCAKLSAgICA2NjAwNCwgNjYwMTQsIDY2MDI1LCA2NjAzNywgNjYwNDgsIDY2MDU4LCA2NjA2OSwgNjYwODEsIDY2MDkyLCA2NjEwNCwgCi0gICAgNjYxMTcsIDY2MTI5LCA2NjE0MCwgNjYxNTAsIDY2MTYxLCA2NjE3MywgNjYxODQsIDY2MTk2LCA2NjIwOSwgNjYyMjEsIAotICAgIDY2MjMyLCA2NjI0NCwgNjYyNTcsIDY2MjY5LCA2NjI4MiwgNjYyOTYsIDY2MzA5LCA2NjMyMSwgNjYzMzIsIDY2MzQyLCAKLSAgICA2NjM1MSwgNjYzNTksIDY2MzY2LCA2NjM3MSwgNjQ4OSwgNjYzNzgsIDMwMzMyLCA2NjM4MywgNjYzODgsIDMwMzM3LCAKLSAgICA2NjM5NCwgMTkxMDAsIDMwMzQyLCA2NjM5OSwgNjY0MDUsIDY2NDEzLCA2NjQxOSwgNjY0MjUsIDY2NDMyLCA2NjQzOSwgCi0gICAgNjY0NDQsIDY2NDQ4LCA2NjQ1MSwgNjY0NTUsIDY2NDY0LCA2NjQ3MCwgNjY0ODIsIDY2NDkzLCA2NjQ5NywgMzAxOSwgCi0gICAgNjQ2NCwgNjY1MDIsIDY2NTA1LCA2NjUwNywgNjY1MTEsIDY2NTE1LCA2NjUxOSwgMjM5MjcsIDY2NTI0LCA2NjUyOCwgCi0gICAgNjY1MzEsIDY2NTM2LCA2NjU0MCwgNjY1NDcsIDY2NTUzLCA2NjU1NywgNjY1NjEsIDY2NTY0LCAzMDM1OSwgNjY1NjksIAotICAgIDY2NTc2LCA2NjU4NSwgNjY1OTMsIDY2NjA0LCA2NjYxMiwgNjY2MjAsIDY2NjI3LCA2NjYzNCwgNjY2NDAsIDY2NjUxLCAKLSAgICAzMDM2NCwgNjY2NTYsIDY2NjY3LCA2NjY3OSwgNjY2ODcsIDY2Njk4LCA2NjcwNywgNjY3MTgsIDY2NzIzLCA2NjczMSwgCi0gICAgMjUxMCwgNjY3MzYsIDMyMDAyLCA2Njc0OSwgNjY3NTMsIDY2NzY1LCA2Njc3MywgNjY3NzgsIDY2Nzg2LCAxNTY2NCwgCi0gICAgNjY3OTcsIDY2ODAzLCA2NjgxMCwgNjY4MTgsIDY2ODI0LCAzMDM3NCwgNjY4MjksIDM4MzEsIDU1NjA1LCA2NjgzNiwgCi0gICAgNjY4MzksIDY2ODQ3LCA2Njg2MCwgNjY4NzMsIDY2ODg2LCA2Njg5OSwgNjY5MDYsIDY2OTE3LCA2NjkyNiwgMzkxMDUsIAotICAgIDM5MTEwLCA2NjkzMSwgNjY5MzUsIDY2OTQzLCA2Njk1MCwgNjY5NTksIDY2OTY3LCA2Njk3MywgNjY5ODIsIDY2OTkwLCAKLSAgICA2Njk5OCwgNjcwMDIsIDY3MDExLCA2NzAyMCwgNjcwMzAsIDY3MDQzLCA2NzA1NiwgNjcwNjYsIDMwMzc5LCA2NzA3MiwgCi0gICAgNjcwNzksIDY3MDg1LCAzMDM4NSwgNjcwOTAsIDY3MDkzLCA2NzA5NywgNjcxMDUsIDY3MTE0LCAzODg0MywgNjcxMjIsIAotICAgIDY3MTMxLCA2NzEzOSwgNjcxNDYsIDY3MTU0LCA2NzE2NCwgNjcxNzMsIDY3MTgyLCA2NzE5MSwgNjcxOTksIDY3MjEwLCAKLSAgICA2NzIyMCwgNzczMywgMTk3MTUsIDY3MjI5LCA2NzIzNCwgNjcyMzksIDY3MjQzLCA2NzI0NywgNjcyNTIsIDY3MjU4LCAKLSAgICA2NzI2MywgNjcyNjgsIDY3Mjc0LCA2NzI3OSwgNjcyODQsIDE5NjgwLCA2NzI4OSwgNjcyOTYsIDY3MzA0LCA2NzMxMiwgCi0gICAgNjczMTcsIDY3MzI0LCA2NzMzMSwgNjczMzUsIDY3MzM5LCA2NzM0NywgNjczNTUsIDMwNDAyLCA2NzM2MSwgNjczNjcsIAotICAgIDY3Mzc5LCA2NzM4NSwgNjczODksIDY3Mzk2LCA2NzQwMSwgNjc0MTIsIDY3NDIyLCA2NzQzMiwgNjc0NDQsIDY3NDUwLCAKLSAgICA2NzQ2MCwgNjc0NzAsIDMwNDI5LCA2NzQ3OSwgNjc0ODgsIDY3NDk0LCA2NzUwNiwgNjc1MTcsIDY3NTI0LCA2NzUyOSwgCi0gICAgNjc1MzMsIDY3NTQxLCA2NzU0NywgNjc1NTIsIDY3NTU3LCA2NzU2NCwgNjc1NzIsIDY3NTg0LCA2NzU5NCwgNjc2MDMsIAotICAgIDY3NjEyLCA2NzYxOSwgMzE4NjYsIDIxOTA2LCA2NzYyNSwgNjc2MzAsIDY3NjM0LCA2NzYzOCwgNjc2NDMsIDY3NjQ5LCAKLSAgICA2NzY2MCwgNjc2NzMsIDY3Njc4LCA2NzY4NSwgMzA0MzQsIDY3NjkwLCA2NzcwMiwgNjc3MTEsIDY3NzIxLCA2NzczMiwgCi0gICAgNjc3NDUsIDY3NzUyLCA2Nzc2MSwgNjc3NzAsIDY3Nzc4LCA2Nzc4MywgNjc3ODksIDE0NjUsIDY3Nzk0LCA2Nzc5OSwgCi0gICAgNjc4MDQsIDY3ODA5LCA2NzgxNSwgNjc4MjAsIDY3ODI1LCA2NzgzMSwgNjc4MzcsIDY3ODQyLCA2Nzg0NiwgNjc4NTEsIAotICAgIDY3ODU2LCA2Nzg2MSwgNTYxMTEsIDY3ODY2LCA2Nzg3MSwgNjc4NzYsIDY3ODgxLCA2Nzg4NywgNjc4OTMsIDY3ODk4LCAKLSAgICA2NzkwMiwgNjc5MDcsIDY3OTEyLCA2NzkxNywgNjc5MjMsIDY3OTI4LCA2NzkzNCwgNjc5MzksIDY3OTQ0LCA2Nzk0OSwgCi0gICAgNjc5NTQsIDY3OTU4LCA2Nzk2NCwgNjc5NjksIDY3OTc4LCA2Nzk4MywgNjc5ODgsIDY3OTkzLCA2Nzk5OCwgNjgwMDIsIAotICAgIDY4MDA5LCA2ODAxNSwgMTUzMjYsIDE1MzMzLCA0Mjg3NSwgNjgwMjAsIDY3OTcwLCA2ODAyMiwgNjgwMzIsIDMwNDQzLCAKLSAgICA2ODAzNSwgNjgwNDQsIDY4MDUwLCA0NjE3LCAzMDQ0OCwgNjgwNTQsIDY4MDYwLCA2ODA2NiwgNjgwNzEsIDY4MDc1LCAKLSAgICA2ODA4MiwgNjgwODcsIDY4MDk3LCA2ODEwNiwgNjgxMTAsIDY4MTE2LCA2ODEyMiwgNjgxMjgsIDY4MTMyLCA2ODE0MCwgCi0gICAgNjgxNDcsIDY4MTU1LCA2ODE2MywgMzA0NTMsIDY4MTcwLCA2ODE3MywgNjgxODAsIDY4MTg2LCA2ODE5MSwgNjgxOTUsIAotICAgIDY4MjAxLCA2ODIwOCwgNjgyMTMsIDY4MjE3LCA2ODIyNiwgNjgyMzQsIDY4MjQwLCA2ODI0NSwgMzA0NTgsIDY4MjUyLCAKLSAgICA2ODI1OSwgNjgyNjUsIDY4MjcwLCA2ODI3NiwgNjgyODMsIDY4Mjg5LCAxOTQ1MywgMjU0MDgsIDY4Mjk1LCA2ODMwMCwgCi0gICAgNjgzMDYsIDY4MzE4LCA2ODAwMywgNjgwMTAsIDY4MzI4LCA2ODMzMywgNjgzNDAsIDY4MzQ3LCA2ODM1MywgNjgzNjQsIAotICAgIDY4MzY5LCA3NTAyLCA2ODM3NywgNjgzODAsIDY4Mzg2LCA2ODM5MCwgNjgzOTQsIDY4Mzk3LCA2ODQwMywgMzAyMDcsIAotICAgIDQ2NTYsIDkxMywgMTE3MzEsIDY4NDEwLCA2ODQxNiwgNjg0MjIsIDY4NDI4LCA2ODQzNCwgNjg0NDAsIDY4NDQ2LCA2ODQ1MiwgCi0gICAgNjg0NTgsIDY4NDYzLCA2ODQ2OCwgNjg0NzMsIDY4NDc4LCA2ODQ4MywgNjg0ODgsIDY4NDkzLCA2ODQ5OCwgNjg1MDMsIAotICAgIDY4NTA4LCA2ODUxMywgNjg1MTgsIDY4NTIzLCA2ODUyOSwgNjg1MzQsIDY4NTM5LCA2ODU0NSwgNjg1NTAsIDY4NTU1LCAKLSAgICA2ODU2MSwgNjg1NjcsIDY4NTczLCA2ODU3OSwgNjg1ODUsIDY4NTkxLCA2ODU5NywgNjg2MDMsIDY4NjA5LCA2ODYxNCwgCi0gICAgNjg2MTksIDY4NjI1LCA2ODYzMCwgNjg2MzUsIDY4NjQxLCA2ODY0NiwgNjg2NTEsIDY4NjU2LCA2ODY2MSwgNjg2NjYsIAotICAgIDY4NjcxLCA2ODY3NiwgNjg2ODEsIDY4Njg2LCA2ODY5MSwgNjg2OTYsIDY4NzAxLCA2ODcwNywgNjg3MTIsIDY4NzE3LCAKLSAgICA2ODcyMiwgNjg3MjgsIDY4NzMzLCA2ODczOCwgNjg3NDMsIDY4NzQ4LCA2ODc1NCwgNjg3NTksIDY4NzY0LCA2ODc2OSwgCi0gICAgNjg3NzQsIDY4Nzc5LCA2ODc4NCwgNjg3ODksIDY4Nzk0LCA2ODc5OSwgNjg4MDQsIDY4ODA5LCA2ODgxNCwgNjg4MTksIAotICAgIDY4ODI0LCA2ODgyOSwgNjg4MzQsIDY4ODM5LCA2ODg0NCwgNjg4NDksIDY4ODU1LCA2ODg2MCwgNjg4NjUsIDY4ODcwLCAKLSAgICA2ODg3NSwgNjg4ODAsIDY4ODg1LCA2ODg5MCwgMTgyNywgMTQzLCA2ODg5NSwgNjg4OTksIDY4OTAzLCA2ODkwOCwgNjg5MTYsIAotICAgIDY4OTIwLCA2ODkyNywgNjg5MzUsIDY4OTM5LCA2ODk1MiwgNjg5NjAsIDY4OTY0LCA2ODk2NywgNjg5NzIsIDY4OTc2LCAKLSAgICA2ODk4MSwgNjg5ODUsIDY4OTkzLCA2ODk5NywgMTkxMDgsIDY5MDAyLCA1ODI3MCwgNjkwMDYsIDY5MDA5LCA2OTAxNywgCi0gICAgNjkwMjUsIDY5MDMzLCA2OTAzOCwgNjkwNDUsIDY5MDUxLCA2OTA1NywgNjkwNjIsIDY5MDY3LCA2OTA3NSwgNjIxNzUsIAotICAgIDY5MDgyLCA2OTA4NywgNjkwOTIsIDY5MDk2LCA5OTgxLCA2OTEwMCwgNjkxMDUsIDY5MTEwLCA2OTExNCwgNjkxMTcsIAotICAgIDY5MTIzLCA2OTEyNywgNjkxMzcsIDY5MTQ2LCA2OTE0OSwgNjkxNTYsIDY5MTY5LCA2OTE3NSwgNjkxODMsIDY5MTk0LCAKLSAgICA2OTIwNSwgNjkyMTYsIDY5MjI3LCA2OTIzNiwgNjkyNDIsIDY5MjUxLCA2OTI1OSwgNjkyNjksIDY5MjgyLCA2OTI4OSwgCi0gICAgNjkzMDAsIDY5MzA2LCA2OTMxMSwgNjkzMTYsIDY5MzIyLCA2OTMyOCwgNjkzMzgsIDY5MzQ3LCA2NzY5MiwgNjkzNTUsIAotICAgIDY5MzYxLCA2OTM2OSwgNjkzNzUsIDY5MzgzLCA2OTM4NywgNjkzOTEsIDY5Mzk0LCA2OTQwMCwgNjk0MDYsIDY5NDE0LCAKLSAgICA2OTQyNiwgNjk0MzgsIDY5NDQ1LCA2OTQ0OSwgNjk0NjAsIDY5NDY4LCA2OTQ3NSwgNjk0ODcsIDY5NDk1LCA2OTUwMywgCi0gICAgNjk1MTAsIDY5NTE2LCA2OTUyNiwgNjk1MzUsIDY5NTQwLCA2OTU1MCwgNjk1NTksIDM4MTg0LCA2OTU2NiwgNjk1NzAsIAotICAgIDY5NTc1LCA2OTU4MywgNjk1OTAsIDY5NTk2LCA2OTYwMCwgNjk2MTAsIDY5NjIxLCA2OTYyOSwgNjk2MzYsIDY5NjQ4LCAKLSAgICA2OTY2MCwgNjk2NjksIDY2NzM5LCA2OTY3NiwgNjk2ODcsIDY5NzAxLCA2OTcwOSwgNjk3MTksIDY5NzI2LCA2OTczNCwgCi0gICAgNjk3NDYsIDY5NzU1LCA2OTc2MywgNjk3NzMsIDY5NzgyLCA2OTc5MywgNjk4MDUsIDY5ODE0LCA2OTgyNCwgNjk4MzEsIAotICAgIDY5ODQwLCA2OTg1NSwgNjk4NjUsIDY5ODc0LCA2OTg4MiwgNjk4OTUsIDY5OTEwLCA2OTkxNCwgNjk5MjMsIDY5OTM1LCAKLSAgICA2OTk0NiwgNjk5NTcsIDY5OTY4LCA2OTk3OCwgNjk5ODksIDY5OTk3LCA3MDAwMywgNzAwMTMsIDcwMDE5LCAyNjkyMywgCi0gICAgNzAwMjQsIDcwMDMwLCA3MDAzNSwgNzAwNDIsIDgwNzUsIDE1Njg0LCA3MDA0OCwgNzAwNTcsIDcwMDYyLCA3MDA2NiwgCi0gICAgNzAwNzMsIDcwMDc5LCA3MDA4NCwgNzAwOTIsIDcwMTAwLCA3MDEwNCwgNzAxMDcsIDcwMTEwLCA3MDExMiwgNzAxMTksIAotICAgIDcwMTI1LCA3MDEzNiwgNzAxNDEsIDcwMTQ1LCA3MDE1MiwgNzAxNTgsIDcwMTYzLCA3MDE3MSwgNjI2NDIsIDYyNjUyLCAKLSAgICA3MDE3NywgNzAxODQsIDcwMTk0LCA4OTcxLCA3MDIwMSwgNzAyMDYsIDI3MTEzLCA3MDIxNSwgNzAyMjAsIDcwMjI3LCAKLSAgICA3MDIzNywgNzAyNDUsIDcwMjUzLCA3MDI2MiwgNzAyNjgsIDcwMjc0LCA3MDI4MSwgNzAyODgsIDcwMjkzLCA3MDI5NywgCi0gICAgNzAzMDUsIDcwMzEwLCA3MDMxNSwgNzAzMjMsIDcwMzMwLCA3MDMzNSwgNzAzNDEsIDcwMzQ0LCA3MDM0OCwgNzAzNTcsIAotICAgIDY4OTQ3LCA3MDM2NiwgNzAzNzAsIDcwMzc2LCA3MDM4NywgNzAzOTcsIDE1NjkzLCA3MDQwOCwgNzA0MTYsIDE1NzA1LCAKLSAgICA3MDQyMywgNzA0MjcsIDcwNDM2LCAyNTI5NCwgNzA0NDMsIDcwNDQ3LCA3MDQ1MiwgNzA0NjksIDcwNDgxLCA4OTI1LCAKLSAgICA3MDQ5MywgNzA0OTgsIDcwNTAzLCA3MDUwOCwgNzA1MTIsIDcwNTE1LCA3MDUyMCwgNzA1MjUsIDcwNTMxLCA3MDUzNiwgCi0gICAgNDMyNCwgMTkxODEsIDcwNTQxLCA3MDU0NiwgNzA1NTIsIDcwNTU5LCA3MDU2NCwgNzA1NjksIDcwNTc1LCA3MDU4MSwgCi0gICAgNzA1ODcsIDcwNTkyLCA3MDU5OCwgNzA2MDIsIDcwNjE2LCA3MDYyNCwgNzA2MzIsIDcwNjM4LCA3MDY0MywgNzA2NTAsIAotICAgIDcwNjYwLCA3MDY2OSwgNzA2NzQsIDcwNjc5LCA3MDY4NywgNzA2OTIsIDcwNjk4LCA3MDcwMywgNzA3MTIsIDU3MTU0LCAKLSAgICA3MDcxNywgNzA3MjAsIDcwNzM4LCA3MDc1NywgNzA3NzAsIDcwNzg0LCA3MDgwMCwgNzA4MDcsIDcwODE0LCA3MDgyMCwgCi0gICAgNzA4MjcsIDcwODMyLCA3MDgzOCwgNzA4NDQsIDcwODUyLCA3MDg1OCwgNzA4NjMsIDcwODY4LCA3MDg4NCwgODkzOCwgCi0gICAgNzA4OTgsIDcwOTA1LCA3MDkxMywgNzA5MTksIDcwOTIzLCA3MDkyNiwgNzA5MzEsIDcwOTM2LCA3MDk0MywgNzA5NDgsIAotICAgIDcwOTU3LCA3MDk2MiwgNzA5NjgsIDcwOTc3LCA3MDk4NiwgNzA5OTEsIDcwOTk1LCA3MTAwMywgMTAwMDUsIDcxMDEyLCAKLSAgICA3MTAyMCwgNzEwMjUsIDcxMDMxLCAxMDAxNiwgNzEwMzYsIDcxMDM5LCA3MTA0NCwgNzEwNTQsIDcxMDYzLCA3MTA2OCwgCi0gICAgNzEwNzQsIDcxMDc5LCA3MTA4NywgNzEwOTQsIDcxMTA1LCA3MTExNSwgNzExMjAsIDYyMTAzLCA3MTEyNSwgNzExMzEsIAotICAgIDcxMTM2LCA3MTE0MywgNzExNTIsIDcxMTYwLCA3MTE2NiwgNzExNzMsIDcxMTc5LCA3MTE4MywgMTUxNjEsIDI5OTMsIAotICAgIDcxMTg4LCA3MTE5MiwgNzExOTgsIDcxMjA3LCA3MTIxMywgNzEyMjAsIDcxMjI0LCA3MTI0NSwgNzEyNjcsIDcxMjgzLCAKLSAgICA3MTMwMCwgNzEzMTksIDcxMzI4LCA3MTMzOCwgNzEzNDUsIDcxMzUyLCAyNTE4MSwgNzEzNTgsIDcxMzYyLCA3MTM3MCwgCi0gICAgNzEzODIsIDcxMzg4LCA3MTM5NiwgNzE0MDAsIDcxNDA4LCA3MTQxNSwgNzE0MTksIDcxNDI1LCA3MTQzMSwgNzE0MzYsIAotICAgIDM0OTgsIDM5MzA1LCA3MTQ0MiwgNzE0NDYsIDcxNDUwLCA3MTQ1NCwgNzE0NTksIDcxNDY0LCA3MTQ2OSwgNzE0NzUsIAotICAgIDcxNDgxLCA3MTQ4NywgNzE0OTQsIDcxNTAwLCA3MTUwNywgNzE1MTMsIDcxNTE5LCA3MTUyNCwgNzE1MzAsIDcxNTM1LCAKLSAgICA3MTU0MCwgNzE1NDQsIDcxNTQ5LCAzOTMyMCwgNzE1NTMsIDcxNTU4LCA3MTU2NiwgNzE1NzAsIDcxNTc1LCA3MTU4MiwgCi0gICAgNzE1OTEsIDcxNTk3LCA3MTYwNCwgNzE2MDgsIDcxNjExLCA3MTYxOCwgNzE2MjcsIDcxNjMyLCA3MTYzNiwgNzE2NDQsIAotICAgIDcxNjUzLCA3MTY1NywgNzE2NjUsIDcxNjcxLCA3MTY3NiwgNzE2ODEsIDcxNjg3LCA3MTY5MywgNzE2OTgsIDcxNzAyLCAKLSAgICA3MTcwOCwgNzE3MTMsIDcxNzE3LCA3MTcyMSwgNzE3MjQsIDcxNzI5LCA3MTczNywgNzE3NDcsIDcxNzUyLCAzNjg2NSwgCi0gICAgNzE3NjAsIDcxNzcyLCA3MTc3NiwgNzE3ODIsIDcxNzk0LCA3MTgwNSwgNzE4MTIsIDcxODE4LCA3MTgyNSwgNzE4MzcsIAotICAgIDcxODQ0LCA3MTg1MCwgMTkyNTUsIDcxODU0LCA3MTg2MCwgNzE4NjcsIDcxODczLCA3MTg3OSwgNzE4ODQsIDcxODg5LCAKLSAgICA3MTg5NCwgNzE5MDMsIDU0OTEsIDcxOTA4LCAxNDYyNywgNzE5MTQsIDcxOTE4LCA3MTkyNiwgNzE5MzUsIDcxOTM5LCAKLSAgICA3MTk0NiwgNzE5NTUsIDcxOTY4LCA3MTk3NCwgNzE1NDUsIDI3OTYyLCA3MTk3OSwgNzE5ODEsIDcxOTg2LCA3MTk5MSwgCi0gICAgNzE5OTYsIDcyMDAxLCA3MjAwNiwgNzIwMTEsIDcyMDE2LCA3MjAyMSwgNzIwMjYsIDcyMDMxLCA3MjAzNiwgNzIwNDEsIAotICAgIDcyMDQ2LCA3MjA1MSwgNzIwNTcsIDcyMDYyLCA3MjA2NywgNzIwNzIsIDcyMDc3LCA3MjA4MiwgNzIwODcsIDcyMDkyLCAKLSAgICA3MjA5NywgNzIxMDMsIDcyMTA5LCA3MjExNSwgNzIxMjAsIDcyMTI1LCA3MjEzNywgNzIxNDIsIDE4MzMsIDY3LCA3MjE0NywgCi0gICAgNzIxNTIsIDMwNDg1LCAzMDQ5MCwgMzA0OTUsIDMwNTAxLCAzMDUwNiwgNzIxNTYsIDMwNTExLCAyMDIyNiwgNzIxNzgsIAotICAgIDcyMTgyLCA3MjE4NiwgNzIxOTEsIDcyMTk1LCAzMDUxNSwgNzIxOTksIDcyMjA3LCAzMDUyMCwgNzIyMTQsIDcyMjE3LCAKLSAgICA3MjIyMiwgNzIyMjYsIDc5MTAsIDcyMjM1LCAzMDUyNSwgMjAwOTIsIDcyMjM4LCA3MjI0MiwgMTM5NiwgNzIyNDcsIAotICAgIDMwNTM2LCA3MjI1MCwgNzIyNTUsIDIzNzIwLCAyMzczMCwgMzI5NDAsIDcyMjYwLCA3MjI2NSwgNzIyNzAsIDcyMjc1LCAKLSAgICA3MjI4MSwgNzIyODYsIDcyMjk1LCA3MjMwMCwgNzIzMDcsIDcyMzEzLCA3MjMxOCwgNzIzMjMsIDcyMzI4LCA3MjMzOCwgCi0gICAgNzIzNDcsIDcyMzUyLCA3MjM2MCwgNzIzNjQsIDcyMzcyLCAzMDM1MCwgMTE4OCwgNzIzNzksIDcyMzg1LCA3MjM5MCwgCi0gICAgNzIzOTUsIDcyNDAwLCA3MjQwNiwgNzI0MTEsIDcyNDE4LCA3MjQyNCwgNzI0MjksIDcyNDM3LCA3MjQ0NywgNzI0NTcsIAotICAgIDcyNDYzLCA3MjQ2OCwgNzI0NzQsIDE1NzE1LCA3MjQ4MSwgMzM3NDUsIDcyNDk0LCA3MjQ5OSwgNzI1MDUsIDcyNTE4LCAKLSAgICA3MjUyNCwgNzI1MjgsIDcyNTM3LCA3MjU0NCwgNzI1NTAsIDcyNTU4LCA3MjU2NywgNzI1NzQsIDcyNTgwLCA3MjU4MywgCi0gICAgMjM4NjEsIDcyNTg3LCA3MjU5NCwgNzI2MDAsIDcyNjA4LCA3MjYxMywgMjIwMzUsIDcyNjE5LCA3MjYyMiwgNzI2MzAsIAotICAgIDcyNjM4LCA3MjY1MiwgNzI2NTksIDcyNjY1LCA3MjY3MiwgNzI2NzgsIDMwNTUwLCA3MjY4MiwgNzI2ODksIDcyNjk3LCAKLSAgICA3MjcwNSwgMzA1NTUsIDcyNzExLCA3MjcxNywgNzI3MjIsIDcyNzMyLCA3MjczOCwgNzI3NDcsIDI4Njc3LCAzMjQxNSwgCi0gICAgNzI3NTUsIDcyNzYwLCA3Mjc2NSwgNzI3NzAsIDcyNzc0LCAxMzE3MCwgMzY4NzgsIDcyNzc5LCA3Mjc4NCwgMzA1NjAsIAotICAgIDU5NTU0LCA3Mjc4OCwgNzI3OTMsIDcyNzk3LCA3MjgwNiwgNzI4MTQsIDcyODIwLCA3MjgyNSwgNzI4MzEsIDcyODM4LCAKLSAgICA3Mjg0NCwgNzI4NDksIDcyODU0LCA3Mjg2MywgNzI4NzUsIDcyODkwLCAzMDgwMSwgNzI4OTYsIDE0NzQ2LCAzMDU2NCwgCi0gICAgNzI5MDAsIDcyOTA3LCAyMjE0NSwgNzI5MTMsIDcyOTIwLCA3MjkyOSwgNzI5MzYsIDcyOTQ1LCA3Mjk1MSwgNzI5NTYsIAotICAgIDcyOTY0LCA3Mjk3MCwgMzA1NzQsIDcyOTc1LCA3Mjk4NCwgNzE4MDAsIDcyOTkzLCA3MzAwMCwgNzMwMDYsIDczMDEyLCAKLSAgICA3MzAyMiwgNzMwMzAsIDczMDM3LCA3MzA0MSwgMzA1NzksIDczMDQ0LCAzMDU4NSwgMzA1OTEsIDczMDQ5LCA3MzA1NywgCi0gICAgNzMwNjcsIDczMDc2LCA3MzA4NCwgNzMwOTEsIDczMTAxLCAzMDU5NiwgNzMxMDUsIDczMTA3LCA3MzExMSwgNzMxMTYsIAotICAgIDczMTIwLCA3MzEyNCwgNzMxMzAsIDczMTM1LCA3MzEzOSwgNzMxNTAsIDczMTU1LCAyOTk4LCA3MzE1OSwgNzMxNjYsIAotICAgIDczMTcwLCA3MzE3OSwgNzMxODcsIDczMTk0LCA3MzE5OSwgNzMyMDQsIDU5NjAwLCA3MzIwOCwgNzMyMTEsIDczMjE3LCAKLSAgICA3MzIyNSwgNzMyMzEsIDczMjM1LCA3MzI0MCwgNzMyNDcsIDczMjUyLCA3MzI1OCwgMzI0NDYsIDczMjYzLCA3MzI2NiwgCi0gICAgNzMyNzEsIDczMjc1LCA3MzI4MCwgNzMyODUsIDczMjg5LCA3MzI5NywgMjM3MzksIDIzNzQ4LCA3MzMwMywgNzMzMDksIAotICAgIDczMzE1LCA3MzMyMCwgNzMzMjQsIDczMzI3LCA3MzMzNywgNzMzNDYsIDczMzUxLCA3MzM1NywgNzMzNjQsIDczMzcwLCAKLSAgICA3MzM3NCwgNzMzODIsIDczMzg3LCAzMjQ1MiwgNzMzOTEsIDczMzk5LCA3MzQwNSwgNzM0MTIsIDczNDE3LCA3MzQyMSwgCi0gICAgNzM0MjYsIDU1NzkxLCAzMjQ1OCwgNzM0MzIsIDczNDM3LCA3MzQ0MSwgNzM0NDYsIDczNDUxLCA3MzQ1NiwgNzM0NjAsIAotICAgIDczNDY1LCA3MzQ3MCwgNzM0NzYsIDczNDgxLCA3MzQ4NiwgNzM0OTIsIDczNDk4LCA3MzUwMywgNzM1MDcsIDczNTEyLCAKLSAgICA3MzUxNywgNzM1MjIsIDczNTI2LCAyMjE0NCwgNzM1MzEsIDczNTM2LCA3MzU0MiwgNzM1NDgsIDczNTU0LCA3MzU1OSwgCi0gICAgNzM1NjMsIDczNTY4LCA3MzU3MywgNzM1NzgsIDczNTgyLCA3MzU4NywgNzM1OTIsIDczNTk3LCA3MzYwMiwgNzM2MDYsIAotICAgIDMwNjAwLCA3MzYxNCwgNzM2MTgsIDczNjI2LCA3MzYzNCwgNzM2NDUsIDczNjUwLCA3MzY1NCwgMjA0OTcsIDczNjU5LCAKLSAgICA3MzY2NSwgNzM2NzUsIDczNjgyLCA3MzY4NywgNzM2OTYsIDczNzAxLCA3MzcwNSwgNzM3MTAsIDczNzE4LCA3MzcyNiwgCi0gICAgNzM3MzMsIDYyMzIxLCA3MzczOSwgNzM3NDcsIDczNzU0LCA3Mzc2NSwgNzM3NzEsIDczNzc3LCAzMDYxMCwgNzM3ODAsIAotICAgIDczNzg3LCA3Mzc5NSwgNzM4MDAsIDM3MDY5LCA3MzgwNCwgNzM4MDksIDczODE2LCA3MzgyMSwgNzM4OSwgNzM4MjUsIAotICAgIDczODMzLCA3Mzg0MCwgNzM4NDcsIDczODUzLCA3Mzg2NywgNjA2MjksIDczODc1LCA3Mzg4MSwgNzM4ODUsIDczODg4LCAKLSAgICA3Mzg5NiwgNzM5MDMsIDczOTA4LCA3MzkyMSwgNzM5MjgsIDczOTM1LCA3Mzk0MCwgNTgxNzQsIDczOTQ1LCA3Mzk0OCwgCi0gICAgNzM5NTUsIDczOTYxLCA3Mzk2NSwgNzM5NzMsIDczOTgzLCA3Mzk5MywgNzQwMDIsIDc0MDEwLCA3NDAyMSwgNzQwMjYsIAotICAgIDc0MDMwLCA3NDAzNSwgNzQwMzksIDMzMDcxLCAxOTUwOSwgMzMwODAsIDc0MDQ3LCA3NDA1MiwgNzQwNTcsIDc0MDYyLCAKLSAgICA3NDA2NywgNzQwNzIsIDc0MDc3LCA3NDA4MSwgNzQwODYsIDc0MDkxLCA3NDA5NiwgNzQxMDEsIDc0MTA2LCA3NDExMSwgCi0gICAgNzQxMTUsIDc0MTIwLCA3NDEyNSwgNzQxMjksIDc0MTMzLCA3NDEzNywgNzQxNDEsIDc0MTQ2LCA3NDE1MSwgNzQxNTUsIAotICAgIDc0MTYwLCA3NDE2NCwgNzQxNjgsIDc0MTczLCA3NDE3OCwgNzQxODMsIDc0MTg4LCA3NDE5MiwgNzQxOTcsIDc0MjAyLCAKLSAgICA3NDIwNiwgNzQyMTEsIDc0MjE2LCA3NDIyMSwgNzQyMjYsIDc0MjMxLCA3NDIzNiwgNzQyNDEsIDc0MjQ2LCA3NDI1MSwgCi0gICAgNzQyNTYsIDc0MjYxLCA3NDI2NiwgNzQyNzEsIDc0Mjc2LCA3NDI4MSwgNzQyODYsIDc0MjkxLCA3NDI5NiwgNzQzMDEsIAotICAgIDc0MzA2LCA3NDMxMCwgNzQzMTUsIDc0MzIwLCA3NDMyNSwgNzQzMzAsIDc0MzM1LCA3NDM0MCwgNzQzNDUsIDc0MzUwLCAKLSAgICA3NDM1NSwgNzQzNjAsIDc0MzY1LCA3NDM2OSwgNzQzNzQsIDc0Mzc4LCA3NDM4MywgNzQzODgsIDc0MzkzLCA3NDM5OCwgCi0gICAgNzQ0MDMsIDc0NDA4LCA3NDQxMywgNzQ0MTgsIDc0NDIzLCA3NDQyNywgNzQ0MzEsIDc0NDM2LCA3NDQ0MSwgNzQ0NDUsIAotICAgIDc0NDUwLCA3NDQ1NSwgNzQ0NTksIDc0NDY0LCA3NDQ2OSwgNzQ0NzQsIDc0NDc5LCA3NDQ4MywgNzQ0ODgsIDc0NDkzLCAKLSAgICA3NDQ5NywgNzQ1MDIsIDc0NTA2LCA3NDUxMCwgNzQ1MTQsIDc0NTE4LCA3NDUyMywgNzQ1MjcsIDc0NTMxLCA3NDUzNSwgCi0gICAgNzQ1MzksIDc0NTQzLCA3NDU0NywgNzQ1NTEsIDc0NTU1LCA3NDU1OSwgNzQ1NjQsIDc0NTY5LCA3NDU3NCwgNzQ1NzksIAotICAgIDc0NTg0LCA3NDU4OSwgNzQ1OTQsIDc0NTk5LCA3NDYwNCwgNzQ2MDksIDc0NjEzLCA3NDYxNywgNzQ2MjEsIDc0NjI1LCAKLSAgICA3NDYyOSwgNzQ2MzMsIDc0NjM4LCA3NDY0MiwgNzQ2NDcsIDc0NjUxLCA3NDY1NiwgNzQ2NjEsIDc0NjY1LCA3NDY2OSwgCi0gICAgNzQ2NzQsIDc0Njc4LCA3NDY4MiwgNzQ2ODYsIDc0NjkwLCA3NDY5NCwgNzQ2OTgsIDc0NzAyLCA3NDcwNiwgNzQ3MTAsIAotICAgIDc0NzE0LCA3NDcxOCwgNzQ3MjIsIDc0NzI2LCA3NDczMCwgNzQ3MzUsIDc0NzQwLCA3NDc0NCwgNzQ3NDgsIDc0NzUyLCAKLSAgICA3NDc1NiwgNzQ3NjAsIDc0NzY0LCA3NDc2OSwgNzQ3NzMsIDc0Nzc3LCA3NDc4MSwgNzQ3ODUsIDc0Nzg5LCA3NDc5MywgCi0gICAgNzQ3OTgsIDc0ODAyLCA3NDgwNywgNzQ4MTEsIDc0ODE1LCA3NDgxOSwgNzQ4MjMsIDc0ODI3LCA3NDgzMSwgNzQ4MzUsIAotICAgIDc0ODM5LCA3NDg0MywgNzQ4NDcsIDc0ODUxLCA3NDg1NiwgNzQ4NjAsIDc0ODY0LCA3NDg2OCwgNzQ4NzIsIDc0ODc2LCAKLSAgICA3NDg4MCwgNzQ4ODQsIDc0ODg4LCA3NDg5MiwgNzQ4OTYsIDc0OTAwLCA3NDkwNSwgNzQ5MDksIDc0OTEzLCA3NDkxOCwgCi0gICAgNzQ5MjMsIDc0OTI3LCA3NDkzMSwgNzQ5MzUsIDc0OTM5LCA3NDk0MywgNzQ5NDcsIDc0OTUxLCA3NDk1NSwgNzQ5NjAsIAotICAgIDc0OTY0LCA3NDk2OSwgNzQ5NzMsIDc0OTc4LCA3NDk4MiwgNzQ5ODcsIDc0OTkxLCA3NDk5NywgNzUwMDIsIDc1MDA2LCAKLSAgICA3NTAxMSwgNzUwMTUsIDc1MDIwLCA3NTAyNCwgNzUwMjksIDc1MDMzLCA3NTAzOCwgMTQ4NCwgNzUwNDIsIDI3NzgsIDE3MjIsIAotICAgIDE3MjcsIDc1MDQ2LCA3NTA1MCwgMjc4MiwgNzUwNTQsIDEzNjUsIDc1MDU5LCAxMzMxLCA3NTA2MywgMjc5NCwgNzUwNjcsIAotICAgIDc1MDc0LCA3NTA4MSwgNzUwOTUsIDI3OTgsIDU1ODksIDc1MTA0LCA3NTExMiwgNzUxMTksIDc1MTMwLCA3NTEzOSwgCi0gICAgNzUxNDYsIDc1MTU4LCA3NTE3MSwgNzUxODQsIDc1MTk1LCA3NTIwMCwgNzUyMDcsIDc1MjE5LCA3NTIyMywgMzkxOCwgCi0gICAgMTAwODIsIDc1MjMzLCA3NTIzOCwgNzUyNDcsIDc1MjU3LCAyODAyLCA3NTI2MiwgNzUyNjYsIDc1MjcxLCA3NTI3OCwgCi0gICAgNzUyODQsIDc1MjkyLCA3NTMwNCwgMTMzNiwgMTEzNTEsIDc1MzE0LCA3NTMxOCwgNzUzMjQsIDc1MzM4LCA3NTM1MCwgCi0gICAgNzUzNjIsIDc1MzcyLCA3NTM4MSwgNzUzOTAsIDc1Mzk5LCA3NTQwNywgNzU0MTgsIDc1NDI2LCAzOTY4LCA3NTQzNiwgCi0gICAgNzU0NDUsIDc1NDUxLCA3NTQ2NiwgNzU0NzMsIDc1NDc5LCAzMzE5NywgNzU0ODQsIDI4MjYsIDExMzU1LCA3NTQ4OCwgCi0gICAgNzU0OTUsIDczMzQsIDc1NTA0LCAyODMxLCAzMDEwNSwgNzU1MTAsIDU3OTIzLCA3NTUxNywgNzU1MjMsIDc1NTM0LCAKLSAgICA3NTU0MCwgNzU1NDcsIDc1NTUzLCA3NTU2MSwgNzU1NjgsIDc1NTc0LCA3NTU4NCwgNzU1OTMsIDc1NjA0LCA3NTYxMSwgCi0gICAgNzU2MTcsIDc1NjI3LCA3NTYzNSwgNzU2NDEsIDc1NjU2LCA3NTY2MiwgNzU2NjcsIDc1Njc0LCA3NTY3NywgNzU2ODMsIAotICAgIDc1NjkwLCA3NTY5NiwgNzU3MDQsIDc1NzEzLCA3NTcyMSwgNzU3MjcsIDc1NzM2LCAzODg0NSwgNzU3NTAsIDc1NzU1LCAKLSAgICAxMzAwNywgNzU3NjEsIDc1Nzc0LCA3NTc4MywgNzU3OTEsIDc1Nzk4LCA3NTgwMiwgNzU4MDYsIDc1ODA5LCA3NTgxNiwgCi0gICAgNzU4MjMsIDc1ODMxLCA3NTgzOSwgNzU4NDgsIDc1ODU2LCAxMjk0MywgNzU4NjQsIDc1ODY5LCA3NTg3MywgNzU4ODUsIAotICAgIDc1ODkyLCA3NTkwMSwgNzgwLCA3NTkxMSwgNzU5MjAsIDc1OTMxLCAyODQ3LCA3NTkzNSwgNzU5MzksIDc1OTQ1LCA3NTk1OCwgCi0gICAgNzU5NzAsIDc1OTgwLCA3NTk4OSwgMjQzMzEsIDc2MDAxLCA3NjAwOSwgNzYwMTgsIDc2MDI5LCA3NjA0MCwgNzYwNTAsIAotICAgIDc2MDYwLCA3NjA2OSwgNzYwNzcsIDk2NTcsIDc2MDg0LCA3NjA4OCwgNzYwOTMsIDc2MDk4LCA3NjEwNCwgMTM0MSwgCi0gICAgMTAxNTMsIDc2MTExLCA3NjEyMiwgNzYxMzEsIDc2MTM5LCA3NjE0OCwgNzYxNTYsIDc2MTcyLCA3NjE4MywgNzYxOTIsIAotICAgIDc2MjAwLCA3NjIxMiwgNzYyMjMsIDc2MjM5LCA3NjI0OSwgNzYyNzAsIDc2MjgzLCA3NjI5MSwgNzYyOTgsIDEzMTE4LCAKLSAgICA3NjMxMSwgNzYzMTYsIDc2MzIyLCA0Mzg2LCA3NjMyOCwgNzYzMzEsIDc2MzM4LCA3NjM0OCwgNjYwNywgNzYzNTUsIAotICAgIDc2MzYwLCA3NjM2NSwgNzYzNzMsIDc2MzgxLCA4MTIzLCA4MTMyLCA3NjM4NiwgNzYzOTcsIDc2NDAyLCA3NjQwOCwgMjg1NSwgCi0gICAgMjg2MCwgNzY0MTQsIDkyMjQsIDc2NDIwLCA3NjQyNywgNzY0MzQsIDc2NDQ3LCAyMjA1LCA1MCwgNzY0NTIsIDc2NDU3LCAKLSAgICA3NjQ2NywgNzY0NzMsIDc2NDgyLCA3NjQ5MCwgNzY1MDAsIDc2NTA0LCA3NjUwOSwgNzY1MTMsIDc2NTI1LCAyODgzLCAKLSAgICA3NjUzMywgNzY1NDEsIDc2NTQ2LCA3NjU1NywgNzY1NjgsIDc2NTc3LCA3NjU4MiwgNzY1ODgsIDc2NTkzLCA3NjYwMywgCi0gICAgNzY2MTMsIDc2NjE4LCA3NjYyNCwgNzY2MjksIDc2NjM4LCAxOTU2MiwgNzY2NDIsIDQwNDUsIDEyLCA3NjY0NywgNzY2NTYsIAotICAgIDc2NjYzLCA3NjY3MCwgNzY2NzYsIDc2NjgyLCA4MjcsIDc2Njg3LCA3NjY5MiwgNTgyNDAsIDc2Njk3LCA3NjcwMiwgCi0gICAgNzY3MDgsIDc2NzE2LCA3NjcyMSwgNzY3MjgsIDc2NzM0LCA3NjczOSwgMzU1NzMsIDM4NzQzLCA3Njc0NSwgMjg4NywgMzIsIAotICAgIDc2NzU1LCA3Njc2OCwgNzY3NzMsIDc2NzgxLCA3Njc4NiwgNzY3OTIsIDI5MDksIDI2MjM0LCA3Njc5NywgNzY4MDUsIAotICAgIDc2ODEyLCA3NjgxNywgNTYwMzMsIDU5MjIxLCA3NjgyNiwgMTY2NywgMTc3NiwgNzY4MzEsIDc2ODM2LCA3Njg0MywgMTc4MCwgCi0gICAgMjQyLCA3Njg1MCwgNzY4NTYsIDc2ODYxLCA3Njg2OCwgMTc4NCwgNzY4NzMsIDc2ODc5LCA3Njg4NCwgNzY4OTYsIDQ1OTcsIAotICAgIDc2OTA2LCAxNzkxLCA3NjkxMiwgNzY5MTcsIDc2OTI0LCA3NjkzMSwgNzY5NDYsIDc2OTUzLCA3Njk2NCwgNzY5NzIsIAotICAgIDI1NzIsIDc2OTc2LCA3Njk4OCwgNzY5OTMsIDc2OTk3LCA3NzAwMywgMjYwNTksIDIyMTAsIDc3MDA3LCA3NzAxOCwgCi0gICAgNzcwMjIsIDc3MDI2LCA3NzAzMiwgNzcwMzYsIDc3MDQ1LCA3NzA0OSwgNzcwNjAsIDc3MDY0LCAyMjU2LCAyOTk0NCwgCi0gICAgNzcwNjgsIDc3MDc4LCAzMDE4LCA3NzM4LCA3NzA4NiwgNzcwOTEsIDc3MDk1LCA3NzEwNCwgNzcxMTEsIDc3MTE3LCAyOTg4LCAKLSAgICAxNTM0MywgNzcxMjEsIDc3MTM0LCA3NzE1MiwgNzcxNTcsIDc3MTY1LCA3NzE3MywgNzcxODMsIDExNDU3LCA3NzE5NSwgCi0gICAgNzcyMDgsIDc3MjE1LCA3NzIyMiwgNzcyMzgsIDc3MjQ1LCA3NzI1MSwgMTAyNCwgNzcyNTgsIDc3MjY1LCA3NzI3NSwgCi0gICAgNzcyODQsIDc3Mjk2LCAzOTcwOSwgNzczMDQsIDMwMDIsIDEwMzUwLCA3NzMwNywgNzczMTUsIDc3MzE5LCAzMDA2LCAKLSAgICA3NzMyMywgMTkzNTgsIDEwMzY2LCAzNjg0LCA3NzMyNywgMzAxMiwgNzczMzEsIDc3MzQxLCA3NzM0NywgNzczNTMsIAotICAgIDc3MzU5LCA3NzM2NSwgNzczNzEsIDc3Mzc3LCA3NzM4MywgNzczODksIDc3Mzk1LCA3NzQwMSwgNzc0MDcsIDc3NDEzLCAKLSAgICA3NzQxOSwgNzc0MjUsIDc3NDMxLCA3NzQzNywgNzc0NDMsIDc3NDQ5LCA3NzQ1NSwgNzc0NjEsIDc3NDY3LCA3NzQ3MywgCi0gICAgNzc0NzksIDc3NDg1LCA3NzQ5MSwgNzc0OTgsIDc3NTA1LCA3NzUxMSwgNzc1MTcsIDc3NTIzLCA3NzUyOSwgNzc1MzUsIAotICAgIDc3NTQxLCAxMzQ2LCAxNDI3MCwgMTAzODgsIDc3NTQ3LCA3NzU1MiwgNzc1NTcsIDc3NTYyLCA3NzU2NywgNzc1NzIsIAotICAgIDc3NTc3LCA3NzU4MiwgNzc1ODcsIDc3NTkyLCA3NzU5NywgNzc2MDIsIDc3NjA3LCA3NzYxMiwgNzc2MTcsIDc3NjIyLCAKLSAgICA3NzYyNywgNzc2MzIsIDc3NjM3LCA3NzY0MiwgNzc2NDcsIDc3NjUyLCA3NzY1NywgNzc2NjIsIDc3NjY3LCA3NzY3MiwgCi0gICAgNzc2NzgsIDc3NjgzLCA3NzY4OCwgNzc2OTQsIDc3Njk5LCA3NzcwNSwgNzc3MTAsIDc3NzE1LCA3NzcyMSwgNzc3MjYsIAotICAgIDc3NzMxLCA3NzczNiwgNzc3NDEsIDc3NzQ2LCA3Nzc1MSwgNzc3NTYsIDc3NzYxLCA3NzM0MiwgNzczNDgsIDc3MzU0LCAKLSAgICA3NzM2MCwgNzczNjYsIDc3MzcyLCA3NzM3OCwgNzczODQsIDc3MzkwLCA3NzM5NiwgNzc0MDIsIDc3NDA4LCA3NzQxNCwgCi0gICAgNzc0MjAsIDc3NDI2LCA3Nzc2NywgNzc0MzIsIDc3NDM4LCA3NzQ0NCwgNzc3NzMsIDc3NDUwLCA3NzQ1NiwgNzc0NjIsIAotICAgIDc3NDY4LCA3NzQ3NCwgNzc0ODAsIDc3NDg2LCA3NzUwNiwgNzc3NzksIDc3Nzg1LCA3NzUxMiwgNzc3OTEsIDc3NTE4LCAKLSAgICA3NzUyNCwgNzc1MzAsIDc3NTM2LCA3NzU0MiwgMzAzMywgMzAzOCwgNzc3OTcsIDc3ODAyLCA3NzgwNSwgNzc4MTEsIAotICAgIDc3ODE3LCA3NzgyNCwgNzc4MjksIDc3ODM0LCAyMjYxLCAKKyAgICAwLCAwLCA2LCAxMCwgMTgsIDIzLCAyNywgMzQsIDM5LCA0MSwgNDQsIDUwLCA2MiwgNzAsIDgwLCA5MywgMTAyLCAxMDgsIAorICAgIDExMywgMTIxLCAxMzAsIDEzNSwgMTQwLCAxNDMsIDE0NywgMTUzLCAxNTgsIDE2MywgMTcxLCAxNzgsIDE4NiwgMTkxLCAKKyAgICAxOTQsIDIwMCwgMjA4LCAyMTUsIDIyNSwgMjMwLCAyMzcsIDI0NiwgMjQ5LCAyNTQsIDI1NywgMjYzLCAyNjcsIDI3MiwgCisgICAgMjgxLCAyODgsIDI5NSwgMzAxLCAzMTAsIDMxNSwgMzIxLCAzMjcsIDMzNSwgMTQ0LCAzNDEsIDM0OSwgMzUwLCAzNTgsIAorICAgIDM2MSwgMzY3LCAzNjksIDM3NSwgMzgyLCAzODQsIDM5MSwgMzk1LCA0MDMsIDQxMCwgNDE1LCA0MTcsIDQyMiwgNDI5LCAKKyAgICA0MzEsIDI5OSwgNDM3LCA0MzksIDQ0NCwgNDQ5LCA0NTIsIDQ1NywgNDYzLCA0NzAsIDQ3OSwgNDg5LCA0OTQsIDQ5OCwgCisgICAgNTA1LCA1MTgsIDUyMiwgNTMxLCA1MzgsIDU0NSwgNTQ4LCA1NTQsIDU1OCwgNTYyLCA1NzIsIDU4MCwgNTg4LCA1OTYsIAorICAgIDYwNSwgNjEzLCA2MTgsIDYxOSwgNjIzLCA2MzEsIDYzOCwgNjQ4LCA2NTksIDY2MywgNjY2LCA2NzAsIDY3MywgMzQ4LCAKKyAgICA2NzgsIDY4NywgNjkxLCA2OTcsIDcwMywgNzA1LCA3MDgsIDcxMSwgNzE0LCA3MTgsIDcyMiwgNzMxLCA3MzksIDc0NCwgCisgICAgNzQ3LCA3NTEsIDc1NywgNzY0LCA3NzEsIDc3NiwgNzg1LCA3OTQsIDgwMSwgODA1LCA4MTgsIDgyNywgODM1LCA4NDEsIAorICAgIDU1NywgODUwLCA4NjAsIDg2NywgODczLCA4NzksIDg4NiwgODk0LCA4OTgsIDc0OSwgOTA2LCA5MTUsIDUwMywgOTIzLCAKKyAgICA5MjgsIDkzNCwgMTcsIDk0MywgOTQ4LCA5NTEsIDk1NSwgOTU5LCA5NjYsIDk2OSwgOTc2LCA5ODAsIDk4OCwgOTkyLCAKKyAgICAxMDAwLCAxMDA0LCAxMDA3LCAxMDE0LCAxMDIxLCAxOTIsIDEwMjQsIDEwMjksIDEwMzksIDEwNDgsIDEwNTUsIDEwNjEsIAorICAgIDEwNjksIDEwNzIsIDEwNzcsIDEwODMsIDEwOTEsIDEwOTcsIDExMDIsIDExMDUsIDExMDgsIDExMSwgMTExMywgMTExNywgCisgICAgMTEyMywgMTEyOSwgMTEzMiwgMTEzOCwgMTE0MiwgMTE0NywgMTE1MywgMTE1OCwgMTE2OCwgMTE3MiwgMTE3NSwgMTE3OCwgCisgICAgMTE4NywgMTE5MSwgMTE5NCwgMTE5OSwgMTIwNCwgMTIxMCwgMTIxNSwgMTIyMCwgMTIyNSwgMTIyOSwgMTIzNCwgMTI0MCwgCisgICAgMTI0NSwgMTI1MCwgMTI1NCwgMTI2MCwgMTI2NSwgMTI3MCwgMTI3NSwgMTI3OSwgMTI4NCwgMTI4OSwgMTI5NCwgMTMwMCwgCisgICAgMTMwNiwgMTMxMiwgMTMxNywgMTMyMSwgMTMyNiwgMTMzMSwgMTMzNiwgMTM0MCwgMTM0NSwgMTM1MCwgMTM1NSwgMTM2MCwgCisgICAgMTE5NSwgMTIwMCwgMTIwNSwgMTIxMSwgMTIxNiwgMTM2NCwgMTIyNiwgMTM3MCwgMTM3NSwgMTM4MCwgMTM4NywgMTM5MSwgCisgICAgMTQwMCwgMTIzMCwgMTQwNCwgMTIzNSwgMTI0MSwgMTI0NiwgMTQwOCwgMTQxMywgMTQxOCwgMTQyMiwgMTQyNiwgMTQzMiwgCisgICAgMTQzNiwgMTI1MSwgMTQzOSwgMTI2MSwgMTQ0NCwgMTQ0OCwgMTI2NiwgMTQ1NCwgMTI3MSwgMTQ1OCwgMTQ2MiwgMTI3NiwgCisgICAgMTQ2NiwgMTQ3MSwgMTQ3NSwgMTQ3OCwgMTQ4MiwgMTI4MCwgMTI4NSwgMTQ4NywgMTI5MCwgMTQ5MywgMTQ5OSwgMTUwNSwgCisgICAgMTUxMSwgMTI5NSwgMTMwNywgMTMxMywgMTUxNSwgMTUxOSwgMTUyMywgMTUyNiwgMTMxOCwgMTUzMCwgMTUzMiwgMTUzNywgCisgICAgMTU0MiwgMTU0OCwgMTU1MywgMTU1OCwgMTU2MiwgMTU2NywgMTU3MiwgMTU3NywgMTU4MiwgMTU4OCwgMTU5MywgMTU5OCwgCisgICAgMTYwNCwgMTYxMCwgMTYxNSwgMTYxOSwgMTYyNCwgMTYyOSwgMTYzNCwgMTYzOSwgMTY0MywgMTY1MSwgMTY1NSwgMTY2MCwgCisgICAgMTY2NSwgMTY3MCwgMTY3NSwgMTY3OSwgMTY4MiwgMTY4NywgMTY5MiwgMTY5NywgMTcwMiwgMTcwOCwgMTcxMywgMTcxNywgCisgICAgMTMyMiwgMTcyMCwgMTcyNSwgMTczMCwgMTMyNywgMTczNCwgMTczOCwgMTc0NSwgMTMzMiwgMTc1MiwgMTMzNywgMTc1NiwgCisgICAgMTc1OCwgMTc2MywgMTc2OSwgMTM0MSwgMTc3NCwgMTc4MywgMTM0NiwgMTc4OCwgMTc5NCwgMTM1MSwgMTc5OSwgMTgwNCwgCisgICAgMTgwNywgMTgxMiwgMTgxNiwgMTgyMCwgMTgyNCwgMTgyNywgMTgzMSwgMTM1NiwgMTM2MSwgMTE1NiwgMTgzNiwgMTg0MiwgCisgICAgMTg0OCwgMTg1NCwgMTg2MCwgMTg2NiwgMTg3MiwgMTg3OCwgMTg4NCwgMTg4OSwgMTg5NSwgMTkwMSwgMTkwNywgMTkxMywgCisgICAgMTkxOSwgMTkyNSwgMTkzMSwgMTkzNywgMTk0MywgMTk0OCwgMTk1MywgMTk1OCwgMTk2MywgMTk2OCwgMTk3MywgMTk3OCwgCisgICAgMTk4MywgMTk4OCwgMTk5MywgMTk5OSwgMjAwNCwgMjAxMCwgMjAxNSwgMjAyMSwgMjAyNywgMjAzMiwgMjAzOCwgMjA0NCwgCisgICAgMjA1MCwgMjA1NiwgMjA2MSwgMjA2NiwgMjA2OCwgMjA2OSwgMjA3MywgMjA3NywgMjA4MiwgMjA4NiwgMjA5MCwgMjA5NCwgCisgICAgMjA5OSwgMjEwMywgMjEwNiwgMjExMSwgMjExNSwgMjEyMCwgMjEyNCwgMjEyOCwgMjEzMywgMjEzNywgMjE0MCwgMjE0NCwgCisgICAgMjE1MCwgMjE2NCwgMjE2OCwgMjE3MiwgMjE3NiwgMjE3OSwgMjE4NCwgMjE4OCwgMjE5MiwgMjE5NSwgMjE5OSwgMjIwNCwgCisgICAgMjIwOSwgMjIxNCwgMjIxOSwgMjIyMywgMjIyNywgMjIzMSwgMjIzNiwgMjI0MCwgMjI0NSwgMjI0OSwgMjI1NCwgMjI2MCwgCisgICAgMjI2NywgMjI3MywgMjI3OCwgMjI4MywgMjI4OCwgMjI5NCwgMjI5OSwgMjMwNSwgMjMxMCwgMjMxMywgMTIxMiwgMjMxNSwgCisgICAgMjMyMiwgMjMzMCwgMjM0MCwgMjM0OSwgMjM2MywgMjM2NywgMjM3MSwgMjM4NCwgMjM5MiwgMjM5NiwgMjQwMSwgMjQwNSwgCisgICAgMjQwOCwgMjQxMiwgMjQxNiwgMjQyMSwgMjQyNiwgMjQzMSwgMjQzNSwgMjQzOCwgMjQ0MiwgMjQ0OSwgMjQ1NiwgMjQ2MiwgCisgICAgMjQ2NywgMjQ3MiwgMjQ3OCwgMjQ4NCwgMjQ4OSwgMjQ5MiwgMTc2MCwgMjQ5NCwgMjUwMCwgMjUwNCwgMjUwOSwgMjUxMywgCisgICAgMjUxNywgMTc2NSwgMTc3MSwgMjUyMiwgMjUyNiwgMjUyOSwgMjUzNCwgMjUzOSwgMjU0NCwgMjU0OSwgMjU1MywgMjU2MCwgCisgICAgMjU2NSwgMjU2OCwgMjU3NSwgMjU4MSwgMjU4NSwgMjU4OSwgMjU5MywgMjU5OCwgMjYwNSwgMjYxMCwgMjYxNSwgMjYyMiwgCisgICAgMjYyOCwgMjYzNCwgMjY0MCwgMjY1NCwgMjY3MSwgMjY4NiwgMjcwMSwgMjcxMCwgMjcxNSwgMjcxOSwgMjcyNCwgMjcyOSwgCisgICAgMjczMywgMjc0NSwgMjc1MiwgMjc1OCwgMjI2MywgMjc2NCwgMjc3MSwgMjc3NywgMjc4MSwgMjc4NCwgMjc5MSwgMjc5NywgCisgICAgMjgwMSwgMjgwNSwgMjgwOSwgMjA5MSwgMjgxMywgMjgxOCwgMjgyMywgMjgyNywgMjgzNSwgMjgzOSwgMjg0MywgMjg0NywgCisgICAgMjg1MSwgMjg1NiwgMjg2MSwgMjg2NiwgMjg3MCwgMjg3NSwgMjg4MCwgMjg4NCwgMjg4OSwgMjg5MywgMjg5NiwgMjkwMCwgCisgICAgMjkwNCwgMjkxMiwgMjkxNywgMjkyMSwgMjkyNSwgMjkzMSwgMjk0MCwgMjk0NCwgMjk0OCwgMjk1NCwgMjk1OSwgMjk2NiwgCisgICAgMjk3MCwgMjk4MCwgMjk4NCwgMjk4OCwgMjk5MywgMjk5NywgMzAwMiwgMzAwOCwgMzAxMywgMzAxNywgMzAyMSwgMzAyNSwgCisgICAgMjQ1MiwgMzAzMywgMzAzOCwgMzA0NCwgMzA0OSwgMzA1MywgMzA1OCwgMzA2MywgMzA2NywgMzA3MywgMzA3OCwgMjA5NSwgCisgICAgMzA4NCwgMzA5MCwgMzA5NSwgMzEwMCwgMzEwNSwgMzExMCwgMzExNSwgMzEyMCwgMzEyNSwgMzEzMCwgMzEzNSwgMzE0MSwgCisgICAgMzE0NiwgMTIyNywgOTIsIDMxNTIsIDMxNTYsIDMxNjAsIDMxNjQsIDMxNjksIDMxNzMsIDMxNzcsIDMxODEsIDMxODUsIAorICAgIDMxOTAsIDMxOTQsIDMxOTksIDMyMDMsIDMyMDYsIDMyMTAsIDMyMTUsIDMyMTksIDMyMjQsIDMyMjgsIDMyMzIsIDMyMzYsIAorICAgIDMyNDEsIDMyNDUsIDMyNDgsIDMyNjEsIDMyNjUsIDMyNjksIDMyNzMsIDMyNzcsIDMyODEsIDMyODQsIDMyODgsIDMyOTIsIAorICAgIDMyOTcsIDMzMDEsIDMzMDYsIDMzMTEsIDMzMTYsIDMzMjAsIDMzMjMsIDMzMjYsIDMzMzIsIDMzMzYsIDMzNDAsIDMzNDMsIAorICAgIDMzNDcsIDMzNTEsIDMzNTQsIDMzNjAsIDMzNjUsIDMzNzAsIDMzNzYsIDMzODEsIDMzODYsIDMzOTIsIDMzOTgsIDM0MDMsIAorICAgIDM0MDgsIDM0MTMsIDExMTUsIDU0NywgMzQxOCwgMzQyMSwgMzQyNiwgMzQzMCwgMzQzMywgMzQzNywgMzQ0MiwgMzQ0NywgCisgICAgMzQ1MSwgMzQ1NiwgMzQ2MCwgMzQ2NSwgMzQ2OSwgMzQ3MywgMzQ3OSwgMzQ4NSwgMzQ4OCwgMzQ5MSwgMzQ5NywgMzUwNCwgCisgICAgMzUxMSwgMzUxNywgMzUyNCwgMzUyOSwgMzUzMywgMzU0MCwgMzU0NywgMzU1MiwgMzU1NiwgMzU2NiwgMzU3MCwgMzU3NCwgCisgICAgMzU3OSwgMzU4NCwgMzU5NCwgMjEwNywgMzU5OSwgMzYwMywgMzYwNiwgMzYxMiwgMzYxNywgMzYyMywgMzYyOSwgMzYzNCwgCisgICAgMzY0MSwgMzY0NSwgMzY0OSwgNjIwLCA2NzEsIDEzODgsIDM2NTMsIDM2NjAsIDM2NjcsIDM2NzQsIDM2ODEsIDM2ODcsIAorICAgIDM2OTMsIDM2OTgsIDM3MDIsIDM3MDgsIDM3MTMsIDM3MTcsIDIxMTYsIDM3MjEsIDM3MjksIDYwMCwgMzczNSwgMzc0NiwgCisgICAgMzc1MCwgMzc2MCwgMjEyMSwgMzc2NiwgMzc3MSwgMzc4NiwgMzc5MiwgMzc5OSwgMzgwOSwgMzgxNSwgMzgyMCwgMzgyNiwgCisgICAgMzgzMiwgMzgzNSwgMzgzOSwgMzg0NCwgMzg1MSwgMzg1NiwgMzg2MCwgMzg2NCwgMzg2OCwgMzg3MiwgMzg3NywgMzg4MywgCisgICAgMzg5NCwgMzIxMSwgMzg5OSwgMzkxMSwgMzkxOSwgMzkyNCwgMTU2NCwgMzkzMSwgMzkzNCwgMzkzNywgMzk0MSwgMzk0NCwgCisgICAgMzk1MCwgMzk1NCwgMzk2OCwgMzk3MiwgMzk3NSwgMzk3OSwgMzk4NSwgMzk5MSwgMzk5NiwgNDAwMCwgNDAwNCwgNDAxMCwgCisgICAgNDAyMSwgNDAyNywgNDAzMiwgNDAzOCwgNDA0MiwgNDA1MCwgNDA2MCwgNDA2NiwgNDA3MSwgNDA4MCwgNDA4OCwgNDA5NSwgCisgICAgNDA5OSwgNDEwNSwgNDExNCwgNDEyMywgNDEyNywgNDEzMiwgNDEzNywgNDE0MSwgNDE0OSwgNDE1MywgNDE1OCwgNDE2MiwgCisgICAgMjEyOSwgMTQwMSwgNDE2OCwgNDE3MywgNDE3OSwgNDE4NCwgNDE4OSwgNDE5NCwgNDE5OSwgNDIwNCwgNDIwOSwgNDIxNSwgCisgICAgNDIyMCwgNDIyNiwgNDIzMSwgNDIzNiwgNDI0MSwgNDI0NywgNDI1MiwgNDI1NywgNDI2MiwgNDI2NywgNDI3MywgNDI3OCwgCisgICAgNDI4NCwgNDI4OSwgNDI5NCwgNDI5OSwgNDMwNCwgNDMwOSwgNDMxNCwgNDMyMCwgNDMyNSwgNDMzMCwgMzE5LCA0NTYsIAorICAgIDQzMzUsIDQzNDEsIDQzNDUsIDQzNDksIDQzNTQsIDQzNTgsIDQzNjIsIDQzNjUsIDQzNjksIDQzNzMsIDQzNzcsIDQzODEsIAorICAgIDQzODYsIDQzOTAsIDQzOTQsIDQ0MDAsIDQxNjUsIDQ0MDUsIDQ0MDksIDQ0MTIsIDQ0MTcsIDQ0MjIsIDQ0MjcsIDQ0MzIsIAorICAgIDQ0MzcsIDQ0NDIsIDQ0NDcsIDQ0NTIsIDQ0NTcsIDQ0NjIsIDQ0NjYsIDQ0NzEsIDQ0NzYsIDQ0ODEsIDQ0ODYsIDQ0OTEsIAorICAgIDQ0OTYsIDQ1MDEsIDQ1MDYsIDQ1MTEsIDQ1MTYsIDQ1MjAsIDQ1MjUsIDQ1MzAsIDQ1MzUsIDQ1NDAsIDQ1NDUsIDQ1NTAsIAorICAgIDQ1NTUsIDQ1NjAsIDQ1NjUsIDQ1NzAsIDQ1NzQsIDQ1NzksIDQ1ODQsIDQ1ODksIDQ1OTQsIDQ1OTksIDQ2MDQsIDQ2MDksIAorICAgIDQ2MTQsIDQ2MTksIDQ2MjQsIDQ2MjgsIDQ2MzMsIDQ2MzgsIDQ2NDMsIDQ2NDgsIDQ2NTMsIDQ2NTgsIDQ2NjMsIDQ2NjgsIAorICAgIDQ2NzMsIDQ2NzgsIDQ2ODIsIDQ2ODcsIDQ2OTIsIDQ2OTcsIDQ3MDIsIDQ3MDcsIDQ3MTIsIDQ3MTcsIDQ3MjIsIDQ3MjcsIAorICAgIDQ3MzIsIDQ3MzYsIDQ3NDEsIDQ3NDYsIDQ3NTEsIDQ3NTYsIDQ3NjEsIDQ3NjYsIDQ3NzEsIDQ3NzYsIDQ3ODEsIDQ3ODYsIAorICAgIDQ3OTAsIDQ3OTUsIDQ4MDAsIDQ4MDUsIDQ4MTAsIDQ4MTYsIDQ4MjIsIDQ4MjgsIDQ4MzQsIDQ4NDAsIDQ4NDYsIDQ4NTIsIAorICAgIDQ4NTcsIDQ4NjMsIDQ4NjksIDQ4NzUsIDQ4ODEsIDQ4ODcsIDQ4OTMsIDQ4OTksIDQ5MDUsIDQ5MTEsIDQ5MTcsIDQ5MjIsIAorICAgIDQ5MjgsIDQ5MzQsIDQ5NDAsIDQ5NDYsIDQ5NTIsIDQ5NTgsIDQ5NjQsIDQ5NzAsIDQ5NzYsIDQ5ODIsIDQ5ODcsIDQ5OTMsIAorICAgIDQ5OTksIDUwMDUsIDUwMTEsIDUwMTcsIDUwMjMsIDUwMjksIDUwMzUsIDUwNDEsIDUwNDcsIDUwNTIsIDUwNTgsIDUwNjQsIAorICAgIDUwNzAsIDUwNzYsIDUwODIsIDUwODgsIDUwOTQsIDUxMDAsIDUxMDYsIDUxMTIsIDUxMTcsIDUxMjMsIDUxMjksIDUxMzUsIAorICAgIDUxNDEsIDUxNDcsIDUxNTMsIDUxNTksIDUxNjUsIDUxNzEsIDUxNzcsIDUxODIsIDUxODYsIDUxOTIsIDUxOTgsIDUyMDQsIAorICAgIDUyMTAsIDUyMTYsIDUyMjIsIDUyMjgsIDUyMzQsIDUyNDAsIDUyNDYsIDUyNTEsIDUyNTcsIDUyNjMsIDUyNjksIDUyNzUsIAorICAgIDUyODEsIDUyODcsIDUyOTMsIDUyOTksIDUzMDUsIDUzMTEsIDUzMTYsIDUzMjIsIDUzMjgsIDUzMzQsIDUzNDAsIDUzNDYsIAorICAgIDUzNTIsIDUzNTgsIDUzNjQsIDUzNzAsIDUzNzYsIDUzODEsIDUzODcsIDUzOTMsIDUzOTksIDU0MDUsIDU0MTEsIDU0MTcsIAorICAgIDU0MjMsIDU0MjksIDU0MzUsIDU0NDEsIDU0NDYsIDU0NTIsIDU0NTgsIDU0NjQsIDU0NzAsIDU0NzYsIDU0ODIsIDU0ODgsIAorICAgIDU0OTQsIDU1MDAsIDU1MDYsIDU1MTEsIDU1MTcsIDU1MjMsIDU1MjksIDU1MzUsIDU1NDEsIDU1NDcsIDU1NTMsIDU1NTksIAorICAgIDU1NjUsIDU1NzEsIDU1NzYsIDU1ODIsIDU1ODgsIDU1OTQsIDU2MDAsIDU2MDYsIDU2MTIsIDU2MTgsIDU2MjQsIDU2MzAsIAorICAgIDU2MzYsIDU2NDEsIDU2NDcsIDU2NTMsIDU2NTksIDU2NjUsIDU2NzEsIDU2NzcsIDU2ODMsIDU2ODksIDU2OTUsIDU3MDEsIAorICAgIDU3MDYsIDU3MTIsIDU3MTgsIDU3MjQsIDU3MzAsIDU3MzYsIDU3NDIsIDU3NDgsIDU3NTQsIDU3NjAsIDU3NjYsIDU3NzEsIAorICAgIDU3NzcsIDU3ODMsIDU3ODksIDU3OTUsIDU4MDEsIDU4MDcsIDU4MTMsIDU4MTksIDU4MjUsIDU4MzEsIDU4MzYsIDU4NDAsIAorICAgIDU4NDMsIDU4NTAsIDU4NTQsIDU4NjcsIDU4NzEsIDU4NzUsIDU4NzksIDU4ODMsIDU4ODcsIDU4OTEsIDU4OTcsIDU5MDQsIAorICAgIDU5MTIsIDU5MTYsIDU5MjQsIDU5MzMsIDU5MzksIDU5NTEsIDU5NTYsIDU5NTksIDU5NjMsIDU5NzMsIDU5ODEsIDU5ODksIAorICAgIDU5OTUsIDU5OTksIDYwMDksIDYwMTksIDYwMjcsIDYwMzQsIDYwNDEsIDYwNDcsIDYwNTMsIDYwNjAsIDYwNjQsIDYwNzEsIAorICAgIDYwODEsIDYwOTEsIDYwOTksIDYxMDYsIDYxMTEsIDYxMTUsIDYxMjMsIDYxMjcsIDYxMzIsIDYxMzksIDYxNDcsIDYxNTIsIAorICAgIDYxNTcsIDYxNjEsIDYxNjgsIDYxNzMsIDYxODcsIDYxOTIsIDYxOTcsIDYyMDQsIDYyMTMsIDYyMTYsIDYyMjAsIDYyMjQsIAorICAgIDYyMjgsIDYyMzEsIDYyMzYsIDYyNDEsIDYyNTAsIDYyNTYsIDYyNjIsIDYyNjgsIDYyNzIsIDYyODMsIDYyOTMsIDYzMDgsIAorICAgIDYzMjMsIDYzMzgsIDYzNTMsIDYzNjgsIDYzODMsIDYzOTgsIDY0MTMsIDY0MjgsIDY0NDMsIDY0NTgsIDY0NzMsIDY0ODgsIAorICAgIDY1MDMsIDY1MTgsIDY1MzMsIDY1NDgsIDY1NjMsIDY1NzgsIDY1OTMsIDY2MDgsIDY2MjMsIDY2MzgsIDY2NTMsIDY2NjgsIAorICAgIDY2ODMsIDY2OTgsIDY3MTMsIDY3MjgsIDY3NDMsIDY3NTgsIDY3NzMsIDY3ODgsIDY4MDMsIDY4MTgsIDY4MzMsIDY4NDgsIAorICAgIDY4NjMsIDY4NzgsIDY4OTMsIDY5MDgsIDY5MjMsIDY5MzgsIDY5NTMsIDY5NjgsIDY5ODMsIDY5OTgsIDcwMTMsIDcwMjgsIAorICAgIDcwMzcsIDcwNDYsIDcwNTEsIDcwNTcsIDcwNjcsIDcwNzEsIDcwNzYsIDcwODEsIDcwODksIDcwOTMsIDcwOTYsIDcxMDAsIAorICAgIDI5NzUsIDcxMDMsIDcxMDgsIDI5OCwgNDQyLCA3MTE0LCA3MTIyLCA3MTI2LCA3MTMwLCA3MTMzLCA3MTM3LCA3MTQzLCAKKyAgICA3MTQ3LCA3MTU1LCA3MTYxLCA3MTY2LCA3MTczLCA3MTgwLCA3MTg2LCA3MTkxLCA3MTk4LCA3MjA0LCA3MjEyLCA3MjE2LCAKKyAgICA3MjIxLCA3MjMzLCA3MjQ0LCA3MjUxLCA3MjU1LCA3MjU5LCA3MjY1LCAzMjMzLCA3MjY5LCA3Mjc1LCA3MjgwLCA3Mjg1LCAKKyAgICA3MjkwLCA3Mjk2LCA3MzAxLCA3MzA2LCA3MzExLCA3MzE2LCA3MzIyLCA3MzI3LCA3MzMyLCA3MzM4LCA3MzQzLCA3MzQ5LCAKKyAgICA3MzU0LCA3MzYwLCA3MzY1LCA3MzcxLCA3Mzc2LCA3MzgxLCA3Mzg2LCA3MzkxLCA3Mzk2LCA3NDAyLCA3NDA3LCA3NDEyLCAKKyAgICA3NDE3LCA3NDIzLCA3NDI5LCA3NDM1LCA3NDQxLCA3NDQ3LCA3NDUzLCA3NDU5LCA3NDY1LCA3NDcxLCA3NDc3LCA3NDgzLCAKKyAgICA3NDg5LCA3NDk0LCA3NDk5LCA3NTA0LCA3NTA5LCA3NTE0LCA3NTE5LCA3NTI0LCA3NTI5LCA3NTM1LCA3NTQxLCA3NTQ2LCAKKyAgICA3NTUyLCA3NTU4LCA3NTY0LCA3NTY5LCA3NTc0LCA3NTc5LCA3NTg0LCA3NTkwLCA3NTk2LCA3NjAxLCA3NjA2LCA3NjExLCAKKyAgICA3NjE2LCA3NjIxLCA3NjI3LCA3NjMyLCA3NjM4LCA3NjQ0LCA3NjUwLCA3NjU2LCA3NjYyLCA3NjY4LCA3Njc0LCA3NjgwLCAKKyAgICA3Njg2LCAyMTM4LCA3MTMyLCA3NjkxLCA3Njk1LCA3Njk5LCA3NzAyLCA3NzA5LCA3NzEyLCA3NzIwLCA3NzI1LCA3NzMwLCAKKyAgICA3NzIxLCA3NzM1LCAyMTY1LCA3NzM5LCA3NzQ1LCA3NzUxLCA3NzU2LCA3NzYxLCA3NzY4LCA3Nzc2LCA3NzgxLCA3Nzg1LCAKKyAgICA3Nzg4LCA3NzkyLCA3Nzk4LCA3ODA0LCA3ODA4LCAyMTczLCA1NjAsIDc4MTEsIDc4MTUsIDc4MjAsIDc4MjYsIDc4MzEsIAorICAgIDc4MzUsIDc4MzgsIDc4NDIsIDc4NDgsIDc4NTMsIDc4NTcsIDc4NjQsIDc4NjgsIDc4NzIsIDc4NzYsIDk0NSwgNzY5LCAKKyAgICA3ODc5LCA3ODg3LCA3ODk0LCA3OTAxLCA3OTA3LCA3OTE0LCA3OTIyLCA3OTI5LCA3OTM2LCA3OTQxLCA3OTUzLCAxMjQ3LCAKKyAgICAxNDA5LCAxNDE0LCA3OTY0LCAxNDE5LCA3OTY4LCA3OTcyLCA3OTgxLCA3OTg5LCA3OTk4LCA4MDA0LCA4MDA5LCA4MDEzLCAKKyAgICA4MDE5LCA4MDI0LCAyNzA2LCA4MDMxLCA4MDM1LCA4MDQ0LCA4MDUzLCA4MDYyLCA4MDcxLCA4MDc2LCA4MDgxLCA4MDkzLCAKKyAgICA4MDk4LCA4MTA2LCAyMjI0LCA4MTEwLCA4MTEyLCA4MTE3LCA4MTIxLCA4MTMwLCA4MTM4LCAxNDIzLCAxMzMsIDM0NjEsIAorICAgIDM0NjYsIDgxNDQsIDgxNDgsIDgxNTcsIDgxNjMsIDgxNjgsIDgxNzEsIDgxODAsIDI2OTgsIDgxODYsIDgxOTQsIDgxOTgsIAorICAgIDgyMDIsIDgyMDYsIDIyMzcsIDgyMTAsIDgyMTUsIDgyMjIsIDgyMjgsIDgyMzQsIDgyMzcsIDgyMzksIDgyNDIsIDgyNTAsIAorICAgIDgyNTgsIDgyNjYsIDgyNjksIDgyNzQsIDIyNTAsIDgyNzksIDc3MzIsIDgyODIsIDgyODQsIDgyODksIDgyOTQsIDgyOTksIAorICAgIDgzMDQsIDgzMDksIDgzMTQsIDgzMTksIDgzMjQsIDgzMjksIDgzMzQsIDgzNDAsIDgzNDUsIDgzNTAsIDgzNTUsIDgzNjEsIAorICAgIDgzNjYsIDgzNzEsIDgzNzYsIDgzODEsIDgzODYsIDgzOTEsIDgzOTcsIDg0MDIsIDg0MDcsIDg0MTIsIDg0MTcsIDg0MjIsIAorICAgIDg0MjcsIDg0MzIsIDg0MzcsIDg0NDIsIDg0NDcsIDg0NTIsIDg0NTcsIDg0NjIsIDg0NjcsIDg0NzIsIDg0NzcsIDg0ODIsIAorICAgIDg0ODgsIDg0OTQsIDg0OTksIDg1MDQsIDg1MDksIDg1MTQsIDg1MTksIDIyNjEsIDIyNjgsIDIyNzQsIDg1MjQsIDg1MzAsIAorICAgIDg1MzgsIDIzMDAsIDIzMDYsIDg1NDYsIDg1NTAsIDg1NTUsIDg1NTksIDg1NjMsIDg1NjcsIDg1NzIsIDg1NzYsIDg1ODEsIAorICAgIDg1ODUsIDg1ODgsIDg1OTEsIDg1OTcsIDg2MDMsIDg2MDksIDg2MTUsIDg2MjEsIDg2MjcsIDg2MzMsIDg2MzcsIDg2NDEsIAorICAgIDg2NDUsIDg2NDksIDg2NTMsIDg2NTgsIDg2NjUsIDg2NzYsIDg2ODQsIDg2OTQsIDg3MDAsIDg3MDcsIDg3MTIsIDg3MTYsIAorICAgIDg3MjcsIDg3NDAsIDg3NTEsIDg3NjQsIDg3NzUsIDg3ODcsIDg3OTksIDg4MTEsIDg4MjQsIDg4MzcsIDg4NDQsIDg4NTAsIAorICAgIDg4NjQsIDg4NzEsIDg4NzcsIDg4ODEsIDg4ODYsIDg4OTAsIDg4OTcsIDg5MDUsIDg5MDksIDg5MTUsIDg5MTksIDg5MjUsIAorICAgIDg5MzUsIDg5MzksIDg5NDQsIDg5NDksIDg5NTYsIDg5NjIsIDg5NzIsIDc5MDksIDg5NzgsIDg5ODIsIDg5ODksIDc2OCwgCisgICAgODk5MywgODk5NywgOTAwMiwgOTAwNywgOTAxMiwgOTAxNiwgOTAyMiwgOTAzMCwgOTAzNiwgOTA0MCwgOTA0NiwgOTA1NiwgCisgICAgOTA2MCwgOTA2NiwgOTA3MSwgOTA3NSwgOTA4MSwgOTA4NywgMjE2MSwgOTA5MiwgOTA5NCwgOTA5OSwgOTEwNywgOTExNiwgCisgICAgOTEyMCwgOTEyNiwgOTEzMSwgOTEzNiwgOTE0MSwgOTE0NiwgOTE1MiwgOTE1NywgOTE2MiwgNDAwNiwgOTE2NywgOTE3MiwgCisgICAgOTE3NiwgOTE4MiwgOTE4NywgOTE5MywgOTE5OCwgOTIwMywgOTIwOSwgOTIxNCwgOTEyMSwgOTIyMCwgOTIyNCwgOTIzMSwgCisgICAgOTIzNywgOTI0MiwgOTI0NiwgNjE4MywgOTI1MSwgOTI2MCwgOTI2NSwgOTI3MCwgODIxOCwgODIyNSwgOTI3NSwgMjg1MywgCisgICAgOTI3OSwgOTI4NCwgOTI4OSwgOTEzMiwgOTI5MywgOTI5OCwgOTEzNywgOTE0MiwgOTMwMywgOTMxMCwgOTMxNywgOTMyMywgCisgICAgOTMyOSwgOTMzNSwgOTM0MCwgOTM0NSwgOTM1MCwgOTE0NywgOTE1MywgOTM1NiwgOTM2MiwgOTM2NywgOTM3NSwgOTE1OCwgCisgICAgOTM4MCwgOTkwLCA5MzgzLCA5MzkxLCA5Mzk3LCA5NDAzLCA5NDEyLCA5NDIwLCA5NDI1LCA5NDMxLCA5NDM5LCA5NDQ2LCAKKyAgICA5NDYxLCA5NDc4LCA5NDk3LCA5NTA2LCA5NTE0LCA5NTI5LCA5NTQwLCA5NTUwLCA5NTYwLCA5NTY4LCA5NTc0LCA5NTg2LCAKKyAgICA5NTk1LCA5NjAzLCA5NjEwLCA5NjE3LCA5NjIzLCA5NjI4LCA5NjM2LCA5NjQ2LCA5NjUzLCA5NjYzLCA5NjczLCA5NjgzLCAKKyAgICA5NjkxLCA5Njk4LCA5NzA3LCA5NzE3LCA5NzMxLCA5NzQ2LCA5NzU1LCA5NzYzLCA5NzY4LCA5NzcyLCA5NzgxLCA5Nzg3LCAKKyAgICA5NzkyLCA5ODAyLCA5ODEyLCA5ODIyLCA5ODI3LCA5ODMxLCA5ODQwLCA5ODQ1LCA5ODU1LCA5ODY2LCA5ODc5LCA5ODg3LCAKKyAgICA5OTAwLCA5OTEyLCA5OTIwLCA5OTI1LCA5OTI5LCA5OTM1LCA5OTQwLCA5OTQ4LCA5OTU2LCA5OTYzLCA5OTY4LCA5OTc2LCAKKyAgICA5OTgyLCA5OTg1LCA5OTg5LCA5OTk1LCAxMDAwMywgMTAwMDgsIDEwMDEyLCAxMDAyMCwgMTAwMjksIDEwMDM3LCAxMDA0MywgCisgICAgMTAwNDcsIDEwMDU0LCAxMDA2NSwgMTAwNjksIDEwMDcyLCAxMDA3OCwgOTE2MywgMTAwODMsIDEwMDg5LCAxMDA5NiwgCisgICAgMTAxMDIsIDEwMTA3LCAxMDExNCwgMTAxMjEsIDEwMTI4LCAxMDEzNSwgMTAxNDIsIDEwMTQ5LCAxMDE1NiwgMTAxNjMsIAorICAgIDEwMTY4LCA5NDc0LCAxMDE3MywgMTAxNzksIDEwMTg2LCAxMDE5MywgMTAxOTgsIDEwMjA1LCAxMDIxNCwgMTAyMTgsIAorICAgIDEwMjMwLCA4MjU2LCAxMDIzNCwgMTAyMzcsIDEwMjQxLCAxMDI0NSwgMTAyNDksIDEwMjUzLCAxMDI1OSwgMTAyNjUsIAorICAgIDEwMjcwLCAxMDI3NiwgMTAyODEsIDEwMjg2LCAxMDI5MiwgMTAyOTcsIDEwMzAyLCA4OTUyLCAxMDMwNywgMTAzMTEsIAorICAgIDEwMzE1LCAxMDMxOSwgMTAzMjQsIDEwMzI5LCAxMDMzNywgMTAzNDMsIDEwMzQ3LCAxMDM1MSwgMTAzNTgsIDEwMzYzLCAKKyAgICAxMDM3MSwgMTAzNzYsIDEwMzgwLCAxMDM4MywgMTAzODksIDEwMzk2LCAxMDQwMCwgMTA0MDMsIDEwNDA4LCAxMDQxMiwgCisgICAgNDA0NSwgMTA0MTgsIDEwNDI3LCAzNiwgMTA0MzUsIDEwNDQxLCAxMDQ0NiwgODk2NywgMTA0NTEsIDEwNDU2LCAxMDQ2MCwgCisgICAgMTA0NjMsIDEwNDc4LCAxMDQ5NywgMTA1MDksIDEwNTIyLCAxMDUzNSwgMTA1NDgsIDEwNTYyLCAxMDU3NSwgMTA1OTAsIAorICAgIDEwNTk3LCA5MTY4LCAxMDYwMywgMTA2MTcsIDEwNjIyLCAxMDYyOCwgMTA2MzMsIDEwNjQxLCAxMDY0NiwgODA0MCwgCisgICAgMTA2NTEsIDEwNjU0LCAxMDY2MSwgMTA2NjYsIDEwNjcwLCAyODU4LCA5OTgsIDEwNjc2LCAxMDY4MCwgMTA2ODYsIDEwNjkyLCAKKyAgICAxMDY5NywgMTA3MDMsIDEwNzA4LCA5MTc3LCAxMDcxNCwgMTA3MjAsIDEwNzI1LCAxMDczMCwgMTA3MzgsIDEwNzQ0LCAKKyAgICAxMDc1NywgMTA3NjUsIDEwNzcyLCA5MTgzLCAxMDc3OCwgMTA3ODYsIDEwNzk0LCAxMDgwMSwgMTA4MTQsIDEwODI2LCAKKyAgICAxMDgzNiwgMTA4NDQsIDEwODUxLCAxMDg1OCwgMTA4NjcsIDEwODc2LCAxMDg4NCwgMTA4OTEsIDEwODk2LCAxMDkwMiwgCisgICAgOTE4OCwgMTA5MDcsIDEwOTEzLCA5MTk0LCAxMDkxOCwgMTA5MjEsIDEwOTI4LCAxMDkzNCwgMTA5NDcsIDg2NjksIDEwOTU4LCAKKyAgICAxMDk2NCwgMTA5NzMsIDEwOTgxLCAxMDk4OCwgMTA5OTQsIDExMDAwLCAxMTAwNSwgMTEwMDksIDExMDE0LCAxMDQ3MCwgCisgICAgMTEwMjAsIDkxOTksIDExMDI3LCAxMTAzMiwgMTEwMzksIDExMDQ1LCAxMTA1MSwgMTEwNTYsIDExMDY0LCAxMTA3MiwgCisgICAgMTEwNzksIDExMDgzLCAxMTA5NywgMTExMDcsIDExMTEyLCAxMTExNiwgMTExMjcsIDExMTMzLCAxMTEzOCwgMTExNDMsIAorICAgIDkyMDQsIDkyMTAsIDExMTQ3LCAxMTE1MCwgMTExNTUsIDExMTY3LCAxMTE3NCwgMTExNzksIDExMTgzLCAxMTE4OCwgCisgICAgMTExOTIsIDExMTk5LCAxMTIwNSwgOTIxNSwgOTEyMiwgMTEyMTIsIDI4NjMsIDgsIDExMjE5LCAxMTIyNCwgMTEyMjgsIAorICAgIDExMjM0LCAxMTI0MiwgMTEyNTIsIDExMjU3LCAxMTI2MiwgMTEyNjksIDExMjc2LCAxMTI4MCwgMTEyOTEsIDExMzAxLCAKKyAgICAxMTMxMCwgMTEzMjIsIDExMzI3LCAxMTMzMSwgMTEzMzksIDExMzUzLCAxMTM1NywgMTEzNjAsIDExMzY4LCAxMTM3NSwgCisgICAgMTEzODMsIDExMzg3LCAxMTM5OCwgMTE0MDIsIDExNDA5LCAxMTQxNCwgMTE0MTgsIDExNDI0LCAxMTQyOSwgMTE0MzMsIAorICAgIDExNDM5LCAxMTQ0NCwgMTE0NTUsIDExNDU5LCAxMTQ2MiwgMTE0NjgsIDExNDczLCAxMTQ3OSwgMTE0ODUsIDExNDkyLCAKKyAgICAxMTUwMywgMTE1MTMsIDExNTIzLCAxMTUzMiwgMTE1MzksIDExNTQ4LCA5MjI1LCA5MjMyLCA5MjM4LCA5MjQzLCAxMTU1NCwgCisgICAgMTE1NjAsIDkyNDcsIDExNTY2LCAxMTU2OSwgMTE1NzYsIDExNTgxLCAxMTU5NiwgMTE2MTIsIDExNjI3LCAxMTYzNSwgCisgICAgMTE2NDEsIDExNjQ2LCA4MzgsIDQyMCwgMTE2NTEsIDExNjU5LCAxMTY2NiwgMTE2NzIsIDExNjc3LCAxMTY4MiwgOTI1MiwgCisgICAgMTE2ODQsIDExNjg4LCAxMTY5MywgMTE2OTcsIDExNzA3LCAxMTcxMiwgMTE3MTYsIDExNzI1LCAxMTcyOSwgMTE3MzIsIAorICAgIDkyNjEsIDExNzM5LCAxMTc0MiwgMTE3NTAsIDExNzU3LCAxMTc2NSwgMTE3NjksIDExNzc2LCAxMTc4NSwgMTE3ODgsIAorICAgIDExNzkyLCAxMTc5NiwgMTE4MDIsIDExODA2LCAxMTgxMCwgMTE4MTQsIDExODIwLCAxMTgzMCwgMTE4MzQsIDExODQyLCAKKyAgICAxMTg0NiwgMTE4NTMsIDExODU3LCAxMTg2MiwgMTE4NjYsIDExODczLCAxMTg3OSwgMTE4ODcsIDExODkzLCAxMTg5OCwgCisgICAgMTE5MDgsIDExOTEzLCAxMTkxOCwgMTE5MjIsIDExOTMwLCAzOTA1LCAxMTkzOCwgMTE5NDMsIDkyNjYsIDExOTQ3LCAKKyAgICAxMTk1MSwgMTE5NTQsIDExOTYyLCAxMTk2OSwgMTE5NzMsIDU5OTEsIDExOTc3LCAxMTk4MiwgMTE5ODYsIDExOTk3LCAKKyAgICAxMjAwNywgMTIwMTIsIDEyMDE4LCAxMjAyMiwgMTIwMjUsIDEyMDMzLCAxMjAzOCwgMTIwNDMsIDEyMDUwLCAxMjA1NSwgCisgICAgOTI3MSwgMTIwNjAsIDEyMDY0LCAxMjA3MSwgMTcyMiwgNjE0NSwgMTIwNzYsIDEyMDgxLCAxMjA4NiwgMTIwOTEsIDEyMDk3LCAKKyAgICAxMjEwMiwgMTIxMDgsIDEyMTEzLCAxMjExOCwgMTIxMjMsIDEyMTI4LCAxMjEzMywgMTIxMzgsIDEyMTQzLCAxMjE0OCwgCisgICAgMTIxNTMsIDEyMTU4LCAxMjE2MywgMTIxNjgsIDEyMTczLCAxMjE3OCwgMTIxODMsIDEyMTg4LCAxMjE5NCwgMTIxOTksIAorICAgIDEyMjA0LCAxMjIwOSwgMTIyMTQsIDEyMjE5LCAxMjIyNSwgMTIyMzAsIDEyMjM1LCAxMjI0MSwgMTIyNDYsIDEyMjUyLCAKKyAgICAxMjI1NywgMTIyNjMsIDEyMjY4LCAxMjI3MywgMTIyNzgsIDEyMjgzLCAxMjI4OSwgMTIyOTQsIDEyMjk5LCAxMjMwNCwgCisgICAgNzM3LCAxMzksIDEyMzEyLCAxMjMxNiwgMTIzMjEsIDEyMzI2LCAxMjMzMCwgMTIzMzQsIDEyMzM4LCAxMjM0MywgMTIzNDcsIAorICAgIDEyMzUyLCAxMjM1NiwgMTIzNTksIDEyMzYzLCAxMjM2NywgMTIzNzMsIDEyMzc4LCAxMjM4OCwgMTIzOTQsIDEyNDAyLCAKKyAgICAxMjQwNiwgMTI0MTAsIDEyNDE3LCAxMjQyNSwgMTI0MzQsIDEyNDQ1LCAxMjQ1MiwgMTI0NTksIDEyNDYzLCAxMjQ3MiwgCisgICAgMTI0ODEsIDEyNDg5LCAxMjQ5OCwgMTI1MDcsIDEyNTE2LCAxMjUyNSwgMTI1MzUsIDEyNTQ1LCAxMjU1NSwgMTI1NjUsIAorICAgIDEyNTc1LCAxMjU4NCwgMTI1OTQsIDEyNjA0LCAxMjYxNCwgMTI2MjQsIDEyNjM0LCAxMjY0NCwgMTI2NTQsIDEyNjYzLCAKKyAgICAxMjY3MywgMTI2ODMsIDEyNjkzLCAxMjcwMywgMTI3MTMsIDEyNzIzLCAxMjczMiwgMTI3NDIsIDEyNzUyLCAxMjc2MiwgCisgICAgMTI3NzIsIDEyNzgyLCAxMjc5MiwgMTI4MDIsIDEyODEyLCAxMjgyMiwgMTI4MzEsIDEyODQxLCAxMjg1MSwgMTI4NjEsIAorICAgIDEyODcxLCAxMjg4MSwgMTI4OTEsIDEyOTAxLCAxMjkxMSwgMTI5MjEsIDEyOTMxLCAxMjk0MCwgMTI1NiwgMTI5NDYsIAorICAgIDEyOTQ5LCAxMjk1MywgMTI5NTgsIDEyOTY1LCAxMjk3MSwgMTI5NzYsIDEyOTgwLCAxMjk4NSwgMTI5OTQsIDEzMDAyLCAKKyAgICAxMzAwNywgMTMwMTEsIDEzMDE1LCAxMzAyMSwgMTMwMjYsIDEzMDMyLCA5MjgwLCAxMzAzNywgMTMwNDIsIDEzMDUxLCAKKyAgICA5Mjg1LCAxMzA1NiwgMTMwNTksIDEzMDY1LCAxMzA3MywgOTI5MCwgMTMwODAsIDEzMDg0LCAxMzA4OCwgMTMwOTIsIAorICAgIDEzMTAyLCAxMzEwOCwgMTMxMTQsIDEzMTE5LCAxMzEyOCwgMTMxMzYsIDEzMTQzLCAxMzE1MCwgMTMxNTUsIDEzMTYyLCAKKyAgICAxMzE2NywgMTMxNzEsIDEzMTc0LCAxMzE4NSwgMTMxOTUsIDEzMjA0LCAxMzIxMiwgMTMyMjMsIDEzMjM1LCAxMzI0NSwgCisgICAgMTMyNTAsIDEzMjU0LCAxMzI1OSwgMTMyNjQsIDEzMjY4LCAxMzI3NCwgMTMyODIsIDEzMjg5LCAxMzMwMCwgMTMzMDUsIAorICAgIDEzMzE1LCAxMzMxOSwgMTMzMjIsIDEzMzI5LCAxMzMzOSwgMTMzNDgsIDEzMzU1LCAxMzM1OSwgMTMzNjYsIDEzMzcyLCAKKyAgICAxMzM3NywgMTMzODIsIDEzMzg2LCAxMzM5NSwgMTM0MDAsIDEzNDA2LCAxMzQxMCwgMTM0MTUsIDEzNDE5LCAxMzQyOCwgCisgICAgMTM0MzYsIDEzNDQ0LCAxMzQ1MSwgMTM0NTksIDEzNDcxLCAxMzQ4MiwgMTM0OTIsIDEzNDk5LCAxMzUwNSwgMTM1MTQsIAorICAgIDEzNTI1LCAxMzUzNCwgMTM1NDYsIDEzNTU4LCAxMzU3MCwgMTM1ODAsIDEzNTg5LCAxMzU5OCwgMTM2MDYsIDEzNjEzLCAKKyAgICAxMzYyMiwgMTM2MzAsIDEzNjM0LCAxMzY0MCwgMTM2NDYsIDEzNjUxLCA3NzUzLCAxMzY1NSwgMTM2NTcsIDEzNjYxLCAKKyAgICAxMzY2NiwgMTM2NzIsIDEzNjgxLCAxMzY4NSwgMTM2OTMsIDEzNzAwLCAxMzcwOSwgMTM3MTgsIDEzNzI3LCAxMzczNiwgCisgICAgMTM3NDUsIDEzNzU0LCAxMzc2MywgMTM3NzIsIDEzNzgyLCAxMzc5MiwgMTM4MDEsIDEzODA3LCAxMzgxNCwgMTM4MjEsIAorICAgIDEzODI3LCAxMzg0MSwgMTM4NDgsIDEzODU2LCAxMzg2NSwgMTM4NzEsIDEzODgwLCAxMzg4OSwgMTM5MDAsIDEzOTEwLCAKKyAgICAxMzkxOCwgMTM5MjUsIDEzOTMzLCAxMzk0MiwgMTM5NTUsIDEzOTYzLCAxMzk3MCwgMTM5ODMsIDEzOTg5LCAxMzk5NSwgCisgICAgMTQwMDUsIDE0MDE0LCAxNDAyMywgMTQwMjgsIDE0MDMyLCAxNDAzOCwgMTQwNDQsIDE0MDUxLCA4OTY2LCAxNDA1NiwgCisgICAgMTQwNjEsIDE0MDY4LCAxNDA3MywgMTIzNjksIDE0MDc4LCAxNDA4NiwgMTQwOTIsIDE0MDk3LCAxNDEwNSwgMTQxMTMsIAorICAgIDE0MTIwLCAxNDEyOCwgMTQxMzQsIDE0MTQyLCAxNDE1MCwgMTQxNTYsIDE0MTYxLCAxNDE2NywgMTQxNzQsIDE0MTgwLCAKKyAgICAxNDE4NSwgMTQxODksIDE0MjAwLCAxNDIwOCwgMTQyMTQsIDE0MjE5LCAxNDIyOCwgMTQyMzQsIDE0MjM5LCAxNDI0OCwgCisgICAgMTQyNjIsIDM4NTMsIDE0MjY2LCAxNDI3MSwgMTQyNzYsIDE0MjgyLCAxNDI4NywgMTQyOTIsIDE0Mjk2LCAxNDMwMSwgCisgICAgMTQzMDYsIDE0MzExLCA3NzUyLCAxNDMxNiwgMTQzMjEsIDE0MzI2LCAxNDMzMSwgMTQzMzYsIDE0MzQwLCAxNDM0NSwgCisgICAgMTQzNTAsIDE0MzU1LCAxNDM2MCwgMTQzNjYsIDE0MzcyLCAxNDM3NywgMTQzODEsIDE0Mzg2LCAxNDM5MSwgMTQzOTYsIAorICAgIDkyOTQsIDE0NDAxLCAxNDQwNiwgMTQ0MTEsIDE0NDE2LCAxNDQyMSwgMTQ0MzgsIDE0NDU2LCAxNDQ2OCwgMTQ0ODEsIAorICAgIDE0NDk4LCAxNDUxNCwgMTQ1MzEsIDE0NTQxLCAxNDU2MCwgMTQ1NzEsIDE0NTgyLCAxNDU5MywgMTQ2MDQsIDE0NjE2LCAKKyAgICAxNDYyNywgMTQ2MzgsIDE0NjU1LCAxNDY2NiwgMTQ2NzcsIDE0NjgyLCA5Mjk5LCAxNDY4NywgMTQ2OTEsIDIzODEsIAorICAgIDE0Njk1LCAxNDY5OCwgMTQ3MDQsIDE0NzEyLCAxNDcyMCwgMTQ3MjUsIDE0NzMzLCAxNDc0MSwgMTQ3NDgsIDE0NzUzLCAKKyAgICAxNDc1OSwgMTQ3NjYsIDE0Nzc0LCAxNDc4MSwgMTQ3OTMsIDE0ODAxLCAxNDgwNiwgMTE1OTAsIDE0ODEyLCAxNDgyMSwgCisgICAgMTQ4MzAsIDE0ODM4LCAxNDg0NSwgMTQ4NTEsIDE0ODU5LCAxNDg2NiwgMTQ4NzIsIDE0ODc5LCAxNDg4NSwgMTQ4OTQsIAorICAgIDE0OTAyLCAxNDkxMiwgMTQ5MTksIDE0OTI1LCAxNDkzMywgMTQ5MzksIDE0OTQ3LCAxNDk1NCwgMTQ5NjcsIDE0OTc0LCAKKyAgICAxNDk4MywgMTQ5OTIsIDE1MDAxLCAxNTAwOSwgMTUwMTksIDE1MDI2LCAxNTAzMSwgMzU2MCwgMTUwMzgsIDE1MDQzLCAKKyAgICAxMzcyLCAxNTA0NywgMTQzMTcsIDE1MDUxLCAxNTA1NywgMTUwNjEsIDE1MDY5LCAxNTA4MSwgMTUwODYsIDE1MDkzLCAKKyAgICAxNTA5OSwgMTUxMDQsIDE1MTExLCAxNDMyMiwgMTUxMTUsIDE1MTE5LCAxNTEyMywgMTQzMjcsIDE1MTI3LCAxNDMzMiwgCisgICAgMTUxMzEsIDE1MTM4LCAxNTE0MywgMTUxNDcsIDE1MTU0LCAxNTE1OCwgMTUxNjYsIDE1MTczLCAxNTE3NywgMTUxODQsIAorICAgIDE1MjAxLCAxNTIxMCwgMTUyMTQsIDE1MjE3LCAxNTIyNSwgMTUyMzEsIDE1MjM2LCAzNjM4LCAxNTI0MCwgMTUyNDIsIAorICAgIDE1MjUwLCAxNTI1NywgMTUyNjcsIDE1Mjc5LCAxNTI4NCwgMTUyOTAsIDE1Mjk1LCAxNTI5OSwgMTUzMDUsIDE1MzEwLCAKKyAgICAxNTMxNiwgMTUzMTksIDE1MzI2LCAxNTMzNCwgMTUzNDEsIDE1MzQ3LCAxNTM1MywgMTUzNTgsIDE1MzY1LCAxNTM3MSwgCisgICAgMTUzNzYsIDE1MzgzLCAxNTM4NywgMTUzOTMsIDE1Mzk3LCAxNTQwNCwgMTU0MTAsIDE1NDE2LCAxNTQyNCwgMTU0MzAsIAorICAgIDE1NDM1LCAxNTQ0MSwgMTU0NDksIDE1NDU3LCAxNTQ2MywgMTU0NjksIDE1NDc0LCAxNTQ4MSwgMTU0ODYsIDE1NDkwLCAKKyAgICAxNTQ5NiwgMTU1MDEsIDE1NTA4LCAxNTUxMywgMTU1MTksIDE1NTIyLCAxNTUyOCwgMTU1MzQsIDE1NTM3LCAxNTU0MSwgCisgICAgMTU1NTMsIDE1NTU5LCAxNTU2NCwgMTU1NzEsIDE1NTc3LCAxNTU4MywgMTU1OTQsIDE1NjA0LCAxNTYxMywgMTU2MjEsIAorICAgIDE1NjI4LCAxNTYzOSwgMTU2NDksIDE1NjU5LCAxNTY2NywgMTU2NzAsIDE0MzQ2LCAxNTY3NSwgMTU2ODAsIDE0MzUxLCAKKyAgICAxNDQ4NiwgMTU2ODgsIDE1NzAxLCAxNTcxNiwgMTU3MjcsIDE0NTAzLCAxNTc0NSwgMTU3NTgsIDE1NzcxLCAxNTc4MiwgCisgICAgMTA0ODUsIDE1NzkzLCAxNTgwNiwgMTU4MjUsIDE1ODM2LCAxNTg0NywgMTU4NTgsIDI2NDksIDE1ODcxLCAxNTg3NSwgCisgICAgMTU4ODMsIDE1ODk4LCAxNTkxMywgMTU5MjQsIDE1OTMxLCAxNTkzNywgMTU5NDUsIDE1OTQ5LCAxNTk1NSwgMTU5NTgsIAorICAgIDE1OTY4LCAxNTk3NiwgMTU5ODMsIDE1OTkxLCAxNjAwMSwgMTYwMDYsIDE2MDEzLCAxNjAxOCwgMTYwMjUsIDE2MDM2LCAKKyAgICAxNjA0NiwgMTYwNTIsIDE2MDU3LCAxNjA2MiwgMTQzNTYsIDE2MDY2LCAxNjA3MiwgMTYwNzgsIDE2MDgzLCAxNjA4OCwgCisgICAgMTYwOTMsIDE2MDk3LCAxNDM2MSwgMTQzNjcsIDE2MTAxLCAxNDM3MywgMTYxMDYsIDE2MTE0LCAxNjEyMywgMTYxMzAsIAorICAgIDkxNDMsIDE2MTM0LCAxNjEzNiwgMTYxNDEsIDE2MTQ2LCAxNjE1MiwgMTYxNTcsIDE2MTYyLCAxNjE2NywgMTYxNzIsIAorICAgIDE2MTc2LCAxNjE4MiwgMTYxODgsIDE2MTkzLCAxNjE5OSwgMTYyMDQsIDE2MjA5LCAxNjIxNSwgMTYyMjAsIDE2MjI1LCAKKyAgICAxNjIzMCwgMTYyMzUsIDE2MjQxLCAxNjI0NiwgMTYyNTEsIDE2MjU3LCAxNjI2MywgMTYyNjgsIDE2MjczLCAxNjI4MCwgCisgICAgMTYyODYsIDE2Mjk3LCAxNjMwNCwgMTYzMDksIDE2MzEzLCAxNjMxNywgMTYzMjAsIDE2MzI4LCAxNjMzMywgMTYzNDAsIAorICAgIDE2MzQ3LCAxNjM1MywgMTYzNTgsIDE2MzYzLCAxNjM3MCwgMTYzODAsIDE2Mzg1LCAxNjM5MiwgMTYzOTgsIDE2NDA4LCAKKyAgICAxNjQxOCwgMTY0MzIsIDE2NDQ2LCAxNjQ2MCwgMTY0NzQsIDE2NDg5LCAxNjUwNCwgMTY1MjEsIDE2NTM5LCAxNjU1MiwgCisgICAgMTY1NTgsIDE2NTYzLCAxNjU2OCwgMTY1NzIsIDE2NTc3LCAxNjU4NSwgMTY1OTEsIDE2NTk2LCAxNjYwMSwgMTY2MDUsIAorICAgIDE2NjEwLCAxNjYxNCwgMTY2MTksIDE2NjIzLCAxNjYzNCwgMTY2NDAsIDE2NjQ1LCAxNjY1MCwgMTY2NTcsIDE2NjYyLCAKKyAgICAxNjY2NiwgMTY2NzEsIDE2Njc2LCAxNjY4MiwgMTY2ODksIDE2Njk1LCAxNjcwMCwgMTY3MDQsIDE2NzEwLCAxNjcxNSwgCisgICAgMTY3MjAsIDE2NzI0LCAxNjczMCwgMTY3MzUsIDE2NzQwLCAxNjc0NywgMTY3NTIsIDEzMTA0LCAxNjc1NiwgMTY3NjEsIAorICAgIDE2NzY1LCAxNjc3MCwgMTY3NzYsIDE2NzgyLCAxNjc4OSwgMTY3OTksIDE2ODA3LCAxNjgxNCwgMTY4MTksIDE2ODIzLCAKKyAgICAxNjgzMiwgMTY4NDAsIDE2ODQ3LCAxNjg1NCwgMTY4NjAsIDE2ODY2LCAxNjg3MSwgMTY4NzYsIDE2ODgyLCAxNjg4NywgCisgICAgMTY4OTMsIDE2ODk4LCAxNjkwNCwgMTY5MTAsIDE2OTE3LCAxNjkyMywgMTY5MjgsIDE2OTMzLCA5MzQxLCAxNjk0MiwgCisgICAgMTY5NDUsIDE2OTUxLCAxNjk1NiwgMTY5NjEsIDE2OTcxLCAxNjk3OCwgMTY5ODQsIDE2OTg5LCAxNjk5NCwgMTcwMDAsIAorICAgIDE3MDA1LCAxNzAxMSwgMTcwMTYsIDE3MDIyLCAxNzAyOCwgMTcwMzMsIDE3MDQxLCAxNzA0OCwgMTcwNTMsIDE3MDU4LCAKKyAgICAxNzA2NCwgMTcwNjksIDE3MDczLCAxNzA4MiwgMTcwOTMsIDE3MTAwLCAxNzEwNSwgMTcxMTMsIDE3MTE5LCAxNzEyNiwgCisgICAgMTcxMzIsIDE3MTM3LCAxNzE0MSwgMTcxNDcsIDE3MTUyLCAxNzE1NywgMTcxNjIsIDE0NDAsIDc3NzcsIDI4NzcsIDE3MTY2LCAKKyAgICAxNzE3MCwgMTcxNzQsIDE3MTc4LCAxNzE4MiwgMTcxODYsIDE3MTg5LCAxNzE5NiwgMTcyMDQsIDE0Mzg3LCAxNzIxMSwgCisgICAgMTcyMjEsIDE3MjI5LCAxNzIzNiwgMTcyNDQsIDE3MjU0LCAxNzI2MywgMTcyNzYsIDE3MjgxLCAxNzI4NiwgMTcyOTQsIAorICAgIDE3MzAxLCAxMzIwMCwgMTMyMDksIDE3MzA4LCAxNzMxOCwgMTczMzMsIDE3MzM5LCAxNzM0NiwgMTczNTMsIDE3MzU5LCAKKyAgICAxNzM2NywgMTczNzcsIDE3Mzg3LCAxNDM5MiwgMTczOTYsIDE3NDAyLCAxNzQwOCwgMTc0MTYsIDE3NDI0LCAxNzQyOSwgCisgICAgMTc0MzgsIDE3NDQ2LCAxNzQ1OCwgMTc0NjgsIDE3NDc4LCAxNzQ4OCwgMTc0OTcsIDE3NTA5LCAxNzUxOSwgMTc1MjksIAorICAgIDE3NTQwLCAxNzU0NSwgMTc1NTcsIDE3NTY5LCAxNzU4MSwgMTc1OTMsIDE3NjA1LCAxNzYxNywgMTc2MjksIDE3NjQxLCAKKyAgICAxNzY1MywgMTc2NjUsIDE3Njc2LCAxNzY4OCwgMTc3MDAsIDE3NzEyLCAxNzcyNCwgMTc3MzYsIDE3NzQ4LCAxNzc2MCwgCisgICAgMTc3NzIsIDE3Nzg0LCAxNzc5NiwgMTc4MDcsIDE3ODE5LCAxNzgzMSwgMTc4NDMsIDE3ODU1LCAxNzg2NywgMTc4NzksIAorICAgIDE3ODkxLCAxNzkwMywgMTc5MTUsIDE3OTI3LCAxNzkzOCwgMTc5NTAsIDE3OTYyLCAxNzk3NCwgMTc5ODYsIDE3OTk4LCAKKyAgICAxODAxMCwgMTgwMjIsIDE4MDM0LCAxODA0NiwgMTgwNTgsIDE4MDY5LCAxODA4MSwgMTgwOTMsIDE4MTA1LCAxODExNywgCisgICAgMTgxMjksIDE4MTQxLCAxODE1MywgMTgxNjUsIDE4MTc3LCAxODE4OSwgMTgyMDAsIDE4MjEyLCAxODIyNCwgMTgyMzYsIAorICAgIDE4MjQ4LCAxODI2MCwgMTgyNzIsIDE4Mjg0LCAxODI5NiwgMTgzMDgsIDE4MzIwLCAxODMzMSwgMTgzNDMsIDE4MzU1LCAKKyAgICAxODM2NywgMTgzNzksIDE4MzkxLCAxODQwMywgMTg0MTUsIDE4NDI3LCAxODQzOSwgMTg0NTEsIDE4NDYyLCAxODQ3NCwgCisgICAgMTg0ODYsIDE4NDk4LCAxODUxMCwgMTg1MjMsIDE4NTM2LCAxODU0OSwgMTg1NjIsIDE4NTc1LCAxODU4OCwgMTg2MDEsIAorICAgIDE4NjEzLCAxODYyNiwgMTg2MzksIDE4NjUyLCAxODY2NSwgMTg2NzgsIDE4NjkxLCAxODcwNCwgMTg3MTcsIDE4NzMwLCAKKyAgICAxODc0MywgMTg3NTUsIDE4NzY4LCAxODc4MSwgMTg3OTQsIDE4ODA3LCAxODgyMCwgMTg4MzMsIDE4ODQ2LCAxODg1OSwgCisgICAgMTg4NzIsIDE4ODg1LCAxODg5NywgMTg5MTAsIDE4OTIzLCAxODkzNiwgMTg5NDksIDE4OTYyLCAxODk3NSwgMTg5ODgsIAorICAgIDE5MDAxLCAxOTAxNCwgMTkwMjcsIDE5MDM5LCAxOTA1MiwgMTkwNjUsIDE5MDc4LCAxOTA5MSwgMTkxMDQsIDE5MTE3LCAKKyAgICAxOTEzMCwgMTkxNDMsIDE5MTU2LCAxOTE2OSwgMTkxODEsIDE5MTk0LCAxOTIwNywgMTkyMjAsIDE5MjMzLCAxOTI0NiwgCisgICAgMTkyNTksIDE5MjcyLCAxOTI4NSwgMTkyOTgsIDE5MzExLCAxOTMyMywgMTkzMzQsIDE5MzQ3LCAxOTM2MCwgMTkzNzMsIAorICAgIDE5Mzg2LCAxOTM5OSwgMTk0MTIsIDE5NDI1LCAxOTQzOCwgMTk0NTEsIDE5NDY0LCAxOTQ3NiwgMTk0ODksIDE5NTAyLCAKKyAgICAxOTUxNSwgMTk1MjgsIDE5NTQxLCAxOTU1NCwgMTk1NjcsIDE5NTgwLCAxOTU5MywgMTk2MDYsIDE5NjE4LCAxOTYzMSwgCisgICAgMTk2NDQsIDE5NjU3LCAxOTY3MCwgMTk2ODMsIDE5Njk2LCAxOTcwOSwgMTk3MjIsIDE5NzM1LCAxOTc0OCwgMTk3NjAsIAorICAgIDE5NzczLCAxOTc4NiwgMTk3OTksIDE5ODEyLCAxOTgyNSwgMTk4MzgsIDE5ODUxLCAxOTg2NCwgMTk4NzcsIDE5ODkwLCAKKyAgICAxOTkwMiwgMTk5MTUsIDE5OTI4LCAxOTk0MSwgMTk5NTQsIDE5OTY3LCAxOTk4MCwgMTk5OTMsIDIwMDA2LCAyMDAxOSwgCisgICAgMjAwMzIsIDIwMDQ0LCAyMDA1NywgMjAwNzAsIDIwMDgzLCAyMDA5NiwgMjAxMDksIDIwMTIyLCAyMDEzNSwgMjAxNDgsIAorICAgIDIwMTYxLCAyMDE3NCwgMjAxODYsIDIwMTk5LCAyMDIxMiwgMjAyMjUsIDIwMjM4LCAyMDI1MSwgMjAyNjQsIDIwMjc3LCAKKyAgICAyMDI5MCwgMjAzMDMsIDIwMzE2LCAyMDMyOCwgMjAzNDEsIDIwMzU0LCAyMDM2NywgMjAzODAsIDIwMzkzLCAyMDQwNiwgCisgICAgMjA0MTksIDIwNDMyLCAyMDQ0NSwgMjA0NTgsIDIwNDcwLCAyMDQ4MywgMjA0OTYsIDIwNTA5LCAyMDUyMiwgMjA1MzUsIAorICAgIDIwNTQ4LCAyMDU2MSwgMjA1NzQsIDIwNTg3LCAyMDYwMCwgMjA2MTIsIDIwNjI1LCAyMDYzOCwgMjA2NTEsIDIwNjY0LCAKKyAgICAyMDY3NywgMjA2OTAsIDIwNzAzLCAyMDcxNiwgMjA3MjksIDIwNzQyLCAyMDc1NCwgMjA3NjUsIDIwNzczLCAyMDc4MSwgCisgICAgMjA3ODgsIDIwNzk0LCAyMDc5OCwgMjA4MDQsIDIwODEwLCAyMDgxOCwgMjA4MjQsIDIwODI5LCAyMDgzMywgMjA4NDIsIAorICAgIDkxNDgsIDIwODUzLCAyMDg2MCwgMjA4NjgsIDIwODc1LCAyMDg4MiwgMTA5NDEsIDIwODg5LCAyMDg5OCwgMjA5MDMsIAorICAgIDIwOTA4LCA3ODA1LCAyMDkxNSwgMjA5MjAsIDIwOTIzLCAyMDkyOCwgMjA5MzYsIDIwOTQzLCAyMDk1MCwgMjA5NTcsIAorICAgIDIwOTYzLCAyMDk3MiwgMjA5ODEsIDIwOTg3LCAyMDk5NiwgMjEwMDAsIDIxMDA2LCAyMTAxMSwgMjEwMjEsIDIxMDI4LCAKKyAgICAyMTAzNCwgMjEwNDIsIDIxMDQ4LCAyMTA1NSwgMjEwNjUsIDIxMDc0LCAyMTA3OCwgMjEwODUsIDIxMDg5LCAyMTA5NCwgCisgICAgMjExMDAsIDIxMTA4LCAyMTExMiwgMjExMjIsIDE0NDAyLCAyMTEzMSwgMjExMzcsIDIxMTQxLCAyMTE1MCwgMTQ0MDcsIAorICAgIDIxMTU2LCAyMTE2MywgMjExNzQsIDIxMTgyLCAyMTE5MSwgMjExOTksIDg5MzEsIDIxMjA3LCAyMTIxMiwgMjEyMTgsIAorICAgIDIxMjIzLCAyMTIyNywgMjEyMzEsIDIxMjM1LCA5NjMyLCAyMTI0MCwgMjEyNDgsIDIxMjU1LCAyMTI2NCwgMjEyNzEsIAorICAgIDIxMjc4LCAxMDg3MSwgMjEyODUsIDIxMjkxLCAyMTI5NSwgMjEzMDEsIDIxMzA4LCAyMTMxNCwgMjEzMjIsIDIxMzI4LCAKKyAgICAyMTMzNSwgMjEzNDEsIDIxMzQ3LCAyMTM1NiwgMjEzNjAsIDIxMzY4LCAyMTM3NywgMjEzODQsIDIxMzg5LCAyMTM5MywgCisgICAgMjE0MDQsIDIxNDA5LCAyMTQxNCwgMjE0MTksIDIxNDMyLCA3OTk1LCAyMTQzNiwgMjE0NDIsIDIxNDUwLCAyMTQ1NCwgCisgICAgMjE0NjEsIDIxNDcwLCAyMTQ3NSwgMTQ2NzgsIDIxNDgzLCAyMTQ4NywgMjE0OTksIDIxNTA0LCAyMTUwOCwgMjE1MTEsIAorICAgIDIxNTE3LCAyMTUyMywgMjE1MjgsIDIxNTMyLCAyMTUzNSwgMjE1NDYsIDIxNTUxLCA5Mzc2LCAyMTU1OCwgMjE1NjMsIAorICAgIDkzODEsIDIxNTY4LCAyMTU3MywgMjE1NzgsIDIxNTgzLCAyMTU4OCwgMjE1OTMsIDIxNTk4LCAyMTYwMywgMjE2MDgsIAorICAgIDIxNjEzLCAyMTYxOCwgMjE2MjMsIDIxNjI5LCAyMTYzNCwgMjE2MzksIDIxNjQ0LCAyMTY0OSwgMjE2NTQsIDIxNjU5LCAKKyAgICAyMTY2NCwgMjE2NjksIDIxNjc0LCAyMTY4MCwgMjE2ODYsIDIxNjkxLCAyMTY5NiwgMjE3MDEsIDIxNzA2LCAyMTcxMSwgCisgICAgMjE3MTYsIDIxNzIxLCAyMTcyNiwgMjE3MzEsIDIxNzM3LCAyMTc0MiwgMjE3NDcsIDIxNzUyLCAyMTc1OCwgMjE3NjQsIAorICAgIDIxNzY5LCAyMTc3NCwgMjE3NzksIDIxNzg0LCAyMTc4OSwgMjE3OTQsIDIxNzk5LCAyMTgwNCwgMjE4MTAsIDIxODE1LCAKKyAgICAyMTgyMCwgMjE4MjUsIDIxODMwLCAyMTgzNiwgMjE4NDEsIDIxODQ2LCAyMTg1MCwgMTM2OCwgMTI5LCAyMTg1OCwgMjE4NjIsIAorICAgIDIxODY2LCAyMTg3MCwgMjE4NzUsIDIxODc5LCAxMzExMCwgMTI0NjksIDIxODgzLCAyMTg4OCwgMjE4OTIsIDIxODk3LCAKKyAgICAyMTkwMSwgMjE5MDYsIDIxOTEwLCAyMTkxNiwgMjE5MjEsIDIxOTI1LCAyMTkyOSwgMjE5MzcsIDIxOTQxLCAyMTk0NSwgCisgICAgMjE5NTAsIDIxOTU1LCAyMTk1OSwgMjE5NjUsIDIxOTcwLCAyMTk3NCwgMjE5NzksIDIxOTg0LCAyMTk4OCwgMjE5OTUsIAorICAgIDIyMDAyLCAyMjAwOSwgMjIwMTMsIDIyMDE3LCAyMjAyMiwgMjIwMjYsIDIyMDI5LCAyMjAzNSwgMjIwNDgsIDIyMDUzLCAKKyAgICAyMjA2MiwgMjIwNjcsIDk0MjEsIDIyMDcyLCAyMjA3NSwgMjcxMiwgMjcxNywgMjIwNzksIDIyMDg1LCAyMjA5MSwgNzIwOSwgCisgICAgMjIwOTYsIDIyMTAxLCAyMjEwNiwgMjIxMTIsIDIyMTE3LCAxMzg5NiwgMjIxMjIsIDIyMTI3LCAyMjEzMiwgMjIxMzcsIAorICAgIDIyMTQzLCAyMjE0OCwgMjIxNTMsIDIyMTU5LCAyMjE2NCwgMjIxNjgsIDIyMTczLCAyMjE3OCwgMjIxODMsIDIyMTg4LCAKKyAgICAyMjE5MiwgMjIxOTcsIDIyMjAxLCAyMjIwNiwgMjIyMTEsIDIyMjE2LCAyMjIyMSwgMjIyMjUsIDIyMjMwLCAyMjIzNCwgCisgICAgMjIyMzksIDIyMjQ0LCAyMjI0OSwgMjIyNTQsIDI4ODYsIDIyMTY5LCAyMjI1OCwgMjIyNjYsIDIyMjczLCA5NzI2LCAKKyAgICAyMjI4NSwgMjIyOTMsIDIyMTc0LCAyMjMwMCwgMjIzMDUsIDIyMzEzLCAyMjE3OSwgMjIzMTgsIDIyMzIzLCAyMjMzMSwgCisgICAgMjIzMzYsIDIyMTg0LCAyMjM0MSwgMjIzNDYsIDIyMzUwLCAyMjM1NiwgMjIzNjQsIDIyMzY3LCAyMjM3NCwgMjIzNzgsIAorICAgIDIyMzgyLCAyMjM4OCwgMjIzOTUsIDIyNDAwLCA4OTU4LCAxNzI3LCAxNzMyLCAyMjQwNCwgMjI0MTAsIDIyNDE2LCAyMjQyMSwgCisgICAgMjI0MjUsIDIyNDI5LCAyMjQzMywgMjI0MzcsIDIyNDQxLCAyMjQ0NSwgMjI0NDksIDIyNDUyLCAyMjQ1OCwgMjI0NjUsIAorICAgIDIyNDczLCAyMjQ3OSwgMjI0ODUsIDIyNDkwLCAyMjQ5NSwgMjI0OTksIDEzODE2LCAxMzgyMywgMjI1MDQsIDIyNTE2LCAKKyAgICAyMjUxOSwgMjI1MjYsIDE2MzQ5LCAyMjUzMywgMjI1NDEsIDIyNTUyLCAyMjU2MSwgMjI1NzQsIDIyNTg0LCAyMjU5OCwgCisgICAgMjI2MTAsIDIyNjI0LCAyMjYzNiwgMjI2NDYsIDIyNjU4LCAyMjY2NCwgMjI2NzksIDIyNzAzLCAyMjcyMSwgMjI3NDAsIAorICAgIDIyNzUzLCAyMjc2NywgMjI3ODUsIDIyODAxLCAyMjgxOCwgMjI4MzYsIDIyODQ3LCAyMjg2NiwgMjI4ODMsIDIyOTAzLCAKKyAgICAyMjkyMSwgMjI5MzMsIDIyOTQ3LCAyMjk2MSwgMjI5NzMsIDIyOTkwLCAyMzAwOSwgMjMwMjcsIDIzMDM5LCAyMzA1NywgCisgICAgMjMwNzYsIDE0NTQ2LCAyMzA4OSwgMjMxMDksIDIzMTIxLCAxMDUxNiwgMjMxMzMsIDIzMTM4LCAyMzE0MywgMjMxNDgsIAorICAgIDIzMTU0LCAyMzE1OSwgMjMxNjMsIDIzMTcwLCAyMzk4LCAyMzE3NCwgMjMxODAsIDIzMTg0LCAyMzE4NywgMjMxOTEsIAorICAgIDIzMTk5LCAyMzIwNSwgMjIyMDIsIDIzMjA5LCAyMzIxOCwgMjMyMjksIDIzMjM1LCAyMzI0MSwgMjMyNTAsIDIzMjU4LCAKKyAgICAyMzI2NSwgMjMyNzAsIDIzMjc0LCAyMzI4MSwgMjMyODcsIDIzMjk2LCAyMzMwNCwgMjMzMTEsIDIzMzIxLCAyMzMzMCwgCisgICAgMjMzNDAsIDIzMzQ1LCAyMzM1NCwgMjMzNjMsIDIzMzc0LCAyMzM4NSwgMzk2MywgMjMzOTUsIDIzMzk5LCAyMzQwOSwgCisgICAgMjM0MTcsIDIzNDI3LCAyMzQzOCwgMjM0NDMsIDIzNDUzLCAyMzQ2MSwgMjM0NjgsIDIzNDc0LCAyMzQ4MSwgMjM0ODYsIAorICAgIDIyMjEyLCAyMzQ5MCwgMjM0OTksIDIzNTAzLCAyMzUwNiwgMjM1MTEsIDIzNTE4LCAyMzUyNywgMjM1MzUsIDIzNTQzLCAKKyAgICAyMzU1MywgMjM1NjIsIDIzNTY4LCAyMzU3NCwgMjIyMTcsIDIyMjIyLCAyMzU3OCwgMjM1ODgsIDIzNTk4LCAyMzYwOCwgCisgICAgMjM2MTYsIDIzNjIzLCAyMzYzMywgMjM2NDEsIDIzNjQ5LCAyMzY1NSwgMjM2NjMsIDkzMCwgMjM2NzIsIDE0NzM3LCA1NDIsIAorICAgIDIzNjg2LCAyMzY5NSwgMjM3MDMsIDIzNzE0LCAyMzcyNSwgMjM3MzUsIDIzNzQ0LCAyMzc1NiwgMjM3NjUsIDIzNzc0LCAKKyAgICAyMzc4MCwgMjM3ODksIDIzNzk4LCAyMzgwOCwgMjM4MTYsIDIzODI0LCA5MzUzLCAyMzgzMCwgMjM4MzMsIDIzODM3LCAKKyAgICAyMzg0MiwgMjM4NDcsIDk4NDEsIDIyMjM1LCAyMjI0MCwgMjM4NTUsIDIzODYxLCAyMzg2NywgMjM4NzIsIDIzODc3LCAKKyAgICAyMzg4MSwgMjM4ODksIDIzODk1LCAyMzkwMSwgMjM5MDUsIDM1MjUsIDIzOTEzLCAyMzkxOCwgMjM5MjMsIDIzOTI3LCAKKyAgICAyMzkzMSwgOTkyMSwgMjM5MzgsIDIzOTQ2LCAyMzk2MCwgMjM5NjcsIDIzOTczLCA5OTMwLCA5OTM2LCAyMzk4MSwgMjM5ODksIAorICAgIDIzOTk2LCAyNDAwMSwgMjQwMDYsIDIyMjQ1LCAyNDAxMiwgMjQwMjMsIDI0MDI3LCAyNDAzMiwgMjYwMSwgMjQwMzcsIAorICAgIDI0MDQ4LCAyNDA1NCwgMjQwNTksIDI0MDYzLCAyNDA2NywgMjQwNzAsIDI0MDc3LCAyNDA4NCwgMjQwOTEsIDI0MDk3LCAKKyAgICAyNDEwMSwgMjIyNTAsIDI0MTA2LCAyNDExMCwgMjQxMTQsIDEwMzcsIDI0MTE5LCAyNDEyNCwgMjQxMjksIDI0MTM0LCAKKyAgICAyNDEzOSwgMjQxNDQsIDI0MTQ5LCAyNDE1NCwgMjQxNTksIDI0MTY0LCAyNDE2OSwgMjQxNzQsIDI0MTc5LCAyNDE4NCwgCisgICAgMjQxOTAsIDI0MTk1LCAyNDIwMCwgMjQyMDUsIDI0MjEwLCAyNDIxNSwgMjQyMjAsIDI0MjI2LCAyNDIzMSwgMjQyMzYsIAorICAgIDI0MjQxLCAyNDI0NiwgMjQyNTEsIDI0MjU2LCAyNDI2MSwgMjQyNjcsIDI0MjczLCAyNDI3OCwgMjQyODQsIDI0Mjg5LCAKKyAgICAyNDI5NCwgNSwgMjQzMDAsIDI0MzA0LCAyNDMwOCwgMjQzMTIsIDI0MzE3LCAyNDMyMSwgMjQzMjUsIDI0MzI5LCAyNDMzMywgCisgICAgMjQzMzgsIDI0MzQyLCAyNDM0NywgMjQzNTEsIDI0MzU0LCAyNDM1OCwgMjQzNjMsIDI0MzY3LCAyNDM3MiwgMjQzNzYsIAorICAgIDI0MzgwLCAyNDM4NCwgMjQzODksIDI0MzkzLCAyNDM5NywgMjQ0MDcsIDI0NDEyLCAyNDQxNiwgMjQ0MjAsIDI0NDI1LCAKKyAgICAyNDQzMCwgMjQ0MzksIDI0NDQ0LCAyNDQ0OSwgMjQ0NTMsIDI0NDU3LCAyNDQ3MCwgMjQ0ODIsIDI0NDkxLCAyNDUwMCwgCisgICAgMjQ1MDYsIDI0NTExLCAyNDUxNSwgMjQ1MTksIDI0NTI5LCAyNDUzOCwgMjQ1NDYsIDI0NTUyLCAyNDU1NywgMjQ1NjEsIAorICAgIDI0NTY4LCAyNDU3OCwgMjQ1ODcsIDI0NTk1LCAyNDYwMywgMjQ2MTAsIDI0NjE4LCAyNDYyNywgMjQ2MzYsIDI0NjQ0LCAKKyAgICAyNDY0OSwgMjQ2NTMsIDI0NjU3LCAyNDY2MCwgMjQ2NjIsIDI0NjY2LCAyNDY3MCwgMjQ2NzUsIDI0NjgwLCAyNDY4NCwgCisgICAgMjQ2ODgsIDI0NjkxLCAyNDY5NSwgMjQ2OTgsIDI0NzAyLCAyNDcwNSwgMjQ3MDgsIDI0NzEyLCAyNDcxOCwgMjQ3MjIsIAorICAgIDI0NzI2LCAyNDczMCwgMjQ3MzUsIDI0NzQwLCAyNDc0NSwgMjQ3NDksIDI0NzUyLCAyNDc1NywgMjQ3NjMsIDI0NzY4LCAKKyAgICAyNDc3NCwgMjQ3NzksIDI0NzgzLCAyNDc4NywgMjQ3OTEsIDI0Nzk2LCAyNDgwMCwgMjQ4MDUsIDI0ODA5LCAyNDgxMywgCisgICAgMjQ4MjAsIDI0ODI0LCAyNDgyNywgMjQ4MzEsIDI0ODM3LCAyNDg0MywgMjQ4NDcsIDI0ODUxLCAyNDg1NiwgMjQ4NjMsIAorICAgIDI0ODY5LCAyNDg3MywgMjQ4ODIsIDI0ODg2LCAyNDg5MCwgMjQ4OTMsIDI0ODk5LCAyNDkwNCwgMjQ5MTAsIDE0ODksIAorICAgIDE3OTEsIDI0OTE1LCAyNDkyMCwgMjQ5MjUsIDI0OTMwLCAyNDkzNSwgMjQ5NDAsIDI0OTQ1LCAyMTQ4LCAyMTk0LCAyNDk1MCwgCisgICAgMjQ5NTMsIDI0OTU3LCAyNDk2MSwgMjQ5NjYsIDI0OTcwLCAyNDk3NCwgMjQ5NzcsIDI0OTgyLCAyNDk4NywgMjQ5OTEsIAorICAgIDI0OTk0LCAyNDk5OSwgMjUwMDMsIDI1MDA4LCAyNTAxMiwgMTQ3NDksIDI1MDE3LCAyNTAyMCwgMjUwMjMsIDI1MDI3LCAKKyAgICAyNTAzMiwgMjUwMzYsIDI1MDQ5LCAyNTA1MywgMjUwNTYsIDI1MDY0LCAyNTA3MywgMjUwODAsIDI1MDg1LCAyNTA5MSwgCisgICAgMjUwOTcsIDI1MTA1LCAyNTExMiwgMjUxMTksIDI1MTIzLCAyNTEyNywgMjUxMzEsIDI1MTM2LCAyNTE0MSwgMjUxNDUsIAorICAgIDI1MTUzLCAyNTE1OCwgMjUxNzAsIDI1MTgxLCAyNTE4NiwgMjUxOTAsIDI1MTk0LCAyNTIwMCwgMjUyMDUsIDI1MjEwLCAKKyAgICAyNTIxNCwgMjUyMTgsIDI1MjIxLCAyNTIyNywgNzkxNSwgMjMxNiwgMjUyMzEsIDI1MjM2LCAyNTI1MiwgOTQ2OCwgMjUyNzIsIAorICAgIDI1MjgxLCAyNTI5NywgMjUzMDEsIDI1MzA0LCAyNTMxMCwgMjUzMjAsIDI1MzI2LCAyNTMzNSwgMjUzNTAsIDI1MzYyLCAKKyAgICAyNTM3MywgMjUzODEsIDI1MzkwLCAyNTM5NiwgMjU0MDUsIDI1NDE1LCAyNTQyNiwgMjU0MzcsIDI1NDQ2LCAyNTQ1MywgCisgICAgMjU0NjIsIDI1NDcwLCAyNTQ3NywgMjU0ODUsIDI1NDkyLCAyNTQ5OSwgMjU1MTIsIDI1NTE5LCAyNTUyNSwgMjU1MzAsIAorICAgIDI1NTM5LCAyNTU0NSwgMjU1NTAsIDI1NTU4LCAyNTU2NSwgMjM0MTksIDI1NTc3LCAyNTU4OSwgMjU2MDMsIDI1NjExLCAKKyAgICAyNTYxOCwgMjU2MzAsIDI1NjM5LCAyNTY0OCwgMjU2NTYsIDI1NjY0LCAyNTY3MiwgMjU2NzksIDI1Njg4LCAyNTY5NiwgCisgICAgMjU3MDYsIDI1NzE1LCAyNTcyNSwgMjU3MzQsIDI1NzQzLCAyNTc1MSwgMjU3NTYsIDI1NzYwLCAyNTc2MywgMjU3NjcsIAorICAgIDI1NzcxLCAyNTc3NSwgMjU3NzksIDI1NzgzLCAyNTc4OSwgMjU3OTUsIDI1ODAzLCAxNDc5NCwgMjU4MTAsIDI1ODE1LCAKKyAgICAyNTgyMiwgMjU4MjgsIDI1ODM1LCAxNDgwMiwgMjU4NDIsIDI1ODQ1LCAyNTg1NywgMjU4NjUsIDI1ODcxLCAyNTg3NiwgCisgICAgMjU4ODAsIDk4NzEsIDI1ODkxLCAyNTkwMSwgMjU5MTAsIDI1OTE3LCAyNTkyMSwgMTQ4MDcsIDI1OTI0LCAyNTkzMSwgCisgICAgMjU5MzUsIDI1OTQxLCAyNTk0NCwgMjU5NTEsIDI1OTU3LCAyNTk2NCwgMjU5NzAsIDI1OTc0LCAyNTk3OSwgMjU5ODMsIAorICAgIDI1OTkyLCAyNTk5OSwgMjYwMDUsIDc5NTYsIDI2MDEyLCAyNjAyMCwgMjYwMjcsIDI2MDMzLCAyNjAzOCwgMjYwNDQsIAorICAgIDI2MDUwLCAyNjA1OCwgMjYwNjIsIDI2MDY1LCAyNjA2NywgMjU3NjgsIDI2MDc2LCAyNjA4MiwgMjYwOTIsIDI2MDk3LCAKKyAgICAyNjEwNCwgMjYxMTAsIDI2MTE1LCAyNjEyMCwgMjYxMjUsIDI2MTI5LCAyNjEzNCwgMjYxNDEsIDI2MTUwLCAyNjE1NCwgCisgICAgMjYxNjEsIDI2MTcwLCAyNjE3NiwgMjYxODEsIDI2MTg3LCAyNjE5MiwgMjYxOTksIDI2MjEwLCAyNjIxNSwgMjYyMTksIAorICAgIDI2MjI5LCAyNjIzNSwgMjYyMzksIDI2MjQ0LCAyNjI1NCwgMjYyNjMsIDI2MjY3LCAyNjI3NCwgMjYyODIsIDI2Mjg5LCAKKyAgICAyNjI5NSwgMjYzMDAsIDI2MzA4LCAyNjMxNSwgMjYzMjcsIDI2MzM2LCAyNjM0MCwgMTMwNDYsIDI2MzQ4LCAyNjM1OCwgCisgICAgMjYzNjIsIDI1MDYwLCAyNjM3MywgMjYzNzgsIDI2MzgyLCAyNjM4OSwgMjYzOTYsIDIxOTYxLCAyNTY5MywgMjY0MDEsIAorICAgIDI2NDA1LCAyNjQwOCwgMjI4NTMsIDI2NDEzLCAyNjQyNywgMjY0NDMsIDI2NDYxLCAyNjQ4MCwgMjY0OTcsIDI2NTE1LCAKKyAgICAyMjg3MiwgMjY1MzIsIDI2NTUyLCAyMjg4OSwgMjY1NjQsIDI2NTc2LCAxNTczMiwgMjY1ODgsIDIyOTA5LCAyNjYwMiwgCisgICAgMjY2MTQsIDEwNTI5LCAyNjYyOCwgMjY2MzMsIDI2NjM4LCAyNjY0MywgMjY2NDksIDI2NjU1LCAyNjY2MSwgMjY2NjUsIAorICAgIDI2NjcyLCAyNjY3NywgMjY2ODcsIDI2NjkzLCAxMDE3NiwgMjY2OTksIDI2NzAxLCAyNjcwNiwgMjY3MTQsIDI2NzE4LCAKKyAgICAyNjEzNywgMjY3MjQsIDI2NzMxLCAxMTUxNywgMTE1MjcsIDI2NzM4LCAyNjc0OCwgMjY3NTMsIDI2NzU3LCAyNjc2MCwgCisgICAgMjY3NjYsIDI2Nzc0LCAyNjc4NiwgMjY3OTYsIDI2ODEyLCAyNjgyNSwgMjY4MzksIDE1NzUwLCAyNjg1MywgMjY4NjAsIAorICAgIDI2ODY0LCAyNjg2NywgMjY4NzIsIDI2ODc2LCAyNjg4MywgMjY4OTAsIDI2OTAwLCAyNjkwNSwgMjY5MTAsIDI2OTE1LCAKKyAgICAyNjkyMywgMjY5MzEsIDI2OTQwLCAyNjk0NSwgOTU2NSwgMjY5NDksIDI2OTUyLCAyNjk1NSwgMjY5NjAsIDI2OTY3LCAKKyAgICAyNjk3MiwgMjY5ODgsIDI2OTk2LCAyNzAwNCwgOTQxNiwgMjcwMTIsIDI3MDE3LCAyNzAyMSwgMjcwMjcsIDI3MDMzLCAKKyAgICAyNzAzNiwgMjcwNDIsIDI3MDU0LCAyNzA2MiwgMjcwNjksIDI3MDc1LCAyNzA4MiwgMjcwOTMsIDI3MTA3LCAyNzEyMCwgCisgICAgMjcxMjksIDI3MTM4LCAyNzE1MCwgMjcxNjEsIDI3MTcxLCAyNzE4MCwgMjcxODksIDI3MTk3LCAyNzIwOCwgNzkzOCwgCisgICAgMjcyMTUsIDI3MjIxLCAyNzIyNiwgMjcyMzIsIDI3MjM5LCAyNzI0OSwgMjcyNTksIDI3MjY4LCAyNzI3NCwgMjcyODEsIAorICAgIDI3Mjg2LCAyNzI5MywgMjczMDEsIDI3MzA5LCAyNzMyMSwgNjI0NiwgMjczMjgsIDI3MzM3LCAyNzM0NSwgMjczNTEsIAorICAgIDI3MzU3LCAyNzM2MiwgMjczNjYsIDI3MzY5LCAyNzM3NSwgMjczODIsIDI3Mzg3LCAyNzM5MiwgMjczOTYsIDI3NDA4LCAKKyAgICAyNzQxOSwgMjc0MjgsIDI3NDM2LCAxNDkzNCwgMjc0NDEsIDI3NDQ3LCAyNzQ1MywgMTE1MTAsIDg2MzUsIDI3NDU4LCAKKyAgICAyNzQ2MiwgMjc0NjUsIDI3NDY4LCAyNzQ3NCwgMjc0ODIsIDI3NDkwLCAyNzQ5NCwgMjc0OTgsIDI3NTAzLCAyNzUwNiwgCisgICAgMjc1MTUsIDI3NTE5LCAyNzUyNywgMjc1MzgsIDI3NTQyLCAyNzU0OCwgMjc1NTQsIDI3NTU4LCAyNzU2NCwgMjc1NzIsIAorICAgIDI3NTk0LCAyNzYxOCwgMjc2MjUsIDI3NjMyLCAyNzYzOCwgMjc2NDYsIDI3NjUyLCAyNzY1NywgMjc2NjgsIDI3Njg2LCAKKyAgICAyNzY5MywgMjc3MDEsIDI3NzA1LCAyNzcxNCwgMjc3MjcsIDI3NzM1LCAyNzc0NywgMjc3NTgsIDI3NzY4LCAyNzc4MiwgCisgICAgMjc3OTEsIDI3Nzk5LCAyNzgxMSwgOTQ4NSwgMjc4MjIsIDI3ODMzLCAyNzg0NSwgMjc4NTUsIDI3ODY0LCAyNzg2OSwgCisgICAgMjc4NzMsIDI3ODgxLCAyNzg5MSwgMjc4OTYsIDI3OTAwLCAyNzkwMywgMjc5MDYsIDI3OTE0LCAyNzkyMiwgMjc5MzEsIAorICAgIDI3OTQxLCAyNzk1MCwgMjc5NTYsIDI3OTcwLCAyNjYzLCAyNzk5MiwgMjgwMDMsIDI4MDEyLCAyODAyMiwgMjgwMzQsIAorICAgIDI4MDQzLCAyODA1MiwgMjgwNjIsIDI4MDcwLCAyODA3OCwgMjgwODcsIDI4MDkyLCAyODEwMywgMjgxMDgsIDI4MTE5LCAKKyAgICAyODEyMywgMjgxMzMsIDI4MTQyLCAyODE1MCwgMjgxNjAsIDI4MTcwLCAyODE3OCwgMjgxODcsIDI4MTk0LCAyODIwMiwgCisgICAgMjgyMDksIDI4MjE4LCAyODIyMiwgMjgyMzAsIDI4MjM3LCAyODI0NSwgMjgyNTIsIDI4MjYzLCAyODI3OCwgMjgyODUsIAorICAgIDI4MjkxLCAyODMwMSwgMjgzMTAsIDI4MzE2LCAyODMyMCwgMjgzMjcsIDI4MzMxLCAxNDAxOCwgMjgzMzcsIDI4MzQxLCAKKyAgICAyODM0NiwgMjgzNTMsIDI4MzU3LCAyODM2MSwgMjgzNjksIDI4Mzc3LCAyODM4MywgMjgzOTIsIDI4Mzk5LCAyODQwNCwgCisgICAgMjg0MDksIDI4NDE5LCAyMzQ4OCwgMjg0MjMsIDI4NDI2LCAyODQzMSwgMjg0MzYsIDI4NDQxLCAyODQ0NiwgMjg0NTEsIAorICAgIDI4NDU2LCAyODQ2MSwgMjg0NjYsIDI4NDcyLCAyODQ3NywgMjg0ODIsIDI4NDg4LCAxMjE4LCA3MDQsIDI4NDkzLCAyODUwMiwgCisgICAgMjM2NCwgMjg1MDksIDI4NTE0LCAyODUxOCwgMjg1MjQsIDEyNjcsIDU0NiwgMzE4LCAyODUyOSwgMjg1MzgsIDI4NTQ2LCAKKyAgICAyODU1NSwgMjg1NjMsIDI4NTc0LCAyODU4MywgMjg1OTEsIDI4NTk1LCAyODU5OCwgMjg2MDYsIDI4NjE0LCAyODYxOSwgCisgICAgMTQ3NjIsIDI4NjI1LCAyODYzMSwgMjg2MzcsIDU4NzIsIDI4NjQyLCAyODY0NiwgMjg2NTIsIDI4NjU2LCAyODY2MywgCisgICAgMTQ1NSwgMjg2NjksIDI4Njc2LCA5NTcyLCAyODY4MCwgMjg2OTAsIDI4Njk4LCAyODcwNCwgMjg3MTMsIDI4NzIxLCAKKyAgICAyODcyNywgMjg3MzUsIDI4NzQyLCAxMTEwMywgMjg3NDgsIDI4NzU1LCAyODc2MCwgMjg3NjcsIDE0OTYsIDIxNDcsIAorICAgIDI4NzczLCAyODc3OSwgMjg3ODYsIDI4Nzk3LCAyODgwOCwgMjg4MTYsIDI4ODIzLCAyODgzMywgMjg4NDIsIDI4ODUwLCAKKyAgICAyODg1OSwgMjg4NjYsIDI4ODczLCAyODg4NiwgMjg4OTcsIDEyNzIsIDI4OTE2LCAyODkyMSwgMjg5MjksIDM1NzUsIAorICAgIDI4OTMzLCAyODkzOCwgMjg5NDIsIDE0NTksIDI0Njg5LCAyODk1MiwgMjg5NTYsIDI4OTYxLCAyODk2NSwgMzQ5MywgCisgICAgMjg5NzEsIDI4OTc5LCAyODk4NiwgMjg5OTcsIDI5MDA1LCAyOTAxMywgMzU3NiwgMjc5LCAyOTAxOCwgMjkwMjYsIDI5MDM0LCAKKyAgICAyOTA0MSwgMjkwNDcsIDI5MDUyLCAyMjE2LCAyOTA1OSwgMjkwNjUsIDI1OTc1LCAyNjIwNSwgMjkwNzEsIDEwNiwgMjkwNzUsIAorICAgIDI5MDc5LCAyOTA4NSwgNjE1LCA5MzIxLCAyOTA5MCwgMjkwOTcsIDI5MTAzLCAyMzI3LCAyOTEwNywgMjkxMTEsIDE1MTc0LCAKKyAgICAyOTExNCwgMjkxMTksIDI5MTI2LCAyOTEzMiwgMjkxMzcsIDI5MTQ1LCAyOTE1MiwgMjkxNTgsIDIyMzM4LCAyOTE2MiwgCisgICAgMjkxNjYsIDM2NDYsIDE2NjEyLCAyOTE3MCwgMjkxNzUsIDI5MTc4LCAyOTE4NiwgMjkxOTQsIDI5MTk5LCAyOTIwMiwgCisgICAgMjkyMDksIDI5MjE5LCAyOTIzMSwgMjkyMzYsIDI5MjQwLCAyOTI0OCwgMjkyNTUsIDI5MjYxLCAyOTI2OCwgMjkyNzUsIAorICAgIDI5Mjc4LCAyOTI4MiwgMjkyODYsIDE0NjMsIDI5Mjk2LCAyOTI5OCwgMjkzMDMsIDI5MzA5LCAyOTMxNSwgMjkzMjAsIAorICAgIDI5MzI1LCAyOTMzMCwgMjkzMzUsIDI5MzQwLCAyOTM0NSwgMjkzNTAsIDI5MzU1LCAyOTM2MCwgMjkzNjUsIDI5MzcwLCAKKyAgICAyOTM3NSwgMjkzODAsIDI5Mzg1LCAyOTM5MSwgMjkzOTcsIDI5NDAzLCAyOTQwOSwgMjk0MTQsIDI5NDE5LCAyOTQyNCwgCisgICAgMjk0MzAsIDI5NDM1LCAyOTQ0MCwgMjk0NDUsIDI5NDUxLCAyOTQ1NiwgMjk0NjIsIDI5NDY3LCAyOTQ3MiwgMjk0NzcsIAorICAgIDI5NDgyLCAyOTQ4OCwgMjk0OTMsIDI5NDk5LCAyOTUwNCwgMjk1MDksIDI5NTE0LCAyOTUxOSwgMjk1MjUsIDI5NTMwLCAKKyAgICAyOTUzNiwgMjk1NDEsIDI5NTQ2LCAyOTU1MSwgMjk1NTYsIDI5NTYxLCAyOTU2NiwgMjk1NzEsIDI5NTc2LCAyOTU4MSwgCisgICAgMjk1ODcsIDI5NTkzLCAyOTU5OSwgMjk2MDQsIDI5NjA5LCAyOTYxNCwgMjk2MTksIDI5NjI1LCAyOTYzMSwgMjk2MzcsIAorICAgIDI5NjQzLCAyOTY0OSwgMjk2NTUsIDI5NjYwLCAyOTY2NiwgMjk2NzEsIDI5Njc2LCAyOTY4MSwgMjk2ODYsIDI5NjkyLCAKKyAgICAyNDQzLCAyOTY5NywgMjQ1MCwgMjQ1NywgMjc1NCwgMjk3MDIsIDI0NjMsIDI0NzMsIDI5NzA4LCAyOTcxMiwgMjk3MTcsIAorICAgIDI5NzIyLCAyOTcyOCwgMjk3MzMsIDI5NzM4LCAyOTc0MiwgMjk3NDcsIDI5NzUzLCAyOTc1OCwgMjk3NjMsIDI5NzY4LCAKKyAgICAyOTc3NCwgMjk3NzksIDI5NzgzLCAyOTc4NywgMjk3OTIsIDI5Nzk3LCAyOTgwMiwgMjk4MDcsIDI5ODEyLCAyOTgxOCwgCisgICAgMjk4MjQsIDI5ODI5LCAyOTgzMywgMjk4MzgsIDI5ODQ0LCAyOTg0OCwgMjk4NTMsIDI5ODU4LCAyOTg2MywgMjk4NjgsIAorICAgIDI5ODcyLCAyOTg3NSwgMjk4ODAsIDI5ODg1LCAyOTg5MCwgMjk4OTUsIDI5OTAwLCAyOTkwNiwgMjk5MTIsIDI5OTE3LCAKKyAgICAyOTkyMiwgMjk5MjYsIDI5OTMxLCAyOTkzNiwgMjk5NDEsIDI5OTQ2LCAyOTk1MSwgMjk5NTUsIDI5OTYwLCAyOTk2NSwgCisgICAgMjk5NzAsIDI5OTc0LCAyOTk3OCwgMjk5ODIsIDI5OTg3LCAyOTk5NSwgMzAwMDAsIDMwMDA2LCAzMDAxMiwgMzAwMTgsIAorICAgIDMwMDIzLCAzMDAyNywgMzAwMzAsIDMwMDM1LCAzMDA0MCwgMzAwNDQsIDMwMDQ5LCAzMDA1MywgMzAwNTgsIDMwMDYyLCAKKyAgICAzMDA2NSwgMzAwNzAsIDE3Mjg5LCAzMDA3NSwgMzAwODAsIDMwMDg1LCAzMDA5MywgMjEyNjcsIDI4NjczLCA5MDE5LCAKKyAgICAzMDA5OCwgMzAxMDMsIDMwMTA3LCAzMDExMiwgMzAxMTYsIDMwMTIwLCAzMDEyNSwgMzAxMjksIDMwMTMyLCAzMDEzNSwgCisgICAgMzAxMzksIDMwMTQ0LCAzMDE0OCwgMzAxNTYsIDMwMTYwLCAzMDE2MywgMzAxNjgsIDMwMTcyLCAzMDE3NiwgMzAxODEsIAorICAgIDMwMTg2LCAzMDE5MCwgMzAxOTYsIDMwMjAxLCAzMDIwNiwgMzAyMTMsIDMwMjIwLCAzMDIyNCwgMzAyMjcsIDMwMjMzLCAKKyAgICAzMDI0MiwgMzAyNDksIDMwMjU3LCAzMDI2NCwgMzAyNjgsIDMwMjczLCAzMDI3NywgMzAyODEsIDMwMjg3LCAzMDI5MywgCisgICAgMzAyOTcsIDMwMzAzLCAzMDMwOCwgMzAzMTMsIDMwMzIwLCAzMDMyNiwgMzAzMzIsIDMwMzM4LCAzMDM0NCwgMzAzNTEsIAorICAgIDMwMzU3LCAzMDM2MywgMzAzNjksIDMwMzc1LCAzMDM4MSwgMzAzODcsIDMwMzkzLCAzMDQwMCwgMzA0MDYsIDMwNDEzLCAKKyAgICAzMDQxOSwgMzA0MjUsIDMwNDMxLCAzMDQzNywgMzA0NDMsIDMwNDQ5LCAzMDQ1NSwgMzA0NjEsIDMwNDY3LCAxMTQxMSwgCisgICAgMzA0NzMsIDMwNDc4LCAzMDQ4MywgMzA0ODYsIDMwNDk0LCAzMDQ5OSwgMzA1MDgsIDMwNTE0LCAzMDUxOSwgMzA1MjQsIAorICAgIDMwNTI5LCAzMDUzMywgMzA1MzgsIDMwNTQzLCAzMDU0OCwgMzA1NTMsIDMwNTU4LCAzMDU2NSwgMzA1NzIsIDMwNTc4LCAKKyAgICAzMDU4NCwgMzA1ODksIDE2MjkwLCAzMDU5NiwgMzA2MDIsIDMwNjA5LCAzMDYxNSwgMzA2MjEsIDMwNjI2LCAzMDYzNCwgCisgICAgMzA2MzksIDE2MDY5LCAzMDY0MywgMzA2NDgsIDMwNjUzLCAzMDY1OSwgMzA2NjQsIDMwNjY5LCAzMDY3MywgMzA2NzgsIAorICAgIDMwNjgzLCAzMDY4OSwgMzA2OTQsIDMwNjk5LCAzMDcwMywgMzA3MDgsIDMwNzEzLCAzMDcxNywgMzA3MjIsIDMwNzI3LCAKKyAgICAzMDczMiwgMzA3MzYsIDMwNzQxLCAzMDc0NiwgMzA3NTEsIDMwNzU1LCAzMDc1OSwgMTUyODAsIDMwNzYzLCAzMDc3MiwgCisgICAgMzA3NzgsIDMwNzg0LCAzMDc5MywgMzA4MDEsIDMwODEwLCAzMDgxOCwgMzA4MjMsIDMwODI3LCAzMDgzNCwgMzA4NDAsIAorICAgIDMwODQ0LCAzMDg0NywgMzA4NTIsIDMwODYxLCAzMDg2OSwgMzA4NzQsIDE0OTUsIDMwODgwLCAzMDg4MywgMzA4ODcsIAorICAgIDIyNDExLCAyMjQxNywgMzA4OTMsIDMwODk3LCAzMDkwOCwgMzA5MTksIDMwOTMwLCAzMDk0MiwgMzA5NDksIDMwOTU2LCAKKyAgICAzMDk2MSwgMzA5NjUsIDU5MDksIDc1NSwgMjEyNjYsIDMwOTczLCAzMDk3OCwgMzA5ODIsIDMwOTg3LCAzMDk5MSwgMzA5OTcsIAorICAgIDMxMDAyLCAzMTAwOCwgMzEwMTMsIDMxMDE5LCAzMTAyNCwgMzEwMzAsIDMxMDM1LCAzMTA0MSwgMzEwNDcsIDMxMDUzLCAKKyAgICAzMTA1OCwgMzEwMTQsIDMxMDIwLCAzMTA2MiwgMzEwNjcsIDMxMDczLCAzMTA3OCwgMzEwODQsIDMxMDg5LCAzMTA5NSwgCisgICAgMzExMDAsIDMxMDI1LCAxMDQxNCwgMzExMDQsIDMxMDM2LCAzMTA0MiwgMzEwNDgsIDI4MzEsIDM0MjMsIDMxMTEwLCAKKyAgICAzMTExMywgMzExMTksIDMxMTI1LCAzMTEzMSwgMzExMzgsIDMxMTQ0LCAzMTE1MCwgMzExNTYsIDMxMTYyLCAzMTE2OCwgCisgICAgMzExNzQsIDMxMTgwLCAzMTE4NiwgMzExOTIsIDMxMTk4LCAzMTIwNCwgMzEyMTAsIDMxMjE3LCAzMTIyMywgMzEyMjksIAorICAgIDMxMjM1LCAzMTI0MSwgMzEyNDcsIDMxMjUwLCAzMTI1NSwgMzEyNTgsIDMxMjY1LCAzMTI3MywgMzEyNzgsIDMxMjgzLCAKKyAgICAzMTI4OSwgMzEyOTQsIDMxMjk5LCAzMTMwMywgMzEzMDgsIDMxMzE0LCAzMTMxOSwgMzEzMjUsIDMxMzMwLCAzMTMzNiwgCisgICAgMzEzNDEsIDMxMzQ3LCAzMTM1MywgMzEzNTcsIDMxMzYyLCAzMTM2NywgMzEzNzIsIDMxMzc3LCAzMTM4MSwgMzEzODYsIAorICAgIDMxMzkxLCAzMTM5NiwgMzE0MDIsIDMxNDA4LCAzMTQxNCwgMzE0MjAsIDMxNDI1LCAzMTQyOSwgMzE0MzIsIDMxNDM4LCAKKyAgICAzMTQ0NCwgMzE0NTMsIDMxNDYxLCAzMTQ2OCwgMzE0NzMsIDMxNDc3LCAzMTQ4MSwgMzE0ODYsIDE1MTMzLCAzMTQ5MSwgCisgICAgMzE0OTksIDMxNTA1LCAzNjgzLCAxMzc3LCAzMTUxMCwgMzE1MTQsIDgwMDUsIDMxNTIwLCAzMTUyNiwgMzE1MzMsIDgwMTQsIAorICAgIDMxNTM3LCAzMTU0MywgMzE1NTAsIDMxNTU2LCAzMTU2NSwgMzE1NzMsIDMxNTg1LCAzMTU4OSwgMzE1OTYsIDMxNjAyLCAKKyAgICAzMTYwNiwgMzE2MDksIDMxNjE4LCAzMTYyNiwgMzEwMTUsIDMxNjMxLCAzMTY0MSwgMzE2NTEsIDMxNjYxLCAzMTY2NywgCisgICAgMzE2NzIsIDMxNjgyLCAzMTY4NywgMzE3MDAsIDMxNzE0LCAzMTcyNSwgMzE3MzcsIDMxNzQ5LCAzMTc2MywgMzE3NzYsIAorICAgIDMxNzg4LCAzMTgwMCwgMTQ1ODcsIDMxODE0LCAzMTgxOSwgMzE4MjQsIDMxODI4LCAzMTgzMiwgMzE4MzYsIDE3ODAsIAorICAgIDI3MTU5LCAzMTg0MCwgMzE4NDUsIDMxMDYzLCAzMTg1MCwgMzE4NTMsIDMxODU4LCAzMTg2MywgMzE4NjgsIDMxODc0LCAKKyAgICAzMTg4MCwgMTAwOTEsIDMxODg1LCAzMTg5MiwgMTU2ODQsIDMxODk4LCAzMTkwMywgMzE5MDgsIDMxOTEyLCAzMTkxNywgCisgICAgMzE5MjIsIDMxMDY4LCAzMTkyNywgMzE5MzIsIDMxOTM3LCAzMTk0MywgMzEwNzQsIDMxOTQ4LCAzMTk1MSwgMzE5NTgsIAorICAgIDMxOTY2LCAzMTk3MiwgMzE5NzgsIDMxOTg0LCAzMTk5NSwgMzIwMDAsIDMyMDA3LCAzMjAxNCwgMzIwMjEsIDMyMDI5LCAKKyAgICAzMjAzOCwgMzIwNDcsIDMyMDUzLCAzMjA1OSwgMzIwNjcsIDMxMDc5LCAzMjA3MiwgMzIwNzgsIDMyMDg0LCAzMTA4NSwgCisgICAgMzIwODksIDMyMDk0LCAzMjEwMiwgMzIxMTAsIDMyMTE2LCAzMjEyMywgMzIxMjksIDMyMTM2LCAzMjE0MywgMzIxNDksIAorICAgIDMyMTU3LCAzMjE2NywgMzIxNzQsIDMyMTc5LCAzMjE4NSwgMzIxOTAsIDMyMTk1LCAzMjIwMiwgMzIyMTEsIDMyMjE5LCAKKyAgICAzMjIyNCwgMzIyMzAsIDMyMjM3LCAzMjI0NSwgMzIyNTEsIDMyMjU2LCAzMjI2MiwgMzIyNzEsIDI3OTM2LCAzMjI3OCwgCisgICAgMzIyODIsIDMyMjg3LCAzMjI5NiwgMzIzMDEsIDMyMzA2LCAzMjMxMSwgMTIzOTgsIDMyMzE5LCAzMjMyNCwgMzIzMjksIAorICAgIDMyMzM0LCAzMjMzOCwgMzIzNDMsIDMyMzQ4LCAzMjM1NSwgMzIzNjAsIDMyMzY1LCAzMjM3MCwgMzEwOTAsIDIxMjAzLCAKKyAgICAzMjM3NiwgMjUxOSwgMjQ0LCAzMjM3OSwgMzIzODIsIDMyMzg2LCAzMjM5MCwgMzI0MDAsIDMyNDA4LCAzMjQxMiwgMzI0MTksIAorICAgIDMyNDI2LCAzMjQzMCwgMzI0MzMsIDMyNDM5LCAzMjQ0NywgMzI0NTUsIDMyNDU5LCAzMjQ2MywgMzI0NjYsIDMyNDczLCAKKyAgICAzMjQ3NywgMzI0ODEsIDMyNDg4LCAzMjQ5NiwgMzEwMjYsIDMyNTAzLCAzMjUxMSwgMTAxNTEsIDY2MCwgMzA4LCAzMjUyMywgCisgICAgMzI1MjgsIDMyNTMzLCAzMjUzOSwgMzI1NDQsIDMyNTQ5LCAzNzA0LCAzMjU1NCwgMzI1NTcsIDMyNTYyLCAzMjU2NywgCisgICAgMzI1NzIsIDMyNTc3LCAzMjU4MiwgMzI1ODksIDIyNTEyLCAzMjU5NCwgMzI1OTksIDMyNjA0LCAzMjYwOSwgMzI2MTQsIAorICAgIDMyNjIwLCAzMjYyNSwgMzI2MzEsIDMxMjYxLCAzMjYzNywgMzI2NDIsIDMyNjQ4LCAzMjY1NCwgMzI2NjQsIDMyNjY5LCAKKyAgICAzMjY3NCwgMzI2NzgsIDMyNjgzLCAzMjY4OCwgMzI2OTMsIDMyNjk4LCAzMjcxMSwgMzI3MTYsIDIyMjg5LCAxNjY5MiwgCisgICAgMzcxMCwgMzI3MjAsIDMyNzI1LCAzMjczMCwgMzI3MzYsIDMyNzQxLCAzMjc0NiwgMzI3NTAsIDMyNzU1LCAzMjc2MCwgCisgICAgMzI3NjYsIDMyNzcxLCAzMjc3NiwgMTM4MiwgMzI3ODAsIDMyNzg1LCAzMjc5MCwgMzI3OTUsIDMyNzk5LCAzMjgwNCwgCisgICAgMzI4MDksIDMyODE0LCAzMjgyMCwgMzI4MjYsIDMyODMxLCAzMjgzNSwgMzI4MzksIDMyODQ0LCAzMjg0OSwgMzI4NTQsIAorICAgIDMyODU4LCAzMjg2NiwgMzI4NzAsIDMyODc2LCAzMjg4MCwgMzI4ODcsIDE2NDg1LCAzMTAzNywgMzI4OTMsIDMyOTAwLCAKKyAgICAzMjkwOCwgMzI5MTUsIDMyOTIxLCAzMjkzNCwgMzI5NDYsIDMyOTUyLCAzMjk1NiwgMjc3MywgMzI5NjAsIDMyOTY0LCAKKyAgICAzMjQ2OCwgMzI5NzMsIDMyOTg0LCAzMjk4OSwgMzI5OTQsIDMyOTk5LCAzMzAwMywgMzMwMDgsIDIyNDIyLCAzMzAxMiwgCisgICAgMzMwMTYsIDMzMDIxLCAzMTA0MywgMjEyODcsIDMzMDI1LCAzMzAzMCwgMzMwMzYsIDMzMDQxLCAzMzA0NSwgMzMwNDksIAorICAgIDMzMDUyLCAzMzA1NiwgMzMwNjIsIDMzMDczLCAzMzA4NSwgMzEwNDksIDMzMDkwLCAzMzA5MywgMzMwOTcsIDM0NywgCisgICAgMzMxMDIsIDMzMTA3LCAzMzExMiwgMzMxMTcsIDMzMTIyLCAzMzEyNywgMzMxMzMsIDMzMTM4LCAzMzE0MywgMzMxNDksIAorICAgIDMzMTU0LCAzMzE2MCwgMzMxNjUsIDMzMTcxLCAzMzE3NiwgMzMxODEsIDMzMTg2LCAzMzE5MSwgMzMxOTYsIDMzMjAxLCAKKyAgICAzMzIwNiwgMzMyMTEsIDMzMjE3LCAzMzIyMiwgMzMyMjcsIDMzMjMyLCAzMzIzNywgMzMyNDIsIDMzMjQ3LCAzMzI1MiwgCisgICAgMzMyNTgsIDMzMjY0LCAzMzI2OSwgMzMyNzQsIDMzMjc5LCAzMzI4NCwgMzMyODksIDMzMjk0LCAzMzI5OSwgMzMzMDQsIAorICAgIDMzMzA5LCAzMzMxNCwgMzMzMTksIDMzMzI0LCAzMzMyOSwgMzMzMzQsIDMzMzM5LCAzMzM0NCwgMzMzNDksIDMzMzU0LCAKKyAgICAzMzM2MCwgMzEzLCAyNiwgMzMzNjUsIDMzMzY5LCAzMzM3MywgMzMzODEsIDMzMzg1LCAzMzM4OSwgMzMzOTIsIDMzMzk1LCAKKyAgICAzMzM5NywgMzM0MDIsIDMzNDA2LCAzMzQxMSwgMzM0MTUsIDMzNDIwLCAzMzQyNCwgMzM0MjksIDMzNDMzLCAzMzQzNiwgCisgICAgMzM0MzgsIDMzNDQyLCAzMzQ0NywgMzM0NTEsIDMzNDYyLCAzMzQ2NSwgMzM0NjcsIDMzNDcxLCAzMzQ4MywgMzM0OTIsIAorICAgIDMzNDk2LCAzMzUwMCwgMzM1MDYsIDMzNTExLCAzMzUyMCwgMzM1MjYsIDMzNTMxLCAzMzUzNiwgMzM1NDAsIDMzNTQ1LCAKKyAgICAzMzU1MiwgMzM1NTcsIDMzNTYzLCAzMzU2OCwgMzM1NzIsIDMzNTc5LCAyNTcwMSwgMjU3MTEsIDMzNTgzLCAzMzU4OCwgCisgICAgMzM1OTMsIDMzNTk4LCAzMzYwNSwgMzM2MDksIDMzNjE2LCA4MTEzLCAzMzYyMiwgMzM2MzEsIDMzNjM5LCAzMzY1NCwgCisgICAgMzM2NjgsIDMzNjc2LCAzMzY4NywgMzM2OTYsIDMzNzAxLCA3MjI3LCAzMzcxMSwgMzM3MTYsIDMzNzIxLCAzMzcyNSwgCisgICAgMzM3MjgsIDMzNzMyLCAzMzczNywgMzM3NDEsIDMzNzQ4LCAzMzc1MywgMzM3NTgsIDg5MTIsIDMzNzY4LCAzMzc3MCwgCisgICAgMzM3NzMsIDMzNzc3LCAzMzc4MywgMzM3ODcsIDMzNzkyLCAzMzc5NywgMzM4MDMsIDMzODA4LCAzMzgxNCwgMzM4MTksIAorICAgIDMzODI5LCAzMzgzOCwgMzM4NDYsIDMzODUxLCAzMzg1NywgMzM4NjIsIDMzODY5LCAzMzg3MywgMzM4ODEsIDMzODg4LCAKKyAgICAzMzkwMSwgMzM5MDksIDMzOTEzLCAzMzkyMywgMzM5MjgsIDMzOTMyLCAzMzk0MCwgMzM5NDgsIDMzOTUyLCAzMzk2MSwgCisgICAgMzM5NjcsIDMzOTcyLCAzMzk4MCwgMzM5OTAsIDMzOTk5LCAzNDAwOCwgMzQwMTcsIDM0MDI4LCAzNDAzNiwgMzQwNDcsIAorICAgIDM0MDU2LCAzNDA2MywgMzQwNjksIDM0MDc0LCAzNDA4NSwgMzQwOTAsIDM0MDk0LCAzNDA5NywgMzQxMDEsIDM0MTA5LCAKKyAgICAzNDExNSwgMzQxMjMsIDM0MTMwLCAzNDEzNiwgMzQxNDEsIDM0MTQ3LCAyNDE4LCAzNDE1MSwgMzQxNTMsIDM0MTU4LCAKKyAgICAzNDE2MywgMzQxNjgsIDM0MTcxLCAzNDE3MywgMzQxNzcsIDM0MTgwLCAzNDE4NywgMzQxOTEsIDk4ODQsIDM0MTk1LCAKKyAgICAzNDIwMSwgMzQyMTEsIDM0MjE2LCAzNDIyMiwgMzQyMjYsIDM0MjMxLCAzNDI0NCwgMjYwODcsIDM0MjUwLCAzNDI1OSwgCisgICAgMTc0NjIsIDM0MjY2LCAzNDI3NSwgMzE2NDcsIDM0MjgzLCAzNDI4OCwgMzQyOTIsIDM0MzAwLCAzNDMwNywgMzQzMTIsIAorICAgIDM0MzE2LCAzNDMyMSwgMzQzMjUsIDM0MzMzLCAzNDMzOSwgMzQzNDUsIDM0MzUwLCAzNDM1NCwgMzQzNTcsIDM0MzYyLCAKKyAgICAzNDM3NSwgMzQzOTEsIDIyOTc5LCAzNDQwOCwgMzQ0MjAsIDM0NDM3LCAzNDQ0OSwgMzQ0NjMsIDIyOTk2LCAyMzAxNSwgCisgICAgMzQ0NzUsIDM0NDg3LCAyNjgwLCAzNDUwMSwgMzQ1MDYsIDM0NTExLCAzNDUxNiwgMzQ1MjAsIDM0NTI3LCAzNDUzOSwgCisgICAgMzQ1NDUsIDM0NTQ4LCAzNDU1OSwgMzQ1NzAsIDM0NTc1LCAzMjA2NCwgNjk1LCAzNDU3OSwgMzQ1ODMsIDM0NTg3LCAKKyAgICAzNDU5MCwgMzQ1OTUsIDM0NjAwLCAzNDYwNiwgMzQ2MTEsIDM0NjE2LCAzNDYyMiwgMzQ2MjgsIDM0NjMzLCAzNDYzNywgCisgICAgMzQ2NDIsIDM0NjQ3LCAzNDY1MiwgMzQ2NTYsIDM0NjU5LCAzNDY2NSwgMzQ2NzAsIDM0Njc1LCAzNDY4MCwgMzQ2ODQsIAorICAgIDM0Njg5LCAzNDY5NSwgMzQ3MDMsIDI2MzIwLCAzNDcwOCwgMzQ3MTMsIDM0NzIwLCAzNDcyNiwgMzQ3MzIsIDM0NzM3LCAKKyAgICAzNDc0NSwgMjI1MjEsIDM0NzUyLCAzNDc1NywgMzQ3NjIsIDM0NzY3LCAzNDc3MSwgMzQ3NzQsIDM0Nzc5LCAzNDc4MywgCisgICAgMzQ3ODcsIDM0Nzk0LCAzNDgwMCwgMzQ4MDYsIDM0ODEyLCAzNDgxOSwgMzQ4MjQsIDM0ODMwLCAzMzk0MywgMzQ4MzQsIAorICAgIDM0ODM4LCAzNDg0MywgMzQ4NTYsIDM0ODYxLCAzNDg2NywgMzQ4NzUsIDM0ODgyLCAzNDg5MCwgMzQ5MDAsIDM0OTA2LCAKKyAgICAzNDkxMiwgMzQ5MTgsIDM0OTIyLCAzNDkzMSwgMzQ5MzksIDM0OTQ2LCAzNDk1MSwgMzQ5NTYsIDEwNDM3LCAzNDk2MSwgCisgICAgMzQ5NjksIDM0OTc2LCAzNDk4MiwgMzQ5OTIsIDM0OTk3LCAzNTAwMywgMzUwMTEsIDM2MDgsIDM1MDE4LCAzNTAyNSwgCisgICAgMzYxNCwgMzUwMjksIDM1MDM0LCAzNTA0NSwgMzUwNTIsIDM1MDU4LCAzNTA2NywgMzUwNzEsIDQwMTUsIDM1MDc0LCAKKyAgICAzNTA4MSwgMzUwODcsIDM1MDkzLCAzNTEwMSwgMzUxMTEsIDI5MDQyLCAzNTExOCwgMzUxMjYsIDM1MTMxLCAzNTEzNywgCisgICAgMzUxNDIsIDI1OTQ3LCAzNTE0OCwgMzUxNTUsIDM1MTYxLCAzNTE3MCwgMjM2NjAsIDM1MTc3LCAzNTE4MiwgMzUxODYsIAorICAgIDM1MTk0LCAzNTIwMiwgOTYwMCwgNTg5NSwgMzUyMDksIDM1MjEzLCAzNTIxNSwgMzUyMTksIDM1MjI0LCAzNTIyNiwgCisgICAgMzUyMzIsIDM1MjM3LCAzNTI0MiwgMzUyNDksIDMyNTg1LCAzNTI1NSwgMzUyNjAsIDM1MjY0LCAzNTI2OSwgMzUyNzMsIAorICAgIDM1MjgyLCAzNTI4NiwgMzUyOTIsIDM1Mjk5LCAzNTMwNSwgMzUzMTIsIDM1MzE3LCAzNTMyNiwgMzUzMzEsIDM1MzM1LCAKKyAgICAzNTM0MCwgMzUzNDcsIDM1MzU1LCAzNTM2MywgMzUzNjgsIDIxMzQzLCAzNTM3MiwgMzUzNzUsIDM1Mzc5LCAzNTM4MywgCisgICAgMzUzODcsIDM1MzkwLCAzNTM5MiwgMzU0MDAsIDM1NDA0LCAzNTQxMSwgMzU0MTUsIDM1NDE5LCAzNTQyNywgMzU0MzQsIAorICAgIDM1NDQ0LCAzNTQ0OCwgMzU0NTIsIDM1NDYwLCAzNTQ2OCwgMzU0NzQsIDM1NDc5LCAzNTQ4OCwgMTMzNTAsIDM1NDk0LCAKKyAgICAzNTUwMywgMzU1MDgsIDM1NTE1LCAzNTUyMywgMzU1MzEsIDM1NTM5LCAzNTU0NiwgMzU1NTMsIDM1NTYwLCAzNTU2NywgCisgICAgMzU1NzQsIDM1NTc5LCAzNTU4NSwgMzU2MDIsIDM1NjEwLCAzNTYyMCwgMzU2MjgsIDM1NjM1LCA0MDcsIDM1NjM5LCAKKyAgICAzNTY0NSwgMzU2NDksIDM1NjU0LCAzMzY5MiwgMzU2NjAsIDM1NjYzLCAzNTY2NywgMzU2NzUsIDM2MTksIDM1NjgzLCAKKyAgICAzNTY4OSwgMzU2OTUsIDM1NzA0LCAzNTcxNCwgMzU3MjEsIDM1NzI3LCAzNjI1LCAzNjMxLCAzNTczNiwgMzU3NDMsIAorICAgIDM1NzUxLCAzNTc1NiwgMzU3NjAsIDM1NzY3LCAzNTc3NSwgMzU3ODIsIDM1Nzg4LCAzNTc5NywgMzU4MDcsIDM1ODEzLCAKKyAgICAzNTgyMSwgMzU4MzAsIDM1ODM3LCAzNTg0NSwgMzU4NTIsIDIyMDE5LCAzNTg1NiwgMzU4NjMsIDM1ODY5LCAzNTg3OSwgCisgICAgMzU4ODgsIDM1ODk5LCAzNTkwMywgMzU5MTMsIDM1OTE5LCAzNTkyNiwgMzU5MzQsIDM1OTQzLCAzNTk1MiwgMzU5NjIsIAorICAgIDM1OTczLCAzNTk4MCwgMzU5ODUsIDM1OTkyLCAzMDI5LCAzNjAwMCwgMzYwMDYsIDM2MDExLCAzNjAxNywgMzYwMjMsIAorICAgIDM2MDI4LCAzNjA0MSwgMzYwNTQsIDM2MDY3LCAzNjA3NCwgMzYwODAsIDM2MDg4LCAzNjA5NiwgMzYxMDEsIDM2MTA1LCAKKyAgICAxNDY5LCAzNjEwOSwgMzYxMTQsIDM2MTE5LCAzNjEyNCwgMzYxMjksIDM2MTM1LCAzNjE0MCwgMzYxNDUsIDM2MTUwLCAKKyAgICAzNjE1NSwgMzYxNjAsIDM2MTY1LCAzNjE3MCwgMzYxNzYsIDM2MTgyLCAzNjE4NywgMzYxOTIsIDM2MTk4LCAzNjIwMywgCisgICAgMzYyMDgsIDM2MjEzLCAzNjIxOSwgMzYyMjQsIDM2MjI5LCAzNjIzNCwgMzYyMzksIDM2MjQ1LCAzNjI1MCwgMzYyNTUsIAorICAgIDM2MjYxLCAzNjI2NiwgMzYyNzEsIDM2Mjc2LCAzNjI4MSwgMzYyODYsIDM2MjkyLCAzNjI5NywgMzYzMDMsIDM2MzA4LCAKKyAgICAzNjMxNCwgMzYzMTksIDM2MzI0LCAzNjMyOSwgMzYzMzUsIDM2MzQxLCAzNjM0NywgMzYzNTMsIDM2MzU5LCAzNjM2NSwgCisgICAgMzYzNzEsIDM2Mzc3LCAzNjM4MiwgMzYzODcsIDM2MzkzLCAzNjM5OCwgMzY0MDMsIDM2NDA4LCAzNjQxMywgMzY0MTgsIAorICAgIDM2NDIzLCAzNjQyOCwgMzY0MzQsIDM2NDM5LCAzNjQ0NCwgMzY0NTAsIDM2NDU2LCAxMDEsIDM2NDYxLCAzNjQ2MywgCisgICAgMzY0NjcsIDM2NDcxLCAzNjQ3NSwgMzY0ODAsIDM2NDg0LCA5NTIxLCAzNjQ4OCwgMzY0OTQsIDE3NDEsIDYyODAsIDM2NTAwLCAKKyAgICAzNjUwMywgMzY1MDgsIDM2NTEyLCAzNjUxNywgMzY1MjEsIDM2NTI1LCAzNjUzMCwgMTAyMzgsIDM2NTM0LCAzNjUzOCwgCisgICAgMzY1NDIsIDM2NTQ2LCAxNTM3MiwgMzY1NTEsIDM2NTU1LCAzNjU2MCwgMzY1NjUsIDM2NTcwLCAzNjU3NCwgMzY1ODEsIAorICAgIDI2MTExLCAzNjU4NywgMzY1OTAsIDM2NTk0LCAzNjU5OSwgMzY2MDUsIDM2NjA5LCAzNjYxNywgMzY2MjMsIDM2NjI4LCAKKyAgICAzNjYzMiwgMzY2MzgsIDM2NjQyLCAzNjY0NiwgMzQ2MiwgMzQ2NywgMjkyMzQsIDM2NjQ5LCAzNjY1MywgMzY2NTcsIAorICAgIDM2NjYxLCAzNjY2OSwgMzY2NzYsIDM2NjgwLCAzNjY4NywgMzY2OTIsIDMxNywgMzY2OTcsIDM2NzAxLCAzNjcwNywgCisgICAgMzY3MTksIDM2NzI1LCAzNjczMSwgMzY3MzUsIDM2NzQxLCAzNjc1MCwgMzY3NTQsIDM2NzU4LCAzNjc2MywgMzY3NjksIAorICAgIDM2Nzc0LCAzNjc3OCwgMzY3ODMsIDM2Nzg3LCAzNjc5MSwgMzY3OTgsIDM2ODA0LCAzNjgwOSwgMzY4MjQsIDM2ODM5LCAKKyAgICAzNjg1NCwgMzY4NzAsIDM2ODg4LCAxMDE4OCwgMzY5MDIsIDM2OTA5LCAzNjkxMywgMzY5MTYsIDM2OTI1LCAzNjkzMCwgCisgICAgMzY5MzQsIDM2OTQyLCAzMzg5NCwgMzY5NTAsIDM2OTU0LCAzNjk2NCwgMzY5NzUsIDI5MjA0LCAzNjk4OCwgMzY5OTIsIAorICAgIDM3MDAxLCAzNzAwOSwgOTc3OCwgMTQ5MDAsIDM3MDEzLCAyMjQzNCwgMzcwMTYsIDMwMTUyLCAzNzAyMSwgOTc3NywgCisgICAgMzcwMjYsIDM3MDMyLCAzNzAzNywgMzcwNDMsIDM3MDQ4LCAzNzA1NCwgMzcwNTksIDM3MDY1LCAzNzA3MCwgMzcwNzYsIAorICAgIDM3MDgyLCAzNzA4OCwgMzcwOTMsIDM3MDQ5LCAzNzA1NSwgMzcwNjAsIDM3MDY2LCAzNzA3MSwgMzcwNzcsIDM3MDgzLCAKKyAgICA4MTI2LCAzODc0LCAzNzA5NywgMzcxMDUsIDM3MTA5LCAzNzExMiwgMzcxMTYsIDM3MTIxLCAzNzEyNiwgMzcxMzIsIAorICAgIDM3MTM4LCAzNzE0MywgMzcxNDcsIDI1OTU5LCAzNzE1MSwgMzcxNTUsIDM3MTYxLCAzNzE2NSwgOTA0MiwgMzcxNzQsIAorICAgIDM3MTgxLCAzNzE4NSwgMTE4NjgsIDM3MTkyLCAzNzE5OCwgMzcyMDMsIDM3MjEwLCAzNzIxNywgMzcyMjQsIDI4NTUwLCAKKyAgICA4MDQ5LCAzNzIzMSwgMzcyMzgsIDM3MjQ1LCAzNzI1MSwgMzcyNTYsIDM3MjYzLCAzNzI3NCwgMzcyODAsIDM3Mjg1LCAKKyAgICAzNzI5MCwgMzcyOTUsIDM3MzAyLCAzNzA1MCwgMzczMDYsIDM3MzE2LCAzNzMyNywgMzczMzMsIDM3MzM4LCAzNzM0MywgCisgICAgMzczNDgsIDM3MzUzLCAzNzM1OCwgMzczNjIsIDM3MzY2LCAzNzM3MiwgMzczODAsIDIzMTksIDg2NSwgMTAyNTQsIDEwMjY2LCAKKyAgICAxMDI3MSwgMTAyNzcsIDM3Mzg5LCAxMDI4MiwgMTAyODcsIDEwMjkzLCAzNzM5NCwgMzc0MDQsIDM3NDA4LCAxMDI5OCwgCisgICAgMzc0MTMsIDE2ODkwLCAzNzQxNiwgMzc0MjEsIDM3NDI1LCAzNzQzMCwgMzc0MzUsIDM3NDQyLCAzNzQ0OSwgMzc0NTMsIAorICAgIDM3NDU2LCAzNzQ2NCwgMTAyMDEsIDM3NDcxLCAzNzQ3NCwgMzc0ODAsIDM3NDkwLCA1OTI5LCAzNzQ5OSwgMzc1MDMsIAorICAgIDM3NTExLCAzNzUxNSwgMzc1MjUsIDM3NTMxLCAzNzU0MiwgMzc1NDgsIDM3NTU0LCAzNzU1OSwgMzc1NjUsIDM3NTcxLCAKKyAgICAzNzU3NywgMzc1ODIsIDM3NTg1LCAzNzU5MiwgMzc1OTgsIDM3NjAzLCAzNzYxMCwgMzc2MTcsIDM3NjIxLCAzNzYzMSwgCisgICAgMzc2NDQsIDM3NjUzLCAzNzY2MiwgMzc2NzMsIDM3Njg2LCAzNzY5NywgMzc3MDYsIDM3NzE3LCAzNzcyMiwgMzc3MzEsIAorICAgIDM3NzM2LCAxMDMwMywgMzc3NDIsIDM3NzQ5LCAzNzc1NywgMzc3NjIsIDM3NzY2LCAzNzc3MywgMzc3ODAsIDM4MjksIDE2LCAKKyAgICAzNzc4NCwgMzc3ODksIDE2NzQ0LCAzNzc5MywgMzc3OTYsIDM3Nzk5LCAyODA1NiwgMzc4MDMsIDI4NTU5LCAzNzgxMSwgCisgICAgMzc4MTUsIDM3ODE5LCAzNzgyMiwgMzc4MjgsIDM3MDcyLCAzNzgzNCwgMzc4NDIsIDM3ODQ4LCAzNzg1NSwgMjgwMzksIAorICAgIDM3ODU5LCAyODIzMywgMzc4NjMsIDM3ODcyLCAzNzg3OCwgMzc4ODQsIDM3ODg5LCAzNzg5MywgMzc4OTksIDM3OTAzLCAKKyAgICAzNzkxMSwgMzc5MTksIDI2MTc3LCAzNzkyNSwgMzc5MzIsIDM3OTM4LCAzNzk0MywgMzc5NDgsIDM3OTUyLCAzNzk1OCwgCisgICAgMzc5NjMsIDM3OTY5LCA0MDU2LCA3OTEsIDM3OTc2LCAzNzk4MCwgMzc5ODMsIDE1MjYyLCAzNzk5NSwgMzU4MjYsIDM4MDA2LCAKKyAgICAzODAwOSwgMzgwMTYsIDM4MDIwLCAzODAyNiwgMzgwMzAsIDM4MDM2LCAzODA0MSwgMzgwNDcsIDM4MDUyLCAzODA1NywgCisgICAgMzgwNjEsIDM4MDY1LCAzODA3MCwgMzgwNzUsIDM4MDg1LCAzODA5MSwgMzgxMDQsIDM4MTEwLCAzODExNiwgMzgxMjMsIAorICAgIDM4MTI4LCAzODEzNCwgMzgxMzksIDE2NjMwLCAxNDcyLCAxMDE5LCAzMTE5MywgMzExOTksIDM4MTQ0LCAzMTIwNSwgCisgICAgMzEyMTgsIDMxMjI0LCAzMTIzMCwgMzgxNTAsIDMxMjM2LCAzMTI0MiwgMzgxNTYsIDM4MTYyLCAyMiwgMzgxNzAsIDM4MTc3LCAKKyAgICAzODE4MSwgMzgxODUsIDM4MTkzLCAzMTk1MywgMzgxOTcsIDM4MjAxLCAzODIwOCwgMzgyMTMsIDM4MjE3LCAzODIyMiwgCisgICAgMzgyMjgsIDM4MjMzLCAzODIzOSwgMzgyNDQsIDM4MjQ4LCAzODI1MiwgMzgyNTYsIDM4MjYxLCAzODI2NSwgMzgyNzAsIAorICAgIDM4Mjc0LCAzODI4MSwgMzgyODYsIDM4MjkwLCAzODI5NSwgMzgyOTksIDM4MzA0LCAzODMwOCwgMzgzMTMsIDM4MzE5LCAKKyAgICAxNTQ4MiwgMTU0ODcsIDM4MzI0LCAzODMyOCwgMzgzMzEsIDM4MzM1LCAyMTE3MCwgMzgzNDAsIDM4MzQ0LCAzODM1MCwgCisgICAgMzgzNTcsIDM4MzYyLCAzODM3MiwgMzgzNzcsIDM4Mzg1LCAzODM4OSwgMzgzOTIsIDMxOTY4LCAzODM5NiwgNDEwOSwgCisgICAgMzg0MDEsIDM4NDA2LCAzODQxMCwgMzg0MTUsIDM4NDE5LCAzODQyNCwgMTMzNjgsIDM4NDM1LCAzODQzOSwgMzg0NDIsIAorICAgIDM4NDQ3LCAzODQ1MSwgMzg0NTUsIDM4NDU4LCAzODQ2MiwgODE0NSwgMTMzODQsIDM4NDY1LCAzODQ2OCwgMzg0NzQsIAorICAgIDM4NDc5LCAzODQ4NSwgMzg0OTAsIDM4NDk2LCAzODUwMSwgMzg1MDcsIDM4NTEyLCAzODUxOCwgMzg1MjQsIDM4NTMwLCAKKyAgICAzODUzNSwgMzg1MzksIDM4NTQzLCAzODU1MiwgMzg1NjgsIDM4NTg0LCAzODU5NCwgMjc5NDYsIDM4NjAxLCAzODYwNSwgCisgICAgMzg2MTAsIDM4NjE1LCAzODYxOSwgMzg2MjMsIDM1OTQ3LCAzODYyOSwgMzg2MzQsIDM4NjM4LCAzODY0NSwgMzg2NTAsIAorICAgIDM4NjU0LCAzODY1OCwgMjY5NzksIDM4NjY0LCAyMTQzOCwgMzg2NjksIDM4Njc2LCAzODY4NCwgMzg2OTAsIDM4Njk3LCAKKyAgICAzODcwNSwgMzg3MTEsIDM4NzE1LCAzODcyMSwgMzg3MjksIDM4NzMzLCAzODc0MiwgOTUwMiwgMzg3NTAsIDM4NzU0LCAKKyAgICAzODc2MiwgMzg3NjksIDM4Nzc0LCAzODc3OSwgMzg3ODMsIDM4Nzg2LCAzODc5MCwgMzg3OTMsIDM4Nzk3LCAzODgwNCwgCisgICAgMzg4MDksIDM4ODE1LCAyNjM5OCwgMzEyNTYsIDM4ODE5LCAzODgyNiwgMzg4MzIsIDM4ODM4LCAzODg0MywgMzg4NDYsIAorICAgIDM4ODQ4LCAzODg1NSwgMzg4NjIsIDM4ODY4LCAzODg3MiwgMzg4NzUsIDM4ODc5LCAzODg4MywgMzg4ODcsIDM4ODkyLCAKKyAgICAzODg5NiwgMzg5MDAsIDM4OTAzLCAzODkwNywgMzg5MjEsIDIzMDQ1LCAzODk0MCwgMzg5NTMsIDM4OTY2LCAzODk3OSwgCisgICAgMjMwNjMsIDM4OTk0LCAxMDQ5MCwgMzkwMDksIDM5MDE1LCAzOTAxOSwgMzkwMjMsIDM5MDMwLCAzOTAzNSwgMzkwMzksIAorICAgIDM5MDQ2LCAzOTA1MiwgMzkwNTcsIDM5MDYzLCAzOTA3MywgMzkwODUsIDM5MDk2LCAzOTEwMSwgMzkxMDgsIDM5MTEyLCAKKyAgICAzOTExNiwgMzkxMTksIDE1ODc4LCAzNjc3LCAzOTEyNywgMTU1MDksIDM5MTQwLCAzOTE0NywgMzkxNTEsIDM5MTU1LCAKKyAgICAzOTE2MCwgMzkxNjUsIDM5MTcxLCAzOTE3NSwgMzkxNzksIDM5MTgyLCA3NzQyLCAxNTUyMCwgMzkxODcsIDM5MTkxLCAKKyAgICAzOTE5NywgMzkyMDYsIDM5MjExLCAzOTIxOCwgMzU4MDMsIDM5MjI0LCAzOTIyOSwgMzkyMzMsIDM5MjM4LCAzOTI0NSwgCisgICAgMzkyNDksIDM5MjUyLCAzOTI1NiwgMzkyNjEsIDE0NTUyLCAzOTI2OCwgMzkyNzUsIDEwNjYsIDM5Mjc5LCAzOTI4NCwgCisgICAgMzkyODksIDM5Mjk1LCAzOTMwMCwgMzkzMDUsIDM5MzA5LCAzOTMxOSwgMzkzMjQsIDM5MzMwLCAzOTMzNSwgMzkzNDEsIAorICAgIDM5MzQ2LCAzOTM1MiwgMzkzNjIsIDM5MzY3LCAzOTM3MiwgMzkzNzYsIDcyMjksIDcyNDEsIDM5MzgxLCAzOTM4NCwgCisgICAgMzkzOTEsIDM5Mzk3LCAzNDA1OSwgMzQwNjYsIDM5NDA2LCAzOTQxMCwgMzIwMTYsIDM5NDE4LCAzOTQyOSwgMzk0MzcsIAorICAgIDM1OTk1LCAzOTQ0NCwgMzk0NDksIDM5NDU0LCAzOTQ2NSwgMzk0NzIsIDM5NDgzLCAzMjA0MCwgMjE0NDQsIDM5NDkxLCAKKyAgICA3MzUsIDM5NDk2LCAzOTUwMiwgMjgwMzAsIDM5NTA4LCAzOTUxMywgMzk1MjMsIDM5NTMyLCAzOTUzOSwgMzk1NDUsIAorICAgIDM5NTQ5LCAzOTU1MiwgMzk1NTksIDM5NTY1LCAzOTU3MiwgMzk1NzgsIDM5NTg4LCAzOTU5NiwgMzk2MDIsIDM5NjA4LCAKKyAgICAzOTYxMywgMzk2MTcsIDM5NjI0LCAzOTYzMCwgMzk2MzcsIDM4ODg4LCA1MzUsIDEzODA1LCAzOTY0MywgMzk2NDgsIAorICAgIDM5NjUxLCAzOTY1NywgMzk2NjUsIDEzOTYsIDM5NjcwLCAzOTY3NCwgMzk2NzksIDM5Njg2LCAzOTY5MiwgMzk2OTYsIAorICAgIDM5NzAwLCAzOTcwNSwgMzk3MTQsIDM5NzIxLCAzOTczMSwgMzk3MzcsIDI4MDc0LCAzOTc1NCwgMzk3NjMsIDM5NzcxLCAKKyAgICAzOTc3NywgMzk3ODIsIDM5Nzg5LCAzOTc5NSwgMzk4MDMsIDM5ODEyLCAzOTgyMCwgMzk4MjQsIDM5ODI5LCAzOTgzNywgCisgICAgMzIwNDksIDM5ODQzLCAzOTg2MiwgMTU4MTEsIDM5ODc2LCAzOTg5MiwgMzk5MDYsIDM5OTEyLCAzOTkxNywgMzk5MjIsIAorICAgIDM5OTI3LCAzOTkzMywgMzIwNTUsIDM5OTM4LCAzOTk0NSwgMzk5NTAsIDM5OTU0LCAzNDUsIDI5MzYsIDM5OTYxLCAzOTk2NiwgCisgICAgMzk5NzEsIDI3MzA1LCAzOTc5MiwgMzk5NzUsIDM5OTgwLCAzOTk4OCwgMzk5OTIsIDM5OTk1LCA0MDAwMSwgNDAwMDcsIAorICAgIDQwMDExLCAyODEyOSwgNDAwMTQsIDQwMDE5LCA0MDAyMywgNDAwMjYsIDQwMDMxLCA0MDAzNSwgNDAwNDAsIDQwMDQ1LCAKKyAgICA0MDA0OSwgNDAwNTQsIDQwMDU4LCA0MDA2MiwgMjExNjYsIDIxMTc3LCA0MDA2NiwgNDAwNzEsIDQwMDc3LCAyNjkzNiwgCisgICAgNDAwODIsIDQwMDg2LCAyMTI1MywgMTYwNTksIDQwMDg5LCA0MDA5NCwgNDAwOTksIDQwMTA0LCA0MDEwOSwgNDAxMTQsIAorICAgIDQwMTE5LCA0MDEyNCwgNDQ3LCA0MywgMzEyNzQsIDMxMjc5LCAzMTI4NCwgMzEyOTAsIDMxMjk1LCAzMTMwMCwgNDAxMjksIAorICAgIDMxMzA0LCA0MDEzMywgNDAxMzcsIDQwMTQxLCAzMTMwOSwgMzEzMTUsIDQwMTU1LCAzMTMyNiwgMzEzMzEsIDQwMTYzLCAKKyAgICA0MDE2OCwgMzEzMzcsIDQwMTczLCA0MDE3OCwgNDAxODMsIDQwMTg4LCA0MDE5NCwgNDAyMDAsIDQwMjA2LCAzMTM1NCwgCisgICAgNDAyMTksIDQwMjI1LCAzMTM1OCwgNDAyMjksIDMxMzYzLCA0MDIzNCwgMzEzNjgsIDMxMzczLCA0MDIzNywgNDAyNDIsIAorICAgIDQwMjQ2LCAzMDkyMywgNDAyNTIsIDEzNTkyLCA0MDI1OSwgNDAyNjQsIDMxMzc4LCA0MDI2OCwgNDAyNzMsIDQwMjc4LCAKKyAgICA0MDI4MywgNDAyODcsIDQwMjkyLCA0MDI5NywgNDAzMDMsIDQwMzA4LCA0MDMxMywgNDAzMTksIDQwMzI1LCA0MDMzMCwgCisgICAgNDAzMzQsIDQwMzM5LCA0MDM0NCwgNDAzNDksIDQwMzUzLCA0MDM1OCwgNDAzNjMsIDQwMzY4LCA0MDM3NCwgNDAzODAsIAorICAgIDQwMzg2LCA0MDM5MSwgNDAzOTUsIDQwNDAwLCA0MDQwNCwgMzEzODIsIDMxMzg3LCAzMTM5MiwgNDA0MDgsIDQwNDEyLCAKKyAgICA0MDQxNiwgMzEzOTcsIDMxNDAzLCAzMTQwOSwgMzE0MjEsIDQwNDI4LCAyNTk5NiwgNDA0MzIsIDQwNDM2LCA0MDQ0MSwgCisgICAgNDA0NDYsIDQwNDUxLCA0MDQ1NiwgNDA0NjAsIDQwNDY0LCA0MDQ3NCwgNDA0NzksIDQwNDg0LCA0MDQ4OCwgNDA0OTIsIAorICAgIDQwNDk1LCA0MDUwMywgMzE0NjksIDQwNTA4LCAxNDc5LCA0MDUxNCwgNDA1MjIsIDQwNTMxLCA0MDUzNSwgNDA1MzksIAorICAgIDQwNTQ3LCA0MDU1MywgNDA1NjEsIDQwNTc3LCA0MDU4MSwgNDA1ODUsIDQwNTkwLCA0MDYwNSwgMzE1MDYsIDE3NDksIAorICAgIDEyMDQ4LCA0MDYwOSwgMTM3OCwgNDA2MjEsIDQwNjIyLCA0MDYzMCwgNDA2MzcsIDQwNjQyLCA0MDY0OSwgNDA2NTQsIAorICAgIDkzNzIsIDExMTQsIDEwMzI1LCA0MDY2MSwgNDA2NjYsIDQwNjY5LCA0MDY3MiwgNDA2ODEsIDEyODYsIDQwNjg2LCAzOTAzNiwgCisgICAgNDA2OTMsIDQwNjk4LCAyMjQ4NiwgMjU1NywgNDA3MDIsIDEwNzM0LCA0MDcxMiwgNDA3MTgsIDIzMzcsIDIzNDcsIDQwNzI3LCAKKyAgICA0MDczNiwgNDA3NDYsIDQwNzU3LCAzMjkzLCAzNDIxMiwgMTAzNzcsIDM4MDcsIDE2NjY4LCAxMjkxLCA0MDc2MiwgNDA3NzAsIAorICAgIDQwNzc3LCA0MDc4MiwgNDA3ODYsIDQwNzkwLCAyMzg1OCwgMTA0MDQsIDQwNzk4LCA0MDgwNywgNDA4MTYsIDQwODI0LCAKKyAgICA0MDgzMSwgNDA4NDIsIDQwODQ3LCA0MDg2MCwgNDA4NzMsIDQwODg1LCA0MDg5NywgNDA5MDksIDQwOTIyLCA0MDkzMywgCisgICAgNDA5NDQsIDQwOTU0LCA0MDk2MiwgNDA5NzAsIDQwOTgyLCA0MDk5NCwgNDEwMDUsIDQxMDE0LCA0MTAyMiwgNDEwMjksIAorICAgIDQxMDQxLCA0MTA0OCwgNDEwNTcsIDQxMDY0LCA0MTA3NywgNDEwODIsIDQxMDkyLCA0MTA5NywgNDExMDMsIDQxMTA4LCAKKyAgICAzNzE4MiwgNDExMTIsIDQxMTE5LCA0MTEyMywgNDExMzAsIDQxMTM4LCAyNTE4LCA0MTE0NSwgNDExNTYsIDQxMTY2LCAKKyAgICA0MTE3NSwgNDExODMsIDQxMTkzLCA0MTIwMSwgNDEyMTEsIDQxMjIwLCA0MTIyNSwgNDEyMzEsIDQxMjM3LCAzNzA5LCAKKyAgICA0MTI0OCwgNDEyNTgsIDQxMjY3LCA0MTI3NiwgNDEyODYsIDQxMjk0LCA0MTMwMywgNDEzMDgsIDQxMzEzLCA0MTMxOCwgCisgICAgMTcwNSwgMzcsIDQxMzI2LCA0MTMzNCwgNDEzNDUsIDQxMzU2LCAxNjM0MywgNDEzNjYsIDQxMzcwLCA0MTM3NywgNDEzODMsIAorICAgIDQxMzg4LCA0MTM5MiwgNDE0MDMsIDQxNDEzLCA0MTQyMiwgNDE0MzMsIDE2NzE3LCAxNjcyMiwgNDE0MzgsIDQxNDQ3LCAKKyAgICA0MTQ1MiwgNDE0NjIsIDQxNDY3LCA0MTQ3NSwgNDE0ODMsIDQxNDkwLCA0MTQ5NiwgNzA3OCwgMjI4LCA0MTUwMCwgNDE1MDYsIAorICAgIDQxNTExLCA0MTUxNCwgMjExNywgMzkxNTIsIDQxNTIyLCA0MTUyNiwgNDE1MjksIDE1MTIsIDQxNTM1LCAxMzk2NywgMTI5NiwgCisgICAgNDE1NDAsIDQxNTUzLCA0MTU2NywgMjY0MywgNDE1ODUsIDQxNTk3LCA0MTYwOSwgMjY1NywgMjY3NCwgNDE2MjMsIDQxNjM2LCAKKyAgICAyNjg5LCA0MTY1MCwgNDE2NjIsIDI3MDQsIDQxNjc2LCAxMzAyLCAxMzA4LCAxMzE0LCAxMDY1MiwgNDE2ODEsIDQxNjg2LCAKKyAgICA0MTY5MSwgNDE2OTUsIDQxNzEwLCA0MTcyNSwgNDE3NDAsIDQxNzU1LCA0MTc3MCwgNDE3ODUsIDQxODAwLCA0MTgxNSwgCisgICAgNDE4MzAsIDQxODQ1LCA0MTg2MCwgNDE4NzUsIDQxODkwLCA0MTkwNSwgNDE5MjAsIDQxOTM1LCA0MTk1MCwgNDE5NjUsIAorICAgIDQxOTgwLCA0MTk5NSwgNDIwMTAsIDQyMDI1LCA0MjA0MCwgNDIwNTUsIDQyMDcwLCA0MjA4NSwgNDIxMDAsIDQyMTE1LCAKKyAgICA0MjEzMCwgNDIxNDUsIDQyMTYwLCA0MjE3NSwgNDIxOTAsIDQyMjA1LCA0MjIyMCwgNDIyMzUsIDQyMjUwLCA0MjI2NSwgCisgICAgNDIyODAsIDQyMjk1LCA0MjMxMCwgNDIzMjUsIDQyMzQwLCA0MjM1NSwgNDIzNzAsIDQyMzg1LCA0MjQwMCwgNDI0MTUsIAorICAgIDQyNDMwLCA0MjQ0NSwgNDI0NjAsIDQyNDc1LCA0MjQ5MCwgNDI1MDUsIDQyNTIwLCA0MjUzNSwgNDI1NTAsIDQyNTY1LCAKKyAgICA0MjU4MCwgNDI1OTUsIDQyNjEwLCA0MjYyNSwgNDI2NDAsIDQyNjU1LCA0MjY3MCwgNDI2ODUsIDQyNzAwLCA0MjcxNSwgCisgICAgNDI3MzAsIDQyNzQ1LCA0Mjc2MCwgNDI3NzUsIDQyNzkwLCA0MjgwNSwgNDI4MjAsIDQyODM1LCA0Mjg1MCwgNDI4NjUsIAorICAgIDQyODgwLCA0Mjg5NSwgNDI5MTAsIDQyOTI1LCA0Mjk0MCwgNDI5NTUsIDQyOTcwLCA0Mjk4NSwgNDMwMDAsIDQzMDE1LCAKKyAgICA0MzAzMCwgNDMwNDUsIDQzMDYwLCA0MzA3NSwgNDMwOTAsIDQzMTA1LCA0MzEyMCwgNDMxMzUsIDQzMTUwLCA0MzE2NSwgCisgICAgNDMxODAsIDQzMTk1LCA0MzIxMCwgNDMyMjUsIDQzMjQwLCA0MzI1NSwgNDMyNzAsIDQzMjg1LCA0MzMwMCwgNDMzMTUsIAorICAgIDQzMzMwLCA0MzM0NSwgNDMzNjAsIDQzMzc1LCA0MzM5MCwgNDM0MDUsIDQzNDIwLCA0MzQzNSwgNDM0NTAsIDQzNDY1LCAKKyAgICA0MzQ4MCwgNDM0OTUsIDQzNTEwLCA0MzUyNSwgNDM1NDAsIDQzNTU1LCA0MzU3MCwgNDM1ODUsIDQzNjAwLCA0MzYxNSwgCisgICAgNDM2MzAsIDQzNjQ1LCA0MzY2MCwgNDM2NzUsIDQzNjkwLCA0MzcwNSwgNDM3MjAsIDQzNzM1LCA0Mzc1MCwgNDM3NjUsIAorICAgIDQzNzgwLCA0Mzc5NSwgNDM4MTAsIDQzODI1LCA0Mzg0MCwgNDM4NTUsIDQzODcwLCA0Mzg4NSwgNDM5MDAsIDQzOTE1LCAKKyAgICA0MzkzMCwgNDM5NDUsIDQzOTYwLCA0Mzk3NSwgNDM5OTAsIDQ0MDA1LCA0NDAyMCwgNDQwMzUsIDQ0MDUwLCA0NDA2NSwgCisgICAgNDQwODAsIDQ0MDk1LCA0NDExMCwgNDQxMjUsIDQ0MTQwLCA0NDE1NSwgNDQxNzAsIDQ0MTg1LCA0NDIwMCwgNDQyMTUsIAorICAgIDQ0MjMwLCA0NDI0NSwgNDQyNjAsIDQ0Mjc1LCA0NDI5MCwgNDQzMDUsIDQ0MzIwLCA0NDMzNSwgNDQzNTAsIDQ0MzY1LCAKKyAgICA0NDM4MCwgNDQzOTUsIDQ0NDEwLCA0NDQyNSwgNDQ0NDAsIDQ0NDU1LCA0NDQ3MCwgNDQ0ODUsIDQ0NTAwLCA0NDUxNSwgCisgICAgNDQ1MzAsIDQ0NTQ1LCA0NDU2MCwgNDQ1NzUsIDQ0NTkwLCA0NDYwNSwgNDQ2MjAsIDQ0NjM1LCA0NDY1MCwgNDQ2NjUsIAorICAgIDQ0NjgwLCA0NDY5NSwgNDQ3MTAsIDQ0NzI1LCA0NDc0MCwgNDQ3NTUsIDQ0NzcwLCA0NDc4NSwgNDQ4MDAsIDQ0ODE1LCAKKyAgICA0NDgzMCwgNDQ4NDUsIDQ0ODYwLCA0NDg3NSwgNDQ4OTAsIDQ0OTA1LCA0NDkyMCwgNDQ5MzUsIDQ0OTUwLCA0NDk2NSwgCisgICAgNDQ5ODAsIDQ0OTk1LCA0NTAxMCwgNDUwMjUsIDQ1MDQwLCA0NTA1NSwgNDUwNzAsIDQ1MDg1LCA0NTEwMCwgNDUxMTUsIAorICAgIDQ1MTMwLCA0NTE0NSwgNDUxNjAsIDQ1MTc1LCA0NTE5MCwgNDUyMDUsIDQ1MjIwLCA0NTIzNSwgNDUyNTAsIDQ1MjY1LCAKKyAgICA0NTI4MCwgNDUyOTUsIDQ1MzEwLCA0NTMyNSwgNDUzNDAsIDQ1MzU1LCA0NTM3MCwgNDUzODUsIDQ1NDAwLCA0NTQxNSwgCisgICAgNDU0MzAsIDQ1NDQ1LCA0NTQ2MCwgNDU0NzUsIDQ1NDkwLCA0NTUwNSwgNDU1MjAsIDQ1NTM1LCA0NTU1MCwgNDU1NjUsIAorICAgIDQ1NTgwLCA0NTU5NSwgNDU2MTAsIDQ1NjI1LCA0NTY0MCwgNDU2NTUsIDQ1NjcwLCA0NTY4NSwgNDU3MDAsIDQ1NzE1LCAKKyAgICA0NTczMCwgNDU3NDUsIDQ1NzYwLCA0NTc3NSwgNDU3OTAsIDQ1ODA1LCA0NTgyMCwgNDU4MzUsIDQ1ODUwLCA0NTg2NSwgCisgICAgNDU4ODAsIDQ1ODk1LCA0NTkxMCwgNDU5MjUsIDQ1OTQwLCA0NTk1NSwgNDU5NzAsIDQ1OTg1LCA0NjAwMCwgNDYwMTUsIAorICAgIDQ2MDMwLCA0NjA0NSwgNDYwNjAsIDQ2MDc1LCA0NjA5MCwgNDYxMDUsIDQ2MTIwLCA0NjEzNSwgNDYxNTAsIDQ2MTY1LCAKKyAgICA0NjE4MCwgNDYxOTUsIDQ2MjEwLCA0NjIyNSwgNDYyNDAsIDQ2MjU1LCA0NjI3MCwgNDYyODUsIDQ2MzAwLCA0NjMxNSwgCisgICAgNDYzMzAsIDQ2MzQ1LCA0NjM2MCwgNDYzNzUsIDQ2MzkwLCA0NjQwNSwgNDY0MjAsIDQ2NDM1LCA0NjQ1MCwgNDY0NjUsIAorICAgIDQ2NDgwLCA0NjQ5NSwgNDY1MTAsIDQ2NTI1LCA0NjU0MCwgNDY1NTUsIDQ2NTcwLCA0NjU4NSwgNDY2MDAsIDQ2NjE1LCAKKyAgICA0NjYzMCwgNDY2NDUsIDQ2NjYwLCA0NjY3NSwgNDY2OTAsIDQ2NzA1LCA0NjcyMCwgNDY3MzUsIDQ2NzUwLCA0Njc2NSwgCisgICAgNDY3ODAsIDQ2Nzk1LCA0NjgxMCwgNDY4MjUsIDQ2ODQwLCA0Njg1NSwgNDY4NzAsIDQ2ODg1LCA0NjkwMCwgNDY5MTUsIAorICAgIDQ2OTMwLCA0Njk0NSwgNDY5NjAsIDQ2OTc1LCA0Njk5MCwgNDcwMDUsIDQ3MDIwLCA0NzAzNSwgNDcwNTAsIDQ3MDY1LCAKKyAgICA0NzA4MCwgNDcwOTUsIDQ3MTEwLCA0NzEyNSwgNDcxNDAsIDQ3MTU1LCA0NzE3MCwgNDcxODUsIDQ3MjAwLCA0NzIxNSwgCisgICAgNDcyMzAsIDQ3MjQ1LCA0NzI2MCwgNDcyNzUsIDQ3MjkwLCA0NzMwNSwgNDczMjAsIDQ3MzM1LCA0NzM1MCwgNDczNjUsIAorICAgIDQ3MzgwLCA0NzM5NSwgNDc0MTAsIDQ3NDI1LCA0NzQ0MCwgNDc0NTUsIDQ3NDcwLCA0NzQ4NSwgNDc1MDAsIDQ3NTE1LCAKKyAgICA0NzUzMCwgNDc1NDUsIDQ3NTYwLCA0NzU3NSwgNDc1OTAsIDQ3NjA1LCA0NzYyMCwgNDc2MzUsIDQ3NjUwLCA0NzY2NSwgCisgICAgNDc2ODAsIDQ3Njk1LCA0NzcxMCwgNDc3MjUsIDQ3NzQwLCA0Nzc1NSwgNDc3NzAsIDQ3Nzg1LCA0NzgwMCwgNDc4MTUsIAorICAgIDQ3ODMwLCA0Nzg0NSwgNDc4NjAsIDQ3ODc1LCA0Nzg5MCwgNDc5MDUsIDQ3OTIwLCA0NzkzNSwgNDc5NTAsIDQ3OTY1LCAKKyAgICA0Nzk4MCwgNDc5OTUsIDQ4MDEwLCA0ODAyNSwgNDgwNDAsIDQ4MDU1LCA0ODA3MCwgNDgwODUsIDQ4MTAwLCA0ODExNSwgCisgICAgNDgxMzAsIDQ4MTQ1LCA0ODE2MCwgNDgxNzUsIDQ4MTkwLCA0ODIwNSwgNDgyMjAsIDQ4MjM1LCA0ODI1MCwgNDgyNjUsIAorICAgIDQ4MjgwLCA0ODI5NSwgNDgzMTAsIDQ4MzI1LCA0ODM0MCwgNDgzNTUsIDQ4MzcwLCA0ODM4NSwgNDg0MDAsIDQ4NDE1LCAKKyAgICA0ODQzMCwgNDg0NDUsIDQ4NDYwLCA0ODQ3NSwgNDg0OTAsIDQ4NTA1LCA0ODUyMCwgNDg1MzUsIDQ4NTUwLCA0ODU2NSwgCisgICAgNDg1ODAsIDQ4NTk1LCA0ODYxMCwgNDg2MjUsIDQ4NjQwLCA0ODY1NSwgNDg2NzAsIDQ4Njg1LCA0ODcwMCwgNDg3MTUsIAorICAgIDQ4NzMwLCA0ODc0NSwgNDg3NjAsIDQ4Nzc1LCA0ODc5MCwgNDg4MDUsIDQ4ODIwLCA0ODgzNSwgNDg4NTAsIDQ4ODY1LCAKKyAgICA0ODg4MCwgNDg4OTUsIDQ4OTEwLCA0ODkyNSwgNDg5NDAsIDQ4OTU1LCA0ODk3MCwgNDg5ODUsIDQ5MDAwLCA0OTAxNSwgCisgICAgNDkwMzAsIDQ5MDQ1LCA0OTA2MCwgNDkwNzUsIDQ5MDkwLCA0OTEwNSwgNDkxMjAsIDQ5MTM1LCA0OTE1MCwgNDkxNjUsIAorICAgIDQ5MTgwLCA0OTE5NSwgNDkyMTAsIDQ5MjI1LCA0OTI0MCwgNDkyNTUsIDQ5MjcwLCA0OTI4NSwgNDkzMDAsIDQ5MzE1LCAKKyAgICA0OTMzMCwgNDkzNDUsIDQ5MzYwLCA0OTM3NSwgNDkzOTAsIDQ5NDA1LCA0OTQyMCwgNDk0MzUsIDQ5NDUwLCA0OTQ2NSwgCisgICAgNDk0ODAsIDQ5NDk1LCA0OTUxMSwgNDk1MjcsIDQ5NTQzLCA0OTU1OSwgNDk1NzUsIDQ5NTkxLCA0OTYwNywgNDk2MjMsIAorICAgIDQ5NjM5LCA0OTY1NSwgNDk2NzEsIDQ5Njg3LCA0OTcwMywgNDk3MTksIDQ5NzM1LCA0OTc1MSwgNDk3NjcsIDQ5NzgzLCAKKyAgICA0OTc5OSwgNDk4MTUsIDQ5ODMxLCA0OTg0NywgNDk4NjMsIDQ5ODc5LCA0OTg5NSwgNDk5MTEsIDQ5OTI3LCA0OTk0MywgCisgICAgNDk5NTksIDQ5OTc1LCA0OTk5MSwgNTAwMDcsIDUwMDIzLCA1MDAzOSwgNTAwNTUsIDUwMDcxLCA1MDA4NywgNTAxMDMsIAorICAgIDUwMTE5LCA1MDEzNSwgNTAxNTEsIDUwMTY3LCA1MDE4MywgNTAxOTksIDUwMjE1LCA1MDIzMSwgNTAyNDcsIDUwMjYzLCAKKyAgICA1MDI3OSwgNTAyOTUsIDUwMzExLCA1MDMyNywgNTAzNDMsIDUwMzU5LCA1MDM3NSwgNTAzOTEsIDUwNDA3LCA1MDQyMywgCisgICAgNTA0MzksIDUwNDU1LCA1MDQ3MSwgNTA0ODcsIDUwNTAzLCA1MDUxOSwgNTA1MzUsIDUwNTUxLCA1MDU2NywgNTA1ODMsIAorICAgIDUwNTk5LCA1MDYxNSwgNTA2MzEsIDUwNjQ3LCA1MDY2MywgNTA2NzksIDUwNjk1LCA1MDcxMSwgNTA3MjcsIDUwNzQzLCAKKyAgICA1MDc1OSwgNTA3NzUsIDUwNzkxLCA1MDgwNywgNTA4MjMsIDUwODM5LCA1MDg1NSwgNTA4NzEsIDUwODg3LCA1MDkwMywgCisgICAgNTA5MTksIDUwOTM1LCA1MDk1MSwgNTA5NjcsIDUwOTgzLCA1MDk5OSwgNTEwMTUsIDUxMDMxLCA1MTA0NywgNTEwNjMsIAorICAgIDUxMDc5LCA1MTA5NSwgNTExMTEsIDUxMTI3LCA1MTE0MywgNTExNTksIDUxMTc1LCA1MTE5MSwgNTEyMDcsIDUxMjIzLCAKKyAgICA1MTIzOSwgNTEyNTUsIDUxMjcxLCA1MTI4NywgNTEzMDMsIDUxMzE5LCA1MTMzNSwgNTEzNTEsIDUxMzY3LCA1MTM4MywgCisgICAgNTEzOTksIDUxNDE1LCA1MTQzMSwgNTE0NDcsIDUxNDYzLCA1MTQ3OSwgNTE0OTUsIDUxNTExLCA1MTUyNywgNTE1NDMsIAorICAgIDUxNTU5LCA1MTU3NSwgNTE1OTEsIDUxNjA3LCA1MTYyMywgNTE2MzksIDUxNjU1LCA1MTY3MSwgNTE2ODcsIDUxNzAzLCAKKyAgICA1MTcxOSwgNTE3MzUsIDUxNzUxLCA1MTc2NywgNTE3ODMsIDUxNzk5LCA1MTgxNSwgNTE4MzEsIDUxODQ3LCA1MTg2MywgCisgICAgNTE4NzksIDUxODk1LCA1MTkxMSwgNTE5MjcsIDUxOTQzLCA1MTk1OSwgNTE5NzUsIDUxOTkxLCA1MjAwNywgNTIwMjMsIAorICAgIDUyMDM5LCA1MjA1NSwgNTIwNzEsIDUyMDg3LCA1MjEwMywgNTIxMTksIDUyMTM1LCA1MjE1MSwgNTIxNjcsIDUyMTgzLCAKKyAgICA1MjE5OSwgNTIyMTUsIDUyMjMxLCA1MjI0NywgNTIyNjMsIDUyMjc5LCA1MjI5NSwgNTIzMTEsIDUyMzI3LCA1MjM0MywgCisgICAgNTIzNTksIDUyMzc1LCA1MjM5MSwgNTI0MDcsIDUyNDIzLCA1MjQzOSwgNTI0NTUsIDUyNDcxLCA1MjQ4NywgNTI1MDMsIAorICAgIDUyNTE5LCA1MjUzNSwgNTI1NTEsIDUyNTY3LCA1MjU4MywgNTI1OTksIDUyNjE1LCA1MjYzMSwgNTI2NDcsIDUyNjYzLCAKKyAgICA1MjY3OSwgNTI2OTUsIDUyNzExLCA1MjcyNywgNTI3NDMsIDUyNzU5LCA1Mjc3NSwgNTI3OTEsIDUyODA3LCA1MjgyMywgCisgICAgNTI4MzksIDUyODU1LCA1Mjg3MSwgNTI4ODcsIDUyOTAzLCA1MjkxOSwgNTI5MzUsIDUyOTUxLCA1Mjk2NywgNTI5ODMsIAorICAgIDUyOTk5LCA1MzAxNSwgNTMwMzEsIDUzMDQ3LCA1MzA2MywgNTMwNzksIDUzMDk1LCA1MzExMSwgNTMxMjcsIDUzMTQzLCAKKyAgICA1MzE1OSwgNTMxNzUsIDUzMTkxLCA1MzIwNywgNTMyMjMsIDUzMjM5LCA1MzI1NSwgNTMyNzEsIDUzMjg3LCA1MzMwMywgCisgICAgNTMzMTksIDUzMzM1LCA1MzM1MSwgNTMzNjcsIDUzMzgzLCA1MzM5OSwgNTM0MTUsIDUzNDMxLCA1MzQ0NywgNTM0NjMsIAorICAgIDUzNDc5LCA1MzQ5NSwgNTM1MTEsIDUzNTI3LCA1MzU0MywgNTM1NTksIDUzNTc1LCA1MzU5MSwgNTM2MDcsIDUzNjIzLCAKKyAgICA1MzYzOSwgNTM2NTUsIDUzNjcxLCA1MzY4NywgNTM3MDMsIDUzNzE5LCA1MzczNSwgNTM3NTEsIDUzNzY3LCA1Mzc4MywgCisgICAgNTM3OTksIDUzODE1LCA1MzgzMSwgNTM4NDcsIDUzODYzLCA1Mzg3OSwgNTM4OTUsIDUzOTExLCA1MzkyNywgNTM5NDMsIAorICAgIDUzOTU5LCA1Mzk3NSwgNTM5OTEsIDU0MDA3LCA1NDAyMywgNTQwMzksIDU0MDU1LCA1NDA3MSwgNTQwODcsIDU0MTAzLCAKKyAgICA1NDExOSwgNTQxMzUsIDU0MTUxLCA1NDE2NywgNTQxODMsIDU0MTk5LCA1NDIxNSwgNTQyMzEsIDU0MjQ3LCA1NDI2MywgCisgICAgNTQyNzksIDU0Mjk1LCA1NDMxMSwgNTQzMjcsIDU0MzQzLCA1NDM1OSwgNTQzNzUsIDU0MzkxLCA1NDQwNywgNTQ0MjMsIAorICAgIDU0NDM5LCA1NDQ1NSwgNTQ0NzEsIDU0NDg3LCA1NDUwMywgNTQ1MTksIDU0NTM1LCA1NDU1MSwgNTQ1NjcsIDU0NTgzLCAKKyAgICA1NDU5OSwgNTQ2MTUsIDU0NjMxLCA1NDY0NywgNTQ2NjMsIDU0Njc5LCA1NDY5NSwgNTQ3MTEsIDU0NzI3LCA1NDc0MywgCisgICAgNTQ3NTksIDU0Nzc1LCA1NDc5MSwgNTQ4MDcsIDU0ODIzLCA1NDgzOSwgNTQ4NTUsIDU0ODcxLCA1NDg4NywgNTQ5MDMsIAorICAgIDU0OTE5LCA1NDkzNSwgNTQ5NTEsIDU0OTY3LCA1NDk4MywgNTQ5OTksIDU1MDE1LCA1NTAzMSwgNTUwNDcsIDU1MDYzLCAKKyAgICA1NTA3OSwgNTUwOTUsIDU1MTExLCA1NTEyNywgNTUxNDMsIDU1MTU5LCA1NTE3NSwgNTUxOTEsIDU1MjA3LCA1NTIyMywgCisgICAgNTUyMzksIDU1MjU1LCA1NTI3MSwgNTUyODcsIDU1MzAzLCA1NTMxOSwgNTUzMzUsIDU1MzUxLCA1NTM2NywgNTUzODMsIAorICAgIDU1Mzk5LCA1NTQxNSwgNTU0MzEsIDU1NDQ3LCA1NTQ2MywgNTU0NzksIDU1NDk1LCA1NTUxMSwgNTU1MjcsIDU1NTQzLCAKKyAgICA1NTU1OSwgNTU1NzUsIDU1NTkxLCA1NTYwNywgNTU2MjMsIDU1NjM5LCA1NTY1NSwgNTU2NzEsIDU1Njg3LCA1NTcwMywgCisgICAgNTU3MTksIDU1NzM1LCA1NTc1MSwgNTU3NjcsIDU1NzgzLCA1NTc5OSwgNTU4MTUsIDU1ODMxLCA1NTg0NywgNTU4NjMsIAorICAgIDU1ODc5LCA1NTg5NSwgNTU5MTEsIDU1OTI3LCA1NTk0MywgNTU5NTksIDU1OTc1LCA1NTk5MSwgNTYwMDcsIDU2MDIzLCAKKyAgICA1NjAzOSwgNTYwNTUsIDU2MDcxLCA1NjA4NywgNTYxMDMsIDU2MTE5LCA1NjEzNSwgNTYxNTEsIDU2MTY3LCA1NjE4MywgCisgICAgNTYxOTksIDU2MjE1LCA1NjIzMSwgNTYyNDcsIDU2MjYzLCA1NjI3OSwgNTYyOTUsIDU2MzExLCA1NjMyNywgNTYzNDMsIAorICAgIDU2MzU5LCA1NjM3NSwgNTYzOTEsIDU2NDA3LCA1NjQyMywgNTY0MzksIDU2NDU1LCA1NjQ3MSwgNTY0ODcsIDU2NTAzLCAKKyAgICA1NjUxOSwgNTY1MzUsIDU2NTUxLCA1NjU2NywgNTY1ODMsIDU2NTk5LCA1NjYxNSwgNTY2MzEsIDU2NjQ3LCA1NjY2MywgCisgICAgNTY2NzksIDU2Njk1LCA1NjcxMSwgNTY3MjcsIDU2NzQzLCA1Njc1OSwgNTY3NzUsIDU2NzkxLCA1NjgwNywgNTY4MjMsIAorICAgIDU2ODM5LCA1Njg1NSwgNTY4NzEsIDU2ODg3LCA1NjkwMywgNTY5MTksIDU2OTM1LCA1Njk1MSwgNTY5NjcsIDU2OTgzLCAKKyAgICA1Njk5OSwgNTcwMTUsIDU3MDMxLCA1NzA0NywgNTcwNjMsIDU3MDc5LCA1NzA5NSwgNTcxMTEsIDU3MTI3LCA1NzE0MywgCisgICAgNTcxNTksIDU3MTc1LCA1NzE5MSwgNTcyMDcsIDU3MjIzLCA1NzIzOSwgNTcyNTUsIDU3MjcxLCA1NzI4NywgNTczMDMsIAorICAgIDU3MzE5LCA1NzMzNSwgNTczNTEsIDU3MzY3LCA1NzM4MywgNTczOTksIDU3NDE1LCA1NzQzMSwgNTc0NDcsIDU3NDYzLCAKKyAgICA1NzQ3OSwgNTc0OTUsIDU3NTExLCA1NzUyNywgNTc1NDMsIDU3NTU5LCA1NzU3NSwgNTc1OTEsIDU3NjA3LCA1NzYyMywgCisgICAgNTc2MzksIDU3NjU1LCA1NzY3MSwgNTc2ODcsIDU3NzAzLCA1NzcxOSwgNTc3MzUsIDU3NzUxLCA1Nzc2NywgNTc3ODMsIAorICAgIDU3Nzk5LCA1NzgxNSwgNTc4MzEsIDU3ODQ3LCA1Nzg2MywgNTc4NzksIDU3ODk1LCA1NzkxMSwgNTc5MjcsIDU3OTQzLCAKKyAgICA1Nzk1OSwgNTc5NzUsIDU3OTkxLCA1ODAwNywgNTgwMjMsIDU4MDM5LCA1ODA1NSwgNTgwNzEsIDU4MDg3LCA1ODEwMywgCisgICAgNTgxMTksIDU4MTM1LCA1ODE1MSwgNTgxNjcsIDU4MTgyLCAxNjc0OSwgNTgxOTEsIDU4MTk3LCA1ODIwMywgNTgyMTMsIAorICAgIDU4MjIxLCAxNDg4MSwgMTU0MzIsIDk5NTMsIDU4MjM0LCAxNTIwLCA1ODI0MiwgMzc2MSwgMjc0MTUsIDcxODMsIDU4MjQ4LCAKKyAgICA1ODI1MywgNTgyNTgsIDU4MjYzLCA1ODI2OCwgNTgyNzQsIDU4Mjc5LCA1ODI4NSwgNTgyOTAsIDU4Mjk2LCA1ODMwMSwgCisgICAgNTgzMDYsIDU4MzExLCA1ODMxNiwgNTgzMjIsIDU4MzI3LCA1ODMzMiwgNTgzMzcsIDU4MzQyLCA1ODM0NywgNTgzNTIsIAorICAgIDU4MzU3LCA1ODM2MywgNTgzNjgsIDU4Mzc0LCA1ODM4MSwgMjU2MSwgNTgzODYsIDU4MzkyLCA4NTI2LCA1ODM5NiwgCisgICAgNTg0MDEsIDU4NDA4LCA1ODQxNiwgNDAsIDU4NDIwLCA1ODQyNiwgNTg0MzEsIDU4NDM2LCA1ODQ0MCwgNTg0NDUsIDU4NDQ5LCAKKyAgICA1ODQ1MywgMTA2NzcsIDU4NDU3LCA1ODQ2NywgNTg0ODAsIDU4NDkxLCA1ODUwNCwgNTg1MTEsIDU4NTE3LCA1ODUyMiwgCisgICAgNTg1MjgsIDU4NTM0LCA1ODU0MCwgNTg1NDUsIDU4NTUwLCA1ODU1NSwgNTg1NjAsIDU4NTY0LCA1ODU2OSwgNTg1NzQsIAorICAgIDU4NTc5LCA1ODU4NSwgNTg1OTEsIDU4NTk3LCA1ODYwMiwgNTg2MDYsIDU4NjExLCA1ODYxNiwgNTg2MjAsIDU4NjI1LCAKKyAgICA1ODYzMCwgNTg2MzUsIDU4NjM5LCAxMDY5MywgMTA3MDQsIDEwNzA5LCAxNTYzLCA1ODY0MywgMTU2OCwgNTg2NDksIAorICAgIDE2MjI2LCA1ODY1MiwgNTg2NTgsIDE1OTksIDU4NjY0LCAxNjA1LCAxNjExLCAxMDczOSwgNTg2NjksIDU4Njc3LCA1ODY4NCwgCisgICAgNTg2ODgsIDU4Njk0LCA1ODY5OSwgMzA5NTIsIDU4NzA0LCA1ODcxMSwgNTg3MTYsIDU4NzIwLCA1ODcyNCwgMTYxNiwgCisgICAgMTYzMTgsIDU4NzMzLCA1ODczNywgMTYzMjksIDExMjAsIDU4NzQxLCA1ODc0OCwgNTg3NTMsIDU4NzU3LCAxNjM1NCwgCisgICAgMTYyMCwgMzczMjEsIDU4NzYwLCA1ODc2NSwgNTg3NzUsIDU4Nzg0LCA1ODc4OSwgNTg3OTMsIDU4Nzk5LCAxNjI1LCAKKyAgICAzOTIzMCwgNTg4MDQsIDU4ODEzLCA1ODgxOSwgNTg4MjQsIDEwODk3LCAxMDkwMywgNTg4MzAsIDU4ODQyLCA1ODg1OSwgCisgICAgNTg4NzYsIDU4ODkzLCA1ODkxMCwgNTg5MjcsIDU4OTQ0LCA1ODk2MSwgNTg5NzgsIDU4OTk1LCA1OTAxMiwgNTkwMjksIAorICAgIDU5MDQ2LCA1OTA2MywgNTkwODAsIDU5MDk3LCA1OTExNCwgNTkxMzEsIDU5MTQ4LCA1OTE2NSwgNTkxODIsIDU5MTk5LCAKKyAgICA1OTIxNiwgNTkyMzMsIDU5MjUwLCA1OTI2NywgNTkyODQsIDU5MzAxLCA1OTMxOCwgNTkzMzUsIDU5MzUyLCA1OTM2OSwgCisgICAgNTkzODYsIDU5NDAzLCA1OTQyMCwgNTk0MzcsIDU5NDU0LCA1OTQ3MSwgNTk0ODgsIDU5NTA1LCA1OTUyMiwgNTk1MzksIAorICAgIDU5NTU2LCA1OTU3MywgNTk1OTAsIDU5NjA3LCA1OTYyNCwgNTk2NDEsIDU5NjU4LCA1OTY3NSwgNTk2ODYsIDU5NjkxLCAKKyAgICAxNjMwLCA1OTY5NSwgNTk3MDEsIDU5NzA2LCA1OTcxMSwgOTMxOSwgMTYzNSwgNTk3MTcsIDU5NzI2LCAyNzcxMCwgNTk3MzEsIAorICAgIDU5NzQyLCA1OTc1MiwgNTk3NTcsIDU5NzY0LCA1OTc3MCwgNTk3NzUsIDU5NzgwLCAxNjYwNiwgNTk3ODQsIDEwOTE0LCAKKyAgICAxNjQwLCAxMDkxOSwgNTk3OTAsIDU5Nzk1LCA1OTgwMSwgNTk4MDYsIDU5ODExLCA1OTgxNiwgNTk4MjEsIDU5ODI2LCAKKyAgICA1OTgzMSwgNTk4MzYsIDU5ODQyLCA1OTg0OCwgNTk4NTQsIDU5ODU5LCA1OTg2MywgNTk4NjgsIDU5ODczLCA1OTg3NywgCisgICAgNTk4ODIsIDU5ODg3LCA1OTg5MiwgNTk4OTYsIDU5OTAxLCA1OTkwNywgNTk5MTIsIDU5OTE3LCA1OTkyMSwgNTk5MjYsIAorICAgIDU5OTMxLCA1OTkzNywgNTk5NDIsIDU5OTQ3LCA1OTk1MywgNTk5NTksIDU5OTY0LCA1OTk2OCwgNTk5NzMsIDU5OTc4LCAKKyAgICA1OTk4MywgNTk5ODcsIDU5OTkyLCA1OTk5NywgNjAwMDIsIDYwMDA4LCA2MDAxNCwgNjAwMTksIDYwMDIzLCA2MDAyNywgCisgICAgNjAwMzIsIDYwMDM3LCA2MDA0MiwgMjkxMDgsIDYwMDQ2LCA2MDA1MSwgNjAwNTYsIDYwMDYyLCA2MDA2NywgNjAwNzIsIAorICAgIDYwMDc2LCA2MDA4MSwgNjAwODYsIDYwMDkyLCA2MDA5NywgNjAxMDIsIDYwMTA4LCA2MDExNCwgNjAxMTksIDYwMTIzLCAKKyAgICA2MDEyOCwgNjAxMzMsIDYwMTM3LCA2MDE0MiwgNjAxNDcsIDYwMTUyLCA2MDE1OCwgNjAxNjQsIDYwMTY5LCA2MDE3MywgCisgICAgNjAxNzgsIDYwMTgzLCA2MDE4NywgNjAxOTIsIDYwMTk3LCA2MDIwMiwgNjAyMDYsIDYwMjA5LCAzMTYxNCwgNjAyMTQsIAorICAgIDYwMjIyLCAxNjY3MiwgMzY2MywgMTEwMTAsIDYwMjI4LCA2MDIzOCwgNjAyNTMsIDExMDE1LCA2MDI2NCwgNjAyNjksIAorICAgIDYwMjgwLCA2MDI5MiwgNjAzMDQsIDYwMzE2LCAyNjk1LCA2MDMyOCwgNjAzMzMsIDYwMzQ1LCA2MDM0OSwgNjAzNTUsIAorICAgIDYwMzYxLCA2MDM2NiwgMTY1MiwgMTA2NywgNjAzNzUsIDYwMzgwLCAzOTI4MCwgNjAzODQsIDYwMzg4LCA2MDM5MywgCisgICAgNjAzOTcsIDE2NzU3LCA2MDQwMiwgNjA0MDUsIDYwNDEzLCA2MDQyMSwgMTY1NiwgMTEwNDAsIDExMDQ2LCAxNjYxLCAKKyAgICA2MDQyOSwgNjA0MzYsIDYwNDQxLCA2MDQ1MCwgNjA0NjAsIDYwNDY3LCA2MDQ3MiwgNjA0NzcsIDE2NjYsIDYwNDg0LCAKKyAgICA2MDQ4OSwgMTY4NzIsIDYwNDkzLCA2MDQ5OCwgNjA1MDUsIDYwNTExLCA2MDUxNSwgNjA1MjYsIDYwNTM2LCAxNjg5NCwgCisgICAgOTIyNywgOTIzNCwgMTY3MSwgNjA1NDMsIDYwNTQ5LCA2MDU1NywgNjA1NjQsIDYwNTcwLCA2MDU3NywgNjA1ODksIDYwNTk1LCAKKyAgICA2MDYwMCwgNjA2MTIsIDYwNjIzLCA2MDYzMiwgNjA2NDIsIDM3NDAsIDMwNzg4LCAzMDc5NywgMTY5MzQsIDE2NzYsIDE2ODAsIAorICAgIDYwNjUwLCA2MDY2MSwgNjA2NjYsIDE2ODMsIDYwNjc0LCA2MDY3OSwgMTY5ODUsIDYwNjkxLCA2MDY5NywgNjA3MDIsIAorICAgIDYwNzEwLCAxNjg4LCA2MDcxNSwgNjA3MjAsIDYwNzI4LCA2MDczNiwgNjA3NDMsIDYwNzUyLCA2MDc2MCwgNjA3NjksIAorICAgIDE2OTMsIDYwNzczLCAxNjk4LCA2MDc3OCwgNjA3ODUsIDE3MDU5LCA2MDc5MywgNjA3OTksIDYwODA0LCA2MDgxMiwgCisgICAgNjA4MTksIDYwODI3LCAyMjU1NywgNjA4MzIsIDExMTc1LCA2MDg0MSwgNjA4NDcsIDYwODU0LCA2MDg2MSwgNjA4NjcsIAorICAgIDYwODc3LCA2MDg4MywgNjA4ODgsIDYwODk5LCA2MDkwNCwgNjA5MTIsIDExMTg0LCAxMTE4OSwgNjA5MjAsIDYwOTI2LCAKKyAgICA2MDkzNCwgMzgwNSwgMTcxMDEsIDM5MzY4LCA2MDkzOSwgNjA5NDUsIDYwOTUwLCA2MDk1OCwgNjA5NjUsIDEyMDI5LCAKKyAgICA2MDk3MCwgNjA5NzYsIDE3MDksIDYwOTgxLCA2MDk4NCwgMTEyNywgNjA5OTAsIDYwOTk1LCA2MTAwMCwgNjEwMDYsIAorICAgIDYxMDExLCA2MTAxNiwgNjEwMjEsIDYxMDI2LCA2MTAzMSwgNjEwMzYsIDE3MTgsIDksIDYxMDQyLCA2MTA0NiwgNjEwNTEsIAorICAgIDYxMDU1LCA2MTA1OSwgNjEwNjMsIDMxODU0LCA2MTA2OCwgNjEwNzMsIDYxMDc4LCA2MTA4MiwgNjEwODUsIDYxMDg5LCAKKyAgICA2MTA5MywgNjEwOTgsIDYxMTAyLCA2MTEwNywgNjExMTEsIDM0NTkxLCAzNDU5NiwgMzQ2MDEsIDYxMTE0LCA2MTEyMSwgCisgICAgNjExMjcsIDM5MDg5LCA2MTEzNywgMzQ2MDcsIDMyMTEyLCAzMTg2OSwgMzE4NzUsIDM0NjIzLCAzMTg4MSwgNjExNDIsIAorICAgIDYxMTQ3LCAzMjE0NSwgNjExNTEsIDYxMTU0LCA2MTE1OCwgNjExNjUsIDYxMTY4LCA2MTE3MywgNjExNzcsIDYxMTgxLCAKKyAgICA2MTE4NCwgNjExOTQsIDYxMjA2LCA2MTIxMywgNjEyMTksIDYxMjI2LCAzMzU0OCwgNjEyMjksIDg1NDMsIDg3NywgNjEyMzIsIAorICAgIDYxMjM2LCA2MTI0MSwgMzY5MCwgNjEyNDUsIDYxMjQ4LCAxMzYyNSwgNjEyNTUsIDYxMjYyLCA2MTI3NSwgNjEyODMsIAorICAgIDYxMjkyLCA2MTMwMSwgNjEzMDYsIDYxMzE2LCA2MTMyOSwgNjEzNDEsIDYxMzQ4LCA2MTM1MywgNjEzNjIsIDYxMzc1LCAKKyAgICAzNjAzNSwgNjEzOTMsIDYxMzk4LCA2MTQwNSwgNjE0MTEsIDY1MiwgNjE0MTYsIDYxNDI0LCA2MTQzMSwgMjcyNTQsIDYyNywgCisgICAgNjE0MzcsIDYxNDQzLCA2MTQ1MywgNjE0NTksIDYxNDY0LCAzMTg5OSwgNjAwMywgMzE5MTMsIDYxNDY4LCA2MTQ3OCwgCisgICAgNjE0ODMsIDYxNDkzLCA2MTUwOCwgNjE1MTQsIDYxNTIwLCAzMTkyMywgNjE1MjUsIDMxMDY5LCA2MTUyOSwgNjE1MzQsIAorICAgIDYxNTM5LCA2MTU0MywgNjE1NDgsIDE2OTM3LCA2MTU1NSwgNjE1NjAsIDYxNTY0LCA2MDQ0LCAzMTk0OSwgNjE1NjgsIAorICAgIDYxNTc0LCAzMTIsIDYxNTg0LCA2MTU5MSwgNjE1OTgsIDYxNjAzLCA2MTYxMiwgNTg3NjksIDYxNjE4LCA2MTYyNiwgCisgICAgNjE2MzAsIDYxNjM0LCA2MTYzOCwgNjE2NDIsIDYxNjQ3LCA2MTY1MSwgNjE2NTcsIDYxNjY1LCA2MTY3MCwgNjE2NzUsIAorICAgIDYxNjc5LCA2MTY4NCwgNjE2ODgsIDYxNjkyLCA2MTY5OCwgNjE3MDQsIDYxNzA5LCA2MTcxMywgMzIwNzMsIDYxNzE4LCAKKyAgICAzMjA3OSwgMzIwODUsIDYxNzIzLCA2MTcyOSwgNjE3MzYsIDYxNzQxLCA2MTc0NSwgMzEwODYsIDE2NTk5LCA2MTc0OCwgCisgICAgNjE3NTIsIDYxNzU3LCA2MTc2NCwgNjE3NzAsIDYxNzc0LCA2MTc3OSwgMzg3OTksIDYxNzg1LCA2MTc4OSwgNjE3OTMsIAorICAgIDYxNzk4LCA2MTgwNCwgNjE4MTAsIDYxODIyLCA2MTgzMSwgNjE4NDEsIDYxODQ3LCA2MTg1NCwgNjE4NTksIDYxODY0LCAKKyAgICA2MTg2OCwgNjE4NzEsIDYxODc3LCA2MTg4NCwgNjE4ODksIDYxODk0LCA2MTkwMSwgNjE5MDgsIDYxOTE0LCA2MTkxOSwgCisgICAgNjE5MjQsIDYxOTMyLCAzMjA5MCwgMjQyMywgNjE5MzcsIDYxOTQyLCA2MTk0OCwgNjE5NTMsIDYxOTU5LCA2MTk2NCwgCisgICAgNjE5NjksIDYxOTc0LCA2MTk4MCwgMzIxMTEsIDYxOTg1LCA2MTk5MSwgNjE5OTcsIDYyMDAzLCAzMjE3NSwgNjIwMDgsIAorICAgIDYyMDEzLCA2MjAxOCwgMzIxODYsIDYyMDIzLCA2MjAyOCwgNjIwMzMsIDYyMDM5LCA2MjA0NSwgMzIxOTEsIDYyMDUwLCAKKyAgICA2MjA1NSwgNjIwNjAsIDMyMjQ2LCAzMjI1MiwgNjIwNjUsIDYyMDcwLCAzMjI1NywgNjIwNzUsIDI3OTM3LCAzMjI3OSwgCisgICAgMzIyODMsIDYyMDgwLCA2MjA1NiwgNjIwODQsIDYyMDkyLCA2MjA5OCwgNjIxMDYsIDYyMTEzLCA2MjExOSwgNjIxMjksIAorICAgIDYyMTM1LCA2MjE0MiwgMTA2MjQsIDMyMjk3LCA2MjE0OCwgNjIxNjEsIDYyMTcwLCA2MjE3NiwgNjIxODUsIDYyMTkxLCAKKyAgICAyMzQ5NSwgNjIxOTgsIDYyMjA1LCA2MjIxNSwgMzIyNDcsIDYyMjE4LCA2MjIyNSwgNjIyMzAsIDYyMjM0LCA2MjIzOCwgCisgICAgNjIyNDMsIDYxMjAsIDYyMjQ3LCA2MjI1MiwgNjIyNTcsIDM0Njg1LCAzNDY5MCwgNjIyNjEsIDM0NzA0LCA2MjI2NiwgCisgICAgMzQ3MDksIDYyMjcxLCA2MjI3NywgMzQ3MjEsIDM0NzI3LCAzNDczMywgNjIyODIsIDYyMjg4LCAyMjUyMiwgNjIyOTksIAorICAgIDYyMzAyLCA2MjMxNCwgNjIzMjIsIDMyMzIwLCA2MjMyNiwgNjIzMzUsIDYyMzQ1LCA2MjM1NCwgMzIzMzAsIDYyMzU5LCAKKyAgICA2MjM2NiwgNjIzNzUsIDYyMzgxLCA2MjM4OSwgNjIzOTYsIDYwOTUsIDQzOTcsIDYyNDAxLCAzMjI1OCwgNjI0MDcsIAorICAgIDYyNDEwLCA2MjQxNiwgNjI0MjMsIDYyNDI4LCA2MjQzMywgMjM0MDUsIDYyNDM3LCA2MjQ0MywgNjI0NDksIDYyNDU0LCAKKyAgICA2MjQ1OSwgNjI0NjMsIDYyNDY5LCA2MjQ3NSwgMzM0NTgsIDg2MywgMzU2OTgsIDM2NjE5LCAzNjYyNSwgMzIzNjYsIAorICAgIDYyNDgwLCA2MjQ4NCwgNjI0ODgsIDYyNDkxLCA2MjUwNCwgNjI1MTAsIDYyNTE0LCA2MjUxNywgNjI1MjIsIDMzNzYxLCAKKyAgICA2MjUyNiwgMzEwOTEsIDIxMjc0LCA2MjUzMiwgNjAyNCwgNjAzMiwgOTA2OCwgNjI1MzUsIDYyNTQwLCA2MjU0NSwgNjI1NTAsIAorICAgIDYyNTU1LCA2MjU2MCwgNjI1NjUsIDYyNTcwLCA2MjU3NSwgNjI1ODAsIDYyNTg2LCA2MjU5MSwgNjI1OTYsIDYyNjAyLCAKKyAgICA2MjYwNywgNjI2MTIsIDYyNjE3LCA2MjYyMiwgNjI2MjcsIDYyNjMyLCA2MjYzOCwgNjI2NDMsIDYyNjQ5LCA2MjY1NCwgCisgICAgNjI2NTksIDYyNjY0LCA2MjY2OSwgNjI2NzQsIDYyNjc5LCA2MjY4NCwgNjI2ODksIDYyNjk0LCA2MjY5OSwgNjI3MDUsIAorICAgIDYyNzEwLCA2MjcxNSwgNjI3MjAsIDYyNzI1LCA2MjczMCwgNjI3MzUsIDYyNzQxLCA2Mjc0NiwgNjI3NTEsIDYyNzU2LCAKKyAgICA2Mjc2MSwgNjI3NjYsIDYyNzcxLCA2Mjc3NiwgNjI3ODEsIDYyNzg2LCA2Mjc5MiwgNjI3OTcsIDYyODAyLCA2MjgwNywgCisgICAgNjI4MTIsIDYyODE4LCA2MjgyNCwgNjI4MjksIDYyODM1LCA2Mjg0MCwgNjI4NDUsIDYyODUwLCA2Mjg1NSwgNjI4NjAsIAorICAgIDE1MTMsIDI0NSwgNjI4NjUsIDYyODY5LCA2Mjg3MywgNjI4NzcsIDI1MTE2LCA2Mjg4MSwgNjI4ODUsIDYyODkwLCA2Mjg5NCwgCisgICAgNjI4OTksIDYyOTAzLCA2MjkwOCwgNjI5MTMsIDYyOTE4LCA2MjkyMiwgNjI5MjYsIDYyOTMxLCA2MjkzNSwgMTMzNjIsIAorICAgIDYyOTQwLCA2Mjk0NCwgNjI5NTEsIDYyOTYxLCAxNTE5MywgNjI5NzAsIDYyOTc5LCA2Mjk4MywgNjI5ODgsIDYyOTkzLCAKKyAgICA2Mjk5NywgMjQ5MDcsIDMwMTksIDYzMDAxLCAxNzM1MCwgNjMwMDcsIDYzMDE2LCA2MzAyNCwgNjMwMzAsIDYzMDQyLCAKKyAgICA2MzA1NCwgNjMwNTgsIDYzMDYzLCA2MzA2NywgNjMwNzMsIDYzMDc5LCA2MzA4NCwgNjMwOTQsIDYzMTA0LCA2MzExMCwgCisgICAgNjMxMTUsIDYzMTE5LCA2MzEyNCwgNjMxMzAsIDYzMTM5LCA2MzE0OCwgNjMxNTYsIDE1NTQ3LCA2MzE2MCwgNjMxNjksIAorICAgIDYzMTc3LCA2MzE4OSwgNjMyMDAsIDYzMjExLCA2MzIyMCwgNjMyMjQsIDYzMjMzLCA2MzI0MywgNjMyNTEsIDYzMjU3LCAKKyAgICA2MzI2MiwgNjMyNjgsIDYzMjczLCA5OCwgMzA5MDAsIDYzMjg0LCAyNjI0OSwgMjYyNTksIDYzMjkwLCA2MzI5NywgNjMzMDMsIAorICAgIDYzMzA3LCA2MzMxNywgNjMzMjgsIDYzMzM2LCA2MzM0NSwgNjMzNTAsIDYzMzU1LCA2MzM1OSwgMTczMDQsIDYzMzY3LCAKKyAgICA2MzM3MSwgNjMzNzcsIDYzMzg3LCA2MzM5NCwgNjM0MDAsIDM0Nzg0LCA2MzQwNiwgNjM0MDgsIDYzNDExLCA2MzQxNSwgCisgICAgNjM0MjUsIDYzNDMxLCA2MzQzOCwgMTMzMDgsIDYzNDQ1LCA2MzQ1MSwgNjM0NjAsIDYzNDY5LCA2MzQ3NSwgNjM0ODEsIAorICAgIDYzNDg3LCA2MzQ5MiwgNjM0OTksIDYzNTA2LCA2MzUxMiwgNjM1MjUsIDYzNTM0LCA2MzU0MywgNjM1NDgsIDYzNTUyLCAKKyAgICA2MzU1OCwgNjM1NjUsIDYzNTcyLCA2MzU3OSwgNjM1ODYsIDYzNTkzLCA2MzU5OCwgNjM2MDIsIDYzNjA2LCA2MzYwOSwgCisgICAgNjM2MTksIDYzNjIzLCA2MzYzNSwgNjM2NDQsIDYzNjQ4LCA2MzY1MywgNjM2NTcsIDYzNjYzLCA2MzY2OCwgNjM2NzUsIAorICAgIDYzNjg0LCA2MzY5MiwgNjM3MDAsIDYzNzA1LCA2MzcwOSwgNjM3MTQsIDYzNzE5LCA2MzcyOSwgNjM3MzcsIDYzNzQyLCAKKyAgICA2Mzc0NiwgNjM3NTAsIDYzNzU2LCA2Mzc2OCwgNjM3NzYsIDYzNzg2LCA2Mzc5MywgNjM3OTksIDYzODA0LCA2MzgwOCwgCisgICAgNjM4MTIsIDYzODE2LCA2MzgyNSwgNjM4MzQsIDYzODQzLCA2Mzg0OSwgNjM4NTUsIDYzODYxLCA2Mzg2NiwgNjM4NzMsIAorICAgIDYzODc5LCA2Mzg4NywgNjM4OTQsIDEyNDU2LCA2MzkwMCwgNjM5MDYsIDYzOTEwLCAxNDIzMSwgNjM5MTQsIDYzOTE5LCAKKyAgICA2MzkyOSwgNjM5MzgsIDYzOTQ0LCA2Mzk1MCwgNjM5NTgsIDYzOTY1LCA2Mzk2OSwgNjM5NzMsIDYzOTc5LCA2Mzk4NywgCisgICAgNjM5OTQsIDY0MDAwLCA2NDAxMSwgNjQwMTUsIDY0MDE5LCA2NDAyMywgNjQwMjYsIDY0MDMyLCA2NDAzNywgNjQwNDEsIAorICAgIDY0MDQ1LCA2NDA1NCwgNjQwNjIsIDY0MDY5LCA2NDA3NSwgNjQwODIsIDI0MDI5LCAzODg0MSwgNjQwODcsIDY0MDk1LCAKKyAgICA2NDA5OSwgNjQxMDMsIDY0MTA2LCA2NDExNCwgNjQxMjEsIDY0MTI3LCA2NDEzNiwgNjQxNDQsIDY0MTUwLCA2NDE1NSwgCisgICAgNjQxNTksIDY0MTY0LCA2NDE2OCwgNjQxNzIsIDY0MTc3LCA2NDE4NiwgNjQxOTAsIDY0MTk3LCA2NDIwNCwgNjQyMTAsIAorICAgIDY0MjE4LCA2NDIyNCwgNjQyMzUsIDY0MjQzLCA2NDI0OSwgMjI2NTIsIDY0MjU4LCA2NDI2NSwgNjQyNzIsIDY0Mjc5LCAKKyAgICA2NDI4NiwgNjQyOTMsIDQxODcwLCAxMzE0NiwgNjQzMDAsIDY0MzA3LCA2NDMxMiwgMzQ4MjAsIDYyMTcsIDY0MzE4LCAKKyAgICA2NDMyMywgNjQzMjgsIDY0MzM0LCA2NDM0MCwgNjQzNDYsIDY0MzUxLCA2NDM1NiwgNjQzNjEsIDY0MzY2LCA2NDM3MiwgCisgICAgNjQzNzcsIDY0MzgzLCA2NDM4OCwgNjQzOTQsIDY0Mzk5LCA2NDQwNCwgNjQ0MDksIDY0NDE0LCA2NDQxOSwgNjQ0MjQsIAorICAgIDY0NDI5LCA2NDQzNSwgNjQ0NDAsIDY0NDQ2LCA2NDQ1MSwgNjQ0NTYsIDY0NDYxLCA2NDQ2NiwgNjQ0NzEsIDY0NDc2LCAKKyAgICA2NDQ4MiwgNjQ0ODcsIDY0NDkyLCA2NDQ5NywgNjQ1MDIsIDY0NTA3LCA2NDUxMiwgNjQ1MTcsIDY0NTIyLCA2NDUyNywgCisgICAgNjQ1MzIsIDY0NTM4LCA2NDU0MywgNjQ1NDgsIDY0NTUzLCA2NDU1OCwgNjQ1NjMsIDY0NTY4LCA2NDU3MywgNjQ1NzgsIAorICAgIDY0NTg0LCA2NDU4OSwgNjQ1OTQsIDY0NTk5LCA2NDYwNCwgNjQ2MDksIDY0NjE0LCA2NDYxOSwgNjQ2MjQsIDY0NjI5LCAKKyAgICA2NDYzNCwgNjQ2MzksIDY0NjQ0LCA2NDY1MCwgMTgzNCwgMjI0LCAzNzQxNywgNjQ2NTUsIDY0NjU4LCA2NDY2MywgNjQ2NjcsIAorICAgIDY0NjcwLCA2NDY3NSwgNjM2OTYsIDY0Njg2LCA2NDY5NiwgNjQ3MDMsIDY0NzE5LCA2NDcyOCwgNjQ3MzgsIDY0NzQ4LCAKKyAgICA2NDc1NiwgNjQ3NzAsIDY0Nzc4LCA2NDc4MiwgNjQ3ODUsIDY0NzkyLCA2NDc5OCwgNjQ4MDksIDY0ODIxLCA2NDgzMiwgCisgICAgNjQ4NDEsIDY0ODQ4LCAxMjk3LCAyMzI5NCwgNjQ4NTgsIDI1OTAsIDY0ODYyLCA2NDg3MSwgMTEzMywgMTcyNzcsIDM4MDU0LCAKKyAgICA2NDg3OSwgNjQ4ODcsIDY0OTAxLCA2NDkxNCwgNjQ5MTgsIDY0OTIzLCA2NDkyOCwgNjQ5MzMsIDY0OTM5LCA2NDk0NSwgCisgICAgNjQ5NTAsIDg1MzUsIDY0OTU1LCA2NDk1OSwgNjQ5NjcsIDExMDQxLCA2NDk3MiwgNjQ5NzgsIDY0OTg3LCAxNzIxLCAKKyAgICAxMTA1MywgNzM2LCA2NDk5MSwgNjUwMDAsIDY1MDEwLCAyNzAxMywgNjUwMTksIDY1MDI1LCAxNjg0OSwgNjUwMzEsIAorICAgIDY1MDM1LCAzOTY0LCAxMTM4NCwgNjUwNDEsIDY1MDQ4LCA2MDY1NiwgNjUwNTIsIDY1MDU2LCAzOTg4LCAxODksIDE0MTQ2LCAKKyAgICA2NTA2MiwgNjUwNzQsIDY1MDc4LCA2NTA4NCwgMjc3MzAsIDY1MDg4LCAxMTM3MiwgMjczMCwgNCwgNjUwOTMsIDY1MTAzLCAKKyAgICA2NTEwOSwgNjUxMjAsIDY1MTI3LCA2NTEzMywgNjUxMzksIDY1MTQ3LCA2NTE1NCwgNjUxNjAsIDY1MTcwLCA2NTE4MCwgCisgICAgNjUxOTAsIDIzNDgyLCAxMzA5LCA2NTE5OSwgNjUyMDMsIDY1MjA3LCA2NTIxMywgNjUyMTcsIDI3NTMsIDI3NTksIDg1MzIsIAorICAgIDIyNjQsIDY1MjIxLCA2NTIyNSwgNjUyMzQsIDY1MjQyLCA2NTI1MywgNjUyNjEsIDY1MjY5LCA2NTI3NSwgNjUyODAsIAorICAgIDY1MjkxLCA2NTMwMiwgNjUzMTAsIDY1MzE2LCA5Njg3LCA2NTMyMSwgNjUzMjksIDY1MzMzLCA2NTMzNywgNjUzNDEsIAorICAgIDY1MzUzLCAyODExNSwgNjUzNjAsIDY1MzcwLCA2NTM3NiwgNjUzODIsIDk3ODksIDY1MzkyLCA2NTQwMywgNjU0MTMsIAorICAgIDY1NDIyLCA2NTQyNiwgNjU0MzMsIDExMzUsIDExNzAsIDY1NDQzLCA2NTQ0OCwgNjU0NTYsIDY1NDY0LCA2NTQ3NSwgCisgICAgNjU0ODIsIDY1NDk2LCAxNDA3NSwgMzkzLCA2NTUwNiwgNjU1MTAsIDY1NTE4LCA2NTUyNywgNjU1MzUsIDY1NTQxLCAKKyAgICA2NTU1NSwgNjU1NjIsIDY1NTY4LCA2NTU3NywgNjU1ODQsIDY1NTk0LCA2NTYwMiwgMzgxMiwgMTU2LCA2NTYxMCwgNjU2MjEsIAorICAgIDY1NjI1LCA2NTYzNywgMjc5MjgsIDE2MSwgNjU2NDMsIDY1NjQ4LCA2NTY1MiwgNjU2NTksIDY1NjY1LCA2NTY3MywgCisgICAgNjU2ODAsIDg4MTgsIDY1Njg3LCA2NTY5NiwgNjU3MDQsIDM4NzgsIDY1NzE3LCA4MTk5LCA2NTcyMSwgMjc5OCwgNDUwLCAKKyAgICA2NTcyNiwgNjU3MzksIDY1NzQ0LCAxODMzLCA2NjgsIDY1NzQ4LCAzODk1LCA2NTc1NiwgNjU3NjIsIDY1NzY2LCA5MzEsIAorICAgIDY1Nzc2LCA2NTc4NSwgNjU3OTAsIDE0OTE1LCAxNDkyMiwgNDUyMzIsIDY1Nzk0LCAzODIyLCAxMzAzNCwgNjU4MDIsIAorICAgIDY1ODA5LCAyMzUzOCwgNjU4MTMsIDY1ODIwLCA2NTgyNiwgNjU4MzEsIDY1ODM2LCAxNDkzNSwgMzcyLCA2NTg0MSwgCisgICAgNjU4NTMsIDY1ODU5LCA2NTg2NywgMjgxMCwgMTc1MywgNjU4NzUsIDY1ODc3LCA2NTg4MiwgNjU4ODcsIDY1ODkyLCAKKyAgICA2NTg5OCwgNjU5MDMsIDY1OTA4LCA2NTkxMywgNjU5MTgsIDY1OTIzLCA2NTkyOCwgNjU5MzQsIDY1OTM5LCA2NTk0NCwgCisgICAgNjU5NDksIDY1OTU0LCA2NTk1OSwgNjU5NjQsIDY1OTY5LCA2NTk3NCwgNjU5ODAsIDY1OTg1LCA2NTk5MCwgNjU5OTUsIAorICAgIDY2MDAxLCA2NjAwNiwgNjYwMTIsIDY2MDE3LCA2NjAyMiwgNjYwMjcsIDY2MDMyLCA2NjAzNywgNjYwNDIsIDY2MDQ3LCAKKyAgICA2NjA1MywgNjYwNTgsIDY2MDY0LCA2NjA2OSwgNjYwNzQsIDY2MDc5LCA2NjA4NCwgNjYwODksIDY2MDk0LCA2NjA5OSwgCisgICAgNjYxMDQsIDY2MTEwLCA2NjExNSwgNjYxMjAsIDY2MTI1LCA2NjEyOSwgNjYxMzMsIDY2MTM4LCA2NjE0MiwgNjYxNDcsIAorICAgIDY2MTUyLCA2NjE1OCwgNjYxNjMsIDY2MTY3LCA2NjE3MiwgNjYxNzYsIDY2MTc5LCA2NjE4MSwgNjYxODUsIDY2MTg4LCAKKyAgICA2NjE5MywgNjYxOTcsIDY2MjAxLCA2NjIwNSwgNjYyMDksIDY2MjE4LCA2NjIyMiwgMzI1MjQsIDY2MjI1LCAzMjUyOSwgCisgICAgNjYyMzIsIDY2MjM3LCAzMjUzNCwgNjYyNDYsIDY2MjU1LCAzMjU0MCwgNjYyNjAsIDMyNTQ1LCA2NjI2OSwgNjYyNzQsIAorICAgIDExNTcxLCA2NjI3OCwgNjYyODMsIDY2Mjg4LCAzMjU1MCwgNjYyOTIsIDQwMTk2LCA2NjI5NiwgNjYyOTksIDY2MzAzLCAKKyAgICA4MjExLCA2NjMwOSwgNjYzMTQsIDY2MzE4LCAzNzA1LCAzMjU1NSwgNjYzMjEsIDY2MzI1LCA2NjMyOCwgNjYzMzMsIAorICAgIDY2MzM3LCA2NjM0MywgNjYzNTEsIDY2MzY0LCA2NjM3MywgNjYzNzksIDY2Mzg0LCA2NjM5MCwgNjYzOTQsIDY2NDAwLCAKKyAgICA2NjQwOCwgNjY0MTMsIDY2NDE3LCA2NjQyNCwgNjY0MzAsIDY2NDM4LCA2NjQ0NywgNjY0NTUsIDMyNTU4LCA2NjQ2MiwgCisgICAgNjY0NzIsIDY2NDgxLCA2NjQ5NCwgNjY0OTksIDY2NTA0LCA2NjUxMywgNjY1MTksIDY2NTI2LCA2NjUzNywgNjY1NDksIAorICAgIDY2NTU2LCA2NjU2NSwgNjY1NzQsIDY2NTgzLCA2NjU5MCwgNjY1OTYsIDY2NjAzLCA2NjYxMSwgNjY2MTgsIDY2NjI2LCAKKyAgICA2NjYzNSwgNjY2NDMsIDY2NjUwLCA2NjY1OCwgNjY2NjcsIDY2Njc1LCA2NjY4NCwgNjY2OTQsIDY2NzAzLCA2NjcxMSwgCisgICAgNjY3MTgsIDY2NzI2LCA2NjczNSwgNjY3NDMsIDY2NzUyLCA2Njc2MiwgNjY3NzEsIDY2Nzc5LCA2Njc4OCwgNjY3OTgsIAorICAgIDY2ODA3LCA2NjgxNywgNjY4MjgsIDY2ODM4LCA2Njg0NywgNjY4NTUsIDY2ODYyLCA2Njg3MCwgNjY4NzksIDY2ODg3LCAKKyAgICA2Njg5NiwgNjY5MDYsIDY2OTE1LCA2NjkyMywgNjY5MzIsIDY2OTQyLCA2Njk1MSwgNjY5NjEsIDY2OTcyLCA2Njk4MiwgCisgICAgNjY5OTEsIDY2OTk5LCA2NzAwOCwgNjcwMTgsIDY3MDI3LCA2NzAzNywgNjcwNDgsIDY3MDU4LCA2NzA2NywgNjcwNzcsIAorICAgIDY3MDg4LCA2NzA5OCwgNjcxMDksIDY3MTIxLCA2NzEzMiwgNjcxNDIsIDY3MTUxLCA2NzE1OSwgNjcxNjYsIDY3MTc0LCAKKyAgICA2NzE4MywgNjcxOTEsIDY3MjAwLCA2NzIxMCwgNjcyMTksIDY3MjI3LCA2NzIzNiwgNjcyNDYsIDY3MjU1LCA2NzI2NSwgCisgICAgNjcyNzYsIDY3Mjg2LCA2NzI5NSwgNjczMDMsIDY3MzEyLCA2NzMyMiwgNjczMzEsIDY3MzQxLCA2NzM1MiwgNjczNjIsIAorICAgIDY3MzcxLCA2NzM4MSwgNjczOTIsIDY3NDAyLCA2NzQxMywgNjc0MjUsIDY3NDM2LCA2NzQ0NiwgNjc0NTUsIDY3NDYzLCAKKyAgICA2NzQ3MiwgNjc0ODIsIDY3NDkxLCA2NzUwMSwgNjc1MTIsIDY3NTIyLCA2NzUzMSwgNjc1NDEsIDY3NTUyLCA2NzU2MiwgCisgICAgNjc1NzMsIDY3NTg1LCA2NzU5NiwgNjc2MDYsIDY3NjE1LCA2NzYyNSwgNjc2MzYsIDY3NjQ2LCA2NzY1NywgNjc2NjksIAorICAgIDY3NjgwLCA2NzY5MCwgNjc3MDEsIDY3NzEzLCA2NzcyNCwgNjc3MzYsIDY3NzQ5LCA2Nzc2MSwgNjc3NzIsIDY3NzgyLCAKKyAgICA2Nzc5MSwgNjc3OTksIDY3ODA2LCA2NzgxNCwgNjc4MjMsIDY3ODMxLCA2Nzg0MCwgNjc4NTAsIDY3ODU5LCA2Nzg2NywgCisgICAgNjc4NzYsIDY3ODg2LCA2Nzg5NSwgNjc5MDUsIDY3OTE2LCA2NzkyNiwgNjc5MzUsIDY3OTQzLCA2Nzk1MiwgNjc5NjIsIAorICAgIDY3OTcxLCA2Nzk4MSwgNjc5OTIsIDY4MDAyLCA2ODAxMSwgNjgwMjEsIDY4MDMyLCA2ODA0MiwgNjgwNTMsIDY4MDY1LCAKKyAgICA2ODA3NiwgNjgwODYsIDY4MDk1LCA2ODEwMywgNjgxMTIsIDY4MTIyLCA2ODEzMSwgNjgxNDEsIDY4MTUyLCA2ODE2MiwgCisgICAgNjgxNzEsIDY4MTgxLCA2ODE5MiwgNjgyMDIsIDY4MjEzLCA2ODIyNSwgNjgyMzYsIDY4MjQ2LCA2ODI1NSwgNjgyNjUsIAorICAgIDY4Mjc2LCA2ODI4NiwgNjgyOTcsIDY4MzA5LCA2ODMyMCwgNjgzMzAsIDY4MzQxLCA2ODM1MywgNjgzNjQsIDY4Mzc2LCAKKyAgICA2ODM4OSwgNjg0MDEsIDY4NDEyLCA2ODQyMiwgNjg0MzEsIDY4NDM5LCA2ODQ0OCwgNjg0NTgsIDY4NDY3LCA2ODQ3NywgCisgICAgNjg0ODgsIDY4NDk4LCA2ODUwNywgNjg1MTcsIDY4NTI4LCA2ODUzOCwgNjg1NDksIDY4NTYxLCA2ODU3MiwgNjg1ODIsIAorICAgIDY4NTkxLCA2ODYwMSwgNjg2MTIsIDY4NjIyLCA2ODYzMywgNjg2NDUsIDY4NjU2LCA2ODY2NiwgNjg2NzcsIDY4Njg5LCAKKyAgICA2ODcwMCwgNjg3MTIsIDY4NzI1LCA2ODczNywgNjg3NDgsIDY4NzU4LCA2ODc2NywgNjg3NzcsIDY4Nzg4LCA2ODc5OCwgCisgICAgNjg4MDksIDY4ODIxLCA2ODgzMiwgNjg4NDIsIDY4ODUzLCA2ODg2NSwgNjg4NzYsIDY4ODg4LCA2ODkwMSwgNjg5MTMsIAorICAgIDY4OTI0LCA2ODkzNCwgNjg5NDUsIDY4OTU3LCA2ODk2OCwgNjg5ODAsIDY4OTkzLCA2OTAwNSwgNjkwMTYsIDY5MDI4LCAKKyAgICA2OTA0MSwgNjkwNTMsIDY5MDY2LCA2OTA4MCwgNjkwOTMsIDY5MTA1LCA2OTExNiwgNjkxMjYsIDY5MTM1LCA2OTE0MywgCisgICAgNjkxNTAsIDY5MTU1LCA4MDU4LCA2OTE2MiwgMzI1NjgsIDY5MTY3LCA2OTE3MiwgMzI1NzMsIDY5MTc4LCAyMDkxNiwgCisgICAgMzI1NzgsIDY5MTgzLCA2OTE4OSwgNjkxOTcsIDY5MjAzLCA2OTIwOSwgNjkyMTYsIDY5MjIzLCA2OTIyOCwgNjkyMzIsIAorICAgIDY5MjM1LCA2OTIzOSwgNjkyNDgsIDY5MjU0LCA2OTI2NiwgNjkyNzcsIDY5MjgxLCAzMDgxLCA4MDMzLCA2OTI4NiwgCisgICAgNjkyODksIDY5MjkxLCA2OTI5NSwgNjkyOTksIDY5MzAzLCA2OTMwOSwgNjkzMTQsIDI1OTI3LCA2OTMxOSwgNjkzMjMsIAorICAgIDY5MzI2LCA2OTMzMSwgNjkzMzUsIDY5MzQyLCA2OTM0OCwgNjkzNTIsIDYxNzAsIDY5MzU2LCAzMjU5NSwgNjkzNjEsIAorICAgIDY5MzY4LCA2OTM3NywgNjkzODUsIDY5Mzk2LCA2OTQwNCwgNjk0MTIsIDY5NDE5LCA2OTQyNiwgNjk0MzIsIDY5NDQzLCAKKyAgICAzMjYwMCwgNjk0NDgsIDY5NDU5LCA2OTQ3MSwgNjk0NzksIDY5NDkwLCA2OTQ5OSwgNjk1MTAsIDY5NTE1LCA2OTUyMywgCisgICAgMjU1NiwgNjk1MjgsIDM0MjcwLCA2OTU0MSwgNjk1NDUsIDY5NTU3LCA2OTU2NSwgNjk1NzAsIDY5NTc4LCAxNzQ3MiwgCisgICAgNjk1ODksIDY5NTk1LCA2OTYwMiwgNjk2MTAsIDY5NjE2LCAzMjYxMCwgNjk2MjEsIDM5MTQsIDU4MjE3LCA2OTYyOCwgCisgICAgNjk2MzEsIDY5NjM5LCA2OTY1MiwgNjk2NjUsIDY5Njc4LCA2OTY5MSwgNjk2OTgsIDY5NzA5LCA2OTcxOCwgNDE2ODcsIAorICAgIDQxNjkyLCA2OTcyMywgNjk3MjcsIDY5NzM1LCA2OTc0MiwgNjk3NTEsIDY5NzU5LCA2OTc2NSwgNjk3NzQsIDY5NzgyLCAKKyAgICA2OTc5MCwgNjk3OTQsIDY5ODAzLCA2OTgxMiwgNjk4MjIsIDY5ODM1LCA2OTg0OCwgNjk4NTgsIDMyNjE1LCA2OTg2NCwgCisgICAgNjk4NzEsIDY5ODc3LCAzMjYyMSwgNjk4ODIsIDY5ODg1LCA2OTg4OSwgNjk4OTcsIDY5OTA2LCA0MTQyNSwgNjk5MTQsIAorICAgIDY5OTIzLCA2OTkzMSwgNjk5MzgsIDY5OTQ2LCA2OTk1NiwgNjk5NjUsIDY5OTc0LCA2OTk4MywgNjk5OTEsIDcwMDAyLCAKKyAgICA3MDAxMiwgOTM1OSwgMjE1NTQsIDcwMDIxLCA3MDAyNiwgNzAwMzEsIDcwMDM1LCA3MDAzOSwgNzAwNDQsIDcwMDUwLCAKKyAgICA3MDA1NSwgNzAwNjAsIDcwMDY2LCA3MDA3MSwgNzAwNzYsIDIxNTE5LCA3MDA4MSwgNzAwODgsIDcwMDk2LCA3MDEwNCwgCisgICAgNzAxMDksIDcwMTE2LCA3MDEyMywgNzAxMjgsIDcwMTMyLCA3MDEzNiwgNzAxNDQsIDcwMTUyLCAzMjYzOCwgNzAxNTgsIAorICAgIDcwMTY0LCA3MDE3NiwgNzAxODIsIDcwMTg2LCA3MDE5MywgNzAxOTgsIDcwMjA5LCA3MDIxOSwgNzAyMjksIDcwMjQxLCAKKyAgICA3MDI0NywgNzAyNTcsIDcwMjY3LCAzMjY2NSwgNzAyNzYsIDcwMjg1LCA3MDI5MSwgNzAzMDMsIDcwMzE0LCA3MDMyMSwgCisgICAgNzAzMjYsIDcwMzMwLCA3MDMzOCwgNzAzNDQsIDcwMzQ5LCA3MDM1NCwgNzAzNjEsIDcwMzY5LCA3MDM4MSwgNzAzOTEsIAorICAgIDcwNDAwLCA3MDQwOSwgNzA0MTYsIDM0MTMyLCAyMzgzNCwgNzA0MjIsIDcwNDI3LCA3MDQzMSwgNzA0MzUsIDcwNDQwLCAKKyAgICA3MDQ0NiwgNzA0NTcsIDcwNDcwLCA3MDQ3NSwgNzA0ODIsIDMyNjcwLCA3MDQ4NywgNzA0OTksIDcwNTA4LCA3MDUxOCwgCisgICAgNzA1MjksIDcwNTQyLCA3MDU0OSwgNzA1NTgsIDcwNTY3LCA3MDU3NSwgNzA1ODAsIDcwNTg2LCAxMDU4LCA3MDU5MSwgCisgICAgNzA1OTYsIDcwNjAxLCA3MDYwNiwgNzA2MTIsIDcwNjE3LCA3MDYyMiwgNzA2MjgsIDcwNjM0LCA3MDYzOSwgNzA2NDMsIAorICAgIDcwNjQ4LCA3MDY1MywgNzA2NTgsIDU4NzI5LCA3MDY2MywgNzA2NjgsIDcwNjczLCA3MDY3OCwgNzA2ODQsIDcwNjkwLCAKKyAgICA3MDY5NSwgNzA2OTksIDcwNzA0LCA3MDcwOSwgNzA3MTQsIDcwNzIwLCA3MDcyNSwgNzA3MzEsIDcwNzM2LCA3MDc0MSwgCisgICAgNzA3NDYsIDcwNzUxLCA3MDc1NSwgNzA3NjEsIDcwNzY2LCA3MDc3NSwgNzA3ODAsIDcwNzg1LCA3MDc5MCwgNzA3OTUsIAorICAgIDcwNzk5LCA3MDgwNiwgNzA4MTIsIDE3MTIyLCAxNzEyOSwgNzA4MTcsIDcwODIxLCA3MDgyNSwgNzA4MjksIDcwODMzLCAKKyAgICA0NTQ4NywgNzA4MzcsIDcwNzY3LCA3MDgzOSwgNzA4NDksIDMyNjc5LCA3MDg1MiwgNzA4NjEsIDcwODY3LCA2MTQzLCAKKyAgICAzMjY4NCwgNzA4NzEsIDcwODc3LCA3MDg4MiwgNzA4ODgsIDcwODkzLCA3MDg5NywgNzA5MDQsIDcwOTA5LCA3MDkxOSwgCisgICAgNzA5MjgsIDcwOTMyLCA3MDkzOCwgNzA5NDQsIDcwOTUwLCA3MDk1NCwgNzA5NjIsIDcwOTY5LCA3MDk3NywgNzA5ODUsIAorICAgIDMyNjg5LCA3MDk5MiwgNzA5OTUsIDcxMDAyLCA3MTAwOCwgNzEwMTMsIDcxMDE3LCA3MTAyMywgNzEwMzAsIDcxMDM1LCAKKyAgICA3MTAzOSwgNzEwNDgsIDcxMDU2LCA3MTA2MiwgNzEwNjcsIDMyNjk0LCA3MTA3NCwgNzEwODEsIDcxMDg3LCA3MTA5MiwgCisgICAgNzEwOTgsIDcxMTA1LCA3MTExMSwgMjEyODEsIDI3NDM4LCA3MTExNywgNzExMjIsIDcxMTI4LCA3MTE0MCwgNzA4MDAsIAorICAgIDcwODA3LCAyMTQ1NywgNzExNTAsIDcxMTU1LCA3MTE2MiwgNzExNjgsIDcxMTc1LCA3MTE4MSwgNzExOTIsIDcxMTk3LCAKKyAgICA5MTAzLCA3MTIwNSwgNzEyMDgsIDcxMjE0LCA3MTIxOCwgNzEyMjIsIDcxMjI1LCA3MTIzMSwgMzI0NDMsIDYxOTQsIDk2NCwgCisgICAgMTM0MTIsIDcxMjM4LCA3MTI0NCwgNzEyNTAsIDcxMjU2LCA3MTI2MiwgNzEyNjgsIDcxMjc0LCA3MTI4MCwgNzEyODYsIAorICAgIDcxMjkxLCA3MTI5NiwgNzEzMDEsIDcxMzA2LCA3MTMxMSwgNzEzMTYsIDcxMzIxLCA3MTMyNiwgNzEzMzEsIDcxMzM2LCAKKyAgICA3MTM0MSwgNzEzNDYsIDcxMzUxLCA3MTM1NywgNzEzNjIsIDcxMzY3LCA3MTM3MywgNzEzNzgsIDcxMzgzLCA3MTM4OSwgCisgICAgNzEzOTUsIDcxNDAxLCA3MTQwNywgNzE0MTMsIDcxNDE5LCA3MTQyNSwgNzE0MzEsIDcxNDM3LCA3MTQ0MiwgNzE0NDcsIAorICAgIDcxNDUzLCA3MTQ1OCwgNzE0NjMsIDcxNDY5LCA3MTQ3NCwgNzE0NzksIDcxNDg0LCA3MTQ4OSwgNzE0OTQsIDcxNDk5LCAKKyAgICA3MTUwNCwgNzE1MDksIDcxNTE0LCA3MTUxOSwgNzE1MjQsIDcxNTI5LCA3MTUzNSwgNzE1NDAsIDcxNTQ1LCA3MTU1MCwgCisgICAgNzE1NTYsIDcxNTYxLCA3MTU2NiwgNzE1NzEsIDcxNTc2LCA3MTU4MiwgNzE1ODcsIDcxNTkyLCA3MTU5NywgNzE2MDIsIAorICAgIDcxNjA3LCA3MTYxMiwgNzE2MTcsIDcxNjIyLCA3MTYyNywgNzE2MzIsIDcxNjM3LCA3MTY0MiwgNzE2NDcsIDcxNjUyLCAKKyAgICA3MTY1NywgNzE2NjIsIDcxNjY3LCA3MTY3MiwgNzE2NzcsIDcxNjgzLCA3MTY4OCwgNzE2OTMsIDcxNjk4LCA3MTcwMywgCisgICAgNzE3MDgsIDcxNzEzLCA3MTcxOCwgMTg2NCwgMTQyLCA3MTcyMywgNzE3MjcsIDcxNzMxLCA3MTczNiwgNzE3NDQsIDcxNzQ4LCAKKyAgICA3MTc1NSwgNzE3NjMsIDcxNzY3LCA3MTc4MCwgNzE3ODgsIDcxNzkyLCA3MTc5NSwgNzE4MDAsIDcxODA0LCA3MTgwOSwgCisgICAgNzE4MTMsIDcxODIxLCA3MTgyNSwgMjA5MjQsIDcxODMwLCA3MTgzNCwgNjA5MzAsIDcxODM4LCA3MTg0MSwgNzE4NDksIAorICAgIDcxODU3LCA3MTg2NSwgNzE4NzAsIDcxODc3LCA3MTg4MywgNzE4ODksIDcxODk0LCA3MTkwMSwgNzE5MDYsIDcxOTE0LCAKKyAgICA2NDkwNiwgNzE5MjEsIDcxOTI2LCA3MTkzMSwgNzE5MzUsIDExNjM4LCA3MTkzOSwgNzE5NDQsIDcxOTQ5LCA3MTk1MywgCisgICAgNzE5NTYsIDcxOTYyLCA3MTk2NiwgNzE5NzYsIDcxOTg1LCA3MTk4OCwgNzE5OTIsIDcxOTk5LCA3MjAxMiwgNzIwMTgsIAorICAgIDcyMDI2LCA3MjAzNywgNzIwNDgsIDcyMDU5LCA3MjA3MCwgNzIwNzksIDcyMDg1LCA3MjA5NCwgNzIxMDIsIDcyMTEyLCAKKyAgICA3MjEyNSwgNzIxMzIsIDcyMTQzLCA3MjE0OSwgNzIxNTQsIDcyMTU5LCA3MjE2NSwgNzIxNzEsIDcyMTgxLCA3MjE5MCwgCisgICAgNzA0ODksIDcyMTk4LCA3MjIwNCwgNzIyMTIsIDcyMjE4LCA3MjIyNiwgNzIyMjksIDcyMjMzLCA3MjIzNywgNzIyNDAsIAorICAgIDcyMjQ2LCA3MjI1MiwgNzIyNjAsIDcyMjcyLCA3MjI4NCwgNzIyOTEsIDcyMjk1LCA3MjMwNiwgNzIzMTQsIDcyMzIxLCAKKyAgICA3MjMzMywgNzIzNDEsIDcyMzQ5LCA3MjM1NiwgNzIzNjIsIDcyMzcyLCA3MjM4MSwgNzIzODYsIDcyMzk2LCA3MjQwNSwgCisgICAgNDA3NTEsIDcyNDEyLCA3MjQxNiwgNzI0MjEsIDcyNDI5LCA3MjQzNiwgNzI0NDIsIDcyNDQ2LCA3MjQ1NiwgNzI0NjcsIAorICAgIDcyNDc1LCA3MjQ4MiwgNzI0OTQsIDcyNTA2LCA3MjUxNSwgNjk1MzEsIDcyNTIyLCA3MjUzMywgNzI1NDcsIDcyNTU1LCAKKyAgICA3MjU2NSwgNzI1NzIsIDcyNTgwLCA3MjU5MiwgNzI2MDEsIDcyNjA5LCA3MjYxOSwgNzI2MzAsIDcyNjQyLCA3MjY1MSwgCisgICAgNzI2NjEsIDcyNjY4LCA3MjY3NywgNzI2OTIsIDcyNzAwLCA3MjcxMCwgNzI3MTksIDcyNzI3LCA3Mjc0MCwgNzI3NTUsIAorICAgIDcyNzU5LCA3Mjc2OCwgNzI3ODAsIDcyNzkxLCA3MjgwMiwgNzI4MTMsIDcyODIzLCA3MjgzNCwgNzI4NDIsIDcyODQ4LCAKKyAgICA3Mjg1OCwgNzI4NjYsIDcyODcyLCAyOTAwNywgNzI4NzcsIDcyODgzLCA3Mjg4OCwgNzI4OTUsIDk3MDEsIDE3NDkyLCAKKyAgICA3MjkwMSwgNzI5MTAsIDcyOTE1LCA3MjkxOSwgNzI5MjYsIDcyOTMyLCA3MjkzNywgNzI5NDIsIDcyOTUwLCA3Mjk1OCwgCisgICAgNzI5NjIsIDcyOTY1LCA3Mjk2OCwgNzI5NzAsIDcyOTc3LCA3Mjk4MywgNzI5OTQsIDcyOTk5LCA3MzAwMywgNzMwMTAsIAorICAgIDczMDE2LCA3MzAyMSwgNzMwMjksIDY1NDA1LCA2NTQxNSwgNzMwMzUsIDczMDQyLCA3MzA1MiwgMTA2MTEsIDczMDU5LCAKKyAgICA3MzA2NCwgMjkyMDMsIDczMDczLCA3MzA3OCwgNzMwODUsIDczMDk1LCA3MzEwMywgNzMxMTEsIDczMTIwLCA3MzEyNiwgCisgICAgNzMxMzIsIDczMTM5LCA3MzE0NiwgNzMxNTEsIDczMTU1LCA3MzE2MywgNzMxNjgsIDczMTczLCA3MzE4MSwgNzMxODgsIAorICAgIDczMTkzLCA3MzE5OSwgNzMyMDIsIDczMjA2LCA3MzIxNSwgNzE3NzUsIDczMjI0LCA3MzIyOCwgNzMyMzQsIDczMjQ1LCAKKyAgICA3MzI1NSwgMTc1MDEsIDczMjY2LCA3MzI3NCwgMTc1MTMsIDczMjgxLCA3MzI4NSwgNzMyOTQsIDI3MzI0LCA3MzMwMSwgCisgICAgNzMzMDUsIDczMzEwLCA3MzMyNywgNzMzMzksIDEwNTY5LCA3MzM1MSwgNzMzNTYsIDczMzYxLCA3MzM2NiwgMjA5OTcsIAorICAgIDczMzcwLCA3MzM3NSwgNzMzODAsIDczMzg2LCA3MzM5MSwgNTg0NiwgMjEwMDEsIDczMzk2LCA3MzQwMSwgNzM0MDcsIAorICAgIDczNDE0LCA3MzQxOSwgNzM0MjQsIDczNDMwLCA3MzQzNiwgNzM0NDIsIDczNDQ3LCA3MzQ1MywgNzM0NTcsIDczNDcxLCAKKyAgICA3MzQ3OSwgNzM0ODcsIDczNDkzLCA3MzQ5OCwgNzM1MDUsIDczNTE1LCA3MzUyNCwgNzM1MjksIDczNTM0LCA3MzU0MiwgCisgICAgNzM1NDcsIDczNTUzLCA3MzU1OCwgNzM1NjcsIDU5Nzg2LCA3MzU3MiwgNzM1NzUsIDczNTkzLCA3MzYxMiwgNzM2MjUsIAorICAgIDczNjM5LCA3MzY1NSwgNzM2NjIsIDczNjY5LCA3MzY3NSwgNzM2ODIsIDczNjg3LCA3MzY5MywgNzM2OTksIDczNzA3LCAKKyAgICA3MzcxMywgNzM3MTgsIDczNzIzLCA3MzczOSwgMTA1ODIsIDczNzUzLCA3Mzc2MCwgNzM3NjgsIDczNzc0LCA3Mzc3OCwgCisgICAgNzM3ODEsIDczNzg2LCA3Mzc5MSwgNzM3OTgsIDczODAzLCA3MzgxMiwgNzM4MTcsIDczODIzLCA3MzgzMiwgNzM4NDEsIAorICAgIDczODQ2LCA3Mzg1MCwgNzM4NTgsIDczODY3LCAxMTY2NywgNzM4NzYsIDczODg0LCA3Mzg4OSwgNzM4OTUsIDExNjc4LCAKKyAgICA3MzkwMCwgNzM5MDMsIDczOTA4LCA3MzkxOCwgNzM5MjcsIDczOTMyLCA3MzkzOCwgNzM5NDMsIDczOTUxLCA3Mzk1OCwgCisgICAgNzM5NjksIDczOTc5LCA3Mzk4NCwgNjQ4MzQsIDczOTg5LCA3Mzk5NSwgNzQwMDAsIDc0MDA3LCA3NDAxNiwgNzQwMjQsIAorICAgIDc0MDMwLCA3NDAzNiwgNzQwNDMsIDc0MDQ5LCA3NDA1MywgMTY5NDcsIDMwNTUsIDc0MDU4LCA3NDA2MiwgNzQwNjYsIAorICAgIDc0MDcyLCA3NDA4MSwgNzQwODcsIDc0MDk0LCA3NDA5OCwgNzQxMTksIDc0MTQxLCA3NDE1NywgNzQxNzQsIDc0MTkzLCAKKyAgICA3NDIwMiwgNzQyMTIsIDc0MjE5LCA3NDIyNiwgMjcyMTEsIDc0MjMyLCA3NDIzNiwgNzQyNDQsIDc0MjU2LCA3NDI2MiwgCisgICAgNzQyNzAsIDc0Mjc0LCA3NDI4MiwgNzQyODksIDc0MjkzLCA3NDI5OSwgNzQzMDUsIDc0MzEwLCAzNTYzLCA0MTg4NywgCisgICAgNzQzMTYsIDc0MzIwLCA3NDMyNCwgNzQzMjgsIDc0MzMzLCA3NDMzOCwgNzQzNDMsIDc0MzQ5LCA3NDM1NSwgNzQzNjEsIAorICAgIDc0MzY4LCA3NDM3NCwgNzQzODEsIDc0Mzg3LCA3NDM5MywgNzQzOTgsIDc0NDA0LCA3NDQwOSwgNzQ0MTMsIDc0NDE4LCAKKyAgICA3NDQyMiwgNzQ0MjcsIDQxOTAyLCA3NDQzMSwgNzQ0MzYsIDc0NDQ0LCA3NDQ0OCwgNzQ0NTMsIDc0NDYwLCA3NDQ2OSwgCisgICAgNzQ0NzUsIDc0NDc5LCA3NDQ4NiwgNzQ0OTAsIDc0NDkzLCA3NDUwMCwgNzQ1MDksIDc0NTE0LCA3NDUxOCwgNzQ1MjYsIAorICAgIDc0NTM1LCA3NDUzOSwgNzQ1NDcsIDc0NTUzLCA3NDU1OCwgNzQ1NjMsIDc0NTY5LCA3NDU3NSwgNzQ1ODAsIDc0NTg0LCAKKyAgICA3NDU5MCwgNzQ1OTUsIDc0NTk5LCA3NDYwMywgNzQ2MDYsIDc0NjExLCA3NDYxOSwgNzQ2MjksIDc0NjM0LCAzOTM4NywgCisgICAgNzQ2NDIsIDc0NjU0LCA3NDY1OCwgNzQ2NjQsIDc0Njc2LCA3NDY4NywgNzQ2OTQsIDc0NzAwLCA3NDcwNywgNzQ3MTksIAorICAgIDc0NzI2LCA3NDczMiwgMjEwNzUsIDc0NzM2LCA3NDc0MiwgNzQ3NDksIDc0NzU1LCA3NDc2MSwgNzQ3NjYsIDc0NzcxLCAKKyAgICA3NDc3NiwgNzQ3ODUsIDcwMzMsIDc0NzkwLCAxNjQxMywgNzQ3OTYsIDc0ODAwLCA3NDgwNCwgNzQ4MDgsIDc0ODE2LCAKKyAgICA3NDgyNSwgNzQ4MjksIDc0ODM2LCA3NDg0NSwgNzQ4NTgsIDc0ODY0LCA3NDQyMywgMzAwNjcsIDc0ODY5LCA3NDg3MSwgCisgICAgNzQ4NzYsIDc0ODgxLCA3NDg4NiwgNzQ4OTEsIDc0ODk2LCA3NDkwMSwgNzQ5MDYsIDc0OTExLCA3NDkxNiwgNzQ5MjEsIAorICAgIDc0OTI2LCA3NDkzMSwgNzQ5MzYsIDc0OTQxLCA3NDk0NywgNzQ5NTIsIDc0OTU3LCA3NDk2MiwgNzQ5NjcsIDc0OTcyLCAKKyAgICA3NDk3NywgNzQ5ODIsIDc0OTg3LCA3NDk5MywgNzQ5OTksIDc1MDA1LCA3NTAxMCwgNzUwMTUsIDc1MDI3LCA3NTAzMiwgCisgICAgMTg3MCwgNDksIDc1MDM3LCA3NTA0MiwgMzI3MjEsIDc1MDQ2LCAzMjcyNiwgMzI3MzEsIDMyNzM3LCAzMjc0MiwgNzUwNTAsIAorICAgIDMyNzQ3LCAyMjA3MCwgNzUwNzIsIDc1MDc2LCA3NTA4MCwgNzUwODUsIDc1MDg5LCAzMjc1MSwgNzUwOTMsIDc1MTAxLCAKKyAgICAzMjc1NiwgNzUxMDgsIDc1MTExLCA3NTExNiwgNzUxMjAsIDk1MzYsIDc1MTI5LCAzMjc2MSwgMjE5MzIsIDc1MTMyLCAKKyAgICA3NTEzNiwgMTQyOCwgNzUxNDEsIDMyNzcyLCA3NTE0NCwgNzUxNDksIDI1NzIwLCAyNTczMCwgMzUyMzMsIDc1MTU0LCAKKyAgICA3NTE1OSwgNzUxNjQsIDc1MTY5LCA3NTE3NSwgNzUxODAsIDc1MTg5LCA3NTE5NCwgNzUyMDEsIDc1MjA3LCA3NTIxMiwgCisgICAgNzUyMTcsIDc1MjIyLCA3NTIzMiwgNzUyNDEsIDc1MjQ2LCA3NTI1NCwgNzUyNTgsIDc1MjY2LCAzMjU4NiwgMzcyODgsIAorICAgIDc1MjczLCA3NTI3OSwgNzUyODQsIDc1Mjg5LCAxMjAwOSwgNzUyOTQsIDc1MzAwLCA3NTMwNSwgNzUzMTIsIDc1MzE4LCAKKyAgICA3NTMyMywgNzUzMzEsIDc1MzQxLCA3NTM1MSwgNzUzNTcsIDc1MzYyLCA3NTM2OCwgMTc1MjMsIDc1Mzc1LCAzNjA0OCwgCisgICAgNzUzODgsIDc1MzkzLCA3NTM5OSwgMzA5NjgsIDc1NDEyLCA3NTQxOCwgNzU0MjIsIDc1NDMxLCA3NTQzOCwgNzU0NDQsIAorICAgIDc1NDUyLCA3NTQ2MSwgNzU0NjgsIDc1NDc0LCA3NTQ3NywgNzU0ODEsIDI1ODYxLCA3NTQ4NSwgNzU0OTIsIDc1NDk4LCAKKyAgICA3NTUwNiwgNzU1MTEsIDIzOTc3LCA3NTUxNywgNzU1MjAsIDc1NTI4LCA3NTUzNiwgNzU1NTAsIDc1NTU3LCA3NTU2MywgCisgICAgNzU1NzAsIDc1NTc2LCAzMjc4NiwgNzU1ODAsIDc1NTg3LCA3NTU5NSwgNzU2MDMsIDc1NjA5LCAzMjc5MSwgNzU2MTcsIAorICAgIDc1NjIzLCA3NTYyOCwgNzU2MzgsIDc1NjQ0LCA3NTY1MywgMzA4MDUsIDM0NjkxLCA3NTY2MSwgNzU2NjYsIDc1NjcxLCAKKyAgICA3NTY3NSwgNzU2ODAsIDc1Njg0LCA3NTY5MiwgMTQ5MDcsIDM5NDAwLCA3NTY5NywgNzU3MDIsIDMyNzk2LCA2MjIzMiwgCisgICAgNzU3MDYsIDc1NzExLCA3NTcxNSwgNzU3MjQsIDc1NzMyLCA3NTczOCwgNzU3NDMsIDc1NzQ5LCA3NTc1NiwgNzU3NjIsIAorICAgIDc1NzY3LCA3NTc3MiwgNzU3ODEsIDc1NzkzLCA3NTgwOCwgMzMwNTgsIDc1ODE0LCAxNjUzMiwgMzI4MDAsIDc1ODE4LCAKKyAgICA3NTgyNSwgMjQwODcsIDc1ODMxLCA3NTgzOCwgNzU4NDcsIDc1ODU0LCA3NTg2MywgNzU4NjksIDc1ODc0LCA3NTg4MiwgCisgICAgNzU4ODgsIDMyODEwLCA3NTg5MywgNzU5MDIsIDc0NjgyLCA3NTkxMSwgNzU5MTgsIDc1OTI0LCA3NTkzMCwgNzU5NDAsIAorICAgIDc1OTQ4LCA3NTk1NSwgNzU5NTksIDMyODE1LCA3NTk2MiwgMzI4MjEsIDMyODI3LCA3NTk2NywgNzU5NzUsIDc1OTgzLCAKKyAgICA3NTk5MywgNzYwMDIsIDc2MDEwLCA3NjAxNywgNzYwMjcsIDMyODMyLCA3NjAzMSwgNzYwMzMsIDc2MDM3LCA3NjA0MiwgCisgICAgNzYwNDYsIDc2MDUwLCA3NjA1NiwgNzYwNjEsIDc2MDY1LCA3NjA3NiwgNzYwODEsIDc2MDg2LCAzMDYwLCA3NjA5MCwgCisgICAgNzYwOTcsIDc2MTAxLCA3NjExMCwgNzYxMTgsIDc2MTI1LCA3NjEzMCwgNzYxMzUsIDYyMjc4LCA3NjEzOSwgNzYxNDIsIAorICAgIDc2MTQ4LCA3NjE1NiwgNzYxNjIsIDc2MTY2LCA3NjE3MSwgNzYxNzgsIDc2MTgzLCA3NjE4OSwgMzQ3MjIsIDc2MTk0LCAKKyAgICA3NjE5NywgNzYyMDIsIDc2MjA2LCA3NjIxMSwgNzYyMTYsIDc2MjIwLCA3NjIyOCwgNzYyMzIsIDI1NzM5LCAyNTc0OCwgCisgICAgNzYyMzgsIDc2MjQ0LCA3NjI1MCwgNzYyNTUsIDc2MjU5LCA3NjI2MiwgNzYyNzIsIDc2MjgxLCA3NjI4NiwgNzYyOTIsIAorICAgIDc2Mjk5LCA3NjMwNSwgNzYzMDksIDc2MzE3LCA3NjMyMiwgMzQ3MjgsIDc2MzI2LCA3NjMzNCwgNzYzNDAsIDc2MzQ3LCAKKyAgICA3NjM1MiwgNzYzNTYsIDc2MzYxLCA1ODQwMywgMzQ3MzQsIDc2MzY3LCA3NjM3MiwgNzYzNzYsIDc2MzgxLCA3NjM4NiwgCisgICAgNzYzOTEsIDc2Mzk1LCA3NjQwMCwgNzY0MDUsIDc2NDExLCA3NjQxNiwgNzY0MjEsIDc2NDI3LCA3NjQzMywgNzY0MzgsIAorICAgIDc2NDQyLCA3NjQ0NywgNzY0NTIsIDc2NDU3LCA3NjQ2MSwgMjQwODYsIDc2NDY2LCA3NjQ3MSwgNzY0NzcsIDc2NDgzLCAKKyAgICA3NjQ4OSwgNzY0OTQsIDc2NDk4LCA3NjUwMywgNzY1MDgsIDc2NTEzLCA3NjUxNywgNzY1MjIsIDc2NTI3LCA3NjUzMiwgCisgICAgNzY1MzcsIDc2NTQxLCAzMjg0MCwgNzY1NDksIDc2NTUzLCA3NjU2MSwgNzY1NjksIDc2NTgwLCA3NjU4NSwgNzY1ODksIAorICAgIDIyMzg0LCA3NjU5NCwgNzY2MDAsIDc2NjEwLCA3NjYxNywgNzY2MjIsIDc2NjMxLCA3NjYzNiwgNzY2NDAsIDc2NjQ1LCAKKyAgICA3NjY1MywgNzY2NjEsIDc2NjY4LCA2NTA2OCwgNzY2NzQsIDc2NjgyLCA3NjY4OSwgNzY3MDAsIDc2NzA2LCA3NjcxMCwgCisgICAgNzY3MTYsIDMyODUwLCA3NjcxOSwgNzY3MjYsIDc2NzM0LCA3NjczOSwgMzk1OTEsIDc2NzQzLCA3Njc0OCwgNzY3NTUsIAorICAgIDc2NzYwLCA4OTg1LCA3Njc2NCwgNzY3NzIsIDc2Nzc5LCA3Njc4NiwgNzY3OTIsIDc2ODA2LCA2MzM0MCwgNzY4MTQsIAorICAgIDc2ODIwLCA3NjgyNCwgNzY4MjcsIDc2ODM1LCA3Njg0MiwgNzY4NDcsIDc2ODYwLCA3Njg2NywgNzY4NzEsIDc2ODc4LCAKKyAgICA3Njg4MywgNjA4MjMsIDc2ODg4LCA3Njg5MSwgNzY4OTgsIDc2OTA0LCA3NjkwOCwgNzY5MTYsIDc2OTI1LCA3NjkzNSwgCisgICAgNzY5NDUsIDc2OTU0LCA3Njk2MiwgNzY5NzMsIDc2OTc4LCA3Njk4MiwgNzY5ODcsIDc2OTkxLCAzNTM2NCwgNzY5OTksIAorICAgIDIxMzQ0LCAzNTM3MywgNzcwMDQsIDc3MDA5LCA3NzAxNCwgNzcwMTksIDc3MDI0LCA3NzAyOSwgNzcwMzQsIDc3MDM4LCAKKyAgICA3NzA0MywgNzcwNDgsIDc3MDUzLCA3NzA1OCwgNzcwNjMsIDc3MDY4LCA3NzA3MiwgNzcwNzcsIDc3MDgyLCA3NzA4NiwgCisgICAgNzcwOTAsIDc3MDk0LCA3NzA5OCwgNzcxMDMsIDc3MTA4LCA3NzExMiwgNzcxMTcsIDc3MTIxLCA3NzEyNSwgNzcxMzAsIAorICAgIDc3MTM1LCA3NzE0MCwgNzcxNDUsIDc3MTQ5LCA3NzE1NCwgNzcxNTksIDc3MTYzLCA3NzE2OCwgNzcxNzMsIDc3MTc4LCAKKyAgICA3NzE4MywgNzcxODgsIDc3MTkzLCA3NzE5OCwgNzcyMDMsIDc3MjA4LCA3NzIxMywgNzcyMTgsIDc3MjIzLCA3NzIyOCwgCisgICAgNzcyMzMsIDc3MjM4LCA3NzI0MywgNzcyNDgsIDc3MjUzLCA3NzI1OCwgNzcyNjMsIDc3MjY3LCA3NzI3MiwgNzcyNzcsIAorICAgIDc3MjgyLCA3NzI4NywgNzcyOTIsIDc3Mjk3LCA3NzMwMiwgNzczMDcsIDc3MzEyLCA3NzMxNywgNzczMjIsIDc3MzI2LCAKKyAgICA3NzMzMSwgNzczMzUsIDc3MzQwLCA3NzM0NSwgNzczNTAsIDc3MzU1LCA3NzM2MCwgNzczNjUsIDc3MzcwLCA3NzM3NSwgCisgICAgNzczODAsIDc3Mzg0LCA3NzM4OCwgNzczOTMsIDc3Mzk4LCA3NzQwMiwgNzc0MDcsIDc3NDEyLCA3NzQxNiwgNzc0MjEsIAorICAgIDc3NDI2LCA3NzQzMSwgNzc0MzYsIDc3NDQwLCA3NzQ0NSwgNzc0NTAsIDc3NDU0LCA3NzQ1OSwgNzc0NjMsIDc3NDY3LCAKKyAgICA3NzQ3MSwgNzc0NzUsIDc3NDgwLCA3NzQ4NCwgNzc0ODgsIDc3NDkyLCA3NzQ5NiwgNzc1MDAsIDc3NTA0LCA3NzUwOCwgCisgICAgNzc1MTIsIDc3NTE2LCA3NzUyMSwgNzc1MjYsIDc3NTMxLCA3NzUzNiwgNzc1NDEsIDc3NTQ2LCA3NzU1MSwgNzc1NTYsIAorICAgIDc3NTYxLCA3NzU2NiwgNzc1NzAsIDc3NTc0LCA3NzU3OCwgNzc1ODIsIDc3NTg2LCA3NzU5MCwgNzc1OTUsIDc3NTk5LCAKKyAgICA3NzYwNCwgNzc2MDgsIDc3NjEzLCA3NzYxOCwgNzc2MjIsIDc3NjI2LCA3NzYzMSwgNzc2MzUsIDc3NjM5LCA3NzY0MywgCisgICAgNzc2NDcsIDc3NjUxLCA3NzY1NSwgNzc2NTksIDc3NjYzLCA3NzY2NywgNzc2NzEsIDc3Njc1LCA3NzY3OSwgNzc2ODMsIAorICAgIDc3Njg3LCA3NzY5MiwgNzc2OTcsIDc3NzAxLCA3NzcwNSwgNzc3MDksIDc3NzEzLCA3NzcxNywgNzc3MjEsIDc3NzI2LCAKKyAgICA3NzczMCwgNzc3MzQsIDc3NzM4LCA3Nzc0MiwgNzc3NDYsIDc3NzUwLCA3Nzc1NSwgNzc3NTksIDc3NzY0LCA3Nzc2OCwgCisgICAgNzc3NzIsIDc3Nzc2LCA3Nzc4MCwgNzc3ODQsIDc3Nzg4LCA3Nzc5MiwgNzc3OTYsIDc3ODAwLCA3NzgwNCwgNzc4MDgsIAorICAgIDc3ODEzLCA3NzgxNywgNzc4MjEsIDc3ODI1LCA3NzgyOSwgNzc4MzMsIDc3ODM3LCA3Nzg0MSwgNzc4NDUsIDc3ODQ5LCAKKyAgICA3Nzg1MywgNzc4NTcsIDc3ODYyLCA3Nzg2NiwgNzc4NzAsIDc3ODc1LCA3Nzg4MCwgNzc4ODQsIDc3ODg4LCA3Nzg5MiwgCisgICAgNzc4OTYsIDc3OTAwLCA3NzkwNCwgNzc5MDgsIDc3OTEyLCA3NzkxNywgNzc5MjEsIDc3OTI2LCA3NzkzMCwgNzc5MzUsIAorICAgIDc3OTM5LCA3Nzk0NCwgNzc5NDgsIDc3OTU0LCA3Nzk1OSwgNzc5NjMsIDc3OTY4LCA3Nzk3MiwgNzc5NzcsIDc3OTgxLCAKKyAgICA3Nzk4NiwgNzc5OTAsIDc3OTk1LCAxNTIxLCA3Nzk5OSwgMjgyNCwgMTc1OSwgMTc2NCwgNzgwMDMsIDc4MDA3LCAyODI4LCAKKyAgICA3ODAxMSwgMTM5NywgNzgwMTYsIDEzNDIsIDc4MDIwLCAyODQwLCA3ODAyNCwgNzgwMzEsIDc4MDM4LCA3ODA1MiwgMjg0NCwgCisgICAgNzEzMSwgNzgwNjEsIDc4MDY5LCA3ODA3NiwgNzgwODcsIDc4MDk2LCA3ODEwMywgNzgxMTUsIDc4MTI4LCA3ODE0MSwgCisgICAgNzgxNTIsIDc4MTU3LCA3ODE2NCwgNzgxNzYsIDc4MTgwLCAyODQ4LCAxMTc0MCwgNzgxOTAsIDc4MTk1LCA3ODIwNCwgCisgICAgNzgyMTQsIDI4NTIsIDc4MjE5LCA3ODIyMywgNzgyMjgsIDc4MjM1LCA3ODI0MSwgNzgyNDksIDc4MjYxLCAxMzQ3LCAKKyAgICAxMzAzNSwgNzgyNzEsIDc4Mjc1LCA3ODI4MSwgNzgyOTUsIDc4MzA3LCA3ODMxOSwgNzgzMjksIDc4MzM4LCA3ODM0NywgCisgICAgNzgzNTYsIDc4MzY0LCA3ODM3NSwgNzgzODMsIDQwNTEsIDc4MzkzLCA3ODQwNCwgNzg0MTMsIDc4NDE5LCA3ODQzNCwgCisgICAgNzg0NDEsIDc4NDQ3LCAzNTQ4OSwgNzg0NTIsIDI4NzYsIDEzMDM5LCA3ODQ1NiwgNzg0NjMsIDg5MzAsIDc4NDcyLCAyODgxLCAKKyAgICAzMjMzNiwgNzg0NzgsIDYwNTcyLCA3ODQ4NSwgNzg0OTEsIDc4NTAyLCA3ODUwOCwgNzg1MTUsIDc4NTIxLCA3ODUyOSwgCisgICAgNzg1MzYsIDc4NTQyLCA3ODU1MiwgNzg1NjEsIDc4NTcyLCA3ODU3OSwgNzg1ODUsIDc4NTk1LCA3ODYwMywgNzg2MDksIAorICAgIDc4NjI0LCA3ODYzMCwgNzg2MzUsIDc4NjQyLCA3ODY0NSwgNzg2NTEsIDc4NjU4LCA3ODY2NCwgNzg2NzIsIDc4NjgxLCAKKyAgICA3ODY4OSwgNzg2OTUsIDc4NzA0LCA0MTQyNywgNzg3MTgsIDc4NzIzLCA3ODcyOSwgMTQ3NDQsIDc4NzM0LCA3ODc0NywgCisgICAgNzg3NTYsIDc4NzY0LCA3ODc3MSwgNzg3NzUsIDc4Nzc5LCA3ODc4MiwgNzg3ODksIDc4Nzk2LCA3ODgwNCwgNzg4MTIsIAorICAgIDc4ODIxLCA3ODgyOSwgMTQ2NzEsIDc4ODM3LCA3ODg0MiwgNzg4NDYsIDc4ODU4LCA3ODg2NSwgNzg4NzQsIDc0OCwgCisgICAgNzg4ODQsIDc4ODkzLCA3ODkwNCwgMjg5NywgNzg5MDgsIDc4OTEyLCA3ODkxOCwgNzg5MzEsIDc4OTQzLCA3ODk1MywgCisgICAgNzg5NjIsIDc4OTc0LCAyNjM1MiwgNzg5ODUsIDc4OTkzLCA3OTAwMiwgNzkwMTMsIDc5MDI0LCA3OTAzNCwgNzkwNDQsIAorICAgIDc5MDUzLCA3OTA2MSwgMTEzMDUsIDc5MDY4LCA3OTA3MiwgNzkwNzUsIDc5MDgwLCA3OTA4NSwgNzkwODksIDc5MDk1LCAKKyAgICAxMzUyLCAxMTgxMSwgNzkxMDIsIDc5MTEzLCA3OTEyMiwgNzkxMzAsIDc5MTM5LCA3OTE0NywgNzkxNjMsIDc5MTc0LCAKKyAgICA3OTE4MywgNzkxOTEsIDc5MjAzLCA3OTIxNCwgNzkyMzAsIDc5MjQwLCA3OTI2MSwgNzkyNzQsIDc5MjgyLCA3OTI4OSwgCisgICAgMTQ4NTUsIDc5MzAyLCA3OTMwNywgNzkzMTMsIDU5MDgsIDc5MzE5LCA3OTMyMiwgNzkzMjksIDc5MzM5LCA4MTc2LCAKKyAgICA3OTM0NiwgNzkzNTEsIDc5MzU2LCA3OTM2MSwgNzkzNjksIDc5Mzc4LCA3OTM4NiwgOTc0OSwgOTc1OCwgNzkzOTEsIAorICAgIDc5NDAyLCA3OTQwNywgNzk0MTMsIDI5MTMsIDI5MTgsIDc5NDE5LCAxMDg3MiwgNzk0MjUsIDc5NDMyLCA3OTQzOSwgCisgICAgNzk0NTIsIDIyNTEsIDY4LCA3OTQ1NywgNzk0NjIsIDc5NDcyLCA3OTQ3OCwgNzk0ODcsIDc5NDk1LCA3OTUwNSwgNzk1MDksIAorICAgIDc5NTE0LCA3OTUxOCwgNzk1MzAsIDI5NDEsIDc5NTM4LCA3OTU0NiwgNzk1NTEsIDc5NTYyLCA3OTU3MywgNzk1ODIsIAorICAgIDc5NTg3LCA3OTU5MywgNzk1OTgsIDc5NjA4LCA3OTYxOCwgNzk2MjMsIDc5NjI5LCA3OTYzNCwgNzk2NDMsIDIxMzk3LCAKKyAgICA3OTY0NywgNDEyOCwgMjAsIDc5NjUyLCA3OTY2MSwgNzk2NjgsIDc5Njc1LCA3OTY4MSwgNzk2ODcsIDg2NCwgNzk2OTIsIAorICAgIDc5Njk3LCA2MDkwMCwgNzk3MDIsIDc5NzA3LCA3OTcxMywgNzk3MTksIDc5NzI3LCA3OTczMiwgNzk3MzksIDc5NzQ1LCAKKyAgICA3OTc1MCwgMzgwMDEsIDQxMzIxLCA3OTc1NiwgMjk0NSwgMzIsIDc5NzY2LCA3OTc3OSwgNzk3ODQsIDc5NzkyLCA3OTc5NywgCisgICAgNzk4MDMsIDI5NjcsIDI4Mjg5LCA3OTgwOCwgNzk4MTYsIDc5ODIzLCA3OTgyOCwgNTg2NDUsIDYxOTAzLCA3OTgzNywgCisgICAgNzk4NDEsIDE3MDQsIDE4MTMsIDc5ODQ2LCA3OTg1MSwgNzk4NTgsIDE4MTcsIDI0NywgNzk4NjUsIDc5ODcxLCAyOTg5LCAKKyAgICA3OTg3NiwgNzk4ODEsIDc5ODg4LCAxODIxLCA3OTg5MywgNzk4OTksIDc5OTA0LCA3OTkxNiwgNjExOSwgNzk5MjYsIDE4MjgsIAorICAgIDc5OTMyLCA3OTkzNywgNzk5NDQsIDc5OTUxLCA3OTk2NiwgNzk5NzMsIDc5OTg0LCA3OTk5MiwgMjYxOCwgNzk5OTYsIAorICAgIDgwMDA4LCA4MDAxMywgODAwMTcsIDgwMDIzLCAyODExNCwgMjI1NiwgODAwMjcsIDgwMDM4LCA4MDA0MiwgODAwNDYsIAorICAgIDgwMDUyLCA4MDA1NiwgODAwNjUsIDgwMDY5LCA4MDA4MCwgODAwODQsIDIzMDIsIDMyMTY1LCA4MDA4OCwgODAwOTgsIAorICAgIDMwODAsIDkzNjQsIDgwMTA2LCA4MDExMSwgODAxMTUsIDgwMTI0LCA4MDEzMSwgODAxMzcsIDMwNTAsIDE3MTM5LCA4MDE0MSwgCisgICAgODAxNTQsIDgwMTcyLCA4MDE3NywgODAxODUsIDgwMTkzLCA4MDIwMywgOTk3OCwgMTMxNDcsIDgwMjE1LCA4MDIyOCwgCisgICAgODAyMzUsIDgwMjQyLCA4MDI1OCwgODAyNjUsIDgwMjcxLCAxMDk1LCA4MDI3OCwgODAyODUsIDgwMjk1LCA4MDMwNCwgCisgICAgODAzMTYsIDQyMjkxLCA4MDMyNCwgMzA2NCwgMTIwMjMsIDgwMzI3LCA4MDMzNSwgODAzMzksIDc4MjMxLCAzMDY4LCAKKyAgICA4MDM0MywgMjExNzgsIDEyMDM5LCAzNzU2LCA4MDM0NywgMzA3NCwgODAzNTEsIDgwMzYxLCA4MDM2NywgODAzNzMsIAorICAgIDgwMzc5LCA4MDM4NSwgODAzOTEsIDgwMzk3LCA4MDQwMywgODA0MDksIDgwNDE1LCA4MDQyMSwgODA0MjcsIDgwNDMzLCAKKyAgICA4MDQzOSwgODA0NDUsIDgwNDUxLCA4MDQ1NywgODA0NjMsIDgwNDY5LCA4MDQ3NSwgODA0ODEsIDgwNDg3LCA4MDQ5MywgCisgICAgODA0OTksIDgwNTA1LCA4MDUxMSwgODA1MTgsIDgwNTI1LCA4MDUzMSwgODA1MzcsIDgwNTQzLCA4MDU0OSwgODA1NTUsIAorICAgIDgwNTYxLCAxMzU3LCAxNjA0OSwgMTIwNjEsIDgwNTY3LCA4MDU3MiwgODA1NzcsIDgwNTgyLCA4MDU4NywgODA1OTIsIAorICAgIDgwNTk3LCA4MDYwMiwgODA2MDcsIDgwNjEyLCA4MDYxNywgODA2MjIsIDgwNjI3LCA4MDYzMiwgODA2MzcsIDgwNjQyLCAKKyAgICA4MDY0NywgODA2NTIsIDgwNjU3LCA4MDY2MiwgODA2NjcsIDgwNjcyLCA4MDY3NywgODA2ODIsIDgwNjg3LCA4MDY5MiwgCisgICAgODA2OTgsIDgwNzAzLCA4MDcwOCwgODA3MTQsIDgwNzE5LCA4MDcyNSwgODA3MzAsIDgwNzM1LCA4MDc0MSwgODA3NDYsIAorICAgIDgwNzUxLCA4MDc1NiwgODA3NjEsIDgwNzY2LCA4MDc3MSwgODA3NzYsIDgwNzgxLCA4MDM2MiwgODAzNjgsIDgwMzc0LCAKKyAgICA4MDM4MCwgODAzODYsIDgwMzkyLCA4MDM5OCwgODA0MDQsIDgwNDEwLCA4MDQxNiwgODA0MjIsIDgwNDI4LCA4MDQzNCwgCisgICAgODA0NDAsIDgwNDQ2LCA4MDc4NywgODA0NTIsIDgwNDU4LCA4MDQ2NCwgODA3OTMsIDgwNDcwLCA4MDQ3NiwgODA0ODIsIAorICAgIDgwNDg4LCA4MDQ5NCwgODA1MDAsIDgwNTA2LCA4MDUyNiwgODA3OTksIDgwODA1LCA4MDUzMiwgODA4MTEsIDgwNTM4LCAKKyAgICA4MDU0NCwgODA1NTAsIDgwNTU2LCA4MDU2MiwgMzA5MSwgMzA5NiwgODA4MTcsIDgwODIyLCA4MDgyNSwgODA4MzEsIAorICAgIDgwODM3LCA4MDg0NCwgODA4NDksIDgwODU0LCAyMzA3LCAKIH07CiAKIC8qIGNvZGUtPm5hbWUgcGhyYXNlYm9vayAqLwogI2RlZmluZSBwaHJhc2Vib29rX3NoaWZ0IDcKLSNkZWZpbmUgcGhyYXNlYm9va19zaG9ydCAyMTEKKyNkZWZpbmUgcGhyYXNlYm9va19zaG9ydCAyMDkKIHN0YXRpYyB1bnNpZ25lZCBjaGFyIHBocmFzZWJvb2tbXSA9IHsKLSAgICAwLCAyMTksIDIwNiwgMjQ0LCAyNTQsIDc3LCAyMjQsIDE0MywgNzcsIDUwLCA1MiwgMjQ3LCA4NiwgNTIsIDIyNiwgNTcsIAotICAgIDUyLCAyNTQsIDM1LCAyNTMsIDIyNiwgNDIsIDIyNiwgMTMxLCA0NiwgMjI2LCAxMzEsIDI1MywgMTMyLCA5NCwgNTIsIDI0OSwgCi0gICAgMTU3LCAyNDAsIDE1OSwgMjQzLCAyMDAsIDIxOSwgNjksIDIxOSwgMjMxLCAyMSwgMjEyLCA3OSwgMjEsIDExNiwgMjEsIAotICAgIDEwOSwgMjEsIDE2NiwgMjEsIDE2MywgMjEsIDE4MCwgMjEsIDE4OSwgMjEsIDE5OCwgMjEsIDE5NSwgMjEsIDIwMCwgMjQ5LCAKLSAgICAxNjQsIDIyMSwgNzAsIDIzMywgMzksIDUyLCAyNDUsIDYxLCA1MiwgMjQyLCAxMDcsIDUyLCAyMjQsIDE1OCwgNzcsIDI0OSwgCi0gICAgMTU2LCAyNTMsIDEyMiwgNywgNiwgMSwgNjEsIDcsIDYsIDEsIDI1MywgNzQsIDcsIDYsIDEsIDI1MCwgMjUyLCA3LCA2LCAxLCAKLSAgICAyNDksIDMsIDcsIDYsIDEsIDc0LCA3LCA2LCAxLCAyNDQsIDIzMCwgNywgNiwgMSwgMjQzLCAxNzcsIDcsIDYsIDEsIDI0MiwgCi0gICAgNDEsIDcsIDYsIDEsIDcyLCA3LCA2LCAxLCAyMzUsIDE0MiwgNywgNiwgMSwgMjM1LCAyNywgNywgNiwgMSwgMTUwLCA3LCA2LCAKLSAgICAxLCAxODMsIDcsIDYsIDEsIDIwNCwgNywgNiwgMSwgNzUsIDcsIDYsIDEsIDIyNiwgMjI5LCA3LCA2LCAxLCAyMjQsIDI0MCwgCi0gICAgNywgNiwgMSwgMTQ5LCA3LCA2LCAxLCAxOTcsIDcsIDYsIDEsIDIxOCwgOTksIDcsIDYsIDEsIDY5LCA3LCA2LCAxLCAyMTUsIAotICAgIDc5LCA3LCA2LCAxLCAyMTQsIDgyLCA3LCA2LCAxLCAyMTMsIDE2NiwgNywgNiwgMSwgMjEzLCAxMDUsIDcsIDYsIDEsIDIxMiwgCi0gICAgMTUyLCA0MiwgNDEsIDEyNSwgMjIzLCAyMDMsIDIxOSwgMjMxLCA0NiwgNDEsIDEyNSwgMjQ5LCAyMjQsIDI1NCwgMTc0LCAKLSAgICAxMTUsIDIzMiwgMjQyLCAyNDIsIDExNCwgMjU0LCAxNzQsIDcsIDMsIDEsIDYxLCA3LCAzLCAxLCAyNTMsIDc0LCA3LCAzLCAKLSAgICAxLCAyNTAsIDI1MiwgNywgMywgMSwgMjQ5LCAzLCA3LCAzLCAxLCA3NCwgNywgMywgMSwgMjQ0LCAyMzAsIDcsIDMsIDEsIAotICAgIDI0MywgMTc3LCA3LCAzLCAxLCAyNDIsIDQxLCA3LCAzLCAxLCA3MiwgNywgMywgMSwgMjM1LCAxNDIsIDcsIDMsIDEsIDIzNSwgCi0gICAgMjcsIDcsIDMsIDEsIDE1MCwgNywgMywgMSwgMTgzLCA3LCAzLCAxLCAyMDQsIDcsIDMsIDEsIDc1LCA3LCAzLCAxLCAyMjYsIAotICAgIDIyOSwgNywgMywgMSwgMjI0LCAyNDAsIDcsIDMsIDEsIDE0OSwgNywgMywgMSwgMTk3LCA3LCAzLCAxLCAyMTgsIDk5LCA3LCAKLSAgICAzLCAxLCA2OSwgNywgMywgMSwgMjE1LCA3OSwgNywgMywgMSwgMjE0LCA4MiwgNywgMywgMSwgMjEzLCAxNjYsIDcsIDMsIDEsIAotICAgIDIxMywgMTA1LCA3LCAzLCAxLCAyMTIsIDE1MiwgNDIsIDI0OSwgNDAsIDEyNSwgNzEsIDIzMiwgMjQyLCA0NiwgMjQ5LCA0MCwgCi0gICAgMTI1LCAyMTcsIDQyLCAyMjgsIDE4NCwgMjE5LCAyMDYsIDIzNSwgMTkxLCAyNDQsIDI1NCwgNzcsIDI1MCwgMTEwLCA1MiwgCi0gICAgMjI1LCAxMDgsIDUyLCAyNDksIDM5LCA1MiwgMjEzLCAzMSwgNTIsIDI1MSwgNjMsIDEzNCwgMjIyLCA5MiwgNTIsIDI0NywgCi0gICAgMjA5LCAyNDksIDEwMiwgNTIsIDI0NCwgMTA1LCAyMjcsIDIxLCAyMzUsIDIzNSwgMjMzLCA2NiwgNTEsIDI1NCwgMTksIAotICAgIDIyNCwgMTQzLCA3NywgMjI4LCAxNjMsIDUyLCAyMTksIDIzNiwgMjQwLCAxNjAsIDIyMywgMjUyLCA1MiwgMjMyLCAzNywgCi0gICAgMjQ4LCAyMiwgNTIsIDIyNSwgMTU1LCA1MiwgMjE4LCAyMjMsIDEwOSwgMjE4LCAyMjMsIDE2NiwgMjU0LCAxNjQsIDI1NCwgCi0gICAgMTc0LCAyMzEsIDQxLCA1MiwgMjI1LCAyMDAsIDUyLCAyMzEsIDM3LCAyNDcsIDc0LCAyNTAsIDExNywgMjE4LCAyMjMsIAotICAgIDExNiwgMjMxLCAyMTEsIDIyNywgMjEsIDIzNSwgMjM1LCAyMjMsIDE0NCwgNTEsIDI1NCwgMTksIDIyNCwgMTQzLCA3NywgCi0gICAgMjE0LCA5NywgMjQzLCAyMjgsIDEyMiwgMjI0LCAxNjYsIDIxNCwgOTcsIDI0MywgMjI4LCAxMjIsIDI0MiwgOSwgMjE0LCAKLSAgICA5NywgMjQzLCAyMjgsIDEzMywgMjI0LCAxNjQsIDIzNSwgMTkxLCAyMjQsIDE1OCwgNzcsIDcsIDYsIDEsIDExOCwgMiwgCi0gICAgMjQyLCAxMTMsIDcsIDYsIDEsIDExOCwgMiwgMTc5LCA3LCA2LCAxLCAxMTgsIDIsIDI0OSwgMjIzLCA3LCA2LCAxLCAxMTgsIAotICAgIDIsIDIxNywgNDIsIDcsIDYsIDEsIDExOCwgMiwgMjQ3LCAyMDksIDcsIDYsIDEsIDExOCwgMiwgMjIzLCAxMzEsIDQ5LCA3LCAKLSAgICA2LCAxLCAyNTQsIDE0OCwgNywgNiwgMSwgMjUwLCAyNTMsIDIsIDI1MCwgMTE3LCA3LCA2LCAxLCAxOTEsIDIsIDI0MiwgCi0gICAgMTEzLCA3LCA2LCAxLCAxOTEsIDIsIDE3OSwgNywgNiwgMSwgMTkxLCAyLCAyNDksIDIyMywgNywgNiwgMSwgMTkxLCAyLCAKLSAgICAyNDcsIDIwOSwgNywgNiwgMSwgMjQwLCAxNDYsIDIsIDI0MiwgMTEzLCA3LCA2LCAxLCAyNDAsIDE0NiwgMiwgMTc5LCA3LCAKLSAgICA2LCAxLCAyNDAsIDE0NiwgMiwgMjQ5LCAyMjMsIDcsIDYsIDEsIDI0MCwgMTQ2LCAyLCAyNDcsIDIwOSwgNywgNiwgMSwgCi0gICAgMjQ1LCAyNSwgNywgNiwgMSwgMjMwLCA5OCwgMiwgMjE3LCA0MiwgNywgNiwgMSwgMTU3LCAyLCAyNDIsIDExMywgNywgNiwgCi0gICAgMSwgMTU3LCAyLCAxNzksIDcsIDYsIDEsIDE1NywgMiwgMjQ5LCAyMjMsIDcsIDYsIDEsIDE1NywgMiwgMjE3LCA0MiwgNywgCi0gICAgNiwgMSwgMTU3LCAyLCAyNDcsIDIwOSwgMjMwLCAxNTQsIDUyLCA3LCA2LCAxLCAxNTcsIDIsIDkwLCA3LCA2LCAxLCAxMTEsIAotICAgIDIsIDI0MiwgMTEzLCA3LCA2LCAxLCAxMTEsIDIsIDE3OSwgNywgNiwgMSwgMTExLCAyLCAyNDksIDIyMywgNywgNiwgMSwgCi0gICAgMTExLCAyLCAyNDcsIDIwOSwgNywgNiwgMSwgMjEzLCAxMDYsIDIsIDE3OSwgNywgNiwgMSwgMjE3LCAxMDQsIDcsIDMsIDEsIAotICAgIDIyMCwgMjU1LCAxOTcsIDcsIDMsIDEsIDExOCwgMiwgMjQyLCAxMTMsIDcsIDMsIDEsIDExOCwgMiwgMTc5LCA3LCAzLCAxLCAKLSAgICAxMTgsIDIsIDI0OSwgMjIzLCA3LCAzLCAxLCAxMTgsIDIsIDIxNywgNDIsIDcsIDMsIDEsIDExOCwgMiwgMjQ3LCAyMDksIDcsIAotICAgIDMsIDEsIDExOCwgMiwgMjIzLCAxMzEsIDQ5LCA3LCAzLCAxLCAyNTQsIDE0OCwgNywgMywgMSwgMjUwLCAyNTMsIDIsIDI1MCwgCi0gICAgMTE3LCA3LCAzLCAxLCAxOTEsIDIsIDI0MiwgMTEzLCA3LCAzLCAxLCAxOTEsIDIsIDE3OSwgNywgMywgMSwgMTkxLCAyLCAKLSAgICAyNDksIDIyMywgNywgMywgMSwgMTkxLCAyLCAyNDcsIDIwOSwgNywgMywgMSwgMjQwLCAxNDYsIDIsIDI0MiwgMTEzLCA3LCAKLSAgICAzLCAxLCAyNDAsIDE0NiwgMiwgMTc5LCA3LCAzLCAxLCAyNDAsIDE0NiwgMiwgMjQ5LCAyMjMsIDcsIDMsIDEsIDI0MCwgCi0gICAgMTQ2LCAyLCAyNDcsIDIwOSwgNywgMywgMSwgMjQ1LCAyNSwgNywgMywgMSwgMjMwLCA5OCwgMiwgMjE3LCA0MiwgNywgMywgCi0gICAgMSwgMTU3LCAyLCAyNDIsIDExMywgNywgMywgMSwgMTU3LCAyLCAxNzksIDcsIDMsIDEsIDE1NywgMiwgMjQ5LCAyMjMsIDcsIAotICAgIDMsIDEsIDE1NywgMiwgMjE3LCA0MiwgNywgMywgMSwgMTU3LCAyLCAyNDcsIDIwOSwgMjQ3LCAxMjEsIDUyLCA3LCAzLCAxLCAKLSAgICAxNTcsIDIsIDkwLCA3LCAzLCAxLCAxMTEsIDIsIDI0MiwgMTEzLCA3LCAzLCAxLCAxMTEsIDIsIDE3OSwgNywgMywgMSwgCi0gICAgMTExLCAyLCAyNDksIDIyMywgNywgMywgMSwgMTExLCAyLCAyNDcsIDIwOSwgNywgMywgMSwgMjEzLCAxMDYsIDIsIDE3OSwgCi0gICAgNywgMywgMSwgMjE3LCAxMDQsIDcsIDMsIDEsIDIxMywgMTA2LCAyLCAyNDcsIDIwOSwgNywgNiwgMSwgMTE4LCAyLCAyMzIsIAotICAgIDM3LCA3LCAzLCAxLCAxMTgsIDIsIDIzMiwgMzcsIDcsIDYsIDEsIDExOCwgMiwgMjUxLCA3NCwgNywgMywgMSwgMTE4LCAyLCAKLSAgICAyNTEsIDc0LCA3LCA2LCAxLCAxMTgsIDIsIDIyNywgOTAsIDcsIDMsIDEsIDExOCwgMiwgMjI3LCA5MCwgNywgNiwgMSwgCi0gICAgMjUwLCAyNTMsIDIsIDE3OSwgNywgMywgMSwgMjUwLCAyNTMsIDIsIDE3OSwgNywgNiwgMSwgMjUwLCAyNTMsIDIsIDI0OSwgCi0gICAgMjIzLCA3LCAzLCAxLCAyNTAsIDI1MywgMiwgMjQ5LCAyMjMsIDcsIDYsIDEsIDI1MCwgMjUzLCAyLCA2MiwgNDksIDcsIDMsIAotICAgIDEsIDI1MCwgMjUzLCAyLCA2MiwgNDksIDcsIDYsIDEsIDI1MCwgMjUzLCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjUwLCAKLSAgICAyNTMsIDIsIDI1MCwgMTY2LCA3LCA2LCAxLCAyNDksIDQsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyNDksIDQsIDIsIDI1MCwgCi0gICAgMTY2LCA3LCA2LCAxLCAyNDksIDQsIDIsIDkwLCA3LCAzLCAxLCAyNDksIDQsIDIsIDkwLCA3LCA2LCAxLCAxOTEsIDIsIAotICAgIDIzMiwgMzcsIDcsIDMsIDEsIDE5MSwgMiwgMjMyLCAzNywgNywgNiwgMSwgMTkxLCAyLCAyNTEsIDc0LCA3LCAzLCAxLCAKLSAgICAxOTEsIDIsIDI1MSwgNzQsIDcsIDYsIDEsIDE5MSwgMiwgNjIsIDQ5LCA3LCAzLCAxLCAxOTEsIDIsIDYyLCA0OSwgNywgNiwgCi0gICAgMSwgMTkxLCAyLCAyMjcsIDkwLCA3LCAzLCAxLCAxOTEsIDIsIDIyNywgOTAsIDcsIDYsIDEsIDE5MSwgMiwgMjUwLCAxNjYsIAotICAgIDcsIDMsIDEsIDE5MSwgMiwgMjUwLCAxNjYsIDcsIDYsIDEsIDI0MywgMTc4LCAyLCAyNDksIDIyMywgNywgMywgMSwgMjQzLCAKLSAgICAxNzgsIDIsIDI0OSwgMjIzLCA3LCA2LCAxLCAyNDMsIDE3OCwgMiwgMjUxLCA3NCwgNywgMywgMSwgMjQzLCAxNzgsIDIsIAotICAgIDI1MSwgNzQsIDcsIDYsIDEsIDI0MywgMTc4LCAyLCA2MiwgNDksIDcsIDMsIDEsIDI0MywgMTc4LCAyLCA2MiwgNDksIDcsIAotICAgIDYsIDEsIDI0MywgMTc4LCAyLCAyNTAsIDExNywgNywgMywgMSwgMjQzLCAxNzgsIDIsIDI1MCwgMTE3LCA3LCA2LCAxLCAKLSAgICAyNDIsIDQyLCAyLCAyNDksIDIyMywgNywgMywgMSwgMjQyLCA0MiwgMiwgMjQ5LCAyMjMsIDcsIDYsIDEsIDI0MiwgNDIsIDIsIAotICAgIDkwLCA3LCAzLCAxLCAyNDIsIDQyLCAyLCA5MCwgNywgNiwgMSwgMjQwLCAxNDYsIDIsIDIxNywgNDIsIDcsIDMsIDEsIDI0MCwgCi0gICAgMTQ2LCAyLCAyMTcsIDQyLCA3LCA2LCAxLCAyNDAsIDE0NiwgMiwgMjMyLCAzNywgNywgMywgMSwgMjQwLCAxNDYsIDIsIAotICAgIDIzMiwgMzcsIDcsIDYsIDEsIDI0MCwgMTQ2LCAyLCAyNTEsIDc0LCA3LCAzLCAxLCAyNDAsIDE0NiwgMiwgMjUxLCA3NCwgNywgCi0gICAgNiwgMSwgMjQwLCAxNDYsIDIsIDIyNywgOTAsIDcsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyMjcsIDkwLCA3LCA2LCAxLCAyNDAsIAotICAgIDE0NiwgMiwgNjIsIDQ5LCA3LCAzLCAxLCAyNDcsIDczLCA3MiwgNywgNiwgMjYsIDIzNiwgMjYsIDcsIDMsIDI2LCAyMzYsIAotICAgIDI2LCA3LCA2LCAxLCAyMzUsIDE0MywgMiwgMjQ5LCAyMjMsIDcsIDMsIDEsIDIzNSwgMTQzLCAyLCAyNDksIDIyMywgNywgNiwgCi0gICAgMSwgMjM1LCAyOCwgMiwgMjUwLCAxMTcsIDcsIDMsIDEsIDIzNSwgMjgsIDIsIDI1MCwgMTE3LCA3LCAzLCAxLCAyMzMsIAotICAgIDI0OCwgNywgNiwgMSwgMjMzLCAxNzEsIDIsIDE3OSwgNywgMywgMSwgMjMzLCAxNzEsIDIsIDE3OSwgNywgNiwgMSwgMjMzLCAKLSAgICAxNzEsIDIsIDI1MCwgMTE3LCA3LCAzLCAxLCAyMzMsIDE3MSwgMiwgMjUwLCAxMTcsIDcsIDYsIDEsIDIzMywgMTcxLCAyLCAKLSAgICAyNTAsIDE2NiwgNywgMywgMSwgMjMzLCAxNzEsIDIsIDI1MCwgMTY2LCA3LCA2LCAxLCAyMzMsIDE3MSwgMiwgMjMxLCAzNywgCi0gICAgMjQ3LCA3NCwgNywgMywgMSwgMjMzLCAxNzEsIDIsIDIzMSwgMzcsIDI0NywgNzQsIDcsIDYsIDEsIDIzMywgMTcxLCAyLCAKLSAgICA5MCwgNywgMywgMSwgMjMzLCAxNzEsIDIsIDkwLCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAxNzksIDcsIDMsIDEsIDIzMCwgOTgsIAotICAgIDIsIDE3OSwgNywgNiwgMSwgMjMwLCA5OCwgMiwgMjUwLCAxMTcsIDcsIDMsIDEsIDIzMCwgOTgsIDIsIDI1MCwgMTE3LCA3LCAKLSAgICA2LCAxLCAyMzAsIDk4LCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjMwLCA5OCwgMiwgMjUwLCAxNjYsIDcsIDMsIDEsIDIzMCwgCi0gICAgOTgsIDIyNSwgODQsIDI1MSwgNywgMjUzLCAyMjYsIDcsIDYsIDEsIDI0NSwgOTYsIDcsIDMsIDEsIDI0NSwgOTYsIDcsIDYsIAotICAgIDEsIDE1NywgMiwgMjMyLCAzNywgNywgMywgMSwgMTU3LCAyLCAyMzIsIDM3LCA3LCA2LCAxLCAxNTcsIDIsIDI1MSwgNzQsIAotICAgIDcsIDMsIDEsIDE1NywgMiwgMjUxLCA3NCwgNywgNiwgMSwgMTU3LCAyLCA1MSwgMTc5LCA3LCAzLCAxLCAxNTcsIDIsIDUxLCAKLSAgICAxNzksIDcsIDYsIDI2LCAyMjcsIDk5LCA3LCAzLCAyNiwgMjI3LCA5OSwgNywgNiwgMSwgMjI0LCAxMTMsIDIsIDE3OSwgNywgCi0gICAgMywgMSwgMjI0LCAxMTMsIDIsIDE3OSwgNywgNiwgMSwgMjI0LCAxMTMsIDIsIDI1MCwgMTE3LCA3LCAzLCAxLCAyMjQsIAotICAgIDExMywgMiwgMjUwLCAxMTcsIDcsIDYsIDEsIDIyNCwgMTEzLCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjI0LCAxMTMsIDIsIAotICAgIDI1MCwgMTY2LCA3LCA2LCAxLCAyMjMsIDQsIDIsIDE3OSwgNywgMywgMSwgMjIzLCA0LCAyLCAxNzksIDcsIDYsIDEsIDIyMywgCi0gICAgNCwgMiwgMjQ5LCAyMjMsIDcsIDMsIDEsIDIyMywgNCwgMiwgMjQ5LCAyMjMsIDcsIDYsIDEsIDIyMywgNCwgMiwgMjUwLCAKLSAgICAxMTcsIDcsIDMsIDEsIDIyMywgNCwgMiwgMjUwLCAxMTcsIDcsIDYsIDEsIDIyMywgNCwgMiwgMjUwLCAxNjYsIDcsIDMsIDEsIAotICAgIDIyMywgNCwgMiwgMjUwLCAxNjYsIDcsIDYsIDEsIDIxOCwgMTAwLCAyLCAyNTAsIDExNywgNywgMywgMSwgMjE4LCAxMDAsIAotICAgIDIsIDI1MCwgMTE3LCA3LCA2LCAxLCAyMTgsIDEwMCwgMiwgMjUwLCAxNjYsIDcsIDMsIDEsIDIxOCwgMTAwLCAyLCAyNTAsIAotICAgIDE2NiwgNywgNiwgMSwgMjE4LCAxMDAsIDIsIDkwLCA3LCAzLCAxLCAyMTgsIDEwMCwgMiwgOTAsIDcsIDYsIDEsIDExMSwgMiwgCi0gICAgMjE3LCA0MiwgNywgMywgMSwgMTExLCAyLCAyMTcsIDQyLCA3LCA2LCAxLCAxMTEsIDIsIDIzMiwgMzcsIDcsIDMsIDEsIAotICAgIDExMSwgMiwgMjMyLCAzNywgNywgNiwgMSwgMTExLCAyLCAyNTEsIDc0LCA3LCAzLCAxLCAxMTEsIDIsIDI1MSwgNzQsIDcsIAotICAgIDYsIDEsIDExMSwgMiwgMjIzLCAxMzEsIDQ5LCA3LCAzLCAxLCAxMTEsIDIsIDIyMywgMTMxLCA0OSwgNywgNiwgMSwgMTExLCAKLSAgICAyLCA1MSwgMTc5LCA3LCAzLCAxLCAxMTEsIDIsIDUxLCAxNzksIDcsIDYsIDEsIDExMSwgMiwgMjI3LCA5MCwgNywgMywgMSwgCi0gICAgMTExLCAyLCAyMjcsIDkwLCA3LCA2LCAxLCAyMTQsIDgzLCAyLCAyNDksIDIyMywgNywgMywgMSwgMjE0LCA4MywgMiwgMjQ5LCAKLSAgICAyMjMsIDcsIDYsIDEsIDIxMywgMTA2LCAyLCAyNDksIDIyMywgNywgMywgMSwgMjEzLCAxMDYsIDIsIDI0OSwgMjIzLCA3LCAKLSAgICA2LCAxLCAyMTMsIDEwNiwgMiwgMjQ3LCAyMDksIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCAxNzksIDcsIDMsIDEsIDIxMiwgCi0gICAgMTUzLCAyLCAxNzksIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCA2MiwgNDksIDcsIDMsIDEsIDIxMiwgMTUzLCAyLCA2MiwgNDksIAotICAgIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjEyLCAxNTMsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAKLSAgICAxODQsIDE5NywgNywgMywgMSwgNTQsIDIsIDkwLCA3LCA2LCAxLCA1NCwgMiwgMTAxLCA3LCA2LCAxLCA1NCwgMiwgMjE2LCAKLSAgICAyMjQsIDcsIDMsIDEsIDU0LCAyLCAyMTYsIDIyNCwgNywgNiwgMSwgMTYwLCAxODksIDcsIDMsIDEsIDE2MCwgMTg5LCA3LCAKLSAgICA2LCAxLCAyMjcsIDQwLCA3NSwgNywgNiwgMSwgMjUwLCAyNTMsIDIsIDEwMSwgNywgMywgMSwgMjUwLCAyNTMsIDIsIDEwMSwgCi0gICAgNywgNiwgMSwgMjU0LCAxMjQsIDI0OSwgMywgNywgNiwgMSwgMjQ5LCA0LCAyLCAxMDEsIDcsIDYsIDEsIDI0OSwgNCwgMiwgCi0gICAgMjE2LCAyMjQsIDcsIDMsIDEsIDI0OSwgNCwgMiwgMjE2LCAyMjQsIDcsIDMsIDEsIDIxNiwgNTgsIDI0OCwgNSwgNywgNiwgCi0gICAgMSwgMjIzLCAyMDIsIDc0LCA3LCA2LCAxLCAyMjIsIDExMywgNywgNiwgMSwgMjI3LCA0MCwgNzQsIDcsIDYsIDEsIDI0NCwgCi0gICAgMjMxLCAyLCAxMDEsIDcsIDMsIDEsIDI0NCwgMjMxLCAyLCAxMDEsIDcsIDYsIDEsIDI0MywgMTc4LCAyLCAxMDEsIDcsIDYsIAotICAgIDEsIDI0MywgODMsIDcsIDMsIDEsIDI0MCwgMTkzLCA3LCA2LCAxLCAyMzUsIDE4MywgNywgNiwgMSwgMjQwLCAxNDYsIDIsIAotICAgIDkwLCA3LCA2LCAxLCAyMzUsIDI4LCAyLCAxMDEsIDcsIDMsIDEsIDIzNSwgMjgsIDIsIDEwMSwgNywgMywgMSwgMjMzLCAKLSAgICAxNzEsIDIsIDEzNCwgNywgMywgMSwgMjMzLCAxMjQsIDIsIDkwLCA3LCA2LCAxLCAyMTYsIDU4LCAxODMsIDcsIDYsIDEsIAotICAgIDIzMCwgOTgsIDIsIDQyLCAxMDEsIDcsIDMsIDEsIDIzMCwgOTgsIDIsIDE4NCwgNDYsIDIzMywgNjAsIDcsIDYsIDEsIDE1NywgCi0gICAgMiwgMjMxLCAzNywgMjE3LCA0MiwgNywgNiwgMSwgMTU3LCAyLCAyNDAsIDIzNSwgNywgMywgMSwgMTU3LCAyLCAyNDAsIAotICAgIDIzNSwgNywgNiwgMSwgMjI3LCA4NSwgNywgMywgMSwgMjI3LCA4NSwgNywgNiwgMSwgMjI2LCAyMzAsIDIsIDEwMSwgNywgMywgCi0gICAgMSwgMjI2LCAyMzAsIDIsIDEwMSwgNywgMSwgMjEyLCAyMDUsIDcsIDYsIDEsIDE2MCwgMTA5LCA3LCAzLCAxLCAxNjAsIAotICAgIDEwOSwgNywgNiwgMSwgMjQ1LCA0MCwgNywgMSwgMjIzLCAyMDIsIDI0NSwgNDEsIDIzMiwgMTc3LCA3LCAzLCAxLCAyMTgsIAotICAgIDEwMCwgMiwgMjI2LCAxOTMsIDEwMSwgNywgNiwgMSwgMjE4LCAxMDAsIDIsIDEwMSwgNywgMywgMSwgMjE4LCAxMDAsIDIsIAotICAgIDEwMSwgNywgNiwgMSwgMjE4LCAxMDAsIDIsIDIyMywgMjA3LCAxMDEsIDcsIDYsIDEsIDExMSwgMiwgMjQwLCAyMzUsIDcsIAotICAgIDMsIDEsIDExMSwgMiwgMjQwLCAyMzUsIDcsIDYsIDEsIDIxNSwgMTI4LCA3LCA2LCAxLCAyMTUsIDgwLCAyLCAxMDEsIDcsIAotICAgIDYsIDEsIDIxMywgMTA2LCAyLCAxMDEsIDcsIDMsIDEsIDIxMywgMTA2LCAyLCAxMDEsIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCAKLSAgICA5MCwgNywgMywgMSwgMjEyLCAxNTMsIDIsIDkwLCA3LCA2LCAxLCAyNDQsIDIzMiwgNywgNiwgMSwgMjQ0LCAyMzMsIDIyMywgCi0gICAgMjAxLCA3LCAzLCAxLCAyNDQsIDIzMywgMjIzLCAyMDEsIDcsIDMsIDEsIDI0NCwgMjMzLCAyLCAyMTgsIDI3LCA3LCAxLCAKLSAgICAxMTcsIDIsIDkwLCA3LCA2LCAxLCAxNjAsIDE4MCwgNywgMywgMSwgMTYwLCAxODAsIDcsIDEsIDIzNSwgMTkxLCAyNDIsIAotICAgIDE1NiwgMjE5LCA3MCwgMiwgOTAsIDcsIDEsIDIxMywgMTY5LCA3LCAxLCAyNDcsIDI1NCwgMjQ5LCAyMDQsIDcsIDEsIDIzMywgCi0gICAgMTAwLCAyNDksIDIwNCwgNywgMSwgMjU0LCA0NiwgMjQ5LCAyMDQsIDcsIDEsIDIyMywgMjA3LCAyNDksIDIwNCwgNywgNiwgCi0gICAgMSwgMjQ1LCAyNTEsIDIsIDI1MCwgMTY2LCA3LCA2LCAxLCAyNDksIDQsIDIsIDMsIDEsIDIxMiwgMTUzLCAyLCAyNTAsIAotICAgIDE2NiwgNywgMywgMSwgMjQ1LCAyNTEsIDIsIDI1MCwgMTY2LCA3LCA2LCAxLCAyMzIsIDIxNywgNywgNiwgMSwgMjMzLCAKLSAgICAxNzEsIDIsIDMsIDEsIDIzNSwgMTQyLCA3LCAzLCAxLCAyMzIsIDIxNywgNywgNiwgMSwgMjI5LCAxNywgNywgNiwgMSwgCi0gICAgMjMwLCA5OCwgMiwgMywgMSwgMjM1LCAxNDIsIDcsIDMsIDEsIDIyOSwgMTcsIDcsIDYsIDEsIDExOCwgMiwgMjUwLCAxNjYsIAotICAgIDcsIDMsIDEsIDExOCwgMiwgMjUwLCAxNjYsIDcsIDYsIDEsIDI0MCwgMTQ2LCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjQwLCAKLSAgICAxNDYsIDIsIDI1MCwgMTY2LCA3LCA2LCAxLCAxNTcsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAxNTcsIDIsIDI1MCwgMTY2LCAKLSAgICA3LCA2LCAxLCAxMTEsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAxMTEsIDIsIDI1MCwgMTY2LCA3LCA2LCAxLCAxMTEsIDIsIAotICAgIDI0NywgMjEwLCAyNCwgMjMyLCAzNywgNywgMywgMSwgMTExLCAyLCAyNDcsIDIxMCwgMjQsIDIzMiwgMzcsIDcsIDYsIDEsIAotICAgIDExMSwgMiwgMjQ3LCAyMTAsIDI0LCAxNzksIDcsIDMsIDEsIDExMSwgMiwgMjQ3LCAyMTAsIDI0LCAxNzksIDcsIDYsIDEsIAotICAgIDExMSwgMiwgMjQ3LCAyMTAsIDI0LCAyNTAsIDE2NiwgNywgMywgMSwgMTExLCAyLCAyNDcsIDIxMCwgMjQsIDI1MCwgMTY2LCAKLSAgICA3LCA2LCAxLCAxMTEsIDIsIDI0NywgMjEwLCAyNCwgMjQyLCAxMTMsIDcsIDMsIDEsIDExMSwgMiwgMjQ3LCAyMTAsIDI0LCAKLSAgICAyNDIsIDExMywgNywgMywgMSwgMjE2LCA1OCwgNzQsIDcsIDYsIDEsIDExOCwgMiwgMjQ3LCAyMTAsIDI0LCAyMzIsIDM3LCAKLSAgICA3LCAzLCAxLCAxMTgsIDIsIDI0NywgMjEwLCAyNCwgMjMyLCAzNywgNywgNiwgMSwgMTE4LCAyLCA2MiwgNzgsIDI0LCAyMzIsIAotICAgIDM3LCA3LCAzLCAxLCAxMTgsIDIsIDYyLCA3OCwgMjQsIDIzMiwgMzcsIDcsIDYsIDEsIDI1NCwgMTQ5LCAyLCAyMzIsIDM3LCAKLSAgICA3LCAzLCAxLCAyNTQsIDE0OSwgMiwgMjMyLCAzNywgNywgNiwgMSwgMjQzLCAxNzgsIDIsIDkwLCA3LCAzLCAxLCAyNDMsIAotICAgIDE3OCwgMiwgOTAsIDcsIDYsIDEsIDI0MywgMTc4LCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjQzLCAxNzgsIDIsIDI1MCwgCi0gICAgMTY2LCA3LCA2LCAxLCAyMzUsIDI4LCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjM1LCAyOCwgMiwgMjUwLCAxNjYsIDcsIDYsIAotICAgIDEsIDE1NywgMiwgMjI3LCA5MCwgNywgMywgMSwgMTU3LCAyLCAyMjcsIDkwLCA3LCA2LCAxLCAxNTcsIDIsIDIyNywgOTEsIAotICAgIDI0LCAyMzIsIDM3LCA3LCAzLCAxLCAxNTcsIDIsIDIyNywgOTEsIDI0LCAyMzIsIDM3LCA3LCA2LCAxLCAyNDQsIDIzMywgMiwgCi0gICAgMjUwLCAxNjYsIDcsIDMsIDEsIDI0NCwgMjMzLCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjM1LCAxNDMsIDIsIDI1MCwgMTY2LCAKLSAgICA3LCA2LCAxLCAyNDUsIDI1MCwgNywgNiwgMSwgMjQ5LCA0LCAyLCAzLCAxLCAyMTIsIDE1MiwgNywgMywgMSwgMjQ1LCAyNTAsIAotICAgIDcsIDYsIDEsIDI0MywgMTc4LCAyLCAxNzksIDcsIDMsIDEsIDI0MywgMTc4LCAyLCAxNzksIDcsIDYsIDEsIDI0MCwgMTkxLCAKLSAgICA3LCA2LCAxLCAyMTMsIDE2OSwgNywgNiwgMSwgMjMwLCA5OCwgMiwgMjQyLCAxMTMsIDcsIDMsIDEsIDIzMCwgOTgsIDIsIAotICAgIDI0MiwgMTEzLCA3LCA2LCAxLCAxMTgsIDIsIDIyMywgMTMxLCA3OCwgMjQsIDE3OSwgNywgMywgMSwgMTE4LCAyLCAyMjMsIAotICAgIDEzMSwgNzgsIDI0LCAxNzksIDcsIDYsIDEsIDI1NCwgMTQ5LCAyLCAxNzksIDcsIDMsIDEsIDI1NCwgMTQ5LCAyLCAxNzksIAotICAgIDcsIDYsIDEsIDE1NywgMiwgMjE5LCA0NSwgMjQsIDE3OSwgNywgMywgMSwgMTU3LCAyLCAyMTksIDQ1LCAyNCwgMTc5LCA3LCAKLSAgICA2LCAxLCAxMTgsIDIsIDUxLCAyNDIsIDExMywgNywgMywgMSwgMTE4LCAyLCA1MSwgMjQyLCAxMTMsIDcsIDYsIDEsIDExOCwgCi0gICAgMiwgMjM1LCAxOTEsIDI1MSwgNzQsIDcsIDMsIDEsIDExOCwgMiwgMjM1LCAxOTEsIDI1MSwgNzQsIDcsIDYsIDEsIDE5MSwgCi0gICAgMiwgNTEsIDI0MiwgMTEzLCA3LCAzLCAxLCAxOTEsIDIsIDUxLCAyNDIsIDExMywgNywgNiwgMSwgMTkxLCAyLCAyMzUsIAotICAgIDE5MSwgMjUxLCA3NCwgNywgMywgMSwgMTkxLCAyLCAyMzUsIDE5MSwgMjUxLCA3NCwgNywgNiwgMSwgMjQwLCAxNDYsIDIsIAotICAgIDUxLCAyNDIsIDExMywgNywgMywgMSwgMjQwLCAxNDYsIDIsIDUxLCAyNDIsIDExMywgNywgNiwgMSwgMjQwLCAxNDYsIDIsIAotICAgIDIzNSwgMTkxLCAyNTEsIDc0LCA3LCAzLCAxLCAyNDAsIDE0NiwgMiwgMjM1LCAxOTEsIDI1MSwgNzQsIDcsIDYsIDEsIDE1NywgCi0gICAgMiwgNTEsIDI0MiwgMTEzLCA3LCAzLCAxLCAxNTcsIDIsIDUxLCAyNDIsIDExMywgNywgNiwgMSwgMTU3LCAyLCAyMzUsIAotICAgIDE5MSwgMjUxLCA3NCwgNywgMywgMSwgMTU3LCAyLCAyMzUsIDE5MSwgMjUxLCA3NCwgNywgNiwgMSwgMjI0LCAxMTMsIDIsIAotICAgIDUxLCAyNDIsIDExMywgNywgMywgMSwgMjI0LCAxMTMsIDIsIDUxLCAyNDIsIDExMywgNywgNiwgMSwgMjI0LCAxMTMsIDIsIAotICAgIDIzNSwgMTkxLCAyNTEsIDc0LCA3LCAzLCAxLCAyMjQsIDExMywgMiwgMjM1LCAxOTEsIDI1MSwgNzQsIDcsIDYsIDEsIDExMSwgCi0gICAgMiwgNTEsIDI0MiwgMTEzLCA3LCAzLCAxLCAxMTEsIDIsIDUxLCAyNDIsIDExMywgNywgNiwgMSwgMTExLCAyLCAyMzUsIAotICAgIDE5MSwgMjUxLCA3NCwgNywgMywgMSwgMTExLCAyLCAyMzUsIDE5MSwgMjUxLCA3NCwgNywgNiwgMSwgMjIzLCA0LCAyLCAKLSAgICAyNDksIDE1OCwgNTUsIDcsIDMsIDEsIDIyMywgNCwgMiwgMjQ5LCAxNTgsIDU1LCA3LCA2LCAxLCAyMTgsIDEwMCwgMiwgCi0gICAgMjQ5LCAxNTgsIDU1LCA3LCAzLCAxLCAyMTgsIDEwMCwgMiwgMjQ5LCAxNTgsIDU1LCA3LCA2LCAxLCAyMTIsIDIyMiwgNywgCi0gICAgMywgMSwgMjEyLCAyMjIsIDcsIDYsIDEsIDI0MiwgNDIsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyNDIsIDQyLCAyLCAyNTAsIAotICAgIDE2NiwgNywgNiwgMSwgMjMwLCA5OCwgMiwgMTg0LCA0NiwgMjMzLCA2MCwgNywgMywgMSwgMjQ5LCA0LCAyLCAyNDksIDQxLCAKLSAgICA3LCA2LCAxLCAyMjcsIDIsIDcsIDMsIDEsIDIyNywgMiwgNywgNiwgMSwgMjEyLCAxNTMsIDIsIDEwMSwgNywgMywgMSwgCi0gICAgMjEyLCAxNTMsIDIsIDEwMSwgNywgNiwgMSwgMTE4LCAyLCA2MiwgNDksIDcsIDMsIDEsIDExOCwgMiwgNjIsIDQ5LCA3LCA2LCAKLSAgICAxLCAxOTEsIDIsIDI1MCwgMTE3LCA3LCAzLCAxLCAxOTEsIDIsIDI1MCwgMTE3LCA3LCA2LCAxLCAxNTcsIDIsIDI0NywgCi0gICAgMjEwLCAyNCwgMjMyLCAzNywgNywgMywgMSwgMTU3LCAyLCAyNDcsIDIxMCwgMjQsIDIzMiwgMzcsIDcsIDYsIDEsIDE1NywgCi0gICAgMiwgMjE3LCA0MywgMjQsIDIzMiwgMzcsIDcsIDMsIDEsIDE1NywgMiwgMjE3LCA0MywgMjQsIDIzMiwgMzcsIDcsIDYsIDEsIAotICAgIDE1NywgMiwgNjIsIDQ5LCA3LCAzLCAxLCAxNTcsIDIsIDYyLCA0OSwgNywgNiwgMSwgMTU3LCAyLCA2MiwgNzgsIDI0LCAKLSAgICAyMzIsIDM3LCA3LCAzLCAxLCAxNTcsIDIsIDYyLCA3OCwgMjQsIDIzMiwgMzcsIDcsIDYsIDEsIDIxMywgMTA2LCAyLCAyMzIsIAotICAgIDM3LCA3LCAzLCAxLCAyMTMsIDEwNiwgMiwgMjMyLCAzNywgNywgMywgMSwgMjMzLCAxNzEsIDIsIDI0OSwgNDEsIDcsIDMsIAotICAgIDEsIDIzMCwgOTgsIDIsIDI0OSwgNDEsIDcsIDMsIDEsIDIxOCwgMTAwLCAyLCAyNDksIDQxLCA3LCAzLCAxLCAyNDcsIDczLCAKLSAgICAyMzUsIDE0MiwgNywgMywgMSwgMjQ4LCA4OSwgMjQ3LCAxNzIsIDcsIDMsIDEsIDIyNCwgMTc2LCAyNDcsIDE3MiwgNywgNiwgCi0gICAgMSwgMTE4LCAyLCA5MCwgNywgNiwgMSwgMjUwLCAyNTMsIDIsIDkwLCA3LCAzLCAxLCAyNTAsIDI1MywgMiwgOTAsIDcsIDYsIAotICAgIDEsIDIzMywgMTcxLCAyLCAxMzQsIDcsIDYsIDEsIDIxOCwgMTAwLCAyLCAyNDcsIDIwNywgOTAsIDcsIDMsIDEsIDIyMywgNCwgCi0gICAgMiwgMjE4LCAxOTUsIDIxOCwgMjcsIDcsIDMsIDEsIDIxMiwgMTUzLCAyLCAyMTgsIDE5NSwgMjE4LCAyNywgNywgNiwgMSwgCi0gICAgMjQyLCAxNTYsIDIxOSwgNjksIDcsIDMsIDEsIDI0MiwgMTU2LCAyMTksIDY5LCA3LCA2LCAxLCA1NCwgMiwgOTAsIDcsIDYsIAotICAgIDEsIDExMSwgMTM0LCA3LCA2LCAxLCAyMTYsIDU4LCAyMTUsIDc5LCA3LCA2LCAxLCAxOTEsIDIsIDkwLCA3LCAzLCAxLCAKLSAgICAxOTEsIDIsIDkwLCA3LCA2LCAxLCAyMzUsIDE0MywgMiwgOTAsIDcsIDMsIDEsIDIzNSwgMTQzLCAyLCA5MCwgNywgNiwgMSwgCi0gICAgMywgMjI0LCAyNDEsIDIsIDI0MSwgMzgsIDIxOCwgMjcsIDcsIDMsIDEsIDIyNCwgMjQxLCAyLCAyNDEsIDM4LCAyMTgsIDI3LCAKLSAgICA3LCA2LCAxLCAyMjQsIDExMywgMiwgOTAsIDcsIDMsIDEsIDIyNCwgMTEzLCAyLCA5MCwgNywgNiwgMSwgMjEzLCAxMDYsIDIsIAotICAgIDkwLCA3LCAzLCAxLCAyMTMsIDEwNiwgMiwgOTAsIDcsIDMsIDEsIDIxNiwgNTgsIDYxLCA3LCAzLCAxLCAyNTQsIDUyLCA3LCAKLSAgICAzLCAxLCAyMTYsIDU4LCAyNTQsIDUyLCA3LCAzLCAxLCA1NCwgMiwgMTAxLCA3LCAzLCAxLCAyMjcsIDQwLCA3NSwgNywgMywgCi0gICAgMSwgMjUwLCAyNTMsIDIsIDI0OSwgNDEsIDcsIDMsIDEsIDI0OSwgNCwgMiwgMjE4LCAyNywgNywgMywgMSwgMjQ5LCA0LCAyLCAKLSAgICAxMDEsIDcsIDMsIDEsIDIyMywgMjAyLCA3NCwgNywgMywgMSwgMjIyLCAxMTMsIDcsIDMsIDEsIDIyMiwgMTE0LCAyLCAxMDEsIAotICAgIDcsIDMsIDEsIDIyNywgNDAsIDc0LCA3LCAzLCAxLCAyMjMsIDIwMiwgMjI3LCA0MCwgNzQsIDcsIDMsIDEsIDIyMywgMjAyLCAKLSAgICAyMjcsIDQwLCAxOTEsIDIsIDEwMSwgNywgMywgMSwgMjQ5LCAxOTMsIDIyMywgMjAyLCAyMjcsIDQwLCA3NCwgNywgMywgMSwgCi0gICAgMjQ3LCA3MywgMjM1LCAxNDMsIDIsIDkwLCA3LCAzLCAxLCAyNDMsIDE3OCwgMiwgMTAxLCA3LCAzLCAxLCAxMTMsIDI0MywgCi0gICAgMTc3LCA3LCAxLCAzLCA2LCAyNDMsIDE3NywgNywgMywgMSwgMjQzLCA4MywgNywgMywgMSwgMjI0LCA0MywgMjQwLCAyMzUsIAotICAgIDcsIDMsIDEsIDIxNiwgNTgsIDI0MiwgNDEsIDcsIDMsIDEsIDI0MiwgNDIsIDIsIDEwMSwgNywgMywgMSwgMjQxLCAxOTIsIAotICAgIDIsIDEwMSwgNywgMywgMSwgMjQwLCAxNDYsIDIsIDkwLCA3LCAzLCAxLCAyMzUsIDE4MywgNywgMSwgMywgNiwgNzIsIDcsIAotICAgIDMsIDEsIDIzMywgMTcxLCAyLCAyMzEsIDM3LCAyMTcsIDQyLCA3LCAzLCAxLCAyMzMsIDE3MSwgMiwgMjUxLCAyMTgsIDcsIAotICAgIDMsIDEsIDIzMywgMTcxLCAyLCAyMjMsIDIwNywgMTAxLCA3LCAzLCAxLCAyMzMsIDI3LCA3LCAzLCAxLCAyMTYsIDU4LCAKLSAgICAxODMsIDcsIDMsIDEsIDIxNiwgNTgsIDIzMiwgMTEwLCAyLCAxODQsIDIzMywgNjAsIDcsIDMsIDEsIDIzMiwgMTEwLCAyLCAKLSAgICAxMDEsIDcsIDMsIDEsIDIzMCwgOTgsIDIsIDQyLCAxMDEsIDcsIDMsIDEsIDIzMCwgOTgsIDIsIDIyMywgMjA3LCAxMDEsIDcsIAotICAgIDEsIDMsIDYsIDIwNCwgNywgMywgMSwgMjUyLCA1NCwgNzUsIDcsIDEsIDMsIDYsIDIyNywgOTksIDcsIDMsIDEsIDI0OSwgCi0gICAgMTkzLCAyMjcsIDY3LCA3LCAzLCAxLCAyMjYsIDksIDcsIDMsIDEsIDIxNiwgNTgsIDE0OSwgNywgMywgMSwgMjE2LCA1OCwgCi0gICAgMjI0LCAxMTMsIDIsIDE4NCwgMjMzLCA2MCwgNywgMywgMSwgMjE2LCA1OCwgMjI0LCAxMTMsIDIsIDEwMSwgNywgMywgMSwgCi0gICAgMjI0LCAxMTMsIDIsIDE4NCwgMjMzLCA2MCwgNywgMywgMSwgMjI0LCAxMTMsIDIsIDIxOCwgMjcsIDcsIDMsIDEsIDIyNCwgCi0gICAgMTEzLCAyLCAyNDQsIDU2LCA3LCAzLCAxLCAyMjMsIDIwMiwgMjI0LCAxMTMsIDIsIDI0NCwgNTYsIDcsIDEsIDMsIDYsIAotICAgIDE0OSwgNywgMSwgMywgNiwgMjM1LCAxOTEsIDE0OSwgNywgMywgMSwgMjIzLCA0LCAyLCAxMDEsIDcsIDMsIDEsIDI0NSwgCi0gICAgNDAsIDcsIDMsIDEsIDI0NywgNzMsIDIzNSwgMTQzLCAyLCAyMTksIDQ1LCAyNCwgMTAxLCA3LCAzLCAxLCAyMTksIDE2MywgCi0gICAgMjIzLCAyMDIsIDI0NSwgNDAsIDcsIDMsIDEsIDI0NSwgNDEsIDIsIDI0OSwgNDEsIDcsIDMsIDEsIDIxNiwgNTgsIDIxOCwgCi0gICAgOTksIDcsIDMsIDEsIDIxOCwgMTAwLCAyLCAyMjMsIDIwNywgMTAxLCA3LCAzLCAxLCAxMTEsIDEzNCwgNywgMywgMSwgMjE1LCAKLSAgICAxMjgsIDcsIDMsIDEsIDIxNSwgODAsIDIsIDEwMSwgNywgMywgMSwgMjE2LCA1OCwgMjE1LCA3OSwgNywgMywgMSwgMjE2LCAKLSAgICA1OCwgMjE0LCA4MiwgNywgMywgMSwgMjE2LCA1OCwgMjEzLCAxMDUsIDcsIDEsIDMsIDYsIDIxMywgMTA1LCA3LCAzLCAxLCAKLSAgICAyMTIsIDE1MywgMiwgMjIzLCAyMDcsIDEwMSwgNywgMywgMSwgMjEyLCAxNTMsIDIsIDI0OSwgNDEsIDcsIDMsIDEsIDI0NCwgCi0gICAgMjMyLCA3LCAzLCAxLCAyNDQsIDIzMywgMiwgMjQ5LCA0MSwgNywgMSwgMjQyLCAxNTYsIDIxOSwgNjksIDcsIDEsIDIyNiwgCi0gICAgMTUsIDIxNCwgMTE2LCAyNDMsIDIxOSwgNywgMSwgMjM1LCAxOTEsIDI0MiwgMTU2LCAyMTksIDY5LCA3LCAxLCAyMTksIDUwLCAKLSAgICAyNTAsIDI1MiwgNywgMSwgMjUxLCAxNjksIDI0OSwgMjA0LCA3LCAxLCAzLCA2LCAyNTMsIDc0LCA3LCAzLCAxLCAyNDksIAotICAgIDE5MywgMjI3LCA0MCwgNzQsIDcsIDEsIDMsIDYsIDI0MywgMTc4LCAyLCAxMDEsIDcsIDEsIDMsIDYsIDI0MiwgNDEsIDcsIAotICAgIDMsIDEsIDIzNSwgMTQzLCAyLCAyNDksIDY3LCA3LCAzLCAxLCAyMTYsIDU4LCAyMzUsIDI3LCA3LCAxLCAzLCA2LCAxNTAsIAotICAgIDcsIDMsIDEsIDIyNCwgMjQxLCAyLCAxMDEsIDcsIDEsIDI0MiwgMTU2LCAyMTksIDcwLCAyLCA5MCwgNywgMSwgMjIzLCAKLSAgICAyMDIsIDI0MiwgMTU2LCAyMTksIDcwLCAyLCA5MCwgNywgMywgMSwgMjQ1LCAyNTEsIDI0NywgMTcyLCA3LCAzLCAxLCAyNDcsIAotICAgIDIzMywgMjQ3LCAxNzIsIDcsIDMsIDEsIDI0NSwgMjUxLCAyNDcsIDE3MywgMiwgMjQ5LCA0MSwgNywgMywgMSwgMjE2LCAKLSAgICAxNDMsIDI0NywgMTcyLCA3LCAzLCAxLCAyMTcsIDE4OCwgMjQ3LCAxNzIsIDcsIDMsIDEsIDIxNywgMjM2LCAyNDcsIDE3MywgCi0gICAgMiwgMjQ5LCA0MSwgNywgMywgMSwgMjQ0LCAxMDMsIDI0NywgMTcyLCA3LCAzLCAxLCAyMzIsIDE1OCwgMjQ3LCAxNzIsIDcsIAotICAgIDMsIDEsIDIzMiwgMTExLCAyNDcsIDE3MiwgNywgMSwgMjUxLCAxNjksIDIyNiwgNTYsIDcsIDEsIDI1MSwgMTc3LCAyMjYsIAotICAgIDU2LCA3LCAzLCAxLCAyMTYsIDU4LCAyNDIsIDQyLCAyLCAyNDQsIDU2LCA3LCAzLCAxLCAyMTYsIDU4LCAyNDIsIDQyLCAyLCAKLSAgICAyNDQsIDU3LCAyNCwgMjE4LCAyNywgNTksIDEsIDMsIDI0MiwgNDEsIDU5LCAxLCAzLCAyNDIsIDQyLCAyLCAxMDEsIDU5LCAKLSAgICAxLCAzLCAyMzUsIDE0MiwgNTksIDEsIDMsIDE0OSwgNTksIDEsIDMsIDIxNiwgNTgsIDE0OSwgNTksIDEsIDMsIDIxNiwgNTgsIAotICAgIDIyNCwgMTEzLCAyLCAxMDEsIDU5LCAxLCAzLCA2LCAyMzUsIDE5MSwgMTQ5LCA1OSwgMSwgMywgMjE0LCA4MiwgNTksIDEsIAotICAgIDMsIDIxMywgMTA1LCA1OSwgMSwgMjI1LCA3MSwgNTksIDEsIDUxLCAyMjUsIDcxLCA1OSwgMSwgMjE2LCA1OCwgMjQ5LCAKLSAgICAxNTcsIDU5LCAxLCAyNTMsIDIyNiwgNTksIDEsIDIyMywgMjAyLCAyNDksIDE1NywgNTksIDEsIDQ2LCAxNTEsIDIyMywgCi0gICAgMTMwLCA1OSwgMSwgNDIsIDE1MSwgMjIzLCAxMzAsIDU5LCAxLCAyNDIsIDE1NiwgMjE5LCA2OSwgNTksIDEsIDIyMywgMjAyLCAKLSAgICAyNDIsIDE1NiwgMjE5LCA2OSwgNTksIDEsIDQyLCAyNTMsIDE2NCwgNTksIDEsIDQ2LCAyNTMsIDE2NCwgNTksIDEsIDExNCwgCi0gICAgMjUzLCAxNjQsIDU5LCAxLCAxMTksIDI1MywgMTY0LCA1OSwgMSwgMjQ5LCAyMjQsIDI1NCwgMTc0LCAyNTAsIDE2NiwgNTksIAotICAgIDEsIDcxLCAyMzIsIDI0MiwgNTksIDEsIDIzMiwgMzcsIDU5LCAxLCAyNTQsIDE2NCwgMjU0LCAxNzQsIDU5LCAxLCAyNDIsIAotICAgIDExNCwgMjU0LCAxNzQsIDU5LCAxLCAxMTUsIDcxLCAyMzIsIDI0MiwgNTksIDEsIDExNSwgMjMyLCAzNywgNTksIDEsIDExNSwgCi0gICAgMjQyLCAxMTQsIDI1NCwgMTc0LCA1OSwgMSwgMTE1LCAyNTQsIDE2NCwgMjU0LCAxNzQsIDU5LCAxLCAyMTYsIDE4MCwgMjQ5LCAKLSAgICAxNjQsIDU5LCAxLCAxNTEsIDIxNiwgMTgwLCAyNDksIDE2NCwgNTksIDEsIDI1MCwgMTA3LCA0NiwgMTUxLCAyMjMsIDEzMCwgCi0gICAgNTksIDEsIDI1MCwgMTA3LCA0MiwgMTUxLCAyMjMsIDEzMCwgNTksIDEsIDExNCwgMjE4LCAzNiwgNTksIDEsIDExOSwgMjE4LCAKLSAgICAzNiwgNTksIDEsIDk0LCA1MiwgNTksIDEsIDIzMCwgMjUxLCA1MiwgMjUxLCA3NCwgNjIsIDQ5LCAyMjMsIDEzMSwgNDksIAotICAgIDIyNywgOTAsIDMsIDIxNywgNDIsIDUxLCAyNTQsIDE2NCwgMjU0LCAxNzQsIDU5LCAxLCAyMjMsIDE4OSwgMTAxLCA1OSwgMSwgCi0gICAgMjQ5LCA3MSwgMjU0LCAxNzQsIDU5LCAxLCAzLCAyNDMsIDgzLCA1OSwgMSwgMywgMTUwLCA1OSwgMSwgMywgMTk3LCA1OSwgCi0gICAgMSwgMywgMjEzLCAxNjYsIDU5LCAxLCAzLCAyMjMsIDIwMiwgMjQyLCAxNTYsIDIxOSwgNjksIDU5LCAxLCAyNDQsIDI0NCwgCi0gICAgMTYwLCAxMzQsIDU5LCAxLCAxMjQsIDE2MCwgMTM0LCA1OSwgMSwgMjMxLCAzOCwgMTYwLCAxMzQsIDU5LCAxLCAxMTUsIAotICAgIDE2MCwgMTM0LCA1OSwgMSwgMjQ0LCAyNDMsIDE2MCwgMTM0LCA1OSwgMSwgMjEyLCAyNDUsIDI0NywgMjUxLCAxNjAsIDc3LCAKLSAgICA1OSwgMSwgMjEzLCA1OSwgMjQ3LCAyNTEsIDE2MCwgNzcsIDU5LCAxLCAyMTQsIDExNCwgNTksIDEsIDIxNSwgMTU2LCA1OSwgCi0gICAgMSwgNTEsIDI1MywgMjI2LCA1OSwgMSwgMTE1LCAxMTksIDI1MywgMTY0LCA1OSwgMSwgMTE1LCAxMTQsIDI1MywgMTY0LCAKLSAgICA1OSwgMSwgMTE1LCA0MiwgMjUzLCAxNjQsIDU5LCAxLCAxMTUsIDQ2LCAyNTMsIDE2NCwgNTksIDEsIDExNSwgMjIzLCAxMzAsIAotICAgIDU5LCAxLCAyMzEsIDM3LCAyNDIsIDExNCwgMjU0LCAxNzQsIDU5LCAxLCAyMzEsIDM3LCA1MSwgMjQyLCAxMTQsIDI1NCwgCi0gICAgMTc0LCA1OSwgMSwgMjMxLCAzNywgNTEsIDI1NCwgMTY0LCAyNTQsIDE3NCwgNTksIDEsIDExNSwgMjE3LCA0MiwgNTksIDEsIAotICAgIDIyNCwgNDgsIDI0OSwgMTY0LCA1OSwgMSwgMjUxLCAyMzQsIDEyNCwgMjE2LCAyNDEsIDU5LCAxLCAyNDUsIDEwMSwgMTI0LCAKLSAgICAyMTYsIDI0MSwgNTksIDEsIDI1MSwgMjM0LCAxMTUsIDIxNiwgMjQxLCA1OSwgMSwgMjQ1LCAxMDEsIDExNSwgMjE2LCAyNDEsIAotICAgIDU5LCAxLCAyMjAsIDIzNCwgNTksIDEsIDIyNywgNDAsIDIyMCwgMjM0LCA1OSwgMSwgMTE1LCA0MiwgNjgsIDM3LCAyNDIsIAotICAgIDExNCwgMjU0LCAxNzQsIDM3LCAyNTQsIDE2NCwgMjU0LCAxNzQsIDM3LCAyNDksIDIyNCwgMjU0LCAxNzQsIDM3LCAyMTcsIAotICAgIDQyLCAzNywgMjMyLCAzNywgMzcsIDIyNiwgMjQzLCAzNywgMjUxLCA3NCwgMzcsIDYyLCA0OSwgMzcsIDI0NywgMjA5LCAzNywgCi0gICAgMjQxLCAzOCwgNDksIDM3LCAyMjMsIDEzMSwgNDksIDM3LCA1MSwgMjU0LCAxNjQsIDI1NCwgMTc0LCAzNywgMjUwLCAxNjYsIAotICAgIDM3LCA3MSwgMjMyLCAyNDMsIDQ5LCAzNywgNTEsIDcxLCAyMzIsIDI0MywgNDksIDM3LCA1MSwgMjQyLCAxMTQsIDI1NCwgCi0gICAgMTc0LCAzNywgMjUwLCAxODcsIDM3LCAyMzUsIDE5MSwgMjUxLCA3NCwgMzcsIDIxNiwgNTgsIDI0OSwgMTU4LCA0OSwgMzcsIAotICAgIDI0OSwgMTU4LCA0OSwgMzcsIDIyMywgMjAyLCAyNDksIDE1OCwgNDksIDM3LCAyNDksIDE1OCwgNzgsIDIyMywgMTQ4LCAzNywgCi0gICAgMjQyLCAxMTQsIDI1NCwgMTc1LCA1NSwgMzcsIDI1NCwgMTY0LCAyNTQsIDE3NSwgNTUsIDM3LCA0MiwgMjE4LCAzNywgNTUsIAotICAgIDM3LCA0NiwgMjE4LCAzNywgNTUsIDM3LCA0MiwgMjU0LCAxOSwgNDksIDM3LCAyNDAsIDIzNSwgMzcsIDQyLCAxNTEsIDIyMywgCi0gICAgMTMxLCA1NSwgMzcsIDExNCwgMjE4LCAzNywgNTUsIDM3LCAxMTksIDIxOCwgMzcsIDU1LCAzNywgOTQsIDUsIDU1LCAzNywgCi0gICAgMjMwLCAyNTEsIDUsIDU1LCAzNywgMjI2LCAxOTEsIDI0MSwgMzgsIDU1LCAzNywgMjIzLCAyMDcsIDI0MSwgMzgsIDU1LCAKLSAgICAzNywgNjIsIDU1LCAzNywgMjQ3LCAyMTAsIDU1LCAzNywgMjIzLCAxMzEsIDU1LCAzNywgMjQ5LCAxNTgsIDU1LCAzNywgCi0gICAgMjUwLCAxMTcsIDM3LCAyMjcsIDkwLCAzNywgNzEsIDIzMiwgMjQzLCA1NSwgMzcsIDI1MSwgNjgsIDU1LCAzNywgMjM1LCAKLSAgICAxOTEsIDUxLCAyNTMsIDE5NCwgNTUsIDM3LCAyNTAsIDE2NywgNTUsIDM3LCAyNDksIDIyNCwgMjU0LCAxNzUsIDU1LCAzNywgCi0gICAgMjUxLCA3NSwgNTUsIDM3LCAyMzUsIDE5MSwgMjUxLCA3NSwgNTUsIDM3LCAyMTcsIDQzLCA1NSwgMzcsIDIzMiwgMzgsIDU1LCAKLSAgICAzNywgMTE1LCAyMzIsIDI0MiwgMzcsIDUxLCAxMTUsIDIzMiwgMjQyLCAzNywgMjE3LCA0MywgMjI2LCAyNDQsIDM3LCAyMjAsIAotICAgIDE3NSwgMjE5LCA0NSwgMjI2LCAyNDQsIDM3LCAxODQsIDIxOSwgNDUsIDIyNiwgMjQ0LCAzNywgMjIwLCAxNzUsIDIxOSwgCi0gICAgMjMyLCAyMjYsIDI0NCwgMzcsIDE4NCwgMjE5LCAyMzIsIDIyNiwgMjQ0LCAzNywgNDYsIDE1MSwgMjIzLCAxMzEsIDU1LCAKLSAgICAzNywgMjM1LCAxOTEsIDI1MSwgNjgsIDU1LCAzNywgNDEsIDU1LCAzNywgMjIyLCA5OSwgNTUsIDM3LCAyMTMsIDE2NywgNDksIAotICAgIDM3LCA3MSwgMjE3LCA0MiwgMzcsIDUxLCAyMjYsIDI0MywgMzcsIDI0MiwgMTE0LCAxNjAsIDc3LCAzNywgMjU0LCAxNjQsIAotICAgIDE2MCwgNzcsIDM3LCAyNSwgMjI2LCA1MCwgMzcsIDI1LCAyMzQsIDExLCAzNywgMjUsIDI0NywgMjA0LCAyMTYsIDIzMSwgCi0gICAgMzcsIDI1LCAyMTIsIDIxMCwgMzcsIDI1MSwgNjgsIDQ5LCAzNywgMjQ1LCA2MSwgNSwgNTUsIDM3LCA1MSwgNzEsIDIzMiwgCi0gICAgMjQzLCA1NSwgMzcsIDQyLCAyNTQsIDE5LCA1NSwgMzcsIDIyOCwgMTYzLCAyMTcsIDQzLCA0OSwgMzcsIDI0MSwgNDQsIDQ5LCAKLSAgICAzNywgMjU0LCA1NywgMTIzLCAyMTEsIDIxMSwgNDksIDM3LCA0MiwgNDYsIDc2LCA1NSwgMzcsIDIxNSwgMTI0LCA3NiwgNTUsIAotICAgIDM3LCAyNDIsIDExOCwgMjM1LCA2NiwgMzcsIDQ2LCAyNTMsIDE2NSwgNDksIDM3LCA0MiwgMTUxLCAyMjMsIDEzMSwgNDksIAotICAgIDM3LCAyNDQsIDEwMCwgMzcsIDIxMywgMTY3LCA1NSwgMzcsIDQyLCAyNTMsIDE2NSwgNTUsIDM3LCA0NiwgMjUzLCAxNjUsIAotICAgIDU1LCAzNywgNDYsIDI1MywgMTY1LCAyNCwgMTE0LCAyNTMsIDE2NSwgNTUsIDM3LCA0NiwgMTUxLCAyMjMsIDEzMSwgNDksIAotICAgIDM3LCA2MiwgNzgsIDIyMywgMTQ4LCAzNywgMjUzLCAxMzMsIDU1LCAzNywgNTEsIDIyMywgMTMxLCA1NSwgMzcsIDIxMiwgCi0gICAgMjgsIDQ5LCAzNywgNTEsIDI1MSwgNzUsIDU1LCAzNywgNTEsIDI1MSwgNzQsIDM3LCA1MSwgMjMyLCAzNywgMzcsIDUxLCAKLSAgICAyMzIsIDM4LCA1NSwgMzcsIDUxLCAyMTcsIDQyLCAzNywgNTEsIDIzNSwgMTkxLCAyNTEsIDc0LCAzNywgNTEsIDk1LCA3NiwgCi0gICAgNTUsIDM3LCA3LCAzLCAxLCA2MSwgMzcsIDcsIDMsIDEsIDc0LCAzNywgNywgMywgMSwgNzIsIDM3LCA3LCAzLCAxLCA3NSwgCi0gICAgMzcsIDcsIDMsIDEsIDY5LCAzNywgNywgMywgMSwgMjUwLCAyNTIsIDM3LCA3LCAzLCAxLCAyNDksIDMsIDM3LCA3LCAzLCAxLCAKLSAgICAyNDIsIDQxLCAzNywgNywgMywgMSwgMTgzLCAzNywgNywgMywgMSwgMTQ5LCAzNywgNywgMywgMSwgMjE4LCA5OSwgMzcsIDcsIAotICAgIDMsIDEsIDIxNSwgNzksIDM3LCA3LCAzLCAxLCAyMTMsIDE2NiwgMjUsIDYsIDEsIDI0MSwgMTgxLCAyNSwgMywgMSwgMjQxLCAKLSAgICAxODEsIDI1LCA2LCAxLCAyNTMsIDE5MywgMjIyLCAxNjEsIDI1LCAzLCAxLCAyNTMsIDE5MywgMjIyLCAxNjEsIDI1LCAyMjgsIAotICAgIDU0LCA1MiwgMjUsIDIzMiwgMTYzLCAyMjgsIDU0LCA1MiwgMjUsIDYsIDEsIDIyNiwgMTc4LCAyNDcsIDE3OSwgMjUsIDMsIAotICAgIDEsIDIyNiwgMTc4LCAyNDcsIDE3OSwgMjUsIDIxMiwgMjEwLCAyNSwgMywgMjIzLCAyMDIsIDIzMiwgMTQxLCAyMjAsIDEwNCwgCi0gICAgODcsIDI1LCAzLCAyNDYsIDcyLCAyMzIsIDE0MSwgMjIwLCAxMDQsIDg3LCAyNSwgMywgMjIzLCAyMDIsIDI0NiwgNzIsIAotICAgIDIzMiwgMTQxLCAyMjAsIDEwNCwgODcsIDI1LCAyMjQsIDE1OCwgNzcsIDI1LCAyMTYsIDIzMSwgMjUsIDI0NywgMjA0LCAKLSAgICAyMTYsIDIzMSwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDIxNiwgMjMxLCAyNSwgMjU0LCA4LCAyMTcsIDIxMSwgMjUsIDYsIDEsIAotICAgIDI0NSwgNjQsIDIsIDIxNiwgMjMxLCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgMjE2LCAyMzEsIDI1LCA2LCAxLCAyMzUsIDE4NCwgCi0gICAgMiwgMjE2LCAyMzEsIDI1LCA2LCAxLCAyMjcsIDY2LCAyLCAyMTYsIDIzMSwgMjUsIDYsIDEsIDIxNSwgMTI5LCAyLCAyMTYsIAotICAgIDIzMSwgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIxNiwgMjMxLCAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDI0NywgMjA0LCAyNCwgCi0gICAgMjE2LCAyMzEsIDI1LCA2LCAxLCAyNTQsIDUyLCAyNSwgNiwgMSwgMjUxLCAyMDMsIDI1LCA2LCAxLCAyNDMsIDgzLCAyNSwgCi0gICAgNiwgMSwgMjQ4LCA1LCAyNSwgNiwgMSwgMjQ1LCA2MywgMjUsIDYsIDEsIDIxMiwgNzgsIDI1LCA2LCAxLCAyNDUsIDI4LCAKLSAgICAyNSwgNiwgMSwgMjE3LCAxMzIsIDI1LCA2LCAxLCAyMzUsIDE4MywgMjUsIDYsIDEsIDIzNCwgMjI3LCAyNSwgNiwgMSwgCi0gICAgMjMzLCAxMjIsIDI1LCA2LCAxLCAyMzAsIDE3MiwgMjUsIDYsIDEsIDIyOCwgOTIsIDI1LCA2LCAxLCAyMTMsIDE0NSwgMjUsIAotICAgIDYsIDEsIDIyNywgNjUsIDI1LCA2LCAxLCAyMjUsIDI0MCwgMjUsIDYsIDEsIDIyMywgMTkwLCAyNSwgNiwgMSwgMjIwLCAKLSAgICAxMDMsIDI1LCA2LCAxLCAyMTcsIDI0OCwgMjUsIDYsIDEsIDIxNSwgMTI4LCAyNSwgNiwgMSwgMjI2LCA5LCAyNSwgNiwgMSwgCi0gICAgMjUwLCA0NywgMjUsIDYsIDEsIDIyNSwgNDYsIDI1LCA2LCAxLCAyMjcsIDY3LCAyNSwgNiwgMSwgMjM1LCAxODQsIDIsIAotICAgIDI0NywgMjAzLCAyNSwgNiwgMSwgMjE1LCAxMjksIDIsIDI0NywgMjAzLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjE2LCAKLSAgICAyMzEsIDI1LCAzLCAxLCAyNDUsIDY0LCAyLCAyMTYsIDIzMSwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIxNiwgMjMxLCAyNSwgCi0gICAgMywgMSwgMjM1LCAxODQsIDIsIDIxNiwgMjMxLCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIDI0NywgMjA0LCAyNCwgMjE2LCAKLSAgICAyMzEsIDI1LCAzLCAxLCAyNTQsIDUyLCAyNSwgMywgMSwgMjUxLCAyMDMsIDI1LCAzLCAxLCAyNDMsIDgzLCAyNSwgMywgMSwgCi0gICAgMjQ4LCA1LCAyNSwgMywgMSwgMjQ1LCA2MywgMjUsIDMsIDEsIDIxMiwgNzgsIDI1LCAzLCAxLCAyNDUsIDI4LCAyNSwgMywgCi0gICAgMSwgMjE3LCAxMzIsIDI1LCAzLCAxLCAyMzUsIDE4MywgMjUsIDMsIDEsIDIzNCwgMjI3LCAyNSwgMywgMSwgMjMzLCAxMjIsIAotICAgIDI1LCAzLCAxLCAyMzAsIDE3MiwgMjUsIDMsIDEsIDIyOCwgOTIsIDI1LCAzLCAxLCAyMTMsIDE0NSwgMjUsIDMsIDEsIDIyNywgCi0gICAgNjUsIDI1LCAzLCAxLCAyMjUsIDI0MCwgMjUsIDMsIDEsIDIyMywgMTkwLCAyNSwgMywgMSwgNDAsIDIyMCwgMTAzLCAyNSwgCi0gICAgMywgMSwgMjIwLCAxMDMsIDI1LCAzLCAxLCAyMTcsIDI0OCwgMjUsIDMsIDEsIDIxNSwgMTI4LCAyNSwgMywgMSwgMjI2LCA5LCAKLSAgICAyNSwgMywgMSwgMjUwLCA0NywgMjUsIDMsIDEsIDIyNSwgNDYsIDI1LCAzLCAxLCAyMjcsIDY3LCAyNSwgMywgMSwgMjM1LCAKLSAgICAxODQsIDIsIDI0NywgMjAzLCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIDI0NywgMjAzLCAyNSwgMywgMSwgMjI3LCA2NiwgMiwgCi0gICAgMjE2LCAyMzEsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjE2LCAyMzEsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMTYsIAotICAgIDIzMSwgMjUsIDYsIDIzNCwgMjUxLCA4NywgMjUsIDI1MSwgMjA0LCA4NywgMjUsIDIxNywgMTMzLCA4NywgMjUsIDIxNSwgCi0gICAgMTI5LCAyLCAyNDEsIDM4LCA4NywgMjUsIDIxNSwgMTI5LCAyLCAyNTQsIDE2NCwgMjQsIDI0MSwgMzgsIDg3LCAyNSwgMjE1LCAKLSAgICAxMjksIDIsIDI0NywgMjEwLCAyNCwgMjQxLCAzOCwgODcsIDI1LCAyMjYsIDEwLCA4NywgMjUsIDIyNSwgMjQxLCA4NywgMjUsIAotICAgIDIzNCwgMjUxLCA4NywgMjUsIDEsIDI1MywgMTkzLCAyMzQsIDE1LCAyNSwgMywgMSwgMjUzLCAxOTMsIDIzNCwgMTUsIDI1LCAKLSAgICAxLCAyMTksIDc3LCAyNSwgMywgMSwgMjE5LCA3NywgMjUsIDEsIDI0NywgMTc5LCAyNSwgMywgMSwgMjQ3LCAxNzksIDI1LCAKLSAgICAxLCAyMzQsIDE1LCAyNSwgMywgMSwgMjM0LCAxNSwgMjUsIDEsIDIyMiwgMTYxLCAyNSwgMywgMSwgMjIyLCAxNjEsIDc5LCAKLSAgICA2LCAxLCAyMjAsIDIzNSwgNzksIDMsIDEsIDIyMCwgMjM1LCA3OSwgNiwgMSwgMjQ0LCAxMDksIDc5LCAzLCAxLCAyNDQsIAotICAgIDEwOSwgNzksIDYsIDEsIDIzNCwgMTIzLCA3OSwgMywgMSwgMjM0LCAxMjMsIDc5LCA2LCAxLCAyNDEsIDMyLCA3OSwgMywgMSwgCi0gICAgMjQxLCAzMiwgNzksIDYsIDEsIDI0MywgNzgsIDc5LCAzLCAxLCAyNDMsIDc4LCA3OSwgNiwgMSwgMjIwLCAyMDIsIDc5LCAzLCAKLSAgICAxLCAyMjAsIDIwMiwgNzksIDYsIDEsIDI0OCwgMjAsIDc5LCAzLCAxLCAyNDgsIDIwLCAyNSwgMjM0LCAyMjgsIDg3LCAyNSwgCi0gICAgMjIzLCAxOTEsIDg3LCAyNSwgMjMyLCAxNDEsIDIyMCwgMTA0LCA4NywgMjUsIDEsIDIxMiwgMjE1LCAyNSwgNiwgMjE3LCAKLSAgICAxMzMsIDg3LCAyNSwgMjMyLCAxNDEsIDI0NSwgNjQsIDg3LCAyNSwgMjIzLCAyMDIsIDIzMiwgMTQxLCAyNDUsIDY0LCA4NywgCi0gICAgMjUsIDYsIDEsIDIyMCwgMTg3LCAyNSwgMywgMSwgMjIwLCAxODcsIDI1LCA2LCAyMzIsIDE0MSwgMjIwLCAxMDQsIDg3LCAKLSAgICAyNSwgNiwgMSwgMjIyLCAxNTksIDI1LCAzLCAxLCAyMjIsIDE1OSwgMjUsIDIyMywgMTkxLCAyLCAyMTksIDQ1LCA4NywgMjUsIAotICAgIDYsIDIyMywgMjAyLCAyMzIsIDE0MSwgMjIwLCAxMDQsIDg3LCAyNSwgNiwgMjQ2LCA3MiwgMjMyLCAxNDEsIDIyMCwgMTA0LCAKLSAgICA4NywgMjUsIDYsIDIyMywgMjAyLCAyNDYsIDcyLCAyMzIsIDE0MSwgMjIwLCAxMDQsIDg3LCAzMywgNiwgMSwgMjM2LCA1NiwgCi0gICAgMiwgMjQyLCAxMTMsIDMzLCA2LCAxLCAyMzUsIDE4NywgMzMsIDYsIDEsIDI0NywgMTE0LCAzMywgNiwgMSwgMjQyLCAxNjMsIAotICAgIDMzLCA2LCAxLCAyMTUsIDE3MiwgMjM2LCA1NSwgMzMsIDYsIDEsIDI0NSwgMjQ3LCAzMywgNiwgMSwgMjUxLCA1LCA3MiwgCi0gICAgMzMsIDYsIDEsIDIxMiwgMjU1LCAzMywgNiwgMSwgMjM1LCAxMjcsIDMzLCA2LCAxLCAyMzIsIDIxNiwgMzMsIDYsIDEsIAotICAgIDIyOSwgOSwgMzMsIDYsIDEsIDIxNiwgMTMyLCAzMywgNiwgMSwgMjM0LCA1NywgMzMsIDYsIDEsIDI0MCwgMTQ2LCAyLCAKLSAgICAyNDIsIDExMywgMzMsIDYsIDEsIDIyMCwgMTc1LCA2OSwgMzMsIDYsIDEsIDI0NSwgMjQzLCAzMywgNiwgMSwgNjEsIDMzLCAKLSAgICA2LCAxLCAyNTEsIDI1MSwgMzMsIDYsIDEsIDIxNCwgMjMyLCAzMywgNiwgMSwgMjQyLCAyMTIsIDMzLCA2LCAxLCAyNDgsIAotICAgIDQxLCAzMywgNiwgMSwgMjM2LCA1NSwgMzMsIDYsIDEsIDIxMiwgNjcsIDMzLCA2LCAxLCAyMTIsIDg3LCAzMywgNiwgMSwgCi0gICAgNzIsIDMzLCA2LCAxLCAyMjAsIDE3NSwgNzIsIDMzLCA2LCAxLCAxODEsIDMzLCA2LCAxLCAyNDUsIDEzMSwgMzMsIDYsIDEsIAotICAgIDI0NSwgMTE3LCAzMywgNiwgMSwgMjQ1LCAxMDgsIDMzLCA2LCAxLCA3NSwgMzMsIDYsIDEsIDIyNiwgOTYsIDMzLCA2LCAxLCAKLSAgICAyNDUsIDU1LCAzMywgNiwgMSwgMjQ1LCA0NSwgMzMsIDYsIDEsIDIxNywgMjI5LCAzMywgNiwgMSwgNjksIDMzLCA2LCAxLCAKLSAgICAyNDUsIDE1OSwgMzMsIDYsIDEsIDE1OSwgMzMsIDYsIDEsIDIxNiwgMTM2LCAzMywgNiwgMSwgMjUwLCA2NywgMzMsIDYsIDEsIAotICAgIDIyMSwgMjQsIDMzLCA2LCAxLCAyMjAsIDI0NSwgMzMsIDYsIDEsIDI0MSwgMjQyLCA1MiwgMzMsIDYsIDEsIDIxMywgMTgsIAotICAgIDMzLCA2LCAxLCAyMTksIDIzNiwgNTIsIDMzLCA2LCAxLCA3NCwgMzMsIDYsIDEsIDIxMiwgMjAzLCAzMywgNiwgMSwgMTg2LCAKLSAgICAzMywgMywgMSwgNjEsIDMzLCAzLCAxLCAyNTEsIDI1MSwgMzMsIDMsIDEsIDIxNCwgMjMyLCAzMywgMywgMSwgMjQyLCAyMTIsIAotICAgIDMzLCAzLCAxLCAyNDgsIDQxLCAzMywgMywgMSwgMjM2LCA1NSwgMzMsIDMsIDEsIDIxMiwgNjcsIDMzLCAzLCAxLCAyMTIsIAotICAgIDg3LCAzMywgMywgMSwgNzIsIDMzLCAzLCAxLCAyMjAsIDE3NSwgNzIsIDMzLCAzLCAxLCAxODEsIDMzLCAzLCAxLCAyNDUsIAotICAgIDEzMSwgMzMsIDMsIDEsIDI0NSwgMTE3LCAzMywgMywgMSwgMjQ1LCAxMDgsIDMzLCAzLCAxLCA3NSwgMzMsIDMsIDEsIDIyNiwgCi0gICAgOTYsIDMzLCAzLCAxLCAyNDUsIDU1LCAzMywgMywgMSwgMjQ1LCA0NSwgMzMsIDMsIDEsIDIxNywgMjI5LCAzMywgMywgMSwgCi0gICAgNjksIDMzLCAzLCAxLCAyNDUsIDE1OSwgMzMsIDMsIDEsIDE1OSwgMzMsIDMsIDEsIDIxNiwgMTM2LCAzMywgMywgMSwgMjUwLCAKLSAgICA2NywgMzMsIDMsIDEsIDIyMSwgMjQsIDMzLCAzLCAxLCAyMjAsIDI0NSwgMzMsIDMsIDEsIDI0MSwgMjQyLCA1MiwgMzMsIDMsIAotICAgIDEsIDIxMywgMTgsIDMzLCAzLCAxLCAyMTksIDIzNiwgNTIsIDMzLCAzLCAxLCA3NCwgMzMsIDMsIDEsIDIxMiwgMjAzLCAzMywgCi0gICAgMywgMSwgMTg2LCAzMywgMywgMSwgMjM2LCA1NiwgMiwgMjQyLCAxMTMsIDMzLCAzLCAxLCAyMzUsIDE4NywgMzMsIDMsIDEsIAotICAgIDI0NywgMTE0LCAzMywgMywgMSwgMjQyLCAxNjMsIDMzLCAzLCAxLCAyMTUsIDE3MiwgMjM2LCA1NSwgMzMsIDMsIDEsIDI0NSwgCi0gICAgMjQ3LCAzMywgMywgMSwgMjUxLCA1LCA3MiwgMzMsIDMsIDEsIDIxMiwgMjU1LCAzMywgMywgMSwgMjM1LCAxMjcsIDMzLCAzLCAKLSAgICAxLCAyMzIsIDIxNiwgMzMsIDMsIDEsIDIyOSwgOSwgMzMsIDMsIDEsIDIxNiwgMTMyLCAzMywgMywgMSwgMjM0LCA1NywgMzMsIAotICAgIDMsIDEsIDI0MCwgMTQ2LCAyLCAyNDIsIDExMywgMzMsIDMsIDEsIDIyMCwgMTc1LCA2OSwgMzMsIDMsIDEsIDI0NSwgMjQzLCAKLSAgICAzMywgNiwgMSwgMjI3LCA2NywgMzMsIDMsIDEsIDIyNywgNjcsIDMzLCA2LCAxLCAyMTMsIDQ5LCAzMywgMywgMSwgMjEzLCAKLSAgICA0OSwgMzMsIDYsIDEsIDIzNSwgMTgxLCA3NCwgMzMsIDMsIDEsIDIzNSwgMTgxLCA3NCwgMzMsIDYsIDEsIDIzMiwgMjIxLCAKLSAgICAyMTIsIDE3NCwgMzMsIDMsIDEsIDIzMiwgMjIxLCAyMTIsIDE3NCwgMzMsIDYsIDEsIDIzNSwgMTgxLCAyMzIsIDIyMSwgCi0gICAgMjEyLCAxNzQsIDMzLCAzLCAxLCAyMzUsIDE4MSwgMjMyLCAyMjEsIDIxMiwgMTc0LCAzMywgNiwgMSwgMjUxLCAxNzIsIAotICAgIDIxMiwgMTc0LCAzMywgMywgMSwgMjUxLCAxNzIsIDIxMiwgMTc0LCAzMywgNiwgMSwgMjM1LCAxODEsIDI1MSwgMTcyLCAKLSAgICAyMTIsIDE3NCwgMzMsIDMsIDEsIDIzNSwgMTgxLCAyNTEsIDE3MiwgMjEyLCAxNzQsIDMzLCA2LCAxLCAyMzMsIDI0MiwgMzMsIAotICAgIDMsIDEsIDIzMywgMjQyLCAzMywgNiwgMSwgMjI1LCA0NiwgMzMsIDMsIDEsIDIyNSwgNDYsIDMzLCA2LCAxLCAyNDQsIDUxLCAKLSAgICAzMywgMywgMSwgMjQ0LCA1MSwgMzMsIDYsIDEsIDIzNSwgMTQ0LCAzMywgMywgMSwgMjM1LCAxNDQsIDMzLCA2LCAxLCAyMzUsIAotICAgIDE0NSwgMiwgNTEsIDI0MiwgMTE0LCAyNTQsIDE3NCwgMzMsIDMsIDEsIDIzNSwgMTQ1LCAyLCA1MSwgMjQyLCAxMTQsIDI1NCwgCi0gICAgMTc0LCAzMywgNiwgMSwgMjE1LCAxNzUsIDMzLCAzLCAxLCAyMTUsIDE3NSwgMzMsIDYsIDEsIDIyMywgODcsIDIyNywgNjcsIAotICAgIDMzLCAzLCAxLCAyMjMsIDg3LCAyMjcsIDY3LCAzMywgNiwgMSwgMjI3LCA2OCwgMiwgMjE3LCAxOCwgMzMsIDMsIDEsIDIyNywgCi0gICAgNjgsIDIsIDIxNywgMTgsIDMzLCA2LCAxLCAyMjcsIDgsIDMzLCAzLCAxLCAyMjcsIDgsIDMzLCA2LCAxLCAyMzQsIDE1LCAKLSAgICAzMywgMywgMSwgMjM0LCAxNSwgMzMsIDIxNywgOTksIDUyLCAzNywgMzMsIDIxNywgMTgsIDM3LCAzMywgMjI2LCAxOTIsIAotICAgIDM3LCAzMywgMjA3LCAyMjUsIDE1MiwgMzcsIDMzLCAyMjUsIDQwLCAyMjUsIDE1MiwgMzcsIDMzLCAyMjUsIDEzNywgMzcsIAotICAgIDMzLCAyNDAsIDIwMSwgMjE3LCA5OSwgNTIsIDM3LCAzMywgMjMxLCA0LCA1MiwgMzMsIDYsIDEsIDIyMCwgMTc1LCAyNDAsIAotICAgIDE0NiwgMiwgMjE4LCAyNywgMzMsIDMsIDEsIDIyMCwgMTc1LCAyNDAsIDE0NiwgMiwgMjE4LCAyNywgMzMsIDYsIDEsIDIyMSwgCi0gICAgNjYsIDUyLCAzMywgMywgMSwgMjIxLCA2NiwgNTIsIDMzLCA2LCAxLCAyNDUsIDU2LCAyLCAyMTcsIDY4LCAzMywgMywgMSwgCi0gICAgMjQ1LCA1NiwgMiwgMjE3LCA2OCwgMzMsIDYsIDEsIDI0MiwgMjEzLCAyLCAyMTUsIDEyNywgMzMsIDMsIDEsIDI0MiwgMjEzLCAKLSAgICAyLCAyMTUsIDEyNywgMzMsIDYsIDEsIDI0MiwgMjEzLCAyLCA5MCwgMzMsIDMsIDEsIDI0MiwgMjEzLCAyLCA5MCwgMzMsIDYsIAotICAgIDEsIDI0MiwgMjEzLCAyLCAyMzEsIDM3LCAxMDEsIDMzLCAzLCAxLCAyNDIsIDIxMywgMiwgMjMxLCAzNywgMTAxLCAzMywgNiwgCi0gICAgMSwgMjEyLCA2OCwgMiwgMjQ3LCAyNDYsIDMzLCAzLCAxLCAyMTIsIDY4LCAyLCAyNDcsIDI0NiwgMzMsIDYsIDEsIDIxMiwgCi0gICAgODgsIDIsIDI0NywgMjQ2LCAzMywgMywgMSwgMjEyLCA4OCwgMiwgMjQ3LCAyNDYsIDMzLCA2LCAxLCAyMzUsIDE3LCAyLCAKLSAgICAyNDcsIDI0NiwgMzMsIDMsIDEsIDIzNSwgMTcsIDIsIDI0NywgMjQ2LCAzMywgNiwgMSwgMjM1LCAxNywgMiwgNzEsIDkwLCAKLSAgICAzMywgMywgMSwgMjM1LCAxNywgMiwgNzEsIDkwLCAzMywgNiwgMSwgMjM1LCAxNywgMiwgOTAsIDMzLCAzLCAxLCAyMzUsIAotICAgIDE3LCAyLCA5MCwgMzMsIDYsIDEsIDI1MiwgNDQsIDE4MSwgMzMsIDMsIDEsIDI1MiwgNDQsIDE4MSwgMzMsIDYsIDEsIDI0NSwgCi0gICAgMTA5LCAyLCAyNDcsIDI0NiwgMzMsIDMsIDEsIDI0NSwgMTA5LCAyLCAyNDcsIDI0NiwgMzMsIDYsIDI2LCAyNDUsIDEwOSwgCi0gICAgMjQyLCAyMTIsIDMzLCAzLCAyNiwgMjQ1LCAxMDksIDI0MiwgMjEyLCAzMywgNiwgMSwgMjI2LCA5NywgMiwgMjMxLCAzNywgCi0gICAgMTAxLCAzMywgMywgMSwgMjI2LCA5NywgMiwgMjMxLCAzNywgMTAxLCAzMywgNiwgMSwgMjU0LCAxODAsIDE1OSwgMzMsIDMsIAotICAgIDEsIDI1NCwgMTgwLCAxNTksIDMzLCA2LCAxLCAyNDUsIDQ2LCAyLCAyNDcsIDI0NiwgMzMsIDMsIDEsIDI0NSwgNDYsIDIsIAotICAgIDI0NywgMjQ2LCAzMywgNiwgMSwgMjE3LCAyMzAsIDIsIDI0NywgMjQ2LCAzMywgMywgMSwgMjE3LCAyMzAsIDIsIDI0NywgCi0gICAgMjQ2LCAzMywgNiwgMSwgMjE5LCA2MSwgNjksIDMzLCAzLCAxLCAyMTksIDYxLCA2OSwgMzMsIDYsIDEsIDIxOSwgNjEsIAotICAgIDExMSwgMiwgOTAsIDMzLCAzLCAxLCAyMTksIDYxLCAxMTEsIDIsIDkwLCAzMywgNiwgMSwgMjQyLCAzMCwgMiwgMjQ3LCAKLSAgICAyNDYsIDMzLCAzLCAxLCAyNDIsIDMwLCAyLCAyNDcsIDI0NiwgMzMsIDYsIDI2LCAyMTcsIDIzMCwgMjE2LCAxMzYsIDMzLCAKLSAgICAzLCAyNiwgMjE3LCAyMzAsIDIxNiwgMTM2LCAzMywgNiwgMSwgMjUwLCA2OCwgMiwgMjQ3LCAyNDYsIDMzLCAzLCAxLCAyNTAsIAotICAgIDY4LCAyLCAyNDcsIDI0NiwgMzMsIDYsIDEsIDI1MCwgNjgsIDIsIDcxLCA5MCwgMzMsIDMsIDEsIDI1MCwgNjgsIDIsIDcxLCAKLSAgICA5MCwgMzMsIDYsIDEsIDIyMCwgMjEzLCAzMywgMywgMSwgMjIwLCAyMTMsIDMzLCA2LCAxLCAyNTQsIDE4MCwgMjUwLCA2NywgCi0gICAgMzMsIDMsIDEsIDI1NCwgMTgwLCAyNTAsIDY3LCAzMywgNiwgMSwgMjU0LCAxODAsIDI1MCwgNjgsIDIsIDI0NywgMjQ2LCAKLSAgICAzMywgMywgMSwgMjU0LCAxODAsIDI1MCwgNjgsIDIsIDI0NywgMjQ2LCAzMywgMSwgMjI2LCAxODUsIDMzLCA2LCAxLCAyMTIsIAotICAgIDY4LCAyLCAyNTEsIDc0LCAzMywgMywgMSwgMjEyLCA2OCwgMiwgMjUxLCA3NCwgMzMsIDYsIDEsIDIzNSwgMTcsIDIsIDEwMSwgCi0gICAgMzMsIDMsIDEsIDIzNSwgMTcsIDIsIDEwMSwgMzMsIDYsIDEsIDI0NSwgMTMyLCAyLCAyMTgsIDI3LCAzMywgMywgMSwgMjQ1LCAKLSAgICAxMzIsIDIsIDIxOCwgMjcsIDMzLCA2LCAxLCAyNDUsIDEwOSwgMiwgMTAxLCAzMywgMywgMSwgMjQ1LCAxMDksIDIsIDEwMSwgCi0gICAgMzMsIDYsIDEsIDI0NSwgMTA5LCAyLCAyMTgsIDI3LCAzMywgMywgMSwgMjQ1LCAxMDksIDIsIDIxOCwgMjcsIDMzLCA2LCAxLCAKLSAgICAyMzQsIDEzMywgMjUwLCA2NywgMzMsIDMsIDEsIDIzNCwgMTMzLCAyNTAsIDY3LCAzMywgNiwgMSwgMjQ1LCAxMTgsIDIsIAotICAgIDIxOCwgMjcsIDMzLCAzLCAxLCAyNDUsIDExOCwgMiwgMjE4LCAyNywgMzMsIDMsIDEsIDIyNiwgMTg1LCAzMywgNiwgMSwgCi0gICAgMTE4LCAyLCAyNTEsIDc0LCAzMywgMywgMSwgMTE4LCAyLCAyNTEsIDc0LCAzMywgNiwgMSwgMTE4LCAyLCAyNDcsIDIwOSwgCi0gICAgMzMsIDMsIDEsIDExOCwgMiwgMjQ3LCAyMDksIDMzLCA2LCAyNiwgMTE4LCAyMzYsIDU1LCAzMywgMywgMjYsIDExOCwgMjM2LCAKLSAgICA1NSwgMzMsIDYsIDEsIDIzNiwgNTYsIDIsIDI1MSwgNzQsIDMzLCAzLCAxLCAyMzYsIDU2LCAyLCAyNTEsIDc0LCAzMywgNiwgCi0gICAgMSwgMjIyLCAxMTMsIDMzLCAzLCAxLCAyMjIsIDExMywgMzMsIDYsIDEsIDIyMiwgMTE0LCAyLCAyNDcsIDIwOSwgMzMsIDMsIAotICAgIDEsIDIyMiwgMTE0LCAyLCAyNDcsIDIwOSwgMzMsIDYsIDEsIDIxMiwgNjgsIDIsIDI0NywgMjA5LCAzMywgMywgMSwgMjEyLCAKLSAgICA2OCwgMiwgMjQ3LCAyMDksIDMzLCA2LCAxLCAyMTIsIDg4LCAyLCAyNDcsIDIwOSwgMzMsIDMsIDEsIDIxMiwgODgsIDIsIAotICAgIDI0NywgMjA5LCAzMywgNiwgMSwgMjU0LCAxODAsIDI0NSwgMjQ3LCAzMywgMywgMSwgMjU0LCAxODAsIDI0NSwgMjQ3LCAzMywgCi0gICAgNiwgMSwgMjQwLCAxNDYsIDIsIDIzMiwgMzcsIDMzLCAzLCAxLCAyNDAsIDE0NiwgMiwgMjMyLCAzNywgMzMsIDYsIDEsIAotICAgIDI0MCwgMTQ2LCAyLCAyNDcsIDIwOSwgMzMsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyNDcsIDIwOSwgMzMsIDYsIDEsIDE1NywgMiwgCi0gICAgMjQ3LCAyMDksIDMzLCAzLCAxLCAxNTcsIDIsIDI0NywgMjA5LCAzMywgNiwgMSwgMjUyLCA1NCwgNzUsIDMzLCAzLCAxLCAKLSAgICAyNTIsIDU0LCA3NSwgMzMsIDYsIDEsIDI1MiwgNTQsIDE1NywgMiwgMjQ3LCAyMDksIDMzLCAzLCAxLCAyNTIsIDU0LCAxNTcsIAotICAgIDIsIDI0NywgMjA5LCAzMywgNiwgMSwgMTkxLCAyLCAyNDcsIDIwOSwgMzMsIDMsIDEsIDE5MSwgMiwgMjQ3LCAyMDksIDMzLCAKLSAgICA2LCAxLCAxMTEsIDIsIDIzMiwgMzcsIDMzLCAzLCAxLCAxMTEsIDIsIDIzMiwgMzcsIDMzLCA2LCAxLCAxMTEsIDIsIDI0NywgCi0gICAgMjA5LCAzMywgMywgMSwgMTExLCAyLCAyNDcsIDIwOSwgMzMsIDYsIDEsIDExMSwgMiwgNTEsIDE3OSwgMzMsIDMsIDEsIAotICAgIDExMSwgMiwgNTEsIDE3OSwgMzMsIDYsIDEsIDI1MCwgNjgsIDIsIDI0NywgMjA5LCAzMywgMywgMSwgMjUwLCA2OCwgMiwgCi0gICAgMjQ3LCAyMDksIDMzLCA2LCAxLCAyNDIsIDIxMywgMiwgMjQ3LCAyNDYsIDMzLCAzLCAxLCAyNDIsIDIxMywgMiwgMjQ3LCAKLSAgICAyNDYsIDMzLCA2LCAxLCAyMTMsIDE5LCAyLCAyNDcsIDIwOSwgMzMsIDMsIDEsIDIxMywgMTksIDIsIDI0NywgMjA5LCAzMywgCi0gICAgNiwgMSwgMjQyLCAyMTMsIDIsIDIxOSwgNDUsIDI0LCAxMDEsIDMzLCAzLCAxLCAyNDIsIDIxMywgMiwgMjE5LCA0NSwgMjQsIAotICAgIDEwMSwgMzMsIDYsIDEsIDI0MiwgMzAsIDIsIDEwMSwgMzMsIDMsIDEsIDI0MiwgMzAsIDIsIDEwMSwgMzMsIDYsIDEsIDI0MiwgCi0gICAgMzAsIDIsIDkwLCAzMywgMywgMSwgMjQyLCAzMCwgMiwgOTAsIDMzLCA2LCAxLCAyMzQsIDIzLCAyNDgsIDQxLCAzMywgMywgCi0gICAgMSwgMjM0LCAyMywgMjQ4LCA0MSwgMzMsIDYsIDEsIDIzNCwgMjMsIDI0NywgMTE0LCAzMywgMywgMSwgMjM0LCAyMywgMjQ3LCAKLSAgICAxMTQsIDMzLCA2LCAxLCAyMzQsIDIzLCAyMTIsIDIwLCAzMywgMywgMSwgMjM0LCAyMywgMjEyLCAyMCwgMzMsIDYsIDEsIAotICAgIDIzNCwgMjMsIDI0NSwgMjQxLCAzMywgMywgMSwgMjM0LCAyMywgMjQ1LCAyNDEsIDMzLCA2LCAxLCAyMzQsIDIzLCAyMzIsIAotICAgIDIxNiwgMzMsIDMsIDEsIDIzNCwgMjMsIDIzMiwgMjE2LCAzMywgNiwgMSwgMjM0LCAyMywgMjI5LCA5LCAzMywgMywgMSwgCi0gICAgMjM0LCAyMywgMjI5LCA5LCAzMywgNiwgMSwgMjM0LCAyMywgMjIwLCAzNywgMzMsIDMsIDEsIDIzNCwgMjMsIDIyMCwgMzcsIAotICAgIDMzLCA2LCAxLCAyMzQsIDIzLCAyMTcsIDEzLCAzMywgMywgMSwgMjM0LCAyMywgMjE3LCAxMywgMzMsIDYsIDEsIDIyMywgCi0gICAgMjAyLCAyMTIsIDg3LCAzMywgMywgMSwgMjIzLCAyMDIsIDIxMiwgODcsIDMzLCA2LCAxLCAyNDUsIDEzMiwgMiwgMTAxLCAKLSAgICAzMywgMywgMSwgMjQ1LCAxMzIsIDIsIDEwMSwgMzMsIDYsIDEsIDIzMywgMjUsIDMzLCAzLCAxLCAyMzMsIDI1LCAzMywgNiwgCi0gICAgMSwgMjIzLCAxOTIsIDMzLCAzLCAxLCAyMjMsIDE5MiwgMzMsIDYsIDEsIDIxMywgODAsIDMzLCAzLCAxLCAyMTMsIDgwLCAKLSAgICAzMywgNiwgMSwgMjI0LCAyMzIsIDMzLCAzLCAxLCAyMjQsIDIzMiwgMzMsIDYsIDEsIDIxNCwgNiwgMzMsIDMsIDEsIDIxNCwgCi0gICAgNiwgMzMsIDYsIDEsIDI1NCwgNzUsIDE4MSwgMzMsIDMsIDEsIDI1NCwgNzUsIDE4MSwgMzMsIDYsIDEsIDI0NSwgMTMyLCAyLCAKLSAgICAyMzEsIDM3LCAxMDEsIDMzLCAzLCAxLCAyNDUsIDEzMiwgMiwgMjMxLCAzNywgMTAxLCAzMywgNiwgMSwgMjQ1LCAxMDksIDIsIAotICAgIDIzMSwgMzcsIDEwMSwgMzMsIDMsIDEsIDI0NSwgMTA5LCAyLCAyMzEsIDM3LCAxMDEsIDMzLCA2LCAxLCAyMjYsIDk3LCAyLCAKLSAgICAyNDcsIDI0NiwgMzMsIDMsIDEsIDIyNiwgOTcsIDIsIDI0NywgMjQ2LCAzMywgNiwgMSwgMjIwLCAyMTQsIDIsIDI0NywgCi0gICAgMjQ2LCAzMywgMywgMSwgMjIwLCAyMTQsIDIsIDI0NywgMjQ2LCAxNDEsIDYsIDEsIDI1MywgODAsIDE0MSwgNiwgMSwgMjUxLCAKLSAgICAyMTYsIDE0MSwgNiwgMSwgMjQyLCAxNzksIDE0MSwgNiwgMSwgMjQ4LCAxNjQsIDE0MSwgNiwgMSwgMjQ1LCAxNjksIDE0MSwgCi0gICAgNiwgMSwgMjEyLCAxMDksIDE0MSwgNiwgMSwgMjQ1LCAxNTQsIDE0MSwgNiwgMSwgMjQ1LCAzMCwgMTQxLCA2LCAxLCAxMDgsIAotICAgIDE0MSwgNiwgMSwgMjEyLCA2NywgMTQxLCA2LCAxLCAyMzUsIDIyNCwgMTQxLCA2LCAxLCAyMzIsIDIxOSwgMTQxLCA2LCAxLCAKLSAgICAyMTMsIDE0OCwgMTQxLCA2LCAxLCAyNTAsIDIxOSwgMTQxLCA2LCAxLCAyMzQsIDE3MSwgMTQxLCA2LCAxLCAyNDEsIDU0LCAKLSAgICAxNDEsIDYsIDEsIDIzNSwgMTM5LCAxNDEsIDYsIDEsIDI0MiwgMjIyLCAxNDEsIDYsIDEsIDI1MCwgNjIsIDE0MSwgNiwgMSwgCi0gICAgMjMxLCAxMjIsIDE0MSwgNiwgMSwgMjEyLCAyNTUsIDE0MSwgNiwgMSwgMjI4LCAxNTAsIDE0MSwgNiwgMSwgMjIxLCAyNCwgCi0gICAgMTQxLCA2LCAxLCAyMTQsIDExOSwgMTQxLCA2LCAxLCAyNTAsIDkyLCAxNDEsIDYsIDEsIDIyNiwgODAsIDE0MSwgNiwgMSwgCi0gICAgMjM1LCAxMTIsIDE0MSwgNiwgMSwgMjAzLCAxNDEsIDYsIDEsIDIyMiwgODAsIDE0MSwgNiwgMSwgMjE0LCAxNTYsIDE0MSwgCi0gICAgNiwgMSwgMjE3LCAxNSwgMTQxLCA2LCAxLCAyMjMsIDI0NSwgMTQxLCA2LCAxLCAyNDksIDE3NSwgMTQxLCA2LCAxLCAyMTIsIAotICAgIDI0MCwgMTQxLCA2LCAxLCAyMjUsIDE3OCwgMTQxLCA2LCAxLCAyMzQsIDE4MiwgMTQxLCA2LCAxLCAyMjcsIDg4LCAxNDEsIAotICAgIDYsIDEsIDI0NCwgMTExLCAxNDEsIDU5LCAxLCA0MiwgMTUxLCAyMjMsIDEzMCwgMTQxLCAyNTMsIDIyNiwgMTQxLCAyNDUsIAotICAgIDExMiwgNzcsIDE0MSwgMjQ0LCAyNTQsIDc3LCAxNDEsIDI0OSwgMTU3LCAxNDEsIDIyNCwgMTU4LCA3NywgMTQxLCAyNTQsIAotICAgIDE4MSwgNzcsIDE0MSwgMywgMSwgMjUzLCA4MCwgMTQxLCAzLCAxLCAyNTEsIDIxNiwgMTQxLCAzLCAxLCAyNDIsIDE3OSwgCi0gICAgMTQxLCAzLCAxLCAyNDgsIDE2NCwgMTQxLCAzLCAxLCAyNDUsIDE2OSwgMTQxLCAzLCAxLCAyMTIsIDEwOSwgMTQxLCAzLCAxLCAKLSAgICAyNDUsIDE1NCwgMTQxLCAzLCAxLCAyNDUsIDMwLCAxNDEsIDMsIDEsIDEwOCwgMTQxLCAzLCAxLCAyMTIsIDY3LCAxNDEsIDMsIAotICAgIDEsIDIzNSwgMjI0LCAxNDEsIDMsIDEsIDIzMiwgMjE5LCAxNDEsIDMsIDEsIDIxMywgMTQ4LCAxNDEsIDMsIDEsIDI1MCwgCi0gICAgMjE5LCAxNDEsIDMsIDEsIDIzNCwgMTcxLCAxNDEsIDMsIDEsIDI0MSwgNTQsIDE0MSwgMywgMSwgMjM1LCAxMzksIDE0MSwgCi0gICAgMywgMSwgMjQyLCAyMjIsIDE0MSwgMywgMSwgMjUwLCA2MiwgMTQxLCAzLCAxLCAyMzEsIDEyMiwgMTQxLCAzLCAxLCAyMTIsIAotICAgIDI1NSwgMTQxLCAzLCAxLCAyMjgsIDE1MCwgMTQxLCAzLCAxLCAyMjEsIDI0LCAxNDEsIDMsIDEsIDIxNCwgMTE5LCAxNDEsIAotICAgIDMsIDEsIDI1MCwgOTIsIDE0MSwgMywgMSwgMjI2LCA4MCwgMTQxLCAzLCAxLCAyMzUsIDExMiwgMTQxLCAzLCAxLCAyMDMsIAotICAgIDE0MSwgMywgMSwgMjIyLCA4MCwgMTQxLCAzLCAxLCAyMTQsIDE1NiwgMTQxLCAzLCAxLCAyMTcsIDE1LCAxNDEsIDMsIDEsIAotICAgIDIyMywgMjQ1LCAxNDEsIDMsIDEsIDI0OSwgMTc1LCAxNDEsIDMsIDEsIDIxMiwgMjQwLCAxNDEsIDMsIDEsIDIyNSwgMTc4LCAKLSAgICAxNDEsIDMsIDEsIDIzNCwgMTgyLCAxNDEsIDMsIDEsIDIyNywgODgsIDE0MSwgMywgMSwgMjQ0LCAxMTEsIDE0MSwgMywgMjYsIAotICAgIDI0NSwgMTcwLCAyMTIsIDI0MCwgMTQxLCAyNDMsIDIwMCwgMjE5LCA2OSwgMTQxLCAyNDAsIDE2MCwgOTMsIDI1NCwgMTc1LCAKLSAgICAyNDUsIDIzLCA5MywgMjU0LCAxNzUsIDIyMiwgODEsIDkzLCAyNTQsIDE3NSwgMjIxLCAxMSwgOTMsIDI1NCwgMTc1LCAyMTIsIAotICAgIDk3LCAyMjQsIDIxNSwgOTMsIDI1NCwgMTc1LCAyMTIsIDk3LCAyNDMsIDEwMCwgOTMsIDI1NCwgMTc1LCAyMTcsIDI4LCA5MywgCi0gICAgMjU0LCAxNzUsIDIyMywgMjAwLCA5MywgMjU0LCAxNzUsIDIxMiwgOTYsIDkzLCAyNTQsIDE3NSwgMjI2LCAxMTgsIDkzLCAKLSAgICAyNTQsIDE3NSwgMjEzLCAxMSwgOTMsIDI1NCwgMTc1LCAyMTcsIDE2NywgOTMsIDI1NCwgMTc1LCAyNDMsIDE3LCA5MywgCi0gICAgMjU0LCAxNzUsIDI0MywgMTgsIDIzMCwgMTM5LCA5MywgMjU0LCAxNzUsIDI0MywgMTUsIDkzLCAyNTQsIDE3NSwgMjI0LCAKLSAgICAyMTYsIDIyNiwgMTQ0LCA5MywgMjU0LCAxNzUsIDIxNywgMjA2LCAyNDMsIDMyLCA5MywgMjU0LCAxNzUsIDIyNiwgMTAwLCAKLSAgICA5MywgMjU0LCAxNzUsIDI1MywgMTE2LCAyNDIsIDIyLCA5MywgMjU0LCAxNzUsIDIzMCwgMTQ5LCA5MywgMjU0LCAxNzUsIAotICAgIDIzMiwgMTMsIDkzLCAyNTQsIDE3NSwgMjMxLCAxMTMsIDkzLCAyNTQsIDE3NSwgMjMxLCAxMTQsIDIzNCwgMTgzLCA5MywgCi0gICAgMjU0LCAxNzUsIDI0OCwgMTA4LCA5MywgMjU0LCAxNzUsIDIyNCwgMjI3LCA5MywgMjU0LCAxNzUsIDIxNywgMjA2LCAyMjQsIAotICAgIDIxMSwgOTMsIDI1NCwgMTc1LCAyMTMsIDIxLCAyNTEsIDIxNywgMjEyLCAyMjEsIDkzLCAyNTQsIDE3NSwgMjI3LCA3MywgCi0gICAgOTMsIDI1NCwgMTc1LCAyMzYsIDE0LCA5MywgMjU0LCAxNzUsIDI0OCwgMjEsIDkzLCAyNTQsIDE3NSwgMjEyLCAyNiwgOTMsIAotICAgIDE1MiwgMjMxLCAyMDYsIDI0OSwgMjI4LCA5MywgMjI1LCAxNDUsIDIyMCwgMjE2LCA5MywgMjI1LCAxNDUsIDI0MSwgMjMzLCAKLSAgICAyMjIsIDgxLCA5MywgMjI1LCAxNDUsIDI0MSwgMjMzLCAyMjYsIDExMiwgOTMsIDIyNSwgMTQ1LCAyNDEsIDIzMywgMjI0LCAKLSAgICAyMjAsIDkzLCAyMjUsIDE0NSwgMjQxLCAxNDQsIDkzLCAyMjUsIDE0NSwgMjE2LCAxMzQsIDkzLCAyMjUsIDE0NSwgMjIyLCAKLSAgICA4MSwgOTMsIDIyNSwgMTQ1LCAyMjYsIDExMiwgOTMsIDIyNSwgMTQ1LCAyMjQsIDIyMCwgOTMsIDIyNSwgMTQ1LCAyNDEsIAotICAgIDQ3LCA5MywgMjI1LCAxNDUsIDI0MSwgNDgsIDI0MSwgMjM1LCAzMSwgMjE0LCAyMzYsIDkzLCAyMjUsIDE0NSwgMjI0LCAKLSAgICAxNjIsIDkzLCAyMjUsIDE0NSwgMjQ4LCAxNTEsIDE2NywgMjMxLCAyMzQsIDkzLCAyMjUsIDE0NSwgMjMxLCAxMDUsIDkzLCAKLSAgICAyMjUsIDI3LCAyMzEsIDIzMSwgOTMsIDIyNSwgMTQ1LCAyMjQsIDU5LCA5MywgMjI1LCAyNywgMjI2LCAxMjAsIDkzLCAyMjUsIAotICAgIDE0NSwgMjIwLCAyMDEsIDI0NywgNzQsIDkzLCAyMjUsIDE0NSwgMjIwLCA4NSwgMjQ3LCA3NCwgOTMsIDIyNSwgMjcsIDIxOSwgCi0gICAgMjM3LCAyMjYsIDExNCwgOTMsIDE1MiwgMjE1LCAxMzEsIDI0NywgNzQsIDkzLCAxNTIsIDIzMiwgMTYzLCAyNDcsIDc0LCAKLSAgICA5MywgMjI1LCAyNywgMjI4LCA1MSwgMjQyLCAyMSwgOTMsIDIyNSwgMTQ1LCAyMjQsIDIyMSwgMjI0LCAyMTUsIDkzLCAxLCAKLSAgICAyNTQsIDc4LCA5MywgMSwgMjUxLCAyMDUsIDkzLCAxLCAyNDIsIDE3NywgOTMsIDEsIDI0OCwgMTM0LCA5MywgMSwgMjQxLCAKLSAgICAyMjIsIDkzLCAxLCAyMTQsIDIzNiwgOTMsIDEsIDIxMiwgOTAsIDkzLCAxLCAyNDEsIDE4MiwgOTMsIDEsIDIxNywgMTgzLCAKLSAgICA5MywgMSwgMjEyLCAyMjQsIDkzLCAxLCA0MCwgMjM0LCAyNTQsIDkzLCAxLCAyMzQsIDI1NCwgOTMsIDEsIDIzMywgMTE4LCAKLSAgICA5MywgMSwgNDAsIDIzMSwgMTI5LCA5MywgMSwgMjMxLCAxMjksIDkzLCAxLCA0MCwgMjI4LCA1MCwgOTMsIDEsIDIyOCwgNTAsIAotICAgIDkzLCAxLCAyMjIsIDE2NCwgOTMsIDEsIDI1MywgNzgsIDkzLCAxLCA0MCwgMjI2LCA5NiwgOTMsIDEsIDIyNiwgOTYsIDkzLCAKLSAgICAxLCA0MCwgMjE2LCAxMzcsIDkzLCAxLCAyMTYsIDEzNywgOTMsIDEsIDIyNCwgMTg0LCA5MywgMSwgMjIzLCAyMTksIDkzLCAKLSAgICAxLCAyMjAsIDIwMCwgOTMsIDEsIDIxNywgMjQ1LCA5MywgMjYsIDIxMiwgMjUzLCA1MSwgMjE0LCAyMzYsIDkzLCAyNiwgCi0gICAgMjEyLCAyNTMsIDIxNCwgMjM3LCAyMTIsIDIyNCwgOTMsIDI2LCAyMTIsIDI1MywgNTEsIDIxMiwgMjI0LCA5MywgMjI1LCAKLSAgICAyNywgMjQzLCAxNywgOTMsIDIyNSwgMjcsIDI0MywgMTUsIDEyLCA1MCwgNTIsIDEyLCA1LCAyMjIsIDE1OCwgMTIsIDI0MywgCi0gICAgMjU1LCAyMzEsIDIxNywgMTIsIDUsIDIyMiwgMTkyLCAyNTMsIDIwNywgMjQ5LCA1MCwgMjIzLCA5NSwgMjUzLCAyMDcsIAotICAgIDI0MywgMjMwLCAyMjMsIDk1LCAxMiwgMjI0LCAyNywgMjUzLCAyMDcsIDIyNiwgNTgsIDIzMSwgNiwgNTIsIDI1MywgMjA3LCAKLSAgICAyMjYsIDU4LCAyMTcsIDIwMSwgMjE3LCAxMDEsIDUyLCAyNTQsIDEyNiwgNTIsIDEyLCAyNDksIDE1NywgMTIsIDI0OCwgOTYsIAotICAgIDIyMSwgNTcsIDEyLCAyMjUsIDE0NywgMjE0LCAyMTgsIDUyLCAxMiwgNSwgMjMwLCAyNDMsIDEyLCA1LCAyMjIsIDE3NCwgCi0gICAgMjU0LCA4MCwgMjE0LCAyOSwgMTIsIDUsIDI1NCwgODAsIDI1MywgMTM3LCAxMiwgNSwgMjI0LCA1OCwgMjU0LCA3OSwgMTIsIAotICAgIDUsIDIyNCwgNjUsIDI1NCwgNjEsIDI1NCwgMTQsIDEyLCA1LCAyMTgsIDIwLCAxMiwgMywgMTI0LCAyMTgsIDI5LCAxMiwgMywgCi0gICAgMTI0LCAyNiwgMTA2LCAyLCAyMzMsIDEyNywgMiwgMjEzLCAzNCwgMTIsIDMsIDEyNCwgMjEyLCAxMDEsIDEyLCAzLCAyNDQsIAotICAgIDEzMywgMTIsIDMsIDI0OCwgMTI5LCAxMiwgMywgMjM0LCAyMTAsIDEyLCAyMjEsIDcwLCAxMiwgMjE2LCAxNjksIDYyLCAKLSAgICAyMjUsIDI3LCA3NywgMTIsIDIyNCwgMTU4LCA3NywgMTIsIDEsIDIzNCwgMjE0LCAyMTMsIDM0LCAxMiwgMSwgMjQyLCAyLCAKLSAgICAxMiwgMSwgMTA2LCAyLCAyMzIsIDMzLCA0OSwgMTIsIDEsIDEwNiwgMiwgMTkyLCA0OSwgMTIsIDEsIDIxNCwgMTUsIDIsIAotICAgIDE5MiwgNDksIDEyLCAxLCAxMDYsIDIsIDE5MiwgNTUsIDEyLCAxLCA3MywgMiwgMTkyLCA0OSwgMTIsIDEsIDI1NCwgNzgsIAotICAgIDEyLCAxLCAyNTEsIDIzMCwgMTIsIDEsIDIxNywgMjE2LCAyMzEsIDIyNywgMTIsIDEsIDIxNywgMjE1LCAxMiwgMSwgMjE3LCAKLSAgICAxNDUsIDEyLCAxLCAyMzUsIDEyNCwgMTIsIDEsIDI0MiwgMTgsIDEyLCAxLCAyMzQsIDEzNSwgMTIsIDEsIDI0OCwgMTQwLCAKLSAgICAxMiwgMSwgMjE3LCAxNTUsIDEyLCAxLCAyMjMsIDI0NSwgMTIsIDEsIDIxMiwgMTAxLCAxMiwgMSwgMjIyLCA4NSwgMTIsIDEsIAotICAgIDIyMCwgMjM5LCAxMiwgMSwgMjIyLCAxOTUsIDEyLCAxLCAyNDgsIDE1OSwgMTIsIDEsIDIxOCwgMjksIDEyLCAxLCAyMTIsIAotICAgIDEwNCwgMTIsIDEsIDI1NCwgMTAzLCAxMiwgMSwgMjQyLCAyMjAsIDEyLCAxLCAyMzQsIDE4MSwgMiwgMTE3LCAxNzYsIDQ5LCAKLSAgICAxMiwgMSwgMjM0LCAxODEsIDIsIDEzMywgMTc2LCA1NSwgMTIsIDEsIDI0NCwgMTM2LCA3MywgMiwgMjM1LCAxOTEsIDIxNSwgCi0gICAgNzksIDEyLCAxLCAyNDQsIDEzNiwgNzMsIDIsIDExNywgMTc2LCA0OSwgMTIsIDEsIDI0NCwgMTM2LCA3MywgMiwgMTMzLCAKLSAgICAxNzYsIDQ5LCAxMiwgMjE3LCAyNTAsIDEyLCAxLCAyNDQsIDExMSwgMTIsIDEsIDIyNCwgMjI1LCAxMiwgMSwgMjM0LCAyNTQsIAotICAgIDEyLCAxLCAyMzMsIDEyNiwgMTIsIDEsIDIzMSwgMTQzLCAxMiwgMSwgMjI4LCAxNzMsIDEyLCAxLCAyNDEsIDIwMiwgMTIsIAotICAgIDEsIDIxNCwgMTQsIDEyLCAxLCAxMDYsIDIzMSwgMjU1LCAxMiwgMSwgMjEzLCAzNCwgMTIsIDI0NCwgMTMxLCAxMiwgMjQ4LCAKLSAgICAxMjcsIDEyLCAyMzQsIDIwOCwgMTIsIDI0NCwgMTMzLCAxMiwgMjQ4LCAxMjksIDEyLCAyMzQsIDIxMCwgMTIsIDIyMSwgMTUsIAotICAgIDEyLCAyMTgsIDI0NiwgMTIsIDIzMiwgMzEsIDQ5LCAxMiwgMTkyLCA0OSwgMTIsIDE5MiwgNTUsIDEyLCAyMTksIDEwLCAKLSAgICAyNTQsIDc4LCAxMiwgMjM1LCAxOTEsIDI0OCwgMTI5LCAxMiwgMTUyLCAyMjgsIDE3NCwgMjQyLCAxOTQsIDEyLCAyMTEsIAotICAgIDI1MCwgMTIsIDMwLCA1LCAzLCAyMTUsIDgwLCA0OSwgMTIsIDMwLCA1LCAyMzUsIDE5MSwgMywgMjE1LCA4MCwgNDksIDEyLCAKLSAgICAzMCwgNSwgNjIsIDU1LCAxMiwgMjIzLCAyMDIsIDI0OCwgMTI5LCAxMiwgMjQ0LCAxMzQsIDIsIDExNywgMjQ3LCA3MiwgMTIsIAotICAgIDIxNCwgMTYsIDE5MiwgNTUsIDI1MywgMjA3LCAyMSwgMjEyLCA3OSwgMjUzLCAyMDcsIDIxLCAxMTYsIDI1MywgMjA3LCAyMSwgCi0gICAgMTA5LCAyNTMsIDIwNywgMjEsIDE2NiwgMjUzLCAyMDcsIDIxLCAxNjMsIDI1MywgMjA3LCAyMSwgMTgwLCAyNTMsIDIwNywgCi0gICAgMjEsIDE4OSwgMjUzLCAyMDcsIDIxLCAxOTgsIDI1MywgMjA3LCAyMSwgMTk1LCAyNTMsIDIwNywgMjEsIDIwMCwgMTIsIAotICAgIDIyNiwgNTcsIDUyLCAxMiwgMjQ4LCAzNCwgMjIxLCA1NywgMTIsIDIxNywgOTksIDIyMSwgNTcsIDEyLCAyNDQsIDUwLCAKLSAgICAyMjUsIDE0MywgMjE5LCA5NSwgMTIsIDEsIDI0NywgNzMsIDI1MSwgMjMwLCAxMiwgMSwgMjQ3LCA3MywgMjI0LCAyMjUsIAotICAgIDEyLCAxLCAyMTgsIDIyMywgMjU0LCA3OCwgMTIsIDEsIDEwNiwgMjE0LCAzMCwgMTIsIDEsIDEwNiwgMiwgMjE0LCAxNiwgCi0gICAgMTkyLCA0OSwgMTIsIDEsIDEwNiwgMiwgMjE0LCAxNiwgMTkyLCA1NSwgMTIsIDEsIDEyNCwgMjQyLCAyLCAxMiwgMSwgMTI0LCAKLSAgICAxOTIsIDI1NCwgNzgsIDEyLCAxLCAxMjQsIDE5MiwgMjE0LCAxNCwgMTIsIDEsIDExMSwgMiwgMTkyLCA0OSwgMTIsIDEsIAotICAgIDEyNCwgMTkyLCAyMTMsIDM0LCAxMiwgMSwgMjE2LCAxMDksIDEyLCAxLCAyMTYsIDEwNywgMTIsIDEsIDI1MSwgMjQwLCAxMiwgCi0gICAgMSwgMjE3LCAyMTYsIDIsIDIyMywgMTMwLCAxMiwgMSwgMjE3LCAyMTYsIDIsIDEzMywgMTc2LCA3OCwgMjQ2LCA1NywgMTIsIAotICAgIDEsIDIyNiwgODAsIDEyLCAxLCAyMTcsIDIxMywgMTIsIDEsIDI1MSwgMjI4LCAxMiwgMSwgMTIxLCAyLCAxOTIsIDQ5LCAxMiwgCi0gICAgMSwgMTIxLCAyLCAxMTcsIDE3NiwgNzEsIDQ5LCAxMiwgMSwgMjI4LCAxNCwgMTIsIDEsIDI0NSwgMjU0LCAxMiwgMSwgMTIxLCAKLSAgICAyLCAxMzMsIDE3NiwgNDksIDEyLCAxLCAyMTcsIDIzMywgMTIsIDEsIDIxNywgMjMxLCAxMiwgMSwgMjQ4LCA4MSwgMTIsIDEsIAotICAgIDI0OCwgMTQxLCAyLCAyMjMsIDEzMCwgMTIsIDEsIDI0OCwgMTQxLCAyLCA2MiwgNTUsIDEyLCAxLCAyNDgsIDE0MSwgMiwgCi0gICAgNjIsIDI1MSwgMjIwLCAyNCwgMywgMjE4LCAyOSwgMTIsIDEsIDI0OCwgMTQ2LCAxMiwgMSwgMjQ4LCA4MywgMTIsIDEsIAotICAgIDI0NiwgMjUsIDEyLCAxLCAyNDgsIDE0MSwgMiwgMTMzLCAxNzYsIDc4LCAyNDYsIDU3LCAxMiwgMSwgMjQ4LCAxNDEsIDIsIAotICAgIDI0MywgMjM3LCAxNzYsIDQ5LCAxMiwgMSwgMjIzLCA3NywgMTIsIDEsIDIyMywgMjQ2LCAyLCAzLCAyMTUsIDc5LCAxMiwgMSwgCi0gICAgMjIzLCAyNDYsIDIsIDIyMywgMTMwLCAxMiwgMSwgMjIzLCAyNDYsIDIsIDYyLCA1NSwgMTIsIDEsIDIyMywgMjQ2LCAyLCAzLCAKLSAgICAyMTUsIDgwLCA1NSwgMTIsIDEsIDIyMywgMjQ2LCAyLCA2MiwgMjUxLCAyMjAsIDI0LCA2MiwgNDksIDEyLCAxLCAyMjMsIAotICAgIDI0NiwgMiwgMTE3LCAxNzYsIDQ5LCAxMiwgMSwgMjM1LCAxMjEsIDEyLCAxLCAyMjMsIDI0NiwgMiwgMjQzLCAyMzcsIDE3NiwgCi0gICAgNDksIDEyLCAxLCAyMjIsIDg2LCAyLCA2MiwgMjUxLCAyMjAsIDI0LCA2MiwgNDksIDEyLCAxLCAyMjIsIDg2LCAyLCAxMzMsIAotICAgIDE3NiwgNTUsIDEyLCAxLCAyMjIsIDg2LCAyLCAxMzMsIDE3NiwgMjUxLCAyMjAsIDI0LCAxMzMsIDE3NiwgNDksIDEyLCAxLCAKLSAgICAyMjIsIDE5NiwgMiwgMTE3LCAxNzYsIDU1LCAxMiwgMSwgMjIyLCAxOTYsIDIsIDEzMywgMTc2LCA0OSwgMTIsIDEsIDIxOCwgCi0gICAgMzAsIDIsIDEzMywgMTc2LCA0OSwgMTIsIDEsIDI1NCwgMTA0LCAyLCAxMzMsIDE3NiwgNDksIDEyLCAxLCAyNDcsIDczLCAKLSAgICAyNDQsIDExMSwgMTIsIDEsIDI0NCwgMTEyLCAyLCA2MiwgMjMwLCAxNzksIDU1LCAxMiwgMSwgMjQ0LCAxMTIsIDIsIDYyLCAKLSAgICA1NSwgMTIsIDEsIDIxNCwgMjI1LCAxMiwgMSwgMjQ0LCAxMTIsIDIsIDEzMywgMTc2LCA1NSwgMTIsIDEsIDIyNiwgNzgsIAotICAgIDEyLCAxLCAyMjQsIDIyNiwgMiwgNjIsIDQ5LCAxMiwgMSwgMjI0LCAyMjYsIDIsIDEzMywgMTc2LCA0OSwgMTIsIDEsIDIzNCwgCi0gICAgMTgwLCAxMiwgMSwgMjE4LCAxOTUsIDIzNCwgMjU0LCAxMiwgMSwgMjM0LCAyNTUsIDIsIDIyMywgMTMwLCAxMiwgMSwgMjM0LCAKLSAgICAyNTUsIDIsIDYyLCA0OSwgMTIsIDEsIDIyOSwgMTYxLCAxMiwgMSwgMjM0LCAyNTUsIDIsIDEzMywgMTc2LCA1NSwgMTIsIDEsIAotICAgIDI0MywgOTcsIDEyLCAxLCAyNDMsIDk4LCAyLCAyMjMsIDEzMCwgMTIsIDEsIDIyOSwgODgsIDEyLCAxLCAyNDMsIDk4LCAyLCAKLSAgICAxMTcsIDE3NiwgNTUsIDEyLCAxLCAyNDIsIDgyLCAxMiwgMSwgMjQzLCA5OCwgMiwgMTMzLCAxNzYsIDQ5LCAxMiwgMSwgCi0gICAgMjMzLCAxMjcsIDIsIDMsIDIxNSwgNzksIDEyLCAxLCAyMzMsIDEyNywgMiwgNjIsIDQ5LCAxMiwgMSwgMjMzLCAxMjcsIDIsIAotICAgIDEzMywgMTc2LCA0OSwgMTIsIDEsIDIzMywgMTI3LCAyLCAxMzMsIDE3NiwgNTUsIDEyLCAxLCAyMjgsIDE3NCwgMiwgNjIsIAotICAgIDU1LCAxMiwgMSwgMjI4LCAxNzQsIDI0MiwgMTk0LCAxMiwgMSwgMjIzLCAxMTUsIDEyLCAxLCAyMjgsIDE3NCwgMiwgMjIzLCAKLSAgICAxMzAsIDEyLCAxLCAyMjgsIDE3NCwgMiwgMTMzLCAxNzYsIDQ5LCAxMiwgMSwgMjQxLCAyMDMsIDI0NywgOTUsIDEyLCAxLCAKLSAgICAyMTcsIDIzNCwgMiwgNjIsIDQ5LCAxMiwgMSwgMjQxLCAyMDMsIDIsIDczLCA0OSwgMTIsIDEsIDI0MSwgMjAzLCAyNDIsIAotICAgIDE0NywgMTIsIDEsIDI0MSwgMjAzLCAyNDIsIDE0OCwgMiwgMTkyLCA0OSwgMTIsIDEsIDIxNywgMjE2LCAyMzEsIDIyOCwgCi0gICAgMjQyLCAxNDcsIDEyLCAxLCAyMTQsIDE1LCAyLCAyMjMsIDEzMCwgMTIsIDEsIDIzNCwgODIsIDIyNywgOTksIDEyLCAxLCAKLSAgICAyMjcsIDk5LCAxMiwgMSwgNjksIDEyLCAxLCAyMTIsIDIwMywgMTIsIDEsIDIzNCwgODIsIDIxMiwgMjAzLCAxMiwgMSwgCi0gICAgMjE0LCAxNSwgMiwgMTE3LCAxNzYsIDQ5LCAxMiwgMSwgMjE0LCAyMzIsIDEyLCAxLCAyNDQsIDEzNiwgMjEzLCAzNCwgMTIsIAotICAgIDEsIDczLCAyLCAyMTgsIDI3LCAxMiwgMSwgNzMsIDIsIDMsIDIxNSwgNzksIDEyLCAxLCAyMTQsIDE1LCAyLCA2MiwgNDksIAotICAgIDEyLCAxLCA3NCwgMTIsIDEsIDczLCAyLCAxMzMsIDE3NiwgNTUsIDEyLCAxLCA3MywgMjUyLCA1MiwgMTIsIDEsIDczLCAKLSAgICAyNTIsIDUzLCAyLCAxOTIsIDQ5LCAxMiwgMjQzLCAyMDAsIDIxOSwgNjksIDEyLCAxLCAyNTQsIDE0OCwgMTIsIDMsIDEyNCwgCi0gICAgMjYsIDIyMiwgMTk2LCAyLCAyMzMsIDEyNywgMiwgMTA2LCAyMzEsIDI1NSwgMTIsIDMsIDEyNCwgMjYsIDIyNCwgMjI2LCAyLCAKLSAgICAyMzMsIDEyNywgMiwgMTA2LCAyMzEsIDI1NSwgMTIsIDMsIDEyNCwgNjMsIDcwLCAxNywgMTIsIDMsIDEyNCwgMjMzLCAxMjcsIAotICAgIDI1NCwgNzgsIDEyLCAzLCAxMjQsIDIzNSwgMTI0LCAxMiwgMywgMTI0LCAxMzMsIDI0NywgNzIsIDEyLCAzLCAxMjQsIDIyMiwgCi0gICAgODUsIDEyLCAyNDUsIDEwMSwgNjUsIDI1MywgODIsIDEyLCAyMTksIDkxLCA2NSwgMjIzLCA0OSwgMjQ1LCAxMzIsIDI0MSwgCi0gICAgMTQxLCAxMiwgMywgMTI0LCAyMjMsIDg1LCAyMTIsIDc5LCAxMiwgMywgMTI0LCAyMTUsIDEzMCwgMjI0LCA4LCAyMTIsIDc5LCAKLSAgICAxMiwgMywgMTI0LCAyNDcsIDczLCAyNDEsIDIyMCwgNjUsIDIzNCwgMTM1LCAxMiwgMywgMTI0LCA2MywgNDgsIDE3LCAxMiwgCi0gICAgMywgMTE1LCAyMjIsIDg1LCAxMiwgMywgMTI0LCAyMzIsIDMyLCAxMiwgMywgMjE0LCAxNCwgMTIsIDMsIDIxMywgMzQsIDEyLCAKLSAgICAzLCAxMjQsIDIxMywgMzQsIDEyLCAzLCAxMjQsIDIyOCwgMTczLCAxMiwgMjI1LCAxNzMsIDY1LCAyMjIsIDE4NCwgMTIsIAotICAgIDI0NSwgMTEwLCAyNTAsIDEwOSwgMTE1LCAyMTksIDY5LCAxMiwgMjQ1LCAxMTAsIDI1MCwgMTA5LCAxMjQsIDIxOSwgNjksIAotICAgIDEyLCAyMjMsIDg1LCAxMjQsIDIxOSwgNzAsIDIsIDI0NCwgNzMsIDI1MCwgMTA4LCAxMiwgMywgMTE1LCAyMzEsIDE0MywgCi0gICAgMTIsIDEsIDI0OCwgMTQxLCAyLCAyMzUsIDE5MSwgMjE1LCA3OSwgMTIsIDEsIDIyMywgMjQ2LCAyLCAyMzUsIDE5MSwgMjE1LCAKLSAgICA3OSwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMjEyLCA3OSwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMTE2LCAyNDQsIAotICAgIDI0NiwgMjUzLCAyMDcsIDIxLCAxMDksIDI0NCwgMjQ2LCAyNTMsIDIwNywgMjEsIDE2NiwgMjQ0LCAyNDYsIDI1MywgMjA3LCAKLSAgICAyMSwgMTYzLCAyNDQsIDI0NiwgMjUzLCAyMDcsIDIxLCAxODAsIDI0NCwgMjQ2LCAyNTMsIDIwNywgMjEsIDE4OSwgMjQ0LCAKLSAgICAyNDYsIDI1MywgMjA3LCAyMSwgMTk4LCAyNDQsIDI0NiwgMjUzLCAyMDcsIDIxLCAxOTUsIDI0NCwgMjQ2LCAyNTMsIDIwNywgCi0gICAgMjEsIDIwMCwgMTIsIDEsIDIyMCwgMjQwLCAyLCA2MiwgNTUsIDEyLCAxLCAyNDgsIDE2MCwgMiwgNjIsIDU1LCAxMiwgMSwgCi0gICAgMjQyLCAyMjEsIDIsIDYyLCA1NSwgMTIsIDUsIDIyMCwgODQsIDI1NCwgMzUsIDEyLCA1LCAyMjAsIDg0LCAyMjUsIDExNSwgCi0gICAgMjMxLCAxMjIsIDEyLCAxLCAyNDEsIDIwMywgMiwgMjM1LCAxOTEsIDIxNSwgNzksIDE3NSwgMjQ1LCAxMDEsIDY1LCAyMjYsIAotICAgIDE0MiwgMTc1LCAyMTgsIDIxOSwgMjQzLCAyMDAsIDIxOSwgNjksIDE3NSwgMjE5LCAxMiwgMjQzLCAyMDAsIDIxOSwgNjksIAotICAgIDE3NSwgMjE4LCAyMTksIDI0OSwgMTY0LCAxNzUsIDIxOSwgMTIsIDI0OSwgMTY0LCAxNzUsIDE5OSwgMjQ5LCAxNjQsIDE3NSwgCi0gICAgMjQ5LCAxNjUsIDIyMCwgMzQsIDIzMywgNzAsIDE3NSwgMjQ5LCAxNjUsIDIyMCwgMzQsIDIyMywgMTQ4LCAxNzUsIDIxOCwgCi0gICAgMjE5LCAyNDksIDE2NSwgMjIwLCAzNCwgMjMzLCA3MCwgMTc1LCAyMTksIDEyLCAyNDksIDE2NSwgMjIwLCAzNCwgMjIzLCAKLSAgICAxNDgsIDE3NSwgMjQ5LCAxMTksIDE3NSwgMjQxLCAyNDAsIDIyNywgMTE0LCAxNzUsIDI0MSwgMjQwLCAyMzEsIDEwMywgCi0gICAgMTc1LCAyNDEsIDI0MCwgMjUzLCAxMzQsIDE3NSwgMjU0LCAxODEsIDc3LCAxNzUsIDEsIDI1NCwgODIsIDE3NSwgMSwgMjE4LCAKLSAgICAyMjMsIDI1NCwgODIsIDE3NSwgMSwgMjUxLCAyMDIsIDE3NSwgMSwgMjQzLCA4OSwgMTc1LCAxLCAyNDMsIDkwLCAyNDMsIAotICAgIDY3LCAxNzUsIDEsIDI0OCwgMTM3LCAxNzUsIDEsIDI0NywgNzMsIDI0OCwgMTM4LCAyMjMsIDEyNiwgMTc1LCAxLCAyNDEsIAotICAgIDIyMiwgMTc1LCAxLCAyMTQsIDE0LCAxNzUsIDEsIDIxMiwgMTAxLCAxNzUsIDEsIDI0MSwgMTgwLCAxNzUsIDEsIDIxNywgCi0gICAgMTc5LCAxNzUsIDEsIDIxNywgMTgwLCAyNDMsIDY3LCAxNzUsIDEsIDIxMiwgMTkwLCAxNzUsIDEsIDIxMiwgMTkxLCAyNDEsIAotICAgIDIyMiwgMTc1LCAxLCAyMzQsIDIzMCwgMTc1LCAxLCAyMzMsIDEyNSwgMTc1LCAxLCAyMzEsIDMsIDE3NSwgMSwgMjI4LCA1MCwgCi0gICAgMTc1LCAxLCAyMjEsIDYzLCAxNzUsIDEsIDQwLCAyMjEsIDYzLCAxNzUsIDEsIDc0LCAxNzUsIDEsIDIyNiwgOTYsIDE3NSwgCi0gICAgMSwgMjIzLCAyMDIsIDIyNiwgOTYsIDE3NSwgMSwgMjIyLCAxOTMsIDE3NSwgMSwgMjI0LCAyMTksIDE3NSwgMSwgMjIzLCAKLSAgICAxMjYsIDE3NSwgMSwgMjIwLCAyMDAsIDE3NSwgMSwgMjE3LCAyNDMsIDE3NSwgMSwgMjI2LCA0NSwgMjUxLCAxOTAsIDE3NSwgCi0gICAgMSwgMjI2LCA0NSwgMjQyLCAyMTgsIDE3NSwgMSwgMjI2LCA0NSwgMjQ3LCAyMjgsIDE3NSwgMjI1LCAzNiwgNDksIDE3NSwgCi0gICAgMjI1LCAzNiwgNTUsIDE3NSwgMjI1LCAzNiwgMjQ2LCA3MSwgMTc1LCAyMTIsIDEwLCA0OSwgMTc1LCAyMTIsIDEwLCA1NSwgCi0gICAgMTc1LCAyMTIsIDEwLCAyNDYsIDcxLCAxNzUsIDIyNCwgMjQsIDQ5LCAxNzUsIDIyNCwgMjQsIDU1LCAxNzUsIDI0NiwgNzIsIAotICAgIDIxMiwgMTcsIDI0MSwgMzEsIDE3NSwgMjQ2LCA3MiwgMjEyLCAxNywgMjU0LCAxNSwgMTc1LCAyNDEsIDIyNSwgNDksIDE3NSwgCi0gICAgMjQxLCAyMjUsIDU1LCAxNzUsIDI0MSwgMjI0LCAyNDYsIDcxLCAxNzUsIDI0NSwgNDMsIDQ5LCAxNzUsIDI0NSwgNDMsIDU1LCAKLSAgICAxNzUsIDIyMywgMTksIDE3NSwgMjQ0LCAxMDUsIDI0NywgNzQsIDE3NSwgMjI0LCAxMzcsIDE3NSwgMjIzLCA0NSwgMTc1LCAKLSAgICAxMTcsIDcxLCAxNzYsIDQ5LCAxNzUsIDExNywgNzEsIDE3NiwgNTUsIDE3NSwgMTMzLCAxNzYsIDQ5LCAxNzUsIDEzMywgCi0gICAgMTc2LCA1NSwgMTc1LCAyMjcsIDExMiwgMjMyLCAyNDMsIDQ5LCAxNzUsIDIyNywgMTEyLCAyMzIsIDI0MywgNTUsIDE3NSwgCi0gICAgMjMwLCAxMjYsIDE3NSwgMjUyLCA1MSwgMTc1LCAxLCAyMTksIDIzMywgMjEyLCA3MywgMTc1LCAxLCAyMTksIDIzMywgMjM0LCAKLSAgICAxMjgsIDE3NSwgMSwgMjE5LCAyMzMsIDI0NCwgMTIzLCAxMiwgMSwgMjUxLCAyMzEsIDIsIDEzMywgMTc2LCAyNDAsIDIzNywgCi0gICAgNTUsIDEyLCAxLCAyNTEsIDIzMSwgMiwgNjIsIDI1MSwgMjIwLCAyNCwgMTMzLCAxNzYsIDQ5LCAxMiwgMSwgMjUxLCAyMzEsIAotICAgIDIsIDEzMywgMTc2LCAyMjUsIDE0MSwgMjE1LCAxMjQsIDU1LCAxMiwgMSwgMjUxLCAyMzEsIDIsIDEzMywgMTc2LCAyMjUsIAotICAgIDE0MSwgMjE1LCAxMjQsIDI1MSwgMjIwLCAyNCwgMTE3LCAxNzYsIDQ5LCAxMiwgMSwgMjUxLCAyMzEsIDIsIDExNywgMTc2LCAKLSAgICAyNTEsIDIyMCwgMjQsIDYyLCA0OSwgMTIsIDEsIDI1MSwgMjMxLCAyLCAyMzUsIDE5MSwgMywgMjE1LCA4MCwgNTUsIDEyLCAKLSAgICAxLCAyNTEsIDIzMSwgMiwgMywgMjE1LCA3OSwgMTIsIDEsIDEyMSwgMiwgMTE3LCAxNzYsIDQ5LCAxMiwgMSwgMTIxLCAyLCAKLSAgICAxMzMsIDE3NiwgMjI1LCAxNDEsIDIxNSwgMTI0LCA1NSwgMTIsIDEsIDI0OCwgMTQxLCAyLCAxMTcsIDE3NiwgMjE0LCAxNjYsIAotICAgIDI1MSwgMjIwLCAyNCwgMywgMjE4LCAyOSwgMTIsIDEsIDI0OCwgMTQxLCAyLCAyMzUsIDE5MSwgMywgMjE1LCA4MCwgNTUsIAotICAgIDEyLCAxLCAyMjMsIDI0NiwgMiwgOTAsIDEyLCAxLCAyMjIsIDg2LCAyLCAyNDMsIDIzNywgMTc2LCA0OSwgMTIsIDEsIDI1NCwgCi0gICAgMTA0LCAyLCAxMTcsIDE3NiwgNDksIDEyLCAxLCAyNTQsIDEwNCwgMiwgMTMzLCAxNzYsIDIyNSwgMTQxLCAyNDYsIDU4LCAKLSAgICA0OSwgMTIsIDEsIDI1NCwgMTA0LCAyLCAxMTcsIDE3NiwgMjE0LCAxNjYsIDQ5LCAxMiwgMSwgMjQ0LCAxMTIsIDIsIDExNywgCi0gICAgMTc2LCA1NSwgMTIsIDEsIDI0NCwgMTEyLCAyLCAxMzMsIDE3NiwgMjI1LCAxNDEsIDIxNSwgMTI0LCA1NSwgMTIsIDEsIAotICAgIDIzNCwgMTgxLCAyLCA2MiwgNDksIDEyLCAxLCAyMzQsIDE4MSwgMiwgMTMzLCAxNzYsIDQ5LCAxMiwgMSwgMjM0LCAxODEsIAotICAgIDIsIDEzMywgMTc2LCAyMjUsIDE0MSwgMjE1LCAxMjQsIDU1LCAxMiwgMSwgNjMsIDIsIDYyLCA0OSwgMTIsIDEsIDYzLCAyLCAKLSAgICA2MiwgNTUsIDEyLCAxLCAyMjgsIDE3NCwgMiwgMTE3LCAxNzYsIDU1LCAxMiwgMSwgMjI4LCAxNzQsIDIsIDMsIDIxOCwgMjksIAotICAgIDEyLCAxLCAyMjgsIDE3NCwgMiwgMywgMjE1LCA3OSwgMTIsIDEsIDIzMywgMTI3LCAyLCAxMzQsIDEyLCAxLCAyMjMsIDI0NiwgCi0gICAgMiwgMTE3LCAxNzYsIDIxNCwgMTY2LCA0OSwgMTIsIDEsIDIyMywgMjQ2LCAyLCAxOTIsIDQ5LCAxMiwgMSwgMjIyLCA4NiwgCi0gICAgMiwgMTE3LCAxNzYsIDIxNCwgMTY2LCA0OSwgMTIsIDEsIDEyMSwgMiwgMywgMTIsIDEsIDIxOCwgMzAsIDU1LCAxMiwgMSwgCi0gICAgMTIxLCAyLCAzLCAxMiwgMSwgMjE4LCAzMCwgMjQsIDExNywgMjQ3LCA3MiwgMTIsIDEsIDIyMiwgODYsIDIsIDMsIDEyLCAxLCAKLSAgICAyMTgsIDMwLCAyNCwgMTE3LCAyNDcsIDcyLCAxMiwgMSwgMjIzLCAyNDYsIDIsIDMsIDEyLCAxLCAyMTgsIDMwLCAyNCwgCi0gICAgMTE3LCAyNDcsIDcyLCAxMiwgMSwgMTIxLCAyLCAzLCAxMiwgMSwgMjE4LCAzMCwgNDksIDEyLCAxLCAxMDYsIDIsIDI0NCwgCi0gICAgMjQ2LCAyNTMsIDIwNywgMjEsIDExNywgNDksIDEyLCAxLCAxMDYsIDIsIDI0NCwgMjQ2LCAyNTMsIDIwNywgMjEsIDEzMywgCi0gICAgNDksIDEyLCAxLCAyNDQsIDEzNiwgNzMsIDIsIDI0NCwgMjQ2LCAyNTMsIDIwNywgMjEsIDExNywgNDksIDEyLCAxLCAyNDQsIAotICAgIDEzNiwgNzMsIDIsIDI0NCwgMjQ2LCAyNTMsIDIwNywgMjEsIDEzMywgNDksIDEyLCAxLCAyNDQsIDEzNiwgNzMsIDIsIDI0NCwgCi0gICAgMjQ2LCAyNTMsIDIwNywgMjEsIDI0MywgMjM3LCA1NSwgMTIsIDEsIDIxNCwgMTUsIDIsIDI0NCwgMjQ2LCAyNTMsIDIwNywgCi0gICAgMjEsIDExNywgNDksIDEyLCAxLCAyMTQsIDE1LCAyLCAyNDQsIDI0NiwgMjUzLCAyMDcsIDIxLCAxMzMsIDQ5LCAxMiwgMSwgCi0gICAgNzMsIDI1MiwgNTMsIDIsIDI0NCwgMjQ2LCAyNTMsIDIwNywgMjEsIDExNywgNDksIDEyLCAxLCA3MywgMjUyLCA1MywgMiwgCi0gICAgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMTMzLCA0OSwgMTIsIDEsIDEyMSwgMiwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgCi0gICAgMjQzLCAyMzcsIDU1LCAxMiwgMSwgMjIyLCA4NiwgMiwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMjQzLCAyMzcsIDQ5LCAKLSAgICAxMiwgMSwgMjIyLCA4NiwgMiwgMjM1LCAxOTEsIDIxNSwgNzksIDEyLCAxLCAyMzQsIDI1NSwgMiwgMTE3LCAxNzYsIDQ5LCAKLSAgICAyMTcsIDE1OCwgMSwgMjQyLCAyNywgMjE3LCAxNTgsIDEsIDIyMCwgMjQ4LCAyMTcsIDE1OCwgMSwgMjI4LCAxNzIsIDIxNywgCi0gICAgMTU4LCAxLCAyMjQsIDc0LCAyMTcsIDE1OCwgMSwgMjUyLCAxMDYsIDIxNywgMTU4LCAxLCAyMzMsIDIyLCAyMTcsIDE1OCwgCi0gICAgMSwgMjM1LCAxMiwgMjE3LCAxNTgsIDEsIDI1NCwgNjgsIDIxNywgMTU4LCAxLCAyMTQsIDI1NSwgMjE3LCAxNTgsIDEsIAotICAgIDIzMSwgMTQyLCAyMTcsIDE1OCwgMSwgMjQ0LCAxNjIsIDIxNywgMTU4LCAxLCAyNDcsIDIzMSwgMjE3LCAxNTgsIDEsIDIxNywgCi0gICAgMTYwLCAyMTcsIDE1OCwgMSwgMjMzLCAxNTMsIDIxNywgMTU4LCAxLCAyNDMsIDEwNiwgMjE3LCAxNTgsIDEsIDI0MiwgMTUzLCAKLSAgICAyMTcsIDE1OCwgMSwgMjIyLCA4NCwgMjE3LCAxNTgsIDEsIDI0OCwgOTQsIDIxNywgMTU4LCAxLCAyMTIsIDkzLCAyMTcsIAotICAgIDE1OCwgMSwgMjE3LCAyNDQsIDIxNywgMTU4LCAxLCAyMTMsIDkxLCAyMTcsIDE1OCwgMSwgMjI2LCAxMDcsIDIxNywgMTU4LCAKLSAgICAxLCAyMzUsIDEyOSwgMjE3LCAxNTgsIDEsIDI1MCwgNzAsIDIxNywgMTU4LCAxLCAyMTYsIDExNCwgMjE3LCAxNTgsIDEsIAotICAgIDI0MSwgMTczLCAyMTcsIDE1OCwgMSwgMjM0LCAxMzcsIDIxNywgMTU4LCAxLCAyMTcsIDE1OSwgMjE3LCAxNTgsIDEsIDIxMiwgCi0gICAgMTA4LCAyMTcsIDE1OCwgMSwgMjIwLCAyMzgsIDIxNywgMTU4LCAxLCAyMjIsIDE5OSwgMjE3LCAxNTgsIDEsIDI0OCwgMTYyLCAKLSAgICAyMTcsIDE1OCwgMSwgMTA4LCAyMTcsIDE1OCwgMSwgMjEyLCAxNiwgMjE3LCAxNTgsIDEsIDI1NCwgMTAxLCAyMTcsIDE1OCwgCi0gICAgMSwgMjQyLCAyMTksIDIxNywgMTU4LCAxLCAyMjQsIDIyOSwgMjE3LCAxNTgsIDEsIDIxNCwgNDcsIDIxNywgMTU4LCAyNTQsIAotICAgIDE4MiwgMjE3LCAxNTgsIDI1NCwgMTk3LCAyMTcsIDE1OCwgMjQwLCAxMDcsIDIxNywgMTU4LCAyNDUsIDE2NCwgMjE3LCAKLSAgICAxNTgsIDIxNSwgMTkxLCAyMTcsIDE1OCwgMjI3LCA0OCwgMjE3LCAxNTgsIDI0NSwgMTcyLCAyMTcsIDE1OCwgMjQ0LCAyNDAsIAotICAgIDIxNywgMTU4LCAyMjcsIDExMSwgMjE3LCAxNTgsIDIyNywgMTE5LCAyMTcsIDE1OCwgMjE4LCAyNDYsIDIxNywgMTU4LCAxLCAKLSAgICAyMzAsIDQzLCAyMjgsIDIyNCwgMjEsIDIxMiwgNzksIDIyOCwgMjI0LCAyMSwgMTE2LCAyMjgsIDIyNCwgMjEsIDEwOSwgCi0gICAgMjI4LCAyMjQsIDIxLCAxNjYsIDIyOCwgMjI0LCAyMSwgMTYzLCAyMjgsIDIyNCwgMjEsIDE4MCwgMjI4LCAyMjQsIDIxLCAKLSAgICAxODksIDIyOCwgMjI0LCAyMSwgMTk4LCAyMjgsIDIyNCwgMjEsIDE5NSwgMjI4LCAyMjQsIDIxLCAyMDAsIDIyOCwgMjI0LCAKLSAgICAxLCA2MSwgMjI4LCAyMjQsIDEsIDI0NSwgMTY1LCAyMjgsIDIyNCwgMSwgNzIsIDIyOCwgMjI0LCAxLCA3NCwgMjI4LCAyMjQsIAotICAgIDEsIDY5LCAyMjgsIDIyNCwgMSwgMjI3LCA0OSwgMjI4LCAyMjQsIDEsIDc1LCAyMjgsIDIyNCwgMSwgMjQ4LCAxNTIsIDIyOCwgCi0gICAgMjI0LCAxLCAyMDQsIDIyOCwgMjI0LCAxLCAyNTIsIDEwNywgMjI4LCAyMjQsIDEsIDE5MywgMjI4LCAyMjQsIDEsIDIxOCwgCi0gICAgNTIsIDIyOCwgMjI0LCAxLCAyMzUsIDEzOSwgMjI4LCAyMjQsIDEsIDI1MCwgOTIsIDIyOCwgMjI0LCAxLCAyNDgsIDE2NCwgCi0gICAgMjI4LCAyMjQsIDEsIDIwMywgMjI4LCAyMjQsIDEsIDIyMywgODEsIDIyOCwgMjI0LCAxLCAyMjIsIDIwMiwgMjI4LCAyMjQsIAotICAgIDEsIDI0MywgNTUsIDIyOCwgMjI0LCAxLCAyNDQsIDE2NCwgMjI4LCAyMjQsIDEsIDE4MSwgMjI4LCAyMjQsIDEsIDIzMywgCi0gICAgMTU3LCAyMjgsIDIyNCwgMSwgMjMwLCA0NiwgMjEzLCAyMTAsIDIyOCwgMjI0LCAxLCAxODgsIDIyOCwgMjI0LCAxLCAyMjgsIAotICAgIDIzLCAyMjgsIDIyNCwgMSwgMjA1LCAyMjgsIDIyNCwgMSwgMTU5LCAyMjgsIDIyNCwgMSwgMjE0LCA0OSwgMjI4LCAyMjQsIAotICAgIDEsIDE4NiwgMjI4LCAyMjQsIDEsIDIyOCwgMjQsIDIxMywgMjEwLCAyMjgsIDIyNCwgMSwgMjM1LCA2NCwgMjM1LCAxMzksIAotICAgIDIyOCwgMjI0LCAxLCAyMzUsIDY0LCAyNTAsIDkyLCAyMjgsIDIyNCwgMSwgMjM1LCA2NCwgMjAzLCAyMjgsIDIyNCwgMzcsIAotICAgIDIyMCwgMTc1LCAxMjQsIDIxNiwgMjQxLCAyMjgsIDIyNCwgMzcsIDIyMCwgMTc1LCAxMTUsIDIxNiwgMjQxLCAyMjgsIDIyNCwgCi0gICAgMzcsIDIyMCwgMTc1LCAyMjMsIDEyNSwgMjE2LCAyNDEsIDIyOCwgMjI0LCAzNywgMTg0LCAyNDcsIDI0NSwgMjE2LCAyNDEsIAotICAgIDIyOCwgMjI0LCAzNywgMTg0LCAxMjQsIDIxNiwgMjQxLCAyMjgsIDIyNCwgMzcsIDE4NCwgMTE1LCAyMTYsIDI0MSwgMjI4LCAKLSAgICAyMjQsIDM3LCAxODQsIDIyMywgMTI1LCAyMTYsIDI0MSwgMjI4LCAyMjQsIDM3LCAyMzAsIDEzLCA3NywgMjI4LCAyMjQsIAotICAgIDM3LCA1MSwgNjIsIDQ5LCAyMjgsIDIyNCwgMTI0LCAxNjAsIDI1MywgMjI2LCAyMjgsIDIyNCwgMTE1LCAxNjAsIDI1MywgCi0gICAgMjI2LCAyMjgsIDIyNCwgMTYsIDIyNywgNTAsIDI0OCwgMSwgMjI4LCAyMjQsIDE2LCAyNDMsIDU0LCAyMjgsIDIyNCwgMjQ5LCAKLSAgICAxNTcsIDIyOCwgMjI0LCAyNDQsIDI1NCwgNzcsIDIyOCwgMjI0LCAyMzMsIDEzMiwgMjIyLCAxNjcsIDEsIDI1NCwgODQsIAotICAgIDIyMiwgMTY3LCAxLCAyNTEsIDE1MSwgMjIyLCAxNjcsIDEsIDI0MywgODgsIDIyMiwgMTY3LCAxLCAyNDgsIDEzOSwgMjIyLCAKLSAgICAxNjcsIDEsIDIzNSwgMTUwLCAyMjIsIDE2NywgMSwgMjUyLCAxMDYsIDIyMiwgMTY3LCAxLCAyMTIsIDgyLCAyMjIsIDE2NywgCi0gICAgMSwgMjM1LCAxNTgsIDIyMiwgMTY3LCAxLCAyMTcsIDIwLCAyMjIsIDE2NywgMSwgMjEyLCAxNzMsIDIyMiwgMTY3LCAxLCAKLSAgICAyMzUsIDEzLCAyMjIsIDE2NywgMSwgMjMzLCAxNTAsIDIyMiwgMTY3LCAxLCAyMzEsIDMsIDIyMiwgMTY3LCAxLCAyMjgsIAotICAgIDUwLCAyMjIsIDE2NywgMSwgMjIwLCA4MiwgMjIyLCAxNjcsIDEsIDIzNSwgMjUxLCAyMjIsIDE2NywgMSwgMjQ0LCA5MCwgCi0gICAgMjIyLCAxNjcsIDEsIDIxNiwgMTM5LCAyMjIsIDE2NywgMSwgMjI0LCAxNTUsIDIyMiwgMTY3LCAxLCAyMjMsIDEyNiwgMjIyLCAKLSAgICAxNjcsIDEsIDIyMSwgOCwgMjIyLCAxNjcsIDEsIDIxOCwgNDgsIDIyMiwgMTY3LCAxNTIsIDIzNSwgMjUxLCAyMjIsIDE2NywgCi0gICAgMTUyLCAyMzUsIDI1MCwgMjIyLCAxNjcsIDE1MiwgMjI3LCAxMDcsIDIyMiwgMTY3LCAxNTIsIDI0OCwgMTUwLCAyMjIsIAotICAgIDE2NywgNTksIDEsIDI0NSwgNjgsIDIxMiwgMTczLCAyMjIsIDE2NywgMTUyLCAyNDUsIDY4LCAyMTIsIDE3MywgMjIyLCAKLSAgICAxNjcsIDMwLCA1LCAxODQsIDc0LCAyMjIsIDE2NywgMzAsIDUsIDc0LCAyMjIsIDE2NywgMzAsIDUsIDIyNiwgMjQyLCAyNTQsIAotICAgIDIzMiwgMjIyLCAxNjcsIDMwLCA1LCAxODQsIDI1NCwgMjMyLCAyMjIsIDE2NywgMzAsIDUsIDI1NCwgMjMyLCAyMjIsIDE2NywgCi0gICAgMzAsIDUsIDIyNiwgMjQyLCA2MSwgMjIyLCAxNjcsIDMwLCA1LCAxODQsIDYxLCAyMjIsIDE2NywgMzAsIDUsIDYxLCAyMjIsIAotICAgIDE2NywgNTksIDEsIDIyMCwgMTc1LCA2MSwgMjIyLCAxNjcsIDMwLCA1LCAyMjAsIDE3NSwgNjEsIDIyMiwgMTY3LCAzMCwgNSwgCi0gICAgMTg0LCA2OSwgMjIyLCAxNjcsIDMwLCA1LCA2OSwgMjIyLCAxNjcsIDU5LCAxLCA3MiwgMjIyLCAxNjcsIDMwLCA1LCAxODQsIAotICAgIDcyLCAyMjIsIDE2NywgMzAsIDUsIDcyLCAyMjIsIDE2NywgMzAsIDUsIDc1LCAyMjIsIDE2NywgMzAsIDUsIDIxOCwgMjQ2LCAKLSAgICAyMjIsIDE2NywgMTUyLCAyMjksIDE3NCwgMjIyLCAxNjcsIDIyNSwgMjcsIDIyOSwgMTc0LCAyMjIsIDE2NywgMjI1LCAyNywgCi0gICAgMjU0LCAxMjMsIDIyMiwgMTY3LCAyMjUsIDI3LCAyNTQsIDIzLCAyMjIsIDE2NywgMjI1LCAyNywgMjUyLCAzNCwgMjIyLCAKLSAgICAxNjcsIDIyNSwgMjcsIDI1MywgMTE3LCAyMjIsIDE2NywgMjI1LCAyNywgMjIwLCAxODgsIDIyMiwgMTY3LCAyNTQsIDE4MSwgCi0gICAgNzcsIDIyMiwgMTY3LCAyMjUsIDI3LCAyMzEsIDEzMiwgMjI0LCAxOTAsIDIyMiwgMTY3LCAyMjUsIDI3LCAyMTIsIDI0LCAKLSAgICAyMjIsIDE2NywgMjI1LCAyNywgMjI0LCAxOTAsIDIyMiwgMTY3LCAyMjUsIDI3LCAyMTIsIDEwNywgMjIyLCAxNjcsIDIyNSwgCi0gICAgMjcsIDIxNiwgNTQsIDIyMiwgMTY3LCAyMjUsIDI3LCAyNTMsIDE4MCwgMjIyLCAxNjcsIDIyNSwgMjcsIDIxOSwgMjM3LCAKLSAgICAyMzEsIDIwOCwgMjIyLCAxNjcsIDIyNSwgMjcsIDI1NCwgMTEsIDIzMSwgMjQ1LCAxLCAyNDIsIDcsIDIzMSwgMjQ1LCAxLCAKLSAgICAyNTQsIDE4NSwgMjMxLCAyNDUsIDEsIDI1NCwgMTIxLCAyMzEsIDI0NSwgMSwgMjU0LCAxNjAsIDIzMSwgMjQ1LCAxLCAyNTQsIAotICAgIDExNCwgMjMxLCAyNDUsIDEsIDIxNSwgOTgsIDIzMSwgMjQ1LCAxLCAyNTMsIDc2LCAyMzEsIDI0NSwgMSwgMjM1LCAxNTgsIAotICAgIDIzMSwgMjQ1LCAxLCAyNTMsIDExNCwgMjMxLCAyNDUsIDEsIDI1NCwgODksIDIzMSwgMjQ1LCAxLCAyNTQsIDk0LCAyMzEsIAotICAgIDI0NSwgMSwgMjU0LCA4NiwgMjMxLCAyNDUsIDEsIDI1NCwgNDUsIDIzMSwgMjQ1LCAxLCAyNTQsIDMyLCAyMzEsIDI0NSwgMSwgCi0gICAgMjUzLCAxNTIsIDIzMSwgMjQ1LCAxLCAyMzUsIDI1MSwgMjMxLCAyNDUsIDEsIDI1MywgMjM5LCAyMzEsIDI0NSwgMSwgMjUzLCAKLSAgICAxMjQsIDIzMSwgMjQ1LCAxLCAyNTMsIDIxNSwgMjMxLCAyNDUsIDEsIDI1MywgMjExLCAyMzEsIDI0NSwgMSwgMjUzLCAxNDYsIAotICAgIDIzMSwgMjQ1LCAxLCAyNTMsIDEyMiwgMjMxLCAyNDUsIDEsIDI0NiwgMTAsIDIzMSwgMjQ1LCAxLCAyMzUsIDYsIDIzMSwgCi0gICAgMjQ1LCAxLCAyNTQsIDEwMywgMjMxLCAyNDUsIDI1NCwgMTI3LCA3NywgMjMxLCAyNDUsIDIxNCwgMTE3LCA3NywgMjMxLCAKLSAgICAyNDUsIDI0MywgMjksIDc3LCAyMzEsIDI0NSwgMjI1LCAyNiwgODIsIDUsIDIzNSwgMTkxLCAyNTAsIDE4NywgODIsIDUsIAotICAgIDI1MCwgMTg3LCA4MiwgNSwgMjUzLCAyNDIsIDgyLCA1LCAyMTQsIDEyOCwgODIsIDEsIDIyMCwgMTc1LCA2MSwgODIsIDEsIAotICAgIDYxLCA4MiwgMSwgMjU0LCAyMzIsIDgyLCAxLCA3MiwgODIsIDEsIDIzNiwgMjgsIDgyLCAxLCA2OSwgODIsIDEsIDIxNSwgCi0gICAgOTIsIDgyLCAxLCAxNjEsIDE0OSwgODIsIDEsIDE2MSwgMTUwLCA4MiwgMSwgMjUwLCAxOTAsIDc0LCA4MiwgMSwgMjIwLCAKLSAgICAxNzUsIDc0LCA4MiwgMSwgNzQsIDgyLCAxLCAyNTQsIDEwOCwgODIsIDEsIDI1MCwgMTkwLCA3NSwgODIsIDEsIDIyMCwgCi0gICAgMTc1LCA3NSwgODIsIDEsIDc1LCA4MiwgMSwgMjUzLCAxMDgsIDgyLCAxLCAxODEsIDgyLCAxLCAyMzQsIDEzOCwgODIsIDEsIAotICAgIDI0MywgMTEwLCA4MiwgMSwgMjQyLCAyMjUsIDgyLCAxLCAyMjksIDE1OSwgODIsIDEsIDI1MCwgMjE5LCA4MiwgMSwgMjUwLCAKLSAgICA5MiwgODIsIDEsIDIzNSwgMTM5LCA4MiwgMSwgMjM1LCAxMTUsIDgyLCAxLCAyMjgsIDIzLCA4MiwgMSwgMjE2LCAxMTUsIAotICAgIDgyLCAxLCAyMTYsIDEwNSwgODIsIDEsIDI0OCwgODYsIDgyLCAxLCAyNDgsIDcwLCA4MiwgMSwgMjI4LCAxOTgsIDgyLCAxLCAKLSAgICAyMTgsIDUyLCA4MiwgMSwgMjE3LCAxNjEsIDgyLCAxLCAyNDgsIDE2NCwgODIsIDEsIDI0NywgMjMyLCA4MiwgMSwgMjA1LCAKLSAgICA4MiwgMSwgMjI4LCAxODksIDgyLCAxLCAxOTMsIDgyLCAxLCAyMjYsIDIzLCA4MiwgMSwgMjUyLCAxMDcsIDgyLCAxLCAyNTEsIAotICAgIDE5NSwgODIsIDEsIDE4OCwgODIsIDEsIDE4NiwgODIsIDEsIDIwMywgODIsIDEsIDIyMywgODEsIDgyLCAxLCAyMzMsIDE1NywgCi0gICAgODIsIDEsIDIzMiwgMjEzLCA4MiwgMSwgMjMyLCAyMTIsIDgyLCAxLCAyMTUsIDEsIDgyLCAxLCAyMjEsIDI0LCA4MiwgMSwgCi0gICAgMjE5LCAxNTcsIDgyLCAxLCAyMjIsIDIwMiwgODIsIDEsIDE1OSwgODIsIDMwLCA1LCAyMjcsIDk5LCA4MiwgMzAsIDUsIAotICAgIDIyNywgNDcsIDgyLCA1LCAyMjgsIDYwLCA4MiwgNSwgMjUzLCA5MSwgODIsIDMwLCA1LCAyNTQsIDIzMiwgODIsIDMwLCA1LCAKLSAgICA3MiwgODIsIDMwLCA1LCAyMzYsIDI4LCA4MiwgMzAsIDUsIDY5LCA4MiwgMzAsIDUsIDIxNSwgOTIsIDgyLCAzMCwgNSwgCi0gICAgMTYxLCAxNDksIDgyLCAzMCwgNSwgMTYxLCAyMjMsIDgyLCA4MiwgMzAsIDUsIDI1MCwgMTkwLCA3NCwgODIsIDMwLCA1LCAKLSAgICAyMjAsIDE3NSwgNzQsIDgyLCAzMCwgNSwgNzQsIDgyLCAzMCwgNSwgMjU0LCAxMDgsIDgyLCAzMCwgNSwgMjUwLCAxOTAsIAotICAgIDc1LCA4MiwgMzAsIDUsIDIyMCwgMTc1LCA3NSwgODIsIDMwLCA1LCA3NSwgODIsIDMwLCA1LCAyNTMsIDEwOCwgODIsIDUsIAotICAgIDIxNCwgMTMzLCA4MiwgMzAsIDUsIDIyNSwgNjYsIDc0LCA4MiwgMzAsIDUsIDI1MywgODcsIDgyLCAyMjcsIDcwLCA4MiwgCi0gICAgMjE5LCA1MSwgNSwgMjE1LCAxODUsIDgyLCAyMTksIDUxLCA1LCAyNTMsIDI0NCwgODIsIDI0MiwgMTE0LCAyNTQsIDE3NCwgCi0gICAgODIsIDI1NCwgMTY0LCAyNTQsIDE3NCwgODIsIDMwLCA1LCAyNTAsIDE5MCwgMTg0LCA3NCwgODIsIDMwLCA1LCAyMTUsIAotICAgIDE4MywgODIsIDMwLCA1LCAyMTUsIDkxLCA4MiwgMSwgMjI0LCAyMzIsIDgyLCAxLCAyMzQsIDEyMSwgODIsIDEsIDI0MiwgCi0gICAgMjAyLCA4MiwgMSwgMjEyLCAxMDksIDgyLCAxLCAyNDgsIDc1LCA4MiwgMSwgMjIzLCAxOTIsIDgyLCAxLCAyNDQsIDE2NCwgCi0gICAgODIsIDEsIDIxMiwgMTYwLCA4MiwgMSwgMTYxLCAyMjMsIDgyLCA4MiwgMSwgMTYxLCAyMzIsIDIxNCwgODIsIDMwLCA1LCAKLSAgICAxNjEsIDE1MCwgODIsIDMwLCA1LCAxNjEsIDIzMiwgMjE0LCA4MiwgMjQ4LCAxMjMsIDgyLCA1MSwgMjQ4LCAxMjMsIDgyLCAKLSAgICAyMSwgMjEyLCA3OSwgODIsIDIxLCAxMTYsIDgyLCAyMSwgMTA5LCA4MiwgMjEsIDE2NiwgODIsIDIxLCAxNjMsIDgyLCAyMSwgCi0gICAgMTgwLCA4MiwgMjEsIDE4OSwgODIsIDIxLCAxOTgsIDgyLCAyMSwgMTk1LCA4MiwgMjEsIDIwMCwgODIsIDI1NCwgMTgxLCAKLSAgICA1MiwgODIsIDUsIDEyNCwgMjE5LCAyMDUsIDI0NywgNzQsIDgyLCAxLCAyNTAsIDE5MCwgNjEsIDgyLCAxLCAyMjcsIDk5LCAKLSAgICA4MiwgMSwgMjI3LCA0NywgODIsIDEsIDI1MywgODcsIDgyLCAxLCAyMTUsIDE4MywgODIsIDEsIDIxNSwgOTEsIDgyLCAxLCAKLSAgICAyMTIsIDc1LCA4MiwgMSwgMTA3LCAxODYsIDgyLCAxLCAyNDMsIDUsIDgyLCAxLCAyMzUsIDk5LCA4MiwgMSwgMjQyLCAxNTYsIAotICAgIDIxOSwgNjksIDgyLCAxLCAyNDgsIDc2LCA4MiwgMSwgMjUyLCAzMSwgMTQwLCA1LCAyNTAsIDE4NywgMTQwLCA1LCAyNTMsIAotICAgIDI0MiwgMTQwLCA1LCAyMTQsIDEyOCwgMTQwLCAxLCA2MSwgMTQwLCAxLCAyNTQsIDIzMiwgMTQwLCAxLCA3MiwgMTQwLCAxLCAKLSAgICAyMzYsIDI4LCAxNDAsIDEsIDY5LCAxNDAsIDEsIDIxNSwgOTIsIDE0MCwgMSwgMTYxLCAxNDksIDE0MCwgMSwgMTYxLCAxNTAsIAotICAgIDE0MCwgMSwgNzQsIDE0MCwgMSwgMjU0LCAxMDgsIDE0MCwgMSwgNzUsIDE0MCwgMSwgMjUzLCAxMDgsIDE0MCwgMSwgMTgxLCAKLSAgICAxNDAsIDEsIDIzNCwgMTM4LCAxNDAsIDEsIDI0MywgMTEwLCAxNDAsIDEsIDI0MiwgMjI1LCAxNDAsIDEsIDIyOSwgMTU5LCAKLSAgICAxNDAsIDEsIDI1MCwgMjE5LCAxNDAsIDEsIDI1MCwgOTIsIDE0MCwgMSwgMjM1LCAxMzksIDE0MCwgMSwgMjM1LCAxMTUsIAotICAgIDE0MCwgMSwgMjI4LCAyMywgMTQwLCAxLCAyMTYsIDExNSwgMTQwLCAxLCAyMTYsIDEwNSwgMTQwLCAxLCAyNDgsIDg2LCAKLSAgICAxNDAsIDEsIDI0OCwgNzAsIDE0MCwgMSwgMjI4LCAxOTgsIDE0MCwgMSwgMjE4LCA1MiwgMTQwLCAxLCAyMTcsIDE2MSwgCi0gICAgMTQwLCAxLCAyNDgsIDE2NCwgMTQwLCAxLCAyNDcsIDIzMiwgMTQwLCAxLCAyMDUsIDE0MCwgMSwgMTkzLCAxNDAsIDEsIAotICAgIDIyNiwgMjMsIDE0MCwgMSwgMjUyLCAxMDcsIDE0MCwgMSwgMjUxLCAxOTUsIDE0MCwgMSwgMTg4LCAxNDAsIDEsIDE4NiwgCi0gICAgMTQwLCAxLCAyMDMsIDE0MCwgMSwgMjMzLCAxNTcsIDE0MCwgMSwgMjIxLCAyNCwgMTQwLCAxLCAyMTksIDE1NywgMTQwLCAxLCAKLSAgICAyMjIsIDIwMiwgMTQwLCAxLCAxNTksIDE0MCwgNSwgMjI4LCA2MCwgMTQwLCA1LCAyNTMsIDkxLCAxNDAsIDMwLCA1LCAyNTQsIAotICAgIDIzMiwgMTQwLCAzMCwgNSwgNzIsIDE0MCwgMzAsIDUsIDIzNiwgMjgsIDE0MCwgMzAsIDUsIDY5LCAxNDAsIDMwLCA1LCAKLSAgICAyMTUsIDkyLCAxNDAsIDMwLCA1LCAxNjEsIDE0OSwgMTQwLCAzMCwgNSwgMTYxLCAyMjMsIDgyLCAxNDAsIDMwLCA1LCA3NCwgCi0gICAgMTQwLCAzMCwgNSwgMjU0LCAxMDgsIDE0MCwgMzAsIDUsIDc1LCAxNDAsIDMwLCA1LCAyNTMsIDEwOCwgMTQwLCA1LCAyMTQsIAotICAgIDEzMywgMTQwLCAxLCAyMzQsIDEzMCwgMjE4LCA1MiwgMTQwLCAyNTMsIDEwOSwgMjMzLCA0NywgNzcsIDE0MCwgMSwgMjIzLCAKLSAgICA4MSwgMTQwLCAxLCAyMjMsIDE5MiwgMTQwLCAxLCAyMTIsIDE2MCwgMTQwLCAxLCAxNjEsIDIyMywgODIsIDE0MCwgMSwgCi0gICAgMTYxLCAyMzIsIDIxNCwgMTQwLCAzMCwgNSwgMTYxLCAxNTAsIDE0MCwgMzAsIDUsIDE2MSwgMjMyLCAyMTQsIDE0MCwgMjEsIAotICAgIDIxMiwgNzksIDE0MCwgMjEsIDExNiwgMTQwLCAyMSwgMTA5LCAxNDAsIDIxLCAxNjYsIDE0MCwgMjEsIDE2MywgMTQwLCAyMSwgCi0gICAgMTgwLCAxNDAsIDIxLCAxODksIDE0MCwgMjEsIDE5OCwgMTQwLCAyMSwgMTk1LCAxNDAsIDIxLCAyMDAsIDE0MCwgMSwgMjI0LCAKLSAgICA3NywgMiwgMjMxLCAzNywgMjQ3LCAyMDYsIDE0MCwgMSwgMjI0LCA3NywgMiwgMjMyLCAxNjMsIDI0NywgMjA2LCAxNDAsIAotICAgIDIyMywgMjksIDc3LCAxNDAsIDIyMywgMjksIDUyLCAxNDAsIDI0OSwgMzksIDIyOCwgNTMsIDExNiwgMTQwLCAyNDksIDM5LCAKLSAgICAyMjgsIDUzLCAxMDksIDE0MCwgMjQ5LCAzOSwgMjI4LCA1MywgMTY2LCAxNDAsIDI0OSwgMzksIDIyOCwgNTMsIDE2MywgCi0gICAgMTQwLCAyNDksIDM5LCAyMjgsIDUzLCAxMjIsIDIzMywgNDAsIDIxNywgMTU0LCAyMTcsIDE0OSwgMjQ3LCAyNTUsIDE0MCwgCi0gICAgMjQ5LCAzOSwgMjQ4LCAwLCAyMjAsIDQ3LCAxNDAsIDIzNSwgMTU5LCAxNDAsIDI0MywgNzksIDc3LCAxNzMsIDUsIDI1NCwgCi0gICAgMTU5LCAyNTEsIDE2NiwgMTczLCA1LCAyNTEsIDE2NiwgMTczLCA1LCAyMTQsIDEyOCwgMTczLCAxLCA2MSwgMTczLCAxLCAKLSAgICAyNTQsIDIzMiwgMTczLCAxLCA3MiwgMTczLCAxLCAyMzYsIDI4LCAxNzMsIDEsIDY5LCAxNzMsIDEsIDIxNSwgOTIsIDE3MywgCi0gICAgMSwgMjQ1LCAxNjUsIDE3MywgMSwgMjU0LCAxMDgsIDE3MywgMSwgMjI3LCA0OSwgMTczLCAxLCAyNTMsIDEwOCwgMTczLCAxLCAKLSAgICAxODEsIDE3MywgMSwgMjM0LCAxMzgsIDE3MywgMSwgMjQzLCAxMTAsIDE3MywgMSwgMjQyLCAyMjUsIDE3MywgMSwgMjI5LCAKLSAgICAxNTksIDE3MywgMSwgMjUwLCAyMTksIDE3MywgMSwgMjUwLCA5MiwgMTczLCAxLCAyMzUsIDEzOSwgMTczLCAxLCAyMzUsIAotICAgIDExNSwgMTczLCAxLCAyMjgsIDIzLCAxNzMsIDEsIDIxNiwgMTE1LCAxNzMsIDEsIDIxNiwgMTA1LCAxNzMsIDEsIDI0OCwgCi0gICAgODYsIDE3MywgMSwgMjQ4LCA3MCwgMTczLCAxLCAyMjgsIDE5OCwgMTczLCAxLCAyMTgsIDUyLCAxNzMsIDEsIDIxNywgMTYxLCAKLSAgICAxNzMsIDEsIDI0OCwgMTY0LCAxNzMsIDEsIDI0NywgMjMyLCAxNzMsIDEsIDIwNSwgMTczLCAxLCAxOTMsIDE3MywgMSwgCi0gICAgMjI2LCAyMywgMTczLCAxLCAyNTIsIDEwNywgMTczLCAxLCAyNTEsIDE5NSwgMTczLCAxLCAxODgsIDE3MywgMSwgMTg2LCAKLSAgICAxNzMsIDEsIDIwMywgMTczLCAxLCAyMzMsIDE1NywgMTczLCAxLCAyMzIsIDIxMywgMTczLCAxLCAyMTUsIDEsIDE3MywgMSwgCi0gICAgMjIxLCAyNCwgMTczLCAxLCAyMjIsIDIwMiwgMTczLCAxLCAxNTksIDE3MywgNSwgMjI4LCA2MCwgMTczLCAzMCwgNSwgMjU0LCAKLSAgICAyMzIsIDE3MywgMzAsIDUsIDcyLCAxNzMsIDMwLCA1LCAyMzYsIDI4LCAxNzMsIDMwLCA1LCA2OSwgMTczLCAzMCwgNSwgCi0gICAgMjE1LCA5MiwgMTczLCAzMCwgNSwgMjQ1LCAxNjUsIDE3MywgMzAsIDUsIDI1NCwgMTA4LCAxNzMsIDMwLCA1LCAyMjcsIDQ5LCAKLSAgICAxNzMsIDMwLCA1LCAyNTMsIDEwOCwgMTczLCA1LCAyMTQsIDEzMywgMTczLCA1LCAyMTUsIDE4NywgMTczLCAxLCAyMzQsIAotICAgIDEyMSwgMTczLCAxLCAyNDIsIDIwMiwgMTczLCAxLCAyMTIsIDEwOSwgMTczLCAxLCAyMjMsIDgxLCAxNzMsIDEsIDI0NCwgCi0gICAgMTY0LCAxNzMsIDIxLCAyMTIsIDc5LCAxNzMsIDIxLCAxMTYsIDE3MywgMjEsIDEwOSwgMTczLCAyMSwgMTY2LCAxNzMsIDIxLCAKLSAgICAxNjMsIDE3MywgMjEsIDE4MCwgMTczLCAyMSwgMTg5LCAxNzMsIDIxLCAxOTgsIDE3MywgMjEsIDE5NSwgMTczLCAyMSwgCi0gICAgMjAwLCAxNzMsIDIxNywgMjcsIDE3MywgMjU0LCAxNTgsIDE3MywgMjM1LCAxNzYsIDE3MywgMjE1LCAxMTcsIDE3MywgMjQ1LCAKLSAgICAxMzgsIDIyNywgNTQsIDE3MywgNSwgMjEzLCA2NywgMTY0LCA1LCAyNTAsIDE4NywgMTY0LCA1LCAyNTMsIDI0MiwgMTY0LCAKLSAgICA1LCAyMTQsIDEyOCwgMTY0LCAxLCA2MSwgMTY0LCAxLCAyNTQsIDIzMiwgMTY0LCAxLCA3MiwgMTY0LCAxLCAyMzYsIDI4LCAKLSAgICAxNjQsIDEsIDY5LCAxNjQsIDEsIDIxNSwgOTIsIDE2NCwgMSwgMTYxLCAxNDksIDE2NCwgMSwgMTYxLCAxNTAsIDE2NCwgMzAsIAotICAgIDI1MCwgMTkwLCA3NCwgMTY0LCAxLCA3NCwgMTY0LCAxLCAyNTQsIDEwOCwgMTY0LCAzMCwgMjUwLCAxOTAsIDc1LCAxNjQsIAotICAgIDEsIDc1LCAxNjQsIDEsIDI1MywgMTA4LCAxNjQsIDEsIDE4MSwgMTY0LCAxLCAyMzQsIDEzOCwgMTY0LCAxLCAyNDMsIDExMCwgCi0gICAgMTY0LCAxLCAyNDIsIDIyNSwgMTY0LCAxLCAyMjksIDE1OSwgMTY0LCAxLCAyNTAsIDIxOSwgMTY0LCAxLCAyNTAsIDkyLCAKLSAgICAxNjQsIDEsIDIzNSwgMTM5LCAxNjQsIDEsIDIzNSwgMTE1LCAxNjQsIDEsIDIyOCwgMjMsIDE2NCwgMSwgMjE2LCAxMTUsIAotICAgIDE2NCwgMSwgMjE2LCAxMDUsIDE2NCwgMSwgMjQ4LCA4NiwgMTY0LCAxLCAyNDgsIDcwLCAxNjQsIDEsIDIyOCwgMTk4LCAKLSAgICAxNjQsIDEsIDIxOCwgNTIsIDE2NCwgMSwgMjE3LCAxNjEsIDE2NCwgMSwgMjQ4LCAxNjQsIDE2NCwgMSwgMjQ3LCAyMzIsIAotICAgIDE2NCwgMSwgMjA1LCAxNjQsIDEsIDE5MywgMTY0LCAxLCAyMjYsIDIzLCAxNjQsIDEsIDI1MiwgMTA3LCAxNjQsIDEsIDI1MSwgCi0gICAgMTk1LCAxNjQsIDEsIDE4OCwgMTY0LCAxLCAxODYsIDE2NCwgMSwgMjAzLCAxNjQsIDEsIDIzMywgMTU3LCAxNjQsIDEsIAotICAgIDIzMiwgMjEzLCAxNjQsIDEsIDIxNSwgMSwgMTY0LCAxLCAyMjEsIDI0LCAxNjQsIDEsIDIxOSwgMTU3LCAxNjQsIDEsIDIyMiwgCi0gICAgMjAyLCAxNjQsIDEsIDE1OSwgMTY0LCA1LCAyMjgsIDYwLCAxNjQsIDUsIDI1MywgOTEsIDE2NCwgMzAsIDUsIDI1NCwgMjMyLCAKLSAgICAxNjQsIDMwLCA1LCA3MiwgMTY0LCAzMCwgNSwgMjM2LCAyOCwgMTY0LCAzMCwgNSwgNjksIDE2NCwgMzAsIDUsIDIxNSwgOTIsIAotICAgIDE2NCwgMzAsIDUsIDE2MSwgMTQ5LCAxNjQsIDMwLCA1LCAxNjEsIDIyMywgODIsIDE2NCwgMzAsIDUsIDI1MCwgMTkwLCA3NCwgCi0gICAgMTY0LCAzMCwgNSwgNzQsIDE2NCwgMzAsIDUsIDI1NCwgMTA4LCAxNjQsIDMwLCA1LCAyNTAsIDE5MCwgNzUsIDE2NCwgMzAsIAotICAgIDUsIDc1LCAxNjQsIDMwLCA1LCAyNTMsIDEwOCwgMTY0LCA1LCAyMTQsIDEzMywgMTY0LCAyMjcsIDcwLCAxNjQsIDEsIDE2MSwgCi0gICAgMjIzLCA4MiwgMTY0LCAxLCAxNjEsIDIzMiwgMjE0LCAxNjQsIDMwLCA1LCAxNjEsIDE1MCwgMTY0LCAzMCwgNSwgMTYxLCAKLSAgICAyMzIsIDIxNCwgMTY0LCAyMSwgMjEyLCA3OSwgMTY0LCAyMSwgMTE2LCAxNjQsIDIxLCAxMDksIDE2NCwgMjEsIDE2NiwgCi0gICAgMTY0LCAyMSwgMTYzLCAxNjQsIDIxLCAxODAsIDE2NCwgMjEsIDE4OSwgMTY0LCAyMSwgMTk4LCAxNjQsIDIxLCAxOTUsIAotICAgIDE2NCwgMjEsIDIwMCwgMTY0LCAyMjMsIDI5LCA1MiwgMTQ3LCA1LCAyNTAsIDE4NywgMTQ3LCA1LCAyNTMsIDI0MiwgMTQ3LCAKLSAgICA1LCAyMTQsIDEyOCwgMTQ3LCAxLCA2MSwgMTQ3LCAxLCAyNTQsIDIzMiwgMTQ3LCAxLCA3MiwgMTQ3LCAxLCAyMzYsIDI4LCAKLSAgICAxNDcsIDEsIDY5LCAxNDcsIDEsIDIxNSwgOTIsIDE0NywgMSwgMTYxLCAxNDksIDE0NywgMSwgMTYxLCAxNTAsIDE0NywgMSwgCi0gICAgNzQsIDE0NywgMSwgMjU0LCAxMDgsIDE0NywgMSwgNzUsIDE0NywgMSwgMjUzLCAxMDgsIDE0NywgMSwgMTgxLCAxNDcsIDEsIAotICAgIDIzNCwgMTM4LCAxNDcsIDEsIDI0MywgMTEwLCAxNDcsIDEsIDI0MiwgMjI1LCAxNDcsIDEsIDIyOSwgMTU5LCAxNDcsIDEsIAotICAgIDI1MCwgMjE5LCAxNDcsIDEsIDI1MCwgOTIsIDE0NywgMSwgMjM1LCAxMzksIDE0NywgMSwgMjM1LCAxMTUsIDE0NywgMSwgCi0gICAgMjI4LCAyMywgMTQ3LCAxLCAyMTYsIDExNSwgMTQ3LCAxLCAyMTYsIDEwNSwgMTQ3LCAxLCAyNDgsIDg2LCAxNDcsIDEsIAotICAgIDI0OCwgNzAsIDE0NywgMSwgMjI4LCAxOTgsIDE0NywgMSwgMjE4LCA1MiwgMTQ3LCAxLCAyMTcsIDE2MSwgMTQ3LCAxLCAKLSAgICAyNDgsIDE2NCwgMTQ3LCAxLCAyNDcsIDIzMiwgMTQ3LCAxLCAyMDUsIDE0NywgMSwgMTkzLCAxNDcsIDEsIDIyNiwgMjMsIAotICAgIDE0NywgMSwgMjUyLCAxMDcsIDE0NywgMSwgMjUxLCAxOTUsIDE0NywgMSwgMTg4LCAxNDcsIDEsIDE4NiwgMTQ3LCAxLCAKLSAgICAyMDMsIDE0NywgMSwgMjMzLCAxNTcsIDE0NywgMSwgMjMyLCAyMTMsIDE0NywgMSwgMjE1LCAxLCAxNDcsIDEsIDIyMSwgMjQsIAotICAgIDE0NywgMSwgMjE5LCAxNTcsIDE0NywgMSwgMjIyLCAyMDIsIDE0NywgMSwgMTU5LCAxNDcsIDUsIDIyOCwgNjAsIDE0NywgNSwgCi0gICAgMjUzLCA5MSwgMTQ3LCAzMCwgNSwgMjU0LCAyMzIsIDE0NywgMzAsIDUsIDcyLCAxNDcsIDMwLCA1LCAyMzYsIDI4LCAxNDcsIAotICAgIDMwLCA1LCA2OSwgMTQ3LCAzMCwgNSwgMjE1LCA5MiwgMTQ3LCAzMCwgNSwgMTYxLCAxNDksIDE0NywgMzAsIDUsIDE2MSwgCi0gICAgMjIzLCA4MiwgMTQ3LCAzMCwgNSwgNzQsIDE0NywgMzAsIDUsIDI1NCwgMTA4LCAxNDcsIDMwLCA1LCA3NSwgMTQ3LCAzMCwgCi0gICAgNSwgMjUzLCAxMDgsIDE0NywgNSwgMjE0LCAxMzMsIDE0NywgMjU0LCAxMDksIDIzMywgNDcsIDc3LCAxNDcsIDI1MywgMTA5LCAKLSAgICAyMzMsIDQ3LCA3NywgMTQ3LCAxLCAyMjMsIDgxLCAxNDcsIDEsIDIyMywgMTkyLCAxNDcsIDEsIDIxMiwgMTYwLCAxNDcsIDEsIAotICAgIDE2MSwgMjIzLCA4MiwgMTQ3LCAxLCAxNjEsIDIzMiwgMjE0LCAxNDcsIDMwLCA1LCAxNjEsIDE1MCwgMTQ3LCAzMCwgNSwgCi0gICAgMTYxLCAyMzIsIDIxNCwgMTQ3LCAyMSwgMjEyLCA3OSwgMTQ3LCAyMSwgMTE2LCAxNDcsIDIxLCAxMDksIDE0NywgMjEsIAotICAgIDE2NiwgMTQ3LCAyMSwgMTYzLCAxNDcsIDIxLCAxODAsIDE0NywgMjEsIDE4OSwgMTQ3LCAyMSwgMTk4LCAxNDcsIDIxLCAKLSAgICAxOTUsIDE0NywgMjEsIDIwMCwgMTQ3LCAyMzUsIDE1OSwgMTQ3LCAxLCAyMTQsIDQ5LCAxNDcsIDI0MywgMjI4LCAxMjIsIAotICAgIDIyNCwgMTY2LCAxNDcsIDI0MywgMjI4LCAxMjIsIDI0MiwgOSwgMTQ3LCAyNDMsIDIyOCwgMTMzLCAyMjQsIDE2NCwgMTQ3LCAKLSAgICAyNDMsIDIyOCwgMTIyLCAyMjAsIDQ1LCAxNDcsIDI0MywgMjI4LCAxMjIsIDI0NSwgMTQ1LCAxNDcsIDI0MywgMjI4LCAxMzMsIAotICAgIDIyMCwgNDQsIDE3OCwgNSwgMjUzLCAyNDIsIDE3OCwgNSwgMjE0LCAxMjgsIDE3OCwgMSwgNjEsIDE3OCwgMSwgMjU0LCAKLSAgICAyMzIsIDE3OCwgMSwgNzIsIDE3OCwgMSwgMjM2LCAyOCwgMTc4LCAxLCA2OSwgMTc4LCAxLCAyMTUsIDkyLCAxNzgsIDEsIAotICAgIDc0LCAxNzgsIDEsIDI0NSwgMTY1LCAxNzgsIDEsIDI1NCwgMTA4LCAxNzgsIDEsIDc1LCAxNzgsIDEsIDIyNywgNDksIDE3OCwgCi0gICAgMSwgMjUzLCAxMDgsIDE3OCwgMSwgMTgxLCAxNzgsIDEsIDIyOSwgMTU5LCAxNzgsIDEsIDI1MCwgMjE5LCAxNzgsIDEsIAotICAgIDIzNSwgMTM5LCAxNzgsIDEsIDIyOCwgMjMsIDE3OCwgMSwgMjE2LCAxMTUsIDE3OCwgMSwgMjI4LCAxOTgsIDE3OCwgMSwgCi0gICAgMjE4LCA1MiwgMTc4LCAxLCAyMDUsIDE3OCwgMSwgMjI4LCAxODksIDE3OCwgMSwgMTkzLCAxNzgsIDEsIDE4OCwgMTc4LCAxLCAKLSAgICAxODYsIDE3OCwgMSwgMjAzLCAxNzgsIDEsIDIyMywgODEsIDE3OCwgMSwgMjMzLCAxNTcsIDE3OCwgMSwgMjMyLCAyMTMsIAotICAgIDE3OCwgMSwgMjMyLCAyMTIsIDE3OCwgMSwgMjE1LCAxLCAxNzgsIDEsIDIyMSwgMjQsIDE3OCwgMSwgMjE5LCAxNTcsIDE3OCwgCi0gICAgMSwgMjIyLCAyMDIsIDE3OCwgMSwgMTU5LCAxNzgsIDMwLCA1LCAyNTQsIDIzMiwgMTc4LCAzMCwgNSwgNzIsIDE3OCwgMzAsIAotICAgIDUsIDIzNiwgMjgsIDE3OCwgMzAsIDUsIDY5LCAxNzgsIDMwLCA1LCAyMTUsIDkyLCAxNzgsIDMwLCA1LCA3NCwgMTc4LCAzMCwgCi0gICAgNSwgMjQ1LCAxNjUsIDE3OCwgMzAsIDUsIDI1NCwgMTA4LCAxNzgsIDMwLCA1LCA3NSwgMTc4LCAzMCwgNSwgMjI3LCA0OSwgCi0gICAgMTc4LCAzMCwgNSwgMjUzLCAxMDgsIDE3OCwgNSwgMjE0LCAxMzMsIDE3OCwgMjI3LCA3MCwgMTc4LCAyNTMsIDEwOSwgMjMzLCAKLSAgICA0NywgNzcsIDE3OCwgMjEsIDIxMiwgNzksIDE3OCwgMjEsIDExNiwgMTc4LCAyMSwgMTA5LCAxNzgsIDIxLCAxNjYsIDE3OCwgCi0gICAgMjEsIDE2MywgMTc4LCAyMSwgMTgwLCAxNzgsIDIxLCAxODksIDE3OCwgMjEsIDE5OCwgMTc4LCAyMSwgMTk1LCAxNzgsIDIxLCAKLSAgICAyMDAsIDE3OCwgNTAsIDIxNywgMjAwLCAxNzgsIDUwLCAxMjIsIDI0MCwgMjAwLCAxNzgsIDUwLCAxMjIsIDIxNywgMTAwLCAKLSAgICAxNzgsIDI0OCwgOTIsIDUyLCAxNzgsIDIzMCwgMjA1LCA1MiwgMTc4LCAyMTMsIDM2LCA1MiwgMTc4LCAyNDgsIDM4LCA1MiwgCi0gICAgMTc4LCAyNDksIDc5LCA1MiwgMTc4LCAyNTMsIDE1MywgNzgsIDUyLCAxNzgsIDIyMywgMjksIDUyLCAxNzgsIDUwLCA1MiwgCi0gICAgMTM5LCA1LCAyNTAsIDE4NywgMTM5LCA1LCAyNTMsIDI0MiwgMTM5LCA1LCAyMTQsIDEyOCwgMTM5LCAxLCA2MSwgMTM5LCAxLCAKLSAgICAyNTQsIDIzMiwgMTM5LCAxLCA3MiwgMTM5LCAxLCAyMzYsIDI4LCAxMzksIDEsIDY5LCAxMzksIDEsIDIxNSwgOTIsIDEzOSwgCi0gICAgMSwgMTYxLCAxNDksIDEzOSwgMSwgMTYxLCAxNTAsIDEzOSwgMSwgNzQsIDEzOSwgMSwgMjQ1LCAxNjUsIDEzOSwgMSwgMjU0LCAKLSAgICAxMDgsIDEzOSwgMSwgNzUsIDEzOSwgMSwgMjI3LCA0OSwgMTM5LCAxLCAyNTMsIDEwOCwgMTM5LCAxLCAxODEsIDEzOSwgMSwgCi0gICAgMjM0LCAxMzgsIDEzOSwgMSwgMjQzLCAxMTAsIDEzOSwgMSwgMjQyLCAyMjUsIDEzOSwgMSwgMjI5LCAxNTksIDEzOSwgMSwgCi0gICAgMjUwLCAyMTksIDEzOSwgMSwgMjUwLCA5MiwgMTM5LCAxLCAyMzUsIDEzOSwgMTM5LCAxLCAyMzUsIDExNSwgMTM5LCAxLCAKLSAgICAyMjgsIDIzLCAxMzksIDEsIDIxNiwgMTE1LCAxMzksIDEsIDIxNiwgMTA1LCAxMzksIDEsIDI0OCwgODYsIDEzOSwgMSwgCi0gICAgMjQ4LCA3MCwgMTM5LCAxLCAyMjgsIDE5OCwgMTM5LCAxLCAyMTgsIDUyLCAxMzksIDEsIDIxNywgMTYxLCAxMzksIDEsIAotICAgIDI0OCwgMTY0LCAxMzksIDEsIDI0NywgMjMyLCAxMzksIDEsIDIwNSwgMTM5LCAxLCAxOTMsIDEzOSwgMSwgMjI2LCAyMywgCi0gICAgMTM5LCAxLCAyNTIsIDEwNywgMTM5LCAxLCAyNTEsIDE5NSwgMTM5LCAxLCAxODgsIDEzOSwgMSwgMTg2LCAxMzksIDEsIAotICAgIDIwMywgMTM5LCAxLCAyMjMsIDgxLCAxMzksIDEsIDIzMywgMTU3LCAxMzksIDEsIDIzMiwgMjEzLCAxMzksIDEsIDIxNSwgMSwgCi0gICAgMTM5LCAxLCAyMjEsIDI0LCAxMzksIDEsIDIxOSwgMTU3LCAxMzksIDEsIDIyMiwgMjAyLCAxMzksIDEsIDE1OSwgMTM5LCA1LCAKLSAgICAyNTMsIDkxLCAxMzksIDMwLCA1LCAyNTQsIDIzMiwgMTM5LCAzMCwgNSwgNzIsIDEzOSwgMzAsIDUsIDIzNiwgMjgsIDEzOSwgCi0gICAgMzAsIDUsIDY5LCAxMzksIDMwLCA1LCAyMTUsIDkyLCAxMzksIDMwLCA1LCAxNjEsIDE0OSwgMTM5LCAzMCwgNSwgMTYxLCAKLSAgICAyMjMsIDgyLCAxMzksIDMwLCA1LCA3NCwgMTM5LCAzMCwgNSwgMjQ1LCAxNjUsIDEzOSwgMzAsIDUsIDI1NCwgMTA4LCAxMzksIAotICAgIDMwLCA1LCA3NSwgMTM5LCAzMCwgNSwgMjI3LCA0OSwgMTM5LCAzMCwgNSwgMjUzLCAxMDgsIDEzOSwgNSwgMjE0LCAxMzMsIAotICAgIDEzOSwgMjMzLCA0NywgNzcsIDEzOSwgMjU0LCAxMDksIDIzMywgNDcsIDc3LCAxMzksIDEsIDIxNiwgMTQxLCAxMzksIDEsIAotICAgIDI0NSwgMjQ5LCAxMzksIDEsIDE2MSwgMjIzLCA4MiwgMTM5LCAxLCAxNjEsIDIzMiwgMjE0LCAxMzksIDMwLCA1LCAxNjEsIAotICAgIDE1MCwgMTM5LCAzMCwgNSwgMTYxLCAyMzIsIDIxNCwgMTM5LCAyMSwgMjEyLCA3OSwgMTM5LCAyMSwgMTE2LCAxMzksIDIxLCAKLSAgICAxMDksIDEzOSwgMjEsIDE2NiwgMTM5LCAyMSwgMTYzLCAxMzksIDIxLCAxODAsIDEzOSwgMjEsIDE4OSwgMTM5LCAyMSwgCi0gICAgMTk4LCAxMzksIDIxLCAxOTUsIDEzOSwgMjEsIDIwMCwgMTM5LCAyNDMsIDIyOCwgMjEsIDIxMiwgODAsIDMxLCAyMjcsIAotICAgIDEwMiwgMjI1LCAxMDMsIDY1LCAxNjMsIDEzOSwgMjQzLCAyMjgsIDIxLCAxMjIsIDMxLCAyMjcsIDEwMiwgMjI1LCAxMDMsIAotICAgIDY1LCAxNjMsIDEzOSwgMjQzLCAyMjgsIDIxLCAxMTcsIDMxLCAyMjcsIDEwMiwgMjI1LCAxMDMsIDY1LCAxNjMsIDEzOSwgCi0gICAgMjQzLCAyMjgsIDIxLCAxMzMsIDMxLCAyMjcsIDEwMiwgMjI1LCAxMDMsIDY1LCAxNjMsIDEzOSwgMjQzLCAyMjgsIDIxLCAKLSAgICAxMjIsIDMxLCAyNDUsIDksIDIyNSwgMTAzLCA2NSwgMTYzLCAxMzksIDI0MywgMjI4LCAyMSwgMTE3LCAzMSwgMjQ1LCA5LCAKLSAgICAyMjUsIDEwMywgNjUsIDE2MywgMTM5LCAyNDMsIDIyOCwgMjEsIDEzMywgMzEsIDI0NSwgOSwgMjI1LCAxMDMsIDY1LCAxNjMsIAotICAgIDEzOSwgNSwgMjE2LCA0OSwgMTU1LCA1LCAyNTMsIDI0MiwgMTU1LCA1LCAyMTQsIDEyOCwgMTU1LCAxLCA2MSwgMTU1LCAxLCAKLSAgICAyNTQsIDIzMiwgMTU1LCAxLCA3MiwgMTU1LCAxLCAyMzYsIDI4LCAxNTUsIDEsIDY5LCAxNTUsIDEsIDIxNSwgOTIsIDE1NSwgCi0gICAgMSwgMTYxLCAxNDksIDE1NSwgMSwgMTYxLCAxNTAsIDE1NSwgMSwgNzQsIDE1NSwgMSwgMjQ1LCAxNjUsIDE1NSwgMSwgMjU0LCAKLSAgICAxMDgsIDE1NSwgMSwgNzUsIDE1NSwgMSwgMjI3LCA0OSwgMTU1LCAxLCAyNTMsIDEwOCwgMTU1LCAxLCAxODEsIDE1NSwgMSwgCi0gICAgMjM0LCAxMzgsIDE1NSwgMSwgMjQzLCAxMTAsIDE1NSwgMSwgMjQyLCAyMjUsIDE1NSwgMSwgMjI5LCAxNTksIDE1NSwgMSwgCi0gICAgMjUwLCAyMTksIDE1NSwgMSwgMjUwLCA5MiwgMTU1LCAxLCAyMzUsIDEzOSwgMTU1LCAxLCAyMzUsIDExNSwgMTU1LCAxLCAKLSAgICAyMjgsIDIzLCAxNTUsIDEsIDIxNiwgMTE1LCAxNTUsIDEsIDIxNiwgMTA1LCAxNTUsIDEsIDI0OCwgODYsIDE1NSwgMSwgCi0gICAgMjQ4LCA3MCwgMTU1LCAxLCAyMjgsIDE5OCwgMTU1LCAxLCAyMTgsIDUyLCAxNTUsIDEsIDIxNywgMTYxLCAxNTUsIDEsIAotICAgIDI0OCwgMTY0LCAxNTUsIDEsIDI0NywgMjMyLCAxNTUsIDEsIDIwNSwgMTU1LCAxLCAxOTMsIDE1NSwgMSwgMjI2LCAyMywgCi0gICAgMTU1LCAxLCAyNTIsIDEwNywgMTU1LCAxLCAyNTEsIDE5NSwgMTU1LCAxLCAxODgsIDE1NSwgMSwgMTg2LCAxNTUsIDEsIAotICAgIDIwMywgMTU1LCAxLCAyMjMsIDgxLCAxNTUsIDEsIDIzMywgMTU3LCAxNTUsIDEsIDIzMiwgMjEzLCAxNTUsIDEsIDIxNSwgMSwgCi0gICAgMTU1LCAxLCAyMjEsIDI0LCAxNTUsIDEsIDIxOSwgMTU3LCAxNTUsIDEsIDIyMiwgMjAyLCAxNTUsIDEsIDE1OSwgMTU1LCA1LCAKLSAgICAyMjgsIDYwLCAxNTUsIDUsIDI1MywgOTEsIDE1NSwgMzAsIDUsIDI1NCwgMjMyLCAxNTUsIDMwLCA1LCA3MiwgMTU1LCAzMCwgCi0gICAgNSwgMjM2LCAyOCwgMTU1LCAzMCwgNSwgNjksIDE1NSwgMzAsIDUsIDIxNSwgOTIsIDE1NSwgMzAsIDUsIDE2MSwgMTQ5LCAKLSAgICAxNTUsIDMwLCA1LCAxNjEsIDIyMywgODIsIDE1NSwgMzAsIDUsIDc0LCAxNTUsIDMwLCA1LCAyNDUsIDE2NSwgMTU1LCAzMCwgCi0gICAgNSwgMjU0LCAxMDgsIDE1NSwgMzAsIDUsIDc1LCAxNTUsIDMwLCA1LCAyMjcsIDQ5LCAxNTUsIDMwLCA1LCAyNTMsIDEwOCwgCi0gICAgMTU1LCA1LCAyMTQsIDEzMywgMTU1LCAyMzMsIDQ3LCA3NywgMTU1LCAyNTQsIDEwOSwgMjMzLCA0NywgNzcsIDE1NSwgMSwgCi0gICAgMjQ0LCAxNjQsIDE1NSwgMSwgMTYxLCAyMjMsIDgyLCAxNTUsIDEsIDE2MSwgMjMyLCAyMTQsIDE1NSwgMzAsIDUsIDE2MSwgCi0gICAgMTUwLCAxNTUsIDMwLCA1LCAxNjEsIDIzMiwgMjE0LCAxNTUsIDIxLCAyMTIsIDc5LCAxNTUsIDIxLCAxMTYsIDE1NSwgMjEsIAotICAgIDEwOSwgMTU1LCAyMSwgMTY2LCAxNTUsIDIxLCAxNjMsIDE1NSwgMjEsIDE4MCwgMTU1LCAyMSwgMTg5LCAxNTUsIDIxLCAKLSAgICAxOTgsIDE1NSwgMjEsIDE5NSwgMTU1LCAyMSwgMjAwLCAxNTUsIDUsIDIzNSwgMTA0LCAxNTUsIDUsIDIxNSwgMTMyLCAxMzAsIAotICAgIDUsIDI1MywgMjQyLCAxMzAsIDUsIDIxNCwgMTI4LCAxMzAsIDEsIDYxLCAxMzAsIDEsIDI1NCwgMjMyLCAxMzAsIDEsIDcyLCAKLSAgICAxMzAsIDEsIDIzNiwgMjgsIDEzMCwgMSwgNjksIDEzMCwgMSwgMjE1LCA5MiwgMTMwLCAxLCAxNjEsIDE0OSwgMTMwLCAxLCAKLSAgICAxNjEsIDE1MCwgMTMwLCAxLCA3NCwgMTMwLCAxLCAyNDUsIDE2NSwgMTMwLCAxLCAyNTQsIDEwOCwgMTMwLCAxLCA3NSwgCi0gICAgMTMwLCAxLCAyMjcsIDQ5LCAxMzAsIDEsIDI1MywgMTA4LCAxMzAsIDEsIDE4MSwgMTMwLCAxLCAyMzQsIDEzOCwgMTMwLCAxLCAKLSAgICAyNDMsIDExMCwgMTMwLCAxLCAyNDIsIDIyNSwgMTMwLCAxLCAyMjksIDE1OSwgMTMwLCAxLCAyNTAsIDIxOSwgMTMwLCAxLCAKLSAgICAyNTAsIDkyLCAxMzAsIDEsIDIzNSwgMTM5LCAxMzAsIDEsIDIzNSwgMTE1LCAxMzAsIDEsIDIyOCwgMjMsIDEzMCwgMSwgCi0gICAgMjE2LCAxMTUsIDEzMCwgMSwgMjE2LCAxMDUsIDEzMCwgMSwgMjQ4LCA4NiwgMTMwLCAxLCAyNDgsIDcwLCAxMzAsIDEsIAotICAgIDIyOCwgMTk4LCAxMzAsIDEsIDIxOCwgNTIsIDEzMCwgMSwgMjE3LCAxNjEsIDEzMCwgMSwgMjQ4LCAxNjQsIDEzMCwgMSwgCi0gICAgMjQ3LCAyMzIsIDEzMCwgMSwgMjA1LCAxMzAsIDEsIDIyOCwgMTg5LCAxMzAsIDEsIDE5MywgMTMwLCAxLCAyMjYsIDIzLCAKLSAgICAxMzAsIDEsIDI1MiwgMTA3LCAxMzAsIDEsIDI1MSwgMTk1LCAxMzAsIDEsIDE4OCwgMTMwLCAxLCAxODYsIDEzMCwgMSwgCi0gICAgMjAzLCAxMzAsIDEsIDIyMywgODEsIDEzMCwgMSwgMjMzLCAxNTcsIDEzMCwgMSwgMjMyLCAyMTMsIDEzMCwgMSwgMjMyLCAKLSAgICAyMTIsIDEzMCwgMSwgMjE1LCAxLCAxMzAsIDEsIDIyMSwgMjQsIDEzMCwgMSwgMjE5LCAxNTcsIDEzMCwgMSwgMjIyLCAyMDIsIAotICAgIDEzMCwgMSwgMTU5LCAxMzAsIDEsIDIxNiwgODgsIDEzMCwgNSwgMjUzLCA5MSwgMTMwLCAzMCwgNSwgMjU0LCAyMzIsIDEzMCwgCi0gICAgMzAsIDUsIDcyLCAxMzAsIDMwLCA1LCAyMzYsIDI4LCAxMzAsIDMwLCA1LCA2OSwgMTMwLCAzMCwgNSwgMjE1LCA5MiwgMTMwLCAKLSAgICAzMCwgNSwgMTYxLCAxNDksIDEzMCwgMzAsIDUsIDE2MSwgMjIzLCA4MiwgMTMwLCAzMCwgNSwgNzQsIDEzMCwgMzAsIDUsIAotICAgIDI0NSwgMTY1LCAxMzAsIDMwLCA1LCAyNTQsIDEwOCwgMTMwLCAzMCwgNSwgNzUsIDEzMCwgMzAsIDUsIDIyNywgNDksIDEzMCwgCi0gICAgMzAsIDUsIDI1MywgMTA4LCAxMzAsIDUsIDIxNCwgMTMzLCAxMzAsIDEsIDYyLCAyMjMsIDIyNSwgMTMwLCAyNTMsIDEwOSwgCi0gICAgMjMzLCA0NywgNzcsIDEzMCwgMSwgMTYxLCAyMjMsIDgyLCAxMzAsIDEsIDE2MSwgMjMyLCAyMTQsIDEzMCwgMzAsIDUsIAotICAgIDE2MSwgMTUwLCAxMzAsIDMwLCA1LCAxNjEsIDIzMiwgMjE0LCAxMzAsIDIxLCAyMTIsIDc5LCAxMzAsIDIxLCAxMTYsIDEzMCwgCi0gICAgMjEsIDEwOSwgMTMwLCAyMSwgMTY2LCAxMzAsIDIxLCAxNjMsIDEzMCwgMjEsIDE4MCwgMTMwLCAyMSwgMTg5LCAxMzAsIDIxLCAKLSAgICAxOTgsIDEzMCwgMjEsIDE5NSwgMTMwLCAyMSwgMjAwLCAxMzAsIDUwLCAyMTcsIDIwMCwgMTMwLCA1MCwgMTIyLCAyNDAsIAotICAgIDIwMCwgMTMwLCA1MCwgMTIyLCAyMTcsIDEwMCwgMTMwLCAyNDMsIDIyOCwgMTIyLCAyMjQsIDE2NiwgMTMwLCAyNDMsIDIyOCwgCi0gICAgMTIyLCAyNDIsIDksIDEzMCwgMjQzLCAyMjgsIDEzMywgMjI0LCAxNjQsIDEzMCwgMjQ4LCA5NiwgNzcsIDEzMCwgMSwgMjUwLCAKLSAgICAzNiwgMjI4LCAxOTksIDEzMCwgMSwgMjUwLCAzNiwgMjA0LCAxMzAsIDEsIDI1MCwgMzYsIDIyMywgODIsIDEzMCwgMSwgCi0gICAgMjUwLCAzNiwgMTUwLCAxMzAsIDEsIDI1MCwgMzYsIDIzMiwgMjE0LCAxMzAsIDEsIDI1MCwgMzYsIDIzNSwgMjcsIDE3MiwgCi0gICAgNSwgMjUzLCAyNDEsIDE3MiwgNSwgMjE0LCAxMjcsIDE3MiwgMSwgMjUzLCA4MSwgMTcyLCAxLCAyNTQsIDE4NywgMTcyLCAxLCAKLSAgICAyNTQsIDEyOCwgMTcyLCAxLCAyNTQsIDE0MywgMTcyLCAxLCAyMzUsIDE0OSwgMTcyLCAxLCAyMzYsIDI3LCAxNzIsIDEsIAotICAgIDIxNSwgODQsIDE3MiwgMSwgMjE1LCA4NiwgMTcyLCAxLCAyMzUsIDE3MSwgMTcyLCAxLCAyMzUsIDE3MiwgMTcyLCAxLCAKLSAgICAyMzYsIDEzLCAxNzIsIDEsIDIzNiwgMTUsIDE3MiwgMSwgMjQ0LCAyNDEsIDE3MiwgMSwgMjQ1LCAxNjEsIDE3MiwgMSwgCi0gICAgMjU0LCA5NiwgMTcyLCAxLCAyMjYsIDIzMiwgMTcyLCAxLCAyMjcsIDQzLCAxNzIsIDEsIDI1MywgOTQsIDE3MiwgMSwgMjU0LCAKLSAgICA1NSwgMjM0LCAxOTMsIDE3MiwgMSwgMjMyLCAxNCwgMjM0LCAxOTMsIDE3MiwgMSwgMjU0LCA1NSwgMjQzLCA1OCwgMTcyLCAKLSAgICAxLCAyMzIsIDE0LCAyNDMsIDU4LCAxNzIsIDEsIDIzNCwgMjM0LCAyMzAsIDQwLCAxNzIsIDEsIDIyMiwgMTUyLCAyNDMsIAotICAgIDU4LCAxNzIsIDEsIDI1NCwgNTUsIDI1MCwgMTQ5LCAxNzIsIDEsIDIzMiwgMTQsIDI1MCwgMTQ5LCAxNzIsIDEsIDI1NCwgCi0gICAgNTUsIDIzNSwgMTI4LCAxNzIsIDEsIDIzMiwgMTQsIDIzNSwgMTI4LCAxNzIsIDEsIDIxOCwgNDYsIDIzMCwgNDAsIDE3MiwgCi0gICAgMSwgMjE4LCA0NiwgMjIyLCAxNTEsIDIzMCwgNDEsIDE3MiwgMSwgMjIyLCAxNTIsIDIzNSwgMTI4LCAxNzIsIDEsIDI1NCwgCi0gICAgNTUsIDIxNiwgMTEzLCAxNzIsIDEsIDIzMiwgMTQsIDIxNiwgMTEzLCAxNzIsIDEsIDI1NCwgNTUsIDI0OCwgNzcsIDE3MiwgCi0gICAgMSwgMjMyLCAxNCwgMjQ4LCA3NywgMTcyLCAxLCAyMzAsIDEyNCwgMjMwLCAyLCAxNzIsIDEsIDIyMiwgMTUyLCAyNDgsIDc3LCAKLSAgICAxNzIsIDEsIDI1NCwgNTUsIDIxNywgMjM3LCAxNzIsIDEsIDIzMiwgMTQsIDIxNywgMjM3LCAxNzIsIDEsIDI1NCwgNTUsIAotICAgIDI0OCwgOTAsIDE3MiwgMSwgMjMyLCAxNCwgMjQ4LCA5MCwgMTcyLCAxLCAyNDgsIDExOSwgMjMwLCAyLCAxNzIsIDEsIDIyMiwgCi0gICAgMTUyLCAyNDgsIDkwLCAxNzIsIDEsIDI1NCwgNTUsIDIyNiwgMTAyLCAxNzIsIDEsIDIzMiwgMTQsIDIyNiwgMTAyLCAxNzIsIAotICAgIDEsIDI1NCwgNTUsIDI1MiwgMzIsIDE3MiwgMSwgMjMyLCAxNCwgMjUyLCAzMiwgMTcyLCAxLCAyMzEsIDE5NSwgMTcyLCAxLCAKLSAgICAyNTQsIDQwLCAyNTIsIDMyLCAxNzIsIDEsIDIxMywgNDIsIDE3MiwgMSwgMjI0LCAyNiwgMTcyLCAxLCAyNDgsIDExOSwgCi0gICAgMjMzLCA5MSwgMTcyLCAxLCAyMTQsIDIzNCwgMTcyLCAxLCAyMTgsIDQ2LCAyMjIsIDEyOCwgMTcyLCAxLCAyMzAsIDEyNCwgCi0gICAgMjIyLCAxMjgsIDE3MiwgMSwgMjQ4LCAxMTksIDIyMiwgMTI4LCAxNzIsIDEsIDI0MSwgMjI2LCAxNzIsIDEsIDIzMCwgMTI0LCAKLSAgICAyMzMsIDkxLCAxNzIsIDEsIDI0NCwgMTI1LCAxNzIsIDUsIDI1NCwgODUsIDE3MiwgMzAsIDUsIDI1NCwgMTM4LCAxNzIsIAotICAgIDMwLCA1LCAyMzQsIDE2MSwgMjU0LCAxNDUsIDE3MiwgMzAsIDUsIDI0NywgMTgwLCAyNTQsIDE0NSwgMTcyLCAzMCwgNSwgCi0gICAgMjM0LCAxNjEsIDIzNSwgMTY4LCAxNzIsIDMwLCA1LCAyNDcsIDE4MCwgMjM1LCAxNjgsIDE3MiwgMzAsIDUsIDIzNCwgMTYxLCAKLSAgICAyMjYsIDIxMiwgMTcyLCAzMCwgNSwgMjQ3LCAxODAsIDIyNiwgMjEyLCAxNzIsIDMwLCA1LCAyNDMsIDk5LCAxNzIsIDMwLCAKLSAgICA1LCAyMzQsIDI0LCAxNzIsIDMwLCA1LCAyNDcsIDE4MCwgMjM0LCAyNCwgMTcyLCAzMCwgNSwgMjM0LCAyNiwgMjQ4LCAxOCwgCi0gICAgMTcyLCAzMCwgNSwgMjM0LCAyNSwgMjQyLCAyOCwgMjU0LCAxMzgsIDE3MiwgMzAsIDUsIDIzNCwgMjUsIDI0MiwgMjgsIAotICAgIDI0NywgMTgwLCAyNTQsIDEzOCwgMTcyLCAzMCwgNSwgMjM0LCAyNSwgMjQyLCAyOCwgMjQzLCA1NywgMTcyLCAzMCwgNSwgCi0gICAgMjQzLCA1NywgMTcyLCAzMCwgNSwgMjQ3LCAxODAsIDI0MywgOTksIDE3MiwgMzAsIDUsIDI0NywgMTgwLCAyNDMsIDU3LCAKLSAgICAxNzIsIDIyNSwgMjcsIDIzMywgMjI4LCAxNTQsIDEzNywgMjM0LCAzOCwgMjM0LCAyNTAsIDE1NCwgMTM3LCAyMzQsIDExNCwgCi0gICAgMjM0LCAxMzQsIDE1NCwgMTM3LCAyMzQsIDExNCwgMjM0LCAxMDcsIDE1NCwgMTM3LCAyMzQsIDExNCwgMjM0LCAxMDQsIAotICAgIDE1NCwgMTM3LCAyMzQsIDExNCwgMjM0LCAxMTEsIDE1NCwgMTM3LCAyMzQsIDExNCwgMjI0LCA0NiwgMTU0LCAxMzcsIDIyOSwgCi0gICAgOTEsIDIyOSwgNzgsIDE1NCwgMTM3LCAyNTAsIDI0LCAyNTAsIDgzLCAxNTQsIDEzNywgMjUwLCAyNCwgMjUwLCAzMiwgMTU0LCAKLSAgICAxMzcsIDI1MCwgMjQsIDI1MCwgODIsIDE1NCwgMTM3LCAyMTksIDI0MywgMjE5LCAyNDIsIDE1NCwgMTM3LCAyNTAsIDI0LCAKLSAgICAyNTAsIDIwLCAxNTQsIDEzNywgMjEyLCAyMzYsIDIxMiwgMjQzLCAxNTQsIDEzNywgMjQ3LCAxMDAsIDI1MCwgODksIDE1NCwgCi0gICAgMTM3LCAyMTEsIDIxMSwgMjI2LCAxMTEsIDE1NCwgMTM3LCAyMTcsIDExMCwgMjE3LCAxNTMsIDE1NCwgMTM3LCAyMTcsIAotICAgIDExMCwgMjMwLCAyMSwgMTU0LCAxMzcsIDIxNywgMTEwLCAyMjUsIDI0MywgMTU0LCAxMzcsIDIyOCwgMTg2LCAyMjksIDE4MCwgCi0gICAgMTU0LCAxMzcsIDI0NywgMTAwLCAyNDgsIDE5LCAxNTQsIDEzNywgMjExLCAyMTEsIDIxOCwgNiwgMTU0LCAxMzcsIDIxNywgCi0gICAgMTEwLCAyMTcsIDg1LCAxNTQsIDEzNywgMjE3LCAxMTAsIDIxNywgMTU3LCAxNTQsIDEzNywgMjE3LCAxMTAsIDIxNywgMTA3LCAKLSAgICAxNTQsIDEzNywgMjI4LCAxODYsIDIyOCwgOTIsIDE1NCwgMTM3LCAyNTEsIDEyOSwgMjUyLCA4MywgMTU0LCAxMzcsIDIyNSwgCi0gICAgMTUxLCAyMjUsIDE3NCwgMTU0LCAxMzcsIDIyNSwgMjU0LCAyMjUsIDI0NSwgMTU0LCAxMzcsIDI0NCwgMTMsIDI0NCwgMTY0LCAKLSAgICAxNTQsIDEzNywgMjI1LCAyNTQsIDIyNiwgMTcsIDE1NCwgMTM3LCAyNDQsIDEzLCAyNDQsIDE0MSwgMTU0LCAxMzcsIDIyNSwgCi0gICAgMjU0LCAyMjIsIDE2MiwgMTU0LCAxMzcsIDIzMCwgMjMyLCAxODgsIDE1NCwgMTM3LCAyMTIsIDIzNiwgMjEzLCA2OCwgMTU0LCAKLSAgICAxMzcsIDIyMywgMTEzLCAyMjMsIDUwLCAxNTQsIDEzNywgMjIzLCA1MSwgMTU0LCAxMzcsIDIzMiwgMjA5LCAyMzIsIDIzNSwgCi0gICAgMTU0LCAxMzcsIDIzMiwgMTU2LCAxNTQsIDEzNywgMjEzLCAyMTUsIDIxNCwgNDUsIDE1NCwgMTM3LCAyMTksIDI0MywgMjIyLCAKLSAgICAxNzcsIDE1NCwgMTM3LCAyMTksIDI0MywgMjIzLCAyNSwgMTU0LCAxMzcsIDIxOSwgMjQzLCAyMTksIDI2LCAxNTQsIDEzNywgCi0gICAgMjQxLCA1NSwgMjQxLCAxNDUsIDE1NCwgMTM3LCAyMzIsIDIwOSwgMjUwLCA1LCAxNTQsIDEzNywgMTU3LCAyNTQsIDI0LCAKLSAgICAxNTQsIDEzNywgMjQxLCA1NSwgMjI4LCAxODEsIDE1NCwgMTM3LCAyMjYsIDE5NSwgMTU0LCAxMzcsIDIyMiwgMTQ2LCA2MSwgCi0gICAgMTU0LCAxMzcsIDIzMiwgOSwgMjQyLCAwLCAxNTQsIDEzNywgMjIyLCAxNDYsIDI1NCwgMjMyLCAxNTQsIDEzNywgMjIyLCAKLSAgICAxNDYsIDI1NCwgNDUsIDE1NCwgMTM3LCAyMjIsIDE0NiwgNzIsIDE1NCwgMTM3LCAyMjIsIDE0NiwgMjM2LCAyOCwgMTU0LCAKLSAgICAxMzcsIDIyMiwgMTQ2LCAyMTUsIDE4MywgMTU0LCAxMzcsIDIyMiwgMTQ2LCAyMTUsIDE4MSwgMTU0LCAxMzcsIDIyMiwgCi0gICAgMTQ2LCA2OSwgMTU0LCAxMzcsIDIyMiwgMTQ2LCAyMTUsIDkyLCAxNTQsIDEzNywgMjI2LCAwLCAxNTQsIDI0OSwgMzksIDE2LCAKLSAgICAyNTIsIDg0LCAxNTQsIDEzNywgMjIyLCAxNDYsIDc0LCAxNTQsIDEzNywgMjIyLCAxNDYsIDI1NCwgMTQ4LCAxNTQsIDEzNywgCi0gICAgMjIyLCAxNDYsIDc1LCAxNTQsIDEzNywgMjIyLCAxNDYsIDI1NCwgMTA5LCAyMzIsIDQsIDE1NCwgMTM3LCAyMjIsIDE0NiwgCi0gICAgMjU0LCAxMDksIDIzMiwgNSwgMTU0LCAxMzcsIDIzMywgMTMwLCAxNTQsIDEzNywgMjMyLCAxLCAxNTQsIDEzNywgMjMyLCAyLCAKLSAgICAxNTQsIDEzNywgMjMyLCA5LCAyNDUsIDEzNywgMTU0LCAxMzcsIDIzMiwgOSwgMjE3LCAxMDksIDE1NCwgMTM3LCAyMzIsIDksIAotICAgIDIxNiwgMTg2LCAxNTQsIDEzNywgMjMyLCA5LCAyNTAsIDcxLCAxNTQsIDEzNywgMjE3LCAxNTEsIDE1NCwgMTM3LCAyMjksIAotICAgIDM2LCAxNTQsIDEzNywgMjEzLCA2MiwgMTU0LCAxMzcsIDI0NCwgNCwgMTU0LCAyMSwgMjEyLCA3OSwgMTU0LCAyMSwgMTE2LCAKLSAgICAxNTQsIDIxLCAxMDksIDE1NCwgMjEsIDE2NiwgMTU0LCAyMSwgMTYzLCAxNTQsIDIxLCAxODAsIDE1NCwgMjEsIDE4OSwgCi0gICAgMTU0LCAyMSwgMTk4LCAxNTQsIDIxLCAxOTUsIDE1NCwgMjEsIDIwMCwgMTU0LCAxMzcsIDI1NCwgMjAsIDE1NCwgMTM3LCAKLSAgICAyMzQsIDExMiwgMjMzLCAxMTIsIDEsIDIzNCwgMzcsIDIzMywgMTEyLCAxLCAyMzQsIDExNCwgMjE4LCAyMzUsIDIzMywgCi0gICAgMTEyLCAxLCAyMzQsIDExNCwgMjE4LCAxMywgMjMzLCAxMTIsIDEsIDIyOSwgOTAsIDIzMywgMTEyLCAxLCAyNDksIDE3NSwgCi0gICAgMjMzLCAxMTIsIDEsIDIxOSwgMjQzLCAyMTgsIDEzLCAyMzMsIDExMiwgMSwgMjI3LCAyNTMsIDIzMywgMTEyLCAxLCAyNDcsIAotICAgIDk5LCAyMzMsIDExMiwgMSwgMTA4LCAyMzMsIDExMiwgMSwgMjE3LCAxMTAsIDIxOCwgMjM1LCAyMzMsIDExMiwgMSwgMjE3LCAKLSAgICAxMTAsIDIxOCwgMTMsIDIzMywgMTEyLCAxLCAyMjgsIDE4NSwgMjMzLCAxMTIsIDEsIDI1MSwgMTI4LCAyMzMsIDExMiwgMSwgCi0gICAgMjI1LCAxNTAsIDIzMywgMTEyLCAxLCAyMjUsIDI1NCwgMjE4LCAyMzUsIDIzMywgMTEyLCAxLCAyNDQsIDEzLCAyMTgsIDEzLCAKLSAgICAyMzMsIDExMiwgMSwgMjI1LCAyNTQsIDIxOCwgMTMsIDIzMywgMTEyLCAxLCAyNDQsIDEzLCAyMTgsIDIzNSwgMjMzLCAxMTIsIAotICAgIDEsIDIzMCwgMjMxLCAyMzMsIDExMiwgMSwgMjEyLCAyMzUsIDIzMywgMTEyLCAxLCAyMzIsIDIwOSwgMjMyLCAyMzUsIDIzMywgCi0gICAgMTEyLCAxLCAyMzIsIDIwOSwgMjMyLCAxNzYsIDIzMywgMTEyLCAxLCAyMTMsIDIxNCwgMjMzLCAxMTIsIDEsIDIxOSwgMjQzLCAKLSAgICAyMTgsIDIzNSwgMjMzLCAxMTIsIDEsIDI0MSwgNTUsIDIxOCwgMjM1LCAyMzMsIDExMiwgMSwgNzUsIDIzMywgMTEyLCAxLCAKLSAgICAyNDEsIDU1LCAyMTgsIDEzLCAyMzMsIDExMiwgMjQ1LCAxMjAsIDIzMywgMTEyLCAzMCwgNSwgNjEsIDIzMywgMTEyLCAzMCwgCi0gICAgNSwgMjMyLCA5LCAyMzQsIDIzOSwgMjMzLCAxMTIsIDMwLCA1LCAyNTQsIDIzMiwgMjMzLCAxMTIsIDMwLCA1LCAyNTQsIDQ1LCAKLSAgICAyMzMsIDExMiwgMzAsIDUsIDcyLCAyMzMsIDExMiwgMzAsIDUsIDIzNiwgMjgsIDIzMywgMTEyLCAzMCwgNSwgMjEzLCAxMDUsIAotICAgIDIzMywgMTEyLCAzMCwgNSwgMjEyLCAxNjEsIDIzMywgMTEyLCAzMCwgNSwgNjksIDIzMywgMTEyLCAzMCwgNSwgMjE1LCA5MiwgCi0gICAgMjMzLCAxMTIsIDMwLCA1LCAyMzIsIDksIDIzNCwgMjIsIDIzMywgMTEyLCAyMjEsIDY1LCA1LCAyMzIsIDIwOCwgMjMzLCAKLSAgICAxMTIsIDIyMSwgNjUsIDUsIDIyNywgMjUzLCAyMzMsIDExMiwgMzAsIDUsIDc0LCAyMzMsIDExMiwgMzAsIDUsIDI0NSwgCi0gICAgMTUyLCAyMzMsIDExMiwgMzAsIDUsIDc1LCAyMzMsIDExMiwgMzAsIDUsIDI1MywgODMsIDIzMywgMTEyLCAzMCwgNSwgMjU0LCAKLSAgICAxMDgsIDIzMywgMTEyLCAyMzQsIDM4LCAyMzMsIDE1NywgMjMzLCAxMTIsIDE2MCwgMjMyLCA5LCAyNDUsIDEzNywgMjMzLCAKLSAgICAxMTIsIDE2MCwgMjMyLCA5LCAyMTcsIDEwOSwgMjMzLCAxMTIsIDE2MCwgMjMyLCA5LCAyMTcsIDcxLCAyMzMsIDExMiwgCi0gICAgMTYwLCAyMzIsIDksIDI1MCwgMTU1LCAyMzMsIDExMiwgMjUwLCAxOTIsIDc3LCAyMzMsIDExMiwgMjI5LCA0NSwgMjMzLCAKLSAgICAxMTIsIDIxLCAyMTIsIDc5LCAyMzMsIDExMiwgMjEsIDExNiwgMjMzLCAxMTIsIDIxLCAxMDksIDIzMywgMTEyLCAyMSwgCi0gICAgMTY2LCAyMzMsIDExMiwgMjEsIDE2MywgMjMzLCAxMTIsIDIxLCAxODAsIDIzMywgMTEyLCAyMSwgMTg5LCAyMzMsIDExMiwgCi0gICAgMjEsIDE5OCwgMjMzLCAxMTIsIDIxLCAxOTUsIDIzMywgMTEyLCAyMSwgMjAwLCAyMzMsIDExMiwgMjQxLCA1NSwgMjI4LCAKLSAgICAxODUsIDIzMywgMTEyLCAyNDEsIDU1LCAyMzAsIDIzMSwgNjAsIDQsIDIyNywgNzAsIDYwLCAxNTIsIDI0MiwgOTQsIDIxMiwgCi0gICAgMjQ3LCAyMzEsIDU5LCAyMTYsIDE0NywgNjEsIDYwLCAxNTIsIDI0MiwgOTQsIDIxMiwgMjQ3LCAyMzEsIDU5LCAyNTUsIDYyLCAKLSAgICAyMjMsIDExNywgMjUxLCAyNTMsIDE4OCwgNjAsIDE1MiwgMjQyLCA5NCwgMjEyLCAyNDcsIDIzMSwgNTksIDI1NSwgNjIsIAotICAgIDI0MiwgOTQsIDIxNiwgMTMxLCAxODgsIDYwLCAxNTIsIDcwLCAyMTIsIDI0NywgMjMxLCA1OSwgMjMxLCAxNTgsIDE4OCwgCi0gICAgNjAsIDE1MiwgMjQ5LCAxODksIDIxMiwgMjQ3LCAyMzEsIDU5LCAyMjEsIDMwLCAxODgsIDYwLCAxNTIsIDI1MCwgMTcxLCAKLSAgICAyMTIsIDI0NywgMjMxLCA1OSwgMjI1LCAyNDQsIDIyMSwgMTgsIDE4OCwgNjAsIDE1MiwgMjEyLCAyNDcsIDIzMSwgNTksIAotICAgIDIxNiwgMTMxLCAyMjEsIDE4LCAxODgsIDYwLCAxNTIsIDIyMiwgMTI2LCAyMjEsIDE3LCA2MCwgMTUyLCAyNTEsIDU3LCAKLSAgICAyMTIsIDI0NywgMjMxLCA1OCwgNjAsIDE1MiwgMjUxLCAxNDYsIDIyMCwgMTgzLCAyMTIsIDI0NywgMjMxLCA1OCwgNjAsIAotICAgIDE1MiwgMjM1LCAxOTQsIDIxNiwgMTMwLCA2MCwgMTUyLCAyNDgsIDEyLCAyMTYsIDEzMSwgMjUxLCA1NiwgNjAsIDE1MiwgCi0gICAgMjIxLCAxNywgNjAsIDE1MiwgMjI4LCAyLCAyMjEsIDE3LCA2MCwgMTUyLCAyMTYsIDEzMSwgMjIxLCAxNywgNjAsIDE1MiwgCi0gICAgMjI4LCAyLCAyMTYsIDEzMSwgMjIxLCAxNywgNjAsIDE1MiwgMjIzLCAxMzMsIDI1MCwgNTksIDIxOSwgMTY4LCAyMjEsIDE3LCAKLSAgICA2MCwgMTUyLCAyMjMsIDE5NSwgMjQyLCAxMjIsIDIyMSwgMTcsIDYwLCAxNTIsIDI1MCwgMTcxLCAyNTUsIDY2LCAyMjMsIAotICAgIDU1LCAyMzEsIDE1NywgMTg0LCAyNTAsIDE5NSwgNjAsIDE1MiwgMjQyLCA5NCwgMjE2LCAxMzAsIDYwLCAyMzIsIDE5NywgNSwgCi0gICAgMjUwLCA5MCwgMjIzLCA1NCwgNjAsIDIzMiwgMTk3LCA1LCAyMzMsIDIzLCAyMjMsIDU0LCA2MCwgMjUzLCAxMjgsIDUsIAotICAgIDIyMSwgMjcsIDI0MywgNDEsIDI1NSwgNjcsIDIyMywgNTQsIDYwLCAyNTMsIDEyOCwgNSwgMjU1LCA2NCwgMTkzLCA2MCwgCi0gICAgMjUzLCAxMjgsIDUsIDIyMiwgMTAxLCAyMTYsIDEyNiwgNjAsIDUsIDIyNCwgMjMsIDI0NywgMTExLCAyNDMsIDQwLCA2MCwgCi0gICAgNSwgMjI0LCAyMywgMjQ3LCAxMTEsIDI0MiwgMTUyLCA2MCwgNSwgMjI0LCAyMywgMjQ3LCAxMTEsIDI0MiwgOTUsIDYwLCA1LCAKLSAgICAyMjQsIDIzLCAyMzAsIDM3LCAyNDMsIDQwLCA2MCwgNSwgMjI0LCAyMywgMjMwLCAzNywgMjQyLCAxNTIsIDYwLCA1LCAyMjQsIAotICAgIDIzLCAyNDcsIDExMSwgMjI0LCAyMywgMjMwLCAzNiwgNjAsIDIxLCAyMTIsIDc5LCA2MCwgMjEsIDExNiwgNjAsIDIxLCAKLSAgICAxMDksIDYwLCAyMSwgMTY2LCA2MCwgMjEsIDE2MywgNjAsIDIxLCAxODAsIDYwLCAyMSwgMTg5LCA2MCwgMjEsIDE5OCwgNjAsIAotICAgIDIxLCAxOTUsIDYwLCAyMSwgMjAwLCA2MCwgMjEsIDE1MSwgMTE2LCA2MCwgMjEsIDE1MSwgMTA5LCA2MCwgMjEsIDE1MSwgCi0gICAgMTY2LCA2MCwgMjEsIDE1MSwgMTYzLCA2MCwgMjEsIDE1MSwgMTgwLCA2MCwgMjEsIDE1MSwgMTg5LCA2MCwgMjEsIDE1MSwgCi0gICAgMTk4LCA2MCwgMjEsIDE1MSwgMTk1LCA2MCwgMjEsIDE1MSwgMjAwLCA2MCwgMjEsIDE1MSwgMjEyLCA3OSwgNjAsIDE1MiwgCi0gICAgMjUxLCA1OSwgMjIzLCA1NCwgNjAsIDE1MiwgMjI5LCAxNTEsIDI1MCwgMjU0LCAyMjgsIDExLCAyMTIsIDE4LCA2MCwgMTUyLCAKLSAgICAyNTAsIDE3MSwgMjU1LCA2NiwgMjIzLCA1NSwgMjUwLCAyNTUsIDIzMSwgMTUsIDI1MCwgMTk1LCA2MCwgMTUyLCAyMjksIAotICAgIDE1MSwgMjUwLCAyNTQsIDIyMSwgMjgsIDIyMywgNTQsIDYwLCAxNTIsIDI1MCwgNjgsIDIzMSwgNTgsIDYwLCAxNTIsIDIxNiwgCi0gICAgMTQyLCAyNTUsIDYzLCA2MCwgMTUyLCAyNDIsIDgxLCAyMjMsIDU1LCAyNDIsIDQ0LCA2MCwgMTUyLCAyNDIsIDgxLCAyMjMsIAotICAgIDU1LCAyNDIsIDUwLCA2MCwgMTUyLCAyNTQsIDI1LCAyMzQsIDEyOSwgMjQyLCA0NCwgNjAsIDE1MiwgMjU0LCAyNSwgMjM0LCAKLSAgICAxMjksIDI0MiwgNTAsIDYwLCA1LCAyMTMsIDU1LCAyMTYsIDEyOSwgNjAsIDUsIDIzMSwgMjMwLCAyMTYsIDEyOSwgNjAsIDEsIAotICAgIDE4MSwgNjAsIDEsIDIzNCwgMTM4LCA2MCwgMSwgMjQzLCAxMTAsIDYwLCAxLCAyNDIsIDIyNSwgNjAsIDEsIDIyOSwgMTU5LCAKLSAgICA2MCwgMSwgMjUwLCAyMTksIDYwLCAxLCAyNTAsIDkyLCA2MCwgMSwgMjM1LCAxMzksIDYwLCAxLCAyMjgsIDIzLCA2MCwgMSwgCi0gICAgMjE2LCAxMTUsIDYwLCAxLCAyMTYsIDEwNSwgNjAsIDEsIDI0OCwgODYsIDYwLCAxLCAyNDgsIDcwLCA2MCwgMSwgMjI4LCAKLSAgICAxOTgsIDYwLCAxLCAyMTgsIDUyLCA2MCwgMSwgMjE3LCAxNjEsIDYwLCAxLCAyNDgsIDE2NCwgNjAsIDEsIDI0NywgMjMyLCAKLSAgICA2MCwgMSwgMjA1LCA2MCwgMSwgMTkzLCA2MCwgMSwgMjI2LCAyMywgNjAsIDEsIDI1MiwgMTA3LCA2MCwgMSwgMjUxLCAxOTUsIAotICAgIDYwLCAxLCAxODgsIDYwLCAxLCAyMTYsIDE0MSwgNjAsIDEsIDIxNiwgMTMzLCA2MCwgMSwgMjQ1LCAyNDksIDYwLCAxLCAKLSAgICAyNDUsIDI0NCwgNjAsIDEsIDIxNCwgNDksIDYwLCAxLCAyMTIsIDc1LCA2MCwgMSwgMjEyLCAxMDksIDYwLCAxLCAyNTUsIAotICAgIDY5LCA2MCwgMSwgMTg2LCA2MCwgMSwgMjAzLCA2MCwgMSwgMjMzLCAxNTcsIDYwLCAxLCAyMjEsIDI0LCA2MCwgMSwgMjE5LCAKLSAgICAxNTcsIDYwLCAxLCAyMjIsIDIwMiwgNjAsIDEsIDE1OSwgNjAsIDEsIDYxLCA2MCwgMSwgMjMzLCAyNDEsIDYwLCAxLCAyNDQsIAotICAgIDQ2LCAyMDMsIDYwLCAxLCAyMzQsIDU1LCA2MCwgMSwgMjIzLCA4MSwgNjAsIDMwLCA1LCAyNTQsIDIzMiwgNjAsIDMwLCA1LCAKLSAgICA3MiwgNjAsIDMwLCA1LCAyMzYsIDI4LCA2MCwgMzAsIDUsIDY5LCA2MCwgMzAsIDUsIDIxNSwgOTIsIDYwLCAzMCwgNSwgCi0gICAgMTYxLCAxNDksIDYwLCAzMCwgNSwgMTYxLCAyMjMsIDgyLCA2MCwgMzAsIDUsIDE2MSwgMTUwLCA2MCwgMzAsIDUsIDE2MSwgCi0gICAgMjMyLCAyMTQsIDYwLCAzMCwgNSwgNzQsIDYwLCAzMCwgNSwgMjQ1LCAxNjUsIDYwLCAzMCwgNSwgNzUsIDYwLCAzMCwgNSwgCi0gICAgMjI3LCA0OSwgNjAsIDUsIDIyMywgMTE4LCAyMTksIDI4LCAyMjksIDE2MCwgMjIzLCAxMTIsIDYwLCA1LCAyMjMsIDExNywgCi0gICAgMjUxLCAyNTIsIDYwLCAzMCwgNSwgMjIzLCAyMDIsIDcyLCA2MCwgMzAsIDUsIDIyMywgMjAyLCAyMzYsIDI4LCA2MCwgNSwgCi0gICAgMjI4LCAxMSwgMjEyLCAxOSwgMjMwLCA0NCwgMjQ4LCAxNjQsIDYwLCA1LCAyMTksIDI1NSwgMjMzLCA4NCwgNjAsIDE1MiwgCi0gICAgMjQyLCAxMSwgNjAsIDE1MiwgMjI2LCAxODQsIDYwLCA1LCAyMzMsIDg3LCAyMjMsIDU0LCA2MCwgNSwgMjEzLCA1OSwgMjIzLCAKLSAgICA1NCwgNjAsIDUsIDIzMywgODgsIDIxNiwgMTQyLCAyNTAsIDE5NSwgNjAsIDUsIDIzMSwgMTU5LCAyNTAsIDE5NSwgNjAsIDUsIAotICAgIDI0MiwgOTcsIDI1MCwgMTk2LCAyMjMsIDE5MywgNjAsIDUsIDI0MiwgOTcsIDIzMSwgMTUwLCAyMjMsIDE5MywgNjAsIDUsIAotICAgIDIzNSwgMTkxLCAyMzEsIDE1OSwgMjUwLCAxOTUsIDYwLCAyMTksIDE4LCA1LCAyMzMsIDg4LCAyMTYsIDE0MiwgMjUwLCAKLSAgICAxOTUsIDYwLCAyMTksIDE4LCA1LCAyMzEsIDE1OSwgMjUwLCAxOTUsIDYwLCAyMTksIDE4LCA1LCAyMzUsIDE5MSwgMjMxLCAKLSAgICAxNTksIDI1MCwgMTk1LCA2MCwgMjE5LCAxOCwgMSwgMTgxLCA2MCwgMjE5LCAxOCwgMSwgMjM0LCAxMzgsIDYwLCAyMTksIAotICAgIDE4LCAxLCAyNDMsIDExMCwgNjAsIDIxOSwgMTgsIDEsIDI0MiwgMjI1LCA2MCwgMjE5LCAxOCwgMSwgMjI5LCAxNTksIDYwLCAKLSAgICAyMTksIDE4LCAxLCAyNTAsIDIxOSwgNjAsIDIxOSwgMTgsIDEsIDI1MCwgOTIsIDYwLCAyMTksIDE4LCAxLCAyMzUsIDEzOSwgCi0gICAgNjAsIDIxOSwgMTgsIDEsIDIyOCwgMjMsIDYwLCAyMTksIDE4LCAxLCAyMTYsIDExNSwgNjAsIDIxOSwgMTgsIDEsIDIxNiwgCi0gICAgMTA1LCA2MCwgMjE5LCAxOCwgMSwgMjQ4LCA4NiwgNjAsIDIxOSwgMTgsIDEsIDI0OCwgNzAsIDYwLCAyMTksIDE4LCAxLCAKLSAgICAyMjgsIDE5OCwgNjAsIDIxOSwgMTgsIDEsIDIxOCwgNTIsIDYwLCAyMTksIDE4LCAxLCAyMTcsIDE2MSwgNjAsIDIxOSwgMTgsIAotICAgIDEsIDI0OCwgMTY0LCA2MCwgMjE5LCAxOCwgMSwgMjQ3LCAyMzIsIDYwLCAyMTksIDE4LCAxLCAyMDUsIDYwLCAyMTksIDE4LCAKLSAgICAxLCAxOTMsIDYwLCAyMTksIDE4LCAxLCAyMjYsIDIzLCA2MCwgMjE5LCAxOCwgMSwgMjUyLCAxMDcsIDYwLCAyMTksIDE4LCAKLSAgICAxLCAyNTEsIDE5NSwgNjAsIDIxOSwgMTgsIDEsIDE4OCwgNjAsIDIxOSwgMTgsIDEsIDIxNiwgMTQxLCA2MCwgMjE5LCAxOCwgCi0gICAgMSwgMjE2LCAxMzMsIDYwLCAyMTksIDE4LCAxLCAyNDUsIDI0OSwgNjAsIDIxOSwgMTgsIDEsIDI0NSwgMjQ0LCA2MCwgMjE5LCAKLSAgICAxOCwgMSwgMjE0LCA0OSwgNjAsIDIxOSwgMTgsIDEsIDIxMiwgNzUsIDYwLCAyMTksIDE4LCAxLCAyMTIsIDEwOSwgNjAsIAotICAgIDIxOSwgMTgsIDEsIDI1NSwgNjksIDYwLCAyMTksIDE4LCAxLCAxODYsIDYwLCAyMTksIDE4LCAxLCAyMDMsIDYwLCAyMTksIAotICAgIDE4LCAxLCAyMzMsIDE1NywgNjAsIDIxOSwgMTgsIDEsIDIyMSwgMjQsIDYwLCAyMTksIDE4LCAxLCAyMTksIDE1NywgNjAsIAotICAgIDIxOSwgMTgsIDEsIDIyMiwgMjAyLCA2MCwgMjE5LCAxOCwgMSwgMTU5LCA2MCwgMjE5LCAxOCwgMSwgNjEsIDYwLCAyMTksIAotICAgIDE4LCAxLCAyMzMsIDI0MSwgNjAsIDIxOSwgMTgsIDEsIDI0NCwgNDYsIDIxNCwgNDksIDYwLCAyMTksIDE4LCAxLCAyNDQsIAotICAgIDQ2LCAxODYsIDYwLCAyMTksIDE4LCAxLCAyNDQsIDQ2LCAyMDMsIDYwLCAyMzMsIDIzOSwgMjIzLCA1MiwgMjM0LCAxMzgsIAotICAgIDYwLCAyMzMsIDIzOSwgMjIzLCA1MiwgMjM0LCAxMzksIDI1MCwgMjU1LCAyMzEsIDE1LCAyNTAsIDE5NSwgNjAsIDI1MCwgCi0gICAgMTg0LCA1LCAxMDcsIDI1MSwgMjQ2LCA2MCwgMjUwLCAxODQsIDUsIDE3NywgMjUxLCAyNDYsIDYwLCAyNTAsIDE4NCwgNSwgCi0gICAgMjUwLCAxODUsIDIxNywgMjI4LCA2MCwgMjUwLCAxODQsIDUsIDIyMiwgMTI1LCAyNTUsIDY4LCA2MCwgMTYsIDI0NiwgNDYsIAotICAgIDI1MSwgNTQsIDYwLCAxNiwgMjI0LCAyMiwgMjIzLCAxMTksIDYwLCAxNiwgMjI2LCAyMDIsIDI0MywgMzksIDYwLCAxNiwgCi0gICAgMjI0LCAyMiwgMjIzLCAxMjAsIDIyMywgMTk1LCAyNDIsIDEyMSwgNjAsIDE2LCAyMjUsIDI0NCwgMTkzLCA2MCwgMTYsIAotICAgIDIyOCwgMTcwLCAyNTEsIDU0LCA2MCwgMTYsIDIyOCwgMTcwLCAyNTEsIDU1LCAyMjgsIDIsIDI1NSwgNjUsIDYwLCAxNiwgCi0gICAgMjI4LCAxNzAsIDI1MSwgNTUsIDI0MiwgOTYsIDI1NSwgNjUsIDYwLCAxNiwgMjI4LCAxNzAsIDI1MSwgNTUsIDI1MCwgMjU1LCAKLSAgICAyNTUsIDY1LCA2MCwgNSwgMjI0LCAyMywgMjMwLCAzNywgMjI0LCAyMywgMjQ3LCAxMTAsIDYwLCA1LCAyMjQsIDIzLCAyMzAsIAotICAgIDM3LCAyNDIsIDk1LCA2MCwgMTUyLCAyNTEsIDU4LCAyMjAsIDE4MywgMjQyLCAxOTEsIDIzMSwgNTksIDIyMywgMTk0LCA2MCwgCi0gICAgMTUyLCAyMzAsIDIzMywgMjEyLCAyNDcsIDI0MiwgMTkxLCAyMzEsIDU5LCAyMjMsIDE5NCwgNjAsIDE1MiwgMjI4LCAyLCAKLSAgICAyMTYsIDEzMCwgNjAsIDE1MiwgNzAsIDI1MSwgNzksIDIyMywgMTE0LCAyMTIsIDI0NywgMjMxLCA1OSwgMjMxLCAxNTgsIAotICAgIDE4OCwgNjAsIDE1MiwgMjQ5LCAxODksIDI1MSwgNzksIDIyMywgMTE0LCAyMTIsIDI0NywgMjMxLCA1OSwgMjIxLCAzMCwgCi0gICAgMTg4LCAyMjMsIDE0NywgMjE4LCAyMDAsIDUyLCAyMzMsIDY5LCAyMTgsIDIwMCwgNTIsIDIyMywgMTQ3LCAyMTgsIDIwMCwgCi0gICAgNSwgMiwgMjQ3LCA3MiwgMjMzLCA2OSwgMjE4LCAyMDAsIDUsIDIsIDI0NywgNzIsIDYwLCAxNTIsIDIzMywgNzksIDIzMSwgCi0gICAgMTYwLCAyMjMsIDU0LCA2MCwgMTUyLCAyMTYsIDIwNywgMjMxLCAxNjAsIDIyMywgNTQsIDY0LCAxLCAxODEsIDY0LCAxLCAKLSAgICAyMzQsIDEzOCwgNjQsIDEsIDI0MywgMTEwLCA2NCwgMSwgMjQyLCAyMjUsIDY0LCAxLCAyMjksIDE1OSwgNjQsIDEsIDI1MCwgCi0gICAgMjE5LCA2NCwgMSwgMjUwLCA5MiwgNjQsIDEsIDIzNSwgMTM5LCA2NCwgMSwgMjM1LCAxMTUsIDY0LCAxLCAyMjgsIDIzLCAKLSAgICA2NCwgMSwgMjI4LCAxODcsIDY0LCAxLCAyMTYsIDExNSwgNjQsIDEsIDIxNiwgMTA1LCA2NCwgMSwgMjQ4LCA4NiwgNjQsIDEsIAotICAgIDI0OCwgNzAsIDY0LCAxLCAyMjgsIDE5OCwgNjQsIDEsIDIxOCwgNTIsIDY0LCAxLCAyMTcsIDE2MSwgNjQsIDEsIDI0OCwgCi0gICAgMTY0LCA2NCwgMSwgMjQ3LCAyMzIsIDY0LCAxLCAyMDUsIDY0LCAxLCAxOTMsIDY0LCAxLCAyMjYsIDIzLCA2NCwgMSwgMjUyLCAKLSAgICAxMDcsIDY0LCAxLCAyNTEsIDE5NSwgNjQsIDEsIDE4OCwgNjQsIDEsIDE4NiwgNjQsIDEsIDIwMywgNjQsIDEsIDIzMywgCi0gICAgMTU3LCA2NCwgMSwgMjE0LCA0OSwgNjQsIDEsIDIyMiwgMjAyLCA2NCwgMSwgMTU5LCA2NCwgMSwgMjMyLCAyMTMsIDY0LCAxLCAKLSAgICA2MSwgNjQsIDEsIDIyMSwgOSwgNjEsIDY0LCAxLCA3MiwgNjQsIDEsIDIzNiwgMjgsIDY0LCAxLCA2OSwgNjQsIDEsIDIxNSwgCi0gICAgOTIsIDY0LCAxLCA3NCwgNjQsIDEsIDIzMCwgMjIxLCA3NCwgNjQsIDEsIDc1LCA2NCwgMSwgMjUzLCAxMDgsIDY0LCAzMCwgCi0gICAgNSwgMjE4LCAxNSwgMjU0LCAyMzIsIDY0LCAzMCwgNSwgMjU0LCAyMzIsIDY0LCAzMCwgNSwgNzIsIDY0LCAzMCwgNSwgMjM2LCAKLSAgICAyOCwgNjQsIDMwLCA1LCA2OSwgNjQsIDMwLCA1LCAyMTUsIDkyLCA2NCwgMzAsIDUsIDc0LCA2NCwgMzAsIDUsIDI1NCwgCi0gICAgMTA4LCA2NCwgMzAsIDUsIDIzMCwgMjIxLCAyMzYsIDI4LCA2NCwgMzAsIDUsIDIzMCwgMjIxLCA3NSwgNjQsIDMwLCA1LCAKLSAgICAxOTEsIDQ5LCA2NCwgNSwgMjUzLCAyNDIsIDY0LCA1LCA2MiwgNTUsIDY0LCA1LCAyMTQsIDEyOCwgNjQsIDUsIDIxNCwgCi0gICAgMTMzLCA2NCwgNSwgMjUzLCAxNTAsIDY0LCAyNDksIDEzMywgNSwgMTM4LCAxODYsIDY0LCAyNDksIDEzMywgNSwgMTM4LCAKLSAgICAyMDMsIDY0LCAyNDksIDEzMywgNSwgMTM4LCAyMTQsIDQ5LCA2NCwgMjQ5LCAxMzMsIDUsIDEzOCwgMTU5LCA2NCwgMSwgCi0gICAgMjQyLCAxMDksIDIyMiwgMjAyLCA2NCwgMjEsIDIxMiwgNzksIDY0LCAyMSwgMTE2LCA2NCwgMjEsIDEwOSwgNjQsIDIxLCAKLSAgICAxNjYsIDY0LCAyMSwgMTYzLCA2NCwgMjEsIDE4MCwgNjQsIDIxLCAxODksIDY0LCAyMSwgMTk4LCA2NCwgMjEsIDE5NSwgNjQsIAotICAgIDIxLCAyMDAsIDY0LCA1LCAyMzIsIDIyMSwgMjIyLCA5MSwgNjQsIDUsIDIyMiwgOTEsIDY0LCAxNiwgMjMyLCAyMDUsIDY0LCAKLSAgICAxNiwgMjQ5LCAxNTIsIDY0LCAxNiwgMjU0LCAxMjUsIDY0LCAxNiwgMjQzLCAyNCwgNjQsIDEsIDIyMSwgMjQsIDY0LCAxLCAKLSAgICAyMTksIDE1NywgNjQsIDEsIDE2MSwgMTQ5LCA2NCwgMSwgMTYxLCAyMjMsIDgyLCA2NCwgMSwgMTYxLCAxNTAsIDY0LCAxLCAKLSAgICAxNjEsIDIzMiwgMjE0LCA2NCwgMzAsIDUsIDE2MSwgMTQ5LCA2NCwgMzAsIDUsIDE2MSwgMjIzLCA4MiwgNjQsIDMwLCA1LCAKLSAgICAxNjEsIDE1MCwgNjQsIDMwLCA1LCAxNjEsIDIzMiwgMjE0LCA2NCwgMSwgMjMwLCAyMjEsIDIyOSwgMTU5LCA2NCwgMSwgCi0gICAgMjMwLCAyMjEsIDIzNSwgMTE1LCA2NCwgMSwgMjMwLCAyMjEsIDI1MiwgMzEsIDY0LCAxLCAyMzAsIDIyMSwgMjUyLCAyNiwgCi0gICAgNjQsIDI0OSwgMTMzLCA1LCAyMzAsIDIyMSwgMTM4LCAyMDUsIDY0LCAyNDksIDEzMywgNSwgMjMwLCAyMjEsIDEzOCwgMTg4LCAKLSAgICA2NCwgMjQ5LCAxMzMsIDUsIDIzMCwgMjIxLCAxMzgsIDIzMywgMTU3LCA2NCwgMSwgMjIxLCAyOSwgMjM0LCAyMTgsIDIyMSwgCi0gICAgMjQsIDY0LCAzMCwgNSwgMjIxLCAyOSwgMjM0LCAyMTgsIDI0NSwgMjIsIDY0LCAxNjAsIDE1MiwgMjIxLCAyOSwgMjM0LCAKLSAgICAyMTgsIDI0MSwgMjMwLCA2NCwgMTYwLCAxNTIsIDIyMSwgMjksIDIzNCwgMjE4LCAyMzQsIDE4OSwgMjI1LCAyNTMsIDY0LCAKLSAgICAxLCAyMTMsIDI0OCwgMjI0LCAyNTIsIDIzNCwgMjE4LCAyMTcsIDE2MSwgNjQsIDEsIDIxMywgMjQ4LCAyMjQsIDI1MiwgCi0gICAgMjM0LCAyMTgsIDIyNSwgMiwgNjQsIDMwLCA1LCAyMTMsIDI0OCwgMjI0LCAyNTIsIDIzNCwgMjE4LCAyNDUsIDIyLCA2NCwgCi0gICAgMzAsIDUsIDIxMywgMjQ4LCAyMjQsIDI1MiwgMjM0LCAyMTgsIDIxNSwgMTgzLCA2NCwgNSwgMjEzLCAyNDgsIDIyNCwgMjUyLCAKLSAgICAyMzQsIDIxOCwgMjE2LCAyNDAsIDY0LCA1LCAyMTMsIDI0OCwgMjI0LCAyNTIsIDIzNCwgMjE4LCAyMTYsIDIzOSwgNjQsIDUsIAotICAgIDIxMywgMjQ4LCAyMjQsIDI1MiwgMjM0LCAyMTgsIDIxNiwgMjM4LCA2NCwgNSwgMjEzLCAyNDgsIDIyNCwgMjUyLCAyMzQsIAotICAgIDIxOCwgMjE2LCAyMzcsIDY0LCA1LCAyMTMsIDI0OCwgMjI0LCAyNTIsIDIzNCwgMjE4LCAyMTYsIDIzNiwgNjQsIDEsIDI0NSwgCi0gICAgMTc1LCAyMjQsIDI1MiwgMjM0LCAyMTgsIDIyOCwgMTk4LCA2NCwgMSwgMjQ1LCAxNzUsIDIyNCwgMjUyLCAyMzQsIDIxOCwgCi0gICAgMjEyLCAxNjgsIDY0LCAxLCAyNDUsIDE3NSwgMjI0LCAyNTIsIDIzNCwgMjE4LCAyNDIsIDE5MywgNjQsIDMwLCA1LCAyNDMsIAotICAgIDM1LCAyMzQsIDIxOCwgNzIsIDY0LCAzMCwgNSwgMjM0LCAxOTQsIDIyNywgOTksIDY0LCAzMCwgNSwgMjM0LCAxOTQsIDY5LCAKLSAgICA2NCwgMzAsIDUsIDIzNCwgMTk0LCAyNDUsIDE2NSwgNjQsIDEsIDIyMSwgOSwgMTgxLCA2NCwgMSwgMjIxLCA5LCAyMzQsIAotICAgIDEzOCwgNjQsIDEsIDIyMSwgOSwgMjQzLCAxMTAsIDY0LCAxLCAyMjEsIDksIDI1MCwgMjE5LCA2NCwgMSwgMjIxLCA5LCAKLSAgICAyMTIsIDEwOSwgNjQsIDEsIDIyMSwgOSwgMjI4LCAyMywgNjQsIDEsIDIyMSwgOSwgMjQ4LCAxNjQsIDY0LCAxLCAyMjEsIDksIAotICAgIDIwNSwgNjQsIDEsIDIyMSwgOSwgMjI2LCAyMywgNjQsIDEsIDIyMSwgOSwgMjQ0LCAxNjQsIDY0LCAxLCAyMjEsIDksIDI1MiwgCi0gICAgMTA3LCA2NCwgMSwgMjIxLCA5LCAyMTcsIDE2MSwgNjQsIDEsIDIyMSwgOSwgMTU5LCA2NCwgMjQ5LCAxMzMsIDUsIDIyMSwgCi0gICAgOSwgMTM4LCAyMTQsIDQ5LCA2NCwgMzAsIDUsIDIyMSwgOSwgMjU0LCAyMzIsIDY0LCAzMCwgNSwgMjIxLCA5LCA3NCwgNjQsIAotICAgIDMwLCA1LCAyMjEsIDksIDE5MSwgNDksIDY0LCAzMCwgNSwgMjIxLCA5LCA0MCwgMjEzLCAxMDUsIDY0LCA1LCAyMjEsIDksIAotICAgIDIxNiwgMjM5LCA2NCwgNSwgMjIxLCA5LCAyMTYsIDIzOCwgNjQsIDUsIDIyMSwgOSwgMjE2LCAyMzYsIDY0LCA1LCAyMjEsIAotICAgIDksIDIxNiwgMjM1LCA2NCwgNSwgMjIxLCA5LCAyNDksIDkxLCAyMTYsIDIzOSwgNjQsIDUsIDIyMSwgOSwgMjQ5LCA5MSwgCi0gICAgMjE2LCAyMzgsIDY0LCA1LCAyMjEsIDksIDI0OSwgOTEsIDI0NSwgMTExLCAyMTYsIDI0MSwgNjQsIDEsIDIyMywgMzksIAotICAgIDIyNiwgMTkwLCAyNDQsIDE2NCwgNjQsIDUsIDIyMywgMzksIDIyNiwgMTkwLCAyMTYsIDIzNiwgNjQsIDIyMSwgOSwgMjEsIAotICAgIDIxMiwgNzksIDY0LCAyMjEsIDksIDIxLCAxMTYsIDY0LCAyMjEsIDksIDIxLCAxMDksIDY0LCAyMjEsIDksIDIxLCAxNjYsIAotICAgIDY0LCAyMjEsIDksIDIxLCAxNjMsIDY0LCAyMjEsIDksIDIxLCAxODAsIDY0LCAyMjEsIDksIDIxLCAxODksIDY0LCAyMjEsIAotICAgIDksIDIxLCAxOTgsIDY0LCAyMjEsIDksIDIxLCAxOTUsIDY0LCAyMjEsIDksIDIxLCAyMDAsIDY0LCA1LCAyMzQsIDEzMiwgCi0gICAgMjE2LCAyNDAsIDY0LCA1LCAyMzQsIDEzMiwgMjE2LCAyMzgsIDY0LCAzMCwgNSwgMjU0LCA5OCwgNjEsIDY0LCAzMCwgNSwgCi0gICAgMjU0LCA5OCwgMjU0LCAxMDgsIDY0LCAxNiwgMjIxLCA5LCAxMTYsIDY0LCAxNiwgMjIxLCA5LCAyNDQsIDI1MywgMTAwLCA2LCAKLSAgICAxLCAyNTQsIDMyLCAxMDAsIDYsIDEsIDI1MiwgNzEsIDEwMCwgNiwgMSwgMjQzLCA4MiwgMTAwLCA2LCAxLCAyNDcsIDgyLCAKLSAgICAxMDAsIDYsIDEsIDI0NSwgMTA4LCAxMDAsIDYsIDEsIDIxNCwgMTQxLCAxMDAsIDYsIDEsIDIxMiwgODIsIDEwMCwgNiwgMSwgCi0gICAgMjE4LCAxMSwgMTAwLCA2LCAxLCAyMzUsIDI1MSwgMTAwLCA2LCAxLCAyMzQsIDIzOSwgMTAwLCA2LCAxLCAyMzMsIDEwNCwgCi0gICAgMTAwLCA2LCAxLCAyMzEsIDI0OCwgMTAwLCA2LCAxLCAyMzAsIDE1LCAxMDAsIDYsIDEsIDIyNywgNjIsIDEwMCwgNiwgMSwgCi0gICAgMjI2LCAxNDUsIDEwMCwgNiwgMSwgMjEyLCA3MSwgMTAwLCA2LCAxLCAyMjQsIDYxLCAxMDAsIDYsIDEsIDIyMiwgMTU5LCAKLSAgICAxMDAsIDYsIDEsIDIxOCwgMSwgMTAwLCA2LCAxLCAyMTUsIDE2MCwgMTAwLCA2LCAxLCAyMjYsIDE2LCAxMDAsIDYsIDEsIAotICAgIDIzNCwgMTI3LCAxMDAsIDYsIDEsIDI0MiwgMjE3LCAxMDAsIDYsIDEsIDIyNCwgMjE3LCAxMDAsIDYsIDEsIDIyMCwgMjAwLCAKLSAgICAxMDAsIDYsIDEsIDI1MCwgMzQsIDEwMCwgNiwgMSwgMjUwLCAxOTUsIDEwMCwgNiwgMSwgMjM1LCAxMDMsIDEwMCwgNiwgMSwgCi0gICAgMjQ5LCAyMzMsIDEwMCwgNiwgMSwgMjUwLCA3OSwgMTAwLCA2LCAxLCAyMTMsIDE1MSwgMTAwLCA2LCAxLCAyMzUsIDExMywgCi0gICAgMTAwLCA2LCAxLCAyNDIsIDI0LCAxMDAsIDYsIDEsIDI0MSwgMjIyLCAxMDAsIDYsIDEsIDI0MSwgMTYwLCAxMDAsIDYsIDEsIAotICAgIDIxNCwgNiwgMTAwLCA2LCAxLCAyNDEsIDI0MywgMTAwLCA2LCAxLCAyNDEsIDUxLCAxMDAsIDEsIDI1NCwgMzIsIDEwMCwgMSwgCi0gICAgMjUyLCA3MSwgMTAwLCAxLCAyNDMsIDgyLCAxMDAsIDEsIDI0NywgODIsIDEwMCwgMSwgMjQ1LCAxMDgsIDEwMCwgMSwgMjE0LCAKLSAgICAxNDEsIDEwMCwgMSwgMjEyLCA4MiwgMTAwLCAxLCAyMTgsIDExLCAxMDAsIDEsIDIzNSwgMjUxLCAxMDAsIDEsIDIzNCwgCi0gICAgMjM5LCAxMDAsIDEsIDIzMywgMTA0LCAxMDAsIDEsIDIzMSwgMjQ4LCAxMDAsIDEsIDIzMCwgMTUsIDEwMCwgMSwgMjI3LCAKLSAgICA2MiwgMTAwLCAxLCAyMjYsIDE0NSwgMTAwLCAxLCAyMTIsIDcxLCAxMDAsIDEsIDIyNCwgNjEsIDEwMCwgMSwgMjIyLCAxNTksIAotICAgIDEwMCwgMSwgMjE4LCAxLCAxMDAsIDEsIDIxNSwgMTYwLCAxMDAsIDEsIDIyNiwgMTYsIDEwMCwgMSwgMjM0LCAxMjcsIDEwMCwgCi0gICAgMSwgMjQyLCAyMTcsIDEwMCwgMSwgMjI0LCAyMTcsIDEwMCwgMSwgMjIwLCAyMDAsIDEwMCwgMSwgMjUwLCAzNCwgMTAwLCAxLCAKLSAgICAyNTAsIDE5NSwgMTAwLCAxLCAyMzUsIDEwMywgMTAwLCAxLCAyNDksIDIzMywgMTAwLCAxLCAyNTAsIDc5LCAxMDAsIDEsIAotICAgIDIxMywgMTUxLCAxMDAsIDEsIDIzNSwgMTEzLCAxMDAsIDEsIDI0MiwgMjQsIDEwMCwgMSwgMjQxLCAyMjIsIDEwMCwgMSwgCi0gICAgMjQxLCAxNjAsIDEwMCwgMSwgMjE0LCA2LCAxMDAsIDEsIDI0MSwgMjQzLCAxMDAsIDEsIDI0MSwgNTEsIDEwMCwgMSwgMjQ0LCAKLSAgICA5MCwgMTAwLCAxLCAyMTIsIDIzNywgMTAwLCAxLCAyNDUsIDEyMiwgMTAwLCAxLCAyMTYsIDU4LCAyNDMsIDgyLCAxMDAsIDEsIAotICAgIDI1NCwgMTAzLCAxMDAsIDIyNiwgMTQzLCAyMjEsIDU3LCA1OSwgMSwgMTAwLCAyMzAsIDE1LCAyMywgOTcsIDIzNCwgNjcsIAotICAgIDIzLCA5NywgMjE5LCAxNTAsIDIzLCA5NywgMjI5LCA1NywgMjMsIDk3LCAyMTcsIDU1LCAyMywgOTcsIDIxOSwgMTM5LCAyMywgCi0gICAgOTcsIDIyMywgMTc5LCAyMywgOTcsIDIzMSwgMzAsIDIzLCA5NywgMjI1LCAyMjcsIDIzLCA5NywgMjE5LCAxNDcsIDIzLCAKLSAgICA5NywgMjIwLCA3NiwgMjMsIDk3LCAyMTksIDE0NCwgMjMsIDk3LCAyMzYsIDUxLCAyMywgOTcsIDI0OSwgMjM5LCAyMywgOTcsIAotICAgIDIxOSwgMTU0LCAyMywgOTcsIDI1MCwgNDMsIDIzLCA5NywgMjM0LCAxMTYsIDIzLCA5NywgMjE3LCAxMjYsIDIzLCA5NywgCi0gICAgMjI2LCA3LCAyMywgOTcsIDI0MSwgMTU4LCAyMywgOTcsIDIyOSwgNTMsIDIzLCA5NywgMjE5LCAxNDgsIDIzLCA5NywgMjI5LCAKLSAgICA0NywgMjMsIDk3LCAyMjksIDUxLCAyMywgOTcsIDIxNywgNTIsIDIzLCA5NywgMjIzLCAxNjcsIDIzLCA5NywgMjE5LCAxNDYsIAotICAgIDIzLCA5NywgMjIzLCAxNzcsIDIzLCA5NywgMjM0LCAyMjMsIDIzLCA5NywgMjMxLCAyMywgMjMsIDk3LCAyMzQsIDIyNiwgCi0gICAgMjMsIDk3LCAyMjUsIDIyMiwgMjMsIDk3LCAyMjUsIDIyMCwgMjMsIDk3LCAyMjUsIDIwOCwgMjMsIDk3LCAyMjUsIDIxNiwgCi0gICAgMjMsIDk3LCAyMjUsIDIxNCwgMjMsIDk3LCAyMjUsIDIxMSwgMjMsIDk3LCAyMjUsIDIxMywgMjMsIDk3LCAyMjUsIDIxMCwgCi0gICAgMjMsIDk3LCAyMjUsIDIxNSwgMjMsIDk3LCAyMjUsIDIyNSwgMjMsIDk3LCAyMjUsIDIyNiwgMjMsIDk3LCAyMjUsIDIwOSwgCi0gICAgMjMsIDk3LCAyMjUsIDIxOSwgMjMsIDk3LCAyMzQsIDIyNCwgMjMsIDk3LCAyMzQsIDIyMiwgMjMsIDk3LCAyMjAsIDY5LCAKLSAgICAyMywgOTcsIDIyMCwgNjcsIDIzLCA5NywgMjIwLCA1OSwgMjMsIDk3LCAyMjAsIDYyLCAyMywgOTcsIDIyMCwgNjgsIDIzLCAKLSAgICA5NywgMjIwLCA2NCwgMjMsIDk3LCAyMjAsIDYzLCAyMywgOTcsIDIyMCwgNjEsIDIzLCA5NywgMjIwLCA3MiwgMjMsIDk3LCAKLSAgICAyMjAsIDc0LCAyMywgOTcsIDIyMCwgNzUsIDIzLCA5NywgMjIwLCA3MCwgMjMsIDk3LCAyMjAsIDYwLCAyMywgOTcsIDIyMCwgCi0gICAgNjUsIDIzLCA5NywgMjIwLCA3MywgMjMsIDk3LCAyNTAsIDI3LCAyMywgOTcsIDI1MCwgMjUsIDIzLCA5NywgMjUwLCAxMDIsIAotICAgIDIzLCA5NywgMjUwLCAxMDAsIDIzLCA5NywgMjI2LCAxNjAsIDIzLCA5NywgMjM2LCA0NiwgMjMsIDk3LCAyMzYsIDM3LCAyMywgCi0gICAgOTcsIDIzNiwgNDUsIDIzLCA5NywgMjM2LCA0MiwgMjMsIDk3LCAyMzYsIDQwLCAyMywgOTcsIDIzNiwgNDQsIDIzLCA5NywgCi0gICAgMjE5LCAxNTEsIDIzLCA5NywgMjM2LCA0OSwgMjMsIDk3LCAyMzYsIDUwLCAyMywgOTcsIDIzNiwgMzgsIDIzLCA5NywgMjM2LCAKLSAgICA0MywgMjMsIDk3LCAyMTMsIDE3LCAyMywgOTcsIDI0OSwgMjM4LCAyMywgOTcsIDI1MCwgMjgsIDIzLCA5NywgMjUwLCAyNiwgCi0gICAgMjMsIDk3LCAyNTAsIDEwMywgMjMsIDk3LCAyNTAsIDEwMSwgMjMsIDk3LCAyNTAsIDQxLCAyMywgOTcsIDI1MCwgNDIsIDIzLCAKLSAgICA5NywgMjUwLCAyOSwgMjMsIDk3LCAyNTAsIDEwNCwgMjMsIDk3LCAyMjYsIDUsIDIzLCA5NywgMjM0LCAyMjUsIDIzLCA5NywgCi0gICAgMjE5LCAxNTIsIDIzLCA5NywgMjEzLCAyMywgMjMsIDk3LCAyMzQsIDU4LCAyMywgOTcsIDIyOSwgNDksIDIzLCA5NywgMjI5LCAKLSAgICA1NSwgMjMsIDk3LCAyMjksIDU0LCAyMywgOTcsIDIxNywgNDksIDIzLCA5NywgMjQ0LCA3MiwgMjMsIDEzNSwgMjQ0LCA3MiwgCi0gICAgMjMsIDEzNSwgNjEsIDIzLCAxMzUsIDI1NCwgMTQ4LCAyMywgMTM1LCAxODYsIDIzLCAxMzUsIDIxMywgODAsIDIzLCAxMzUsIAotICAgIDI0NSwgNzYsIDIzLCAxMzUsIDc0LCAyMywgMTM1LCAyMTMsIDI3LCAyMywgMTM1LCAyMTMsIDM4LCAyMywgMTM1LCA3NSwgCi0gICAgMjMsIDEzNSwgMjE0LCA0OSwgMjMsIDEzNSwgMjE0LCA0NiwgMjMsIDEzNSwgMjI3LCA5OSwgMjMsIDEzNSwgMjEyLCAyMzUsIAotICAgIDIzLCAxMzUsIDY5LCAyMywgMTM1LCAyMTMsIDI1MiwgMjMsIDEzNSwgMjE0LCA2LCAyMywgMTM1LCAyMTMsIDIzNSwgMjMsIAotICAgIDEzNSwgMjEyLCAyMDMsIDIzLCAxMzUsIDI0NSwgMjIsIDIzLCAxMzUsIDIxMiwgMjU1LCAyMywgMTM1LCA3MiwgMjMsIDEzNSwgCi0gICAgMjU1LCA2MCwgMjMsIDEzNSwgMjU1LCA1OSwgMjMsIDEzNSwgMjEzLCA5NCwgMjMsIDEzNSwgMjEzLCA5MiwgMjMsIDEzNSwgCi0gICAgMjQ1LCA3NCwgMjMsIDEzNSwgMjQ1LCA3MywgMjMsIDEzNSwgMjQ1LCA3NSwgMjMsIDEzNSwgMjEzLCAyNiwgMjMsIDEzNSwgCi0gICAgMjEzLCAyNSwgMjMsIDEzNSwgMjI3LCAyMDQsIDIzLCAxMzUsIDIyNywgMjA1LCAyMywgMTM1LCAyMjcsIDE5OCwgMjMsIAotICAgIDEzNSwgMjI3LCAyMDMsIDIzLCAxMzUsIDIyNywgMjAxLCAyMywgMTM1LCAyMTIsIDIyOSwgMjMsIDEzNSwgMjEyLCAyMjgsIAotICAgIDIzLCAxMzUsIDIxMiwgMjI3LCAyMywgMTM1LCAyMTIsIDIzMCwgMjMsIDEzNSwgMjEyLCAyMzEsIDIzLCAxMzUsIDIxNSwgCi0gICAgMjUyLCAyMywgMTM1LCAyMTUsIDI1MSwgMjMsIDEzNSwgMjE1LCAyNTAsIDIzLCAxMzUsIDIxNSwgMjQ3LCAyMywgMTM1LCAKLSAgICAyMTUsIDI0OCwgMjMsIDEzNSwgMjEyLCAyMDIsIDIzLCAxMzUsIDIxMiwgMTk5LCAyMywgMTM1LCAyMTIsIDIwMCwgMjMsIAotICAgIDEzNSwgMjEyLCAxOTQsIDIzLCAxMzUsIDIxMiwgMTk1LCAyMywgMTM1LCAyMTIsIDE5NiwgMjMsIDEzNSwgMjEyLCAxOTgsIAotICAgIDIzLCAxMzUsIDI0NSwgMTYsIDIzLCAxMzUsIDI0NSwgMTgsIDIzLCAxMzUsIDIxMiwgMjU0LCAyMywgMTM1LCAyNDAsIDE0NSwgCi0gICAgMjMsIDEzNSwgMjQwLCAxMzcsIDIzLCAxMzUsIDI0MCwgMTQwLCAyMywgMTM1LCAyNDAsIDEzOCwgMjMsIDEzNSwgMjQwLCAKLSAgICAxNDIsIDIzLCAxMzUsIDI0MCwgMTQ0LCAyMywgMTM1LCAyNTMsIDIwNCwgMjMsIDEzNSwgMjUzLCAyMDEsIDIzLCAxMzUsIAotICAgIDI1MywgMTk5LCAyMywgMTM1LCAyNTMsIDIwMCwgMjMsIDEzNSwgMjE5LCAxNTUsIDIzLCAxMzUsIDI1NSwgNjEsIDIzLCAKLSAgICAxMzUsIDIxMywgOTMsIDIzLCAxMzUsIDIxMywgMjQsIDIzLCAxMzUsIDIyNywgMjAwLCAyMywgMTM1LCAyMjcsIDE5OSwgMjMsIAotICAgIDg5LCAyMzQsIDY3LCAyMywgODksIDIxOSwgMTUwLCAyMywgODksIDIzNCwgNjAsIDIzLCA4OSwgMjI5LCA1NywgMjMsIDg5LCAKLSAgICAyMjksIDU1LCAyMywgODksIDIyOSwgNTQsIDIzLCA4OSwgMjE3LCA1NSwgMjMsIDg5LCAyMjMsIDE3OSwgMjMsIDg5LCAyMjMsIAotICAgIDE3NCwgMjMsIDg5LCAyMjMsIDE3MSwgMjMsIDg5LCAyMjMsIDE2NCwgMjMsIDg5LCAyMjMsIDE1OSwgMjMsIDg5LCAyMjMsIAotICAgIDE1NCwgMjMsIDg5LCAyMjMsIDE2NSwgMjMsIDg5LCAyMjMsIDE3NywgMjMsIDg5LCAyMzEsIDMwLCAyMywgODksIDIyNSwgCi0gICAgMjI3LCAyMywgODksIDIyNSwgMjE2LCAyMywgODksIDIyMCwgNzYsIDIzLCA4OSwgMjE5LCAxNDQsIDIzLCA4OSwgMjM2LCAKLSAgICA1MSwgMjMsIDg5LCAyNDksIDIzOSwgMjMsIDg5LCAyNTAsIDQzLCAyMywgODksIDIzNCwgMTE2LCAyMywgODksIDIxNywgCi0gICAgMTI2LCAyMywgODksIDIyNiwgNywgMjMsIDg5LCAyNDEsIDE1OCwgMjMsIDg5LCAyMzQsIDYxLCAyMywgODksIDIzNCwgNTksIAotICAgIDIzLCA4OSwgMjI5LCA1MywgMjMsIDg5LCAyMjksIDQ3LCAyMywgODksIDIyOSwgNDksIDIzLCA4OSwgMjI5LCA1MiwgMjMsIAotICAgIDg5LCAyMjksIDQ4LCAyMywgODksIDIxNywgNTIsIDIzLCA4OSwgMjE3LCA0OSwgMjMsIDg5LCAyMjMsIDE3MiwgMjMsIDg5LCAKLSAgICAyMjMsIDE2NywgMjMsIDg5LCAyMjMsIDE1MywgMjMsIDg5LCAyMjMsIDE1MiwgMjMsIDg5LCAyMTksIDE0NiwgMjMsIDg5LCAKLSAgICAyMjMsIDE2OSwgMjMsIDg5LCAyMjMsIDE2OCwgMjMsIDg5LCAyMjMsIDE2MSwgMjMsIDg5LCAyMjMsIDE2MywgMjMsIDg5LCAKLSAgICAyMjMsIDE3NiwgMjMsIDg5LCAyMjMsIDE1NiwgMjMsIDg5LCAyMjMsIDE2NiwgMjMsIDg5LCAyMjMsIDE3NSwgMjMsIDg5LCAKLSAgICAyMjMsIDE1MSwgMjMsIDg5LCAyMzEsIDI2LCAyMywgODksIDIzMSwgMjEsIDIzLCA4OSwgMjMxLCAyMywgMjMsIDg5LCAyMzEsIAotICAgIDIwLCAyMywgODksIDIzMSwgMTgsIDIzLCA4OSwgMjMxLCAyNCwgMjMsIDg5LCAyMzEsIDI5LCAyMywgODksIDIzMSwgMjcsIAotICAgIDIzLCA4OSwgMjM0LCAyMjYsIDIzLCA4OSwgMjI1LCAyMTgsIDIzLCA4OSwgMjI1LCAyMTksIDIzLCA4OSwgMjI1LCAyMjQsIAotICAgIDIzLCA4OSwgMjM0LCAyMjQsIDIzLCA4OSwgMjIwLCA2OSwgMjMsIDg5LCAyMjAsIDU5LCAyMywgODksIDIyMCwgNjIsIDIzLCAKLSAgICA4OSwgMjIwLCA2NCwgMjMsIDg5LCAyMjYsIDE2MCwgMjMsIDg5LCAyMzYsIDQ2LCAyMywgODksIDIzNiwgMzksIDIzLCA4OSwgCi0gICAgMjE5LCAxNTEsIDIzLCA4OSwgMjM2LCA0NywgMjMsIDg5LCAyMTMsIDE3LCAyMywgODksIDIxMywgMTMsIDIzLCA4OSwgMjEzLCAKLSAgICAxNCwgMjMsIDg5LCAyMjYsIDUsIDIzLCA4OSwgMjM0LCAyMjUsIDIzLCA4OSwgMjQxLCAxNTYsIDIzLCA4OSwgMjQxLCAxNTQsIAotICAgIDIzLCA4OSwgMjQxLCAxNTcsIDIzLCA4OSwgMjQxLCAxNTUsIDIzLCA4OSwgMjEzLCAyMywgMjMsIDg5LCAyMzQsIDYzLCAyMywgCi0gICAgODksIDIzNCwgNjIsIDIzLCA4OSwgMjM0LCA2NiwgMjMsIDg5LCAyMzQsIDY0LCAyMywgODksIDIzNCwgNjUsIDIzLCA4OSwgCi0gICAgMjE5LCAxNDgsIDI4LCA0LCAxNTksIDI4LCA0LCAyNDAsIDIxMiwgMjgsIDQsIDI0MSwgMTY1LCAyOCwgNCwgMjQyLCAyNywgCi0gICAgMjgsIDQsIDI0MSwgMjA0LCAyOCwgNCwgMjQxLCAyMjIsIDI4LCA0LCAyNDEsIDU0LCAyOCwgNCwgMjQxLCA1MywgMjgsIDQsIAotICAgIDIzMywgMTU3LCAyOCwgNCwgMjMyLCAxNTYsIDI4LCA0LCAyMzMsIDEzLCAyOCwgNCwgMjMzLCAxNTYsIDI4LCA0LCAyMzMsIAotICAgIDc0LCAyOCwgNCwgMjMzLCA4MiwgMjgsIDQsIDIzMiwgMjA4LCAyOCwgNCwgMjMyLCAxMjksIDI4LCA0LCAyNDEsIDE3NCwgCi0gICAgMjgsIDQsIDI0MSwgMTY4LCAyOCwgNCwgMjQxLCAxNzAsIDI4LCA0LCAyNDEsIDE3MywgMjgsIDQsIDI0MSwgMTcxLCAyOCwgCi0gICAgNCwgMjQxLCAxNzIsIDI4LCA0LCAyNDEsIDE2OSwgMjgsIDQsIDI0MSwgMTY3LCAyOCwgNCwgMTg4LCAyOCwgNCwgMjMwLCAKLSAgICAxNzIsIDI4LCA0LCAyMzEsIDQyLCAyOCwgNCwgMjMyLCA0MSwgMjgsIDQsIDIzMSwgMTQ1LCAyOCwgNCwgMjMxLCAxNTYsIAotICAgIDI4LCA0LCAyMzAsIDIzMSwgMjgsIDQsIDIzMCwgMTE0LCAyOCwgNCwgMjE4LCAxMTAsIDI4LCA0LCAyMTgsIDEwNCwgMjgsIAotICAgIDQsIDIxOCwgMTA2LCAyOCwgNCwgMjE4LCAxMDksIDI4LCA0LCAyMTgsIDEwNywgMjgsIDQsIDIxOCwgMTA4LCAyOCwgNCwgCi0gICAgMjE4LCAxMDUsIDI4LCA0LCAyMTgsIDEwMywgMjgsIDQsIDIwMywgMjgsIDQsIDIyMywgNTEsIDI4LCA0LCAyMjMsIDE4OCwgCi0gICAgMjgsIDQsIDIyNCwgNzQsIDI4LCA0LCAyMjQsIDEsIDI4LCA0LCAyMjQsIDIxLCAyOCwgNCwgMjIzLCAxMTIsIDI4LCA0LCAKLSAgICAyMjMsIDIxLCAyOCwgNCwgMjIyLCAyMDIsIDI4LCA0LCAyMTksIDI3LCAyOCwgNCwgMjIwLCAxMTcsIDI4LCA0LCAyMjIsIAotICAgIDIwMCwgMjgsIDQsIDIyMiwgODksIDI4LCA0LCAyMjIsIDEwMCwgMjgsIDQsIDIxOSwgMjQyLCAyOCwgNCwgMjE4LCAxOTgsIAotICAgIDI4LCA0LCAyMjEsIDI0LCAyOCwgNCwgMjIwLCAxNTAsIDI4LCA0LCAyMjAsIDIxMiwgMjgsIDQsIDIyMSwgMjAsIDI4LCA0LCAKLSAgICAyMjAsIDI0MSwgMjgsIDQsIDIyMCwgMjQzLCAyOCwgNCwgMjIwLCAxODcsIDI4LCA0LCAyMjAsIDEzNCwgMjgsIDQsIDIyNCwgCi0gICAgMjMyLCAyOCwgNCwgMjI0LCAxNzUsIDI4LCA0LCAyMjQsIDE5OCwgMjgsIDQsIDIyNCwgMjMxLCAyOCwgNCwgMjI0LCAyMTIsIAotICAgIDI4LCA0LCAyMjQsIDIxMywgMjgsIDQsIDIyNCwgMTg3LCAyOCwgNCwgMjI0LCAxODYsIDI4LCA0LCAyMjQsIDEzMSwgMjgsIAotICAgIDQsIDIyNCwgMTI3LCAyOCwgNCwgMjI0LCAxMzAsIDI4LCA0LCAyMjQsIDEyOCwgMjgsIDQsIDIyNCwgMTI5LCAyOCwgNCwgCi0gICAgMjI0LCAyMTAsIDI4LCA0LCAyMjQsIDIwNCwgMjgsIDQsIDIyNCwgMjA2LCAyOCwgNCwgMjI0LCAyMDksIDI4LCA0LCAyMjQsIAotICAgIDIwNywgMjgsIDQsIDIyNCwgMjA4LCAyOCwgNCwgMjI0LCAyMDUsIDI4LCA0LCAyMjQsIDIwMywgMjgsIDQsIDIyNCwgMTk5LCAKLSAgICAyOCwgNCwgMjI0LCAyMDIsIDI4LCA0LCAyMjQsIDIwMCwgMjgsIDQsIDIyNCwgMjAxLCAyOCwgNCwgMjUyLCAxMDcsIDI4LCAKLSAgICA0LCAyNTEsIDU0LCAyOCwgNCwgMjUxLCAxODQsIDI4LCA0LCAyNTIsIDEwNiwgMjgsIDQsIDI1MSwgMjQyLCAyOCwgNCwgCi0gICAgMjUxLCAyNTEsIDI4LCA0LCAyNTEsIDEyOCwgMjgsIDQsIDI1MSwgMTIsIDI4LCA0LCAyMTUsIDEsIDI4LCA0LCAyMTQsIDk5LCAKLSAgICAyOCwgNCwgMjE0LCAxNTQsIDI4LCA0LCAyMTUsIDAsIDI4LCA0LCAyMTQsIDIyNywgMjgsIDQsIDIxNCwgMjMyLCAyOCwgNCwgCi0gICAgMjE0LCAxMTksIDI4LCA0LCAyMTQsIDkxLCAyOCwgNCwgMjE4LCA1MiwgMjgsIDQsIDIxNiwgODIsIDI4LCA0LCAyMTcsIDcxLCAKLSAgICAyOCwgNCwgMjE4LCA0OSwgMjgsIDQsIDIxNywgMjE5LCAyOCwgNCwgMjE3LCAyMjksIDI4LCA0LCAxMDgsIDI4LCA0LCAyMTYsIAotICAgIDQ1LCAyOCwgNCwgMjUwLCAyMTksIDI4LCA0LCAyNDksIDUzLCAyOCwgNCwgMjQ5LCAyNDQsIDI4LCA0LCAyNTAsIDIxOCwgCi0gICAgMjgsIDQsIDI1MCwgMTE2LCAyOCwgNCwgMjUwLCAxMjQsIDI4LCA0LCAyNDksIDE3NSwgMjgsIDQsIDI0OSwgMjQsIDI4LCA0LCAKLSAgICAyMTMsIDE1MywgMjgsIDQsIDIxMywgMTI5LCAyOCwgNCwgMjEzLCAxNDUsIDI4LCA0LCAyMTMsIDE1MiwgMjgsIDQsIDIxMywgCi0gICAgMTQ5LCAyOCwgNCwgMjEzLCAxNTAsIDI4LCA0LCAyMTMsIDEzNiwgMjgsIDQsIDIxMywgMTM1LCAyOCwgNCwgMjEzLCAxMjQsIAotICAgIDI4LCA0LCAyMTMsIDEyMCwgMjgsIDQsIDIxMywgMTIzLCAyOCwgNCwgMjEzLCAxMjEsIDI4LCA0LCAyMTMsIDEyMiwgMjgsIAotICAgIDQsIDIwNSwgMjgsIDQsIDIyOCwgOTIsIDI4LCA0LCAyMjksIDY0LCAyOCwgNCwgMjMwLCA0MywgMjgsIDQsIDIyOSwgMTg0LCAKLSAgICAyOCwgNCwgMjI5LCAxODcsIDI4LCA0LCAyMjgsIDE4NSwgMjgsIDQsIDIyOCwgMzEsIDI4LCA0LCAyMjgsIDIzLCAyOCwgNCwgCi0gICAgMjI3LCAyNDcsIDI4LCA0LCAyMjgsIDEwLCAyOCwgNCwgMjI4LCAyMiwgMjgsIDQsIDIyOCwgMTYsIDI4LCA0LCAyMjgsIDE3LCAKLSAgICAyOCwgNCwgMjI3LCAyNTMsIDI4LCA0LCAyMjcsIDIzOSwgMjgsIDQsIDI0MiwgMTU2LCA2MSwgMjgsIDQsIDI0MiwgMTU2LCAKLSAgICA2OSwgMjgsIDQsIDI0MiwgMTU2LCA3MiwgMjgsIDQsIDI0MiwgMTU2LCAyNTQsIDIzMiwgMjgsIDQsIDI0MiwgMTU2LCAyNDUsIAotICAgIDE2NSwgMjgsIDQsIDI0MiwgMTU2LCA3NCwgMjgsIDQsIDI0MiwgMTU2LCA3NSwgMjgsIDQsIDI0MiwgMTU2LCAyMTQsIDQ5LCAKLSAgICAyOCwgNCwgMTgxLCAyOCwgNCwgMjMzLCAyMzgsIDI4LCA0LCAyMzQsIDEwMSwgMjgsIDQsIDIzNSwgMTQsIDI4LCA0LCAyMzQsIAotICAgIDE4NywgMjgsIDQsIDIzNCwgMTg4LCAyOCwgNCwgMjM0LCAzNywgMjgsIDQsIDIzNCwgMzYsIDI4LCA0LCAyMzMsIDIwNCwgCi0gICAgMjgsIDQsIDIzMywgMTk4LCAyOCwgNCwgMjMzLCAyMDMsIDI4LCA0LCAyMzMsIDE5OSwgMjgsIDQsIDIzMywgMjAwLCAyOCwgCi0gICAgNCwgMjMzLCAxOTMsIDI4LCA0LCAyMzMsIDE4NywgMjgsIDQsIDIzMywgMTg5LCAyOCwgNCwgMjMzLCAxOTIsIDI4LCA0LCAKLSAgICAyMzMsIDE5MCwgMjgsIDQsIDIzMywgMTkxLCAyOCwgNCwgMjMzLCAxODgsIDI4LCA0LCAyMzMsIDE4NiwgMjgsIDQsIDIzMywgCi0gICAgMTgyLCAyOCwgNCwgMjMzLCAxODUsIDI4LCA0LCAyMzMsIDE4MywgMjgsIDQsIDIzMywgMTg0LCAyOCwgNCwgMjE0LCA0OSwgCi0gICAgMjgsIDQsIDIxMywgMTgzLCAyOCwgNCwgMjEzLCAyMzUsIDI4LCA0LCAyMTQsIDQ4LCAyOCwgNCwgMjE0LCAxLCAyOCwgNCwgCi0gICAgMjE0LCA2LCAyOCwgNCwgMjEzLCAyMTQsIDI4LCA0LCAyMTMsIDIxMywgMjgsIDQsIDIyNiwgMTUsIDYxLCAyOCwgNCwgMjI2LCAKLSAgICAxNSwgNjksIDI4LCA0LCAyMjYsIDE1LCA3MiwgMjgsIDQsIDIyNiwgMTUsIDI1NCwgMjMyLCAyOCwgNCwgMjI2LCAxNSwgCi0gICAgMjQ1LCAxNjUsIDI4LCA0LCAyMjYsIDE1LCA3NCwgMjgsIDQsIDIyNiwgMTUsIDc1LCAyOCwgNCwgMjEyLCAxMDksIDI4LCA0LCAKLSAgICAyMTIsIDgsIDI4LCA0LCAyMTIsIDM3LCAyOCwgNCwgMjEyLCAxMDgsIDI4LCA0LCAyMTIsIDg1LCAyOCwgNCwgMjEyLCA4NywgCi0gICAgMjgsIDQsIDIxMiwgMTYsIDI4LCA0LCAyMTEsIDI1MSwgMjgsIDQsIDIxMiwgNzUsIDI4LCA0LCAyMTIsIDU1LCAyOCwgNCwgCi0gICAgMjEyLCA2MiwgMjgsIDQsIDIxMiwgNzQsIDI4LCA0LCAyMTIsIDY2LCAyOCwgNCwgMjEyLCA2NywgMjgsIDQsIDIxMiwgNjAsIAotICAgIDI4LCA0LCAyMTIsIDQ2LCAyOCwgNCwgMTg2LCAyOCwgNCwgMjEyLCAyMDMsIDI4LCA0LCAyMTIsIDI1NSwgMjgsIDQsIDIxMywgCi0gICAgOTEsIDI4LCA0LCAyMTMsIDM1LCAyOCwgNCwgMjEzLCAzOCwgMjgsIDQsIDIxMiwgMjM1LCAyOCwgNCwgMjEyLCAyMjYsIDI4LCAKLSAgICA0LCAyNDgsIDE2NCwgMjgsIDQsIDI0NiwgMzMsIDI4LCA0LCAyNDcsIDIxMSwgMjgsIDQsIDI0OCwgMTYzLCAyOCwgNCwgCi0gICAgMjQ4LCAyOCwgMjgsIDQsIDI0OCwgNDEsIDI4LCA0LCAyNDcsIDk5LCAyOCwgNCwgMjQ2LCAyLCAyOCwgNCwgMjQ4LCA4NiwgCi0gICAgMjgsIDQsIDI0OCwgNTEsIDI4LCA0LCAyNDgsIDYzLCAyOCwgNCwgMjQ4LCA4NSwgMjgsIDQsIDI0OCwgNzMsIDI4LCA0LCAKLSAgICAyNDgsIDc0LCAyOCwgNCwgMjQ4LCA1NiwgMjgsIDQsIDI0OCwgNDIsIDI4LCA0LCAyMzUsIDEzOSwgMjgsIDQsIDIzNSwgNTQsIAotICAgIDI4LCA0LCAyMzUsIDExMCwgMjgsIDQsIDIzNSwgMTM4LCAyOCwgNCwgMjM1LCAxMjUsIDI4LCA0LCAyMzUsIDEyNywgMjgsIAotICAgIDQsIDIzNSwgNzEsIDI4LCA0LCAyMzUsIDM1LCAyOCwgNCwgMjQzLCAxMTAsIDI4LCA0LCAyNDIsIDkyLCAyOCwgNCwgMjQyLCAKLSAgICAxOTAsIDI4LCA0LCAyNDMsIDEwNywgMjgsIDQsIDI0MywgMzEsIDI4LCA0LCAyNDMsIDM4LCAyOCwgNCwgMjQyLCAxNTAsIAotICAgIDI4LCA0LCAyNDIsIDE0OSwgMjgsIDQsIDI0MiwgNTksIDI4LCA0LCAyNDIsIDU1LCAyOCwgNCwgMjQyLCA1OCwgMjgsIDQsIAotICAgIDI0MiwgNTYsIDI4LCA0LCAyNDIsIDU3LCAyOCwgNCwgMjQzLCA1LCAyOCwgNCwgMjQyLCAyNDEsIDI4LCA0LCAyNDIsIDI1MSwgCi0gICAgMjgsIDQsIDI0MywgNCwgMjgsIDQsIDI0MiwgMjU1LCAyOCwgNCwgMjQzLCAwLCAyOCwgNCwgMjQyLCAyNDUsIDI4LCA0LCAKLSAgICAyNDIsIDIzMCwgMjgsIDQsIDIxNywgMTYxLCAyOCwgNCwgMjE3LCA5MCwgMjgsIDQsIDIxNywgMTI4LCAyOCwgNCwgMjE3LCAKLSAgICAxNjAsIDI4LCA0LCAyMTcsIDE0NywgMjgsIDQsIDIxNywgMTQ4LCAyOCwgNCwgMjE3LCAxMDksIDI4LCA0LCAyMTcsIDgyLCAKLSAgICAyOCwgNCwgMjUwLCA5MiwgMjgsIDQsIDI1MCwgNiwgMjgsIDQsIDI1MCwgNDcsIDI4LCA0LCAyNTAsIDkxLCAyOCwgNCwgCi0gICAgMjUwLCA2NCwgMjgsIDQsIDI1MCwgNjcsIDI4LCA0LCAyNTAsIDIzLCAyOCwgNCwgMjQ5LCAyNTEsIDI4LCA0LCAyMjYsIDIzLCAKLSAgICAyOCwgNCwgMjI1LCAyNDYsIDI4LCA0LCAyMjYsIDksIDI4LCA0LCAyMjYsIDIyLCAyOCwgNCwgMjI2LCAxMSwgMjgsIDQsIAotICAgIDIyNiwgMTIsIDI4LCA0LCAyMjUsIDI1MywgMjgsIDQsIDIyNSwgMjQyLCAyOCwgNCwgMjE2LCAxNDEsIDI4LCA0LCAyMTYsIAotICAgIDEyMiwgMjgsIDQsIDIxNiwgMTI1LCAyOCwgNCwgMjE2LCAxNDAsIDI4LCA0LCAyMTYsIDEzNSwgMjgsIDQsIDIxNiwgMTM2LCAKLSAgICAyOCwgNCwgMjE2LCAxMjQsIDI4LCA0LCAyMTYsIDEyMCwgMjgsIDQsIDIxNiwgNSwgMjgsIDQsIDIxNSwgMjUzLCAyOCwgNCwgCi0gICAgMjE2LCAxLCAyOCwgNCwgMjE2LCA0LCAyOCwgNCwgMjE2LCAyLCAyOCwgNCwgMjE2LCAzLCAyOCwgNCwgMjE1LCAyNTUsIDI4LCAKLSAgICA0LCAyMTUsIDI1NCwgMjgsIDQsIDI0NCwgMTY0LCAyOCwgNCwgMjQzLCAyMDUsIDI4LCA0LCAyNDQsIDkwLCAyOCwgNCwgCi0gICAgMjQ0LCAxNjMsIDI4LCA0LCAyNDQsIDExNiwgMjgsIDQsIDI0NCwgMTIzLCAyOCwgNCwgMjQ0LCAxMiwgMjgsIDQsIDI0MywgCi0gICAgMTg4LCAyOCwgNCwgMTkzLCAyOCwgNCwgMjI1LCAzNSwgMjgsIDQsIDIyNSwgMjQwLCAyOCwgNCwgMjI2LCAyMTMsIDI4LCA0LCAKLSAgICAyMjYsIDg2LCAyOCwgNCwgMjI2LCA5NiwgMjgsIDQsIDIyNSwgMTUwLCAyOCwgNCwgMjI1LCAyLCAyOCwgNCwgMjIzLCAxMSwgCi0gICAgMjgsIDQsIDIzMCwgMTAzLCAyOCwgNCwgMjQzLCAxODIsIDI4LCAzNywgMjQzLCAyOSwgMjQsIDMwLCAyMzMsIDQ3LCA3NywgCi0gICAgMjgsIDM3LCAzMCwgMjMzLCA0NywgNzcsIDI4LCAzNywgMjQzLCAyOSwgNzcsIDI4LCAyMjIsIDkyLCA3NywgMjgsIDIxMywgCi0gICAgMTk1LCAyOCwgMjQzLCAyMDAsIDIxOSwgNjksIDI4LCAyNDksIDE1NywgMjgsIDIyMSwgNzAsIDI4LCAyNDksIDE2NCwgMjgsIAotICAgIDIyNSwgNzksIDI0OSwgMTY0LCAyOCwgMjI0LCAxNTgsIDc3LCAyOCwgMjI2LCAxNDMsIDIyMSwgNTcsIDI4LCAyMSwgMTE2LCAKLSAgICAyOCwgMjEsIDEwOSwgMjgsIDIxLCAxNjYsIDI4LCAyMSwgMTYzLCAyOCwgMjEsIDE4MCwgMjgsIDIxLCAxODksIDI4LCAyMSwgCi0gICAgMTk4LCAyOCwgMjEsIDE5NSwgMjgsIDIxLCAyMDAsIDI4LCA1MCwgMjE3LCAyMDAsIDI4LCA1MCwgMjE2LCAzOCwgMjgsIDUwLCAKLSAgICAyMTcsIDExNSwgMjgsIDUwLCAyNDMsIDI0MCwgMjgsIDUwLCAyNDQsIDgzLCAyOCwgNTAsIDIyMCwgMzksIDI4LCA1MCwgCi0gICAgMjIxLCAzNywgMjgsIDUwLCAyNDUsIDE0MSwgMjgsIDUwLCAyMjksIDI2LCAyOCwgNTAsIDI0MCwgMjAwLCAyOCwgNTAsIAotICAgIDIxNywgMjAxLCAyMTcsIDEwMCwgMjgsIDQsIDIyMiwgOTYsIDIzMCwgMTE0LCAyOCwgNCwgMjMwLCAxMTAsIDI4LCA0LCAKLSAgICAyMzAsIDExMSwgMjgsIDQsIDIzMCwgMTEyLCAyOCwgNCwgMjIyLCA5NiwgMjUxLCAxMiwgMjgsIDQsIDI1MSwgOSwgMjgsIDQsIAotICAgIDI1MSwgMTAsIDI4LCA0LCAyNTEsIDExLCAyOCwgNCwgMjIyLCA5NiwgMjQzLCAxODgsIDI4LCA0LCAyNDMsIDE4NCwgMjgsIAotICAgIDQsIDI0MywgMTg1LCAyOCwgNCwgMjQzLCAxODYsIDI4LCA0LCAyMjIsIDk2LCAyMjUsIDIsIDI4LCA0LCAyMjQsIDI1NCwgCi0gICAgMjgsIDQsIDIyNCwgMjU1LCAyOCwgNCwgMjI1LCAwLCAyOCwgMjE2LCAyNDIsIDE1MiwgMjEyLCAyMzgsIDI4LCAyMTYsIAotICAgIDI0MiwgMTUyLCAyNDcsIDI0OCwgMjgsIDIxNiwgMjQyLCAxNTIsIDIyMywgMTM1LCAyOCwgMjE2LCAyNDIsIDE1MiwgMjIwLCAKLSAgICAxNzUsIDIyMywgMTM1LCAyOCwgMjE2LCAyNDIsIDE1MiwgMjQ3LCAxODcsIDI4LCAyMTYsIDI0MiwgMTUyLCAyMzQsIDE3MCwgCi0gICAgMjgsIDIxNiwgMjQyLCAxNTIsIDI1MCwgMzEsIDI4LCAyMTYsIDI0MiwgMTUyLCAyNDEsIDE2MiwgMjgsIDIxNiwgMjQyLCAKLSAgICAxNTIsIDI0NywgMjQ3LCAyOCwgMjE2LCAyNDIsIDE1MiwgMjMzLCAyMTUsIDE1OCwgMSwgNjEsIDE1OCwgMSwgNzQsIDE1OCwgCi0gICAgMSwgNzIsIDE1OCwgMSwgNzUsIDE1OCwgMSwgNjksIDE1OCwgMSwgMjE1LCA3OSwgMTU4LCAxLCAyNDMsIDExMCwgMTU4LCAxLCAKLSAgICAxODEsIDE1OCwgMSwgMjQzLCAzOCwgMTU4LCAxLCAyNDIsIDE5MCwgMTU4LCAxLCAyNDIsIDE1MCwgMTU4LCAxLCAyNDIsIAotICAgIDkyLCAxNTgsIDEsIDI0MiwgNjAsIDE1OCwgMSwgMTU5LCAxNTgsIDEsIDI0MSwgMjIyLCAxNTgsIDEsIDI0MSwgMTY1LCAKLSAgICAxNTgsIDEsIDI0MSwgNTQsIDE1OCwgMSwgMjQwLCAyMTIsIDE1OCwgMSwgMjQwLCAxOTMsIDE1OCwgMSwgMjMzLCAxNTcsIAotICAgIDE1OCwgMSwgMjMzLCA4MiwgMTU4LCAxLCAyMzMsIDEzLCAxNTgsIDEsIDIzMiwgMjA4LCAxNTgsIDEsIDIzMiwgMTU2LCAKLSAgICAxNTgsIDEsIDIzMiwgMTMwLCAxNTgsIDEsIDE4OCwgMTU4LCAxLCAyMzEsIDE1NiwgMTU4LCAxLCAyMzEsIDQyLCAxNTgsIDEsIAotICAgIDIzMCwgMjMxLCAxNTgsIDEsIDIzMCwgMTcyLCAxNTgsIDEsIDIwNSwgMTU4LCAxLCAyNDEsIDc2LCAxNTgsIDEsIDIzMCwgCi0gICAgMzEsIDE1OCwgMSwgMjI5LCAxODcsIDE1OCwgMSwgMjI5LCA2NCwgMTU4LCAxLCAyMjgsIDE4NSwgMTU4LCAxLCAyMjgsIDkyLCAKLSAgICAxNTgsIDEsIDIyOCwgMzMsIDE1OCwgMSwgMjI0LCAxNzQsIDE1OCwgMSwgMjI0LCAxNjEsIDE1OCwgMSwgMjI0LCAxNTQsIAotICAgIDE1OCwgMSwgMjI0LCAxNDYsIDE1OCwgMSwgMjI0LCAxMzUsIDE1OCwgMSwgMjI0LCAxMzMsIDE1OCwgMSwgMjIyLCAyMDIsIAotICAgIDE1OCwgMSwgMTk3LCAxNTgsIDEsIDIyMiwgMTAwLCAxNTgsIDEsIDIyMCwgMTE3LCAxNTgsIDEsIDIxOSwgMjQyLCAxNTgsIAotICAgIDEsIDIxOSwgMjcsIDE1OCwgMSwgMjE4LCAyMDMsIDE1OCwgMSwgMjQ4LCAxNjQsIDE1OCwgMSwgMjE4LCA1MiwgMTU4LCAxLCAKLSAgICAyNDgsIDQxLCAxNTgsIDEsIDIxNywgMjI5LCAxNTgsIDEsIDI0NywgMjExLCAxNTgsIDEsIDIxNywgNzEsIDE1OCwgMSwgCi0gICAgMjQ3LCA5OSwgMTU4LCAxLCAyNDYsIDMzLCAxNTgsIDEsIDI0NiwgNSwgMTU4LCAxLCAyNDcsIDEwOCwgMTU4LCAxLCAyMTcsIAotICAgIDEyLCAxNTgsIDEsIDIxNywgMTEsIDE1OCwgMSwgMjE3LCAxLCAxNTgsIDEsIDIxNywgMCwgMTU4LCAxLCAyMTYsIDI1NSwgCi0gICAgMTU4LCAxLCAyMTYsIDI1NCwgMTU4LCAxLCAyMTYsIDE0MSwgMTU4LCAxLCAyMTYsIDEzNiwgMTU4LCAxLCAyMTYsIDEyNSwgCi0gICAgMTU4LCAxLCAyMTYsIDEyNCwgMTU4LCAxLCAyMTYsIDEyMiwgMTU4LCAxLCAyMTYsIDEyMSwgMTU4LCAxLCAyMTQsIDQ5LCAKLSAgICAxNTgsIDEsIDIxNCwgNiwgMTU4LCAxLCAyMTMsIDIzNSwgMTU4LCAxLCAyMTMsIDIxNCwgMTU4LCAxLCAyMTMsIDE4MywgCi0gICAgMTU4LCAxLCAyMTMsIDE3MSwgMTU4LCAxLCAxODYsIDE1OCwgMSwgMjEzLCAzOCwgMTU4LCAxLCAyMTIsIDI1NSwgMTU4LCAxLCAKLSAgICAyMTIsIDIzNSwgMTU4LCAxLCAyMTIsIDIwMywgMTU4LCAxLCAyMTIsIDE2OSwgMTgsIDE5LCAyNDAsIDE2MCwgMTgsIDE5LCAKLSAgICA3NCwgMTgsIDE5LCAyNTQsIDE5NiwgMTgsIDE5LCA3MiwgMTgsIDE5LCAyMzYsIDI4LCAxOCwgMTksIDc1LCAxOCwgMTksIAotICAgIDIyNywgNDksIDE4LCAxOSwgMjEzLCAxMDQsIDIyNywgNDksIDE4LCAxOSwgNjYsIDI0NSwgMTY1LCAxOCwgMTksIDY2LCA3MiwgCi0gICAgMTgsIDE5LCA2MSwgMTgsIDE5LCAyNTQsIDIzMiwgMTgsIDE5LCAyMTQsIDYsIDE4LCAxOSwgMTQ4LCAyMTQsIDYsIDE4LCAKLSAgICAxOSwgMjEzLCAyMzUsIDE4LCAxOSwgMTQ4LCAyMTMsIDIzNSwgMTgsIDE5LCAyMTMsIDIyNywgMTgsIDE5LCAxNDgsIDIxMywgCi0gICAgMjI3LCAxOCwgMTksIDIxMywgMjE0LCAxOCwgMTksIDE0OCwgMjEzLCAyMTQsIDE4LCAxOSwgMjEzLCAyMDIsIDE4LCAxOSwgCi0gICAgMTQ4LCAyMTMsIDIwMiwgMTgsIDE5LCAyMzAsIDExLCAyMTMsIDIwMiwgMTgsIDE5LCAyMTQsIDQ5LCAxOCwgMTksIDE0OCwgCi0gICAgMjE0LCA0OSwgMTgsIDE5LCAyMTQsIDQ4LCAxOCwgMTksIDE0OCwgMjE0LCA0OCwgMTgsIDE5LCAyMzAsIDExLCAyMTQsIDQ4LCAKLSAgICAxOCwgMTksIDI1NCwgMTA4LCAxOCwgMTksIDIxMywgMTA0LCAyMTQsIDgyLCAxOCwgMTksIDI0MiwgMTU2LCAyMTksIDY5LCAKLSAgICAxOCwgMTksIDQwLCAxNzksIDE4LCAxOSwgNDAsIDI0MiwgMTEzLCAxOCwgMTksIDQwLCAyNTEsIDEwMSwgMTUxLCAyMjMsIAotICAgIDEzMCwgMTgsIDE5LCA0MCwgMjE2LCAyMjcsIDE1MSwgMjIzLCAxMzAsIDE4LCAxOSwgNDAsIDQ2LCAxNTEsIDIyMywgMTMwLCAKLSAgICAxOCwgMTksIDQwLCAyMjMsIDEzMCwgMTgsIDE5LCA0MCwgNTEsIDE3OSwgMTgsIDE5LCA0MCwgNTEsIDIyMCwgMTc1LCA3MSwgCi0gICAgMjE5LCAzMiwgMTgsIDE5LCA0MCwgMjMxLCAzNywgMjQ3LCA3NCwgMTgsIDE5LCA0MCwgMjIwLCAxNzUsIDE5OSwgOTAsIDE4LCAKLSAgICAxOSwgNDAsIDIyNSwgMTU2LCAxOCwgMTksIDQwLCAxMTksIDIxOCwgMzYsIDE4LCAxOSwgMjQ1LCAxMDgsIDE4LCAxOSwgCi0gICAgMjM1LCAyNTEsIDE4LCAxOSwgMjI3LCA2MiwgMTgsIDE5LCAyNTQsIDMyLCAxOCwgMTksIDIyNiwgOTYsIDE4LCAxOSwgMjI2LCAKLSAgICAyMTEsIDE4LCAxOSwgMjI1LCAyNDAsIDE4LCAxOSwgMjI1LCAyMDMsIDE4LCAxOSwgMjI1LCAxNTAsIDE4LCAxOSwgMjI1LCAKLSAgICAxMjksIDE4LCAxOSwgMjEzLCAxMDQsIDIyNSwgMTI5LCAxOCwgMTksIDY2LCAyNDEsIDIwNCwgMTgsIDE5LCA2NiwgMjQxLCAKLSAgICAxNjUsIDE4LCAxOSwgMTkzLCAxOCwgMTksIDIyNiwgMjEzLCAxOCwgMTksIDIyNSwgMCwgMTgsIDE5LCAxNDgsIDIyNSwgMCwgCi0gICAgMTgsIDE5LCAyMjQsIDI1NCwgMTgsIDE5LCAxNDgsIDIyNCwgMjU0LCAxOCwgMTksIDIyNCwgMjUzLCAxOCwgMTksIDE0OCwgCi0gICAgMjI0LCAyNTMsIDE4LCAxOSwgMjI0LCAyNTEsIDE4LCAxOSwgMTQ4LCAyMjQsIDI1MSwgMTgsIDE5LCAyMjQsIDI1MCwgMTgsIAotICAgIDE5LCAxNDgsIDIyNCwgMjUwLCAxOCwgMTksIDIyNSwgMiwgMTgsIDE5LCAxNDgsIDIyNSwgMiwgMTgsIDE5LCAyMjUsIDEsIAotICAgIDE4LCAxOSwgMTQ4LCAyMjUsIDEsIDE4LCAxOSwgMjEzLCAxMDQsIDIyNSwgMSwgMTgsIDE5LCAyMjYsIDIyOSwgMTgsIDE5LCAKLSAgICAxNDgsIDIyNiwgMjI5LCAxOCwgMTksIDY2LCAyNDIsIDQxLCAxOCwgMTksIDIxNywgMjI5LCAxOCwgMTksIDIxOCwgNDcsIAotICAgIDE4LCAxOSwgMjE3LCA3MSwgMTgsIDE5LCAyMTcsIDU3LCAxOCwgMTksIDEwOCwgMTgsIDE5LCAyMTYsIDIzMCwgMTgsIDE5LCAKLSAgICAyMTMsIDEwNCwgMjE2LCAyMzAsIDE4LCAxOSwgNjYsIDI0OCwgMjgsIDE4LCAxOSwgNjYsIDI0NywgMjExLCAxOCwgMTksIAotICAgIDIxOCwgNTIsIDE4LCAxOSwgMjE4LCA0OSwgMTgsIDE5LCAyMTYsIDQzLCAxOCwgMTksIDE0OCwgMjE2LCA0MywgMTgsIDE5LCAKLSAgICAyMTYsIDI3LCAxOCwgMTksIDE0OCwgMjE2LCAyNywgMTgsIDE5LCAyMTYsIDI2LCAxOCwgMTksIDE0OCwgMjE2LCAyNiwgMTgsIAotICAgIDE5LCAxMDksIDE4LCAxOSwgMTQ4LCAxMDksIDE4LCAxOSwgMjE2LCAyMCwgMTgsIDE5LCAxNDgsIDIxNiwgMjAsIDE4LCAxOSwgCi0gICAgMjE2LCA0NSwgMTgsIDE5LCAxNDgsIDIxNiwgNDUsIDE4LCAxOSwgMjE2LCA0NCwgMTgsIDE5LCAxNDgsIDIxNiwgNDQsIDE4LCAKLSAgICAxOSwgMjMwLCAxMSwgMjE2LCA0NCwgMTgsIDE5LCAyMTgsIDk5LCAxOCwgMTksIDIxNiwgMTEyLCAxOCwgMTksIDIxNiwgOTYsIAotICAgIDE4LCAxOSwgMjE2LCA5NSwgMTgsIDE5LCAyMTYsIDExNSwgMTgsIDE5LCAyMzQsIDE4OCwgMTgsIDE5LCAyMzUsIDExLCAxOCwgCi0gICAgMTksIDIzNCwgMTAxLCAxOCwgMTksIDIzNCwgOTIsIDE4LCAxOSwgMjM0LCAzNywgMTgsIDE5LCAyMzQsIDE5LCAxOCwgMTksIAotICAgIDIxMywgMTA0LCAyMzQsIDE5LCAxOCwgMTksIDE4MSwgMTgsIDE5LCAyMzUsIDE0LCAxOCwgMTksIDIzMywgMjAwLCAxOCwgCi0gICAgMTksIDE0OCwgMjMzLCAyMDAsIDE4LCAxOSwgMjMzLCAxOTgsIDE4LCAxOSwgMTQ4LCAyMzMsIDE5OCwgMTgsIDE5LCAyMzMsIAotICAgIDE5NywgMTgsIDE5LCAxNDgsIDIzMywgMTk3LCAxOCwgMTksIDIzMywgMTk2LCAxOCwgMTksIDE0OCwgMjMzLCAxOTYsIDE4LCAKLSAgICAxOSwgMjMzLCAxOTUsIDE4LCAxOSwgMTQ4LCAyMzMsIDE5NSwgMTgsIDE5LCAyMzMsIDIwNCwgMTgsIDE5LCAxNDgsIDIzMywgCi0gICAgMjA0LCAxOCwgMTksIDIzMywgMjAzLCAxOCwgMTksIDE0OCwgMjMzLCAyMDMsIDE4LCAxOSwgMjMwLCAxMSwgMjMzLCAyMDMsIAotICAgIDE4LCAxOSwgMjM1LCAyNywgMTgsIDE5LCAyMzMsIDIwNSwgMTgsIDE5LCAyMTksIDIxNCwgMjM0LCAxODIsIDE4LCAxOSwgCi0gICAgMjE5LCAyMTQsIDIzNCwgOTMsIDE4LCAxOSwgMjE5LCAyMTQsIDIzNCwgMzIsIDE4LCAxOSwgMjE5LCAyMTQsIDIzNCwgMjUyLCAKLSAgICAxOCwgMTksIDI1MCwgMTI0LCAxOCwgMTksIDI1MCwgMjE3LCAxOCwgMTksIDI0OSwgMjQ0LCAxOCwgMTksIDI0OSwgMjM0LCAKLSAgICAxOCwgMTksIDI0OSwgMTc1LCAxOCwgMTksIDI0OSwgMTEzLCAxOCwgMTksIDIxMywgMTA0LCAyNDksIDExMywgMTgsIDE5LCAKLSAgICAyNTAsIDIxOSwgMTgsIDE5LCAyNTAsIDIxOCwgMTgsIDE5LCAyNDksIDIyLCAxOCwgMTksIDE0OCwgMjQ5LCAyMiwgMTgsIAotICAgIDE5LCAyNDksIDIwLCAxOCwgMTksIDE0OCwgMjQ5LCAyMCwgMTgsIDE5LCAyNDksIDE5LCAxOCwgMTksIDE0OCwgMjQ5LCAxOSwgCi0gICAgMTgsIDE5LCAyNDksIDE4LCAxOCwgMTksIDE0OCwgMjQ5LCAxOCwgMTgsIDE5LCAyNDksIDE3LCAxOCwgMTksIDE0OCwgMjQ5LCAKLSAgICAxNywgMTgsIDE5LCAyNDksIDI0LCAxOCwgMTksIDE0OCwgMjQ5LCAyNCwgMTgsIDE5LCAyNDksIDIzLCAxOCwgMTksIDE0OCwgCi0gICAgMjQ5LCAyMywgMTgsIDE5LCAyMzAsIDExLCAyNDksIDIzLCAxOCwgMTksIDI1MCwgMjUyLCAxOCwgMTksIDIyMiwgMTI3LCAKLSAgICAyMTcsIDE2MywgMTgsIDE5LCAyMzEsIDE1NiwgMTgsIDE5LCAyMzIsIDQwLCAxOCwgMTksIDIzMSwgNDIsIDE4LCAxOSwgCi0gICAgMjMxLCAxNCwgMTgsIDE5LCAyMzAsIDIzMSwgMTgsIDE5LCAyMzAsIDIwMiwgMTgsIDE5LCAyMTMsIDEwNCwgMjMwLCAyMDIsIAotICAgIDE4LCAxOSwgMTg4LCAxOCwgMTksIDIzMiwgNDEsIDE4LCAxOSwgMjMwLCAxMTIsIDE4LCAxOSwgMTQ4LCAyMzAsIDExMiwgCi0gICAgMTgsIDE5LCAyMzAsIDExMCwgMTgsIDE5LCAxNDgsIDIzMCwgMTEwLCAxOCwgMTksIDIzMCwgMTA5LCAxOCwgMTksIDE0OCwgCi0gICAgMjMwLCAxMDksIDE4LCAxOSwgMjMwLCAxMDgsIDE4LCAxOSwgMTQ4LCAyMzAsIDEwOCwgMTgsIDE5LCAyMzAsIDEwNywgMTgsIAotICAgIDE5LCAxNDgsIDIzMCwgMTA3LCAxOCwgMTksIDIzMCwgMTE0LCAxOCwgMTksIDE0OCwgMjMwLCAxMTQsIDE4LCAxOSwgMjMwLCAKLSAgICAxMTMsIDE4LCAxOSwgMTQ4LCAyMzAsIDExMywgMTgsIDE5LCAyMzAsIDExLCAyMzAsIDExMywgMTgsIDE5LCAxODMsIDE4LCAKLSAgICAxOSwgMTQ4LCAxODMsIDE4LCAxOSwgMjMxLCA0NSwgMTgsIDE5LCAyNTMsIDEyMSwgMTgzLCAxOCwgMTksIDIyMiwgMTI3LCAKLSAgICAxODMsIDE4LCAxOSwgMjI5LCAxODcsIDE4LCAxOSwgMjMwLCA0MiwgMTgsIDE5LCAyMjksIDY0LCAxOCwgMTksIDIyOSwgMzksIAotICAgIDE4LCAxOSwgMjI4LCAxODUsIDE4LCAxOSwgMjI4LCAxNzUsIDE4LCAxOSwgMjEzLCAxMDQsIDIyOCwgMTc1LCAxOCwgMTksIAotICAgIDIwNSwgMTgsIDE5LCAyMzAsIDQzLCAxOCwgMTksIDIyOCwgMjksIDE4LCAxOSwgMTQ4LCAyMjgsIDI5LCAxOCwgMTksIDIyOCwgCi0gICAgMzEsIDE4LCAxOSwgMTQ4LCAyMjgsIDMxLCAxOCwgMTksIDIyOCwgMzAsIDE4LCAxOSwgMTQ4LCAyMjgsIDMwLCAxOCwgMTksIAotICAgIDIzMCwgMTEsIDIyOCwgMzAsIDE4LCAxOSwgMjA0LCAxOCwgMTksIDY2LCAyMjksIDE2MSwgMTgsIDE5LCAyMjksIDY5LCAxOCwgCi0gICAgMTksIDIzMywgODIsIDE4LCAxOSwgMjMzLCAxNTUsIDE4LCAxOSwgMjMzLCAxMywgMTgsIDE5LCAyMzIsIDI1NSwgMTgsIDE5LCAKLSAgICAyMzIsIDIwOCwgMTgsIDE5LCAyMzIsIDE4MCwgMTgsIDE5LCAyMTMsIDEwNCwgMjMyLCAxODAsIDE4LCAxOSwgMjMzLCAxNTcsIAotICAgIDE4LCAxOSwgMjMzLCAxNTYsIDE4LCAxOSwgMjMyLCAxMjcsIDE4LCAxOSwgMTQ4LCAyMzIsIDEyNywgMTgsIDE5LCAyMzIsIAotICAgIDEyNiwgMTgsIDE5LCAxNDgsIDIzMiwgMTI2LCAxOCwgMTksIDIzMiwgMTI1LCAxOCwgMTksIDE0OCwgMjMyLCAxMjUsIDE4LCAKLSAgICAxOSwgMjMyLCAxMjQsIDE4LCAxOSwgMTQ4LCAyMzIsIDEyNCwgMTgsIDE5LCAyMzIsIDEyMywgMTgsIDE5LCAxNDgsIDIzMiwgCi0gICAgMTIzLCAxOCwgMTksIDIzMiwgMTI5LCAxOCwgMTksIDE0OCwgMjMyLCAxMjksIDE4LCAxOSwgMjMyLCAxMjgsIDE4LCAxOSwgCi0gICAgMTQ4LCAyMzIsIDEyOCwgMTgsIDE5LCAxNTAsIDE4LCAxOSwgMTQ4LCAxNTAsIDE4LCAxOSwgMTM4LCAxNTAsIDE4LCAxOSwgCi0gICAgMjIyLCAxMDAsIDE4LCAxOSwgMjIyLCAxOTgsIDE4LCAxOSwgMjIwLCAxMTcsIDE4LCAxOSwgMjIwLCAxMDEsIDE4LCAxOSwgCi0gICAgMjE5LCAyNDIsIDE4LCAxOSwgMjE5LCAyMjYsIDE4LCAxOSwgMjEzLCAxMDQsIDIxOSwgMjI2LCAxOCwgMTksIDIyMiwgMjAyLCAKLSAgICAxOCwgMTksIDIyMiwgMjAwLCAxOCwgMTksIDIxOCwgMTk0LCAxOCwgMTksIDE0OCwgMjE4LCAxOTQsIDE4LCAxOSwgMjE4LCAKLSAgICAxODgsIDE4LCAxOSwgMTQ4LCAyMTgsIDE4OCwgMTgsIDE5LCAyMTgsIDE4NywgMTgsIDE5LCAxNDgsIDIxOCwgMTg3LCAxOCwgCi0gICAgMTksIDIxOCwgMTgzLCAxOCwgMTksIDE0OCwgMjE4LCAxODMsIDE4LCAxOSwgMjE4LCAxODIsIDE4LCAxOSwgMTQ4LCAyMTgsIAotICAgIDE4MiwgMTgsIDE5LCAyMTgsIDE5OCwgMTgsIDE5LCAxNDgsIDIxOCwgMTk4LCAxOCwgMTksIDIxOCwgMTk3LCAxOCwgMTksIAotICAgIDE0OCwgMjE4LCAxOTcsIDE4LCAxOSwgMjMwLCAxMSwgMjE4LCAxOTcsIDE4LCAxOSwgMTk3LCAxOCwgMTksIDI1MywgMTIxLCAKLSAgICAxOTcsIDE4LCAxOSwgMjE4LCAxOTksIDE4LCAxOSwgMjUxLCAxNDEsIDE5NywgMTgsIDE5LCAyMzAsIDE5NywgMjIwLCAzNiwgCi0gICAgMTgsIDE5LCAyMzAsIDExLCAyMjAsIDI3LCAxOCwgMTksIDIzMCwgMTEsIDIyMywgMiwgMTgsIDE5LCAyMzAsIDExLCAyMTksIAotICAgIDE2NywgMTgsIDE5LCAyMzAsIDExLCAyMTksIDI5LCAxOCwgMTksIDIzMCwgMTEsIDIyMCwgMjYsIDE4LCAxOSwgMjMwLCAxMSwgCi0gICAgMjIyLCAxMDMsIDE4LCAxOSwgMjIwLCAyNDMsIDE4LCAxOSwgMjIwLCAyMTIsIDE4LCAxOSwgMjIwLCAyMDcsIDE4LCAxOSwgCi0gICAgMjIwLCAxODcsIDE4LCAxOSwgMjIwLCAxODEsIDE4LCAxOSwgMjIxLCAyNCwgMTgsIDE5LCAyMjEsIDIwLCAxOCwgMTksIAotICAgIDIyMCwgMTMyLCAxOCwgMTksIDE0OCwgMjIwLCAxMzIsIDE4LCAxOSwgMjIwLCAxMzEsIDE4LCAxOSwgMTQ4LCAyMjAsIDEzMSwgCi0gICAgMTgsIDE5LCAyMjAsIDEzMCwgMTgsIDE5LCAxNDgsIDIyMCwgMTMwLCAxOCwgMTksIDIyMCwgMTI5LCAxOCwgMTksIDE0OCwgCi0gICAgMjIwLCAxMjksIDE4LCAxOSwgMjIwLCAxMjgsIDE4LCAxOSwgMTQ4LCAyMjAsIDEyOCwgMTgsIDE5LCAyMjAsIDEzNCwgMTgsIAotICAgIDE5LCAxNDgsIDIyMCwgMTM0LCAxOCwgMTksIDIyMCwgMTMzLCAxOCwgMTksIDE0OCwgMjIwLCAxMzMsIDE4LCAxOSwgMjIxLCAKLSAgICAyNiwgMTgsIDE5LCAyMTMsIDM4LCAxOCwgMTksIDIxMywgODksIDE4LCAxOSwgMjEyLCAyNTUsIDE4LCAxOSwgMjEyLCAyNDYsIAotICAgIDE4LCAxOSwgMjEyLCAyMzUsIDE4LCAxOSwgMjEyLCAyMjAsIDE4LCAxOSwgMjEzLCAxMDQsIDIxMiwgMjIwLCAxOCwgMTksIAotICAgIDE4NiwgMTgsIDE5LCAyMTMsIDkxLCAxOCwgMTksIDIxMiwgMTY2LCAxOCwgMTksIDE0OCwgMjEyLCAxNjYsIDE4LCAxOSwgCi0gICAgMjEyLCAxNjUsIDE4LCAxOSwgMTQ4LCAyMTIsIDE2NSwgMTgsIDE5LCAyMTIsIDE2NCwgMTgsIDE5LCAxNDgsIDIxMiwgMTY0LCAKLSAgICAxOCwgMTksIDIxMiwgMTYzLCAxOCwgMTksIDE0OCwgMjEyLCAxNjMsIDE4LCAxOSwgMjEyLCAxNjIsIDE4LCAxOSwgMTQ4LCAKLSAgICAyMTIsIDE2MiwgMTgsIDE5LCAyMTIsIDE2OCwgMTgsIDE5LCAxNDgsIDIxMiwgMTY4LCAxOCwgMTksIDIxMiwgMTY3LCAxOCwgCi0gICAgMTksIDE0OCwgMjEyLCAxNjcsIDE4LCAxOSwgMjMwLCAxMSwgMjEyLCAxNjcsIDE4LCAxOSwgMjEzLCAxMDUsIDE4LCAxOSwgCi0gICAgMjUxLCAxODIsIDIxMywgMTA1LCAxOCwgMTksIDE0OCwgMjEzLCAxMDUsIDE4LCAxOSwgMjIyLCAxMjcsIDIxMiwgMjU1LCAKLSAgICAxOCwgMTksIDIyNCwgMjEsIDE4LCAxOSwgMjI0LCAxMTIsIDIyNCwgMjEsIDE4LCAxOSwgMTQ4LCAyMzMsIDgyLCAxOCwgMTksIAotICAgIDIyNCwgNzMsIDE4LCAxOSwgMjIzLCAxODgsIDE4LCAxOSwgMjIzLCAxMzYsIDE4LCAxOSwgMjIzLCAxMTIsIDE4LCAxOSwgCi0gICAgMjIzLCA5OSwgMTgsIDE5LCAxNDgsIDIzMiwgMjA4LCAxOCwgMTksIDIwMywgMTgsIDE5LCAyMjQsIDc0LCAxOCwgMTksIAotICAgIDE0OCwgMjMzLCAxNTcsIDE4LCAxOSwgMjIzLCAyMCwgMTgsIDE5LCAxNDgsIDIyMywgMjAsIDE4LCAxOSwgMTQ5LCAxOCwgCi0gICAgMTksIDE0OCwgMTQ5LCAxOCwgMTksIDEzOCwgMTQ5LCAxOCwgMTksIDI0NCwgMTIzLCAxOCwgMTksIDI0NCwgMTYxLCAxOCwgCi0gICAgMTksIDI0NCwgOTAsIDE4LCAxOSwgMjQ0LCA3NywgMTgsIDE5LCAyNDQsIDEyLCAxOCwgMTksIDI0NCwgMywgMTgsIDE5LCAKLSAgICAyNDQsIDE2NCwgMTgsIDE5LCAyNDQsIDE2MywgMTgsIDE5LCAyNDMsIDE4NywgMTgsIDE5LCAxNDgsIDI0MywgMTg3LCAxOCwgCi0gICAgMTksIDI0NCwgMjMwLCAxOCwgMTksIDIxNywgMTQ4LCAxOCwgMTksIDIzMCwgOTYsIDIxNywgMTQ4LCAxOCwgMTksIDIxNywgCi0gICAgMTI4LCAxOCwgMTksIDIzMCwgOTYsIDIxNywgMTI4LCAxOCwgMTksIDIxNywgMTI0LCAxOCwgMTksIDIzMCwgOTYsIDIxNywgCi0gICAgMTI0LCAxOCwgMTksIDIxNywgMTA5LCAxOCwgMTksIDIxNywgMTA2LCAxOCwgMTksIDIxNywgMTYxLCAxOCwgMTksIDIxNywgCi0gICAgMTYwLCAxOCwgMTksIDIxNywgODEsIDE4LCAxOSwgMTQ4LCAyMTcsIDgxLCAxOCwgMTksIDIxNywgMTYzLCAxOCwgMTksIAotICAgIDIxNiwgMTAzLCAxOCwgMTksIDIxNiwgMTAxLCAxOCwgMTksIDIxNiwgMTAwLCAxOCwgMTksIDIxNiwgMTA1LCAxOCwgMTksIAotICAgIDIxNiwgMTA2LCAxOCwgMTksIDIxNiwgMTgsIDE4LCAxOSwgMjE2LCAxNywgMTgsIDE5LCAyMTYsIDE2LCAxOCwgMTksIDIxNiwgCi0gICAgMTksIDE4LCAxOSwgMjI4LCA0OSwgMjQxLCAyMjIsIDE4LCAxOSwgMjI4LCA0OSwgMjQxLCAxNjUsIDE4LCAxOSwgMjI4LCAKLSAgICA0OSwgMjQxLCAxNDcsIDE4LCAxOSwgMjI4LCA0OSwgMjQxLCA1NCwgMTgsIDE5LCAyMjgsIDQ5LCAyNDEsIDM5LCAxOCwgMTksIAotICAgIDIyOCwgNDksIDE1OSwgMTgsIDE5LCAyMjgsIDQ5LCAyNDIsIDI3LCAxOCwgMTksIDIyOCwgNDksIDI0MiwgNDEsIDE4LCAxOSwgCi0gICAgMjI4LCA0OCwgMjQyLCA0MSwgMTgsIDE5LCAyNDEsIDE0MCwgMTgsIDE5LCAyMjQsIDIyOCwgMTgsIDE5LCAyMjQsIDE5OCwgCi0gICAgMTgsIDE5LCAyMjQsIDE5MywgMTgsIDE5LCAyMjQsIDE4NywgMTgsIDE5LCAyMjQsIDE4MiwgMTgsIDE5LCAyMjQsIDIzMiwgCi0gICAgMTgsIDE5LCAyMjQsIDIzMSwgMTgsIDE5LCAyMjQsIDI0MCwgMTgsIDE5LCAyMTcsIDgsIDE4LCAxOSwgMjE3LCA2LCAxOCwgCi0gICAgMTksIDIxNywgNSwgMTgsIDE5LCAyMTcsIDksIDE4LCAxOSwgMTQ4LCAyMjQsIDIxLCAxOCwgMTksIDE0OCwgMjIzLCAxODgsIAotICAgIDE4LCAxOSwgMTQ4LCAyMjMsIDExMiwgMTgsIDE5LCAxNDgsIDIwMywgMTgsIDE5LCAyMjksIDE1NywgMTgsIDE5LCAyMjksIAotICAgIDExMywgMTgsIDE5LCAyMjksIDEwOSwgMTgsIDE5LCAyMjksIDkwLCAxOCwgMTksIDIyOSwgODUsIDE4LCAxOSwgMjI5LCAKLSAgICAxNTksIDE4LCAxOSwgMjI5LCAxNTgsIDE4LCAxOSwgMjI5LCAxNjEsIDE4LCAxOSwgMjI4LCAxOTYsIDE4LCAxOSwgMjIyLCAKLSAgICAxMjcsIDIyMCwgMjQzLCAxOCwgMTksIDIyMiwgMTI3LCAyMjAsIDIxMiwgMTgsIDE5LCAyMjIsIDEyNywgMjIwLCAxODcsIAotICAgIDE4LCAxOSwgMjIyLCAxMjcsIDIyMSwgMjQsIDE4LCAxOSwgMjEzLCAyMDAsIDIxNywgMTQ4LCAxOCwgMTksIDIxMywgMjAwLCAKLSAgICAyMTcsIDEyOCwgMTgsIDE5LCAyMTMsIDIwMCwgMjE3LCAxMDksIDE4LCAxOSwgMjEzLCAyMDAsIDIxNywgMTYxLCAxOCwgMTksIAotICAgIDIxMywgMjAwLCAyMTcsIDE2MywgMTgsIDE5LCAyMzMsIDE5LCAxOCwgMTksIDIzMywgMTgsIDE4LCAxOSwgMjMzLCAxNywgCi0gICAgMTgsIDE5LCAyMzMsIDE2LCAxOCwgMTksIDIzMywgMjUsIDE4LCAxOSwgMjMzLCAyNCwgMTgsIDE5LCAyMzMsIDI2LCAxOCwgCi0gICAgMTksIDIxNywgMTYyLCAyMTcsIDE0OCwgMTgsIDE5LCAyMTcsIDE2MiwgMjE3LCAxMjgsIDE4LCAxOSwgMjE3LCAxNjIsIAotICAgIDIxNywgMTI0LCAxOCwgMTksIDIxNywgMTYyLCAyMTcsIDEwOSwgMTgsIDE5LCAyMTcsIDE2MiwgMjE3LCAxMDYsIDE4LCAxOSwgCi0gICAgMjE3LCAxNjIsIDIxNywgMTYxLCAxOCwgMTksIDIxNywgMTYyLCAyMTcsIDE2MCwgMTgsIDE5LCAyMTcsIDE2MiwgMjE3LCAKLSAgICAxNjMsIDE4LCAxOSwgMjU0LCA5NywgMjUzLCA3NCwgMTgsIDE5LCAyNTEsIDE0MSwgNzQsIDE4LCAxOSwgMjUxLCAxNDEsIAotICAgIDcyLCAxOCwgMTksIDI1MSwgMTQxLCA3NSwgMTgsIDE5LCAyNTEsIDE0MSwgNjEsIDE4LCAxOSwgMjUxLCAxNDEsIDIxNCwgNiwgCi0gICAgMTgsIDE5LCAyNTEsIDE0MSwgMjEzLCAyMzUsIDE4LCAxOSwgMjUxLCAxNDEsIDIxMywgMjE0LCAxOCwgMTksIDI1MSwgMTQxLCAKLSAgICAyMTQsIDQ5LCAxOCwgMTksIDI1MSwgMTQxLCAyMjksIDE4NywgMTgsIDE5LCAyNTEsIDE0MSwgMjI5LCA2NCwgMTgsIDE5LCAKLSAgICAyNTEsIDE0MSwgMjI4LCAxODUsIDE4LCAxOSwgMjUxLCAxNDEsIDIwNSwgMTgsIDE5LCAyNTEsIDE0MSwgMjM0LCAxODgsIAotICAgIDE4LCAxOSwgMjUxLCAxNDEsIDIzNCwgMTAxLCAxOCwgMTksIDI1MSwgMTQxLCAyMzQsIDM3LCAxOCwgMTksIDI1MSwgMTQxLCAKLSAgICAxODEsIDE4LCAxOSwgMjIyLCAxMjcsIDI0MSwgMjIyLCAxOCwgMTksIDIyMiwgMTI3LCAyNDEsIDE2NSwgMTgsIDE5LCAyMjIsIAotICAgIDEyNywgMjQxLCA1NCwgMTgsIDE5LCAyMjIsIDEyNywgMTU5LCAxOCwgMTksIDY2LCAyNDIsIDE5NiwgMTgsIDE5LCA2NiwgCi0gICAgMjQyLCAyMDAsIDE4LCAxOSwgNjYsIDI0MiwgMjEyLCAxOCwgMTksIDY2LCAyNDIsIDIxMSwgMTgsIDE5LCA2NiwgMjQyLCAKLSAgICAyMDEsIDE4LCAxOSwgNjYsIDI0MiwgMjI1LCAxOCwgMTksIDY2LCAyMjMsIDUxLCAxOCwgMTksIDY2LCAyMjMsIDExMiwgMTgsIAotICAgIDE5LCA2NiwgMjI0LCAyMSwgMTgsIDE5LCA2NiwgMjI0LCAxLCAxOCwgMTksIDY2LCAyMjMsIDE4OCwgMTgsIDE5LCA2NiwgCi0gICAgMjAzLCAxOCwgMTksIDY2LCAyMTMsIDE4MywgMTgsIDE5LCA2NiwgMjEzLCAyMTQsIDE4LCAxOSwgNjYsIDIxNCwgNiwgMTgsIAotICAgIDE5LCA2NiwgMjE0LCAxLCAxOCwgMTksIDY2LCAyMTMsIDIzNSwgMTgsIDE5LCA2NiwgMjE0LCA0OSwgMTgsIDE5LCA2NiwgCi0gICAgMjQwLCAxODYsIDE4LCAxOSwgNjYsIDI0MCwgMTg3LCAxOCwgMTksIDY2LCAyNDAsIDE5MCwgMTgsIDE5LCA2NiwgMjQwLCAKLSAgICAxODksIDE4LCAxOSwgNjYsIDI0MCwgMTg4LCAxOCwgMTksIDY2LCAyNDAsIDE5MiwgMTgsIDE5LCA2NiwgMjE3LCA5MCwgMTgsIAotICAgIDE5LCA2NiwgMjE3LCAxMDksIDE4LCAxOSwgNjYsIDIxNywgMTQ4LCAxOCwgMTksIDY2LCAyMTcsIDE0NywgMTgsIDE5LCA2NiwgCi0gICAgMjE3LCAxMjgsIDE4LCAxOSwgNjYsIDIxNywgMTYxLCAxOCwgMTksIDY2LCAyMTYsIDg2LCAxOCwgMTksIDY2LCAyMTYsIDk1LCAKLSAgICAxOCwgMTksIDY2LCAyMTYsIDExMiwgMTgsIDE5LCA2NiwgMjE2LCAxMTEsIDE4LCAxOSwgNjYsIDIxNiwgOTYsIDE4LCAxOSwgCi0gICAgNjYsIDIxNiwgMTE1LCAxOCwgMTksIDY2LCAyMjUsIDM1LCAxOCwgMTksIDY2LCAyMjUsIDE1MCwgMTgsIDE5LCA2NiwgMjI2LCAKLSAgICA5NiwgMTgsIDE5LCA2NiwgMjI2LCA4NiwgMTgsIDE5LCA2NiwgMjI1LCAyNDAsIDE4LCAxOSwgNjYsIDE5MywgMTgsIDE5LCAKLSAgICA2NiwgMjI2LCAyMjksIDE4LCAxOSwgNjYsIDI0MiwgOTIsIDE4LCAxOSwgNjYsIDI0MiwgMTUwLCAxOCwgMTksIDY2LCAyNDMsIAotICAgIDM4LCAxOCwgMTksIDY2LCAyNDMsIDMxLCAxOCwgMTksIDY2LCAyNDIsIDE5MCwgMTgsIDE5LCA2NiwgMjQzLCAxMTAsIDE4LCAKLSAgICAxOSwgNjYsIDIzNCwgMTA4LCAxOCwgMTksIDY2LCAyMzQsIDExMywgMTgsIDE5LCA2NiwgMjM0LCAxMjUsIDE4LCAxOSwgNjYsIAotICAgIDIzNCwgMTI0LCAxOCwgMTksIDY2LCAyMzQsIDExOCwgMTgsIDE5LCA2NiwgMjM0LCAxMzgsIDE4LCAxOSwgNjYsIDIzNCwgCi0gICAgNTAsIDE4LCAxOSwgNjYsIDIzNCwgNTEsIDE4LCAxOSwgNjYsIDIzNCwgNTQsIDE4LCAxOSwgNjYsIDIzNCwgNTMsIDE4LCAKLSAgICAxOSwgNjYsIDIzNCwgNTIsIDE4LCAxOSwgNjYsIDIzNCwgNTUsIDE4LCAxOSwgNjYsIDIzNCwgNTYsIDE4LCAxOSwgNjYsIAotICAgIDIyOCwgOTIsIDE4LCAxOSwgNjYsIDIyOCwgMTg1LCAxOCwgMTksIDY2LCAyMjksIDE4NywgMTgsIDE5LCA2NiwgMjI5LCAKLSAgICAxODQsIDE4LCAxOSwgNjYsIDIyOSwgNjQsIDE4LCAxOSwgNjYsIDIwNSwgMTgsIDE5LCA2NiwgMjMwLCAxNzIsIDE4LCAxOSwgCi0gICAgNjYsIDIzMCwgMjMxLCAxOCwgMTksIDY2LCAyMzEsIDE1NiwgMTgsIDE5LCA2NiwgMjMxLCAxNDUsIDE4LCAxOSwgNjYsIAotICAgIDIzMSwgNDIsIDE4LCAxOSwgNjYsIDE4OCwgMTgsIDE5LCA2NiwgMjEyLCAyMDMsIDE4LCAxOSwgNjYsIDIxMiwgMjM1LCAxOCwgCi0gICAgMTksIDY2LCAyMTMsIDM4LCAxOCwgMTksIDY2LCAyMTMsIDM1LCAxOCwgMTksIDY2LCAyMTIsIDI1NSwgMTgsIDE5LCA2NiwgCi0gICAgMTg2LCAxOCwgMTksIDY2LCAyMzUsIDU0LCAxOCwgMTksIDIyMiwgMTI3LCAyMzUsIDU0LCAxOCwgMTksIDY2LCAyMzUsIDcxLCAKLSAgICAxOCwgMTksIDY2LCAyMzUsIDEyNywgMTgsIDE5LCA2NiwgMjM1LCAxMjUsIDE4LCAxOSwgNjYsIDIzNSwgMTEwLCAxOCwgMTksIAotICAgIDIyMiwgMTI3LCAyMzUsIDExMCwgMTgsIDE5LCA2NiwgMjM1LCAxMzksIDE4LCAxOSwgNjYsIDIzNSwgODQsIDE4LCAxOSwgCi0gICAgNjYsIDIzNSwgODgsIDE4LCAxOSwgNjYsIDIzNSwgOTgsIDE4LCAxOSwgNjYsIDIzNSwgOTcsIDE4LCAxOSwgNjYsIDIzNSwgCi0gICAgOTYsIDE4LCAxOSwgNjYsIDIzNSwgOTksIDE4LCAxOSwgNjYsIDIzMiwgMTU2LCAxOCwgMTksIDY2LCAyMzIsIDIwOCwgMTgsIAotICAgIDE5LCA2NiwgMjMzLCA4MiwgMTgsIDE5LCA2NiwgMjMzLCA3NCwgMTgsIDE5LCA2NiwgMjMzLCAxMywgMTgsIDE5LCA2NiwgCi0gICAgMjMzLCAxNTcsIDE4LCAxOSwgNjYsIDI0NywgMTAzLCAxOCwgMTksIDY2LCAyNDcsIDEwNCwgMTgsIDE5LCA2NiwgMjQ3LCAKLSAgICAxMDcsIDE4LCAxOSwgNjYsIDI0NywgMTA2LCAxOCwgMTksIDY2LCAyNDcsIDEwNSwgMTgsIDE5LCA2NiwgMjQ3LCAxMDgsIAotICAgIDE4LCAxOSwgNjYsIDIzMywgMTUsIDE4LCAxOSwgNjYsIDIzMywgMTcsIDE4LCAxOSwgNjYsIDIzMywgMjEsIDE4LCAxOSwgCi0gICAgNjYsIDIzMywgMjAsIDE4LCAxOSwgNjYsIDIzMywgMTksIDE4LCAxOSwgNjYsIDIzMywgMjUsIDE4LCAxOSwgNjYsIDIxNywgCi0gICAgMywgMTgsIDE5LCA2NiwgMjE3LCA1LCAxOCwgMTksIDY2LCAyMTcsIDgsIDE4LCAxOSwgNjYsIDIxNywgNywgMTgsIDE5LCAKLSAgICA2NiwgMjE3LCA2LCAxOCwgMTksIDY2LCAyMTcsIDksIDE4LCAxOSwgNjYsIDIxNiwgMjU1LCAxOCwgMTksIDY2LCAyMTcsIDAsIAotICAgIDE4LCAxOSwgNjYsIDIxNywgMTEsIDE4LCAxOSwgNjYsIDIxNywgMTAsIDE4LCAxOSwgNjYsIDIxNywgMSwgMTgsIDE5LCA2NiwgCi0gICAgMjE3LCAxMiwgMTgsIDE5LCA2NiwgMjEyLCA4LCAxOCwgMTksIDY2LCAyMTIsIDE2LCAxOCwgMTksIDY2LCAyMTIsIDg3LCAKLSAgICAxOCwgMTksIDY2LCAyMTIsIDg1LCAxOCwgMTksIDY2LCAyMTIsIDM3LCAxOCwgMTksIDY2LCAyMTIsIDEwOSwgMTgsIDE5LCAKLSAgICA2NiwgMjEyLCAxNTIsIDE4LCAxOSwgNjYsIDcwLCAyMTIsIDE1MiwgMTgsIDE5LCA2NiwgMjQ1LCAyMzksIDE4LCAxOSwgNjYsIAotICAgIDI0NSwgMjQwLCAxOCwgMTksIDY2LCAyNDUsIDI0NywgMTgsIDE5LCA2NiwgMjQ1LCAyNDYsIDE4LCAxOSwgNjYsIDI0NSwgCi0gICAgMjQyLCAxOCwgMTksIDY2LCAyNDUsIDI0OSwgMTgsIDE5LCA2NiwgMjE5LCAyNywgMTgsIDE5LCA2NiwgMjE5LCAyNDIsIDE4LCAKLSAgICAxOSwgNjYsIDIyMiwgMTAwLCAxOCwgMTksIDY2LCAyMjIsIDg5LCAxOCwgMTksIDY2LCAyMjAsIDExNywgMTgsIDE5LCA2NiwgCi0gICAgMjIyLCAyMDIsIDE4LCAxOSwgNjYsIDIyMCwgMTUwLCAxOCwgMTksIDY2LCAyMjAsIDE4NywgMTgsIDE5LCA2NiwgMjIwLCAKLSAgICAyNDMsIDE4LCAxOSwgNjYsIDIyMCwgMjQxLCAxOCwgMTksIDY2LCAyMjAsIDIxMiwgMTgsIDE5LCA2NiwgMjIxLCAyNCwgMTgsIAotICAgIDE5LCA2NiwgMjIxLCAyNiwgMTgsIDE5LCA2NiwgMjE2LCAxMjIsIDE4LCAxOSwgNjYsIDIxNiwgMTI0LCAxOCwgMTksIDY2LCAKLSAgICAyMTYsIDEzNiwgMTgsIDE5LCA2NiwgMjE2LCAxMzUsIDE4LCAxOSwgNjYsIDIxNiwgMTI1LCAxOCwgMTksIDY2LCAyMTYsIAotICAgIDE0MSwgMTgsIDE5LCA2NiwgMjUwLCA2LCAxOCwgMTksIDY2LCAyNTAsIDIzLCAxOCwgMTksIDY2LCAyNTAsIDY3LCAxOCwgCi0gICAgMTksIDY2LCAyNTAsIDY0LCAxOCwgMTksIDY2LCAyNTAsIDQ3LCAxOCwgMTksIDY2LCAyNTAsIDkyLCAxOCwgMTksIDY2LCAKLSAgICAyMTYsIDg5LCAxOCwgMTksIDY2LCAyMTYsIDkwLCAxOCwgMTksIDY2LCAyMTYsIDkzLCAxOCwgMTksIDY2LCAyMTYsIDkyLCAKLSAgICAxOCwgMTksIDY2LCAyMTYsIDkxLCAxOCwgMTksIDY2LCAyMTYsIDk0LCAxOCwgMTksIDI1MCwgNDgsIDUyLCAxOCwgMTksIAotICAgIDI0MywgMjAwLCAyMTksIDY5LCAxOCwgMTksIDIyNCwgMjI0LCAxOCwgMTksIDIyOSwgMTU2LCAxOCwgMTksIDIyOCwgMTkzLCAKLSAgICAxOCwgMTksIDIyOCwgMTkyLCAxOCwgMTksIDIyOCwgMTkxLCAxOCwgMTksIDIyOCwgMTkwLCAxOCwgMTksIDIyOCwgMTk1LCAKLSAgICAxOCwgMTksIDIyOCwgMTk0LCAxOCwgMTksIDIxMywgMjAwLCAyMTcsIDc5LCAxOCwgMTksIDIxMywgMjAwLCAyMTcsIDc4LCAKLSAgICAxOCwgMTksIDIxMywgMjAwLCAyMTcsIDc3LCAxOCwgMTksIDIxMywgMjAwLCAyMTcsIDc2LCAxOCwgMTksIDIxMywgMjAwLCAKLSAgICAyMTcsIDc1LCAxOCwgMTksIDIxMywgMjAwLCAyMTcsIDgyLCAxOCwgMTksIDIxMywgMjAwLCAyMTcsIDgxLCAxOCwgMTksIAotICAgIDIxMywgMjAwLCA0MCwgMjE3LCAxNjMsIDE4LCAxOSwgMjUxLCAxNDEsIDIxNCwgODIsIDIyNywgOTIsIDIxOSwgMjA3LCA3NywgCi0gICAgMjI3LCA5MiwgMSwgMjUxLCAyMjQsIDIyNywgOTIsIDEsIDIzMiwgMTQ1LCAyMjcsIDkyLCAxLCAyNDQsIDEyMCwgMjI3LCAKLSAgICA5MiwgMSwgMjIyLCAxODYsIDIyNywgOTIsIDEsIDIyOSwgMjQsIDIyNywgOTIsIDEsIDIxNSwgMTk1LCAyMjcsIDkyLCAxLCAKLSAgICAyNDgsIDE0MiwgMjI3LCA5MiwgMSwgMjE3LCAzMywgMjI3LCA5MiwgMSwgMjQ5LCAxNjcsIDIyNywgOTIsIDEsIDI1MCwgCi0gICAgMTE0LCAyMjcsIDkyLCAxLCAyMzAsIDE2MSwgMjI3LCA5MiwgMSwgMjQyLCAxMzIsIDIyNywgOTIsIDEsIDIyOSwgMTQ3LCAKLSAgICAyMjcsIDkyLCAxLCAyMTksIDYyLCAyMjcsIDkyLCAxLCAyMjMsIDQ2LCAyMjcsIDkyLCAxLCAyNTQsIDEwNSwgMjI3LCA5MiwgCi0gICAgMSwgMjI3LCA1MywgMjI3LCA5MiwgMSwgMjE1LCAxMjEsIDIyNywgOTIsIDEsIDI0NSwgMTg3LCAyMjcsIDkyLCAxLCAyMzUsIAotICAgIDE4NiwgMjI3LCA5MiwgMSwgMjQ1LCAxODgsIDIyNywgOTIsIDEsIDIyNywgMjQsIDIyNywgOTIsIDEsIDIxNSwgMTc2LCAKLSAgICAyMjcsIDkyLCAxLCAyMzYsIDM0LCAyMjcsIDkyLCAxLCAyNDUsIDE4NSwgMjI3LCA5MiwgMSwgMjI2LCA3NywgMjI3LCA5MiwgCi0gICAgMjQ0LCAxMTksIDc3LCAyMjcsIDkyLCAyMjMsIDIwMiwgMjQ0LCAxMTksIDc3LCAxNjgsIDEsIDI0NCwgMTEwLCAyNDQsIAotICAgIDEwMiwgMjQ0LCAxMjQsIDI0NCwgMjMwLCAxNjgsIDEsIDIxNSwgNzksIDE2OCwgMSwgMjE1LCAxMDYsIDIxNSwgMTIyLCA2OSwgCi0gICAgMTY4LCAxLCAyMTIsIDIwNSwgMTY4LCAxLCAyMTMsIDEwNSwgMTY4LCAxLCAyMTQsIDgyLCAxNjgsIDEsIDIxNywgODQsIAotICAgIDIxNywgODMsIDIxNywgMTA0LCAxNjgsIDEsIDI0NSwgMjUsIDE2OCwgMSwgMjU0LCA0LCA2MSwgMTY4LCAxLCAyMjcsIDEwLCAKLSAgICA3NSwgMTY4LCAxLCAyNTQsIDE3NywgNjEsIDE2OCwgMSwgMjU0LCAxMzIsIDE2OCwgMSwgMjMyLCAxODYsIDc1LCAxNjgsIDEsIAotICAgIDIyMCwgMTY4LCA3NSwgMTY4LCAxLCA3NSwgMTY4LCAxLCAyMjcsIDk5LCAxNjgsIDEsIDIyNywgNjIsIDE2OCwgMSwgMjI0LCAKLSAgICA1NSwgMjI0LCA2NywgMjIzLCAyNDQsIDE0OSwgMTY4LCAxLCAyMzQsIDE5OSwgMTY4LCAxLCAyNTAsIDExMSwgMTY4LCAxLCAKLSAgICAyMzQsIDIwMCwgMjM1LCAyNywgMTY4LCAxLCAyNDMsIDE3NywgMTY4LCAxLCAyNDUsIDk2LCAxNjgsIDEsIDI0MywgMzQsIAotICAgIDI0MiwgNDcsIDI0MywgMTc3LCAxNjgsIDEsIDI0MywgNzIsIDE2OCwgMSwgMjEzLCAxNzYsIDIxMywgMTcwLCAyMTQsIDgyLCAKLSAgICAxNjgsIDEsIDI0MiwgMTksIDI0MiwgNDEsIDE2OCwgMSwgMjQyLCAyMywgMjQyLCA0MSwgMTY4LCAxLCAyMzIsIDE4OCwgCi0gICAgMjQyLCA0MSwgMTY4LCAxLCAyMjAsIDE3MSwgMjQyLCA0MSwgMTY4LCAxLCAyMzAsIDcsIDIyOCwgMTgsIDIzMCwgOCwgMjA0LCAKLSAgICAxNjgsIDEsIDIyMCwgMTY5LCAyMDQsIDE2OCwgMSwgMjQ2LCA2OSwgMTY4LCAxLCAyMzUsIDE2NiwgMjM1LCAxNzAsIDIzNSwgCi0gICAgMTYwLCA3MiwgMTY4LCAxLCA3NCwgMTY4LCAxLCAyMzUsIDExOCwgMjM1LCAxNDIsIDE2OCwgMSwgMjQzLCAxOSwgMTY4LCAxLCAKLSAgICAyMzIsIDE4OSwgMjU0LCAxNDgsIDE2OCwgMSwgMjIwLCAxNzMsIDYxLCAxNjgsIDEsIDIzNSwgMTUyLCAyNDUsIDcyLCAxNjgsIAotICAgIDEsIDIyNiwgNDAsIDIyNiwgNjEsIDIyNiwgMjI5LCAxNjgsIDEsIDI1NCwgNzIsIDI0NSwgNzEsIDE2OCwgMSwgMjE5LCAKLSAgICAyMTEsIDE5NywgMTY4LCAxLCAyMjAsIDEwNSwgMjMyLCAxODUsIDE5NywgMTY4LCAxLCAyMjAsIDE2NywgMTk3LCAxNjgsIDEsIAotICAgIDI1MCwgMjUyLCAxNjgsIDEsIDIxMiwgMTUyLCAxNjgsIDEsIDIxNywgMTYsIDIxNywgMjYsIDIxNiwgNywgMjE4LCA5OSwgCi0gICAgMTY4LCAxLCAyMjAsIDE2NiwgMjE4LCA5OSwgMTY4LCAxLCAyNDksIDMsIDE2OCwgMSwgMjUxLCAyMDgsIDI1MSwgMjExLCAKLSAgICAyNTEsIDE0NywgMjUzLCA3NCwgMTY4LCAxLCAyMjAsIDE3MiwgMjUzLCA3NCwgMTY4LCAxLCAyNDYsIDY4LCAxNjgsIDEsIAotICAgIDIyNywgMzYsIDE2OCwgMSwgMjQ1LCAxNTMsIDI0NSwgMTU1LCA3NCwgMTY4LCAxLCAyMzEsIDI0MSwgMjMxLCAyNDksIDE4MywgCi0gICAgMTY4LCAxLCAyMzIsIDE4NywgMTgzLCAxNjgsIDEsIDIyMCwgMTcwLCAxODMsIDE2OCwgMSwgMjMzLCA5NywgMjMzLCAxMzcsIAotICAgIDIzMiwgMTk2LCAxNTAsIDE2OCwgMSwgMjQ2LCA3MCwgMTY4LCAxLCAyMzUsIDIyNywgMTY4LCAxLCAyMzUsIDIyOCwgMTY4LCAKLSAgICAxLCAyNDgsIDE1MywgMjQ4LCAxNTgsIDI0OSwgMywgMTY4LCAxLCAyMjcsIDYsIDI0NSwgMjQsIDc1LCAxNjgsIDEsIDI0NSwgCi0gICAgMTgzLCAxNjgsIDEsIDIzNSwgMTg1LCAxNjgsIDEsIDI0OSwgMjEsIDE2OCwgMSwgMjUwLCAyMDUsIDE2OCwgMSwgMjUwLCAKLSAgICAxMjMsIDE2OCwgMSwgMjE5LCAxMDAsIDE2OCwgMSwgMjMyLCAxODQsIDE2OCwgMSwgMjIwLCAxNjUsIDE2OCwgMSwgMjQwLCAKLSAgICAxMDMsIDE2OCwgMSwgMjI0LCAyNDAsIDE2OCwgMSwgMjEzLCAxNjYsIDE2OCwgMjIwLCA4MSwgMjI1LCAyNiwgMTY4LCAyMzAsIAotICAgIDE1NSwgMjI1LCAyNiwgMTY4LCAyNDksIDcxLCAyMjUsIDI2LCAxNjgsIDI1MywgMTc3LCA4NywgMTY4LCAyMTYsIDQ3LCA4NywgCi0gICAgMTY4LCAyNTEsIDIyMywgODcsIDIxOCwgMzIsIDEsIDYxLCAyMTgsIDMyLCAxLCA3MiwgMjE4LCAzMiwgMSwgNjksIDIxOCwgCi0gICAgMzIsIDEsIDE4MSwgMjE4LCAzMiwgMSwgMjQzLCAxMTAsIDIxOCwgMzIsIDEsIDIyOSwgMTU5LCAyMTgsIDMyLCAxLCAyMTgsIAotICAgIDUyLCAyMTgsIDMyLCAxLCAyNDgsIDE2NCwgMjE4LCAzMiwgMSwgMjA1LCAyMTgsIDMyLCAxLCAxOTMsIDIxOCwgMzIsIDEsIAotICAgIDI1MiwgMTA3LCAyMTgsIDMyLCAxLCAxODgsIDIxOCwgMzIsIDEsIDE4NiwgMjE4LCAzMiwgMSwgMjMzLCAxNTcsIDIxOCwgCi0gICAgMzIsIDEsIDIxNCwgNDksIDIxOCwgMzIsIDEsIDIyMiwgMjAyLCAyMTgsIDMyLCAxLCAxNTksIDIxOCwgMzIsIDMwLCA1LCAKLSAgICA3MiwgMjE4LCAzMiwgMzAsIDUsIDY5LCAyMTgsIDMyLCA1LCAyMTQsIDEzMywgMjQxLCAyNDYsIDEsIDYxLCAyNDEsIDI0NiwgCi0gICAgMSwgNzIsIDI0MSwgMjQ2LCAxLCA2OSwgMjQxLCAyNDYsIDEsIDE4MSwgMjQxLCAyNDYsIDEsIDI0MywgMTEwLCAyNDEsIAotICAgIDI0NiwgMSwgMjI5LCAxNTksIDI0MSwgMjQ2LCAxLCAyMTgsIDUyLCAyNDEsIDI0NiwgMSwgMjQ4LCAxNjQsIDI0MSwgMjQ2LCAKLSAgICAxLCAyMDUsIDI0MSwgMjQ2LCAxLCAxOTMsIDI0MSwgMjQ2LCAxLCAyNTIsIDEwNywgMjQxLCAyNDYsIDEsIDE4OCwgMjQxLCAKLSAgICAyNDYsIDEsIDE4NiwgMjQxLCAyNDYsIDEsIDIwMywgMjQxLCAyNDYsIDEsIDIzMywgMTU3LCAyNDEsIDI0NiwgMSwgMjE0LCAKLSAgICA0OSwgMjQxLCAyNDYsIDEsIDIyMiwgMjAyLCAyNDEsIDI0NiwgMSwgMTU5LCAyNDEsIDI0NiwgMzAsIDUsIDcyLCAyNDEsIAotICAgIDI0NiwgMzAsIDUsIDY5LCAyNDEsIDI0NiwgNSwgMjI2LCAxNzYsIDIyNiwgMiwgMjIwLCA4MSwgMjI1LCAyNiwgMjI2LCAyLCAKLSAgICA1MSwgMjI1LCAyNiwgMjUxLCA0OSwgMSwgNjEsIDI1MSwgNDksIDEsIDcyLCAyNTEsIDQ5LCAxLCA2OSwgMjUxLCA0OSwgMSwgCi0gICAgMTgxLCAyNTEsIDQ5LCAxLCAyNDMsIDExMCwgMjUxLCA0OSwgMSwgMjI5LCAxNTksIDI1MSwgNDksIDEsIDIxOCwgNTIsIAotICAgIDI1MSwgNDksIDEsIDI0OCwgMTY0LCAyNTEsIDQ5LCAxLCAyMDUsIDI1MSwgNDksIDEsIDE5MywgMjUxLCA0OSwgMSwgMjUyLCAKLSAgICAxMDcsIDI1MSwgNDksIDEsIDE4OCwgMjUxLCA0OSwgMSwgMTg2LCAyNTEsIDQ5LCAxLCAyMDMsIDI1MSwgNDksIDEsIDIzMywgCi0gICAgMTU3LCAyNTEsIDQ5LCAxLCAyMTQsIDQ5LCAyNTEsIDQ5LCAxLCAyMjIsIDIwMiwgMjUxLCA0OSwgMSwgMTU5LCAyNTEsIDQ5LCAKLSAgICAzMCwgNSwgNzIsIDI1MSwgNDksIDMwLCA1LCA2OSwgMjE4LCAzMSwgMSwgNjEsIDIxOCwgMzEsIDEsIDcyLCAyMTgsIDMxLCAKLSAgICAxLCA2OSwgMjE4LCAzMSwgMSwgMTgxLCAyMTgsIDMxLCAxLCAyNDMsIDExMCwgMjE4LCAzMSwgMSwgMjI5LCAxNTksIDIxOCwgCi0gICAgMzEsIDEsIDIxOCwgNTIsIDIxOCwgMzEsIDEsIDI0OCwgMTY0LCAyMTgsIDMxLCAxLCAyMDUsIDIxOCwgMzEsIDEsIDE5MywgCi0gICAgMjE4LCAzMSwgMSwgMjUyLCAxMDcsIDIxOCwgMzEsIDEsIDE4OCwgMjE4LCAzMSwgMSwgMTg2LCAyMTgsIDMxLCAxLCAyMzMsIAotICAgIDE1NywgMjE4LCAzMSwgMSwgMjE0LCA0OSwgMjE4LCAzMSwgMSwgMjIyLCAyMDIsIDIxOCwgMzEsIDMwLCA1LCA3MiwgMjE4LCAKLSAgICAzMSwgMzAsIDUsIDY5LCA4NCwgMSwgMTgxLCA4NCwgMSwgMjM0LCAxMzgsIDg0LCAxLCAyMzQsIDM3LCA4NCwgMSwgMjM0LCAKLSAgICAxMTMsIDg0LCAxLCAyMjksIDkwLCA4NCwgMSwgMjUwLCAyMTksIDg0LCAxLCAyNTAsIDkyLCA4NCwgMSwgMjQ5LCAxNzUsIAotICAgIDg0LCAxLCAyNTAsIDIzLCA4NCwgMSwgMjI3LCAyNTMsIDg0LCAxLCAyNDgsIDE2NCwgODQsIDEsIDIxNiwgMTA1LCA4NCwgMSwgCi0gICAgMjQ3LCA5OSwgODQsIDEsIDIxNiwgMTAwLCA4NCwgMSwgMjI4LCAxODgsIDg0LCAxLCAyMTgsIDUyLCA4NCwgMSwgMjE3LCAKLSAgICAxNjEsIDg0LCAxLCAxMDgsIDg0LCAxLCAyMTcsIDEwOSwgODQsIDEsIDIyOCwgMTg1LCA4NCwgMSwgMjUyLCAxMDcsIDg0LCAKLSAgICAxLCAyMjYsIDIzLCA4NCwgMSwgMjI1LCAxNTAsIDg0LCAxLCAyMjUsIDI1MywgODQsIDEsIDIzMCwgMjMxLCA4NCwgMSwgCi0gICAgMjEyLCAyMzUsIDg0LCAxLCAyMjMsIDExMiwgODQsIDEsIDIzMiwgMjA4LCA4NCwgMSwgMjE0LCAxMTksIDg0LCAxLCAyMjEsIAotICAgIDI0LCA4NCwgMSwgMjE5LCAxMjEsIDg0LCAxLCAyMjIsIDIwMiwgODQsIDEsIDE1OSwgODQsIDEsIDIzMywgMTU3LCA4NCwgMSwgCi0gICAgMjI0LCAyMzIsIDg0LCAyMzUsIDI0MCwgMzAsIDIyNCwgMjE4LCA4NCwgMjM1LCAyNDAsIDMwLCAyMjQsIDIzMSwgODQsIAotICAgIDIzNSwgMjQwLCAzMCwgMjI0LCAxOTgsIDg0LCAyMzUsIDI0MCwgMzAsIDIyNCwgMTkzLCA4NCwgMjM1LCAyNDAsIDMwLCAKLSAgICAyMjQsIDE3NSwgODQsIDIzNSwgMjQwLCAzMCwgMjI0LCAxNDcsIDg0LCAyMzUsIDI0MCwgMzAsIDIyNCwgMTM1LCA4NCwgCi0gICAgMjM1LCAyNDAsIDMwLCAyMjQsIDEzNCwgODQsIDIzNSwgMjQwLCAzMCwgMjIzLCAxMiwgODQsIDIzNSwgMjQwLCAzMCwgMjIzLCAKLSAgICA1LCA4NCwgMjM1LCAyNDAsIDMwLCAyMzIsIDEyMSwgODQsIDIzNSwgMjQwLCAzMCwgMjMyLCAxMTIsIDg0LCAyMzUsIDI0MCwgCi0gICAgMzAsIDIyNCwgMjEzLCA4NCwgMjM1LCAyNDAsIDMwLCAyMjQsIDIyNCwgODQsIDIzNSwgMjQwLCAzMCwgMjI0LCAxODMsIAotICAgIDIxNiwgMTUsIDExNiwgODQsIDIzNSwgMjQwLCAzMCwgMjI0LCAxODMsIDIxNiwgMTUsIDEwOSwgODQsIDIzNSwgMjQwLCAzMCwgCi0gICAgMjI0LCAyMTQsIDg0LCAzMCwgMjM1LCAyMjYsIDI1MywgMjE1LCA4NCwgMzAsIDIzNSwgMjI2LCAyNTQsIDIzMiwgODQsIDMwLCAKLSAgICA1LCAyNTQsIDIzMiwgODQsIDMwLCA1LCA3MiwgODQsIDMwLCA1LCAyMzYsIDI4LCA4NCwgMzAsIDUsIDIxMywgMTA1LCA4NCwgCi0gICAgMzAsIDUsIDIxMiwgMTYxLCA4NCwgMzAsIDUsIDY5LCA4NCwgMzAsIDUsIDIxNSwgOTIsIDg0LCAzMCwgNSwgMjE1LCAxOTYsIAotICAgIDg0LCAzMCwgNSwgMjI3LCA5OSwgODQsIDMwLCA1LCAxODYsIDg0LCAzMCwgNSwgMjM2LCA1NSwgODQsIDMwLCA1LCA3NCwgCi0gICAgODQsIDMwLCA1LCAyNTQsIDE0OCwgODQsIDMwLCA1LCAyNTQsIDEwOCwgODQsIDMwLCA1LCAyMjcsIDQ5LCA4NCwgMzAsIDUsIAotICAgIDI1MywgMTA4LCA4NCwgNSwgMjI5LCAzNywgODQsIDUsIDIyNCwgMTksIDg0LCA1LCAyMTIsIDE3MiwgODQsIDUsIDIzMCwgCi0gICAgMTIzLCA4NCwgNSwgMjE2LCAxNzEsIDg0LCA1LCAyNTIsIDYyLCA4NCwgNSwgMjIzLCAxMDcsIDg0LCA1LCAyMTYsIDI1MSwgCi0gICAgODQsIDUsIDIzNCwgMjQ2LCA4NCwgNSwgMjU0LCAxMTAsIDg0LCA1LCAyMjIsIDE2MCwgMjIyLCAxNTQsIDg0LCA1LCAyMTQsIAotICAgIDEzMCwgODQsIDUsIDI0OSwgMTcwLCA4NCwgNSwgMjUyLCAzNywgODQsIDUsIDIzNCwgMTMxLCA4NCwgNSwgMjUyLCA1NywgCi0gICAgODQsIDUsIDI1MCwgMTk3LCAyMjUsIDIwNCwgMjMzLCAyMDksIDg0LCA1LCAyMzMsIDU0LCAyMTYsIDIzMCwgODQsIDUsIAotICAgIDI1MSwgMTk3LCA4NCwgNSwgMjI1LCAyNTUsIDIzMCwgMTY5LCA4NCwgNSwgMjM0LCAxOCwgODQsIDI0OSwgMzksIDE2LCAKLSAgICAyMjMsIDE4MSwgODQsIDUsIDI1MywgOTAsIDg0LCA1LCAyNTMsIDExMSwgODQsIDIxLCAyMTIsIDc5LCA4NCwgMjEsIDExNiwgCi0gICAgODQsIDIxLCAxMDksIDg0LCAyMSwgMTY2LCA4NCwgMjEsIDE2MywgODQsIDIxLCAxODAsIDg0LCAyMSwgMTg5LCA4NCwgMjEsIAotICAgIDE5OCwgODQsIDIxLCAxOTUsIDg0LCAyMSwgMjAwLCA4NCwgMTYsIDIzMywgNTQsIDI1MywgMTEzLCAyMTksIDIyOSwgODQsIAotICAgIDE2LCAyMzMsIDU0LCAyNTMsIDExMywgMjMwLCAxNDEsIDg0LCAxNiwgMjMzLCA1NCwgMjUzLCAxMTMsIDIyNSwgMjAzLCA4NCwgCi0gICAgMTYsIDIzMywgNTQsIDI1MywgMTEzLCAyNTEsIDIyNSwgODQsIDE2LCAyMzMsIDU0LCAyNTMsIDExMywgMjUxLCAzMiwgODQsIAotICAgIDE2LCAyMzMsIDU0LCAyNTMsIDExMywgMjI1LCA5NSwgODQsIDE2LCAyMzMsIDU0LCAyNTMsIDExMywgMjI1LCA4OSwgODQsIAotICAgIDE2LCAyMzMsIDU0LCAyNTMsIDExMywgMjI1LCA4NywgODQsIDE2LCAyMzMsIDU0LCAyNTMsIDExMywgMjI1LCA5MywgODQsIAotICAgIDE2LCAyMzMsIDU0LCAyNTMsIDExMywgMjI1LCA5MSwgODEsIDI1MSwgMTU5LCA4MSwgMjQ1LCAxMjAsIDgxLCAyNDksIDE1NywgCi0gICAgODEsIDI0MywgMjAwLCAyMTksIDY5LCA4MSwgMjQ5LCAxNjQsIDgxLCAyNDMsIDIzNywgMjQ3LCA3MiwgODEsIDIxNiwgMjUwLCAKLSAgICAyMTksIDIzNiwgMjQwLCAxNjAsIDgxLCAyMjAsIDExNiwgNCwgMjUxLCA5OCwgMjMxLCAyMTcsIDgxLCAyMzEsIDI0NiwgCi0gICAgMjQ5LCAxNTcsIDgxLCAyMzEsIDI0NiwgMjQzLCAyMDAsIDIxOSwgNjksIDgxLCAyMjksIDIyLCA4MSwgMjQzLCAyMjMsIDQzLCAKLSAgICAyMjIsIDc3LCAxMTYsIDgxLCAyNDMsIDIyMywgNDMsIDIyMiwgNzcsIDEwOSwgODEsIDI0MywgMjIzLCA0MywgMjIyLCA3NywgCi0gICAgMTY2LCA4MSwgMzAsIDIyMSwgNTcsIDgxLCAyMSwgMjEyLCA3OSwgODEsIDIxLCAxMTYsIDgxLCAyMSwgMTA5LCA4MSwgMjEsIAotICAgIDE2NiwgODEsIDIxLCAxNjMsIDgxLCAyMSwgMTgwLCA4MSwgMjEsIDE4OSwgODEsIDIxLCAxOTgsIDgxLCAyMSwgMTk1LCA4MSwgCi0gICAgMjEsIDIwMCwgODEsIDEsIDYxLCA4MSwgMSwgNzQsIDgxLCAxLCA3MiwgODEsIDEsIDc1LCA4MSwgMSwgNjksIDgxLCAxLCAKLSAgICAyMjcsIDk5LCA4MSwgMSwgMjE1LCAxODMsIDgxLCAxLCAyNDUsIDE2NSwgODEsIDEsIDIwNSwgODEsIDEsIDI1NCwgMjQsIAotICAgIDgxLCAxLCAyNTIsIDEwNywgODEsIDEsIDE5MywgODEsIDEsIDIyNCwgMjMyLCA4MSwgMSwgMjQzLCAxMTAsIDgxLCAxLCAKLSAgICAxODgsIDgxLCAxLCAyMzMsIDE1NywgODEsIDEsIDIyMiwgMjAyLCA4MSwgMSwgMjIxLCAyNCwgODEsIDEsIDIxOCwgNTIsIAotICAgIDgxLCAxLCAyNDgsIDE2NCwgODEsIDEsIDI1MCwgOTIsIDgxLCAxLCAyMzUsIDEzOSwgODEsIDEsIDE4NiwgODEsIDEsIDIwMywgCi0gICAgODEsIDEsIDIxNCwgNDksIDgxLCAxLCAyNDQsIDE2NCwgODEsIDEsIDE4MSwgODEsIDEsIDIzNCwgMTM4LCA4MSwgMSwgMjE2LCAKLSAgICAxNDEsIDgxLCAxLCAyMTIsIDEwOSwgODEsIDEsIDI0MiwgMjcsIDgxLCAxLCAyMTIsIDksIDgxLCAxLCAyMzMsIDI1LCA4MSwgCi0gICAgMSwgMjEyLCA2MiwgODEsIDEsIDI1MCwgNDcsIDgxLCAxLCAyMTYsIDI1MCwgMTg0LCAzMCwgNTIsIDgxLCAxLCAyMTYsIAotICAgIDI1MCwgNzQsIDgxLCAxLCAyMTYsIDI1MCwgNzIsIDgxLCAxLCAyMTYsIDI1MCwgNzUsIDgxLCAxLCAyMTYsIDI1MCwgNjksIAotICAgIDgxLCAxLCAyMTYsIDI1MCwgMjI3LCA5OSwgODEsIDEsIDIxNiwgMjUwLCAyMTUsIDE4MywgODEsIDEsIDIxNiwgMjUwLCAKLSAgICAyNTQsIDI0LCA4MSwgMSwgMjE2LCAyNTAsIDI1MiwgMTA3LCA4MSwgMSwgMjE2LCAyNTAsIDE5MywgODEsIDEsIDIxNiwgCi0gICAgMjUwLCAyMjQsIDIzMiwgODEsIDEsIDIxNiwgMjUwLCAyNDMsIDExMCwgODEsIDEsIDIxNiwgMjUwLCAxODgsIDgxLCAxLCAKLSAgICAyMTYsIDI1MCwgMjE4LCA1MiwgODEsIDEsIDIxNiwgMjUwLCAyNDgsIDE2NCwgODEsIDEsIDIxNiwgMjUwLCAyNTAsIDkyLCAKLSAgICA4MSwgMSwgMjE2LCAyNTAsIDIzNSwgMTM5LCA4MSwgMSwgMjE2LCAyNTAsIDIxNiwgMTQxLCA4MSwgMSwgMjE2LCAyNTAsIAotICAgIDE4NiwgODEsIDEsIDIxNiwgMjUwLCAyMTQsIDQ5LCA4MSwgMSwgMjE2LCAyNTAsIDE4MSwgODEsIDEsIDIxNiwgMjUwLCAKLSAgICAyNDMsIDEwNywgODEsIDEsIDIxNiwgMjUwLCAyNDIsIDI3LCA4MSwgMSwgMjE2LCAyNTAsIDIzNSwgMTA5LCA4MSwgMSwgCi0gICAgMjE2LCAyNTAsIDIyOSwgNjIsIDgxLCAxLCAyMTYsIDI1MCwgMjQ1LCAyNDksIDgxLCAxLCAyMjAsIDExNiwgNzQsIDgxLCAxLCAKLSAgICAyMjAsIDExNiwgNzIsIDgxLCAxLCAyMjAsIDExNiwgMjM1LCAxNTAsIDgxLCAxLCAyMjAsIDExNiwgMjE1LCAxODMsIDgxLCAKLSAgICAxLCAyMjAsIDExNiwgNjksIDgxLCAxLCAyMjAsIDExNiwgMjU0LCAyNCwgODEsIDEsIDIyMCwgMTE2LCAxODEsIDgxLCAxLCAKLSAgICAyMjAsIDExNiwgMjQzLCAxMTAsIDgxLCAxLCAyMjAsIDExNiwgMTU5LCA4MSwgMSwgMjIwLCAxMTYsIDE5MywgODEsIDEsIAotICAgIDIyMCwgMTE2LCAyMjEsIDI0LCA4MSwgMSwgMjIwLCAxMTYsIDIxOCwgNTIsIDgxLCAxLCAyMjAsIDExNiwgMjQ4LCAxNjQsIAotICAgIDgxLCAxLCAyMjAsIDExNiwgMjM1LCAxMzksIDgxLCAxLCAyMjAsIDExNiwgMjQ0LCAxNjQsIDgxLCAxLCAyMjAsIDExNiwgCi0gICAgMjQzLCAxMDcsIDgxLCAxLCAyMjAsIDExNiwgMjQyLCAyNywgODEsIDEsIDIyMCwgMTE2LCAyMTYsIDE0MSwgODEsIDEsIAotICAgIDIyMCwgMTE2LCAyMTIsIDEwOSwgODEsIDEsIDIyMCwgMTE2LCAyMjQsIDc0LCA4MSwgMSwgMjIwLCAxMTYsIDI1MCwgOTIsIAotICAgIDgxLCAxLCAyMjAsIDExNiwgMjEyLCA3NSwgODEsIDEsIDIzMSwgMjQ2LCA3MiwgODEsIDEsIDIzMSwgMjQ2LCAxODEsIDgxLCAKLSAgICAxLCAyMzEsIDI0NiwgMjAzLCA4MSwgMSwgMjMxLCAyNDYsIDI0NCwgMTY0LCA4MSwgMSwgMjMxLCAyNDYsIDIxMiwgNzUsIAotICAgIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAyNTMsIDI0MywgMTE2LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjE0LCAKLSAgICAxMjksIDExNiwgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDI0OCwgMTMxLCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgCi0gICAgMjE1LCAxOTMsIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAyMzUsIDE5MSwgMjE1LCAxOTMsIDgxLCAxLCAyNTQsIDcxLCAKLSAgICAyNDMsIDkyLCAyNTIsIDc0LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMTMzLCAyNTIsIDc0LCA4MSwgMSwgMjU0LCA3MSwgCi0gICAgMjQzLCA5MiwgNjEsIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCA3MiwgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDE4MSwgCi0gICAgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDIyOSwgMTU5LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjUwLCAyMTksIDgxLCAKLSAgICAxLCAyNTQsIDcxLCAyNDMsIDkyLCAyMTYsIDExNSwgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDIxNiwgMTA1LCA4MSwgMSwgCi0gICAgMjU0LCA3MSwgMjQzLCA5MiwgMjQ4LCA4NiwgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDIyOCwgMTk4LCA4MSwgMSwgMjU0LCAKLSAgICA3MSwgMjQzLCA5MiwgMjE4LCA1MiwgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDI0OCwgMTY0LCA4MSwgMSwgMjU0LCA3MSwgCi0gICAgMjQzLCA5MiwgMTkzLCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjI2LCAyMywgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIAotICAgIDIxOSwgMTU3LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjEyLCA3NSwgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDIxMiwgCi0gICAgMTA5LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjU0LCAxMTQsIDgxLCAxLCAyMTYsIDI1MCwgMjU0LCA3MSwgMjQzLCAKLSAgICA5MiwgMjE4LCA1MiwgODEsIDEsIDIxNiwgMjUwLCAyNTQsIDcxLCAyNDMsIDkyLCAyMTIsIDc1LCA4MSwgMSwgMjMxLCAyNDYsIAotICAgIDI1NCwgNzEsIDI0MywgOTIsIDI0MiwgMjI1LCA4MSwgMSwgMjMxLCAyNDYsIDI1NCwgNzEsIDI0MywgOTIsIDIyOSwgMTU5LCAKLSAgICA4MSwgMSwgMjMxLCAyNDYsIDI1NCwgNzEsIDI0MywgOTIsIDI1MCwgMjE5LCA4MSwgMSwgMjMxLCAyNDYsIDI1NCwgNzEsIAotICAgIDI0MywgOTIsIDIzNSwgMTE1LCA4MSwgMSwgMjMxLCAyNDYsIDI1NCwgNzEsIDI0MywgOTIsIDIxNiwgMTE1LCA4MSwgMSwgCi0gICAgMjMxLCAyNDYsIDI1NCwgNzEsIDI0MywgOTIsIDI0OCwgNzAsIDgxLCAxLCAyMzEsIDI0NiwgMjU0LCA3MSwgMjQzLCA5MiwgCi0gICAgMjE4LCA1MiwgODEsIDEsIDIzMSwgMjQ2LCAyNTQsIDcxLCAyNDMsIDkyLCAyNDcsIDIzMiwgODEsIDEsIDIzMSwgMjQ2LCAKLSAgICAyNTQsIDcxLCAyNDMsIDkyLCAyMTksIDE1NywgODEsIDEsIDIzMSwgMjQ2LCAyNTQsIDcxLCAyNDMsIDkyLCAyNDksIDE1LCAKLSAgICA4MSwgMSwgMjMxLCAyNDYsIDI1NCwgNzEsIDI0MywgOTIsIDIxMiwgNzUsIDgxLCAxLCAyMzEsIDI0NiwgMjU0LCA3MSwgCi0gICAgMjQzLCA5MiwgMjEyLCAxMDksIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAxNTEsIDY5LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCAKLSAgICA5MiwgMTUxLCAxODYsIDgxLCAxLCAyMzEsIDI0NiwgMjU0LCA3MSwgMjQzLCA5MiwgMjUxLCAxOTUsIDgxLCAxLCAyNTQsIAotICAgIDcxLCAyNDMsIDkyLCAyNDgsIDE1NCwgODEsIDEsIDIzMSwgMjQ2LCAyNTQsIDcxLCAyNDMsIDkyLCAyMzMsIDI1LCAxOCwgCi0gICAgMTksIDIyNiwgMjMzLCAxOCwgMTksIDI1MywgODMsIDE4LCAxOSwgMjU0LCAxODgsIDE4LCAxOSwgMjE0LCA5LCAxOCwgMTksIAotICAgIDIyNSwgMTAxLCAxOCwgMTksIDIyNiwgMTAzLCAxOCwgMTksIDIyNCwgMjQ5LCAxOCwgMTksIDIxNywgMjM4LCAxOCwgMTksIAotICAgIDIzNCwgMTk1LCAxOCwgMTksIDIzMywgMjAxLCAxOCwgMTksIDIzMSwgMTk2LCAxOCwgMTksIDIyOCwgMTQ4LCAxOCwgMTksIAotICAgIDIzMCwgMywgMTgsIDE5LCAyMzMsIDkyLCAxOCwgMTksIDIxOSwgMjA5LCAxOCwgMTksIDIyMiwgMTI5LCAxOCwgMTksIDIyMCwgCi0gICAgMTU2LCAxOCwgMTksIDIyMCwgMjQ2LCAxOCwgMTksIDIyMCwgMTI3LCAxOCwgMTksIDIxMiwgMjExLCAxOCwgMTksIDIxMywgCi0gICAgNDMsIDE4LCAxOSwgMjI0LCAyNywgMTgsIDE5LCAyMjgsIDI4LCAxOCwgMTksIDIyNywgODIsIDIyOCwgMjgsIDE4LCAxOSwgCi0gICAgMjI4LCAyNywgMTgsIDE5LCAyMjcsIDgyLCAyMjgsIDI3LCAxOCwgMTksIDIyOCwgMjYsIDE4LCAxOSwgMjI3LCA4MiwgMjI4LCAKLSAgICAyNiwgMTgsIDE5LCAyMjgsIDI1LCAxOCwgMTksIDIyNywgODIsIDIyOCwgMjUsIDE4LCAxOSwgMjIzLCAxNywgMTgsIDE5LCAKLSAgICAyMjMsIDE2LCAxOCwgMTksIDIyMywgMTUsIDE4LCAxOSwgMjIzLCAxNCwgMTgsIDE5LCAyMjMsIDEzLCAxOCwgMTksIDIyMywgCi0gICAgMjEsIDE4LCAxOSwgMjI3LCA4MiwgMjI2LCAyMjksIDE4LCAxOSwgMjI3LCA4MiwgMjE4LCA5OSwgMTgsIDE5LCAyMjcsIDgyLCAKLSAgICAyMzUsIDI3LCAxOCwgMTksIDIyNywgODIsIDI1MCwgMjUyLCAxOCwgMTksIDIyNywgODIsIDE4MywgMTgsIDE5LCAyMjcsIAotICAgIDgyLCAyMDQsIDE4LCAxOSwgMjI3LCA4MiwgMTk3LCAxOCwgMTksIDIyNywgODIsIDIyMSwgMjYsIDE4LCAxOSwgMjQ1LCAKLSAgICAxNzUsIDIxNCwgODIsIDE4LCAxOSwgMjEzLCAyNDgsIDIxNCwgODIsIDE4LCAxOSwgNDAsIDMsIDIyMywgMTMwLCAxOCwgMTksIAotICAgIDQwLCAyMjQsIDQ4LCAyNDcsIDc0LCAxOCwgMTksIDIyNCwgMTEyLCAyMjMsIDE4LCAxOCwgMTksIDE0OCwgMjMyLCAxODAsIAotICAgIDE4LCAxOSwgMTQ4LCAyMzMsIDE1NiwgMTgsIDE5LCAyMTcsIDgwLCAxOCwgMTksIDIxNywgODIsIDE4LCAxOSwgMjE2LCA5NywgCi0gICAgMTgsIDE5LCAyMTYsIDk5LCAxOCwgMTksIDIxNiwgMTA0LCAxOCwgMTksIDIxNywgMiwgMTgsIDE5LCAyMTcsIDQsIDE4LCAKLSAgICAxOSwgMjIyLCAxMjcsIDIyMCwgMTMyLCAxOCwgMTksIDIyMiwgMTI3LCAyMjAsIDE4MSwgMTgsIDE5LCAyMjIsIDEyNywgCi0gICAgMjQxLCAzOSwgMTgsIDE5LCA2NiwgMjQyLCA1NCwgMTgsIDE5LCA2NiwgMjQ4LCAzLCAyNDMsIDMxLCAxOCwgMTksIDY2LCAKLSAgICAyNDMsIDEwNywgMTgsIDE5LCA2NiwgMjQyLCA1OSwgMTgsIDE5LCAyMjIsIDEyNywgMjM1LCAzNywgMTgsIDE5LCA2NiwgCi0gICAgMjM1LCAzNSwgMTgsIDE5LCAyNTEsIDI0NCwgMjQ4LCAzLCAxNTAsIDE4LCAxOSwgMjUxLCAyNDQsIDI0OCwgMywgMTQ5LCAKLSAgICAxOCwgMTksIDY2LCAyNDcsIDI1NCwgMTk3LCAyMDksIDIxNCwgMTAzLCAyMzMsIDM0LCAyMDksIDEsIDE4MSwgMjA5LCAxLCAKLSAgICAyMzQsIDEzOCwgMjA5LCAxLCAyNDMsIDExMCwgMjA5LCAxLCAyNDIsIDIyNSwgMjA5LCAxLCAyMjksIDE1OSwgMjA5LCAxLCAKLSAgICAyNTAsIDIxOSwgMjA5LCAxLCAyNTAsIDkyLCAyMDksIDEsIDIzNSwgMTM5LCAyMDksIDEsIDIzNSwgMTE1LCAyMDksIDEsIAotICAgIDIxMywgNjAsIDIwOSwgMSwgMjE4LCA1MiwgMjA5LCAxLCAyMTcsIDE2MSwgMjA5LCAxLCAyNDgsIDE2NCwgMjA5LCAxLCAKLSAgICAyNDcsIDIzMiwgMjA5LCAxLCAyMDUsIDIwOSwgMSwgMTkzLCAyMDksIDEsIDIyNiwgMjMsIDIwOSwgMSwgMjUyLCAxMDcsIAotICAgIDIwOSwgMSwgMjUxLCAxOTUsIDIwOSwgMSwgMTg4LCAyMDksIDEsIDE4NiwgMjA5LCAxLCAyMDMsIDIwOSwgMSwgMjMzLCAKLSAgICAxNTcsIDIwOSwgMSwgMjE0LCA0OSwgMjA5LCAxLCAyMjEsIDI0LCAyMDksIDEsIDIxOSwgMTU3LCAyMDksIDEsIDIyMiwgCi0gICAgMjAyLCAyMDksIDEsIDE1OSwgMjA5LCAzMCwgNSwgNjEsIDIwOSwgMzAsIDUsIDcyLCAyMDksIDMwLCA1LCA2OSwgMjA5LCAKLSAgICAzMCwgNSwgMjQ1LCAxNjUsIDIwOSwgMzAsIDUsIDI1NCwgMTA4LCAyMDksIDMwLCA1LCAyMjcsIDQ5LCAyMDksIDMwLCA1LCAKLSAgICAyNTMsIDEwOCwgMjA5LCAzMCwgNSwgNzQsIDIwOSwgMzAsIDUsIDc1LCAyMDksIDIxOSwgMTgsIDEsIDE4NiwgMjA5LCAyMTksIAotICAgIDE4LCAxLCAyMDMsIDIwOSwgMjE5LCAxOCwgMSwgMjE0LCA0OSwgMjA5LCAzLCAxLCAxODEsIDIwOSwgMywgMSwgMjI5LCAKLSAgICAxNTksIDIwOSwgMywgMSwgMjUzLCAyNDIsIDIwOSwgMywgMSwgMjE4LCA1MiwgMjA5LCAzLCAxLCAyMDUsIDIwOSwgMywgMSwgCi0gICAgMTkzLCAyMDksIDMsIDEsIDE4OCwgMjA5LCAzLCAxLCAyMDMsIDIwOSwgMywgMSwgMjMzLCAxNTcsIDIwOSwgNSwgMjMwLCAKLSAgICAxNTksIDIwOSwgNSwgMjM0LCAxNzcsIDIwOSwgNSwgMjIyLCAyMDEsIDIwOSwgNSwgMjMyLCAxODAsIDIwOSwgMjQ0LCAyNTQsIAotICAgIDc3LCAyMDksIDIyNCwgMTU4LCA3NywgMjA5LCAyMSwgMjEyLCA3OSwgMjA5LCAyMSwgMTE2LCAyMDksIDIxLCAxMDksIDIwOSwgCi0gICAgMjEsIDE2NiwgMjA5LCAyMSwgMTYzLCAyMDksIDIxLCAxODAsIDIwOSwgMjEsIDE4OSwgMjA5LCAyMSwgMTk4LCAyMDksIDIxLCAKLSAgICAxOTUsIDIwOSwgMjEsIDIwMCwgMzgsIDIzMywgODMsIDEsIDE4MSwgMzgsIDIzMywgODMsIDEsIDIxMywgMTUzLCAzOCwgCi0gICAgMjMzLCA4MywgMSwgMjI5LCAxNTksIDM4LCAyMzMsIDgzLCAxLCAyMTYsIDE0MSwgMzgsIDIzMywgODMsIDEsIDIyMiwgMjAyLCAKLSAgICAzOCwgMjMzLCA4MywgMSwgMTg2LCAzOCwgMjMzLCA4MywgMSwgMjE4LCA1MiwgMzgsIDIzMywgODMsIDEsIDIxNywgMTYxLCAKLSAgICAzOCwgMjMzLCA4MywgMSwgMjMzLCAxNTcsIDM4LCAyMzMsIDgzLCAxLCAxOTMsIDM4LCAyMzMsIDgzLCAxLCAyMjYsIDIzLCAKLSAgICAzOCwgMjMzLCA4MywgMSwgMTg4LCAzOCwgMjMzLCA4MywgMSwgMjQ0LCAxNjQsIDM4LCAyMzMsIDgzLCAxLCAyMTUsIDEsIAotICAgIDM4LCAyMzMsIDgzLCAxLCAxNTksIDM4LCAyMzMsIDgzLCAxLCAyMjQsIDIzMiwgMzgsIDIzMywgODMsIDEsIDIzNCwgMTM4LCAKLSAgICAzOCwgMjMzLCA4MywgMSwgMjE2LCAxMzMsIDM4LCAyMzMsIDgzLCAxLCAyMDUsIDM4LCAyMzMsIDgzLCAxLCA2MSwgMzgsIAotICAgIDIzMywgODMsIDEsIDcyLCAzOCwgMjMzLCA4MywgMSwgMjQ1LCAxNjUsIDM4LCAyMzMsIDgzLCAxLCAyNDUsIDE1NCwgMzgsIAotICAgIDIzMywgODMsIDEsIDY5LCAzOCwgMjMzLCA4MywgMSwgMjI3LCA0OSwgMzgsIDIzMywgODMsIDEsIDc1LCAzOCwgMjMzLCA4MywgCi0gICAgMSwgMjE1LCAxODMsIDM4LCAyMzMsIDgzLCAxLCA3NCwgMzgsIDIzMywgODMsIDEsIDI1MywgMTA2LCAzOCwgMjMzLCA4MywgCi0gICAgMSwgMjU0LCAxMDgsIDM4LCAyMzMsIDgzLCAxLCAyMTYsIDIzOSwgMzgsIDIzMywgODMsIDEsIDIxNiwgMjM4LCAzOCwgMjMzLCAKLSAgICA4MywgMSwgMjE2LCAyMzcsIDM4LCAyMzMsIDgzLCAxLCAyMTYsIDIzNiwgMzgsIDIzMywgODMsIDEsIDIxNiwgMjM1LCAxNTYsIAotICAgIDM4LCAxNjUsIDEsIDEyNCwgMjI0LCAyMzIsIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAyMjQsIDIzMiwgMTU2LCAzOCwgMTY1LCAKLSAgICAxLCAxMjQsIDE4MSwgMTU2LCAzOCwgMTY1LCAxLCAxMjQsIDIxMywgMTUzLCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMjI5LCAKLSAgICAxNTksIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAxODEsIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAyMTMsIDE1MywgMTU2LCAzOCwgCi0gICAgMTY1LCAxLCAxMTUsIDIyOSwgMTU5LCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMjE2LCAxNDEsIDE1NiwgMzgsIDE2NSwgMSwgCi0gICAgMTI0LCAyMjIsIDIwMiwgMTU2LCAzOCwgMTY1LCAxLCAxMjQsIDE4NiwgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDIxNiwgMTQxLCAKLSAgICAxNTYsIDM4LCAxNjUsIDEsIDExNSwgMjIyLCAyMDIsIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAxODYsIDE1NiwgMzgsIDE2NSwgCi0gICAgMSwgMTI0LCAyMTgsIDUyLCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMjE3LCAxNjEsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAKLSAgICAyMDUsIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAyMTgsIDUyLCAxNTYsIDM4LCAxNjUsIDEsIDExNSwgMjE3LCAxNjEsIDE1NiwgCi0gICAgMzgsIDE2NSwgMSwgMTE1LCAyMDUsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAxOTMsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAKLSAgICAyMjYsIDIzLCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMTg4LCAxNTYsIDM4LCAxNjUsIDEsIDExNSwgMTkzLCAxNTYsIDM4LCAKLSAgICAxNjUsIDEsIDExNSwgMjI2LCAyMywgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDE4OCwgMTU2LCAzOCwgMTY1LCAxLCAxMjQsIAotICAgIDI0NCwgMTY0LCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMjE1LCAxLCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMjMzLCAxNTcsIAotICAgIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAyNDQsIDE2NCwgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDIxNSwgMSwgMTU2LCAzOCwgCi0gICAgMTY1LCAxLCAxMTUsIDIzMywgMTU3LCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMTU5LCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgCi0gICAgMjQ4LCAxNjQsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAyNTIsIDEwNywgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDE1OSwgMTU2LCAKLSAgICAzOCwgMTY1LCAxLCAxMTUsIDI0OCwgMTY0LCAxNTYsIDM4LCAxNjUsIDEsIDExNSwgMjUyLCAxMDcsIDE1NiwgMzgsIDE2NSwgCi0gICAgMSwgMTI0LCAyMzMsIDIwNiwgMTU2LCAzOCwgMTY1LCAxLCAxMjQsIDIxMywgMTI2LCAxNTYsIDM4LCAxNjUsIDEsIDExNSwgCi0gICAgMjMzLCAyMDYsIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAyMTMsIDEyNiwgMTU2LCAzOCwgMTY1LCAxLCAxMjQsIDIxOSwgMjYsIAotICAgIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAyMTksIDI2LCAxNTYsIDM4LCAxNjUsIDMwLCA1LCAzMCwgMjIwLCAxNjMsIDE1NiwgCi0gICAgMzgsIDE2NSwgMzAsIDUsIDI1NCwgMjMyLCAxNTYsIDM4LCAxNjUsIDMwLCA1LCAyMzYsIDI4LCAxNTYsIDM4LCAxNjUsIDMwLCAKLSAgICA1LCA2OSwgMTU2LCAzOCwgMTY1LCAzMCwgNSwgMjE1LCA5MiwgMTU2LCAzOCwgMTY1LCAzMCwgNSwgNzQsIDE1NiwgMzgsIAotICAgIDE2NSwgMzAsIDUsIDI1NCwgMTQ4LCAxNTYsIDM4LCAxNjUsIDMwLCA1LCA3NSwgMTU2LCAzOCwgMTY1LCAzMCwgNSwgMjI3LCAKLSAgICAxMjAsIDE1NiwgMzgsIDE2NSwgMzAsIDUsIDIxNSwgMTgzLCAxNTYsIDM4LCAxNjUsIDMwLCA1LCAyNTMsIDgzLCAxNTYsIAotICAgIDM4LCAxNjUsIDMwLCA1LCAyNTQsIDE4OCwgMTU2LCAzOCwgMTY1LCAzMCwgNSwgMjE1LCA4NSwgMTU2LCAzOCwgMTY1LCAzMCwgCi0gICAgNSwgMjI2LCAyMzMsIDE1NiwgMzgsIDE2NSwgMzAsIDUsIDIyNywgMTE3LCAxNTYsIDM4LCAxNjUsIDMwLCA1LCAyMTUsIAotICAgIDE4MCwgMTU2LCAzOCwgMTY1LCAzMCwgNSwgMjM1LCAxNTAsIDE1NiwgMzgsIDE2NSwgMSwgNDAsIDIxNSwgNzksIDE1NiwgCi0gICAgMzgsIDE2NSwgMSwgNDAsIDIyOSwgMTYxLCAxNTYsIDM4LCAxNjUsIDEsIDQwLCAyMDQsIDE1NiwgMzgsIDE2NSwgMSwgNDAsIAotICAgIDE4MywgMTU2LCAzOCwgMTY1LCAxLCA0MCwgMjM1LCAyNywgMTU2LCAzOCwgMTY1LCAxLCA0MCwgMjQ5LCAzLCAxNTYsIDM4LCAKLSAgICAxNjUsIDEsIDQwLCAyNTMsIDc0LCAxNTYsIDM4LCAxNjUsIDE2MCwgMjMxLCAyMjEsIDE1NiwgMzgsIDE2NSwgMTYwLCAyMzEsIAotICAgIDIyMCwgMTU2LCAzOCwgMTY1LCAyMSwgMjEyLCA3OSwgMTU2LCAzOCwgMTY1LCAyMSwgMTE2LCAxNTYsIDM4LCAxNjUsIDIxLCAKLSAgICAxMDksIDE1NiwgMzgsIDE2NSwgMjEsIDE2NiwgMTU2LCAzOCwgMTY1LCAyMSwgMTYzLCAxNTYsIDM4LCAxNjUsIDIxLCAxODAsIAotICAgIDE1NiwgMzgsIDE2NSwgMjEsIDE4OSwgMTU2LCAzOCwgMTY1LCAyMSwgMTk4LCAxNTYsIDM4LCAxNjUsIDIxLCAxOTUsIDE1NiwgCi0gICAgMzgsIDE2NSwgMjEsIDIwMCwgMTU2LCAzOCwgMTY1LCA4OCwgMjEsIDExNiwgMTU2LCAzOCwgMTY1LCA1LCAyMzMsIDE0MywgCi0gICAgMTU2LCAzOCwgMTY1LCA1LCAyMzMsIDE0MiwgODQsIDE2LCAyMjYsIDEwOSwgODQsIDE2LCAyMzAsIDE0MiwgMjM0LCAzNCwgCi0gICAgODQsIDE2LCAyMjUsIDIwNCwgMjM0LCAzNCwgODQsIDE2LCAyNTEsIDIyNiwgMjM0LCAzNCwgODQsIDE2LCAyNTEsIDMzLCAKLSAgICAyMzQsIDM0LCA4NCwgMTYsIDIyNSwgOTYsIDIzNCwgMzQsIDg0LCAxNiwgMjI1LCA5MCwgMjM0LCAzNCwgODQsIDE2LCAyMjUsIAotICAgIDg4LCAyMzQsIDM0LCA4NCwgMTYsIDIyNSwgOTQsIDIzNCwgMzQsIDg0LCAxNiwgMjI1LCA5MiwgMjM0LCAzNCwgODQsIDE2LCAKLSAgICAyNDgsIDExOCwgMjM0LCAzNCwgODQsIDE2LCAyNDgsIDExNCwgMjM0LCAzNCwgODQsIDE2LCAyNDgsIDExMywgMjM0LCAzNCwgCi0gICAgODQsIDE2LCAyNDgsIDExNiwgMjM0LCAzNCwgODQsIDE2LCAyNDgsIDExNSwgMjM0LCAzNCwgODQsIDE2LCAyNDgsIDExMiwgCi0gICAgMjM0LCAzNCwgODQsIDE2LCAyMTYsIDUxLCA4NCwgMTYsIDIzMCwgMTQyLCAyMjMsIDEwNiwgODQsIDE2LCAyMjUsIDIwNCwgCi0gICAgMjIzLCAxMDYsIDg0LCAxNiwgMjUxLCAyMjYsIDIyMywgMTA2LCA4NCwgMTYsIDI1MSwgMzMsIDIyMywgMTA2LCA4NCwgMTYsIAotICAgIDIyNSwgOTYsIDIyMywgMTA2LCA4NCwgMTYsIDIyNSwgOTAsIDIyMywgMTA2LCA4NCwgMTYsIDIyNSwgODgsIDIyMywgMTA2LCAKLSAgICA4NCwgMTYsIDIyNSwgOTQsIDIyMywgMTA2LCA4NCwgMTYsIDIyNSwgOTIsIDIyMywgMTA2LCA4NCwgMTYsIDI0OCwgMTE4LCAKLSAgICAyMjMsIDEwNiwgODQsIDE2LCAyNDgsIDExNCwgMjIzLCAxMDYsIDg0LCAxNiwgMjQ4LCAxMTMsIDIyMywgMTA2LCA4NCwgMTYsIAotICAgIDI0OCwgMTE2LCAyMjMsIDEwNiwgODQsIDE2LCAyNDgsIDExNSwgMjIzLCAxMDYsIDg0LCAxNiwgMjQ4LCAxMTIsIDIyMywgCi0gICAgMTA2LCAyNTEsIDUwLCAxLCAxODEsIDI1MSwgNTAsIDEsIDI0MywgMTEwLCAyNTEsIDUwLCAxLCAyMjksIDE1OSwgMjUxLCAKLSAgICA1MCwgMSwgMjI5LCAxMDgsIDI1MSwgNTAsIDEsIDE5MywgMjUxLCA1MCwgMSwgMjUyLCAxMDcsIDI1MSwgNTAsIDEsIDE4OCwgCi0gICAgMjUxLCA1MCwgMSwgMjMwLCAxNzUsIDI1MSwgNTAsIDEsIDIxOCwgNTIsIDI1MSwgNTAsIDEsIDI0OCwgMTY0LCAyNTEsIDUwLCAKLSAgICAxLCAyMDUsIDI1MSwgNTAsIDEsIDIyOCwgMTQ3LCAyNTEsIDUwLCAxLCAyNTAsIDIxOSwgMjUxLCA1MCwgMSwgMjM1LCAxMzksIAotICAgIDI1MSwgNTAsIDEsIDIyOCwgMjMsIDI1MSwgNTAsIDEsIDIyOCwgMTksIDI1MSwgNTAsIDEsIDE4NiwgMjUxLCA1MCwgMSwgCi0gICAgMjAzLCAyNTEsIDUwLCAxLCAyMzMsIDE1NywgMjUxLCA1MCwgMSwgMjE1LCAxLCAyNTEsIDUwLCAxLCAyMjIsIDIwMiwgMjUxLCAKLSAgICA1MCwgMSwgNjEsIDI1MSwgNTAsIDEsIDE1OSwgMjUxLCA1MCwgMzAsIDUsIDcyLCAyNTEsIDUwLCAzMCwgNSwgNjksIDI1MSwgCi0gICAgNTAsIDMwLCA1LCA3NCwgMjUxLCA1MCwgMzAsIDUsIDc1LCAyNTEsIDUwLCAzMCwgNSwgMjU0LCAxNDgsIDI1MSwgNTAsIAotICAgIDIyNiwgMTg3LCAyNTEsIDUwLCAyNDUsIDEwMSwgNjUsIDIyMiwgOTEsIDM4LCA4OCwgMSwgMTI0LCAxODEsIDM4LCA4OCwgMSwgCi0gICAgMTI0LCAyMzQsIDEzOCwgMzgsIDg4LCAxLCAxMjQsIDIzMywgMTkzLCAzOCwgODgsIDEsIDExNSwgMTgxLCAzOCwgODgsIDEsIAotICAgIDExNSwgMjMzLCAxOTMsIDM4LCA4OCwgMSwgMTE1LCAyMzQsIDEzOCwgMzgsIDg4LCAxLCAyMjksIDE1OSwgMzgsIDg4LCAxLCAKLSAgICAxMjQsIDI1MCwgMjE5LCAzOCwgODgsIDEsIDEyNCwgMjUwLCA5MiwgMzgsIDg4LCAxLCAxMTUsIDI1MCwgMjE5LCAzOCwgODgsIAotICAgIDEsIDExNSwgMjIyLCAyMDIsIDM4LCA4OCwgMSwgMTE1LCAyNTAsIDkyLCAzOCwgODgsIDEsIDIyOCwgMjMsIDM4LCA4OCwgMSwgCi0gICAgMjI0LCAzMiwgMzgsIDg4LCAxLCAxMjQsIDIyNCwgMzAsIDM4LCA4OCwgMSwgMjQ4LCAxNjQsIDM4LCA4OCwgMSwgMTE1LCAKLSAgICAyMjQsIDMwLCAzOCwgODgsIDEsIDIyNCwgNDEsIDM4LCA4OCwgMSwgMTI0LCAyMTgsIDUyLCAzOCwgODgsIDEsIDEyNCwgCi0gICAgMjE3LCAxNjEsIDM4LCA4OCwgMSwgMTE1LCAyMTgsIDUyLCAzOCwgODgsIDEsIDExNSwgMjE3LCAxNjEsIDM4LCA4OCwgMSwgCi0gICAgMjA1LCAzOCwgODgsIDEsIDI1MiwgMTA3LCAzOCwgODgsIDEsIDEyNCwgMTkzLCAzOCwgODgsIDEsIDEyNCwgMjI2LCAyMywgCi0gICAgMzgsIDg4LCAxLCAxMjQsIDI0NCwgMTY0LCAzOCwgODgsIDEsIDExNSwgMTkzLCAzOCwgODgsIDEsIDExNSwgMjQ0LCAxNjQsIAotICAgIDM4LCA4OCwgMSwgMTE1LCAyMjYsIDIzLCAzOCwgODgsIDEsIDE4OCwgMzgsIDg4LCAxLCAxMTUsIDE4NiwgMzgsIDg4LCAxLCAKLSAgICAxMjQsIDE4NiwgMzgsIDg4LCAxLCAyMDMsIDM4LCA4OCwgMSwgMjIzLCA0OCwgMzgsIDg4LCAxLCAyMzMsIDE1NywgMzgsIAotICAgIDg4LCAxLCAyMzIsIDE1MSwgMzgsIDg4LCAxLCAyMTQsIDQ5LCAzOCwgODgsIDEsIDEyNCwgMjIxLCAyNCwgMzgsIDg4LCAxLCAKLSAgICAxMjQsIDIxOSwgMTU3LCAzOCwgODgsIDEsIDEyNCwgMjIyLCAyMDIsIDM4LCA4OCwgMSwgMTI0LCAxNTksIDM4LCA4OCwgMSwgCi0gICAgMjMyLCAyMTMsIDM4LCA4OCwgMSwgNjEsIDM4LCA4OCwgMSwgMTE1LCAxNTksIDM4LCA4OCwgMSwgNzIsIDM4LCA4OCwgMSwgCi0gICAgMjM2LCAyOCwgMzgsIDg4LCAxLCA2OSwgMzgsIDg4LCAxLCAyMTUsIDkyLCAzOCwgODgsIDEsIDI0NSwgMTY1LCAzOCwgODgsIAotICAgIDEsIDIyNywgNDksIDM4LCA4OCwgMSwgMjMzLCAxNDMsIDM4LCA4OCwgMSwgMjQyLCAxMDksIDIyMiwgMjAyLCAzOCwgODgsIAotICAgIDI0OSwgMTMzLCA1LCAxMzgsIDIwMywgMzgsIDg4LCAyNDksIDEzMywgNSwgMTM4LCAyMzMsIDE1NywgMzgsIDg4LCAyNDksIAotICAgIDEzMywgNSwgMjMzLCAxNTgsIDIxOCwgOSwgMjMzLCAxMzMsIDM4LCA4OCwgNSwgMjMyLCA5LCAyMzQsIDIzNiwgMjMzLCAKLSAgICAxMzMsIDM4LCA4OCwgMjQ5LCAxMzMsIDUsIDQwLCAyMjksIDE1OSwgMzgsIDg4LCAyNDksIDEzMywgNSwgMTE1LCAxOTMsIAotICAgIDM4LCA4OCwgMjQ5LCAxMzMsIDUsIDEyNCwgMjI0LCAzMSwgMTY3LCAxMTUsIDE5MywgMzgsIDg4LCAyNDksIDEzMywgNSwgCi0gICAgMTg4LCAzOCwgODgsIDI0OSwgMTMzLCA1LCAyNTIsIDEwNywgMzgsIDg4LCAyNDksIDEzMywgNSwgMjIyLCAyMDIsIDM4LCAKLSAgICA4OCwgNSwgMjIyLCAxODEsIDM4LCA4OCwgMzAsIDUsIDYxLCAzOCwgODgsIDMwLCA1LCAyMzIsIDksIDIyMiwgMTQyLCAzOCwgCi0gICAgODgsIDMwLCA1LCAyNTQsIDIzMiwgMzgsIDg4LCAzMCwgNSwgMjE4LCAxNSwgMjU0LCAyMzIsIDM4LCA4OCwgMzAsIDUsIDcyLCAKLSAgICAzOCwgODgsIDMwLCA1LCAyMzYsIDI4LCAzOCwgODgsIDMwLCA1LCAyMTUsIDE4MywgMzgsIDg4LCAzMCwgNSwgMjE1LCA5MSwgCi0gICAgMzgsIDg4LCAzMCwgNSwgNjksIDM4LCA4OCwgMzAsIDUsIDIxNSwgOTIsIDM4LCA4OCwgMzAsIDUsIDc1LCAzOCwgODgsIDMwLCAKLSAgICA1LCAyMjcsIDEyMSwgNTUsIDM4LCA4OCwgMzAsIDUsIDIyNiwgMjMzLCAzOCwgODgsIDMwLCA1LCA3NCwgMzgsIDg4LCAzMCwgCi0gICAgNSwgMjU0LCAxNDgsIDM4LCA4OCwgMzAsIDUsIDIyNywgNDksIDM4LCA4OCwgMzAsIDUsIDI1NCwgMTA4LCAzOCwgODgsIDMwLCAKLSAgICA1LCA4OCwgMjU0LCAxMDgsIDM4LCA4OCwgMzAsIDUsIDIyNywgMTIxLCA0OSwgMzgsIDg4LCA1LCAyMzIsIDksIDIzNCwgCi0gICAgMjM1LCAzOCwgODgsIDUsIDIxNiwgMjQwLCAzOCwgODgsIDUsIDIxNiwgMjM5LCAzOCwgODgsIDUsIDIzNCwgMTA2LCAyMTYsIAotICAgIDIzOCwgMzgsIDg4LCA1LCAyMzQsIDEwNiwgMjE2LCAyMzcsIDM4LCA4OCwgNSwgMjM0LCAxMDYsIDIxNiwgMjM2LCAzOCwgCi0gICAgODgsIDUsIDIyNCwgNzcsIDI0MiwgMjYsIDM4LCA4OCwgNSwgMjMyLCA5LCAyMjIsIDE2OCwgMzgsIDg4LCA1LCAyMzQsIAotICAgIDEwNSwgMjM0LCAyMjAsIDM4LCA4OCwgMzcsIDI0OSwgNTUsIDI0NywgNzQsIDM4LCA4OCwgMjQxLCAzMywgMjEsIDIxMiwgCi0gICAgNzksIDM4LCA4OCwgMjQxLCAzMywgMjEsIDExNiwgMzgsIDg4LCAyNDEsIDMzLCAyMSwgMTA5LCAzOCwgODgsIDI0MSwgMzMsIAotICAgIDIxLCAxNjYsIDM4LCA4OCwgMjQxLCAzMywgMjEsIDE2MywgMzgsIDg4LCAyNDEsIDMzLCAyMSwgMTgwLCAzOCwgODgsIDI0MSwgCi0gICAgMzMsIDIxLCAxODksIDM4LCA4OCwgMjQxLCAzMywgMjEsIDE5OCwgMzgsIDg4LCAyNDEsIDMzLCAyMSwgMTk1LCAzOCwgODgsIAotICAgIDI0MSwgMzMsIDIxLCAyMDAsIDM4LCA4OCwgODgsIDIxLCAyMTIsIDc5LCAzOCwgODgsIDg4LCAyMSwgMTE2LCAzOCwgODgsIAotICAgIDg4LCAyMSwgMTA5LCAzOCwgODgsIDg4LCAyMSwgMTY2LCAzOCwgODgsIDg4LCAyMSwgMTYzLCAzOCwgODgsIDg4LCAyMSwgCi0gICAgMTgwLCAzOCwgODgsIDg4LCAyMSwgMTg5LCAzOCwgODgsIDg4LCAyMSwgMTk4LCAzOCwgODgsIDg4LCAyMSwgMTk1LCAzOCwgCi0gICAgODgsIDg4LCAyMSwgMjAwLCAzOCwgODgsIDUsIDIxMywgMjM0LCAzOCwgODgsIDUsIDIxMywgMjMzLCAzOCwgODgsIDUsIAotICAgIDIyMiwgMTMzLCAzOCwgODgsIDUsIDIzNCwgMTY2LCAzOCwgODgsIDUsIDI0MCwgMjE5LCAzOCwgODgsIDUsIDI0NywgODgsIAotICAgIDM4LCA4OCwgNSwgMjIzLCAyMDIsIDIyMywgODksIDIyNCwgNDEsIDM4LCA4OCwgNSwgMjMyLCA5LCAyMTMsIDYxLCAzOCwgCi0gICAgODgsIDUsIDIzNSwgMTAsIDM4LCA4OCwgNSwgMjM1LCA5LCAzOCwgODgsIDUsIDIyMiwgMTM5LCAzOCwgODgsIDUsIDIyMiwgCi0gICAgMTM4LCAzOCwgODgsIDUsIDI0MSwgMjQ4LCAzOCwgODgsIDUsIDI1MCwgMjE2LCA5OSwgNSwgMjE1LCAxNzAsIDIyMywgMTgzLCAKLSAgICA5OSwgNSwgMjE1LCAxNzAsIDI1MCwgMTg5LCA5OSwgNSwgMjUwLCAxMjAsIDk5LCA1LCAyMTgsIDIxNSwgOTksIDUsIDI1MSwgCi0gICAgMTU2LCA5OSwgMSwgMjU0LCA5MiwgOTksIDEsIDI1NCwgOTMsIDIxNywgMjIxLCA5OSwgMSwgMjM2LCAyNCwgOTksIDEsIAotICAgIDIzNiwgMjUsIDIxNywgMjIxLCA5OSwgMSwgMjE1LCAxNzMsIDk5LCAxLCAyMTUsIDE3NCwgMjE3LCAyMjEsIDk5LCAxLCAKLSAgICAyMjQsIDc3LCAyMjMsIDIyOSwgOTksIDEsIDIyNCwgNzcsIDIyMywgMjMwLCAyMTcsIDIyMSwgOTksIDEsIDIzMywgMTU4LCAKLSAgICAyMzMsIDQ4LCA5OSwgMSwgMjMzLCAxNTgsIDIzMywgNDksIDIxNywgMjIxLCA5OSwgMSwgMjQ1LCAxMzYsIDk5LCAxLCAyNTQsIAotICAgIDEwNiwgOTksIDEsIDIyNywgNzgsIDk5LCAxLCAyMjcsIDc5LCAyMTcsIDIyMSwgOTksIDEsIDE4MSwgOTksIDEsIDIzNSwgCi0gICAgMTcsIDIzMiwgMTIsIDk5LCAxLCAyNDMsIDExMCwgOTksIDEsIDI0MywgMTExLCAyNDIsIDEzNywgOTksIDEsIDIyOSwgMTU5LCAKLSAgICA5OSwgMSwgMjUwLCAyMTksIDk5LCAxLCAyNTAsIDIyMCwgMjMzLCAxNDYsIDk5LCAxLCAyMzUsIDEzOSwgOTksIDEsIDIzNSwgCi0gICAgMTQwLCAyMzUsIDExOSwgOTksIDEsIDIyOCwgMjMsIDk5LCAxLCAyMTgsIDUzLCAyMzMsIDk5LCA5OSwgMSwgMjE4LCA1MywgCi0gICAgMjMwLCAxMzcsIDIzMiwgMTIsIDk5LCAxLCAyNDgsIDE2NSwgMjMwLCAxMzcsIDI1NCwgNTQsIDk5LCAxLCAyNDgsIDE2NSwgCi0gICAgMjMwLCAxMzcsIDIzMiwgMTIsIDk5LCAxLCAyMzAsIDQ2LCAyMjQsIDQ0LCA5OSwgMSwgMjE4LCA1MiwgOTksIDEsIDIxOCwgCi0gICAgNTMsIDIxNywgMjQyLCA5OSwgMSwgMjQ4LCAxNjQsIDk5LCAxLCAyNDgsIDE2NSwgMjMyLCAzMCwgOTksIDEsIDIwNSwgOTksIAotICAgIDEsIDE5MywgOTksIDEsIDIyNiwgMjE0LCAyMzQsIDIzMSwgOTksIDEsIDI1MiwgMTA3LCA5OSwgMSwgMjUyLCAxMDgsIDIzNCwgCi0gICAgMTc4LCA5OSwgMSwgMTg4LCA5OSwgMSwgMTg2LCA5OSwgMSwgMjAzLCA5OSwgMSwgMjMzLCAxNTcsIDk5LCAxLCAyMTQsIDQ5LCAKLSAgICA5OSwgMSwgMjIyLCAyMDMsIDIyMiwgMTg5LCA5OSwgMSwgMjIyLCAyMDMsIDIyMiwgMTQ5LCA5OSwgMSwgMjIyLCAyMDIsIAotICAgIDk5LCAxLCAxNTksIDk5LCA1LCAyMjMsIDIyMiwgOTksIDMwLCA1LCAyMTcsIDIyMSwgOTksIDMwLCA1LCAyMTUsIDE2OSwgCi0gICAgOTksIDMwLCA1LCAyMTUsIDE3MCwgMjIyLCAxNDUsIDk5LCAzMCwgNSwgMjE4LCAyNDgsIDk5LCAzMCwgNSwgMjE4LCAyNDksIAotICAgIDIzNiwgMTYsIDk5LCAzMCwgNSwgMjI0LCA3NywgMjIzLCAyMjksIDk5LCAzMCwgNSwgMjI0LCA3NywgMjIzLCAyMzAsIDIxNywgCi0gICAgMjIxLCA5OSwgMzAsIDUsIDIzMywgMTU4LCAyMzMsIDQ4LCA5OSwgMzAsIDUsIDIzMywgMTU4LCAyMzMsIDQ5LCAyMTcsIAotICAgIDIyMSwgOTksIDMwLCA1LCAyMTgsIDE2LCA5OSwgMzAsIDUsIDIxOCwgMTcsIDIyMywgMjI5LCA5OSwgMzAsIDUsIDIxOCwgCi0gICAgMTcsIDIxNywgMjIxLCA5OSwgMzAsIDUsIDIxOCwgMTcsIDIyMywgMjMwLCAyMTcsIDIyMSwgOTksIDMwLCA1LCAyMjYsIDU5LCAKLSAgICA5OSwgMzAsIDUsIDIyNiwgNjAsIDIxNywgMjIxLCA5OSwgMjU0LCAxNTUsIDI1NCwgMTU0LCA5OSwgMSwgMjM0LCAyNTUsIAotICAgIDIyMiwgMTQ0LCA5OSwgMSwgMjM0LCAxMTAsIDIyMiwgMTQ0LCA5OSwgMSwgMjE2LCAwLCAyMjIsIDE0NCwgOTksIDEsIDI0NSwgCi0gICAgMTYwLCAyMjIsIDE0NCwgOTksIDEsIDIxNCwgMjMzLCAyMjIsIDE0NCwgOTksIDEsIDIxMiwgMTAwLCAyMjIsIDE0NCwgOTksIAotICAgIDEsIDI1MywgMTI1LCAyMjIsIDE0NCwgOTksIDIxLCAyMTIsIDc5LCA5OSwgMjEsIDExNiwgOTksIDIxLCAxMDksIDk5LCAyMSwgCi0gICAgMTY2LCA5OSwgMjEsIDE2MywgOTksIDIxLCAxODAsIDk5LCAyMSwgMTg5LCA5OSwgMjEsIDE5OCwgOTksIDIxLCAxOTUsIDk5LCAKLSAgICAyMSwgMjAwLCA5OSwgMjI2LCAxNTcsIDk5LCAyMjYsIDE4MiwgOTksIDIxMywgMjIzLCA5OSwgMjUwLCAxNjgsIDIyNiwgCi0gICAgMTc1LCA5OSwgMjUwLCAxNjgsIDIyMCwgOTgsIDk5LCAyNTAsIDE2OCwgMjI2LCAxMzAsIDk5LCAyMjYsIDE4MSwgOTksIDI3LCAKLSAgICAxNiwgMjQ3LCA4MCwgOTksIDI3LCAxNiwgMjQ4LCAyLCA5OSwgMjcsIDE2LCAyNDYsIDE5LCA5OSwgMjcsIDE2LCAyNDgsIAotICAgIDEyMSwgOTksIDI3LCAxNiwgMjQ4LCAxMjIsIDIxOCwgMjE1LCA5OSwgMjcsIDE2LCAyNDcsIDE1NywgOTksIDI3LCAxNiwgCi0gICAgMjQ4LCAxNTcsIDk5LCAyNywgMTYsIDI0NywgMjQwLCA5OSwgMjcsIDE2LCAyNDgsIDE0MywgOTksIDI3LCAxNiwgMjQ4LCAKLSAgICAxMjIsIDI0MywgMzMsIDk5LCAyNywgMTYsIDM3LCAyMTcsIDIxNywgOTksIDI3LCAxNiwgMzcsIDI0NSwgOTksIDk5LCAyNywgCi0gICAgMTYsIDM3LCAyMzQsIDE3MywgOTksIDI3LCAxNiwgMzcsIDIzNCwgMTc1LCA5OSwgMjcsIDE2LCAzNywgMjM1LCAxMjMsIDk5LCAKLSAgICAyNywgMTYsIDM3LCAyMzQsIDE3NCwgMiwgMjM1LCAxMjMsIDk5LCAyNywgMTYsIDM3LCAyMzQsIDE3NiwgMiwgMjM1LCAxMjMsIAotICAgIDk5LCAyNywgMTYsIDM3LCAyNTEsIDIxNCwgOTksIDI3LCAxNiwgMzcsIDI0MiwgMTQxLCA5OSwgMjcsIDE2LCAyMjMsIDE0NiwgCi0gICAgMjI3LCA0MCwgMjQ2LCAyOSwgOTksIDI3LCAxNiwgMjIzLCAxNDYsIDIyNywgNDAsIDI0OCwgMTU1LCA5OSwgMjcsIDE2LCAKLSAgICAyMjMsIDE0NiwgMjQ5LCAxOTMsIDIxNiwgNzUsIDk5LCAyNywgMTYsIDIyMywgMTQ2LCAyNDksIDE5MywgMjE4LCAyMywgOTksIAotICAgIDI3LCAxNiwgMjMzLCA2OCwgMjI3LCA0MCwgMjI2LCAxNzAsIDk5LCAyNywgMTYsIDIzMywgNjgsIDIyNywgNDAsIDIyNSwgCi0gICAgMjUsIDk5LCAyNywgMTYsIDIzMywgNjgsIDI0OSwgMTkzLCAyMjUsIDE3MCwgOTksIDI3LCAxNiwgMjMzLCA2OCwgMjQ5LCAKLSAgICAxOTMsIDIyNSwgMTYwLCA5OSwgMjcsIDE2LCAyMzMsIDY4LCAyMjcsIDQwLCAyMjUsIDE5MywgMjE4LCAyMzcsIDUsIDIyNiwgCi0gICAgMTU0LCAyMTgsIDIzNywgNSwgMjI2LCAxNjYsIDIxOCwgMjM3LCA1LCAyMjYsIDE2MywgMjE4LCAyMzcsIDEsIDYxLCAyMTgsIAotICAgIDIzNywgMSwgNzIsIDIxOCwgMjM3LCAxLCA2OSwgMjE4LCAyMzcsIDEsIDI1NCwgMTQ4LCAyMTgsIDIzNywgMSwgNzUsIDIxOCwgCi0gICAgMjM3LCAxLCA3NCwgMjE4LCAyMzcsIDEsIDI0NSwgMjIsIDIxOCwgMjM3LCAxLCAxODEsIDIxOCwgMjM3LCAxLCAyMjQsIAotICAgIDIzMiwgMjE4LCAyMzcsIDEsIDI0MywgMTEwLCAyMTgsIDIzNywgMSwgMjI5LCAxNTksIDIxOCwgMjM3LCAxLCAyNTAsIDIxOSwgCi0gICAgMjE4LCAyMzcsIDEsIDIzNSwgMTM5LCAyMTgsIDIzNywgMSwgMjEyLCAxMDksIDIxOCwgMjM3LCAxLCAyMjgsIDIzLCAyMTgsIAotICAgIDIzNywgMSwgMjE4LCA1MiwgMjE4LCAyMzcsIDEsIDI0OCwgMTY0LCAyMTgsIDIzNywgMSwgMjA1LCAyMTgsIDIzNywgMSwgCi0gICAgMTkzLCAyMTgsIDIzNywgMSwgMjQ0LCAxNjQsIDIxOCwgMjM3LCAxLCAyMTUsIDEsIDIxOCwgMjM3LCAxLCAyNTIsIDEwNywgCi0gICAgMjE4LCAyMzcsIDEsIDE4OCwgMjE4LCAyMzcsIDEsIDE4NiwgMjE4LCAyMzcsIDEsIDIwMywgMjE4LCAyMzcsIDEsIDIzMywgCi0gICAgMTU3LCAyMTgsIDIzNywgMSwgMjE0LCA0OSwgMjE4LCAyMzcsIDEsIDIyMiwgMjAyLCAyMTgsIDIzNywgMSwgMjEzLCAxNTMsIAotICAgIDIxOCwgMjM3LCAxLCAxNTksIDIxOCwgMjM3LCAyNDksIDEzMywgNSwgMjI2LCAxNzksIDIxOCwgMjM3LCAyNDksIDEzMywgNSwgCi0gICAgMjI2LCAxNTYsIDIxOCwgMjM3LCAyNDksIDEzMywgNSwgMjI2LCAxNTMsIDIxOCwgMjM3LCAzMCwgNSwgMjI2LCAxNjksIAotICAgIDIxOCwgMjM3LCAzMCwgNSwgMjI2LCAxNTIsIDIxOCwgMjM3LCAzMCwgNSwgMjI2LCAxNzMsIDIxOCwgMjM3LCAzMCwgNSwgCi0gICAgMjI2LCAxNjIsIDIxOCwgMjM3LCAzMCwgNSwgMjI2LCAxODAsIDIxOCwgMjM3LCAzMCwgNSwgMjI2LCAxNzEsIDIxOCwgMjM3LCAKLSAgICA1LCAyMjYsIDE4MywgMjE4LCAyMzcsIDEsIDIzNCwgMTM4LCAyMTgsIDIzNywgMSwgMjE4LCAxNzYsIDIxOCwgMjM3LCAyMSwgCi0gICAgMjEyLCA3OSwgMjE4LCAyMzcsIDIxLCAxMTYsIDIxOCwgMjM3LCAyMSwgMTA5LCAyMTgsIDIzNywgMjEsIDE2NiwgMjE4LCAKLSAgICAyMzcsIDIxLCAxNjMsIDIxOCwgMjM3LCAyMSwgMTgwLCAyMTgsIDIzNywgMjEsIDE4OSwgMjE4LCAyMzcsIDIxLCAxOTgsIAotICAgIDIxOCwgMjM3LCAyMSwgMTk1LCAyMTgsIDIzNywgMjEsIDIwMCwgMjUyLCA0MCwgMSwgNjEsIDI1MiwgNDAsIDEsIDIyMCwgCi0gICAgOTAsIDYxLCAyNTIsIDQwLCAxLCAxNTksIDI1MiwgNDAsIDEsIDIyMCwgOTAsIDE1OSwgMjUyLCA0MCwgMSwgMjMxLCAyNDQsIAotICAgIDE1OSwgMjUyLCA0MCwgMSwgMjUyLCAxMDcsIDI1MiwgNDAsIDEsIDIzNCwgMjE3LCAyNTIsIDEwNywgMjUyLCA0MCwgMSwgCi0gICAgMTkzLCAyNTIsIDQwLCAxLCAyMjAsIDkwLCAxOTMsIDI1MiwgNDAsIDEsIDIwNSwgMjUyLCA0MCwgMSwgMjMxLCAyNDQsIAotICAgIDIwNSwgMjUyLCA0MCwgMSwgMjE0LCA0OSwgMjUyLCA0MCwgMSwgMjIwLCA5MCwgMjE0LCA0OSwgMjUyLCA0MCwgMSwgMjI2LCAKLSAgICAxOTQsIDIxNCwgNDksIDI1MiwgNDAsIDEsIDI0MywgMTEwLCAyNTIsIDQwLCAxLCAyMjAsIDkwLCAyNDMsIDExMCwgMjUyLCAKLSAgICA0MCwgMSwgMjM1LCAxMzksIDI1MiwgNDAsIDEsIDI0OCwgMTY0LCAyNTIsIDQwLCAxLCAyMDMsIDI1MiwgNDAsIDEsIDIyMCwgCi0gICAgOTAsIDIwMywgMjUyLCA0MCwgMSwgMTg4LCAyNTIsIDQwLCAxLCAyMjAsIDkwLCAxODgsIDI1MiwgNDAsIDEsIDIxOSwgMjEzLCAKLSAgICAyMTgsIDUyLCAyNTIsIDQwLCAxLCAyMjgsIDE2NiwgMjE4LCA1MiwgMjUyLCA0MCwgMSwgMjIyLCAyMDIsIDI1MiwgNDAsIDEsIAotICAgIDIyMCwgOTAsIDIyMiwgMjAyLCAyNTIsIDQwLCAxLCAyMzEsIDI0NCwgMjIyLCAyMDIsIDI1MiwgNDAsIDEsIDE4NiwgMjUyLCAKLSAgICA0MCwgMSwgMjIwLCA5MCwgMTg2LCAyNTIsIDQwLCAxLCAyMjksIDE1OSwgMjUyLCA0MCwgMSwgMjMzLCAxNTcsIDI1MiwgNDAsIAotICAgIDEsIDIyMCwgOTAsIDIzMywgMTU3LCAyNTIsIDQwLCAxLCAyMjgsIDIzLCAyNTIsIDQwLCAxLCAyNTAsIDIxOSwgMjUyLCA0MCwgCi0gICAgMSwgMjI5LCAyMjgsIDI1MiwgNDAsIDEsIDIzMSwgMTg3LCAyNTIsIDQwLCAxLCA3MiwgMjUyLCA0MCwgMSwgNjksIDI1MiwgCi0gICAgNDAsIDUsIDIxNiwgMjQ0LCAyNTIsIDQwLCAzMCwgNSwgNzQsIDI1MiwgNDAsIDMwLCA1LCAyMjYsIDE5NCwgNzQsIDI1MiwgCi0gICAgNDAsIDMwLCA1LCAyNDUsIDE2NSwgMjUyLCA0MCwgMzAsIDUsIDcyLCAyNTIsIDQwLCAzMCwgNSwgMjM0LCAyMTcsIDcyLCAKLSAgICAyNTIsIDQwLCAzMCwgNSwgNzUsIDI1MiwgNDAsIDMwLCA1LCAyMzQsIDIxNywgNzUsIDI1MiwgNDAsIDMwLCA1LCA2OSwgCi0gICAgMjUyLCA0MCwgMzAsIDUsIDExMSwgMzEsIDIyMCwgOTAsIDIyMiwgMjAyLCAyNTIsIDQwLCAyNDksIDEzMywgNSwgMjI5LCAKLSAgICAxNjEsIDI1MiwgNDAsIDI0OSwgMTMzLCA1LCAyNDIsIDQxLCAyNTIsIDQwLCAyMjYsIDE2NSwgMjUyLCA0MCwgMjI2LCAxNjEsIAotICAgIDI1MiwgNDAsIDE2LCAyNTEsIDE2NCwgMjMwLCA0NiwgMjMxLCAxMDQsIDI1MiwgNDAsIDE2LCAyNTEsIDE2NCwgMjI1LCAKLSAgICAxOTYsIDI1MiwgNDAsIDE2LCAyNTEsIDE2NCwgMjM1LCA1MSwgMjUyLCA0MCwgMTYsIDI1MSwgMTY0LCAyMjYsIDE2NSwgCi0gICAgMTgyLCAxLCAxODEsIDE4MiwgMSwgMjM0LCA0OCwgMTgyLCAxLCAyMzQsIDEzOCwgMTgyLCAxLCAyNDMsIDExMCwgMTgyLCAxLCAKLSAgICAyNDIsIDE2MiwgMTgyLCAxLCAyMjksIDE1OSwgMTgyLCAxLCAyNTAsIDIxOSwgMTgyLCAxLCAyNTAsIDkyLCAxODIsIDEsIAotICAgIDIzNSwgMTM5LCAxODIsIDEsIDIyOCwgMjMsIDE4MiwgMSwgMjE4LCA1MiwgMTgyLCAxLCAyMTcsIDE2MSwgMTgyLCAxLCAKLSAgICAyNDgsIDE2NCwgMTgyLCAxLCAyMDUsIDE4MiwgMSwgMTkzLCAxODIsIDEsIDIyNSwgMTc0LCAxODIsIDEsIDIyNiwgMjMsIAotICAgIDE4MiwgMSwgMjQ0LCAxNjQsIDE4MiwgMSwgMjQ0LCA0NCwgMTgyLCAxLCAyNTIsIDEwNywgMTgyLCAxLCAyNTEsIDE0NSwgCi0gICAgMTgyLCAxLCAxODgsIDE4MiwgMSwgMjMwLCAyMzcsIDE4MiwgMSwgMjE2LCAxNDEsIDE4MiwgMSwgMjE2LCAxMzMsIDE4MiwgCi0gICAgMSwgMjQ1LCAyNDksIDE4MiwgMSwgMTg2LCAxODIsIDEsIDIwMywgMTgyLCAxLCAyMzMsIDE1NywgMTgyLCAxLCAxNTksIAotICAgIDE4MiwgMSwgMjQxLCAxMzksIDE4MiwgMSwgMjE1LCAxLCAxODIsIDEsIDIyMiwgMjAyLCAxODIsIDEsIDIyMSwgMjQsIDE4MiwgCi0gICAgMSwgMjE0LCA0OSwgMTgyLCAxLCA2MSwgMTgyLCAyMTksIDE4LCAxLCAxODYsIDE4MiwgMjE5LCAxOCwgMSwgMjAzLCAxODIsIAotICAgIDMwLCA1LCAyNTQsIDIzMiwgMTgyLCAzMCwgNSwgNzIsIDE4MiwgMzAsIDUsIDc1LCAxODIsIDMwLCA1LCAyMjcsIDQ5LCAKLSAgICAxODIsIDMwLCA1LCA2OSwgMTgyLCAzMCwgNSwgMjE1LCA5MiwgMTgyLCAzMCwgNSwgNzQsIDE4MiwgMjQ5LCAxMzMsIDUsIAotICAgIDIzNSwgMjcsIDE4MiwgMjQ5LCAxMzMsIDUsIDE4MywgMTgyLCAyNDksIDEzMywgNSwgMTUwLCAxODIsIDI0OSwgMTMzLCA1LCAKLSAgICAyMDQsIDE4MiwgMjQ5LCAxMzMsIDUsIDIyNiwgMjI5LCAxODIsIDI0OSwgMTMzLCA1LCAxNDksIDE4MiwgMjQ5LCAxMzMsIDUsIAotICAgIDIxOCwgOTksIDE4MiwgMjQ5LCAxMzMsIDUsIDIyOCwgNSwgMTgyLCAyNDksIDEzMywgNSwgMjM0LCAyMzUsIDE4MiwgNSwgCi0gICAgMjI0LCA0MiwgMTgyLCA1LCAyMjgsIDYwLCAxODIsIDIyNSwgMjcsIDIxOCwgNTEsIDE4MiwgMjI1LCAyNywgMjI4LCAxMywgCi0gICAgMjE3LCA3NCwgMjE4LCA1MSwgMTgyLCAyMjUsIDI3LCAyNTAsIDk4LCAxODIsIDIyNSwgMjcsIDIxNiwgMTI4LCAyNTAsIDk4LCAKLSAgICAxODIsIDIyNSwgMjcsIDIxNiwgMTI3LCAxODIsIDIxLCAyMTIsIDc5LCAxODIsIDIxLCAxMTYsIDE4MiwgMjEsIDEwOSwgCi0gICAgMTgyLCAyMSwgMTY2LCAxODIsIDIxLCAxNjMsIDE4MiwgMjEsIDE4MCwgMTgyLCAyMSwgMTg5LCAxODIsIDIxLCAxOTgsIAotICAgIDE4MiwgMjEsIDE5NSwgMTgyLCAyMSwgMjAwLCAxODIsIDEsIDIxNiwgMTE1LCAxODIsIDEsIDIxNiwgMTA1LCAxODIsIDEsIAotICAgIDI0OCwgODYsIDIyNywgNzYsIDI1MCwgNDAsIDIxLCAyMTIsIDc5LCAyMjcsIDc2LCAyNTAsIDQwLCAyMSwgMTE2LCAyMjcsIAotICAgIDc2LCAyNTAsIDQwLCAyMSwgMTA5LCAyMjcsIDc2LCAyNTAsIDQwLCAyMSwgMTY2LCAyMjcsIDc2LCAyNTAsIDQwLCAyMSwgCi0gICAgMTYzLCAyMjcsIDc2LCAyNTAsIDQwLCAyMSwgMTgwLCAyMjcsIDc2LCAyNTAsIDQwLCAyMSwgMTg5LCAyMjcsIDc2LCAyNTAsIAotICAgIDQwLCAyMSwgMTk4LCAyMjcsIDc2LCAyNTAsIDQwLCAyMSwgMTk1LCAyMjcsIDc2LCAyNTAsIDQwLCAyMSwgMjAwLCAyMjcsIAotICAgIDc2LCAyNTAsIDQwLCAxLCAyMzMsIDE1NywgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjUzLCAxMjIsIDIyNywgNzYsIDI1MCwgCi0gICAgNDAsIDEsIDI1NCwgMTIxLCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyNTQsIDI0LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyNTQsIAotICAgIDg2LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyMzMsIDE1NiwgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjU0LCAxOTQsIDIyNywgCi0gICAgNzYsIDI1MCwgNDAsIDEsIDI1NCwgMTk1LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyNTQsIDE5MywgMjI3LCA3NiwgMjUwLCAKLSAgICA0MCwgMSwgMjU0LCAxODksIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIzMywgMTMsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIzNSwgCi0gICAgMTY5LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyMzYsIDI5LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyMzUsIDE4OCwgMjI3LCAKLSAgICA3NiwgMjUwLCA0MCwgMSwgMjM1LCAxNzcsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIzMiwgMTU2LCAyMjcsIDc2LCAyNTAsIAotICAgIDQwLCAxLCAyMTUsIDE5MCwgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjE1LCAxODgsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIxNSwgCi0gICAgMTM5LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyMTUsIDg1LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyMzMsIDgyLCAyMjcsIDc2LCAKLSAgICAyNTAsIDQwLCAxLCAyNDUsIDcwLCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyNDUsIDE2OCwgMjI3LCA3NiwgMjUwLCA0MCwgMSwgCi0gICAgMjQ1LCAxMDgsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDI0NSwgNDksIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIzMiwgMjA4LCAKLSAgICAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyMjcsIDUsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIyNywgMTE2LCAyMjcsIDc2LCAyNTAsIAotICAgIDQwLCAxLCAyMjYsIDI0OSwgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjI3LCA4OCwgMjI3LCA3NiwgMjUwLCA0MCwgMjMwLCAKLSAgICAxNzMsIDIxNiwgODQsIDIyNywgNzYsIDI1MCwgNDAsIDI0MywgMTA1LCAyMTYsIDg1LCAyMjcsIDc2LCAyNTAsIDQwLCAyMzAsIAotICAgIDE3MSwgMjE2LCA4NSwgMjI3LCA3NiwgMjUwLCA0MCwgMjIzLCAyNDIsIDIyNywgNzYsIDI1MCwgNDAsIDIyNiwgMjEsIDIyNywgCi0gICAgNzYsIDI1MCwgNDAsIDI1NCwgMTEzLCAyMjcsIDc2LCAyNTAsIDQwLCAyMjUsIDI3LCAyMzAsIDE2OCwgMjI3LCA3NiwgMjUwLCAKLSAgICA0MCwgMjI1LCAyNywgNTEsIDIzMCwgMTY4LCAyMTQsIDIyOSwgMTYwLCAyMzQsIDIxNSwgMjE0LCAyMjksIDE2MCwgMjIxLCAKLSAgICAwLCAyMTQsIDIyOSwgMTYwLCAyMjUsIDc4LCAyMTQsIDIyOSwgNSwgMjI5LCA0MCwgMjE0LCAyMjksIDUsIDIxMywgNjksIAotICAgIDIzMSwgMzUsIDIxOCwgMjAxLCAyMTQsIDIyOSwgMTYwLCAyMTMsIDY5LCAyNTQsIDExOCwgMjM1LCAyNDAsIDIxOCwgMjAxLCAKLSAgICAyMTQsIDIyOSwgMTYwLCAyMTMsIDY5LCAyMzUsIDI0MCwgMjE4LCAyMDEsIDIxNCwgMjI5LCAxNjAsIDIxMywgNjksIDIzNCwgCi0gICAgMjAzLCAyMzUsIDI0MCwgMjE4LCAyMDEsIDIxNCwgMjI5LCAxNjAsIDI1MCwgMTkwLCA1NSwgMjE0LCAyMjksIDE2MCwgMjEzLCAKLSAgICA2OSwgMjM0LCAyMDMsIDIzNSwgMjQwLCAyMTgsIDIwMiwgMjIyLCAxMTUsIDIxNCwgMjI5LCAxNjAsIDUxLCAyMTgsIDIwMSwgCi0gICAgMjE0LCAyMjksIDE2MCwgMjE2LCAxNjksIDIxOCwgMjAxLCAyMTQsIDIyOSwgMTYwLCAyMzQsIDIwMywgMjUzLCAyNDQsIAotICAgIDIxNCwgMjI5LCAxNjAsIDYyLCA1NSwgMjE0LCAyMjksIDE2MCwgMTE3LCAxNzYsIDU1LCAyMTQsIDIyOSwgMTYwLCAxMzMsIAotICAgIDE3NiwgNTUsIDIxNCwgMjI5LCAxNjAsIDIyMywgMTM3LCAyMzQsIDIxNCwgMjM1LCAyNDAsIDIxOCwgMjAxLCAyMTQsIDIyOSwgCi0gICAgMTYwLCAyNTMsIDEyMCwgMjM1LCAyNDAsIDIxOCwgMjAxLCAyMTQsIDIyOSwgNSwgMjE0LCAxMjksIDIxOCwgMjAxLCAyMTQsIAotICAgIDIyOSwgNSwgMjE0LCAxMjksIDIxNSwgMTg1LCAyMTQsIDIyOSwgNSwgMjIzLCAyMDIsIDIxNCwgMTI5LCAyMTUsIDE4NSwgCi0gICAgMjE0LCAyMjksIDUsIDIxNCwgMTI5LCAyNTMsIDI0NCwgMjE0LCAyMjksIDUsIDIyMywgMjAyLCAyMTQsIDEyOSwgMjUzLCAKLSAgICAyNDQsIDIxNCwgMjI5LCA1LCAyMTQsIDEyOSwgMjE1LCAxODYsIDIsIDIxOCwgMjcsIDIxNCwgMjI5LCA1LCAyMTQsIDEyOSwgCi0gICAgMjUzLCAyNDUsIDIsIDIxOCwgMjcsIDIxNCwgMjI5LCA1LCAyNTMsIDI0MywgMjU0LCAyLCAyMTQsIDIyOSwgNSwgMjUzLCAKLSAgICAyNDMsIDI1MiwgODUsIDIxNCwgMjI5LCA1LCAyNTMsIDI0MywgMjE0LCAyNTIsIDIxNCwgMjI5LCA1LCAyNTMsIDI0MywgCi0gICAgMjE0LCAyNTMsIDIsIDIxOCwgMjcsIDIxNCwgMjI5LCA1LCAyMTcsIDIxLCAyMTQsIDIyOSwgNSwgMjQxLCAxNzYsIDE4NCwgCi0gICAgMjUzLCAyNDIsIDIxNCwgMjI5LCA1LCAxODQsIDI1MywgMjQyLCAyMTQsIDIyOSwgNSwgMjIzLCA1MywgMTg0LCAyNTMsIAotICAgIDI0MiwgMjE0LCAyMjksIDUsIDI1MywgMjQzLCAyMTUsIDE5MiwgMjMwLCAxNjAsIDIxNCwgMjI5LCA1LCAyNTMsIDE5MCwgNywgCi0gICAgMSwgMywgNiwgNjEsIDcsIDEsIDMsIDYsIDI1NCwgMTQ4LCA3LCAzLCAxLCAyMTYsIDU4LCAyNTQsIDE0OCwgNywgMSwgMywgCi0gICAgNiwgMjUyLCA1NCwgMjUzLCA3NCwgNywgMSwgMywgNiwgMjUwLCAyNTIsIDcsIDEsIDMsIDYsIDI0OSwgMywgNywgMSwgMywgCi0gICAgNiwgMjQ1LCAyNSwgNywgMSwgMywgNiwgNzQsIDcsIDMsIDEsIDIxNiwgNTgsIDIyNywgNDAsIDc0LCA3LCAzLCAxLCAyMTYsIAotICAgIDU4LCA3MiwgNywgMSwgMywgNiwgMjM1LCAxNDIsIDcsIDEsIDMsIDYsIDIzNSwgMjcsIDcsIDEsIDMsIDYsIDIzMywgMTcxLCAKLSAgICAyLCA5MCwgNywgMSwgMywgNiwgMTgzLCA3LCAxLCAzLCA2LCAyMjMsIDIwMiwgMjA0LCA3LCAxLCAzLCA2LCA3NSwgNywgMSwgCi0gICAgMywgNiwgMjI3LCA0MCwgNzUsIDcsIDMsIDEsIDIyMCwgMTEzLCA3NSwgNywgMywgMSwgMjIwLCAxMTMsIDIyNywgNDAsIDc1LCAKLSAgICA3LCAzLCAxLCAyMjAsIDExMywgMTU3LCAyLCA5MCwgNywgMywgMSwgMjE2LCA1OCwgMjI3LCA5OSwgNywgMSwgMywgNiwgCi0gICAgMjI3LCAyLCA3LCAzLCAxLCAyMTYsIDIyNywgMTUxLCA3NSwgNywgMywgMSwgMjUxLCAxMDEsIDE1MSwgNzUsIDcsIDEsIDMsIAotICAgIDYsIDIyNiwgMjI5LCA3LCAxLCAzLCA2LCAyMjMsIDIwMiwgMTQ5LCA3LCAxLCAzLCA2LCAyMTYsIDU4LCAxNDksIDcsIDEsIAotICAgIDMsIDYsIDIxOCwgOTksIDcsIDEsIDMsIDYsIDY5LCA3LCAzLCAxLCAyMjAsIDExMywgNjksIDcsIDMsIDEsIDIyMCwgMTEzLCAKLSAgICAyNDcsIDIwOCwgNjksIDcsIDMsIDEsIDIyMCwgMTEzLCAyMTYsIDU4LCAxODMsIDcsIDEsIDMsIDYsIDIxNSwgNzksIDcsIDEsIAotICAgIDMsIDYsIDIxNCwgODIsIDcsIDEsIDMsIDYsIDIxMiwgMTUyLCA3LCAxLCAzLCA2LCAyNDQsIDIzMiwgNywgMSwgMjE0LCAKLSAgICAxMTYsIDIzMywgMTA1LCAyMTksIDE4MiwgNywgMSwgMjU0LCAxMDMsIDI1LCAxLCAzLCA2LCAyNDMsIDgzLCAyNSwgMSwgMywgCi0gICAgNiwgMjMzLCAxMjIsIDI1LCAxLCAzLCA2LCAyMjUsIDI0MCwgMjUsIDEsIDMsIDYsIDIyMywgMTkwLCAyNSwgMSwgMywgNiwgCi0gICAgMjI1LCA0NiwgMzMsIDEsIDMsIDYsIDI0NSwgMTMxLCA1OSwgMSwgNiwgNjEsIDU5LCAxLCA2LCAyNTQsIDE0OCwgNTksIDEsIAotICAgIDYsIDI1MywgNzQsIDU5LCAxLCA2LCAyNTIsIDU0LCAyNTMsIDc0LCA1OSwgMSwgNiwgMjQ5LCAzLCA1OSwgMSwgNiwgNzQsIAotICAgIDU5LCAxLCA2LCAyMjMsIDIwMiwgNzQsIDU5LCAxLCA2LCAyNDMsIDE3NywgNTksIDEsIDYsIDI0MiwgNDEsIDU5LCAxLCA2LCAKLSAgICA3MiwgNTksIDEsIDYsIDIzNSwgMTQyLCA1OSwgMSwgNiwgMjM1LCAyNywgNTksIDEsIDYsIDE1MCwgNTksIDEsIDYsIDE4MywgCi0gICAgNTksIDEsIDYsIDIwNCwgNTksIDEsIDYsIDIyMywgMjAyLCAyMDQsIDU5LCAxLCA2LCA3NSwgNTksIDEsIDYsIDIyNywgMiwgCi0gICAgNTksIDEsIDYsIDIyNiwgMjI5LCA1OSwgMSwgNiwgMTQ5LCA1OSwgMSwgNiwgMjE4LCA5OSwgNTksIDEsIDYsIDY5LCA1OSwgCi0gICAgMSwgNiwgMjE0LCA4MiwgNTksIDEsIDMsIDYxLCA1OSwgMSwgMywgMjE2LCA1OCwgNjEsIDU5LCAxLCAzLCAyNTQsIDUyLCAKLSAgICA1OSwgMSwgMywgMjE2LCA1OCwgMjU0LCAxNDgsIDU5LCAxLCAzLCAyNTMsIDc0LCA1OSwgMSwgMywgMjQ5LCAzLCA1OSwgMSwgCi0gICAgMywgNzQsIDU5LCAxLCAzLCAyMjIsIDExMywgNTksIDEsIDMsIDIyNywgNDAsIDc0LCA1OSwgMSwgMywgMjE2LCA1OCwgMjI3LCAKLSAgICA0MCwgNzQsIDU5LCAxLCAzLCAyNDMsIDE3NywgNTksIDEsIDMsIDIxNiwgNTgsIDcyLCA1OSwgMSwgMywgMjM1LCAyNywgNTksIAotICAgIDEsIDMsIDE4MywgNTksIDEsIDMsIDI0NSwgOTYsIDU5LCAxLCAzLCA3NSwgNTksIDEsIDMsIDIyNywgNDAsIDc1LCA1OSwgMSwgCi0gICAgMywgMjE2LCAyMjcsIDE1MSwgNzUsIDU5LCAxLCAzLCAyNTEsIDEwMSwgMTUxLCA3NSwgNTksIDEsIDMsIDIyNiwgMjI5LCAKLSAgICA1OSwgMSwgMywgMjE4LCA5OSwgNTksIDEsIDMsIDY5LCA1OSwgMSwgMywgMjIwLCAxMTMsIDY5LCA1OSwgMSwgMywgMjE2LCAKLSAgICA1OCwgMTgzLCA1OSwgMSwgMywgMjE1LCA3OSwgNTksIDEsIDMsIDI1NCwgMTAzLCA1OSwgMSwgMywgMjUxLCAyMDMsIDU5LCAKLSAgICAxLCAzLCAyNSwgMjQzLCA4MywgNTksIDEsIDMsIDI0OCwgNSwgNTksIDEsIDMsIDI1LCAyMjYsIDksIDU5LCAxLCAzLCAyNTAsIAotICAgIDQ3LCA3LCAyMTksIDEwLCAzLCAxLCA3MiwgNywgMjE5LCAxMCwgMywgMSwgMTQ5LCA3LCAyMTksIDEwLCAzLCAxLCA2OSwgNywgCi0gICAgMjE5LCAxMCwgMywgMSwgMjE1LCA3OSwgMjUsIDIxOSwgMTAsIDMsIDEsIDI1MSwgMjAzLCAyNSwgMjE5LCAxMCwgMywgMSwgCi0gICAgMjQzLCA4MywgMjUsIDIxOSwgMTAsIDMsIDEsIDIyMywgMTkwLCAyNSwgMjE5LCAxMCwgMywgMSwgMjI2LCA5LCAyNSwgMjE5LCAKLSAgICAxMCwgMywgMSwgMjUwLCA0NywgNywgMywgMSwgMjE1LCAxODMsIDcsIDMsIDEsIDU0LCAyLCAyMzEsIDM3LCAyMTcsIDQyLCAKLSAgICA3LCAzLCAxLCAyNDksIDQsIDIsIDIzMSwgMzcsIDIxNywgNDIsIDcsIDMsIDEsIDI0NCwgMjMxLCAyLCAyMzEsIDM3LCAyMTcsIAotICAgIDQyLCA3LCAzLCAxLCAyMzIsIDExMCwgMiwgMjMxLCAzNywgMjE3LCA0MiwgNywgMywgMSwgMjMwLCA5OCwgMiwgMjMxLCAzNywgCi0gICAgMjE3LCA0MiwgNywgMywgMSwgMjI2LCAyMzAsIDIsIDIzMSwgMzcsIDIxNywgNDIsIDcsIDMsIDEsIDIyNCwgMTEzLCAyLCAKLSAgICAyMzEsIDM3LCAyMTcsIDQyLCA3LCAzLCAxLCAyMjQsIDExMywgMiwgMjQ0LCA1NywgMjQsIDIzMSwgMzcsIDIxNywgNDIsIDcsIAotICAgIDMsIDEsIDIyMywgNCwgMiwgMjMxLCAzNywgMjE3LCA0MiwgNywgMywgMSwgMjE4LCAxMDAsIDIsIDIzMSwgMzcsIDIxNywgCi0gICAgNDIsIDcsIDMsIDEsIDIxMiwgMTUzLCAyLCAyMzEsIDM3LCAyMTcsIDQyLCA3LCAzLCAxLCAyMTYsIDU4LCAyNDMsIDE3NywgCi0gICAgNTksIDEsIDMzLCAyNDUsIDEwOCwgNywgMywgMSwgMjM1LCAyMTAsIDI0MywgMTc3LCA3LCAzLCAxLCAyMTcsIDE2NCwgMiwgCi0gICAgMjE5LCA0NywgNywgMywgNiwgMSwgMjQwLCAxNDYsIDIsIDkwLCA3LCAzLCAxLCAyMzUsIDE4NCwgMiwgOTAsIDcsIDMsIDEsIAotICAgIDIyNiwgMjMwLCAyLCA5MCwgNywgMywgNiwgMSwgMTExLCAyLCA5MCwgNywgMywgMSwgMjE1LCAxMjksIDIsIDkwLCA3LCAzLCAKLSAgICAxLCA1NCwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjQ5LCA0LCAyLCAyMjYsIDE5MywgMTAxLCA3LCAzLCAxLCAyNDQsIAotICAgIDIzMSwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjQzLCAxNzgsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDIzNSwgCi0gICAgMjgsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDIzMywgMTcxLCAyLCAyMjYsIDE5MywgMTAxLCA3LCAzLCAxLCAyMzIsIAotICAgIDExMCwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjMwLCA5OCwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjI2LCAKLSAgICAyMzAsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDIyNCwgMTEzLCAyLCAyMjYsIDE5MywgMTAxLCA3LCAzLCAxLCAyMjMsIAotICAgIDQsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDI0NSwgNDEsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDIxNSwgCi0gICAgODAsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDIxMywgMTY3LCAyLCAyMjYsIDE5MywgMTAxLCA3LCAzLCAxLCAyMTIsIAotICAgIDE1MywgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMTE4LCAyLCAyMjMsIDIwNywgMTAxLCA3LCAzLCAxLCAyNTQsIDUzLCAKLSAgICAyLCAyMjMsIDIwNywgMTAxLCA3LCAzLCAxLCAyNDksIDQsIDIsIDI0MSwgMzgsIDI0LCAyMTgsIDI3LCA3LCAzLCAxLCAxOTEsIAotICAgIDIsIDIyMywgMjA3LCAxMDEsIDcsIDMsIDEsIDIyNywgNDAsIDE5MSwgMiwgMjIzLCAyMDcsIDEwMSwgNywgMywgMSwgMjIzLCAKLSAgICAyMDIsIDIyNywgNDAsIDE5MSwgMiwgMjIzLCAyMDcsIDEwMSwgNywgMywgMSwgMjIyLCAxMTQsIDIsIDIyMywgMjA3LCAxMDEsIAotICAgIDcsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyMjMsIDIwNywgMTAxLCA3LCAzLCAxLCAyMjcsIDQwLCAxNTcsIDIsIDIyMywgMjA3LCAKLSAgICAxMDEsIDcsIDMsIDEsIDI0NSwgNDEsIDIsIDIyMywgMjA3LCAxMDEsIDcsIDMsIDEsIDExMSwgMiwgMjIzLCAyMDcsIDEwMSwgCi0gICAgNywgMywgMSwgMjQ0LCAyMzMsIDIsIDIyMywgMjA3LCAxMDEsIDU5LCAxLCAzLCAyMTYsIDU4LCAyNTQsIDUyLCA1OSwgMSwgCi0gICAgMywgMjUwLCAyNTIsIDU5LCAxLCAzLCAyNTAsIDI1MywgMiwgMjQ5LCA0MSwgNTksIDEsIDMsIDI0NSwgMjUsIDU5LCAxLCAzLCAKLSAgICAyMjMsIDIwMiwgMjI3LCA0MCwgNzQsIDU5LCAxLCAzLCAyNDQsIDIzMCwgNTksIDEsIDMsIDI0NywgNzMsIDIzNSwgMTQzLCAKLSAgICAyLCA5MCwgNTksIDEsIDMsIDExMywgMjQzLCAxNzcsIDU5LCAxLCAzLCAyMTYsIDU4LCAyNDIsIDQxLCA1OSwgMSwgMywgCi0gICAgMjQwLCAxNDYsIDIsIDkwLCA1OSwgMSwgMywgMjM1LCAxODMsIDU5LCAxLCAzLCA2LCA3MiwgNTksIDEsIDMsIDYsIDI0MCwgCi0gICAgMTQ2LCAyLCA5MCwgNTksIDEsIDMsIDIzNSwgMTQzLCAyLCAyNDksIDY3LCA1OSwgMSwgMywgMjMzLCAxNzEsIDIsIDIyMywgCi0gICAgMjA3LCAxMDEsIDU5LCAxLCAzLCAyMzMsIDE3MSwgMiwgMjI2LCAxOTMsIDEwMSwgNTksIDEsIDMsIDYsIDE1MCwgNTksIDEsIAotICAgIDMsIDIzMiwgMTEwLCAyLCAxMDEsIDU5LCAxLCAzLCAyMTYsIDU4LCAyMzIsIDExMCwgMiwgMTg0LCAyMzMsIDYwLCA1OSwgMSwgCi0gICAgMywgMjMwLCA5OCwgMiwgNDIsIDEwMSwgNTksIDEsIDMsIDIzMCwgOTgsIDIsIDIyMywgMjA3LCAxMDEsIDU5LCAxLCAzLCA2LCAKLSAgICAyMDQsIDU5LCAxLCAzLCAyNTIsIDU0LCA3NSwgNTksIDEsIDMsIDIyNiwgOSwgNTksIDEsIDMsIDIyMywgNCwgMiwgMTAxLCAKLSAgICA1OSwgMSwgMywgMjQ1LCA0MCwgNTksIDEsIDMsIDIxOCwgMTAwLCAyLCAyMjYsIDE5MywgMTAxLCA1OSwgMSwgMywgMTExLCAKLSAgICAxMzQsIDU5LCAxLCAzLCAyMTUsIDEyOCwgNTksIDEsIDMsIDYsIDY5LCA1OSwgMSwgMywgMjE1LCA4MCwgMiwgMTAxLCA1OSwgCi0gICAgMSwgMywgMjE2LCA1OCwgMjE1LCA3OSwgNTksIDEsIDMsIDIxMiwgMTUyLCA1OSwgMSwgMywgMjEyLCAxNTMsIDIsIDIyMywgCi0gICAgMjA3LCAxMDEsIDU5LCAxLCAzLCAyMTIsIDE1MywgMiwgMjQ5LCA0MSwgNTksIDEsIDMsIDI0NCwgMjMyLCA1OSwgMSwgMywgCi0gICAgMjE3LCAxMzIsIDM3LCAyNDYsIDcyLCAyNDIsIDExNCwgMjU0LCAxNzQsIDM3LCAyNDYsIDcyLCAyNTQsIDE2NCwgMjU0LCAKLSAgICAxNzQsIDM3LCAyMTksIDI1MywgNTUsIDM3LCAyMTgsIDIwNywgNzcsIDM3LCAyMzIsIDM2LCAzNywgMjQyLCAxMTEsIDM3LCAKLSAgICAyMzIsIDM0LCAzNywgMjU0LCAxNjIsIDM3LCAyNDIsIDExMiwgMzcsIDI1NCwgMTYzLCAzNywgNywgMywgMSwgMjI0LCAxMTMsIAotICAgIDU1LCAzNywgMjUxLCA3MywgMzcsIDIzMiwgMzUsIDM3LCA1MSwgMjQ5LCAyMjQsIDQ5LCAzNywgMjI3LCA5MSwgNDksIDM3LCAKLSAgICAyMTIsIDI4LCA1NSwgMzcsIDIzNSwgMTcwLCA1NSwgMzcsIDIxNSwgMTIyLCA0OSwgMzcsIDIxNSwgMTA1LCA0OSwgMzcsIDcsIAotICAgIDMsIDEsIDI0NCwgMzIsIDIyNywgNDAsIDExOCwgNDksIDM3LCA3LCAzLCAxLCAyNTQsIDE0OCwgMzcsIDcsIDMsIDEsIDI1MywgCi0gICAgMjQwLCAzNywgNywgMywgMSwgMjUzLCA5MiwgMzcsIDcsIDMsIDEsIDI1MCwgMjUzLCAyNTAsIDExNywgMzcsIDcsIDMsIDEsIAotICAgIDIzNSwgMjEwLCAyNDksIDMsIDM3LCA3LCAzLCAxLCAyNDUsIDI1LCAzNywgNywgMywgMSwgMjQzLCAxNzcsIDM3LCA3LCAxLCAKLSAgICAzLCA2LCAyNDMsIDE3NywgMzcsIDcsIDMsIDEsIDIzNSwgMjcsIDM3LCA3LCAzLCAxLCAxNTAsIDM3LCA3LCAxLCAzLCA2LCAKLSAgICAxNTAsIDM3LCA3LCAxLCAzLCA2LCAxODMsIDM3LCA3LCAzLCAxLCAyMDQsIDM3LCA3LCAxLCAzLCA2LCAyMDQsIDM3LCA3LCAKLSAgICAxLCAzLCA2LCAxNDksIDM3LCA3LCAzLCAxLCAyMjQsIDExMywgMjIzLCA4OCwgMzcsIDcsIDMsIDEsIDE5NywgMzcsIDcsIDMsIAotICAgIDEsIDE4NCwgMTk3LCAzNywgNywgMywgMSwgMjEyLCAxNTIsIDM3LCA1MSwgMjM1LCAxOTEsIDI1MSwgNzUsIDU1LCAzNywgCi0gICAgMjU0LCA1NywgMTIzLCAyMTEsIDIxMSwgNTUsIDM3LCA0MiwgMjUzLCAxNjUsIDQ5LCAzNywgNDYsIDI1MywgMTY1LCAyNCwgCi0gICAgMTE5LCAyNTMsIDE2NSwgNTUsIDcsIDYsIDEsIDExOCwgMiwgMjIzLCAxMzEsIDU1LCA3LCAzLCAxLCAxMTgsIDIsIDIyMywgCi0gICAgMTMxLCA1NSwgNywgNiwgMSwgNTQsIDIsIDYyLCA0OSwgNywgMywgMSwgNTQsIDIsIDYyLCA0OSwgNywgNiwgMSwgNTQsIDIsIAotICAgIDYyLCA1NSwgNywgMywgMSwgNTQsIDIsIDYyLCA1NSwgNywgNiwgMSwgNTQsIDIsIDIzMiwgMjQzLCA1NSwgNywgMywgMSwgCi0gICAgNTQsIDIsIDIzMiwgMjQzLCA1NSwgNywgNiwgMSwgMjUwLCAyNTMsIDIsIDI1MCwgMTE4LCAyNCwgMTc5LCA3LCAzLCAxLCAKLSAgICAyNTAsIDI1MywgMiwgMjUwLCAxMTgsIDI0LCAxNzksIDcsIDYsIDEsIDI0OSwgNCwgMiwgNjIsIDQ5LCA3LCAzLCAxLCAyNDksIAotICAgIDQsIDIsIDYyLCA0OSwgNywgNiwgMSwgMjQ5LCA0LCAyLCA2MiwgNTUsIDcsIDMsIDEsIDI0OSwgNCwgMiwgNjIsIDU1LCA3LCAKLSAgICA2LCAxLCAyNDksIDQsIDIsIDIzMiwgMjQzLCA1NSwgNywgMywgMSwgMjQ5LCA0LCAyLCAyMzIsIDI0MywgNTUsIDcsIDYsIDEsIAotICAgIDI0OSwgNCwgMiwgMjUwLCAxMTcsIDcsIDMsIDEsIDI0OSwgNCwgMiwgMjUwLCAxMTcsIDcsIDYsIDEsIDI0OSwgNCwgMiwgCi0gICAgMjQ5LCAyMjQsIDU1LCA3LCAzLCAxLCAyNDksIDQsIDIsIDI0OSwgMjI0LCA1NSwgNywgNiwgMSwgMTkxLCAyLCAyMzIsIDM4LCAKLSAgICAyNCwgMjQyLCAxMTMsIDcsIDMsIDEsIDE5MSwgMiwgMjMyLCAzOCwgMjQsIDI0MiwgMTEzLCA3LCA2LCAxLCAxOTEsIDIsIAotICAgIDIzMiwgMzgsIDI0LCAxNzksIDcsIDMsIDEsIDE5MSwgMiwgMjMyLCAzOCwgMjQsIDE3OSwgNywgNiwgMSwgMTkxLCAyLCAKLSAgICAyNDksIDIyNCwgNTUsIDcsIDMsIDEsIDE5MSwgMiwgMjQ5LCAyMjQsIDU1LCA3LCA2LCAxLCAxOTEsIDIsIDIxNywgNDMsIAotICAgIDU1LCA3LCAzLCAxLCAxOTEsIDIsIDIxNywgNDMsIDU1LCA3LCA2LCAxLCAxOTEsIDIsIDI1MCwgMTE4LCAyNCwgMjUxLCA3NCwgCi0gICAgNywgMywgMSwgMTkxLCAyLCAyNTAsIDExOCwgMjQsIDI1MSwgNzQsIDcsIDYsIDEsIDI0NCwgMjMxLCAyLCA2MiwgNDksIDcsIAotICAgIDMsIDEsIDI0NCwgMjMxLCAyLCA2MiwgNDksIDcsIDYsIDEsIDI0MywgMTc4LCAyLCAyMzIsIDM3LCA3LCAzLCAxLCAyNDMsIAotICAgIDE3OCwgMiwgMjMyLCAzNywgNywgNiwgMSwgMjQyLCA0MiwgMiwgNjIsIDQ5LCA3LCAzLCAxLCAyNDIsIDQyLCAyLCA2MiwgCi0gICAgNDksIDcsIDYsIDEsIDI0MiwgNDIsIDIsIDYyLCA1NSwgNywgMywgMSwgMjQyLCA0MiwgMiwgNjIsIDU1LCA3LCA2LCAxLCAKLSAgICAyNDIsIDQyLCAyLCAyNDcsIDIwOSwgNywgMywgMSwgMjQyLCA0MiwgMiwgMjQ3LCAyMDksIDcsIDYsIDEsIDI0MiwgNDIsIDIsIAotICAgIDI1MCwgMTE3LCA3LCAzLCAxLCAyNDIsIDQyLCAyLCAyNTAsIDExNywgNywgNiwgMSwgMjQyLCA0MiwgMiwgMjUxLCA3NSwgCi0gICAgNTUsIDcsIDMsIDEsIDI0MiwgNDIsIDIsIDI1MSwgNzUsIDU1LCA3LCA2LCAxLCAyNDAsIDE0NiwgMiwgMjE3LCA0MywgNTUsIAotICAgIDcsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyMTcsIDQzLCA1NSwgNywgNiwgMSwgMjQwLCAxNDYsIDIsIDI0NywgMjEwLCAyNCwgCi0gICAgMTc5LCA3LCAzLCAxLCAyNDAsIDE0NiwgMiwgMjQ3LCAyMTAsIDI0LCAxNzksIDcsIDYsIDEsIDIzNSwgMjgsIDIsIDE3OSwgCi0gICAgNywgMywgMSwgMjM1LCAyOCwgMiwgMTc5LCA3LCA2LCAxLCAyMzUsIDI4LCAyLCA2MiwgNTUsIDcsIDMsIDEsIDIzNSwgMjgsIAotICAgIDIsIDYyLCA1NSwgNywgNiwgMSwgMjM1LCAyOCwgMiwgMjMyLCAyNDMsIDU1LCA3LCAzLCAxLCAyMzUsIDI4LCAyLCAyMzIsIAotICAgIDI0MywgNTUsIDcsIDYsIDEsIDIzMywgMTcxLCAyLCA2MiwgNTUsIDcsIDMsIDEsIDIzMywgMTcxLCAyLCA2MiwgNTUsIDcsIAotICAgIDYsIDEsIDIzMywgMTcxLCAyLCA2MiwgMjUxLCAyMjAsIDI0LCAyMzIsIDM3LCA3LCAzLCAxLCAyMzMsIDE3MSwgMiwgNjIsIAotICAgIDI1MSwgMjIwLCAyNCwgMjMyLCAzNywgNywgNiwgMSwgMjMzLCAxNzEsIDIsIDIzMiwgMjQzLCA1NSwgNywgMywgMSwgMjMzLCAKLSAgICAxNzEsIDIsIDIzMiwgMjQzLCA1NSwgNywgNiwgMSwgMjMzLCAxNzEsIDIsIDI0OSwgMjI0LCA1NSwgNywgMywgMSwgMjMzLCAKLSAgICAxNzEsIDIsIDI0OSwgMjI0LCA1NSwgNywgNiwgMSwgMjMyLCAxMTAsIDIsIDE3OSwgNywgMywgMSwgMjMyLCAxMTAsIDIsIAotICAgIDE3OSwgNywgNiwgMSwgMjMyLCAxMTAsIDIsIDYyLCA0OSwgNywgMywgMSwgMjMyLCAxMTAsIDIsIDYyLCA0OSwgNywgNiwgMSwgCi0gICAgMjMyLCAxMTAsIDIsIDYyLCA1NSwgNywgMywgMSwgMjMyLCAxMTAsIDIsIDYyLCA1NSwgNywgNiwgMSwgMjMwLCA5OCwgMiwgCi0gICAgNjIsIDQ5LCA3LCAzLCAxLCAyMzAsIDk4LCAyLCA2MiwgNDksIDcsIDYsIDEsIDIzMCwgOTgsIDIsIDYyLCA1NSwgNywgMywgCi0gICAgMSwgMjMwLCA5OCwgMiwgNjIsIDU1LCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAyMzIsIDI0MywgNTUsIDcsIDMsIDEsIDIzMCwgCi0gICAgOTgsIDIsIDIzMiwgMjQzLCA1NSwgNywgNiwgMSwgMjMwLCA5OCwgMiwgMjQ5LCAyMjQsIDU1LCA3LCAzLCAxLCAyMzAsIDk4LCAKLSAgICAyLCAyNDksIDIyNCwgNTUsIDcsIDYsIDEsIDE1NywgMiwgMjE3LCA0MywgMjQsIDE3OSwgNywgMywgMSwgMTU3LCAyLCAyMTcsIAotICAgIDQzLCAyNCwgMTc5LCA3LCA2LCAxLCAxNTcsIDIsIDIxNywgNDMsIDI0LCAyNDcsIDIwOSwgNywgMywgMSwgMTU3LCAyLCAKLSAgICAyMTcsIDQzLCAyNCwgMjQ3LCAyMDksIDcsIDYsIDEsIDE1NywgMiwgMjMyLCAzOCwgMjQsIDI0MiwgMTEzLCA3LCAzLCAxLCAKLSAgICAxNTcsIDIsIDIzMiwgMzgsIDI0LCAyNDIsIDExMywgNywgNiwgMSwgMTU3LCAyLCAyMzIsIDM4LCAyNCwgMTc5LCA3LCAzLCAKLSAgICAxLCAxNTcsIDIsIDIzMiwgMzgsIDI0LCAxNzksIDcsIDYsIDEsIDIyNiwgMjMwLCAyLCAxNzksIDcsIDMsIDEsIDIyNiwgCi0gICAgMjMwLCAyLCAxNzksIDcsIDYsIDEsIDIyNiwgMjMwLCAyLCA2MiwgNDksIDcsIDMsIDEsIDIyNiwgMjMwLCAyLCA2MiwgNDksIAotICAgIDcsIDYsIDEsIDIyNCwgMTEzLCAyLCA2MiwgNDksIDcsIDMsIDEsIDIyNCwgMTEzLCAyLCA2MiwgNDksIDcsIDYsIDEsIDIyNCwgCi0gICAgMTEzLCAyLCA2MiwgNTUsIDcsIDMsIDEsIDIyNCwgMTEzLCAyLCA2MiwgNTUsIDcsIDYsIDEsIDIyNCwgMTEzLCAyLCA2MiwgCi0gICAgMjUxLCAyMjAsIDI0LCAyMzIsIDM3LCA3LCAzLCAxLCAyMjQsIDExMywgMiwgNjIsIDI1MSwgMjIwLCAyNCwgMjMyLCAzNywgCi0gICAgNywgNiwgMSwgMjI0LCAxMTMsIDIsIDIzMiwgMjQzLCA1NSwgNywgMywgMSwgMjI0LCAxMTMsIDIsIDIzMiwgMjQzLCA1NSwgCi0gICAgNywgNiwgMSwgMjIzLCA0LCAyLCA2MiwgNDksIDcsIDMsIDEsIDIyMywgNCwgMiwgNjIsIDQ5LCA3LCA2LCAxLCAyMjMsIDQsIAotICAgIDIsIDYyLCA1NSwgNywgMywgMSwgMjIzLCA0LCAyLCA2MiwgNTUsIDcsIDYsIDEsIDIyMywgNCwgMiwgMjU0LCAxNjQsIDI0LCAKLSAgICA2MiwgNDksIDcsIDMsIDEsIDIyMywgNCwgMiwgMjU0LCAxNjQsIDI0LCA2MiwgNDksIDcsIDYsIDEsIDIyMywgNCwgMiwgCi0gICAgMjUwLCAxNjcsIDI0LCA2MiwgNDksIDcsIDMsIDEsIDIyMywgNCwgMiwgMjUwLCAxNjcsIDI0LCA2MiwgNDksIDcsIDYsIDEsIAotICAgIDIyMywgNCwgMiwgNjIsIDI1MSwgMjIwLCAyNCwgNjIsIDQ5LCA3LCAzLCAxLCAyMjMsIDQsIDIsIDYyLCAyNTEsIDIyMCwgCi0gICAgMjQsIDYyLCA0OSwgNywgNiwgMSwgMjE4LCAxMDAsIDIsIDYyLCA0OSwgNywgMywgMSwgMjE4LCAxMDAsIDIsIDYyLCA0OSwgCi0gICAgNywgNiwgMSwgMjE4LCAxMDAsIDIsIDYyLCA1NSwgNywgMywgMSwgMjE4LCAxMDAsIDIsIDYyLCA1NSwgNywgNiwgMSwgMjE4LCAKLSAgICAxMDAsIDIsIDIzMiwgMjQzLCA1NSwgNywgMywgMSwgMjE4LCAxMDAsIDIsIDIzMiwgMjQzLCA1NSwgNywgNiwgMSwgMjE4LCAKLSAgICAxMDAsIDIsIDI0OSwgMjI0LCA1NSwgNywgMywgMSwgMjE4LCAxMDAsIDIsIDI0OSwgMjI0LCA1NSwgNywgNiwgMSwgMTExLCAKLSAgICAyLCAyNDcsIDIxMCwgNTUsIDcsIDMsIDEsIDExMSwgMiwgMjQ3LCAyMTAsIDU1LCA3LCA2LCAxLCAxMTEsIDIsIDIxNywgNDMsIAotICAgIDU1LCA3LCAzLCAxLCAxMTEsIDIsIDIxNywgNDMsIDU1LCA3LCA2LCAxLCAxMTEsIDIsIDI0OSwgMjI0LCA1NSwgNywgMywgMSwgCi0gICAgMTExLCAyLCAyNDksIDIyNCwgNTUsIDcsIDYsIDEsIDExMSwgMiwgMjE3LCA0MywgMjQsIDE3OSwgNywgMywgMSwgMTExLCAyLCAKLSAgICAyMTcsIDQzLCAyNCwgMTc5LCA3LCA2LCAxLCAxMTEsIDIsIDIzMiwgMzgsIDI0LCAyNDcsIDIwOSwgNywgMywgMSwgMTExLCAKLSAgICAyLCAyMzIsIDM4LCAyNCwgMjQ3LCAyMDksIDcsIDYsIDEsIDIxNSwgODAsIDIsIDIxNywgNDIsIDcsIDMsIDEsIDIxNSwgODAsIAotICAgIDIsIDIxNywgNDIsIDcsIDYsIDEsIDIxNSwgODAsIDIsIDYyLCA1NSwgNywgMywgMSwgMjE1LCA4MCwgMiwgNjIsIDU1LCA3LCAKLSAgICA2LCAxLCAyMTQsIDgzLCAyLCAyNDIsIDExMywgNywgMywgMSwgMjE0LCA4MywgMiwgMjQyLCAxMTMsIDcsIDYsIDEsIDIxNCwgCi0gICAgODMsIDIsIDE3OSwgNywgMywgMSwgMjE0LCA4MywgMiwgMTc5LCA3LCA2LCAxLCAyMTQsIDgzLCAyLCAyNDcsIDIwOSwgNywgCi0gICAgMywgMSwgMjE0LCA4MywgMiwgMjQ3LCAyMDksIDcsIDYsIDEsIDIxNCwgODMsIDIsIDYyLCA0OSwgNywgMywgMSwgMjE0LCAKLSAgICA4MywgMiwgNjIsIDQ5LCA3LCA2LCAxLCAyMTQsIDgzLCAyLCA2MiwgNTUsIDcsIDMsIDEsIDIxNCwgODMsIDIsIDYyLCA1NSwgCi0gICAgNywgNiwgMSwgMjEzLCAxNjcsIDIsIDYyLCA0OSwgNywgMywgMSwgMjEzLCAxNjcsIDIsIDYyLCA0OSwgNywgNiwgMSwgMjEzLCAKLSAgICAxNjcsIDIsIDI0NywgMjA5LCA3LCAzLCAxLCAyMTMsIDE2NywgMiwgMjQ3LCAyMDksIDcsIDYsIDEsIDIxMywgMTA2LCAyLCAKLSAgICA2MiwgNDksIDcsIDMsIDEsIDIxMywgMTA2LCAyLCA2MiwgNDksIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCAyNDksIDIyMywgNywgCi0gICAgMywgMSwgMjEyLCAxNTMsIDIsIDI0OSwgMjIzLCA3LCA2LCAxLCAyMTIsIDE1MywgMiwgNjIsIDU1LCA3LCAzLCAxLCAyMTIsIAotICAgIDE1MywgMiwgNjIsIDU1LCA3LCA2LCAxLCAyMTIsIDE1MywgMiwgMjMyLCAyNDMsIDU1LCA3LCAzLCAxLCAyMTIsIDE1MywgMiwgCi0gICAgMjMyLCAyNDMsIDU1LCA3LCAzLCAxLCAyNDIsIDQyLCAyLCAyMzIsIDI0MywgNTUsIDcsIDMsIDEsIDIxOCwgMTAwLCAyLCAKLSAgICAyNDcsIDIwOSwgNywgMywgMSwgMjE0LCA4MywgMiwgMjIzLCAxMzEsIDQ5LCA3LCAzLCAxLCAyMTMsIDEwNiwgMiwgMjIzLCAKLSAgICAxMzEsIDQ5LCA3LCAzLCAxLCAxMTgsIDIsIDQ2LCAxNTEsIDIyMywgMTMwLCA3LCAzLCAxLCAxODQsIDIyMywgNCwgMiwgNjIsIAotICAgIDQ5LCA3LCAzLCAxLCAxODQsIDIyMywgNCwgMiwgMjQ3LCAyMDcsIDkwLCA3LCAzLCAxLCAxODQsIDIyMywgNCwgMiwgMTI0LCAKLSAgICA5MCwgNywgNiwgMSwgMjIwLCAyNTUsIDE5NywgNywgMywgMSwgMjQ4LCA1LCA3LCA2LCAxLCAxMTgsIDIsIDYyLCA1NSwgNywgCi0gICAgMywgMSwgMTE4LCAyLCA2MiwgNTUsIDcsIDYsIDEsIDExOCwgMiwgMjQxLCAzOCwgNDksIDcsIDMsIDEsIDExOCwgMiwgMjQxLCAKLSAgICAzOCwgNDksIDcsIDYsIDEsIDExOCwgMiwgMjQ5LCAyMjQsIDI0LCAxNzksIDcsIDMsIDEsIDExOCwgMiwgMjQ5LCAyMjQsIAotICAgIDI0LCAxNzksIDcsIDYsIDEsIDExOCwgMiwgMjQ5LCAyMjQsIDI0LCAyNDIsIDExMywgNywgMywgMSwgMTE4LCAyLCAyNDksIAotICAgIDIyNCwgMjQsIDI0MiwgMTEzLCA3LCA2LCAxLCAxMTgsIDIsIDI0OSwgMjI0LCAyNCwgMjQxLCAzOCwgNDksIDcsIDMsIDEsIAotICAgIDExOCwgMiwgMjQ5LCAyMjQsIDI0LCAyNDEsIDM4LCA0OSwgNywgNiwgMSwgMTE4LCAyLCAyNDksIDIyNCwgMjQsIDIxNywgCi0gICAgNDIsIDcsIDMsIDEsIDExOCwgMiwgMjQ5LCAyMjQsIDI0LCAyMTcsIDQyLCA3LCA2LCAxLCAxMTgsIDIsIDI0OSwgMjI0LCAKLSAgICAyNCwgNjIsIDU1LCA3LCAzLCAxLCAxMTgsIDIsIDI0OSwgMjI0LCAyNCwgNjIsIDU1LCA3LCA2LCAxLCAxMTgsIDIsIDI1MSwgCi0gICAgNzUsIDI0LCAxNzksIDcsIDMsIDEsIDExOCwgMiwgMjUxLCA3NSwgMjQsIDE3OSwgNywgNiwgMSwgMTE4LCAyLCAyNTEsIDc1LCAKLSAgICAyNCwgMjQyLCAxMTMsIDcsIDMsIDEsIDExOCwgMiwgMjUxLCA3NSwgMjQsIDI0MiwgMTEzLCA3LCA2LCAxLCAxMTgsIDIsIAotICAgIDI1MSwgNzUsIDI0LCAyNDEsIDM4LCA0OSwgNywgMywgMSwgMTE4LCAyLCAyNTEsIDc1LCAyNCwgMjQxLCAzOCwgNDksIDcsIAotICAgIDYsIDEsIDExOCwgMiwgMjUxLCA3NSwgMjQsIDIxNywgNDIsIDcsIDMsIDEsIDExOCwgMiwgMjUxLCA3NSwgMjQsIDIxNywgCi0gICAgNDIsIDcsIDYsIDEsIDExOCwgMiwgMjUxLCA3NSwgMjQsIDYyLCA1NSwgNywgMywgMSwgMTE4LCAyLCAyNTEsIDc1LCAyNCwgCi0gICAgNjIsIDU1LCA3LCA2LCAxLCAxOTEsIDIsIDYyLCA1NSwgNywgMywgMSwgMTkxLCAyLCA2MiwgNTUsIDcsIDYsIDEsIDE5MSwgCi0gICAgMiwgMjQxLCAzOCwgNDksIDcsIDMsIDEsIDE5MSwgMiwgMjQxLCAzOCwgNDksIDcsIDYsIDEsIDE5MSwgMiwgMjE3LCA0MiwgCi0gICAgNywgMywgMSwgMTkxLCAyLCAyMTcsIDQyLCA3LCA2LCAxLCAxOTEsIDIsIDI0OSwgMjI0LCAyNCwgMTc5LCA3LCAzLCAxLCAKLSAgICAxOTEsIDIsIDI0OSwgMjI0LCAyNCwgMTc5LCA3LCA2LCAxLCAxOTEsIDIsIDI0OSwgMjI0LCAyNCwgMjQyLCAxMTMsIDcsIDMsIAotICAgIDEsIDE5MSwgMiwgMjQ5LCAyMjQsIDI0LCAyNDIsIDExMywgNywgNiwgMSwgMTkxLCAyLCAyNDksIDIyNCwgMjQsIDI0MSwgCi0gICAgMzgsIDQ5LCA3LCAzLCAxLCAxOTEsIDIsIDI0OSwgMjI0LCAyNCwgMjQxLCAzOCwgNDksIDcsIDYsIDEsIDE5MSwgMiwgMjQ5LCAKLSAgICAyMjQsIDI0LCAyMTcsIDQyLCA3LCAzLCAxLCAxOTEsIDIsIDI0OSwgMjI0LCAyNCwgMjE3LCA0MiwgNywgNiwgMSwgMTkxLCAKLSAgICAyLCAyNDksIDIyNCwgMjQsIDYyLCA1NSwgNywgMywgMSwgMTkxLCAyLCAyNDksIDIyNCwgMjQsIDYyLCA1NSwgNywgNiwgMSwgCi0gICAgMjQwLCAxNDYsIDIsIDI0MSwgMzgsIDQ5LCA3LCAzLCAxLCAyNDAsIDE0NiwgMiwgMjQxLCAzOCwgNDksIDcsIDYsIDEsIAotICAgIDI0MCwgMTQ2LCAyLCA2MiwgNTUsIDcsIDMsIDEsIDI0MCwgMTQ2LCAyLCA2MiwgNTUsIDcsIDYsIDEsIDE1NywgMiwgNjIsIAotICAgIDU1LCA3LCAzLCAxLCAxNTcsIDIsIDYyLCA1NSwgNywgNiwgMSwgMTU3LCAyLCAyNDEsIDM4LCA0OSwgNywgMywgMSwgMTU3LCAKLSAgICAyLCAyNDEsIDM4LCA0OSwgNywgNiwgMSwgMTU3LCAyLCAyNDksIDIyNCwgMjQsIDE3OSwgNywgMywgMSwgMTU3LCAyLCAyNDksIAotICAgIDIyNCwgMjQsIDE3OSwgNywgNiwgMSwgMTU3LCAyLCAyNDksIDIyNCwgMjQsIDI0MiwgMTEzLCA3LCAzLCAxLCAxNTcsIDIsIAotICAgIDI0OSwgMjI0LCAyNCwgMjQyLCAxMTMsIDcsIDYsIDEsIDE1NywgMiwgMjQ5LCAyMjQsIDI0LCAyNDEsIDM4LCA0OSwgNywgMywgCi0gICAgMSwgMTU3LCAyLCAyNDksIDIyNCwgMjQsIDI0MSwgMzgsIDQ5LCA3LCA2LCAxLCAxNTcsIDIsIDI0OSwgMjI0LCAyNCwgMjE3LCAKLSAgICA0MiwgNywgMywgMSwgMTU3LCAyLCAyNDksIDIyNCwgMjQsIDIxNywgNDIsIDcsIDYsIDEsIDE1NywgMiwgMjQ5LCAyMjQsIAotICAgIDI0LCA2MiwgNTUsIDcsIDMsIDEsIDE1NywgMiwgMjQ5LCAyMjQsIDI0LCA2MiwgNTUsIDcsIDYsIDEsIDE1NywgMiwgMjQwLCAKLSAgICAyMzYsIDI0LCAxNzksIDcsIDMsIDEsIDE1NywgMiwgMjQwLCAyMzYsIDI0LCAxNzksIDcsIDYsIDEsIDE1NywgMiwgMjQwLCAKLSAgICAyMzYsIDI0LCAyNDIsIDExMywgNywgMywgMSwgMTU3LCAyLCAyNDAsIDIzNiwgMjQsIDI0MiwgMTEzLCA3LCA2LCAxLCAxNTcsIAotICAgIDIsIDI0MCwgMjM2LCAyNCwgMjQxLCAzOCwgNDksIDcsIDMsIDEsIDE1NywgMiwgMjQwLCAyMzYsIDI0LCAyNDEsIDM4LCA0OSwgCi0gICAgNywgNiwgMSwgMTU3LCAyLCAyNDAsIDIzNiwgMjQsIDIxNywgNDIsIDcsIDMsIDEsIDE1NywgMiwgMjQwLCAyMzYsIDI0LCAKLSAgICAyMTcsIDQyLCA3LCA2LCAxLCAxNTcsIDIsIDI0MCwgMjM2LCAyNCwgNjIsIDU1LCA3LCAzLCAxLCAxNTcsIDIsIDI0MCwgCi0gICAgMjM2LCAyNCwgNjIsIDU1LCA3LCA2LCAxLCAxMTEsIDIsIDYyLCA1NSwgNywgMywgMSwgMTExLCAyLCA2MiwgNTUsIDcsIDYsIAotICAgIDEsIDExMSwgMiwgMjQxLCAzOCwgNDksIDcsIDMsIDEsIDExMSwgMiwgMjQxLCAzOCwgNDksIDcsIDYsIDEsIDExMSwgMiwgCi0gICAgMjQwLCAyMzYsIDI0LCAxNzksIDcsIDMsIDEsIDExMSwgMiwgMjQwLCAyMzYsIDI0LCAxNzksIDcsIDYsIDEsIDExMSwgMiwgCi0gICAgMjQwLCAyMzYsIDI0LCAyNDIsIDExMywgNywgMywgMSwgMTExLCAyLCAyNDAsIDIzNiwgMjQsIDI0MiwgMTEzLCA3LCA2LCAxLCAKLSAgICAxMTEsIDIsIDI0MCwgMjM2LCAyNCwgMjQxLCAzOCwgNDksIDcsIDMsIDEsIDExMSwgMiwgMjQwLCAyMzYsIDI0LCAyNDEsIAotICAgIDM4LCA0OSwgNywgNiwgMSwgMTExLCAyLCAyNDAsIDIzNiwgMjQsIDIxNywgNDIsIDcsIDMsIDEsIDExMSwgMiwgMjQwLCAKLSAgICAyMzYsIDI0LCAyMTcsIDQyLCA3LCA2LCAxLCAxMTEsIDIsIDI0MCwgMjM2LCAyNCwgNjIsIDU1LCA3LCAzLCAxLCAxMTEsIDIsIAotICAgIDI0MCwgMjM2LCAyNCwgNjIsIDU1LCA3LCA2LCAxLCAyMTMsIDEwNiwgMiwgMjQyLCAxMTMsIDcsIDMsIDEsIDIxMywgMTA2LCAKLSAgICAyLCAyNDIsIDExMywgNywgNiwgMSwgMjEzLCAxMDYsIDIsIDYyLCA1NSwgNywgMywgMSwgMjEzLCAxMDYsIDIsIDYyLCA1NSwgCi0gICAgNywgNiwgMSwgMjEzLCAxMDYsIDIsIDI0MSwgMzgsIDQ5LCA3LCAzLCAxLCAyMTMsIDEwNiwgMiwgMjQxLCAzOCwgNDksIDcsIAotICAgIDYsIDEsIDIxMywgMTA2LCAyLCAyMTcsIDQyLCA3LCAzLCAxLCAyMTMsIDEwNiwgMiwgMjE3LCA0MiwgNywgNiwgMSwgMjMxLCAKLSAgICAzNiwgMjMyLCAyMTQsIDcsIDMsIDEsIDIzMSwgMzYsIDIzMiwgMjE0LCA3LCA2LCAxLCAyMzEsIDM2LCAyMTUsIDc5LCA3LCAKLSAgICAzLCAxLCAyMzEsIDM2LCAyMTUsIDc5LCA3LCA2LCAxLCAyMTMsIDEwNiwgMiwgMjMyLCAxNzcsIDcsIDMsIDEsIDIxMywgCi0gICAgMTA2LCAyLCAyMzIsIDE3NywgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIyNSwgMzksIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAKLSAgICAyNDgsIDk5LCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjI1LCA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjU0LCA1MywgCi0gICAgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzQsIDI1LCAzLCAKLSAgICAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIAotICAgIDUwLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjA3LCAyNCwgMjI2LCA1MCwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDIyNSwgCi0gICAgMzksIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyNDgsIDk5LCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjI1LCA0MCwgMjQsIAotICAgIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAKLSAgICAyMjUsIDQwLCAyNCwgMjI2LCAyMzQsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDYsIDEsIAotICAgIDI1NCwgNTMsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjA3LCAyNCwgMjI2LCA1MCwgCi0gICAgMjUsIDMsIDEsIDI0NSwgNjQsIDIsIDIyNSwgMzksIDI1LCAzLCAxLCAyNDUsIDY0LCAyLCAyNDgsIDk5LCAyNSwgMywgMSwgCi0gICAgMjQ1LCA2NCwgMiwgMjI1LCA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjQ1LCA2NCwgMiwgMjA3LCAyNCwgMjE0LCAKLSAgICAyNDUsIDI1LCAzLCAxLCAyNDUsIDY0LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzQsIDI1LCAzLCAxLCAyNDUsIDY0LCAyLCAKLSAgICAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDYsIDEsIDI0NSwgNjQsIDIsIDIyNSwgMzksIDI1LCA2LCAxLCAyNDUsIDY0LCAyLCAKLSAgICAyNDgsIDk5LCAyNSwgNiwgMSwgMjQ1LCA2NCwgMiwgMjI1LCA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjQ1LCA2NCwgCi0gICAgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyNDUsIDY0LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzQsIDI1LCA2LCAKLSAgICAxLCAyNDUsIDY0LCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIyNSwgMzksIDI1LCAzLCAKLSAgICAxLCAyNDUsIDI5LCAyLCAyNDgsIDk5LCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjI1LCA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgCi0gICAgMywgMSwgMjQ1LCAyOSwgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMjUsIDQwLCAyNCwgCi0gICAgMjI2LCAyMzQsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIAotICAgIDIyNSwgNDAsIDI0LCAyMjYsIDUwLCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjA3LCAyNCwgMjI2LCA1MCwgMjUsIDYsIDEsIAotICAgIDI0NSwgMjksIDIsIDIyNSwgMzksIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAyNDgsIDk5LCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgCi0gICAgMjI1LCA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAKLSAgICAyNDUsIDI5LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzQsIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAyMDcsIDI0LCAyMjYsIAotICAgIDIzNCwgMjUsIDYsIDEsIDI0NSwgMjksIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgCi0gICAgMjA3LCAyNCwgMjI2LCA1MCwgMjUsIDMsIDEsIDIzNSwgMTg0LCAyLCAyMjUsIDM5LCAyNSwgMywgMSwgMjM1LCAxODQsIDIsIAotICAgIDI0OCwgOTksIDI1LCAzLCAxLCAyMzUsIDE4NCwgMiwgMjI1LCA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjM1LCAKLSAgICAxODQsIDIsIDIwNywgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDIzNCwgCi0gICAgMjUsIDMsIDEsIDIzNSwgMTg0LCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDIzNSwgMTg0LCAyLCAyMjUsIDQwLCAKLSAgICAyNCwgMjI2LCA1MCwgMjUsIDMsIDEsIDIzNSwgMTg0LCAyLCAyMDcsIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgMjM1LCAxODQsIAotICAgIDIsIDIyNSwgMzksIDI1LCA2LCAxLCAyMzUsIDE4NCwgMiwgMjQ4LCA5OSwgMjUsIDYsIDEsIDIzNSwgMTg0LCAyLCAyMjUsIAotICAgIDQwLCAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyMzUsIDE4NCwgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAKLSAgICAyMzUsIDE4NCwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgMjM0LCAyNSwgNiwgMSwgMjM1LCAxODQsIDIsIDIwNywgMjQsIDIyNiwgCi0gICAgMjM0LCAyNSwgNiwgMSwgMjM1LCAxODQsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgMjM1LCAxODQsIDIsIAotICAgIDIwNywgMjQsIDIyNiwgNTAsIDI1LCAzLCAxLCAyMjcsIDY2LCAyLCAyMjUsIDM5LCAyNSwgMywgMSwgMjI3LCA2NiwgMiwgCi0gICAgMjQ4LCA5OSwgMjUsIDMsIDEsIDIyNywgNjYsIDIsIDIyNSwgNDAsIDI0LCAyMTQsIDI0NSwgMjUsIDMsIDEsIDIyNywgNjYsIAotICAgIDIsIDIwNywgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjI3LCA2NiwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgMjM0LCAyNSwgMywgCi0gICAgMSwgMjI3LCA2NiwgMiwgMjA3LCAyNCwgMjI2LCAyMzQsIDI1LCA2LCAxLCAyMjcsIDY2LCAyLCAyMjUsIDM5LCAyNSwgNiwgCi0gICAgMSwgMjI3LCA2NiwgMiwgMjQ4LCA5OSwgMjUsIDYsIDEsIDIyNywgNjYsIDIsIDIyNSwgNDAsIDI0LCAyMTQsIDI0NSwgMjUsIAotICAgIDYsIDEsIDIyNywgNjYsIDIsIDIwNywgMjQsIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjI3LCA2NiwgMiwgMjI1LCA0MCwgMjQsIAotICAgIDIyNiwgMjM0LCAyNSwgNiwgMSwgMjI3LCA2NiwgMiwgMjA3LCAyNCwgMjI2LCAyMzQsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgCi0gICAgMjI1LCAzOSwgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyNDgsIDk5LCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIDIyNSwgNDAsIAotICAgIDI0LCAyMTQsIDI0NSwgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyMDcsIDI0LCAyMTQsIDI0NSwgMjUsIDMsIDEsIDIxNSwgCi0gICAgMTI5LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzQsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjA3LCAyNCwgMjI2LCAyMzQsIAotICAgIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgNTAsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjA3LCAKLSAgICAyNCwgMjI2LCA1MCwgMjUsIDYsIDEsIDIxNSwgMTI5LCAyLCAyNDgsIDk5LCAyNSwgNiwgMSwgMjE1LCAxMjksIDIsIDIwNywgCi0gICAgMjQsIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjE1LCAxMjksIDIsIDIwNywgMjQsIDIyNiwgMjM0LCAyNSwgNiwgMSwgMjE1LCAKLSAgICAxMjksIDIsIDIwNywgMjQsIDIyNiwgNTAsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMjUsIDM5LCAyNSwgMywgMSwgMjI3LCAKLSAgICA2OCwgMiwgMjQ4LCA5OSwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIyNSwgNDAsIDI0LCAyMTQsIDI0NSwgMjUsIDMsIDEsIAotICAgIDIyNywgNjgsIDIsIDIwNywgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgCi0gICAgMjM0LCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjA3LCAyNCwgMjI2LCAyMzQsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMjUsIAotICAgIDQwLCAyNCwgMjI2LCA1MCwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIwNywgMjQsIDIyNiwgNTAsIDI1LCA2LCAxLCAyMjcsIAotICAgIDY4LCAyLCAyMjUsIDM5LCAyNSwgNiwgMSwgMjI3LCA2OCwgMiwgMjQ4LCA5OSwgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIyNSwgCi0gICAgNDAsIDI0LCAyMTQsIDI0NSwgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIwNywgMjQsIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjI3LCAKLSAgICA2OCwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgMjM0LCAyNSwgNiwgMSwgMjI3LCA2OCwgMiwgMjA3LCAyNCwgMjI2LCAyMzQsIAotICAgIDI1LCA2LCAxLCAyMjcsIDY4LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCA1MCwgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIwNywgCi0gICAgMjQsIDIyNiwgNTAsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMTQsIDI0NSwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIyNiwgCi0gICAgMjM0LCAyNSwgMywgMSwgMjQ1LCA2NCwgMiwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyNDUsIDY0LCAyLCAyMjYsIDIzNCwgMjUsIAotICAgIDMsIDEsIDI0NSwgMjksIDIsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjI2LCAyMzQsIDI1LCAzLCAxLCAKLSAgICAyMzUsIDE4NCwgMiwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyMzUsIDE4NCwgMiwgMjI2LCAyMzQsIDI1LCAzLCAxLCAyMjcsIAotICAgIDY2LCAyLCAyMTQsIDI0NSwgMjUsIDMsIDEsIDIyNywgNjYsIDIsIDIyNiwgMjM0LCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIAotICAgIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIDIyNiwgMjM0LCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjE0LCAKLSAgICAyNDUsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMjYsIDIzNCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIyNSwgNDAsIDI0LCAKLSAgICAyMTIsIDIxMCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIwNywgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgCi0gICAgMjI1LCA0MCwgMjQsIDIxNCwgMjQ2LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMTQsIAotICAgIDI0NiwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjI1LCA0MCwgMjQsIDIyNiwgMjM1LCAyNCwgMjEyLCAKLSAgICAyMTAsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMjYsIDIzNSwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgCi0gICAgMjU0LCA1MywgMiwgMjI1LCA0MCwgMjQsIDIyNiwgNTEsIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIAotICAgIDIwNywgMjQsIDIyNiwgNTEsIDI0LCAyMTIsIDIxMCwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDIyNSwgNDAsIDI0LCAyMjUsIAotICAgIDUxLCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjA3LCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDIyNSwgCi0gICAgNDAsIDI0LCAyMTQsIDI0NiwgMjQsIDIyNSwgNTEsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMTQsIDI0NiwgCi0gICAgMjQsIDIyNSwgNTEsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzUsIDI0LCAyMjUsIDUxLCAKLSAgICAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjA3LCAyNCwgMjI2LCAyMzUsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgMjU0LCA1MywgCi0gICAgMiwgMjI1LCA0MCwgMjQsIDIyNiwgNTEsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjA3LCAyNCwgMjI2LCAKLSAgICA1MSwgMjQsIDIyNSwgNTEsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMjUsIDQwLCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAKLSAgICAyNDUsIDI5LCAyLCAyMDcsIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIyNSwgNDAsIDI0LCAyMTQsIAotICAgIDI0NiwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjA3LCAyNCwgMjE0LCAyNDYsIDI0LCAyMTIsIDIxMCwgCi0gICAgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDIzNSwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjQ1LCAKLSAgICAyOSwgMiwgMjA3LCAyNCwgMjI2LCAyMzUsIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIyNSwgNDAsIAotICAgIDI0LCAyMjYsIDUxLCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMDcsIDI0LCAyMjYsIDUxLCAyNCwgCi0gICAgMjEyLCAyMTAsIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAyMjUsIDQwLCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDI0NSwgMjksIAotICAgIDIsIDIwNywgMjQsIDIyNSwgNTEsIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAyMjUsIDQwLCAyNCwgMjE0LCAyNDYsIDI0LCAKLSAgICAyMjUsIDUxLCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgMjA3LCAyNCwgMjE0LCAyNDYsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgCi0gICAgMjQ1LCAyOSwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgMjM1LCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDI0NSwgMjksIDIsIAotICAgIDIwNywgMjQsIDIyNiwgMjM1LCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDI0NSwgMjksIDIsIDIyNSwgNDAsIDI0LCAyMjYsIAotICAgIDUxLCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDI0NSwgMjksIDIsIDIwNywgMjQsIDIyNiwgNTEsIDI0LCAyMjUsIDUxLCAyNSwgCi0gICAgMywgMSwgMjI3LCA2OCwgMiwgMjI1LCA0MCwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjA3LCAyNCwgCi0gICAgMjEyLCAyMTAsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMjUsIDQwLCAyNCwgMjE0LCAyNDYsIDI0LCAyMTIsIDIxMCwgMjUsIAotICAgIDMsIDEsIDIyNywgNjgsIDIsIDIwNywgMjQsIDIxNCwgMjQ2LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAKLSAgICAyMjUsIDQwLCAyNCwgMjI2LCAyMzUsIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIwNywgMjQsIDIyNiwgCi0gICAgMjM1LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCA1MSwgMjQsIDIxMiwgCi0gICAgMjEwLCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjA3LCAyNCwgMjI2LCA1MSwgMjQsIDIxMiwgMjEwLCAyNSwgNiwgMSwgMjI3LCAKLSAgICA2OCwgMiwgMjI1LCA0MCwgMjQsIDIyNSwgNTEsIDI1LCA2LCAxLCAyMjcsIDY4LCAyLCAyMDcsIDI0LCAyMjUsIDUxLCAyNSwgCi0gICAgNiwgMSwgMjI3LCA2OCwgMiwgMjI1LCA0MCwgMjQsIDIxNCwgMjQ2LCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDIyNywgNjgsIAotICAgIDIsIDIwNywgMjQsIDIxNCwgMjQ2LCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIyNSwgNDAsIDI0LCAKLSAgICAyMjYsIDIzNSwgMjQsIDIyNSwgNTEsIDI1LCA2LCAxLCAyMjcsIDY4LCAyLCAyMDcsIDI0LCAyMjYsIDIzNSwgMjQsIDIyNSwgCi0gICAgNTEsIDI1LCA2LCAxLCAyMjcsIDY4LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCA1MSwgMjQsIDIyNSwgNTEsIDI1LCA2LCAxLCAKLSAgICAyMjcsIDY4LCAyLCAyMDcsIDI0LCAyMjYsIDUxLCAyNCwgMjI1LCA1MSwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIxNCwgCi0gICAgMTAxLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjMyLCAzNywgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIxNCwgMjQ2LCAyNCwgCi0gICAgMjEyLCAyMTAsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMTIsIDIxMCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIyNiwgMjM1LCAKLSAgICAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMjYsIDUwLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjI2LCAKLSAgICA1MSwgMjQsIDIxMiwgMjEwLCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjE0LCAxMDEsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAKLSAgICAyMzIsIDM3LCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMjYsIDIzNCwgCi0gICAgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDIyNSwgNTEsIDI1LCAyMzQsIDExLCAyNSwgMjI1LCA1MSwgMjUsIDIyNSwgMzksIDI1LCAKLSAgICAyMjYsIDUwLCAyNSwgMjQ3LCAyMDQsIDI0LCAyMjYsIDUwLCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjE0LCAyNDYsIDI0LCAKLSAgICAyMTIsIDIxMCwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjI2LCAyMzUsIAotICAgIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIyNiwgNTAsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMjYsIAotICAgIDUxLCAyNCwgMjEyLCAyMTAsIDI1LCA2LCAxLCAyNDUsIDY0LCAyLCAyMTQsIDI0NSwgMjUsIDYsIDEsIDI0NSwgNjQsIDIsIAotICAgIDIyNiwgMjM0LCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAyMjYsIDIzNCwgCi0gICAgMjUsIDYsIDEsIDI0NSwgMjksIDIsIDIyNSwgNTEsIDI1LCAyMjUsIDQwLCAyNCwgMjE0LCAyNDUsIDI1LCAyMjUsIDQwLCAKLSAgICAyNCwgMjI2LCAyMzQsIDI1LCAyMjUsIDQwLCAyNCwgMjI2LCA1MCwgMjUsIDMsIDEsIDIzNSwgMTg0LCAyLCAyMTQsIDEwMSwgCi0gICAgMjUsIDMsIDEsIDIzNSwgMTg0LCAyLCAyMzIsIDM3LCAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDI0NywgMjA0LCAyNCwgMjE0LCAKLSAgICAyNDUsIDI1LCAzLCAxLCAyMzUsIDE4NCwgMiwgMjQ3LCAyMDQsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDIzNSwgMTg0LCAKLSAgICAyLCAyMjYsIDUwLCAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDI0NywgMjA0LCAyNCwgMjI2LCA1MCwgMjUsIDYsIDEsIDIzNSwgCi0gICAgMTg0LCAyLCAyMTQsIDEwMSwgMjUsIDYsIDEsIDIzNSwgMTg0LCAyLCAyMzIsIDM3LCAyNSwgNiwgMSwgMjM1LCAxODQsIDIsIAotICAgIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjM1LCAxODQsIDIsIDIyNiwgMjM0LCAyNSwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCAKLSAgICAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDIwNywgMjQsIDIyNiwgNTAsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjE0LCAxMDEsIAotICAgIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjMyLCAzNywgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyNDcsIDIwNCwgMjQsIDIxNCwgCi0gICAgMjQ1LCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIDI0NywgMjA0LCAyNCwgMjI2LCAyMzQsIDI1LCAzLCAxLCAyMjMsIDE5MSwgCi0gICAgMiwgMjI1LCAzOSwgMjUsIDMsIDEsIDIyMywgMTkxLCAyLCAyNDgsIDk5LCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIDIyNiwgCi0gICAgNTAsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjQ3LCAyMDQsIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgMjE1LCAxMjksIDIsIAotICAgIDIxNCwgMTAxLCAyNSwgNiwgMSwgMjE1LCAxMjksIDIsIDIzMiwgMzcsIDI1LCA2LCAxLCAyMTUsIDEyOSwgMiwgMjE0LCAKLSAgICAyNDUsIDI1LCA2LCAxLCAyMTUsIDEyOSwgMiwgMjI2LCAyMzQsIDI1LCA2LCAxLCAyMjMsIDE5MSwgMiwgMjQ4LCA5OSwgMjUsIAotICAgIDI0NywgMjA0LCAyNCwgMjE0LCAyNDUsIDI1LCAyNDcsIDIwNCwgMjQsIDIyNiwgMjM0LCAyNSwgMjE0LCAyNDUsIDI1LCAzLCAKLSAgICAxLCAyMjcsIDY4LCAyLCAyMTQsIDI0NiwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjEyLCAyMTAsIAotICAgIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMjYsIDIzNSwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjI2LCAKLSAgICA1MCwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIyNiwgNTEsIDI0LCAyMTIsIDIxMCwgMjUsIDYsIDEsIDIyNywgNjYsIDIsIAotICAgIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjI3LCA2NiwgMiwgMjI2LCAyMzQsIDI1LCA2LCAxLCAyMjcsIDY4LCAyLCAyMTQsIDI0NSwgCi0gICAgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIyNiwgMjM0LCAyNSwgNiwgMSwgMjI3LCA2OCwgMiwgMjI1LCA1MSwgMjUsIDIyNiwgCi0gICAgMjM0LCAyNSwgMjQ4LCA5OSwgMjQ1LCAxMDksIDIyNCwgMTcyLCAyNDUsIDExOCwgMjI0LCAxNzIsIDI0NSwgMTA5LCAyMTksIAotICAgIDIwNiwgMjQ1LCAxMTgsIDIxOSwgMjA2LCAyMTcsIDk1LCAyMTksIDIwNiwgMjQzLCAyMzUsIDIxOSwgMjA2LCAyMjAsIDUxLCAKLSAgICAyMTksIDIwNiwgMjQ0LCA4MSwgMjE5LCAyMDYsIDIyNSwgMjcsIDIxOSwgMjA2LCAyMTcsIDEyMywgMjE5LCAyMDYsIDI0MiwgCi0gICAgMTcsIDIxOSwgMjA2LCAyMTIsIDgwLCAyMTMsIDIzMCwgMjE5LCAyMDYsIDIxMiwgODAsIDIxMywgMjMwLCAyMjgsIDE3OCwgCi0gICAgMjEyLCA4MCwgMjEzLCAyMzAsIDIzNSwgNjYsIDIzMywgNjIsIDc3LCAyMjMsIDE0MCwgNzcsIDI0MCwgMTYwLCAyMjgsIAotICAgIDE3OSwgMjQwLCAxNjAsIDI0NCwgODEsIDI0OCwgMTAxLCAyNDUsIDEwOSwgMjQ4LCAxMDEsIDI0NSwgMTE4LCAyNDgsIDEwMSwgCi0gICAgMTk5LCAxMzQsIDUxLCA3MSwgMjMyLCAyNDIsIDUxLCAxMTUsIDIzMiwgMjQyLCA0MiwgMjIwLCA4MSwgMjI0LCAxNDMsIDc3LCAKLSAgICA0NiwgMjIwLCA4MSwgMjI0LCAxNDMsIDc3LCAyMjAsIDgxLCAyMzIsIDE2NCwgMjI0LCAxNDMsIDc3LCAyMjAsIDgxLCAyNDEsIAotICAgIDE0OSwgMjI0LCAxNDMsIDc3LCA0MiwgNTEsIDIyNCwgMTQzLCA3NywgNDYsIDUxLCAyMjQsIDE0MywgNzcsIDUxLCAyMzIsIAotICAgIDE2NCwgMjI0LCAxNDMsIDc3LCA1MSwgMjQxLCAxNDksIDIyNCwgMTQzLCA3NywgMjQ4LCAxNDksIDUxLCAyNDgsIDE0OSwgCi0gICAgMjUxLCA0MiwgMjE2LCAxODAsIDI1MSwgNDIsIDEyMiwgNjIsIDIzMywgODAsIDExNywgNjIsIDIzMywgODAsIDE5OSwgMjQ1LCAKLSAgICAxMjAsIDI0MCwgMTU4LCAyMjUsIDE0NCwgMjMyLCAyNDMsIDIyMSwgNTcsIDIyNiwgMTQzLCAyMjEsIDU3LCAyMzMsIDYyLCAKLSAgICAyNDUsIDExNiwgMjIzLCAxNDAsIDI0NSwgMTE2LCAyMjUsIDEyNiwgMjQ3LCAxNDgsIDI0MywgMjQ0LCAyMzMsIDYyLCAyMjYsIAotICAgIDI0MSwgMjIzLCAxNDAsIDIyNiwgMjQxLCAyMzAsIDE0LCAyMjgsIDE4NCwgMjE5LCAyMDYsIDIyNiwgNTgsIDIzMSwgNiwgCi0gICAgNTIsIDIyNiwgNTgsIDIxNywgMjAxLCAyMTcsIDEwMSwgNTIsIDIyNSwgNzEsIDUxLCAyMjUsIDcxLCAyMTYsIDE2OSwgMjI1LCAKLSAgICA3MSwgMjIzLCAyMDIsIDIyNSwgNzEsIDIyMywgMjAyLCA1MSwgMjI1LCA3MSwgMjIzLCAyMDIsIDIxNiwgMTY5LCAyMjUsIAotICAgIDcxLCAyNTAsIDE3MCwgMjIwLCA4MSwgMjMzLCA2NiwgMjU0LCAxOSwgMjI0LCAxNDMsIDc3LCAyMjAsIDgxLCAyMjMsIDE0NCwgCi0gICAgMjU0LCAxOSwgMjI0LCAxNDMsIDc3LCAyMjQsIDAsIDc3LCA1MSwgMjQ0LCAyNTQsIDc3LCAyMzUsIDE5OCwgMjI2LCAyNDMsIAotICAgIDIxNSwgMTUwLCAxMzcsIDIxNywgNjUsIDI1MCwgMTcxLCAyMzUsIDIxMywgMjI1LCAxNDQsIDI1MywgMTMwLCAyNDAsIDE2MSwgCi0gICAgMjUxLCA0MiwgMjQzLCAyMjgsIDIyMCwgMjMsIDQyLCA0MSwgMjUxLCA4NSwgMiwgMjI0LCAxNTIsIDQ2LCA0MSwgMjUxLCAKLSAgICA4NSwgMiwgMjI0LCAxNTIsIDUxLCAyMjQsIDE1OCwgNzcsIDIyNCwgMTU4LCAyNDQsIDI1NCwgNzcsIDI0NCwgMjU0LCAyMjQsIAotICAgIDE1OCwgNzcsIDIxNywgMjMsIDUsIDI0NSwgMzAsIDIyMywgMjAyLCAyMjUsIDIwMCwgNTIsIDgzLCAxMzIsIDI1MSwgNDIsIAotICAgIDgzLCA5NSwgMjUxLCA0MiwgMTE1LCAyNTMsIDEzMiwgMjIzLCAyMDIsIDIyMSwgNzAsIDI0OSwgMTk0LCAyMTUsIDEzNCwgCi0gICAgMTE3LCAyNTMsIDEzMSwgMjU0LCA2NywgMjE0LCAxNjUsIDI0OSwgMTU2LCAyMzAsIDI1MSwgNTIsIDIxOCwgMTc5LCAyNDgsIAotICAgIDEwMSwgMjM1LCAxOTEsIDIxNSwgMTUwLCAyNDQsIDIxLCAyMjUsIDI3LCA3NywgMTMzLCA2MiwgMjI1LCAyNiwgMjI0LCAKLSAgICAxNjksIDIyNSwgNzEsIDI0MywgMjM3LCA2MiwgMjI1LCAyNiwgMjQ0LCA1MCwgNjIsIDIyNSwgMjYsIDExNywgNjIsIDIyNSwgCi0gICAgMjYsIDI0MywgMjM3LCA2MiwgNzcsIDI0NiwgNzIsIDI0OSwgNzAsIDIxNiwgMTc5LCA3MSwgMjQzLCAyMzcsIDI0NywgNzIsIAotICAgIDIzMSwgMTQ3LCAxNCwgMjE5LCAyMDYsIDIxMywgMTk2LCAyMzUsIDY2LCAyNDMsIDE5OCwgMjUzLCAyMjIsIDIzNSwgMTg5LCAKLSAgICAyMTcsIDM4LCAyMzUsIDE4OSwgMjIxLCA1NywgMjM1LCAxODksIDIyNSwgMTU2LCAyMzUsIDIyNSwgMjE4LCAxMjcsIDIxOCwgCi0gICAgMTk2LCAyNTQsIDE2NiwgMjE4LCAxMjcsIDIxOCwgMTk2LCAyMzUsIDIyNSwgMTIsIDI0MywgMjQ1LCAyMjEsIDMsIDI1NCwgCi0gICAgMTY2LCAxMiwgMjQzLCAyNDUsIDIyMSwgMywgMjMwLCAxMCwgMjEsIDIyMSwgNCwgMjI4LCAxODAsIDIxLCAyMjEsIDQsIAotICAgIDIxOCwgMjIzLCAyMTIsIDc5LCAyMTgsIDIyMywgNywgMywgMSwgNzIsIDIxOCwgMjIzLCAxNjMsIDIxOCwgMjIzLCAxODAsIAotICAgIDIxOCwgMjIzLCAxODksIDIxOCwgMjIzLCAxOTgsIDIxOCwgMjIzLCAxOTUsIDIxOCwgMjIzLCAyMDAsIDIxOCwgMjIzLCA5NCwgCi0gICAgNTIsIDIxOCwgMjIzLCAyMzAsIDI1MCwgMjE4LCAyMjMsIDI0NSwgNjEsIDUyLCAyMTgsIDIyMywgNDIsIDIyNiwgMTMxLCAKLSAgICAyMTgsIDIyMywgNDYsIDIyNiwgMTMxLCAyMTgsIDIyMywgNywgMywgMSwgMjA0LCAyMTksIDEwLCAyMTIsIDc5LCAyMTksIAotICAgIDEwLCAxMTYsIDIxOSwgMTAsIDEwOSwgMjE5LCAxMCwgMTY2LCAyMTksIDEwLCAxNjMsIDIxOSwgMTAsIDE4MCwgMjE5LCAxMCwgCi0gICAgMTg5LCAyMTksIDEwLCAxOTgsIDIxOSwgMTAsIDE5NSwgMjE5LCAxMCwgMjAwLCAyMTksIDEwLCA5NCwgNTIsIDIxOSwgMTAsIAotICAgIDIzMCwgMjUwLCAyMTksIDEwLCAyNDUsIDYxLCA1MiwgMjE5LCAxMCwgNDIsIDIyNiwgMTMxLCAyMTksIDEwLCA0NiwgMjI2LCAKLSAgICAxMzEsIDcsIDIxOSwgMTAsIDMsIDEsIDYxLCA3LCAyMTksIDEwLCAzLCAxLCA3NCwgNywgMjE5LCAxMCwgMywgMSwgNzUsIDcsIAotICAgIDIxOSwgMTAsIDMsIDEsIDIxMywgMTY2LCA3LCAyMTksIDEwLCAzLCAxLCAyMjIsIDExMywgNywgMjE5LCAxMCwgMywgMSwgCi0gICAgMjQyLCA0MSwgNywgMjE5LCAxMCwgMywgMSwgMjM1LCAyNywgNywgMjE5LCAxMCwgMywgMSwgMTUwLCA3LCAyMTksIDEwLCAzLCAKLSAgICAxLCAxODMsIDcsIDIxOSwgMTAsIDMsIDEsIDIwNCwgNywgMjE5LCAxMCwgMywgMSwgMjI2LCAyMjksIDcsIDIxOSwgMTAsIDMsIAotICAgIDEsIDE5NywgNywgMjE5LCAxMCwgMywgMSwgMjE4LCA5OSwgMjQ1LCAxMywgNTIsIDI0OSwgMTY1LCA1MiwgMjQ5LCA1NywgCi0gICAgNTIsIDI0MywgMjIxLCAyNDMsIDIyNCwgNTIsIDIzMiwgMjI3LCA1MiwgMjMxLCA3LCA1MiwgMjMwLCAyOSwgNTIsIDIyNiwgCi0gICAgMzgsIDUyLCAyMjMsIDI5LCA1MiwgMjEzLCAyMDQsIDUyLCAxNTYsIDIyMCwgMjI5LCA1MiwgMjQ3LCA4MSwgNTIsIDI0NSwgCi0gICAgMTQsIDUyLCAyMzQsIDg1LCA1MiwgMjE2LCA3NiwgNTIsIDI0NiwgNTUsIDUyLCAyNDMsIDE2LCAyMjYsIDY4LCA1MiwgMjI2LCAKLSAgICAzNiwgNTIsIDI0MiwgODgsIDUyLCAyNTMsIDk4LCA1MiwgMjQwLCAyMTUsIDUyLCAyNTAsIDExOSwgNTIsIDIzMiwgMjIwLCAKLSAgICAyMTYsIDIxNiwgNTIsIDIxOSwgMTg4LCA1MiwgMjE3LCAxOTgsIDUyLCAyMzUsIDIzOCwgMjIzLCAyOSwgNTIsIDM3LCA0MiwgCi0gICAgMjQxLCAyMzgsIDQ5LCAzNywgNDYsIDI0MSwgMjM4LCA0OSwgMzcsIDE4NCwgNzEsIDIzMiwgMjQzLCAyMjYsIDI0NCwgMzcsIAotICAgIDIyMCwgMTc1LCA3MSwgMjMyLCAyNDMsIDIyNiwgMjQ0LCAzNywgMjUzLCAyNTUsIDc2LCA0OSwgMzcsIDI0OSwgMTk1LCA3NiwgCi0gICAgNDksIDM3LCA0MiwgNzYsIDQ5LCAzNywgNDYsIDc2LCA0OSwgMzcsIDIyMywgMTMxLCAyMjYsIDI0NCwgMzcsIDI0OSwgMTk1LCAKLSAgICAyMjMsIDEzMSwgMjI2LCAyNDQsIDM3LCAyNTMsIDI1NSwgMjIzLCAxMzEsIDIyNiwgMjQ0LCAzNywgMTMzLCAxNzYsIDQ5LCAKLSAgICAzNywgMjQzLCAyMzcsIDE3NiwgNDksIDM3LCAyNDUsIDEwNCwgMjQ5LCAyMjgsIDM3LCAyNDUsIDEwNCwgMjE5LCAxNjYsIAotICAgIDM3LCAyNDUsIDEwNCwgMjQ3LCAyMDAsIDM3LCAyNDUsIDEwNCwgMjQ5LCAyMjksIDI1MiwgOTcsIDM3LCA0MiwgNDYsIDc2LCAKLSAgICA0OSwgMzcsIDI0NSwgMTA0LCAyMjIsIDEwNywgMzcsIDI0NSwgMTA0LCAyMzQsIDE0MSwgMzcsIDI0NSwgMTA0LCAyMTUsIAotICAgIDEyNiwgMjI1LCAxNDEsIDIxNiwgMTgzLCAzNywgMjIzLCAyMDMsIDIxOSwgMjMyLCAyMjYsIDI0NCwgMzcsIDUxLCA3MSwgCi0gICAgMjE5LCA0NSwgMjI2LCAyNDQsIDM3LCAyNTQsIDksIDg3LCAzNywgMjE2LCAxNjksIDIxNSwgMTUyLCAzNywgMjEzLCAyMzIsIAotICAgIDI1MSwgNjgsIDQ5LCAzNywgMTMyLCA3NiwgMjI2LCAyNDQsIDM3LCAxODQsIDUxLCAyMTksIDIzMiwgMjI2LCAyNDQsIDM3LCAKLSAgICA5NSwgMjQxLCAyMzgsIDIsIDIwNiwgMjQ2LCA1NywgMzcsIDEzMiwgMjQxLCAyMzgsIDIsIDIwNiwgMjQ2LCA1NywgMzcsIAotICAgIDQyLCA3NiwgNTUsIDM3LCA0NiwgNzYsIDU1LCAzNywgMjUzLCAxMzMsIDQ5LCAyNTQsIDE3MSwgMjI3LCA5NywgMjU0LCAKLSAgICAxNTYsIDIxMSwgMjExLCAyMTcsIDE0OSwgMjE5LCAxOSwgMTg3LCA2LCAyNTAsIDI1MiwgMjQ4LCAyMiwgMjUwLCAxMTIsIAotICAgIDI1MCwgMTA5LCAyMzIsIDI0MywgODcsIDI1MCwgMTcyLCAyMjcsIDk3LCAyNTAsIDIxMiwgMjE1LCAxNTksIDI0NSwgMTUsIAotICAgIDI0OSwgMTMwLCAyMjIsIDEwNCwgMjQ4LCAyMiwgMjQ0LCAxNDcsIDExMywgMywgMjQzLCAxNzcsIDExMywgNiwgMjQyLCA0MSwgCi0gICAgMjUxLCAxNDIsIDYsIDI0MiwgNDEsIDE4NywgNiwgMjQyLCA0MSwgMjI1LCAxNjksIDI0OSwgMTMwLCAyMjUsIDE2OSwgMjQ5LCAKLSAgICAxMzEsIDExMCwgMTE3LCAyMjUsIDI0MCwgMTEzLCA2LCA3MiwgMjUxLCAxNDIsIDYsIDcyLCAxMTMsIDYsIDE1MCwgMTEzLCAKLSAgICAzLCAxNTAsIDIzMywgMTcxLCA1NCwgMjUyLCA2MCwgODcsIDE4NywgNiwgMjA0LCAyMjgsIDUyLCA1MiwgMjE5LCAyMTgsIAotICAgIDIyNCwgMTIsIDI0OSwgMTAxLCAxMTMsIDYsIDIyNiwgMjI5LCAxODcsIDYsIDIyNiwgMjI5LCAxODcsIDYsIDIyNCwgMjQwLCAKLSAgICAxMTMsIDYsIDE0OSwgMjUxLCAxNDIsIDYsIDE0OSwgMTg3LCA2LCAxNDksIDIyNSwgNzYsIDIxOCwgMjEsIDIyMywgMjE0LCAKLSAgICAyMjEsIDUzLCA3NywgMjE3LCAyMTAsIDUyLCAyMTYsIDIxMCwgMTUyLCA1MiwgMjE0LCAyMTcsIDE4NywgNiwgMjEyLCAxNTIsIAotICAgIDIyNywgMSwgNTIsIDIyNywgODcsIDUyLCAyMzUsIDE5MSwgMjI3LCA4NywgNTIsIDI1MSwgMTQyLCA2LCAyMTIsIDE1MiwgCi0gICAgMjE2LCA1OCwgMjUsIDMsIDEsIDIzNSwgMTgzLCAyMzQsIDE3OSwgNTIsIDI1NCwgMTYsIDUyLCAxMTMsIDYsIDI1MywgNzQsIAotICAgIDI1MSwgMTQyLCA2LCAyNTAsIDI1MiwgMjQ1LCAzMywgODcsIDExMywgMywgNzQsIDExMywgNiwgNzQsIDExMywgNiwgMjQ0LCAKLSAgICAyMzAsIDIxNiwgNTgsIDYsIDI0NCwgMjMwLCAxMTMsIDYsIDE4MywgMTEzLCAzLCA3NSwgMTA2LCA4NywgMjUxLCAyMDYsIAotICAgIDg3LCAyNDIsIDE3OCwgODcsIDI0OCwgMTM1LCA4NywgMjM1LCAyMjksIDIxOSwgMjE2LCAyMjMsIDg5LCA2LCAyMjQsIDI0MCwgCi0gICAgMjQ0LCAxNTAsIDUyLCAxODcsIDMsIDIyNSwgMjQwLCAxODcsIDMsIDI0MywgODMsIDE4NywgNiwgMjQzLCA4MywgMTg3LCA2LCAKLSAgICAyMjUsIDI0MCwgMTg3LCAyMzAsIDk3LCAyMTgsIDI0MSwgMjE2LCA1OCwgMzUsIDYsIDI0MywgMTc3LCAyMTYsIDU4LCAzNSwgCi0gICAgNiwgMTUwLCAyMjMsIDIwMiwgMzUsIDYsIDE1MCwgMjE2LCA1OCwgMzUsIDYsIDIxMywgMTA1LCAxODcsIDMyLCA2LCAyNDksIAotICAgIDMsIDE4NywgMzIsIDMsIDI0OSwgMywgMTg3LCAzMiwgMywgNzQsIDE4NywgMzIsIDMsIDcyLCAxODcsIDMyLCAzLCAyMzUsIAotICAgIDE0MiwgMjI1LCA1NCwgMjMyLCAyNDIsIDIxNiwgNTgsIDI1NCwgMzUsIDIyNiwgNTgsIDUyLCAyNTQsIDg4LCAyMTYsIDU4LCAKLSAgICAzLCAyNDQsIDIzMCwgMTYsIDMxLCAyMjIsIDE2NywgMjE5LCAyMTYsIDIxNCwgOTcsIDI0MywgMjI4LCAxMjIsIDIyMSwgMzksIAotICAgIDIxNCwgOTcsIDI0MywgMjI4LCAxMjIsIDIyOSwgMjUsIDIxNCwgOTcsIDI0MywgMjI4LCAxMjIsIDIxNywgMTk0LCAyMTQsIAotICAgIDk3LCAyNDMsIDIyOCwgMTIyLCAyMTcsIDEyMSwgMjE0LCA5NywgMjQzLCAyMjgsIDExNywgMjE3LCAxMTksIDIxNCwgOTcsIAotICAgIDI0MywgMjI4LCAxMjIsIDI0NCwgODYsIDIxNCwgOTcsIDI0MywgMjI4LCAxMTcsIDI0NCwgODUsIDIxNCwgOTcsIDI0MywgCi0gICAgMjI4LCAxMzMsIDI0NCwgODUsIDIxNCwgOTcsIDI0MywgMjI4LCAyNDMsIDIzNywgMjQ0LCA4NSwgMjE0LCA5NywgMjQzLCAKLSAgICAyMjgsIDEyMiwgMjIwLCA0MywgMjE0LCA5NywgMjQzLCAyMjgsIDI0NCwgNTAsIDIyMCwgNDEsIDIxNCwgOTcsIDI0MywgCi0gICAgMjI4LCAxMjIsIDI0NSwgMTQ1LCAyMTQsIDk3LCAyNDMsIDIyOCwgMTMzLCAyNDUsIDE0MywgMjE0LCA5NywgMjQzLCAyMjgsIAotICAgIDI0NCwgNTAsIDI0NSwgMTQzLCAyMTQsIDk3LCAyNDMsIDIyOCwgMjIxLCA0MywgMjQ1LCAxNDMsIDI0MywgMjI4LCAyMjgsIAotICAgIDUzLCAxMTYsIDIyMywgMTAwLCAyMjgsIDU0LCAxMTYsIDIyMywgMTAwLCAyMjgsIDU0LCAxMDksIDIyMywgMTAwLCAyMjgsIAotICAgIDU0LCAxNjYsIDIyMywgMTAwLCAyMjgsIDU0LCAxNjMsIDIyMywgMTAwLCAyMjgsIDU0LCAxODAsIDIyMywgMTAwLCAyMjgsIAotICAgIDU0LCAxODksIDIyMywgMTAwLCAyMjgsIDU0LCAxOTgsIDIyMywgMTAwLCAyMjgsIDU0LCAxOTUsIDIyMywgMTAwLCAyMjgsIAotICAgIDU0LCAyMDAsIDIyMywgMTAwLCAyMjgsIDU0LCAyMTcsIDIwMCwgMjIzLCAxMDAsIDIyOCwgNTQsIDI0NSwgMTI0LCAyMjMsIAotICAgIDEwMCwgMjI4LCA1NCwgMjE2LCA0MSwgMjIzLCAxMDAsIDIyOCwgNTQsIDI0NCwgODMsIDIyMywgMTAwLCAyMjgsIDU0LCAKLSAgICAxMjIsIDI0MCwgMjAwLCAyMjMsIDEwMCwgMjI4LCA1NCwgMjQ0LCA1MCwgMjQwLCAyMDAsIDIyMywgMTAwLCAyMjgsIDU0LCAKLSAgICAxMjIsIDIxNywgMTAwLCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMTE2LCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMTA5LCAzLCAKLSAgICAyMjMsIDEwMCwgMjI4LCA1NCwgMTY2LCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMTYzLCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgCi0gICAgMTgwLCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMTg5LCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMTk4LCAzLCAyMjMsIDEwMCwgCi0gICAgMjI4LCA1NCwgMTk1LCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMjAwLCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMjE3LCAyMDAsIAotICAgIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAyNDUsIDEyNCwgMywgMjIzLCAxMDAsIDIyOCwgNTQsIDIxNiwgNDEsIDMsIDIyMywgCi0gICAgMTAwLCAyMjgsIDU0LCAyNDQsIDgzLCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMTIyLCAyNDAsIDIwMCwgMywgMjIzLCAxMDAsIAotICAgIDIyOCwgNTQsIDI0NCwgNTAsIDI0MCwgMjAwLCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMTIyLCAyMTcsIDEwMCwgMjIzLCAKLSAgICAxMDAsIDIyOCwgNTQsIDEyMiwgMjE3LCAxMDEsIDI1MCwgMjUzLCAyNDksIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAyNDQsIAotICAgIDUwLCAyMTcsIDEwMCwgMjIzLCAxMDAsIDIyOCwgNTQsIDIxNywgMjAxLCAyMTcsIDEwMCwgMjIzLCAxMDAsIDIyOCwgNTQsIAotICAgIDIyMywgMjAyLCAxMjIsIDI0MCwgMjAwLCA3LCAzLCAxLCAyMjMsIDIwMiwgMjUwLCAyNTIsIDIyMywgMTAwLCAyMjgsIDU0LCAKLSAgICAyMjAsIDUzLCAyMzMsIDEwMSwgMTcsIDIyMywgMTAwLCAyMjgsIDU0LCAyNDQsIDg0LCAyNDUsIDE4MiwgMTcsIDIyMywgCi0gICAgMTAwLCAyMjgsIDU0LCAyNDQsIDg0LCAyMTcsIDEwMCwgMjIzLCAxMDAsIDIyOCwgNTQsIDEyMiwgMjQwLCAyMDEsIDIxNywgCi0gICAgMTAwLCAyMTQsIDk3LCAyNDMsIDIyOCwgMjEyLCA4MCwgMjE3LCAxMTksIDEzMiwgNjgsIDIxNSwgMTI0LCA2OCwgOTUsIDY4LCAKLSAgICAyNDYsIDU4LCA2OCwgNDIsIDQ2LCA2OCwgMTE0LCAxMTksIDY4LCAyMjgsIDE2NywgMjEzLCAyNTAsIDY4LCAyMjgsIDE2NywgCi0gICAgMjQ1LCAxNzYsIDY4LCAyMTksIDIxNSwgMjQ1LCAxNzYsIDY4LCAyMTksIDIxNSwgMjEzLCAyNTAsIDY4LCAxMzIsIDc2LCAyLCAKLSAgICA5MCwgOTUsIDc2LCAyLCA5MCwgMTMyLCAyMTQsIDIwLCA2OCwgOTUsIDIxNCwgMjAsIDY4LCAxMzIsIDExNywgMjQxLCAyMTgsIAotICAgIDY4LCAyMTUsIDEyNCwgMTE3LCAyNDEsIDIxOCwgNjgsIDk1LCAxMTcsIDI0MSwgMjE4LCA2OCwgMjQ2LCA1OCwgMTE3LCAKLSAgICAyNDEsIDIxOCwgNjgsIDEzMiwgNzYsIDIsIDIxOCwgMjcsIDk1LCA3NiwgMiwgMjE4LCAyNywgMTMyLCA3NiwgMjQzLCAyMTMsIAotICAgIDEzNCwgMjE1LCAxMjQsIDc2LCAyNDMsIDIxMywgMTM0LCA5NSwgNzYsIDI0MywgMjEzLCAxMzQsIDI0NiwgNTgsIDc2LCAKLSAgICAyNDMsIDIxMywgMTM0LCAxMTQsIDExOSwgNzYsIDIsIDI1MiwgNDcsIDEzMiwgNzYsIDIsIDEwMSwgOTUsIDc2LCAyLCAxMDEsIAotICAgIDEzMiwgNzYsIDIsIDIzMiwgMTc3LCA5NSwgNzYsIDIsIDIzMiwgMTc3LCA0MiwgNDYsIDIxNCwgMjAsIDY4LCA0MiwgNDYsIAotICAgIDc2LCAyLCA5MCwgMjQ2LCA1OCwgMjEyLCAyOCwgNjgsIDIxNSwgMTI0LCA3NiwgMiwgMjE3LCAzMCwgMjMzLCA2MSwgMjE1LCAKLSAgICAxMjQsIDc2LCAyLCAyMTcsIDMwLCAyMjMsIDEzOCwgMjQ2LCA1OCwgNzYsIDIsIDIxNywgMzAsIDIzMywgNjEsIDI0NiwgNTgsIAotICAgIDc2LCAyLCAyMTcsIDMwLCAyMjMsIDEzOCwgOTUsIDc2LCAyLCAyNDksIDEwMCwgMjQ2LCA1NywgMjQ2LCA1OCwgNzYsIDIsIAotICAgIDI0OSwgMTAwLCAyMzMsIDYxLCAyNTMsIDI1NSwgMjE2LCAyMjcsIDIyMSwgNzMsIDY4LCAyNDksIDE5NSwgMjE2LCAyMjcsIAotICAgIDIyMSwgNzMsIDY4LCAyMjgsIDE2NywgMjEzLCAyNTAsIDc2LCAyMTEsIDIxMSwgMTg0LCAxMzQsIDEzMiwgNzYsIDIxMSwgCi0gICAgMjExLCAyNTIsIDYwLCAxMTAsIDk1LCA3NiwgMjExLCAyMTEsIDEzNCwgMjUzLCAyNTUsIDIyNywgNDAsIDI0OSwgMjI5LCAKLSAgICA2OCwgMjQ5LCAxOTUsIDIyNywgNDAsIDI0OSwgMjI5LCA2OCwgMTMyLCAyNDEsIDIzOCwgMiwgMjA2LCAyMTUsIDEyMywgCi0gICAgMTMyLCAyNDEsIDIzOCwgMiwgMjA2LCAyNDYsIDU3LCAyMTUsIDEyNCwgMjQxLCAyMzgsIDIsIDIwNiwgMjIzLCAxMzgsIAotICAgIDIxNSwgMTI0LCAyNDEsIDIzOCwgMiwgMjA2LCAyMzMsIDYxLCA5NSwgMjQxLCAyMzgsIDIsIDIwNiwgMjE1LCAxMjMsIDk1LCAKLSAgICAyNDEsIDIzOCwgMiwgMjA2LCAyNDYsIDU3LCAyNDYsIDU4LCAyNDEsIDIzOCwgMiwgMjA2LCAyMjMsIDEzOCwgMjQ2LCA1OCwgCi0gICAgMjQxLCAyMzgsIDIsIDIwNiwgMjMzLCA2MSwgOTUsIDc2LCAxMTAsIDEzMiwgNjgsIDIxNSwgMTI0LCA3NiwgMTMyLCA2NSwgCi0gICAgMjQ2LCA1OCwgNjgsIDEzMiwgNzYsIDExMCwgOTUsIDY4LCAxMzIsIDIyNiwgMTk3LCAyNTMsIDE2MiwgMjE1LCAxMjQsIAotICAgIDIyNiwgMTk3LCAyNTMsIDE2MiwgOTUsIDIyNiwgMTk3LCAyNTMsIDE2MiwgMjQ2LCA1OCwgMjI2LCAxOTcsIDI1MywgMTYyLCAKLSAgICAxMzIsIDI0MSwgMjM4LCAxMTAsIDk1LCAyNDEsIDIzNywgOTUsIDI0MSwgMjM4LCAxMTAsIDEzMiwgMjQxLCAyMzcsIDEzMiwgCi0gICAgNTEsIDc2LCAyLCA5MCwgNDIsIDQ2LCA1MSwgNzYsIDIsIDkwLCA5NSwgNTEsIDc2LCAyLCA5MCwgMTMyLCA1MSwgNjgsIAotICAgIDIxNSwgMTI0LCA1MSwgNjgsIDk1LCA1MSwgNjgsIDI0NiwgNTgsIDUxLCA2OCwgNDIsIDQ2LCA1MSwgNjgsIDExNCwgMTE5LCAKLSAgICA1MSwgNjgsIDIyOCwgMTY3LCAyMTMsIDI1MCwgNTEsIDY4LCAyMjgsIDE2NywgMjQ1LCAxNzYsIDUxLCA2OCwgMjE5LCAyMTUsIAotICAgIDI0NSwgMTc2LCA1MSwgNjgsIDIxOSwgMjE1LCAyMTMsIDI1MCwgNTEsIDY4LCAxMzIsIDIxNiwgMTY5LCA2OCwgOTUsIDIxNiwgCi0gICAgMTY5LCA2OCwgMTMyLCAyMTksIDE2MiwgNjgsIDk1LCAyMTksIDE2MiwgNjgsIDIxNSwgMTI0LCA3NiwgMiwgNTEsIDkwLCAKLSAgICAyNDYsIDU4LCA3NiwgMiwgNTEsIDkwLCAxMzIsIDI0OCwgMTAwLCA2OCwgMjE1LCAxMjQsIDI0OCwgMTAwLCA2OCwgOTUsIAotICAgIDI0OCwgMTAwLCA2OCwgMjQ2LCA1OCwgMjQ4LCAxMDAsIDY4LCAxMzIsIDc2LCAyMTEsIDIxMSwgMTM0LCA5NSwgNzYsIDIxMSwgCi0gICAgMjExLCAxMzQsIDEzMiwgNjcsIDY4LCAyMTUsIDEyNCwgNjcsIDY4LCA5NSwgNjcsIDY4LCAyNDYsIDU4LCA2NywgNjgsIAotICAgIDIxNSwgMTI0LCA2NywgNzYsIDI0MywgMjEzLCAxMzQsIDIxNSwgMTI0LCA2NywgNzYsIDIyNywgNjMsIDIyNiwgODksIDIxNSwgCi0gICAgMTI0LCA2NywgNzYsIDIyNywgNjMsIDIyNiwgOTAsIDIsIDE5OSwgMTM0LCAyMTUsIDEyNCwgNjcsIDc2LCAyMjcsIDYzLCAKLSAgICAyMjYsIDkwLCAyLCA3MSwgMTM0LCAyMTUsIDEyNCwgNjcsIDUxLCA2OCwgMjE1LCAxMjQsIDY3LCA1MSwgNzYsIDIyNywgNjMsIAotICAgIDIyNiwgODksIDk1LCA2NywgNzYsIDI0MywgMjEzLCAyMTQsIDQwLCAyMjgsIDE2NywgMjEzLCAyNTAsIDc2LCAyMTEsIDIxMSwgCi0gICAgMjQ5LCA5OSwgMjE5LCAyMTUsIDI0NSwgMTc2LCA3NiwgMjExLCAyMTEsIDI0OSwgOTksIDExNCwgMTE5LCA2NywgNjgsIDQ2LCAKLSAgICA3NiwgMiwgMywgMjQ5LCAyMjgsIDI0NiwgNTgsIDc2LCAxMzIsIDY1LCAyMTUsIDEyNCwgNjgsIDEzMywgOTUsIDI1MywgCi0gICAgMTYyLCAxMzIsIDc2LCAyLCA3MSwgOTAsIDk1LCA3NiwgMiwgNzEsIDkwLCA0MiwgNDYsIDc2LCAyLCA3MSwgOTAsIDEzMiwgCi0gICAgNzYsIDIsIDUxLCA3MSwgOTAsIDk1LCA3NiwgMiwgNTEsIDcxLCA5MCwgNDIsIDQ2LCA3NiwgMiwgNTEsIDcxLCA5MCwgMTMyLCAKLSAgICAyMjcsIDM4LCA2OCwgOTUsIDIyNywgMzgsIDY4LCA0MiwgNDYsIDIyNywgMzgsIDY4LCAzMSwgMjU0LCA2MywgMjQ5LCAxNTMsIAotICAgIDIyNiwgMTI1LCAyNDcsIDE4NSwgMjE3LCAxNDAsIDI0NCwgMjUwLCAyMTcsIDE0MCwgMjQ3LCA5MiwgMjI4LCAxNjMsIDI0NCwgCi0gICAgMjUxLCAyNDUsIDExMCwgMjIxLCA0OCwgMjM1LCAyNDEsIDIzMCwgMzksIDI0NSwgMTI3LCAyMjcsIDk3LCAyMjgsIDE2MywgCi0gICAgMjU0LCAzMywgMjQ1LCAxMjcsIDIyNywgOTcsIDMsIDI0NSwgMTI3LCAyMjcsIDk3LCAyNDksIDEyNSwgMjUzLCAxNTMsIAotICAgIDIzMSwgMTI2LCAyNDcsIDkyLCAyMjgsIDE2MywgMjQ5LCAxMjcsIDI1MywgMTUzLCAyMzEsIDEyNiwgMywgMjQ5LCAxMjUsIAotICAgIDI1MywgMTUzLCAyMzEsIDEyNiwgMjQ1LCAxMDEsIDY1LCAyMjUsIDU2LCAyMzAsIDk3LCAyMjUsIDYzLCAyMzAsIDk3LCAKLSAgICAyNDksIDEwNCwgMjMwLCA5NywgMjE4LCAyNDEsIDIzMCwgMjUxLCA1MiwgMjMwLCAyNDksIDUyLCA2MiwgMjI1LCAxNTYsIAotICAgIDI0NywgMTIxLCAyMjAsIDIzLCAyMjEsIDQ5LCAyMzAsIDI1MCwgMjUzLCAxMzMsIDIyNywgMzMsIDIyMywgMTMxLCAyMjcsIAotICAgIDMzLCAyNTEsIDQzLCAyMjcsIDMzLCA0MSwgMjIzLCA5NSwgMjQ5LCA1MCwgMjIzLCA5NSwgMjQzLCAyMzAsIDIyMywgOTUsIAotICAgIDIyNSwgNTIsIDEwOCwgMjM1LCAyMzEsIDQ2LCAyNTQsIDE4LCAyNTQsIDE4LCAyMzEsIDE1MywgMjU0LCAxOCwgMjE5LCAKLSAgICAxODcsIDI1NCwgMTgsIDI0NywgMTIzLCAyNDcsIDkyLCAyMjgsIDE2MywgMjQ3LCAxMjYsIDIyNiwgMTM2LCAxMDgsIDIyOCwgCi0gICAgMTYzLCAyMjYsIDEzNiwgMTA4LCAyMzIsIDE5OSwgMjU0LCAyNywgMjMyLCAxOTksIDIyNywgMjQsIDIzNSwgMTk1LCAyMTUsIAotICAgIDE0NiwgMjM1LCAyMDgsIDUxLCAyMzUsIDIwOCwgMjE2LCAxNjksIDIzNSwgMjA4LCAyNDksIDEyMSwgMjM1LCAyMDgsIDIxOCwgCi0gICAgMjEzLCAyMzUsIDIwOCwgMjE0LCAxMTAsIDIzNSwgMjA4LCAyNDksIDE5NSwgMjM1LCAyMDgsIDI0OSwgMTk1LCAyNDksIAotICAgIDEyMSwgMjM1LCAyMDgsIDI1MywgMjU1LCAyNDksIDEyMSwgMjM1LCAyMDgsIDIxNywgMTM5LCAyNTEsIDI0MywgMjI0LCAyOSwgCi0gICAgMjI1LCA1MywgNjIsIDIzMCwgMjUwLCAyNDUsIDAsIDI0MywgMjIsIDIyNSwgNTMsIDI0MSwgNDMsIDIxNywgNDMsIDIyNywgCi0gICAgMzMsIDIyMywgMjAyLCAyMTcsIDQyLCAyMzUsIDE5MSwgMjMzLCA4OSwgMTk3LCAyMjAsIDgzLCAyMTQsIDE5LCAyMTMsIAotICAgIDE4OCwgMjI1LCA2MywgMjI4LCAxNjMsIDIxNywgNDIsIDIzMCwgMjUxLCAyMTcsIDQyLCAyNTMsIDEyNiwgMTIzLCAxMDgsIAotICAgIDIyOCwgMTYzLCAyNTMsIDEyNiwgMTIzLCAxMDgsIDI1MywgMjE4LCAxMjMsIDEwOCwgMjUzLCAyMTgsIDI1MSwgMTcsIDIyOCwgCi0gICAgMTYzLCAyNTQsIDE2NSwgMTIzLCAxMDgsIDIyOSwgMTgxLCAyNTMsIDIxOCwgMjI4LCAxNzAsIDI1NCwgMTY1LCAxMjMsIAotICAgIDEwOCwgMjU0LCA1NywgMTIzLCAxMDgsIDIyOCwgMTYzLCAyNTQsIDU3LCAxMjMsIDEwOCwgMjU0LCA1NywgMTIzLCAxNjcsIAotICAgIDEyMywgMTA4LCAyMTYsIDE2OSwgMjE3LCA0MiwgMjU0LCA2NCwgMTIzLCAxMDgsIDI0NSwgNTcsIDEwOCwgMjQzLCAyMSwgCi0gICAgMjQ1LCA1NywgMTA4LCAyNDcsIDE4NiwgMjUxLCAyMDAsIDI1MywgMjIwLCAyMTcsIDE0OSwgMjMyLCAyNTAsIDI0MywgMjEsIAotICAgIDEyMywgMTA4LCAyNTMsIDIxOCwgMTIzLCAyMTEsIDIxMSwgMTY3LCAyMTcsIDE0OSwgMjM2LCAxMCwgMjI3LCA5NywgMjM2LCAKLSAgICAxMCwgNjUsIDE2NywgMjUzLCAyMTgsIDEyMywgMTA4LCAyNDksIDE2NSwgMjQ1LCA2MCwgMjQ1LCA2MSwgMjQ5LCAxNjQsIAotICAgIDIyMywgMTMxLCAyMzUsIDI1MiwgMTIzLCAxMDgsIDIyMywgMTMxLCAxMjMsIDEwOCwgMjQ5LCA5MywgMTA4LCAyNDUsIDMyLCAKLSAgICAyNDUsIDU5LCAxMDgsIDIxOSwgOTYsIDI0NSwgNjAsIDI0OCwgNiwgMTIzLCAxMDgsIDEyMywgMjExLCAyMTEsIDI1MSwgNywgCi0gICAgMjQ4LCAyMywgMjMxLCAxNTMsIDI1MSwgNiwgMjI0LCAxNTYsIDEyMywgMTA4LCAyMjgsIDE2MywgMTIzLCAxMDgsIDI0MCwgCi0gICAgOTcsIDEwOCwgMjI4LCAxNjMsIDI0MCwgOTcsIDEwOCwgMjE5LCA0OSwgMjQ1LCA1NywgMTA4LCAyMzMsIDM5LCAxNjcsIAotICAgIDEyMywgMTA4LCAyNDIsIDEwNywgMTY3LCAxMjMsIDEwOCwgMjMzLCAzOSwgMTEwLCAxMjMsIDEwOCwgMjQyLCAxMDcsIDExMCwgCi0gICAgMTIzLCAxMDgsIDIzMywgMzksIDI1MSwgMTcsIDIyOCwgMTYzLCAxMjMsIDEwOCwgMjQyLCAxMDcsIDI1MSwgMTcsIDIyOCwgCi0gICAgMTYzLCAxMjMsIDEwOCwgMjMwLCAxNjcsIDIzMywgMzgsIDIzMCwgMTY3LCAyNDIsIDEwNiwgMjUxLCAyMDAsIDIyOCwgMTYzLCAKLSAgICAyNDUsIDU3LCAxMDgsIDIyOCwgMTYzLCAyMzMsIDM4LCAyMjgsIDE2MywgMjQyLCAxMDYsIDIyOSwgMTgxLCAyMzMsIDM5LCAKLSAgICAyMjgsIDE3MCwgMTIzLCAxMDgsIDIyOSwgMTgxLCAyNDIsIDEwNywgMjI4LCAxNzAsIDEyMywgMTA4LCAyMzMsIDM5LCAxNjcsIAotICAgIDI0NSwgNTcsIDEwOCwgMjQyLCAxMDcsIDE2NywgMjQ1LCA1NywgMTA4LCAyMjksIDE4MSwgMjMzLCAzOSwgMjI4LCAxNzAsIAotICAgIDI0NSwgNTcsIDEwOCwgMjI5LCAxODEsIDI0MiwgMTA3LCAyMjgsIDE3MCwgMjQ1LCA1NywgMTA4LCAyMzMsIDM5LCAxNjcsIAotICAgIDI0MiwgMTA2LCAyNDIsIDEwNywgMTY3LCAyMzMsIDM4LCAyMjksIDE4MSwgMjMzLCAzOSwgMjI4LCAxNzAsIDI0MiwgMTA2LCAKLSAgICAyMjksIDE4MSwgMjQyLCAxMDcsIDIyOCwgMTcwLCAyMzMsIDM4LCAyMjUsIDgyLCAyMTksIDAsIDIyNSwgODMsIDE2NywgCi0gICAgMTIzLCAxMDgsIDIxOSwgMSwgMTY3LCAxMjMsIDEwOCwgMjI1LCA4MywgMTY3LCAyNDUsIDU3LCAxMDgsIDIxOSwgMSwgMTY3LCAKLSAgICAyNDUsIDU3LCAxMDgsIDI0NywgOTIsIDIyOCwgMTYzLCAyMjUsIDg1LCAyNDcsIDkyLCAyMjgsIDE2MywgMjE5LCAyLCAyMTksIAotICAgIDksIDIyNywgOTcsIDIxOCwgMjIyLCAyMjcsIDk3LCAyMjgsIDE2MywgMTE4LCAyMTksIDksIDIyNywgOTcsIDIyOCwgMTYzLCAKLSAgICAxMTgsIDIxOCwgMjIyLCAyMjcsIDk3LCAyMTksIDksIDY1LCAxNjcsIDEyMywgMTA4LCAyMTgsIDIyMiwgNjUsIDE2NywgCi0gICAgMTIzLCAxMDgsIDIyOSwgMTgxLCAxMTgsIDIxOSwgOSwgNjUsIDIyOCwgMTcwLCAxMjMsIDEwOCwgMjI5LCAxODEsIDExOCwgCi0gICAgMjE4LCAyMjIsIDY1LCAyMjgsIDE3MCwgMTIzLCAxMDgsIDIxOSwgOSwgNjUsIDIsIDIyOCwgMTYzLCAxMjMsIDEwOCwgMjE4LCAKLSAgICAyMjIsIDY1LCAyLCAyMjgsIDE2MywgMTIzLCAxMDgsIDIzMCwgMTUxLCAyMzAsIDE1MiwgMjMwLCAxNTMsIDIzMCwgMTUyLCAKLSAgICAyMTUsIDE0NiwgNDEsIDIzNiwgMTAsIDIyNywgOTcsIDQxLCAyMjcsIDE3LCAyMjcsIDk3LCA0MSwgMjM2LCAxMCwgNjUsIAotICAgIDE2NywgMTIzLCAxMDgsIDQxLCAyMjcsIDE3LCA2NSwgMTY3LCAxMjMsIDEwOCwgNDEsIDI1MCwgMTgzLCA0MSwgMjQ5LCA0MywgCi0gICAgMzYsIDIyNSwgMTU2LCAzNiwgMjMwLCAyNTAsIDM2LCAyMTcsIDM4LCAzNiwgMjQ3LCAxMjEsIDIyMCwgMjMsIDM2LCA2MiwgCi0gICAgMjI3LCAzMywgMzYsIDIyMywgMTMxLCAyMjcsIDMzLCAzNiwgMjUzLCAxMzMsIDIyNywgMzMsIDM2LCAyNDUsIDYwLCAzNiwgCi0gICAgMjQ4LCAxMDEsIDkxLCAyMjUsIDE1NiwgOTEsIDIzMCwgMjUwLCA5MSwgMjE3LCAzOCwgOTEsIDYyLCAyMjcsIDMzLCA0NiwgCi0gICAgMjE4LCAzNiwgNDIsIDIxOCwgMzYsIDExOSwgMjE4LCAzNiwgMTE0LCAyMTgsIDM2LCAyNTMsIDEzNiwgMjMwLCAyMjYsIAotICAgIDIxNiwgMTQ5LCAyNDMsIDI1MCwgMjE2LCAxNjksIDcxLCAyNTIsIDYwLCA0NiwgMjE2LCA1NywgNTEsIDcxLCAyNTIsIDYwLCAKLSAgICA1MSwgNDYsIDIxNiwgNTcsIDI0NywgOTIsIDIyOCwgMTYzLCAyMjUsIDQ4LCAyMjgsIDE2MywgMjE2LCAxNDksIDI0NywgOTIsIAotICAgIDIyOCwgMTYzLCAyNDMsIDI1MSwgMjI5LCAxODMsIDUxLCA3MSwgMjUyLCA2MCwgNTEsIDQ2LCAyMTYsIDU3LCAyMjUsIDgzLCAKLSAgICAyMTUsIDE1NCwgMjIzLCAyNDEsIDIxOSwgMSwgMjE1LCAxNTQsIDIyMywgMjQxLCAyMjgsIDE2OCwgMjE5LCAyMiwgMjI3LCAKLSAgICA5NywgMjQ5LCAxMjUsIDI1MywgMTUzLCAyMjgsIDE2OCwgMjE5LCAyMSwgMjI4LCAxNjgsIDIxOSwgMjIsIDY1LCAxNjcsIAotICAgIDEyMywgMTA4LCAyNDksIDEyNSwgMjUzLCAxNTMsIDIyOCwgMTY4LCAyMTksIDIyLCAxNjcsIDEyMywgMTA4LCAyMjcsIDE3LCAKLSAgICAyMjcsIDk3LCAyMzYsIDEwLCAyMjcsIDk3LCAyMzAsIDE1NywgMjQxLCAxODUsIDI0OSwgMTM2LCAyMzEsIDIwMCwgMjM1LCAKLSAgICAyMDUsIDIxMywgMTMzLCAyMzAsIDIyLCAyMjgsIDE2OSwgNDYsIDI1NCwgMTksIDIsIDI1MywgMTk1LCA0NiwgMjE2LCAxODMsIAotICAgIDIzMCwgOTcsIDIzMiwgMTk5LCAyNTQsIDI3LCAyMzAsIDk3LCAyMzIsIDE5OSwgMjI3LCAyNCwgMjMwLCA5NywgMjM1LCAKLSAgICAxOTUsIDIzMCwgOTcsIDIxNSwgMTQ2LCAyNDcsIDIwMSwgMjI3LCAzMywgNjIsIDIyNywgMzMsIDIxOSwgOTYsIDIyNywgMzMsIAotICAgIDI0NywgMTIxLCAyMTcsIDM4LCAyNTEsIDkwLCA0MiwgMjI4LCAxNjgsIDI0NCwgMTQ5LCAyMjEsIDY5LCAyMjUsIDYzLCA0NiwgCi0gICAgMjI4LCAxNjgsIDI0NCwgMTQ5LCAyMjEsIDY5LCAyMjUsIDYzLCA0MiwgMjIxLCA2OSwgMjI1LCA2MywgNDYsIDIyMSwgNjksIAotICAgIDIyNSwgNjMsIDIyMywgMjAyLCAyMTcsIDQzLCAyNDUsIDYwLCAyNDksIDQwLCAyMzIsIDE5OSwgMjI3LCAyNCwgMjQ5LCA0MCwgCi0gICAgMjMyLCAxOTksIDI1NCwgMjcsIDUxLCAyMTksIDgsIDUxLCAyMTgsIDIyMSwgNTEsIDIzNSwgMTk1LCA1MSwgMjE1LCAxNDYsIAotICAgIDIyNSwgMTc5LCAxMjMsIDI0LCAyMjYsIDEzNiwgMTA4LCAyMzMsIDM5LCAyLCAyNDcsIDc0LCAyNDIsIDEwNywgMiwgMjQ3LCAKLSAgICA3NCwgMjE0LCAxNjQsIDIzMCwgMTY3LCAyMzMsIDM4LCAyMTQsIDE2NCwgMjMwLCAxNjcsIDI0MiwgMTA2LCAyMzMsIDM5LCAKLSAgICAxMjMsIDIxMSwgMjExLCAxNjcsIDI0MiwgMTA2LCAyNDIsIDEwNywgMTIzLCAyMTEsIDIxMSwgMTY3LCAyMzMsIDM4LCAxMjMsIAotICAgIDIxMSwgMjExLCAxNjcsIDIzMywgMzgsIDEyMywgMjExLCAyMTEsIDE2NywgMjQyLCAxMDYsIDEyMywgMjExLCAyMTEsIDE2NywgCi0gICAgMjI1LCA4MiwgMTIzLCAyMTEsIDIxMSwgMTY3LCAyMTksIDAsIDI0NywgOTIsIDIyOCwgMTYzLCAyMjUsIDg2LCAxNjcsIAotICAgIDI0NSwgNjIsIDI0NywgOTIsIDIyOCwgMTYzLCAyMTksIDMsIDE2NywgMjQ1LCA2MiwgMjI4LCAxNjMsIDQxLCAyMzYsIDEwLCAKLSAgICA2NSwgMTY3LCAxMjMsIDEwOCwgMjI4LCAxNjMsIDQxLCAyMjcsIDE3LCA2NSwgMTY3LCAxMjMsIDEwOCwgNDEsIDIzNiwgMTAsIAotICAgIDY1LCAxNjcsIDIyOCwgMTYzLCAxMjMsIDEwOCwgNDEsIDIyNywgMTcsIDY1LCAxNjcsIDIyOCwgMTYzLCAxMjMsIDEwOCwgCi0gICAgMjMzLCAzOSwgMjUxLCAxNywgMjI4LCAxNjMsIDI0NSwgNTcsIDEwOCwgMjQyLCAxMDcsIDI1MSwgMTcsIDIyOCwgMTYzLCAKLSAgICAyNDUsIDU3LCAxMDgsIDIyNSwgODMsIDI1MSwgMTcsIDIyOCwgMTYzLCAyNDUsIDU3LCAxMDgsIDIxOSwgMSwgMjUxLCAxNywgCi0gICAgMjI4LCAxNjMsIDI0NSwgNTcsIDEwOCwgMjI4LCAxNjMsIDIyOCwgMTY4LCAyMTksIDIyLCAyMjcsIDk3LCAyNDcsIDkyLCAKLSAgICAyMjgsIDE2MywgMjQ5LCAxMjcsIDI1MywgMTUzLCAyMjgsIDE2OCwgMjE5LCAyMSwgMjI4LCAxNjMsIDIyOCwgMTY4LCAyMTksIAotICAgIDIyLCA2NSwgMTY3LCAxMjMsIDEwOCwgMjQ3LCA5MiwgMjI4LCAxNjMsIDI0OSwgMTI3LCAyNTMsIDE1MywgMjI4LCAxNjgsIAotICAgIDIxOSwgMjIsIDE2NywgMjQ1LCA2MiwgNzEsIDI0NSwgMTIwLCAyMzEsIDM1LCAxOTksIDI0NSwgMTIwLCAxMTQsIDQ2LCAKLSAgICAyNDcsIDIwNywgMjQ1LCAxMjAsIDExOSwgNDYsIDI0NywgMjA3LCAyNDUsIDEyMCwgMjQ1LCAxMjcsIDY1LCAyLCAxODQsIAotICAgIDE5OSwgOTAsIDI0NSwgMTI3LCA2NSwgMiwgNzEsIDI1MiwgNjAsIDI1MywgMTIzLCAyNDUsIDEwMSwgNjUsIDE5OSwgOTAsIAotICAgIDMsIDI0NSwgMTI3LCA2NSwgMiwgNzEsIDI1MiwgNjAsIDI1MywgMTIzLCAyNDUsIDEwMSwgNjUsIDE5OSwgOTAsIDI0NSwgCi0gICAgMTI3LCA2NSwgMiwgNjIsIDQ5LCAyNDUsIDEyNywgNjUsIDIsIDIyNiwgMjQ3LCAzLCAyNDUsIDEyNywgNjUsIDIsIDIyNiwgCi0gICAgMjQ3LCAyNDUsIDEyNywgNjUsIDIsIDIxNSwgMTUzLCAyNDUsIDEyNywgNjUsIDIsIDExNywgMTk5LCAyMTksIDMyLCAyNDksIAotICAgIDEyNSwgMiwgMTg0LCAxOTksIDkwLCAyNDksIDEyNSwgMiwgNzEsIDI1MiwgNjAsIDI1MywgMTIzLCAyNDUsIDEwMSwgNjUsIAotICAgIDE5OSwgOTAsIDMsIDI0OSwgMTI1LCAyLCA3MSwgMjUyLCA2MCwgMjUzLCAxMjMsIDI0NSwgMTAxLCA2NSwgMTk5LCA5MCwgCi0gICAgMjQ5LCAxMjUsIDIsIDIyNiwgMjQ3LCAzLCAyNDksIDEyNSwgMiwgMjI2LCAyNDcsIDIxMiwgMTUzLCAxNzQsIDI1MiwgOTEsIAotICAgIDIzMSwgMTI1LCAyNDcsIDIwMiwgNTIsIDI0NSwgMTI5LCA2OCwgMjQwLCAyMjEsIDExNCwgMjUzLCAxNjQsIDExOSwgMjUzLCAKLSAgICAxNjQsIDIyNSwgNTksIDIyNiwgNDEsIDIxNCwgMTYsIDIzMiwgMjQyLCA0MiwgMjUwLCAxMTUsIDQ2LCAyNTAsIDExNSwgNDIsIAotICAgIDI0NCwgMjYsIDQ2LCAyNDQsIDI2LCAyNTEsIDEwMSwgNDYsIDI0OSwgNzIsIDI1MSwgMTAxLCA0MiwgMjQ5LCA3MiwgMjE2LCAKLSAgICAyMjcsIDQ2LCAyNDksIDcyLCAyMTYsIDIyNywgNDIsIDI0OSwgNzIsIDIyMywgMjAyLCAyMjgsIDE2MywgNTIsIDQxLCAyMzIsIAotICAgIDE1OSwgMjUzLCAxOTUsIDIyMiwgODMsIDIyMiwgOTAsIDIxNywgMjEwLCAyMjQsIDEzLCAyMjUsIDEyMSwgMjM1LCAyMzUsIAotICAgIDIxNCwgMTQ1LCAyMTksIDE2NiwgMjI1LCAxNzMsIDY1LCAyMzUsIDIwNCwgNTIsIDIxNiwgNTgsIDIyOCwgMTYzLCA1MiwgCi0gICAgMjE0LCAyNiwgMjQwLCAyMjMsIDIxNiwgMjI3LCA0MiwgMjQ5LCA5OSwgMjE2LCAyMjcsIDQ2LCAyNDksIDk5LCAyNTEsIAotICAgIDEwMSwgNDIsIDI0OSwgOTksIDI1MSwgMTAxLCA0NiwgMjQ5LCA5OSwgMjE2LCAyMjcsIDE1MSwgMjM1LCAyMDgsIDI1MSwgCi0gICAgMTAxLCAxNTEsIDIzNSwgMjA4LCAyNDMsIDIxMCwgMjIwLCAzLCAxMTQsIDI1MywgMTY1LCAyNTEsIDIwMSwgMTE3LCAxOTksIAotICAgIDI1MiwgNDksIDIyNywgMjYsIDIzNCwgMTQ0LCAyNDUsIDUzLCAyMTEsIDIxMSwgMjE3LCAxNDksIDIyMywgMTQ4LCAyMTMsIAotICAgIDE2NywgMjM1LCAyNTIsIDExOCwgMjI0LCAxMCwgMjUxLCA4OSwgMjM0LCAxNDMsIDIzMywgNjYsIDI1NCwgMTksIDEyNSwgCi0gICAgMjIzLCAxNDQsIDI1NCwgMTksIDEyNSwgMjQ1LCA1MywgMjExLCAyMTEsIDIxNywgMTQ5LCAyMzMsIDcwLCAyNTEsIDIxMiwgCi0gICAgMjIzLCAxMzAsIDI0OSwgMTMsIDI1NCwgNjQsIDI1MywgMTcyLCAyMTgsIDEyNiwgMjE2LCAyMTcsIDIyMywgMzQsIDI0NywgCi0gICAgMTY3LCAyMjcsIDE4LCAyNDksIDEzOCwgMjE4LCAzLCAyMjAsIDE0LCAyNDksIDkwLCAyNDksIDg5LCAxOTQsIDE5NiwgMTYsIAotICAgIDI0MCwgMTQzLCAxOTQsIDE5NiwgMTYsIDIxOSwgMTYwLCAyMjQsIDE3MiwgMTk0LCAxOTYsIDE2LCAyMjQsIDE3MywgMjQ1LCAKLSAgICA2MiwgMTk0LCAxOTYsIDE2LCAyMjQsIDE3MywgMjQ3LCAxMjYsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDI0NywgMjAwLCAKLSAgICAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAyMzUsIDU5LCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAyNDksIDIyOCwgMTk0LCAKLSAgICAxOTYsIDE2LCAyNDksIDIyOSwgMjE5LCA3NSwgMTk0LCAxOTYsIDE2LCAyNDksIDIyOSwgMjM1LCA1OSwgMTk0LCAxOTYsIAotICAgIDE2LCAyMjAsIDI0LCAxMzQsIDE5NCwgMTk2LCAxNiwgMjUyLCA5OCwgMTM0LCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAKLSAgICAyMjAsIDIzLCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAyNTIsIDk3LCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAyMzMsIAotICAgIDM4LCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAyNDIsIDEwNiwgMTk0LCAxOTYsIDE2LCAxMzIsIDIxNCwgMjUxLCAxOTQsIAotICAgIDE5NiwgMTYsIDk1LCAyMTQsIDI1MSwgMTk0LCAxOTYsIDE2LCAyMjQsIDE3MywgMTMyLCA2OCwgMTk0LCAxOTYsIDE2LCAKLSAgICAyMjQsIDE3MywgOTUsIDY4LCAxOTQsIDE5NiwgMTYsIDI0OSwgMjI5LCAyNTIsIDk3LCAxOTQsIDE5NiwgMTYsIDExOSwgCi0gICAgMjE4LCAzNywgMjE1LCAxNTMsIDE5NCwgMTk2LCAxNiwgMjQ4LCA2LCAyMTksIDc1LCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAKLSAgICAxMTksIDI1MCwgMTcwLCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAyNDgsIDUsIDE5NCwgMTk2LCAxNiwgMTE5LCAyMTgsIAotICAgIDM3LCAyMzUsIDU5LCAxOTQsIDE5NiwgMTYsIDIxNSwgMTI0LCAyMTQsIDI1MSwgMTk0LCAxOTYsIDE2LCAyMjQsIDE3MywgCi0gICAgMjE1LCAxMjQsIDY4LCAxOTQsIDE5NiwgMTYsIDExNCwgMjE4LCAzNywgMjI2LCAyNDcsIDE5NCwgMTk2LCAxNiwgMjQ4LCAKLSAgICAxNywgMjE5LCA3NSwgMTk0LCAxOTYsIDE2LCAyMjQsIDE3MywgMTE0LCAyNTAsIDE3MCwgMTk0LCAxOTYsIDE2LCAyMjQsIAotICAgIDE3MywgMjQ4LCAxNiwgMTk0LCAxOTYsIDE2LCAxMTQsIDIxOCwgMzcsIDIzNSwgNTksIDE5NCwgMTk2LCAxNiwgMjQ2LCA1OCwgCi0gICAgMjE0LCAyNTEsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDI0NiwgNTgsIDY4LCAxOTQsIDE5NiwgMTYsIDIyNCwgMTQyLCAKLSAgICAyMTUsIDE1MywgMTk0LCAxOTYsIDE2LCAyNDgsIDYsIDIxNSwgMTUzLCAxOTQsIDE5NiwgMTYsIDI0NywgMjAxLCAyMTUsIAotICAgIDE1MywgMTk0LCAxOTYsIDE2LCAyMzUsIDYwLCAyMTUsIDE1MywgMTk0LCAxOTYsIDE2LCAyNDksIDIyOSwgMjE1LCAxNTMsIAotICAgIDE5NCwgMTk2LCAxNiwgMTE0LCAyMjAsIDE4NSwgMjM1LCA1OSwgMTk0LCAxOTYsIDE2LCAyMjQsIDE0MiwgMjI0LCAxNzIsIAotICAgIDE5NCwgMTk2LCAxNiwgMjQ5LCAyMjksIDIxOSwgOTUsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDI0OSwgMTY0LCAxOTQsIAotICAgIDE5NiwgMTYsIDExNCwgMjE4LCAzNywgMjQ3LCAyMDksIDE5NCwgMTk2LCAxNiwgMjQ4LCAxNywgMjQ3LCAyMDksIDE5NCwgCi0gICAgMTk2LCAxNiwgMjE5LCA5NiwgMjQ3LCAyMDksIDE5NCwgMTk2LCAxNiwgMjM1LCA2MCwgMjQ3LCAyMDksIDE5NCwgMTk2LCAKLSAgICAxNiwgMjQ5LCAyMjksIDI0NywgMjA5LCAxOTQsIDE5NiwgMTYsIDExOSwgMjIwLCAxODUsIDIxOSwgNzUsIDE5NCwgMTk2LCAKLSAgICAxNiwgNDIsIDIyMCwgMTg1LCAyMTksIDc1LCAxOTQsIDE5NiwgMTYsIDIxNywgNDMsIDI0NywgMjA5LCAxOTQsIDE5NiwgMTYsIAotICAgIDI0MiwgMTA3LCAyNDcsIDIwOSwgMTk0LCAxOTYsIDE2LCAyNDksIDE1OCwgMTM0LCAxOTQsIDE5NiwgMTYsIDI0OCwgMTcsIAotICAgIDIxNywgNDIsIDE5NCwgMTk2LCAxNiwgMjEyLCAyNywgMTk0LCAxOTYsIDE2LCAyMTksIDc2LCAyMTcsIDQyLCAxOTQsIDE5NiwgCi0gICAgMTYsIDIyMSwgNzEsIDIxNSwgMTUzLCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAyMjgsIDE2MywgMjQ1LCA2MiwgMTk0LCAKLSAgICAxOTYsIDE2LCAyMjQsIDE3MywgMjI0LCAxNTcsIDE5NCwgMTk2LCAxNiwgMTE5LCAyNTAsIDE3MSwgMjE3LCA0MiwgMTk0LCAKLSAgICAxOTYsIDE2LCAxMTQsIDI1MCwgMTcxLCAyMTcsIDQyLCAxOTQsIDE5NiwgMTYsIDIzNSwgMTgzLCAxOTQsIDE5NiwgMTYsIAotICAgIDIyMywgMTkwLCAxOTQsIDE5NiwgMTYsIDIyNywgNjcsIDE5NCwgMTk2LCAxNiwgMjU0LCA1MywgMjE1LCAxNTMsIDE5NCwgCi0gICAgMTk2LCAxNiwgMjQ1LCA2NCwgMjE1LCAxNTMsIDE5NCwgMTk2LCAxNiwgMjM1LCAxODQsIDIxNSwgMTUzLCAxOTQsIDE5NiwgCi0gICAgMTYsIDIyNywgNjgsIDIxNSwgMTUzLCAxOTQsIDE5NiwgMTYsIDI1NCwgNTIsIDIyOCwgMTYzLCAyNTAsIDY2LCA3NywgNDYsIAotICAgIDI1NCwgMTksIDIsIDI0NiwgNTgsIDIxMiwgMjgsIDY4LCAyMjAsIDE1OSwgMjI3LCA0MCwgMjUxLCA4OSwgMjUxLCAyMjIsIAotICAgIDg3LCA3MSwgMjMyLCAyNDMsIDIsIDIzMSwgMzcsIDI0NywgNzQsIDIzNSwgMjEzLCA4NywgMjQ5LCAxMjIsIDIxNSwgMTUxLCAKLSAgICA4NywgMjQ3LCAxNDEsIDIxNSwgMTUxLCA4NywgMjQ1LCAxMTIsIDg3LCAyNDksIDE0OSwgODcsIDY3LCA0MSwgMiwgMjUwLCAKLSAgICAxMDksIDcxLCAyMzIsIDI0MiwgMjQ1LCA4OSwgODcsIDI1NCwgNDgsIDIzNCwgMTQ1LCA4NywgMjQxLCAxOTcsIDg3LCAzNiwgCi0gICAgMTk5LCAyNTIsIDYwLCAyLCAyMjgsIDE2MSwgMzYsIDIxNiwgMTg0LCAyNDYsIDYwLCAyNTEsIDYzLCAyNDksIDIyOSwgMiwgCi0gICAgMjI4LCAxNjUsIDY4LCAyMTUsIDE0OSwgODcsIDIzMCwgMjA3LCA4NywgMjQwLCAxNTYsIDg3LCAyMjcsIDM5LCAyNDIsIDQwLCAKLSAgICA4NywgMjI3LCAzOSwgMjMzLCAxNjksIDg3LCAyMjYsIDExNywgODcsIDIyNiwgMTE2LCA4NywgMjQ3LCAxNDksIDI0OSwgMzgsIAotICAgIDE2LCAyNDMsIDI0NSwgMTA5LCAyMTksIDIzNCwgODcsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzIsIDI0OCwgMzQsIDIyMSwgCi0gICAgNTgsIDIzNCwgMTQ1LCA4NywgMjI1LCA3MywgMjI2LCAyMDAsIDIyOSwgMTY0LCAyMjYsIDIwMCwgMjI1LCA2OSwgMjIyLCAKLSAgICAxMDgsIDg3LCAyNDksIDIxMCwgMjIyLCAxMDgsIDg3LCA0MiwgMjI2LCAxMzIsIDIxNSwgMTMxLCAxMDEsIDQyLCAyMjYsIAotICAgIDEzMiwgMjQ0LCAyNDUsIDQyLCAyMjYsIDEzMiwgMjMyLCAxNjMsIDEwMSwgNDYsIDIyNiwgMTMyLCAyMTUsIDEzMSwgMTAxLCAKLSAgICA0NiwgMjI2LCAxMzIsIDI0NCwgMjQ1LCA0NiwgMjI2LCAxMzIsIDIzMiwgMTYzLCAxMDEsIDQyLCA0MSwgMjUxLCA4NSwgCi0gICAgMjE1LCAxMzEsIDI0OSwgOTksIDQyLCA0MSwgMjUxLCA4NSwgMjQ0LCAyNDUsIDQyLCA0MSwgMjUxLCA4NSwgMjMyLCAxNjMsIAotICAgIDI0OSwgOTksIDQ2LCA0MSwgMjUxLCA4NSwgMjE1LCAxMzEsIDI0OSwgOTksIDQ2LCA0MSwgMjUxLCA4NSwgMjQ0LCAyNDUsIAotICAgIDQ2LCA0MSwgMjUxLCA4NSwgMjMyLCAxNjMsIDI0OSwgOTksIDQyLCAyNDksIDQwLCAyNTEsIDg1LCAyMTUsIDEzMSwgMTAxLCAKLSAgICA0MiwgMjQ5LCA0MCwgMjUxLCA4NSwgMjMxLCAzNywgMjI1LCAyMzMsIDQyLCAyNDksIDQwLCAyNTEsIDg1LCAyMzIsIDE2MywgCi0gICAgMTAxLCAyNDksIDQwLCAyNTEsIDg1LCAyNDQsIDI0NSwgNDYsIDI0OSwgNDAsIDI1MSwgODUsIDIxNSwgMTMxLCAxMDEsIDQ2LCAKLSAgICAyNDksIDQwLCAyNTEsIDg1LCAyMzEsIDM3LCAyMjUsIDIzMywgNDYsIDI0OSwgNDAsIDI1MSwgODUsIDIzMiwgMTYzLCAxMDEsIAotICAgIDIzNSwgMjA5LCAyNDQsIDI0NSwgMTk5LCAyMzIsIDI0MywgMjQ0LCAyNDUsIDIxNSwgMTMxLCA0MiwgMTY3LCAyMzIsIDE2MywgCi0gICAgNDYsIDI0OSwgNDAsIDI1MSwgODUsIDIyMiwgOTEsIDIxNSwgMTMxLCA0NiwgMTY3LCAyMzIsIDE2MywgNDIsIDI0OSwgNDAsIAotICAgIDI1MSwgODUsIDIyMiwgOTEsIDIxOCwgMjQyLCAyMTYsIDIyNiwgMjE4LCAyNDIsIDI1MSwgMTAwLCAyMTYsIDIyNywgNDEsIAotICAgIDEyNSwgMjUxLCAxMDEsIDQxLCAxMjUsIDI1MSwgMTAxLCA0MSwgMjUxLCA4NSwgMTEwLCAyMTYsIDIyNywgNDEsIDEyNSwgCi0gICAgMzQsIDE2LCAyNTEsIDEwMCwgNDIsIDcxLCA5MiwgMjMyLCAyNDIsIDQ2LCA3MSwgOTIsIDIzMiwgMjQyLCAxOTksIDIyMiwgCi0gICAgMTIzLCAyMzIsIDI0MSwgMTk5LCAyMjIsIDEyMywgMjMyLCAyNDAsIDE5OSwgMjIyLCAxMjMsIDIzMiwgMjM5LCAxOTksIAotICAgIDIyMiwgMTIzLCAyMzIsIDIzOCwgMjQ3LCAyNTMsIDE2LCAxNzcsIDcxLCAyNCwgMjE2LCAyMjcsIDIyMywgMTQ4LCAyNDcsIAotICAgIDI1MywgMTYsIDE3NywgNzEsIDI0LCAyNTEsIDEwMSwgMjIzLCAxNDgsIDI0NywgMjUzLCAxNiwgMTc3LCA3MSwgMiwgMjQ5LCAKLSAgICAyMjgsIDI0NywgMjUzLCAxNiwgMTc3LCAxMTksIDI0LCAxOTksIDIsIDI0OSwgMjI4LCAyNDcsIDI1MywgMTYsIDE3NywgCi0gICAgMTE0LCAyNCwgMTk5LCAyLCAyNDksIDIyOCwgMjQ3LCAyNTMsIDE2LCAxNzcsIDcxLCAyLCAyMTYsIDE4MywgMjQ3LCAyNTMsIAotICAgIDE2LCAxNzcsIDExOSwgMjQsIDE5OSwgMiwgMjE2LCAxODMsIDI0NywgMjUzLCAxNiwgMTc3LCAxMTQsIDI0LCAxOTksIDIsIAotICAgIDIxNiwgMTgzLCAyNDcsIDI1MywgMTYsIDE3NywgNzEsIDI0LCAyMTQsIDE5LCAyNDcsIDI1MywgMTYsIDE3NywgMTE5LCAyNCwgCi0gICAgMTk5LCAyLCAyMTQsIDE5LCAyNDcsIDI1MywgMTYsIDE3NywgMTE0LCAyNCwgMTk5LCAyLCAyMTQsIDE5LCAyNDcsIDI1MywgCi0gICAgMTYsIDE3NywgMTE5LCAyNCwgMjQxLCAzMSwgMjQ3LCAyNTMsIDE2LCAxNzcsIDExNCwgMjQsIDI0MSwgMzEsIDI0NywgMjUzLCAKLSAgICAxNiwgMTc3LCA3MSwgMjQsIDIxNiwgMjI3LCAyMzMsIDcwLCAyNDcsIDI1MywgMTYsIDE3NywgNzEsIDI0LCAyNTEsIDEwMSwgCi0gICAgMjMzLCA3MCwgNDEsIDI0NCwgMSwgMjIzLCAyMDYsIDg3LCAyNDUsIDEzOSwgODcsIDcxLCAyMzIsIDI0MywgMjQ0LCAyNDUsIAotICAgIDIzMSwgMTAwLCAyNTEsIDc0LCAyMzEsIDEwMCwgMTg0LCAxMTAsIDIyMCwgMTc0LCAyMzEsIDEwMCwgMjIwLCAxNzUsIDExMCwgCi0gICAgMjMyLCAxOTAsIDIzMSwgMTAwLCAxODQsIDExMCwgMTE3LCAyMjAsIDE2MSwgMjMxLCAxMDAsIDExNywgMjIwLCAxNjIsIAotICAgIDExMCwgMjMyLCAxOTAsIDIzMSwgMTAwLCAxMTcsIDIyMCwgMTYyLCAyMzUsIDY3LCAyMzEsIDEwMCwgMjE2LCAxNjYsIDIzMSwgCi0gICAgMTAwLCAyMTcsIDE3NiwgMjMxLCAxMDAsIDIyNiwgNjMsIDI0NSwgMTgwLCAyNDIsIDEwMCwgMjQzLCAxOTEsIDIxNiwgMjI3LCAKLSAgICAyMjYsIDEzMSwgMjUxLCAxMDEsIDIyNiwgMTMxLCAyMTYsIDIyNywgMjQ5LCA0MCwgMTI1LCAyNTEsIDEwMSwgMjQ5LCA0MCwgCi0gICAgMTI1LCAyMTYsIDIyNywgMjE2LCAyMTksIDIyMCwgMjMzLCAxMjUsIDI1MSwgMTAxLCAyMTYsIDIxOSwgMjIwLCAyMzMsIAotICAgIDEyNSwgNjcsIDIxNiwgMTk3LCAyNTEsIDIxMiwgMjIzLCAxMzEsIDIsIDI0OSwgMjI4LCAyMTksIDYwLCAyNDQsIDMzLCAKLSAgICAyNTQsIDE3NywgMjQ5LCAzNywgMjQ1LCAxMjgsIDIzNSwgMTk1LCAyNDgsIDM0LCAyNDQsIDI0NywgODcsIDgzLCAyMjMsIAotICAgIDE0NCwgNTEsIDIxNiwgMTgzLCA4MywgMjMzLCA2NiwgNTEsIDIxNiwgMTgzLCA4MywgMjE1LCAxMzMsIDUxLCAyMTYsIDE4MywgCi0gICAgODMsIDI0NiwgNTksIDUxLCAyMTYsIDE4MywgODMsIDIyMywgMTQ0LCA1MSwgMjE2LCAxODQsIDIsIDcxLCAxMzQsIDgzLCAKLSAgICAyMzMsIDY2LCA1MSwgMjE2LCAxODQsIDIsIDcxLCAxMzQsIDgzLCAyMjMsIDE0NCwgMjE2LCAxODQsIDIsIDUxLCA3MSwgCi0gICAgMTM0LCAyNTQsIDgxLCAyNDksIDE5NiwgMjE5LCA2NiwgMjE3LCAzOSwgMjQ5LCAxOTYsIDI0MCwgMjI0LCAyLCAyNDQsIDE5LCAKLSAgICAyMjIsIDE1NywgMTYsIDMxLCAyMjgsIDU4LCAxNiwgMzEsIDIxOSwgOTEsIDY1LCAyNDEsIDIxNywgMTYsIDMxLCAyMTksIAotICAgIDkxLCA2NSwgMjE3LCAxNjUsIDE2LCAzMSwgMjQ1LCAxMDEsIDY1LCAyMTcsIDE2NSwgMTYsIDMxLCAyNDUsIDEwMSwgNjUsIAotICAgIDIxNiwgMjAwLCAxNiwgMzEsIDI0NSwgOTEsIDE2LCAzMSwgMjU0LCAxNjgsIDE2LCAzMSwgMjUxLCAyMjEsIDE2LCAzMSwgCi0gICAgMjUyLCA5NiwgMTYsIDMxLCAxOTksIDIxOCwgMzgsIDE2LCAzMSwgMjMyLCAyNDMsIDI0NCwgMTE0LCAxNiwgMzEsIDcxLCAKLSAgICAyMTgsIDM4LCAxNiwgMzEsIDI0MywgMjQ1LCAyNDQsIDExNCwgMTYsIDMxLCAyNTAsIDE2MiwgMjIzLCAyMDUsIDE2LCAzMSwgCi0gICAgMjIwLCAyMDgsIDIyNiwgMjU0LCAxNiwgMzEsIDIyMCwgMjA4LCAyMzUsIDI1MSwgMTYsIDMxLCAyNDgsIDk3LCAyMzIsIAotICAgIDIzMywgMjQ1LCA0MiwgMTYsIDMxLCAyNDcsIDIzOCwgMjQ5LCAxMTcsIDExNiwgMTYsIDMxLCAyNDcsIDIzOCwgMjQ5LCAKLSAgICAxMTcsIDEwOSwgMTYsIDMxLCAyNDcsIDIzOCwgMjQ5LCAxMTcsIDE2NiwgMTYsIDMxLCAyNDcsIDIzOCwgMjQ5LCAxMTcsIAotICAgIDE2MywgMTYsIDMxLCAxNDYsIDI1NCwgMTY4LCAxNiwgMzEsIDIxOCwgMTIzLCAyMzYsIDU3LCAxNiwgMzEsIDI0NSwgMTAxLCAKLSAgICA2NSwgMjE2LCAyMDEsIDI1MSwgMTM2LCAxNiwgMzEsIDI1MCwgMTkzLCAxNiwgMzEsIDI0NSwgMTAxLCA2NSwgMjMxLCAxNDYsIAotICAgIDE2LCAzMSwgMjE5LCA2LCAxNiwgMzEsIDI0NSwgNDIsIDE2LCAzMSwgMjQ0LCA3NiwgMjIxLCA1NywgMTYsIDMxLCAyNDIsIAotICAgIDk5LCAyMjEsIDU3LCAxNiwgMzEsIDIyNCwgMTQsIDIyMSwgNTcsIDE2LCAzMSwgMjE1LCAxNDUsIDIyMSwgNTcsIDE2LCAzMSwgCi0gICAgMjE5LCAyMDYsIDE2LCAzMSwgMjQ4LCAxNCwgMjUxLCAxMzksIDg3LCAyMjcsIDQwLCAyNTEsIDg5LCAxNiwgMzEsIDIyOSwgCi0gICAgMTY3LCAxNiwgMzEsIDI0OCwgMTUsIDI0MywgMjQ1LCAxMDksIDE2LCAzMSwgMjE5LCA3LCAyNDMsIDI0NSwgMTA5LCAyMjcsIAotICAgIDEwNSwgMTAxLCAyMjcsIDEwNSwgMjUwLCA4NywgMjI3LCAxMDUsIDI0MywgMjQ4LCAyMjcsIDEwNSwgMjM1LCAxOTEsIDI0MywgCi0gICAgMjQ4LCAyMjcsIDEwNSwgMjUxLCAyMTksIDI1MSwgNTMsIDIyNywgMTA1LCAyNTEsIDk2LCAyMTcsIDY1LCAyMjcsIDEwNSwgCi0gICAgMjUxLCA4MiwgMjUyLCA2NSwgMjQwLCA5NiwgMjI3LCAxMDUsIDI1NCwgMzYsIDY1LCAyNTAsIDY1LCAyMjcsIDEwNSwgMjQ4LCAKLSAgICAxMDEsIDIyNywgMTA1LCAyNDksIDI5LCAyNTQsIDE3MSwgMjI4LCA1NiwgMjI3LCAxMDUsIDUxLCAyNTIsIDk3LCAzNiwgMjEsIAotICAgIDExNiwgMzYsIDIxLCAxMDksIDM2LCAyMSwgMTY2LCAzNiwgMjEsIDE2MywgMzYsIDIxLCAxODAsIDM2LCAyMSwgMTg5LCAzNiwgCi0gICAgMjEsIDE5OCwgMzYsIDIxLCAxOTUsIDM2LCAyMSwgMjAwLCAzNiwgNTAsIDIxNywgMjAwLCAzNiwgNTAsIDI0NSwgMTI0LCAKLSAgICAzNiwgNTAsIDIxNiwgNDEsIDM2LCA1MCwgMjE3LCAxMTcsIDM2LCA1MCwgMjQzLCAyMzEsIDM2LCA1MCwgMjQ0LCA4NywgMzYsIAotICAgIDUwLCAyMjAsIDQ3LCAzNiwgNTAsIDIyMSwgNDAsIDM2LCA1MCwgMjQ1LCAxNDcsIDM2LCA1MCwgMjI5LCAyOCwgMzYsIDUwLCAKLSAgICAyMTYsIDM4LCA4NiwgMjEsIDExNiwgODYsIDIxLCAxMDksIDg2LCAyMSwgMTY2LCA4NiwgMjEsIDE2MywgODYsIDIxLCAxODAsIAotICAgIDg2LCAyMSwgMTg5LCA4NiwgMjEsIDE5OCwgODYsIDIxLCAxOTUsIDg2LCAyMSwgMjAwLCA4NiwgNTAsIDIxNywgMjAwLCA4NiwgCi0gICAgNTAsIDI0NSwgMTI0LCA4NiwgNTAsIDIxNiwgNDEsIDg2LCA1MCwgMjE3LCAxMTcsIDg2LCA1MCwgMjQzLCAyMzEsIDg2LCAKLSAgICA1MCwgMjQ0LCA4NywgODYsIDUwLCAyMjAsIDQ3LCA4NiwgNTAsIDIyMSwgNDAsIDg2LCA1MCwgMjQ1LCAxNDcsIDg2LCA1MCwgCi0gICAgMjI5LCAyOCwgODYsIDUwLCAyMTYsIDM4LCAyMSwgMTIyLCAyNDMsIDIwMCwgMjE5LCA2OSwgMjEsIDExNywgMjQzLCAyMDAsIAotICAgIDIxOSwgNjksIDIxLCAxMzMsIDI0MywgMjAwLCAyMTksIDY5LCAyMSwgMjQzLCAyMzcsIDI0MywgMjAwLCAyMTksIDY5LCAyMSwgCi0gICAgMjQ0LCA1MCwgMjQzLCAyMDAsIDIxOSwgNjksIDIxLCAyMjAsIDUzLCAyNDMsIDIwMCwgMjE5LCA2OSwgMjEsIDIyMSwgNDMsIAotICAgIDI0MywgMjAwLCAyMTksIDY5LCAyMSwgMjQ1LCAxNTAsIDI0MywgMjAwLCAyMTksIDY5LCAyMSwgMjI5LCAzMSwgMjQzLCAKLSAgICAyMDAsIDIxOSwgNjksIDUwLCAyMTcsIDIwMSwgMjQzLCAyMDAsIDIxOSwgNjksIDUwLCAyNDUsIDEyNSwgMjQzLCAyMDAsIAotICAgIDIxOSwgNjksIDUwLCAyMTYsIDQyLCAyNDMsIDIwMCwgMjE5LCA2OSwgNTAsIDIxNywgMTE4LCAyNDMsIDIwMCwgMjE5LCA2OSwgCi0gICAgNTAsIDI0MywgMjMyLCAyNDMsIDIwMCwgMjE5LCA2OSwgNTAsIDI0NCwgODgsIDI0MywgMjAwLCAyMTksIDY5LCA1MCwgMjIwLCAKLSAgICA0OCwgMjQzLCAyMDAsIDIxOSwgNjksIDUwLCAyMjEsIDQxLCAyNDMsIDIwMCwgMjE5LCA2OSwgNTAsIDI0NSwgMTQ4LCAyNDMsIAotICAgIDIwMCwgMjE5LCA2OSwgNTAsIDIyOSwgMjksIDI0MywgMjAwLCAyMTksIDY5LCA1MCwgMjE2LCAzOSwgMjQzLCAyMDAsIDIxOSwgCi0gICAgNjksIDg2LCA3LCAzLCAxLCA2MSwgODYsIDcsIDMsIDEsIDI1MywgNzQsIDg2LCA3LCAzLCAxLCAyNTAsIDI1MiwgODYsIDcsIAotICAgIDMsIDEsIDI0OSwgMywgODYsIDcsIDMsIDEsIDc0LCA4NiwgNywgMywgMSwgMjQ0LCAyMzAsIDg2LCA3LCAzLCAxLCAyNDMsIAotICAgIDE3NywgODYsIDcsIDMsIDEsIDI0MiwgNDEsIDg2LCA3LCAzLCAxLCA3MiwgODYsIDcsIDMsIDEsIDIzNSwgMTQyLCA4NiwgNywgCi0gICAgMywgMSwgMjM1LCAyNywgODYsIDcsIDMsIDEsIDE1MCwgODYsIDcsIDMsIDEsIDE4MywgODYsIDcsIDMsIDEsIDIwNCwgODYsIAotICAgIDcsIDMsIDEsIDc1LCA4NiwgNywgMywgMSwgMjI2LCAyMjksIDg2LCA3LCAzLCAxLCAyMjQsIDI0MCwgODYsIDcsIDMsIDEsIAotICAgIDE0OSwgODYsIDcsIDMsIDEsIDE5NywgODYsIDcsIDMsIDEsIDIxOCwgOTksIDg2LCA3LCAzLCAxLCA2OSwgODYsIDcsIDMsIAotICAgIDEsIDIxNSwgNzksIDg2LCA3LCAzLCAxLCAyMTQsIDgyLCA4NiwgNywgMywgMSwgMjEzLCAxNjYsIDg2LCA3LCAzLCAxLCAKLSAgICAyMTMsIDEwNSwgODYsIDcsIDMsIDEsIDIxMiwgMTUyLCAzNiwgNywgNiwgMSwgNjEsIDM2LCA3LCA2LCAxLCAyNTMsIDc0LCAKLSAgICAzNiwgNywgNiwgMSwgMjUwLCAyNTIsIDM2LCA3LCA2LCAxLCAyNDksIDMsIDM2LCA3LCA2LCAxLCA3NCwgMzYsIDcsIDYsIDEsIAotICAgIDI0NCwgMjMwLCAzNiwgNywgNiwgMSwgMjQzLCAxNzcsIDM2LCA3LCA2LCAxLCAyNDIsIDQxLCAzNiwgNywgNiwgMSwgNzIsIAotICAgIDM2LCA3LCA2LCAxLCAyMzUsIDE0MiwgMzYsIDcsIDYsIDEsIDIzNSwgMjcsIDM2LCA3LCA2LCAxLCAxNTAsIDM2LCA3LCA2LCAKLSAgICAxLCAxODMsIDM2LCA3LCA2LCAxLCAyMDQsIDM2LCA3LCA2LCAxLCA3NSwgMzYsIDcsIDYsIDEsIDIyNiwgMjI5LCAzNiwgNywgCi0gICAgNiwgMSwgMjI0LCAyNDAsIDM2LCA3LCA2LCAxLCAxNDksIDM2LCA3LCA2LCAxLCAxOTcsIDM2LCA3LCA2LCAxLCAyMTgsIDk5LCAKLSAgICAzNiwgNywgNiwgMSwgNjksIDM2LCA3LCA2LCAxLCAyMTUsIDc5LCAzNiwgNywgNiwgMSwgMjE0LCA4MiwgMzYsIDcsIDYsIDEsIAotICAgIDIxMywgMTY2LCAzNiwgNywgNiwgMSwgMjEzLCAxMDUsIDM2LCA3LCA2LCAxLCAyMTIsIDE1MiwgMzYsIDcsIDMsIDEsIDYxLCAKLSAgICAzNiwgNywgMywgMSwgMjUzLCA3NCwgMzYsIDcsIDMsIDEsIDI1MCwgMjUyLCAzNiwgNywgMywgMSwgMjQ5LCAzLCAzNiwgNywgCi0gICAgMywgMSwgNzQsIDM2LCA3LCAzLCAxLCAyNDQsIDIzMCwgMzYsIDcsIDMsIDEsIDI0MywgMTc3LCAzNiwgNywgMywgMSwgMjQyLCAKLSAgICA0MSwgMzYsIDcsIDMsIDEsIDcyLCAzNiwgNywgMywgMSwgMjM1LCAxNDIsIDM2LCA3LCAzLCAxLCAyMzUsIDI3LCAzNiwgNywgCi0gICAgMywgMSwgMTUwLCAzNiwgNywgMywgMSwgMTgzLCAzNiwgNywgMywgMSwgMjA0LCAzNiwgNywgMywgMSwgNzUsIDM2LCA3LCAzLCAKLSAgICAxLCAyMjYsIDIyOSwgMzYsIDcsIDMsIDEsIDIyNCwgMjQwLCAzNiwgNywgMywgMSwgMTQ5LCAzNiwgNywgMywgMSwgMTk3LCAKLSAgICAzNiwgNywgMywgMSwgMjE4LCA5OSwgMzYsIDcsIDMsIDEsIDY5LCAzNiwgNywgMywgMSwgMjE1LCA3OSwgMzYsIDcsIDMsIDEsIAotICAgIDIxNCwgODIsIDM2LCA3LCAzLCAxLCAyMTMsIDE2NiwgMzYsIDcsIDMsIDEsIDIxMywgMTA1LCAzNiwgNywgMywgMSwgMjEyLCAKLSAgICAxNTIsIDM2LCAyMSwgMjEyLCA3OSwgMTQ2LCAzNiwgNTAsIDI0NSwgMTI0LCAxNDYsIDM2LCA1MCwgMjE2LCA0MSwgMTQ2LCAKLSAgICAzNiwgNTAsIDIxNywgMTE3LCAxNDYsIDM2LCA1MCwgMjQzLCAyMzEsIDE0NiwgMzYsIDUwLCAyNDQsIDg3LCAxNDYsIDM2LCAKLSAgICA1MCwgMjIwLCA0NywgMTQ2LCAzNiwgNTAsIDIyMSwgNDAsIDE0NiwgMzYsIDUwLCAyNDUsIDE0NywgMTQ2LCAzNiwgNTAsIAotICAgIDIyOSwgMjgsIDE0NiwgMzYsIDUwLCAyMTYsIDM4LCA1MSwgMzYsIDIxLCAxMTYsIDUxLCAzNiwgMjEsIDEwOSwgNTEsIDM2LCAKLSAgICAyMSwgMTY2LCA1MSwgMzYsIDIxLCAxNjMsIDUxLCAzNiwgMjEsIDE4MCwgNTEsIDM2LCAyMSwgMTg5LCA1MSwgMzYsIDIxLCAKLSAgICAxOTgsIDUxLCAzNiwgMjEsIDE5NSwgNTEsIDM2LCAyMSwgMjAwLCA1MSwgMzYsIDUwLCAyMTcsIDIwMCwgMTQ2LCAzNiwgMjEsIAotICAgIDIxMiwgNzksIDkyLCA5NiwgMTc3LCAyNDEsIDMxLCA5MiwgOTYsIDEwNywgMjQxLCAzMSwgOTIsIDk2LCAxNzcsIDIxNCwgCi0gICAgMjE2LCA5MiwgOTYsIDEwNywgMjE0LCAyMTYsIDkyLCA5NiwgMTc3LCAyMTYsIDE2OSwgMjQ4LCAxMDIsIDI0MSwgMzEsIDkyLCAKLSAgICA5NiwgMTA3LCAyMTYsIDE2OSwgMjQ4LCAxMDIsIDI0MSwgMzEsIDkyLCA5NiwgMTc3LCAyMTYsIDE2OSwgMjQ4LCAxMDIsIAotICAgIDIxNCwgMjE2LCA5MiwgOTYsIDEwNywgMjE2LCAxNjksIDI0OCwgMTAyLCAyMTQsIDIxNiwgOTIsIDk2LCAxNzcsIDIyNCwgCi0gICAgMTY5LCAyNDgsIDEwMiwgMjQxLCAzMSwgOTIsIDk2LCAxMDcsIDIyNCwgMTY5LCAyNDgsIDEwMiwgMjQxLCAzMSwgOTIsIDk2LCAKLSAgICAxNzcsIDIyNCwgMTY5LCAyNDgsIDEwMiwgMjE0LCAyMTYsIDkyLCA5NiwgMTA3LCAyMjQsIDE2OSwgMjQ4LCAxMDIsIDIxNCwgCi0gICAgMjE2LCA5MiwgOTYsIDE3NywgMTE5LCAyNCwgMjIzLCAxNDgsIDkyLCA5NiwgMTE5LCAxNzcsIDI0LCA0NiwgMjQxLCAyMDUsIAotICAgIDkyLCA5NiwgMTE5LCAxMDcsIDI0LCA0NiwgMjMzLCAyLCA5MiwgOTYsIDEwNywgMTE5LCAyNCwgMjIzLCAxNDgsIDkyLCA5NiwgCi0gICAgMTc3LCAxMTksIDI0LCAyMzMsIDcwLCA5MiwgOTYsIDExOSwgMTc3LCAyNCwgNDIsIDI0MSwgMjA1LCA5MiwgOTYsIDExOSwgCi0gICAgMTA3LCAyNCwgNDIsIDIzMywgMiwgOTIsIDk2LCAxMDcsIDExOSwgMjQsIDIzMywgNzAsIDkyLCA5NiwgMTc3LCAxMTQsIDI0LCAKLSAgICAyMjMsIDE0OCwgOTIsIDk2LCAxMTQsIDE3NywgMjQsIDQ2LCAyNDEsIDIwNSwgOTIsIDk2LCAxMTQsIDEwNywgMjQsIDQ2LCAKLSAgICAyMzMsIDIsIDkyLCA5NiwgMTA3LCAxMTQsIDI0LCAyMjMsIDE0OCwgOTIsIDk2LCAxNzcsIDExNCwgMjQsIDIzMywgNzAsIAotICAgIDkyLCA5NiwgMTE0LCAxNzcsIDI0LCA0MiwgMjQxLCAyMDUsIDkyLCA5NiwgMTE0LCAxMDcsIDI0LCA0MiwgMjMzLCAyLCA5MiwgCi0gICAgOTYsIDEwNywgMTE0LCAyNCwgMjMzLCA3MCwgOTIsIDk2LCAxNzcsIDcxLCAyNCwgMjIzLCAxNDgsIDkyLCA5NiwgNzEsIAotICAgIDE3NywgMjQsIDQ2LCAyNDEsIDIwNSwgOTIsIDk2LCAxMTQsIDEwNywgMjQsIDQ2LCAxMTksIDIzMywgMiwgOTIsIDk2LCAKLSAgICAxMTksIDEwNywgMjQsIDQ2LCAxMTQsIDIzMywgMiwgOTIsIDk2LCA3MSwgMTA3LCAyNCwgNDYsIDIzMywgMiwgOTIsIDk2LCAKLSAgICAxMTksIDE3NywgMjQsIDQ2LCAxMTQsIDI0MSwgMjA1LCA5MiwgOTYsIDExNCwgMTc3LCAyNCwgNDYsIDExOSwgMjQxLCAyMDUsIAotICAgIDkyLCA5NiwgMTA3LCA3MSwgMjQsIDIyMywgMTQ4LCA5MiwgOTYsIDE3NywgNzEsIDI0LCAyMzMsIDcwLCA5MiwgOTYsIDcxLCAKLSAgICAxNzcsIDI0LCA0MiwgMjQxLCAyMDUsIDkyLCA5NiwgMTE0LCAxMDcsIDI0LCA0MiwgMTE5LCAyMzMsIDIsIDkyLCA5NiwgCi0gICAgMTE5LCAxMDcsIDI0LCA0MiwgMTE0LCAyMzMsIDIsIDkyLCA5NiwgNzEsIDEwNywgMjQsIDQyLCAyMzMsIDIsIDkyLCA5NiwgCi0gICAgMTE5LCAxNzcsIDI0LCA0MiwgMTE0LCAyNDEsIDIwNSwgOTIsIDk2LCAxMTQsIDE3NywgMjQsIDQyLCAxMTksIDI0MSwgMjA1LCAKLSAgICA5MiwgOTYsIDEwNywgNzEsIDI0LCAyMzMsIDcwLCA5MiwgOTYsIDE3NywgMTE5LCAyNCwgMjQxLCAzMSwgOTIsIDk2LCA0MiwgCi0gICAgMTA3LCAyNCwgNDYsIDExOSwgMjMzLCAyLCA5MiwgOTYsIDQ2LCAxMDcsIDI0LCA0MiwgMTE5LCAyMzMsIDIsIDkyLCA5NiwgCi0gICAgMTE5LCAxNzcsIDI0LCAxOTksIDI0MSwgMjA1LCA5MiwgOTYsIDExOSwgMTA3LCAyNCwgMTk5LCAyMzMsIDIsIDkyLCA5NiwgCi0gICAgNDYsIDE3NywgMjQsIDQyLCAxMTksIDI0MSwgMjA1LCA5MiwgOTYsIDQyLCAxNzcsIDI0LCA0NiwgMTE5LCAyNDEsIDIwNSwgCi0gICAgOTIsIDk2LCAxMDcsIDExOSwgMjQsIDI0MSwgMzEsIDkyLCA5NiwgMTc3LCAxMTQsIDI0LCAyNDEsIDMxLCA5MiwgOTYsIDQyLCAKLSAgICAxMDcsIDI0LCA0NiwgMTE0LCAyMzMsIDIsIDkyLCA5NiwgNDYsIDEwNywgMjQsIDQyLCAxMTQsIDIzMywgMiwgOTIsIDk2LCAKLSAgICAxMTQsIDE3NywgMjQsIDE5OSwgMjQxLCAyMDUsIDkyLCA5NiwgMTE0LCAxMDcsIDI0LCAxOTksIDIzMywgMiwgOTIsIDk2LCAKLSAgICA0NiwgMTc3LCAyNCwgNDIsIDExNCwgMjQxLCAyMDUsIDkyLCA5NiwgNDIsIDE3NywgMjQsIDQ2LCAxMTQsIDI0MSwgMjA1LCAKLSAgICA5MiwgOTYsIDEwNywgMTE0LCAyNCwgMjQxLCAzMSwgOTIsIDk2LCAxNzcsIDcxLCAyNCwgMjQxLCAzMSwgOTIsIDk2LCA0MiwgCi0gICAgMTA3LCAyNCwgNDYsIDcxLCAyMzMsIDIsIDkyLCA5NiwgNDYsIDEwNywgMjQsIDQyLCA3MSwgMjMzLCAyLCA5MiwgOTYsIDcxLCAKLSAgICAxNzcsIDI0LCAxOTksIDI0MSwgMjA1LCA5MiwgOTYsIDExNCwgMTA3LCAyNCwgMTE5LCAxOTksIDIzMywgMiwgOTIsIDk2LCAKLSAgICAxMTksIDEwNywgMjQsIDExNCwgMTk5LCAyMzMsIDIsIDkyLCA5NiwgNzEsIDEwNywgMjQsIDE5OSwgMjMzLCAyLCA5MiwgOTYsIAotICAgIDQyLCAxMTQsIDEwNywgMjQsIDQ2LCAxMTksIDIzMywgMiwgOTIsIDk2LCA0NiwgMTE0LCAxMDcsIDI0LCA0MiwgMTE5LCAKLSAgICAyMzMsIDIsIDkyLCA5NiwgNDIsIDExOSwgMTA3LCAyNCwgNDYsIDExNCwgMjMzLCAyLCA5MiwgOTYsIDQ2LCAxMTksIDEwNywgCi0gICAgMjQsIDQyLCAxMTQsIDIzMywgMiwgOTIsIDk2LCAxMTksIDE3NywgMjQsIDExNCwgMTk5LCAyNDEsIDIwNSwgOTIsIDk2LCAKLSAgICAxMTQsIDE3NywgMjQsIDExOSwgMTk5LCAyNDEsIDIwNSwgOTIsIDk2LCA0NiwgMTc3LCAyNCwgNDIsIDcxLCAyNDEsIDIwNSwgCi0gICAgOTIsIDk2LCA0MiwgMTc3LCAyNCwgNDYsIDcxLCAyNDEsIDIwNSwgOTIsIDk2LCAxMDcsIDcxLCAyNCwgMjQxLCAzMSwgOTIsIAotICAgIDk2LCAxNzcsIDUxLCAyNDgsIDEwMiwgMjQxLCAzMSwgOTIsIDk2LCAxMDcsIDUxLCAyNDgsIDEwMiwgMjQxLCAzMSwgOTIsIAotICAgIDk2LCAxNzcsIDUxLCAyNDgsIDEwMiwgMjE0LCAyMTYsIDkyLCA5NiwgMTA3LCA1MSwgMjQ4LCAxMDIsIDIxNCwgMjE2LCA5MiwgCi0gICAgOTYsIDUxLCAyNDEsIDMxLCA5MiwgOTYsIDUxLCAyMTQsIDIxNiwgOTIsIDk2LCAxMTksIDIyMCwgODEsIDI0LCA0NiwgMjQ2LCAKLSAgICA2NywgOTIsIDk2LCAxMTksIDUxLCAyNCwgNDYsIDIyMCwgODAsIDkyLCA5NiwgNTEsIDExOSwgMjQsIDIyMywgMTQ4LCA5MiwgCi0gICAgOTYsIDExOSwgMjIwLCA4MSwgMjQsIDQyLCAyNDYsIDY3LCA5MiwgOTYsIDExOSwgNTEsIDI0LCA0MiwgMjIwLCA4MCwgOTIsIAotICAgIDk2LCA1MSwgMTE5LCAyNCwgMjMzLCA3MCwgOTIsIDk2LCAxMTQsIDIyMCwgODEsIDI0LCA0NiwgMjQ2LCA2NywgOTIsIDk2LCAKLSAgICAxMTQsIDUxLCAyNCwgNDYsIDIyMCwgODAsIDkyLCA5NiwgNTEsIDExNCwgMjQsIDIyMywgMTQ4LCA5MiwgOTYsIDExNCwgCi0gICAgMjIwLCA4MSwgMjQsIDQyLCAyNDYsIDY3LCA5MiwgOTYsIDExNCwgNTEsIDI0LCA0MiwgMjIwLCA4MCwgOTIsIDk2LCA1MSwgCi0gICAgMTE0LCAyNCwgMjMzLCA3MCwgOTIsIDk2LCA3MSwgMjIwLCA4MSwgMjQsIDQ2LCAyNDYsIDY3LCA5MiwgOTYsIDcxLCA1MSwgCi0gICAgMjQsIDQ2LCAyMjAsIDgwLCA5MiwgOTYsIDUxLCA3MSwgMjQsIDIyMywgMTQ4LCA5MiwgOTYsIDcxLCAyMjAsIDgxLCAyNCwgCi0gICAgNDIsIDI0NiwgNjcsIDkyLCA5NiwgNzEsIDUxLCAyNCwgNDIsIDIyMCwgODAsIDkyLCA5NiwgNTEsIDcxLCAyNCwgMjMzLCAKLSAgICA3MCwgOTIsIDk2LCAxMTksIDIyMCwgODEsIDI0LCAxOTksIDI0NiwgNjcsIDkyLCA5NiwgMTE5LCA1MSwgMjQsIDE5OSwgCi0gICAgMjIwLCA4MCwgOTIsIDk2LCA1MSwgMTE5LCAyNCwgMjQxLCAzMSwgOTIsIDk2LCAxMTQsIDIyMCwgODEsIDI0LCAxOTksIAotICAgIDI0NiwgNjcsIDkyLCA5NiwgMTE0LCA1MSwgMjQsIDE5OSwgMjIwLCA4MCwgOTIsIDk2LCA1MSwgMTE0LCAyNCwgMjQxLCAzMSwgCi0gICAgOTIsIDk2LCA3MSwgMjIwLCA4MSwgMjQsIDE5OSwgMjQ2LCA2NywgOTIsIDk2LCA3MSwgNTEsIDI0LCAxOTksIDIyMCwgODAsIAotICAgIDkyLCA5NiwgNTEsIDcxLCAyNCwgMjQxLCAzMSwgOTIsIDk2LCAxNzcsIDI1MywgMTk2LCAxMTksIDI0LCAyMjMsIDE0OCwgCi0gICAgOTIsIDk2LCAxNzcsIDI1MywgMTk2LCAxMTksIDI0LCAyMzMsIDcwLCA5MiwgOTYsIDE3NywgMjUzLCAxOTYsIDExNCwgMjQsIAotICAgIDIzMywgNzAsIDkyLCA5NiwgMTc3LCAyNTMsIDE5NiwgMTE0LCAyNCwgMjIzLCAxNDgsIDkyLCA5NiwgMTc3LCAyNDcsIDIwNywgCi0gICAgMjE1LCAxMzEsIDQ2LCAyMTEsIDIxMSwgMjMyLCAxNjMsIDIzMywgNzAsIDkyLCA5NiwgMTc3LCAyNDcsIDIwNywgMjE1LCAKLSAgICAxMzEsIDQyLCAyMTEsIDIxMSwgMjMyLCAxNjMsIDIyMywgMTQ4LCA5MiwgOTYsIDE3NywgMjQ3LCAyMDcsIDI0OSwgNzAsIAotICAgIDkyLCA5NiwgMTc3LCAyMzMsIDcwLCA5MiwgOTYsIDE3NywgMjE1LCAxMzQsIDkyLCA5NiwgMTc3LCAyMjMsIDE0OCwgOTIsIAotICAgIDk2LCAxNzcsIDI0NiwgNjAsIDkyLCA5NiwgMTA3LCAyMzMsIDcwLCA5MiwgOTYsIDEwNywgMjE1LCAxMzQsIDkyLCA5NiwgCi0gICAgMTA3LCAyMjMsIDE0OCwgOTIsIDk2LCAxMDcsIDI0NiwgNjAsIDkyLCA5NiwgMTc3LCA0MiwgMjQsIDEwNywgMjIzLCAxNDgsIAotICAgIDkyLCA5NiwgMTc3LCAxMTQsIDI0LCAxMDcsIDI0NiwgNjAsIDkyLCA5NiwgMTA3LCA0MiwgMjQsIDE3NywgMjIzLCAxNDgsIAotICAgIDkyLCA5NiwgMTA3LCAxMTQsIDI0LCAxNzcsIDI0NiwgNjAsIDIxNSwgMTMxLCAxNTEsIDI1MSwgMTM2LCAyMzIsIDE2MywgCi0gICAgMTIyLCAyNDUsIDE0NiwgMjUxLCAxMzYsIDIzMiwgMTYzLCAxMjIsIDIyNCwgMTY3LCAyNTEsIDEzNiwgMjMyLCAxNjMsIAotICAgIDEzMywgMjQ1LCAxNDQsIDI1MSwgMTM2LCAyMzIsIDE2MywgMTUxLCAyNTEsIDEzNiwgMjMyLCAxNjMsIDI0NCwgNTAsIDI0NSwgCi0gICAgMTQ0LCAyNTEsIDEzNiwgMjMyLCAxNjMsIDEzMywgMjI0LCAxNjUsIDI1MSwgMTM2LCAyMzIsIDE2MywgMjIxLCA0MywgMjQ1LCAKLSAgICAxNDQsIDI1MSwgMTM2LCAyNDMsIDIwMCwgMjUxLCAxMzYsIDQyLCAyMjEsIDQzLCAyNDUsIDE0NCwgMjUxLCAxMzYsIDQyLCAKLSAgICAxMzMsIDIyNCwgMTY1LCAyNTEsIDEzNiwgNDIsIDI0NCwgNTAsIDI0NSwgMTQ0LCAyNTEsIDEzNiwgNDIsIDE1MSwgMjUxLCAKLSAgICAxMzYsIDQyLCAxMzMsIDI0NSwgMTQ0LCAyNTEsIDEzNiwgNDIsIDEyMiwgMjI0LCAxNjcsIDI1MSwgMTM2LCA0MiwgMTIyLCAKLSAgICAyNDUsIDE0NiwgMjUxLCAxMzYsIDQ2LCAxNTEsIDI1MSwgMTM2LCAxNzcsIDIyMSwgMTQsIDIzMSwgMTQ3LCAyMjEsIDE0LCAKLSAgICAyNDgsIDEwNywgMjIxLCAxNCwgMjE1LCAxMzEsIDEyMiwgMjQ1LCAxNDYsIDI1MSwgMTM2LCA0NiwgMTIyLCAyNDUsIDE0NiwgCi0gICAgMjUxLCAxMzYsIDIyNCwgMTcxLCAyMzIsIDE2MywgMjMzLCA3MCwgMjI0LCAxNzEsIDIzMiwgMTYzLCAyMjMsIDE0OCwgMjI0LCAKLSAgICAxNzEsIDIxNSwgMTMxLCAyMzMsIDcwLCAyMjQsIDE3MSwgMjE1LCAxMzEsIDQyLCAyNCwgMjMyLCAxNjMsIDQyLCAyNCwgCi0gICAgMjMyLCAxNjMsIDIyMywgMTQ4LCAyMjQsIDE3MSwgMjE1LCAxMzEsIDQyLCAyNCwgMjMyLCAxNjMsIDIyMywgMTQ4LCAyMjQsIAotICAgIDE3MSwgMjE1LCAxMzEsIDQyLCAyNCwgMjE1LCAxMzEsIDQ2LCAyNCwgMjMyLCAxNjMsIDIzMywgNzAsIDIyNCwgMTcxLCAKLSAgICAyMTUsIDEzMSwgNDIsIDI0LCAyMTUsIDEzMSwgNDYsIDI0LCAyMzIsIDE2MywgMjIzLCAxNDgsIDIyNCwgMTcxLCAyMTUsIAotICAgIDEzMSwgMjIzLCAxNDgsIDIyNCwgMTcxLCAyMTUsIDEzMSwgNDYsIDI0LCAyMzIsIDE2MywgMjMzLCA3MCwgMjI0LCAxNzEsIAotICAgIDIxNSwgMTMxLCA0NiwgMjQsIDIzMiwgMTYzLCA0MiwgMjQsIDIzMiwgMTYzLCAyMjMsIDE0OCwgODMsIDIxOSwgMTY2LCA2NywgCi0gICAgMjE5LCAxNjYsIDY3LCA0MSwgMiwgMjIzLCA4NSwgMjQ5LCA5OCwgNjcsIDQxLCAyNDksIDEyNiwgODMsIDMsIDIxOSwgMTY2LCAKLSAgICA0MSwgMiwgMTk5LCAyNDQsIDc0LCA0MSwgMiwgNzEsIDI0NCwgNzQsIDQxLCAyLCAyMjcsIDExLCAyNDksIDY2LCAyNDQsIAotICAgIDc0LCA0MSwgMiwgMjE1LCAxMzEsIDQyLCAyMTEsIDIxMSwgMjMyLCAxNjMsIDQ2LCAyNDQsIDc0LCA0MSwgMiwgMjE1LCAKLSAgICAxMzEsIDQ2LCAyMTEsIDIxMSwgMjMyLCAxNjMsIDQyLCAyNDQsIDc0LCA0MSwgMiwgMjQ3LCAyMDcsIDI0OSwgNjYsIDI0NCwgCi0gICAgNzQsIDgzLCAzLCAyMTksIDE2NiwgNjcsIDMsIDIxOSwgMTY2LCA4MywgMjI0LCA5LCA2NywgMjI0LCA5LCA4MywgNzEsIAotICAgIDIyNCwgOSwgNjcsIDcxLCAyMjQsIDksIDgzLCAyMjYsIDEzNCwgNjcsIDIyNiwgMTM0LCA4MywgMjE1LCAxMzMsIDIxNiwgCi0gICAgMTgzLCA2NywgMjE1LCAxMzMsIDIxNiwgMTgzLCA4MywgMjE1LCAxMzMsIDMsIDIxNiwgMTgzLCA2NywgMjE1LCAxMzMsIDMsIAotICAgIDIxNiwgMTgzLCA4MywgMjIzLCAxNDQsIDIxNiwgMTgzLCA2NywgMjIzLCAxNDQsIDIxNiwgMTgzLCA4MywgMjIzLCAxNDQsIAotICAgIDMsIDIxNiwgMTgzLCA2NywgMjIzLCAxNDQsIDMsIDIxNiwgMTgzLCA4MywgMjIzLCAxNDQsIDIyNSwgMTQyLCA2NywgMjIzLCAKLSAgICAxNDQsIDIyNSwgMTQyLCA4MywgMjQ2LCA1OSwgMjE2LCAxODMsIDY3LCAyNDYsIDU5LCAyMTYsIDE4MywgODMsIDI0NiwgNTksIAotICAgIDMsIDIxNiwgMTgzLCA2NywgMjQ2LCA1OSwgMywgMjE2LCAxODMsIDgzLCAyMzMsIDY2LCAyMTYsIDE4MywgNjcsIDIzMywgCi0gICAgNjYsIDIxNiwgMTgzLCA4MywgMjMzLCA2NiwgMywgMjE2LCAxODMsIDY3LCAyMzMsIDY2LCAzLCAyMTYsIDE4MywgODMsIAotICAgIDIzMywgNjYsIDIyNSwgMTQyLCA2NywgMjMzLCA2NiwgMjI1LCAxNDIsIDgzLCAyNDcsIDIwMCwgNjcsIDI0NywgMjAwLCA2NywgCi0gICAgMjQ3LCAyMDEsIDI0OSwgMTI2LCA4MywgMywgMjQ3LCAyMDAsIDI0NCwgNTgsIDIzMiwgMTU5LCA2NywgMjQ5LCAyMjgsIAotICAgIDI0NiwgNzIsIDI0OSwgMjI4LCAyNDksIDIyOSwgMiwgNzEsIDI0NCwgNzQsIDI1MSwgNDAsIDgzLCAyNDksIDIyOCwgMjQ5LCAKLSAgICAyMjksIDIsIDQyLCAxNTEsIDI1MSwgMTQ0LCAyNDksIDIyOSwgMiwgNDYsIDE1MSwgMjUxLCAxNDQsIDI0OSwgMjI5LCAyLCAKLSAgICAyMzIsIDE2MywgMTUxLCAyNTEsIDE0NCwgMjQ5LCAyMjksIDIsIDIxNSwgMTMxLCAxNTEsIDI1MSwgMTQ0LCAyNDksIDIyOSwgCi0gICAgMiwgMjE1LCAxMzEsIDQ2LCAyMjQsIDE3MSwgMjUxLCAxNDQsIDI0OSwgMjI5LCAyLCAyNTQsIDY0LCAyNTEsIDE3LCAyMTUsIAotICAgIDEzMSwgNDIsIDIyNCwgMTcxLCAyNTEsIDE0NCwgNDIsIDE1MSwgODMsIDI0OSwgMjI4LCA0NiwgMTUxLCA4MywgMjQ5LCAKLSAgICAyMjgsIDIzNSwgMTkyLCAyNTEsIDQyLCAyMzUsIDE5MiwgNjcsIDI0OSwgMjI4LCAyMTUsIDEzMSwgMTUxLCAyMzUsIDE5MiwgCi0gICAgNjcsIDI0OSwgMjI4LCAyMzIsIDE2MywgMTUxLCAyMzUsIDE5MiwgNjcsIDI0OSwgMjI4LCAyMTUsIDEzMSwgNDIsIDIyNCwgCi0gICAgMTcxLCAyNDksIDIyNiwgMjUzLCAxOTUsIDIxNSwgMTMxLCA0NiwgMjI0LCAxNzEsIDI0OSwgMjI2LCAyNTMsIDE5NSwgMjMyLCAKLSAgICAxNjMsIDQ2LCAyMjQsIDE3MSwgMjQ5LCAyMjYsIDI1MywgMTk1LCAyMzIsIDE2MywgNDIsIDIyNCwgMTcxLCAyNDksIDIyNiwgCi0gICAgMjUzLCAxOTUsIDIxNSwgMTMxLCAxNTEsIDI0OSwgMjI4LCAyMzIsIDE2MywgMTUxLCAyNDksIDIyOCwgODMsIDIzMiwgMTYzLCAKLSAgICA0NiwgMjE2LCAxODMsIDgzLCAyMzIsIDE2MywgNDIsIDIxNiwgMTgzLCA4MywgMjE1LCAxMzEsIDQyLCAyMTYsIDE4MywgODMsIAotICAgIDIxNSwgMTMxLCA0NiwgMjE2LCAxODMsIDY3LCAyNTEsIDQyLCA0MSwgMiwgNDIsIDE1MSwgMjUxLCAxNDQsIDQxLCAyLCA0NiwgCi0gICAgMTUxLCAyNTEsIDE0NCwgNDEsIDIsIDIxNSwgMTMxLCA0MiwgMjQ3LCAyMDcsIDE1MSwgMjUxLCAxNDQsIDQxLCAyLCAyMzIsIAotICAgIDE2MywgNDYsIDI0NywgMjA3LCAxNTEsIDI1MSwgMTQ0LCA2NywgNDEsIDIsIDcxLCAyNTEsIDE1NSwgMjMyLCAyNDIsIDY3LCAKLSAgICAyMTUsIDEzMywgMjE2LCAxODQsIDIsIDI0NywgNzQsIDIxNSwgMTMzLCAyMTYsIDE4NCwgMiwgNDIsIDE1MSwgMjUxLCAxNDQsIAotICAgIDIxNSwgMTMzLCAyMTYsIDE4NCwgMiwgNDYsIDE1MSwgMjUxLCAxNDQsIDIzMywgMTA4LCAyNDksIDIyOCwgNjcsIDQxLCAyLCAKLSAgICAyMTUsIDEzMSwgNDIsIDIyNCwgMTcwLCA2NywgNDEsIDIsIDIzMiwgMTYzLCA0MiwgMjI0LCAxNzAsIDY3LCA0MSwgMiwgCi0gICAgMjMyLCAxNjMsIDQ2LCAyMjQsIDE3MCwgNjcsIDQxLCAyLCAyMTUsIDEzMSwgNDYsIDIyNCwgMTcwLCA2NywgMjQ5LCAyMjksIAotICAgIDIsIDIxNSwgMTMxLCA0MiwgMjI0LCAxNzAsIDY3LCAyNDksIDIyOSwgMiwgMjMyLCAxNjMsIDQyLCAyMjQsIDE3MCwgNjcsIAotICAgIDI0OSwgMjI5LCAyLCAyMzIsIDE2MywgNDYsIDIyNCwgMTcwLCA2NywgMjQ5LCAyMjksIDIsIDIxNSwgMTMxLCA0NiwgMjI0LCAKLSAgICAxNzAsIDIxNSwgMTMxLCA0MiwgMjE2LCAxODMsIDIxNSwgMTMxLCA0NiwgMjE2LCAxODMsIDIzMiwgMTYzLCA0MiwgMjE2LCAKLSAgICAxODMsIDY3LCAyMzEsIDE0NywgMjE5LCAxNjYsIDgzLCAyMzEsIDE0NywgMjE5LCAxNjYsIDY3LCAyMzEsIDE0NywgMywgCi0gICAgMjE5LCAxNjYsIDgzLCAyMzEsIDE0NywgMywgMjE5LCAxNjYsIDIzMiwgMTYzLCA0NiwgMjE2LCAxODMsIDgzLCAyMTgsIAotICAgIDIzOSwgMiwgMjI0LCAyNSwgMjQ5LCAxODQsIDIxNSwgMTY0LCAyMTksIDI0NCwgMjQ5LCAxNjAsIDgzLCAyMTksIDk1LCA2NywgCi0gICAgMjE5LCA5NSwgMjMzLCAwLCAyMTcsIDg2LCAyMTgsIDIzOCwgMjUzLCAxNDksIDIyOCwgMTgyLCAyNDcsIDI0NSwgMjI4LCAKLSAgICAxODIsIDI0OSwgMTM1LCAyMjcsIDI5LCA4MywgMjE3LCAyMDksIDY3LCAyMTcsIDIwOSwgMjUyLCA3NSwgMjUxLCA4OSwgCi0gICAgMjUyLCA3NSwgOTIsIDIsIDI1MCwgNjUsIDI1MiwgNzUsIDkyLCAyLCAyMTMsIDE2NiwgMjIyLCAxNjksIDIxNSwgMTY1LCAyLCAKLSAgICAyMjQsIDUxLCAyNDYsIDM5LCAyNDAsIDIzMCwgMjUxLCAxOTksIDY3LCAyMjAsIDE4MiwgMjI1LCAyMzMsIDgzLCAyMjAsIAotICAgIDE4MiwgMjI1LCAyMzMsIDIyMSwgMTAsIDIyMywgMjAyLCAyMjMsIDg5LCAyNDQsIDI0LCAyNDEsIDIxMiwgMjUxLCA0MiwgCi0gICAgODMsIDQyLCAyMjUsIDE0MSwgMjM1LCAyMzksIDgzLCA0NiwgMjI1LCAxNDEsIDIzNSwgMjM5LCA2NywgNDIsIDIyNSwgMTQxLCAKLSAgICAyMzUsIDIzOSwgNjcsIDExNCwgMjI1LCAxNDEsIDIzNSwgMjM5LCA2NywgNDYsIDIyNSwgMTQxLCAyMzUsIDIzOSwgNjcsIAotICAgIDExOSwgMjI1LCAxNDEsIDIzNSwgMjM5LCAyMjAsIDI5LCAyNCwgMjQ5LCA2OSwgMjUwLCAxNTIsIDUyLCAyMjQsIDYyLCA1MiwgCi0gICAgMjUxLCAxNjIsIDUyLCAyNTAsIDIxMSwgMjU0LCAxMywgMjI3LCAxMiwgMjQ5LCA3MCwgMjUwLCA0OCwgMjIzLCAxOTAsIAotICAgIDI0OSwgNzEsIDY1LCAyMzIsIDE3MywgMjQ5LCA3MSwgNjUsIDIzNSwgMTE3LCAyMTksIDk2LCAyNCwgMjQ5LCA3NiwgMjQ0LCAKLSAgICAxMzYsIDg3LCAyNTQsIDE1MywgMjIxLCAxMiwgMjQyLCA1LCAyNCwgMjIwLCAxMTUsIDIyNiwgOTUsIDg3LCAyMTIsIDI0NSwgCi0gICAgMjEzLCA1OCwgMjE2LCAxNzMsIDMxLCAyNDEsIDIwNywgMjE2LCAxNzMsIDMxLCAyMzMsIDEzMSwgMjE2LCAxNzMsIDMxLCAKLSAgICAyNDQsIDY1LCAyMTYsIDE3MywgMzEsIDIxNywgODcsIDIxNiwgMTczLCAzMSwgMjEzLCAyMjQsIDIxNiwgMTczLCAzMSwgCi0gICAgMjE0LCAyNCwgMjE2LCAxNzMsIDMxLCAyMzAsIDE4NSwgMjE2LCAxNzMsIDMxLCAyNDUsIDE3OSwgMjEzLCAyNDIsIDY1LCAKLSAgICAyNDcsIDIyNiwgNjcsIDI0MywgMjA5LCAyNDQsIDE1OCwgNjcsIDIyMCwgMiwgMjQ0LCAxNTgsIDgzLCAyMjAsIDIsIDI0NCwgCi0gICAgMTU4LCA2NywgMjE4LCAyMzksIDIsIDIyNCwgMjUsIDI0NCwgNjEsIDIyNCwgMTY3LCAyMzAsIDE5OCwgMjMzLCAxMDMsIAotICAgIDIyNCwgMTY3LCAyMzAsIDE5OCwgMjMxLCAxMTgsIDI0NCwgMTA3LCA1MiwgMjQ1LCAxNzksIDIzMSwgMjUzLCA1MiwgMjM1LCAKLSAgICA0MSwgMjIyLCAxMzcsIDIxNSwgMTE2LCAyMjksIDE3NSwgMjI1LCAxNTQsIDI1MywgMTgzLCAyMTcsIDI0NywgMjQzLCAyOCwgCi0gICAgMjUwLCAxOTEsIDIzMywgNDMsIDIxNCwgMTMxLCAyMzMsIDEwLCAyMjIsIDExMCwgMjIyLCAxODgsIDI1MCwgMTgwLCAyNTMsIAotICAgIDIxMiwgMjI1LCAxODQsIDY3LCAyNTAsIDU0LCAyMzQsIDg3LCA2NywgMjUwLCA1NCwgMjI0LCAxNTksIDY3LCAyNTAsIDU0LCAKLSAgICAyMjMsIDk3LCA2NywgMjUwLCA1NCwgMjUxLCAxNTQsIDY3LCAyNTAsIDU0LCAyMzQsIDM5LCA2NywgMjUwLCA1NCwgMjI2LCAKLSAgICAxMDUsIDgzLCAyNTAsIDU0LCAyMzQsIDg3LCA4MywgMjUwLCA1NCwgMjI0LCAxNTksIDgzLCAyNTAsIDU0LCAyMjMsIDk3LCAKLSAgICA4MywgMjUwLCA1NCwgMjUxLCAxNTQsIDgzLCAyNTAsIDU0LCAyMzQsIDM5LCA4MywgMjUwLCA1NCwgMjI2LCAxMDUsIDgzLCAKLSAgICAyMTksIDIwNCwgMjE4LCAyNTEsIDY3LCAyNDEsIDIxMiwgMjE4LCAyNTEsIDY3LCAyNDcsIDIwMSwgMjE4LCAyNTEsIDgzLCAKLSAgICAyNDksIDE4MiwgMjE4LCAyNTEsIDY3LCAyMTksIDIwNCwgMjE4LCAyNTEsIDgzLCAyNDEsIDIxMiwgMjE4LCAyNTEsIDgzLCAKLSAgICAyNDcsIDIwMSwgMjE4LCAyNTEsIDY3LCAyNDksIDE4MiwgMjE4LCAyNTEsIDI0MCwgMjMwLCAyMTksIDE3MCwgMjI0LCAxNjcsIAotICAgIDIyOCwgMTU4LCAyNDUsIDE0NiwgMjI4LCAxNTgsIDI1MSwgMjQ5LCAyNDUsIDE0NiwgMjI4LCAxNTMsIDI1MSwgMjQ5LCAKLSAgICAyMjAsIDQ2LCAyMjgsIDE1MywgMjMwLCAxMjcsIDI0NCwgMzUsIDUyLCAyMzAsIDEyNywgMjMwLCA5LCA1MiwgMjMwLCAxMjcsIAotICAgIDIyMCwgMjU1LCA1MiwgMjEzLCAyNTAsIDE3NSwgMjQ5LCA3MCwgMjQ1LCAxNzYsIDE3NSwgMjQ5LCA3MCwgMjE1LCAxNDIsIAotICAgIDIyNCwgNSwgODcsIDIyNCwgNSwgMTYsIDMxLCAyMTYsIDE0LCAyMjUsIDE2NiwgMjI0LCA1LCAxNiwgMzEsIDIxNiwgMTMsIAotICAgIDIyNSwgMTY2LCAyMjQsIDUsIDE2LCAzMSwgMjE2LCAxMiwgMjI1LCAxNjYsIDIyNCwgNSwgMTYsIDMxLCAyMTYsIDExLCAKLSAgICAyMjUsIDE2NiwgMjI0LCA1LCAxNiwgMzEsIDIxNiwgMTAsIDIyNSwgMTY2LCAyMjQsIDUsIDE2LCAzMSwgMjE2LCA5LCAyMjUsIAotICAgIDE2NiwgMjI0LCA1LCAxNiwgMzEsIDIxNiwgOCwgMjI1LCAxNjYsIDIyNCwgNSwgMTYsIDMxLCAyNDMsIDI2LCAyMzEsIDIwMSwgCi0gICAgODMsIDIxNSwgMTQyLCAyMjQsIDUsIDg3LCAyMjQsIDYsIDIyNiwgMTQ4LCA4NywgMjI2LCAxMjQsIDIyNiwgMTQ4LCA4NywgCi0gICAgMjI2LCA0OSwgMjI2LCAxNDgsIDUyLCAyMTMsIDI0MCwgODcsIDI0NywgMTkzLCAyNDQsIDE1NywgMjQ3LCAxOTMsIDI0NCwgCi0gICAgMTU2LCAyNDcsIDE5MywgMjQ0LCAxNTUsIDI0NywgMTkzLCAyNDQsIDE1NCwgMjQ3LCAxOTMsIDI0NCwgMTUzLCAyNDcsIAotICAgIDE5MywgMjQ0LCAxNTIsIDY3LCAyNDksIDIyOSwgMiwgNjIsIDIyMywgMTQ4LCA2NywgMjQ5LCAyMjksIDIsIDExNywgMjQ3LCAKLSAgICA3MiwgODMsIDI0OSwgMjI5LCAyLCA2NywgNjIsIDIyMywgMTQ4LCA4MywgMjQ5LCAyMjksIDIsIDExNywgNjcsIDI0NywgNzIsIAotICAgIDIzMCwgMjEyLCAzMSwgMjEzLCA1OCwgMjMwLCAyMTIsIDMxLCAyMTIsIDI0NCwgMjQ3LCAxNzYsIDMxLCAyNDIsIDEwOCwgCi0gICAgMjEzLCA1OCwgMjQ3LCAxNzYsIDMxLCAyMzMsIDM3LCAyMTIsIDI0NCwgMjQ3LCAxNzYsIDMxLCAyMzMsIDM3LCAyMTMsIDU4LCAKLSAgICAyNDcsIDE3NiwgMzEsIDI0MiwgMTA4LCAyMTIsIDI0NCwgNjcsIDI0NCwgNDIsIDgzLCAyNDQsIDQyLCAyNDIsIDUsIDI0LCAKLSAgICAyMjUsIDIzNiwgMjU0LCAyOSwgMjQ5LCA2OCwgMjE4LCAxODAsIDIxOSwgMTAzLCA2NSwgMjU0LCAxMzEsIDIyMiwgMTI0LCAKLSAgICAyNTQsIDc3LCAyNDQsIDIwLCAyNDMsIDM2LCAyMTksIDEwMywgNjUsIDI0MSwgMTg3LCAyNTMsIDExNSwgODcsIDI0NCwgMzEsIAotICAgIDIyNiwgMjUwLCA2NywgMjE5LCA5NSwgMTMzLCAyMzIsIDIzNywgMjQ5LCAxMTQsIDIyMywgMTQ4LCAxMzMsIDIzMiwgMjM3LCAKLSAgICAyNDksIDExNCwgMjMzLCA3MCwgMjE0LCAzNCwgNTIsIDEyNCwgMjE0LCAxMTEsIDUyLCAyNDYsIDY0LCAyNDQsIDEwNywgNTIsIAotICAgIDI0NiwgNjQsIDIzMSwgMjUzLCA1MiwgMjM1LCAyMDAsIDI0NCwgMTA3LCAyNCwgMjMxLCAyNTMsIDUyLCAyMzEsIDI1MywgCi0gICAgMjQsIDI0NCwgMTA3LCA1MiwgMjMxLCAyNTMsIDIsIDIxOSwgNDUsIDUyLCAyMzEsIDI1MywgMiwgMjE5LCA0NSwgMjQsIAotICAgIDIzMSwgMjUzLCAyNCwgMjQ0LCAxMDcsIDUyLCA3MSwgMjMxLCAyNTMsIDIsIDIxOSwgNDUsIDUyLCAxOTksIDIzMSwgMjUzLCAKLSAgICAyLCAyMTksIDQ1LCA1MiwgMjMxLCAxNDcsIDY3LCAyNDksIDIyOCwgMjMxLCAxNDcsIDgzLCAyNDksIDIyOCwgMjMxLCAxNDcsIAotICAgIDMsIDY3LCAyNDksIDIyOCwgMjMxLCAyMTYsIDg3LCAyNDcsIDExOSwgODcsIDIxNSwgMTQwLCAyMjYsIDEyMywgODcsIDI0OSwgCi0gICAgMTY5LCAyNDMsIDE5NiwgMjE1LCAxMTIsIDIyOSwgMTcwLCAyNTAsIDk1LCAyMjYsIDE4OCwgMjM1LCA0NywgMjE0LCAxNjIsIAotICAgIDI1MCwgMzAsIDgzLCAyMzAsIDE5OSwgMjMyLCAyNTMsIDIyMSwgMzMsIDIyMSwgNjcsIDIyNCwgMTUwLCAyMjEsIDUxLCAKLSAgICAyMTksIDIzOSwgMjUyLCA3OCwgMjUyLCA0NiwgOTEsIDIzNCwgMTQ0LCA2NywgMjQ2LCA0OCwgMjMxLCAyNDgsIDY3LCAyNDYsIAotICAgIDQ4LCAyMzQsIDg3LCA4MywgMjQ2LCA0OCwgMjMxLCAyNDgsIDgzLCAyNDYsIDQ4LCAyMzQsIDg3LCAyMTksIDI0NSwgMjEzLCAKLSAgICAyMTYsIDIxOSwgMjQ4LCAyMTgsIDIzOSwgMjUxLCAyMjcsIDI0OSwgMTg0LCAyMjQsIDUwLCA4MywgMjE5LCAyNDQsIDIxNywgCi0gICAgODgsIDI0OSwgMTg1LCAyNCwgMjI0LCA1MCwgMjE2LCA1OCwgNjcsIDIyMCwgMTgyLCAyMjUsIDIzMywgMjE2LCA1OCwgODMsIAotICAgIDIyMCwgMTgyLCAyMjUsIDIzMywgNjcsIDI0NywgMjAxLCAyMzUsIDI1MiwgMjE5LCAxNjYsIDI0OSwgNjUsIDIzMywgMTE1LCAKLSAgICAyNDcsIDE0NSwgMjUwLCAxNzYsIDIyNywgMzIsIDIyNSwgMjM2LCAyNTAsIDE3NywgMjIwLCAxNiwgMjQxLCAxOTYsIDIsIAotICAgIDY3LCAyNDksIDcwLCAzNiwgMjQ5LCA2NSwgMjMzLCAxMTUsIDI1MCwgODgsIDIyOCwgMTg2LCAyNDUsIDgzLCAyNTQsIDUwLCAKLSAgICAyMjcsIDU3LCA0MiwgMjE0LCAxMCwgMjE2LCAyMDgsIDgzLCAyMTYsIDIxLCA0MiwgMjE0LCAxMCwgMjE2LCAyMDgsIDY3LCAKLSAgICAyMTYsIDIxLCA0MiwgMjE0LCAxMCwgMjE2LCAyMDgsIDgzLCA0MiwgMjMzLCAxMTYsIDIzMSwgMTE3LCA2NywgNDIsIDIzMywgCi0gICAgMTE2LCAyMzEsIDExNywgMjQ2LCA0NCwgMjIwLCAxMCwgNTIsIDEwNywgNjcsIDI0NiwgNTksIDIxNiwgMTgzLCA0MiwgMjQ5LCAKLSAgICAxOTMsIDI0NSwgODMsIDkxLCAyMjIsIDE2OSwgMjQ0LCAxNDMsIDI0NywgMjA3LCAyMzUsIDI1MiwgNjcsIDI0OSwgMjI5LCAKLSAgICAyMzUsIDI1MiwgODMsIDIxOSwgMTY2LCA4MywgMjE2LCAxNTAsIDIyMywgMjEyLCA0MiwgMjQ1LCA4MiwgMjIzLCAyMTIsIAotICAgIDQyLCAyNDUsIDgxLCAyNTMsIDEyNywgMTYsIDMxLCAyMTUsIDExNiwgMTA3LCAyNDksIDIyOSwgMiwgMjE5LCA0NSwgMjQsIAotICAgIDExNywgMTc2LCA0OSwgMjI2LCA2NCwgMjIzLCAxNDUsIDIzNSwgMjAyLCAyMjYsIDY0LCAyMzMsIDY3LCAyMzUsIDIwMiwgCi0gICAgMjI2LCA2NCwgMjM1LCAxOTEsIDIyNiwgNjQsIDgzLCAyNDksIDcxLCAyMjcsIDYzLCAyMjAsIDIwOSwgMjIwLCAxOTcsIAotICAgIDIyMCwgMTU0LCAyNDksIDI1NCwgMjUwLCAxNTgsIDI0MSwgMTQzLCAyMjAsIDU0LCAyNDMsIDM3LCAyMTMsIDIxNiwgMjQwLCAKLSAgICAyMTAsIDI0MywgMzcsIDIsIDI0MSwgMjUxLCAyMzEsIDIzNiwgMTYsIDMxLCAyMzMsIDEsIDIzMCwgMTg1LCAyMTUsIDE2NSwgCi0gICAgMjI3LCA2MywgMjQyLCAxMDAsIDI0MywgMjM4LCAyNDQsIDQzLCAyMzUsIDI1MiwgMjQxLCA0NSwgMjQ0LCA5OCwgMjIyLCAKLSAgICAxODUsIDQxLCAyNDMsIDIzNywgMjQ5LCA5OCwgMjIwLCAzMiwgMjQwLCAxMDUsIDIyMCwgMzUsIDIyNiwgNDQsIDIsIDI1MiwgCi0gICAgNzgsIDIxNywgMTk1LCAyMzUsIDEzMSwgMjUyLCA2NSwgODcsIDI0MSwgMjE1LCAyNDIsIDExMCwgODcsIDI0MywgMjAzLCAKLSAgICAyMjUsIDI4LCAyNDksIDQ0LCAyMjcsIDYzLCA4MywgMjE5LCAxNjYsIDY3LCAyNDQsIDQzLCAyLCAxOTksIDIzMSwgMzcsIAotICAgIDgzLCAyMTksIDQ2LCAyMTUsIDEzMSwgMjUxLCAxNDAsIDIyMiwgMTEyLCA4MywgMjIyLCAxMTIsIDIzMiwgMTYzLCAyNTEsIAotICAgIDE0MCwgMjIyLCAxMTIsIDY3LCAyMjIsIDExMiwgNjcsIDEwNywgMjUwLCA2NiwgNzcsIDIxNywgMjEwLCAyMzIsIDIwNiwgCi0gICAgNTIsIDIxOCwgNCwgMjQ2LCA0MywgMjU0LCA5OSwgMjQ1LCA3OCwgMjI0LCA0OCwgMjQ0LCA1NCwgMjI0LCA0OCwgMjQxLCAKLSAgICAyNTQsIDIxNCwgMTUyLCAyNDEsIDI1NCwgMjEzLCAxODYsIDI0MSwgMjU0LCAyMzIsIDE2MywgNDYsIDIyNiwgNzMsIDIyNiwgCi0gICAgNzMsIDIxNSwgMTMxLCA0NiwgMjI2LCA3MywgNjcsIDIyOSwgNjEsIDgzLCAyMjksIDYxLCAyNTAsIDY2LCA3NywgMTA3LCAKLSAgICAyNTAsIDY2LCA3NywgMjMwLCAxNTQsIDIxMywgMTY2LCAxMDcsIDIzMCwgMTU0LCAyMTMsIDE2NiwgMjUyLCA3NSwgMjEzLCAKLSAgICAxNjYsIDEwNywgMjUyLCA3NSwgMjEzLCAxNjYsIDIyNiwgMjUwLCAyNSwgMjQ5LCA3MCwgMTA3LCAyNSwgMjQ5LCA3MCwgCi0gICAgMjI3LCA0MCwgMjUwLCAxMDksIDI0OSwgNzAsIDEwNywgMjI3LCA0MCwgMjUwLCAxMDksIDI0OSwgNzAsIDcsIDI0OSwgNzAsIAotICAgIDIyMSwgMTMsIDY3LCA3LCAyNDksIDcwLCAyMjYsIDI1MCwgNywgMjQ5LCA3MCwgMjMxLCAyNTAsIDI0OSwgNzAsIDIxOSwgCi0gICAgOTYsIDY1LCAyNDgsIDk1LCAyNDMsIDIzNywgMjE3LCAyMjMsIDI1MywgMTMyLCAyNDMsIDIzNywgMjUyLCA3NiwgMjUzLCAKLSAgICAxMzIsIDEwNywgMjQzLCAyMzcsIDI1MiwgNzYsIDI1MywgMTMyLCAyNDMsIDIzNywgMjQ5LCAxODAsIDI1MywgMTMyLCA4MywgCi0gICAgMjQzLCAyMzcsIDIyNSwgMTQzLCAyMTksIDk1LCA2NywgMjQzLCAyMzcsIDIyNSwgMTQzLCAyMTksIDk1LCAyMTksIDE5OSwgCi0gICAgMjE5LCA1MSwgMjI2LCAyNTAsIDY3LCAyMTksIDk1LCAzNiwgNjcsIDIxOSwgOTUsIDIyNywgNDAsIDI1MCwgMTA5LCA4MywgCi0gICAgMjE5LCA5NSwgODMsIDI1MCwgMTA5LCA2NywgMjE5LCA5NSwgMjI2LCAyNTAsIDgzLCAyMTksIDk1LCAxMDcsIDIyNiwgMjUwLCAKLSAgICA4MywgMjE5LCA5NSwgMjI1LCAxOTIsIDIxOSwgOTUsIDIyMSwgMTMsIDY3LCAyMTksIDk1LCAxMDcsIDI1MywgMTMyLCAyMjcsIAotICAgIDQwLCAyNTAsIDEwOSwgMjUzLCAxMzIsIDI0NSwgMTUwLCAyMTksIDE3NiwgMjUzLCAxMzIsIDI0NSwgMTUwLCAyMjUsIDE0MywgCi0gICAgODMsIDIxOSwgOTUsIDI0NSwgMTUwLCAyMjUsIDE0MywgMjI1LCAxOTIsIDIxOSwgOTUsIDIyMCwgNTMsIDIyNSwgMTQzLCAKLSAgICA4MywgMjE5LCA5NSwgMjQ1LCAxNTAsIDIyNSwgMTQzLCAyMjQsIDcsIDgzLCAyMTksIDk1LCAxMDcsIDI0NSwgMTUwLCAyMjUsIAotICAgIDE0MywgMjI0LCA3LCA4MywgMjE5LCA5NSwgMjE2LCA0MiwgMjI1LCAxNDMsIDgzLCAyMTksIDk1LCAyMjAsIDQ4LCAyMjUsIAotICAgIDE0MywgMjUzLCAxMzIsIDIxNywgMjIzLCAyNTMsIDEzMiwgMjI3LCA0MCwgMjUwLCAxMDksIDIxNywgMjIzLCAyNTMsIDEzMiwgCi0gICAgMTA3LCAyMTcsIDIyMywgMjUzLCAxMzIsIDIyMCwgNTMsIDIyNiwgMzMsIDgzLCAyNCwgNjcsIDI0NCwgMjMsIDgzLCAyNDQsIAotICAgIDIzLCA2NywgMjQ0LCAyMywgMjQ1LCAxNTAsIDIyNiwgMzMsIDIyNiwgMjUwLCA4MywgMjQ0LCAyMywgMzYsIDIyNywgNDAsIAotICAgIDI1MCwgMTA5LCAyNDUsIDE1MCwgMjI1LCAxNDMsIDIxOSwgOTUsIDEwNywgMjE3LCAyMjMsIDIyNSwgMTkyLCAyNTMsIDEzMiwgCi0gICAgMjE5LCAyNDYsIDIxNywgNTksIDIxNiwgMTc2LCAyMTksIDI0NiwgMTA3LCAyNTAsIDUxLCAyMTksIDI0NiwgMjE5LCAyMDEsIAotICAgIDEwNywgMjE5LCAyMDEsIDI1MiwgNzYsIDI1MywgMTMyLCAyNDUsIDE1MCwgMjE3LCAyMjMsIDIyNSwgNTUsIDI1MywgMTMyLCAKLSAgICAxMDcsIDI0NSwgMTUwLCAyMTcsIDIyMywgMjI1LCA1NSwgMjUzLCAxMzIsIDI0OSwgNzEsIDc3LCAyMjEsIDEzLCA2NywgCi0gICAgMjQ5LCAyMjgsIDE0NiwgOTEsIDI0OSwgNzEsIDc3LCAyMzIsIDE2MywgNDYsIDI0NiwgNDEsIDY3LCAyMTksIDE2NiwgMjE1LCAKLSAgICAxMzEsIDQ2LCAyNDYsIDQxLCA2NywgMjE5LCAxNjYsIDIzMiwgMTYzLCA0NiwgMjIxLCAxMywgNjcsIDIxOSwgMTY2LCAyMTUsIAotICAgIDEzMSwgNDYsIDIyMSwgMTMsIDY3LCAyMTksIDE2NiwgODMsIDIyNCwgMTU4LCAxNTIsIDIyNywgMTQsIDY3LCAyMjQsIDE1OCwgCi0gICAgMTUyLCAyMjcsIDE0LCA2NywgMjQ0LCAyNTQsIDE1MiwgMjI3LCAxNCwgODMsIDI0NywgMjAxLCAyMzAsIDI1MSwgNjcsIAotICAgIDIxMywgMTY2LCAxMDcsIDI0NCwgMjU0LCAxNTIsIDg3LCAxNzcsIDcxLCAxMzQsIDIzMSwgMTQ3LCA3MSwgMTM0LCAxMDcsIAotICAgIDcxLCAxMzQsIDEwNywgMjIwLCA4MSwgMjE2LCA1OCwgMjQ5LCAxNTgsIDIyNCwgMTQzLCAxNTIsIDIyNywgMTQsIDEwNywgCi0gICAgMjIwLCA4MSwgMjQ5LCAxNTgsIDIyNCwgMTQzLCAxNTIsIDIyNywgMTQsIDEwNywgNTEsIDIxNiwgNTgsIDI0OSwgMTU4LCAKLSAgICAyMjQsIDE0MywgMTUyLCAyMjcsIDE0LCAxMDcsIDUxLCAyNDksIDE1OCwgMjI0LCAxNDMsIDE1MiwgMjI3LCAxNCwgMTA3LCAKLSAgICAxMTUsIDIyMCwgODEsIDI0OSwgMTU4LCAyMjQsIDE0MywgMTUyLCAyMjcsIDE0LCAxMDcsIDExNSwgNTEsIDI0OSwgMTU4LCAKLSAgICAyMjQsIDE0MywgMTUyLCAyMjcsIDE0LCAyNDksIDMzLCAyMTksIDgwLCAyMjYsIDE0MywgNSwgMjI3LCAxNCwgMTA3LCAyNDQsIAotICAgIDI1NCwgMTUyLCAyMjcsIDE0LCAxMDcsIDI0MSwgMjEyLCAyNDQsIDI1NCwgMTUyLCAyMjcsIDE0LCAxMDcsIDgzLCAyNDEsIAotICAgIDIxMSwgMjIzLCA4OSwgMTA3LCA4MywgMjQxLCAyMTIsIDI1MSwgNDIsIDI0NCwgMjQsIDI0MSwgMjExLCAyMjMsIDg5LCAKLSAgICAyNDQsIDI0LCAyNDEsIDIxMiwgMjUxLCA0MiwgMjMxLCAxNDcsIDQyLCAyMjYsIDEzMiwgMjI3LCAxNCwgMjMxLCAxNDcsIAotICAgIDQ2LCAyMjYsIDEzMiwgMjI3LCAxNCwgMjMxLCAxNDcsIDI0NCwgMzIsIDQyLCAyMjYsIDEzMiwgMjI3LCAxNCwgMjMxLCAKLSAgICAxNDcsIDI0NCwgMzIsIDQ2LCAyMjYsIDEzMiwgMjI3LCAxNCwgMjMxLCAxNDcsIDIzMywgNjYsIDI1NCwgMTksIDI1MSwgODUsIAotICAgIDIyNywgMTQsIDIzMSwgMTQ3LCAyMjMsIDE0NCwgMjU0LCAxOSwgMjUxLCA4NSwgMjI3LCAxNCwgMTA3LCAyMzMsIDY2LCAKLSAgICAyNTQsIDE5LCAyMjQsIDE0MywgMTUyLCAyMjcsIDE0LCAxMDcsIDIyMywgMTQ0LCAyNTQsIDE5LCAyMjQsIDE0MywgMTUyLCAKLSAgICAyMjcsIDE0LCAxMDcsIDIzMywgNjYsIDI1NCwgMTksIDI1MSwgODUsIDIyNywgMTQsIDEwNywgMjIzLCAxNDQsIDI1NCwgMTksIAotICAgIDI1MSwgODUsIDIyNywgMTQsIDE3NywgNDIsIDIxNiwgMjE5LCAyMjAsIDIzMywgMjUxLCA4NSwgMjI3LCAxNCwgMTc3LCA0NiwgCi0gICAgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg1LCAyMjcsIDE0LCAyMzEsIDE0NywgNDIsIDI0OSwgNDAsIDI1MSwgODUsIAotICAgIDIyNywgMTQsIDIzMSwgMTQ3LCA0NiwgMjQ5LCA0MCwgMjUxLCA4NSwgMjI3LCAxNCwgMjQ3LCAxNTYsIDE0NiwgMzYsIDIxLCAKLSAgICAxMTYsIDI0NywgMTU2LCAxNDYsIDM2LCAyMSwgMTA5LCAyNDcsIDE1NiwgMTQ2LCAzNiwgMjEsIDE2NiwgMjQ3LCAxNTYsIAotICAgIDE0NiwgMzYsIDIxLCAxNjMsIDI0NywgMTU2LCAxNDYsIDM2LCAyMSwgMTgwLCAyNDcsIDE1NiwgMTQ2LCAzNiwgMjEsIDE4OSwgCi0gICAgMjQ3LCAxNTYsIDE0NiwgMzYsIDIxLCAxOTgsIDI0NywgMTU2LCAxNDYsIDM2LCAyMSwgMTk1LCAyNDcsIDE1NiwgMTQ2LCAKLSAgICAzNiwgMjEsIDIwMCwgMjQ3LCAxNTYsIDE0NiwgMzYsIDUwLCAyMTcsIDIwMCwgMjQ3LCAxNTYsIDM2LCAzNSwgMjEsIDExNiwgCi0gICAgMjQ3LCAxNTYsIDM2LCAzNSwgMjEsIDEwOSwgMjQ3LCAxNTYsIDM2LCAzNSwgMjEsIDE2NiwgMjQ3LCAxNTYsIDM2LCAzNSwgCi0gICAgMjEsIDE2MywgMjQ3LCAxNTYsIDM2LCAzNSwgMjEsIDE4MCwgMjQ3LCAxNTYsIDM2LCAzNSwgMjEsIDE4OSwgMjQ3LCAxNTYsIAotICAgIDM2LCAzNSwgMjEsIDE5OCwgMjQ3LCAxNTYsIDM2LCAzNSwgMjEsIDE5NSwgMjQ3LCAxNTYsIDM2LCAzNSwgMjEsIDIwMCwgCi0gICAgMjQ3LCAxNTYsIDM2LCAzNSwgNTAsIDIxNywgMjAwLCAyNDcsIDE1NiwgMTQ2LCAzNiwgMzUsIDIxLCAxMTYsIDI0NywgMTU2LCAKLSAgICAxNDYsIDM2LCAzNSwgMjEsIDEwOSwgMjQ3LCAxNTYsIDE0NiwgMzYsIDM1LCAyMSwgMTY2LCAyNDcsIDE1NiwgMTQ2LCAzNiwgCi0gICAgMzUsIDIxLCAxNjMsIDI0NywgMTU2LCAxNDYsIDM2LCAzNSwgMjEsIDE4MCwgMjQ3LCAxNTYsIDE0NiwgMzYsIDM1LCAyMSwgCi0gICAgMTg5LCAyNDcsIDE1NiwgMTQ2LCAzNiwgMzUsIDIxLCAxOTgsIDI0NywgMTU2LCAxNDYsIDM2LCAzNSwgMjEsIDE5NSwgMjQ3LCAKLSAgICAxNTYsIDE0NiwgMzYsIDM1LCAyMSwgMjAwLCAyNDcsIDE1NiwgMTQ2LCAzNiwgMzUsIDUwLCAyMTcsIDIwMCwgMTA3LCAyMTMsIAotICAgIDIzMSwgOTUsIDY4LCAxMDcsIDk0LCA1MiwgMTA3LCAyMzAsIDI1MSwgNTIsIDEwNywgMjQ3LCAxMjEsIDUyLCAxMDcsIDIxOSwgCi0gICAgMjE1LCAyNDUsIDE3NiwgNjgsIDEwNywgOTUsIDY4LCAxMDcsIDIyOCwgMTY3LCAyNDUsIDE3NiwgNjgsIDI0NiwgNTIsIAotICAgIDIyNSwgMTQ1LCA5NSwgNjgsIDEwNywgMjIzLCA4NiwgOTUsIDY4LCAyMTYsIDE4MiwgOTUsIDY4LCAxMDcsIDIxNiwgMTgyLCAKLSAgICA5NSwgNjgsIDI0OCwgMTAwLCAyMTYsIDE4MiwgOTUsIDY4LCAxMDcsIDI0OCwgMTAwLCAyMTYsIDE4MiwgOTUsIDY4LCA4MywgCi0gICAgOTUsIDY4LCAyMTcsIDk3LCAyMTYsIDIyNSwgOTUsIDI1MywgMTY0LCAyMTcsIDk3LCAyNTEsIDk5LCA5NSwgMjUzLCAxNjQsIAotICAgIDgzLCA5NSwgMjUzLCAxNjQsIDEwNywgODMsIDI0OSwgMzMsIDI0NiwgNTgsIDI0LCA5NSwgNjgsIDEwNywgODMsIDI0OSwgCi0gICAgMzMsIDIxNSwgMTI0LCAyNCwgOTUsIDY4LCAyMTksIDE2MywgODMsIDk1LCA2OCwgMTA3LCAyNDksIDE0NSwgODMsIDk1LCAKLSAgICA2OCwgMjIzLCAxNDMsIDY3LCA5NSwgNjgsIDIzMywgNjUsIDY3LCA5NSwgNjgsIDI1MiwgMTAwLCAyMjEsIDEzLCA2NywgOTUsIAotICAgIDY4LCAyNDMsIDIxMSwgMjIxLCAxMywgNjcsIDk1LCA2OCwgMTA3LCAyMzIsIDE2MywgMjIzLCAxNDIsIDY3LCA5NSwgNjgsIAotICAgIDEwNywgMjE1LCAxMzEsIDIyMywgMTQyLCA2NywgOTUsIDY4LCAyMjgsIDE2MCwgMjMyLCAxNjMsIDIyMywgMTQyLCA2NywgCi0gICAgOTUsIDY4LCAyNDksIDQwLCAyMzIsIDE3NywgMjI4LCAxNjAsIDIxNSwgMTMxLCAyMjMsIDE0MiwgNjcsIDk1LCA2OCwgMzYsIAotICAgIDEwNywgNjcsIDk1LCA2OCwgMjEzLCAyMzcsIDk1LCA2OCwgMjUxLCAxNDMsIDIxOSwgMjE1LCAyNDUsIDE3NiwgNjgsIDI1MSwgCi0gICAgMTQzLCA5NSwgNjgsIDI1MSwgMTQzLCAyMjgsIDE2NywgMjQ1LCAxNzYsIDY4LCAxMDcsIDI1MSwgMTQzLCAyMTksIDIxNSwgCi0gICAgMjQ1LCAxNzYsIDY4LCAxMDcsIDI1MSwgMTQzLCA5NSwgNjgsIDEwNywgMjUxLCAxNDMsIDIyOCwgMTY3LCAyNDUsIDE3NiwgCi0gICAgNjgsIDIxNywgMjI1LCA5NSwgNjgsIDEwNywgMjE3LCAyMjQsIDk1LCA2OCwgMjE0LCAyLCA5NSwgNjgsIDEwNywgMjE0LCAyLCAKLSAgICA5NSwgNjgsIDIyNywgMzcsIDk1LCA2OCwgNTEsIDI0OSwgNDAsIDIzMiwgMTc3LCAxMzMsIDI0NywgMTY2LCAyNTQsIDE4LCAKLSAgICA2NywgMjE2LCAxODQsIDI0OSwgMTI2LCAzLCA2NywgMjE2LCAxODMsIDIyNiwgNDcsIDIyNywgNDAsIDIxOSwgOCwgMjI3LCAKLSAgICA0MCwgMjE4LCAyMjEsIDQyLCAyMjMsIDMsIDI1MiwgOTEsIDI0OCwgMTEsIDQ2LCAyMjMsIDMsIDI1MiwgOTEsIDI0OCwgMTEsIAotICAgIDE2NywgMiwgNjIsIDIzNSwgMjEyLCAyMjMsIDIwMywgMjE5LCAyMzIsIDIyNSwgODEsIDIxOSwgOCwgMjE4LCAyMjIsIDIyNSwgCi0gICAgODEsIDIxOSwgMjMxLCA3MSwgMjUyLCA2MCwgMiwgMTk5LCA5MCwgMTg0LCAyNDcsIDEyMCwgOTEsIDIzMiwgMTk5LCAyNTQsIAotICAgIDI3LCA5MSwgMjMyLCAxOTksIDIyNywgMjQsIDY3LCAyNDcsIDIwMSwgMiwgMjUwLCAxMDcsIDI0NywgNzQsIDI0LCAyLCAKLSAgICAyNDcsIDc0LCAyNDUsIDEyNywgNjUsIDIyNywgMzUsIDIxNSwgMTIzLCAyMzIsIDE2MywgNDYsIDI0OSwgMTAwLCAyLCAyNDcsIAotICAgIDc0LCAyMTUsIDEzMSwgNDIsIDI0OSwgMTAwLCAyLCAyNDcsIDc0LCA0MiwgMjI2LCAyNTIsIDIzNSwgNjksIDQ2LCAyMjYsIAotICAgIDI1MiwgMjM1LCA2OSwgMjQzLCAyMDAsIDIyNiwgMjUyLCAyMzUsIDY5LCAyMzMsIDEwOCwgMTE0LCAyMTgsIDM2LCAyMzMsIAotICAgIDEwOCwgMTE5LCAyMTgsIDM2LCA0MiwgMjQsIDQ2LCA1MSwgMjE2LCA1NywgNDIsIDI0LCA0NiwgMjE4LCAzNiwgNDIsIDIzMCwgCi0gICAgMTU3LCAxODQsIDQ2LCAyMTgsIDM2LCAxODQsIDQyLCAyMTgsIDM2LCAxMTQsIDIxOCwgMzcsIDIsIDI0OSwgMjI5LCA0OSwgCi0gICAgMjMyLCAxNjAsIDI0NywgMTI1LCAyNTEsIDcsIDE5OSwgMjIzLCA0NCwgNjcsIDI0OSwgMTQ0LCAyNDcsIDIwMCwgNjcsIAotICAgIDI0OSwgMTQ0LCAyNDcsIDIwMSwgMiwgMTMyLCAyMTcsIDY4LCA2NywgMjQ5LCAxNDQsIDI0NywgMjAxLCAyLCA5NSwgMjE3LCAKLSAgICA2OCwgNjcsIDQxLCAyLCAxMzIsIDIxNywgNjgsIDY3LCA0MSwgMiwgOTUsIDIxNywgNjgsIDE0LCA0MiwgNjcsIDQxLCAxMjUsIAotICAgIDE0LCA0NiwgNjcsIDQxLCAxMjUsIDE0LCA0MiwgMjU0LCAxOSwgMTI1LCAxNCwgNDYsIDI1NCwgMTksIDEyNSwgMTQsIDQyLCAKLSAgICA1MSwgMjU0LCAxOSwgMTI1LCAxNCwgNDYsIDUxLCAyNTQsIDE5LCAxMjUsIDE0LCA0MiwgNjcsIDIxNiwgMjE5LCAyMjAsIAotICAgIDIzMywgMTI1LCAxNCwgNDYsIDY3LCAyMTYsIDIxOSwgMjIwLCAyMzMsIDEyNSwgMTQsIDQyLCAyNDQsIDMyLCAyMjYsIDEzMSwgCi0gICAgMTQsIDQ2LCAyNDQsIDMyLCAyMjYsIDEzMSwgMjE1LCAxMjQsIDIyNCwgMTY5LCA2OCwgMjQ2LCA1OCwgMjI0LCAxNjksIDY4LCAKLSAgICAyNTMsIDI1NSwgMjQzLCA3NCwgMjQ5LCAyMjksIDY4LCAyNDksIDE5NSwgMjQzLCA3NCwgMjQ5LCAyMjksIDY4LCA0NiwgNzYsIAotICAgIDIsIDM2LCAyMjUsIDE1NiwgMTg0LCAxMzIsIDY4LCAxODQsIDk1LCA2OCwgMTg0LCA0MiwgNDYsIDY4LCAxODQsIDEzMiwgCi0gICAgNTEsIDY4LCAxODQsIDk1LCA1MSwgNjgsIDE4NCwgNDIsIDQ2LCA1MSwgNjgsIDE4NCwgMTMyLCA3NiwgMjQzLCAyMTMsIAotICAgIDEzNCwgMTg0LCA5NSwgNzYsIDI0MywgMjEzLCAxMzQsIDE4NCwgMTMyLCA1MSwgNzYsIDI0MywgMjEzLCAxMzQsIDE4NCwgCi0gICAgOTUsIDUxLCA3NiwgMjQzLCAyMTMsIDEzNCwgMTg0LCA5NSwgMjE5LCAxNjIsIDY4LCA0NCwgNDUsIDI1MSwgMTM4LCA0NCwgCi0gICAgNDUsIDI0NywgNzEsIDQ0LCA0NSwgMjQ2LCAxOTksIDQ0LCA0NSwgMjQ3LCA3MCwgNDQsIDQ1LCAyNDYsIDEzNSwgNDQsIDQ1LCAKLSAgICAyNDcsIDYsIDQ0LCA0NSwgMjQ2LCAxOTgsIDQ0LCA0NSwgMjQ3LCA2OSwgNDQsIDQ1LCAyNDYsIDEwMywgNDQsIDQ1LCAyNDYsIAotICAgIDIzMCwgNDQsIDQ1LCAyNDYsIDE2NiwgNDQsIDQ1LCAyNDcsIDM3LCA0NCwgNDUsIDI0NiwgMTM0LCA0NCwgNDUsIDI0NywgNSwgCi0gICAgNDQsIDQ1LCAyNDYsIDE5NywgNDQsIDQ1LCAyNDcsIDY4LCA0NCwgNDUsIDI0NiwgODcsIDQ0LCA0NSwgMjQ2LCAyMTQsIDQ0LCAKLSAgICA0NSwgMjQ2LCAxNTAsIDQ0LCA0NSwgMjQ3LCAyMSwgNDQsIDQ1LCAyNDYsIDExOCwgNDQsIDQ1LCAyNDYsIDI0NSwgNDQsIAotICAgIDQ1LCAyNDYsIDE4MSwgNDQsIDQ1LCAyNDcsIDUyLCA0NCwgNDUsIDI0NiwgMTAyLCA0NCwgNDUsIDI0NiwgMjI5LCA0NCwgCi0gICAgNDUsIDI0NiwgMTY1LCA0NCwgNDUsIDI0NywgMzYsIDQ0LCA0NSwgMjQ2LCAxMzMsIDQ0LCA0NSwgMjQ3LCA0LCA0NCwgNDUsIAotICAgIDI0NiwgMTk2LCA0NCwgNDUsIDI0NywgNjcsIDQ0LCA0NSwgMjQ2LCA3OSwgNDQsIDQ1LCAyNDYsIDIwNiwgNDQsIDQ1LCAKLSAgICAyNDYsIDE0MiwgNDQsIDQ1LCAyNDcsIDEzLCA0NCwgNDUsIDI0NiwgMTEwLCA0NCwgNDUsIDI0NiwgMjM3LCA0NCwgNDUsIAotICAgIDI0NiwgMTczLCA0NCwgNDUsIDI0NywgNDQsIDQ0LCA0NSwgMjQ2LCA5NCwgNDQsIDQ1LCAyNDYsIDIyMSwgNDQsIDQ1LCAKLSAgICAyNDYsIDE1NywgNDQsIDQ1LCAyNDcsIDI4LCA0NCwgNDUsIDI0NiwgMTI1LCA0NCwgNDUsIDI0NiwgMjUyLCA0NCwgNDUsIAotICAgIDI0NiwgMTg4LCA0NCwgNDUsIDI0NywgNTksIDQ0LCA0NSwgMjQ2LCA4NiwgNDQsIDQ1LCAyNDYsIDIxMywgNDQsIDQ1LCAKLSAgICAyNDYsIDE0OSwgNDQsIDQ1LCAyNDcsIDIwLCA0NCwgNDUsIDI0NiwgMTE3LCA0NCwgNDUsIDI0NiwgMjQ0LCA0NCwgNDUsIAotICAgIDI0NiwgMTgwLCA0NCwgNDUsIDI0NywgNTEsIDQ0LCA0NSwgMjQ2LCAxMDEsIDQ0LCA0NSwgMjQ2LCAyMjgsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxNjQsIDQ0LCA0NSwgMjQ3LCAzNSwgNDQsIDQ1LCAyNDYsIDEzMiwgNDQsIDQ1LCAyNDcsIDMsIDQ0LCA0NSwgMjQ2LCAKLSAgICAxOTUsIDQ0LCA0NSwgMjQ3LCA2NiwgNDQsIDQ1LCAyNDYsIDc1LCA0NCwgNDUsIDI0NiwgMjAyLCA0NCwgNDUsIDI0NiwgCi0gICAgMTM4LCA0NCwgNDUsIDI0NywgOSwgNDQsIDQ1LCAyNDYsIDEwNiwgNDQsIDQ1LCAyNDYsIDIzMywgNDQsIDQ1LCAyNDYsIAotICAgIDE2OSwgNDQsIDQ1LCAyNDcsIDQwLCA0NCwgNDUsIDI0NiwgOTAsIDQ0LCA0NSwgMjQ2LCAyMTcsIDQ0LCA0NSwgMjQ2LCAKLSAgICAxNTMsIDQ0LCA0NSwgMjQ3LCAyNCwgNDQsIDQ1LCAyNDYsIDEyMSwgNDQsIDQ1LCAyNDYsIDI0OCwgNDQsIDQ1LCAyNDYsIAotICAgIDE4NCwgNDQsIDQ1LCAyNDcsIDU1LCA0NCwgNDUsIDI0NiwgODIsIDQ0LCA0NSwgMjQ2LCAyMDksIDQ0LCA0NSwgMjQ2LCAKLSAgICAxNDUsIDQ0LCA0NSwgMjQ3LCAxNiwgNDQsIDQ1LCAyNDYsIDExMywgNDQsIDQ1LCAyNDYsIDI0MCwgNDQsIDQ1LCAyNDYsIAotICAgIDE3NiwgNDQsIDQ1LCAyNDcsIDQ3LCA0NCwgNDUsIDI0NiwgOTcsIDQ0LCA0NSwgMjQ2LCAyMjQsIDQ0LCA0NSwgMjQ2LCAKLSAgICAxNjAsIDQ0LCA0NSwgMjQ3LCAzMSwgNDQsIDQ1LCAyNDYsIDEyOCwgNDQsIDQ1LCAyNDYsIDI1NSwgNDQsIDQ1LCAyNDYsIAotICAgIDE5MSwgNDQsIDQ1LCAyNDcsIDYyLCA0NCwgNDUsIDI0NiwgNzgsIDQ0LCA0NSwgMjQ2LCAyMDUsIDQ0LCA0NSwgMjQ2LCAKLSAgICAxNDEsIDQ0LCA0NSwgMjQ3LCAxMiwgNDQsIDQ1LCAyNDYsIDEwOSwgNDQsIDQ1LCAyNDYsIDIzNiwgNDQsIDQ1LCAyNDYsIAotICAgIDE3MiwgNDQsIDQ1LCAyNDcsIDQzLCA0NCwgNDUsIDI0NiwgOTMsIDQ0LCA0NSwgMjQ2LCAyMjAsIDQ0LCA0NSwgMjQ2LCAKLSAgICAxNTYsIDQ0LCA0NSwgMjQ3LCAyNywgNDQsIDQ1LCAyNDYsIDEyNCwgNDQsIDQ1LCAyNDYsIDI1MSwgNDQsIDQ1LCAyNDYsIAotICAgIDE4NywgNDQsIDQ1LCAyNDcsIDU4LCA0NCwgNDUsIDI0NiwgODUsIDQ0LCA0NSwgMjQ2LCAyMTIsIDQ0LCA0NSwgMjQ2LCAKLSAgICAxNDgsIDQ0LCA0NSwgMjQ3LCAxOSwgNDQsIDQ1LCAyNDYsIDExNiwgNDQsIDQ1LCAyNDYsIDI0MywgNDQsIDQ1LCAyNDYsIAotICAgIDE3OSwgNDQsIDQ1LCAyNDcsIDUwLCA0NCwgNDUsIDI0NiwgMTAwLCA0NCwgNDUsIDI0NiwgMjI3LCA0NCwgNDUsIDI0NiwgCi0gICAgMTYzLCA0NCwgNDUsIDI0NywgMzQsIDQ0LCA0NSwgMjQ2LCAxMzEsIDQ0LCA0NSwgMjQ3LCAyLCA0NCwgNDUsIDI0NiwgMTk0LCAKLSAgICA0NCwgNDUsIDI0NywgNjUsIDQ0LCA0NSwgMjQ2LCA3MywgNDQsIDQ1LCAyNDYsIDIwMCwgNDQsIDQ1LCAyNDYsIDEzNiwgNDQsIAotICAgIDQ1LCAyNDcsIDcsIDQ0LCA0NSwgMjQ2LCAxMDQsIDQ0LCA0NSwgMjQ2LCAyMzEsIDQ0LCA0NSwgMjQ2LCAxNjcsIDQ0LCA0NSwgCi0gICAgMjQ3LCAzOCwgNDQsIDQ1LCAyNDYsIDg4LCA0NCwgNDUsIDI0NiwgMjE1LCA0NCwgNDUsIDI0NiwgMTUxLCA0NCwgNDUsIAotICAgIDI0NywgMjIsIDQ0LCA0NSwgMjQ2LCAxMTksIDQ0LCA0NSwgMjQ2LCAyNDYsIDQ0LCA0NSwgMjQ2LCAxODIsIDQ0LCA0NSwgCi0gICAgMjQ3LCA1MywgNDQsIDQ1LCAyNDYsIDgwLCA0NCwgNDUsIDI0NiwgMjA3LCA0NCwgNDUsIDI0NiwgMTQzLCA0NCwgNDUsIAotICAgIDI0NywgMTQsIDQ0LCA0NSwgMjQ2LCAxMTEsIDQ0LCA0NSwgMjQ2LCAyMzgsIDQ0LCA0NSwgMjQ2LCAxNzQsIDQ0LCA0NSwgCi0gICAgMjQ3LCA0NSwgNDQsIDQ1LCAyNDYsIDk1LCA0NCwgNDUsIDI0NiwgMjIyLCA0NCwgNDUsIDI0NiwgMTU4LCA0NCwgNDUsIAotICAgIDI0NywgMjksIDQ0LCA0NSwgMjQ2LCAxMjYsIDQ0LCA0NSwgMjQ2LCAyNTMsIDQ0LCA0NSwgMjQ2LCAxODksIDQ0LCA0NSwgCi0gICAgMjQ3LCA2MCwgNDQsIDQ1LCAyNDYsIDc2LCA0NCwgNDUsIDI0NiwgMjAzLCA0NCwgNDUsIDI0NiwgMTM5LCA0NCwgNDUsIAotICAgIDI0NywgMTAsIDQ0LCA0NSwgMjQ2LCAxMDcsIDQ0LCA0NSwgMjQ2LCAyMzQsIDQ0LCA0NSwgMjQ2LCAxNzAsIDQ0LCA0NSwgCi0gICAgMjQ3LCA0MSwgNDQsIDQ1LCAyNDYsIDkxLCA0NCwgNDUsIDI0NiwgMjE4LCA0NCwgNDUsIDI0NiwgMTU0LCA0NCwgNDUsIAotICAgIDI0NywgMjUsIDQ0LCA0NSwgMjQ2LCAxMjIsIDQ0LCA0NSwgMjQ2LCAyNDksIDQ0LCA0NSwgMjQ2LCAxODUsIDQ0LCA0NSwgCi0gICAgMjQ3LCA1NiwgNDQsIDQ1LCAyNDYsIDgzLCA0NCwgNDUsIDI0NiwgMjEwLCA0NCwgNDUsIDI0NiwgMTQ2LCA0NCwgNDUsIAotICAgIDI0NywgMTcsIDQ0LCA0NSwgMjQ2LCAxMTQsIDQ0LCA0NSwgMjQ2LCAyNDEsIDQ0LCA0NSwgMjQ2LCAxNzcsIDQ0LCA0NSwgCi0gICAgMjQ3LCA0OCwgNDQsIDQ1LCAyNDYsIDk4LCA0NCwgNDUsIDI0NiwgMjI1LCA0NCwgNDUsIDI0NiwgMTYxLCA0NCwgNDUsIAotICAgIDI0NywgMzIsIDQ0LCA0NSwgMjQ2LCAxMjksIDQ0LCA0NSwgMjQ3LCAwLCA0NCwgNDUsIDI0NiwgMTkyLCA0NCwgNDUsIDI0NywgCi0gICAgNjMsIDQ0LCA0NSwgMjQ2LCA3NCwgNDQsIDQ1LCAyNDYsIDIwMSwgNDQsIDQ1LCAyNDYsIDEzNywgNDQsIDQ1LCAyNDcsIDgsIAotICAgIDQ0LCA0NSwgMjQ2LCAxMDUsIDQ0LCA0NSwgMjQ2LCAyMzIsIDQ0LCA0NSwgMjQ2LCAxNjgsIDQ0LCA0NSwgMjQ3LCAzOSwgCi0gICAgNDQsIDQ1LCAyNDYsIDg5LCA0NCwgNDUsIDI0NiwgMjE2LCA0NCwgNDUsIDI0NiwgMTUyLCA0NCwgNDUsIDI0NywgMjMsIDQ0LCAKLSAgICA0NSwgMjQ2LCAxMjAsIDQ0LCA0NSwgMjQ2LCAyNDcsIDQ0LCA0NSwgMjQ2LCAxODMsIDQ0LCA0NSwgMjQ3LCA1NCwgNDQsIAotICAgIDQ1LCAyNDYsIDgxLCA0NCwgNDUsIDI0NiwgMjA4LCA0NCwgNDUsIDI0NiwgMTQ0LCA0NCwgNDUsIDI0NywgMTUsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxMTIsIDQ0LCA0NSwgMjQ2LCAyMzksIDQ0LCA0NSwgMjQ2LCAxNzUsIDQ0LCA0NSwgMjQ3LCA0NiwgNDQsIDQ1LCAKLSAgICAyNDYsIDk2LCA0NCwgNDUsIDI0NiwgMjIzLCA0NCwgNDUsIDI0NiwgMTU5LCA0NCwgNDUsIDI0NywgMzAsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxMjcsIDQ0LCA0NSwgMjQ2LCAyNTQsIDQ0LCA0NSwgMjQ2LCAxOTAsIDQ0LCA0NSwgMjQ3LCA2MSwgNDQsIDQ1LCAKLSAgICAyNDYsIDc3LCA0NCwgNDUsIDI0NiwgMjA0LCA0NCwgNDUsIDI0NiwgMTQwLCA0NCwgNDUsIDI0NywgMTEsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxMDgsIDQ0LCA0NSwgMjQ2LCAyMzUsIDQ0LCA0NSwgMjQ2LCAxNzEsIDQ0LCA0NSwgMjQ3LCA0MiwgNDQsIDQ1LCAKLSAgICAyNDYsIDkyLCA0NCwgNDUsIDI0NiwgMjE5LCA0NCwgNDUsIDI0NiwgMTU1LCA0NCwgNDUsIDI0NywgMjYsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxMjMsIDQ0LCA0NSwgMjQ2LCAyNTAsIDQ0LCA0NSwgMjQ2LCAxODYsIDQ0LCA0NSwgMjQ3LCA1NywgNDQsIDQ1LCAKLSAgICAyNDYsIDg0LCA0NCwgNDUsIDI0NiwgMjExLCA0NCwgNDUsIDI0NiwgMTQ3LCA0NCwgNDUsIDI0NywgMTgsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxMTUsIDQ0LCA0NSwgMjQ2LCAyNDIsIDQ0LCA0NSwgMjQ2LCAxNzgsIDQ0LCA0NSwgMjQ3LCA0OSwgNDQsIDQ1LCAKLSAgICAyNDYsIDk5LCA0NCwgNDUsIDI0NiwgMjI2LCA0NCwgNDUsIDI0NiwgMTYyLCA0NCwgNDUsIDI0NywgMzMsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxMzAsIDQ0LCA0NSwgMjQ3LCAxLCA0NCwgNDUsIDI0NiwgMTkzLCA0NCwgNDUsIDI0NywgNjQsIDk1LCAyMTYsIDI0LCAKLSAgICA3NiwgMiwgNzEsIDkwLCA5NSwgMjE2LCAyNCwgNzYsIDIsIDUxLCA3MSwgOTAsIDEzMiwgNTEsIDc2LCAyLCA3MSwgOTAsIAotICAgIDk1LCA1MSwgNzYsIDIsIDcxLCA5MCwgNDIsIDQ2LCA1MSwgNzYsIDIsIDcxLCA5MCwgOTUsIDIxNiwgMjQsIDc2LCAyNDMsIAotICAgIDIxMywgMTM0LCAxMzIsIDUxLCA3NiwgMjQzLCAyMTMsIDEzNCwgOTUsIDUxLCA3NiwgMjQzLCAyMTMsIDEzNCwgMjQ2LCA1OCwgCi0gICAgNzYsIDIsIDE5OSwgOTAsIDIxNSwgMTI0LCA3NiwgMiwgMTk5LCA5MCwgMjE1LCAxMjQsIDIxNiwgMTY5LCA2OCwgMjQ2LCAKLSAgICA1OCwgMjE2LCAxNjksIDY4LCAxMzIsIDUxLCAyNDgsIDEwMiwgNjgsIDk1LCA1MSwgMjQ4LCAxMDIsIDY4LCAxMzIsIDIxNiwgCi0gICAgMTY5LCAyNDgsIDEwMiwgNjgsIDk1LCAyMTYsIDE2OSwgMjQ4LCAxMDIsIDY4LCA5NSwgMjE2LCAyNCwgMjE2LCAxNjksIAotICAgIDI0OCwgMTAyLCA2OCwgOTUsIDc2LCAyLCAyNDYsIDcyLCAyMTksIDc5LCAyMTUsIDEyNCwgNzYsIDIxMSwgMjExLCAxMzQsIAotICAgIDI0NiwgNTgsIDc2LCAyMTEsIDIxMSwgMTM0LCA5NSwgNzYsIDIsIDIxOCwgMjgsIDIsIDcxLCA5MCwgOTUsIDc2LCAyLCAKLSAgICAyMTgsIDI4LCAyLCA1MSwgNzEsIDkwLCA5NSwgMjE2LCAyNCwgNzYsIDIsIDIxOCwgMjcsIDk1LCAyMTYsIDI0LCA3NiwgMiwgCi0gICAgMjE4LCAyOCwgMiwgNzEsIDkwLCA5NSwgMjE2LCAyNCwgNzYsIDIsIDIxOCwgMjgsIDIsIDUxLCA3MSwgOTAsIDEzMiwgMjUzLCAKLSAgICAxNjYsIDk1LCAyNTMsIDE2NiwgMTMyLCA1MSwgMjUzLCAxNjYsIDk1LCA1MSwgMjUzLCAxNjYsIDEzMiwgNzYsIDIxMSwgCi0gICAgMjExLCA4MywgMjQ3LCAyMDAsIDk1LCA3NiwgMjExLCAyMTEsIDgzLCAyNDcsIDIwMCwgMTMyLCA3NiwgMjQzLCAyMTMsIAotICAgIDI1MiwgNjAsIDIxMSwgMjExLCA4MywgMjQ3LCAyMDAsIDk1LCA3NiwgMjQzLCAyMTMsIDI1MiwgNjAsIDIxMSwgMjExLCA4MywgCi0gICAgMjQ3LCAyMDAsIDIyOCwgMTY3LCAyMTMsIDI1MCwgMjQsIDIxOSwgMjE1LCAyNDUsIDE3NiwgNjgsIDIyOCwgMTY3LCAyNDUsIAotICAgIDE3NiwgMjQsIDIxOSwgMjE1LCAyMTMsIDI1MCwgNjgsIDIyOCwgMTY3LCAyMTMsIDI1MCwgNzYsIDIsIDEwMSwgMjI4LCAKLSAgICAxNjcsIDI0NSwgMTc2LCA3NiwgMiwgMTAxLCAyMTksIDIxNSwgMjQ1LCAxNzYsIDc2LCAyLCAxMDEsIDIxOSwgMjE1LCAyMTMsIAotICAgIDI1MCwgNzYsIDIsIDEwMSwgMjI4LCAxNjcsIDIxMywgMjUwLCA3NiwgMjQsIDIyOCwgMTY3LCAyNDUsIDE3NiwgNjgsIDIyOCwgCi0gICAgMTY3LCAyNDUsIDE3NiwgNzYsIDI0LCAyMTksIDIxNSwgMjQ1LCAxNzYsIDY4LCAyMTksIDIxNSwgMjQ1LCAxNzYsIDc2LCAKLSAgICAyNCwgMjE5LCAyMTUsIDIxMywgMjUwLCA2OCwgMjE5LCAyMTUsIDIxMywgMjUwLCA3NiwgMjQsIDIyOCwgMTY3LCAyMTMsIAotICAgIDI1MCwgNjgsIDIyMywgMTI1LCAyNDcsIDIwNywgMjQ5LCA2NSwgMjQ0LCAxNDMsIDI0NywgMjA2LCAyNDQsIDE0MywgMjQ3LCAKLSAgICAyMDcsIDI0OSwgNjUsIDIyMywgMTI1LCAyNDcsIDIwNiwgMjE5LCAyMTUsIDI0NSwgMTc2LCA3NiwgMjQ5LCA2NSwgMjI4LCAKLSAgICAxNjcsIDI0NSwgMTc2LCA2OCwgMjI4LCAxNjcsIDI0NSwgMTc2LCA3NiwgMjQ5LCA2NSwgMjE5LCAyMTUsIDI0NSwgMTc2LCAKLSAgICA2OCwgMjQ0LCAxNDMsIDI0NywgMjA3LCAyNDksIDY1LCAyMjgsIDE2NywgMjQ1LCAxNzYsIDY4LCAyMjMsIDEyNSwgMjQ3LCAKLSAgICAyMDcsIDI0OSwgNjUsIDIxOSwgMjE1LCAyNDUsIDE3NiwgNjgsIDIyOCwgMTY3LCAyNDUsIDE3NiwgNzYsIDI0OSwgNjUsIAotICAgIDIyOCwgMTY3LCAyMTMsIDI1MCwgNjgsIDIyOCwgMTY3LCAyMTMsIDI1MCwgNzYsIDI0OSwgNjUsIDIyOCwgMTY3LCAyNDUsIAotICAgIDE3NiwgNjgsIDIxNCwgMjAsIDc2LCAyMjUsIDE0MSwgMjQ3LCAxNDcsIDIyMywgMTQ4LCA3NiwgMjI1LCAxNDEsIDk1LCAKLSAgICAyMTcsIDE0MSwgMjQ5LCAzMiwgMjE1LCAxMjMsIDc2LCAyMjUsIDE0MSwgOTUsIDIxNywgMTQxLCAyNDksIDMyLCAyNDYsIAotICAgIDU3LCA3NiwgMjI1LCAxNDEsIDI0NiwgNTgsIDIxNywgMTQxLCAyNDksIDMyLCAyMzMsIDYxLCA3NiwgMjI1LCAxNDEsIDI0NiwgCi0gICAgNTgsIDIxNywgMTQxLCAyNDksIDMyLCAyMjMsIDEzOCwgMjIzLCAxNDEsIDI1MywgMTk2LCAyNDksIDE5NSwgNjgsIDIzMywgCi0gICAgNjQsIDI1MywgMTk2LCAyNTMsIDI1NSwgNjgsIDIxNiwgMjI3LCAyNTMsIDE5NiwgMjUzLCAyNTUsIDY4LCAyNTEsIDEwMSwgCi0gICAgMjUzLCAxOTYsIDI1MywgMjU1LCA2OCwgMjE2LCAyMjcsIDI1MywgMTk2LCAyNDksIDE5NSwgNzYsIDIsIDIzMCwgMjUwLCAKLSAgICAyMTYsIDIyNywgMjUzLCAxOTYsIDI1MywgMjU1LCA3NiwgMiwgMjI1LCAxNTYsIDIzMiwgMTYzLCA0NiwgMjIxLCA3MiwgCi0gICAgMjQ5LCAxOTUsIDY4LCAyMzIsIDE2MywgNDIsIDIyMSwgNzIsIDI1MywgMjU1LCA2OCwgMjUzLCAyNTUsIDI0OSwgMTkzLCAKLSAgICAyNDksIDIyOSwgNjgsIDI0OSwgMTk1LCAyNDksIDE5MywgMjQ5LCAyMjksIDY4LCA5NSwgNzYsIDc4LCAyMjAsIDE3NSwgCi0gICAgMTMyLCA2OCwgMTMyLCA3NiwgNzgsIDIyMCwgMTc1LCA5NSwgNjgsIDIyMCwgMTc1LCA5NSwgNzYsIDc4LCAxMzIsIDY4LCAKLSAgICA5NSwgNzYsIDIsIDk0LCA1NSwgMTMyLCA3NiwgMiwgOTQsIDU1LCA5NSwgNzYsIDIxNywgOTMsIDIxMywgMTY2LCA0MiwgNDYsIAotICAgIDc2LCAyMTcsIDkzLCAzLCAyNDksIDIyOCwgMjE1LCAxMjQsIDIxNiwgMjQsIDc2LCAyNDMsIDIxMywgMywgMjQ5LCAyMjgsIAotICAgIDQyLCAyMDYsIDExNCwgNDYsIDIwNiwgMTE5LCAyNDEsIDIzNywgNDIsIDIwNiwgMTE5LCA0NiwgMjA2LCAxMTQsIDI0MSwgCi0gICAgMjM3LCAxMTQsIDIwNiwgNDYsIDExOSwgMjA2LCA0MiwgMjQxLCAyMzcsIDExNCwgMjA2LCA0MiwgMTE5LCAyMDYsIDQ2LCAKLSAgICAyNDEsIDIzNywgNDIsIDIwNiwgMTE0LCA0NiwgMjA2LCAxMTQsIDI0MSwgMjM3LCAxMTQsIDIwNiwgNDYsIDExOSwgMjA2LCAKLSAgICA0NiwgMjQxLCAyMzcsIDQyLCAyMDYsIDExOSwgNDYsIDIwNiwgMTE5LCAyNDEsIDIzNywgMTE0LCAyMDYsIDQyLCAxMTksIAotICAgIDIwNiwgNDIsIDI0MSwgMjM3LCAxMzIsIDI0MSwgMjM4LCAyLCAyMDYsIDExNCwgMjExLCAyMTEsIDEzNCwgOTUsIDI0MSwgCi0gICAgMjM4LCAyLCAyMDYsIDExNCwgMjExLCAyMTEsIDEzNCwgMjE1LCAxMjQsIDI0MSwgMjM4LCAyLCAyMDYsIDQ2LCAyMTEsIAotICAgIDIxMSwgMTM0LCAyNDYsIDU4LCAyNDEsIDIzOCwgMiwgMjA2LCA0NiwgMjExLCAyMTEsIDEzNCwgMTMyLCAyNDEsIDIzOCwgMiwgCi0gICAgMjA2LCAxMTksIDIxMSwgMjExLCAxMzQsIDk1LCAyNDEsIDIzOCwgMiwgMjA2LCAxMTksIDIxMSwgMjExLCAxMzQsIDIxNSwgCi0gICAgMTI0LCAyNDEsIDIzOCwgMiwgMjA2LCA0MiwgMjExLCAyMTEsIDEzNCwgMjQ2LCA1OCwgMjQxLCAyMzgsIDIsIDIwNiwgNDIsIAotICAgIDIxMSwgMjExLCAxMzQsIDEzMiwgMjQxLCAyMzgsIDIsIDIwNiwgMTE0LCAyNDMsIDIxMywgMTM0LCA5NSwgMjQxLCAyMzgsIAotICAgIDIsIDIwNiwgMTE0LCAyNDMsIDIxMywgMTM0LCAyMTUsIDEyNCwgMjQxLCAyMzgsIDIsIDIwNiwgNDYsIDI0MywgMjEzLCAKLSAgICAxMzQsIDI0NiwgNTgsIDI0MSwgMjM4LCAyLCAyMDYsIDQ2LCAyNDMsIDIxMywgMTM0LCAxMzIsIDI0MSwgMjM4LCAyLCAyMDYsIAotICAgIDExOSwgMjQzLCAyMTMsIDEzNCwgOTUsIDI0MSwgMjM4LCAyLCAyMDYsIDExOSwgMjQzLCAyMTMsIDEzNCwgMjE1LCAxMjQsIAotICAgIDI0MSwgMjM4LCAyLCAyMDYsIDQyLCAyNDMsIDIxMywgMTM0LCAyNDYsIDU4LCAyNDEsIDIzOCwgMiwgMjA2LCA0MiwgMjQzLCAKLSAgICAyMTMsIDEzNCwgMTMyLCAyNDEsIDIzOCwgMiwgMjA2LCAxMTQsIDc4LCAxMzIsIDI0MSwgMjM4LCAyLCAyMDYsIDI0NiwgNjAsIAotICAgIDIxNSwgMTI0LCAyNDEsIDIzOCwgMiwgMjA2LCA0MiwgMjUxLCAyMDcsIDIxNSwgMTI0LCAyNDEsIDIzOCwgMiwgMjA2LCAKLSAgICAyMjMsIDE0OCwgOTUsIDI0MSwgMjM4LCAyLCAyMDYsIDExNCwgNzgsIDk1LCAyNDEsIDIzOCwgMiwgMjA2LCAyNDYsIDYwLCAKLSAgICAyNDYsIDU4LCAyNDEsIDIzOCwgMiwgMjA2LCA0MiwgMjUxLCAyMDcsIDI0NiwgNTgsIDI0MSwgMjM4LCAyLCAyMDYsIDIyMywgCi0gICAgMTQ4LCAxMzIsIDI0MSwgMjM4LCAyLCAyMDYsIDExNCwgNzgsIDk1LCAyNDEsIDIzOCwgMiwgMjA2LCAyMTUsIDEzNCwgMTMyLCAKLSAgICAyNDEsIDIzOCwgMiwgMjA2LCAxMTksIDc4LCA5NSwgMjQxLCAyMzgsIDIsIDIwNiwgMjQ2LCA2MCwgOTUsIDI0MSwgMjM4LCAKLSAgICAyLCAyMDYsIDExNCwgNzgsIDEzMiwgMjQxLCAyMzgsIDIsIDIwNiwgMjE1LCAxMzQsIDk1LCAyNDEsIDIzOCwgMiwgMjA2LCAKLSAgICAxMTksIDc4LCAxMzIsIDI0MSwgMjM4LCAyLCAyMDYsIDI0NiwgNjAsIDEzMiwgMjQxLCAyMzgsIDIsIDIwNiwgMTE0LCA3OCwgCi0gICAgMTg0LCAyNDgsIDEwMSwgMTMyLCAyNDEsIDIzOCwgMiwgMjA2LCAxMTksIDI1MSwgMjIwLCAxODQsIDI0OCwgMTAxLCA5NSwgCi0gICAgMjQxLCAyMzgsIDIsIDIwNiwgMTE0LCA3OCwgMTg0LCAyNDgsIDEwMSwgOTUsIDI0MSwgMjM4LCAyLCAyMDYsIDExOSwgMjUxLCAKLSAgICAyMjAsIDE4NCwgMjQ4LCAxMDEsIDIxNSwgMTI0LCAyNDEsIDIzOCwgMiwgMjA2LCA0MiwgMjUxLCAyMDcsIDI0NiwgNTgsIAotICAgIDI0MSwgMjM4LCAyLCAyMDYsIDIyMywgMTQ4LCAyNDYsIDU4LCAyNDEsIDIzOCwgMiwgMjA2LCA0MiwgMjUxLCAyMDcsIDIxNSwgCi0gICAgMTI0LCAyNDEsIDIzOCwgMiwgMjA2LCAyMjMsIDE0OCwgNDYsIDUxLCA3NiwgMiwgMjIzLCA4NSwgMjQxLCAyMTksIDI0NSwgCi0gICAgNjEsIDUsIDc4LCA5NSwgNjgsIDIxNywgNDMsIDIyNywgMzQsIDc4LCA5NSwgNjgsIDEzMiwgNzYsIDc4LCAyMTcsIDQzLCAKLSAgICAyMjcsIDMzLCA5NSwgNzYsIDc4LCAyMTcsIDQzLCAyMjcsIDMzLCA5NSwgNzYsIDc4LCAyNTQsIDU3LCAxMjMsIDEwOCwgCi0gICAgMjMzLCAzOSwgNzgsIDEzMiwgNjgsIDEzMiwgNzYsIDIxNywgOTMsIDIzMywgMzgsIDI0MiwgMTA3LCA3OCwgOTUsIDY4LCAKLSAgICAyMTksIDksIDc4LCA5NSwgNjgsIDEzMiwgNzYsIDIxNywgOTMsIDIxOSwgOCwgMjE4LCAyMjIsIDc4LCAxMzIsIDY4LCA0MiwgCi0gICAgMjQ0LCA2MCwgMjE4LCAyNywgNDYsIDI0NCwgNjAsIDIxOCwgMjcsIDExNCwgMjQ0LCA2MCwgMjE4LCAyNywgMTE5LCAyNDQsIAotICAgIDYwLCAyMTgsIDI3LCAyMTYsIDE2OSwgNzEsIDI1MiwgNjAsIDI0OCwgMTEsIDIxMiwgMTUzLCAxNzQsIDIxOSwgMTc0LCAKLSAgICAyMTIsIDE1MywgMTc0LCAyMTYsIDE1LCAyNDksIDE2NCwgNDIsIDY3LCAyNDksIDQwLCAxMjUsIDQ2LCA2NywgMjQ5LCA0MCwgCi0gICAgMTI1LCA0MiwgNjcsIDIyNiwgMTMxLCA0NiwgNjcsIDIyNiwgMTMxLCAyMTIsIDE1MywgMTc0LCA0MiwgMjM2LCAxMCwgMTI1LCAKLSAgICAyMTIsIDE1MywgMTc0LCA0NiwgMjM2LCAxMCwgMTI1LCAyMTIsIDE1MywgMTc0LCA0MiwgMjUxLCAxNjUsIDEyNSwgMjEyLCAKLSAgICAxNTMsIDE3NCwgNDYsIDI1MSwgMTY1LCAxMjUsIDQyLCA0MSwgMjUxLCA4NSwgMiwgMjE1LCAxNTMsIDQ2LCA0MSwgMjUxLCAKLSAgICA4NSwgMiwgMjE1LCAxNTMsIDQyLCA0MSwgMjUxLCA4NSwgMiwgMjE3LCA2OSwgMjM1LCAyNTIsIDIxNiwgMjI3LCAyNDksIAotICAgIDk5LCA0NiwgNDEsIDI1MSwgODUsIDIsIDIxNywgNjksIDIzNSwgMjUyLCAyNTEsIDEwMSwgMjQ5LCA5OSwgNDIsIDQxLCAKLSAgICAyNTEsIDg1LCAyLCAyMTcsIDY5LCAyMzUsIDI1MiwgMjUxLCAxMDEsIDI0OSwgOTksIDQ2LCA0MSwgMjUxLCA4NSwgMiwgCi0gICAgMjE3LCA2OSwgMjM1LCAyNTIsIDIxNiwgMjI3LCAyNDksIDk5LCA0MiwgMjU0LCAxOSwgMjUxLCA4NSwgMiwgMjQ3LCA3NCwgCi0gICAgNDYsIDI1NCwgMTksIDI1MSwgODUsIDIsIDI0NywgNzQsIDQyLCAyNTMsIDE5NiwgMjMzLCAzOSwgMTI1LCA0NiwgMjUzLCAKLSAgICAxOTYsIDI0MiwgMTA3LCAxMjUsIDUxLCA0MiwgMjUzLCAxOTYsIDI0MiwgMTA3LCAxMjUsIDUxLCA0NiwgMjUzLCAxOTYsIAotICAgIDIzMywgMzksIDEyNSwgNDIsIDgzLCAyMTYsIDIxOSwgMjIwLCAyMzMsIDEyNSwgNDYsIDgzLCAyMTYsIDIxOSwgMjIwLCAKLSAgICAyMzMsIDEyNSwgMjQ2LCA3MiwgMjQ0LCAxMDQsIDcxLCAyMTIsIDI4LCAyMzIsIDI0MiwgMjMxLCAxNTMsIDI1NCwgMTksIAotICAgIDIyNywgMzUsIDIzMywgNzAsIDQ2LCAyNTQsIDE5LCAyMTQsIDI0NCwgMiwgMjE5LCAxNjYsIDIzMSwgMTUzLCA0NiwgMjU0LCAKLSAgICAxOSwgMiwgMjQ3LCA3NCwgMjU0LCAxOSwgMiwgMjIzLCA0LCAyMzUsIDIxMiwgMjU0LCAxNjQsIDI1NCwgMTgsIDIxOSwgCi0gICAgMTg3LCAyNTQsIDE5LCAyMjcsIDM1LCAyMzMsIDcwLCAyMTksIDE4NywgMjU0LCAxOSwgMjI3LCAzNSwgMjE1LCAxMzQsIAotICAgIDIxNiwgNTgsIDI1NCwgMTgsIDIyMywgMjAyLCAyNTQsIDE4LCAyNTQsIDE5LCAyLCAyMTUsIDE1MywgMjIzLCAyMDIsIDI1NCwgCi0gICAgMTksIDIsIDIxNSwgMTUzLCAyMjcsIDExMiwgMjU0LCAxOSwgMjI3LCAzNSwgMjE1LCAxMzQsIDIyNywgMTEyLCAyNTQsIDE5LCAKLSAgICAyMjcsIDM1LCAyNDYsIDYwLCAyMzEsIDE1MywgMjU0LCAxOSwgMiwgMjI3LCA0MCwgMjUzLCAxNzYsIDI0NSwgOTgsIDIzNSwgCi0gICAgMjUyLCA3NiwgMjI1LCAxNDEsIDExNCwgMjQsIDIyMywgMTQ4LCAyMzEsIDE1MywgMjU0LCAxOSwgMiwgMjI3LCA0MCwgMjUzLCAKLSAgICAxNzYsIDI0NSwgOTgsIDIzNSwgMjUyLCA3NiwgMjI1LCAxNDEsIDExNCwgMjQsIDIzMywgNzAsIDIzMSwgMTUzLCAyNTQsIAotICAgIDE5LCAyLCAyMjcsIDQwLCAyNTMsIDE3NiwgMjQ1LCA5OCwgMjM1LCAyNTIsIDc2LCAyMjUsIDE0MSwgMTE5LCAyNCwgMjIzLCAKLSAgICAxNDgsIDIzMSwgMTUzLCAyNTQsIDE5LCAyLCAyMjcsIDQwLCAyNTMsIDE3NiwgMjQ1LCA5OCwgMjM1LCAyNTIsIDc2LCAyMjUsIAotICAgIDE0MSwgMTE5LCAyNCwgMjMzLCA3MCwgMjMxLCAxNTMsIDI1NCwgMTksIDIsIDIyNywgNDAsIDI1MywgMTc2LCAyNDUsIDk4LCAKLSAgICAyMzUsIDI1MiwgNzYsIDIyNSwgMTQxLCA0NiwgMjQsIDIxNSwgMTM0LCAyMzEsIDE1MywgMjU0LCAxOSwgMiwgMjI3LCA0MCwgCi0gICAgMjUzLCAxNzYsIDI0NSwgOTgsIDIzNSwgMjUyLCA3NiwgMjI1LCAxNDEsIDQyLCAyNCwgMjE1LCAxMzQsIDIzMSwgMTUzLCAKLSAgICAyNTQsIDE5LCAyLCAyMjcsIDQwLCAyNTMsIDE3NiwgMjQ1LCA5OCwgMjM1LCAyNTIsIDc2LCAyMjUsIDE0MSwgNDYsIDI0LCAKLSAgICAyNDYsIDYwLCAyMzEsIDE1MywgMjU0LCAxOSwgMiwgMjI3LCA0MCwgMjUzLCAxNzYsIDI0NSwgOTgsIDIzNSwgMjUyLCA3NiwgCi0gICAgMjI1LCAxNDEsIDQyLCAyNCwgMjQ2LCA2MCwgMjIzLCAyMDIsIDI0NSwgMTEwLCAyMjEsIDQ4LCAyNDUsIDExMCwgMjIxLCAKLSAgICA0OSwgMiwgMjI2LCAyNDcsIDI0NSwgMTEwLCAyMjEsIDQ5LCAyLCAzLCAyNDksIDIyOSwgNDksIDI0NSwgMTEwLCAyMjEsIAotICAgIDQ5LCAyLCA0NiwgNzYsIDQ5LCAyNDUsIDExMCwgMjIxLCA0OSwgMiwgNDIsIDc2LCA0OSwgMjQ5LCAyMjksIDIsIDE5OSwgCi0gICAgMTM0LCAzNiwgNzEsIDEzNCwgMzYsIDIyNiwgMTM1LCAzNiwgMjIzLCAyMDMsIDIxOSwgMjMxLCAzNiwgMjI2LCA0NywgMjQ5LCAKLSAgICAyMjksIDI0NywgMTI1LCAyNTEsIDcsIDE5OSwgMjUyLCA2MCwgMjQsIDIxNiwgMjI3LCAxNTEsIDI0NywgMTI1LCAyNTEsIDcsIAotICAgIDcxLCAxMzQsIDI0OSwgMjI5LCAyLCAyMTgsIDIyNCwgMjEzLCAxNjYsIDM2LCAyNTMsIDI1NCwgMjQ3LCAxMjEsIDUyLCAKLSAgICAxMTQsIDc2LCAyMTcsIDkzLCAyNDksIDIyOCwgMzYsIDY3LCAyNTEsIDQyLCAzNiwgMjUxLCA0MiwgMzYsIDIzMywgMzgsIAotICAgIDM2LCAyNDIsIDEwNiwgMjQ5LCAyMjksIDIsIDMsIDI0OSwgMjI5LCAyMTEsIDIxMSwgMjE3LCAxNDksIDIyMywgMTQ4LCAKLSAgICAyNDksIDIyOSwgMiwgMTE3LCAxOTksIDIxOSwgMzMsIDIxMSwgMjExLCAyMTcsIDE0OSwgMjIzLCAxNDgsIDkxLCAyMjMsIAotICAgIDEyNSwgMjQ3LCAyMDcsIDIyMCwgMjMsIDkxLCAyNDQsIDE0MywgMjQ3LCAyMDcsIDIyMCwgMjMsIDkxLCAyNTMsIDEzMiwgCi0gICAgOTEsIDMsIDI0OSwgMjI4LCA5MSwgMjE5LCAxNjYsIDExNywgMjM1LCA2OCwgMjE5LCAxNjQsIDIxNiwgMTg0LCAyLCA2MiwgCi0gICAgNDksIDIxNiwgMTg0LCAyLCAyMTUsIDE1MywgMjIzLCA0LCAyMzUsIDI1MiwgMjE2LCAxODMsIDIxNiwgMTg0LCAyLCAyMjEsIAotICAgIDU1LCAyNTMsIDEyMywgMjUxLCAxMDAsIDQ2LCAyMTYsIDE4NCwgNzgsIDQyLCAyMTYsIDE4MywgNDIsIDIxNiwgMTg0LCAKLSAgICAyNTEsIDIwNywgNzEsIDEzNCwgNzEsIDI1MiwgNjAsIDI1MSwgMjA3LCA0NiwgMjE2LCAxODMsIDI1MSwgOTEsIDIsIDQyLCAKLSAgICAxNTEsIDI1MSwgMTQ0LCAyNTEsIDkxLCAyLCA0NiwgMTUxLCAyNTEsIDE0NCwgODMsIDI1MSwgOTAsIDI5LCAyLCA0MiwgCi0gICAgMTUxLCAyNTEsIDE0NCwgMjksIDIsIDQ2LCAxNTEsIDI1MSwgMTQ0LCA2NywgMjQwLCAyMjMsIDgzLCAyNDAsIDIyMywgNDIsIAotICAgIDIxMywgMjI5LCAyNDQsIDEwNCwgNDYsIDIxMywgMjI5LCAyNDQsIDEwNCwgNDIsIDUxLCAyMTMsIDIyOSwgMjQ0LCAxMDQsIAotICAgIDQ2LCA1MSwgMjEzLCAyMjksIDI0NCwgMTA0LCAyMzUsIDI0NCwgMjM1LCAyMzEsIDIxNywgNjYsIDExMCwgMjM1LCAyMzEsIAotICAgIDIzNSwgMjMyLCAyMjksIDE4MywgMiwgNzEsIDEzNCwgMjQ2LCA2NiwgMjMwLCAxNTcsIDQxLCAyLCAyNDksIDEyMCwgMjI2LCAKLSAgICAyNTEsIDIzNSwgMjQyLCAyNTMsIDE1MiwgMjIwLCAxNDQsIDIyNSwgNjMsIDI0NSwgNjEsIDUsIDI0LCAyMjAsIDI1LCAyMjYsIAotICAgIDEzNSwgMjQ1LCA2MSwgNSwgMjQsIDIyMCwgMjUsIDIyNiwgMTM2LCAyLCAyMTcsIDQzLCA0OSwgMjQwLCA5NywgMjExLCAKLSAgICAyMTEsIDI0LCAyMjAsIDI1LCAyMjYsIDEzNSwgMjQyLCAxNTksIDIxOSwgOTQsIDIxNywgMTM4LCAyNDYsIDU5LCAyMTYsIAotICAgIDE4NCwgMiwgNDIsIDE1MSwgMjUxLCAxNDQsIDI0NiwgNTksIDIxNiwgMTg0LCAyLCA0NiwgMTUxLCAyNTEsIDE0NCwgODMsIAotICAgIDI0NywgMjAxLCAyLCAxMTksIDY4LCA4MywgMjMyLCAxNTksIDY3LCAyNDksIDIyOSwgMiwgMTE5LCA2OCwgODMsIDI0OSwgCi0gICAgMjI5LCAyLCAxMTksIDY4LCAyNDUsIDQ4LCA2NywgMjE5LCAxNjYsIDI0NSwgNDgsIDgzLCAyMTksIDE2NiwgMjQ1LCA0OCwgCi0gICAgNjcsIDI0NywgMjAwLCAyNDUsIDQ4LCA4MywgMjQ3LCAyMDAsIDI0NSwgNDgsIDY3LCAyNDksIDIyOCwgMjQ1LCA0OCwgODMsIAotICAgIDI0OSwgMjI4LCAyMjMsIDQzLCAyMjMsIDIwMywgMjE5LCAyMzIsIDIyNywgMzMsIDIxOSwgMjMyLCAyLCAyMjYsIDI0NywgCi0gICAgMjIzLCAyMDMsIDIxOSwgMjMyLCAyLCAxOTksIDkwLCAyNTEsIDE3MiwgMjE5LCAyMzEsIDI1MSwgMTcyLCAyMjMsIDIwMywgCi0gICAgMjE5LCAyMzEsIDUxLCAyMjUsIDE1NiwgMjE2LCAxNjksIDIyNSwgMTU2LCAyMzMsIDY2LCAyNDksIDMzLCAyNTQsIDE5LCAKLSAgICAxMjUsIDIyMywgMTQ0LCAyNDksIDMzLCAyNTQsIDE5LCAxMjUsIDIxNywgMzEsIDIzMCwgMjQ4LCAyMzAsIDk3LCAzNiwgNjIsIAotICAgIDIyNywgMzMsIDIzMCwgOTcsIDM2LCA5NCwgMjI3LCAzMywgMjMwLCA5NywgMzYsIDI5LCAyMjcsIDMzLCAyMzAsIDk3LCAKLSAgICAyMTUsIDE0NywgMjI3LCAzNCwgMiwgMjQ3LCA3NCwgMjMwLCA5NywgMjE1LCAxNDcsIDIyNywgMzQsIDIsIDIyNSwgMTU2LCAKLSAgICAyMzAsIDk3LCA0MSwgMjM1LCAxOTYsIDIyNywgMzMsIDIzMCwgOTcsIDQxLCAyMTUsIDE0NywgMjI3LCAzMywgMTE3LCAyMzIsIAotICAgIDE5OSwgMjQsIDIyNywgMzMsIDExNywgMjMyLCAxOTksIDE2NywgMjI3LCAzMywgMjMwLCA5NywgMjksIDIyNywgMzMsIDIzMCwgCi0gICAgMjI0LCAxMTcsIDIxOCwgMjQ0LCAyMTgsIDI0MiwgMiwgMjM1LCAyMDgsIDIyNCwgMTY5LCAyMzUsIDIwOSwgMjI3LCAzMywgCi0gICAgMjQ0LCA2OCwgMjI2LCAxMjcsIDIzNSwgMjA4LCAyMzUsIDIwOSwgMiwgNTEsIDkwLCAyMzUsIDIwOSwgMjUzLCA4OSwgMiwgCi0gICAgMjIwLCAyMywgMjQ5LCAyMjUsIDI0MywgMTk3LCAyNTMsIDI1NSwgMjM1LCAyMDYsIDIzMiwgMjQzLCAyMzUsIDIwNywgMiwgCi0gICAgMjI0LCA4LCAyMjYsIDExMCwgMjUzLCAxNzMsIDIyNSwgMTM1LCAyMzIsIDI0MywgMjM1LCAyMDcsIDIsIDIyMSwgNzIsIAotICAgIDIyNiwgMTEwLCAyNTMsIDE3MywgMjI1LCAxMzUsIDIzMiwgMjQzLCAyMzUsIDIwNywgMjI4LCAxNjMsIDIzNSwgMjQ2LCAKLSAgICAyMTcsIDE0OSwgMjI1LCAxMzUsIDIzNSwgMjA5LCAyNTMsIDE3MywgMTE4LCAyMjUsIDE0NSwgMjI3LCAzMywgMjI0LCAxNjMsIAotICAgIDIzNSwgMjA5LCAyMjcsIDMzLCAyMzUsIDIwOSwgMiwgMTMyLCA3NiwgMiwgMTAxLCAyMzUsIDIwOSwgMiwgMjksIDUyLCAKLSAgICAyMzUsIDIwOSwgMiwgMjM1LCAxOTUsIDIzNSwgMjA5LCAyLCAyMTUsIDE0NiwgMjM1LCAyMDksIDIsIDIyNiwgMjQ3LCAyMzUsIAotICAgIDIwOSwgMiwgMjE1LCAxNTMsIDIzNSwgNjksIDIzMywgMTA4LCA0MiwgMjE2LCAxODQsIDIyNywgMzMsIDIxMiwgMTUzLCAKLSAgICAxNzQsIDIyMiwgMTE5LCAyNDksIDE0OCwgMjEyLCAxNTMsIDE3NCwgMjIyLCAxMTksIDIyNSwgMTg4LCAyMTIsIDE1MywgCi0gICAgMTc0LCAyMjIsIDExOSwgMjI1LCA2MCwgOTQsIDUsIDIsIDMsIDI0OSwgMjI5LCA0OSwgOTQsIDUsIDIsIDI0OSwgMjI0LCAKLSAgICAyNTQsIDE3NSwgNDksIDk0LCA1LCAyLCAyMTcsIDQzLCA0OSwgOTQsIDUsIDIsIDYyLCA1NSwgOTQsIDUsIDIsIDIxNywgNDMsIAotICAgIDU1LCA5NCwgNSwgMiwgMjE5LCAxMCwgMTA5LCA5NCwgNSwgMiwgODMsIDIxNiwgMTgzLCAyMzAsIDI1MSwgNSwgMiwgMjQ5LCAKLSAgICAxNTgsIDQ5LCAyMzAsIDI1MSwgNSwgMiwgNjIsIDU1LCAyMzAsIDI1MSwgNSwgMiwgMjQ0LCAxNDMsIDI0NywgNzIsIDIzMCwgCi0gICAgMjUxLCA1LCAyLCAyMjMsIDEyNSwgMjQ3LCA3MiwgOTQsIDUsIDIzNSwgMjUyLCA0MiwgMTUxLCAyNDksIDIyOCwgOTQsIDUsIAotICAgIDIzNSwgMjUyLCA0NiwgMTUxLCAyNDksIDIyOCwgMjE0LCAyMzEsIDE2NywgMjQ5LCA3MSwgMjI1LCA2MywgMjMwLCAxNTQsIAotICAgIDUsIDIsIDYyLCA0OSwgMjMwLCAxNTQsIDUsIDIsIDIxNSwgMTUzLCAyMjEsIDY5LCAyMjUsIDY0LCAyLCAyNTEsIDEwMSwgCi0gICAgMjQ5LCAxOTIsIDIyMCwgNSwgMjI1LCA2MywgMjMwLCAxNTQsIDUsIDIzNSwgMjUyLCA0MiwgMTUxLCAyNDksIDIyOCwgMjMwLCAKLSAgICAxNTQsIDUsIDIzNSwgMjUyLCA0NiwgMTUxLCAyNDksIDIyOCwgMzYsIDIzMCwgMTU0LCA1LCAyLCAyNDksIDIyNCwgMjU0LCAKLSAgICAxNzQsIDIzMCwgMTU0LCA1LCAyMzUsIDI1MiwgNTEsIDI0OSwgMjI4LCAzNiwgMjQ3LCAxMjEsIDUyLCA5NCwgNSwgMjM1LCAKLSAgICAyNTIsIDIxNiwgMTgzLCAyMzAsIDI1MSwgNSwgMjM1LCAyNTIsIDIxNiwgMTgzLCAyMzAsIDE1NCwgNSwgMjM1LCAyNTIsIAotICAgIDIxNiwgMTgzLCAyMzUsIDIwMywgMjI1LCA2MywgMjIzLCAxMzksIDIzNSwgMjAzLCAyMjUsIDYzLCAyMTIsIDE1MywgMTc0LCAKLSAgICAyMjMsIDI0MCwgMjQ5LCAxNDgsIDI1NCwgNDMsIDE2NywgMjQ5LCAxMDQsIDIzNSwgMTk2LCAyLCAyNDcsIDc0LCAyMTUsIAotICAgIDE0NywgMiwgMjMwLCAyNTEsIDUyLCAyMTUsIDE0NywgMiwgMjI2LCAyNDcsIDIzNSwgMTk2LCAyLCAyMjYsIDI0NywgMjM1LCAKLSAgICAxOTYsIDIsIDIzMiwgMTk5LCAyNTQsIDI3LCAyMTUsIDE0NywgMiwgMjMyLCAxOTksIDIyNywgMjQsIDIxNSwgMTQ3LCA3OCwgCi0gICAgMjM1LCAxOTUsIDIzNSwgMTk2LCA3OCwgMjE1LCAxNDYsIDIxNSwgMTQ3LCA3OCwgMjUyLCA2MCwgNzgsIDIzNSwgMTk1LCAKLSAgICAyMzUsIDE5NiwgNzgsIDI1MiwgNjAsIDc4LCAyMTUsIDE0NiwgMjE1LCAxNDcsIDI1MSwgMjA3LCAyNCwgMjM1LCA2OCwgMiwgCi0gICAgMjE1LCAxNDYsIDIzNSwgMTk2LCAyNTEsIDIwNywgMjQsIDIzNSwgNjgsIDIsIDIzNSwgMTk1LCAyNDksIDE5MywgMjE1LCAKLSAgICAxNDcsIDIsIDIyMSwgNTQsIDI0OSwgMTkzLCAyMzUsIDE5NiwgMiwgMjIxLCA1NCwgNTEsIDQxLCAyMzUsIDE5NSwgNTEsIAotICAgIDQxLCAyMTUsIDE0NiwgMjQ5LCAxOTMsIDIxNSwgMTQ3LCAyLCAyMjEsIDU1LCAyNCwgMjIwLCA1LCAyMjUsIDYzLCAyMzIsIAotICAgIDE5OSwgMjQsIDIsIDYyLCA0OSwgMjMyLCAxOTksIDE2NywgMiwgNjIsIDQ5LCA1MSwgMjMyLCAxOTksIDI1NCwgMjcsIDUxLCAKLSAgICAyMzIsIDE5OSwgMjI3LCAyNCwgMTE3LCAyMzUsIDE5NywgMjMyLCAxOTksIDI1NCwgMjcsIDExNywgMjM1LCAxOTcsIDIzMiwgCi0gICAgMTk5LCAyMjcsIDI0LCAyMjAsIDEzLCAyMzMsIDEwOCwgMjI3LCAyNCwgMjIwLCAxMywgMjMzLCAxMDgsIDI1NCwgMjcsIAotICAgIDIzMiwgMTk5LCAxNjcsIDIyNiwgMjQ1LCAyMzIsIDE5OSwgMjU0LCAyNywgMjMyLCAxOTksIDI0LCAyLCAyMzEsIDM3LCAKLSAgICAyMTksIDc5LCAyMzIsIDE5OSwgMTY3LCAyLCAyMzEsIDM3LCAyMTksIDc5LCAyMzIsIDE5OSwgMjQsIDIsIDE5OSwgMjQ4LCAKLSAgICAxMDEsIDIzMiwgMTk5LCAxNjcsIDIsIDE5OSwgMjQ4LCAxMDEsIDIzMiwgMTk5LCAyNCwgMiwgNTEsIDIyNiwgMjQ3LCAyMzIsIAotICAgIDE5OSwgMjQsIDIsIDIxNSwgMTUzLCAyMzIsIDE5OSwgMjQsIDIsIDUxLCAyMTUsIDE1MywgMywgMjE0LCAyMjgsIDIsIDIxNSwgCi0gICAgMTUzLCAyMzIsIDE5OSwgMTY3LCAyLCA1MSwgMjI2LCAyNDcsIDIzMiwgMTk5LCAxNjcsIDIsIDUxLCAyMTUsIDE1MywgMjEyLCAKLSAgICAxNTMsIDE3NCwgMjQ3LCA4MywgMjUzLCAyNDYsIDIxMiwgMTUzLCAxNzQsIDIyNCwgNDAsIDI1MywgMjQ2LCAyNDUsIDYxLCAKLSAgICA1LCAyLCA2MiwgNTUsIDI0MCwgOTcsIDIsIDYyLCA0OSwgMjE2LCAxNjksIDE5OSwgMjUyLCA2MCwgMiwgNTEsIDcxLCA5MCwgCi0gICAgMjE2LCAxNjksIDE5OSwgMjUyLCA2MCwgMiwgMjE2LCAxNjksIDcxLCA5MCwgMjE3LCA0MywgMjI3LCAzNCwgMiwgNjIsIDQ5LCAKLSAgICAyMTcsIDQzLCAyMjcsIDM0LCAyLCAyMjMsIDEyNSwgMjQ3LCA3MiwgMjIwLCA4OCwgMjMwLCAyNTEsIDIyMCwgODcsIDI0OSwgCi0gICAgMTM5LCAyLCA2MiwgNDksIDI0NSwgNjEsIDIsIDI1MywgMTMyLCAyNTQsIDU3LCAxMjMsIDIxMSwgMjExLCAyLCAyNDksIAotICAgIDIyNCwgMjU0LCAxNzQsIDI1MywgMjE4LCAxMjMsIDE2NywgMTIzLCAxMDgsIDI0NSwgNjEsIDUsIDc4LCA5NCwgNTIsIDk0LCAKLSAgICA1LCA3OCwgMjQ1LCA2MSwgNTIsIDI0NSwgNjEsIDUsIDc4LCAyMTcsIDQzLCAyMjcsIDMzLCA1MSwgMjQ5LCAxNjUsIDI0NSwgCi0gICAgNjIsIDExNywgMjQ5LCAxMzQsIDI0NSwgNjEsIDIyMCwgMTAyLCAxMzMsIDI0OSwgMTM0LCAyNDUsIDYxLCAyMjAsIDEwMiwgCi0gICAgMjQ1LCA2MSwgNSwgMiwgMTE3LCAxNzYsIDc4LCAyNCwgMTE3LCAxNzYsIDU1LCAyNDUsIDU3LCAyLCAyNDMsIDIzNywgMTc2LCAKLSAgICA0OSwgMjMzLCAzOSwgMiwgMjQ5LCAyMjksIDIzNSwgMjEyLCAyNDIsIDEwNywgMiwgMjQ5LCAyMjksIDIzNSwgMjEyLCAyMzMsIAotICAgIDM5LCAyLCAyMjQsIDE1OCwgMTUyLCA0OSwgMjQyLCAxMDcsIDIsIDIyNCwgMTU4LCAxNTIsIDQ5LCAyMzMsIDM5LCAxNjcsIAotICAgIDIyMCwgMjUsIDEyMywgMTA4LCAyNDIsIDEwNywgMTY3LCAyMjAsIDI1LCAxMjMsIDEwOCwgMjMzLCAzOSwgMTY3LCAyMjAsIAotICAgIDI1LCAxMjMsIDIxMSwgMjExLCAyLCA2MiwgMjM1LCAyMTIsIDI0MiwgMTA3LCAxNjcsIDIyMCwgMjUsIDEyMywgMjExLCAKLSAgICAyMTEsIDIsIDYyLCAyMzUsIDIxMiwgMjMzLCAzOSwgMTY3LCAyMjAsIDI1LCAxMjMsIDIxMSwgMjExLCAyLCA2MiwgNDksIAotICAgIDI0MiwgMTA3LCAxNjcsIDIyMCwgMjUsIDEyMywgMjExLCAyMTEsIDIsIDYyLCA0OSwgMjMzLCAzOSwgMTY3LCAyMjAsIDI1LCAKLSAgICAxMjMsIDIxMSwgMjExLCAyLCA2MiwgNzgsIDIyMywgMTQ4LCAyNDIsIDEwNywgMTY3LCAyMjAsIDI1LCAxMjMsIDIxMSwgCi0gICAgMjExLCAyLCA2MiwgNzgsIDIzMywgNzAsIDIzMywgMzksIDE2NywgMjUzLCAyMTksIDI0MiwgMTA3LCAxNjcsIDI1MywgMjE5LCAKLSAgICAyMzMsIDM5LCAyNCwgMjIwLCA3OSwgMjI4LCAxNjMsIDEyMywgMTA4LCAyNDIsIDEwNywgMjQsIDIyMCwgNzksIDIyOCwgCi0gICAgMTYzLCAxMjMsIDEwOCwgMjMzLCAzOSwgMjQsIDIyOCwgMTYzLCAyNTMsIDIxOSwgMjQyLCAxMDcsIDI0LCAyMjgsIDE2MywgCi0gICAgMjUzLCAyMTksIDIzMywgMzksIDc4LCAyNDYsIDY1LCAxMjMsIDc4LCAyNDIsIDEwNiwgMjQyLCAxMDcsIDc4LCAyNDYsIDY1LCAKLSAgICAxMjMsIDc4LCAyMzMsIDM4LCAyMzMsIDM5LCA3OCwgMjIwLCA4OCwgMTY3LCAyNDUsIDYyLCAyNDIsIDEwNywgNzgsIDIyMCwgCi0gICAgODgsIDE2NywgMjQ1LCA2MiwgMjMzLCAzOSwgNzgsIDIyMCwgODgsIDc4LCAyNDIsIDEwNiwgMjQyLCAxMDcsIDc4LCAyMjAsIAotICAgIDg4LCA3OCwgMjMzLCAzOCwgMjMzLCAzOSwgNzgsIDI0MiwgMTA3LCA3OCwgMjQ2LCA2NSwgMjQ1LCA2MiwgMjQyLCAxMDcsIAotICAgIDc4LCAyMzMsIDM5LCA3OCwgMjQ2LCA2NSwgMjQ1LCA2MiwgMjMzLCAzOSwgNzgsIDIyMCwgMjUsIDEyMywgNzgsIDI0MiwgCi0gICAgMTA3LCA3OCwgMjIwLCAyNSwgMjQ1LCA2MiwgMjQyLCAxMDcsIDc4LCAyMjAsIDI1LCAxMjMsIDc4LCAyMzMsIDM5LCA3OCwgCi0gICAgMjIwLCAyNSwgMjQ1LCA2MiwgMjIwLCAyNSwgMTIzLCAyMTEsIDIxMSwgMTY3LCAyMzMsIDM4LCAyMjAsIDI1LCAxMjMsIAotICAgIDIxMSwgMjExLCAxNjcsIDI0MiwgMTA2LCAyMjAsIDI1LCAxMjMsIDIxMSwgMjExLCAxNjcsIDIzMywgMzksIDIsIDYyLCAKLSAgICAyMzUsIDIxMiwgMjIwLCAyNSwgMTIzLCAyMTEsIDIxMSwgMTY3LCAyNDIsIDEwNywgMiwgNjIsIDIzNSwgMjEyLCAyNDYsIAotICAgIDY1LCAxMjMsIDIxMSwgMjExLCAxNjcsIDIzMywgMzgsIDI0NiwgNjUsIDEyMywgMjExLCAyMTEsIDE2NywgMjQyLCAxMDYsIAotICAgIDI0NiwgNjUsIDIyMCwgMjUsIDEyMywgMjExLCAyMTEsIDE2NywgMjMzLCAzOCwgMjQ2LCA2NSwgMjIwLCAyNSwgMTIzLCAKLSAgICAyMTEsIDIxMSwgMTY3LCAyNDIsIDEwNiwgMjIwLCA4OCwgMTY3LCAyMzMsIDM4LCAyMjAsIDg4LCAxNjcsIDI0MiwgMTA2LCAKLSAgICAyMjAsIDg4LCA3OCwgMjMzLCAzOSwgNzgsIDI0NSwgNjEsIDUyLCAyMjAsIDg4LCA3OCwgMjQyLCAxMDcsIDc4LCAyNDUsIAotICAgIDYxLCA1MiwgNTEsIDIyOSwgMTczLCAyMzMsIDM4LCA1MSwgMjI5LCAxNzMsIDI0MiwgMTA2LCA1MSwgMjI5LCAxNzMsIDIzMywgCi0gICAgMzksIDIsIDIxNSwgMTUzLCAyNDIsIDEwNywgMjI2LCAyNDUsIDIzMywgMzgsIDI0MiwgMTA3LCAyNTEsIDIwNywgMjMzLCAKLSAgICAzOCwgMjMzLCAzOSwgMjQ5LCAxOTMsIDI1MSwgNywgMjQ5LCAzNCwgMjQyLCAxMDcsIDI0OSwgMTkzLCAyNTEsIDcsIDI0OSwgCi0gICAgMzQsIDIzMywgMzksIDI0OSwgMTkzLCAyNTEsIDcsIDI0OSwgMzUsIDc4LCAyMjAsIDI1LCAyNDUsIDYyLCAyNDIsIDEwNywgCi0gICAgMjQ5LCAxOTMsIDI1MSwgNywgMjQ5LCAzNSwgNzgsIDIyMCwgMjUsIDI0NSwgNjIsIDIyMCwgNiwgMjE3LCAxNTMsIDIzMywgCi0gICAgMTA2LCAyMTcsIDE1MywgMjIwLCA2LCAyMTcsIDE1NCwgMTY3LCAxMjMsIDEwOCwgMjMzLCAxMDYsIDIxNywgMTU0LCAxNjcsIAotICAgIDEyMywgMTA4LCAyNDUsIDYxLCA1LCAyLCAyNTEsIDM3LCA0OSwgMjI1LCA4MywgNzgsIDIyMCwgNzksIDI0NSwgNjEsIDUyLCAKLSAgICAyMTksIDEsIDc4LCAyMjAsIDc5LCAyNDUsIDYxLCA1MiwgMjI1LCA4MywgNzgsIDIyMCwgNzksIDIyOCwgMTYzLCAxMjMsIAotICAgIDEwOCwgMjE5LCAxLCA3OCwgMjIwLCA3OSwgMjI4LCAxNjMsIDEyMywgMTA4LCAyMjUsIDgzLCA3OCwgMjQ1LCA2MSwgNTIsIAotICAgIDIxOSwgMSwgNzgsIDI0NSwgNjEsIDUyLCAyMjUsIDgzLCA3OCwgMjI4LCAxNjMsIDEyMywgMTA4LCAyMTksIDEsIDc4LCAKLSAgICAyMjgsIDE2MywgMTIzLCAxMDgsIDIyNSwgODMsIDc4LCAyNTQsIDU3LCAxMjMsIDEwOCwgMjE5LCAxLCA3OCwgMjU0LCA1NywgCi0gICAgMTIzLCAxMDgsIDIyNSwgODMsIDc4LCAyMjgsIDE2MywgMjU0LCA1NywgMTIzLCAxMDgsIDIxOSwgMSwgNzgsIDIyOCwgMTYzLCAKLSAgICAyNTQsIDU3LCAxMjMsIDEwOCwgNTEsIDIyNSwgODIsIDUxLCAyMTksIDAsIDIxOSwgOSwgMiwgMjQ3LCA3NCwgMjE4LCAyMjIsIAotICAgIDIsIDI0NywgNzQsIDIxOSwgOSwgMiwgOTQsIDUsIDU1LCAyMTgsIDIyMiwgMiwgOTQsIDUsIDU1LCAyMTksIDksIDIsIDIzMCwgCi0gICAgMTU0LCA1LCA1NSwgMjE4LCAyMjIsIDIsIDIzMCwgMTU0LCA1LCA1NSwgMjE5LCA5LCA2NSwgMTY3LCAxMjMsIDIxMSwgMjExLCAKLSAgICAyLCA2MiwgNDksIDIxOCwgMjIyLCA2NSwgMTY3LCAxMjMsIDIxMSwgMjExLCAyLCA2MiwgNDksIDIxOSwgOSwgNjUsIDc4LCAKLSAgICAyNDUsIDYxLCA1MiwgMjE4LCAyMjIsIDY1LCA3OCwgMjQ1LCA2MSwgNTIsIDIxOSwgOSwgNjUsIDc4LCAyMTcsIDQzLCAyMjcsIAotICAgIDMzLCAyMTgsIDIyMiwgNjUsIDc4LCAyMTcsIDQzLCAyMjcsIDMzLCAyMTksIDksIDY1LCA3OCwgMjU0LCA1NywgMTIzLCAKLSAgICAxMDgsIDIxOCwgMjIyLCA2NSwgNzgsIDI1NCwgNTcsIDEyMywgMTA4LCAyMTksIDksIDY1LCA3OCwgMjI4LCAxNjMsIDEyMywgCi0gICAgMTA4LCAyMTgsIDIyMiwgNjUsIDc4LCAyMjgsIDE2MywgMTIzLCAxMDgsIDQxLCA0MiwgMjI3LCA0MCwgOTIsIDIyNywgMzMsIAotICAgIDQxLCA0NiwgMjI3LCA0MCwgOTIsIDIyNywgMzMsIDI0OSwgMTkzLCAyMTksIDgsIDI0OSwgMTkzLCAyMTgsIDIyMSwgMjQ5LCAKLSAgICAxOTMsIDIxOSwgOSwgMTY3LCAxMjMsIDEwOCwgMjQ5LCAxOTMsIDIxOCwgMjIyLCAxNjcsIDEyMywgMTA4LCAyMTksIDksIAotICAgIDc4LCAyMTgsIDIyMSwgMjE4LCAyMjIsIDc4LCAyMTksIDgsIDIxOSwgOSwgNzgsIDIxOSwgOCwgMjE4LCAyMjIsIDc4LCAKLSAgICAyMTgsIDIyMSwgMjE4LCAyMjIsIDI1MSwgMjA3LCAyMTksIDgsIDIxOCwgMjIyLCAyNTEsIDIwNywgMjQsIDIzNSwgNjgsIAotICAgIDI1MSwgNywgMjQ4LCAxMDIsIDIsIDIxOSwgOCwgMjQ1LCAxMjcsIDY1LCAyMjcsIDM1LCAyNDYsIDU3LCAyMjUsIDE4MCwgMiwgCi0gICAgMjE3LCAyMjAsIDIxNiwgMjI2LCAyMTYsIDE5OCwgMjM1LCAxOTUsIDI0MywgMjQ2LCAyMjgsIDE3NiwgMjIwLCAxNzUsIDQyLCAKLSAgICAyMTgsIDM2LCAyMjAsIDE3NSwgMTE5LCAyMTgsIDM2LCAyMjAsIDE3NSwgMTE0LCAyMTgsIDM2LCAyMjYsIDQ4LCAyLCAxOTcsIAotICAgIDcxLCAyNTIsIDYwLCAyMTYsIDE2OSwgNDYsIDIxNiwgNTcsIDUxLCA3MSwgMjUyLCA2MCwgNDIsIDIxNiwgNTcsIDcxLCAKLSAgICAyNTIsIDYwLCA1MSwgNDIsIDIxNiwgNTcsIDUxLCA3MSwgMjUyLCA2MCwgNTEsIDQyLCAyMTYsIDU3LCAxODQsIDI0OCwgCi0gICAgMTAyLCAyNDMsIDIxMywgNDIsIDIzMSwgMTI3LCA2NSwgNTEsIDIxNCwgMjE2LCAyMjAsIDE3NSwgMTE5LCAyMTgsIDM3LCAyLCAKLSAgICAyMjYsIDI0NywgMjIwLCAxNzUsIDExNCwgMjE4LCAzNywgMiwgMjE1LCAxNTMsIDIyMCwgMTc1LCAxMTQsIDIxOCwgMzcsIAotICAgIDc4LCAyMjAsIDE3NSwgMTE5LCAyMTgsIDM2LCA1MSwgMTE5LCAyMTgsIDM2LCA1MSwgMTE0LCAyMTgsIDM2LCA1MSwgMjE5LCAKLSAgICA0NSwgMjI4LCAxNjMsIDUyLCAyMjMsIDIwMiwgNTEsIDIxOSwgNDUsIDIyOCwgMTYzLCA1MiwgMjQ3LCA5MiwgMjI4LCAxNjMsIAotICAgIDI0NywgMTI3LCAyLCAyMjMsIDIwMiwgMjI5LCAxODIsIDIyMCwgMjMsIDcxLCAyMzIsIDI0MywgMiwgMjQ5LCAyMjksIDQ5LCAKLSAgICA3MSwgMjMyLCAyNDMsIDIsIDI0OSwgMjI5LCA1NSwgMTE5LCAyMTgsIDM3LCAyLCAyNDksIDIyOSwgNTUsIDIyNiwgMTM2LCAKLSAgICAyLCAxOTksIDkwLCAyMjYsIDEzNiwgMiwgMjE3LCA0MywgMjI3LCAzMywgMjE2LCAxNjksIDcxLCAyNTIsIDYwLCAyNTEsIAotICAgIDE2NywgMjIzLCAyNDEsIDIxNiwgMTY5LCA3MSwgMjUyLCA2MCwgMiwgMTk5LCA5MCwgMjE2LCAxNjksIDI0OSwgMTY1LCAKLSAgICAyMjcsIDMzLCAyMTYsIDE2OSwgMjI5LCAxNzMsIDIzMywgMzgsIDIxNiwgMTY5LCAyMjksIDE3MywgMjQyLCAxMDYsIDI0NiwgCi0gICAgNjUsIDIyMCwgMjUsIDIzMywgMzksIDE2NywgMTIzLCAxMDgsIDI0NiwgNjUsIDIyMCwgMjUsIDI0MiwgMTA3LCAxNjcsIAotICAgIDEyMywgMTA4LCAyMTYsIDE2OSwgMjE5LCAyMzIsIDI1MSwgMTY3LCAyMjMsIDI0MSwgMjMzLCAxMDgsIDIxNiwgMTY5LCA3MSwgCi0gICAgMjUyLCA2MCwgMjI3LCAzMywgNTEsIDIxOSwgMjMyLCAyMjcsIDMzLCA2NywgNzEsIDEzNCwgMjMwLCA5NywgNjcsIDcxLCAKLSAgICAxMzQsIDIyOCwgMTY3LCAyNDUsIDE3NiwgNjcsIDY4LCAyMjgsIDE2NywgMjEzLCAyNTAsIDY3LCA2OCwgMjE5LCAyMTUsIAotICAgIDI0NSwgMTc2LCA2NywgNjgsIDIxOSwgMjE1LCAyMTMsIDI1MCwgNjcsIDY4LCA0MiwgNDYsIDY3LCA2OCwgMTMyLCA4MywgCi0gICAgNjgsIDIxNSwgMTI0LCA4MywgNjgsIDI0NiwgNTgsIDgzLCA2OCwgMjI4LCAxNjcsIDI0NSwgMTc2LCA4MywgNjgsIDIyOCwgCi0gICAgMTY3LCAyMTMsIDI1MCwgODMsIDY4LCAyMTksIDIxNSwgMjQ1LCAxNzYsIDgzLCA2OCwgMjE5LCAyMTUsIDIxMywgMjUwLCAKLSAgICA4MywgNjgsIDQyLCA0NiwgODMsIDY4LCAxMTQsIDExOSwgODMsIDY4LCA5NSwgNzYsIDIsIDIxNywgMzAsIDI0NiwgNTcsIAotICAgIDk1LCA3NiwgMiwgMjE3LCAzMCwgMjE1LCAxMjMsIDEzMiwgNzYsIDIsIDIxNywgMzAsIDI0NiwgNTcsIDEzMiwgNzYsIDIsIAotICAgIDIxNywgMzAsIDIxNSwgMTIzLCA0MSwgMiwgMjE2LCAyMjcsIDE1MSwgMjUxLCAxNDQsIDQxLCAyLCAyNTEsIDEwMSwgMTUxLCAKLSAgICAyNTEsIDE0NCwgNDEsIDIsIDIxNSwgMTMxLCA0NiwgMjQ3LCAyMDcsIDE1MSwgMjUxLCAxNDQsIDQxLCAyLCAyMzIsIDE2MywgCi0gICAgNDIsIDI0NywgMjA3LCAxNTEsIDI1MSwgMTQ0LCAyNDcsIDIwMSwgMiwgNDIsIDE1MSwgMjUxLCAxNDQsIDI0NywgMjAxLCAyLCAKLSAgICA0NiwgMTUxLCAyNTEsIDE0NCwgMjQ3LCAyMDEsIDIsIDIxNiwgMjI3LCAxNTEsIDI1MSwgMTQ0LCAyNDcsIDIwMSwgMiwgCi0gICAgMjUxLCAxMDEsIDE1MSwgMjUxLCAxNDQsIDI0NiwgNzIsIDIxOSwgMTY2LCA4MywgMjMzLCAxMDgsIDIxOSwgMTY2LCA2NywgCi0gICAgMjMzLCAxMDgsIDIxOSwgMTY2LCA4MywgMjE0LCAxNjQsIDMsIDIxOSwgMTY2LCA2NywgMjE0LCAxNjQsIDMsIDIxOSwgMTY2LCAKLSAgICA4MywgMjI2LCA2NSwgNjcsIDIyNiwgNjUsIDY3LCAyNDEsIDE3OCwgODMsIDI0MSwgMTc4LCAxOTksIDgzLCAyNDEsIDE3OCwgCi0gICAgODMsIDIzMywgMTA4LCAyNDksIDIyOCwgODMsIDIzMSwgMTQ3LCAyNDcsIDIwMCwgNjcsIDIzMSwgMTQ3LCAyNDcsIDIwMCwgCi0gICAgODMsIDIzMSwgMTQ3LCAyMzIsIDE1OSwgNjcsIDIzMSwgMTQ3LCAyMzIsIDE1OSwgODMsIDMsIDI0NywgMjAwLCA4MywgMywgCi0gICAgMjMyLCAxNTksIDY3LCAzLCAyMzIsIDE1OSwgODMsIDE5OSwgMjQ1LCAxMjEsIDY3LCAxOTksIDI0NSwgMTIxLCA4MywgNzEsIAotICAgIDI0NSwgMTIxLCA2NywgNzEsIDI0NSwgMTIxLCA0MiwgNzYsIDIsIDMsIDI0OSwgMjI4LCAxMzMsIDEzMiwgMjUzLCAxNjIsIAotICAgIDQyLCA3NiwgMiwgMzYsIDIyNSwgMTU2LCAxODQsIDEzMiwgMjE5LCAxNjIsIDY4LCAxMzIsIDIxNiwgMjQsIDc2LCAyLCA3MSwgCi0gICAgOTAsIDEzMiwgMjE2LCAyNCwgNzYsIDIsIDUxLCA3MSwgOTAsIDEzMiwgMjE2LCAyNCwgNzYsIDI0MywgMjEzLCAxMzQsIAotICAgIDEzMiwgMjE2LCAyNCwgMjE2LCAxNjksIDI0OCwgMTAyLCA2OCwgMTMyLCA3NiwgMiwgMjQ2LCA3MiwgMjE5LCA3OSwgMTMyLCAKLSAgICA3NiwgMiwgMjE4LCAyOCwgMiwgNzEsIDkwLCAxMzIsIDc2LCAyLCAyMTgsIDI4LCAyLCA1MSwgNzEsIDkwLCAxMzIsIDIxNiwgCi0gICAgMjQsIDc2LCAyLCAyMTgsIDI3LCAxMzIsIDIxNiwgMjQsIDc2LCAyLCAyMTgsIDI4LCAyLCA3MSwgOTAsIDEzMiwgMjE2LCAKLSAgICAyNCwgNzYsIDIsIDIxOCwgMjgsIDIsIDUxLCA3MSwgOTAsIDEzMiwgNzYsIDIxNywgOTMsIDIxMywgMTY2LCAyMTQsIDIwLCAKLSAgICA3NiwgMjI1LCAxNDEsIDI0NywgMTQ3LCAyMzMsIDcwLCAyNDUsIDYxLCA1LCA3OCwgMTMyLCA2OCwgMjIzLCAyMDMsIDIxNywgCi0gICAgNDMsIDIyNywgMzQsIDc4LCAxMzIsIDY4LCAxMzIsIDc2LCA3OCwgMjIzLCAyMDMsIDI1NCwgNTcsIDEyMywgMTA4LCA5NSwgCi0gICAgNzYsIDIxNywgOTMsIDI0MiwgMTA2LCA5NSwgNzYsIDIxNywgOTMsIDIxOCwgMjIxLCAxMzIsIDIyNCwgMTY5LCA2OCwgOTUsIAotICAgIDIyNCwgMTY5LCA2OCwgMjIzLCAyMDMsIDIxNywgNDMsIDIyNywgMzQsIDc4LCA5NSwgNjgsIDk1LCA3NiwgNzgsIDIyMywgCi0gICAgMjAzLCAyNTQsIDU3LCAxMjMsIDEwOCwgMjE3LCA0MywgMjI3LCAzNCwgNzgsIDEzMiwgNjgsIDEzMiwgNzYsIDc4LCAyNTQsIAotICAgIDU3LCAxMjMsIDEwOCwgMTMyLCA3NiwgNzgsIDIyMywgMjAzLCAyMTcsIDQzLCAyMjcsIDMzLCA5NSwgNzYsIDc4LCAyMjMsIAotICAgIDIwMywgMjE3LCA0MywgMjI3LCAzMywgNjcsIDIzMSwgMTQ3LCAyMTksIDk1LCA4MywgMywgMjE5LCA5NSwgNjcsIDMsIDIxOSwgCi0gICAgOTUsIDgzLCAyMjMsIDE0NCwgMjI2LCA2NSwgNjcsIDIyMywgMTQ0LCAyMjYsIDY1LCAxMDcsIDIzMywgMTA4LCAyNDksIAotICAgIDIyOCwgMTA3LCAyMjYsIDI0OCwgMiwgMjI2LCAyNDgsIDIzNSwgMjEyLCAxMDcsIDI0OSwgMjI5LCAyLCAyNDksIDIyOSwgCi0gICAgMjM1LCAyMTIsIDEwNywgMjQ5LCAyMjgsIDEwNywgMzYsIDIyMiwgMTY5LCAxMzYsIDYsIDEsIDI1MywgNzUsIDEzNiwgNiwgCi0gICAgMSwgMjUxLCA0NiwgMTM2LCA2LCAxLCAyMTQsIDIzMCwgMTM2LCA2LCAxLCAyNDIsIDE2MSwgMTM2LCA2LCAxLCAyNDcsIDk0LCAKLSAgICAxMzYsIDYsIDEsIDIxMywgMTIsIDEzNiwgNiwgMSwgMjEyLCA2MSwgMTM2LCA2LCAxLCAyNDUsIDI0NSwgMTM2LCA2LCAxLCAKLSAgICAyMTIsIDg0LCAxMzYsIDYsIDEsIDIzNSwgMTQ2LCAxMzYsIDYsIDEsIDcwLCAyMzUsIDE0NiwgMTM2LCA2LCAxLCA3MiwgCi0gICAgMTM2LCA2LCAxLCAyNDcsIDExMiwgMTM2LCA2LCAxLCAyMzQsIDI0NSwgMTM2LCA2LCAxLCAyMzIsIDIxNSwgMTM2LCA2LCAxLCAKLSAgICAyMzAsIDEwMSwgMTM2LCA2LCAxLCAyMzAsIDEyLCAxMzYsIDYsIDEsIDIyNywgNTEsIDEzNiwgNiwgMSwgMjI1LCAxMzgsIAotICAgIDEzNiwgNiwgMSwgMjIzLCAxMjQsIDEzNiwgNiwgMSwgMjIwLCAxMSwgMTM2LCA2LCAxLCAyMTYsIDQ2LCAxMzYsIDYsIDEsIAotICAgIDIxNSwgMTcxLCAxMzYsIDYsIDEsIDI0MywgMjE2LCAxMzYsIDYsIDEsIDI0MSwgMTg0LCAxMzYsIDYsIDEsIDIyNywgMywgCi0gICAgMTM2LCA2LCAxLCAyMjYsIDk2LCAxMzYsIDYsIDEsIDIyMCwgMTUzLCAxMzYsIDYsIDEsIDIxNiwgMTI1LCAxMzYsIDYsIDEsIAotICAgIDI1MCwgMTIsIDEzNiwgNiwgMSwgMjIxLCAyNCwgMTM2LCA2LCAxLCAyMTMsIDE4LCAxMzYsIDYsIDEsIDIxMywgMjAsIDEzNiwgCi0gICAgNiwgMSwgMjEzLCA0NywgMTM2LCA2LCAxLCAyMTksIDE4NSwgMTU5LCAxMzYsIDYsIDEsIDIxMiwgMjAzLCAxMzYsIDYsIDEsIAotICAgIDMsIDIxMiwgMTc0LCAxMzYsIDYsIDEsIDMsIDIxMiwgMTc1LCAyLCAyMTgsIDI3LCAxMzYsIDYsIDEsIDIxMiwgMjM1LCAKLSAgICAxMzYsIDYsIDEsIDIzNSwgMTgyLCAzLCAyMTIsIDE3NCwgMTM2LCA2LCAxLCAyNTEsIDE3MiwgMjEyLCAxNzQsIDEzNiwgNiwgCi0gICAgMSwgMjM1LCAxODIsIDI1MSwgMTcyLCAyMTIsIDE3NCwgMTM2LCA2LCAxLCAyNDQsIDUxLCAxMzYsIDYsIDEsIDIzNSwgMTQ0LCAKLSAgICAxMzYsIDYsIDEsIDIyMCwgMTUyLCAxMzYsIDYsIDEsIDIxNiwgMTYwLCA2MSwgMTM2LCA2LCAxLCAyMzMsIDk4LCAyMzAsIAotICAgIDEwMSwgMTM2LCAzLCAxLCAyNTMsIDc1LCAxMzYsIDMsIDEsIDI1MSwgNDYsIDEzNiwgMywgMSwgMjE0LCAyMzAsIDEzNiwgMywgCi0gICAgMSwgMjQyLCAxNjEsIDEzNiwgMywgMSwgMjQ3LCA5NCwgMTM2LCAzLCAxLCAyMTMsIDEyLCAxMzYsIDMsIDEsIDIxMiwgNjEsIAotICAgIDEzNiwgMywgMSwgMjQ1LCAyNDUsIDEzNiwgMywgMSwgMjEyLCA4NCwgMTM2LCAzLCAxLCAyMzUsIDE0NiwgMTM2LCAzLCAxLCAKLSAgICA3MCwgMjM1LCAxNDYsIDEzNiwgMywgMSwgNzIsIDEzNiwgMywgMSwgMjQ3LCAxMTIsIDEzNiwgMywgMSwgMjM0LCAyNDUsIAotICAgIDEzNiwgMywgMSwgMjMyLCAyMTUsIDEzNiwgMywgMSwgMjMwLCAxMDEsIDEzNiwgMywgMSwgMjMwLCAxMiwgMTM2LCAzLCAxLCAKLSAgICAyMjcsIDUxLCAxMzYsIDMsIDEsIDIyNSwgMTM4LCAxMzYsIDMsIDEsIDIyMywgMTI0LCAxMzYsIDMsIDEsIDIyMCwgMTEsIAotICAgIDEzNiwgMywgMSwgMjE2LCA0NiwgMTM2LCAzLCAxLCAyMTUsIDE3MSwgMTM2LCAzLCAxLCAyNDMsIDIxNiwgMTM2LCAzLCAxLCAKLSAgICAyNDEsIDE4NCwgMTM2LCAzLCAxLCAyMjcsIDMsIDEzNiwgMywgMSwgMjI2LCA5NiwgMTM2LCAzLCAxLCAyMjAsIDE1MywgCi0gICAgMTM2LCAzLCAxLCAyMTYsIDEyNSwgMTM2LCAzLCAxLCAyNTAsIDEyLCAxMzYsIDMsIDEsIDIyMSwgMjQsIDEzNiwgMywgMSwgCi0gICAgMjEzLCAxOCwgMTM2LCAzLCAxLCAyMTMsIDIwLCAxMzYsIDMsIDEsIDIxMywgNDcsIDEzNiwgMywgMSwgMjE5LCAxODUsIAotICAgIDE1OSwgMTM2LCAzLCAxLCAyMTIsIDIwMywgMTM2LCAzLCAxLCAzLCAyMTIsIDE3NCwgMTM2LCAzLCAxLCAzLCAyMTIsIDE3NSwgCi0gICAgMiwgMjE4LCAyNywgMTM2LCAzLCAxLCAyMTIsIDIzNSwgMTM2LCAzLCAxLCAyMzUsIDE4MiwgMywgMjEyLCAxNzQsIDEzNiwgCi0gICAgMywgMSwgMjUxLCAxNzIsIDIxMiwgMTc0LCAxMzYsIDMsIDEsIDIzNSwgMTgyLCAyNTEsIDE3MiwgMjEyLCAxNzQsIDEzNiwgCi0gICAgMywgMSwgMjQ0LCA1MSwgMTM2LCAzLCAxLCAyMzUsIDE0NCwgMTM2LCAzLCAxLCAyMjAsIDE1MiwgMTM2LCAzLCAxLCAyMTYsIAotICAgIDE2MCwgNjEsIDEzNiwgMywgMSwgMjMzLCA5OCwgMjMwLCAxMDEsIDcsIDYsIDEsIDIzMywgMTcxLCAyLCA1MSwgMTM0LCA3LCAKLSAgICAzLCAxLCAyMzMsIDE3MSwgMiwgNTEsIDEzNCwgNywgNiwgMSwgMjMzLCAxNzEsIDIsIDIzMSwgMzcsIDIxNywgNDIsIDcsIDYsIAotICAgIDEsIDIyNiwgMjMwLCAyLCA5MCwgNywgNiwgMSwgMjI0LCAxMTMsIDIsIDIxOCwgMjcsIDcsIDMsIDEsIDExOCwgMiwgOTAsIAotICAgIDcsIDMsIDEsIDIxOCwgMTAwLCAyLCAyNDcsIDIwNywgOTAsIDcsIDYsIDEsIDI0MiwgNDIsIDIsIDI0NywgMjQ2LCA3LCAzLCAKLSAgICAxLCAyNDIsIDQyLCAyLCAyNDcsIDI0NiwgNywgNiwgMSwgMjM1LCAyOCwgMiwgMjQ3LCAyNDYsIDcsIDMsIDEsIDIzNSwgMjgsIAotICAgIDIsIDI0NywgMjQ2LCA3LCA2LCAxLCAyMTIsIDE1MywgMiwgMjQ3LCAyNDYsIDcsIDMsIDEsIDIxMiwgMTUzLCAyLCAyNDcsIAotICAgIDI0NiwgNywgNiwgMSwgMjU0LCA1MiwgNywgNiwgMSwgMjMyLCAxMTAsIDIsIDEwMSwgNywgNiwgMSwgMjE2LCA1OCwgNjEsIAotICAgIDcsIDYsIDEsIDIxNiwgNTgsIDI1NCwgNTIsIDcsIDMsIDEsIDIxNSwgODAsIDIsIDQ2LCAxMDEsIDcsIDYsIDEsIDIxNCwgCi0gICAgODMsIDIsIDEwMSwgNywgMywgMSwgMjE0LCA4MywgMiwgMTAxLCA3LCAzLCAxLCAyMTUsIDgwLCAyLCAyNDksIDQxLCA3LCA2LCAKLSAgICAxLCAxNTEsIDI0MiwgNDEsIDcsIDMsIDEsIDE1MSwgMjQyLCA0MSwgNywgMywgMSwgMjE4LCAyNSwgMjI2LCA5LCA3LCAzLCAKLSAgICAxLCAxOTEsIDIsIDIyOCwgMTYxLCA3LCAzLCAxLCAyMTYsIDU4LCAyMjQsIDExMywgMiwgMjE4LCAyNywgNywgMywgMSwgCi0gICAgMTU3LCAyLCAxMTUsIDIyMywgMTMxLCAyMzUsIDIxMiwgNywgMSwgMywgNiwgMjE2LCA1OCwgNzQsIDcsIDIxOSwgMTAsIDMsIAotICAgIDEsIDIzNSwgMTQyLCA1OSwgMSwgNiwgMjE1LCA3OSwgNywgNiwgMSwgMjIzLCA0LCAyLCAyMTgsIDE5NSwgMjE4LCAyNywgNywgCi0gICAgNiwgMSwgMjEyLCAxNTMsIDIsIDIxOCwgMTk1LCAyMTgsIDI3LCA3OSwgNiwgMSwgMjU0LCA3MywgNzksIDMsIDEsIDI1NCwgCi0gICAgNzMsIDc5LCA2LCAxLCAyMTQsIDE1MSwgNzksIDMsIDEsIDIxNCwgMTUxLCA3OSwgNiwgMSwgMjQzLCA4MywgNzksIDMsIDEsIAotICAgIDI0MywgODMsIDc5LCA2LCAxLCAyNDgsIDEzNiwgNzksIDMsIDEsIDI0OCwgMTM2LCA3OSwgNiwgMSwgMjQ1LCAxNTEsIDc5LCAKLSAgICAzLCAxLCAyNDUsIDE1MSwgNzksIDYsIDEsIDIxOSwgMjIwLCA3OSwgMywgMSwgMjE5LCAyMjAsIDc5LCA2LCAxLCAyMTIsIAotICAgIDk0LCA3OSwgMywgMSwgMjEyLCA5NCwgNzksIDYsIDEsIDI0MSwgMjMxLCA3OSwgMywgMSwgMjQxLCAyMzEsIDc5LCA2LCAxLCAKLSAgICAyMTcsIDEzMCwgNzksIDMsIDEsIDIxNywgMTMwLCA3OSwgNiwgMSwgMjQwLCAxMDksIDc5LCAzLCAxLCAyNDAsIDEwOSwgNzksIAotICAgIDYsIDEsIDIzNCwgMjMyLCA3OSwgMywgMSwgMjM0LCAyMzIsIDc5LCA2LCAxLCAyMzMsIDk2LCA3OSwgMywgMSwgMjMzLCA5NiwgCi0gICAgNzksIDYsIDEsIDIzMSwgNDIsIDc5LCAzLCAxLCAyMzEsIDQyLCA3OSwgNiwgMSwgMjI5LCA2NCwgNzksIDMsIDEsIDIyOSwgCi0gICAgNjQsIDc5LCA2LCAxLCAyMzMsIDI0MiwgNzksIDMsIDEsIDIzMywgMjQyLCA3OSwgNiwgMSwgNzUsIDc5LCAzLCAxLCA3NSwgCi0gICAgNzksIDYsIDEsIDIyNSwgMjQwLCA3OSwgMywgMSwgMjI1LCAyNDAsIDc5LCA2LCAxLCAyMjMsIDExMiwgNzksIDMsIDEsIAotICAgIDIyMywgMTEyLCA3OSwgNiwgMSwgMjIwLCA5MSwgNzksIDMsIDEsIDIyMCwgOTEsIDc5LCA2LCAxLCAyMTcsIDI0OCwgNzksIAotICAgIDMsIDEsIDIxNywgMjQ4LCA3OSwgNiwgMSwgMjE1LCAxOTYsIDc5LCAzLCAxLCAyMTUsIDE5NiwgNzksIDYsIDEsIDI0NCwgCi0gICAgOTAsIDc5LCAzLCAxLCAyNDQsIDkwLCA3OSwgNiwgMSwgMjM0LCAxMTgsIDc5LCAzLCAxLCAyMzQsIDExOCwgNzksIDYsIDEsIAotICAgIDIyNSwgNDYsIDc5LCAzLCAxLCAyMjUsIDQ2LCA3OSwgNiwgMSwgMjI3LCA0NCwgNzksIDMsIDEsIDIyNywgNDQsIDc5LCA2LCAKLSAgICAxLCAyNDcsIDIwNSwgMjU0LCA3OCwgNzksIDMsIDEsIDI0NywgMjA1LCAyNTQsIDc4LCA3OSwgNiwgMSwgNTMsIDc5LCAyNTQsIAotICAgIDEwMywgNzksIDMsIDEsIDUzLCA3OSwgMjU0LCAxMDMsIDc5LCA2LCAxLCAyNDksIDU1LCAyNDUsIDE1MSwgNzksIDMsIDEsIAotICAgIDI0OSwgNTUsIDI0NSwgMTUxLCA3OSwgNiwgMSwgMjQ3LCAyMDUsIDIzNCwgMjMyLCA3OSwgMywgMSwgMjQ3LCAyMDUsIDIzNCwgCi0gICAgMjMyLCA3OSwgNiwgMSwgMjQ3LCAyMDUsIDIyOSwgNjQsIDc5LCAzLCAxLCAyNDcsIDIwNSwgMjI5LCA2NCwgNzksIDYsIDEsIAotICAgIDI0OSwgNTUsIDIyOSwgNjQsIDc5LCAzLCAxLCAyNDksIDU1LCAyMjksIDY0LCA3OSwgNiwgMSwgNTMsIDc5LCAyMjcsIDQ0LCAKLSAgICA3OSwgMywgMSwgNTMsIDc5LCAyMjcsIDQ0LCA3OSwgNiwgMSwgMjIyLCAxNjEsIDc5LCAzLCAxLCAyMjIsIDE2MSwgNzksIDYsIAotICAgIDEsIDI0OSwgNjgsIDIyMCwgMjM1LCA3OSwgMywgMSwgMjQ5LCA2OCwgMjIwLCAyMzUsIDc5LCA2LCAxLCA1MywgNzksIDIyMCwgCi0gICAgMjM1LCA3OSwgMywgMSwgNTMsIDc5LCAyMjAsIDIzNSwgNzksIDYsIDEsIDUzLCA3OSwgMjQ1LCA0MCwgNzksIDMsIDEsIDUzLCAKLSAgICA3OSwgMjQ1LCA0MCwgNzksIDYsIDEsIDI1NCwgOTAsIDIzNCwgMTIzLCA3OSwgMywgMSwgMjU0LCA5MCwgMjM0LCAxMjMsIAotICAgIDc5LCA2LCAxLCAyNDcsIDIwNSwgMjQxLCAzMiwgNzksIDMsIDEsIDI0NywgMjA1LCAyNDEsIDMyLCA3OSwgNiwgMSwgNTMsIAotICAgIDc5LCAyNDEsIDMyLCA3OSwgMywgMSwgNTMsIDc5LCAyNDEsIDMyLCA3OSwgNiwgMSwgNTMsIDc5LCAxNTksIDc5LCAzLCAxLCAKLSAgICA1MywgNzksIDE1OSwgNzksIDYsIDEsIDIzMywgMTcwLCAxNTksIDc5LCAzLCAxLCAyMzMsIDE3MCwgMTU5LCA3OSwgNiwgMSwgCi0gICAgNTMsIDc5LCAyNDEsIDIwMSwgNzksIDMsIDEsIDUzLCA3OSwgMjQxLCAyMDEsIDc5LCA2LCAxLCA1MywgNzksIDI0MSwgMjM0LCAKLSAgICA3OSwgMywgMSwgNTMsIDc5LCAyNDEsIDIzNCwgNzksIDYsIDEsIDUzLCA3OSwgMjQzLCA3OCwgNzksIDMsIDEsIDUzLCA3OSwgCi0gICAgMjQzLCA3OCwgNzksIDYsIDEsIDUzLCA3OSwgMjQ3LCAxMTUsIDc5LCAzLCAxLCA1MywgNzksIDI0NywgMTE1LCA3OSwgNiwgCi0gICAgMSwgNTMsIDc5LCAyMjAsIDIwMiwgNzksIDMsIDEsIDUzLCA3OSwgMjIwLCAyMDIsIDc5LCA2LCAxLCA1MywgMjI4LCA2MywgCi0gICAgMjIwLCAyMDIsIDc5LCAzLCAxLCA1MywgMjI4LCA2MywgMjIwLCAyMDIsIDc5LCA2LCAxLCA1MywgMjI4LCA2MywgMjI5LCAKLSAgICAxMTMsIDc5LCAzLCAxLCA1MywgMjI4LCA2MywgMjI5LCAxMTMsIDc5LCA2LCAxLCA1MywgMjI4LCA2MywgMjI4LCAxMCwgNzksIAotICAgIDMsIDEsIDUzLCAyMjgsIDYzLCAyMjgsIDEwLCA3OSwgNiwgMSwgNTMsIDIyOCwgNjMsIDIxNCwgMjEsIDc5LCAzLCAxLCA1MywgCi0gICAgMjI4LCA2MywgMjE0LCAyMSwgNzksIDE2LCAyMzQsIDI1MCwgNzksIDE2LCAyMzEsIDQzLCAyMjMsIDExMiwgNzksIDE2LCAKLSAgICAyMjUsIDI0MSwgMjIzLCAxMTIsIDc5LCAxNiwgMjE5LCA4NywgNzksIDE2LCAyMTcsIDI0OSwgMjIzLCAxMTIsIDc5LCAxNiwgCi0gICAgMjM0LCAxMTksIDIyMywgMTEyLCA3OSwgMTYsIDIyMCwgMjAzLCAyMjAsIDkxLCA3OSwgNiwgMSwgMjQ5LCA1NSwgMjIwLCAKLSAgICAyMzUsIDc5LCAzLCAxLCAyNDksIDU1LCAyMjAsIDIzNSwgNzksIDYsIDEsIDI0OSwgNTUsIDI0MywgNzgsIDc5LCAzLCAxLCAKLSAgICAyNDksIDU1LCAyNDMsIDc4LCA3OSwgMzcsIDIyOSwgNjUsIDQ5LCA3OSwgMzcsIDIxOSwgMTc5LCAyNTMsIDEzOSwgNzksIAotICAgIDM3LCAyMTksIDE3OSwgMjMzLCA0NSwgNzksIDUzLCAyMjgsIDYzLCAyNDMsIDIwMCwgMjE5LCA2OSwgNzksIDUzLCAyMjgsIAotICAgIDYzLCAyNDcsIDE0OSwgMjI0LCAxNTgsIDc3LCA3OSwgNTMsIDIyOCwgNjMsIDIzNSwgMjM0LCAyMjQsIDE1OCwgNzcsIDc5LCAKLSAgICA1MywgMjI4LCA2MywgMjE0LCAyMTgsIDI0NywgMTI0LCA3OSwgMjQzLCAyMjgsIDEyMiwgMjQyLCA5LCA3OSwgMjQzLCAyMDAsIAotICAgIDIxOSwgNjksIDc5LCAyMzAsIDE5NCwgMjQ3LCAxMjQsIDEwMCwgMywgMSwgMjU0LCAzMiwgMTAwLCAzLCAxLCAyNTIsIDcxLCAKLSAgICAxMDAsIDMsIDEsIDI0MywgODIsIDEwMCwgMywgMSwgMjQ3LCA4MiwgMTAwLCAzLCAxLCAyNDUsIDEwOCwgMTAwLCAzLCAxLCAKLSAgICAyMTQsIDE0MSwgMTAwLCAzLCAxLCAyMTIsIDgyLCAxMDAsIDMsIDEsIDIxOCwgMTEsIDEwMCwgMywgMSwgMjM1LCAyNTEsIAotICAgIDEwMCwgMywgMSwgMjM0LCAyMzksIDEwMCwgMywgMSwgMjMzLCAxMDQsIDEwMCwgMywgMSwgMjMxLCAyNDgsIDEwMCwgMywgMSwgCi0gICAgMjMwLCAxNSwgMTAwLCAzLCAxLCAyMjcsIDYyLCAxMDAsIDMsIDEsIDIyNiwgMTQ1LCAxMDAsIDMsIDEsIDIxMiwgNzEsIAotICAgIDEwMCwgMywgMSwgMjI0LCA2MSwgMTAwLCAzLCAxLCAyMjIsIDE1OSwgMTAwLCAzLCAxLCAyMTgsIDEsIDEwMCwgMywgMSwgCi0gICAgMjE1LCAxNjAsIDEwMCwgMywgMSwgMjI2LCAxNiwgMTAwLCAzLCAxLCAyMzQsIDEyNywgMTAwLCAzLCAxLCAyNDIsIDIxNywgCi0gICAgMTAwLCAzLCAxLCAyMjQsIDIxNywgMTAwLCAzLCAxLCAyMjAsIDIwMCwgMTAwLCAzLCAxLCAyNTAsIDM0LCAxMDAsIDMsIDEsIAotICAgIDI1MCwgMTk1LCAxMDAsIDMsIDEsIDIzNSwgMTAzLCAxMDAsIDMsIDEsIDI0OSwgMjMzLCAxMDAsIDMsIDEsIDI1MCwgNzksIAotICAgIDEwMCwgMywgMSwgMjEzLCAxNTEsIDEwMCwgMywgMSwgMjM1LCAxMTMsIDEwMCwgMywgMSwgMjQyLCAyNCwgMTAwLCAzLCAxLCAKLSAgICAyNDEsIDIyMiwgMTAwLCAzLCAxLCAyNDEsIDE2MCwgMTAwLCAzLCAxLCAyMTQsIDYsIDEwMCwgMywgMSwgMjQxLCAyNDMsIAotICAgIDEwMCwgMywgMSwgMjQxLCA1MSwgMjE3LCA2MiwgMSwgMTg2LCAyMTcsIDYyLCAxLCAyMTMsIDg3LCAyMTcsIDYyLCAxLCAKLSAgICAyMTMsIDg2LCAyMTcsIDYyLCAxLCAyMTMsIDc2LCAyMTcsIDYyLCAxLCAyMTMsIDc0LCAyMTcsIDYyLCAxLCAyNTEsIDIwOSwgCi0gICAgMjU0LCAxNzYsIDIxMywgNzAsIDIxNywgNjIsIDEsIDIxMywgNzAsIDIxNywgNjIsIDEsIDIxMywgODQsIDIxNywgNjIsIDEsIAotICAgIDIxMywgODEsIDIxNywgNjIsIDEsIDIxMywgODMsIDIxNywgNjIsIDEsIDIxMywgODIsIDIxNywgNjIsIDEsIDIxMywgMywgCi0gICAgMjE3LCA2MiwgMSwgMjEzLCA3OCwgMjE3LCA2MiwgMSwgMjEzLCA2OCwgMjE3LCA2MiwgMSwgMjE2LCA3OSwgMjEzLCA2OCwgCi0gICAgMjE3LCA2MiwgMSwgMjEzLCA2NSwgMjE3LCA2MiwgMSwgMjEzLCA3MiwgMjE3LCA2MiwgMSwgMjUxLCAyMDksIDI1NCwgMTc2LCAKLSAgICAyMTMsIDcyLCAyMTcsIDYyLCAxLCAyMTYsIDc5LCAyMTMsIDcyLCAyMTcsIDYyLCAxLCAyMTMsIDcxLCAyMTcsIDYyLCAxLCAKLSAgICAyMTMsIDkxLCAyMTcsIDYyLCAxLCAyMTMsIDY2LCAyMTcsIDYyLCAxLCAyMTYsIDc5LCAyMTMsIDY2LCAyMTcsIDYyLCAxLCAKLSAgICAyMTMsIDU2LCAyMTcsIDYyLCAxLCAyMTYsIDc5LCAyMTMsIDU2LCAyMTcsIDYyLCAxLCAyMTIsIDI1NSwgMjE3LCA2MiwgMSwgCi0gICAgMjEzLCA0MCwgMjE3LCA2MiwgMSwgMjU0LCAxMTIsIDIxMywgNDAsIDIxNywgNjIsIDEsIDIxNiwgNzksIDIxMywgNDAsIAotICAgIDIxNywgNjIsIDEsIDIxMywgNjQsIDIxNywgNjIsIDEsIDIxMywgNjMsIDIxNywgNjIsIDEsIDIxMywgNjAsIDIxNywgNjIsIAotICAgIDEsIDIxNiwgNzksIDIxMywgNzMsIDIxNywgNjIsIDEsIDIxNiwgNzksIDIxMywgNTgsIDIxNywgNjIsIDEsIDIxMywgNTcsIAotICAgIDIxNywgNjIsIDEsIDIxMiwgMjAzLCAyMTcsIDYyLCAxLCAyMTMsIDU0LCAyMTcsIDYyLCAxLCAyMTMsIDUzLCAyMTcsIDYyLCAKLSAgICAxLCAyMTMsIDc1LCAyMTcsIDYyLCAxLCAyMTYsIDc5LCAyMTMsIDc1LCAyMTcsIDYyLCAxLCAyNTMsIDc5LCAyMTMsIDc1LCAKLSAgICAyMTcsIDYyLCAxLCAyMTMsIDUyLCAyMTcsIDYyLCAxLCAyMTMsIDUwLCAyMTcsIDYyLCAxLCAyMTMsIDUxLCAyMTcsIDYyLCAKLSAgICAxLCAyMTMsIDQ5LCAyMTcsIDYyLCAxLCAyMTMsIDQ4LCAyMTcsIDYyLCAxLCAyMTMsIDg1LCAyMTcsIDYyLCAxLCAyMTMsIAotICAgIDQ2LCAyMTcsIDYyLCAxLCAyMTMsIDQ1LCAyMTcsIDYyLCAxLCAyMTMsIDQ0LCAyMTcsIDYyLCAxLCAyMTMsIDQzLCAyMTcsIAotICAgIDYyLCAxLCAyMTMsIDQxLCAyMTcsIDYyLCAxLCAyMTcsIDI0MSwgMjEzLCA0MSwgMjE3LCA2MiwgMSwgMjEzLCAzOSwgMjE3LCAKLSAgICA2MiwgNTksIDEsIDIzMywgMTQ5LCA3NywgMjE3LCA2MiwgMjIxLCA1OCwgNzcsIDIxNywgNjIsIDI0OSwgMTMzLCAyMzUsIAotICAgIDY2LCAyOCwgNCwgMjMyLCAyMDcsIDI4LCA0LCAyMzAsIDIzMCwgMjgsIDQsIDIyMywgMTEwLCAyOCwgNCwgMjE5LCAyNDEsIAotICAgIDI4LCA0LCAyMjAsIDE4NiwgMjgsIDQsIDI1MSwgMTI3LCAyOCwgNCwgMjE2LCAyNTIsIDI4LCA0LCAyNDksIDE3NCwgMjgsIAotICAgIDQsIDIyOCwgMTgzLCAyOCwgNCwgMjI3LCAyNTIsIDI4LCA0LCAyNDIsIDE1NiwgMjI3LCAxMjAsIDI4LCA0LCAyMTIsIDE1LCAKLSAgICAyOCwgNCwgMjQ3LCA5NywgMjgsIDQsIDI0OCwgNTUsIDI4LCA0LCAyMzUsIDcwLCAyOCwgNCwgMjE3LCAxMDgsIDI4LCA0LCAKLSAgICAyNTAsIDIyLCAyOCwgNCwgMjI1LCAyNTIsIDI4LCA0LCAyMjUsIDE0OSwgMjgsIDQsIDI0MiwgMjMxLCAyOCwgNCwgMjQyLCAKLSAgICAyMjcsIDI4LCA0LCAyNDIsIDIyOCwgMjgsIDQsIDI0MiwgMjI5LCAyOCwgNCwgMjE5LCAxNTcsIDI4LCA0LCAyMTksIDExNywgCi0gICAgMjgsIDQsIDIxOSwgMTI4LCAyOCwgNCwgMjE5LCAxNTYsIDI4LCA0LCAyMTksIDEzMiwgMjgsIDQsIDIxOSwgMTMzLCAyOCwgCi0gICAgNCwgMjE5LCAxMjEsIDI4LCA0LCAyNTAsIDE0NiwgMjgsIDQsIDI1MCwgMTI2LCAyOCwgNCwgMjUwLCAxMjgsIDI4LCA0LCAKLSAgICAyNTAsIDE0NSwgMjgsIDQsIDI1MCwgMTQzLCAyOCwgNCwgMjUwLCAxNDQsIDI4LCA0LCAyNTAsIDEyNywgMjgsIDQsIDIxMSwgCi0gICAgMjQyLCAyOCwgNCwgMjExLCAyMjIsIDI4LCA0LCAyMTEsIDIzMywgMjgsIDQsIDIxMSwgMjQxLCAyOCwgNCwgMjExLCAyMzYsIAotICAgIDI4LCA0LCAyMTEsIDIzNywgMjgsIDQsIDIxMSwgMjI1LCAyOCwgNCwgMjUwLCAxNDIsIDI4LCA0LCAyNTAsIDEyOSwgMjgsIAotICAgIDQsIDI1MCwgMTMxLCAyOCwgNCwgMjUwLCAxNDEsIDI4LCA0LCAyNTAsIDEzOSwgMjgsIDQsIDI1MCwgMTQwLCAyOCwgNCwgCi0gICAgMjUwLCAxMzAsIDI4LCA0LCAyMjQsIDEyNSwgMjgsIDQsIDIyNCwgMTE1LCAyOCwgNCwgMjI0LCAxMjEsIDI4LCA0LCAyMjQsIAotICAgIDEyNCwgMjgsIDQsIDIyNCwgMTIyLCAyOCwgNCwgMjI0LCAxMjMsIDI4LCA0LCAyMjQsIDEyMCwgMjgsIDQsIDIzMywgMTgxLCAKLSAgICAyOCwgNCwgMjMzLCAxNzMsIDI4LCA0LCAyMzMsIDE3NiwgMjgsIDQsIDIzMywgMTgwLCAyOCwgNCwgMjMzLCAxNzcsIDI4LCAKLSAgICA0LCAyMzMsIDE3OCwgMjgsIDQsIDIzMywgMTc0LCAyOCwgNCwgMjEzLCAxMTgsIDI4LCA0LCAyMTMsIDEwOCwgMjgsIDQsIAotICAgIDIxMywgMTE0LCAyOCwgNCwgMjEzLCAxMTcsIDI4LCA0LCAyMTMsIDExNSwgMjgsIDQsIDIxMywgMTE2LCAyOCwgNCwgMjEzLCAKLSAgICAxMTMsIDI4LCA0LCAyNDIsIDUyLCAyOCwgNCwgMjQyLCA0MywgMjgsIDQsIDI0MiwgNDYsIDI4LCA0LCAyNDIsIDUxLCAyOCwgCi0gICAgNCwgMjQyLCA0OCwgMjgsIDQsIDI0MiwgNDksIDI4LCA0LCAyNDIsIDQ1LCAzNywgMzMsIDEsIDI1MSwgMjUxLCAzNywgMzMsIAotICAgIDEsIDIxNCwgMjMyLCAzNywgMzMsIDEsIDI0MiwgMjEyLCAzNywgMzMsIDEsIDI0OCwgNDEsIDM3LCAzMywgMSwgMjEyLCA2NywgCi0gICAgMzcsIDMzLCAxLCAyMTIsIDg3LCAzNywgMzMsIDEsIDE4MSwgMzcsIDMzLCAxLCAyNDUsIDEzMSwgMzcsIDMzLCAxLCAyNDUsIAotICAgIDExNywgMzcsIDMzLCAxLCAyNDUsIDEwOCwgMzcsIDMzLCAxLCA3NSwgMzcsIDMzLCAxLCAyMjYsIDk2LCAzNywgMzMsIDEsIAotICAgIDI0NSwgNTUsIDM3LCAzMywgMSwgMjQ1LCA0NSwgMzcsIDMzLCAxLCAyMTcsIDIyOSwgMzcsIDMzLCAxLCAxNTksIDM3LCAzMywgCi0gICAgMSwgMjE2LCAxMzYsIDM3LCAzMywgMSwgMjUwLCA2NywgMzcsIDMzLCAxLCAyMjEsIDI0LCAzNywgMzMsIDEsIDIyMCwgMjQ1LCAKLSAgICAzNywgMzMsIDEsIDI0NCwgNTEsIDM3LCAzMywgMSwgMjQ1LCA0NCwgMzcsIDMzLCAxLCA2MSwgMzcsIDMzLCAxLCAyMzYsIAotICAgIDU1LCAzNywgMzMsIDEsIDI0NywgMTEzLCAzNywgMzMsIDEsIDIzMCwgMjEwLCAyMTUsIDE3NSwgMzcsIDMzLCAxLCAyMTMsIAotICAgIDQ5LCAzNywgMzMsIDEsIDIxMiwgMjAzLCAzNywgMzMsIDEsIDIzNSwgMTgxLCA2MSwgMzcsIDMzLCAxLCAyMzIsIDIyMSwgCi0gICAgMjEyLCAxNzQsIDM3LCAzMywgMSwgMjUxLCAxNzIsIDIxMiwgMTc0LCAzNywgMzMsIDEsIDIzNSwgMTgxLCAyNTEsIDE3MiwgCi0gICAgMjEyLCAxNzQsIDQ2LCAyNTQsIDE5LCAyMTksIDUsIDIzMSwgMjE3LCA0NiwgMjU0LCAxOSwgMjQ2LCA3MiwgMjE5LCA1LCAKLSAgICAyMzEsIDIxNywgNDIsIDIxOSwgNSwgMTI1LCA0NiwgMjE5LCA1LCAxMjUsIDQyLCAyNDYsIDcyLCAyMTksIDUsIDEyNSwgNDYsIAotICAgIDI0NiwgNzIsIDIxOSwgNSwgMTI1LCAyMjQsIDQ4LCAyMzUsIDE5OSwgMjMxLCAyMTcsIDIyNCwgNDgsIDI0NiwgNzIsIDIzNSwgCi0gICAgMTk5LCAyMzEsIDIxNywgMjQ2LCA3MiwgMjE2LCAxOTksIDIzMSwgMjE3LCA0MiwgMjE2LCAxOTksIDEyNSwgNDYsIDIxNiwgCi0gICAgMTk5LCAxMjUsIDIyNCwgNDgsIDIxOSwgMTY2LCA0MiwgMjI0LCA0OCwgMjI3LCA2NCwgMTI1LCA0NiwgMjI0LCA0OCwgMjI3LCAKLSAgICA2NCwgMTI1LCAyNDUsIDE2NiwgMjQ5LCA5NywgMjI2LCAxNDEsIDI0MywgMjQ3LCAyMjYsIDE0MSwgMjIzLCAyMDIsIDI0MywgCi0gICAgMjQ3LCAyMjYsIDE0MSwgMjQwLCAxNTcsIDI0NiwgNzIsIDIyNywgMTE1LCAyNDYsIDU4LCAyNTQsIDI4LCAyMTUsIDEyNCwgCi0gICAgMjU0LCAyOCwgMjQ2LCA3MiwgMjIzLCAxNDQsIDI1NCwgMTgsIDUxLCAyMjcsIDExMiwgMjQwLCAxNjAsIDIzNSwgMTkxLCAKLSAgICAyMzUsIDE5OCwgMjI2LCAxODYsIDI1MSwgODEsIDI0MCwgMTYxLCAyLCAyNDcsIDIwOSwgMjE3LCA0MywgMiwgMjIzLCAxMzEsIAotICAgIDQ5LCA0MiwgMTE1LCAyMjYsIDEzMywgMTI1LCA0NiwgMTE1LCAyMjYsIDEzMywgMTI1LCAyMTcsIDQzLCAyLCA2MiwgNDksIAotICAgIDIxNywgNDMsIDIsIDYyLCA1NSwgNDIsIDcxLCAyNTIsIDYwLCAyLCAyMjQsIDE1MiwgNDYsIDcxLCAyNTIsIDYwLCAyLCAKLSAgICAyMjQsIDE1MiwgMjE2LCAyMjcsIDQyLCAxNTEsIDEyNSwgMjE2LCAyMjcsIDQ2LCAxNTEsIDEyNSwgMjUxLCAxMDEsIDQyLCAKLSAgICAxNTEsIDEyNSwgMjUxLCAxMDEsIDQ2LCAxNTEsIDEyNSwgNDIsIDIyMCwgMTEzLCAxMTEsIDEyNSwgNDYsIDIyMCwgMTEzLCAKLSAgICAxMTEsIDEyNSwgNDIsIDUxLCAyMjYsIDEzMSwgNDYsIDUxLCAyMjYsIDEzMSwgMTE3LCAxNzYsIDExMCwgMTIyLCA2MiwgCi0gICAgMjI1LCAyNiwgMTIyLCA2MiwgMTEwLCAxMTcsIDE3NiwgMjI1LCAyNiwgOTEsIDI0MywgMjM3LCA2MiwgMjI1LCAyNiwgMjQ0LCAKLSAgICA1MCwgNjIsIDc3LCAyMjMsIDIwMiwgMjI0LCAxNTgsIDc3LCA3MSwgMjE3LCA0MiwgMjIzLCAxMzEsIDIyNSwgMTQ0LCAyMTMsIAotICAgIDE5NiwgMjIxLCA1OCwgMjMxLCAzNywgMjQ3LCA3NCwgOSwgMzQsIDIyMywgMjI3LCA5LCAzNCwgMjQ5LCAyMDMsIDksIDM0LCAKLSAgICAyMjIsIDk1LCAxMTYsIDksIDM0LCAyMjIsIDk1LCAxMDksIDksIDM0LCAyMjIsIDk1LCAxNjYsIDksIDM0LCAyMjYsIDQzLCAKLSAgICA5LCAzNCwgMjUxLCA4OSwgOSwgMzQsIDIxOCwgNDAsIDksIDM0LCAyMzQsIDQyLCAxMTYsIDksIDM0LCAyMzQsIDQyLCAxMDksIAotICAgIDksIDM0LCAyNDcsIDEyMiwgOSwgMzQsIDIyMiwgOTgsIDksIDM0LCAzLCAxMTYsIDksIDM0LCAzLCAxMDksIDksIDM0LCAKLSAgICAyMzMsIDEyMSwgMTE2LCA5LCAzNCwgMjMzLCAxMjEsIDEwOSwgOSwgMzQsIDIzMywgMTIxLCAxNjYsIDksIDM0LCAyMzMsIAotICAgIDEyMSwgMTYzLCA5LCAzNCwgMjE5LCAyNTIsIDksIDM0LCAyMTcsIDk4LCA5LCAzNCwgMjE5LCAyNTAsIDExNiwgOSwgMzQsIAotICAgIDIxOSwgMjUwLCAxMDksIDksIDM0LCAyNDEsIDIxMiwgMTE2LCA5LCAzNCwgMjQxLCAyMTIsIDEwOSwgOSwgMzQsIDI0MSwgCi0gICAgMjU0LCA5LCAzNCwgMjI0LCAzOSwgOSwgMzQsIDI1MCwgMTksIDksIDM0LCAyMTgsIDIzOCwgOSwgMzQsIDIzMCwgMTk4LCA5LCAKLSAgICAzNCwgMjQ4LCAzOSwgOSwgMzQsIDIzMCwgMTkwLCA5LCAzNCwgMjQ5LCAyMTgsIDksIDM0LCAyMTQsIDI1LCAxMTYsIDksIAotICAgIDM0LCAyMTQsIDI1LCAxMDksIDksIDM0LCAyNDQsIDY1LCA5LCAzNCwgMjI2LCAxMDYsIDExNiwgOSwgMzQsIDIyNiwgMTA2LCAKLSAgICAxMDksIDksIDM0LCAyMjAsIDg2LCAxNTEsIDIxNiwgMTk0LCAyMTYsIDE0NiwgOSwgMzQsIDI0OSwgODQsIDksIDM0LCAyNDcsIAotICAgIDkwLCA5LCAzNCwgMjM1LCAxMzUsIDksIDM0LCAyNTEsIDEyMiwgNjUsIDI0OSwgMTg3LCA5LCAzNCwgMjQ0LCAyMzksIDksIAotICAgIDM0LCAyMTksIDE4MSwgMTE2LCA5LCAzNCwgMjE5LCAxODEsIDEwOSwgOSwgMzQsIDI1MiwgNzMsIDksIDM0LCAyMjAsIDkzLCAKLSAgICA5LCAzNCwgMjUwLCAyNDksIDIyMCwgOTMsIDksIDM0LCAyMjksIDE3MiwgMTE2LCA5LCAzNCwgMjI5LCAxNzIsIDEwOSwgOSwgCi0gICAgMzQsIDIyOSwgMTcyLCAxNjYsIDksIDM0LCAyMjksIDE3MiwgMTYzLCA5LCAzNCwgMjMxLCAxMTEsIDksIDM0LCAyMjAsIAotICAgIDIzNywgOSwgMzQsIDIyNCwgNDUsIDksIDM0LCAyNDUsIDQsIDksIDM0LCAyMjcsIDc1LCA5LCAzNCwgMjUxLCA2MSwgMTE2LCAKLSAgICA5LCAzNCwgMjUxLCA2MSwgMTA5LCA5LCAzNCwgMjMxLCAxNTEsIDksIDM0LCAyMzAsIDE5MywgOSwgMzQsIDI0MiwgMTE3LCAKLSAgICAxMTYsIDksIDM0LCAyNDIsIDExNywgMTA5LCA5LCAzNCwgMjQyLCAxMTcsIDE2NiwgOSwgMzQsIDIxNywgNjAsIDksIDM0LCAKLSAgICAyNDksIDE4NiwgOSwgMzQsIDIxMywgMjUwLCAxMTYsIDksIDM0LCAyMTMsIDI1MCwgMTA5LCA5LCAzNCwgMjUwLCAyNDksIAotICAgIDIyMiwgODksIDksIDM0LCAyMjAsIDg2LCAyNDAsIDIzNSwgOSwgMzQsIDI0MCwgMjM1LCA5LCAzNCwgMjUwLCAyNDksIDIxOSwgCi0gICAgMTkwLCA5LCAzNCwgMjUwLCAyNDksIDIyMCwgMjMyLCA5LCAzNCwgMjQ0LCAxLCA5LCAzNCwgMjUwLCAyNDksIDI1MCwgMTYwLCAKLSAgICA5LCAzNCwgMjIwLCA4NiwgMjE0LCA0MSwgOSwgMzQsIDIxNCwgNDIsIDExNiwgOSwgMzQsIDIxNCwgNDIsIDEwOSwgOSwgMzQsIAotICAgIDI0OSwgMjIwLCA5LCAzNCwgMjUwLCAyNDksIDI0MiwgMTQyLCA5LCAzNCwgMTg0LCAxMTYsIDksIDM0LCAxODQsIDEwOSwgOSwgCi0gICAgMzQsIDI1MCwgMjQ5LCAyMzIsIDE5MCwgOSwgMzQsIDI1MCwgMjQ5LCAyNDMsIDY0LCA5LCAzNCwgMjMwLCAxODksIDExNiwgCi0gICAgOSwgMzQsIDIzMCwgMTg5LCAxMDksIDksIDM0LCAyMjQsIDUwLCA5LCAzNCwgMjUxLCAxMzAsIDksIDM0LCAyNTAsIDI0OSwgCi0gICAgMjE4LCA3LCAyMzMsIDc2LCA5LCAzNCwgMjUwLCAyNDksIDIzMywgNzcsIDksIDM0LCAyNTAsIDI0OSwgMjEzLCAyMjQsIDksIAotICAgIDM0LCAyNTAsIDI0OSwgMjQ0LCAxNSwgOSwgMzQsIDI0NSwgMTc0LCAxMTYsIDksIDM0LCAyNDUsIDE3NCwgMTA5LCA5LCAzNCwgCi0gICAgMjQ1LCAxNzQsIDE2NiwgOSwgMzQsIDI1MCwgMjQ5LCAyNDUsIDE3MywgOSwgMzQsIDI0MSwgMjE5LCA5LCAzNCwgMjUwLCAKLSAgICAyNDksIDI0MCwgMjMyLCA5LCAzNCwgMjUxLCAxMTksIDksIDM0LCAyNDIsIDE5OCwgOSwgMzQsIDI1MCwgMjQ5LCAyNDQsIAotICAgIDU5LCA5LCAzNCwgMjUwLCAyNDksIDI1MSwgMTYwLCA5LCAzNCwgMjUwLCAyNDksIDIyMiwgMTcyLCA5LCAzNCwgMjIwLCA4NiwgCi0gICAgMjEzLCAyNDMsIDksIDM0LCAyMjAsIDg2LCAyMTMsIDMyLCA5LCAzNCwgMjUwLCAyNDksIDI0MywgMjE0LCA5LCAzNCwgMjM1LCAKLSAgICAxNDEsIDI0NSwgOCwgOSwgMzQsIDI1MCwgMjQ5LCAyNDUsIDgsIDksIDM0LCAyMzUsIDE0MSwgMjE2LCAyMjgsIDksIDM0LCAKLSAgICAyNTAsIDI0OSwgMjE2LCAyMjgsIDksIDM0LCAyMzUsIDE0MSwgMjQ2LCA1MCwgOSwgMzQsIDI1MCwgMjQ5LCAyNDYsIDUwLCAKLSAgICA5LCAzNCwgMjE2LCA1NSwgOSwgMzQsIDIzNSwgMTQxLCAyMTYsIDU1LCA5LCAzNCwgMjUwLCAyNDksIDIxNiwgNTUsIDU3LCAKLSAgICAzNCwgMTE2LCA1NywgMzQsIDIzMiwgMjQyLCA1NywgMzQsIDI0NywgNzQsIDU3LCAzNCwgMjIwLCAyMywgNTcsIDM0LCAyMjIsIAotICAgIDk0LCA1NywgMzQsIDEwMSwgNTcsIDM0LCAxMDksIDU3LCAzNCwgMjMzLCA5LCA1NywgMzQsIDIzMSwgMjQ4LCA1NywgMzQsIAotICAgIDIzMywgNTcsIDU3LCAzNCwgMjQ1LCA4OCwgNTcsIDM0LCAxOTUsIDU3LCAzNCwgMTE5LCAyNTEsIDg5LCA1NywgMzQsIDI0OSwgCi0gICAgODYsIDU3LCAzNCwgMjQwLCAxMDQsIDU3LCAzNCwgMjE4LCA0MCwgNTcsIDM0LCAyMjcsIDQwLCAyNTEsIDg5LCA1NywgMzQsIAotICAgIDIzNCwgNDEsIDU3LCAzNCwgMjI1LCAxMDQsIDU3LCAzNCwgMjEzLCAxOTAsIDU3LCAzNCwgMjE5LCAxNzUsIDU3LCAzNCwgCi0gICAgNDYsIDIyNywgNDAsIDI1MSwgODksIDU3LCAzNCwgMjQxLCAxNjEsIDI0NSwgMTAzLCA1NywgMzQsIDIxNywgMjAwLCA1NywgCi0gICAgMzQsIDI0NywgMTIyLCA1NywgMzQsIDIyMiwgOTgsIDU3LCAzNCwgMjQ5LCAyMDMsIDU3LCAzNCwgMjI1LCA2NSwgNTcsIDM0LCAKLSAgICAyNTQsIDEyMCwgNTcsIDM0LCAyMzAsIDE4MCwgNTcsIDM0LCAyNDUsIDEwMywgNTcsIDM0LCAyNDUsIDE3OSwgNTcsIDM0LCAKLSAgICAyMjIsIDExOCwgNTcsIDM0LCAyNDIsIDE1MCwgNTcsIDM0LCAyNDIsIDE1MSwgMjIwLCA5LCA1NywgMzQsIDI0NSwgNywgNTcsIAotICAgIDM0LCAyNTEsIDE3MSwgNTcsIDM0LCAyMTMsIDIwOCwgNTcsIDM0LCAyNTAsIDM4LCA1NywgMzQsIDIyMywgOTgsIDU3LCAzNCwgCi0gICAgMjM1LCAyNDcsIDU3LCAzNCwgMjIwLCA3LCA1NywgMzQsIDIzMywgMTIwLCA1NywgMzQsIDI0OSwgOTUsIDU3LCAzNCwgMjE5LCAKLSAgICAxNjksIDU3LCAzNCwgMjMwLCAxODUsIDU3LCAzNCwgMjIzLCAxMjEsIDU3LCAzNCwgMjEzLCAxOTMsIDU3LCAzNCwgMjI3LCAKLSAgICA1NiwgNTcsIDM0LCAyMTYsIDYxLCA1NywgMzQsIDI0NiwgMzUsIDU3LCAzNCwgMjIwLCAxNzUsIDIxNywgOTgsIDU3LCAzNCwgCi0gICAgMjQ2LCA3MiwgMjQ5LCAyMDMsIDU3LCAzNCwgMTg0LCAyMTksIDQ4LCA1NywgMzQsIDExNywgMjQxLCAyNDksIDU3LCAzNCwgCi0gICAgMjIwLCAxODAsIDU3LCAzNCwgMjUxLCA5NSwgNTcsIDM0LCAyMTksIDI0OSwgNTcsIDM0LCAyNTEsIDY1LCA1NywgMzQsIAotICAgIDIxOSwgNzgsIDU3LCAzNCwgMjQxLCAyMTEsIDU3LCAzNCwgMjQyLCAxMCwgNTcsIDM0LCAyNDcsIDc3LCA1NywgMzQsIDI0MSwgCi0gICAgMjU0LCA1NywgMzQsIDI1MSwgODEsIDU3LCAzNCwgMjI0LCAzOSwgNTcsIDM0LCAyMjIsIDEwNiwgNTcsIDM0LCAyNDcsIAotICAgIDE1MSwgNTcsIDM0LCAyNTMsIDg0LCA1NywgMzQsIDIxOSwgMTY2LCA1NywgMzQsIDIyOCwgMTYyLCA1NywgMzQsIDIxOCwgCi0gICAgMjM4LCA1NywgMzQsIDIyMiwgMTI5LCA1NywgMzQsIDIzMCwgMTk4LCA1NywgMzQsIDIxNiwgMTkzLCA1NywgMzQsIDIzMywgCi0gICAgMTQ1LCA1NywgMzQsIDIxOSwgNjksIDU3LCAzNCwgMjQ4LCAzOSwgNTcsIDM0LCAyMTQsIDUsIDU3LCAzNCwgMjQ3LCAxMDAsIAotICAgIDIyOCwgMTYyLCA1NywgMzQsIDI0OSwgMTU0LCA1NywgMzQsIDI0MywgMTk0LCA1NywgMzQsIDI0OSwgMjE0LCA1NywgMzQsIAotICAgIDIxOSwgODIsIDU3LCAzNCwgMjE0LCAyNCwgNTcsIDM0LCAyNDQsIDY1LCA1NywgMzQsIDI0OSwgMjExLCA1NywgMzQsIDI0NCwgCi0gICAgMTI5LCA1NywgMzQsIDUxLCAyMTMsIDE2NiwgNTcsIDM0LCAxNTEsIDIxNiwgMTk0LCAyMTYsIDE0NiwgNTcsIDM0LCAyMjAsIAotICAgIDE3LCA1NywgMzQsIDI0NCwgMTM5LCA1NywgMzQsIDI0OSwgODQsIDU3LCAzNCwgMjQ3LCA5MCwgNTcsIDM0LCAyMjUsIDYyLCAKLSAgICA1NywgMzQsIDIzNSwgMTM1LCA1NywgMzQsIDIzMSwgMTMxLCA1NywgMzQsIDIxNywgNDEsIDU3LCAzNCwgMjE4LCAxOTAsIAotICAgIDU3LCAzNCwgMjMzLCAzLCA1NywgMzQsIDIxNSwgMTAzLCA1NywgMzQsIDI0NCwgODksIDU3LCAzNCwgMjUxLCAxMjIsIDY1LCAKLSAgICAyNDksIDE4NywgNTcsIDM0LCAyMjAsIDExNCwgNTcsIDM0LCAyNDYsIDcyLCAyMTcsIDE5NSwgNTcsIDM0LCAyMTMsIDIzOCwgCi0gICAgNTcsIDM0LCAyMjAsIDMxLCA1NywgMzQsIDI0NywgMTM5LCA1NywgMzQsIDI0NCwgMjM5LCA1NywgMzQsIDIxOSwgMTkzLCAKLSAgICA1NywgMzQsIDY4LCA1NywgMzQsIDIxOSwgNzEsIDU3LCAzNCwgMjE5LCAxODAsIDU3LCAzNCwgMjE2LCAyMTIsIDU3LCAzNCwgCi0gICAgMjQyLCAxMjMsIDU3LCAzNCwgMjUwLCAxNTEsIDU3LCAzNCwgMjE5LCA5OSwgNTcsIDM0LCAyNTIsIDczLCA1NywgMzQsIAotICAgIDIyMywgMTg0LCA1NywgMzQsIDIyMCwgOTMsIDU3LCAzNCwgMjM1LCAxMzAsIDU3LCAzNCwgMjI5LCAxNzEsIDU3LCAzNCwgCi0gICAgMjIwLCAyMzcsIDU3LCAzNCwgMjQ0LCAxMTgsIDU3LCAzNCwgMjI3LCA3NSwgNTcsIDM0LCAyNTQsIDI3LCA1NywgMzQsIAotICAgIDIyNSwgMTYyLCA1NywgMzQsIDI0NSwgMTgzLCA1NywgMzQsIDI1MSwgNjAsIDU3LCAzNCwgMjMxLCAxNTEsIDU3LCAzNCwgCi0gICAgMjMwLCAyNTIsIDU3LCAzNCwgMjIxLCA3NiwgNTcsIDM0LCAyNTMsIDE2NywgNTcsIDM0LCAyMzAsIDE5MywgNTcsIDM0LCAKLSAgICAyMTYsIDIzMiwgNTcsIDM0LCAyMjcsIDMxLCA1NywgMzQsIDI1MSwgMTI0LCA1NywgMzQsIDIxOSwgNjcsIDU3LCAzNCwgCi0gICAgMjQ5LCAxNjMsIDU3LCAzNCwgMjQyLCAxMTYsIDU3LCAzNCwgMjE3LCA2MCwgNTcsIDM0LCAyMzUsIDIxNCwgNTcsIDM0LCAKLSAgICAyNTEsIDEzNCwgNTcsIDM0LCAyMTQsIDQyLCAyNDUsIDEwMywgNTcsIDM0LCAyNDksIDE4NiwgNTcsIDM0LCAyMTMsIDI0OSwgCi0gICAgNTcsIDM0LCAyMjIsIDg5LCA1NywgMzQsIDI0MCwgMjM1LCA1NywgMzQsIDIxOSwgMTkwLCA1NywgMzQsIDIxNCwgMjU0LCAKLSAgICA1NywgMzQsIDI1MSwgMjQ4LCA1NywgMzQsIDIyNSwgMjA1LCA1NywgMzQsIDI1MiwgOTIsIDU3LCAzNCwgMjIwLCAyMzIsIAotICAgIDU3LCAzNCwgMjI0LCAzLCA1NywgMzQsIDIyMywgMzcsIDU3LCAzNCwgMjQ0LCAxLCA1NywgMzQsIDI1MSwgMTIzLCA1NywgCi0gICAgMzQsIDI1MCwgMTYwLCA1NywgMzQsIDI1MSwgMTQ5LCA1NywgMzQsIDIzMCwgMTk1LCA1NywgMzQsIDIxNCwgNDEsIDU3LCAKLSAgICAzNCwgMjQ5LCAyMjAsIDU3LCAzNCwgMjEzLCAyMjEsIDU3LCAzNCwgMjQ3LCAxMzIsIDU3LCAzNCwgMjE0LCAxNDIsIDU3LCAKLSAgICAzNCwgMjQyLCAxNDIsIDU3LCAzNCwgMjMyLCAxOTAsIDU3LCAzNCwgMjQzLCA2NCwgNTcsIDM0LCAyMzAsIDE4OCwgNTcsIAotICAgIDM0LCAyMjAsIDIyLCA1NywgMzQsIDIyMCwgMTc1LCAyMTgsIDI2LCAyNTEsIDE2MCwgNTcsIDM0LCAyMjQsIDUwLCA1NywgCi0gICAgMzQsIDI1MSwgMTMwLCA1NywgMzQsIDIxMywgMTg1LCA1NywgMzQsIDI0NCwgMTU4LCA1NywgMzQsIDIzMywgNzYsIDU3LCAKLSAgICAzNCwgMjE4LCA3LCAyMzMsIDc2LCA1NywgMzQsIDIzMywgNzIsIDU3LCAzNCwgMjE5LCAyMTcsIDU3LCAzNCwgMjMzLCA3NywgCi0gICAgNTcsIDM0LCAyMTMsIDIyNCwgNTcsIDM0LCAyNDQsIDE1LCA1NywgMzQsIDI0NSwgMTczLCA1NywgMzQsIDI0MSwgMjE5LCAKLSAgICA1NywgMzQsIDI0MywgMjI2LCA1NywgMzQsIDI0MCwgMjMyLCA1NywgMzQsIDI1MSwgMTE5LCA1NywgMzQsIDIxOCwgMTQsIAotICAgIDU3LCAzNCwgMjQyLCAxNiwgNTcsIDM0LCAyNDQsIDgyLCA1NywgMzQsIDIyMiwgMTk3LCAyMTMsIDIyMSwgNTcsIDM0LCAKLSAgICAyNTAsIDE1MywgNTcsIDM0LCAyNDIsIDE5OCwgNTcsIDM0LCAyNDQsIDU5LCA1NywgMzQsIDI1MSwgMTYwLCA1NywgMzQsIAotICAgIDIyMiwgMTcyLCA1NywgMzQsIDI0OCwgMjUsIDU3LCAzNCwgMjEzLCAyNDMsIDU3LCAzNCwgMjQxLCAxOTQsIDU3LCAzNCwgCi0gICAgMjEzLCAzMiwgNTcsIDM0LCAyMzEsIDUsIDU3LCAzNCwgMjUxLCAxNDQsIDU3LCAzNCwgMjQ1LCAxMTMsIDU3LCAzNCwgMjQzLCAKLSAgICAyMTQsIDU3LCAzNCwgMjE2LCAxNjcsIDU3LCAzNCwgMjQ2LCAzNywgNTcsIDM0LCAyMjQsIDMzLCA1NywgMzQsIDIyOCwgCi0gICAgMTY0LCA1NywgMzQsIDI0NSwgOCwgNTcsIDM0LCAyMTYsIDIyOCwgNTcsIDM0LCAyNDYsIDUwLCA1NywgMzQsIDIxNiwgNTUsIAotICAgIDU3LCAzNCwgMjQ0LCAxNywgMTA1LCAyNDcsIDI0NCwgMTM3LCA0MiwgMjExLCAyMTEsIDIyMywgMTQ4LCAxMDUsIDI0NywgCi0gICAgMjQ0LCAxMzcsIDc4LCAyMTEsIDIxMSwgNTUsIDEwNSwgMjQ3LCAyNDQsIDEzNywgNDIsIDIxMSwgMjExLCAyMzEsIDM3LCAKLSAgICAyNCwgMjIzLCAxNDgsIDEwNSwgMjQ3LCAyNDQsIDEzNywgNzgsIDIxMSwgMjExLCAyMzEsIDM3LCAyNCwgNTUsIDEwNSwgCi0gICAgMjQ3LCAyNDQsIDEzNywgMjQzLCAyMDAsIDIxOCwgMjEwLCAxMDUsIDI0NywgMjQ0LCAxMzcsIDIxOCwgMjExLCAyNDMsIAotICAgIDIxMywgNDksIDEwNSwgMjQ3LCAyNDQsIDEzNywgMjE4LCAyMTEsIDI0MywgMjEzLCA1NSwgMTA1LCAyNDcsIDI0NCwgMTM3LCAKLSAgICAyMTgsIDIxMSwgMjQzLCAyMTMsIDIzMywgNzAsIDEwNSwgMjQ3LCAyNDQsIDEzNywgMjE4LCAyMTEsIDI0MywgMjEzLCAyMTUsIAotICAgIDEzMSwgMjMzLCA3MCwgMTA1LCAyNDcsIDI0NCwgMTM3LCAyMTgsIDIxMSwgMjQzLCAyMTMsIDIxNSwgMTMxLCAyMjMsIDE0OCwgCi0gICAgMTA1LCAyNDcsIDI0NCwgMTM3LCAyMTgsIDIxMSwgMjQzLCAyMTMsIDIzMiwgMTYzLCAyMzMsIDcwLCAxMDUsIDI0NywgMjQ0LCAKLSAgICAxMzcsIDIyNiwgMjQ2LCAxMDUsIDIxOSwgMjA2LCAxMDUsIDI0OSwgMTU3LCAxMDUsIDI0MywgMjAwLCAyMTksIDY5LCAyNDcsIAotICAgIDEyOSwgNzcsIDIzNSwgMTMxLCAyMzUsIDIzMywgMjE5LCA5OCwgODcsIDEwNSwgMjM1LCAxNTYsIDc3LCAxMDUsIDI0OSwgCi0gICAgMTg5LCA3NywgMTA1LCA1MCwgMjEyLCA3OSwgNDIsIDI1NCwgMTksIDEyNSwgNDYsIDI1NCwgMTksIDEyNSwgNDIsIDUxLCAKLSAgICAyNTQsIDE5LCAxMjUsIDQ2LCA1MSwgMjU0LCAxOSwgMTI1LCA0MiwgMjQ5LCAxMDAsIDEyNSwgNDYsIDI0OSwgMTAwLCAxMjUsIAotICAgIDQyLCA2NywgMjQ5LCAxMDAsIDEyNSwgNDYsIDY3LCAyNDksIDEwMCwgMTI1LCA0MiwgODMsIDIzMywgNDQsIDEyNSwgNDYsIAotICAgIDgzLCAyMzMsIDQ0LCAxMjUsIDIyNSwgMTE3LCA3NywgMjQzLCA4LCA3NywgNDIsIDIxNiwgMjE5LCAyMjAsIDIzMywgMTI1LCAKLSAgICA0NiwgMjE2LCAyMTksIDIyMCwgMjMzLCAxMjUsIDQyLCA2NywgMjMzLCA0NCwgMTI1LCA0NiwgNjcsIDIzMywgNDQsIDEyNSwgCi0gICAgNDIsIDY3LCAyMTYsIDIxOSwgMjIwLCAyMzMsIDEyNSwgNDYsIDY3LCAyMTYsIDIxOSwgMjIwLCAyMzMsIDEyNSwgNDIsIDY3LCAKLSAgICA0MSwgMTI1LCA0NiwgNjcsIDQxLCAxMjUsIDIxNCwgMjAsIDI0OCwgMTAxLCAyMjMsIDIwMiwgNTEsIDIyNSwgNzIsIDIyNCwgCi0gICAgMTQzLCA3NywgNTEsIDIyNSwgNzIsIDIyNCwgMTQzLCA3NywgMTE1LCA1MSwgMjI1LCA3MiwgMjI0LCAxNDMsIDc3LCAyMjUsIAotICAgIDExNywgMTUyLCAyNDQsIDE1OCwgMjQxLCAyNDcsIDIyOCwgNTQsIDExNiwgMjQxLCAyNDcsIDIyOCwgNTQsIDEwOSwgMjQxLCAKLSAgICAyNDcsIDIyOCwgNTQsIDE2NiwgMjQxLCAyNDcsIDIyOCwgNTQsIDE2MywgMjQxLCAyNDcsIDIyOCwgNTQsIDE4MCwgMjQxLCAKLSAgICAyNDcsIDIyOCwgNTQsIDE4OSwgMjQxLCAyNDcsIDIyOCwgNTQsIDE5OCwgMjQxLCAyNDcsIDIyOCwgNTQsIDE5NSwgMjQxLCAKLSAgICAyNDcsIDIyOCwgNTQsIDIwMCwgMTA1LCAyMzMsIDI5LCAxNjAsIDc3LCAxMDUsIDIyMywgMTI1LCAxNjAsIDc3LCAxMDUsIAotICAgIDI0NywgMjUxLCAxNjAsIDc3LCAxMDUsIDI0NSwgODcsIDE2MCwgNzcsIDIzLCAyMjAsIDgxLCA2MiwgMTYwLCA3NywgMjMsIAotICAgIDUxLCA2MiwgMTYwLCA3NywgMjE0LCAxNiwgMjQ4LCAxMDEsIDcxLCAyMzQsIDIzOCwgMjIzLCAyMjgsIDc3LCA3MSwgMjM0LCAKLSAgICAyMzgsIDIyMywgMjI4LCAyLCAyMTQsIDExNiwgMjE5LCAyMTgsIDc3LCA3MSwgMjM0LCAyMzgsIDIyMywgMjI4LCAxNTIsIAotICAgIDIxNSwgMTMxLCAyNDIsIDksIDcxLCAyMzQsIDIzOCwgMjIzLCAyMjgsIDIsIDIxNCwgMTE2LCAyMTksIDIxOCwgMTUyLCAKLSAgICAyMTUsIDEzMSwgMjQyLCA5LCA3MSwgMjM0LCAyMzgsIDIyMywgMjI4LCAxNTIsIDIzMiwgMTYzLCAyNDIsIDksIDM2LCAyMjUsIAotICAgIDExNywgNzcsIDEwNSwgMjAxLCAyMzIsIDI0MywgMjQ0LCAxMTUsIDIyMSwgNTgsIDg3LCAyNDEsIDI0NywgMjI4LCA1NCwgCi0gICAgMjE3LCAyMDAsIDI0MSwgMjQ3LCAyMjgsIDU0LCAyMTYsIDM4LCAyNDEsIDI0NywgMjI4LCA1NCwgMjE3LCAxMTUsIDcxLCAKLSAgICAxMDUsIDIzNSwgMTU2LCA3NywgMjMxLCAyMDMsIDc3LCAyMjYsIDEyNywgMjU0LCA0OSwgNzcsIDEwNSwgNDMsIDIzNSwgCi0gICAgMjM1LCAxMDUsIDE1MSwgMjQ0LCA3NSwgMjE5LCAyMDYsIDE0MiwgMSwgMywgNjEsIDE0MiwgMSwgNjEsIDE0MiwgMSwgMywgCi0gICAgNzIsIDE0MiwgMSwgNzIsIDE0MiwgMSwgMywgNjksIDE0MiwgMSwgNjksIDE0MiwgMSwgMywgNzQsIDE0MiwgMSwgNzQsIAotICAgIDE0MiwgMSwgMywgNzUsIDE0MiwgMSwgNzUsIDE0MiwgMSwgMTgxLCAxNDIsIDEsIDI0MywgMTEwLCAxNDIsIDEsIDIzNCwgCi0gICAgMTAxLCAxNDIsIDEsIDI0MiwgMTkwLCAxNDIsIDEsIDIzMywgMjM4LCAxNDIsIDEsIDI0MiwgOTIsIDE0MiwgMSwgMjM0LCAKLSAgICAxODgsIDE0MiwgMSwgMjQzLCAzOCwgMTQyLCAxLCAyMzQsIDM3LCAxNDIsIDEsIDI0MiwgMTUwLCAxNDIsIDEsIDIyMiwgCi0gICAgMjAyLCAxNDIsIDEsIDIxMiwgMTA5LCAxNDIsIDEsIDIyMCwgMTE3LCAxNDIsIDEsIDIxMiwgMzcsIDE0MiwgMSwgMjE5LCAKLSAgICAyNywgMTQyLCAxLCAyMTIsIDgsIDE0MiwgMSwgMjIyLCAxMDAsIDE0MiwgMSwgMjEyLCA4NywgMTQyLCAxLCAyMTksIDI0MiwgCi0gICAgMTQyLCAxLCAyMTIsIDE2LCAxNDIsIDEsIDIxOCwgNTIsIDE0MiwgMSwgMjQ4LCAxNjQsIDE0MiwgMSwgMjE3LCA3MSwgMTQyLCAKLSAgICAxLCAyNDcsIDIxMSwgMTQyLCAxLCAzLCAyMTYsIDgyLCAxNDIsIDEsIDIxNiwgODIsIDE0MiwgMSwgMjQ2LCAzMywgMTQyLCAKLSAgICAxLCAyMTcsIDIyOSwgMTQyLCAxLCAyNDgsIDQxLCAxNDIsIDEsIDEwOCwgMTQyLCAxLCAyNDcsIDk5LCAxNDIsIDEsIDIwNSwgCi0gICAgMTQyLCAxLCAyMjksIDY0LCAxNDIsIDEsIDIyOCwgOTIsIDE0MiwgMSwgMjI5LCAxODcsIDE0MiwgMSwgMjI4LCAxODUsIAotICAgIDE0MiwgMSwgMTU5LCAxNDIsIDEsIDI1MiwgMTA3LCAxNDIsIDEsIDE5MywgMTQyLCAxLCAyNDEsIDE2NSwgMTQyLCAxLCAKLSAgICAyNTEsIDE4NCwgMTQyLCAxLCAyMjUsIDI0MCwgMTQyLCAxLCAyNDAsIDIxMiwgMTQyLCAxLCAyNTEsIDU0LCAxNDIsIDEsIAotICAgIDIyNSwgMzUsIDE0MiwgMSwgMjQxLCAyMjIsIDE0MiwgMSwgMjUxLCAyNTEsIDE0MiwgMSwgMjI2LCA5NiwgMTQyLCAxLCAKLSAgICAyNDEsIDU0LCAxNDIsIDEsIDI1MSwgMTI4LCAxNDIsIDEsIDIyNSwgMTUwLCAxNDIsIDEsIDE4OCwgMTQyLCAxLCAyMzEsIAotICAgIDQyLCAxNDIsIDEsIDIzMCwgMTcyLCAxNDIsIDEsIDIzMSwgMTU2LCAxNDIsIDEsIDIzMCwgMjMxLCAxNDIsIDEsIDMsIDE4NiwgCi0gICAgMTQyLCAxLCAxODYsIDE0MiwgMSwgMywgMjEyLCAyMDMsIDE0MiwgMSwgMjEyLCAyMDMsIDE0MiwgMSwgMywgMjEyLCAyMzUsIAotICAgIDE0MiwgMSwgMjEyLCAyMzUsIDE0MiwgMSwgMjAzLCAxNDIsIDEsIDIyMywgMTg4LCAxNDIsIDEsIDIyMywgNTEsIDE0MiwgMSwgCi0gICAgMjI0LCAyMSwgMTQyLCAxLCAyMjMsIDExMiwgMTQyLCAxLCAzLCAyMTQsIDQ5LCAxNDIsIDEsIDIxNCwgNDksIDE0MiwgMSwgCi0gICAgMjEzLCAyMzUsIDE0MiwgMSwgMjE0LCA2LCAxNDIsIDEsIDIxMywgMjE0LCAxNDIsIDEsIDIwNCwgMTQyLCAxLCAyMTQsIDk5LCAKLSAgICAxNDIsIDEsIDMsIDE4MSwgMTQyLCAxLCAzLCAyMzQsIDE4OCwgMzcsIDIzNCwgMjA2LCAyMTQsIDExNiwgMjE5LCAyMTgsIAotICAgIDc3LCAzNywgMjM0LCAyMDYsIDIyMSwgNzUsIDIxOSwgMjE4LCA3NywgMjM0LCAyMDYsIDIxNCwgMTE2LCAyMTksIDIxOCwgCi0gICAgNzcsIDIzNCwgMjA2LCAyMjEsIDc1LCAyMTksIDIxOCwgNzcsIDE0MiwgMjM1LCAxNTYsIDc3LCAxNDIsIDIxNCwgMTE2LCAKLSAgICAyMzUsIDE1NiwgNzcsIDE0MiwgMjQ3LCAxNzMsIDIxMiwgMjE2LCAyMzQsIDIwNiwgNTEsIDI0MCwgMTYwLCA1NiwgMSwgMywgCi0gICAgNjEsIDU2LCAxLCA2MSwgNTYsIDEsIDMsIDcyLCA1NiwgMSwgNzIsIDU2LCAxLCAzLCA2OSwgNTYsIDEsIDY5LCA1NiwgMSwgCi0gICAgMywgNzQsIDU2LCAxLCA3NCwgNTYsIDEsIDMsIDc1LCA1NiwgMSwgNzUsIDU2LCAxLCAxODEsIDU2LCAxLCAyNDMsIDExMCwgCi0gICAgNTYsIDEsIDIzNCwgMTAxLCA1NiwgMSwgMjQyLCAxOTAsIDU2LCAxLCAyMzMsIDIzOCwgNTYsIDEsIDI0MiwgOTIsIDU2LCAxLCAKLSAgICAyMzQsIDE4OCwgNTYsIDEsIDI0MywgMzgsIDU2LCAxLCAyMzQsIDM3LCA1NiwgMSwgMjQyLCAxNTAsIDU2LCAxLCAyMjIsIAotICAgIDIwMiwgNTYsIDEsIDIxMiwgMTA5LCA1NiwgMSwgMjIwLCAxMTcsIDU2LCAxLCAyMTIsIDM3LCA1NiwgMSwgMjE5LCAyNywgCi0gICAgNTYsIDEsIDIxMiwgOCwgNTYsIDEsIDIyMiwgMTAwLCA1NiwgMSwgMjEyLCA4NywgNTYsIDEsIDIxOSwgMjQyLCA1NiwgMSwgCi0gICAgMjEyLCAxNiwgNTYsIDEsIDIxOCwgNTIsIDU2LCAxLCAyNDgsIDE2NCwgNTYsIDEsIDIxNywgNzEsIDU2LCAxLCAyNDcsIAotICAgIDIxMSwgNTYsIDEsIDMsIDIxNiwgODIsIDU2LCAxLCAyMTYsIDgyLCA1NiwgMSwgMjQ2LCAzMywgNTYsIDEsIDIxNywgMjI5LCAKLSAgICA1NiwgMSwgMjQ4LCA0MSwgNTYsIDEsIDEwOCwgNTYsIDEsIDI0NywgOTksIDU2LCAxLCAyMDUsIDU2LCAxLCAyMjksIDY0LCAKLSAgICA1NiwgMSwgMjI4LCA5MiwgNTYsIDEsIDIyOSwgMTg3LCA1NiwgMSwgMjI4LCAxODUsIDU2LCAxLCAxNTksIDU2LCAxLCAyNTIsIAotICAgIDEwNywgNTYsIDEsIDE5MywgNTYsIDEsIDI0MSwgMTY1LCA1NiwgMSwgMjUxLCAxODQsIDU2LCAxLCAyMjUsIDI0MCwgNTYsIAotICAgIDEsIDI0MCwgMjEyLCA1NiwgMSwgMjUxLCA1NCwgNTYsIDEsIDIyNSwgMzUsIDU2LCAxLCAyNDEsIDIyMiwgNTYsIDEsIDI1MSwgCi0gICAgMjUxLCA1NiwgMSwgMjI2LCA5NiwgNTYsIDEsIDI0MSwgNTQsIDU2LCAxLCAyNTEsIDEyOCwgNTYsIDEsIDIyNSwgMTUwLCAKLSAgICA1NiwgMSwgMTg4LCA1NiwgMSwgMjMxLCA0MiwgNTYsIDEsIDIzMCwgMTcyLCA1NiwgMSwgMjMxLCAxNTYsIDU2LCAxLCAyMzAsIAotICAgIDIzMSwgNTYsIDEsIDMsIDE4NiwgNTYsIDEsIDE4NiwgNTYsIDEsIDMsIDIxMiwgMjAzLCA1NiwgMSwgMjEyLCAyMDMsIDU2LCAKLSAgICAxLCAzLCAyMTIsIDIzNSwgNTYsIDEsIDIxMiwgMjM1LCA1NiwgMSwgMjAzLCA1NiwgMSwgMjIzLCAxODgsIDU2LCAxLCAyMjMsIAotICAgIDUxLCA1NiwgMSwgMjI0LCAyMSwgNTYsIDEsIDIyMywgMTEyLCA1NiwgMSwgMywgMjE0LCA0OSwgNTYsIDEsIDIxNCwgNDksIAotICAgIDU2LCAxLCAyMTMsIDIzNSwgNTYsIDEsIDIxNCwgNiwgNTYsIDEsIDIxMywgMjE0LCA1NiwgMSwgMjA0LCA1NiwgMSwgMjE0LCAKLSAgICA5OSwgNTYsIDEsIDMsIDE4MSwgNTYsIDEsIDMsIDIzNCwgMTg4LCA1NiwgMSwgMjE1LCAxLCA1NiwgMSwgMjE0LCAxNTQsIAotICAgIDU2LCAxLCAyMTQsIDIzMiwgNTYsIDEsIDIxNCwgMTE5LCA1NiwgMjMxLCAzNywgMjQ3LCA3NCwgMjM0LCAyMDYsIDIyNSwgCi0gICAgNTcsIDIxOSwgMjE4LCA3NywgNTYsIDIzNSwgMTU2LCA3NywgNTYsIDIxNCwgMTE2LCAyMzUsIDE1NiwgNzcsIDU2LCAyNDcsIAotICAgIDE3MywgMjM0LCA4LCAyMDIsIDEsIDI1MywgNzQsIDIwMiwgMSwgMjI2LCAyMjksIDIwMiwgMSwgMTgzLCAyMDIsIDEsIDI0NCwgCi0gICAgMjMwLCAyMDIsIDEsIDI0OSwgMywgMjAyLCAxLCAyMTgsIDk5LCAyMDIsIDEsIDIwNCwgMjAyLCAxLCAxNTAsIDIwMiwgMSwgCi0gICAgMjQzLCAxNzcsIDIwMiwgMSwgMjM1LCAyNywgMjAyLCAxLCAyNDIsIDQxLCAyMDIsIDEsIDIzNSwgMTQyLCAyMDIsIDEsIAotICAgIDIyNCwgMjQwLCAyMDIsIDEsIDIxMywgMTY2LCAyMDIsIDEsIDIxMiwgNzYsIDIwMiwgMSwgMjUwLCA5MywgMjAyLCAxLCAKLSAgICAyMjEsIDI2LCAyMDIsIDEsIDE0OSwgMjAyLCAxLCAyMTIsIDE1MiwgMjAyLCAxLCAyNTAsIDI1MiwgMjAyLCAxLCAxOTcsIAotICAgIDIwMiwgMSwgNjEsIDIwMiwgMSwgNzUsIDIwMiwgMSwgNzQsIDIwMiwgMSwgMjQ1LCAxNTQsIDIwMiwgMSwgMjU0LCAxMDgsIAotICAgIDIwMiwgMSwgMjQ1LCAxNTIsIDIwMiwgMSwgMjUzLCAxMDgsIDIwMiwgMSwgMjI3LCAyLCAyMDIsIDEsIDI1NCwgMzIsIDIwMiwgCi0gICAgMSwgMjQ1LCAxMDgsIDIwMiwgMSwgMjU0LCAyNCwgMjAyLCAxLCAyNDUsIDk2LCAyMDIsIDEsIDI0NSwgNTUsIDIwMiwgMSwgCi0gICAgNzIsIDIwMiwgMSwgNjksIDIwMiwgMSwgMjM1LCAxNTQsIDIwMiwgMSwgMjE1LCA3OSwgMjAyLCAxLCAyMjksIDE2MSwgMjAyLCAKLSAgICAxLCAyNDIsIDE1NCwgMjAyLCAxLCAyMzYsIDI5LCAyMywgMSwgMjM0LCA2NywgMjMsIDEsIDIxOSwgMTUwLCAyMywgMSwgCi0gICAgMjM0LCA2MCwgMjMsIDEsIDIyOSwgNTcsIDIzLCAxLCAyMjksIDU1LCAyMywgMSwgMjI5LCA1NCwgMjMsIDEsIDIxNywgNTUsIAotICAgIDIzLCAxLCAyMTksIDEzOSwgMjMsIDEsIDIyMywgMTc5LCAyMywgMSwgMjIzLCAxNzQsIDIzLCAxLCAyMjMsIDE3MSwgMjMsIAotICAgIDEsIDIyMywgMTY0LCAyMywgMSwgMjIzLCAxNTksIDIzLCAxLCAyMjMsIDE1NCwgMjMsIDEsIDIyMywgMTY1LCAyMywgMSwgCi0gICAgMjIzLCAxNzcsIDIzLCAxLCAyMzEsIDMwLCAyMywgMSwgMjI1LCAyMjcsIDIzLCAxLCAyMTksIDE0NywgMjMsIDEsIDIyNSwgCi0gICAgMjE2LCAyMywgMSwgMjIwLCA3NiwgMjMsIDEsIDIxOSwgMTQ0LCAyMywgMSwgMjM2LCA1MSwgMjMsIDEsIDI0OSwgMjM5LCAKLSAgICAyMywgMSwgMjE5LCAxNTQsIDIzLCAxLCAyNTAsIDQzLCAyMywgMSwgMjM0LCAxMTYsIDIzLCAxLCAyMTcsIDEyNiwgMjMsIDEsIAotICAgIDIyNiwgNywgMjMsIDEsIDI0MSwgMTU4LCAyMywgMSwgNjEsIDIzLCAxLCAyNTQsIDE0OCwgMjMsIDEsIDE4NiwgMjMsIDEsIAotICAgIDIxMywgODAsIDIzLCAxLCAyNDUsIDc2LCAyMywgMSwgNzQsIDIzLCAxLCAyMTMsIDI3LCAyMywgMSwgMjEzLCAzOCwgMjMsIAotICAgIDEsIDc1LCAyMywgMSwgMjE0LCA0OSwgMjMsIDEsIDIxNCwgNDYsIDIzLCAxLCAyMjcsIDk5LCAyMywgMSwgMjEyLCAyMzUsIAotICAgIDIzLCAxLCA2OSwgMjMsIDEsIDIxMywgMjUyLCAyMywgMSwgMjE0LCA2LCAyMywgMSwgMjEzLCAyMzUsIDIzLCAxLCAyMTIsIAotICAgIDIwMywgMjMsIDEsIDI0NSwgMjIsIDIzLCAxLCAyMTIsIDI1NSwgMjMsIDEsIDcyLCAyMywgMjQ0LCA3MiwgMjMsIDEsIDIxOSwgCi0gICAgMTQ4LCAyMywgMSwgMjI5LCA0NywgMjMsIDEsIDIyOSwgNDksIDIzLCAxLCAyMjksIDUyLCAyMywgMSwgMjIzLCAxNzIsIDIzLCAKLSAgICAxLCAyMjMsIDE1MywgMjMsIDEsIDIyMywgMTYxLCAyMywgMSwgMjIzLCAxNjYsIDIzLCAxLCAyMjMsIDE1MSwgMjMsIDEsIAotICAgIDIzMSwgMjMsIDIzLCAxLCAyMzEsIDIwLCAyMywgMSwgMjMxLCAyNCwgMjMsIDEsIDIzNCwgMjI2LCAyMywgMSwgMjI1LCAKLSAgICAyMjIsIDIzLCAxLCAyMjUsIDIwOCwgMjMsIDEsIDIyNSwgMjE0LCAyMywgMSwgMjI1LCAyMTEsIDIzLCAxLCAyMjUsIDIyNSwgCi0gICAgMjMsIDEsIDIyNSwgMjA5LCAyMywgMSwgMjM0LCAyMjQsIDIzLCAxLCAyMzQsIDIyMiwgMjMsIDEsIDIyMCwgNjksIDIzLCAxLCAKLSAgICAyMjAsIDY3LCAyMywgMSwgMjIwLCA1OSwgMjMsIDEsIDIyMCwgNjQsIDIzLCAxLCAyMjAsIDc0LCAyMywgMSwgMjI2LCAxNjAsIAotICAgIDIzLCAxLCAyMTksIDE1MSwgMjMsIDEsIDIxMywgMTcsIDIzLCAxLCAyMTMsIDEzLCAyMywgMSwgMjEzLCAxNCwgMjMsIDEsIAotICAgIDIzNCwgMjI1LCAyMywgMSwgMjE5LCAxNTIsIDIzLCAxLCAyMTMsIDIzLCAyMywgMSwgMjEyLCAyMjksIDIzLCAxLCAyMTIsIAotICAgIDIyOCwgMjMsIDEsIDIxMiwgMjMxLCAyMywgMSwgMjEyLCAxOTQsIDIzLCAxLCAyMTIsIDE5NSwgMjMsIDEsIDIxMiwgMTk4LCAKLSAgICAyMywgMSwgMjUzLCAyMDQsIDIzLCAxLCAyNTMsIDE5OCwgMTA1LCAyNTQsIDEwLCAyMzIsIDIzMiwgNzcsIDEwNSwgMjU0LCAKLSAgICAxMCwgMjIzLCAyMDMsIDc3LCAxMDUsIDI1NCwgMTAsIDEyMiwgNzcsIDEwNSwgMjU0LCAxMCwgMTE3LCA3NywgMTA1LCAyNTQsIAotICAgIDEwLCAxMzMsIDc3LCAxMDUsIDI1NCwgMTAsIDI0MywgMjM3LCA3NywgMTA1LCAyNTQsIDEwLCAyMTYsIDIyNywgNzcsIDEwNSwgCi0gICAgMjU0LCAxMCwgMjMxLCAzNywgNzcsIDEwNSwgMjU0LCAxMCwgMjUxLCAxMDEsIDc3LCAxMDUsIDI1NCwgMTAsIDI0NCwgNjEsIAotICAgIDc3LCAxMDUsIDI1NCwgMTAsIDIyMiwgOTUsIDc3LCAxMDUsIDI1NCwgMTAsIDIxNywgMTIyLCA3NywgMTA1LCAyNTQsIDEwLCAKLSAgICAyNDMsIDIzMCwgNzcsIDEwNSwgMjU0LCAxMCwgMjQxLCAyMDgsIDc3LCAxMDUsIDI1NCwgMTAsIDI0NSwgMTgwLCA3NywgCi0gICAgMTA1LCAyNTQsIDEwLCAyMzEsIDI0OSwgNzcsIDIwMiwgMSwgMjUxLCA1NCwgMjAyLCAxLCAyMTIsIDM3LCAyMDIsIDEsIAotICAgIDIzNSwgMTEwLCAyMDIsIDEsIDI0MiwgOTIsIDIwMiwgMSwgMjQ1LCAxNjUsIDIwMiwgMSwgMjQ1LCA5MywgMjAyLCAxLCAKLSAgICAyMjcsIDQ5LCAyMDIsIDEsIDIyNywgNTMsIDIwMiwgMSwgMjM1LCAxNzcsIDIwMiwgMSwgMjU0LCAxMiwgMjAyLCAxLCAyMzUsIAotICAgIDIyMSwgMjAyLCAxLCAyMTUsIDEzOSwgMjAyLCAxLCAyMzYsIDExLCAyMDIsIDEsIDIyOSwgMTQyLCAyMDIsIDEsIDI1NCwgCi0gICAgMTAyLCAyMDIsIDEsIDI1MywgMTAzLCAyMDIsIDEsIDI1NCwgNDUsIDIwMiwgMSwgMjI3LCA3MCwgMjAyLCAxLCAyMjcsIDU1LCAKLSAgICAyMDIsIDEsIDIzNSwgMjE4LCAyMDIsIDQwLCAxLCAyMjYsIDIyOSwgMjAyLCA0MCwgMSwgMjE4LCA5OSwgMjAyLCA0MCwgMSwgCi0gICAgMjM1LCAyNywgMjAyLCA0MCwgMSwgMjQyLCA0MSwgMjAyLCAxLCAyNDIsIDIyNiwgMjAyLCAxLCAyMzMsIDI2LCAyMDIsIDEsIAotICAgIDIxMSwgMjQ5LCA5LCAyMTksIDQ1LCAyMTgsIDk5LCA5LCAyMTksIDQ1LCAyMTMsIDI0NSwgOSwgMjE5LCA0NSwgMjEzLCAKLSAgICAxNDYsIDksIDIxOSwgNDUsIDI1MSwgOCwgOSwgMjE5LCA0NSwgMjE4LCAxOTksIDksIDIxOSwgNDUsIDI0MCwgMTUwLCA5LCAKLSAgICAyMTksIDQ1LCAyNDAsIDE1NCwgOSwgMjE5LCA0NSwgMjQwLCAyMTgsIDksIDIxOSwgNDUsIDI0MCwgMTUxLCA5LCAyMTksIAotICAgIDQ1LCAyMTgsIDEwMiwgOSwgMjE5LCA0NSwgMjQwLCAxNTMsIDksIDIxOSwgNDUsIDI0MCwgMTQ5LCA5LCAyMTksIDQ1LCAKLSAgICAyNDAsIDIxNiwgOSwgMjE5LCA0NSwgMjQwLCAxNTIsIDksIDIxOSwgNDUsIDI0MCwgMTQ4LCA5LCAyMTksIDQ1LCAyMDQsIDksIAotICAgIDIxOSwgNDUsIDI0MiwgNDEsIDksIDIxOSwgNDUsIDE5NywgOSwgMjE5LCA0NSwgMjI2LCAyMjksIDksIDIxOSwgNDUsIDIxOSwgCi0gICAgMjA4LCA5LCAyMTksIDQ1LCAyNDksIDMsIDksIDIxOSwgNDUsIDI0MCwgMTU1LCA5LCAyMTksIDQ1LCAyNDEsIDE3NSwgOSwgCi0gICAgMjE5LCA0NSwgMjE4LCAxMTEsIDksIDIxOSwgNDUsIDIxOCwgMTc4LCA5LCAyMTksIDQ1LCAyMTksIDEwNywgOSwgMjE5LCAKLSAgICA0NSwgMjIxLCAzMSwgOSwgMjE5LCA0NSwgMjI2LCA5OCwgOSwgMjE5LCA0NSwgMjI0LCAyNDIsIDksIDIxOSwgNDUsIDIxNiwgCi0gICAgMjUzLCA5LCAyMTksIDQ1LCAyMTgsIDEwMSwgOSwgMjE5LCA0NSwgMjE4LCAxODksIDksIDIxOSwgNDUsIDI0MCwgMTYyLCA5LCAKLSAgICAyMTksIDQ1LCAyNDAsIDE0NywgOSwgMjE5LCA0NSwgMjI2LCAyNSwgOSwgMjE5LCA0NSwgMjI0LCAyNDAsIDU2LCAxLCAzLCAKLSAgICAyMzMsIDIzOCwgNTYsIDEsIDMsIDIyMCwgMTE3LCA1NiwgMSwgMywgMjE5LCAyNywgNTYsIDEsIDMsIDEwOCwgNTYsIDEsIDMsIAotICAgIDIyOCwgOTIsIDU2LCAxLCAzLCAxNTksIDU2LCAxLCAzLCAyNDEsIDE2NSwgNTYsIDEsIDMsIDI0MCwgMjEyLCA1NiwgMSwgMywgCi0gICAgMjQxLCAyMjIsIDU2LCAxLCAzLCAyNDEsIDU0LCA1NiwgMSwgMywgMjMwLCAxNzIsIDU2LCAxLCAzLCAyMDMsIDU2LCAxLCAzLCAKLSAgICAyMjMsIDE4OCwgNTYsIDEsIDMsIDIyMywgNTEsIDU2LCAxLCAzLCAyMjQsIDIxLCA1NiwgMSwgMywgMjIzLCAxMTIsIDg2LCAKLSAgICAyMywgMjM0LCA2NywgODYsIDIzLCAyMjksIDU3LCA4NiwgMjMsIDIxNywgNTUsIDg2LCAyMywgMjIzLCAxNzksIDg2LCAyMywgCi0gICAgMjMxLCAzMCwgODYsIDIzLCAyMjUsIDIyNywgODYsIDIzLCAyMjAsIDc2LCA4NiwgMjMsIDIzNiwgNTEsIDg2LCAyMywgMjQ5LCAKLSAgICAyMzksIDg2LCAyMywgMjUwLCA0MywgODYsIDIzLCAyMzQsIDExNiwgODYsIDIzLCAyMTcsIDEyNiwgODYsIDIzLCAyMjYsIDcsIAotICAgIDg2LCAyMywgMjQxLCAxNTgsIDg2LCAyMywgMjM0LCA2OCwgNjEsIDg2LCAyMywgMjI5LCA1OCwgNjEsIDg2LCAyMywgMjE3LCAKLSAgICA1NiwgNjEsIDg2LCAyMywgMjIzLCAxODAsIDYxLCA4NiwgMjMsIDIzMSwgMzEsIDYxLCA4NiwgMjMsIDIyNSwgMjI4LCA2MSwgCi0gICAgODYsIDIzLCAyMjAsIDc3LCA2MSwgODYsIDIzLCAyMzYsIDUyLCA2MSwgODYsIDIzLCAyNDksIDI0MCwgNjEsIDg2LCAyMywgCi0gICAgMjUwLCA0NCwgNjEsIDg2LCAyMywgMjM0LCAxMTcsIDYxLCA4NiwgMjMsIDIxNywgMTI3LCA2MSwgODYsIDIzLCAyMjYsIDgsIAotICAgIDYxLCA4NiwgMjMsIDI0MSwgMTU5LCA2MSwgODYsIDIzLCAyNDksIDI0MCwgNjksIDg2LCAyMzQsIDEyLCAxMzcsIDIyNywgCi0gICAgODMsIDg2LCAyMzQsIDEyLCAxMzcsIDE1NywgMjQwLCAyMTIsIDg2LCAxNDMsIDExNiwgODYsIDE0MywgMTA5LCA4NiwgMTQzLCAKLSAgICAxNjYsIDg2LCAxNDMsIDE2MywgODYsIDE0MywgMTgwLCA4NiwgMTQzLCAxODksIDg2LCAxNDMsIDE5OCwgODYsIDE0MywgCi0gICAgMTk1LCA4NiwgMTQzLCAyMDAsIDg2LCAxNDMsIDIxNywgMjAwLCA4NiwgMTQzLCAyMzAsIDE5OCwgODYsIDE0MywgMjQ0LCAKLSAgICA2NSwgODYsIDE0MywgMjE0LCAyNCwgODYsIDE0MywgMjEzLCAyMDEsIDg2LCAxNDMsIDIzMSwgMTA2LCA4NiwgMTQzLCAyNDUsIAotICAgIDE3OSwgODYsIDE0MywgMjE4LCAyMzgsIDg2LCAxNDMsIDIxOSwgNzIsIDg2LCAxNDMsIDI0MSwgMjI4LCA4NiwgMTQzLCAKLSAgICAyMTksIDIzOCwgODYsIDE0MywgMjMwLCAyNCwgODYsIDE0MywgMjE5LCAxOTIsIDg2LCAxNDMsIDI0NCwgNzEsIDg2LCAxNDMsIAotICAgIDI0OSwgMTQwLCA4NiwgMTQzLCAyMzMsIDE0OCwgODYsIDE0MywgMjIzLCAyMjMsIDg2LCAxNDMsIDI1MCwgMjAzLCA4NiwgCi0gICAgMTQzLCAyMTksIDMwLCA4NiwgMTQzLCAyMTgsIDIyMCwgODYsIDE0MywgMjQ1LCA4NiwgODYsIDE0MywgMjIzLCAyMTUsIDg2LCAKLSAgICAxNDMsIDI1NCwgNTksIDg2LCAxNDMsIDI0NCwgOTcsIDg2LCAxNDMsIDIyMywgMjEzLCA4NiwgMTQzLCAyMjEsIDc2LCA4NiwgCi0gICAgMTQzLCAyMjQsIDIwLCAzNiwgMTQzLCAyMjQsIDE1NywgMzYsIDE0MywgMjM0LCA4OSwgMzYsIDE0MywgMjIyLCAxMTYsIDM2LCAKLSAgICAxNDMsIDIzNCwgOCwgMzYsIDUwLCAyMTcsIDIwMSwgMjI3LCA2MywgODMsIDIxOSwgMTY2LCAzNiwgNTAsIDIxNiwgMzksIAotICAgIDIyNywgNjMsIDgzLCAyMTksIDE2NiwgMzYsIDUwLCAyMTcsIDExNiwgMjI3LCA2MywgODMsIDIxOSwgMTY2LCAzNiwgNTAsIAotICAgIDI0MywgMjQxLCAyMjcsIDYzLCA4MywgMjE5LCAxNjYsIDM2LCA1MCwgMjQ0LCA4NCwgMjI3LCA2MywgODMsIDIxOSwgMTY2LCAKLSAgICAzNiwgNTAsIDIyMCwgNDAsIDIyNywgNjMsIDgzLCAyMTksIDE2NiwgMzYsIDUwLCAyMjEsIDM4LCAyMjcsIDYzLCA4MywgCi0gICAgMjE5LCAxNjYsIDM2LCA1MCwgMjQ1LCAxNDIsIDIyNywgNjMsIDgzLCAyMTksIDE2NiwgMjI2LCAxMjMsIDUyLCAzNiwgNTAsIAotICAgIDIxNiwgMzksIDExNiwgMzYsIDUwLCAyMTYsIDM5LCAxMDksIDM2LCA1MCwgMjE2LCAzOSwgMTY2LCAzNiwgNTAsIDIxNiwgCi0gICAgMzksIDE2MywgMzYsIDUwLCAyMTYsIDM5LCAxODAsIDM2LCA1MCwgMjE2LCAzOSwgMTg5LCAzNiwgNTAsIDIxNiwgMzksIAotICAgIDE5OCwgMzYsIDUwLCAyMTYsIDM5LCAxOTUsIDM2LCA1MCwgMjE2LCAzOSwgMjAwLCAzNiwgNTAsIDIxNywgMTE1LCAzNiwgCi0gICAgNTAsIDIxNywgMTE2LCAxMTYsIDM2LCA1MCwgMjE3LCAxMTYsIDEwOSwgMzYsIDUwLCAyMTcsIDExNiwgMTY2LCAzNiwgNTAsIAotICAgIDIxNywgMTE2LCAxNjMsIDM2LCA1MCwgMjE3LCAxMTYsIDE4MCwgMzYsIDIzLCAyMzQsIDY3LCAzNiwgMjMsIDIyOSwgNTcsIAotICAgIDM2LCAyMywgMjE3LCA1NSwgMzYsIDIzLCAyMjMsIDE3OSwgMzYsIDIzLCAyMzEsIDMwLCAzNiwgMjMsIDIyNSwgMjI3LCAzNiwgCi0gICAgMjMsIDIyMCwgNzYsIDM2LCAyMywgMjM2LCA1MSwgMzYsIDIzLCAyNDksIDIzOSwgMzYsIDIzLCAyNTAsIDQzLCAzNiwgMjMsIAotICAgIDIzNCwgMTE2LCAzNiwgMjMsIDIxNywgMTI2LCAzNiwgMjMsIDIyNiwgNywgMzYsIDIzLCAyNDEsIDE1OCwgMzYsIDIzLCAKLSAgICAyMzQsIDY4LCA2MSwgMzYsIDIzLCAyMjksIDU4LCA2MSwgMzYsIDIzLCAyMTcsIDU2LCA2MSwgMzYsIDIzLCAyMjMsIDE4MCwgCi0gICAgNjEsIDM2LCAyMywgMjMxLCAzMSwgNjEsIDM2LCAyMywgMjI1LCAyMjgsIDYxLCAzNiwgMjMsIDIyMCwgNzcsIDYxLCAzNiwgCi0gICAgMjMsIDIzNiwgNTIsIDYxLCAzNiwgMjMsIDI0OSwgMjQwLCA2MSwgMzYsIDIzLCAyNTAsIDQ0LCA2MSwgMzYsIDIzLCAyMzQsIAotICAgIDExNywgNjEsIDM2LCAyMywgMjE3LCAxMjcsIDYxLCAzNiwgMjMsIDIyNiwgOCwgNjEsIDM2LCAyMywgMjQxLCAxNTksIDYxLCAKLSAgICAzNiwgMjM0LCAxMiwgMTM3LCAyNTAsIDg0LCAzNiwgMjM0LCAxMiwgMTM3LCAyMzUsIDUwLCAzNiwgMjMsIDIzNiwgNTIsIAotICAgIDY5LCAyMzQsIDEyLCAyMTksIDk4LCA4NywgMzYsIDE0MywgMTE2LCAzNiwgMTQzLCAxMDksIDM2LCAxNDMsIDE2NiwgMzYsIAotICAgIDE0MywgMTYzLCAzNiwgMTQzLCAxODAsIDM2LCAxNDMsIDE4OSwgMzYsIDE0MywgMTk4LCAzNiwgMTQzLCAxOTUsIDM2LCAKLSAgICAxNDMsIDIwMCwgMzYsIDE0MywgMjE3LCAyMDAsIDM2LCAxNDMsIDIzMCwgMTk4LCAzNiwgMTQzLCAyNDQsIDY1LCAzNiwgCi0gICAgMTQzLCAyMTQsIDI0LCAzNiwgMTQzLCAyMTMsIDIwMSwgMzYsIDE0MywgMjMxLCAxMDYsIDM2LCAxNDMsIDI0NSwgMTc5LCAKLSAgICAzNiwgMTQzLCAyMTgsIDIzOCwgMzYsIDE0MywgMjE5LCA3MiwgMzYsIDE0MywgMjQxLCAyMjgsIDM2LCAxNDMsIDIxOSwgCi0gICAgMjM4LCAzNiwgMTQzLCAyMzAsIDI0LCAzNiwgMTQzLCAyMTksIDE5MiwgMzYsIDE0MywgMjQ0LCA3MSwgMzYsIDE0MywgMjQ5LCAKLSAgICAxNDAsIDM2LCAxNDMsIDIzMywgMTQ4LCAzNiwgMTQzLCAyMjIsIDkzLCAzNiwgMTQzLCAyMzEsIDI1MiwgMzYsIDE0MywgCi0gICAgMjQ0LCAxMDYsIDM2LCAxNDMsIDIxOCwgMjUwLCAzNiwgMTQzLCAyNDUsIDEsIDM2LCAxNDMsIDIyNSwgNjgsIDM2LCAxNDMsIAotICAgIDI1MywgMTEyLCAzNiwgMTQzLCAyMzUsIDE1NywgMzYsIDE0MywgMjIzLCAyMTMsIDM2LCAxNDMsIDI0OSwgMTAzLCAzNiwgCi0gICAgMTQzLCAyNDksIDk0LCAzNiwgMTQzLCAyNDEsIDE1MSwgMzYsIDE0MywgMjUwLCAxMDgsIDM2LCAxNDMsIDIzMiwgMTY1LCAKLSAgICAzNiwgMTQzLCAyMzMsIDcwLCAzNiwgMTQzLCAyMjMsIDE0OCwgMzYsIDE0MywgMjMxLCAxNDgsIDM2LCAxNDMsIDIyMywgCi0gICAgMjM3LCAzNiwgMTQzLCAyMTksIDMwLCAzNiwgMTQzLCAyMTgsIDIyMCwgMzYsIDE0MywgMjQ1LCA4NiwgMzYsIDE0MywgMjIzLCAKLSAgICAyMTUsIDM2LCAxNDMsIDI1NCwgNTksIDM2LCAxNDMsIDIyOSwgNDMsIDM2LCA1MCwgMjE3LCAxMTYsIDE4OSwgMzYsIDUwLCAKLSAgICAyMTcsIDExNiwgMTk4LCAzNiwgNTAsIDIxNywgMTE2LCAxOTUsIDM2LCA1MCwgMjE3LCAxMTYsIDIwMCwgMzYsIDUwLCAyNDMsIAotICAgIDI0MCwgMzYsIDUwLCAyNDMsIDI0MSwgMTE2LCAzNiwgNTAsIDI0MywgMjQxLCAxMDksIDM2LCA1MCwgMjQzLCAyNDEsIDE2NiwgCi0gICAgMzYsIDUwLCAyNDMsIDI0MSwgMTYzLCAzNiwgNTAsIDI0MywgMjQxLCAxODAsIDM2LCA1MCwgMjQzLCAyNDEsIDE4OSwgMzYsIAotICAgIDUwLCAyNDMsIDI0MSwgMTk4LCAzNiwgNTAsIDI0MywgMjQxLCAxOTUsIDM2LCA1MCwgMjQzLCAyNDEsIDIwMCwgMzYsIDUwLCAKLSAgICAyNDQsIDgzLCAxMDUsIDIwMSwgMTYsIDMxLCAyMzUsIDEzMywgMTA1LCAyMDEsIDE2LCAzMSwgMjQ0LCAxMTcsIDEwNSwgCi0gICAgMjAxLCAxNiwgMzEsIDIzMSwgMjIzLCAxMDUsIDIwMSwgMTYsIDMxLCAyNTMsIDIxNywgMTA1LCAyMDEsIDE2LCAzMSwgMjMxLCAKLSAgICAxOTYsIDEwNSwgMjAxLCAxNiwgMzEsIDIzNSwgNDgsIDEwNSwgMjAxLCAxNiwgMzEsIDIzNSwgNDksIDEwNSwgMjAxLCAxNiwgCi0gICAgMzEsIDI1MywgMTA0LCAxMDUsIDIwMSwgMTYsIDMxLCAyMjEsIDU2LCAxMDUsIDIwMSwgMTYsIDMxLCAyMjcsIDEwNCwgMTA1LCAKLSAgICAyMDEsIDE2LCAzMSwgMjI4LCAxNTEsIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgMzYsIDQxLCAyNDEsIDE3NSwgNDEsIDI0NSwgCi0gICAgNTEsIDQxLCAyNDUsIDEwLCAyMzIsIDI0OCwgMjMzLCAxMiwgNTIsIDM2LCA1NiwgNjEsIDM2LCA1NiwgNzIsIDM2LCA1NiwgCi0gICAgNjksIDM2LCA1NiwgNzQsIDM2LCA1NiwgNzUsIDM2LCA1NiwgMTgxLCAzNiwgNTYsIDIzNCwgMTAxLCAzNiwgNTYsIDIzMywgCi0gICAgMjM4LCAzNiwgNTYsIDIzNCwgMTg4LCAzNiwgNTYsIDIzNCwgMzcsIDM2LCA1NiwgMjIyLCAyMDIsIDM2LCA1NiwgMjIwLCAKLSAgICAxMTcsIDM2LCA1NiwgMjE5LCAyNywgMzYsIDU2LCAyMjIsIDEwMCwgMzYsIDU2LCAyMTksIDI0MiwgMzYsIDU2LCAyMTgsIAotICAgIDUyLCAzNiwgNTYsIDIxNywgNzEsIDM2LCA1NiwgMjE2LCA4MiwgMzYsIDU2LCAyMTcsIDIyOSwgMzYsIDU2LCAxMDgsIDM2LCAKLSAgICA1NiwgMjA1LCAzNiwgNTYsIDIyOSwgNjQsIDM2LCA1NiwgMjI4LCA5MiwgMzYsIDU2LCAyMjksIDE4NywgMzYsIDU2LCAyMjgsIAotICAgIDE4NSwgMzYsIDU2LCAxNTksIDM2LCA1NiwgMjQxLCAxNjUsIDM2LCA1NiwgMjQwLCAyMTIsIDM2LCA1NiwgMjQxLCAyMjIsIAotICAgIDM2LCA1NiwgMjQxLCA1NCwgMzYsIDU2LCAxODgsIDM2LCA1NiwgMjMxLCA0MiwgMzYsIDU2LCAyMzAsIDE3MiwgMzYsIDU2LCAKLSAgICAyMzEsIDE1NiwgMzYsIDU2LCAyMzAsIDIzMSwgMzYsIDU2LCAxODYsIDM2LCA1NiwgMjEyLCAyMDMsIDM2LCA1NiwgMjEyLCAKLSAgICAyMzUsIDM2LCA1NiwgMjAzLCAzNiwgNTYsIDIyMywgMTg4LCAzNiwgNTYsIDIyMywgNTEsIDM2LCA1NiwgMjI0LCAyMSwgMzYsIAotICAgIDU2LCAyMjMsIDExMiwgMzYsIDU2LCAyMTQsIDQ5LCAzNiwgNTYsIDIxMywgMjM1LCAzNiwgNTYsIDIxNCwgNiwgMzYsIDU2LCAKLSAgICAyMTMsIDIxNCwgNDEsIDI1MywgMjM4LCA0MSwgMjUzLCAxNTQsIDQxLCAyNTQsIDYsIDQxLCAyNTQsIDE5MCwgNDEsIDIzNSwgCi0gICAgMjIzLCA0MSwgMjM1LCAxOTMsIDQxLCAyMTUsIDEzNywgNDEsIDI0NSwgMzEsIDQxLCAyNDUsIDE2MywgNDEsIDIyNywgNTIsIAotICAgIDQxLCAyMjcsIDQ2LCA0MSwgMjM0LCAyNDksIDQxLCAyMzQsIDIxOSwgNDEsIDIzNCwgMjE2LCA0MSwgMjQzLCA2OCwgNDEsIAotICAgIDI0MywgNzcsIDQxLCAyNDIsIDE4MCwgNDEsIDI0MiwgMTc2LCA0MSwgMjMzLCAxNzIsIDQxLCAyNDIsIDE2OSwgNDEsIDIzNCwgCi0gICAgODEsIDQxLCAyMzQsIDgwLCA0MSwgMjM0LCA3OSwgNDEsIDIzNCwgNzgsIDQxLCAyNDIsIDY3LCA0MSwgMjQyLCA2NiwgNDEsIAotICAgIDIzMywgMjE0LCA0MSwgMjMzLCAyMTYsIDQxLCAyMzQsIDE4NCwgNDEsIDIzNCwgMTAsIDQxLCAyMzQsIDE3LCA0MSwgMjIyLCAKLSAgICAxODcsIDQxLCAyMjIsIDE1MywgNDEsIDIyMCwgNTcsIDQxLCAyMjEsIDYxLCA0MSwgMjIxLCA2MCwgNDEsIDI0OCwgMTYxLCAKLSAgICA0MSwgMjQ3LCAyNDMsIDQxLCAyNDcsIDc1LCA0MSwgMjE2LCAyNDMsIDQxLCAyMzAsIDIwLCA0MSwgMjI4LCAxNTIsIDQxLCAKLSAgICAyNDIsIDE0LCA0MSwgMjI2LCAyMDgsIDQxLCAyMjYsIDIwNywgNDEsIDI1MiwgMTA1LCA0MSwgMjI1LCAyMzcsIDQxLCAyMjUsIAotICAgIDIwMSwgNDEsIDIyNSwgMjAyLCA0MSwgMjUxLCAxNTcsIDQxLCAyNDAsIDIxMSwgNDEsIDI0MCwgMjA3LCA0MSwgMjUxLCAyMCwgCi0gICAgNDEsIDI0MCwgMTk0LCA0MSwgMjQxLCAxOTksIDQxLCAyMjYsIDM1LCA0MSwgMjI2LCA2OSwgNDEsIDI0MSwgMTgzLCA0MSwgCi0gICAgMjI2LCA2NiwgNDEsIDIyNiwgODIsIDQxLCAyNTEsIDIzNywgNDEsIDIyNSwgMTQwLCA0MSwgMjUxLCAxMDYsIDQxLCAyNDEsIAotICAgIDQyLCA0MSwgMjI1LCAxMzAsIDQxLCAyNDEsIDM1LCA0MSwgMjQxLCAzNywgNDEsIDIzMiwgNywgNDEsIDIzMiwgMywgNDEsIAotICAgIDIzMiwgMTEsIDQxLCAyMzEsIDIxMywgNDEsIDIzMSwgMjM4LCA0MSwgMjMxLCAxMCwgNDEsIDIzMCwgMjQ1LCA0MSwgMjMwLCAKLSAgICAyNDQsIDQxLCAyMzEsIDEzOCwgNDEsIDIzMSwgMTM1LCA0MSwgMjMxLCAxMzksIDQxLCAyMTMsIDkwLCA0MSwgMjEzLCA4OCwgCi0gICAgNDEsIDIxMiwgMTkyLCA0MSwgMjIzLCAxMjMsIDQxLCAyMjMsIDEyNywgNDEsIDIyMywgMjgsIDQxLCAyMjMsIDIzLCA0MSwgCi0gICAgMjIzLCAyMzUsIDQxLCAyMjMsIDIzMiwgNDEsIDIxNCwgMjIsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAyMTIsIDc5LCAKLSAgICAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMTE2LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMTA5LCAxMDUsIAotICAgIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMTY2LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMTYzLCAxMDUsIDIwMSwgCi0gICAgMTYsIDMxLCAyNDAsIDIyNiwgMTgwLCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMTg5LCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDAsIDIyNiwgMTk4LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMTk1LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIAotICAgIDIyNiwgMjAwLCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMjE3LCAyMDAsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgCi0gICAgMjI2LCAyNDUsIDEyNCwgMTA1LCAyMDEsIDE2LCAzMSwgMjQwLCAyMjYsIDIxNiwgNDEsIDEwNSwgMjAxLCAxNiwgMzEsIAotICAgIDI0MCwgMjI2LCAyMTcsIDExNywgMTA1LCAyMDEsIDE2LCAzMSwgMjQwLCAyMjYsIDI0MywgMjMxLCAxMDUsIDIwMSwgMTYsIAotICAgIDMxLCAyNDAsIDIyNiwgMjQ0LCA4NywgMTA1LCAyMDEsIDE2LCAzMSwgMjQwLCAyMjYsIDIyMCwgNDcsIDEwNSwgMjAxLCAxNiwgCi0gICAgMzEsIDI0MCwgMjI2LCAyMjEsIDQwLCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMjQ1LCAxNDcsIDEwNSwgMjAxLCAKLSAgICAxNiwgMzEsIDI0MCwgMjI2LCAyMjksIDI4LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMjE2LCAzOCwgMTA1LCAyMDEsIAotICAgIDE2LCAzMSwgMjQwLCAyMjYsIDIxNiwgMzIsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAyMTYsIDI4LCAxMDUsIDIwMSwgCi0gICAgMTYsIDMxLCAyNDAsIDIyNiwgMjE2LCAyOSwgMTA1LCAyMDEsIDE2LCAzMSwgMjQwLCAyMjYsIDIxNiwgMzQsIDQxLCAyNDAsIAotICAgIDIxNywgNDEsIDI0OCwgMTY0LCA0MSwgMjUzLCAxMDgsIDQxLCAxMzQsIDQxLCAyMjYsIDI0OSwgNDEsIDIyNiwgOTksIDQxLCAKLSAgICAyNDcsIDEwMSwgNDEsIDI0NywgMTAyLCAyMTksIDE2NSwgNDEsIDI0NywgMTAyLCAyNDksIDQ5LCA0MSwgMjM1LCAxNTQsIAotICAgIDQxLCAyNDUsIDU0LCAyMzAsIDI1LCAyNDEsIDIwMCwgNDEsIDI0NSwgNTQsIDIzMCwgMjUsIDIxOCwgMTIwLCA0MSwgMjQ1LCAKLSAgICA1NCwgMjMwLCAyNSwgMjE4LCAyNCwgNDEsIDI0NSwgNTQsIDIzMCwgMjUsIDIzMSwgMTM0LCA0MSwgMjQ5LCA5NiwgNDEsIAotICAgIDIyNiwgMjE0LCAyNTQsIDM0LCA0MSwgMjA1LCA0MSwgMjMwLCAxNzMsIDYxLCA0MSwgMTg4LCA0MSwgMTgxLCA0MSwgMjM0LCAKLSAgICAxOTEsIDQxLCAyMzEsIDE5MiwgNDEsIDI0MywgNTYsIDQxLCAyNTAsIDIwNiwgNDEsIDIzNCwgMTkwLCA0MSwgMjI2LCAyNiwgCi0gICAgNDEsIDIyOSwgMTYzLCA0MSwgMjMwLCAxNzMsIDI0NCwgMjMwLCA0MSwgMjMwLCAxNzMsIDI0MywgMTc3LCA0MSwgMjMxLCAKLSAgICA4MiwgNDEsIDIzNCwgMTQwLCA0MSwgMjQwLCAxNTUsIDQxLCAyMzQsIDEwMywgNDEsIDIzMSwgNDQsIDQxLCAyNDIsIDE5MiwgCi0gICAgNDEsIDIxNywgNzMsIDQxLCAyMzAsIDE3MywgMTUwLCA0MSwgMjMwLCAyMzgsIDQxLCAyNDcsIDEwOSwgNDEsIDIzNCwgNDksIAotICAgIDQxLCAyNDQsIDE0LCA0MSwgMjI4LCAyMDAsIDQxLCAyMzAsIDE3MywgMTgzLCA0MSwgMjMwLCAyMzUsIDQxLCAyNDksIDE3NiwgCi0gICAgNDEsIDIzNCwgNDMsIDQxLCAyMzAsIDIzNiwgMjE5LCAxNjUsIDQxLCAyNDksIDE3NywgMjE5LCAxNjUsIDQxLCAyMzIsIAotICAgIDExMCwgMjE5LCAxNjUsIDQxLCAyMzQsIDQ0LCAyMTksIDE2NSwgNDEsIDIzMCwgMjM2LCAyNDksIDQ5LCA0MSwgMjQ5LCAKLSAgICAxNzcsIDI0OSwgNDksIDQxLCAyMzIsIDExMCwgMjQ5LCA0OSwgNDEsIDIzNCwgNDQsIDI0OSwgNDksIDQxLCAyMzIsIDExMCwgCi0gICAgMTEwLCAxOTcsIDQxLCAyMzIsIDExMCwgMTEwLCAyMjMsIDQsIDIxOSwgMTY1LCA0MSwgMTkzLCA0MSwgMjM0LCA0LCA0MSwgCi0gICAgMjMwLCAxNzUsIDQxLCAyNDIsIDEyNywgNDEsIDIyNCwgNjYsIDQxLCAyMjQsIDY3LCAxMTAsIDE5NywgNDEsIDIyNCwgNjcsIAotICAgIDExMCwgMjIzLCA0LCAyMTksIDE2NSwgNDEsIDIyNSwgNDcsIDQxLCAyMjgsIDEyNCwgNDEsIDIzMCwgMTczLCAxOTcsIDQxLCAKLSAgICAyMzAsIDE3NCwgNDEsIDIyNSwgNCwgNDEsIDIyOCwgMzMsIDQxLCAyMzAsIDE3MywgMjE1LCA3OSwgNDEsIDIzMCwgMTIwLCAKLSAgICA0MSwgMjMzLCAyMDcsIDQxLCAyMzAsIDEyMSwgMjMxLCAxMzgsIDQxLCAyMjUsIDMsIDQxLCAyMjgsIDMyLCA0MSwgMjMwLCAKLSAgICAxNzMsIDIxNCwgODIsIDQxLCAyMzAsIDExNSwgNDEsIDIzMywgMjA1LCA0MSwgMjMwLCAxMTYsIDIzMSwgMTM4LCA0MSwgCi0gICAgMjM1LCAyOCwgMjI3LCA4NiwgNDEsIDIzMiwgMTEwLCAyMjcsIDg2LCA0MSwgMjU0LCA0NSwgNDEsIDI1MSwgODcsIDQxLCAKLSAgICAyNTAsIDE0NywgNDEsIDI1MCwgMTI1LCA0MSwgMjUwLCAyNTMsIDExMCwgMjM0LCAxNDAsIDQxLCAyNDksIDE3NSwgNDEsIAotICAgIDI0OCwgODgsIDQxLCAyNDIsIDUzLCA0MSwgMTU5LCA0MSwgMjQwLCAyMTgsIDQxLCAyMzUsIDI1MSwgNDEsIDIzNCwgNTYsIAotICAgIDQxLCAyMzQsIDQ0LCAyNTAsIDE4MiwgNDEsIDIzMywgMjQwLCA0MSwgMjMyLCAyMTEsIDQxLCAyMzIsIDIxMCwgNDEsIDIzMiwgCi0gICAgMjAwLCA0MSwgMjMyLCAxMjIsIDQxLCAyMzEsIDE5MywgMjIwLCA3LCA0MSwgMjMxLCA5LCA0MSwgMjMwLCAyMjIsIDQxLCAKLSAgICAyMjYsIDI0LCA0MSwgMjI1LCAxNTMsIDQxLCAyMjUsIDk5LCA0MSwgMjI1LCA5NywgNDEsIDIxOSwgMTU5LCA0MSwgMjE4LCAKLSAgICAyMDMsIDQxLCAyMTQsIDgsIDQxLCAyMTUsIDgwLCAxMTAsIDE4MywgNDEsIDExOCwgMTEwLCAxODMsIDEwNSwgMjAxLCAxNiwgCi0gICAgMzEsIDI0OCwgOTIsIDExNiwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMTA5LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIAotICAgIDkyLCAxNjYsIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgOTIsIDE2MywgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMTgwLCAKLSAgICAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAxODksIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgOTIsIDE5OCwgMTA1LCAyMDEsIAotICAgIDE2LCAzMSwgMjQ4LCA5MiwgMTk1LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyMDAsIDEwNSwgMjAxLCAxNiwgMzEsIAotICAgIDI0OCwgOTIsIDIxNywgMjAwLCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyNDUsIDEyNCwgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQ4LCA5MiwgMjE2LCA0MSwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMjE3LCAxMTcsIDEwNSwgMjAxLCAxNiwgMzEsIAotICAgIDI0OCwgOTIsIDI0MywgMjMxLCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyNDQsIDg3LCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDgsIDkyLCAyMjAsIDQ3LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyMjEsIDQwLCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDgsIDkyLCAyNDUsIDE0NywgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMjI5LCAyOCwgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQ4LCA5MiwgMjE2LCAzOCwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMjE2LCAzMiwgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQ4LCA5MiwgMjE2LCAyOCwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMjE2LCAyOSwgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQ4LCA5MiwgMjE2LCAzNCwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMjE2LCAzNSwgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQ4LCA5MiwgMjE2LCAzMCwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMjE2LCAzMSwgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQ4LCA5MiwgMjE2LCAzNywgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMjE2LCAzMywgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQ4LCA5MiwgMjE3LCAxMTUsIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgOTIsIDIxNywgMTE0LCA0MSwgMjQzLCA5NCwgMjQxLCAKLSAgICAxNzcsIDMxLCAyMTcsIDE0OSwgMjQ5LCA4MCwgMjQxLCAyMDcsIDI0MSwgMTc3LCAzMSwgMjE3LCAxNDksIDIyNCwgMTUsIAotICAgIDI0NSwgMTc5LCAyNDEsIDE3NywgMzEsIDI0NywgMTgzLCAyNTMsIDEyMywgMjE3LCAxNDksIDI1MSwgMjMyLCAyNDEsIDE3NywgCi0gICAgMzEsIDIxMiwgMjE0LCAyNDQsIDcsIDI0MSwgMTc3LCAzMSwgMjE0LCA0MywgMjQxLCAxNzcsIDMxLCAyNDksIDE0MiwgMjQxLCAKLSAgICAxNzcsIDMxLCAyMTcsIDE0OSwgMjUzLCAxNzQsIDI0MSwgMTc3LCAzMSwgMjQxLCA0NiwgMjE2LCAyNDksIDI0MSwgMTc3LCAKLSAgICAzMSwgMywgMjE4LCAxMiwgMjQxLCAxNzcsIDMxLCAyMTYsIDE5NSwgMjQxLCAxNzcsIDMxLCAyMjYsIDk0LCAyNDEsIDE3NywgCi0gICAgMzEsIDIxOSwgOTcsIDI0MSwgMTc3LCAzMSwgMjQ0LCAxMDgsIDI0MSwgMTc3LCAzMSwgMjQyLCAxMDksIDIyNSwgMTIwLCAKLSAgICAyNDEsIDE3NywgMzEsIDIzMCwgMjI1LCAyNDEsIDE3NywgMzEsIDI0NSwgODUsIDI0MSwgMTc3LCAzMSwgMjQ0LCA4LCAyNDEsIAotICAgIDE3NywgMzEsIDIxMywgMTk0LCAyMjcsIDYzLCAyMTcsIDE0OSwgMjQ4LCAzNywgMjQxLCAxNzcsIDMxLCAyNTMsIDIyMSwgCi0gICAgMjQxLCAxNzcsIDMxLCAyNDksIDEyNCwgMjQxLCAxNzcsIDMxLCAyNTEsIDE1MCwgMjE3LCA5MiwgMjQxLCAxNzcsIDMxLCAKLSAgICAyNDIsIDEyNSwgMjQxLCAxNzcsIDMxLCAyMTksIDE3NywgMjUzLCAyMzcsIDI0MSwgMTc3LCAzMSwgMjIzLCAyMDUsIDI0MSwgCi0gICAgMTc3LCAzMSwgMjM1LCAyMTcsIDI0MSwgMTc3LCAzMSwgMjQyLCAxMDksIDIxOCwgMTIsIDI0MSwgMTc3LCAzMSwgMjMwLCAKLSAgICAxODEsIDI0OSwgOTgsIDI0MSwgMTc3LCAzMSwgMjQyLCAxMDksIDIyNSwgNzcsIDI0MSwgMTc3LCAzMSwgMjE3LCAxNDksIAotICAgIDI1NCwgMTc4LCAyMTQsIDI0LCAyNDEsIDE3NywgMzEsIDIxNywgMTQ5LCAyNDksIDIwMSwgMjQ0LCA2NSwgMjQxLCAxNzcsIAotICAgIDMxLCAyMzUsIDIzMCwgMjQxLCAxNzcsIDMxLCAyNDYsIDEyLCAyNDEsIDE3NywgMzEsIDIyMywgMjA4LCAyNDEsIDE3NywgCi0gICAgMzEsIDI0MiwgMTA5LCAyMjUsIDEwNCwgMjQxLCAxNzcsIDMxLCAyMjUsIDYxLCAyNDEsIDE3NywgMzEsIDI0OCwgMTA2LCAKLSAgICA2NSwgMjE3LCAxNDksIDIzMywgMiwgMjQxLCAxNzcsIDMxLCAyMTcsIDE0OSwgMjQ0LCAxNDIsIDI0MSwgMTc3LCAzMSwgCi0gICAgMjI3LCAyOSwgMjQxLCAxNzcsIDMxLCAyMjcsIDEwOCwgMjQxLCAxNzcsIDMxLCAyNDgsIDEwLCAyNDEsIDE3NywgMzEsIAotICAgIDI0OCwgMzAsIDI0MSwgMTc3LCAzMSwgMjM1LCAyNDMsIDI0MSwgMTc3LCAzMSwgMjUxLCA3NywgMjQxLCAxNzcsIDMxLCAKLSAgICAyNDksIDE1OSwgMjExLCAyMTEsIDIzMSwgMTQxLCAyNDEsIDE3NywgMzEsIDI0MywgNjMsIDIxNiwgMjQ5LCAyNDEsIDE3NywgCi0gICAgMzEsIDIyNSwgMTIsIDIxNSwgMTI1LCAyNDEsIDE3NywgMzEsIDIyNywgMjgsIDI0MSwgMTc3LCAzMSwgMjE3LCAxNDksIAotICAgIDIxMywgMjU0LCAyNDEsIDE3NywgMzEsIDIyMywgMTk4LCAyNDEsIDE3NywgMzEsIDIxNywgMTQ5LCAyNTAsIDE1MywgMjQxLCAKLSAgICAxNzcsIDMxLCAyMTcsIDE0OSwgMjUzLCAxNzAsIDIxNywgODcsIDI0MSwgMTc3LCAzMSwgMjE3LCAxNDksIDIzNCwgMTg1LCAKLSAgICAyMTksIDc0LCAyMzAsIDE4NSwgMjQxLCAxNzcsIDMxLCAyNDcsIDIzOSwgMjQxLCAxNzcsIDMxLCAyMTcsIDE0OSwgMjMxLCAKLSAgICAyMTUsIDIzMiwgOCwgMjQxLCAxNzcsIDMxLCAyNTQsIDE3OSwgMjQxLCAxNzcsIDMxLCAyMTcsIDE0OSwgMjE0LCAzOCwgCi0gICAgMjQxLCAxNzcsIDMxLCAyMTcsIDE0OSwgMjQzLCAyMywgMjEzLCAyMjQsIDI0MSwgMTc3LCAzMSwgMjE3LCAxNDksIDIzNSwgCi0gICAgNTUsIDIzMywgMTMxLCAyNDEsIDE3NywgMzEsIDI0NywgMTM2LCAyNDEsIDE3NywgMzEsIDIzMiwgMjQ5LCAyNDEsIDE3NywgCi0gICAgMzEsIDIzNSwgMjIwLCAyMTYsIDE0NSwgMjQxLCAxNzcsIDMxLCAzLCAyMjUsIDc3LCAyNDEsIDE3NywgMzEsIDI1NCwgMTIyLCAKLSAgICAyNDksIDE1MSwgMjQxLCAxNzcsIDMxLCAyNTEsIDIzNSwgMjQ5LCAxNTEsIDgsIDQsIDIzNSwgMTU4LCA4LCA0LCAyMzUsIAotICAgIDE1MSwgOCwgNCwgNzIsIDgsIDQsIDIzNSwgMTgwLCA4LCA0LCAyMzYsIDUzLCA4LCA0LCAyMzYsIDM2LCA4LCA0LCAyMzYsIAotICAgIDU1LCA4LCA0LCAyMzYsIDU0LCA4LCA0LCAyNTMsIDEyMiwgOCwgNCwgMjUzLCA4NSwgOCwgNCwgNjEsIDgsIDQsIDI1MywgCi0gICAgMjM5LCA4LCA0LCAyMTUsIDEzNSwgOCwgNCwgMjE1LCAxMzgsIDgsIDQsIDIxNSwgMTM2LCA4LCA0LCAyMjcsIDgsIDgsIDQsIAotICAgIDIyNiwgMjM4LCA4LCA0LCA3NSwgOCwgNCwgMjI3LCA0MSwgOCwgNCwgMjQ1LCAyLCA4LCA0LCA3NCwgOCwgNCwgMjEzLCAKLSAgICAxODMsIDgsIDQsIDI1MSwgMTUxLCA4LCA0LCAyNTEsIDE0OCwgOCwgNCwgMjUxLCAxODQsIDgsIDQsIDI1MSwgMTYxLCA4LCAKLSAgICA0LCAyNTEsIDE3NCwgOCwgNCwgMjUxLCAxNzMsIDgsIDQsIDI1MSwgMTc2LCA4LCA0LCAyNTEsIDE3NSwgOCwgNCwgMjUyLCAKLSAgICA0MSwgOCwgNCwgMjUyLCAzMywgOCwgNCwgMjUyLCAxMDcsIDgsIDQsIDI1MiwgNjEsIDgsIDQsIDI1MSwgMzAsIDgsIDQsIAotICAgIDI1MSwgMzQsIDgsIDQsIDI1MSwgMzEsIDgsIDQsIDI1MSwgMTA1LCA4LCA0LCAyNTEsIDg5LCA4LCA0LCAyNTEsIDEyOCwgOCwgCi0gICAgNCwgMjUxLCAxMTAsIDgsIDQsIDI1MSwgMTk4LCA4LCA0LCAyNTEsIDI1MSwgOCwgNCwgMjUxLCAyMTAsIDgsIDQsIDI1MSwgCi0gICAgMTYsIDgsIDQsIDI1MSwgMTMsIDgsIDQsIDI1MSwgNTQsIDgsIDQsIDI1MSwgMjksIDgsIDQsIDI1MSwgMjMsIDgsIDQsIAotICAgIDI1MSwgMjcsIDgsIDQsIDI1MSwgMSwgOCwgNCwgMjUxLCAwLCA4LCA0LCAyNTEsIDYsIDgsIDQsIDI1MSwgNCwgOCwgNCwgCi0gICAgMjUxLCAyLCA4LCA0LCAyNTEsIDMsIDgsIDQsIDIyNSwgMTgxLCA4LCA0LCAyMjUsIDE3NywgOCwgNCwgMjI1LCAyNDAsIDgsIAotICAgIDQsIDIyNSwgMTkxLCA4LCA0LCAyMjUsIDIwNywgOCwgNCwgMjI1LCAyMzQsIDgsIDQsIDIyNSwgMjMwLCA4LCA0LCAyMjYsIAotICAgIDExMywgOCwgNCwgMjI2LCAxMDQsIDgsIDQsIDE5MywgOCwgNCwgMjI2LCAxNDksIDgsIDQsIDIyNSwgMjEsIDgsIDQsIDIyNSwgCi0gICAgMjMsIDgsIDQsIDIyNSwgMjIsIDgsIDQsIDIyNSwgMTEzLCA4LCA0LCAyMjUsIDEwMiwgOCwgNCwgMjI1LCAxNTAsIDgsIDQsIAotICAgIDIyNSwgMTI1LCA4LCA0LCAyMjUsIDgsIDgsIDQsIDIyNSwgNSwgOCwgNCwgMjI1LCAzNSwgOCwgNCwgMjI1LCAyMCwgOCwgNCwgCi0gICAgMjI1LCAxMywgOCwgNCwgMjI1LCAxOCwgOCwgNCwgMjI0LCAyNDQsIDgsIDQsIDIyNCwgMjQzLCA4LCA0LCAyMjQsIDI0OCwgCi0gICAgOCwgNCwgMjI0LCAyNDcsIDgsIDQsIDIyNCwgMjQ1LCA4LCA0LCAyMjQsIDI0NiwgOCwgNCwgMjUyLCAxNiwgOCwgNCwgMjUyLCAKLSAgICAxNSwgOCwgNCwgMjUyLCAyMiwgOCwgNCwgMjUyLCAxNywgOCwgNCwgMjUyLCAxOSwgOCwgNCwgMjUyLCAxOCwgOCwgNCwgCi0gICAgMjUyLCAyMSwgOCwgNCwgMjUyLCAyMCwgOCwgNCwgMjUyLCAyOCwgOCwgNCwgMjUyLCAyNywgOCwgNCwgMjUyLCAzMSwgOCwgCi0gICAgNCwgMjUyLCAyOSwgOCwgNCwgMjUyLCA3LCA4LCA0LCAyNTIsIDksIDgsIDQsIDI1MiwgOCwgOCwgNCwgMjUyLCAxMiwgOCwgCi0gICAgNCwgMjUyLCAxMSwgOCwgNCwgMjUyLCAxNCwgOCwgNCwgMjUyLCAxMywgOCwgNCwgMjUyLCAyMywgOCwgNCwgMjUyLCAyNiwgCi0gICAgOCwgNCwgMjUyLCAyNCwgOCwgNCwgMjUyLCAzLCA4LCA0LCAyNTIsIDIsIDgsIDQsIDI1MiwgMTAsIDgsIDQsIDI1MiwgNiwgCi0gICAgOCwgNCwgMjUyLCA0LCA4LCA0LCAyNTIsIDUsIDgsIDQsIDI1MSwgMjU1LCA4LCA0LCAyNTEsIDI1NCwgOCwgNCwgMjUyLCAxLCAKLSAgICA4LCA0LCAyNTIsIDAsIDgsIDQsIDIyOSwgMjQ4LCA4LCA0LCAyMjksIDI0NywgOCwgNCwgMjI5LCAyNTMsIDgsIDQsIDIyOSwgCi0gICAgMjQ5LCA4LCA0LCAyMjksIDI1MCwgOCwgNCwgMjI5LCAyNTIsIDgsIDQsIDIyOSwgMjUxLCA4LCA0LCAyMjksIDI1NSwgOCwgCi0gICAgNCwgMjI5LCAyNTQsIDgsIDQsIDIzMCwgMSwgOCwgNCwgMjMwLCAwLCA4LCA0LCAyMjksIDI0NCwgOCwgNCwgMjI5LCAyNDMsIAotICAgIDgsIDQsIDIyOSwgMjQ2LCA4LCA0LCAyMjksIDI0NSwgOCwgNCwgMjI5LCAyMzgsIDgsIDQsIDIyOSwgMjM3LCA4LCA0LCAKLSAgICAyMjksIDI0MiwgOCwgNCwgMjI5LCAyNDEsIDgsIDQsIDIyOSwgMjM5LCA4LCA0LCAyMjksIDI0MCwgOCwgNCwgMjI5LCAyMzIsIAotICAgIDgsIDQsIDIyOSwgMjMxLCA4LCA0LCAyMjksIDIzNiwgOCwgNCwgMjI5LCAyMzUsIDgsIDQsIDIyOSwgMjMzLCA4LCA0LCAKLSAgICAyMjksIDIzNCwgOCwgNCwgMjQxLCA5NiwgOCwgNCwgMjQxLCA5NSwgOCwgNCwgMjQxLCAxMDEsIDgsIDQsIDI0MSwgOTcsIDgsIAotICAgIDQsIDI0MSwgOTgsIDgsIDQsIDI0MSwgMTAwLCA4LCA0LCAyNDEsIDk5LCA4LCA0LCAyNDEsIDEwNCwgOCwgNCwgMjQxLCAKLSAgICAxMDMsIDgsIDQsIDI0MSwgMTA2LCA4LCA0LCAyNDEsIDEwNSwgOCwgNCwgMjQxLCA4NywgOCwgNCwgMjQxLCA4OSwgOCwgNCwgCi0gICAgMjQxLCA4OCwgOCwgNCwgMjQxLCA5MiwgOCwgNCwgMjQxLCA5MSwgOCwgNCwgMjQxLCA5NCwgOCwgNCwgMjQxLCA5MywgOCwgCi0gICAgNCwgMjQxLCA4MywgOCwgNCwgMjQxLCA4MiwgOCwgNCwgMjQxLCA5MCwgOCwgNCwgMjQxLCA4NiwgOCwgNCwgMjQxLCA4NCwgCi0gICAgOCwgNCwgMjQxLCA4NSwgOCwgNCwgMjQxLCA3NywgOCwgNCwgMjQxLCA4MSwgOCwgNCwgMjQxLCA4MCwgOCwgNCwgMjQxLCAKLSAgICA3OCwgOCwgNCwgMjQxLCA3OSwgOCwgNCwgMjMwLCAyNDEsIDgsIDQsIDIzMCwgMjQwLCA4LCA0LCAyMzEsIDQyLCA4LCA0LCAKLSAgICAyMzAsIDI0NywgOCwgNCwgMjMxLCAxNiwgOCwgNCwgMjMxLCAzNCwgOCwgNCwgMjMxLCAzMiwgOCwgNCwgMjMxLCAyMDIsIDgsIAotICAgIDQsIDIzMSwgMTk4LCA4LCA0LCAxODgsIDgsIDQsIDIzMSwgMjM1LCA4LCA0LCAyMzAsIDE0NCwgOCwgNCwgMjMwLCAxNDMsIAotICAgIDgsIDQsIDIzMCwgMTQ3LCA4LCA0LCAyMzAsIDE0NSwgOCwgNCwgMjMwLCAxOTEsIDgsIDQsIDIzMCwgMTc3LCA4LCA0LCAKLSAgICAyMzAsIDIzMSwgOCwgNCwgMjMwLCAxOTYsIDgsIDQsIDIzMSwgOTMsIDgsIDQsIDIzMSwgMTU2LCA4LCA0LCAyMzAsIDEyNSwgCi0gICAgOCwgNCwgMjMwLCAxMjIsIDgsIDQsIDIzMCwgMTcyLCA4LCA0LCAyMzAsIDE0MCwgOCwgNCwgMjMwLCAxMzMsIDgsIDQsIAotICAgIDIzMCwgMTM4LCA4LCA0LCAyMzAsIDEwMCwgOCwgNCwgMjMwLCA5OSwgOCwgNCwgMjMwLCAxMDUsIDgsIDQsIDIzMCwgMTAyLCAKLSAgICA4LCA0LCAyNDQsIDUyLCA4LCA0LCAyNDQsIDQ3LCA4LCA0LCAyNDQsIDkwLCA4LCA0LCAyNDQsIDY3LCA4LCA0LCAyNDQsIAotICAgIDEzNSwgOCwgNCwgMjQ0LCAxMjYsIDgsIDQsIDI0NCwgMTY0LCA4LCA0LCAyNDQsIDEzOCwgOCwgNCwgMjQzLCAyMjksIDgsIAotICAgIDQsIDI0NCwgMTIsIDgsIDQsIDI0MywgMjUyLCA4LCA0LCAyNDMsIDE5MCwgOCwgNCwgMjQzLCAxODksIDgsIDQsIDI0MywgCi0gICAgMjA1LCA4LCA0LCAyNDMsIDE5NSwgOCwgNCwgMjQzLCAxOTMsIDgsIDQsIDI0MywgMTk0LCA4LCA0LCAyNDMsIDE4MCwgOCwgCi0gICAgNCwgMjQzLCAxNzksIDgsIDQsIDI0MywgMTgzLCA4LCA0LCAyNDMsIDE4MSwgOCwgNCwgMjE0LCAxMjUsIDgsIDQsIDIxNCwgCi0gICAgMTIwLCA4LCA0LCAyMTQsIDE1NCwgOCwgNCwgMjE0LCAxMzQsIDgsIDQsIDIxNCwgMTQ2LCA4LCA0LCAyMTQsIDE0MywgOCwgCi0gICAgNCwgMjE0LCAxNDgsIDgsIDQsIDIxNCwgMTQ3LCA4LCA0LCAyMTQsIDIzOSwgOCwgNCwgMjE0LCAyMzUsIDgsIDQsIDIxNSwgCi0gICAgMSwgOCwgNCwgMjE0LCAyNTAsIDgsIDQsIDIxNCwgMTA2LCA4LCA0LCAyMTQsIDEwMiwgOCwgNCwgMjE0LCAxMTksIDgsIDQsIAotICAgIDIxNCwgMTA3LCA4LCA0LCAyMTQsIDE1NSwgOCwgNCwgMjE0LCAyMjEsIDgsIDQsIDIxNCwgOTMsIDgsIDQsIDIxNCwgOTIsIAotICAgIDgsIDQsIDIxNCwgOTksIDgsIDQsIDIxNCwgOTYsIDgsIDQsIDIxNCwgOTQsIDgsIDQsIDIxNCwgOTUsIDgsIDQsIDIxNCwgCi0gICAgODYsIDgsIDQsIDIxNCwgODUsIDgsIDQsIDIxNCwgOTAsIDgsIDQsIDIxNCwgODksIDgsIDQsIDIxNCwgODcsIDgsIDQsIAotICAgIDIxNCwgODgsIDgsIDQsIDI0NywgMTMwLCA4LCA0LCAyNDcsIDExOCwgOCwgNCwgMjQ3LCAyMTEsIDgsIDQsIDI0NywgMTU1LCAKLSAgICA4LCA0LCAyNDcsIDE4OCwgOCwgNCwgMjQ3LCAxOTIsIDgsIDQsIDI0NywgMTkxLCA4LCA0LCAyNDgsIDk4LCA4LCA0LCAyNDgsIAotICAgIDkzLCA4LCA0LCAyNDgsIDE2NCwgOCwgNCwgMjQ4LCAxMTcsIDgsIDQsIDI0NiwgMTcsIDgsIDQsIDI0NiwgMTgsIDgsIDQsIAotICAgIDI0NywgNzQsIDgsIDQsIDI0NiwgNTYsIDgsIDQsIDI0NywgOTksIDgsIDQsIDI0NywgNzYsIDgsIDQsIDI0NywgMjM3LCA4LCAKLSAgICA0LCAyNDgsIDQxLCA4LCA0LCAyNDcsIDI1MiwgOCwgNCwgMjQ2LCA4LCA4LCA0LCAyNDYsIDYsIDgsIDQsIDI0NiwgMzMsIDgsIAotICAgIDQsIDI0NiwgMTYsIDgsIDQsIDI0NiwgMTEsIDgsIDQsIDI0NiwgMTQsIDgsIDQsIDIxNywgMjAsIDgsIDQsIDIxNywgMTQsIAotICAgIDgsIDQsIDIxNywgNzEsIDgsIDQsIDIxNywgMjksIDgsIDQsIDIxNywgNjMsIDgsIDQsIDIxNywgNjUsIDgsIDQsIDIxNywgCi0gICAgNjQsIDgsIDQsIDIxNywgMjUzLCA4LCA0LCAyMTcsIDI0MCwgOCwgNCwgMjE4LCA1MiwgOCwgNCwgMjE4LCA1LCA4LCA0LCAKLSAgICAyMTYsIDY2LCA4LCA0LCAyMTYsIDY1LCA4LCA0LCAyMTYsIDY4LCA4LCA0LCAyMTYsIDY3LCA4LCA0LCAyMTYsIDIxOCwgOCwgCi0gICAgNCwgMjE2LCAyMTQsIDgsIDQsIDEwOCwgOCwgNCwgMjE2LCAyMjYsIDgsIDQsIDIxNywgMTY2LCA4LCA0LCAyMTcsIDIyOSwgCi0gICAgOCwgNCwgMjE3LCAxOTAsIDgsIDQsIDIxNiwgNTIsIDgsIDQsIDIxNiwgNDgsIDgsIDQsIDIxNiwgODIsIDgsIDQsIDIxNiwgCi0gICAgNjQsIDgsIDQsIDIxNiwgNTMsIDgsIDQsIDIxNiwgNjIsIDgsIDQsIDI0OCwgNTgsIDgsIDQsIDI0OCwgNTcsIDgsIDQsIAotICAgIDI0OCwgNjMsIDgsIDQsIDI0OCwgNTksIDgsIDQsIDI0OCwgNjAsIDgsIDQsIDI0OCwgNjIsIDgsIDQsIDI0OCwgNjEsIDgsIAotICAgIDQsIDI0OCwgNzksIDgsIDQsIDI0OCwgNzgsIDgsIDQsIDI0OCwgODYsIDgsIDQsIDI0OCwgODAsIDgsIDQsIDI0OCwgNDgsIAotICAgIDgsIDQsIDI0OCwgNTAsIDgsIDQsIDI0OCwgNDksIDgsIDQsIDI0OCwgNTMsIDgsIDQsIDI0OCwgNTIsIDgsIDQsIDI0OCwgCi0gICAgNTYsIDgsIDQsIDI0OCwgNTQsIDgsIDQsIDI0OCwgNzEsIDgsIDQsIDI0OCwgNzQsIDgsIDQsIDI0OCwgNzIsIDgsIDQsIAotICAgIDI0OCwgNDQsIDgsIDQsIDI0OCwgNDMsIDgsIDQsIDI0OCwgNTEsIDgsIDQsIDI0OCwgNDcsIDgsIDQsIDI0OCwgNDUsIDgsIAotICAgIDQsIDI0OCwgNDYsIDgsIDQsIDIyOSwgMjA2LCA4LCA0LCAyMjksIDIwNSwgOCwgNCwgMjI5LCAyMTMsIDgsIDQsIDIyOSwgCi0gICAgMjA4LCA4LCA0LCAyMjksIDIwOSwgOCwgNCwgMjI5LCAyMTAsIDgsIDQsIDIyOSwgMjIyLCA4LCA0LCAyMjksIDIyMSwgOCwgCi0gICAgNCwgMjI5LCAyMjgsIDgsIDQsIDIyOSwgMjIzLCA4LCA0LCAyMjksIDE5OCwgOCwgNCwgMjI5LCAxOTcsIDgsIDQsIDIyOSwgCi0gICAgMjA0LCA4LCA0LCAyMjksIDE5OSwgOCwgNCwgMjI5LCAyMTQsIDgsIDQsIDIyOSwgMjIwLCA4LCA0LCAyMjksIDIxOCwgOCwgCi0gICAgNCwgMjI5LCAxOTAsIDgsIDQsIDIyOSwgMTg5LCA4LCA0LCAyMjksIDE5NSwgOCwgNCwgMjI5LCAxOTMsIDgsIDQsIDIyOSwgCi0gICAgMTkxLCA4LCA0LCAyMjksIDE5MiwgOCwgNCwgMjQxLCA2MywgOCwgNCwgMjQxLCA2MiwgOCwgNCwgMjQxLCA2OSwgOCwgNCwgCi0gICAgMjQxLCA2NCwgOCwgNCwgMjQxLCA2NiwgOCwgNCwgMjQxLCA2NSwgOCwgNCwgMjQxLCA2OCwgOCwgNCwgMjQxLCA2NywgOCwgCi0gICAgNCwgMjQxLCA3NCwgOCwgNCwgMjQxLCA3MywgOCwgNCwgMjQxLCA3NiwgOCwgNCwgMjQxLCA3NSwgOCwgNCwgMjQxLCA1NywgCi0gICAgOCwgNCwgMjQxLCA1OCwgOCwgNCwgMjQxLCA2MCwgOCwgNCwgMjQxLCA1OSwgOCwgNCwgMjQxLCA2MSwgOCwgNCwgMjQxLCAKLSAgICA3MCwgOCwgNCwgMjQxLCA3MiwgOCwgNCwgMjQxLCA3MSwgOCwgNCwgMjQxLCA1NiwgOCwgNCwgMjI5LCAyMCwgOCwgNCwgCi0gICAgMjI5LCAxOCwgOCwgNCwgMjI5LCA2NCwgOCwgNCwgMjI5LCAyMywgOCwgNCwgMjI5LCA0NiwgOCwgNCwgMjI5LCA2MCwgOCwgCi0gICAgNCwgMjI5LCA1OSwgOCwgNCwgMjMwLCA1LCA4LCA0LCAyMDUsIDgsIDQsIDIzMCwgMTcsIDgsIDQsIDIyOCwgNDIsIDgsIDQsIAotICAgIDIyOCwgNDQsIDgsIDQsIDIyOCwgNDMsIDgsIDQsIDIyOCwgMTYyLCA4LCA0LCAyMjgsIDE0OSwgOCwgNCwgMjI4LCAxODUsIAotICAgIDgsIDQsIDIyOCwgMTcxLCA4LCA0LCAyMjksIDE2NSwgOCwgNCwgMjI5LCAxODcsIDgsIDQsIDIyOSwgMTc2LCA4LCA0LCAKLSAgICAyMjgsIDM3LCA4LCA0LCAyMjgsIDM0LCA4LCA0LCAyMjgsIDkyLCA4LCA0LCAyMjgsIDQxLCA4LCA0LCAyMjgsIDM5LCA4LCAKLSAgICA0LCAyMjgsIDQwLCA4LCA0LCAyNDEsIDEyNywgOCwgNCwgMjQxLCAxMjYsIDgsIDQsIDI0MSwgMTMyLCA4LCA0LCAyNDEsIAotICAgIDEyOCwgOCwgNCwgMjQxLCAxMjksIDgsIDQsIDI0MSwgMTMxLCA4LCA0LCAyNDEsIDEzMCwgOCwgNCwgMjQxLCAxMzcsIDgsIAotICAgIDQsIDI0MSwgMTM2LCA4LCA0LCAyNDEsIDEzOSwgOCwgNCwgMjQxLCAxMzgsIDgsIDQsIDI0MSwgMTE5LCA4LCA0LCAyNDEsIAotICAgIDEyMSwgOCwgNCwgMjQxLCAxMjAsIDgsIDQsIDI0MSwgMTIzLCA4LCA0LCAyNDEsIDEyNSwgOCwgNCwgMjQxLCAxMjQsIDgsIAotICAgIDQsIDI0MSwgMTMzLCA4LCA0LCAyNDEsIDEzNSwgOCwgNCwgMjQxLCAxMzQsIDgsIDQsIDI0MSwgMTE1LCA4LCA0LCAyNDEsIAotICAgIDExNCwgOCwgNCwgMjQxLCAxMjIsIDgsIDQsIDI0MSwgMTE4LCA4LCA0LCAyNDEsIDExNiwgOCwgNCwgMjQxLCAxMTcsIDgsIAotICAgIDQsIDI0MSwgMTA5LCA4LCA0LCAyNDEsIDEwOCwgOCwgNCwgMjQxLCAxMTMsIDgsIDQsIDI0MSwgMTEyLCA4LCA0LCAyNDEsIAotICAgIDExMCwgOCwgNCwgMjQxLCAxMTEsIDgsIDQsIDIzMiwgMjI0LCA4LCA0LCAyMzIsIDIxOCwgOCwgNCwgMjMzLCAxMywgOCwgNCwgCi0gICAgMjMyLCAyMzEsIDgsIDQsIDIzMywgNSwgOCwgNCwgMjMzLCA0LCA4LCA0LCAyMzMsIDgsIDgsIDQsIDIzMywgNiwgOCwgNCwgCi0gICAgMjMzLCAxMDIsIDgsIDQsIDIzMywgOTMsIDgsIDQsIDIzMywgMTU3LCA4LCA0LCAyMzMsIDExMSwgOCwgNCwgMjMyLCAxMzcsIAotICAgIDgsIDQsIDIzMiwgMTM2LCA4LCA0LCAyMzIsIDEzOSwgOCwgNCwgMjMyLCAxMzgsIDgsIDQsIDIzMiwgMTcxLCA4LCA0LCAKLSAgICAyMzIsIDE2MSwgOCwgNCwgMjMyLCAyMDgsIDgsIDQsIDIzMiwgMTc1LCA4LCA0LCAyMzMsIDI4LCA4LCA0LCAyMzMsIDgyLCAKLSAgICA4LCA0LCAyMzMsIDQxLCA4LCA0LCAyMzIsIDEzMiwgOCwgNCwgMjMyLCAxMzEsIDgsIDQsIDIzMiwgMTU2LCA4LCA0LCAyMzIsIAotICAgIDEzNSwgOCwgNCwgMjMyLCAxMzMsIDgsIDQsIDIzMiwgMTM0LCA4LCA0LCAyMzIsIDExNCwgOCwgNCwgMjMyLCAxMTMsIDgsIAotICAgIDQsIDIzMiwgMTIxLCA4LCA0LCAyMzIsIDExNywgOCwgNCwgMjMyLCAxMTUsIDgsIDQsIDIzMiwgMTE2LCA4LCA0LCAyNDIsIAotICAgIDE2NSwgOCwgNCwgMjQyLCAxNjQsIDgsIDQsIDI0MiwgMTkwLCA4LCA0LCAyNDIsIDE3NSwgOCwgNCwgMjQyLCAxODIsIDgsIAotICAgIDQsIDI0MiwgMTgxLCA4LCA0LCAyNDIsIDE4NCwgOCwgNCwgMjQyLCAxODMsIDgsIDQsIDI0MywgNjUsIDgsIDQsIDI0MywgCi0gICAgNjAsIDgsIDQsIDI0MywgMTEwLCA4LCA0LCAyNDMsIDc1LCA4LCA0LCAyNDIsIDcyLCA4LCA0LCAyNDIsIDcxLCA4LCA0LCAKLSAgICAyNDIsIDc0LCA4LCA0LCAyNDIsIDczLCA4LCA0LCAyNDIsIDEzMCwgOCwgNCwgMjQyLCAxMjgsIDgsIDQsIDI0MiwgMTUwLCAKLSAgICA4LCA0LCAyNDIsIDEzOCwgOCwgNCwgMjQzLCA5LCA4LCA0LCAyNDMsIDcsIDgsIDQsIDI0MywgMzgsIDgsIDQsIDI0MywgMjAsIAotICAgIDgsIDQsIDI0MiwgNjIsIDgsIDQsIDI0MiwgNjEsIDgsIDQsIDI0MiwgOTIsIDgsIDQsIDI0MiwgNzAsIDgsIDQsIDI0MiwgCi0gICAgNjMsIDgsIDQsIDI0MiwgNjksIDgsIDQsIDIzNCwgNzAsIDgsIDQsIDIzNCwgNjksIDgsIDQsIDIzNCwgMTAxLCA4LCA0LCAKLSAgICAyMzQsIDg0LCA4LCA0LCAyMzQsIDk0LCA4LCA0LCAyMzQsIDk3LCA4LCA0LCAyMzQsIDk1LCA4LCA0LCAyMzQsIDIwNywgOCwgCi0gICAgNCwgMjM0LCAxOTYsIDgsIDQsIDE4MSwgOCwgNCwgMjM0LCAyMzMsIDgsIDQsIDIzMywgMjIxLCA4LCA0LCAyMzMsIDIyNiwgCi0gICAgOCwgNCwgMjMzLCAyMjMsIDgsIDQsIDIzNCwgOSwgOCwgNCwgMjM0LCA1LCA4LCA0LCAyMzQsIDM3LCA4LCA0LCAyMzQsIDE2LCAKLSAgICA4LCA0LCAyMzQsIDE2MiwgOCwgNCwgMjM0LCAxNDYsIDgsIDQsIDIzNCwgMTg4LCA4LCA0LCAyMzQsIDE2NSwgOCwgNCwgCi0gICAgMjMzLCAyMTAsIDgsIDQsIDIzMywgMjA4LCA4LCA0LCAyMzMsIDIzOCwgOCwgNCwgMjMzLCAyMjAsIDgsIDQsIDIzMywgMjEzLCAKLSAgICA4LCA0LCAyMzMsIDIxNywgOCwgNCwgMjQyLCAyNDcsIDgsIDQsIDI0MiwgMjQ2LCA4LCA0LCAyNDIsIDI1MSwgOCwgNCwgCi0gICAgMjQyLCAyNDgsIDgsIDQsIDI0MiwgMjUwLCA4LCA0LCAyNDIsIDI0OSwgOCwgNCwgMjQzLCAyLCA4LCA0LCAyNDMsIDEsIDgsIAotICAgIDQsIDI0MywgNSwgOCwgNCwgMjQzLCAzLCA4LCA0LCAyNDIsIDIzOCwgOCwgNCwgMjQyLCAyMzcsIDgsIDQsIDI0MiwgMjQwLCAKLSAgICA4LCA0LCAyNDIsIDIzOSwgOCwgNCwgMjQyLCAyNDMsIDgsIDQsIDI0MiwgMjQyLCA4LCA0LCAyNDIsIDI0NSwgOCwgNCwgCi0gICAgMjQyLCAyNDQsIDgsIDQsIDI0MiwgMjUzLCA4LCA0LCAyNDIsIDI1MiwgOCwgNCwgMjQzLCAwLCA4LCA0LCAyNDIsIDI1NCwgCi0gICAgOCwgNCwgMjQyLCAyMzMsIDgsIDQsIDI0MiwgMjMyLCA4LCA0LCAyNDIsIDI0MSwgOCwgNCwgMjQyLCAyMzYsIDgsIDQsIAotICAgIDI0MiwgMjM0LCA4LCA0LCAyNDIsIDIzNSwgOCwgNCwgMjMxLCA2MCwgOCwgNCwgMjMxLCA2MSwgOCwgNCwgMjMxLCA3OSwgOCwgCi0gICAgNCwgMjMxLCA3OCwgOCwgNCwgMjMxLCA4MSwgOCwgNCwgMjMxLCA4MCwgOCwgNCwgMjMxLCA1MSwgOCwgNCwgMjMxLCA1MywgCi0gICAgOCwgNCwgMjMxLCA1MiwgOCwgNCwgMjMxLCA1NiwgOCwgNCwgMjMxLCA1NSwgOCwgNCwgMjMxLCA1OCwgOCwgNCwgMjMxLCAKLSAgICA1NywgOCwgNCwgMjMxLCA2MiwgOCwgNCwgMjMxLCA2NCwgOCwgNCwgMjMxLCA2MywgOCwgNCwgMjMxLCA0NywgOCwgNCwgCi0gICAgMjMxLCA0NiwgOCwgNCwgMjMxLCA1NCwgOCwgNCwgMjMxLCA1MCwgOCwgNCwgMjMxLCA0OCwgOCwgNCwgMjMxLCA0OSwgOCwgCi0gICAgNCwgMjQwLCAxNzIsIDgsIDQsIDI0MCwgMTcxLCA4LCA0LCAyNDAsIDE3OCwgOCwgNCwgMjQwLCAxNzMsIDgsIDQsIDI0MCwgCi0gICAgMTc1LCA4LCA0LCAyNDAsIDE3NCwgOCwgNCwgMjQwLCAxNzcsIDgsIDQsIDI0MCwgMTc2LCA4LCA0LCAyNDAsIDE4MywgOCwgCi0gICAgNCwgMjQwLCAxODIsIDgsIDQsIDI0MCwgMTg1LCA4LCA0LCAyNDAsIDE4NCwgOCwgNCwgMjQwLCAxNjQsIDgsIDQsIDI0MCwgCi0gICAgMTYzLCA4LCA0LCAyNDAsIDE2NiwgOCwgNCwgMjQwLCAxNjUsIDgsIDQsIDI0MCwgMTY4LCA4LCA0LCAyNDAsIDE2NywgOCwgCi0gICAgNCwgMjQwLCAxNzAsIDgsIDQsIDI0MCwgMTY5LCA4LCA0LCAyNDAsIDE3OSwgOCwgNCwgMjQwLCAxODEsIDgsIDQsIDI0MCwgCi0gICAgMTgwLCA4LCA0LCAyMjksIDExMCwgOCwgNCwgMjI5LCAxMTIsIDgsIDQsIDIyOSwgMTExLCA4LCA0LCAyMjksIDE1MCwgOCwgCi0gICAgNCwgMjI5LCAxNDksIDgsIDQsIDIyOSwgMTU5LCA4LCA0LCAyMjksIDE1MywgOCwgNCwgMjI5LCA3MywgOCwgNCwgMjI5LCAKLSAgICA3MiwgOCwgNCwgMjI5LCA3NCwgOCwgNCwgMjI5LCA4MiwgOCwgNCwgMjI5LCA3OSwgOCwgNCwgMjI5LCA5MCwgOCwgNCwgCi0gICAgMjI5LCA4NCwgOCwgNCwgMjI5LCAxNDMsIDgsIDQsIDIyOSwgMTQ4LCA4LCA0LCAyMjksIDE0NSwgOCwgNCwgMjQxLCAxNDIsIAotICAgIDgsIDQsIDI0MSwgMTUyLCA4LCA0LCAyNDEsIDE2MCwgOCwgNCwgMjQxLCAyMzQsIDgsIDQsIDI0MSwgMjI3LCA4LCA0LCAKLSAgICAxNTksIDgsIDQsIDI0MSwgMjQ1LCA4LCA0LCAyNDAsIDE5NiwgOCwgNCwgMjQwLCAxOTUsIDgsIDQsIDI0MCwgMTk4LCA4LCAKLSAgICA0LCAyNDAsIDE5NywgOCwgNCwgMjQwLCAyMjksIDgsIDQsIDI0MCwgMjIwLCA4LCA0LCAyNDEsIDU0LCA4LCA0LCAyNDEsIAotICAgIDM0LCA4LCA0LCAyNDEsIDE3OSwgOCwgNCwgMjQxLCAyMjIsIDgsIDQsIDI0MSwgMTkwLCA4LCA0LCAyMTQsIDI3LCA4LCA0LCAKLSAgICAyMTQsIDEyLCA4LCA0LCAyMTQsIDQ5LCA4LCA0LCAyMTQsIDM1LCA4LCA0LCAyMTMsIDE3MywgOCwgNCwgMjEzLCAxNzUsIDgsIAotICAgIDQsIDIxMywgMTc0LCA4LCA0LCAyMTMsIDE5MSwgOCwgNCwgMjEzLCAyMTQsIDgsIDQsIDIxMywgMTk3LCA4LCA0LCAyMTMsIAotICAgIDI0NiwgOCwgNCwgMjE0LCA2LCA4LCA0LCAyMTMsIDI1MSwgOCwgNCwgMjEyLCAyMywgOCwgNCwgMjEyLCAyMiwgOCwgNCwgCi0gICAgMjEyLCAzNywgOCwgNCwgMjEyLCAyNSwgOCwgNCwgMjEyLCAzMCwgOCwgNCwgMjEyLCAzMiwgOCwgNCwgMjEyLCAzMSwgOCwgCi0gICAgNCwgMjEyLCA5NSwgOCwgNCwgMjEyLCA5MiwgOCwgNCwgMjEyLCAxMDksIDgsIDQsIDIxMiwgOTgsIDgsIDQsIDIxMiwgMSwgCi0gICAgOCwgNCwgMjEyLCAzLCA4LCA0LCAyMTIsIDIsIDgsIDQsIDIxMiwgMTIsIDgsIDQsIDIxMiwgMTEsIDgsIDQsIDIxMiwgMTYsIAotICAgIDgsIDQsIDIxMiwgMTMsIDgsIDQsIDIxMiwgNzcsIDgsIDQsIDIxMiwgODcsIDgsIDQsIDIxMiwgODEsIDgsIDQsIDIxMSwgCi0gICAgMjUzLCA4LCA0LCAyMTEsIDI1MiwgOCwgNCwgMjEyLCA4LCA4LCA0LCAyMTIsIDAsIDgsIDQsIDIxMSwgMjU0LCA4LCA0LCAKLSAgICAyMTEsIDI1NSwgOCwgNCwgMjExLCAyNDQsIDgsIDQsIDIxMSwgMjQzLCA4LCA0LCAyMTEsIDI0OSwgOCwgNCwgMjExLCAyNDcsIAotICAgIDgsIDQsIDIxMSwgMjQ1LCA4LCA0LCAyMTEsIDI0NiwgOCwgNCwgMjQ5LCAyMjEsIDgsIDQsIDI0OSwgMjE3LCA4LCA0LCAKLSAgICAyNDksIDI0NCwgOCwgNCwgMjQ5LCAyMzAsIDgsIDQsIDI0OSwgMjQxLCA4LCA0LCAyNDksIDIzNSwgOCwgNCwgMjQ5LCAyNDMsIAotICAgIDgsIDQsIDI0OSwgMjQyLCA4LCA0LCAyNTAsIDE1NiwgOCwgNCwgMjUwLCAxNTAsIDgsIDQsIDI1MCwgMjE5LCA4LCA0LCAKLSAgICAyNTAsIDE4MywgOCwgNCwgMjQ5LCA0NSwgOCwgNCwgMjQ5LCA0NywgOCwgNCwgMjQ5LCA0NiwgOCwgNCwgMjQ5LCA5MiwgOCwgCi0gICAgNCwgMjQ5LCA4MywgOCwgNCwgMjQ5LCAxNzUsIDgsIDQsIDI0OSwgMTA4LCA4LCA0LCAyNTAsIDk0LCA4LCA0LCAyNTAsIAotICAgIDEyNCwgOCwgNCwgMjUwLCA5OSwgOCwgNCwgMjQ5LCAyNiwgOCwgNCwgMjQ5LCAyNSwgOCwgNCwgMjQ5LCA1MywgOCwgNCwgCi0gICAgMjQ5LCA0MywgOCwgNCwgMjQ5LCAzMSwgOCwgNCwgMjQ5LCA0MiwgOCwgNCwgMjQ5LCA2LCA4LCA0LCAyNDksIDUsIDgsIDQsIAotICAgIDI0OSwgMTYsIDgsIDQsIDI0OSwgMTIsIDgsIDQsIDI0OSwgNywgOCwgNCwgMjQ5LCA5LCA4LCA0LCAyMTEsIDIyNywgOCwgNCwgCi0gICAgMjExLCAyMjYsIDgsIDQsIDIxMSwgMjMzLCA4LCA0LCAyMTEsIDIyOCwgOCwgNCwgMjExLCAyMzAsIDgsIDQsIDIxMSwgMjI5LCAKLSAgICA4LCA0LCAyMTEsIDIzMiwgOCwgNCwgMjExLCAyMzEsIDgsIDQsIDIxMSwgMjM5LCA4LCA0LCAyMTEsIDIzOCwgOCwgNCwgCi0gICAgMjExLCAyNDIsIDgsIDQsIDIxMSwgMjQwLCA4LCA0LCAyMTEsIDIyMywgOCwgNCwgMjExLCAyMjUsIDgsIDQsIDIxMSwgMjI0LCAKLSAgICA4LCA0LCAyMTEsIDIzNCwgOCwgNCwgMjExLCAyMzcsIDgsIDQsIDIxMSwgMjM1LCA4LCA0LCAyMTEsIDIxOCwgOCwgNCwgCi0gICAgMjExLCAyMjIsIDgsIDQsIDIxMSwgMjIxLCA4LCA0LCAyMTEsIDIxOSwgOCwgNCwgMjExLCAyMjAsIDgsIDQsIDIxMSwgMjEzLCAKLSAgICA4LCA0LCAyMTEsIDIxMiwgOCwgNCwgMjExLCAyMTcsIDgsIDQsIDIxMSwgMjE2LCA4LCA0LCAyMTEsIDIxNCwgOCwgNCwgCi0gICAgMjExLCAyMTUsIDgsIDQsIDIyNywgMjI0LCA4LCA0LCAyMjcsIDIyMywgOCwgNCwgMjI3LCAyMjksIDgsIDQsIDIyNywgMjI1LCAKLSAgICA4LCA0LCAyMjcsIDIyNiwgOCwgNCwgMjI3LCAyMjgsIDgsIDQsIDIyNywgMjI3LCA4LCA0LCAyMjcsIDIzNCwgOCwgNCwgCi0gICAgMjI3LCAyMzMsIDgsIDQsIDIyNywgMjM3LCA4LCA0LCAyMjcsIDIzNiwgOCwgNCwgMjI3LCAyMTcsIDgsIDQsIDIyNywgMjE4LCAKLSAgICA4LCA0LCAyMjcsIDIyMSwgOCwgNCwgMjI3LCAyMjIsIDgsIDQsIDIyNywgMjMwLCA4LCA0LCAyMjcsIDIzMiwgOCwgNCwgCi0gICAgMjI3LCAyMTIsIDgsIDQsIDIyNywgMjIwLCA4LCA0LCAyMjcsIDIxNiwgOCwgNCwgMjI3LCAyMTMsIDgsIDQsIDIyNywgMjE0LCAKLSAgICA4LCA0LCAyMjcsIDIwNywgOCwgNCwgMjI3LCAyMDYsIDgsIDQsIDIyNywgMjExLCA4LCA0LCAyMjcsIDIxMCwgOCwgNCwgCi0gICAgMjI3LCAyMDgsIDgsIDQsIDIyNywgMjA5LCA4LCA0LCAyMjAsIDU1LCA4LCA0LCAxODksIDgsIDQsIDIyMCwgMTE3LCA4LCA0LCAKLSAgICAyMjAsIDU4LCA4LCA0LCAyMjAsIDEwOSwgOCwgNCwgMjIwLCAxMTIsIDgsIDQsIDIyMCwgMTEwLCA4LCA0LCAyMjIsIDE0MiwgCi0gICAgOCwgNCwgMjIyLCAxMzIsIDgsIDQsIDIyMiwgMjAyLCA4LCA0LCAyMjIsIDE1MCwgOCwgNCwgMjE4LCAyMjgsIDgsIDQsIAotICAgIDIxOCwgMjMwLCA4LCA0LCAyMTgsIDIyOSwgOCwgNCwgMjE5LCAyMjEsIDgsIDQsIDIxOSwgMjEwLCA4LCA0LCAyMTksIDI0MiwgCi0gICAgOCwgNCwgMjE5LCAyMjQsIDgsIDQsIDIyMSwgMzUsIDgsIDQsIDIyMiwgMTAwLCA4LCA0LCAyMjEsIDU5LCA4LCA0LCAyMTgsIAotICAgIDIwNiwgOCwgNCwgMjE4LCAyMDQsIDgsIDQsIDIxOSwgMjcsIDgsIDQsIDIxOCwgMjI3LCA4LCA0LCAyMTgsIDIwOSwgOCwgNCwgCi0gICAgMjE4LCAyMTcsIDgsIDQsIDIxOCwgMTEzLCA4LCA0LCAyMTgsIDExMiwgOCwgNCwgMjE4LCAxNzcsIDgsIDQsIDIxOCwgMTE5LCAKLSAgICA4LCA0LCAyMTgsIDExNCwgOCwgNCwgMjE4LCAxMTgsIDgsIDQsIDIxOSwgMTIzLCA4LCA0LCAyMTksIDEyMiwgOCwgNCwgCi0gICAgMjE5LCAxMjgsIDgsIDQsIDIxOSwgMTI0LCA4LCA0LCAyMTksIDEyNSwgOCwgNCwgMjE5LCAxMjcsIDgsIDQsIDIxOSwgMTI2LCAKLSAgICA4LCA0LCAyMTksIDEzNSwgOCwgNCwgMjE5LCAxMzQsIDgsIDQsIDIxOSwgMTU3LCA4LCA0LCAyMTksIDEzNiwgOCwgNCwgCi0gICAgMjE5LCAxMTksIDgsIDQsIDIxOSwgMTE4LCA4LCA0LCAyMTksIDEyMSwgOCwgNCwgMjE5LCAxMjAsIDgsIDQsIDIxOSwgMTMwLCAKLSAgICA4LCA0LCAyMTksIDEzMywgOCwgNCwgMjE5LCAxMzEsIDgsIDQsIDIxOSwgMTE1LCA4LCA0LCAyMTksIDExNCwgOCwgNCwgCi0gICAgMjE5LCAxMTcsIDgsIDQsIDIxOSwgMTE2LCA4LCA0LCAyMTksIDEwOSwgOCwgNCwgMjE5LCAxMDgsIDgsIDQsIDIxOSwgMTEzLCAKLSAgICA4LCA0LCAyMTksIDExMiwgOCwgNCwgMjE5LCAxMTAsIDgsIDQsIDIxOSwgMTExLCA4LCA0LCAyMTIsIDcwLCA4LCA0LCAyMTIsIAotICAgIDY5LCA4LCA0LCAyMTIsIDc1LCA4LCA0LCAyMTIsIDcyLCA4LCA0LCAyMTIsIDUyLCA4LCA0LCAyMTIsIDU0LCA4LCA0LCAKLSAgICAyMTIsIDUzLCA4LCA0LCAyMTIsIDU3LCA4LCA0LCAyMTIsIDU2LCA4LCA0LCAyMTIsIDYwLCA4LCA0LCAyMTIsIDU4LCA4LCAKLSAgICA0LCAyMTIsIDY0LCA4LCA0LCAyMTIsIDYzLCA4LCA0LCAyMTIsIDY3LCA4LCA0LCAyMTIsIDY1LCA4LCA0LCAyMTIsIDQ4LCAKLSAgICA4LCA0LCAyMTIsIDQ3LCA4LCA0LCAyMTIsIDU1LCA4LCA0LCAyMTIsIDUxLCA4LCA0LCAyMTIsIDQ5LCA4LCA0LCAyMTIsIAotICAgIDUwLCA4LCA0LCAyMTIsIDQwLCA4LCA0LCAyMTIsIDM5LCA4LCA0LCAyMTIsIDQ0LCA4LCA0LCAyMTIsIDQzLCA4LCA0LCAKLSAgICAyMTIsIDQxLCA4LCA0LCAyMTIsIDQyLCA4LCA0LCAyNTAsIDcyLCA4LCA0LCAyNTAsIDY5LCA4LCA0LCAyNTAsIDkyLCA4LCAKLSAgICA0LCAyNTAsIDgwLCA4LCA0LCAyNTAsIDIsIDgsIDQsIDI1MCwgMSwgOCwgNCwgMjUwLCA0LCA4LCA0LCAyNTAsIDMsIDgsIDQsIAotICAgIDI1MCwgMTYsIDgsIDQsIDI1MCwgMTUsIDgsIDQsIDI1MCwgMjMsIDgsIDQsIDI1MCwgMTgsIDgsIDQsIDI1MCwgNTIsIDgsIAotICAgIDQsIDI1MCwgNTAsIDgsIDQsIDI1MCwgNjcsIDgsIDQsIDI1MCwgNTgsIDgsIDQsIDI0OSwgMjUyLCA4LCA0LCAyNTAsIDYsIAotICAgIDgsIDQsIDI1MCwgMCwgOCwgNCwgMjQ5LCAyNTMsIDgsIDQsIDI0OSwgMjU1LCA4LCA0LCAyNDksIDI0NiwgOCwgNCwgMjQ5LCAKLSAgICAyNDUsIDgsIDQsIDI0OSwgMjUwLCA4LCA0LCAyNDksIDI0OSwgOCwgNCwgMjQ5LCAyNDcsIDgsIDQsIDI0OSwgMjQ4LCA4LCAKLSAgICA0LCAyMjMsIDgwLCA4LCA0LCAyMjMsIDgxLCA4LCA0LCAyMjMsIDY3LCA4LCA0LCAyMjMsIDY4LCA4LCA0LCAyMjMsIDcxLCAKLSAgICA4LCA0LCAyMjMsIDcwLCA4LCA0LCAyMjMsIDczLCA4LCA0LCAyMjMsIDcyLCA4LCA0LCAyMjMsIDc1LCA4LCA0LCAyMjMsIAotICAgIDc0LCA4LCA0LCAyMjMsIDc5LCA4LCA0LCAyMjMsIDc2LCA4LCA0LCAyMjMsIDYzLCA4LCA0LCAyMjMsIDYyLCA4LCA0LCAKLSAgICAyMjMsIDY5LCA4LCA0LCAyMjMsIDY2LCA4LCA0LCAyMjMsIDY0LCA4LCA0LCAyMjMsIDY1LCA4LCA0LCAyMjMsIDU3LCA4LCAKLSAgICA0LCAyMjMsIDU2LCA4LCA0LCAyMjMsIDYxLCA4LCA0LCAyMjMsIDYwLCA4LCA0LCAyMjMsIDU4LCA4LCA0LCAyMjMsIDU5LCAKLSAgICA4LCA0LCAyMjgsIDE0NSwgOCwgNCwgMjI4LCAxNDQsIDgsIDQsIDIyOCwgMTQ3LCA4LCA0LCAyMjgsIDE0NiwgOCwgNCwgCi0gICAgMjI4LCAxMzcsIDgsIDQsIDIyOCwgMTM5LCA4LCA0LCAyMjgsIDEzOCwgOCwgNCwgMjI4LCAxNDEsIDgsIDQsIDIyOCwgMTQwLCAKLSAgICA4LCA0LCAyMjgsIDE0MywgOCwgNCwgMjI4LCAxNDIsIDgsIDQsIDIyOCwgMTMyLCA4LCA0LCAyMjgsIDEzMSwgOCwgNCwgCi0gICAgMjI4LCAxMzYsIDgsIDQsIDIyOCwgMTM1LCA4LCA0LCAyMjgsIDEzMywgOCwgNCwgMjI4LCAxMzQsIDgsIDQsIDIyOCwgMTI2LCAKLSAgICA4LCA0LCAyMjgsIDEyNSwgOCwgNCwgMjI4LCAxMzAsIDgsIDQsIDIyOCwgMTI5LCA4LCA0LCAyMjgsIDEyNywgOCwgNCwgCi0gICAgMjI4LCAxMjgsIDgsIDQsIDIyMCwgMjUxLCA4LCA0LCAyMjAsIDI0NywgOCwgNCwgMjIxLCAyNCwgOCwgNCwgMjIxLCA2LCA4LCAKLSAgICA0LCAyMjAsIDE0MCwgOCwgNCwgMjIwLCAxNDIsIDgsIDQsIDIyMCwgMTQxLCA4LCA0LCAyMjAsIDE2MCwgOCwgNCwgMjIwLCAKLSAgICAxNTcsIDgsIDQsIDIyMCwgMTg3LCA4LCA0LCAyMjAsIDE3OCwgOCwgNCwgMjIwLCAyMjIsIDgsIDQsIDIyMCwgMjE1LCA4LCAKLSAgICA0LCAyMjAsIDI0MywgOCwgNCwgMjIwLCAyMzAsIDgsIDQsIDIyMCwgMTM2LCA4LCA0LCAyMjAsIDEzNSwgOCwgNCwgMjIwLCAKLSAgICAxNTAsIDgsIDQsIDIyMCwgMTM5LCA4LCA0LCAyMjAsIDEzNywgOCwgNCwgMjIwLCAxMzgsIDgsIDQsIDIyMCwgMTIwLCA4LCAKLSAgICA0LCAyMjAsIDExOSwgOCwgNCwgMjIwLCAxMjYsIDgsIDQsIDIyMCwgMTIzLCA4LCA0LCAyMjAsIDEyMSwgOCwgNCwgMjIwLCAKLSAgICAxMjIsIDgsIDQsIDIyNCwgMzMsIDgsIDQsIDIyNCwgMjgsIDgsIDQsIDIwMywgOCwgNCwgMjI0LCAzOSwgOCwgNCwgMjIzLCAKLSAgICAzMSwgOCwgNCwgMjIzLCAzMywgOCwgNCwgMjIzLCAzMiwgOCwgNCwgMjIzLCA5MCwgOCwgNCwgMjIzLCA4MywgOCwgNCwgCi0gICAgMjIzLCAxMTIsIDgsIDQsIDIyMywgOTQsIDgsIDQsIDIyMywgMTk2LCA4LCA0LCAyMjQsIDIxLCA4LCA0LCAyMjMsIDIzMSwgCi0gICAgOCwgNCwgMjIzLCAyNCwgOCwgNCwgMjIzLCAyMiwgOCwgNCwgMjIzLCA1MSwgOCwgNCwgMjIzLCAzMCwgOCwgNCwgMjIzLCAKLSAgICAyNiwgOCwgNCwgMjIzLCAyNywgOCwgNCwgMjIzLCA3LCA4LCA0LCAyMjMsIDYsIDgsIDQsIDIyMywgMTIsIDgsIDQsIDIyMywgCi0gICAgMTAsIDgsIDQsIDIyMywgOCwgOCwgNCwgMjIzLCA5LCA4LCA0LCAyMzUsIDEwMSwgOCwgNCwgMjM1LCAxMDAsIDgsIDQsIAotICAgIDIzNSwgMTEwLCA4LCA0LCAyMzUsIDEwMiwgOCwgNCwgMjM1LCAxMDYsIDgsIDQsIDIzNSwgMTA1LCA4LCA0LCAyMzUsIDEwOCwgCi0gICAgOCwgNCwgMjM1LCAxMDcsIDgsIDQsIDIzNSwgNDQsIDgsIDQsIDIzNSwgNDMsIDgsIDQsIDIzNSwgNDYsIDgsIDQsIDIzNSwgCi0gICAgNDUsIDgsIDQsIDIzNSwgNTksIDgsIDQsIDIzNSwgNTcsIDgsIDQsIDIzNSwgNzEsIDgsIDQsIDIzNSwgNjEsIDgsIDQsIAotICAgIDIzNSwgMzgsIDgsIDQsIDIzNSwgMzYsIDgsIDQsIDIzNSwgNTQsIDgsIDQsIDIzNSwgNDIsIDgsIDQsIDIzNSwgMzksIDgsIAotICAgIDQsIDIzNSwgNDAsIDgsIDQsIDIzNSwgMzAsIDgsIDQsIDIzNSwgMjksIDgsIDQsIDIzNSwgMzQsIDgsIDQsIDIzNSwgMzMsIAotICAgIDgsIDQsIDIzNSwgMzEsIDgsIDQsIDIzNSwgMzIsIDgsIDQsIDIyNCwgMTkxLCA4LCA0LCAyMjQsIDE4OSwgOCwgNCwgMjI0LCAKLSAgICAxOTgsIDgsIDQsIDIyNCwgMTkyLCA4LCA0LCAyMjQsIDE5NSwgOCwgNCwgMjI0LCAxOTQsIDgsIDQsIDIyNCwgMTk3LCA4LCAKLSAgICA0LCAyMjQsIDE5NiwgOCwgNCwgMjI0LCAxNDQsIDgsIDQsIDIyNCwgMTQxLCA4LCA0LCAyMjQsIDE0NiwgOCwgNCwgMjI0LCAKLSAgICAxNDUsIDgsIDQsIDIyNCwgMTc4LCA4LCA0LCAyMjQsIDE3NywgOCwgNCwgMjI0LCAxODcsIDgsIDQsIDIyNCwgMTgxLCA4LCAKLSAgICA0LCAyMjQsIDEzNiwgOCwgNCwgMjI0LCAxMzIsIDgsIDQsIDIyNCwgMTc1LCA4LCA0LCAyMjQsIDE0MCwgOCwgNCwgMjI0LCAKLSAgICAxMzgsIDgsIDQsIDIyNCwgMTM5LCA4LCA0LCAyMjQsIDExNiwgOCwgNCwgMjI0LCAxMTQsIDgsIDQsIDIyNCwgMTI2LCA4LCAKLSAgICA0LCAyMjQsIDExOSwgOCwgNCwgMjI0LCAxMTcsIDgsIDQsIDIyNCwgMTE4LCA4LCA0LCAyMzUsIDkwLCA4LCA0LCAyMzUsIAotICAgIDg5LCA4LCA0LCAyMzUsIDk2LCA4LCA0LCAyMzUsIDkxLCA4LCA0LCAyMzUsIDkzLCA4LCA0LCAyMzUsIDkyLCA4LCA0LCAKLSAgICAyMzUsIDk1LCA4LCA0LCAyMzUsIDk0LCA4LCA0LCAyMzUsIDgxLCA4LCA0LCAyMzUsIDgzLCA4LCA0LCAyMzUsIDgyLCA4LCAKLSAgICA0LCAyMzUsIDg2LCA4LCA0LCAyMzUsIDg1LCA4LCA0LCAyMzUsIDg4LCA4LCA0LCAyMzUsIDg3LCA4LCA0LCAyMzUsIDc3LCAKLSAgICA4LCA0LCAyMzUsIDc2LCA4LCA0LCAyMzUsIDg0LCA4LCA0LCAyMzUsIDgwLCA4LCA0LCAyMzUsIDc4LCA4LCA0LCAyMzUsIAotICAgIDc5LCA4LCA0LCAyMzUsIDczLCA4LCA0LCAyMzUsIDcyLCA4LCA0LCAyMzUsIDc1LCA4LCA0LCAyMzUsIDc0LCA4LCA0LCAKLSAgICAyMjgsIDI0OSwgOCwgNCwgMjI4LCAyNDgsIDgsIDQsIDIyOSwgMCwgOCwgNCwgMjI4LCAyNTAsIDgsIDQsIDIyOCwgMjUyLCAKLSAgICA4LCA0LCAyMjgsIDI1MSwgOCwgNCwgMjI4LCAyNTUsIDgsIDQsIDIyOCwgMjUzLCA4LCA0LCAyMjgsIDIzOCwgOCwgNCwgCi0gICAgMjI4LCAyMzksIDgsIDQsIDIyOCwgMjQ0LCA4LCA0LCAyMjgsIDI0MywgOCwgNCwgMjI4LCAyNDcsIDgsIDQsIDIyOCwgMjQ1LCAKLSAgICA4LCA0LCAyMjgsIDIzMywgOCwgNCwgMjI4LCAyNDIsIDgsIDQsIDIyOCwgMjM3LCA4LCA0LCAyMjgsIDIzNCwgOCwgNCwgCi0gICAgMjI4LCAyMzUsIDgsIDQsIDIyOCwgMjI4LCA4LCA0LCAyMjgsIDIyNywgOCwgNCwgMjI4LCAyMzIsIDgsIDQsIDIyOCwgMjMxLCAKLSAgICA4LCA0LCAyMjgsIDIyOSwgOCwgNCwgMjI4LCAyMzAsIDgsIDQsIDIyOCwgMCwgOCwgNCwgMjI3LCAyNTUsIDgsIDQsIDIyOCwgCi0gICAgMTAsIDgsIDQsIDIyOCwgNCwgOCwgNCwgMjI4LCA3LCA4LCA0LCAyMjgsIDYsIDgsIDQsIDIyOCwgOSwgOCwgNCwgMjI4LCA4LCAKLSAgICA4LCA0LCAyMjcsIDI0MywgOCwgNCwgMjI3LCAyNDUsIDgsIDQsIDIyNywgMjQ0LCA4LCA0LCAyMjcsIDI0OSwgOCwgNCwgCi0gICAgMjI3LCAyNDgsIDgsIDQsIDIyNywgMjUzLCA4LCA0LCAyMjcsIDI1MCwgOCwgNCwgMjI3LCAyNDEsIDgsIDQsIDIyNywgMjQwLCAKLSAgICA4LCA0LCAyMjcsIDI0NywgOCwgNCwgMjI3LCAyNDIsIDgsIDQsIDIxMywgMTM4LCA4LCA0LCAyMTMsIDEzNywgOCwgNCwgCi0gICAgMjEzLCAxNDUsIDgsIDQsIDIxMywgMTQwLCA4LCA0LCAyMTMsIDE0MiwgOCwgNCwgMjEzLCAxNDEsIDgsIDQsIDIxMywgMTQ0LCAKLSAgICA4LCA0LCAyMTMsIDE0MywgOCwgNCwgMjEzLCAxMjcsIDgsIDQsIDIxMywgMTI4LCA4LCA0LCAyMTMsIDEzMiwgOCwgNCwgCi0gICAgMjEzLCAxMzEsIDgsIDQsIDIxMywgMTM2LCA4LCA0LCAyMTMsIDEzNCwgOCwgNCwgMjEzLCAxMDksIDgsIDQsIDIxMywgMTA3LCAKLSAgICA4LCA0LCAyMTMsIDExOSwgOCwgNCwgMjEzLCAxMTIsIDgsIDQsIDIxMywgMTEwLCA4LCA0LCAyMTMsIDExMSwgOCwgNCwgCi0gICAgMjEyLCAyNDEsIDgsIDQsIDIxMiwgMjM5LCA4LCA0LCAyMTIsIDI1NSwgOCwgNCwgMjEyLCAyNDIsIDgsIDQsIDIxMiwgMjQ5LCAKLSAgICA4LCA0LCAyMTIsIDI0OCwgOCwgNCwgMjEyLCAyNTIsIDgsIDQsIDIxMiwgMjUwLCA4LCA0LCAyMTIsIDE4MiwgOCwgNCwgCi0gICAgMjEyLCAxODEsIDgsIDQsIDIxMiwgMTg1LCA4LCA0LCAyMTIsIDE4MywgOCwgNCwgMjEyLCAyMTUsIDgsIDQsIDIxMiwgMjEyLCAKLSAgICA4LCA0LCAyMTIsIDIzNSwgOCwgNCwgMjEyLCAyMTksIDgsIDQsIDIxMiwgMTczLCA4LCA0LCAyMTIsIDE3MCwgOCwgNCwgCi0gICAgMjEyLCAyMDMsIDgsIDQsIDIxMiwgMTgwLCA4LCA0LCAyMTIsIDE3NiwgOCwgNCwgMjEyLCAxNzcsIDgsIDQsIDIxMiwgMTU1LCAKLSAgICA4LCA0LCAyMTIsIDE1NCwgOCwgNCwgMjEyLCAxNjEsIDgsIDQsIDIxMiwgMTU4LCA4LCA0LCAyMTIsIDE1NiwgOCwgNCwgCi0gICAgMjEyLCAxNTcsIDgsIDM0LCAyMjQsIDE3OCwgOCwgMzQsIDIzMywgMTMsIDgsIDM0LCAyMzQsIDcwLCA4LCAzNCwgMjI4LCA0LCAKLSAgICA4LCAzNCwgMjQ5LCAxMiwgOCwgMzQsIDIxOSwgMTI4LCA4LCAzNCwgMjQyLCAyNDQsIDgsIDM0LCAyNDMsIDIwLCA4LCAzNCwgCi0gICAgMjMxLCA0MiwgOCwgMzQsIDI0MCwgMTcyLCA4LCAzNCwgMjMyLCAxMTYsIDgsIDM0LCAyNTIsIDMsIDgsIDM0LCAyMzAsIAotICAgIDE5NiwgOCwgMzQsIDIxMiwgMjM1LCA4LCAzNCwgMjI1LCA4LCA4LCAzNCwgMjQwLCAxNjYsIDgsIDM0LCAyMTcsIDI1MywgOCwgCi0gICAgMzQsIDI0MywgMTEwLCA4LCAzNCwgMjEyLCAwLCA4LCAzNCwgMjQ5LCA2LCA4LCAzNCwgMjQ4LCA0NiwgOCwgMzQsIDI1MSwgCi0gICAgMjcsIDgsIDM0LCAyNDIsIDI0MCwgOCwgMzQsIDIyNywgMjUwLCA4LCAzNCwgMjE2LCA4MiwgOCwgMzQsIDIyNywgNDEsIDgsIAotICAgIDM0LCAyMzUsIDc3LCA4LCAzNCwgMjEyLCAxMiwgOCwgMzQsIDIyNCwgMjQ0LCA4LCAzNCwgMjQxLCA5NCwgOCwgMzQsIDIxMiwgCi0gICAgMjQxLCA4LCAzNCwgMjE0LCA5NSwgOCwgMzQsIDIyMCwgMTI2LCA4LCAzNCwgMjE0LCAyMjEsIDgsIDM0LCAyMTIsIDEwOSwgCi0gICAgOCwgMzQsIDIzNSwgNzEsIDgsIDM0LCAyMjcsIDIxNiwgOCwgMzQsIDIzNSwgNzUsIDgsIDM0LCAyNDIsIDEzMCwgOCwgMzQsIAotICAgIDIzNSwgOTUsIDgsIDM0LCAyMTMsIDIxNCwgOCwgMzQsIDI0NiwgMzMsIDgsIDM0LCAyMjAsIDEzOCwgOCwgMzQsIDIzMywgOCwgCi0gICAgOCwgMzQsIDI0OSwgMTYsIDgsIDM0LCAyNDksIDQ2LCA4LCAzNCwgMjQ5LCAyMzAsIDgsIDM0LCAyNDAsIDE2OSwgOCwgMzQsIAotICAgIDIyMCwgMjUxLCA4LCAzNCwgMjExLCAyNTUsIDgsIDM0LCAyMjAsIDE3OCwgOCwgMzQsIDI1MCwgNjcsIDgsIDM0LCAyMTEsIAotICAgIDIzMCwgOCwgMzQsIDIyOSwgMjUyLCA4LCAzNCwgMjM0LCAxODgsIDIzMiwgMjI1LCAxLCAyNTIsIDEwNywgMjMyLCAyMjUsIAotICAgIDEsIDE5MywgMjMyLCAyMjUsIDEsIDIyNiwgMjMsIDIzMiwgMjI1LCAxLCAyNDgsIDE2NCwgMjMyLCAyMjUsIDEsIDIxOCwgCi0gICAgNTIsIDIzMiwgMjI1LCAxLCAyMTcsIDE2MSwgMjMyLCAyMjUsIDEsIDI0MywgMTEwLCAyMzIsIDIyNSwgMSwgMTgxLCAyMzIsIAotICAgIDIyNSwgMSwgMjM0LCAxMzgsIDIzMiwgMjI1LCAxLCAyMzUsIDEzOSwgMjMyLCAyMjUsIDEsIDI1MCwgMjE5LCAyMzIsIDIyNSwgCi0gICAgMSwgMjUwLCA5MiwgMjMyLCAyMjUsIDEsIDI0NSwgMjQ5LCAyMzIsIDIyNSwgMSwgMjE2LCAxNDEsIDIzMiwgMjI1LCAxLCAKLSAgICAyMTYsIDEzMywgMjMyLCAyMjUsIDEsIDE4OCwgMjMyLCAyMjUsIDEsIDIwNSwgMjMyLCAyMjUsIDEsIDIzMywgMTU3LCAyMzIsIAotICAgIDIyNSwgMSwgMjIyLCAyMDIsIDIzMiwgMjI1LCAxLCAyMTIsIDc1LCAyMzIsIDIyNSwgMSwgMjEyLCAxMDksIDIzMiwgMjI1LCAKLSAgICAxLCAyMjksIDE1OSwgMjMyLCAyMjUsIDEsIDE1OSwgMjMyLCAyMjUsIDEsIDIxMywgMTUzLCAyMzIsIDIyNSwgMSwgMjQxLCAKLSAgICAxNzQsIDIzMiwgMjI1LCAxLCAyNDQsIDE2NCwgMjMyLCAyMjUsIDEsIDIxNCwgNDksIDIzMiwgMjI1LCAxLCAyMjEsIDI0LCAKLSAgICAyMzIsIDIyNSwgMSwgMTg2LCAyMzIsIDIyNSwgMSwgMjQyLCAyMjUsIDIzMiwgMjI1LCAxLCA2MSwgMjMyLCAyMjUsIDEsIAotICAgIDI1NCwgMTQ4LCAyMzIsIDIyNSwgMSwgNzQsIDIzMiwgMjI1LCAxLCAyNDUsIDIyLCAyMzIsIDIyNSwgMSwgNzIsIDIzMiwgCi0gICAgMjI1LCAxLCA3NSwgMjMyLCAyMjUsIDEsIDY5LCAyMzIsIDIyNSwgMSwgMjE1LCAxODMsIDIzMiwgMjI1LCAxLCAyMTUsIAotICAgIDE3OCwgMjMyLCAyMjUsIDEsIDIyNywgOTksIDIzMiwgMjI1LCAxLCAxNjAsIDIzMCwgMTA0LCAyMTcsIDcxLCAyMzIsIDIyNSwgCi0gICAgMSwgMTYwLCAyMzAsIDQ2LCAyMjUsIDE1MCwgMjMyLCAyMjUsIDEsIDE2MCwgMjMwLCAxMDQsIDI0OSwgMTUsIDIzMiwgMjI1LCAKLSAgICAxLCAxNjAsIDIzMCwgMTA0LCAyNTEsIDEyOCwgMjMyLCAyMjUsIDEsIDE2MCwgMjMwLCAxMDQsIDIwNSwgMjMyLCAyMjUsIDEsIAotICAgIDE2MCwgMjMwLCAxMDQsIDIzNSwgMTE2LCAyMzIsIDIyNSwgMjI1LCAyNywgMjQ5LCAxNTcsIDIzMiwgMjI1LCAyMjUsIDI3LCAKLSAgICAyNDMsIDIwMCwgMjE5LCA2OSwgMzksIDQsIDI0NSwgMTY1LCAzOSwgNCwgMjQ1LCAxNjIsIDM5LCA0LCAyNDEsIDIwNCwgMzksIAotICAgIDQsIDIxNCwgMSwgMzksIDQsIDIxNCwgMCwgMzksIDQsIDIyNiwgODYsIDM5LCA0LCAyNTEsIDE5MSwgMzksIDQsIDI1MSwgCi0gICAgMjQyLCAzOSwgNCwgMjMxLCAxNzksIDM5LCA0LCAyMzQsIDAsIDM5LCA0LCAyMzEsIDczLCAzOSwgNCwgMjQzLCA1MSwgMzksIAotICAgIDQsIDI0NCwgMTE2LCAzOSwgNCwgMjE0LCAyMjcsIDM5LCA0LCAyMTcsIDIxOSwgMzksIDQsIDIxNywgMTQ3LCAzOSwgNCwgCi0gICAgMjQ3LCAyMjQsIDM5LCA0LCAyNDcsIDIyMSwgMzksIDQsIDIzMywgNzQsIDM5LCA0LCAyMjQsIDEsIDM5LCA0LCAyNDgsIDI4LCAKLSAgICAzOSwgNCwgMjI5LCAyMTksIDM5LCA0LCAyMjIsIDg5LCAzOSwgNCwgMjIwLCAyNDEsIDM5LCA0LCAyMTIsIDg1LCAzOSwgNCwgCi0gICAgMjEyLCA2NiwgMzksIDQsIDI1MCwgMTE2LCAzOSwgNCwgMjM1LCAxMjUsIDM5LCA0LCAyMjksIDcsIDM5LCA0LCAyMTMsIDM1LCAKLSAgICAzOSwgNCwgMjM0LCAxODcsIDM5LCA0LCAyMjksIDEzNiwgMzksIDQsIDI0MywgMzEsIDM5LCA0LCAyMzEsIDE0NSwgMzksIDQsIAotICAgIDIyOSwgMTg0LCAzOSwgNCwgMjI4LCAxNiwgMzksIDQsIDcyLCAzOSwgNCwgMjM1LCAyNTEsIDM5LCA0LCAyNDEsIDE2NSwgCi0gICAgMzksIDQsIDI0MSwgMTQ2LCAzOSwgNCwgMjEzLCAyMzUsIDM5LCA0LCAyMTMsIDIyNiwgMzksIDQsIDIyNSwgMjQwLCAzOSwgCi0gICAgNCwgMjUxLCAxODksIDM5LCA0LCAyNTEsIDE4NCwgMzksIDQsIDIzMSwgMTcyLCAzOSwgNCwgMjMzLCAyNTMsIDM5LCA0LCAKLSAgICAyMzEsIDcwLCAzOSwgNCwgMjQzLCA0NywgMzksIDQsIDI0NCwgOTAsIDM5LCA0LCAyMTQsIDE1NCwgMzksIDQsIDIxNywgNzEsIAotICAgIDM5LCA0LCAyMTcsIDEyOCwgMzksIDQsIDI0NywgMjE2LCAzOSwgNCwgMjQ3LCAyMjAsIDM5LCA0LCAyMzMsIDEzLCAzOSwgNCwgCi0gICAgMjIzLCAxODgsIDM5LCA0LCAyNDcsIDIxMSwgMzksIDQsIDIyOSwgMjEzLCAzOSwgNCwgMjIwLCAxMTcsIDM5LCA0LCAyMjAsIAotICAgIDIxMiwgMzksIDQsIDIxMiwgMzcsIDM5LCA0LCAyMTIsIDYyLCAzOSwgNCwgMjQ5LCAyNDQsIDM5LCA0LCAyMzUsIDExMCwgCi0gICAgMzksIDQsIDIyOSwgMCwgMzksIDQsIDIxMiwgMjU1LCAzOSwgNCwgMjM0LCAxMDEsIDM5LCA0LCAyMjksIDEyOCwgMzksIDQsIAotICAgIDI0MiwgMTkwLCAzOSwgNCwgMjMxLCA0MiwgMzksIDQsIDIyOSwgNjQsIDM5LCA0LCAyMjgsIDEwLCAzOSwgNCwgNjEsIDM5LCAKLSAgICA0LCAyNTQsIDMyLCAzOSwgNCwgMjI5LCAxNTUsIDM5LCA0LCAxNTksIDM5LCA0LCAyNDIsIDEsIDM5LCA0LCAyMTQsIDQ5LCAKLSAgICAzOSwgNCwgMjE0LCAzOSwgMzksIDQsIDE5MywgMzksIDQsIDI1MSwgMTk1LCAzOSwgNCwgMjUyLCAxMDcsIDM5LCA0LCAyMzEsIAotICAgIDE4NywgMzksIDQsIDIzNCwgNCwgMzksIDQsIDIzNCwgMywgMzksIDQsIDIzMSwgNzcsIDM5LCA0LCAyNDMsIDU1LCAzOSwgNCwgCi0gICAgMjQ0LCAxNjQsIDM5LCA0LCAyMTUsIDEsIDM5LCA0LCAyMTgsIDUyLCAzOSwgNCwgMjE3LCAxNjEsIDM5LCA0LCAyNDcsIAotICAgIDIzMiwgMzksIDQsIDI0NywgMjIzLCAzOSwgNCwgMjMzLCAxNTcsIDM5LCA0LCAyMDMsIDM5LCA0LCAyNDgsIDE2NCwgMzksIAotICAgIDQsIDIyOSwgMjI4LCAzOSwgNCwgMjIyLCAyMDIsIDM5LCA0LCAyMjEsIDI0LCAzOSwgNCwgMjEyLCAxMDksIDM5LCA0LCAKLSAgICAyMTIsIDc1LCAzOSwgNCwgMjUwLCAyMTksIDM5LCA0LCAyMzUsIDEzOSwgMzksIDQsIDIyOSwgMTYsIDM5LCA0LCAxODYsIAotICAgIDM5LCA0LCAxODEsIDM5LCA0LCAyMzQsIDIzOSwgMzksIDQsIDIyOSwgMTQxLCAzOSwgNCwgMjQzLCAxMTAsIDM5LCA0LCAKLSAgICAxODgsIDM5LCA0LCAyMDUsIDM5LCA0LCAyMjgsIDIzLCAzOSwgNCwgMjI3LCA0OSwgMzksIDQsIDIyNywgNDUsIDM5LCA0LCAKLSAgICAyNDEsIDM5LCAzOSwgNCwgMjEzLCAyMDIsIDM5LCA0LCAyMTMsIDE5OCwgMzksIDQsIDIyNSwgMTI5LCAzOSwgNCwgMjUxLCAKLSAgICAxODcsIDM5LCA0LCAyNTEsIDExOCwgMzksIDQsIDIzMSwgMTY3LCAzOSwgNCwgMjMzLCAyNTEsIDM5LCA0LCAyMzEsIDY2LCAKLSAgICAzOSwgNCwgMjQzLCA0MywgMzksIDQsIDI0NCwgMywgMzksIDQsIDIxNCwgMTA4LCAzOSwgNCwgMjE2LCAyMzAsIDM5LCA0LCAKLSAgICAyMTcsIDEwNiwgMzksIDQsIDI0NywgMjE0LCAzOSwgNCwgMjQ3LCAyMTgsIDM5LCA0LCAyMzIsIDE4MCwgMzksIDQsIDIyMywgCi0gICAgOTksIDM5LCA0LCAyNDcsIDc5LCAzOSwgNCwgMjI5LCAyMDAsIDM5LCA0LCAyMTksIDIyNiwgMzksIDQsIDIyMCwgMTgxLCAKLSAgICAzOSwgNCwgMjEyLCAxNCwgMzksIDQsIDIxMiwgNTksIDM5LCA0LCAyNDksIDExMywgMzksIDQsIDIzNSwgNjIsIDM5LCA0LCAKLSAgICAyMjgsIDI0NiwgMzksIDQsIDIxMiwgMjIwLCAzOSwgNCwgMjM0LCAxOSwgMzksIDQsIDIyOSwgMTI2LCAzOSwgNCwgMjQyLCAKLSAgICAxNDAsIDM5LCA0LCAyMzAsIDIwMiwgMzksIDQsIDIyOCwgMTc1LCAzOSwgNCwgMjI3LCAyNTEsIDM5LCA0LCA2OSwgMzksIDQsIAotICAgIDIxNSwgMTYwLCAzOSwgNCwgMjQwLCAyMTIsIDM5LCA0LCAyNDAsIDIwMiwgMzksIDQsIDIxMywgMTgzLCAzOSwgNCwgMjEzLCAKLSAgICAxNzcsIDM5LCA0LCAyMjUsIDM1LCAzOSwgNCwgMjUxLCAxODYsIDM5LCA0LCAyNTEsIDU0LCAzOSwgNCwgMjMxLCAxNjYsIAotICAgIDM5LCA0LCAyMzMsIDI0OSwgMzksIDQsIDIzMSwgNjUsIDM5LCA0LCAyNDMsIDQyLCAzOSwgNCwgMjQzLCAyMDUsIDM5LCA0LCAKLSAgICAyMTQsIDk5LCAzOSwgNCwgMjE2LCA4MiwgMzksIDQsIDIxNywgOTAsIDM5LCA0LCAyNDcsIDIxMiwgMzksIDQsIDI0NywgCi0gICAgMjE3LCAzOSwgNCwgMjMyLCAxNTYsIDM5LCA0LCAyMjMsIDUxLCAzOSwgNCwgMjQ2LCAzMywgMzksIDQsIDIyOSwgMTk1LCAKLSAgICAzOSwgNCwgMjE5LCAyNywgMzksIDQsIDIyMCwgMTUwLCAzOSwgNCwgMjEyLCA4LCAzOSwgNCwgMjEyLCA1NSwgMzksIDQsIAotICAgIDI0OSwgNTMsIDM5LCA0LCAyMzUsIDU0LCAzOSwgNCwgMjI4LCAyNDIsIDM5LCA0LCAyMTIsIDIwMywgMzksIDQsIDIzMywgCi0gICAgMjM4LCAzOSwgNCwgMjI5LCAxMjUsIDM5LCA0LCAyNDIsIDkyLCAzOSwgNCwgMjMwLCAxNzIsIDM5LCA0LCAyMjgsIDkyLCAKLSAgICAzOSwgNCwgMjI3LCAyNDcsIDM5LCA0LCA3NSwgMzksIDQsIDIyNywgNjIsIDM5LCA0LCAyMjksIDg2LCAzOSwgNCwgMjQxLCAKLSAgICA1NCwgMzksIDQsIDI0MSwgNDIsIDM5LCA0LCAyMTMsIDIxNCwgMzksIDQsIDIxMywgMjAzLCAzOSwgNCwgMjI1LCAxNTAsIAotICAgIDM5LCA0LCAyNTEsIDE4OCwgMzksIDQsIDI1MSwgMTI4LCAzOSwgNCwgMjMxLCAxNjgsIDM5LCA0LCAyMzMsIDI1MiwgMzksIAotICAgIDQsIDIzMSwgNjgsIDM5LCA0LCAyNDMsIDQ1LCAzOSwgNCwgMjQzLCA0NCwgMzksIDQsIDI0NCwgMTIsIDM5LCA0LCAyMTQsIAotICAgIDExOSwgMzksIDQsIDEwOCwgMzksIDQsIDIxNywgMTA5LCAzOSwgNCwgMjQ3LCAyMTUsIDM5LCA0LCAyNDcsIDIxOSwgMzksIAotICAgIDQsIDIzMiwgMjA4LCAzOSwgNCwgMjIzLCAxMTIsIDM5LCA0LCAyNDcsIDk5LCAzOSwgNCwgMjI5LCAyMDQsIDM5LCA0LCAKLSAgICAyMTksIDI0MiwgMzksIDQsIDIyMCwgMTg3LCAzOSwgNCwgMjEyLCAxNiwgMzksIDQsIDIxMiwgNjAsIDM5LCA0LCAyNDksIAotICAgIDE3NSwgMzksIDQsIDIzNSwgNzEsIDM5LCA0LCAyMjgsIDI0NywgMzksIDQsIDIxMiwgMjM1LCAzOSwgNCwgMjM0LCAzNywgCi0gICAgMzksIDQsIDIyOSwgMTI3LCAzOSwgNCwgMjQyLCAxNTAsIDM5LCA0LCAyMzAsIDIzMSwgMzksIDQsIDIyOCwgMTg1LCAzOSwgCi0gICAgNCwgMjI3LCAyNTMsIDM5LCA0LCA3NCwgMzksIDQsIDI0NSwgMTA4LCAzOSwgNCwgMjI5LCAxNDYsIDM5LCA0LCAyNDEsIAotICAgIDIyMiwgMzksIDQsIDI0MSwgMTkzLCAzOSwgNCwgMjE0LCA2LCAzOSwgNCwgMjEzLCAyNTMsIDM5LCA0LCAyMjYsIDk2LCAzOSwgCi0gICAgNCwgMjUxLCAxOTIsIDM5LCA0LCAyNTEsIDI1MSwgMzksIDQsIDIzMSwgMTgwLCAzOSwgNCwgMjM0LCAxLCAzOSwgNCwgMjMzLCAKLSAgICAyNTUsIDM5LCA0LCAyMzEsIDc0LCAzOSwgNCwgMjQzLCA1MiwgMzksIDQsIDI0MywgNTAsIDM5LCA0LCAyNDQsIDEyMywgMzksIAotICAgIDQsIDIxNCwgMjMyLCAzOSwgNCwgMjE3LCAyMjksIDM5LCA0LCAyMTcsIDE0OCwgMzksIDQsIDI0NywgMjI1LCAzOSwgNCwgCi0gICAgMjQ3LCAyMjIsIDM5LCA0LCAyMzMsIDgyLCAzOSwgNCwgMjI0LCAyMSwgMzksIDQsIDI0OCwgNDEsIDM5LCA0LCAyMjksIAotICAgIDIyMCwgMzksIDQsIDIyMiwgMTAwLCAzOSwgNCwgMjIwLCAyNDMsIDM5LCA0LCAyMTIsIDg3LCAzOSwgNCwgMjEyLCA2NywgCi0gICAgMzksIDQsIDI1MCwgMTI0LCAzOSwgNCwgMjM1LCAxMjcsIDM5LCA0LCAyMjksIDksIDM5LCA0LCAyMTMsIDM4LCAzOSwgNCwgCi0gICAgMjM0LCAxODgsIDM5LCA0LCAyMjksIDEzNywgMzksIDQsIDIyOSwgMTMzLCAzOSwgNCwgMjQzLCAzOCwgMzksIDQsIDI0MywgCi0gICAgMjcsIDM5LCA0LCAyMzEsIDE1NiwgMzksIDQsIDIyOSwgMTg3LCAzOSwgNCwgMjI4LCAxNywgMzksIDQsIDIyOSwgMTYxLCAKLSAgICAzOSwgNCwgMjMzLCA0NiwgMzksIDI0OSwgMTU3LCAzOSwgMjQzLCAyMDAsIDIxOSwgNjksIDM5LCAyMjQsIDE1OCwgNzcsIAotICAgIDM5LCA0LCAyMjksIDIwMywgMjQ0LCAxNjQsIDM5LCA0LCAyMjksIDIwMywgMTgxLCAzOSwgNCwgMjI5LCAyMDMsIDIxOSwgCi0gICAgMjI2LCAzOSwgMTYsIDI0NCwgMTEzLCAzOSwgMTYsIDIzNCwgMTg2LCAzOSwgMTYsIDIxNywgMzQsIDM5LCAxNiwgMjI5LCAKLSAgICAzOSwgMzksIDE2LCAyNTIsIDY2LCAzOSwgMTYsIDI0NCwgMTYzLCAzOSwgMTYsIDIxOCwgNDksIDM5LCAxNiwgMjQ4LCAxMjEsIAotICAgIDM5LCAxNiwgMjQ3LCA3OCwgMzksIDE2LCAyMzMsIDIyNywgMzksIDE2LCAyMTYsIDIzNCwgMzksIDE2LCAyNDcsIDk4LCAzOSwgCi0gICAgMTYsIDIzNSwgNjMsIDM5LCAyMSwgMjEyLCA3OSwgMzksIDIxLCAxMTYsIDM5LCAyMSwgMTA5LCAzOSwgMjEsIDE2NiwgMzksIAotICAgIDIxLCAxNjMsIDM5LCAyMSwgMTgwLCAzOSwgMjEsIDE4OSwgMzksIDIxLCAxOTgsIDM5LCAyMSwgMTk1LCAzOSwgMjEsIDIwMCwgCi0gICAgMzksIDQsIDIyOSwgMjAzLCAxODgsIDM5LCA0LCAyMjksIDIwMywgMjQ3LCA5OSwgMzMsIDYsIDEsIDIxMiwgODMsIDMzLCAzLCAKLSAgICAxLCAyMTIsIDgzLCAzMywgNiwgMSwgMjQ1LCAyNDUsIDMzLCAzLCAxLCAyNDUsIDI0NSwgMzMsIDYsIDEsIDIyMywgMjAyLCAKLSAgICAyNDUsIDI0NywgMzMsIDMsIDEsIDIyMywgMjAyLCAyNDUsIDI0NywgMzMsIDYsIDEsIDIzNSwgMTgzLCAzMywgMywgMSwgCi0gICAgMjM1LCAxODMsIDMzLCA2LCAxLCAyNDcsIDExMywgMzMsIDMsIDEsIDI0NywgMTEzLCAzMywgNiwgMSwgMjMwLCAyMTAsIAotICAgIDIxNSwgMTc1LCAzMywgMywgMSwgMjMwLCAyMTAsIDIxNSwgMTc1LCAzMywgNiwgMSwgMjUxLCA2NCwgMjI3LCA2NywgMzMsIAotICAgIDMsIDEsIDI1MSwgNjQsIDIyNywgNjcsIDMzLCA2LCAxLCAyMjksIDE2OSwgMjEzLCAyMiwgMzMsIDMsIDEsIDIyOSwgMTY5LCAKLSAgICAyMTMsIDIyLCAzMywgNiwgMSwgMjEzLCAxOSwgMiwgMjUyLCAxMDIsIDIxMywgMjIsIDMzLCAzLCAxLCAyMTMsIDE5LCAyLCAKLSAgICAyNTIsIDEwMiwgMjEzLCAyMiwgMzMsIDYsIDEsIDIzNSwgMTgxLCAyMTMsIDQ5LCAzMywgMywgMSwgMjM1LCAxODEsIDIxMywgCi0gICAgNDksIDMzLCA2LCAxLCAyMjMsIDIwMiwgMjEyLCAyMDMsIDMzLCAzLCAxLCAyMjMsIDIwMiwgMjEyLCAyMDMsIDMzLCA2LCAxLCAKLSAgICAyMzUsIDE4MSwgNjEsIDMzLCAzLCAxLCAyMzUsIDE4MSwgNjEsIDMzLCA2LCAxLCAyNDksIDE5MywgMjMyLCAyMjEsIDIxMiwgCi0gICAgMTc0LCAzMywgMywgMSwgMjQ5LCAxOTMsIDIzMiwgMjIxLCAyMTIsIDE3NCwgMzMsIDYsIDEsIDI1MSwgMTM3LCAyMTIsIAotICAgIDE3NCwgMzMsIDMsIDEsIDI1MSwgMTM3LCAyMTIsIDE3NCwgMzMsIDYsIDEsIDIzNSwgMTgxLCAyNDksIDE5MywgMjMyLCAKLSAgICAyMjEsIDIxMiwgMTc0LCAzMywgMywgMSwgMjM1LCAxODEsIDI0OSwgMTkzLCAyMzIsIDIyMSwgMjEyLCAxNzQsIDMzLCA2LCAKLSAgICAxLCAyMTIsIDIzNywgMzMsIDMsIDEsIDIxMiwgMjM3LCAzMywgNiwgMSwgMjIzLCAyMDIsIDIxNiwgMTM2LCAzMywgMywgMSwgCi0gICAgMjIzLCAyMDIsIDIxNiwgMTM2LCAzMywgNiwgMSwgMjE5LCAyMzYsIDI0OCwgNDEsIDMzLCAzLCAxLCAyMTksIDIzNiwgMjQ4LCAKLSAgICA0MSwgMzMsIDYsIDEsIDIxOSwgMjM2LCAyNDUsIDEzMSwgMzMsIDMsIDEsIDIxOSwgMjM2LCAyNDUsIDEzMSwgMzMsIDYsIDEsIAotICAgIDIxOSwgMjM2LCAyNDUsIDExNywgMzMsIDMsIDEsIDIxOSwgMjM2LCAyNDUsIDExNywgMzMsIDYsIDEsIDIzMCwgMjE0LCA3NSwgCi0gICAgMzMsIDMsIDEsIDIzMCwgMjE0LCA3NSwgMzMsIDYsIDEsIDI1MSwgMTYzLCA3NSwgMzMsIDMsIDEsIDI1MSwgMTYzLCA3NSwgCi0gICAgMzMsIDYsIDEsIDUxLCAyMzAsIDIxNCwgNzUsIDMzLCAzLCAxLCA1MSwgMjMwLCAyMTQsIDc1LCAzMywgMSwgMjMwLCAxNTYsIAotICAgIDc1LCAzNywgMzMsIDIxNCwgODQsIDM3LCAzMywgMjE3LCAyMDEsIDIzMSwgNCwgNTIsIDM3LCAzMywgMjQwLCAyMDEsIDIzMSwgCi0gICAgNCwgNTIsIDM3LCAzMywgMjE3LCAxMDEsIDIzMSwgNCwgNTIsIDIyMCwgMjEsIDI1MywgMTMyLCAzNywgMzMsIDIzNCwgMTk4LCAKLSAgICAzNywgMzMsIDIyNiwgMTAxLCAzMywgMjM0LCAxOTgsIDMzLCAyMjYsIDEwMSwgMzMsIDYsIDEsIDI0NiwgMSwgMzMsIDMsIDEsIAotICAgIDI0NiwgMSwgMzMsIDYsIDEsIDI0NSwgMjM4LCAzMywgMywgMSwgMjQ1LCAyMzgsIDMzLCA2LCAxLCAyMTIsIDQ1LCAzMywgMywgCi0gICAgMSwgMjEyLCA0NSwgMzMsIDYsIDEsIDI1MCwgMTQwLCAzMywgMywgMSwgMjUwLCAxNDAsIDMzLCA2LCAxLCAyNDUsIDIzNywgCi0gICAgMzMsIDMsIDEsIDI0NSwgMjM3LCAzMywgNiwgMSwgMjE3LCAyMzAsIDIsIDIzMSwgMzcsIDEwMSwgMzMsIDMsIDEsIDIxNywgCi0gICAgMjMwLCAyLCAyMzEsIDM3LCAxMDEsIDMzLCA2LCAxLCAyMTYsIDQzLCAzMywgMywgMSwgMjE2LCA0MywgMzMsIDYsIDEsIAotICAgIDIxNiwgMTE5LCAzMywgMywgMSwgMjE2LCAxMTksIDMzLCA2LCAxLCAyMTYsIDEyMywgMzMsIDMsIDEsIDIxNiwgMTIzLCAzMywgCi0gICAgNiwgMSwgMjE3LCAyMzUsIDMzLCAzLCAxLCAyMTcsIDIzNSwgMzMsIDYsIDEsIDI0MCwgMTkwLCAzMywgMywgMSwgMjQwLCAKLSAgICAxOTAsIDMzLCA2LCAxLCAyMjAsIDEzMiwgMzMsIDMsIDEsIDIyMCwgMTMyLCAyMCwgMSwgNjEsIDIwLCAxLCAxODEsIDIwLCAKLSAgICAxLCA2OSwgMjAsIDEsIDIzMywgMjM4LCAyMCwgMSwgMjQ1LCAxNjUsIDIwLCAxLCAyMjQsIDEsIDIwLCAxLCAyMTgsIDM1LCAKLSAgICAyMCwgMSwgNzUsIDIwLCAxLCAyMjgsIDEwLCAyMCwgMSwgNzIsIDIwLCAxLCAyMzMsIDE1NywgMjAsIDEsIDE5MywgMjAsIDEsIAotICAgIDIyMywgMTM2LCAyMCwgMSwgMjIzLCAxODIsIDIwLCAxLCAyMzMsIDczLCAyMCwgMSwgMjMxLCAxNDQsIDIwLCAxLCAyMTgsIAotICAgIDQ5LCAyMCwgMSwgMjI5LCAyMjYsIDIwLCAxLCAyMjksIDE0LCAyMCwgMSwgMTgzLCAyMCwgMSwgMjE4LCAyMDUsIDIwLCAxLCAKLSAgICAyMzAsIDE3MiwgMjAsIDEsIDIyMCwgMjA3LCAyMCwgMSwgMjIwLCAxMTcsIDIwLCAxLCAyMjAsIDIxNywgMjAsIDEsIDIyMSwgCi0gICAgNDQsIDIwLCAxLCAyMzMsIDE3NywgMjAsIDEsIDIzNCwgMTYyLCAyMCwgMSwgMjI4LCA2NCwgMjAsIDEsIDIyOCwgOTIsIDIwLCAKLSAgICAxLCAyMjgsIDI0MSwgMjAsIDEsIDIxMiwgMjE3LCAyMCwgMSwgMjIwLCAxNTAsIDIwLCAxLCAyMTIsIDE3OCwgMjAsIDEsIAotICAgIDE4NiwgMjAsIDEsIDIyOCwgMTIwLCAyMCwgMSwgMjM0LCAxNDgsIDIwLCAxLCAyMjYsIDI3LCAyMCwgMSwgMjI5LCA3LCAyMCwgCi0gICAgMSwgMjI4LCAxMDEsIDIwLCAxLCAyMjUsIDMwLCAyMCwgMSwgMjEzLCAxODAsIDIwLCAxLCAyMjYsIDg2LCAyMCwgMSwgMjQ0LCAKLSAgICAxMTYsIDIwLCAxLCAyMjMsIDUxLCAyMCwgMSwgMjMyLCAxNTYsIDIwLCAxLCAyMzEsIDQyLCAyMCwgMSwgMjI5LCA2NCwgMjAsIAotICAgIDEsIDIyMywgMjA0LCAyMCwgMSwgMjI0LCA2MSwgMjAsIDEsIDIzNCwgMTcxLCAyMCwgMSwgMjI5LCA5MywgMjAsIDEsIDIyOSwgCi0gICAgMTQxLCAyMCwgMSwgMjI5LCAxNTksIDIwLCAxLCAyMjAsIDE4NywgMjAsIDEsIDIyNSwgMzMsIDIwLCAxLCAyNDMsIDIwNSwgCi0gICAgMjAsIDEsIDI0NCwgNiwgMjAsIDEsIDIxNCwgNDksIDIwLCAxLCAyMDUsIDIwLCAxLCAyMzMsIDEzLCAyMCwgMSwgMjI1LCAKLSAgICAyNDAsIDIwLCAxLCAyMzIsIDE3NCwgMjAsIDEsIDIzNCwgMzcsIDIwLCAxLCAyMzEsIDE3NywgMjAsIDEsIDIyMywgMjMzLCAKLSAgICAyMCwgMSwgMjMxLCAxMjIsIDIwLCAxLCAxODgsIDIwLCAxLCAyMTcsIDcxLCAyMCwgMSwgMjM0LCAxMDEsIDIwLCAxLCAyMzAsIAotICAgIDIzMSwgMjAsIDEsIDIzMSwgMTg1LCAyMCwgMSwgMjE3LCAxODMsIDIwLCAxLCAyMzQsIDQsIDIwLCAxLCAyMTcsIDIwMCwgCi0gICAgMjAsIDEsIDIyOCwgOTMsIDIwLCAxLCAyMjIsIDE2NiwgMjAsIDEsIDI0NCwgMTYwLCAyMCwgMSwgMjM0LCA2LCAyMCwgMSwgCi0gICAgMjM0LCAzMywgMjAsIDM3LCAxNTIsIDIzNCwgMTQsIDIwLCAzNywgMTUyLCAyMTYsIDc0LCAyMCwgMjI5LCAxMywgMjAsIAotICAgIDI0MywgMjAwLCAyMTksIDY5LCAyMCwgMjQ5LCAxNjQsIDIwLCAyNDksIDE1NywgMjAsIDIyMSwgNzAsIDIwLCAyMjQsIDE1OCwgCi0gICAgNzcsIDU5LCAxLCAyNTAsIDMzLCAxNjAsIDIxMiwgMjQ1LCAyMjUsIDE5MywgNTksIDEsIDI1MCwgMzMsIDE2MCwgMjEzLCAKLSAgICA1OSwgMjI1LCAxOTMsIDU5LCAxLCAyNTAsIDMzLCAxNjAsIDIxMiwgMjQ1LCAyMjEsIDcsIDU5LCAxLCAyNTAsIDMzLCAxNjAsIAotICAgIDIxMywgNTksIDIyMSwgNywgNTksIDEsIDI1MCwgMzMsIDE2MCwgMjEyLCAyNDUsIDIyNCwgMTc1LCA1OSwgMSwgMjUwLCAzMywgCi0gICAgMTYwLCAyMTMsIDU5LCAyMjQsIDE3NSwgNTksIDEsIDI1MCwgMzMsIDE2MCwgMjEyLCAyNDUsIDIyMywgNTEsIDU5LCAxLCAKLSAgICAyNTAsIDMzLCAxNjAsIDIxMywgNTksIDIyMywgNTEsIDU5LCAxLCAyNDQsIDI0NCwgMjQ2LCA3MiwgMTYwLCAxMzQsIDU5LCAKLSAgICAxLCAxMjQsIDI0NiwgNzIsIDE2MCwgMTM0LCA1OSwgMSwgMjMxLCAzOCwgMjQ2LCA3MiwgMTYwLCAxMzQsIDU5LCAxLCAxMTUsIAotICAgIDI0NiwgNzIsIDE2MCwgMTM0LCA1OSwgMSwgMjQ0LCAyNDMsIDI0NiwgNzIsIDE2MCwgMTM0LCA1OSwgMSwgMjQ0LCAyNDQsIAotICAgIDI0NiwgNzIsIDIzMywgNjMsIDE2MCwgMTM0LCA1OSwgMSwgMTI0LCAyNDYsIDcyLCAyMzMsIDYzLCAxNjAsIDEzNCwgNTksIAotICAgIDEsIDIzMSwgMzgsIDI0NiwgNzIsIDIzMywgNjMsIDE2MCwgMTM0LCA1OSwgMSwgMTE1LCAyNDYsIDcyLCAyMzMsIDYzLCAKLSAgICAxNjAsIDEzNCwgNTksIDEsIDI0NCwgMjQzLCAyNDYsIDcyLCAyMzMsIDYzLCAxNjAsIDEzNCwgNTksIDEsIDI0NCwgMjQ0LCAKLSAgICAyMzMsIDYzLCAxNjAsIDEzNCwgNTksIDEsIDEyNCwgMjMzLCA2MywgMTYwLCAxMzQsIDU5LCAxLCAyMzEsIDM4LCAyMzMsIAotICAgIDYzLCAxNjAsIDEzNCwgNTksIDEsIDExNSwgMjMzLCA2MywgMTYwLCAxMzQsIDU5LCAxLCAyNDQsIDI0MywgMjMzLCA2MywgCi0gICAgMTYwLCAxMzQsIDU5LCAxLCA2MiwgNzEsIDEzNCwgNTksIDEsIDYyLCAyMjAsIDIzLCA1OSwgMSwgNjIsIDE5OSwgMTM0LCAKLSAgICA1OSwgMSwgMjMyLCAxNjMsIDQ2LCAyNDksIDEwMCwgMjU0LCAxOCwgNTksIDEsIDIyNCwgNDgsIDExNCwgNjgsIDU5LCAxLCAKLSAgICAyMjQsIDQ4LCAxMTksIDY4LCA1OSwgMSwgMjI0LCA0OCwgMjQ0LCAyNTQsIDc3LCA1OSwgMSwgMjI0LCA0OCwgMjM1LCAxOTEsIAotICAgIDI0NCwgMjU0LCA3NywgNTksIDEsIDExNSwgMjM1LCAxOTEsIDI0NCwgMjU0LCA3NywgNTksIDEsIDIxOSwgNTEsIDI0LCAKLSAgICAxMjQsIDIxNiwgMjQxLCA1OSwgMSwgMjE5LCA1MSwgMjQsIDExNSwgMjE2LCAyNDEsIDcsIDYsIDEsIDI0NSwgMTU2LCAyNTQsIAotICAgIDc4LCA3LCAzLCAxLCAyNDUsIDE1NiwgMjU0LCA3OCwgNywgNiwgMSwgMjQ1LCAxNTYsIDI1NCwgMTAzLCA3LCAzLCAxLCAKLSAgICAyNDUsIDE1NiwgMjU0LCAxMDMsIDcsIDYsIDEsIDI0MSwgMTkxLCA3LCAzLCAxLCAyNDEsIDE5MSwgNywgNiwgMSwgMjE2LCAKLSAgICA2LCA3LCAzLCAxLCAyMTYsIDYsIDcsIDYsIDEsIDIxNiwgMTg3LCA3LCAzLCAxLCAyMTYsIDE4NywgNywgNiwgMSwgMjQ5LCAKLSAgICA1MSwgNywgMywgMSwgMjQ5LCA1MSwgNywgNiwgMSwgMjQ5LCA1MiwgMiwgMjQ5LCAxNTcsIDcsIDMsIDEsIDI0OSwgNTIsIDIsIAotICAgIDI0OSwgMTU3LCA3LCAxLCAzLCA2LCAyNDQsIDIzMCwgNywgMSwgMywgNiwgMTk3LCA3LCA2LCAxLCAyNTQsIDIzMiwgNywgMywgCi0gICAgMSwgMjU0LCAyMzIsIDcsIDYsIDEsIDI1MywgMjQwLCA3LCAzLCAxLCAyNTMsIDI0MCwgNywgNiwgMSwgMjUzLCAxMDgsIDcsIAotICAgIDMsIDEsIDI1MywgMTA4LCA3LCA2LCAxLCAyNTMsIDkyLCA3LCAzLCAxLCAyNTMsIDkyLCA3LCA2LCAxLCAyNTMsIDkzLCAyLCAKLSAgICAxOTksIDEzNCwgNywgMywgMSwgMjUzLCA5MywgMiwgMTk5LCAxMzQsIDcsIDYsIDEsIDI1MywgODMsIDcsIDMsIDEsIDI1MywgCi0gICAgODMsIDcsIDYsIDEsIDIyMywgMjAyLCAyNTAsIDI1MywgMiwgMjQ3LCA3NCwgNywgMywgMSwgMjIzLCAyMDIsIDI1MCwgMjUzLCAKLSAgICAyLCAyNDcsIDc0LCA3LCA2LCAxLCAyMzUsIDI4LCAyLCA5MCwgNywgMywgMSwgMjM1LCAyOCwgMiwgOTAsIDcsIDYsIDEsIAotICAgIDIzNSwgMjgsIDIsIDI0NywgMjA3LCA5MCwgNywgMywgMSwgMjM1LCAyOCwgMiwgMjQ3LCAyMDcsIDkwLCA3LCA2LCAxLCAKLSAgICAyMzUsIDI4LCAyLCAyMTksIDQ1LCAyNCwgMjQ3LCAyMDcsIDkwLCA3LCAzLCAxLCAyMzUsIDI4LCAyLCAyMTksIDQ1LCAyNCwgCi0gICAgMjQ3LCAyMDcsIDkwLCA3LCA2LCAxLCAyNTEsIDYzLCAxNTAsIDcsIDMsIDEsIDI1MSwgNjMsIDE1MCwgNywgNiwgMSwgMjMzLCAKLSAgICAxNzEsIDIsIDEyNCwgOTAsIDcsIDMsIDEsIDIzMywgMTcxLCAyLCAxMjQsIDkwLCA3LCA2LCAxLCAxNTcsIDIsIDE4NCwgCi0gICAgMjE5LCA0NSwgMjI2LCAyNDQsIDcsIDMsIDEsIDE1NywgMiwgMTg0LCAyMTksIDQ1LCAyMjYsIDI0NCwgNywgNiwgMSwgMTU3LCAKLSAgICAyLCAyMzIsIDE3NywgNywgMywgMSwgMTU3LCAyLCAyMzIsIDE3NywgNywgNiwgMSwgMjI3LCA0OSwgNywgMywgMSwgMjI3LCAKLSAgICA0OSwgNywgNiwgMSwgMjI2LCAyMzAsIDIsIDIxOSwgNDUsIDIxNywgOTMsIDI0NywgMjQ2LCA3LCAzLCAxLCAyMjYsIDIzMCwgCi0gICAgMiwgMjE5LCA0NSwgMjE3LCA5MywgMjQ3LCAyNDYsIDcsIDYsIDEsIDIyNiwgMjMwLCAyLCAyNDQsIDIyLCA3LCAzLCAxLCAKLSAgICAyMjYsIDIzMCwgMiwgMjQ0LCAyMiwgNywgNiwgMSwgMjI2LCAyMzAsIDIsIDIxOSwgMTYxLCAyMTgsIDI3LCA3LCAzLCAxLCAKLSAgICAyMjYsIDIzMCwgMiwgMjE5LCAxNjEsIDIxOCwgMjcsIDcsIDYsIDEsIDIyNCwgMjQxLCAyLCAyMTksIDQ1LCAyMTcsIDkzLCAKLSAgICAyNDcsIDI0NiwgNywgMywgMSwgMjI0LCAyNDEsIDIsIDIxOSwgNDUsIDIxNywgOTMsIDI0NywgMjQ2LCA3LCA2LCAxLCAyMjQsIAotICAgIDI0MSwgMiwgMjQ3LCAyMDcsIDkwLCA3LCAzLCAxLCAyMjQsIDI0MSwgMiwgMjQ3LCAyMDcsIDkwLCA3LCA2LCAxLCAyMjQsIAotICAgIDExMywgMjIzLCA4OCwgNywgMywgMSwgMjI0LCAxMTMsIDIyMywgODgsIDcsIDYsIDEsIDIyMywgNDEsIDIyMywgODgsIDcsIAotICAgIDMsIDEsIDIyMywgNDEsIDIyMywgODgsIDcsIDYsIDEsIDIxNSwgODAsIDIsIDI0NywgMjA3LCA5MCwgNywgMywgMSwgMjE1LCAKLSAgICA4MCwgMiwgMjQ3LCAyMDcsIDkwLCA3LCA2LCAxLCAyMTQsIDkwLCA3LCAzLCAxLCAyMTQsIDkwLCA3LCA2LCAxLCAyMTQsIAotICAgIDEyNiwgMjEyLCAxNTIsIDcsIDMsIDEsIDIxNCwgMTI2LCAyMTIsIDE1MiwgNywgNiwgMSwgMjE3LCAxMDUsIDIsIDkwLCA3LCAKLSAgICAzLCAxLCAyMTcsIDEwNSwgMiwgOTAsIDcsIDYsIDEsIDIxNywgMTA1LCAyLCAyMTksIDQ1LCAyMTcsIDkzLCAyNDcsIDI0NiwgCi0gICAgNywgMywgMSwgMjE3LCAxMDUsIDIsIDIxOSwgNDUsIDIxNywgOTMsIDI0NywgMjQ2LCA3LCA2LCAxLCAyMTQsIDIyMiwgNywgCi0gICAgMywgMSwgMjE0LCAyMjIsIDcsIDYsIDEsIDI0NSwgMzAsIDcsIDMsIDEsIDI0NSwgMzAsIDcsIDYsIDEsIDIzNSwgMTY5LCA3LCAKLSAgICAzLCAxLCAyMzUsIDE2OSwgNywgNiwgMSwgMjQ5LCAxNDYsIDcsIDMsIDEsIDI0OSwgMTQ2LCA1OSwgMSwgMjE1LCAxMDQsIDcsIAotICAgIDMsIDEsIDI0NiwgMjQsIDcsIDMsIDEsIDIzMiwgMTQyLCA3LCAzLCAxLCAyMzAsIDE1MCwgNywgMywgMSwgMjI4LCA1NywgNywgCi0gICAgMywgMSwgMjIzLCA0MCwgNywgMSwgMywgNiwgMjIzLCA0MCwgNywgMywgMSwgMjE2LCA3MiwgNywgMywgMSwgMjE1LCAxNjcsIAotICAgIDcsIDYsIDEsIDIzNSwgMjEwLCAyNDksIDMsIDcsIDMsIDEsIDIzNSwgMjEwLCAyNDksIDMsIDcsIDYsIDEsIDIzNSwgMjEwLCAKLSAgICAyNDQsIDIzMCwgNywgMywgMSwgMjM1LCAyMTAsIDI0NCwgMjMwLCA3LCA2LCAxLCAyMzUsIDIxMCwgMjQzLCAxNzcsIDcsIDYsIAotICAgIDEsIDIxNiwgNTgsIDIzNSwgMjEwLCAyNDMsIDE3NywgNywgMywgMSwgMjE2LCA1OCwgMjM1LCAyMTAsIDI0MywgMTc3LCA3LCAKLSAgICA2LCAxLCAyMTYsIDU4LCAxNTAsIDcsIDMsIDEsIDIxNiwgNTgsIDE1MCwgNywgNiwgMSwgMjM1LCAyMTAsIDE0OSwgNywgMywgCi0gICAgMSwgMjM1LCAyMTAsIDE0OSwgNywgNiwgMSwgMjM1LCAyMTAsIDE5NywgNywgMywgMSwgMjM1LCAyMTAsIDE5NywgNywgNiwgCi0gICAgMSwgMjM1LCAyMTAsIDIxOCwgOTksIDcsIDMsIDEsIDIzNSwgMjEwLCAyMTgsIDk5LCA1OSwgMSwgMTE1LCAyNDksIDIyNCwgCi0gICAgMjU0LCAxNzQsIDU5LCAxLCAyNDksIDE2NCwgNTksIDEsIDIyMCwgMTc1LCAyNDUsIDYxLCA1MiwgNywgNiwgMSwgMjIyLCAKLSAgICAxNzAsIDcsIDMsIDEsIDIyMiwgMTcwLCA3LCA2LCAxLCAyMTYsIDU4LCAyNDIsIDQxLCA3LCAzLCAxLCAyMzMsIDE3MSwgMiwgCi0gICAgMjIzLCAyMDcsIDI0MSwgMzgsIDI0LCAyNTEsIDIxOCwgNywgNiwgMSwgMjMwLCA5OCwgMiwgMjQ3LCAyNDYsIDcsIDMsIDEsIAotICAgIDIzMCwgOTgsIDIsIDI0NywgMjQ2LCA3LCA2LCAxLCAyNDMsIDE3OCwgMiwgMjI3LCAxMTIsIDkwLCA3LCAzLCAxLCAyNDMsIAotICAgIDE3OCwgMiwgMjI3LCAxMTIsIDkwLCA3LCA2LCAxLCAyMzUsIDI4LCAyLCAyMjcsIDExMiwgOTAsIDcsIDMsIDEsIDIzNSwgCi0gICAgMjgsIDIsIDIyNywgMTEyLCA5MCwgNywgNiwgMSwgMjMwLCA5OCwgMiwgMjI3LCAxMTIsIDkwLCA3LCAzLCAxLCAyMzAsIDk4LCAKLSAgICAyLCAyMjcsIDExMiwgOTAsIDcsIDYsIDEsIDIyNCwgMTEzLCAyLCAyMjcsIDExMiwgOTAsIDcsIDMsIDEsIDIyNCwgMTEzLCAKLSAgICAyLCAyMjcsIDExMiwgOTAsIDcsIDYsIDEsIDIyMywgNCwgMiwgMjI3LCAxMTIsIDkwLCA3LCAzLCAxLCAyMjMsIDQsIDIsIAotICAgIDIyNywgMTEyLCA5MCwgNywgMSwgMywgNiwgMjE2LCA1OCwgMTgzLCA3LCAyNDUsIDY2LCAxLCAyMjMsIDIwMiwgMjQ0LCAKLSAgICAyMzAsIDcsIDI0NSwgNjYsIDEsIDIyMywgMjAyLCAyMjYsIDIyOSwgNywgMjQ1LCA2NiwgMSwgMjM1LCAxOTEsIDE4MywgNywgCi0gICAgMjQ1LCA2NiwgMSwgMjQwLCAxNDYsIDIzMiwgMTgyLCA3LCAyNDUsIDY2LCAxLCAyNTMsIDE5MywgMTgzLCAyMTgsIDE3NSwgCi0gICAgMjMwLCAzMiwgMSwgNjEsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCA3MiwgMjE4LCAxNzUsIDIzMCwgMzIsIDUsIDI0NiwgMywgCi0gICAgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDY5LCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgNzQsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAKLSAgICA3NSwgMjE4LCAxNzUsIDIzMCwgMzIsIDUsIDI0MSwgMjM2LCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjM0LCAzNywgMjE4LCAKLSAgICAxNzUsIDIzMCwgMzIsIDEsIDIzNCwgMTEzLCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjQyLCAxNTAsIDIxOCwgMTc1LCAyMzAsIAotICAgIDMyLCAxLCAyNDIsIDIwMCwgMjE4LCAxNzUsIDIzMCwgMzIsIDUsIDI1MywgMjQyLCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgCi0gICAgMjQ5LCAxNzUsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyNTAsIDIzLCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjM1LCA3MSwgCi0gICAgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDIzNSwgMTExLCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjE2LCA5NSwgMjE4LCAxNzUsIAotICAgIDIzMCwgMzIsIDEsIDIxNiwgMTAwLCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjQ4LCA1NiwgMjE4LCAxNzUsIDIzMCwgMzIsIAotICAgIDEsIDI0OCwgNjUsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAxMDgsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyMTcsIDEwOSwgCi0gICAgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDI0NywgOTksIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyNDcsIDIxNSwgMjE4LCAxNzUsIAotICAgIDIzMCwgMzIsIDEsIDIyOCwgMTg1LCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjI1LCAxNTAsIDIxOCwgMTc1LCAyMzAsIDMyLCAKLSAgICAxLCAyMjUsIDI1MywgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDI1MSwgMTI4LCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjUxLCAKLSAgICAxODgsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyMzAsIDIzMSwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDIyMywgMTEyLCAyMTgsIAotICAgIDE3NSwgMjMwLCAzMiwgMSwgMjMyLCAyMDgsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyMjMsIDczLCAyMTgsIDE3NSwgMjMwLCAKLSAgICAzMiwgMSwgMjE5LCAyNDIsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyNDEsIDU0LCAyMTgsIDE3NSwgMjMwLCAzMiwgMzAsIDUsIAotICAgIDYxLCAyMTgsIDE3NSwgMjMwLCAzMiwgMzAsIDUsIDcyLCAyMTgsIDE3NSwgMjMwLCAzMiwgMzAsIDUsIDY5LCAyMTgsIDE3NSwgCi0gICAgMjMwLCAzMiwgMzAsIDUsIDc0LCAyMTgsIDE3NSwgMjMwLCAzMiwgMzAsIDUsIDIyNywgNDksIDIxOCwgMTc1LCAyMzAsIDMyLCAKLSAgICAyMjUsIDE0NiwgMjMxLCAyMjEsIDIxOCwgMTc1LCAyMzAsIDMyLCAyMjUsIDE0NiwgMjMxLCAyMjAsIDIxOCwgMTc1LCAyMzAsIAotICAgIDMyLCAyMjUsIDE0NiwgMjMxLCAyMTksIDIxOCwgMTc1LCAyMzAsIDMyLCAyMjUsIDE0NiwgMjMxLCAyMTgsIDIyOCwgMTY3LCAKLSAgICAyMzUsIDIzNywgMjQzLCAyMjgsIDEyMiwgMjI0LCAxNjYsIDIyOCwgMTY3LCAyMzUsIDIzNywgMjQzLCAyMjgsIDEyMiwgCi0gICAgMjQyLCA5LCAyMjgsIDE2NywgMjM1LCAyMzcsIDI0MywgMjI4LCAxMzMsIDIyNCwgMTY0LCAyMjgsIDE2NywgMjM1LCAyMzcsIAotICAgIDI0MywgMjI4LCAxMjIsIDIyMCwgNDUsIDIyOCwgMTY3LCAyMzUsIDIzNywgMjQzLCAyMjgsIDEyMiwgMjQ1LCAxNDUsIDIyOCwgCi0gICAgMTY3LCAyMzUsIDIzNywgMjQzLCAyMjgsIDEzMywgMjIwLCA0NCwgMjI4LCAxNjcsIDIzNSwgMjM3LCAyMjQsIDE2NywgNzcsIAotICAgIDIyOCwgMTY3LCAyMzUsIDIzNywgMjI1LCAxNzIsIDc3LCAyMjgsIDE2NywgMjM1LCAyMzcsIDIyMywgMjksIDc3LCAyMjgsIAotICAgIDE2NywgMjM1LCAyMzcsIDIyNCwgMTY4LCA3NywgMjI2LCAyMCwgMSwgMTgxLCAyMjYsIDIwLCAxLCAyMzQsIDEzOCwgMjI2LCAKLSAgICAyMCwgMSwgMjQzLCAxMTAsIDIyNiwgMjAsIDEsIDIyOSwgMTU5LCAyMjYsIDIwLCAxLCAyNTAsIDIxOSwgMjI2LCAyMCwgMSwgCi0gICAgMjUwLCA5MiwgMjI2LCAyMCwgMSwgMjM1LCAxMzksIDIyNiwgMjAsIDEsIDIyOCwgMjMsIDIyNiwgMjAsIDEsIDIxOCwgNTIsIAotICAgIDIyNiwgMjAsIDEsIDIxNywgMTYxLCAyMjYsIDIwLCAxLCAyNDgsIDE2NCwgMjI2LCAyMCwgMSwgMjA1LCAyMjYsIDIwLCAxLCAKLSAgICAxOTMsIDIyNiwgMjAsIDEsIDIyNiwgMjMsIDIyNiwgMjAsIDEsIDI1MiwgMTA3LCAyMjYsIDIwLCAxLCAxODgsIDIyNiwgMjAsIAotICAgIDEsIDIxNiwgMTQxLCAyMjYsIDIwLCAxLCAyMTYsIDEzMywgMjI2LCAyMCwgMSwgMjQ1LCAyNDksIDIyNiwgMjAsIDEsIDIxNCwgCi0gICAgNDksIDIyNiwgMjAsIDEsIDIxMiwgNzUsIDIyNiwgMjAsIDEsIDIxMiwgMTA5LCAyMjYsIDIwLCAxLCAzLCA2MSwgMjI2LCAKLSAgICAyMCwgMSwgMTg2LCAyMjYsIDIwLCAxLCAyMDMsIDIyNiwgMjAsIDEsIDIzMywgMTU3LCAyMjYsIDIwLCAxLCAyMjEsIDI0LCAKLSAgICAyMjYsIDIwLCAxLCAyMjIsIDIwMiwgMjI2LCAyMCwgMSwgMTU5LCAyMjYsIDIwLCAxLCA2MSwgMjI2LCAyMCwgMSwgNzIsIAotICAgIDIyNiwgMjAsIDEsIDY5LCAyMjYsIDIwLCAxLCA3NCwgMjI2LCAyMCwgMSwgNzUsIDIyNiwgMjAsIDEsIDIyNCwgMjMyLCAKLSAgICAyMjYsIDIwLCAxLCAyMTMsIDE1MywgMjI2LCAyMCwgMSwgMjQ0LCAxNjQsIDIyNiwgMjAsIDEsIDI0MywgNSwgMjI2LCAyMCwgCi0gICAgMSwgMjQ1LCAxNjUsIDIyNiwgMjAsIDIxOSwgMTgsIDEsIDIxNCwgNDksIDIyNiwgMjAsIDIxOSwgMTgsIDEsIDE4NiwgMjI2LCAKLSAgICAyMCwgMSwgMjE2LCAxMTUsIDIyNiwgMjAsIDEsIDIxNiwgMTA1LCAyMjYsIDIwLCAxLCAyNDgsIDg2LCAyMjYsIDIwLCAxLCAKLSAgICAyMjgsIDE5OCwgMjI2LCAyMCwgMSwgMjU0LCA1MCwgMTg2LCAyMjYsIDIwLCAxLCAyMTQsIDExNSwgMjIxLCAyNCwgMjI2LCAKLSAgICAyMCwgMSwgMjE0LCAxMTYsIDE1OSwgMjI2LCAyMCwgMSwgMjUzLCAxMzgsIDI0NCwgMTY0LCAyMjYsIDIwLCAyMTksIDE4LCAKLSAgICAxLCAyMDMsIDIyNiwgMjAsIDIxOCwgMjI1LCAxLCAyMDMsIDIyNiwgMjAsIDEsIDI1MCwgMTg3LCAyMjYsIDIwLCAyMjAsIAotICAgIDgxLCAyNDEsIDIyMCwgNzcsIDIyNiwgMjAsIDUxLCAyNDEsIDIyMCwgNzcsIDIyNiwgMjAsIDE1MiwgMjIxLCAxNywgMjI2LCAKLSAgICAyMCwgMTUyLCA1MSwgMjIxLCAxNywgMTY5LCA1LCAyNTMsIDI0MiwgMTY5LCA1LCAyMTQsIDEyOCwgMTY5LCAxLCA2MSwgCi0gICAgMTY5LCAxLCAyNTQsIDIzMiwgMTY5LCAxLCA3MiwgMTY5LCAxLCAyMzYsIDI4LCAxNjksIDEsIDY5LCAxNjksIDEsIDIxNSwgCi0gICAgOTIsIDE2OSwgMSwgMTYxLCAxNDksIDE2OSwgMSwgMTYxLCAyMjMsIDgyLCAxNjksIDEsIDE2MSwgMTUwLCAxNjksIDEsIAotICAgIDE2MSwgMjMyLCAyMTQsIDE2OSwgMSwgNzQsIDE2OSwgMSwgMjQ1LCAxNjUsIDE2OSwgMSwgMjU0LCAxMDgsIDE2OSwgMSwgCi0gICAgNzUsIDE2OSwgMSwgMjI3LCA0OSwgMTY5LCAxLCAyNTMsIDEwOCwgMTY5LCAxLCAxODEsIDE2OSwgMSwgMjM0LCAxMzgsIAotICAgIDE2OSwgMSwgMjQzLCAxMTAsIDE2OSwgMSwgMjQyLCAyMjUsIDE2OSwgMSwgMjI5LCAxNTksIDE2OSwgMSwgMjUwLCAyMTksIAotICAgIDE2OSwgMSwgMjUwLCA5MiwgMTY5LCAxLCAyMzUsIDEzOSwgMTY5LCAxLCAyMzUsIDExNSwgMTY5LCAxLCAyMjgsIDIzLCAKLSAgICAxNjksIDEsIDIxNiwgMTE1LCAxNjksIDEsIDIxNiwgMTA1LCAxNjksIDEsIDI0OCwgODYsIDE2OSwgMSwgMjQ4LCA3MCwgCi0gICAgMTY5LCAxLCAyMjgsIDE5OCwgMTY5LCAxLCAyMTgsIDUyLCAxNjksIDEsIDIxNywgMTYxLCAxNjksIDEsIDI0OCwgMTY0LCAKLSAgICAxNjksIDEsIDI0NywgMjMyLCAxNjksIDEsIDIwNSwgMTY5LCAxLCAxOTMsIDE2OSwgMSwgMjI2LCAyMywgMTY5LCAxLCAyNTIsIAotICAgIDEwNywgMTY5LCAxLCAyNTEsIDE5NSwgMTY5LCAxLCAxODgsIDE2OSwgMSwgMTg2LCAxNjksIDEsIDIwMywgMTY5LCAxLCAKLSAgICAyMzMsIDE1NywgMTY5LCAxLCAyMTUsIDEsIDE2OSwgMSwgMjIxLCAyNCwgMTY5LCAxLCAyMTksIDE1NywgMTY5LCAxLCAyMjIsIAotICAgIDIwMiwgMTY5LCAxLCAxNTksIDE2OSwgMSwgMjMyLCAyMTMsIDE2OSwgMjQ5LCAxMzMsIDUsIDI0MiwgMjUsIDE2OSwgMzAsIAotICAgIDUsIDI1NCwgMjMyLCAxNjksIDMwLCA1LCA3MiwgMTY5LCAzMCwgNSwgMjM2LCAyOCwgMTY5LCAzMCwgNSwgNjksIDE2OSwgCi0gICAgMzAsIDUsIDIxNSwgOTIsIDE2OSwgMzAsIDUsIDE2MSwgMTQ5LCAxNjksIDMwLCA1LCAxNjEsIDIyMywgODIsIDE2OSwgMzAsIAotICAgIDUsIDE2MSwgMTUwLCAxNjksIDMwLCA1LCAxNjEsIDIzMiwgMjE0LCAxNjksIDMwLCA1LCA3NCwgMTY5LCAzMCwgNSwgMjQ1LCAKLSAgICAxNjUsIDE2OSwgMzAsIDUsIDI1NCwgMTA4LCAxNjksIDMwLCA1LCA3NSwgMTY5LCAzMCwgNSwgMjI3LCA0OSwgMTY5LCAzMCwgCi0gICAgNSwgMjUzLCAxMDgsIDE2OSwgNSwgMjE0LCAxMzMsIDE2OSwgMjQ4LCAxMjMsIDE2OSwgNTEsIDI0OCwgMTIzLCAxNjksIDIxLCAKLSAgICAyMTIsIDc5LCAxNjksIDIxLCAxMTYsIDE2OSwgMjEsIDEwOSwgMTY5LCAyMSwgMTY2LCAxNjksIDIxLCAxNjMsIDE2OSwgMjEsIAotICAgIDE4MCwgMTY5LCAyMSwgMTg5LCAxNjksIDIxLCAxOTgsIDE2OSwgMjEsIDE5NSwgMTY5LCAyMSwgMjAwLCAzNywgODIsIDIxLCAKLSAgICAyMTIsIDc5LCAzNywgODIsIDIxLCAxMTYsIDM3LCA4MiwgMjEsIDEwOSwgMzcsIDgyLCAyMSwgMTY2LCAzNywgODIsIDIxLCAKLSAgICAxNjMsIDM3LCA4MiwgMjEsIDE4MCwgMzcsIDgyLCAyMSwgMTg5LCAzNywgODIsIDIxLCAxOTgsIDM3LCA4MiwgMjEsIDE5NSwgCi0gICAgMzcsIDgyLCAyMSwgMjAwLCAzNywgODIsIDEsIDYxLCAzNywgODIsIDEsIDY5LCAzNywgODIsIDEsIDE4MSwgMzcsIDgyLCAxLCAKLSAgICAyMDUsIDM3LCA4MiwgMSwgMTkzLCAzNywgODIsIDEsIDIwMywgMzcsIDgyLCAxLCAyMTQsIDE1NCwgMzcsIDgyLCA1LCAyNTMsIAotICAgIDkxLCA4MiwgNSwgMjE5LCAyMDUsIDI1MCwgMTg3LCA4MiwgNSwgMjUwLCAxODgsIDIxNCwgMTMzLCA4MiwgNSwgNTEsIDI1MCwgCi0gICAgMTg4LCAyMTQsIDEzMywgODIsIDUsIDI1MCwgMTg4LCAxMDksIDgyLCA1LCAyNTAsIDE4OCwgMTY2LCA4MiwgNSwgMjUwLCAKLSAgICAxODgsIDI1MywgOTEsIDgyLCA1LCAyMjUsIDExLCA4MiwgMjQzLCA3NiwgMjQ0LCA3MiwgODIsIDI1MCwgMTcwLCA4MiwgCi0gICAgMjQxLCAyMTQsIDIzNCwgMTk0LCAyMzMsIDE0LCAyMSwgMjEyLCA3OSwgMjM0LCAxOTQsIDIzMywgMTQsIDIxLCAxMTYsIAotICAgIDIzNCwgMTk0LCAyMzMsIDE0LCAyMSwgMTA5LCAyMzQsIDE5NCwgMjMzLCAxNCwgMjEsIDE2NiwgMjM0LCAxOTQsIDIzMywgCi0gICAgMTQsIDIxLCAxNjMsIDIzNCwgMTk0LCAyMzMsIDE0LCAyMSwgMTgwLCAyMzQsIDE5NCwgMjMzLCAxNCwgMjEsIDE4OSwgMjM0LCAKLSAgICAxOTQsIDIzMywgMTQsIDIxLCAxOTgsIDIzNCwgMTk0LCAyMzMsIDE0LCAyMSwgMTk1LCAyMzQsIDE5NCwgMjMzLCAxNCwgMjEsIAotICAgIDIwMCwgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDE4MSwgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDIzNCwgMTM4LCAyMzQsIDE5NCwgCi0gICAgMjMzLCAxNCwgMSwgMjQzLCAxMTAsIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyMjksIDE1OSwgMjM0LCAxOTQsIDIzMywgMTQsIAotICAgIDEsIDIyMiwgMjAyLCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjIxLCAyNCwgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDIxMiwgCi0gICAgMTA5LCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjI4LCAyMywgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDIxOCwgNTIsIDIzNCwgCi0gICAgMTk0LCAyMzMsIDE0LCAxLCAyNDAsIDIxNCwgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDIwNSwgMjM0LCAxOTQsIDIzMywgMTQsIAotICAgIDEsIDE5MywgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDIyNiwgMjMsIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAxODgsIDIzNCwgCi0gICAgMTk0LCAyMzMsIDE0LCAxLCAyNDgsIDE2NCwgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDI1MiwgMTA3LCAyMzQsIDE5NCwgMjMzLCAKLSAgICAxNCwgMSwgMjAzLCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMTg2LCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjMzLCAxNTcsIAotICAgIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyMTQsIDQ5LCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjE3LCAxNjEsIDIzNCwgMTk0LCAKLSAgICAyMzMsIDE0LCAxLCAxNTksIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyMTUsIDEsIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyNTAsIAotICAgIDIxOSwgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDYxLCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjI3LCA5OSwgMjM0LCAxOTQsIAotICAgIDIzMywgMTQsIDEsIDcyLCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjI3LCA0OSwgMjM0LCAxOTQsIDIzMywgMTQsIDMwLCAKLSAgICAyMTUsIDE4MywgMjM0LCAxOTQsIDIzMywgMTQsIDMwLCA3NCwgMjM0LCAxOTQsIDIzMywgMTQsIDMwLCA2OSwgMjM0LCAxOTQsIAotICAgIDIzMywgMTQsIDMwLCAyNDUsIDE2NSwgMjM0LCAxOTQsIDIzMywgMTQsIDMwLCA3NSwgMjM0LCAxOTQsIDIzMywgMTQsIDE2MCwgCi0gICAgMjI1LCAxNjMsIDIzNCwgMTk0LCAyMzMsIDE0LCAxNjAsIDI1MCwgMjAwLCAyMzQsIDE5NCwgMjMzLCAxNCwgMTYwLCAyNTAsIAotICAgIDIwMSwgMjI1LCAxNjMsIDIzNCwgMTk0LCAyMzMsIDE0LCA1LCAyNDksIDIwLCAyMzQsIDE5NCwgMjMzLCAxNCwgNSwgMjIwLCAKLSAgICAxMjUsIDIyMywgMjQzLCAxLCAxODEsIDIyMywgMjQzLCAxLCAyNDMsIDExMCwgMjIzLCAyNDMsIDEsIDIyOSwgMTU5LCAyMjMsIAotICAgIDI0MywgMSwgMjE4LCA1MiwgMjIzLCAyNDMsIDEsIDI0OCwgMTY0LCAyMjMsIDI0MywgMSwgMjA1LCAyMjMsIDI0MywgMSwgCi0gICAgMTkzLCAyMjMsIDI0MywgMSwgMjUyLCAxMDcsIDIyMywgMjQzLCAxLCAxODgsIDIyMywgMjQzLCAxLCAyNTAsIDIxOSwgMjIzLCAKLSAgICAyNDMsIDEsIDIzNSwgMTM5LCAyMjMsIDI0MywgMSwgMjI4LCAyMywgMjIzLCAyNDMsIDEsIDIyMiwgMjAyLCAyMjMsIDI0MywgCi0gICAgMSwgMjAzLCAyMjMsIDI0MywgMSwgMjMzLCAxNTcsIDIyMywgMjQzLCAxLCAxODYsIDIyMywgMjQzLCAxLCAyMTQsIDQ5LCAKLSAgICAyMjMsIDI0MywgMSwgMTU5LCAyMjMsIDI0MywgMSwgMjMxLCAxODcsIDIyMywgMjQzLCAxLCAyMjksIDE0MSwgMjIzLCAyNDMsIAotICAgIDEsIDIyOSwgMjI4LCAyMjMsIDI0MywgMSwgMjI3LCAyNTQsIDIyMywgMjQzLCAxLCA2MSwgMjIzLCAyNDMsIDMwLCA1LCA3MiwgCi0gICAgMjIzLCAyNDMsIDMwLCA1LCA2OSwgMjIzLCAyNDMsIDMwLCA1LCA3NCwgMjIzLCAyNDMsIDMwLCA1LCAyNTQsIDEwOCwgMjIzLCAKLSAgICAyNDMsIDMwLCA1LCA3NSwgMjIzLCAyNDMsIDMwLCA1LCAyNTMsIDEwOCwgMjIzLCAyNDMsIDMwLCA1LCAyNDUsIDIyLCAyMjMsIAotICAgIDI0MywgMzAsIDUsIDI0NSwgMTg5LCAyMjMsIDI0MywgMjQ5LCAxMzMsIDUsIDIyOSwgMTYxLCAyMjMsIDI0MywgMjQ5LCAKLSAgICAxMzMsIDUsIDIwNCwgMjIzLCAyNDMsIDI0OSwgMTMzLCA1LCAxNDksIDIyMywgMjQzLCAyNDksIDEzMywgNSwgMjQyLCA0MSwgCi0gICAgMjIzLCAyNDMsIDIxNCwgMTMzLCAyMjMsIDI0MywgMjIyLCA5MiwgNzcsIDIzLCA5NywgMjE3LCA1MSwgMjMsIDk3LCAyMTcsIAotICAgIDUwLCAyMywgOTcsIDIxNywgNDgsIDIzLCA5NywgMjE3LCA1MywgMjMsIDk3LCAyMjMsIDE3NCwgMjMsIDk3LCAyMjMsIDE1OCwgCi0gICAgMjMsIDk3LCAyMjMsIDE1MywgMjMsIDk3LCAyMjMsIDE1NSwgMjMsIDk3LCAyMjMsIDE3MSwgMjMsIDk3LCAyMjMsIDE2NCwgCi0gICAgMjMsIDk3LCAyMjMsIDE1NywgMjMsIDk3LCAyMjMsIDE3NiwgMjMsIDk3LCAyMjMsIDE1OSwgMjMsIDk3LCAyMjMsIDE3OCwgCi0gICAgMjMsIDk3LCAyMjMsIDE3NSwgMjMsIDk3LCAyMzEsIDI2LCAyMywgOTcsIDIzMSwgMTcsIDIzLCA5NywgMjMxLCAyMCwgMjMsIAotICAgIDk3LCAyMjUsIDIxMiwgMjMsIDk3LCAyMjUsIDIyMywgMjMsIDk3LCAyMjUsIDIyNCwgMjMsIDk3LCAyMTksIDE0MiwgMjMsIAotICAgIDk3LCAyMzYsIDQxLCAyMywgOTcsIDIzNiwgNDgsIDIzLCA5NywgMjE5LCAxNTMsIDIzLCA5NywgMjE5LCAxNDAsIDIzLCA5NywgCi0gICAgMjI2LCA2LCAyMywgOTcsIDI0MSwgMTUzLCAyMywgOTcsIDIxOSwgMTM3LCAxNDQsIDUsIDIyNiwgMTU1LCAxNDQsIDUsIAotICAgIDI1MCwgMTIxLCAxNDQsIDUsIDIzMywgOTAsIDE0NCwgNSwgMjEzLCAyMjgsIDE0NCwgMSwgNjEsIDE0NCwgMSwgMjQwLCAKLSAgICAxNDYsIDIzNCwgMTk3LCAxNDQsIDEsIDcyLCAxNDQsIDEsIDIzNiwgMjgsIDE0NCwgMSwgNjksIDE0NCwgMSwgMjI2LCAyMTQsIAotICAgIDI1MCwgOTcsIDE0NCwgMSwgMjI5LCAxNjAsIDIzMywgNTIsIDE0NCwgMSwgMjI5LCAxNjAsIDIzMywgNTMsIDIyNCwgMzQsIAotICAgIDE0NCwgMSwgNzQsIDE0NCwgMSwgMjU0LCAxMDgsIDE0NCwgMSwgNzUsIDE0NCwgMSwgMTgxLCAxNDQsIDEsIDIzNSwgMTcsIAotICAgIDIyMiwgMTQ0LCAxNDQsIDEsIDIzNSwgMTcsIDIzMCwgMTM2LCAxNDQsIDEsIDI0MywgMTEwLCAxNDQsIDEsIDI0MywgMTExLCAKLSAgICAyMzAsIDEzNiwgMTQ0LCAxLCAyMjksIDE1OSwgMTQ0LCAxLCAyNTAsIDIxOSwgMTQ0LCAxLCAyNTAsIDIyMCwgMjMwLCAxMzYsIAotICAgIDE0NCwgMSwgMjM1LCAxMzksIDE0NCwgMSwgMjI4LCAyNCwgMjMwLCAxMzYsIDE0NCwgMSwgMjM1LCAxNDAsIDIzMiwgMTIsIAotICAgIDE0NCwgMSwgMjI4LCAyMywgMTQ0LCAxLCAyMTYsIDExNSwgMTQ0LCAxLCAyMTYsIDExNiwgMjMyLCAxMiwgMTQ0LCAxLCAKLSAgICAyNDgsIDg2LCAxNDQsIDEsIDI0OCwgODcsIDIzMiwgMTIsIDE0NCwgMSwgMjMwLCA0NiwgMjMwLCAxMzYsIDE0NCwgMSwgCi0gICAgMjE4LCA1MiwgMTQ0LCAxLCAyMTgsIDUzLCAyMzAsIDEzNiwgMTQ0LCAxLCAyNDgsIDE2NCwgMTQ0LCAxLCAyNDgsIDE2NSwgCi0gICAgMjMyLCAxMiwgMTQ0LCAxLCAyMDUsIDE0NCwgMSwgMTkzLCAxNDQsIDEsIDIyNiwgMjE0LCAyMzAsIDEzNiwgMTQ0LCAxLCAKLSAgICAyNTIsIDEwNywgMTQ0LCAxLCAyNTIsIDEwOCwgMjMwLCAxMzYsIDE0NCwgMSwgMTg4LCAxNDQsIDEsIDE4NiwgMTQ0LCAxLCAKLSAgICAyMDMsIDE0NCwgMSwgMjI0LCA3NywgMjU0LCAxMTUsIDE0NCwgMSwgMjMzLCAxNTcsIDE0NCwgMSwgMjE0LCA0OSwgMTQ0LCAKLSAgICAxLCAyMjIsIDIwMywgMjMwLCAxMzYsIDE0NCwgMSwgMjIyLCAyMDMsIDIzMiwgMTIsIDE0NCwgMSwgMjIyLCAyMDIsIDE0NCwgCi0gICAgMSwgMTU5LCAxNDQsIDUsIDI1MCwgMTIyLCAyMTcsIDIwMywgMTQ0LCAzMCwgNSwgMjE3LCAyNTQsIDE0NCwgMzAsIDUsIAotICAgIDIxNiwgMjQ2LCAxNDQsIDMwLCA1LCAyMTMsIDE3OCwgMTQ0LCAzMCwgNSwgMjEzLCAxNzksIDIzMSwgMTMzLCAxNDQsIDMwLCAKLSAgICA1LCAyMTgsIDI0OCwgMTQ0LCAzMCwgNSwgMjE4LCAyNDksIDIzMSwgMTIxLCAxNDQsIDMwLCA1LCAyMTgsIDE2LCAxNDQsIAotICAgIDMwLCA1LCAyNDcsIDE0NiwgMjMwLCAxMzUsIDE0NCwgMzAsIDUsIDIyNiwgNTksIDE0NCwgMjQ5LCAxMzMsIDUsIDIzNCwgCi0gICAgMTY0LCAxNDQsIDI0OSwgMTMzLCA1LCAyMjYsIDcxLCAxNDQsIDI0OSwgMTMzLCA1LCAyNTAsIDIwNywgMTQ0LCAyMjYsIAotICAgIDE2NywgMTQ0LCA0MiwgMjIzLCAyMjEsIDE0NCwgNDYsIDIyMywgMjIxLCAxNDQsIDIyNiwgMjAzLCAyNTQsIDI2LCAxNDQsIAotICAgIDIyNiwgMjAzLCAyMzIsIDI5LCAxNDQsIDIyNiwgMjAzLCAyMzIsIDE0NiwgMTQ0LCAyMjYsIDIwMywgMjEzLCAyMjMsIDE0NCwgCi0gICAgMjI2LCAyMDMsIDIyNiwgMTY4LCAxNDQsIDIyNiwgMjAzLCAyMzIsIDIzNCwgMTQ0LCAyMjYsIDIwMywgMjMyLCAxNDAsIAotICAgIDE0NCwgMjI2LCAyMDMsIDI1NCwgMTU0LCAxNDQsIDIyNiwgMjAzLCAyNTQsIDE1NSwgMjU0LCAxNTQsIDE0NCwgMjI2LCAKLSAgICAyMDMsIDIyNSwgMTgzLCAxNDQsIDIxNiwgNTgsIDIyNiwgMjAzLCAyMjUsIDE4MywgMTQ0LCAyMjYsIDE2NCwgMTQ0LCAyMSwgCi0gICAgMjEyLCA3OSwgMTQ0LCAyMSwgMTE2LCAxNDQsIDIxLCAxMDksIDE0NCwgMjEsIDE2NiwgMTQ0LCAyMSwgMTYzLCAxNDQsIDIxLCAKLSAgICAxODAsIDE0NCwgMjEsIDE4OSwgMTQ0LCAyMSwgMTk4LCAxNDQsIDIxLCAxOTUsIDE0NCwgMjEsIDIwMCwgMTQ0LCAyMjYsIAotICAgIDIwMywgMjE3LCAyMiwgMjE2LCA3MCwgMTQ0LCAyMjYsIDIwMywgMjM1LCAxNjUsIDE2MiwgMSwgNjEsIDE2MiwgMSwgNzIsIAotICAgIDE2MiwgMSwgNjksIDE2MiwgMSwgNzQsIDE2MiwgMSwgMjU0LCAxMDgsIDE2MiwgMSwgNzUsIDE2MiwgMSwgMTgxLCAxNjIsIAotICAgIDEsIDIzNCwgMTM4LCAxNjIsIDEsIDI0MywgMTEwLCAxNjIsIDEsIDI0MiwgMjI1LCAxNjIsIDEsIDIyOSwgNzUsIDE2MiwgMSwgCi0gICAgMjI5LCAxNTksIDE2MiwgMSwgMjUwLCA5MiwgMTYyLCAxLCAyNTAsIDQ5LCAxNjIsIDEsIDIzNSwgMTM5LCAxNjIsIDEsIAotICAgIDIzNSwgMTE1LCAxNjIsIDEsIDIyOSwgNjYsIDE2MiwgMSwgMjI5LCA2OCwgMTYyLCAxLCAyMjksIDY3LCAxNjIsIDEsIDIxOCwgCi0gICAgNTIsIDE2MiwgMSwgMjE3LCAxNjEsIDE2MiwgMSwgMjQ4LCAxNjQsIDE2MiwgMSwgMjQ3LCAyMzIsIDE2MiwgMSwgMjI4LCAKLSAgICA2MiwgMTYyLCAxLCAyMDUsIDE2MiwgMSwgMjQ4LCA4NiwgMTYyLCAxLCAxOTMsIDE2MiwgMSwgMjI1LCAxMDAsIDE2MiwgMSwgCi0gICAgMjI2LCAyMywgMTYyLCAxLCAyNTIsIDEwNywgMTYyLCAxLCAyNTEsIDE5NSwgMTYyLCAxLCAyMzAsIDE2NSwgMTYyLCAxLCAKLSAgICAxODgsIDE2MiwgMSwgMjUyLCAzMSwgMTYyLCAxLCAxODYsIDE2MiwgMSwgMjAzLCAxNjIsIDEsIDIzMywgMTU3LCAxNjIsIDEsIAotICAgIDIxNSwgMSwgMTYyLCAxLCAyMTksIDE1NywgMTYyLCAxLCAyMjIsIDIwMiwgMTYyLCAxLCAxNTksIDE2MiwgMzAsIDUsIDI1NCwgCi0gICAgMjMyLCAxNjIsIDMwLCA1LCA3MiwgMTYyLCAzMCwgNSwgMjM2LCAyOCwgMTYyLCAzMCwgNSwgMjQ1LCAxNTIsIDE2MiwgMzAsIAotICAgIDUsIDY5LCAxNjIsIDMwLCA1LCAyMjcsIDk5LCAxNjIsIDMwLCA1LCA3NSwgMTYyLCAzMCwgNSwgMjU0LCAxMDgsIDE2MiwgCi0gICAgMzAsIDUsIDI1MywgMTA4LCAxNjIsIDMwLCA1LCAyMTUsIDE4MywgMTYyLCAyNDksIDEzMywgNSwgMTg2LCAxNjIsIDI0OSwgCi0gICAgMTMzLCA1LCAyMDMsIDE2MiwgMjQ5LCAxMzMsIDUsIDIzMywgMTU3LCAxNjIsIDI0OSwgMTMzLCA1LCAyMTQsIDQ5LCAxNjIsIAotICAgIDEsIDQwLCAyMzUsIDI3LCAxNjIsIDEsIDQwLCAyNDMsIDE3NywgMTYyLCAxLCA0MCwgMjI5LCAxNjEsIDE2MiwgMjQ5LCAKLSAgICAxMzMsIDUsIDQwLCAyMjksIDE2MSwgMTYyLCAxLCA0MCwgMjUwLCA5MywgMTYyLCAxLCA0MCwgMjE4LCA5OSwgMTYyLCAxLCAKLSAgICA0MCwgMjA0LCAxNjIsIDEsIDQwLCAyMjYsIDIyOSwgMTYyLCAxLCA0MCwgMjEzLCAxMDUsIDE2MiwgMSwgNDAsIDE0OSwgCi0gICAgMTYyLCAxLCA0MCwgMTUwLCAxNjIsIDEsIDQwLCAyMTksIDE1OCwgMTYyLCAyNDksIDEzMywgNSwgNDAsIDE4MywgMTYyLCAKLSAgICAyNDksIDEzMywgNSwgNDAsIDI0MiwgNDEsIDE2MiwgMjEsIDIxMiwgNzksIDE2MiwgMjEsIDExNiwgMTYyLCAyMSwgMTA5LCAKLSAgICAxNjIsIDIxLCAxNjYsIDE2MiwgMjEsIDE2MywgMTYyLCAyMSwgMTgwLCAxNjIsIDIxLCAxODksIDE2MiwgMjEsIDE5OCwgCi0gICAgMTYyLCAyMSwgMTk1LCAxNjIsIDIxLCAyMDAsIDE2MiwgMjI1LCAyNywgMjE5LCAxODMsIDE2MiwgMjI1LCAyNywgMjQ4LCAKLSAgICAxMjMsIDE2MiwgMjI1LCAyNywgNTEsIDI0OCwgMTIzLCAxNjIsIDIyNSwgMjcsIDIxNiwgMTY5LCAyNDgsIDEyMywgNjQsIDEsIAotICAgIDIzNCwgMTMyLCAyNDMsIDExMCwgNjQsIDEsIDIzNCwgMTMyLCAyNTAsIDIxOSwgNjQsIDEsIDIzNCwgMTMyLCAyNTAsIDkyLCAKLSAgICA2NCwgMSwgMjM0LCAxMzIsIDIzNSwgMTM5LCA2NCwgMSwgMjM0LCAxMzIsIDIzNSwgMTE1LCA2NCwgMSwgMjM0LCAxMzIsIAotICAgIDIyOCwgMjMsIDY0LCAxLCAyMzQsIDEzMiwgMjE2LCAxMTUsIDY0LCAxLCAyMzQsIDEzMiwgMjE2LCAxMDUsIDY0LCAxLCAKLSAgICAyMzQsIDEzMiwgMjQ4LCA4NiwgNjQsIDEsIDIzNCwgMTMyLCAyNDgsIDcwLCA2NCwgMSwgMjM0LCAxMzIsIDI0NywgMjMyLCAKLSAgICA2NCwgMSwgMjM0LCAxMzIsIDIwNSwgNjQsIDEsIDIzNCwgMTMyLCAyMjIsIDIwMiwgNjQsIDEsIDIzNCwgMTMyLCAxNTksIAotICAgIDY0LCAxLCAyMzQsIDEzMiwgMjQxLCAxNzQsIDY0LCAxLCAyMzQsIDEzMiwgMjQ0LCAxNjQsIDY0LCA1OSwgMSwgMjM0LCAKLSAgICAxMzIsIDIyNCwgMiwgNjQsIDEsIDIzNCwgMTMyLCAyMTMsIDE1MywgNjQsIDEsIDIzNCwgMTMyLCAyMTIsIDEwOSwgNjQsIDEsIAotICAgIDIzNCwgMTMyLCAyMDMsIDY0LCAyMzIsIDE5OCwgMjM0LCAxMzIsIDIyNywgMTE3LCA2NCwgMjMyLCAxOTgsIDIzNCwgMTMyLCAKLSAgICAyMjQsIDE4OCwgNjQsIDIzMiwgMTk4LCAyMzQsIDEzMiwgMjQxLCAxMDcsIDY0LCAxNiwgMjU0LCA5OCwgMjQ0LCAyNTMsIAotICAgIDY0LCAxNiwgMjU0LCA5OCwgMTE2LCA2NCwgMTYsIDI1NCwgOTgsIDEwOSwgNjQsIDEsIDI1NCwgOTgsIDIwMywgNjQsIDUsIAotICAgIDIyNiwgMTUxLCAyMzQsIDIxOCwgMjE2LCAyNDEsIDM4LCAxOTAsIDEsIDExNSwgMjM0LCAzNywgMzgsIDE5MCwgMSwgMTI0LCAKLSAgICAyMzQsIDM3LCAzOCwgMTkwLCAxLCAxMTUsIDIzNCwgMTEzLCAzOCwgMTkwLCAxLCAxMjQsIDIzNCwgMTEzLCAzOCwgMTkwLCAKLSAgICAxLCAxMTUsIDIzNCwgMTIwLCAzOCwgMTkwLCAxLCAxMjQsIDIzNCwgMTIwLCAzOCwgMTkwLCAxLCAxMTUsIDI0MiwgMTUwLCAKLSAgICAzOCwgMTkwLCAxLCAxMjQsIDI0MiwgMTUwLCAzOCwgMTkwLCAxLCAxMTUsIDIyOSwgOTAsIDM4LCAxOTAsIDEsIDEyNCwgCi0gICAgMjI5LCA5MCwgMzgsIDE5MCwgMSwgMTE1LCAyNDksIDE3NSwgMzgsIDE5MCwgMSwgMTI0LCAyNDksIDE3NSwgMzgsIDE5MCwgCi0gICAgMSwgMTE1LCAyNTAsIDIzLCAzOCwgMTkwLCAxLCAxMjQsIDI1MCwgMjMsIDM4LCAxOTAsIDEsIDExNSwgMjE5LCAyNDIsIDM4LCAKLSAgICAxOTAsIDEsIDEyNCwgMjE5LCAyNDIsIDM4LCAxOTAsIDEsIDExNSwgMjI3LCAyNTMsIDM4LCAxOTAsIDEsIDEyNCwgMjI3LCAKLSAgICAyNTMsIDM4LCAxOTAsIDEsIDExNSwgMjQ3LCA5OSwgMzgsIDE5MCwgMSwgMTI0LCAyNDcsIDk5LCAzOCwgMTkwLCAxLCAxMTUsIAotICAgIDEwOCwgMzgsIDE5MCwgMSwgMTI0LCAxMDgsIDM4LCAxOTAsIDEsIDExNSwgMjE3LCAxMDksIDM4LCAxOTAsIDEsIDEyNCwgCi0gICAgMjE3LCAxMDksIDM4LCAxOTAsIDEsIDExNSwgMjI4LCAxODUsIDM4LCAxOTAsIDEsIDEyNCwgMjI4LCAxODUsIDM4LCAxOTAsIAotICAgIDEsIDExNSwgMjUxLCAxMjgsIDM4LCAxOTAsIDEsIDEyNCwgMjUxLCAxMjgsIDM4LCAxOTAsIDEsIDExNSwgMjI1LCAxNTAsIAotICAgIDM4LCAxOTAsIDEsIDEyNCwgMjI1LCAxNTAsIDM4LCAxOTAsIDEsIDExNSwgMjI1LCAyNTMsIDM4LCAxOTAsIDEsIDEyNCwgCi0gICAgMjI1LCAyNTMsIDM4LCAxOTAsIDEsIDExNSwgMjQ0LCAxMiwgMzgsIDE5MCwgMSwgMTI0LCAyNDQsIDEyLCAzOCwgMTkwLCAxLCAKLSAgICAxMTUsIDIzMCwgMjMxLCAzOCwgMTkwLCAxLCAxMjQsIDIzMCwgMjMxLCAzOCwgMTkwLCAxLCAxMTUsIDIxMiwgMjM1LCAzOCwgCi0gICAgMTkwLCAxLCAxMjQsIDIxMiwgMjM1LCAzOCwgMTkwLCAxLCAxMTUsIDIyMywgMTEyLCAzOCwgMTkwLCAxLCAxMjQsIDIyMywgCi0gICAgMTEyLCAzOCwgMTkwLCAxLCAxMTUsIDIzMiwgMjA4LCAzOCwgMTkwLCAxLCAxMjQsIDIzMiwgMjA4LCAzOCwgMTkwLCAxLCAKLSAgICAxMTUsIDIxNCwgMTE5LCAzOCwgMTkwLCAxLCAxMjQsIDIxNCwgMTE5LCAzOCwgMTkwLCAxLCAxMTUsIDI0MSwgNTQsIDM4LCAKLSAgICAxOTAsIDEsIDEyNCwgMjQxLCA1NCwgMzgsIDE5MCwgMSwgMTE1LCA3NSwgMzgsIDE5MCwgMSwgMTI0LCA3NSwgMzgsIDE5MCwgCi0gICAgMjMyLCA5LCAyMzQsIDIzNSwgMzgsIDE5MCwgMzAsIDI1NCwgMjMyLCAzOCwgMTkwLCAzMCwgNzIsIDM4LCAxOTAsIDMwLCAKLSAgICAyMTUsIDE4MywgMzgsIDE5MCwgMzAsIDY5LCAzOCwgMTkwLCAzMCwgNzQsIDM4LCAxOTAsIDMwLCA3NSwgMzgsIDE5MCwgCi0gICAgMjMyLCA5LCAyMzQsIDExNSwgMzgsIDE5MCwgMzAsIDI0MCwgMTExLCAzOCwgMTkwLCAzMCwgMjE1LCAxODIsIDM4LCAxOTAsIAotICAgIDMwLCAyMTUsIDE5NiwgMzgsIDE5MCwgMzAsIDI1MywgMTA2LCAzOCwgMTkwLCAzMCwgMjUzLCA4MywgMzgsIDE5MCwgMzAsIAotICAgIDI1NCwgMzIsIDM4LCAxOTAsIDMwLCAyNTQsIDQ1LCAzOCwgMTkwLCAxNjAsIDIzMiwgOSwgMjQ1LCAxMzcsIDM4LCAxOTAsIAotICAgIDE2MCwgMjMyLCA5LCAyMjgsIDYxLCAzOCwgMTkwLCAxNjAsIDIzMiwgOSwgMjE3LCAxMDksIDM4LCAxOTAsIDE2MCwgMjMyLCAKLSAgICA5LCAyMTksIDIyOCwgMzgsIDE5MCwgMTYsIDIzNCwgMjIsIDM4LCAxOTAsIDE2LCAyMjgsIDYxLCAzOCwgMTkwLCAxNiwgCi0gICAgMjIyLCAxNjgsIDM4LCAxOTAsIDE2LCAyNDEsIDU1LCAyNDEsIDUwLCAzOCwgMTkwLCAxNiwgMjM0LCAzMSwgMjM0LCAzMCwgCi0gICAgMjgsIDQsIDIxNiwgOTgsIDI4LCA0LCAyMTYsIDEwMSwgMjgsIDQsIDIxNiwgMTA0LCAyOCwgNCwgMjE2LCAxMDIsIDI4LCA0LCAKLSAgICAyMTYsIDEwMywgMjgsIDQsIDIxNiwgMTAwLCAyOCwgNCwgMjQ4LCA2NCwgMjgsIDQsIDI0OCwgNjYsIDI4LCA0LCAyNDgsIAotICAgIDY5LCAyOCwgNCwgMjQ4LCA2NywgMjgsIDQsIDI0OCwgNjgsIDI4LCA0LCAyNDgsIDY1LCAyOCwgNCwgMjQ1LCAyMzksIDI4LCAKLSAgICA0LCAyNDUsIDI0MiwgMjgsIDQsIDI0NSwgMjQ4LCAyOCwgNCwgMjQ1LCAyNDYsIDI4LCA0LCAyNDUsIDI0NywgMjgsIDQsIAotICAgIDI0NSwgMjQwLCAyOCwgNCwgMjUwLCAxMzgsIDI4LCA0LCAyNTAsIDEzMiwgMjgsIDQsIDI1MCwgMTM0LCAyOCwgNCwgMjUwLCAKLSAgICAxMzcsIDI4LCA0LCAyNTAsIDEzNSwgMjgsIDQsIDI1MCwgMTM2LCAyOCwgNCwgMjUwLCAxMzMsIDI4LCA0LCAyNTIsIDMxLCAKLSAgICAyOCwgNCwgMjUyLCAxMCwgMjgsIDQsIDI1MiwgMjIsIDI4LCA0LCAyNTIsIDMwLCAyOCwgNCwgMjUyLCAyNSwgMjgsIDQsIAotICAgIDI1MiwgMjYsIDI4LCA0LCAyNTIsIDE0LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIzNCwgMjgsIDIzMSwgMTQwLCAyMzEsIAotICAgIDE5NCwgMSwgMjIyLCAxNjgsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjMzLCAxMzMsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgCi0gICAgMjMwLCAyNDEsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMTkzLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIwNSwgMjMxLCAKLSAgICAxNDAsIDIzMSwgMTk0LCAxLCAyNTAsIDM5LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIxNywgNDQsIDIzMSwgMTQwLCAyMzEsIAotICAgIDE5NCwgMSwgMjM0LCAxMDksIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjI5LCA4MCwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAKLSAgICAyMTcsIDEwMywgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyMTQsIDQ0LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIxMywgNTgsIAotICAgIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjQwLCAyMDYsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjE1LCAxNjAsIDIzMSwgCi0gICAgMTQwLCAyMzEsIDE5NCwgMSwgNzIsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjI2LCAxOCwgMjMxLCAxNDAsIDIzMSwgMTk0LCAKLSAgICAxLCAyNTMsIDExOCwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyNDIsIDE0MywgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyMzUsIAotICAgIDExNCwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyMjQsIDU3LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDI1MiwgMTA3LCAKLSAgICAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIzNSwgMTAzLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDI0NywgMTcxLCAyMzEsIAotICAgIDE0MCwgMjMxLCAxOTQsIDEsIDI0MiwgMTk3LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDI0NywgMjEzLCAyMzEsIDE0MCwgCi0gICAgMjMxLCAxOTQsIDEsIDI1MSwgMTk0LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIzNCwgMjksIDIzMiwgMTgxLCAyMzEsIAotICAgIDE0MCwgMjMxLCAxOTQsIDEsIDIzMywgMTM0LCAyMzIsIDE4MSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyMzAsIDI0MiwgCi0gICAgMjMyLCAxODEsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjI2LCAyMTQsIDIzMiwgMTgxLCAyMzEsIDE0MCwgMjMxLCAxOTQsIAotICAgIDEsIDIzMCwgNDYsIDIzMiwgMTgxLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIxNywgNDUsIDIzMiwgMTgxLCAyMzEsIDE0MCwgCi0gICAgMjMxLCAxOTQsIDEsIDIyOSwgODEsIDIzMiwgMTgxLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDI0MCwgMTQ2LCAyMzIsIAotICAgIDE4MSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAzMCwgNSwgMjI3LCA2MSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAzMCwgNSwgMjM1LCAKLSAgICAyNDksIDIzMSwgMTQwLCAyMzEsIDE5NCwgMzAsIDUsIDI1NCwgMzEsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMzAsIDUsIDIxMywgCi0gICAgMjksIDIzMSwgMTQwLCAyMzEsIDE5NCwgMzAsIDUsIDIxOSwgMjE5LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDMwLCA1LCAyMTUsIAotICAgIDE1NywgMjMxLCAxNDAsIDIzMSwgMTk0LCAzMCwgNSwgMjUwLCA2MCwgMjMxLCAxNDAsIDIzMSwgMTk0LCAzMCwgNSwgMjI4LCAKLSAgICA0NywgMjMxLCAxNDAsIDIzMSwgMTk0LCAyNTAsIDYxLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDIzMiwgMTQzLCAyMzUsIDE0OCwgCi0gICAgMjMxLCAxNDAsIDIzMSwgMTk0LCAyNTMsIDIxNiwgMjM1LCAxNDgsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMjEsIDIxMiwgNzksIAotICAgIDIzMSwgMTQwLCAyMzEsIDE5NCwgMjEsIDExNiwgMjMxLCAxNDAsIDIzMSwgMTk0LCAyMSwgMTA5LCAyMzEsIDE0MCwgMjMxLCAKLSAgICAxOTQsIDIxLCAxNjYsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMjEsIDE2MywgMjMxLCAxNDAsIDIzMSwgMTk0LCAyMSwgMTgwLCAKLSAgICAyMzEsIDE0MCwgMjMxLCAxOTQsIDIxLCAxODksIDIzMSwgMTQwLCAyMzEsIDE5NCwgMjEsIDE5OCwgMjMxLCAxNDAsIDIzMSwgCi0gICAgMTk0LCAyMSwgMTk1LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDIxLCAyMDAsIDIzLCAxMzUsIDIyNywgMTk3LCAyMywgMTM1LCAKLSAgICAyMjcsIDIwMiwgMjMsIDEzNSwgMjEyLCAyMzQsIDIzLCAxMzUsIDIxMiwgMjMzLCAyMywgMTM1LCAyMTIsIDIzMiwgMjMsIAotICAgIDEzNSwgMjE1LCAyNDYsIDIzLCAxMzUsIDIxNSwgMjQ5LCAyMywgMTM1LCAyMTIsIDIwMSwgMjMsIDEzNSwgMjEyLCAxOTcsIAotICAgIDIzLCAxMzUsIDI0NSwgMjEsIDIzLCAxMzUsIDI0NSwgMTksIDIzLCAxMzUsIDI0NSwgMjAsIDIzLCAxMzUsIDI0NSwgMTcsIAotICAgIDIzLCAxMzUsIDI0MCwgMTM2LCAyMywgMTM1LCAyNDAsIDEzNSwgMjMsIDEzNSwgMjQwLCAxMzMsIDIzLCAxMzUsIDI0MCwgCi0gICAgMTM0LCAyMywgMTM1LCAyNDAsIDEzOSwgMjMsIDEzNSwgMjQwLCAxMzIsIDIzLCAxMzUsIDI0MCwgMTMxLCAyMywgMTM1LCAKLSAgICAyNDAsIDE0MSwgMjMsIDEzNSwgMjUzLCAyMDMsIDIzLCAxMzUsIDI1MywgMjAyLCAyMywgODksIDIyOSwgNTAsIDIzLCA4OSwgCi0gICAgMjI5LCA1NiwgMjMsIDg5LCAyMTksIDEzOSwgMjMsIDg5LCAyMTksIDEzOCwgMjMsIDg5LCAyMTcsIDUwLCAyMywgODksIAotICAgIDIxNywgNDgsIDIzLCA4OSwgMjE3LCA0NywgMjMsIDg5LCAyMTcsIDUzLCAyMywgODksIDIxNywgNTQsIDIzLCA4OSwgMjE3LCAKLSAgICA0NiwgMjMsIDg5LCAyMjMsIDE1OCwgMjMsIDg5LCAyMjMsIDE3MywgMjMsIDg5LCAyMTksIDE0NSwgMjMsIDg5LCAyMjMsIAotICAgIDE3MCwgMjMsIDg5LCAyMjMsIDE2MCwgMjMsIDg5LCAyMjMsIDE2MiwgMjMsIDg5LCAyMjMsIDE0OSwgMjMsIDg5LCAyMjMsIAotICAgIDE1MCwgMjMsIDg5LCAyMzQsIDIyMywgMjMsIDg5LCAyMzEsIDI1LCAyMywgODksIDIzMSwgMTksIDIzLCA4OSwgMjE5LCAKLSAgICAxNDksIDIzLCA4OSwgMjMxLCAyMiwgMjMsIDg5LCAyMzEsIDI4LCAyMywgODksIDIyNSwgMjA4LCAyMywgODksIDIyNSwgCi0gICAgMjE3LCAyMywgODksIDIyNSwgMjIxLCAyMywgODksIDIxOSwgMTQ3LCAyMywgODksIDIyNSwgMjExLCAyMywgODksIDIyNSwgCi0gICAgMjI1LCAyMywgODksIDIyNSwgMjI2LCAyMywgODksIDIyMCwgNjgsIDIzLCA4OSwgMjIwLCA3MSwgMjMsIDg5LCAyMTksIAotICAgIDE0MywgMjMsIDg5LCAyMTksIDE0MSwgMjMsIDg5LCAyMjAsIDY2LCAyMywgODksIDIyMCwgNzQsIDIzLCA4OSwgMjIwLCA3NSwgCi0gICAgMjMsIDg5LCAyMjAsIDYwLCAyMywgODksIDIyMCwgNzMsIDIzLCA4OSwgMjI2LCAxNTgsIDIzLCA4OSwgMjI2LCAxNTksIDIzLCAKLSAgICA4OSwgMjEzLCAxNSwgMjMsIDg5LCAyMTMsIDE2LCAyMywgODksIDI0OSwgMjM3LCAyMywgODksIDI0OSwgMjM2LCAyMywgODksIAotICAgIDIxOSwgMTU0LCAyMywgODksIDIyNiwgNCwgMjMsIDg5LCAyMjYsIDMsIDksIDEzLCAyMzgsIDE3LCA5LCAxMywgMjM4LCAxNiwgCi0gICAgOSwgMTMsIDIzOCwgMTUsIDksIDEzLCAyMzgsIDE0LCA5LCAxMywgMjM4LCAxMywgOSwgMTMsIDIzOCwgMTIsIDksIDEzLCAKLSAgICAyMzgsIDExLCA5LCAxMywgMjM4LCAxMCwgOSwgMTMsIDIzOCwgOSwgOSwgMTMsIDIzOCwgOCwgOSwgMTMsIDIzOCwgNywgOSwgCi0gICAgMTMsIDIzOCwgNiwgOSwgMTMsIDIzOCwgNSwgOSwgMTMsIDIzOCwgNCwgOSwgMTMsIDIzOCwgMywgOSwgMTMsIDIzOCwgMiwgCi0gICAgOSwgMTMsIDIzOCwgMSwgOSwgMTMsIDIzOCwgMCwgOSwgMTMsIDIzNywgMjU1LCA5LCAxMywgMjM3LCAyNTQsIDksIDEzLCAKLSAgICAyMzcsIDI1MywgOSwgMTMsIDIzNywgMjUyLCA5LCAxMywgMjM3LCAyNTEsIDksIDEzLCAyMzcsIDI1MCwgOSwgMTMsIDIzNywgCi0gICAgMjQ5LCA5LCAxMywgMjM3LCAyNDgsIDksIDEzLCAyMzcsIDI0NywgOSwgMTMsIDIzNywgMjQ2LCA5LCAxMywgMjM3LCAyNDUsIAotICAgIDksIDEzLCAyMzcsIDI0NCwgOSwgMTMsIDIzNywgMjQzLCA5LCAxMywgMjM3LCAyNDIsIDksIDEzLCAyMzcsIDI0MSwgOSwgCi0gICAgMTMsIDIzNywgMjQwLCA5LCAxMywgMjM3LCAyMzksIDksIDEzLCAyMzcsIDIzOCwgOSwgMTMsIDIzNywgMjM3LCA5LCAxMywgCi0gICAgMjM3LCAyMzYsIDksIDEzLCAyMzcsIDIzNSwgOSwgMTMsIDIzNywgMjM0LCA5LCAxMywgMjM3LCAyMzMsIDksIDEzLCAyMzcsIAotICAgIDIzMiwgOSwgMTMsIDIzNywgMjMxLCA5LCAxMywgMjM3LCAyMzAsIDksIDEzLCAyMzcsIDIyOSwgOSwgMTMsIDIzNywgMjI4LCAKLSAgICA5LCAxMywgMjM3LCAyMjcsIDksIDEzLCAyMzcsIDIyNiwgOSwgMTMsIDIzNywgMjI1LCA5LCAxMywgMjM3LCAyMjQsIDksIAotICAgIDEzLCAyMzcsIDIyMywgOSwgMTMsIDIzNywgMjIyLCA5LCAxMywgMjM3LCAyMjEsIDksIDEzLCAyMzcsIDIyMCwgOSwgMTMsIAotICAgIDIzNywgMjE5LCA5LCAxMywgMjM3LCAyMTgsIDksIDEzLCAyMzcsIDIxNywgOSwgMTMsIDIzNywgMjE2LCA5LCAxMywgMjM3LCAKLSAgICAyMTUsIDksIDEzLCAyMzcsIDIxNCwgOSwgMTMsIDIzNywgMjEzLCA5LCAxMywgMjM3LCAyMTIsIDksIDEzLCAyMzcsIDIxMSwgCi0gICAgOSwgMTMsIDIzNywgMjEwLCA5LCAxMywgMjM3LCAyMDksIDksIDEzLCAyMzcsIDIwOCwgOSwgMTMsIDIzNywgMjA3LCA5LCAKLSAgICAxMywgMjM3LCAyMDYsIDksIDEzLCAyMzcsIDIwNSwgOSwgMTMsIDIzNywgMjA0LCA5LCAxMywgMjM3LCAyMDMsIDksIDEzLCAKLSAgICAyMzcsIDIwMiwgOSwgMTMsIDIzNywgMjAxLCA5LCAxMywgMjM3LCAyMDAsIDksIDEzLCAyMzcsIDE5OSwgOSwgMTMsIDIzNywgCi0gICAgMTk4LCA5LCAxMywgMjM3LCAxOTcsIDksIDEzLCAyMzcsIDE5NiwgOSwgMTMsIDIzNywgMTk1LCA5LCAxMywgMjM3LCAxOTQsIAotICAgIDksIDEzLCAyMzcsIDE5MywgOSwgMTMsIDIzNywgMTkyLCA5LCAxMywgMjM3LCAxOTEsIDksIDEzLCAyMzcsIDE5MCwgOSwgCi0gICAgMTMsIDIzNywgMTg5LCA5LCAxMywgMjM3LCAxODgsIDksIDEzLCAyMzcsIDE4NywgOSwgMTMsIDIzNywgMTg2LCA5LCAxMywgCi0gICAgMjM3LCAxODUsIDksIDEzLCAyMzcsIDE4NCwgOSwgMTMsIDIzNywgMTgzLCA5LCAxMywgMjM3LCAxODIsIDksIDEzLCAyMzcsIAotICAgIDE4MSwgOSwgMTMsIDIzNywgMTgwLCA5LCAxMywgMjM3LCAxNzksIDksIDEzLCAyMzcsIDE3OCwgOSwgMTMsIDIzNywgMTc3LCAKLSAgICA5LCAxMywgMjM3LCAxNzYsIDksIDEzLCAyMzcsIDE3NSwgOSwgMTMsIDIzNywgMTc0LCA5LCAxMywgMjM3LCAxNzMsIDksIAotICAgIDEzLCAyMzcsIDE3MiwgOSwgMTMsIDIzNywgMTcxLCA5LCAxMywgMjM3LCAxNzAsIDksIDEzLCAyMzcsIDE2OSwgOSwgMTMsIAotICAgIDIzNywgMTY4LCA5LCAxMywgMjM3LCAxNjcsIDksIDEzLCAyMzcsIDE2NiwgOSwgMTMsIDIzNywgMTY1LCA5LCAxMywgMjM3LCAKLSAgICAxNjQsIDksIDEzLCAyMzcsIDE2MywgOSwgMTMsIDIzNywgMTYyLCA5LCAxMywgMjM3LCAxNjEsIDksIDEzLCAyMzcsIDE2MCwgCi0gICAgOSwgMTMsIDIzNywgMTU5LCA5LCAxMywgMjM3LCAxNTgsIDksIDEzLCAyMzcsIDE1NywgOSwgMTMsIDIzNywgMTU2LCA5LCAKLSAgICAxMywgMjM3LCAxNTUsIDksIDEzLCAyMzcsIDE1NCwgOSwgMTMsIDIzNywgMTUzLCA5LCAxMywgMjM3LCAxNTIsIDksIDEzLCAKLSAgICAyMzcsIDE1MSwgOSwgMTMsIDIzNywgMTUwLCA5LCAxMywgMjM3LCAxNDksIDksIDEzLCAyMzcsIDE0OCwgOSwgMTMsIDIzNywgCi0gICAgMTQ3LCA5LCAxMywgMjM3LCAxNDYsIDksIDEzLCAyMzcsIDE0NSwgOSwgMTMsIDIzNywgMTQ0LCA5LCAxMywgMjM3LCAxNDMsIAotICAgIDksIDEzLCAyMzcsIDE0MiwgOSwgMTMsIDIzNywgMTQxLCA5LCAxMywgMjM3LCAxNDAsIDksIDEzLCAyMzcsIDEzOSwgOSwgCi0gICAgMTMsIDIzNywgMTM4LCA5LCAxMywgMjM3LCAxMzcsIDksIDEzLCAyMzcsIDEzNiwgOSwgMTMsIDIzNywgMTM1LCA5LCAxMywgCi0gICAgMjM3LCAxMzQsIDksIDEzLCAyMzcsIDEzMywgOSwgMTMsIDIzNywgMTMyLCA5LCAxMywgMjM3LCAxMzEsIDksIDEzLCAyMzcsIAotICAgIDEzMCwgOSwgMTMsIDIzNywgMTI5LCA5LCAxMywgMjM3LCAxMjgsIDksIDEzLCAyMzcsIDEyNywgOSwgMTMsIDIzNywgMTI2LCAKLSAgICA5LCAxMywgMjM3LCAxMjUsIDksIDEzLCAyMzcsIDEyNCwgOSwgMTMsIDIzNywgMTIzLCA5LCAxMywgMjM3LCAxMjIsIDksIAotICAgIDEzLCAyMzcsIDEyMSwgOSwgMTMsIDIzNywgMTIwLCA5LCAxMywgMjM3LCAxMTksIDksIDEzLCAyMzcsIDExOCwgOSwgMTMsIAotICAgIDIzNywgMTE3LCA5LCAxMywgMjM3LCAxMTYsIDksIDEzLCAyMzcsIDExNSwgOSwgMTMsIDIzNywgMTE0LCA5LCAxMywgMjM3LCAKLSAgICAxMTMsIDksIDEzLCAyMzcsIDExMiwgOSwgMTMsIDIzNywgMTExLCA5LCAxMywgMjM3LCAxMTAsIDksIDEzLCAyMzcsIDEwOSwgCi0gICAgOSwgMTMsIDIzNywgMTA4LCA5LCAxMywgMjM3LCAxMDcsIDksIDEzLCAyMzcsIDEwNiwgOSwgMTMsIDIzNywgMTA1LCA5LCAKLSAgICAxMywgMjM3LCAxMDQsIDksIDEzLCAyMzcsIDEwMywgOSwgMTMsIDIzNywgMTAyLCA5LCAxMywgMjM3LCAxMDEsIDksIDEzLCAKLSAgICAyMzcsIDEwMCwgOSwgMTMsIDIzNywgOTksIDksIDEzLCAyMzcsIDk4LCA5LCAxMywgMjM3LCA5NywgOSwgMTMsIDIzNywgOTYsIAotICAgIDksIDEzLCAyMzcsIDk1LCA5LCAxMywgMjM3LCA5NCwgOSwgMTMsIDIzNywgOTMsIDksIDEzLCAyMzcsIDkyLCA5LCAxMywgCi0gICAgMjM3LCA5MSwgOSwgMTMsIDIzNywgOTAsIDksIDEzLCAyMzcsIDg5LCA5LCAxMywgMjM3LCA4OCwgOSwgMTMsIDIzNywgODcsIAotICAgIDksIDEzLCAyMzcsIDg2LCA5LCAxMywgMjM3LCA4NSwgOSwgMTMsIDIzNywgODQsIDksIDEzLCAyMzcsIDgzLCA5LCAxMywgCi0gICAgMjM3LCA4MiwgOSwgMTMsIDIzNywgODEsIDksIDEzLCAyMzcsIDgwLCA5LCAxMywgMjM3LCA3OSwgOSwgMTMsIDIzNywgNzgsIAotICAgIDksIDEzLCAyMzcsIDc3LCA5LCAxMywgMjM3LCA3NiwgOSwgMTMsIDIzNywgNzUsIDksIDEzLCAyMzcsIDc0LCA5LCAxMywgCi0gICAgMjM3LCA3MywgOSwgMTMsIDIzNywgNzIsIDksIDEzLCAyMzcsIDcxLCA5LCAxMywgMjM3LCA3MCwgOSwgMTMsIDIzNywgNjksIAotICAgIDksIDEzLCAyMzcsIDY4LCA5LCAxMywgMjM3LCA2NywgOSwgMTMsIDIzNywgNjYsIDksIDEzLCAyMzcsIDY1LCA5LCAxMywgCi0gICAgMjM3LCA2NCwgOSwgMTMsIDIzNywgNjMsIDksIDEzLCAyMzcsIDYyLCA5LCAxMywgMjM3LCA2MSwgOSwgMTMsIDIzNywgNjAsIAotICAgIDksIDEzLCAyMzcsIDU5LCA5LCAxMywgMjM3LCA1OCwgOSwgMTMsIDIzNywgNTcsIDksIDEzLCAyMzcsIDU2LCA5LCAxMywgCi0gICAgMjM3LCA1NSwgOSwgMTMsIDIzNywgNTQsIDksIDEzLCAyMzcsIDUzLCA5LCAxMywgMjM3LCA1MiwgOSwgMTMsIDIzNywgNTEsIAotICAgIDksIDEzLCAyMzcsIDUwLCA5LCAxMywgMjM3LCA0OSwgOSwgMTMsIDIzNywgNDgsIDksIDEzLCAyMzcsIDQ3LCA5LCAxMywgCi0gICAgMjM3LCA0NiwgOSwgMTMsIDIzNywgNDUsIDksIDEzLCAyMzcsIDQ0LCA5LCAxMywgMjM3LCA0MywgOSwgMTMsIDIzNywgNDIsIAotICAgIDksIDEzLCAyMzcsIDQxLCA5LCAxMywgMjM3LCA0MCwgOSwgMTMsIDIzNywgMzksIDksIDEzLCAyMzcsIDM4LCA5LCAxMywgCi0gICAgMjM3LCAzNywgOSwgMTMsIDIzNywgMzYsIDksIDEzLCAyMzcsIDM1LCA5LCAxMywgMjM3LCAzNCwgOSwgMTMsIDIzNywgMzMsIAotICAgIDksIDEzLCAyMzcsIDMyLCA5LCAxMywgMjM3LCAzMSwgOSwgMTMsIDIzNywgMzAsIDksIDEzLCAyMzcsIDI5LCA5LCAxMywgCi0gICAgMjM3LCAyOCwgOSwgMTMsIDIzNywgMjcsIDksIDEzLCAyMzcsIDI2LCA5LCAxMywgMjM3LCAyNSwgOSwgMTMsIDIzNywgMjQsIAotICAgIDksIDEzLCAyMzcsIDIzLCA5LCAxMywgMjM3LCAyMiwgOSwgMTMsIDIzNywgMjEsIDksIDEzLCAyMzcsIDIwLCA5LCAxMywgCi0gICAgMjM3LCAxOSwgOSwgMTMsIDIzNywgMTgsIDksIDEzLCAyMzcsIDE3LCA5LCAxMywgMjM3LCAxNiwgOSwgMTMsIDIzNywgMTUsIAotICAgIDksIDEzLCAyMzcsIDE0LCA5LCAxMywgMjM3LCAxMywgOSwgMTMsIDIzNywgMTIsIDksIDEzLCAyMzcsIDExLCA5LCAxMywgCi0gICAgMjM3LCAxMCwgOSwgMTMsIDIzNywgOSwgOSwgMTMsIDIzNywgOCwgOSwgMTMsIDIzNywgNywgOSwgMTMsIDIzNywgNiwgOSwgCi0gICAgMTMsIDIzNywgNSwgOSwgMTMsIDIzNywgNCwgOSwgMTMsIDIzNywgMywgOSwgMTMsIDIzNywgMiwgOSwgMTMsIDIzNywgMSwgCi0gICAgOSwgMTMsIDIzNywgMCwgOSwgMTMsIDIzNiwgMjU1LCA5LCAxMywgMjM2LCAyNTQsIDksIDEzLCAyMzYsIDI1MywgOSwgMTMsIAotICAgIDIzNiwgMjUyLCA5LCAxMywgMjM2LCAyNTEsIDksIDEzLCAyMzYsIDI1MCwgOSwgMTMsIDIzNiwgMjQ5LCA5LCAxMywgMjM2LCAKLSAgICAyNDgsIDksIDEzLCAyMzYsIDI0NywgOSwgMTMsIDIzNiwgMjQ2LCA5LCAxMywgMjM2LCAyNDUsIDksIDEzLCAyMzYsIDI0NCwgCi0gICAgOSwgMTMsIDIzNiwgMjQzLCA5LCAxMywgMjM2LCAyNDIsIDksIDEzLCAyMzYsIDI0MSwgOSwgMTMsIDIzNiwgMjQwLCA5LCAKLSAgICAxMywgMjM2LCAyMzksIDksIDEzLCAyMzYsIDIzOCwgOSwgMTMsIDIzNiwgMjM3LCA5LCAxMywgMjM2LCAyMzYsIDksIDEzLCAKLSAgICAyMzYsIDIzNSwgOSwgMTMsIDIzNiwgMjM0LCA5LCAxMywgMjM2LCAyMzMsIDksIDEzLCAyMzYsIDIzMiwgOSwgMTMsIDIzNiwgCi0gICAgMjMxLCA5LCAxMywgMjM2LCAyMzAsIDksIDEzLCAyMzYsIDIyOSwgOSwgMTMsIDIzNiwgMjI4LCA5LCAxMywgMjM2LCAyMjcsIAotICAgIDksIDEzLCAyMzYsIDIyNiwgOSwgMTMsIDIzNiwgMjI1LCA5LCAxMywgMjM2LCAyMjQsIDksIDEzLCAyMzYsIDIyMywgOSwgCi0gICAgMTMsIDIzNiwgMjIyLCA5LCAxMywgMjM2LCAyMjEsIDksIDEzLCAyMzYsIDIyMCwgOSwgMTMsIDIzNiwgMjE5LCA5LCAxMywgCi0gICAgMjM2LCAyMTgsIDksIDEzLCAyMzYsIDIxNywgOSwgMTMsIDIzNiwgMjE2LCA5LCAxMywgMjM2LCAyMTUsIDksIDEzLCAyMzYsIAotICAgIDIxNCwgOSwgMTMsIDIzNiwgMjEzLCA5LCAxMywgMjM2LCAyMTIsIDksIDEzLCAyMzYsIDIxMSwgOSwgMTMsIDIzNiwgMjEwLCAKLSAgICA5LCAxMywgMjM2LCAyMDksIDksIDEzLCAyMzYsIDIwOCwgOSwgMTMsIDIzNiwgMjA3LCA5LCAxMywgMjM2LCAyMDYsIDksIAotICAgIDEzLCAyMzYsIDIwNSwgOSwgMTMsIDIzNiwgMjA0LCA5LCAxMywgMjM2LCAyMDMsIDksIDEzLCAyMzYsIDIwMiwgOSwgMTMsIAotICAgIDIzNiwgMjAxLCA5LCAxMywgMjM2LCAyMDAsIDksIDEzLCAyMzYsIDE5OSwgOSwgMTMsIDIzNiwgMTk4LCA5LCAxMywgMjM2LCAKLSAgICAxOTcsIDksIDEzLCAyMzYsIDE5NiwgOSwgMTMsIDIzNiwgMTk1LCA5LCAxMywgMjM2LCAxOTQsIDksIDEzLCAyMzYsIDE5MywgCi0gICAgOSwgMTMsIDIzNiwgMTkyLCA5LCAxMywgMjM2LCAxOTEsIDksIDEzLCAyMzYsIDE5MCwgOSwgMTMsIDIzNiwgMTg5LCA5LCAKLSAgICAxMywgMjM2LCAxODgsIDksIDEzLCAyMzYsIDE4NywgOSwgMTMsIDIzNiwgMTg2LCA5LCAxMywgMjM2LCAxODUsIDksIDEzLCAKLSAgICAyMzYsIDE4NCwgOSwgMTMsIDIzNiwgMTgzLCA5LCAxMywgMjM2LCAxODIsIDksIDEzLCAyMzYsIDE4MSwgOSwgMTMsIDIzNiwgCi0gICAgMTgwLCA5LCAxMywgMjM2LCAxNzksIDksIDEzLCAyMzYsIDE3OCwgOSwgMTMsIDIzNiwgMTc3LCA5LCAxMywgMjM2LCAxNzYsIAotICAgIDksIDEzLCAyMzYsIDE3NSwgOSwgMTMsIDIzNiwgMTc0LCA5LCAxMywgMjM2LCAxNzMsIDksIDEzLCAyMzYsIDE3MiwgOSwgCi0gICAgMTMsIDIzNiwgMTcxLCA5LCAxMywgMjM2LCAxNzAsIDksIDEzLCAyMzYsIDE2OSwgOSwgMTMsIDIzNiwgMTY4LCA5LCAxMywgCi0gICAgMjM2LCAxNjcsIDksIDEzLCAyMzYsIDE2NiwgOSwgMTMsIDIzNiwgMTY1LCA5LCAxMywgMjM2LCAxNjQsIDksIDEzLCAyMzYsIAotICAgIDE2MywgOSwgMTMsIDIzNiwgMTYyLCA5LCAxMywgMjM2LCAxNjEsIDksIDEzLCAyMzYsIDE2MCwgOSwgMTMsIDIzNiwgMTU5LCAKLSAgICA5LCAxMywgMjM2LCAxNTgsIDksIDEzLCAyMzYsIDE1NywgOSwgMTMsIDIzNiwgMTU2LCA5LCAxMywgMjM2LCAxNTUsIDksIAotICAgIDEzLCAyMzYsIDE1NCwgOSwgMTMsIDIzNiwgMTUzLCA5LCAxMywgMjM2LCAxNTIsIDksIDEzLCAyMzYsIDE1MSwgOSwgMTMsIAotICAgIDIzNiwgMTUwLCA5LCAxMywgMjM2LCAxNDksIDksIDEzLCAyMzYsIDE0OCwgOSwgMTMsIDIzNiwgMTQ3LCA5LCAxMywgMjM2LCAKLSAgICAxNDYsIDksIDEzLCAyMzYsIDE0NSwgOSwgMTMsIDIzNiwgMTQ0LCA5LCAxMywgMjM2LCAxNDMsIDksIDEzLCAyMzYsIDE0MiwgCi0gICAgOSwgMTMsIDIzNiwgMTQxLCA5LCAxMywgMjM2LCAxNDAsIDksIDEzLCAyMzYsIDEzOSwgOSwgMTMsIDIzNiwgMTM4LCA5LCAKLSAgICAxMywgMjM2LCAxMzcsIDksIDEzLCAyMzYsIDEzNiwgOSwgMTMsIDIzNiwgMTM1LCA5LCAxMywgMjM2LCAxMzQsIDksIDEzLCAKLSAgICAyMzYsIDEzMywgOSwgMTMsIDIzNiwgMTMyLCA5LCAxMywgMjM2LCAxMzEsIDksIDEzLCAyMzYsIDEzMCwgOSwgMTMsIDIzNiwgCi0gICAgMTI5LCA5LCAxMywgMjM2LCAxMjgsIDksIDEzLCAyMzYsIDEyNywgOSwgMTMsIDIzNiwgMTI2LCA5LCAxMywgMjM2LCAxMjUsIAotICAgIDksIDEzLCAyMzYsIDEyNCwgOSwgMTMsIDIzNiwgMTIzLCA5LCAxMywgMjM2LCAxMjIsIDksIDEzLCAyMzYsIDEyMSwgOSwgCi0gICAgMTMsIDIzNiwgMTIwLCA5LCAxMywgMjM2LCAxMTksIDksIDEzLCAyMzYsIDExOCwgOSwgMTMsIDIzNiwgMTE3LCA5LCAxMywgCi0gICAgMjM2LCAxMTYsIDksIDEzLCAyMzYsIDExNSwgOSwgMTMsIDIzNiwgMTE0LCA5LCAxMywgMjM2LCAxMTMsIDksIDEzLCAyMzYsIAotICAgIDExMiwgOSwgMTMsIDIzNiwgMTExLCA5LCAxMywgMjM2LCAxMTAsIDksIDEzLCAyMzYsIDEwOSwgOSwgMTMsIDIzNiwgMTA4LCAKLSAgICA5LCAxMywgMjM2LCAxMDcsIDksIDEzLCAyMzYsIDEwNiwgOSwgMTMsIDIzNiwgMTA1LCA5LCAxMywgMjM2LCAxMDQsIDksIAotICAgIDEzLCAyMzYsIDEwMywgOSwgMTMsIDIzNiwgMTAyLCA5LCAxMywgMjM2LCAxMDEsIDksIDEzLCAyMzYsIDEwMCwgOSwgMTMsIAotICAgIDIzNiwgOTksIDksIDEzLCAyMzYsIDk4LCA5LCAxMywgMjM2LCA5NywgOSwgMTMsIDIzNiwgOTYsIDksIDEzLCAyMzYsIDk1LCAKLSAgICA5LCAxMywgMjM2LCA5NCwgOSwgMTMsIDIzNiwgOTMsIDksIDEzLCAyMzYsIDkyLCA5LCAxMywgMjM2LCA5MSwgOSwgMTMsIAotICAgIDIzNiwgOTAsIDksIDEzLCAyMzYsIDg5LCA5LCAxMywgMjM2LCA4OCwgOSwgMTMsIDIzNiwgODcsIDksIDEzLCAyMzYsIDg2LCAKLSAgICA5LCAxMywgMjM2LCA4NSwgOSwgMTMsIDIzNiwgODQsIDksIDEzLCAyMzYsIDgzLCA5LCAxMywgMjM2LCA4MiwgOSwgMTMsIAotICAgIDIzNiwgODEsIDksIDEzLCAyMzYsIDgwLCA5LCAxMywgMjM2LCA3OSwgOSwgMTMsIDIzNiwgNzgsIDksIDEzLCAyMzYsIDc3LCAKLSAgICA5LCAxMywgMjM2LCA3NiwgOSwgMTMsIDIzNiwgNzUsIDksIDEzLCAyMzYsIDc0LCA5LCAxMywgMjM2LCA3MywgOSwgMTMsIAotICAgIDIzNiwgNzIsIDksIDEzLCAyMzYsIDcxLCA5LCAxMywgMjM2LCA3MCwgOSwgMTMsIDIzNiwgNjksIDksIDEzLCAyMzYsIDY4LCAKLSAgICA5LCAxMywgMjM2LCA2NywgOSwgMTMsIDIzNiwgNjYsIDksIDEzLCAyMzYsIDY1LCA5LCAxMywgMjM2LCA2NCwgOSwgMTMsIAotICAgIDIzNiwgNjMsIDksIDEzLCAyMzYsIDYyLCA5LCAxMywgMjM2LCA2MSwgOSwgMTMsIDIzNiwgNjAsIDcsIDMsIDI2LCAyNDQsIAotICAgIDk0LCA3LCAzLCAyNiwgMjQ0LCA5MCwgNywgMywgMjYsIDI0NCwgNDUsIDcsIDMsIDI2LCAyNDQsIDkzLCA3LCAzLCAyNiwgCi0gICAgMjQ0LCA5MiwgNywgMywgMjYsIDE4NCwgMjIzLCA0LCAyMTgsIDk5LCA3LCAzLCAyNiwgMjE5LCAxMDcsIDE0MSwgMywgMjYsIAotICAgIDIzMSwgMTIzLCAyMjgsIDE1MCwgMTQxLCAzLCAyNiwgMjMxLCAxMjMsIDI0NSwgMTY5LCAxNDEsIDMsIDI2LCAyMzEsIDEyMywgCi0gICAgMjM1LCAyMjQsIDE0MSwgMywgMjYsIDIxNCwgMTU3LCAyMjgsIDE1MCwgMTQxLCAzLCAyNiwgMjMxLCAxMjMsIDIxMywgMTQ4LCAKLSAgICA5MywgMSwgMjEyLCAyMjUsIDIsIDI0MSwgMTQ0LCA5MywgMjI1LCAxNDUsIDIzNSwgNTMsIDIxNCwgMjQzLCA5MywgMjYsIAotICAgIDIxMiwgMjUzLCAyMTIsIDIyNSwgMjEyLCAyMjUsIDIyNiwgMTEyLCA5MywgMSwgMjU0LCA0OCwgMjUzLCA3OCwgOTMsIDEsIAotICAgIDIxMywgMjMyLCAyNTQsIDc4LCA5MywgMSwgMjEzLCAyMzIsIDI0OCwgMTM0LCA5MywgMSwgMjEzLCAyMzIsIDI0MSwgMjIyLCAKLSAgICA5MywgMSwgMjEzLCAyMzIsIDIzNCwgMjU0LCA5MywgMSwgMjEzLCAyMzIsIDIzMywgMTE4LCA5MywgMSwgMjEzLCAyMzIsIAotICAgIDQwLCAyMzEsIDEyOSwgOTMsIDEsIDIxMywgMjMyLCAyMjMsIDIxOSwgOTMsIDEsIDIxMywgMjMyLCAyMTcsIDI0NSwgOTMsIAotICAgIDEsIDI1NCwgNDgsIDk0LCA1MiwgOTMsIDEsIDIyMCwgMjAxLCAyLCAyMjAsIDIwMSwgMjQ3LCA3NCwgOTMsIDEsIDIyMCwgCi0gICAgMjAxLCAyLCAyMjAsIDg1LCAyNDcsIDc0LCA5MywgMSwgMjIwLCAyMDEsIDIsIDI0OCwgMTUxLCAyNCwgMjIwLCAyMDEsIAotICAgIDI0NywgNzQsIDkzLCAxLCAyMjAsIDIwMSwgMiwgMjQ4LCAxNTEsIDI0LCAyMjAsIDg1LCAyNDcsIDc0LCA5MywgMSwgMTA2LCAKLSAgICAyLCAyMjYsIDExMiwgOTMsIDEsIDEwNiwgMiwgMjI0LCAyMjAsIDkzLCAxLCAxMDYsIDIsIDIzMSwgMjM0LCA5MywgMSwgCi0gICAgMjUxLCAyMDYsIDIsIDI0OCwgMTUwLCA5MywgMSwgMjQyLCAxNzgsIDIsIDI0OCwgMTUwLCA5MywgMSwgMjQ4LCAxMzUsIDIsIAotICAgIDI0OCwgMTUwLCA5MywgMSwgMjQxLCAyMjMsIDIsIDIzMSwgMjM0LCA5MywgMSwgMjE0LCAyMzcsIDIsIDI0OCwgMTUwLCA5MywgCi0gICAgMSwgMjEyLCA5MSwgMiwgMjQ4LCAxNTAsIDkzLCAxLCAyMTcsIDE4NCwgMiwgMjQ4LCAxNTAsIDkzLCAxLCAyMTIsIDIyNSwgCi0gICAgMiwgMjQ4LCAxNTAsIDkzLCAxLCA0MCwgMjM0LCAyNTUsIDIsIDI0OCwgMTUwLCA5MywgMSwgMjM0LCAyNTUsIDIsIDI0OCwgCi0gICAgMTUwLCA5MywgMSwgMjMzLCAxMTksIDIsIDI0OCwgMTUwLCA5MywgMSwgMjMxLCAxMzAsIDIsIDI0OCwgMTUwLCA5MywgMSwgCi0gICAgMjI4LCA1MSwgMiwgMjQ4LCAxNTAsIDkzLCAxLCAyMjIsIDE2NSwgMiwgMjQ4LCAxNTAsIDkzLCAxLCA0MCwgMjI2LCA5NywgCi0gICAgMiwgMjQ4LCAxNTAsIDkzLCAxLCAyMjYsIDk3LCAyLCAyNDgsIDE1MCwgOTMsIDEsIDIxNiwgMTM4LCAyLCAyNDgsIDE1MCwgCi0gICAgOTMsIDEsIDIyNCwgMTg1LCAyLCAyNDgsIDE1MCwgOTMsIDEsIDIyMywgMjIwLCAyLCAyNDgsIDE1MCwgOTMsIDEsIDIyMCwgCi0gICAgMjAxLCAyLCAyNDgsIDE1MCwgOTMsIDEsIDIxNywgMjQ2LCAyLCAyNDgsIDE1MCwgOTMsIDEsIDIxNCwgMjM3LCAyLCAyNDEsIAotICAgIDQ3LCA5MywgMSwgMjUxLCAyMDYsIDIsIDIyNCwgNTksIDkzLCAxLCAyMzQsIDI1NSwgMiwgMjI0LCA1OSwgOTMsIDEsIDIyNiwgCi0gICAgOTcsIDIsIDIyNCwgNTksIDkzLCAyNiwgMTA2LCAyMzMsIDExOCwgMTIsIDEsIDEwNiwgMjE0LCAzMSwgNDgsIDE3LCAxMiwgCi0gICAgMSwgMTA2LCAyMTQsIDMxLCA0MCwgMTcsIDEyLCAxLCAyNTEsIDI0MSwgNDgsIDE3LCAxMiwgMSwgMjUxLCAyNDEsIDQwLCAKLSAgICAxNywgMTIsIDEsIDI1MSwgMjQxLCA3MCwgMTcsIDEyLCAxLCAyNTEsIDI0MSwgMTM4LCAxNywgMTIsIDEsIDIyNiwgODEsIAotICAgIDQ4LCAxNywgMTIsIDEsIDIyNiwgODEsIDQwLCAxNywgMTIsIDEsIDIyNiwgODEsIDcwLCAxNywgMTIsIDEsIDIyNiwgODEsIAotICAgIDEzOCwgMTcsIDEyLCAxLCAyNTEsIDIyOSwgNDgsIDE3LCAxMiwgMSwgMjUxLCAyMjksIDQwLCAxNywgMTIsIDEsIDI1MSwgCi0gICAgMjI5LCA3MCwgMTcsIDEyLCAxLCAyNTEsIDIyOSwgMTM4LCAxNywgMTIsIDEsIDIxNiwgMTA4LCA0OCwgMTcsIDEyLCAxLCAKLSAgICAyMTYsIDEwOCwgNDAsIDE3LCAxMiwgMSwgMjE2LCAxMDgsIDcwLCAxNywgMTIsIDEsIDIxNiwgMTA4LCAxMzgsIDE3LCAxMiwgCi0gICAgMSwgMjE3LCAyMTQsIDQ4LCAxNywgMTIsIDEsIDIxNywgMjE0LCA0MCwgMTcsIDEyLCAxLCAyMTcsIDIxNCwgNzAsIDE3LCAKLSAgICAxMiwgMSwgMjE3LCAyMTQsIDEzOCwgMTcsIDEyLCAxLCAyMTYsIDExMCwgNDgsIDE3LCAxMiwgMSwgMjE2LCAxMTAsIDQwLCAKLSAgICAxNywgMTIsIDEsIDIxNiwgMTEwLCA3MCwgMTcsIDEyLCAxLCAyMTYsIDExMCwgMTM4LCAxNywgMTIsIDEsIDIxNCwgMjI2LCAKLSAgICA0OCwgMTcsIDEyLCAxLCAyMTQsIDIyNiwgNDAsIDE3LCAxMiwgMSwgMjE0LCAyMjYsIDcwLCAxNywgMTIsIDEsIDIxNCwgCi0gICAgMjI2LCAxMzgsIDE3LCAxMiwgMSwgMjI2LCA3OSwgNDgsIDE3LCAxMiwgMSwgMjI2LCA3OSwgNDAsIDE3LCAxMiwgMSwgMjI2LCAKLSAgICA3OSwgNzAsIDE3LCAxMiwgMSwgMjI2LCA3OSwgMTM4LCAxNywgMTIsIDEsIDI0NSwgMjU1LCA0OCwgMTcsIDEyLCAxLCAyNDUsIAotICAgIDI1NSwgNDAsIDE3LCAxMiwgMSwgMjQ1LCAyNTUsIDcwLCAxNywgMTIsIDEsIDI0NSwgMjU1LCAxMzgsIDE3LCAxMiwgMSwgCi0gICAgMjI4LCAxNSwgNDgsIDE3LCAxMiwgMSwgMjI4LCAxNSwgNDAsIDE3LCAxMiwgMSwgMjI4LCAxNSwgNzAsIDE3LCAxMiwgMSwgCi0gICAgMjI4LCAxNSwgMTM4LCAxNywgMTIsIDEsIDIxNywgMjM0LCA0OCwgMTcsIDEyLCAxLCAyMTcsIDIzNCwgNDAsIDE3LCAxMiwgCi0gICAgMSwgMjE3LCAyMzQsIDcwLCAxNywgMTIsIDEsIDIxNywgMjM0LCAxMzgsIDE3LCAxMiwgMSwgMjE3LCAyMzIsIDQ4LCAxNywgCi0gICAgMTIsIDEsIDIxNywgMjMyLCA0MCwgMTcsIDEyLCAxLCAyMTcsIDIzMiwgNzAsIDE3LCAxMiwgMSwgMjE3LCAyMzIsIDEzOCwgCi0gICAgMTcsIDEyLCAxLCAyNDgsIDg0LCA0OCwgMTcsIDEyLCAxLCAyNDgsIDg0LCA0MCwgMTcsIDEyLCAxLCAyNDgsIDE0NywgNDgsIAotICAgIDE3LCAxMiwgMSwgMjQ4LCAxNDcsIDQwLCAxNywgMTIsIDEsIDI0NiwgMjYsIDQ4LCAxNywgMTIsIDEsIDI0NiwgMjYsIDQwLCAKLSAgICAxNywgMTIsIDEsIDI0OCwgODIsIDQ4LCAxNywgMTIsIDEsIDI0OCwgODIsIDQwLCAxNywgMTIsIDEsIDIzNSwgMTIyLCA0OCwgCi0gICAgMTcsIDEyLCAxLCAyMzUsIDEyMiwgNDAsIDE3LCAxMiwgMSwgMjIzLCA3OCwgNDgsIDE3LCAxMiwgMSwgMjIzLCA3OCwgNDAsIAotICAgIDE3LCAxMiwgMSwgMjM0LCAxODEsIDQ4LCAxNywgMTIsIDEsIDIzNCwgMTgxLCA0MCwgMTcsIDEyLCAxLCAyMzQsIDE4MSwgCi0gICAgNzAsIDE3LCAxMiwgMSwgMjM0LCAxODEsIDEzOCwgMTcsIDEyLCAxLCAyNDMsIDk4LCA0OCwgMTcsIDEyLCAxLCAyNDMsIDk4LCAKLSAgICA0MCwgMTcsIDEyLCAxLCAyNDMsIDk4LCA3MCwgMTcsIDEyLCAxLCAyNDMsIDk4LCAxMzgsIDE3LCAxMiwgMSwgMjQyLCA4MywgCi0gICAgNDgsIDE3LCAxMiwgMSwgMjQyLCA4MywgNDAsIDE3LCAxMiwgMSwgMjQyLCA4MywgNzAsIDE3LCAxMiwgMSwgMjQyLCA4MywgCi0gICAgMTM4LCAxNywgMTIsIDEsIDIyOSwgODksIDQ4LCAxNywgMTIsIDEsIDIyOSwgODksIDQwLCAxNywgMTIsIDEsIDIyOSwgODksIAotICAgIDcwLCAxNywgMTIsIDEsIDIyOSwgODksIDEzOCwgMTcsIDEyLCAxLCAyMjgsIDE3NCwgMjQyLCAxOTUsIDQ4LCAxNywgMTIsIAotICAgIDEsIDIyOCwgMTc0LCAyNDIsIDE5NSwgNDAsIDE3LCAxMiwgMSwgMjIzLCAxMTYsIDQ4LCAxNywgMTIsIDEsIDIyMywgMTE2LCAKLSAgICA0MCwgMTcsIDEyLCAxLCAyMjMsIDExNiwgNzAsIDE3LCAxMiwgMSwgMjIzLCAxMTYsIDEzOCwgMTcsIDEyLCAxLCAyNDEsIAotICAgIDIwMywgMiwgNzMsIDc4LCA0OCwgMTcsIDEyLCAxLCAyNDEsIDIwMywgMiwgNzMsIDc4LCA0MCwgMTcsIDEyLCAxLCAyNDEsIAotICAgIDIwMywgMjQyLCAxNDgsIDQ4LCAxNywgMTIsIDEsIDI0MSwgMjAzLCAyNDIsIDE0OCwgNDAsIDE3LCAxMiwgMSwgMjQxLCAKLSAgICAyMDMsIDI0MiwgMTQ4LCA3MCwgMTcsIDEyLCAxLCAyNDEsIDIwMywgMjQyLCAxNDgsIDEzOCwgMTcsIDEyLCAxLCAyNDEsIAotICAgIDIwMywgMjQ3LCA5NiwgNDgsIDE3LCAxMiwgMSwgMjQxLCAyMDMsIDI0NywgOTYsIDQwLCAxNywgMTIsIDEsIDI0MSwgMjAzLCAKLSAgICAyNDcsIDk2LCA3MCwgMTcsIDEyLCAxLCAyNDEsIDIwMywgMjQ3LCA5NiwgMTM4LCAxNywgMTIsIDEsIDczLCAyNTIsIDUzLCAKLSAgICA0OCwgMTcsIDEyLCAxLCA3MywgMjUyLCA1MywgNDAsIDE3LCAxMiwgMSwgNzMsIDI1MiwgNTMsIDIsIDE5MiwgNzgsIDQ4LCAKLSAgICAxNywgMTIsIDEsIDczLCAyNTIsIDUzLCAyLCAxOTIsIDc4LCA0MCwgMTcsIDEyLCAxNiwgNjIsIDQ5LCAxMiwgMTYsIDYyLCAKLSAgICA1NSwgMTIsIDE2LCAxMTcsIDE3NiwgNDksIDEyLCAxNiwgMTE3LCAxNzYsIDU1LCAxMiwgMTYsIDEzMywgMTc2LCA0OSwgMTIsIAotICAgIDE2LCAxMzMsIDE3NiwgNTUsIDEyLCAxNiwgMTMzLCAxNzYsIDIyNSwgMTQxLCAyNDYsIDU4LCA0OSwgMTIsIDE2LCAxMzMsIAotICAgIDE3NiwgMjI1LCAxNDEsIDI0NiwgNTgsIDU1LCAxMiwgMTYsIDI0MywgMjM3LCAxNzYsIDQ5LCAxMiwgMTYsIDI0MywgMjM3LCAKLSAgICAxNzYsIDU1LCAxMiwgMTYsIDUxLCA3MSwgMjUyLCA2MCwgNTUsIDEyLCAxNiwgMTE3LCAxNzYsIDIxNCwgMTY2LCA0OSwgMTIsIAotICAgIDE2LCAxMTcsIDE3NiwgMjE0LCAxNjYsIDU1LCAxMiwgMTYsIDIyMywgMTMwLCAxMiwgMTYsIDMsIDIxOCwgMzAsIDQ5LCAxMiwgCi0gICAgMTYsIDMsIDIxOCwgMzAsIDU1LCAxMiwgMSwgMjI5LCAxNjIsIDQ4LCAxNywgMTIsIDEsIDIyOSwgMTYyLCA0MCwgMTcsIDEyLCAKLSAgICAxLCAyMjksIDE2MiwgNzAsIDE3LCAxMiwgMSwgMjI5LCAxNjIsIDEzOCwgMTcsIDEyLCAxLCAxMTEsIDQ4LCAxNywgMTIsIDEsIAotICAgIDExMSwgNDAsIDE3LCAxMiwgMSwgMjI3LCAxMDAsIDQ4LCAxNywgMTIsIDEsIDIyNywgMTAwLCA0MCwgMTcsIDEyLCAxLCAKLSAgICAyMTIsIDIwNCwgNDgsIDE3LCAxMiwgMSwgMjEyLCAyMDQsIDQwLCAxNywgMTIsIDEsIDExMSwgMiwgMTkyLCA3OCwgNDgsIAotICAgIDE3LCAxMiwgMSwgMjE0LCAyMzMsIDQ4LCAxNywgMTIsIDEsIDIxNCwgMjMzLCA0MCwgMTcsIDEyLCAxLCAyMzQsIDgyLCAKLSAgICAyMjcsIDEwMCwgNDgsIDE3LCAxMiwgMSwgMjM0LCA4MiwgMjI3LCAxMDAsIDQwLCAxNywgMTIsIDEsIDIzNCwgODIsIDIxMiwgCi0gICAgMjA0LCA0OCwgMTcsIDEyLCAxLCAyMzQsIDgyLCAyMTIsIDIwNCwgNDAsIDE3LCAxMiwgMSwgMTkxLCA0OCwgMTcsIDEyLCAxLCAKLSAgICAxOTEsIDQwLCAxNywgMTIsIDEsIDE5MSwgNzAsIDE3LCAxMiwgMSwgMTkxLCAxMzgsIDE3LCAxMiwgMSwgMjE1LCAxNzcsIAotICAgIDIzNCwgMTkyLCAyMzQsIDgyLCAxMDYsIDIxMCwgNzAsIDE3LCAxMiwgMSwgMjE1LCAxNzcsIDIzNCwgMTkyLCAyMzQsIDgyLCAKLSAgICAxMDYsIDIxMCwgMTM4LCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMTA2LCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIAotICAgIDE5MiwgNzgsIDIsIDEwNiwgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyNTQsIDE0OSwgNDgsIDE3LCAxMiwgCi0gICAgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyNTQsIDE0OSwgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyMTQsIAotICAgIDE1LCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDIxNCwgMTUsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgCi0gICAgMTkyLCA3OCwgMiwgMTExLCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDExMSwgNDAsIDE3LCAxMiwgMjYsIAotICAgIDczLCAyLCAxOTIsIDc4LCAyLCAyMjcsIDEwMCwgNDgsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyMjcsIDEwMCwgCi0gICAgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyMTIsIDIwNCwgNDgsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIAotICAgIDc4LCAyLCAyMTIsIDIwNCwgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAxOTEsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICA3MywgMiwgMTkyLCA3OCwgMiwgMTkxLCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDE5MSwgNzAsIDE3LCAKLSAgICAxMiwgMjYsIDIxNSwgMTc3LCAyMzQsIDgyLCA3MywgMiwgMTkyLCA3OCwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICAyMTUsIDE3NywgMjM0LCA4MiwgNzMsIDIsIDE5MiwgNzgsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjE1LCAxNzcsIAotICAgIDIzNCwgODIsIDczLCAyLCAxOTIsIDc4LCAyLCAxMDYsIDIxMCwgNzAsIDE3LCAxMiwgMSwgMjQ0LCAxMzYsIDczLCA0OCwgCi0gICAgMTcsIDEyLCAxLCAyNDQsIDEzNiwgNzMsIDQwLCAxNywgMTIsIDEsIDI0NCwgMTM2LCA3MywgNzAsIDE3LCAxMiwgMSwgMjQ0LCAKLSAgICAxMzYsIDczLCAxMzgsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgCi0gICAgMTkyLCA3OCwgMiwgMTIxLCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgCi0gICAgNzMsIDIsIDE5MiwgNzgsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDczLCA0OCwgCi0gICAgMTcsIDEyLCAyNiwgMjUxLCAyMzEsIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCAxMjEsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCAyNTEsIDIzMSwgMiwgMjM0LCAxMzYsIDQ4LCAxNywgMTIsIDI2LCAyNTEsIDIzMSwgMiwgNjMsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCAyNTEsIDIzMSwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgMTIsIDI2LCAyNTEsIDIzMSwgMiwgNzMsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCAyMTcsIDIxNiwgMiwgMTQ1LCA0OCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDEyMSwgNDgsIDE3LCAxMiwgCi0gICAgMjYsIDIxNywgMjE2LCAyLCAyMzQsIDEzNiwgNDgsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCA2MywgNDgsIDE3LCAxMiwgCi0gICAgMjYsIDIxNywgMjE2LCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCA3MywgNDgsIDE3LCAxMiwgCi0gICAgMjYsIDIxNywgMTQ2LCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCAyMTcsIDE0NiwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICAyMTcsIDE0NiwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgMTIsIDI2LCAyMTcsIDE0NiwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICAxNDUsIDIsIDEyMSwgNDgsIDE3LCAxMiwgMjYsIDE0NSwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAxMjEsIDIsIDE0NSwgNDgsIAotICAgIDE3LCAxMiwgMjYsIDEyMSwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyMzQsIDEzNiwgMiwgMTQ1LCA0OCwgMTcsIDEyLCAyNiwgCi0gICAgMjM0LCAxMzYsIDIsIDEyMSwgNDgsIDE3LCAxMiwgMjYsIDIzNCwgMTM2LCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDIyMiwgCi0gICAgODYsIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDEyMSwgNDgsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIAotICAgIDIzNCwgMTM2LCA0OCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgCi0gICAgMTIxLCA0OCwgMTcsIDEyLCAyNiwgMjIyLCAxOTYsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgMjQ4LCAxNjAsIDIsIDE0NSwgCi0gICAgNDgsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCAxMjEsIDQ4LCAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgMjM0LCAxMzYsIAotICAgIDQ4LCAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyMTgsIDMwLCAyLCAxMjEsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCAyMTgsIDMwLCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDIxMiwgMTA1LCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIAotICAgIDI1NCwgMTA0LCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCAyNTQsIDEwNCwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyNDIsIAotICAgIDIyMSwgMiwgMTQ1LCA0OCwgMTcsIDEyLCAyNiwgMjQyLCAyMjEsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgMjQ0LCAxMTIsIAotICAgIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAyLCAxMjEsIDQ4LCAxNywgMTIsIDI2LCAyNDQsIDExMiwgMiwgCi0gICAgMjM0LCAxMzYsIDQ4LCAxNywgMTIsIDI2LCAyNDQsIDExMiwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyNDQsIDExMiwgMiwgCi0gICAgMTA2LCAyMTAsIDQ4LCAxNywgMTIsIDI2LCAyNDQsIDExMiwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAyMjQsIDIyNiwgMiwgCi0gICAgMTIxLCA0OCwgMTcsIDEyLCAyNiwgMjI0LCAyMjYsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgMjI0LCAyMjYsIDIsIDEwNiwgCi0gICAgMjEwLCA0OCwgMTcsIDEyLCAyNiwgMjI0LCAyMjYsIDIsIDczLCA0OCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDEwNiwgCi0gICAgNDgsIDE3LCAxMiwgMjYsIDIzNCwgMjU1LCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMTIxLCA0OCwgCi0gICAgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDIzNCwgMTM2LCA0OCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDIzMywgMTI3LCAKLSAgICA0OCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDEwNiwgMjEwLCAKLSAgICA0OCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDczLCA0OCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDE0NSwgNDgsIAotICAgIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxMjEsIDQ4LCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMjM0LCAxMzYsIDQ4LCAKLSAgICAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTA2LCAyMTAsIDQ4LCAKLSAgICAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCA2MywgMiwgMTQ1LCA0OCwgMTcsIDEyLCAyNiwgCi0gICAgNjMsIDIsIDEyMSwgNDgsIDE3LCAxMiwgMjYsIDYzLCAyLCAyMzQsIDEzNiwgNDgsIDE3LCAxMiwgMjYsIDYzLCAyLCA2MywgCi0gICAgNDgsIDE3LCAxMiwgMjYsIDYzLCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIDYzLCAyLCA3MywgNDgsIDE3LCAxMiwgCi0gICAgMjYsIDIyOCwgMTc0LCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgMTIxLCA0OCwgMTcsIDEyLCAyNiwgCi0gICAgMjI4LCAxNzQsIDIsIDIzNCwgMTM2LCA0OCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgCi0gICAgMjI4LCAxNzQsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDczLCA0OCwgMTcsIDEyLCAyNiwgCi0gICAgMjQxLCAyMDMsIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDI0MSwgMjAzLCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDI0MSwgCi0gICAgMjAzLCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIDI0MSwgMjAzLCAyLCA3MywgNDgsIDE3LCAxMiwgMjYsIDczLCAyLCAKLSAgICAxNDUsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgMTIxLCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIDIzNCwgMTM2LCA0OCwgMTcsIAotICAgIDEyLCAyNiwgNzMsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgNzMsIAotICAgIDIsIDczLCA0OCwgMTcsIDEyLCAyNiwgMjE3LCAxNTYsIDIsIDIxOCwgMjIzLCAxMDYsIDQ4LCAxNywgMTIsIDI2LCAyMjMsIAotICAgIDI0NiwgMiwgMjE4LCAyMjMsIDEwNiwgNDgsIDE3LCAxMiwgMjYsIDEwNiwgMjEwLCAyLCAyMTgsIDIyMywgMTA2LCA0OCwgCi0gICAgMTcsIDEyLCAyNiwgMjIxLCAxNiwgMiwgMjQ4LCAxMjgsIDQ4LCAxNywgMTIsIDI2LCAyMjEsIDE2LCAyLCAyMzQsIDIwOSwgCi0gICAgNDgsIDE3LCAxMiwgMjYsIDIyMSwgMTYsIDIsIDI0NCwgMTM0LCA0OCwgMTcsIDEyLCAyNiwgMjIxLCAxNiwgMiwgMjQ4LCAKLSAgICAxMzAsIDQ4LCAxNywgMTIsIDI2LCAyMjEsIDE2LCAyLCAyMzQsIDIxMSwgNDgsIDE3LCAxMiwgMjYsIDIyMSwgMTYsIDIsIAotICAgIDIxOCwgMjIzLCAxMDYsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMjIzLCAyNDYsIDQwLCAxNywgMTIsIAotICAgIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMjEyLCAxMDIsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgNjMsIAotICAgIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMjI4LCAxNzQsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCAKLSAgICA3OCwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAKLSAgICAyNTEsIDIzMSwgMiwgMjIzLCAyNDYsIDQwLCAxNywgMTIsIDI2LCAyNTEsIDIzMSwgMiwgMjEyLCAxMDIsIDQwLCAxNywgMTIsIAotICAgIDI2LCAyNTEsIDIzMSwgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyNTEsIDIzMSwgMiwgMjI4LCAxNzQsIDQwLCAxNywgMTIsIAotICAgIDI2LCAyNTEsIDIzMSwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyNTEsIDIzMSwgMiwgNzMsIDQwLCAxNywgMTIsIAotICAgIDI2LCAyMTcsIDIxNiwgMiwgMjIzLCAyNDYsIDQwLCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgMjEyLCAxMDIsIDQwLCAxNywgCi0gICAgMTIsIDI2LCAyMTcsIDIxNiwgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgMjI4LCAxNzQsIDQwLCAxNywgCi0gICAgMTIsIDI2LCAyMTcsIDIxNiwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgNzMsIDQwLCAxNywgCi0gICAgMTIsIDI2LCAyMTcsIDE0NiwgMiwgMjIzLCAyNDYsIDQwLCAxNywgMTIsIDI2LCAyMTcsIDE0NiwgMiwgMjEyLCAxMDIsIDQwLCAKLSAgICAxNywgMTIsIDI2LCAyMTcsIDE0NiwgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyMTcsIDE0NiwgMiwgMjI4LCAxNzQsIDQwLCAKLSAgICAxNywgMTIsIDI2LCAyMTcsIDE0NiwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMTcsIDE0NiwgMiwgNzMsIDQwLCAKLSAgICAxNywgMTIsIDI2LCAyNDQsIDExMiwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyNDQsIDExMiwgMiwgNzMsIDQwLCAKLSAgICAxNywgMTIsIDI2LCAyMjQsIDIyNiwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMjQsIDIyNiwgMiwgNzMsIDQwLCAKLSAgICAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMTA2LCA0MCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDIzMywgMTI3LCA0MCwgCi0gICAgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDEwNiwgMjEwLCA0MCwgCi0gICAgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDYzLCA0MCwgMTcsIDEyLCAKLSAgICAyNiwgMjMzLCAxMjcsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDczLCA0MCwgMTcsIDEyLCAKLSAgICAyNiwgNjMsIDIsIDEwNiwgNDAsIDE3LCAxMiwgMjYsIDYzLCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAKLSAgICAyMjMsIDI0NiwgNDAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAyMTIsIDEwMiwgNDAsIDE3LCAxMiwgMjYsIDIyOCwgCi0gICAgMTc0LCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAyMjgsIDE3NCwgNDAsIDE3LCAxMiwgMjYsIDIyOCwgCi0gICAgMTc0LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDEwNiwgCi0gICAgMjEwLCAyLCAyMTgsIDIyMywgMTA2LCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDIyMywgMjQ2LCA0MCwgMTcsIDEyLCAyNiwgCi0gICAgNzMsIDIsIDIxMiwgMTAyLCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDIyOCwgCi0gICAgMTc0LCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDczLCA0MCwgMTcsIAotICAgIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAxMjEsIAotICAgIDcwLCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCAKLSAgICA3OCwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMjQxLCAyMDMsIDcwLCAxNywgMTIsIDI2LCAKLSAgICAyNTEsIDIzMSwgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjUxLCAyMzEsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDI1MSwgCi0gICAgMjMxLCAyLCAyMzQsIDEzNiwgNzAsIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDI1MSwgCi0gICAgMjMxLCAyLCAyNDEsIDIwMywgNzAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCAyMTcsIAotICAgIDIxNiwgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDIzNCwgMTM2LCA3MCwgMTcsIDEyLCAyNiwgMjE3LCAKLSAgICAyMTYsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDI0MSwgMjAzLCA3MCwgMTcsIDEyLCAyNiwgMjE3LCAKLSAgICAxNDYsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMTQ1LCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAxNDUsIDIsIDYzLCA3MCwgCi0gICAgMTcsIDEyLCAyNiwgMTIxLCAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCAxMjEsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjM0LCAKLSAgICAxMzYsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDIzNCwgMTM2LCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIAotICAgIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDIzNCwgCi0gICAgMTM2LCA3MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgMTIxLCAKLSAgICA3MCwgMTcsIDEyLCAyNiwgMjIyLCAxOTYsIDIsIDIzNCwgMTM2LCA3MCwgMTcsIDEyLCAyNiwgMjIyLCAxOTYsIDIsIDYzLCAKLSAgICA3MCwgMTcsIDEyLCAyNiwgMjQ4LCAxNjAsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCAxMjEsIDcwLCAKLSAgICAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgNjMsIDcwLCAKLSAgICAxNywgMTIsIDI2LCAyMTgsIDMwLCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAyMTIsIDEwNSwgMiwgNjMsIDcwLCAxNywgMTIsIAotICAgIDI2LCAyNTQsIDEwNCwgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjU0LCAxMDQsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgCi0gICAgMjQyLCAyMjEsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDI0MiwgMjIxLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDI0NCwgCi0gICAgMTEyLCAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCAyNDQsIDExMiwgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMjQ0LCAxMTIsIAotICAgIDIsIDIzNCwgMTM2LCA3MCwgMTcsIDEyLCAyNiwgMjQ0LCAxMTIsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjI0LCAyMjYsIAotICAgIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDIyNCwgMjI2LCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIzNCwgMjU1LCAyLCAKLSAgICAxNDUsIDcwLCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDIzNCwgCi0gICAgMTM2LCA3MCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDIzMywgMTI3LCA3MCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIAotICAgIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxMjEsIAotICAgIDcwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgNjMsIAotICAgIDcwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMjQxLCAyMDMsIDcwLCAxNywgMTIsIDI2LCA2MywgMiwgMTQ1LCA3MCwgCi0gICAgMTcsIDEyLCAyNiwgNjMsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDYzLCAyLCAyMzQsIDEzNiwgNzAsIDE3LCAxMiwgMjYsIAotICAgIDYzLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgCi0gICAgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDIzNCwgMTM2LCA3MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIAotICAgIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDI0MSwgMjAzLCA3MCwgMTcsIDEyLCAyNiwgMjQxLCAyMDMsIDIsIAotICAgIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDI0MSwgMjAzLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDI0MSwgMjAzLCAyLCAyMTgsIAotICAgIDIyMywgMTA2LCA3MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDczLCAyLCAxMjEsIDcwLCAxNywgCi0gICAgMTIsIDI2LCA3MywgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCA3MywgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCA3MywgCi0gICAgMiwgMjQxLCAyMDMsIDcwLCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgNjMsIDEzOCwgMTcsIDEyLCAyNiwgNzMsIAotICAgIDIsIDE5MiwgNzgsIDIsIDI0MSwgMjAzLCAxMzgsIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCA2MywgMTM4LCAxNywgMTIsIAotICAgIDI2LCAyNTEsIDIzMSwgMiwgMjQxLCAyMDMsIDEzOCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDYzLCAxMzgsIDE3LCAxMiwgCi0gICAgMjYsIDIxNywgMjE2LCAyLCAyNDEsIDIwMywgMTM4LCAxNywgMTIsIDI2LCAyMTcsIDE0NiwgMiwgNjMsIDEzOCwgMTcsIDEyLCAKLSAgICAyNiwgMjE3LCAxNDYsIDIsIDI0MSwgMjAzLCAxMzgsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDYzLCAxMzgsIDE3LCAxMiwgCi0gICAgMjYsIDIyMiwgODYsIDIsIDI0MSwgMjAzLCAxMzgsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCA2MywgMTM4LCAxNywgMTIsIAotICAgIDI2LCAyMjAsIDI0MCwgMiwgMjQxLCAyMDMsIDEzOCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDIzMywgMTI3LCAxMzgsIAotICAgIDE3LCAxMiwgMjYsIDIzNCwgMjU1LCAyLCA2MywgMTM4LCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgNjMsIDEzOCwgMTcsIAotICAgIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDYzLCAxMzgsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAyNDEsIDIwMywgMTM4LCAxNywgCi0gICAgMTIsIDI2LCA3MywgMiwgNjMsIDEzOCwgMTcsIDEyLCAyNiwgNzMsIDIsIDI0MSwgMjAzLCAxMzgsIDE3LCAxMiwgMjYsIAotICAgIDIyMSwgMTYsIDIsIDI0NCwgMTM0LCAxMzgsIDE3LCAxMiwgMjYsIDIyMSwgMTYsIDIsIDI0OCwgMTMwLCAxMzgsIDE3LCAxMiwgCi0gICAgMjYsIDIyMSwgMTYsIDIsIDIzNCwgMjExLCAxMzgsIDE3LCAxMiwgMjYsIDIxOCwgMzAsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIAotICAgIDEyLCAyNiwgMjE4LCAzMCwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAyNTQsIDEwNCwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCAyNTQsIDEwNCwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAyNDIsIDIyMSwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCAyNDIsIDIyMSwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAKLSAgICAxMiwgMjYsIDIyMiwgODYsIDIsIDczLCA0OCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIAotICAgIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDczLCA0OCwgMTcsIDEyLCAyNiwgMTIxLCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgCi0gICAgMjYsIDEyMSwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAxNDUsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgMTQ1LCAyLCAKLSAgICA3MywgNDgsIDE3LCAxMiwgMjYsIDIzNCwgMTM2LCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIDIzNCwgMTM2LCAyLCAKLSAgICA3MywgNDgsIDE3LCAxMiwgMjYsIDIyMiwgMTk2LCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIDIyMiwgMTk2LCAyLCAKLSAgICA3MywgNDgsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCAKLSAgICA3MywgNDgsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCAyMjAsIDI0MCwgMiwgMTIxLCAKLSAgICA0OCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDIzNCwgMTM2LCA0OCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDYzLCAKLSAgICA0OCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDIyMywgMjQ2LCA0OCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgMjIzLCAKLSAgICAyNDYsIDQ4LCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgMjIzLCAyNDYsIDQ4LCAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgCi0gICAgMjIzLCAyNDYsIDQ4LCAxNywgMTIsIDI2LCAyMTgsIDMwLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIxOCwgMzAsIAotICAgIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjU0LCAxMDQsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjU0LCAxMDQsIAotICAgIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjQyLCAyMjEsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjQyLCAyMjEsIAotICAgIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCAKLSAgICA3MywgNDAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCAKLSAgICA3MywgNDAsIDE3LCAxMiwgMjYsIDEyMSwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAxMjEsIDIsIDczLCA0MCwgMTcsIAotICAgIDEyLCAyNiwgMTQ1LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDE0NSwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAKLSAgICAyMzQsIDEzNiwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMzQsIDEzNiwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAKLSAgICAyMjIsIDE5NiwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAKLSAgICAyNDgsIDE2MCwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAKLSAgICAyMjAsIDI0MCwgMiwgMTQ1LCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDEyMSwgNDAsIDE3LCAxMiwgMjYsIDIyMCwgCi0gICAgMjQwLCAyLCAyMzQsIDEzNiwgNDAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDIyMCwgCi0gICAgMjQwLCAyLCAyMjMsIDI0NiwgNDAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDIyMywgMjQ2LCA0MCwgMTcsIDEyLCAyNiwgCi0gICAgMjIyLCAxOTYsIDIsIDIyMywgMjQ2LCA0MCwgMTcsIDEyLCAyNiwgMjQ4LCAxNjAsIDIsIDIyMywgMjQ2LCA0MCwgMTcsIDEyLCAKLSAgICAyNiwgMjIwLCAyNDAsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAKLSAgICAyMjAsIDI0MCwgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAyMjAsIDI0MCwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAKLSAgICAyMjIsIDg2LCAyLCAyNDEsIDIwMywgNzAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCAyNDEsIDIwMywgNzAsIDE3LCAxMiwgCi0gICAgMjYsIDIxOCwgMzAsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgMTQ1LCAxMzgsIDE3LCAxMiwgMjYsIAotICAgIDIyMiwgODYsIDIsIDEyMSwgMTM4LCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCAyMzQsIDEzNiwgMTM4LCAxNywgMTIsIDI2LCAKLSAgICAyMjAsIDI0MCwgMiwgMTQ1LCAxMzgsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCAxMjEsIDEzOCwgMTcsIDEyLCAyNiwgCi0gICAgMjIwLCAyNDAsIDIsIDIzNCwgMTM2LCAxMzgsIDE3LCAxMiwgMjYsIDIxOCwgMzAsIDIsIDYzLCAxMzgsIDE3LCAxMiwgMjYsIAotICAgIDIxMiwgMTA1LCAyLCA2MywgMTM4LCAxNywgMTIsIDI2LCAxMDYsIDIsIDI0NCwgMTMyLCA0MCwgMTcsIDEyLCAyNiwgMTA2LCAKLSAgICAyLCAyNDQsIDEzMiwgNDgsIDE3LCAyMjcsIDEzLCA0MiwgMjI2LCAxMzEsIDIyNywgMTMsIDQ2LCAyMjYsIDEzMSwgMTIsIAotICAgIDI2LCAyMTcsIDIxNiwgMiwgMTQ1LCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCAxMjEsIDIsIDE0NSwgCi0gICAgNDAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCAxMjEsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCAKLSAgICAxMjEsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDIzNCwgMTM2LCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIAotICAgIDIxNywgMjE2LCAyLCA2MywgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDYzLCAyLCAxMjEsIDcwLCAxNywgCi0gICAgMTIsIDI2LCAyMTcsIDIxNiwgMiwgNjMsIDIsIDIzNCwgMTM2LCA3MCwgMTcsIDEyLCAyNiwgMTQ1LCAyLCA2MywgMiwgMTIxLCAKLSAgICA0MCwgMTcsIDEyLCAyNiwgMTQ1LCAyLCA2MywgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMTIxLCAyLCA2MywgMiwgNzMsIAotICAgIDQwLCAxNywgMTIsIDI2LCAxMjEsIDIsIDYzLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDEyMSwgCi0gICAgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgMTQ1LCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAKLSAgICAyLCAxNDUsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgNjMsIDIsIDEyMSwgNDAsIDE3LCAxMiwgCi0gICAgMjYsIDIyMiwgODYsIDIsIDYzLCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCA2MywgMiwgMTQ1LCA3MCwgCi0gICAgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgNjMsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgNjMsIDIsIDYzLCAKLSAgICA3MCwgMTcsIDEyLCAyNiwgMjIyLCAxOTYsIDIsIDEyMSwgMiwgMTIxLCA0MCwgMTcsIDEyLCAyNiwgMjIyLCAxOTYsIDIsIAotICAgIDEyMSwgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMjIyLCAxOTYsIDIsIDYzLCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDIyMCwgCi0gICAgMjQwLCAyLCAxMjEsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDEyMSwgMiwgNjMsIDcwLCAxNywgMTIsIAotICAgIDI2LCAyMjAsIDI0MCwgMiwgMTQ1LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCA2MywgMiwgMjM0LCAKLSAgICAxMzYsIDQwLCAxNywgMTIsIDI2LCAyMjAsIDI0MCwgMiwgNjMsIDIsIDIzNCwgMTM2LCA3MCwgMTcsIDEyLCAyNiwgMjIwLCAKLSAgICAyNDAsIDIsIDYzLCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCA2MywgMiwgNjMsIDcwLCAxNywgMTIsIAotICAgIDI2LCAyNDgsIDE2MCwgMiwgMTIxLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCAyMzQsIDEzNiwgCi0gICAgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgMjM0LCAxMzYsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjE4LCAKLSAgICAzMCwgMiwgNjMsIDIsIDEyMSwgNDAsIDE3LCAxMiwgMjYsIDIxOCwgMzAsIDIsIDYzLCAyLCAxMjEsIDcwLCAxNywgMTIsIAotICAgIDI2LCAyMTgsIDMwLCAyLCA2MywgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMTgsIDMwLCAyLCA2MywgMiwgNzMsIDQwLCAxNywgCi0gICAgMTIsIDI2LCAyNTQsIDEwNCwgMiwgMTQ1LCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDI1NCwgMTA0LCAyLCA2MywgMiwgNjMsIAotICAgIDQwLCAxNywgMTIsIDI2LCAyNTQsIDEwNCwgMiwgNjMsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjU0LCAxMDQsIDIsIDYzLCAKLSAgICAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDI0MiwgMjIxLCAyLCA2MywgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyNDIsIAotICAgIDIyMSwgMiwgNjMsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjQyLCAyMjEsIDIsIDYzLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAKLSAgICAxMiwgMjYsIDI0NCwgMTEyLCAyLCAyMzQsIDEzNiwgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyNDQsIDExMiwgMiwgMjM0LCAKLSAgICAxMzYsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjI0LCAyMjYsIDIsIDYzLCAyLCAxMjEsIDQwLCAxNywgMTIsIDI2LCAyMjQsIAotICAgIDIyNiwgMiwgNjMsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDEyMSwgMiwgNjMsIDQwLCAxNywgMTIsIAotICAgIDI2LCAyMzMsIDEyNywgMiwgMTIxLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxMjEsIDIsIDEwNiwgCi0gICAgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDE0NSwgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIAotICAgIDIsIDE0NSwgMiwgMTQ1LCA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDIzNCwgMTM2LCAyLCA2MywgNDAsIDE3LCAxMiwgCi0gICAgMjYsIDIzMywgMTI3LCAyLCAyMzQsIDEzNiwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgNjMsIDIsIAotICAgIDEyMSwgNDAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCA2MywgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgNjMsIDIsIDEyMSwgCi0gICAgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgNjMsIDIsIDEyMSwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCA2MywgMiwgMTIxLCAyLCAKLSAgICA3MywgNDAsIDE3LCAxMiwgMjYsIDYzLCAyLCAxNDUsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDYzLCAyLCAxNDUsIDIsIAotICAgIDYzLCA3MCwgMTcsIDEyLCAyNiwgNjMsIDIsIDIzNCwgMTM2LCAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCA2MywgMiwgMjM0LCAKLSAgICAxMzYsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgNjMsIDIsIDE0NSwgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAyNDEsIAotICAgIDIwMywgMiwgNjMsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDI0MSwgMjAzLCAyLCA2MywgMiwgNjMsIDcwLCAxNywgMTIsIAotICAgIDI2LCAyMjgsIDE3NCwgMiwgMTIxLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAxMjEsIDIsIDEwNiwgCi0gICAgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDE0NSwgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgCi0gICAgMiwgMTQ1LCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAxNDUsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAKLSAgICAyNiwgMjI4LCAxNzQsIDIsIDYzLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCA2MywgMiwgMTA2LCAyMTAsIAotICAgIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgNjMsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDYzLCAyLCA2MywgNzAsIAotICAgIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCAyMzQsIDEzNiwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgCi0gICAgMTQ1LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCAxNDUsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAKLSAgICAyNiwgMjE3LCAyMTYsIDIsIDIzNCwgMTM2LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCAyMzQsIDEzNiwgCi0gICAgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgNjMsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjE3LCAKLSAgICAyMTYsIDIsIDYzLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDE0NSwgMiwgNjMsIDIsIDczLCA0MCwgMTcsIDEyLCAKLSAgICAyNiwgMTQ1LCAyLCAxMjEsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMTQ1LCAyLCA2MywgMiwgMTA2LCAyMTAsIAotICAgIDQwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCAyMzQsIDEzNiwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMjIsIAotICAgIDE5NiwgMiwgMTIxLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCAxMjEsIDIsIDczLCA0MCwgMTcsIDEyLCAKLSAgICAyNiwgMjQ4LCAxNjAsIDIsIDEyMSwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTQ1LCAyLCA3MywgNDAsIAotICAgIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCA2MywgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgMTIxLCAyLCA3MywgCi0gICAgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxNDUsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDYzLCAyLCA3MywgNDAsIAotICAgIDE3LCAxMiwgMjYsIDYzLCAyLCA2MywgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyMjQsIDIyNiwgMiwgNjMsIDIsIDczLCA0MCwgCi0gICAgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDEyMSwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyMjQsIDIyNiwgMiwgNjMsIDIsIAotICAgIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxMjEsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjU0LCAxMDQsIAotICAgIDIsIDYzLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIzNCwgMjU1LCAyLCA2MywgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAKLSAgICAyMjgsIDE3NCwgMiwgMTQ1LCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCA2MywgMiwgMjM0LCAxMzYsIDIsIDczLCA0MCwgMTcsIAotICAgIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDE0NSwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgNjMsIDIsIDYzLCAKLSAgICA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDE0NSwgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgCi0gICAgMTQ1LCAyLCAxMjEsIDQwLCAxNywgMTIsIDI2LCAxNDUsIDIsIDEyMSwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAxMjEsIDIsIAotICAgIDE0NSwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCA2MywgMiwgMTQ1LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAKLSAgICAyLCA2MywgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyNTEsIDIzMSwgMiwgMTIxLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIAotICAgIDIzNCwgMjU1LCAyLCA2MywgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyNTQsIDEwNCwgMiwgMTQ1LCAyLCA2MywgNzAsIDE3LCAKLSAgICAxMiwgMjYsIDIyMiwgMTk2LCAyLCA2MywgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCAyMzQsIDEzNiwgMiwgCi0gICAgNzMsIDQwLCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgMTQ1LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIyMiwgMTc1LCAKLSAgICAyMTUsIDEwMiwgMjUzLCAxNTMsIDIzNCwgMTMsIDIxOSwgNzAsIDUsIDQ4LCAxNywgMTIsIDI2LCAyMjQsIDIyMiwgMjE1LCAKLSAgICAxMDIsIDI1MywgMTUzLCAyMzQsIDEzLCAyMTksIDcwLCA1LCA0OCwgMTcsIDEyLCAyNiwgMjU0LCA2MiwgNDgsIDE3LCAxMiwgCi0gICAgMjYsIDI1NCwgOTEsIDQ4LCAxNywgMTIsIDI2LCAyMzAsIDIyMywgNDgsIDE3LCAxMiwgMjYsIDIyMiwgMTc2LCA0OCwgMTcsIAotICAgIDEyLCAyNiwgMjI0LCAzNSwgNDgsIDE3LCAxMiwgMjYsIDI1NCwgODAsIDQ4LCAxNywgMTIsIDI2LCAyMTQsIDMzLCA0OCwgCi0gICAgMTcsIDEyLCAyNiwgMjIyLCAxNzUsIDQ4LCAxNywgMTIsIDI2LCAyMjIsIDE3NCwgMjU0LCA4MCwgMjE0LCAzMiwgMTIsIDI2LCAKLSAgICAyMzUsIDEzNCwgMjIzLCAxODcsIDUyLCAxMiwgMjYsIDI1MSwgMTUzLCAyNTMsIDIwOSwgMjUzLCAyMTAsIDQzLCAyMjIsIAotICAgIDc2LCA0MywgMjIxLCAyMjEsIDQzLCAyMjEsIDE1MywgNDMsIDIyMSwgMTQyLCA0MywgMjIxLCAxMzEsIDQzLCAyMjEsIDEyMCwgCi0gICAgNDMsIDIyMSwgMTA5LCA0MywgMjIxLCA5OCwgNDMsIDIyMSwgODcsIDQzLCAyMjIsIDc1LCA0MywgMjIyLCA2NCwgNDMsIAotICAgIDIyMiwgNTMsIDQzLCAyMjIsIDQyLCA0MywgMjIyLCAzMSwgNDMsIDIyMiwgMjAsIDQzLCAyMjIsIDksIDIyNSwgNzQsIDI0MywgCi0gICAgMjQ1LCAzMSwgNzEsIDI0OSwgMTU3LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCAxMDUsIDI0OSwgMTU3LCAyMjUsIDc0LCAKLSAgICAyNDMsIDI0NSwgMzEsIDcxLCAxMDUsIDI0MywgMjAwLCAyMTksIDY5LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCAyNDksIAotICAgIDE2NCwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgMjIxLCA3MCwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgMjQ0LCAKLSAgICAyNTQsIDc3LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCAyMjQsIDE1OCwgNzcsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgCi0gICAgNzEsIDQyLCA2NywgMjMzLCA0NCwgMTI1LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0NiwgNjcsIDIzMywgNDQsIAotICAgIDI1MSwgODMsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDE5OSwgMjQ1LCAxMjAsIDM3LCAyNiwgNDIsIDI0MiwgOSwgCi0gICAgMzcsIDI2LCA0NiwgMjQyLCA5LCAzNywgNTEsIDIxNywgNDMsIDQyLCAyNDIsIDksIDM3LCA1MSwgMjE3LCA0MywgNDYsIAotICAgIDI0MiwgOSwgMzcsIDIzMiwgMzgsIDQyLCAyNDIsIDksIDM3LCAyMzIsIDM4LCA0NiwgMjQyLCA5LCAzNywgMjQ5LCAxMzcsIAotICAgIDIzMiwgMzcsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDExNywgNjIsIDIzMywgODAsIDIyNSwgNzQsIDI0MywgMjQ1LCAKLSAgICAzMSwgNzEsIDI0NSwgMTE4LCAyNDgsIDEwMSwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgMjQ1LCAxMDksIDI0OCwgCi0gICAgMTAxLCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCAxMTUsIDIzMiwgMjQyLCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCAKLSAgICAyMTQsIDE2LCAxMTUsIDIzMiwgMjQyLCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0MiwgMjI2LCAxMzEsIDIyNSwgNzQsIAotICAgIDI0MywgMjQ1LCAzMSwgNzEsIDQ2LCAyMjYsIDEzMSwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgNDIsIDI0OSwgNDAsIAotICAgIDEyNSwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgNDYsIDI0OSwgNDAsIDEyNSwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCAKLSAgICA3MSwgNDIsIDIxNiwgMjE5LCAyMjAsIDIzMywgMTI1LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0NiwgMjE2LCAyMTksIAotICAgIDIyMCwgMjMzLCAxMjUsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQyLCA4MywgMjMzLCA0NCwgMTI1LCAyMjUsIDc0LCAKLSAgICAyNDMsIDI0NSwgMzEsIDcxLCA0NiwgODMsIDIzMywgNDQsIDEyNSwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgNDIsIAotICAgIDUxLCAyNTQsIDE5LCAxMjUsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQ2LCA1MSwgMjU0LCAxOSwgMTI1LCAyMjUsIAotICAgIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0MiwgMjU0LCAxOSwgMTI1LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0NiwgCi0gICAgMjU0LCAxOSwgMTI1LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0MiwgMjQ5LCAxMDAsIDEyNSwgMjI1LCA3NCwgMjQzLCAKLSAgICAyNDUsIDMxLCA3MSwgNDYsIDI0OSwgMTAwLCAxMjUsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQyLCA2NywgMjQ5LCAKLSAgICAxMDAsIDEyNSwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgNDYsIDY3LCAyNDksIDEwMCwgMTI1LCAyMjEsIDUyLCAyNDcsIAotICAgIDc0LCA2NywgMjIxLCA1MiwgMjQ3LCA3NCwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgNDIsIDQxLCAxMjUsIDIyNSwgCi0gICAgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQ2LCA0MSwgMTI1LCAyNDgsIDEwMCwgMjI2LCAyNDMsIDI1MCwgMTA2LCAyMjYsIAotICAgIDI0MywgMjE0LCAxNiwgMjI2LCAyNDMsIDUxLCAyMTQsIDE2LCAyMjYsIDI0MywgMjQ4LCAxMDAsIDExNSwgMjMyLCAyNDIsIAotICAgIDI1MCwgMTA2LCAxMTUsIDIzMiwgMjQyLCAyMTQsIDE2LCAxMTUsIDIzMiwgMjQyLCAzLCAyNDksIDE1NywgMywgMTA1LCAKLSAgICAyNDksIDE1NywgMywgMjQzLCAyMDAsIDIxOSwgNjksIDMsIDIyMSwgNzAsIDMsIDI0OSwgMTY0LCAzLCAyMjQsIDE1OCwgNzcsIAotICAgIDMsIDI0NCwgMjU0LCA3NywgMywgMjQ1LCAxMTgsIDI0OCwgMTAxLCAzLCA0MiwgMjI2LCAxMzEsIDMsIDQ2LCAyMjYsIDEzMSwgCi0gICAgMywgNDIsIDI0OSwgNDAsIDEyNSwgMywgNDYsIDI0OSwgNDAsIDEyNSwgMywgNDIsIDIxNiwgMjE5LCAyMjAsIDIzMywgMTI1LCAKLSAgICAzLCA0NiwgMjE2LCAyMTksIDIyMCwgMjMzLCAxMjUsIDMsIDUwLCA1MiwgMywgMjU0LCAzNSwgMywgMjUzLCAxMzIsIDMsIAotICAgIDk0LCA1MiwgMywgMjQwLCAxNTksIDMsIDIzMywgMzksIDUyLCAzLCAyNDIsIDEwNywgNTIsIDMsIDI0NSwgNjEsIDUyLCAzLCAKLSAgICAyMjMsIDIwMywgMjE5LCAyMzEsIDMsIDI0NywgODYsIDUyLCAzLCAyMjYsIDU3LCA1MiwgMywgMjQ5LCAxNTYsIDI1MywgCi0gICAgMTIyLCAxMiwgMjQ0LCAxMzIsIDQ4LCAxNywgMTIsIDIxNywgMjUxLCAyLCAyNDQsIDEzMiwgNDksIDEyLCAyNDgsIDEyOCwgCi0gICAgNDgsIDE3LCAxMiwgMjE4LCAyOCwgMjQzLCAyMjcsIDEyLCAyMzQsIDIwOSwgNDgsIDE3LCAxMiwgMjQ0LCAxMzQsIDQ4LCAKLSAgICAxNywgMTIsIDI0NCwgMTM0LCAxMzgsIDE3LCAxMiwgMjQ4LCAxMzAsIDQ4LCAxNywgMTIsIDI0OCwgMTMwLCAxMzgsIDE3LCAKLSAgICAxMiwgMjM0LCAyMTEsIDQ4LCAxNywgMTIsIDIzNCwgMjExLCAxMzgsIDE3LCAxMiwgMjIxLCAxNiwgNDgsIDE3LCAxMiwgCi0gICAgMjIxLCAxNiwgMTM4LCAxNywgMTIsIDIxOCwgMjQ3LCA0OCwgMTcsIDEyLCAyMTgsIDI0NywgMTM4LCAxNywgMTIsIDEsIAotICAgIDE5MiwgNDgsIDE3LCAxMiwgMSwgMTA2LCAyLCAyMzIsIDMzLCA3OCwgNDgsIDE3LCAxMiwgMSwgMTA2LCAyLCAyMzIsIDMzLCAKLSAgICA3OCwgNDAsIDE3LCAxMiwgMSwgMTA2LCAyLCAxOTIsIDc4LCA0OCwgMTcsIDEyLCAxLCAxMDYsIDIsIDE5MiwgNzgsIDQwLCAKLSAgICAxNywgMTIsIDEsIDIxNCwgMTUsIDIsIDE5MiwgNzgsIDQ4LCAxNywgMTIsIDEsIDIxNCwgMTUsIDIsIDE5MiwgNzgsIDQwLCAKLSAgICAxNywgMTIsIDEsIDEwNiwgMiwgMTkyLCAyNTEsIDIyMCwgNDgsIDE3LCAxMiwgMSwgMTA2LCAyLCAxOTIsIDI1MSwgMjIwLCAKLSAgICA0MCwgMTcsIDEyLCAxLCA3MywgMiwgMTkyLCA3OCwgNDgsIDE3LCAxMiwgMSwgNzMsIDIsIDE5MiwgNzgsIDQwLCAxNywgMTIsIAotICAgIDEsIDczLCAyLCAxOTIsIDc4LCA3MCwgMTcsIDEyLCAxLCA3MywgMiwgMTkyLCA3OCwgMTM4LCAxNywgMTIsIDEsIDEwNiwgCi0gICAgNDgsIDE3LCAxMiwgMSwgMTA2LCA0MCwgMTcsIDEyLCAxLCAyNTEsIDIzMSwgNDgsIDE3LCAxMiwgMSwgMjUxLCAyMzEsIDQwLCAKLSAgICAxNywgMTIsIDEsIDI1MSwgMjMxLCA3MCwgMTcsIDEyLCAxLCAyNTEsIDIzMSwgMTM4LCAxNywgMTIsIDEsIDIxNywgMjE2LCAKLSAgICAyMzEsIDIyOCwgNDgsIDE3LCAxMiwgMSwgMjE3LCAyMTYsIDIzMSwgMjI4LCA0MCwgMTcsIDEyLCAxLCAyMTcsIDIxNiwgNDgsIAotICAgIDE3LCAxMiwgMSwgMjE3LCAyMTYsIDQwLCAxNywgMTIsIDEsIDIxNywgMjE2LCA3MCwgMTcsIDEyLCAxLCAyMTcsIDIxNiwgCi0gICAgMTM4LCAxNywgMTIsIDEsIDIxNywgMTQ2LCA0OCwgMTcsIDEyLCAxLCAyMTcsIDE0NiwgNDAsIDE3LCAxMiwgMSwgMjE3LCAKLSAgICAxNDYsIDcwLCAxNywgMTIsIDEsIDIxNywgMTQ2LCAxMzgsIDE3LCAxMiwgMSwgMTQ1LCA0OCwgMTcsIDEyLCAxLCAxNDUsIAotICAgIDQwLCAxNywgMTIsIDEsIDE0NSwgNzAsIDE3LCAxMiwgMSwgMTQ1LCAxMzgsIDE3LCAxMiwgMSwgMTIxLCA0OCwgMTcsIDEyLCAKLSAgICAxLCAxMjEsIDQwLCAxNywgMTIsIDEsIDEyMSwgNzAsIDE3LCAxMiwgMSwgMTIxLCAxMzgsIDE3LCAxMiwgMSwgMjM0LCAxMzYsIAotICAgIDQ4LCAxNywgMTIsIDEsIDIzNCwgMTM2LCA0MCwgMTcsIDEyLCAxLCAyMzQsIDEzNiwgNzAsIDE3LCAxMiwgMSwgMjM0LCAKLSAgICAxMzYsIDEzOCwgMTcsIDEyLCAxLCAyNDgsIDE0MSwgNDgsIDE3LCAxMiwgMSwgMjQ4LCAxNDEsIDQwLCAxNywgMTIsIDEsIAotICAgIDIxNywgMTU2LCA0OCwgMTcsIDEyLCAxLCAyMTcsIDE1NiwgNDAsIDE3LCAxMiwgMSwgMjIzLCAyNDYsIDQ4LCAxNywgMTIsIAotICAgIDEsIDIyMywgMjQ2LCA0MCwgMTcsIDEyLCAxLCAyMTIsIDEwMiwgNDgsIDE3LCAxMiwgMSwgMjEyLCAxMDIsIDQwLCAxNywgCi0gICAgMTIsIDEsIDIyMiwgODYsIDQ4LCAxNywgMTIsIDEsIDIyMiwgODYsIDQwLCAxNywgMTIsIDEsIDIyMiwgODYsIDcwLCAxNywgCi0gICAgMTIsIDEsIDIyMiwgODYsIDEzOCwgMTcsIDEyLCAxLCAyMjAsIDI0MCwgNDgsIDE3LCAxMiwgMSwgMjIwLCAyNDAsIDQwLCAKLSAgICAxNywgMTIsIDEsIDIyMCwgMjQwLCA3MCwgMTcsIDEyLCAxLCAyMjAsIDI0MCwgMTM4LCAxNywgMTIsIDEsIDIyMiwgMTk2LCAKLSAgICA0OCwgMTcsIDEyLCAxLCAyMjIsIDE5NiwgNDAsIDE3LCAxMiwgMSwgMjIyLCAxOTYsIDcwLCAxNywgMTIsIDEsIDIyMiwgCi0gICAgMTk2LCAxMzgsIDE3LCAxMiwgMSwgMjQ4LCAxNjAsIDQ4LCAxNywgMTIsIDEsIDI0OCwgMTYwLCA0MCwgMTcsIDEyLCAxLCAKLSAgICAyNDgsIDE2MCwgNzAsIDE3LCAxMiwgMSwgMjQ4LCAxNjAsIDEzOCwgMTcsIDEyLCAxLCAyMTgsIDMwLCA0OCwgMTcsIDEyLCAKLSAgICAxLCAyMTgsIDMwLCA0MCwgMTcsIDEyLCAxLCAyMTgsIDMwLCA3MCwgMTcsIDEyLCAxLCAyMTgsIDMwLCAxMzgsIDE3LCAxMiwgCi0gICAgMSwgMjEyLCAxMDUsIDQ4LCAxNywgMTIsIDEsIDIxMiwgMTA1LCA0MCwgMTcsIDEyLCAxLCAyMTIsIDEwNSwgNzAsIDE3LCAKLSAgICAxMiwgMSwgMjEyLCAxMDUsIDEzOCwgMTcsIDEyLCAxLCAyNTQsIDEwNCwgNDgsIDE3LCAxMiwgMSwgMjU0LCAxMDQsIDQwLCAKLSAgICAxNywgMTIsIDEsIDI1NCwgMTA0LCA3MCwgMTcsIDEyLCAxLCAyNTQsIDEwNCwgMTM4LCAxNywgMTIsIDEsIDI0MiwgMjIxLCAKLSAgICA0OCwgMTcsIDEyLCAxLCAyNDIsIDIyMSwgNDAsIDE3LCAxMiwgMSwgMjQyLCAyMjEsIDcwLCAxNywgMTIsIDEsIDI0MiwgCi0gICAgMjIxLCAxMzgsIDE3LCAxMiwgMSwgMjQ0LCAxMTIsIDQ4LCAxNywgMTIsIDEsIDI0NCwgMTEyLCA0MCwgMTcsIDEyLCAxLCAKLSAgICAyNDQsIDExMiwgNzAsIDE3LCAxMiwgMSwgMjQ0LCAxMTIsIDEzOCwgMTcsIDEyLCAxLCAyMjQsIDIyNiwgNDgsIDE3LCAxMiwgCi0gICAgMSwgMjI0LCAyMjYsIDQwLCAxNywgMTIsIDEsIDIyNCwgMjI2LCA3MCwgMTcsIDEyLCAxLCAyMjQsIDIyNiwgMTM4LCAxNywgCi0gICAgMTIsIDEsIDIzNCwgMjU1LCA0OCwgMTcsIDEyLCAxLCAyMzQsIDI1NSwgNDAsIDE3LCAxMiwgMSwgMjM0LCAyNTUsIDcwLCAKLSAgICAxNywgMTIsIDEsIDIzNCwgMjU1LCAxMzgsIDE3LCAxMiwgMSwgMjMzLCAxMjcsIDQ4LCAxNywgMTIsIDEsIDIzMywgMTI3LCAKLSAgICA0MCwgMTcsIDEyLCAxLCAyMzMsIDEyNywgNzAsIDE3LCAxMiwgMSwgMjMzLCAxMjcsIDEzOCwgMTcsIDEyLCAxLCA2MywgNDgsIAotICAgIDE3LCAxMiwgMSwgNjMsIDQwLCAxNywgMTIsIDEsIDYzLCA3MCwgMTcsIDEyLCAxLCA2MywgMTM4LCAxNywgMTIsIDEsIDIyOCwgCi0gICAgMTc0LCA0OCwgMTcsIDEyLCAxLCAyMjgsIDE3NCwgNDAsIDE3LCAxMiwgMSwgMjI4LCAxNzQsIDcwLCAxNywgMTIsIDEsIAotICAgIDIyOCwgMTc0LCAxMzgsIDE3LCAxMiwgMSwgMjQxLCAyMDMsIDQ4LCAxNywgMTIsIDEsIDI0MSwgMjAzLCA0MCwgMTcsIDEyLCAKLSAgICAxLCAyNDEsIDIwMywgNzAsIDE3LCAxMiwgMSwgMjQxLCAyMDMsIDEzOCwgMTcsIDEyLCAxLCAyMTQsIDE1LCA0OCwgMTcsIAotICAgIDEyLCAxLCAyMTQsIDE1LCA0MCwgMTcsIDEyLCAxLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMSwgMTA2LCAyMTAsIDQwLCAxNywgCi0gICAgMTIsIDEsIDczLCA0OCwgMTcsIDEyLCAxLCA3MywgNDAsIDE3LCAxMiwgMSwgNzMsIDcwLCAxNywgMTIsIDEsIDczLCAxMzgsIAotICAgIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxMDYsIDIsIDIzMiwgMzMsIDc4LCA0OCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIAotICAgIDIsIDEwNiwgMiwgMjMyLCAzMywgNzgsIDQwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTA2LCAyLCAxOTIsIDc4LCA0OCwgCi0gICAgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDEwNiwgMiwgMTkyLCA3OCwgNDAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAKLSAgICAxMDYsIDIsIDE5MiwgMjUxLCAyMjAsIDQ4LCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTA2LCAyLCAxOTIsIDI1MSwgCi0gICAgMjIwLCA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDEwNiwgNDgsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxMDYsIAotICAgIDQwLCAxNywgMjEyLCA4MCwgMjEzLCAyMzAsIDIyOCwgMTg0LCAyMTksIDIwNiwgMTIwLCAyNDQsIDI1NCwgNzcsIDEyMCwgCi0gICAgMjI0LCAxNDMsIDc3LCAxMjAsIDUwLCA1MiwgMTIwLCAyNDcsIDg2LCA1MiwgMTIwLCAyMjYsIDU3LCA1MiwgMTIwLCAyNTQsIAotICAgIDM1LCAxMjAsIDI1MywgMjI2LCAxMjAsIDQyLCAyMjYsIDEzMSwgMTIwLCA0NiwgMjI2LCAxMzEsIDEyMCwgMjUzLCAxMzIsIAotICAgIDEyMCwgOTQsIDUyLCAxMjAsIDI0OSwgMTU3LCAxMjAsIDI0MCwgMTU5LCAxMjAsIDI0MywgMjAwLCAyMTksIDY5LCAxMjAsIAotICAgIDIxOSwgMjMxLCAxMjAsIDIxLCAyMTIsIDc5LCAxMjAsIDIxLCAxMTYsIDEyMCwgMjEsIDEwOSwgMTIwLCAyMSwgMTY2LCAKLSAgICAxMjAsIDIxLCAxNjMsIDEyMCwgMjEsIDE4MCwgMTIwLCAyMSwgMTg5LCAxMjAsIDIxLCAxOTgsIDEyMCwgMjEsIDE5NSwgCi0gICAgMTIwLCAyMSwgMjAwLCAxMjAsIDI0OSwgMTY0LCAxMjAsIDIyMSwgNzAsIDEyMCwgMjMzLCAzOSwgNTIsIDEyMCwgMjQ1LCAKLSAgICA2MSwgNTIsIDEyMCwgMjQyLCAxMDcsIDUyLCAxMjAsIDIyNCwgMTU4LCA3NywgMTIwLCAyNDksIDE1NiwgMjUzLCAxMjIsIAotICAgIDEyMCwgNywgNiwgMSwgNjEsIDEyMCwgNywgNiwgMSwgMjUzLCA3NCwgMTIwLCA3LCA2LCAxLCAyNTAsIDI1MiwgMTIwLCA3LCAKLSAgICA2LCAxLCAyNDksIDMsIDEyMCwgNywgNiwgMSwgNzQsIDEyMCwgNywgNiwgMSwgMjQ0LCAyMzAsIDEyMCwgNywgNiwgMSwgCi0gICAgMjQzLCAxNzcsIDEyMCwgNywgNiwgMSwgMjQyLCA0MSwgMTIwLCA3LCA2LCAxLCA3MiwgMTIwLCA3LCA2LCAxLCAyMzUsIAotICAgIDE0MiwgMTIwLCA3LCA2LCAxLCAyMzUsIDI3LCAxMjAsIDcsIDYsIDEsIDE1MCwgMTIwLCA3LCA2LCAxLCAxODMsIDEyMCwgNywgCi0gICAgNiwgMSwgMjA0LCAxMjAsIDcsIDYsIDEsIDc1LCAxMjAsIDcsIDYsIDEsIDIyNiwgMjI5LCAxMjAsIDcsIDYsIDEsIDIyNCwgCi0gICAgMjQwLCAxMjAsIDcsIDYsIDEsIDE0OSwgMTIwLCA3LCA2LCAxLCAxOTcsIDEyMCwgNywgNiwgMSwgMjE4LCA5OSwgMTIwLCA3LCAKLSAgICA2LCAxLCA2OSwgMTIwLCA3LCA2LCAxLCAyMTUsIDc5LCAxMjAsIDcsIDYsIDEsIDIxNCwgODIsIDEyMCwgNywgNiwgMSwgCi0gICAgMjEzLCAxNjYsIDEyMCwgNywgNiwgMSwgMjEzLCAxMDUsIDEyMCwgNywgNiwgMSwgMjEyLCAxNTIsIDEyMCwgNDIsIDQxLCAKLSAgICAxMjUsIDEyMCwgMjIzLCAyMDMsIDIxOSwgMjMxLCAxMjAsIDQ2LCA0MSwgMTI1LCAxMjAsIDI0OSwgMjI0LCAyNTQsIDE3NCwgCi0gICAgMTIwLCAxMTUsIDIzMiwgMjQyLCAxMjAsIDI0MiwgMTE0LCAyNTQsIDE3NCwgMTIwLCA3LCAzLCAxLCA2MSwgMTIwLCA3LCAzLCAKLSAgICAxLCAyNTMsIDc0LCAxMjAsIDcsIDMsIDEsIDI1MCwgMjUyLCAxMjAsIDcsIDMsIDEsIDI0OSwgMywgMTIwLCA3LCAzLCAxLCAKLSAgICA3NCwgMTIwLCA3LCAzLCAxLCAyNDQsIDIzMCwgMTIwLCA3LCAzLCAxLCAyNDMsIDE3NywgMTIwLCA3LCAzLCAxLCAyNDIsIAotICAgIDQxLCAxMjAsIDcsIDMsIDEsIDcyLCAxMjAsIDcsIDMsIDEsIDIzNSwgMTQyLCAxMjAsIDcsIDMsIDEsIDIzNSwgMjcsIDEyMCwgCi0gICAgNywgMywgMSwgMTUwLCAxMjAsIDcsIDMsIDEsIDE4MywgMTIwLCA3LCAzLCAxLCAyMDQsIDEyMCwgNywgMywgMSwgNzUsIAotICAgIDEyMCwgNywgMywgMSwgMjI2LCAyMjksIDEyMCwgNywgMywgMSwgMjI0LCAyNDAsIDEyMCwgNywgMywgMSwgMTQ5LCAxMjAsIAotICAgIDcsIDMsIDEsIDE5NywgMTIwLCA3LCAzLCAxLCAyMTgsIDk5LCAxMjAsIDcsIDMsIDEsIDY5LCAxMjAsIDcsIDMsIDEsIDIxNSwgCi0gICAgNzksIDEyMCwgNywgMywgMSwgMjE0LCA4MiwgMTIwLCA3LCAzLCAxLCAyMTMsIDE2NiwgMTIwLCA3LCAzLCAxLCAyMTMsIAotICAgIDEwNSwgMTIwLCA3LCAzLCAxLCAyMTIsIDE1MiwgMTIwLCA0MiwgMjQ5LCA0MCwgMTI1LCAxMjAsIDcxLCAyMzIsIDI0MiwgCi0gICAgMTIwLCA0NiwgMjQ5LCA0MCwgMTI1LCAxMjAsIDIxNywgNDIsIDEyMCwgNDIsIDY3LCAyMjYsIDEzMSwgMTIwLCA0NiwgNjcsIAotICAgIDIyNiwgMTMxLCA5OCwgMTA1LCAyNDMsIDIwMCwgMjE5LCA2OSwgOTgsIDQyLCAyNDksIDEwMCwgMTI1LCA5OCwgNDYsIDI0OSwgCi0gICAgMTAwLCAxMjUsIDk4LCAxMDUsIDI0OSwgMTU3LCA5OCwgNTYsIDIzMSwgMzcsIDI0NywgNzQsIDk4LCA1NiwgMSwgMjEzLCAKLSAgICAyMTQsIDk4LCA1NiwgMSwgMywgNjEsIDk4LCA1NiwgMSwgMywgNzIsIDk4LCA1NiwgMSwgMywgNjksIDk4LCA1NiwgMSwgMywgCi0gICAgNzQsIDk4LCA1NiwgMSwgMywgNzUsIDk4LCA1NiwgMSwgMywgMTg2LCA5OCwgNTYsIDEsIDMsIDIxMiwgMjAzLCA5OCwgNTYsIAotICAgIDEsIDMsIDIxMiwgMjM1LCA5OCwgNTYsIDEsIDMsIDIxNiwgODIsIDk4LCAyMzQsIDIwNiwgMjI1LCA1NywgMjE5LCAyMTgsIAotICAgIDc3LCA5OCwgNTYsIDEsIDYxLCA5OCwgNTYsIDEsIDcyLCA5OCwgNTYsIDEsIDY5LCA5OCwgNTYsIDEsIDc0LCA5OCwgNTYsIAotICAgIDEsIDc1LCA5OCwgNTYsIDEsIDE4MSwgOTgsIDU2LCAxLCAyMzQsIDEwMSwgOTgsIDU2LCAxLCAyMzMsIDIzOCwgOTgsIDU2LCAKLSAgICAxLCAyMzQsIDE4OCwgOTgsIDU2LCAxLCAyMzQsIDM3LCA5OCwgNTYsIDEsIDIyMiwgMjAyLCA5OCwgNTYsIDEsIDIyMCwgCi0gICAgMTE3LCA5OCwgNTYsIDEsIDIxOSwgMjcsIDk4LCA1NiwgMSwgMjIyLCAxMDAsIDk4LCA1NiwgMSwgMjE5LCAyNDIsIDk4LCAKLSAgICA1NiwgMSwgMjE4LCA1MiwgOTgsIDU2LCAxLCAyMTcsIDcxLCA5OCwgNTYsIDEsIDIxNiwgODIsIDk4LCA1NiwgMSwgMjE3LCAKLSAgICAyMjksIDk4LCA1NiwgMSwgMTA4LCA5OCwgNTYsIDEsIDIwNSwgOTgsIDU2LCAxLCAyMjksIDY0LCA5OCwgNTYsIDEsIDIyOCwgCi0gICAgOTIsIDk4LCA1NiwgMSwgMjI5LCAxODcsIDk4LCA1NiwgMSwgMjI4LCAxODUsIDk4LCA1NiwgMSwgMTU5LCA5OCwgNTYsIDEsIAotICAgIDI0MSwgMTY1LCA5OCwgNTYsIDEsIDI0MCwgMjEyLCA5OCwgNTYsIDEsIDI0MSwgMjIyLCA5OCwgNTYsIDEsIDI0MSwgNTQsIAotICAgIDk4LCA1NiwgMSwgMTg4LCA5OCwgNTYsIDEsIDIzMSwgNDIsIDk4LCA1NiwgMSwgMjMwLCAxNzIsIDk4LCA1NiwgMSwgMjMxLCAKLSAgICAxNTYsIDk4LCA1NiwgMSwgMjMwLCAyMzEsIDk4LCA1NiwgMSwgMTg2LCA5OCwgNTYsIDEsIDIxMiwgMjAzLCA5OCwgNTYsIDEsIAotICAgIDIxMiwgMjM1LCA5OCwgNTYsIDEsIDIwMywgOTgsIDU2LCAxLCAyMjMsIDE4OCwgOTgsIDU2LCAxLCAyMjMsIDUxLCA5OCwgCi0gICAgNTYsIDEsIDIyNCwgMjEsIDk4LCA1NiwgMSwgMjIzLCAxMTIsIDk4LCA1NiwgMSwgMjE0LCA0OSwgOTgsIDU2LCAxLCAyMDQsIAotICAgIDk4LCA1NiwgMjE0LCAxMTYsIDIxOSwgMjE4LCA3NywgOTgsIDU2LCAyMjEsIDc1LCAyMTksIDIxOCwgNzcsIDk4LCAyMywgCi0gICAgMjQ0LCA3MiwgOTgsIDIzLCAxLCAyMzQsIDY3LCA5OCwgMjMsIDEsIDIxOSwgMTUwLCA5OCwgMjMsIDEsIDIzNCwgNjAsIDk4LCAKLSAgICAyMywgMSwgMjI5LCA1NywgOTgsIDIzLCAxLCAyMjksIDU1LCA5OCwgMjMsIDEsIDIyOSwgNTQsIDk4LCAyMywgMSwgMjE3LCAKLSAgICA1NSwgOTgsIDIzLCAxLCAyMTksIDEzOSwgOTgsIDIzLCAxLCAyMjMsIDE3OSwgOTgsIDIzLCAxLCAyMjMsIDE3NCwgOTgsIAotICAgIDIzLCAxLCAyMjMsIDE3MSwgOTgsIDIzLCAxLCAyMjMsIDE2NCwgOTgsIDIzLCAxLCAyMjMsIDE1OSwgOTgsIDIzLCAxLCAKLSAgICAyMjMsIDE1NCwgOTgsIDIzLCAxLCAyMjMsIDE2NSwgOTgsIDIzLCAxLCAyMjMsIDE3NywgOTgsIDIzLCAxLCAyMzEsIDMwLCAKLSAgICA5OCwgMjMsIDEsIDIyNSwgMjI3LCA5OCwgMjMsIDEsIDIxOSwgMTQ3LCA5OCwgMjMsIDEsIDIyNSwgMjE2LCA5OCwgMjMsIDEsIAotICAgIDIyMCwgNzYsIDk4LCAyMywgMSwgMjE5LCAxNDQsIDk4LCAyMywgMSwgMjM2LCA1MSwgOTgsIDIzLCAxLCAyNDksIDIzOSwgCi0gICAgOTgsIDIzLCAxLCAyMTksIDE1NCwgOTgsIDIzLCAxLCAyNTAsIDQzLCA5OCwgMjMsIDEsIDIzNCwgMTE2LCA5OCwgMjMsIDEsIAotICAgIDIxNywgMTI2LCA5OCwgMjMsIDEsIDIyNiwgNywgOTgsIDIzLCAxLCAyNDEsIDE1OCwgOTgsIDIzLCAxLCA2MSwgOTgsIDIzLCAKLSAgICAxLCAyNTQsIDE0OCwgOTgsIDIzLCAxLCAxODYsIDk4LCAyMywgMSwgMjEzLCA4MCwgOTgsIDIzLCAxLCAyNDUsIDc2LCA5OCwgCi0gICAgMjMsIDEsIDc0LCA5OCwgMjMsIDEsIDIxMywgMjcsIDk4LCAyMywgMSwgMjEzLCAzOCwgOTgsIDIzLCAxLCA3NSwgOTgsIDIzLCAKLSAgICAxLCAyMTQsIDQ5LCA5OCwgMjMsIDEsIDIxNCwgNDYsIDk4LCAyMywgMSwgMjI3LCA5OSwgOTgsIDIzLCAxLCAyMTIsIDIzNSwgCi0gICAgOTgsIDIzLCAxLCA2OSwgOTgsIDIzLCAxLCAyMTMsIDI1MiwgOTgsIDIzLCAxLCAyMTQsIDYsIDk4LCAyMywgMSwgMjEzLCAKLSAgICAyMzUsIDk4LCAyMywgMSwgMjEyLCAyMDMsIDk4LCAyMywgMSwgMjQ1LCAyMiwgOTgsIDIzLCAxLCAyMTIsIDI1NSwgOTgsIAotICAgIDIzLCAxLCA3MiwgMTIwLCAyNTAsIDExMCwgNTIsIDEyMCwgMjI1LCAxMDgsIDUyLCAxMjAsIDIyOCwgMTYzLCA1MiwgMTIwLCAKLSAgICAyMzIsIDM3LCAxMjAsIDI1MSwgNjMsIDEzNCwgMTIwLCAyMTMsIDMxLCA1MiwgMTIwLCAyMTMsIDIwNCwgNTIsIDk4LCAyNDMsIAotICAgIDI0MywgMTc3LCAyMTQsIDIxNiwgOTgsIDEzMiwgNjgsIDk4LCAyMTUsIDEyNCwgNjgsIDk4LCA5NSwgNjgsIDk4LCAyNDYsIAotICAgIDU4LCA2OCwgOTgsIDgzLCAyMTksIDE2NiwgOTgsIDY3LCAyNDksIDIyOCwgMjM1LCAyMDEsIDI1NCwgMTAsIDI1NCwgMjksIAotICAgIDIzNSwgMjAxLCAyNTQsIDEwLCAyMjEsIDU3LCAyMzUsIDIwMSwgMjU0LCAxMCwgMjE3LCAxODksIDIyNywgMTEzLCAyMjMsIAotICAgIDIyNCwgMjUwLCA3OCwgMjIzLCAyMjQsIDI1MCwgNzgsIDU4LCA1NCwgNCwgMjUzLCA1OCwgNjEsIDU4LCA1NCwgNCwgMjUzLCAKLSAgICAyNywgNzQsIDU4LCA1NCwgNCwgMjUzLCAzNiwgNzIsIDU4LCA1NCwgNCwgMjUzLCA0LCA3NSwgNTgsIDU0LCA0LCAyNTMsIAotICAgIDU0LCA2OSwgNTgsIDU0LCA0LCAyNTMsIDczLCAyNDgsIDE2NCwgNTgsIDU0LCA0LCAyNTMsIDIwLCAyNDgsIDQxLCA1OCwgCi0gICAgNTQsIDQsIDI1MywgNjAsIDI0NywgMjExLCA1OCwgNTQsIDQsIDI1MywgNTAsIDI0NywgOTksIDU4LCA1NCwgNCwgMjUzLCAKLSAgICAxNCwgMjQ2LCAzMywgNTgsIDU0LCA0LCAyNTMsIDgsIDIzNSwgMTM5LCA1OCwgNTQsIDQsIDI1MywgMTksIDIzNSwgMTI3LCAKLSAgICA1OCwgNTQsIDQsIDI1MywgMjksIDIzNSwgNzEsIDU4LCA1NCwgNCwgMjUzLCAwLCAyMzUsIDU0LCA1OCwgNTQsIDQsIDI1MiwgCi0gICAgMjQ0LCAxODEsIDU4LCA1NCwgNCwgMjUzLCAyMSwgMjM0LCAxODgsIDU4LCA1NCwgNCwgMjUyLCAyNTQsIDIzNCwgMTAxLCAKLSAgICA1OCwgNTQsIDQsIDI1MiwgMjUxLCAyMzQsIDM3LCA1OCwgNTQsIDQsIDI1MiwgMjQwLCAyMzMsIDIzOCwgNTgsIDU0LCA0LCAKLSAgICAyNTIsIDI0MSwgMTg4LCA1OCwgNTQsIDQsIDI1MywgNTEsIDIzMSwgMTU2LCA1OCwgNTQsIDQsIDI1MiwgMjQ4LCAyMzEsIAotICAgIDQyLCA1OCwgNTQsIDQsIDI1MywgNDksIDIzMCwgMjMxLCA1OCwgNTQsIDQsIDI1MywgNDEsIDIzMCwgMTcyLCA1OCwgNTQsIAotICAgIDQsIDI1MywgNjIsIDIwNSwgNTgsIDU0LCA0LCAyNTMsIDQwLCAyMjksIDE4NywgNTgsIDU0LCA0LCAyNTMsIDM0LCAyMjksIAotICAgIDY0LCA1OCwgNTQsIDQsIDI1MywgMTMsIDIyOCwgMTg1LCA1OCwgNTQsIDQsIDI1MywgMTAsIDIyOCwgOTIsIDU4LCA1NCwgNCwgCi0gICAgMjUzLCA2OSwgMTkzLCA1OCwgNTQsIDQsIDI1MiwgMjQ5LCAyMjYsIDk2LCA1OCwgNTQsIDQsIDI1MywgMjYsIDIyNSwgMjQwLCAKLSAgICA1OCwgNTQsIDQsIDI1MywgNTMsIDIyNSwgMTUwLCA1OCwgNTQsIDQsIDI1MywgMTUsIDIyNSwgMzUsIDU4LCA1NCwgNCwgCi0gICAgMjUzLCA0OCwgMjI0LCAyMzIsIDU4LCA1NCwgNCwgMjUyLCAyNDMsIDIyNCwgMjEzLCA1OCwgNTQsIDQsIDI1MywgNDMsIAotICAgIDIyNCwgMTk4LCA1OCwgNTQsIDQsIDI1MywgMzIsIDIyNCwgMTg3LCA1OCwgNTQsIDQsIDI1MywgNSwgMjAzLCA1OCwgNTQsIAotICAgIDQsIDI1MywgMzcsIDIyNCwgMjEsIDU4LCA1NCwgNCwgMjUzLCAxMiwgMjIzLCAxODgsIDU4LCA1NCwgNCwgMjUzLCA3MSwgCi0gICAgMjIzLCAxMTIsIDU4LCA1NCwgNCwgMjUzLCAzOCwgMjIzLCA1MSwgNTgsIDU0LCA0LCAyNTMsIDMzLCAyMjIsIDIwMiwgNTgsIAotICAgIDU0LCA0LCAyNTMsIDU2LCAyMjIsIDEwMCwgNTgsIDU0LCA0LCAyNTMsIDI0LCAyMjAsIDExNywgNTgsIDU0LCA0LCAyNTMsIAotICAgIDUyLCAyMTksIDI0MiwgNTgsIDU0LCA0LCAyNTMsIDcsIDIxOSwgMjcsIDU4LCA1NCwgNCwgMjUzLCA2LCAyMTgsIDUyLCA1OCwgCi0gICAgNTQsIDQsIDI1MywgNjcsIDIxNywgMjI5LCA1OCwgNTQsIDQsIDI1MywgMjgsIDIxNywgNzEsIDU4LCA1NCwgNCwgMjUzLCAKLSAgICA2NSwgMTA4LCA1OCwgNTQsIDQsIDI1MiwgMjUyLCAyMTYsIDgyLCA1OCwgNTQsIDQsIDI1MywgMTEsIDIxNCwgNDksIDU4LCAKLSAgICA1NCwgNCwgMjUyLCAyNDYsIDIxNCwgNiwgNTgsIDU0LCA0LCAyNTMsIDI1LCAyMTMsIDIzNSwgNTgsIDU0LCA0LCAyNTMsIAotICAgIDIzLCAyMTMsIDIxNCwgNTgsIDU0LCA0LCAyNTMsIDQ3LCAyMTIsIDEwOSwgNTgsIDU0LCA0LCAyNTIsIDI0NywgMjEyLCA4NywgCi0gICAgNTgsIDU0LCA0LCAyNTMsIDQ0LCAyMTIsIDE2LCA1OCwgNTQsIDQsIDI1MywgMzksIDI1NCwgMjM0LCA1OCwgNTQsIDQsIAotICAgIDI1MywgMjIsIDI1NCwgMjMzLCA1OCwgNTQsIDQsIDI1MiwgMjM3LCAyNTMsIDEwOCwgNTgsIDU0LCA0LCAyNTIsIDI1MCwgCi0gICAgMjQ2LCAxLCA1OCwgNTQsIDQsIDI1MiwgMjMzLCAyNDYsIDAsIDU4LCA1NCwgNCwgMjUzLCAxNywgMjI4LCAzMSwgNTgsIDU0LCAKLSAgICA0LCAyNTMsIDM1LCAyMjUsIDM0LCA1OCwgNTQsIDQsIDI1MywgMywgMjI1LCAzNywgNTgsIDU0LCA0LCAyNTIsIDI0NSwgCi0gICAgMjI0LCA3NiwgNTgsIDU0LCA0LCAyNTMsIDMxLCAyMjQsIDc1LCA1OCwgNTQsIDQsIDI1MiwgMjUzLCAyMjMsIDExMSwgNTgsIAotICAgIDU0LCA0LCAyNTIsIDI1NSwgMjE4LCA1MCwgNTgsIDU0LCA0LCAyNTIsIDIzNSwgMjE2LCA0MywgNTgsIDU0LCA0LCAyNTIsIAotICAgIDIzMiwgMTA5LCA1OCwgNTQsIDE2LCAyNTMsIDQ2LCA1OCwgNTQsIDE2LCAyNTMsIDQ1LCA1OCwgNTQsIDE2LCAyNTMsIDQyLCAKLSAgICA1OCwgNTQsIDE2LCAyNTMsIDMwLCA1OCwgNTQsIDE2LCAyNTMsIDE4LCA1OCwgNTQsIDE2LCAyNTMsIDE2LCA1OCwgNTQsIAotICAgIDE2LCAyNTMsIDksIDU4LCA1NCwgMTYsIDI1MywgMiwgNTgsIDU0LCAxNiwgMjUzLCAxLCA1OCwgNTQsIDE2LCAyNTIsIDI0MiwgCi0gICAgNTgsIDU0LCAxNiwgMjUyLCAyMzksIDU4LCA1NCwgMTYsIDI1MiwgMjM4LCA1OCwgNTQsIDE2LCAyNTIsIDIzNiwgNTgsIDU0LCAKLSAgICAxNiwgMjUyLCAyMzQsIDU4LCA1NCwgMTAyLCAyNTIsIDIzMSwgMjMxLCAyNDgsIDU4LCA1NCwgMTAyLCAyNTIsIDIzMCwgCi0gICAgMjEzLCAyMDgsIDU4LCA1NCwgMTAyLCAyNTIsIDIyOSwgMjQ4LCAyNSwgNTgsIDU0LCAxMDIsIDI1MiwgMjI4LCAyNDUsIDU4LCAKLSAgICA1OCwgNTQsIDEwMiwgMjUyLCAyMjcsIDIzMSwgMjIyLCA1OCwgNTQsIDEwMiwgMjUyLCAyMjYsIDIxOSwgMTAxLCA1OCwgNTQsIAotICAgIDEwMiwgMjUyLCAyMjUsIDI0NSwgNCwgNTgsIDU0LCAxMDIsIDI1MiwgMjI0LCAyMjQsIDQ1LCA1OCwgNTQsIDEwMiwgMjUyLCAKLSAgICAyMjMsIDIyMCwgMjQyLCA1OCwgNTQsIDEwMiwgMjUyLCAyMjIsIDI0MSwgMjIxLCA1OCwgNTQsIDEwMiwgMjUyLCAyMjEsIAotICAgIDIxOSwgMjEyLCA1OCwgNTQsIDEwMiwgMjUyLCAyMjAsIDI1MSwgMTI2LCA1OCwgNTQsIDEwMiwgMjUyLCAyMTksIDI0OSwgCi0gICAgODQsIDU4LCA1NCwgMTAyLCAyNTIsIDIxOCwgMjUxLCA0NCwgNTgsIDU0LCAxMDIsIDI1MiwgMjE3LCAyMTMsIDI0MywgNTgsIAotICAgIDU0LCAxMDIsIDI1MiwgMjE2LCAyNTIsIDU2LCA1OCwgNTQsIDEwMiwgMjUyLCAyMTUsIDIyNywgNzEsIDU4LCA1NCwgMTAyLCAKLSAgICAyNTIsIDIxNCwgMjE5LCAxODYsIDU4LCA1NCwgMTAyLCAyNTIsIDIxMywgMjQ5LCAxMSwgNTgsIDU0LCAyMzAsIDIxMiwgCi0gICAgMjUyLCAyMTIsIDIzNCwgMjI5LCA1OCwgNTQsIDIzMCwgMjEyLCAyNTIsIDIxMSwgMjM0LCAyMzcsIDU4LCA1NCwgMTAyLCAKLSAgICAyNTIsIDIxMCwgMjI3LCA4NCwgNTgsIDU0LCAxMDIsIDI1MiwgMjA5LCAyMTMsIDIyMSwgNTgsIDU0LCAxMDIsIDI1MiwgCi0gICAgMjA4LCA1OCwgNTQsIDIzMCwgMjEyLCAyNTIsIDIwNywgMjUzLCAxODgsIDU4LCA1NCwgMjMwLCAyMTIsIDI1MiwgMjA2LCAKLSAgICAyMzEsIDExNiwgNTgsIDU0LCAxMDIsIDI1MiwgMjA1LCAyNTEsIDYyLCA1OCwgNTQsIDEwMiwgMjUyLCAyMDQsIDI0MiwgCi0gICAgMTQyLCA1OCwgNTQsIDEwMiwgMjUyLCAyMDMsIDU4LCA1NCwgMTAyLCAyNTIsIDIwMiwgMjEzLCAxOTksIDU4LCA1NCwgMTAyLCAKLSAgICAyNTIsIDIwMSwgNTgsIDU0LCAxMDIsIDI1MiwgMjAwLCA1OCwgNTQsIDEwMiwgMjUyLCAxOTksIDI0MCwgMjM1LCA1OCwgNTQsIAotICAgIDEwMiwgMjUyLCAxOTgsIDU4LCA1NCwgMTAyLCAyNTIsIDE5NywgNTgsIDU0LCAxMDIsIDI1MiwgMTk2LCA1OCwgNTQsIDIzMCwgCi0gICAgMjEyLCAyNTIsIDE5NCwgMjE2LCA1NiwgNTgsIDU0LCAxMDIsIDI1MiwgMTkzLCA1OCwgNTQsIDEwMiwgMjUyLCAxOTIsIDU4LCAKLSAgICA1NCwgMTAyLCAyNTIsIDE5MSwgMjQ5LCAxODcsIDU4LCA1NCwgMTAyLCAyNTIsIDE5MCwgNTgsIDU0LCAxMDIsIDI1MiwgCi0gICAgMTg5LCA1OCwgNTQsIDEwMiwgMjUyLCAxODgsIDI0MywgNjksIDU4LCA1NCwgMTAyLCAyNTIsIDE4NywgMjUzLCAxNzUsIDU4LCAKLSAgICA1NCwgMTAyLCAyNTIsIDE4NiwgNTgsIDU0LCAxMDIsIDI1MiwgMTg1LCA1OCwgNTQsIDEwMiwgMjUyLCAxODQsIDU4LCA1NCwgCi0gICAgMTAyLCAyNTIsIDE4MywgNTgsIDU0LCAxMDIsIDI1MiwgMTgyLCA1OCwgNTQsIDEwMiwgMjUyLCAxODEsIDU4LCA1NCwgMTAyLCAKLSAgICAyNTIsIDE4MCwgNTgsIDU0LCAxMDIsIDI1MiwgMTc5LCA1OCwgNTQsIDEwMiwgMjUyLCAxNzgsIDU4LCA1NCwgMTAyLCAyNTIsIAotICAgIDE3NywgMjMwLCAyMDQsIDU4LCA1NCwgMTAyLCAyNTIsIDE3NiwgNTgsIDU0LCAxMDIsIDI1MiwgMTc1LCAyMTYsIDE5MywgCi0gICAgNTgsIDU0LCAxMDIsIDI1MiwgMTc0LCA1OCwgNTQsIDEwMiwgMjUyLCAxNzMsIDU4LCA1NCwgMTAyLCAyNTIsIDE3MiwgNTgsIAotICAgIDU0LCAxMDIsIDI1MiwgMTcxLCA1OCwgNTQsIDEwMiwgMjUyLCAxNzAsIDU4LCA1NCwgMTAyLCAyNTIsIDE2OSwgNTgsIDU0LCAKLSAgICAxMDIsIDI1MiwgMTY4LCA1OCwgNTQsIDEwMiwgMjUyLCAxNjcsIDU4LCA1NCwgMTAyLCAyNTIsIDE2NiwgNTgsIDU0LCAxMDIsIAotICAgIDI1MiwgMTY1LCA1OCwgNTQsIDEwMiwgMjUyLCAxNjQsIDU4LCA1NCwgMTAyLCAyNTIsIDE2MywgMjQxLCAxOTUsIDU4LCA1NCwgCi0gICAgMTAyLCAyNTIsIDE0MiwgMjQzLCAyNTMsIDU4LCA1NCwgMTAyLCAyNTIsIDEzOSwgMjUyLCAzNiwgNTgsIDU0LCAxMDIsIAotICAgIDI1MiwgMTM0LCAyMTksIDE5MywgNTgsIDU0LCAxMDIsIDI1MiwgMTMzLCA2OCwgNTgsIDU0LCAxMDIsIDI1MiwgMTMyLCA1OCwgCi0gICAgNTQsIDEwMiwgMjUyLCAxMzEsIDIxOCwgMTgxLCA1OCwgNTQsIDEwMiwgMjUyLCAxMzAsIDU4LCA1NCwgMTAyLCAyNTIsIAotICAgIDEyOSwgNTgsIDU0LCAxMDIsIDI1MiwgMTI4LCAyMTMsIDIzOSwgMjUwLCA3NSwgNTgsIDU0LCAxMDIsIDI1MiwgMTI3LCAKLSAgICAyNTAsIDc1LCA1OCwgNTQsIDEwMiwgMjUyLCAxMjYsIDI1MCwgNzYsIDI0MywgMjI1LCA1OCwgNTQsIDEwMiwgMjUyLCAxMjUsIAotICAgIDIxMywgMjQxLCA1OCwgNTQsIDEwMiwgMjUyLCAxMjQsIDU4LCA1NCwgMTAyLCAyNTIsIDEyMywgNTgsIDU0LCAyMzAsIDIxMiwgCi0gICAgMjUyLCAxMjIsIDI0NywgMTUwLCA1OCwgNTQsIDEwMiwgMjUyLCAxMjEsIDU4LCA1NCwgMTAyLCAyNTIsIDEyMCwgNTgsIDU0LCAKLSAgICAxMDIsIDI1MiwgMTE4LCA1OCwgNTQsIDEwMiwgMjUyLCAxMTcsIDU4LCA1NCwgMTAyLCAyNTIsIDExNiwgNTgsIDU0LCAxMDIsIAotICAgIDI1MiwgMTE1LCAyNDgsIDEwNCwgNTgsIDU0LCAxMDIsIDI1MiwgMTE0LCA1OCwgNTQsIDEwMiwgMjUyLCAxMTMsIDU4LCA1NCwgCi0gICAgMTAyLCAyNTIsIDExMiwgNTgsIDU0LCAxMDIsIDI1MiwgMTExLCA1OCwgNTQsIDEwMiwgMjUyLCAxMTAsIDU4LCA1NCwgMTAyLCAKLSAgICAyMTQsIDE2MywgMjUyLCAxOTUsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNjIsIDU4LCA1NCwgMTAyLCAyMTQsIAotICAgIDE2MywgMjUyLCAxNjEsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNjAsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgCi0gICAgMjUyLCAxNTksIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNTgsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAKLSAgICAxNTcsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNTYsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNTUsIAotICAgIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNTQsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNTMsIDU4LCA1NCwgCi0gICAgMTAyLCAyMTQsIDE2MywgMjUyLCAxNTIsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNTEsIDU4LCA1NCwgMTAyLCAKLSAgICAyMTQsIDE2MywgMjUyLCAxNTAsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNDksIDU4LCA1NCwgMTAyLCAyMTQsIAotICAgIDE2MywgMjUyLCAxNDgsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNDcsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgCi0gICAgMjUyLCAxNDYsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNDUsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAKLSAgICAxNDQsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNDMsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNDEsIAotICAgIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxNDAsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxMzgsIDU4LCA1NCwgCi0gICAgMTAyLCAyMTQsIDE2MywgMjUyLCAxMzcsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxMzYsIDU4LCA1NCwgMTAyLCAKLSAgICAyMTQsIDE2MywgMjUyLCAxMzUsIDU4LCA1NCwgMTAyLCAyMTQsIDE2MywgMjUyLCAxMTksIDU4LCA1NCwgMTAyLCAyMTQsIAotICAgIDE2MywgMjUyLCAxMDksIDI1NCwgMTQxLCAyMTMsIDE5NiwgMjIxLCA1OCwgMjMyLCAyNDIsIDI1NCwgMTQxLCAyMTMsIDE5NiwgCi0gICAgMjIxLCA1OCwgMjQ3LCA3NCwgMjU0LCAxNDEsIDI1MCwgNjYsIDc3LCAyNTQsIDE0MSwgNTAsIDExNiwgMjU0LCAxNDEsIDUwLCAKLSAgICAxMDksIDI1NCwgMTQxLCA1MCwgMTY2LCAyNTQsIDE0MSwgNTAsIDE2MywgMjU0LCAxNDEsIDUwLCAxODAsIDI1NCwgMTQxLCAKLSAgICA1MCwgMTg5LCAyNTQsIDE0MSwgNTAsIDE5OCwgMjU0LCAxNDEsIDUwLCAxOTUsIDI1NCwgMTQxLCA1MCwgMjAwLCAyNTQsIAotICAgIDE0MSwgNTAsIDIxNywgMjAwLCAyNTQsIDE0MSwgNTAsIDIxNiwgMzgsIDI1NCwgMTQxLCA1MCwgMjE3LCAxMTUsIDI1NCwgCi0gICAgMTQxLCA1MCwgMjQzLCAyNDAsIDI1NCwgMTQxLCA1MCwgMjQ0LCA4MywgMjU0LCAxNDEsIDUwLCAyMjAsIDM5LCAyNTQsIAotICAgIDE0MSwgNTAsIDIyMSwgMzcsIDI1NCwgMTQxLCA1MCwgMjQ1LCAxNDEsIDI1NCwgMTQxLCA1MCwgMjI5LCAyNiwgMjU0LCAKLSAgICAxNDEsIDUwLCAxMjIsIDI0MCwgMjAwLCAyNTQsIDE0MSwgNTAsIDExNywgMjQwLCAyMDAsIDI1NCwgMTQxLCA1MCwgMTMzLCAKLSAgICAyNDAsIDIwMCwgMjU0LCAxNDEsIDUwLCAyNDMsIDIzNywgMjQwLCAyMDAsIDI1NCwgMTQxLCA1MCwgMjQ0LCA1MCwgMjQwLCAKLSAgICAyMDAsIDI1NCwgMTQxLCA1MCwgMjIwLCA1MywgMjQwLCAyMDAsIDI1NCwgMTQxLCA1MCwgMjIxLCA0MywgMjQwLCAyMDAsIAotICAgIDI1NCwgMTQxLCA1MCwgMjQ1LCAxNTAsIDI0MCwgMjAwLCAyNTQsIDE0MSwgNTAsIDIyOSwgMzEsIDI0MCwgMjAwLCAyNTQsIAotICAgIDE0MSwgNTAsIDEyMiwgMjE3LCAxMDAsIDI1NCwgMTQxLCA1MCwgMTE3LCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAxMzMsIAotICAgIDIxNywgMTAwLCAyNTQsIDE0MSwgNTAsIDI0MywgMjM3LCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAyNDQsIDUwLCAyMTcsIAotICAgIDEwMCwgMjU0LCAxNDEsIDUwLCAyMjAsIDUzLCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAyMjEsIDQzLCAyMTcsIDEwMCwgCi0gICAgMjU0LCAxNDEsIDUwLCAyNDUsIDE1MCwgMjE3LCAxMDAsIDI1NCwgMTQxLCA1MCwgMjI5LCAzMSwgMjE3LCAxMDAsIDI1NCwgCi0gICAgMTQxLCA1MCwgMjE3LCAyMDEsIDIxNywgMTAwLCAyNTQsIDE0MSwgNTAsIDIxNiwgMzksIDIxNywgMTAwLCAyNTQsIDE0MSwgCi0gICAgNTAsIDIxNywgMTE2LCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAyNDMsIDI0MSwgMjE3LCAxMDAsIDI1NCwgMTQxLCA1MCwgCi0gICAgMjQ0LCA4NCwgMjE3LCAxMDAsIDI1NCwgMTQxLCA1MCwgMjIwLCA0MCwgMjE3LCAxMDAsIDI1NCwgMTQxLCA1MCwgMjIxLCAKLSAgICAzOCwgMjE3LCAxMDAsIDI1NCwgMTQxLCA1MCwgMjQ1LCAxNDIsIDIxNywgMTAwLCAyNTQsIDE0MSwgNTAsIDIyOSwgMjcsIAotICAgIDIxNywgMTAwLCAyNTQsIDE0MSwgMjEzLCAyNTUsIDI1MiwgNDgsIDIxNSwgMTQ0LCAyNTQsIDE0MSwgMjEzLCAyNTUsIDI0NCwgCi0gICAgNjEsIDIxOSwgNCwgMjU0LCAxNDEsIDIxMywgMjU1LCAyMjIsIDk1LCAyMTksIDQsIDI1NCwgMTQxLCAyMTMsIDI1NSwgMjE3LCAKLSAgICAxMjIsIDIxOSwgNCwgMjU0LCAxNDEsIDIxMywgMjU1LCAyNDMsIDIzMCwgMjE5LCA0LCAyNTQsIDE0MSwgMjQ2LCAzNiwgCi0gICAgMjMxLCAxNTUsIDI0NCwgNjEsIDIxOSwgNCwgMjU0LCAxNDEsIDIzMiwgMjI4LCAyMzEsIDE1NSwgMjQ0LCA2MSwgMjE5LCA0LCAKLSAgICAyNTQsIDE0MSwgMjMxLCAxNTUsIDIyMiwgOTUsIDIxOSwgNCwgMjU0LCAxNDEsIDIzMSwgMTU1LCAyMTcsIDEyMiwgMjE5LCAKLSAgICA0LCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAxMjIsIDIyNCwgMTY2LCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAxMjIsIAotICAgIDI0MiwgOSwgMjUsIDI1NCwgMTY3LCAyNTMsIDExMCwgMTIyLCAyNDYsIDU0LCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAKLSAgICAxODAsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDI0NCwgODMsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDI0NCwgNTAsIAotICAgIDI0MCwgMjAwLCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAyNDQsIDUwLCAyMTcsIDEwMCwgMjUsIDI1NCwgMTY3LCAyNTMsIAotICAgIDExMCwgMjQ0LCA4NCwgMjE3LCAxMDAsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDI0NCwgNTAsIDIxOCwgMTgsIDI1LCAKLSAgICAyNTQsIDE2NywgMjUzLCAxMTAsIDIxNywgMjAxLCAyMTgsIDE4LCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAyNDQsIDg0LCAKLSAgICAyMTgsIDE4LCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAxMjIsIDI0MCwgMjAxLCAyMTgsIDE4LCAyNSwgMjU0LCAxNjcsIAotICAgIDI1MywgMTEwLCAyNDQsIDUwLCAyNDAsIDIwMSwgMjE4LCAxOCwgMjUsIDI1NCwgMTY3LCAyNTMsIDExMCwgMTIyLCAyMTcsIAotICAgIDEwMSwgMjE4LCAxOCwgMjUsIDI1NCwgMTY3LCAyNTMsIDExMCwgMjQ0LCA1MCwgMjE3LCAxMDEsIDIxOCwgMTgsIDI1LCAKLSAgICAyNTQsIDE2NywgMjUzLCAxMTAsIDI0NCwgNTAsIDIxOSwgOTAsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDIxNywgMjAxLCAKLSAgICAyMTksIDkwLCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAyNDQsIDg0LCAyMTksIDkwLCAyNSwgMjU0LCAxNjcsIDI1MywgCi0gICAgMTEwLCAxMjIsIDI0MCwgMjAxLCAyMTksIDkwLCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAyNDQsIDUwLCAyNDAsIDIwMSwgCi0gICAgMjE5LCA5MCwgMjUsIDI1NCwgMTY3LCAyNTMsIDExMCwgMTIyLCAyMTcsIDEwMSwgMjE5LCA5MCwgMjUsIDI1NCwgMTY3LCAKLSAgICAyNTMsIDExMCwgMjE3LCAyMDEsIDIxNywgMTAxLCAyMTksIDkwLCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAyNDQsIDg0LCAKLSAgICAyMTcsIDEwMSwgMjE5LCA5MCwgMjUsIDI1NCwgMTY3LCAyNTMsIDExMCwgMjE3LCAyMDEsIDIzMCwgMjM0LCAyNSwgMjU0LCAKLSAgICAxNjcsIDI0MSwgMTg5LCAxMjIsIDIyNSwgMTY0LCAyNSwgMjU0LCAxNjcsIDIxNywgMTM0LCAxMTYsIDI1LCAyNTQsIDE2NywgCi0gICAgMjQxLCAxODYsIDExNiwgMjUsIDI1NCwgMTY3LCAyNDUsIDY3LCAxMDksIDI1LCAyNTQsIDE2NywgMjE3LCAxMzQsIDEwOSwgCi0gICAgMjUsIDI1NCwgMTY3LCAyNDksIDgsIDExNywgMjQ2LCA1MywgMjUsIDI1NCwgMTY3LCAyNDUsIDY3LCAxMTcsIDI0NiwgNTMsIAotICAgIDI1LCAyNTQsIDE2NywgMjE2LCAxNjEsIDE4MCwgMjUsIDI1NCwgMTY3LCAyMTYsIDE2MSwgMjE3LCAyMDAsIDI1LCAyNTQsIAotICAgIDE2NywgMjE2LCAxNjEsIDIxNywgMjAxLCAyNTQsIDUwLCAxNywgMjUsIDI1NCwgMTY3LCAyNDEsIDE4NiwgMjE3LCAyMDAsIAotICAgIDI1LCAyNTQsIDE2NywgMjMxLCAxMDgsIDIxNywgMjAwLCAyNSwgMjU0LCAxNjcsIDIxNywgMTM0LCAyMTcsIDIwMCwgMjUsIAotICAgIDI1NCwgMTY3LCAyMTcsIDEzNCwgMjE3LCAxMTUsIDI1LCAyNTQsIDE2NywgMjE2LCAxNjEsIDI0NCwgODMsIDI1LCAyNTQsIAotICAgIDE2NywgMjE2LCAxNjEsIDI0NCwgODQsIDI1NCwgNTAsIDE3LCAyNSwgMjU0LCAxNjcsIDI0MSwgMTg2LCAyNDQsIDgzLCAyNSwgCi0gICAgMjU0LCAxNjcsIDIxNywgMTM0LCAyNDQsIDgzLCAyNSwgMjU0LCAxNjcsIDIxNywgMTM0LCAxMjIsIDI0MCwgMjAwLCAyNSwgCi0gICAgMjU0LCAxNjcsIDIxNywgMTM0LCAxMzMsIDI0MCwgMjAwLCAyNSwgMjU0LCAxNjcsIDI0NSwgNjcsIDI0NCwgNTAsIDI0MCwgCi0gICAgMjAwLCAyNSwgMjU0LCAxNjcsIDIxNiwgMTYxLCAyNDQsIDUwLCAyNDAsIDIwMCwgMjUsIDI1NCwgMTY3LCAyMTcsIDEzNCwgCi0gICAgMjQ0LCA1MCwgMjQwLCAyMDAsIDI1LCAyNTQsIDE2NywgMjUwLCAxNTksIDI0NCwgNTAsIDI0MCwgMjAwLCAyNSwgMjU0LCAKLSAgICAxNjcsIDIzMCwgNCwgMjQ0LCA1MCwgMjQwLCAyMDAsIDI1LCAyNTQsIDE2NywgMjE3LCAxMzQsIDEyMiwgMjE3LCAxMDAsIAotICAgIDI1LCAyNTQsIDE2NywgMjE3LCAxMzQsIDI0NCwgNTAsIDIxNywgMTAwLCAyNSwgMjU0LCAxNjcsIDI0OCwgOCwgMjQ0LCA1MCwgCi0gICAgMjMwLCAyMzQsIDI1LCAyNTQsIDE2NywgMjE5LCA1OCwgMjQ0LCA4NCwgMjMwLCAyMzQsIDI1LCAxMjIsIDE1MSwgNTIsIDI1LCAKLSAgICAxMjIsIDE1MSwgNSwgMjU0LCA1MCwgMTcsIDI1LCAxMTcsIDIxNywgMTIwLCA1MiwgMjUsIDEzMywgMjI0LCAxNjUsIDUyLCAKLSAgICAyNSwgMjEzLCAzNiwgNTIsIDI1LCAyMTgsIDE5LCA1MiwgMjUsIDI0NiwgNTUsIDUyLCAyNSwgMjI3LCAxMTAsIDUyLCAyNSwgCi0gICAgMTE3LCAyMjcsIDEwOSwgNTIsIDI1LCAxMzMsIDIyNywgMTA5LCA1MiwgMjUsIDI0MywgMjM3LCAyMjcsIDEwOSwgNTIsIDI1LCAKLSAgICAyNDQsIDUwLCAyMjcsIDEwOSwgNTIsIDI1LCAyMzEsIDEwMiwgNTIsIDI1LCAyMzMsIDE3OSwgMjUyLCA0OCwgNTIsIDI1LCAKLSAgICAyMzIsIDIyMywgNTIsIDI1LCAyMjYsIDI1NSwgNTIsIDI1LCAyMTMsIDE0NywgNTIsIDI1LCAyNTMsIDE1OCwgNTIsIDI1LCAKLSAgICAyNTMsIDE3MSwgNTIsIDI1LCAyNDIsIDEyMCwgNTIsIDI1LCAyMTYsIDE0NCwgMjUyLCA0OCwgNTIsIDI1LCAyMTIsIDgwLCAKLSAgICA1MiwgMjIzLCAxMDAsIDIyMSwgMzQsIDUyLCAyMjMsIDEwMCwgMjE1LCAxNTUsIDUyLCAyMjMsIDEwMCwgMjIxLCA2MiwgNTIsIAotICAgIDIyMywgMTAwLCAyMjEsIDMyLCA1MiwgMjIzLCAxMDAsIDI0NywgMTY1LCAyMjEsIDMyLCA1MiwgMjIzLCAxMDAsIDIyMCwgCi0gICAgOTQsIDUyLCAyMjMsIDEwMCwgMjQ4LCA0LCA1MiwgMjIzLCAxMDAsIDIyNCwgMTUxLCA1MiwgMjIzLCAxMDAsIDIyMSwgNTAsIAotICAgIDUyLCAyMjMsIDEwMCwgMjQ2LCAxNSwgNTIsIDIyMywgMTAwLCAyNTMsIDE1MywgNTIsIDIyMywgMTAwLCAyNTAsIDEwNSwgCi0gICAgNTIsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMjYsIDg4LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjI1LCAxNTgsIDI0MSwgCi0gICAgMjE5LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjE3LCAyNTIsIDI0MSwgMjE5LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjUwLCAKLSAgICAxNzksIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNTAsIDM4LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjEzLCAyMDgsIDIyNiwgCi0gICAgMTksIDI0NywgMTQzLCA1LCAyNDEsIDE5NSwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI0MywgNjEsIDIyNiwgMTksIDI0NywgCi0gICAgMTQzLCA1LCAyMTcsIDcwLCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgNjgsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNTEsIDk1LCAKLSAgICAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjIwLCAyMDksIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNDksIDE4MSwgMjI2LCAxOSwgCi0gICAgMjQ3LCAxNDMsIDUsIDIzMSwgMjQ3LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjMxLCAxOTksIDIyNiwgMTksIDI0NywgMTQzLCAKLSAgICA1LCAyMjIsIDEzNCwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDIzMywgOSwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI1MSwgCi0gICAgMTEzLCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjUwLCAxNjMsIDIyNSwgMTY3LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjQ3LCAKLSAgICA4NywgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI0OSwgMTYxLCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjIwLCAxNSwgMjI2LCAKLSAgICAxOSwgMjQ3LCAxNDMsIDUsIDI0OSwgMTYyLCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjUxLCAyMzksIDIyNiwgMTksIDI0NywgCi0gICAgMTQzLCA1LCAyMjAsIDE5NiwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI0MCwgMjM1LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgCi0gICAgMjQxLCAxNjMsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNTEsIDQxLCAyMzMsIDYwLCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgCi0gICAgMjUwLCAxNTYsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMjQsIDQ1LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjQ1LCAxODYsIAotICAgIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNDYsIDYxLCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjE2LCA2OSwgMjI2LCAxOSwgCi0gICAgMjQ3LCAxNDMsIDUsIDI1MSwgMjQyLCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjI1LCAxNjgsIDIxNiwgMTkzLCAyMjYsIDE5LCAKLSAgICAyNDcsIDE0MywgNSwgMjE0LCAxNDAsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMjYsIDE0NiwgMjI2LCAxOSwgMjQ3LCAxNDMsIAotICAgIDUsIDIyMywgOTIsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMzIsIDI1MiwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDIyNiwgCi0gICAgMjM5LCAyNTIsIDEwMSwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI0NCwgMTcsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNDIsIAotICAgIDExNSwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDIxOSwgNTksIDIyNiwgMTksIDI0NywgMTQzLCA1LCAzLCAyNTMsIDg0LCAKLSAgICAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjE0LCAxNiwgMjUyLCA2NywgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDM3LCAyMjcsIAotICAgIDExMiwgOTAsIDIzMiwgMTIwLCAxLCA2MSwgMjMyLCAxMjAsIDEsIDc0LCAyMzIsIDEyMCwgMSwgMjUzLCA3NCwgMjMyLCAKLSAgICAxMjAsIDEsIDI1MSwgMTk2LCAyMzIsIDEyMCwgMSwgMjQzLCAxNzcsIDIzMiwgMTIwLCAxLCAyNDksIDMsIDIzMiwgMTIwLCAKLSAgICAxLCA3MiwgMjMyLCAxMjAsIDEsIDIxNCwgODIsIDIzMiwgMTIwLCAxLCAyMTIsIDE1MiwgMjMyLCAxMjAsIDEsIDIxNywgCi0gICAgMTYzLCAyMzIsIDEyMCwgMSwgMjM1LCAxNDIsIDIzMiwgMTIwLCAxLCAyMzUsIDI3LCAyMzIsIDEyMCwgMSwgMjI0LCAyNDAsIAotICAgIDIzMiwgMTIwLCAxLCAxNTAsIDIzMiwgMTIwLCAxLCAxODMsIDIzMiwgMTIwLCAxLCAyMDQsIDIzMiwgMTIwLCAxLCAyMzAsIAotICAgIDIzNSwgMjMyLCAxMjAsIDEsIDIyOCwgMTk5LCAyMzIsIDEyMCwgMSwgNjksIDIzMiwgMTIwLCAxLCAyMjYsIDIyOSwgMjMyLCAKLSAgICAxMjAsIDEsIDIzNCwgNTYsIDIzMiwgMTIwLCAxLCAxNDksIDIzMiwgMTIwLCAxLCAxOTcsIDIzMiwgMTIwLCAxLCAyMTgsIAotICAgIDk5LCAyMzIsIDEyMCwgMSwgMjE2LCAxMTgsIDIzMiwgMTIwLCAxLCAyNTQsIDMyLCAyMzIsIDEyMCwgMSwgMjQ1LCAxMDgsIAotICAgIDIzMiwgMTIwLCAxLCAyNDIsIDQxLCAyMzIsIDEyMCwgMSwgMjEzLCAxNjYsIDI1MCwgMTY5LCAxLCA2MSwgMjUwLCAxNjksIAotICAgIDEsIDIyNiwgMjE1LCAyNTAsIDE2OSwgMSwgMjQ5LCAzLCAyNTAsIDE2OSwgMSwgMTUwLCAyNTAsIDE2OSwgMSwgMjE1LCA5MCwgCi0gICAgMjUwLCAxNjksIDEsIDE0OSwgMjUwLCAxNjksIDEsIDIzMywgODYsIDI1MCwgMTY5LCAxLCAyNTQsIDIzNCwgMjUwLCAxNjksIAotICAgIDEsIDIyNCwgMjQwLCAyNTAsIDE2OSwgMSwgMjUzLCA3NCwgMjUwLCAxNjksIDEsIDE4MywgMjUwLCAxNjksIDEsIDc1LCAKLSAgICAyNTAsIDE2OSwgMSwgMjQ4LCAxNjYsIDI1MCwgMTY5LCAxLCAyMTgsIDk5LCAyNTAsIDE2OSwgMSwgMjIxLCAyNiwgMjUwLCAKLSAgICAxNjksIDEsIDIyMSwgMjUsIDI1MCwgMTY5LCAxLCAxOTcsIDI1MCwgMTY5LCAxLCAyNTAsIDI1MSwgMjUwLCAxNjksIDEsIAotICAgIDY5LCAyNTAsIDE2OSwgMSwgMjI4LCAxOTksIDI1MCwgMTY5LCAxLCAyMTMsIDE2NiwgMjUwLCAxNjksIDEsIDIwNCwgMjUwLCAKLSAgICAxNjksIDEsIDIxNiwgMTE3LCAyNTAsIDE2OSwgMSwgMjI2LCAyMjksIDI1MCwgMTY5LCAxLCAyMTksIDE1OCwgMjUwLCAxNjksIAotICAgIDEsIDcyLCAyNTAsIDE2OSwgMSwgNzQsIDI1MCwgMTY5LCAxLCAyMTUsIDg3LCAyNTAsIDE2OSwgMSwgMjM1LCAyNywgMjUwLCAKLSAgICAxNjksIDEsIDIzNSwgMTgsIDI1MCwgMTY5LCAxLCAyMjksIDIzMCwgMjUwLCAxNjksIDEsIDIxNSwgOTIsIDI1MCwgMTY5LCAKLSAgICAxLCAyNDMsIDE3NywgMjUwLCAxNjksIDEsIDI0MywgMTEyLCAyNTAsIDE2OSwgMSwgMjE5LCAxMDcsIDI1MCwgMTY5LCAxLCAKLSAgICAyMTksIDEwNiwgMjUwLCAxNjksIDEsIDIyOSwgMTYxLCAyNTAsIDE2OSwgMSwgMjM2LCAyOCwgMjUwLCAxNjksIDEsIDI1MCwgCi0gICAgMjUwLCAyNTAsIDE2OSwgMSwgMjE2LCAxMTgsIDI1MCwgMTY5LCAxLCAyMTUsIDg5LCAyNTAsIDE2OSwgMSwgMjIzLCA4MiwgCi0gICAgMjUwLCAxNjksIDEsIDIzMSwgMTkyLCAyNTAsIDE2OSwgMSwgMjMxLCAxOTEsIDI1MCwgMTY5LCAxLCAyMzEsIDE5MCwgMjUwLCAKLSAgICAxNjksIDEsIDIzMSwgMTg5LCAyNTAsIDE2OSwgMSwgMjMzLCA4NSwgMjUwLCAxNjksIDEsIDI0NSwgMTkwLCAyNTAsIDE2OSwgCi0gICAgMSwgMjE1LCA4OCwgNTMsIDMyLCAxLCA2MSwgNTMsIDMyLCAxLCAyNTEsIDI1MSwgNTMsIDMyLCAxLCAyMzQsIDE4OCwgNTMsIAotICAgIDMyLCAxLCAyNDgsIDQxLCA1MywgMzIsIDEsIDc0LCA1MywgMzIsIDEsIDIxNCwgMjMyLCA1MywgMzIsIDEsIDIxMiwgODcsIAotICAgIDUzLCAzMiwgMSwgMjQxLCAyMjIsIDUzLCAzMiwgMSwgMjE3LCAxNDgsIDUzLCAzMiwgMSwgNzIsIDUzLCAzMiwgMSwgMTgxLCAKLSAgICA1MywgMzIsIDEsIDI0NSwgMTMxLCA1MywgMzIsIDEsIDI0NSwgMTE3LCA1MywgMzIsIDEsIDI0NSwgMTA4LCA1MywgMzIsIDEsIAotICAgIDI0NSwgNDAsIDUzLCAzMiwgMSwgNzUsIDUzLCAzMiwgMSwgMjI2LCA5NiwgNTMsIDMyLCAxLCAyMjAsIDI0MywgNTMsIDMyLCAKLSAgICAxLCAyMzMsIDIzOCwgNTMsIDMyLCAxLCAyNDUsIDU1LCA1MywgMzIsIDEsIDI0NSwgNDUsIDUzLCAzMiwgMSwgMjE3LCAyMjksIAotICAgIDUzLCAzMiwgMSwgNjksIDUzLCAzMiwgMSwgMjQ1LCAxMzQsIDUzLCAzMiwgMSwgMjI2LCAxMiwgNTMsIDMyLCAxLCAyMzQsIAotICAgIDEyNSwgNTMsIDMyLCAxLCAyNDUsIDE1OSwgNTMsIDMyLCAxLCAyNDUsIDQ3LCA1MywgMzIsIDEsIDI1MCwgNjcsIDUzLCAzMiwgCi0gICAgMSwgMjM2LCAyOCwgNTMsIDMyLCAxLCAyMTUsIDkyLCA1MywgMzIsIDIyOCwgNTQsIDExNiwgNTMsIDMyLCAyMjgsIDU0LCAKLSAgICAxODAsIDUzLCAzMiwgMjI4LCA1NCwgMjE3LCAyMDAsIDUzLCAzMiwgMjI4LCA1NCwgMjQ0LCA4MywgMjQyLCAxMjksIDEsIAotICAgIDI1NCwgMTExLCAyNDIsIDEyOSwgMSwgMjUyLCA4MiwgMjQyLCAxMjksIDEsIDI0MiwgMTg3LCAyNDIsIDEyOSwgMSwgMjQ4LCAKLSAgICAxNDgsIDI0MiwgMTI5LCAxLCAyNTQsIDEwNywgMjQyLCAxMjksIDEsIDIyNCwgMjIzLCAyNDIsIDEyOSwgMSwgMjM1LCAxNTMsIAotICAgIDI0MiwgMTI5LCAxLCAyNDIsIDIwLCAyNDIsIDEyOSwgMSwgMjE3LCAxMTEsIDI0MiwgMTI5LCAxLCAyNDUsIDE0MCwgMjQyLCAKLSAgICAxMjksIDEsIDIzMywgMjExLCAyNDIsIDEyOSwgMSwgMjMzLCAxMzYsIDI0MiwgMTI5LCAxLCAyMzEsIDI0MiwgMjQyLCAxMjksIAotICAgIDEsIDIzMCwgNiwgMjQyLCAxMjksIDEsIDIzNSwgMTIwLCAyNDIsIDEyOSwgMSwgMjE1LCAxMDcsIDI0MiwgMTI5LCAxLCAKLSAgICAyMjYsIDE5NiwgMjQyLCAxMjksIDEsIDIyOSwgMjYsIDI0MiwgMTI5LCAxLCAyMjQsIDU2LCAyNDIsIDEyOSwgMSwgMjIyLCAKLSAgICAxMzYsIDI0MiwgMTI5LCAxLCAyMTcsIDIxMiwgMjQyLCAxMjksIDEsIDIxMywgMjE5LCAyNDIsIDEyOSwgMSwgMjQ0LCAxNDYsIAotICAgIDI0MiwgMTI5LCAxLCAyMzYsIDMyLCAyNDIsIDEyOSwgMSwgMjQwLCAxOTEsIDI0MiwgMTI5LCAxLCAyMjcsIDcsIDI0MiwgCi0gICAgMTI5LCAxLCAyMjksIDMxLCAyNDAsIDIwMCwgMjE1LCAxNzksIDEsIDI1NCwgNTYsIDIxNSwgMTc5LCAxLCAyNTEsIDIwMywgCi0gICAgMjE1LCAxNzksIDEsIDI0MywgODQsIDIxNSwgMTc5LCAxLCAyMzQsIDEzOCwgMjE1LCAxNzksIDEsIDI0OCwgNSwgMjE1LCAKLSAgICAxNzksIDEsIDI0MSwgNTQsIDIxNSwgMTc5LCAxLCAyMTMsIDIxNCwgMjE1LCAxNzksIDEsIDIxMiwgNzgsIDIxNSwgMTc5LCAKLSAgICAxLCAyNDAsIDIyOCwgMjE1LCAxNzksIDEsIDIxNywgMTgzLCAyMTUsIDE3OSwgMSwgMjEyLCAyMjQsIDIxNSwgMTc5LCAxLCAKLSAgICAyMzQsIDI1NCwgMjE1LCAxNzksIDEsIDIyMCwgMjAwLCAyMTUsIDE3OSwgMSwgMjMzLCAxMjIsIDIxNSwgMTc5LCAxLCAyMzEsIAotICAgIDEyOSwgMjE1LCAxNzksIDEsIDI0NywgMjI5LCAyMTUsIDE3OSwgMSwgMjI4LCA1MCwgMjE1LCAxNzksIDEsIDIxMiwgOCwgCi0gICAgMjE1LCAxNzksIDEsIDIyMiwgMTYzLCAyMTUsIDE3OSwgMSwgMjU0LCAxMDMsIDIxNSwgMTc5LCAxLCAyMjUsIDM1LCAyMTUsIAotICAgIDE3OSwgMSwgMjIyLCAxOTQsIDIxNSwgMTc5LCAxLCAyMjQsIDE4MCwgMjE1LCAxNzksIDEsIDIyNCwgMzYsIDIxNSwgMTc5LCAKLSAgICAxLCAyMTcsIDE1MiwgMjE1LCAxNzksIDEsIDI0MiwgMjIwLCAyMTUsIDE3OSwgMSwgMTA4LCAyMTUsIDE3OSwgMSwgNzIsIAotICAgIDIxNSwgMTc5LCAxLCA2OSwgMjE1LCAxNzksIDEsIDIxOSwgMTE3LCAyMTUsIDE3OSwgMjEzLCAxOTYsIDI0NywgMTI0LCA1MywgCi0gICAgMjI2LCA0NSwgNSwgNjEsIDUzLCAyMjYsIDQ1LCA1LCA3MiwgNTMsIDIyNiwgNDUsIDUsIDY5LCA1MywgMjI2LCA0NSwgNSwgCi0gICAgMTgxLCA1MywgMjI2LCA0NSwgNSwgMjMzLCAyMzgsIDUzLCAyMjYsIDQ1LCA1LCAyNDMsIDExMCwgNTMsIDIyNiwgNDUsIDUsIAotICAgIDI0MiwgOTIsIDUzLCAyMjYsIDQ1LCA1LCAyMTMsIDE1MywgNTMsIDIyNiwgNDUsIDUsIDI1MCwgMjE5LCA1MywgMjI2LCA0NSwgCi0gICAgNSwgMjM1LCAxMzksIDUzLCAyMjYsIDQ1LCA1LCAyMzUsIDExMCwgNTMsIDIyNiwgNDUsIDUsIDIxOCwgNTIsIDUzLCAyMjYsIAotICAgIDQ1LCA1LCAyMTYsIDgyLCA1MywgMjI2LCA0NSwgNSwgMjQ4LCAxNjQsIDUzLCAyMjYsIDQ1LCA1LCAyNDcsIDIxMSwgNTMsIAotICAgIDIyNiwgNDUsIDUsIDI0NiwgMzMsIDUzLCAyMjYsIDQ1LCA1LCAyMTcsIDE2MSwgNTMsIDIyNiwgNDUsIDUsIDE5MywgNTMsIAotICAgIDIyNiwgNDUsIDUsIDI1MiwgMTA3LCA1MywgMjI2LCA0NSwgNSwgMjQ0LCAxNjQsIDUzLCAyMjYsIDQ1LCA1LCAyMDUsIDUzLCAKLSAgICAyMjYsIDQ1LCA1LCAyMjgsIDkyLCA1MywgMjI2LCA0NSwgNSwgMTg4LCA1MywgMjI2LCA0NSwgNSwgMjMxLCA0MiwgNTMsIAotICAgIDIyNiwgNDUsIDUsIDIzMCwgMTcyLCA1MywgMjI2LCA0NSwgNSwgMTg2LCA1MywgMjI2LCA0NSwgNSwgMjE1LCAxLCA1MywgCi0gICAgMjI2LCA0NSwgNSwgMjE0LCAxNTQsIDUzLCAyMjYsIDQ1LCA1LCAyMDMsIDUzLCAyMjYsIDQ1LCA1LCAyMjMsIDUxLCA1MywgCi0gICAgMjI2LCA0NSwgNSwgMjMzLCAxNTcsIDUzLCAyMjYsIDQ1LCA1LCAyMjIsIDIwMiwgNTMsIDIyNiwgNDUsIDUsIDIxMiwgMTA5LCAKLSAgICA1MywgMjI2LCA0NSwgNSwgMjIxLCAyNCwgNTMsIDIyNiwgNDUsIDUsIDIxOSwgMTU3LCA1MywgMjI2LCA0NSwgNSwgMTU5LCAKLSAgICA1MywgMjI2LCA0NSwgNSwgMjUzLCAxMDIsIDUzLCAyMjYsIDQ1LCA1LCAyNTMsIDEwMSwgNTMsIDIyNiwgNDUsIDUsIDI1MywgCi0gICAgMTAwLCA1MywgMjI2LCA0NSwgNSwgMjEzLCAxMzAsIDUzLCAyMjYsIDQ1LCA1LCAyNDgsIDE0NSwgNTMsIDIyNiwgNDUsIDUsIAotICAgIDI0OCwgMTQ0LCA1MywgMjI2LCA0NSwgNSwgMjUyLCA4OCwgNTMsIDIyNiwgNDUsIDUsIDI1MSwgMTQsIDUzLCAyMjYsIDQ1LCAKLSAgICAyMTMsIDE5NiwgMjQ3LCAxMjQsIDUzLCAyMjYsIDQ1LCA1MCwgMTE2LCA1MywgMjI2LCA0NSwgNTAsIDEwOSwgNTMsIDIyNiwgCi0gICAgNDUsIDUwLCAyMTcsIDIwMCwgNTMsIDIyNiwgNDUsIDUwLCAyMTYsIDM4LCA1MywgMjI2LCA0NSwgNTAsIDI0MCwgMjAwLCAKLSAgICAxNzEsIDYsIDEsIDE4NCwgNzIsIDE3MSwgNiwgMSwgMTg0LCA3NCwgMTcxLCA2LCAxLCAxODQsIDYxLCAxNzEsIDYsIDEsIAotICAgIDE4NCwgMjU0LCAxMTQsIDE3MSwgNiwgMSwgMTg0LCA3NSwgMTcxLCA2LCAxLCAxODQsIDIyNywgNDksIDE3MSwgNiwgMSwgCi0gICAgMjIwLCAxNzUsIDcyLCAxNzEsIDYsIDEsIDIyMCwgMTc1LCA3NCwgMTcxLCA2LCAxLCAyMjAsIDE3NSwgNjEsIDE3MSwgNiwgCi0gICAgMSwgMjIwLCAxNzUsIDI1NCwgMTE0LCAxNzEsIDYsIDEsIDIyMCwgMTc1LCA3NSwgMTcxLCA2LCAxLCAyMjAsIDE3NSwgMjI3LCAKLSAgICA0OSwgMTcxLCA2LCAxLCAyNTMsIDgzLCAxNzEsIDYsIDEsIDIyNiwgMjQwLCAxNzEsIDYsIDEsIDIxMywgMTgzLCAxNzEsIDYsIAotICAgIDEsIDIxMywgMzUsIDE3MSwgNiwgMSwgMjQyLCA0MSwgMTcxLCA2LCAxLCAyMjYsIDg2LCAxNzEsIDYsIDEsIDI1MSwgMjQyLCAKLSAgICAxNzEsIDYsIDEsIDIxNywgMjE5LCAxNzEsIDYsIDEsIDI0OCwgMjgsIDE3MSwgNiwgMSwgMjUwLCA2NCwgMTcxLCA2LCAxLCAKLSAgICAyMzUsIDEyNSwgMTcxLCA2LCAxLCAyMzQsIDE5NSwgMTcxLCA2LCAxLCAyNDMsIDU5LCAxNzEsIDYsIDEsIDI0NSwgMTU5LCAKLSAgICAxNzEsIDYsIDEsIDIxNCwgMjI3LCAxNzEsIDYsIDEsIDI0NSwgMjUsIDE3MSwgNiwgMSwgMjE3LCAxNDcsIDE3MSwgNiwgMSwgCi0gICAgMjQ1LCA0NSwgMTcxLCA2LCAxLCAyMTIsIDg1LCAxNzEsIDYsIDEsIDI0NSwgNDAsIDE3MSwgNiwgMSwgMjEyLCA2NiwgMTcxLCAKLSAgICA2LCAxLCAyNDUsIDU1LCAxNzEsIDYsIDEsIDI0NSwgMTMxLCAxNzEsIDYsIDEsIDI0NSwgMTE3LCAxNzEsIDYsIDEsIDI0NSwgCi0gICAgMTA4LCAxNzEsIDYsIDEsIDI0NSwgOTYsIDE3MSwgNiwgMSwgMjI3LCA4NSwgMTcxLCA2LCAxLCAyNDUsIDUsIDE3MSwgMywgCi0gICAgMSwgMTg0LCA3MiwgMTcxLCAzLCAxLCAxODQsIDc0LCAxNzEsIDMsIDEsIDE4NCwgNjEsIDE3MSwgMywgMSwgMTg0LCAyNTQsIAotICAgIDExNCwgMTcxLCAzLCAxLCAxODQsIDc1LCAxNzEsIDMsIDEsIDE4NCwgMjI3LCA0OSwgMTcxLCAzLCAxLCAyMjAsIDE3NSwgCi0gICAgNzIsIDE3MSwgMywgMSwgMjIwLCAxNzUsIDc0LCAxNzEsIDMsIDEsIDIyMCwgMTc1LCA2MSwgMTcxLCAzLCAxLCAyMjAsIAotICAgIDE3NSwgMjU0LCAxMTQsIDE3MSwgMywgMSwgMjIwLCAxNzUsIDc1LCAxNzEsIDMsIDEsIDIyMCwgMTc1LCAyMjcsIDQ5LCAKLSAgICAxNzEsIDMsIDEsIDI1MywgODMsIDE3MSwgMywgMSwgMjI2LCAyNDAsIDE3MSwgMywgMSwgMjEzLCAxODMsIDE3MSwgMywgMSwgCi0gICAgMjEzLCAzNSwgMTcxLCAzLCAxLCAyNDIsIDQxLCAxNzEsIDMsIDEsIDIyNiwgODYsIDE3MSwgMywgMSwgMjUxLCAyNDIsIAotICAgIDE3MSwgMywgMSwgMjE3LCAyMTksIDE3MSwgMywgMSwgMjQ4LCAyOCwgMTcxLCAzLCAxLCAyNTAsIDY0LCAxNzEsIDMsIDEsIAotICAgIDIzNSwgMTI1LCAxNzEsIDMsIDEsIDIzNCwgMTk1LCAxNzEsIDMsIDEsIDI0MywgNTksIDE3MSwgMywgMSwgMjQ1LCAxNTksIAotICAgIDE3MSwgMywgMSwgMjE0LCAyMjcsIDE3MSwgMywgMSwgMjQ1LCAyNSwgMTcxLCAzLCAxLCAyMTcsIDE0NywgMTcxLCAzLCAxLCAKLSAgICAyNDUsIDQ1LCAxNzEsIDMsIDEsIDIxMiwgODUsIDE3MSwgMywgMSwgMjQ1LCA0MCwgMTcxLCAzLCAxLCAyMTIsIDY2LCAxNzEsIAotICAgIDMsIDEsIDI0NSwgNTUsIDE3MSwgMywgMSwgMjQ1LCAxMzEsIDE3MSwgMywgMSwgMjQ1LCAxMTcsIDE3MSwgMywgMSwgMjQ1LCAKLSAgICAxMDgsIDE3MSwgMywgMSwgMjQ1LCA5NiwgMTcxLCAzLCAxLCAyMjcsIDg1LCAxNzEsIDMsIDEsIDI0NSwgNSwgMjIwLCAyNDksIAotICAgIDEsIDIyNiwgODQsIDIyMCwgMjQ5LCAxLCAyMTYsIDIxOCwgMjIwLCAyNDksIDEsIDIzNCwgMTAwLCAyMjAsIDI0OSwgMSwgCi0gICAgMjQ0LCAxMTYsIDIyMCwgMjQ5LCAxLCAyMTcsIDEyNSwgMjIwLCAyNDksIDEsIDIxOSwgMjQyLCAyMjAsIDI0OSwgMSwgMjE4LCAKLSAgICAyMTQsIDIyMCwgMjQ5LCAxLCAyNDksIDI1NCwgMjIwLCAyNDksIDEsIDIxMywgMzcsIDIyMCwgMjQ5LCAxLCAyNDAsIDE5OSwgCi0gICAgMjIwLCAyNDksIDEsIDI1MSwgMTgzLCAyMjAsIDI0OSwgMSwgMjQ4LCA0MCwgMjIwLCAyNDksIDEsIDI0MywgOTYsIDIyMCwgCi0gICAgMjQ5LCAxLCAyMTQsIDEwNCwgMjIwLCAyNDksIDEsIDIxNywgMTI5LCAyMjAsIDI0OSwgMSwgMjEyLCAxNCwgMjIwLCAyNDksIAotICAgIDEsIDIzMSwgMTU0LCAyMjAsIDI0OSwgMSwgMjM1LCA1MiwgMjIwLCAyNDksIDEsIDIxMywgMjEyLCAyMjAsIDI0OSwgMSwgCi0gICAgMjQyLCAyOSwgMjIwLCAyNDksIDEsIDIzMiwgMTk1LCAyMjAsIDI0OSwgMSwgMjMxLCAyLCAyMjAsIDI0OSwgMSwgMjM2LCAKLSAgICAzNSwgMjIwLCAyNDksIDEsIDI0NSwgMTU4LCAyMjAsIDI0OSwgMSwgMjUzLCAxNDYsIDIyMCwgMjQ5LCAxLCAyNTQsIDE1MiwgCi0gICAgMjIwLCAyNDksIDEsIDIyNywgNjIsIDIyMCwgMjQ5LCAxLCAyMTMsIDE5OSwgMjIwLCAyNDksIDEsIDIyNiwgMjU0LCAyMjAsIAotICAgIDI0OSwgMSwgMjU0LCAxMTQsIDIyMCwgMjQ5LCAxLCAyMjMsIDEwOSwgMjIwLCAyNDksIDEsIDIyOCwgNTAsIDIyMCwgMjQ5LCAKLSAgICAxLCAyNDUsIDE3MywgMjIwLCAyNDksIDEsIDI1NCwgMTE5LCAyMjAsIDI0OSwgMSwgMjQwLCAxMDQsIDIyMCwgMjQ5LCAxLCAKLSAgICAyMTUsIDEzNCwgMjIwLCAyNDksIDEsIDIyNywgMTE4LCAyMjAsIDI0OSwgMSwgMjI3LCA0MiwgMjIwLCAyNDksIDEsIDIyNywgCi0gICAgODQsIDIyMCwgMjQ5LCAxLCAyNTMsIDg2LCAyMjAsIDI0OSwgMSwgMjUzLCAxODksIDIyMCwgMjQ5LCAxLCAyMjcsIDI0LCAKLSAgICAyMjAsIDI0OSwgMSwgMjU0LCAxMDAsIDIyMCwgMjQ5LCAxLCAyNDUsIDQ5LCAyMjAsIDI0OSwgMSwgMjUzLCAxNjgsIDIyMCwgCi0gICAgMjQ5LCAxLCAyNDUsIDE4MywgMjIwLCAyNDksIDEsIDI0MCwgMTEwLCAyMjAsIDI0OSwgMSwgMjEzLCA0LCAyMjcsIDksIDEsIAotICAgIDI1NCwgNzgsIDIyNywgOSwgMSwgMjUyLCAxMDcsIDIyNywgOSwgMSwgMjE4LCA1MiwgMjI3LCA5LCAxLCAyMzUsIDEzOSwgCi0gICAgMjI3LCA5LCAxLCAyMTMsIDE1MywgMjI3LCA5LCAxLCAyMzQsIDEzOCwgMjI3LCA5LCAxLCAyNDgsIDI3LCAyMjcsIDksIDEsIAotICAgIDIwMywgMjI3LCA5LCAxLCAyMjIsIDIwMiwgMjI3LCA5LCAxLCAyMjAsIDIwNiwgMjI3LCA5LCAxLCAyNDcsIDIzMiwgMjI3LCAKLSAgICA5LCAxLCAyNTAsIDE0OCwgMjI3LCA5LCAxLCAyNDMsIDExMCwgMjI3LCA5LCAxLCAyNDQsIDE2NCwgMjI3LCA5LCAxLCAyMjQsIAotICAgIDIzMCwgMjI3LCA5LCAxLCAyMzUsIDEzLCAyMjcsIDksIDEsIDIzMywgMTUyLCAyMjcsIDksIDEsIDIzMSwgMTMsIDIyNywgOSwgCi0gICAgMSwgMjI4LCAzNSwgMjI3LCA5LCAxLCAyMTQsIDE0LCAyMjcsIDksIDEsIDE1OSwgMjI3LCA5LCAxLCAxODYsIDIyNywgOSwgCi0gICAgMSwgNjEsIDIyNywgOSwgMSwgNzQsIDIyNywgOSwgMSwgNzIsIDIyNywgOSwgMSwgNzUsIDIyNywgOSwgMSwgNjksIDIyNywgCi0gICAgOSwgMSwgMjU0LCAyMzIsIDIyNywgOSwgMSwgMjQ1LCAxNjUsIDIyNywgOSwgMSwgMjI3LCA0OSwgMjI3LCA5LCAyMSwgMjEyLCAKLSAgICA3OSwgMjI3LCA5LCAyMSwgMTE2LCAyMjcsIDksIDIxLCAxMDksIDIyNywgOSwgMjEsIDE2NiwgMjI3LCA5LCAyMSwgMTYzLCAKLSAgICAyMjcsIDksIDIxLCAxODAsIDIyNywgOSwgMjEsIDE4OSwgMjI3LCA5LCAyMSwgMTk4LCAyMjcsIDksIDIxLCAxOTUsIDIyNywgCi0gICAgOSwgMjEsIDIwMCwgMjQ5LCAxMCwgNCwgNjEsIDI0OSwgMTAsIDQsIDc0LCAyNDksIDEwLCA0LCA3MiwgMjQ5LCAxMCwgNCwgCi0gICAgNzUsIDI0OSwgMTAsIDQsIDY5LCAyNDksIDEwLCA0LCAyMzUsIDEzOSwgMjQ5LCAxMCwgNCwgMjM1LCA3MSwgMjQ5LCAxMCwgCi0gICAgNCwgMTgxLCAyNDksIDEwLCA0LCAyMzQsIDE4OCwgMjQ5LCAxMCwgNCwgMjM0LCAxMDEsIDI0OSwgMTAsIDQsIDIzNCwgMzcsIAotICAgIDI0OSwgMTAsIDQsIDIzMywgMjM4LCAyNDksIDEwLCA0LCAyMzMsIDE1NywgMjQ5LCAxMCwgNCwgMjMzLCA4MiwgMjQ5LCAxMCwgCi0gICAgNCwgMjMzLCAxMywgMjQ5LCAxMCwgNCwgMjMyLCAyMDgsIDI0OSwgMTAsIDQsIDIzMiwgMTU2LCAyNDksIDEwLCA0LCAxODgsIAotICAgIDI0OSwgMTAsIDQsIDIzMSwgMTU2LCAyNDksIDEwLCA0LCAyMzEsIDQyLCAyNDksIDEwLCA0LCAyMzAsIDIzMSwgMjQ5LCAxMCwgCi0gICAgNCwgMjMwLCAxNzIsIDI0OSwgMTAsIDQsIDIwNSwgMjQ5LCAxMCwgNCwgMjI5LCAxODcsIDI0OSwgMTAsIDQsIDIyOSwgNjQsIAotICAgIDI0OSwgMTAsIDQsIDIyOCwgMTg1LCAyNDksIDEwLCA0LCAyMjgsIDkyLCAyNDksIDEwLCA0LCAxOTMsIDI0OSwgMTAsIDQsIAotICAgIDIyNiwgOTYsIDI0OSwgMTAsIDQsIDIyNSwgMjQwLCAyNDksIDEwLCA0LCAyMjUsIDE1MCwgMjQ5LCAxMCwgNCwgMjI1LCAzNSwgCi0gICAgMjQ5LCAxMCwgNCwgMjAzLCAyNDksIDEwLCA0LCAyMjQsIDIxLCAyNDksIDEwLCA0LCAyMjMsIDE4OCwgMjQ5LCAxMCwgNCwgCi0gICAgMjIzLCAxMTIsIDI0OSwgMTAsIDQsIDIyMywgNTEsIDI0OSwgMTAsIDQsIDIyMiwgMjAyLCAyNDksIDEwLCA0LCAyMjIsIAotICAgIDEwMCwgMjQ5LCAxMCwgNCwgMjIwLCAxMTcsIDI0OSwgMTAsIDQsIDIxOSwgMjQyLCAyNDksIDEwLCA0LCAyMTksIDI3LCAKLSAgICAyNDksIDEwLCA0LCAyMTgsIDUyLCAyNDksIDEwLCA0LCAyMTcsIDIyOSwgMjQ5LCAxMCwgNCwgMjE3LCA3MSwgMjQ5LCAxMCwgCi0gICAgNCwgMTA4LCAyNDksIDEwLCA0LCAyMTYsIDgyLCAyNDksIDEwLCA0LCAyMTQsIDQ5LCAyNDksIDEwLCA0LCAyMTQsIDYsIAotICAgIDI0OSwgMTAsIDQsIDIxMywgMjM1LCAyNDksIDEwLCA0LCAyMTMsIDIxNCwgMjQ5LCAxMCwgNCwgMjEzLCAxNTMsIDI0OSwgCi0gICAgMTAsIDQsIDIxMywgMTUwLCAyNDksIDEwLCA0LCAyMTIsIDEwOSwgMjQ5LCAxMCwgNCwgMjEyLCAxNiwgMjM1LCAyNTMsIAotICAgIDI1MywgMTk3LCAxLCAyNTQsIDc2LCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDI1MSwgMjAyLCAyMzUsIDI1MywgMjUzLCAKLSAgICAxOTcsIDEsIDI0MiwgMTc3LCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDI0OCwgMTMzLCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIAotICAgIDI0MSwgMjIyLCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDIxNCwgMTQsIDIzNSwgMjUzLCAyNTMsIDE5NywgMSwgMjEyLCA5MCwgCi0gICAgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyNDEsIDE4MCwgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyMTcsIDE3OSwgMjM1LCAKLSAgICAyNTMsIDI1MywgMTk3LCAxLCAyMTIsIDIyMywgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyMzQsIDIzMCwgMjM1LCAyNTMsIAotICAgIDI1MywgMTk3LCAxLCAyMzMsIDExNywgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyMzEsIDEyOSwgMjM1LCAyNTMsIDI1MywgCi0gICAgMTk3LCAxLCAyMjgsIDUwLCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDIyMiwgMTY0LCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIAotICAgIDI1MywgNzgsIDIzNSwgMjUzLCAyNTMsIDE5NywgMSwgMjI2LCA5NiwgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyMjIsIDE5MywgCi0gICAgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyMjQsIDE3OSwgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyMjMsIDIxOSwgMjM1LCAKLSAgICAyNTMsIDI1MywgMTk3LCAxLCAyMjAsIDIwMCwgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyMTcsIDI0MywgMjM1LCAyNTMsIAotICAgIDI1MywgMTk3LCAyMjIsIDkyLCA1MiwgMjM1LCAyNTMsIDI1MywgMTk3LCA1MCwgMTE2LCAyMzUsIDI1MywgMjUzLCAxOTcsIAotICAgIDUwLCAxMDksIDIzNSwgMjUzLCAyNTMsIDE5NywgNTAsIDE2NiwgMjM1LCAyNTMsIDI1MywgMTk3LCA1MCwgMjE3LCAyMDAsIAotICAgIDIzNSwgMjUzLCAyNTMsIDE5NywgNTAsIDIxNiwgMzgsIDIzNSwgMjUzLCAyNTMsIDE5NywgNTAsIDEyMiwgMjQwLCAyMDAsIAotICAgIDIzNSwgMjUzLCAyNTMsIDE5NywgNTAsIDEyMiwgMjE3LCAxMDAsIDIzNSwgMjUzLCAyNTMsIDE5NywgNTAsIDIxNywgMjAxLCAKLSAgICAyMTcsIDEwMCwgMjI1LCAyNTEsIDEsIDI1NCwgNzQsIDIyNSwgMjUxLCAxLCAyNTEsIDIwNSwgMjI1LCAyNTEsIDEsIDI0MywgCi0gICAgODUsIDIyNSwgMjUxLCAxLCAyNDgsIDcsIDIyNSwgMjUxLCAxLCAyNDEsIDIyMiwgMjI1LCAyNTEsIDEsIDIxNCwgMjEsIAotICAgIDIyNSwgMjUxLCAxLCAyMTIsIDEwMywgMjI1LCAyNTEsIDEsIDI0MSwgMTgyLCAyMjUsIDI1MSwgMSwgMjE3LCAxODMsIDIyNSwgCi0gICAgMjUxLCAxLCAyMTIsIDIyNCwgMjI1LCAyNTEsIDEsIDIzNCwgMjU0LCAyMjUsIDI1MSwgMSwgMjMzLCAxMjMsIDIyNSwgMjUxLCAKLSAgICAxLCAyMzEsIDEyOSwgMjI1LCAyNTEsIDEsIDIyOCwgNTAsIDIyNSwgMjUxLCAxLCAyMjEsIDY0LCAyMjUsIDI1MSwgMSwgCi0gICAgMjU0LCAxMDMsIDIyNSwgMjUxLCAxLCAyMjYsIDk2LCAyMjUsIDI1MSwgMSwgMjIyLCAxOTQsIDIyNSwgMjUxLCAxLCAyMjQsIAotICAgIDE4NCwgMjI1LCAyNTEsIDEsIDIyMywgOTEsIDIyNSwgMjUxLCAxLCAyMjAsIDIwMCwgMjI1LCAyNTEsIDEsIDIxNywgMjQ4LCAKLSAgICAyMjUsIDI1MSwgNTAsIDExNiwgMjI1LCAyNTEsIDUwLCAyMTcsIDIwMCwgMjI1LCAyNTEsIDUwLCAyMTYsIDM4LCAyMjUsIAotICAgIDI1MSwgNTAsIDEyMiwgMjQwLCAyMDAsIDIyNSwgMjUxLCA1MCwgMTA5LCAyMjUsIDI1MSwgNTAsIDE2NiwgMjI1LCAyNTEsIAotICAgIDIxMywgMTk2LCAyMjEsIDU3LCAyMzIsIDExOSwgMSwgNjEsIDIzMiwgMTE5LCAxLCAyNTMsIDc0LCAyMzIsIDExOSwgMSwgCi0gICAgMjQzLCAxNzcsIDIzMiwgMTE5LCAxLCAyNDksIDMsIDIzMiwgMTE5LCAxLCA3NCwgMjMyLCAxMTksIDEsIDIxNSwgNzksIAotICAgIDIzMiwgMTE5LCAxLCA3MiwgMjMyLCAxMTksIDEsIDIxMywgMTA1LCAyMzIsIDExOSwgMSwgMjM1LCAyNywgMjMyLCAxMTksIAotICAgIDEsIDE1MCwgMjMyLCAxMTksIDEsIDE4MywgMjMyLCAxMTksIDEsIDIwNCwgMjMyLCAxMTksIDEsIDc1LCAyMzIsIDExOSwgMSwgCi0gICAgMTQ5LCAyMzIsIDExOSwgMSwgMjE5LCAxNTgsIDIzMiwgMTE5LCAxLCAyMTgsIDk5LCAyMzIsIDExOSwgMSwgNjksIDIzMiwgCi0gICAgMTE5LCAxLCAyNDQsIDIzMCwgMjMyLCAxMTksIDEsIDIyNCwgMjQwLCAyMzIsIDExOSwgMSwgMTk3LCAyMzIsIDExOSwgMSwgCi0gICAgMjE2LCAxMTgsIDIzMiwgMTE5LCAxLCAyNTQsIDMyLCAyMzIsIDExOSwgMSwgMjQ1LCAxMDgsIDIzMiwgMTE5LCAxLCAyMzIsIAotICAgIDEyMSwgMjMyLCAxMTksIDEsIDIyOCwgMTk5LCAyMzIsIDExOSwgMSwgMjUwLCAyNTIsIDIzMiwgMTE5LCAyMTYsIDE4MCwgCi0gICAgNzcsIDIzNCwgMTI2LCAxLCA2MSwgMjM0LCAxMjYsIDMwLCA1LCA3MiwgMjM0LCAxMjYsIDMwLCA1LCA2OSwgMjM0LCAxMjYsIAotICAgIDMwLCA1LCAxNjEsIDE0OSwgMjM0LCAxMjYsIDMwLCA1LCA3NCwgMjM0LCAxMjYsIDMwLCA1LCA3NSwgMjM0LCAxMjYsIDMwLCAKLSAgICAyMzMsIDQ3LCA3NywgMjM0LCAxMjYsIDUsIDUxLCAyMjMsIDEzMSwgNTUsIDIzNCwgMTI2LCA1LCAyNTMsIDI0MiwgMjM0LCAKLSAgICAxMjYsIDUsIDIxNCwgMTI4LCAyMzQsIDEyNiwgMSwgMTgxLCAyMzQsIDEyNiwgMSwgMjM0LCAxMzgsIDIzNCwgMTI2LCAxLCAKLSAgICAyNDMsIDExMCwgMjM0LCAxMjYsIDEsIDI0MiwgMjI1LCAyMzQsIDEyNiwgMSwgMjUwLCAyMTksIDIzNCwgMTI2LCAxLCAyNTAsIAotICAgIDkyLCAyMzQsIDEyNiwgMSwgMjM1LCAxMzksIDIzNCwgMTI2LCAxLCAyMjgsIDIzLCAyMzQsIDEyNiwgMSwgMjE2LCAxMTUsIAotICAgIDIzNCwgMTI2LCAxLCAyMTYsIDEwNSwgMjM0LCAxMjYsIDEsIDI0OCwgODYsIDIzNCwgMTI2LCAxLCAyNDgsIDcwLCAyMzQsIAotICAgIDEyNiwgMSwgMjI4LCAxOTgsIDIzNCwgMTI2LCAxLCAyMTgsIDUyLCAyMzQsIDEyNiwgMSwgMjE3LCAxNjEsIDIzNCwgMTI2LCAKLSAgICAxLCAyNDgsIDE2NCwgMjM0LCAxMjYsIDEsIDI0NywgMjMyLCAyMzQsIDEyNiwgMSwgMjA1LCAyMzQsIDEyNiwgMSwgMTkzLCAKLSAgICAyMzQsIDEyNiwgMSwgMjI2LCAyMywgMjM0LCAxMjYsIDEsIDI1MiwgMTA3LCAyMzQsIDEyNiwgMSwgMjUxLCAxOTUsIDIzNCwgCi0gICAgMTI2LCAxLCAxODgsIDIzNCwgMTI2LCAxLCAxODYsIDIzNCwgMTI2LCAxLCAyMDMsIDIzNCwgMTI2LCAxLCAyMzMsIDE1NywgCi0gICAgMjM0LCAxMjYsIDEsIDIxNSwgMSwgMjM0LCAxMjYsIDEsIDIyMSwgMjQsIDIzNCwgMTI2LCAxLCAyMTksIDE1NywgMjM0LCAKLSAgICAxMjYsIDEsIDIyMiwgMjAyLCAyMzQsIDEyNiwgMSwgMjEyLCAxMDksIDIzNCwgMTI2LCAxLCAxNTksIDIzNCwgMTI2LCAxLCAKLSAgICAyMzQsIDU1LCAyMzQsIDEyNiwgMSwgMjE2LCA4NywgMjM0LCAxMjYsIDUsIDI1MiwgNjAsIDQ5LCAyMzQsIDEyNiwgNSwgCi0gICAgMjUwLCAxNTQsIDIzNCwgMTI2LCA1LCA2MiwgNTUsIDIzNCwgMTI2LCAyMTQsIDEzMywgMjM0LCAxMjYsIDIxLCAxMTYsIAotICAgIDIzNCwgMTI2LCAyMSwgMTA5LCAyMzQsIDEyNiwgMjEsIDE2NiwgMjM0LCAxMjYsIDIxLCAxNjMsIDIzNCwgMTI2LCA1MCwgCi0gICAgMjE3LCAyMDAsIDIzNCwgMTI2LCA1MCwgMjE2LCAzOCwgMjM0LCAxMjYsIDUwLCAxMjIsIDI0MCwgMjAwLCAyMzQsIDEyNiwgCi0gICAgNTAsIDEyMiwgMjE3LCAxMDAsIDIzNCwgMTI2LCAyMjUsIDI3LCAyNDcsIDc0LCAyMzQsIDEyNiwgMjI1LCAyNywgMywgMjQ5LCAKLSAgICAyMjgsIDIzNCwgMTI2LCAyMjUsIDI3LCAyNDksIDIyOCwgMjM0LCAxMjYsIDIyNSwgMjcsIDI0OSwgNzcsIDEzNCwgMjM0LCAKLSAgICAxMjYsIDIyNSwgMjcsIDIzMSwgMjQzLCAyMzQsIDEyNiwgMjI1LCAyNywgMjMyLCAxNzAsIDIzNCwgMTI2LCAyMjUsIDI3LCAKLSAgICAyNDgsIDEyMywgMjM0LCAxMjYsIDIyNSwgMjcsIDUxLCAyNDgsIDEyMywgMjM0LCAxMjYsIDIyNSwgMjcsIDIzMiwgMjM2LCAKLSAgICA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyNDEsIDIyMiwgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjMzLCAxMTcsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDI0MSwgMTgwLCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMzEsIDEyOSwgCi0gICAgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjI0LCAxNzksIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIxNCwgMTQsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIyMCwgMjAwLCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMjMsIDIxOSwgCi0gICAgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjUxLCAyMDIsIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIxNywgMjQzLCAKLSAgICA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMjIsIDE0MiwgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjM0LCAyMzAsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIyOCwgNTAsIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIzNCwgMTIyLCAKLSAgICA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMjIsIDE5MywgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjIyLCAxNjQsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDI0NCwgMTIzLCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyNTQsIDc4LCAKLSAgICA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyNTMsIDc3LCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyNDcsIDIzMCwgCi0gICAgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjQyLCAxNzcsIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDI0OCwgMTMzLCAKLSAgICA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyNDIsIDIxNCwgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjE3LCAxNzksIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIxMiwgODksIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDI0NywgMjI3LCAKLSAgICA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMTIsIDIyMywgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjE3LCAxNTAsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIxNywgMTMxLCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCA1MCwgMTE2LCA1MywgCi0gICAgMjE5LCAyMTUsIDI1MywgMjA4LCA1MCwgMjQ0LCA4MywgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMTI4LCAyMzUsIDIzNSwgCi0gICAgMjUzLCA4OCwgMSwgNjEsIDI1MywgODgsIDEsIDI1NCwgMjMyLCAyNTMsIDg4LCAxLCAyNTMsIDI0MCwgMjUzLCA4OCwgMSwgCi0gICAgMjU0LCAxOTEsIDI1MywgODgsIDEsIDI1NCwgMzIsIDI1MywgODgsIDEsIDI1NCwgMTkyLCAyNTMsIDg4LCAxLCAyNTQsIAotICAgIDE0OCwgMjUzLCA4OCwgMSwgMjU0LCAxNDQsIDI1MywgODgsIDEsIDc0LCAyNTMsIDg4LCAxLCAyNDUsIDE2NSwgMjUzLCA4OCwgCi0gICAgMSwgNzUsIDI1MywgODgsIDEsIDIyNywgNDksIDI1MywgODgsIDEsIDcyLCAyNTMsIDg4LCAxLCAyMzYsIDI4LCAyNTMsIDg4LCAKLSAgICAxLCA2OSwgMjUzLCA4OCwgMSwgMjE1LCA5MiwgMjUzLCA4OCwgMSwgMjM0LCAxODgsIDI1MywgODgsIDEsIDIxMywgMTUwLCAKLSAgICAyNTMsIDg4LCAxLCAyMTMsIDExNiwgMjUzLCA4OCwgMSwgMjEzLCAxMjUsIDI1MywgODgsIDEsIDI0MywgMzgsIDI1MywgODgsIAotICAgIDEsIDI0MywgMCwgMjUzLCA4OCwgMSwgMjQyLCAyMTIsIDI1MywgODgsIDEsIDI1MCwgMTI0LCAyNTMsIDg4LCAxLCAyMzUsIAotICAgIDEyNywgMjUzLCA4OCwgMSwgMjE3LCAyMjksIDI1MywgODgsIDEsIDIxNywgMTQ4LCAyNTMsIDg4LCAxLCAyNDgsIDQxLCAKLSAgICAyNTMsIDg4LCAxLCAyNDcsIDIyNSwgMjUzLCA4OCwgMSwgMjE2LCAxMTIsIDI1MywgODgsIDEsIDIyNiwgOTYsIDI1MywgODgsIAotICAgIDEsIDI0NCwgMTIzLCAyNTMsIDg4LCAxLCAyNTEsIDI1MSwgMjUzLCA4OCwgMSwgMjUxLCAxOTIsIDI1MywgODgsIDEsIDIyOSwgCi0gICAgMTQ4LCAyNTMsIDg4LCAxLCAyMjksIDcwLCAyNTMsIDg4LCAxLCAyMjksIDcxLCAyNTMsIDg4LCAxLCAyMjksIDE4NywgMjUzLCAKLSAgICA4OCwgMSwgMjI4LCAxNywgMjUzLCA4OCwgMSwgMjI4LCAxOTcsIDI1MywgODgsIDEsIDIzMSwgMTU2LCAyNTMsIDg4LCAxLCAKLSAgICAyNDEsIDEwMiwgMjUzLCA4OCwgMSwgMjEyLCAxNTksIDI1MywgODgsIDEsIDIxMywgMzgsIDI1MywgODgsIDEsIDIxNCwgCi0gICAgMjMyLCAyNTMsIDg4LCAxLCAyMjQsIDIxLCAyNTMsIDg4LCAxLCAyMzMsIDgyLCAyNTMsIDg4LCAxLCAyMjIsIDEwMCwgMjUzLCAKLSAgICA4OCwgMSwgMjEyLCA4NywgMjUzLCA4OCwgMSwgMjIwLCAyNDMsIDI1MywgODgsIDEsIDIxMiwgNjcsIDI1MywgODgsIDEsIAotICAgIDIyMCwgMTI0LCAyNTMsIDg4LCAxLCAyMTksIDEyOSwgMjUzLCA4OCwgMSwgMjQxLCAyMjIsIDI1MywgODgsIDI1NCwgMTgxLCAKLSAgICA3NywgMjE3LCAzMiwgMTE3LCAxNzYsIDExMCwgMTIyLCA2MiwgMjI1LCAyNiwgMywgMTE3LCAxNzYsIDExMCwgMTIyLCA2MiwgCi0gICAgMjI1LCAyNiwgMjMzLCAxMDgsIDExNywgMTc2LCAxMTAsIDEyMiwgNjIsIDIyNSwgMjYsIDIzMywgMTA4LCAxMjIsIDYyLCAKLSAgICAxMTAsIDExNywgMTc2LCAyMjUsIDI2LCAyMzMsIDEwOCwgMTE3LCAyMjMsIDEyOSwgMTEwLCAxMjIsIDIyMywgMTMxLCAyMjUsIAotICAgIDI2LCAyMzMsIDEwOCwgMTIyLCAyMjMsIDEzMSwgMTEwLCAxMTcsIDIyMywgMTI5LCAyMjUsIDI2LCAyMzUsIDIxNSwgMjI2LCAKLSAgICAxMjYsIDEsIDI1NCwgNzYsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjUxLCAyMDIsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgCi0gICAgMjQyLCAxNzcsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjQ4LCAxMzMsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjQxLCAKLSAgICAyMjIsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjE0LCAxNCwgMjM1LCAyMTUsIDIyNiwgMTI2LCAxLCAyMTIsIDkwLCAyMzUsIAotICAgIDIxNSwgMjI2LCAxMjYsIDEsIDI0MSwgMTgwLCAyMzUsIDIxNSwgMjI2LCAxMjYsIDEsIDIxNywgMTc5LCAyMzUsIDIxNSwgCi0gICAgMjI2LCAxMjYsIDEsIDIxMiwgMjIzLCAyMzUsIDIxNSwgMjI2LCAxMjYsIDEsIDIzNCwgMjMwLCAyMzUsIDIxNSwgMjI2LCAKLSAgICAxMjYsIDEsIDIzMywgMTE3LCAyMzUsIDIxNSwgMjI2LCAxMjYsIDEsIDIzMSwgMTI5LCAyMzUsIDIxNSwgMjI2LCAxMjYsIDEsIAotICAgIDIyOCwgNTAsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjIyLCAxNjQsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjUzLCA3OCwgCi0gICAgMjM1LCAyMTUsIDIyNiwgMTI2LCAxLCAyMjYsIDk2LCAyMzUsIDIxNSwgMjI2LCAxMjYsIDEsIDIyMiwgMTkzLCAyMzUsIAotICAgIDIxNSwgMjI2LCAxMjYsIDEsIDIyNCwgMTc5LCAyMzUsIDIxNSwgMjI2LCAxMjYsIDEsIDIyMywgMjE5LCAyMzUsIDIxNSwgCi0gICAgMjI2LCAxMjYsIDEsIDIyMCwgMjAwLCAyMzUsIDIxNSwgMjI2LCAxMjYsIDEsIDIxNywgMjQzLCAyMzUsIDIxNSwgMjI2LCAKLSAgICAxMjYsIDUwLCAxMTYsIDIzNSwgMjE1LCAyMjYsIDEyNiwgNTAsIDEwOSwgMjM1LCAyMTUsIDIyNiwgMTI2LCA1MCwgMTY2LCAKLSAgICAyMzUsIDIxNSwgMjI2LCAxMjYsIDUwLCAxNjMsIDIzNSwgMjE1LCAyMjYsIDEyNiwgNTAsIDIxNywgMjAwLCAyMzUsIDIxNSwgCi0gICAgMjI2LCAxMjYsIDUwLCAyMTYsIDM4LCAyMzUsIDIxNSwgMjI2LCAxMjYsIDUwLCAxMjIsIDI0MCwgMjAwLCAyMzUsIDIxNSwgCi0gICAgMjI2LCAxMjYsIDUwLCAxMjIsIDIxNywgMTAwLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIDI1NCwgNzYsIDIzNSwgMjE1LCAKLSAgICAyMjYsIDE5OCwgMSwgMjUxLCAyMDIsIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgMjQyLCAxNzcsIDIzNSwgMjE1LCAyMjYsIAotICAgIDE5OCwgMSwgMjQ4LCAxMzMsIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgMjQxLCAyMjIsIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgCi0gICAgMjE0LCAxMywgMjM1LCAyMTUsIDIyNiwgMTk4LCAxLCAyMTIsIDkwLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIDI0MSwgMTgwLCAKLSAgICAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIDIxNywgMTc5LCAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIDIxMiwgMjIzLCAyMzUsIAotICAgIDIxNSwgMjI2LCAxOTgsIDEsIDIzNCwgMjMwLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIDIzMywgMTE3LCAyMzUsIDIxNSwgCi0gICAgMjI2LCAxOTgsIDEsIDIzMSwgMTI4LCAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIDIyOCwgNTAsIDIzNSwgMjE1LCAyMjYsIAotICAgIDE5OCwgMSwgMjIyLCAxNjQsIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgMjI2LCA5NiwgMjM1LCAyMTUsIDIyNiwgMTk4LCAxLCAKLSAgICAyMjIsIDE5MywgMjM1LCAyMTUsIDIyNiwgMTk4LCAxLCAyMjAsIDIwMCwgMjM1LCAyMTUsIDIyNiwgMTk4LCAxLCAyMTcsIAotICAgIDI0MywgMjM1LCAyMTUsIDIyNiwgMTk4LCA1MCwgMTE2LCAyMzUsIDIxNSwgMjI2LCAxOTgsIDUwLCAxMDksIDIzNSwgMjE1LCAKLSAgICAyMjYsIDE5OCwgNTAsIDE2NiwgMjM1LCAyMTUsIDIyNiwgMTk4LCA1MCwgMTYzLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDUwLCAKLSAgICAyMTcsIDIwMCwgMjM1LCAyMTUsIDIyNiwgMTk4LCA1MCwgMjE2LCAzOCwgMjM1LCAyMTUsIDIyNiwgMTk4LCA1MCwgMTIyLCAKLSAgICAyNDAsIDIwMCwgMjM1LCAyMTUsIDIyNiwgMTk4LCA1MCwgMTIyLCAyMTcsIDEwMCwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgNjEsIAotICAgIDUzLCAxODUsIDEsIDIxMywgMjgsIDYxLCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyNTQsIDE0OCwgNTMsIDE4NSwgMSwgMjI3LCAKLSAgICAxNiwgNzIsIDUzLCAxODUsIDEsIDIxMywgMjgsIDcyLCA1MywgMTg1LCAxLCAyMTMsIDI4LCA3NCwgNTMsIDE4NSwgMSwgCi0gICAgMjI3LCAxNiwgNzUsIDUzLCAxODUsIDEsIDIyNywgMTYsIDIyNywgOTksIDUzLCAxODUsIDEsIDIxMywgMjgsIDIyNywgOTksIAotICAgIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1NCwgMTg1LCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyNTQsIDE4NSwgNTMsIDE4NSwgMSwgCi0gICAgMjI3LCAxNiwgMjU0LCAxNDcsIDUzLCAxODUsIDEsIDIxMywgMjgsIDI1NCwgMTQ3LCA1MywgMTg1LCAxLCAyMjcsIDE2LCAKLSAgICAyNTQsIDEyMSwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjU0LCAxMjEsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1NCwgMTQyLCAKLSAgICA1MywgMTg1LCAxLCAyMTMsIDI4LCAyNTQsIDE0MiwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjU0LCAxNjAsIDUzLCAxODUsIDEsIAotICAgIDIxMywgMjgsIDI1NCwgMTYwLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTQsIDE0NiwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgCi0gICAgMjQ0LCAyMzYsIDUzLCAxODUsIDEsIDIxMywgMjgsIDI0NCwgMjM2LCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTMsIDgzLCAKLSAgICA1MywgMTg1LCAxLCAyMTMsIDI4LCAyNTMsIDgzLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTQsIDEyOSwgNTMsIDE4NSwgMSwgCi0gICAgMjEzLCAyOCwgMjU0LCAxMjksIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1NCwgMTQwLCA1MywgMTg1LCAxLCAyMTMsIDI4LCAKLSAgICAyNTQsIDE0MCwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjI3LCA5OCwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjI3LCA5OCwgNTMsIAotICAgIDE4NSwgMSwgMjI3LCAxNiwgMjU0LCA4NiwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjU0LCA4NiwgNTMsIDE4NSwgMSwgMjI3LCAKLSAgICAxNiwgMjU0LCAxMzksIDUzLCAxODUsIDEsIDIyNywgMTYsIDI0NSwgMTE5LCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNDUsIAotICAgIDExNywgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjU0LCAzMiwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjU0LCAxMzcsIDUzLCAKLSAgICAxODUsIDEsIDIxMywgMjgsIDI1NCwgMTM3LCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNDUsIDkwLCA1MywgMTg1LCAxLCAyMTMsIAotICAgIDI4LCAyNDUsIDkwLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNDUsIDEwNSwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjQ1LCAKLSAgICAxMDUsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI0NSwgNzcsIDUzLCAxODUsIDEsIDIxMywgMjgsIDI0NSwgNzcsIDUzLCAxODUsIAotICAgIDEsIDIxMywgMjgsIDI1NCwgMjQsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI0NSwgOTYsIDUzLCAxODUsIDEsIDIxMywgMjgsIAotICAgIDI1NCwgMTM2LCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNDUsIDcwLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyMjcsIDQxLCA1MywgCi0gICAgMTg1LCAxLCAyMjcsIDE2LCAyNDAsIDEwNiwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjQ1LCAxNzEsIDUzLCAxODUsIDEsIAotICAgIDIxMywgMjgsIDI0NSwgMTcxLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTMsIDIxNSwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgCi0gICAgMjUzLCAyMTUsIDUzLCAxODUsIDEsIDIyNywgMTYsIDIzNSwgMTc5LCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyMzUsIDE3OSwgCi0gICAgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjI3LCAyNSwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjI3LCAyNSwgNTMsIDE4NSwgMSwgCi0gICAgMjI3LCAxNiwgMjUzLCAyMTEsIDUzLCAxODUsIDEsIDIxMywgMjgsIDI1MywgMjExLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAKLSAgICAyNTQsIDEzNSwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjUzLCAxNTIsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1NCwgMTMzLCAKLSAgICA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTMsIDE0NiwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjUzLCAxNDYsIDUzLCAxODUsIDEsIAotICAgIDIyNywgMTYsIDI0NSwgNDAsIDUzLCAxODUsIDEsIDIxMywgMjgsIDI0NSwgNDAsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1MywgCi0gICAgMTIyLCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyNTMsIDEyMiwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjU0LCAxMzAsIDUzLCAKLSAgICAxODUsIDEsIDIxMywgMjgsIDI1NCwgMTMwLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyMjcsIDgsIDUzLCAxODUsIDEsIDIyNywgCi0gICAgMTYsIDI1MiwgNDUsIDIyMywgMzgsIDIxLCAxMTYsIDIyMywgMzgsIDIxLCAxMDksIDIyMywgMzgsIDIxLCAxNjYsIDIyMywgCi0gICAgMzgsIDIxLCAxNjMsIDIyMywgMzgsIDIxLCAxODAsIDIyMywgMzgsIDIxLCAxODksIDIyMywgMzgsIDIxLCAxOTgsIDIyMywgCi0gICAgMzgsIDIxLCAxOTUsIDIyMywgMzgsIDIxLCAyMDAsIDIyMywgMzgsIDUwLCAyMTcsIDIwMCwgMjIzLCAzOCwgNTAsIDIxNiwgCi0gICAgMzgsIDIyMywgMzgsIDUwLCAyMTcsIDExNSwgMjIzLCAzOCwgNTAsIDI0MywgMjQwLCAyMjMsIDM4LCA1MCwgMjQ0LCA4MywgCi0gICAgMjIzLCAzOCwgNTAsIDIyMCwgMzksIDIyMywgMzgsIDUwLCAyMjEsIDM3LCAyMjMsIDM4LCA1MCwgMjQ1LCAxNDEsIDIyMywgCi0gICAgMzgsIDUwLCAyMjksIDI2LCAyMjMsIDM4LCA1MCwgMTIyLCAyNDAsIDIwMCwgMjIzLCAzOCwgNTAsIDExNywgMjQwLCAyMDAsIAotICAgIDIyMywgMzgsIDUwLCAxMzMsIDI0MCwgMjAwLCAyMjMsIDM4LCA1MCwgMjQzLCAyMzcsIDI0MCwgMjAwLCAyMjMsIDM4LCA1MCwgCi0gICAgMjQ0LCA1MCwgMjQwLCAyMDAsIDIyMywgMzgsIDUwLCAyMjAsIDUzLCAyNDAsIDIwMCwgMjIzLCAzOCwgNTAsIDIyMSwgNDMsIAotICAgIDI0MCwgMjAwLCAyMjMsIDM4LCA1MCwgMjQ1LCAxNTAsIDI0MCwgMjAwLCAyMjMsIDM4LCA1MCwgMjI5LCAzMSwgMjQwLCAKLSAgICAyMDAsIDIyMywgMzgsIDI0MywgMjI4LCAxMjIsIDI0MiwgOSwgMjIzLCAzOCwgMjQzLCAyMjgsIDEyMiwgMjI0LCAxNjYsIAotICAgIDIyMywgMzgsIDI0MywgMjI4LCAxMjIsIDIxNywgMTIxLCAyMjMsIDM4LCAyNDMsIDIyOCwgMTE3LCAyMTcsIDExOSwgMTEyLCAKLSAgICA1LCAyNTAsIDE4NywgMTEyLCA1LCAyNTMsIDI0MiwgMTEyLCA1LCAyMTQsIDEyOCwgMTEyLCA1LCAyMzUsIDEwNCwgMTEyLCAKLSAgICA1LCAyMTUsIDEzMiwgMTEyLCAxLCA2MSwgMTEyLCAxLCAyNTQsIDIzMiwgMTEyLCAxLCA3MiwgMTEyLCAxLCAyMzYsIDI4LCAKLSAgICAxMTIsIDEsIDY5LCAxMTIsIDEsIDIxNSwgOTIsIDExMiwgMSwgMTYxLCAxNDksIDExMiwgMSwgMTYxLCAyMjMsIDgyLCAxMTIsIAotICAgIDEsIDE2MSwgMTUwLCAxMTIsIDEsIDE2MSwgMjMyLCAyMTQsIDExMiwgMSwgNzQsIDExMiwgMSwgMjU0LCAxMDgsIDExMiwgMSwgCi0gICAgNzUsIDExMiwgMSwgMjUzLCAxMDgsIDExMiwgMSwgMTgxLCAxMTIsIDEsIDIzNCwgMTM4LCAxMTIsIDEsIDI0MywgMTEwLCAKLSAgICAxMTIsIDEsIDI0MiwgMjI1LCAxMTIsIDEsIDIyOSwgMTU5LCAxMTIsIDEsIDI1MCwgMjE5LCAxMTIsIDEsIDI1MCwgOTIsIAotICAgIDExMiwgMSwgMjM1LCAxMzksIDExMiwgMSwgMjM1LCAxMTUsIDExMiwgMSwgMjI4LCAyMywgMTEyLCAxLCAyMTYsIDExNSwgCi0gICAgMTEyLCAxLCAyMTYsIDEwNSwgMTEyLCAxLCAyNDgsIDg2LCAxMTIsIDEsIDI0OCwgNzAsIDExMiwgMSwgMjI4LCAxOTgsIAotICAgIDExMiwgMSwgMjE4LCA1MiwgMTEyLCAxLCAyMTcsIDE2MSwgMTEyLCAxLCAyNDgsIDE2NCwgMTEyLCAxLCAyNDcsIDIzMiwgCi0gICAgMTEyLCAxLCAyMDUsIDExMiwgMSwgMTkzLCAxMTIsIDEsIDIyNiwgMjMsIDExMiwgMSwgMjUyLCAxMDcsIDExMiwgMSwgMjUxLCAKLSAgICAxOTUsIDExMiwgMSwgMTg4LCAxMTIsIDEsIDE4NiwgMTEyLCAxLCAyMDMsIDExMiwgMSwgMjMzLCAxNTcsIDExMiwgMSwgCi0gICAgMjE1LCAxLCAxMTIsIDEsIDIyMSwgMjQsIDExMiwgMSwgMjE5LCAxNTcsIDExMiwgMSwgMjIyLCAyMDIsIDExMiwgMSwgMTU5LCAKLSAgICAxMTIsIDEsIDIzMiwgMjEzLCAxMTIsIDEsIDUzLCAxNzgsIDIzMiwgMjEyLCAxMTIsIDEsIDUzLCAxNzgsIDIyMywgODEsIAotICAgIDExMiwgMSwgNTMsIDE3OCwgMjI4LCAxODksIDExMiwgMzAsIDUsIDI1NCwgMjMyLCAxMTIsIDMwLCA1LCAyNTEsIDE5MywgCi0gICAgMjU0LCAyMzIsIDExMiwgMzAsIDUsIDcyLCAxMTIsIDMwLCA1LCAyMzYsIDI4LCAxMTIsIDMwLCA1LCA2OSwgMTEyLCAzMCwgCi0gICAgNSwgMjE1LCA5MiwgMTEyLCAzMCwgNSwgMTYxLCAxNDksIDExMiwgMzAsIDUsIDE2MSwgMjIzLCA4MiwgMTEyLCAzMCwgNSwgCi0gICAgMTYxLCAxNTAsIDExMiwgMzAsIDUsIDE2MSwgMjMyLCAyMTQsIDExMiwgMzAsIDUsIDc0LCAxMTIsIDMwLCA1LCAyNTQsIAotICAgIDEwOCwgMTEyLCAzMCwgNSwgNzUsIDExMiwgMzAsIDUsIDI1MywgMTA4LCAxMTIsIDIxNCwgMTMzLCAxMTIsIDI0OCwgMTIzLCAKLSAgICAxMTIsIDUxLCAyNDgsIDEyMywgMTEyLCAyMjUsIDI3LCAyNDcsIDc0LCAxMTIsIDIyNSwgMjcsIDUxLCAyNDcsIDc0LCAxMTIsIAotICAgIDIyNSwgMjcsIDIzMiwgMjQyLCAxMTIsIDIyNSwgMjcsIDI0OSwgNzcsIDEzNCwgMTEyLCAyMjUsIDI3LCAyMzIsIDE3MCwgCi0gICAgMTEyLCA1MCwgMTE2LCAxMTIsIDUwLCAxMDksIDExMiwgNTAsIDE2NiwgMTEyLCA1MCwgMTYzLCAxMTIsIDUwLCAxODAsIAotICAgIDExMiwgNTAsIDE4OSwgMTEyLCA1MCwgMTk4LCAxMTIsIDUwLCAxOTUsIDExMiwgNTAsIDIwMCwgMTEyLCA1MCwgMjE3LCAKLSAgICAyMDAsIDExMiwgNTAsIDIxNiwgMzgsIDExMiwgNTAsIDIxNywgMTE1LCAxMTIsIDUwLCAyNDMsIDI0MCwgMTEyLCA1MCwgCi0gICAgMjQ0LCA4MywgMTEyLCA1MCwgMjIwLCAzOSwgMTEyLCA1MCwgMjIxLCAzNywgMTEyLCA1MCwgMjQ1LCAxNDEsIDExMiwgNTAsIAotICAgIDIyOSwgMjYsIDExMiwgNTAsIDEyMiwgMjQwLCAyMDAsIDExMiwgNTAsIDEyMiwgMjE3LCAxMDAsIDExMiwgMjEsIDIxMiwgCi0gICAgNzksIDExMiwgMjEsIDExNiwgMTEyLCAyMSwgMTA5LCAxMTIsIDIxLCAxNjYsIDExMiwgMjEsIDE2MywgMTEyLCAyMSwgMTgwLCAKLSAgICAxMTIsIDIxLCAxODksIDExMiwgMjEsIDE5OCwgMTEyLCAyMSwgMTk1LCAxMTIsIDIxLCAyMDAsIDIwOCwgNSwgMjUwLCAxODcsIAotICAgIDIwOCwgNSwgMjUzLCAyNDIsIDIwOCwgNSwgMjE0LCAxMjgsIDIwOCwgMSwgNjEsIDIwOCwgMSwgMjU0LCAyMzIsIDIwOCwgMSwgCi0gICAgNzIsIDIwOCwgMSwgMjM2LCAyOCwgMjA4LCAxLCA2OSwgMjA4LCAxLCAyMTUsIDkyLCAyMDgsIDEsIDc0LCAyMDgsIDEsIAotICAgIDI1NCwgMTA4LCAyMDgsIDEsIDc1LCAyMDgsIDEsIDI1MywgMTA4LCAyMDgsIDEsIDE4MSwgMjA4LCAxLCAyMzQsIDEzOCwgCi0gICAgMjA4LCAxLCAyNDMsIDExMCwgMjA4LCAxLCAyNDIsIDIyNSwgMjA4LCAxLCAyMjksIDE1OSwgMjA4LCAxLCAyNTAsIDIxOSwgCi0gICAgMjA4LCAxLCAyNTAsIDkyLCAyMDgsIDEsIDIzNSwgMTM5LCAyMDgsIDEsIDIzNSwgMTE1LCAyMDgsIDEsIDIyOCwgMjMsIAotICAgIDIwOCwgMSwgMjE2LCAxMTUsIDIwOCwgMSwgMjE2LCAxMDUsIDIwOCwgMSwgMjQ4LCA4NiwgMjA4LCAxLCAyNDgsIDc1LCAKLSAgICAyMDgsIDEsIDI0OCwgNzAsIDIwOCwgMSwgMjIzLCAxOTIsIDIwOCwgMSwgMjI4LCAxOTgsIDIwOCwgMSwgMjE4LCA1MiwgCi0gICAgMjA4LCAxLCAyMTcsIDE2MSwgMjA4LCAxLCAyNDgsIDE2NCwgMjA4LCAxLCAyNDcsIDIzMiwgMjA4LCAxLCAyMDUsIDIwOCwgCi0gICAgMSwgMTkzLCAyMDgsIDEsIDIyNiwgMjMsIDIwOCwgMSwgMjUyLCAxMDcsIDIwOCwgMSwgMjUxLCAxOTUsIDIwOCwgMSwgMTg4LCAKLSAgICAyMDgsIDEsIDE4NiwgMjA4LCAxLCAyMDMsIDIwOCwgMSwgMjMzLCAxNTcsIDIwOCwgMSwgMjE1LCAxLCAyMDgsIDEsIDIyMSwgCi0gICAgMjQsIDIwOCwgMSwgMjE5LCAxNTcsIDIwOCwgMSwgMjIyLCAyMDIsIDIwOCwgMSwgMTU5LCAyMDgsIDMwLCA1LCAyNTQsIAotICAgIDIzMiwgMjA4LCAzMCwgNSwgNzIsIDIwOCwgMzAsIDUsIDIzNiwgMjgsIDIwOCwgMzAsIDUsIDY5LCAyMDgsIDMwLCA1LCAKLSAgICAyMTUsIDkyLCAyMDgsIDMwLCA1LCA3NCwgMjA4LCAzMCwgNSwgMjU0LCAxMDgsIDIwOCwgMzAsIDUsIDc1LCAyMDgsIDMwLCAKLSAgICA1LCAyNTMsIDEwOCwgMjA4LCA1LCAyMTQsIDEzMywgMjA4LCA1LCAyMjgsIDYwLCAyMDgsIDI1NCwgMTgxLCA1MiwgMjA4LCAKLSAgICAyNDUsIDgwLCA1MiwgMjA4LCA1MCwgNTIsIDIwOCwgMjIyLCA5MiwgNzcsIDIwOCwgNTEsIDIyMiwgOTIsIDc3LCAyMDgsIAotICAgIDI0OCwgMTIzLCAyMDgsIDUxLCAyNDgsIDEyMywgMTUsIDUsIDYxLCAxNSwgNSwgMTE4LCAyOSwgNjEsIDE1LCA1LCAxMTgsIAotICAgIDI5LCAyNTIsIDk0LCAxNSwgNSwgMTE4LCAyOSwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAxMTgsIDI5LCAxNTksIDE1LCAKLSAgICA1LCAxMTgsIDI5LCAyMzYsIDMwLCAxNSwgNSwgMTE4LCAyOSwgMjMzLCAxMzksIDI0MiwgNzUsIDE1LCA1LCAxMTgsIDI5LCAKLSAgICAyMzAsIDEzMSwgMTUsIDUsIDExOCwgMjksIDIyMiwgMTkwLCAxNSwgNSwgMjU0LCAyMzQsIDE1LCA1LCAyNTQsIDE4NSwgMTUsIAotICAgIDUsIDI1NCwgMTg2LCAyOSwgMjUzLCAxNDQsIDE1LCA1LCAyNTQsIDE4NiwgMjksIDI0NiwgMjIsIDI0MiwgNzUsIDE1LCA1LCAKLSAgICAyNTQsIDE4NiwgMjksIDI0MywgOTQsIDE1LCA1LCAyNTQsIDE4NiwgMjksIDI0MywgODEsIDIxNywgMTkyLCAxNSwgNSwgCi0gICAgMjU0LCAxODYsIDI5LCAxNTksIDE1LCA1LCAyNTQsIDE4NiwgMjksIDIzNiwgMzEsIDI0MiwgNzUsIDE1LCA1LCAyNTQsIAotICAgIDE4NiwgMjksIDIzNiwgNCwgMTUsIDUsIDI1NCwgMTg2LCAyOSwgMjMzLCAxNDAsIDE1LCA1LCAyNTQsIDE4NiwgMjksIDIyMCwgCi0gICAgMjI4LCAxNSwgNSwgMjU0LCAxODYsIDI5LCAxMTEsIDk0LCAxMTEsIDk0LCA2OSwgMTUsIDUsIDI1NCwgMTg2LCAyNDIsIDc1LCAKLSAgICAxNSwgNSwgMjU0LCAxODMsIDE1LCA1LCAyNTQsIDE4NCwgMjksIDI1MiwgNzksIDE1LCA1LCAyNTQsIDE4NCwgMjksIDI0MywgCi0gICAgODEsIDIxNywgMTkyLCAxNSwgNSwgMjU0LCAxODQsIDI5LCAyMzEsIDE1NywgOTQsIDI0NSwgMTA4LCAxNSwgNSwgMjU0LCAKLSAgICAxODQsIDI5LCAyMjEsIDIyLCAxNSwgNSwgMjU0LCAxODQsIDI5LCAyMTgsIDIyLCAxNSwgNSwgMjU0LCAxNjAsIDE1LCA1LCAKLSAgICAyNTQsIDk0LCAxNSwgNSwgMjU0LCA5NSwgMjksIDI0NSwgNTAsIDE1LCA1LCAyNTQsIDk1LCAyOSwgMjIwLCAxOTAsIDk0LCAKLSAgICAyNDIsIDE2NiwgMTUsIDUsIDI1NCwgODYsIDE1LCA1LCAyNTQsIDg3LCAyOSwgMjU0LCA4NiwgMTUsIDUsIDI1NCwgODcsIAotICAgIDI5LCAyNDcsIDE2OCwgMTUsIDUsIDI1NCwgODcsIDI5LCAyNDIsIDE2NiwgMTUsIDUsIDI1NCwgODcsIDI5LCAxNTksIDE1LCAKLSAgICA1LCAyNTQsIDg3LCAyOSwgMjM1LCAzLCAxNSwgNSwgMjU0LCA4NywgMjksIDIzNCwgMTAxLCAxNSwgNSwgMjU0LCA4NywgMjksIAotICAgIDIyMCwgMjQzLCAxNSwgNSwgMjU0LCA4NywgMjksIDIxNSwgMTAwLCAxNSwgNSwgMjU0LCA4MywgMTUsIDUsIDI1NCwgNzYsIAotICAgIDE1LCA1LCAyNTQsIDQxLCAxNSwgNSwgMjU0LCA0MiwgMjksIDIyMCwgMjQzLCAxNSwgNSwgMjU0LCAzMiwgMTUsIDUsIDI1NCwgCi0gICAgMzMsIDExMCwgMjU0LCAzMiwgMTUsIDUsIDI1NCwgMzMsIDEzMywgMjE3LCAzOCwgMTUsIDUsIDI1NCwgMzMsIDk0LCAyMzAsIAotICAgIDM1LCAyMjcsIDMwLCAyNTQsIDMzLCA5NCwgMjMwLCAzNCwgMTUsIDUsIDI1NCwgMzMsIDk0LCAyMzAsIDM1LCAyMTksIDE2NSwgCi0gICAgMTUsIDUsIDI1NCwgNSwgMTUsIDUsIDI1MywgMjM1LCAxNSwgNSwgMjUzLCAyMDUsIDE1LCA1LCAyNTMsIDIwNiwgMjksIAotICAgIDIzMywgMjE3LCAxNSwgNSwgMjUzLCAxNzksIDE1LCA1LCAyNTMsIDE1MSwgMTUsIDUsIDI1MywgMTQ2LCAxNSwgNSwgMjUzLCAKLSAgICAxNDcsIDIxMiwgMzMsIDIxNywgMTkyLCAxNSwgNSwgMjUzLCAxNDcsIDIzNSwgNywgMjE3LCAxOTIsIDE1LCA1LCAyNTMsIAotICAgIDE0NywgMTEwLCAyNTMsIDE0NywgMjE2LCA3OCwgMTEwLCAyMTYsIDc4LCAyMTYsIDc4LCAxMTAsIDIxNiwgNzgsIDIyNiwgCi0gICAgMTQ5LCAxNSwgNSwgMjUzLCAxNDcsIDExMCwgMjUzLCAxNDcsIDExMCwgMjUzLCAxNDYsIDE1LCA1LCAyNTMsIDE0NywgMTEwLCAKLSAgICAyNTMsIDE0NywgMTEwLCAyNTMsIDE0NywgMjQ5LCA2NSwgMjUzLCAxNDcsIDExMCwgMjUzLCAxNDcsIDExMCwgMjUzLCAxNDYsIAotICAgIDE1LCA1LCAyNTMsIDE0NCwgMTUsIDUsIDI1MywgMTQxLCAxNSwgNSwgMjUyLCAxMDcsIDE1LCA1LCAyNTIsIDk0LCAxNSwgNSwgCi0gICAgMjUyLCA4OSwgMTUsIDUsIDI1MiwgODYsIDE1LCA1LCAyNTIsIDgwLCAxNSwgNSwgMjUyLCA4MSwgMTEwLCAyNTIsIDgwLCAKLSAgICAxNSwgNSwgMjUyLCA3OSwgMTUsIDUsIDEzNCwgMTUsIDUsIDI1MiwgNTksIDE1LCA1LCAyNTEsIDE4NCwgMTUsIDUsIDI1MSwgCi0gICAgMTg1LCAyOSwgNjEsIDE1LCA1LCAyNTEsIDE4NSwgMjksIDI0MywgNzIsIDE1LCA1LCAyNTEsIDE4NSwgMjksIDIzNiwgMzEsIAotICAgIDI0MiwgNzUsIDE1LCA1LCAyNTEsIDU0LCAxNSwgNSwgMjUxLCA1NSwgMTEwLCAyNTEsIDU1LCAyNTQsIDE4NSwgMTUsIDUsIAotICAgIDI1MSwgNTUsIDExMCwgMjUxLCA1NSwgMjE1LCAxNjAsIDE1LCA1LCAyNTEsIDU1LCAyNDksIDY1LCAyNTEsIDU0LCAxNSwgNSwgCi0gICAgMjUxLCAzOCwgMTUsIDUsIDI1MSwgMzksIDExMCwgMjUxLCAzOCwgMTUsIDUsIDI1MSwgMjcsIDE1LCA1LCAyNTEsIDI2LCAKLSAgICAxNSwgNSwgMjQ4LCAxNjQsIDE1LCA1LCAyNDgsIDE1NSwgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgMTE4LCA5NCwgCi0gICAgMjMxLCAyMTAsIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDI1NCwgNDEsIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCAKLSAgICA3NSwgMjksIDI1MiwgNzksIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDI1MSwgMTg0LCAxNSwgNSwgMjQ4LCAxNTYsIAotICAgIDIzNCwgNzUsIDI5LCAyNDMsIDExMCwgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgMjQzLCAxMTEsIDk0LCAyMzEsIAotICAgIDIxMCwgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgMjQyLCAxOTAsIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgCi0gICAgMjksIDI0MiwgMTczLCAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAyNDIsIDg0LCAxNSwgNSwgMjQ4LCAxNTYsIAotICAgIDIzNCwgNzUsIDI5LCAxNTksIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDIzNSwgMTc3LCAxNSwgNSwgMjQ4LCAKLSAgICAxNTYsIDIzNCwgNzUsIDI5LCAyMzUsIDE3OCwgOTQsIDIzMiwgMTU2LCAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAKLSAgICAyMzQsIDI0NywgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgMjMzLCAxNTcsIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCAKLSAgICA3NSwgMjksIDIzMiwgMTU2LCAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAyMzIsIDE1NywgOTQsIDIzMSwgMjA5LCAKLSAgICAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAyMzIsIDE0MiwgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgCi0gICAgMjI5LCAxODcsIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDIyNiwgMTUwLCA5NCwgMjI2LCAxNDksIDE1LCA1LCAKLSAgICAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDIyMCwgMTE3LCAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAyMTgsIDIyLCAKLSAgICAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAyMTUsIDE5OCwgOTQsIDI0MiwgMTczLCAxNSwgNSwgMjQ4LCAxNTYsIAotICAgIDIzNCwgNzUsIDI5LCAyMTUsIDEwMCwgMTUsIDUsIDI0OCwgMTMyLCAxNSwgNSwgMjQ4LCAxMTEsIDE1LCA1LCAyNDgsIDExMCwgCi0gICAgMTUsIDUsIDI0OCwgMTA5LCAxNSwgNSwgMjQ3LCAyMTEsIDE1LCA1LCAyNDcsIDE5NCwgMTUsIDUsIDI0NywgMTY5LCAxNSwgCi0gICAgNSwgMjQ3LCAxNzAsIDI5LCAyMjAsIDI0MywgMTUsIDUsIDI0NywgMTY4LCAxNSwgNSwgMjQ3LCAxNTgsIDE1LCA1LCAyNDcsIAotICAgIDE1OSwgMjM0LCAyMTMsIDExMSwgMjQyLCA3NiwgMjQ3LCAxMzksIDE1LCA1LCAyNDcsIDEzOSwgMTUsIDUsIDI0NiwgMzMsIAotICAgIDE1LCA1LCAyNDYsIDM0LCAxMTAsIDI0NiwgMzMsIDE1LCA1LCAyNDYsIDM0LCAyNDIsIDc1LCAxNSwgNSwgMjQ2LCAzNCwgCi0gICAgMjIwLCAyMjUsIDE1LCA1LCAyNDYsIDMxLCAxNSwgNSwgMjQ2LCAzMiwgMjksIDI0NSwgMzcsIDE1LCA1LCAyNDYsIDMwLCAKLSAgICAxNSwgNSwgMjQ2LCAyOSwgMTUsIDUsIDI0NiwgMjgsIDE1LCA1LCAyNDYsIDI3LCAxNSwgNSwgMjQ2LCAyMywgMTUsIDUsIAotICAgIDI0NiwgMjEsIDE1LCA1LCAyNDYsIDIyLCAyNDIsIDc1LCAxNSwgNSwgMjQ2LCAyMiwgMjQyLCA3NiwgMjQyLCA3NSwgMTUsIAotICAgIDUsIDI0NiwgMjAsIDE1LCA1LCAyNDYsIDEzLCAxNSwgNSwgNzQsIDE1LCA1LCAxOTEsIDI5LCAyMjYsIDE0OSwgMTUsIDUsIAotICAgIDE5MSwgMTEwLCAxOTEsIDIyOCwgNTEsIDExMCwgMjI4LCA1MCwgMTUsIDUsIDI0NSwgMTkwLCAxNSwgNSwgMjQ1LCAxOTEsIAotICAgIDI5LCAxMTgsIDk0LCAyNDIsIDMwLCA5NCwgMjQ4LCAxNjQsIDE1LCA1LCAyNDUsIDE5MSwgMjksIDI0MywgNzIsIDE1LCA1LCAKLSAgICAyNDUsIDE5MSwgMjksIDIzMSwgNDIsIDE1LCA1LCAyNDUsIDE5MSwgMjksIDIyMiwgMTc5LCAxNSwgNSwgMjQ1LCAxOTEsIAotICAgIDI5LCAyMjAsIDI0MywgMTUsIDUsIDI0NSwgMTkxLCAyOSwgNjksIDE1LCA1LCAyNDUsIDE2NywgMTUsIDUsIDI0NSwgMTU3LCAKLSAgICAxNSwgNSwgMjQ1LCAxMzEsIDE1LCA1LCAyNDUsIDEwOCwgMTUsIDUsIDI0NSwgMTA5LCAyOSwgMjQzLCA4MCwgMTUsIDUsIAotICAgIDI0NSwgMTA5LCAyOSwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAyNDUsIDEwOSwgMjksIDIzMSwgMTU2LCAxNSwgNSwgCi0gICAgMjQ1LCAxMDksIDI0OSwgNjUsIDI0NSwgMTA4LCAxNSwgNSwgMjQ1LCAxMDksIDIyNywgMzAsIDI0NSwgMTA4LCAxNSwgNSwgCi0gICAgMjQ1LCAxMDksIDIxOSwgMTY1LCAxNSwgNSwgMjQ1LCA1MiwgMTUsIDUsIDI0NSwgNTAsIDE1LCA1LCAyNDUsIDM3LCAxNSwgCi0gICAgNSwgMjQ0LCAyMzQsIDE1LCA1LCAyNDQsIDIzNSwgMjksIDYxLCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAxMTgsIDk0LCAyMzMsIAotICAgIDEyOCwgMTUsIDUsIDI0NCwgMjM1LCAyOSwgMTE4LCA5NCwgMjMzLCAxMjksIDI5LCAyMzMsIDEyOCwgMTUsIDUsIDI0NCwgCi0gICAgMjM1LCAyOSwgMjU0LCAzMiwgMTUsIDUsIDI0NCwgMjM1LCAyOSwgMjUyLCA5NCwgMTUsIDUsIDI0NCwgMjM1LCAyOSwgMjQ2LCAKLSAgICAyMiwgMjQyLCA3NSwgMTUsIDUsIDI0NCwgMjM1LCAyOSwgMjQ2LCAyMiwgMjQyLCA3NiwgMjQyLCA3NSwgMTUsIDUsIDI0NCwgCi0gICAgMjM1LCAyOSwgMTU5LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAyNDIsIDMwLCAyNDIsIDc1LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAKLSAgICAyMzYsIDMxLCAyNDIsIDc1LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAyMzQsIDIxMiwgMTUsIDUsIDI0NCwgMjM1LCAyOSwgCi0gICAgMjM0LCAyMTMsIDIxOSwgMTY1LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAyMzMsIDIzNiwgMTUsIDUsIDI0NCwgMjM1LCAyOSwgCi0gICAgMjMzLCAxNTcsIDE1LCA1LCAyNDQsIDIzNSwgMjksIDIzMywgMTI5LCAyOSwgMjMzLCAxMjgsIDE1LCA1LCAyNDQsIDIzNSwgCi0gICAgMjksIDIzMywgMTMsIDE1LCA1LCAyNDQsIDIzNSwgMjksIDIzMiwgMTU2LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAyMTUsIAotICAgIDE5NywgMTUsIDUsIDI0NCwgMjM1LCAyOSwgMjE1LCAxODgsIDE1LCA1LCAyNDMsIDExMCwgMTUsIDUsIDI0MywgMTExLCAKLSAgICAyNDIsIDc1LCAxNSwgNSwgMjQzLCAxMDgsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDExOCwgOTQsIDI0OCwgMTY1LCA5NCwgCi0gICAgMTU5LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAxMTgsIDk0LCAxNTksIDE1LCA1LCAyNDMsIDEwOSwgMjksIDExOCwgOTQsIAotICAgIDIzNiwgMzAsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI1NCwgMTg0LCAyMTcsIDE5MywgOTQsIDIxOCwgNDEsIDE1LCA1LCAKLSAgICAyNDMsIDEwOSwgMjksIDI1NCwgMzIsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI1MywgMTQ2LCAxNSwgNSwgMjQzLCAxMDksIAotICAgIDI5LCAyNTMsIDE0NSwgOTQsIDI0MywgOTQsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI1MiwgOTQsIDE1LCA1LCAyNDMsIDEwOSwgCi0gICAgMjksIDI1MiwgNjAsIDk0LCAyMDMsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI1MSwgMjcsIDE1LCA1LCAyNDMsIDEwOSwgMjksIAotICAgIDI1MSwgMjgsIDk0LCAyMDMsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI0OCwgMTY0LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAKLSAgICAyNDcsIDIxMSwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQ3LCAxNzAsIDI5LCAyMjAsIDI0MywgMTUsIDUsIDI0MywgMTA5LCAKLSAgICAyOSwgMjQ2LCAzMSwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQ1LCAxMzEsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI0NSwgCi0gICAgMTMyLCA5NCwgMjMzLCAxNTcsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI0NSwgMTA4LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAKLSAgICAyNDUsIDEwOSwgMjksIDI0MywgODEsIDIxNywgMTkyLCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyNDMsIDgxLCAyMTcsIDE5MiwgCi0gICAgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQzLCA3MiwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQyLCAxOTAsIDE1LCA1LCAyNDMsIAotICAgIDEwOSwgMjksIDI0MiwgMTg4LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyNDIsIDE4OSwgOTQsIDYxLCAxNSwgNSwgMjQzLCAKLSAgICAxMDksIDI5LCAyNDIsIDE3NCwgOTQsIDIxOSwgMjcsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI0MiwgMzAsIDk0LCAyMzIsIAotICAgIDE1NywgOTQsIDI0NSwgMzcsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI0MiwgMTIsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI0MiwgCi0gICAgMTMsIDk0LCAyMzMsIDE1NywgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQxLCAxNjYsIDk0LCAyMzMsIDEzLCAxNSwgNSwgMjQzLCAKLSAgICAxMDksIDI5LCAyNDAsIDIwOCwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjM2LCAzMSwgMjQyLCA3NSwgMTUsIDUsIDI0MywgCi0gICAgMTA5LCAyOSwgMjM1LCAxNjQsIDk0LCAyNDAsIDIxMywgOTQsIDI1MywgMTQ2LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMzQsIAotICAgIDI0NywgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjM0LCAyMTIsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDIzNCwgOTgsIDE1LCA1LCAKLSAgICAyNDMsIDEwOSwgMjksIDIzNCwgOTksIDk0LCAyMzMsIDEyOCwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjMzLCAyMzcsIDk0LCAKLSAgICAyNTQsIDMyLCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMzMsIDE1NywgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjMxLCAxNTcsIAotICAgIDk0LCAyNDUsIDEwOCwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjMxLCA0MiwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjI4LCA1MCwgCi0gICAgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjI4LCA1MSwgMTEwLCAyMjgsIDUwLCAxNSwgNSwgMjQzLCAxMDksIDI5LCAxOTMsIDE1LCAKLSAgICA1LCAyNDMsIDEwOSwgMjksIDIyMiwgMTc5LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMjIsIDE0NywgMTUsIDUsIDI0MywgCi0gICAgMTA5LCAyOSwgMjIwLCAyNDMsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDIyMCwgMjQ0LCA5NCwgMjE2LCA2MiwgMTUsIDUsIAotICAgIDI0MywgMTA5LCAyOSwgMjIwLCAyMTAsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDIxOCwgMjQ0LCAxNSwgNSwgMjQzLCAxMDksIAotICAgIDI5LCAyMTgsIDIyLCAxNSwgNSwgMjQzLCAxMDksIDI5LCA2OSwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjE1LCAxODgsIDE1LCAKLSAgICA1LCAyNDMsIDEwOSwgMjksIDIxNSwgMTg5LCA5NCwgMjQ2LCAzMywgMTUsIDUsIDI0MywgMTA5LCAxMTAsIDI0MywgMTA4LCAKLSAgICAxNSwgNSwgMjQzLCAxMDMsIDE1LCA1LCAyNDMsIDEwNCwgMjQ5LCA2NSwgMjQzLCAxMDMsIDE1LCA1LCAyNDMsIDEwMSwgMTUsIAotICAgIDUsIDI0MywgMTAyLCAxMTAsIDI0MywgMTAyLCAyNDMsIDczLCAxMTAsIDI0MywgNzIsIDE1LCA1LCAyNDMsIDk0LCAxNSwgNSwgCi0gICAgMjQzLCA5NSwgMjQzLCAxMDIsIDExMCwgMjQzLCAxMDIsIDI0MywgNzMsIDExMCwgMjQzLCA3MiwgMTUsIDUsIDI0MywgOTMsIAotICAgIDE1LCA1LCAyNDMsIDkxLCAxNSwgNSwgMjQzLCA4MiwgMTUsIDUsIDI0MywgODAsIDE1LCA1LCAyNDMsIDgxLCAyMTcsIDE5MiwgCi0gICAgMTUsIDUsIDI0MywgODEsIDExMCwgMjQzLCA4MCwgMTUsIDUsIDI0MywgODEsIDI0OSwgNjUsIDI0MywgODAsIDE1LCA1LCAKLSAgICAyNDMsIDcyLCAxNSwgNSwgMjQzLCA3MSwgMTUsIDUsIDI0MywgNjYsIDE1LCA1LCAyNDMsIDEyLCAxNSwgNSwgMjQzLCAxMywgCi0gICAgMjksIDIzMywgMjE3LCAxNSwgNSwgMjQyLCAxOTAsIDE1LCA1LCAyNDIsIDE5MSwgMjksIDc0LCAxNSwgNSwgMjQyLCAxOTEsIAotICAgIDI5LCA2OSwgMTUsIDUsIDI0MiwgMTkxLCAyNDksIDY1LCAyNDIsIDE5MCwgMTUsIDUsIDI0MiwgMTg4LCAxNSwgNSwgMjQyLCAKLSAgICAxODksIDExMCwgMjQyLCAxODgsIDE1LCA1LCAyNDIsIDE4OSwgMjQ5LCA2NSwgMjQyLCAxODgsIDE1LCA1LCAyNDIsIDE4NSwgCi0gICAgMTUsIDUsIDI0MiwgMTczLCAxNSwgNSwgMjQyLCAxNzQsIDI0MiwgNzUsIDE1LCA1LCAyNDIsIDE3MSwgMTUsIDUsIDI0MiwgCi0gICAgMTcyLCAyOSwgMTE4LCA5NCwgMjM2LCAzMCwgMTUsIDUsIDI0MiwgMTcyLCAyOSwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAKLSAgICAyNDIsIDE3MiwgMjksIDIzNiwgMzAsIDE1LCA1LCAyNDIsIDE3MiwgMjksIDIzMiwgMTU3LCA5NCwgMjM2LCAzMCwgMTUsIDUsIAotICAgIDI0MiwgMTcyLCAyOSwgMTkzLCAxNSwgNSwgMjQyLCAxNjgsIDE1LCA1LCAyNDIsIDE2NiwgMTUsIDUsIDI0MiwgMTY3LCAKLSAgICAyNDksIDY1LCAyNDIsIDE2NiwgMTUsIDUsIDI0MiwgMTY3LCAyOSwgMjUyLCA5NCwgMTUsIDUsIDI0MiwgMTY3LCAyOSwgCi0gICAgMjE4LCAyMiwgMTUsIDUsIDI0MiwgMTY3LCAyMTcsIDE5MiwgMTUsIDUsIDI0MiwgOTIsIDE1LCA1LCAyNDIsIDkzLCAyNDksIAotICAgIDY1LCAyNDIsIDkyLCAxNSwgNSwgMjQyLCA5MCwgMTUsIDUsIDI0MiwgOTEsIDI5LCAyMzQsIDI0NywgMTUsIDUsIDI0MiwgCi0gICAgOTEsIDI5LCAyMzQsIDI0OCwgMjksIDIzNiwgMzEsIDI0MiwgNzUsIDE1LCA1LCAyNDIsIDkxLCAyOSwgMjI4LCA1MCwgMTUsIAotICAgIDUsIDI0MiwgOTEsIDI5LCAyMjIsIDE4MCwgOTQsIDIxNiwgNzcsIDE1LCA1LCAyNDIsIDkxLCAyNDIsIDc1LCAxNSwgNSwgCi0gICAgMjQyLCA4NCwgMTUsIDUsIDI0MiwgODUsIDI5LCAxMTgsIDk0LCAyMzMsIDIxNywgMTUsIDUsIDI0MiwgODUsIDI5LCAyMzMsIAotICAgIDIxNywgMTUsIDUsIDI0MiwgODUsIDExMCwgMjQyLCA4NSwgMjMyLCAxNDksIDE1LCA1LCAyNDIsIDc5LCAxNSwgNSwgMjQyLCAKLSAgICA3NywgMTUsIDUsIDI0MiwgNzgsIDI5LCAyMjAsIDI0MywgMTUsIDUsIDI0MiwgNjksIDE1LCA1LCAyNDIsIDY4LCAxNSwgNSwgCi0gICAgMjQyLCA2NSwgMTUsIDUsIDI0MiwgNjQsIDE1LCA1LCAxNTksIDE1LCA1LCAyNDIsIDMwLCAyMTcsIDE5MiwgMTUsIDUsIAotICAgIDI0MiwgMzAsIDI0MiwgNzUsIDE1LCA1LCAyNDIsIDEyLCAxNSwgNSwgMjQxLCAxNjUsIDE1LCA1LCAyNDEsIDE2NiwgMjksIAotICAgIDI1MywgMTQ2LCAxNSwgNSwgMjQxLCAxNjYsIDI5LCAyNTMsIDE0NCwgMTUsIDUsIDI0MSwgMTY2LCAyOSwgMjUyLCA5NCwgCi0gICAgMTUsIDUsIDI0MSwgMTY2LCAyOSwgMjQ3LCAxMzksIDE1LCA1LCAyNDEsIDE2NiwgMjksIDI0MywgMTAxLCAxNSwgNSwgMjQxLCAKLSAgICAxNjYsIDI5LCAyMzQsIDkwLCAxNSwgNSwgMjQxLCAxNjYsIDI5LCAyMjgsIDUwLCAxNSwgNSwgMjQxLCAxNjYsIDI5LCAyMjAsIAotICAgIDI0MywgMTUsIDUsIDI0MSwgMTY2LCAyOSwgNjksIDE1LCA1LCAyNDAsIDIxMiwgMTUsIDUsIDI0MCwgMjA4LCAxNSwgNSwgCi0gICAgMjQwLCAyMDksIDI5LCAyNTQsIDMyLCAxNSwgNSwgMjQwLCAyMDksIDI5LCAyNDIsIDEyLCAxNSwgNSwgMjQwLCAyMDksIDI5LCAKLSAgICAyMzQsIDIxMiwgMTUsIDUsIDI0MCwgMjA5LCAyOSwgMjMyLCAyMjYsIDE1LCA1LCAyNDAsIDIwOSwgMjksIDIxNSwgMTg4LCAKLSAgICAxNSwgNSwgMjQwLCAyMDUsIDE1LCA1LCA3MiwgMTUsIDUsIDI0MCwgMTQ2LCA2MSwgMTUsIDUsIDI0MCwgMTA4LCAxNSwgNSwgCi0gICAgMjM2LCA1OCwgMTUsIDUsIDIzNiwgNTksIDExMCwgMjM2LCA1OSwgMjUxLCAyNywgMTUsIDUsIDIzNiwgNTksIDExMCwgMjM2LCAKLSAgICA1OSwgMjE5LCAxNjUsIDE1LCA1LCAyMzYsIDMzLCAxNSwgNSwgMjM2LCAzMCwgMTUsIDUsIDIzNiwgMzEsIDI0NywgMTk0LCAKLSAgICAxNSwgNSwgMjM2LCAzMSwgMjIzLCAxODgsIDE1LCA1LCAyMzYsIDMxLCAxMTAsIDIzNiwgMzEsIDIyMCwgMTk0LCAxMTAsIAotICAgIDIyMCwgMTk0LCAyMTUsIDE4OSwgMTEwLCAyMTUsIDE4OCwgMTUsIDUsIDIzNiwgMzEsIDI0MiwgNzUsIDE1LCA1LCAyMzYsIAotICAgIDIyLCAxNSwgNSwgMjM2LCAyMywgMjksIDI0MywgODEsIDIxNywgMTkyLCAxNSwgNSwgMjM2LCAyMSwgMTUsIDUsIDIzNiwgCi0gICAgMTEsIDE1LCA1LCAyMzYsIDEyLCAyOSwgMjE4LCAyMiwgMTUsIDUsIDIzNiwgMTIsIDI0OSwgNjUsIDIzNiwgMTEsIDE1LCA1LCAKLSAgICAyMzYsIDEyLCAyMjcsIDMwLCAyMzYsIDExLCAxNSwgNSwgMjM2LCAxMiwgMjE5LCAxNjUsIDE1LCA1LCAyMzYsIDQsIDE1LCAKLSAgICA1LCAyMzUsIDI1MSwgMTUsIDUsIDIzNSwgMTc3LCAxNSwgNSwgMjM1LCAxNjMsIDE1LCA1LCAxODEsIDE1LCA1LCAyMzUsIAotICAgIDE3LCAyOSwgNjEsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjU0LCAxNjAsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjU0LCAxNjEsIAotICAgIDk0LCAyMzMsIDIzNiwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyNTMsIDE0NCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyNTIsIDk0LCAKLSAgICAxNSwgNSwgMjM1LCAxNywgMjksIDI1MiwgNzksIDE1LCA1LCAyMzUsIDE3LCAyOSwgMTM0LCAxNSwgNSwgMjM1LCAxNywgMjksIAotICAgIDI1MSwgMTg0LCAxNSwgNSwgMjM1LCAxNywgMjksIDI0NSwgNTAsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjQ1LCAzNywgMTUsIAotICAgIDUsIDIzNSwgMTcsIDI5LCAyNDMsIDExMCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyNDMsIDk0LCAxNSwgNSwgMjM1LCAxNywgCi0gICAgMjksIDI0MywgODEsIDIxNywgMTkyLCAxNSwgNSwgMjM1LCAxNywgMjksIDI0MywgNzIsIDE1LCA1LCAyMzUsIDE3LCAyOSwgCi0gICAgMjQzLCA3MywgOTQsIDIyMSwgMjMsIDk0LCA2MSwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyNDIsIDE5MCwgMTUsIDUsIDIzNSwgCi0gICAgMTcsIDI5LCAyNDIsIDE3MywgMTUsIDUsIDIzNSwgMTcsIDI5LCAyNDIsIDE2NywgOTQsIDIyMiwgMTQ3LCAxNSwgNSwgMjM1LCAKLSAgICAxNywgMjksIDI0MiwgMTY3LCAyNDksIDY1LCAyNDIsIDE2NiwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyNDIsIDkyLCAxNSwgNSwgCi0gICAgMjM1LCAxNywgMjksIDI0MiwgNjgsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjM2LCAzMCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAKLSAgICAyMzYsIDExLCAxNSwgNSwgMjM1LCAxNywgMjksIDIzNCwgMjQ3LCAxNSwgNSwgMjM1LCAxNywgMjksIDIzNCwgMTAxLCAxNSwgCi0gICAgNSwgMjM1LCAxNywgMjksIDIzNCwgOTgsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjMzLCAxMywgMTUsIDUsIDIzNSwgMTcsIDI5LCAKLSAgICAyMzIsIDE1NiwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMzEsIDE1NiwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMzEsIDE1NywgOTQsIAotICAgIDI0NiwgMzMsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjMxLCAxNTcsIDk0LCAyNDIsIDE5MCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAKLSAgICAyMzEsIDE1NywgOTQsIDIxNywgMjI5LCAxNSwgNSwgMjM1LCAxNywgMjksIDIzMSwgNDIsIDE1LCA1LCAyMzUsIDE3LCAyOSwgCi0gICAgMjMxLCA0MywgOTQsIDIyOCwgNDUsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjI5LCAxODcsIDE1LCA1LCAyMzUsIDE3LCAyOSwgCi0gICAgMjI4LCA1MCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMjUsIDI0MCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMjMsIDUxLCAxNSwgCi0gICAgNSwgMjM1LCAxNywgMjksIDIyMiwgMjAyLCAxNSwgNSwgMjM1LCAxNywgMjksIDIyMiwgMTQ3LCAxNSwgNSwgMjM1LCAxNywgCi0gICAgMjksIDIyMSwgMjQsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjIwLCAyNDMsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjIwLCAyMTAsIAotICAgIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjIwLCAxNTAsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjIwLCAxMDgsIDE1LCA1LCAyMzUsIAotICAgIDE3LCAyOSwgMjE4LCAyNTIsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjE4LCAxLCAxNSwgNSwgMjM1LCAxNywgMjksIDY5LCAxNSwgCi0gICAgNSwgMjM1LCAxNywgMjksIDIxNSwgMTk3LCAxNSwgNSwgMjM1LCAxNywgMjksIDIxNSwgMTg4LCAxNSwgNSwgMjM1LCAxNywgCi0gICAgMjksIDIxNSwgMTYzLCAyOSwgMTkzLCAxNSwgNSwgMjM1LCAxNywgMjksIDIxNSwgMTAwLCAxNSwgNSwgMjM1LCAxNywgMjksIAotICAgIDIxMiwgMzcsIDE1LCA1LCAyMzUsIDE1LCAxNSwgNSwgMjM1LCAxNiwgMjQ5LCA2NSwgMjM1LCAxNSwgMTUsIDUsIDIzNSwgOCwgCi0gICAgMTUsIDUsIDIzNSwgNSwgMTUsIDUsIDIzNSwgMywgMTUsIDUsIDIzNSwgMiwgMTUsIDUsIDIzNSwgMCwgMTUsIDUsIDIzNSwgCi0gICAgMSwgMTEwLCAyMzUsIDAsIDE1LCA1LCAyMzQsIDI0NywgMTUsIDUsIDIzNCwgMjQ4LCAyOSwgMjM2LCAzMSwgMjQyLCA3NSwgCi0gICAgMTUsIDUsIDIzNCwgMjQzLCAxNSwgNSwgMjM0LCAyNDQsIDI5LCAyNTIsIDk0LCAxNSwgNSwgMjM0LCAyNDQsIDI0OSwgNjUsIAotICAgIDIzNCwgMjQzLCAxNSwgNSwgMjM0LCAyNDEsIDE1LCA1LCAyMzQsIDI0MCwgMTUsIDUsIDIzNCwgMjEyLCAxNSwgNSwgMjM0LCAKLSAgICAyMTMsIDIzMywgMTQxLCAyOSwgMTExLCAxMTAsIDIzMywgMTQxLCAyOSwgNjksIDE1LCA1LCAyMzQsIDIxMywgMTEwLCAyMzQsIAotICAgIDIxMywgMjMzLCAxNDEsIDI5LCAxMTEsIDExMCwgMjMzLCAxNDEsIDI5LCA2OSwgMTUsIDUsIDIzNCwgMTYzLCAxNSwgNSwgCi0gICAgMjM0LCAxMDEsIDE1LCA1LCAyMzQsIDEwMiwgMjksIDI1MiwgOTQsIDE1LCA1LCAyMzQsIDEwMiwgMjksIDY5LCAxNSwgNSwgCi0gICAgMjM0LCAxMDIsIDI5LCAyMTUsIDE4OCwgMTUsIDUsIDIzNCwgOTgsIDE1LCA1LCAyMzQsIDkwLCAxNSwgNSwgMjM0LCA3NywgCi0gICAgMTUsIDUsIDIzNCwgNzYsIDE1LCA1LCAyMzQsIDc0LCAxNSwgNSwgMjM0LCA3NSwgMTEwLCAyMzQsIDc0LCAxNSwgNSwgMjMzLCAKLSAgICAyMzgsIDE1LCA1LCAyMzMsIDIzOSwgMTEwLCAyNDEsIDE2NiwgMjksIDI1MywgMTQ1LCAyMzMsIDIzOSwgMTEwLCAyNDEsIAotICAgIDE2NiwgMjksIDI1MywgMTQ0LCAxNSwgNSwgMjMzLCAyMzYsIDE1LCA1LCAyMzMsIDIzNCwgMTUsIDUsIDIzMywgMjM1LCAKLSAgICAyMTQsIDI0NCwgMTcsIDE1LCA1LCAyMzMsIDIzMywgMTUsIDUsIDIzMywgMjMwLCAxNSwgNSwgMjMzLCAyMzEsIDI0MiwgNzUsIAotICAgIDE1LCA1LCAyMzMsIDIyOSwgMTUsIDUsIDIzMywgMjE3LCAxNSwgNSwgMjMzLCAyMTgsIDIyNywgMzAsIDIzMywgMjE3LCAxNSwgCi0gICAgNSwgMjMzLCAyMTIsIDE1LCA1LCAyMzMsIDE5NCwgMTUsIDUsIDIzMywgMTU3LCAxNSwgNSwgMjMzLCAxNDAsIDE1LCA1LCAKLSAgICAyMzMsIDE0MSwgMjksIDYxLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAxMTgsIDk0LCAyNDgsIDE2NSwgOTQsIDE1OSwgMTUsIDUsIAotICAgIDIzMywgMTQxLCAyOSwgMTE4LCA5NCwgMjQzLCA3MiwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMTE4LCA5NCwgMjMzLCAxMjgsIAotICAgIDE1LCA1LCAyMzMsIDE0MSwgMjksIDI1NCwgODYsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDI1NCwgMzIsIDE1LCA1LCAyMzMsIAotICAgIDE0MSwgMjksIDI1MywgMTQ3LCAyMTIsIDMzLCAyMTcsIDE5MiwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjUyLCA5NCwgMTUsIAotICAgIDUsIDIzMywgMTQxLCAyOSwgMjUxLCAxODQsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDI0OCwgMTExLCAxNSwgNSwgMjMzLCAKLSAgICAxNDEsIDI5LCAyNDUsIDEwOCwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjQzLCAxMTAsIDE1LCA1LCAyMzMsIDE0MSwgMjksIAotICAgIDI0MywgNzIsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDI0MiwgODQsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDI0MiwgODUsIDk0LCAKLSAgICAyNDIsIDg0LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAxNTksIDE1LCA1LCAyMzMsIDE0MSwgMjksIDI0MiwgMTIsIDE1LCA1LCAKLSAgICAyMzMsIDE0MSwgMjksIDI0MSwgMTY2LCAyOSwgMjI4LCA1MCwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjM2LCAzMSwgMjQyLCAKLSAgICA3NSwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjM2LCAxMSwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjM2LCAxMiwgOTQsIDE1OSwgCi0gICAgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjM2LCAxMiwgOTQsIDIzMiwgMTU2LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzQsIAotICAgIDEwMSwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjM0LCA5MCwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjMzLCAyMzYsIDE1LCA1LCAKLSAgICAyMzMsIDE0MSwgMjksIDIzMywgMjMwLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzMsIDIzMSwgOTQsIDI0MSwgMTY2LCA5NCwgCi0gICAgNjEsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIzMywgMTQwLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzIsIDIyNiwgMTUsIDUsIAotICAgIDIzMywgMTQxLCAyOSwgMjMyLCAxNTYsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIzMiwgMTQ0LCAxNSwgNSwgMjMzLCAxNDEsIAotICAgIDI5LCAyMzEsIDE1NiwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjMxLCAxNTcsIDk0LCAyNDUsIDEwOCwgMTUsIDUsIDIzMywgCi0gICAgMTQxLCAyOSwgMjMwLCAxMzEsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIyOSwgMTg3LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAKLSAgICAyMjAsIDI0NCwgOTQsIDIxOCwgMjQ0LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMjAsIDE5MCwgOTQsIDI0MiwgMTY3LCA5NCwgCi0gICAgMjQ1LCA1MCwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjIwLCAxOTAsIDk0LCAyNDIsIDE2NywgMjE3LCAxOTIsIDE1LCA1LCAKLSAgICAyMzMsIDE0MSwgMjksIDIyMCwgMTQ4LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMjAsIDE0OSwgOTQsIDIyMCwgMTQ4LCAxNSwgCi0gICAgNSwgMjMzLCAxNDEsIDI5LCAyMTgsIDI0NCwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjE4LCAzMywgMTUsIDUsIDIzMywgMTQxLCAKLSAgICAyOSwgMjE4LCAyMiwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjE3LCAyMzAsIDk0LCAxMTgsIDk0LCAyMTksIDI4LCA5NCwgCi0gICAgMjA1LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCA2OSwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMTExLCA5NCwgNjEsIDE1LCA1LCAKLSAgICAyMzMsIDE0MSwgMjksIDExMSwgOTQsIDExMSwgOTQsIDY5LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMTUsIDE5OCwgOTQsIAotICAgIDI1MywgMTQ2LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMTUsIDE4OCwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjE1LCAxMDAsIAotICAgIDE1LCA1LCAyMzMsIDE0MSwgMjE5LCAxNjUsIDE1LCA1LCAyMzMsIDEzOCwgMTUsIDUsIDIzMywgMTM5LCAyOSwgMjIwLCAKLSAgICAyNDMsIDE1LCA1LCAyMzMsIDEzOSwgMjksIDIyMCwgMjQ0LCA5NCwgMjE4LCAyNDQsIDE1LCA1LCAyMzMsIDEzOSwgMjQyLCAKLSAgICA3NSwgMTUsIDUsIDIzMywgMTM5LCAyNDIsIDc2LCAxMTAsIDIzMywgMTM5LCAyNDIsIDc2LCAyMjAsIDI0MywgMTUsIDUsIAotICAgIDIzMywgMTM1LCAxNSwgNSwgMjMzLCAxMjgsIDE1LCA1LCAyMzMsIDEyOSwgMjksIDIzMywgMTI4LCAxNSwgNSwgMjMzLCAKLSAgICAxMjYsIDE1LCA1LCAyMzMsIDEyNywgMjksIDIzMywgMjE3LCAxNSwgNSwgMjMzLCAxMjcsIDI5LCAyMzMsIDIxOCwgOTQsIAotICAgIDIyMywgNTEsIDE1LCA1LCAyMzMsIDEzLCAxNSwgNSwgMjMyLCAyNTQsIDE1LCA1LCAyMzIsIDI0NSwgMTUsIDUsIDIzMiwgCi0gICAgMjI2LCAxNSwgNSwgMjMyLCAxNTYsIDE1LCA1LCAyMzIsIDE1NywgMjksIDI1MiwgOTQsIDE1LCA1LCAyMzIsIDE1NCwgMTUsIAotICAgIDUsIDIzMiwgMTU1LCAyOSwgMjU0LCA4NiwgMTUsIDUsIDIzMiwgMTU1LCAyOSwgMjUyLCA5NCwgMTUsIDUsIDIzMiwgMTU1LCAKLSAgICAyOSwgMjQ1LCAzNywgMTUsIDUsIDIzMiwgMTU1LCAyOSwgMjQ1LCAzOCwgMjE3LCAxOTIsIDE1LCA1LCAyMzIsIDE1NSwgMjksIAotICAgIDI0MywgODEsIDIxNywgMTkyLCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAyNDEsIDE2NiwgMjksIDI1MiwgOTQsIDE1LCA1LCAKLSAgICAyMzIsIDE1NSwgMjksIDIzNiwgMTEsIDE1LCA1LCAyMzIsIDE1NSwgMjksIDIzNSwgNSwgMTUsIDUsIDIzMiwgMTU1LCAyOSwgCi0gICAgMjM1LCAzLCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAyMzUsIDQsIDk0LCAyNTMsIDE0NiwgMTUsIDUsIDIzMiwgMTU1LCAyOSwgCi0gICAgMjM0LCAxMDEsIDE1LCA1LCAyMzIsIDE1NSwgMjksIDIzMywgMTU4LCA5NCwgMjUzLCAxNDYsIDE1LCA1LCAyMzIsIDE1NSwgCi0gICAgMjksIDIzMywgMTQwLCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAyMzEsIDE1NywgOTQsIDI0NSwgMTA4LCAxNSwgNSwgMjMyLCAKLSAgICAxNTUsIDI5LCAyMjksIDE4NywgMTUsIDUsIDIzMiwgMTU1LCAyOSwgMjI4LCA5MiwgMTUsIDUsIDIzMiwgMTU1LCAyOSwgCi0gICAgMjIwLCAxMTgsIDk0LCAyNTMsIDE0NiwgMTUsIDUsIDIzMiwgMTU1LCAyOSwgMjIwLCAxMDAsIDk0LCAyNTEsIDU0LCAxNSwgCi0gICAgNSwgMjMyLCAxNTUsIDI5LCAyMTYsIDc3LCAxNSwgNSwgMjMyLCAxNTUsIDIxNywgMTkyLCAxNSwgNSwgMjMyLCAxNTUsIAotICAgIDI0OSwgNjUsIDIzMiwgMTU0LCAxNSwgNSwgMjMyLCAxNTUsIDIyNywgMzAsIDIzMiwgMTU0LCAxNSwgNSwgMjMyLCAxNTUsIAotICAgIDIxOSwgMTY1LCAxNSwgNSwgMjMyLCAxNTUsIDIyMCwgMjI1LCAxNSwgNSwgMjMyLCAxNTMsIDE1LCA1LCAyMzIsIDE0OSwgCi0gICAgMTUsIDUsIDIzMiwgMTUwLCAxMTAsIDIzMiwgMTQ5LCAxNSwgNSwgMjMyLCAxNTAsIDIyNywgMzAsIDIzMiwgMTQ5LCAxNSwgCi0gICAgNSwgMjMyLCAxNTAsIDIyMCwgMjI1LCAxNSwgNSwgMjMyLCAxNDcsIDE1LCA1LCAyMzIsIDE0NCwgMTUsIDUsIDIzMiwgMTQyLCAKLSAgICAxNSwgNSwgMjMyLCAxNDMsIDExMCwgMjMyLCAxNDIsIDE1LCA1LCAyMzIsIDE0MywgMTEwLCAyMzIsIDE0MywgMjQzLCA3MywgCi0gICAgMTEwLCAyNDMsIDcyLCAxNSwgNSwgMTg4LCAxNSwgNSwgMjMyLCA0MywgMjksIDIxOCwgMjIsIDE1LCA1LCAyMzIsIDQzLCAKLSAgICAyNDIsIDc1LCAxNSwgNSwgMjMyLCA0MiwgMTUsIDUsIDIzMiwgMTUsIDE1LCA1LCAyMzEsIDIyOSwgMTUsIDUsIDIzMSwgCi0gICAgMjEwLCAxNSwgNSwgMjMxLCAyMDksIDE1LCA1LCAyMzEsIDE1NiwgMTUsIDUsIDIzMSwgMTEyLCAxNSwgNSwgMjMxLCA0MiwgCi0gICAgMTUsIDUsIDIzMSwgMSwgMTUsIDUsIDIzMCwgMTcyLCAxNSwgNSwgMjMwLCAxNzMsIDExMCwgMjMwLCAxNzIsIDE1LCA1LCAKLSAgICAyMzAsIDE2MywgMTUsIDUsIDIzMCwgMTY0LCAyNDIsIDc1LCAxNSwgNSwgMjMwLCAxNDgsIDE1LCA1LCAyMzAsIDEzNCwgMTUsIAotICAgIDUsIDIzMCwgMTMxLCAxNSwgNSwgMjMwLCAxMzIsIDI5LCA2MSwgMTUsIDUsIDIzMCwgMTMyLCAyOSwgMjMzLCAyMTcsIDE1LCAKLSAgICA1LCAyMzAsIDEzMiwgMjksIDIxMiwgMTA5LCAxNSwgNSwgMjMwLCAxMzIsIDExMCwgMjMwLCAxMzEsIDE1LCA1LCAyMzAsIAotICAgIDEzMiwgMTEwLCAyMzAsIDEzMiwgMjksIDExOCwgOTQsIDIwNSwgMTUsIDUsIDIzMCwgMTMyLCAyNDksIDY1LCAyMzAsIDEzMSwgCi0gICAgMTUsIDUsIDIzMCwgMTI5LCAxNSwgNSwgMjMwLCAxMzAsIDI5LCA2MSwgMTUsIDUsIDIzMCwgMTMwLCAyOSwgMTE4LCA5NCwgCi0gICAgMjQ3LCAyMTEsIDE1LCA1LCAyMzAsIDEzMCwgMjksIDI0NywgMjExLCAxNSwgNSwgMjMwLCAxMzAsIDI0MiwgNzUsIDE1LCA1LCAKLSAgICAyMDUsIDE1LCA1LCAyMzAsIDQ1LCAxNSwgNSwgMjMwLCAzNCwgMTUsIDUsIDIzMCwgMzUsIDIzNSwgMTkwLCAxNSwgNSwgCi0gICAgMjMwLCAzNSwgMjksIDIyMCwgMTUxLCAyMTcsIDE5MiwgMTUsIDUsIDIzMCwgMzUsIDIyNywgMzAsIDIzMCwgMzQsIDE1LCA1LCAKLSAgICAyMzAsIDMzLCAxNSwgNSwgMjMwLCAyOCwgMjI4LCAzNiwgMTUsIDUsIDIzMCwgMjcsIDE1LCA1LCAyMzAsIDI2LCAxNSwgNSwgCi0gICAgMjI5LCAxODcsIDE1LCA1LCAyMjksIDE4OCwgMjksIDYxLCAxNSwgNSwgMjI5LCAxODgsIDI5LCAyMTUsIDE4OCwgMTUsIDUsIAotICAgIDIyOSwgMTg4LCAyMjAsIDIyNSwgMTUsIDUsIDIyOSwgNjQsIDE1LCA1LCAyMjksIDY1LCAyOSwgNzQsIDE1LCA1LCAyMjksIAotICAgIDYzLCAxNSwgNSwgMjI5LCAzNCwgMTUsIDUsIDIyOSwgMzUsIDI5LCAyNDMsIDgxLCAyMTcsIDE5MiwgMTUsIDUsIDIyOSwgCi0gICAgMzUsIDI5LCAyNDMsIDczLCA5NCwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAyMjksIDMyLCAxNSwgNSwgMjI5LCAzMywgCi0gICAgMjksIDI1NCwgMzIsIDE1LCA1LCAyMjksIDMzLCAyOSwgMjUzLCAxNDYsIDE1LCA1LCAyMjksIDMzLCAyOSwgMjUzLCAxNDcsIAotICAgIDk0LCAyNTMsIDE0NiwgMTUsIDUsIDIyOSwgMzMsIDI5LCAyNDIsIDg0LCAxNSwgNSwgMjI5LCAzMywgMjksIDIzMSwgMTU3LCAKLSAgICA5NCwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAyMjksIDMzLCAyOSwgMjI5LCAxODcsIDE1LCA1LCAyMjksIDMzLCAyOSwgCi0gICAgMjI4LCA1MCwgMTUsIDUsIDIyOSwgMzMsIDI5LCAyMjAsIDI0MywgMTUsIDUsIDIyOSwgMzMsIDI5LCAyMjAsIDI0NCwgOTQsIAotICAgIDExOCwgMjU0LCAzMiwgMTUsIDUsIDIyOSwgMzMsIDI5LCAyMjAsIDI0NCwgOTQsIDI1MywgMTQ2LCAxNSwgNSwgMjI5LCAzMywgCi0gICAgMjksIDIyMCwgMjQ0LCA5NCwgMjUzLCAxNDcsIDk0LCAyNTMsIDE0NiwgMTUsIDUsIDIyOSwgMzMsIDI5LCAyMTUsIDE5OCwgCi0gICAgOTQsIDI1MywgMTQ2LCAxNSwgNSwgMjI5LCAzMywgMjksIDIxNSwgMTAwLCAxNSwgNSwgMjI5LCAyMSwgMTUsIDUsIDIyOCwgCi0gICAgOTIsIDE1LCA1LCAyMjgsIDY1LCAxNSwgNSwgMjI4LCA1MCwgMTUsIDUsIDIyOCwgNTEsIDIzMywgMTM5LCAyOSwgMjQzLCAKLSAgICA3MiwgMTUsIDUsIDIyOCwgNTEsIDIzMywgMTM5LCAyOSwgMjMxLCAyMTAsIDE1LCA1LCAyMjgsIDUxLCAyMzMsIDEzOSwgMjksIAotICAgIDIyMiwgMTc5LCAxNSwgNSwgMjI4LCA1MSwgMjMzLCAxMzksIDI5LCAyMjIsIDE4MCwgMTEwLCAyMjgsIDUxLCAyMzMsIDEzOSwgCi0gICAgMjksIDIyMiwgMTc5LCAxNSwgNSwgMjI4LCA1MSwgMjMzLCAxMzksIDI5LCAyMTUsIDEwMCwgMTUsIDUsIDIyOCwgNTEsIAotICAgIDIxNywgMTkyLCAxNSwgNSwgMjI4LCA1MSwgMTEwLCAyMjgsIDUwLCAxNSwgNSwgMjI4LCA1MSwgMjQ5LCA2NSwgMjI4LCA1MCwgCi0gICAgMTUsIDUsIDIyOCwgNTEsIDI0OSwgNjUsIDIyOCwgNTEsIDIzMywgMTM5LCAxMTAsIDIzMywgMTM4LCAxNSwgNSwgMjI4LCAKLSAgICA0NSwgMTUsIDUsIDIyOCwgNDYsIDI1NCwgMTg0LCAyOSwgMjUzLCAxNDEsIDE1LCA1LCAyMjgsIDQ2LCAyNTQsIDE4NCwgMjksIAotICAgIDI1MSwgMTg0LCAxNSwgNSwgMjI4LCA0NiwgMjU0LCAxODQsIDI5LCAyNDYsIDI5LCAxNSwgNSwgMjI4LCA0NiwgMjU0LCAKLSAgICAxODQsIDI5LCAyNDIsIDg0LCAxNSwgNSwgMjI4LCA0NiwgMjU0LCAxODQsIDI5LCAyMzYsIDMxLCAyNDIsIDc1LCAxNSwgNSwgCi0gICAgMjI4LCA0NiwgMjU0LCAxODQsIDI5LCAyMzUsIDMsIDE1LCA1LCAyMjgsIDQ2LCAyNTQsIDE4NCwgMjksIDIzMywgMTU3LCAKLSAgICAxNSwgNSwgMjI4LCA0NiwgMjU0LCAxODQsIDI5LCAyMjksIDE4NywgMTUsIDUsIDIyOCwgNDYsIDI1NCwgMTg0LCAyOSwgCi0gICAgMjIwLCA5NywgMTUsIDUsIDIyOCwgNDYsIDI1NCwgMTg0LCAyOSwgMjE1LCAxOTcsIDE1LCA1LCAyMjgsIDQ2LCAyMzQsIDc1LCAKLSAgICAyOSwgMjUxLCAxODQsIDE1LCA1LCAyMjgsIDQ2LCAyMzQsIDc1LCAyOSwgMjUxLCAxODUsIDY5LCAxNSwgNSwgMTkzLCAxNSwgCi0gICAgNSwgMjI2LCAyMDQsIDE1LCA1LCAyMjYsIDE3NCwgMTUsIDUsIDIyNiwgMTQ5LCAxNSwgNSwgMjI2LCAzNywgMTUsIDUsIAotICAgIDIyNSwgMjQwLCAxNSwgNSwgMjI1LCAyNDEsIDI5LCA2MSwgMTUsIDUsIDIyNSwgMjQxLCAyOSwgMjU0LCAxODUsIDE1LCA1LCAKLSAgICAyMjUsIDI0MSwgMjksIDI1MSwgMTg0LCAxNSwgNSwgMjI1LCAyNDEsIDI5LCAyNTEsIDU0LCAxNSwgNSwgMjI1LCAyNDEsIAotICAgIDI5LCA3NCwgMTUsIDUsIDIyNSwgMjQxLCAyOSwgNzIsIDE1LCA1LCAyMjUsIDI0MSwgMjksIDI0MCwgMTA4LCAxNSwgNSwgCi0gICAgMjI1LCAyNDEsIDI5LCA2OSwgMTUsIDUsIDIyNSwgMjQxLCAyOSwgMjE1LCAxOTcsIDE1LCA1LCAyMjUsIDI0MSwgMjQ5LCAKLSAgICA2NSwgMjI1LCAyNDAsIDE1LCA1LCAyMjUsIDE4NSwgMTUsIDUsIDIyNSwgMTg2LCAyOSwgMjM0LCAyNDMsIDE1LCA1LCAyMjUsIAotICAgIDE4NiwgMjksIDIxNSwgMTg4LCAxNSwgNSwgMjI1LCAxODYsIDI5LCAyMTIsIDEwOSwgMTUsIDUsIDIyNSwgMTg2LCAyMjcsIAotICAgIDMwLCAyMjUsIDE4NSwgMTUsIDUsIDIwMywgMTUsIDUsIDIyNCwgNzIsIDE1LCA1LCAyMjMsIDE4OCwgMTUsIDUsIDIyMywgCi0gICAgNTEsIDE1LCA1LCAyMjIsIDIwMiwgMTUsIDUsIDIyMiwgMTkxLCAyMjgsIDM2LCAxNSwgNSwgMjIyLCAxOTAsIDE1LCA1LCAKLSAgICAyMjIsIDE5MSwgMjksIDYxLCAxNSwgNSwgMjIyLCAxOTEsIDI5LCAyNDYsIDMzLCAxNSwgNSwgMjIyLCAxOTEsIDI5LCAyNDYsIAotICAgIDMxLCAxNSwgNSwgMjIyLCAxOTEsIDI5LCAxNTksIDE1LCA1LCAyMjIsIDE5MSwgMjksIDIzNCwgMjQ3LCAxNSwgNSwgMjIyLCAKLSAgICAxOTEsIDI5LCAyMzMsIDIxNywgMTUsIDUsIDIyMiwgMTkxLCAyOSwgMjMyLCAxNDIsIDE1LCA1LCAyMjIsIDE5MSwgMjksIAotICAgIDIzMSwgNDIsIDE1LCA1LCAyMjIsIDE5MSwgMjksIDIyOCwgNTAsIDE1LCA1LCAyMjIsIDE5MSwgMjksIDIyMiwgMTc5LCAxNSwgCi0gICAgNSwgMjIyLCAxOTEsIDI5LCAyMjAsIDIxMCwgMTUsIDUsIDIyMiwgMTkxLCAyOSwgMjE4LCA0MSwgMTUsIDUsIDIyMiwgMTkxLCAKLSAgICAyOSwgMjE1LCAxOTcsIDE1LCA1LCAyMjIsIDE5MSwgMjksIDIxNSwgMTk0LCAxNSwgNSwgMjIyLCAxOTEsIDI5LCAyMTUsIAotICAgIDE2NywgMTUsIDUsIDIyMiwgMTkxLCAyOSwgMjE1LCAxMjEsIDE1LCA1LCAyMjIsIDE5MSwgMjksIDIxNSwgMTAwLCAxNSwgNSwgCi0gICAgMjIyLCAxOTEsIDExMCwgMjIyLCAxOTAsIDE1LCA1LCAyMjIsIDE5MSwgMjQyLCA3NSwgMTUsIDUsIDIyMiwgMTc5LCAxNSwgCi0gICAgNSwgMjIyLCAxODAsIDIzMywgMTQxLCAyOSwgMjUzLCAxNDQsIDE1LCA1LCAyMjIsIDE1NSwgMTUsIDUsIDIyMiwgMTQ3LCAKLSAgICAxNSwgNSwgMjIxLCAyNCwgMTUsIDUsIDIyMSwgMjIsIDE1LCA1LCAyMjEsIDIzLCAyOSwgNjEsIDE1LCA1LCAyMjEsIDIzLCAKLSAgICAyOSwgMjUyLCA5NCwgMTUsIDUsIDIyMSwgMjMsIDI5LCAyNDIsIDE2NiwgMTUsIDUsIDIyMSwgMjMsIDI5LCAyMjksIDE4NywgCi0gICAgMTUsIDUsIDIyMSwgMjMsIDI5LCAyMjAsIDE0OCwgMTUsIDUsIDIyMSwgMjMsIDI5LCAyMTYsIDYyLCAxNSwgNSwgMjIxLCAKLSAgICAyMywgMjksIDY5LCAxNSwgNSwgMjIxLCAyMywgMjksIDExMSwgOTQsIDYxLCAxNSwgNSwgMjIxLCAyMSwgMTUsIDUsIDIyMSwgCi0gICAgMTksIDE1LCA1LCAyMjEsIDEsIDE1LCA1LCAyMjAsIDI0MywgMTUsIDUsIDIyMCwgMjQ0LCAyNDAsIDIxMiwgMTUsIDUsIAotICAgIDIyMCwgMjQ0LCAxMTAsIDIyMCwgMjQ0LCAyNDMsIDEwMiwgMTEwLCAyNDMsIDEwMiwgMjQzLCA3MywgMTEwLCAyNDMsIDcyLCAKLSAgICAxNSwgNSwgMjIwLCAyNDQsIDExMCwgMjIwLCAyNDQsIDIxOCwgNDIsIDExMCwgMjE4LCA0MiwgMjQzLCA3MywgMTEwLCAyNDMsIAotICAgIDcyLCAxNSwgNSwgMjIwLCAyMzYsIDE1LCA1LCAyMjAsIDIzMSwgMTUsIDUsIDIyMCwgMjI4LCAxNSwgNSwgMjIwLCAyMjcsIAotICAgIDE1LCA1LCAyMjAsIDIyNCwgMTUsIDUsIDIyMCwgMjEwLCAxNSwgNSwgMjIwLCAyMTEsIDI5LCA2MSwgMTUsIDUsIDIyMCwgCi0gICAgMjExLCAyOSwgMjM2LCAxMSwgMTUsIDUsIDIyMCwgMjA0LCAxNSwgNSwgMjIwLCAyMDUsIDI5LCA2MSwgMTUsIDUsIDIyMCwgCi0gICAgMjA1LCAyOSwgMjUyLCA4MCwgMTUsIDUsIDIyMCwgMjA1LCAyOSwgMjUxLCAzOCwgMTUsIDUsIDIyMCwgMjA1LCAyOSwgMjQ3LCAKLSAgICAxNTgsIDE1LCA1LCAyMjAsIDIwNSwgMjksIDI0MywgNzIsIDE1LCA1LCAyMjAsIDIwNSwgMjksIDIzNiwgMzAsIDE1LCA1LCAKLSAgICAyMjAsIDIwNSwgMjksIDIzNiwgMzEsIDI0MiwgNzUsIDE1LCA1LCAyMjAsIDIwNSwgMjksIDIzMywgMjEyLCAxNSwgNSwgCi0gICAgMjIwLCAyMDUsIDI5LCAyMzIsIDE0NCwgMTUsIDUsIDIyMCwgMjA1LCAyOSwgMjMwLCAxNjMsIDE1LCA1LCAyMjAsIDIwNSwgCi0gICAgMjksIDIyMiwgMTc5LCAxNSwgNSwgMjIwLCAxOTgsIDE1LCA1LCAyMjAsIDE5MywgMTUsIDUsIDIyMCwgMTk0LCAyMTcsIAotICAgIDE5MiwgMTUsIDUsIDIyMCwgMTk0LCAxMTAsIDIyMCwgMTk0LCAyNTEsIDI4LCAxMTAsIDI1MSwgMjcsIDE1LCA1LCAyMjAsIAotICAgIDE4OSwgMTUsIDUsIDIyMCwgMTUwLCAxNSwgNSwgMjIwLCAxNTEsIDExMCwgMjM1LCAxOTEsIDIyMCwgMTUwLCAxNSwgNSwgCi0gICAgMjIwLCAxNDgsIDE1LCA1LCAyMjAsIDE0NywgMTUsIDUsIDIyMCwgMTE3LCAxNSwgNSwgMjIwLCAxMTgsIDI0MiwgNzUsIDE1LCAKLSAgICA1LCAyMjAsIDEwOCwgMTUsIDUsIDIyMCwgMTA2LCAxNSwgNSwgMjIwLCAxMDcsIDExMCwgMjIwLCAxMDcsIDIyMCwgMTQ4LCAKLSAgICAxNSwgNSwgMjIwLCA5OSwgMTUsIDUsIDIyMCwgOTcsIDE1LCA1LCAyMTksIDI3LCAxNSwgNSwgMjE5LCAyOCwgMTEwLCAyMTksIAotICAgIDI3LCAxNSwgNSwgMjE4LCAyNTUsIDE1LCA1LCAyMTgsIDI1NCwgMTUsIDUsIDIxOCwgMjUyLCAxNSwgNSwgMjE4LCAyNDQsIAotICAgIDE1LCA1LCAyMTgsIDI0MywgMTUsIDUsIDIxOCwgMjE3LCAxNSwgNSwgMjE4LCAyMTYsIDE1LCA1LCAyMTgsIDUyLCAxNSwgNSwgCi0gICAgMjE4LCA1MywgMjUzLCAxMzIsIDE1LCA1LCAyMTgsIDUzLCAyOSwgMjQxLCAxNjUsIDE1LCA1LCAyMTgsIDUzLCAyOSwgMjMxLCAKLSAgICA0MiwgMTUsIDUsIDIxOCwgNTMsIDI0MiwgNzUsIDE1LCA1LCAyMTgsIDQxLCAxNSwgNSwgMjE4LCA0MiwgMTEwLCAyMTgsIAotICAgIDQyLCAyMjksIDY1LCAxMTAsIDIyOSwgNjUsIDI0NywgMTQwLCAxMTAsIDI0NywgMTM5LCAxNSwgNSwgMjE4LCA0MiwgMjE5LCAKLSAgICAxNjUsIDE1LCA1LCAyMTgsIDMzLCAxNSwgNSwgMTI2LCAyOSwgMjUxLCAxODQsIDE1LCA1LCAxMjYsIDI5LCAyNDIsIDg0LCAKLSAgICAxNSwgNSwgMTI2LCAyOSwgMjIwLCAyNDMsIDE1LCA1LCAxMjYsIDI5LCAyMjAsIDE1MCwgMTUsIDUsIDEyNiwgMjksIDIxNiwgCi0gICAgNzcsIDE1LCA1LCAxMjYsIDI5LCAyMTUsIDE4OCwgMTUsIDUsIDIxOCwgMjIsIDE1LCA1LCAyMTgsIDEsIDE1LCA1LCAyMTcsIAotICAgIDIyOSwgMTUsIDUsIDIxNywgMjMwLCAyNDIsIDc1LCAxNSwgNSwgMjE3LCA3MSwgMTUsIDUsIDIxNywgNzIsIDIxNywgMTkyLCAKLSAgICAxNSwgNSwgMjE3LCA0NCwgMTUsIDUsIDIxNywgMjUsIDE1LCA1LCAyMTcsIDI2LCAyOSwgMjE4LCAyMiwgMTUsIDUsIDIxNywgCi0gICAgMjYsIDExMCwgMjE3LCAyNSwgMTUsIDUsIDIxNywgMjYsIDExMCwgMjE3LCAyNiwgMjQzLCAxMDIsIDExMCwgMjQzLCAxMDIsIAotICAgIDI0MywgNzMsIDExMCwgMjQzLCA3MiwgMTUsIDUsIDIxNiwgODIsIDE1LCA1LCAyMTYsIDc3LCAxNSwgNSwgMjE2LCA3NSwgCi0gICAgMTUsIDUsIDIxNiwgNzIsIDE1LCA1LCAyMTYsIDYyLCAxNSwgNSwgMjE2LCA2MywgMTEwLCAyMTYsIDYzLCAyMTIsIDExMCwgCi0gICAgMTEwLCAyMTIsIDEwOSwgMTUsIDUsIDY5LCAxNSwgNSwgMTExLCAyNDIsIDg0LCAxNSwgNSwgMTExLCAxMTEsIDY5LCAxNSwgCi0gICAgNSwgMTExLCAxMTAsIDExMSwgMjI2LCAyMTQsIDExMCwgMjI2LCAyMTQsIDI0MywgNzMsIDExMCwgMjQzLCA3MiwgMTUsIDUsIAotICAgIDExMSwgMTEwLCAxMTEsIDIxOCwgMjE4LCAxMTAsIDIxOCwgMjE3LCAxNSwgNSwgMTExLCAxMTAsIDExMSwgMTExLCAyMjMsIAotICAgIDIwMiwgMTEwLCAxMTEsIDIyMywgMjAxLCAxNSwgNSwgMjE1LCAxOTcsIDE1LCA1LCAyMTUsIDE5NCwgMTUsIDUsIDIxNSwgCi0gICAgMTg4LCAxNSwgNSwgMjE1LCAxODksIDIzMywgMjEyLCAxNSwgNSwgMjE1LCAxODksIDI5LCAyNTIsIDk0LCAxNSwgNSwgMjE1LCAKLSAgICAxODksIDI5LCAyMzEsIDQyLCAxNSwgNSwgMjE1LCAxODksIDI5LCAxMTEsIDk0LCAxMTEsIDk0LCA2OSwgMTUsIDUsIDIxNSwgCi0gICAgMTg5LCAyOSwgMTExLCA5NCwgMTExLCA5NCwgMTExLCAyNDIsIDc1LCAxNSwgNSwgMjE1LCAxODksIDI0MiwgNzUsIDE1LCA1LCAKLSAgICAyMTUsIDE4OSwgMjIwLCAyMjUsIDE1LCA1LCAyMTUsIDE4OSwgMjIwLCAyMjYsIDI5LCAyNTIsIDk0LCAxNSwgNSwgMjE1LCAKLSAgICAxODQsIDE1LCA1LCAyMTUsIDE2NywgMTUsIDUsIDIxNSwgMTY4LCAyOSwgMjMzLCAxNDAsIDE1LCA1LCAyMTUsIDE2OCwgMjksIAotICAgIDIzMSwgMTU3LCA5NCwgMjQ4LCAxNjQsIDE1LCA1LCAyMTUsIDE2OCwgMjksIDIyMSwgMjIsIDE1LCA1LCAyMTUsIDE2OCwgCi0gICAgMjksIDY5LCAxNSwgNSwgMjE1LCAxNjYsIDE1LCA1LCAyMTUsIDE2MiwgMTUsIDUsIDIxNSwgMTYzLCAyOSwgMjM0LCAyMTIsIAotICAgIDE1LCA1LCAyMTUsIDE2MywgMjksIDE5MywgMTUsIDUsIDIxNSwgMTYwLCAxNSwgNSwgMjE1LCAxNjEsIDI0MiwgNzUsIDE1LCAKLSAgICA1LCAyMTUsIDEyMSwgMTUsIDUsIDIxNSwgMTIyLCAyNDksIDY1LCAyMTUsIDEyMSwgMTUsIDUsIDIxNSwgMTIyLCAyMjAsIAotICAgIDIyNSwgMTUsIDUsIDIxNSwgMTE5LCAxNSwgNSwgMjE1LCAxMjAsIDI5LCAxMTgsIDk0LCAxNTksIDE1LCA1LCAyMTUsIDEyMCwgCi0gICAgMjksIDExOCwgOTQsIDIwNSwgMTUsIDUsIDIxNSwgMTIwLCAyOSwgMjU0LCA4NiwgMTUsIDUsIDIxNSwgMTIwLCAyOSwgMTU5LCAKLSAgICAxNSwgNSwgMjE1LCAxMjAsIDI5LCAyMjgsIDUwLCAxNSwgNSwgMjE1LCAxMjAsIDI5LCAyMTUsIDE5NywgMTUsIDUsIDIxNSwgCi0gICAgMTIwLCAyOSwgMjE1LCAxOTgsIDk0LCAyNTMsIDE0NiwgMTUsIDUsIDIxNSwgMTIwLCAyOSwgMjE1LCAxOTgsIDk0LCAyNTEsIAotICAgIDE4NCwgMTUsIDUsIDIxNSwgMTE4LCAxNSwgNSwgMjE1LCAxMTUsIDE1LCA1LCAyMTUsIDExNCwgMTUsIDUsIDIxNSwgMTEwLCAKLSAgICAxNSwgNSwgMjE1LCAxMTEsIDI5LCA2MSwgMTUsIDUsIDIxNSwgMTExLCAyOSwgMjUzLCAxNDEsIDE1LCA1LCAyMTUsIDExMSwgCi0gICAgMjksIDEzNCwgMTUsIDUsIDIxNSwgMTExLCAyOSwgMjQ2LCAyMywgMTUsIDUsIDIxNSwgMTExLCAyOSwgMjQzLCAxMTAsIDE1LCAKLSAgICA1LCAyMTUsIDExMSwgMjksIDI0MywgOTQsIDE1LCA1LCAyMTUsIDExMSwgMjksIDI0MywgODEsIDIxNywgMTkyLCAxNSwgNSwgCi0gICAgMjE1LCAxMTEsIDI5LCAyNDMsIDcyLCAxNSwgNSwgMjE1LCAxMTEsIDI5LCAyNDIsIDkyLCAxNSwgNSwgMjE1LCAxMTEsIDI5LCAKLSAgICAxNTksIDE1LCA1LCAyMTUsIDExMSwgMjksIDIzNiwgMzAsIDE1LCA1LCAyMTUsIDExMSwgMjksIDIzNiwgMTEsIDE1LCA1LCAKLSAgICAyMTUsIDExMSwgMjksIDIzNSwgMTYzLCAxNSwgNSwgMjE1LCAxMTEsIDI5LCAyMzQsIDEwMSwgMTUsIDUsIDIxNSwgMTExLCAKLSAgICAyOSwgMjMyLCAxNDIsIDE1LCA1LCAyMTUsIDExMSwgMjksIDIzMSwgMSwgMTUsIDUsIDIxNSwgMTExLCAyOSwgMTkzLCAxNSwgCi0gICAgNSwgMjE1LCAxMTEsIDI5LCAyMjAsIDI0MywgMTUsIDUsIDIxNSwgMTExLCAyOSwgMjIwLCAxMDYsIDE1LCA1LCAyMTUsIAotICAgIDExMSwgMjksIDIxNiwgODIsIDE1LCA1LCAyMTUsIDExMSwgMjksIDExMSwgOTQsIDI0MiwgODQsIDE1LCA1LCAyMTUsIDExMSwgCi0gICAgMjksIDIxNSwgMTg4LCAxNSwgNSwgMjE1LCAxMTEsIDI5LCAyMTUsIDEwOCwgMTUsIDUsIDIxNSwgMTA4LCAxNSwgNSwgMjE1LCAKLSAgICAxMDksIDI5LCA2OSwgMTUsIDUsIDIxNSwgMTAwLCAxNSwgNSwgMjE1LCAxMDEsIDI5LCA2MSwgMTUsIDUsIDIxNSwgMTAxLCAKLSAgICAyOSwgMjMzLCAyMzgsIDE1LCA1LCAyMTUsIDEwMSwgMjksIDIzMywgMjE3LCAxNSwgNSwgMjE1LCAxMDEsIDI5LCAyMTgsIAotICAgIDIyLCAxNSwgNSwgMjE1LCA5NiwgMTUsIDUsIDIxNSwgOTksIDE1LCA1LCAyMTUsIDk3LCAxNSwgNSwgMjE1LCA5MywgMTUsIAotICAgIDUsIDIxNSwgODIsIDE1LCA1LCAyMTUsIDgzLCAyOSwgMjM0LCAyMTIsIDE1LCA1LCAyMTUsIDgxLCAxNSwgNSwgMjEyLCAKLSAgICAxMDksIDE1LCA1LCAyMTIsIDExMCwgMjE3LCAxOTIsIDE1LCA1LCAyMTIsIDExMCwgOTEsIDI5LCAyMzMsIDIxNywgMTUsIDUsIAotICAgIDIxMiwgMTA2LCAxNSwgNSwgMjEyLCA5OSwgMTUsIDUsIDIxMiwgODYsIDE1LCA1LCAyMTIsIDM3LCAxNSwgNSwgMjEyLCAzOCwgCi0gICAgMTEwLCAyMTIsIDM3LCAxNSwgNSwgMjEyLCAzNiwgMTUsIDUsIDIxMiwgMzQsIDE1LCA1LCAyMTIsIDM1LCAyMzUsIDcsIAotICAgIDIxNywgMTkyLCAxNSwgNSwgMjEyLCAyOSwgMTUsIDUsIDIxMiwgMjEsIDE1LCA1LCAyMTIsIDgsIDE1LCA1LCAyMTIsIDYsIAotICAgIDE1LCA1LCAyMTIsIDcsIDI5LCA2MSwgMTUsIDUsIDIxMiwgNSwgMTUsIDUsIDIxMiwgNCwgMTUsIDEyOCwgNSwgMTE3LCAKLSAgICAyNTMsIDE0NiwgMTUsIDEyOCwgNSwgMTMzLCAyNTMsIDE0NiwgMTUsIDEyOCwgNSwgMjQzLCAyMzcsIDI1MywgMTQ2LCAxNSwgCi0gICAgMTI4LCA1LCAyNDQsIDUwLCAyNTMsIDE0NiwgMTUsIDEyOCwgNSwgMjIwLCA1MywgMjUzLCAxNDYsIDE1LCAxMjgsIDUsIAotICAgIDIyMSwgNDMsIDI1MywgMTQ2LCAxNSwgMTI4LCA1LCAyNDUsIDE1MCwgMjUzLCAxNDYsIDE1LCAxMjgsIDUsIDIyOSwgMzEsIAotICAgIDI1MywgMTQ2LCAxNSwgMTI4LCA1LCAxMzMsIDI0NywgMTM5LCAxNSwgMTI4LCA1LCAyNDMsIDIzNywgMjQ3LCAxMzksIDE1LCAKLSAgICAxMjgsIDUsIDI0NCwgNTAsIDI0NywgMTM5LCAxNSwgMTI4LCA1LCAyMjAsIDUzLCAyNDcsIDEzOSwgMTUsIDEyOCwgNSwgCi0gICAgMjIxLCA0MywgMjQ3LCAxMzksIDE1LCAxMjgsIDUsIDI0NSwgMTUwLCAyNDcsIDEzOSwgMTUsIDEyOCwgNSwgMjI5LCAzMSwgCi0gICAgMjQ3LCAxMzksIDE1LCAxMjgsIDUsIDI0MywgMjM3LCA2OSwgMTUsIDEyOCwgNSwgMjQ0LCA1MCwgNjksIDE1LCAxMjgsIDUsIAotICAgIDIyMCwgNTMsIDY5LCAxNSwgMTI4LCA1LCAyMjEsIDQzLCA2OSwgMTUsIDEyOCwgNSwgMjQ1LCAxNTAsIDY5LCAxNSwgMTI4LCAKLSAgICA1LCAyMjksIDMxLCA2OSwgMTUsIDEyOCwgNSwgMTIyLCAyNDMsIDE0LCAxNSwgMTI4LCA1LCAxMTcsIDI0MywgMTQsIDE1LCAKLSAgICAxMjgsIDUsIDEzMywgMjQzLCAxNCwgMTUsIDEyOCwgNSwgMjQzLCAyMzcsIDI0MywgMTQsIDE1LCAxMjgsIDUsIDI0NCwgNTAsIAotICAgIDI0MywgMTQsIDE1LCAxMjgsIDUsIDIyMCwgNTMsIDI0MywgMTQsIDE1LCAxMjgsIDUsIDIyMSwgNDMsIDI0MywgMTQsIDE1LCAKLSAgICAxMjgsIDUsIDI0NSwgMTUwLCAyNDMsIDE0LCAxNSwgMTI4LCA1LCAyMjksIDMxLCAyNDMsIDE0LCAxNSwgMTI4LCA1LCAxMjIsIAotICAgIDI0MywgMTEsIDE1LCAxMjgsIDUsIDExNywgMjQzLCAxMSwgMTUsIDEyOCwgNSwgMTMzLCAyNDMsIDExLCAxNSwgMTI4LCA1LCAKLSAgICAyNDMsIDIzNywgMjQzLCAxMSwgMTUsIDEyOCwgNSwgMjQ0LCA1MCwgMjQzLCAxMSwgMTUsIDEyOCwgNSwgMTE3LCAyMjEsIDEsIAotICAgIDE1LCAxMjgsIDUsIDEzMywgMjIxLCAxLCAxNSwgMTI4LCA1LCAxMzMsIDIyMSwgMiwgMjE0LCAyNDQsIDE3LCAxNSwgMTI4LCAKLSAgICA1LCAyNDMsIDIzNywgMjIxLCAxLCAxNSwgMTI4LCA1LCAyNDQsIDUwLCAyMjEsIDEsIDE1LCAxMjgsIDUsIDIyMCwgNTMsIAotICAgIDIyMSwgMSwgMTUsIDEyOCwgNSwgMjIxLCA0MywgMjIxLCAxLCAxNSwgMTI4LCA1LCAyNDUsIDE1MCwgMjIxLCAxLCAxNSwgCi0gICAgMTI4LCA1LCAyMjksIDMxLCAyMjEsIDEsIDE1LCAxMjgsIDUsIDEyMiwgMjIwLCAyNTIsIDE1LCAxMjgsIDUsIDExNywgMjIwLCAKLSAgICAyNTIsIDE1LCAxMjgsIDUsIDEzMywgMjIwLCAyNTIsIDE1LCAxMjgsIDUsIDEzMywgMjIwLCAyNTMsIDIxNCwgMjQ0LCAxNywgCi0gICAgMTUsIDEyOCwgNSwgMjQzLCAyMzcsIDIyMCwgMjUyLCAxNSwgMTI4LCA1LCAyNDQsIDUwLCAyMjAsIDI1MiwgMTUsIDEyOCwgCi0gICAgNSwgMjIxLCAyLCAyOSwgMjQzLCA5NSwgOTQsIDI0NywgMTM5LCAxNSwgMTI4LCA1LCAyMjEsIDIsIDI5LCAyNDMsIDk1LCAKLSAgICA5NCwgMjMxLCAxLCAxNSwgMTI4LCA1LCAxMjIsIDI1MSwgMjQsIDE1LCAxMjgsIDUsIDExNywgMjUxLCAyNCwgMTUsIDEyOCwgCi0gICAgNSwgMTMzLCAyNTEsIDI0LCAxNSwgMTI4LCA1LCAxMzMsIDI1MSwgMjUsIDIxNCwgMjQ0LCAxNywgMTUsIDEyOCwgNSwgMjQzLCAKLSAgICAyMzcsIDI1MSwgMjQsIDE1LCAxMjgsIDUsIDI0NCwgNTAsIDI1MSwgMjQsIDE1LCAxMjgsIDUsIDEzMywgMjE0LCAyNDQsIAotICAgIDI0MywgMjQ1LCAyNDUsIDM5LCAxNSwgMTI4LCA1LCAxMzMsIDIxNCwgMjQ0LCAyNDMsIDI0NSwgMjQ1LCAzNiwgMTUsIDEyOCwgCi0gICAgNSwgMjQzLCAyMzcsIDIxNCwgMjQ0LCAyNDMsIDI0NSwgMjMyLCAyNDYsIDE1LCAxMjgsIDUsIDI0MywgMjM3LCAyMTQsIAotICAgIDI0NCwgMjQzLCAyNDUsIDIzMiwgMjQ0LCAxNSwgMTI4LCA1LCAyNDMsIDIzNywgMjE0LCAyNDQsIDI0MywgMjQ1LCAyMzIsIAotICAgIDI0NywgNjEsIDE1LCAxMjgsIDUsIDI0MywgMjM3LCAyMTQsIDI0NCwgMjQzLCAyNDUsIDIzMiwgMjQ3LCAyNTMsIDc0LCAxNSwgCi0gICAgMTI4LCA1LCAyMjAsIDUzLCAyMTQsIDI0NCwgMjQzLCAyNDUsIDI1MywgMTQzLCAxNSwgMTI4LCA1LCAyMjEsIDQzLCAyMTQsIAotICAgIDI0NCwgMjQzLCAyNDUsIDIzNiwgMywgMTUsIDEyOCwgNSwgMjIxLCA0MywgMjE0LCAyNDQsIDI0MywgMjQ1LCAyMzYsIDUsIAotICAgIDYxLCAxNSwgMTI4LCA1LCAyMjEsIDQzLCAyMTQsIDI0NCwgMjQzLCAyNDUsIDIzNiwgNSwgMjUzLCA3NCwgMTUsIDEyOCwgNSwgCi0gICAgMjQ1LCAxNTAsIDIxNCwgMjQ0LCAyNDMsIDI0NSwgMjE1LCA5NSwgMTUsIDEyOCwgNSwgMjQ1LCAxNTAsIDIxNCwgMjQ0LCAKLSAgICAyNDMsIDI0NSwgMjE1LCA5NCwgMTUsIDEyOCwgNSwgMjI5LCAzMSwgMjE0LCAyNDQsIDI0MywgMjQ1LCAyMzYsIDE5LCAxNSwgCi0gICAgMTI4LCA1LCAyMjksIDMxLCAyMTQsIDI0NCwgMjQzLCAyNDUsIDIzNiwgMTgsIDE1LCAxMjgsIDUsIDIyOSwgMzEsIDIxNCwgCi0gICAgMjQ0LCAyNDMsIDI0NSwgMjM2LCAxNywgMTUsIDEyOCwgNSwgMjI5LCAzMSwgMjE0LCAyNDQsIDI0MywgMjQ1LCAyMzYsIDIwLCAKLSAgICA2MSwgMTUsIDEyOCwgNSwgMTE3LCAyNTMsIDE0NywgMjE3LCAxOTIsIDE1LCAxMjgsIDUsIDEzMywgMjUzLCAxNDcsIDIxNywgCi0gICAgMTkyLCAxNSwgMTI4LCA1LCAyNDMsIDIzNywgMjUzLCAxNDcsIDIxNywgMTkyLCAxNSwgMTI4LCA1LCAyNDQsIDUwLCAyNTMsIAotICAgIDE0NywgMjE3LCAxOTIsIDE1LCAxMjgsIDUsIDIyMCwgNTMsIDI1MywgMTQ3LCAyMTcsIDE5MiwgMTUsIDEyOCwgNSwgMTIyLCAKLSAgICAyNTIsIDY5LCAxNSwgMTI4LCA1LCAxMTcsIDI1MiwgNjksIDE1LCAxMjgsIDUsIDEzMywgMjUyLCA2OSwgMTUsIDEyOCwgNSwgCi0gICAgMjQzLCAyMzcsIDI1MiwgNjksIDE1LCAxMjgsIDUsIDI0MywgMjM3LCAyNTIsIDcwLCAyMTQsIDI0NCwgMTcsIDE1LCAxMjgsIAotICAgIDUsIDI0NCwgNTAsIDI1MiwgNjksIDE1LCAxMjgsIDUsIDI0NCwgNTAsIDI1MiwgNzAsIDIxNCwgMjQ0LCAxNywgMTUsIDEyOCwgCi0gICAgNSwgMjI5LCA0MSwgMTUsIDEyOCwgNSwgMjI5LCA0MiwgMTUsIDEyOCwgNSwgMTIyLCAyNDUsIDM1LCAxNSwgMTI4LCA1LCAKLSAgICAxMTcsIDI0NSwgMzUsIDE1LCAxMjgsIDUsIDEyMiwgMjE3LCAxMjIsIDI0NywgMTM5LCAxNSwgMTI4LCA1LCAxMTcsIDIxNywgCi0gICAgMTIwLCAyNDcsIDEzOSwgMTUsIDEyOCwgNSwgMjQ0LCA1MCwgMjIwLCA0MiwgMjQ3LCAxMzksIDE1LCAxMjgsIDUsIDEyMiwgCi0gICAgMjE3LCAxMjIsIDIxNCwgMjQ0LCAyNDMsIDI0NSwgNjEsIDE1LCAxMjgsIDUsIDExNywgMjE3LCAxMjAsIDIxNCwgMjQ0LCAKLSAgICAyNDMsIDI0NSwgNjEsIDE1LCAxMjgsIDUsIDEyMiwgMjQ1LCAxNDYsIDI1MywgMTQ2LCAxNSwgMTI4LCA1LCAxMjIsIDIyNCwgCi0gICAgMTY3LCAyNTMsIDE0NiwgMTUsIDEyOCwgNSwgNTMsIDI1MywgMTM1LCAxMjIsIDIyMCwgNDMsIDE1LCAxMjgsIDUsIDUzLCAKLSAgICAyNTMsIDEzNSwgMTIyLCAyMjQsIDE2NiwgMTUsIDIyNSwgMjcsIDUsIDUzLCAyNTMsIDEzNSwgMjEzLCAxOTYsIDI0NywgCi0gICAgMTI0LCAxNSwgMjI1LCAyNywgNSwgNzEsIDI0OSwgMTY0LCAxNSwgMjI1LCAyNywgNSwgMjQ3LCAyMDcsIDI0OSwgMTY0LCAKLSAgICAxNSwgMjI1LCAyNywgNSwgMjQ3LCAyMDcsIDIxNiwgMTc5LCAxMCwgMTEsIDI1NSwgNTgsIDEwLCAxMSwgMjU1LCA1NywgMTAsIAotICAgIDExLCAyNTUsIDU2LCAxMCwgMTEsIDI1NSwgNTUsIDEwLCAxMSwgMjU1LCA1NCwgMTAsIDExLCAyNTUsIDUzLCAxMCwgMTEsIAotICAgIDI1NSwgNTIsIDEwLCAxMSwgMjU1LCA1MSwgMTAsIDExLCAyNTUsIDUwLCAxMCwgMTEsIDI1NSwgNDksIDEwLCAxMSwgMjU1LCAKLSAgICA0OCwgMTAsIDExLCAyNTUsIDQ3LCAxMCwgMTEsIDI1NSwgNDYsIDEwLCAxMSwgMjU1LCA0NSwgMTAsIDExLCAyNTUsIDQ0LCAKLSAgICAxMCwgMTEsIDI1NSwgNDMsIDEwLCAxMSwgMjU1LCA0MiwgMTAsIDExLCAyNTUsIDQxLCAxMCwgMTEsIDI1NSwgNDAsIDEwLCAKLSAgICAxMSwgMjU1LCAzOSwgMTAsIDExLCAyNTUsIDM4LCAxMCwgMTEsIDI1NSwgMzcsIDEwLCAxMSwgMjU1LCAzNiwgMTAsIDExLCAKLSAgICAyNTUsIDM1LCAxMCwgMTEsIDI1NSwgMzQsIDEwLCAxMSwgMjU1LCAzMywgMTAsIDExLCAyNTUsIDMyLCAxMCwgMTEsIDI1NSwgCi0gICAgMzEsIDEwLCAxMSwgMjU1LCAzMCwgMTAsIDExLCAyNTUsIDI5LCAxMCwgMTEsIDI1NSwgMjgsIDEwLCAxMSwgMjU1LCAyNywgCi0gICAgMTAsIDExLCAyNTUsIDI2LCAxMCwgMTEsIDI1NSwgMjUsIDEwLCAxMSwgMjU1LCAyNCwgMTAsIDExLCAyNTUsIDIzLCAxMCwgCi0gICAgMTEsIDI1NSwgMjIsIDEwLCAxMSwgMjU1LCAyMSwgMTAsIDExLCAyNTUsIDIwLCAxMCwgMTEsIDI1NSwgMTksIDEwLCAxMSwgCi0gICAgMjU1LCAxOCwgMTAsIDExLCAyNTUsIDE3LCAxMCwgMTEsIDI1NSwgMTYsIDEwLCAxMSwgMjU1LCAxNSwgMTAsIDExLCAyNTUsIAotICAgIDE0LCAxMCwgMTEsIDI1NSwgMTMsIDEwLCAxMSwgMjU1LCAxMiwgMTAsIDExLCAyNTUsIDExLCAxMCwgMTEsIDI1NSwgMTAsIAotICAgIDEwLCAxMSwgMjU1LCA5LCAxMCwgMTEsIDI1NSwgOCwgMTAsIDExLCAyNTUsIDcsIDEwLCAxMSwgMjU1LCA2LCAxMCwgMTEsIAotICAgIDI1NSwgNSwgMTAsIDExLCAyNTUsIDQsIDEwLCAxMSwgMjU1LCAzLCAxMCwgMTEsIDI1NSwgMiwgMTAsIDExLCAyNTUsIDEsIAotICAgIDEwLCAxMSwgMjU1LCAwLCAxMCwgMTEsIDI1NCwgMjU1LCAxMCwgMTEsIDI1NCwgMjU0LCAxMCwgMTEsIDI1NCwgMjUzLCAxMCwgCi0gICAgMTEsIDI1NCwgMjUyLCAxMCwgMTEsIDI1NCwgMjUxLCAxMCwgMTEsIDI1NCwgMjUwLCAxMCwgMTEsIDI1NCwgMjQ5LCAxMCwgCi0gICAgMTEsIDI1NCwgMjQ4LCAxMCwgMTEsIDI1NCwgMjQ3LCAxMCwgMTEsIDI1NCwgMjQ2LCAxMCwgMTEsIDI1NCwgMjQ1LCAxMCwgCi0gICAgMTEsIDI1NCwgMjQ0LCAxMCwgMTEsIDI1NCwgMjQzLCAxMCwgMTEsIDI1NCwgMjQyLCAxMCwgMTEsIDI1NCwgMjQxLCAxMCwgCi0gICAgMTEsIDI1NCwgMjQwLCAxMCwgMTEsIDI1NCwgMjM5LCAxMCwgMTEsIDI1NCwgMjM4LCAxMCwgMTEsIDI1NCwgMjM3LCAxMCwgCi0gICAgMTEsIDI1NCwgMjM2LCAxMCwgMTEsIDI1NCwgMjM1LCAxMCwgMTEsIDI1MywgNzIsIDEwLCAxMSwgMjUzLCA3MCwgMTAsIDExLCAKLSAgICAyNTMsIDY4LCAxMCwgMTEsIDI1MywgNjYsIDEwLCAxMSwgMjUzLCA2NCwgMTAsIDExLCAyNTMsIDYzLCAxMCwgMTEsIDI1MywgCi0gICAgNjEsIDEwLCAxMSwgMjUzLCA1OSwgMTAsIDExLCAyNTMsIDU3LCAxMCwgMTEsIDI1MywgNTUsIDEwLCAxMSwgMjUwLCAyNDgsIAotICAgIDEwLCAxMSwgMjUwLCAyNDcsIDEwLCAxMSwgMjUwLCAyNDYsIDEwLCAxMSwgMjUwLCAyNDUsIDEwLCAxMSwgMjUwLCAyNDQsIAotICAgIDEwLCAxMSwgMjUwLCAyNDMsIDEwLCAxMSwgMjUwLCAyNDIsIDEwLCAxMSwgMjUwLCAyNDEsIDEwLCAxMSwgMjUwLCAyNDAsIAotICAgIDEwLCAxMSwgMjUwLCAyMzksIDEwLCAxMSwgMjUwLCAyMzgsIDEwLCAxMSwgMjUwLCAyMzcsIDEwLCAxMSwgMjUwLCAyMzYsIAotICAgIDEwLCAxMSwgMjUwLCAyMzUsIDEwLCAxMSwgMjUwLCAyMzQsIDEwLCAxMSwgMjUwLCAyMzMsIDEwLCAxMSwgMjUwLCAyMzIsIAotICAgIDEwLCAxMSwgMjUwLCAyMzEsIDEwLCAxMSwgMjUwLCAyMzAsIDEwLCAxMSwgMjUwLCAyMjksIDEwLCAxMSwgMjUwLCAyMjgsIAotICAgIDEwLCAxMSwgMjUwLCAyMjcsIDEwLCAxMSwgMjUwLCAyMjYsIDEwLCAxMSwgMjUwLCAyMjUsIDEwLCAxMSwgMjUwLCAyMjQsIAotICAgIDEwLCAxMSwgMjUwLCAyMjMsIDEwLCAxMSwgMjUwLCAyMjIsIDEwLCAxMSwgMjUwLCAyMjEsIDEwLCAxMSwgMjQ5LCAyLCAxMCwgCi0gICAgMTEsIDI0OSwgMSwgMTAsIDExLCAyNDksIDAsIDEwLCAxMSwgMjQ4LCAyNTUsIDEwLCAxMSwgMjQ4LCAyNTQsIDEwLCAxMSwgCi0gICAgMjQ4LCAyNTMsIDEwLCAxMSwgMjQ4LCAyNTIsIDEwLCAxMSwgMjQ4LCAyNTEsIDEwLCAxMSwgMjQ4LCAyNTAsIDEwLCAxMSwgCi0gICAgMjQ4LCAyNDksIDEwLCAxMSwgMjQ4LCAyNDgsIDEwLCAxMSwgMjQ4LCAyNDcsIDEwLCAxMSwgMjQ4LCAyNDYsIDEwLCAxMSwgCi0gICAgMjQ4LCAyNDUsIDEwLCAxMSwgMjQ4LCAyNDQsIDEwLCAxMSwgMjQ4LCAyNDMsIDEwLCAxMSwgMjQ4LCAyNDIsIDEwLCAxMSwgCi0gICAgMjQ4LCAyNDEsIDEwLCAxMSwgMjQ4LCAyNDAsIDEwLCAxMSwgMjQ4LCAyMzksIDEwLCAxMSwgMjQ4LCAyMzgsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMzcsIDEwLCAxMSwgMjQ4LCAyMzYsIDEwLCAxMSwgMjQ4LCAyMzUsIDEwLCAxMSwgMjQ4LCAyMzQsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMzMsIDEwLCAxMSwgMjQ4LCAyMzIsIDEwLCAxMSwgMjQ4LCAyMzEsIDEwLCAxMSwgMjQ4LCAyMzAsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMjksIDEwLCAxMSwgMjQ4LCAyMjgsIDEwLCAxMSwgMjQ4LCAyMjcsIDEwLCAxMSwgMjQ4LCAyMjYsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMjUsIDEwLCAxMSwgMjQ4LCAyMjQsIDEwLCAxMSwgMjQ4LCAyMjMsIDEwLCAxMSwgMjQ4LCAyMjIsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMjEsIDEwLCAxMSwgMjQ4LCAyMjAsIDEwLCAxMSwgMjQ4LCAyMTksIDEwLCAxMSwgMjQ4LCAyMTgsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMTcsIDEwLCAxMSwgMjQ4LCAyMTYsIDEwLCAxMSwgMjQ4LCAyMTUsIDEwLCAxMSwgMjQ4LCAyMTQsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMTMsIDEwLCAxMSwgMjQ4LCAyMTIsIDEwLCAxMSwgMjQ4LCAyMTEsIDEwLCAxMSwgMjQ4LCAyMTAsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMDksIDEwLCAxMSwgMjQ4LCAyMDgsIDEwLCAxMSwgMjQ4LCAyMDcsIDEwLCAxMSwgMjQ4LCAyMDYsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMDUsIDEwLCAxMSwgMjQ4LCAyMDQsIDEwLCAxMSwgMjQ4LCAyMDMsIDEwLCAxMSwgMjQ4LCAyMDIsIDEwLCAxMSwgCi0gICAgMjQ4LCAyMDEsIDEwLCAxMSwgMjQ4LCAyMDAsIDEwLCAxMSwgMjQ4LCAxOTksIDEwLCAxMSwgMjQ4LCAxOTgsIDEwLCAxMSwgCi0gICAgMjQ4LCAxOTcsIDEwLCAxMSwgMjQ4LCAxOTYsIDEwLCAxMSwgMjQ4LCAxOTUsIDEwLCAxMSwgMjQ4LCAxOTQsIDEwLCAxMSwgCi0gICAgMjQ4LCAxOTMsIDEwLCAxMSwgMjQ4LCAxOTIsIDEwLCAxMSwgMjQ4LCAxOTEsIDEwLCAxMSwgMjQ4LCAxOTAsIDEwLCAxMSwgCi0gICAgMjQ4LCAxODksIDEwLCAxMSwgMjQ4LCAxODgsIDEwLCAxMSwgMjQ4LCAxODcsIDEwLCAxMSwgMjQ4LCAxODYsIDEwLCAxMSwgCi0gICAgMjQ4LCAxODUsIDEwLCAxMSwgMjQ4LCAxODQsIDEwLCAxMSwgMjQ4LCAxODMsIDEwLCAxMSwgMjQ4LCAxODIsIDEwLCAxMSwgCi0gICAgMjQ4LCAxODEsIDEwLCAxMSwgMjQ4LCAxODAsIDEwLCAxMSwgMjQ4LCAxNzksIDEwLCAxMSwgMjQ4LCAxNzgsIDEwLCAxMSwgCi0gICAgMjQ4LCAxNzcsIDEwLCAxMSwgMjQ4LCAxNzYsIDEwLCAxMSwgMjQ4LCAxNzUsIDEwLCAxMSwgMjQ4LCAxNzQsIDEwLCAxMSwgCi0gICAgMjQ4LCAxNzMsIDEwLCAxMSwgMjQ4LCAxNzIsIDEwLCAxMSwgMjQ4LCAxNzEsIDEwLCAxMSwgMjQ4LCAxNzAsIDEwLCAxMSwgCi0gICAgMjQ4LCAxNjksIDEwLCAxMSwgMjQ4LCAxNjgsIDEwLCAxMSwgMjQ4LCAxNjcsIDEwLCAxMSwgMjQ1LCAyMzUsIDEwLCAxMSwgCi0gICAgMjQ1LCAyMzQsIDEwLCAxMSwgMjQ1LCAyMzMsIDEwLCAxMSwgMjQ1LCAyMzIsIDEwLCAxMSwgMjQ1LCAyMzEsIDEwLCAxMSwgCi0gICAgMjQ1LCAyMzAsIDEwLCAxMSwgMjQ1LCAyMjksIDEwLCAxMSwgMjQ1LCAyMjgsIDEwLCAxMSwgMjQ1LCAyMjcsIDEwLCAxMSwgCi0gICAgMjQ1LCAyMjYsIDEwLCAxMSwgMjQ1LCAyMjUsIDEwLCAxMSwgMjQ1LCAyMjQsIDEwLCAxMSwgMjQ1LCAyMjMsIDEwLCAxMSwgCi0gICAgMjQ1LCAyMjIsIDEwLCAxMSwgMjQ1LCAyMjEsIDEwLCAxMSwgMjQ1LCAyMjAsIDEwLCAxMSwgMjQ1LCAyMTksIDEwLCAxMSwgCi0gICAgMjQ1LCAyMTgsIDEwLCAxMSwgMjQ1LCAyMTcsIDEwLCAxMSwgMjQ1LCAyMTYsIDEwLCAxMSwgMjQ1LCAyMTUsIDEwLCAxMSwgCi0gICAgMjQ1LCAyMTQsIDEwLCAxMSwgMjQ1LCAyMTMsIDEwLCAxMSwgMjQ1LCAyMTIsIDEwLCAxMSwgMjQ1LCAyMTEsIDEwLCAxMSwgCi0gICAgMjQ1LCAyMTAsIDEwLCAxMSwgMjQ1LCAyMDksIDEwLCAxMSwgMjQ1LCAyMDgsIDEwLCAxMSwgMjQ1LCAyMDcsIDEwLCAxMSwgCi0gICAgMjQ1LCAyMDYsIDEwLCAxMSwgMjQ1LCAyMDUsIDEwLCAxMSwgMjQ1LCAyMDQsIDEwLCAxMSwgMjQ1LCAyMDMsIDEwLCAxMSwgCi0gICAgMjQ1LCAyMDIsIDEwLCAxMSwgMjQ1LCAyMDEsIDEwLCAxMSwgMjQ1LCAyMDAsIDEwLCAxMSwgMjQ1LCAxOTksIDEwLCAxMSwgCi0gICAgMjQ1LCAxOTgsIDEwLCAxMSwgMjQ1LCAxOTcsIDEwLCAxMSwgMjQ1LCAxOTYsIDEwLCAxMSwgMjQ1LCAxOTUsIDEwLCAxMSwgCi0gICAgMjQ1LCAxOTQsIDEwLCAxMSwgMjQ1LCAxOTMsIDEwLCAxMSwgMjQ1LCAxOTIsIDEwLCAxMSwgMjQ0LCAyMjksIDEwLCAxMSwgCi0gICAgMjQ0LCAyMjgsIDEwLCAxMSwgMjQ0LCAyMjcsIDEwLCAxMSwgMjQ0LCAyMjYsIDEwLCAxMSwgMjQ0LCAyMjUsIDEwLCAxMSwgCi0gICAgMjQ0LCAyMjQsIDEwLCAxMSwgMjQ0LCAyMjMsIDEwLCAxMSwgMjQ0LCAyMjIsIDEwLCAxMSwgMjQ0LCAyMjEsIDEwLCAxMSwgCi0gICAgMjQ0LCAyMjAsIDEwLCAxMSwgMjQ0LCAyMTksIDEwLCAxMSwgMjQ0LCAyMTgsIDEwLCAxMSwgMjQ0LCAyMTcsIDEwLCAxMSwgCi0gICAgMjQ0LCAyMTYsIDEwLCAxMSwgMjQ0LCAyMTUsIDEwLCAxMSwgMjQ0LCAyMTQsIDEwLCAxMSwgMjQ0LCAyMTMsIDEwLCAxMSwgCi0gICAgMjQ0LCAyMTIsIDEwLCAxMSwgMjQ0LCAyMTEsIDEwLCAxMSwgMjQ0LCAyMTAsIDEwLCAxMSwgMjQ0LCAyMDksIDEwLCAxMSwgCi0gICAgMjQ0LCAyMDgsIDEwLCAxMSwgMjQ0LCAyMDcsIDEwLCAxMSwgMjQ0LCAyMDYsIDEwLCAxMSwgMjQ0LCAyMDUsIDEwLCAxMSwgCi0gICAgMjQ0LCAyMDQsIDEwLCAxMSwgMjQ0LCAyMDMsIDEwLCAxMSwgMjQ0LCAyMDIsIDEwLCAxMSwgMjQ0LCAyMDEsIDEwLCAxMSwgCi0gICAgMjQ0LCAyMDAsIDEwLCAxMSwgMjQ0LCAxOTksIDEwLCAxMSwgMjQ0LCAxOTgsIDEwLCAxMSwgMjQ0LCAxOTcsIDEwLCAxMSwgCi0gICAgMjQ0LCAxOTYsIDEwLCAxMSwgMjQ0LCAxOTUsIDEwLCAxMSwgMjQ0LCAxOTQsIDEwLCAxMSwgMjQ0LCAxOTMsIDEwLCAxMSwgCi0gICAgMjQ0LCAxOTIsIDEwLCAxMSwgMjQ0LCAxOTEsIDEwLCAxMSwgMjQ0LCAxOTAsIDEwLCAxMSwgMjQ0LCAxODksIDEwLCAxMSwgCi0gICAgMjQ0LCAxODgsIDEwLCAxMSwgMjQ0LCAxODcsIDEwLCAxMSwgMjQ0LCAxODYsIDEwLCAxMSwgMjQ0LCAxODUsIDEwLCAxMSwgCi0gICAgMjQ0LCAxODQsIDEwLCAxMSwgMjQ0LCAxODMsIDEwLCAxMSwgMjQ0LCAxODIsIDEwLCAxMSwgMjQ0LCAxODEsIDEwLCAxMSwgCi0gICAgMjQ0LCAxODAsIDEwLCAxMSwgMjQ0LCAxNzksIDEwLCAxMSwgMjQ0LCAxNzgsIDEwLCAxMSwgMjQ0LCAxNzcsIDEwLCAxMSwgCi0gICAgMjQ0LCAxNzYsIDEwLCAxMSwgMjQ0LCAxNzUsIDEwLCAxMSwgMjQ0LCAxNzQsIDEwLCAxMSwgMjQ0LCAxNzMsIDEwLCAxMSwgCi0gICAgMjQ0LCAxNzIsIDEwLCAxMSwgMjQ0LCAxNzEsIDEwLCAxMSwgMjQ0LCAxNzAsIDEwLCAxMSwgMjQ0LCAxNjksIDEwLCAxMSwgCi0gICAgMjQ0LCAxNjgsIDEwLCAxMSwgMjQ0LCAxNjcsIDEwLCAxMSwgMjQ0LCAxNjYsIDEwLCAxMSwgMjQ0LCAxNjUsIDEwLCAxMSwgCi0gICAgMjQzLCAxNzYsIDEwLCAxMSwgMjQzLCAxNzUsIDEwLCAxMSwgMjQzLCAxNzQsIDEwLCAxMSwgMjQzLCAxNzMsIDEwLCAxMSwgCi0gICAgMjQzLCAxNzIsIDEwLCAxMSwgMjQzLCAxNzEsIDEwLCAxMSwgMjQzLCAxNzAsIDEwLCAxMSwgMjQzLCAxNjksIDEwLCAxMSwgCi0gICAgMjQzLCAxNjgsIDEwLCAxMSwgMjQzLCAxNjcsIDEwLCAxMSwgMjQzLCAxNjYsIDEwLCAxMSwgMjQzLCAxNjUsIDEwLCAxMSwgCi0gICAgMjQzLCAxNjQsIDEwLCAxMSwgMjQzLCAxNjMsIDEwLCAxMSwgMjQzLCAxNjIsIDEwLCAxMSwgMjQzLCAxNjEsIDEwLCAxMSwgCi0gICAgMjQzLCAxNjAsIDEwLCAxMSwgMjQzLCAxNTksIDEwLCAxMSwgMjQzLCAxNTgsIDEwLCAxMSwgMjQzLCAxNTcsIDEwLCAxMSwgCi0gICAgMjQzLCAxNTYsIDEwLCAxMSwgMjQzLCAxNTUsIDEwLCAxMSwgMjQzLCAxNTQsIDEwLCAxMSwgMjQzLCAxNTMsIDEwLCAxMSwgCi0gICAgMjQzLCAxNTIsIDEwLCAxMSwgMjQzLCAxNTEsIDEwLCAxMSwgMjQzLCAxNTAsIDEwLCAxMSwgMjQzLCAxNDksIDEwLCAxMSwgCi0gICAgMjQzLCAxNDgsIDEwLCAxMSwgMjQzLCAxNDcsIDEwLCAxMSwgMjQzLCAxNDYsIDEwLCAxMSwgMjQzLCAxNDUsIDEwLCAxMSwgCi0gICAgMjQzLCAxNDQsIDEwLCAxMSwgMjQzLCAxNDMsIDEwLCAxMSwgMjQzLCAxNDIsIDEwLCAxMSwgMjQzLCAxNDEsIDEwLCAxMSwgCi0gICAgMjQzLCAxNDAsIDEwLCAxMSwgMjQzLCAxMzksIDEwLCAxMSwgMjQzLCAxMzgsIDEwLCAxMSwgMjQzLCAxMzcsIDEwLCAxMSwgCi0gICAgMjQzLCAxMzYsIDEwLCAxMSwgMjQzLCAxMzUsIDEwLCAxMSwgMjQzLCAxMzQsIDEwLCAxMSwgMjQzLCAxMzMsIDEwLCAxMSwgCi0gICAgMjQzLCAxMzIsIDEwLCAxMSwgMjQzLCAxMzEsIDEwLCAxMSwgMjQzLCAxMzAsIDEwLCAxMSwgMjQzLCAxMjksIDEwLCAxMSwgCi0gICAgMjQzLCAxMjgsIDEwLCAxMSwgMjQzLCAxMjcsIDEwLCAxMSwgMjQzLCAxMjYsIDEwLCAxMSwgMjQzLCAxMjUsIDEwLCAxMSwgCi0gICAgMjQzLCAxMjQsIDEwLCAxMSwgMjQzLCAxMjMsIDEwLCAxMSwgMjQzLCAxMjIsIDEwLCAxMSwgMjQzLCAxMjEsIDEwLCAxMSwgCi0gICAgMjQzLCAxMjAsIDEwLCAxMSwgMjQzLCAxMTksIDEwLCAxMSwgMjQzLCAxMTgsIDEwLCAxMSwgMjQzLCAxMTcsIDEwLCAxMSwgCi0gICAgMjQzLCAxMTYsIDEwLCAxMSwgMjQzLCAxMTUsIDEwLCAxMSwgMjQzLCAxMTQsIDEwLCAxMSwgMjQzLCAxMTMsIDEwLCAxMSwgCi0gICAgMjQyLCAzOSwgMTAsIDExLCAyNDIsIDM4LCAxMCwgMTEsIDI0MiwgMzcsIDEwLCAxMSwgMjQyLCAzNiwgMTAsIDExLCAyNDIsIAotICAgIDM1LCAxMCwgMTEsIDI0MiwgMzQsIDEwLCAxMSwgMjQyLCAzMywgMTAsIDExLCAyNDIsIDMyLCAxMCwgMTEsIDI0MiwgMzEsIAotICAgIDEwLCAxMSwgMjQwLCAxMzAsIDEwLCAxMSwgMjQwLCAxMjksIDEwLCAxMSwgMjQwLCAxMjgsIDEwLCAxMSwgMjQwLCAxMjcsIAotICAgIDEwLCAxMSwgMjQwLCAxMjYsIDEwLCAxMSwgMjQwLCAxMjUsIDEwLCAxMSwgMjQwLCAxMjQsIDEwLCAxMSwgMjQwLCAxMjMsIAotICAgIDEwLCAxMSwgMjQwLCAxMjIsIDEwLCAxMSwgMjQwLCAxMjEsIDEwLCAxMSwgMjQwLCAxMjAsIDEwLCAxMSwgMjQwLCAxMTksIAotICAgIDEwLCAxMSwgMjQwLCAxMTgsIDEwLCAxMSwgMjQwLCAxMTcsIDEwLCAxMSwgMjQwLCAxMTYsIDEwLCAxMSwgMjQwLCAxMTUsIAotICAgIDEwLCAxMSwgMjQwLCAxMTQsIDEwLCAxMSwgMjQwLCAxMTMsIDEwLCAxMSwgMjQwLCAxMTIsIDEwLCAxMSwgMjM1LCAyNiwgCi0gICAgMTAsIDExLCAyMzUsIDI1LCAxMCwgMTEsIDIzNSwgMjQsIDEwLCAxMSwgMjM1LCAyMywgMTAsIDExLCAyMzUsIDIyLCAxMCwgCi0gICAgMTEsIDIzNSwgMjEsIDEwLCAxMSwgMjM1LCAyMCwgMTAsIDExLCAyMzUsIDE5LCAxMCwgMTEsIDIzMywgMTY4LCAxMCwgMTEsIAotICAgIDIzMywgMTY3LCAxMCwgMTEsIDIzMywgMTY2LCAxMCwgMTEsIDIzMywgMTY1LCAxMCwgMTEsIDIzMywgMTY0LCAxMCwgMTEsIAotICAgIDIzMywgMTYzLCAxMCwgMTEsIDIzMywgMTYyLCAxMCwgMTEsIDIzMywgMTYxLCAxMCwgMTEsIDIzMywgMTYwLCAxMCwgMTEsIAotICAgIDIzMywgMTU5LCAxMCwgMTEsIDIzMiwgMTA5LCAxMCwgMTEsIDIzMiwgMTA4LCAxMCwgMTEsIDIzMiwgMTA3LCAxMCwgMTEsIAotICAgIDIzMiwgMTA2LCAxMCwgMTEsIDIzMiwgMTA1LCAxMCwgMTEsIDIzMiwgMTA0LCAxMCwgMTEsIDIzMiwgMTAzLCAxMCwgMTEsIAotICAgIDIzMiwgMTAyLCAxMCwgMTEsIDIzMiwgMTAxLCAxMCwgMTEsIDIzMiwgMTAwLCAxMCwgMTEsIDIzMiwgOTksIDEwLCAxMSwgCi0gICAgMjMyLCA5OCwgMTAsIDExLCAyMzIsIDk3LCAxMCwgMTEsIDIzMiwgOTYsIDEwLCAxMSwgMjMyLCA5NSwgMTAsIDExLCAyMzIsIAotICAgIDk0LCAxMCwgMTEsIDIzMiwgOTMsIDEwLCAxMSwgMjMyLCA5MiwgMTAsIDExLCAyMzIsIDkxLCAxMCwgMTEsIDIzMiwgOTAsIAotICAgIDEwLCAxMSwgMjMyLCA4OSwgMTAsIDExLCAyMzIsIDg4LCAxMCwgMTEsIDIzMiwgODcsIDEwLCAxMSwgMjMyLCA4NiwgMTAsIAotICAgIDExLCAyMzIsIDg1LCAxMCwgMTEsIDIzMiwgODQsIDEwLCAxMSwgMjMyLCA4MywgMTAsIDExLCAyMzIsIDgyLCAxMCwgMTEsIAotICAgIDIzMiwgODEsIDEwLCAxMSwgMjMyLCA4MCwgMTAsIDExLCAyMzIsIDc5LCAxMCwgMTEsIDIzMiwgNzgsIDEwLCAxMSwgMjMyLCAKLSAgICA3NywgMTAsIDExLCAyMzIsIDc2LCAxMCwgMTEsIDIzMiwgNzUsIDEwLCAxMSwgMjMyLCA3NCwgMTAsIDExLCAyMzIsIDczLCAKLSAgICAxMCwgMTEsIDIzMiwgNzIsIDEwLCAxMSwgMjMyLCA3MSwgMTAsIDExLCAyMzIsIDcwLCAxMCwgMTEsIDIzMiwgNjksIDEwLCAKLSAgICAxMSwgMjMyLCA2OCwgMTAsIDExLCAyMzIsIDY3LCAxMCwgMTEsIDIzMiwgNjYsIDEwLCAxMSwgMjMyLCA2NSwgMTAsIDExLCAKLSAgICAyMzIsIDY0LCAxMCwgMTEsIDIzMiwgNjMsIDEwLCAxMSwgMjMyLCA2MiwgMTAsIDExLCAyMzIsIDYxLCAxMCwgMTEsIDIzMiwgCi0gICAgNjAsIDEwLCAxMSwgMjMyLCA1OSwgMTAsIDExLCAyMzIsIDU4LCAxMCwgMTEsIDIzMiwgNTcsIDEwLCAxMSwgMjMyLCA1NiwgCi0gICAgMTAsIDExLCAyMzIsIDU1LCAxMCwgMTEsIDIzMiwgNTQsIDEwLCAxMSwgMjMyLCA1MywgMTAsIDExLCAyMzIsIDUyLCAxMCwgCi0gICAgMTEsIDIzMiwgNTEsIDEwLCAxMSwgMjMyLCA1MCwgMTAsIDExLCAyMzIsIDQ5LCAxMCwgMTEsIDIzMiwgNDgsIDEwLCAxMSwgCi0gICAgMjMyLCA0NywgMTAsIDExLCAyMzIsIDQ2LCAxMCwgMTEsIDIzMiwgNDUsIDEwLCAxMSwgMjMyLCA0NCwgMTAsIDExLCAyMzAsIAotICAgIDk1LCAxMCwgMTEsIDIzMCwgOTQsIDEwLCAxMSwgMjMwLCA5MywgMTAsIDExLCAyMzAsIDkyLCAxMCwgMTEsIDIzMCwgOTEsIAotICAgIDEwLCAxMSwgMjMwLCA5MCwgMTAsIDExLCAyMzAsIDg5LCAxMCwgMTEsIDIzMCwgODgsIDEwLCAxMSwgMjMwLCA4NywgMTAsIAotICAgIDExLCAyMzAsIDg2LCAxMCwgMTEsIDIzMCwgODUsIDEwLCAxMSwgMjMwLCA4NCwgMTAsIDExLCAyMzAsIDgzLCAxMCwgMTEsIAotICAgIDIzMCwgODIsIDEwLCAxMSwgMjMwLCA4MSwgMTAsIDExLCAyMzAsIDgwLCAxMCwgMTEsIDIzMCwgNzksIDEwLCAxMSwgMjMwLCAKLSAgICA3OCwgMTAsIDExLCAyMzAsIDc3LCAxMCwgMTEsIDIzMCwgNzYsIDEwLCAxMSwgMjMwLCA3NSwgMTAsIDExLCAyMzAsIDc0LCAKLSAgICAxMCwgMTEsIDIzMCwgNzMsIDEwLCAxMSwgMjMwLCA3MiwgMTAsIDExLCAyMzAsIDcxLCAxMCwgMTEsIDIzMCwgNzAsIDEwLCAKLSAgICAxMSwgMjMwLCA2OSwgMTAsIDExLCAyMzAsIDY4LCAxMCwgMTEsIDIzMCwgNjcsIDEwLCAxMSwgMjMwLCA2NiwgMTAsIDExLCAKLSAgICAyMzAsIDY1LCAxMCwgMTEsIDIzMCwgNjQsIDEwLCAxMSwgMjMwLCA2MywgMTAsIDExLCAyMzAsIDYyLCAxMCwgMTEsIDIzMCwgCi0gICAgNjEsIDEwLCAxMSwgMjMwLCA2MCwgMTAsIDExLCAyMzAsIDU5LCAxMCwgMTEsIDIzMCwgNTgsIDEwLCAxMSwgMjMwLCA1NywgCi0gICAgMTAsIDExLCAyMzAsIDU2LCAxMCwgMTEsIDIzMCwgNTUsIDEwLCAxMSwgMjMwLCA1NCwgMTAsIDExLCAyMzAsIDUzLCAxMCwgCi0gICAgMTEsIDIzMCwgNTIsIDEwLCAxMSwgMjMwLCA1MSwgMTAsIDExLCAyMzAsIDUwLCAxMCwgMTEsIDIzMCwgNDksIDEwLCAxMSwgCi0gICAgMjMwLCA0OCwgMTAsIDExLCAyMzAsIDQ3LCAxMCwgMTEsIDIyOCwgMjIyLCAxMCwgMTEsIDIyOCwgMjIxLCAxMCwgMTEsIAotICAgIDIyOCwgMjIwLCAxMCwgMTEsIDIyOCwgMjE5LCAxMCwgMTEsIDIyOCwgMjE4LCAxMCwgMTEsIDIyOCwgMjE3LCAxMCwgMTEsIAotICAgIDIyOCwgMjE2LCAxMCwgMTEsIDIyOCwgMjE1LCAxMCwgMTEsIDIyOCwgMjE0LCAxMCwgMTEsIDIyOCwgMjEzLCAxMCwgMTEsIAotICAgIDIyOCwgMjEyLCAxMCwgMTEsIDIyOCwgMjExLCAxMCwgMTEsIDIyOCwgMjEwLCAxMCwgMTEsIDIyOCwgMjA5LCAxMCwgMTEsIAotICAgIDIyOCwgMjA4LCAxMCwgMTEsIDIyOCwgMjA3LCAxMCwgMTEsIDIyOCwgMjA2LCAxMCwgMTEsIDIyOCwgMjA1LCAxMCwgMTEsIAotICAgIDIyOCwgMjA0LCAxMCwgMTEsIDIyOCwgMjAzLCAxMCwgMTEsIDIyOCwgMjAyLCAxMCwgMTEsIDIyOCwgMjAxLCAxMCwgMTEsIAotICAgIDIyOCwgOTEsIDEwLCAxMSwgMjI4LCA5MCwgMTAsIDExLCAyMjgsIDg5LCAxMCwgMTEsIDIyOCwgODgsIDEwLCAxMSwgMjI4LCAKLSAgICA4NywgMTAsIDExLCAyMjgsIDg2LCAxMCwgMTEsIDIyOCwgODUsIDEwLCAxMSwgMjI4LCA4NCwgMTAsIDExLCAyMjgsIDgzLCAKLSAgICAxMCwgMTEsIDIyOCwgODIsIDEwLCAxMSwgMjI4LCA4MSwgMTAsIDExLCAyMjgsIDgwLCAxMCwgMTEsIDIyOCwgNzksIDEwLCAKLSAgICAxMSwgMjI4LCA3OCwgMTAsIDExLCAyMjgsIDc3LCAxMCwgMTEsIDIyOCwgNzYsIDEwLCAxMSwgMjI4LCA3NSwgMTAsIDExLCAKLSAgICAyMjgsIDc0LCAxMCwgMTEsIDIyOCwgNzMsIDEwLCAxMSwgMjI4LCA3MiwgMTAsIDExLCAyMjgsIDcxLCAxMCwgMTEsIDIyOCwgCi0gICAgNzAsIDEwLCAxMSwgMjI4LCA2OSwgMTAsIDExLCAyMjgsIDY4LCAxMCwgMTEsIDIyOCwgNjcsIDEwLCAxMSwgMjI4LCA2NiwgCi0gICAgMTAsIDExLCAyMjcsIDE5NiwgMTAsIDExLCAyMjcsIDE5NSwgMTAsIDExLCAyMjcsIDE5NCwgMTAsIDExLCAyMjcsIDE5MywgCi0gICAgMTAsIDExLCAyMjcsIDE5MiwgMTAsIDExLCAyMjcsIDE5MSwgMTAsIDExLCAyMjcsIDE5MCwgMTAsIDExLCAyMjcsIDE4OSwgCi0gICAgMTAsIDExLCAyMjcsIDE4OCwgMTAsIDExLCAyMjcsIDE4NywgMTAsIDExLCAyMjcsIDE4NiwgMTAsIDExLCAyMjcsIDE4NSwgCi0gICAgMTAsIDExLCAyMjcsIDE4NCwgMTAsIDExLCAyMjcsIDE4MywgMTAsIDExLCAyMjcsIDE4MiwgMTAsIDExLCAyMjcsIDE4MSwgCi0gICAgMTAsIDExLCAyMjcsIDE4MCwgMTAsIDExLCAyMjcsIDE3OSwgMTAsIDExLCAyMjcsIDE3OCwgMTAsIDExLCAyMjcsIDE3NywgCi0gICAgMTAsIDExLCAyMjcsIDE3NiwgMTAsIDExLCAyMjcsIDE3NSwgMTAsIDExLCAyMjcsIDE3NCwgMTAsIDExLCAyMjcsIDE3MywgCi0gICAgMTAsIDExLCAyMjcsIDE3MiwgMTAsIDExLCAyMjcsIDE3MSwgMTAsIDExLCAyMjcsIDE3MCwgMTAsIDExLCAyMjcsIDE2OSwgCi0gICAgMTAsIDExLCAyMjcsIDE2OCwgMTAsIDExLCAyMjcsIDE2NywgMTAsIDExLCAyMjcsIDE2NiwgMTAsIDExLCAyMjcsIDE2NSwgCi0gICAgMTAsIDExLCAyMjcsIDE2NCwgMTAsIDExLCAyMjcsIDE2MywgMTAsIDExLCAyMjcsIDE2MiwgMTAsIDExLCAyMjcsIDE2MSwgCi0gICAgMTAsIDExLCAyMjcsIDE2MCwgMTAsIDExLCAyMjcsIDE1OSwgMTAsIDExLCAyMjcsIDE1OCwgMTAsIDExLCAyMjcsIDE1NywgCi0gICAgMTAsIDExLCAyMjcsIDE1NiwgMTAsIDExLCAyMjcsIDE1NSwgMTAsIDExLCAyMjcsIDE1NCwgMTAsIDExLCAyMjcsIDE1MywgCi0gICAgMTAsIDExLCAyMjcsIDE1MiwgMTAsIDExLCAyMjcsIDE1MSwgMTAsIDExLCAyMjcsIDE1MCwgMTAsIDExLCAyMjcsIDE0OSwgCi0gICAgMTAsIDExLCAyMjcsIDE0OCwgMTAsIDExLCAyMjcsIDE0NywgMTAsIDExLCAyMjcsIDE0NiwgMTAsIDExLCAyMjcsIDE0NSwgCi0gICAgMTAsIDExLCAyMjcsIDE0NCwgMTAsIDExLCAyMjcsIDE0MywgMTAsIDExLCAyMjcsIDE0MiwgMTAsIDExLCAyMjcsIDE0MSwgCi0gICAgMTAsIDExLCAyMjcsIDE0MCwgMTAsIDExLCAyMjcsIDEzOSwgMTAsIDExLCAyMjcsIDEzOCwgMTAsIDExLCAyMjcsIDEzNywgCi0gICAgMTAsIDExLCAyMjcsIDEzNiwgMTAsIDExLCAyMjcsIDEzNSwgMTAsIDExLCAyMjcsIDEzNCwgMTAsIDExLCAyMjcsIDEzMywgCi0gICAgMTAsIDExLCAyMjcsIDEzMiwgMTAsIDExLCAyMjcsIDEzMSwgMTAsIDExLCAyMjcsIDEzMCwgMTAsIDExLCAyMjcsIDEyOSwgCi0gICAgMTAsIDExLCAyMjcsIDEyOCwgMTAsIDExLCAyMjcsIDEyNywgMTAsIDExLCAyMjcsIDEyNiwgMTAsIDExLCAyMjcsIDEyNSwgCi0gICAgMTAsIDExLCAyMjcsIDEyNCwgMTAsIDExLCAyMjcsIDEyMywgMTAsIDExLCAyMjcsIDEyMiwgMTAsIDExLCAyMjYsIDIyOCwgCi0gICAgMTAsIDExLCAyMjYsIDIyNywgMTAsIDExLCAyMjYsIDIyNiwgMTAsIDExLCAyMjYsIDIyNSwgMTAsIDExLCAyMjYsIDIyNCwgCi0gICAgMTAsIDExLCAyMjYsIDIyMywgMTAsIDExLCAyMjYsIDIyMiwgMTAsIDExLCAyMjYsIDIyMSwgMTAsIDExLCAyMjYsIDIyMCwgCi0gICAgMTAsIDExLCAyMjYsIDIxOSwgMTAsIDExLCAyMjYsIDIxOCwgMTAsIDExLCAyMjYsIDIxNywgMTAsIDExLCAyMjYsIDIxNiwgCi0gICAgMTAsIDExLCAyMjQsIDIzOSwgMTAsIDExLCAyMjQsIDIzOCwgMTAsIDExLCAyMjQsIDIzNywgMTAsIDExLCAyMjQsIDIzNiwgCi0gICAgMTAsIDExLCAyMjQsIDIzNSwgMTAsIDExLCAyMjQsIDIzNCwgMTAsIDExLCAyMjQsIDIzMywgMTAsIDExLCAyMjQsIDExMSwgCi0gICAgMTAsIDExLCAyMjQsIDExMCwgMTAsIDExLCAyMjQsIDEwOSwgMTAsIDExLCAyMjQsIDEwOCwgMTAsIDExLCAyMjQsIDEwNywgCi0gICAgMTAsIDExLCAyMjQsIDEwNiwgMTAsIDExLCAyMjQsIDEwNSwgMTAsIDExLCAyMjQsIDEwNCwgMTAsIDExLCAyMjQsIDEwMywgCi0gICAgMTAsIDExLCAyMjQsIDEwMiwgMTAsIDExLCAyMjQsIDEwMSwgMTAsIDExLCAyMjQsIDEwMCwgMTAsIDExLCAyMjQsIDk5LCAKLSAgICAxMCwgMTEsIDIyNCwgOTgsIDEwLCAxMSwgMjI0LCA5NywgMTAsIDExLCAyMjQsIDk2LCAxMCwgMTEsIDIyNCwgOTUsIDEwLCAKLSAgICAxMSwgMjI0LCA5NCwgMTAsIDExLCAyMjQsIDkzLCAxMCwgMTEsIDIyNCwgOTIsIDEwLCAxMSwgMjI0LCA5MSwgMTAsIDExLCAKLSAgICAyMjQsIDkwLCAxMCwgMTEsIDIyNCwgODksIDEwLCAxMSwgMjI0LCA4OCwgMTAsIDExLCAyMjQsIDg3LCAxMCwgMTEsIDIyNCwgCi0gICAgODYsIDEwLCAxMSwgMjI0LCA4NSwgMTAsIDExLCAyMjQsIDg0LCAxMCwgMTEsIDIyNCwgODMsIDEwLCAxMSwgMjI0LCA4MiwgCi0gICAgMTAsIDExLCAyMjQsIDgxLCAxMCwgMTEsIDIyNCwgODAsIDEwLCAxMSwgMjI0LCA3OSwgMTAsIDExLCAyMjQsIDc4LCAxMCwgCi0gICAgMTEsIDIyMywgMSwgMTAsIDExLCAyMjMsIDAsIDEwLCAxMSwgMjIyLCAyNTUsIDEwLCAxMSwgMjIyLCAyNTQsIDEwLCAxMSwgCi0gICAgMjIyLCAyNTMsIDEwLCAxMSwgMjIyLCAyNTIsIDEwLCAxMSwgMjIyLCAyNTEsIDEwLCAxMSwgMjIyLCAyNTAsIDEwLCAxMSwgCi0gICAgMjIyLCAyNDksIDEwLCAxMSwgMjIyLCAyNDgsIDEwLCAxMSwgMjIyLCAyNDcsIDEwLCAxMSwgMjIyLCAyNDYsIDEwLCAxMSwgCi0gICAgMjIyLCAyNDUsIDEwLCAxMSwgMjIyLCAyNDQsIDEwLCAxMSwgMjIyLCAyNDMsIDEwLCAxMSwgMjIyLCAyNDIsIDEwLCAxMSwgCi0gICAgMjIyLCAyNDEsIDEwLCAxMSwgMjIyLCAyNDAsIDEwLCAxMSwgMjIyLCAyMzksIDEwLCAxMSwgMjIyLCAyMzgsIDEwLCAxMSwgCi0gICAgMjIyLCAyMzcsIDEwLCAxMSwgMjIyLCAyMzYsIDEwLCAxMSwgMjIyLCAyMzUsIDEwLCAxMSwgMjIyLCAyMzQsIDEwLCAxMSwgCi0gICAgMjIyLCAyMzMsIDEwLCAxMSwgMjIyLCAyMzIsIDEwLCAxMSwgMjIyLCAyMzEsIDEwLCAxMSwgMjIyLCAyMzAsIDEwLCAxMSwgCi0gICAgMjIyLCAyMjksIDEwLCAxMSwgMjIyLCAyMjgsIDEwLCAxMSwgMjIyLCAyMjcsIDEwLCAxMSwgMjIyLCAyMjYsIDEwLCAxMSwgCi0gICAgMjIyLCAyMjUsIDEwLCAxMSwgMjIyLCAyMjQsIDEwLCAxMSwgMjIyLCAyMjMsIDEwLCAxMSwgMjIyLCAyMjIsIDEwLCAxMSwgCi0gICAgMjIyLCAyMjEsIDEwLCAxMSwgMjIyLCAyMjAsIDEwLCAxMSwgMjIyLCAyMTksIDEwLCAxMSwgMjIyLCAyMTgsIDEwLCAxMSwgCi0gICAgMjIyLCAyMTcsIDEwLCAxMSwgMjIyLCAyMTYsIDEwLCAxMSwgMjIyLCAyMTUsIDEwLCAxMSwgMjIyLCAyMTQsIDEwLCAxMSwgCi0gICAgMjIyLCAyMTMsIDEwLCAxMSwgMjIyLCAyMTIsIDEwLCAxMSwgMjIyLCAyMTEsIDEwLCAxMSwgMjIyLCAyMTAsIDEwLCAxMSwgCi0gICAgMjIyLCAyMDksIDEwLCAxMSwgMjIyLCAyMDgsIDEwLCAxMSwgMjIyLCAyMDcsIDEwLCAxMSwgMjIyLCAyMDYsIDEwLCAxMSwgCi0gICAgMjIyLCAyMDUsIDEwLCAxMSwgMjIyLCAyMDQsIDEwLCAxMSwgMjE4LCA5NywgMTAsIDExLCAyMTgsIDk2LCAxMCwgMTEsIAotICAgIDIxOCwgOTUsIDEwLCAxMSwgMjE4LCA5NCwgMTAsIDExLCAyMTgsIDkzLCAxMCwgMTEsIDIxOCwgOTIsIDEwLCAxMSwgMjE4LCAKLSAgICA5MSwgMTAsIDExLCAyMTgsIDkwLCAxMCwgMTEsIDIxOCwgODksIDEwLCAxMSwgMjE4LCA4OCwgMTAsIDExLCAyMTgsIDg3LCAKLSAgICAxMCwgMTEsIDIxOCwgODYsIDEwLCAxMSwgMjE4LCA4NSwgMTAsIDExLCAyMTgsIDg0LCAxMCwgMTEsIDIxOCwgODMsIDEwLCAKLSAgICAxMSwgMjE4LCA4MiwgMTAsIDExLCAyMTgsIDgxLCAxMCwgMTEsIDIxOCwgODAsIDEwLCAxMSwgMjE4LCA3OSwgMTAsIDExLCAKLSAgICAyMTgsIDc4LCAxMCwgMTEsIDIxOCwgNzcsIDEwLCAxMSwgMjE4LCA3NiwgMTAsIDExLCAyMTgsIDc1LCAxMCwgMTEsIDIxOCwgCi0gICAgNzQsIDEwLCAxMSwgMjE4LCA3MywgMTAsIDExLCAyMTgsIDcyLCAxMCwgMTEsIDIxOCwgNzEsIDEwLCAxMSwgMjE4LCA3MCwgCi0gICAgMTAsIDExLCAyMTgsIDY5LCAxMCwgMTEsIDIxOCwgNjgsIDEwLCAxMSwgMjE4LCA2NywgMTAsIDExLCAyMTgsIDY2LCAxMCwgCi0gICAgMTEsIDIxOCwgNjUsIDEwLCAxMSwgMjE4LCA2NCwgMTAsIDExLCAyMTgsIDYzLCAxMCwgMTEsIDIxOCwgNjIsIDEwLCAxMSwgCi0gICAgMjE4LCA2MSwgMTAsIDExLCAyMTgsIDYwLCAxMCwgMTEsIDIxOCwgNTksIDEwLCAxMSwgMjE4LCA1OCwgMTAsIDExLCAyMTgsIAotICAgIDU3LCAxMCwgMTEsIDIxOCwgNTYsIDEwLCAxMSwgMjE4LCA1NSwgMTAsIDExLCAyMTgsIDU0LCAxMCwgMTEsIDIxNSwgMjQ1LCAKLSAgICAxMCwgMTEsIDIxNSwgMjQ0LCAxMCwgMTEsIDIxNSwgMjQzLCAxMCwgMTEsIDIxNSwgMjQyLCAxMCwgMTEsIDIxNSwgMjQxLCAKLSAgICAxMCwgMTEsIDIxNSwgMjQwLCAxMCwgMTEsIDIxNSwgMjM5LCAxMCwgMTEsIDIxNSwgMjM4LCAxMCwgMTEsIDIxNSwgMjM3LCAKLSAgICAxMCwgMTEsIDIxNSwgMjM2LCAxMCwgMTEsIDIxNSwgMjM1LCAxMCwgMTEsIDIxNSwgMjM0LCAxMCwgMTEsIDIxNSwgMjMzLCAKLSAgICAxMCwgMTEsIDIxNSwgMjMyLCAxMCwgMTEsIDIxNSwgMjMxLCAxMCwgMTEsIDIxNSwgMjMwLCAxMCwgMTEsIDIxNSwgMjI5LCAKLSAgICAxMCwgMTEsIDIxNSwgMjI4LCAxMCwgMTEsIDIxNSwgMjI3LCAxMCwgMTEsIDIxNSwgMjI2LCAxMCwgMTEsIDIxNSwgMjI1LCAKLSAgICAxMCwgMTEsIDIxNSwgMjI0LCAxMCwgMTEsIDIxNSwgMjIzLCAxMCwgMTEsIDIxNSwgMjIyLCAxMCwgMTEsIDIxNSwgMjIxLCAKLSAgICAxMCwgMTEsIDIxNSwgMjIwLCAxMCwgMTEsIDIxNSwgMjE5LCAxMCwgMTEsIDIxNSwgMjE4LCAxMCwgMTEsIDIxNSwgMjE3LCAKLSAgICAxMCwgMTEsIDIxNSwgMjE2LCAxMCwgMTEsIDIxNSwgMjE1LCAxMCwgMTEsIDIxNSwgMjE0LCAxMCwgMTEsIDIxNSwgMjEzLCAKLSAgICAxMCwgMTEsIDIxNSwgMjEyLCAxMCwgMTEsIDIxNSwgMjExLCAxMCwgMTEsIDIxNSwgMjEwLCAxMCwgMTEsIDIxNSwgMjA5LCAKLSAgICAxMCwgMTEsIDIxNSwgMjA4LCAxMCwgMTEsIDIxNSwgMjA3LCAxMCwgMTEsIDIxNSwgMjA2LCAxMCwgMTEsIDIxNSwgMjA1LCAKLSAgICAxMCwgMTEsIDIxNSwgMjA0LCAxMCwgMTEsIDIxNSwgMjAzLCAxMCwgMTEsIDIxNSwgMjAyLCAxMCwgMTEsIDIxNSwgMjAxLCAKLSAgICAxMCwgMTEsIDIxNSwgMjAwLCAxMCwgMTEsIDIxNSwgMTk5LCAxMCwgMTEsIDIxNSwgNzgsIDEwLCAxMSwgMjE1LCA3NywgMTAsIAotICAgIDExLCAyMTUsIDc2LCAxMCwgMTEsIDIxNSwgNzUsIDEwLCAxMSwgMjE1LCA3NCwgMTAsIDExLCAyMTUsIDczLCAxMCwgMTEsIAotICAgIDIxNSwgNzIsIDEwLCAxMSwgMjE1LCA3MSwgMTAsIDExLCAyMTUsIDcwLCAxMCwgMTEsIDIxNSwgNjksIDEwLCAxMSwgMjE1LCAKLSAgICA2OCwgMTAsIDExLCAyMTUsIDY3LCAxMCwgMTEsIDIxNSwgNjYsIDEwLCAxMSwgMjE1LCA2NSwgMTAsIDExLCAyMTUsIDY0LCAKLSAgICAxMCwgMTEsIDIxNSwgNjMsIDEwLCAxMSwgMjE1LCA2MiwgMTAsIDExLCAyMTUsIDYxLCAxMCwgMTEsIDIxNSwgNjAsIDEwLCAKLSAgICAxMSwgMjE1LCA1OSwgMTAsIDExLCAyMTUsIDU4LCAxMCwgMTEsIDIxNSwgNTcsIDEwLCAxMSwgMjE1LCA1NiwgMTAsIDExLCAKLSAgICAyMTUsIDU1LCAxMCwgMTEsIDIxNSwgNTQsIDEwLCAxMSwgMjE1LCA1MywgMTAsIDExLCAyMTUsIDUyLCAxMCwgMTEsIDIxNSwgCi0gICAgNTEsIDEwLCAxMSwgMjE1LCA1MCwgMTAsIDExLCAyMTUsIDQ5LCAxMCwgMTEsIDIxNSwgNDgsIDEwLCAxMSwgMjE1LCA0NywgCi0gICAgMTAsIDExLCAyMTUsIDQ2LCAxMCwgMTEsIDIxNSwgNDUsIDEwLCAxMSwgMjE1LCA0NCwgMTAsIDExLCAyMTUsIDQzLCAxMCwgCi0gICAgMTEsIDIxNSwgNDIsIDEwLCAxMSwgMjE1LCA0MSwgMTAsIDExLCAyMTUsIDQwLCAxMCwgMTEsIDIxNSwgMzksIDEwLCAxMSwgCi0gICAgMjE1LCAzOCwgMTAsIDExLCAyMTUsIDM3LCAxMCwgMTEsIDIxNSwgMzYsIDEwLCAxMSwgMjE1LCAzNSwgMTAsIDExLCAyMTUsIAotICAgIDM0LCAxMCwgMTEsIDIxNSwgMzMsIDEwLCAxMSwgMjE1LCAzMiwgMTAsIDExLCAyMTUsIDMxLCAxMCwgMTEsIDIxNSwgMzAsIAotICAgIDEwLCAxMSwgMjE1LCAyOSwgMTAsIDExLCAyMTUsIDI4LCAxMCwgMTEsIDIxNSwgMjcsIDEwLCAxMSwgMjE1LCAyNiwgMTAsIAotICAgIDExLCAyMTUsIDI1LCAxMCwgMTEsIDIxNSwgMjQsIDEwLCAxMSwgMjE1LCAyMywgMTAsIDExLCAyMTUsIDIyLCAxMCwgMTEsIAotICAgIDIxNSwgMjEsIDEwLCAxMSwgMjE1LCAyMCwgMTAsIDExLCAyMTUsIDE5LCAxMCwgMTEsIDIxNSwgMTgsIDEwLCAxMSwgMjE1LCAKLSAgICAxNywgMTAsIDExLCAyMTUsIDE2LCAxMCwgMTEsIDIxNSwgMTUsIDEwLCAxMSwgMjE1LCAxNCwgMTAsIDExLCAyMTUsIDEzLCAKLSAgICAxMCwgMTEsIDIxNSwgMTIsIDEwLCAxMSwgMjE1LCAxMSwgMTAsIDExLCAyMTUsIDEwLCAxMCwgMTEsIDIxNSwgOSwgMTAsIAotICAgIDExLCAyMTUsIDgsIDEwLCAxMSwgMjE1LCA3LCAxMCwgMTEsIDIxNSwgNiwgMTAsIDExLCAyMTUsIDUsIDEwLCAxMSwgMjE1LCAKLSAgICA0LCAxMCwgMTEsIDIxNSwgMywgMTAsIDExLCAyMTUsIDIsIDEwLCAxMSwgMjE0LCA4MSwgMTAsIDExLCAyMTQsIDgwLCAxMCwgCi0gICAgMTEsIDIxNCwgNzksIDEwLCAxMSwgMjE0LCA3OCwgMTAsIDExLCAyMTQsIDc3LCAxMCwgMTEsIDIxNCwgNzYsIDEwLCAxMSwgCi0gICAgMjE0LCA3NSwgMTAsIDExLCAyMTQsIDc0LCAxMCwgMTEsIDIxNCwgNzMsIDEwLCAxMSwgMjE0LCA3MiwgMTAsIDExLCAyMTQsIAotICAgIDcxLCAxMCwgMTEsIDIxNCwgNzAsIDEwLCAxMSwgMjE0LCA2OSwgMTAsIDExLCAyMTQsIDY4LCAxMCwgMTEsIDIxNCwgNjcsIAotICAgIDEwLCAxMSwgMjE0LCA2NiwgMTAsIDExLCAyMTQsIDY1LCAxMCwgMTEsIDIxNCwgNjQsIDEwLCAxMSwgMjE0LCA2MywgMTAsIAotICAgIDExLCAyMTQsIDYyLCAxMCwgMTEsIDIxNCwgNjEsIDEwLCAxMSwgMjE0LCA2MCwgMTAsIDExLCAyMTQsIDU5LCAxMCwgMTEsIAotICAgIDIxNCwgNTgsIDEwLCAxMSwgMjE0LCA1NywgMTAsIDExLCAyMTQsIDU2LCAxMCwgMTEsIDIxNCwgNTUsIDEwLCAxMSwgMjE0LCAKLSAgICA1NCwgMTAsIDExLCAyMTQsIDUzLCAxMCwgMTEsIDIxNCwgNTIsIDEwLCAxMSwgMjE0LCA1MSwgMTAsIDExLCAyMTQsIDUwLCAKLSAgICAxMCwgMTEsIDIxMywgMTY1LCAxMCwgMTEsIDIxMywgMTY0LCAxMCwgMTEsIDIxMywgMTYzLCAxMCwgMTEsIDIxMywgMTYyLCAKLSAgICAxMCwgMTEsIDIxMywgMTYxLCAxMCwgMTEsIDIxMywgMTYwLCAxMCwgMTEsIDIxMywgMTU5LCAxMCwgMTEsIDIxMywgMTU4LCAKLSAgICAxMCwgMTEsIDIxMywgMTU3LCAxMCwgMTEsIDIxMywgMTU2LCAxMCwgMTEsIDIxMywgMTU1LCAxMCwgMTEsIDIxMywgMTU0LCAKLSAgICAxMCwgMTEsIDIxMywgMTAzLCAxMCwgMTEsIDIxMywgMTAyLCAxMCwgMTEsIDIxMywgMTAxLCAxMCwgMTEsIDIxMywgMTAwLCAKLSAgICAxMCwgMTEsIDIxMywgOTksIDEwLCAxMSwgMjEzLCA5OCwgMTAsIDExLCAyMTMsIDk3LCAxMCwgMTEsIDIxMywgOTYsIDEwLCAKLSAgICAxMSwgMjEzLCA5NSwgMTAsIDExLCAyMTIsIDE1MSwgMTAsIDExLCAyMTIsIDE1MCwgMTAsIDExLCAyMTIsIDE0OSwgMTAsIAotICAgIDExLCAyMTIsIDE0OCwgMTAsIDExLCAyMTIsIDE0NywgMTAsIDExLCAyMTIsIDE0NiwgMTAsIDExLCAyMTIsIDE0NSwgMTAsIAotICAgIDExLCAyMTIsIDE0NCwgMTAsIDExLCAyMTIsIDE0MywgMTAsIDExLCAyMTIsIDE0MiwgMTAsIDExLCAyMTIsIDE0MSwgMTAsIAotICAgIDExLCAyMTIsIDE0MCwgMTAsIDExLCAyMTIsIDEzOSwgMTAsIDExLCAyMTIsIDEzOCwgMTAsIDExLCAyMTIsIDEzNywgMTAsIAotICAgIDExLCAyMTIsIDEzNiwgMTAsIDExLCAyMTIsIDEzNSwgMTAsIDExLCAyMTIsIDEzNCwgMTAsIDExLCAyMTIsIDEzMywgMTAsIAotICAgIDExLCAyMTIsIDEzMiwgMTAsIDExLCAyMTIsIDEzMSwgMTAsIDExLCAyMTIsIDEzMCwgMTAsIDExLCAyMTIsIDEyOSwgMTAsIAotICAgIDExLCAyMTIsIDEyOCwgMTAsIDExLCAyMTIsIDEyNywgMTAsIDExLCAyMTIsIDEyNiwgMTAsIDExLCAyMTIsIDEyNSwgMTAsIAotICAgIDExLCAyMTIsIDEyNCwgMTAsIDExLCAyMTIsIDEyMywgMTAsIDExLCAyMTIsIDEyMiwgMTAsIDExLCAyMTIsIDEyMSwgMTAsIAotICAgIDExLCAyMTIsIDEyMCwgMTAsIDExLCAyMTIsIDExOSwgMTAsIDExLCAyMTIsIDExOCwgMTAsIDExLCAyMTIsIDExNywgMTAsIAotICAgIDExLCAyMTIsIDExNiwgMTAsIDExLCAyMTIsIDExNSwgMTAsIDExLCAyMTIsIDExNCwgMTAsIDExLCAyMTIsIDExMywgMTAsIAotICAgIDExLCAyMTIsIDExMiwgMTAsIDExLCAyMTIsIDExMSwgMTAsIDExLCAyNTQsIDIzMSwgMTAsIDExLCAyNTQsIDIzMCwgMTAsIAotICAgIDExLCAyNTQsIDIyOSwgMTAsIDExLCAyNTQsIDIyOCwgMTAsIDExLCAyNTQsIDIyNywgMTAsIDExLCAyNTQsIDIyNiwgMTAsIAotICAgIDExLCAyNTQsIDIyNSwgMTAsIDExLCAyNTQsIDIyNCwgMTAsIDExLCAyNTQsIDIyMywgMTAsIDExLCAyNTQsIDIyMiwgMTAsIAotICAgIDExLCAyNTQsIDIyMSwgMTAsIDExLCAyNTQsIDIyMCwgMTAsIDExLCAyNTQsIDIxOSwgMTAsIDExLCAyNTQsIDIxOCwgMTAsIAotICAgIDExLCAyNTQsIDIxNywgMTAsIDExLCAyNTQsIDIxNiwgMTAsIDExLCAyNTQsIDIxNSwgMTAsIDExLCAyNTQsIDIxNCwgMTAsIAotICAgIDExLCAyNTQsIDIxMywgMTAsIDExLCAyNTQsIDIxMiwgMTAsIDExLCAyNTQsIDIxMSwgMTAsIDExLCAyNTQsIDIxMCwgMTAsIAotICAgIDExLCAyNTQsIDIwOSwgMTAsIDExLCAyNTQsIDIwOCwgMTAsIDExLCAyNTQsIDIwNywgMTAsIDExLCAyNTQsIDIwNiwgMTAsIAotICAgIDExLCAyNTQsIDIwNSwgMTAsIDExLCAyNTQsIDIwNCwgMTAsIDExLCAyNTQsIDIwMywgMTAsIDExLCAyNTQsIDIwMiwgMTAsIAotICAgIDExLCAyNTQsIDIwMSwgMTAsIDExLCAyNTQsIDIwMCwgMTAsIDExLCAyNTQsIDE5OSwgMTAsIDExLCAyNTQsIDE5OCwgMjAsIAotICAgIDEsIDE1MywgMjI5LCA5OCwgMjMxLCA4MywgMjAsIDEsIDE1MywgMjQzLCA0NiwgMjQ0LCA1LCAyMCwgMSwgMTUzLCAyMjUsIAotICAgIDEzMSwgMjMxLCA4NCwgMjI1LCAxODksIDIwLCAxLCAxNTMsIDIyNSwgMTMxLCAyMzEsIDg0LCAyMjUsIDE5MCwgMjAsIDEsIAotICAgIDE1MywgMjMwLCA0NCwgMjMxLCA4MywgMjAsIDEsIDE1MywgMjIwLCAxNDYsIDIwLCAxLCAxNTMsIDIxNywgMTksIDIzMSwgCi0gICAgODMsIDIwLCAxLCAxNTMsIDIyNywgMjM4LCAyMzEsIDgzLCAyMCwgMSwgMTUzLCAyMjAsIDE5OSwgMjI2LCAyMTQsIDIyOSwgCi0gICAgMCwgMjAsIDEsIDE1MywgMjI1LCAxMzEsIDIyNiwgMjE0LCAyMjksIDEsIDIyNSwgMTg5LCAyMCwgMSwgMTUzLCAyMjUsIAotICAgIDEzMSwgMjI2LCAyMTQsIDIyOSwgMSwgMjI1LCAxOTAsIDIwLCAxLCAxNTMsIDIzMiwgMjMsIDIwLCAxLCAxNTMsIDIxNiwgCi0gICAgODMsIDIzMiwgMjQsIDIwLCAxLCAxNTMsIDIyOSwgMTU0LCAyMCwgMSwgMTUzLCAyMzIsIDIwLCAyMCwgMSwgMTUzLCAyMzEsIAotICAgIDIzOSwgMjAsIDEsIDE1MywgMjMwLCAxMTksIDIwLCAxLCAxNTMsIDIyMSwgNDUsIDIwLCAxLCAxNTMsIDIyOCwgOTYsIDIwLCAKLSAgICAxLCAxNTMsIDIzNCwgMTU1LCAyMCwgMSwgMTUzLCAyMjgsIDIyNSwgMjAsIDEsIDE1MywgMjE4LCAyMDUsIDIwLCAxLCAxNTMsIAotICAgIDIyOSwgOTcsIDIwLCAxLCAxNTMsIDIzMywgMTEwLCAyMCwgMSwgMTUzLCAyMzMsIDM2LCAyMzMsIDIxMCwgMjAsIDEsIDE1MywgCi0gICAgMjI4LCAxMDMsIDIzMSwgOTEsIDIwLCAxLCAxNTMsIDIzMiwgMjcsIDIwLCAxLCAxNTMsIDIyNiwgMTE5LCAyMCwgMSwgMTUzLCAKLSAgICAyNDIsIDIwNywgMjAsIDEsIDE1MywgMjI2LCAxNzcsIDIwLCAxLCAxNTMsIDIzMCwgMjIxLCAyMjksIDEzMCwgMjAsIDEsIAotICAgIDE1MywgMjI3LCAyMTksIDIzMSwgOTQsIDIwLCAxLCAxNTMsIDExMSwgMjEyLCAxNzksIDIzMCwgMzgsIDIwLCAxLCAxNTMsIAotICAgIDI0MiwgMjA4LCAyMCwgMSwgMTUzLCAyMjgsIDEwMywgMjI4LCAxMDQsIDIwLCAxLCAxNTMsIDIyMCwgNTYsIDIwLCAxLCAKLSAgICAxNTMsIDIzMSwgNzYsIDIwLCAxLCAxNTMsIDIzMSwgOTcsIDIwLCAxLCAxNTMsIDIzMCwgMjAwLCAyMCwgMSwgMTUzLCAyMzQsIAotICAgIDI1MywgMjAsIDEsIDE1MywgMjI2LCAyMTQsIDIzMywgNzEsIDIwLCAxLCAxNTMsIDIyOSwgMjI5LCAyMzMsIDcxLCAyMCwgMSwgCi0gICAgMTUzLCAyMjYsIDM0LCAyMCwgMSwgMTUzLCAyMzIsIDIxLCAyMCwgMSwgMTUzLCAyMjksIDM4LCAyMCwgMSwgMTUzLCAyMjUsIAotICAgIDIwLCAyMCwgMSwgMTUzLCAyMTYsIDgwLCAyMCwgMSwgMTUzLCAyMzIsIDE1MiwgMjAsIDEsIDE1MywgMjE5LCAyMjcsIDIwLCAKLSAgICAxLCAxNTMsIDIxNywgMTY5LCAyMCwgMSwgMTUzLCAyMzIsIDE4LCAyMCwgMSwgMTUzLCAyMzQsIDE2MiwgMjAsIDEsIDE1MywgCi0gICAgMjI5LCAyMjUsIDIwLCAxLCAxNTMsIDIzMywgMjIyLCAyMCwgMSwgMTUzLCAyMzAsIDIwMSwgMjAsIDEsIDE1MywgMjIwLCAKLSAgICAxNDMsIDIwLCAxLCAxNTMsIDIzMiwgMTkxLCAyMCwgMSwgMTUzLCAyNDQsIDYyLCAyMCwgMSwgMTUzLCAyMjMsIDEwMSwgMjAsIAotICAgIDEsIDE1MywgMjMzLCAyNTAsIDIwLCAxLCAxNTMsIDIxOSwgMjIzLCAyMCwgMSwgMTUzLCAyMzEsIDIzNiwgMjI1LCAyMzEsIAotICAgIDIwLCAxLCAxNTMsIDIyMCwgMTkyLCAyMCwgMSwgMTUzLCAyMjgsIDEwMiwgMjAsIDEsIDE1MywgMjIwLCAxNzcsIDIyOCwgCi0gICAgMTEzLCAyMTIsIDE4NywgMjAsIDEsIDE1MywgMjI4LCAxLCAyMzAsIDIxOCwgMjAsIDEsIDE1MywgMjI2LCAyMDksIDIwLCAxLCAKLSAgICAxNTMsIDIyOCwgMjI2LCAyMCwgMSwgMTUzLCAyMTUsIDE0MSwgMjAsIDEsIDE1MywgMjI5LCAxMzMsIDIwLCAxLCAxNTMsIAotICAgIDIzMiwgMTcsIDIwLCAxLCAxNTMsIDIyOSwgMTIsIDIwLCAxLCAxNTMsIDIzMSwgMTgyLCAyMCwgMSwgMTUzLCAyMjgsIDEyLCAKLSAgICAyMCwgMSwgMTUzLCAyMTcsIDE3MywgMjAsIDEsIDE1MywgMjE5LCAyMjEsIDIwLCAxLCAxNTMsIDIyNiwgMjEwLCAyMCwgMSwgCi0gICAgMTUzLCAyMjgsIDExNywgMjAsIDEsIDE1MywgMjMyLCAyNSwgMjAsIDEsIDE1MywgMjI4LCAxMCwgMjAsIDEsIDE1MywgMjM0LCAKLSAgICAyMjEsIDIwLCAxLCAxNTMsIDIyOCwgMTIwLCAyMCwgMSwgMTUzLCAyMTQsIDIyNywgMjAsIDEsIDE1MywgMjMyLCAxNTYsIAotICAgIDIwLCAxLCAxNTMsIDIyOSwgMTgwLCAyMCwgMSwgMTUzLCAyMzAsIDE2LCAyMCwgMSwgMTUzLCAyMzEsIDE4MSwgMjAsIDEsIAotICAgIDIyNiwgMTQsIDIyOCwgMTE1LCAyMCwgMSwgMjI2LCAxNCwgMjE2LCA4MywgMjMyLCAyMiwgMjAsIDEsIDIyNiwgMTQsIDIyMCwgCi0gICAgMTExLCAyMCwgMSwgMjI2LCAxNCwgMjIxLCA0OSwgMjE2LCA4MiwgMjAsIDEsIDIyNiwgMTQsIDIzMiwgMTkzLCAyMjgsIDk5LCAKLSAgICAyMCwgMSwgMjI2LCAxNCwgMjMxLCAxODgsIDIzMiwgMjYsIDIwLCAxLCAyMjYsIDE0LCAyMzQsIDk2LCAyMCwgMSwgMjI2LCAKLSAgICAxNCwgMjEzLCA2LCAyMCwgMSwgMjI2LCAxNCwgMjMxLCAxODMsIDIwLCAxLCAyMjYsIDE0LCAyMzQsIDI0MiwgMjAsIDEsIAotICAgIDIyNiwgMTQsIDIyNiwgODMsIDIwLCAxLCAyMjYsIDE0LCAyMTMsIDc3LCAyMzMsIDcxLCAyMCwgMSwgMjI2LCAxNCwgMjMzLCAKLSAgICAxMjcsIDIyOCwgMTEzLCAyMjgsIDIwLCAyMCwgMSwgMjI2LCAxNCwgMjI4LCA5NywgMjIwLCAyMTgsIDIwLCAxLCAyMjYsIAotICAgIDE0LCAyMjksIDE5NiwgMjI5LCAxNSwgMjAsIDEsIDIyNiwgMTQsIDI0MiwgMjA1LCAyMCwgMSwgMjI2LCAxNCwgMjI1LCAKLSAgICAxODEsIDIwLCAxLCAyMjYsIDE0LCAyMTYsIDgzLCAyMjgsIDExMSwgMjAsIDEsIDIyNiwgMTQsIDIyMCwgMjIzLCAyMjksIAotICAgIDEwLCAyMCwgMSwgMjI2LCAxNCwgMjIwLCAyMTksIDIwLCAxLCAyMjYsIDE0LCAyMzEsIDg0LCAyMTcsIDE3MiwgMjAsIDEsIAotICAgIDIyNiwgMTQsIDIzMSwgMTcwLCAyMzEsIDE4NCwgMjAsIDEsIDIyNiwgMTQsIDIyOCwgMTEsIDIyOCwgOTksIDIwLCAxLCAKLSAgICAyMjYsIDE0LCAyMzQsIDE1MSwgMjAsIDEsIDIyNiwgMTQsIDI0MiwgMjA2LCAyMCwgMSwgMjI2LCAxNCwgMjM0LCAxNDcsIAotICAgIDIwLCAxLCAyMjYsIDE0LCAyMzMsIDE1MSwgMjAsIDEsIDIyNiwgMTQsIDIyNiwgMTIxLCAyMCwgMSwgMjI2LCAxNCwgMjE0LCAKLSAgICAxNTksIDIwLCAxLCAyMjYsIDE0LCAyMjksIDk5LCAyMzAsIDExNywgMjAsIDEsIDIyNiwgMTQsIDIyOSwgMTMyLCAyMzEsIAotICAgIDE2NiwgMjAsIDEsIDIyNiwgMTQsIDIxMywgMTgxLCAyMCwgMSwgMjI2LCAxNCwgMjIyLCAxODIsIDIwLCAxLCAyMjYsIDE0LCAKLSAgICAyMTgsIDQ1LCAyMCwgMSwgMjI2LCAxNCwgMjMxLCA5NiwgMjAsIDEsIDIyNiwgMTQsIDIyOSwgMTE3LCAyMCwgMSwgMjI2LCAKLSAgICAxNCwgMjI5LCAxMTgsIDIzMywgMTA3LCAyMCwgMSwgMjI2LCAxNCwgMjMxLCA4NiwgMjAsIDEsIDIyNiwgMTQsIDIxOCwgCi0gICAgMjUzLCAyMCwgMSwgMjI2LCAxNCwgMjMxLCAxNzQsIDIwLCAxLCAyMjYsIDE0LCAyMzAsIDIwMywgMjAsIDEsIDIyNiwgMTQsIAotICAgIDIyOCwgMjEsIDIwLCAxLCAyMjYsIDE0LCAyMjUsIDI0LCAyMCwgMSwgMjI2LCAxNCwgMjMxLCA5NSwgMjI5LCAxMzQsIDIwLCAKLSAgICAxLCAyMjYsIDE0LCAyNDQsIDk1LCAyMCwgMSwgMjI2LCAxNCwgMjMxLCAxNjEsIDIwLCAxLCAyMjYsIDE0LCAyNDQsIDExNiwgCi0gICAgMjAsIDEsIDIyNiwgMTQsIDIzNCwgMTU5LCAyMCwgMSwgMjI2LCAxNCwgMjMyLCA0MywgMjI5LCA0LCAyMCwgMSwgMjI2LCAKLSAgICAxNCwgMjMyLCA0MywgMjI4LCAyMzYsIDIwLCAxLCAyMjYsIDE0LCAyMzMsIDM1LCAyMCwgMSwgMjI2LCAxNCwgMjI5LCAxNDAsIAotICAgIDIwLCAxLCAyMjYsIDE0LCAyMjgsIDEyMiwgMjAsIDEsIDIyNiwgMTQsIDE4OCwgMjAsIDEsIDIyNiwgMTQsIDIzNCwgODMsIAotICAgIDIwLCAxLCAyMjYsIDE0LCAyMjksIDg3LCAyMCwgMSwgMTMxLCAyMjksIDk4LCAyMzIsIDI0LCAyMCwgMSwgMTMxLCAyMjcsIAotICAgIDIzNywgMjAsIDEsIDEzMSwgMjEyLCAxODcsIDIwLCAxLCAxMzEsIDIxNCwgMzcsIDIwLCAxLCAxMzEsIDIyOSwgMTMzLCAyMCwgCi0gICAgMSwgMTMxLCAyMjksIDIxNywgMjAsIDEsIDEzMSwgMjI5LCAxMDUsIDIwLCAxLCAxMzEsIDI0MiwgMjE1LCAyMCwgMSwgMTMxLCAKLSAgICAyMzEsIDE3OCwgMjAsIDEsIDEzMSwgMjQzLCA1MywgMjAsIDEsIDEzMSwgMjI4LCAzLCAyMzAsIDIzOSwgMjMxLCA5OCwgMjAsIAotICAgIDEsIDEzMSwgMjI4LCA5NSwgMjMxLCAxNjksIDIwLCAxLCAxMzEsIDIzMSwgMTc1LCAyMCwgMSwgMTMxLCAyMjUsIDE4NywgCi0gICAgMjAsIDEsIDEzMSwgMjI5LCAyMDIsIDIwLCAxLCAxMzEsIDIzMSwgMTg2LCAyNTAsIDIxNSwgMjAsIDEsIDEzMSwgMjM0LCAKLSAgICAxNDksIDIwLCAxLCAxMzEsIDI0MiwgMjE2LCAyMCwgMSwgMTMxLCAyMzQsIDE1NiwgMjAsIDEsIDEzMSwgMjEyLCAyMDQsIAotICAgIDIzMCwgMTQ2LCAyMCwgMSwgMTMxLCAyMjcsIDIzMSwgMjAsIDEsIDEzMSwgMjMxLCAxNjMsIDIwLCAxLCAxMzEsIDIyOCwgCi0gICAgMTIxLCAyMCwgMSwgMTMxLCAyMzEsIDE2OSwgMjAsIDEsIDEzMSwgMjEzLCA3LCAyMCwgMSwgMTMxLCAyMzQsIDIsIDIwLCAxLCAKLSAgICAxMzEsIDIzNSwgMTQsIDIwLCAxLCAxMzEsIDIyMSwgNDQsIDIwLCAxLCAxMzEsIDIyOSwgMjExLCAyMCwgMSwgMTMxLCAyMTgsIAotICAgIDQzLCAyMCwgMSwgMTMxLCAyMjgsIDI0MCwgMjAsIDEsIDEzMSwgMjE3LCAxOSwgMjEyLCAxODksIDIwLCAxLCAxMzEsIDIxOSwgCi0gICAgMjMsIDIwLCAxLCAxMzEsIDIyOSwgMTI0LCAyMjgsIDIwLCAyMCwgMSwgMTMxLCAyMTQsIDE1OCwgMjAsIDEsIDEzMSwgMjMwLCAKLSAgICAxOSwgMjAsIDEsIDEzMSwgMjMyLCA0MywgMjM0LCAxNTgsIDIwLCAxLCAxMzEsIDIyOCwgMTA0LCAyMCwgMSwgMTMxLCAyMjksIAotICAgIDExOSwgMjAsIDEsIDEzMSwgMjMzLCAxMTEsIDIwLCAxLCAxMzEsIDIzMSwgMTcxLCAyMCwgMSwgMTMxLCAyMzEsIDc1LCAyMCwgCi0gICAgMSwgMTMxLCAyMjgsIDk4LCAyMCwgMSwgMTMxLCAyMTcsIDE2OCwgMjAsIDEsIDEzMSwgMjI5LCAxMjEsIDIwLCAxLCAxMzEsIAotICAgIDI0MywgMjA0LCAyMCwgMSwgMTMxLCAyMjksIDIxNiwgMjAsIDEsIDEzMSwgMjI4LCAxMjMsIDIwLCAxLCAxMzEsIDIyOCwgCi0gICAgMTE5LCAyMCwgMSwgMTMxLCAyNTEsIDM2LCAyMCwgMSwgMTMxLCAyMTQsIDE2MCwgMjAsIDEsIDEzMSwgMjMxLCAxNzYsIDIwLCAKLSAgICAxLCAxMzEsIDIyMywgNTEsIDIwLCAxLCAxMzEsIDIyOSwgMTQsIDIwLCAxLCAxMzEsIDIzMywgMTI2LCAyMCwgMSwgMTMxLCAKLSAgICAyMTcsIDE3LCAyMCwgMSwgMTMxLCAyMjgsIDEwNSwgMjI5LCA4NywgMjAsIDEsIDEzMSwgMjI5LCA2LCAyMCwgMSwgMTMxLCAKLSAgICAyMzQsIDE2MiwgMjAsIDEsIDEzMSwgMjI5LCAxMjUsIDIwLCAxLCAxMzEsIDIzMiwgMTcsIDIwLCAxLCAxMzEsIDIzMSwgCi0gICAgMTY0LCAyMCwgMSwgMTMxLCAyMzIsIDE1NiwgMjAsIDEsIDEzMSwgMjMzLCAyMTAsIDIwLCAxLCAxMzEsIDIyOSwgMTIsIDIwLCAKLSAgICAxLCAxMzEsIDIyOSwgODcsIDIwLCAxLCAxMzEsIDIxMywgMTcyLCAyMCwgMSwgMTMxLCAyMjksIDEyMiwgMjAsIDEsIDEzMSwgCi0gICAgMjI4LCAxMDgsIDIwLCAxLCAxMzEsIDIyOCwgMTAwLCAyMCwgMSwgMTMxLCAyMzMsIDIyNCwgMjI4LCAyMjYsIDIwLCAxLCAKLSAgICAxMzEsIDIyOCwgMTA2LCAyMCwgMSwgMTMxLCAyMjksIDIyNCwgMjAsIDEsIDEzMSwgMjMyLCA0MywgMjI4LCAxMTEsIDIwLCAKLSAgICAxLCAxMzEsIDIxMywgOTEsIDIwLCAxLCAxMzEsIDIyOSwgMjIzLCAyMCwgMSwgMTMxLCAyMjAsIDE0NSwgMjAsIDEsIDEzMSwgCi0gICAgMjIxLCA0NywgMjAsIDEsIDEzMSwgMjMxLCAxNzIsIDIwLCAxLCAxMzEsIDIzMiwgMjQsIDIwLCAxLCAxMzEsIDIzMSwgMTgyLCAKLSAgICAyMCwgMSwgMTMxLCAyMzQsIDE1MCwgMjAsIDEsIDEzMSwgMjMxLCAxNzMsIDIwLCAxLCAxMzEsIDIzNCwgMTU0LCAyMCwgMSwgCi0gICAgMTMxLCAyMzEsIDE4NiwgMjI1LCAyMzUsIDIwLCAxLCAxMzEsIDIxMiwgMTcxLCAyMCwgMSwgMTMxLCAyMjksIDIsIDIwLCAxLCAKLSAgICAxMzEsIDIzMSwgMzMsIDIwLCAxLCAxMzEsIDIzMCwgMTcwLCAyMCwgMSwgMTMxLCAyMjAsIDE5NSwgMjAsIDEsIDEzMSwgCi0gICAgMjM0LCAxNzIsIDIzMywgOTQsIDIwLCAxLCAxMzEsIDIzNCwgMTcyLCAyNDQsIDEyOCwgMjAsIDEsIDEzMSwgMjI5LCAxNTIsIAotICAgIDIwLCAxLCAxMzEsIDIzMCwgMTYsIDIwLCAxLCAxMzEsIDIzMiwgMjI5LCAyMCwgMSwgMTMxLCAyMjUsIDE5NywgMjAsIDEsIAotICAgIDEzMSwgMjI2LCA3NCwgMjAsIDEsIDEzMSwgMjE3LCAxODMsIDIwLCAxLCAxMDMsIDIzMSwgMTYyLCAyMCwgMSwgMTAzLCAKLSAgICAyMTQsIDM1LCAyMCwgMSwgMTAzLCAyMjksIDAsIDIwLCAxLCAxMDMsIDIzMSwgODMsIDIwLCAxLCAxMDMsIDIyOCwgMjU0LCAKLSAgICAyMCwgMSwgMTAzLCAyMzMsIDcsIDIwLCAxLCAxMDMsIDIyOSwgMywgMjAsIDEsIDEwMywgMjI4LCAxMTgsIDIwLCAxLCAxMDMsIAotICAgIDIyOSwgMTM5LCAyMCwgMSwgMTAzLCAyMjgsIDIwLCAyMCwgMSwgMTAzLCAyMTMsIDE4MiwgMjAsIDEsIDEwMywgMjI5LCA5NSwgCi0gICAgMjAsIDEsIDEwMywgMjIwLCAyNDEsIDIwLCAxLCAxMDMsIDIyOSwgMTA2LCAyMCwgMSwgMTAzLCAyMzQsIDE1NywgMjAsIDEsIAotICAgIDEwMywgMjE3LCAxNzAsIDIwLCAxLCAxMDMsIDIyMCwgMjIxLCAyMCwgMSwgMTAzLCAyMjksIDExLCAyMCwgMSwgMTAzLCAKLSAgICAyMTgsIDI1MywgMjAsIDEsIDEwMywgMjM0LCAxNjIsIDIwLCAxLCAxMDMsIDIxMywgNzksIDIwLCAxLCAxMDMsIDIzMywgCi0gICAgMjI1LCAyMCwgMSwgMTAzLCAyMjIsIDE1MCwgMjAsIDEsIDEwMywgMjMxLCA4OCwgMjAsIDEsIDEwMywgMjI5LCAyMTUsIDIwLCAKLSAgICAxLCAxMDMsIDIzMSwgMjUxLCAyMCwgMSwgMTAzLCAyMzEsIDk0LCAyMCwgMSwgMTAzLCAyMjEsIDQ2LCAyMCwgMSwgMTAzLCAKLSAgICAyMTMsIDMwLCAyMCwgMSwgMTAzLCAyMjksIDUsIDIwLCAxLCAxMDMsIDIzNCwgMTUzLCAyMzEsIDE2NSwgMjAsIDEsIDEwMywgCi0gICAgMjI5LCAxMDIsIDIwLCAxLCAxMDMsIDIxNiwgODIsIDIwLCAxLCAxMDMsIDI0MiwgMjI0LCAyMCwgMSwgMTAzLCAyMjksIDkyLCAKLSAgICAyMCwgMSwgMTAzLCAyNDQsIDk2LCAyMCwgMSwgMTAzLCAyMjksIDIxOSwgMjAsIDEsIDEwMywgMjMxLCA2NywgMjAsIDEsIAotICAgIDEwMywgMjMzLCAzMSwgMjAsIDEsIDEwMywgMjI5LCAyMDEsIDIwLCAxLCAxMDMsIDIzMCwgMjE3LCAyMCwgMSwgMTAzLCAKLSAgICAyMzEsIDcxLCAyMCwgMSwgMTAzLCAyMjUsIDYsIDIwLCAxLCAxMDMsIDIzMSwgNjksIDIwLCAxLCAxMDMsIDIzMSwgODUsIAotICAgIDIwLCAxLCAxMDMsIDIzMiwgMTQyLCAyMCwgMSwgMTAzLCAyMjgsIDExMCwgMjAsIDEsIDEwMywgMjMxLCAxODUsIDIwLCAxLCAKLSAgICAxMDMsIDIzMywgMjAyLCAyMCwgMSwgMTAzLCAyMjgsIDEyLCAyMCwgMSwgMTAzLCAyMTcsIDE3MywgMjAsIDEsIDEwMywgCi0gICAgMjE5LCAyMjEsIDIwLCAxLCAxMDMsIDIxMiwgMTcxLCAyMCwgMSwgMTAzLCAyMzQsIDE1NCwgMjAsIDEsIDEwMywgMjI0LCAKLSAgICA2MCwgMjAsIDEsIDEwMywgMjE3LCAyMTgsIDIwLCAxLCAxMDMsIDIyOSwgMTAzLCAyMCwgMSwgMTAzLCAyMzEsIDkwLCAyMCwgCi0gICAgMSwgMTAzLCAyMjgsIDEwOSwgMjAsIDEsIDEwMywgMjM0LCAxNTIsIDIwLCAxLCAxMDMsIDIyNSwgMTkxLCAyMCwgMSwgMTAzLCAKLSAgICAyMjYsIDI4LCAyMCwgMSwgMTAzLCAyMjcsIDI0NiwgMjAsIDEsIDEwMywgMjMzLCAzNSwgMjAsIDEsIDEwMywgMjI5LCAxNDAsIAotICAgIDIwLCAxLCAxMDMsIDIzMSwgODcsIDIwLCAxLCAxMDMsIDIyOSwgMTE0LCAyMCwgMSwgMTAzLCAyMTIsIDE4NCwgMjAsIDEsIAotICAgIDEwMywgMjI2LCAxNDksIDIwLCAxLCAxMDMsIDIxMiwgMTgzLCAyMCwgMSwgMTAzLCAyMjksIDIyNCwgMjAsIDEsIDEwMywgCi0gICAgMjI4LCA5OSwgMjAsIDEsIDEwMywgMjE5LCAyNSwgMjAsIDEsIDEwMywgMjMzLCAyMjksIDIwLCAxLCAxMDMsIDIyOSwgMTI5LCAKLSAgICAyMCwgMSwgMTAzLCAyMjksIDEwMCwgMjAsIDEsIDEwMywgMjE2LCA2NiwgMjAsIDEsIDEwMywgMjMxLCA5OCwgMjAsIDEsIAotICAgIDEwMywgMjMzLCAyMTksIDIwLCAxLCAxMDMsIDIyOCwgMTA3LCAyMCwgMSwgMTAzLCAyMTcsIDE3MSwgMjAsIDEsIDEwMywgCi0gICAgMjMyLCAxOSwgMjAsIDEsIDEwMywgMjI5LCAxMzgsIDIwLCAxLCAxMDMsIDIzMywgMzAsIDIwLCAxLCAxMDMsIDIyOSwgMTIwLCAKLSAgICAyMCwgMSwgMTAzLCAyMjgsIDExMiwgMjAsIDEsIDEwMywgMjI4LCAyNDAsIDIwLCAxLCAxMDMsIDI0MiwgMjA5LCAyMCwgMSwgCi0gICAgMTAzLCAyMzMsIDIzOCwgMjAsIDEsIDEwMywgMjIzLCAyMzQsIDIyNywgNzUsIDIwLCAxLCAxMDMsIDIxOCwgMzUsIDIwLCAxLCAKLSAgICAxMDMsIDIxNiwgMjIzLCAyMCwgMSwgMTAzLCAyMjgsIDEwLCAyMCwgMSwgMTAzLCAyMjMsIDEzNiwgMjAsIDEsIDEwMywgCi0gICAgMjMzLCA3MywgMjAsIDEsIDEwMywgMjMxLCAxNDQsIDIwLCAxLCAxMDMsIDE4MywgMjAsIDEsIDEwMywgMjE4LCAyMDUsIDIwLCAKLSAgICAxLCAxMDMsIDIzMCwgMTcyLCAyMCwgMSwgMTAzLCAyMjAsIDIwNywgMjAsIDEsIDEwMywgMjIwLCAyMTcsIDIwLCAxLCAxMDMsIAotICAgIDIzMywgMTc3LCAyMCwgMSwgMTAzLCAyMjgsIDkyLCAyMCwgMSwgMTAzLCAyMjAsIDE1MCwgMjAsIDEsIDEwMywgMjI4LCAKLSAgICAxMDEsIDIwLCAxLCAxMDMsIDIyNiwgODYsIDIwLCAxLCAxMDMsIDIyOSwgNjQsIDIwLCAxLCAxMDMsIDIyMCwgMTc2LCAyMCwgCi0gICAgMSwgMTAzLCAyMjUsIDE5LCAyMCwgMSwgMTAzLCAyMzAsIDExNywgMjAsIDEsIDEwMywgMjMyLCAxNzQsIDIwLCAxLCAxMDMsIAotICAgIDIyMywgMjM0LCAyMzAsIDE2NiwgMjAsIDEsIDEwMywgMjE3LCA3MSwgMjAsIDEsIDEwMywgMjI4LCA5MywgMjAsIDEsIDEwMywgCi0gICAgMjMxLCAxODYsIDE5OCwgMjAsIDEsIDEwMywgMjIyLCAxNDgsIDIwLCAxLCAxMDMsIDI0NCwgMTYzLCAyMCwgMSwgODAsIAotICAgIDIyOSwgMjIzLCAyMCwgMSwgODAsIDIxNiwgMjI5LCAyMCwgMSwgODAsIDIzMSwgMTc1LCAyMCwgMSwgODAsIDIzMywgMTExLCAKLSAgICAyMCwgMSwgODAsIDIxNCwgMTA5LCAyMCwgMSwgODAsIDIzMiwgMTc4LCAyMCwgMSwgODAsIDIyNiwgMjEzLCAyMCwgMSwgODAsIAotICAgIDIxOSwgMjMwLCAyMCwgMSwgODAsIDIyNCwgMzcsIDIwLCAxLCA4MCwgMjI4LCAxMTQsIDIwLCAxLCA4MCwgMjI5LCAxOTQsIAotICAgIDIwLCAxLCA4MCwgMjI1LCAzMywgMjAsIDEsIDgwLCAyMTgsIDEzLCAyMCwgMSwgODAsIDIyOSwgMTA4LCAyMCwgMSwgODAsIAotICAgIDIzMywgMjU0LCAyMCwgMSwgODAsIDIxMywgMTc1LCAyMCwgMSwgODAsIDIyMiwgODksIDIwLCAxLCA4MCwgMjI5LCAxMzAsIAotICAgIDIwLCAxLCA4MCwgMjI2LCAyMTAsIDIwLCAxLCA4MCwgMjE2LCAyMzAsIDIwLCAxLCA4MCwgMjMzLCAyMjMsIDIwLCAxLCA4MCwgCi0gICAgMjMyLCAxOTIsIDIwLCAxLCA4MCwgMjI4LCAxMTcsIDIwLCAxLCA4MCwgMjI5LCA4NCwgMjAsIDEsIDgwLCAyMzIsIDI1LCAKLSAgICAyMCwgMSwgODAsIDIyOSwgMTAxLCAyMCwgMSwgODAsIDIyOSwgODMsIDIwLCAxLCA4MCwgMjI4LCAxMTYsIDIwLCAxLCA4MCwgCi0gICAgMjIzLCAxMzQsIDIwLCAxLCA4MCwgMjI5LCAyLCAyMCwgMSwgODAsIDIyNiwgODUsIDIwLCAxLCA4MCwgMjIyLCAyMDAsIDIwLCAKLSAgICAxLCA4MCwgMjI5LCAxMTUsIDIwLCAxLCA4MCwgMjMxLCA3NywgMjAsIDEsIDgwLCAyNDIsIDIwMywgMjAsIDEsIDgwLCAyMjksIAotICAgIDEwNCwgMjAsIDEsIDgwLCAyMjksIDEzLCAyMCwgMSwgODAsIDIzMSwgMjM1LCAyMCwgMSwgODAsIDIzMiwgMTc2LCAyMCwgMSwgCi0gICAgODAsIDIyOSwgMTM1LCAyMCwgMSwgODAsIDIyOSwgMjA3LCAyMCwgMSwgODAsIDIxOCwgMzQsIDIyOCwgOTksIDIwLCAxLCAKLSAgICA4MCwgMjIxLCA0OCwgMjAsIDEsIDgwLCAyMjUsIDI5LCAyMCwgMSwgODAsIDIyOSwgMjI3LCAyMTksIDIzNSwgMjAsIDEsIAotICAgIDgwLCAyMjksIDEyMywgMjI4LCAyMCwgMjAsIDEsIDgwLCAyMTIsIDI1MSwgMjAsIDEsIDgwLCAyNDIsIDIwNCwgMjAsIDEsIAotICAgIDgwLCAyMTYsIDgxLCAyMCwgMSwgODAsIDIxMywgMTAsIDIwLCAxLCA4MCwgMjI1LCAxNTAsIDIwLCAxLCA4MCwgMjE2LCA3MSwgCi0gICAgMjAsIDEsIDgwLCAyMzQsIDE2MCwgMjAsIDEsIDgwLCAyMTksIDI0LCAyMCwgMSwgODAsIDIxNywgMTcyLCAyMCwgMSwgODAsIAotICAgIDIxNCwgMTYxLCAyMCwgMSwgODAsIDIxMywgMjQ3LCAyMCwgMSwgODAsIDIzMywgMTU0LCAyMCwgMSwgODAsIDIyNSwgMzUsIAotICAgIDIwLCAxLCA4MCwgMjE4LCA0NCwgMjAsIDEsIDgwLCAyNDIsIDIyMywgMjAsIDEsIDgwLCAyMjksIDE0NCwgMjAsIDEsIDgwLCAKLSAgICAyMjAsIDIyMCwgMjAsIDEsIDgwLCAyMzEsIDcyLCAyMCwgMSwgODAsIDIzMSwgMTc5LCAyMCwgMSwgODAsIDIyNywgMjM1LCAKLSAgICAyMCwgMSwgODAsIDIyOCwgMjIzLCAyMCwgMSwgODAsIDI0MywgNDksIDIwLCAxLCA4MCwgMjE2LCA3MiwgMjAsIDEsIDgwLCAKLSAgICAyMzMsIDIzMiwgMjAsIDEsIDgwLCAyMTMsIDU3LCAyMCwgMSwgODAsIDIyOCwgMTEsIDI0OSwgMjA5LCAyMCwgMSwgODAsIAotICAgIDIxMiwgMjQxLCAyMCwgMSwgODAsIDIzMSwgODksIDIwLCAxLCA4MCwgMjI5LCAyMTIsIDIwLCAxLCA4MCwgMjI1LCAyMzIsIAotICAgIDIwLCAxLCA4MCwgMjEyLCAxODgsIDIwLCAxLCA4MCwgMjMzLCAzMiwgMjAsIDEsIDgwLCAyNDMsIDIwNCwgMjAsIDEsIDgwLCAKLSAgICAyNDMsIDQ4LCAyMCwgMSwgODAsIDIyOSwgOTQsIDIwLCAxLCA4MCwgMjM0LCAxNjIsIDIwLCAxLCA4MCwgMjMyLCAyOCwgMjAsIAotICAgIDEsIDgwLCAyMjksIDEwNywgMjAsIDEsIDgwLCAyNDIsIDIxMCwgMjAsIDEsIDgwLCAyNDQsIDE2NCwgMjAsIDEsIDgwLCAKLSAgICAyMjgsIDk0LCAyMCwgMSwgODAsIDIyNiwgMjksIDIwLCAxLCA4MCwgMjEzLCA4LCAyMCwgMSwgODAsIDIyOSwgMTMxLCAyMCwgCi0gICAgMSwgODAsIDIyOCwgMTEsIDI1MSwgMjAwLCAyMCwgMSwgODAsIDIyNywgMjE1LCAyMCwgMSwgODAsIDIyNSwgMTI3LCAyMCwgCi0gICAgMSwgODAsIDIzMSwgMzMsIDIwLCAxLCA4MCwgMjQzLCAyMDIsIDIwLCAxLCA4MCwgMjMwLCAzOCwgMjAsIDEsIDgwLCAyMzAsIAotICAgIDE3MCwgMjAsIDEsIDgwLCAyNDIsIDIwOSwgMjAsIDEsIDgwLCAyNDMsIDIwNiwgNzIsIDIwLCAxLCA4MCwgMjMwLCAxMTgsIAotICAgIDIwLCAxLCA4MCwgMjI1LCAzMiwgMjAsIDEsIDgwLCAyMjksIDk2LCAyMCwgMSwgODAsIDIzMywgMjEwLCAyMCwgMSwgODAsIAotICAgIDIyNSwgMjI5LCAyMCwgMSwgODAsIDIyOCwgMTAyLCAyMCwgMSwgODAsIDIxMywgOSwgMjAsIDEsIDgwLCAyMjksIDExNiwgCi0gICAgMjAsIDEsIDgwLCAyMjYsIDIxNCwgMjI2LCA2MiwgMjAsIDEsIDgwLCAyNDMsIDIwNiwgMjUwLCAyMDMsIDIwLCAxLCA4MCwgCi0gICAgMjQ0LCA2LCAyMCwgMSwgODAsIDIyOSwgNywgMjAsIDEsIDgwLCA2MSwgMjAsIDEsIDgwLCAyMTYsIDIyMywgMjAsIDEsIDgwLCAKLSAgICA3NSwgMjAsIDEsIDgwLCA3MiwgMjAsIDEsIDgwLCAyMzMsIDEwOSwgMjAsIDEsIDgwLCAyMjYsIDIxNCwgMjI1LCAxNTcsIAotICAgIDIwLCAxLCA4MCwgMjE4LCA0OSwgMjAsIDEsIDgwLCAyMTgsIDIsIDIwLCAxLCA4MCwgMjI5LCAyMjcsIDIzMCwgMTA2LCAKLSAgICAyNDAsIDIyMSwgMjAsIDEsIDgwLCAyMjAsIDE5NSwgMjAsIDEsIDgwLCAyMTMsIDUsIDIwLCAxLCA4MCwgMjI5LCA3NywgMjAsIAotICAgIDEsIDgwLCAyMTIsIDE5MywgMjAsIDEsIDgwLCAyMTIsIDIxOCwgMjE4LCAxODUsIDIwLCAxLCA4MCwgMjEyLCAyMTgsIDI0OSwgCi0gICAgODYsIDIwLCAxLCA4MCwgMjEyLCAxNzgsIDIwLCAxLCA4MCwgMjEyLCAxODYsIDIwLCAxLCA4MCwgMjM0LCAxNDgsIDIwLCAxLCAKLSAgICA4MCwgMjI2LCAyNywgMjAsIDEsIDgwLCAyMjksIDgsIDI0NSwgNjUsIDIwLCAxLCA4MCwgMjI1LCAzMCwgMjAsIDEsIDgwLCAKLSAgICAyMTMsIDE4MCwgMjAsIDEsIDgwLCAyNDQsIDExNiwgMjAsIDEsIDgwLCAyMTQsIDIyNywgMjAsIDEsIDgwLCAyMzIsIDE1NiwgCi0gICAgMjAsIDEsIDgwLCAyMzEsIDQyLCAyMCwgMSwgODAsIDIyMywgMjA0LCAyMCwgMSwgODAsIDIyNCwgNjEsIDIwLCAxLCA4MCwgCi0gICAgMjI5LCA3NiwgMjAsIDEsIDgwLCAyMjksIDE1OSwgMjAsIDEsIDgwLCAyMjAsIDE4NywgMjAsIDEsIDgwLCAyMjAsIDE3NiwgCi0gICAgMjAsIDEsIDgwLCAyNDMsIDIwNiwgMjIzLCAyMzYsIDIwLCAxLCA4MCwgMjA1LCAyMCwgMSwgODAsIDIyNSwgMjQwLCAyMCwgCi0gICAgMSwgODAsIDIzMiwgMTc0LCAyMCwgMSwgODAsIDIzNCwgMzcsIDIwLCAxLCA4MCwgMjMxLCAxMjIsIDIwLCAxLCA4MCwgMTg4LCAKLSAgICAyMCwgMSwgODAsIDIzMSwgMjMyLCAyMCwgMSwgODAsIDIxNywgMTc0LCAyMCwgMSwgODAsIDIzNCwgMTAxLCAyMCwgMSwgODAsIAotICAgIDIzMCwgMjIwLCAyMCwgMSwgODAsIDIxNywgMjAwLCAyMCwgMSwgODAsIDI0NCwgMTM3LCAyMCwgMSwgODAsIDI0MiwgMTk5LCAKLSAgICAyMCwgMSwgMjI2LCAxMywgMTgxLCAyMCwgMSwgMjI2LCAxMywgNjksIDIwLCAxLCAyMjYsIDEzLCAyMzMsIDIzOCwgMjAsIDEsIAotICAgIDIyNiwgMTMsIDI0NSwgMTY1LCAyMCwgMSwgMjI2LCAxMywgMjI0LCAxLCAyMCwgMSwgMjI2LCAxMywgMjE4LCAzNSwgMjAsIAotICAgIDEsIDIyNiwgMTMsIDIyOCwgMTAsIDIwLCAxLCAyMjYsIDEzLCAyMzMsIDE1NywgMjAsIDEsIDIyNiwgMTMsIDIyMywgMTM2LCAKLSAgICAyMCwgMSwgMjI2LCAxMywgMjIzLCAxODIsIDIwLCAxLCAyMjYsIDEzLCAyMzEsIDE0NCwgMjAsIDEsIDIyNiwgMTMsIDIxOCwgCi0gICAgNDksIDIwLCAxLCAyMjYsIDEzLCAyMjksIDIyNiwgMjAsIDEsIDIyNiwgMTMsIDIyOSwgMTQsIDIwLCAxLCAyMjYsIDEzLCAKLSAgICAxODMsIDIwLCAxLCAyMjYsIDEzLCAyMTgsIDIwNSwgMjAsIDEsIDIyNiwgMTMsIDIyMCwgMjA3LCAyMCwgMSwgMjI2LCAxMywgCi0gICAgMjIwLCAxMTcsIDIwLCAxLCAyMjYsIDEzLCAyMjEsIDQ0LCAyMCwgMSwgMjI2LCAxMywgMjMzLCAxNzcsIDIwLCAxLCAyMjYsIAotICAgIDEzLCAyMzQsIDE2MiwgMjAsIDEsIDIyNiwgMTMsIDIyOCwgNjQsIDIwLCAxLCAyMjYsIDEzLCAyMjgsIDkyLCAyMCwgMSwgCi0gICAgMjI2LCAxMywgMjI4LCAyNDEsIDIwLCAxLCAyMjYsIDEzLCAyMTIsIDIxNywgMjAsIDEsIDIyNiwgMTMsIDIyMCwgMTUwLCAKLSAgICAyMCwgMSwgMjI2LCAxMywgMTg2LCAyMCwgMSwgMjI2LCAxMywgMjI4LCAxMjAsIDIwLCAxLCAyMjYsIDEzLCAyMjYsIDI3LCAKLSAgICAyMCwgMSwgMjI2LCAxMywgMjI4LCAxMDEsIDIwLCAxLCAyMjYsIDEzLCAyMTMsIDE4MCwgMjAsIDEsIDIyNiwgMTMsIDIyNiwgCi0gICAgODYsIDIwLCAxLCAyMjYsIDEzLCAyMjMsIDUxLCAyMCwgMSwgMjI2LCAxMywgMjI5LCA2NCwgMjAsIDEsIDIyNiwgMTMsIAotICAgIDIyMywgMjA0LCAyMCwgMSwgMjI2LCAxMywgMjM0LCAxNzEsIDIwLCAxLCAyMjYsIDEzLCAyMjksIDkzLCAyMCwgMSwgMjI2LCAKLSAgICAxMywgMjI5LCAxNDEsIDIwLCAxLCAyMjYsIDEzLCAyMjAsIDE4NywgMjAsIDEsIDIyNiwgMTMsIDIyNSwgMzMsIDIwLCAxLCAKLSAgICAyMjYsIDEzLCAyNDQsIDYsIDIwLCAxLCAyMjYsIDEzLCAyMTQsIDQ5LCAyMCwgMSwgMjI2LCAxMywgMjMzLCAxMywgMjAsIDEsIAotICAgIDIyNiwgMTMsIDIzMiwgMTc0LCAyMCwgMSwgMjI2LCAxMywgMjM0LCAzNywgMjAsIDEsIDIyNiwgMTMsIDIzMSwgMTc3LCAyMCwgCi0gICAgMSwgMjI2LCAxMywgMjIzLCAyMzMsIDIwLCAxLCAyMjYsIDEzLCAxODgsIDIwLCAxLCAyMjYsIDEzLCAyMzAsIDIzMSwgMjAsIAotICAgIDEsIDIyNiwgMTMsIDIzMSwgMTg1LCAyMCwgMSwgMjI2LCAxMywgMjE3LCAxODMsIDIwLCAxLCAyMjYsIDEzLCAyMzQsIDQsIAotICAgIDIwLCAxLCAyMjYsIDEzLCAyMjIsIDE2NiwgMjAsIDEsIDIyNiwgMTMsIDIxNCwgOTgsIDU2LCAxLCAyNTMsIDE5MywgNzQsIAotICAgIDE0MiwgMSwgMjUzLCAxOTMsIDIxMywgMzgsIDQ3LCAyNywgMTYsIDIyNSwgMzksIDQ3LCAyNywgMTYsIDI0OCwgMTAzLCA0NywgCi0gICAgMjcsIDE2LCAyMjYsIDUwLCA0NywgMjcsIDE2LCAyMjYsIDIzNywgMjQ1LCAxMzUsIDQ3LCAyNywgMTYsIDIyNiwgMjM3LCAKLSAgICAyNDcsIDE1MywgNDcsIDI3LCAxNiwgMjE0LCAyNDgsIDI0NSwgMTM1LCA0NywgMjcsIDE2LCAyMTQsIDI0OCwgMjQ3LCAxNTMsIAotICAgIDQ3LCAyNywgMTYsIDIzNCwgMjAyLCA0NywgMjcsIDE2LCAyMTgsIDExNSwgNDcsIDI3LCAxNiwgMjI2LCAxMzcsIDQ3LCAyNywgCi0gICAgMTYsIDIxMiwgMjA4LCA0NywgMjcsIDE2LCAyMTIsIDIwOSwgMjQ3LCAxNTMsIDQ3LCAyNywgMTYsIDIzMywgMjQzLCA0NywgCi0gICAgMjcsIDE2LCAyNTMsIDIzNiwgMjQ1LCAxMzUsIDQ3LCAyNywgMTYsIDI0NCwgMjQ5LCAyNDUsIDEzNSwgNDcsIDI3LCAxNiwgCi0gICAgMjE3LCAyMTEsIDQ3LCAyNywgMTYsIDIzNCwgMTY3LCA0NywgMjcsIDE2LCAyNTMsIDIyNywgNDcsIDI3LCAxNiwgMjUzLCAKLSAgICAyMjgsIDI0NywgMTUzLCA0NywgMjcsIDE2LCAyMTgsIDEyMSwgNDcsIDI3LCAxNiwgMjE3LCAxMTIsIDQ3LCAyNywgMTYsIAotICAgIDIyNywgNzIsIDI1MywgMTkxLCA0NywgMjcsIDE2LCAyNDIsIDEzNSwgMjUzLCAxOTEsIDQ3LCAyNywgMTYsIDIyNSwgMzgsIAotICAgIDQ3LCAyNywgMTYsIDI1MCwgODUsIDQ3LCAyNywgMTYsIDIxNCwgMjM4LCA0NywgMjcsIDE2LCAyMzUsIDE2MiwgMjUzLCAKLSAgICAxOTEsIDQ3LCAyNywgMTYsIDIzNCwgMTY5LCAyNTMsIDE5MSwgNDcsIDI3LCAxNiwgMjM0LCAxNjgsIDI1MywgMTkxLCA0NywgCi0gICAgMjcsIDE2LCAyMjIsIDEzMSwgNDcsIDI3LCAxNiwgMjI2LCAxMjgsIDQ3LCAyNywgMTYsIDIxOSwgODYsIDI1MywgMjMwLCAKLSAgICA0NywgMjcsIDE2LCAyMjYsIDIzNiwgMjUzLCAxOTEsIDQ3LCAyNywgMTYsIDIxNCwgMjQ3LCAyNTMsIDE5MSwgNDcsIDI3LCAKLSAgICAxNiwgMjUzLCAyMzEsIDI1MywgMTkxLCA0NywgMjcsIDE2LCAyNTMsIDIyNSwgNDcsIDI3LCAxNiwgMjM0LCA0NiwgNDcsIAotICAgIDI3LCAxNiwgMjIzLCAxOTksIDQ3LCAyNywgMTYsIDIyNSwgMjM4LCAyNTMsIDE5MSwgNDcsIDI3LCAxNiwgMjE3LCAzNiwgCi0gICAgNDcsIDI3LCAxNiwgMjU0LCAzMCwgNDcsIDI3LCAxNiwgMjIyLCA3OCwgNDcsIDI3LCAxNiwgMjE4LCAxMjQsIDI1MywgMTkxLCAKLSAgICA0NywgMjcsIDE2LCAyMTgsIDEyNCwgMjMxLCAxMDcsIDIxOSwgODQsIDQ3LCAyNywgMTYsIDIyNiwgMjMxLCAyNTMsIDE5MSwgCi0gICAgNDcsIDI3LCAxNiwgMjE3LCAxNDMsIDQ3LCAyNywgMTYsIDIzMywgNTEsIDQ3LCAyNywgMTYsIDI0NSwgMjUyLCA0NywgMjcsIAotICAgIDE2LCAyMTYsIDE4NSwgNDcsIDI3LCAxNiwgMjE3LCAxODUsIDQ3LCAyNywgMTYsIDIzMywgMjQ2LCA0NywgMjcsIDE2LCAKLSAgICAyNTMsIDIzNiwgMjQ0LCAyNDksIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyNDMsIDIwNywgMjUzLCAxOTEsIDQ3LCAyNywgMTYsIAotICAgIDIzNiwgNywgNDcsIDI3LCAxNiwgMjE2LCAxNTcsIDI1MywgMTkxLCA0NywgMjcsIDE2LCAyMzQsIDIwNSwgMjE2LCAxNTYsIAotICAgIDQ3LCAyNywgMTYsIDIyNiwgNzUsIDQ3LCAyNywgMTYsIDIyNSwgNDMsIDQ3LCAyNywgMTYsIDIzNCwgMjAsIDQ3LCAyNywgCi0gICAgMTYsIDI1MCwgMTcsIDI1MywgMTkxLCA0NywgMjcsIDE2LCAyMjQsIDM4LCA0NywgMjcsIDE2LCAyMjYsIDE0MCwgMjUzLCAKLSAgICAxOTEsIDQ3LCAyNywgMTYsIDIyNiwgMTM4LCAyNTMsIDE5MSwgNDcsIDI3LCAxNiwgMjQwLCAxMDIsIDQ3LCAyNywgMTYsIAotICAgIDIzMCwgMjMsIDQ3LCAyNywgMTYsIDIyNiwgMzIsIDQ3LCAyNywgMTYsIDIzNCwgMjEsIDI1NCwgNTgsIDQ3LCAyNywgMTYsIAotICAgIDIxNiwgMTU3LCAyNTQsIDU4LCA0NywgMjcsIDE2LCAyMTksIDYzLCA0NywgMjcsIDE2LCAyNDIsIDEwMSwgNDcsIDI3LCAxNiwgCi0gICAgMjM1LCAxNjIsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyMjcsIDcyLCAyMjksIDE3NywgNDcsIDI3LCAxNiwgMjI2LCAyMzcsIAotICAgIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyMjYsIDMxLCA0NywgMjcsIDE2LCAyMzQsIDcsIDQ3LCAyNywgMTYsIDIyNiwgMzAsIAotICAgIDQ3LCAyNywgMTYsIDIzMywgMjQ1LCA0NywgMjcsIDE2LCAyMjYsIDc2LCAyMjksIDE3NywgNDcsIDI3LCAxNiwgMjM0LCAKLSAgICAxNjgsIDIyOSwgMTc4LCAyNTQsIDcsIDQ3LCAyNywgMTYsIDIzNCwgMTY5LCAyMjksIDE3OCwgMjU0LCA3LCA0NywgMjcsIAotICAgIDE2LCAyMTIsIDIwNiwgNDcsIDI3LCAxNiwgMjUzLCAyMjgsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyNTMsIDIyOSwgMjE4LCAKLSAgICAxMjIsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyMTIsIDIwNywgNDcsIDI3LCAxNiwgMjMzLCAyNDQsIDQ3LCAyNywgMTYsIAotICAgIDI0NSwgMTMwLCA0NywgMjcsIDE2LCAyNTAsIDg2LCA0NywgMjcsIDE2LCAyMzEsIDExLCAyMzUsIDE2MSwgNDcsIDI3LCAxNiwgCi0gICAgMjE0LCAyNDgsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyMjUsIDIzOCwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDIyNSwgNDQsIAotICAgIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyMjcsIDY5LCA0NywgMjcsIDE2LCAyNTMsIDI1MSwgNDcsIDI3LCAxNiwgMjMyLCAKLSAgICAxMTgsIDQ3LCAyNywgMTYsIDIyNiwgMTM4LCAyMjksIDE3NywgNDcsIDI3LCAxNiwgMjI2LCAxNDAsIDIyOSwgMTc3LCA0NywgCi0gICAgMjcsIDE2LCAyNDUsIDI2LCAyMjYsIDEzOSwgNDcsIDI3LCAxNiwgMjMzLCAxNzUsIDQ3LCAyNywgMTYsIDI1MywgMjUyLCAKLSAgICA0NywgMjcsIDE2LCAyMTYsIDE1NywgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDI0NSwgMTMzLCA0NywgMjcsIDE2LCAyMTgsIAotICAgIDEyNCwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDIxOCwgMTE2LCA0NywgMjcsIDE2LCAyNTAsIDE3LCAyMjksIDE3NywgNDcsIAotICAgIDI3LCAxNiwgMjQ1LCA2OSwgNDcsIDI3LCAxNiwgMjIyLCA3OSwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDIxMywgMTM5LCAKLSAgICAyMzQsIDQ2LCA0NywgMjcsIDE2LCAyMTYsIDE1NCwgNDcsIDI3LCAxNiwgMjI1LCA0NSwgNDcsIDI3LCAxNiwgMjE2LCAxNTgsIAotICAgIDQ3LCAyNywgMTYsIDIxNiwgMTU1LCA0NywgMjcsIDE2LCAyMjUsIDQyLCA0NywgMjcsIDE2LCAyMTYsIDE1MywgNDcsIDI3LCAKLSAgICAxNiwgMjI1LCA0MSwgNDcsIDI3LCAxNiwgMjQyLCAxMzQsIDQ3LCAyNywgMTYsIDI1MywgMTg1LCA0NywgMjcsIDE2LCAyNDUsIAotICAgIDI2LCAyNTMsIDE4NSwgNDcsIDI3LCAxNiwgMjI2LCAyMzEsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyMTcsIDE0MiwgMjQ1LCAKLSAgICAzNCwgNDcsIDI3LCAxNiwgMjE3LCAxNDIsIDI0NCwgMjQ4LCA0NywgMjcsIDE2LCAyMTcsIDE0NCwgMjUzLCAyMzIsIDQ3LCAKLSAgICAyNywgMTYsIDIxNywgMTM3LCAyMzQsIDI1MSwgMjUzLCAyMjQsIDQ3LCAyNywgMTYsIDIzNCwgMjA0LCA0NywgMjcsIDE2LCAKLSAgICAyNDUsIDk3LCA0NywgMjcsIDE2LCAyMTMsIDIsIDIzNCwgMjAxLCA0NywgMjcsIDE2LCAyMTMsIDIsIDI1NCwgNywgNDcsIAotICAgIDI3LCAxNiwgMjE5LCA4NSwgNDcsIDI3LCAxNiwgMjM0LCA0NywgMjU0LCA3LCA0NywgMjcsIDE2LCAyNDcsIDE1NCwgMjUzLCAKLSAgICAxOTEsIDQ3LCAyNywgMTYsIDIzMywgMjQ3LCAyNTMsIDE5MSwgNDcsIDI3LCAxNiwgMjMzLCAyNDcsIDI1NCwgNTgsIDQ3LCAKLSAgICAyNywgMTYsIDIzMywgMjQ3LCAyMjksIDE3NywgNDcsIDI3LCAxNiwgMjUzLCAyMzEsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAKLSAgICAyNTMsIDIzMywgNDcsIDI3LCAxNiwgMjQ3LCAxNTMsIDQ3LCAyNywgMTYsIDIxNiwgMTY4LCA0NywgMjcsIDE2LCAyMTcsIAotICAgIDE3NywgNDcsIDI3LCAxNiwgMjM0LCAxMSwgNDcsIDI3LCAxNiwgMjMzLCA1NiwgMjQ1LCA5MiwgMjUwLCA4LCA0NywgMjcsIAotICAgIDE2LCAyMzMsIDU2LCAyNDUsIDI1MywgMjUwLCA5LCA0NywgMjcsIDE2LCAyMzMsIDU2LCAyMTYsIDE3MCwgMjUwLCA5LCA0NywgCi0gICAgMjcsIDE2LCAyMzMsIDU2LCAyMTcsIDE4NywgMjUwLCA5LCA0NywgMjcsIDE2LCAyMzMsIDU2LCAyMzYsIDIsIDI1MCwgOCwgCi0gICAgNDcsIDI3LCAxNiwgMjQyLCAxMzUsIDIyOSwgMTc4LCAyNTQsIDcsIDQ3LCAyNywgMTYsIDI0MiwgMTM1LCAyMjYsIDEyOSwgCi0gICAgMjUzLCAxODEsIDQ3LCAyNywgMTYsIDI0MiwgMTM1LCAyMjYsIDEyOSwgMjQ3LCAyMzYsIDQ3LCAyNywgMTYsIDI0NywgMTc3LCAKLSAgICA0NywgMjcsIDE2LCAyNDcsIDE3OCwgMjI2LCAxMjksIDI1MywgMTgyLCAyMzQsIDIwMSwgNDcsIDI3LCAxNiwgMjQ3LCAxNzgsIAotICAgIDIyNiwgMTI5LCAyNTMsIDE4MiwgMjU0LCA3LCA0NywgMjcsIDE2LCAyNDcsIDE3OCwgMjI2LCAxMjksIDI0NywgMjM2LCA0NywgCi0gICAgMjcsIDE2LCAyMTYsIDE3NCwgNDcsIDI3LCAxNiwgMjUzLCAxODYsIDQ3LCAyNywgMTYsIDIzNiwgOSwgNDcsIDI3LCAxNiwgCi0gICAgMjQ3LCAxOTgsIDQ3LCAyNywgMTYsIDI1NCwgMTE2LCAyMjUsIDEzNCwgMjUzLCAxODcsIDQ3LCAyNywgMTYsIDI1NCwgMTE2LCAKLSAgICAyNTMsIDE4NCwgNDcsIDI3LCAxNiwgMjU0LCAxMTYsIDI1MywgMTg3LCA0NywgMjcsIDE2LCAyNTQsIDExNiwgMjMxLCAxMDEsIAotICAgIDQ3LCAyNywgMTYsIDI1NCwgMTE2LCAyMzEsIDExMCwgNDcsIDI3LCAxNiwgMjU0LCAxMTYsIDI0MiwgMTM2LCA0NywgMjcsIAotICAgIDE2LCAyNTQsIDExNiwgMjQyLCAxMzMsIDQ3LCAyNywgMTYsIDI1NCwgMTE2LCAyMjUsIDEzNCwgMjQyLCAxMzYsIDQ3LCAyNywgCi0gICAgMTYsIDIzMSwgMjE0LCAyMjUsIDUwLCAyNDAsIDEwMCwgNDcsIDI3LCAxNiwgMjMxLCAyMTQsIDI1NCwgNjAsIDIyNSwgNTAsIAotICAgIDI0MCwgMTAwLCA0NywgMjcsIDE2LCAyMzEsIDIxNCwgMjQ3LCAyMzUsIDI0MCwgMTAwLCA0NywgMjcsIDE2LCAyMzEsIDIxNCwgCi0gICAgMjU0LCA2MCwgMjQ3LCAyMzUsIDI0MCwgMTAwLCA0NywgMjcsIDE2LCAyMzEsIDIxNCwgMjE2LCAxNjMsIDI0MCwgMTAwLCAKLSAgICA0NywgMjcsIDE2LCAyMzEsIDIxNCwgMjE2LCAxNzUsIDQ3LCAyNywgMTYsIDIzMSwgMjE0LCAyMTcsIDE4MSwgMjQwLCAxMDAsIAotICAgIDQ3LCAyNywgMTYsIDIzMSwgMjE0LCAyMTcsIDE4MSwgMjMzLCA1OSwgMjQwLCAxMDAsIDQ3LCAyNywgMTYsIDIzMSwgMjE0LCAKLSAgICAyMzMsIDU5LCAyNDAsIDEwMCwgNDcsIDI3LCAxNiwgMjMxLCAyMTQsIDIyNSwgMTcxLCAyNDAsIDEwMCwgNDcsIDI3LCAxNiwgCi0gICAgMjM1LCAxNjcsIDIxNywgMjA0LCAyNDAsIDEwMSwgNDcsIDI3LCAxNiwgMjUzLCAyMjksIDIxNywgMjA0LCAyNDAsIDEwMSwgCi0gICAgNDcsIDI3LCAxNiwgMjQ0LCAxNDAsIDIxNywgMTc4LCA0NywgMjcsIDE2LCAyNDQsIDE0MCwgMjMwLCAyMTMsIDQ3LCAyNywgCi0gICAgMTYsIDI0NCwgMTQwLCAyNDcsIDE4MiwgNDcsIDI3LCAxNiwgMjMxLCAyMTQsIDIxNCwgMjQyLCAyNDAsIDEwMCwgNDcsIDI3LCAKLSAgICAxNiwgMjMxLCAyMTQsIDIyNSwgNDksIDI0MCwgMTAwLCA0NywgMjcsIDE2LCAyMzEsIDIxNCwgMjI1LCAxNzEsIDIxNywgCi0gICAgMTgxLCAyNDAsIDEwMCwgNDcsIDI3LCAxNiwgMjQyLCAxMzEsIDIzMCwgOTgsIDI1MywgMjMyLCA0NywgMjcsIDE2LCAyNDIsIAotICAgIDEzMSwgMjMwLCA5OCwgMjQ3LCAxNTIsIDQ3LCAyNywgMTYsIDI0NSwgMTA2LCAyMzQsIDI1MSwgMjQzLCAyMDcsIDIxNCwgCi0gICAgMTA1LCA0NywgMjcsIDE2LCAyMzYsIDgsIDQ3LCAyNywgMTYsIDIzNiwgNiwgNDcsIDI3LCAxNiwgMjQzLCAyMDcsIDI1MywgCi0gICAgMTkyLCAyNDcsIDIzNCwgMjQwLCA5OSwgNDcsIDI3LCAxNiwgMjQzLCAyMDcsIDI0NywgMTk2LCAxOTMsIDQ3LCAyNywgMTYsIAotICAgIDI0MywgMjA3LCAyNDcsIDE5NiwgMjMwLCAyMywgNDcsIDI3LCAxNiwgMjQzLCAyMDcsIDIzMCwgMTgsIDI0MCwgMTAwLCA0NywgCi0gICAgMjcsIDE2LCAyNDMsIDIwNywgMjQ3LCAxOTYsIDI0NywgMjExLCA0NywgMjcsIDE2LCAyNDMsIDIwNywgMjIwLCAzMCwgMjQ3LCAKLSAgICAxOTUsIDI0NywgMjExLCA0NywgMjcsIDE2LCAyNDMsIDIwNywgMjQ3LCAxOTYsIDIzNCwgMTg4LCA0NywgMjcsIDE2LCAyNDMsIAotICAgIDIwNywgMjQ3LCAxOTYsIDIxMiwgMTYsIDQ3LCAyNywgMTYsIDI0MywgMjA3LCAyNDcsIDE5NiwgMjI5LCA2NSwgMjM0LCAKLSAgICAyMDEsIDQ3LCAyNywgMTYsIDI0MywgMjA3LCAyNDcsIDE5NiwgMjI5LCA2NSwgMjU0LCA3LCA0NywgMjcsIDE2LCAyNDMsIAotICAgIDIwNywgMjMxLCAyNTQsIDI1MCwgMTAsIDI0NywgMTgyLCA0NywgMjcsIDE2LCAyNDMsIDIwNywgMjMxLCAyNTQsIDI1MCwgCi0gICAgMTAsIDIzMCwgMjEzLCA0NywgMjcsIDE2LCAyNDQsIDkxLCAyMjAsIDMwLCAyNTAsIDEwLCAyMTQsIDI0MSwgNDcsIDI3LCAKLSAgICAxNiwgMjQzLCAyMDcsIDIyMCwgMzAsIDI1MCwgMTAsIDIxOCwgMTI1LCA0NywgMjcsIDE2LCAyNDMsIDIwNywgMjI5LCAxNzksIAotICAgIDQ3LCAyNywgMTYsIDI1MCwgMTEsIDIxMSwgMjQ4LCA0NywgMjcsIDE2LCAyNTAsIDExLCAyMzQsIDQ1LCA0NywgMjcsIDE2LCAKLSAgICAyNTAsIDExLCAyMTksIDE5NywgNDcsIDI3LCAxNiwgMjQzLCAyMDcsIDI0MCwgMTQ2LCAyMTMsIDEsIDIxNywgMTgyLCA0NywgCi0gICAgMjcsIDE2LCAyNDMsIDIwNywgMjQ1LCAxMDcsIDI1MywgMjUzLCA0NywgMjcsIDE2LCAyMTMsIDEsIDIxNiwgMTY0LCA0NywgCi0gICAgMjcsIDE2LCAyNDcsIDE5MCwgMjE2LCAxNjQsIDQ3LCAyNywgMTYsIDI0NywgMTkwLCAyMTcsIDE4MiwgNDcsIDI3LCAxNiwgCi0gICAgMjQ3LCAxOTAsIDI1MywgMjM0LCAyNDUsIDI1MywgMjQ3LCA5MywgNDcsIDI3LCAxNiwgMjQ3LCAxOTAsIDIzMCwgMjExLCAKLSAgICAyMTcsIDE4NiwgMjQ3LCA5MywgNDcsIDI3LCAxNiwgMjQ3LCAxOTAsIDI0NywgMTc0LCAyNDUsIDMsIDI0NywgOTMsIDQ3LCAKLSAgICAyNywgMTYsIDI0NywgMTkwLCAyMTYsIDE3MiwgMjI3LCA3NywgMjQ3LCA5MywgNDcsIDI3LCAxNiwgMjEzLCAxLCAyNTMsIAotICAgIDIzNCwgMjQ1LCAyNTMsIDI0NywgOTMsIDQ3LCAyNywgMTYsIDIxMywgMSwgMjMwLCAyMTEsIDIxNywgMTg2LCAyNDcsIDkzLCAKLSAgICA0NywgMjcsIDE2LCAyMTMsIDEsIDI0NywgMTc0LCAyNDUsIDMsIDI0NywgOTMsIDQ3LCAyNywgMTYsIDIxMywgMSwgMjE2LCAKLSAgICAxNzIsIDIyNywgNzcsIDI0NywgOTMsIDQ3LCAyNywgMTYsIDI0MywgMjUsIDI0NywgMTg5LCA0NywgMjcsIDE2LCAyNDMsIAotICAgIDI1LCAyMTMsIDAsIDQ3LCAyNywgMTYsIDI0NywgMTk3LCAyNTMsIDIzNCwgMjMxLCAxMiwgNDcsIDI3LCAxNiwgMjQ3LCAKLSAgICAxOTcsIDI1MywgMjM0LCAyMzEsIDEzNywgNDcsIDI3LCAxNiwgMjQ3LCAxOTcsIDI0NywgMTUzLCA0NywgMjcsIDE2LCAyNDcsIAotICAgIDE5NywgMjE3LCAxMzUsIDQ3LCAyNywgMTYsIDIyMCwgODksIDIxNywgMTM1LCA0NywgMjcsIDE2LCAyMjAsIDg5LCAyMTcsIAotICAgIDEzNiwgMjQ3LCAxMzgsIDQ3LCAyNywgMTYsIDIyMCwgODksIDIxNywgMTM2LCAyMTYsIDE2NSwgNDcsIDI3LCAxNiwgMjIwLCAKLSAgICA4OSwgMjE3LCAxMzYsIDIxNywgMTc1LCA0NywgMjcsIDE2LCAyMjAsIDg5LCAyNTMsIDE1OSwgNDcsIDI3LCAxNiwgMjIwLCAKLSAgICA4OSwgMjUzLCAxNjAsIDI0NywgMTM4LCA0NywgMjcsIDE2LCAyMjAsIDg5LCAyNTMsIDE2MCwgMjE2LCAxNjUsIDQ3LCAyNywgCi0gICAgMTYsIDIyMCwgODksIDI1MywgMTYwLCAyMTcsIDE3NSwgNDcsIDI3LCAxNiwgMjQ3LCAxNzUsIDI0MywgNiwgNDcsIDI3LCAKLSAgICAxNiwgMjQ3LCAxODEsIDIyNywgMiwgNDcsIDI3LCAxNiwgMjE5LCA3NywgNDcsIDI3LCAxNiwgMjUzLCAxNzgsIDE5MywgNDcsIAotICAgIDI3LCAxNiwgMjUzLCAxNzgsIDIxNCwgMTA1LCA0NywgMjcsIDE2LCAyNTMsIDE3OCwgMjQzLCAxMTAsIDQ3LCAyNywgMTYsIAotICAgIDI1MywgMTc4LCAyNDcsIDIxMSwgNDcsIDI3LCAxNiwgMjUzLCAxNzgsIDIzNCwgMTg4LCA0NywgMjcsIDE2LCAyNTMsIDE3OCwgCi0gICAgMjEyLCAxNiwgNDcsIDI3LCAxNiwgMjUzLCAxNzgsIDIyOSwgNjQsIDQ3LCAyNywgMTYsIDIzNCwgMTY4LCAyMjksIDE3OCwgCi0gICAgMjMxLCAxMDksIDQ3LCAyNywgMTYsIDIzNCwgMTY5LCAyMjksIDE3OCwgMjMxLCAxMDksIDQ3LCAyNywgMTYsIDIzNCwgMTY4LCAKLSAgICAyMjksIDE3OCwgMjM0LCAyMDEsIDQ3LCAyNywgMTYsIDIzNCwgMTY5LCAyMjksIDE3OCwgMjM0LCAyMDEsIDQ3LCAyNywgMTYsIAotICAgIDIzNCwgNDcsIDIzNCwgMjAxLCA0NywgMjcsIDE2LCAyNDIsIDEzNSwgMjI5LCAxNzgsIDIzNCwgMjAxLCAyNywgMTYsIDIyMCwgCi0gICAgODEsIDI1MiwgNTUsIDI3LCAxNiwgNTEsIDI1MiwgNTUsIDI3LCAxNiwgNDAsIDI1MiwgNTUsIDI3LCAxNiwgMjIzLCAyMDMsIAotICAgIDQwLCAyNTIsIDU1LCAyNywgMTYsIDI0OCwgMTAwLCAyNTIsIDU1LCAyNywgMTYsIDIyMCwgMTc1LCAyNTIsIDU1LCAyNywgCi0gICAgMTYsIDQyLCAyMjMsIDIyOCwgNTIsIDI3LCAxNiwgNDYsIDIyMywgMjI4LCA1MiwgMjcsIDE2LCAyMjMsIDIyOCwgMjQ3LCAKLSAgICA3MiwgMjcsIDE2LCAyNDgsIDE0MSwgMjIyLCA4MiwgMjcsIDE2LCAyNDgsIDE2NSwgMjUwLCAxODEsIDI3LCAxNiwgMjIyLCAKLSAgICA4MiwgMjcsIDE2LCAyNDksIDE3MSwgMjcsIDE2LCAyMjMsIDIyNiwgMjQ0LCA4MCwgMjcsIDE2LCAyMjMsIDIyNiwgMjQ0LCAKLSAgICA3OSwgMjcsIDE2LCAyMjMsIDIyNiwgMjQ0LCA3OCwgMjcsIDE2LCAyNDQsIDEwMCwgMjcsIDE2LCAyNDQsIDEwMSwgNTUsIAotICAgIDI3LCAxNiwgMjUxLCA3NiwgNzcsIDI3LCAxNiwgMjUwLCAyMTAsIDI3LCAxNiwgMjUxLCA4NiwgMjcsIDE2LCAxMjUsIDI3LCAKLSAgICAxNiwgMjI3LCA1OSwgMjE5LCAxMDIsIDI3LCAxNiwgMjE2LCAyMywgMjE5LCAxMDIsIDI3LCAxNiwgMjE3LCA5NiwgMjE5LCAKLSAgICAxMDIsIDI3LCAxNiwgMjQzLCAyMzYsIDIxOSwgMTAyLCAyNywgMTYsIDI0NCwgNDksIDIxOSwgMTAyLCAyNywgMTYsIDIyMCwgCi0gICAgNTIsIDIxOSwgMTAyLCAyNywgMTYsIDIyMCwgNTAsIDI0MywgMjIwLCAyNywgMTYsIDI0MywgMjM0LCAyNDMsIDIyMCwgMjcsIAotICAgIDE2LCAyNDMsIDE3OCwgMjQ5LCAyMDcsIDI3LCAxNiwgMjQzLCAxNzgsIDI0OSwgMjA4LCAyMjcsIDQsIDI1NCwgNTEsIDI3LCAKLSAgICAxNiwgMjQzLCAxNzgsIDI0OSwgMjA4LCAyMjcsIDQsIDI1MiwgNDIsIDI3LCAxNiwgMjUwLCAyNTMsIDI0OSwgMjA3LCAyNywgCi0gICAgMTYsIDI0NCwgMjMxLCAyNDksIDIwNywgMjcsIDE2LCAyNDQsIDIzMSwgMjQ5LCAyMDgsIDIyNywgNCwgMjU0LCA1MSwgMjcsIAotICAgIDE2LCAyNDQsIDIzMSwgMjQ5LCAyMDgsIDIyNywgNCwgMjUyLCA0MiwgMjcsIDE2LCAyNDYsIDM4LCAyNDksIDIwNiwgMjcsIAotICAgIDE2LCAyNDYsIDM4LCAyNDksIDIwNSwgMjcsIDE2LCAyMzAsIDE1NSwgMjMxLCAxNTUsIDIyMywgMjEzLCAyNywgMTYsIDUxLCAKLSAgICAyMjAsIDI1NCwgMjcsIDE2LCA1MSwgMjQ0LCAzNCwgMjcsIDE2LCAyNDQsIDM1LCAyMTUsIDEzNCwgMjcsIDE2LCAyNDQsIAotICAgIDM1LCAyNDYsIDYwLCAyNywgMTYsIDIzMCwgOSwgMjE1LCAxMzQsIDI3LCAxNiwgMjMwLCA5LCAyNDYsIDYwLCAyNywgMTYsIAotICAgIDIyMCwgMjU1LCAyMTUsIDEzNCwgMjcsIDE2LCAyMjAsIDI1NSwgMjQ2LCA2MCwgMjcsIDE2LCAyMjQsIDE2NywgMTYwLCAKLSAgICAyMjAsIDI1NCwgMjcsIDE2LCAyMjQsIDE2NywgMTYwLCAyNDQsIDM0LCAyNywgMTYsIDI0OSwgMTU1LCAyMTcsIDQwLCAyNywgCi0gICAgMTYsIDI0OSwgMjcsIDIxNywgNDAsIDI3LCAxNiwgMjI3LCA0LCAyNTQsIDUxLCAyNywgMTYsIDIyNywgNCwgMjUyLCA0MiwgCi0gICAgMjcsIDE2LCAyMjQsIDE0OSwgMjU0LCA1MSwgMjcsIDE2LCAyMjQsIDE0OSwgMjUyLCA0MiwgMjcsIDE2LCAyMzAsIDE1OCwgCi0gICAgMjIzLCAyMTMsIDI3LCAxNiwgMjEzLCAyMzYsIDIyMywgMjEzLCAyNywgMTYsIDE1MSwgMjIzLCAyMTMsIDI3LCAxNiwgMjI0LCAKLSAgICAxNjcsIDIyMywgMjEzLCAyNywgMTYsIDI0NSwgMTQ2LCAyMjMsIDIxMywgMjcsIDE2LCAyMjAsIDQ2LCAyMjMsIDIxMywgMjcsIAotICAgIDE2LCAyMTcsIDExMywgMjIzLCAyMTMsIDI3LCAxNiwgMjIwLCAzOCwgMjIzLCAyMTMsIDI3LCAxNiwgMTIyLCAyNDAsIDIwMSwgCi0gICAgMjE2LCAzNiwgMjIzLCAyMTMsIDI3LCAxNiwgMjEzLCAxNjcsIDIyOCwgMTU0LCAyNywgMTYsIDk0LCAyMjgsIDE1NCwgMjcsIAotICAgIDE2LCAyNDksIDIyOSwgMjEzLCAxNjcsIDIyOCwgMTU0LCAyNywgMTYsIDQxLCAyMjgsIDE1NSwgMjEzLCAyMzgsIDI3LCAxNiwgCi0gICAgNDEsIDIyOCwgMTU1LCAyNTEsIDE0NCwgMjcsIDE2LCAyMTYsIDE4NCwgMjI4LCAxNTUsIDExNCwgMjEzLCAyMzgsIDI3LCAKLSAgICAxNiwgMjE2LCAxODQsIDIyOCwgMTU1LCAxMTQsIDI1MSwgMTQ0LCAyNywgMTYsIDIxNiwgMTg0LCAyMjgsIDE1NSwgNDIsIAotICAgIDIxMywgMjM4LCAyNywgMTYsIDIxNiwgMTg0LCAyMjgsIDE1NSwgNDIsIDI1MSwgMTQ0LCAyNywgMTYsIDIxNiwgMTg0LCAKLSAgICAyMjgsIDE1NSwgNDYsIDIxMywgMjM4LCAyNywgMTYsIDIxNiwgMTg0LCAyMjgsIDE1NSwgNDYsIDI1MSwgMTQ0LCAyNywgMTYsIAotICAgIDIxNiwgMTg0LCAyMjgsIDE1NSwgMTE5LCAyMTMsIDIzOCwgMjcsIDE2LCAyMTYsIDE4NCwgMjI4LCAxNTUsIDExOSwgMjUxLCAKLSAgICAxNDQsIDI3LCAxNiwgMjE2LCAxODQsIDIyOCwgMTU1LCAxMTQsIDQ2LCAyMTMsIDIzOCwgMjcsIDE2LCAyMTYsIDE4NCwgCi0gICAgMjI4LCAxNTUsIDExNCwgNDYsIDI1MSwgMTQ0LCAyNywgMTYsIDIzMCwgMTk5LCAyMjgsIDE1NSwgMjEzLCAyMzgsIDI3LCAKLSAgICAxNiwgMjMwLCAxOTksIDIyOCwgMTU1LCAyNTEsIDE0NCwgMjcsIDE2LCAyMTYsIDE4MSwgMjI4LCAxNTUsIDExOSwgMjEzLCAKLSAgICAyMzgsIDI3LCAxNiwgMjE2LCAxODEsIDIyOCwgMTU1LCAxMTksIDI1MSwgMTQ0LCAyNywgMTYsIDIyNiwgMTMyLCAyMjgsIAotICAgIDE1NCwgMjcsIDE2LCAyMTQsIDExMywgMjI4LCAxNTQsIDI3LCAxNiwgMjI4LCAxNTUsIDI1MSwgMTQ0LCAyNywgMTYsIDIyOCwgCi0gICAgNTksIDIyOCwgMTU0LCAyNywgMTYsIDI0OSwgMTc4LCAyMjgsIDE1NSwgMjEzLCAyMzgsIDI3LCAxNiwgMjQ5LCAxNzgsIAotICAgIDIyOCwgMTU1LCAyNTEsIDE0NCwgMjcsIDE2LCAyNTEsIDc0LCAyNywgMTYsIDIxMywgMjM2LCAyMjgsIDE1OCwgMjcsIDE2LCAKLSAgICAxNTEsIDIyOCwgMTU4LCAyNywgMTYsIDIyNCwgMTY3LCAyMjgsIDE1OCwgMjcsIDE2LCAyNDUsIDE0NiwgMjI4LCAxNTgsIAotICAgIDI3LCAxNiwgMjIwLCA0NiwgMjI4LCAxNTgsIDI3LCAxNiwgMjE3LCAxMTMsIDIyOCwgMTU4LCAyNywgMTYsIDIyMCwgMzgsIAotICAgIDIyOCwgMTU4LCAyNywgMTYsIDEyMiwgMjQwLCAyMDEsIDIxNiwgMzYsIDIyOCwgMTU4LCAyNywgMTYsIDM3LCAyMTksIDc5LCAKLSAgICAyNywgMTYsIDM3LCAyMTksIDE3MiwgMjE5LCA3OSwgMjcsIDE2LCAzNywgMjE2LCAxOTIsIDI3LCAxNiwgMzcsIDIxNiwgCi0gICAgMTkxLCAyNywgMTYsIDM3LCAyMTYsIDE5MCwgMjcsIDE2LCAyNDQsIDcwLCAyMTYsIDE5MiwgMjcsIDE2LCAyNDQsIDcwLCAKLSAgICAyMTYsIDE5MSwgMjcsIDE2LCAyNDQsIDcwLCAyMTYsIDE5MCwgMjcsIDE2LCAzNywgMjUzLCAxMDUsIDI0NywgNzQsIDI3LCAKLSAgICAxNiwgMzcsIDI0NCwgNDEsIDI3LCAxNiwgMzcsIDI0NCwgNDAsIDI3LCAxNiwgMzcsIDI0NCwgMzksIDI3LCAxNiwgMzcsIAotICAgIDI0NCwgMzgsIDI3LCAxNiwgMzcsIDI0NCwgMzcsIDI3LCAxNiwgMjUxLCAyMzQsIDI1MSwgMjUwLCAyNywgMTYsIDI0NSwgCi0gICAgMTAxLCAyNTEsIDI1MCwgMjcsIDE2LCAyNTEsIDIzNCwgMjE3LCA2NSwgMjcsIDE2LCAyNDUsIDEwMSwgMjE3LCA2NSwgMjcsIAotICAgIDE2LCAyNTEsIDIzNCwgMjIwLCA4LCAyNywgMTYsIDI0NSwgMTAxLCAyMjAsIDgsIDI3LCAxNiwgMjUxLCAyMzQsIDIyNSwgCi0gICAgMjQ3LCAyNywgMTYsIDI0NSwgMTAxLCAyMjUsIDI0NywgMjcsIDE2LCAzNywgMjU0LCAxNzQsIDI3LCAxNiwgMzcsIDIxOSwgCi0gICAgMTA0LCAyNywgMTYsIDM3LCAyMTcsIDE5MSwgMjcsIDE2LCAzNywgMjE5LCAxMDUsIDI3LCAxNiwgMzcsIDIzMSwgMjI1LCAKLSAgICAyNywgMTYsIDM3LCAyMzEsIDIyNCwgMjcsIDE2LCAzNywgMjU0LCAxNzMsIDI3LCAxNiwgMzcsIDIzMiwgMTY3LCAyNywgMTYsIAotICAgIDI1MywgMTY5LCAyMTUsIDEzNCwgMjcsIDE2LCAyNTMsIDE2OSwgMjQ2LCA2MCwgMjcsIDE2LCAzNywgMjQ3LCA4OSwgMjcsIAotICAgIDE2LCAzNywgMjIzLCAxMjgsIDI3LCAxNiwgMzcsIDI0NCwgMjcsIDI3LCAxNiwgMzcsIDIyMCwgNCwgMjcsIDE2LCAzNywgCi0gICAgMjUxLCAyMTUsIDI3LCAxNiwgMzcsIDUxLCAyMTYsIDIzMiwgMjcsIDE2LCAzNywgMjE2LCAxNjksIDIxNiwgMjMyLCAyNywgCi0gICAgMTYsIDIyMywgMTMyLCAyNywgMTYsIDIxOSwgMjAsIDI3LCAxNiwgMjEyLCAxNTIsIDI3LCAxNiwgMjI1LCAyMzksIDI3LCAKLSAgICAxNiwgMjMxLCA5MiwgMjcsIDE2LCAyNDMsIDI0MiwgMjcsIDE2LCAyNDksIDc4LCAyNywgMTYsIDI0OCwgMjksIDI3LCAxNiwgCi0gICAgMjQyLCAxMjYsIDIyOCwgMTU5LCAyMjAsIDIzLCAyNywgMTYsIDI0MiwgMTI2LCAyMjgsIDE1OSwgMjI4LCAxODYsIDIyMCwgCi0gICAgMjMsIDI3LCAxNiwgMjE2LCAyMTMsIDI3LCAxNiwgMjE2LCA1OSwgMjcsIDE2LCAyMzUsIDE5MSwgMjE2LCA1OSwgMjcsIDE2LCAKLSAgICAyMTYsIDYwLCAyMjAsIDIzLCAyNywgMTYsIDIxNiwgNjAsIDIxNSwgMTM0LCAyNywgMTYsIDIyNywgMTUsIDIxOSwgNDQsIAotICAgIDI3LCAxNiwgMjI3LCAxNSwgMjE5LCA0MSwgMjcsIDE2LCAyMjcsIDE1LCAyMTksIDQwLCAyNywgMTYsIDIyNywgMTUsIDIxOSwgCi0gICAgMzksIDI3LCAxNiwgMjI3LCAxNSwgMjE5LCAzOCwgMjcsIDE2LCAyMjcsIDE1LCAyMTksIDM3LCAyNywgMTYsIDIyNywgMTUsIAotICAgIDIxOSwgMzYsIDI3LCAxNiwgMjI3LCAxNSwgMjE5LCAzNSwgMjcsIDE2LCAyMjcsIDE1LCAyMTksIDM0LCAyNywgMTYsIDIyNywgCi0gICAgMTUsIDIxOSwgNDMsIDI3LCAxNiwgMjI3LCAxNSwgMjE5LCA0MiwgMjcsIDE2LCAyNDEsIDIyOSwgMjcsIDE2LCAyMjksIAotICAgIDE4NiwgMjcsIDE2LCAyNDUsIDEwMSwgNjUsIDIxOSwgNzMsIDI3LCAxNiwgMjQ4LCAyMiwgMjIwLCAyMywgMjcsIDE2LCAzNywgCi0gICAgMTE5LCAyNTEsIDk1LCAyNywgMTYsIDM3LCAxMTQsIDI1MSwgOTUsIDI3LCAxNiwgMzcsIDI0MSwgMjM5LCAyNywgMTYsIDM3LCAKLSAgICAyMTksIDI1MSwgMjI1LCAxNzUsIDI3LCAxNiwgMjI2LCA5MSwgNzcsIDI3LCAxNiwgMjI2LCA5MSwgMTE0LCA3NywgMjcsIAotICAgIDE2LCAxNTEsIDIyNiwgOTEsIDc3LCAyNywgMTYsIDI0MiwgMTU4LCAyMTUsIDEzNCwgMjcsIDE2LCAyNDIsIDE1OCwgMjQ2LCAKLSAgICA2MCwgMjcsIDE2LCAyLCAyNDQsIDY5LCAyNywgMTYsIDI0OCwgMTI1LCAyNywgMTYsIDI0OCwgMTI2LCAyNTQsIDYzLCAyNywgCi0gICAgMTYsIDIzMSwgMTk3LCAyNywgMTYsIDIzMiwgMTgyLCAyNywgMTYsIDI1MSwgNzEsIDI3LCAxNiwgMjIxLCA3NCwgMjEzLCAKLSAgICAyMzgsIDI3LCAxNiwgMjIxLCA3NCwgMjUxLCAxNDQsIDI3LCAxNiwgMjMwLCAyNTMsIDI3LCAxNiwgMjMwLCAyNTQsIDI1MSwgCi0gICAgMTQ0LCAyNywgMTYsIDIyMSwgNjgsIDIxMywgMjM4LCAyNywgMTYsIDIyMSwgNjgsIDI1MSwgMTQ0LCAyNywgMTYsIDI0MywgCi0gICAgMTkyLCAyMTMsIDIzOCwgMjcsIDE2LCAyNDMsIDE5MiwgMjUxLCAxNDQsIDI3LCAxNiwgMjMyLCAxODMsIDIyNiwgNTUsIAotICAgIDIyMywgMjEzLCAyNywgMTYsIDIzMiwgMTgzLCAyMzYsIDAsIDIyMywgMjEzLCAyNywgMTYsIDI1MSwgNzIsIDIyMywgMjEzLCAKLSAgICAyNywgMTYsIDIyMSwgNzQsIDIyMywgMjEzLCAyNywgMTYsIDIzMCwgMjU0LCAyMjMsIDIxMywgMjcsIDE2LCAyMjEsIDY4LCAKLSAgICAyMjMsIDIxMywgMjcsIDE2LCAyMTcsIDIwMiwgMjI2LCA1MywgMjQ5LCA0OCwgMjI1LCA1OCwgMjI2LCA1NCwgMjcsIDE2LCAKLSAgICAyMTcsIDIwMiwgMjI2LCA1MywgMjQ5LCA0OCwgMjI1LCA1OCwgMjM1LCAyNTUsIDI3LCAxNiwgMjE3LCAyMDIsIDIyNiwgNTMsIAotICAgIDI0OSwgNDgsIDIyNSwgNTgsIDIyNiwgNTUsIDI0NywgMTYzLCAyNywgMTYsIDIxNywgMjAyLCAyMzUsIDI1NCwgMjQ5LCA0OCwgCi0gICAgMjI1LCA1OCwgMjI2LCA1NCwgMjcsIDE2LCAyMTcsIDIwMiwgMjM1LCAyNTQsIDI0OSwgNDgsIDIyNSwgNTgsIDIzNSwgMjU1LCAKLSAgICAyNywgMTYsIDIxNywgMjAyLCAyMzUsIDI1NCwgMjQ5LCA0OCwgMjI1LCA1OCwgMjM2LCAwLCAyNDcsIDE2MywgMjcsIDE2LCAKLSAgICAyMTcsIDIwMiwgMjM1LCAyNTQsIDI0OSwgNDgsIDIyNSwgNTgsIDIzNiwgMCwgMjQ3LCAxNjIsIDI3LCAxNiwgMjE3LCAyMDIsIAotICAgIDIzNSwgMjU0LCAyNDksIDQ4LCAyMjUsIDU4LCAyMzYsIDAsIDI0NywgMTYxLCAyNywgMTYsIDI0OSwgNzMsIDI3LCAxNiwgCi0gICAgMjQyLCAxMDMsIDI1MCwgMjUzLCAyNDksIDIwNywgMjcsIDE2LCAyNDIsIDEwMywgMjQ0LCAyMzEsIDI0OSwgMjA3LCAyNywgCi0gICAgMTYsIDQxLCAyNTMsIDc0LCAyNywgMTYsIDIxNCwgMTMyLCAyNywgMTYsIDIyNSwgMTQ4LCAyNywgMTYsIDI0OSwgMTk4LCAKLSAgICAyNywgMTYsIDIyMiwgMTIxLCAyNywgMTYsIDI0OSwgMjAyLCAyNywgMTYsIDIxNiwgMjIwLCAyNywgMTYsIDIyNSwgMTIyLCAKLSAgICAyNywgMTYsIDIyNSwgMTIzLCAyNDQsIDI5LCAyNywgMTYsIDIyMiwgMTIyLCAyNDQsIDI5LCAyNywgMTYsIDIxNiwgMjIxLCAKLSAgICAyMjMsIDIxMCwgMjcsIDE2LCAyMjYsIDM5LCAyMTksIDExLCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxNzQsIDI1LCAyMTQsIAotICAgIDExOCwgMTc0LCAyMTgsIDE2MywgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTUzLCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAKLSAgICAxNDYsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDEzOCwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTMyLCAyNSwgMjE0LCAKLSAgICAxMTgsIDE3NCwgMjE4LCAxMzEsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDEzMCwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgCi0gICAgMTI5LCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxNzMsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDE3MiwgMjUsIDIxNCwgCi0gICAgMTE4LCAxNzQsIDIxOCwgMTcxLCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxNzAsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIAotICAgIDE2OSwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTY4LCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxNjcsIDI1LCAyMTQsIAotICAgIDExOCwgMTc0LCAyMTgsIDE2NiwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTY1LCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAKLSAgICAxNjQsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDE2MiwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTYxLCAyNSwgMjE0LCAKLSAgICAxMTgsIDE3NCwgMjE4LCAxNjAsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDE1OSwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgCi0gICAgMTU4LCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxMzcsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDEzNiwgMjUsIDIxNCwgCi0gICAgMTE4LCAxNzQsIDIxOCwgMTM1LCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxMzQsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIAotICAgIDEzMywgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTc0LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNjMsIDI1LCAyMzUsIAotICAgIDIxMSwgMTc0LCAyMTgsIDE0NiwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTM4LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAKLSAgICAxMzEsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDEzMCwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTcyLCAyNSwgMjM1LCAKLSAgICAyMTEsIDE3NCwgMjE4LCAxNzEsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE3MCwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgCi0gICAgMTY5LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNjYsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE2NSwgMjUsIDIzNSwgCi0gICAgMjExLCAxNzQsIDIxOCwgMTY0LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNTksIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIAotICAgIDE1OCwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTU3LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNTYsIDI1LCAyMzUsIAotICAgIDIxMSwgMTc0LCAyMTgsIDE1NSwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTU0LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAKLSAgICAxNTIsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE1MSwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTUwLCAyNSwgMjM1LCAKLSAgICAyMTEsIDE3NCwgMjE4LCAxNDksIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE0OCwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgCi0gICAgMTQ3LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNDUsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE0NCwgMjUsIDIzNSwgCi0gICAgMjExLCAxNzQsIDIxOCwgMTQzLCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNDIsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIAotICAgIDE0MSwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTQwLCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxMzksIDI1LCAyMzUsIAotICAgIDIxMSwgMTc0LCAyMTgsIDEzNywgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTM2LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAKLSAgICAxMzUsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDEzNCwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTMzLCAzNywgMjUsIAotICAgIDI3LCAyMTYsIDE2NiwgMzcsIDI1LCAyNywgMjE3LCAxNzYsIDM3LCAyNSwgMjcsIDIyNiwgNjMsIDI1LCAyNywgMjMzLCA1NSwgCi0gICAgMjMwLCAyMTIsIDMxLCAyNDUsIDE3OSwgMjQ3LCAxNzYsIDMxLCAyNDEsIDIwNiwgMjQ1LCAxNzksIDI0NywgMTc2LCAzMSwgCi0gICAgMjQwLCAyMDQsIDI0NSwgMTc5LCAyNDcsIDE3NiwgMzEsIDI0NSwgMTc4LCAyNDEsIDIwNywgMjQ3LCAxNzYsIDMxLCAyNDUsIAotICAgIDE3OCwgMjQwLCAyMDMsIDI0NywgMTc2LCAzMSwgMjQ1LCAxNzksIDE3MCwgMzEsIDI1MCwgMTA4LCAxNzAsIDMxLCAyNDMsIAotICAgIDIwMCwgMjQ5LCAyMjgsIDE3MCwgMzEsIDIzMCwgMjQ2LCAxNzAsIDMxLCAyNTIsIDUwLCAxNzAsIDMxLCAyMzQsIDE4NSwgCi0gICAgMjIwLCA3LCAxNzAsIDMxLCAyNDksIDExOCwgMTcwLCAzMSwgMjUzLCAxNDgsIDE3MCwgMzEsIDIyNywgMjksIDE3MCwgMzEsIAotICAgIDI1MSwgODAsIDIyNiwgMjU0LCAxNzAsIDMxLCAyNDgsIDI0LCAxNjcsIDI0NywgMTMxLCAxNzAsIDMxLCAyNDcsIDEyOCwgCi0gICAgMTcwLCAzMSwgMjEyLCAyMTMsIDE3MCwgMzEsIDIzNSwgMjQzLCAxNzAsIDMxLCAyMjYsIDcyLCAxNzAsIDMxLCAyMjQsIDIwLCAKLSAgICAxNzAsIDMxLCAyNDksIDEyOCwgMTcwLCAzMSwgMjQxLCA0NiwgMjUyLCAxMDEsIDE3MCwgMzEsIDIxNCwgNDMsIDE3MCwgMzEsIAotICAgIDI0NCwgOCwgMTcwLCAzMSwgMjU0LCAxNTEsIDE3MCwgMzEsIDIyMywgMjM5LCAxNzAsIDMxLCAyMjMsIDIxNywgMTcwLCAzMSwgCi0gICAgMjQ1LCAxNzcsIDE3MCwgMzEsIDIzNSwgNTYsIDE3MCwgMzEsIDI0OSwgMTIzLCAxNzAsIDMxLCAyNDUsIDEwMCwgMTcwLCAKLSAgICAzMSwgMjQ2LCA3LCAxNzAsIDMxLCAyNTAsIDgxLCAxNzAsIDMxLCAyNDgsIDMzLCAxNzAsIDMxLCAyMiwgMjIzLCAyMTYsIAotICAgIDE3MCwgMzEsIDIyNiwgMjA1LCAxNzAsIDMxLCAyMzMsIDU4LCAxNzAsIDMxLCAyNDksIDE5MSwgMTcwLCAzMSwgMjM0LCA4NiwgCi0gICAgMTcwLCAzMSwgMjQzLCA2MiwgMTcwLCAzMSwgMjE5LCA1MiwgMTcwLCAzMSwgMjI1LCAxNiwgMTcwLCAzMSwgMjQzLCAxOTksIAotICAgIDE3MCwgMzEsIDIyMywgMjE4LCAxNzAsIDMxLCAyMzMsIDk1LCAxNjcsIDIzMCwgMjI3LCAxNzAsIDMxLCAyMjMsIDIxNCwgCi0gICAgMTcwLCAzMSwgMjQyLCAxNDQsIDIxMSwgMjExLCAyMzEsIDE0MSwgMTcwLCAzMSwgMjQ1LCAxMDIsIDE3MCwgMzEsIDIxOSwgCi0gICAgNjQsIDE3MCwgMzEsIDI0MiwgMTA1LCAxNzAsIDMxLCAyNDUsIDk0LCAxNzAsIDMxLCAyMjYsIDEwOCwgMTcwLCAzMSwgMjIzLCAKLSAgICAxMjIsIDE3MCwgMzEsIDI0NCwgMjgsIDE3MCwgMzEsIDIxNCwgMjQwLCAxNjcsIDIxNCwgMjgsIDE3MCwgMzEsIDI0OSwgCi0gICAgMTMyLCAxNzAsIDMxLCAyMzEsIDE1NCwgMTcwLCAzMSwgMjQ1LCAyNywgMTcwLCAzMSwgMjE1LCAxNDMsIDE3MCwgMzEsIAotICAgIDI0NywgMTY0LCAxNzAsIDMxLCAyNDksIDE5MywgMjMwLCAxODAsIDE3MCwgMzEsIDI0MiwgODcsIDE3MCwgMzEsIDI0MywgCi0gICAgNjMsIDIzNSwgMjUxLCAxNzAsIDMxLCAyMzEsIDIwNCwgMTcwLCAzMSwgMjU0LCAxNzAsIDE3MCwgMzEsIDI0NSwgMTE1LCAKLSAgICAxNzAsIDMxLCAyNDYsIDYzLCAxNzAsIDMxLCAyMTQsIDI2LCAxNzAsIDMxLCAyMjAsIDc4LCAxNzAsIDMxLCAyMzUsIDIxOSwgCi0gICAgMTcwLCAzMSwgMjQ3LCAyNDksIDE3MCwgMzEsIDI0OCwgMTA1LCAxNzAsIDMxLCAyNDcsIDE2MCwgMTcwLCAzMSwgMjQ0LCAKLSAgICAyNTIsIDE3MCwgMzEsIDIyMSwgMzYsIDE3MCwgMzEsIDIxOSwgNjgsIDE3MCwgMzEsIDI0MSwgMjQxLCAxNzAsIDMxLCAyNDksIAotICAgIDE1MSwgMTcwLCAzMSwgMjQ5LCAxODgsIDE3MCwgMzEsIDI0NCwgMTQ1LCAxNzAsIDMxLCAyNTQsIDExNywgMTcwLCAzMSwgCi0gICAgMjQ5LCAxNTAsIDE3MCwgMzEsIDIyNywgNjMsIDIxNywgMTQ5LCAyMTQsIDIxOSwgMTcwLCAzMSwgMjQ3LCAxODQsIDE3MCwgCi0gICAgMzEsIDIzMywgMTQ3LCAxNzAsIDMxLCAyNDMsIDIzOSwgMjQ5LCA4OCwgMjIzLCAxMDMsIDIxNSwgMTQ1LCAyMSwgMTE2LCAKLSAgICAyNDksIDg4LCAyMjMsIDEwMywgMjE1LCAxNDUsIDIxLCAxMDksIDI0OSwgODgsIDIyMywgMTAzLCAyMTUsIDE0NSwgMjEsIAotICAgIDE2NiwgMjQ5LCA4OCwgMjIzLCAxMDMsIDIxNSwgMTQ1LCAyMSwgMTYzLCAyNDksIDg4LCAyMjMsIDEwMywgMjE1LCAxNDUsIAotICAgIDIxLCAxODAsIDI0OSwgODgsIDIyMywgMTAzLCAyMTUsIDE0NSwgMjEsIDE4OSwgMjQ5LCA4OCwgMjIzLCAxMDMsIDIxNSwgCi0gICAgMTQ1LCAyMSwgMTk4LCAyNDksIDg4LCAyMjMsIDEwMywgMjE1LCAxNDUsIDIxLCAxOTUsIDI0OSwgODgsIDIyMywgMTAzLCAKLSAgICAyMTUsIDE0NSwgMjEsIDIwMCwgMjQ5LCA4OCwgMjIzLCAxMDMsIDIxNywgMTk2LCAyMSwgMTE2LCAyNDksIDg4LCAyMjMsIAotICAgIDEwMywgMjE3LCAxOTYsIDIxLCAxMDksIDI0OSwgODgsIDIyMywgMTAzLCAyMTcsIDE5NiwgMjEsIDE2NiwgMjQ5LCA4OCwgCi0gICAgMjIzLCAxMDMsIDIxNywgMTk2LCAyMSwgMTYzLCAyNDksIDg4LCAyMjMsIDEwMywgMjE3LCAxOTYsIDIxLCAxODAsIDI0OSwgCi0gICAgODgsIDIyMywgMTAzLCAyMTcsIDE5NiwgMjEsIDE4OSwgMjQ5LCA4OCwgMjIzLCAxMDMsIDIxNywgMTk2LCAyMSwgMTk4LCAKLSAgICAyNDksIDg4LCAyMjMsIDEwMywgMjE3LCAxOTYsIDIxLCAxOTUsIDI0OSwgODgsIDIyMywgMTAzLCAyMTcsIDE5NiwgMjEsIAotICAgIDIwMCwgMTQsIDIyLCA2LCA2MSwgMTQsIDIyLCA2LCAyNTMsIDc0LCAxNCwgMjIsIDYsIDI1MCwgMjUyLCAxNCwgMjIsIDYsIAotICAgIDI0OSwgMywgMTQsIDIyLCA2LCA3NCwgMTQsIDIyLCA2LCAyNDQsIDIzMCwgMTQsIDIyLCA2LCAyNDMsIDE3NywgMTQsIDIyLCAKLSAgICA2LCAyNDIsIDQxLCAxNCwgMjIsIDYsIDcyLCAxNCwgMjIsIDYsIDIzNSwgMTQyLCAxNCwgMjIsIDYsIDIzNSwgMjcsIDE0LCAKLSAgICAyMiwgNiwgMTUwLCAxNCwgMjIsIDYsIDE4MywgMTQsIDIyLCA2LCAyMDQsIDE0LCAyMiwgNiwgNzUsIDE0LCAyMiwgNiwgCi0gICAgMjI2LCAyMjksIDE0LCAyMiwgNiwgMjI0LCAyNDAsIDE0LCAyMiwgNiwgMTQ5LCAxNCwgMjIsIDYsIDE5NywgMTQsIDIyLCA2LCAKLSAgICAyMTgsIDk5LCAxNCwgMjIsIDYsIDY5LCAxNCwgMjIsIDYsIDIxNSwgNzksIDE0LCAyMiwgNiwgMjE0LCA4MiwgMTQsIDIyLCAKLSAgICA2LCAyMTMsIDE2NiwgMTQsIDIyLCA2LCAyMTMsIDEwNSwgMTQsIDIyLCA2LCAyMTIsIDE1MiwgMTQsIDIyLCAzLCA2MSwgMTQsIAotICAgIDIyLCAzLCAyNTMsIDc0LCAxNCwgMjIsIDMsIDI1MCwgMjUyLCAxNCwgMjIsIDMsIDI0OSwgMywgMTQsIDIyLCAzLCA3NCwgCi0gICAgMTQsIDIyLCAzLCAyNDQsIDIzMCwgMTQsIDIyLCAzLCAyNDMsIDE3NywgMTQsIDIyLCAzLCAyNDIsIDQxLCAxNCwgMjIsIDMsIAotICAgIDcyLCAxNCwgMjIsIDMsIDIzNSwgMTQyLCAxNCwgMjIsIDMsIDIzNSwgMjcsIDE0LCAyMiwgMywgMTUwLCAxNCwgMjIsIDMsIAotICAgIDE4MywgMTQsIDIyLCAzLCAyMDQsIDE0LCAyMiwgMywgNzUsIDE0LCAyMiwgMywgMjI2LCAyMjksIDE0LCAyMiwgMywgMjI0LCAKLSAgICAyNDAsIDE0LCAyMiwgMywgMTQ5LCAxNCwgMjIsIDMsIDE5NywgMTQsIDIyLCAzLCAyMTgsIDk5LCAxNCwgMjIsIDMsIDY5LCAKLSAgICAxNCwgMjIsIDMsIDIxNSwgNzksIDE0LCAyMiwgMywgMjE0LCA4MiwgMTQsIDIyLCAzLCAyMTMsIDE2NiwgMTQsIDIyLCAzLCAKLSAgICAyMTMsIDEwNSwgMTQsIDIyLCAzLCAyMTIsIDE1MiwgMTQsIDMyLCA2LCA2MSwgMTQsIDMyLCA2LCAyNTMsIDc0LCAxNCwgMzIsIAotICAgIDYsIDI1MCwgMjUyLCAxNCwgMzIsIDYsIDI0OSwgMywgMTQsIDMyLCA2LCA3NCwgMTQsIDMyLCA2LCAyNDQsIDIzMCwgMTQsIAotICAgIDMyLCA2LCAyNDMsIDE3NywgMTQsIDMyLCA2LCAyNDIsIDQxLCAxNCwgMzIsIDYsIDcyLCAxNCwgMzIsIDYsIDIzNSwgMTQyLCAKLSAgICAxNCwgMzIsIDYsIDIzNSwgMjcsIDE0LCAzMiwgNiwgMTUwLCAxNCwgMzIsIDYsIDE4MywgMTQsIDMyLCA2LCAyMDQsIDE0LCAKLSAgICAzMiwgNiwgNzUsIDE0LCAzMiwgNiwgMjI2LCAyMjksIDE0LCAzMiwgNiwgMjI0LCAyNDAsIDE0LCAzMiwgNiwgMTQ5LCAxNCwgCi0gICAgMzIsIDYsIDE5NywgMTQsIDMyLCA2LCAyMTgsIDk5LCAxNCwgMzIsIDYsIDY5LCAxNCwgMzIsIDYsIDIxNSwgNzksIDE0LCAKLSAgICAzMiwgNiwgMjE0LCA4MiwgMTQsIDMyLCA2LCAyMTMsIDE2NiwgMTQsIDMyLCA2LCAyMTMsIDEwNSwgMTQsIDMyLCA2LCAyMTIsIAotICAgIDE1MiwgMTQsIDMyLCAzLCA2MSwgMTQsIDMyLCAzLCAyNTMsIDc0LCAxNCwgMzIsIDMsIDI1MCwgMjUyLCAxNCwgMzIsIDMsIAotICAgIDI0OSwgMywgMTQsIDMyLCAzLCA3NCwgMTQsIDMyLCAzLCAyNDQsIDIzMCwgMTQsIDMyLCAzLCAyNDMsIDE3NywgMTQsIDMyLCAKLSAgICAzLCA3MiwgMTQsIDMyLCAzLCAyMzUsIDE0MiwgMTQsIDMyLCAzLCAyMzUsIDI3LCAxNCwgMzIsIDMsIDE1MCwgMTQsIDMyLCAKLSAgICAzLCAxODMsIDE0LCAzMiwgMywgMjA0LCAxNCwgMzIsIDMsIDc1LCAxNCwgMzIsIDMsIDIyNiwgMjI5LCAxNCwgMzIsIDMsIAotICAgIDIyNCwgMjQwLCAxNCwgMzIsIDMsIDE0OSwgMTQsIDMyLCAzLCAxOTcsIDE0LCAzMiwgMywgMjE4LCA5OSwgMTQsIDMyLCAzLCAKLSAgICA2OSwgMTQsIDMyLCAzLCAyMTUsIDc5LCAxNCwgMzIsIDMsIDIxNCwgODIsIDE0LCAzMiwgMywgMjEzLCAxNjYsIDE0LCAzMiwgCi0gICAgMywgMjEzLCAxMDUsIDE0LCAzMiwgMywgMjEyLCAxNTIsIDE0LCAyMiwgMzIsIDYsIDYxLCAxNCwgMjIsIDMyLCA2LCAyNTMsIAotICAgIDc0LCAxNCwgMjIsIDMyLCA2LCAyNTAsIDI1MiwgMTQsIDIyLCAzMiwgNiwgMjQ5LCAzLCAxNCwgMjIsIDMyLCA2LCA3NCwgCi0gICAgMTQsIDIyLCAzMiwgNiwgMjQ0LCAyMzAsIDE0LCAyMiwgMzIsIDYsIDI0MywgMTc3LCAxNCwgMjIsIDMyLCA2LCAyNDIsIDQxLCAKLSAgICAxNCwgMjIsIDMyLCA2LCA3MiwgMTQsIDIyLCAzMiwgNiwgMjM1LCAxNDIsIDE0LCAyMiwgMzIsIDYsIDIzNSwgMjcsIDE0LCAKLSAgICAyMiwgMzIsIDYsIDE1MCwgMTQsIDIyLCAzMiwgNiwgMTgzLCAxNCwgMjIsIDMyLCA2LCAyMDQsIDE0LCAyMiwgMzIsIDYsIAotICAgIDc1LCAxNCwgMjIsIDMyLCA2LCAyMjYsIDIyOSwgMTQsIDIyLCAzMiwgNiwgMjI0LCAyNDAsIDE0LCAyMiwgMzIsIDYsIDE0OSwgCi0gICAgMTQsIDIyLCAzMiwgNiwgMTk3LCAxNCwgMjIsIDMyLCA2LCAyMTgsIDk5LCAxNCwgMjIsIDMyLCA2LCA2OSwgMTQsIDIyLCAKLSAgICAzMiwgNiwgMjE1LCA3OSwgMTQsIDIyLCAzMiwgNiwgMjE0LCA4MiwgMTQsIDIyLCAzMiwgNiwgMjEzLCAxNjYsIDE0LCAyMiwgCi0gICAgMzIsIDYsIDIxMywgMTA1LCAxNCwgMjIsIDMyLCA2LCAyMTIsIDE1MiwgMTQsIDIyLCAzMiwgMywgNjEsIDE0LCAyMiwgMzIsIAotICAgIDMsIDI1MywgNzQsIDE0LCAyMiwgMzIsIDMsIDI1MCwgMjUyLCAxNCwgMjIsIDMyLCAzLCAyNDksIDMsIDE0LCAyMiwgMzIsIAotICAgIDMsIDc0LCAxNCwgMjIsIDMyLCAzLCAyNDQsIDIzMCwgMTQsIDIyLCAzMiwgMywgMjQzLCAxNzcsIDE0LCAyMiwgMzIsIDMsIAotICAgIDI0MiwgNDEsIDE0LCAyMiwgMzIsIDMsIDcyLCAxNCwgMjIsIDMyLCAzLCAyMzUsIDE0MiwgMTQsIDIyLCAzMiwgMywgMjM1LCAKLSAgICAyNywgMTQsIDIyLCAzMiwgMywgMTUwLCAxNCwgMjIsIDMyLCAzLCAxODMsIDE0LCAyMiwgMzIsIDMsIDIwNCwgMTQsIDIyLCAKLSAgICAzMiwgMywgNzUsIDE0LCAyMiwgMzIsIDMsIDIyNiwgMjI5LCAxNCwgMjIsIDMyLCAzLCAyMjQsIDI0MCwgMTQsIDIyLCAzMiwgCi0gICAgMywgMTQ5LCAxNCwgMjIsIDMyLCAzLCAxOTcsIDE0LCAyMiwgMzIsIDMsIDIxOCwgOTksIDE0LCAyMiwgMzIsIDMsIDY5LCAKLSAgICAxNCwgMjIsIDMyLCAzLCAyMTUsIDc5LCAxNCwgMjIsIDMyLCAzLCAyMTQsIDgyLCAxNCwgMjIsIDMyLCAzLCAyMTMsIDE2NiwgCi0gICAgMTQsIDIyLCAzMiwgMywgMjEzLCAxMDUsIDE0LCAyMiwgMzIsIDMsIDIxMiwgMTUyLCAxNCwgMTEzLCA2LCA2MSwgMTQsIAotICAgIDExMywgNiwgMjUwLCAyNTIsIDE0LCAxMTMsIDYsIDI0OSwgMywgMTQsIDExMywgNiwgMjQzLCAxNzcsIDE0LCAxMTMsIDYsIAotICAgIDIzNSwgMTQyLCAxNCwgMTEzLCA2LCAyMzUsIDI3LCAxNCwgMTEzLCA2LCAyMDQsIDE0LCAxMTMsIDYsIDc1LCAxNCwgMTEzLCAKLSAgICA2LCAyMjYsIDIyOSwgMTQsIDExMywgNiwgMjI0LCAyNDAsIDE0LCAxMTMsIDYsIDE5NywgMTQsIDExMywgNiwgMjE4LCA5OSwgCi0gICAgMTQsIDExMywgNiwgNjksIDE0LCAxMTMsIDYsIDIxNSwgNzksIDE0LCAxMTMsIDYsIDIxNCwgODIsIDE0LCAxMTMsIDYsIAotICAgIDIxMywgMTY2LCAxNCwgMTEzLCA2LCAyMTMsIDEwNSwgMTQsIDExMywgNiwgMjEyLCAxNTIsIDE0LCAxMTMsIDMsIDYxLCAxNCwgCi0gICAgMTEzLCAzLCAyNTMsIDc0LCAxNCwgMTEzLCAzLCAyNTAsIDI1MiwgMTQsIDExMywgMywgMjQ5LCAzLCAxNCwgMTEzLCAzLCAKLSAgICAyNDQsIDIzMCwgMTQsIDExMywgMywgMjQyLCA0MSwgMTQsIDExMywgMywgNzIsIDE0LCAxMTMsIDMsIDIzNSwgMTQyLCAxNCwgCi0gICAgMTEzLCAzLCAyMzUsIDI3LCAxNCwgMTEzLCAzLCAxNTAsIDE0LCAxMTMsIDMsIDE4MywgMTQsIDExMywgMywgMjA0LCAxNCwgCi0gICAgMTEzLCAzLCAyMjYsIDIyOSwgMTQsIDExMywgMywgMjI0LCAyNDAsIDE0LCAxMTMsIDMsIDE0OSwgMTQsIDExMywgMywgMTk3LCAKLSAgICAxNCwgMTEzLCAzLCAyMTgsIDk5LCAxNCwgMTEzLCAzLCA2OSwgMTQsIDExMywgMywgMjE1LCA3OSwgMTQsIDExMywgMywgCi0gICAgMjE0LCA4MiwgMTQsIDExMywgMywgMjEzLCAxNjYsIDE0LCAxMTMsIDMsIDIxMywgMTA1LCAxNCwgMTEzLCAzLCAyMTIsIAotICAgIDE1MiwgMTQsIDIyLCAxMTMsIDYsIDYxLCAxNCwgMjIsIDExMywgNiwgMjUzLCA3NCwgMTQsIDIyLCAxMTMsIDYsIDI1MCwgCi0gICAgMjUyLCAxNCwgMjIsIDExMywgNiwgMjQ5LCAzLCAxNCwgMjIsIDExMywgNiwgNzQsIDE0LCAyMiwgMTEzLCA2LCAyNDQsIAotICAgIDIzMCwgMTQsIDIyLCAxMTMsIDYsIDI0MywgMTc3LCAxNCwgMjIsIDExMywgNiwgMjQyLCA0MSwgMTQsIDIyLCAxMTMsIDYsIAotICAgIDcyLCAxNCwgMjIsIDExMywgNiwgMjM1LCAxNDIsIDE0LCAyMiwgMTEzLCA2LCAyMzUsIDI3LCAxNCwgMjIsIDExMywgNiwgCi0gICAgMTUwLCAxNCwgMjIsIDExMywgNiwgMTgzLCAxNCwgMjIsIDExMywgNiwgMjA0LCAxNCwgMjIsIDExMywgNiwgNzUsIDE0LCAKLSAgICAyMiwgMTEzLCA2LCAyMjYsIDIyOSwgMTQsIDIyLCAxMTMsIDYsIDIyNCwgMjQwLCAxNCwgMjIsIDExMywgNiwgMTQ5LCAxNCwgCi0gICAgMjIsIDExMywgNiwgMTk3LCAxNCwgMjIsIDExMywgNiwgMjE4LCA5OSwgMTQsIDIyLCAxMTMsIDYsIDY5LCAxNCwgMjIsIAotICAgIDExMywgNiwgMjE1LCA3OSwgMTQsIDIyLCAxMTMsIDYsIDIxNCwgODIsIDE0LCAyMiwgMTEzLCA2LCAyMTMsIDE2NiwgMTQsIAotICAgIDIyLCAxMTMsIDYsIDIxMywgMTA1LCAxNCwgMjIsIDExMywgNiwgMjEyLCAxNTIsIDE0LCAyMiwgMTEzLCAzLCA2MSwgMTQsIAotICAgIDIyLCAxMTMsIDMsIDI1MywgNzQsIDE0LCAyMiwgMTEzLCAzLCAyNTAsIDI1MiwgMTQsIDIyLCAxMTMsIDMsIDI0OSwgMywgCi0gICAgMTQsIDIyLCAxMTMsIDMsIDc0LCAxNCwgMjIsIDExMywgMywgMjQ0LCAyMzAsIDE0LCAyMiwgMTEzLCAzLCAyNDMsIDE3NywgCi0gICAgMTQsIDIyLCAxMTMsIDMsIDI0MiwgNDEsIDE0LCAyMiwgMTEzLCAzLCA3MiwgMTQsIDIyLCAxMTMsIDMsIDIzNSwgMTQyLCAKLSAgICAxNCwgMjIsIDExMywgMywgMjM1LCAyNywgMTQsIDIyLCAxMTMsIDMsIDE1MCwgMTQsIDIyLCAxMTMsIDMsIDE4MywgMTQsIAotICAgIDIyLCAxMTMsIDMsIDIwNCwgMTQsIDIyLCAxMTMsIDMsIDc1LCAxNCwgMjIsIDExMywgMywgMjI2LCAyMjksIDE0LCAyMiwgCi0gICAgMTEzLCAzLCAyMjQsIDI0MCwgMTQsIDIyLCAxMTMsIDMsIDE0OSwgMTQsIDIyLCAxMTMsIDMsIDE5NywgMTQsIDIyLCAxMTMsIAotICAgIDMsIDIxOCwgOTksIDE0LCAyMiwgMTEzLCAzLCA2OSwgMTQsIDIyLCAxMTMsIDMsIDIxNSwgNzksIDE0LCAyMiwgMTEzLCAzLCAKLSAgICAyMTQsIDgyLCAxNCwgMjIsIDExMywgMywgMjEzLCAxNjYsIDE0LCAyMiwgMTEzLCAzLCAyMTMsIDEwNSwgMTQsIDIyLCAxMTMsIAotICAgIDMsIDIxMiwgMTUyLCAxNCwgMTI5LCA2LCA2MSwgMTQsIDEyOSwgNiwgMjUzLCA3NCwgMTQsIDEyOSwgNiwgMjQ5LCAzLCAxNCwgCi0gICAgMTI5LCA2LCA3NCwgMTQsIDEyOSwgNiwgMjQ0LCAyMzAsIDE0LCAxMjksIDYsIDI0MywgMTc3LCAxNCwgMTI5LCA2LCAyMzUsIAotICAgIDE0MiwgMTQsIDEyOSwgNiwgMjM1LCAyNywgMTQsIDEyOSwgNiwgMTUwLCAxNCwgMTI5LCA2LCAxODMsIDE0LCAxMjksIDYsIAotICAgIDIwNCwgMTQsIDEyOSwgNiwgNzUsIDE0LCAxMjksIDYsIDIyNiwgMjI5LCAxNCwgMTI5LCA2LCAyMjQsIDI0MCwgMTQsIDEyOSwgCi0gICAgNiwgMTk3LCAxNCwgMTI5LCA2LCAyMTgsIDk5LCAxNCwgMTI5LCA2LCA2OSwgMTQsIDEyOSwgNiwgMjE1LCA3OSwgMTQsIAotICAgIDEyOSwgNiwgMjE0LCA4MiwgMTQsIDEyOSwgNiwgMjEzLCAxNjYsIDE0LCAxMjksIDYsIDIxMywgMTA1LCAxNCwgMTI5LCAzLCAKLSAgICA2MSwgMTQsIDEyOSwgMywgMjUzLCA3NCwgMTQsIDEyOSwgMywgMjUwLCAyNTIsIDE0LCAxMjksIDMsIDI0OSwgMywgMTQsIAotICAgIDEyOSwgMywgNzQsIDE0LCAxMjksIDMsIDI0NCwgMjMwLCAxNCwgMTI5LCAzLCAyNDMsIDE3NywgMTQsIDEyOSwgMywgMjQyLCAKLSAgICA0MSwgMTQsIDEyOSwgMywgNzIsIDE0LCAxMjksIDMsIDIzNSwgMTQyLCAxNCwgMTI5LCAzLCAyMzUsIDI3LCAxNCwgMTI5LCAKLSAgICAzLCAxNTAsIDE0LCAxMjksIDMsIDE4MywgMTQsIDEyOSwgMywgMjA0LCAxNCwgMTI5LCAzLCA3NSwgMTQsIDEyOSwgMywgCi0gICAgMjI2LCAyMjksIDE0LCAxMjksIDMsIDIyNCwgMjQwLCAxNCwgMTI5LCAzLCAxNDksIDE0LCAxMjksIDMsIDE5NywgMTQsIAotICAgIDEyOSwgMywgMjE4LCA5OSwgMTQsIDEyOSwgMywgNjksIDE0LCAxMjksIDMsIDIxNSwgNzksIDE0LCAxMjksIDMsIDIxNCwgCi0gICAgODIsIDE0LCAxMjksIDMsIDIxMywgMTY2LCAxNCwgMTI5LCAzLCAyMTMsIDEwNSwgMTQsIDEyOSwgMywgMjEyLCAxNTIsIDE0LCAKLSAgICAxODcsIDYsIDYxLCAxNCwgMTg3LCA2LCAyNTMsIDc0LCAxNCwgMTg3LCA2LCAyNDksIDMsIDE0LCAxODcsIDYsIDc0LCAxNCwgCi0gICAgMTg3LCA2LCAyNDQsIDIzMCwgMTQsIDE4NywgNiwgMjQzLCAxNzcsIDE0LCAxODcsIDYsIDcyLCAxNCwgMTg3LCA2LCAyMzUsIAotICAgIDE0MiwgMTQsIDE4NywgNiwgMjM1LCAyNywgMTQsIDE4NywgNiwgMTUwLCAxNCwgMTg3LCA2LCAxODMsIDE0LCAxODcsIDYsIAotICAgIDc1LCAxNCwgMTg3LCA2LCAxOTcsIDE0LCAxODcsIDYsIDIxOCwgOTksIDE0LCAxODcsIDYsIDY5LCAxNCwgMTg3LCA2LCAKLSAgICAyMTUsIDc5LCAxNCwgMTg3LCA2LCAyMTQsIDgyLCAxNCwgMTg3LCA2LCAyMTMsIDE2NiwgMTQsIDE4NywgNiwgMjEzLCAxMDUsIAotICAgIDE0LCAxODcsIDMsIDYxLCAxNCwgMTg3LCAzLCAyNTMsIDc0LCAxNCwgMTg3LCAzLCAyNTAsIDI1MiwgMTQsIDE4NywgMywgCi0gICAgMjQ5LCAzLCAxNCwgMTg3LCAzLCA3NCwgMTQsIDE4NywgMywgMjQ0LCAyMzAsIDE0LCAxODcsIDMsIDI0MywgMTc3LCAxNCwgCi0gICAgMTg3LCAzLCAyNDIsIDQxLCAxNCwgMTg3LCAzLCA3MiwgMTQsIDE4NywgMywgMjM1LCAxNDIsIDE0LCAxODcsIDMsIDIzNSwgCi0gICAgMjcsIDE0LCAxODcsIDMsIDE1MCwgMTQsIDE4NywgMywgMTgzLCAxNCwgMTg3LCAzLCAyMDQsIDE0LCAxODcsIDMsIDc1LCAKLSAgICAxNCwgMTg3LCAzLCAyMjYsIDIyOSwgMTQsIDE4NywgMywgMjI0LCAyNDAsIDE0LCAxODcsIDMsIDE0OSwgMTQsIDE4NywgMywgCi0gICAgMTk3LCAxNCwgMTg3LCAzLCAyMTgsIDk5LCAxNCwgMTg3LCAzLCA2OSwgMTQsIDE4NywgMywgMjE1LCA3OSwgMTQsIDE4NywgCi0gICAgMywgMjE0LCA4MiwgMTQsIDE4NywgMywgMjEzLCAxNjYsIDE0LCAxODcsIDMsIDIxMywgMTA1LCAxNCwgMTg3LCAzLCAyMTIsIAotICAgIDE1MiwgMTQsIDIyLCAxMjksIDYsIDYxLCAxNCwgMjIsIDEyOSwgNiwgMjUzLCA3NCwgMTQsIDIyLCAxMjksIDYsIDI1MCwgCi0gICAgMjUyLCAxNCwgMjIsIDEyOSwgNiwgMjQ5LCAzLCAxNCwgMjIsIDEyOSwgNiwgNzQsIDE0LCAyMiwgMTI5LCA2LCAyNDQsIAotICAgIDIzMCwgMTQsIDIyLCAxMjksIDYsIDI0MywgMTc3LCAxNCwgMjIsIDEyOSwgNiwgMjQyLCA0MSwgMTQsIDIyLCAxMjksIDYsIAotICAgIDcyLCAxNCwgMjIsIDEyOSwgNiwgMjM1LCAxNDIsIDE0LCAyMiwgMTI5LCA2LCAyMzUsIDI3LCAxNCwgMjIsIDEyOSwgNiwgCi0gICAgMTUwLCAxNCwgMjIsIDEyOSwgNiwgMTgzLCAxNCwgMjIsIDEyOSwgNiwgMjA0LCAxNCwgMjIsIDEyOSwgNiwgNzUsIDE0LCAKLSAgICAyMiwgMTI5LCA2LCAyMjYsIDIyOSwgMTQsIDIyLCAxMjksIDYsIDIyNCwgMjQwLCAxNCwgMjIsIDEyOSwgNiwgMTQ5LCAxNCwgCi0gICAgMjIsIDEyOSwgNiwgMTk3LCAxNCwgMjIsIDEyOSwgNiwgMjE4LCA5OSwgMTQsIDIyLCAxMjksIDYsIDY5LCAxNCwgMjIsIAotICAgIDEyOSwgNiwgMjE1LCA3OSwgMTQsIDIyLCAxMjksIDYsIDIxNCwgODIsIDE0LCAyMiwgMTI5LCA2LCAyMTMsIDE2NiwgMTQsIAotICAgIDIyLCAxMjksIDYsIDIxMywgMTA1LCAxNCwgMjIsIDEyOSwgNiwgMjEyLCAxNTIsIDE0LCAyMiwgMTI5LCAzLCA2MSwgMTQsIAotICAgIDIyLCAxMjksIDMsIDI1MywgNzQsIDE0LCAyMiwgMTI5LCAzLCAyNTAsIDI1MiwgMTQsIDIyLCAxMjksIDMsIDI0OSwgMywgCi0gICAgMTQsIDIyLCAxMjksIDMsIDc0LCAxNCwgMjIsIDEyOSwgMywgMjQ0LCAyMzAsIDE0LCAyMiwgMTI5LCAzLCAyNDMsIDE3NywgCi0gICAgMTQsIDIyLCAxMjksIDMsIDI0MiwgNDEsIDE0LCAyMiwgMTI5LCAzLCA3MiwgMTQsIDIyLCAxMjksIDMsIDIzNSwgMTQyLCAKLSAgICAxNCwgMjIsIDEyOSwgMywgMjM1LCAyNywgMTQsIDIyLCAxMjksIDMsIDE1MCwgMTQsIDIyLCAxMjksIDMsIDE4MywgMTQsIAotICAgIDIyLCAxMjksIDMsIDIwNCwgMTQsIDIyLCAxMjksIDMsIDc1LCAxNCwgMjIsIDEyOSwgMywgMjI2LCAyMjksIDE0LCAyMiwgCi0gICAgMTI5LCAzLCAyMjQsIDI0MCwgMTQsIDIyLCAxMjksIDMsIDE0OSwgMTQsIDIyLCAxMjksIDMsIDE5NywgMTQsIDIyLCAxMjksIAotICAgIDMsIDIxOCwgOTksIDE0LCAyMiwgMTI5LCAzLCA2OSwgMTQsIDIyLCAxMjksIDMsIDIxNSwgNzksIDE0LCAyMiwgMTI5LCAzLCAKLSAgICAyMTQsIDgyLCAxNCwgMjIsIDEyOSwgMywgMjEzLCAxNjYsIDE0LCAyMiwgMTI5LCAzLCAyMTMsIDEwNSwgMTQsIDIyLCAxMjksIAotICAgIDMsIDIxMiwgMTUyLCAxNCwgMzUsIDYsIDYxLCAxNCwgMzUsIDYsIDI1MywgNzQsIDE0LCAzNSwgNiwgMjUwLCAyNTIsIDE0LCAKLSAgICAzNSwgNiwgMjQ5LCAzLCAxNCwgMzUsIDYsIDc0LCAxNCwgMzUsIDYsIDI0NCwgMjMwLCAxNCwgMzUsIDYsIDI0MywgMTc3LCAKLSAgICAxNCwgMzUsIDYsIDI0MiwgNDEsIDE0LCAzNSwgNiwgNzIsIDE0LCAzNSwgNiwgMjM1LCAxNDIsIDE0LCAzNSwgNiwgMjM1LCAKLSAgICAyNywgMTQsIDM1LCA2LCAxNTAsIDE0LCAzNSwgNiwgMTgzLCAxNCwgMzUsIDYsIDIwNCwgMTQsIDM1LCA2LCA3NSwgMTQsIAotICAgIDM1LCA2LCAyMjYsIDIyOSwgMTQsIDM1LCA2LCAyMjQsIDI0MCwgMTQsIDM1LCA2LCAxNDksIDE0LCAzNSwgNiwgMTk3LCAxNCwgCi0gICAgMzUsIDYsIDIxOCwgOTksIDE0LCAzNSwgNiwgNjksIDE0LCAzNSwgNiwgMjE1LCA3OSwgMTQsIDM1LCA2LCAyMTQsIDgyLCAKLSAgICAxNCwgMzUsIDYsIDIxMywgMTY2LCAxNCwgMzUsIDYsIDIxMywgMTA1LCAxNCwgMzUsIDYsIDIxMiwgMTUyLCAxNCwgMzUsIDMsIAotICAgIDYxLCAxNCwgMzUsIDMsIDI1MywgNzQsIDE0LCAzNSwgMywgMjUwLCAyNTIsIDE0LCAzNSwgMywgMjQ5LCAzLCAxNCwgMzUsIAotICAgIDMsIDc0LCAxNCwgMzUsIDMsIDI0NCwgMjMwLCAxNCwgMzUsIDMsIDI0MywgMTc3LCAxNCwgMzUsIDMsIDI0MiwgNDEsIDE0LCAKLSAgICAzNSwgMywgNzIsIDE0LCAzNSwgMywgMjM1LCAxNDIsIDE0LCAzNSwgMywgMjM1LCAyNywgMTQsIDM1LCAzLCAxNTAsIDE0LCAKLSAgICAzNSwgMywgMTgzLCAxNCwgMzUsIDMsIDIwNCwgMTQsIDM1LCAzLCA3NSwgMTQsIDM1LCAzLCAyMjYsIDIyOSwgMTQsIDM1LCAKLSAgICAzLCAyMjQsIDI0MCwgMTQsIDM1LCAzLCAxNDksIDE0LCAzNSwgMywgMTk3LCAxNCwgMzUsIDMsIDIxOCwgOTksIDE0LCAzNSwgCi0gICAgMywgNjksIDE0LCAzNSwgMywgMjE1LCA3OSwgMTQsIDM1LCAzLCAyMTQsIDgyLCAxNCwgMzUsIDMsIDIxMywgMTY2LCAxNCwgCi0gICAgMzUsIDMsIDIxMywgMTA1LCAxNCwgMzUsIDMsIDIxMiwgMTUyLCAxNCwgMzUsIDIyLCA2LCA2MSwgMTQsIDM1LCAyMiwgNiwgCi0gICAgMjUzLCA3NCwgMTQsIDM1LCAyMiwgNiwgMjUwLCAyNTIsIDE0LCAzNSwgMjIsIDYsIDI0OSwgMywgMTQsIDM1LCAyMiwgNiwgCi0gICAgNzQsIDE0LCAzNSwgMjIsIDYsIDI0NCwgMjMwLCAxNCwgMzUsIDIyLCA2LCAyNDMsIDE3NywgMTQsIDM1LCAyMiwgNiwgMjQyLCAKLSAgICA0MSwgMTQsIDM1LCAyMiwgNiwgNzIsIDE0LCAzNSwgMjIsIDYsIDIzNSwgMTQyLCAxNCwgMzUsIDIyLCA2LCAyMzUsIDI3LCAKLSAgICAxNCwgMzUsIDIyLCA2LCAxNTAsIDE0LCAzNSwgMjIsIDYsIDE4MywgMTQsIDM1LCAyMiwgNiwgMjA0LCAxNCwgMzUsIDIyLCAKLSAgICA2LCA3NSwgMTQsIDM1LCAyMiwgNiwgMjI2LCAyMjksIDE0LCAzNSwgMjIsIDYsIDIyNCwgMjQwLCAxNCwgMzUsIDIyLCA2LCAKLSAgICAxNDksIDE0LCAzNSwgMjIsIDYsIDE5NywgMTQsIDM1LCAyMiwgNiwgMjE4LCA5OSwgMTQsIDM1LCAyMiwgNiwgNjksIDE0LCAKLSAgICAzNSwgMjIsIDYsIDIxNSwgNzksIDE0LCAzNSwgMjIsIDYsIDIxNCwgODIsIDE0LCAzNSwgMjIsIDYsIDIxMywgMTY2LCAxNCwgCi0gICAgMzUsIDIyLCA2LCAyMTMsIDEwNSwgMTQsIDM1LCAyMiwgNiwgMjEyLCAxNTIsIDE0LCAzNSwgMjIsIDMsIDYxLCAxNCwgMzUsIAotICAgIDIyLCAzLCAyNTMsIDc0LCAxNCwgMzUsIDIyLCAzLCAyNTAsIDI1MiwgMTQsIDM1LCAyMiwgMywgMjQ5LCAzLCAxNCwgMzUsIAotICAgIDIyLCAzLCA3NCwgMTQsIDM1LCAyMiwgMywgMjQ0LCAyMzAsIDE0LCAzNSwgMjIsIDMsIDI0MywgMTc3LCAxNCwgMzUsIDIyLCAKLSAgICAzLCAyNDIsIDQxLCAxNCwgMzUsIDIyLCAzLCA3MiwgMTQsIDM1LCAyMiwgMywgMjM1LCAxNDIsIDE0LCAzNSwgMjIsIDMsIAotICAgIDIzNSwgMjcsIDE0LCAzNSwgMjIsIDMsIDE1MCwgMTQsIDM1LCAyMiwgMywgMTgzLCAxNCwgMzUsIDIyLCAzLCAyMDQsIDE0LCAKLSAgICAzNSwgMjIsIDMsIDc1LCAxNCwgMzUsIDIyLCAzLCAyMjYsIDIyOSwgMTQsIDM1LCAyMiwgMywgMjI0LCAyNDAsIDE0LCAzNSwgCi0gICAgMjIsIDMsIDE0OSwgMTQsIDM1LCAyMiwgMywgMTk3LCAxNCwgMzUsIDIyLCAzLCAyMTgsIDk5LCAxNCwgMzUsIDIyLCAzLCAKLSAgICA2OSwgMTQsIDM1LCAyMiwgMywgMjE1LCA3OSwgMTQsIDM1LCAyMiwgMywgMjE0LCA4MiwgMTQsIDM1LCAyMiwgMywgMjEzLCAKLSAgICAxNjYsIDE0LCAzNSwgMjIsIDMsIDIxMywgMTA1LCAxNCwgMzUsIDIyLCAzLCAyMTIsIDE1MiwgMTQsIDM1LCAzMiwgNiwgNjEsIAotICAgIDE0LCAzNSwgMzIsIDYsIDI1MywgNzQsIDE0LCAzNSwgMzIsIDYsIDI1MCwgMjUyLCAxNCwgMzUsIDMyLCA2LCAyNDksIDMsIAotICAgIDE0LCAzNSwgMzIsIDYsIDc0LCAxNCwgMzUsIDMyLCA2LCAyNDQsIDIzMCwgMTQsIDM1LCAzMiwgNiwgMjQzLCAxNzcsIDE0LCAKLSAgICAzNSwgMzIsIDYsIDI0MiwgNDEsIDE0LCAzNSwgMzIsIDYsIDcyLCAxNCwgMzUsIDMyLCA2LCAyMzUsIDE0MiwgMTQsIDM1LCAKLSAgICAzMiwgNiwgMjM1LCAyNywgMTQsIDM1LCAzMiwgNiwgMTUwLCAxNCwgMzUsIDMyLCA2LCAxODMsIDE0LCAzNSwgMzIsIDYsIAotICAgIDIwNCwgMTQsIDM1LCAzMiwgNiwgNzUsIDE0LCAzNSwgMzIsIDYsIDIyNiwgMjI5LCAxNCwgMzUsIDMyLCA2LCAyMjQsIDI0MCwgCi0gICAgMTQsIDM1LCAzMiwgNiwgMTQ5LCAxNCwgMzUsIDMyLCA2LCAxOTcsIDE0LCAzNSwgMzIsIDYsIDIxOCwgOTksIDE0LCAzNSwgCi0gICAgMzIsIDYsIDY5LCAxNCwgMzUsIDMyLCA2LCAyMTUsIDc5LCAxNCwgMzUsIDMyLCA2LCAyMTQsIDgyLCAxNCwgMzUsIDMyLCA2LCAKLSAgICAyMTMsIDE2NiwgMTQsIDM1LCAzMiwgNiwgMjEzLCAxMDUsIDE0LCAzNSwgMzIsIDYsIDIxMiwgMTUyLCAxNCwgMzUsIDMyLCAKLSAgICAzLCA2MSwgMTQsIDM1LCAzMiwgMywgMjUzLCA3NCwgMTQsIDM1LCAzMiwgMywgMjUwLCAyNTIsIDE0LCAzNSwgMzIsIDMsIAotICAgIDI0OSwgMywgMTQsIDM1LCAzMiwgMywgNzQsIDE0LCAzNSwgMzIsIDMsIDI0NCwgMjMwLCAxNCwgMzUsIDMyLCAzLCAyNDMsIAotICAgIDE3NywgMTQsIDM1LCAzMiwgMywgMjQyLCA0MSwgMTQsIDM1LCAzMiwgMywgNzIsIDE0LCAzNSwgMzIsIDMsIDIzNSwgMTQyLCAKLSAgICAxNCwgMzUsIDMyLCAzLCAyMzUsIDI3LCAxNCwgMzUsIDMyLCAzLCAxNTAsIDE0LCAzNSwgMzIsIDMsIDE4MywgMTQsIDM1LCAKLSAgICAzMiwgMywgMjA0LCAxNCwgMzUsIDMyLCAzLCA3NSwgMTQsIDM1LCAzMiwgMywgMjI2LCAyMjksIDE0LCAzNSwgMzIsIDMsIAotICAgIDIyNCwgMjQwLCAxNCwgMzUsIDMyLCAzLCAxNDksIDE0LCAzNSwgMzIsIDMsIDE5NywgMTQsIDM1LCAzMiwgMywgMjE4LCA5OSwgCi0gICAgMTQsIDM1LCAzMiwgMywgNjksIDE0LCAzNSwgMzIsIDMsIDIxNSwgNzksIDE0LCAzNSwgMzIsIDMsIDIxNCwgODIsIDE0LCAKLSAgICAzNSwgMzIsIDMsIDIxMywgMTY2LCAxNCwgMzUsIDMyLCAzLCAyMTMsIDEwNSwgMTQsIDM1LCAzMiwgMywgMjEyLCAxNTIsIAotICAgIDE0LCAzNSwgMjIsIDMyLCA2LCA2MSwgMTQsIDM1LCAyMiwgMzIsIDYsIDI1MywgNzQsIDE0LCAzNSwgMjIsIDMyLCA2LCAKLSAgICAyNTAsIDI1MiwgMTQsIDM1LCAyMiwgMzIsIDYsIDI0OSwgMywgMTQsIDM1LCAyMiwgMzIsIDYsIDc0LCAxNCwgMzUsIDIyLCAKLSAgICAzMiwgNiwgMjQ0LCAyMzAsIDE0LCAzNSwgMjIsIDMyLCA2LCAyNDMsIDE3NywgMTQsIDM1LCAyMiwgMzIsIDYsIDI0MiwgNDEsIAotICAgIDE0LCAzNSwgMjIsIDMyLCA2LCA3MiwgMTQsIDM1LCAyMiwgMzIsIDYsIDIzNSwgMTQyLCAxNCwgMzUsIDIyLCAzMiwgNiwgCi0gICAgMjM1LCAyNywgMTQsIDM1LCAyMiwgMzIsIDYsIDE1MCwgMTQsIDM1LCAyMiwgMzIsIDYsIDE4MywgMTQsIDM1LCAyMiwgMzIsIAotICAgIDYsIDIwNCwgMTQsIDM1LCAyMiwgMzIsIDYsIDc1LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjI2LCAyMjksIDE0LCAzNSwgMjIsIAotICAgIDMyLCA2LCAyMjQsIDI0MCwgMTQsIDM1LCAyMiwgMzIsIDYsIDE0OSwgMTQsIDM1LCAyMiwgMzIsIDYsIDE5NywgMTQsIDM1LCAKLSAgICAyMiwgMzIsIDYsIDIxOCwgOTksIDE0LCAzNSwgMjIsIDMyLCA2LCA2OSwgMTQsIDM1LCAyMiwgMzIsIDYsIDIxNSwgNzksIAotICAgIDE0LCAzNSwgMjIsIDMyLCA2LCAyMTQsIDgyLCAxNCwgMzUsIDIyLCAzMiwgNiwgMjEzLCAxNjYsIDE0LCAzNSwgMjIsIDMyLCAKLSAgICA2LCAyMTMsIDEwNSwgMTQsIDM1LCAyMiwgMzIsIDYsIDIxMiwgMTUyLCAxNCwgMzUsIDIyLCAzMiwgMywgNjEsIDE0LCAzNSwgCi0gICAgMjIsIDMyLCAzLCAyNTMsIDc0LCAxNCwgMzUsIDIyLCAzMiwgMywgMjUwLCAyNTIsIDE0LCAzNSwgMjIsIDMyLCAzLCAyNDksIAotICAgIDMsIDE0LCAzNSwgMjIsIDMyLCAzLCA3NCwgMTQsIDM1LCAyMiwgMzIsIDMsIDI0NCwgMjMwLCAxNCwgMzUsIDIyLCAzMiwgMywgCi0gICAgMjQzLCAxNzcsIDE0LCAzNSwgMjIsIDMyLCAzLCAyNDIsIDQxLCAxNCwgMzUsIDIyLCAzMiwgMywgNzIsIDE0LCAzNSwgMjIsIAotICAgIDMyLCAzLCAyMzUsIDE0MiwgMTQsIDM1LCAyMiwgMzIsIDMsIDIzNSwgMjcsIDE0LCAzNSwgMjIsIDMyLCAzLCAxNTAsIDE0LCAKLSAgICAzNSwgMjIsIDMyLCAzLCAxODMsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMDQsIDE0LCAzNSwgMjIsIDMyLCAzLCA3NSwgMTQsIAotICAgIDM1LCAyMiwgMzIsIDMsIDIyNiwgMjI5LCAxNCwgMzUsIDIyLCAzMiwgMywgMjI0LCAyNDAsIDE0LCAzNSwgMjIsIDMyLCAzLCAKLSAgICAxNDksIDE0LCAzNSwgMjIsIDMyLCAzLCAxOTcsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMTgsIDk5LCAxNCwgMzUsIDIyLCAzMiwgCi0gICAgMywgNjksIDE0LCAzNSwgMjIsIDMyLCAzLCAyMTUsIDc5LCAxNCwgMzUsIDIyLCAzMiwgMywgMjE0LCA4MiwgMTQsIDM1LCAKLSAgICAyMiwgMzIsIDMsIDIxMywgMTY2LCAxNCwgMzUsIDIyLCAzMiwgMywgMjEzLCAxMDUsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMTIsIAotICAgIDE1MiwgMTQsIDIzMCwgMjA4LCA2LCA2MSwgMTQsIDIzMCwgMjA4LCA2LCAyNTMsIDc0LCAxNCwgMjMwLCAyMDgsIDYsIDI1MCwgCi0gICAgMjUyLCAxNCwgMjMwLCAyMDgsIDYsIDI0OSwgMywgMTQsIDIzMCwgMjA4LCA2LCA3NCwgMTQsIDIzMCwgMjA4LCA2LCAyNDQsIAotICAgIDIzMCwgMTQsIDIzMCwgMjA4LCA2LCAyNDMsIDE3NywgMTQsIDIzMCwgMjA4LCA2LCAyNDIsIDQxLCAxNCwgMjMwLCAyMDgsIAotICAgIDYsIDcyLCAxNCwgMjMwLCAyMDgsIDYsIDIzNSwgMTQyLCAxNCwgMjMwLCAyMDgsIDYsIDIzNSwgMjcsIDE0LCAyMzAsIDIwOCwgCi0gICAgNiwgMTUwLCAxNCwgMjMwLCAyMDgsIDYsIDE4MywgMTQsIDIzMCwgMjA4LCA2LCAyMDQsIDE0LCAyMzAsIDIwOCwgNiwgNzUsIAotICAgIDE0LCAyMzAsIDIwOCwgNiwgMjI2LCAyMjksIDE0LCAyMzAsIDIwOCwgNiwgMjI0LCAyNDAsIDE0LCAyMzAsIDIwOCwgNiwgCi0gICAgMTQ5LCAxNCwgMjMwLCAyMDgsIDYsIDE5NywgMTQsIDIzMCwgMjA4LCA2LCAyMTgsIDk5LCAxNCwgMjMwLCAyMDgsIDYsIDY5LCAKLSAgICAxNCwgMjMwLCAyMDgsIDYsIDIxNSwgNzksIDE0LCAyMzAsIDIwOCwgNiwgMjE0LCA4MiwgMTQsIDIzMCwgMjA4LCA2LCAyMTMsIAotICAgIDE2NiwgMTQsIDIzMCwgMjA4LCA2LCAyMTMsIDEwNSwgMTQsIDIzMCwgMjA4LCA2LCAyMTIsIDE1MiwgMTQsIDIzMCwgMjA4LCAKLSAgICAzLCA2MSwgMTQsIDIzMCwgMjA4LCAzLCAyNTMsIDc0LCAxNCwgMjMwLCAyMDgsIDMsIDI1MCwgMjUyLCAxNCwgMjMwLCAyMDgsIAotICAgIDMsIDI0OSwgMywgMTQsIDIzMCwgMjA4LCAzLCA3NCwgMTQsIDIzMCwgMjA4LCAzLCAyNDQsIDIzMCwgMTQsIDIzMCwgMjA4LCAKLSAgICAzLCAyNDMsIDE3NywgMTQsIDIzMCwgMjA4LCAzLCAyNDIsIDQxLCAxNCwgMjMwLCAyMDgsIDMsIDcyLCAxNCwgMjMwLCAyMDgsIAotICAgIDMsIDIzNSwgMTQyLCAxNCwgMjMwLCAyMDgsIDMsIDIzNSwgMjcsIDE0LCAyMzAsIDIwOCwgMywgMTUwLCAxNCwgMjMwLCAKLSAgICAyMDgsIDMsIDE4MywgMTQsIDIzMCwgMjA4LCAzLCAyMDQsIDE0LCAyMzAsIDIwOCwgMywgNzUsIDE0LCAyMzAsIDIwOCwgMywgCi0gICAgMjI2LCAyMjksIDE0LCAyMzAsIDIwOCwgMywgMjI0LCAyNDAsIDE0LCAyMzAsIDIwOCwgMywgMTQ5LCAxNCwgMjMwLCAyMDgsIAotICAgIDMsIDE5NywgMTQsIDIzMCwgMjA4LCAzLCAyMTgsIDk5LCAxNCwgMjMwLCAyMDgsIDMsIDY5LCAxNCwgMjMwLCAyMDgsIDMsIAotICAgIDIxNSwgNzksIDE0LCAyMzAsIDIwOCwgMywgMjE0LCA4MiwgMTQsIDIzMCwgMjA4LCAzLCAyMTMsIDE2NiwgMTQsIDIzMCwgCi0gICAgMjA4LCAzLCAyMTMsIDEwNSwgMTQsIDIzMCwgMjA4LCAzLCAyMTIsIDE1MiwgMTQsIDMyLCAzLCAyNDcsIDczLCA3MiwgMTQsIAotICAgIDMyLCAzLCAyNDcsIDczLCAyMzUsIDE0MiwgMTQsIDIyLCA2LCAyNTQsIDUyLCAxNCwgMjIsIDYsIDI1MSwgMjAzLCAxNCwgCi0gICAgMjIsIDYsIDI0MywgODMsIDE0LCAyMiwgNiwgMjQ4LCA1LCAxNCwgMjIsIDYsIDI0NSwgNjMsIDE0LCAyMiwgNiwgMjEyLCAKLSAgICA3OCwgMTQsIDIyLCA2LCAyNDUsIDI4LCAxNCwgMjIsIDYsIDIxNywgMTMyLCAxNCwgMjIsIDYsIDIzNSwgMTgzLCAxNCwgMjIsIAotICAgIDYsIDIzNCwgMjI3LCAxNCwgMjIsIDYsIDIzMywgMTIyLCAxNCwgMjIsIDYsIDIzMCwgMTcyLCAxNCwgMjIsIDYsIDIyOCwgCi0gICAgOTIsIDE0LCAyMiwgNiwgMjEzLCAxNDUsIDE0LCAyMiwgNiwgMjI3LCA2NSwgMTQsIDIyLCA2LCAyMjUsIDI0MCwgMTQsIDIyLCAKLSAgICA2LCAyMjMsIDE5MCwgMTQsIDIyLCA2LCAyMTcsIDEzMywgODcsIDE0LCAyMiwgNiwgMjIwLCAxMDMsIDE0LCAyMiwgNiwgCi0gICAgMjE3LCAyNDgsIDE0LCAyMiwgNiwgMjE1LCAxMjgsIDE0LCAyMiwgNiwgMjI2LCA5LCAxNCwgMjIsIDYsIDI1MCwgNDcsIDE0LCAKLSAgICAyMiwgNiwgMjI1LCA0NiwgMTQsIDIyLCA2LCAyMjcsIDY3LCAxNCwgMjIsIDIzMCwgMzksIDE0LCAyMiwgMywgMjU0LCA1MiwgCi0gICAgMTQsIDIyLCAzLCAyNTEsIDIwMywgMTQsIDIyLCAzLCAyNDMsIDgzLCAxNCwgMjIsIDMsIDI0OCwgNSwgMTQsIDIyLCAzLCAKLSAgICAyNDUsIDYzLCAxNCwgMjIsIDMsIDIxMiwgNzgsIDE0LCAyMiwgMywgMjQ1LCAyOCwgMTQsIDIyLCAzLCAyMTcsIDEzMiwgMTQsIAotICAgIDIyLCAzLCAyMzUsIDE4MywgMTQsIDIyLCAzLCAyMzQsIDIyNywgMTQsIDIyLCAzLCAyMzMsIDEyMiwgMTQsIDIyLCAzLCAKLSAgICAyMzAsIDE3MiwgMTQsIDIyLCAzLCAyMjgsIDkyLCAxNCwgMjIsIDMsIDIxMywgMTQ1LCAxNCwgMjIsIDMsIDIyNywgNjUsIAotICAgIDE0LCAyMiwgMywgMjI1LCAyNDAsIDE0LCAyMiwgMywgMjIzLCAxOTAsIDE0LCAyMiwgMywgNDAsIDIyMCwgMTAzLCAxNCwgCi0gICAgMjIsIDMsIDIyMCwgMTAzLCAxNCwgMjIsIDMsIDIxNywgMjQ4LCAxNCwgMjIsIDMsIDIxNSwgMTI4LCAxNCwgMjIsIDMsIAotICAgIDIyNiwgOSwgMTQsIDIyLCAzLCAyNTAsIDQ3LCAxNCwgMjIsIDMsIDIyNSwgNDYsIDE0LCAyMiwgMywgMjI3LCA2NywgMTQsIAotICAgIDIyLCAyMjYsIDEyNSwgMjQ3LCAxODUsIDE0LCAyMiwgMjQ1LCA2NCwgODcsIDE0LCAyMiwgMjE3LCAxMzMsIDg3LCAxNCwgCi0gICAgMjIsIDIzNCwgMjI4LCA4NywgMTQsIDIyLCAyMjYsIDEwLCA4NywgMTQsIDIyLCAyMjMsIDE5MSwgODcsIDE0LCAyMiwgMjI1LCAKLSAgICAyNDEsIDg3LCAxNCwgMzIsIDYsIDI1NCwgNTIsIDE0LCAzMiwgNiwgMjUxLCAyMDMsIDE0LCAzMiwgNiwgMjQzLCA4MywgMTQsIAotICAgIDMyLCA2LCAyNDgsIDUsIDE0LCAzMiwgNiwgMjQ1LCA2MywgMTQsIDMyLCA2LCAyMTIsIDc4LCAxNCwgMzIsIDYsIDI0NSwgCi0gICAgMjgsIDE0LCAzMiwgNiwgMjE3LCAxMzIsIDE0LCAzMiwgNiwgMjM1LCAxODMsIDE0LCAzMiwgNiwgMjM0LCAyMjcsIDE0LCAKLSAgICAzMiwgNiwgMjMzLCAxMjIsIDE0LCAzMiwgNiwgMjMwLCAxNzIsIDE0LCAzMiwgNiwgMjI4LCA5MiwgMTQsIDMyLCA2LCAyMTMsIAotICAgIDE0NSwgMTQsIDMyLCA2LCAyMjcsIDY1LCAxNCwgMzIsIDYsIDIyNSwgMjQwLCAxNCwgMzIsIDYsIDIyMywgMTkwLCAxNCwgCi0gICAgMzIsIDYsIDIxNywgMTMzLCA4NywgMTQsIDMyLCA2LCAyMjAsIDEwMywgMTQsIDMyLCA2LCAyMTcsIDI0OCwgMTQsIDMyLCA2LCAKLSAgICAyMTUsIDEyOCwgMTQsIDMyLCA2LCAyMjYsIDksIDE0LCAzMiwgNiwgMjUwLCA0NywgMTQsIDMyLCA2LCAyMjUsIDQ2LCAxNCwgCi0gICAgMzIsIDYsIDIyNywgNjcsIDE0LCAzMiwgMjMwLCAzOSwgMTQsIDMyLCAzLCAyNTQsIDUyLCAxNCwgMzIsIDMsIDI1MSwgMjAzLCAKLSAgICAxNCwgMzIsIDMsIDI0MywgODMsIDE0LCAzMiwgMywgMjQ4LCA1LCAxNCwgMzIsIDMsIDI0NSwgNjMsIDE0LCAzMiwgMywgCi0gICAgMjEyLCA3OCwgMTQsIDMyLCAzLCAyNDUsIDI4LCAxNCwgMzIsIDMsIDIxNywgMTMyLCAxNCwgMzIsIDMsIDIzNSwgMTgzLCAKLSAgICAxNCwgMzIsIDMsIDIzNCwgMjI3LCAxNCwgMzIsIDMsIDIzMywgMTIyLCAxNCwgMzIsIDMsIDIzMCwgMTcyLCAxNCwgMzIsIDMsIAotICAgIDIyOCwgOTIsIDE0LCAzMiwgMywgMjEzLCAxNDUsIDE0LCAzMiwgMywgMjI3LCA2NSwgMTQsIDMyLCAzLCAyMjUsIDI0MCwgCi0gICAgMTQsIDMyLCAzLCAyMjMsIDE5MCwgMTQsIDMyLCAzLCA0MCwgMjIwLCAxMDMsIDE0LCAzMiwgMywgMjIwLCAxMDMsIDE0LCAKLSAgICAzMiwgMywgMjE3LCAyNDgsIDE0LCAzMiwgMywgMjE1LCAxMjgsIDE0LCAzMiwgMywgMjI2LCA5LCAxNCwgMzIsIDMsIDI1MCwgCi0gICAgNDcsIDE0LCAzMiwgMywgMjI1LCA0NiwgMTQsIDMyLCAzLCAyMjcsIDY3LCAxNCwgMzIsIDIyNiwgMTI1LCAyNDcsIDE4NSwgCi0gICAgMTQsIDMyLCAyNDUsIDY0LCA4NywgMTQsIDMyLCAyMTcsIDEzMywgODcsIDE0LCAzMiwgMjM0LCAyMjgsIDg3LCAxNCwgMzIsIAotICAgIDIyNiwgMTAsIDg3LCAxNCwgMzIsIDIyMywgMTkxLCA4NywgMTQsIDMyLCAyMjUsIDI0MSwgODcsIDE0LCAyMiwgMzIsIDYsIAotICAgIDI1NCwgNTIsIDE0LCAyMiwgMzIsIDYsIDI1MSwgMjAzLCAxNCwgMjIsIDMyLCA2LCAyNDMsIDgzLCAxNCwgMjIsIDMyLCA2LCAKLSAgICAyNDgsIDUsIDE0LCAyMiwgMzIsIDYsIDI0NSwgNjMsIDE0LCAyMiwgMzIsIDYsIDIxMiwgNzgsIDE0LCAyMiwgMzIsIDYsIAotICAgIDI0NSwgMjgsIDE0LCAyMiwgMzIsIDYsIDIxNywgMTMyLCAxNCwgMjIsIDMyLCA2LCAyMzUsIDE4MywgMTQsIDIyLCAzMiwgNiwgCi0gICAgMjM0LCAyMjcsIDE0LCAyMiwgMzIsIDYsIDIzMywgMTIyLCAxNCwgMjIsIDMyLCA2LCAyMzAsIDE3MiwgMTQsIDIyLCAzMiwgCi0gICAgNiwgMjI4LCA5MiwgMTQsIDIyLCAzMiwgNiwgMjEzLCAxNDUsIDE0LCAyMiwgMzIsIDYsIDIyNywgNjUsIDE0LCAyMiwgMzIsIAotICAgIDYsIDIyNSwgMjQwLCAxNCwgMjIsIDMyLCA2LCAyMjMsIDE5MCwgMTQsIDIyLCAzMiwgNiwgMjE3LCAxMzMsIDg3LCAxNCwgCi0gICAgMjIsIDMyLCA2LCAyMjAsIDEwMywgMTQsIDIyLCAzMiwgNiwgMjE3LCAyNDgsIDE0LCAyMiwgMzIsIDYsIDIxNSwgMTI4LCAKLSAgICAxNCwgMjIsIDMyLCA2LCAyMjYsIDksIDE0LCAyMiwgMzIsIDYsIDI1MCwgNDcsIDE0LCAyMiwgMzIsIDYsIDIyNSwgNDYsIAotICAgIDE0LCAyMiwgMzIsIDYsIDIyNywgNjcsIDE0LCAyMiwgMzIsIDIzMCwgMzksIDE0LCAyMiwgMzIsIDMsIDI1NCwgNTIsIDE0LCAKLSAgICAyMiwgMzIsIDMsIDI1MSwgMjAzLCAxNCwgMjIsIDMyLCAzLCAyNDMsIDgzLCAxNCwgMjIsIDMyLCAzLCAyNDgsIDUsIDE0LCAKLSAgICAyMiwgMzIsIDMsIDI0NSwgNjMsIDE0LCAyMiwgMzIsIDMsIDIxMiwgNzgsIDE0LCAyMiwgMzIsIDMsIDI0NSwgMjgsIDE0LCAKLSAgICAyMiwgMzIsIDMsIDIxNywgMTMyLCAxNCwgMjIsIDMyLCAzLCAyMzUsIDE4MywgMTQsIDIyLCAzMiwgMywgMjM0LCAyMjcsIAotICAgIDE0LCAyMiwgMzIsIDMsIDIzMywgMTIyLCAxNCwgMjIsIDMyLCAzLCAyMzAsIDE3MiwgMTQsIDIyLCAzMiwgMywgMjI4LCA5MiwgCi0gICAgMTQsIDIyLCAzMiwgMywgMjEzLCAxNDUsIDE0LCAyMiwgMzIsIDMsIDIyNywgNjUsIDE0LCAyMiwgMzIsIDMsIDIyNSwgMjQwLCAKLSAgICAxNCwgMjIsIDMyLCAzLCAyMjMsIDE5MCwgMTQsIDIyLCAzMiwgMywgNDAsIDIyMCwgMTAzLCAxNCwgMjIsIDMyLCAzLCAyMjAsIAotICAgIDEwMywgMTQsIDIyLCAzMiwgMywgMjE3LCAyNDgsIDE0LCAyMiwgMzIsIDMsIDIxNSwgMTI4LCAxNCwgMjIsIDMyLCAzLCAKLSAgICAyMjYsIDksIDE0LCAyMiwgMzIsIDMsIDI1MCwgNDcsIDE0LCAyMiwgMzIsIDMsIDIyNSwgNDYsIDE0LCAyMiwgMzIsIDMsIAotICAgIDIyNywgNjcsIDE0LCAyMiwgMzIsIDIyNiwgMTI1LCAyNDcsIDE4NSwgMTQsIDIyLCAzMiwgMjQ1LCA2NCwgODcsIDE0LCAyMiwgCi0gICAgMzIsIDIxNywgMTMzLCA4NywgMTQsIDIyLCAzMiwgMjM0LCAyMjgsIDg3LCAxNCwgMjIsIDMyLCAyMjYsIDEwLCA4NywgMTQsIAotICAgIDIyLCAzMiwgMjIzLCAxOTEsIDg3LCAxNCwgMjIsIDMyLCAyMjUsIDI0MSwgODcsIDE0LCAzNSwgMjIsIDYsIDI1NCwgNTIsIAotICAgIDE0LCAzNSwgMjIsIDYsIDI1MSwgMjAzLCAxNCwgMzUsIDIyLCA2LCAyNDMsIDgzLCAxNCwgMzUsIDIyLCA2LCAyNDgsIDUsIAotICAgIDE0LCAzNSwgMjIsIDYsIDI0NSwgNjMsIDE0LCAzNSwgMjIsIDYsIDIxMiwgNzgsIDE0LCAzNSwgMjIsIDYsIDI0NSwgMjgsIAotICAgIDE0LCAzNSwgMjIsIDYsIDIxNywgMTMyLCAxNCwgMzUsIDIyLCA2LCAyMzUsIDE4MywgMTQsIDM1LCAyMiwgNiwgMjM0LCAKLSAgICAyMjcsIDE0LCAzNSwgMjIsIDYsIDIzMywgMTIyLCAxNCwgMzUsIDIyLCA2LCAyMzAsIDE3MiwgMTQsIDM1LCAyMiwgNiwgCi0gICAgMjI4LCA5MiwgMTQsIDM1LCAyMiwgNiwgMjEzLCAxNDUsIDE0LCAzNSwgMjIsIDYsIDIyNywgNjUsIDE0LCAzNSwgMjIsIDYsIAotICAgIDIyNSwgMjQwLCAxNCwgMzUsIDIyLCA2LCAyMjMsIDE5MCwgMTQsIDM1LCAyMiwgNiwgMjE3LCAxMzMsIDg3LCAxNCwgMzUsIAotICAgIDIyLCA2LCAyMjAsIDEwMywgMTQsIDM1LCAyMiwgNiwgMjE3LCAyNDgsIDE0LCAzNSwgMjIsIDYsIDIxNSwgMTI4LCAxNCwgCi0gICAgMzUsIDIyLCA2LCAyMjYsIDksIDE0LCAzNSwgMjIsIDYsIDI1MCwgNDcsIDE0LCAzNSwgMjIsIDYsIDIyNSwgNDYsIDE0LCAKLSAgICAzNSwgMjIsIDYsIDIyNywgNjcsIDE0LCAzNSwgMjIsIDIzMCwgMzksIDE0LCAzNSwgMjIsIDMsIDI1NCwgNTIsIDE0LCAzNSwgCi0gICAgMjIsIDMsIDI1MSwgMjAzLCAxNCwgMzUsIDIyLCAzLCAyNDMsIDgzLCAxNCwgMzUsIDIyLCAzLCAyNDgsIDUsIDE0LCAzNSwgCi0gICAgMjIsIDMsIDI0NSwgNjMsIDE0LCAzNSwgMjIsIDMsIDIxMiwgNzgsIDE0LCAzNSwgMjIsIDMsIDI0NSwgMjgsIDE0LCAzNSwgCi0gICAgMjIsIDMsIDIxNywgMTMyLCAxNCwgMzUsIDIyLCAzLCAyMzUsIDE4MywgMTQsIDM1LCAyMiwgMywgMjM0LCAyMjcsIDE0LCAKLSAgICAzNSwgMjIsIDMsIDIzMywgMTIyLCAxNCwgMzUsIDIyLCAzLCAyMzAsIDE3MiwgMTQsIDM1LCAyMiwgMywgMjI4LCA5MiwgMTQsIAotICAgIDM1LCAyMiwgMywgMjEzLCAxNDUsIDE0LCAzNSwgMjIsIDMsIDIyNywgNjUsIDE0LCAzNSwgMjIsIDMsIDIyNSwgMjQwLCAxNCwgCi0gICAgMzUsIDIyLCAzLCAyMjMsIDE5MCwgMTQsIDM1LCAyMiwgMywgNDAsIDIyMCwgMTAzLCAxNCwgMzUsIDIyLCAzLCAyMjAsIAotICAgIDEwMywgMTQsIDM1LCAyMiwgMywgMjE3LCAyNDgsIDE0LCAzNSwgMjIsIDMsIDIxNSwgMTI4LCAxNCwgMzUsIDIyLCAzLCAKLSAgICAyMjYsIDksIDE0LCAzNSwgMjIsIDMsIDI1MCwgNDcsIDE0LCAzNSwgMjIsIDMsIDIyNSwgNDYsIDE0LCAzNSwgMjIsIDMsIAotICAgIDIyNywgNjcsIDE0LCAzNSwgMjIsIDIyNiwgMTI1LCAyNDcsIDE4NSwgMTQsIDM1LCAyMiwgMjQ1LCA2NCwgODcsIDE0LCAzNSwgCi0gICAgMjIsIDIxNywgMTMzLCA4NywgMTQsIDM1LCAyMiwgMjM0LCAyMjgsIDg3LCAxNCwgMzUsIDIyLCAyMjYsIDEwLCA4NywgMTQsIAotICAgIDM1LCAyMiwgMjIzLCAxOTEsIDg3LCAxNCwgMzUsIDIyLCAyMjUsIDI0MSwgODcsIDE0LCAzNSwgMjIsIDMyLCA2LCAyNTQsIAotICAgIDUyLCAxNCwgMzUsIDIyLCAzMiwgNiwgMjUxLCAyMDMsIDE0LCAzNSwgMjIsIDMyLCA2LCAyNDMsIDgzLCAxNCwgMzUsIDIyLCAKLSAgICAzMiwgNiwgMjQ4LCA1LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjQ1LCA2MywgMTQsIDM1LCAyMiwgMzIsIDYsIDIxMiwgNzgsIAotICAgIDE0LCAzNSwgMjIsIDMyLCA2LCAyNDUsIDI4LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjE3LCAxMzIsIDE0LCAzNSwgMjIsIDMyLCAKLSAgICA2LCAyMzUsIDE4MywgMTQsIDM1LCAyMiwgMzIsIDYsIDIzNCwgMjI3LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjMzLCAxMjIsIAotICAgIDE0LCAzNSwgMjIsIDMyLCA2LCAyMzAsIDE3MiwgMTQsIDM1LCAyMiwgMzIsIDYsIDIyOCwgOTIsIDE0LCAzNSwgMjIsIDMyLCAKLSAgICA2LCAyMTMsIDE0NSwgMTQsIDM1LCAyMiwgMzIsIDYsIDIyNywgNjUsIDE0LCAzNSwgMjIsIDMyLCA2LCAyMjUsIDI0MCwgMTQsIAotICAgIDM1LCAyMiwgMzIsIDYsIDIyMywgMTkwLCAxNCwgMzUsIDIyLCAzMiwgNiwgMjE3LCAxMzMsIDg3LCAxNCwgMzUsIDIyLCAzMiwgCi0gICAgNiwgMjIwLCAxMDMsIDE0LCAzNSwgMjIsIDMyLCA2LCAyMTcsIDI0OCwgMTQsIDM1LCAyMiwgMzIsIDYsIDIxNSwgMTI4LCAKLSAgICAxNCwgMzUsIDIyLCAzMiwgNiwgMjI2LCA5LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjUwLCA0NywgMTQsIDM1LCAyMiwgMzIsIDYsIAotICAgIDIyNSwgNDYsIDE0LCAzNSwgMjIsIDMyLCA2LCAyMjcsIDY3LCAxNCwgMzUsIDIyLCAzMiwgMjMwLCAzOSwgMTQsIDM1LCAyMiwgCi0gICAgMzIsIDMsIDI1NCwgNTIsIDE0LCAzNSwgMjIsIDMyLCAzLCAyNTEsIDIwMywgMTQsIDM1LCAyMiwgMzIsIDMsIDI0MywgODMsIAotICAgIDE0LCAzNSwgMjIsIDMyLCAzLCAyNDgsIDUsIDE0LCAzNSwgMjIsIDMyLCAzLCAyNDUsIDYzLCAxNCwgMzUsIDIyLCAzMiwgMywgCi0gICAgMjEyLCA3OCwgMTQsIDM1LCAyMiwgMzIsIDMsIDI0NSwgMjgsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMTcsIDEzMiwgMTQsIDM1LCAKLSAgICAyMiwgMzIsIDMsIDIzNSwgMTgzLCAxNCwgMzUsIDIyLCAzMiwgMywgMjM0LCAyMjcsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMzMsIAotICAgIDEyMiwgMTQsIDM1LCAyMiwgMzIsIDMsIDIzMCwgMTcyLCAxNCwgMzUsIDIyLCAzMiwgMywgMjI4LCA5MiwgMTQsIDM1LCAyMiwgCi0gICAgMzIsIDMsIDIxMywgMTQ1LCAxNCwgMzUsIDIyLCAzMiwgMywgMjI3LCA2NSwgMTQsIDM1LCAyMiwgMzIsIDMsIDIyNSwgMjQwLCAKLSAgICAxNCwgMzUsIDIyLCAzMiwgMywgMjIzLCAxOTAsIDE0LCAzNSwgMjIsIDMyLCAzLCA0MCwgMjIwLCAxMDMsIDE0LCAzNSwgMjIsIAotICAgIDMyLCAzLCAyMjAsIDEwMywgMTQsIDM1LCAyMiwgMzIsIDMsIDIxNywgMjQ4LCAxNCwgMzUsIDIyLCAzMiwgMywgMjE1LCAKLSAgICAxMjgsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMjYsIDksIDE0LCAzNSwgMjIsIDMyLCAzLCAyNTAsIDQ3LCAxNCwgMzUsIDIyLCAKLSAgICAzMiwgMywgMjI1LCA0NiwgMTQsIDM1LCAyMiwgMzIsIDMsIDIyNywgNjcsIDE0LCAzNSwgMjIsIDMyLCAyMjYsIDEyNSwgCi0gICAgMjQ3LCAxODUsIDE0LCAzNSwgMjIsIDMyLCAyNDUsIDY0LCA4NywgMTQsIDM1LCAyMiwgMzIsIDIxNywgMTMzLCA4NywgMTQsIAotICAgIDM1LCAyMiwgMzIsIDIzNCwgMjI4LCA4NywgMTQsIDM1LCAyMiwgMzIsIDIyNiwgMTAsIDg3LCAxNCwgMzUsIDIyLCAzMiwgCi0gICAgMjIzLCAxOTEsIDg3LCAxNCwgMzUsIDIyLCAzMiwgMjI1LCAyNDEsIDg3LCAxNCwgMjIsIDYsIDI0NywgMTc5LCAxNCwgMjIsIAotICAgIDMsIDI0NywgMTc5LCAxNCwgMjIsIDIxLCAyMTIsIDc5LCAxNCwgMjIsIDIxLCAxMTYsIDE0LCAyMiwgMjEsIDEwOSwgMTQsIAotICAgIDIyLCAyMSwgMTY2LCAxNCwgMjIsIDIxLCAxNjMsIDE0LCAyMiwgMjEsIDE4MCwgMTQsIDIyLCAyMSwgMTg5LCAxNCwgMjIsIAotICAgIDIxLCAxOTgsIDE0LCAyMiwgMjEsIDE5NSwgMTQsIDIyLCAyMSwgMjAwLCAxNCwgMTg3LCAyMSwgMjEyLCA3OSwgMTQsIDE4NywgCi0gICAgMjEsIDExNiwgMTQsIDE4NywgMjEsIDEwOSwgMTQsIDE4NywgMjEsIDE2NiwgMTQsIDE4NywgMjEsIDE2MywgMTQsIDE4NywgCi0gICAgMjEsIDE4MCwgMTQsIDE4NywgMjEsIDE4OSwgMTQsIDE4NywgMjEsIDE5OCwgMTQsIDE4NywgMjEsIDE5NSwgMTQsIDE4NywgCi0gICAgMjEsIDIwMCwgMTQsIDM1LCAyMSwgMjEyLCA3OSwgMTQsIDM1LCAyMSwgMTE2LCAxNCwgMzUsIDIxLCAxMDksIDE0LCAzNSwgCi0gICAgMjEsIDE2NiwgMTQsIDM1LCAyMSwgMTYzLCAxNCwgMzUsIDIxLCAxODAsIDE0LCAzNSwgMjEsIDE4OSwgMTQsIDM1LCAyMSwgCi0gICAgMTk4LCAxNCwgMzUsIDIxLCAxOTUsIDE0LCAzNSwgMjEsIDIwMCwgMTQsIDM1LCAyMiwgMjEsIDIxMiwgNzksIDE0LCAzNSwgCi0gICAgMjIsIDIxLCAxMTYsIDE0LCAzNSwgMjIsIDIxLCAxMDksIDE0LCAzNSwgMjIsIDIxLCAxNjYsIDE0LCAzNSwgMjIsIDIxLCAKLSAgICAxNjMsIDE0LCAzNSwgMjIsIDIxLCAxODAsIDE0LCAzNSwgMjIsIDIxLCAxODksIDE0LCAzNSwgMjIsIDIxLCAxOTgsIDE0LCAKLSAgICAzNSwgMjIsIDIxLCAxOTUsIDE0LCAzNSwgMjIsIDIxLCAyMDAsIDE0LCAyMzAsIDIwOCwgMjEsIDIxMiwgNzksIDE0LCAyMzAsIAotICAgIDIwOCwgMjEsIDExNiwgMTQsIDIzMCwgMjA4LCAyMSwgMTA5LCAxNCwgMjMwLCAyMDgsIDIxLCAxNjYsIDE0LCAyMzAsIDIwOCwgCi0gICAgMjEsIDE2MywgMTQsIDIzMCwgMjA4LCAyMSwgMTgwLCAxNCwgMjMwLCAyMDgsIDIxLCAxODksIDE0LCAyMzAsIDIwOCwgMjEsIAotICAgIDE5OCwgMTQsIDIzMCwgMjA4LCAyMSwgMTk1LCAxNCwgMjMwLCAyMDgsIDIxLCAyMDAsIDIzMiwgMTAsIDg1LCAyNDUsIDE3NiwgCi0gICAgMjEzLCAyMjQsIDIzMiwgMTAsIDg1LCAyMTksIDIxNSwgMjEzLCAyMjQsIDIzMiwgMTAsIDg1LCAyMTMsIDI1MCwgMjEzLCAKLSAgICAyMjQsIDIzMiwgMTAsIDg1LCAyMjgsIDE2NywgMjEzLCAyMjQsIDIzMiwgMTAsIDg1LCAyMjQsIDQsIDI0NiwgNTAsIDIzMiwgCi0gICAgMTAsIDg1LCAyNDIsIDEwNCwgMjQ2LCA1MCwgMjMyLCAxMCwgODUsIDY3LCAyNDYsIDUwLCAyMzIsIDEwLCA4NSwgMTIyLCAKLSAgICA2NSwgMjUwLCA3NywgMjMyLCAxMCwgODUsIDExNywgNjUsIDI1MCwgNzcsIDIzMiwgMTAsIDg1LCAxMzMsIDY1LCAyNTAsIAotICAgIDc3LCAyMzIsIDEwLCA4NSwgMjQzLCAyMzcsIDY1LCAyNTAsIDc3LCAyMzIsIDEwLCA4NSwgMjQ0LCA1MCwgNjUsIDI1MCwgCi0gICAgNzcsIDIzMiwgMTAsIDg1LCAyMjAsIDUzLCA2NSwgMjUwLCA3NywgMjMyLCAxMCwgODUsIDIyMSwgNDMsIDY1LCAyNTAsIDc3LCAKLSAgICAyMzIsIDEwLCA4NSwgMjQ1LCAxNTAsIDY1LCAyNTAsIDc3LCAyMzIsIDEwLCA4NSwgMjI5LCAzMSwgNjUsIDI1MCwgNzcsIAotICAgIDIzMiwgMTAsIDg1LCAxMjIsIDY1LCAyNTIsIDcyLCAyMzIsIDEwLCA4NSwgMTE3LCA2NSwgMjUyLCA3MiwgMjMyLCAxMCwgCi0gICAgODUsIDEzMywgNjUsIDI1MiwgNzIsIDIzMiwgMTAsIDg1LCAyNDMsIDIzNywgNjUsIDI1MiwgNzIsIDIzMiwgMTAsIDg1LCAKLSAgICAyNDQsIDUwLCA2NSwgMjUyLCA3MiwgMjMyLCAxMCwgODUsIDIyMCwgNTMsIDY1LCAyNTIsIDcyLCAyMzIsIDEwLCA4NSwgCi0gICAgMjIxLCA0MywgNjUsIDI1MiwgNzIsIDIzMiwgMTAsIDg1LCAyNDUsIDE1MCwgNjUsIDI1MiwgNzIsIDIzMiwgMTAsIDg1LCAKLSAgICAyMjksIDMxLCA2NSwgMjUyLCA3MiwgMjMyLCAxMCwgODUsIDEyMiwgNjUsIDI0OSwgMjI3LCAyMzIsIDEwLCA4NSwgMTE3LCAKLSAgICA2NSwgMjQ5LCAyMjcsIDIzMiwgMTAsIDg1LCAxMzMsIDY1LCAyNDksIDIyNywgMjMyLCAxMCwgODUsIDI0MywgMjM3LCA2NSwgCi0gICAgMjQ5LCAyMjcsIDIzMiwgMTAsIDg1LCAyNDQsIDUwLCA2NSwgMjQ5LCAyMjcsIDIzMiwgMTAsIDg1LCAyMjAsIDUzLCA2NSwgCi0gICAgMjQ5LCAyMjcsIDIzMiwgMTAsIDg1LCAyMjEsIDQzLCA2NSwgMjQ5LCAyMjcsIDIzMiwgMTAsIDg1LCAyNDUsIDE1MCwgNjUsIAotICAgIDI0OSwgMjI3LCAyMzIsIDEwLCA4NSwgMjI5LCAzMSwgNjUsIDI0OSwgMjI3LCAyMzIsIDEwLCA4NSwgMjI1LCAxNTksIDIzMiwgCi0gICAgMTAsIDg1LCAyMjcsIDIyLCAyMzIsIDEwLCA4NSwgMjUyLCA3MywgMjMyLCAxMCwgODUsIDI1MCwgNywgMjMyLCAxMCwgODUsIAotICAgIDIxOSwgMTcxLCAyMzIsIDEwLCA4NSwgMjE4LCAyNDAsIDIzMiwgMTAsIDg1LCAyNTMsIDk1LCAyMzIsIDEwLCA4NSwgMjEzLCAKLSAgICAyMTcsIDIzMiwgMTAsIDg1LCAyMzUsIDY1LCAyMzIsIDEwLCA4NSwgMjUyLCAxMDEsIDEyNywgODUsIDE5OSwgMjUyLCAxMDEsIAotICAgIDEyNywgODUsIDI0MSwgMzAsIDEyNywgODUsIDI0MSwgMjksIDEyNywgODUsIDI0MSwgMjgsIDEyNywgODUsIDI0MSwgMjcsIAotICAgIDEyNywgODUsIDI0MSwgMjYsIDEyNywgODUsIDI0MSwgMjUsIDEyNywgODUsIDI0MSwgMjQsIDEyNywgODUsIDI0MSwgMjMsIAotICAgIDEyNywgODUsIDI0MSwgMjIsIDEyNywgODUsIDI0MSwgMjEsIDEyNywgODUsIDI0MSwgMjAsIDEyNywgODUsIDI0MSwgMTksIAotICAgIDEyNywgODUsIDI0MSwgMTgsIDEyNywgODUsIDI0MSwgMTcsIDEyNywgODUsIDI0MSwgMTYsIDEyNywgODUsIDI0MSwgMTUsIAotICAgIDEyNywgODUsIDI0MSwgMTQsIDEyNywgODUsIDI0MSwgMTMsIDEyNywgODUsIDI0MSwgMTIsIDEyNywgODUsIDI0MSwgMTEsIAotICAgIDEyNywgODUsIDI0MSwgMTAsIDEyNywgODUsIDI0MSwgOSwgMTI3LCA4NSwgMjQxLCA4LCAxMjcsIDg1LCAyNDEsIDcsIDEyNywgCi0gICAgODUsIDI0MSwgNiwgMTI3LCA4NSwgMjQxLCA1LCAxMjcsIDg1LCAyNDEsIDQsIDEyNywgODUsIDI0MSwgMywgMTI3LCA4NSwgCi0gICAgMjQxLCAyLCAxMjcsIDg1LCAyNDEsIDEsIDEyNywgODUsIDI0MSwgMCwgMTI3LCA4NSwgMjQwLCAyNTUsIDEyNywgODUsIAotICAgIDI0MCwgMjU0LCAxMjcsIDg1LCAyNDAsIDI1MywgMTI3LCA4NSwgMjQwLCAyNTIsIDEyNywgODUsIDI0MCwgMjUxLCAxMjcsIAotICAgIDg1LCAyNDAsIDI1MCwgMTI3LCA4NSwgMjQwLCAyNDksIDEyNywgODUsIDI0MCwgMjQ4LCAxMjcsIDg1LCAyNDAsIDI0NywgCi0gICAgMTI3LCA4NSwgMjQwLCAyNDYsIDEyNywgODUsIDI0MCwgMjQ1LCAxMjcsIDg1LCAyNDAsIDI0NCwgMTI3LCA4NSwgMjQwLCAKLSAgICAyNDMsIDEyNywgODUsIDI0MCwgMjQyLCAxMjcsIDg1LCAyNDAsIDI0MSwgMTI3LCA4NSwgMjQwLCAyNDAsIDEyNywgODUsIAotICAgIDI0MCwgMjM5LCAxMjcsIDg1LCAyNDAsIDIzOCwgMTI3LCA4NSwgNzEsIDI1MiwgMTAxLCAxMjcsIDg1LCAyMTQsIDIxNSwgCi0gICAgMTI3LCA4NSwgMjE0LCAyMTQsIDEyNywgODUsIDIxNCwgMjEzLCAxMjcsIDg1LCAyMTQsIDIxMiwgMTI3LCA4NSwgMjE0LCAKLSAgICAyMTEsIDEyNywgODUsIDIxNCwgMjEwLCAxMjcsIDg1LCAyMTQsIDIwOSwgMTI3LCA4NSwgMjE0LCAyMDgsIDEyNywgODUsIAotICAgIDIxNCwgMjA3LCAxMjcsIDg1LCAyMTQsIDIwNiwgMTI3LCA4NSwgMjE0LCAyMDUsIDEyNywgODUsIDIxNCwgMjA0LCAxMjcsIAotICAgIDg1LCAyMTQsIDIwMywgMTI3LCA4NSwgMjE0LCAyMDIsIDEyNywgODUsIDIxNCwgMjAxLCAxMjcsIDg1LCAyMTQsIDIwMCwgCi0gICAgMTI3LCA4NSwgMjE0LCAxOTksIDEyNywgODUsIDIxNCwgMTk4LCAxMjcsIDg1LCAyMTQsIDE5NywgMTI3LCA4NSwgMjE0LCAKLSAgICAxOTYsIDEyNywgODUsIDIxNCwgMTk1LCAxMjcsIDg1LCAyMTQsIDE5NCwgMTI3LCA4NSwgMjE0LCAxOTMsIDEyNywgODUsIAotICAgIDIxNCwgMTkyLCAxMjcsIDg1LCAyMTQsIDE5MSwgMTI3LCA4NSwgMjE0LCAxOTAsIDEyNywgODUsIDIxNCwgMTg5LCAxMjcsIAotICAgIDg1LCAyMTQsIDE4OCwgMTI3LCA4NSwgMjE0LCAxODcsIDEyNywgODUsIDIxNCwgMTg2LCAxMjcsIDg1LCAyMTQsIDE4NSwgCi0gICAgMTI3LCA4NSwgMjE0LCAxODQsIDEyNywgODUsIDIxNCwgMTgzLCAxMjcsIDg1LCAyMTQsIDE4MiwgMTI3LCA4NSwgMjE0LCAKLSAgICAxODEsIDEyNywgODUsIDIxNCwgMTgwLCAxMjcsIDg1LCAyMTQsIDE3OSwgMTI3LCA4NSwgMjE0LCAxNzgsIDEyNywgODUsIAotICAgIDIxNCwgMTc3LCAxMjcsIDg1LCAyMTQsIDE3NiwgMTI3LCA4NSwgMjE0LCAxNzUsIDEyNywgODUsIDIxNCwgMTc0LCAxMjcsIAotICAgIDg1LCAyMTQsIDE3MywgMTI3LCA4NSwgMjE0LCAxNzIsIDEyNywgODUsIDIxNCwgMTcxLCAxMjcsIDg1LCAyMTQsIDE3MCwgCi0gICAgMTI3LCA4NSwgMjE0LCAxNjksIDEyNywgODUsIDIxNCwgMTY4LCAxMjcsIDg1LCAyMTQsIDE2NywgMjI1LCAxNjUsIDI1MCwgCi0gICAgMTc1LCAyNTIsIDEwMSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyNTQsIDE2OSwgNjUsIDIxOSwgMjAzLCAyMjUsIDE2NSwgMjUwLCAKLSAgICAxNzUsIDExNywgNjUsIDIxOSwgMjAzLCAyMjUsIDE2NSwgMjUwLCAxNzUsIDEzMywgNjUsIDIxOSwgMjAzLCAyMjUsIDE2NSwgCi0gICAgMjUwLCAxNzUsIDI0MywgMjM3LCA2NSwgMjE5LCAyMDMsIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjQ0LCA1MCwgNjUsIDIxOSwgCi0gICAgMjAzLCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyMCwgNTMsIDY1LCAyMTksIDIwMywgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMjEsIAotICAgIDQzLCA2NSwgMjE5LCAyMDMsIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjQ1LCAxNTAsIDY1LCAyMTksIDIwMywgMjI1LCAxNjUsIAotICAgIDI1MCwgMTc1LCAyMjksIDMxLCA2NSwgMjE5LCAyMDMsIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjE3LCAyMDEsIDY1LCAyMTksIAotICAgIDIwMywgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMzUsIDEzNywgNjUsIDIxOSwgMjAzLCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIzNCwgCi0gICAgNDAsIDY1LCAyMTksIDIwMywgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMjQsIDE2MCwgNjUsIDIxOSwgMjAzLCAyMjUsIDE2NSwgCi0gICAgMjUwLCAxNzUsIDIzNCwgODgsIDY1LCAyMTksIDIwMywgMjI1LCAxNjUsIDI1MCwgMTc1LCAyNTQsIDE2OSwgNjUsIDI0MSwgCi0gICAgMjA5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDExNywgNjUsIDI0MSwgMjA5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDEzMywgNjUsIAotICAgIDI0MSwgMjA5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDI0MywgMjM3LCA2NSwgMjQxLCAyMDksIDIyNSwgMTY1LCAyNTAsIDE3NSwgCi0gICAgMjQ0LCA1MCwgNjUsIDI0MSwgMjA5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyMCwgNTMsIDY1LCAyNDEsIDIwOSwgMjI1LCAKLSAgICAxNjUsIDI1MCwgMTc1LCAyMjEsIDQzLCA2NSwgMjQxLCAyMDksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjQ1LCAxNTAsIDY1LCAKLSAgICAyNDEsIDIwOSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMjksIDMxLCA2NSwgMjQxLCAyMDksIDIyNSwgMTY1LCAyNTAsIDE3NSwgCi0gICAgMjE3LCAyMDEsIDY1LCAyNDEsIDIwOSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMzUsIDEzNywgNjUsIDI0MSwgMjA5LCAyMjUsIAotICAgIDE2NSwgMjUwLCAxNzUsIDIzNCwgNDAsIDY1LCAyNDEsIDIwOSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMjQsIDE2MCwgNjUsIAotICAgIDI0MSwgMjA5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIzNCwgODgsIDY1LCAyNDEsIDIwOSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAKLSAgICAyNTQsIDE2OSwgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDExNywgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgCi0gICAgMjUwLCAxNzUsIDEzMywgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDI0MywgMjM3LCA2NSwgMjQ3LCAxOTksIAotICAgIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjQ0LCA1MCwgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyMCwgNTMsIAotICAgIDY1LCAyNDcsIDE5OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMjEsIDQzLCA2NSwgMjQ3LCAxOTksIDIyNSwgMTY1LCAyNTAsIAotICAgIDE3NSwgMjQ1LCAxNTAsIDY1LCAyNDcsIDE5OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMjksIDMxLCA2NSwgMjQ3LCAxOTksIAotICAgIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjE3LCAyMDEsIDY1LCAyNDcsIDE5OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMzUsIDEzNywgCi0gICAgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIzNCwgNDAsIDY1LCAyNDcsIDE5OSwgMjI1LCAxNjUsIDI1MCwgCi0gICAgMTc1LCAyMjQsIDE2MCwgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIzNCwgODgsIDY1LCAyNDcsIDE5OSwgCi0gICAgMjI1LCAxNjUsIDI1MCwgMTc1LCA4MywgMjM1LCA2NSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyNTQsIDE2OSwgNjUsIDI0OSwgCi0gICAgMTc5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDExNywgNjUsIDI0OSwgMTc5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDEzMywgNjUsIAotICAgIDI0OSwgMTc5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDI0MywgMjM3LCA2NSwgMjQ5LCAxNzksIDIyNSwgMTY1LCAyNTAsIDE3NSwgCi0gICAgMjQ0LCA1MCwgNjUsIDI0OSwgMTc5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyMCwgNTMsIDY1LCAyNDksIDE3OSwgMjI1LCAKLSAgICAxNjUsIDI1MCwgMTc1LCAyMjEsIDQzLCA2NSwgMjQ5LCAxNzksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjQ1LCAxNTAsIDY1LCAKLSAgICAyNDksIDE3OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMjksIDMxLCA2NSwgMjQ5LCAxNzksIDIyNSwgMTY1LCAyNTAsIDE3NSwgCi0gICAgMjE3LCAyMDEsIDY1LCAyNDksIDE3OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMzUsIDEzNywgNjUsIDI0OSwgMTc5LCAyMjUsIAotICAgIDE2NSwgMjUwLCAxNzUsIDIzNCwgNDAsIDY1LCAyNDksIDE3OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMjQsIDE2MCwgNjUsIAotICAgIDI0OSwgMTc5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIzNCwgODgsIDY1LCAyNDksIDE3OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAKLSAgICA2NywgMjM1LCA2NSwgMjEsIDIxMiwgODAsIDI0MywgMjAwLCAyMTksIDY5LCAyMSwgMjEyLCA4MCwgMjQ5LCAxNTcsIDIxLCAKLSAgICAxMjIsIDI0OSwgMTU3LCAyMSwgMTE3LCAyNDksIDE1NywgMjEsIDEzMywgMjQ5LCAxNTcsIDIxLCAyNDMsIDIzNywgMjQ5LCAKLSAgICAxNTcsIDIxLCAyNDQsIDUwLCAyNDksIDE1NywgMjEsIDIyMCwgNTMsIDI0OSwgMTU3LCAyMSwgMjIxLCA0MywgMjQ5LCAxNTcsIAotICAgIDIxLCAyNDUsIDE1MCwgMjQ5LCAxNTcsIDIxLCAyMjksIDMxLCAyNDksIDE1NywgODYsIDcsIDYsIDEsIDYxLCA4NiwgNywgNiwgCi0gICAgMSwgMjUzLCA3NCwgODYsIDcsIDYsIDEsIDI1MCwgMjUyLCA4NiwgNywgNiwgMSwgMjQ5LCAzLCA4NiwgNywgNiwgMSwgNzQsIAotICAgIDg2LCA3LCA2LCAxLCAyNDQsIDIzMCwgODYsIDcsIDYsIDEsIDI0MywgMTc3LCA4NiwgNywgNiwgMSwgMjQyLCA0MSwgODYsIAotICAgIDcsIDYsIDEsIDcyLCA4NiwgNywgNiwgMSwgMjM1LCAxNDIsIDg2LCA3LCA2LCAxLCAyMzUsIDI3LCA4NiwgNywgNiwgMSwgCi0gICAgMTUwLCA4NiwgNywgNiwgMSwgMTgzLCA4NiwgNywgNiwgMSwgMjA0LCA4NiwgNywgNiwgMSwgNzUsIDg2LCA3LCA2LCAxLCAKLSAgICAyMjYsIDIyOSwgODYsIDcsIDYsIDEsIDIyNCwgMjQwLCA4NiwgNywgNiwgMSwgMTQ5LCA4NiwgNywgNiwgMSwgMTk3LCA4NiwgCi0gICAgNywgNiwgMSwgMjE4LCA5OSwgODYsIDcsIDYsIDEsIDY5LCA4NiwgNywgNiwgMSwgMjE1LCA3OSwgODYsIDcsIDYsIDEsIAotICAgIDIxNCwgODIsIDg2LCA3LCA2LCAxLCAyMTMsIDE2NiwgODYsIDcsIDYsIDEsIDIxMywgMTA1LCA4NiwgNywgNiwgMSwgMjEyLCAKLSAgICAxNTIsIDIxNiwgMjE5LCAyMjAsIDIzMywgMjUxLCA4NCwgNywgNiwgMSwgMTk3LCAzNiwgMzIsIDcsIDYsIDEsIDI1MCwgCi0gICAgMjUyLCAzNiwgMzIsIDcsIDYsIDEsIDE0OSwgMzYsIDI1MCwgMTI1LCAzNiwgMjEzLCAxNjgsIDkxLCA3LCA2LCAxLCA2MSwgCi0gICAgOTEsIDcsIDYsIDEsIDI1MywgNzQsIDkxLCA3LCA2LCAxLCAyNTAsIDI1MiwgOTEsIDcsIDYsIDEsIDI0OSwgMywgOTEsIDcsIAotICAgIDYsIDEsIDc0LCA5MSwgNywgNiwgMSwgMjQ0LCAyMzAsIDkxLCA3LCA2LCAxLCAyNDMsIDE3NywgOTEsIDcsIDYsIDEsIDI0MiwgCi0gICAgNDEsIDkxLCA3LCA2LCAxLCA3MiwgOTEsIDcsIDYsIDEsIDIzNSwgMTQyLCA5MSwgNywgNiwgMSwgMjM1LCAyNywgOTEsIDcsIAotICAgIDYsIDEsIDE1MCwgOTEsIDcsIDYsIDEsIDE4MywgOTEsIDcsIDYsIDEsIDIwNCwgOTEsIDcsIDYsIDEsIDc1LCA5MSwgNywgNiwgCi0gICAgMSwgMjI2LCAyMjksIDkxLCA3LCA2LCAxLCAyMjQsIDI0MCwgOTEsIDcsIDYsIDEsIDE0OSwgOTEsIDcsIDYsIDEsIDE5NywgCi0gICAgOTEsIDcsIDYsIDEsIDIxOCwgOTksIDkxLCA3LCA2LCAxLCA2OSwgOTEsIDcsIDYsIDEsIDIxNSwgNzksIDkxLCA3LCA2LCAxLCAKLSAgICAyMTQsIDgyLCA5MSwgNywgNiwgMSwgMjEzLCAxNjYsIDkxLCA3LCA2LCAxLCAyMTMsIDEwNSwgOTEsIDcsIDYsIDEsIDIxMiwgCi0gICAgMTUyLCA5MSwgMjQwLCAxOTMsIDkxLCAyMzAsIDEyMCwgOTEsIDIyMiwgMTAyLCA5MSwgMjE5LCAxNTgsIDkxLCAyMjUsIDk4LCAKLSAgICA5MSwgMjE0LCA3LCAxNDYsIDM2LCA3LCA2LCAxLCA2MSwgMTQ2LCAzNiwgNywgNiwgMSwgMjUzLCA3NCwgMTQ2LCAzNiwgNywgCi0gICAgNiwgMSwgMjUwLCAyNTIsIDE0NiwgMzYsIDcsIDYsIDEsIDI0OSwgMywgMTQ2LCAzNiwgNywgNiwgMSwgNzQsIDE0NiwgMzYsIAotICAgIDcsIDYsIDEsIDI0NCwgMjMwLCAxNDYsIDM2LCA3LCA2LCAxLCAyNDMsIDE3NywgMTQ2LCAzNiwgNywgNiwgMSwgMjQyLCA0MSwgCi0gICAgMTQ2LCAzNiwgNywgNiwgMSwgNzIsIDE0NiwgMzYsIDcsIDYsIDEsIDIzNSwgMTQyLCAxNDYsIDM2LCA3LCA2LCAxLCAyMzUsIAotICAgIDI3LCAxNDYsIDM2LCA3LCA2LCAxLCAxNTAsIDE0NiwgMzYsIDcsIDYsIDEsIDE4MywgMTQ2LCAzNiwgNywgNiwgMSwgMjA0LCAKLSAgICAxNDYsIDM2LCA3LCA2LCAxLCA3NSwgMTQ2LCAzNiwgNywgNiwgMSwgMjI2LCAyMjksIDE0NiwgMzYsIDcsIDYsIDEsIDIyNCwgCi0gICAgMjQwLCAxNDYsIDM2LCA3LCA2LCAxLCAxNDksIDE0NiwgMzYsIDcsIDYsIDEsIDE5NywgMTQ2LCAzNiwgNywgNiwgMSwgMjE4LCAKLSAgICA5OSwgMTQ2LCAzNiwgNywgNiwgMSwgNjksIDE0NiwgMzYsIDcsIDYsIDEsIDIxNSwgNzksIDE0NiwgMzYsIDcsIDYsIDEsIAotICAgIDIxNCwgODIsIDE0NiwgMzYsIDcsIDYsIDEsIDIxMywgMTY2LCAxNDYsIDM2LCA3LCA2LCAxLCAyMTMsIDEwNSwgMTQ2LCAzNiwgCi0gICAgNywgNiwgMSwgMjEyLCAxNTIsIDE0NiwgOTEsIDcsIDYsIDEsIDYxLCAxNDYsIDkxLCA3LCA2LCAxLCAyNTMsIDc0LCAxNDYsIAotICAgIDkxLCA3LCA2LCAxLCAyNTAsIDI1MiwgMTQ2LCA5MSwgNywgNiwgMSwgMjQ5LCAzLCAxNDYsIDkxLCA3LCA2LCAxLCA3NCwgCi0gICAgMTQ2LCA5MSwgNywgNiwgMSwgMjQ0LCAyMzAsIDE0NiwgOTEsIDcsIDYsIDEsIDI0MywgMTc3LCAxNDYsIDkxLCA3LCA2LCAxLCAKLSAgICAyNDIsIDQxLCAxNDYsIDkxLCA3LCA2LCAxLCA3MiwgMTQ2LCA5MSwgNywgNiwgMSwgMjM1LCAxNDIsIDE0NiwgOTEsIDcsIDYsIAotICAgIDEsIDIzNSwgMjcsIDE0NiwgOTEsIDcsIDYsIDEsIDE1MCwgMTQ2LCA5MSwgNywgNiwgMSwgMTgzLCAxNDYsIDkxLCA3LCA2LCAKLSAgICAxLCAyMDQsIDE0NiwgOTEsIDcsIDYsIDEsIDc1LCAxNDYsIDkxLCA3LCA2LCAxLCAyMjYsIDIyOSwgMTQ2LCA5MSwgNywgNiwgCi0gICAgMSwgMjI0LCAyNDAsIDE0NiwgOTEsIDcsIDYsIDEsIDE0OSwgMTQ2LCA5MSwgNywgNiwgMSwgMTk3LCAxNDYsIDkxLCA3LCA2LCAKLSAgICAxLCAyMTgsIDk5LCAxNDYsIDkxLCA3LCA2LCAxLCA2OSwgMTQ2LCA5MSwgNywgNiwgMSwgMjE1LCA3OSwgMTQ2LCA5MSwgNywgCi0gICAgNiwgMSwgMjE0LCA4MiwgMTQ2LCA5MSwgNywgNiwgMSwgMjEzLCAxNjYsIDE0NiwgOTEsIDcsIDYsIDEsIDIxMywgMTA1LCAKLSAgICAxNDYsIDkxLCA3LCA2LCAxLCAyMTIsIDE1MiwgMjQ5LCA2OCwgMTQ2LCA5MSwgNywgNiwgMSwgMjI2LCAyMjksIDE0NiwgOTEsIAotICAgIDI0MCwgMTA2LCAxNDYsIDkxLCAxOTMsIDE0NiwgOTEsIDIyMiwgMjAyLCAxNDYsIDkxLCAyNTQsIDE4NSwgMTQ2LCA5MSwgCi0gICAgMjE0LCA3LCA0MSwgMjQ3LCAxMTYsIDkxLCAyNDksIDIxNiwgOTEsIDI0OSwgMTA5LCA5MSwgMjQzLCAyMjIsIDkxLCAyNDAsIAotICAgIDk4LCA5MSwgMjI5LCAxNjgsIDkxLCAyMjksIDE2MSwgOTEsIDIyNywgODAsIDkxLCAyMTksIDIyMiwgOTEsIDExNCwgMiwgCi0gICAgMjQ0LCAyNTQsIDc3LCA5MSwgMjE0LCAxMDAsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDYxLCAyMjMsIDI1MywgMjM1LCAKLSAgICAyMzYsIDE2LCAxLCAyNTMsIDc0LCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAyNTAsIDI1MiwgMjIzLCAyNTMsIDIzNSwgCi0gICAgMjM2LCAxNiwgMSwgMjQ5LCAzLCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCA3NCwgMjIzLCAyNTMsIDIzNSwgMjM2LCAKLSAgICAxNiwgMSwgMjQ0LCAyMzAsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDI0MywgMTc3LCAyMjMsIDI1MywgMjM1LCAyMzYsIAotICAgIDE2LCAxLCAyNDIsIDQxLCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCA3MiwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgCi0gICAgMjM1LCAxNDIsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDIzNSwgMjcsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIAotICAgIDE1MCwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgMTgzLCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAyMDQsIDIyMywgCi0gICAgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDc1LCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAyMjYsIDIyOSwgMjIzLCAyNTMsIAotICAgIDIzNSwgMjM2LCAxNiwgMSwgMjI0LCAyNDAsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDE0OSwgMjIzLCAyNTMsIDIzNSwgCi0gICAgMjM2LCAxNiwgMSwgMTk3LCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAyMTgsIDk5LCAyMjMsIDI1MywgMjM1LCAyMzYsIAotICAgIDE2LCAxLCA2OSwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgMjE1LCA3OSwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgCi0gICAgMjE0LCA4MiwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgMjEzLCAxNjYsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIAotICAgIDIxMywgMTA1LCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAyMTIsIDE1MiwgNDEsIDE0MiwgMjQxLCA0OSwgOTEsIDU2LCAKLSAgICAyMzQsIDI3LCA5MSwgNTYsIDIyMiwgMjAyLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNDMsIDkxLCA5LCAyMTUsIDE0OCwgCi0gICAgMjM4LCA0NywgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDU1LCA5MSwgNTYsIDI0OCwgNDEsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAKLSAgICA2MiwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDQ5LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgMjEsIDkxLCA5LCAyMTUsIDE0OCwgCi0gICAgMjM4LCA0OCwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDYxLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgMzUsIDkxLCA5LCAyMTUsIAotICAgIDE0OCwgMjM4LCAyOCwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDM3LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNTgsIDkxLCA5LCAKLSAgICAyMTUsIDE0OCwgMjM4LCA0NCwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDYwLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgMzYsIAotICAgIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA1OSwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDIyLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgCi0gICAgMjcsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAyMCwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDUwLCA5MSwgOSwgMjE1LCAxNDgsIAotICAgIDIzOCwgNTIsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAzMCwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDQxLCA5MSwgOSwgMjE1LCAKLSAgICAxNDgsIDIzOCwgMzksIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA2NSwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDY0LCA5MSwgOSwgCi0gICAgMjE1LCAxNDgsIDIzOCwgMTgsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA0NSwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDYzLCAKLSAgICA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNTQsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA0MCwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIAotICAgIDE5LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNDIsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAyNCwgOTEsIDksIDIxNSwgMTQ4LCAKLSAgICAyMzgsIDIzLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNTMsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAzMSwgOTEsIDksIDIxNSwgCi0gICAgMTQ4LCAyMzgsIDMzLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgMzQsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAyNiwgOTEsIDksIAotICAgIDIxNSwgMTQ4LCAyMzgsIDU3LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNTEsIDIxNiwgMjE5LCAyMjAsIDIzMywgMjUxLCA4NCwgCi0gICAgOSwgMjE1LCAxNDgsIDIzOCwgMzIsIDIxNiwgMjE5LCAyMjAsIDIzMywgMjUxLCA4NCwgOSwgMjE1LCAxNDgsIDIzOCwgNjQsIAotICAgIDIxNiwgMjE5LCAyMjAsIDIzMywgMjUxLCA4NCwgOSwgMjE1LCAxNDgsIDIzOCwgNjIsIDIxNiwgMjE5LCAyMjAsIDIzMywgCi0gICAgMjUxLCA4NCwgOSwgMjE1LCAxNDgsIDIzOCwgNDYsIDIxNiwgMjE5LCAyMjAsIDIzMywgMjUxLCA4NCwgOSwgMjE1LCAxNDgsIAotICAgIDIzOCwgMjksIDIxNiwgMjE5LCAyMjAsIDIzMywgMjUxLCA4NCwgOSwgMjE1LCAxNDgsIDIzOCwgNDIsIDIxNiwgMjE5LCAKLSAgICAyMjAsIDIzMywgMjUxLCA4NCwgOSwgMjE1LCAxNDgsIDIzOCwgMjUsIDIxNiwgMjE5LCAyMjAsIDIzMywgMjUxLCA4NCwgOSwgCi0gICAgMjE1LCAxNDgsIDIzOCwgNTYsIDIxNiwgMjE5LCAyMjAsIDIzMywgMjUxLCA4NCwgOSwgMjE1LCAxNDgsIDIzOCwgMzgsIDM2LCAKLSAgICAxNDMsIDI1NCwgMTUwLCAzNiwgMTQzLCAyNTQsIDE3MiwgMjQ5LCAxNCwgMjQ0LCAxMSwgMjQ5LCAxOTMsIDIxNSwgMTY0LCAKLSAgICAyMjksIDQ0LCAyLCAyMTksIDkyLCAyMTgsIDIzMywgMTEwLCAyMzAsIDE4NCwgMjE4LCAyMzIsIDI0OSwgMjE5LCAyNTMsIAotICAgIDEyMywgMjQ2LCA5LCAyMTgsIDIzMSwgMTEwLCAyNTEsIDQ3LCAyMjQsIDQ5LCAyNTEsIDY4LCAyNTMsIDEyMywgMjI5LCA0MywgCi0gICAgMjE0LCAyNSwgMjE0LCAxOSwgMjE0LCAxMTIsIDIzMSwgOCwgMjE0LCA5LCAyNDUsIDE4MCwgMjQyLCAxNTcsIDI0NSwgMTIsIAotICAgIDI0NSwgMTgwLCAyNDIsIDE1NywgMjU0LCAzNywgMjQ1LCAxODAsIDI0MiwgMTU3LCAyNTMsIDE0MCwgMjQyLCAxNTcsIDIsIAotICAgIDIzMSwgMTE1LCAxNTYsIDIzMCwgMTk5LCA4NywgMjE0LCAxMSwgMjQ5LCA3NywgMjMwLCAxOTksIDg3LCAyNDQsIDYxLCAKLSAgICAyMjQsIDE2NywgMjMwLCAxOTksIDg3LCAyMTQsIDExLCAyNDIsIDE4NiwgMjMwLCAxOTksIDg3LCAyNDMsIDIwMCwgMjMwLCAKLSAgICAxOTksIDg3LCAyMTQsIDM2LCAyNDIsIDE4NiwgMjMwLCAxOTksIDg3LCAyMzMsIDEwMywgMjI0LCAxNjcsIDIzMCwgMTk5LCAKLSAgICA4NywgMjE0LCAzNiwgMjQ5LCA3NywgMjMwLCAxOTksIDg3LCAyNDksIDc3LCAyMzAsIDE5OCwgMTU2LCAyMzAsIDE5OSwgMiwgCi0gICAgMjQ0LCAxNTgsIDI0NCwgNjEsIDIyNCwgMTY3LCAyMzAsIDE5OSwgMiwgMjQ0LCAxNTgsIDIzMywgMTAzLCAyMjQsIDE2NywgCi0gICAgMjMwLCAxOTksIDIsIDI0NCwgMTU4LCAyNDMsIDIwMCwgMjMwLCAxOTksIDIsIDI0NCwgMTU4LCAyMTgsIDIzOSwgMiwgMjQ0LCAKLSAgICAxNTgsIDI0MiwgMTU1LCAyMTksIDk1LCAyMjAsIDE3OSwgMjE5LCA5NSwgMjUwLCA1MywgMjIyLCA4NywgMjQ1LCA2LCAyMTYsIAotICAgIDE5MywgMjQ4LCAzNSwgMjE2LCAxOTMsIDIyNiwgMTg2LCAyMTYsIDE5MywgMjUwLCAyMTMsIDIxNiwgNzMsIDI1MCwgNTUsIAotICAgIDI1MSwgMTMzLCAyMjMsIDkzLCAyNDEsIDE2NCwgMjE4LCAyMzYsIDI1MSwgMTMzLCAyNDUsIDE4NCwgNjUsIDIzMiwgMCwgCi0gICAgMjQ1LCAxODQsIDY1LCAyMjMsIDE4NCwgMjQxLCAxODgsIDI0MywgMjM3LCAyMzMsIDc4LCAyNDksIDE4MywgMjMxLCAyMzMsIAotICAgIDIzMywgNzcsIDI0NCwgMTQ0LCAyMzMsIDc3LCAyMzMsIDc4LCAyNDQsIDE2LCAyMzUsIDI1MiwgMjEzLCAyMjQsIDIzMCwgCi0gICAgMTI4LCAyMTYsIDI0NSwgMjUzLCAxMDcsIDI0MiwgMTE5LCAyMzEsIDEzMSwgMjE0LCAyMywgMjE4LCA4LCAyMzMsIDUwLCAKLSAgICAyNTIsIDY4LCAyMjUsIDE5NCwgMjI0LCA0LCAyNTMsIDIyMywgMjQyLCAxMDQsIDI1MywgMjIzLCAyMjYsIDkyLCAyMjYsIAotICAgIDkzLCAyNTAsIDU2LCAyMTksIDU0LCAyNDIsIDYsIDIyMCwgMTgsIDY1LCAyMjUsIDE3NiwgMjMxLCAxNTIsIDIyNywgNjMsIAotICAgIDI1MSwgMTE5LCAyMjUsIDEwOSwgMjMzLCA2MCwgMjIzLCAxODUsIDI0OSwgODIsIDIyMywgMTg1LCAyNTIsIDc4LCAyNDksIAotICAgIDExMiwgMjIzLCAxODQsIDI0OSwgMzYsIDI0LCAyMjMsIDE4NCwgMjE5LCA4MSwgMjUxLCA5MywgMjE5LCAyMDIsIDI1MSwgCi0gICAgNzgsIDI0MywgMjIxLCAyNDMsIDIxNywgMjIzLCAxMDgsIDIxOCwgMTkxLCAyMjUsIDExMSwgMjQ4LCAxMjAsIDIyNywgMTAxLCAKLSAgICAyMTgsIDIwOCwgMjQzLCAyMTgsIDIyMCwgMTU1LCAyNDQsIDYwLCAyNTAsIDIwOSwgMiwgMjE4LCAxODQsIDI0NywgMjQyLCAKLSAgICAyMTksIDIzNiwgMjQwLCAxMDUsIDI0OSwgODEsIDIyMCwgMjUwLCAyNDAsIDEwNCwgMjQwLCAxMDUsIDI0OSwgODEsIDI0NiwgCi0gICAgNjIsIDI0OSwgMTExLCAyNTAsIDIxLCAxMzQsIDI1MCwgMTg2LCAyMzIsIDE5NCwgMjQ5LCAzMCwgMjQxLCA0MSwgMjI1LCAKLSAgICAxMTMsIDIyMCwgMTY0LCAyNTEsIDIxMywgMjUxLCA4OSwgMjI1LCAxMTQsIDY1LCAyNDQsIDIsIDI0OSwgMTEwLCAyNDMsIAotICAgIDI0OSwgMjQsIDIzNCwgNDEsIDIxNywgMjI3LCAyMTMsIDIxNiwgMjQxLCAyNTIsIDIyMiwgMTgzLCAyNTEsIDEwMywgMjQsIAotICAgIDI0OSwgNDMsIDIxMywgMjIyLCAyNDIsIDE2MCwgMjQ5LCAxNzIsIDI0MiwgMTYwLCAyMTYsIDE1MSwgMjQ2LCA0NSwgMjUxLCAKLSAgICAyMzgsIDIzMCwgMTYzLCAyNDksIDIwMCwgMjUxLCAyMzgsIDIzMCwgMTYyLCAyNTIsIDEwNCwgMjUxLCAxMDIsIDIyMywgCi0gICAgMTg2LCAyMTMsIDE4OSwgMjI1LCA3NSwgMjUxLCAxNTgsIDI1MCwgMjA4LCAyMzUsIDEzNiwgMjUwLCAxNCwgMjE2LCAxOTMsIAotICAgIDI0NCwgMTMwLCAyNTAsIDEzLCAyNDQsIDYzLCAyNDQsIDY0LCAyMTksIDIwMCwgMjUyLCA3NywgMjI2LCAxMjIsIDIyNSwgCi0gICAgMTI0LCAyNDksIDE0MywgMjUyLCA3OCwgMjE4LCAxMCwgMjE2LCAxOTMsIDI0OSwgNjgsIDI0NCwgMzYsIDIyNSwgMTk1LCAKLSAgICAyNDgsIDMyLCAyMzUsIDEzMSwgMjQ3LCA4NSwgMjUwLCAxNjQsIDIxOSwgNTMsIDIxMywgMjI1LCAyNTAsIDM1LCAyMzAsIAotICAgIDE5OSwgMjE0LCAxNDQsIDI1MCwgOTYsIDIyMiwgMTE3LCAyMjIsIDE0MSwgMjQyLCAxMjQsIDI1MCwgMTgzLCAyNTAsIDE2NSwgCi0gICAgMjQwLCAyMzIsIDI0NCwgOTksIDIxMywgMjQxLCAyMjMsIDEwMiwgMjQ5LCAxNzMsIDI0NCwgNTUsIDIyNSwgMTM2LCAyNCwgCi0gICAgMjQ0LCA1OSwgMjMxLCA0MCwgMjMwLCAxNzgsIDI1MCwgMTk4LCAyNDksIDIzMiwgMjQxLCAyMTYsIDI1MywgMTU2LCAyMjYsIAotICAgIDE4OSwgMjE2LCAyMjcsIDI0MSwgMjM0LCAyNDksIDIyMiwgMjE3LCAxOTUsIDIxNywgNjcsIDI0OSwgMjEzLCAyNTEsIDEyNSwgCi0gICAgMjI2LCA1MiwgMjUzLCAxNTUsIDIxNCwgMTUwLCAyNDMsIDg2LCAyNDcsIDE0OSwgMjQxLCAxNDIsIDIyMCwgMTIsIDIzMiwgCi0gICAgMzksIDI1MSwgMTY4LCAyNDMsIDg3LCAyNDcsIDE5MiwgMjUxLCA5MiwgMjQ0LCAyMSwgMjI1LCAxNjUsIDI1MCwgMTczLCAKLSAgICAyNywgMjI4LCAxNTgsIDIzMCwgMTU1LCAyNywgMjI4LCAxNTMsIDIyMiwgMTMwLCAyNDIsIDgwLCAyNywgMjM0LCAxNDMsIAotICAgIDIxNiwgMTQ4LCAyMTQsIDEzNSwgMjcsIDIyMiwgMTExLCAyMjMsIDM1LCAyMjAsIDE5MSwgMiwgMjIyLCAxNDMsIDIxNywgCi0gICAgMTk3LCAyMjQsIDY4LCAyNCwgMjUyLCA3OCwgMjIwLCAzMywgMjQsIDIyMCwgMzMsIDI1MSwgMTEyLCAyNTIsIDQzLCAyNCwgCi0gICAgMjQxLCAzNiwgMjUwLCA1NywgMjQ0LCA0MiwgMjE5LCAyNDcsIDIyMywgMzYsIDIxOCwgMjEyLCAyMTYsIDE1MiwgMjQwLCAKLSAgICAyMzMsIDIyNCwgNjksIDI1NCwgMzgsIDI0NCwgMCwgMjIzLCA0NywgMjQ0LCAwLCAyMTgsIDE4NiwgMjQwLCAyMjIsIDI1MSwgCi0gICAgNDgsIDI0MCwgMjIyLCAyLCAyNDMsIDcwLCAyMjcsIDk1LCAyNTEsIDQ4LCAyMzUsIDEzMSwgMjI1LCAxMTksIDIyNywgOTQsIAotICAgIDI0NSwgMTEsIDIyNSwgMTE5LCAyMjcsIDk0LCAyNDAsIDIzMSwgMjUyLCA2NCwgMjUzLCA5NywgMjE3LCAyMDUsIDIzMiwgCi0gICAgMzksIDI0MCwgMjI3LCAyMzIsIDE2NiwgMjQwLCAyMjcsIDI0OSwgMTE1LCAyMTksIDY1LCAyMjIsIDExNiwgMjQ3LCAyNTAsIAotICAgIDIxOSwgNjUsIDI0NCwgMTQ4LCAyMzUsIDE0NywgMjMzLCAxMTMsIDIzNSwgMTMxLCAyNTAsIDE1OCwgMjQ1LCAxMSwgMjUwLCAKLSAgICAxNTgsIDIyNCwgMzMsIDIzMCwgMTgyLCAyMjYsIDIzOCwgMjE0LCAyNSwgMjUxLCA1MiwgMjQ5LCA4NCwgMjE3LCA2MCwgCi0gICAgMjMzLCA0MiwgMjI0LCA3MCwgMjUwLCAxNTYsIDI0NiwgNTAsIDI0OSwgNzUsIDIxMywgMjQ0LCAyMTksIDI1NCwgMjE5LCAKLSAgICAyNTIsIDI0MCwgMjMyLCAyMjQsIDQ1LCAyNDIsIDE0NiwgMjIwLCAyMzcsIDIzMCwgMjE1LCAyMjMsIDk2LCAyNTAsIDQ1LCAKLSAgICAyNDcsIDkwLCAyMjUsIDIwNSwgMjUxLCAxMjYsIDI0NSwgMTI2LCAyMjcsIDEwMywgMjE5LCAxODQsIDIyMCwgMjMyLCAyNTEsIAotICAgIDUxLCAyNTQsIDMsIDI0MSwgNDAsIDIzMywgMTQ0LCAyNTEsIDIzNiwgMjQ0LCA1OSwgMjE2LCAxNTEsIDI0NCwgNTksIDI1MSwgCi0gICAgMTMyLCAyMTYsIDU1LCAyNDEsIDIzMiwgMjUwLCA0NiwgMjUyLCAxMDQsIDI1MCwgNDYsIDI0MywgMjEyLCAyNTIsIDEwNCwgCi0gICAgMjUwLCA0NiwgMjUxLCAxNjAsIDIyNiwgNzAsIDIzNCwgMzUsIDIyNSwgMTI4LCAyNDYsIDQyLCAyNTAsIDE5OSwgMjUyLCAKLSAgICA5NSwgMjUwLCAxOTksIDI0NywgODQsIDIzMCwgMTgzLCAyNDQsIDE1OCwgMjQ5LCA4NSwgMjQ0LCAxNTgsIDIxNywgNjEsIAotICAgIDI0NCwgMTU4LCAyMjQsIDcxLCAyNDQsIDE1OCwgMjUwLCAxNTcsIDI0NCwgMTU4LCAyNDYsIDUxLCAyNDQsIDE1OCwgMjE5LCAKLSAgICAxNzMsIDIxMywgMjQ0LCAyNDAsIDIzMywgMjQ0LCAxNTgsIDIzMCwgMjE2LCAyNDQsIDE1OCwgMjQ3LCA5MSwgMjQ0LCAxNTgsIAotICAgIDIyNSwgMjA2LCAyNDQsIDE1OCwgMjQzLCAyMTUsIDI0NCwgMTU4LCAyNDIsIDMsIDI0NCwgMTU4LCAyMTMsIDIxMSwgMjQ0LCAKLSAgICAxNTgsIDI1MSwgMjQ3LCAyNDQsIDE1OCwgMjI2LCAxNzIsIDI0NCwgMTU4LCAyMjUsIDIwNiwgMjI4LCAxNjQsIDIyNiwgCi0gICAgMTA2LCAyMjUsIDY3LCAyNDQsIDIzNywgMjQ1LCAxODMsIDIyOCwgMTY0LCAyMzAsIDE4MCwgMjE2LCAyMzIsIDY3LCAxMTQsIAotICAgIDIyNSwgMTQxLCAyNTIsIDk5LCAyMzUsIDIzOSwgNjcsIDExOSwgMjI1LCAxNDEsIDI1MiwgOTksIDIzNSwgMjM5LCA2NywgCi0gICAgNDIsIDIyNSwgMTQxLCAyNTIsIDk5LCAyMzUsIDIzOSwgNjcsIDQ2LCAyMjUsIDE0MSwgMjUyLCA5OSwgMjM1LCAyMzksIAotICAgIDI0NCwgNTMsIDI0MSwgMjU1LCA1MiwgMjE0LCAxNywgMjQxLCAyNTUsIDUyLCAyMjcsIDgxLCAyNDEsIDI1NSwgNTIsIDIxNywgCi0gICAgODksIDExNCwgNTIsIDIxNywgODksIDExOSwgNTIsIDI0OSwgMjEyLCAyNDEsIDI1MCwgNTIsIDIyNywgNDAsIDI0MSwgMjUwLCAKLSAgICA1MiwgMjQ5LCA2MywgMjEzLCAyMDcsIDI0MSwgMjM0LCAyNDQsIDIzOCwgMjI5LCAxODUsIDIxOCwgOTgsIDIzNSwgMTI2LCAKLSAgICAyNDYsIDQ3LCAyMzQsIDkxLCAyNTEsIDE3MCwgMjEzLCAyMDcsIDI0OSwgMTg2LCAyMjUsIDE0LCAyNDEsIDI1MywgMjI1LCAKLSAgICAxMTAsIDIzMSwgMjQwLCAyMjAsIDE4NCwgMjUzLCAxMTksIDIyMCwgMTg0LCAyNDEsIDE1MCwgMjIwLCAxODQsIDIxMywgCi0gICAgMjA3LCAyMjIsIDE1NiwgMjEzLCAyMDcsIDI1MSwgMTExLCAyNDMsIDI1NCwgMjUxLCAxOSwgMjM1LCAyNTIsIDIyMCwgOTUsIAotICAgIDI1MSwgMTgsIDIzNSwgMjUyLCAyMjAsIDk1LCAyNTEsIDg4LCAyNDIsIDE3MCwgMjMxLCAyNDgsIDIxMywgMjA4LCAyNDQsIAotICAgIDE0MiwgMjMxLCAyNDksIDI0LCAyMTMsIDIwOSwgMjQxLCA0NiwgMjQxLCAyNDksIDExNywgMjMxLCAxMjMsIDI0MSwgNDYsIAotICAgIDI0MSwgMjQ5LCAxMTcsIDIxMywgMjA2LCAyNDEsIDQ2LCAyNDEsIDI0OSwgMjI1LCAxMzMsIDIyNywgOTMsIDIxMywgMjA5LCAKLSAgICAyLCAyNTEsIDM1LCAyNDUsIDE4MSwgMjUxLCA2OSwgMiwgMjE0LCAyMjMsIDIyNiwgNDQsIDIsIDI1MSwgMTM1LCAyNDIsIAotICAgIDE2LCAyMzEsIDI0OSwgMiwgMjQyLCA4OSwgMjI1LCAyNDEsIDIzMSwgMjM3LCAyMzEsIDI0OSwgMiwgMjE2LCA2MSwgMjI3LCAKLSAgICA3NCwgMjMxLCAyNDgsIDIyNywgNzQsIDIxMywgMjA4LCAyNTIsIDEwMywgMjQ5LCAxMjksIDIxMywgMTkyLCAyMjUsIDcwLCAKLSAgICAyMzUsIDEzMSwgMjI3LCA4OSwgMjM1LCAxMzEsIDI0MiwgMTQ1LCAyNDIsIDE5OCwgMjUyLCAxMDQsIDI1NCwgMjIsIDI0NCwgCi0gICAgMjQyLCAyNTQsIDY5LCAyNTQsIDcwLCAyMzAsIDIwNiwgMjM2LCAxLCAyMjAsIDI4LCAyMzUsIDIyOSwgMjQ3LCAyNDEsIAotICAgIDIyNiwgNDMsIDI0MiwgODYsIDI0OCwgMTI0LCAyMzIsIDIzMCwgMjMwLCAzMCwgMjI1LCAxMzIsIDI0NCwgMTU5LCAyMzEsIAotICAgIDIwNSwgMjQyLCAxNSwgMjUyLCA1OCwgMjI1LCAxMzUsIDIxOCwgMTE3LCAyMjUsIDE5OCwgMjM0LCA3MywgNzcsIDIzMiwgCi0gICAgMTY2LCAyMzMsIDM0LCAyMjMsIDEzMCwgMjQzLCAzMCwgMjE5LCA3MSwgMjM0LCA3MiwgMjUxLCA5NywgMjQ5LCA4NywgMiwgCi0gICAgMjQxLCAyMTEsIDIxNCwgMywgMjUxLCAyNDUsIDI0MSwgMjExLCAyNTEsIDYzLCAyNDEsIDIxMSwgMTE3LCAyNDEsIDIwOSwgCi0gICAgMjE5LCAxOTgsIDI0MSwgMjExLCAyNDIsIDk4LCAyNDEsIDIxMSwgMjQxLCAyMTIsIDIsIDY4LCAyNTEsIDEzMSwgMjQxLCAKLSAgICAyMTEsIDI0MiwgMTA0LCAyNDEsIDIxMSwgMjEzLCAzMywgMjQxLCAyMTEsIDIyNSwgMTUsIDI0MSwgMjExLCAyNDEsIDIxMiwgCi0gICAgMiwgMjIzLCAxODYsIDIyMywgMTk3LCAyNDEsIDIwOSwgMjQxLCAyMTIsIDI0OCwgMzIsIDI0NywgMjAxLCAyMjEsIDUsIDIsIAotICAgIDExOCwgNjIsIDIzNSwgMjEyLCAyNDUsIDEyOSwgMTc3LCAyNTEsIDQ1LCAyNTQsIDIxLCA4NywgMjUxLCAxMjAsIDIyMCwgCi0gICAgMjAsIDg3LCAyNDksIDE2NiwgODcsIDIxOSwgMTc4LCAyMTgsIDE5MywgODcsIDI0NiwgNDAsIDI0OCwgMTAyLCA4NywgMjI1LCAKLSAgICAxOTksIDY1LCAyMjUsIDEyOSwgMjQ0LCAzMCwgMjUxLCAxODEsIDI0NywgMTE3LCA4NywgMjE5LCAxOTEsIDI1MiwgNzcsIAotICAgIDIxNywgMTAyLCAyNTIsIDc3LCA2NywgMjQ0LCAyMCwgMjQwLCAyMDEsIDIyNSwgMTM5LCA4NywgMjMwLCAyMTksIDI1MiwgCi0gICAgOTAsIDI0OSwgMzksIDI0NCwgMjU1LCAxMDcsIDI0NywgODYsIDUyLCAyNDksIDc5LCAyNTAsIDE3NCwgMjUyLCA2MywgMiwgCi0gICAgMjEzLCAzMSwgNTIsIDI1MiwgNjMsIDIsIDI0NywgODYsIDUyLCAyNTIsIDYzLCAyLCAyNDUsIDE0LCA1MiwgMjUyLCA2MywgCi0gICAgMiwgMjI1LCAxMDgsIDUyLCAyMzAsIDIxOSwgMiwgMjEzLCAyMjAsIDI1MCwgNzQsIDIsIDIxNSwgMTI0LCAyMTYsIDE4OSwgCi0gICAgMjQsIDIxMywgMzEsIDUyLCAyMjIsIDk3LCAyMjYsIDQyLCAyNDksIDE0NywgMjUxLCA2NywgMjMwLCAyNTUsIDI0NCwgMjUsIAotICAgIDI0NywgMTM3LCAyMjcsIDI3LCAyNDcsIDE0MiwgMjQ2LCA0LCAyNDQsIDc2LCAyNDQsIDksIDIyNywgNDAsIDI0NCwgNzYsIAotICAgIDI0NCwgOSwgMjI2LCAyMDEsIDIsIDI0OSwgNDEsIDIyNiwgMjAxLCAyNDQsIDE1MSwgMjE1LCAxMzQsIDI1MCwgMjA0LCAKLSAgICAyMTcsIDIyNiwgMjUwLCAyMDQsIDI1MCwgMTc1LCAyMzUsIDIzOSwgMjUwLCA3NCwgMiwgMjE1LCAxMjQsIDIxNiwgMTg4LCAKLSAgICAyNTAsIDc0LCAyLCAyNDYsIDU4LCAyMTYsIDE4OCwgMjUyLCA2MCwgMjUwLCA3MywgMjQ5LCAxOTksIDIyNSwgMTAsIDIyMywgCi0gICAgODcsIDIyNSwgMTAsIDIyNiwgMTQ3LCAyMTksIDYxLCAyMjMsIDQyLCAyMTYsIDE4MCwgMjIzLCA0MiwgMjUxLCAxMTYsIAotICAgIDIxOCwgMzksIDIzMywgNzUsIDIyOCwgMTU2LCAyMjgsIDE1NywgMiwgMjQ4LCAzMSwgMjQ5LCA4NiwgMjQ5LCAxOTMsIDI1MSwgCi0gICAgMTE3LCAyMjcsIDQwLCAyNTEsIDExNywgMjQyLCAxMDQsIDI1MSwgMTE3LCAyNTEsIDEzMSwgMjUxLCAxMTcsIDIyNywgMjMsIAotICAgIDI1MSwgMTE3LCAyNTEsIDExNCwgMjMwLCAyNSwgMjUyLCA5MywgMjIyLCAxMDUsIDIzMSwgMTI0LCAyMTcsIDIxMCwgMjI0LCAKLSAgICAxNiwgMjI2LCAxOTksIDI0NCwgMTI3LCAyMzIsIDM5LCAyMjIsIDE0MCwgMjU0LCAwLCAyMjUsIDMxLCAyNTQsIDE1NywgCi0gICAgMjMyLCAxNjgsIDI1MCwgNjMsIDIzMSwgMTM2LCAyMjYsIDI1MywgMjE2LCAxOTYsIDIzNSwgMjQ4LCAyMTYsIDE5NiwgMjI2LCAKLSAgICAyMDYsIDI0NSwgMjM2LCA4NywgMjM1LCAyNDUsIDI0NSwgNzgsIDI0NSwgNzksIDIsIDI0NiwgNTgsIDc2LCA0OSwgMjQ5LCAKLSAgICAxOTMsIDIzMiwgNiwgMiwgMjMyLCAxNjIsIDI0NCwgNDIsIDI0OSwgMTkzLCAyMzIsIDYsIDIsIDIyNCwgNDgsIDI0NCwgNDIsIAotICAgIDIyNywgNDAsIDIzMiwgNiwgMiwgMjI0LCA0OCwgMjQ0LCA0MiwgMjI3LCA0MCwgMjMyLCA2LCAyLCAyMzIsIDE2MiwgMjQ0LCAKLSAgICA0MiwgMjI1LCAxMTYsIDIyNSwgMTE3LCAyNDAsIDIzNSwgMjI5LCAxNjYsIDIzMCwgMjI5LCAyMjUsIDI0OSwgMjMwLCAyMjksIAotICAgIDIyNSwgMjUwLCAyLCA5NSwgNzYsIDI1MywgMTIzLCAyMzMsIDcwLCAyMTQsIDE1MywgMjMwLCAyMjgsIDIzMCwgMjI5LCAKLSAgICAyMjUsIDI1MCwgMjI3LCA5NiwgMjI4LCAxODYsIDIzMCwgMjI5LCAyMjUsIDI0OCwgMjU0LCAxLCAyLCAyNTIsIDQ5LCAyNTAsIAotICAgIDE5OCwgMjE0LCAxNTAsIDI1MCwgMTk4LCAyMTcsIDIwNywgMjI0LCA2MywgMjE0LCAxNDksIDIxNiwgMjUsIDk1LCAyNTMsIAotICAgIDE2MiwgMjQ5LCAxOTUsIDk1LCAyNCwgMTMyLCAyMjcsIDQwLCAyNDksIDIyOSwgMjUzLCAxNjIsIDI0OSwgMTk1LCA5NSwgCi0gICAgMjQsIDEzMiwgMjI3LCA0MCwgMjQ5LCAyMjksIDI1MywgMTYzLCAyLCAzNiwgMTIyLCAyMjYsIDI0NCwgMjQ5LCAxOTUsIAotICAgIDI0NiwgNTgsIDI0LCAyMTUsIDEyNCwgMjI3LCA0MCwgMjQ5LCAyMjksIDI1MywgMTYyLCAyNTMsIDI1NSwgMjQ2LCA1OCwgCi0gICAgMjQsIDIxNSwgMTI0LCAyMjcsIDQwLCAyNDksIDIyOSwgMjUzLCAxNjIsIDExNSwgMjUxLCA2NiwgODcsIDEyNCwgMjUxLCAKLSAgICA2NiwgODcsIDIxOSwgMTk1LCAyLCAyNTAsIDE5MiwgOTAsIDIxOSwgMTk0LCAyMTksIDE5NSwgMiwgMTIyLCAyMTksIDIxOCwgCi0gICAgMjE0LCAxOSwgMjE5LCAxOTUsIDIsIDEzMywgMjE5LCAyMTgsIDIxNCwgMTgsIDI1MiwgMzUsIDI0NSwgMTI5LCAyMjUsIAotICAgIDE2MSwgMjMzLCA2NiwgMjMyLCAxNiwgMjQyLCAxNjAsIDIyMywgMTQ0LCAyMzIsIDE2LCAyNDIsIDE2MCwgMjMyLCAyMDQsIAotICAgIDIsIDIzNSwgMjIyLCAyMjYsIDc0LCAyNDksIDE5MywgMjMyLCAyMDQsIDIsIDIzNCwgMTQ0LCAyMzQsIDE0NCwgMjMyLCAKLSAgICAyMDMsIDIyNywgNDAsIDIzMiwgMjAzLCAyNTEsIDIyMSwgMjUxLCAyMjIsIDIsIDI1MCwgMTkyLCA5MCwgMjUxLCAxMTUsIAotICAgIDIzMiwgMjMzLCA4NywgMjI0LCA2NCwgMjUxLCAxNSwgMjUyLCAxMDIsIDIsIDEzMiwgNzYsIDQ5LCAyNDUsIDEwMSwgMiwgCi0gICAgMTMyLCA3NiwgNDksIDIyNywgNjMsIDIsIDI0NCwgMjU0LCAxNTIsIDIsIDQyLCA0NiwgNzYsIDQ5LCAyMTksIDIyNSwgMiwgCi0gICAgOTUsIDc2LCA0OSwgMjE2LCAyMjcsIDIsIDIxNSwgMTI0LCA3NiwgNDksIDIyOCwgMTg2LCAxMjIsIDIxNSwgMTU0LCAyNDUsIAotICAgIDE0OCwgODcsIDIzNCwgMTQyLCAyMTcsIDIwMCwgMjM1LCAyMTYsIDE2LCAzMSwgNywgNiwgMjMzLCAzMywgMjM1LCAyMTYsIAotICAgIDE2LCAzMSwgNywgMywgMjMzLCAzMywgMjM1LCAyMTYsIDE2LCAzMSwgMjI4LCA1NSwgMjM1LCAyMTYsIDE2LCAzMSwgMjE4LCAKLSAgICAxMjgsIDIzNSwgMjE2LCAxNiwgMzEsIDcsIDIzMywgMzMsIDI0NCwgNjUsIDI0NSwgMTI5LCAyMTYsIDIyMiwgMjEzLCAxODcsIAotICAgIDI0MiwgNCwgMjI4LCAzOCwgMjQsIDI1MSwgMTIxLCAyNDEsIDUyLCAyMjUsIDE4MiwgMjMxLCAzOSwgMjE3LCAyMDgsIDI0OSwgCi0gICAgNTQsIDI1MiwgNzgsIDIyMCwgNTMsIDIyNSwgMTQzLCAyMTksIDk2LCAyLCAyMzEsIDM3LCAyNDcsIDc0LCAyMzUsIDEzMSwgCi0gICAgMTYsIDMxLCAyNTEsIDIzMywgMjE2LCAxNzgsIDI0NSwgMTE0LCA4MywgNDEsIDI1MSwgMTUsIDY3LCA0MSwgMjUxLCAxNSwgCi0gICAgMjMzLCAxMDgsIDIyNCwgNCwgMjQ5LCAyMjgsIDIzMywgMTA4LCAyNTEsIDEzMSwgMjQ5LCAyMjgsIDIzMywgMTA4LCAyMjcsIAotICAgIDIzLCAyNDcsIDIwMCwgMjMzLCAxMDgsIDI1MSwgMTMxLCAyNDcsIDIwMCwgMywgMjI3LCAyMywgMjQ3LCAyMDAsIDMsIDI1MSwgCi0gICAgMTMxLCAyNDcsIDIwMCwgMjE1LCAxMzMsIDIyNCwgNCwgMjE2LCAxODMsIDI0NiwgNTksIDIyNCwgNCwgMjE2LCAxODMsIAotICAgIDIxNSwgMTMzLCAzLCAyMjQsIDQsIDIxNiwgMTgzLCAyNDYsIDU5LCAzLCAyMjQsIDQsIDIxNiwgMTgzLCAyNDksIDE5NywgCi0gICAgMjQ0LCAxNTksIDEyMiwgMjI3LCAxMDYsIDI0OSwgMTk3LCAyNDQsIDE1OSwgMTE3LCAyMjcsIDEwNiwgMjQ5LCAxOTcsIAotICAgIDI0NCwgMTU5LCAxMzMsIDIyNywgMTA2LCAyNDksIDE5NywgMjQ0LCAxNTksIDI0MywgMjM3LCAyMjcsIDEwNiwgMjQ5LCAKLSAgICAxOTcsIDI0NCwgMTU5LCAyNDQsIDUwLCAyMjcsIDEwNiwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyMjAsIDUzLCAyMjcsIDEwNiwgCi0gICAgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyMjEsIDQzLCAyMjcsIDEwNiwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyNDUsIDE1MCwgMjI3LCAKLSAgICAxMDYsIDI0OSwgMTk3LCAyNDQsIDE1OSwgMjI5LCAzMSwgMjI3LCAxMDYsIDI0OSwgMTk3LCAyNDQsIDE1OSwgMjE3LCAyMDEsIAotICAgIDIyNywgMTA2LCAyNDksIDE5NywgMjQ0LCAxNTksIDI0NSwgMTI1LCAyMjcsIDEwNiwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAKLSAgICAyMTYsIDQyLCAyMjcsIDEwNiwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyMjcsIDU4LCAyNDksIDE5NywgMjQ0LCAxNTksIDIxNiwgCi0gICAgMjIsIDI0OSwgMTk3LCAyNDQsIDE1OSwgMjE3LCA5NCwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyNDMsIDIzMywgMjQ5LCAxOTcsIAotICAgIDI0NCwgMTU5LCAyNDQsIDQ4LCAyNDksIDE5NywgMjQ0LCAxNTksIDIyMCwgNDksIDI0OSwgMTk3LCAyNDQsIDE1OSwgMjIxLCAKLSAgICA0MiwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyNDUsIDE0OSwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyMjksIDMwLCAyNDksIDE5NywgCi0gICAgMjQ0LCAxNTksIDIxNywgMTk5LCAyNDksIDE5NywgMjQ0LCAxNTksIDI0NSwgMTIzLCAyNDksIDE5NywgMjQ0LCAxNTksIAotICAgIDIxNiwgNDAsIDIzMCwgMTg3LCAyNDMsIDIwMSwgMjE2LCAyNDcsIDIxNiwgMjE1LCAyMTksIDg4LCA2NSwgMjMzLCAxMSwgCi0gICAgMjIwLCA5NiwgNjUsIDIzNSwgMTMyLCAyMzAsIDE3NiwgMjQyLCAxMDIsIDI0NCwgMTU5LCAyLCAyMjAsIDIsIDI0NCwgMjM3LCAKLSAgICAyNDQsIDE1OSwgMiwgMjE3LCAyMjIsIDY1LCAyMzUsIDU2LCAyMjAsIDIsIDI0NCwgMTU5LCAyLCAyMjcsIDQwLCAyMzAsIAotICAgIDE4MCwgMjIwLCAyLCAyNDQsIDE1OSwgMiwgMjI3LCA0MCwgMjMwLCAxODEsIDI0LCAyMjAsIDIsIDI0NCwgMjM3LCAyMjAsIAotICAgIDIsIDI0NCwgMTU5LCAyLCAyMjcsIDQwLCAyMzAsIDE4MSwgMjQsIDI0OSwgMTY4LCAyMTgsIDE5MiwgMjIwLCAyLCAyNDQsIAotICAgIDE1OSwgMiwgMjI3LCA0MCwgMjMwLCAxODEsIDI0LCAyMTcsIDU4LCAyNDQsIDIzNywgMjIwLCAyLCAyNDQsIDE1OSwgMiwgCi0gICAgMjQyLCA4LCAyMjAsIDIsIDI0NCwgMTU5LCAyLCAyNDAsIDIzNCwgMjEzLCAyMTgsIDI0NCwgMTU4LCAyMjAsIDIsIDI0NCwgCi0gICAgMTU5LCAyLCAyMjAsIDIsIDI0NCwgMjM3LCAyNDQsIDE1OSwgMjIyLCAxMzUsIDI0OCwgMTMsIDI0NCwgMiwgMjIzLCAyMzgsIAotICAgIDI0NCwgMTU4LCAyMjAsIDIsIDI0NCwgMTU5LCAyLCAyNDEsIDIxMCwgMjQ0LCAyMzcsIDIyMCwgMiwgMjQ0LCAxNTksIDIsIAotICAgIDIxOCwgMjM0LCAyMjAsIDEsIDI0NCwgMTU4LCAyMjksIDE2OSwgMjQ0LCAxNTgsIDIxNSwgMTU4LCAyNDQsIDE1OCwgMjQ0LCAKLSAgICAxNTksIDIsIDI0OSwgMTY4LCAyMTgsIDE5MiwgMjI2LCA2NywgMjQ0LCAxNTgsIDI0OSwgMTQxLCAyNDQsIDE1OCwgMjQ0LCAKLSAgICAxNTksIDIxNywgOTEsIDExOCwgMjM0LCA3MiwgMjM0LCA3MSwgMjQ0LCAxNTksIDIsIDI0OSwgMTkzLCAyNDQsIDIzNywgCi0gICAgMjQ0LCAxNTksIDIsIDIxOSwgMzEsIDIxNiwgMjMzLCAyNCwgMjEzLCAyMTgsIDI0NCwgMjM5LCAyNDQsIDE1OSwgMiwgMjE5LCAKLSAgICAzMSwgMjE2LCAyMzMsIDI0LCAyMTcsIDU4LCAyNDQsIDIzNywgMjQ3LCAxNDQsIDI0NCwgMTU4LCAyNTQsIDE3LCAyNDQsIAotICAgIDE1OCwgMjI1LCAxMDcsIDI0NCwgMTU4LCAyNDksIDU2LCAyNDQsIDE1OCwgMjI2LCA0NiwgMjQ0LCAxNTgsIDI0NCwgMTU5LCAKLSAgICAyLCAyMzIsIDE3OSwgNjUsIDIxNiwgMTYyLCAyNDcsIDE0NCwgMjUxLCAxNywgMjIzLCAyMzgsIDI0NCwgMTU4LCAyNDQsIAotICAgIDEyMSwgMjQ0LCAxNTgsIDIxNCwgNCwgMjQ0LCAxNTgsIDIyMCwgMTksIDI0NCwgMTU4LCAyMTcsIDI0LCAyNDQsIDE1OCwgCi0gICAgMjMyLCAxNjksIDI0OSwgNTYsIDI0NCwgMTU4LCAyNDQsIDE1OSwgMiwgMjI3LCA0MCwgMjMwLCAxODEsIDI0LCAyNDksIAotICAgIDE2OCwgMjE4LCAxOTIsIDI0NCwgMTU5LCAyMjIsIDEwOSwgMjM1LCAyNTIsIDI0NCwgMTIyLCAyNTMsIDEyOSwgMjQ0LCAKLSAgICAxNTgsIDI0NCwgMTgsIDI0NCwgMTU4LCAyNDcsIDExNywgMjQ0LCAxNTgsIDI0NCwgMTU5LCAyMTMsIDIxNiwgMjMwLCAxODAsIAotICAgIDI0NCwgMTU5LCAyLCAyMzEsIDE0OSwgMjMxLCAyMDcsIDI0MiwgMTAyLCAyNTAsIDE1NywgMjQ0LCAxNTksIDIsIDIyMCwgMiwgCi0gICAgMjQ0LCAyMzcsIDI1MCwgMTU3LCAyNDQsIDE1OSwgMiwgMjE3LCAyMjIsIDY1LCAyMzUsIDU2LCAyMjAsIDIsIDI1MCwgMTU3LCAKLSAgICAyNDQsIDE1OSwgMiwgMjI3LCA0MCwgMjMwLCAxODAsIDIyMCwgMiwgMjUwLCAxNTcsIDI0NCwgMTU5LCAyLCAyNDEsIDIxMCwgCi0gICAgMjQ0LCAyMzcsIDI1MCwgMTU3LCAyNDQsIDE1OSwgMiwgMjEzLCAxODQsIDIyMCwgMywgMjM0LCA3MSwgMjUwLCAxNTcsIAotICAgIDI0NCwgMTU5LCAyLCAyNDksIDE5MywgMjQ0LCAyMzcsIDIyNSwgMTA3LCAyNTAsIDE1NywgMjQ0LCAxNTgsIDI0OSwgNTYsIAotICAgIDI1MCwgMTU3LCAyNDQsIDE1OCwgMjE0LCA0LCAyNTAsIDE1NywgMjQ0LCAxNTgsIDI0NCwgMTU5LCAyLCAyMjgsIDE4NiwgCi0gICAgMjQyLCAxMzksIDI0MywgMTAsIDI0NCwgMTU5LCAyLCAyMjcsIDgxLCAyNDMsIDEwLCAyMjYsIDQ0LCAyNTEsIDk0LCAyNDgsIAotICAgIDI2LCAyMjIsIDg4LCAyMzAsIDIxNSwgMjQxLCAyMTMsIDIzMCwgMjE1LCAyMTksIDE5NiwgMjMwLCAyMTUsIDI0MSwgMjQ0LCAKLSAgICAyMjYsIDQ0LCAyMjQsIDQ3LCAxMjIsIDI0MSwgMjU0LCAyMjYsIDQ0LCAyMjQsIDQ3LCAyNTEsIDEwNCwgMjQxLCAyNTAsIAotICAgIDIzNSwgMjUyLCAyNTAsIDExMywgMjI2LCA0NCwgMjQzLCAyMDgsIDIyNiwgNDQsIDIsIDIyNSwgMTA3LCAyNDQsIDE1OCwgCi0gICAgMjI2LCA0NCwgMiwgMjQ0LCAxMCwgMjQxLCAyNDksIDIyMywgMTA0LCAyNDEsIDE5OCwgMjE5LCA4MywgMjMyLCAyMDIsIAotICAgIDIyNCwgNTMsIDI1MCwgMTc2LCAyNDEsIDE0OCwgMjE2LCAyMDUsIDI0MSwgMTQ4LCAyMTYsIDIwNiwgMiwgMjUxLCA0MywgCi0gICAgMjI4LCAxNjQsIDIxNiwgMjA1LCAyMzEsIDk5LCAxNzcsIDIyNCwgNTQsIDIxOSwgODksIDIxNiwgMjAzLCAyMTYsIDIwNCwgCi0gICAgMjUwLCAxNzYsIDI1MSwgMjEsIDIyNywgNjAsIDI1MSwgMjEsIDIxNiwgMTU5LCAyNTEsIDIyLCAyMTksIDY5LCAyMzEsIDAsIAotICAgIDI1NCwgMzksIDI0NCwgNjYsIDI0NSwgOTUsIDIyNSwgMTMzLCAyNTAsIDE3NiwgMjI3LCA2MCwgMjI1LCAxMzMsIDI1MCwgCi0gICAgMTc2LCAyMTcsIDIzOSwgMjI3LCA2MCwgMjE3LCAyMzksIDI1MywgOTYsIDIyNywgNjAsIDI1MywgOTYsIDIyNCwgMTEsIAotICAgIDIxNCwgMjI0LCAyNDgsIDksIDIxNiwgMTUwLCAyNTMsIDE1NywgMjMyLCAxNzIsIDIxNiwgMjExLCAyMzAsIDIwOSwgMjMwLCAKLSAgICAxODYsIDIyNCwgNTIsIDIxOCwgMjA3LCAyMjQsIDUyLCAyMzAsIDE4NiwgMjUwLCAyMTQsIDI1NCwgMTM0LCAyMTYsIDIwMiwgCi0gICAgMjIwLCAxOTYsIDIyMywgODQsIDIxOSwgMTg5LCAxOTksIDIxNiwgMjA5LCAyMzMsIDIsIDcxLCAyMTYsIDIwOSwgMjMzLCAyLCAKLSAgICAyNDksIDEyOSwgNTIsIDIyNSwgMTMzLCAyNTAsIDE2MSwgMjIzLCAxOTcsIDIzMywgMiwgMjE2LCAxODAsIDI0NCwgNDMsIAotICAgIDIyNywgNjMsIDIyNSwgMTE4LCAyNDcsIDc3LCAyMjgsIDE4NiwgMjQ1LCA4NCwgNTIsIDIyMCwgMCwgODcsIDIyOCwgMTg2LCAKLSAgICAyMjAsIDAsIDg3LCAyMjUsIDksIDIzMiwgMjIyLCAyMzUsIDI1MiwgMjM1LCAxNTUsIDIyNSwgMTczLCA4NywgMjQ3LCAxMDAsIAotICAgIDIyOCwgMTYzLCAyMzIsIDIyMiwgODcsIDIyNSwgMTEyLCAyMTQsIDI1LCA4NywgMjI4LCAxNzcsIDIxNCwgMjUsIDg3LCAKLSAgICAyNTEsIDE4MCwgMjI4LCAxODYsIDI1MSwgMTc5LCAyNTEsIDE3OCwgMjMwLCAxODYsIDI1MSwgMTc4LCAyMjYsIDg4LCAyMjgsIAotICAgIDE4NiwgMjI2LCA4NywgMjUwLCAzNywgMjQ5LCA2NCwgMjMxLCAxMjAsIDg3LCAyMTMsIDIwNSwgODcsIDIyMywgMjExLCAKLSAgICAyNTIsIDEwNCwgODcsIDIxNiwgMjQ4LCAyMTQsIDI1LCAyNDksIDE5MCwgMjIwLCAxNTgsIDI1MiwgMzgsIDI1MiwgMzYsIAotICAgIDIyNiwgMTE1LCAyNDksIDExNiwgMjQ5LCAyOCwgMjUyLCA4NywgMjQ5LCAyMTUsIDQyLCAyMzIsIDE0OCwgMTA0LCAxNiwgCi0gICAgMzEsIDIyNCwgMTQ4LCAxMDQsIDE2LCAzMSwgMjU0LCAxMDAsIDEwNCwgMTYsIDMxLCAyNDQsIDY1LCAxMDQsIDE2LCAzMSwgCi0gICAgMjQ1LCAxNzksIDEwNCwgMTYsIDMxLCAyMTQsIDI0LCAxMDQsIDE2LCAzMSwgMjUzLCAyMTMsIDEwNCwgMTYsIDMxLCAyNTMsIAotICAgIDIxNCwgMjIzLCAyNTUsIDEwNCwgMTYsIDMxLCAyNTMsIDIxNCwgMjIzLCAyNTQsIDEwNCwgMTYsIDMxLCAyNTMsIDIxNCwgCi0gICAgMjE0LCAxMjQsIDEwNCwgMTYsIDMxLCAyNTMsIDIxNCwgMjE0LCAxMjMsIDEwNCwgMTYsIDMxLCAyMTQsIDEzOCwgMTA0LCAKLSAgICAxNiwgMzEsIDIxNCwgMTM3LCAxMDQsIDE2LCAzMSwgMjE0LCAxMzYsIDEwNCwgMTYsIDMxLCAyMTgsIDI0NSwgMTA0LCAxNiwgCi0gICAgMzEsIDIyNiwgMSwgMjE4LCAyNDUsIDEwNCwgMTYsIDMxLCA4MywgMjE4LCAyNDUsIDEwNCwgMTYsIDMxLCAyMzEsIDExOSwgCi0gICAgMjE5LCAxNiwgMTA0LCAxNiwgMzEsIDIzMSwgMTE5LCAyMTksIDE1LCAxMDQsIDE2LCAzMSwgMjMxLCAxMTksIDIxOSwgMTQsIAotICAgIDEwNCwgMTYsIDMxLCAyNDksIDIzMSwgMTA0LCAxNiwgMzEsIDIyMiwgMTcyLCAxMDQsIDE2LCAzMSwgMjI5LCAxOSwgMTA0LCAKLSAgICAxNiwgMzEsIDIxNCwgMTIyLCAxMDQsIDE2LCAzMSwgMjE0LCAxMjEsIDEwNCwgMTYsIDMxLCAyMjMsIDEwNSwgMjIyLCAxNzIsIAotICAgIDEwNCwgMTYsIDMxLCAyMjMsIDEwNSwgMjIyLCAxNzEsIDEwNCwgMTYsIDMxLCAyNDIsIDE0MiwgMTA0LCAxNiwgMzEsIDIyMCwgCi0gICAgOTIsIDEwNCwgMTYsIDMxLCAyMzUsIDE3NSwgMjI3LCAyMCwgMTA0LCAxNiwgMzEsIDIzNSwgMTc1LCAyMjcsIDE5LCAxMDQsIAotICAgIDE2LCAzMSwgMjQ5LCA3NCwgNjUsIDIzNSwgMTc0LCAxMDQsIDE2LCAzMSwgMjIzLCAyNTEsIDY1LCAyMzUsIDE3NCwgMTA0LCAKLSAgICAxNiwgMzEsIDI0OSwgMTA3LCAyMjcsIDIwLCAxMDQsIDE2LCAzMSwgMjM1LCAxNzMsIDIyNywgMjAsIDEwNCwgMTYsIDMxLCAKLSAgICAyMTksIDE3LCA2NSwgMjQ5LCAxMDYsIDEwNCwgMTYsIDMxLCAyNDksIDc0LCA2NSwgMjQ5LCAxMDYsIDEwNCwgMTYsIDMxLCAKLSAgICAyNDksIDc0LCA2NSwgMjQ5LCAxMDUsIDEwNCwgMTYsIDMxLCAyNDksIDEwNywgMjUzLCAyNTAsIDEwNCwgMTYsIDMxLCAyMjIsIAotICAgIDE3MywgNjUsIDI0OSwgMTA3LCAyNTMsIDI1MCwgMTA0LCAxNiwgMzEsIDIxOSwgMTcsIDY1LCAyMjIsIDE3MywgNjUsIDI0OSwgCi0gICAgMTA2LCAxMDQsIDE2LCAzMSwgMjE0LCAyMjAsIDEwNCwgMTYsIDMxLCAyMTcsIDM3LCAyMjcsIDIwLCAxMDQsIDE2LCAzMSwgCi0gICAgMjMzLCA4MSwgMjI3LCAyMCwgMTA0LCAxNiwgMzEsIDI1MywgMjQ5LCAyMjcsIDIwLCAxMDQsIDE2LCAzMSwgMjE5LCAxNywgCi0gICAgNjUsIDI1MywgMjQ4LCAxMDQsIDE2LCAzMSwgMjIyLCAxNzMsIDY1LCAyNTMsIDI0OCwgMTA0LCAxNiwgMzEsIDIxOSwgMTcsIAotICAgIDY1LCAyMjIsIDE3MywgNjUsIDI1MywgMjQ4LCAxMDQsIDE2LCAzMSwgMjE0LCAxMzksIDY1LCAyNTMsIDI0OCwgMTA0LCAxNiwgCi0gICAgMzEsIDIyMywgMjUxLCA2NSwgMjUzLCAyNDgsIDEwNCwgMTYsIDMxLCAyMjMsIDI1MSwgNjUsIDI1MywgMjQ3LCAxMDQsIDE2LCAKLSAgICAzMSwgMjIzLCAyNTAsIDEwNCwgMTYsIDMxLCAyMjMsIDI0OSwgMTA0LCAxNiwgMzEsIDIyMywgMjQ4LCAxMDQsIDE2LCAzMSwgCi0gICAgMjIzLCAyNDcsIDEwNCwgMTYsIDMxLCAyNTQsIDY2LCAxMDQsIDE2LCAzMSwgMjU0LCA2NSwgMTA0LCAxNiwgMzEsIDIzMSwgCi0gICAgMjI2LCAxMDQsIDE2LCAzMSwgMjIyLCAxNzgsIDEwNCwgMTYsIDMxLCAyNTMsIDE2MSwgMTA0LCAxNiwgMzEsIDIyNCwgMTgsIAotICAgIDEwNCwgMTYsIDMxLCAyMjQsIDE3LCAxMDQsIDE2LCAzMSwgMjUzLCA5OSwgMTA0LCAxNiwgMzEsIDI1MSwgMTUyLCAyMjcsIAotICAgIDIwLCAxMDQsIDE2LCAzMSwgMjE4LCAwLCAxMDQsIDE2LCAzMSwgMjE3LCAyNTUsIDEwNCwgMTYsIDMxLCAyMjQsIDE1MywgCi0gICAgMjMyLCAyNTEsIDEwNCwgMTYsIDMxLCAyNTEsIDEwOSwgMTA0LCAxNiwgMzEsIDI1MSwgMTA4LCAxMDQsIDE2LCAzMSwgMjUxLCAKLSAgICAxMDcsIDEwNCwgMTYsIDMxLCAyNTQsIDQ3LCAxMDQsIDE2LCAzMSwgMjI3LCA4NCwgMTA0LCAxNiwgMzEsIDIxOSwgMTgwLCAKLSAgICAxMDQsIDE2LCAzMSwgMjE3LCAzNSwgMTA0LCAxNiwgMzEsIDI0MiwgNzcsIDEwNCwgMTYsIDMxLCAyMTQsIDEyLCAxMDQsIAotICAgIDE2LCAzMSwgMjI1LCAxMDYsIDEwNCwgMTYsIDMxLCAyNTAsIDIwMiwgMTA0LCAxNiwgMzEsIDIxNiwgNTAsIDEwNCwgMTYsIAotICAgIDMxLCAyNTAsIDE3OCwgMjMwLCAxOTIsIDEwNCwgMTYsIDMxLCAyMjIsIDEyMCwgNjUsIDIzNSwgNTgsIDEwNCwgMTYsIDMxLCAKLSAgICAyNTAsIDIxMSwgMTA0LCAxNiwgMzEsIDIxNiwgMTc3LCAxMDQsIDE2LCAzMSwgMjE5LCA5MywgMjE2LCAxNzcsIDEwNCwgMTYsIAotICAgIDMxLCAyMzIsIDIwMSwgMTA0LCAxNiwgMzEsIDIxOSwgMjQwLCAxMDQsIDE2LCAzMSwgMjE1LCAxMTMsIDEwNCwgMTYsIDMxLCAKLSAgICAyNDAsIDIzMywgMjQ2LCAxOSwgMTA0LCAxNiwgMzEsIDI1MywgMTQyLCAxMDQsIDE2LCAzMSwgMjI1LCAxMTQsIDI1MywgCi0gICAgMTQyLCAxMDQsIDE2LCAzMSwgMjUxLCA3MCwgMTA0LCAxNiwgMzEsIDIyNSwgMTA1LCAyNTEsIDcwLCAxMDQsIDE2LCAzMSwgCi0gICAgMjU0LCA0NCwgMTA0LCAxNiwgMzEsIDIxOSwgNTcsIDIxOCwgMjI2LCAyMTksIDU2LCAxMDQsIDE2LCAzMSwgMjE5LCA1NywgCi0gICAgMjE4LCAyMjYsIDIxOSwgNTUsIDEwNCwgMTYsIDMxLCAyMTksIDEzLCAxMDQsIDE2LCAzMSwgMjI1LCA4MCwgMTA0LCAxNiwgCi0gICAgMzEsIDI0NywgMTMzLCAxMDQsIDE2LCAzMSwgMjQ3LCAxMzUsIDEwNCwgMTYsIDMxLCAyNDcsIDEzNCwgMTA0LCAxNiwgMzEsIAotICAgIDIyNSwgMTcsIDEwNCwgMTYsIDMxLCAyMjUsIDcsIDEwNCwgMTYsIDMxLCAyNDksIDYyLCAxMDQsIDE2LCAzMSwgMjQ5LCA2MSwgCi0gICAgMTA0LCAxNiwgMzEsIDI0OSwgNjAsIDEwNCwgMTYsIDMxLCAyNDksIDU5LCAxMDQsIDE2LCAzMSwgMjQ5LCA1OCwgMTA0LCAKLSAgICAxNiwgMzEsIDI1NCwgNzcsIDEwNCwgMTYsIDMxLCAyNTIsIDM5LCA2NSwgMjMxLCAyMTIsIDEwNCwgMTYsIDMxLCAyNTIsIAotICAgIDM5LCA2NSwgMjE0LCAyNDksIDEwNCwgMTYsIDMxLCAyMjMsIDIwOSwgMTA0LCAxNiwgMzEsIDI0MCwgMjI1LCAxMDQsIDE2LCAKLSAgICAzMSwgMjI5LCA0MywgMTA0LCAxNiwgMzEsIDI0OCwgOTEsIDEwNCwgMTYsIDMxLCAyMzAsIDIwNCwgMTA0LCAxNiwgMzEsIAotICAgIDE1MSwgMjQ2LCA0OSwgMTA0LCAxNiwgMzEsIDE1MSwgMjI3LCAwLCA5LCAxMywgMjQwLCA5NSwgOSwgMTMsIDI0MCwgOTQsIAotICAgIDksIDEzLCAyNDAsIDkzLCA5LCAxMywgMjQwLCA5MiwgOSwgMTMsIDI0MCwgOTEsIDksIDEzLCAyNDAsIDkwLCA5LCAxMywgCi0gICAgMjQwLCA4OSwgOSwgMTMsIDI0MCwgODgsIDksIDEzLCAyNDAsIDg3LCA5LCAxMywgMjQwLCA4NiwgOSwgMTMsIDI0MCwgODUsIAotICAgIDksIDEzLCAyNDAsIDg0LCA5LCAxMywgMjQwLCA4MywgOSwgMTMsIDI0MCwgODIsIDksIDEzLCAyNDAsIDgxLCA5LCAxMywgCi0gICAgMjQwLCA4MCwgOSwgMTMsIDI0MCwgNzksIDksIDEzLCAyNDAsIDc4LCA5LCAxMywgMjQwLCA3NywgOSwgMTMsIDI0MCwgNzYsIAotICAgIDksIDEzLCAyNDAsIDc1LCA5LCAxMywgMjQwLCA3NCwgOSwgMTMsIDI0MCwgNzMsIDksIDEzLCAyNDAsIDcyLCA5LCAxMywgCi0gICAgMjQwLCA3MSwgOSwgMTMsIDI0MCwgNzAsIDksIDEzLCAyNDAsIDY5LCA5LCAxMywgMjQwLCA2OCwgOSwgMTMsIDI0MCwgNjcsIAotICAgIDksIDEzLCAyNDAsIDY2LCA5LCAxMywgMjQwLCA2NSwgOSwgMTMsIDI0MCwgNjQsIDksIDEzLCAyNDAsIDYzLCA5LCAxMywgCi0gICAgMjQwLCA2MiwgOSwgMTMsIDI0MCwgNjEsIDksIDEzLCAyNDAsIDYwLCA5LCAxMywgMjQwLCA1OSwgOSwgMTMsIDI0MCwgNTgsIAotICAgIDksIDEzLCAyNDAsIDU3LCA5LCAxMywgMjQwLCA1NiwgOSwgMTMsIDI0MCwgNTUsIDksIDEzLCAyNDAsIDU0LCA5LCAxMywgCi0gICAgMjQwLCA1MywgOSwgMTMsIDI0MCwgNTIsIDksIDEzLCAyNDAsIDUxLCA5LCAxMywgMjQwLCA1MCwgOSwgMTMsIDI0MCwgNDksIAotICAgIDksIDEzLCAyNDAsIDQ4LCA5LCAxMywgMjQwLCA0NywgOSwgMTMsIDI0MCwgNDYsIDksIDEzLCAyNDAsIDQ1LCA5LCAxMywgCi0gICAgMjQwLCA0NCwgOSwgMTMsIDI0MCwgNDMsIDksIDEzLCAyNDAsIDQyLCA5LCAxMywgMjQwLCA0MSwgOSwgMTMsIDI0MCwgNDAsIAotICAgIDksIDEzLCAyNDAsIDM5LCA5LCAxMywgMjQwLCAzOCwgOSwgMTMsIDI0MCwgMzcsIDksIDEzLCAyNDAsIDM2LCA5LCAxMywgCi0gICAgMjQwLCAzNSwgOSwgMTMsIDI0MCwgMzQsIDksIDEzLCAyNDAsIDMzLCA5LCAxMywgMjQwLCAzMiwgOSwgMTMsIDI0MCwgMzEsIAotICAgIDksIDEzLCAyNDAsIDMwLCA5LCAxMywgMjQwLCAyOSwgOSwgMTMsIDI0MCwgMjgsIDksIDEzLCAyNDAsIDI3LCA5LCAxMywgCi0gICAgMjQwLCAyNiwgOSwgMTMsIDI0MCwgMjUsIDksIDEzLCAyNDAsIDI0LCA5LCAxMywgMjQwLCAyMywgOSwgMTMsIDI0MCwgMjIsIAotICAgIDksIDEzLCAyNDAsIDIxLCA5LCAxMywgMjQwLCAyMCwgOSwgMTMsIDI0MCwgMTksIDksIDEzLCAyNDAsIDE4LCA5LCAxMywgCi0gICAgMjQwLCAxNywgOSwgMTMsIDI0MCwgMTYsIDksIDEzLCAyNDAsIDE1LCA5LCAxMywgMjQwLCAxNCwgOSwgMTMsIDI0MCwgMTMsIAotICAgIDksIDEzLCAyNDAsIDEyLCA5LCAxMywgMjQwLCAxMSwgOSwgMTMsIDI0MCwgMTAsIDksIDEzLCAyNDAsIDksIDksIDEzLCAKLSAgICAyNDAsIDgsIDksIDEzLCAyNDAsIDcsIDksIDEzLCAyNDAsIDYsIDksIDEzLCAyNDAsIDUsIDksIDEzLCAyNDAsIDQsIDksIAotICAgIDEzLCAyNDAsIDMsIDksIDEzLCAyNDAsIDIsIDksIDEzLCAyNDAsIDEsIDksIDEzLCAyNDAsIDAsIDksIDEzLCAyMzksIDI1NSwgCi0gICAgOSwgMTMsIDIzOSwgMjU0LCA5LCAxMywgMjM5LCAyNTMsIDksIDEzLCAyMzksIDI1MiwgOSwgMTMsIDIzOSwgMjUxLCA5LCAKLSAgICAxMywgMjM5LCAyNTAsIDksIDEzLCAyMzksIDI0OSwgOSwgMTMsIDIzOSwgMjQ4LCA5LCAxMywgMjM5LCAyNDcsIDksIDEzLCAKLSAgICAyMzksIDI0NiwgOSwgMTMsIDIzOSwgMjQ1LCA5LCAxMywgMjM5LCAyNDQsIDksIDEzLCAyMzksIDI0MywgOSwgMTMsIDIzOSwgCi0gICAgMjQyLCA5LCAxMywgMjM5LCAyNDEsIDksIDEzLCAyMzksIDI0MCwgOSwgMTMsIDIzOSwgMjM5LCA5LCAxMywgMjM5LCAyMzgsIAotICAgIDksIDEzLCAyMzksIDIzNywgOSwgMTMsIDIzOSwgMjM2LCA5LCAxMywgMjM5LCAyMzUsIDksIDEzLCAyMzksIDIzNCwgOSwgCi0gICAgMTMsIDIzOSwgMjMzLCA5LCAxMywgMjM5LCAyMzIsIDksIDEzLCAyMzksIDIzMSwgOSwgMTMsIDIzOSwgMjMwLCA5LCAxMywgCi0gICAgMjM5LCAyMjksIDksIDEzLCAyMzksIDIyOCwgOSwgMTMsIDIzOSwgMjI3LCA5LCAxMywgMjM5LCAyMjYsIDksIDEzLCAyMzksIAotICAgIDIyNSwgOSwgMTMsIDIzOSwgMjI0LCA5LCAxMywgMjM5LCAyMjMsIDksIDEzLCAyMzksIDIyMiwgOSwgMTMsIDIzOSwgMjIxLCAKLSAgICA5LCAxMywgMjM5LCAyMjAsIDksIDEzLCAyMzksIDIxOSwgOSwgMTMsIDIzOSwgMjE4LCA5LCAxMywgMjM5LCAyMTcsIDksIAotICAgIDEzLCAyMzksIDIxNiwgOSwgMTMsIDIzOSwgMjE1LCA5LCAxMywgMjM5LCAyMTQsIDksIDEzLCAyMzksIDIxMywgOSwgMTMsIAotICAgIDIzOSwgMjEyLCA5LCAxMywgMjM5LCAyMTEsIDksIDEzLCAyMzksIDIxMCwgOSwgMTMsIDIzOSwgMjA5LCA5LCAxMywgMjM5LCAKLSAgICAyMDgsIDksIDEzLCAyMzksIDIwNywgOSwgMTMsIDIzOSwgMjA2LCA5LCAxMywgMjM5LCAyMDUsIDksIDEzLCAyMzksIDIwNCwgCi0gICAgOSwgMTMsIDIzOSwgMjAzLCA5LCAxMywgMjM5LCAyMDIsIDksIDEzLCAyMzksIDIwMSwgOSwgMTMsIDIzOSwgMjAwLCA5LCAKLSAgICAxMywgMjM5LCAxOTksIDksIDEzLCAyMzksIDE5OCwgOSwgMTMsIDIzOSwgMTk3LCA5LCAxMywgMjM5LCAxOTYsIDksIDEzLCAKLSAgICAyMzksIDE5NSwgOSwgMTMsIDIzOSwgMTk0LCA5LCAxMywgMjM5LCAxOTMsIDksIDEzLCAyMzksIDE5MiwgOSwgMTMsIDIzOSwgCi0gICAgMTkxLCA5LCAxMywgMjM5LCAxOTAsIDksIDEzLCAyMzksIDE4OSwgOSwgMTMsIDIzOSwgMTg4LCA5LCAxMywgMjM5LCAxODcsIAotICAgIDksIDEzLCAyMzksIDE4NiwgOSwgMTMsIDIzOSwgMTg1LCA5LCAxMywgMjM5LCAxODQsIDksIDEzLCAyMzksIDE4MywgOSwgCi0gICAgMTMsIDIzOSwgMTgyLCA5LCAxMywgMjM5LCAxODEsIDksIDEzLCAyMzksIDE4MCwgOSwgMTMsIDIzOSwgMTc5LCA5LCAxMywgCi0gICAgMjM5LCAxNzgsIDksIDEzLCAyMzksIDE3NywgOSwgMTMsIDIzOSwgMTc2LCA5LCAxMywgMjM5LCAxNzUsIDksIDEzLCAyMzksIAotICAgIDE3NCwgOSwgMTMsIDIzOSwgMTczLCA5LCAxMywgMjM5LCAxNzIsIDksIDEzLCAyMzksIDE3MSwgOSwgMTMsIDIzOSwgMTcwLCAKLSAgICA5LCAxMywgMjM5LCAxNjksIDksIDEzLCAyMzksIDE2OCwgOSwgMTMsIDIzOSwgMTY3LCA5LCAxMywgMjM5LCAxNjYsIDksIAotICAgIDEzLCAyMzksIDE2NSwgOSwgMTMsIDIzOSwgMTY0LCA5LCAxMywgMjM5LCAxNjMsIDksIDEzLCAyMzksIDE2MiwgOSwgMTMsIAotICAgIDIzOSwgMTYxLCA5LCAxMywgMjM5LCAxNjAsIDksIDEzLCAyMzksIDE1OSwgOSwgMTMsIDIzOSwgMTU4LCA5LCAxMywgMjM5LCAKLSAgICAxNTcsIDksIDEzLCAyMzksIDE1NiwgOSwgMTMsIDIzOSwgMTU1LCA5LCAxMywgMjM5LCAxNTQsIDksIDEzLCAyMzksIDE1MywgCi0gICAgOSwgMTMsIDIzOSwgMTUyLCA5LCAxMywgMjM5LCAxNTEsIDksIDEzLCAyMzksIDE1MCwgOSwgMTMsIDIzOSwgMTQ5LCA5LCAKLSAgICAxMywgMjM5LCAxNDgsIDksIDEzLCAyMzksIDE0NywgOSwgMTMsIDIzOSwgMTQ2LCA5LCAxMywgMjM5LCAxNDUsIDksIDEzLCAKLSAgICAyMzksIDE0NCwgOSwgMTMsIDIzOSwgMTQzLCA5LCAxMywgMjM5LCAxNDIsIDksIDEzLCAyMzksIDE0MSwgOSwgMTMsIDIzOSwgCi0gICAgMTQwLCA5LCAxMywgMjM5LCAxMzksIDksIDEzLCAyMzksIDEzOCwgOSwgMTMsIDIzOSwgMTM3LCA5LCAxMywgMjM5LCAxMzYsIAotICAgIDksIDEzLCAyMzksIDEzNSwgOSwgMTMsIDIzOSwgMTM0LCA5LCAxMywgMjM5LCAxMzMsIDksIDEzLCAyMzksIDEzMiwgOSwgCi0gICAgMTMsIDIzOSwgMTMxLCA5LCAxMywgMjM5LCAxMzAsIDksIDEzLCAyMzksIDEyOSwgOSwgMTMsIDIzOSwgMTI4LCA5LCAxMywgCi0gICAgMjM5LCAxMjcsIDksIDEzLCAyMzksIDEyNiwgOSwgMTMsIDIzOSwgMTI1LCA5LCAxMywgMjM5LCAxMjQsIDksIDEzLCAyMzksIAotICAgIDEyMywgOSwgMTMsIDIzOSwgMTIyLCA5LCAxMywgMjM5LCAxMjEsIDksIDEzLCAyMzksIDEyMCwgOSwgMTMsIDIzOSwgMTE5LCAKLSAgICA5LCAxMywgMjM5LCAxMTgsIDksIDEzLCAyMzksIDExNywgOSwgMTMsIDIzOSwgMTE2LCA5LCAxMywgMjM5LCAxMTUsIDksIAotICAgIDEzLCAyMzksIDExNCwgOSwgMTMsIDIzOSwgMTEzLCA5LCAxMywgMjM5LCAxMTIsIDksIDEzLCAyMzksIDExMSwgOSwgMTMsIAotICAgIDIzOSwgMTEwLCA5LCAxMywgMjM5LCAxMDksIDksIDEzLCAyMzksIDEwOCwgOSwgMTMsIDIzOSwgMTA3LCA5LCAxMywgMjM5LCAKLSAgICAxMDYsIDksIDEzLCAyMzksIDEwNSwgOSwgMTMsIDIzOSwgMTA0LCA5LCAxMywgMjM5LCAxMDMsIDksIDEzLCAyMzksIDEwMiwgCi0gICAgOSwgMTMsIDIzOSwgMTAxLCA5LCAxMywgMjM5LCAxMDAsIDksIDEzLCAyMzksIDk5LCA5LCAxMywgMjM5LCA5OCwgOSwgMTMsIAotICAgIDIzOSwgOTcsIDksIDEzLCAyMzksIDk2LCA5LCAxMywgMjM5LCA5NSwgOSwgMTMsIDIzOSwgOTQsIDksIDEzLCAyMzksIDkzLCAKLSAgICA5LCAxMywgMjM5LCA5MiwgOSwgMTMsIDIzOSwgOTEsIDksIDEzLCAyMzksIDkwLCA5LCAxMywgMjM5LCA4OSwgOSwgMTMsIAotICAgIDIzOSwgODgsIDksIDEzLCAyMzksIDg3LCA5LCAxMywgMjM5LCA4NiwgOSwgMTMsIDIzOSwgODUsIDksIDEzLCAyMzksIDg0LCAKLSAgICA5LCAxMywgMjM5LCA4MywgOSwgMTMsIDIzOSwgODIsIDksIDEzLCAyMzksIDgxLCA5LCAxMywgMjM5LCA4MCwgOSwgMTMsIAotICAgIDIzOSwgNzksIDksIDEzLCAyMzksIDc4LCA5LCAxMywgMjM5LCA3NywgOSwgMTMsIDIzOSwgNzYsIDksIDEzLCAyMzksIDc1LCAKLSAgICA5LCAxMywgMjM5LCA3NCwgOSwgMTMsIDIzOSwgNzMsIDksIDEzLCAyMzksIDcyLCA5LCAxMywgMjM5LCA3MSwgOSwgMTMsIAotICAgIDIzOSwgNzAsIDksIDEzLCAyMzksIDY5LCA5LCAxMywgMjM5LCA2OCwgOSwgMTMsIDIzOSwgNjcsIDksIDEzLCAyMzksIDY2LCAKLSAgICA5LCAxMywgMjM5LCA2NSwgOSwgMTMsIDIzOSwgNjQsIDksIDEzLCAyMzksIDYzLCA5LCAxMywgMjM5LCA2MiwgOSwgMTMsIAotICAgIDIzOSwgNjEsIDksIDEzLCAyMzksIDYwLCA5LCAxMywgMjM5LCA1OSwgOSwgMTMsIDIzOSwgNTgsIDksIDEzLCAyMzksIDU3LCAKLSAgICA5LCAxMywgMjM5LCA1NiwgOSwgMTMsIDIzOSwgNTUsIDksIDEzLCAyMzksIDU0LCA5LCAxMywgMjM5LCA1MywgOSwgMTMsIAotICAgIDIzOSwgNTIsIDksIDEzLCAyMzksIDUxLCA5LCAxMywgMjM5LCA1MCwgOSwgMTMsIDIzOSwgNDksIDksIDEzLCAyMzksIDQ4LCAKLSAgICA5LCAxMywgMjM5LCA0NywgOSwgMTMsIDIzOSwgNDYsIDksIDEzLCAyMzksIDQ1LCA5LCAxMywgMjM5LCA0NCwgOSwgMTMsIAotICAgIDIzOSwgNDMsIDksIDEzLCAyMzksIDQyLCA5LCAxMywgMjM5LCA0MSwgOSwgMTMsIDIzOSwgNDAsIDksIDEzLCAyMzksIDM5LCAKLSAgICA5LCAxMywgMjM5LCAzOCwgOSwgMTMsIDIzOSwgMzcsIDksIDEzLCAyMzksIDM2LCA5LCAxMywgMjM5LCAzNSwgOSwgMTMsIAotICAgIDIzOSwgMzQsIDksIDEzLCAyMzksIDMzLCA5LCAxMywgMjM5LCAzMiwgOSwgMTMsIDIzOSwgMzEsIDksIDEzLCAyMzksIDMwLCAKLSAgICA5LCAxMywgMjM5LCAyOSwgOSwgMTMsIDIzOSwgMjgsIDksIDEzLCAyMzksIDI3LCA5LCAxMywgMjM5LCAyNiwgOSwgMTMsIAotICAgIDIzOSwgMjUsIDksIDEzLCAyMzksIDI0LCA5LCAxMywgMjM5LCAyMywgOSwgMTMsIDIzOSwgMjIsIDksIDEzLCAyMzksIDIxLCAKLSAgICA5LCAxMywgMjM5LCAyMCwgOSwgMTMsIDIzOSwgMTksIDksIDEzLCAyMzksIDE4LCA5LCAxMywgMjM5LCAxNywgOSwgMTMsIAotICAgIDIzOSwgMTYsIDksIDEzLCAyMzksIDE1LCA5LCAxMywgMjM5LCAxNCwgOSwgMTMsIDIzOSwgMTMsIDksIDEzLCAyMzksIDEyLCAKLSAgICA5LCAxMywgMjM5LCAxMSwgOSwgMTMsIDIzOSwgMTAsIDksIDEzLCAyMzksIDksIDksIDEzLCAyMzksIDgsIDksIDEzLCAyMzksIAotICAgIDcsIDksIDEzLCAyMzksIDYsIDksIDEzLCAyMzksIDUsIDksIDEzLCAyMzksIDQsIDksIDEzLCAyMzksIDMsIDksIDEzLCAKLSAgICAyMzksIDIsIDksIDEzLCAyMzksIDEsIDksIDEzLCAyMzksIDAsIDksIDEzLCAyMzgsIDI1NSwgOSwgMTMsIDIzOCwgMjU0LCAKLSAgICA5LCAxMywgMjM4LCAyNTMsIDksIDEzLCAyMzgsIDI1MiwgOSwgMTMsIDIzOCwgMjUxLCA5LCAxMywgMjM4LCAyNTAsIDksIAotICAgIDEzLCAyMzgsIDI0OSwgOSwgMTMsIDIzOCwgMjQ4LCA5LCAxMywgMjM4LCAyNDcsIDksIDEzLCAyMzgsIDI0NiwgOSwgMTMsIAotICAgIDIzOCwgMjQ1LCA5LCAxMywgMjM4LCAyNDQsIDksIDEzLCAyMzgsIDI0MywgOSwgMTMsIDIzOCwgMjQyLCA5LCAxMywgMjM4LCAKLSAgICAyNDEsIDksIDEzLCAyMzgsIDI0MCwgOSwgMTMsIDIzOCwgMjM5LCA5LCAxMywgMjM4LCAyMzgsIDksIDEzLCAyMzgsIDIzNywgCi0gICAgOSwgMTMsIDIzOCwgMjM2LCA5LCAxMywgMjM4LCAyMzUsIDksIDEzLCAyMzgsIDIzNCwgOSwgMTMsIDIzOCwgMjMzLCA5LCAKLSAgICAxMywgMjM4LCAyMzIsIDksIDEzLCAyMzgsIDIzMSwgOSwgMTMsIDIzOCwgMjMwLCA5LCAxMywgMjM4LCAyMjksIDksIDEzLCAKLSAgICAyMzgsIDIyOCwgOSwgMTMsIDIzOCwgMjI3LCA5LCAxMywgMjM4LCAyMjYsIDksIDEzLCAyMzgsIDIyNSwgOSwgMTMsIDIzOCwgCi0gICAgMjI0LCA5LCAxMywgMjM4LCAyMjMsIDksIDEzLCAyMzgsIDIyMiwgOSwgMTMsIDIzOCwgMjIxLCA5LCAxMywgMjM4LCAyMjAsIAotICAgIDksIDEzLCAyMzgsIDIxOSwgOSwgMTMsIDIzOCwgMjE4LCA5LCAxMywgMjM4LCAyMTcsIDksIDEzLCAyMzgsIDIxNiwgOSwgCi0gICAgMTMsIDIzOCwgMjE1LCA5LCAxMywgMjM4LCAyMTQsIDksIDEzLCAyMzgsIDIxMywgOSwgMTMsIDIzOCwgMjEyLCA5LCAxMywgCi0gICAgMjM4LCAyMTEsIDksIDEzLCAyMzgsIDIxMCwgOSwgMTMsIDIzOCwgMjA5LCA5LCAxMywgMjM4LCAyMDgsIDksIDEzLCAyMzgsIAotICAgIDIwNywgOSwgMTMsIDIzOCwgMjA2LCA5LCAxMywgMjM4LCAyMDUsIDksIDEzLCAyMzgsIDIwNCwgOSwgMTMsIDIzOCwgMjAzLCAKLSAgICA5LCAxMywgMjM4LCAyMDIsIDksIDEzLCAyMzgsIDIwMSwgOSwgMTMsIDIzOCwgMjAwLCA5LCAxMywgMjM4LCAxOTksIDksIAotICAgIDEzLCAyMzgsIDE5OCwgOSwgMTMsIDIzOCwgMTk3LCA5LCAxMywgMjM4LCAxOTYsIDksIDEzLCAyMzgsIDE5NSwgOSwgMTMsIAotICAgIDIzOCwgMTk0LCA5LCAxMywgMjM4LCAxOTMsIDksIDEzLCAyMzgsIDE5MiwgOSwgMTMsIDIzOCwgMTkxLCA5LCAxMywgMjM4LCAKLSAgICAxOTAsIDksIDEzLCAyMzgsIDE4OSwgOSwgMTMsIDIzOCwgMTg4LCA5LCAxMywgMjM4LCAxODcsIDksIDEzLCAyMzgsIDE4NiwgCi0gICAgOSwgMTMsIDIzOCwgMTg1LCA5LCAxMywgMjM4LCAxODQsIDksIDEzLCAyMzgsIDE4MywgOSwgMTMsIDIzOCwgMTgyLCA5LCAKLSAgICAxMywgMjM4LCAxODEsIDksIDEzLCAyMzgsIDE4MCwgOSwgMTMsIDIzOCwgMTc5LCA5LCAxMywgMjM4LCAxNzgsIDksIDEzLCAKLSAgICAyMzgsIDE3NywgOSwgMTMsIDIzOCwgMTc2LCA5LCAxMywgMjM4LCAxNzUsIDksIDEzLCAyMzgsIDE3NCwgOSwgMTMsIDIzOCwgCi0gICAgMTczLCA5LCAxMywgMjM4LCAxNzIsIDksIDEzLCAyMzgsIDE3MSwgOSwgMTMsIDIzOCwgMTcwLCA5LCAxMywgMjM4LCAxNjksIAotICAgIDksIDEzLCAyMzgsIDE2OCwgOSwgMTMsIDIzOCwgMTY3LCA5LCAxMywgMjM4LCAxNjYsIDksIDEzLCAyMzgsIDE2NSwgOSwgCi0gICAgMTMsIDIzOCwgMTY0LCA5LCAxMywgMjM4LCAxNjMsIDksIDEzLCAyMzgsIDE2MiwgOSwgMTMsIDIzOCwgMTYxLCA5LCAxMywgCi0gICAgMjM4LCAxNjAsIDksIDEzLCAyMzgsIDE1OSwgOSwgMTMsIDIzOCwgMTU4LCA5LCAxMywgMjM4LCAxNTcsIDksIDEzLCAyMzgsIAotICAgIDE1NiwgOSwgMTMsIDIzOCwgMTU1LCA5LCAxMywgMjM4LCAxNTQsIDksIDEzLCAyMzgsIDE1MywgOSwgMTMsIDIzOCwgMTUyLCAKLSAgICA5LCAxMywgMjM4LCAxNTEsIDksIDEzLCAyMzgsIDE1MCwgOSwgMTMsIDIzOCwgMTQ5LCA5LCAxMywgMjM4LCAxNDgsIDksIAotICAgIDEzLCAyMzgsIDE0NywgOSwgMTMsIDIzOCwgMTQ2LCA5LCAxMywgMjM4LCAxNDUsIDksIDEzLCAyMzgsIDE0NCwgOSwgMTMsIAotICAgIDIzOCwgMTQzLCA5LCAxMywgMjM4LCAxNDIsIDksIDEzLCAyMzgsIDE0MSwgOSwgMTMsIDIzOCwgMTQwLCA5LCAxMywgMjM4LCAKLSAgICAxMzksIDksIDEzLCAyMzgsIDEzOCwgOSwgMTMsIDIzOCwgMTM3LCA5LCAxMywgMjM4LCAxMzYsIDksIDEzLCAyMzgsIDEzNSwgCi0gICAgOSwgMTMsIDIzOCwgMTM0LCA5LCAxMywgMjM4LCAxMzMsIDksIDEzLCAyMzgsIDEzMiwgOSwgMTMsIDIzOCwgMTMxLCA5LCAKLSAgICAxMywgMjM4LCAxMzAsIDksIDEzLCAyMzgsIDEyOSwgOSwgMTMsIDIzOCwgMTI4LCA5LCAxMywgMjM4LCAxMjcsIDksIDEzLCAKLSAgICAyMzgsIDEyNiwgOSwgMTMsIDIzOCwgMTI1LCA5LCAxMywgMjM4LCAxMjQsIDksIDEzLCAyMzgsIDEyMywgOSwgMTMsIDIzOCwgCi0gICAgMTIyLCA5LCAxMywgMjM4LCAxMjEsIDksIDEzLCAyMzgsIDEyMCwgOSwgMTMsIDIzOCwgMTE5LCA5LCAxMywgMjM4LCAxMTgsIAotICAgIDksIDEzLCAyMzgsIDExNywgOSwgMTMsIDIzOCwgMTE2LCA5LCAxMywgMjM4LCAxMTUsIDksIDEzLCAyMzgsIDExNCwgOSwgCi0gICAgMTMsIDIzOCwgMTEzLCA5LCAxMywgMjM4LCAxMTIsIDksIDEzLCAyMzgsIDExMSwgOSwgMTMsIDIzOCwgMTEwLCA5LCAxMywgCi0gICAgMjM4LCAxMDksIDksIDEzLCAyMzgsIDEwOCwgOSwgMTMsIDIzOCwgMTA3LCA5LCAxMywgMjM4LCAxMDYsIDksIDEzLCAyMzgsIAotICAgIDEwNSwgOSwgMTMsIDIzOCwgMTA0LCA5LCAxMywgMjM4LCAxMDMsIDksIDEzLCAyMzgsIDEwMiwgOSwgMTMsIDIzOCwgMTAxLCAKLSAgICA5LCAxMywgMjM4LCAxMDAsIDksIDEzLCAyMzgsIDk5LCA5LCAxMywgMjM4LCA5OCwgOSwgMTMsIDIzOCwgOTcsIDksIDEzLCAKLSAgICAyMzgsIDk2LCA5LCAxMywgMjM4LCA5NSwgOSwgMTMsIDIzOCwgOTQsIDksIDEzLCAyMzgsIDkzLCA5LCAxMywgMjM4LCA5MiwgCi0gICAgOSwgMTMsIDIzOCwgOTEsIDksIDEzLCAyMzgsIDkwLCA5LCAxMywgMjM4LCA4OSwgOSwgMTMsIDIzOCwgODgsIDksIDEzLCAKLSAgICAyMzgsIDg3LCA5LCAxMywgMjM4LCA4NiwgOSwgMTMsIDIzOCwgODUsIDksIDEzLCAyMzgsIDg0LCA5LCAxMywgMjM4LCA4MywgCi0gICAgOSwgMTMsIDIzOCwgODIsIDksIDEzLCAyMzgsIDgxLCA5LCAxMywgMjM4LCA4MCwgOSwgMTMsIDIzOCwgNzksIDksIDEzLCAKLSAgICAyMzgsIDc4LCA5LCAxMywgMjM4LCA3NywgOSwgMTMsIDIzOCwgNzYsIDksIDEzLCAyMzgsIDc1LCA5LCAxMywgMjM4LCA3NCwgCi0gICAgOSwgMTMsIDIzOCwgNzMsIDksIDEzLCAyMzgsIDcyLCA5LCAxMywgMjM4LCA3MSwgOSwgMTMsIDIzOCwgNzAsIDksIDEzLCAKLSAgICAyMzgsIDY5LCA5LCAxMywgMjM4LCA2OCwgOSwgMTMsIDIzOCwgNjcsIDksIDEzLCAyMzgsIDY2LCAyMzMsIDExNCwgMjE4LCAKLSAgICAzMywgMTI2LCAyMTksIDIwNiwgMTI2LCAyNDQsIDI1NCwgNzcsIDEyNiwgMjI0LCAxNDMsIDc3LCAxMjYsIDUwLCA1MiwgCi0gICAgMTI2LCAyNDcsIDg2LCA1MiwgMTI2LCAyMjYsIDU3LCA1MiwgMTI2LCAyNTQsIDM1LCAxMjYsIDI1MywgMjI2LCAxMjYsIDQyLCAKLSAgICAyMjYsIDEzMSwgMTI2LCA0NiwgMjI2LCAxMzEsIDEyNiwgMjUzLCAxMzIsIDEyNiwgOTQsIDUyLCAxMjYsIDI0OSwgMTU3LCAKLSAgICAxMjYsIDI0MCwgMTU5LCAxMjYsIDI0MywgMjAwLCAyMTksIDY5LCAxMjYsIDIxOSwgMjMxLCAxMjYsIDIxLCAyMTIsIDc5LCAKLSAgICAxMjYsIDIxLCAxMTYsIDEyNiwgMjEsIDEwOSwgMTI2LCAyMSwgMTY2LCAxMjYsIDIxLCAxNjMsIDEyNiwgMjEsIDE4MCwgCi0gICAgMTI2LCAyMSwgMTg5LCAxMjYsIDIxLCAxOTgsIDEyNiwgMjEsIDE5NSwgMTI2LCAyMSwgMjAwLCAxMjYsIDI0OSwgMTY0LCAKLSAgICAxMjYsIDIyMSwgNzAsIDEyNiwgMjMzLCAzOSwgNTIsIDEyNiwgMjQ1LCA2MSwgNTIsIDEyNiwgMjQyLCAxMDcsIDUyLCAxMjYsIAotICAgIDIyNCwgMTU4LCA3NywgMTI2LCAyNDksIDE1NiwgMjUzLCAxMjIsIDEyNiwgNywgNiwgMSwgNjEsIDEyNiwgNywgNiwgMSwgCi0gICAgMjUzLCA3NCwgMTI2LCA3LCA2LCAxLCAyNTAsIDI1MiwgMTI2LCA3LCA2LCAxLCAyNDksIDMsIDEyNiwgNywgNiwgMSwgNzQsIAotICAgIDEyNiwgNywgNiwgMSwgMjQ0LCAyMzAsIDEyNiwgNywgNiwgMSwgMjQzLCAxNzcsIDEyNiwgNywgNiwgMSwgMjQyLCA0MSwgCi0gICAgMTI2LCA3LCA2LCAxLCA3MiwgMTI2LCA3LCA2LCAxLCAyMzUsIDE0MiwgMTI2LCA3LCA2LCAxLCAyMzUsIDI3LCAxMjYsIDcsIAotICAgIDYsIDEsIDE1MCwgMTI2LCA3LCA2LCAxLCAxODMsIDEyNiwgNywgNiwgMSwgMjA0LCAxMjYsIDcsIDYsIDEsIDc1LCAxMjYsIAotICAgIDcsIDYsIDEsIDIyNiwgMjI5LCAxMjYsIDcsIDYsIDEsIDIyNCwgMjQwLCAxMjYsIDcsIDYsIDEsIDE0OSwgMTI2LCA3LCA2LCAKLSAgICAxLCAxOTcsIDEyNiwgNywgNiwgMSwgMjE4LCA5OSwgMTI2LCA3LCA2LCAxLCA2OSwgMTI2LCA3LCA2LCAxLCAyMTUsIDc5LCAKLSAgICAxMjYsIDcsIDYsIDEsIDIxNCwgODIsIDEyNiwgNywgNiwgMSwgMjEzLCAxNjYsIDEyNiwgNywgNiwgMSwgMjEzLCAxMDUsIAotICAgIDEyNiwgNywgNiwgMSwgMjEyLCAxNTIsIDEyNiwgNDIsIDQxLCAxMjUsIDEyNiwgMjIzLCAyMDMsIDIxOSwgMjMxLCAxMjYsIAotICAgIDQ2LCA0MSwgMTI1LCAxMjYsIDI0OSwgMjI0LCAyNTQsIDE3NCwgMTI2LCAxMTUsIDIzMiwgMjQyLCAxMjYsIDI0MiwgMTE0LCAKLSAgICAyNTQsIDE3NCwgMTI2LCA3LCAzLCAxLCA2MSwgMTI2LCA3LCAzLCAxLCAyNTMsIDc0LCAxMjYsIDcsIDMsIDEsIDI1MCwgCi0gICAgMjUyLCAxMjYsIDcsIDMsIDEsIDI0OSwgMywgMTI2LCA3LCAzLCAxLCA3NCwgMTI2LCA3LCAzLCAxLCAyNDQsIDIzMCwgMTI2LCAKLSAgICA3LCAzLCAxLCAyNDMsIDE3NywgMTI2LCA3LCAzLCAxLCAyNDIsIDQxLCAxMjYsIDcsIDMsIDEsIDcyLCAxMjYsIDcsIDMsIDEsIAotICAgIDIzNSwgMTQyLCAxMjYsIDcsIDMsIDEsIDIzNSwgMjcsIDEyNiwgNywgMywgMSwgMTUwLCAxMjYsIDcsIDMsIDEsIDE4MywgCi0gICAgMTI2LCA3LCAzLCAxLCAyMDQsIDEyNiwgNywgMywgMSwgNzUsIDEyNiwgNywgMywgMSwgMjI2LCAyMjksIDEyNiwgNywgMywgCi0gICAgMSwgMjI0LCAyNDAsIDEyNiwgNywgMywgMSwgMTQ5LCAxMjYsIDcsIDMsIDEsIDE5NywgMTI2LCA3LCAzLCAxLCAyMTgsIDk5LCAKLSAgICAxMjYsIDcsIDMsIDEsIDY5LCAxMjYsIDcsIDMsIDEsIDIxNSwgNzksIDEyNiwgNywgMywgMSwgMjE0LCA4MiwgMTI2LCA3LCAKLSAgICAzLCAxLCAyMTMsIDE2NiwgMTI2LCA3LCAzLCAxLCAyMTMsIDEwNSwgMTI2LCA3LCAzLCAxLCAyMTIsIDE1MiwgMTI2LCA0MiwgCi0gICAgMjQ5LCA0MCwgMTI1LCAxMjYsIDcxLCAyMzIsIDI0MiwgMTI2LCA0NiwgMjQ5LCA0MCwgMTI1LCAxMjYsIDIxNywgNDIsIAotICAgIDI1MCwgMTk0LCAyMTgsIDMzLCA0MywgMjIxLCAyNTQsIDQzLCAyMjEsIDI0MywgNDMsIDIyMSwgMjMyLCA0MywgMjIxLCAKLSAgICAyMjAsIDQzLCAyMjEsIDIwOSwgNDMsIDIyMSwgMTk4LCA0MywgMjIxLCAxODcsIDQzLCAyMjEsIDE3NiwgNDMsIDIyMSwgCi0gICAgMTY1LCA0MywgMjIxLCAxNTcsIDQzLCAyMjEsIDE1NiwgNDMsIDIyMSwgMTU1LCA0MywgMjIxLCAxNTQsIDQzLCAyMjEsIAotICAgIDE1MiwgNDMsIDIyMSwgMTUxLCA0MywgMjIxLCAxNTAsIDQzLCAyMjEsIDE0OSwgNDMsIDIyMSwgMTQ4LCA0MywgMjIxLCAKLSAgICAxNDcsIDQzLCAyMjEsIDE0NiwgNDMsIDIyMSwgMTQ1LCA0MywgMjIxLCAxNDQsIDQzLCAyMjEsIDE0MywgNDMsIDIyMSwgCi0gICAgMTQxLCA0MywgMjIxLCAxNDAsIDQzLCAyMjEsIDEzOSwgNDMsIDIyMSwgMTM4LCA0MywgMjIxLCAxMzcsIDQzLCAyMjEsIAotICAgIDEzNiwgNDMsIDIyMSwgMTM1LCA0MywgMjIxLCAxMzQsIDQzLCAyMjEsIDEzMywgNDMsIDIyMSwgMTMyLCA0MywgMjIxLCAKLSAgICAxMzAsIDQzLCAyMjEsIDEyOSwgNDMsIDIyMSwgMTI4LCA0MywgMjIxLCAxMjcsIDQzLCAyMjEsIDEyNiwgNDMsIDIyMSwgCi0gICAgMTI1LCA0MywgMjIxLCAxMjQsIDQzLCAyMjEsIDEyMywgNDMsIDIyMSwgMTIyLCA0MywgMjIxLCAxMjEsIDQzLCAyMjEsIAotICAgIDExOSwgNDMsIDIyMSwgMTE4LCA0MywgMjIxLCAxMTcsIDQzLCAyMjEsIDExNiwgNDMsIDIyMSwgMTE1LCA0MywgMjIxLCAKLSAgICAxMTQsIDQzLCAyMjEsIDExMywgNDMsIDIyMSwgMTEyLCA0MywgMjIxLCAxMTEsIDQzLCAyMjEsIDExMCwgNDMsIDIyMSwgCi0gICAgMTA4LCA0MywgMjIxLCAxMDcsIDQzLCAyMjEsIDEwNiwgNDMsIDIyMSwgMTA1LCA0MywgMjIxLCAxMDQsIDQzLCAyMjEsIAotICAgIDEwMywgNDMsIDIyMSwgMTAyLCA0MywgMjIxLCAxMDEsIDQzLCAyMjEsIDEwMCwgNDMsIDIyMSwgOTksIDQzLCAyMjEsIDk3LCAKLSAgICA0MywgMjIxLCA5NiwgNDMsIDIyMSwgOTUsIDQzLCAyMjEsIDk0LCA0MywgMjIxLCA5MywgNDMsIDIyMSwgOTIsIDQzLCAyMjEsIAotICAgIDkxLCA0MywgMjIxLCA5MCwgNDMsIDIyMSwgODksIDQzLCAyMjEsIDg4LCA0MywgMjIxLCA4NiwgNDMsIDIyMSwgODUsIDQzLCAKLSAgICAyMjEsIDg0LCA0MywgMjIxLCA4MywgNDMsIDIyMSwgODIsIDQzLCAyMjEsIDgxLCA0MywgMjIxLCA4MCwgNDMsIDIyMSwgNzksIAotICAgIDQzLCAyMjEsIDc4LCA0MywgMjIxLCA3NywgNDMsIDIyMiwgNzQsIDQzLCAyMjIsIDczLCA0MywgMjIyLCA3MiwgNDMsIDIyMiwgCi0gICAgNzEsIDQzLCAyMjIsIDcwLCA0MywgMjIyLCA2OSwgNDMsIDIyMiwgNjgsIDQzLCAyMjIsIDY3LCA0MywgMjIyLCA2NiwgNDMsIAotICAgIDIyMiwgNjUsIDQzLCAyMjIsIDYzLCA0MywgMjIyLCA2MiwgNDMsIDIyMiwgNjEsIDQzLCAyMjIsIDYwLCA0MywgMjIyLCA1OSwgCi0gICAgNDMsIDIyMiwgNTgsIDQzLCAyMjIsIDU3LCA0MywgMjIyLCA1NiwgNDMsIDIyMiwgNTUsIDQzLCAyMjIsIDU0LCA0MywgMjIyLCAKLSAgICA1MiwgNDMsIDIyMiwgNTEsIDQzLCAyMjIsIDUwLCA0MywgMjIyLCA0OSwgNDMsIDIyMiwgNDgsIDQzLCAyMjIsIDQ3LCA0MywgCi0gICAgMjIyLCA0NiwgNDMsIDIyMiwgNDUsIDQzLCAyMjIsIDQ0LCA0MywgMjIyLCA0MywgNDMsIDIyMiwgNDEsIDQzLCAyMjIsIDQwLCAKLSAgICA0MywgMjIyLCAzOSwgNDMsIDIyMiwgMzgsIDQzLCAyMjIsIDM3LCA0MywgMjIyLCAzNiwgNDMsIDIyMiwgMzUsIDQzLCAyMjIsIAotICAgIDM0LCA0MywgMjIyLCAzMywgNDMsIDIyMiwgMzIsIDQzLCAyMjIsIDMwLCA0MywgMjIyLCAyOSwgNDMsIDIyMiwgMjgsIDQzLCAKLSAgICAyMjIsIDI3LCA0MywgMjIyLCAyNiwgNDMsIDIyMiwgMjUsIDQzLCAyMjIsIDI0LCA0MywgMjIyLCAyMywgNDMsIDIyMiwgMjIsIAotICAgIDQzLCAyMjIsIDIxLCA0MywgMjIyLCAxOSwgNDMsIDIyMiwgMTgsIDQzLCAyMjIsIDE3LCA0MywgMjIyLCAxNiwgNDMsIDIyMiwgCi0gICAgMTUsIDQzLCAyMjIsIDE0LCA0MywgMjIyLCAxMywgNDMsIDIyMiwgMTIsIDQzLCAyMjIsIDExLCA0MywgMjIyLCAxMCwgNDMsIAotICAgIDIyMiwgOCwgNDMsIDIyMiwgNywgNDMsIDIyMiwgNiwgNDMsIDIyMiwgNSwgNDMsIDIyMiwgNCwgNDMsIDIyMiwgMywgNDMsIAotICAgIDIyMiwgMiwgNDMsIDIyMiwgMSwgNDMsIDIyMiwgMCwgNDMsIDIyMSwgMjU1LCA0MywgMjIxLCAyNTMsIDQzLCAyMjEsIDI1MiwgCi0gICAgNDMsIDIyMSwgMjUxLCA0MywgMjIxLCAyNTAsIDQzLCAyMjEsIDI0OSwgNDMsIDIyMSwgMjQ4LCA0MywgMjIxLCAyNDcsIDQzLCAKLSAgICAyMjEsIDI0NiwgNDMsIDIyMSwgMjQ1LCA0MywgMjIxLCAyNDQsIDQzLCAyMjEsIDI0MiwgNDMsIDIyMSwgMjQxLCA0MywgCi0gICAgMjIxLCAyNDAsIDQzLCAyMjEsIDIzOSwgNDMsIDIyMSwgMjM4LCA0MywgMjIxLCAyMzcsIDQzLCAyMjEsIDIzNiwgNDMsIAotICAgIDIyMSwgMjM1LCA0MywgMjIxLCAyMzQsIDQzLCAyMjEsIDIzMywgNDMsIDIyMSwgMjMxLCA0MywgMjIxLCAyMzAsIDQzLCAKLSAgICAyMjEsIDIyOSwgNDMsIDIyMSwgMjI4LCA0MywgMjIxLCAyMjcsIDQzLCAyMjEsIDIyNiwgNDMsIDIyMSwgMjI1LCA0MywgCi0gICAgMjIxLCAyMjQsIDQzLCAyMjEsIDIyMywgNDMsIDIyMSwgMjIyLCA0MywgMjIxLCAyMTksIDQzLCAyMjEsIDIxOCwgNDMsIAotICAgIDIyMSwgMjE3LCA0MywgMjIxLCAyMTYsIDQzLCAyMjEsIDIxNSwgNDMsIDIyMSwgMjE0LCA0MywgMjIxLCAyMTMsIDQzLCAKLSAgICAyMjEsIDIxMiwgNDMsIDIyMSwgMjExLCA0MywgMjIxLCAyMTAsIDQzLCAyMjEsIDIwOCwgNDMsIDIyMSwgMjA3LCA0MywgCi0gICAgMjIxLCAyMDYsIDQzLCAyMjEsIDIwNSwgNDMsIDIyMSwgMjA0LCA0MywgMjIxLCAyMDMsIDQzLCAyMjEsIDIwMiwgNDMsIAotICAgIDIyMSwgMjAxLCA0MywgMjIxLCAyMDAsIDQzLCAyMjEsIDE5OSwgNDMsIDIyMSwgMTk3LCA0MywgMjIxLCAxOTYsIDQzLCAKLSAgICAyMjEsIDE5NSwgNDMsIDIyMSwgMTk0LCA0MywgMjIxLCAxOTMsIDQzLCAyMjEsIDE5MiwgNDMsIDIyMSwgMTkxLCA0MywgCi0gICAgMjIxLCAxOTAsIDQzLCAyMjEsIDE4OSwgNDMsIDIyMSwgMTg4LCA0MywgMjIxLCAxODYsIDQzLCAyMjEsIDE4NSwgNDMsIAotICAgIDIyMSwgMTg0LCA0MywgMjIxLCAxODMsIDQzLCAyMjEsIDE4MiwgNDMsIDIyMSwgMTgxLCA0MywgMjIxLCAxODAsIDQzLCAKLSAgICAyMjEsIDE3OSwgNDMsIDIyMSwgMTc4LCA0MywgMjIxLCAxNzcsIDQzLCAyMjEsIDE3NSwgNDMsIDIyMSwgMTc0LCA0MywgCi0gICAgMjIxLCAxNzMsIDQzLCAyMjEsIDE3MiwgNDMsIDIyMSwgMTcxLCA0MywgMjIxLCAxNzAsIDQzLCAyMjEsIDE2OSwgNDMsIAotICAgIDIyMSwgMTY4LCA0MywgMjIxLCAxNjcsIDQzLCAyMjEsIDE2NiwgNDMsIDIyMSwgMTY0LCA0MywgMjIxLCAxNjMsIDQzLCAKLSAgICAyMjEsIDE2MiwgNDMsIDIyMSwgMTYxLCA0MywgMjIxLCAxNjAsIDQzLCAyMjEsIDE1OSwgNDMsIDIyMSwgMTU4LCAKKyAgICAwLCAyMTksIDE4LCAyNDUsIDMxLCA3OCwgMjIzLCAyNTQsIDc4LCA1NCwgNTAsIDI0NywgMTMyLCA1MCwgMjI1LCAxODIsIAorICAgIDUwLCAyNTQsIDEyNiwgMjU0LCA1NywgNDMsIDIyNiwgMywgNDQsIDIyNiwgMywgMjUzLCAyMTYsIDk2LCA1MCwgMjQ5LCAKKyAgICAyMTksIDI0MCwgMTY3LCAyNDMsIDIyOSwgMjE4LCAxMjksIDIxOSwgNDYsIDIxLCAyMTAsIDg2LCAyMSwgMTEwLCAyMSwgCisgICAgMTA1LCAyMSwgMTU4LCAyMSwgMTYxLCAyMSwgMTg5LCAyMSwgMTk0LCAyMSwgMTk4LCAyMSwgMTk1LCAyMSwgMjAwLCAyNDksIAorICAgIDIyNiwgMjIwLCAxNTAsIDIzMywgMTUsIDUwLCAyNDUsIDk4LCA1MCwgMjQyLCAxMzAsIDUwLCAyMjQsIDEzLCA3OCwgMjQ5LCAKKyAgICAyMTcsIDI1MywgMjA2LCA3LCA2LCAxLCA2MSwgNywgNiwgMSwgMjUzLCAxNTgsIDcsIDYsIDEsIDI1MSwgNjYsIDcsIDYsIDEsIAorICAgIDI0OSwgNjAsIDcsIDYsIDEsIDc1LCA3LCA2LCAxLCAyNDUsIDYsIDcsIDYsIDEsIDI0MywgMjAyLCA3LCA2LCAxLCAyNDIsIAorICAgIDYwLCA3LCA2LCAxLCA3MywgNywgNiwgMSwgMjM1LCAxNDQsIDcsIDYsIDEsIDIzNSwgMjMsIDcsIDYsIDEsIDE1NiwgNywgNiwgCisgICAgMSwgMTkzLCA3LCA2LCAxLCAyMzAsIDI1LCA3LCA2LCAxLCA3NiwgNywgNiwgMSwgMjI2LCAxMDUsIDcsIDYsIDEsIDIyNCwgCisgICAgOTYsIDcsIDYsIDEsIDE1MywgNywgNiwgMSwgMjIyLCA5MSwgNywgNiwgMSwgMjE3LCAxNTIsIDcsIDYsIDEsIDcwLCA3LCA2LCAKKyAgICAxLCAyMTQsIDEwNSwgNywgNiwgMSwgMjEyLCA5OCwgNywgNiwgMSwgMjExLCAxNzgsIDcsIDYsIDEsIDIxMSwgMTE3LCA3LCAKKyAgICA2LCAxLCAyMTAsIDE1OSwgNDMsIDQyLCAxMjcsIDIyMywgNTAsIDIxOSwgNDYsIDQ0LCA0MiwgMTI3LCAyNTAsIDMxLCAyNTUsIAorICAgIDE0LCAxMjEsIDIzMiwgMjEzLCAyNDIsIDEzNywgMjU1LCAxNCwgNywgNCwgMSwgNjEsIDcsIDQsIDEsIDI1MywgMTU4LCA3LCAKKyAgICA0LCAxLCAyNTEsIDY2LCA3LCA0LCAxLCAyNDksIDYwLCA3LCA0LCAxLCA3NSwgNywgNCwgMSwgMjQ1LCA2LCA3LCA0LCAxLCAKKyAgICAyNDMsIDIwMiwgNywgNCwgMSwgMjQyLCA2MCwgNywgNCwgMSwgNzMsIDcsIDQsIDEsIDIzNSwgMTQ0LCA3LCA0LCAxLCAyMzUsIAorICAgIDIzLCA3LCA0LCAxLCAxNTYsIDcsIDQsIDEsIDE5MywgNywgNCwgMSwgMjMwLCAyNSwgNywgNCwgMSwgNzYsIDcsIDQsIDEsIAorICAgIDIyNiwgMTA1LCA3LCA0LCAxLCAyMjQsIDk2LCA3LCA0LCAxLCAxNTMsIDcsIDQsIDEsIDIyMiwgOTEsIDcsIDQsIDEsIDIxNywgCisgICAgMTUyLCA3LCA0LCAxLCA3MCwgNywgNCwgMSwgMjE0LCAxMDUsIDcsIDQsIDEsIDIxMiwgOTgsIDcsIDQsIDEsIDIxMSwgMTc4LCAKKyAgICA3LCA0LCAxLCAyMTEsIDExNywgNywgNCwgMSwgMjEwLCAxNTksIDQzLCAyNDksIDk5LCAxMjcsIDY3LCAyMzIsIDIxMywgNDQsIAorICAgIDI0OSwgOTksIDEyNywgMTgyLCAyMjgsIDczLCAyMTksIDE4LCAyMzUsIDE5MywgMjQ1LCAzMSwgNzgsIDI1MCwgMTc2LCA1MCwgCisgICAgMjI0LCAyMjgsIDUwLCAyNDksIDk4LCA1MCwgMjExLCA0MCwgNTAsIDI1MSwgMTM1LCAxMzAsIDIyMSwgMTczLCA1MCwgMjQ4LCAKKyAgICAxLCAyNDksIDE2MywgNTAsIDI0NCwgMTM2LCAyMjYsIDE1NCwgMjM1LCAyMzgsIDIzMywgNDIsIDUyLCAyNTQsIDExMCwgCisgICAgMjIzLCAyNTQsIDc4LCAyMjgsIDUyLCA1MCwgMjE5LCA1MiwgMjQwLCAxNjgsIDIyMywgMTAyLCA1MCwgMjMxLCAyMzIsIAorICAgIDI0OCwgNzEsIDUwLCAyMjUsIDIxLCA1MCwgMjE4LCAyMywgMTA1LCAyMTgsIDIzLCAxNTgsIDI1NSwgMywgMjU1LCAxNCwgCisgICAgMjMwLCAyMjgsIDUwLCAyMjUsIDY4LCA1MCwgMjMwLCAyMjQsIDI0NywgMTIwLCAyNTAsIDE4MywgMjE4LCAyMywgMTEwLCAKKyAgICAyMzEsIDE0OCwgMjI2LCAxNTQsIDIzNSwgMjM4LCAyMjIsIDI0NywgNTIsIDI1NCwgMTEwLCAyMjMsIDI1NCwgNzgsIDIxMiwgCisgICAgMTE0LCAyNDQsIDIsIDEyMywgMjI0LCAyMSwgMjEyLCAxMTQsIDI0NCwgMiwgMTIzLCAyNDIsIDI3LCAyMTIsIDExNCwgMjQ0LCAKKyAgICAyLCAxMzQsIDIyNCwgMTksIDIzNSwgMTkzLCAyMjQsIDEzLCA3OCwgNywgNiwgMSwgMTE1LCAyLCAyNDIsIDEzNiwgNywgNiwgCisgICAgMSwgMTE1LCAyLCAxNDIsIDcsIDYsIDEsIDExNSwgMiwgMjUwLCAzMCwgNywgNiwgMSwgMTE1LCAyLCAxODIsIDcsIDYsIDEsIAorICAgIDExNSwgMiwgMjQ4LCAxLCA3LCA2LCAxLCAxMTUsIDIsIDIyMiwgMjM0LCA0OCwgNywgNiwgMSwgMjU0LCAyNDMsIDcsIDYsIAorICAgIDEsIDI1MSwgNjcsIDIsIDI1MCwgMTgzLCA3LCA2LCAxLCAxNjAsIDIsIDI0MiwgMTM2LCA3LCA2LCAxLCAxNjAsIDIsIDE0MiwgCisgICAgNywgNiwgMSwgMTYwLCAyLCAyNTAsIDMwLCA3LCA2LCAxLCAxNjAsIDIsIDI0OCwgMSwgNywgNiwgMSwgMjQwLCAxNTQsIDIsIAorICAgIDI0MiwgMTM2LCA3LCA2LCAxLCAyNDAsIDE1NCwgMiwgMTQyLCA3LCA2LCAxLCAyNDAsIDE1NCwgMiwgMjUwLCAzMCwgNywgNiwgCisgICAgMSwgMjQwLCAxNTQsIDIsIDI0OCwgMSwgNywgNiwgMSwgMjQ1LCA1OSwgNywgNiwgMSwgMjMwLCAyNiwgMiwgMTgyLCA3LCA2LCAKKyAgICAxLCAxNDQsIDIsIDI0MiwgMTM2LCA3LCA2LCAxLCAxNDQsIDIsIDE0MiwgNywgNiwgMSwgMTQ0LCAyLCAyNTAsIDMwLCA3LCAKKyAgICA2LCAxLCAxNDQsIDIsIDE4MiwgNywgNiwgMSwgMTQ0LCAyLCAyNDgsIDEsIDIzMCwgODQsIDUwLCA3LCA2LCAxLCAxNDQsIDIsIAorICAgIDkxLCA3LCA2LCAxLCAxMDQsIDIsIDI0MiwgMTM2LCA3LCA2LCAxLCAxMDQsIDIsIDE0MiwgNywgNiwgMSwgMTA0LCAyLCAKKyAgICAyNTAsIDMwLCA3LCA2LCAxLCAxMDQsIDIsIDI0OCwgMSwgNywgNiwgMSwgMjExLCAxMTgsIDIsIDE0MiwgNywgNiwgMSwgCisgICAgMjE2LCAxNTEsIDcsIDQsIDEsIDIyMCwgNzYsIDIyMiwgOTEsIDcsIDQsIDEsIDExNSwgMiwgMjQyLCAxMzYsIDcsIDQsIDEsIAorICAgIDExNSwgMiwgMTQyLCA3LCA0LCAxLCAxMTUsIDIsIDI1MCwgMzAsIDcsIDQsIDEsIDExNSwgMiwgMTgyLCA3LCA0LCAxLCAKKyAgICAxMTUsIDIsIDI0OCwgMSwgNywgNCwgMSwgMTE1LCAyLCAyMjIsIDIzNCwgNDgsIDcsIDQsIDEsIDI1NCwgMjQzLCA3LCA0LCAKKyAgICAxLCAyNTEsIDY3LCAyLCAyNTAsIDE4MywgNywgNCwgMSwgMTYwLCAyLCAyNDIsIDEzNiwgNywgNCwgMSwgMTYwLCAyLCAxNDIsIAorICAgIDcsIDQsIDEsIDE2MCwgMiwgMjUwLCAzMCwgNywgNCwgMSwgMTYwLCAyLCAyNDgsIDEsIDcsIDQsIDEsIDI0MCwgMTU0LCAyLCAKKyAgICAyNDIsIDEzNiwgNywgNCwgMSwgMjQwLCAxNTQsIDIsIDE0MiwgNywgNCwgMSwgMjQwLCAxNTQsIDIsIDI1MCwgMzAsIDcsIDQsIAorICAgIDEsIDI0MCwgMTU0LCAyLCAyNDgsIDEsIDcsIDQsIDEsIDI0NSwgNTksIDcsIDQsIDEsIDIzMCwgMjYsIDIsIDE4MiwgNywgNCwgCisgICAgMSwgMTQ0LCAyLCAyNDIsIDEzNiwgNywgNCwgMSwgMTQ0LCAyLCAxNDIsIDcsIDQsIDEsIDE0NCwgMiwgMjUwLCAzMCwgNywgCisgICAgNCwgMSwgMTQ0LCAyLCAxODIsIDcsIDQsIDEsIDE0NCwgMiwgMjQ4LCAxLCAyNDcsIDE2OSwgNTAsIDcsIDQsIDEsIDE0NCwgCisgICAgMiwgOTEsIDcsIDQsIDEsIDEwNCwgMiwgMjQyLCAxMzYsIDcsIDQsIDEsIDEwNCwgMiwgMTQyLCA3LCA0LCAxLCAxMDQsIDIsIAorICAgIDI1MCwgMzAsIDcsIDQsIDEsIDEwNCwgMiwgMjQ4LCAxLCA3LCA0LCAxLCAyMTEsIDExOCwgMiwgMTQyLCA3LCA0LCAxLCAKKyAgICAyMTYsIDE1MSwgNywgNCwgMSwgMjExLCAxMTgsIDIsIDI0OCwgMSwgNywgNiwgMSwgMTE1LCAyLCAyMzEsIDIzMiwgNywgNCwgCisgICAgMSwgMTE1LCAyLCAyMzEsIDIzMiwgNywgNiwgMSwgMTE1LCAyLCAyNTEsIDE0NiwgNywgNCwgMSwgMTE1LCAyLCAyNTEsIAorICAgIDE0NiwgNywgNiwgMSwgMTE1LCAyLCAyMjYsIDIyNCwgNywgNCwgMSwgMTE1LCAyLCAyMjYsIDIyNCwgNywgNiwgMSwgMjUxLCAKKyAgICA2NywgMiwgMTQyLCA3LCA0LCAxLCAyNTEsIDY3LCAyLCAxNDIsIDcsIDYsIDEsIDI1MSwgNjcsIDIsIDI1MCwgMzAsIDcsIDQsIAorICAgIDEsIDI1MSwgNjcsIDIsIDI1MCwgMzAsIDcsIDYsIDEsIDI1MSwgNjcsIDIsIDU5LCA0OCwgNywgNCwgMSwgMjUxLCA2NywgMiwgCisgICAgNTksIDQ4LCA3LCA2LCAxLCAyNTEsIDY3LCAyLCAyNTAsIDIzNCwgNywgNCwgMSwgMjUxLCA2NywgMiwgMjUwLCAyMzQsIDcsIAorICAgIDYsIDEsIDI0OSwgNjEsIDIsIDI1MCwgMjM0LCA3LCA0LCAxLCAyNDksIDYxLCAyLCAyNTAsIDIzNCwgNywgNiwgMSwgMjQ5LCAKKyAgICA2MSwgMiwgOTEsIDcsIDQsIDEsIDI0OSwgNjEsIDIsIDkxLCA3LCA2LCAxLCAxNjAsIDIsIDIzMSwgMjMyLCA3LCA0LCAxLCAKKyAgICAxNjAsIDIsIDIzMSwgMjMyLCA3LCA2LCAxLCAxNjAsIDIsIDI1MSwgMTQ2LCA3LCA0LCAxLCAxNjAsIDIsIDI1MSwgMTQ2LCAKKyAgICA3LCA2LCAxLCAxNjAsIDIsIDU5LCA0OCwgNywgNCwgMSwgMTYwLCAyLCA1OSwgNDgsIDcsIDYsIDEsIDE2MCwgMiwgMjI2LCAKKyAgICAyMjQsIDcsIDQsIDEsIDE2MCwgMiwgMjI2LCAyMjQsIDcsIDYsIDEsIDE2MCwgMiwgMjUwLCAyMzQsIDcsIDQsIDEsIDE2MCwgCisgICAgMiwgMjUwLCAyMzQsIDcsIDYsIDEsIDI0MywgMjAzLCAyLCAyNTAsIDMwLCA3LCA0LCAxLCAyNDMsIDIwMywgMiwgMjUwLCAKKyAgICAzMCwgNywgNiwgMSwgMjQzLCAyMDMsIDIsIDI1MSwgMTQ2LCA3LCA0LCAxLCAyNDMsIDIwMywgMiwgMjUxLCAxNDYsIDcsIDYsIAorICAgIDEsIDI0MywgMjAzLCAyLCA1OSwgNDgsIDcsIDQsIDEsIDI0MywgMjAzLCAyLCA1OSwgNDgsIDcsIDYsIDEsIDI0MywgMjAzLCAKKyAgICAyLCAyNTAsIDE4MywgNywgNCwgMSwgMjQzLCAyMDMsIDIsIDI1MCwgMTgzLCA3LCA2LCAxLCAyNDIsIDYxLCAyLCAyNTAsIAorICAgIDMwLCA3LCA0LCAxLCAyNDIsIDYxLCAyLCAyNTAsIDMwLCA3LCA2LCAxLCAyNDIsIDYxLCAyLCA5MSwgNywgNCwgMSwgMjQyLCAKKyAgICA2MSwgMiwgOTEsIDcsIDYsIDEsIDI0MCwgMTU0LCAyLCAxODIsIDcsIDQsIDEsIDI0MCwgMTU0LCAyLCAxODIsIDcsIDYsIDEsIAorICAgIDI0MCwgMTU0LCAyLCAyMzEsIDIzMiwgNywgNCwgMSwgMjQwLCAxNTQsIDIsIDIzMSwgMjMyLCA3LCA2LCAxLCAyNDAsIDE1NCwgCisgICAgMiwgMjUxLCAxNDYsIDcsIDQsIDEsIDI0MCwgMTU0LCAyLCAyNTEsIDE0NiwgNywgNiwgMSwgMjQwLCAxNTQsIDIsIDIyNiwgCisgICAgMjI0LCA3LCA0LCAxLCAyNDAsIDE1NCwgMiwgMjI2LCAyMjQsIDcsIDYsIDEsIDI0MCwgMTU0LCAyLCA1OSwgNDgsIDcsIDQsIAorICAgIDEsIDI0NywgMTE5LCA3MywgNywgNiwgMjcsIDIzNiwgMzEsIDcsIDQsIDI3LCAyMzYsIDMxLCA3LCA2LCAxLCAyMzUsIDE0NSwgCisgICAgMiwgMjUwLCAzMCwgNywgNCwgMSwgMjM1LCAxNDUsIDIsIDI1MCwgMzAsIDcsIDYsIDEsIDIzNSwgMjQsIDIsIDI1MCwgMTgzLCAKKyAgICA3LCA0LCAxLCAyMzUsIDI0LCAyLCAyNTAsIDE4MywgNywgNCwgMSwgMjMzLCAyMzksIDcsIDYsIDEsIDIzMywgMTQ5LCAyLCAKKyAgICAxNDIsIDcsIDQsIDEsIDIzMywgMTQ5LCAyLCAxNDIsIDcsIDYsIDEsIDIzMywgMTQ5LCAyLCAyNTAsIDE4MywgNywgNCwgMSwgCisgICAgMjMzLCAxNDksIDIsIDI1MCwgMTgzLCA3LCA2LCAxLCAyMzMsIDE0OSwgMiwgMjUwLCAyMzQsIDcsIDQsIDEsIDIzMywgMTQ5LCAKKyAgICAyLCAyNTAsIDIzNCwgNywgNiwgMSwgMjMzLCAxNDksIDIsIDIzMCwgMjI0LCAyNDcsIDEyMCwgNywgNCwgMSwgMjMzLCAxNDksIAorICAgIDIsIDIzMCwgMjI0LCAyNDcsIDEyMCwgNywgNiwgMSwgMjMzLCAxNDksIDIsIDkxLCA3LCA0LCAxLCAyMzMsIDE0OSwgMiwgCisgICAgOTEsIDcsIDYsIDEsIDIzMCwgMjYsIDIsIDE0MiwgNywgNCwgMSwgMjMwLCAyNiwgMiwgMTQyLCA3LCA2LCAxLCAyMzAsIDI2LCAKKyAgICAyLCAyNTAsIDE4MywgNywgNCwgMSwgMjMwLCAyNiwgMiwgMjUwLCAxODMsIDcsIDYsIDEsIDIzMCwgMjYsIDIsIDI1MCwgCisgICAgMjM0LCA3LCA0LCAxLCAyMzAsIDI2LCAyLCAyNTAsIDIzNCwgNywgNCwgMSwgMjMwLCAyNiwgMjI0LCAyMDQsIDI1MSwgNzgsIAorICAgIDI1NCwgNTcsIDcsIDYsIDEsIDI0NSwgMTM4LCA3LCA0LCAxLCAyNDUsIDEzOCwgNywgNiwgMSwgMTQ0LCAyLCAyMzEsIDIzMiwgCisgICAgNywgNCwgMSwgMTQ0LCAyLCAyMzEsIDIzMiwgNywgNiwgMSwgMTQ0LCAyLCAyNTEsIDE0NiwgNywgNCwgMSwgMTQ0LCAyLCAKKyAgICAyNTEsIDE0NiwgNywgNiwgMSwgMTQ0LCAyLCA1MiwgMTQyLCA3LCA0LCAxLCAxNDQsIDIsIDUyLCAxNDIsIDcsIDYsIDI3LCAKKyAgICAyMjYsIDIzNCwgNywgNCwgMjcsIDIyNiwgMjM0LCA3LCA2LCAxLCAyMjMsIDIyNCwgMiwgMTQyLCA3LCA0LCAxLCAyMjMsIAorICAgIDIyNCwgMiwgMTQyLCA3LCA2LCAxLCAyMjMsIDIyNCwgMiwgMjUwLCAxODMsIDcsIDQsIDEsIDIyMywgMjI0LCAyLCAyNTAsIAorICAgIDE4MywgNywgNiwgMSwgMjIzLCAyMjQsIDIsIDI1MCwgMjM0LCA3LCA0LCAxLCAyMjMsIDIyNCwgMiwgMjUwLCAyMzQsIDcsIAorICAgIDYsIDEsIDIyMiwgOTIsIDIsIDE0MiwgNywgNCwgMSwgMjIyLCA5MiwgMiwgMTQyLCA3LCA2LCAxLCAyMjIsIDkyLCAyLCAKKyAgICAyNTAsIDMwLCA3LCA0LCAxLCAyMjIsIDkyLCAyLCAyNTAsIDMwLCA3LCA2LCAxLCAyMjIsIDkyLCAyLCAyNTAsIDE4MywgNywgCisgICAgNCwgMSwgMjIyLCA5MiwgMiwgMjUwLCAxODMsIDcsIDYsIDEsIDIyMiwgOTIsIDIsIDI1MCwgMjM0LCA3LCA0LCAxLCAyMjIsIAorICAgIDkyLCAyLCAyNTAsIDIzNCwgNywgNiwgMSwgMjE3LCAxNTMsIDIsIDI1MCwgMTgzLCA3LCA0LCAxLCAyMTcsIDE1MywgMiwgCisgICAgMjUwLCAxODMsIDcsIDYsIDEsIDIxNywgMTUzLCAyLCAyNTAsIDIzNCwgNywgNCwgMSwgMjE3LCAxNTMsIDIsIDI1MCwgMjM0LCAKKyAgICA3LCA2LCAxLCAyMTcsIDE1MywgMiwgOTEsIDcsIDQsIDEsIDIxNywgMTUzLCAyLCA5MSwgNywgNiwgMSwgMTA0LCAyLCAxODIsIAorICAgIDcsIDQsIDEsIDEwNCwgMiwgMTgyLCA3LCA2LCAxLCAxMDQsIDIsIDIzMSwgMjMyLCA3LCA0LCAxLCAxMDQsIDIsIDIzMSwgCisgICAgMjMyLCA3LCA2LCAxLCAxMDQsIDIsIDI1MSwgMTQ2LCA3LCA0LCAxLCAxMDQsIDIsIDI1MSwgMTQ2LCA3LCA2LCAxLCAxMDQsIAorICAgIDIsIDIyMiwgMjM0LCA0OCwgNywgNCwgMSwgMTA0LCAyLCAyMjIsIDIzNCwgNDgsIDcsIDYsIDEsIDEwNCwgMiwgNTIsIDE0MiwgCisgICAgNywgNCwgMSwgMTA0LCAyLCA1MiwgMTQyLCA3LCA2LCAxLCAxMDQsIDIsIDIyNiwgMjI0LCA3LCA0LCAxLCAxMDQsIDIsIAorICAgIDIyNiwgMjI0LCA3LCA2LCAxLCAyMTIsIDk5LCAyLCAyNTAsIDMwLCA3LCA0LCAxLCAyMTIsIDk5LCAyLCAyNTAsIDMwLCA3LCAKKyAgICA2LCAxLCAyMTEsIDExOCwgMiwgMjUwLCAzMCwgNywgNCwgMSwgMjExLCAxMTgsIDIsIDI1MCwgMzAsIDcsIDYsIDEsIDIxMSwgCisgICAgMTE4LCAyLCAyNDgsIDEsIDcsIDYsIDEsIDIxMCwgMTYwLCAyLCAxNDIsIDcsIDQsIDEsIDIxMCwgMTYwLCAyLCAxNDIsIDcsIAorICAgIDYsIDEsIDIxMCwgMTYwLCAyLCA1OSwgNDgsIDcsIDQsIDEsIDIxMCwgMTYwLCAyLCA1OSwgNDgsIDcsIDYsIDEsIDIxMCwgCisgICAgMTYwLCAyLCAyNTAsIDIzNCwgNywgNCwgMSwgMjEwLCAxNjAsIDIsIDI1MCwgMjM0LCA3LCA0LCAxLCAxOTksIDIyMiwgOTEsIAorICAgIDcsIDQsIDEsIDU3LCAyLCA5MSwgNywgNiwgMSwgNTcsIDIsIDEwMywgNywgNiwgMSwgNTcsIDIsIDIxNiwgMTEsIDcsIDQsIAorICAgIDEsIDU3LCAyLCAyMTYsIDExLCA3LCA2LCAxLCAxMzgsIDE5NCwgNywgNCwgMSwgMTM4LCAxOTQsIDcsIDYsIDEsIDIwNCwgCisgICAgNzYsIDcsIDYsIDEsIDI1MSwgNjcsIDIsIDEwMywgNywgNCwgMSwgMjUxLCA2NywgMiwgMTAzLCA3LCA2LCAxLCAyNTQsIAorICAgIDIxOSwgMjQ5LCA2MCwgNywgNiwgMSwgMjQ5LCA2MSwgMiwgMTAzLCA3LCA2LCAxLCAyNDksIDYxLCAyLCAyMTYsIDExLCA3LCAKKyAgICA0LCAxLCAyNDksIDYxLCAyLCAyMTYsIDExLCA3LCA0LCAxLCAyMTUsIDk0LCAyNDgsIDU0LCA3LCA2LCAxLCAyMjMsIDQ5LCAKKyAgICA3NSwgNywgNiwgMSwgMjIxLCAxOTUsIDcsIDYsIDEsIDIwNCwgNzUsIDcsIDYsIDEsIDI0NSwgNywgMiwgMTAzLCA3LCA0LCAKKyAgICAxLCAyNDUsIDcsIDIsIDEwMywgNywgNiwgMSwgMjQzLCAyMDMsIDIsIDEwMywgNywgNiwgMSwgMjQzLCAxMDcsIDcsIDQsIDEsIAorICAgIDI0MCwgMjAxLCA3LCA2LCAxLCAyMzUsIDE4NSwgNywgNiwgMSwgMjQwLCAxNTQsIDIsIDkxLCA3LCA2LCAxLCAyMzUsIDI0LCAKKyAgICAyLCAxMDMsIDcsIDQsIDEsIDIzNSwgMjQsIDIsIDEwMywgNywgNCwgMSwgMjMzLCAxNDksIDIsIDEzMCwgNywgNCwgMSwgCisgICAgMjMzLCAxMDAsIDIsIDkxLCA3LCA2LCAxLCAyMTUsIDk0LCAxOTMsIDcsIDYsIDEsIDIzMCwgMjYsIDIsIDQzLCAxMDMsIDcsIAorICAgIDQsIDEsIDIzMCwgMjYsIDIsIDE5OSwgNDQsIDIzMywgMzYsIDcsIDYsIDEsIDE0NCwgMiwgMjMwLCAyMjQsIDE4MiwgNywgNiwgCisgICAgMSwgMTQ0LCAyLCAyNDAsIDI0OCwgNywgNCwgMSwgMTQ0LCAyLCAyNDAsIDI0OCwgNywgNiwgMSwgMjI2LCAyMTksIDcsIDQsIAorICAgIDEsIDIyNiwgMjE5LCA3LCA2LCAxLCAyMjYsIDEwNiwgMiwgMTAzLCA3LCA0LCAxLCAyMjYsIDEwNiwgMiwgMTAzLCA3LCAxLCAKKyAgICAyMTAsIDIxNCwgNywgNiwgMSwgMTM4LCAxMDUsIDcsIDQsIDEsIDEzOCwgMTA1LCA3LCA2LCAxLCAyNDUsIDc1LCA3LCAxLCAKKyAgICAyMjMsIDQ5LCAyNDUsIDc2LCAyMzIsIDEyMywgNywgNCwgMSwgMjE3LCAxNTMsIDIsIDIyNiwgNjYsIDEwMywgNywgNiwgMSwgCisgICAgMjE3LCAxNTMsIDIsIDEwMywgNywgNCwgMSwgMjE3LCAxNTMsIDIsIDEwMywgNywgNiwgMSwgMjE3LCAxNTMsIDIsIDIyMywgCisgICAgNTUsIDEwMywgNywgNiwgMSwgMTA0LCAyLCAyNDAsIDI0OCwgNywgNCwgMSwgMTA0LCAyLCAyNDAsIDI0OCwgNywgNiwgMSwgCisgICAgMjE0LCAxNTcsIDcsIDYsIDEsIDIxNCwgMTA2LCAyLCAxMDMsIDcsIDYsIDEsIDIxMSwgMTE4LCAyLCAxMDMsIDcsIDQsIDEsIAorICAgIDIxMSwgMTE4LCAyLCAxMDMsIDcsIDYsIDEsIDIxMCwgMTYwLCAyLCA5MSwgNywgNCwgMSwgMjEwLCAxNjAsIDIsIDkxLCA3LCAKKyAgICA2LCAxLCAyNDUsIDgsIDcsIDYsIDEsIDI0NSwgOSwgMjIzLCA0OCwgNywgNCwgMSwgMjQ1LCA5LCAyMjMsIDQ4LCA3LCA0LCAKKyAgICAxLCAyNDUsIDksIDIsIDIxNywgNzcsIDcsIDEsIDExMywgMiwgOTEsIDcsIDYsIDEsIDEzOCwgMTg5LCA3LCA0LCAxLCAxMzgsIAorICAgIDE4OSwgNywgMSwgMjM1LCAxOTMsIDI0MiwgMTgwLCAyMTgsIDEzMCwgMiwgOTEsIDcsIDEsIDIxMSwgMTgxLCA3LCAxLCAKKyAgICAyNDgsIDQ3LCAyNTAsIDExLCA3LCAxLCAyMzMsIDc3LCAyNTAsIDExLCA3LCAxLCAyNTQsIDEzNywgMjUwLCAxMSwgNywgMSwgCisgICAgMjIzLCA1NSwgMjUwLCAxMSwgNywgNiwgMSwgMjQ2LCA0MCwgMiwgMjUwLCAyMzQsIDcsIDYsIDEsIDI0OSwgNjEsIDIsIDQsIAorICAgIDEsIDIxMCwgMTYwLCAyLCAyNTAsIDIzNCwgNywgNCwgMSwgMjQ2LCA0MCwgMiwgMjUwLCAyMzQsIDcsIDYsIDEsIDIzMiwgCisgICAgMTg4LCA3LCA2LCAxLCAyMzMsIDE0OSwgMiwgNCwgMSwgMjM1LCAxNDQsIDcsIDQsIDEsIDIzMiwgMTg4LCA3LCA2LCAxLCAKKyAgICAyMjgsIDE4NiwgNywgNiwgMSwgMjMwLCAyNiwgMiwgNCwgMSwgMjM1LCAxNDQsIDcsIDQsIDEsIDIyOCwgMTg2LCA3LCA2LCAKKyAgICAxLCAxMTUsIDIsIDI1MCwgMjM0LCA3LCA0LCAxLCAxMTUsIDIsIDI1MCwgMjM0LCA3LCA2LCAxLCAyNDAsIDE1NCwgMiwgCisgICAgMjUwLCAyMzQsIDcsIDQsIDEsIDI0MCwgMTU0LCAyLCAyNTAsIDIzNCwgNywgNiwgMSwgMTQ0LCAyLCAyNTAsIDIzNCwgNywgCisgICAgNCwgMSwgMTQ0LCAyLCAyNTAsIDIzNCwgNywgNiwgMSwgMTA0LCAyLCAyNTAsIDIzNCwgNywgNCwgMSwgMTA0LCAyLCAyNTAsIAorICAgIDIzNCwgNywgNiwgMSwgMTA0LCAyLCAyNDgsIDIsIDIyLCAyMzEsIDIzMiwgNywgNCwgMSwgMTA0LCAyLCAyNDgsIDIsIDIyLCAKKyAgICAyMzEsIDIzMiwgNywgNiwgMSwgMTA0LCAyLCAyNDgsIDIsIDIyLCAxNDIsIDcsIDQsIDEsIDEwNCwgMiwgMjQ4LCAyLCAyMiwgCisgICAgMTQyLCA3LCA2LCAxLCAxMDQsIDIsIDI0OCwgMiwgMjIsIDI1MCwgMjM0LCA3LCA0LCAxLCAxMDQsIDIsIDI0OCwgMiwgMjIsIAorICAgIDI1MCwgMjM0LCA3LCA2LCAxLCAxMDQsIDIsIDI0OCwgMiwgMjIsIDI0MiwgMTM2LCA3LCA0LCAxLCAxMDQsIDIsIDI0OCwgMiwgCisgICAgMjIsIDI0MiwgMTM2LCA3LCA0LCAxLCAyMTUsIDk0LCA3NSwgNywgNiwgMSwgMTE1LCAyLCAyNDgsIDIsIDIyLCAyMzEsIAorICAgIDIzMiwgNywgNCwgMSwgMTE1LCAyLCAyNDgsIDIsIDIyLCAyMzEsIDIzMiwgNywgNiwgMSwgMTE1LCAyLCA1OSwgNzcsIDIyLCAKKyAgICAyMzEsIDIzMiwgNywgNCwgMSwgMTE1LCAyLCA1OSwgNzcsIDIyLCAyMzEsIDIzMiwgNywgNiwgMSwgMjU0LCAyNDQsIDIsIAorICAgIDIzMSwgMjMyLCA3LCA0LCAxLCAyNTQsIDI0NCwgMiwgMjMxLCAyMzIsIDcsIDYsIDEsIDI0MywgMjAzLCAyLCA5MSwgNywgNCwgCisgICAgMSwgMjQzLCAyMDMsIDIsIDkxLCA3LCA2LCAxLCAyNDMsIDIwMywgMiwgMjUwLCAyMzQsIDcsIDQsIDEsIDI0MywgMjAzLCAyLCAKKyAgICAyNTAsIDIzNCwgNywgNiwgMSwgMjM1LCAyNCwgMiwgMjUwLCAyMzQsIDcsIDQsIDEsIDIzNSwgMjQsIDIsIDI1MCwgMjM0LCAKKyAgICA3LCA2LCAxLCAxNDQsIDIsIDIyNiwgMjI0LCA3LCA0LCAxLCAxNDQsIDIsIDIyNiwgMjI0LCA3LCA2LCAxLCAxNDQsIDIsIAorICAgIDIyNiwgMjI1LCAyMiwgMjMxLCAyMzIsIDcsIDQsIDEsIDE0NCwgMiwgMjI2LCAyMjUsIDIyLCAyMzEsIDIzMiwgNywgNiwgMSwgCisgICAgMjQ1LCA5LCAyLCAyNTAsIDIzNCwgNywgNCwgMSwgMjQ1LCA5LCAyLCAyNTAsIDIzNCwgNywgNCwgMSwgMjM1LCAxNDUsIDIsIAorICAgIDI1MCwgMjM0LCA3LCA2LCAxLCAyNDYsIDM5LCA3LCA2LCAxLCAyNDksIDYxLCAyLCA0LCAxLCAyMTAsIDE1OSwgNywgNCwgMSwgCisgICAgMjQ2LCAzOSwgNywgNiwgMSwgMjQzLCAyMDMsIDIsIDE0MiwgNywgNCwgMSwgMjQzLCAyMDMsIDIsIDE0MiwgNywgNiwgMSwgCisgICAgMjQwLCAxOTksIDcsIDYsIDEsIDIxMSwgMTgxLCA3LCA2LCAxLCAyMzAsIDI2LCAyLCAyNDIsIDEzNiwgNywgNCwgMSwgMjMwLCAKKyAgICAyNiwgMiwgMjQyLCAxMzYsIDcsIDYsIDEsIDExNSwgMiwgMjIyLCAyMzQsIDc3LCAyMiwgMTQyLCA3LCA0LCAxLCAxMTUsIDIsIAorICAgIDIyMiwgMjM0LCA3NywgMjIsIDE0MiwgNywgNiwgMSwgMjU0LCAyNDQsIDIsIDE0MiwgNywgNCwgMSwgMjU0LCAyNDQsIDIsIAorICAgIDE0MiwgNywgNiwgMSwgMTQ0LCAyLCAyMTgsIDEwMywgMjIsIDE0MiwgNywgNCwgMSwgMTQ0LCAyLCAyMTgsIDEwMywgMjIsIAorICAgIDE0MiwgNywgNiwgMSwgMTE1LCAyLCA1MiwgMjQyLCAxMzYsIDcsIDQsIDEsIDExNSwgMiwgNTIsIDI0MiwgMTM2LCA3LCA2LCAKKyAgICAxLCAxMTUsIDIsIDIzNSwgMTkzLCAyNTEsIDE0NiwgNywgNCwgMSwgMTE1LCAyLCAyMzUsIDE5MywgMjUxLCAxNDYsIDcsIDYsIAorICAgIDEsIDE2MCwgMiwgNTIsIDI0MiwgMTM2LCA3LCA0LCAxLCAxNjAsIDIsIDUyLCAyNDIsIDEzNiwgNywgNiwgMSwgMTYwLCAyLCAKKyAgICAyMzUsIDE5MywgMjUxLCAxNDYsIDcsIDQsIDEsIDE2MCwgMiwgMjM1LCAxOTMsIDI1MSwgMTQ2LCA3LCA2LCAxLCAyNDAsIAorICAgIDE1NCwgMiwgNTIsIDI0MiwgMTM2LCA3LCA0LCAxLCAyNDAsIDE1NCwgMiwgNTIsIDI0MiwgMTM2LCA3LCA2LCAxLCAyNDAsIAorICAgIDE1NCwgMiwgMjM1LCAxOTMsIDI1MSwgMTQ2LCA3LCA0LCAxLCAyNDAsIDE1NCwgMiwgMjM1LCAxOTMsIDI1MSwgMTQ2LCA3LCAKKyAgICA2LCAxLCAxNDQsIDIsIDUyLCAyNDIsIDEzNiwgNywgNCwgMSwgMTQ0LCAyLCA1MiwgMjQyLCAxMzYsIDcsIDYsIDEsIDE0NCwgCisgICAgMiwgMjM1LCAxOTMsIDI1MSwgMTQ2LCA3LCA0LCAxLCAxNDQsIDIsIDIzNSwgMTkzLCAyNTEsIDE0NiwgNywgNiwgMSwgMjIzLCAKKyAgICAyMjQsIDIsIDUyLCAyNDIsIDEzNiwgNywgNCwgMSwgMjIzLCAyMjQsIDIsIDUyLCAyNDIsIDEzNiwgNywgNiwgMSwgMjIzLCAKKyAgICAyMjQsIDIsIDIzNSwgMTkzLCAyNTEsIDE0NiwgNywgNCwgMSwgMjIzLCAyMjQsIDIsIDIzNSwgMTkzLCAyNTEsIDE0NiwgNywgCisgICAgNiwgMSwgMTA0LCAyLCA1MiwgMjQyLCAxMzYsIDcsIDQsIDEsIDEwNCwgMiwgNTIsIDI0MiwgMTM2LCA3LCA2LCAxLCAxMDQsIAorICAgIDIsIDIzNSwgMTkzLCAyNTEsIDE0NiwgNywgNCwgMSwgMTA0LCAyLCAyMzUsIDE5MywgMjUxLCAxNDYsIDcsIDYsIDEsIDIyMiwgCisgICAgOTIsIDIsIDI0OSwgMjIwLCA1MSwgNywgNCwgMSwgMjIyLCA5MiwgMiwgMjQ5LCAyMjAsIDUxLCA3LCA2LCAxLCAyMTcsIAorICAgIDE1MywgMiwgMjQ5LCAyMjAsIDUxLCA3LCA0LCAxLCAyMTcsIDE1MywgMiwgMjQ5LCAyMjAsIDUxLCA3LCA2LCAxLCAyMTAsIAorICAgIDIzMSwgNywgNCwgMSwgMjEwLCAyMzEsIDcsIDYsIDEsIDI0MiwgNjEsIDIsIDI1MCwgMjM0LCA3LCA0LCAxLCAyNDIsIDYxLCAKKyAgICAyLCAyNTAsIDIzNCwgNywgNiwgMSwgMjMwLCAyNiwgMiwgMTk5LCA0NCwgMjMzLCAzNiwgNywgNCwgMSwgMjQ5LCA2MSwgMiwgCisgICAgMjQ5LCAxMDAsIDcsIDYsIDEsIDIyNiwgMTM0LCA3LCA0LCAxLCAyMjYsIDEzNCwgNywgNiwgMSwgMjEwLCAxNjAsIDIsIAorICAgIDEwMywgNywgNCwgMSwgMjEwLCAxNjAsIDIsIDEwMywgNywgNiwgMSwgMTE1LCAyLCA1OSwgNDgsIDcsIDQsIDEsIDExNSwgMiwgCisgICAgNTksIDQ4LCA3LCA2LCAxLCAxNjAsIDIsIDI1MCwgMTgzLCA3LCA0LCAxLCAxNjAsIDIsIDI1MCwgMTgzLCA3LCA2LCAxLCAKKyAgICAxNDQsIDIsIDI0OCwgMiwgMjIsIDIzMSwgMjMyLCA3LCA0LCAxLCAxNDQsIDIsIDI0OCwgMiwgMjIsIDIzMSwgMjMyLCA3LCAKKyAgICA2LCAxLCAxNDQsIDIsIDIxNiwgODksIDIyLCAyMzEsIDIzMiwgNywgNCwgMSwgMTQ0LCAyLCAyMTYsIDg5LCAyMiwgMjMxLCAKKyAgICAyMzIsIDcsIDYsIDEsIDE0NCwgMiwgNTksIDQ4LCA3LCA0LCAxLCAxNDQsIDIsIDU5LCA0OCwgNywgNiwgMSwgMTQ0LCAyLCAKKyAgICA1OSwgNzcsIDIyLCAyMzEsIDIzMiwgNywgNCwgMSwgMTQ0LCAyLCA1OSwgNzcsIDIyLCAyMzEsIDIzMiwgNywgNiwgMSwgCisgICAgMjExLCAxMTgsIDIsIDIzMSwgMjMyLCA3LCA0LCAxLCAyMTEsIDExOCwgMiwgMjMxLCAyMzIsIDcsIDQsIDEsIDIzMywgMTQ5LCAKKyAgICAyLCAyNDksIDEwMCwgNywgNCwgMSwgMjMwLCAyNiwgMiwgMjQ5LCAxMDAsIDcsIDQsIDEsIDIxNywgMTUzLCAyLCAyNDksIAorICAgIDEwMCwgNywgNCwgMSwgMjQ3LCAxMTksIDIzNSwgMTQ0LCA3LCA0LCAxLCAyNDgsIDE0MywgMjQ3LCAyMjAsIDcsIDQsIDEsIAorICAgIDIyNCwgMzEsIDI0NywgMjIwLCA3LCA2LCAxLCAxMTUsIDIsIDkxLCA3LCA2LCAxLCAyNTEsIDY3LCAyLCA5MSwgNywgNCwgMSwgCisgICAgMjUxLCA2NywgMiwgOTEsIDcsIDYsIDEsIDIzMywgMTQ5LCAyLCAxMzAsIDcsIDYsIDEsIDIxNywgMTUzLCAyLCAyNDcsIAorICAgIDI1NSwgOTEsIDcsIDQsIDEsIDIyMiwgOTIsIDIsIDIxNywgMjUwLCAyMTcsIDc3LCA3LCA0LCAxLCAyMTAsIDE2MCwgMiwgCisgICAgMjE3LCAyNTAsIDIxNywgNzcsIDcsIDYsIDEsIDI0MiwgMTgwLCAyMTgsIDEyOSwgNywgNCwgMSwgMjQyLCAxODAsIDIxOCwgCisgICAgMTI5LCA3LCA2LCAxLCA1NywgMiwgOTEsIDcsIDYsIDEsIDEwNCwgMTMwLCA3LCA2LCAxLCAyMTUsIDk0LCAyMTQsIDEwNSwgCisgICAgNywgNiwgMSwgMTYwLCAyLCA5MSwgNywgNCwgMSwgMTYwLCAyLCA5MSwgNywgNiwgMSwgMjM1LCAxNDUsIDIsIDkxLCA3LCA0LCAKKyAgICAxLCAyMzUsIDE0NSwgMiwgOTEsIDcsIDYsIDEsIDQsIDIyNCwgOTcsIDIsIDI0MSwgNTIsIDIxNywgNzcsIDcsIDQsIDEsIAorICAgIDIyNCwgOTcsIDIsIDI0MSwgNTIsIDIxNywgNzcsIDcsIDYsIDEsIDIyMywgMjI0LCAyLCA5MSwgNywgNCwgMSwgMjIzLCAKKyAgICAyMjQsIDIsIDkxLCA3LCA2LCAxLCAyMTEsIDExOCwgMiwgOTEsIDcsIDQsIDEsIDIxMSwgMTE4LCAyLCA5MSwgNywgNCwgMSwgCisgICAgMjE1LCA5NCwgNjEsIDcsIDQsIDEsIDI1NCwgMTQzLCA3LCA0LCAxLCAyMTUsIDk0LCAyNTQsIDE0MywgNywgNCwgMSwgNTcsIAorICAgIDIsIDEwMywgNywgNCwgMSwgMjA0LCA3NiwgNywgNCwgMSwgMjUxLCA2NywgMiwgMjQ5LCAxMDAsIDcsIDQsIDEsIDI0OSwgCisgICAgNjEsIDIsIDIxNywgNzcsIDcsIDQsIDEsIDI0OSwgNjEsIDIsIDEwMywgNywgNCwgMSwgMjIzLCA0OSwgNzUsIDcsIDQsIDEsIAorICAgIDIyMSwgMTk1LCA3LCA0LCAxLCAyMjEsIDE5NiwgMiwgMTAzLCA3LCA0LCAxLCAyMDQsIDc1LCA3LCA0LCAxLCAyMjMsIDQ5LCAKKyAgICAyMDQsIDc1LCA3LCA0LCAxLCAyMjMsIDQ5LCAyMDQsIDE2MCwgMiwgMTAzLCA3LCA0LCAxLCAyNTAsIDAsIDIyMywgNDksIAorICAgIDIwNCwgNzUsIDcsIDQsIDEsIDI0NywgMTE5LCAyMzUsIDE0NSwgMiwgOTEsIDcsIDQsIDEsIDI0MywgMjAzLCAyLCAxMDMsIAorICAgIDcsIDQsIDEsIDExOSwgMjQzLCAyMDIsIDcsIDEsIDQsIDYsIDI0MywgMjAyLCA3LCA0LCAxLCAyNDMsIDEwNywgNywgNCwgMSwgCisgICAgMjIzLCAxNTEsIDI0MCwgMjQ4LCA3LCA0LCAxLCAyMTUsIDk0LCAyNDIsIDYwLCA3LCA0LCAxLCAyNDIsIDYxLCAyLCAxMDMsIAorICAgIDcsIDQsIDEsIDI0MSwgMjA4LCAyLCAxMDMsIDcsIDQsIDEsIDI0MCwgMTU0LCAyLCA5MSwgNywgNCwgMSwgMjM1LCAxODUsIAorICAgIDcsIDEsIDQsIDYsIDczLCA3LCA0LCAxLCAyMzMsIDE0OSwgMiwgMjMwLCAyMjQsIDE4MiwgNywgNCwgMSwgMjMzLCAxNDksIAorICAgIDIsIDI1MiwgNDEsIDcsIDQsIDEsIDIzMywgMTQ5LCAyLCAyMjMsIDU1LCAxMDMsIDcsIDQsIDEsIDIzMywgMSwgNywgNCwgMSwgCisgICAgMjE1LCA5NCwgMTkzLCA3LCA0LCAxLCAyMTUsIDk0LCAyMzIsIDUwLCAyLCAxOTksIDIzMywgMzYsIDcsIDQsIDEsIDIzMiwgCisgICAgNTAsIDIsIDEwMywgNywgNCwgMSwgMjMwLCAyNiwgMiwgNDMsIDEwMywgNywgNCwgMSwgMjMwLCAyNiwgMiwgMjIzLCA1NSwgCisgICAgMTAzLCA3LCAxLCA0LCA2LCAyMzAsIDI1LCA3LCA0LCAxLCAyNTIsIDEzNCwgNzYsIDcsIDEsIDQsIDYsIDIyNiwgMjM0LCA3LCAKKyAgICA0LCAxLCAyNTAsIDAsIDIyNiwgMjAxLCA3LCA0LCAxLCAyMjUsIDEzMywgNywgNCwgMSwgMjE1LCA5NCwgMTUzLCA3LCA0LCAKKyAgICAxLCAyMTUsIDk0LCAyMjMsIDIyNCwgMiwgMTk5LCAyMzMsIDM2LCA3LCA0LCAxLCAyMTUsIDk0LCAyMjMsIDIyNCwgMiwgCisgICAgMTAzLCA3LCA0LCAxLCAyMjMsIDIyNCwgMiwgMTk5LCAyMzMsIDM2LCA3LCA0LCAxLCAyMjMsIDIyNCwgMiwgMjE3LCA3NywgCisgICAgNywgNCwgMSwgMjIzLCAyMjQsIDIsIDI0NCwgODcsIDcsIDQsIDEsIDIyMywgNDksIDIyMywgMjI0LCAyLCAyNDQsIDg3LCA3LCAKKyAgICAxLCA0LCA2LCAxNTMsIDcsIDEsIDQsIDYsIDIzNSwgMTkzLCAxNTMsIDcsIDQsIDEsIDIyMiwgOTIsIDIsIDEwMywgNywgNCwgCisgICAgMSwgMjQ1LCA3NSwgNywgNCwgMSwgMjQ3LCAxMTksIDIzNSwgMTQ1LCAyLCAyMTgsIDEwMywgMjIsIDEwMywgNywgNCwgMSwgCisgICAgMjE4LCAyMzEsIDIyMywgNDksIDI0NSwgNzUsIDcsIDQsIDEsIDI0NSwgNzYsIDIsIDI0OSwgMTAwLCA3LCA0LCAxLCAyMTUsIAorICAgIDk0LCAyMTcsIDE1MiwgNywgNCwgMSwgMjE3LCAxNTMsIDIsIDIyMywgNTUsIDEwMywgNywgNCwgMSwgMTA0LCAxMzAsIDcsIAorICAgIDQsIDEsIDIxNCwgMTU3LCA3LCA0LCAxLCAyMTQsIDEwNiwgMiwgMTAzLCA3LCA0LCAxLCAyMTUsIDk0LCAyMTQsIDEwNSwgNywgCisgICAgNCwgMSwgMjE1LCA5NCwgMjEyLCA5OCwgNywgNCwgMSwgMjE1LCA5NCwgMjExLCAxMTcsIDcsIDEsIDQsIDYsIDIxMSwgMTE3LCAKKyAgICA3LCA0LCAxLCAyMTAsIDE2MCwgMiwgMjIzLCA1NSwgMTAzLCA3LCA0LCAxLCAyMTAsIDE2MCwgMiwgMjQ5LCAxMDAsIDcsIDQsIAorICAgIDEsIDI0NSwgOCwgNywgNCwgMSwgMjQ1LCA5LCAyLCAyNDksIDEwMCwgNywgMSwgMjQyLCAxODAsIDIxOCwgMTI5LCA3LCAxLCAKKyAgICAyMjUsIDEzOSwgMjEzLCAxMzUsIDI0MywgMjQ5LCA3LCAxLCAyMzUsIDE5MywgMjQyLCAxODAsIDIxOCwgMTI5LCA3LCAxLCAKKyAgICAyMTgsIDExMCwgMjUxLCA2NiwgNywgMSwgMjUxLCAyNDYsIDI1MCwgMTEsIDcsIDEsIDQsIDYsIDI1MywgMTU4LCA3LCA0LCAKKyAgICAxLCAyNTAsIDAsIDIwNCwgNzUsIDcsIDEsIDQsIDYsIDI0MywgMjAzLCAyLCAxMDMsIDcsIDEsIDQsIDYsIDI0MiwgNjAsIDcsIAorICAgIDQsIDEsIDIzNSwgMTQ1LCAyLCAyNDksIDEyNywgNywgNCwgMSwgMjE1LCA5NCwgMjM1LCAyMywgNywgMSwgNCwgNiwgMTU2LCAKKyAgICA3LCA0LCAxLCAyMjQsIDk3LCAyLCAxMDMsIDcsIDEsIDI0MiwgMTgwLCAyMTgsIDEzMCwgMiwgOTEsIDcsIDEsIDIyMywgNDksIAorICAgIDI0MiwgMTgwLCAyMTgsIDEzMCwgMiwgOTEsIDcsIDQsIDEsIDI0NiwgNDAsIDI0NywgMjIwLCA3LCA0LCAxLCAyNDgsIDI2LCAKKyAgICAyNDcsIDIyMCwgNywgNCwgMSwgMjQ2LCA0MCwgMjQ3LCAyMjEsIDIsIDI0OSwgMTAwLCA3LCA0LCAxLCAyMTUsIDE4NSwgCisgICAgMjQ3LCAyMjAsIDcsIDQsIDEsIDIxNiwgMjM1LCAyNDcsIDIyMCwgNywgNCwgMSwgMjE3LCAyOSwgMjQ3LCAyMjEsIDIsIAorICAgIDI0OSwgMTAwLCA3LCA0LCAxLCAyNDQsIDEzNCwgMjQ3LCAyMjAsIDcsIDQsIDEsIDIzMiwgMTAwLCAyNDcsIDIyMCwgNywgNCwgCisgICAgMSwgMjMyLCA1MSwgMjQ3LCAyMjAsIDcsIDEsIDI1MSwgMjQ2LCAyMjUsIDE4MSwgNywgMSwgMjUxLCAyNTQsIDIyNSwgMTgxLCAKKyAgICA3LCA0LCAxLCAyMTUsIDk0LCAyNDIsIDYxLCAyLCAyNDQsIDg3LCA3LCA0LCAxLCAyMTUsIDk0LCAyNDIsIDYxLCAyLCAyNDQsIAorICAgIDg4LCAyMiwgMjE3LCA3NywgNTgsIDEsIDQsIDI0MiwgNjAsIDU4LCAxLCA0LCAyNDIsIDYxLCAyLCAxMDMsIDU4LCAxLCA0LCAKKyAgICAyMzUsIDE0NCwgNTgsIDEsIDQsIDE1MywgNTgsIDEsIDQsIDIxNSwgOTQsIDE1MywgNTgsIDEsIDQsIDIxNSwgOTQsIDIyMywgCisgICAgMjI0LCAyLCAxMDMsIDU4LCAxLCA0LCA2LCAyMzUsIDE5MywgMTUzLCA1OCwgMSwgNCwgMjEyLCA5OCwgNTgsIDEsIDQsIAorICAgIDIxMSwgMTE3LCA1OCwgMSwgMjI0LCAxOTAsIDU4LCAxLCA1MiwgMjI0LCAxOTAsIDU4LCAxLCAyMTUsIDk0LCAyNDksIDIxOSwgCisgICAgNTgsIDEsIDI1NCwgNTcsIDU4LCAxLCAyMjMsIDQ5LCAyNDksIDIxOSwgNTgsIDEsIDQ0LCAxNjMsIDIyMiwgMjMzLCA1OCwgCisgICAgMSwgNDMsIDE2MywgMjIyLCAyMzMsIDU4LCAxLCAyNDIsIDE4MCwgMjE4LCAxMjksIDU4LCAxLCAyMjMsIDQ5LCAyNDIsIAorICAgIDE4MCwgMjE4LCAxMjksIDU4LCAxLCA0MywgMjUzLCAyNDksIDU4LCAxLCA0NCwgMjUzLCAyNDksIDU4LCAxLCAxMjAsIDI1MywgCisgICAgMjQ5LCA1OCwgMSwgMTI0LCAyNTMsIDI0OSwgNTgsIDEsIDI1MCwgMzEsIDI1NSwgMTQsIDI1MCwgMjM0LCA1OCwgMSwgNjcsIAorICAgIDIzMiwgMjEzLCA1OCwgMSwgMjMxLCAyMzIsIDU4LCAxLCAyNTUsIDMsIDI1NSwgMTQsIDU4LCAxLCAyNDIsIDEzNywgMjU1LCAKKyAgICAxNCwgNTgsIDEsIDEyMSwgNjcsIDIzMiwgMjEzLCA1OCwgMSwgMTIxLCAyMzEsIDIzMiwgNTgsIDEsIDEyMSwgMjQyLCAxMzcsIAorICAgIDI1NSwgMTQsIDU4LCAxLCAxMjEsIDI1NSwgMywgMjU1LCAxNCwgNTgsIDEsIDIxNSwgMjIyLCAyNDksIDIyNiwgNTgsIDEsIAorICAgIDE2MywgMjE1LCAyMjIsIDI0OSwgMjI2LCA1OCwgMSwgMjUwLCAxNzMsIDQ0LCAxNjMsIDIyMiwgMjMzLCA1OCwgMSwgMjUwLCAKKyAgICAxNzMsIDQzLCAxNjMsIDIyMiwgMjMzLCA1OCwgMSwgMTIwLCAyMTcsIDg3LCA1OCwgMSwgMTI0LCAyMTcsIDg3LCA1OCwgMSwgCisgICAgOTYsIDUwLCA1OCwgMSwgMjMwLCAxODIsIDUwLCAyNTEsIDE0NiwgNTksIDQ4LCAyMjIsIDIzNCwgNDgsIDIyNiwgMjI0LCA0LCAKKyAgICAxODIsIDUyLCAyNTUsIDMsIDI1NSwgMTQsIDU4LCAxLCAyMjMsIDM2LCAxMDMsIDU4LCAxLCAyNDksIDEzMSwgMjU1LCAxNCwgCisgICAgNTgsIDEsIDQsIDI0MywgMTA3LCA1OCwgMSwgNCwgMTU2LCA1OCwgMSwgNCwgMjIyLCA5MSwgNTgsIDEsIDQsIDIxMSwgMTc4LCAKKyAgICA1OCwgMSwgNCwgMjIzLCA0OSwgMjQyLCAxODAsIDIxOCwgMTI5LCA1OCwgMSwgMjQ1LCAyMCwgMTM4LCAxMzAsIDU4LCAxLCAKKyAgICAxMjUsIDEzOCwgMTMwLCA1OCwgMSwgMjMwLCAyMjUsIDEzOCwgMTMwLCA1OCwgMSwgMTIxLCAxMzgsIDEzMCwgNTgsIDEsIAorICAgIDI0NSwgMTksIDEzOCwgMTMwLCA1OCwgMSwgMjEwLCAyNTQsIDI0OCwgNDQsIDEzOCwgNzgsIDU4LCAxLCAyMTEsIDcwLCAKKyAgICAyNDgsIDQ0LCAxMzgsIDc4LCA1OCwgMSwgMjEzLCAxMzMsIDU4LCAxLCAyMTQsIDE4NiwgNTgsIDEsIDUyLCAyNTQsIDU3LCAKKyAgICA1OCwgMSwgMTIxLCAxMjQsIDI1MywgMjQ5LCA1OCwgMSwgMTIxLCAxMjAsIDI1MywgMjQ5LCA1OCwgMSwgMTIxLCA0MywgCisgICAgMjUzLCAyNDksIDU4LCAxLCAxMjEsIDQ0LCAyNTMsIDI0OSwgNTgsIDEsIDEyMSwgMjIyLCAyMzMsIDU4LCAxLCAyMzAsIAorICAgIDIyNCwgMjQyLCAxMzcsIDI1NSwgMTQsIDU4LCAxLCAyMzAsIDIyNCwgNTIsIDI0MiwgMTM3LCAyNTUsIDE0LCA1OCwgMSwgCisgICAgMjMwLCAyMjQsIDUyLCAyNTUsIDMsIDI1NSwgMTQsIDU4LCAxLCAxMjEsIDE4MiwgNTgsIDEsIDIyMywgMTU3LCAyNDksIAorICAgIDIyNiwgNTgsIDEsIDI1MiwgNTgsIDEyNSwgMjE2LCAzMCwgNTgsIDEsIDI0NSwgMTQzLCAxMjUsIDIxNiwgMzAsIDU4LCAxLCAKKyAgICAyNTIsIDU4LCAxMjEsIDIxNiwgMzAsIDU4LCAxLCAyNDUsIDE0MywgMTIxLCAyMTYsIDMwLCA1OCwgMSwgMjIwLCA1NCwgNTgsIAorICAgIDEsIDIwNCwgMjIwLCA1NCwgNTgsIDEsIDEyMSwgNDMsIDc0LCAzOCwgMjQyLCAxMzcsIDI1NSwgMTQsIDM4LCAyNTUsIDMsIAorICAgIDI1NSwgMTQsIDM4LCAyNTAsIDMxLCAyNTUsIDE0LCAzOCwgMTgyLCAzOCwgMjMxLCAyMzIsIDM4LCAyMjYsIDExOSwgMzgsIAorICAgIDI1MSwgMTQ2LCAzOCwgNTksIDQ4LCAzOCwgMjQ4LCAxLCAzOCwgMjQxLCA1MiwgNDgsIDM4LCAyMjIsIDIzNCwgNDgsIDM4LCAKKyAgICA1MiwgMjU1LCAzLCAyNTUsIDE0LCAzOCwgMjUwLCAyMzQsIDM4LCA2NywgMjMyLCAyMTQsIDQ4LCAzOCwgNTIsIDY3LCAyMzIsIAorICAgIDIxNCwgNDgsIDM4LCA1MiwgMjQyLCAxMzcsIDI1NSwgMTQsIDM4LCAyNTAsIDI1NSwgMzgsIDIzNSwgMTkzLCAyNTEsIDE0NiwgCisgICAgMzgsIDIxNSwgOTQsIDI0OSwgMjIwLCA0OCwgMzgsIDI0OSwgMjIwLCA0OCwgMzgsIDIyMywgNDksIDI0OSwgMjIwLCA0OCwgCisgICAgMzgsIDI0OSwgMjIwLCA3NywgMjIyLCAyNTEsIDM4LCAyNDIsIDEzNywgMjU1LCAxNSwgNTEsIDM4LCAyNTUsIDMsIDI1NSwgCisgICAgMTUsIDUxLCAzOCwgNDMsIDIxNywgODgsIDUxLCAzOCwgNDQsIDIxNywgODgsIDUxLCAzOCwgNDMsIDI1NCwgMTEwLCA0OCwgCisgICAgMzgsIDI0MCwgMjQ4LCAzOCwgNDMsIDE2MywgMjIyLCAyMzQsIDUxLCAzOCwgMTIwLCAyMTcsIDg4LCA1MSwgMzgsIDEyNCwgCisgICAgMjE3LCA4OCwgNTEsIDM4LCA5NiwgNSwgNTEsIDM4LCAyMzAsIDE4MiwgNSwgNTEsIDM4LCAyMjYsIDY0LCAyNDEsIDUyLCAKKyAgICA1MSwgMzgsIDIyMywgNTUsIDI0MSwgNTIsIDUxLCAzOCwgNTksIDUxLCAzOCwgMjQ4LCAyLCA1MSwgMzgsIDIyMiwgMjM0LCAKKyAgICA1MSwgMzgsIDI0OSwgMjIwLCA1MSwgMzgsIDI1MCwgMTgzLCAzOCwgMjI2LCAyMjQsIDM4LCA2NywgMjMyLCAyMTQsIDUxLCAKKyAgICAzOCwgMjUxLCAxNDAsIDUxLCAzOCwgMjM1LCAxOTMsIDUyLCAyNTQsIDI0LCA1MSwgMzgsIDI1MCwgMjM1LCA1MSwgMzgsIAorICAgIDI1MCwgMzEsIDI1NSwgMTUsIDUxLCAzOCwgMjUxLCAxNDcsIDUxLCAzOCwgMjM1LCAxOTMsIDI1MSwgMTQ3LCA1MSwgMzgsIAorICAgIDIxNiwgODksIDUxLCAzOCwgMjMxLCAyMzMsIDUxLCAzOCwgMTIxLCAyMzIsIDIxMywgMzgsIDUyLCAxMjEsIDIzMiwgMjEzLCAKKyAgICAzOCwgMjE2LCA4OSwgMjI2LCAxMjAsIDM4LCAyMTksIDI1MSwgMjE4LCAxMDMsIDIyNiwgMTIwLCAzOCwgMTk5LCAyMTgsIAorICAgIDEwMywgMjI2LCAxMjAsIDM4LCAyMTksIDI1MSwgMjE5LCA0NywgMjI2LCAxMjAsIDM4LCAxOTksIDIxOSwgNDcsIDIyNiwgCisgICAgMTIwLCAzOCwgNDQsIDE2MywgMjIyLCAyMzQsIDUxLCAzOCwgMjM1LCAxOTMsIDI1MSwgMTQwLCA1MSwgMzgsIDQyLCA1MSwgCisgICAgMzgsIDIyMSwgMTgwLCA1MSwgMzgsIDIxMSwgMTc5LCA0OCwgMzgsIDY3LCAxODIsIDM4LCA1MiwgMjI2LCAxMTksIDM4LCAKKyAgICAyNDIsIDEzNywgMTM4LCA3OCwgMzgsIDI1NSwgMywgMTM4LCA3OCwgMzgsIDI2LCAyMjUsIDE3NSwgMzgsIDI2LCAyMzQsIDIsIAorICAgIDM4LCAyNiwgMjQ3LCAyNTIsIDIxNiwgMTgsIDM4LCAyNiwgMjEwLCAyMTksIDM4LCAyNTEsIDE0MCwgNDgsIDM4LCAyNDUsIAorICAgIDk4LCA1LCA1MSwgMzgsIDUyLCA2NywgMjMyLCAyMTQsIDUxLCAzOCwgNDMsIDI1NCwgMTEwLCA1MSwgMzgsIDIyOCwgNTIsIAorICAgIDIxNiwgODksIDQ4LCAzOCwgMjQxLCA1OCwgNDgsIDM4LCAyNTQsIDE0OCwgMTI4LCAyMTYsIDQyLCA0OCwgMzgsIDQzLCA0NCwgCisgICAgODAsIDUxLCAzOCwgMjE0LCAxNTMsIDgwLCA1MSwgMzgsIDI0MiwgMTQyLCAyMzUsIDYzLCAzOCwgNDQsIDI1MywgMjUwLCAKKyAgICA0OCwgMzgsIDQzLCAxNjMsIDIyMiwgMjM0LCA0OCwgMzgsIDI0NCwgMTMxLCAzOCwgMjExLCAxNzksIDUxLCAzOCwgNDMsIAorICAgIDI1MywgMjUwLCA1MSwgMzgsIDQ0LCAyNTMsIDI1MCwgNTEsIDM4LCA0NCwgMjUzLCAyNTAsIDIyLCAxMjAsIDI1MywgMjUwLCAKKyAgICA1MSwgMzgsIDQ0LCAxNjMsIDIyMiwgMjM0LCA0OCwgMzgsIDU5LCA3NywgMjIyLCAyNTEsIDM4LCAyNTMsIDIxNywgNTEsIAorICAgIDM4LCA1MiwgMjIyLCAyMzQsIDUxLCAzOCwgMjEwLCAzNSwgNDgsIDM4LCA1MiwgMjUxLCAxNDcsIDUxLCAzOCwgNTIsIDI1MSwgCisgICAgMTQ2LCAzOCwgNTIsIDIzMSwgMjMyLCAzOCwgNTIsIDIzMSwgMjMzLCA1MSwgMzgsIDUyLCAxODIsIDM4LCA1MiwgMjM1LCAKKyAgICAxOTMsIDI1MSwgMTQ2LCAzOCwgNTIsIDk3LCA4MCwgNTEsIDM4LCA3LCA0LCAxLCA2MSwgMzgsIDcsIDQsIDEsIDc1LCAzOCwgCisgICAgNywgNCwgMSwgNzMsIDM4LCA3LCA0LCAxLCA3NiwgMzgsIDcsIDQsIDEsIDcwLCAzOCwgNywgNCwgMSwgMjUxLCA2NiwgMzgsIAorICAgIDcsIDQsIDEsIDI0OSwgNjAsIDM4LCA3LCA0LCAxLCAyNDIsIDYwLCAzOCwgNywgNCwgMSwgMTkzLCAzOCwgNywgNCwgMSwgCisgICAgMTUzLCAzOCwgNywgNCwgMSwgMjE3LCAxNTIsIDM4LCA3LCA0LCAxLCAyMTQsIDEwNSwgMzgsIDcsIDQsIDEsIDIxMSwgMTc4LCAKKyAgICAyNiwgNiwgMSwgMjQxLCAxOTYsIDI2LCA0LCAxLCAyNDEsIDE5NiwgMjYsIDYsIDEsIDI1NCwgMjMsIDIyMSwgMjQ2LCAyNiwgCisgICAgNCwgMSwgMjU0LCAyMywgMjIxLCAyNDYsIDI2LCAyMjcsIDE5OCwgNTAsIDI2LCAyMzIsIDEwOCwgMjI3LCAxOTgsIDUwLCAKKyAgICAyNiwgNiwgMSwgMjI2LCA1MSwgMjQ3LCAyMjcsIDI2LCA0LCAxLCAyMjYsIDUxLCAyNDcsIDIyNywgMjYsIDIxMCwgMjE5LCAKKyAgICAyNiwgNCwgMjIzLCA0OSwgMjMyLCA4MywgMjE5LCAxNzgsIDg3LCAyNiwgNCwgMjQ2LCAxMTgsIDIzMiwgODMsIDIxOSwgCisgICAgMTc4LCA4NywgMjYsIDQsIDIyMywgNDksIDI0NiwgMTE4LCAyMzIsIDgzLCAyMTksIDE3OCwgODcsIDI2LCAyMjQsIDEzLCAKKyAgICA3OCwgMjYsIDIxNiwgMTgsIDI2LCAyNDcsIDI1MiwgMjE2LCAxOCwgMjYsIDYsIDEsIDI1NCwgMTQ0LCAyLCAyMTYsIDE4LCAKKyAgICAyNiwgMjU0LCA5NywgMjE3LCAyLCAyNiwgNiwgMSwgMjQ1LCAxMDEsIDIsIDIxNiwgMTgsIDI2LCA2LCAxLCAyNDUsIDY0LCAKKyAgICAyLCAyMTYsIDE4LCAyNiwgNiwgMSwgMjM1LCAxODYsIDIsIDIxNiwgMTgsIDI2LCA2LCAxLCAyMjYsIDIwMCwgMiwgMjE2LCAKKyAgICAxOCwgMjYsIDYsIDEsIDIxNCwgMTU4LCAyLCAyMTYsIDE4LCAyNiwgNiwgMSwgMjI2LCAyMDIsIDIsIDIxNiwgMTgsIDI2LCAKKyAgICA0LCAxLCAyMzUsIDE4NiwgMiwgMjQ3LCAyNTIsIDIyLCAyMTYsIDE4LCAyNiwgNiwgMSwgMjU0LCAxNDMsIDI2LCA2LCAxLCAKKyAgICAyNTIsIDI2LCAyNiwgNiwgMSwgMjQzLCAxMDcsIDI2LCA2LCAxLCAyNDgsIDU0LCAyNiwgNiwgMSwgMjQ1LCAxMDAsIDI2LCAKKyAgICA2LCAxLCAyMTAsIDg1LCAyNiwgNiwgMSwgMjQ1LCA2MywgMjYsIDYsIDEsIDIxNiwgMTc5LCAyNiwgNiwgMSwgMjM1LCAxODUsIAorICAgIDI2LCA2LCAxLCAyMzQsIDIyMiwgMjYsIDYsIDEsIDIzMywgOTgsIDI2LCA2LCAxLCAyMzAsIDEwMiwgMjYsIDYsIDEsIDIyNywgCisgICAgMjM3LCAyNiwgNiwgMSwgMjExLCAxNTcsIDI2LCA2LCAxLCAyMjYsIDE5OSwgMjYsIDYsIDEsIDIyNSwgMTA4LCAyNiwgNiwgCisgICAgMSwgMjIzLCAzNywgMjYsIDYsIDEsIDIxOSwgMTc3LCAyNiwgNiwgMSwgMjE3LCA0MSwgMjYsIDYsIDEsIDIxNCwgMTU3LCAKKyAgICAyNiwgNiwgMSwgMjI1LCAxMzMsIDI2LCA2LCAxLCAyNTAsIDExMCwgMjYsIDYsIDEsIDIyNCwgMTYxLCAyNiwgNiwgMSwgCisgICAgMjI2LCAyMDEsIDI2LCA2LCAxLCAyMzUsIDE4NiwgMiwgMjQ3LCAyNTEsIDI2LCA2LCAxLCAyMTQsIDE1OCwgMiwgMjQ3LCAKKyAgICAyNTEsIDI2LCA0LCAxLCAyNTQsIDE0NCwgMiwgMjE2LCAxOCwgMjYsIDQsIDEsIDI0NSwgMTAxLCAyLCAyMTYsIDE4LCAyNiwgCisgICAgNCwgMSwgMjQ1LCA2NCwgMiwgMjE2LCAxOCwgMjYsIDQsIDEsIDIzNSwgMTg2LCAyLCAyMTYsIDE4LCAyNiwgNCwgMSwgMjE0LCAKKyAgICAxNTgsIDIsIDI0NywgMjUyLCAyMiwgMjE2LCAxOCwgMjYsIDQsIDEsIDI1NCwgMTQzLCAyNiwgNCwgMSwgMjUyLCAyNiwgMjYsIAorICAgIDQsIDEsIDI0MywgMTA3LCAyNiwgNCwgMSwgMjQ4LCA1NCwgMjYsIDQsIDEsIDI0NSwgMTAwLCAyNiwgNCwgMSwgMjEwLCA4NSwgCisgICAgMjYsIDQsIDEsIDI0NSwgNjMsIDI2LCA0LCAxLCAyMTYsIDE3OSwgMjYsIDQsIDEsIDIzNSwgMTg1LCAyNiwgNCwgMSwgMjM0LCAKKyAgICAyMjIsIDI2LCA0LCAxLCAyMzMsIDk4LCAyNiwgNCwgMSwgMjMwLCAxMDIsIDI2LCA0LCAxLCAyMjcsIDIzNywgMjYsIDQsIDEsIAorICAgIDIxMSwgMTU3LCAyNiwgNCwgMSwgMjI2LCAxOTksIDI2LCA0LCAxLCAyMjUsIDEwOCwgMjYsIDQsIDEsIDIyMywgMzcsIDI2LCAKKyAgICA0LCAxLCA0MCwgMjE5LCAxNzcsIDI2LCA0LCAxLCAyMTksIDE3NywgMjYsIDQsIDEsIDIxNywgNDEsIDI2LCA0LCAxLCAyMTQsIAorICAgIDE1NywgMjYsIDQsIDEsIDIyNSwgMTMzLCAyNiwgNCwgMSwgMjUwLCAxMTAsIDI2LCA0LCAxLCAyMjQsIDE2MSwgMjYsIDQsIAorICAgIDEsIDIyNiwgMjAxLCAyNiwgNCwgMSwgMjM1LCAxODYsIDIsIDI0NywgMjUxLCAyNiwgNCwgMSwgMjE0LCAxNTgsIDIsIDI0NywgCisgICAgMjUxLCAyNiwgNCwgMSwgMjI2LCAyMDAsIDIsIDIxNiwgMTgsIDI2LCA0LCAxLCAyMTQsIDE1OCwgMiwgMjE2LCAxOCwgMjYsIAorICAgIDQsIDEsIDIyNiwgMjAyLCAyLCAyMTYsIDE4LCAyNiwgNiwgMjM0LCAyNDcsIDg3LCAyNiwgMjUyLCAyNywgODcsIDI2LCAKKyAgICAyMTYsIDE4MCwgODcsIDI2LCAyMTQsIDE1OCwgMiwgMjQxLCA1MiwgODcsIDI2LCAyMTQsIDE1OCwgMiwgMjU1LCAzLCAyMiwgCisgICAgMjQxLCA1MiwgODcsIDI2LCAyMTQsIDE1OCwgMiwgMjQ4LCAyLCAyMiwgMjQxLCA1MiwgODcsIDI2LCAyMjUsIDEzNCwgODcsIAorICAgIDI2LCAyMjUsIDEwOSwgODcsIDI2LCAyMzQsIDI0NywgODcsIDI2LCAxLCAyNTQsIDIzLCAyMzQsIDYsIDI2LCA0LCAxLCAKKyAgICAyNTQsIDIzLCAyMzQsIDYsIDI2LCAxLCAyMTgsIDEzNywgMjYsIDQsIDEsIDIxOCwgMTM3LCAyNiwgMSwgMjQ3LCAyMjcsIAorICAgIDI2LCA0LCAxLCAyNDcsIDIyNywgMjYsIDEsIDIzNCwgNiwgMjYsIDQsIDEsIDIzNCwgNiwgMjYsIDEsIDIyMSwgMjQ2LCAyNiwgCisgICAgNCwgMSwgMjIxLCAyNDYsIDgxLCA2LCAxLCAyMjAsIDU1LCA4MSwgNCwgMSwgMjIwLCA1NSwgODEsIDYsIDEsIDI0NCwgMTQwLCAKKyAgICA4MSwgNCwgMSwgMjQ0LCAxNDAsIDgxLCA2LCAxLCAyMzQsIDExNywgODEsIDQsIDEsIDIzNCwgMTE3LCA4MSwgNiwgMSwgCisgICAgMjQxLCA0NSwgODEsIDQsIDEsIDI0MSwgNDUsIDgxLCA2LCAxLCAyNDMsIDEwMiwgODEsIDQsIDEsIDI0MywgMTAyLCA4MSwgCisgICAgNiwgMSwgMjIwLCAyMiwgODEsIDQsIDEsIDIyMCwgMjIsIDgxLCA2LCAxLCAyNDgsIDY5LCA4MSwgNCwgMSwgMjQ4LCA2OSwgCisgICAgMjYsIDIzNCwgMjIzLCA4NywgMjYsIDIyMywgMzgsIDg3LCAyNiwgMjMyLCA4MywgMjE5LCAxNzgsIDg3LCAyNiwgMSwgMjEwLCAKKyAgICAyMjQsIDI2LCA2LCAyMTYsIDE4MCwgODcsIDI2LCAyMzIsIDgzLCAyNDUsIDEwMSwgODcsIDI2LCAyMjMsIDQ5LCAyMzIsIAorICAgIDgzLCAyNDUsIDEwMSwgODcsIDI2LCA2LCAxLCAyMjAsIDcsIDI2LCA0LCAxLCAyMjAsIDcsIDI2LCA2LCAyMzIsIDgzLCAKKyAgICAyMTksIDE3OCwgODcsIDI2LCA2LCAxLCAyMjEsIDI0MywgMjYsIDQsIDEsIDIyMSwgMjQzLCAyNiwgMjIzLCAzOCwgMiwgCisgICAgMjE4LCAxMDMsIDg3LCAyNiwgNiwgMjIzLCA0OSwgMjMyLCA4MywgMjE5LCAxNzgsIDg3LCAyNiwgNiwgMjQ2LCAxMTgsIAorICAgIDIzMiwgODMsIDIxOSwgMTc4LCA4NywgMjYsIDYsIDIyMywgNDksIDI0NiwgMTE4LCAyMzIsIDgzLCAyMTksIDE3OCwgODcsIAorICAgIDMzLCA2LCAxLCAyMzYsIDYxLCAyLCAyNDIsIDEzNiwgMzMsIDYsIDEsIDIzNSwgMTg5LCAzMywgNiwgMSwgMjQ3LCAxNjIsIAorICAgIDMzLCA2LCAxLCAyNDIsIDE4NywgMzMsIDYsIDEsIDIxNCwgMjAyLCAyMzYsIDYwLCAzMywgNiwgMSwgMjQ2LCAzNiwgMzMsIAorICAgIDYsIDEsIDI1MSwgNzYsIDczLCAzMywgNiwgMSwgMjExLCA4LCAzMywgNiwgMSwgMjM1LCAxMjYsIDMzLCA2LCAxLCAyMzIsIAorICAgIDE4NywgMzMsIDYsIDEsIDIyOCwgMTc4LCAzMywgNiwgMSwgMjE1LCAxNzQsIDMzLCA2LCAxLCAyMzQsIDQ4LCAzMywgNiwgMSwgCisgICAgMjQwLCAxNTQsIDIsIDI0MiwgMTM2LCAzMywgNiwgMSwgMjE5LCAyNTEsIDcwLCAzMywgNiwgMSwgMjQ2LCAzMiwgMzMsIDYsIAorICAgIDEsIDYxLCAzMywgNiwgMSwgMjUyLCA3NSwgMzMsIDYsIDEsIDIxMywgMjU1LCAzMywgNiwgMSwgMjQyLCAyMzYsIDMzLCA2LCAKKyAgICAxLCAyNDgsIDkwLCAzMywgNiwgMSwgMjM2LCA2MCwgMzMsIDYsIDEsIDIxMCwgNzQsIDMzLCA2LCAxLCAyMTAsIDk0LCAzMywgCisgICAgNiwgMSwgNzMsIDMzLCA2LCAxLCAyMTksIDI1MSwgNzMsIDMzLCA2LCAxLCAxNzYsIDMzLCA2LCAxLCAyNDUsIDE3NCwgMzMsIAorICAgIDYsIDEsIDI0NSwgMTU5LCAzMywgNiwgMSwgMjQ1LCAxNTAsIDMzLCA2LCAxLCA3NiwgMzMsIDYsIDEsIDIyNSwgMjIxLCAzMywgCisgICAgNiwgMSwgMjQ1LCA5MiwgMzMsIDYsIDEsIDI0NSwgODIsIDMzLCA2LCAxLCAyMTcsIDIyLCAzMywgNiwgMSwgNzAsIDMzLCA2LCAKKyAgICAxLCAyNDUsIDIwMiwgMzMsIDYsIDEsIDE2MiwgMzMsIDYsIDEsIDIxNSwgMTc4LCAzMywgNiwgMSwgMjUwLCAxMzEsIDMzLCAKKyAgICA2LCAxLCAyMjAsIDEwMiwgMzMsIDYsIDEsIDIyMCwgNjUsIDMzLCA2LCAxLCAyNDIsIDMsIDUwLCAzMywgNiwgMSwgMjExLCAKKyAgICAyNywgMzMsIDYsIDEsIDIxOSwgNTIsIDUwLCAzMywgNiwgMSwgNzUsIDMzLCA2LCAxLCAyMTAsIDIxMiwgMzMsIDYsIDEsIAorICAgIDE5MSwgMzMsIDQsIDEsIDYxLCAzMywgNCwgMSwgMjUyLCA3NSwgMzMsIDQsIDEsIDIxMywgMjU1LCAzMywgNCwgMSwgMjQyLCAKKyAgICAyMzYsIDMzLCA0LCAxLCAyNDgsIDkwLCAzMywgNCwgMSwgMjM2LCA2MCwgMzMsIDQsIDEsIDIxMCwgNzQsIDMzLCA0LCAxLCAKKyAgICAyMTAsIDk0LCAzMywgNCwgMSwgNzMsIDMzLCA0LCAxLCAyMTksIDI1MSwgNzMsIDMzLCA0LCAxLCAxNzYsIDMzLCA0LCAxLCAKKyAgICAyNDUsIDE3NCwgMzMsIDQsIDEsIDI0NSwgMTU5LCAzMywgNCwgMSwgMjQ1LCAxNTAsIDMzLCA0LCAxLCA3NiwgMzMsIDQsIDEsIAorICAgIDIyNSwgMjIxLCAzMywgNCwgMSwgMjQ1LCA5MiwgMzMsIDQsIDEsIDI0NSwgODIsIDMzLCA0LCAxLCAyMTcsIDIyLCAzMywgNCwgCisgICAgMSwgNzAsIDMzLCA0LCAxLCAyNDUsIDIwMiwgMzMsIDQsIDEsIDE2MiwgMzMsIDQsIDEsIDIxNSwgMTc4LCAzMywgNCwgMSwgCisgICAgMjUwLCAxMzEsIDMzLCA0LCAxLCAyMjAsIDEwMiwgMzMsIDQsIDEsIDIyMCwgNjUsIDMzLCA0LCAxLCAyNDIsIDMsIDUwLCAKKyAgICAzMywgNCwgMSwgMjExLCAyNywgMzMsIDQsIDEsIDIxOSwgNTIsIDUwLCAzMywgNCwgMSwgNzUsIDMzLCA0LCAxLCAyMTAsIAorICAgIDIxMiwgMzMsIDQsIDEsIDE5MSwgMzMsIDQsIDEsIDIzNiwgNjEsIDIsIDI0MiwgMTM2LCAzMywgNCwgMSwgMjM1LCAxODksIAorICAgIDMzLCA0LCAxLCAyNDcsIDE2MiwgMzMsIDQsIDEsIDI0MiwgMTg3LCAzMywgNCwgMSwgMjE0LCAyMDIsIDIzNiwgNjAsIDMzLCAKKyAgICA0LCAxLCAyNDYsIDM2LCAzMywgNCwgMSwgMjUxLCA3NiwgNzMsIDMzLCA0LCAxLCAyMTEsIDgsIDMzLCA0LCAxLCAyMzUsIAorICAgIDEyNiwgMzMsIDQsIDEsIDIzMiwgMTg3LCAzMywgNCwgMSwgMjI4LCAxNzgsIDMzLCA0LCAxLCAyMTUsIDE3NCwgMzMsIDQsIAorICAgIDEsIDIzNCwgNDgsIDMzLCA0LCAxLCAyNDAsIDE1NCwgMiwgMjQyLCAxMzYsIDMzLCA0LCAxLCAyMTksIDI1MSwgNzAsIDMzLCAKKyAgICA0LCAxLCAyNDYsIDMyLCAzMywgNiwgMSwgMjI2LCAyMDEsIDMzLCA0LCAxLCAyMjYsIDIwMSwgMzMsIDYsIDEsIDIxMSwgNTksIAorICAgIDMzLCA0LCAxLCAyMTEsIDU5LCAzMywgNiwgMSwgMjM1LCAxODMsIDc1LCAzMywgNCwgMSwgMjM1LCAxODMsIDc1LCAzMywgNiwgCisgICAgMSwgMjMyLCAxOTIsIDIxMCwgMTgzLCAzMywgNCwgMSwgMjMyLCAxOTIsIDIxMCwgMTgzLCAzMywgNiwgMSwgMjM1LCAxODMsIAorICAgIDIzMiwgMTkyLCAyMTAsIDE4MywgMzMsIDQsIDEsIDIzNSwgMTgzLCAyMzIsIDE5MiwgMjEwLCAxODMsIDMzLCA2LCAxLCAKKyAgICAyNTEsIDI0OSwgMjEwLCAxODMsIDMzLCA0LCAxLCAyNTEsIDI0OSwgMjEwLCAxODMsIDMzLCA2LCAxLCAyMzUsIDE4MywgCisgICAgMjUxLCAyNDksIDIxMCwgMTgzLCAzMywgNCwgMSwgMjM1LCAxODMsIDI1MSwgMjQ5LCAyMTAsIDE4MywgMzMsIDYsIDEsIAorICAgIDIzMywgMjMzLCAzMywgNCwgMSwgMjMzLCAyMzMsIDMzLCA2LCAxLCAyMjQsIDE2MSwgMzMsIDQsIDEsIDIyNCwgMTYxLCAzMywgCisgICAgNiwgMSwgMjQ0LCA4MiwgMzMsIDQsIDEsIDI0NCwgODIsIDMzLCA2LCAxLCAyMzUsIDE0NiwgMzMsIDQsIDEsIDIzNSwgMTQ2LCAKKyAgICAzMywgNiwgMSwgMjM1LCAxNDcsIDIsIDUyLCAyNDIsIDEzNywgMjU1LCAxNCwgMzMsIDQsIDEsIDIzNSwgMTQ3LCAyLCA1MiwgCisgICAgMjQyLCAxMzcsIDI1NSwgMTQsIDMzLCA2LCAxLCAyMTQsIDIwNSwgMzMsIDQsIDEsIDIxNCwgMjA1LCAzMywgNiwgMSwgMjIyLCAKKyAgICAxODUsIDIyNiwgMjAxLCAzMywgNCwgMSwgMjIyLCAxODUsIDIyNiwgMjAxLCAzMywgNiwgMSwgMjI2LCAyMDIsIDIsIDIxNiwgCisgICAgNjUsIDMzLCA0LCAxLCAyMjYsIDIwMiwgMiwgMjE2LCA2NSwgMzMsIDYsIDEsIDIyNiwgMTQwLCAzMywgNCwgMSwgMjI2LCAKKyAgICAxNDAsIDMzLCA2LCAxLCAyMzQsIDYsIDMzLCA0LCAxLCAyMzQsIDYsIDMzLCAyMTYsIDE0NiwgNTAsIDM4LCAzMywgMjE2LCAKKyAgICA2NSwgMzgsIDMzLCAyMjYsIDY1LCAzOCwgMzMsIDI0OCwgMTU0LCAyMjUsIDE4LCAzOCwgMzMsIDIyNCwgMTU1LCAyMjUsIAorICAgIDE4LCAzOCwgMzMsIDIyNSwgMywgMzgsIDMzLCAyNDAsIDIxMSwgMjE2LCAxNDYsIDUwLCAzOCwgMzMsIDIzMCwgMTkxLCA1MCwgCisgICAgMzMsIDYsIDEsIDIxOSwgMjUxLCAyNDAsIDE1NCwgMiwgMjE3LCA3NywgMzMsIDQsIDEsIDIxOSwgMjUxLCAyNDAsIDE1NCwgCisgICAgMiwgMjE3LCA3NywgMzMsIDYsIDEsIDIyMCwgMTQ2LCA1MCwgMzMsIDQsIDEsIDIyMCwgMTQ2LCA1MCwgMzMsIDYsIDEsIAorICAgIDI0NSwgOTMsIDIsIDIxNiwgMTE0LCAzMywgNCwgMSwgMjQ1LCA5MywgMiwgMjE2LCAxMTQsIDMzLCA2LCAxLCAyNDIsIDIzNywgCisgICAgMiwgMjE0LCAxNTYsIDMzLCA0LCAxLCAyNDIsIDIzNywgMiwgMjE0LCAxNTYsIDMzLCA2LCAxLCAyNDIsIDIzNywgMiwgOTEsIAorICAgIDMzLCA0LCAxLCAyNDIsIDIzNywgMiwgOTEsIDMzLCA2LCAxLCAyNDIsIDIzNywgMiwgMjMwLCAyMjQsIDEwMywgMzMsIDQsIAorICAgIDEsIDI0MiwgMjM3LCAyLCAyMzAsIDIyNCwgMTAzLCAzMywgNiwgMSwgMjEwLCA3NSwgMiwgMjQ4LCAzOSwgMzMsIDQsIDEsIAorICAgIDIxMCwgNzUsIDIsIDI0OCwgMzksIDMzLCA2LCAxLCAyMTAsIDk1LCAyLCAyNDgsIDM5LCAzMywgNCwgMSwgMjEwLCA5NSwgMiwgCisgICAgMjQ4LCAzOSwgMzMsIDYsIDEsIDIzNSwgMTMsIDIsIDI0OCwgMzksIDMzLCA0LCAxLCAyMzUsIDEzLCAyLCAyNDgsIDM5LCAKKyAgICAzMywgNiwgMSwgMjM1LCAxMywgMiwgNjcsIDkxLCAzMywgNCwgMSwgMjM1LCAxMywgMiwgNjcsIDkxLCAzMywgNiwgMSwgCisgICAgMjM1LCAxMywgMiwgOTEsIDMzLCA0LCAxLCAyMzUsIDEzLCAyLCA5MSwgMzMsIDYsIDEsIDI1MiwgMTI0LCAxNzYsIDMzLCA0LCAKKyAgICAxLCAyNTIsIDEyNCwgMTc2LCAzMywgNiwgMSwgMjQ1LCAxNTEsIDIsIDI0OCwgMzksIDMzLCA0LCAxLCAyNDUsIDE1MSwgMiwgCisgICAgMjQ4LCAzOSwgMzMsIDYsIDI3LCAyNDUsIDE1MSwgMjQyLCAyMzYsIDMzLCA0LCAyNywgMjQ1LCAxNTEsIDI0MiwgMjM2LCAKKyAgICAzMywgNiwgMSwgMjI1LCAyMjIsIDIsIDIzMCwgMjI0LCAxMDMsIDMzLCA0LCAxLCAyMjUsIDIyMiwgMiwgMjMwLCAyMjQsIAorICAgIDEwMywgMzMsIDYsIDEsIDI1NSwgMjAsIDE2MiwgMzMsIDQsIDEsIDI1NSwgMjAsIDE2MiwgMzMsIDYsIDEsIDI0NSwgODMsIAorICAgIDIsIDI0OCwgMzksIDMzLCA0LCAxLCAyNDUsIDgzLCAyLCAyNDgsIDM5LCAzMywgNiwgMSwgMjE3LCAyMywgMiwgMjQ4LCAzOSwgCisgICAgMzMsIDQsIDEsIDIxNywgMjMsIDIsIDI0OCwgMzksIDMzLCA2LCAxLCAyMTgsIDEyMSwgNzAsIDMzLCA0LCAxLCAyMTgsIAorICAgIDEyMSwgNzAsIDMzLCA2LCAxLCAyMTgsIDEyMSwgMTA0LCAyLCA5MSwgMzMsIDQsIDEsIDIxOCwgMTIxLCAxMDQsIDIsIDkxLCAKKyAgICAzMywgNiwgMSwgMjQyLCA0OSwgMiwgMjQ4LCAzOSwgMzMsIDQsIDEsIDI0MiwgNDksIDIsIDI0OCwgMzksIDMzLCA2LCAyNywgCisgICAgMjE3LCAyMywgMjE1LCAxNzgsIDMzLCA0LCAyNywgMjE3LCAyMywgMjE1LCAxNzgsIDMzLCA2LCAxLCAyNTAsIDEzMiwgMiwgCisgICAgMjQ4LCAzOSwgMzMsIDQsIDEsIDI1MCwgMTMyLCAyLCAyNDgsIDM5LCAzMywgNiwgMSwgMjUwLCAxMzIsIDIsIDY3LCA5MSwgCisgICAgMzMsIDQsIDEsIDI1MCwgMTMyLCAyLCA2NywgOTEsIDMzLCA2LCAxLCAyMjAsIDMzLCAzMywgNCwgMSwgMjIwLCAzMywgMzMsIAorICAgIDYsIDEsIDI1NSwgMjAsIDI1MCwgMTMxLCAzMywgNCwgMSwgMjU1LCAyMCwgMjUwLCAxMzEsIDMzLCA2LCAxLCAyNTUsIDIwLCAKKyAgICAyNTAsIDEzMiwgMiwgMjQ4LCAzOSwgMzMsIDQsIDEsIDI1NSwgMjAsIDI1MCwgMTMyLCAyLCAyNDgsIDM5LCAzMywgMSwgCisgICAgMjI2LCA1OCwgMzMsIDYsIDEsIDIxMCwgNzUsIDIsIDI1MSwgMTQ2LCAzMywgNCwgMSwgMjEwLCA3NSwgMiwgMjUxLCAxNDYsIAorICAgIDMzLCA2LCAxLCAyMzUsIDEzLCAyLCAxMDMsIDMzLCA0LCAxLCAyMzUsIDEzLCAyLCAxMDMsIDMzLCA2LCAxLCAyNDUsIDE3NSwgCisgICAgMiwgMjE3LCA3NywgMzMsIDQsIDEsIDI0NSwgMTc1LCAyLCAyMTcsIDc3LCAzMywgNiwgMSwgMjQ1LCAxNTEsIDIsIDEwMywgCisgICAgMzMsIDQsIDEsIDI0NSwgMTUxLCAyLCAxMDMsIDMzLCA2LCAxLCAyNDUsIDE1MSwgMiwgMjE3LCA3NywgMzMsIDQsIDEsIAorICAgIDI0NSwgMTUxLCAyLCAyMTcsIDc3LCAzMywgNiwgMSwgMjM0LCAxMjcsIDI1MCwgMTMxLCAzMywgNCwgMSwgMjM0LCAxMjcsIAorICAgIDI1MCwgMTMxLCAzMywgNiwgMSwgMjQ1LCAxNjAsIDIsIDIxNywgNzcsIDMzLCA0LCAxLCAyNDUsIDE2MCwgMiwgMjE3LCA3NywgCisgICAgMzMsIDQsIDEsIDIyNiwgNTgsIDMzLCA2LCAxLCAxMTUsIDIsIDI1MSwgMTQ2LCAzMywgNCwgMSwgMTE1LCAyLCAyNTEsIAorICAgIDE0NiwgMzMsIDYsIDEsIDExNSwgMiwgMjQ4LCAxLCAzMywgNCwgMSwgMTE1LCAyLCAyNDgsIDEsIDMzLCA2LCAyNywgMTE1LCAKKyAgICAyMzYsIDYwLCAzMywgNCwgMjcsIDExNSwgMjM2LCA2MCwgMzMsIDYsIDEsIDIzNiwgNjEsIDIsIDI1MSwgMTQ2LCAzMywgNCwgCisgICAgMSwgMjM2LCA2MSwgMiwgMjUxLCAxNDYsIDMzLCA2LCAxLCAyMjEsIDE5NSwgMzMsIDQsIDEsIDIyMSwgMTk1LCAzMywgNiwgCisgICAgMSwgMjIxLCAxOTYsIDIsIDI0OCwgMSwgMzMsIDQsIDEsIDIyMSwgMTk2LCAyLCAyNDgsIDEsIDMzLCA2LCAxLCAyMTAsIDc1LCAKKyAgICAyLCAyNDgsIDEsIDMzLCA0LCAxLCAyMTAsIDc1LCAyLCAyNDgsIDEsIDMzLCA2LCAxLCAyMTAsIDk1LCAyLCAyNDgsIDEsIAorICAgIDMzLCA0LCAxLCAyMTAsIDk1LCAyLCAyNDgsIDEsIDMzLCA2LCAxLCAyNTUsIDIwLCAyNDYsIDM2LCAzMywgNCwgMSwgMjU1LCAKKyAgICAyMCwgMjQ2LCAzNiwgMzMsIDYsIDEsIDI0MCwgMTU0LCAyLCAyMzEsIDIzMiwgMzMsIDQsIDEsIDI0MCwgMTU0LCAyLCAyMzEsIAorICAgIDIzMiwgMzMsIDYsIDEsIDI0MCwgMTU0LCAyLCAyNDgsIDEsIDMzLCA0LCAxLCAyNDAsIDE1NCwgMiwgMjQ4LCAxLCAzMywgNiwgCisgICAgMSwgMTQ0LCAyLCAyNDgsIDEsIDMzLCA0LCAxLCAxNDQsIDIsIDI0OCwgMSwgMzMsIDYsIDEsIDI1MiwgMTM0LCA3NiwgMzMsIAorICAgIDQsIDEsIDI1MiwgMTM0LCA3NiwgMzMsIDYsIDEsIDI1MiwgMTM0LCAxNDQsIDIsIDI0OCwgMSwgMzMsIDQsIDEsIDI1MiwgCisgICAgMTM0LCAxNDQsIDIsIDI0OCwgMSwgMzMsIDYsIDEsIDE2MCwgMiwgMjQ4LCAxLCAzMywgNCwgMSwgMTYwLCAyLCAyNDgsIDEsIAorICAgIDMzLCA2LCAxLCAxMDQsIDIsIDIzMSwgMjMyLCAzMywgNCwgMSwgMTA0LCAyLCAyMzEsIDIzMiwgMzMsIDYsIDEsIDEwNCwgMiwgCisgICAgMjQ4LCAxLCAzMywgNCwgMSwgMTA0LCAyLCAyNDgsIDEsIDMzLCA2LCAxLCAxMDQsIDIsIDUyLCAxNDIsIDMzLCA0LCAxLCAKKyAgICAxMDQsIDIsIDUyLCAxNDIsIDMzLCA2LCAxLCAyNTAsIDEzMiwgMiwgMjQ4LCAxLCAzMywgNCwgMSwgMjUwLCAxMzIsIDIsIAorICAgIDI0OCwgMSwgMzMsIDYsIDEsIDI0MiwgMjM3LCAyLCAyNDgsIDM5LCAzMywgNCwgMSwgMjQyLCAyMzcsIDIsIDI0OCwgMzksIAorICAgIDMzLCA2LCAxLCAyMTEsIDI4LCAyLCAyNDgsIDEsIDMzLCA0LCAxLCAyMTEsIDI4LCAyLCAyNDgsIDEsIDMzLCA2LCAxLCAKKyAgICAyNDIsIDIzNywgMiwgMjE4LCAxMDMsIDIyLCAxMDMsIDMzLCA0LCAxLCAyNDIsIDIzNywgMiwgMjE4LCAxMDMsIDIyLCAxMDMsIAorICAgIDMzLCA2LCAxLCAyNDIsIDQ5LCAyLCAxMDMsIDMzLCA0LCAxLCAyNDIsIDQ5LCAyLCAxMDMsIDMzLCA2LCAxLCAyNDIsIDQ5LCAKKyAgICAyLCA5MSwgMzMsIDQsIDEsIDI0MiwgNDksIDIsIDkxLCAzMywgNiwgMSwgMjM0LCAxNCwgMjQ4LCA5MCwgMzMsIDQsIDEsIAorICAgIDIzNCwgMTQsIDI0OCwgOTAsIDMzLCA2LCAxLCAyMzQsIDE0LCAyNDcsIDE2MiwgMzMsIDQsIDEsIDIzNCwgMTQsIDI0NywgCisgICAgMTYyLCAzMywgNiwgMSwgMjM0LCAxNCwgMjEwLCAyNywgMzMsIDQsIDEsIDIzNCwgMTQsIDIxMCwgMjcsIDMzLCA2LCAxLCAKKyAgICAyMzQsIDE0LCAyNDYsIDMwLCAzMywgNCwgMSwgMjM0LCAxNCwgMjQ2LCAzMCwgMzMsIDYsIDEsIDIzNCwgMTQsIDIzMiwgCisgICAgMTg3LCAzMywgNCwgMSwgMjM0LCAxNCwgMjMyLCAxODcsIDMzLCA2LCAxLCAyMzQsIDE0LCAyMjgsIDE3OCwgMzMsIDQsIDEsIAorICAgIDIzNCwgMTQsIDIyOCwgMTc4LCAzMywgNiwgMSwgMjM0LCAxNCwgMjE5LCAxMDksIDMzLCA0LCAxLCAyMzQsIDE0LCAyMTksIAorICAgIDEwOSwgMzMsIDYsIDEsIDIzNCwgMTQsIDIxNiwgNjAsIDMzLCA0LCAxLCAyMzQsIDE0LCAyMTYsIDYwLCAzMywgNiwgMSwgCisgICAgMjIzLCA0OSwgMjEwLCA5NCwgMzMsIDQsIDEsIDIyMywgNDksIDIxMCwgOTQsIDMzLCA2LCAxLCAyNDUsIDE3NSwgMiwgMTAzLCAKKyAgICAzMywgNCwgMSwgMjQ1LCAxNzUsIDIsIDEwMywgMzMsIDYsIDEsIDIzMiwgMjU0LCAzMywgNCwgMSwgMjMyLCAyNTQsIDMzLCAKKyAgICA2LCAxLCAyMjMsIDM5LCAzMywgNCwgMSwgMjIzLCAzOSwgMzMsIDYsIDEsIDIxMSwgOTIsIDMzLCA0LCAxLCAyMTEsIDkyLCAKKyAgICAzMywgNiwgMSwgMjI0LCA4OCwgMzMsIDQsIDEsIDIyNCwgODgsIDMzLCA2LCAxLCAyMTIsIDIyLCAzMywgNCwgMSwgMjEyLCAKKyAgICAyMiwgMzMsIDYsIDEsIDI1NCwgMTY2LCAxNzYsIDMzLCA0LCAxLCAyNTQsIDE2NiwgMTc2LCAzMywgNiwgMSwgMjQ1LCAxNzUsIAorICAgIDIsIDIzMCwgMjI0LCAxMDMsIDMzLCA0LCAxLCAyNDUsIDE3NSwgMiwgMjMwLCAyMjQsIDEwMywgMzMsIDYsIDEsIDI0NSwgCisgICAgMTUxLCAyLCAyMzAsIDIyNCwgMTAzLCAzMywgNCwgMSwgMjQ1LCAxNTEsIDIsIDIzMCwgMjI0LCAxMDMsIDMzLCA2LCAxLCAKKyAgICAyMjUsIDIyMiwgMiwgMjQ4LCAzOSwgMzMsIDQsIDEsIDIyNSwgMjIyLCAyLCAyNDgsIDM5LCAzMywgNiwgMSwgMjIwLCAzNCwgCisgICAgMiwgMjQ4LCAzOSwgMzMsIDQsIDEsIDIyMCwgMzQsIDIsIDI0OCwgMzksIDE1MCwgNiwgMSwgMjUzLCAxNjQsIDE1MCwgNiwgCisgICAgMSwgMjUyLCAzOSwgMTUwLCA2LCAxLCAyNDIsIDIwMywgMTUwLCA2LCAxLCAyNDgsIDIyMSwgMTUwLCA2LCAxLCAyNDUsIAorICAgIDIxMywgMTUwLCA2LCAxLCAyMTAsIDExNiwgMTUwLCA2LCAxLCAyNDUsIDE5NywgMTUwLCA2LCAxLCAyNDUsIDY1LCAxNTAsIAorICAgIDYsIDEsIDExMSwgMTUwLCA2LCAxLCAyMTAsIDc0LCAxNTAsIDYsIDEsIDIzNSwgMjI3LCAxNTAsIDYsIDEsIDIzMiwgMTkwLCAKKyAgICAxNTAsIDYsIDEsIDIxMSwgMTYwLCAxNTAsIDYsIDEsIDI1MSwgMzMsIDE1MCwgNiwgMSwgMjM0LCAxNjUsIDE1MCwgNiwgMSwgCisgICAgMjQxLCA2OCwgMTUwLCA2LCAxLCAyMzUsIDE0MSwgMTUwLCA2LCAxLCAyNDIsIDI0NiwgMTUwLCA2LCAxLCAyNTAsIDEyNiwgCisgICAgMTUwLCA2LCAxLCAyMzEsIDU4LCAxNTAsIDYsIDEsIDIxMSwgOCwgMTUwLCA2LCAxLCAyMjgsIDM5LCAxNTAsIDYsIDEsIAorICAgIDIyMCwgMTAyLCAxNTAsIDYsIDEsIDIxMywgMTM4LCAxNTAsIDYsIDEsIDI1MCwgMTU3LCAxNTAsIDYsIDEsIDIyNSwgMjA1LCAKKyAgICAxNTAsIDYsIDEsIDIzNSwgMTEwLCAxNTAsIDYsIDEsIDIwNSwgMTUwLCA2LCAxLCAyMjEsIDE2MSwgMTUwLCA2LCAxLCAyMTMsIAorICAgIDE3OSwgMTUwLCA2LCAxLCAyMTYsIDYyLCAxNTAsIDYsIDEsIDIyMywgOTUsIDE1MCwgNiwgMSwgMjQ5LCAyMzgsIDE1MCwgNiwgCisgICAgMSwgMjEwLCAyNDksIDE1MCwgNiwgMSwgMjI1LCA0NiwgMTUwLCA2LCAxLCAyMzQsIDE3NiwgMTUwLCA2LCAxLCAyMjYsIAorICAgIDIyMiwgMTUwLCA2LCAxLCAyNDQsIDE0MiwgMTUwLCA1OCwgMSwgNDMsIDE2MywgMjIyLCAyMzMsIDE1MCwgMjU0LCA1NywgCisgICAgMTUwLCAyNDUsIDE1NCwgNzgsIDE1MCwgMjQ1LCAzMSwgNzgsIDE1MCwgMjQ5LCAyMTksIDE1MCwgMjI0LCAxMywgNzgsIAorICAgIDE1MCwgMjU1LCAyMSwgNzgsIDE1MCwgNCwgMSwgMjUzLCAxNjQsIDE1MCwgNCwgMSwgMjUyLCAzOSwgMTUwLCA0LCAxLCAKKyAgICAyNDIsIDIwMywgMTUwLCA0LCAxLCAyNDgsIDIyMSwgMTUwLCA0LCAxLCAyNDUsIDIxMywgMTUwLCA0LCAxLCAyMTAsIDExNiwgCisgICAgMTUwLCA0LCAxLCAyNDUsIDE5NywgMTUwLCA0LCAxLCAyNDUsIDY1LCAxNTAsIDQsIDEsIDExMSwgMTUwLCA0LCAxLCAyMTAsIAorICAgIDc0LCAxNTAsIDQsIDEsIDIzNSwgMjI3LCAxNTAsIDQsIDEsIDIzMiwgMTkwLCAxNTAsIDQsIDEsIDIxMSwgMTYwLCAxNTAsIAorICAgIDQsIDEsIDI1MSwgMzMsIDE1MCwgNCwgMSwgMjM0LCAxNjUsIDE1MCwgNCwgMSwgMjQxLCA2OCwgMTUwLCA0LCAxLCAyMzUsIAorICAgIDE0MSwgMTUwLCA0LCAxLCAyNDIsIDI0NiwgMTUwLCA0LCAxLCAyNTAsIDEyNiwgMTUwLCA0LCAxLCAyMzEsIDU4LCAxNTAsIAorICAgIDQsIDEsIDIxMSwgOCwgMTUwLCA0LCAxLCAyMjgsIDM5LCAxNTAsIDQsIDEsIDIyMCwgMTAyLCAxNTAsIDQsIDEsIDIxMywgCisgICAgMTM4LCAxNTAsIDQsIDEsIDI1MCwgMTU3LCAxNTAsIDQsIDEsIDIyNSwgMjA1LCAxNTAsIDQsIDEsIDIzNSwgMTEwLCAxNTAsIAorICAgIDQsIDEsIDIwNSwgMTUwLCA0LCAxLCAyMjEsIDE2MSwgMTUwLCA0LCAxLCAyMTMsIDE3OSwgMTUwLCA0LCAxLCAyMTYsIDYyLCAKKyAgICAxNTAsIDQsIDEsIDIyMywgOTUsIDE1MCwgNCwgMSwgMjQ5LCAyMzgsIDE1MCwgNCwgMSwgMjEwLCAyNDksIDE1MCwgNCwgMSwgCisgICAgMjI1LCA0NiwgMTUwLCA0LCAxLCAyMzQsIDE3NiwgMTUwLCA0LCAxLCAyMjYsIDIyMiwgMTUwLCA0LCAxLCAyNDQsIDE0MiwgCisgICAgMTUwLCA0LCAyNywgMjQ1LCAyMTQsIDIxMCwgMjQ5LCAxNTAsIDI0MywgMjI5LCAyMTgsIDEyOSwgMTUwLCAyNDAsIDE2OCwgCisgICAgMTUwLCAyNDYsIDk1LCA1MCwgOTQsIDI1NSwgMTUsIDI0NSwgNTcsIDk0LCAyNTUsIDE1LCAyMjEsIDE2MiwgOTQsIDI1NSwgCisgICAgMTUsIDIyMCwgODgsIDk0LCAyNTUsIDE1LCAyMTAsIDEwNCwgMjI0LCA3MSwgOTQsIDI1NSwgMTUsIDIxMCwgMTA0LCAyNDMsIAorICAgIDEyNSwgOTQsIDI1NSwgMTUsIDIxNiwgNzUsIDk0LCAyNTUsIDE1LCAyMjMsIDQ3LCA5NCwgMjU1LCAxNSwgMjEwLCAxMDMsIAorICAgIDk0LCAyNTUsIDE1LCAyMjUsIDI0NSwgOTQsIDI1NSwgMTUsIDIxMSwgMjAsIDk0LCAyNTUsIDE1LCAyMTYsIDIxNCwgOTQsIAorICAgIDI1NSwgMTUsIDI0MywgNDEsIDk0LCAyNTUsIDE1LCAyNDMsIDQyLCAyMzAsIDY5LCA5NCwgMjU1LCAxNSwgMjQzLCAzOSwgCisgICAgOTQsIDI1NSwgMTUsIDIyNCwgNzIsIDIyNiwgMTYsIDk0LCAyNTUsIDE1LCAyMTYsIDI1MywgMjQzLCA1NiwgOTQsIDI1NSwgCisgICAgMTUsIDIyNSwgMjI2LCA5NCwgMjU1LCAxNSwgMjUzLCAyMDAsIDI0MiwgNDEsIDk0LCAyNTUsIDE1LCAyMzAsIDc5LCA5NCwgCisgICAgMjU1LCAxNSwgMjMxLCAyMDgsIDk0LCAyNTUsIDE1LCAyMzEsIDQ5LCA5NCwgMjU1LCAxNSwgMjMxLCA1MCwgMjM0LCAxNzcsIAorICAgIDk0LCAyNTUsIDE1LCAyNDgsIDE2MywgOTQsIDI1NSwgMTUsIDIyNCwgODMsIDk0LCAyNTUsIDE1LCAyMTYsIDI1MywgMjI0LCAKKyAgICA2NywgOTQsIDI1NSwgMTUsIDIxMSwgMzAsIDI1MiwgNDAsIDIxMCwgMjMwLCA5NCwgMjU1LCAxNSwgMjI2LCAyMDcsIDk0LCAKKyAgICAyNTUsIDE1LCAyMzYsIDE5LCA5NCwgMjU1LCAxNSwgMjQ4LCA3MCwgOTQsIDI1NSwgMTUsIDIxMCwgMzMsIDk0LCAxNjQsIAorICAgIDIzMSwgMTQzLCAyNTAsIDM1LCA5NCwgMjI1LCAxMSwgMjIwLCAzNiwgOTQsIDIyNSwgMTEsIDI0MSwgMjUwLCAyMjEsIDE2MiwgCisgICAgOTQsIDIyNSwgMTEsIDI0MSwgMjUwLCAyMjUsIDIzOSwgOTQsIDIyNSwgMTEsIDI0MSwgMjUwLCAyMjQsIDc2LCA5NCwgMjI1LCAKKyAgICAxMSwgMjQxLCAxNTgsIDk0LCAyMjUsIDExLCAyMTUsIDE3NiwgOTQsIDIyNSwgMTEsIDIyMSwgMTYyLCA5NCwgMjI1LCAxMSwgCisgICAgMjI1LCAyMzksIDk0LCAyMjUsIDExLCAyMjQsIDc2LCA5NCwgMjI1LCAxMSwgMjQxLCA2MSwgOTQsIDIyNSwgMTEsIDI0MSwgCisgICAgNjIsIDI0MSwgMjUyLCAzMSwgMjE0LCAzLCA5NCwgMjI1LCAxMSwgMjI0LCAxNywgOTQsIDIyNSwgMTEsIDI0OCwgMjA4LCAKKyAgICAxNzcsIDIzMSwgMTcxLCA5NCwgMjI1LCAxMSwgMjMxLCAzOCwgOTQsIDIyNCwgMTQxLCAyMzEsIDE2OCwgOTQsIDIyNSwgMTEsIAorICAgIDIyMywgMTY5LCA5NCwgMjI0LCAxNDEsIDIyNSwgMjQ3LCA5NCwgMjI1LCAxMSwgMjIwLCAyMSwgMjQ3LCAxMjAsIDk0LCAKKyAgICAyMjUsIDExLCAyMTksIDE1OSwgMjQ3LCAxMjAsIDk0LCAyMjQsIDE0MSwgMjE5LCA1MywgMjI1LCAyNDEsIDk0LCAxNjQsIAorICAgIDIxNCwgMTYwLCAyNDcsIDEyMCwgOTQsIDE2NCwgMjMyLCAxMDgsIDI0NywgMTIwLCA5NCwgMjI0LCAxNDEsIDIyNywgMTk1LCAKKyAgICAyNDIsIDQwLCA5NCwgMjI1LCAxMSwgMjI0LCA3NywgMjI0LCA3MSwgOTQsIDEsIDI1NCwgMTcwLCA5NCwgMSwgMjUyLCAyOCwgCisgICAgOTQsIDEsIDI0MiwgMjAxLCA5NCwgMSwgMjQ4LCAxODksIDk0LCAxLCAyNDEsIDIzOCwgOTQsIDEsIDIxNCwgMywgOTQsIDEsIAorICAgIDIxMCwgOTcsIDk0LCAxLCAyNDEsIDE5NywgOTQsIDEsIDIxNiwgMjMwLCA5NCwgMSwgMjEwLCAyMzMsIDk0LCAxLCA0MCwgCisgICAgMjM0LCAyNTAsIDk0LCAxLCAyMzQsIDI1MCwgOTQsIDEsIDIzMywgOTQsIDk0LCAxLCA0MCwgMjMxLCA2NSwgOTQsIDEsIAorICAgIDIzMSwgNjUsIDk0LCAxLCA0MCwgMjI3LCAxOTQsIDk0LCAxLCAyMjcsIDE5NCwgOTQsIDEsIDIyMSwgMjQ5LCA5NCwgMSwgCisgICAgMjUzLCAxNjIsIDk0LCAxLCA0MCwgMjI1LCAyMjEsIDk0LCAxLCAyMjUsIDIyMSwgOTQsIDEsIDQwLCAyMTUsIDE3OSwgOTQsIAorICAgIDEsIDIxNSwgMTc5LCA5NCwgMSwgMjI0LCAzOSwgOTQsIDEsIDIyMywgNjcsIDk0LCAxLCAyMjAsIDIwLCA5NCwgMSwgMjE3LCAKKyAgICAzOCwgOTQsIDI3LCAyMTEsIDYsIDUyLCAyMTQsIDMsIDk0LCAyNywgMjExLCA2LCAyMTQsIDQsIDIxMCwgMjMzLCA5NCwgMjcsIAorICAgIDIxMSwgNiwgNTIsIDIxMCwgMjMzLCA5NCwgMjI0LCAxNDEsIDI0MywgNDEsIDk0LCAyMjQsIDE0MSwgMjQzLCAzOSwgMTAsIAorICAgIDU0LCA1MCwgMTAsIDUsIDIyMSwgMjQyLCAxMCwgMjQ0LCAzMCwgMjMxLCAxNTQsIDEwLCA1LCAyMjIsIDIzLCAxMCwgNSwgCisgICAgMjIxLCAyNDUsIDI1NCwgMzcsIDI0OSwgMTA5LCAyMjIsIDE5MywgMjU0LCAzNywgMjQ0LCA0LCAyMjIsIDE5MywgMTAsIAorICAgIDIyMywgMTM0LCAyNTQsIDM3LCAyMjUsIDE4MywgMjMwLCAxOTMsIDUwLCAyNTQsIDM3LCAyMjUsIDE4MywgMjE2LCAyNDgsIAorICAgIDIxNiwgMTQ4LCA1MCwgMjU0LCAyMjEsIDUwLCAxMCwgMjQ5LCAyMTksIDEwLCAyNDgsIDE1MCwgMjIwLCAxMzcsIDEwLCAKKyAgICAyMjUsIDEzLCAyMTMsIDI0MSwgNTAsIDEwLCA1LCAyMzAsIDE3NCwgMTAsIDUsIDIyMiwgMywgMjU0LCAxNzIsIDIxMiwgNDUsIAorICAgIDEwLCA1LCAyNTQsIDE3MiwgMjUzLCAyMjEsIDEwLCA1LCAyMjMsIDE2NywgMjU0LCAxNzEsIDEwLCA1LCAyMjMsIDE3NSwgCisgICAgMjU0LCAxNTIsIDI1NCwgMTA0LCAxMCwgNSwgMjE3LCA3MCwgMTAsIDQsIDEyNSwgMjE3LCA4MCwgMTAsIDQsIDEyNSwgMjcsIAorICAgIDExMiwgMiwgMjMzLCAxMDMsIDIsIDIxMSwgNDMsIDEwLCA0LCAxMjUsIDIxMCwgMTA4LCAxMCwgNCwgMjQ0LCAxNjUsIDEwLCAKKyAgICA0LCAyNDgsIDE4NCwgMTAsIDQsIDIzNCwgMjA1LCAxMCwgMjIwLCAxNTAsIDEwLCAyMTUsIDIxMSwgNTksIDIyNCwgMTQxLCAKKyAgICA3OCwgMTAsIDIyNCwgMTMsIDc4LCAxMCwgMSwgMjM0LCAyMDksIDIxMSwgNDMsIDEwLCAxLCAyNDIsIDE5LCAxMCwgMSwgCisgICAgMTEyLCAyLCAyMzEsIDIyOCwgNDgsIDEwLCAxLCAxMTIsIDIsIDIwMiwgNDgsIDEwLCAxLCAyMTIsIDMxLCAyLCAyMDIsIDQ4LCAKKyAgICAxMCwgMSwgMTEyLCAyLCAyMDIsIDUxLCAxMCwgMSwgNzksIDIsIDIwMiwgNDgsIDEwLCAxLCAyNTQsIDE3MCwgMTAsIDEsIAorICAgIDI1MiwgNTQsIDEwLCAxLCAyMTcsIDgsIDIzMSwgMTY0LCAxMCwgMSwgMjE3LCA3LCAxMCwgMSwgMjE2LCAxOTIsIDEwLCAxLCAKKyAgICAyMzUsIDEyMywgMTAsIDEsIDI0MiwgMzcsIDEwLCAxLCAyMzQsIDEyOSwgMTAsIDEsIDI0OCwgMTk1LCAxMCwgMSwgMjE2LCAKKyAgICAyMDIsIDEwLCAxLCAyMjMsIDk1LCAxMCwgMSwgMjEwLCAxMDgsIDEwLCAxLCAyMjEsIDE2NiwgMTAsIDEsIDIyMCwgNTksIAorICAgIDEwLCAxLCAyMjIsIDI2LCAxMCwgMSwgMjQ4LCAyMTYsIDEwLCAxLCAyMTcsIDgwLCAxMCwgMSwgMjEwLCAxMTEsIDEwLCAxLCAKKyAgICAyNTQsIDE5NiwgMTAsIDEsIDI0MiwgMjQ0LCAxMCwgMSwgMjM0LCAxNzUsIDIsIDExMywgMTcwLCA0OCwgMTAsIDEsIDIzNCwgCisgICAgMTc1LCAyLCAxMzQsIDE3MCwgNTEsIDEwLCAxLCAyNDQsIDE2OCwgNzksIDIsIDIzNSwgMTkzLCAyMTQsIDEwNSwgMTAsIDEsIAorICAgIDI0NCwgMTY4LCA3OSwgMiwgMTEzLCAxNzAsIDQ4LCAxMCwgMSwgMjQ0LCAxNjgsIDc5LCAyLCAxMzQsIDE3MCwgNDgsIDEwLCAKKyAgICAyMTcsIDQzLCAxMCwgMSwgMjQ0LCAxNDIsIDEwLCAxLCAyMjQsIDgxLCAxMCwgMSwgMjM0LCAyNTAsIDEwLCAxLCAyMzMsIAorICAgIDEwMiwgMTAsIDEsIDIzMSwgNzgsIDEwLCAxLCAyMjgsIDYyLCAxMCwgMSwgMjQxLCAyMTgsIDEwLCAxLCAyMTIsIDMwLCAxMCwgCisgICAgMSwgMTEyLCAyMzEsIDE5MiwgMTAsIDEsIDIxMSwgNDMsIDEwLCAyNDQsIDE2MywgMTAsIDI0OCwgMTgyLCAxMCwgMjM0LCAKKyAgICAyMDMsIDEwLCAyNDQsIDE2NSwgMTAsIDI0OCwgMTg0LCAxMCwgMjM0LCAyMDUsIDEwLCAyMjAsIDkzLCAxMCwgMjE4LCA0NSwgCisgICAgMTAsIDIzMSwgMjI2LCA0OCwgMTAsIDIwMiwgNDgsIDEwLCAyMDIsIDUxLCAxMCwgMjE4LCA2NSwgMjU0LCAxNzAsIDEwLCAKKyAgICAyMzUsIDE5MywgMjQ4LCAxODQsIDEwLCAxNjQsIDIyOCwgNjMsIDI0MiwgMjE4LCAxMCwgMjA5LCAyNTUsIDEwLCAyNSwgNSwgCisgICAgNCwgMjE0LCAxMDYsIDQ4LCAxMCwgMjUsIDUsIDIzNSwgMTkzLCA0LCAyMTQsIDEwNiwgNDgsIDEwLCAyNSwgNSwgNTksIDUxLCAKKyAgICAxMCwgMjIzLCA0OSwgMjQ4LCAxODQsIDEwLCAyNDQsIDE2NiwgMiwgMTEzLCAyNDcsIDExOCwgMTAsIDIxMiwgMzIsIDIwMiwgCisgICAgNTEsIDI1NCwgMzcsIDIxLCAyMTAsIDg2LCAyNTQsIDM3LCAyMSwgMTEwLCAyNTQsIDM3LCAyMSwgMTA1LCAyNTQsIDM3LCAKKyAgICAyMSwgMTU4LCAyNTQsIDM3LCAyMSwgMTYxLCAyNTQsIDM3LCAyMSwgMTg5LCAyNTQsIDM3LCAyMSwgMTk0LCAyNTQsIDM3LCAKKyAgICAyMSwgMTk4LCAyNTQsIDM3LCAyMSwgMTk1LCAyNTQsIDM3LCAyMSwgMjAwLCAxMCwgMjI1LCAxODIsIDUwLCAxMCwgMjQ4LCAKKyAgICA4MywgMjIwLCAxMzcsIDEwLCAyMTYsIDE0NiwgMjIwLCAxMzcsIDEwLCAyNDQsIDgxLCAyMjUsIDksIDIxOCwgMTU2LCAxMCwgCisgICAgMSwgMjQ3LCAxMTksIDI1MiwgNTQsIDEwLCAxLCAyNDcsIDExOSwgMjI0LCA4MSwgMTAsIDEsIDIxOCwgMjMsIDI1NCwgMTcwLCAKKyAgICAxMCwgMSwgMTEyLCAyMTIsIDQ2LCAxMCwgMSwgMTEyLCAyLCAyMTIsIDMyLCAyMDIsIDQ4LCAxMCwgMSwgMTEyLCAyLCAyMTIsIAorICAgIDMyLCAyMDIsIDUxLCAxMCwgMSwgMTI1LCAyNDIsIDE5LCAxMCwgMSwgMTI1LCAyMDIsIDI1NCwgMTcwLCAxMCwgMSwgMTI1LCAKKyAgICAyMDIsIDIxMiwgMzAsIDEwLCAxLCAxMDQsIDIsIDIwMiwgNDgsIDEwLCAxLCAxMjUsIDIwMiwgMjExLCA0MywgMTAsIDEsIAorICAgIDIxNSwgMTQ4LCAxMCwgMSwgMjE1LCAxNDYsIDEwLCAxLCAyNTIsIDY0LCAxMCwgMSwgMjE3LCA4LCAyLCAyMjIsIDIzMywgCisgICAgMTAsIDEsIDIxNywgOCwgMiwgMTM0LCAxNzAsIDc3LCAyNDYsIDEwMywgMTAsIDEsIDIyNSwgMjA1LCAxMCwgMSwgMjE3LCA1LCAKKyAgICAxMCwgMSwgMjUyLCA1MiwgMTAsIDEsIDEyMiwgMiwgMjAyLCA0OCwgMTAsIDEsIDEyMiwgMiwgMTEzLCAxNzAsIDY3LCA0OCwgCisgICAgMTAsIDEsIDIyNywgMTUzLCAxMCwgMSwgMjQ2LCA0MywgMTAsIDEsIDEyMiwgMiwgMTM0LCAxNzAsIDQ4LCAxMCwgMSwgMjE3LCAKKyAgICAyNiwgMTAsIDEsIDIxNywgMjQsIDEwLCAxLCAyNDgsIDEzMCwgMTAsIDEsIDI0OCwgMTk2LCAyLCAyMjIsIDIzMywgMTAsIDEsIAorICAgIDI0OCwgMTk2LCAyLCA1OSwgNTEsIDEwLCAxLCAyNDgsIDE5NiwgMiwgNTksIDI1MiwgNDMsIDIyLCA0LCAyMTcsIDgwLCAxMCwgCisgICAgMSwgMjQ4LCAyMDEsIDEwLCAxLCAyNDgsIDEzMiwgMTAsIDEsIDI0NiwgNzAsIDEwLCAxLCAyNDgsIDE5NiwgMiwgMTM0LCAKKyAgICAxNzAsIDc3LCAyNDYsIDEwMywgMTAsIDEsIDI0OCwgMTk2LCAyLCAyNDQsIDExLCAxNzAsIDQ4LCAxMCwgMSwgMjIyLCAxNzEsIAorICAgIDEwLCAxLCAyMjMsIDk2LCAyLCA0LCAyMTQsIDEwNSwgMTAsIDEsIDIyMywgOTYsIDIsIDIyMiwgMjMzLCAxMCwgMSwgMjIzLCAKKyAgICA5NiwgMiwgNTksIDUxLCAxMCwgMSwgMjIzLCA5NiwgMiwgNCwgMjE0LCAxMDYsIDUxLCAxMCwgMSwgMjIzLCA5NiwgMiwgNTksIAorICAgIDI1MiwgNDMsIDIyLCA1OSwgNDgsIDEwLCAxLCAyMjMsIDk2LCAyLCAxMTMsIDE3MCwgNDgsIDEwLCAxLCAyMzUsIDEyMCwgCisgICAgMTAsIDEsIDIyMywgOTYsIDIsIDI0NCwgMTEsIDE3MCwgNDgsIDEwLCAxLCAyMjEsIDE2NywgMiwgNTksIDI1MiwgNDMsIDIyLCAKKyAgICA1OSwgNDgsIDEwLCAxLCAyMjEsIDE2NywgMiwgMTM0LCAxNzAsIDUxLCAxMCwgMSwgMjIxLCAxNjcsIDIsIDEzNCwgMTcwLCAKKyAgICAyNTIsIDQzLCAyMiwgMTM0LCAxNzAsIDQ4LCAxMCwgMSwgMjIyLCAyNywgMiwgMTEzLCAxNzAsIDUxLCAxMCwgMSwgMjIyLCAKKyAgICAyNywgMiwgMTM0LCAxNzAsIDQ4LCAxMCwgMSwgMjE3LCA4MSwgMiwgMTM0LCAxNzAsIDQ4LCAxMCwgMSwgMjU0LCAxOTcsIDIsIAorICAgIDEzNCwgMTcwLCA0OCwgMTAsIDEsIDI0NywgMTE5LCAyNDQsIDE0MiwgMTAsIDEsIDI0NCwgMTQzLCAyLCA1OSwgMjMwLCAKKyAgICAxMDksIDUxLCAxMCwgMSwgMjQ0LCAxNDMsIDIsIDU5LCA1MSwgMTAsIDEsIDIxMywgMjQ4LCAxMCwgMSwgMjQ0LCAxNDMsIDIsIAorICAgIDEzNCwgMTcwLCA1MSwgMTAsIDEsIDIyNSwgMjAzLCAxMCwgMSwgMjI0LCA4MiwgMiwgNTksIDQ4LCAxMCwgMSwgMjI0LCA4MiwgCisgICAgMiwgMTM0LCAxNzAsIDQ4LCAxMCwgMSwgMjM0LCAxNzQsIDEwLCAxLCAyMTcsIDI1MCwgMjM0LCAyNTAsIDEwLCAxLCAyMzQsIAorICAgIDI1MSwgMiwgMjIyLCAyMzMsIDEwLCAxLCAyMzQsIDI1MSwgMiwgNTksIDQ4LCAxMCwgMSwgMjI5LCA3OSwgMTAsIDEsIDIzNCwgCisgICAgMjUxLCAyLCAxMzQsIDE3MCwgNTEsIDEwLCAxLCAyNDMsIDEyMiwgMTAsIDEsIDI0MywgMTIzLCAyLCAyMjIsIDIzMywgMTAsIAorICAgIDEsIDIyOSwgMiwgMTAsIDEsIDI0MywgMTIzLCAyLCAxMTMsIDE3MCwgNTEsIDEwLCAxLCAyNDIsIDEwMSwgMTAsIDEsIDI0MywgCisgICAgMTIzLCAyLCAxMzQsIDE3MCwgNDgsIDEwLCAxLCAyMzMsIDEwMywgMiwgNCwgMjE0LCAxMDUsIDEwLCAxLCAyMzMsIDEwMywgCisgICAgMiwgNTksIDQ4LCAxMCwgMSwgMjMzLCAxMDMsIDIsIDEzNCwgMTcwLCA0OCwgMTAsIDEsIDIzMywgMTAzLCAyLCAxMzQsIAorICAgIDE3MCwgNTEsIDEwLCAxLCAyMjgsIDYzLCAyLCA1OSwgNTEsIDEwLCAxLCAyMjgsIDYzLCAyNDIsIDIxOCwgMTAsIDEsIDIyMiwgCisgICAgMjE0LCAxMCwgMSwgMjI4LCA2MywgMiwgMjIyLCAyMzMsIDEwLCAxLCAyMjgsIDYzLCAyLCAxMzQsIDE3MCwgNDgsIDEwLCAxLCAKKyAgICAyNDEsIDIxOSwgMjQ3LCAxNDEsIDEwLCAxLCAyMTcsIDI3LCAyLCA1OSwgNDgsIDEwLCAxLCAyNDEsIDIxOSwgMiwgNzksIAorICAgIDQ4LCAxMCwgMSwgMjQxLCAyMTksIDI0MiwgMTcxLCAxMCwgMSwgMjQxLCAyMTksIDI0MiwgMTcyLCAyLCAyMDIsIDQ4LCAxMCwgCisgICAgMSwgMjE3LCA4LCAyMzEsIDE2NSwgMjQyLCAxNzEsIDEwLCAxLCAyMTIsIDMxLCAyLCAyMjIsIDIzMywgMTAsIDEsIDIzNCwgCisgICAgNzMsIDIyNiwgMjM0LCAxMCwgMSwgMjI2LCAyMzQsIDEwLCAxLCA3MCwgMTAsIDEsIDIxMCwgMjEyLCAxMCwgMSwgMjM0LCAKKyAgICA3MywgMjEwLCAyMTIsIDEwLCAxLCAyMTIsIDMxLCAyLCAxMTMsIDE3MCwgNDgsIDEwLCAxLCAyMTMsIDI1NSwgMTAsIDEsIAorICAgIDI0NCwgMTY4LCAyMTEsIDQzLCAxMCwgMSwgNzksIDIsIDIxNywgNzcsIDEwLCAxLCA3OSwgMiwgNCwgMjE0LCAxMDUsIDEwLCAKKyAgICAxLCAyMTIsIDMxLCAyLCA1OSwgNDgsIDEwLCAxLCA3NSwgMTAsIDEsIDc5LCAyLCAxMzQsIDE3MCwgNTEsIDEwLCAxLCA3OSwgCisgICAgMjUyLCAxMzIsIDEwLCAxLCA3OSwgMjUyLCAxMzMsIDIsIDIwMiwgNDgsIDEwLCAyNDMsIDIyOSwgMjE4LCAxMjksIDEwLCAxLCAKKyAgICAyNTQsIDI0MywgMTAsIDQsIDEyNSwgMjcsIDIyMiwgMjcsIDIsIDIzMywgMTAzLCAyLCAxMTIsIDIzMSwgMTkyLCAxMCwgNCwgCisgICAgMTI1LCAyNywgMjI0LCA4MiwgMiwgMjMzLCAxMDMsIDIsIDExMiwgMjMxLCAxOTIsIDEwLCA0LCAxMjUsIDY2LCA2NSwgMTcsIAorICAgIDEwLCA0LCAxMjUsIDIzMywgMTAzLCAyNTQsIDE3MCwgMTAsIDQsIDEyNSwgMjM1LCAxMjMsIDEwLCA0LCAxMjUsIDEzNCwgCisgICAgMjQ3LCAxMTgsIDEwLCA0LCAxMjUsIDIyMSwgMTY2LCAxMCwgMjQ1LCAxNDMsIDY0LCAyNTMsIDE2NiwgMTAsIDIxOCwgMTUyLCAKKyAgICA2NCwgMjIyLCAxMzgsIDI0NSwgMTc1LCAyNDEsIDE1NSwgMTAsIDQsIDEyNSwgMjIyLCAxODMsIDIxMCwgODYsIDEwLCA0LCAKKyAgICAxMjUsIDIxNCwgMTU5LCAyMjMsIDExNSwgMjEwLCA4NiwgMTAsIDQsIDEyNSwgMjQ3LCAxMTksIDI0MSwgMjM2LCA2NCwgCisgICAgMjM0LCAxMjksIDEwLCA0LCAxMjUsIDY2LCA1MywgMTcsIDEwLCA0LCAxMjEsIDIyMSwgMTY2LCAxMCwgNCwgMTI1LCAyMzEsIAorICAgIDIyNywgMTAsIDQsIDIxMiwgMzAsIDEwLCA0LCAyMTEsIDQzLCAxMCwgNCwgMTI1LCAyMTEsIDQzLCAxMCwgNCwgMTI1LCAKKyAgICAyMjgsIDYyLCAxMCwgMjI1LCA0MSwgNjQsIDIyMiwgMTMsIDEwLCAyNDUsIDE1MiwgMjUwLCAxNzUsIDEyMSwgMjE4LCAxMjksIAorICAgIDEwLCAyNDUsIDE1MiwgMjUwLCAxNzUsIDEyNSwgMjE4LCAxMjksIDEwLCAyMjIsIDE4MywgMTI1LCAyMTgsIDEzMCwgMiwgCisgICAgMjQ0LCAxMDQsIDI1MCwgMTc0LCAxMCwgNCwgMTIxLCAyMzEsIDc4LCAxMCwgMSwgMjQ4LCAxOTYsIDIsIDIzNSwgMTkzLCAKKyAgICAyMTQsIDEwNSwgMTAsIDEsIDIyMywgOTYsIDIsIDIzNSwgMTkzLCAyMTQsIDEwNSwgMjQ1LCAyMiwgMjU0LCAzNywgMjEsIAorICAgIDIxMCwgODYsIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAxMTAsIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAxMDUsIDI0NSwgMjIsIAorICAgIDI1NCwgMzcsIDIxLCAxNTgsIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAxNjEsIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAxODksIAorICAgIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAxOTQsIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAxOTgsIDI0NSwgMjIsIDI1NCwgMzcsIAorICAgIDIxLCAxOTUsIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAyMDAsIDEwLCAxLCAyMjAsIDYwLCAyLCA1OSwgNTEsIDEwLCAxLCAKKyAgICAyNDgsIDIxNywgMiwgNTksIDUxLCAxMCwgMSwgMjQyLCAyNDUsIDIsIDU5LCA1MSwgMTAsIDUsIDIxOSwgMTU4LCAyNTQsIAorICAgIDEyNiwgMTAsIDUsIDIxOSwgMTU4LCAyMjQsIDIzNSwgMjMxLCA1OCwgMTAsIDEsIDI0MSwgMjE5LCAyLCAyMzUsIDE5MywgCisgICAgMjE0LCAxMDUsIDE4OCwgMjQ1LCAxNDMsIDY0LCAyMjYsIDE0LCAxODgsIDIxOCwgMTksIDI0MywgMjI5LCAyMTgsIDEyOSwgCisgICAgMTg4LCAyMTgsIDY3LCAyNDMsIDIyOSwgMjE4LCAxMjksIDE4OCwgMjE4LCAxOSwgMjQ5LCAyMjYsIDE4OCwgMjE4LCA2NywgCisgICAgMjQ5LCAyMjYsIDE4OCwgMjAzLCAyNDksIDIyNiwgMTg4LCAyNDksIDIyNywgMjE5LCAxMDYsIDIzMywgNDYsIDE4OCwgMjQ5LCAKKyAgICAyMjcsIDIxOSwgMTA2LCAyMjIsIDI1MSwgMTg4LCAyMTgsIDE5LCAyNDksIDIyNywgMjE5LCAxMDYsIDIzMywgNDYsIDE4OCwgCisgICAgMjE4LCA2NywgMjQ5LCAyMjcsIDIxOSwgMTA2LCAyMjIsIDI1MSwgMTg4LCAyNDksIDE4MCwgMTg4LCAyNDIsIDEsIDIyNiwgCisgICAgMjUwLCAxODgsIDI0MiwgMSwgMjMxLCAzNiwgMTg4LCAyNDIsIDEsIDI1MywgMjE4LCAxODgsIDI1NSwgMjEsIDc4LCAxODgsIAorICAgIDEsIDI1NCwgMTc0LCAxODgsIDEsIDIxOCwgMjMsIDI1NCwgMTc0LCAxODgsIDEsIDI1MiwgMjUsIDE4OCwgMSwgMjQzLCAKKyAgICAxMTMsIDE4OCwgMSwgMjQzLCAxMTQsIDI0MywgOTEsIDE4OCwgMSwgMjQ4LCAxOTIsIDE4OCwgMSwgMjQ3LCAxMTksIDI0OCwgCisgICAgMTkzLCAyMjIsIDIyOSwgMTg4LCAxLCAyNDEsIDIzOCwgMTg4LCAxLCAyMTIsIDMwLCAxODgsIDEsIDIxMCwgMTA4LCAxODgsIAorICAgIDEsIDI0MSwgMTk1LCAxODgsIDEsIDIxNiwgMjI2LCAxODgsIDEsIDIxNiwgMjI3LCAyNDMsIDkxLCAxODgsIDEsIDIxMCwgCisgICAgMTk5LCAxODgsIDEsIDIxMCwgMjAwLCAyNDEsIDIzOCwgMTg4LCAxLCAyMzQsIDIyNSwgMTg4LCAxLCAyMzMsIDEwMSwgMTg4LCAKKyAgICAxLCAyMzAsIDE5MCwgMTg4LCAxLCAyMjcsIDE5NCwgMTg4LCAxLCAyMjAsIDE0MywgMTg4LCAxLCA0MCwgMjIwLCAxNDMsIAorICAgIDE4OCwgMSwgNzUsIDE4OCwgMSwgMjI1LCAyMjEsIDE4OCwgMSwgMjIzLCA0OSwgMjI1LCAyMjEsIDE4OCwgMSwgMjIyLCAyNCwgCisgICAgMTg4LCAxLCAyMjQsIDc1LCAxODgsIDEsIDIyMiwgMjI5LCAxODgsIDEsIDIyMCwgMjAsIDE4OCwgMSwgMjE3LCAzNiwgMTg4LCAKKyAgICAxLCAyMjUsIDE2OSwgMjUyLCAxMiwgMTg4LCAxLCAyMjUsIDE2OSwgMjQyLCAyNDIsIDE4OCwgMSwgMjI1LCAxNjksIDI0OCwgCisgICAgMjAsIDE4OCwgMjI0LCAxNTEsIDQ4LCAxODgsIDIyNCwgMTUxLCA1MSwgMTg4LCAyMjQsIDE1MSwgMjQ2LCAxMTcsIDE4OCwgCisgICAgMjEwLCAxNywgNDgsIDE4OCwgMjEwLCAxNywgNTEsIDE4OCwgMjEwLCAxNywgMjQ2LCAxMTcsIDE4OCwgMjIzLCAxMzEsIDQ4LCAKKyAgICAxODgsIDIyMywgMTMxLCA1MSwgMTg4LCAyNDYsIDExOCwgMjEwLCAyNCwgMjQxLCA0NCwgMTg4LCAyNDYsIDExOCwgMjEwLCAKKyAgICAyNCwgMjU0LCAxMDUsIDE4OCwgMjQxLCAyNDEsIDQ4LCAxODgsIDI0MSwgMjQxLCA1MSwgMTg4LCAyNDEsIDI0MCwgMjQ2LCAKKyAgICAxMTcsIDE4OCwgMjQ1LCA3OSwgNDgsIDE4OCwgMjQ1LCA3OSwgNTEsIDE4OCwgMjIyLCAxMDcsIDE4OCwgMjQ0LCAxMzYsIAorICAgIDI0NywgMTIwLCAxODgsIDIyMywgMjQ4LCAxODgsIDIyMiwgMTM0LCAxODgsIDExMywgNjcsIDE3MCwgNDgsIDE4OCwgMTEzLCAKKyAgICA2NywgMTcwLCA1MSwgMTg4LCAxMzQsIDE3MCwgNDgsIDE4OCwgMTM0LCAxNzAsIDUxLCAxODgsIDIyNiwgMjQ4LCAyMzIsIAorICAgIDIxNCwgNDgsIDE4OCwgMjI2LCAyNDgsIDIzMiwgMjE0LCA1MSwgMTg4LCAyMzAsIDU2LCAxODgsIDI1MiwgMTMxLCAxODgsIAorICAgIDEsIDIxOSwgNDksIDIxMCwgODAsIDE4OCwgMSwgMjE5LCA0OSwgMjM0LCAxMjIsIDE4OCwgMSwgMjE5LCA0OSwgMjQ0LCAKKyAgICAxNTQsIDEwLCAxLCAyNTIsIDU1LCAyLCAxMzQsIDE3MCwgMjQwLCAyNTAsIDUxLCAxMCwgMSwgMjUyLCA1NSwgMiwgNTksIAorICAgIDI1MiwgNDMsIDIyLCAxMzQsIDE3MCwgNDgsIDEwLCAxLCAyNTIsIDU1LCAyLCAxMzQsIDE3MCwgMjI1LCA3LCAyMTQsIDE1MywgCisgICAgNTEsIDEwLCAxLCAyNTIsIDU1LCAyLCAxMzQsIDE3MCwgMjI1LCA3LCAyMTQsIDE1MywgMjUyLCA0MywgMjIsIDExMywgMTcwLCAKKyAgICA0OCwgMTAsIDEsIDI1MiwgNTUsIDIsIDExMywgMTcwLCAyNTIsIDQzLCAyMiwgNTksIDQ4LCAxMCwgMSwgMjUyLCA1NSwgMiwgCisgICAgMjM1LCAxOTMsIDQsIDIxNCwgMTA2LCA1MSwgMTAsIDEsIDI1MiwgNTUsIDIsIDQsIDIxNCwgMTA1LCAxMCwgMSwgMTIyLCAyLCAKKyAgICAxMTMsIDE3MCwgNDgsIDEwLCAxLCAxMjIsIDIsIDEzNCwgMTcwLCAyMjUsIDcsIDIxNCwgMTUzLCA1MSwgMTAsIDEsIDI0OCwgCisgICAgMTk2LCAyLCAxMTMsIDE3MCwgMjEzLCAxODksIDI1MiwgNDMsIDIyLCA0LCAyMTcsIDgwLCAxMCwgMSwgMjQ4LCAxOTYsIDIsIAorICAgIDIzNSwgMTkzLCA0LCAyMTQsIDEwNiwgNTEsIDEwLCAxLCAyMjMsIDk2LCAyLCA5MSwgMTAsIDEsIDIyMSwgMTY3LCAyLCAKKyAgICAyNDQsIDExLCAxNzAsIDQ4LCAxMCwgMSwgMjU0LCAxOTcsIDIsIDExMywgMTcwLCA0OCwgMTAsIDEsIDI1NCwgMTk3LCAyLCAKKyAgICAxMzQsIDE3MCwgMjI1LCA3LCAyNDYsIDEwNCwgNDgsIDEwLCAxLCAyNTQsIDE5NywgMiwgMTEzLCAxNzAsIDIxMywgMTg5LCAKKyAgICA0OCwgMTAsIDEsIDI0NCwgMTQzLCAyLCAxMTMsIDE3MCwgNTEsIDEwLCAxLCAyNDQsIDE0MywgMiwgMTM0LCAxNzAsIDIyNSwgCisgICAgNywgMjE0LCAxNTMsIDUxLCAxMCwgMSwgMjM0LCAxNzUsIDIsIDU5LCA0OCwgMTAsIDEsIDIzNCwgMTc1LCAyLCAxMzQsIAorICAgIDE3MCwgNDgsIDEwLCAxLCAyMzQsIDE3NSwgMiwgMTM0LCAxNzAsIDIyNSwgNywgMjE0LCAxNTMsIDUxLCAxMCwgMSwgNjYsIAorICAgIDIsIDU5LCA0OCwgMTAsIDEsIDY2LCAyLCA1OSwgNTEsIDEwLCAxLCAyMjgsIDYzLCAyLCAxMTMsIDE3MCwgNTEsIDEwLCAxLCAKKyAgICAyMjgsIDYzLCAyLCA0LCAyMTcsIDgwLCAxMCwgMSwgMjI4LCA2MywgMiwgNCwgMjE0LCAxMDUsIDEwLCAxLCAyMzMsIDEwMywgCisgICAgMiwgMTMwLCAxMCwgMSwgMjIzLCA5NiwgMiwgMTEzLCAxNzAsIDIxMywgMTg5LCA0OCwgMTAsIDEsIDIyMywgOTYsIDIsIAorICAgIDIwMiwgNDgsIDEwLCAxLCAyMjEsIDE2NywgMiwgMTEzLCAxNzAsIDIxMywgMTg5LCA0OCwgMTAsIDEsIDEyMiwgMiwgNCwgCisgICAgMTAsIDEsIDIxNywgODEsIDUxLCAxMCwgMSwgMTIyLCAyLCA0LCAxMCwgMSwgMjE3LCA4MSwgMjIsIDExMywgMjQ3LCAxMTgsIAorICAgIDEwLCAxLCAyMjEsIDE2NywgMiwgNCwgMTAsIDEsIDIxNywgODEsIDIyLCAxMTMsIDI0NywgMTE4LCAxMCwgMSwgMjIzLCA5NiwgCisgICAgMiwgNCwgMTAsIDEsIDIxNywgODEsIDIyLCAxMTMsIDI0NywgMTE4LCAxMCwgMSwgMTIyLCAyLCA0LCAxMCwgMSwgMjE3LCAKKyAgICA4MSwgNDgsIDEwLCAxLCAxMTIsIDIsIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAxMTMsIDQ4LCAxMCwgMSwgMTEyLCAyLCAyNDUsIAorICAgIDIyLCAyNTQsIDM3LCAyMSwgMTM0LCA0OCwgMTAsIDEsIDI0NCwgMTY4LCA3OSwgMiwgMjQ1LCAyMiwgMjU0LCAzNywgMjEsIAorICAgIDExMywgNDgsIDEwLCAxLCAyNDQsIDE2OCwgNzksIDIsIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAxMzQsIDQ4LCAxMCwgMSwgCisgICAgMjQ0LCAxNjgsIDc5LCAyLCAyNDUsIDIyLCAyNTQsIDM3LCAyMSwgMjQ0LCAxMSwgNTEsIDEwLCAxLCAyMTIsIDMxLCAyLCAKKyAgICAyNDUsIDIyLCAyNTQsIDM3LCAyMSwgMTEzLCA0OCwgMTAsIDEsIDIxMiwgMzEsIDIsIDI0NSwgMjIsIDI1NCwgMzcsIDIxLCAKKyAgICAxMzQsIDQ4LCAxMCwgMSwgNzksIDI1MiwgMTMzLCAyLCAyNDUsIDIyLCAyNTQsIDM3LCAyMSwgMTEzLCA0OCwgMTAsIDEsIAorICAgIDc5LCAyNTIsIDEzMywgMiwgMjQ1LCAyMiwgMjU0LCAzNywgMjEsIDEzNCwgNDgsIDEwLCAxLCAxMjIsIDIsIDI0NSwgMjIsIAorICAgIDI1NCwgMzcsIDIxLCAyNDQsIDExLCA1MSwgMTAsIDEsIDIyMSwgMTY3LCAyLCAyNDUsIDIyLCAyNTQsIDM3LCAyMSwgMjQ0LCAKKyAgICAxMSwgNDgsIDEwLCAxLCAyMjEsIDE2NywgMiwgMjM1LCAxOTMsIDIxNCwgMTA1LCAxMCwgMSwgMjM0LCAyNTEsIDIsIDExMywgCisgICAgMTcwLCA0OCwgMjE2LCAyMDUsIDEsIDI0MiwgNDYsIDIxNiwgMjA1LCAxLCAyMjAsIDY4LCAyMTYsIDIwNSwgMSwgMjI4LCAKKyAgICA2MSwgMjE2LCAyMDUsIDEsIDIyMywgMTg0LCAyMTYsIDIwNSwgMSwgMjUyLCAxODksIDIxNiwgMjA1LCAxLCAyMzIsIDI1MSwgCisgICAgMjE2LCAyMDUsIDEsIDIzNSwgOCwgMjE2LCAyMDUsIDEsIDI1NCwgMTU5LCAyMTYsIDIwNSwgMSwgMjE0LCAyNSwgMjE2LCAKKyAgICAyMDUsIDEsIDIzMSwgNzcsIDIxNiwgMjA1LCAxLCAyNDQsIDE5NCwgMjE2LCAyMDUsIDEsIDI0OCwgMjMsIDIxNiwgMjA1LCAKKyAgICAxLCAyMTYsIDIwNywgMjE2LCAyMDUsIDEsIDIzMywgMTMxLCAyMTYsIDIwNSwgMSwgMjQzLCAxMzEsIDIxNiwgMjA1LCAxLCAKKyAgICAyNDIsIDE3NywgMjE2LCAyMDUsIDEsIDIyMSwgMTY1LCAyMTYsIDIwNSwgMSwgMjQ4LCAxNDgsIDIxNiwgMjA1LCAxLCAyMTAsIAorICAgIDEwMCwgMjE2LCAyMDUsIDEsIDIxNywgMzcsIDIxNiwgMjA1LCAxLCAyMTEsIDEwMywgMjE2LCAyMDUsIDEsIDIyNSwgMjMzLCAKKyAgICAyMTYsIDIwNSwgMSwgMjM1LCAxMjgsIDIxNiwgMjA1LCAxLCAyNTAsIDEzNCwgMjE2LCAyMDUsIDEsIDIxNSwgMTU1LCAyMTYsIAorICAgIDIwNSwgMSwgMjQxLCAxODgsIDIxNiwgMjA1LCAxLCAyMzQsIDEzMSwgMjE2LCAyMDUsIDEsIDIxNiwgMjA2LCAyMTYsIDIwNSwgCisgICAgMSwgMjEwLCAxMTUsIDIxNiwgMjA1LCAxLCAyMjAsIDU4LCAyMTYsIDIwNSwgMSwgMjIyLCAzMCwgMjE2LCAyMDUsIDEsIAorICAgIDI0OCwgMjE5LCAyMTYsIDIwNSwgMSwgMTExLCAyMTYsIDIwNSwgMSwgMjEwLCAyMywgMjE2LCAyMDUsIDEsIDI1NCwgMTkzLCAKKyAgICAyMTYsIDIwNSwgMSwgMjQyLCAyNDMsIDIxNiwgMjA1LCAxLCAyMjQsIDg1LCAyMTYsIDIwNSwgMSwgMjEyLCA2MywgMjE2LCAKKyAgICAyMDUsIDI1NSwgMjIsIDIxNiwgMjA1LCAyNTUsIDM4LCAyMTYsIDIwNSwgMjQwLCAxMTQsIDIxNiwgMjA1LCAyNDUsIDIwOCwgCisgICAgMjE2LCAyMDUsIDIxNCwgMjIyLCAyMTYsIDIwNSwgMjI2LCAxODIsIDIxNiwgMjA1LCAyNDUsIDIxNiwgMjE2LCAyMDUsIAorICAgIDI0NSwgMTYsIDIxNiwgMjA1LCAyMjYsIDI0NywgMjE2LCAyMDUsIDIyNiwgMjU1LCAyMTYsIDIwNSwgMjE4LCA0NSwgMjE2LCAKKyAgICAyMDUsIDEsIDIyOSwgMjI1LCAyMjgsIDEzNywgMjEsIDIxMCwgODYsIDIyOCwgMTM3LCAyMSwgMTEwLCAyMjgsIDEzNywgMjEsIAorICAgIDEwNSwgMjI4LCAxMzcsIDIxLCAxNTgsIDIyOCwgMTM3LCAyMSwgMTYxLCAyMjgsIDEzNywgMjEsIDE4OSwgMjI4LCAxMzcsIAorICAgIDIxLCAxOTQsIDIyOCwgMTM3LCAyMSwgMTk4LCAyMjgsIDEzNywgMjEsIDE5NSwgMjI4LCAxMzcsIDIxLCAyMDAsIDIyOCwgCisgICAgMTM3LCAxLCA2MSwgMjI4LCAxMzcsIDEsIDI0NSwgMjA5LCAyMjgsIDEzNywgMSwgNzMsIDIyOCwgMTM3LCAxLCA3NSwgMjI4LCAKKyAgICAxMzcsIDEsIDcwLCAyMjgsIDEzNywgMSwgMjI2LCAxODMsIDIyOCwgMTM3LCAxLCA3NiwgMjI4LCAxMzcsIDEsIDI0OCwgCisgICAgMjA5LCAyMjgsIDEzNywgMSwgMjMwLCAyNSwgMjI4LCAxMzcsIDEsIDI1MiwgMTkxLCAyMjgsIDEzNywgMSwgMTkwLCAyMjgsIAorICAgIDEzNywgMSwgMjE3LCAxMDUsIDIyOCwgMTM3LCAxLCAyMzUsIDE0MSwgMjI4LCAxMzcsIDEsIDI1MCwgMTU3LCAyMjgsIDEzNywgCisgICAgMSwgMjQ4LCAyMjEsIDIyOCwgMTM3LCAxLCAyMDUsIDIyOCwgMTM3LCAxLCAyMjIsIDE3OSwgMjI4LCAxMzcsIDEsIDIwNiwgCisgICAgMjI4LCAxMzcsIDEsIDI0MywgNzksIDIyOCwgMTM3LCAxLCAyNDQsIDE5NiwgMjI4LCAxMzcsIDEsIDE3NiwgMjI4LCAxMzcsIAorICAgIDEsIDIzMywgMTM1LCAyMjgsIDEzNywgMSwgMjI5LCAyMjksIDIxMSwgMjIzLCAyMjgsIDEzNywgMSwgMTg0LCAyMjgsIDEzNywgCisgICAgMSwgMjI3LCAxNjUsIDIyOCwgMTM3LCAxLCAxOTcsIDIyOCwgMTM3LCAxLCAxNjIsIDIyOCwgMTM3LCAxLCAyMTIsIDY1LCAKKyAgICAyMjgsIDEzNywgMSwgMTkxLCAyMjgsIDEzNywgMSwgMjI3LCAxNjYsIDIxMSwgMjIzLCAyMjgsIDEzNywgMSwgMjM1LCA2MSwgCisgICAgMjM1LCAxNDEsIDIyOCwgMTM3LCAxLCAyMzUsIDYxLCAyNTAsIDE1NywgMjI4LCAxMzcsIDEsIDIzNSwgNjEsIDIwNSwgMjI4LCAKKyAgICAxMzcsIDM4LCAyMTksIDI1MSwgMTI1LCAyMTYsIDMwLCAyMjgsIDEzNywgMzgsIDIxOSwgMjUxLCAxMjEsIDIxNiwgMzAsIAorICAgIDIyOCwgMTM3LCAzOCwgMjE5LCAyNTEsIDIyMiwgMjI4LCAyMTYsIDMwLCAyMjgsIDEzNywgMzgsIDE5OSwgMjQ4LCAzOCwgCisgICAgMjE2LCAzMCwgMjI4LCAxMzcsIDM4LCAxOTksIDEyNSwgMjE2LCAzMCwgMjI4LCAxMzcsIDM4LCAxOTksIDEyMSwgMjE2LCAKKyAgICAzMCwgMjI4LCAxMzcsIDM4LCAxOTksIDIyMiwgMjI4LCAyMTYsIDMwLCAyMjgsIDEzNywgMzgsIDIyOSwgMTkzLCA3OCwgCisgICAgMjI4LCAxMzcsIDM4LCA1MiwgNTksIDQ4LCAyMjgsIDEzNywgMTI1LCAxMzgsIDI1NCwgNTcsIDIyOCwgMTM3LCAxMjEsIAorICAgIDEzOCwgMjU0LCA1NywgMjI4LCAxMzcsIDE2LCAyMjYsIDE4NCwgMjQ4LCA1MCwgMjI4LCAxMzcsIDE2LCAyNDMsIDc4LCAKKyAgICAyMjgsIDEzNywgMjQ5LCAyMTksIDIyOCwgMTM3LCAyNDUsIDMxLCA3OCwgMjI4LCAxMzcsIDIzMywgMTA4LCAyMjEsIDI1MiwgCisgICAgMSwgMjU0LCAxNzYsIDIyMSwgMjUyLCAxLCAyNTEsIDIyOCwgMjIxLCAyNTIsIDEsIDI0MywgMTEyLCAyMjEsIDI1MiwgMSwgCisgICAgMjQ4LCAxOTQsIDIyMSwgMjUyLCAxLCAyMzUsIDE1MiwgMjIxLCAyNTIsIDEsIDI1MiwgMTg5LCAyMjEsIDI1MiwgMSwgMjEwLCAKKyAgICA4OSwgMjIxLCAyNTIsIDEsIDIzNSwgMTYwLCAyMjEsIDI1MiwgMSwgMjE2LCA2NywgMjIxLCAyNTIsIDEsIDIxMCwgMTgyLCAKKyAgICAyMjEsIDI1MiwgMSwgMjM1LCA5LCAyMjEsIDI1MiwgMSwgMjMzLCAxMjgsIDIyMSwgMjUyLCAxLCAyMzAsIDE5MCwgMjIxLCAKKyAgICAyNTIsIDEsIDIyNywgMTk0LCAyMjEsIDI1MiwgMSwgMjE5LCAxNTYsIDIyMSwgMjUyLCAxLCAyMzUsIDI1NSwgMjIxLCAyNTIsIAorICAgIDEsIDI0NCwgMTIxLCAyMjEsIDI1MiwgMSwgMjE1LCAxODEsIDIyMSwgMjUyLCAxLCAyMjQsIDEwLCAyMjEsIDI1MiwgMSwgCisgICAgMjIyLCAyMjksIDIyMSwgMjUyLCAxLCAyMjAsIDg1LCAyMjEsIDI1MiwgMSwgMjE3LCAxMDAsIDIyMSwgMjUyLCAxNjQsIAorICAgIDIzNSwgMjU1LCAyMjEsIDI1MiwgMTY0LCAyMzUsIDI1NCwgMjIxLCAyNTIsIDE2NCwgMjI2LCAyNDMsIDIyMSwgMjUyLCAKKyAgICAxNjQsIDI0OCwgMjA3LCAyMjEsIDI1MiwgNTgsIDEsIDI0NSwgMTA1LCAyMTAsIDE4MiwgMjIxLCAyNTIsIDE2NCwgMjQ1LCAKKyAgICAxMDUsIDIxMCwgMTgyLCAyMjEsIDI1MiwgMjUsIDUsIDE5OSwgNzUsIDIyMSwgMjUyLCAyNSwgNSwgNzUsIDIyMSwgMjUyLCAKKyAgICAyNSwgNSwgMjI2LCAxMTgsIDI1NSwgNzMsIDIyMSwgMjUyLCAyNSwgNSwgMTk5LCAyNTUsIDczLCAyMjEsIDI1MiwgMjUsIDUsIAorICAgIDI1NSwgNzMsIDIyMSwgMjUyLCAyNSwgNSwgMjI2LCAxMTgsIDYxLCAyMjEsIDI1MiwgMjUsIDUsIDE5OSwgNjEsIDIyMSwgCisgICAgMjUyLCAyNSwgNSwgNjEsIDIyMSwgMjUyLCA1OCwgMSwgMjE5LCAyNTEsIDYxLCAyMjEsIDI1MiwgMjUsIDUsIDIxOSwgMjUxLCAKKyAgICA2MSwgMjIxLCAyNTIsIDI1LCA1LCAxOTksIDcwLCAyMjEsIDI1MiwgMjUsIDUsIDcwLCAyMjEsIDI1MiwgNTgsIDEsIDczLCAKKyAgICAyMjEsIDI1MiwgMjUsIDUsIDE5OSwgNzMsIDIyMSwgMjUyLCAyNSwgNSwgNzMsIDIyMSwgMjUyLCAyNSwgNSwgNzYsIDIyMSwgCisgICAgMjUyLCAyNSwgNSwgMjE4LCA0NSwgMjIxLCAyNTIsIDE2NCwgMjI5LCA5MiwgMjIxLCAyNTIsIDIyNCwgMTQxLCAyMjksIDkyLCAKKyAgICAyMjEsIDI1MiwgMjI0LCAxNDEsIDI1NCwgMjE4LCAyMjEsIDI1MiwgMjI0LCAxNDEsIDI1NCwgMTE0LCAyMjEsIDI1MiwgCisgICAgMjI0LCAxNDEsIDI1MiwgMTE0LCAyMjEsIDI1MiwgMjI0LCAxNDEsIDI1MywgMjAxLCAyMjEsIDI1MiwgMjI0LCAxNDEsIAorICAgIDIyMCwgOCwgMjIxLCAyNTIsIDI1NSwgMjEsIDc4LCAyMjEsIDI1MiwgMjI0LCAxNDEsIDIzMSwgNjgsIDIyNCwgNDUsIDIyMSwgCisgICAgMjUyLCAyMjQsIDE0MSwgMjEwLCAzMSwgMjIxLCAyNTIsIDIyNCwgMTQxLCAyMjQsIDQ1LCAyMjEsIDI1MiwgMjI0LCAxNDEsIAorICAgIDIxMCwgMTE0LCAyMjEsIDI1MiwgMjI0LCAxNDEsIDIxNSwgOTAsIDIyMSwgMjUyLCAyMjQsIDE0MSwgMjU0LCA5LCAyMjEsIAorICAgIDI1MiwgMjI0LCAxNDEsIDIxOSwgNTMsIDIzMSwgMTQ1LCAyMjEsIDI1MiwgMjI0LCAxNDEsIDI1NCwgMTAwLCAyMzEsIDE4MiwgCisgICAgMSwgMjQyLCAyNCwgMjMxLCAxODIsIDEsIDI1NSwgMjUsIDIzMSwgMTgyLCAxLCAyNTQsIDIxNiwgMjMxLCAxODIsIDEsIAorICAgIDI1NCwgMjU1LCAyMzEsIDE4MiwgMSwgMjU0LCAyMDksIDIzMSwgMTgyLCAxLCAyMTQsIDEyNCwgMjMxLCAxODIsIDEsIDI1MywgCisgICAgMTYwLCAyMzEsIDE4MiwgMSwgMjM1LCAxNjAsIDIzMSwgMTgyLCAxLCAyNTMsIDE5OCwgMjMxLCAxODIsIDEsIDI1NCwgMTgxLCAKKyAgICAyMzEsIDE4MiwgMSwgMjU0LCAxODYsIDIzMSwgMTgyLCAxLCAyNTQsIDE3OCwgMjMxLCAxODIsIDEsIDI1NCwgMTM2LCAyMzEsIAorICAgIDE4MiwgMSwgMjU0LCAxMjMsIDIzMSwgMTgyLCAxLCAyNTMsIDIzNywgMjMxLCAxODIsIDEsIDIzNSwgMjU1LCAyMzEsIDE4MiwgCisgICAgMSwgMjU0LCA3MiwgMjMxLCAxODIsIDEsIDI1MywgMjA4LCAyMzEsIDE4MiwgMSwgMjU0LCA0NSwgMjMxLCAxODIsIDEsIAorICAgIDI1NCwgNDEsIDIzMSwgMTgyLCAxLCAyNTMsIDIzMSwgMjMxLCAxODIsIDEsIDI1MywgMjA2LCAyMzEsIDE4MiwgMSwgMjQ2LCAKKyAgICA1NSwgMjMxLCAxODIsIDEsIDIzNSwgMiwgMjMxLCAxODIsIDEsIDI1NCwgMTk2LCAyMzEsIDE4MiwgMjU0LCAyMjIsIDc4LCAKKyAgICAyMzEsIDE4MiwgMjEzLCAxMzYsIDc4LCAyMzEsIDE4MiwgMjQzLCA1MywgNzgsIDIzMSwgMTgyLCAyMjQsIDE0MCwgMTAsIDEsIAorICAgIDI1MiwgNTUsIDIsIDQsIDIxNCwgMTA2LCA1MSwgMTAsIDEsIDE1MSwgMiwgMTEzLCAxNzAsIDQ4LCAxMCwgMSwgMjE3LCA4MSwgCisgICAgMiwgMTEzLCAxNzAsIDQ4LCAxMCwgMSwgMjQ0LCAxNDMsIDIsIDU5LCAyNTIsIDQzLCAyMiwgMTM0LCAxNzAsIDQ4LCAxMCwgCisgICAgMSwgMjI0LCA4MiwgMiwgNTksIDUxLCAxMCwgMSwgMjMzLCAxMDMsIDIsIDUyLCAxMzAsIDEwLCAxLCA2NiwgMiwgMTM0LCAKKyAgICAxNzAsIDQ4LCAxMCwgMSwgNzksIDIsIDExMywgMTcwLCAyNTIsIDQzLCAyMiwgMjAyLCA0OCwgMTAsIDEsIDc5LCAyLCAxMTMsIAorICAgIDE3MCwgMjUyLCA0MywgMjIsIDU5LCA0OCwgMTAsIDEsIDIyMywgOTYsIDIsIDIzMiwgMTIzLCAxMCwgMSwgMjEyLCAzMSwgMiwgCisgICAgNTksIDIxMSwgMjMxLCAxMCwgMSwgMjIyLCAyMDEsIDIxMSwgNDMsIDEwLCAyNDksIDk5LCAyNDQsIDE2NSwgMTAsIDI0OSwgCisgICAgOTksIDI0OCwgMTg0LCAxMCwgMjQ5LCA5OSwgMjM0LCAyMDUsIDEwLCAyNDksIDk5LCAyNDQsIDE2MywgMTAsIDI0OSwgOTksIAorICAgIDI0OCwgMTgyLCAxMCwgMjQ5LCA5OSwgMjM0LCAyMDMsIDEwLCAxMzgsIDEyMywgNTksIDQ4LCAxMCwgMTM4LCAxMTMsIDE3MCwgCisgICAgNDgsIDEwLCAxMzgsIDIzMiwgMTI0LCA0OCwgMTAsIDEzOCwgMTIzLCA1OSwgNTEsIDEwLCAxMzgsIDExMywgMTcwLCA1MSwgCisgICAgMTAsIDEzOCwgMjMyLCAxMjQsIDUxLCAxMCwgMjA0LCAyNDQsIDE2MywgMTAsIDIwNCwgMjQ4LCAxODIsIDEwLCAyMDQsIAorICAgIDIzNCwgMjAzLCAxMCwgNCwgMTI1LCAyMTIsIDMwLCAxMCwgMjQ0LCAxNjYsIDIsIDIyMiwgMjMzLCAxMCwgMjQ0LCAxNjYsIAorICAgIDIsIDU5LCA0OCwgMTAsIDIzNCwgMjA2LCAyLCA1OSwgNTEsIDEwLCA0MywgMjUzLCAyNTAsIDQ4LCAxMCwgNDQsIDI1MywgCisgICAgMjUwLCA0OCwgMTAsIDQzLCAyNTMsIDI1MCwgNTEsIDEwLCA0NCwgMjUzLCAyNTAsIDUxLCAxMCwgNTIsIDQ0LCAyNTMsIAorICAgIDI1MCwgNDgsIDEwLCA1MiwgNDQsIDI1MywgMjUwLCA3NywgMiwgMjQ3LCAxMjAsIDEwLCA0NCwgMjUzLCAyNTAsIDc3LCAyLCAKKyAgICAyNDcsIDEyMCwgMTAsIDI0OCwgMTg1LCAyLCAyNDcsIDEyMCwgODQsIDUsIDIzNSwgMTkzLCAyNTAsIDI1NSwgODQsIDUsIAorICAgIDI1MCwgMjU1LCA4NCwgNSwgMjU0LCA3NSwgODQsIDUsIDIxMywgMTQ3LCA4NCwgMSwgMjE5LCAyNTEsIDYxLCA4NCwgMSwgCisgICAgNjEsIDg0LCAxLCAyNTUsIDczLCA4NCwgMSwgNzMsIDg0LCAxLCAyMzYsIDMzLCA4NCwgMSwgNzAsIDg0LCAxLCAyMTQsIAorICAgIDExOCwgODQsIDEsIDE0OSwgMTUzLCA4NCwgMSwgMTQ5LCAxNTYsIDg0LCAxLCAyNTEsIDIsIDc1LCA4NCwgMSwgMjE5LCAKKyAgICAyNTEsIDc1LCA4NCwgMSwgNzUsIDg0LCAxLCAyNTQsIDIwMSwgODQsIDEsIDI1MSwgMiwgNzYsIDg0LCAxLCAyMTksIDI1MSwgCisgICAgNzYsIDg0LCAxLCA3NiwgODQsIDEsIDI1MywgMTkyLCA4NCwgMSwgMTc2LCA4NCwgMSwgMjM0LCAxMzIsIDg0LCAxLCAyNDMsIAorICAgIDEzNSwgODQsIDEsIDI0MiwgMjQ5LCA4NCwgMSwgMjI5LCA3NywgODQsIDEsIDI1MSwgMzMsIDg0LCAxLCAyNTAsIDE1NywgCisgICAgODQsIDEsIDIzNSwgMTQxLCA4NCwgMSwgMjM1LCAxMTQsIDg0LCAxLCAyMjcsIDE2NSwgODQsIDEsIDIxNSwgMTU2LCA4NCwgCisgICAgMSwgMjE1LCAxNDQsIDg0LCAxLCAyNDgsIDEzNSwgODQsIDEsIDI0OCwgMTE5LCA4NCwgMSwgMjI4LCAxMTAsIDg0LCAxLCAKKyAgICAyMTcsIDEwNSwgODQsIDEsIDIxNiwgMjA4LCA4NCwgMSwgMjQ4LCAyMjEsIDg0LCAxLCAyNDgsIDI1LCA4NCwgMSwgMTk3LCAKKyAgICA4NCwgMSwgMjI4LCA5MiwgODQsIDEsIDE5MCwgODQsIDEsIDIyNSwgMTQ3LCA4NCwgMSwgMjUyLCAxOTEsIDg0LCAxLCAyNTIsIAorICAgIDE4LCA4NCwgMSwgMTg0LCA4NCwgMSwgMTkxLCA4NCwgMSwgMjA1LCA4NCwgMSwgMjIyLCAxNzksIDg0LCAxLCAyMzMsIDEzNSwgCisgICAgODQsIDEsIDIzMiwgMTg0LCA4NCwgMSwgMjMyLCAxNzUsIDg0LCAxLCAyMTQsIDI3LCA4NCwgMSwgMjIwLCAxMDIsIDg0LCAxLCAKKyAgICAyMTgsIDIyMywgODQsIDEsIDIwNiwgODQsIDEsIDE2MiwgODQsIDI1LCA1LCAyMjYsIDIzNCwgODQsIDI1LCA1LCAyMjYsIAorICAgIDE4MSwgODQsIDUsIDIyNywgMjA1LCA4NCwgNSwgMjUzLCAxNzUsIDg0LCAyNSwgNSwgMjU1LCA3MywgODQsIDI1LCA1LCA3MywgCisgICAgODQsIDI1LCA1LCAyMzYsIDMzLCA4NCwgMjUsIDUsIDcwLCA4NCwgMjUsIDUsIDIxNCwgMTE4LCA4NCwgMjUsIDUsIDE0OSwgCisgICAgMTUzLCA4NCwgMjUsIDUsIDE0OSwgMjIyLCAxODAsIDg0LCAyNSwgNSwgMjUxLCAyLCA3NSwgODQsIDI1LCA1LCAyMTksIAorICAgIDI1MSwgNzUsIDg0LCAyNSwgNSwgNzUsIDg0LCAyNSwgNSwgMjU0LCAyMDEsIDg0LCAyNSwgNSwgMjUxLCAyLCA3NiwgODQsIAorICAgIDI1LCA1LCAyMTksIDI1MSwgNzYsIDg0LCAyNSwgNSwgNzYsIDg0LCAyNSwgNSwgMjUzLCAxOTIsIDg0LCA1LCAyMTMsIDE1MiwgCisgICAgODQsIDI1LCA1LCAyMjQsIDE4NSwgNzUsIDg0LCAyNSwgNSwgMjUzLCAxNzEsIDg0LCAyMjYsIDIwNCwgODQsIDIxOCwgMTExLCAKKyAgICA1LCAyMTQsIDIxNiwgODQsIDIxOCwgMTExLCA1LCAyNTQsIDc3LCA4NCwgMjQyLCAxMzcsIDI1NSwgMTQsIDg0LCAyNTUsIDMsIAorICAgIDI1NSwgMTQsIDg0LCAyNSwgNSwgMjUxLCAyLCAxOTksIDc1LCA4NCwgMjUsIDUsIDIxNCwgMjE0LCA4NCwgMjUsIDUsIDIxNCwgCisgICAgMTE3LCA4NCwgMSwgMjI0LCA4OCwgODQsIDEsIDIzNCwgMTE1LCA4NCwgMSwgMjQyLCAyMjYsIDg0LCAxLCAyMTAsIDExNiwgCisgICAgODQsIDEsIDI0OCwgMTI0LCA4NCwgMSwgMjIzLCAzOSwgODQsIDEsIDI0NCwgMTk2LCA4NCwgMSwgMjEwLCAxNjgsIDg0LCAxLCAKKyAgICAxNDksIDIyMiwgMTgwLCA4NCwgMSwgMTQ5LCAyMzIsIDE4NSwgODQsIDI1LCA1LCAxNDksIDE1NiwgODQsIDI1LCA1LCAxNDksIAorICAgIDIzMiwgMTg1LCA4NCwgMjQ4LCAxNzgsIDg0LCA1MiwgMjQ4LCAxNzgsIDg0LCAyMSwgMjEwLCA4NiwgODQsIDIxLCAxMTAsIAorICAgIDg0LCAyMSwgMTA1LCA4NCwgMjEsIDE1OCwgODQsIDIxLCAxNjEsIDg0LCAyMSwgMTg5LCA4NCwgMjEsIDE5NCwgODQsIDIxLCAKKyAgICAxOTgsIDg0LCAyMSwgMTk1LCA4NCwgMjEsIDIwMCwgODQsIDI1NSwgMjEsIDUwLCA4NCwgNSwgMTI1LCAyMTksIDE3LCAyNDcsIAorICAgIDEyMCwgODQsIDEsIDI1MSwgMiwgNjEsIDg0LCAxLCAyMjYsIDIzNCwgODQsIDEsIDIyNiwgMTgxLCA4NCwgMSwgMjUzLCAKKyAgICAxNzEsIDg0LCAxLCAyMTQsIDIxNCwgODQsIDEsIDIxNCwgMTE3LCA4NCwgMSwgMjEwLCA4MiwgODQsIDEsIDExNCwgMTkxLCAKKyAgICA4NCwgMSwgMjQzLCAyOSwgODQsIDEsIDIzNSwgOTYsIDg0LCAxLCAyNDIsIDE4MCwgMjE4LCAxMjksIDg0LCAxLCAyNDgsIAorICAgIDEyNSwgODQsIDEsIDI1MiwgMTExLCAxNDYsIDUsIDI1MCwgMjU1LCAxNDYsIDUsIDI1NCwgNzUsIDE0NiwgNSwgMjEzLCAKKyAgICAxNDcsIDE0NiwgMSwgNjEsIDE0NiwgMSwgMjU1LCA3MywgMTQ2LCAxLCA3MywgMTQ2LCAxLCAyMzYsIDMzLCAxNDYsIDEsIAorICAgIDcwLCAxNDYsIDEsIDIxNCwgMTE4LCAxNDYsIDEsIDE0OSwgMTUzLCAxNDYsIDEsIDE0OSwgMTU2LCAxNDYsIDEsIDc1LCAKKyAgICAxNDYsIDEsIDI1NCwgMjAxLCAxNDYsIDEsIDc2LCAxNDYsIDEsIDI1MywgMTkyLCAxNDYsIDEsIDE3NiwgMTQ2LCAxLCAyMzQsIAorICAgIDEzMiwgMTQ2LCAxLCAyNDMsIDEzNSwgMTQ2LCAxLCAyNDIsIDI0OSwgMTQ2LCAxLCAyMjksIDc3LCAxNDYsIDEsIDI1MSwgCisgICAgMzMsIDE0NiwgMSwgMjUwLCAxNTcsIDE0NiwgMSwgMjM1LCAxNDEsIDE0NiwgMSwgMjM1LCAxMTQsIDE0NiwgMSwgMjI3LCAKKyAgICAxNjUsIDE0NiwgMSwgMjE1LCAxNTYsIDE0NiwgMSwgMjE1LCAxNDQsIDE0NiwgMSwgMjQ4LCAxMzUsIDE0NiwgMSwgMjQ4LCAKKyAgICAxMTksIDE0NiwgMSwgMjI4LCAxMTAsIDE0NiwgMSwgMjE3LCAxMDUsIDE0NiwgMSwgMjE2LCAyMDgsIDE0NiwgMSwgMjQ4LCAKKyAgICAyMjEsIDE0NiwgMSwgMjQ4LCAyNSwgMTQ2LCAxLCAxOTcsIDE0NiwgMSwgMTkwLCAxNDYsIDEsIDIyNSwgMTQ3LCAxNDYsIDEsIAorICAgIDI1MiwgMTkxLCAxNDYsIDEsIDI1MiwgMTgsIDE0NiwgMSwgMTg0LCAxNDYsIDEsIDE5MSwgMTQ2LCAxLCAyMDUsIDE0NiwgMSwgCisgICAgMjMzLCAxMzUsIDE0NiwgMSwgMjIwLCAxMDIsIDE0NiwgMSwgMjE4LCAyMjMsIDE0NiwgMSwgMjA2LCAxNDYsIDEsIDE2MiwgCisgICAgMTQ2LCA1LCAyMjcsIDIwNSwgMTQ2LCA1LCAyNTMsIDE3NSwgMTQ2LCAyNSwgNSwgMjU1LCA3MywgMTQ2LCAyNSwgNSwgNzMsIAorICAgIDE0NiwgMjUsIDUsIDIzNiwgMzMsIDE0NiwgMjUsIDUsIDcwLCAxNDYsIDI1LCA1LCAyMTQsIDExOCwgMTQ2LCAyNSwgNSwgCisgICAgMTQ5LCAxNTMsIDE0NiwgMjUsIDUsIDE0OSwgMjIyLCAxODAsIDE0NiwgMjUsIDUsIDc1LCAxNDYsIDI1LCA1LCAyNTQsIAorICAgIDIwMSwgMTQ2LCAyNSwgNSwgNzYsIDE0NiwgMjUsIDUsIDI1MywgMTkyLCAxNDYsIDUsIDIxMywgMTUyLCAxNDYsIDEsIDIzNCwgCisgICAgMTI0LCAyMTcsIDEwNSwgMTQ2LCAyNTMsIDE5MywgMjMzLCAyMywgNzgsIDE0NiwgMSwgMjIyLCAxNzksIDE0NiwgMSwgMjIzLCAKKyAgICAzOSwgMTQ2LCAxLCAyMTAsIDE2OCwgMTQ2LCAxLCAxNDksIDIyMiwgMTgwLCAxNDYsIDEsIDE0OSwgMjMyLCAxODUsIDE0NiwgCisgICAgMjUsIDUsIDE0OSwgMTU2LCAxNDYsIDI1LCA1LCAxNDksIDIzMiwgMTg1LCAxNDYsIDIxLCAyMTAsIDg2LCAxNDYsIDIxLCAKKyAgICAxMTAsIDE0NiwgMjEsIDEwNSwgMTQ2LCAyMSwgMTU4LCAxNDYsIDIxLCAxNjEsIDE0NiwgMjEsIDE4OSwgMTQ2LCAyMSwgCisgICAgMTk0LCAxNDYsIDIxLCAxOTgsIDE0NiwgMjEsIDE5NSwgMTQ2LCAyMSwgMjAwLCAxNDYsIDEsIDIyMywgMTg4LCAyLCAyMzAsIAorICAgIDIyNCwgMjQ3LCAyNTQsIDE0NiwgMSwgMjIzLCAxODgsIDIsIDIzMiwgMTA4LCAyNDcsIDI1NCwgMTQ2LCAyMjIsIDExOCwgCisgICAgNzgsIDE0NiwgMjIyLCAxMTgsIDUwLCAxNDYsIDI0OSwgOTgsIDIyNywgMTk3LCAxMTAsIDE0NiwgMjQ5LCA5OCwgMjI3LCAKKyAgICAxOTcsIDEwNSwgMTQ2LCAyNDksIDk4LCAyMjcsIDE5NywgMTU4LCAxNDYsIDI0OSwgOTgsIDIyNywgMTk3LCAxNjEsIDE0NiwgCisgICAgMjQ5LCA5OCwgMjI3LCAxOTcsIDEyMywgMjMzLCAxNiwgMjE2LCAyMDEsIDIxNiwgMTk2LCAyNDgsIDQ4LCAxNDYsIDI0OSwgCisgICAgOTgsIDI0OCwgNDksIDIxOSwgMTE5LCAxNDYsIDIzNSwgMTYxLCAxNDYsIDI0MywgMTAzLCA3OCwgMTgzLCA1LCAyNTQsIAorICAgIDI1NCwgMjUxLCAyNDMsIDE4MywgNSwgMjUxLCAyNDMsIDE4MywgNSwgMjEzLCAxNDcsIDE4MywgMSwgNjEsIDE4MywgMSwgCisgICAgMjU1LCA3MywgMTgzLCAxLCA3MywgMTgzLCAxLCAyMzYsIDMzLCAxODMsIDEsIDcwLCAxODMsIDEsIDIxNCwgMTE4LCAxODMsIAorICAgIDEsIDI0NSwgMjA5LCAxODMsIDEsIDI1NCwgMjAxLCAxODMsIDEsIDIyNiwgMTgzLCAxODMsIDEsIDI1MywgMTkyLCAxODMsIAorICAgIDEsIDE3NiwgMTgzLCAxLCAyMzQsIDEzMiwgMTgzLCAxLCAyNDMsIDEzNSwgMTgzLCAxLCAyNDIsIDI0OSwgMTgzLCAxLCAKKyAgICAyMjksIDc3LCAxODMsIDEsIDI1MSwgMzMsIDE4MywgMSwgMjUwLCAxNTcsIDE4MywgMSwgMjM1LCAxNDEsIDE4MywgMSwgCisgICAgMjM1LCAxMTQsIDE4MywgMSwgMjI3LCAxNjUsIDE4MywgMSwgMjE1LCAxNTYsIDE4MywgMSwgMjE1LCAxNDQsIDE4MywgMSwgCisgICAgMjQ4LCAxMzUsIDE4MywgMSwgMjQ4LCAxMTksIDE4MywgMSwgMjI4LCAxMTAsIDE4MywgMSwgMjE3LCAxMDUsIDE4MywgMSwgCisgICAgMjE2LCAyMDgsIDE4MywgMSwgMjQ4LCAyMjEsIDE4MywgMSwgMjQ4LCAyNSwgMTgzLCAxLCAxOTcsIDE4MywgMSwgMTkwLCAKKyAgICAxODMsIDEsIDIyNSwgMTQ3LCAxODMsIDEsIDI1MiwgMTkxLCAxODMsIDEsIDI1MiwgMTgsIDE4MywgMSwgMTg0LCAxODMsIDEsIAorICAgIDE5MSwgMTgzLCAxLCAyMDUsIDE4MywgMSwgMjMzLCAxMzUsIDE4MywgMSwgMjMyLCAxODQsIDE4MywgMSwgMjE0LCAyNywgCisgICAgMTgzLCAxLCAyMjAsIDEwMiwgMTgzLCAxLCAyMDYsIDE4MywgMSwgMTYyLCAxODMsIDUsIDIyNywgMjA1LCAxODMsIDI1LCA1LCAKKyAgICAyNTUsIDczLCAxODMsIDI1LCA1LCA3MywgMTgzLCAyNSwgNSwgMjM2LCAzMywgMTgzLCAyNSwgNSwgNzAsIDE4MywgMjUsIDUsIAorICAgIDIxNCwgMTE4LCAxODMsIDI1LCA1LCAyNDUsIDIwOSwgMTgzLCAyNSwgNSwgMjU0LCAyMDEsIDE4MywgMjUsIDUsIDIyNiwgCisgICAgMTgzLCAxODMsIDI1LCA1LCAyNTMsIDE5MiwgMTgzLCA1LCAyMTMsIDE1MiwgMTgzLCA1LCAyMTQsIDIxOCwgMTgzLCAxLCAKKyAgICAyMzQsIDExNSwgMTgzLCAxLCAyNDIsIDIyNiwgMTgzLCAxLCAyMTAsIDExNiwgMTgzLCAxLCAyMjIsIDE3OSwgMTgzLCAxLCAKKyAgICAyNDQsIDE5NiwgMTgzLCAyMSwgMjEwLCA4NiwgMTgzLCAyMSwgMTEwLCAxODMsIDIxLCAxMDUsIDE4MywgMjEsIDE1OCwgCisgICAgMTgzLCAyMSwgMTYxLCAxODMsIDIxLCAxODksIDE4MywgMjEsIDE5NCwgMTgzLCAyMSwgMTk4LCAxODMsIDIxLCAxOTUsIAorICAgIDE4MywgMjEsIDIwMCwgMTgzLCAyMTYsIDc0LCAxODMsIDI1NCwgMjUzLCAxODMsIDIzNSwgMTc4LCAxODMsIDIxNCwgMTQ2LCAKKyAgICAxODMsIDI0NSwgMTgxLCAyMjYsIDE4OCwgMTgzLCA1LCAyMTEsIDc4LCAxNzEsIDUsIDI1MCwgMjU1LCAxNzEsIDUsIDI1NCwgCisgICAgNzUsIDE3MSwgNSwgMjEzLCAxNDcsIDE3MSwgMSwgNjEsIDE3MSwgMSwgMjU1LCA3MywgMTcxLCAxLCA3MywgMTcxLCAxLCAKKyAgICAyMzYsIDMzLCAxNzEsIDEsIDcwLCAxNzEsIDEsIDIxNCwgMTE4LCAxNzEsIDEsIDE0OSwgMTUzLCAxNzEsIDEsIDE0OSwgCisgICAgMTU2LCAxNzEsIDI1LCAyNTEsIDIsIDc1LCAxNzEsIDEsIDc1LCAxNzEsIDEsIDI1NCwgMjAxLCAxNzEsIDI1LCAyNTEsIDIsIAorICAgIDc2LCAxNzEsIDEsIDc2LCAxNzEsIDEsIDI1MywgMTkyLCAxNzEsIDEsIDE3NiwgMTcxLCAxLCAyMzQsIDEzMiwgMTcxLCAxLCAKKyAgICAyNDMsIDEzNSwgMTcxLCAxLCAyNDIsIDI0OSwgMTcxLCAxLCAyMjksIDc3LCAxNzEsIDEsIDI1MSwgMzMsIDE3MSwgMSwgCisgICAgMjUwLCAxNTcsIDE3MSwgMSwgMjM1LCAxNDEsIDE3MSwgMSwgMjM1LCAxMTQsIDE3MSwgMSwgMjI3LCAxNjUsIDE3MSwgMSwgCisgICAgMjE1LCAxNTYsIDE3MSwgMSwgMjE1LCAxNDQsIDE3MSwgMSwgMjQ4LCAxMzUsIDE3MSwgMSwgMjQ4LCAxMTksIDE3MSwgMSwgCisgICAgMjI4LCAxMTAsIDE3MSwgMSwgMjE3LCAxMDUsIDE3MSwgMSwgMjE2LCAyMDgsIDE3MSwgMSwgMjQ4LCAyMjEsIDE3MSwgMSwgCisgICAgMjQ4LCAyNSwgMTcxLCAxLCAxOTcsIDE3MSwgMSwgMTkwLCAxNzEsIDEsIDIyNSwgMTQ3LCAxNzEsIDEsIDI1MiwgMTkxLCAKKyAgICAxNzEsIDEsIDI1MiwgMTgsIDE3MSwgMSwgMTg0LCAxNzEsIDEsIDE5MSwgMTcxLCAxLCAyMDUsIDE3MSwgMSwgMjMzLCAxMzUsIAorICAgIDE3MSwgMSwgMjMyLCAxODQsIDE3MSwgMSwgMjE0LCAyNywgMTcxLCAxLCAyMjAsIDEwMiwgMTcxLCAxLCAyMTgsIDIyMywgCisgICAgMTcxLCAxLCAyMDYsIDE3MSwgMSwgMTYyLCAxNzEsIDUsIDIyNywgMjA1LCAxNzEsIDUsIDI1MywgMTc1LCAxNzEsIDI1LCA1LCAKKyAgICAyNTUsIDczLCAxNzEsIDI1LCA1LCA3MywgMTcxLCAyNSwgNSwgMjM2LCAzMywgMTcxLCAyNSwgNSwgNzAsIDE3MSwgMjUsIDUsIAorICAgIDIxNCwgMTE4LCAxNzEsIDI1LCA1LCAxNDksIDE1MywgMTcxLCAyNSwgNSwgMTQ5LCAyMjIsIDE4MCwgMTcxLCAyNSwgNSwgCisgICAgMjUxLCAyLCA3NSwgMTcxLCAyNSwgNSwgNzUsIDE3MSwgMjUsIDUsIDI1NCwgMjAxLCAxNzEsIDI1LCA1LCAyNTEsIDIsIDc2LCAKKyAgICAxNzEsIDI1LCA1LCA3NiwgMTcxLCAyNSwgNSwgMjUzLCAxOTIsIDE3MSwgNSwgMjEzLCAxNTIsIDE3MSwgMjI2LCAyMDQsIAorICAgIDE3MSwgMSwgMTQ5LCAyMjIsIDE4MCwgMTcxLCAxLCAxNDksIDIzMiwgMTg1LCAxNzEsIDI1LCA1LCAxNDksIDE1NiwgMTcxLCAKKyAgICAyNSwgNSwgMTQ5LCAyMzIsIDE4NSwgMTcxLCAyMSwgMjEwLCA4NiwgMTcxLCAyMSwgMTEwLCAxNzEsIDIxLCAxMDUsIDE3MSwgCisgICAgMjEsIDE1OCwgMTcxLCAyMSwgMTYxLCAxNzEsIDIxLCAxODksIDE3MSwgMjEsIDE5NCwgMTcxLCAyMSwgMTk4LCAxNzEsIDIxLCAKKyAgICAxOTUsIDE3MSwgMjEsIDIwMCwgMTcxLCAyNTUsIDIxLCA1MCwgMTcxLCAyMjIsIDExOCwgNTAsIDE1NywgNSwgMjUwLCAyNTUsIAorICAgIDE1NywgNSwgMjU0LCA3NSwgMTU3LCA1LCAyMTMsIDE0NywgMTU3LCAxLCA2MSwgMTU3LCAxLCAyNTUsIDczLCAxNTcsIDEsIAorICAgIDczLCAxNTcsIDEsIDIzNiwgMzMsIDE1NywgMSwgNzAsIDE1NywgMSwgMjE0LCAxMTgsIDE1NywgMSwgMTQ5LCAxNTMsIDE1NywgCisgICAgMSwgMTQ5LCAxNTYsIDE1NywgMSwgNzUsIDE1NywgMSwgMjU0LCAyMDEsIDE1NywgMSwgNzYsIDE1NywgMSwgMjUzLCAxOTIsIAorICAgIDE1NywgMSwgMTc2LCAxNTcsIDEsIDIzNCwgMTMyLCAxNTcsIDEsIDI0MywgMTM1LCAxNTcsIDEsIDI0MiwgMjQ5LCAxNTcsIAorICAgIDEsIDIyOSwgNzcsIDE1NywgMSwgMjUxLCAzMywgMTU3LCAxLCAyNTAsIDE1NywgMTU3LCAxLCAyMzUsIDE0MSwgMTU3LCAxLCAKKyAgICAyMzUsIDExNCwgMTU3LCAxLCAyMjcsIDE2NSwgMTU3LCAxLCAyMTUsIDE1NiwgMTU3LCAxLCAyMTUsIDE0NCwgMTU3LCAxLCAKKyAgICAyNDgsIDEzNSwgMTU3LCAxLCAyNDgsIDExOSwgMTU3LCAxLCAyMjgsIDExMCwgMTU3LCAxLCAyMTcsIDEwNSwgMTU3LCAxLCAKKyAgICAyMTYsIDIwOCwgMTU3LCAxLCAyNDgsIDIyMSwgMTU3LCAxLCAyNDgsIDI1LCAxNTcsIDEsIDE5NywgMTU3LCAxLCAxOTAsIAorICAgIDE1NywgMSwgMjI1LCAxNDcsIDE1NywgMSwgMjUyLCAxOTEsIDE1NywgMSwgMjUyLCAxOCwgMTU3LCAxLCAxODQsIDE1NywgMSwgCisgICAgMTkxLCAxNTcsIDEsIDIwNSwgMTU3LCAxLCAyMzMsIDEzNSwgMTU3LCAxLCAyMzIsIDE4NCwgMTU3LCAxLCAyMTQsIDI3LCAKKyAgICAxNTcsIDEsIDIyMCwgMTAyLCAxNTcsIDEsIDIxOCwgMjIzLCAxNTcsIDEsIDIwNiwgMTU3LCAxLCAxNjIsIDE1NywgNSwgCisgICAgMjI3LCAyMDUsIDE1NywgNSwgMjUzLCAxNzUsIDE1NywgMjUsIDUsIDI1NSwgNzMsIDE1NywgMjUsIDUsIDczLCAxNTcsIDI1LCAKKyAgICA1LCAyMzYsIDMzLCAxNTcsIDI1LCA1LCA3MCwgMTU3LCAyNSwgNSwgMjE0LCAxMTgsIDE1NywgMjUsIDUsIDE0OSwgMTUzLCAKKyAgICAxNTcsIDI1LCA1LCAxNDksIDIyMiwgMTgwLCAxNTcsIDI1LCA1LCA3NSwgMTU3LCAyNSwgNSwgMjU0LCAyMDEsIDE1NywgMjUsIAorICAgIDUsIDc2LCAxNTcsIDI1LCA1LCAyNTMsIDE5MiwgMTU3LCA1LCAyMTMsIDE1MiwgMTU3LCAyNTQsIDIwMiwgMjMzLCAyMywgCisgICAgNzgsIDE1NywgMjUzLCAxOTMsIDIzMywgMjMsIDc4LCAxNTcsIDEsIDIyMiwgMTc5LCAxNTcsIDEsIDIyMywgMzksIDE1NywgCisgICAgMSwgMjEwLCAxNjgsIDE1NywgMSwgMTQ5LCAyMjIsIDE4MCwgMTU3LCAxLCAxNDksIDIzMiwgMTg1LCAxNTcsIDI1LCA1LCAKKyAgICAxNDksIDE1NiwgMTU3LCAyNSwgNSwgMTQ5LCAyMzIsIDE4NSwgMTU3LCAyMSwgMjEwLCA4NiwgMTU3LCAyMSwgMTEwLCAxNTcsIAorICAgIDIxLCAxMDUsIDE1NywgMjEsIDE1OCwgMTU3LCAyMSwgMTYxLCAxNTcsIDIxLCAxODksIDE1NywgMjEsIDE5NCwgMTU3LCAyMSwgCisgICAgMTk4LCAxNTcsIDIxLCAxOTUsIDE1NywgMjEsIDIwMCwgMTU3LCAyMzUsIDE2MSwgMTU3LCAxLCAyMTIsIDY1LCAxNTcsIAorICAgIDI0NCwgMiwgMTIzLCAyMjQsIDIxLCAxNTcsIDI0NCwgMiwgMTIzLCAyNDIsIDI3LCAxNTcsIDI0NCwgMiwgMTM0LCAyMjQsIAorICAgIDE5LCAxNTcsIDI0NCwgMiwgMTIzLCAyMTksIDExNywgMTU3LCAyNDQsIDIsIDEyMywgMjQ1LCAxODgsIDE1NywgMjQ0LCAyLCAKKyAgICAxMzQsIDIxOSwgMTE2LCAzNiwgNSwgMjU0LCA3NSwgMzYsIDUsIDIxMywgMTQ3LCAzNiwgMSwgNjEsIDM2LCAxLCAyNTUsIAorICAgIDczLCAzNiwgMSwgNzMsIDM2LCAxLCAyMzYsIDMzLCAzNiwgMSwgNzAsIDM2LCAxLCAyMTQsIDExOCwgMzYsIDEsIDc1LCAzNiwgCisgICAgMSwgMjQ1LCAyMDksIDM2LCAxLCAyNTQsIDIwMSwgMzYsIDEsIDc2LCAzNiwgMSwgMjI2LCAxODMsIDM2LCAxLCAyNTMsIAorICAgIDE5MiwgMzYsIDEsIDE3NiwgMzYsIDEsIDIyOSwgNzcsIDM2LCAxLCAyNTEsIDMzLCAzNiwgMSwgMjM1LCAxNDEsIDM2LCAxLCAKKyAgICAyMjcsIDE2NSwgMzYsIDEsIDIxNSwgMTU2LCAzNiwgMSwgMjI4LCAxMTAsIDM2LCAxLCAyMTcsIDEwNSwgMzYsIDEsIDE5NywgCisgICAgMzYsIDEsIDIyOCwgOTIsIDM2LCAxLCAxOTAsIDM2LCAxLCAxODQsIDM2LCAxLCAxOTEsIDM2LCAxLCAyMDUsIDM2LCAxLCAKKyAgICAyMjIsIDE3OSwgMzYsIDEsIDIzMywgMTM1LCAzNiwgMSwgMjMyLCAxODQsIDM2LCAxLCAyMzIsIDE3NSwgMzYsIDEsIDIxNCwgCisgICAgMjcsIDM2LCAxLCAyMjAsIDEwMiwgMzYsIDEsIDIxOCwgMjIzLCAzNiwgMSwgMjA2LCAzNiwgMSwgMTYyLCAzNiwgMjUsIDUsIAorICAgIDI1NSwgNzMsIDM2LCAyNSwgNSwgNzMsIDM2LCAyNSwgNSwgMjM2LCAzMywgMzYsIDI1LCA1LCA3MCwgMzYsIDI1LCA1LCAKKyAgICAyMTQsIDExOCwgMzYsIDI1LCA1LCA3NSwgMzYsIDI1LCA1LCAyNDUsIDIwOSwgMzYsIDI1LCA1LCAyNTQsIDIwMSwgMzYsIAorICAgIDI1LCA1LCA3NiwgMzYsIDI1LCA1LCAyMjYsIDE4MywgMzYsIDI1LCA1LCAyNTMsIDE5MiwgMzYsIDUsIDIxMywgMTUyLCAzNiwgCisgICAgMjI2LCAyMDQsIDM2LCAyNTMsIDE5MywgMjMzLCAyMywgNzgsIDM2LCAyMSwgMjEwLCA4NiwgMzYsIDIxLCAxMTAsIDM2LCAKKyAgICAyMSwgMTA1LCAzNiwgMjEsIDE1OCwgMzYsIDIxLCAxNjEsIDM2LCAyMSwgMTg5LCAzNiwgMjEsIDE5NCwgMzYsIDIxLCAxOTgsIAorICAgIDM2LCAyMSwgMTk1LCAzNiwgMjEsIDIwMCwgMzYsIDU0LCAyMTYsIDI0NywgMzYsIDU0LCAxMjMsIDI0MCwgMjEwLCAzNiwgCisgICAgNTQsIDEyMywgMjE2LCAxNDcsIDM2LCAyNDgsIDE0NiwgNTAsIDM2LCAyMzAsIDEzNSwgNTAsIDM2LCAyMTEsIDQ1LCA1MCwgCisgICAgMzYsIDI0OCwgODcsIDUwLCAzNiwgMjQ5LCAxMzksIDUwLCAzNiwgMjUzLCAyMzgsIDc3LCA1MCwgMzYsIDIyMiwgMTE4LCAKKyAgICA1MCwgMzYsIDU0LCA1MCwgMTQ4LCA1LCAyNTAsIDI1NSwgMTQ4LCA1LCAyNTQsIDc1LCAxNDgsIDUsIDIxMywgMTQ3LCAxNDgsIAorICAgIDEsIDYxLCAxNDgsIDEsIDI1NSwgNzMsIDE0OCwgMSwgNzMsIDE0OCwgMSwgMjM2LCAzMywgMTQ4LCAxLCA3MCwgMTQ4LCAxLCAKKyAgICAyMTQsIDExOCwgMTQ4LCAxLCAxNDksIDE1MywgMTQ4LCAxLCAxNDksIDE1NiwgMTQ4LCAxLCA3NSwgMTQ4LCAxLCAyNDUsIAorICAgIDIwOSwgMTQ4LCAxLCAyNTQsIDIwMSwgMTQ4LCAxLCA3NiwgMTQ4LCAxLCAyMjYsIDE4MywgMTQ4LCAxLCAyNTMsIDE5MiwgCisgICAgMTQ4LCAxLCAxNzYsIDE0OCwgMSwgMjM0LCAxMzIsIDE0OCwgMSwgMjQzLCAxMzUsIDE0OCwgMSwgMjQyLCAyNDksIDE0OCwgCisgICAgMSwgMjI5LCA3NywgMTQ4LCAxLCAyNTEsIDMzLCAxNDgsIDEsIDI1MCwgMTU3LCAxNDgsIDEsIDIzNSwgMTQxLCAxNDgsIDEsIAorICAgIDIzNSwgMTE0LCAxNDgsIDEsIDIyNywgMTY1LCAxNDgsIDEsIDIxNSwgMTU2LCAxNDgsIDEsIDIxNSwgMTQ0LCAxNDgsIDEsIAorICAgIDI0OCwgMTM1LCAxNDgsIDEsIDI0OCwgMTE5LCAxNDgsIDEsIDIyOCwgMTEwLCAxNDgsIDEsIDIxNywgMTA1LCAxNDgsIDEsIAorICAgIDIxNiwgMjA4LCAxNDgsIDEsIDI0OCwgMjIxLCAxNDgsIDEsIDI0OCwgMjUsIDE0OCwgMSwgMTk3LCAxNDgsIDEsIDE5MCwgCisgICAgMTQ4LCAxLCAyMjUsIDE0NywgMTQ4LCAxLCAyNTIsIDE5MSwgMTQ4LCAxLCAyNTIsIDE4LCAxNDgsIDEsIDE4NCwgMTQ4LCAxLCAKKyAgICAxOTEsIDE0OCwgMSwgMjA1LCAxNDgsIDEsIDIyMiwgMTc5LCAxNDgsIDEsIDIzMywgMTM1LCAxNDgsIDEsIDIzMiwgMTg0LCAKKyAgICAxNDgsIDEsIDIxNCwgMjcsIDE0OCwgMSwgMjIwLCAxMDIsIDE0OCwgMSwgMjE4LCAyMjMsIDE0OCwgMSwgMjA2LCAxNDgsIDEsIAorICAgIDE2MiwgMTQ4LCA1LCAyNTMsIDE3NSwgMTQ4LCAyNSwgNSwgMjU1LCA3MywgMTQ4LCAyNSwgNSwgNzMsIDE0OCwgMjUsIDUsIAorICAgIDIzNiwgMzMsIDE0OCwgMjUsIDUsIDcwLCAxNDgsIDI1LCA1LCAyMTQsIDExOCwgMTQ4LCAyNSwgNSwgMTQ5LCAxNTMsIDE0OCwgCisgICAgMjUsIDUsIDE0OSwgMjIyLCAxODAsIDE0OCwgMjUsIDUsIDc1LCAxNDgsIDI1LCA1LCAyNDUsIDIwOSwgMTQ4LCAyNSwgNSwgCisgICAgMjU0LCAyMDEsIDE0OCwgMjUsIDUsIDc2LCAxNDgsIDI1LCA1LCAyMjYsIDE4MywgMTQ4LCAyNSwgNSwgMjUzLCAxOTIsIAorICAgIDE0OCwgNSwgMjEzLCAxNTIsIDE0OCwgMjMzLCAyMywgNzgsIDE0OCwgMjU0LCAyMDIsIDIzMywgMjMsIDc4LCAxNDgsIDEsIAorICAgIDIxNSwgMTgzLCAxNDgsIDEsIDI0NiwgMzgsIDE0OCwgMSwgMTQ5LCAyMjIsIDE4MCwgMTQ4LCAxLCAxNDksIDIzMiwgMTg1LCAKKyAgICAxNDgsIDI1LCA1LCAxNDksIDE1NiwgMTQ4LCAyNSwgNSwgMTQ5LCAyMzIsIDE4NSwgMTQ4LCAyMSwgMjEwLCA4NiwgMTQ4LCAKKyAgICAyMSwgMTEwLCAxNDgsIDIxLCAxMDUsIDE0OCwgMjEsIDE1OCwgMTQ4LCAyMSwgMTYxLCAxNDgsIDIxLCAxODksIDE0OCwgMjEsIAorICAgIDE5NCwgMTQ4LCAyMSwgMTk4LCAxNDgsIDIxLCAxOTUsIDE0OCwgMjEsIDIwMCwgMTQ4LCAyNDQsIDIsIDIxLCAyMTAsIDg3LCAKKyAgICAzMSwgMjI2LCAyMzcsIDIyNCwgMjIzLCA2NCwgMTYxLCAxNDgsIDI0NCwgMiwgMjEsIDEyMywgMzEsIDIyNiwgMjM3LCAyMjQsIAorICAgIDIyMywgNjQsIDE2MSwgMTQ4LCAyNDQsIDIsIDIxLCAxMTMsIDMxLCAyMjYsIDIzNywgMjI0LCAyMjMsIDY0LCAxNjEsIDE0OCwgCisgICAgMjQ0LCAyLCAyMSwgMTM0LCAzMSwgMjI2LCAyMzcsIDIyNCwgMjIzLCA2NCwgMTYxLCAxNDgsIDI0NCwgMiwgMjEsIDEyMywgCisgICAgMzEsIDI0NSwgNDIsIDIyNCwgMjIzLCA2NCwgMTYxLCAxNDgsIDI0NCwgMiwgMjEsIDExMywgMzEsIDI0NSwgNDIsIDIyNCwgCisgICAgMjIzLCA2NCwgMTYxLCAxNDgsIDI0NCwgMiwgMjEsIDEzNCwgMzEsIDI0NSwgNDIsIDIyNCwgMjIzLCA2NCwgMTYxLCAxNDgsIAorICAgIDUsIDIxNSwgODQsIDE2NSwgNSwgMjU0LCA3NSwgMTY1LCA1LCAyMTMsIDE0NywgMTY1LCAxLCA2MSwgMTY1LCAxLCAyNTUsIAorICAgIDczLCAxNjUsIDEsIDczLCAxNjUsIDEsIDIzNiwgMzMsIDE2NSwgMSwgNzAsIDE2NSwgMSwgMjE0LCAxMTgsIDE2NSwgMSwgCisgICAgMTQ5LCAxNTMsIDE2NSwgMSwgMTQ5LCAxNTYsIDE2NSwgMSwgNzUsIDE2NSwgMSwgMjQ1LCAyMDksIDE2NSwgMSwgMjU0LCAKKyAgICAyMDEsIDE2NSwgMSwgNzYsIDE2NSwgMSwgMjI2LCAxODMsIDE2NSwgMSwgMjUzLCAxOTIsIDE2NSwgMSwgMTc2LCAxNjUsIDEsIAorICAgIDIzNCwgMTMyLCAxNjUsIDEsIDI0MywgMTM1LCAxNjUsIDEsIDI0MiwgMjQ5LCAxNjUsIDEsIDIyOSwgNzcsIDE2NSwgMSwgCisgICAgMjUxLCAzMywgMTY1LCAxLCAyNTAsIDE1NywgMTY1LCAxLCAyMzUsIDE0MSwgMTY1LCAxLCAyMzUsIDExNCwgMTY1LCAxLCAKKyAgICAyMjcsIDE2NSwgMTY1LCAxLCAyMTUsIDE1NiwgMTY1LCAxLCAyMTUsIDE0NCwgMTY1LCAxLCAyNDgsIDEzNSwgMTY1LCAxLCAKKyAgICAyNDgsIDExOSwgMTY1LCAxLCAyMjgsIDExMCwgMTY1LCAxLCAyMTcsIDEwNSwgMTY1LCAxLCAyMTYsIDIwOCwgMTY1LCAxLCAKKyAgICAyNDgsIDIyMSwgMTY1LCAxLCAyNDgsIDI1LCAxNjUsIDEsIDE5NywgMTY1LCAxLCAxOTAsIDE2NSwgMSwgMjI1LCAxNDcsIAorICAgIDE2NSwgMSwgMjUyLCAxOTEsIDE2NSwgMSwgMjUyLCAxOCwgMTY1LCAxLCAxODQsIDE2NSwgMSwgMTkxLCAxNjUsIDEsIDIwNSwgCisgICAgMTY1LCAxLCAyMjIsIDE3OSwgMTY1LCAxLCAyMzMsIDEzNSwgMTY1LCAxLCAyMzIsIDE4NCwgMTY1LCAxLCAyMTQsIDI3LCAKKyAgICAxNjUsIDEsIDIyMCwgMTAyLCAxNjUsIDEsIDIxOCwgMjIzLCAxNjUsIDEsIDIwNiwgMTY1LCAxLCAxNjIsIDE2NSwgNSwgCisgICAgMjI3LCAyMDUsIDE2NSwgNSwgMjUzLCAxNzUsIDE2NSwgMjUsIDUsIDI1NSwgNzMsIDE2NSwgMjUsIDUsIDczLCAxNjUsIDI1LCAKKyAgICA1LCAyMzYsIDMzLCAxNjUsIDI1LCA1LCA3MCwgMTY1LCAyNSwgNSwgMjE0LCAxMTgsIDE2NSwgMjUsIDUsIDE0OSwgMTUzLCAKKyAgICAxNjUsIDI1LCA1LCAxNDksIDIyMiwgMTgwLCAxNjUsIDI1LCA1LCA3NSwgMTY1LCAyNSwgNSwgMjQ1LCAyMDksIDE2NSwgMjUsIAorICAgIDUsIDI1NCwgMjAxLCAxNjUsIDI1LCA1LCA3NiwgMTY1LCAyNSwgNSwgMjI2LCAxODMsIDE2NSwgMjUsIDUsIDI1MywgMTkyLCAKKyAgICAxNjUsIDUsIDIxMywgMTUyLCAxNjUsIDIzMywgMjMsIDc4LCAxNjUsIDI1NCwgMjAyLCAyMzMsIDIzLCA3OCwgMTY1LCAxLCAKKyAgICAyNDQsIDE5NiwgMTY1LCAxLCAxNDksIDIyMiwgMTgwLCAxNjUsIDEsIDE0OSwgMjMyLCAxODUsIDE2NSwgMjUsIDUsIDE0OSwgCisgICAgMTU2LCAxNjUsIDI1LCA1LCAxNDksIDIzMiwgMTg1LCAxNjUsIDIxLCAyMTAsIDg2LCAxNjUsIDIxLCAxMTAsIDE2NSwgMjEsIAorICAgIDEwNSwgMTY1LCAyMSwgMTU4LCAxNjUsIDIxLCAxNjEsIDE2NSwgMjEsIDE4OSwgMTY1LCAyMSwgMTk0LCAxNjUsIDIxLCAKKyAgICAxOTgsIDE2NSwgMjEsIDE5NSwgMTY1LCAyMSwgMjAwLCAxNjUsIDUsIDIzNSwgMTAyLCAxNjUsIDUsIDIxNCwgMTYxLCAxMzYsIAorICAgIDUsIDI1NCwgNzUsIDEzNiwgNSwgMjEzLCAxNDcsIDEzNiwgMSwgNjEsIDEzNiwgMSwgMjU1LCA3MywgMTM2LCAxLCA3MywgCisgICAgMTM2LCAxLCAyMzYsIDMzLCAxMzYsIDEsIDcwLCAxMzYsIDEsIDIxNCwgMTE4LCAxMzYsIDEsIDE0OSwgMTUzLCAxMzYsIDEsIAorICAgIDE0OSwgMTU2LCAxMzYsIDEsIDc1LCAxMzYsIDEsIDI0NSwgMjA5LCAxMzYsIDEsIDI1NCwgMjAxLCAxMzYsIDEsIDc2LCAKKyAgICAxMzYsIDEsIDIyNiwgMTgzLCAxMzYsIDEsIDI1MywgMTkyLCAxMzYsIDEsIDE3NiwgMTM2LCAxLCAyMzQsIDEzMiwgMTM2LCAKKyAgICAxLCAyNDMsIDEzNSwgMTM2LCAxLCAyNDIsIDI0OSwgMTM2LCAxLCAyMjksIDc3LCAxMzYsIDEsIDI1MSwgMzMsIDEzNiwgMSwgCisgICAgMjUwLCAxNTcsIDEzNiwgMSwgMjM1LCAxNDEsIDEzNiwgMSwgMjM1LCAxMTQsIDEzNiwgMSwgMjI3LCAxNjUsIDEzNiwgMSwgCisgICAgMjE1LCAxNTYsIDEzNiwgMSwgMjE1LCAxNDQsIDEzNiwgMSwgMjQ4LCAxMzUsIDEzNiwgMSwgMjQ4LCAxMTksIDEzNiwgMSwgCisgICAgMjI4LCAxMTAsIDEzNiwgMSwgMjE3LCAxMDUsIDEzNiwgMSwgMjE2LCAyMDgsIDEzNiwgMSwgMjQ4LCAyMjEsIDEzNiwgMSwgCisgICAgMjQ4LCAyNSwgMTM2LCAxLCAxOTcsIDEzNiwgMSwgMjI4LCA5MiwgMTM2LCAxLCAxOTAsIDEzNiwgMSwgMjI1LCAxNDcsIAorICAgIDEzNiwgMSwgMjUyLCAxOTEsIDEzNiwgMSwgMjUyLCAxOCwgMTM2LCAxLCAxODQsIDEzNiwgMSwgMTkxLCAxMzYsIDEsIDIwNSwgCisgICAgMTM2LCAxLCAyMjIsIDE3OSwgMTM2LCAxLCAyMzMsIDEzNSwgMTM2LCAxLCAyMzIsIDE4NCwgMTM2LCAxLCAyMzIsIDE3NSwgCisgICAgMTM2LCAxLCAyMTQsIDI3LCAxMzYsIDEsIDIyMCwgMTAyLCAxMzYsIDEsIDIxOCwgMjIzLCAxMzYsIDEsIDIwNiwgMTM2LCAxLCAKKyAgICAxNjIsIDEzNiwgMSwgMjE1LCAxMjUsIDEzNiwgNSwgMjUzLCAxNzUsIDEzNiwgMjUsIDUsIDI1NSwgNzMsIDEzNiwgMjUsIDUsIAorICAgIDczLCAxMzYsIDI1LCA1LCAyMzYsIDMzLCAxMzYsIDI1LCA1LCA3MCwgMTM2LCAyNSwgNSwgMjE0LCAxMTgsIDEzNiwgMjUsIAorICAgIDUsIDE0OSwgMTUzLCAxMzYsIDI1LCA1LCAxNDksIDIyMiwgMTgwLCAxMzYsIDI1LCA1LCA3NSwgMTM2LCAyNSwgNSwgMjQ1LCAKKyAgICAyMDksIDEzNiwgMjUsIDUsIDI1NCwgMjAxLCAxMzYsIDI1LCA1LCA3NiwgMTM2LCAyNSwgNSwgMjI2LCAxODMsIDEzNiwgMjUsIAorICAgIDUsIDI1MywgMTkyLCAxMzYsIDUsIDIxMywgMTUyLCAxMzYsIDEsIDU5LCAyMjMsIDczLCAxMzYsIDI1MywgMTkzLCAyMzMsIAorICAgIDIzLCA3OCwgMTM2LCAxLCAxNDksIDIyMiwgMTgwLCAxMzYsIDEsIDE0OSwgMjMyLCAxODUsIDEzNiwgMjUsIDUsIDE0OSwgCisgICAgMTU2LCAxMzYsIDI1LCA1LCAxNDksIDIzMiwgMTg1LCAxMzYsIDIxLCAyMTAsIDg2LCAxMzYsIDIxLCAxMTAsIDEzNiwgMjEsIAorICAgIDEwNSwgMTM2LCAyMSwgMTU4LCAxMzYsIDIxLCAxNjEsIDEzNiwgMjEsIDE4OSwgMTM2LCAyMSwgMTk0LCAxMzYsIDIxLCAKKyAgICAxOTgsIDEzNiwgMjEsIDE5NSwgMTM2LCAyMSwgMjAwLCAxMzYsIDU0LCAyMTYsIDI0NywgMTM2LCA1NCwgMTIzLCAyNDAsIAorICAgIDIxMCwgMTM2LCA1NCwgMTIzLCAyMTYsIDE0NywgMTM2LCAyNDQsIDIsIDEyMywgMjI0LCAyMSwgMTM2LCAyNDQsIDIsIDEyMywgCisgICAgMjQyLCAyNywgMTM2LCAyNDQsIDIsIDEzNCwgMjI0LCAxOSwgMTM2LCAyNDgsIDE1MCwgNzgsIDEzNiwgMSwgMjUwLCA5OSwgCisgICAgMjI4LCAxMTEsIDEzNiwgMSwgMjUwLCA5OSwgMjMwLCAyNSwgMTM2LCAxLCAyNTAsIDk5LCAyMjIsIDE4MCwgMTM2LCAxLCAKKyAgICAyNTAsIDk5LCAxNTYsIDEzNiwgMSwgMjUwLCA5OSwgMjMyLCAxODUsIDEzNiwgMSwgMjUwLCA5OSwgMjM1LCAyMywgMTc1LCAKKyAgICA1LCAyNTQsIDc0LCAxNzUsIDUsIDIxMywgMTQ2LCAxNzUsIDEsIDI1MywgMTY1LCAxNzUsIDEsIDI1NSwgMjcsIDE3NSwgMSwgCisgICAgMjU0LCAyMjMsIDE3NSwgMSwgMjU0LCAyMzgsIDE3NSwgMSwgMjM1LCAxNTEsIDE3NSwgMSwgMjM2LCAzMiwgMTc1LCAxLCAKKyAgICAyMTQsIDExMCwgMTc1LCAxLCAyMTQsIDExMiwgMTc1LCAxLCAyMzUsIDE3MywgMTc1LCAxLCAyMzUsIDE3NCwgMTc1LCAxLCAKKyAgICAyMzYsIDE4LCAxNzUsIDEsIDIzNiwgMjAsIDE3NSwgMSwgMjQ1LCAxNywgMTc1LCAxLCAyNDUsIDIwNCwgMTc1LCAxLCAyNTQsIAorICAgIDE4OCwgMTc1LCAxLCAyMjYsIDEwOCwgMTc1LCAxLCAyMjYsIDE3NywgMTc1LCAxLCAyNTMsIDE3OCwgMTc1LCAxLCAyNTQsIAorICAgIDE0NiwgMjM0LCAxODcsIDE3NSwgMSwgMjMxLCAyMDksIDIzNCwgMTg3LCAxNzUsIDEsIDI1NCwgMTQ2LCAyNDMsIDgyLCAKKyAgICAxNzUsIDEsIDIzMSwgMjA5LCAyNDMsIDgyLCAxNzUsIDEsIDIzNCwgMjI5LCAyMjksIDIyMiwgMTc1LCAxLCAyMjEsIDIzNiwgCisgICAgMjQzLCA4MiwgMTc1LCAxLCAyNTQsIDE0NiwgMjUwLCAyMTYsIDE3NSwgMSwgMjMxLCAyMDksIDI1MCwgMjE2LCAxNzUsIDEsIAorICAgIDI1NCwgMTQ2LCAyMzUsIDEyNywgMTc1LCAxLCAyMzEsIDIwOSwgMjM1LCAxMjcsIDE3NSwgMSwgMjE3LCA5OCwgMjI5LCAKKyAgICAyMjIsIDE3NSwgMSwgMjE3LCA5OCwgMjIxLCAyMzUsIDIyOSwgMjIzLCAxNzUsIDEsIDIyMSwgMjM2LCAyMzUsIDEyNywgCisgICAgMTc1LCAxLCAyNTQsIDE0NiwgMjE1LCAxNTIsIDE3NSwgMSwgMjMxLCAyMDksIDIxNSwgMTUyLCAxNzUsIDEsIDI1NCwgMTQ2LCAKKyAgICAyNDgsIDEyNiwgMTc1LCAxLCAyMzEsIDIwOSwgMjQ4LCAxMjYsIDE3NSwgMSwgMjMwLCA1MywgMjI5LCAxODAsIDE3NSwgMSwgCisgICAgMjIxLCAyMzYsIDI0OCwgMTI2LCAxNzUsIDEsIDI1NCwgMTQ2LCAyMTcsIDMwLCAxNzUsIDEsIDIzMSwgMjA5LCAyMTcsIDMwLCAKKyAgICAxNzUsIDEsIDI1NCwgMTQ2LCAyNDgsIDE0NCwgMTc1LCAxLCAyMzEsIDIwOSwgMjQ4LCAxNDQsIDE3NSwgMSwgMjQ4LCAxNzQsIAorICAgIDIyOSwgMTgwLCAxNzUsIDEsIDIyMSwgMjM2LCAyNDgsIDE0NCwgMTc1LCAxLCAyNTQsIDE0NiwgMjI1LCAyMjgsIDE3NSwgMSwgCisgICAgMjMxLCAyMDksIDIyNSwgMjI4LCAxNzUsIDEsIDI1NCwgMTQ2LCAyNTIsIDExMiwgMTc1LCAxLCAyMzEsIDIwOSwgMjUyLCAKKyAgICAxMTIsIDE3NSwgMSwgMjMxLCAxMzEsIDE3NSwgMSwgMjU0LCAxMzEsIDI1MiwgMTEyLCAxNzUsIDEsIDIxMSwgNTEsIDE3NSwgCisgICAgMSwgMjIzLCAxMzMsIDE3NSwgMSwgMjQ4LCAxNzQsIDIzMywgNjcsIDE3NSwgMSwgMjE0LCAxLCAxNzUsIDEsIDIxNywgOTgsIAorICAgIDIyMSwgMjEwLCAxNzUsIDEsIDIzMCwgNTMsIDIyMSwgMjEwLCAxNzUsIDEsIDI0OCwgMTc0LCAyMjEsIDIxMCwgMTc1LCAxLCAKKyAgICAyNDEsIDI0MiwgMTc1LCAxLCAyMzAsIDUzLCAyMzMsIDY3LCAxNzUsIDEsIDI0NCwgMTU2LCAxNzUsIDUsIDI1NCwgMTc3LCAKKyAgICAxNzUsIDI1LCA1LCAyNTQsIDIzMywgMTc1LCAyNSwgNSwgMjM0LCAxNTUsIDI1NCwgMjQwLCAxNzUsIDI1LCA1LCAyNDcsIAorICAgIDIyOCwgMjU0LCAyNDAsIDE3NSwgMjUsIDUsIDIzNCwgMTU1LCAyMzUsIDE3MCwgMTc1LCAyNSwgNSwgMjQ3LCAyMjgsIDIzNSwgCisgICAgMTcwLCAxNzUsIDI1LCA1LCAyMzQsIDE1NSwgMjI2LCA4OCwgMTc1LCAyNSwgNSwgMjQ3LCAyMjgsIDIyNiwgODgsIDE3NSwgCisgICAgMjUsIDUsIDI0MywgMTI0LCAxNzUsIDI1LCA1LCAyMzQsIDE1LCAxNzUsIDI1LCA1LCAyNDcsIDIyOCwgMjM0LCAxNSwgMTc1LCAKKyAgICAyNSwgNSwgMjM0LCAxNywgMjQ4LCA2NywgMTc1LCAyNSwgNSwgMjM0LCAxNiwgMjQyLCA0NywgMjU0LCAyMzMsIDE3NSwgMjUsIAorICAgIDUsIDIzNCwgMTYsIDI0MiwgNDcsIDI0NywgMjI4LCAyNTQsIDIzMywgMTc1LCAyNSwgNSwgMjM0LCAxNiwgMjQyLCA0NywgCisgICAgMjQzLCA4MSwgMTc1LCAyNSwgNSwgMjQzLCA4MSwgMTc1LCAyNSwgNSwgMjQ3LCAyMjgsIDI0MywgMTI0LCAxNzUsIDI1LCA1LCAKKyAgICAyNDcsIDIyOCwgMjQzLCA4MSwgMTc1LCAyMjQsIDE0MSwgMjMzLCAyMDcsIDE2OCwgMTM1LCAyMzQsIDI5LCAyMzQsIDI0NiwgCisgICAgMTY4LCAxMzUsIDIzNCwgMTA2LCAyMzQsIDEyOCwgMTY4LCAxMzUsIDIzNCwgMTA2LCAyMzQsIDk5LCAxNjgsIDEzNSwgMjM0LCAKKyAgICAxMDYsIDIzNCwgOTUsIDE2OCwgMTM1LCAyMzQsIDEwNiwgMjM0LCAxMDMsIDE2OCwgMTM1LCAyMzQsIDEwNiwgMjIzLCAxNTQsIAorICAgIDE2OCwgMTM1LCAyMjksIDUsIDIyOCwgMjQ4LCAxNjgsIDEzNSwgMjUwLCA4NywgMjUwLCAxNDcsIDE2OCwgMTM1LCAyNTAsIAorICAgIDg3LCAyNTAsIDk1LCAxNjgsIDEzNSwgMjUwLCA4NywgMjUwLCAxNDYsIDE2OCwgMTM1LCAyMTksIDU5LCAyMTksIDU4LCAKKyAgICAxNjgsIDEzNSwgMjUwLCA4NywgMjUwLCA4MywgMTY4LCAxMzUsIDIxMCwgMjQ1LCAyMTAsIDI1MiwgMTY4LCAxMzUsIDI0NywgCisgICAgMTQ2LCAyNTAsIDE1NCwgMTY4LCAxMzUsIDIxNiwgNDIsIDIyNSwgMjM4LCAxNjgsIDEzNSwgMjE2LCAxNTcsIDIxNiwgMjAwLCAKKyAgICAxNjgsIDEzNSwgMjE2LCAxNTcsIDIyOSwgMjAxLCAxNjgsIDEzNSwgMjE2LCAxNTcsIDIyNSwgMTExLCAxNjgsIDEzNSwgCisgICAgMjI4LCA3NSwgMjI5LCA5OCwgMTY4LCAxMzUsIDI0NywgMTQ2LCAyNDgsIDY4LCAxNjgsIDEzNSwgMjE2LCA0MiwgMjE3LCAKKyAgICA1NSwgMTY4LCAxMzUsIDIxNiwgMTU3LCAyMTYsIDEzMSwgMTY4LCAxMzUsIDIxNiwgMTU3LCAyMTYsIDIwNCwgMTY4LCAxMzUsIAorICAgIDIxNiwgMTU3LCAyMTYsIDE1NCwgMTY4LCAxMzUsIDIyOCwgNzUsIDIyNywgMjM3LCAxNjgsIDEzNSwgMjUxLCAyMDYsIDI1MiwgCisgICAgMTY0LCAxNjgsIDEzNSwgMjI1LCAxNywgMjI1LCA0MiwgMTY4LCAxMzUsIDIyNSwgMTIyLCAyMjUsIDExMywgMTY4LCAxMzUsIAorICAgIDI0NCwgNDQsIDI0NCwgMTk2LCAxNjgsIDEzNSwgMjI1LCAxMjIsIDIyNSwgMTQxLCAxNjgsIDEzNSwgMjQ0LCA0NCwgMjQ0LCAKKyAgICAxNzMsIDE2OCwgMTM1LCAyMjUsIDEyMiwgMjIxLCAyNDcsIDE2OCwgMTM1LCAyMzAsIDE2MiwgMTg0LCAxNjgsIDEzNSwgCisgICAgMjEwLCAyNDUsIDIxMSwgNzksIDE2OCwgMTM1LCAyMjIsIDIxMiwgMjIyLCAxMzksIDE2OCwgMTM1LCAyMjIsIDE0MCwgMTY4LCAKKyAgICAxMzUsIDIzMiwgMTU3LCAyMzIsIDIwNiwgMTY4LCAxMzUsIDIzMiwgOTgsIDE2OCwgMTM1LCAyMTEsIDIyOCwgMjEyLCA2MSwgCisgICAgMTY4LCAxMzUsIDIxOSwgNTksIDIyMiwgNiwgMTY4LCAxMzUsIDIxOSwgNTksIDIyMiwgMTE0LCAxNjgsIDEzNSwgMjE5LCAKKyAgICA1OSwgMjE4LCA4MiwgMTY4LCAxMzUsIDI0MSwgNjksIDI0MSwgMTU5LCAxNjgsIDEzNSwgMjMyLCAxNTcsIDI1MCwgNjgsIAorICAgIDE2OCwgMTM1LCAxNDQsIDI1NCwgMTE1LCAxNjgsIDEzNSwgMjQxLCA2OSwgMjI4LCA3MCwgMTY4LCAxMzUsIDIyNiwgNjgsIAorICAgIDE2OCwgMTM1LCAyMjEsIDIzMCwgNjEsIDE2OCwgMTM1LCAyMzEsIDIwNCwgMjQyLCAxNywgMTY4LCAxMzUsIDIyMSwgMjMwLCAKKyAgICAyNTUsIDczLCAxNjgsIDEzNSwgMjIxLCAyMzAsIDI1NCwgMTM2LCAxNjgsIDEzNSwgMjIxLCAyMzAsIDczLCAxNjgsIDEzNSwgCisgICAgMjIxLCAyMzAsIDIzNiwgMzMsIDE2OCwgMTM1LCAyMjEsIDIzMCwgMjE0LCAyMTQsIDE2OCwgMTM1LCAyMjEsIDIzMCwgMjE0LCAKKyAgICAyMTIsIDE2OCwgMTM1LCAyMjEsIDIzMCwgNzAsIDE2OCwgMTM1LCAyMjEsIDIzMCwgMjE0LCAxMTgsIDE2OCwgMTM1LCAyMjUsIAorICAgIDEyNCwgMTY4LCAyNDksIDk4LCAxNiwgMjUyLCAxNjUsIDE2OCwgMTM1LCAyMjEsIDIzMCwgNzUsIDE2OCwgMTM1LCAyMjEsIAorICAgIDIzMCwgMjU0LCAyNDMsIDE2OCwgMTM1LCAyMjEsIDIzMCwgNzYsIDE2OCwgMTM1LCAyMjEsIDIzMCwgMjU0LCAyMDIsIDIzMSwgCisgICAgMTk4LCAxNjgsIDEzNSwgMjIxLCAyMzAsIDI1NCwgMjAyLCAyMzEsIDE5OSwgMTY4LCAxMzUsIDIzMywgMTA2LCAxNjgsIAorICAgIDEzNSwgMjMxLCAxOTUsIDE2OCwgMTM1LCAyMzEsIDE5NiwgMTY4LCAxMzUsIDIzMSwgMjA0LCAyNDUsIDE4MCwgMTY4LCAKKyAgICAxMzUsIDIzMSwgMjA0LCAyMTYsIDE1NiwgMTY4LCAxMzUsIDIzMSwgMjA0LCAyMTUsIDIyOCwgMTY4LCAxMzUsIDIzMSwgCisgICAgMjA0LCAyNTAsIDEzNSwgMTY4LCAxMzUsIDIxNiwgMTk4LCAxNjgsIDEzNSwgMjI4LCAyMDUsIDE2OCwgMTM1LCAyMTEsIDczLCAKKyAgICAxNjgsIDEzNSwgMjQ0LCAzNSwgMTY4LCAyMSwgMjEwLCA4NiwgMTY4LCAyMSwgMTEwLCAxNjgsIDIxLCAxMDUsIDE2OCwgMjEsIAorICAgIDE1OCwgMTY4LCAyMSwgMTYxLCAxNjgsIDIxLCAxODksIDE2OCwgMjEsIDE5NCwgMTY4LCAyMSwgMTk4LCAxNjgsIDIxLCAKKyAgICAxOTUsIDE2OCwgMjEsIDIwMCwgMTY4LCAxMzUsIDI1NCwgMTExLCAxNjgsIDEzNSwgMjM0LCAxMDQsIDIwOSwgMjA5LCAxLCAKKyAgICAyMzQsIDI4LCAyMDksIDIwOSwgMSwgMjM0LCAxMDYsIDIxOCwgMzUsIDIwOSwgMjA5LCAxLCAyMzQsIDEwNiwgMjE3LCA2MiwgCisgICAgMjA5LCAyMDksIDEsIDIyOSwgNCwgMjA5LCAyMDksIDEsIDI0OSwgMjM4LCAyMDksIDIwOSwgMSwgMjE5LCA1OSwgMjE3LCAKKyAgICA2MiwgMjA5LCAyMDksIDEsIDIyNywgMTM0LCAyMDksIDIwOSwgMSwgMjQ3LCAxNDUsIDIwOSwgMjA5LCAxLCAxMTEsIDIwOSwgCisgICAgMjA5LCAxLCAyMTYsIDE1NywgMjE4LCAzNSwgMjA5LCAyMDksIDEsIDIxNiwgMTU3LCAyMTcsIDYyLCAyMDksIDIwOSwgMSwgCisgICAgMjI4LCA3NCwgMjA5LCAyMDksIDEsIDI1MSwgMjA1LCAyMDksIDIwOSwgMSwgMjI1LCAxNiwgMjA5LCAyMDksIDEsIDIyNSwgCisgICAgMTIyLCAyMTgsIDM1LCAyMDksIDIwOSwgMSwgMjQ0LCA0NCwgMjE3LCA2MiwgMjA5LCAyMDksIDEsIDIyNSwgMTIyLCAyMTcsIAorICAgIDYyLCAyMDksIDIwOSwgMSwgMjQ0LCA0NCwgMjE4LCAzNSwgMjA5LCAyMDksIDEsIDIzMCwgMTYxLCAyMDksIDIwOSwgMSwgCisgICAgMjEwLCAyNDQsIDIwOSwgMjA5LCAxLCAyMzIsIDE1NywgMjMyLCAyMDYsIDIwOSwgMjA5LCAxLCAyMzIsIDE1NywgMjMyLCAKKyAgICAxMjEsIDIwOSwgMjA5LCAxLCAyMTEsIDIyNywgMjA5LCAyMDksIDEsIDIxOSwgNTksIDIxOCwgMzUsIDIwOSwgMjA5LCAxLCAKKyAgICAyNDEsIDY5LCAyMTgsIDM1LCAyMDksIDIwOSwgMSwgNzYsIDIwOSwgMjA5LCAxLCAyNDEsIDY5LCAyMTcsIDYyLCAyMDksIAorICAgIDIwOSwgMjQ1LCAxNjMsIDIwOSwgMjA5LCAyNSwgNSwgNjEsIDIwOSwgMjA5LCAyNSwgNSwgMjMxLCAyMDQsIDIzNCwgMjM0LCAKKyAgICAyMDksIDIwOSwgMjUsIDUsIDI1NSwgNzMsIDIwOSwgMjA5LCAyNSwgNSwgMjU0LCAxMzYsIDIwOSwgMjA5LCAyNSwgNSwgNzMsIAorICAgIDIwOSwgMjA5LCAyNSwgNSwgMjM2LCAzMywgMjA5LCAyMDksIDI1LCA1LCAyMTEsIDExNywgMjA5LCAyMDksIDI1LCA1LCAKKyAgICAyMTAsIDE2OSwgMjA5LCAyMDksIDI1LCA1LCA3MCwgMjA5LCAyMDksIDI1LCA1LCAyMTQsIDExOCwgMjA5LCAyMDksIDI1LCAKKyAgICA1LCAyMzEsIDIwNCwgMjM0LCAxMywgMjA5LCAyMDksIDIyMCwgMTQ1LCA1LCAyMzIsIDE1NiwgMjA5LCAyMDksIDIyMCwgCisgICAgMTQ1LCA1LCAyMjcsIDEzNCwgMjA5LCAyMDksIDI1LCA1LCA3NSwgMjA5LCAyMDksIDI1LCA1LCAyNDUsIDE5NSwgMjA5LCAKKyAgICAyMDksIDI1LCA1LCA3NiwgMjA5LCAyMDksIDI1LCA1LCAyNTMsIDE2NywgMjA5LCAyMDksIDI1LCA1LCAyNTQsIDIwMSwgCisgICAgMjA5LCAyMDksIDIzNCwgMjksIDIzMywgMTM1LCAyMDksIDIwOSwgMTM4LCAyMzEsIDIwNCwgMjQ1LCAxODAsIDIwOSwgMjA5LCAKKyAgICAxMzgsIDIzMSwgMjA0LCAyMTYsIDE1NiwgMjA5LCAyMDksIDEzOCwgMjMxLCAyMDQsIDIxNiwgMTE3LCAyMDksIDIwOSwgCisgICAgMTM4LCAyMzEsIDIwNCwgMjUwLCAyMjMsIDIwOSwgMjA5LCAyNTEsIDQsIDc4LCAyMDksIDIwOSwgMjI4LCAyMTQsIDIwOSwgCisgICAgMjA5LCAyMSwgMjEwLCA4NiwgMjA5LCAyMDksIDIxLCAxMTAsIDIwOSwgMjA5LCAyMSwgMTA1LCAyMDksIDIwOSwgMjEsIAorICAgIDE1OCwgMjA5LCAyMDksIDIxLCAxNjEsIDIwOSwgMjA5LCAyMSwgMTg5LCAyMDksIDIwOSwgMjEsIDE5NCwgMjA5LCAyMDksIAorICAgIDIxLCAxOTgsIDIwOSwgMjA5LCAyMSwgMTk1LCAyMDksIDIwOSwgMjEsIDIwMCwgMjA5LCAyMDksIDI0MSwgNjksIDIyOCwgCisgICAgNzQsIDIwOSwgMjA5LCAyNDEsIDY5LCAyMzAsIDE2MSwgMjA5LCAyMDksIDEsIDIzNCwgMTA3LCAyNDIsIDE3NCwgMjA5LCAKKyAgICAyMDksIDEsIDIzNCwgMTA3LCAyMjcsIDEzNCwgNjMsIDMsIDIyNiwgMjA0LCA2MywgMTY0LCAyNDIsIDExNSwgMjExLCAwLCAKKyAgICAyMzAsIDI0OCwgMjE1LCAxODksIDYxLCA2MywgMTY0LCAyNDIsIDExNSwgMjExLCAwLCAyMzAsIDI0OCwgMjU1LCAxNTksIAorICAgIDIyMiwgMjE2LCAyNTIsIDc3LCAxODQsIDYzLCAxNjQsIDI0MiwgMTE1LCAyMTEsIDAsIDIzMCwgMjQ4LCAyNTUsIDE1OSwgCisgICAgMjQyLCAxMTUsIDIxNSwgMTczLCAxODQsIDYzLCAxNjQsIDY1LCAyMTEsIDAsIDIzMCwgMjQ4LCAyMzEsIDkzLCAxODQsIDYzLCAKKyAgICAxNjQsIDI0OSwgMjUyLCAyMTEsIDAsIDIzMCwgMjQ4LCAyMjAsIDEwOSwgMTg0LCA2MywgMTY0LCAyNTAsIDIzOSwgMjExLCAKKyAgICAwLCAyMzAsIDI0OCwgMjI1LCAxMTIsIDIyMCwgOTYsIDE4NCwgNjMsIDE2NCwgMjExLCAwLCAyMzAsIDI0OCwgMjE1LCAxNzMsIAorICAgIDIyMCwgOTYsIDE4NCwgNjMsIDE2NCwgMjIxLCAyMDgsIDIyMCwgOTUsIDYzLCAxNjQsIDI1MSwgMTI4LCAyMTEsIDAsIDIzMCwgCisgICAgMjQ3LCA2MywgMTY0LCAyNTEsIDIyMywgMjIwLCAzLCAyMTEsIDAsIDIzMCwgMjQ3LCA2MywgMTY0LCAyMzUsIDE5NywgMjE1LCAKKyAgICAxNzIsIDYzLCAxNjQsIDI0OCwgNjEsIDIxNSwgMTczLCAyNTEsIDEyNywgNjMsIDE2NCwgMjIwLCA5NSwgNjMsIDE2NCwgCisgICAgMjI3LCAxMzksIDIyMCwgOTUsIDYzLCAxNjQsIDIxNSwgMTczLCAyMjAsIDk1LCA2MywgMTY0LCAyMjcsIDEzOSwgMjE1LCAKKyAgICAxNzMsIDIyMCwgOTUsIDYzLCAxNjQsIDIyMiwgMjM2LCAyNTAsIDEyMiwgMjE4LCAyMzYsIDIyMCwgOTUsIDYzLCAxNjQsIAorICAgIDIyMywgNDIsIDI0MiwgMTQ2LCAyMjAsIDk1LCA2MywgMTY0LCAyNTAsIDIzOSwgMjU1LCAxNjMsIDIyMiwgMTQ0LCAyMzEsIAorICAgIDkyLCAxOTksIDI1MSwgNywgNjMsIDE2NCwgMjQyLCAxMTUsIDIxNSwgMTcyLCA2MywgMjMyLCAxNDQsIDUsIDI1MCwgMTU1LCAKKyAgICAyMjIsIDE0MywgNjMsIDIzMiwgMTQ0LCA1LCAyMzIsIDI1MiwgMjIyLCAxNDMsIDYzLCAyNTMsIDIxMiwgNSwgMjIwLCAxMDUsIAorICAgIDI0MywgNjUsIDI1NSwgMTY0LCAyMjIsIDE0MywgNjMsIDI1MywgMjEyLCA1LCAyNTUsIDE2MSwgMTkwLCA2MywgMjUzLCAKKyAgICAyMTIsIDUsIDIyMSwgMTgyLCAyMTUsIDE2OCwgNjMsIDUsIDIyMywgMTMwLCAyNDcsIDE1OSwgMjQzLCA2NCwgNjMsIDUsIAorICAgIDIyMywgMTMwLCAyNDcsIDE1OSwgMjQyLCAxNzYsIDYzLCA1LCAyMjMsIDEzMCwgMjQ3LCAxNTksIDI0MiwgMTE2LCA2MywgNSwgCisgICAgMjIzLCAxMzAsIDIyOSwgMjE5LCAyNDMsIDY0LCA2MywgNSwgMjIzLCAxMzAsIDIyOSwgMjE5LCAyNDIsIDE3NiwgNjMsIDUsIAorICAgIDIyMywgMTMwLCAyNDcsIDE1OSwgMjIzLCAxMzAsIDIyOSwgMjE4LCA2MywgMjEsIDIxMCwgODYsIDYzLCAyMSwgMTEwLCA2MywgCisgICAgMjEsIDEwNSwgNjMsIDIxLCAxNTgsIDYzLCAyMSwgMTYxLCA2MywgMjEsIDE4OSwgNjMsIDIxLCAxOTQsIDYzLCAyMSwgMTk4LCAKKyAgICA2MywgMjEsIDE5NSwgNjMsIDIxLCAyMDAsIDYzLCAyMSwgMTYzLCAxMTAsIDYzLCAyMSwgMTYzLCAxMDUsIDYzLCAyMSwgCisgICAgMTYzLCAxNTgsIDYzLCAyMSwgMTYzLCAxNjEsIDYzLCAyMSwgMTYzLCAxODksIDYzLCAyMSwgMTYzLCAxOTQsIDYzLCAyMSwgCisgICAgMTYzLCAxOTgsIDYzLCAyMSwgMTYzLCAxOTUsIDYzLCAyMSwgMTYzLCAyMDAsIDYzLCAyMSwgMTYzLCAyMTAsIDg2LCA2MywgCisgICAgMTY0LCAyNTEsIDEzMCwgMjIyLCAxNDMsIDYzLCAxNjQsIDIyOSwgNjgsIDI1MSwgNjgsIDIyNywgMTQ5LCAyMTAsIDI1LCAKKyAgICA2MywgMTY0LCAyNTAsIDIzOSwgMjU1LCAxNjMsIDIyMiwgMTQ0LCAyNTEsIDY5LCAyMzAsIDIwMiwgMjUxLCA3LCA2MywgCisgICAgMTY0LCAyMjksIDY4LCAyNTEsIDY4LCAyMjAsIDEwNiwgMjIyLCAxNDMsIDYzLCAxNjQsIDI1MCwgMTMyLCAyMzAsIDI0NywgCisgICAgNjMsIDE2NCwgMjE1LCAxODQsIDI1NSwgMTYwLCA2MywgMTY0LCAyNDIsIDEwMCwgMjIyLCAxNDQsIDI0MiwgNjMsIDYzLCAKKyAgICAxNjQsIDI0MiwgMTAwLCAyMjIsIDE0NCwgMjQyLCA2OSwgNjMsIDE2NCwgMjU0LCAxMTYsIDIzNCwgMTIzLCAyNDIsIDYzLCAKKyAgICA2MywgMTY0LCAyNTQsIDExNiwgMjM0LCAxMjMsIDI0MiwgNjksIDYzLCA1LCAyMTEsIDY1LCAyMTUsIDE3MSwgNjMsIDUsIAorICAgIDIzMSwgMTY3LCAyMTUsIDE3MSwgNjMsIDEsIDE3NiwgNjMsIDEsIDIzNCwgMTMyLCA2MywgMSwgMjQzLCAxMzUsIDYzLCAxLCAKKyAgICAyNDIsIDI0OSwgNjMsIDEsIDIyOSwgNzcsIDYzLCAxLCAyNTEsIDMzLCA2MywgMSwgMjUwLCAxNTcsIDYzLCAxLCAyMzUsIAorICAgIDE0MSwgNjMsIDEsIDIyNywgMTY1LCA2MywgMSwgMjE1LCAxNTYsIDYzLCAxLCAyMTUsIDE0NCwgNjMsIDEsIDI0OCwgMTM1LCAKKyAgICA2MywgMSwgMjQ4LCAxMTksIDYzLCAxLCAyMjgsIDExMCwgNjMsIDEsIDIxNywgMTA1LCA2MywgMSwgMjE2LCAyMDgsIDYzLCAKKyAgICAxLCAyNDgsIDIyMSwgNjMsIDEsIDI0OCwgMjUsIDYzLCAxLCAxOTcsIDYzLCAxLCAxOTAsIDYzLCAxLCAyMjUsIDE0NywgNjMsIAorICAgIDEsIDI1MiwgMTkxLCA2MywgMSwgMjUyLCAxOCwgNjMsIDEsIDE4NCwgNjMsIDEsIDIxNSwgMTgzLCA2MywgMSwgMjE1LCAKKyAgICAxNzUsIDYzLCAxLCAyNDYsIDM4LCA2MywgMSwgMjQ2LCAzMywgNjMsIDEsIDIxMiwgNjUsIDYzLCAxLCAyMTAsIDgyLCA2MywgCisgICAgMSwgMjEwLCAxMTYsIDYzLCAxLCAyNTUsIDE2NiwgNjMsIDEsIDE5MSwgNjMsIDEsIDIwNSwgNjMsIDEsIDIzMywgMTM1LCAKKyAgICA2MywgMSwgMjIwLCAxMDIsIDYzLCAxLCAyMTgsIDIyMywgNjMsIDEsIDIwNiwgNjMsIDEsIDE2MiwgNjMsIDEsIDYxLCA2MywgCisgICAgMSwgMjMzLCAyMzEsIDYzLCAxLCAyNDQsIDc3LCAyMDUsIDYzLCAxLCAyMzQsIDQ2LCA2MywgMSwgMjIyLCAxNzksIDYzLCAKKyAgICAyNSwgNSwgMjU1LCA3MywgNjMsIDI1LCA1LCA3MywgNjMsIDI1LCA1LCAyMzYsIDMzLCA2MywgMjUsIDUsIDcwLCA2MywgMjUsIAorICAgIDUsIDIxNCwgMTE4LCA2MywgMjUsIDUsIDE0OSwgMTUzLCA2MywgMjUsIDUsIDE0OSwgMjIyLCAxODAsIDYzLCAyNSwgNSwgCisgICAgMTQ5LCAxNTYsIDYzLCAyNSwgNSwgMTQ5LCAyMzIsIDE4NSwgNjMsIDI1LCA1LCA3NSwgNjMsIDI1LCA1LCAyNDUsIDIwOSwgCisgICAgNjMsIDI1LCA1LCA3NiwgNjMsIDI1LCA1LCAyMjYsIDE4MywgNjMsIDUsIDIyMiwgMjIxLCAyMTgsIDg0LCAyMjksIDc4LCAKKyAgICAyMjIsIDIxMSwgNjMsIDUsIDIyMiwgMjE2LCAyNTIsIDc2LCA2MywgMjUsIDUsIDIyMywgNDksIDczLCA2MywgMjUsIDUsIAorICAgIDIyMywgNDksIDIzNiwgMzMsIDYzLCA1LCAyMjcsIDE0OSwgMjEwLCAyNiwgMjI5LCAyMjYsIDI0OCwgMjIxLCA2MywgNSwgCisgICAgMjE5LCA3MSwgMjMzLCA2MCwgNjMsIDE2NCwgMjQyLCAyOSwgNjMsIDE2NCwgMjI2LCA1NywgNjMsIDUsIDIzMywgNjMsIAorICAgIDIyMiwgMTQzLCA2MywgNSwgMjExLCA3MCwgMjIyLCAxNDMsIDYzLCA1LCAyMzMsIDY0LCAyMTUsIDE4NCwgMjUxLCA3LCA2MywgCisgICAgNSwgMjMxLCA5NSwgMjUxLCA3LCA2MywgNSwgMjQyLCAxMTksIDI1MSwgOCwgMjIzLCA0MCwgNjMsIDUsIDI0MiwgMTE5LCAKKyAgICAyMzEsIDg1LCAyMjMsIDQwLCA2MywgNSwgMjM1LCAxOTMsIDIzMSwgOTUsIDI1MSwgNywgNjMsIDIxOCwgNzMsIDUsIDIzMywgCisgICAgNjQsIDIxNSwgMTg0LCAyNTEsIDcsIDYzLCAyMTgsIDczLCA1LCAyMzEsIDk1LCAyNTEsIDcsIDYzLCAyMTgsIDczLCA1LCAKKyAgICAyMzUsIDE5MywgMjMxLCA5NSwgMjUxLCA3LCA2MywgMjE4LCA3MywgMSwgMTc2LCA2MywgMjE4LCA3MywgMSwgMjM0LCAxMzIsIAorICAgIDYzLCAyMTgsIDczLCAxLCAyNDMsIDEzNSwgNjMsIDIxOCwgNzMsIDEsIDI0MiwgMjQ5LCA2MywgMjE4LCA3MywgMSwgMjI5LCAKKyAgICA3NywgNjMsIDIxOCwgNzMsIDEsIDI1MSwgMzMsIDYzLCAyMTgsIDczLCAxLCAyNTAsIDE1NywgNjMsIDIxOCwgNzMsIDEsIAorICAgIDIzNSwgMTQxLCA2MywgMjE4LCA3MywgMSwgMjI3LCAxNjUsIDYzLCAyMTgsIDczLCAxLCAyMTUsIDE1NiwgNjMsIDIxOCwgCisgICAgNzMsIDEsIDIxNSwgMTQ0LCA2MywgMjE4LCA3MywgMSwgMjQ4LCAxMzUsIDYzLCAyMTgsIDczLCAxLCAyNDgsIDExOSwgNjMsIAorICAgIDIxOCwgNzMsIDEsIDIyOCwgMTEwLCA2MywgMjE4LCA3MywgMSwgMjE3LCAxMDUsIDYzLCAyMTgsIDczLCAxLCAyMTYsIDIwOCwgCisgICAgNjMsIDIxOCwgNzMsIDEsIDI0OCwgMjIxLCA2MywgMjE4LCA3MywgMSwgMjQ4LCAyNSwgNjMsIDIxOCwgNzMsIDEsIDE5NywgCisgICAgNjMsIDIxOCwgNzMsIDEsIDE5MCwgNjMsIDIxOCwgNzMsIDEsIDIyNSwgMTQ3LCA2MywgMjE4LCA3MywgMSwgMjUyLCAxOTEsIAorICAgIDYzLCAyMTgsIDczLCAxLCAyNTIsIDE4LCA2MywgMjE4LCA3MywgMSwgMTg0LCA2MywgMjE4LCA3MywgMSwgMjE1LCAxODMsIAorICAgIDYzLCAyMTgsIDczLCAxLCAyMTUsIDE3NSwgNjMsIDIxOCwgNzMsIDEsIDI0NiwgMzgsIDYzLCAyMTgsIDczLCAxLCAyNDYsIAorICAgIDMzLCA2MywgMjE4LCA3MywgMSwgMjEyLCA2NSwgNjMsIDIxOCwgNzMsIDEsIDIxMCwgODIsIDYzLCAyMTgsIDczLCAxLCAKKyAgICAyMTAsIDExNiwgNjMsIDIxOCwgNzMsIDEsIDI1NSwgMTY2LCA2MywgMjE4LCA3MywgMSwgMTkxLCA2MywgMjE4LCA3MywgMSwgCisgICAgMjA1LCA2MywgMjE4LCA3MywgMSwgMjMzLCAxMzUsIDYzLCAyMTgsIDczLCAxLCAyMjAsIDEwMiwgNjMsIDIxOCwgNzMsIDEsIAorICAgIDIxOCwgMjIzLCA2MywgMjE4LCA3MywgMSwgMjA2LCA2MywgMjE4LCA3MywgMSwgMTYyLCA2MywgMjE4LCA3MywgMSwgNjEsIAorICAgIDYzLCAyMTgsIDczLCAxLCAyMzMsIDIzMSwgNjMsIDIxOCwgNzMsIDEsIDI0NCwgNzcsIDIxMiwgNjUsIDYzLCAyMTgsIDczLCAKKyAgICAxLCAyNDQsIDc3LCAxOTEsIDYzLCAyMTgsIDczLCAxLCAyNDQsIDc3LCAyMDUsIDYzLCAyMzMsIDIxOCwgMjIyLCAxNDEsIAorICAgIDIzNCwgMTMyLCA2MywgMjMzLCAyMTgsIDIyMiwgMTQxLCAyMzQsIDEzMywgMjUxLCA2OSwgMjMwLCAyMDIsIDI1MSwgNywgCisgICAgNjMsIDI1MCwgMjUyLCA1LCAxMTQsIDI1MiwgNzAsIDYzLCAyNTAsIDI1MiwgNSwgMTkyLCAyNTIsIDcwLCA2MywgMjUwLCAKKyAgICAyNTIsIDUsIDI1MCwgMjUzLCAyMTcsIDIwLCA2MywgMjUwLCAyNTIsIDUsIDIyMSwgMjA3LCAyNTUsIDE2NSwgNjMsIDE2LCAKKyAgICAyNDYsIDkxLCAyNTEsIDEyNSwgNjMsIDE2LCAyMjMsIDEyOSwgMjIyLCAyMjIsIDYzLCAxNiwgMjI2LCA3NywgMjQzLCA2MywgCisgICAgNjMsIDE2LCAyMjMsIDEyOSwgMjIyLCAyMjMsIDIyMywgNDIsIDI0MiwgMTQ1LCA2MywgMTYsIDIyNSwgMTEyLCAxOTAsIDYzLCAKKyAgICAxNiwgMjI4LCA1OSwgMjUxLCAxMjUsIDYzLCAxNiwgMjI4LCA1OSwgMjUxLCAxMjYsIDIyNywgMTM5LCAyNTUsIDE2MiwgNjMsIAorICAgIDE2LCAyMjgsIDU5LCAyNTEsIDEyNiwgMjQyLCAxMTcsIDI1NSwgMTYyLCA2MywgMTYsIDIyOCwgNTksIDI1MSwgMTI2LCAKKyAgICAyNTEsIDY5LCAyNTUsIDE2MiwgNjMsIDUsIDIyMywgMTMwLCAyMjksIDIxOSwgMjIzLCAxMzAsIDI0NywgMTU4LCA2MywgNSwgCisgICAgMjIzLCAxMzAsIDIyOSwgMjE5LCAyNDIsIDExNiwgNjMsIDE2NCwgMjUxLCAxMjksIDIyMCwgMywgMjQyLCAyMTUsIDIzMCwgCisgICAgMjQ4LCAyMjMsIDQxLCA2MywgMTY0LCAyMzAsIDE2MywgMjExLCAwLCAyNDIsIDIxNSwgMjMwLCAyNDgsIDIyMywgNDEsIDYzLCAKKyAgICAxNjQsIDIyNywgMTM5LCAyMTUsIDE3MiwgNjMsIDE2NCwgNjUsIDI1MSwgMTUyLCAyMjIsIDIxMywgMjExLCAwLCAyMzAsIAorICAgIDI0OCwgMjMxLCA5MywgMTg0LCA2MywgMTY0LCAyNDksIDI1MiwgMjUxLCAxNTIsIDIyMiwgMjEzLCAyMTEsIDAsIDIzMCwgCisgICAgMjQ4LCAyMjAsIDEwOSwgMTg0LCAyMjIsIDI1MCwgMjE3LCAyNTUsIDUwLCAyMzMsIDQ1LCAyMTcsIDI1NSwgNTAsIDIyMiwgCisgICAgMjUwLCAyMTcsIDI1NSwgNSwgMiwgMjQ3LCAxMTgsIDIzMywgNDUsIDIxNywgMjU1LCA1LCAyLCAyNDcsIDExOCwgNjMsIAorICAgIDE2NCwgMjMzLCA1NSwgMjMxLCA5NiwgMjIyLCAxNDMsIDYzLCAxNjQsIDIxNSwgMjUwLCAyMzEsIDk2LCAyMjIsIDE0MywgCisgICAgNjgsIDEsIDE3NiwgNjgsIDEsIDIzNCwgMTMyLCA2OCwgMSwgMjQzLCAxMzUsIDY4LCAxLCAyNDIsIDI0OSwgNjgsIDEsIAorICAgIDIyOSwgNzcsIDY4LCAxLCAyNTEsIDMzLCA2OCwgMSwgMjUwLCAxNTcsIDY4LCAxLCAyMzUsIDE0MSwgNjgsIDEsIDIzNSwgCisgICAgMTE0LCA2OCwgMSwgMjI3LCAxNjUsIDY4LCAxLCAyMjgsIDc2LCA2OCwgMSwgMjE1LCAxNTYsIDY4LCAxLCAyMTUsIDE0NCwgCisgICAgNjgsIDEsIDI0OCwgMTM1LCA2OCwgMSwgMjQ4LCAxMTksIDY4LCAxLCAyMjgsIDExMCwgNjgsIDEsIDIxNywgMTA1LCA2OCwgCisgICAgMSwgMjE2LCAyMDgsIDY4LCAxLCAyNDgsIDIyMSwgNjgsIDEsIDI0OCwgMjUsIDY4LCAxLCAxOTcsIDY4LCAxLCAxOTAsIDY4LCAKKyAgICAxLCAyMjUsIDE0NywgNjgsIDEsIDI1MiwgMTkxLCA2OCwgMSwgMjUyLCAxOCwgNjgsIDEsIDE4NCwgNjgsIDEsIDE5MSwgNjgsIAorICAgIDEsIDIwNSwgNjgsIDEsIDIzMywgMTM1LCA2OCwgMSwgMjEyLCA2NSwgNjgsIDEsIDIwNiwgNjgsIDEsIDE2MiwgNjgsIDEsIAorICAgIDIzMiwgMTg0LCA2OCwgMSwgNjEsIDY4LCAxLCAyMjAsIDg2LCA2MSwgNjgsIDEsIDczLCA2OCwgMSwgMjM2LCAzMywgNjgsIAorICAgIDEsIDcwLCA2OCwgMSwgMjE0LCAxMTgsIDY4LCAxLCA3NSwgNjgsIDEsIDIzMCwgMTUxLCA3NSwgNjgsIDEsIDc2LCA2OCwgMSwgCisgICAgMjUzLCAxOTIsIDY4LCAyNSwgNSwgMjE3LCA2NCwgMjU1LCA3MywgNjgsIDI1LCA1LCAyNTUsIDczLCA2OCwgMjUsIDUsIDczLCAKKyAgICA2OCwgMjUsIDUsIDIzNiwgMzMsIDY4LCAyNSwgNSwgNzAsIDY4LCAyNSwgNSwgMjE0LCAxMTgsIDY4LCAyNSwgNSwgNzUsIAorICAgIDY4LCAyNSwgNSwgMjU0LCAyMDEsIDY4LCAyNSwgNSwgMjMwLCAxNTEsIDIzNiwgMzMsIDY4LCAyNSwgNSwgMjMwLCAxNTEsIAorICAgIDc2LCA2OCwgMjUsIDUsIDE2MCwgNDgsIDY4LCA1LCAyNTQsIDc1LCA2OCwgNSwgNTksIDUxLCA2OCwgNSwgMjEzLCAxNDcsIAorICAgIDY4LCA1LCAyMTMsIDE1MiwgNjgsIDUsIDI1MywgMjM1LCA2OCwgMTE2LCA1LCAxNDcsIDE5MSwgNjgsIDExNiwgNSwgMTQ3LCAKKyAgICAyMDUsIDY4LCAxMTYsIDUsIDE0NywgMjEyLCA2NSwgNjgsIDExNiwgNSwgMTQ3LCAxNjIsIDY4LCAxLCAyNDIsIDEzMiwgCisgICAgMjA2LCA2OCwgMjEsIDIxMCwgODYsIDY4LCAyMSwgMTEwLCA2OCwgMjEsIDEwNSwgNjgsIDIxLCAxNTgsIDY4LCAyMSwgMTYxLCAKKyAgICA2OCwgMjEsIDE4OSwgNjgsIDIxLCAxOTQsIDY4LCAyMSwgMTk4LCA2OCwgMjEsIDE5NSwgNjgsIDIxLCAyMDAsIDY4LCA1LCAKKyAgICAyMzIsIDE5MiwgMjIxLCAxNzIsIDY4LCA1LCAyMjEsIDE3MiwgNjgsIDE2LCAyMzIsIDE1MywgNjgsIDE2LCAyNDksIDIxMywgCisgICAgNjgsIDE2LCAyNTQsIDIyMCwgNjgsIDE2LCAyNDMsIDQ4LCA2OCwgMSwgMjIwLCAxMDIsIDY4LCAxLCAyMTgsIDIyMywgNjgsIAorICAgIDEsIDE0OSwgMTUzLCA2OCwgMSwgMTQ5LCAyMjIsIDE4MCwgNjgsIDEsIDE0OSwgMTU2LCA2OCwgMSwgMTQ5LCAyMzIsIDE4NSwgCisgICAgNjgsIDI1LCA1LCAxNDksIDE1MywgNjgsIDI1LCA1LCAxNDksIDIyMiwgMTgwLCA2OCwgMjUsIDUsIDE0OSwgMTU2LCA2OCwgCisgICAgMjUsIDUsIDE0OSwgMjMyLCAxODUsIDY4LCAxLCAyMzAsIDE1MSwgMjI5LCA3NywgNjgsIDEsIDIzMCwgMTUxLCAyMzUsIAorICAgIDExNCwgNjgsIDEsIDIzMCwgMTUxLCAyNTIsIDExMSwgNjgsIDEsIDIzMCwgMTUxLCAyNTIsIDEwNiwgNjgsIDExNiwgNSwgCisgICAgMjMwLCAxNTEsIDE0NywgMTk3LCA2OCwgMTE2LCA1LCAyMzAsIDE1MSwgMTQ3LCAxODQsIDY4LCAxMTYsIDUsIDIzMCwgMTUxLCAKKyAgICAxNDcsIDIzMywgMTM1LCA2OCwgMSwgMjIwLCAxMDgsIDIzNCwgMjEzLCAyMjAsIDEwMiwgNjgsIDI1LCA1LCAyMjAsIDEwOCwgCisgICAgMjM0LCAyMTMsIDI0NSwgNTUsIDY4LCAxMzgsIDE2NCwgMjIwLCAxMDgsIDIzNCwgMjEzLCAyNDEsIDI0NywgNjgsIDEzOCwgCisgICAgMTY0LCAyMjAsIDEwOCwgMjM0LCAyMTMsIDIzNCwgMTgzLCAyMjUsIDEyMSwgNjgsIDEsIDIxMiwgNywgMjI0LCAxMDgsIAorICAgIDIzNCwgMjEzLCAyMTYsIDIwOCwgNjgsIDEsIDIxMiwgNywgMjI0LCAxMDgsIDIzNCwgMjEzLCAyMjQsIDExNCwgNjgsIDI1LCAKKyAgICA1LCAyMTIsIDcsIDIyNCwgMTA4LCAyMzQsIDIxMywgMjQ1LCA1NSwgNjgsIDI1LCA1LCAyMTIsIDcsIDIyNCwgMTA4LCAyMzQsIAorICAgIDIxMywgMjE0LCAyMTQsIDY4LCA1LCAyMTIsIDcsIDIyNCwgMTA4LCAyMzQsIDIxMywgMjE2LCAyOSwgNjgsIDUsIDIxMiwgNywgCisgICAgMjI0LCAxMDgsIDIzNCwgMjEzLCAyMTYsIDI4LCA2OCwgNSwgMjEyLCA3LCAyMjQsIDEwOCwgMjM0LCAyMTMsIDIxNiwgMjcsIAorICAgIDY4LCA1LCAyMTIsIDcsIDIyNCwgMTA4LCAyMzQsIDIxMywgMjE2LCAyNiwgNjgsIDUsIDIxMiwgNywgMjI0LCAxMDgsIDIzNCwgCisgICAgMjEzLCAyMTYsIDI1LCA2OCwgMSwgMjQ1LCAyMTksIDIyNCwgMTA4LCAyMzQsIDIxMywgMjI4LCAxMTAsIDY4LCAxLCAyNDUsIAorICAgIDIxOSwgMjI0LCAxMDgsIDIzNCwgMjEzLCAyMTAsIDE3NiwgNjgsIDEsIDI0NSwgMjE5LCAyMjQsIDEwOCwgMjM0LCAyMTMsIAorICAgIDI0MiwgMjE3LCA2OCwgMjUsIDUsIDI0MywgNTksIDIzNCwgMjEzLCA3MywgNjgsIDI1LCA1LCAyMzQsIDE4OCwgMjI2LCAKKyAgICAyMzQsIDY4LCAyNSwgNSwgMjM0LCAxODgsIDcwLCA2OCwgMjUsIDUsIDIzNCwgMTg4LCAyNDUsIDIwOSwgNjgsIDEsIDIyMCwgCisgICAgODYsIDE3NiwgNjgsIDEsIDIyMCwgODYsIDIzNCwgMTMyLCA2OCwgMSwgMjIwLCA4NiwgMjQzLCAxMzUsIDY4LCAxLCAyMjAsIAorICAgIDg2LCAyNTEsIDMzLCA2OCwgMSwgMjIwLCA4NiwgMjEwLCAxMTYsIDY4LCAxLCAyMjAsIDg2LCAyMjcsIDE2NSwgNjgsIDEsIAorICAgIDIyMCwgODYsIDI0OCwgMjIxLCA2OCwgMSwgMjIwLCA4NiwgMTk3LCA2OCwgMSwgMjIwLCA4NiwgMjI1LCAxNDcsIDY4LCAxLCAKKyAgICAyMjAsIDg2LCAyNDQsIDE5NiwgNjgsIDEsIDIyMCwgODYsIDI1MiwgMTkxLCA2OCwgMSwgMjIwLCA4NiwgMjE2LCAyMDgsIAorICAgIDY4LCAxLCAyMjAsIDg2LCAxNjIsIDY4LCAxMTYsIDUsIDIyMCwgODYsIDE0NywgMjEyLCA2NSwgNjgsIDI1LCA1LCAyMjAsIAorICAgIDg2LCAyNTUsIDczLCA2OCwgMjUsIDUsIDIyMCwgODYsIDc1LCA2OCwgMjUsIDUsIDIyMCwgODYsIDE2MCwgNDgsIDY4LCAyNSwgCisgICAgNSwgMjIwLCA4NiwgNDAsIDIxMSwgMTE3LCA2OCwgNSwgMjIwLCA4NiwgMjE2LCAyOCwgNjgsIDUsIDIyMCwgODYsIDIxNiwgCisgICAgMjcsIDY4LCA1LCAyMjAsIDg2LCAyMTYsIDI1LCA2OCwgNSwgMjIwLCA4NiwgMjE2LCAyNCwgNjgsIDUsIDIyMCwgODYsIAorICAgIDI0OSwgMTUyLCAyMTYsIDI4LCA2OCwgNSwgMjIwLCA4NiwgMjQ5LCAxNTIsIDIxNiwgMjcsIDY4LCA1LCAyMjAsIDg2LCAKKyAgICAyNDksIDE1MiwgMjQ1LCAxNTMsIDIxNiwgMzAsIDY4LCAxLCAyMjIsIDEyOCwgMjI2LCA2MywgMjQ0LCAxOTYsIDY4LCA1LCAKKyAgICAyMjIsIDEyOCwgMjI2LCA2MywgMjE2LCAyNSwgNjgsIDIyMCwgODYsIDIxLCAyMTAsIDg2LCA2OCwgMjIwLCA4NiwgMjEsIAorICAgIDExMCwgNjgsIDIyMCwgODYsIDIxLCAxMDUsIDY4LCAyMjAsIDg2LCAyMSwgMTU4LCA2OCwgMjIwLCA4NiwgMjEsIDE2MSwgCisgICAgNjgsIDIyMCwgODYsIDIxLCAxODksIDY4LCAyMjAsIDg2LCAyMSwgMTk0LCA2OCwgMjIwLCA4NiwgMjEsIDE5OCwgNjgsIAorICAgIDIyMCwgODYsIDIxLCAxOTUsIDY4LCAyMjAsIDg2LCAyMSwgMjAwLCA2OCwgNSwgMjM0LCAxMjYsIDIxNiwgMjksIDY4LCA1LCAKKyAgICAyMzQsIDEyNiwgMjE2LCAyNywgNjgsIDI1LCA1LCAyNTQsIDE5MCwgNjEsIDY4LCAyNSwgNSwgMjU0LCAxOTAsIDI1NCwgCisgICAgMjAxLCA2OCwgMTYsIDIyMCwgODYsIDExMCwgNjgsIDE2LCAyMjAsIDg2LCAyNDUsIDMwLCA5OCwgNiwgMSwgMjU0LCAxMjMsIAorICAgIDk4LCA2LCAxLCAyNTIsIDE1MiwgOTgsIDYsIDEsIDI0MywgMTA2LCA5OCwgNiwgMSwgMjQ3LCAxMjgsIDk4LCA2LCAxLCAKKyAgICAyNDUsIDE1MCwgOTgsIDYsIDEsIDIxMywgMTYwLCA5OCwgNiwgMSwgMjEwLCA4OSwgOTgsIDYsIDEsIDIxNywgNjAsIDk4LCAKKyAgICA2LCAxLCAyMzUsIDI1NSwgOTgsIDYsIDEsIDIzNCwgMjM0LCA5OCwgNiwgMSwgMjMzLCA4MSwgOTgsIDYsIDEsIDIzMSwgCisgICAgMTg1LCA5OCwgNiwgMSwgMjI5LCAxOTUsIDk4LCA2LCAxLCAyMjYsIDE5NiwgOTgsIDYsIDEsIDIyNiwgMTcsIDk4LCA2LCAxLCAKKyAgICAyMTAsIDc4LCA5OCwgNiwgMSwgMjIzLCAxNzEsIDk4LCA2LCAxLCAyMjEsIDI0MywgOTgsIDYsIDEsIDIxNywgNTAsIDk4LCAKKyAgICA2LCAxLCAyMTQsIDE5MCwgOTgsIDYsIDEsIDIyNSwgMTQwLCA5OCwgNiwgMSwgMjM0LCAxMjEsIDk4LCA2LCAxLCAyNDIsIAorICAgIDI0MSwgOTgsIDYsIDEsIDIyNCwgNzMsIDk4LCA2LCAxLCAyMjAsIDIwLCA5OCwgNiwgMSwgMjUwLCA5NywgOTgsIDYsIDEsIAorICAgIDI1MSwgNywgOTgsIDYsIDEsIDIzNSwgMTAwLCA5OCwgNiwgMSwgMjUwLCA0MCwgOTgsIDYsIDEsIDI1MCwgMTQzLCA5OCwgNiwgCisgICAgMSwgMjExLCAxNjMsIDk4LCA2LCAxLCAyMzUsIDExMSwgOTgsIDYsIDEsIDI0MiwgNDMsIDk4LCA2LCAxLCAyNDEsIDIzOCwgCisgICAgOTgsIDYsIDEsIDI0MSwgMTc1LCA5OCwgNiwgMSwgMjEyLCAyMiwgOTgsIDYsIDEsIDI0MiwgNCwgOTgsIDYsIDEsIDI0MSwgCisgICAgNjUsIDk4LCA2LCAxLCAyMTAsIDI0NiwgOTgsIDYsIDEsIDI1NCwgMjMyLCA5OCwgMSwgMjU0LCAxMjMsIDk4LCAxLCAyNTIsIAorICAgIDE1MiwgOTgsIDEsIDI0MywgMTA2LCA5OCwgMSwgMjQ3LCAxMjgsIDk4LCAxLCAyNDUsIDE1MCwgOTgsIDEsIDIxMywgMTYwLCAKKyAgICA5OCwgMSwgMjEwLCA4OSwgOTgsIDEsIDIxNywgNjAsIDk4LCAxLCAyMzUsIDI1NSwgOTgsIDEsIDIzNCwgMjM0LCA5OCwgMSwgCisgICAgMjMzLCA4MSwgOTgsIDEsIDIzMSwgMTg1LCA5OCwgMSwgMjI5LCAxOTUsIDk4LCAxLCAyMjYsIDE5NiwgOTgsIDEsIDIyNiwgCisgICAgMTcsIDk4LCAxLCAyMTAsIDc4LCA5OCwgMSwgMjIzLCAxNzEsIDk4LCAxLCAyMjEsIDI0MywgOTgsIDEsIDIxNywgNTAsIDk4LCAKKyAgICAxLCAyMTQsIDE5MCwgOTgsIDEsIDIyNSwgMTQwLCA5OCwgMSwgMjM0LCAxMjEsIDk4LCAxLCAyNDIsIDI0MSwgOTgsIDEsIAorICAgIDIyNCwgNzMsIDk4LCAxLCAyMjAsIDIwLCA5OCwgMSwgMjUwLCA5NywgOTgsIDEsIDI1MSwgNywgOTgsIDEsIDIzNSwgMTAwLCAKKyAgICA5OCwgMSwgMjUwLCA0MCwgOTgsIDEsIDI1MCwgMTQzLCA5OCwgMSwgMjExLCAxNjMsIDk4LCAxLCAyMzUsIDExMSwgOTgsIDEsIAorICAgIDI0MiwgNDMsIDk4LCAxLCAyNDEsIDIzOCwgOTgsIDEsIDI0MSwgMTc1LCA5OCwgMSwgMjEyLCAyMiwgOTgsIDEsIDI0MiwgNCwgCisgICAgOTgsIDEsIDI0MSwgNjUsIDk4LCAxLCAyNDQsIDEyMSwgOTgsIDEsIDIxMCwgMjQ2LCA5OCwgMSwgMjQ1LCAxNjUsIDk4LCAxLCAKKyAgICAyMTUsIDk0LCAyNDMsIDEwNiwgOTgsIDEsIDI1NCwgMTk2LCA5OCwgMjI2LCAxNSwgMjIwLCAxMzcsIDU4LCAxLCA5OCwgCisgICAgMjI5LCAxOTUsIDk4LCAxLCAyNTQsIDIzMiwgOTgsIDEsIDI0MiwgMywgNTAsIDk4LCAxLCAyMzMsIDEyNywgNTAsIDI0LCAKKyAgICAxMDAsIDIzNCwgNTgsIDI0LCAxMDAsIDIxOCwgMjE1LCAyNCwgMTAwLCAyMjgsIDIyNiwgMjQsIDEwMCwgMjE2LCAxMDEsIAorICAgIDI0LCAxMDAsIDIxOCwgMjA0LCAyNCwgMTAwLCAyMjMsIDI2LCAyNCwgMTAwLCAyMzAsIDIxNywgMjQsIDEwMCwgMjI1LCA5NSwgCisgICAgMjQsIDEwMCwgMjE4LCAyMTIsIDI0LCAxMDAsIDIxOSwgMTQ4LCAyNCwgMTAwLCAyMTgsIDIwOSwgMjQsIDEwMCwgMjM2LCAKKyAgICA1NiwgMjQsIDEwMCwgMjUwLCA0NiwgMjQsIDEwMCwgMjE4LCAyMTksIDI0LCAxMDAsIDI1MCwgMTA2LCAyNCwgMTAwLCAyMzQsIAorICAgIDExMCwgMjQsIDEwMCwgMjE2LCAxNzMsIDI0LCAxMDAsIDIyNSwgMTMxLCAyNCwgMTAwLCAyNDEsIDE3MiwgMjQsIDEwMCwgCisgICAgMjI4LCAyMjIsIDI0LCAxMDAsIDIxOCwgMjEzLCAyNCwgMTAwLCAyMjgsIDIxNiwgMjQsIDEwMCwgMjI4LCAyMjAsIDI0LCAKKyAgICAxMDAsIDIxNiwgOTgsIDI0LCAxMDAsIDIyMywgMTQsIDI0LCAxMDAsIDIxOCwgMjExLCAyNCwgMTAwLCAyMjMsIDI0LCAyNCwgCisgICAgMTAwLCAyMzQsIDIxOCwgMjQsIDEwMCwgMjMwLCAyMTAsIDI0LCAxMDAsIDIzNCwgMjIxLCAyNCwgMTAwLCAyMjUsIDkwLCAKKyAgICAyNCwgMTAwLCAyMjUsIDg4LCAyNCwgMTAwLCAyMjUsIDc2LCAyNCwgMTAwLCAyMjUsIDg0LCAyNCwgMTAwLCAyMjUsIDgyLCAKKyAgICAyNCwgMTAwLCAyMjUsIDc5LCAyNCwgMTAwLCAyMjUsIDgxLCAyNCwgMTAwLCAyMjUsIDc4LCAyNCwgMTAwLCAyMjUsIDgzLCAKKyAgICAyNCwgMTAwLCAyMjUsIDkzLCAyNCwgMTAwLCAyMjUsIDk0LCAyNCwgMTAwLCAyMjUsIDc3LCAyNCwgMTAwLCAyMjUsIDg3LCAKKyAgICAyNCwgMTAwLCAyMzQsIDIxOSwgMjQsIDEwMCwgMjM0LCAyMTcsIDI0LCAxMDAsIDIxOSwgMTQxLCAyNCwgMTAwLCAyMTksIAorICAgIDEzOSwgMjQsIDEwMCwgMjE5LCAxMzEsIDI0LCAxMDAsIDIxOSwgMTM0LCAyNCwgMTAwLCAyMTksIDE0MCwgMjQsIDEwMCwgCisgICAgMjE5LCAxMzYsIDI0LCAxMDAsIDIxOSwgMTM1LCAyNCwgMTAwLCAyMTksIDEzMywgMjQsIDEwMCwgMjE5LCAxNDQsIDI0LCAKKyAgICAxMDAsIDIxOSwgMTQ2LCAyNCwgMTAwLCAyMTksIDE0NywgMjQsIDEwMCwgMjE5LCAxNDIsIDI0LCAxMDAsIDIxOSwgMTMyLCAKKyAgICAyNCwgMTAwLCAyMTksIDEzNywgMjQsIDEwMCwgMjE5LCAxNDUsIDI0LCAxMDAsIDI1MCwgOTAsIDI0LCAxMDAsIDI1MCwgODgsIAorICAgIDI0LCAxMDAsIDI1MCwgMTY4LCAyNCwgMTAwLCAyNTAsIDE2NiwgMjQsIDEwMCwgMjI2LCAzMiwgMjQsIDEwMCwgMjM2LCA1MSwgCisgICAgMjQsIDEwMCwgMjM2LCA0MiwgMjQsIDEwMCwgMjM2LCA1MCwgMjQsIDEwMCwgMjM2LCA0NywgMjQsIDEwMCwgMjM2LCA0NSwgCisgICAgMjQsIDEwMCwgMjM2LCA0OSwgMjQsIDEwMCwgMjE4LCAyMTYsIDI0LCAxMDAsIDIzNiwgNTQsIDI0LCAxMDAsIDIzNiwgNTUsIAorICAgIDI0LCAxMDAsIDIzNiwgNDMsIDI0LCAxMDAsIDIzNiwgNDgsIDI0LCAxMDAsIDIxMSwgMjYsIDI0LCAxMDAsIDI1MCwgNDUsIAorICAgIDI0LCAxMDAsIDI1MCwgOTEsIDI0LCAxMDAsIDI1MCwgODksIDI0LCAxMDAsIDI1MCwgMTY5LCAyNCwgMTAwLCAyNTAsIDE2NywgCisgICAgMjQsIDEwMCwgMjUwLCAxMDQsIDI0LCAxMDAsIDI1MCwgMTA1LCAyNCwgMTAwLCAyNTAsIDkyLCAyNCwgMTAwLCAyNTAsIAorICAgIDE3MCwgMjQsIDEwMCwgMjI1LCAxMjksIDI0LCAxMDAsIDIzNCwgMjIwLCAyNCwgMTAwLCAyMTgsIDIxNywgMjQsIDEwMCwgCisgICAgMjExLCAzMiwgMjQsIDEwMCwgMjM0LCA0OSwgMjQsIDEwMCwgMjI4LCAyMTgsIDI0LCAxMDAsIDIyOCwgMjI0LCAyNCwgMTAwLCAKKyAgICAyMjgsIDIyMywgMjQsIDEwMCwgMjE2LCA5NSwgMjQsIDEwMCwgMjQ0LCAxMDMsIDI0LCAxNDMsIDI0NCwgMTAzLCAyNCwgCisgICAgMTQzLCA2MSwgMjQsIDE0MywgMjU0LCAyNDMsIDI0LCAxNDMsIDE5MSwgMjQsIDE0MywgMjExLCA5MiwgMjQsIDE0MywgMjQ1LCAKKyAgICAxMTcsIDI0LCAxNDMsIDc1LCAyNCwgMTQzLCAyMTEsIDM2LCAyNCwgMTQzLCAyMTEsIDQ3LCAyNCwgMTQzLCA3NiwgMjQsIAorICAgIDE0MywgMjEyLCA2NSwgMjQsIDE0MywgMjEyLCA2MiwgMjQsIDE0MywgMjI2LCAyMzQsIDI0LCAxNDMsIDIxMCwgMjQ0LCAyNCwgCisgICAgMTQzLCA3MCwgMjQsIDE0MywgMjEyLCAxMSwgMjQsIDE0MywgMjEyLCAyMiwgMjQsIDE0MywgMjExLCAyNTAsIDI0LCAxNDMsIAorICAgIDIxMCwgMjEyLCAyNCwgMTQzLCAyNDUsIDU1LCAyNCwgMTQzLCAyMTEsIDgsIDI0LCAxNDMsIDczLCAyNCwgMTQzLCAyNTUsIAorICAgIDE1NywgMjQsIDE0MywgMjU1LCAxNTYsIDI0LCAxNDMsIDIxMSwgMTA2LCAyNCwgMTQzLCAyMTEsIDEwNCwgMjQsIDE0MywgCisgICAgMjQ1LCAxMTUsIDI0LCAxNDMsIDI0NSwgMTE0LCAyNCwgMTQzLCAyNDUsIDExNiwgMjQsIDE0MywgMjExLCAzNSwgMjQsIAorICAgIDE0MywgMjExLCAzNCwgMjQsIDE0MywgMjI3LCA4NCwgMjQsIDE0MywgMjI3LCA4NSwgMjQsIDE0MywgMjI3LCA3OCwgMjQsIAorICAgIDE0MywgMjI3LCA4MywgMjQsIDE0MywgMjI3LCA4MSwgMjQsIDE0MywgMjEwLCAyMzgsIDI0LCAxNDMsIDIxMCwgMjM3LCAyNCwgCisgICAgMTQzLCAyMTAsIDIzNiwgMjQsIDE0MywgMjEwLCAyMzksIDI0LCAxNDMsIDIxMCwgMjQwLCAyNCwgMTQzLCAyMTUsIDMwLCAKKyAgICAyNCwgMTQzLCAyMTUsIDI5LCAyNCwgMTQzLCAyMTUsIDI3LCAyNCwgMTQzLCAyMTUsIDI0LCAyNCwgMTQzLCAyMTUsIDI1LCAKKyAgICAyNCwgMTQzLCAyMTAsIDIxMSwgMjQsIDE0MywgMjEwLCAyMDgsIDI0LCAxNDMsIDIxMCwgMjA5LCAyNCwgMTQzLCAyMTAsIAorICAgIDIwMywgMjQsIDE0MywgMjEwLCAyMDQsIDI0LCAxNDMsIDIxMCwgMjA1LCAyNCwgMTQzLCAyMTAsIDIwNywgMjQsIDE0MywgCisgICAgMjQ1LCA0OSwgMjQsIDE0MywgMjQ1LCA1MSwgMjQsIDE0MywgMjExLCA3LCAyNCwgMTQzLCAyNDAsIDE1MywgMjQsIDE0MywgCisgICAgMjQwLCAxNDUsIDI0LCAxNDMsIDI0MCwgMTQ4LCAyNCwgMTQzLCAyNDAsIDE0NiwgMjQsIDE0MywgMjQwLCAxNTAsIDI0LCAKKyAgICAxNDMsIDI0MCwgMTUyLCAyNCwgMTQzLCAyNTQsIDM0LCAyNCwgMTQzLCAyNTQsIDMxLCAyNCwgMTQzLCAyNTQsIDI5LCAyNCwgCisgICAgMTQzLCAyNTQsIDMwLCAyNCwgMTQzLCAyMTgsIDIyMCwgMjQsIDE0MywgMjU1LCAxNTgsIDI0LCAxNDMsIDIxMSwgMTA1LCAKKyAgICAyNCwgMTQzLCAyMTEsIDMzLCAyNCwgMTQzLCAyMjcsIDgwLCAyNCwgMTQzLCAyMjcsIDc5LCAyNCwgOTAsIDIzNCwgNTgsIAorICAgIDI0LCA5MCwgMjE4LCAyMTUsIDI0LCA5MCwgMjM0LCA1MSwgMjQsIDkwLCAyMjgsIDIyNiwgMjQsIDkwLCAyMjgsIDIyNCwgCisgICAgMjQsIDkwLCAyMjgsIDIyMywgMjQsIDkwLCAyMTYsIDEwMSwgMjQsIDkwLCAyMjMsIDI2LCAyNCwgOTAsIDIyMywgMjEsIDI0LCAKKyAgICA5MCwgMjIzLCAxOCwgMjQsIDkwLCAyMjMsIDExLCAyNCwgOTAsIDIyMywgNiwgMjQsIDkwLCAyMjMsIDEsIDI0LCA5MCwgCisgICAgMjIzLCAxMiwgMjQsIDkwLCAyMjMsIDI0LCAyNCwgOTAsIDIzMCwgMjE3LCAyNCwgOTAsIDIyNSwgOTUsIDI0LCA5MCwgMjI1LCAKKyAgICA4NCwgMjQsIDkwLCAyMTksIDE0OCwgMjQsIDkwLCAyMTgsIDIwOSwgMjQsIDkwLCAyMzYsIDU2LCAyNCwgOTAsIDI1MCwgNDYsIAorICAgIDI0LCA5MCwgMjUwLCAxMDYsIDI0LCA5MCwgMjM0LCAxMTAsIDI0LCA5MCwgMjE2LCAxNzMsIDI0LCA5MCwgMjI1LCAxMzEsIAorICAgIDI0LCA5MCwgMjQxLCAxNzIsIDI0LCA5MCwgMjM0LCA1MiwgMjQsIDkwLCAyMzQsIDUwLCAyNCwgOTAsIDIyOCwgMjIyLCAyNCwgCisgICAgOTAsIDIyOCwgMjE2LCAyNCwgOTAsIDIyOCwgMjE4LCAyNCwgOTAsIDIyOCwgMjIxLCAyNCwgOTAsIDIyOCwgMjE3LCAyNCwgCisgICAgOTAsIDIxNiwgOTgsIDI0LCA5MCwgMjE2LCA5NSwgMjQsIDkwLCAyMjMsIDE5LCAyNCwgOTAsIDIyMywgMTQsIDI0LCA5MCwgCisgICAgMjIzLCAwLCAyNCwgOTAsIDIyMiwgMjU1LCAyNCwgOTAsIDIxOCwgMjExLCAyNCwgOTAsIDIyMywgMTYsIDI0LCA5MCwgMjIzLCAKKyAgICAxNSwgMjQsIDkwLCAyMjMsIDgsIDI0LCA5MCwgMjIzLCAxMCwgMjQsIDkwLCAyMjMsIDIzLCAyNCwgOTAsIDIyMywgMywgMjQsIAorICAgIDkwLCAyMjMsIDEzLCAyNCwgOTAsIDIyMywgMjIsIDI0LCA5MCwgMjIyLCAyNTQsIDI0LCA5MCwgMjMwLCAyMTMsIDI0LCA5MCwgCisgICAgMjMwLCAyMDgsIDI0LCA5MCwgMjMwLCAyMTAsIDI0LCA5MCwgMjMwLCAyMDcsIDI0LCA5MCwgMjMwLCAyMDUsIDI0LCA5MCwgCisgICAgMjMwLCAyMTEsIDI0LCA5MCwgMjMwLCAyMTYsIDI0LCA5MCwgMjMwLCAyMTQsIDI0LCA5MCwgMjM0LCAyMjEsIDI0LCA5MCwgCisgICAgMjI1LCA4NiwgMjQsIDkwLCAyMjUsIDg3LCAyNCwgOTAsIDIyNSwgOTIsIDI0LCA5MCwgMjM0LCAyMTksIDI0LCA5MCwgMjE5LCAKKyAgICAxNDEsIDI0LCA5MCwgMjE5LCAxMzEsIDI0LCA5MCwgMjE5LCAxMzQsIDI0LCA5MCwgMjE5LCAxMzYsIDI0LCA5MCwgMjI2LCAKKyAgICAzMiwgMjQsIDkwLCAyMzYsIDUxLCAyNCwgOTAsIDIzNiwgNDQsIDI0LCA5MCwgMjE4LCAyMTYsIDI0LCA5MCwgMjM2LCA1MiwgCisgICAgMjQsIDkwLCAyMTEsIDI2LCAyNCwgOTAsIDIxMSwgMjIsIDI0LCA5MCwgMjExLCAyMywgMjQsIDkwLCAyMjUsIDEyOSwgMjQsIAorICAgIDkwLCAyMzQsIDIyMCwgMjQsIDkwLCAyNDEsIDE3MCwgMjQsIDkwLCAyNDEsIDE2OCwgMjQsIDkwLCAyNDEsIDE3MSwgMjQsIAorICAgIDkwLCAyNDEsIDE2OSwgMjQsIDkwLCAyMTEsIDMyLCAyNCwgOTAsIDIzNCwgNTQsIDI0LCA5MCwgMjM0LCA1MywgMjQsIDkwLCAKKyAgICAyMzQsIDU3LCAyNCwgOTAsIDIzNCwgNTUsIDI0LCA5MCwgMjM0LCA1NiwgMjQsIDkwLCAyMTgsIDIxMywgMjksIDMsIDE2MiwgCisgICAgMjksIDMsIDI0MCwgMjIyLCAyOSwgMywgMjQxLCAxODAsIDI5LCAzLCAyNDIsIDQ2LCAyOSwgMywgMjQxLCAyMjAsIDI5LCAzLCAKKyAgICAyNDEsIDIzOCwgMjksIDMsIDI0MSwgNjgsIDI5LCAzLCAyNDEsIDY3LCAyOSwgMywgMjMzLCAxMzUsIDI5LCAzLCAyMzIsIAorICAgIDk4LCAyOSwgMywgMjMyLCAyNDEsIDI5LCAzLCAyMzMsIDEzNCwgMjksIDMsIDIzMywgNTAsIDI5LCAzLCAyMzMsIDU4LCAyOSwgCisgICAgMywgMjMyLCAxNTYsIDI5LCAzLCAyMzIsIDcwLCAyOSwgMywgMjQxLCAxODksIDI5LCAzLCAyNDEsIDE4MywgMjksIDMsIAorICAgIDI0MSwgMTg1LCAyOSwgMywgMjQxLCAxODgsIDI5LCAzLCAyNDEsIDE4NiwgMjksIDMsIDI0MSwgMTg3LCAyOSwgMywgMjQxLCAKKyAgICAxODQsIDI5LCAzLCAyNDEsIDE4MiwgMjksIDMsIDE4NCwgMjksIDMsIDIzMCwgMTAyLCAyOSwgMywgMjMwLCAyMzAsIDI5LCAKKyAgICAzLCAyMzEsIDIzNywgMjksIDMsIDIzMSwgODAsIDI5LCAzLCAyMzEsIDkxLCAyOSwgMywgMjMwLCAxNjEsIDI5LCAzLCAyMzAsIAorICAgIDQyLCAyOSwgMywgMjE3LCAxNjMsIDI5LCAzLCAyMTcsIDE1NywgMjksIDMsIDIxNywgMTU5LCAyOSwgMywgMjE3LCAxNjIsIAorICAgIDI5LCAzLCAyMTcsIDE2MCwgMjksIDMsIDIxNywgMTYxLCAyOSwgMywgMjE3LCAxNTgsIDI5LCAzLCAyMTcsIDE1NiwgMjksIAorICAgIDMsIDIwNSwgMjksIDMsIDIyMiwgMTQwLCAyOSwgMywgMjIzLCAzNSwgMjksIDMsIDIyMywgMTg0LCAyOSwgMywgMjIzLCAKKyAgICAxMDgsIDI5LCAzLCAyMjMsIDEyOCwgMjksIDMsIDIyMiwgMjExLCAyOSwgMywgMjIyLCAxMDksIDI5LCAzLCAyMDYsIDI5LCAKKyAgICAzLCAyMTgsIDgzLCAyOSwgMywgMjE5LCAxOTEsIDI5LCAzLCAyMjIsIDMxLCAyOSwgMywgMjIxLCAxNzAsIDI5LCAzLCAyMjEsIAorICAgIDE4MSwgMjksIDMsIDIxOSwgNTgsIDI5LCAzLCAyMTcsIDI1MywgMjksIDMsIDIyMCwgMTAyLCAyOSwgMywgMjE5LCAyMjUsIAorICAgIDI5LCAzLCAyMjAsIDMyLCAyOSwgMywgMjIwLCA5OCwgMjksIDMsIDIyMCwgNjEsIDI5LCAzLCAyMjAsIDYzLCAyOSwgMywgCisgICAgMjIwLCA3LCAyOSwgMywgMjE5LCAyMDgsIDI5LCAzLCAyMjQsIDg4LCAyOSwgMywgMjI0LCAzMCwgMjksIDMsIDIyNCwgNTMsIAorICAgIDI5LCAzLCAyMjQsIDg3LCAyOSwgMywgMjI0LCA2OCwgMjksIDMsIDIyNCwgNjksIDI5LCAzLCAyMjQsIDQyLCAyOSwgMywgCisgICAgMjI0LCA0MSwgMjksIDMsIDIyMywgMjQyLCAyOSwgMywgMjIzLCAyMzgsIDI5LCAzLCAyMjMsIDI0MSwgMjksIDMsIDIyMywgCisgICAgMjM5LCAyOSwgMywgMjIzLCAyNDAsIDI5LCAzLCAyMjQsIDY1LCAyOSwgMywgMjI0LCA1OSwgMjksIDMsIDIyNCwgNjEsIDI5LCAKKyAgICAzLCAyMjQsIDY0LCAyOSwgMywgMjI0LCA2MiwgMjksIDMsIDIyNCwgNjMsIDI5LCAzLCAyMjQsIDYwLCAyOSwgMywgMjI0LCAKKyAgICA1OCwgMjksIDMsIDIyNCwgNTQsIDI5LCAzLCAyMjQsIDU3LCAyOSwgMywgMjI0LCA1NSwgMjksIDMsIDIyNCwgNTYsIDI5LCAKKyAgICAzLCAyNTIsIDE5MSwgMjksIDMsIDI1MSwgMTI1LCAyOSwgMywgMjUyLCA2LCAyOSwgMywgMjUyLCAxODksIDI5LCAzLCAyNTIsIAorICAgIDY2LCAyOSwgMywgMjUyLCA3NSwgMjksIDMsIDI1MSwgMjA1LCAyOSwgMywgMjUxLCA4MywgMjksIDMsIDIxNCwgMjcsIDI5LCAKKyAgICAzLCAyMTIsIDExNiwgMjksIDMsIDIxMywgMTc2LCAyOSwgMywgMjE0LCAyNiwgMjksIDMsIDIxMywgMjUwLCAyOSwgMywgCisgICAgMjEzLCAyNTUsIDI5LCAzLCAyMTMsIDEzOCwgMjksIDMsIDIxMiwgMTA3LCAyOSwgMywgMjE3LCAxMDUsIDI5LCAzLCAyMTUsIAorICAgIDExOCwgMjksIDMsIDIxNiwgMTE3LCAyOSwgMywgMjE3LCAxMDEsIDI5LCAzLCAyMTcsIDExLCAyOSwgMywgMjE3LCAyMiwgCisgICAgMjksIDMsIDExMSwgMjksIDMsIDIxNSwgODAsIDI5LCAzLCAyNTEsIDMzLCAyOSwgMywgMjQ5LCAxMTIsIDI5LCAzLCAyNTAsIAorICAgIDUxLCAyOSwgMywgMjUxLCAzMiwgMjksIDMsIDI1MCwgMTgyLCAyOSwgMywgMjUwLCAxOTAsIDI5LCAzLCAyNDksIDIzOCwgCisgICAgMjksIDMsIDI0OSwgODEsIDI5LCAzLCAyMTEsIDE2NSwgMjksIDMsIDIxMSwgMTQxLCAyOSwgMywgMjExLCAxNTcsIDI5LCAzLCAKKyAgICAyMTEsIDE2NCwgMjksIDMsIDIxMSwgMTYxLCAyOSwgMywgMjExLCAxNjIsIDI5LCAzLCAyMTEsIDE0OCwgMjksIDMsIDIxMSwgCisgICAgMTQ3LCAyOSwgMywgMjExLCAxMzYsIDI5LCAzLCAyMTEsIDEzMiwgMjksIDMsIDIxMSwgMTM1LCAyOSwgMywgMjExLCAxMzMsIAorICAgIDI5LCAzLCAyMTEsIDEzNCwgMjksIDMsIDE5NywgMjksIDMsIDIyNywgMjM3LCAyOSwgMywgMjI4LCAyMzMsIDI5LCAzLCAKKyAgICAyMjksIDIyNSwgMjksIDMsIDIyOSwgMTAzLCAyOSwgMywgMjI5LCAxMDcsIDI5LCAzLCAyMjgsIDc0LCAyOSwgMywgMjI3LCAKKyAgICAxNzQsIDI5LCAzLCAyMjcsIDE2NSwgMjksIDMsIDIyNywgMTI4LCAyOSwgMywgMjI3LCAxNDgsIDI5LCAzLCAyMjcsIDE2NCwgCisgICAgMjksIDMsIDIyNywgMTU1LCAyOSwgMywgMjI3LCAxNTYsIDI5LCAzLCAyMjcsIDEzNCwgMjksIDMsIDIyNywgMTE5LCAyOSwgCisgICAgMywgMjQyLCAxODAsIDYxLCAyOSwgMywgMjQyLCAxODAsIDcwLCAyOSwgMywgMjQyLCAxODAsIDczLCAyOSwgMywgMjQyLCAKKyAgICAxODAsIDI1NSwgNzMsIDI5LCAzLCAyNDIsIDE4MCwgMjQ1LCAyMDksIDI5LCAzLCAyNDIsIDE4MCwgNzUsIDI5LCAzLCAyNDIsIAorICAgIDE4MCwgNzYsIDI5LCAzLCAyNDIsIDE4MCwgMjEyLCA2NSwgMjksIDMsIDE3NiwgMjksIDMsIDIzMywgMjE3LCAyOSwgMywgCisgICAgMjM0LCA5MiwgMjksIDMsIDIzNSwgMTAsIDI5LCAzLCAyMzQsIDE4MSwgMjksIDMsIDIzNCwgMTgyLCAyOSwgMywgMjM0LCAKKyAgICAyOCwgMjksIDMsIDIzNCwgMjcsIDI5LCAzLCAyMzMsIDE4MiwgMjksIDMsIDIzMywgMTc2LCAyOSwgMywgMjMzLCAxODEsIAorICAgIDI5LCAzLCAyMzMsIDE3NywgMjksIDMsIDIzMywgMTc4LCAyOSwgMywgMjMzLCAxNzEsIDI5LCAzLCAyMzMsIDE2NSwgMjksIAorICAgIDMsIDIzMywgMTY3LCAyOSwgMywgMjMzLCAxNzAsIDI5LCAzLCAyMzMsIDE2OCwgMjksIDMsIDIzMywgMTY5LCAyOSwgMywgCisgICAgMjMzLCAxNjYsIDI5LCAzLCAyMzMsIDE2NCwgMjksIDMsIDIzMywgMTYwLCAyOSwgMywgMjMzLCAxNjMsIDI5LCAzLCAyMzMsIAorICAgIDE2MSwgMjksIDMsIDIzMywgMTYyLCAyOSwgMywgMjEyLCA2NSwgMjksIDMsIDIxMSwgMTk1LCAyOSwgMywgMjExLCAyNTAsIAorICAgIDI5LCAzLCAyMTIsIDY0LCAyOSwgMywgMjEyLCAxNywgMjksIDMsIDIxMiwgMjIsIDI5LCAzLCAyMTEsIDIyNywgMjksIDMsIAorICAgIDIxMSwgMjI2LCAyOSwgMywgMjI1LCAxMzksIDYxLCAyOSwgMywgMjI1LCAxMzksIDcwLCAyOSwgMywgMjI1LCAxMzksIDczLCAKKyAgICAyOSwgMywgMjI1LCAxMzksIDI1NSwgNzMsIDI5LCAzLCAyMjUsIDEzOSwgMjQ1LCAyMDksIDI5LCAzLCAyMjUsIDEzOSwgNzUsIAorICAgIDI5LCAzLCAyMjUsIDEzOSwgNzYsIDI5LCAzLCAyMTAsIDExNiwgMjksIDMsIDIxMCwgMTMsIDI5LCAzLCAyMTAsIDQ0LCAyOSwgCisgICAgMywgMjEwLCAxMTUsIDI5LCAzLCAyMTAsIDkyLCAyOSwgMywgMjEwLCA5NCwgMjksIDMsIDIxMCwgMjMsIDI5LCAzLCAyMTAsIAorICAgIDAsIDI5LCAzLCAyMTAsIDgyLCAyOSwgMywgMjEwLCA2MiwgMjksIDMsIDIxMCwgNjksIDI5LCAzLCAyMTAsIDgxLCAyOSwgMywgCisgICAgMjEwLCA3MywgMjksIDMsIDIxMCwgNzQsIDI5LCAzLCAyMTAsIDY3LCAyOSwgMywgMjEwLCA1MywgMjksIDMsIDE5MSwgMjksIAorICAgIDMsIDIxMCwgMjEyLCAyOSwgMywgMjExLCA4LCAyOSwgMywgMjExLCAxMDMsIDI5LCAzLCAyMTEsIDQ0LCAyOSwgMywgMjExLCAKKyAgICA0NywgMjksIDMsIDIxMCwgMjQ0LCAyOSwgMywgMjEwLCAyMzUsIDI5LCAzLCAyNDgsIDIyMSwgMjksIDMsIDI0NiwgNzgsIAorICAgIDI5LCAzLCAyNDgsIDMsIDI5LCAzLCAyNDgsIDIyMCwgMjksIDMsIDI0OCwgNzcsIDI5LCAzLCAyNDgsIDkwLCAyOSwgMywgCisgICAgMjQ3LCAxNDUsIDI5LCAzLCAyNDYsIDQ3LCAyOSwgMywgMjQ4LCAxMzUsIDI5LCAzLCAyNDgsIDEwMCwgMjksIDMsIDI0OCwgCisgICAgMTEyLCAyOSwgMywgMjQ4LCAxMzQsIDI5LCAzLCAyNDgsIDEyMiwgMjksIDMsIDI0OCwgMTIzLCAyOSwgMywgMjQ4LCAxMDUsIAorICAgIDI5LCAzLCAyNDgsIDkxLCAyOSwgMywgMjM1LCAxNDEsIDI5LCAzLCAyMzUsIDUxLCAyOSwgMywgMjM1LCAxMDgsIDI5LCAzLCAKKyAgICAyMzUsIDE0MCwgMjksIDMsIDIzNSwgMTI0LCAyOSwgMywgMjM1LCAxMjYsIDI5LCAzLCAyMzUsIDY4LCAyOSwgMywgMjM1LCAKKyAgICAzMSwgMjksIDMsIDI0MywgMTM1LCAyOSwgMywgMjQyLCAxMTMsIDI5LCAzLCAyNDIsIDIxNCwgMjksIDMsIDI0MywgMTMyLCAKKyAgICAyOSwgMywgMjQzLCA1NSwgMjksIDMsIDI0MywgNjIsIDI5LCAzLCAyNDIsIDE3NCwgMjksIDMsIDI0MiwgMTczLCAyOSwgMywgCisgICAgMjQyLCA3OCwgMjksIDMsIDI0MiwgNzQsIDI5LCAzLCAyNDIsIDc3LCAyOSwgMywgMjQyLCA3NSwgMjksIDMsIDI0MiwgNzYsIAorICAgIDI5LCAzLCAyNDMsIDI5LCAyOSwgMywgMjQzLCA5LCAyOSwgMywgMjQzLCAxOSwgMjksIDMsIDI0MywgMjgsIDI5LCAzLCAKKyAgICAyNDMsIDIzLCAyOSwgMywgMjQzLCAyNCwgMjksIDMsIDI0MywgMTMsIDI5LCAzLCAyNDIsIDI1NCwgMjksIDMsIDIxNiwgCisgICAgMjA4LCAyOSwgMywgMjE2LCAxMzYsIDI5LCAzLCAyMTYsIDE3NSwgMjksIDMsIDIxNiwgMjA3LCAyOSwgMywgMjE2LCAxOTQsIAorICAgIDI5LCAzLCAyMTYsIDE5NSwgMjksIDMsIDIxNiwgMTU2LCAyOSwgMywgMjE2LCAxMjgsIDI5LCAzLCAyNTAsIDE1NywgMjksIAorICAgIDMsIDI1MCwgNjksIDI5LCAzLCAyNTAsIDExMCwgMjksIDMsIDI1MCwgMTU2LCAyOSwgMywgMjUwLCAxMjgsIDI5LCAzLCAKKyAgICAyNTAsIDEzMSwgMjksIDMsIDI1MCwgODYsIDI5LCAzLCAyNTAsIDU4LCAyOSwgMywgMjI1LCAxNDcsIDI5LCAzLCAyMjUsIAorICAgIDExNCwgMjksIDMsIDIyNSwgMTMzLCAyOSwgMywgMjI1LCAxNDYsIDI5LCAzLCAyMjUsIDEzNSwgMjksIDMsIDIyNSwgMTM2LCAKKyAgICAyOSwgMywgMjI1LCAxMjEsIDI5LCAzLCAyMjUsIDExMCwgMjksIDMsIDIxNSwgMTgzLCAyOSwgMywgMjE1LCAxNjMsIDI5LCAKKyAgICAzLCAyMTUsIDE2NywgMjksIDMsIDIxNSwgMTgyLCAyOSwgMywgMjE1LCAxNzcsIDI5LCAzLCAyMTUsIDE3OCwgMjksIDMsIAorICAgIDIxNSwgMTY2LCAyOSwgMywgMjE1LCAxNjEsIDI5LCAzLCAyMTUsIDM5LCAyOSwgMywgMjE1LCAzMSwgMjksIDMsIDIxNSwgCisgICAgMzUsIDI5LCAzLCAyMTUsIDM4LCAyOSwgMywgMjE1LCAzNiwgMjksIDMsIDIxNSwgMzcsIDI5LCAzLCAyMTUsIDMzLCAyOSwgCisgICAgMywgMjE1LCAzMiwgMjksIDMsIDI0NCwgMTk2LCAyOSwgMywgMjQzLCAyMzQsIDI5LCAzLCAyNDQsIDEyMSwgMjksIDMsIAorICAgIDI0NCwgMTk1LCAyOSwgMywgMjQ0LCAxNDcsIDI5LCAzLCAyNDQsIDE1NCwgMjksIDMsIDI0NCwgNDMsIDI5LCAzLCAyNDMsIAorICAgIDIxMywgMjksIDMsIDE5MCwgMjksIDMsIDIyNCwgMTUwLCAyOSwgMywgMjI1LCAxMDgsIDI5LCAzLCAyMjYsIDg5LCAyOSwgMywgCisgICAgMjI1LCAyMTEsIDI5LCAzLCAyMjUsIDIyMSwgMjksIDMsIDIyNSwgMTYsIDI5LCAzLCAyMjQsIDExNCwgMjksIDMsIDIyMiwgCisgICAgOTksIDI5LCAzLCAyMzAsIDMxLCAyOSwgMywgMjQzLCAyMDcsIDI5LCAzOCwgMjQzLCA1MywgMjIsIDI1LCAyMzMsIDIzLCAKKyAgICA3OCwgMjksIDM4LCAyNSwgMjMzLCAyMywgNzgsIDI5LCAzOCwgMjQzLCA1MywgNzgsIDI5LCAyMjEsIDE3MywgNzgsIDI5LCAKKyAgICAyMTEsIDIwOCwgMjksIDI0MywgMjI5LCAyMTgsIDEyOSwgMjksIDI0OSwgMjE5LCAyOSwgMjIwLCAxNTAsIDI5LCAyNDksIAorICAgIDIyNiwgMjksIDIyNCwgMTk5LCAyNDksIDIyNiwgMjksIDIyNCwgMTMsIDc4LCAyOSwgMjI2LCAxNSwgMjIwLCAxMzcsIDI5LCAKKyAgICAyMSwgMTEwLCAyOSwgMjEsIDEwNSwgMjksIDIxLCAxNTgsIDI5LCAyMSwgMTYxLCAyOSwgMjEsIDE4OSwgMjksIDIxLCAxOTQsIAorICAgIDI5LCAyMSwgMTk4LCAyOSwgMjEsIDE5NSwgMjksIDIxLCAyMDAsIDI5LCA1NCwgMjE2LCAyNDcsIDI5LCA1NCwgMjE1LCA3MywgCisgICAgMjksIDU0LCAyMTYsIDE2MiwgMjksIDU0LCAyNDQsIDE1LCAyOSwgNTQsIDI0NCwgMTE0LCAyOSwgNTQsIDIxOSwgMTExLCAKKyAgICAyOSwgNTQsIDIyMCwgMTE2LCAyOSwgNTQsIDI0NSwgMTg0LCAyOSwgNTQsIDIyOCwgMTk1LCAyOSwgNTQsIDI0MCwgMjEwLCAKKyAgICAyOSwgNTQsIDIxNiwgMjQ4LCAyMTYsIDE0NywgMjksIDMsIDIyMSwgMTc3LCAyMzAsIDQyLCAyOSwgMywgMjMwLCAzOCwgMjksIAorICAgIDMsIDIzMCwgMzksIDI5LCAzLCAyMzAsIDQwLCAyOSwgMywgMjIxLCAxNzcsIDI1MSwgODMsIDI5LCAzLCAyNTEsIDgwLCAyOSwgCisgICAgMywgMjUxLCA4MSwgMjksIDMsIDI1MSwgODIsIDI5LCAzLCAyMjEsIDE3NywgMjQzLCAyMTMsIDI5LCAzLCAyNDMsIDIwOSwgCisgICAgMjksIDMsIDI0MywgMjEwLCAyOSwgMywgMjQzLCAyMTEsIDI5LCAzLCAyMjEsIDE3NywgMjI0LCAxMTQsIDI5LCAzLCAyMjQsIAorICAgIDExMCwgMjksIDMsIDIyNCwgMTExLCAyOSwgMywgMjI0LCAxMTIsIDI5LCAyMTYsIDMxLCAxNjQsIDIxMCwgMjQ3LCAyOSwgCisgICAgMjE2LCAzMSwgMTY0LCAyNDgsIDQxLCAyOSwgMjE2LCAzMSwgMTY0LCAyMjIsIDIzOCwgMjksIDIxNiwgMzEsIDE2NCwgMjE5LCAKKyAgICAyNTEsIDIyMiwgMjM4LCAyOSwgMjE2LCAzMSwgMTY0LCAyNDcsIDIzNSwgMjksIDIxNiwgMzEsIDE2NCwgMjM0LCAxNjQsIAorICAgIDI5LCAyMTYsIDMxLCAxNjQsIDI1MCwgOTQsIDI5LCAyMTYsIDMxLCAxNjQsIDI0MSwgMTc3LCAyOSwgMjE2LCAzMSwgMTY0LCAKKyAgICAyNDgsIDQwLCAyOSwgMjE2LCAzMSwgMTY0LCAyMzMsIDE5NCwgMTY5LCAxLCA2MSwgMTY5LCAxLCA3NSwgMTY5LCAxLCA3MywgCisgICAgMTY5LCAxLCA3NiwgMTY5LCAxLCA3MCwgMTY5LCAxLCAyMTQsIDEwNSwgMTY5LCAxLCAyNDMsIDEzNSwgMTY5LCAxLCAxNzYsIAorICAgIDE2OSwgMSwgMjQzLCA2MiwgMTY5LCAxLCAyNDIsIDIxNCwgMTY5LCAxLCAyNDIsIDE3NCwgMTY5LCAxLCAyNDIsIDExMywgCisgICAgMTY5LCAxLCAyNDIsIDc5LCAxNjksIDEsIDE2MiwgMTY5LCAxLCAyNDEsIDIzOCwgMTY5LCAxLCAyNDEsIDE4MCwgMTY5LCAxLCAKKyAgICAyNDEsIDY4LCAxNjksIDEsIDI0MCwgMjIyLCAxNjksIDEsIDI0MCwgMjAxLCAxNjksIDEsIDIzMywgMTM1LCAxNjksIDEsIAorICAgIDIzMywgNTgsIDE2OSwgMSwgMjMyLCAyNDEsIDE2OSwgMSwgMjMyLCAxNTYsIDE2OSwgMSwgMjMyLCA5OCwgMTY5LCAxLCAKKyAgICAyMzIsIDcxLCAxNjksIDEsIDE4NCwgMTY5LCAxLCAyMzEsIDkxLCAxNjksIDEsIDIzMCwgMjMwLCAxNjksIDEsIDIzMCwgCisgICAgMTYxLCAxNjksIDEsIDIzMCwgMTAyLCAxNjksIDEsIDE5NywgMTY5LCAxLCAyNDEsIDkwLCAxNjksIDEsIDIyOSwgMjEzLCAKKyAgICAxNjksIDEsIDIyOSwgMTA3LCAxNjksIDEsIDIyOCwgMjMzLCAxNjksIDEsIDIyOCwgNzQsIDE2OSwgMSwgMjI3LCAyMzcsIAorICAgIDE2OSwgMSwgMjI3LCAxNzYsIDE2OSwgMSwgMjI0LCAyOSwgMTY5LCAxLCAyMjQsIDE2LCAxNjksIDEsIDIyNCwgOSwgMTY5LCAKKyAgICAxLCAyMjQsIDEsIDE2OSwgMSwgMjIzLCAyNDYsIDE2OSwgMSwgMjIzLCAyNDQsIDE2OSwgMSwgMjA2LCAxNjksIDEsIDIyMiwgCisgICAgOTEsIDE2OSwgMSwgMjIxLCAxODEsIDE2OSwgMSwgMjE5LCAxOTEsIDE2OSwgMSwgMjE5LCA1OCwgMTY5LCAxLCAyMTgsIDgzLCAKKyAgICAxNjksIDEsIDIxOCwgMiwgMTY5LCAxLCAyNDgsIDIyMSwgMTY5LCAxLCAyMTcsIDEwNSwgMTY5LCAxLCAyNDgsIDkwLCAxNjksIAorICAgIDEsIDIxNywgMjIsIDE2OSwgMSwgMjQ4LCAzLCAxNjksIDEsIDIxNiwgMTE3LCAxNjksIDEsIDI0NywgMTQ1LCAxNjksIDEsIAorICAgIDI0NiwgNzgsIDE2OSwgMSwgMjQ2LCA1MCwgMTY5LCAxLCAyNDcsIDE1NiwgMTY5LCAxLCAyMTYsIDU5LCAxNjksIDEsIDIxNiwgCisgICAgNTgsIDE2OSwgMSwgMjE2LCA0NywgMTY5LCAxLCAyMTYsIDQ2LCAxNjksIDEsIDIxNiwgNDUsIDE2OSwgMSwgMjE2LCA0NCwgCisgICAgMTY5LCAxLCAyMTUsIDE4MywgMTY5LCAxLCAyMTUsIDE3OCwgMTY5LCAxLCAyMTUsIDE2NywgMTY5LCAxLCAyMTUsIDE2NiwgCisgICAgMTY5LCAxLCAyMTUsIDE2MywgMTY5LCAxLCAyMTUsIDE2MiwgMTY5LCAxLCAyMTIsIDY1LCAxNjksIDEsIDIxMiwgMjIsIAorICAgIDE2OSwgMSwgMjExLCAyNTAsIDE2OSwgMSwgMjExLCAyMjcsIDE2OSwgMSwgMjExLCAxOTUsIDE2OSwgMSwgMjExLCAxODMsIAorICAgIDE2OSwgMSwgMTkxLCAxNjksIDEsIDIxMSwgNDcsIDE2OSwgMSwgMjExLCA4LCAxNjksIDEsIDIxMCwgMjQ0LCAxNjksIDEsIAorICAgIDIxMCwgMjEyLCAxNjksIDEsIDIxMCwgMTc3LCAxOCwgMTksIDI0MCwgMTY4LCAxOCwgMTksIDc1LCAxOCwgMTksIDI1NSwgCisgICAgMzcsIDE4LCAxOSwgNzMsIDE4LCAxOSwgMjM2LCAzMywgMTgsIDE5LCA3NiwgMTgsIDE5LCAyMjYsIDE4MywgMTgsIDE5LCAKKyAgICAyMTEsIDExNiwgMjI2LCAxODMsIDE4LCAxOSwgNzIsIDI0NSwgMjA5LCAxOCwgMTksIDcyLCA3MywgMTgsIDE5LCA2MSwgMTgsIAorICAgIDE5LCAyNTUsIDczLCAxOCwgMTksIDIxMiwgMjIsIDE4LCAxOSwgMTU5LCAyMTIsIDIyLCAxOCwgMTksIDIxMSwgMjUwLCAxOCwgCisgICAgMTksIDE1OSwgMjExLCAyNTAsIDE4LCAxOSwgMjExLCAyNDIsIDE4LCAxOSwgMTU5LCAyMTEsIDI0MiwgMTgsIDE5LCAyMTEsIAorICAgIDIyNywgMTgsIDE5LCAxNTksIDIxMSwgMjI3LCAxOCwgMTksIDIxMSwgMjE1LCAxOCwgMTksIDE1OSwgMjExLCAyMTUsIDE4LCAKKyAgICAxOSwgMjI5LCAxOTAsIDIxMSwgMjE1LCAxOCwgMTksIDIxMiwgNjUsIDE4LCAxOSwgMTU5LCAyMTIsIDY1LCAxOCwgMTksIAorICAgIDIxMiwgNjQsIDE4LCAxOSwgMTU5LCAyMTIsIDY0LCAxOCwgMTksIDIyOSwgMTkwLCAyMTIsIDY0LCAxOCwgMTksIDI1NCwgCisgICAgMjAxLCAxOCwgMTksIDIxMSwgMTE2LCAyMTIsIDk4LCAxOCwgMTksIDI0MiwgMTgwLCAyMTgsIDEyOSwgMTgsIDE5LCA0MCwgCisgICAgMTQyLCAxOCwgMTksIDQwLCAyNDIsIDEzNiwgMTgsIDE5LCA0MCwgMjUxLCAxNzUsIDE2MywgMjIyLCAyMzMsIDE4LCAxOSwgCisgICAgNDAsIDIxNiwgMTQsIDE2MywgMjIyLCAyMzMsIDE4LCAxOSwgNDAsIDQ0LCAxNjMsIDIyMiwgMjMzLCAxOCwgMTksIDQwLCAKKyAgICAyMjIsIDIzMywgMTgsIDE5LCA0MCwgNTIsIDE0MiwgMTgsIDE5LCA0MCwgNTIsIDIxOSwgMjUxLCA2NywgMjE4LCA5MCwgMTgsIAorICAgIDE5LCA0MCwgMjMwLCAyMjQsIDI0NywgMTIwLCAxOCwgMTksIDQwLCAyMTksIDI1MSwgMjAzLCA5MSwgMTgsIDE5LCA0MCwgCisgICAgMjI1LCAyMiwgMTgsIDE5LCA0MCwgMTI0LCAyMTcsIDg3LCAxOCwgMTksIDI0NSwgMTUwLCAxOCwgMTksIDIzNSwgMjU1LCAKKyAgICAxOCwgMTksIDIyNiwgMTk2LCAxOCwgMTksIDI1NCwgMTIzLCAxOCwgMTksIDIyNSwgMjIxLCAxOCwgMTksIDIyNiwgODcsIAorICAgIDE4LCAxOSwgMjI1LCAxMDgsIDE4LCAxOSwgMjI1LCA3MSwgMTgsIDE5LCAyMjUsIDE2LCAxOCwgMTksIDIyNCwgMjQ5LCAxOCwgCisgICAgMTksIDIxMSwgMTE2LCAyMjQsIDI0OSwgMTgsIDE5LCA3MiwgMjQxLCAyMjAsIDE4LCAxOSwgNzIsIDI0MSwgMTgwLCAxOCwgCisgICAgMTksIDE5MCwgMTgsIDE5LCAyMjYsIDg5LCAxOCwgMTksIDIyNCwgMTEyLCAxOCwgMTksIDE1OSwgMjI0LCAxMTIsIDE4LCAKKyAgICAxOSwgMjI0LCAxMTAsIDE4LCAxOSwgMTU5LCAyMjQsIDExMCwgMTgsIDE5LCAyMjQsIDEwOSwgMTgsIDE5LCAxNTksIDIyNCwgCisgICAgMTA5LCAxOCwgMTksIDIyNCwgMTA3LCAxOCwgMTksIDE1OSwgMjI0LCAxMDcsIDE4LCAxOSwgMjI0LCAxMDYsIDE4LCAxOSwgCisgICAgMTU5LCAyMjQsIDEwNiwgMTgsIDE5LCAyMjQsIDExNCwgMTgsIDE5LCAxNTksIDIyNCwgMTE0LCAxOCwgMTksIDIyNCwgMTEzLCAKKyAgICAxOCwgMTksIDE1OSwgMjI0LCAxMTMsIDE4LCAxOSwgMjExLCAxMTYsIDIyNCwgMTEzLCAxOCwgMTksIDIyNiwgMTA1LCAxOCwgCisgICAgMTksIDE1OSwgMjI2LCAxMDUsIDE4LCAxOSwgNzIsIDI0MiwgNjAsIDE4LCAxOSwgMjE3LCAyMiwgMTgsIDE5LCAyMTcsIDk5LCAKKyAgICAxOCwgMTksIDIxNiwgMTE3LCAxOCwgMTksIDIxNiwgMTAzLCAxOCwgMTksIDExMSwgMTgsIDE5LCAyMTYsIDE3LCAxOCwgMTksIAorICAgIDIxMSwgMTE2LCAyMTYsIDE3LCAxOCwgMTksIDcyLCAyNDgsIDc3LCAxOCwgMTksIDcyLCAyNDgsIDMsIDE4LCAxOSwgMjE3LCAKKyAgICAxMDUsIDE4LCAxOSwgMjE3LCAxMDEsIDE4LCAxOSwgMjE1LCA3OCwgMTgsIDE5LCAxNTksIDIxNSwgNzgsIDE4LCAxOSwgCisgICAgMjE1LCA2MiwgMTgsIDE5LCAxNTksIDIxNSwgNjIsIDE4LCAxOSwgMjE1LCA2MSwgMTgsIDE5LCAxNTksIDIxNSwgNjEsIDE4LCAKKyAgICAxOSwgMTA1LCAxOCwgMTksIDE1OSwgMTA1LCAxOCwgMTksIDIxNSwgNTQsIDE4LCAxOSwgMTU5LCAyMTUsIDU0LCAxOCwgMTksIAorICAgIDIxNSwgODAsIDE4LCAxOSwgMTU5LCAyMTUsIDgwLCAxOCwgMTksIDIxNSwgNzksIDE4LCAxOSwgMTU5LCAyMTUsIDc5LCAxOCwgCisgICAgMTksIDIyOSwgMTkwLCAyMTUsIDc5LCAxOCwgMTksIDIxNywgMTUyLCAxOCwgMTksIDIxNSwgMTUxLCAxOCwgMTksIDIxNSwgCisgICAgMTM1LCAxOCwgMTksIDIxNSwgMTMzLCAxOCwgMTksIDIxNSwgMTU2LCAxOCwgMTksIDIzNCwgMTgyLCAxOCwgMTksIDIzNSwgCisgICAgNywgMTgsIDE5LCAyMzQsIDkyLCAxOCwgMTksIDIzNCwgODMsIDE4LCAxOSwgMjM0LCAyOCwgMTgsIDE5LCAyMzQsIDEwLCAKKyAgICAxOCwgMTksIDIxMSwgMTE2LCAyMzQsIDEwLCAxOCwgMTksIDE3NiwgMTgsIDE5LCAyMzUsIDEwLCAxOCwgMTksIDIzMywgCisgICAgMTc4LCAxOCwgMTksIDE1OSwgMjMzLCAxNzgsIDE4LCAxOSwgMjMzLCAxNzYsIDE4LCAxOSwgMTU5LCAyMzMsIDE3NiwgMTgsIAorICAgIDE5LCAyMzMsIDE3NSwgMTgsIDE5LCAxNTksIDIzMywgMTc1LCAxOCwgMTksIDIzMywgMTc0LCAxOCwgMTksIDE1OSwgMjMzLCAKKyAgICAxNzQsIDE4LCAxOSwgMjMzLCAxNzMsIDE4LCAxOSwgMTU5LCAyMzMsIDE3MywgMTgsIDE5LCAyMzMsIDE4MiwgMTgsIDE5LCAKKyAgICAxNTksIDIzMywgMTgyLCAxOCwgMTksIDIzMywgMTgxLCAxOCwgMTksIDE1OSwgMjMzLCAxODEsIDE4LCAxOSwgMjI5LCAxOTAsIAorICAgIDIzMywgMTgxLCAxOCwgMTksIDIzNSwgMjMsIDE4LCAxOSwgMjMzLCAxODMsIDE4LCAxOSwgMjE5LCAyNywgMjM0LCAxNzYsIAorICAgIDE4LCAxOSwgMjE5LCAyNywgMjM0LCA4NCwgMTgsIDE5LCAyMTksIDI3LCAyMzQsIDIzLCAxOCwgMTksIDIxOSwgMjcsIDIzNCwgCisgICAgMjQ4LCAxOCwgMTksIDI1MCwgMTkwLCAxOCwgMTksIDI1MSwgMzEsIDE4LCAxOSwgMjUwLCA1MSwgMTgsIDE5LCAyNTAsIDQxLCAKKyAgICAxOCwgMTksIDI0OSwgMjM4LCAxOCwgMTksIDI0OSwgMTc0LCAxOCwgMTksIDIxMSwgMTE2LCAyNDksIDE3NCwgMTgsIDE5LCAKKyAgICAyNTEsIDMzLCAxOCwgMTksIDI1MSwgMzIsIDE4LCAxOSwgMjQ5LCA3OSwgMTgsIDE5LCAxNTksIDI0OSwgNzksIDE4LCAxOSwgCisgICAgMjQ5LCA3NywgMTgsIDE5LCAxNTksIDI0OSwgNzcsIDE4LCAxOSwgMjQ5LCA3NiwgMTgsIDE5LCAxNTksIDI0OSwgNzYsIDE4LCAKKyAgICAxOSwgMjQ5LCA3NSwgMTgsIDE5LCAxNTksIDI0OSwgNzUsIDE4LCAxOSwgMjQ5LCA3NCwgMTgsIDE5LCAxNTksIDI0OSwgNzQsIAorICAgIDE4LCAxOSwgMjQ5LCA4MSwgMTgsIDE5LCAxNTksIDI0OSwgODEsIDE4LCAxOSwgMjQ5LCA4MCwgMTgsIDE5LCAxNTksIDI0OSwgCisgICAgODAsIDE4LCAxOSwgMjI5LCAxOTAsIDI0OSwgODAsIDE4LCAxOSwgMjUxLCA2NiwgMTgsIDE5LCAyMjEsIDIwOSwgMjE2LCAKKyAgICAyMTAsIDE4LCAxOSwgMjMxLCA5MSwgMTgsIDE5LCAyMzEsIDIzNiwgMTgsIDE5LCAyMzAsIDIzMCwgMTgsIDE5LCAyMzAsIAorICAgIDIwMSwgMTgsIDE5LCAyMzAsIDE2MSwgMTgsIDE5LCAyMzAsIDEzMiwgMTgsIDE5LCAyMTEsIDExNiwgMjMwLCAxMzIsIDE4LCAKKyAgICAxOSwgMTg0LCAxOCwgMTksIDIzMSwgMjM3LCAxOCwgMTksIDIzMCwgNDAsIDE4LCAxOSwgMTU5LCAyMzAsIDQwLCAxOCwgMTksIAorICAgIDIzMCwgMzgsIDE4LCAxOSwgMTU5LCAyMzAsIDM4LCAxOCwgMTksIDIzMCwgMzcsIDE4LCAxOSwgMTU5LCAyMzAsIDM3LCAxOCwgCisgICAgMTksIDIzMCwgMzYsIDE4LCAxOSwgMTU5LCAyMzAsIDM2LCAxOCwgMTksIDIzMCwgMzUsIDE4LCAxOSwgMTU5LCAyMzAsIDM1LCAKKyAgICAxOCwgMTksIDIzMCwgNDIsIDE4LCAxOSwgMTU5LCAyMzAsIDQyLCAxOCwgMTksIDIzMCwgNDEsIDE4LCAxOSwgMTU5LCAyMzAsIAorICAgIDQxLCAxOCwgMTksIDIyOSwgMTkwLCAyMzAsIDQxLCAxOCwgMTksIDE5MywgMTgsIDE5LCAxNTksIDE5MywgMTgsIDE5LCAKKyAgICAyMzAsIDIzNCwgMTgsIDE5LCAyNTMsIDIwNSwgMTkzLCAxOCwgMTksIDIyMSwgMjA5LCAxOTMsIDE4LCAxOSwgMjI5LCAxMDcsIAorICAgIDE4LCAxOSwgMjI5LCAyMjQsIDE4LCAxOSwgMjI4LCAyMzMsIDE4LCAxOSwgMjI4LCAyMDgsIDE4LCAxOSwgMjI4LCA3NCwgCisgICAgMTgsIDE5LCAyMjgsIDY0LCAxOCwgMTksIDIxMSwgMTE2LCAyMjgsIDY0LCAxOCwgMTksIDE5NywgMTgsIDE5LCAyMjksIAorICAgIDIyNSwgMTgsIDE5LCAyMjcsIDE3MiwgMTgsIDE5LCAxNTksIDIyNywgMTcyLCAxOCwgMTksIDIyNywgMTc0LCAxOCwgMTksIAorICAgIDE1OSwgMjI3LCAxNzQsIDE4LCAxOSwgMjI3LCAxNzMsIDE4LCAxOSwgMTU5LCAyMjcsIDE3MywgMTgsIDE5LCAyMjksIDE5MCwgCisgICAgMjI3LCAxNzMsIDE4LCAxOSwgMjMwLCAyNSwgMTgsIDE5LCA3MiwgMjI5LCA3OSwgMTgsIDE5LCAyMjgsIDIzOCwgMTgsIDE5LCAKKyAgICAyMzMsIDU4LCAxOCwgMTksIDIzMywgMTMzLCAxOCwgMTksIDIzMiwgMjQxLCAxOCwgMTksIDIzMiwgMjI3LCAxOCwgMTksIAorICAgIDIzMiwgMTU2LCAxOCwgMTksIDIzMiwgMTI3LCAxOCwgMTksIDIxMSwgMTE2LCAyMzIsIDEyNywgMTgsIDE5LCAyMzMsIDEzNSwgCisgICAgMTgsIDE5LCAyMzMsIDEzNCwgMTgsIDE5LCAyMzIsIDY4LCAxOCwgMTksIDE1OSwgMjMyLCA2OCwgMTgsIDE5LCAyMzIsIDY3LCAKKyAgICAxOCwgMTksIDE1OSwgMjMyLCA2NywgMTgsIDE5LCAyMzIsIDY2LCAxOCwgMTksIDE1OSwgMjMyLCA2NiwgMTgsIDE5LCAyMzIsIAorICAgIDY1LCAxOCwgMTksIDE1OSwgMjMyLCA2NSwgMTgsIDE5LCAyMzIsIDY0LCAxOCwgMTksIDE1OSwgMjMyLCA2NCwgMTgsIDE5LCAKKyAgICAyMzIsIDcwLCAxOCwgMTksIDE1OSwgMjMyLCA3MCwgMTgsIDE5LCAyMzIsIDY5LCAxOCwgMTksIDE1OSwgMjMyLCA2OSwgMTgsIAorICAgIDE5LCAxNTYsIDE4LCAxOSwgMTU5LCAxNTYsIDE4LCAxOSwgMTQ3LCAxNTYsIDE4LCAxOSwgMjIxLCAxODEsIDE4LCAxOSwgCisgICAgMjIyLCAyOSwgMTgsIDE5LCAyMTksIDE5MSwgMTgsIDE5LCAyMTksIDE3NSwgMTgsIDE5LCAyMTksIDU4LCAxOCwgMTksIAorICAgIDIxOSwgNDAsIDE4LCAxOSwgMjExLCAxMTYsIDIxOSwgNDAsIDE4LCAxOSwgMjA2LCAxOCwgMTksIDIyMiwgMzEsIDE4LCAxOSwgCisgICAgMjE3LCAyNDksIDE4LCAxOSwgMTU5LCAyMTcsIDI0OSwgMTgsIDE5LCAyMTcsIDI0MywgMTgsIDE5LCAxNTksIDIxNywgMjQzLCAKKyAgICAxOCwgMTksIDIxNywgMjQyLCAxOCwgMTksIDE1OSwgMjE3LCAyNDIsIDE4LCAxOSwgMjE3LCAyMzgsIDE4LCAxOSwgMTU5LCAKKyAgICAyMTcsIDIzOCwgMTgsIDE5LCAyMTcsIDIzNywgMTgsIDE5LCAxNTksIDIxNywgMjM3LCAxOCwgMTksIDIxNywgMjUzLCAxOCwgCisgICAgMTksIDE1OSwgMjE3LCAyNTMsIDE4LCAxOSwgMjE3LCAyNTIsIDE4LCAxOSwgMTU5LCAyMTcsIDI1MiwgMTgsIDE5LCAyMjksIAorICAgIDE5MCwgMjE3LCAyNTIsIDE4LCAxOSwgMjIyLCA5MSwgMTgsIDE5LCAyNTMsIDIwNSwgMjIyLCA5MSwgMTgsIDE5LCAyMTcsIAorICAgIDI1NCwgMTgsIDE5LCAyNTEsIDIxOCwgMjIyLCA5MSwgMTgsIDE5LCAyMzAsIDEyNywgMjE5LCAxMDgsIDE4LCAxOSwgMjI5LCAKKyAgICAxOTAsIDIxOSwgOTksIDE4LCAxOSwgMjI5LCAxOTAsIDIyMiwgODksIDE4LCAxOSwgMjI5LCAxOTAsIDIxOCwgMjM1LCAxOCwgCisgICAgMTksIDIyOSwgMTkwLCAyMTgsIDg2LCAxOCwgMTksIDIyOSwgMTkwLCAyMTksIDk4LCAxOCwgMTksIDIyOSwgMTkwLCAyMjEsIAorICAgIDE4NCwgMTgsIDE5LCAyMjAsIDYzLCAxOCwgMTksIDIyMCwgMzIsIDE4LCAxOSwgMjIwLCAyNywgMTgsIDE5LCAyMjAsIDcsIAorICAgIDE4LCAxOSwgMjIwLCAxLCAxOCwgMTksIDIyMCwgMTAyLCAxOCwgMTksIDIyMCwgOTgsIDE4LCAxOSwgMjE5LCAyMDYsIDE4LCAKKyAgICAxOSwgMTU5LCAyMTksIDIwNiwgMTgsIDE5LCAyMTksIDIwNSwgMTgsIDE5LCAxNTksIDIxOSwgMjA1LCAxOCwgMTksIDIxOSwgCisgICAgMjA0LCAxOCwgMTksIDE1OSwgMjE5LCAyMDQsIDE4LCAxOSwgMjE5LCAyMDMsIDE4LCAxOSwgMTU5LCAyMTksIDIwMywgMTgsIAorICAgIDE5LCAyMTksIDIwMiwgMTgsIDE5LCAxNTksIDIxOSwgMjAyLCAxOCwgMTksIDIxOSwgMjA4LCAxOCwgMTksIDE1OSwgMjE5LCAKKyAgICAyMDgsIDE4LCAxOSwgMjE5LCAyMDcsIDE4LCAxOSwgMTU5LCAyMTksIDIwNywgMTgsIDE5LCAyMjAsIDEwNCwgMTgsIDE5LCAKKyAgICAyMTEsIDQ3LCAxOCwgMTksIDIxMSwgMTAxLCAxOCwgMTksIDIxMSwgOCwgMTgsIDE5LCAyMTAsIDI1NSwgMTgsIDE5LCAyMTAsIAorICAgIDI0NCwgMTgsIDE5LCAyMTAsIDIyOSwgMTgsIDE5LCAyMTEsIDExNiwgMjEwLCAyMjksIDE4LCAxOSwgMTkxLCAxOCwgMTksIAorICAgIDIxMSwgMTAzLCAxOCwgMTksIDIxMCwgMTc0LCAxOCwgMTksIDE1OSwgMjEwLCAxNzQsIDE4LCAxOSwgMjEwLCAxNzMsIDE4LCAKKyAgICAxOSwgMTU5LCAyMTAsIDE3MywgMTgsIDE5LCAyMTAsIDE3MiwgMTgsIDE5LCAxNTksIDIxMCwgMTcyLCAxOCwgMTksIDIxMCwgCisgICAgMTcxLCAxOCwgMTksIDE1OSwgMjEwLCAxNzEsIDE4LCAxOSwgMjEwLCAxNzAsIDE4LCAxOSwgMTU5LCAyMTAsIDE3MCwgMTgsIAorICAgIDE5LCAyMTAsIDE3NiwgMTgsIDE5LCAxNTksIDIxMCwgMTc2LCAxOCwgMTksIDIxMCwgMTc1LCAxOCwgMTksIDE1OSwgMjEwLCAKKyAgICAxNzUsIDE4LCAxOSwgMjI5LCAxOTAsIDIxMCwgMTc1LCAxOCwgMTksIDIxMSwgMTE3LCAxOCwgMTksIDI1MiwgNCwgMjExLCAKKyAgICAxMTcsIDE4LCAxOSwgMTU5LCAyMTEsIDExNywgMTgsIDE5LCAyMjEsIDIwOSwgMjExLCA4LCAxOCwgMTksIDIyMywgMTI4LCAKKyAgICAxOCwgMTksIDIyMywgMjIzLCAyMjMsIDEyOCwgMTgsIDE5LCAxNTksIDIzMywgNTgsIDE4LCAxOSwgMjIzLCAxODMsIDE4LCAKKyAgICAxOSwgMjIzLCAzNSwgMTgsIDE5LCAyMjIsIDIzOSwgMTgsIDE5LCAyMjIsIDIxMSwgMTgsIDE5LCAyMjIsIDE5NywgMTgsIAorICAgIDE5LCAxNTksIDIzMiwgMTU2LCAxOCwgMTksIDIwNSwgMTgsIDE5LCAyMjMsIDE4NCwgMTgsIDE5LCAxNTksIDIzMywgMTM1LCAKKyAgICAxOCwgMTksIDIyMiwgMTA4LCAxOCwgMTksIDE1OSwgMjIyLCAxMDgsIDE4LCAxOSwgMTUzLCAxOCwgMTksIDE1OSwgMTUzLCAKKyAgICAxOCwgMTksIDE0NywgMTUzLCAxOCwgMTksIDI0NCwgMTU0LCAxOCwgMTksIDI0NCwgMTkzLCAxOCwgMTksIDI0NCwgMTIxLCAKKyAgICAxOCwgMTksIDI0NCwgMTA4LCAxOCwgMTksIDI0NCwgNDMsIDE4LCAxOSwgMjQ0LCAzNCwgMTgsIDE5LCAyNDQsIDE5NiwgMTgsIAorICAgIDE5LCAyNDQsIDE5NSwgMTgsIDE5LCAyNDMsIDIxMiwgMTgsIDE5LCAxNTksIDI0MywgMjEyLCAxOCwgMTksIDI0NSwgNiwgCisgICAgMTgsIDE5LCAyMTYsIDE5NSwgMTgsIDE5LCAyMzAsIDIzLCAyMTYsIDE5NSwgMTgsIDE5LCAyMTYsIDE3NSwgMTgsIDE5LCAKKyAgICAyMzAsIDIzLCAyMTYsIDE3NSwgMTgsIDE5LCAyMTYsIDE3MSwgMTgsIDE5LCAyMzAsIDIzLCAyMTYsIDE3MSwgMTgsIDE5LCAKKyAgICAyMTYsIDE1NiwgMTgsIDE5LCAyMTYsIDE1MywgMTgsIDE5LCAyMTYsIDIwOCwgMTgsIDE5LCAyMTYsIDIwNywgMTgsIDE5LCAKKyAgICAyMTYsIDEyNywgMTgsIDE5LCAxNTksIDIxNiwgMTI3LCAxOCwgMTksIDIxNiwgMjEwLCAxOCwgMTksIDIxNSwgMTQyLCAxOCwgCisgICAgMTksIDIxNSwgMTQwLCAxOCwgMTksIDIxNSwgMTM5LCAxOCwgMTksIDIxNSwgMTQ0LCAxOCwgMTksIDIxNSwgMTQ1LCAxOCwgCisgICAgMTksIDIxNSwgNTIsIDE4LCAxOSwgMjE1LCA1MSwgMTgsIDE5LCAyMTUsIDUwLCAxOCwgMTksIDIxNSwgNTMsIDE4LCAxOSwgCisgICAgMjI3LCAxOTMsIDI0MSwgMjM4LCAxOCwgMTksIDIyNywgMTkzLCAyNDEsIDE4MCwgMTgsIDE5LCAyMjcsIDE5MywgMjQxLCAKKyAgICAxNjEsIDE4LCAxOSwgMjI3LCAxOTMsIDI0MSwgNjgsIDE4LCAxOSwgMjI3LCAxOTMsIDI0MSwgNTMsIDE4LCAxOSwgMjI3LCAKKyAgICAxOTMsIDE2MiwgMTgsIDE5LCAyMjcsIDE5MywgMjQyLCA0NiwgMTgsIDE5LCAyMjcsIDE5MywgMjQyLCA2MCwgMTgsIDE5LCAKKyAgICAyMjcsIDE5MiwgMjQyLCA2MCwgMTgsIDE5LCAyNDEsIDE1NCwgMTgsIDE5LCAyMjQsIDg0LCAxOCwgMTksIDIyNCwgNTMsIAorICAgIDE4LCAxOSwgMjI0LCA0OCwgMTgsIDE5LCAyMjQsIDQyLCAxOCwgMTksIDIyNCwgMzcsIDE4LCAxOSwgMjI0LCA4OCwgMTgsIAorICAgIDE5LCAyMjQsIDg3LCAxOCwgMTksIDIyNCwgOTYsIDE4LCAxOSwgMjE2LCA1NSwgMTgsIDE5LCAyMTYsIDUzLCAxOCwgMTksIAorICAgIDIxNiwgNTIsIDE4LCAxOSwgMjE2LCA1NiwgMTgsIDE5LCAxNTksIDIyMywgMTI4LCAxOCwgMTksIDE1OSwgMjIzLCAzNSwgCisgICAgMTgsIDE5LCAxNTksIDIyMiwgMjExLCAxOCwgMTksIDE1OSwgMjA1LCAxOCwgMTksIDIyOSwgNzUsIDE4LCAxOSwgMjI5LCAKKyAgICAyNywgMTgsIDE5LCAyMjksIDIzLCAxOCwgMTksIDIyOSwgNCwgMTgsIDE5LCAyMjgsIDI1NSwgMTgsIDE5LCAyMjksIDc3LCAKKyAgICAxOCwgMTksIDIyOSwgNzYsIDE4LCAxOSwgMjI5LCA3OSwgMTgsIDE5LCAyMjgsIDEwMywgMTgsIDE5LCAyMjEsIDIwOSwgCisgICAgMjIwLCA2MywgMTgsIDE5LCAyMjEsIDIwOSwgMjIwLCAzMiwgMTgsIDE5LCAyMjEsIDIwOSwgMjIwLCA3LCAxOCwgMTksIAorICAgIDIyMSwgMjA5LCAyMjAsIDEwMiwgMTgsIDE5LCAyMTEsIDIxMywgMjE2LCAxOTUsIDE4LCAxOSwgMjExLCAyMTMsIDIxNiwgCisgICAgMTc1LCAxOCwgMTksIDIxMSwgMjEzLCAyMTYsIDE1NiwgMTgsIDE5LCAyMTEsIDIxMywgMjE2LCAyMDgsIDE4LCAxOSwgMjExLCAKKyAgICAyMTMsIDIxNiwgMjEwLCAxOCwgMTksIDIzMiwgMjQ4LCAxOCwgMTksIDIzMiwgMjQ3LCAxOCwgMTksIDIzMiwgMjQ2LCAxOCwgCisgICAgMTksIDIzMiwgMjQ1LCAxOCwgMTksIDIzMiwgMjU0LCAxOCwgMTksIDIzMiwgMjUzLCAxOCwgMTksIDIzMiwgMjU1LCAxOCwgCisgICAgMTksIDIxNiwgMjA5LCAyMTYsIDE5NSwgMTgsIDE5LCAyMTYsIDIwOSwgMjE2LCAxNzUsIDE4LCAxOSwgMjE2LCAyMDksIAorICAgIDIxNiwgMTcxLCAxOCwgMTksIDIxNiwgMjA5LCAyMTYsIDE1NiwgMTgsIDE5LCAyMTYsIDIwOSwgMjE2LCAxNTMsIDE4LCAxOSwgCisgICAgMjE2LCAyMDksIDIxNiwgMjA4LCAxOCwgMTksIDIxNiwgMjA5LCAyMTYsIDIwNywgMTgsIDE5LCAyMTYsIDIwOSwgMjE2LCAKKyAgICAyMTAsIDE4LCAxOSwgMjU0LCAxODksIDI1MywgMTU4LCAxOCwgMTksIDI1MSwgMjE4LCA3NSwgMTgsIDE5LCAyNTEsIDIxOCwgCisgICAgNzMsIDE4LCAxOSwgMjUxLCAyMTgsIDc2LCAxOCwgMTksIDI1MSwgMjE4LCA2MSwgMTgsIDE5LCAyNTEsIDIxOCwgMjEyLCAKKyAgICAyMiwgMTgsIDE5LCAyNTEsIDIxOCwgMjExLCAyNTAsIDE4LCAxOSwgMjUxLCAyMTgsIDIxMSwgMjI3LCAxOCwgMTksIDI1MSwgCisgICAgMjE4LCAyMTIsIDY1LCAxOCwgMTksIDI1MSwgMjE4LCAyMjksIDEwNywgMTgsIDE5LCAyNTEsIDIxOCwgMjI4LCAyMzMsIDE4LCAKKyAgICAxOSwgMjUxLCAyMTgsIDIyOCwgNzQsIDE4LCAxOSwgMjUxLCAyMTgsIDE5NywgMTgsIDE5LCAyNTEsIDIxOCwgMjM0LCAxODIsIAorICAgIDE4LCAxOSwgMjUxLCAyMTgsIDIzNCwgOTIsIDE4LCAxOSwgMjUxLCAyMTgsIDIzNCwgMjgsIDE4LCAxOSwgMjUxLCAyMTgsIAorICAgIDE3NiwgMTgsIDE5LCAyMjEsIDIwOSwgMjQxLCAyMzgsIDE4LCAxOSwgMjIxLCAyMDksIDI0MSwgMTgwLCAxOCwgMTksIDIyMSwgCisgICAgMjA5LCAyNDEsIDY4LCAxOCwgMTksIDIyMSwgMjA5LCAxNjIsIDE4LCAxOSwgNzIsIDI0MiwgMjIwLCAxOCwgMTksIDcyLCAKKyAgICAyNDIsIDIyNCwgMTgsIDE5LCA3MiwgMjQyLCAyMzYsIDE4LCAxOSwgNzIsIDI0MiwgMjM1LCAxOCwgMTksIDcyLCAyNDIsIAorICAgIDIyNSwgMTgsIDE5LCA3MiwgMjQyLCAyNDksIDE4LCAxOSwgNzIsIDIyMiwgMTQwLCAxOCwgMTksIDcyLCAyMjIsIDIxMSwgCisgICAgMTgsIDE5LCA3MiwgMjIzLCAxMjgsIDE4LCAxOSwgNzIsIDIyMywgMTA4LCAxOCwgMTksIDcyLCAyMjMsIDM1LCAxOCwgMTksIAorICAgIDcyLCAyMDUsIDE4LCAxOSwgNzIsIDIxMSwgMTk1LCAxOCwgMTksIDcyLCAyMTEsIDIyNywgMTgsIDE5LCA3MiwgMjEyLCAyMiwgCisgICAgMTgsIDE5LCA3MiwgMjEyLCAxNywgMTgsIDE5LCA3MiwgMjExLCAyNTAsIDE4LCAxOSwgNzIsIDIxMiwgNjUsIDE4LCAxOSwgCisgICAgNzIsIDI0MCwgMTk0LCAxOCwgMTksIDcyLCAyNDAsIDE5NSwgMTgsIDE5LCA3MiwgMjQwLCAxOTgsIDE4LCAxOSwgNzIsIAorICAgIDI0MCwgMTk3LCAxOCwgMTksIDcyLCAyNDAsIDE5NiwgMTgsIDE5LCA3MiwgMjQwLCAyMDAsIDE4LCAxOSwgNzIsIDIxNiwgCisgICAgMTM2LCAxOCwgMTksIDcyLCAyMTYsIDE1NiwgMTgsIDE5LCA3MiwgMjE2LCAxOTUsIDE4LCAxOSwgNzIsIDIxNiwgMTk0LCAKKyAgICAxOCwgMTksIDcyLCAyMTYsIDE3NSwgMTgsIDE5LCA3MiwgMjE2LCAyMDgsIDE4LCAxOSwgNzIsIDIxNSwgMTIzLCAxOCwgMTksIAorICAgIDcyLCAyMTUsIDEzMywgMTgsIDE5LCA3MiwgMjE1LCAxNTEsIDE4LCAxOSwgNzIsIDIxNSwgMTUwLCAxOCwgMTksIDcyLCAKKyAgICAyMTUsIDEzNSwgMTgsIDE5LCA3MiwgMjE1LCAxNTYsIDE4LCAxOSwgNzIsIDIyNCwgMTUwLCAxOCwgMTksIDcyLCAyMjUsIAorICAgIDE2LCAxOCwgMTksIDcyLCAyMjUsIDIyMSwgMTgsIDE5LCA3MiwgMjI1LCAyMTEsIDE4LCAxOSwgNzIsIDIyNSwgMTA4LCAxOCwgCisgICAgMTksIDcyLCAxOTAsIDE4LCAxOSwgNzIsIDIyNiwgMTA1LCAxOCwgMTksIDcyLCAyNDIsIDExMywgMTgsIDE5LCA3MiwgMjQyLCAKKyAgICAxNzQsIDE4LCAxOSwgNzIsIDI0MywgNjIsIDE4LCAxOSwgNzIsIDI0MywgNTUsIDE4LCAxOSwgNzIsIDI0MiwgMjE0LCAxOCwgCisgICAgMTksIDcyLCAyNDMsIDEzNSwgMTgsIDE5LCA3MiwgMjM0LCAxMDAsIDE4LCAxOSwgNzIsIDIzNCwgMTA1LCAxOCwgMTksIDcyLCAKKyAgICAyMzQsIDExOSwgMTgsIDE5LCA3MiwgMjM0LCAxMTgsIDE4LCAxOSwgNzIsIDIzNCwgMTEyLCAxOCwgMTksIDcyLCAyMzQsIAorICAgIDEzMiwgMTgsIDE5LCA3MiwgMjM0LCA0MSwgMTgsIDE5LCA3MiwgMjM0LCA0MiwgMTgsIDE5LCA3MiwgMjM0LCA0NSwgMTgsIAorICAgIDE5LCA3MiwgMjM0LCA0NCwgMTgsIDE5LCA3MiwgMjM0LCA0MywgMTgsIDE5LCA3MiwgMjM0LCA0NiwgMTgsIDE5LCA3MiwgCisgICAgMjM0LCA0NywgMTgsIDE5LCA3MiwgMjI3LCAyMzcsIDE4LCAxOSwgNzIsIDIyOCwgNzQsIDE4LCAxOSwgNzIsIDIyOSwgMTA3LCAKKyAgICAxOCwgMTksIDcyLCAyMjksIDEwMywgMTgsIDE5LCA3MiwgMjI4LCAyMzMsIDE4LCAxOSwgNzIsIDE5NywgMTgsIDE5LCA3MiwgCisgICAgMjMwLCAxMDIsIDE4LCAxOSwgNzIsIDIzMCwgMTYxLCAxOCwgMTksIDcyLCAyMzEsIDkxLCAxOCwgMTksIDcyLCAyMzEsIDgwLCAKKyAgICAxOCwgMTksIDcyLCAyMzAsIDIzMCwgMTgsIDE5LCA3MiwgMTg0LCAxOCwgMTksIDcyLCAyMTAsIDIxMiwgMTgsIDE5LCA3MiwgCisgICAgMjEwLCAyNDQsIDE4LCAxOSwgNzIsIDIxMSwgNDcsIDE4LCAxOSwgNzIsIDIxMSwgNDQsIDE4LCAxOSwgNzIsIDIxMSwgOCwgCisgICAgMTgsIDE5LCA3MiwgMTkxLCAxOCwgMTksIDcyLCAyMzUsIDUxLCAxOCwgMTksIDIyMSwgMjA5LCAyMzUsIDUxLCAxOCwgMTksIAorICAgIDcyLCAyMzUsIDY4LCAxOCwgMTksIDcyLCAyMzUsIDEyNiwgMTgsIDE5LCA3MiwgMjM1LCAxMjQsIDE4LCAxOSwgNzIsIDIzNSwgCisgICAgMTA4LCAxOCwgMTksIDIyMSwgMjA5LCAyMzUsIDEwOCwgMTgsIDE5LCA3MiwgMjM1LCAxNDEsIDE4LCAxOSwgNzIsIDIzNSwgCisgICAgODEsIDE4LCAxOSwgNzIsIDIzNSwgODUsIDE4LCAxOSwgNzIsIDIzNSwgOTUsIDE4LCAxOSwgNzIsIDIzNSwgOTQsIDE4LCAKKyAgICAxOSwgNzIsIDIzNSwgOTMsIDE4LCAxOSwgNzIsIDIzNSwgOTYsIDE4LCAxOSwgNzIsIDIzMiwgOTgsIDE4LCAxOSwgNzIsIAorICAgIDIzMiwgMTU2LCAxOCwgMTksIDcyLCAyMzMsIDU4LCAxOCwgMTksIDcyLCAyMzMsIDUwLCAxOCwgMTksIDcyLCAyMzIsIDI0MSwgCisgICAgMTgsIDE5LCA3MiwgMjMzLCAxMzUsIDE4LCAxOSwgNzIsIDI0NywgMTQ5LCAxOCwgMTksIDcyLCAyNDcsIDE1MCwgMTgsIDE5LCAKKyAgICA3MiwgMjQ3LCAxNTUsIDE4LCAxOSwgNzIsIDI0NywgMTU0LCAxOCwgMTksIDcyLCAyNDcsIDE1MSwgMTgsIDE5LCA3MiwgCisgICAgMjQ3LCAxNTYsIDE4LCAxOSwgNzIsIDIzMiwgMjQ0LCAxOCwgMTksIDcyLCAyMzIsIDI0NiwgMTgsIDE5LCA3MiwgMjMyLCAKKyAgICAyNTAsIDE4LCAxOSwgNzIsIDIzMiwgMjQ5LCAxOCwgMTksIDcyLCAyMzIsIDI0OCwgMTgsIDE5LCA3MiwgMjMyLCAyNTQsIAorICAgIDE4LCAxOSwgNzIsIDIxNiwgNTAsIDE4LCAxOSwgNzIsIDIxNiwgNTIsIDE4LCAxOSwgNzIsIDIxNiwgNTUsIDE4LCAxOSwgCisgICAgNzIsIDIxNiwgNTQsIDE4LCAxOSwgNzIsIDIxNiwgNTMsIDE4LCAxOSwgNzIsIDIxNiwgNTYsIDE4LCAxOSwgNzIsIDIxNiwgCisgICAgNDUsIDE4LCAxOSwgNzIsIDIxNiwgNDYsIDE4LCAxOSwgNzIsIDIxNiwgNTgsIDE4LCAxOSwgNzIsIDIxNiwgNTcsIDE4LCAKKyAgICAxOSwgNzIsIDIxNiwgNDcsIDE4LCAxOSwgNzIsIDIxNiwgNTksIDE4LCAxOSwgNzIsIDIxMCwgMTMsIDE4LCAxOSwgNzIsIAorICAgIDIxMCwgMjMsIDE4LCAxOSwgNzIsIDIxMCwgOTQsIDE4LCAxOSwgNzIsIDIxMCwgOTIsIDE4LCAxOSwgNzIsIDIxMCwgNDQsIAorICAgIDE4LCAxOSwgNzIsIDIxMCwgMTE2LCAxOCwgMTksIDcyLCAyMTAsIDE1OSwgMTgsIDE5LCA3MiwgNjUsIDIxMCwgMTU5LCAxOCwgCisgICAgMTksIDcyLCAyNDYsIDI4LCAxOCwgMTksIDcyLCAyNDYsIDI5LCAxOCwgMTksIDcyLCAyNDYsIDM2LCAxOCwgMTksIDcyLCAKKyAgICAyNDYsIDM1LCAxOCwgMTksIDcyLCAyNDYsIDMxLCAxOCwgMTksIDcyLCAyNDYsIDM4LCAxOCwgMTksIDcyLCAyMTgsIDgzLCAKKyAgICAxOCwgMTksIDcyLCAyMTksIDU4LCAxOCwgMTksIDcyLCAyMjEsIDE4MSwgMTgsIDE5LCA3MiwgMjIxLCAxNzAsIDE4LCAxOSwgCisgICAgNzIsIDIxOSwgMTkxLCAxOCwgMTksIDcyLCAyMDYsIDE4LCAxOSwgNzIsIDIxOSwgMjI1LCAxOCwgMTksIDcyLCAyMjAsIDcsIAorICAgIDE4LCAxOSwgNzIsIDIyMCwgNjMsIDE4LCAxOSwgNzIsIDIyMCwgNjEsIDE4LCAxOSwgNzIsIDIyMCwgMzIsIDE4LCAxOSwgCisgICAgNzIsIDIyMCwgMTAyLCAxOCwgMTksIDcyLCAyMjAsIDEwNCwgMTgsIDE5LCA3MiwgMjE1LCAxNjMsIDE4LCAxOSwgNzIsIAorICAgIDIxNSwgMTY2LCAxOCwgMTksIDcyLCAyMTUsIDE3OCwgMTgsIDE5LCA3MiwgMjE1LCAxNzcsIDE4LCAxOSwgNzIsIDIxNSwgCisgICAgMTY3LCAxOCwgMTksIDcyLCAyMTUsIDE4MywgMTgsIDE5LCA3MiwgMjUwLCA2OSwgMTgsIDE5LCA3MiwgMjUwLCA4NiwgMTgsIAorICAgIDE5LCA3MiwgMjUwLCAxMzEsIDE4LCAxOSwgNzIsIDI1MCwgMTI4LCAxOCwgMTksIDcyLCAyNTAsIDExMCwgMTgsIDE5LCA3MiwgCisgICAgMjUwLCAxNTcsIDE4LCAxOSwgNzIsIDIxNSwgMTI2LCAxOCwgMTksIDcyLCAyMTUsIDEyNywgMTgsIDE5LCA3MiwgMjE1LCAKKyAgICAxMzAsIDE4LCAxOSwgNzIsIDIxNSwgMTI5LCAxOCwgMTksIDcyLCAyMTUsIDEyOCwgMTgsIDE5LCA3MiwgMjE1LCAxMzEsIAorICAgIDE4LCAxOSwgMjUwLCAxMTEsIDUwLCAxOCwgMTksIDI0MywgMjI5LCAyMTgsIDEyOSwgMTgsIDE5LCAyMjQsIDgwLCAxOCwgCisgICAgMTksIDIyOSwgNzMsIDE4LCAxOSwgMjI4LCAxMDAsIDE4LCAxOSwgMjI4LCA5OSwgMTgsIDE5LCAyMjgsIDk4LCAxOCwgMTksIAorICAgIDIyOCwgOTcsIDE4LCAxOSwgMjI4LCAxMDIsIDE4LCAxOSwgMjI4LCAxMDEsIDE4LCAxOSwgMjExLCAyMTMsIDIxNiwgMTI1LCAKKyAgICAxOCwgMTksIDIxMSwgMjEzLCAyMTYsIDEyNCwgMTgsIDE5LCAyMTEsIDIxMywgMjE2LCAxMjMsIDE4LCAxOSwgMjExLCAyMTMsIAorICAgIDIxNiwgMTIyLCAxOCwgMTksIDIxMSwgMjEzLCAyMTYsIDEyMSwgMTgsIDE5LCAyMTEsIDIxMywgMjE2LCAxMjgsIDE4LCAxOSwgCisgICAgMjExLCAyMTMsIDIxNiwgMTI3LCAxOCwgMTksIDIxMSwgMjEzLCA0MCwgMjE2LCAyMTAsIDE4LCAxOSwgMjUxLCAyMTgsIAorICAgIDIxMiwgOTgsIDIyNiwgMjI2LCAyMTksIDE5LCA3OCwgMjI2LCAyMjYsIDEsIDI1MiwgNDgsIDIyNiwgMjI2LCAxLCAyMzIsIAorICAgIDg3LCAyMjYsIDIyNiwgMSwgMjQ0LCAxNTEsIDIyNiwgMjI2LCAxLCAyMjIsIDE1LCAyMjYsIDIyNiwgMSwgMjI4LCAxOTMsIAorICAgIDIyNiwgMjI2LCAxLCAyMTQsIDIyNiwgMjI2LCAyMjYsIDEsIDI0OCwgMTk3LCAyMjYsIDIyNiwgMSwgMjE2LCA4MCwgMjI2LCAKKyAgICAyMjYsIDEsIDI0OSwgMjI5LCAyMjYsIDIyNiwgMSwgMjUwLCAxODAsIDIyNiwgMjI2LCAxLCAyMzAsIDkxLCAyMjYsIDIyNiwgCisgICAgMSwgMjQyLCAxNTYsIDIyNiwgMjI2LCAxLCAyMjksIDYzLCAyMjYsIDIyNiwgMSwgMjE4LCAxMjIsIDIyNiwgMjI2LCAxLCAKKyAgICAyMjIsIDEzNSwgMjI2LCAyMjYsIDEsIDI1NCwgMTk4LCAyMjYsIDIyNiwgMSwgMjI2LCAxODcsIDIyNiwgMjI2LCAxLCAyMTQsIAorICAgIDE1MCwgMjI2LCAyMjYsIDEsIDI0NSwgMjMxLCAyMjYsIDIyNiwgMSwgMjM1LCAxODgsIDIyNiwgMjI2LCAxLCAyNDUsIDIzMiwgCisgICAgMjI2LCAyMjYsIDEsIDIyNiwgMTU4LCAyMjYsIDIyNiwgMSwgMjE0LCAyMDYsIDIyNiwgMjI2LCAxLCAyMzYsIDM5LCAyMjYsIAorICAgIDIyNiwgMSwgMjQ1LCAyMjksIDIyNiwgMjI2LCAxLCAyMjUsIDIwMiwgMjI2LCAyMjYsIDI0NCwgMTUwLCA3OCwgMjI2LCAKKyAgICAyMjYsIDIyMywgNDksIDI0NCwgMTUwLCA3OCwgMTc4LCAxLCAyNDQsIDE0MSwgMjQ0LCAxMzMsIDI0NCwgMTU1LCAyNDUsIDYsIAorICAgIDE3OCwgMSwgMjE0LCAxMDUsIDE3OCwgMSwgMjE0LCAxMzUsIDIxNCwgMTUxLCA3MCwgMTc4LCAxLCAyMTAsIDIxNCwgMTc4LCAKKyAgICAxLCAyMTEsIDExNywgMTc4LCAxLCAyMTIsIDk4LCAxNzgsIDEsIDIxNiwgMTMwLCAyMTYsIDEyOSwgMjE2LCAxNTEsIDE3OCwgCisgICAgMSwgMjQ1LCA1OSwgMTc4LCAxLCAyNTQsIDkzLCA2MSwgMTc4LCAxLCAyMjYsIDE0MywgNzYsIDE3OCwgMSwgMjU1LCAxNywgCisgICAgNjEsIDE3OCwgMSwgMjU0LCAyMjcsIDE3OCwgMSwgMjMyLCAxMzMsIDc2LCAxNzgsIDEsIDIxOSwgMjQ0LCA3NiwgMTc4LCAxLCAKKyAgICA3NiwgMTc4LCAxLCAyMjYsIDIzNCwgMTc4LCAxLCAyMjYsIDE5NiwgMTc4LCAxLCAyMjMsIDE2NCwgMjIzLCAxNzcsIDIyMywgCisgICAgOTQsIDE1MywgMTc4LCAxLCAyMzQsIDE5MywgMTc4LCAxLCAyNTAsIDE3NywgMTc4LCAxLCAyMzQsIDE5NCwgMjM1LCAyMywgCisgICAgMTc4LCAxLCAyNDMsIDIwMiwgMTc4LCAxLCAyNDUsIDEzOCwgMTc4LCAxLCAyNDMsIDU4LCAyNDIsIDY2LCAyNDMsIDIwMiwgCisgICAgMTc4LCAxLCAyNDMsIDk2LCAxNzgsIDEsIDIxMSwgMTg4LCAyMTEsIDE4MiwgMjEyLCA5OCwgMTc4LCAxLCAyNDIsIDM4LCAKKyAgICAyNDIsIDYwLCAxNzgsIDEsIDI0MiwgNDIsIDI0MiwgNjAsIDE3OCwgMSwgMjMyLCAxMzUsIDI0MiwgNjAsIDE3OCwgMSwgCisgICAgMjE5LCAyNDcsIDI0MiwgNjAsIDE3OCwgMSwgMjI5LCAxODUsIDIyNywgMTU3LCAyMjksIDE4NiwgMjMwLCAyNSwgMTc4LCAxLCAKKyAgICAyMTksIDI0NSwgMjMwLCAyNSwgMTc4LCAxLCAyNDYsIDExNSwgMTc4LCAxLCAyMzUsIDE2OCwgMjM1LCAxNzIsIDIzNSwgCisgICAgMTYyLCA3MywgMTc4LCAxLCA3NSwgMTc4LCAxLCAyMzUsIDExNywgMjM1LCAxNDQsIDE3OCwgMSwgMjQzLCA0MywgMTc4LCAxLCAKKyAgICAyMzIsIDEzNiwgMjU0LCAyNDMsIDE3OCwgMSwgMjE5LCAyNDksIDYxLCAxNzgsIDEsIDIzNSwgMTU0LCAyNDUsIDExMywgCisgICAgMTc4LCAxLCAyMjUsIDE2NCwgMjI1LCAxODYsIDIyNiwgMTA1LCAxNzgsIDEsIDI1NCwgMTYzLCAyNDUsIDExMSwgMTc4LCAxLCAKKyAgICAyMTksIDI0LCAyMjIsIDkxLCAxNzgsIDEsIDIxOSwgMTc5LCAyMzIsIDEzMiwgMjIyLCA5MSwgMTc4LCAxLCAyMTksIDI0MywgCisgICAgMjIyLCA5MSwgMTc4LCAxLCAyNTEsIDY2LCAxNzgsIDEsIDIxMCwgMTU5LCAxNzgsIDEsIDIxNiwgNjMsIDIxNiwgNzMsIAorICAgIDIxNSwgNDEsIDIxNywgMTUyLCAxNzgsIDEsIDIxOSwgMjQyLCAyMTcsIDE1MiwgMTc4LCAxLCAyNDksIDYwLCAxNzgsIDEsIAorICAgIDI1MiwgMzEsIDI1MiwgMzQsIDI1MSwgMjI0LCAyNTMsIDE1OCwgMTc4LCAxLCAyMTksIDI0OCwgMjUzLCAxNTgsIDE3OCwgMSwgCisgICAgMjQ2LCAxMTQsIDE3OCwgMSwgMjI2LCAxNzEsIDE3OCwgMSwgMjQ1LCAxOTYsIDI0NSwgMTk4LCA3NSwgMTc4LCAxLCAyMzEsIAorICAgIDE3OCwgMjMxLCAxODYsIDE5MywgMTc4LCAxLCAyMzIsIDEzNCwgMTkzLCAxNzgsIDEsIDIxOSwgMjQ2LCAxOTMsIDE3OCwgMSwgCisgICAgMjMzLCA3MywgMjMzLCAxMTQsIDIzMiwgMTQzLCAxNTYsIDE3OCwgMSwgMjQ2LCAxMTYsIDE3OCwgMSwgMjM1LCAyMzAsIAorICAgIDE3OCwgMSwgMjM1LCAyMzEsIDE3OCwgMSwgMjQ4LCAyMTAsIDI0OCwgMjE1LCAyNDksIDYwLCAxNzgsIDEsIDIyNiwgMTM4LCAKKyAgICAyNDUsIDU4LCA3NiwgMTc4LCAxLCAyNDUsIDIyNywgMTc4LCAxLCAyMzUsIDE4NywgMTc4LCAxLCAyNDksIDc4LCAxNzgsIDEsIAorICAgIDI1MSwgMTcsIDE3OCwgMSwgMjUwLCAxODksIDE3OCwgMSwgMjE4LCAxNjEsIDE3OCwgMSwgMjMyLCAxMzEsIDE3OCwgMSwgCisgICAgMjE5LCAyNDEsIDE3OCwgMSwgMjQwLCAxMTAsIDE3OCwgMSwgMjI0LCA5NiwgMTc4LCAxLCAyMTEsIDE3OCwgMTc4LCAyMTksIAorICAgIDE1NSwgMjI0LCAxNDAsIDE3OCwgMjMwLCA4NSwgMjI0LCAxNDAsIDE3OCwgMjQ5LCAxMzEsIDIyNCwgMTQwLCAxNzgsIDI1NCwgCisgICAgNiwgODcsIDE3OCwgMjE1LCA4MiwgODcsIDE3OCwgMjUyLCA0NiwgODcsIDIxNywgODMsIDEsIDYxLCAyMTcsIDgzLCAxLCAKKyAgICA3MywgMjE3LCA4MywgMSwgNzAsIDIxNywgODMsIDEsIDE3NiwgMjE3LCA4MywgMSwgMjQzLCAxMzUsIDIxNywgODMsIDEsIAorICAgIDIyOSwgNzcsIDIxNywgODMsIDEsIDIxNywgMTA1LCAyMTcsIDgzLCAxLCAyNDgsIDIyMSwgMjE3LCA4MywgMSwgMTk3LCAKKyAgICAyMTcsIDgzLCAxLCAxOTAsIDIxNywgODMsIDEsIDI1MiwgMTkxLCAyMTcsIDgzLCAxLCAxODQsIDIxNywgODMsIDEsIDE5MSwgCisgICAgMjE3LCA4MywgMSwgMjMzLCAxMzUsIDIxNywgODMsIDEsIDIxMiwgNjUsIDIxNywgODMsIDEsIDIwNiwgMjE3LCA4MywgMSwgCisgICAgMTYyLCAyMTcsIDgzLCAyNSwgNSwgNzMsIDIxNywgODMsIDI1LCA1LCA3MCwgMjE3LCA4MywgNSwgMjEzLCAxNTIsIDI0MiwgCisgICAgNywgMSwgNjEsIDI0MiwgNywgMSwgNzMsIDI0MiwgNywgMSwgNzAsIDI0MiwgNywgMSwgMTc2LCAyNDIsIDcsIDEsIDI0MywgCisgICAgMTM1LCAyNDIsIDcsIDEsIDIyOSwgNzcsIDI0MiwgNywgMSwgMjE3LCAxMDUsIDI0MiwgNywgMSwgMjQ4LCAyMjEsIDI0MiwgCisgICAgNywgMSwgMTk3LCAyNDIsIDcsIDEsIDE5MCwgMjQyLCA3LCAxLCAyNTIsIDE5MSwgMjQyLCA3LCAxLCAxODQsIDI0MiwgNywgCisgICAgMSwgMTkxLCAyNDIsIDcsIDEsIDIwNSwgMjQyLCA3LCAxLCAyMzMsIDEzNSwgMjQyLCA3LCAxLCAyMTIsIDY1LCAyNDIsIDcsIAorICAgIDEsIDIwNiwgMjQyLCA3LCAxLCAxNjIsIDI0MiwgNywgMjUsIDUsIDczLCAyNDIsIDcsIDI1LCA1LCA3MCwgMjQyLCA3LCA1LCAKKyAgICAyMjYsIDQ5LCAyMjUsIDEyNiwgMjE5LCAxNTUsIDIyNCwgMTQwLCAyMjUsIDEyNiwgNTIsIDIyNCwgMTQwLCAyNTEsIDEyMCwgCisgICAgMSwgNjEsIDI1MSwgMTIwLCAxLCA3MywgMjUxLCAxMjAsIDEsIDcwLCAyNTEsIDEyMCwgMSwgMTc2LCAyNTEsIDEyMCwgMSwgCisgICAgMjQzLCAxMzUsIDI1MSwgMTIwLCAxLCAyMjksIDc3LCAyNTEsIDEyMCwgMSwgMjE3LCAxMDUsIDI1MSwgMTIwLCAxLCAyNDgsIAorICAgIDIyMSwgMjUxLCAxMjAsIDEsIDE5NywgMjUxLCAxMjAsIDEsIDE5MCwgMjUxLCAxMjAsIDEsIDI1MiwgMTkxLCAyNTEsIDEyMCwgCisgICAgMSwgMTg0LCAyNTEsIDEyMCwgMSwgMTkxLCAyNTEsIDEyMCwgMSwgMjA1LCAyNTEsIDEyMCwgMSwgMjMzLCAxMzUsIDI1MSwgCisgICAgMTIwLCAxLCAyMTIsIDY1LCAyNTEsIDEyMCwgMSwgMjA2LCAyNTEsIDEyMCwgMSwgMTYyLCAyNTEsIDEyMCwgMjUsIDUsIDczLCAKKyAgICAyNTEsIDEyMCwgMjUsIDUsIDcwLCAyMTcsIDgyLCAxLCA2MSwgMjE3LCA4MiwgMSwgNzMsIDIxNywgODIsIDEsIDcwLCAyMTcsIAorICAgIDgyLCAxLCAxNzYsIDIxNywgODIsIDEsIDI0MywgMTM1LCAyMTcsIDgyLCAxLCAyMjksIDc3LCAyMTcsIDgyLCAxLCAyMTcsIAorICAgIDEwNSwgMjE3LCA4MiwgMSwgMjQ4LCAyMjEsIDIxNywgODIsIDEsIDE5NywgMjE3LCA4MiwgMSwgMTkwLCAyMTcsIDgyLCAxLCAKKyAgICAyNTIsIDE5MSwgMjE3LCA4MiwgMSwgMTg0LCAyMTcsIDgyLCAxLCAxOTEsIDIxNywgODIsIDEsIDIzMywgMTM1LCAyMTcsIAorICAgIDgyLCAxLCAyMTIsIDY1LCAyMTcsIDgyLCAxLCAyMDYsIDIxNywgODIsIDI1LCA1LCA3MywgMjE3LCA4MiwgMjUsIDUsIDcwLCAKKyAgICA2OSwgMSwgMTc2LCA2OSwgMSwgMjM0LCAxMzIsIDY5LCAxLCAyMzQsIDI4LCA2OSwgMSwgMjM0LCAxMDUsIDY5LCAxLCAyMjksIAorICAgIDQsIDY5LCAxLCAyNTEsIDMzLCA2OSwgMSwgMjUwLCAxNTcsIDY5LCAxLCAyNDksIDIzOCwgNjksIDEsIDI1MCwgODYsIDY5LCAKKyAgICAxLCAyMjcsIDEzNCwgNjksIDEsIDI0OCwgMjIxLCA2OSwgMSwgMjE1LCAxNDQsIDY5LCAxLCAyNDcsIDE0NSwgNjksIDEsIAorICAgIDIxNSwgMTM5LCA2OSwgMSwgMjI4LCA4MCwgNjksIDEsIDIxNywgMTA1LCA2OSwgMSwgMjE2LCAyMDgsIDY5LCAxLCAxMTEsIAorICAgIDY5LCAxLCAyMTYsIDE1NiwgNjksIDEsIDIyOCwgNzQsIDY5LCAxLCAyNTIsIDE5MSwgNjksIDEsIDIyNSwgMTQ3LCA2OSwgMSwgCisgICAgMjI1LCAxNiwgNjksIDEsIDIyNSwgMTIxLCA2OSwgMSwgMjMwLCAxNjEsIDY5LCAxLCAyMTAsIDI0NCwgNjksIDEsIDIyMiwgCisgICAgMjExLCA2OSwgMSwgMjMyLCAxNTYsIDY5LCAxLCAyMTMsIDEzOCwgNjksIDEsIDIyMCwgMTAyLCA2OSwgMSwgMjE4LCAxODQsIAorICAgIDY5LCAxLCAyMDYsIDY5LCAxLCAxNjIsIDY5LCAxLCAyMzMsIDEzNSwgNjksIDEsIDIyNCwgODgsIDY5LCAyMzUsIDI0MywgCisgICAgMjUsIDIyNCwgNzQsIDY5LCAyMzUsIDI0MywgMjUsIDIyNCwgODcsIDY5LCAyMzUsIDI0MywgMjUsIDIyNCwgNTMsIDY5LCAKKyAgICAyMzUsIDI0MywgMjUsIDIyNCwgNDgsIDY5LCAyMzUsIDI0MywgMjUsIDIyNCwgMzAsIDY5LCAyMzUsIDI0MywgMjUsIDIyNCwgCisgICAgMiwgNjksIDIzNSwgMjQzLCAyNSwgMjIzLCAyNDYsIDY5LCAyMzUsIDI0MywgMjUsIDIyMywgMjQ1LCA2OSwgMjM1LCAyNDMsIAorICAgIDI1LCAyMjIsIDEwMCwgNjksIDIzNSwgMjQzLCAyNSwgMjIyLCA5MywgNjksIDIzNSwgMjQzLCAyNSwgMjMyLCA2MiwgNjksIAorICAgIDIzNSwgMjQzLCAyNSwgMjMyLCA1MiwgNjksIDIzNSwgMjQzLCAyNSwgMjI0LCA2OSwgNjksIDIzNSwgMjQzLCAyNSwgMjI0LCAKKyAgICA4MCwgNjksIDIzNSwgMjQzLCAyNSwgMjI0LCAzOCwgMjE1LCA0OSwgMTEwLCA2OSwgMjM1LCAyNDMsIDI1LCAyMjQsIDM4LCAKKyAgICAyMTUsIDQ5LCAxMDUsIDY5LCAyMzUsIDI0MywgMjUsIDIyNCwgNzAsIDY5LCAyNSwgMjM1LCAyMjksIDI1NCwgNDUsIDY5LCAKKyAgICAyNSwgMjM1LCAyMjksIDI1NSwgNzMsIDY5LCAyNSwgNSwgMjU1LCA3MywgNjksIDI1LCA1LCA3MywgNjksIDI1LCA1LCAyMzYsIAorICAgIDMzLCA2OSwgMjUsIDUsIDIxMSwgMTE3LCA2OSwgMjUsIDUsIDIxMCwgMTY5LCA2OSwgMjUsIDUsIDcwLCA2OSwgMjUsIDUsIAorICAgIDIxNCwgMTE4LCA2OSwgMjUsIDUsIDIxNCwgMjI5LCA2OSwgMjUsIDUsIDIyNiwgMjM0LCA2OSwgMjUsIDUsIDE5MSwgNjksIAorICAgIDI1LCA1LCAyMzYsIDYwLCA2OSwgMjUsIDUsIDc1LCA2OSwgMjUsIDUsIDI1NCwgMjQzLCA2OSwgMjUsIDUsIDI1NCwgMjAxLCAKKyAgICA2OSwgMjUsIDUsIDIyNiwgMTgzLCA2OSwgMjUsIDUsIDI1MywgMTkyLCA2OSwgNSwgMjI4LCAyMDYsIDY5LCA1LCAyMjMsIAorICAgIDEyNiwgNjksIDUsIDIxMCwgMTgwLCA2OSwgNSwgMjMwLCA1MiwgNjksIDUsIDIxNSwgMjEzLCA2OSwgNSwgMjUyLCAxNDMsIAorICAgIDY5LCA1LCAyMjIsIDIwNiwgNjksIDUsIDIxNiwgNDAsIDY5LCA1LCAyMzQsIDI0MSwgNjksIDUsIDI1NCwgMjAzLCA2OSwgNSwgCisgICAgMjIxLCAyNDQsIDIyMSwgMjM4LCA2OSwgNSwgMjEzLCAxNDksIDY5LCA1LCAyNDksIDIzMiwgNjksIDUsIDI1MiwgMTE3LCAKKyAgICA2OSwgNSwgMjM0LCAxMjUsIDY5LCA1LCAyNTIsIDEzNywgNjksIDUsIDI1MSwgOSwgMjI1LCA3MiwgMjMzLCAxODcsIDY5LCAKKyAgICA1LCAyMzMsIDMwLCAyMTYsIDE3LCA2OSwgNSwgMjUyLCAyMCwgNjksIDUsIDIyNSwgMTIzLCAyMzAsIDk5LCA2OSwgNSwgCisgICAgMjM0LCA5LCA2OSwgMjQ5LCA5OCwgMTYsIDIyMywgMjgsIDY5LCA1LCAyNTMsIDE3NCwgNjksIDUsIDI1MywgMTk1LCA2OSwgCisgICAgMjEsIDIxMCwgODYsIDY5LCAyMSwgMTEwLCA2OSwgMjEsIDEwNSwgNjksIDIxLCAxNTgsIDY5LCAyMSwgMTYxLCA2OSwgMjEsIAorICAgIDE4OSwgNjksIDIxLCAxOTQsIDY5LCAyMSwgMTk4LCA2OSwgMjEsIDE5NSwgNjksIDIxLCAyMDAsIDY5LCAxNiwgMjMzLCAzMCwgCisgICAgMjUzLCAxOTcsIDIxOSwgNDMsIDY5LCAxNiwgMjMzLCAzMCwgMjUzLCAxOTcsIDIzMCwgNzEsIDY5LCAxNiwgMjMzLCAzMCwgCisgICAgMjUzLCAxOTcsIDIyNSwgNzEsIDY5LCAxNiwgMjMzLCAzMCwgMjUzLCAxOTcsIDI1MiwgNDksIDY5LCAxNiwgMjMzLCAzMCwgCisgICAgMjUzLCAxOTcsIDI1MSwgMTAzLCA2OSwgMTYsIDIzMywgMzAsIDI1MywgMTk3LCAyMjQsIDIxNSwgNjksIDE2LCAyMzMsIDMwLCAKKyAgICAyNTMsIDE5NywgMjI0LCAyMDksIDY5LCAxNiwgMjMzLCAzMCwgMjUzLCAxOTcsIDIyNCwgMjA3LCA2OSwgMTYsIDIzMywgMzAsIAorICAgIDI1MywgMTk3LCAyMjQsIDIxMywgNjksIDE2LCAyMzMsIDMwLCAyNTMsIDE5NywgMjI0LCAyMTEsIDgzLCAyNTEsIDIzNiwgCisgICAgODMsIDI0NSwgMTYzLCA4MywgMjQ5LCAyMTksIDgzLCAyNDMsIDIyOSwgMjE4LCAxMjksIDgzLCAyNDksIDIyNiwgODMsIAorICAgIDI0NCwgMTEsIDI0NywgMTE4LCA4MywgMjE2LCAzOSwgMjE5LCA1MiwgMjQwLCAxNjgsIDgzLCAyMTksIDE5MCwgMywgMjUxLCAKKyAgICAxNzIsIDIzMSwgMTU0LCA4MywgMjMxLCAxODMsIDI0OSwgMjE5LCA4MywgMjMxLCAxODMsIDI0MywgMjI5LCAyMTgsIDEyOSwgCisgICAgODMsIDIyOCwgMTkxLCA4MywgMjQzLCAyNTMsIDQ1LCAyMjEsIDE1NywgMTEwLCA4MywgMjQzLCAyNTMsIDQ1LCAyMjEsIAorICAgIDE1NywgMTA1LCA4MywgMjQzLCAyNTMsIDQ1LCAyMjEsIDE1NywgMTU4LCA4MywgMjUsIDIyMCwgMTM3LCA4MywgMjEsIDIxMCwgCisgICAgODYsIDgzLCAyMSwgMTEwLCA4MywgMjEsIDEwNSwgODMsIDIxLCAxNTgsIDgzLCAyMSwgMTYxLCA4MywgMjEsIDE4OSwgODMsIAorICAgIDIxLCAxOTQsIDgzLCAyMSwgMTk4LCA4MywgMjEsIDE5NSwgODMsIDIxLCAyMDAsIDgzLCAxLCA2MSwgODMsIDEsIDc1LCA4MywgCisgICAgMSwgNzMsIDgzLCAxLCA3NiwgODMsIDEsIDcwLCA4MywgMSwgMjI2LCAyMzQsIDgzLCAxLCAyMTQsIDIxNCwgODMsIDEsIAorICAgIDI0NSwgMjA5LCA4MywgMSwgMTk3LCA4MywgMSwgMjU0LCAxMTUsIDgzLCAxLCAyNTIsIDE5MSwgODMsIDEsIDE5MCwgODMsIAorICAgIDEsIDIyNCwgODgsIDgzLCAxLCAyNDMsIDEzNSwgODMsIDEsIDE4NCwgODMsIDEsIDIzMywgMTM1LCA4MywgMSwgMjA2LCA4MywgCisgICAgMSwgMjIwLCAxMDIsIDgzLCAxLCAyMTcsIDEwNSwgODMsIDEsIDI0OCwgMjIxLCA4MywgMSwgMjUwLCAxNTcsIDgzLCAxLCAKKyAgICAyMzUsIDE0MSwgODMsIDEsIDE5MSwgODMsIDEsIDIwNSwgODMsIDEsIDIxMiwgNjUsIDgzLCAxLCAyNDQsIDE5NiwgODMsIDEsIAorICAgIDE3NiwgODMsIDEsIDIzNCwgMTMyLCA4MywgMSwgMjE1LCAxODMsIDgzLCAxLCAyMTAsIDExNiwgODMsIDEsIDI0MiwgNDYsIAorICAgIDgzLCAxLCAyMTAsIDE2LCA4MywgMSwgMjMyLCAyNTQsIDgzLCAxLCAyMTAsIDY5LCA4MywgMSwgMjUwLCAxMTAsIDgzLCAxLCAKKyAgICAyMTYsIDM5LCAxOTksIDI1LCA1MCwgODMsIDEsIDIxNiwgMzksIDc1LCA4MywgMSwgMjE2LCAzOSwgNzMsIDgzLCAxLCAyMTYsIAorICAgIDM5LCA3NiwgODMsIDEsIDIxNiwgMzksIDcwLCA4MywgMSwgMjE2LCAzOSwgMjI2LCAyMzQsIDgzLCAxLCAyMTYsIDM5LCAKKyAgICAyMTQsIDIxNCwgODMsIDEsIDIxNiwgMzksIDI1NCwgMTE1LCA4MywgMSwgMjE2LCAzOSwgMjUyLCAxOTEsIDgzLCAxLCAyMTYsIAorICAgIDM5LCAxOTAsIDgzLCAxLCAyMTYsIDM5LCAyMjQsIDg4LCA4MywgMSwgMjE2LCAzOSwgMjQzLCAxMzUsIDgzLCAxLCAyMTYsIAorICAgIDM5LCAxODQsIDgzLCAxLCAyMTYsIDM5LCAyMTcsIDEwNSwgODMsIDEsIDIxNiwgMzksIDI0OCwgMjIxLCA4MywgMSwgMjE2LCAKKyAgICAzOSwgMjUwLCAxNTcsIDgzLCAxLCAyMTYsIDM5LCAyMzUsIDE0MSwgODMsIDEsIDIxNiwgMzksIDIxNSwgMTgzLCA4MywgMSwgCisgICAgMjE2LCAzOSwgMTkxLCA4MywgMSwgMjE2LCAzOSwgMjEyLCA2NSwgODMsIDEsIDIxNiwgMzksIDE3NiwgODMsIDEsIDIxNiwgCisgICAgMzksIDI0MywgMTMyLCA4MywgMSwgMjE2LCAzOSwgMjQyLCA0NiwgODMsIDEsIDIxNiwgMzksIDIzNSwgMTA3LCA4MywgMSwgCisgICAgMjE2LCAzOSwgMjI4LCAyMzEsIDgzLCAxLCAyMTYsIDM5LCAyNDYsIDM4LCA4MywgMSwgMjE5LCAxOTAsIDc1LCA4MywgMSwgCisgICAgMjE5LCAxOTAsIDczLCA4MywgMSwgMjE5LCAxOTAsIDIzNSwgMTUyLCA4MywgMSwgMjE5LCAxOTAsIDIxNCwgMjE0LCA4MywgCisgICAgMSwgMjE5LCAxOTAsIDcwLCA4MywgMSwgMjE5LCAxOTAsIDI1NCwgMTE1LCA4MywgMSwgMjE5LCAxOTAsIDE3NiwgODMsIDEsIAorICAgIDIxOSwgMTkwLCAyNDMsIDEzNSwgODMsIDEsIDIxOSwgMTkwLCAxNjIsIDgzLCAxLCAyMTksIDE5MCwgMTkwLCA4MywgMSwgCisgICAgMjE5LCAxOTAsIDIyMCwgMTAyLCA4MywgMSwgMjE5LCAxOTAsIDIxNywgMTA1LCA4MywgMSwgMjE5LCAxOTAsIDI0OCwgMjIxLCAKKyAgICA4MywgMSwgMjE5LCAxOTAsIDIzNSwgMTQxLCA4MywgMSwgMjE5LCAxOTAsIDI0NCwgMTk2LCA4MywgMSwgMjE5LCAxOTAsIAorICAgIDI0MywgMTMyLCA4MywgMSwgMjE5LCAxOTAsIDI0MiwgNDYsIDgzLCAxLCAyMTksIDE5MCwgMjE1LCAxODMsIDgzLCAxLCAKKyAgICAyMTksIDE5MCwgMjEwLCAxMTYsIDgzLCAxLCAyMTksIDE5MCwgMjIzLCAxODQsIDgzLCAxLCAyMTksIDE5MCwgMjUwLCAxNTcsIAorICAgIDgzLCAxLCAyMTksIDE5MCwgMjEwLCA4MiwgODMsIDEsIDIzMSwgMTgzLCA3MywgODMsIDEsIDIzMSwgMTgzLCAxNzYsIDgzLCAKKyAgICAxLCAyMzEsIDE4MywgMjA1LCA4MywgMSwgMjMxLCAxODMsIDI0NCwgMTk2LCA4MywgMSwgMjMxLCAxODMsIDIxMCwgODIsIAorICAgIDgzLCAxLCAyNTQsIDE2MiwgMjQzLCAxMTYsIDI1NCwgNzYsIDExMCwgODMsIDEsIDI1NCwgMTYyLCAyNDMsIDExNiwgMjEzLCAKKyAgICAxNDgsIDExMCwgODMsIDEsIDI1NCwgMTYyLCAyNDMsIDExNiwgMjQ4LCAxODYsIDgzLCAxLCAyNTQsIDE2MiwgMjQzLCAxMTYsIAorICAgIDIxNCwgMjI0LCA4MywgMSwgMjU0LCAxNjIsIDI0MywgMTE2LCAyMzUsIDE5MywgMjE0LCAyMjQsIDgzLCAxLCAyNTQsIDE2MiwgCisgICAgMjQzLCAxMTYsIDI1MiwgMTU1LCA4MywgMSwgMjU0LCAxNjIsIDI0MywgMTE2LCAxMzQsIDI1MiwgMTU1LCA4MywgMSwgMjU0LCAKKyAgICAxNjIsIDI0MywgMTE2LCA2MSwgODMsIDEsIDI1NCwgMTYyLCAyNDMsIDExNiwgNzMsIDgzLCAxLCAyNTQsIDE2MiwgMjQzLCAKKyAgICAxMTYsIDE3NiwgODMsIDEsIDI1NCwgMTYyLCAyNDMsIDExNiwgMjI5LCA3NywgODMsIDEsIDI1NCwgMTYyLCAyNDMsIDExNiwgCisgICAgMjUxLCAzMywgODMsIDEsIDI1NCwgMTYyLCAyNDMsIDExNiwgMjE1LCAxNTYsIDgzLCAxLCAyNTQsIDE2MiwgMjQzLCAxMTYsIAorICAgIDIxNSwgMTQ0LCA4MywgMSwgMjU0LCAxNjIsIDI0MywgMTE2LCAyNDgsIDEzNSwgODMsIDEsIDI1NCwgMTYyLCAyNDMsIDExNiwgCisgICAgMjI4LCAxMTAsIDgzLCAxLCAyNTQsIDE2MiwgMjQzLCAxMTYsIDIxNywgMTA1LCA4MywgMSwgMjU0LCAxNjIsIDI0MywgMTE2LCAKKyAgICAyNDgsIDIyMSwgODMsIDEsIDI1NCwgMTYyLCAyNDMsIDExNiwgMTkwLCA4MywgMSwgMjU0LCAxNjIsIDI0MywgMTE2LCAyMjUsIAorICAgIDE0NywgODMsIDEsIDI1NCwgMTYyLCAyNDMsIDExNiwgMjE4LCAyMjMsIDgzLCAxLCAyNTQsIDE2MiwgMjQzLCAxMTYsIDIxMCwgCisgICAgODIsIDgzLCAxLCAyNTQsIDE2MiwgMjQzLCAxMTYsIDIxMCwgMTE2LCA4MywgMSwgMjU0LCAxNjIsIDI0MywgMTE2LCAyNTQsIAorICAgIDIwOSwgODMsIDEsIDIxNiwgMzksIDI1NCwgMTYyLCAyNDMsIDExNiwgMjE3LCAxMDUsIDgzLCAxLCAyMTYsIDM5LCAyNTQsIAorICAgIDE2MiwgMjQzLCAxMTYsIDIxMCwgODIsIDgzLCAxLCAyMzEsIDE4MywgMjU0LCAxNjIsIDI0MywgMTE2LCAyNDIsIDI0OSwgCisgICAgODMsIDEsIDIzMSwgMTgzLCAyNTQsIDE2MiwgMjQzLCAxMTYsIDIyOSwgNzcsIDgzLCAxLCAyMzEsIDE4MywgMjU0LCAxNjIsIAorICAgIDI0MywgMTE2LCAyNTEsIDMzLCA4MywgMSwgMjMxLCAxODMsIDI1NCwgMTYyLCAyNDMsIDExNiwgMjM1LCAxMTQsIDgzLCAxLCAKKyAgICAyMzEsIDE4MywgMjU0LCAxNjIsIDI0MywgMTE2LCAyMTUsIDE1NiwgODMsIDEsIDIzMSwgMTgzLCAyNTQsIDE2MiwgMjQzLCAKKyAgICAxMTYsIDI0OCwgMTE5LCA4MywgMSwgMjMxLCAxODMsIDI1NCwgMTYyLCAyNDMsIDExNiwgMjE3LCAxMDUsIDgzLCAxLCAyMzEsIAorICAgIDE4MywgMjU0LCAxNjIsIDI0MywgMTE2LCAyNDgsIDI1LCA4MywgMSwgMjMxLCAxODMsIDI1NCwgMTYyLCAyNDMsIDExNiwgCisgICAgMjE4LCAyMjMsIDgzLCAxLCAyMzEsIDE4MywgMjU0LCAxNjIsIDI0MywgMTE2LCAyNDksIDcyLCA4MywgMSwgMjMxLCAxODMsIAorICAgIDI1NCwgMTYyLCAyNDMsIDExNiwgMjEwLCA4MiwgODMsIDEsIDIzMSwgMTgzLCAyNTQsIDE2MiwgMjQzLCAxMTYsIDIxMCwgCisgICAgMTE2LCA4MywgMSwgMjU0LCAxNjIsIDI0MywgMTE2LCAxNjMsIDcwLCA4MywgMSwgMjU0LCAxNjIsIDI0MywgMTE2LCAxNjMsIAorICAgIDE5MSwgODMsIDEsIDIzMSwgMTgzLCAyNTQsIDE2MiwgMjQzLCAxMTYsIDI1MiwgMTgsIDgzLCAxLCAyNTQsIDE2MiwgMjQzLCAKKyAgICAxMTYsIDI0OCwgMjExLCA4MywgMSwgMjMxLCAxODMsIDI1NCwgMTYyLCAyNDMsIDExNiwgMjMyLCAyNTQsIDE4LCAxOSwgCisgICAgMjI2LCAxMDksIDE4LCAxOSwgMjUzLCAxNjcsIDE4LCAxOSwgMjU1LCAyOCwgMTgsIDE5LCAyMTIsIDI1LCAxOCwgMTksIAorICAgIDIyNCwgMjIxLCAxOCwgMTksIDIyNSwgMjI5LCAxOCwgMTksIDIyNCwgMTA1LCAxOCwgMTksIDIxNywgMzEsIDE4LCAxOSwgCisgICAgMjM0LCAxODksIDE4LCAxOSwgMjMzLCAxNzksIDE4LCAxOSwgMjMxLCAxMzIsIDE4LCAxOSwgMjI4LCAzNywgMTgsIDE5LCAKKyAgICAyMjksIDE4MSwgMTgsIDE5LCAyMzMsIDY4LCAxOCwgMTksIDIxOSwgMjIsIDE4LCAxOSwgMjIxLCAyMTEsIDE4LCAxOSwgCisgICAgMjE5LCAyMzIsIDE4LCAxOSwgMjIwLCA2NiwgMTgsIDE5LCAyMTksIDIwMSwgMTgsIDE5LCAyMTAsIDIyMCwgMTgsIDE5LCAKKyAgICAyMTEsIDUyLCAxOCwgMTksIDIyMywgMTM0LCAxOCwgMTksIDIyNywgMTcxLCAxOCwgMTksIDIyNiwgMjE2LCAyMjcsIDE3MSwgCisgICAgMTgsIDE5LCAyMjcsIDE3MCwgMTgsIDE5LCAyMjYsIDIxNiwgMjI3LCAxNzAsIDE4LCAxOSwgMjI3LCAxNjksIDE4LCAxOSwgCisgICAgMjI2LCAyMTYsIDIyNywgMTY5LCAxOCwgMTksIDIyNywgMTY4LCAxOCwgMTksIDIyNiwgMjE2LCAyMjcsIDE2OCwgMTgsIDE5LCAKKyAgICAyMjIsIDEwNSwgMTgsIDE5LCAyMjIsIDEwNCwgMTgsIDE5LCAyMjIsIDEwMywgMTgsIDE5LCAyMjIsIDEwMiwgMTgsIDE5LCAKKyAgICAyMjIsIDEwMSwgMTgsIDE5LCAyMjIsIDEwOSwgMTgsIDE5LCAyMjYsIDIxNiwgMjI2LCAxMDUsIDE4LCAxOSwgMjI2LCAyMTYsIAorICAgIDIxNywgMTUyLCAxOCwgMTksIDIyNiwgMjE2LCAyMzUsIDIzLCAxOCwgMTksIDIyNiwgMjE2LCAyNTEsIDY2LCAxOCwgMTksIAorICAgIDIyNiwgMjE2LCAxOTMsIDE4LCAxOSwgMjI2LCAyMTYsIDIzMCwgMjUsIDE4LCAxOSwgMjI2LCAyMTYsIDIyMiwgOTEsIDE4LCAKKyAgICAxOSwgMjI2LCAyMTYsIDIyMCwgMTA0LCAxOCwgMTksIDI0NSwgMjE5LCAyMTIsIDk4LCAxOCwgMTksIDIxMiwgNywgMjEyLCAKKyAgICA5OCwgMTgsIDE5LCA0MCwgNCwgMjIyLCAyMzMsIDE4LCAxOSwgNDAsIDIyMywgMTU3LCAyNDcsIDEyMCwgMTgsIDE5LCAyMjMsIAorICAgIDIyMywgMjIyLCAxMDYsIDE4LCAxOSwgMTU5LCAyMzIsIDEyNywgMTgsIDE5LCAxNTksIDIzMywgMTM0LCAxOCwgMTksIDIxNiwgCisgICAgMTI2LCAxOCwgMTksIDIxNiwgMTI4LCAxOCwgMTksIDIxNSwgMTM2LCAxOCwgMTksIDIxNSwgMTM4LCAxOCwgMTksIDIxNSwgCisgICAgMTQzLCAxOCwgMTksIDIxNiwgNDksIDE4LCAxOSwgMjE2LCA1MSwgMTgsIDE5LCAyMjEsIDIwOSwgMjE5LCAyMDYsIDE4LCAKKyAgICAxOSwgMjIxLCAyMDksIDIyMCwgMSwgMTgsIDE5LCAyMjEsIDIwOSwgMjQxLCA1MywgMTgsIDE5LCA3MiwgMjQyLCA3MywgMTgsIAorICAgIDE5LCA3MiwgMjQ4LCA1MiwgMjQzLCA1NSwgMTgsIDE5LCA3MiwgMjQzLCAxMzIsIDE4LCAxOSwgNzIsIDI0MiwgNzgsIDE4LCAKKyAgICAxOSwgMjIxLCAyMDksIDIzNSwgMzMsIDE4LCAxOSwgNzIsIDIzNSwgMzEsIDE4LCAxOSwgMjUyLCA2OCwgMjQ4LCA1MiwgCisgICAgMTU2LCAxOCwgMTksIDI1MiwgNjgsIDI0OCwgNTIsIDE1MywgMTgsIDE5LCA3MiwgMjQ4LCA0NywgMjIyLCA5MSwgMjMyLCAKKyAgICAyMjMsIDIxMywgMTIyLCAyMzMsIDEwLCAyMzIsIDIyMywgMSwgMTc2LCAyMzIsIDIyMywgMSwgMjM0LCAxMzIsIDIzMiwgCisgICAgMjIzLCAxLCAyNDMsIDEzNSwgMjMyLCAyMjMsIDEsIDI0MiwgMjQ5LCAyMzIsIDIyMywgMSwgMjI5LCA3NywgMjMyLCAyMjMsIAorICAgIDEsIDI1MSwgMzMsIDIzMiwgMjIzLCAxLCAyNTAsIDE1NywgMjMyLCAyMjMsIDEsIDIzNSwgMTQxLCAyMzIsIDIyMywgMSwgCisgICAgMjM1LCAxMTQsIDIzMiwgMjIzLCAxLCAyMTEsIDcxLCAyMzIsIDIyMywgMSwgMjE3LCAxMDUsIDIzMiwgMjIzLCAxLCAyMTYsIAorICAgIDIwOCwgMjMyLCAyMjMsIDEsIDI0OCwgMjIxLCAyMzIsIDIyMywgMSwgMjQ4LCAyNSwgMjMyLCAyMjMsIDEsIDE5NywgMjMyLCAKKyAgICAyMjMsIDEsIDE5MCwgMjMyLCAyMjMsIDEsIDIyNSwgMTQ3LCAyMzIsIDIyMywgMSwgMjUyLCAxOTEsIDIzMiwgMjIzLCAxLCAKKyAgICAyNTIsIDE4LCAyMzIsIDIyMywgMSwgMTg0LCAyMzIsIDIyMywgMSwgMTkxLCAyMzIsIDIyMywgMSwgMjA1LCAyMzIsIDIyMywgCisgICAgMSwgMjMzLCAxMzUsIDIzMiwgMjIzLCAxLCAyMTIsIDY1LCAyMzIsIDIyMywgMSwgMjIwLCAxMDIsIDIzMiwgMjIzLCAxLCAKKyAgICAyMTgsIDIyMywgMjMyLCAyMjMsIDEsIDIwNiwgMjMyLCAyMjMsIDEsIDE2MiwgMjMyLCAyMjMsIDI1LCA1LCA2MSwgMjMyLCAKKyAgICAyMjMsIDI1LCA1LCA3MywgMjMyLCAyMjMsIDI1LCA1LCA3MCwgMjMyLCAyMjMsIDI1LCA1LCAyNDUsIDIwOSwgMjMyLCAyMjMsIAorICAgIDI1LCA1LCAyNTQsIDIwMSwgMjMyLCAyMjMsIDI1LCA1LCAyMjYsIDE4MywgMjMyLCAyMjMsIDI1LCA1LCAyNTMsIDE5MiwgCisgICAgMjMyLCAyMjMsIDI1LCA1LCA3NSwgMjMyLCAyMjMsIDI1LCA1LCA3NiwgMjMyLCAyMjMsIDIxOCwgNzMsIDEsIDE5MSwgMjMyLCAKKyAgICAyMjMsIDIxOCwgNzMsIDEsIDIwNSwgMjMyLCAyMjMsIDIxOCwgNzMsIDEsIDIxMiwgNjUsIDIzMiwgMjIzLCA0LCAxLCAxNzYsIAorICAgIDIzMiwgMjIzLCA0LCAxLCAyMjksIDc3LCAyMzIsIDIyMywgNCwgMSwgMjU0LCA3NSwgMjMyLCAyMjMsIDQsIDEsIDIxNywgCisgICAgMTA1LCAyMzIsIDIyMywgNCwgMSwgMTk3LCAyMzIsIDIyMywgNCwgMSwgMTkwLCAyMzIsIDIyMywgNCwgMSwgMTg0LCAyMzIsIAorICAgIDIyMywgNCwgMSwgMjA1LCAyMzIsIDIyMywgNCwgMSwgMjMzLCAxMzUsIDIzMiwgMjIzLCA1LCAyMzAsIDg5LCAyMzIsIDIyMywgCisgICAgNSwgMjM0LCAxNzEsIDIzMiwgMjIzLCA1LCAyMjIsIDMyLCAyMzIsIDIyMywgNSwgMjMyLCAxMjcsIDIzMiwgMjIzLCAyNDUsIAorICAgIDMxLCA3OCwgMjMyLCAyMjMsIDIyNCwgMTMsIDc4LCAyMzIsIDIyMywgMjEsIDIxMCwgODYsIDIzMiwgMjIzLCAyMSwgMTEwLCAKKyAgICAyMzIsIDIyMywgMjEsIDEwNSwgMjMyLCAyMjMsIDIxLCAxNTgsIDIzMiwgMjIzLCAyMSwgMTYxLCAyMzIsIDIyMywgMjEsIAorICAgIDE4OSwgMjMyLCAyMjMsIDIxLCAxOTQsIDIzMiwgMjIzLCAyMSwgMTk4LCAyMzIsIDIyMywgMjEsIDE5NSwgMjMyLCAyMjMsIAorICAgIDIxLCAyMDAsIDM5LCAyMzMsIDU5LCAxLCAxNzYsIDM5LCAyMzMsIDU5LCAxLCAyMTEsIDE2NSwgMzksIDIzMywgNTksIDEsIAorICAgIDIyOSwgNzcsIDM5LCAyMzMsIDU5LCAxLCAyMTUsIDE4MywgMzksIDIzMywgNTksIDEsIDIwNiwgMzksIDIzMywgNTksIDEsIAorICAgIDE5MSwgMzksIDIzMywgNTksIDEsIDIxNywgMTA1LCAzOSwgMjMzLCA1OSwgMSwgMjE2LCAyMDgsIDM5LCAyMzMsIDU5LCAxLCAKKyAgICAyMzMsIDEzNSwgMzksIDIzMywgNTksIDEsIDE5MCwgMzksIDIzMywgNTksIDEsIDIyNSwgMTQ3LCAzOSwgMjMzLCA1OSwgMSwgCisgICAgMTg0LCAzOSwgMjMzLCA1OSwgMSwgMjQ0LCAxOTYsIDM5LCAyMzMsIDU5LCAxLCAyMTQsIDI3LCAzOSwgMjMzLCA1OSwgMSwgCisgICAgMTYyLCAzOSwgMjMzLCA1OSwgMSwgMjI0LCA4OCwgMzksIDIzMywgNTksIDEsIDIzNCwgMTMyLCAzOSwgMjMzLCA1OSwgMSwgCisgICAgMjE1LCAxNzUsIDM5LCAyMzMsIDU5LCAxLCAxOTcsIDM5LCAyMzMsIDU5LCAxLCA2MSwgMzksIDIzMywgNTksIDEsIDczLCAKKyAgICAzOSwgMjMzLCA1OSwgMSwgMjQ1LCAyMDksIDM5LCAyMzMsIDU5LCAxLCAyNDUsIDE5NywgMzksIDIzMywgNTksIDEsIDcwLCAKKyAgICAzOSwgMjMzLCA1OSwgMSwgMjI2LCAxODMsIDM5LCAyMzMsIDU5LCAxLCA3NiwgMzksIDIzMywgNTksIDEsIDIxNCwgMjE0LCAKKyAgICAzOSwgMjMzLCA1OSwgMSwgNzUsIDM5LCAyMzMsIDU5LCAxLCAyNTMsIDE5MCwgMzksIDIzMywgNTksIDEsIDI1NCwgMjAxLCAKKyAgICAzOSwgMjMzLCA1OSwgMSwgMjE2LCAyOCwgMzksIDIzMywgNTksIDEsIDIxNiwgMjcsIDM5LCAyMzMsIDU5LCAxLCAyMTYsIAorICAgIDI2LCAzOSwgMjMzLCA1OSwgMSwgMjE2LCAyNSwgMzksIDIzMywgNTksIDEsIDIxNiwgMjQsIDE2NiwgMzksIDE3MywgMSwgCisgICAgMTI1LCAyMjQsIDg4LCAxNjYsIDM5LCAxNzMsIDEsIDEyMSwgMjI0LCA4OCwgMTY2LCAzOSwgMTczLCAxLCAxMjUsIDE3NiwgCisgICAgMTY2LCAzOSwgMTczLCAxLCAxMjUsIDIxMSwgMTY1LCAxNjYsIDM5LCAxNzMsIDEsIDEyNSwgMjI5LCA3NywgMTY2LCAzOSwgCisgICAgMTczLCAxLCAxMjEsIDE3NiwgMTY2LCAzOSwgMTczLCAxLCAxMjEsIDIxMSwgMTY1LCAxNjYsIDM5LCAxNzMsIDEsIDEyMSwgCisgICAgMjI5LCA3NywgMTY2LCAzOSwgMTczLCAxLCAxMjUsIDIxNSwgMTgzLCAxNjYsIDM5LCAxNzMsIDEsIDEyNSwgMjA2LCAxNjYsIAorICAgIDM5LCAxNzMsIDEsIDEyNSwgMTkxLCAxNjYsIDM5LCAxNzMsIDEsIDEyMSwgMjE1LCAxODMsIDE2NiwgMzksIDE3MywgMSwgCisgICAgMTIxLCAyMDYsIDE2NiwgMzksIDE3MywgMSwgMTIxLCAxOTEsIDE2NiwgMzksIDE3MywgMSwgMTI1LCAyMTcsIDEwNSwgMTY2LCAKKyAgICAzOSwgMTczLCAxLCAxMjUsIDIxNiwgMjA4LCAxNjYsIDM5LCAxNzMsIDEsIDEyNSwgMTk3LCAxNjYsIDM5LCAxNzMsIDEsIAorICAgIDEyMSwgMjE3LCAxMDUsIDE2NiwgMzksIDE3MywgMSwgMTIxLCAyMTYsIDIwOCwgMTY2LCAzOSwgMTczLCAxLCAxMjEsIDE5NywgCisgICAgMTY2LCAzOSwgMTczLCAxLCAxMjUsIDE5MCwgMTY2LCAzOSwgMTczLCAxLCAxMjUsIDIyNSwgMTQ3LCAxNjYsIDM5LCAxNzMsIAorICAgIDEsIDEyNSwgMTg0LCAxNjYsIDM5LCAxNzMsIDEsIDEyMSwgMTkwLCAxNjYsIDM5LCAxNzMsIDEsIDEyMSwgMjI1LCAxNDcsIAorICAgIDE2NiwgMzksIDE3MywgMSwgMTIxLCAxODQsIDE2NiwgMzksIDE3MywgMSwgMTI1LCAyNDQsIDE5NiwgMTY2LCAzOSwgMTczLCAKKyAgICAxLCAxMjUsIDIxNCwgMjcsIDE2NiwgMzksIDE3MywgMSwgMTI1LCAyMzMsIDEzNSwgMTY2LCAzOSwgMTczLCAxLCAxMjEsIAorICAgIDI0NCwgMTk2LCAxNjYsIDM5LCAxNzMsIDEsIDEyMSwgMjE0LCAyNywgMTY2LCAzOSwgMTczLCAxLCAxMjEsIDIzMywgMTM1LCAKKyAgICAxNjYsIDM5LCAxNzMsIDEsIDEyNSwgMTYyLCAxNjYsIDM5LCAxNzMsIDEsIDEyNSwgMjQ4LCAyMjEsIDE2NiwgMzksIDE3MywgCisgICAgMSwgMTI1LCAyNTIsIDE5MSwgMTY2LCAzOSwgMTczLCAxLCAxMjEsIDE2MiwgMTY2LCAzOSwgMTczLCAxLCAxMjEsIDI0OCwgCisgICAgMjIxLCAxNjYsIDM5LCAxNzMsIDEsIDEyMSwgMjUyLCAxOTEsIDE2NiwgMzksIDE3MywgMSwgMTI1LCAyMzMsIDE4NCwgMTY2LCAKKyAgICAzOSwgMTczLCAxLCAxMjUsIDIxMSwgMTM4LCAxNjYsIDM5LCAxNzMsIDEsIDEyMSwgMjMzLCAxODQsIDE2NiwgMzksIDE3MywgCisgICAgMSwgMTIxLCAyMTEsIDEzOCwgMTY2LCAzOSwgMTczLCAxLCAxMjUsIDIxOCwgODIsIDE2NiwgMzksIDE3MywgMSwgMTIxLCAKKyAgICAyMTgsIDgyLCAxNjYsIDM5LCAxNzMsIDI1LCA1LCAyNSwgMjE5LCAyMzksIDE2NiwgMzksIDE3MywgMjUsIDUsIDI1NSwgNzMsIAorICAgIDE2NiwgMzksIDE3MywgMjUsIDUsIDIzNiwgMzMsIDE2NiwgMzksIDE3MywgMjUsIDUsIDcwLCAxNjYsIDM5LCAxNzMsIDI1LCAKKyAgICA1LCAyMTQsIDExOCwgMTY2LCAzOSwgMTczLCAyNSwgNSwgNzUsIDE2NiwgMzksIDE3MywgMjUsIDUsIDI1NCwgMjQzLCAxNjYsIAorICAgIDM5LCAxNzMsIDI1LCA1LCA3NiwgMTY2LCAzOSwgMTczLCAyNSwgNSwgMjI3LCAwLCAxNjYsIDM5LCAxNzMsIDI1LCA1LCAKKyAgICAyMTQsIDIxNCwgMTY2LCAzOSwgMTczLCAyNSwgNSwgMjUzLCAxNjcsIDE2NiwgMzksIDE3MywgMjUsIDUsIDI1NSwgMjgsIAorICAgIDE2NiwgMzksIDE3MywgMjUsIDUsIDIxNCwgMTExLCAxNjYsIDM5LCAxNzMsIDI1LCA1LCAyMjYsIDEwOSwgMTY2LCAzOSwgCisgICAgMTczLCAyNSwgNSwgMjI2LCAyNTMsIDE2NiwgMzksIDE3MywgMjUsIDUsIDIxNCwgMjEwLCAxNjYsIDM5LCAxNzMsIDI1LCA1LCAKKyAgICAyMzUsIDE1MiwgMTY2LCAzOSwgMTczLCAxLCA0MCwgMjE0LCAxMDUsIDE2NiwgMzksIDE3MywgMSwgNDAsIDIyOSwgNzksIAorICAgIDE2NiwgMzksIDE3MywgMSwgNDAsIDIzMCwgMjUsIDE2NiwgMzksIDE3MywgMSwgNDAsIDE5MywgMTY2LCAzOSwgMTczLCAxLCAKKyAgICA0MCwgMjM1LCAyMywgMTY2LCAzOSwgMTczLCAxLCA0MCwgMjQ5LCA2MCwgMTY2LCAzOSwgMTczLCAxLCA0MCwgMjUzLCAxNTgsIAorICAgIDE2NiwgMzksIDE3MywgMTM4LCAyMzEsIDE1OCwgMTY2LCAzOSwgMTczLCAxMzgsIDIzMSwgMTU3LCAxNjYsIDM5LCAxNzMsIAorICAgIDIxLCAyMTAsIDg2LCAxNjYsIDM5LCAxNzMsIDIxLCAxMTAsIDE2NiwgMzksIDE3MywgMjEsIDEwNSwgMTY2LCAzOSwgMTczLCAKKyAgICAyMSwgMTU4LCAxNjYsIDM5LCAxNzMsIDIxLCAxNjEsIDE2NiwgMzksIDE3MywgMjEsIDE4OSwgMTY2LCAzOSwgMTczLCAyMSwgCisgICAgMTk0LCAxNjYsIDM5LCAxNzMsIDIxLCAxOTgsIDE2NiwgMzksIDE3MywgMjEsIDE5NSwgMTY2LCAzOSwgMTczLCAyMSwgMjAwLCAKKyAgICAxNjYsIDM5LCAxNzMsIDg5LCAyMSwgMTEwLCAxNjYsIDM5LCAxNzMsIDUsIDIzMywgMTIwLCAxNjYsIDM5LCAxNzMsIDUsIAorICAgIDIzMywgMTE5LCA2OSwgMTYsIDIyNSwgMjM2LCA2OSwgMTYsIDIzMCwgNzIsIDIzNCwgMjUsIDY5LCAxNiwgMjI1LCA3MiwgCisgICAgMjM0LCAyNSwgNjksIDE2LCAyNTIsIDUwLCAyMzQsIDI1LCA2OSwgMTYsIDI1MSwgMTA0LCAyMzQsIDI1LCA2OSwgMTYsIAorICAgIDIyNCwgMjE2LCAyMzQsIDI1LCA2OSwgMTYsIDIyNCwgMjEwLCAyMzQsIDI1LCA2OSwgMTYsIDIyNCwgMjA4LCAyMzQsIDI1LCAKKyAgICA2OSwgMTYsIDIyNCwgMjE0LCAyMzQsIDI1LCA2OSwgMTYsIDIyNCwgMjEyLCAyMzQsIDI1LCA2OSwgMTYsIDI0OCwgMTczLCAKKyAgICAyMzQsIDI1LCA2OSwgMTYsIDI0OCwgMTY5LCAyMzQsIDI1LCA2OSwgMTYsIDI0OCwgMTY4LCAyMzQsIDI1LCA2OSwgMTYsIAorICAgIDI0OCwgMTcxLCAyMzQsIDI1LCA2OSwgMTYsIDI0OCwgMTcwLCAyMzQsIDI1LCA2OSwgMTYsIDI0OCwgMTY3LCAyMzQsIDI1LCAKKyAgICA2OSwgMTYsIDIxNSwgODcsIDY5LCAxNiwgMjMwLCA3MiwgMjIyLCAyMDUsIDY5LCAxNiwgMjI1LCA3MiwgMjIyLCAyMDUsIAorICAgIDY5LCAxNiwgMjUyLCA1MCwgMjIyLCAyMDUsIDY5LCAxNiwgMjUxLCAxMDQsIDIyMiwgMjA1LCA2OSwgMTYsIDIyNCwgMjE2LCAKKyAgICAyMjIsIDIwNSwgNjksIDE2LCAyMjQsIDIxMCwgMjIyLCAyMDUsIDY5LCAxNiwgMjI0LCAyMDgsIDIyMiwgMjA1LCA2OSwgMTYsIAorICAgIDIyNCwgMjE0LCAyMjIsIDIwNSwgNjksIDE2LCAyMjQsIDIxMiwgMjIyLCAyMDUsIDY5LCAxNiwgMjQ4LCAxNzMsIDIyMiwgCisgICAgMjA1LCA2OSwgMTYsIDI0OCwgMTY5LCAyMjIsIDIwNSwgNjksIDE2LCAyNDgsIDE2OCwgMjIyLCAyMDUsIDY5LCAxNiwgMjQ4LCAKKyAgICAxNzEsIDIyMiwgMjA1LCA2OSwgMTYsIDI0OCwgMTcwLCAyMjIsIDIwNSwgNjksIDE2LCAyNDgsIDE2NywgMjIyLCAyMDUsIAorICAgIDI1MSwgMTIxLCAxLCAxNzYsIDI1MSwgMTIxLCAxLCAyNDMsIDEzNSwgMjUxLCAxMjEsIDEsIDIyOSwgNzcsIDI1MSwgMTIxLCAKKyAgICAxLCAyMjksIDIyLCAyNTEsIDEyMSwgMSwgMTkwLCAyNTEsIDEyMSwgMSwgMjUyLCAxOTEsIDI1MSwgMTIxLCAxLCAxODQsIAorICAgIDI1MSwgMTIxLCAxLCAyMzAsIDEwNSwgMjUxLCAxMjEsIDEsIDIxNywgMTA1LCAyNTEsIDEyMSwgMSwgMjQ4LCAyMjEsIDI1MSwgCisgICAgMTIxLCAxLCAxOTcsIDI1MSwgMTIxLCAxLCAyMjgsIDM2LCAyNTEsIDEyMSwgMSwgMjUxLCAzMywgMjUxLCAxMjEsIDEsIAorICAgIDIzNSwgMTQxLCAyNTEsIDEyMSwgMSwgMjI3LCAxNjUsIDI1MSwgMTIxLCAxLCAyMjcsIDE1OCwgMjUxLCAxMjEsIDEsIDE5MSwgCisgICAgMjUxLCAxMjEsIDEsIDIwNSwgMjUxLCAxMjEsIDEsIDIzMywgMTM1LCAyNTEsIDEyMSwgMSwgMjE0LCAyNywgMjUxLCAxMjEsIAorICAgIDEsIDIwNiwgMjUxLCAxMjEsIDEsIDYxLCAyNTEsIDEyMSwgMSwgMTYyLCAyNTEsIDEyMSwgMjUsIDUsIDczLCAyNTEsIDEyMSwgCisgICAgMjUsIDUsIDcwLCAyNTEsIDEyMSwgMjUsIDUsIDc1LCAyNTEsIDEyMSwgMjUsIDUsIDc2LCAyNTEsIDEyMSwgMjUsIDUsIAorICAgIDI1NCwgMjQzLCAyNTEsIDEyMSwgMjI2LCA2MCwgMjUxLCAxMjEsIDI0NSwgMTQzLCA2NCwgMjIxLCAxNzIsIDM5LCA4OSwgMSwgCisgICAgMTI1LCAxNzYsIDM5LCA4OSwgMSwgMTI1LCAyMzQsIDEzMiwgMzksIDg5LCAxLCAxMjUsIDIzMywgMTcxLCAzOSwgODksIDEsIAorICAgIDEyMSwgMTc2LCAzOSwgODksIDEsIDEyMSwgMjMzLCAxNzEsIDM5LCA4OSwgMSwgMTIxLCAyMzQsIDEzMiwgMzksIDg5LCAxLCAKKyAgICAyMjksIDc3LCAzOSwgODksIDEsIDEyNSwgMjUxLCAzMywgMzksIDg5LCAxLCAxMjUsIDI1MCwgMTU3LCAzOSwgODksIDEsIAorICAgIDEyMSwgMjUxLCAzMywgMzksIDg5LCAxLCAxMjEsIDIwNiwgMzksIDg5LCAxLCAxMjEsIDI1MCwgMTU3LCAzOSwgODksIDEsIAorICAgIDIyNywgMTY1LCAzOSwgODksIDEsIDIyMywgMTQwLCAzOSwgODksIDEsIDEyNSwgMjIzLCAxMzgsIDM5LCA4OSwgMSwgMjQ4LCAKKyAgICAyMjEsIDM5LCA4OSwgMSwgMTIxLCAyMjMsIDEzOCwgMzksIDg5LCAxLCAyMjMsIDE0OSwgMzksIDg5LCAxLCAxMjUsIDIxNywgCisgICAgMTA1LCAzOSwgODksIDEsIDEyNSwgMjE2LCAyMDgsIDM5LCA4OSwgMSwgMTIxLCAyMTcsIDEwNSwgMzksIDg5LCAxLCAxMjEsIAorICAgIDIxNiwgMjA4LCAzOSwgODksIDEsIDE5NywgMzksIDg5LCAxLCAyNTIsIDE5MSwgMzksIDg5LCAxLCAxMjUsIDE5MCwgMzksIAorICAgIDg5LCAxLCAxMjUsIDIyNSwgMTQ3LCAzOSwgODksIDEsIDEyNSwgMjQ0LCAxOTYsIDM5LCA4OSwgMSwgMTIxLCAxOTAsIDM5LCAKKyAgICA4OSwgMSwgMTIxLCAyNDQsIDE5NiwgMzksIDg5LCAxLCAxMjEsIDIyNSwgMTQ3LCAzOSwgODksIDEsIDE4NCwgMzksIDg5LCAKKyAgICAxLCAxMjEsIDE5MSwgMzksIDg5LCAxLCAxMjUsIDE5MSwgMzksIDg5LCAxLCAyMDUsIDM5LCA4OSwgMSwgMjIyLCAxMzcsIAorICAgIDM5LCA4OSwgMSwgMjMzLCAxMzUsIDM5LCA4OSwgMSwgMjMyLCA5MywgMzksIDg5LCAxLCAyMTIsIDY1LCAzOSwgODksIDEsIAorICAgIDEyNSwgMjIwLCAxMDIsIDM5LCA4OSwgMSwgMTI1LCAyMTgsIDIyMywgMzksIDg5LCAxLCAxMjUsIDIwNiwgMzksIDg5LCAxLCAKKyAgICAxMjUsIDE2MiwgMzksIDg5LCAxLCAyMzIsIDE4NCwgMzksIDg5LCAxLCA2MSwgMzksIDg5LCAxLCAxMjEsIDE2MiwgMzksIAorICAgIDg5LCAxLCA3MywgMzksIDg5LCAxLCAyMzYsIDMzLCAzOSwgODksIDEsIDcwLCAzOSwgODksIDEsIDIxNCwgMTE4LCAzOSwgCisgICAgODksIDEsIDI0NSwgMjA5LCAzOSwgODksIDEsIDIyNiwgMTgzLCAzOSwgODksIDEsIDIzMywgMTIwLCAzOSwgODksIDEsIAorICAgIDI0MiwgMTMyLCAyMDYsIDM5LCA4OSwgMTE2LCA1LCAxNDcsIDIwNSwgMzksIDg5LCAxMTYsIDUsIDE0NywgMjMzLCAxMzUsIAorICAgIDM5LCA4OSwgMTE2LCA1LCAyMzMsIDEzNiwgMjE3LCA1OCwgMjMzLCAxMDksIDM5LCA4OSwgNSwgMjMxLCAyMDQsIDIzNCwgCisgICAgMjMxLCAyMzMsIDEwOSwgMzksIDg5LCAxMTYsIDUsIDQwLCAyMjksIDc3LCAzOSwgODksIDExNiwgNSwgMTIxLCAxOTAsIDM5LCAKKyAgICA4OSwgMTE2LCA1LCAxMjUsIDIyMywgMTM5LCAxNzcsIDEyMSwgMTkwLCAzOSwgODksIDExNiwgNSwgMTg0LCAzOSwgODksIAorICAgIDExNiwgNSwgMjUyLCAxOTEsIDM5LCA4OSwgMTE2LCA1LCAyMDYsIDM5LCA4OSwgNSwgMjIyLCAxMCwgMzksIDg5LCAyNSwgNSwgCisgICAgNjEsIDM5LCA4OSwgMjUsIDUsIDIzMSwgMjA0LCAyMjEsIDIyNiwgMzksIDg5LCAyNSwgNSwgMjU1LCA3MywgMzksIDg5LCAKKyAgICAyNSwgNSwgMjE3LCA2NCwgMjU1LCA3MywgMzksIDg5LCAyNSwgNSwgNzMsIDM5LCA4OSwgMjUsIDUsIDIzNiwgMzMsIDM5LCAKKyAgICA4OSwgMjUsIDUsIDIxNCwgMjE0LCAzOSwgODksIDI1LCA1LCAyMTQsIDExNywgMzksIDg5LCAyNSwgNSwgNzAsIDM5LCA4OSwgCisgICAgMjUsIDUsIDIxNCwgMTE4LCAzOSwgODksIDI1LCA1LCA3NiwgMzksIDg5LCAyNSwgNSwgMjI3LCAxLCA1MSwgMzksIDg5LCAKKyAgICAyNSwgNSwgMjI2LCAxMDksIDM5LCA4OSwgMjUsIDUsIDc1LCAzOSwgODksIDI1LCA1LCAyNTQsIDI0MywgMzksIDg5LCAyNSwgCisgICAgNSwgMjI2LCAxODMsIDM5LCA4OSwgMjUsIDUsIDI1NCwgMjAxLCAzOSwgODksIDI1LCA1LCA4OSwgMjU0LCAyMDEsIDM5LCAKKyAgICA4OSwgMjUsIDUsIDIyNywgMSwgNDgsIDM5LCA4OSwgNSwgMjMxLCAyMDQsIDIzNCwgMjMwLCAzOSwgODksIDUsIDIxNiwgMjksIAorICAgIDM5LCA4OSwgNSwgMjE2LCAyOCwgMzksIDg5LCA1LCAyMzQsIDk3LCAyMTYsIDI3LCAzOSwgODksIDUsIDIzNCwgOTcsIDIxNiwgCisgICAgMjYsIDM5LCA4OSwgNSwgMjM0LCA5NywgMjE2LCAyNSwgMzksIDg5LCA1LCAyMjMsIDE4OCwgMjQyLCA0NSwgMzksIDg5LCA1LCAKKyAgICAyMzEsIDIwNCwgMjIxLCAyNTMsIDM5LCA4OSwgNSwgMjM0LCA5NiwgMjM0LCAyMTUsIDM5LCA4OSwgMzgsIDI0OSwgMTE1LCAKKyAgICAyNDcsIDEyMCwgMzksIDg5LCAyNDEsIDQ2LCAyMSwgMjEwLCA4NiwgMzksIDg5LCAyNDEsIDQ2LCAyMSwgMTEwLCAzOSwgODksIAorICAgIDI0MSwgNDYsIDIxLCAxMDUsIDM5LCA4OSwgMjQxLCA0NiwgMjEsIDE1OCwgMzksIDg5LCAyNDEsIDQ2LCAyMSwgMTYxLCAzOSwgCisgICAgODksIDI0MSwgNDYsIDIxLCAxODksIDM5LCA4OSwgMjQxLCA0NiwgMjEsIDE5NCwgMzksIDg5LCAyNDEsIDQ2LCAyMSwgMTk4LCAKKyAgICAzOSwgODksIDI0MSwgNDYsIDIxLCAxOTUsIDM5LCA4OSwgMjQxLCA0NiwgMjEsIDIwMCwgMzksIDg5LCA4OSwgMjEsIDIxMCwgCisgICAgODYsIDM5LCA4OSwgODksIDIxLCAxMTAsIDM5LCA4OSwgODksIDIxLCAxMDUsIDM5LCA4OSwgODksIDIxLCAxNTgsIDM5LCAKKyAgICA4OSwgODksIDIxLCAxNjEsIDM5LCA4OSwgODksIDIxLCAxODksIDM5LCA4OSwgODksIDIxLCAxOTQsIDM5LCA4OSwgODksIAorICAgIDIxLCAxOTgsIDM5LCA4OSwgODksIDIxLCAxOTUsIDM5LCA4OSwgODksIDIxLCAyMDAsIDM5LCA4OSwgNSwgMjExLCAyNDksIAorICAgIDM5LCA4OSwgNSwgMjExLCAyNDgsIDM5LCA4OSwgNSwgMjIxLCAyMTUsIDM5LCA4OSwgNSwgMjM0LCAxNjAsIDM5LCA4OSwgNSwgCisgICAgMjQwLCAyMzIsIDM5LCA4OSwgNSwgMjQ3LCAxMzQsIDM5LCA4OSwgNSwgMjIzLCA0OSwgMjIyLCAxODcsIDIyMywgMTQ5LCAKKyAgICAzOSwgODksIDUsIDIzMSwgMjA0LCAyMTEsIDcyLCAzOSwgODksIDUsIDIzNSwgNiwgMzksIDg5LCA1LCAyMzUsIDUsIDM5LCAKKyAgICA4OSwgNSwgMjIxLCAyMjIsIDM5LCA4OSwgNSwgMjIxLCAyMjEsIDM5LCA4OSwgNSwgMjQyLCA5LCAzOSwgODksIDUsIDI1MSwgCisgICAgMzAsIDEwMiwgNSwgMjE0LCAyMDAsIDIyMywgMzAsIDEwMiwgNSwgMjE0LCAyMDAsIDI1MSwgMSwgMTAyLCA1LCAyNTAsIAorICAgIDE4NiwgMTAyLCA1LCAyMTgsIDE1LCAxMDIsIDUsIDI1MSwgMjMzLCAxMDIsIDEsIDI1NCwgMTg0LCAxMDIsIDEsIDI1NCwgCisgICAgMTg1LCAyMTcsIDEzLCAxMDIsIDEsIDIzNiwgMjksIDEwMiwgMSwgMjM2LCAzMCwgMjE3LCAxMywgMTAyLCAxLCAyMTQsIAorICAgIDIwMywgMTAyLCAxLCAyMTQsIDIwNCwgMjE3LCAxMywgMTAyLCAxLCAyMjMsIDE4OCwgMjIzLCA3OSwgMTAyLCAxLCAyMjMsIAorICAgIDE4OCwgMjIzLCA4MCwgMjE3LCAxMywgMTAyLCAxLCAyMzMsIDEzNiwgMjMzLCAyNCwgMTAyLCAxLCAyMzMsIDEzNiwgMjMzLCAKKyAgICAyNSwgMjE3LCAxMywgMTAyLCAxLCAyNDUsIDE3OSwgMTAyLCAxLCAyNTQsIDE5OSwgMTAyLCAxLCAyMjYsIDIxMiwgMTAyLCAKKyAgICAxLCAyMjYsIDIxMywgMjE3LCAxMywgMTAyLCAxLCAxNzYsIDEwMiwgMSwgMjM1LCAxMywgMjMxLCAyMDcsIDEwMiwgMSwgCisgICAgMjQzLCAxMzUsIDEwMiwgMSwgMjQzLCAxMzYsIDI0MiwgMTYxLCAxMDIsIDEsIDIyOSwgNzcsIDEwMiwgMSwgMjUxLCAzMywgCisgICAgMTAyLCAxLCAyNTEsIDM0LCAyMzMsIDEyMywgMTAyLCAxLCAyMzUsIDE0MSwgMTAyLCAxLCAyMzUsIDE0MiwgMjM1LCAxMTgsIAorICAgIDEwMiwgMSwgMjI3LCAxNjUsIDEwMiwgMSwgMjE3LCAxMDYsIDIzMywgNzYsIDEwMiwgMSwgMjE3LCAxMDYsIDIzMCwgNjcsIAorICAgIDIzMSwgMjA3LCAxMDIsIDEsIDI0OCwgMjIyLCAyMzAsIDY3LCAyNTQsIDE0NSwgMTAyLCAxLCAyNDgsIDIyMiwgMjMwLCA2NywgCisgICAgMjMxLCAyMDcsIDEwMiwgMSwgMjI5LCAyMjksIDIyMywgMTUyLCAxMDIsIDEsIDIxNywgMTA1LCAxMDIsIDEsIDIxNywgMTA2LCAKKyAgICAyMTcsIDM1LCAxMDIsIDEsIDI0OCwgMjIxLCAxMDIsIDEsIDI0OCwgMjIyLCAyMzEsIDIyNSwgMTAyLCAxLCAxOTcsIDEwMiwgCisgICAgMSwgMTkwLCAxMDIsIDEsIDIyNiwgOTAsIDIzNCwgMjI2LCAxMDIsIDEsIDI1MiwgMTkxLCAxMDIsIDEsIDI1MiwgMTkyLCAKKyAgICAyMzQsIDE3MiwgMTAyLCAxLCAxODQsIDEwMiwgMSwgMTkxLCAxMDIsIDEsIDIwNSwgMTAyLCAxLCAyMzMsIDEzNSwgMTAyLCAKKyAgICAxLCAyMTIsIDY1LCAxMDIsIDEsIDIyMiwgMzQsIDIyMiwgMjAsIDEwMiwgMSwgMjIyLCAzNCwgMjIxLCAyMzMsIDEwMiwgMSwgCisgICAgMjA2LCAxMDIsIDEsIDE2MiwgMTAyLCA1LCAyMjMsIDcwLCAxMDIsIDI1LCA1LCAyMTcsIDEzLCAxMDIsIDI1LCA1LCAyMTQsIAorICAgIDE5OSwgMTAyLCAyNSwgNSwgMjE0LCAyMDAsIDIyMSwgMjI5LCAxMDIsIDI1LCA1LCAyMTgsIDQ3LCAxMDIsIDI1LCA1LCAKKyAgICAyMTgsIDQ4LCAyMzYsIDIxLCAxMDIsIDI1LCA1LCAyMjMsIDE4OCwgMjIzLCA3OSwgMTAyLCAyNSwgNSwgMjIzLCAxODgsIAorICAgIDIyMywgODAsIDIxNywgMTMsIDEwMiwgMjUsIDUsIDIzMywgMTM2LCAyMzMsIDI0LCAxMDIsIDI1LCA1LCAyMzMsIDEzNiwgCisgICAgMjMzLCAyNSwgMjE3LCAxMywgMTAyLCAyNSwgNSwgMjE3LCA2NSwgMTAyLCAyNSwgNSwgMjE3LCA2NiwgMjIzLCA3OSwgMTAyLCAKKyAgICAyNSwgNSwgMjE3LCA2NiwgMjE3LCAxMywgMTAyLCAyNSwgNSwgMjE3LCA2NiwgMjIzLCA4MCwgMjE3LCAxMywgMTAyLCAyNSwgCisgICAgNSwgMjI1LCAxODQsIDEwMiwgMjUsIDUsIDIyNSwgMTg1LCAyMTcsIDEzLCAxMDIsIDI1NCwgMjUwLCAyNTQsIDI0OSwgMTAyLCAKKyAgICAxLCAyMzQsIDI1MSwgMjIxLCAyMjgsIDEwMiwgMSwgMjM0LCAxMDIsIDIyMSwgMjI4LCAxMDIsIDEsIDIxNSwgMzQsIDIyMSwgCisgICAgMjI4LCAxMDIsIDEsIDI0NSwgMjAzLCAyMjEsIDIyOCwgMTAyLCAxLCAyMTQsIDAsIDIyMSwgMjI4LCAxMDIsIDEsIDIxMCwgCisgICAgMTA3LCAyMjEsIDIyOCwgMTAyLCAxLCAyNTMsIDIwOSwgMjIxLCAyMjgsIDEwMiwgMjEsIDIxMCwgODYsIDEwMiwgMjEsIAorICAgIDExMCwgMTAyLCAyMSwgMTA1LCAxMDIsIDIxLCAxNTgsIDEwMiwgMjEsIDE2MSwgMTAyLCAyMSwgMTg5LCAxMDIsIDIxLCAKKyAgICAxOTQsIDEwMiwgMjEsIDE5OCwgMTAyLCAyMSwgMTk1LCAxMDIsIDIxLCAyMDAsIDEwMiwgMjI2LCAyOSwgMTAyLCAyMjYsIAorICAgIDU1LCAxMDIsIDIxMSwgMjM4LCAxMDIsIDI1MCwgMjM2LCAyMjYsIDQ4LCAxMDIsIDI1MCwgMjM2LCAyMTksIDE3MiwgMTAyLCAKKyAgICAyNTAsIDIzNiwgMjI2LCAyLCAxMDIsIDIyNiwgNTQsIDEwMiwgMjgsIDE2LCAyNDcsIDEyNiwgMTAyLCAyOCwgMTYsIDI0OCwgCisgICAgNTEsIDEwMiwgMjgsIDE2LCAyNDYsIDY0LCAxMDIsIDI4LCAxNiwgMjQ4LCAxNzYsIDEwMiwgMjgsIDE2LCAyNDgsIDE3NywgCisgICAgMjE4LCAxNSwgMTAyLCAyOCwgMTYsIDI0NywgMjA1LCAxMDIsIDI4LCAxNiwgMjQ4LCAyMTQsIDEwMiwgMjgsIDE2LCAyNDgsIAorICAgIDMzLCAxMDIsIDI4LCAxNiwgMjQ4LCAxOTgsIDEwMiwgMjgsIDE2LCAyNDgsIDE3NywgMjQzLCA1NywgMTAyLCAyOCwgMTYsIAorICAgIDM4LCAyMTcsIDksIDEwMiwgMjgsIDE2LCAzOCwgMjQ1LCAxNDEsIDEwMiwgMjgsIDE2LCAzOCwgMjM0LCAxNjcsIDEwMiwgCisgICAgMjgsIDE2LCAzOCwgMjM0LCAxNjksIDEwMiwgMjgsIDE2LCAzOCwgMjM1LCAxMjIsIDEwMiwgMjgsIDE2LCAzOCwgMjM0LCAKKyAgICAxNjgsIDIsIDIzNSwgMTIyLCAxMDIsIDI4LCAxNiwgMzgsIDIzNCwgMTcwLCAyLCAyMzUsIDEyMiwgMTAyLCAyOCwgMTYsIAorICAgIDM4LCAyNTIsIDM3LCAxMDIsIDI4LCAxNiwgMzgsIDI0MiwgMTY1LCAxMDIsIDI4LCAxNiwgMjIyLCAyNDksIDIwNCwgMjQ2LCAKKyAgICA3NCwgMTAyLCAyOCwgMTYsIDIyMiwgMjQ5LCAyMDQsIDI0OCwgMjEyLCAxMDIsIDI4LCAxNiwgMjIyLCAyNDksIDI1MCwgMCwgCisgICAgMjE1LCAxMTEsIDEwMiwgMjgsIDE2LCAyMjIsIDI0OSwgMjUwLCAwLCAyMTcsIDczLCAxMDIsIDI4LCAxNiwgMjMzLCA0NCwgCisgICAgMjA0LCAyMjYsIDQzLCAxMDIsIDI4LCAxNiwgMjMzLCA0NCwgMjA0LCAyMjQsIDEzOSwgMTAyLCAyOCwgMTYsIDIzMywgNDQsIAorICAgIDI1MCwgMCwgMjI1LCAzOCwgMTAyLCAyOCwgMTYsIDIzMywgNDQsIDI1MCwgMCwgMjI1LCAyNiwgMTAyLCAyOCwgMTYsIDIzMywgCisgICAgNDQsIDIwNCwgMjI1LCA2MSwgMjA3LCA1LCAyMjYsIDI2LCAyMDcsIDUsIDIyNiwgMzksIDIwNywgNSwgMjI2LCAzNSwgMjA3LCAKKyAgICAxLCA2MSwgMjA3LCAxLCA3MywgMjA3LCAxLCA3MCwgMjA3LCAxLCAyNTQsIDI0MywgMjA3LCAxLCA3NiwgMjA3LCAxLCA3NSwgCisgICAgMjA3LCAxLCAyNDUsIDU1LCAyMDcsIDEsIDE3NiwgMjA3LCAxLCAyMjQsIDg4LCAyMDcsIDEsIDI0MywgMTM1LCAyMDcsIDEsIAorICAgIDIyOSwgNzcsIDIwNywgMSwgMjUxLCAzMywgMjA3LCAxLCAyMzUsIDE0MSwgMjA3LCAxLCAyMTAsIDExNiwgMjA3LCAxLCAKKyAgICAyMjcsIDE2NSwgMjA3LCAxLCAyMTcsIDEwNSwgMjA3LCAxLCAyNDgsIDIyMSwgMjA3LCAxLCAxOTcsIDIwNywgMSwgMTkwLCAKKyAgICAyMDcsIDEsIDI0NCwgMTk2LCAyMDcsIDEsIDIxNCwgMjcsIDIwNywgMSwgMjUyLCAxOTEsIDIwNywgMSwgMTg0LCAyMDcsIDEsIAorICAgIDE5MSwgMjA3LCAxLCAyMDUsIDIwNywgMSwgMjMzLCAxMzUsIDIwNywgMSwgMjEyLCA2NSwgMjA3LCAxLCAyMDYsIDIwNywgMSwgCisgICAgMjExLCAxNjUsIDIwNywgMSwgMTYyLCAyMDcsIDExNiwgNSwgMjI2LCA1MiwgMjA3LCAxMTYsIDUsIDIyNiwgMjgsIDIwNywgCisgICAgMTE2LCA1LCAyMjYsIDI1LCAyMDcsIDI1LCA1LCAyMjYsIDQyLCAyMDcsIDI1LCA1LCAyMjYsIDI0LCAyMDcsIDI1LCA1LCAKKyAgICAyMjYsIDQ2LCAyMDcsIDI1LCA1LCAyMjYsIDM0LCAyMDcsIDI1LCA1LCAyMjYsIDUzLCAyMDcsIDI1LCA1LCAyMjYsIDQ0LCAKKyAgICAyMDcsIDUsIDIyNiwgNTYsIDIwNywgNSwgMjEzLCAxNTIsIDIwNywgMTE2LCA1LCAyMjUsIDI0OCwgMTg0LCAyMDcsIDExNiwgCisgICAgNSwgMjI1LCAyNDgsIDIxMiwgNjUsIDIwNywgMSwgMjM0LCAxMzIsIDIwNywgMSwgMjE3LCAyMzEsIDIwNywgMjEsIDIxMCwgCisgICAgODYsIDIwNywgMjEsIDExMCwgMjA3LCAyMSwgMTA1LCAyMDcsIDIxLCAxNTgsIDIwNywgMjEsIDE2MSwgMjA3LCAyMSwgMTg5LCAKKyAgICAyMDcsIDIxLCAxOTQsIDIwNywgMjEsIDE5OCwgMjA3LCAyMSwgMTk1LCAyMDcsIDIxLCAyMDAsIDIwNywgMjUzLCAxNzUsIAorICAgIDIwNywgMSwgMjIzLCA1MiwgMjA3LCAxLCAyMzMsIDcsIDIwNywgMSwgMjUyLCAxOCwgMjA3LCAxLCA0MCwgMjM1LCAyMywgCisgICAgMjA3LCAxLCA0MCwgMTkzLCAyNTIsIDEyMCwgMSwgNjEsIDI1MiwgMTIwLCAxLCAyMTksIDE2NCwgNjEsIDI1MiwgMTIwLCAxLCAKKyAgICAxNjIsIDI1MiwgMTIwLCAxLCAyMTksIDE2NCwgMTYyLCAyNTIsIDEyMCwgMSwgMjMxLCAxODEsIDE2MiwgMjUyLCAxMjAsIDEsIAorICAgIDI1MiwgMTkxLCAyNTIsIDEyMCwgMSwgMjM0LCAyMTIsIDI1MiwgMTkxLCAyNTIsIDEyMCwgMSwgMTkwLCAyNTIsIDEyMCwgMSwgCisgICAgMjE5LCAxNjQsIDE5MCwgMjUyLCAxMjAsIDEsIDE5NywgMjUyLCAxMjAsIDEsIDIzMSwgMTgxLCAxOTcsIDI1MiwgMTIwLCAxLCAKKyAgICAyMTIsIDY1LCAyNTIsIDEyMCwgMSwgMjE5LCAxNjQsIDIxMiwgNjUsIDI1MiwgMTIwLCAxLCAyMjYsIDY3LCAyMTIsIDY1LCAKKyAgICAyNTIsIDEyMCwgMSwgMjQzLCAxMzUsIDI1MiwgMTIwLCAxLCAyMTksIDE2NCwgMjQzLCAxMzUsIDI1MiwgMTIwLCAxLCAyMzUsIAorICAgIDE0MSwgMjUyLCAxMjAsIDEsIDI0OCwgMjIxLCAyNTIsIDEyMCwgMSwgMjA1LCAyNTIsIDEyMCwgMSwgMjE5LCAxNjQsIDIwNSwgCisgICAgMjUyLCAxMjAsIDEsIDE4NCwgMjUyLCAxMjAsIDEsIDIxOSwgMTY0LCAxODQsIDI1MiwgMTIwLCAxLCAyMTksIDI2LCAyMTcsIAorICAgIDEwNSwgMjUyLCAxMjAsIDEsIDIyOCwgNTUsIDIxNywgMTA1LCAyNTIsIDEyMCwgMSwgMjA2LCAyNTIsIDEyMCwgMSwgMjE5LCAKKyAgICAxNjQsIDIwNiwgMjUyLCAxMjAsIDEsIDIzMSwgMTgxLCAyMDYsIDI1MiwgMTIwLCAxLCAxOTEsIDI1MiwgMTIwLCAxLCAyMTksIAorICAgIDE2NCwgMTkxLCAyNTIsIDEyMCwgMSwgMjI5LCA3NywgMjUyLCAxMjAsIDEsIDIzMywgMTM1LCAyNTIsIDEyMCwgMSwgMjE5LCAKKyAgICAxNjQsIDIzMywgMTM1LCAyNTIsIDEyMCwgMSwgMjI3LCAxNjUsIDI1MiwgMTIwLCAxLCAyNTEsIDMzLCAyNTIsIDEyMCwgMSwgCisgICAgMjI5LCAxNDgsIDI1MiwgMTIwLCAxLCAyMzEsIDEyNCwgMjUyLCAxMjAsIDEsIDczLCAyNTIsIDEyMCwgMSwgNzAsIDI1MiwgCisgICAgMTIwLCA1LCAyMTYsIDMzLCAyNTIsIDEyMCwgMjUsIDUsIDc1LCAyNTIsIDEyMCwgMjUsIDUsIDIyNiwgNjcsIDc1LCAyNTIsIAorICAgIDEyMCwgMjUsIDUsIDI0NSwgMjA5LCAyNTIsIDEyMCwgMjUsIDUsIDczLCAyNTIsIDEyMCwgMjUsIDUsIDIzNCwgMjEyLCA3MywgCisgICAgMjUyLCAxMjAsIDI1LCA1LCA3NiwgMjUyLCAxMjAsIDI1LCA1LCAyMzQsIDIxMiwgNzYsIDI1MiwgMTIwLCAyNSwgNSwgNzAsIAorICAgIDI1MiwgMTIwLCAyNSwgNSwgMTA0LCAzMSwgMjE5LCAxNjQsIDIwNiwgMjUyLCAxMjAsIDExNiwgNSwgMjI5LCA3OSwgMjUyLCAKKyAgICAxMjAsIDExNiwgNSwgMjQyLCA2MCwgMjUyLCAxMjAsIDIyNiwgMzcsIDI1MiwgMTIwLCAyMjYsIDMzLCAyNTIsIDEyMCwgMTYsIAorICAgIDI1MSwgMjQxLCAyMjksIDIyOSwgMjMxLCAzNywgMjUyLCAxMjAsIDE2LCAyNTEsIDI0MSwgMjI1LCA2NCwgMjUyLCAxMjAsIAorICAgIDE2LCAyNTEsIDI0MSwgMjM1LCA0OCwgMjUyLCAxMjAsIDE2LCAyNTEsIDI0MSwgMjI2LCAzNywgMTk2LCAxLCAxNzYsIDE5NiwgCisgICAgMSwgMjM0LCAzOSwgMTk2LCAxLCAyMzQsIDEzMiwgMTk2LCAxLCAyNDMsIDEzNSwgMTk2LCAxLCAyNDIsIDE4NiwgMTk2LCAxLCAKKyAgICAyMjksIDc3LCAxOTYsIDEsIDI1MSwgMzMsIDE5NiwgMSwgMjUwLCAxNTcsIDE5NiwgMSwgMjM1LCAxNDEsIDE5NiwgMSwgCisgICAgMjI3LCAxNjUsIDE5NiwgMSwgMjE3LCAxMDUsIDE5NiwgMSwgMjE2LCAyMDgsIDE5NiwgMSwgMjQ4LCAyMjEsIDE5NiwgMSwgCisgICAgMTk3LCAxOTYsIDEsIDE5MCwgMTk2LCAxLCAyMjUsIDQyLCAxOTYsIDEsIDIyNSwgMTQ3LCAxOTYsIDEsIDI0NCwgMTk2LCAKKyAgICAxOTYsIDEsIDI0NCwgNzUsIDE5NiwgMSwgMjUyLCAxOTEsIDE5NiwgMSwgMjUxLCAyMjIsIDE5NiwgMSwgMTg0LCAxOTYsIDEsIAorICAgIDIzMCwgMTY4LCAxOTYsIDEsIDIxNSwgMTgzLCAxOTYsIDEsIDIxNSwgMTc1LCAxOTYsIDEsIDI0NiwgMzgsIDE5NiwgMSwgCisgICAgMTkxLCAxOTYsIDEsIDIwNSwgMTk2LCAxLCAyMzMsIDEzNSwgMTk2LCAxLCAxNjIsIDE5NiwgMSwgMjQxLCAxNTMsIDE5NiwgCisgICAgMSwgMjE0LCAyNywgMTk2LCAxLCAyMDYsIDE5NiwgMSwgMjIwLCAxMDIsIDE5NiwgMSwgMjEyLCA2NSwgMTk2LCAxLCA2MSwgCisgICAgMTk2LCAyMTgsIDczLCAxLCAxOTEsIDE5NiwgMjE4LCA3MywgMSwgMjA1LCAxOTYsIDI1LCA1LCAyNTUsIDczLCAxOTYsIDI1LCAKKyAgICA1LCA3MywgMTk2LCAyNSwgNSwgNzYsIDE5NiwgMjUsIDUsIDIyNiwgMTgzLCAxOTYsIDI1LCA1LCA3MCwgMTk2LCAyNSwgNSwgCisgICAgMjE0LCAxMTgsIDE5NiwgMjUsIDUsIDc1LCAxOTYsIDExNiwgNSwgMjM1LCAyMywgMTk2LCAxMTYsIDUsIDE5MywgMTk2LCAKKyAgICAxMTYsIDUsIDE1NiwgMTk2LCAxMTYsIDUsIDIzMCwgMjUsIDE5NiwgMTE2LCA1LCAyMjYsIDEwNSwgMTk2LCAxMTYsIDUsIAorICAgIDE1MywgMTk2LCAxMTYsIDUsIDIxNywgMTUyLCAxOTYsIDExNiwgNSwgMjI3LCAxNDIsIDE5NiwgMTE2LCA1LCAyMzQsIDIzMCwgCisgICAgMTk2LCA1LCAyMjMsIDE1MCwgMTk2LCA1LCAyMjcsIDIwNSwgMTk2LCAyMjQsIDE0MSwgMjE3LCAxMDMsIDE5NiwgMjI0LCAKKyAgICAxNDEsIDIyNywgMTUyLCAyMTYsIDEyMCwgMjE3LCAxMDMsIDE5NiwgMjI0LCAxNDEsIDI1MCwgMTY0LCAxOTYsIDIyNCwgCisgICAgMTQxLCAyMTUsIDE3MCwgMjUwLCAxNjQsIDE5NiwgMjI0LCAxNDEsIDIxNSwgMTY5LCAxOTYsIDIxLCAyMTAsIDg2LCAxOTYsIAorICAgIDIxLCAxMTAsIDE5NiwgMjEsIDEwNSwgMTk2LCAyMSwgMTU4LCAxOTYsIDIxLCAxNjEsIDE5NiwgMjEsIDE4OSwgMTk2LCAyMSwgCisgICAgMTk0LCAxOTYsIDIxLCAxOTgsIDE5NiwgMjEsIDE5NSwgMTk2LCAyMSwgMjAwLCAxOTYsIDEsIDIxNSwgMTU2LCAxOTYsIDEsIAorICAgIDIxNSwgMTQ0LCAxOTYsIDEsIDI0OCwgMTM1LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDIxLCAyMTAsIDg2LCAyMjYsIDIxMCwgCisgICAgMjUwLCAxMDMsIDIxLCAxMTAsIDIyNiwgMjEwLCAyNTAsIDEwMywgMjEsIDEwNSwgMjI2LCAyMTAsIDI1MCwgMTAzLCAyMSwgCisgICAgMTU4LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDIxLCAxNjEsIDIyNiwgMjEwLCAyNTAsIDEwMywgMjEsIDE4OSwgMjI2LCAyMTAsIAorICAgIDI1MCwgMTAzLCAyMSwgMTk0LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDIxLCAxOTgsIDIyNiwgMjEwLCAyNTAsIDEwMywgMjEsIAorICAgIDE5NSwgMjI2LCAyMTAsIDI1MCwgMTAzLCAyMSwgMjAwLCAyMjYsIDIxMCwgMjUwLCAxMDMsIDEsIDIzMywgMTM1LCAyMjYsIAorICAgIDIxMCwgMjUwLCAxMDMsIDEsIDI1MywgMjA2LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDEsIDI1NCwgMjE2LCAyMjYsIDIxMCwgCisgICAgMjUwLCAxMDMsIDEsIDI1NCwgMTE1LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDEsIDI1NCwgMTc4LCAyMjYsIDIxMCwgMjUwLCAKKyAgICAxMDMsIDEsIDIzMywgMTM0LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDEsIDI1NSwgMzUsIDIyNiwgMjEwLCAyNTAsIDEwMywgMSwgCisgICAgMjU1LCAzNiwgMjI2LCAyMTAsIDI1MCwgMTAzLCAxLCAyNTUsIDM0LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDEsIDI1NSwgMjksIAorICAgIDIyNiwgMjEwLCAyNTAsIDEwMywgMSwgMjMyLCAyNDEsIDIyNiwgMjEwLCAyNTAsIDEwMywgMSwgMjM1LCAxNzEsIDIyNiwgCisgICAgMjEwLCAyNTAsIDEwMywgMSwgMjM2LCAzNCwgMjI2LCAyMTAsIDI1MCwgMTAzLCAxLCAyMzUsIDE5MCwgMjI2LCAyMTAsIAorICAgIDI1MCwgMTAzLCAxLCAyMzUsIDE3OSwgMjI2LCAyMTAsIDI1MCwgMTAzLCAxLCAyMzIsIDk4LCAyMjYsIDIxMCwgMjUwLCAKKyAgICAxMDMsIDEsIDIxNCwgMjIxLCAyMjYsIDIxMCwgMjUwLCAxMDMsIDEsIDIxNCwgMjE5LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDEsIAorICAgIDIxNCwgMTY4LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDEsIDIxNCwgMTExLCAyMjYsIDIxMCwgMjUwLCAxMDMsIDEsIDIzMywgCisgICAgNTgsIDIyNiwgMjEwLCAyNTAsIDEwMywgMSwgMjQ1LCAxMDgsIDIyNiwgMjEwLCAyNTAsIDEwMywgMSwgMjQ1LCAyMTIsIAorICAgIDIyNiwgMjEwLCAyNTAsIDEwMywgMSwgMjQ1LCAxNTAsIDIyNiwgMjEwLCAyNTAsIDEwMywgMSwgMjQ1LCA4NiwgMjI2LCAKKyAgICAyMTAsIDI1MCwgMTAzLCAxLCAyMzIsIDE1NiwgMjI2LCAyMTAsIDI1MCwgMTAzLCAxLCAyMjYsIDEzNywgMjI2LCAyMTAsIAorICAgIDI1MCwgMTAzLCAxLCAyMjYsIDI1MiwgMjI2LCAyMTAsIDI1MCwgMTAzLCAxLCAyMjYsIDEyNSwgMjI2LCAyMTAsIDI1MCwgCisgICAgMTAzLCAxLCAyMjYsIDIyMiwgMjI2LCAyMTAsIDI1MCwgMTAzLCAyMzAsIDEwMywgMjE1LCAxMjEsIDIyNiwgMjEwLCAyNTAsIAorICAgIDEwMywgMjQzLCAxMzAsIDIxNSwgMTIyLCAyMjYsIDIxMCwgMjUwLCAxMDMsIDIzMCwgMTAxLCAyMTUsIDEyMiwgMjI2LCAKKyAgICAyMTAsIDI1MCwgMTAzLCAyMjMsIDkyLCAyMjYsIDIxMCwgMjUwLCAxMDMsIDIyNSwgMTQ1LCAyMjYsIDIxMCwgMjUwLCAxMDMsIAorICAgIDI1NCwgMjA4LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDIyNCwgMTQxLCAyMzAsIDk4LCAyMjYsIDIxMCwgMjUwLCAxMDMsIDIyNCwgCisgICAgMTQxLCA1MiwgMjMwLCA5OCwgMjA3LCAyMjQsIDE0MSwgMjUxLCAyNDEsIDIxOCwgOCwgMjA3LCAyMjQsIDE0MSwgMjUxLCAKKyAgICAyNDEsIDIyNiwgMzgsIDIwNywgMjI0LCAxNDEsIDI1MSwgMjQxLCAyMjQsIDEyOSwgMjA3LCAyMjQsIDE0MSwgMjUxLCAyNDEsIAorICAgIDI1MSwgMTksIDIwNywgMjI0LCAxNDEsIDI1MSwgMjQxLCAyMzMsIDgsIDIyMSwgMjI1LCAyMDcsIDIyNCwgMTQxLCAyNTEsIAorICAgIDI0MSwgMjM1LCAxMywgMjIxLCAyMjUsIDIwNywgMjI0LCAxNDEsIDI1MSwgMjQxLCAyNDgsIDIyMiwgMjIxLCAyMjUsIDIwNywgCisgICAgMjI0LCAxNDEsIDI1MSwgMjQxLCAyNTIsIDE5MiwgMjIxLCAyMjUsIDIxMywgMjUyLCAxMzgsIDIzNCwgMjEwLCAyMTMsIAorICAgIDI1MiwgMTM4LCAyMjAsIDc3LCAyMTMsIDI1MiwgMTM4LCAyMjQsIDE5OCwgMjEzLCAyNTIsIDUsIDIyOCwgMjA5LCAyMTMsIAorICAgIDI1MiwgNSwgMjExLCA4MCwgMjMwLCAyMjIsIDIxOCwgMCwgMjEzLCAyNTIsIDEzOCwgMjExLCA4MCwgMjU0LCAyMTMsIDIzNSwgCisgICAgMjQzLCAyMTgsIDAsIDIxMywgMjUyLCAxMzgsIDIxMSwgODAsIDIzNSwgMjQzLCAyMTgsIDAsIDIxMywgMjUyLCAxMzgsIAorICAgIDIxMSwgODAsIDIzNCwgMTk4LCAyMzUsIDI0MywgMjE4LCAwLCAyMTMsIDI1MiwgMTM4LCAyNTEsIDIsIDUxLCAyMTMsIDI1MiwgCisgICAgMTM4LCAyMTEsIDgwLCAyMzQsIDE5OCwgMjM1LCAyNDMsIDIxOCwgMSwgMjIxLCAxOTcsIDIxMywgMjUyLCAxMzgsIDUyLCAKKyAgICAyMTgsIDAsIDIxMywgMjUyLCAxMzgsIDIxNSwgMjExLCAyMTgsIDAsIDIxMywgMjUyLCAxMzgsIDIzNCwgMTk4LCAyNTQsIAorICAgIDc3LCAyMTMsIDI1MiwgMTM4LCA1OSwgNTEsIDIxMywgMjUyLCAxMzgsIDExMywgMTcwLCA1MSwgMjEzLCAyNTIsIDEzOCwgCisgICAgMTM0LCAxNzAsIDUxLCAyMTMsIDI1MiwgMTM4LCAyMjIsIDI0MCwgMjM0LCAyMDksIDIzNSwgMjQzLCAyMTgsIDAsIDIxMywgCisgICAgMjUyLCAxMzgsIDI1MywgMjA0LCAyMzUsIDI0MywgMjE4LCAwLCAyMTMsIDI1MiwgNSwgMjEzLCAxNDgsIDIxOCwgMCwgMjEzLCAKKyAgICAyNTIsIDUsIDIxMywgMTQ4LCAyMTQsIDIxNiwgMjEzLCAyNTIsIDUsIDIyMywgNDksIDIxMywgMTQ4LCAyMTQsIDIxNiwgCisgICAgMjEzLCAyNTIsIDUsIDIxMywgMTQ4LCAyNTQsIDc3LCAyMTMsIDI1MiwgNSwgMjIzLCA0OSwgMjEzLCAxNDgsIDI1NCwgNzcsIAorICAgIDIxMywgMjUyLCA1LCAyMTMsIDE0OCwgMjE0LCAyMTcsIDIsIDIxNywgNzcsIDIxMywgMjUyLCA1LCAyMTMsIDE0OCwgMjU0LCAKKyAgICA3OCwgMiwgMjE3LCA3NywgMjEzLCAyNTIsIDUsIDI1NCwgNzYsIDI1NCwgOTEsIDIxMywgMjUyLCA1LCAyNTQsIDc2LCAyNTIsIAorICAgIDE2NiwgMjEzLCAyNTIsIDUsIDI1NCwgNzYsIDIxNCwgMjAsIDIxMywgMjUyLCA1LCAyNTQsIDc2LCAyMTQsIDIxLCAyLCAKKyAgICAyMTcsIDc3LCAyMTMsIDI1MiwgNSwgMjE2LCA2OCwgMjEzLCAyNTIsIDUsIDI0MSwgMTkxLCAxOTksIDI1NCwgNzUsIDIxMywgCisgICAgMjUyLCA1LCAxOTksIDI1NCwgNzUsIDIxMywgMjUyLCA1LCAyMjIsIDE0MiwgMTk5LCAyNTQsIDc1LCAyMTMsIDI1MiwgNSwgCisgICAgMjU0LCA3NiwgMjE0LCAyMjMsIDIzMCwgOTAsIDIxMywgMjUyLCA1LCAyNTQsIDIwLCAyMTMsIDI1MiwgNSwgMjIyLCAxODcsIAorICAgIDI1NCwgMjAsIDIxMywgMjUyLCAxMzgsIDI1MSwgMiwgNDgsIDIxMywgMjUyLCA1LCAyMzUsIDEwMiwgMjEzLCAyNTIsIDUsIAorICAgIDIxNCwgMTYxLCA3LCAxLCA0LCA2LCA2MSwgNywgMSwgNCwgNiwgMjU0LCAyNDMsIDcsIDQsIDEsIDIxNSwgOTQsIDI1NCwgCisgICAgMjQzLCA3LCAxLCA0LCA2LCAyNTIsIDEzNCwgMjUzLCAxNTgsIDcsIDEsIDQsIDYsIDI1MSwgNjYsIDcsIDEsIDQsIDYsIAorICAgIDI0OSwgNjAsIDcsIDEsIDQsIDYsIDI0NSwgNTksIDcsIDEsIDQsIDYsIDc1LCA3LCA0LCAxLCAyMTUsIDk0LCAyMDQsIDc1LCAKKyAgICA3LCA0LCAxLCAyMTUsIDk0LCA3MywgNywgMSwgNCwgNiwgMjM1LCAxNDQsIDcsIDEsIDQsIDYsIDIzNSwgMjMsIDcsIDEsIDQsIAorICAgIDYsIDIzMywgMTQ5LCAyLCA5MSwgNywgMSwgNCwgNiwgMTkzLCA3LCAxLCA0LCA2LCAyMjMsIDQ5LCAyMzAsIDI1LCA3LCAxLCAKKyAgICA0LCA2LCA3NiwgNywgMSwgNCwgNiwgMjA0LCA3NiwgNywgNCwgMSwgMjE5LCAxODcsIDc2LCA3LCA0LCAxLCAyMTksIDE4NywgCisgICAgMjA0LCA3NiwgNywgNCwgMSwgMjE5LCAxODcsIDE0NCwgMiwgOTEsIDcsIDQsIDEsIDIxNSwgOTQsIDIyNiwgMjM0LCA3LCAxLCAKKyAgICA0LCA2LCAyMjYsIDEzNCwgNywgNCwgMSwgMjE2LCAxNCwgMTYzLCA3NiwgNywgNCwgMSwgMjUxLCAxNzUsIDE2MywgNzYsIDcsIAorICAgIDEsIDQsIDYsIDIyNiwgMTA1LCA3LCAxLCA0LCA2LCAyMjMsIDQ5LCAxNTMsIDcsIDEsIDQsIDYsIDIxNSwgOTQsIDE1MywgNywgCisgICAgMSwgNCwgNiwgMjE3LCAxNTIsIDcsIDEsIDQsIDYsIDcwLCA3LCA0LCAxLCAyMTksIDE4NywgNzAsIDcsIDQsIDEsIDIxOSwgCisgICAgMTg3LCAyNDgsIDAsIDcwLCA3LCA0LCAxLCAyMTksIDE4NywgMjE1LCA5NCwgMTkzLCA3LCAxLCA0LCA2LCAyMTQsIDEwNSwgCisgICAgNywgMSwgNCwgNiwgMjEyLCA5OCwgNywgMSwgNCwgNiwgMjEwLCAxNTksIDcsIDEsIDQsIDYsIDI0NSwgOCwgNywgMSwgMjEzLCAKKyAgICAxMzUsIDIzMywgODIsIDIxOCwgMjUwLCA3LCAxLCAyNTQsIDE5NiwgMjYsIDEsIDQsIDYsIDI0MywgMTA3LCAyNiwgMSwgNCwgCisgICAgNiwgMjMzLCA5OCwgMjYsIDEsIDQsIDYsIDIyNSwgMTA4LCAyNiwgMSwgNCwgNiwgMjIzLCAzNywgMjYsIDEsIDQsIDYsIAorICAgIDIyNCwgMTYxLCAzMywgMSwgNCwgNiwgMjQ1LCAxNzQsIDU4LCAxLCA2LCA2MSwgNTgsIDEsIDYsIDI1NCwgMjQzLCA1OCwgMSwgCisgICAgNiwgMjUzLCAxNTgsIDU4LCAxLCA2LCAyNTIsIDEzNCwgMjUzLCAxNTgsIDU4LCAxLCA2LCAyNDksIDYwLCA1OCwgMSwgNiwgCisgICAgNzUsIDU4LCAxLCA2LCAyMjMsIDQ5LCA3NSwgNTgsIDEsIDYsIDI0MywgMjAyLCA1OCwgMSwgNiwgMjQyLCA2MCwgNTgsIDEsIAorICAgIDYsIDczLCA1OCwgMSwgNiwgMjM1LCAxNDQsIDU4LCAxLCA2LCAyMzUsIDIzLCA1OCwgMSwgNiwgMTU2LCA1OCwgMSwgNiwgCisgICAgMTkzLCA1OCwgMSwgNiwgMjMwLCAyNSwgNTgsIDEsIDYsIDIyMywgNDksIDIzMCwgMjUsIDU4LCAxLCA2LCA3NiwgNTgsIDEsIAorICAgIDYsIDIyNiwgMTM0LCA1OCwgMSwgNiwgMjI2LCAxMDUsIDU4LCAxLCA2LCAxNTMsIDU4LCAxLCA2LCAyMTcsIDE1MiwgNTgsIAorICAgIDEsIDYsIDcwLCA1OCwgMSwgNiwgMjEyLCA5OCwgNTgsIDEsIDQsIDYxLCA1OCwgMSwgNCwgMjE1LCA5NCwgNjEsIDU4LCAxLCAKKyAgICA0LCAyNTQsIDE0MywgNTgsIDEsIDQsIDIxNSwgOTQsIDI1NCwgMjQzLCA1OCwgMSwgNCwgMjUzLCAxNTgsIDU4LCAxLCA0LCAKKyAgICAyNDksIDYwLCA1OCwgMSwgNCwgNzUsIDU4LCAxLCA0LCAyMjEsIDE5NSwgNTgsIDEsIDQsIDIwNCwgNzUsIDU4LCAxLCA0LCAKKyAgICAyMTUsIDk0LCAyMDQsIDc1LCA1OCwgMSwgNCwgMjQzLCAyMDIsIDU4LCAxLCA0LCAyMTUsIDk0LCA3MywgNTgsIDEsIDQsIAorICAgIDIzNSwgMjMsIDU4LCAxLCA0LCAxOTMsIDU4LCAxLCA0LCAyNDUsIDEzOCwgNTgsIDEsIDQsIDc2LCA1OCwgMSwgNCwgMjA0LCAKKyAgICA3NiwgNTgsIDEsIDQsIDIxNiwgMTQsIDE2MywgNzYsIDU4LCAxLCA0LCAyNTEsIDE3NSwgMTYzLCA3NiwgNTgsIDEsIDQsIAorICAgIDIyNiwgMTA1LCA1OCwgMSwgNCwgMjE3LCAxNTIsIDU4LCAxLCA0LCA3MCwgNTgsIDEsIDQsIDIxOSwgMTg3LCA3MCwgNTgsIAorICAgIDEsIDQsIDIxNSwgOTQsIDE5MywgNTgsIDEsIDQsIDIxNCwgMTA1LCA1OCwgMSwgNCwgMjU0LCAxOTYsIDU4LCAxLCA0LCAKKyAgICAyNTIsIDI2LCA1OCwgMSwgNCwgMjYsIDI0MywgMTA3LCA1OCwgMSwgNCwgMjQ4LCA1NCwgNTgsIDEsIDQsIDI2LCAyMjUsIAorICAgIDEzMywgNTgsIDEsIDQsIDI1MCwgMTEwLCA3LCAyMTgsIDY1LCA0LCAxLCA3MywgNywgMjE4LCA2NSwgNCwgMSwgMTUzLCA3LCAKKyAgICAyMTgsIDY1LCA0LCAxLCA3MCwgNywgMjE4LCA2NSwgNCwgMSwgMjE0LCAxMDUsIDI2LCAyMTgsIDY1LCA0LCAxLCAyNTIsIAorICAgIDI2LCAyNiwgMjE4LCA2NSwgNCwgMSwgMjQzLCAxMDcsIDI2LCAyMTgsIDY1LCA0LCAxLCAyMjMsIDM3LCAyNiwgMjE4LCA2NSwgCisgICAgNCwgMSwgMjI1LCAxMzMsIDI2LCAyMTgsIDY1LCA0LCAxLCAyNTAsIDExMCwgNywgNCwgMSwgMjE0LCAyMTQsIDcsIDQsIDEsIAorICAgIDU3LCAyLCAyMzAsIDIyNCwgMTgyLCA3LCA0LCAxLCAyNDksIDYxLCAyLCAyMzAsIDIyNCwgMTgyLCA3LCA0LCAxLCAyNDUsIAorICAgIDcsIDIsIDIzMCwgMjI0LCAxODIsIDcsIDQsIDEsIDIzMiwgNTAsIDIsIDIzMCwgMjI0LCAxODIsIDcsIDQsIDEsIDIzMCwgCisgICAgMjYsIDIsIDIzMCwgMjI0LCAxODIsIDcsIDQsIDEsIDIyNiwgMTA2LCAyLCAyMzAsIDIyNCwgMTgyLCA3LCA0LCAxLCAyMjMsIAorICAgIDIyNCwgMiwgMjMwLCAyMjQsIDE4MiwgNywgNCwgMSwgMjIzLCAyMjQsIDIsIDI0NCwgODgsIDIyLCAyMzAsIDIyNCwgMTgyLCAKKyAgICA3LCA0LCAxLCAyMjIsIDkyLCAyLCAyMzAsIDIyNCwgMTgyLCA3LCA0LCAxLCAyMTcsIDE1MywgMiwgMjMwLCAyMjQsIDE4MiwgCisgICAgNywgNCwgMSwgMjEwLCAxNjAsIDIsIDIzMCwgMjI0LCAxODIsIDcsIDQsIDEsIDIxNSwgOTQsIDI0MywgMjAyLCA1OCwgMSwgCisgICAgMzMsIDI0NSwgMTUwLCA3LCA0LCAxLCAyMzUsIDIxMywgMjQzLCAyMDIsIDcsIDQsIDEsIDIxNiwgMjExLCAyLCAyMTgsIAorICAgIDEwNywgNywgNCwgNiwgMSwgMjQwLCAxNTQsIDIsIDkxLCA3LCA0LCAxLCAyMzUsIDE4NiwgMiwgOTEsIDcsIDQsIDEsIDIyNiwgCisgICAgMTA2LCAyLCA5MSwgNywgNCwgNiwgMSwgMTA0LCAyLCA5MSwgNywgNCwgMSwgMjE0LCAxNTgsIDIsIDkxLCA3LCA0LCAxLCAKKyAgICA1NywgMiwgMjI2LCA2NiwgMTAzLCA3LCA0LCAxLCAyNDksIDYxLCAyLCAyMjYsIDY2LCAxMDMsIDcsIDQsIDEsIDI0NSwgNywgCisgICAgMiwgMjI2LCA2NiwgMTAzLCA3LCA0LCAxLCAyNDMsIDIwMywgMiwgMjI2LCA2NiwgMTAzLCA3LCA0LCAxLCAyMzUsIDI0LCAyLCAKKyAgICAyMjYsIDY2LCAxMDMsIDcsIDQsIDEsIDIzMywgMTQ5LCAyLCAyMjYsIDY2LCAxMDMsIDcsIDQsIDEsIDIzMiwgNTAsIDIsIAorICAgIDIyNiwgNjYsIDEwMywgNywgNCwgMSwgMjMwLCAyNiwgMiwgMjI2LCA2NiwgMTAzLCA3LCA0LCAxLCAyMjYsIDEwNiwgMiwgCisgICAgMjI2LCA2NiwgMTAzLCA3LCA0LCAxLCAyMjMsIDIyNCwgMiwgMjI2LCA2NiwgMTAzLCA3LCA0LCAxLCAyMjIsIDkyLCAyLCAKKyAgICAyMjYsIDY2LCAxMDMsIDcsIDQsIDEsIDI0NSwgNzYsIDIsIDIyNiwgNjYsIDEwMywgNywgNCwgMSwgMjE0LCAxMDYsIDIsIAorICAgIDIyNiwgNjYsIDEwMywgNywgNCwgMSwgMjExLCAxNzksIDIsIDIyNiwgNjYsIDEwMywgNywgNCwgMSwgMjEwLCAxNjAsIDIsIAorICAgIDIyNiwgNjYsIDEwMywgNywgNCwgMSwgMTE1LCAyLCAyMjMsIDU1LCAxMDMsIDcsIDQsIDEsIDI1NCwgMTQ0LCAyLCAyMjMsIAorICAgIDU1LCAxMDMsIDcsIDQsIDEsIDI0OSwgNjEsIDIsIDI0MSwgNTIsIDIyLCAyMTcsIDc3LCA3LCA0LCAxLCAxNjAsIDIsIDIyMywgCisgICAgNTUsIDEwMywgNywgNCwgMSwgMjA0LCAxNjAsIDIsIDIyMywgNTUsIDEwMywgNywgNCwgMSwgMjIzLCA0OSwgMjA0LCAxNjAsIAorICAgIDIsIDIyMywgNTUsIDEwMywgNywgNCwgMSwgMjIxLCAxOTYsIDIsIDIyMywgNTUsIDEwMywgNywgNCwgMSwgMjQwLCAxNTQsIAorICAgIDIsIDIyMywgNTUsIDEwMywgNywgNCwgMSwgMjA0LCAxNDQsIDIsIDIyMywgNTUsIDEwMywgNywgNCwgMSwgMjQ1LCA3NiwgMiwgCisgICAgMjIzLCA1NSwgMTAzLCA3LCA0LCAxLCAxMDQsIDIsIDIyMywgNTUsIDEwMywgNywgNCwgMSwgMjQ1LCA5LCAyLCAyMjMsIDU1LCAKKyAgICAxMDMsIDU4LCAxLCA0LCAyMTUsIDk0LCAyNTQsIDE0MywgNTgsIDEsIDQsIDI1MSwgNjYsIDU4LCAxLCA0LCAyNTEsIDY3LCAKKyAgICAyLCAyNDksIDEwMCwgNTgsIDEsIDQsIDI0NSwgNTksIDU4LCAxLCA0LCAyMjMsIDQ5LCAyMDQsIDc1LCA1OCwgMSwgNCwgCisgICAgMjQ1LCA2LCA1OCwgMSwgNCwgMjQ3LCAxMTksIDIzNSwgMTQ1LCAyLCA5MSwgNTgsIDEsIDQsIDExOSwgMjQzLCAyMDIsIDU4LCAKKyAgICAxLCA0LCAyMTUsIDk0LCAyNDIsIDYwLCA1OCwgMSwgNCwgMjQwLCAxNTQsIDIsIDkxLCA1OCwgMSwgNCwgMjM1LCAxODUsIAorICAgIDU4LCAxLCA0LCA2LCA3MywgNTgsIDEsIDQsIDYsIDI0MCwgMTU0LCAyLCA5MSwgNTgsIDEsIDQsIDIzNSwgMTQ1LCAyLCAKKyAgICAyNDksIDEyNywgNTgsIDEsIDQsIDIzMywgMTQ5LCAyLCAyMjMsIDU1LCAxMDMsIDU4LCAxLCA0LCAyMzMsIDE0OSwgMiwgCisgICAgMjI2LCA2NiwgMTAzLCA1OCwgMSwgNCwgNiwgMTU2LCA1OCwgMSwgNCwgMjMyLCA1MCwgMiwgMTAzLCA1OCwgMSwgNCwgMjE1LCAKKyAgICA5NCwgMjMyLCA1MCwgMiwgMTk5LCAyMzMsIDM2LCA1OCwgMSwgNCwgMjMwLCAyNiwgMiwgNDMsIDEwMywgNTgsIDEsIDQsIAorICAgIDIzMCwgMjYsIDIsIDIyMywgNTUsIDEwMywgNTgsIDEsIDQsIDYsIDIzMCwgMjUsIDU4LCAxLCA0LCAyNTIsIDEzNCwgNzYsIAorICAgIDU4LCAxLCA0LCAyMjUsIDEzMywgNTgsIDEsIDQsIDIyMiwgOTIsIDIsIDEwMywgNTgsIDEsIDQsIDI0NSwgNzUsIDU4LCAxLCAKKyAgICA0LCAyMTcsIDE1MywgMiwgMjI2LCA2NiwgMTAzLCA1OCwgMSwgNCwgMTA0LCAxMzAsIDU4LCAxLCA0LCAyMTQsIDE1NywgNTgsIAorICAgIDEsIDQsIDYsIDcwLCA1OCwgMSwgNCwgMjE0LCAxMDYsIDIsIDEwMywgNTgsIDEsIDQsIDIxNSwgOTQsIDIxNCwgMTA1LCA1OCwgCisgICAgMSwgNCwgMjEwLCAxNTksIDU4LCAxLCA0LCAyMTAsIDE2MCwgMiwgMjIzLCA1NSwgMTAzLCA1OCwgMSwgNCwgMjEwLCAxNjAsIAorICAgIDIsIDI0OSwgMTAwLCA1OCwgMSwgNCwgMjQ1LCA4LCA1OCwgMSwgNCwgMjE2LCAxNzksIDM4LCAyNDYsIDExOCwgMjQyLCAKKyAgICAxMzcsIDI1NSwgMTQsIDM4LCAyNDYsIDExOCwgMjU1LCAzLCAyNTUsIDE0LCAzOCwgMjE5LCA2OSwgNTEsIDM4LCAyMTgsIDYsIAorICAgIDc4LCAzOCwgMjMxLCAyMzEsIDM4LCAyNDIsIDEzNCwgMzgsIDIzMSwgMjI5LCAzOCwgMjU1LCAxLCAzOCwgMjQyLCAxMzUsIAorICAgIDM4LCAyNTUsIDIsIDM4LCA3LCA0LCAxLCAyMjMsIDIyNCwgNTEsIDM4LCAyNTEsIDE0NSwgMzgsIDIzMSwgMjMwLCAzOCwgCisgICAgNTIsIDI1MCwgMzEsIDQ4LCAzOCwgMjI2LCAyMjUsIDQ4LCAzOCwgMjEwLCAzNSwgNTEsIDM4LCAyMzUsIDE3MiwgNTEsIDM4LCAKKyAgICAyMTQsIDE1MSwgNDgsIDM4LCAyMTQsIDEzNCwgNDgsIDM4LCA3LCA0LCAxLCAyNDQsIDYzLCAyMDQsIDExNSwgNDgsIDM4LCAKKyAgICA3LCA0LCAxLCAyNTQsIDI0MywgMzgsIDcsIDQsIDEsIDI1NCwgNzMsIDM4LCA3LCA0LCAxLCAyNTMsIDE3NiwgMzgsIDcsIDQsIAorICAgIDEsIDI1MSwgNjcsIDI1MCwgMTgzLCAzOCwgNywgNCwgMSwgMjM1LCAyMTMsIDI0OSwgNjAsIDM4LCA3LCA0LCAxLCAyNDUsIAorICAgIDU5LCAzOCwgNywgNCwgMSwgMjQzLCAyMDIsIDM4LCA3LCAxLCA0LCA2LCAyNDMsIDIwMiwgMzgsIDcsIDQsIDEsIDIzNSwgCisgICAgMjMsIDM4LCA3LCA0LCAxLCAxNTYsIDM4LCA3LCAxLCA0LCA2LCAxNTYsIDM4LCA3LCAxLCA0LCA2LCAxOTMsIDM4LCA3LCA0LCAKKyAgICAxLCAyMzAsIDI1LCAzOCwgNywgMSwgNCwgNiwgMjMwLCAyNSwgMzgsIDcsIDEsIDQsIDYsIDE1MywgMzgsIDcsIDQsIDEsIAorICAgIDIyMywgMjI0LCAyMjIsIDE4NiwgMzgsIDcsIDQsIDEsIDIyMiwgOTEsIDM4LCA3LCA0LCAxLCAxOTksIDIyMiwgOTEsIDM4LCAKKyAgICA3LCA0LCAxLCAyMTAsIDE1OSwgMzgsIDUyLCAyMzUsIDE5MywgMjUxLCAxNDcsIDUxLCAzOCwgMjU0LCAxNDgsIDEyOCwgCisgICAgMjE2LCA0MiwgNTEsIDM4LCA0MywgMjUzLCAyNTAsIDQ4LCAzOCwgNDQsIDI1MywgMjUwLCAyMiwgMTI0LCAyNTMsIDI1MCwgCisgICAgNTEsIDcsIDYsIDEsIDExNSwgMiwgMjIyLCAyMzQsIDUxLCA3LCA0LCAxLCAxMTUsIDIsIDIyMiwgMjM0LCA1MSwgNywgNiwgCisgICAgMSwgNTcsIDIsIDU5LCA0OCwgNywgNCwgMSwgNTcsIDIsIDU5LCA0OCwgNywgNiwgMSwgNTcsIDIsIDU5LCA1MSwgNywgNCwgCisgICAgMSwgNTcsIDIsIDU5LCA1MSwgNywgNiwgMSwgNTcsIDIsIDIzMiwgMjE0LCA1MSwgNywgNCwgMSwgNTcsIDIsIDIzMiwgMjE0LCAKKyAgICA1MSwgNywgNiwgMSwgMjUxLCA2NywgMiwgMjUwLCAxODQsIDIyLCAxNDIsIDcsIDQsIDEsIDI1MSwgNjcsIDIsIDI1MCwgCisgICAgMTg0LCAyMiwgMTQyLCA3LCA2LCAxLCAyNDksIDYxLCAyLCA1OSwgNDgsIDcsIDQsIDEsIDI0OSwgNjEsIDIsIDU5LCA0OCwgCisgICAgNywgNiwgMSwgMjQ5LCA2MSwgMiwgNTksIDUxLCA3LCA0LCAxLCAyNDksIDYxLCAyLCA1OSwgNTEsIDcsIDYsIDEsIDI0OSwgCisgICAgNjEsIDIsIDIzMiwgMjE0LCA1MSwgNywgNCwgMSwgMjQ5LCA2MSwgMiwgMjMyLCAyMTQsIDUxLCA3LCA2LCAxLCAyNDksIDYxLCAKKyAgICAyLCAyNTAsIDE4MywgNywgNCwgMSwgMjQ5LCA2MSwgMiwgMjUwLCAxODMsIDcsIDYsIDEsIDI0OSwgNjEsIDIsIDI1MCwgMzEsIAorICAgIDUxLCA3LCA0LCAxLCAyNDksIDYxLCAyLCAyNTAsIDMxLCA1MSwgNywgNiwgMSwgMTYwLCAyLCAyMzEsIDIzMywgMjIsIDI0MiwgCisgICAgMTM2LCA3LCA0LCAxLCAxNjAsIDIsIDIzMSwgMjMzLCAyMiwgMjQyLCAxMzYsIDcsIDYsIDEsIDE2MCwgMiwgMjMxLCAyMzMsIAorICAgIDIyLCAxNDIsIDcsIDQsIDEsIDE2MCwgMiwgMjMxLCAyMzMsIDIyLCAxNDIsIDcsIDYsIDEsIDE2MCwgMiwgMjUwLCAzMSwgCisgICAgNTEsIDcsIDQsIDEsIDE2MCwgMiwgMjUwLCAzMSwgNTEsIDcsIDYsIDEsIDE2MCwgMiwgMjE2LCA4OSwgNTEsIDcsIDQsIDEsIAorICAgIDE2MCwgMiwgMjE2LCA4OSwgNTEsIDcsIDYsIDEsIDE2MCwgMiwgMjUwLCAxODQsIDIyLCAyNTEsIDE0NiwgNywgNCwgMSwgCisgICAgMTYwLCAyLCAyNTAsIDE4NCwgMjIsIDI1MSwgMTQ2LCA3LCA2LCAxLCAyNDUsIDcsIDIsIDU5LCA0OCwgNywgNCwgMSwgMjQ1LCAKKyAgICA3LCAyLCA1OSwgNDgsIDcsIDYsIDEsIDI0MywgMjAzLCAyLCAyMzEsIDIzMiwgNywgNCwgMSwgMjQzLCAyMDMsIDIsIDIzMSwgCisgICAgMjMyLCA3LCA2LCAxLCAyNDIsIDYxLCAyLCA1OSwgNDgsIDcsIDQsIDEsIDI0MiwgNjEsIDIsIDU5LCA0OCwgNywgNiwgMSwgCisgICAgMjQyLCA2MSwgMiwgNTksIDUxLCA3LCA0LCAxLCAyNDIsIDYxLCAyLCA1OSwgNTEsIDcsIDYsIDEsIDI0MiwgNjEsIDIsIAorICAgIDI0OCwgMSwgNywgNCwgMSwgMjQyLCA2MSwgMiwgMjQ4LCAxLCA3LCA2LCAxLCAyNDIsIDYxLCAyLCAyNTAsIDE4MywgNywgNCwgCisgICAgMSwgMjQyLCA2MSwgMiwgMjUwLCAxODMsIDcsIDYsIDEsIDI0MiwgNjEsIDIsIDI1MSwgMTQ3LCA1MSwgNywgNCwgMSwgMjQyLCAKKyAgICA2MSwgMiwgMjUxLCAxNDcsIDUxLCA3LCA2LCAxLCAyNDAsIDE1NCwgMiwgMjE2LCA4OSwgNTEsIDcsIDQsIDEsIDI0MCwgCisgICAgMTU0LCAyLCAyMTYsIDg5LCA1MSwgNywgNiwgMSwgMjQwLCAxNTQsIDIsIDI0OCwgMiwgMjIsIDE0MiwgNywgNCwgMSwgMjQwLCAKKyAgICAxNTQsIDIsIDI0OCwgMiwgMjIsIDE0MiwgNywgNiwgMSwgMjM1LCAyNCwgMiwgMTQyLCA3LCA0LCAxLCAyMzUsIDI0LCAyLCAKKyAgICAxNDIsIDcsIDYsIDEsIDIzNSwgMjQsIDIsIDU5LCA1MSwgNywgNCwgMSwgMjM1LCAyNCwgMiwgNTksIDUxLCA3LCA2LCAxLCAKKyAgICAyMzUsIDI0LCAyLCAyMzIsIDIxNCwgNTEsIDcsIDQsIDEsIDIzNSwgMjQsIDIsIDIzMiwgMjE0LCA1MSwgNywgNiwgMSwgCisgICAgMjMzLCAxNDksIDIsIDU5LCA1MSwgNywgNCwgMSwgMjMzLCAxNDksIDIsIDU5LCA1MSwgNywgNiwgMSwgMjMzLCAxNDksIDIsIAorICAgIDU5LCAyNTIsIDQzLCAyMiwgMjMxLCAyMzIsIDcsIDQsIDEsIDIzMywgMTQ5LCAyLCA1OSwgMjUyLCA0MywgMjIsIDIzMSwgCisgICAgMjMyLCA3LCA2LCAxLCAyMzMsIDE0OSwgMiwgMjMyLCAyMTQsIDUxLCA3LCA0LCAxLCAyMzMsIDE0OSwgMiwgMjMyLCAyMTQsIAorICAgIDUxLCA3LCA2LCAxLCAyMzMsIDE0OSwgMiwgMjUwLCAzMSwgNTEsIDcsIDQsIDEsIDIzMywgMTQ5LCAyLCAyNTAsIDMxLCA1MSwgCisgICAgNywgNiwgMSwgMjMyLCA1MCwgMiwgMTQyLCA3LCA0LCAxLCAyMzIsIDUwLCAyLCAxNDIsIDcsIDYsIDEsIDIzMiwgNTAsIDIsIAorICAgIDU5LCA0OCwgNywgNCwgMSwgMjMyLCA1MCwgMiwgNTksIDQ4LCA3LCA2LCAxLCAyMzIsIDUwLCAyLCA1OSwgNTEsIDcsIDQsIAorICAgIDEsIDIzMiwgNTAsIDIsIDU5LCA1MSwgNywgNiwgMSwgMjMwLCAyNiwgMiwgNTksIDQ4LCA3LCA0LCAxLCAyMzAsIDI2LCAyLCAKKyAgICA1OSwgNDgsIDcsIDYsIDEsIDIzMCwgMjYsIDIsIDU5LCA1MSwgNywgNCwgMSwgMjMwLCAyNiwgMiwgNTksIDUxLCA3LCA2LCAKKyAgICAxLCAyMzAsIDI2LCAyLCAyMzIsIDIxNCwgNTEsIDcsIDQsIDEsIDIzMCwgMjYsIDIsIDIzMiwgMjE0LCA1MSwgNywgNiwgMSwgCisgICAgMjMwLCAyNiwgMiwgMjUwLCAzMSwgNTEsIDcsIDQsIDEsIDIzMCwgMjYsIDIsIDI1MCwgMzEsIDUxLCA3LCA2LCAxLCAxNDQsIAorICAgIDIsIDIxNiwgODksIDIyLCAxNDIsIDcsIDQsIDEsIDE0NCwgMiwgMjE2LCA4OSwgMjIsIDE0MiwgNywgNiwgMSwgMTQ0LCAyLCAKKyAgICAyMTYsIDg5LCAyMiwgMjQ4LCAxLCA3LCA0LCAxLCAxNDQsIDIsIDIxNiwgODksIDIyLCAyNDgsIDEsIDcsIDYsIDEsIDE0NCwgCisgICAgMiwgMjMxLCAyMzMsIDIyLCAyNDIsIDEzNiwgNywgNCwgMSwgMTQ0LCAyLCAyMzEsIDIzMywgMjIsIDI0MiwgMTM2LCA3LCA2LCAKKyAgICAxLCAxNDQsIDIsIDIzMSwgMjMzLCAyMiwgMTQyLCA3LCA0LCAxLCAxNDQsIDIsIDIzMSwgMjMzLCAyMiwgMTQyLCA3LCA2LCAKKyAgICAxLCAyMjYsIDEwNiwgMiwgMTQyLCA3LCA0LCAxLCAyMjYsIDEwNiwgMiwgMTQyLCA3LCA2LCAxLCAyMjYsIDEwNiwgMiwgNTksIAorICAgIDQ4LCA3LCA0LCAxLCAyMjYsIDEwNiwgMiwgNTksIDQ4LCA3LCA2LCAxLCAyMjMsIDIyNCwgMiwgNTksIDQ4LCA3LCA0LCAxLCAKKyAgICAyMjMsIDIyNCwgMiwgNTksIDQ4LCA3LCA2LCAxLCAyMjMsIDIyNCwgMiwgNTksIDUxLCA3LCA0LCAxLCAyMjMsIDIyNCwgMiwgCisgICAgNTksIDUxLCA3LCA2LCAxLCAyMjMsIDIyNCwgMiwgNTksIDI1MiwgNDMsIDIyLCAyMzEsIDIzMiwgNywgNCwgMSwgMjIzLCAKKyAgICAyMjQsIDIsIDU5LCAyNTIsIDQzLCAyMiwgMjMxLCAyMzIsIDcsIDYsIDEsIDIyMywgMjI0LCAyLCAyMzIsIDIxNCwgNTEsIDcsIAorICAgIDQsIDEsIDIyMywgMjI0LCAyLCAyMzIsIDIxNCwgNTEsIDcsIDYsIDEsIDIyMiwgOTIsIDIsIDU5LCA0OCwgNywgNCwgMSwgCisgICAgMjIyLCA5MiwgMiwgNTksIDQ4LCA3LCA2LCAxLCAyMjIsIDkyLCAyLCA1OSwgNTEsIDcsIDQsIDEsIDIyMiwgOTIsIDIsIDU5LCAKKyAgICA1MSwgNywgNiwgMSwgMjIyLCA5MiwgMiwgMjU1LCAzLCAyMiwgNTksIDQ4LCA3LCA0LCAxLCAyMjIsIDkyLCAyLCAyNTUsIDMsIAorICAgIDIyLCA1OSwgNDgsIDcsIDYsIDEsIDIyMiwgOTIsIDIsIDI1MCwgMjM1LCAyMiwgNTksIDQ4LCA3LCA0LCAxLCAyMjIsIDkyLCAKKyAgICAyLCAyNTAsIDIzNSwgMjIsIDU5LCA0OCwgNywgNiwgMSwgMjIyLCA5MiwgMiwgNTksIDI1MiwgNDMsIDIyLCA1OSwgNDgsIDcsIAorICAgIDQsIDEsIDIyMiwgOTIsIDIsIDU5LCAyNTIsIDQzLCAyMiwgNTksIDQ4LCA3LCA2LCAxLCAyMTcsIDE1MywgMiwgNTksIDQ4LCAKKyAgICA3LCA0LCAxLCAyMTcsIDE1MywgMiwgNTksIDQ4LCA3LCA2LCAxLCAyMTcsIDE1MywgMiwgNTksIDUxLCA3LCA0LCAxLCAyMTcsIAorICAgIDE1MywgMiwgNTksIDUxLCA3LCA2LCAxLCAyMTcsIDE1MywgMiwgMjMyLCAyMTQsIDUxLCA3LCA0LCAxLCAyMTcsIDE1MywgMiwgCisgICAgMjMyLCAyMTQsIDUxLCA3LCA2LCAxLCAyMTcsIDE1MywgMiwgMjUwLCAzMSwgNTEsIDcsIDQsIDEsIDIxNywgMTUzLCAyLCAKKyAgICAyNTAsIDMxLCA1MSwgNywgNiwgMSwgMTA0LCAyLCAyNDgsIDIsIDUxLCA3LCA0LCAxLCAxMDQsIDIsIDI0OCwgMiwgNTEsIDcsIAorICAgIDYsIDEsIDEwNCwgMiwgMjE2LCA4OSwgNTEsIDcsIDQsIDEsIDEwNCwgMiwgMjE2LCA4OSwgNTEsIDcsIDYsIDEsIDEwNCwgMiwgCisgICAgMjUwLCAzMSwgNTEsIDcsIDQsIDEsIDEwNCwgMiwgMjUwLCAzMSwgNTEsIDcsIDYsIDEsIDEwNCwgMiwgMjE2LCA4OSwgMjIsIAorICAgIDE0MiwgNywgNCwgMSwgMTA0LCAyLCAyMTYsIDg5LCAyMiwgMTQyLCA3LCA2LCAxLCAxMDQsIDIsIDIzMSwgMjMzLCAyMiwgCisgICAgMjQ4LCAxLCA3LCA0LCAxLCAxMDQsIDIsIDIzMSwgMjMzLCAyMiwgMjQ4LCAxLCA3LCA2LCAxLCAyMTQsIDEwNiwgMiwgMTgyLCAKKyAgICA3LCA0LCAxLCAyMTQsIDEwNiwgMiwgMTgyLCA3LCA2LCAxLCAyMTQsIDEwNiwgMiwgNTksIDUxLCA3LCA0LCAxLCAyMTQsIAorICAgIDEwNiwgMiwgNTksIDUxLCA3LCA2LCAxLCAyMTIsIDk5LCAyLCAyNDIsIDEzNiwgNywgNCwgMSwgMjEyLCA5OSwgMiwgMjQyLCAKKyAgICAxMzYsIDcsIDYsIDEsIDIxMiwgOTksIDIsIDE0MiwgNywgNCwgMSwgMjEyLCA5OSwgMiwgMTQyLCA3LCA2LCAxLCAyMTIsIAorICAgIDk5LCAyLCAyNDgsIDEsIDcsIDQsIDEsIDIxMiwgOTksIDIsIDI0OCwgMSwgNywgNiwgMSwgMjEyLCA5OSwgMiwgNTksIDQ4LCAKKyAgICA3LCA0LCAxLCAyMTIsIDk5LCAyLCA1OSwgNDgsIDcsIDYsIDEsIDIxMiwgOTksIDIsIDU5LCA1MSwgNywgNCwgMSwgMjEyLCAKKyAgICA5OSwgMiwgNTksIDUxLCA3LCA2LCAxLCAyMTEsIDE3OSwgMiwgNTksIDQ4LCA3LCA0LCAxLCAyMTEsIDE3OSwgMiwgNTksIAorICAgIDQ4LCA3LCA2LCAxLCAyMTEsIDE3OSwgMiwgMjQ4LCAxLCA3LCA0LCAxLCAyMTEsIDE3OSwgMiwgMjQ4LCAxLCA3LCA2LCAxLCAKKyAgICAyMTEsIDExOCwgMiwgNTksIDQ4LCA3LCA0LCAxLCAyMTEsIDExOCwgMiwgNTksIDQ4LCA3LCA2LCAxLCAyMTAsIDE2MCwgMiwgCisgICAgMjUwLCAzMCwgNywgNCwgMSwgMjEwLCAxNjAsIDIsIDI1MCwgMzAsIDcsIDYsIDEsIDIxMCwgMTYwLCAyLCA1OSwgNTEsIDcsIAorICAgIDQsIDEsIDIxMCwgMTYwLCAyLCA1OSwgNTEsIDcsIDYsIDEsIDIxMCwgMTYwLCAyLCAyMzIsIDIxNCwgNTEsIDcsIDQsIDEsIAorICAgIDIxMCwgMTYwLCAyLCAyMzIsIDIxNCwgNTEsIDcsIDQsIDEsIDI0MiwgNjEsIDIsIDIzMiwgMjE0LCA1MSwgNywgNCwgMSwgCisgICAgMjE3LCAxNTMsIDIsIDI0OCwgMSwgNywgNCwgMSwgMjEyLCA5OSwgMiwgMjIyLCAyMzQsIDQ4LCA3LCA0LCAxLCAyMTEsIAorICAgIDExOCwgMiwgMjIyLCAyMzQsIDQ4LCA3LCA0LCAxLCAxMTUsIDIsIDQ0LCAxNjMsIDIyMiwgMjMzLCA3LCA0LCAxLCAxOTksIAorICAgIDIyMiwgOTIsIDIsIDU5LCA0OCwgNywgNCwgMSwgMTk5LCAyMjIsIDkyLCAyLCAyNDcsIDI1NSwgOTEsIDcsIDQsIDEsIDE5OSwgCisgICAgMjIyLCA5MiwgMiwgMTI1LCA5MSwgNywgNiwgMSwgMjIwLCA3NiwgMjIyLCA5MSwgNywgNCwgMSwgMjQ4LCA1NCwgNywgNiwgCisgICAgMSwgMTE1LCAyLCA1OSwgNTEsIDcsIDQsIDEsIDExNSwgMiwgNTksIDUxLCA3LCA2LCAxLCAxMTUsIDIsIDI0MSwgNTIsIDQ4LCAKKyAgICA3LCA0LCAxLCAxMTUsIDIsIDI0MSwgNTIsIDQ4LCA3LCA2LCAxLCAxMTUsIDIsIDI1MCwgMzEsIDIyLCAxNDIsIDcsIDQsIDEsIAorICAgIDExNSwgMiwgMjUwLCAzMSwgMjIsIDE0MiwgNywgNiwgMSwgMTE1LCAyLCAyNTAsIDMxLCAyMiwgMjQyLCAxMzYsIDcsIDQsIAorICAgIDEsIDExNSwgMiwgMjUwLCAzMSwgMjIsIDI0MiwgMTM2LCA3LCA2LCAxLCAxMTUsIDIsIDI1MCwgMzEsIDIyLCAyNDEsIDUyLCAKKyAgICA0OCwgNywgNCwgMSwgMTE1LCAyLCAyNTAsIDMxLCAyMiwgMjQxLCA1MiwgNDgsIDcsIDYsIDEsIDExNSwgMiwgMjUwLCAzMSwgCisgICAgMjIsIDE4MiwgNywgNCwgMSwgMTE1LCAyLCAyNTAsIDMxLCAyMiwgMTgyLCA3LCA2LCAxLCAxMTUsIDIsIDI1MCwgMzEsIDIyLCAKKyAgICA1OSwgNTEsIDcsIDQsIDEsIDExNSwgMiwgMjUwLCAzMSwgMjIsIDU5LCA1MSwgNywgNiwgMSwgMTE1LCAyLCAyNTEsIDE0NywgCisgICAgMjIsIDE0MiwgNywgNCwgMSwgMTE1LCAyLCAyNTEsIDE0NywgMjIsIDE0MiwgNywgNiwgMSwgMTE1LCAyLCAyNTEsIDE0NywgCisgICAgMjIsIDI0MiwgMTM2LCA3LCA0LCAxLCAxMTUsIDIsIDI1MSwgMTQ3LCAyMiwgMjQyLCAxMzYsIDcsIDYsIDEsIDExNSwgMiwgCisgICAgMjUxLCAxNDcsIDIyLCAyNDEsIDUyLCA0OCwgNywgNCwgMSwgMTE1LCAyLCAyNTEsIDE0NywgMjIsIDI0MSwgNTIsIDQ4LCA3LCAKKyAgICA2LCAxLCAxMTUsIDIsIDI1MSwgMTQ3LCAyMiwgMTgyLCA3LCA0LCAxLCAxMTUsIDIsIDI1MSwgMTQ3LCAyMiwgMTgyLCA3LCAKKyAgICA2LCAxLCAxMTUsIDIsIDI1MSwgMTQ3LCAyMiwgNTksIDUxLCA3LCA0LCAxLCAxMTUsIDIsIDI1MSwgMTQ3LCAyMiwgNTksIAorICAgIDUxLCA3LCA2LCAxLCAxNjAsIDIsIDU5LCA1MSwgNywgNCwgMSwgMTYwLCAyLCA1OSwgNTEsIDcsIDYsIDEsIDE2MCwgMiwgCisgICAgMjQxLCA1MiwgNDgsIDcsIDQsIDEsIDE2MCwgMiwgMjQxLCA1MiwgNDgsIDcsIDYsIDEsIDE2MCwgMiwgMTgyLCA3LCA0LCAxLCAKKyAgICAxNjAsIDIsIDE4MiwgNywgNiwgMSwgMTYwLCAyLCAyNTAsIDMxLCAyMiwgMTQyLCA3LCA0LCAxLCAxNjAsIDIsIDI1MCwgMzEsIAorICAgIDIyLCAxNDIsIDcsIDYsIDEsIDE2MCwgMiwgMjUwLCAzMSwgMjIsIDI0MiwgMTM2LCA3LCA0LCAxLCAxNjAsIDIsIDI1MCwgCisgICAgMzEsIDIyLCAyNDIsIDEzNiwgNywgNiwgMSwgMTYwLCAyLCAyNTAsIDMxLCAyMiwgMjQxLCA1MiwgNDgsIDcsIDQsIDEsIAorICAgIDE2MCwgMiwgMjUwLCAzMSwgMjIsIDI0MSwgNTIsIDQ4LCA3LCA2LCAxLCAxNjAsIDIsIDI1MCwgMzEsIDIyLCAxODIsIDcsIAorICAgIDQsIDEsIDE2MCwgMiwgMjUwLCAzMSwgMjIsIDE4MiwgNywgNiwgMSwgMTYwLCAyLCAyNTAsIDMxLCAyMiwgNTksIDUxLCA3LCAKKyAgICA0LCAxLCAxNjAsIDIsIDI1MCwgMzEsIDIyLCA1OSwgNTEsIDcsIDYsIDEsIDI0MCwgMTU0LCAyLCAyNDEsIDUyLCA0OCwgNywgCisgICAgNCwgMSwgMjQwLCAxNTQsIDIsIDI0MSwgNTIsIDQ4LCA3LCA2LCAxLCAyNDAsIDE1NCwgMiwgNTksIDUxLCA3LCA0LCAxLCAKKyAgICAyNDAsIDE1NCwgMiwgNTksIDUxLCA3LCA2LCAxLCAxNDQsIDIsIDU5LCA1MSwgNywgNCwgMSwgMTQ0LCAyLCA1OSwgNTEsIDcsIAorICAgIDYsIDEsIDE0NCwgMiwgMjQxLCA1MiwgNDgsIDcsIDQsIDEsIDE0NCwgMiwgMjQxLCA1MiwgNDgsIDcsIDYsIDEsIDE0NCwgMiwgCisgICAgMjUwLCAzMSwgMjIsIDE0MiwgNywgNCwgMSwgMTQ0LCAyLCAyNTAsIDMxLCAyMiwgMTQyLCA3LCA2LCAxLCAxNDQsIDIsIAorICAgIDI1MCwgMzEsIDIyLCAyNDIsIDEzNiwgNywgNCwgMSwgMTQ0LCAyLCAyNTAsIDMxLCAyMiwgMjQyLCAxMzYsIDcsIDYsIDEsIAorICAgIDE0NCwgMiwgMjUwLCAzMSwgMjIsIDI0MSwgNTIsIDQ4LCA3LCA0LCAxLCAxNDQsIDIsIDI1MCwgMzEsIDIyLCAyNDEsIDUyLCAKKyAgICA0OCwgNywgNiwgMSwgMTQ0LCAyLCAyNTAsIDMxLCAyMiwgMTgyLCA3LCA0LCAxLCAxNDQsIDIsIDI1MCwgMzEsIDIyLCAxODIsIAorICAgIDcsIDYsIDEsIDE0NCwgMiwgMjUwLCAzMSwgMjIsIDU5LCA1MSwgNywgNCwgMSwgMTQ0LCAyLCAyNTAsIDMxLCAyMiwgNTksIAorICAgIDUxLCA3LCA2LCAxLCAxNDQsIDIsIDI0MCwgMjQ5LCAyMiwgMTQyLCA3LCA0LCAxLCAxNDQsIDIsIDI0MCwgMjQ5LCAyMiwgCisgICAgMTQyLCA3LCA2LCAxLCAxNDQsIDIsIDI0MCwgMjQ5LCAyMiwgMjQyLCAxMzYsIDcsIDQsIDEsIDE0NCwgMiwgMjQwLCAyNDksIAorICAgIDIyLCAyNDIsIDEzNiwgNywgNiwgMSwgMTQ0LCAyLCAyNDAsIDI0OSwgMjIsIDI0MSwgNTIsIDQ4LCA3LCA0LCAxLCAxNDQsIAorICAgIDIsIDI0MCwgMjQ5LCAyMiwgMjQxLCA1MiwgNDgsIDcsIDYsIDEsIDE0NCwgMiwgMjQwLCAyNDksIDIyLCAxODIsIDcsIDQsIAorICAgIDEsIDE0NCwgMiwgMjQwLCAyNDksIDIyLCAxODIsIDcsIDYsIDEsIDE0NCwgMiwgMjQwLCAyNDksIDIyLCA1OSwgNTEsIDcsIAorICAgIDQsIDEsIDE0NCwgMiwgMjQwLCAyNDksIDIyLCA1OSwgNTEsIDcsIDYsIDEsIDEwNCwgMiwgNTksIDUxLCA3LCA0LCAxLCAKKyAgICAxMDQsIDIsIDU5LCA1MSwgNywgNiwgMSwgMTA0LCAyLCAyNDEsIDUyLCA0OCwgNywgNCwgMSwgMTA0LCAyLCAyNDEsIDUyLCAKKyAgICA0OCwgNywgNiwgMSwgMTA0LCAyLCAyNDAsIDI0OSwgMjIsIDE0MiwgNywgNCwgMSwgMTA0LCAyLCAyNDAsIDI0OSwgMjIsIAorICAgIDE0MiwgNywgNiwgMSwgMTA0LCAyLCAyNDAsIDI0OSwgMjIsIDI0MiwgMTM2LCA3LCA0LCAxLCAxMDQsIDIsIDI0MCwgMjQ5LCAKKyAgICAyMiwgMjQyLCAxMzYsIDcsIDYsIDEsIDEwNCwgMiwgMjQwLCAyNDksIDIyLCAyNDEsIDUyLCA0OCwgNywgNCwgMSwgMTA0LCAKKyAgICAyLCAyNDAsIDI0OSwgMjIsIDI0MSwgNTIsIDQ4LCA3LCA2LCAxLCAxMDQsIDIsIDI0MCwgMjQ5LCAyMiwgMTgyLCA3LCA0LCAKKyAgICAxLCAxMDQsIDIsIDI0MCwgMjQ5LCAyMiwgMTgyLCA3LCA2LCAxLCAxMDQsIDIsIDI0MCwgMjQ5LCAyMiwgNTksIDUxLCA3LCAKKyAgICA0LCAxLCAxMDQsIDIsIDI0MCwgMjQ5LCAyMiwgNTksIDUxLCA3LCA2LCAxLCAyMTEsIDExOCwgMiwgMjQyLCAxMzYsIDcsIDQsIAorICAgIDEsIDIxMSwgMTE4LCAyLCAyNDIsIDEzNiwgNywgNiwgMSwgMjExLCAxMTgsIDIsIDU5LCA1MSwgNywgNCwgMSwgMjExLCAKKyAgICAxMTgsIDIsIDU5LCA1MSwgNywgNiwgMSwgMjExLCAxMTgsIDIsIDI0MSwgNTIsIDQ4LCA3LCA0LCAxLCAyMTEsIDExOCwgMiwgCisgICAgMjQxLCA1MiwgNDgsIDcsIDYsIDEsIDIxMSwgMTE4LCAyLCAxODIsIDcsIDQsIDEsIDIxMSwgMTE4LCAyLCAxODIsIDcsIDYsIAorICAgIDEsIDIzMCwgMjIzLCAyMzIsIDE4NSwgNywgNCwgMSwgMjMwLCAyMjMsIDIzMiwgMTg1LCA3LCA2LCAxLCAyMzAsIDIyMywgCisgICAgMjE0LCAxMDUsIDcsIDQsIDEsIDIzMCwgMjIzLCAyMTQsIDEwNSwgNywgNiwgMSwgMjExLCAxMTgsIDIsIDIzMiwgMTIzLCA3LCAKKyAgICA0LCAxLCAyMTEsIDExOCwgMiwgMjMyLCAxMjMsIDI2LCA0LCAxLCAyNTQsIDE0NCwgMiwgMjI0LCAxNTQsIDI2LCA0LCAxLCAKKyAgICAyNTQsIDE0NCwgMiwgMjQ4LCAxNTMsIDI2LCA0LCAxLCAyNTQsIDE0NCwgMiwgMjI0LCAxNTUsIDIyLCAyMTQsIDEzLCAyNiwgCisgICAgNCwgMSwgMjU0LCAxNDQsIDIsIDI0OCwgMTU0LCAyMiwgMjE0LCAxMywgMjYsIDQsIDEsIDI1NCwgMTQ0LCAyLCAyMjQsIAorICAgIDE1NSwgMjIsIDIyNiwgMTEwLCAyNiwgNCwgMSwgMjU0LCAxNDQsIDIsIDI0OCwgMTU0LCAyMiwgMjI2LCAxMTAsIDI2LCA0LCAKKyAgICAxLCAyNTQsIDE0NCwgMiwgMjI0LCAxNTUsIDIyLCAyMjUsIDE3NSwgMjYsIDQsIDEsIDI1NCwgMTQ0LCAyLCAyNDgsIDE1NCwgCisgICAgMjIsIDIyNSwgMTc1LCAyNiwgNiwgMSwgMjU0LCAxNDQsIDIsIDIyNCwgMTU0LCAyNiwgNiwgMSwgMjU0LCAxNDQsIDIsIAorICAgIDI0OCwgMTUzLCAyNiwgNiwgMSwgMjU0LCAxNDQsIDIsIDIyNCwgMTU1LCAyMiwgMjE0LCAxMywgMjYsIDYsIDEsIDI1NCwgCisgICAgMTQ0LCAyLCAyNDgsIDE1NCwgMjIsIDIxNCwgMTMsIDI2LCA2LCAxLCAyNTQsIDE0NCwgMiwgMjI0LCAxNTUsIDIyLCAyMjYsIAorICAgIDExMCwgMjYsIDYsIDEsIDI1NCwgMTQ0LCAyLCAyNDgsIDE1NCwgMjIsIDIyNiwgMTEwLCAyNiwgNiwgMSwgMjU0LCAxNDQsIAorICAgIDIsIDIyNCwgMTU1LCAyMiwgMjI1LCAxNzUsIDI2LCA2LCAxLCAyNTQsIDE0NCwgMiwgMjQ4LCAxNTQsIDIyLCAyMjUsIDE3NSwgCisgICAgMjYsIDQsIDEsIDI0NSwgMTAxLCAyLCAyMjQsIDE1NCwgMjYsIDQsIDEsIDI0NSwgMTAxLCAyLCAyNDgsIDE1MywgMjYsIDQsIAorICAgIDEsIDI0NSwgMTAxLCAyLCAyMjQsIDE1NSwgMjIsIDIxNCwgMTMsIDI2LCA0LCAxLCAyNDUsIDEwMSwgMiwgMjQ4LCAxNTQsIAorICAgIDIyLCAyMTQsIDEzLCAyNiwgNCwgMSwgMjQ1LCAxMDEsIDIsIDIyNCwgMTU1LCAyMiwgMjI2LCAxMTAsIDI2LCA0LCAxLCAKKyAgICAyNDUsIDEwMSwgMiwgMjQ4LCAxNTQsIDIyLCAyMjYsIDExMCwgMjYsIDYsIDEsIDI0NSwgMTAxLCAyLCAyMjQsIDE1NCwgMjYsIAorICAgIDYsIDEsIDI0NSwgMTAxLCAyLCAyNDgsIDE1MywgMjYsIDYsIDEsIDI0NSwgMTAxLCAyLCAyMjQsIDE1NSwgMjIsIDIxNCwgCisgICAgMTMsIDI2LCA2LCAxLCAyNDUsIDEwMSwgMiwgMjQ4LCAxNTQsIDIyLCAyMTQsIDEzLCAyNiwgNiwgMSwgMjQ1LCAxMDEsIDIsIAorICAgIDIyNCwgMTU1LCAyMiwgMjI2LCAxMTAsIDI2LCA2LCAxLCAyNDUsIDEwMSwgMiwgMjQ4LCAxNTQsIDIyLCAyMjYsIDExMCwgCisgICAgMjYsIDQsIDEsIDI0NSwgNjQsIDIsIDIyNCwgMTU0LCAyNiwgNCwgMSwgMjQ1LCA2NCwgMiwgMjQ4LCAxNTMsIDI2LCA0LCAxLCAKKyAgICAyNDUsIDY0LCAyLCAyMjQsIDE1NSwgMjIsIDIxNCwgMTMsIDI2LCA0LCAxLCAyNDUsIDY0LCAyLCAyNDgsIDE1NCwgMjIsIAorICAgIDIxNCwgMTMsIDI2LCA0LCAxLCAyNDUsIDY0LCAyLCAyMjQsIDE1NSwgMjIsIDIyNiwgMTEwLCAyNiwgNCwgMSwgMjQ1LCA2NCwgCisgICAgMiwgMjQ4LCAxNTQsIDIyLCAyMjYsIDExMCwgMjYsIDQsIDEsIDI0NSwgNjQsIDIsIDIyNCwgMTU1LCAyMiwgMjI1LCAxNzUsIAorICAgIDI2LCA0LCAxLCAyNDUsIDY0LCAyLCAyNDgsIDE1NCwgMjIsIDIyNSwgMTc1LCAyNiwgNiwgMSwgMjQ1LCA2NCwgMiwgMjI0LCAKKyAgICAxNTQsIDI2LCA2LCAxLCAyNDUsIDY0LCAyLCAyNDgsIDE1MywgMjYsIDYsIDEsIDI0NSwgNjQsIDIsIDIyNCwgMTU1LCAyMiwgCisgICAgMjE0LCAxMywgMjYsIDYsIDEsIDI0NSwgNjQsIDIsIDI0OCwgMTU0LCAyMiwgMjE0LCAxMywgMjYsIDYsIDEsIDI0NSwgNjQsIAorICAgIDIsIDIyNCwgMTU1LCAyMiwgMjI2LCAxMTAsIDI2LCA2LCAxLCAyNDUsIDY0LCAyLCAyNDgsIDE1NCwgMjIsIDIyNiwgMTEwLCAKKyAgICAyNiwgNiwgMSwgMjQ1LCA2NCwgMiwgMjI0LCAxNTUsIDIyLCAyMjUsIDE3NSwgMjYsIDYsIDEsIDI0NSwgNjQsIDIsIDI0OCwgCisgICAgMTU0LCAyMiwgMjI1LCAxNzUsIDI2LCA0LCAxLCAyMzUsIDE4NiwgMiwgMjI0LCAxNTQsIDI2LCA0LCAxLCAyMzUsIDE4NiwgCisgICAgMiwgMjQ4LCAxNTMsIDI2LCA0LCAxLCAyMzUsIDE4NiwgMiwgMjI0LCAxNTUsIDIyLCAyMTQsIDEzLCAyNiwgNCwgMSwgMjM1LCAKKyAgICAxODYsIDIsIDI0OCwgMTU0LCAyMiwgMjE0LCAxMywgMjYsIDQsIDEsIDIzNSwgMTg2LCAyLCAyMjQsIDE1NSwgMjIsIDIyNiwgCisgICAgMTEwLCAyNiwgNCwgMSwgMjM1LCAxODYsIDIsIDI0OCwgMTU0LCAyMiwgMjI2LCAxMTAsIDI2LCA0LCAxLCAyMzUsIDE4NiwgCisgICAgMiwgMjI0LCAxNTUsIDIyLCAyMjUsIDE3NSwgMjYsIDQsIDEsIDIzNSwgMTg2LCAyLCAyNDgsIDE1NCwgMjIsIDIyNSwgMTc1LCAKKyAgICAyNiwgNiwgMSwgMjM1LCAxODYsIDIsIDIyNCwgMTU0LCAyNiwgNiwgMSwgMjM1LCAxODYsIDIsIDI0OCwgMTUzLCAyNiwgNiwgCisgICAgMSwgMjM1LCAxODYsIDIsIDIyNCwgMTU1LCAyMiwgMjE0LCAxMywgMjYsIDYsIDEsIDIzNSwgMTg2LCAyLCAyNDgsIDE1NCwgCisgICAgMjIsIDIxNCwgMTMsIDI2LCA2LCAxLCAyMzUsIDE4NiwgMiwgMjI0LCAxNTUsIDIyLCAyMjYsIDExMCwgMjYsIDYsIDEsIAorICAgIDIzNSwgMTg2LCAyLCAyNDgsIDE1NCwgMjIsIDIyNiwgMTEwLCAyNiwgNiwgMSwgMjM1LCAxODYsIDIsIDIyNCwgMTU1LCAyMiwgCisgICAgMjI1LCAxNzUsIDI2LCA2LCAxLCAyMzUsIDE4NiwgMiwgMjQ4LCAxNTQsIDIyLCAyMjUsIDE3NSwgMjYsIDQsIDEsIDIyNiwgCisgICAgMjAwLCAyLCAyMjQsIDE1NCwgMjYsIDQsIDEsIDIyNiwgMjAwLCAyLCAyNDgsIDE1MywgMjYsIDQsIDEsIDIyNiwgMjAwLCAyLCAKKyAgICAyMjQsIDE1NSwgMjIsIDIxNCwgMTMsIDI2LCA0LCAxLCAyMjYsIDIwMCwgMiwgMjQ4LCAxNTQsIDIyLCAyMTQsIDEzLCAyNiwgCisgICAgNCwgMSwgMjI2LCAyMDAsIDIsIDIyNCwgMTU1LCAyMiwgMjI2LCAxMTAsIDI2LCA0LCAxLCAyMjYsIDIwMCwgMiwgMjQ4LCAKKyAgICAxNTQsIDIyLCAyMjYsIDExMCwgMjYsIDYsIDEsIDIyNiwgMjAwLCAyLCAyMjQsIDE1NCwgMjYsIDYsIDEsIDIyNiwgMjAwLCAKKyAgICAyLCAyNDgsIDE1MywgMjYsIDYsIDEsIDIyNiwgMjAwLCAyLCAyMjQsIDE1NSwgMjIsIDIxNCwgMTMsIDI2LCA2LCAxLCAyMjYsIAorICAgIDIwMCwgMiwgMjQ4LCAxNTQsIDIyLCAyMTQsIDEzLCAyNiwgNiwgMSwgMjI2LCAyMDAsIDIsIDIyNCwgMTU1LCAyMiwgMjI2LCAKKyAgICAxMTAsIDI2LCA2LCAxLCAyMjYsIDIwMCwgMiwgMjQ4LCAxNTQsIDIyLCAyMjYsIDExMCwgMjYsIDQsIDEsIDIxNCwgMTU4LCAKKyAgICAyLCAyMjQsIDE1NCwgMjYsIDQsIDEsIDIxNCwgMTU4LCAyLCAyNDgsIDE1MywgMjYsIDQsIDEsIDIxNCwgMTU4LCAyLCAyMjQsIAorICAgIDE1NSwgMjIsIDIxNCwgMTMsIDI2LCA0LCAxLCAyMTQsIDE1OCwgMiwgMjQ4LCAxNTQsIDIyLCAyMTQsIDEzLCAyNiwgNCwgMSwgCisgICAgMjE0LCAxNTgsIDIsIDIyNCwgMTU1LCAyMiwgMjI2LCAxMTAsIDI2LCA0LCAxLCAyMTQsIDE1OCwgMiwgMjQ4LCAxNTQsIDIyLCAKKyAgICAyMjYsIDExMCwgMjYsIDQsIDEsIDIxNCwgMTU4LCAyLCAyMjQsIDE1NSwgMjIsIDIyNSwgMTc1LCAyNiwgNCwgMSwgMjE0LCAKKyAgICAxNTgsIDIsIDI0OCwgMTU0LCAyMiwgMjI1LCAxNzUsIDI2LCA2LCAxLCAyMTQsIDE1OCwgMiwgMjQ4LCAxNTMsIDI2LCA2LCAKKyAgICAxLCAyMTQsIDE1OCwgMiwgMjQ4LCAxNTQsIDIyLCAyMTQsIDEzLCAyNiwgNiwgMSwgMjE0LCAxNTgsIDIsIDI0OCwgMTU0LCAKKyAgICAyMiwgMjI2LCAxMTAsIDI2LCA2LCAxLCAyMTQsIDE1OCwgMiwgMjQ4LCAxNTQsIDIyLCAyMjUsIDE3NSwgMjYsIDQsIDEsIAorICAgIDIyNiwgMjAyLCAyLCAyMjQsIDE1NCwgMjYsIDQsIDEsIDIyNiwgMjAyLCAyLCAyNDgsIDE1MywgMjYsIDQsIDEsIDIyNiwgCisgICAgMjAyLCAyLCAyMjQsIDE1NSwgMjIsIDIxNCwgMTMsIDI2LCA0LCAxLCAyMjYsIDIwMiwgMiwgMjQ4LCAxNTQsIDIyLCAyMTQsIAorICAgIDEzLCAyNiwgNCwgMSwgMjI2LCAyMDIsIDIsIDIyNCwgMTU1LCAyMiwgMjI2LCAxMTAsIDI2LCA0LCAxLCAyMjYsIDIwMiwgMiwgCisgICAgMjQ4LCAxNTQsIDIyLCAyMjYsIDExMCwgMjYsIDQsIDEsIDIyNiwgMjAyLCAyLCAyMjQsIDE1NSwgMjIsIDIyNSwgMTc1LCAKKyAgICAyNiwgNCwgMSwgMjI2LCAyMDIsIDIsIDI0OCwgMTU0LCAyMiwgMjI1LCAxNzUsIDI2LCA2LCAxLCAyMjYsIDIwMiwgMiwgCisgICAgMjI0LCAxNTQsIDI2LCA2LCAxLCAyMjYsIDIwMiwgMiwgMjQ4LCAxNTMsIDI2LCA2LCAxLCAyMjYsIDIwMiwgMiwgMjI0LCAKKyAgICAxNTUsIDIyLCAyMTQsIDEzLCAyNiwgNiwgMSwgMjI2LCAyMDIsIDIsIDI0OCwgMTU0LCAyMiwgMjE0LCAxMywgMjYsIDYsIDEsIAorICAgIDIyNiwgMjAyLCAyLCAyMjQsIDE1NSwgMjIsIDIyNiwgMTEwLCAyNiwgNiwgMSwgMjI2LCAyMDIsIDIsIDI0OCwgMTU0LCAyMiwgCisgICAgMjI2LCAxMTAsIDI2LCA2LCAxLCAyMjYsIDIwMiwgMiwgMjI0LCAxNTUsIDIyLCAyMjUsIDE3NSwgMjYsIDYsIDEsIDIyNiwgCisgICAgMjAyLCAyLCAyNDgsIDE1NCwgMjIsIDIyNSwgMTc1LCAyNiwgNCwgMSwgMjU0LCAxNDQsIDIsIDIxNCwgMTMsIDI2LCA0LCAxLCAKKyAgICAyNTQsIDE0NCwgMiwgMjI2LCAxMTAsIDI2LCA0LCAxLCAyNDUsIDEwMSwgMiwgMjE0LCAxMywgMjYsIDQsIDEsIDI0NSwgCisgICAgMTAxLCAyLCAyMjYsIDExMCwgMjYsIDQsIDEsIDI0NSwgNjQsIDIsIDIxNCwgMTMsIDI2LCA0LCAxLCAyNDUsIDY0LCAyLCAKKyAgICAyMjYsIDExMCwgMjYsIDQsIDEsIDIzNSwgMTg2LCAyLCAyMTQsIDEzLCAyNiwgNCwgMSwgMjM1LCAxODYsIDIsIDIyNiwgCisgICAgMTEwLCAyNiwgNCwgMSwgMjI2LCAyMDAsIDIsIDIxNCwgMTMsIDI2LCA0LCAxLCAyMjYsIDIwMCwgMiwgMjI2LCAxMTAsIDI2LCAKKyAgICA0LCAxLCAyMTQsIDE1OCwgMiwgMjE0LCAxMywgMjYsIDQsIDEsIDIxNCwgMTU4LCAyLCAyMjYsIDExMCwgMjYsIDQsIDEsIAorICAgIDIyNiwgMjAyLCAyLCAyMTQsIDEzLCAyNiwgNCwgMSwgMjI2LCAyMDIsIDIsIDIyNiwgMTEwLCAyNiwgNCwgMSwgMjU0LCAKKyAgICAxNDQsIDIsIDIyNCwgMTU1LCAyMiwgMjEwLCAyMTksIDI2LCA0LCAxLCAyNTQsIDE0NCwgMiwgMjQ4LCAxNTQsIDIyLCAyMTAsIAorICAgIDIxOSwgMjYsIDQsIDEsIDI1NCwgMTQ0LCAyLCAyMjQsIDE1NSwgMjIsIDIxNCwgMTQsIDIyLCAyMTAsIDIxOSwgMjYsIDQsIAorICAgIDEsIDI1NCwgMTQ0LCAyLCAyNDgsIDE1NCwgMjIsIDIxNCwgMTQsIDIyLCAyMTAsIDIxOSwgMjYsIDQsIDEsIDI1NCwgMTQ0LCAKKyAgICAyLCAyMjQsIDE1NSwgMjIsIDIyNiwgMTExLCAyMiwgMjEwLCAyMTksIDI2LCA0LCAxLCAyNTQsIDE0NCwgMiwgMjQ4LCAxNTQsIAorICAgIDIyLCAyMjYsIDExMSwgMjIsIDIxMCwgMjE5LCAyNiwgNCwgMSwgMjU0LCAxNDQsIDIsIDIyNCwgMTU1LCAyMiwgMjI1LCAKKyAgICAxNzYsIDIyLCAyMTAsIDIxOSwgMjYsIDQsIDEsIDI1NCwgMTQ0LCAyLCAyNDgsIDE1NCwgMjIsIDIyNSwgMTc2LCAyMiwgCisgICAgMjEwLCAyMTksIDI2LCA2LCAxLCAyNTQsIDE0NCwgMiwgMjI0LCAxNTUsIDIyLCAyMjQsIDE2NywgMjYsIDYsIDEsIDI1NCwgCisgICAgMTQ0LCAyLCAyNDgsIDE1NCwgMjIsIDIyNCwgMTY3LCAyNiwgNiwgMSwgMjU0LCAxNDQsIDIsIDIyNCwgMTU1LCAyMiwgMjE0LCAKKyAgICAxNCwgMjIsIDIyNCwgMTY3LCAyNiwgNiwgMSwgMjU0LCAxNDQsIDIsIDI0OCwgMTU0LCAyMiwgMjE0LCAxNCwgMjIsIDIyNCwgCisgICAgMTY3LCAyNiwgNiwgMSwgMjU0LCAxNDQsIDIsIDIyNCwgMTU1LCAyMiwgMjI2LCAxMTEsIDIyLCAyMjQsIDE2NywgMjYsIDYsIAorICAgIDEsIDI1NCwgMTQ0LCAyLCAyNDgsIDE1NCwgMjIsIDIyNiwgMTExLCAyMiwgMjI0LCAxNjcsIDI2LCA2LCAxLCAyNTQsIDE0NCwgCisgICAgMiwgMjI0LCAxNTUsIDIyLCAyMjUsIDE3NiwgMjIsIDIyNCwgMTY3LCAyNiwgNiwgMSwgMjU0LCAxNDQsIDIsIDI0OCwgMTU0LCAKKyAgICAyMiwgMjI1LCAxNzYsIDIyLCAyMjQsIDE2NywgMjYsIDQsIDEsIDI0NSwgNjQsIDIsIDIyNCwgMTU1LCAyMiwgMjEwLCAyMTksIAorICAgIDI2LCA0LCAxLCAyNDUsIDY0LCAyLCAyNDgsIDE1NCwgMjIsIDIxMCwgMjE5LCAyNiwgNCwgMSwgMjQ1LCA2NCwgMiwgMjI0LCAKKyAgICAxNTUsIDIyLCAyMTQsIDE0LCAyMiwgMjEwLCAyMTksIDI2LCA0LCAxLCAyNDUsIDY0LCAyLCAyNDgsIDE1NCwgMjIsIDIxNCwgCisgICAgMTQsIDIyLCAyMTAsIDIxOSwgMjYsIDQsIDEsIDI0NSwgNjQsIDIsIDIyNCwgMTU1LCAyMiwgMjI2LCAxMTEsIDIyLCAyMTAsIAorICAgIDIxOSwgMjYsIDQsIDEsIDI0NSwgNjQsIDIsIDI0OCwgMTU0LCAyMiwgMjI2LCAxMTEsIDIyLCAyMTAsIDIxOSwgMjYsIDQsIAorICAgIDEsIDI0NSwgNjQsIDIsIDIyNCwgMTU1LCAyMiwgMjI1LCAxNzYsIDIyLCAyMTAsIDIxOSwgMjYsIDQsIDEsIDI0NSwgNjQsIAorICAgIDIsIDI0OCwgMTU0LCAyMiwgMjI1LCAxNzYsIDIyLCAyMTAsIDIxOSwgMjYsIDYsIDEsIDI0NSwgNjQsIDIsIDIyNCwgMTU1LCAKKyAgICAyMiwgMjI0LCAxNjcsIDI2LCA2LCAxLCAyNDUsIDY0LCAyLCAyNDgsIDE1NCwgMjIsIDIyNCwgMTY3LCAyNiwgNiwgMSwgCisgICAgMjQ1LCA2NCwgMiwgMjI0LCAxNTUsIDIyLCAyMTQsIDE0LCAyMiwgMjI0LCAxNjcsIDI2LCA2LCAxLCAyNDUsIDY0LCAyLCAKKyAgICAyNDgsIDE1NCwgMjIsIDIxNCwgMTQsIDIyLCAyMjQsIDE2NywgMjYsIDYsIDEsIDI0NSwgNjQsIDIsIDIyNCwgMTU1LCAyMiwgCisgICAgMjI2LCAxMTEsIDIyLCAyMjQsIDE2NywgMjYsIDYsIDEsIDI0NSwgNjQsIDIsIDI0OCwgMTU0LCAyMiwgMjI2LCAxMTEsIDIyLCAKKyAgICAyMjQsIDE2NywgMjYsIDYsIDEsIDI0NSwgNjQsIDIsIDIyNCwgMTU1LCAyMiwgMjI1LCAxNzYsIDIyLCAyMjQsIDE2NywgMjYsIAorICAgIDYsIDEsIDI0NSwgNjQsIDIsIDI0OCwgMTU0LCAyMiwgMjI1LCAxNzYsIDIyLCAyMjQsIDE2NywgMjYsIDQsIDEsIDIyNiwgCisgICAgMjAyLCAyLCAyMjQsIDE1NSwgMjIsIDIxMCwgMjE5LCAyNiwgNCwgMSwgMjI2LCAyMDIsIDIsIDI0OCwgMTU0LCAyMiwgMjEwLCAKKyAgICAyMTksIDI2LCA0LCAxLCAyMjYsIDIwMiwgMiwgMjI0LCAxNTUsIDIyLCAyMTQsIDE0LCAyMiwgMjEwLCAyMTksIDI2LCA0LCAKKyAgICAxLCAyMjYsIDIwMiwgMiwgMjQ4LCAxNTQsIDIyLCAyMTQsIDE0LCAyMiwgMjEwLCAyMTksIDI2LCA0LCAxLCAyMjYsIDIwMiwgCisgICAgMiwgMjI0LCAxNTUsIDIyLCAyMjYsIDExMSwgMjIsIDIxMCwgMjE5LCAyNiwgNCwgMSwgMjI2LCAyMDIsIDIsIDI0OCwgMTU0LCAKKyAgICAyMiwgMjI2LCAxMTEsIDIyLCAyMTAsIDIxOSwgMjYsIDQsIDEsIDIyNiwgMjAyLCAyLCAyMjQsIDE1NSwgMjIsIDIyNSwgCisgICAgMTc2LCAyMiwgMjEwLCAyMTksIDI2LCA0LCAxLCAyMjYsIDIwMiwgMiwgMjQ4LCAxNTQsIDIyLCAyMjUsIDE3NiwgMjIsIAorICAgIDIxMCwgMjE5LCAyNiwgNiwgMSwgMjI2LCAyMDIsIDIsIDIyNCwgMTU1LCAyMiwgMjI0LCAxNjcsIDI2LCA2LCAxLCAyMjYsIAorICAgIDIwMiwgMiwgMjQ4LCAxNTQsIDIyLCAyMjQsIDE2NywgMjYsIDYsIDEsIDIyNiwgMjAyLCAyLCAyMjQsIDE1NSwgMjIsIDIxNCwgCisgICAgMTQsIDIyLCAyMjQsIDE2NywgMjYsIDYsIDEsIDIyNiwgMjAyLCAyLCAyNDgsIDE1NCwgMjIsIDIxNCwgMTQsIDIyLCAyMjQsIAorICAgIDE2NywgMjYsIDYsIDEsIDIyNiwgMjAyLCAyLCAyMjQsIDE1NSwgMjIsIDIyNiwgMTExLCAyMiwgMjI0LCAxNjcsIDI2LCA2LCAKKyAgICAxLCAyMjYsIDIwMiwgMiwgMjQ4LCAxNTQsIDIyLCAyMjYsIDExMSwgMjIsIDIyNCwgMTY3LCAyNiwgNiwgMSwgMjI2LCAyMDIsIAorICAgIDIsIDIyNCwgMTU1LCAyMiwgMjI1LCAxNzYsIDIyLCAyMjQsIDE2NywgMjYsIDYsIDEsIDIyNiwgMjAyLCAyLCAyNDgsIDE1NCwgCisgICAgMjIsIDIyNSwgMTc2LCAyMiwgMjI0LCAxNjcsIDI2LCA0LCAxLCAyNTQsIDE0NCwgMiwgMjEzLCAxMjAsIDI2LCA0LCAxLCAKKyAgICAyNTQsIDE0NCwgMiwgMjMxLCAyMzIsIDI2LCA0LCAxLCAyNTQsIDE0NCwgMiwgMjE0LCAxNCwgMjIsIDIxMCwgMjE5LCAyNiwgCisgICAgNCwgMSwgMjU0LCAxNDQsIDIsIDIxMCwgMjE5LCAyNiwgNCwgMSwgMjU0LCAxNDQsIDIsIDIyNiwgMTExLCAyMiwgMjEwLCAKKyAgICAyMTksIDI2LCA0LCAxLCAyNTQsIDE0NCwgMiwgMjI1LCAxNzUsIDI2LCA0LCAxLCAyNTQsIDE0NCwgMiwgMjI1LCAxNzYsIAorICAgIDIyLCAyMTAsIDIxOSwgMjYsIDYsIDEsIDI1NCwgMTQ0LCAyLCAyMTMsIDEyMCwgMjYsIDYsIDEsIDI1NCwgMTQ0LCAyLCAKKyAgICAyMzEsIDIzMiwgMjYsIDYsIDEsIDI1NCwgMTQ0LCAyLCAyMTQsIDEzLCAyNiwgNiwgMSwgMjU0LCAxNDQsIDIsIDIyNiwgCisgICAgMTEwLCAyNiwgNiwgMSwgMjU0LCAxNDQsIDIsIDIyNCwgMTY3LCAyNiwgMjM0LCAyLCAyNiwgMjI0LCAxNjcsIDI2LCAyMjQsIAorICAgIDE1NCwgMjYsIDIyNSwgMTc1LCAyNiwgMjQ3LCAyNTIsIDIyLCAyMjUsIDE3NSwgMjYsIDQsIDEsIDI0NSwgNjQsIDIsIDIxNCwgCisgICAgMTQsIDIyLCAyMTAsIDIxOSwgMjYsIDQsIDEsIDI0NSwgNjQsIDIsIDIxMCwgMjE5LCAyNiwgNCwgMSwgMjQ1LCA2NCwgMiwgCisgICAgMjI2LCAxMTEsIDIyLCAyMTAsIDIxOSwgMjYsIDQsIDEsIDI0NSwgNjQsIDIsIDIyNSwgMTc1LCAyNiwgNCwgMSwgMjQ1LCAKKyAgICA2NCwgMiwgMjI1LCAxNzYsIDIyLCAyMTAsIDIxOSwgMjYsIDYsIDEsIDI0NSwgMTAxLCAyLCAyMTQsIDEzLCAyNiwgNiwgMSwgCisgICAgMjQ1LCAxMDEsIDIsIDIyNiwgMTEwLCAyNiwgNiwgMSwgMjQ1LCA2NCwgMiwgMjE0LCAxMywgMjYsIDYsIDEsIDI0NSwgNjQsIAorICAgIDIsIDIyNiwgMTEwLCAyNiwgNiwgMSwgMjQ1LCA2NCwgMiwgMjI0LCAxNjcsIDI2LCAyMjQsIDE1NSwgMjIsIDIxNCwgMTMsIAorICAgIDI2LCAyMjQsIDE1NSwgMjIsIDIyNiwgMTEwLCAyNiwgMjI0LCAxNTUsIDIyLCAyMjUsIDE3NSwgMjYsIDQsIDEsIDIzNSwgCisgICAgMTg2LCAyLCAyMTMsIDEyMCwgMjYsIDQsIDEsIDIzNSwgMTg2LCAyLCAyMzEsIDIzMiwgMjYsIDQsIDEsIDIzNSwgMTg2LCAyLCAKKyAgICAyNDcsIDI1MiwgMjIsIDIxNCwgMTMsIDI2LCA0LCAxLCAyMzUsIDE4NiwgMiwgMjQ3LCAyNTIsIDIyLCAyMjYsIDExMCwgMjYsIAorICAgIDQsIDEsIDIzNSwgMTg2LCAyLCAyMjUsIDE3NSwgMjYsIDQsIDEsIDIzNSwgMTg2LCAyLCAyNDcsIDI1MiwgMjIsIDIyNSwgCisgICAgMTc1LCAyNiwgNiwgMSwgMjM1LCAxODYsIDIsIDIxMywgMTIwLCAyNiwgNiwgMSwgMjM1LCAxODYsIDIsIDIzMSwgMjMyLCAKKyAgICAyNiwgNiwgMSwgMjM1LCAxODYsIDIsIDIxNCwgMTMsIDI2LCA2LCAxLCAyMzUsIDE4NiwgMiwgMjI2LCAxMTAsIDI2LCAyNDgsIAorICAgIDE1NCwgMjIsIDIxNCwgMTMsIDI2LCAyNDgsIDE1NCwgMjIsIDIyNiwgMTEwLCAyNiwgMjQ4LCAxNTQsIDIyLCAyMjUsIDE3NSwgCisgICAgMjYsIDQsIDEsIDIxNCwgMTU4LCAyLCAyMTMsIDEyMCwgMjYsIDQsIDEsIDIxNCwgMTU4LCAyLCAyMzEsIDIzMiwgMjYsIDQsIAorICAgIDEsIDIxNCwgMTU4LCAyLCAyNDcsIDI1MiwgMjIsIDIxNCwgMTMsIDI2LCA0LCAxLCAyMTQsIDE1OCwgMiwgMjQ3LCAyNTIsIAorICAgIDIyLCAyMjYsIDExMCwgMjYsIDQsIDEsIDIyMywgMzgsIDIsIDIyNCwgMTU0LCAyNiwgNCwgMSwgMjIzLCAzOCwgMiwgMjQ4LCAKKyAgICAxNTMsIDI2LCA0LCAxLCAyMTQsIDE1OCwgMiwgMjI1LCAxNzUsIDI2LCA0LCAxLCAyMTQsIDE1OCwgMiwgMjQ3LCAyNTIsIAorICAgIDIyLCAyMjUsIDE3NSwgMjYsIDYsIDEsIDIxNCwgMTU4LCAyLCAyMTMsIDEyMCwgMjYsIDYsIDEsIDIxNCwgMTU4LCAyLCAKKyAgICAyMzEsIDIzMiwgMjYsIDYsIDEsIDIxNCwgMTU4LCAyLCAyMTQsIDEzLCAyNiwgNiwgMSwgMjE0LCAxNTgsIDIsIDIyNiwgCisgICAgMTEwLCAyNiwgNiwgMSwgMjIzLCAzOCwgMiwgMjQ4LCAxNTMsIDI2LCAyNDcsIDI1MiwgMjIsIDIxNCwgMTMsIDI2LCAyNDcsIAorICAgIDI1MiwgMjIsIDIyNiwgMTEwLCAyNiwgMjE0LCAxMywgMjYsIDQsIDEsIDIyNiwgMjAyLCAyLCAyMTQsIDE0LCAyMiwgMjEwLCAKKyAgICAyMTksIDI2LCA0LCAxLCAyMjYsIDIwMiwgMiwgMjEwLCAyMTksIDI2LCA0LCAxLCAyMjYsIDIwMiwgMiwgMjI2LCAxMTEsIAorICAgIDIyLCAyMTAsIDIxOSwgMjYsIDQsIDEsIDIyNiwgMjAyLCAyLCAyMjUsIDE3NSwgMjYsIDQsIDEsIDIyNiwgMjAyLCAyLCAKKyAgICAyMjUsIDE3NiwgMjIsIDIxMCwgMjE5LCAyNiwgNiwgMSwgMjI2LCAyMDAsIDIsIDIxNCwgMTMsIDI2LCA2LCAxLCAyMjYsIAorICAgIDIwMCwgMiwgMjI2LCAxMTAsIDI2LCA2LCAxLCAyMjYsIDIwMiwgMiwgMjE0LCAxMywgMjYsIDYsIDEsIDIyNiwgMjAyLCAyLCAKKyAgICAyMjYsIDExMCwgMjYsIDYsIDEsIDIyNiwgMjAyLCAyLCAyMjQsIDE2NywgMjYsIDIyNiwgMTEwLCAyNiwgMjQ4LCAxNTMsIAorICAgIDI0NSwgMTUxLCAyMjQsIDI3LCAyNDUsIDE2MCwgMjI0LCAyNywgMjQ1LCAxNTEsIDIxOSwgMTgsIDI0NSwgMTYwLCAyMTksIAorICAgIDE4LCAyMTYsIDE0MSwgMjE5LCAxOCwgMjQ0LCA5LCAyMTksIDE4LCAyMTksIDEyMywgMjE5LCAxOCwgMjQ0LCAxMTIsIDIxOSwgCisgICAgMTgsIDIyNCwgMTQxLCAyMTksIDE4LCAyMTYsIDE3MCwgMjE5LCAxOCwgMjQyLCAzNSwgMjE5LCAxOCwgMjEwLCA4NywgMjExLCAKKyAgICAyNDUsIDIxOSwgMTgsIDIxMCwgODcsIDIxMSwgMjQ1LCAyMjgsIDY3LCAyMTAsIDg3LCAyMTEsIDI0NSwgMjM1LCA2MywgCisgICAgMjMzLCAzOCwgNzgsIDIyMiwgMjQzLCA3OCwgMjQwLCAxNjgsIDIyOCwgNjgsIDI0MCwgMTY4LCAyNDQsIDExMiwgMjQ4LCAKKyAgICAxNTYsIDI0NSwgMTUxLCAyNDgsIDE1NiwgMjQ1LCAxNjAsIDI0OCwgMTU2LCAyMDMsIDEzMCwgNTIsIDY3LCAyMzIsIDIxMywgCisgICAgNTIsIDEyMSwgMjMyLCAyMTMsIDQzLCAyMTksIDE1NSwgMjIzLCAyNTQsIDc4LCA0NCwgMjE5LCAxNTUsIDIyMywgMjU0LCAKKyAgICA3OCwgMjE5LCAxNTUsIDIzMiwgMTA5LCAyMjMsIDI1NCwgNzgsIDIxOSwgMTU1LCAyNDEsIDE2MywgMjIzLCAyNTQsIDc4LCAKKyAgICA0MywgNTIsIDIyMywgMjU0LCA3OCwgNDQsIDUyLCAyMjMsIDI1NCwgNzgsIDUyLCAyMzIsIDEwOSwgMjIzLCAyNTQsIDc4LCAKKyAgICA1MiwgMjQxLCAxNjMsIDIyMywgMjU0LCA3OCwgMjQ4LCAyMDUsIDUyLCAyNDgsIDIwNSwgMjUxLCAxMTMsIDIxNSwgMjIyLCAKKyAgICAyNTEsIDExMywgMTIzLCA1OSwgMjMzLCA1NiwgMTEzLCA1OSwgMjMzLCA1NiwgMjAzLCAyNDUsIDE2MywgMjQwLCAxNjYsIAorICAgIDIyNSwgMTAsIDIzMiwgMjE0LCAyMjAsIDEzNywgMjI2LCAxNSwgMjIwLCAxMzcsIDIzMywgMzgsIDI0NSwgMTU4LCAyMjIsIAorICAgIDI0MywgMjQ1LCAxNTgsIDIyNCwgMjQ2LCAyNDcsIDE5NiwgMjQ0LCAxOSwgMjMzLCAzOCwgMjI2LCAxMTcsIDIyMiwgMjQzLCAKKyAgICAyMjYsIDExNywgMjI5LCAxOTQsIDIyOCwgNzMsIDIxOSwgMTgsIDIyNSwgMTgzLCAyMzAsIDE5MywgNTAsIDIyNSwgMTgzLCAKKyAgICAyMTYsIDI0OCwgMjE2LCAxNDgsIDUwLCAyMjQsIDE5MCwgNTIsIDIyNCwgMTkwLCAyMTUsIDIxMSwgMjI0LCAxOTAsIDIyMywgCisgICAgNDksIDIyNCwgMTkwLCAyMjMsIDQ5LCA1MiwgMjI0LCAxOTAsIDIyMywgNDksIDIxNSwgMjExLCAyMjQsIDE5MCwgMjUwLCAKKyAgICAyMzgsIDIxOSwgMTU1LCAyMzMsIDQyLCAyNTQsIDExMCwgMjIzLCAyNTQsIDc4LCAyMTksIDE1NSwgMjIyLCAyNDcsIDI1NCwgCisgICAgMTEwLCAyMjMsIDI1NCwgNzgsIDIyMywgMTA3LCA3OCwgNTIsIDI0NSwgMzEsIDc4LCAyMzUsIDIwMSwgMjI2LCAxMTksIAorICAgIDIxNCwgMTgwLCAxMzUsIDIxNiwgMTExLCAyNTAsIDIzOSwgMjM1LCAyMTYsIDIyNSwgMTAsIDI1MywgMjE0LCAyNDAsIDE2OSwgCisgICAgMjUxLCAxMTMsIDI0NCwgMiwgMjE5LCA5NSwgNDMsIDQyLCAyNTEsIDE1OCwgMiwgMjI0LCA3LCA0NCwgNDIsIDI1MSwgMTU4LCAKKyAgICAyLCAyMjQsIDcsIDUyLCAyMjQsIDEzLCA3OCwgMjI0LCAxMywgMjQ1LCAzMSwgNzgsIDI0NSwgMzEsIDIyNCwgMTMsIDc4LCAKKyAgICAyMTYsIDcwLCA1LCAyNDUsIDY1LCAyMjMsIDQ5LCAyMjUsIDY4LCA1MCwgODUsIDE0MCwgMjUxLCAxMTMsIDg1LCA5NywgCisgICAgMjUxLCAxMTMsIDEyMSwgMjUzLCAyMTYsIDIyMywgNDksIDIyMCwgMTUwLCAyNTAsIDEsIDIxNCwgMTYzLCAxMTMsIDI1MywgCisgICAgMjE1LCAyNTQsIDE1OCwgMjEzLCAxODgsIDI0OSwgMjE3LCAyMzAsIDE4MiwgNTAsIDIxNywgMjM0LCAyNDgsIDE1NiwgMjM1LCAKKyAgICAxOTMsIDIxNCwgMTgwLCAyNDQsIDUyLCAyMjQsIDE0MSwgNzgsIDEzNCwgNTksIDIyNCwgMTQwLCAyMjQsIDI0LCAyMjQsIAorICAgIDE5MCwgMjQ0LCAxMSwgNTksIDIyNCwgMTQwLCAyNDQsIDgxLCA1OSwgMjI0LCAxNDAsIDExMywgNTksIDIyNCwgMTQwLCAKKyAgICAyNDQsIDExLCA1OSwgNzgsIDI0NiwgMTE4LCAyNDksIDEzMCwgMjE1LCAyMjEsIDY3LCAyNDQsIDExLCAyNDcsIDExOCwgCisgICAgMjMxLCA4MiwgMTEsIDIxOSwgMTgsIDIxMSwgMjA5LCAyMzUsIDYzLCAyNDMsIDIyNywgMjU0LCA1MiwgMjM1LCAxOTEsIAorICAgIDIxNiwgODUsIDIzNSwgMTkxLCAyMjAsIDEzNywgMjM1LCAxOTEsIDIyNSwgMjIsIDIzNSwgMjI4LCAyMTcsIDE4MiwgMjE3LCAKKyAgICAyNTEsIDI1NSwgNSwgMjE3LCAxODIsIDIxNywgMjUxLCAyMzUsIDIyOCwgMTAsIDI0NCwgMjAsIDIyMCwgODAsIDI1NSwgNSwgCisgICAgMTAsIDI0NCwgMjAsIDIyMCwgODAsIDIyOSwgMTg5LCAyMSwgMjIwLCA4MSwgMjI4LCA2OSwgMjEsIDIyMCwgODEsIDIxOCwgCisgICAgMjMsIDIxMCwgODYsIDIxOCwgMjMsIDcsIDQsIDEsIDczLCAyMTgsIDIzLCAxNjEsIDIxOCwgMjMsIDE4OSwgMjE4LCAyMywgCisgICAgMTk0LCAyMTgsIDIzLCAxOTgsIDIxOCwgMjMsIDE5NSwgMjE4LCAyMywgMjAwLCAyMTgsIDIzLCA5NiwgNTAsIDIxOCwgMjMsIAorICAgIDIzMCwgMTgxLCAyMTgsIDIzLCAyNDUsIDk4LCA1MCwgMjE4LCAyMywgNDMsIDIyNiwgMywgMjE4LCAyMywgNDQsIDIyNiwgMywgCisgICAgMjE4LCAyMywgNywgNCwgMSwgMjMwLCAyNSwgMjE4LCA2NSwgMjEwLCA4NiwgMjE4LCA2NSwgMTEwLCAyMTgsIDY1LCAxMDUsIAorICAgIDIxOCwgNjUsIDE1OCwgMjE4LCA2NSwgMTYxLCAyMTgsIDY1LCAxODksIDIxOCwgNjUsIDE5NCwgMjE4LCA2NSwgMTk4LCAKKyAgICAyMTgsIDY1LCAxOTUsIDIxOCwgNjUsIDIwMCwgMjE4LCA2NSwgOTYsIDUwLCAyMTgsIDY1LCAyMzAsIDE4MSwgMjE4LCA2NSwgCisgICAgMjQ1LCA5OCwgNTAsIDIxOCwgNjUsIDQzLCAyMjYsIDMsIDIxOCwgNjUsIDQ0LCAyMjYsIDMsIDcsIDIxOCwgNjUsIDQsIDEsIAorICAgIDYxLCA3LCAyMTgsIDY1LCA0LCAxLCA3NSwgNywgMjE4LCA2NSwgNCwgMSwgNzYsIDcsIDIxOCwgNjUsIDQsIDEsIDIxMSwgCisgICAgMTc4LCA3LCAyMTgsIDY1LCA0LCAxLCAyMjEsIDE5NSwgNywgMjE4LCA2NSwgNCwgMSwgMjQyLCA2MCwgNywgMjE4LCA2NSwgCisgICAgNCwgMSwgMjM1LCAyMywgNywgMjE4LCA2NSwgNCwgMSwgMTU2LCA3LCAyMTgsIDY1LCA0LCAxLCAxOTMsIDcsIDIxOCwgNjUsIAorICAgIDQsIDEsIDIzMCwgMjUsIDcsIDIxOCwgNjUsIDQsIDEsIDIyNiwgMTA1LCA3LCAyMTgsIDY1LCA0LCAxLCAyMjIsIDkxLCA3LCAKKyAgICAyMTgsIDY1LCA0LCAxLCAyMTcsIDE1MiwgMjQ1LCA0NiwgNTAsIDI0OSwgMjI3LCA1MCwgMjQ5LCAxMTcsIDUwLCAyNDMsIAorICAgIDI1MSwgMjQzLCAyNTQsIDUwLCAyMzIsIDE5OCwgNTAsIDIzMCwgMTk0LCA1MCwgMjI5LCAyMTAsIDUwLCAyMjUsIDE2MiwgCisgICAgNTAsIDIyMiwgMTE4LCA1MCwgMjExLCAyMTcsIDUwLCAxNjYsIDIyMCwgNDksIDUwLCAyNDcsIDEyNywgNTAsIDI0NSwgNDcsIAorICAgIDUwLCAyMzQsIDc2LCA1MCwgMjE1LCAxMTIsIDUwLCAyNDYsIDEwMSwgNTAsIDI0MywgNDAsIDIyNSwgMTkzLCA1MCwgMjI1LCAKKyAgICAxNjAsIDUwLCAyNDIsIDEwOSwgNTAsIDI1MywgMTgyLCA1MCwgMjQwLCAyMjgsIDUwLCAyNTAsIDE4NSwgNTAsIDIzMiwgCisgICAgMTkxLCAyMTYsIDMsIDUwLCAyMTksIDAsIDUwLCAyMTYsIDI0NSwgNTAsIDIzNSwgMjQxLCAyMjIsIDExOCwgNTAsIDM4LCAKKyAgICA0MywgMjQxLCAyNTUsIDQ4LCAzOCwgNDQsIDI0MSwgMjU1LCA0OCwgMzgsIDE5OSwgNjcsIDIzMiwgMjE0LCAyMjYsIDEyMCwgCisgICAgMzgsIDIxOSwgMjUxLCA2NywgMjMyLCAyMTQsIDIyNiwgMTIwLCAzOCwgMjU0LCA4OCwgODAsIDQ4LCAzOCwgMjUwLCAyLCAKKyAgICA4MCwgNDgsIDM4LCA0MywgODAsIDQ4LCAzOCwgNDQsIDgwLCA0OCwgMzgsIDIyMiwgMjM0LCAyMjYsIDEyMCwgMzgsIDI1MCwgCisgICAgMiwgMjIyLCAyMzQsIDIyNiwgMTIwLCAzOCwgMjU0LCA4OCwgMjIyLCAyMzQsIDIyNiwgMTIwLCAzOCwgMTM0LCAxNzAsIDQ4LCAKKyAgICAzOCwgMjQ0LCAxMSwgMTcwLCA0OCwgMzgsIDI0NSwgMTQ2LCAyNTAsIDM1LCAzOCwgMjQ1LCAxNDYsIDIxOCwgMjM0LCAzOCwgCisgICAgMjQ1LCAxNDYsIDI0NywgMjQ4LCAzOCwgMjQ1LCAxNDYsIDI1MCwgMzYsIDI1MiwgMTgwLCAzOCwgNDMsIDQ0LCA4MCwgNDgsIAorICAgIDM4LCAyNDUsIDE0NiwgMjIxLCAxODgsIDM4LCAyNDUsIDE0NiwgMjM0LCAxMzUsIDM4LCAyNDUsIDE0NiwgMjE0LCAxNTUsIAorICAgIDIyNSwgNywgMjE1LCAyMjUsIDM4LCAyMjMsIDUwLCAyMTksIDQ3LCAyMjYsIDEyMCwgMzgsIDUyLCA2NywgMjE4LCAxMDMsIAorICAgIDIyNiwgMTIwLCAzOCwgMjU0LCA5OCwgODcsIDM4LCAyMTUsIDIxMSwgMjE0LCAxODIsIDM4LCAyMTEsIDI0NywgMjUxLCAKKyAgICAxNDAsIDQ4LCAzOCwgMTQwLCA4MCwgMjI2LCAxMjAsIDM4LCAxOTksIDUyLCAyMTksIDQ3LCAyMjYsIDEyMCwgMzgsIDk3LCAKKyAgICAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDI0NiwgMTAzLCAzOCwgMTQwLCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDI0NiwgCisgICAgMTAzLCAzOCwgNDMsIDgwLCA1MSwgMzgsIDQ0LCA4MCwgNTEsIDM4LCAyNTMsIDIxNywgNDgsIDI1NSwgMTEsIDIyNiwgMjMxLCAKKyAgICAyNTQsIDI1MSwgMjE2LCA0MiwgMjE2LCAxOTYsIDIxOCwgNzQsIDEzOSwgNiwgMjUxLCA2NiwgMjQ4LCA3MSwgMjUwLCAxNzgsIAorICAgIDI1MCwgMTc1LCAyMzIsIDIxNCwgODcsIDI1MCwgMjQwLCAyMjYsIDIzMSwgMjUxLCAyNiwgMjE0LCAxODksIDI0NSwgNDgsIAorICAgIDI0OSwgMTkxLCAyMjEsIDE4NSwgMjQ4LCA3MSwgMjQ0LCAxNzksIDExOSwgNCwgMjQzLCAyMDIsIDExOSwgNiwgMjQyLCA2MCwgCisgICAgMjUxLCAyMTksIDYsIDI0MiwgNjAsIDEzOSwgNiwgMjQyLCA2MCwgMjI1LCAzNywgMjQ5LCAxOTEsIDIyNSwgMzcsIDI0OSwgCisgICAgMTkyLCAxMTcsIDExMywgMjI1LCAxMDgsIDExOSwgNiwgNzMsIDI1MSwgMjE5LCA2LCA3MywgMTE5LCA2LCAxNTYsIDExOSwgCisgICAgNCwgMTU2LCAyMzMsIDE0OSwgNTcsIDI1MiwgMTQxLCA4NywgMTM5LCA2LCAyMzAsIDI1LCAyMjcsIDE5NiwgNTAsIDIxOSwgCisgICAgMzEsIDIyMywgMTE5LCAyNDksIDE2MiwgMTE5LCA2LCAyMjYsIDEwNSwgMTM5LCA2LCAyMjYsIDEwNSwgMTM5LCA2LCAyMjQsIAorICAgIDk2LCAxMTksIDYsIDE1MywgMjUxLCAyMTksIDYsIDE1MywgMTM5LCA2LCAxNTMsIDIyNCwgMTk2LCAyMTcsIDcxLCAyMjMsIAorICAgIDYyLCAyMjAsIDEzMiwgNzgsIDIxNywgMSwgNTAsIDIxNSwgMjUzLCAxNjQsIDUwLCAyMTMsIDI0MCwgMTM5LCA2LCAyMTAsIAorICAgIDE1OSwgMjI2LCAxMzMsIDUwLCAyMjYsIDIyMSwgNTAsIDIzNSwgMTkzLCAyMjYsIDIyMSwgNTAsIDI1MSwgMjE5LCA2LCAKKyAgICAyMTAsIDE1OSwgMjE1LCA5NCwgMjYsIDQsIDEsIDIzNSwgMTg1LCAyMzQsIDE3MywgNTAsIDI1NCwgMTA3LCA1MCwgMTE5LCAKKyAgICA2LCAyNTMsIDE1OCwgMjUxLCAyMTksIDYsIDI1MSwgNjYsIDI0NSwgNjgsIDg3LCAxMTksIDQsIDc1LCAxMTksIDYsIDc1LCAKKyAgICAxMTksIDYsIDI0NSwgNiwgMjE1LCA5NCwgNiwgMjQ1LCA2LCAxMTksIDYsIDE5MywgMTE5LCA0LCA3NiwgMTEyLCA4NywgCisgICAgMjUyLCAyOSwgODcsIDI0MiwgMjAyLCA4NywgMjQ4LCAxOTAsIDg3LCAyMzUsIDIzMiwgMjE5LCAyOSwgMjIyLCAxODcsIDYsIAorICAgIDIyNCwgOTYsIDI0NCwgMTgyLCA1MCwgMTM5LCA0LCAyMjUsIDEwOCwgMTM5LCA0LCAyNDMsIDEwNywgMTM5LCA2LCAyNDMsIAorICAgIDEwNywgMTM5LCA2LCAyMjUsIDEwOCwgMTM5LCAyMzAsIDI0LCAyMTgsIDQwLCAyMTUsIDk0LCAzNSwgNiwgMjQzLCAyMDIsIAorICAgIDIxNSwgOTQsIDM1LCA2LCAxNTYsIDIyMywgNDksIDM1LCA2LCAxNTYsIDIxNSwgOTQsIDM1LCA2LCAyMTEsIDExNywgMTM5LCAKKyAgICAzMiwgNiwgMjQ5LCA2MCwgMTM5LCAzMiwgNCwgMjQ5LCA2MCwgMTM5LCAzMiwgNCwgNzUsIDEzOSwgMzIsIDQsIDczLCAxMzksIAorICAgIDMyLCA0LCAyMzUsIDE0NCwgMjI0LCAxNzAsIDIzMiwgMjEzLCAyMTUsIDk0LCAyNTQsIDEyNiwgMjI1LCAxODMsIDUwLCAKKyAgICAyNTQsIDE4MCwgMjE1LCA5NCwgNCwgMjQ1LCA2LCAxNiwgMzEsIDIyMSwgMjUyLCAyMTksIDI5LCAyMTIsIDExNCwgMjQ0LCAKKyAgICAyLCAxMjMsIDIyMCwgMTE4LCAyMTIsIDExNCwgMjQ0LCAyLCAxMjMsIDIyOCwgMTk0LCAyMTIsIDExNCwgMjQ0LCAyLCAxMjMsIAorICAgIDIxNiwgMjQxLCAyMTIsIDExNCwgMjQ0LCAyLCAxMjMsIDIxNiwgMTY4LCAyMTIsIDExNCwgMjQ0LCAyLCAxMTMsIDIxNiwgCisgICAgMTY2LCAyMTIsIDExNCwgMjQ0LCAyLCAxMjMsIDI0NCwgMTE3LCAyMTIsIDExNCwgMjQ0LCAyLCAxMTMsIDI0NCwgMTE2LCAKKyAgICAyMTIsIDExNCwgMjQ0LCAyLCAxMzQsIDI0NCwgMTE2LCAyMTIsIDExNCwgMjQ0LCAyLCAyNDQsIDExLCAyNDQsIDExNiwgCisgICAgMjEyLCAxMTQsIDI0NCwgMiwgMTIzLCAyMTksIDExNSwgMjEyLCAxMTQsIDI0NCwgMiwgMjQ0LCA4MSwgMjE5LCAxMTMsIAorICAgIDIxMiwgMTE0LCAyNDQsIDIsIDEyMywgMjQ1LCAxODgsIDIxMiwgMTE0LCAyNDQsIDIsIDEzNCwgMjQ1LCAxODYsIDIxMiwgCisgICAgMTE0LCAyNDQsIDIsIDI0NCwgODEsIDI0NSwgMTg2LCAyMTIsIDExNCwgMjQ0LCAyLCAyMjAsIDEyMiwgMjQ1LCAxODYsIAorICAgIDI0NCwgMiwgMjI3LCAxOTcsIDExMCwgMjIyLCAxOTgsIDIyNywgMTk4LCAxMTAsIDIyMiwgMTk4LCAyMjcsIDE5OCwgMTA1LCAKKyAgICAyMjIsIDE5OCwgMjI3LCAxOTgsIDE1OCwgMjIyLCAxOTgsIDIyNywgMTk4LCAxNjEsIDIyMiwgMTk4LCAyMjcsIDE5OCwgCisgICAgMTg5LCAyMjIsIDE5OCwgMjI3LCAxOTgsIDE5NCwgMjIyLCAxOTgsIDIyNywgMTk4LCAxOTgsIDIyMiwgMTk4LCAyMjcsIAorICAgIDE5OCwgMTk1LCAyMjIsIDE5OCwgMjI3LCAxOTgsIDIwMCwgMjIyLCAxOTgsIDIyNywgMTk4LCAyMTYsIDI0NywgMjIyLCAKKyAgICAxOTgsIDIyNywgMTk4LCAyNDUsIDE2NywgMjIyLCAxOTgsIDIyNywgMTk4LCAyMTUsIDc2LCAyMjIsIDE5OCwgMjI3LCAxOTgsIAorICAgIDI0NCwgMTE0LCAyMjIsIDE5OCwgMjI3LCAxOTgsIDEyMywgMjQwLCAyMTAsIDIyMiwgMTk4LCAyMjcsIDE5OCwgMjQ0LCA4MSwgCisgICAgMjQwLCAyMTAsIDIyMiwgMTk4LCAyMjcsIDE5OCwgMTIzLCAyMTYsIDE0NywgNCwgMjIyLCAxOTgsIDIyNywgMTk4LCAxMTAsIAorICAgIDQsIDIyMiwgMTk4LCAyMjcsIDE5OCwgMTA1LCA0LCAyMjIsIDE5OCwgMjI3LCAxOTgsIDE1OCwgNCwgMjIyLCAxOTgsIDIyNywgCisgICAgMTk4LCAxNjEsIDQsIDIyMiwgMTk4LCAyMjcsIDE5OCwgMTg5LCA0LCAyMjIsIDE5OCwgMjI3LCAxOTgsIDE5NCwgNCwgMjIyLCAKKyAgICAxOTgsIDIyNywgMTk4LCAxOTgsIDQsIDIyMiwgMTk4LCAyMjcsIDE5OCwgMTk1LCA0LCAyMjIsIDE5OCwgMjI3LCAxOTgsIAorICAgIDIwMCwgNCwgMjIyLCAxOTgsIDIyNywgMTk4LCAyMTYsIDI0NywgNCwgMjIyLCAxOTgsIDIyNywgMTk4LCAyNDUsIDE2NywgNCwgCisgICAgMjIyLCAxOTgsIDIyNywgMTk4LCAyMTUsIDc2LCA0LCAyMjIsIDE5OCwgMjI3LCAxOTgsIDI0NCwgMTE0LCA0LCAyMjIsIAorICAgIDE5OCwgMjI3LCAxOTgsIDEyMywgMjQwLCAyMTAsIDQsIDIyMiwgMTk4LCAyMjcsIDE5OCwgMjQ0LCA4MSwgMjQwLCAyMTAsIAorICAgIDQsIDIyMiwgMTk4LCAyMjcsIDE5OCwgMTIzLCAyMTYsIDE0NywgMjIyLCAxOTgsIDIyNywgMTk4LCAxMjMsIDIxNiwgMTQ4LCAKKyAgICAyNTEsIDY3LCAyNDksIDYwLCAyMjIsIDE5OCwgMjI3LCAxOTgsIDI0NCwgODEsIDIxNiwgMTQ3LCAyMjIsIDE5OCwgMjI3LCAKKyAgICAxOTgsIDIxNiwgMjQ4LCAyMTYsIDE0NywgMjIyLCAxOTgsIDIyNywgMTk4LCAyMjMsIDQ5LCAxMjMsIDI0MCwgMjEwLCA3LCAKKyAgICA0LCAxLCAyMjMsIDQ5LCAyNTEsIDY2LCAyMjIsIDE5OCwgMjI3LCAxOTgsIDIxOSwgMTI1LCAyMzMsIDc4LCAxNywgMjIyLCAKKyAgICAxOTgsIDIyNywgMTk4LCAyNDQsIDExNSwgMjQ1LCAyMjYsIDE3LCAyMjIsIDE5OCwgMjI3LCAxOTgsIDI0NCwgMTE1LCAyMTYsIAorICAgIDE0NywgMjIyLCAxOTgsIDIyNywgMTk4LCAxMjMsIDI0MCwgMjExLCAyMTYsIDE0NywgMjEyLCAxMTQsIDI0NCwgMiwgMjEwLCAKKyAgICA4NywgMjE2LCAxNjYsIDE0MCwgNzQsIDIxNCwgMTUzLCA3NCwgOTcsIDc0LCAyNDYsIDEwNCwgNzQsIDQzLCA0NCwgNzQsIAorICAgIDEyMCwgMTI0LCA3NCwgMjI4LCA1NiwgMjEyLCA5LCA3NCwgMjI4LCA1NiwgMjQ1LCAyMjAsIDc0LCAyMTksIDI4LCAyNDUsIAorICAgIDIyMCwgNzQsIDIxOSwgMjgsIDIxMiwgOSwgNzQsIDE0MCwgODAsIDIsIDkxLCA5NywgODAsIDIsIDkxLCAxNDAsIDIxMiwgCisgICAgMzYsIDc0LCA5NywgMjEyLCAzNiwgNzQsIDE0MCwgMTEzLCAyNDEsIDIzNCwgNzQsIDIxNCwgMTUzLCAxMTMsIDI0MSwgMjM0LCAKKyAgICA3NCwgOTcsIDExMywgMjQxLCAyMzQsIDc0LCAyNDYsIDEwNCwgMTEzLCAyNDEsIDIzNCwgNzQsIDE0MCwgODAsIDIsIDIxNywgCisgICAgNzcsIDk3LCA4MCwgMiwgMjE3LCA3NywgMTQwLCA4MCwgMjQzLCAyNDMsIDEzMCwgMjE0LCAxNTMsIDgwLCAyNDMsIDI0MywgCisgICAgMTMwLCA5NywgODAsIDI0MywgMjQzLCAxMzAsIDI0NiwgMTA0LCA4MCwgMjQzLCAyNDMsIDEzMCwgMTIwLCAxMjQsIDgwLCAyLCAKKyAgICAyNTIsIDEyNywgMTQwLCA4MCwgMiwgMTAzLCA5NywgODAsIDIsIDEwMywgMTQwLCA4MCwgMiwgMjMyLCAxMjMsIDk3LCA4MCwgCisgICAgMiwgMjMyLCAxMjMsIDQzLCA0NCwgMjEyLCAzNiwgNzQsIDQzLCA0NCwgODAsIDIsIDkxLCAyNDYsIDEwNCwgMjEwLCAzNSwgCisgICAgNzQsIDIxNCwgMTUzLCA4MCwgMiwgMjE2LCA3NywgMjMzLCAzNywgMjE0LCAxNTMsIDgwLCAyLCAyMTYsIDc3LCAyMjIsIAorICAgIDI0MSwgMjQ2LCAxMDQsIDgwLCAyLCAyMTYsIDc3LCAyMzMsIDM3LCAyNDYsIDEwNCwgODAsIDIsIDIxNiwgNzcsIDIyMiwgCisgICAgMjQxLCA5NywgODAsIDIsIDI0OSwgMTYxLCAyNDYsIDEwMywgMjQ2LCAxMDQsIDgwLCAyLCAyNDksIDE2MSwgMjMzLCAzNywgCisgICAgMjU0LCA4OCwgMjE2LCAxNCwgMjIwLCAxNTMsIDc0LCAyNTAsIDIsIDIxNiwgMTQsIDIyMCwgMTUzLCA3NCwgMjI4LCA1NiwgCisgICAgMjEyLCA5LCA4MCwgMjE2LCA0MiwgMTk5LCAxMzAsIDE0MCwgODAsIDIxNiwgNDIsIDI1MiwgMTQxLCAxMTcsIDk3LCA4MCwgCisgICAgMjE2LCA0MiwgMTMwLCAyNTQsIDg4LCAyMDQsIDI1MCwgMzYsIDc0LCAyNTAsIDIsIDIwNCwgMjUwLCAzNiwgNzQsIDE0MCwgCisgICAgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAyMTQsIDE1MiwgMTQwLCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDI0NiwgMTAzLCAKKyAgICAyMTQsIDE1MywgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAyMjIsIDI0MSwgMjE0LCAxNTMsIDI0MSwgMjU1LCAyLCAyNTIsIAorICAgIDEzOSwgMjMzLCAzNywgOTcsIDI0MSwgMjU1LCAyLCAyNTIsIDEzOSwgMjE0LCAxNTIsIDk3LCAyNDEsIDI1NSwgMiwgMjUyLCAKKyAgICAxMzksIDI0NiwgMTAzLCAyNDYsIDEwNCwgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAyMjIsIDI0MSwgMjQ2LCAxMDQsIDI0MSwgCisgICAgMjU1LCAyLCAyNTIsIDEzOSwgMjMzLCAzNywgOTcsIDgwLCAxMTcsIDE0MCwgNzQsIDIxNCwgMTUzLCA4MCwgMTQwLCA2NCwgCisgICAgMjQ2LCAxMDQsIDc0LCAxNDAsIDgwLCAxMTcsIDk3LCA3NCwgMTQwLCAyMjYsIDcwLCAyNTMsIDI0NywgMjE0LCAxNTMsIAorICAgIDIyNiwgNzAsIDI1MywgMjQ3LCA5NywgMjI2LCA3MCwgMjUzLCAyNDcsIDI0NiwgMTA0LCAyMjYsIDcwLCAyNTMsIDI0NywgCisgICAgMTQwLCAyNDEsIDI1NSwgMTE3LCA5NywgMjQxLCAyNTQsIDk3LCAyNDEsIDI1NSwgMTE3LCAxNDAsIDI0MSwgMjU0LCAxNDAsIAorICAgIDUyLCA4MCwgMiwgOTEsIDQzLCA0NCwgNTIsIDgwLCAyLCA5MSwgOTcsIDUyLCA4MCwgMiwgOTEsIDE0MCwgNTIsIDc0LCAKKyAgICAyMTQsIDE1MywgNTIsIDc0LCA5NywgNTIsIDc0LCAyNDYsIDEwNCwgNTIsIDc0LCA0MywgNDQsIDUyLCA3NCwgMTIwLCAxMjQsIAorICAgIDUyLCA3NCwgMjI4LCA1NiwgMjEyLCA5LCA1MiwgNzQsIDIyOCwgNTYsIDI0NSwgMjIwLCA1MiwgNzQsIDIxOSwgMjgsIDI0NSwgCisgICAgMjIwLCA1MiwgNzQsIDIxOSwgMjgsIDIxMiwgOSwgNTIsIDc0LCAxNDAsIDIxNSwgMjExLCA3NCwgOTcsIDIxNSwgMjExLCAKKyAgICA3NCwgMTQwLCAyMTgsIDIzMCwgNzQsIDk3LCAyMTgsIDIzMCwgNzQsIDIxNCwgMTUzLCA4MCwgMiwgNTIsIDkxLCAyNDYsIAorICAgIDEwNCwgODAsIDIsIDUyLCA5MSwgMTQwLCAyNDgsIDE1NSwgNzQsIDIxNCwgMTUzLCAyNDgsIDE1NSwgNzQsIDk3LCAyNDgsIAorICAgIDE1NSwgNzQsIDI0NiwgMTA0LCAyNDgsIDE1NSwgNzQsIDE0MCwgODAsIDIxNiwgNDIsIDEzMCwgOTcsIDgwLCAyMTYsIDQyLCAKKyAgICAxMzAsIDE0MCwgNzEsIDc0LCAyMTQsIDE1MywgNzEsIDc0LCA5NywgNzEsIDc0LCAyNDYsIDEwNCwgNzEsIDc0LCAyMTQsIAorICAgIDE1MywgNzEsIDgwLCAyNDMsIDI0MywgMTMwLCAyMTQsIDE1MywgNzEsIDgwLCAyMjYsIDE5NywgMjI1LCAyMTQsIDIxNCwgCisgICAgMTUzLCA3MSwgODAsIDIyNiwgMTk3LCAyMjUsIDIxNSwgMiwgMjAzLCAxMzAsIDIxNCwgMTUzLCA3MSwgODAsIDIyNiwgMTk3LCAKKyAgICAyMjUsIDIxNSwgMiwgNjcsIDEzMCwgMjE0LCAxNTMsIDcxLCA1MiwgNzQsIDIxNCwgMTUzLCA3MSwgNTIsIDgwLCAyMjYsIAorICAgIDE5NywgMjI1LCAyMTQsIDk3LCA3MSwgODAsIDI0MywgMjQzLCAyMTIsIDU2LCAyMjgsIDU2LCAyMTIsIDksIDgwLCAyMTYsIAorICAgIDQyLCAyNDksIDE2MCwgMjE5LCAyOCwgMjQ1LCAyMjAsIDgwLCAyMTYsIDQyLCAyNDksIDE2MCwgMTIwLCAxMjQsIDcxLCA3NCwgCisgICAgNDQsIDgwLCAyLCA0LCAyNTAsIDM1LCAyNDYsIDEwNCwgODAsIDE0MCwgNjQsIDIxNCwgMTUzLCA3NCwgMTM0LCA5NywgMjUzLCAKKyAgICAyNDcsIDE0MCwgODAsIDIsIDY3LCA5MSwgOTcsIDgwLCAyLCA2NywgOTEsIDQzLCA0NCwgODAsIDIsIDY3LCA5MSwgMTQwLCAKKyAgICA4MCwgMiwgNTIsIDY3LCA5MSwgOTcsIDgwLCAyLCA1MiwgNjcsIDkxLCA0MywgNDQsIDgwLCAyLCA1MiwgNjcsIDkxLCAxNDAsIAorICAgIDIyNiwgMTczLCA3NCwgOTcsIDIyNiwgMTczLCA3NCwgNDMsIDQ0LCAyMjYsIDE3MywgNzQsIDMxLCAyNTQsIDE1NCwgMjQ5LCAKKyAgICAyMTQsIDIyNSwgMjUzLCAyNDcsIDIzMywgMjE2LCAxODcsIDI0NSwgMjcsIDIxNiwgMTg3LCAyNDcsIDEzOCwgMjI4LCA1MiwgCisgICAgMjQ1LCAyOCwgMjQ1LCAxNTIsIDIyMCwgMTI3LCAyMzUsIDI0NSwgMjI5LCAyMjEsIDI0NSwgMTcwLCAyMjYsIDIzMSwgMjI4LCAKKyAgICA1MiwgMjU0LCAxMjQsIDI0NSwgMTcwLCAyMjYsIDIzMSwgNCwgMjQ1LCAxNzAsIDIyNiwgMjMxLCAyNDksIDE4NiwgMjUzLCAKKyAgICAyMzgsIDIzMSwgNjIsIDI0NywgMTM4LCAyMjgsIDUyLCAyNDksIDE4OCwgMjUzLCAyMzgsIDIzMSwgNjIsIDQsIDI0OSwgCisgICAgMTg2LCAyNTMsIDIzOCwgMjMxLCA2MiwgMjQ1LCAxNDMsIDY0LCAyMjQsIDE3MiwgMjMwLCAyNCwgMjI0LCAxODAsIDIzMCwgCisgICAgMjQsIDI0OSwgMTY1LCAyMzAsIDI0LCAyMTgsIDQwLCAyMzAsIDE4MiwgNTAsIDIzMCwgMTgwLCA1MCwgNTksIDIyNSwgMjIsIAorICAgIDI0NywgMTY5LCAyMTksIDk1LCAyMjAsIDEyOCwgMjMwLCAxODEsIDI1MywgMjE3LCAyMjYsIDE2NywgMjIyLCAyMzQsIDIyNiwgCisgICAgMTY3LCAyNTEsIDExNCwgMjI2LCAxNjcsIDQyLCAyMjIsIDE5MywgMjQ5LCAxMDksIDIyMiwgMTkzLCAyNDQsIDQsIDIyMiwgCisgICAgMTkzLCAyMjQsIDE2OCwgMTExLCAyMzUsIDIzNCwgNDQsIDI1NCwgMTA5LCAyNTQsIDEwOSwgMjMxLCA4OCwgMjU0LCAxMDksIAorICAgIDIxOCwgMjU1LCAyNTQsIDEwOSwgMjQ3LCAxNzEsIDI0NywgMTM4LCAyMjgsIDUyLCAyNDcsIDE3NCwgMjI2LCA4LCAxMTEsIAorICAgIDIyOCwgNTIsIDIyNiwgOCwgMTExLCAyMzIsIDE0NiwgMjU0LCAxMTgsIDIzMiwgMTQ2LCAyMjYsIDE1OCwgMjM1LCAxOTgsIAorICAgIDIxNCwgMTc1LCAyMzUsIDIxMSwgNTIsIDIzNSwgMjExLCAyMTUsIDIxMSwgMjM1LCAyMTEsIDI0OSwgMTgyLCAyMzUsIDIxMSwgCisgICAgMjE4LCAxMywgMjM1LCAyMTEsIDIxMywgMTI5LCAyMzUsIDIxMSwgMjUwLCAyLCAyMzUsIDIxMSwgMjUwLCAyLCAyNDksIAorICAgIDE4MiwgMjM1LCAyMTEsIDI1NCwgODgsIDI0OSwgMTgyLCAyMzUsIDIxMSwgMjE2LCAxODYsIDI1MiwgNjcsIDIyMywgMTM3LCAKKyAgICAyMjQsIDE2OSwgNTksIDIzMCwgMTgxLCAyNDUsIDMzLCAyNDMsIDQ2LCAyMjQsIDE2OSwgMjQxLCA1NywgMjE2LCA4OSwgCisgICAgMjI2LCAxNjcsIDIyMywgNDksIDE4MiwgMjM1LCAxOTMsIDIzMywgNjUsIDIyMiwgOTEsIDIxOSwgMTU3LCAyMTIsIDM1LCAKKyAgICAyMTEsIDIwMCwgMjI0LCAxODAsIDIyOCwgNTIsIDE4MiwgMjMwLCAxODIsIDE4MiwgMjUzLCAyMTAsIDEyOCwgMTExLCAyMjgsIAorICAgIDUyLCAyNTMsIDIxMCwgMTI4LCAxMTEsIDI1NCwgNDgsIDEyOCwgMTExLCAyNTQsIDQ4LCAyNTEsIDg4LCAyMjgsIDUyLCAKKyAgICAyNTUsIDQsIDEyOCwgMTExLCAyMjksIDEwMCwgMjU0LCA0OCwgMjI4LCA1OSwgMjU1LCA0LCAxMjgsIDExMSwgMjU0LCAxNDgsIAorICAgIDEyOCwgMTExLCAyMjgsIDUyLCAyNTQsIDE0OCwgMTI4LCAxMTEsIDI1NCwgMTQ4LCAxMjgsIDE3NywgMTI4LCAxMTEsIDIxNSwgCisgICAgMjExLCAxODIsIDI1NCwgMTU1LCAxMjgsIDExMSwgMjQ1LCA5NCwgMTExLCAyNDMsIDQ1LCAyNDUsIDk0LCAxMTEsIDI0NywgCisgICAgMjM0LCAyNTIsIDIzLCAyNTQsIDUwLCAyMTYsIDE5NiwgMjMyLCAyMjEsIDI0MywgNDUsIDEyOCwgMTExLCAyNTQsIDQ4LCAKKyAgICAxMjgsIDIxNiwgNDIsIDE3NywgMjE2LCAxOTYsIDIzNiwgMTUsIDIyNiwgMjMxLCAyMzYsIDE1LCA2NCwgMTc3LCAyNTQsIAorICAgIDQ4LCAxMjgsIDExMSwgMjQ5LCAyMjcsIDI0NSwgOTcsIDI0NSwgOTgsIDI0OSwgMjI2LCAyMjIsIDIzNCwgMjM2LCAwLCAKKyAgICAxMjgsIDExMSwgMjIyLCAyMzQsIDEyOCwgMTExLCAyNDksIDE1NCwgMTExLCAyNDUsIDY3LCAyNDUsIDk2LCAxMTEsIDIxOCwgCisgICAgMTU3LCAyNDUsIDk3LCAyNDgsIDU1LCAxMjgsIDExMSwgMTI4LCAyMTYsIDQyLCAyNTEsIDc4LCAyNDgsIDcyLCAyMzEsIDg4LCAKKyAgICAyNTEsIDc3LCAyMjQsIDExLCAxMjgsIDExMSwgMjI4LCA1MiwgMTI4LCAxMTEsIDI0MCwgMTA0LCAxMTEsIDIyOCwgNTIsIAorICAgIDI0MCwgMTA0LCAxMTEsIDIxOCwgMTA5LCAyNDUsIDk0LCAxMTEsIDIzMywgMTUsIDE3NywgMTI4LCAxMTEsIDI0MiwgMTMwLCAKKyAgICAxNzcsIDEyOCwgMTExLCAyMzMsIDE1LCAxMTcsIDEyOCwgMTExLCAyNDIsIDEzMCwgMTE3LCAxMjgsIDExMSwgMjMzLCAxNSwgCisgICAgMjUxLCA4OCwgMjI4LCA1MiwgMTI4LCAxMTEsIDI0MiwgMTMwLCAyNTEsIDg4LCAyMjgsIDUyLCAxMjgsIDExMSwgMjMwLCAKKyAgICA5NywgMjMzLCAxNCwgMjMwLCA5NywgMjQyLCAxMjksIDI1MiwgMjMsIDIyOCwgNTIsIDI0NSwgOTQsIDExMSwgMjI4LCA1MiwgCisgICAgMjMzLCAxNCwgMjI4LCA1MiwgMjQyLCAxMjksIDIyOSwgMTAwLCAyMzMsIDE1LCAyMjgsIDU5LCAxMjgsIDExMSwgMjI5LCAKKyAgICAxMDAsIDI0MiwgMTMwLCAyMjgsIDU5LCAxMjgsIDExMSwgMjMzLCAxNSwgMTc3LCAyNDUsIDk0LCAxMTEsIDI0MiwgMTMwLCAKKyAgICAxNzcsIDI0NSwgOTQsIDExMSwgMjI5LCAxMDAsIDIzMywgMTUsIDIyOCwgNTksIDI0NSwgOTQsIDExMSwgMjI5LCAxMDAsIAorICAgIDI0MiwgMTMwLCAyMjgsIDU5LCAyNDUsIDk0LCAxMTEsIDIzMywgMTUsIDE3NywgMjQyLCAxMjksIDI0MiwgMTMwLCAxNzcsIAorICAgIDIzMywgMTQsIDIyOSwgMTAwLCAyMzMsIDE1LCAyMjgsIDU5LCAyNDIsIDEyOSwgMjI5LCAxMDAsIDI0MiwgMTMwLCAyMjgsIAorICAgIDU5LCAyMzMsIDE0LCAyMjQsIDIwMiwgMjE4LCA1NSwgMjI0LCAyMDMsIDE3NywgMTI4LCAxMTEsIDIxOCwgNTYsIDE3NywgCisgICAgMTI4LCAxMTEsIDIyNCwgMjAzLCAxNzcsIDI0NSwgOTQsIDExMSwgMjE4LCA1NiwgMTc3LCAyNDUsIDk0LCAxMTEsIDI0NywgCisgICAgMTM4LCAyMjgsIDUyLCAyMjQsIDIwNSwgMjQ3LCAxMzgsIDIyOCwgNTIsIDIxOCwgNTcsIDIxOCwgNjQsIDIyNiwgMjMxLCAKKyAgICAyMTgsIDIyLCAyMjYsIDIzMSwgMjI4LCA1MiwgMTE1LCAyMTgsIDY0LCAyMjYsIDIzMSwgMjI4LCA1MiwgMTE1LCAyMTgsIAorICAgIDIyLCAyMjYsIDIzMSwgMjE4LCA2NCwgNjQsIDE3NywgMTI4LCAxMTEsIDIxOCwgMjIsIDY0LCAxNzcsIDEyOCwgMTExLCAKKyAgICAyMjksIDEwMCwgMTE1LCAyMTgsIDY0LCA2NCwgMjI4LCA1OSwgMTI4LCAxMTEsIDIyOSwgMTAwLCAxMTUsIDIxOCwgMjIsIAorICAgIDY0LCAyMjgsIDU5LCAxMjgsIDExMSwgMjE4LCA2NCwgNjQsIDIsIDIyOCwgNTIsIDEyOCwgMTExLCAyMTgsIDIyLCA2NCwgMiwgCisgICAgMjI4LCA1MiwgMTI4LCAxMTEsIDIzMCwgODEsIDIzMCwgODIsIDIzMCwgODMsIDIzMCwgODIsIDIxNCwgMTc1LCA0MiwgMjM2LCAKKyAgICAxNSwgMjI2LCAyMzEsIDQyLCAyMjYsIDE1MCwgMjI2LCAyMzEsIDQyLCAyMzYsIDE1LCA2NCwgMTc3LCAxMjgsIDExMSwgNDIsIAorICAgIDIyNiwgMTUwLCA2NCwgMTc3LCAxMjgsIDExMSwgNDIsIDI1MCwgMjUxLCA0MiwgMjQ5LCAxMDIsIDM3LCAyMjUsIDIyLCAzNywgCisgICAgMjMwLCAxODEsIDM3LCAyMTYsIDg1LCAzNywgMjQ3LCAxNjksIDIxOSwgOTUsIDM3LCA1OSwgMjI2LCAxNjcsIDM3LCAyMjIsIAorICAgIDIzNCwgMjI2LCAxNjcsIDM3LCAyNTMsIDIxNywgMjI2LCAxNjcsIDM3LCAyNDUsIDk3LCAzNywgMjQ4LCAxNTYsIDkyLCAKKyAgICAyMjUsIDIyLCA5MiwgMjMwLCAxODEsIDkyLCAyMTYsIDg1LCA5MiwgNTksIDIyNiwgMTY3LCA0NCwgMjE3LCA4NywgNDMsIAorICAgIDIxNywgODcsIDEyNCwgMjE3LCA4NywgMTIwLCAyMTcsIDg3LCAyNTMsIDIyMCwgMjMwLCAxNTYsIDIxNSwgMTkxLCAyNDQsIAorICAgIDI1LCAyMTUsIDIxMSwgNjcsIDI1MiwgMTQxLCA0NCwgMjE1LCA5MywgNTIsIDY3LCAyNTIsIDE0MSwgNTIsIDQ0LCAyMTUsIAorICAgIDkzLCAyNDcsIDEzOCwgMjI4LCA1MiwgMjI0LCAxNjMsIDIyOCwgNTIsIDIxNSwgMTkxLCAyNDcsIDEzOCwgMjI4LCA1MiwgCisgICAgMjQ0LCAyNiwgMjI5LCAxMDIsIDUyLCA2NywgMjUyLCAxNDEsIDUyLCA0NCwgMjE1LCA5MywgMjI0LCAyMDMsIDIxNCwgMTg0LCAKKyAgICAyMjMsIDkxLCAyMTgsIDU2LCAyMTQsIDE4NCwgMjIzLCA5MSwgMjI4LCA1NywgMjE4LCA3NywgMjI2LCAyMzEsIDI0OSwgCisgICAgMTg2LCAyNTMsIDIzOCwgMjI4LCA1NywgMjE4LCA3NiwgMjI4LCA1NywgMjE4LCA3NywgNjQsIDE3NywgMTI4LCAxMTEsIAorICAgIDI0OSwgMTg2LCAyNTMsIDIzOCwgMjI4LCA1NywgMjE4LCA3NywgMTc3LCAxMjgsIDExMSwgMjI2LCAxNTAsIDIyNiwgMjMxLCAKKyAgICAyMzYsIDE1LCAyMjYsIDIzMSwgMjMwLCA4NywgMjQxLCAyMDAsIDI0OSwgMTk2LCAyMzEsIDEzNywgMjM1LCAyMDgsIDIxMSwgCisgICAgMTQ1LCAyMjksIDIwMiwgMjI4LCA1OCwgNDQsIDI1NCwgMTEwLCAyLCAyNTQsIDI1LCA0NCwgMjE1LCAyMjUsIDIzMCwgMjQsIAorICAgIDIzMiwgMTQ2LCAyNTQsIDExOCwgMjMwLCAyNCwgMjMyLCAxNDYsIDIyNiwgMTU4LCAyMzAsIDI0LCAyMzUsIDE5OCwgMjMwLCAKKyAgICAyNCwgMjE0LCAxNzUsIDI0NywgMjQ5LCAyMjYsIDE2NywgNTksIDIyNiwgMTY3LCAyMTgsIDE1NywgMjI2LCAxNjcsIDI0NywgCisgICAgMTY5LCAyMTYsIDg1LCAyNTEsIDE2NCwgNDMsIDIyOCwgNTcsIDI0NCwgMTgxLCAyMjAsIDE0OSwgMjI0LCAxODAsIDQ0LCAKKyAgICAyMjgsIDU3LCAyNDQsIDE4MSwgMjIwLCAxNDksIDIyNCwgMTgwLCA0MywgMjIwLCAxNDksIDIyNCwgMTgwLCA0NCwgMjIwLCAKKyAgICAxNDksIDIyNCwgMTgwLCAyMjMsIDQ5LCAyMTYsIDg5LCAyNDUsIDk3LCAyNDksIDk5LCAyMzIsIDE0NiwgMjI2LCAxNTgsIAorICAgIDI0OSwgOTksIDIzMiwgMTQ2LCAyNTQsIDExOCwgNTIsIDIxOCwgNjMsIDUyLCAyMTgsIDIxLCA1MiwgMjM1LCAxOTgsIDUyLCAKKyAgICAyMTQsIDE3NSwgMjI1LCA0NywgMTI4LCAyMiwgMjI2LCA4LCAxMTEsIDIzMywgMTUsIDIsIDI0NywgMTIwLCAyNDIsIDEzMCwgCisgICAgMiwgMjQ3LCAxMjAsIDIxMywgMTg3LCAyMzAsIDk3LCAyMzMsIDE0LCAyMTMsIDE4NywgMjMwLCA5NywgMjQyLCAxMjksIAorICAgIDIzMywgMTUsIDEyOCwgMjE2LCA0MiwgMTc3LCAyNDIsIDEyOSwgMjQyLCAxMzAsIDEyOCwgMjE2LCA0MiwgMTc3LCAyMzMsIAorICAgIDE0LCAxMjgsIDIxNiwgNDIsIDE3NywgMjMzLCAxNCwgMTI4LCAyMTYsIDQyLCAxNzcsIDI0MiwgMTI5LCAxMjgsIDIxNiwgCisgICAgNDIsIDE3NywgMjI0LCAyMDIsIDEyOCwgMjE2LCA0MiwgMTc3LCAyMTgsIDU1LCAyNDcsIDEzOCwgMjI4LCA1MiwgMjI0LCAKKyAgICAyMDYsIDE3NywgMjQ1LCA5OSwgMjQ3LCAxMzgsIDIyOCwgNTIsIDIxOCwgNTgsIDE3NywgMjQ1LCA5OSwgMjI4LCA1MiwgNDIsIAorICAgIDIzNiwgMTUsIDY0LCAxNzcsIDEyOCwgMTExLCAyMjgsIDUyLCA0MiwgMjI2LCAxNTAsIDY0LCAxNzcsIDEyOCwgMTExLCA0MiwgCisgICAgMjM2LCAxNSwgNjQsIDE3NywgMjI4LCA1MiwgMTI4LCAxMTEsIDQyLCAyMjYsIDE1MCwgNjQsIDE3NywgMjI4LCA1MiwgMTI4LCAKKyAgICAxMTEsIDIzMywgMTUsIDI1MSwgODgsIDIyOCwgNTIsIDI0NSwgOTQsIDExMSwgMjQyLCAxMzAsIDI1MSwgODgsIDIyOCwgNTIsIAorICAgIDI0NSwgOTQsIDExMSwgMjI0LCAyMDMsIDI1MSwgODgsIDIyOCwgNTIsIDI0NSwgOTQsIDExMSwgMjE4LCA1NiwgMjUxLCA4OCwgCisgICAgMjI4LCA1MiwgMjQ1LCA5NCwgMTExLCAyMjgsIDUyLCAyMjgsIDU3LCAyMTgsIDc3LCAyMjYsIDIzMSwgMjQ3LCAxMzgsIAorICAgIDIyOCwgNTIsIDI0OSwgMTg4LCAyNTMsIDIzOCwgMjI4LCA1NywgMjE4LCA3NiwgMjI4LCA1MiwgMjI4LCA1NywgMjE4LCA3NywgCisgICAgNjQsIDE3NywgMTI4LCAxMTEsIDI0NywgMTM4LCAyMjgsIDUyLCAyNDksIDE4OCwgMjUzLCAyMzgsIDIyOCwgNTcsIDIxOCwgCisgICAgNzcsIDE3NywgMjQ1LCA5OSwgNjcsIDI0NSwgMTYzLCAyMzAsIDIyMiwgMjAzLCAyNDUsIDE2MywgMTIwLCA0NCwgMjQ3LCAKKyAgICAyNTUsIDI0NSwgMTYzLCAxMjQsIDQ0LCAyNDcsIDI1NSwgMjQ1LCAxNjMsIDI0NSwgMTcwLCA2NCwgMiwgMTk5LCAyMDMsIAorICAgIDkxLCAyNDUsIDE3MCwgNjQsIDIsIDY3LCAyNTIsIDE0MSwgMjUzLCAyMDcsIDI0NSwgMTQzLCA2NCwgMjAzLCA5MSwgNCwgCisgICAgMjQ1LCAxNzAsIDY0LCAyLCA2NywgMjUyLCAxNDEsIDI1MywgMjA3LCAyNDUsIDE0MywgNjQsIDIwMywgOTEsIDI0NSwgMTcwLCAKKyAgICA2NCwgMiwgNTksIDQ4LCAyNDUsIDE3MCwgNjQsIDIsIDIyNiwgMTIzLCA0LCAyNDUsIDE3MCwgNjQsIDIsIDIyNiwgMTIzLCAKKyAgICAyNDUsIDE3MCwgNjQsIDIsIDIxNCwgMTgzLCAyNDUsIDE3MCwgNjQsIDIsIDExMywgMjAzLCAyMTgsIDkwLCAyNDksIDE4NiwgCisgICAgMiwgMTk5LCAyMDMsIDkxLCAyNDksIDE4NiwgMiwgNjcsIDI1MiwgMTQxLCAyNTMsIDIwNywgMjQ1LCAxNDMsIDY0LCAyMDMsIAorICAgIDkxLCA0LCAyNDksIDE4NiwgMiwgNjcsIDI1MiwgMTQxLCAyNTMsIDIwNywgMjQ1LCAxNDMsIDY0LCAyMDMsIDkxLCAyNDksIAorICAgIDE4NiwgMiwgMjI2LCAxMjMsIDQsIDI0OSwgMTg2LCAyLCAyMjYsIDEyMywgMjEwLCAxNjAsIDE4NywgMjUyLCAxNzMsIDIzMSwgCisgICAgNjEsIDI0NywgMjUwLCA1MCwgMjQ1LCAxNzIsIDc0LCAyNDAsIDIzNCwgMTIwLCAyNTMsIDI0OSwgMTI0LCAyNTMsIDI0OSwgCisgICAgMjI0LCAxNzUsIDIyNSwgMTY1LCAyMTIsIDMyLCAyMzIsIDIxMywgNDMsIDI1MCwgMTgxLCA0NCwgMjUwLCAxODEsIDQzLCAKKyAgICAyNDQsIDU3LCA0NCwgMjQ0LCA1NywgMjUxLCAxNzUsIDQ0LCAyNDksIDEzMiwgMjUxLCAxNzUsIDQzLCAyNDksIDEzMiwgCisgICAgMjE2LCAxNCwgNDQsIDI0OSwgMTMyLCAyMTYsIDE0LCA0MywgMjQ5LCAxMzIsIDIyMywgNDksIDIyOCwgNTIsIDUwLCA0MiwgCisgICAgMjMyLCAxMDQsIDI1NCwgMjUsIDIyMSwgMTY0LCAyMjEsIDE3MSwgMjE3LCAxLCAyMjMsIDEyMCwgMjI0LCAyNDEsIDIzNSwgCisgICAgMjM4LCAyMTMsIDE2NSwgMjE4LCAyMzQsIDIyNSwgNDEsIDY0LCAyMzUsIDIwNywgNTAsIDIxNSwgOTQsIDIyOCwgNTIsIDUwLCAKKyAgICAyMTIsIDQyLCAyNDAsIDIzNiwgMjE2LCAxNCwgNDMsIDI0OSwgMTYwLCAyMTYsIDE0LCA0NCwgMjQ5LCAxNjAsIDI1MSwgCisgICAgMTc1LCA0MywgMjQ5LCAxNjAsIDI1MSwgMTc1LCA0NCwgMjQ5LCAxNjAsIDIxNiwgMTQsIDE2MywgMjM1LCAyMTEsIDI1MSwgCisgICAgMTc1LCAxNjMsIDIzNSwgMjExLCAyNDMsIDI0MCwgMjE5LCA3NSwgMTIwLCAyNTMsIDI1MCwgMjUyLCAyNCwgMTEzLCAyMDMsIAorICAgIDI1MiwgMTI5LCAyMjYsIDE2MCwgMjM0LCAxMzgsIDI0NSwgOTAsIDIxNiwgNDIsIDIxNiwgMTk2LCAyMjIsIDI1MSwgMjExLCAKKyAgICAxNzksIDIzNiwgMCwgMTE1LCAyMjMsIDExNywgMjUxLCAxNjMsIDIzNCwgMTM3LCAyMzMsIDQyLCAyNTQsIDExMCwgMTI3LCAKKyAgICAyMjIsIDI0NywgMjU0LCAxMTAsIDEyNywgMjQ1LCA5MCwgMjE2LCA0MiwgMjE2LCAxOTYsIDIzMywgNDYsIDI1MiwgMzUsIAorICAgIDIyMiwgMjMzLCAyNDksIDcwLCAyNTQsIDE1NSwgMjU0LCAxLCAyMTcsIDE4MSwgMjE2LCA0LCAyMjIsIDEyMywgMjQ3LCAKKyAgICAyMTUsIDIyNiwgMTUxLCAyNDksIDE5OCwgMjE3LCA1MiwgMjE5LCA4NiwgMjQ5LCAxNTEsIDI0OSwgMTUwLCAyNTQsIDY2LCAKKyAgICAyNDMsIDIyNSwgMTYsIDI0MCwgMTUxLCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDIxOCwgMjI4LCAyMjQsIDI3LCAyNTQsIAorICAgIDY2LCAyNDMsIDIyNSwgMTYsIDIyNCwgMjgsIDI0NSwgOTksIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjI0LCAyOCwgMjQ3LCAKKyAgICAxNzQsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjI0LCAyOCwgMjQ3LCAyNDgsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgCisgICAgMjI0LCAyOCwgMjM1LCA1NiwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMjQsIDI4LCAyNTAsIDM1LCAyNTQsIDY2LCAyNDMsIAorICAgIDIyNSwgMTYsIDI1MCwgMzYsIDIxOCwgMTM1LCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDI1MCwgMzYsIDIzNSwgNTYsIDI1NCwgCisgICAgNjYsIDI0MywgMjI1LCAxNiwgMjE5LCA5NiwgMTMwLCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDI1MiwgMTgxLCAxMzAsIAorICAgIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjI0LCAyOCwgMjE5LCA5NSwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMjQsIDI4LCAKKyAgICAyNTIsIDE4MCwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMjQsIDI4LCAyMzMsIDE0LCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIAorICAgIDIyNCwgMjgsIDI0MiwgMTI5LCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDE0MCwgMjE0LCAxOSwgMjU0LCA2NiwgMjQzLCAKKyAgICAyMjUsIDE2LCA5NywgMjE0LCAxOSwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMjQsIDI4LCAxNDAsIDc0LCAyNTQsIDY2LCAKKyAgICAyNDMsIDIyNSwgMTYsIDIyNCwgMjgsIDk3LCA3NCwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyNTAsIDM2LCAyNTIsIDE4MCwgCisgICAgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAxMjQsIDIxNywgODgsIDIxNCwgMTgzLCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIAorICAgIDI0OCwgNTUsIDIxOCwgMTM1LCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDIyNCwgMjgsIDEyNCwgMjUwLCAyMzgsIDI1NCwgCisgICAgNjYsIDI0MywgMjI1LCAxNiwgMjI0LCAyOCwgMjQ4LCA1NCwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAxMjQsIDIxNywgODgsIAorICAgIDIzNSwgNTYsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjE0LCAxNTMsIDIxNCwgMTksIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgCisgICAgMjI0LCAyOCwgMjE0LCAxNTMsIDc0LCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDEyMCwgMjE3LCA4OCwgMjI2LCAxMjMsIAorICAgIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjQ4LCA2NiwgMjE4LCAxMzUsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjI0LCAyOCwgCisgICAgMTIwLCAyNTAsIDIzOCwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMjQsIDI4LCAyNDgsIDY1LCAyNTQsIDY2LCAyNDMsIAorICAgIDIyNSwgMTYsIDEyMCwgMjE3LCA4OCwgMjM1LCA1NiwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyNDYsIDEwNCwgMjE0LCAxOSwgCisgICAgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMjQsIDI4LCAyNDYsIDEwNCwgNzQsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjIzLCAKKyAgICAyNTMsIDIxNCwgMTgzLCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDI0OCwgNTUsIDIxNCwgMTgzLCAyNTQsIDY2LCAyNDMsIAorICAgIDIyNSwgMTYsIDI0NywgMjQ5LCAyMTQsIDE4MywgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMzUsIDU3LCAyMTQsIDE4MywgCisgICAgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyNTAsIDM2LCAyMTQsIDE4MywgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAxMjAsIAorICAgIDIyMCwgNSwgMjM1LCA1NiwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMjMsIDI1MywgMjI0LCAyNywgMjU0LCA2NiwgMjQzLCAKKyAgICAyMjUsIDE2LCAyNTAsIDM2LCAyMTgsIDE1NiwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMjQsIDI4LCAyNDksIDIyNiwgCisgICAgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAxMjAsIDIxNywgODgsIDI0OCwgMSwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyNDgsIAorICAgIDY2LCAyNDgsIDEsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjE4LCAxNTcsIDI0OCwgMSwgMjU0LCA2NiwgMjQzLCAyMjUsIAorICAgIDE2LCAyMzUsIDU3LCAyNDgsIDEsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjUwLCAzNiwgMjQ4LCAxLCAyNTQsIDY2LCAKKyAgICAyNDMsIDIyNSwgMTYsIDEyNCwgMjIwLCA1LCAyMTgsIDEzNSwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCA0MywgMjIwLCA1LCAKKyAgICAyMTgsIDEzNSwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMTYsIDg5LCAyNDgsIDEsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgCisgICAgMjQyLCAxMzAsIDI0OCwgMSwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyNDksIDIyMCwgMTMwLCAyNTQsIDY2LCAyNDMsIAorICAgIDIyNSwgMTYsIDI0OCwgNjYsIDE4MiwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAyMTAsIDM0LCAyNTQsIDY2LCAyNDMsIDIyNSwgCisgICAgMTYsIDIxOCwgMTM2LCAxODIsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjIwLCAxNTEsIDIxNCwgMTgzLCAyNTQsIDY2LCAKKyAgICAyNDMsIDIyNSwgMTYsIDIyNCwgMjgsIDIyOCwgNTIsIDI0NSwgOTksIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjI0LCAyOCwgCisgICAgMjI0LCAxMiwgMjU0LCA2NiwgMjQzLCAyMjUsIDE2LCAxMjQsIDI1MCwgMjM5LCAxODIsIDI1NCwgNjYsIDI0MywgMjI1LCAKKyAgICAxNiwgMTIwLCAyNTAsIDIzOSwgMTgyLCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDIzNSwgMTg1LCAyNTQsIDY2LCAyNDMsIAorICAgIDIyNSwgMTYsIDIyMywgMzcsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjI2LCAyMDEsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgCisgICAgMjU0LCAxNDQsIDIxNCwgMTgzLCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDI0NSwgMTAxLCAyMTQsIDE4MywgMjU0LCA2NiwgCisgICAgMjQzLCAyMjUsIDE2LCAyMzUsIDE4NiwgMjE0LCAxODMsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjI2LCAyMDIsIDIxNCwgCisgICAgMTgzLCAyNTQsIDY2LCAyNDMsIDIyNSwgMTYsIDI1NCwgMTQzLCAyMjgsIDUyLCAyNTAsIDEzMCwgNzgsIDQ0LCAyNTQsIAorICAgIDExMCwgMiwgMjQ2LCAxMDQsIDIxMCwgMzUsIDc0LCAyMTksIDIzNSwgMjA0LCAyNTEsIDE2MywgMjUyLCA0NSwgODcsIDY3LCAKKyAgICAyMzIsIDIxNCwgMiwgMjMwLCAyMjQsIDI0NywgMTIwLCAyMzUsIDIxNiwgODcsIDI0OSwgMTgzLCAyMTQsIDE4MSwgODcsIAorICAgIDI0NywgMTg5LCAyMTQsIDE4MSwgODcsIDI0NSwgMTU0LCA4NywgMjQ5LCAyMTAsIDg3LCA3MSwgNDIsIDIsIDI1MCwgMTc1LCAKKyAgICA2NywgMjMyLCAyMTMsIDI0NSwgMTMwLCA4NywgMjU0LCAxMzksIDIzNCwgMTM5LCA4NywgMjQxLCAyMTMsIDg3LCAzNywgCisgICAgMjAzLCAyNTIsIDE0MSwgMiwgMjI4LCA1MCwgMzcsIDIxNSwgMjI2LCAyNDYsIDEwNiwgMjUxLCAxMzUsIDI1MCwgMzYsIDIsIAorICAgIDIyOCwgNTQsIDc0LCAyMTQsIDE3OSwgODcsIDIzMCwgMTM3LCA4NywgMjQwLCAxNjQsIDg3LCAyMjYsIDE3NCwgMjQyLCA1OSwgCisgICAgODcsIDIyNiwgMTc0LCAyMzMsIDE0NywgODcsIDIyNSwgMjQ0LCA4NywgMjI1LCAyNDMsIDg3LCAyNDcsIDE5NywgMjQ5LCAKKyAgICA5NywgMTYsIDI0NCwgMjAsIDEwNSwgMjE5LCA1MCwgODcsIDI1NCwgNjYsIDI0MywgMjI1LCAxNiwgMjI0LCAyNywgMjQ4LCAKKyAgICA4MywgMjIwLCAxMzgsIDIzNCwgMTM5LCA4NywgMjI0LCAxOTIsIDIyNiwgNzUsIDIyOSwgODIsIDIyNiwgNzUsIDIyNCwgCisgICAgMTg4LCAyMjEsIDE4OSwgODcsIDI1MCwgMTcsIDIyMSwgMTg5LCA4NywgNDMsIDIyNiwgNCwgMjE0LCAxNjAsIDEwMywgNDMsIAorICAgIDIyNiwgNCwgMjQ1LCAyMSwgNDMsIDIyNiwgNCwgMjMyLCAxMDgsIDEwMywgNDQsIDIyNiwgNCwgMjE0LCAxNjAsIDEwMywgCisgICAgNDQsIDIyNiwgNCwgMjQ1LCAyMSwgNDQsIDIyNiwgNCwgMjMyLCAxMDgsIDEwMywgNDMsIDQyLCAyNTEsIDE1OCwgMjE0LCAKKyAgICAxNjAsIDI0OSwgMTYwLCA0MywgNDIsIDI1MSwgMTU4LCAyNDUsIDIxLCA0MywgNDIsIDI1MSwgMTU4LCAyMzIsIDEwOCwgCisgICAgMjQ5LCAxNjAsIDQ0LCA0MiwgMjUxLCAxNTgsIDIxNCwgMTYwLCAyNDksIDE2MCwgNDQsIDQyLCAyNTEsIDE1OCwgMjQ1LCAKKyAgICAyMSwgNDQsIDQyLCAyNTEsIDE1OCwgMjMyLCAxMDgsIDI0OSwgMTYwLCA0MywgMjQ5LCA5OSwgMjUxLCAxNTgsIDIxNCwgCisgICAgMTYwLCAxMDMsIDQzLCAyNDksIDk5LCAyNTEsIDE1OCwgMjMwLCAyMjQsIDIyNSwgMTAxLCA0MywgMjQ5LCA5OSwgMjUxLCAKKyAgICAxNTgsIDIzMiwgMTA4LCAxMDMsIDI0OSwgOTksIDI1MSwgMTU4LCAyNDUsIDIxLCA0NCwgMjQ5LCA5OSwgMjUxLCAxNTgsIAorICAgIDIxNCwgMTYwLCAxMDMsIDQ0LCAyNDksIDk5LCAyNTEsIDE1OCwgMjMwLCAyMjQsIDIyNSwgMTAxLCA0NCwgMjQ5LCA5OSwgCisgICAgMjUxLCAxNTgsIDIzMiwgMTA4LCAxMDMsIDIzNSwgMjEyLCAyNDUsIDIxLCAyMDMsIDIzMiwgMjE0LCAyNDUsIDIxLCAyMTQsIAorICAgIDE2MCwgNDMsIDE3NywgMjMyLCAxMDgsIDQ0LCAyNDksIDk5LCAyNTEsIDE1OCwgMjIxLCAxNzIsIDIxNCwgMTYwLCA0NCwgCisgICAgMTc3LCAyMzIsIDEwOCwgNDMsIDI0OSwgOTksIDI1MSwgMTU4LCAyMjEsIDE3MiwgMjE4LCA0MSwgMjE2LCAxMywgMjE4LCAKKyAgICA0MSwgMjUxLCAxNzQsIDIxNiwgMTQsIDQyLCAxMjcsIDI1MSwgMTc1LCA0MiwgMTI3LCAyNTEsIDE3NSwgNDIsIDI1MSwgCisgICAgMTU4LCAxMTcsIDIxNiwgMTQsIDQyLCAxMjcsIDM0LCAxNiwgMjUxLCAxNzQsIDQzLCA2NywgOTMsIDIzMiwgMjEzLCA0NCwgCisgICAgNjcsIDkzLCAyMzIsIDIxMywgMjAzLCAyMjEsIDIwNSwgMjMyLCAyMTIsIDIwMywgMjIxLCAyMDUsIDIzMiwgMjExLCAyMDMsIAorICAgIDIyMSwgMjA1LCAyMzIsIDIxMCwgMjAzLCAyMjEsIDIwNSwgMjMyLCAyMDksIDI0OCwgNDYsIDE2LCAxOTIsIDY3LCAyMiwgCisgICAgMjE2LCAxNCwgMjIyLCAyNTEsIDI0OCwgNDYsIDE2LCAxOTIsIDY3LCAyMiwgMjUxLCAxNzUsIDIyMiwgMjUxLCAyNDgsIDQ2LCAKKyAgICAxNiwgMTkyLCA2NywgMiwgMjUwLCAzNSwgMjQ4LCA0NiwgMTYsIDE5MiwgMTI0LCAyMiwgMjAzLCAyLCAyNTAsIDM1LCAyNDgsIAorICAgIDQ2LCAxNiwgMTkyLCAxMjAsIDIyLCAyMDMsIDIsIDI1MCwgMzUsIDI0OCwgNDYsIDE2LCAxOTIsIDY3LCAyLCAyMTUsIDIyNSwgCisgICAgMjQ4LCA0NiwgMTYsIDE5MiwgMTI0LCAyMiwgMjAzLCAyLCAyMTUsIDIyNSwgMjQ4LCA0NiwgMTYsIDE5MiwgMTIwLCAyMiwgCisgICAgMjAzLCAyLCAyMTUsIDIyNSwgMjQ4LCA0NiwgMTYsIDE5MiwgNjcsIDIyLCAyMTIsIDM1LCAyNDgsIDQ2LCAxNiwgMTkyLCAKKyAgICAxMjQsIDIyLCAyMDMsIDIsIDIxMiwgMzUsIDI0OCwgNDYsIDE2LCAxOTIsIDEyMCwgMjIsIDIwMywgMiwgMjEyLCAzNSwgCisgICAgMjQ4LCA0NiwgMTYsIDE5MiwgMTI0LCAyMiwgMjQxLCA0NCwgMjQ4LCA0NiwgMTYsIDE5MiwgMTIwLCAyMiwgMjQxLCA0NCwgCisgICAgMjQ4LCA0NiwgMTYsIDE5MiwgNjcsIDIyLCAyMTYsIDE0LCAyMzMsIDQ2LCAyNDgsIDQ2LCAxNiwgMTkyLCA2NywgMjIsIAorICAgIDI1MSwgMTc1LCAyMzMsIDQ2LCA0MiwgMjQ0LCAzMiwgMjIzLCA1NCwgODcsIDI0NSwgMTgyLCA4NywgNjcsIDIzMiwgMjE0LCAKKyAgICAyNDUsIDIxLCAyMzEsIDMzLCAyNTEsIDE0NiwgMjMxLCAzMywgMTk5LCAxMTcsIDIxOSwgMjUwLCAyMzEsIDMzLCAyMTksIAorICAgIDI1MSwgMTE3LCAyMzIsIDEzNywgMjMxLCAzMywgMTk5LCAxMTcsIDExMywgMjE5LCAyMzcsIDIzMSwgMzMsIDExMywgMjE5LCAKKyAgICAyMzgsIDExNywgMjMyLCAxMzcsIDIzMSwgMzMsIDExMywgMjE5LCAyMzgsIDIzNSwgNjQsIDIzMSwgMzMsIDIxNSwgMjA4LCAKKyAgICAyMzEsIDMzLCAyMTYsIDIyMywgMjMxLCAzMywgMjI1LCAxODgsIDI0NSwgMjI0LCAyNDIsIDEyMiwgMjQzLCAyMTksIDIxNiwgCisgICAgMTQsIDIyNiwgMywgMjUxLCAxNzUsIDIyNiwgMywgMjE2LCAxNCwgMjQ5LCA5OSwgMTI3LCAyNTEsIDE3NSwgMjQ5LCA5OSwgCisgICAgMTI3LCAyMTYsIDE0LCAyMTYsIDYsIDIyMCwgNTMsIDEyNywgMjUxLCAxNzUsIDIxNiwgNiwgMjIwLCA1MywgMTI3LCA3MSwgCisgICAgMjE1LCAyMzksIDI1MiwgMzUsIDIyMiwgMjM0LCAyLCAyNTAsIDM1LCAyMTgsIDEyMCwgMjQ0LCA2NCwgMjU1LCAxNywgMjQ5LCAKKyAgICA5NiwgMjQ1LCAxNzEsIDIzNSwgMTk4LCAyNDgsIDgzLCAyNDUsIDI0LCA4NywgODUsIDIyMiwgMjQ3LCA1MiwgMjE1LCAyMjUsIAorICAgIDg1LCAyMzMsIDQyLCA1MiwgMjE1LCAyMjUsIDg1LCAyMTQsIDE2MiwgNTIsIDIxNSwgMjI1LCA4NSwgMjQ2LCAxMDUsIDUyLCAKKyAgICAyMTUsIDIyNSwgODUsIDIyMiwgMjQ3LCA1MiwgMjE1LCAyMjYsIDIsIDY3LCAxMzAsIDg1LCAyMzMsIDQyLCA1MiwgMjE1LCAKKyAgICAyMjYsIDIsIDY3LCAxMzAsIDg1LCAyMjIsIDI0NywgMjE1LCAyMjYsIDIsIDUyLCA2NywgMTMwLCAyNTQsIDE3MywgMjUwLCAKKyAgICAzLCAyMTgsIDEyNiwgMjE2LCA4NiwgMjUwLCAzLCAyNDAsIDIzNywgMiwgMjQ0LCA1MCwgMjIxLCAyNDEsIDE2LCAzMSwgCisgICAgMjI3LCAyMDIsIDE2LCAzMSwgMjE4LCAxNTIsIDY0LCAyNDEsIDIzMywgMTYsIDMxLCAyMTgsIDE1MiwgNjQsIDIxNiwgMjEyLCAKKyAgICAxNiwgMzEsIDI0NSwgMTQzLCA2NCwgMjE2LCAyMTIsIDE2LCAzMSwgMjQ1LCAxNDMsIDY0LCAyMTUsIDI0MywgMTYsIDMxLCAKKyAgICAyNDUsIDEzMiwgMTYsIDMxLCAyNTUsIDcsIDE2LCAzMSwgMjUyLCA0NCwgMTYsIDMxLCAyNTIsIDE3OSwgMTYsIDMxLCAyMDMsIAorICAgIDIxNywgODksIDE2LCAzMSwgMjMyLCAyMTQsIDI0NCwgMTQ1LCAxNiwgMzEsIDY3LCAyMTcsIDg5LCAxNiwgMzEsIDI0NCwgCisgICAgMjAsIDI0NCwgMTQ1LCAxNiwgMzEsIDI1MCwgMjMwLCAyMjMsIDUzLCAxNiwgMzEsIDIyMCwgMjgsIDIyNiwgMTMwLCAxNiwgCisgICAgMzEsIDIyMCwgMjgsIDIzNSwgMjU1LCAxNiwgMzEsIDI0OCwgMTUxLCAyMzIsIDIwNCwgMjQ1LCA3NywgMTYsIDMxLCAyNDgsIAorICAgIDMxLCAyNDksIDE3OCwgMTEwLCAxNiwgMzEsIDI0OCwgMzEsIDI0OSwgMTc4LCAxMDUsIDE2LCAzMSwgMjQ4LCAzMSwgMjQ5LCAKKyAgICAxNzgsIDE1OCwgMTYsIDMxLCAyNDgsIDMxLCAyNDksIDE3OCwgMTYxLCAxNiwgMzEsIDE1MiwgMjU1LCA3LCAxNiwgMzEsIAorICAgIDIxNywgMTc3LCAyMzYsIDYyLCAxNiwgMzEsIDI0NSwgMTQzLCA2NCwgMjE1LCAyNDQsIDI1MSwgMjEzLCAxNiwgMzEsIDI1MSwgCisgICAgNSwgMTYsIDMxLCAyNDUsIDE0MywgNjQsIDIzMSwgODEsIDE2LCAzMSwgMjE4LCA2MSwgMTYsIDMxLCAyNDUsIDc3LCAxNiwgCisgICAgMzEsIDI0NCwgMTA3LCAyMjAsIDEzNywgMTYsIDMxLCAyNDIsIDEyMSwgMjIwLCAxMzcsIDE2LCAzMSwgMjIzLCAxMjEsIAorICAgIDIyMCwgMTM3LCAxNiwgMzEsIDIxNCwgMTc0LCAyMjAsIDEzNywgMTYsIDMxLCAyMTksIDE4LCAxNiwgMzEsIDI0OCwgNjMsIAorICAgIDI1MSwgMjE2LCA4NywgMjA0LCAyNTEsIDE2MywgMTYsIDMxLCAyMjksIDg1LCAxNiwgMzEsIDI0OCwgNjQsIDI0NCwgMjAsIAorICAgIDEwNSwgMTYsIDMxLCAyMTgsIDYyLCAyNDQsIDIwLCAxMDUsIDIyNiwgMjQxLCAxMDMsIDIyNiwgMjQxLCAyNTAsIDE1MiwgCisgICAgMjI2LCAyNDEsIDI0NCwgMjMsIDIyNiwgMjQxLCAyMzUsIDE5MywgMjQ0LCAyMywgMjI2LCAyNDEsIDI1MiwgNDIsIDI1MSwgCisgICAgMTI0LCAyMjYsIDI0MSwgMjUxLCAxNzAsIDIxNiwgMTExLCAyMjYsIDI0MSwgMjUxLCAxNTUsIDI1MiwgMTQ2LCAyNDAsIAorICAgIDEwMywgMjI2LCAyNDEsIDI1NCwgMTI3LCA2NCwgMjUwLCAxMjksIDIyNiwgMjQxLCAyNDgsIDE1NiwgMjI2LCAyNDEsIDI0OSwgCisgICAgODcsIDI1NSwgMTEsIDIyNywgMjAwLCAyMjYsIDI0MSwgNTIsIDI1MiwgMTgwLCAzNywgMjEsIDExMCwgMzcsIDIxLCAxMDUsIAorICAgIDM3LCAyMSwgMTU4LCAzNywgMjEsIDE2MSwgMzcsIDIxLCAxODksIDM3LCAyMSwgMTk0LCAzNywgMjEsIDE5OCwgMzcsIDIxLCAKKyAgICAxOTUsIDM3LCAyMSwgMjAwLCAzNywgNTQsIDIxNiwgMjQ3LCAzNywgNTQsIDI0NSwgMTY3LCAzNywgNTQsIDIxNSwgNzYsIAorICAgIDM3LCA1NCwgMjE2LCAxNjQsIDM3LCA1NCwgMjQ0LCA1LCAzNywgNTQsIDI0NCwgMTE4LCAzNywgNTQsIDIxOSwgMTE5LCAzNywgCisgICAgNTQsIDIyMCwgMTE5LCAzNywgNTQsIDI0NSwgMTkwLCAzNywgNTQsIDIyOCwgMTk3LCAzNywgNTQsIDIxNSwgNzMsIDg4LCAKKyAgICAyMSwgMTEwLCA4OCwgMjEsIDEwNSwgODgsIDIxLCAxNTgsIDg4LCAyMSwgMTYxLCA4OCwgMjEsIDE4OSwgODgsIDIxLCAxOTQsIAorICAgIDg4LCAyMSwgMTk4LCA4OCwgMjEsIDE5NSwgODgsIDIxLCAyMDAsIDg4LCA1NCwgMjE2LCAyNDcsIDg4LCA1NCwgMjQ1LCAKKyAgICAxNjcsIDg4LCA1NCwgMjE1LCA3NiwgODgsIDU0LCAyMTYsIDE2NCwgODgsIDU0LCAyNDQsIDUsIDg4LCA1NCwgMjQ0LCAxMTgsIAorICAgIDg4LCA1NCwgMjE5LCAxMTksIDg4LCA1NCwgMjIwLCAxMTksIDg4LCA1NCwgMjQ1LCAxOTAsIDg4LCA1NCwgMjI4LCAxOTcsIAorICAgIDg4LCA1NCwgMjE1LCA3MywgMjEsIDEyMywgMjQzLCAyMjksIDIxOCwgMTI5LCAyMSwgMTEzLCAyNDMsIDIyOSwgMjE4LCAKKyAgICAxMjksIDIxLCAxMzQsIDI0MywgMjI5LCAyMTgsIDEyOSwgMjEsIDI0NCwgMTEsIDI0MywgMjI5LCAyMTgsIDEyOSwgMjEsIAorICAgIDI0NCwgODEsIDI0MywgMjI5LCAyMTgsIDEyOSwgMjEsIDIxOSwgMTI1LCAyNDMsIDIyOSwgMjE4LCAxMjksIDIxLCAyMjAsIAorICAgIDEyMiwgMjQzLCAyMjksIDIxOCwgMTI5LCAyMSwgMjQ1LCAxOTMsIDI0MywgMjI5LCAyMTgsIDEyOSwgMjEsIDIyOCwgMjAwLCAKKyAgICAyNDMsIDIyOSwgMjE4LCAxMjksIDU0LCAyMTYsIDI0OCwgMjQzLCAyMjksIDIxOCwgMTI5LCA1NCwgMjQ1LCAxNjgsIDI0MywgCisgICAgMjI5LCAyMTgsIDEyOSwgNTQsIDIxNSwgNzcsIDI0MywgMjI5LCAyMTgsIDEyOSwgNTQsIDIxNiwgMTY1LCAyNDMsIDIyOSwgCisgICAgMjE4LCAxMjksIDU0LCAyNDQsIDYsIDI0MywgMjI5LCAyMTgsIDEyOSwgNTQsIDI0NCwgMTE5LCAyNDMsIDIyOSwgMjE4LCAKKyAgICAxMjksIDU0LCAyMTksIDEyMCwgMjQzLCAyMjksIDIxOCwgMTI5LCA1NCwgMjIwLCAxMjAsIDI0MywgMjI5LCAyMTgsIDEyOSwgCisgICAgNTQsIDI0NSwgMTkxLCAyNDMsIDIyOSwgMjE4LCAxMjksIDU0LCAyMjgsIDE5OCwgMjQzLCAyMjksIDIxOCwgMTI5LCA1NCwgCisgICAgMjE1LCA3NCwgMjQzLCAyMjksIDIxOCwgMTI5LCA4OCwgNywgNCwgMSwgNjEsIDg4LCA3LCA0LCAxLCAyNTMsIDE1OCwgODgsIAorICAgIDcsIDQsIDEsIDI1MSwgNjYsIDg4LCA3LCA0LCAxLCAyNDksIDYwLCA4OCwgNywgNCwgMSwgNzUsIDg4LCA3LCA0LCAxLCAKKyAgICAyNDUsIDYsIDg4LCA3LCA0LCAxLCAyNDMsIDIwMiwgODgsIDcsIDQsIDEsIDI0MiwgNjAsIDg4LCA3LCA0LCAxLCA3MywgODgsIAorICAgIDcsIDQsIDEsIDIzNSwgMTQ0LCA4OCwgNywgNCwgMSwgMjM1LCAyMywgODgsIDcsIDQsIDEsIDE1NiwgODgsIDcsIDQsIDEsIAorICAgIDE5MywgODgsIDcsIDQsIDEsIDIzMCwgMjUsIDg4LCA3LCA0LCAxLCA3NiwgODgsIDcsIDQsIDEsIDIyNiwgMTA1LCA4OCwgNywgCisgICAgNCwgMSwgMjI0LCA5NiwgODgsIDcsIDQsIDEsIDE1MywgODgsIDcsIDQsIDEsIDIyMiwgOTEsIDg4LCA3LCA0LCAxLCAyMTcsIAorICAgIDE1MiwgODgsIDcsIDQsIDEsIDcwLCA4OCwgNywgNCwgMSwgMjE0LCAxMDUsIDg4LCA3LCA0LCAxLCAyMTIsIDk4LCA4OCwgNywgCisgICAgNCwgMSwgMjExLCAxNzgsIDg4LCA3LCA0LCAxLCAyMTEsIDExNywgODgsIDcsIDQsIDEsIDIxMCwgMTU5LCAzNywgNywgNiwgCisgICAgMSwgNjEsIDM3LCA3LCA2LCAxLCAyNTMsIDE1OCwgMzcsIDcsIDYsIDEsIDI1MSwgNjYsIDM3LCA3LCA2LCAxLCAyNDksIDYwLCAKKyAgICAzNywgNywgNiwgMSwgNzUsIDM3LCA3LCA2LCAxLCAyNDUsIDYsIDM3LCA3LCA2LCAxLCAyNDMsIDIwMiwgMzcsIDcsIDYsIDEsIAorICAgIDI0MiwgNjAsIDM3LCA3LCA2LCAxLCA3MywgMzcsIDcsIDYsIDEsIDIzNSwgMTQ0LCAzNywgNywgNiwgMSwgMjM1LCAyMywgCisgICAgMzcsIDcsIDYsIDEsIDE1NiwgMzcsIDcsIDYsIDEsIDE5MywgMzcsIDcsIDYsIDEsIDIzMCwgMjUsIDM3LCA3LCA2LCAxLCAKKyAgICA3NiwgMzcsIDcsIDYsIDEsIDIyNiwgMTA1LCAzNywgNywgNiwgMSwgMjI0LCA5NiwgMzcsIDcsIDYsIDEsIDE1MywgMzcsIDcsIAorICAgIDYsIDEsIDIyMiwgOTEsIDM3LCA3LCA2LCAxLCAyMTcsIDE1MiwgMzcsIDcsIDYsIDEsIDcwLCAzNywgNywgNiwgMSwgMjE0LCAKKyAgICAxMDUsIDM3LCA3LCA2LCAxLCAyMTIsIDk4LCAzNywgNywgNiwgMSwgMjExLCAxNzgsIDM3LCA3LCA2LCAxLCAyMTEsIDExNywgCisgICAgMzcsIDcsIDYsIDEsIDIxMCwgMTU5LCAzNywgNywgNCwgMSwgNjEsIDM3LCA3LCA0LCAxLCAyNTMsIDE1OCwgMzcsIDcsIDQsIAorICAgIDEsIDI1MSwgNjYsIDM3LCA3LCA0LCAxLCAyNDksIDYwLCAzNywgNywgNCwgMSwgNzUsIDM3LCA3LCA0LCAxLCAyNDUsIDYsIAorICAgIDM3LCA3LCA0LCAxLCAyNDMsIDIwMiwgMzcsIDcsIDQsIDEsIDI0MiwgNjAsIDM3LCA3LCA0LCAxLCA3MywgMzcsIDcsIDQsIAorICAgIDEsIDIzNSwgMTQ0LCAzNywgNywgNCwgMSwgMjM1LCAyMywgMzcsIDcsIDQsIDEsIDE1NiwgMzcsIDcsIDQsIDEsIDE5MywgCisgICAgMzcsIDcsIDQsIDEsIDIzMCwgMjUsIDM3LCA3LCA0LCAxLCA3NiwgMzcsIDcsIDQsIDEsIDIyNiwgMTA1LCAzNywgNywgNCwgCisgICAgMSwgMjI0LCA5NiwgMzcsIDcsIDQsIDEsIDE1MywgMzcsIDcsIDQsIDEsIDIyMiwgOTEsIDM3LCA3LCA0LCAxLCAyMTcsIAorICAgIDE1MiwgMzcsIDcsIDQsIDEsIDcwLCAzNywgNywgNCwgMSwgMjE0LCAxMDUsIDM3LCA3LCA0LCAxLCAyMTIsIDk4LCAzNywgNywgCisgICAgNCwgMSwgMjExLCAxNzgsIDM3LCA3LCA0LCAxLCAyMTEsIDExNywgMzcsIDcsIDQsIDEsIDIxMCwgMTU5LCAzNywgMjEsIAorICAgIDIxMCwgODYsIDE1MiwgMzcsIDU0LCAyNDUsIDE2NywgMTUyLCAzNywgNTQsIDIxNSwgNzYsIDE1MiwgMzcsIDU0LCAyMTYsIAorICAgIDE2NCwgMTUyLCAzNywgNTQsIDI0NCwgNSwgMTUyLCAzNywgNTQsIDI0NCwgMTE4LCAxNTIsIDM3LCA1NCwgMjE5LCAxMTksIAorICAgIDE1MiwgMzcsIDU0LCAyMjAsIDExOSwgMTUyLCAzNywgNTQsIDI0NSwgMTkwLCAxNTIsIDM3LCA1NCwgMjI4LCAxOTcsIDE1MiwgCisgICAgMzcsIDU0LCAyMTUsIDczLCA1MiwgMzcsIDIxLCAxMTAsIDUyLCAzNywgMjEsIDEwNSwgNTIsIDM3LCAyMSwgMTU4LCA1MiwgCisgICAgMzcsIDIxLCAxNjEsIDUyLCAzNywgMjEsIDE4OSwgNTIsIDM3LCAyMSwgMTk0LCA1MiwgMzcsIDIxLCAxOTgsIDUyLCAzNywgCisgICAgMjEsIDE5NSwgNTIsIDM3LCAyMSwgMjAwLCA1MiwgMzcsIDU0LCAyMTYsIDI0NywgMTUyLCAzNywgMjEsIDIxMCwgODYsIDkzLCAKKyAgICA5OSwgMTkyLCAyNDEsIDQ0LCA5MywgOTksIDExNCwgMjQxLCA0NCwgOTMsIDk5LCAxOTIsIDIxMywgMjM5LCA5MywgOTksIAorICAgIDExNCwgMjEzLCAyMzksIDkzLCA5OSwgMTkyLCAyMTUsIDIxMSwgMjQ4LCAxNTcsIDI0MSwgNDQsIDkzLCA5OSwgMTE0LCAKKyAgICAyMTUsIDIxMSwgMjQ4LCAxNTcsIDI0MSwgNDQsIDkzLCA5OSwgMTkyLCAyMTUsIDIxMSwgMjQ4LCAxNTcsIDIxMywgMjM5LCAKKyAgICA5MywgOTksIDExNCwgMjE1LCAyMTEsIDI0OCwgMTU3LCAyMTMsIDIzOSwgOTMsIDk5LCAxOTIsIDIyNCwgMjQsIDI0OCwgCisgICAgMTU3LCAyNDEsIDQ0LCA5MywgOTksIDExNCwgMjI0LCAyNCwgMjQ4LCAxNTcsIDI0MSwgNDQsIDkzLCA5OSwgMTkyLCAyMjQsIAorICAgIDI0LCAyNDgsIDE1NywgMjEzLCAyMzksIDkzLCA5OSwgMTE0LCAyMjQsIDI0LCAyNDgsIDE1NywgMjEzLCAyMzksIDkzLCA5OSwgCisgICAgMTkyLCAxMjQsIDIyLCAyMjIsIDI1MSwgOTMsIDk5LCAxMjQsIDE5MiwgMjIsIDQ0LCAyNDEsIDIyMSwgOTMsIDk5LCAxMjQsIAorICAgIDExNCwgMjIsIDQ0LCAyMzIsIDIzMCwgOTMsIDk5LCAxMTQsIDEyNCwgMjIsIDIyMiwgMjUxLCA5MywgOTksIDE5MiwgMTI0LCAKKyAgICAyMiwgMjMzLCA0NiwgOTMsIDk5LCAxMjQsIDE5MiwgMjIsIDQzLCAyNDEsIDIyMSwgOTMsIDk5LCAxMjQsIDExNCwgMjIsIAorICAgIDQzLCAyMzIsIDIzMCwgOTMsIDk5LCAxMTQsIDEyNCwgMjIsIDIzMywgNDYsIDkzLCA5OSwgMTkyLCAxMjAsIDIyLCAyMjIsIAorICAgIDI1MSwgOTMsIDk5LCAxMjAsIDE5MiwgMjIsIDQ0LCAyNDEsIDIyMSwgOTMsIDk5LCAxMjAsIDExNCwgMjIsIDQ0LCAyMzIsIAorICAgIDIzMCwgOTMsIDk5LCAxMTQsIDEyMCwgMjIsIDIyMiwgMjUxLCA5MywgOTksIDE5MiwgMTIwLCAyMiwgMjMzLCA0NiwgOTMsIAorICAgIDk5LCAxMjAsIDE5MiwgMjIsIDQzLCAyNDEsIDIyMSwgOTMsIDk5LCAxMjAsIDExNCwgMjIsIDQzLCAyMzIsIDIzMCwgOTMsIAorICAgIDk5LCAxMTQsIDEyMCwgMjIsIDIzMywgNDYsIDkzLCA5OSwgMTkyLCA2NywgMjIsIDIyMiwgMjUxLCA5MywgOTksIDY3LCAKKyAgICAxOTIsIDIyLCA0NCwgMjQxLCAyMjEsIDkzLCA5OSwgMTIwLCAxMTQsIDIyLCA0NCwgMTI0LCAyMzIsIDIzMCwgOTMsIDk5LCAKKyAgICAxMjQsIDExNCwgMjIsIDQ0LCAxMjAsIDIzMiwgMjMwLCA5MywgOTksIDY3LCAxMTQsIDIyLCA0NCwgMjMyLCAyMzAsIDkzLCAKKyAgICA5OSwgMTI0LCAxOTIsIDIyLCA0NCwgMTIwLCAyNDEsIDIyMSwgOTMsIDk5LCAxMjAsIDE5MiwgMjIsIDQ0LCAxMjQsIDI0MSwgCisgICAgMjIxLCA5MywgOTksIDExNCwgNjcsIDIyLCAyMjIsIDI1MSwgOTMsIDk5LCAxOTIsIDY3LCAyMiwgMjMzLCA0NiwgOTMsIDk5LCAKKyAgICA2NywgMTkyLCAyMiwgNDMsIDI0MSwgMjIxLCA5MywgOTksIDEyMCwgMTE0LCAyMiwgNDMsIDEyNCwgMjMyLCAyMzAsIDkzLCAKKyAgICA5OSwgMTI0LCAxMTQsIDIyLCA0MywgMTIwLCAyMzIsIDIzMCwgOTMsIDk5LCA2NywgMTE0LCAyMiwgNDMsIDIzMiwgMjMwLCAKKyAgICA5MywgOTksIDEyNCwgMTkyLCAyMiwgNDMsIDEyMCwgMjQxLCAyMjEsIDkzLCA5OSwgMTIwLCAxOTIsIDIyLCA0MywgMTI0LCAKKyAgICAyNDEsIDIyMSwgOTMsIDk5LCAxMTQsIDY3LCAyMiwgMjMzLCA0NiwgOTMsIDk5LCAxOTIsIDEyNCwgMjIsIDI0MSwgNDQsIAorICAgIDkzLCA5OSwgNDMsIDExNCwgMjIsIDQ0LCAxMjQsIDIzMiwgMjMwLCA5MywgOTksIDQ0LCAxMTQsIDIyLCA0MywgMTI0LCAKKyAgICAyMzIsIDIzMCwgOTMsIDk5LCAxMjQsIDE5MiwgMjIsIDIwMywgMjQxLCAyMjEsIDkzLCA5OSwgMTI0LCAxMTQsIDIyLCAyMDMsIAorICAgIDIzMiwgMjMwLCA5MywgOTksIDQ0LCAxOTIsIDIyLCA0MywgMTI0LCAyNDEsIDIyMSwgOTMsIDk5LCA0MywgMTkyLCAyMiwgCisgICAgNDQsIDEyNCwgMjQxLCAyMjEsIDkzLCA5OSwgMTE0LCAxMjQsIDIyLCAyNDEsIDQ0LCA5MywgOTksIDE5MiwgMTIwLCAyMiwgCisgICAgMjQxLCA0NCwgOTMsIDk5LCA0MywgMTE0LCAyMiwgNDQsIDEyMCwgMjMyLCAyMzAsIDkzLCA5OSwgNDQsIDExNCwgMjIsIDQzLCAKKyAgICAxMjAsIDIzMiwgMjMwLCA5MywgOTksIDEyMCwgMTkyLCAyMiwgMjAzLCAyNDEsIDIyMSwgOTMsIDk5LCAxMjAsIDExNCwgMjIsIAorICAgIDIwMywgMjMyLCAyMzAsIDkzLCA5OSwgNDQsIDE5MiwgMjIsIDQzLCAxMjAsIDI0MSwgMjIxLCA5MywgOTksIDQzLCAxOTIsIAorICAgIDIyLCA0NCwgMTIwLCAyNDEsIDIyMSwgOTMsIDk5LCAxMTQsIDEyMCwgMjIsIDI0MSwgNDQsIDkzLCA5OSwgMTkyLCA2NywgCisgICAgMjIsIDI0MSwgNDQsIDkzLCA5OSwgNDMsIDExNCwgMjIsIDQ0LCA2NywgMjMyLCAyMzAsIDkzLCA5OSwgNDQsIDExNCwgMjIsIAorICAgIDQzLCA2NywgMjMyLCAyMzAsIDkzLCA5OSwgNjcsIDE5MiwgMjIsIDIwMywgMjQxLCAyMjEsIDkzLCA5OSwgMTIwLCAxMTQsIAorICAgIDIyLCAxMjQsIDIwMywgMjMyLCAyMzAsIDkzLCA5OSwgMTI0LCAxMTQsIDIyLCAxMjAsIDIwMywgMjMyLCAyMzAsIDkzLCA5OSwgCisgICAgNjcsIDExNCwgMjIsIDIwMywgMjMyLCAyMzAsIDkzLCA5OSwgNDMsIDEyMCwgMTE0LCAyMiwgNDQsIDEyNCwgMjMyLCAyMzAsIAorICAgIDkzLCA5OSwgNDQsIDEyMCwgMTE0LCAyMiwgNDMsIDEyNCwgMjMyLCAyMzAsIDkzLCA5OSwgNDMsIDEyNCwgMTE0LCAyMiwgCisgICAgNDQsIDEyMCwgMjMyLCAyMzAsIDkzLCA5OSwgNDQsIDEyNCwgMTE0LCAyMiwgNDMsIDEyMCwgMjMyLCAyMzAsIDkzLCA5OSwgCisgICAgMTI0LCAxOTIsIDIyLCAxMjAsIDIwMywgMjQxLCAyMjEsIDkzLCA5OSwgMTIwLCAxOTIsIDIyLCAxMjQsIDIwMywgMjQxLCAKKyAgICAyMjEsIDkzLCA5OSwgNDQsIDE5MiwgMjIsIDQzLCA2NywgMjQxLCAyMjEsIDkzLCA5OSwgNDMsIDE5MiwgMjIsIDQ0LCA2NywgCisgICAgMjQxLCAyMjEsIDkzLCA5OSwgMTE0LCA2NywgMjIsIDI0MSwgNDQsIDkzLCA5OSwgMTkyLCA1MiwgMjQ4LCAxNTcsIDI0MSwgCisgICAgNDQsIDkzLCA5OSwgMTE0LCA1MiwgMjQ4LCAxNTcsIDI0MSwgNDQsIDkzLCA5OSwgMTkyLCA1MiwgMjQ4LCAxNTcsIDIxMywgCisgICAgMjM5LCA5MywgOTksIDExNCwgNTIsIDI0OCwgMTU3LCAyMTMsIDIzOSwgOTMsIDk5LCA1MiwgMjQxLCA0NCwgOTMsIDk5LCAKKyAgICA1MiwgMjEzLCAyMzksIDkzLCA5OSwgMTI0LCAyMTksIDE1NSwgMjIsIDQ0LCAyNDYsIDExMywgOTMsIDk5LCAxMjQsIDUyLCAKKyAgICAyMiwgNDQsIDIxOSwgMTU0LCA5MywgOTksIDUyLCAxMjQsIDIyLCAyMjIsIDI1MSwgOTMsIDk5LCAxMjQsIDIxOSwgMTU1LCAKKyAgICAyMiwgNDMsIDI0NiwgMTEzLCA5MywgOTksIDEyNCwgNTIsIDIyLCA0MywgMjE5LCAxNTQsIDkzLCA5OSwgNTIsIDEyNCwgMjIsIAorICAgIDIzMywgNDYsIDkzLCA5OSwgMTIwLCAyMTksIDE1NSwgMjIsIDQ0LCAyNDYsIDExMywgOTMsIDk5LCAxMjAsIDUyLCAyMiwgCisgICAgNDQsIDIxOSwgMTU0LCA5MywgOTksIDUyLCAxMjAsIDIyLCAyMjIsIDI1MSwgOTMsIDk5LCAxMjAsIDIxOSwgMTU1LCAyMiwgCisgICAgNDMsIDI0NiwgMTEzLCA5MywgOTksIDEyMCwgNTIsIDIyLCA0MywgMjE5LCAxNTQsIDkzLCA5OSwgNTIsIDEyMCwgMjIsIAorICAgIDIzMywgNDYsIDkzLCA5OSwgNjcsIDIxOSwgMTU1LCAyMiwgNDQsIDI0NiwgMTEzLCA5MywgOTksIDY3LCA1MiwgMjIsIDQ0LCAKKyAgICAyMTksIDE1NCwgOTMsIDk5LCA1MiwgNjcsIDIyLCAyMjIsIDI1MSwgOTMsIDk5LCA2NywgMjE5LCAxNTUsIDIyLCA0MywgCisgICAgMjQ2LCAxMTMsIDkzLCA5OSwgNjcsIDUyLCAyMiwgNDMsIDIxOSwgMTU0LCA5MywgOTksIDUyLCA2NywgMjIsIDIzMywgNDYsIAorICAgIDkzLCA5OSwgMTI0LCAyMTksIDE1NSwgMjIsIDIwMywgMjQ2LCAxMTMsIDkzLCA5OSwgMTI0LCA1MiwgMjIsIDIwMywgMjE5LCAKKyAgICAxNTQsIDkzLCA5OSwgNTIsIDEyNCwgMjIsIDI0MSwgNDQsIDkzLCA5OSwgMTIwLCAyMTksIDE1NSwgMjIsIDIwMywgMjQ2LCAKKyAgICAxMTMsIDkzLCA5OSwgMTIwLCA1MiwgMjIsIDIwMywgMjE5LCAxNTQsIDkzLCA5OSwgNTIsIDEyMCwgMjIsIDI0MSwgNDQsIAorICAgIDkzLCA5OSwgNjcsIDIxOSwgMTU1LCAyMiwgMjAzLCAyNDYsIDExMywgOTMsIDk5LCA2NywgNTIsIDIyLCAyMDMsIDIxOSwgCisgICAgMTU0LCA5MywgOTksIDUyLCA2NywgMjIsIDI0MSwgNDQsIDkzLCA5OSwgMTkyLCAyNTQsIDI2LCAxMjQsIDIyLCAyMjIsIAorICAgIDI1MSwgOTMsIDk5LCAxOTIsIDI1NCwgMjYsIDEyNCwgMjIsIDIzMywgNDYsIDkzLCA5OSwgMTkyLCAyNTQsIDI2LCAxMjAsIAorICAgIDIyLCAyMzMsIDQ2LCA5MywgOTksIDE5MiwgMjU0LCAyNiwgMTIwLCAyMiwgMjIyLCAyNTEsIDkzLCA5OSwgMTkyLCAyNDcsIAorICAgIDI1NSwgMjE0LCAxNjAsIDQ0LCAyMTYsIDQyLCAyMzIsIDEwOCwgMjMzLCA0NiwgOTMsIDk5LCAxOTIsIDI0NywgMjU1LCAKKyAgICAyMTQsIDE2MCwgNDMsIDIxNiwgNDIsIDIzMiwgMTA4LCAyMjIsIDI1MSwgOTMsIDk5LCAxOTIsIDI0NywgMjU1LCAyNDksIAorICAgIDEzMCwgOTMsIDk5LCAxOTIsIDIzMywgNDYsIDkzLCA5OSwgMTkyLCAyMTQsIDE2MywgOTMsIDk5LCAxOTIsIDIyMiwgMjUxLCAKKyAgICA5MywgOTksIDE5MiwgMjQ2LCAxMDYsIDkzLCA5OSwgMTE0LCAyMzMsIDQ2LCA5MywgOTksIDExNCwgMjE0LCAxNjMsIDkzLCAKKyAgICA5OSwgMTE0LCAyMjIsIDI1MSwgOTMsIDk5LCAxMTQsIDI0NiwgMTA2LCA5MywgOTksIDE5MiwgNDMsIDIyLCAxMTQsIDIyMiwgCisgICAgMjUxLCA5MywgOTksIDE5MiwgMTIwLCAyMiwgMTE0LCAyNDYsIDEwNiwgOTMsIDk5LCAxMTQsIDQzLCAyMiwgMTkyLCAyMjIsIAorICAgIDI1MSwgOTMsIDk5LCAxMTQsIDEyMCwgMjIsIDE5MiwgMjQ2LCAxMDYsIDIxNCwgMTYwLCAxNjMsIDI1MSwgMjEzLCAyMzIsIAorICAgIDEwOCwgMTIzLCAyNDUsIDE4OSwgMjUxLCAyMTMsIDIzMiwgMTA4LCAxMjMsIDIyNCwgMjIsIDI1MSwgMjEzLCAyMzIsIDEwOCwgCisgICAgMTM0LCAyNDUsIDE4NywgMjUxLCAyMTMsIDIzMiwgMTA4LCAxNjMsIDI1MSwgMjEzLCAyMzIsIDEwOCwgMjQ0LCA4MSwgMjQ1LCAKKyAgICAxODcsIDI1MSwgMjEzLCAyMzIsIDEwOCwgMTM0LCAyMjQsIDIwLCAyNTEsIDIxMywgMjMyLCAxMDgsIDIyMCwgMTIyLCAyNDUsIAorICAgIDE4NywgMjUxLCAyMTMsIDI0MywgMjI5LCAyNTEsIDIxMywgNDMsIDIyMCwgMTIyLCAyNDUsIDE4NywgMjUxLCAyMTMsIDQzLCAKKyAgICAxMzQsIDIyNCwgMjAsIDI1MSwgMjEzLCA0MywgMjQ0LCA4MSwgMjQ1LCAxODcsIDI1MSwgMjEzLCA0MywgMTYzLCAyNTEsIAorICAgIDIxMywgNDMsIDEzNCwgMjQ1LCAxODcsIDI1MSwgMjEzLCA0MywgMTIzLCAyMjQsIDIyLCAyNTEsIDIxMywgNDMsIDEyMywgCisgICAgMjQ1LCAxODksIDI1MSwgMjEzLCA0NCwgMTYzLCAyNTEsIDIxMywgMTkyLCAyMjAsIDkyLCAyMzEsIDgyLCAyMjAsIDkyLCAKKyAgICAyNDgsIDE2MiwgMjIwLCA5MiwgMjE0LCAxNjAsIDEyMywgMjQ1LCAxODksIDI1MSwgMjEzLCA0NCwgMTIzLCAyNDUsIDE4OSwgCisgICAgMjUxLCAyMTMsIDIyNCwgMjYsIDIzMiwgMTA4LCAyMzMsIDQ2LCAyMjQsIDI2LCAyMzIsIDEwOCwgMjIyLCAyNTEsIDIyNCwgCisgICAgMjYsIDIxNCwgMTYwLCAyMzMsIDQ2LCAyMjQsIDI2LCAyMTQsIDE2MCwgNDMsIDIyLCAyMzIsIDEwOCwgNDMsIDIyLCAyMzIsIAorICAgIDEwOCwgMjIyLCAyNTEsIDIyNCwgMjYsIDIxNCwgMTYwLCA0MywgMjIsIDIzMiwgMTA4LCAyMjIsIDI1MSwgMjI0LCAyNiwgCisgICAgMjE0LCAxNjAsIDQzLCAyMiwgMjE0LCAxNjAsIDQ0LCAyMiwgMjMyLCAxMDgsIDIzMywgNDYsIDIyNCwgMjYsIDIxNCwgMTYwLCAKKyAgICA0MywgMjIsIDIxNCwgMTYwLCA0NCwgMjIsIDIzMiwgMTA4LCAyMjIsIDI1MSwgMjI0LCAyNiwgMjE0LCAxNjAsIDIyMiwgCisgICAgMjUxLCAyMjQsIDI2LCAyMTQsIDE2MCwgNDQsIDIyLCAyMzIsIDEwOCwgMjMzLCA0NiwgMjI0LCAyNiwgMjE0LCAxNjAsIDQ0LCAKKyAgICAyMiwgMjMyLCAxMDgsIDQzLCAyMiwgMjMyLCAxMDgsIDIyMiwgMjUxLCA4NSwgMjE4LCAyMzQsIDcxLCAyMTgsIDIzNCwgNzEsIAorICAgIDQyLCAyLCAyMjIsIDE4MywgMjQ5LCAxNTksIDcxLCA0MiwgMjQ5LCAxODcsIDg1LCA0LCAyMTgsIDIzNCwgNDIsIDIsIDIwMywgCisgICAgMjQ0LCAxMDUsIDQyLCAyLCA2NywgMjQ0LCAxMDUsIDQyLCAyLCAyMjYsIDE0NCwgMjQ5LCAxMjYsIDI0NCwgMTA1LCA0MiwgCisgICAgMiwgMjE0LCAxNjAsIDQzLCAyMTYsIDQyLCAyMzIsIDEwOCwgNDQsIDI0NCwgMTA1LCA0MiwgMiwgMjE0LCAxNjAsIDQ0LCAKKyAgICAyMTYsIDQyLCAyMzIsIDEwOCwgNDMsIDI0NCwgMTA1LCA0MiwgMiwgMjQ3LCAyNTUsIDI0OSwgMTI2LCAyNDQsIDEwNSwgODUsIAorICAgIDQsIDIxOCwgMjM0LCA3MSwgNCwgMjE4LCAyMzQsIDg1LCAyMjMsIDExNiwgNzEsIDIyMywgMTE2LCA4NSwgNjcsIDIyMywgCisgICAgMTE2LCA3MSwgNjcsIDIyMywgMTE2LCA4NSwgMjI2LCA2LCA3MSwgMjI2LCA2LCA4NSwgMjE0LCAxNjIsIDIxNSwgMjI1LCAKKyAgICA3MSwgMjE0LCAxNjIsIDIxNSwgMjI1LCA4NSwgMjE0LCAxNjIsIDQsIDIxNSwgMjI1LCA3MSwgMjE0LCAxNjIsIDQsIDIxNSwgCisgICAgMjI1LCA4NSwgMjIyLCAyNDcsIDIxNSwgMjI1LCA3MSwgMjIyLCAyNDcsIDIxNSwgMjI1LCA4NSwgMjIyLCAyNDcsIDQsIAorICAgIDIxNSwgMjI1LCA3MSwgMjIyLCAyNDcsIDQsIDIxNSwgMjI1LCA4NSwgMjIyLCAyNDcsIDIyNSwgOCwgNzEsIDIyMiwgMjQ3LCAKKyAgICAyMjUsIDgsIDg1LCAyNDYsIDEwNSwgMjE1LCAyMjUsIDcxLCAyNDYsIDEwNSwgMjE1LCAyMjUsIDg1LCAyNDYsIDEwNSwgNCwgCisgICAgMjE1LCAyMjUsIDcxLCAyNDYsIDEwNSwgNCwgMjE1LCAyMjUsIDg1LCAyMzMsIDQyLCAyMTUsIDIyNSwgNzEsIDIzMywgNDIsIAorICAgIDIxNSwgMjI1LCA4NSwgMjMzLCA0MiwgNCwgMjE1LCAyMjUsIDcxLCAyMzMsIDQyLCA0LCAyMTUsIDIyNSwgODUsIDIzMywgCisgICAgNDIsIDIyNSwgOCwgNzEsIDIzMywgNDIsIDIyNSwgOCwgODUsIDI0NywgMjQ4LCA3MSwgMjQ3LCAyNDgsIDcxLCAyNDcsIAorICAgIDI0OSwgMjQ5LCAxODcsIDg1LCA0LCAyNDcsIDI0OCwgMjQ0LCA4OSwgMjMyLCAxMDQsIDcxLCAyNTAsIDM1LCAyNDYsIDExOCwgCisgICAgMjUwLCAzNSwgMjUwLCAzNiwgMiwgNjcsIDI0NCwgMTA1LCAyNTEsIDExMSwgODUsIDI1MCwgMzUsIDI1MCwgMzYsIDIsIDQzLCAKKyAgICAxNjMsIDI1MSwgMjIxLCAyNTAsIDM2LCAyLCA0NCwgMTYzLCAyNTEsIDIyMSwgMjUwLCAzNiwgMiwgMjMyLCAxMDgsIDE2MywgCisgICAgMjUxLCAyMjEsIDI1MCwgMzYsIDIsIDIxNCwgMTYwLCAxNjMsIDI1MSwgMjIxLCAyNTAsIDM2LCAyLCAyMTQsIDE2MCwgNDQsIAorICAgIDIyNCwgMjYsIDI1MSwgMjIxLCAyNTAsIDM2LCAyLCAyNTQsIDE1NSwgMjUxLCA4OCwgMjE0LCAxNjAsIDQzLCAyMjQsIDI2LCAKKyAgICAyNTEsIDIyMSwgNDMsIDE2MywgODUsIDI1MCwgMzUsIDQ0LCAxNjMsIDg1LCAyNTAsIDM1LCAyMzUsIDE5NCwgMjUxLCAxMTMsIAorICAgIDIzNSwgMTk0LCA3MSwgMjUwLCAzNSwgMjE0LCAxNjAsIDE2MywgMjM1LCAxOTQsIDcxLCAyNTAsIDM1LCAyMzIsIDEwOCwgCisgICAgMTYzLCAyMzUsIDE5NCwgNzEsIDI1MCwgMzUsIDIxNCwgMTYwLCA0MywgMjI0LCAyNiwgMjUwLCAzMywgMjU0LCAyNSwgMjE0LCAKKyAgICAxNjAsIDQ0LCAyMjQsIDI2LCAyNTAsIDMzLCAyNTQsIDI1LCAyMzIsIDEwOCwgNDQsIDIyNCwgMjYsIDI1MCwgMzMsIDI1NCwgCisgICAgMjUsIDIzMiwgMTA4LCA0MywgMjI0LCAyNiwgMjUwLCAzMywgMjU0LCAyNSwgMjE0LCAxNjAsIDE2MywgMjUwLCAzNSwgMjMyLCAKKyAgICAxMDgsIDE2MywgMjUwLCAzNSwgODUsIDIzMiwgMTA4LCA0NCwgMjE1LCAyMjUsIDg1LCAyMzIsIDEwOCwgNDMsIDIxNSwgCisgICAgMjI1LCA4NSwgMjE0LCAxNjAsIDQzLCAyMTUsIDIyNSwgODUsIDIxNCwgMTYwLCA0NCwgMjE1LCAyMjUsIDcxLCAyNTEsIAorICAgIDExMywgNDIsIDIsIDQzLCAxNjMsIDI1MSwgMjIxLCA0MiwgMiwgNDQsIDE2MywgMjUxLCAyMjEsIDQyLCAyLCAyMTQsIDE2MCwgCisgICAgNDMsIDI0NywgMjU1LCAxNjMsIDI1MSwgMjIxLCA0MiwgMiwgMjMyLCAxMDgsIDQ0LCAyNDcsIDI1NSwgMTYzLCAyNTEsIAorICAgIDIyMSwgNzEsIDQyLCAyLCA2NywgMjUxLCAyMzIsIDIzMiwgMjEzLCA3MSwgMjE0LCAxNjIsIDIxNSwgMjI2LCAyLCAyNDcsIAorICAgIDEyMCwgMjE0LCAxNjIsIDIxNSwgMjI2LCAyLCA0MywgMTYzLCAyNTEsIDIyMSwgMjE0LCAxNjIsIDIxNSwgMjI2LCAyLCA0NCwgCisgICAgMTYzLCAyNTEsIDIyMSwgMjMzLCA4NSwgMjUwLCAzNSwgNzEsIDQyLCAyLCAyMTQsIDE2MCwgNDMsIDIyNCwgMjUsIDcxLCAKKyAgICA0MiwgMiwgMjMyLCAxMDgsIDQzLCAyMjQsIDI1LCA3MSwgNDIsIDIsIDIzMiwgMTA4LCA0NCwgMjI0LCAyNSwgNzEsIDQyLCAKKyAgICAyLCAyMTQsIDE2MCwgNDQsIDIyNCwgMjUsIDcxLCAyNTAsIDM2LCAyLCAyMTQsIDE2MCwgNDMsIDIyNCwgMjUsIDcxLCAyNTAsIAorICAgIDM2LCAyLCAyMzIsIDEwOCwgNDMsIDIyNCwgMjUsIDcxLCAyNTAsIDM2LCAyLCAyMzIsIDEwOCwgNDQsIDIyNCwgMjUsIDcxLCAKKyAgICAyNTAsIDM2LCAyLCAyMTQsIDE2MCwgNDQsIDIyNCwgMjUsIDIxNCwgMTYwLCA0MywgMjE1LCAyMjUsIDIxNCwgMTYwLCA0NCwgCisgICAgMjE1LCAyMjUsIDIzMiwgMTA4LCA0MywgMjE1LCAyMjUsIDcxLCAyMzEsIDgyLCAyMTgsIDIzNCwgODUsIDIzMSwgODIsIAorICAgIDIxOCwgMjM0LCA3MSwgMjMxLCA4MiwgNCwgMjE4LCAyMzQsIDg1LCAyMzEsIDgyLCA0LCAyMTgsIDIzNCwgMjMyLCAxMDgsIAorICAgIDQ0LCAyMTUsIDIyNSwgODUsIDIxOCwgMzgsIDIsIDIyMywgMTMyLCAyNDksIDI0NywgMjE0LCAxOTQsIDIxOSwgNjAsIDI0OSwgCisgICAgMjIyLCA4NSwgMjE4LCAxNTYsIDcxLCAyMTgsIDE1NiwgMjMyLCAyMjgsIDIxNiwgMTMyLCAyMTgsIDM3LCAyNTMsIDIzNCwgCisgICAgMjI4LCA3MSwgMjQ4LCAzOCwgMjI4LCA3MSwgMjQ5LCAxOTUsIDIyNiwgMTYzLCA4NSwgMjE3LCAwLCA3MSwgMjE3LCAwLCAKKyAgICAyNTIsIDE1NiwgMjUxLCAxNjMsIDI1MiwgMTU2LCA5MywgMiwgMjUwLCAxMjksIDI1MiwgMTU2LCA5MywgMiwgMjExLCAxNzgsIAorICAgIDIyMSwgMjU0LCAyMTQsIDE5NSwgMiwgMjIzLCAxNjAsIDI0NiwgODQsIDI0MCwgMjQzLCAyNTIsIDIyLCA3MSwgMjIwLCAyLCAKKyAgICAyMjUsIDEwMSwgODUsIDIyMCwgMiwgMjI1LCAxMDEsIDIyMCwgODcsIDIyMywgNDksIDIyMiwgMTg3LCAyNDQsIDU1LCAyNDEsIAorICAgIDIyOCwgMjUxLCAxMTMsIDg1LCA0MywgMjI1LCA3LCAyMzUsIDI0MiwgODUsIDQ0LCAyMjUsIDcsIDIzNSwgMjQyLCA3MSwgCisgICAgNDMsIDIyNSwgNywgMjM1LCAyNDIsIDcxLCAxMjAsIDIyNSwgNywgMjM1LCAyNDIsIDcxLCA0NCwgMjI1LCA3LCAyMzUsIAorICAgIDI0MiwgNzEsIDEyNCwgMjI1LCA3LCAyMzUsIDI0MiwgMjE5LCAxMDEsIDIyLCAyNDksIDEyOSwgMjUwLCAyMTksIDUwLCAKKyAgICAyMjMsIDE3MiwgNTAsIDI1MSwgMjM5LCA1MCwgMjUxLCAyNSwgMjU0LCAxMDIsIDIyNiwgMTQ1LCAyNDksIDEzMCwgMjUwLCAKKyAgICAxMTEsIDIyMywgMzcsIDI0OSwgMTMxLCA2NCwgMjMyLCAxMTgsIDI0OSwgMTMxLCA2NCwgMjM1LCAxMTYsIDIxOCwgMTU3LCAKKyAgICAyMiwgMjQ5LCAxMzYsIDI0NCwgMTY4LCA4NywgMjU0LCAyNDgsIDIyMCwgODksIDI0MiwgMjIsIDIyLCAyMTksIDE4OSwgCisgICAgMjI1LCAyMjAsIDg3LCAyMTAsIDI1NCwgMjExLCA2OSwgMjE1LCAyMTUsIDMxLCAyNDEsIDIyMywgMjE1LCAyMTUsIDMxLCAKKyAgICAyMzMsIDEwNywgMjE1LCAyMTUsIDMxLCAyNDQsIDk2LCAyMTUsIDIxNSwgMzEsIDIxNiwgMTMzLCAyMTUsIDIxNSwgMzEsIAorICAgIDIxMSwgMjM5LCAyMTUsIDIxNSwgMzEsIDIxMiwgNDAsIDIxNSwgMjE1LCAzMSwgMjMwLCAxMTUsIDIxNSwgMjE1LCAzMSwgCisgICAgMjQ1LCAyMjMsIDIxMiwgMSwgNjQsIDI0OCwgMTgsIDcxLCAyNDMsIDIzOSwgMjQ0LCAxOTAsIDcxLCAyMTksIDc0LCAyNDQsIAorICAgIDE5MCwgODUsIDIxOSwgNzQsIDI0NCwgMTkwLCA3MSwgMjE4LCAzOCwgMiwgMjIzLCAxMzIsIDI0NCwgOTIsIDIyNCwgMjIsIAorICAgIDIzMCwgMTI4LCAyMzMsIDgwLCAyMjQsIDIyLCAyMzAsIDEyOCwgMjMxLCA1NCwgMjQ0LCAxMzgsIDUwLCAyNDUsIDIyMywgCisgICAgMjMxLCAxOTAsIDUwLCAyMzUsIDM4LCAyMjEsIDIyMCwgMjE0LCAxNDUsIDIyOSwgOTMsIDIyNSwgMjAsIDI1NCwgMTIsIAorICAgIDIxNywgNDAsIDI0MywgNTIsIDI1MSwgMywgMjMzLCAxOSwgMjEzLCAxNTAsIDIzMiwgMjM4LCAyMjEsIDE5MSwgMjIyLCAxOSwgCisgICAgMjUwLCAyNDgsIDI1NCwgNDIsIDIyNSwgNTIsIDcxLCAyNTAsIDExNywgMjM0LCA3OCwgNzEsIDI1MCwgMTE3LCAyMjQsIDE0LCAKKyAgICA3MSwgMjUwLCAxMTcsIDIyMiwgMTk1LCA3MSwgMjUwLCAxMTcsIDI1MSwgMjMxLCA3MSwgMjUwLCAxMTcsIDIzNCwgMzAsIAorICAgIDcxLCAyNTAsIDExNywgMjI1LCAyMzEsIDg1LCAyNTAsIDExNywgMjM0LCA3OCwgODUsIDI1MCwgMTE3LCAyMjQsIDE0LCA4NSwgCisgICAgMjUwLCAxMTcsIDIyMiwgMTk1LCA4NSwgMjUwLCAxMTcsIDI1MSwgMjMxLCA4NSwgMjUwLCAxMTcsIDIzNCwgMzAsIDg1LCAKKyAgICAyNTAsIDExNywgMjI1LCAyMzEsIDg1LCAyMTksIDE2LCAyMTgsIDUwLCA3MSwgMjQxLCAyMjgsIDIxOCwgNTAsIDcxLCAyNDcsIAorICAgIDI0OSwgMjE4LCA1MCwgODUsIDI0OSwgMjQ1LCAyMTgsIDUwLCA3MSwgMjE5LCAxNiwgMjE4LCA1MCwgODUsIDI0MSwgMjI4LCAKKyAgICAyMTgsIDUwLCA4NSwgMjQ3LCAyNDksIDIxOCwgNTAsIDcxLCAyNDksIDI0NSwgMjE4LCA1MCwgMjQwLCAyNDMsIDIxOCwgCisgICAgMjM4LCAyMjQsIDIyLCAyMjgsIDQ3LCAyNDUsIDE4OSwgMjI4LCA0NywgMjUyLCA3MywgMjQ1LCAxODksIDIyOCwgNDIsIAorICAgIDI1MiwgNzMsIDIxOSwgMTE4LCAyMjgsIDQyLCAyMzAsIDU3LCAyNDQsIDY2LCA1MCwgMjMwLCA1NywgMjI5LCAxODgsIDUwLCAKKyAgICAyMzAsIDU3LCAyMjAsIDc2LCA1MCwgMjEyLCA5LCAxODgsIDI0OSwgMTMwLCAyNDUsIDIyMCwgMTg4LCAyNDksIDEzMCwgCisgICAgMjE0LCAxNzEsIDIyMywgMTEyLCA4NywgMjIzLCAxMTIsIDE2LCAzMSwgMjE1LCA0OCwgMjI1LCAzNCwgMjIzLCAxMTIsIDE2LCAKKyAgICAzMSwgMjE1LCA0NywgMjI1LCAzNCwgMjIzLCAxMTIsIDE2LCAzMSwgMjE1LCA0NiwgMjI1LCAzNCwgMjIzLCAxMTIsIDE2LCAKKyAgICAzMSwgMjE1LCA0NSwgMjI1LCAzNCwgMjIzLCAxMTIsIDE2LCAzMSwgMjE1LCA0NCwgMjI1LCAzNCwgMjIzLCAxMTIsIDE2LCAKKyAgICAzMSwgMjE1LCA0MywgMjI1LCAzNCwgMjIzLCAxMTIsIDE2LCAzMSwgMjE1LCA0MiwgMjI1LCAzNCwgMjIzLCAxMTIsIDE2LCAKKyAgICAzMSwgMjQzLCA1MCwgMjMxLCAxMzgsIDg1LCAyMTQsIDE3MSwgMjIzLCAxMTIsIDg3LCAyMjMsIDExMywgMjI2LCAyMCwgODcsIAorICAgIDIyNSwgMjUyLCAyMjYsIDIwLCA4NywgMjI1LCAxNzQsIDIyNiwgMjAsIDUwLCAyMTEsIDI1NSwgODcsIDI0NywgMjQxLCAKKyAgICAyNDQsIDE4OSwgMjQ3LCAyNDEsIDI0NCwgMTg4LCAyNDcsIDI0MSwgMjQ0LCAxODcsIDI0NywgMjQxLCAyNDQsIDE4NiwgCisgICAgMjQ3LCAyNDEsIDI0NCwgMTg1LCAyNDcsIDI0MSwgMjQ0LCAxODQsIDcxLCAyNTAsIDM2LCAyLCA1OSwgMjIyLCAyNTEsIDcxLCAKKyAgICAyNTAsIDM2LCAyLCAxMTMsIDI0NywgMTE4LCA4NSwgMjUwLCAzNiwgMiwgNzEsIDU5LCAyMjIsIDI1MSwgODUsIDI1MCwgMzYsIAorICAgIDIsIDExMywgNzEsIDI0NywgMTE4LCAyMzAsIDE0MiwgMzEsIDIxMSwgNjksIDIzMCwgMTQyLCAzMSwgMjEwLCAyNTMsIDI0NywgCisgICAgMjI0LCAzMSwgMjQyLCAxMzEsIDIxMSwgNjksIDI0NywgMjI0LCAzMSwgMjMzLCAxMywgMjEwLCAyNTMsIDI0NywgMjI0LCAKKyAgICAzMSwgMjMzLCAxMywgMjExLCA2OSwgMjQ3LCAyMjQsIDMxLCAyNDIsIDEzMSwgMjEwLCAyNTMsIDcxLCAyNDQsIDczLCA4NSwgCisgICAgMjQ0LCA3MywgMjQyLCAyMiwgMjIsIDIyNSwgMTA0LCAyNTQsIDEyMCwgMjQ5LCAxMjgsIDIxNywgMjM1LCAyMTgsIDE2NCwgCisgICAgNjQsIDI1NCwgMjI2LCAyMjEsIDIwNiwgMjU0LCAxNjksIDI0NCwgNTEsIDI0MywgNjAsIDIxOCwgMTY0LCA2NCwgMjQxLCAKKyAgICAyMDIsIDI1MywgMTk5LCA4NywgMjQ0LCA2MiwgMjI2LCAxMjYsIDcxLCAyMTgsIDE1NiwgMTM0LCAyMzIsIDIwOCwgMjQ5LCAKKyAgICAxNzUsIDIyMiwgMjUxLCAxMzQsIDIzMiwgMjA4LCAyNDksIDE3NSwgMjMzLCA0NiwgMjEyLCA1MCwgNTAsIDEyNSwgMjEzLCAKKyAgICAxMzAsIDUwLCAyNDYsIDExMCwgMjQ0LCAxMzgsIDUwLCAyNDYsIDExMCwgMjMxLCAxOTAsIDUwLCAyMzUsIDIwMywgMjQ0LCAKKyAgICAxMzgsIDIyLCAyMzEsIDE5MCwgNTAsIDIzMSwgMTkwLCAyMiwgMjQ0LCAxMzgsIDUwLCAyMzEsIDE5MCwgMiwgMjE4LCAxMDMsIAorICAgIDUwLCAyMzEsIDE5MCwgMiwgMjE4LCAxMDMsIDIyLCAyMzEsIDE5MCwgMjIsIDI0NCwgMTM4LCA1MCwgNjcsIDIzMSwgMTkwLCAKKyAgICAyLCAyMTgsIDEwMywgNTAsIDIwMywgMjMxLCAxOTAsIDIsIDIxOCwgMTAzLCA1MCwgMjMxLCA4MiwgNzEsIDI1MCwgMzUsIAorICAgIDIzMSwgODIsIDg1LCAyNTAsIDM1LCAyMzEsIDgyLCA0LCA3MSwgMjUwLCAzNSwgMjMxLCAxNTMsIDg3LCAyNDcsIDE2NywgCisgICAgODcsIDIxNCwgMTY5LCAyMjUsIDI1MSwgODcsIDI0OSwgMjMxLCAyNDMsIDIyNCwgMjE0LCAxNDEsIDIyOSwgODgsIDI1MCwgCisgICAgMTYxLCAyMjYsIDYxLCAyMzUsIDQ0LCAyMTMsIDE4NSwgMjUwLCA5MywgODUsIDIzMCwgMTI5LCAyMzIsIDIyNSwgMjIwLCAKKyAgICAxMTIsIDIyMCwgMTQ3LCAyMjQsIDUsIDIyMCwgMTMwLCAyMTksIDU1LCAyNTIsIDE1OSwgMjUyLCAxMjYsIDkyLCAyMzQsIAorICAgIDEzOCwgNzEsIDI0NiwgOTMsIDIzMSwgMTg1LCA3MSwgMjQ2LCA5MywgMjM0LCA3OCwgODUsIDI0NiwgOTMsIDIzMSwgMTg1LCAKKyAgICA4NSwgMjQ2LCA5MywgMjM0LCA3OCwgMjE5LCA2MSwgMjExLCAyMzAsIDIxOSwgNjQsIDIxOCwgMzgsIDI1MiwgNTEsIDI0OSwgCisgICAgMjQ3LCAyMjMsIDE1OSwgODUsIDIxOSwgNjAsIDIxNiwgMTM0LCAyNDksIDI0OCwgMjIsIDIyMywgMTU5LCAyMTUsIDk0LCAKKyAgICA3MSwgMjIwLCAyLCAyMjUsIDEwMSwgMjE1LCA5NCwgODUsIDIyMCwgMiwgMjI1LCAxMDEsIDcxLCAyNDcsIDI0OSwgMjM2LCAKKyAgICAwLCAyMTgsIDIzNCwgMjQ5LCAxMjUsIDIzMywgOTEsIDI0NywgMTkzLCAyNTAsIDI0NCwgMjI2LCAxNjYsIDIyNSwgMTA0LCAKKyAgICAyNTAsIDI0NSwgMjE5LCA4OCwgMjQxLCAyMTIsIDIsIDcxLCAyNDksIDEzMCwgMzcsIDI0OSwgMTI1LCAyMzMsIDkxLCAyNTAsIAorICAgIDE1MywgMjI4LCA3NSwgMjQ1LCAxMjQsIDI1NCwgMTQxLCAyMjYsIDE5MSwgNDMsIDIxMiwgMjYsIDIxNSwgMjUxLCA4NSwgCisgICAgMjE1LCA1NSwgNDMsIDIxMiwgMjYsIDIxNSwgMjUxLCA3MSwgMjE1LCA1NSwgNDMsIDIxMiwgMjYsIDIxNSwgMjUxLCA4NSwgCisgICAgNDMsIDIzMywgOTIsIDIzMSwgNTMsIDcxLCA0MywgMjMzLCA5MiwgMjMxLCA1MywgMjQ2LCA4OSwgMjE5LCA4MiwgNTAsIAorICAgIDExNCwgNzEsIDI0NiwgMTA1LCAyMTUsIDIyNSwgNDMsIDI1MCwgMCwgMjQ1LCAxMjQsIDkyLCAyMjEsIDI1NCwgMjQ0LCAKKyAgICAxNzUsIDI0NywgMjU1LCAyMzYsIDAsIDcxLCAyNTAsIDM2LCAyMzYsIDAsIDg1LCAyMTgsIDIzNCwgODUsIDIxNSwgMTkyLCAKKyAgICAyMjMsIDYwLCA0MywgMjQ1LCAxMjMsIDIyMywgNjAsIDQzLCAyNDUsIDEyMiwgMjUzLCAyMTEsIDE2LCAzMSwgMjE0LCAxNDUsIAorICAgIDExNCwgMjUwLCAzNiwgMiwgMjE4LCAxMDMsIDIyLCAxMTMsIDE3MCwgNDgsIDIyNSwgMTg5LCAyMjIsIDI0OCwgMjM1LCAKKyAgICAyMDUsIDIyNSwgMTg5LCAyMzMsIDQzLCAyMzUsIDIwNSwgMjI1LCAxODksIDIzNSwgMTkzLCAyMjUsIDE4OSwgODUsIDI0OSwgCisgICAgMTMxLCAyMjYsIDE5NywgMjIwLCAyOSwgMjIwLCAxNywgMjE5LCAyMjksIDI1MCwgNjEsIDI1MCwgMjI2LCAyNDEsIDE1NywgCisgICAgMjE5LCAxMjYsIDI0MywgNjEsIDIxMSwgMjMwLCAyNDAsIDIyMCwgMjQzLCA2MSwgMiwgMjQyLCAxMiwgMjMxLCAxNzMsIDE2LCAKKyAgICAzMSwgMjMyLCAyMjksIDIzMCwgMTE1LCAyMTQsIDE5NSwgMjI2LCAxOTcsIDI0MiwgMTIyLCAyNDQsIDEyLCAyNDQsIDc0LCAKKyAgICAyMzYsIDAsIDI0MSwgNTksIDI0NCwgMTI5LCAyMjIsIDE0LCA0MiwgMjQ0LCAxMSwgMjQ5LCAxNTksIDIxOSwgMTA0LCAyNDAsIAorICAgIDExMiwgMjE5LCAxMDcsIDIyNSwgMTY4LCAyLCAyNTIsIDE1OSwgMjE2LCAyNDIsIDIzNSwgMTMxLCAyNTIsIDE0NiwgODcsIAorICAgIDI0MSwgMjMxLCAyNDIsIDEzMywgODcsIDI0MywgMjMyLCAyMjQsIDE0MiwgMjQ5LCAxMDMsIDIyNiwgMTk3LCA4NSwgMjE4LCAKKyAgICAyMzQsIDcxLCAyNDQsIDc0LCAyLCAyMDMsIDIzMCwgMjI0LCA4NSwgMjE4LCAxMDQsIDIxNCwgMTYwLCAyNTEsIDIxNywgCisgICAgMjIxLCAxOTMsIDg1LCAyMjEsIDE5MywgMjMyLCAxMDgsIDI1MSwgMjE3LCAyMjEsIDE5MywgNzEsIDIyMSwgMTkzLCA3MSwgCisgICAgMTE0LCAyNTAsIDEzMCwgNzgsIDIxNywgMSwgMjMyLCAxNTQsIDUwLCAyMTcsIDUzLCAyNDYsIDg4LCAyNTQsIDE5MSwgMjQ1LCAKKyAgICAxMTksIDIyMywgMTU3LCAyNDQsIDg1LCAyMjMsIDE1NywgMjQyLCAxNSwgMjEzLCAxNzQsIDI0MiwgMTUsIDIxMSwgMTk4LCAKKyAgICAyNDIsIDE1LCAyMzIsIDEwOCwgNDQsIDIyNSwgMTk4LCAyMjUsIDE5OCwgMjE0LCAxNjAsIDQ0LCAyMjUsIDE5OCwgNzEsIAorICAgIDIyOCwgMjMwLCA4NSwgMjI4LCAyMzAsIDI1MCwgMTMwLCA3OCwgMTE0LCAyNTAsIDEzMCwgNzgsIDIzMCwgODQsIDIxMSwgCisgICAgMTc4LCAxMTQsIDIzMCwgODQsIDIxMSwgMTc4LCAyNTIsIDE1NiwgMjExLCAxNzgsIDExNCwgMjUyLCAxNTYsIDIxMSwgMTc4LCAKKyAgICAyMjYsIDEyNiwgMjYsIDI0OSwgMTMwLCAxMTQsIDI2LCAyNDksIDEzMCwgMjA0LCAyNTAsIDE3NSwgMjQ5LCAxMzAsIDExNCwgCisgICAgMjA0LCAyNTAsIDE3NSwgMjQ5LCAxMzAsIDcsIDI0OSwgMTMwLCAyMjAsIDkxLCA3MSwgNywgMjQ5LCAxMzAsIDIyNiwgMTI2LCAKKyAgICA3LCAyNDksIDEzMCwgMjMxLCAxODcsIDI0OSwgMTMwLCAyMTgsIDE1NywgNjQsIDI0OCwgMTQ5LCAyNDQsIDExLCAyMTcsIAorICAgIDE1LCAyNTMsIDIxNiwgMjQ0LCAxMSwgMjUyLCAxNTcsIDI1MywgMjE2LCAxMTQsIDI0NCwgMTEsIDI1MiwgMTU3LCAyNTMsIAorICAgIDIxNiwgMjQ0LCAxMSwgMjQ5LCAyNDMsIDI1MywgMjE2LCA4NSwgMjQ0LCAxMSwgMjI1LCA5LCAyMTgsIDE1NiwgNzEsIDI0NCwgCisgICAgMTEsIDIyNSwgOSwgMjE4LCAxNTYsIDIxOSwgMTEsIDIxOCwgMTExLCAyMjYsIDEyNiwgNzEsIDIxOCwgMTU2LCAzNywgNzEsIAorICAgIDIxOCwgMTU2LCAyMDQsIDI1MCwgMTc1LCA4NSwgMjE4LCAxNTYsIDg1LCAyNTAsIDE3NSwgNzEsIDIxOCwgMTU2LCAyMjYsIAorICAgIDEyNiwgODUsIDIxOCwgMTU2LCAxMTQsIDIyNiwgMTI2LCA4NSwgMjE4LCAxNTYsIDIyNSwgNjAsIDIxOCwgMTU2LCAyMjAsIAorICAgIDkxLCA3MSwgMjE4LCAxNTYsIDExNCwgMjUzLCAyMTYsIDIwNCwgMjUwLCAxNzUsIDI1MywgMjE2LCAyNDUsIDE5MywgMjE4LCAKKyAgICAyNDQsIDI1MywgMjE2LCAyNDUsIDE5MywgMjI1LCA5LCA4NSwgMjE4LCAxNTYsIDI0NSwgMTkzLCAyMjUsIDksIDIyNSwgNjAsIAorICAgIDIxOCwgMTU2LCAyMTksIDEyNSwgMjI1LCA5LCA4NSwgMjE4LCAxNTYsIDI0NSwgMTkzLCAyMjUsIDksIDIyMywgMTE0LCA4NSwgCisgICAgMjE4LCAxNTYsIDExNCwgMjQ1LCAxOTMsIDIyNSwgOSwgMjIzLCAxMTQsIDg1LCAyMTgsIDE1NiwgMjE1LCA3NywgMjI1LCA5LCAKKyAgICA4NSwgMjE4LCAxNTYsIDIxOSwgMTIwLCAyMjUsIDksIDI1MywgMjE2LCAyMTcsIDE1LCAyNTMsIDIxNiwgMjA0LCAyNTAsIAorICAgIDE3NSwgMjE3LCAxNSwgMjUzLCAyMTYsIDExNCwgMjE3LCAxNSwgMjUzLCAyMTYsIDIxOSwgMTI1LCAyMjUsIDE1NywgODUsIAorICAgIDIyLCA3MSwgMjQ0LCA1NCwgODUsIDI0NCwgNTQsIDcxLCAyNDQsIDU0LCAyNDUsIDE5MywgMjI1LCAxNTcsIDIyNiwgMTI2LCAKKyAgICA4NSwgMjQ0LCA1NCwgMzcsIDIwNCwgMjUwLCAxNzUsIDI0NSwgMTkzLCAyMjUsIDksIDIxOCwgMTU2LCAxMTQsIDIxNywgMTUsIAorICAgIDIyNSwgNjAsIDI1MywgMjE2LCAyMTksIDYyLCAyMTYsIDEwNSwgMjE1LCAyMTgsIDIxOSwgNjIsIDExNCwgMjUwLCAxMTQsIAorICAgIDIxOSwgNjIsIDIxOSwgMTMsIDExNCwgMjE5LCAxMywgMjUyLCAxNTcsIDI1MywgMjE2LCAyNDUsIDE5MywgMjE3LCAxNSwgCisgICAgMjI0LCAxNzEsIDI1MywgMjE2LCAxMTQsIDI0NSwgMTkzLCAyMTcsIDE1LCAyMjQsIDE3MSwgMjUzLCAyMTYsIDI0OSwgMTMxLCAKKyAgICA3OCwgMjIwLCA5MSwgNzEsIDI1MCwgMzUsIDE1MiwgOTIsIDI0OSwgMTMxLCA3OCwgMjMyLCAxMDgsIDQ0LCAyNDYsIDg2LCAKKyAgICA3MSwgMjE4LCAyMzQsIDIxNCwgMTYwLCA0NCwgMjQ2LCA4NiwgNzEsIDIxOCwgMjM0LCAyMzIsIDEwOCwgNDQsIDIyMCwgOTEsIAorICAgIDcxLCAyMTgsIDIzNCwgMjE0LCAxNjAsIDQ0LCAyMjAsIDkxLCA3MSwgMjE4LCAyMzQsIDg1LCAyMjQsIDEzLCAxNjQsIDIyNiwgCisgICAgMTQ3LCA3MSwgMjI0LCAxMywgMTY0LCAyMjYsIDE0NywgNzEsIDI0NSwgMzEsIDE2NCwgMjI2LCAxNDcsIDg1LCAyNDcsIAorICAgIDI0OSwgMjMwLCAxODIsIDcxLCAyMTEsIDE3OCwgMTE0LCAyNDUsIDMxLCAxNjQsIDg3LCAxOTIsIDY3LCAxMzAsIDIzMSwgCisgICAgODIsIDY3LCAxMzAsIDExNCwgNjcsIDEzMCwgMTE0LCAyMTksIDE1NSwgMjE1LCA5NCwgMjQ5LCAyMjAsIDIyMywgMjU0LCAKKyAgICAxNjQsIDIyNiwgMTQ3LCAxMTQsIDIxOSwgMTU1LCAyNDksIDIyMCwgMjIzLCAyNTQsIDE2NCwgMjI2LCAxNDcsIDExNCwgNTIsIAorICAgIDIxNSwgOTQsIDI0OSwgMjIwLCAyMjMsIDI1NCwgMTY0LCAyMjYsIDE0NywgMTE0LCA1MiwgMjQ5LCAyMjAsIDIyMywgMjU0LCAKKyAgICAxNjQsIDIyNiwgMTQ3LCAxMTQsIDEyMSwgMjE5LCAxNTUsIDI0OSwgMjIwLCAyMjMsIDI1NCwgMTY0LCAyMjYsIDE0NywgCisgICAgMTE0LCAxMjEsIDUyLCAyNDksIDIyMCwgMjIzLCAyNTQsIDE2NCwgMjI2LCAxNDcsIDI0OSwgOTEsIDIxOCwgMTQwLCAyMjYsIAorICAgIDE1LCA1LCAyMjYsIDE0NywgMTE0LCAyNDUsIDMxLCAxNjQsIDIyNiwgMTQ3LCAxMTQsIDI0MSwgMjI4LCAyNDUsIDMxLCAKKyAgICAxNjQsIDIyNiwgMTQ3LCAxMTQsIDg1LCAyNDEsIDIyNywgMjIyLCAxODcsIDExNCwgODUsIDI0MSwgMjI4LCAyNTEsIDExMywgCisgICAgMjQ0LCA1NSwgMjQxLCAyMjcsIDIyMiwgMTg3LCAyNDQsIDU1LCAyNDEsIDIyOCwgMjUxLCAxMTMsIDIzMSwgODIsIDQzLCAKKyAgICAyMjYsIDQsIDIyNiwgMTQ3LCAyMzEsIDgyLCA0NCwgMjI2LCA0LCAyMjYsIDE0NywgMjMxLCA4MiwgMjQ0LCA2MywgNDMsIAorICAgIDIyNiwgNCwgMjI2LCAxNDcsIDIzMSwgODIsIDI0NCwgNjMsIDQ0LCAyMjYsIDQsIDIyNiwgMTQ3LCAyMzEsIDgyLCAyMzMsIAorICAgIDQyLCAyNTQsIDExMCwgMjUxLCAxNTgsIDIyNiwgMTQ3LCAyMzEsIDgyLCAyMjIsIDI0NywgMjU0LCAxMTAsIDI1MSwgMTU4LCAKKyAgICAyMjYsIDE0NywgMTE0LCAyMzMsIDQyLCAyNTQsIDExMCwgMjIzLCAyNTQsIDE2NCwgMjI2LCAxNDcsIDExNCwgMjIyLCAyNDcsIAorICAgIDI1NCwgMTEwLCAyMjMsIDI1NCwgMTY0LCAyMjYsIDE0NywgMTE0LCAyMzMsIDQyLCAyNTQsIDExMCwgMjUxLCAxNTgsIDIyNiwgCisgICAgMTQ3LCAxMTQsIDIyMiwgMjQ3LCAyNTQsIDExMCwgMjUxLCAxNTgsIDIyNiwgMTQ3LCAxOTIsIDQzLCAyMTYsIDYsIDIyMCwgCisgICAgNTMsIDI1MSwgMTU4LCAyMjYsIDE0NywgMTkyLCA0NCwgMjE2LCA2LCAyMjAsIDUzLCAyNTEsIDE1OCwgMjI2LCAxNDcsIAorICAgIDIzMSwgODIsIDQzLCAyNDksIDk5LCAyNTEsIDE1OCwgMjI2LCAxNDcsIDIzMSwgODIsIDQ0LCAyNDksIDk5LCAyNTEsIDE1OCwgCisgICAgMjI2LCAxNDcsIDI0NywgMjA0LCAxNTIsIDM3LCAyMSwgMTEwLCAyNDcsIDIwNCwgMTUyLCAzNywgMjEsIDEwNSwgMjQ3LCAKKyAgICAyMDQsIDE1MiwgMzcsIDIxLCAxNTgsIDI0NywgMjA0LCAxNTIsIDM3LCAyMSwgMTYxLCAyNDcsIDIwNCwgMTUyLCAzNywgMjEsIAorICAgIDE4OSwgMjQ3LCAyMDQsIDE1MiwgMzcsIDIxLCAxOTQsIDI0NywgMjA0LCAxNTIsIDM3LCAyMSwgMTk4LCAyNDcsIDIwNCwgCisgICAgMTUyLCAzNywgMjEsIDE5NSwgMjQ3LCAyMDQsIDE1MiwgMzcsIDIxLCAyMDAsIDI0NywgMjA0LCAxNTIsIDM3LCA1NCwgMjE2LCAKKyAgICAyNDcsIDI0NywgMjA0LCAzNywgMzUsIDIxLCAxMTAsIDI0NywgMjA0LCAzNywgMzUsIDIxLCAxMDUsIDI0NywgMjA0LCAzNywgCisgICAgMzUsIDIxLCAxNTgsIDI0NywgMjA0LCAzNywgMzUsIDIxLCAxNjEsIDI0NywgMjA0LCAzNywgMzUsIDIxLCAxODksIDI0NywgCisgICAgMjA0LCAzNywgMzUsIDIxLCAxOTQsIDI0NywgMjA0LCAzNywgMzUsIDIxLCAxOTgsIDI0NywgMjA0LCAzNywgMzUsIDIxLCAKKyAgICAxOTUsIDI0NywgMjA0LCAzNywgMzUsIDIxLCAyMDAsIDI0NywgMjA0LCAzNywgMzUsIDU0LCAyMTYsIDI0NywgMjQ3LCAyMDQsIAorICAgIDE1MiwgMzcsIDM1LCAyMSwgMTEwLCAyNDcsIDIwNCwgMTUyLCAzNywgMzUsIDIxLCAxMDUsIDI0NywgMjA0LCAxNTIsIDM3LCAKKyAgICAzNSwgMjEsIDE1OCwgMjQ3LCAyMDQsIDE1MiwgMzcsIDM1LCAyMSwgMTYxLCAyNDcsIDIwNCwgMTUyLCAzNywgMzUsIDIxLCAKKyAgICAxODksIDI0NywgMjA0LCAxNTIsIDM3LCAzNSwgMjEsIDE5NCwgMjQ3LCAyMDQsIDE1MiwgMzcsIDM1LCAyMSwgMTk4LCAyNDcsIAorICAgIDIwNCwgMTUyLCAzNywgMzUsIDIxLCAxOTUsIDI0NywgMjA0LCAxNTIsIDM3LCAzNSwgMjEsIDIwMCwgMjQ3LCAyMDQsIDE1MiwgCisgICAgMzcsIDM1LCA1NCwgMjE2LCAyNDcsIDExNCwgMjExLCAyNDYsIDk3LCA3NCwgMTE0LCA5NiwgNTAsIDExNCwgMjMwLCAxODIsIAorICAgIDUwLCAxMTQsIDI0NywgMTY5LCA1MCwgMTE0LCAyMTksIDI4LCAyNDUsIDIyMCwgNzQsIDExNCwgOTcsIDc0LCAxMTQsIDIyOCwgCisgICAgNTYsIDI0NSwgMjIwLCA3NCwgMjQ2LCA5OCwgMjI1LCAxMSwgOTcsIDc0LCAxMTQsIDIyMiwgMTg0LCA5NywgNzQsIDIxNSwgCisgICAgMjI0LCA5NywgNzQsIDExNCwgMjE1LCAyMjQsIDk3LCA3NCwgMjQ4LCAxNTUsIDIxNSwgMjI0LCA5NywgNzQsIDExNCwgMjQ4LCAKKyAgICAxNTUsIDIxNSwgMjI0LCA5NywgNzQsIDg1LCA5NywgNzQsIDIxNiwgMTQ0LCAyMTYsIDEyLCA5NywgMjUzLCAyNDksIDIxNiwgCisgICAgMTQ0LCAyNTEsIDE3MywgOTcsIDI1MywgMjQ5LCA4NSwgOTcsIDI1MywgMjQ5LCAxMTQsIDg1LCAyNDksIDkxLCAyNDYsIAorICAgIDEwNCwgMjIsIDk3LCA3NCwgMTE0LCA4NSwgMjQ5LCA5MSwgMjE0LCAxNTMsIDIyLCA5NywgNzQsIDIxOCwgMjMxLCA4NSwgCisgICAgOTcsIDc0LCAxMTQsIDI0OSwgMjA2LCA4NSwgOTcsIDc0LCAyMjIsIDI0NiwgNzEsIDk3LCA3NCwgMjMzLCA0MSwgNzEsIDk3LCAKKyAgICA3NCwgMjUyLCAxODMsIDIyMCwgOTEsIDcxLCA5NywgNzQsIDI0MywgMjQxLCAyMjAsIDkxLCA3MSwgOTcsIDc0LCAxMTQsIAorICAgIDIzMiwgMTA4LCAyMjIsIDI0NSwgNzEsIDk3LCA3NCwgMTE0LCAyMTQsIDE2MCwgMjIyLCAyNDUsIDcxLCA5NywgNzQsIDIyOCwgCisgICAgNDksIDIzMiwgMTA4LCAyMjIsIDI0NSwgNzEsIDk3LCA3NCwgMjQ5LCA5OSwgMjMyLCAxMjMsIDIyOCwgNDksIDIxNCwgMTYwLCAKKyAgICAyMjIsIDI0NSwgNzEsIDk3LCA3NCwgMzcsIDExNCwgNzEsIDk3LCA3NCwgMjExLCAyNTIsIDk3LCA3NCwgMjUxLCAyMjAsIAorICAgIDIxOSwgMjgsIDI0NSwgMjIwLCA3NCwgMjUxLCAyMjAsIDk3LCA3NCwgMjUxLCAyMjAsIDIyOCwgNTYsIDI0NSwgMjIwLCA3NCwgCisgICAgMTE0LCAyNTEsIDIyMCwgMjE5LCAyOCwgMjQ1LCAyMjAsIDc0LCAxMTQsIDI1MSwgMjIwLCA5NywgNzQsIDExNCwgMjUxLCAKKyAgICAyMjAsIDIyOCwgNTYsIDI0NSwgMjIwLCA3NCwgMjE3LCAxNywgOTcsIDc0LCAxMTQsIDIxNywgMTYsIDk3LCA3NCwgMjEyLCAKKyAgICAxOCwgOTcsIDc0LCAxMTQsIDIxMiwgMTgsIDk3LCA3NCwgMjI2LCAxNzIsIDk3LCA3NCwgNTIsIDI0OSwgOTksIDIzMiwgCisgICAgMTIzLCAxMzQsIDI0NywgMjE0LCAyNTQsIDEwOSwgNzEsIDIxNSwgMjI2LCAyNDksIDE4NywgNCwgNzEsIDIxNSwgMjI1LCAKKyAgICAyMjUsIDE3MSwgMjA0LCAyMTgsIDYzLCAyMDQsIDIxOCwgMjEsIDQzLCAyMjIsIDkwLCAyNTIsIDE3MywgMjQ4LCA2MCwgNDQsIAorICAgIDIyMiwgOTAsIDI1MiwgMTczLCAyNDgsIDYwLCAxNzcsIDIsIDU5LCAyMzUsIDIxNSwgMjIzLCA1MCwgMjE5LCA0NywgMjI0LCAKKyAgICAyMDEsIDIxOCwgNjMsIDIxOCwgMjIsIDIyNCwgMjAxLCAyMTksIDQ2LCA2NywgMjUyLCAxNDEsIDIsIDIwMywgOTEsIDExLCAKKyAgICAyMjIsIDIyOCwgMjQ3LCAyNTQsIDE5OSwgMjQ3LCAxNjgsIDExLCAyNDQsIDE3NSwgMjQ3LCAyNTQsIDkyLCAyMzIsIDE0NiwgCisgICAgMjU0LCAxMTgsIDkyLCAyMzIsIDE0NiwgMjI2LCAxNTgsIDcxLCAyNDcsIDI0OSwgMiwgMjUwLCAxNzMsIDI0NywgMTIwLCAKKyAgICAyMiwgMiwgMjQ3LCAxMjAsIDI0NSwgMTcwLCA2NCwgMjI2LCAxNzAsIDIxNCwgMTUyLCAyMzIsIDEwOCwgNDQsIDI0OSwgCisgICAgMTYxLCAyLCAyNDcsIDEyMCwgMjE0LCAxNjAsIDQzLCAyNDksIDE2MSwgMiwgMjQ3LCAxMjAsIDQzLCAyMjYsIDEyOCwgMjM1LCAKKyAgICA2NiwgNDQsIDIyNiwgMTI4LCAyMzUsIDY2LCAyNDMsIDIyOSwgMjI2LCAxMjgsIDIzNSwgNjYsIDIzMywgODUsIDEyMCwgCisgICAgMjE3LCA4NywgMjMzLCA4NSwgMTI0LCAyMTcsIDg3LCA0MywgMjIsIDQ0LCA1MiwgMjE1LCA5MywgNDMsIDIyLCA0NCwgMjE3LCAKKyAgICA4NywgNDMsIDIzMCwgODcsIDE5OSwgNDQsIDIxNywgODcsIDE5OSwgNDMsIDIxNywgODcsIDEyMCwgMjE3LCA4OCwgMiwgCisgICAgMjUwLCAzNiwgNDgsIDIzMiwgMTA1LCAyNDcsIDE3MywgMjUxLCA3OCwgMjAzLCAyMjIsIDEzMywgNzEsIDI0OSwgMjA1LCAKKyAgICAyNDcsIDI0OCwgNzEsIDI0OSwgMjA1LCAyNDcsIDI0OSwgMiwgMTQwLCAyMTYsIDExNCwgNzEsIDI0OSwgMjA1LCAyNDcsIAorICAgIDI0OSwgMiwgOTcsIDIxNiwgMTE0LCA3MSwgNDIsIDIsIDE0MCwgMjE2LCAxMTQsIDcxLCA0MiwgMiwgOTcsIDIxNiwgMTE0LCAKKyAgICAxMSwgNDMsIDcxLCA0MiwgMTI3LCAxMSwgNDQsIDcxLCA0MiwgMTI3LCAxMSwgNDMsIDI1NCwgMTEwLCAxMjcsIDExLCA0NCwgCisgICAgMjU0LCAxMTAsIDEyNywgMTEsIDQzLCA1MiwgMjU0LCAxMTAsIDEyNywgMTEsIDQ0LCA1MiwgMjU0LCAxMTAsIDEyNywgMTEsIAorICAgIDQzLCA3MSwgMjE2LCA2LCAyMjAsIDUzLCAxMjcsIDExLCA0NCwgNzEsIDIxNiwgNiwgMjIwLCA1MywgMTI3LCAxMSwgNDMsIAorICAgIDI0NCwgNjMsIDIyNiwgMywgMTEsIDQ0LCAyNDQsIDYzLCAyMjYsIDMsIDIxNCwgMTUzLCAyMjQsIDI0LCA3NCwgMjQ2LCAKKyAgICAxMDQsIDIyNCwgMjQsIDc0LCAyNTQsIDg4LCAyNDMsIDk4LCAyNTAsIDM2LCA3NCwgMjUwLCAyLCAyNDMsIDk4LCAyNTAsIAorICAgIDM2LCA3NCwgNDQsIDgwLCAyLCAzNywgMjI1LCAyMiwgMTk5LCAxNDAsIDc0LCAxOTksIDk3LCA3NCwgMTk5LCA0MywgNDQsIAorICAgIDc0LCAxOTksIDE0MCwgNTIsIDc0LCAxOTksIDk3LCA1MiwgNzQsIDE5OSwgNDMsIDQ0LCA1MiwgNzQsIDE5OSwgMTQwLCA4MCwgCisgICAgMjQzLCAyNDMsIDEzMCwgMTk5LCA5NywgODAsIDI0MywgMjQzLCAxMzAsIDE5OSwgMTQwLCA1MiwgODAsIDI0MywgMjQzLCAKKyAgICAxMzAsIDE5OSwgOTcsIDUyLCA4MCwgMjQzLCAyNDMsIDEzMCwgMTk5LCA5NywgMjE4LCAyMzAsIDc0LCA0NiwgNDcsIDI1MSwgCisgICAgMjE1LCA0NiwgNDcsIDI0NywgMTE3LCA0NiwgNDcsIDI0NiwgMjQ1LCA0NiwgNDcsIDI0NywgMTE2LCA0NiwgNDcsIDI0NiwgCisgICAgMTgxLCA0NiwgNDcsIDI0NywgNTIsIDQ2LCA0NywgMjQ2LCAyNDQsIDQ2LCA0NywgMjQ3LCAxMTUsIDQ2LCA0NywgMjQ2LCAKKyAgICAxNDksIDQ2LCA0NywgMjQ3LCAyMCwgNDYsIDQ3LCAyNDYsIDIxMiwgNDYsIDQ3LCAyNDcsIDgzLCA0NiwgNDcsIDI0NiwgCisgICAgMTgwLCA0NiwgNDcsIDI0NywgNTEsIDQ2LCA0NywgMjQ2LCAyNDMsIDQ2LCA0NywgMjQ3LCAxMTQsIDQ2LCA0NywgMjQ2LCAKKyAgICAxMzMsIDQ2LCA0NywgMjQ3LCA0LCA0NiwgNDcsIDI0NiwgMTk2LCA0NiwgNDcsIDI0NywgNjcsIDQ2LCA0NywgMjQ2LCAxNjQsIAorICAgIDQ2LCA0NywgMjQ3LCAzNSwgNDYsIDQ3LCAyNDYsIDIyNywgNDYsIDQ3LCAyNDcsIDk4LCA0NiwgNDcsIDI0NiwgMTQ4LCA0NiwgCisgICAgNDcsIDI0NywgMTksIDQ2LCA0NywgMjQ2LCAyMTEsIDQ2LCA0NywgMjQ3LCA4MiwgNDYsIDQ3LCAyNDYsIDE3OSwgNDYsIDQ3LCAKKyAgICAyNDcsIDUwLCA0NiwgNDcsIDI0NiwgMjQyLCA0NiwgNDcsIDI0NywgMTEzLCA0NiwgNDcsIDI0NiwgMTI1LCA0NiwgNDcsIAorICAgIDI0NiwgMjUyLCA0NiwgNDcsIDI0NiwgMTg4LCA0NiwgNDcsIDI0NywgNTksIDQ2LCA0NywgMjQ2LCAxNTYsIDQ2LCA0NywgCisgICAgMjQ3LCAyNywgNDYsIDQ3LCAyNDYsIDIxOSwgNDYsIDQ3LCAyNDcsIDkwLCA0NiwgNDcsIDI0NiwgMTQwLCA0NiwgNDcsIAorICAgIDI0NywgMTEsIDQ2LCA0NywgMjQ2LCAyMDMsIDQ2LCA0NywgMjQ3LCA3NCwgNDYsIDQ3LCAyNDYsIDE3MSwgNDYsIDQ3LCAKKyAgICAyNDcsIDQyLCA0NiwgNDcsIDI0NiwgMjM0LCA0NiwgNDcsIDI0NywgMTA1LCA0NiwgNDcsIDI0NiwgMTMyLCA0NiwgNDcsIAorICAgIDI0NywgMywgNDYsIDQ3LCAyNDYsIDE5NSwgNDYsIDQ3LCAyNDcsIDY2LCA0NiwgNDcsIDI0NiwgMTYzLCA0NiwgNDcsIDI0NywgCisgICAgMzQsIDQ2LCA0NywgMjQ2LCAyMjYsIDQ2LCA0NywgMjQ3LCA5NywgNDYsIDQ3LCAyNDYsIDE0NywgNDYsIDQ3LCAyNDcsIDE4LCAKKyAgICA0NiwgNDcsIDI0NiwgMjEwLCA0NiwgNDcsIDI0NywgODEsIDQ2LCA0NywgMjQ2LCAxNzgsIDQ2LCA0NywgMjQ3LCA0OSwgNDYsIAorICAgIDQ3LCAyNDYsIDI0MSwgNDYsIDQ3LCAyNDcsIDExMiwgNDYsIDQ3LCAyNDYsIDEyMSwgNDYsIDQ3LCAyNDYsIDI0OCwgNDYsIAorICAgIDQ3LCAyNDYsIDE4NCwgNDYsIDQ3LCAyNDcsIDU1LCA0NiwgNDcsIDI0NiwgMTUyLCA0NiwgNDcsIDI0NywgMjMsIDQ2LCA0NywgCisgICAgMjQ2LCAyMTUsIDQ2LCA0NywgMjQ3LCA4NiwgNDYsIDQ3LCAyNDYsIDEzNiwgNDYsIDQ3LCAyNDcsIDcsIDQ2LCA0NywgMjQ2LCAKKyAgICAxOTksIDQ2LCA0NywgMjQ3LCA3MCwgNDYsIDQ3LCAyNDYsIDE2NywgNDYsIDQ3LCAyNDcsIDM4LCA0NiwgNDcsIDI0NiwgCisgICAgMjMwLCA0NiwgNDcsIDI0NywgMTAxLCA0NiwgNDcsIDI0NiwgMTI4LCA0NiwgNDcsIDI0NiwgMjU1LCA0NiwgNDcsIDI0NiwgCisgICAgMTkxLCA0NiwgNDcsIDI0NywgNjIsIDQ2LCA0NywgMjQ2LCAxNTksIDQ2LCA0NywgMjQ3LCAzMCwgNDYsIDQ3LCAyNDYsIAorICAgIDIyMiwgNDYsIDQ3LCAyNDcsIDkzLCA0NiwgNDcsIDI0NiwgMTQzLCA0NiwgNDcsIDI0NywgMTQsIDQ2LCA0NywgMjQ2LCAKKyAgICAyMDYsIDQ2LCA0NywgMjQ3LCA3NywgNDYsIDQ3LCAyNDYsIDE3NCwgNDYsIDQ3LCAyNDcsIDQ1LCA0NiwgNDcsIDI0NiwgCisgICAgMjM3LCA0NiwgNDcsIDI0NywgMTA4LCA0NiwgNDcsIDI0NiwgMTI0LCA0NiwgNDcsIDI0NiwgMjUxLCA0NiwgNDcsIDI0NiwgCisgICAgMTg3LCA0NiwgNDcsIDI0NywgNTgsIDQ2LCA0NywgMjQ2LCAxNTUsIDQ2LCA0NywgMjQ3LCAyNiwgNDYsIDQ3LCAyNDYsIAorICAgIDIxOCwgNDYsIDQ3LCAyNDcsIDg5LCA0NiwgNDcsIDI0NiwgMTM5LCA0NiwgNDcsIDI0NywgMTAsIDQ2LCA0NywgMjQ2LCAKKyAgICAyMDIsIDQ2LCA0NywgMjQ3LCA3MywgNDYsIDQ3LCAyNDYsIDE3MCwgNDYsIDQ3LCAyNDcsIDQxLCA0NiwgNDcsIDI0NiwgCisgICAgMjMzLCA0NiwgNDcsIDI0NywgMTA0LCA0NiwgNDcsIDI0NiwgMTMxLCA0NiwgNDcsIDI0NywgMiwgNDYsIDQ3LCAyNDYsIAorICAgIDE5NCwgNDYsIDQ3LCAyNDcsIDY1LCA0NiwgNDcsIDI0NiwgMTYyLCA0NiwgNDcsIDI0NywgMzMsIDQ2LCA0NywgMjQ2LCAKKyAgICAyMjUsIDQ2LCA0NywgMjQ3LCA5NiwgNDYsIDQ3LCAyNDYsIDE0NiwgNDYsIDQ3LCAyNDcsIDE3LCA0NiwgNDcsIDI0NiwgCisgICAgMjA5LCA0NiwgNDcsIDI0NywgODAsIDQ2LCA0NywgMjQ2LCAxNzcsIDQ2LCA0NywgMjQ3LCA0OCwgNDYsIDQ3LCAyNDYsIAorICAgIDI0MCwgNDYsIDQ3LCAyNDcsIDExMSwgNDYsIDQ3LCAyNDYsIDExOSwgNDYsIDQ3LCAyNDYsIDI0NiwgNDYsIDQ3LCAyNDYsIAorICAgIDE4MiwgNDYsIDQ3LCAyNDcsIDUzLCA0NiwgNDcsIDI0NiwgMTUwLCA0NiwgNDcsIDI0NywgMjEsIDQ2LCA0NywgMjQ2LCAKKyAgICAyMTMsIDQ2LCA0NywgMjQ3LCA4NCwgNDYsIDQ3LCAyNDYsIDEzNCwgNDYsIDQ3LCAyNDcsIDUsIDQ2LCA0NywgMjQ2LCAxOTcsIAorICAgIDQ2LCA0NywgMjQ3LCA2OCwgNDYsIDQ3LCAyNDYsIDE2NSwgNDYsIDQ3LCAyNDcsIDM2LCA0NiwgNDcsIDI0NiwgMjI4LCA0NiwgCisgICAgNDcsIDI0NywgOTksIDQ2LCA0NywgMjQ2LCAxMjYsIDQ2LCA0NywgMjQ2LCAyNTMsIDQ2LCA0NywgMjQ2LCAxODksIDQ2LCAKKyAgICA0NywgMjQ3LCA2MCwgNDYsIDQ3LCAyNDYsIDE1NywgNDYsIDQ3LCAyNDcsIDI4LCA0NiwgNDcsIDI0NiwgMjIwLCA0NiwgNDcsIAorICAgIDI0NywgOTEsIDQ2LCA0NywgMjQ2LCAxNDEsIDQ2LCA0NywgMjQ3LCAxMiwgNDYsIDQ3LCAyNDYsIDIwNCwgNDYsIDQ3LCAKKyAgICAyNDcsIDc1LCA0NiwgNDcsIDI0NiwgMTcyLCA0NiwgNDcsIDI0NywgNDMsIDQ2LCA0NywgMjQ2LCAyMzUsIDQ2LCA0NywgCisgICAgMjQ3LCAxMDYsIDQ2LCA0NywgMjQ2LCAxMjIsIDQ2LCA0NywgMjQ2LCAyNDksIDQ2LCA0NywgMjQ2LCAxODUsIDQ2LCA0NywgCisgICAgMjQ3LCA1NiwgNDYsIDQ3LCAyNDYsIDE1MywgNDYsIDQ3LCAyNDcsIDI0LCA0NiwgNDcsIDI0NiwgMjE2LCA0NiwgNDcsIAorICAgIDI0NywgODcsIDQ2LCA0NywgMjQ2LCAxMzcsIDQ2LCA0NywgMjQ3LCA4LCA0NiwgNDcsIDI0NiwgMjAwLCA0NiwgNDcsIDI0NywgCisgICAgNzEsIDQ2LCA0NywgMjQ2LCAxNjgsIDQ2LCA0NywgMjQ3LCAzOSwgNDYsIDQ3LCAyNDYsIDIzMSwgNDYsIDQ3LCAyNDcsIAorICAgIDEwMiwgNDYsIDQ3LCAyNDYsIDEyOSwgNDYsIDQ3LCAyNDcsIDAsIDQ2LCA0NywgMjQ2LCAxOTIsIDQ2LCA0NywgMjQ3LCA2MywgCisgICAgNDYsIDQ3LCAyNDYsIDE2MCwgNDYsIDQ3LCAyNDcsIDMxLCA0NiwgNDcsIDI0NiwgMjIzLCA0NiwgNDcsIDI0NywgOTQsIDQ2LCAKKyAgICA0NywgMjQ2LCAxNDQsIDQ2LCA0NywgMjQ3LCAxNSwgNDYsIDQ3LCAyNDYsIDIwNywgNDYsIDQ3LCAyNDcsIDc4LCA0NiwgNDcsIAorICAgIDI0NiwgMTc1LCA0NiwgNDcsIDI0NywgNDYsIDQ2LCA0NywgMjQ2LCAyMzgsIDQ2LCA0NywgMjQ3LCAxMDksIDQ2LCA0NywgCisgICAgMjQ2LCAxMjAsIDQ2LCA0NywgMjQ2LCAyNDcsIDQ2LCA0NywgMjQ2LCAxODMsIDQ2LCA0NywgMjQ3LCA1NCwgNDYsIDQ3LCAKKyAgICAyNDYsIDE1MSwgNDYsIDQ3LCAyNDcsIDIyLCA0NiwgNDcsIDI0NiwgMjE0LCA0NiwgNDcsIDI0NywgODUsIDQ2LCA0NywgCisgICAgMjQ2LCAxMzUsIDQ2LCA0NywgMjQ3LCA2LCA0NiwgNDcsIDI0NiwgMTk4LCA0NiwgNDcsIDI0NywgNjksIDQ2LCA0NywgMjQ2LCAKKyAgICAxNjYsIDQ2LCA0NywgMjQ3LCAzNywgNDYsIDQ3LCAyNDYsIDIyOSwgNDYsIDQ3LCAyNDcsIDEwMCwgNDYsIDQ3LCAyNDYsIAorICAgIDEyNywgNDYsIDQ3LCAyNDYsIDI1NCwgNDYsIDQ3LCAyNDYsIDE5MCwgNDYsIDQ3LCAyNDcsIDYxLCA0NiwgNDcsIDI0NiwgCisgICAgMTU4LCA0NiwgNDcsIDI0NywgMjksIDQ2LCA0NywgMjQ2LCAyMjEsIDQ2LCA0NywgMjQ3LCA5MiwgNDYsIDQ3LCAyNDYsIAorICAgIDE0MiwgNDYsIDQ3LCAyNDcsIDEzLCA0NiwgNDcsIDI0NiwgMjA1LCA0NiwgNDcsIDI0NywgNzYsIDQ2LCA0NywgMjQ2LCAKKyAgICAxNzMsIDQ2LCA0NywgMjQ3LCA0NCwgNDYsIDQ3LCAyNDYsIDIzNiwgNDYsIDQ3LCAyNDcsIDEwNywgNDYsIDQ3LCAyNDYsIAorICAgIDEyMywgNDYsIDQ3LCAyNDYsIDI1MCwgNDYsIDQ3LCAyNDYsIDE4NiwgNDYsIDQ3LCAyNDcsIDU3LCA0NiwgNDcsIDI0NiwgCisgICAgMTU0LCA0NiwgNDcsIDI0NywgMjUsIDQ2LCA0NywgMjQ2LCAyMTcsIDQ2LCA0NywgMjQ3LCA4OCwgNDYsIDQ3LCAyNDYsIAorICAgIDEzOCwgNDYsIDQ3LCAyNDcsIDksIDQ2LCA0NywgMjQ2LCAyMDEsIDQ2LCA0NywgMjQ3LCA3MiwgNDYsIDQ3LCAyNDYsIDE2OSwgCisgICAgNDYsIDQ3LCAyNDcsIDQwLCA0NiwgNDcsIDI0NiwgMjMyLCA0NiwgNDcsIDI0NywgMTAzLCA0NiwgNDcsIDI0NiwgMTMwLCAKKyAgICA0NiwgNDcsIDI0NywgMSwgNDYsIDQ3LCAyNDYsIDE5MywgNDYsIDQ3LCAyNDcsIDY0LCA0NiwgNDcsIDI0NiwgMTYxLCA0NiwgCisgICAgNDcsIDI0NywgMzIsIDQ2LCA0NywgMjQ2LCAyMjQsIDQ2LCA0NywgMjQ3LCA5NSwgNDYsIDQ3LCAyNDYsIDE0NSwgNDYsIDQ3LCAKKyAgICAyNDcsIDE2LCA0NiwgNDcsIDI0NiwgMjA4LCA0NiwgNDcsIDI0NywgNzksIDQ2LCA0NywgMjQ2LCAxNzYsIDQ2LCA0NywgCisgICAgMjQ3LCA0NywgNDYsIDQ3LCAyNDYsIDIzOSwgNDYsIDQ3LCAyNDcsIDExMCwgOTcsIDIxNSwgNTgsIDgwLCAyLCA2NywgOTEsIAorICAgIDk3LCAyMTUsIDU4LCA4MCwgMiwgNTIsIDY3LCA5MSwgMTQwLCA1MiwgODAsIDIsIDY3LCA5MSwgOTcsIDUyLCA4MCwgMiwgCisgICAgNjcsIDkxLCA0MywgNDQsIDUyLCA4MCwgMiwgNjcsIDkxLCA5NywgMjE1LCA1OCwgODAsIDI0MywgMjQzLCAxMzAsIDE0MCwgCisgICAgNTIsIDgwLCAyNDMsIDI0MywgMTMwLCA5NywgNTIsIDgwLCAyNDMsIDI0MywgMTMwLCAyNDYsIDEwNCwgODAsIDIsIDIwMywgCisgICAgOTEsIDIxNCwgMTUzLCA4MCwgMiwgMjAzLCA5MSwgMjE0LCAxNTMsIDIxNSwgMjExLCA3NCwgMjQ2LCAxMDQsIDIxNSwgMjExLCAKKyAgICA3NCwgMTQwLCA1MiwgMjQ4LCAxNTcsIDc0LCA5NywgNTIsIDI0OCwgMTU3LCA3NCwgMTQwLCAyMTUsIDIxMSwgMjQ4LCAxNTcsIAorICAgIDc0LCA5NywgMjE1LCAyMTEsIDI0OCwgMTU3LCA3NCwgOTcsIDIxNSwgNTgsIDIxNSwgMjExLCAyNDgsIDE1NywgNzQsIDk3LCAKKyAgICA4MCwgMiwgMjQ2LCAxMTgsIDIxOCwgMTM5LCAyMTQsIDE1MywgODAsIDIxNiwgNDIsIDEzMCwgMjQ2LCAxMDQsIDgwLCAyMTYsIAorICAgIDQyLCAxMzAsIDk3LCA4MCwgMiwgMjE3LCA3OCwgMiwgNjcsIDkxLCA5NywgODAsIDIsIDIxNywgNzgsIDIsIDUyLCA2NywgCisgICAgOTEsIDk3LCAyMTUsIDU4LCA4MCwgMiwgMjE3LCA3NywgOTcsIDIxNSwgNTgsIDgwLCAyLCAyMTcsIDc4LCAyLCA2NywgOTEsIAorICAgIDk3LCAyMTUsIDU4LCA4MCwgMiwgMjE3LCA3OCwgMiwgNTIsIDY3LCA5MSwgMTQwLCAyNTMsIDI1MSwgOTcsIDI1MywgMjUxLCAKKyAgICAxNDAsIDUyLCAyNTMsIDI1MSwgOTcsIDUyLCAyNTMsIDI1MSwgMTQwLCA4MCwgMjE2LCA0MiwgODUsIDI0NywgMjQ4LCA5NywgCisgICAgODAsIDIxNiwgNDIsIDg1LCAyNDcsIDI0OCwgMTQwLCA4MCwgMjQzLCAyNDMsIDI1MiwgMTQxLCAyMTYsIDQyLCA4NSwgMjQ3LCAKKyAgICAyNDgsIDk3LCA4MCwgMjQzLCAyNDMsIDI1MiwgMTQxLCAyMTYsIDQyLCA4NSwgMjQ3LCAyNDgsIDIyOCwgNTYsIDIxMiwgOSwgCisgICAgMjIsIDIxOSwgMjgsIDI0NSwgMjIwLCA3NCwgMjI4LCA1NiwgMjQ1LCAyMjAsIDIyLCAyMTksIDI4LCAyMTIsIDksIDc0LCAKKyAgICAyMjgsIDU2LCAyMTIsIDksIDgwLCAyLCAxMDMsIDIyOCwgNTYsIDI0NSwgMjIwLCA4MCwgMiwgMTAzLCAyMTksIDI4LCAyNDUsIAorICAgIDIyMCwgODAsIDIsIDEwMywgMjE5LCAyOCwgMjEyLCA5LCA4MCwgMiwgMTAzLCAyMjgsIDU2LCAyMTIsIDksIDgwLCAyMiwgCisgICAgMjI4LCA1NiwgMjQ1LCAyMjAsIDc0LCAyMjgsIDU2LCAyNDUsIDIyMCwgODAsIDIyLCAyMTksIDI4LCAyNDUsIDIyMCwgNzQsIAorICAgIDIxOSwgMjgsIDI0NSwgMjIwLCA4MCwgMjIsIDIxOSwgMjgsIDIxMiwgOSwgNzQsIDIxOSwgMjgsIDIxMiwgOSwgODAsIDIyLCAKKyAgICAyMjgsIDU2LCAyMTIsIDksIDc0LCAyMjIsIDIyOCwgMjQ3LCAyNTUsIDI0OSwgMTI1LCAyNDQsIDE3NSwgMjQ3LCAyNTQsIAorICAgIDI0NCwgMTc1LCAyNDcsIDI1NSwgMjQ5LCAxMjUsIDIyMiwgMjI4LCAyNDcsIDI1NCwgMjE5LCAyOCwgMjQ1LCAyMjAsIDgwLCAKKyAgICAyNDksIDEyNSwgMjI4LCA1NiwgMjQ1LCAyMjAsIDc0LCAyMjgsIDU2LCAyNDUsIDIyMCwgODAsIDI0OSwgMTI1LCAyMTksIAorICAgIDI4LCAyNDUsIDIyMCwgNzQsIDI0NCwgMTc1LCAyNDcsIDI1NSwgMjQ5LCAxMjUsIDIyOCwgNTYsIDI0NSwgMjIwLCA3NCwgCisgICAgMjIyLCAyMjgsIDI0NywgMjU1LCAyNDksIDEyNSwgMjE5LCAyOCwgMjQ1LCAyMjAsIDc0LCAyMjgsIDU2LCAyNDUsIDIyMCwgCisgICAgODAsIDI0OSwgMTI1LCAyMjgsIDU2LCAyMTIsIDksIDc0LCAyMjgsIDU2LCAyMTIsIDksIDgwLCAyNDksIDEyNSwgMjI4LCAKKyAgICA1NiwgMjQ1LCAyMjAsIDc0LCAyMTIsIDM2LCA4MCwgMjI1LCA3LCAyNDcsIDE5NSwgMjIyLCAyNTEsIDgwLCAyMjUsIDcsIAorICAgIDk3LCAyMTYsIDE4OCwgMjQ5LCA5MCwgMjE0LCAxNTIsIDgwLCAyMjUsIDcsIDk3LCAyMTYsIDE4OCwgMjQ5LCA5MCwgMjQ2LCAKKyAgICAxMDMsIDgwLCAyMjUsIDcsIDI0NiwgMTA0LCAyMTYsIDE4OCwgMjQ5LCA5MCwgMjMzLCAzNywgODAsIDIyNSwgNywgMjQ2LCAKKyAgICAxMDQsIDIxNiwgMTg4LCAyNDksIDkwLCAyMjIsIDI0MSwgMjIyLCAyNDQsIDI1NCwgMjYsIDI1MCwgMiwgNzQsIDIzMywgNDAsIAorICAgIDI1NCwgMjYsIDI1NCwgODgsIDc0LCAyMTYsIDE0LCAyNTQsIDI2LCAyNTQsIDg4LCA3NCwgMjUxLCAxNzUsIDI1NCwgMjYsIAorICAgIDI1NCwgODgsIDc0LCAyMTYsIDE0LCAyNTQsIDI2LCAyNTAsIDIsIDgwLCAyLCAyMzAsIDE4MSwgMjE2LCAxNCwgMjU0LCAyNiwgCisgICAgMjU0LCA4OCwgODAsIDIsIDIyNSwgMjIsIDIzMiwgMTA4LCA0NCwgMjIwLCAxNTIsIDI1MCwgMiwgNzQsIDIzMiwgMTA4LCAKKyAgICA0MywgMjIwLCAxNTIsIDI1NCwgODgsIDc0LCAyNTQsIDg4LCAyNTAsIDAsIDI1MCwgMzYsIDc0LCAyNTAsIDIsIDI1MCwgMCwgCisgICAgMjUwLCAzNiwgNzQsIDk3LCA4MCwgNzcsIDIxOSwgMjUxLCAxNDAsIDc0LCAxNDAsIDgwLCA3NywgMjE5LCAyNTEsIDk3LCAKKyAgICA3NCwgMjE5LCAyNTEsIDk3LCA4MCwgNzcsIDE0MCwgNzQsIDk3LCA4MCwgMiwgOTYsIDUxLCAxNDAsIDgwLCAyLCA5NiwgNTEsIAorICAgIDk3LCA4MCwgMjE2LCAxMzksIDIxMSwgMTc4LCA0MywgNDQsIDgwLCAyMTYsIDEzOSwgNCwgMjUwLCAzNSwgMjE0LCAxNTMsIAorICAgIDIxNSwgNTgsIDgwLCAyNDMsIDI0MywgNCwgMjUwLCAzNSwgNDMsIDI1MiwgMTM5LCAxMjAsIDQ0LCAyNTIsIDEzOSwgMTI0LCAKKyAgICAyNDEsIDI1NCwgNDMsIDI1MiwgMTM5LCAxMjQsIDQ0LCAyNTIsIDEzOSwgMTIwLCAyNDEsIDI1NCwgMTIwLCAyNTIsIDEzOSwgCisgICAgNDQsIDEyNCwgMjUyLCAxMzksIDQzLCAyNDEsIDI1NCwgMTIwLCAyNTIsIDEzOSwgNDMsIDEyNCwgMjUyLCAxMzksIDQ0LCAKKyAgICAyNDEsIDI1NCwgNDMsIDI1MiwgMTM5LCAxMjAsIDQ0LCAyNTIsIDEzOSwgMTIwLCAyNDEsIDI1NCwgMTIwLCAyNTIsIDEzOSwgCisgICAgNDQsIDEyNCwgMjUyLCAxMzksIDQ0LCAyNDEsIDI1NCwgNDMsIDI1MiwgMTM5LCAxMjQsIDQ0LCAyNTIsIDEzOSwgMTI0LCAKKyAgICAyNDEsIDI1NCwgMTIwLCAyNTIsIDEzOSwgNDMsIDEyNCwgMjUyLCAxMzksIDQzLCAyNDEsIDI1NCwgMTQwLCAyNDEsIDI1NSwgCisgICAgMiwgMjUyLCAxMzksIDEyMCwgMjE2LCA0MiwgMTMwLCA5NywgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAxMjAsIDIxNiwgNDIsIAorICAgIDEzMCwgMjE0LCAxNTMsIDI0MSwgMjU1LCAyLCAyNTIsIDEzOSwgNDQsIDIxNiwgNDIsIDEzMCwgMjQ2LCAxMDQsIDI0MSwgCisgICAgMjU1LCAyLCAyNTIsIDEzOSwgNDQsIDIxNiwgNDIsIDEzMCwgMTQwLCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDEyNCwgMjE2LCAKKyAgICA0MiwgMTMwLCA5NywgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAxMjQsIDIxNiwgNDIsIDEzMCwgMjE0LCAxNTMsIDI0MSwgCisgICAgMjU1LCAyLCAyNTIsIDEzOSwgNDMsIDIxNiwgNDIsIDEzMCwgMjQ2LCAxMDQsIDI0MSwgMjU1LCAyLCAyNTIsIDEzOSwgNDMsIAorICAgIDIxNiwgNDIsIDEzMCwgMTQwLCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDEyMCwgMjQzLCAyNDMsIDEzMCwgOTcsIDI0MSwgCisgICAgMjU1LCAyLCAyNTIsIDEzOSwgMTIwLCAyNDMsIDI0MywgMTMwLCAyMTQsIDE1MywgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAKKyAgICA0NCwgMjQzLCAyNDMsIDEzMCwgMjQ2LCAxMDQsIDI0MSwgMjU1LCAyLCAyNTIsIDEzOSwgNDQsIDI0MywgMjQzLCAxMzAsIAorICAgIDE0MCwgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAxMjQsIDI0MywgMjQzLCAxMzAsIDk3LCAyNDEsIDI1NSwgMiwgMjUyLCAKKyAgICAxMzksIDEyNCwgMjQzLCAyNDMsIDEzMCwgMjE0LCAxNTMsIDI0MSwgMjU1LCAyLCAyNTIsIDEzOSwgNDMsIDI0MywgMjQzLCAKKyAgICAxMzAsIDI0NiwgMTA0LCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDQzLCAyNDMsIDI0MywgMTMwLCAxNDAsIDI0MSwgMjU1LCAKKyAgICAyLCAyNTIsIDEzOSwgMTIwLCA3NywgMTQwLCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDI0NiwgMTA2LCAyMTQsIDE1MywgCisgICAgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCA0MywgMjUyLCAzMCwgMjE0LCAxNTMsIDI0MSwgMjU1LCAyLCAyNTIsIDEzOSwgMjIyLCAKKyAgICAyNTEsIDk3LCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDEyMCwgNzcsIDk3LCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDI0NiwgCisgICAgMTA2LCAyNDYsIDEwNCwgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCA0MywgMjUyLCAzMCwgMjQ2LCAxMDQsIDI0MSwgMjU1LCAyLCAKKyAgICAyNTIsIDEzOSwgMjIyLCAyNTEsIDE0MCwgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAxMjAsIDc3LCA5NywgMjQxLCAyNTUsIDIsIAorICAgIDI1MiwgMTM5LCAyMTQsIDE2MywgMTQwLCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDEyNCwgNzcsIDk3LCAyNDEsIDI1NSwgMiwgCisgICAgMjUyLCAxMzksIDI0NiwgMTA2LCA5NywgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAxMjAsIDc3LCAxNDAsIDI0MSwgMjU1LCAyLCAKKyAgICAyNTIsIDEzOSwgMjE0LCAxNjMsIDk3LCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDEyNCwgNzcsIDE0MCwgMjQxLCAyNTUsIDIsIAorICAgIDI1MiwgMTM5LCAyNDYsIDEwNiwgMTQwLCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDEyMCwgNzcsIDE5OSwgMjQ4LCAxNTYsIAorICAgIDE0MCwgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAxMjQsIDI1MiwgNDMsIDE5OSwgMjQ4LCAxNTYsIDk3LCAyNDEsIDI1NSwgMiwgCisgICAgMjUyLCAxMzksIDEyMCwgNzcsIDE5OSwgMjQ4LCAxNTYsIDk3LCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDEyNCwgMjUyLCAKKyAgICA0MywgMTk5LCAyNDgsIDE1NiwgMjE0LCAxNTMsIDI0MSwgMjU1LCAyLCAyNTIsIDEzOSwgNDMsIDI1MiwgMzAsIDI0NiwgCisgICAgMTA0LCAyNDEsIDI1NSwgMiwgMjUyLCAxMzksIDIyMiwgMjUxLCAyNDYsIDEwNCwgMjQxLCAyNTUsIDIsIDI1MiwgMTM5LCAKKyAgICA0MywgMjUyLCAzMCwgMjE0LCAxNTMsIDI0MSwgMjU1LCAyLCAyNTIsIDEzOSwgMjIyLCAyNTEsIDQ0LCA1MiwgODAsIDIsIAorICAgIDIyMiwgMTgzLCAyNDEsIDIzNSwgMjQ1LCA5OCwgNSwgNzcsIDk3LCA3NCwgMjE2LCA4OSwgMjI2LCAxNjgsIDc3LCA5NywgCisgICAgNzQsIDE0MCwgODAsIDc3LCAyMTYsIDg5LCAyMjYsIDE2NywgOTcsIDgwLCA3NywgMjE2LCA4OSwgMjI2LCAxNjcsIDk3LCAKKyAgICA4MCwgNzcsIDI1NCwgMTQ4LCAxMjgsIDExMSwgMjMzLCAxNSwgNzcsIDE0MCwgNzQsIDE0MCwgODAsIDIxNiwgMTM5LCAyMzMsIAorICAgIDE0LCAyNDIsIDEzMCwgNzcsIDk3LCA3NCwgMjE4LCA2NCwgNzcsIDk3LCA3NCwgMTQwLCA4MCwgMjE2LCAxMzksIDIxOCwgCisgICAgNjMsIDIxOCwgMjIsIDc3LCAxNDAsIDc0LCA0MywgMjQ0LCA5MSwgMjE3LCA3NywgNDQsIDI0NCwgOTEsIDIxNywgNzcsIAorICAgIDEyMCwgMjQ0LCA5MSwgMjE3LCA3NywgMTI0LCAyNDQsIDkxLCAyMTcsIDc3LCAyMTUsIDIxMSwgNjcsIDI1MiwgMTQxLCAKKyAgICAyNDgsIDYwLCAyMTAsIDE2MCwgMTg3LCAyMTgsIDI0MiwgMjEwLCAxNjAsIDE4NywgMjE1LCA0OSwgMjQ5LCAyMjYsIDQzLCAKKyAgICA3MSwgMjQ5LCA5OSwgMTI3LCA0NCwgNzEsIDI0OSwgOTksIDEyNywgNDMsIDcxLCAyMjYsIDMsIDQ0LCA3MSwgMjI2LCAzLCAKKyAgICAyMTAsIDE2MCwgMTg3LCA0MywgMjM2LCAxNSwgMTI3LCAyMTAsIDE2MCwgMTg3LCA0NCwgMjM2LCAxNSwgMTI3LCAyMTAsIAorICAgIDE2MCwgMTg3LCA0MywgMjUxLCAyNDIsIDEyNywgMjEwLCAxNjAsIDE4NywgNDQsIDI1MSwgMjQyLCAxMjcsIDQzLCA0MiwgCisgICAgMjUxLCAxNTgsIDIsIDIxNCwgMTgzLCA0NCwgNDIsIDI1MSwgMTU4LCAyLCAyMTQsIDE4MywgNDMsIDQyLCAyNTEsIDE1OCwgCisgICAgMiwgMjE2LCAxMTUsIDIzNiwgMCwgMjE2LCAxNCwgMjQ5LCAxNjAsIDQ0LCA0MiwgMjUxLCAxNTgsIDIsIDIxNiwgMTE1LCAKKyAgICAyMzYsIDAsIDI1MSwgMTc1LCAyNDksIDE2MCwgNDMsIDQyLCAyNTEsIDE1OCwgMiwgMjE2LCAxMTUsIDIzNiwgMCwgMjUxLCAKKyAgICAxNzUsIDI0OSwgMTYwLCA0NCwgNDIsIDI1MSwgMTU4LCAyLCAyMTYsIDExNSwgMjM2LCAwLCAyMTYsIDE0LCAyNDksIDE2MCwgCisgICAgNDMsIDI1NCwgMTEwLCAyNTEsIDE1OCwgMiwgMjQ3LCAxMjAsIDQ0LCAyNTQsIDExMCwgMjUxLCAxNTgsIDIsIDI0NywgMTIwLCAKKyAgICA0MywgMjU0LCAyNiwgMjMzLCAxNSwgMTI3LCA0NCwgMjU0LCAyNiwgMjQyLCAxMzAsIDEyNywgNTIsIDQzLCAyNTQsIDI2LCAKKyAgICAyNDIsIDEzMCwgMTI3LCA1MiwgNDQsIDI1NCwgMjYsIDIzMywgMTUsIDEyNywgNDMsIDg1LCAyMTYsIDYsIDIyMCwgNTMsIAorICAgIDEyNywgNDQsIDg1LCAyMTYsIDYsIDIyMCwgNTMsIDEyNywgMjQ2LCAxMTgsIDI0NCwgMTM1LCA2NywgMjEwLCAzNSwgMjMyLCAKKyAgICAyMTMsIDIzMSwgODgsIDI1NCwgMTEwLCAyMjYsIDE3MCwgMjMzLCA0NiwgNDQsIDI1NCwgMTEwLCAyMTQsIDEyLCAyLCAyMTgsIAorICAgIDIzNCwgMjMxLCA4OCwgNDQsIDI1NCwgMTEwLCAyLCAyNDcsIDEyMCwgMjU0LCAxMTAsIDIsIDIyMiwgOTIsIDIzNSwgMjE1LCAKKyAgICAyNTUsIDMsIDI1NCwgMTA5LCAyMTgsIDI1NSwgMjU0LCAxMTAsIDIyNiwgMTcwLCAyMzMsIDQ2LCAyMTgsIDI1NSwgMjU0LCAKKyAgICAxMTAsIDIyNiwgMTcwLCAyMTQsIDE2MywgMjE1LCA5NCwgMjU0LCAxMDksIDIyMywgNDksIDI1NCwgMTA5LCAyNTQsIDExMCwgCisgICAgMiwgMjE0LCAxODMsIDIyMywgNDksIDI1NCwgMTEwLCAyLCAyMTQsIDE4MywgMjI2LCAyNDgsIDI1NCwgMTEwLCAyMjYsIAorICAgIDE3MCwgMjE0LCAxNjMsIDIyNiwgMjQ4LCAyNTQsIDExMCwgMjI2LCAxNzAsIDI0NiwgMTA2LCAyMzEsIDg4LCAyNTQsIDExMCwgCisgICAgMiwgMjA0LCAyNTQsIDUsIDI0NSwgMTQwLCAyMzYsIDAsIDgwLCAyMjUsIDcsIDEyMCwgMjIsIDIyMiwgMjUxLCAyMzEsIDg4LCAKKyAgICAyNTQsIDExMCwgMiwgMjA0LCAyNTQsIDUsIDI0NSwgMTQwLCAyMzYsIDAsIDgwLCAyMjUsIDcsIDEyMCwgMjIsIDIzMywgNDYsIAorICAgIDIzMSwgODgsIDI1NCwgMTEwLCAyLCAyMDQsIDI1NCwgNSwgMjQ1LCAxNDAsIDIzNiwgMCwgODAsIDIyNSwgNywgMTI0LCAyMiwgCisgICAgMjIyLCAyNTEsIDIzMSwgODgsIDI1NCwgMTEwLCAyLCAyMDQsIDI1NCwgNSwgMjQ1LCAxNDAsIDIzNiwgMCwgODAsIDIyNSwgCisgICAgNywgMTI0LCAyMiwgMjMzLCA0NiwgMjMxLCA4OCwgMjU0LCAxMTAsIDIsIDIwNCwgMjU0LCA1LCAyNDUsIDE0MCwgMjM2LCAwLCAKKyAgICA4MCwgMjI1LCA3LCA0NCwgMjIsIDIxNCwgMTYzLCAyMzEsIDg4LCAyNTQsIDExMCwgMiwgMjA0LCAyNTQsIDUsIDI0NSwgCisgICAgMTQwLCAyMzYsIDAsIDgwLCAyMjUsIDcsIDQzLCAyMiwgMjE0LCAxNjMsIDIzMSwgODgsIDI1NCwgMTEwLCAyLCAyMDQsIAorICAgIDI1NCwgNSwgMjQ1LCAxNDAsIDIzNiwgMCwgODAsIDIyNSwgNywgNDQsIDIyLCAyNDYsIDEwNiwgMjMxLCA4OCwgMjU0LCAKKyAgICAxMTAsIDIsIDIwNCwgMjU0LCA1LCAyNDUsIDE0MCwgMjM2LCAwLCA4MCwgMjI1LCA3LCA0MywgMjIsIDI0NiwgMTA2LCAyMjMsIAorICAgIDQ5LCAyNDUsIDE1MiwgMjIwLCAxMjcsIDI0NSwgMTUyLCAyMjAsIDEyOCwgMiwgMjI2LCAxMjMsIDI0NSwgMTUyLCAyMjAsIAorICAgIDEyOCwgMiwgNCwgMjUwLCAzNiwgNDgsIDI0NSwgMTUyLCAyMjAsIDEyOCwgMiwgNDQsIDgwLCA0OCwgMjQ1LCAxNTIsIDIyMCwgCisgICAgMTI4LCAyLCA0MywgODAsIDQ4LCAyNTAsIDM2LCAyLCAyMDMsIDEzMCwgMzcsIDY3LCAxMzAsIDM3LCAyMjYsIDcsIDM3LCAKKyAgICAyMjMsIDUwLCAyMTksIDQ2LCAzNywgMjI1LCAxNzEsIDI1MCwgMzYsIDI0NywgMTczLCAyNTEsIDc4LCAyMDMsIDI1MiwgCisgICAgMTQxLCAyMiwgMjE2LCAxNCwgMTYzLCAyNDcsIDE3MywgMjUxLCA3OCwgNjcsIDEzMCwgMjUwLCAzNiwgMiwgMjE4LCAyNCwgCisgICAgMjExLCAxNzgsIDM3LCAyNTQsIDg3LCAyNDcsIDE2OSwgNTAsIDEyMCwgODAsIDIxNiwgMTM5LCAyNTAsIDM1LCAzNywgNzEsIAorICAgIDI1MSwgMTEzLCAzNywgMjUxLCAxMTMsIDM3LCAyMzMsIDE0LCAzNywgMjQyLCAxMjksIDI1MCwgMzYsIDIsIDQsIDI1MCwgCisgICAgMzYsIDIxNiwgNDIsIDIxNiwgMTk2LCAyMjIsIDI1MSwgMjUwLCAzNiwgMiwgMTEzLCAyMDMsIDIxOCwgOTEsIDIxNiwgNDIsIAorICAgIDIxNiwgMTk2LCAyMjIsIDI1MSwgOTIsIDIyMiwgMjI4LCAyNDcsIDI1NSwgMjE5LCA5NSwgOTIsIDI0NCwgMTc1LCAyNDcsIAorICAgIDI1NSwgMjE5LCA5NSwgOTIsIDI1MywgMjE2LCA5MiwgNCwgMjUwLCAzNSwgOTIsIDIxOCwgMjM0LCAxMTMsIDIzNSwgNjUsIAorICAgIDIxOCwgMjMyLCAyMTUsIDIyNiwgMiwgNTksIDQ4LCAyMTUsIDIyNiwgMiwgMjE0LCAxODMsIDIyMiwgOTIsIDIzNiwgMCwgCisgICAgMjE1LCAyMjUsIDIxNSwgMjI2LCAyLCAyMjAsIDEzNCwgMjUzLCAyMDcsIDI1MSwgMTc0LCA0NCwgMjE1LCAyMjYsIDc3LCAKKyAgICA0MywgMjE1LCAyMjUsIDQzLCAyMTUsIDIyNiwgMjUyLCAzMCwgNjcsIDEzMCwgNjcsIDI1MiwgMTQxLCAyNTIsIDMwLCA0NCwgCisgICAgMjE1LCAyMjUsIDI1MSwgMTY1LCAyLCA0MywgMTYzLCAyNTEsIDIyMSwgMjUxLCAxNjUsIDIsIDQ0LCAxNjMsIDI1MSwgMjIxLCAKKyAgICA4NSwgMjUxLCAxNjQsIDMwLCAyLCA0MywgMTYzLCAyNTEsIDIyMSwgMzAsIDIsIDQ0LCAxNjMsIDI1MSwgMjIxLCA3MSwgCisgICAgMjQwLCAyMzYsIDg1LCAyNDAsIDIzNiwgNDMsIDIxMSwgMjQ0LCAyNDQsIDEzNSwgNDQsIDIxMSwgMjQ0LCAyNDQsIDEzNSwgCisgICAgNDMsIDUyLCAyMTEsIDI0NCwgMjQ0LCAxMzUsIDQ0LCA1MiwgMjExLCAyNDQsIDI0NCwgMTM1LCAyMzUsIDI0OCwgMjM1LCAKKyAgICAyMzQsIDIxNiwgMTEyLCAxMTcsIDIzNSwgMjM0LCAyMzUsIDIzNSwgMjI5LCAxMDIsIDIsIDY3LCAxMzAsIDI0NiwgMTEyLCAKKyAgICAyMzAsIDg3LCA0MiwgMiwgMjQ5LCAxODEsIDIyNiwgMTI3LCAyMzUsIDI0NiwgMjUzLCAyMzcsIDIxOSwgMjE5LCAyMjQsIAorICAgIDE4MCwgMjQ1LCA5OCwgNSwgMjIsIDIxOSwgOTcsIDIyNiwgNywgMjQ1LCA5OCwgNSwgMjIsIDIxOSwgOTcsIDIyNiwgOCwgMiwgCisgICAgMjE2LCA4OSwgNDgsIDI0MCwgMTA0LCAyMTYsIDQyLCAyMiwgMjE5LCA5NywgMjI2LCA3LCAyNDIsIDE4MywgMjE4LCAxNTUsIAorICAgIDIxNiwgMTg1LCAyNDYsIDEwNSwgMjE1LCAyMjYsIDIsIDQzLCAxNjMsIDI1MSwgMjIxLCAyNDYsIDEwNSwgMjE1LCAyMjYsIAorICAgIDIsIDQ0LCAxNjMsIDI1MSwgMjIxLCA4NSwgMjQ3LCAyNDksIDIsIDEyNCwgNzQsIDg1LCAyMzIsIDEwNCwgNzEsIDI1MCwgCisgICAgMzYsIDIsIDEyNCwgNzQsIDg1LCAyNTAsIDM2LCAyLCAxMjQsIDc0LCAyNDUsIDg1LCA3MSwgMjE4LCAyMzQsIDI0NSwgODUsIAorICAgIDg1LCAyMTgsIDIzNCwgMjQ1LCA4NSwgNzEsIDI0NywgMjQ4LCAyNDUsIDg1LCA4NSwgMjQ3LCAyNDgsIDI0NSwgODUsIDcxLCAKKyAgICAyNTAsIDM1LCAyNDUsIDg1LCA4NSwgMjUwLCAzNSwgMjIyLCAxMzIsIDIyMywgNTAsIDIxOSwgNDcsIDIyNiwgMTY3LCAyMTksIAorICAgIDQ3LCAyLCAyMjYsIDEyMywgMjIzLCA1MCwgMjE5LCA0NywgMiwgMjAzLCA5MSwgMjUxLCAyNDksIDIxOSwgNDYsIDI1MSwgCisgICAgMjQ5LCAyMjMsIDUwLCAyMTksIDQ2LCA1MiwgMjI1LCAyMiwgMjE1LCAyMTEsIDIyNSwgMjIsIDIzMywgNDIsIDI0OSwgOTEsIAorICAgIDI1NCwgMTEwLCAxMjcsIDIyMiwgMjQ3LCAyNDksIDkxLCAyNTQsIDExMCwgMTI3LCAyMTYsIDc4LCAyMzAsIDE3OSwgMjMwLCAKKyAgICAyNCwgMzcsIDU5LCAyMjYsIDE2NywgMjMwLCAyNCwgMzcsIDk2LCAyMjYsIDE2NywgMjMwLCAyNCwgMzcsIDMwLCAyMjYsIAorICAgIDE2NywgMjMwLCAyNCwgMjE0LCAxNzYsIDIyNiwgMTY4LCAyLCAyNDcsIDEyMCwgMjMwLCAyNCwgMjE0LCAxNzYsIDIyNiwgCisgICAgMTY4LCAyLCAyMjUsIDIyLCAyMzAsIDI0LCA0MiwgMjM1LCAxOTksIDIyNiwgMTY3LCAyMzAsIDI0LCA0MiwgMjE0LCAxNzYsIAorICAgIDIyNiwgMTY3LCAxMTMsIDIzMiwgMTQ2LCAyMiwgMjI2LCAxNjcsIDExMywgMjMyLCAxNDYsIDE3NywgMjI2LCAxNjcsIDIzMCwgCisgICAgMjQsIDMwLCAyMjYsIDE2NywgMjMwLCAxNTQsIDExMywgMjE4LCA0MywgMjE4LCA0MSwgMiwgMjM1LCAyMTEsIDIyNCwgMjQsIAorICAgIDIzNSwgMjEyLCAyMjYsIDE2NywgMjQ0LCA5OSwgMjI1LCAyNTUsIDIzNSwgMjExLCAyMzUsIDIxMiwgMiwgNTIsIDkxLCAKKyAgICAyMzUsIDIxMiwgMjUzLCAxNzMsIDIsIDIxOSwgOTUsIDI1MCwgMzIsIDI0MywgMjI2LCAyNTQsIDg4LCAyMzUsIDIwOSwgCisgICAgMjMyLCAyMTQsIDIzNSwgMjEwLCAyLCAyMjMsIDExNSwgMjI1LCAyMzcsIDI1NCwgMiwgMjI1LCAxLCAyMzIsIDIxNCwgMjM1LCAKKyAgICAyMTAsIDIsIDIyMCwgMTUyLCAyMjUsIDIzNywgMjU0LCAyLCAyMjUsIDEsIDIzMiwgMjE0LCAyMzUsIDIxMCwgMjI4LCA1MiwgCisgICAgMjM1LCAyNTAsIDIxNiwgMTk2LCAyMjUsIDEsIDIzNSwgMjEyLCAyNTQsIDIsIDExNSwgMjI1LCAxMSwgMjI2LCAxNjcsIAorICAgIDIyNCwgMTgsIDIzNSwgMjEyLCAyMjYsIDE2NywgMjM1LCAyMTIsIDIsIDE0MCwgODAsIDIsIDEwMywgMjM1LCAyMTIsIDIsIAorICAgIDMwLCA1MCwgMjM1LCAyMTIsIDIsIDIzNSwgMTk4LCAyMzUsIDIxMiwgMiwgMjE0LCAxNzUsIDIzNSwgMjEyLCAyLCAyMjYsIAorICAgIDEyMywgMjM1LCAyMTIsIDIsIDIxNCwgMTgzLCAyMzUsIDY2LCAyMzMsIDg1LCA0MywgMjE1LCAyMjYsIDIyNiwgMTY3LCAKKyAgICAyMTAsIDE2MCwgMTg3LCAyMjEsIDIwMSwgMjQ5LCAyMDksIDIxMCwgMTYwLCAxODcsIDIyMSwgMjAxLCAyMjUsIDU2LCAyMTAsIAorICAgIDE2MCwgMTg3LCAyMjEsIDIwMSwgMjI0LCAxNzYsIDk2LCA1LCAyLCA0LCAyNTAsIDM2LCA0OCwgOTYsIDUsIDIsIDI1MCwgCisgICAgMzEsIDI1NSwgMTUsIDQ4LCA5NiwgNSwgMiwgMjE2LCA4OSwgNDgsIDk2LCA1LCAyLCA1OSwgNTEsIDk2LCA1LCAyLCAyMTYsIAorICAgIDg5LCA1MSwgOTYsIDUsIDIsIDIxOCwgNjUsIDEwNSwgOTYsIDUsIDIsIDg1LCAyMTUsIDIyNSwgMjMwLCAxODIsIDUsIDIsIAorICAgIDI0OSwgMjIwLCA0OCwgMjMwLCAxODIsIDUsIDIsIDU5LCA1MSwgMjMwLCAxODIsIDUsIDIsIDI0NCwgMTc1LCAyNDcsIDExOCwgCisgICAgMjMwLCAxODIsIDUsIDIsIDIyMiwgMjI4LCAyNDcsIDExOCwgOTYsIDUsIDIzNiwgMCwgNDMsIDE2MywgMjUwLCAzNSwgOTYsIAorICAgIDUsIDIzNiwgMCwgNDQsIDE2MywgMjUwLCAzNSwgMjEzLCAyNTQsIDE3NywgMjQ5LCAxMzEsIDIyNCwgMTgwLCAyMzAsIDg0LCAKKyAgICA1LCAyLCA1OSwgNDgsIDIzMCwgODQsIDUsIDIsIDIxNCwgMTgzLCAyMjAsIDE0OSwgMjI0LCAxODEsIDIsIDI1MSwgMTc1LCAKKyAgICAyNDksIDI1NSwgMjE5LCA3NywgMjI0LCAxODAsIDIzMCwgODQsIDUsIDIzNiwgMCwgNDMsIDE2MywgMjUwLCAzNSwgMjMwLCAKKyAgICA4NCwgNSwgMjM2LCAwLCA0NCwgMTYzLCAyNTAsIDM1LCAzNywgMjMwLCA4NCwgNSwgMiwgMjUwLCAzMSwgMjU1LCAxNCwgCisgICAgMjMwLCA4NCwgNSwgMjM2LCAwLCA1MiwgMjUwLCAzNSwgMzcsIDI0NywgMTY5LCA1MCwgOTYsIDUsIDIzNiwgMCwgMjE1LCAKKyAgICAyMjUsIDIzMCwgMTgyLCA1LCAyMzYsIDAsIDIxNSwgMjI1LCAyMzAsIDg0LCA1LCAyMzYsIDAsIDIxNSwgMjI1LCAyMzUsIAorICAgIDIwNiwgMjI0LCAxODAsIDIyMiwgMjQyLCAyMzUsIDIwNiwgMjI0LCAxODAsIDIxMCwgMTYwLCAxODcsIDIyMywgOTAsIDI0OSwgCisgICAgMjA5LCAyNTQsIDEzNCwgMTc3LCAyNDksIDE2NSwgMjM1LCAxOTksIDIsIDI0NywgMTIwLCAyMTQsIDE3NiwgMiwgMjMwLCAKKyAgICAxODIsIDUwLCAyMTQsIDE3NiwgMiwgMjI2LCAxMjMsIDIzNSwgMTk5LCAyLCAyMjYsIDEyMywgMjM1LCAxOTksIDIsIDIzMiwgCisgICAgMTQ2LCAyNTQsIDExOCwgMjE0LCAxNzYsIDIsIDIzMiwgMTQ2LCAyMjYsIDE1OCwgMjE0LCAxNzYsIDc3LCAyMzUsIDE5OCwgCisgICAgMjM1LCAxOTksIDc3LCAyMTQsIDE3NSwgMjE0LCAxNzYsIDc3LCAyNTIsIDE0MSwgNzcsIDIzNSwgMTk4LCAyMzUsIDE5OSwgCisgICAgNzcsIDI1MiwgMTQxLCA3NywgMjE0LCAxNzUsIDIxNCwgMTc2LCAyNTIsIDMwLCAyMiwgMjM1LCA2NSwgMiwgMjE0LCAxNzUsIAorICAgIDIzNSwgMTk5LCAyNTIsIDMwLCAyMiwgMjM1LCA2NSwgMiwgMjM1LCAxOTgsIDI1MCwgMCwgMjE0LCAxNzYsIDIsIDIyMCwgCisgICAgMTMzLCAyNTAsIDAsIDIzNSwgMTk5LCAyLCAyMjAsIDEzMywgNTIsIDQyLCAyMzUsIDE5OCwgNTIsIDQyLCAyMTQsIDE3NSwgCisgICAgMjUwLCAwLCAyMTQsIDE3NiwgMiwgMjIwLCAxMzQsIDIyLCAyMTksIDc3LCAyMjQsIDE4MCwgMjMyLCAxNDYsIDIyLCAyLCAKKyAgICA1OSwgNDgsIDIzMiwgMTQ2LCAxNzcsIDIsIDU5LCA0OCwgNTIsIDIzMiwgMTQ2LCAyNTQsIDExOCwgNTIsIDIzMiwgMTQ2LCAKKyAgICAyMjYsIDE1OCwgMTEzLCAyMzUsIDIwMCwgMjMyLCAxNDYsIDI1NCwgMTE4LCAxMTMsIDIzNSwgMjAwLCAyMzIsIDE0NiwgCisgICAgMjI2LCAxNTgsIDIxOSwgODUsIDIzMywgODUsIDIyNiwgMTU4LCAyMTksIDg1LCAyMzMsIDg1LCAyNTQsIDExOCwgMjMyLCAKKyAgICAxNDYsIDE3NywgMjI2LCAxMjEsIDIzMiwgMTQ2LCAyNTQsIDExOCwgMjMyLCAxNDYsIDIyLCAyLCAyMzAsIDIyNCwgMjE4LCAKKyAgICAxMzksIDIzMiwgMTQ2LCAxNzcsIDIsIDIzMCwgMjI0LCAyMTgsIDEzOSwgMjMyLCAxNDYsIDIyLCAyLCAyMDMsIDI0OCwgCisgICAgMTU2LCAyMzIsIDE0NiwgMTc3LCAyLCAyMDMsIDI0OCwgMTU2LCAyMzIsIDE0NiwgMjIsIDIsIDUyLCAyMjYsIDEyMywgMjMyLCAKKyAgICAxNDYsIDIyLCAyLCAyMTQsIDE4MywgMjMyLCAxNDYsIDIyLCAyLCA1MiwgMjE0LCAxODMsIDQsIDIxMywgMjUxLCAyLCAyMTQsIAorICAgIDE4MywgMjMyLCAxNDYsIDE3NywgMiwgNTIsIDIyNiwgMTIzLCAyMzIsIDE0NiwgMTc3LCAyLCA1MiwgMjE0LCAxODMsIDIxMCwgCisgICAgMTYwLCAxODcsIDI0NywgMTI5LCAyNTQsIDc5LCAyMTAsIDE2MCwgMTg3LCAyMjMsIDE0OCwgMjU0LCA3OSwgMjQ1LCA5OCwgCisgICAgNSwgMiwgNTksIDUxLCAyNDAsIDEwNCwgMiwgNTksIDQ4LCAyMTUsIDIxMSwgMjAzLCAyNTIsIDE0MSwgMiwgNTIsIDY3LCAKKyAgICA5MSwgMjE1LCAyMTEsIDIwMywgMjUyLCAxNDEsIDIsIDIxNSwgMjExLCA2NywgOTEsIDIxNiwgODksIDIyNiwgMTY4LCAyLCAKKyAgICA1OSwgNDgsIDIxNiwgODksIDIyNiwgMTY4LCAyLCAyMjIsIDIyOCwgMjQ3LCAxMTgsIDIxOSwgMTYyLCAyMzAsIDE4MiwgCisgICAgMjE5LCAxNjEsIDI0OSwgMTk5LCAyLCA1OSwgNDgsIDI0NSwgOTgsIDIsIDI1MywgMjE2LCAyNTQsIDE0OCwgMTI4LCAyMTYsIAorICAgIDQyLCAyLCAyNTAsIDMxLCAyNTUsIDE0LCAyNTQsIDQ4LCAxMjgsIDE3NywgMTI4LCAxMTEsIDI0NSwgOTgsIDUsIDc3LCA5NiwgCisgICAgNTAsIDk2LCA1LCA3NywgMjQ1LCA5OCwgNTAsIDI0NSwgOTgsIDUsIDc3LCAyMTYsIDg5LCAyMjYsIDE2NywgNTIsIDI0OSwgCisgICAgMjI3LCAyNDUsIDk5LCAxMTMsIDI0OSwgMTk0LCAyNDUsIDk4LCAyMTksIDE3NiwgMTM0LCAyNDksIDE5NCwgMjQ1LCA5OCwgCisgICAgMjE5LCAxNzYsIDI0NSwgOTgsIDUsIDIsIDExMywgMTcwLCA3NywgMjIsIDExMywgMTcwLCA1MSwgMjQ1LCA5NCwgMiwgMjQ0LCAKKyAgICAxMSwgMTcwLCA0OCwgMjMzLCAxNSwgMiwgMjUwLCAzNiwgMjM1LCAyMTUsIDI0MiwgMTMwLCAyLCAyNTAsIDM2LCAyMzUsIAorICAgIDIxNSwgMjMzLCAxNSwgMiwgMjI0LCAxMywgMTY0LCA0OCwgMjQyLCAxMzAsIDIsIDIyNCwgMTMsIDE2NCwgNDgsIDIzMywgCisgICAgMTUsIDE3NywgMjE5LCA5NywgMTI4LCAxMTEsIDI0MiwgMTMwLCAxNzcsIDIxOSwgOTcsIDEyOCwgMTExLCAyMzMsIDE1LCAKKyAgICAxNzcsIDIxOSwgOTcsIDEyOCwgMjE2LCA0MiwgMiwgNTksIDIzNSwgMjE1LCAyNDIsIDEzMCwgMTc3LCAyMTksIDk3LCAxMjgsIAorICAgIDIxNiwgNDIsIDIsIDU5LCAyMzUsIDIxNSwgMjMzLCAxNSwgMTc3LCAyMTksIDk3LCAxMjgsIDIxNiwgNDIsIDIsIDU5LCA0OCwgCisgICAgMjQyLCAxMzAsIDE3NywgMjE5LCA5NywgMTI4LCAyMTYsIDQyLCAyLCA1OSwgNDgsIDIzMywgMTUsIDE3NywgMjE5LCA5NywgCisgICAgMTI4LCAyMTYsIDQyLCAyLCA1OSwgNzcsIDIyMiwgMjUxLCAyNDIsIDEzMCwgMTc3LCAyMTksIDk3LCAxMjgsIDIxNiwgNDIsIAorICAgIDIsIDU5LCA3NywgMjMzLCA0NiwgMjMzLCAxNSwgMTc3LCAyNTQsIDQ5LCAyNDIsIDEzMCwgMTc3LCAyNTQsIDQ5LCAyMzMsIAorICAgIDE1LCAyMiwgMjE5LCAxNTMsIDIyOCwgNTIsIDEyOCwgMTExLCAyNDIsIDEzMCwgMjIsIDIxOSwgMTUzLCAyMjgsIDUyLCAKKyAgICAxMjgsIDExMSwgMjMzLCAxNSwgMjIsIDIyOCwgNTIsIDI1NCwgNDksIDI0MiwgMTMwLCAyMiwgMjI4LCA1MiwgMjU0LCA0OSwgCisgICAgMjMzLCAxNSwgNzcsIDI0NiwgMTExLCAxMjgsIDc3LCAyNDIsIDEyOSwgMjQyLCAxMzAsIDc3LCAyNDYsIDExMSwgMTI4LCAKKyAgICA3NywgMjMzLCAxNCwgMjMzLCAxNSwgNzcsIDIxOSwgMTYyLCAxNzcsIDI0NSwgOTksIDI0MiwgMTMwLCA3NywgMjE5LCAxNjIsIAorICAgIDE3NywgMjQ1LCA5OSwgMjMzLCAxNSwgNzcsIDIxOSwgMTYyLCA3NywgMjQyLCAxMjksIDI0MiwgMTMwLCA3NywgMjE5LCAKKyAgICAxNjIsIDc3LCAyMzMsIDE0LCAyMzMsIDE1LCA3NywgMjQyLCAxMzAsIDc3LCAyNDYsIDExMSwgMjQ1LCA5OSwgMjQyLCAxMzAsIAorICAgIDc3LCAyMzMsIDE1LCA3NywgMjQ2LCAxMTEsIDI0NSwgOTksIDIzMywgMTUsIDc3LCAyMTksIDk3LCAxMjgsIDc3LCAyNDIsIAorICAgIDEzMCwgNzcsIDIxOSwgOTcsIDI0NSwgOTksIDI0MiwgMTMwLCA3NywgMjE5LCA5NywgMTI4LCA3NywgMjMzLCAxNSwgNzcsIAorICAgIDIxOSwgOTcsIDI0NSwgOTksIDIxOSwgOTcsIDEyOCwgMjE2LCA0MiwgMTc3LCAyMzMsIDE0LCAyMTksIDk3LCAxMjgsIDIxNiwgCisgICAgNDIsIDE3NywgMjQyLCAxMjksIDIxOSwgOTcsIDEyOCwgMjE2LCA0MiwgMTc3LCAyMzMsIDE1LCAyLCA1OSwgMjM1LCAyMTUsIAorICAgIDIxOSwgOTcsIDEyOCwgMjE2LCA0MiwgMTc3LCAyNDIsIDEzMCwgMiwgNTksIDIzNSwgMjE1LCAyNDYsIDExMSwgMTI4LCAKKyAgICAyMTYsIDQyLCAxNzcsIDIzMywgMTQsIDI0NiwgMTExLCAxMjgsIDIxNiwgNDIsIDE3NywgMjQyLCAxMjksIDI0NiwgMTExLCAKKyAgICAyMTksIDk3LCAxMjgsIDIxNiwgNDIsIDE3NywgMjMzLCAxNCwgMjQ2LCAxMTEsIDIxOSwgOTcsIDEyOCwgMjE2LCA0MiwgCisgICAgMTc3LCAyNDIsIDEyOSwgMjE5LCAxNjIsIDE3NywgMjMzLCAxNCwgMjE5LCAxNjIsIDE3NywgMjQyLCAxMjksIDIxOSwgMTYyLCAKKyAgICA3NywgMjMzLCAxNSwgNzcsIDI0NSwgOTgsIDUwLCAyMTksIDE2MiwgNzcsIDI0MiwgMTMwLCA3NywgMjQ1LCA5OCwgNTAsIAorICAgIDUyLCAyMjksIDkxLCAyMzMsIDE0LCA1MiwgMjI5LCA5MSwgMjQyLCAxMjksIDUyLCAyMjksIDkxLCAyMzMsIDE1LCAyLCAKKyAgICAyMTQsIDE4MywgMjQyLCAxMzAsIDIyNiwgMTIxLCAyMzMsIDE0LCAyNDIsIDEzMCwgMjUyLCAzMCwgMjMzLCAxNCwgMjMzLCAKKyAgICAxNSwgMjUwLCAwLCAyNTEsIDc4LCAyNDksIDkyLCAyNDIsIDEzMCwgMjUwLCAwLCAyNTEsIDc4LCAyNDksIDkyLCAyMzMsIAorICAgIDE1LCAyNTAsIDAsIDI1MSwgNzgsIDI0OSwgOTMsIDc3LCAyMTksIDk3LCAyNDUsIDk5LCAyNDIsIDEzMCwgMjUwLCAwLCAKKyAgICAyNTEsIDc4LCAyNDksIDkzLCA3NywgMjE5LCA5NywgMjQ1LCA5OSwgMjE5LCA3OCwgMjE2LCAyMDAsIDIzMywgODMsIDIxNiwgCisgICAgMjAwLCAyMTksIDc4LCAyMTYsIDIwMSwgMTc3LCAxMjgsIDExMSwgMjMzLCA4MywgMjE2LCAyMDEsIDE3NywgMTI4LCAxMTEsIAorICAgIDI0NSwgOTgsIDUsIDIsIDI1MSwgMTA4LCA0OCwgMjI0LCAyMDMsIDc3LCAyMTksIDE1MywgMjQ1LCA5OCwgNTAsIDIxOCwgCisgICAgNTYsIDc3LCAyMTksIDE1MywgMjQ1LCA5OCwgNTAsIDIyNCwgMjAzLCA3NywgMjE5LCAxNTMsIDIyOCwgNTIsIDEyOCwgMTExLCAKKyAgICAyMTgsIDU2LCA3NywgMjE5LCAxNTMsIDIyOCwgNTIsIDEyOCwgMTExLCAyMjQsIDIwMywgNzcsIDI0NSwgOTgsIDUwLCAyMTgsIAorICAgIDU2LCA3NywgMjQ1LCA5OCwgNTAsIDIyNCwgMjAzLCA3NywgMjI4LCA1MiwgMTI4LCAxMTEsIDIxOCwgNTYsIDc3LCAyMjgsIAorICAgIDUyLCAxMjgsIDExMSwgMjI0LCAyMDMsIDc3LCAyNTQsIDE0OCwgMTI4LCAxMTEsIDIxOCwgNTYsIDc3LCAyNTQsIDE0OCwgCisgICAgMTI4LCAxMTEsIDIyNCwgMjAzLCA3NywgMjI4LCA1MiwgMjU0LCAxNDgsIDEyOCwgMTExLCAyMTgsIDU2LCA3NywgMjI4LCAKKyAgICA1MiwgMjU0LCAxNDgsIDEyOCwgMTExLCA1MiwgMjI0LCAyMDIsIDUyLCAyMTgsIDU1LCAyMTgsIDY0LCAyLCAyNDcsIDEyMCwgCisgICAgMjE4LCAyMiwgMiwgMjQ3LCAxMjAsIDIxOCwgNjQsIDIsIDk2LCA1LCA1MSwgMjE4LCAyMiwgMiwgOTYsIDUsIDUxLCAyMTgsIAorICAgIDY0LCAyLCAyMzAsIDg0LCA1LCA1MSwgMjE4LCAyMiwgMiwgMjMwLCA4NCwgNSwgNTEsIDIxOCwgNjQsIDY0LCAxNzcsIDEyOCwgCisgICAgMjE2LCA0MiwgMiwgNTksIDQ4LCAyMTgsIDIyLCA2NCwgMTc3LCAxMjgsIDIxNiwgNDIsIDIsIDU5LCA0OCwgMjE4LCA2NCwgCisgICAgNjQsIDc3LCAyNDUsIDk4LCA1MCwgMjE4LCAyMiwgNjQsIDc3LCAyNDUsIDk4LCA1MCwgMjE4LCA2NCwgNjQsIDc3LCAyMTYsIAorICAgIDg5LCAyMjYsIDE2NywgMjE4LCAyMiwgNjQsIDc3LCAyMTYsIDg5LCAyMjYsIDE2NywgMjE4LCA2NCwgNjQsIDc3LCAyNTQsIAorICAgIDE0OCwgMTI4LCAxMTEsIDIxOCwgMjIsIDY0LCA3NywgMjU0LCAxNDgsIDEyOCwgMTExLCAyMTgsIDY0LCA2NCwgNzcsIDIyOCwgCisgICAgNTIsIDEyOCwgMTExLCAyMTgsIDIyLCA2NCwgNzcsIDIyOCwgNTIsIDEyOCwgMTExLCA0MiwgNDMsIDIwNCwgOTMsIDIyNiwgCisgICAgMTY3LCA0MiwgNDQsIDIwNCwgOTMsIDIyNiwgMTY3LCAyNTAsIDAsIDIxOCwgNjMsIDI1MCwgMCwgMjE4LCAyMSwgMjUwLCAwLCAKKyAgICAyMTgsIDY0LCAxNzcsIDEyOCwgMTExLCAyNTAsIDAsIDIxOCwgMjIsIDE3NywgMTI4LCAxMTEsIDIxOCwgNjQsIDc3LCAyMTgsIAorICAgIDIxLCAyMTgsIDIyLCA3NywgMjE4LCA2MywgMjE4LCA2NCwgNzcsIDIxOCwgNjMsIDIxOCwgMjIsIDc3LCAyMTgsIDIxLCAKKyAgICAyMTgsIDIyLCAyNTIsIDMwLCAyMTgsIDYzLCAyMTgsIDIyLCAyNTIsIDMwLCAyMiwgMjM1LCA2NSwgMjUxLCA3OCwgMjQ4LCAKKyAgICAxNTcsIDIsIDIxOCwgNjMsIDI0NSwgMTcwLCA2NCwgMjI2LCAxNzAsIDI0NiwgMTAzLCAyMjUsIDQ4LCAyLCAyMTcsIDEyLCAKKyAgICAyMTYsIDEzLCAyMTUsIDI0MCwgMjM1LCAxOTgsIDI0NCwgMjEsIDIyOCwgNjUsIDIxOSwgMjUxLCA0MywgMjE3LCA4NywgCisgICAgMjE5LCAyNTEsIDEyNCwgMjE3LCA4NywgMjE5LCAyNTEsIDEyMCwgMjE3LCA4NywgMjI1LCAxNzIsIDIsIDIyMiwgOTEsIDY3LCAKKyAgICAyNTIsIDE0MSwgMjE1LCAyMTEsIDQ0LCAyMTUsIDkzLCA1MiwgNjcsIDI1MiwgMTQxLCA0MywgMjE1LCA5MywgNjcsIDI1MiwgCisgICAgMTQxLCA1MiwgNDMsIDIxNSwgOTMsIDUyLCA2NywgMjUyLCAxNDEsIDUyLCA0MywgMjE1LCA5MywgMTk5LCAyNDgsIDE1NywgCisgICAgMjQzLCAyNDMsIDQzLCAyMzEsIDYzLCA2NCwgNTIsIDIxMywgMjM5LCAyMTksIDI1MSwgMTI0LCAyMTcsIDg4LCAyLCAyMjYsIAorICAgIDEyMywgMjE5LCAyNTEsIDEyMCwgMjE3LCA4OCwgMiwgMjE0LCAxODMsIDIxOSwgMjUxLCAxMjAsIDIxNywgODgsIDc3LCAKKyAgICAyMTksIDI1MSwgMTI0LCAyMTcsIDg3LCA1MiwgMTI0LCAyMTcsIDg3LCA1MiwgMTIwLCAyMTcsIDg3LCA1MiwgMjE4LCAxMDMsIAorICAgIDIyOCwgNTIsIDUwLCAyMjMsIDQ5LCA1MiwgMjE4LCAxMDMsIDIyOCwgNTIsIDUwLCAyNDcsIDEzOCwgMjI4LCA1MiwgMjQ3LCAKKyAgICAxNzUsIDIsIDIyMywgNDksIDIyOSwgMTAxLCAyMTksIDk1LCA2NywgMjMyLCAyMTQsIDIsIDI1MCwgMzYsIDQ4LCA2NywgCisgICAgMjMyLCAyMTQsIDIsIDI1MCwgMzYsIDUxLCAxMjQsIDIxNywgODgsIDIsIDI1MCwgMzYsIDUxLCAyMjYsIDgsIDIsIDIwMywgCisgICAgOTEsIDIyNiwgOCwgMiwgMjE2LCA4OSwgMjI2LCAxNjcsIDIxNSwgMjExLCA2NywgMjUyLCAxNDEsIDI1MSwgMjQ0LCAyMjMsIAorICAgIDkxLCAyMTUsIDIxMSwgNjcsIDI1MiwgMTQxLCAyLCAyMDMsIDkxLCAyMTUsIDIxMSwgMjQ5LCAyMjcsIDIyNiwgMTY3LCAKKyAgICAyMTUsIDIxMSwgMjI5LCA5MSwgMjMzLCAxNCwgMjE1LCAyMTEsIDIyOSwgOTEsIDI0MiwgMTI5LCAyNDYsIDExMSwgMjE5LCAKKyAgICA5NywgMjMzLCAxNSwgMTc3LCAxMjgsIDExMSwgMjQ2LCAxMTEsIDIxOSwgOTcsIDI0MiwgMTMwLCAxNzcsIDEyOCwgMTExLCAKKyAgICAyMTUsIDIxMSwgMjE5LCA0NywgMjUxLCAyNDQsIDIyMywgOTEsIDIzMywgODUsIDIxNSwgMjExLCA2NywgMjUyLCAxNDEsIAorICAgIDIyNiwgMTY3LCA1MiwgMjE5LCA0NywgMjI2LCAxNjcsIDcxLCA2NywgMTMwLCAyMzAsIDI0LCA3MSwgNjcsIDEzMCwgMjI4LCAKKyAgICA1NiwgMjQ1LCAyMjAsIDcxLCA3NCwgMjI4LCA1NiwgMjEyLCA5LCA3MSwgNzQsIDIxOSwgMjgsIDI0NSwgMjIwLCA3MSwgNzQsIAorICAgIDIxOSwgMjgsIDIxMiwgOSwgNzEsIDc0LCA0MywgNDQsIDcxLCA3NCwgMTQwLCA4NSwgNzQsIDIxNCwgMTUzLCA4NSwgNzQsIAorICAgIDI0NiwgMTA0LCA4NSwgNzQsIDIyOCwgNTYsIDI0NSwgMjIwLCA4NSwgNzQsIDIyOCwgNTYsIDIxMiwgOSwgODUsIDc0LCAKKyAgICAyMTksIDI4LCAyNDUsIDIyMCwgODUsIDc0LCAyMTksIDI4LCAyMTIsIDksIDg1LCA3NCwgNDMsIDQ0LCA4NSwgNzQsIDEyMCwgCisgICAgMTI0LCA4NSwgNzQsIDk3LCA4MCwgMiwgMjE2LCA3NywgMjQ2LCAxMDMsIDk3LCA4MCwgMiwgMjE2LCA3NywgMjE0LCAxNTIsIAorICAgIDE0MCwgODAsIDIsIDIxNiwgNzcsIDI0NiwgMTAzLCAxNDAsIDgwLCAyLCAyMTYsIDc3LCAyMTQsIDE1MiwgNDIsIDIsIDIxNiwgCisgICAgMTQsIDE2MywgMjUxLCAyMjEsIDQyLCAyLCAyNTEsIDE3NSwgMTYzLCAyNTEsIDIyMSwgNDIsIDIsIDIxNCwgMTYwLCA0NCwgCisgICAgMjQ3LCAyNTUsIDE2MywgMjUxLCAyMjEsIDQyLCAyLCAyMzIsIDEwOCwgNDMsIDI0NywgMjU1LCAxNjMsIDI1MSwgMjIxLCAKKyAgICAyNDcsIDI0OSwgMiwgNDMsIDE2MywgMjUxLCAyMjEsIDI0NywgMjQ5LCAyLCA0NCwgMTYzLCAyNTEsIDIyMSwgMjQ3LCAyNDksIAorICAgIDIsIDIxNiwgMTQsIDE2MywgMjUxLCAyMjEsIDI0NywgMjQ5LCAyLCAyNTEsIDE3NSwgMTYzLCAyNTEsIDIyMSwgMjQ2LCAKKyAgICAxMTgsIDIxOCwgMjM0LCA4NSwgMjMzLCA4NSwgMjE4LCAyMzQsIDcxLCAyMzMsIDg1LCAyMTgsIDIzNCwgODUsIDIxMywgCisgICAgMTg3LCA0LCAyMTgsIDIzNCwgNzEsIDIxMywgMTg3LCA0LCAyMTgsIDIzNCwgODUsIDIyNSwgMTkwLCA3MSwgMjI1LCAxOTAsIAorICAgIDcxLCAyNDEsIDE5MywgODUsIDI0MSwgMTkzLCAyMDMsIDg1LCAyNDEsIDE5MywgODUsIDIzMywgODUsIDI1MCwgMzUsIDg1LCAKKyAgICAyMzEsIDgyLCAyNDcsIDI0OCwgNzEsIDIzMSwgODIsIDI0NywgMjQ4LCA4NSwgMjMxLCA4MiwgMjMyLCAxMDQsIDcxLCAyMzEsIAorICAgIDgyLCAyMzIsIDEwNCwgODUsIDQsIDI0NywgMjQ4LCA4NSwgNCwgMjMyLCAxMDQsIDcxLCA0LCAyMzIsIDEwNCwgODUsIDIwMywgCisgICAgMjQ1LCAxNjQsIDcxLCAyMDMsIDI0NSwgMTY0LCA4NSwgNjcsIDI0NSwgMTY0LCA3MSwgNjcsIDI0NSwgMTY0LCA0MywgODAsIAorICAgIDIsIDQsIDI1MCwgMzUsIDEzNCwgMTQwLCAyNTMsIDI0NywgNDMsIDgwLCAyLCAzNywgMjI1LCAyMiwgMTk5LCAxNDAsIDIxOCwgCisgICAgMjMwLCA3NCwgMTQwLCAyMTUsIDU4LCA4MCwgMiwgNjcsIDkxLCAxNDAsIDIxNSwgNTgsIDgwLCAyLCA1MiwgNjcsIDkxLCAKKyAgICAxNDAsIDIxNSwgNTgsIDgwLCAyNDMsIDI0MywgMTMwLCAxNDAsIDIxNSwgNTgsIDIxNSwgMjExLCAyNDgsIDE1NywgNzQsIAorICAgIDE0MCwgODAsIDIsIDI0NiwgMTE4LCAyMTgsIDEzOSwgMTQwLCA4MCwgMiwgMjE3LCA3OCwgMiwgNjcsIDkxLCAxNDAsIDgwLCAKKyAgICAyLCAyMTcsIDc4LCAyLCA1MiwgNjcsIDkxLCAxNDAsIDIxNSwgNTgsIDgwLCAyLCAyMTcsIDc3LCAxNDAsIDIxNSwgNTgsIAorICAgIDgwLCAyLCAyMTcsIDc4LCAyLCA2NywgOTEsIDE0MCwgMjE1LCA1OCwgODAsIDIsIDIxNywgNzgsIDIsIDUyLCA2NywgOTEsIAorICAgIDE0MCwgODAsIDIxNiwgMTM5LCAyMTEsIDE3OCwgMjEyLCAzNiwgODAsIDIyNSwgNywgMjQ3LCAxOTUsIDIzMywgNDYsIDI0NSwgCisgICAgOTgsIDUsIDc3LCAxNDAsIDc0LCAyMjMsIDUwLCAyMTYsIDg5LCAyMjYsIDE2OCwgNzcsIDE0MCwgNzQsIDE0MCwgODAsIDc3LCAKKyAgICAyMjMsIDUwLCAyNTQsIDE0OCwgMTI4LCAxMTEsIDk3LCA4MCwgMjE2LCAxMzksIDI0MiwgMTI5LCA5NywgODAsIDIxNiwgCisgICAgMTM5LCAyMTgsIDIxLCAxNDAsIDIyNCwgMjQsIDc0LCA5NywgMjI0LCAyNCwgNzQsIDIyMywgNTAsIDIxNiwgODksIDIyNiwgCisgICAgMTY4LCA3NywgOTcsIDc0LCA5NywgODAsIDc3LCAyMjMsIDUwLCAyNTQsIDE0OCwgMTI4LCAxMTEsIDIxNiwgODksIDIyNiwgCisgICAgMTY4LCA3NywgMTQwLCA3NCwgMTQwLCA4MCwgNzcsIDI1NCwgMTQ4LCAxMjgsIDExMSwgMTQwLCA4MCwgNzcsIDIyMywgNTAsIAorICAgIDIxNiwgODksIDIyNiwgMTY3LCA5NywgODAsIDc3LCAyMjMsIDUwLCAyMTYsIDg5LCAyMjYsIDE2NywgNzEsIDIzMSwgODIsIAorICAgIDIxOCwgMTU2LCA4NSwgNCwgMjE4LCAxNTYsIDcxLCA0LCAyMTgsIDE1NiwgODUsIDIyMiwgMjQ3LCAyMjUsIDE5MCwgNzEsIAorICAgIDIyMiwgMjQ3LCAyMjUsIDE5MCwgMTE0LCAyMzMsIDg1LCAyNTAsIDM1LCAxMTQsIDIyNiwgMTI0LCAyLCAyMjYsIDEyNCwgCisgICAgMjM1LCAyMTUsIDExNCwgMjUwLCAzNiwgMiwgMjUwLCAzNiwgMjM1LCAyMTUsIDExNCwgMjUwLCAzNSwgMTE0LCAzNywgMjIxLCAKKyAgICAyNTQsIDE0NSwgNiwgMSwgMjUzLCAxNTksIDE0NSwgNiwgMSwgMjUxLCAxMTcsIDE0NSwgNiwgMSwgMjEzLCAyNTMsIDE0NSwgCisgICAgNiwgMSwgMjQyLCAxODUsIDE0NSwgNiwgMSwgMjQ3LCAxNDAsIDE0NSwgNiwgMSwgMjExLCAyMSwgMTQ1LCA2LCAxLCAyMTAsIAorICAgIDY4LCAxNDUsIDYsIDEsIDI0NiwgMzQsIDE0NSwgNiwgMSwgMjEwLCA5MSwgMTQ1LCA2LCAxLCAyMzUsIDE0OCwgMTQ1LCA2LCAKKyAgICAxLCA2NSwgMjM1LCAxNDgsIDE0NSwgNiwgMSwgNzMsIDE0NSwgNiwgMSwgMjQ3LCAxNjAsIDE0NSwgNiwgMSwgMjM0LCAyNDAsIAorICAgIDE0NSwgNiwgMSwgMjMyLCAxODYsIDE0NSwgNiwgMSwgMjMwLCAyOSwgMTQ1LCA2LCAxLCAyMjksIDE5MSwgMTQ1LCA2LCAxLCAKKyAgICAyMjYsIDE4NSwgMTQ1LCA2LCAxLCAyMjUsIDQsIDE0NSwgNiwgMSwgMjIyLCAyMjcsIDE0NSwgNiwgMSwgMjE5LCA4MywgCisgICAgMTQ1LCA2LCAxLCAyMTUsIDgxLCAxNDUsIDYsIDEsIDIxNCwgMjAxLCAxNDUsIDYsIDEsIDI0MywgMjQ2LCAxNDUsIDYsIDEsIAorICAgIDI0MSwgMTk5LCAxNDUsIDYsIDEsIDIyNiwgMTM1LCAxNDUsIDYsIDEsIDIyNSwgMjIxLCAxNDUsIDYsIDEsIDIxOSwgMjI4LCAKKyAgICAxNDUsIDYsIDEsIDIxNSwgMTY3LCAxNDUsIDYsIDEsIDI1MCwgNzUsIDE0NSwgNiwgMSwgMjIwLCAxMDIsIDE0NSwgNiwgMSwgCisgICAgMjExLCAyNywgMTQ1LCA2LCAxLCAyMTEsIDI5LCAxNDUsIDYsIDEsIDIxMSwgNTcsIDE0NSwgNiwgMSwgMjE4LCAyNTMsIAorICAgIDE2MiwgMTQ1LCA2LCAxLCAyMTAsIDIxMiwgMTQ1LCA2LCAxLCA0LCAyMTAsIDE4MywgMTQ1LCA2LCAxLCA0LCAyMTAsIDE4NCwgCisgICAgMiwgMjE3LCA3NywgMTQ1LCA2LCAxLCAyMTAsIDI0NCwgMTQ1LCA2LCAxLCAyMzUsIDE4NCwgNCwgMjEwLCAxODMsIDE0NSwgCisgICAgNiwgMSwgMjUxLCAyNDksIDIxMCwgMTgzLCAxNDUsIDYsIDEsIDIzNSwgMTg0LCAyNTEsIDI0OSwgMjEwLCAxODMsIDE0NSwgCisgICAgNiwgMSwgMjQ0LCA4MiwgMTQ1LCA2LCAxLCAyMzUsIDE0NiwgMTQ1LCA2LCAxLCAyMTksIDIyNywgMTQ1LCA2LCAxLCAyMTUsIAorICAgIDIwMiwgNjEsIDE0NSwgNiwgMSwgMjMzLCA3NSwgMjMwLCAyOSwgMTQ1LCA0LCAxLCAyNTMsIDE1OSwgMTQ1LCA0LCAxLCAKKyAgICAyNTEsIDExNywgMTQ1LCA0LCAxLCAyMTMsIDI1MywgMTQ1LCA0LCAxLCAyNDIsIDE4NSwgMTQ1LCA0LCAxLCAyNDcsIDE0MCwgCisgICAgMTQ1LCA0LCAxLCAyMTEsIDIxLCAxNDUsIDQsIDEsIDIxMCwgNjgsIDE0NSwgNCwgMSwgMjQ2LCAzNCwgMTQ1LCA0LCAxLCAKKyAgICAyMTAsIDkxLCAxNDUsIDQsIDEsIDIzNSwgMTQ4LCAxNDUsIDQsIDEsIDY1LCAyMzUsIDE0OCwgMTQ1LCA0LCAxLCA3MywgCisgICAgMTQ1LCA0LCAxLCAyNDcsIDE2MCwgMTQ1LCA0LCAxLCAyMzQsIDI0MCwgMTQ1LCA0LCAxLCAyMzIsIDE4NiwgMTQ1LCA0LCAxLCAKKyAgICAyMzAsIDI5LCAxNDUsIDQsIDEsIDIyOSwgMTkxLCAxNDUsIDQsIDEsIDIyNiwgMTg1LCAxNDUsIDQsIDEsIDIyNSwgNCwgCisgICAgMTQ1LCA0LCAxLCAyMjIsIDIyNywgMTQ1LCA0LCAxLCAyMTksIDgzLCAxNDUsIDQsIDEsIDIxNSwgODEsIDE0NSwgNCwgMSwgCisgICAgMjE0LCAyMDEsIDE0NSwgNCwgMSwgMjQzLCAyNDYsIDE0NSwgNCwgMSwgMjQxLCAxOTksIDE0NSwgNCwgMSwgMjI2LCAxMzUsIAorICAgIDE0NSwgNCwgMSwgMjI1LCAyMjEsIDE0NSwgNCwgMSwgMjE5LCAyMjgsIDE0NSwgNCwgMSwgMjE1LCAxNjcsIDE0NSwgNCwgMSwgCisgICAgMjUwLCA3NSwgMTQ1LCA0LCAxLCAyMjAsIDEwMiwgMTQ1LCA0LCAxLCAyMTEsIDI3LCAxNDUsIDQsIDEsIDIxMSwgMjksIAorICAgIDE0NSwgNCwgMSwgMjExLCA1NywgMTQ1LCA0LCAxLCAyMTgsIDI1MywgMTYyLCAxNDUsIDQsIDEsIDIxMCwgMjEyLCAxNDUsIAorICAgIDQsIDEsIDQsIDIxMCwgMTgzLCAxNDUsIDQsIDEsIDQsIDIxMCwgMTg0LCAyLCAyMTcsIDc3LCAxNDUsIDQsIDEsIDIxMCwgCisgICAgMjQ0LCAxNDUsIDQsIDEsIDIzNSwgMTg0LCA0LCAyMTAsIDE4MywgMTQ1LCA0LCAxLCAyNTEsIDI0OSwgMjEwLCAxODMsIAorICAgIDE0NSwgNCwgMSwgMjM1LCAxODQsIDI1MSwgMjQ5LCAyMTAsIDE4MywgMTQ1LCA0LCAxLCAyNDQsIDgyLCAxNDUsIDQsIDEsIAorICAgIDIzNSwgMTQ2LCAxNDUsIDQsIDEsIDIxOSwgMjI3LCAxNDUsIDQsIDEsIDIxNSwgMjAyLCA2MSwgMTQ1LCA0LCAxLCAyMzMsIAorICAgIDc1LCAyMzAsIDI5LCA3LCA2LCAxLCAyMzMsIDE0OSwgMiwgNTIsIDEzMCwgNywgNCwgMSwgMjMzLCAxNDksIDIsIDUyLCAKKyAgICAxMzAsIDcsIDYsIDEsIDIzMywgMTQ5LCAyLCAyMzAsIDIyNCwgMTgyLCA3LCA2LCAxLCAyMjYsIDEwNiwgMiwgOTEsIDcsIDYsIAorICAgIDEsIDIyMywgMjI0LCAyLCAyMTcsIDc3LCA3LCA0LCAxLCAxMTUsIDIsIDkxLCA3LCA0LCAxLCAyMTcsIDE1MywgMiwgMjQ3LCAKKyAgICAyNTUsIDkxLCA3LCA2LCAxLCAyNDIsIDYxLCAyLCAyNDgsIDM5LCA3LCA0LCAxLCAyNDIsIDYxLCAyLCAyNDgsIDM5LCA3LCAKKyAgICA2LCAxLCAyMzUsIDI0LCAyLCAyNDgsIDM5LCA3LCA0LCAxLCAyMzUsIDI0LCAyLCAyNDgsIDM5LCA3LCA2LCAxLCAyMTAsIAorICAgIDE2MCwgMiwgMjQ4LCAzOSwgNywgNCwgMSwgMjEwLCAxNjAsIDIsIDI0OCwgMzksIDcsIDYsIDEsIDI1NCwgMTQzLCA3LCA2LCAKKyAgICAxLCAyMzIsIDUwLCAyLCAxMDMsIDcsIDYsIDEsIDIxNSwgOTQsIDYxLCA3LCA2LCAxLCAyMTUsIDk0LCAyNTQsIDE0MywgNywgCisgICAgNCwgMSwgMjE0LCAxMDYsIDIsIDQ0LCAxMDMsIDcsIDYsIDEsIDIxMiwgOTksIDIsIDEwMywgNywgNCwgMSwgMjEyLCA5OSwgCisgICAgMiwgMTAzLCA3LCA0LCAxLCAyMTQsIDEwNiwgMiwgMjQ5LCAxMDAsIDcsIDYsIDEsIDE2MywgMjQyLCA2MCwgNywgNCwgMSwgCisgICAgMTYzLCAyNDIsIDYwLCA3LCA0LCAxLCAyMTcsIDc1LCAyMjUsIDEzMywgNywgNCwgMSwgMTYwLCAyLCAyMjgsIDUwLCA3LCA0LCAKKyAgICAxLCAyMTUsIDk0LCAyMjMsIDIyNCwgMiwgMjE3LCA3NywgNywgNCwgMSwgMTQ0LCAyLCAxMjEsIDIyMiwgMjM0LCAyMzUsIAorICAgIDIxNSwgNywgMSwgNCwgNiwgMjE1LCA5NCwgNzUsIDcsIDIxOCwgNjUsIDQsIDEsIDIzNSwgMTQ0LCA1OCwgMSwgNiwgMjE0LCAKKyAgICAxMDUsIDcsIDYsIDEsIDIyMiwgOTIsIDIsIDIxNywgMjUwLCAyMTcsIDc3LCA3LCA2LCAxLCAyMTAsIDE2MCwgMiwgMjE3LCAKKyAgICAyNTAsIDIxNywgNzcsIDgxLCA2LCAxLCAyNTQsIDE2NCwgODEsIDQsIDEsIDI1NCwgMTY0LCA4MSwgNiwgMSwgMjEzLCAxNzMsIAorICAgIDgxLCA0LCAxLCAyMTMsIDE3MywgODEsIDYsIDEsIDI0MywgMTA3LCA4MSwgNCwgMSwgMjQzLCAxMDcsIDgxLCA2LCAxLCAKKyAgICAyNDgsIDE5MSwgODEsIDQsIDEsIDI0OCwgMTkxLCA4MSwgNiwgMSwgMjQ1LCAxOTQsIDgxLCA0LCAxLCAyNDUsIDE5NCwgODEsIAorICAgIDYsIDEsIDIxOSwgMzMsIDgxLCA0LCAxLCAyMTksIDMzLCA4MSwgNiwgMSwgMjEwLCAxMDEsIDgxLCA0LCAxLCAyMTAsIDEwMSwgCisgICAgODEsIDYsIDEsIDI0MSwgMjQ4LCA4MSwgNCwgMSwgMjQxLCAyNDgsIDgxLCA2LCAxLCAyMTYsIDE3NywgODEsIDQsIDEsIAorICAgIDIxNiwgMTc3LCA4MSwgNiwgMSwgMjQwLCAxMTYsIDgxLCA0LCAxLCAyNDAsIDExNiwgODEsIDYsIDEsIDIzNCwgMjI3LCA4MSwgCisgICAgNCwgMSwgMjM0LCAyMjcsIDgxLCA2LCAxLCAyMzMsIDcyLCA4MSwgNCwgMSwgMjMzLCA3MiwgODEsIDYsIDEsIDIzMCwgMjMwLCAKKyAgICA4MSwgNCwgMSwgMjMwLCAyMzAsIDgxLCA2LCAxLCAyMjgsIDIzMywgODEsIDQsIDEsIDIyOCwgMjMzLCA4MSwgNiwgMSwgCisgICAgMjMzLCAyMzMsIDgxLCA0LCAxLCAyMzMsIDIzMywgODEsIDYsIDEsIDc2LCA4MSwgNCwgMSwgNzYsIDgxLCA2LCAxLCAyMjUsIAorICAgIDEwOCwgODEsIDQsIDEsIDIyNSwgMTA4LCA4MSwgNiwgMSwgMjIyLCAyMTEsIDgxLCA0LCAxLCAyMjIsIDIxMSwgODEsIDYsIAorICAgIDEsIDIxOSwgMTY1LCA4MSwgNCwgMSwgMjE5LCAxNjUsIDgxLCA2LCAxLCAyMTcsIDQxLCA4MSwgNCwgMSwgMjE3LCA0MSwgCisgICAgODEsIDYsIDEsIDIxNCwgMjI5LCA4MSwgNCwgMSwgMjE0LCAyMjksIDgxLCA2LCAxLCAyNDQsIDEyMSwgODEsIDQsIDEsIAorICAgIDI0NCwgMTIxLCA4MSwgNiwgMSwgMjM0LCAxMTIsIDgxLCA0LCAxLCAyMzQsIDExMiwgODEsIDYsIDEsIDIyNCwgMTYxLCA4MSwgCisgICAgNCwgMSwgMjI0LCAxNjEsIDgxLCA2LCAxLCAyMjYsIDE3OCwgODEsIDQsIDEsIDIyNiwgMTc4LCA4MSwgNiwgMSwgMjQ3LCAKKyAgICAyNTMsIDI1NCwgMTcwLCA4MSwgNCwgMSwgMjQ3LCAyNTMsIDI1NCwgMTcwLCA4MSwgNiwgMSwgNTUsIDgxLCAyNTQsIDE5NiwgCisgICAgODEsIDQsIDEsIDU1LCA4MSwgMjU0LCAxOTYsIDgxLCA2LCAxLCAyNDksIDExNSwgMjQ1LCAxOTQsIDgxLCA0LCAxLCAyNDksIAorICAgIDExNSwgMjQ1LCAxOTQsIDgxLCA2LCAxLCAyNDcsIDI1MywgMjM0LCAyMjcsIDgxLCA0LCAxLCAyNDcsIDI1MywgMjM0LCAKKyAgICAyMjcsIDgxLCA2LCAxLCAyNDcsIDI1MywgMjI4LCAyMzMsIDgxLCA0LCAxLCAyNDcsIDI1MywgMjI4LCAyMzMsIDgxLCA2LCAKKyAgICAxLCAyNDksIDExNSwgMjI4LCAyMzMsIDgxLCA0LCAxLCAyNDksIDExNSwgMjI4LCAyMzMsIDgxLCA2LCAxLCA1NSwgODEsIAorICAgIDIyNiwgMTc4LCA4MSwgNCwgMSwgNTUsIDgxLCAyMjYsIDE3OCwgODEsIDYsIDEsIDIyMSwgMjQ2LCA4MSwgNCwgMSwgMjIxLCAKKyAgICAyNDYsIDgxLCA2LCAxLCAyNDksIDEyOCwgMjIwLCA1NSwgODEsIDQsIDEsIDI0OSwgMTI4LCAyMjAsIDU1LCA4MSwgNiwgMSwgCisgICAgNTUsIDgxLCAyMjAsIDU1LCA4MSwgNCwgMSwgNTUsIDgxLCAyMjAsIDU1LCA4MSwgNiwgMSwgNTUsIDgxLCAyNDUsIDc1LCAKKyAgICA4MSwgNCwgMSwgNTUsIDgxLCAyNDUsIDc1LCA4MSwgNiwgMSwgMjU0LCAxODIsIDIzNCwgMTE3LCA4MSwgNCwgMSwgMjU0LCAKKyAgICAxODIsIDIzNCwgMTE3LCA4MSwgNiwgMSwgMjQ3LCAyNTMsIDI0MSwgNDUsIDgxLCA0LCAxLCAyNDcsIDI1MywgMjQxLCA0NSwgCisgICAgODEsIDYsIDEsIDU1LCA4MSwgMjQxLCA0NSwgODEsIDQsIDEsIDU1LCA4MSwgMjQxLCA0NSwgODEsIDYsIDEsIDU1LCA4MSwgCisgICAgMTYyLCA4MSwgNCwgMSwgNTUsIDgxLCAxNjIsIDgxLCA2LCAxLCAyMzMsIDE0OCwgMTYyLCA4MSwgNCwgMSwgMjMzLCAxNDgsIAorICAgIDE2MiwgODEsIDYsIDEsIDU1LCA4MSwgMjQxLCAyMTcsIDgxLCA0LCAxLCA1NSwgODEsIDI0MSwgMjE3LCA4MSwgNiwgMSwgCisgICAgNTUsIDgxLCAyNDEsIDI1MSwgODEsIDQsIDEsIDU1LCA4MSwgMjQxLCAyNTEsIDgxLCA2LCAxLCA1NSwgODEsIDI0MywgMTAyLCAKKyAgICA4MSwgNCwgMSwgNTUsIDgxLCAyNDMsIDEwMiwgODEsIDYsIDEsIDU1LCA4MSwgMjQ3LCAxNjMsIDgxLCA0LCAxLCA1NSwgODEsIAorICAgIDI0NywgMTYzLCA4MSwgNiwgMSwgNTUsIDgxLCAyMjAsIDIyLCA4MSwgNCwgMSwgNTUsIDgxLCAyMjAsIDIyLCA4MSwgNiwgMSwgCisgICAgNTUsIDIyNywgMjA4LCAyMjAsIDIyLCA4MSwgNCwgMSwgNTUsIDIyNywgMjA4LCAyMjAsIDIyLCA4MSwgNiwgMSwgNTUsIAorICAgIDIyNywgMjA4LCAyMjksIDI3LCA4MSwgNCwgMSwgNTUsIDIyNywgMjA4LCAyMjksIDI3LCA4MSwgNiwgMSwgNTUsIDIyNywgCisgICAgMjA4LCAyMjcsIDE0OCwgODEsIDQsIDEsIDU1LCAyMjcsIDIwOCwgMjI3LCAxNDgsIDgxLCA2LCAxLCA1NSwgMjI3LCAyMDgsIAorICAgIDIxMiwgMzcsIDgxLCA0LCAxLCA1NSwgMjI3LCAyMDgsIDIxMiwgMzcsIDgxLCAxNiwgMjM0LCAyNDYsIDgxLCAxNiwgMjMwLCAKKyAgICAyMzEsIDIyMiwgMjExLCA4MSwgMTYsIDIyNSwgMTA5LCAyMjIsIDIxMSwgODEsIDE2LCAyMTgsIDE0NywgODEsIDE2LCAyMTcsIAorICAgIDQyLCAyMjIsIDIxMSwgODEsIDE2LCAyMzQsIDExMywgMjIyLCAyMTEsIDgxLCAxNiwgMjIwLCAyMywgMjE5LCAxNjUsIDgxLCAKKyAgICA2LCAxLCAyNDksIDExNSwgMjIwLCA1NSwgODEsIDQsIDEsIDI0OSwgMTE1LCAyMjAsIDU1LCA4MSwgNiwgMSwgMjQ5LCAxMTUsIAorICAgIDI0MywgMTAyLCA4MSwgNCwgMSwgMjQ5LCAxMTUsIDI0MywgMTAyLCA4MSwgMzgsIDIyOCwgMjM0LCA0OCwgODEsIDM4LCAKKyAgICAyMTgsIDI0NywgMjUzLCAyMjQsIDgxLCAzOCwgMjE4LCAyNDcsIDIzMywgMjEsIDgxLCA2LCAxLCAyNTEsIDE5OSwgMjM0LCAKKyAgICAxMTcsIDgxLCA0LCAxLCAyNTEsIDE5OSwgMjM0LCAxMTcsIDgxLCA1NSwgMjI3LCAyMDgsIDI0MywgMjI5LCAyMTgsIDEyOSwgCisgICAgODEsIDU1LCAyMjcsIDIwOCwgMjQ3LCAxOTcsIDIyNCwgMTMsIDc4LCA4MSwgNTUsIDIyNywgMjA4LCAyMzUsIDIzNywgMjI0LCAKKyAgICAxMywgNzgsIDgxLCA1NSwgMjI3LCAyMDgsIDIxMywgMjQxLCAyNDcsIDE3MiwgODEsIDI0NCwgMiwgMTIzLCAyNDIsIDI3LCAKKyAgICA4MSwgMjQzLCAyMjksIDIxOCwgMTI5LCA4MSwgMjMwLCAxMjQsIDI0NywgMTcyLCA5OCwgNCwgMSwgMjU0LCAxMjMsIDk4LCAKKyAgICA0LCAxLCAyNTIsIDE1MiwgOTgsIDQsIDEsIDI0MywgMTA2LCA5OCwgNCwgMSwgMjQ3LCAxMjgsIDk4LCA0LCAxLCAyNDUsIAorICAgIDE1MCwgOTgsIDQsIDEsIDIxMywgMTYwLCA5OCwgNCwgMSwgMjEwLCA4OSwgOTgsIDQsIDEsIDIxNywgNjAsIDk4LCA0LCAxLCAKKyAgICAyMzUsIDI1NSwgOTgsIDQsIDEsIDIzNCwgMjM0LCA5OCwgNCwgMSwgMjMzLCA4MSwgOTgsIDQsIDEsIDIzMSwgMTg1LCA5OCwgCisgICAgNCwgMSwgMjI5LCAxOTUsIDk4LCA0LCAxLCAyMjYsIDE5NiwgOTgsIDQsIDEsIDIyNiwgMTcsIDk4LCA0LCAxLCAyMTAsIDc4LCAKKyAgICA5OCwgNCwgMSwgMjIzLCAxNzEsIDk4LCA0LCAxLCAyMjEsIDI0MywgOTgsIDQsIDEsIDIxNywgNTAsIDk4LCA0LCAxLCAyMTQsIAorICAgIDE5MCwgOTgsIDQsIDEsIDIyNSwgMTQwLCA5OCwgNCwgMSwgMjM0LCAxMjEsIDk4LCA0LCAxLCAyNDIsIDI0MSwgOTgsIDQsIAorICAgIDEsIDIyNCwgNzMsIDk4LCA0LCAxLCAyMjAsIDIwLCA5OCwgNCwgMSwgMjUwLCA5NywgOTgsIDQsIDEsIDI1MSwgNywgOTgsIAorICAgIDQsIDEsIDIzNSwgMTAwLCA5OCwgNCwgMSwgMjUwLCA0MCwgOTgsIDQsIDEsIDI1MCwgMTQzLCA5OCwgNCwgMSwgMjExLCAKKyAgICAxNjMsIDk4LCA0LCAxLCAyMzUsIDExMSwgOTgsIDQsIDEsIDI0MiwgNDMsIDk4LCA0LCAxLCAyNDEsIDIzOCwgOTgsIDQsIDEsIAorICAgIDI0MSwgMTc1LCA5OCwgNCwgMSwgMjEyLCAyMiwgOTgsIDQsIDEsIDI0MiwgNCwgOTgsIDQsIDEsIDI0MSwgNjUsIDk4LCA0LCAKKyAgICAxLCAyMTAsIDI0NiwgOTgsIDQsIDEsIDI1NCwgMjMyLCAyMTYsIDEwOCwgMSwgMTkxLCAyMTYsIDEwOCwgMSwgMjExLCA5OSwgCisgICAgMjE2LCAxMDgsIDEsIDIxMSwgOTgsIDIxNiwgMTA4LCAxLCAyMTEsIDg4LCAyMTYsIDEwOCwgMSwgMjExLCA4NiwgMjE2LCAKKyAgICAxMDgsIDEsIDI1MiwgMzIsIDI1NSwgMTYsIDIxMSwgODEsIDIxNiwgMTA4LCAxLCAyMTEsIDgxLCAyMTYsIDEwOCwgMSwgCisgICAgMjExLCA5NiwgMjE2LCAxMDgsIDEsIDIxMSwgOTMsIDIxNiwgMTA4LCAxLCAyMTEsIDk1LCAyMTYsIDEwOCwgMSwgMjExLCAKKyAgICA5NCwgMjE2LCAxMDgsIDEsIDIxMSwgMTIsIDIxNiwgMTA4LCAxLCAyMTEsIDkwLCAyMTYsIDEwOCwgMSwgMjExLCA3OSwgCisgICAgMjE2LCAxMDgsIDEsIDIxNSwgMTE1LCAyMTEsIDc5LCAyMTYsIDEwOCwgMSwgMjExLCA3NiwgMjE2LCAxMDgsIDEsIDIxMSwgCisgICAgODQsIDIxNiwgMTA4LCAxLCAyNTIsIDMyLCAyNTUsIDE2LCAyMTEsIDg0LCAyMTYsIDEwOCwgMSwgMjE1LCAxMTUsIDIxMSwgCisgICAgODQsIDIxNiwgMTA4LCAxLCAyMTEsIDgzLCAyMTYsIDEwOCwgMSwgMjExLCAxMDMsIDIxNiwgMTA4LCAxLCAyMTEsIDc3LCAKKyAgICAyMTYsIDEwOCwgMSwgMjE1LCAxMTUsIDIxMSwgNzcsIDIxNiwgMTA4LCAxLCAyMTEsIDY2LCAyMTYsIDEwOCwgMSwgMjE1LCAKKyAgICAxMTUsIDIxMSwgNjYsIDIxNiwgMTA4LCAxLCAyMTEsIDgsIDIxNiwgMTA4LCAxLCAyMTEsIDQ5LCAyMTYsIDEwOCwgMSwgCisgICAgMjU0LCAyMDcsIDIxMSwgNDksIDIxNiwgMTA4LCAxLCAyMTUsIDExNSwgMjExLCA0OSwgMjE2LCAxMDgsIDEsIDIxMSwgNzUsIAorICAgIDIxNiwgMTA4LCAxLCAyMTEsIDc0LCAyMTYsIDEwOCwgMSwgMjExLCA3MSwgMjE2LCAxMDgsIDEsIDIxNSwgMTE1LCAyMTEsIAorICAgIDg1LCAyMTYsIDEwOCwgMSwgMjE1LCAxMTUsIDIxMSwgNjksIDIxNiwgMTA4LCAxLCAyMTEsIDY3LCAyMTYsIDEwOCwgMSwgCisgICAgMjEwLCAyMTIsIDIxNiwgMTA4LCAxLCAyMTEsIDY0LCAyMTYsIDEwOCwgMSwgMjExLCA2MywgMjE2LCAxMDgsIDEsIDIxMSwgCisgICAgODcsIDIxNiwgMTA4LCAxLCAyMTUsIDExNSwgMjExLCA4NywgMjE2LCAxMDgsIDEsIDI1MywgMTYzLCAyMTEsIDg3LCAyMTYsIAorICAgIDEwOCwgMSwgMjExLCA2MiwgMjE2LCAxMDgsIDEsIDIxMSwgNjAsIDIxNiwgMTA4LCAxLCAyMTEsIDYxLCAyMTYsIDEwOCwgMSwgCisgICAgMjExLCA1OSwgMjE2LCAxMDgsIDEsIDIxMSwgNTgsIDIxNiwgMTA4LCAxLCAyMTEsIDk3LCAyMTYsIDEwOCwgMSwgMjExLCAKKyAgICA1NiwgMjE2LCAxMDgsIDEsIDIxMSwgNTQsIDIxNiwgMTA4LCAxLCAyMTEsIDUzLCAyMTYsIDEwOCwgMSwgMjExLCA1MiwgCisgICAgMjE2LCAxMDgsIDEsIDIxMSwgNTAsIDIxNiwgMTA4LCAxLCAyMTcsIDM0LCAyMTEsIDUwLCAyMTYsIDEwOCwgMSwgMjExLCAKKyAgICA0OCwgMjE2LCAxMDgsIDEsIDIxMSwgNDcsIDIxNiwgMTA4LCAxLCAyMTAsIDI0NCwgMjE2LCAxMDgsIDU4LCAxLCAyMzMsIAorICAgIDEyNiwgNzgsIDIxNiwgMTA4LCAyMjAsIDEzOCwgNzgsIDIxNiwgMTA4LCAxMTYsIDIzNSwgNjMsIDI5LCAzLCAyMzIsIDE1NSwgCisgICAgMjksIDMsIDIzMCwgMTYwLCAyOSwgMywgMjIyLCAyMDksIDI5LCAzLCAyMTksIDU3LCAyOSwgMywgMjIwLCA2LCAyOSwgMywgCisgICAgMjUxLCAyMDQsIDI5LCAzLCAyMTYsIDQxLCAyOSwgMywgMjQ5LCAyMzcsIDI5LCAzLCAyMjgsIDcyLCAyOSwgMywgMjI3LCAKKyAgICAxMzMsIDI5LCAzLCAyNDIsIDE4MCwgMjI3LCAwLCAyOSwgMywgMjEwLCAyMiwgMjksIDMsIDI0NywgMTQzLCAyOSwgMywgCisgICAgMjQ4LCAxMDQsIDI5LCAzLCAyMzUsIDY3LCAyOSwgMywgMjE2LCAxNTUsIDI5LCAzLCAyNTAsIDg1LCAyOSwgMywgMjI1LCAKKyAgICAxMjAsIDI5LCAzLCAyMjUsIDE1LCAyOSwgMywgMjQyLCAyNTUsIDI5LCAzLCAyNDIsIDI1MSwgMjksIDMsIDI0MiwgMjUyLCAKKyAgICAyOSwgMywgMjQyLCAyNTMsIDI5LCAzLCAyMTgsIDIyMywgMjksIDMsIDIxOCwgMTc5LCAyOSwgMywgMjE4LCAxOTIsIDI5LCAKKyAgICAzLCAyMTgsIDIyMiwgMjksIDMsIDIxOCwgMTk2LCAyOSwgMywgMjE4LCAxOTcsIDI5LCAzLCAyMTgsIDE4NCwgMjksIDMsIAorICAgIDI1MCwgMjEzLCAyOSwgMywgMjUwLCAxOTIsIDI5LCAzLCAyNTAsIDE5NCwgMjksIDMsIDI1MCwgMjEyLCAyOSwgMywgMjUwLCAKKyAgICAyMTAsIDI5LCAzLCAyNTAsIDIxMSwgMjksIDMsIDI1MCwgMTkzLCAyOSwgMywgMjA5LCAyNDMsIDI5LCAzLCAyMDksIDIyMSwgCisgICAgMjksIDMsIDIwOSwgMjM0LCAyOSwgMywgMjA5LCAyNDIsIDI5LCAzLCAyMDksIDIzNywgMjksIDMsIDIwOSwgMjM4LCAyOSwgCisgICAgMywgMjA5LCAyMjYsIDI5LCAzLCAyNTAsIDIwOCwgMjksIDMsIDI1MCwgMTk1LCAyOSwgMywgMjUwLCAxOTcsIDI5LCAzLCAKKyAgICAyNTAsIDIwNywgMjksIDMsIDI1MCwgMjA1LCAyOSwgMywgMjUwLCAyMDYsIDI5LCAzLCAyNTAsIDE5NiwgMjksIDMsIDIyMywgCisgICAgMjM2LCAyOSwgMywgMjIzLCAyMjYsIDI5LCAzLCAyMjMsIDIzMiwgMjksIDMsIDIyMywgMjM1LCAyOSwgMywgMjIzLCAyMzMsIAorICAgIDI5LCAzLCAyMjMsIDIzNCwgMjksIDMsIDIyMywgMjMxLCAyOSwgMywgMjMzLCAxNTksIDI5LCAzLCAyMzMsIDE1MSwgMjksIAorICAgIDMsIDIzMywgMTU0LCAyOSwgMywgMjMzLCAxNTgsIDI5LCAzLCAyMzMsIDE1NSwgMjksIDMsIDIzMywgMTU2LCAyOSwgMywgCisgICAgMjMzLCAxNTIsIDI5LCAzLCAyMTEsIDEzMCwgMjksIDMsIDIxMSwgMTIwLCAyOSwgMywgMjExLCAxMjYsIDI5LCAzLCAyMTEsIAorICAgIDEyOSwgMjksIDMsIDIxMSwgMTI3LCAyOSwgMywgMjExLCAxMjgsIDI5LCAzLCAyMTEsIDEyNSwgMjksIDMsIDI0MiwgNzEsIAorICAgIDI5LCAzLCAyNDIsIDYyLCAyOSwgMywgMjQyLCA2NSwgMjksIDMsIDI0MiwgNzAsIDI5LCAzLCAyNDIsIDY3LCAyOSwgMywgCisgICAgMjQyLCA2OCwgMjksIDMsIDI0MiwgNjQsIDM4LCAzMywgMSwgMjUyLCA3NSwgMzgsIDMzLCAxLCAyMTMsIDI1NSwgMzgsIDMzLCAKKyAgICAxLCAyNDIsIDIzNiwgMzgsIDMzLCAxLCAyNDgsIDkwLCAzOCwgMzMsIDEsIDIxMCwgNzQsIDM4LCAzMywgMSwgMjEwLCA5NCwgCisgICAgMzgsIDMzLCAxLCAxNzYsIDM4LCAzMywgMSwgMjQ1LCAxNzQsIDM4LCAzMywgMSwgMjQ1LCAxNTksIDM4LCAzMywgMSwgMjQ1LCAKKyAgICAxNTAsIDM4LCAzMywgMSwgNzYsIDM4LCAzMywgMSwgMjI1LCAyMjEsIDM4LCAzMywgMSwgMjQ1LCA5MiwgMzgsIDMzLCAxLCAKKyAgICAyNDUsIDgyLCAzOCwgMzMsIDEsIDIxNywgMjIsIDM4LCAzMywgMSwgMTYyLCAzOCwgMzMsIDEsIDIxNSwgMTc4LCAzOCwgMzMsIAorICAgIDEsIDI1MCwgMTMxLCAzOCwgMzMsIDEsIDIyMCwgMTAyLCAzOCwgMzMsIDEsIDIyMCwgNjUsIDM4LCAzMywgMSwgMjQ0LCA4MiwgCisgICAgMzgsIDMzLCAxLCAyNDUsIDgxLCAzOCwgMzMsIDEsIDYxLCAzOCwgMzMsIDEsIDIzNiwgNjAsIDM4LCAzMywgMSwgMjQ3LCAKKyAgICAxNjEsIDM4LCAzMywgMSwgMjMwLCAxNDAsIDIxNCwgMjA1LCAzOCwgMzMsIDEsIDIxMSwgNTksIDM4LCAzMywgMSwgMjEwLCAKKyAgICAyMTIsIDM4LCAzMywgMSwgMjM1LCAxODMsIDYxLCAzOCwgMzMsIDEsIDIzMiwgMTkyLCAyMTAsIDE4MywgMzgsIDMzLCAxLCAKKyAgICAyNTEsIDI0OSwgMjEwLCAxODMsIDM4LCAzMywgMSwgMjM1LCAxODMsIDI1MSwgMjQ5LCAyMTAsIDE4MywgNDQsIDI1NCwgCisgICAgMTEwLCAyMTgsIDYwLCAyMzEsIDE1NCwgNDQsIDI1NCwgMTEwLCAyNDYsIDExOCwgMjE4LCA2MCwgMjMxLCAxNTQsIDQzLCAKKyAgICAyMTgsIDYwLCAxMjcsIDQ0LCAyMTgsIDYwLCAxMjcsIDQzLCAyNDYsIDExOCwgMjE4LCA2MCwgMTI3LCA0NCwgMjQ2LCAxMTgsIAorICAgIDIxOCwgNjAsIDEyNywgMjIzLCAxNTcsIDIzNSwgMjAyLCAyMzEsIDE1NCwgMjIzLCAxNTcsIDI0NiwgMTE4LCAyMzUsIDIwMiwgCisgICAgMjMxLCAxNTQsIDI0NiwgMTE4LCAyMTUsIDI0MSwgMjMxLCAxNTQsIDQzLCAyMTUsIDI0MSwgMTI3LCA0NCwgMjE1LCAyNDEsIAorICAgIDEyNywgMjIzLCAxNTcsIDIxOCwgMjM0LCA0MywgMjIzLCAxNTcsIDIyNiwgMTk4LCAxMjcsIDQ0LCAyMjMsIDE1NywgMjI2LCAKKyAgICAxOTgsIDEyNywgMjQ1LCAyMTAsIDI0OSwgMTU4LCAyMjYsIDEzLCAyNDQsIDIyLCAyMjYsIDEzLCAyMjMsIDQ5LCAyNDQsIAorICAgIDIyLCAyMjYsIDEzLCAyNDAsIDE2NSwgMjQ2LCAxMTgsIDIyNiwgMjUxLCAyNDYsIDEwNCwgMjU0LCAxMTksIDIxNCwgMTUzLCAKKyAgICAyNTQsIDExOSwgMjQ2LCAxMTgsIDIyMiwgMjQ3LCAyNTQsIDEwOSwgNTIsIDIyNiwgMjQ4LCAyNDAsIDE2OCwgMjM1LCAxOTMsIAorICAgIDIzNSwgMjAxLCAyMjYsIDU5LCAyNTEsIDE1NCwgMjQwLCAxNjksIDIsIDI0OCwgMSwgMjE2LCA4OSwgMiwgMjIyLCAyMzQsIAorICAgIDQ4LCA0MywgMTIxLCAyMjYsIDUsIDEyNywgNDQsIDEyMSwgMjI2LCA1LCAxMjcsIDIxNiwgODksIDIsIDU5LCA0OCwgMjE2LCAKKyAgICA4OSwgMiwgNTksIDUxLCA0MywgNjcsIDI1MiwgMTQxLCAyLCAyMjQsIDcsIDQ0LCA2NywgMjUyLCAxNDEsIDIsIDIyNCwgNywgCisgICAgMjE2LCAxNCwgNDMsIDE2MywgMTI3LCAyMTYsIDE0LCA0NCwgMTYzLCAxMjcsIDI1MSwgMTc1LCA0MywgMTYzLCAxMjcsIAorICAgIDI1MSwgMTc1LCA0NCwgMTYzLCAxMjcsIDQzLCAyMTksIDE4NywgMTA0LCAxMjcsIDQ0LCAyMTksIDE4NywgMTA0LCAxMjcsIAorICAgIDQzLCA1MiwgMjI2LCAzLCA0NCwgNTIsIDIyNiwgMywgMTEzLCAxNzAsIDExNywgMTIzLCA1OSwgMjI0LCAxNDAsIDEyMywgCisgICAgNTksIDExNywgMTEzLCAxNzAsIDIyNCwgMTQwLCA5MiwgMjQ0LCAxMSwgNTksIDIyNCwgMTQwLCAyNDQsIDgxLCA1OSwgNzgsIAorICAgIDIyMywgNDksIDIyNCwgMTMsIDc4LCA2NywgMTgyLCAyMjIsIDIzNCwgMjI1LCAxMCwgMjExLCAyMDksIDIyMCwgMTM4LCAKKyAgICAyMzAsIDIyNCwgMjQ3LCAxMjAsIDIxNSwgOTQsIDI0OSwgMjE5LCAyMjMsIDE1NywgMjQ3LCAxMjAsIDIyMywgMTU3LCAyNDksIAorICAgIDIxOSwgMjE1LCA5NCwgMjIwLCAxNTAsIDI0OCwgMjA2LCAyLCA0MywgMjQyLCAxMDgsIDI0OCwgMjA2LCAyLCA0NCwgMjQyLCAKKyAgICAxMDgsIDIxNSwgOTQsIDI0OCwgMjA1LCAyMTYsIDE0LCAxNjMsIDIyMSwgMTczLCA1MCwgMjE1LCA1OSwgMjQ4LCAxNTYsIAorICAgIDIxNiwgMTQzLCAyNDgsIDE1NiwgOSwgMzQsIDIyMywgNzYsIDksIDM0LCAyNTAsIDEwLCA5LCAzNCwgMjIxLCAxNzYsIDExMCwgCisgICAgOSwgMzQsIDIyMSwgMTc2LCAxMDUsIDksIDM0LCAyMjEsIDE3NiwgMTU4LCA5LCAzNCwgMjI1LCAxNjcsIDksIDM0LCAyNTEsIAorICAgIDE2MywgOSwgMzQsIDIxNywgOTIsIDksIDM0LCAyMzQsIDMzLCAxMTAsIDksIDM0LCAyMzQsIDMzLCAxMDUsIDksIDM0LCAKKyAgICAyNDcsIDE3MCwgOSwgMzQsIDIyMSwgMTc5LCA5LCAzNCwgNCwgMTEwLCA5LCAzNCwgNCwgMTA1LCA5LCAzNCwgMjMzLCA5NywgCisgICAgMTEwLCA5LCAzNCwgMjMzLCA5NywgMTA1LCA5LCAzNCwgMjMzLCA5NywgMTU4LCA5LCAzNCwgMjMzLCA5NywgMTYxLCA5LCAKKyAgICAzNCwgMjE5LCA2OCwgOSwgMzQsIDIxNiwgMTQ1LCA5LCAzNCwgMjE5LCA2NiwgMTEwLCA5LCAzNCwgMjE5LCA2NiwgMTA1LCAKKyAgICA5LCAzNCwgMjQxLCAyMjgsIDExMCwgOSwgMzQsIDI0MSwgMjI4LCAxMDUsIDksIDM0LCAyNDIsIDE1LCA5LCAzNCwgMjIzLCAKKyAgICAxNDcsIDksIDM0LCAyNTAsIDgyLCA5LCAzNCwgMjE4LCAzNywgOSwgMzQsIDIzMCwgMTI4LCA5LCAzNCwgMjQ4LCA4OCwgOSwgCisgICAgMzQsIDIzMCwgMTIwLCA5LCAzNCwgMjUwLCAyNSwgOSwgMzQsIDIxMiwgNDEsIDExMCwgOSwgMzQsIDIxMiwgNDEsIDEwNSwgCisgICAgOSwgMzQsIDI0NCwgOTYsIDksIDM0LCAyMjUsIDIzMiwgMTEwLCA5LCAzNCwgMjI1LCAyMzIsIDEwNSwgOSwgMzQsIDIxOSwgCisgICAgMTYwLCAxNjMsIDIxNSwgMjM2LCAyMTUsIDE4OCwgOSwgMzQsIDI0OSwgMTQ1LCA5LCAzNCwgMjQ3LCAxMzYsIDksIDM0LCAKKyAgICAyMzUsIDEzNywgOSwgMzQsIDI1MSwgMTk4LCA2NCwgMjQ5LCAyNTAsIDksIDM0LCAyNDUsIDE1LCA5LCAzNCwgMjE4LCAyNDksIAorICAgIDExMCwgOSwgMzQsIDIxOCwgMjQ5LCAxMDUsIDksIDM0LCAyNTIsIDE1NCwgOSwgMzQsIDIxOSwgMTY3LCA5LCAzNCwgMjUxLCAKKyAgICA2MywgMjE5LCAxNjcsIDksIDM0LCAyMjksIDkwLCAxMTAsIDksIDM0LCAyMjksIDkwLCAxMDUsIDksIDM0LCAyMjksIDkwLCAKKyAgICAxNTgsIDksIDM0LCAyMjksIDkwLCAxNjEsIDksIDM0LCAyMzEsIDQ2LCA5LCAzNCwgMjIwLCA1NywgOSwgMzQsIDIyMywgCisgICAgMTUzLCA5LCAzNCwgMjQ1LCAzNywgOSwgMzQsIDIyNiwgMjA5LCA5LCAzNCwgMjUxLCAxMzMsIDExMCwgOSwgMzQsIDI1MSwgCisgICAgMTMzLCAxMDUsIDksIDM0LCAyMzEsIDg2LCA5LCAzNCwgMjMwLCAxMjMsIDksIDM0LCAyNDIsIDE0MCwgMTEwLCA5LCAzNCwgCisgICAgMjQyLCAxNDAsIDEwNSwgOSwgMzQsIDI0MiwgMTQwLCAxNTgsIDksIDM0LCAyMTYsIDEwNiwgOSwgMzQsIDI0OSwgMjQ5LCA5LCAKKyAgICAzNCwgMjEyLCA5LCAxMTAsIDksIDM0LCAyMTIsIDksIDEwNSwgOSwgMzQsIDI1MSwgNjMsIDIyMSwgMTcwLCA5LCAzNCwgCisgICAgMjE5LCAxNjAsIDI0MCwgMjQ4LCA5LCAzNCwgMjQwLCAyNDgsIDksIDM0LCAyNTEsIDYzLCAyMTksIDIsIDksIDM0LCAyNTEsIAorICAgIDYzLCAyMjAsIDUyLCA5LCAzNCwgMjQ0LCAzMiwgOSwgMzQsIDI1MSwgNjMsIDI1MCwgMjI4LCA5LCAzNCwgMjE5LCAxNjAsIAorICAgIDIxMiwgNTcsIDksIDM0LCAyMTIsIDU4LCAxMTAsIDksIDM0LCAyMTIsIDU4LCAxMDUsIDksIDM0LCAyNTAsIDI3LCA5LCAzNCwgCisgICAgMjUxLCA2MywgMjQyLCAxNjYsIDksIDM0LCAxOTksIDExMCwgOSwgMzQsIDE5OSwgMTA1LCA5LCAzNCwgMjUxLCA2MywgMjMyLCAKKyAgICAxMzcsIDksIDM0LCAyNTEsIDYzLCAyNDMsIDg4LCA5LCAzNCwgMjMwLCAxMTksIDExMCwgOSwgMzQsIDIzMCwgMTE5LCAxMDUsIAorICAgIDksIDM0LCAyMjMsIDE1OSwgOSwgMzQsIDI1MSwgMjA3LCA5LCAzNCwgMjUxLCA2MywgMjE3LCA1NiwgMjMzLCA1MiwgOSwgCisgICAgMzQsIDI1MSwgNjMsIDIzMywgNTMsIDksIDM0LCAyNTEsIDYzLCAyMTEsIDIzOSwgOSwgMzQsIDI1MSwgNjMsIDI0NCwgNDYsIAorICAgIDksIDM0LCAyNDUsIDIxOCwgMTEwLCA5LCAzNCwgMjQ1LCAyMTgsIDEwNSwgOSwgMzQsIDI0NSwgMjE4LCAxNTgsIDksIDM0LCAKKyAgICAyNTEsIDYzLCAyNDUsIDIxNywgOSwgMzQsIDI0MSwgMjM1LCA5LCAzNCwgMjUxLCA2MywgMjQwLCAyNDUsIDksIDM0LCAyNTEsIAorICAgIDE5NCwgOSwgMzQsIDI0MiwgMjIyLCA5LCAzNCwgMjUxLCA2MywgMjQ0LCA5MCwgOSwgMzQsIDI1MSwgNjMsIDI1MSwgMjM3LCAKKyAgICA5LCAzNCwgMjUxLCA2MywgMjIyLCAxLCA5LCAzNCwgMjE5LCAxNjAsIDIxMiwgMiwgOSwgMzQsIDIxOSwgMTYwLCAyMTEsIAorICAgIDQxLCA5LCAzNCwgMjUxLCA2MywgMjQzLCAyNDQsIDksIDM0LCAyMzUsIDE0MywgMjQ1LCA0MSwgOSwgMzQsIDI1MSwgNjMsIAorICAgIDI0NSwgNDEsIDksIDM0LCAyMzUsIDE0MywgMjE2LCAxNSwgOSwgMzQsIDI1MSwgNjMsIDIxNiwgMTUsIDksIDM0LCAyMzUsIAorICAgIDE0MywgMjQ2LCA5NiwgOSwgMzQsIDI1MSwgNjMsIDI0NiwgOTYsIDksIDM0LCAyMTUsIDkxLCA5LCAzNCwgMjM1LCAxNDMsIAorICAgIDIxNSwgOTEsIDksIDM0LCAyNTEsIDYzLCAyMTUsIDkxLCA2MCwgMzQsIDExMCwgNjAsIDM0LCAyMzIsIDIxMywgNjAsIDM0LCAKKyAgICAyNDcsIDEyMCwgNjAsIDM0LCAyMTksIDk1LCA2MCwgMzQsIDIyMSwgMTc1LCA2MCwgMzQsIDEwMywgNjAsIDM0LCAxMDUsIAorICAgIDYwLCAzNCwgMjMyLCAyMzcsIDYwLCAzNCwgMjMxLCAxODUsIDYwLCAzNCwgMjMzLCAzMywgNjAsIDM0LCAyNDUsIDEyOSwgCisgICAgNjAsIDM0LCAxOTUsIDYwLCAzNCwgMTI0LCAyNTEsIDE2MywgNjAsIDM0LCAyNDksIDE0NywgNjAsIDM0LCAyNDAsIDExMSwgCisgICAgNjAsIDM0LCAyMTcsIDkyLCA2MCwgMzQsIDIwNCwgMjUxLCAxNjMsIDYwLCAzNCwgMjM0LCAzMiwgNjAsIDM0LCAyMjQsIAorICAgIDIyNCwgNjAsIDM0LCAyMTEsIDIwMiwgNjAsIDM0LCAyMTgsIDI0MywgNjAsIDM0LCA0NCwgMjA0LCAyNTEsIDE2MywgNjAsIAorICAgIDM0LCAyNDEsIDE3NiwgMjQ1LCAxNDUsIDYwLCAzNCwgMjE2LCAyNDcsIDYwLCAzNCwgMjQ3LCAxNzAsIDYwLCAzNCwgMjIxLCAKKyAgICAxNzksIDYwLCAzNCwgMjUwLCAxMCwgNjAsIDM0LCAyMjQsIDE4MiwgNjAsIDM0LCAyNTQsIDIxNSwgNjAsIDM0LCAyMzAsIAorICAgIDExMCwgNjAsIDM0LCAyNDUsIDE0NSwgNjAsIDM0LCAyNDUsIDIyMywgNjAsIDM0LCAyMjEsIDIwMCwgNjAsIDM0LCAyNDIsIAorICAgIDE3NCwgNjAsIDM0LCAyNDIsIDE3NSwgMjE5LCA4MSwgNjAsIDM0LCAyNDUsIDQwLCA2MCwgMzQsIDI1MSwgMjQ4LCA2MCwgCisgICAgMzQsIDIxMSwgMjIxLCA2MCwgMzQsIDI1MCwgMTAxLCA2MCwgMzQsIDIyMiwgMTk2LCA2MCwgMzQsIDIzNSwgMjUxLCA2MCwgCisgICAgMzQsIDIxOSwgNzksIDYwLCAzNCwgMjMzLCA5NiwgNjAsIDM0LCAyNDksIDE1NiwgNjAsIDM0LCAyMTgsIDIzNywgNjAsIDM0LCAKKyAgICAyMzAsIDExNSwgNjAsIDM0LCAyMjIsIDIyNCwgNjAsIDM0LCAyMTEsIDIwNiwgNjAsIDM0LCAyMjYsIDE5MCwgNjAsIDM0LCAKKyAgICAyMTUsIDk3LCA2MCwgMzQsIDI0NiwgODAsIDYwLCAzNCwgMjE5LCAyNTEsIDIxNiwgMTQ1LCA2MCwgMzQsIDI0NiwgMTE4LCAKKyAgICAyNTAsIDEwLCA2MCwgMzQsIDE5OSwgMjE4LCAxMDgsIDYwLCAzNCwgMTEzLCAyNDIsIDEwLCA2MCwgMzQsIDIyMCwgMCwgNjAsIAorICAgIDM0LCAyNTEsIDE2OSwgNjAsIDM0LCAyMTksIDY1LCA2MCwgMzQsIDI1MSwgMTM3LCA2MCwgMzQsIDIxOCwgMTM4LCA2MCwgCisgICAgMzQsIDI0MSwgMjI3LCA2MCwgMzQsIDI0MiwgMjgsIDYwLCAzNCwgMjQ3LCAxMjMsIDYwLCAzNCwgMjQyLCAxNSwgNjAsIDM0LCAKKyAgICAyNTEsIDE1NCwgNjAsIDM0LCAyMjMsIDE0NywgNjAsIDM0LCAyMjEsIDE4NywgNjAsIDM0LCAyNDcsIDE5OSwgNjAsIDM0LCAKKyAgICAyNTMsIDE2OCwgNjAsIDM0LCAyMTgsIDIzNCwgNjAsIDM0LCAyMjgsIDUxLCA2MCwgMzQsIDIxOCwgMzcsIDYwLCAzNCwgCisgICAgMjIxLCAyMTEsIDYwLCAzNCwgMjMwLCAxMjgsIDYwLCAzNCwgMjE1LCAyMzUsIDYwLCAzNCwgMjMzLCAxMjIsIDYwLCAzNCwgCisgICAgMjE4LCAxMjksIDYwLCAzNCwgMjQ4LCA4OCwgNjAsIDM0LCAyMTIsIDIxLCA2MCwgMzQsIDI0NywgMTQ2LCAyMjgsIDUxLCAKKyAgICA2MCwgMzQsIDI0OSwgMjE1LCA2MCwgMzQsIDI0MywgMjIyLCA2MCwgMzQsIDI1MCwgMjEsIDYwLCAzNCwgMjE4LCAxNDIsIAorICAgIDYwLCAzNCwgMjEyLCA0MCwgNjAsIDM0LCAyNDQsIDk2LCA2MCwgMzQsIDI1MCwgMTgsIDYwLCAzNCwgMjQ0LCAxNjEsIDYwLCAKKyAgICAzNCwgNTIsIDIxMSwgMTc4LCA2MCwgMzQsIDE2MywgMjE1LCAyMzYsIDIxNSwgMTg4LCA2MCwgMzQsIDIxOSwgODksIDYwLCAKKyAgICAzNCwgMjQ0LCAxNzEsIDYwLCAzNCwgMjQ5LCAxNDUsIDYwLCAzNCwgMjQ3LCAxMzYsIDYwLCAzNCwgMjI0LCAxNzksIDYwLCAKKyAgICAzNCwgMjM1LCAxMzcsIDYwLCAzNCwgMjMxLCA2NywgNjAsIDM0LCAyMTYsIDg4LCA2MCwgMzQsIDIxNywgMjQ1LCA2MCwgMzQsIAorICAgIDIzMiwgMjMxLCA2MCwgMzQsIDIxNCwgMTMxLCA2MCwgMzQsIDI0NCwgMTIwLCA2MCwgMzQsIDI1MSwgMTk4LCA2NCwgMjQ5LCAKKyAgICAyNTAsIDYwLCAzNCwgMjE5LCAxODgsIDYwLCAzNCwgMjQ2LCAxMTgsIDIxNiwgMjQyLCA2MCwgMzQsIDIxMSwgMjUzLCA2MCwgCisgICAgMzQsIDIxOSwgMTAzLCA2MCwgMzQsIDI0NywgMTg3LCA2MCwgMzQsIDI0NSwgMTUsIDYwLCAzNCwgMjE5LCA1LCA2MCwgMzQsIAorICAgIDc0LCA2MCwgMzQsIDIxOCwgMTMxLCA2MCwgMzQsIDIxOCwgMjQ4LCA2MCwgMzQsIDIxNSwgMjU1LCA2MCwgMzQsIDI0MiwgCisgICAgMTQ3LCA2MCwgMzQsIDI1MCwgMjE4LCA2MCwgMzQsIDIxOCwgMTYwLCA2MCwgMzQsIDI1MiwgMTU0LCA2MCwgMzQsIDIyMywgCisgICAgMzEsIDYwLCAzNCwgMjE5LCAxNjcsIDYwLCAzNCwgMjM1LCAxMzAsIDYwLCAzNCwgMjI5LCA4OSwgNjAsIDM0LCAyMjAsIDU3LCAKKyAgICA2MCwgMzQsIDI0NCwgMTQ5LCA2MCwgMzQsIDIyNiwgMjA5LCA2MCwgMzQsIDI1NCwgMTE4LCA2MCwgMzQsIDIyNSwgMjksIAorICAgIDYwLCAzNCwgMjQ1LCAyMjcsIDYwLCAzNCwgMjUxLCAxMzIsIDYwLCAzNCwgMjMxLCA4NiwgNjAsIDM0LCAyMzAsIDE4MywgCisgICAgNjAsIDM0LCAyMjAsIDE1NiwgNjAsIDM0LCAyNTMsIDI1MiwgNjAsIDM0LCAyMzAsIDEyMywgNjAsIDM0LCAyMTYsIDE5LCAKKyAgICA2MCwgMzQsIDIyNiwgMTY1LCA2MCwgMzQsIDI1MSwgMjAxLCA2MCwgMzQsIDIxOCwgMTI3LCA2MCwgMzQsIDI0OSwgMjI1LCAKKyAgICA2MCwgMzQsIDI0MiwgMTM5LCA2MCwgMzQsIDIxNiwgMTA2LCA2MCwgMzQsIDIzNSwgMjE3LCA2MCwgMzQsIDI1MSwgMjExLCAKKyAgICA2MCwgMzQsIDIxMiwgNTgsIDI0NSwgMTQ1LCA2MCwgMzQsIDI0OSwgMjQ5LCA2MCwgMzQsIDIxMiwgOCwgNjAsIDM0LCAyMjEsIAorICAgIDE3MCwgNjAsIDM0LCAyNDAsIDI0OCwgNjAsIDM0LCAyMTksIDIsIDYwLCAzNCwgMjE0LCAyMiwgNjAsIDM0LCAyNTIsIDcyLCAKKyAgICA2MCwgMzQsIDIyNSwgNzMsIDYwLCAzNCwgMjUyLCAxNzQsIDYwLCAzNCwgMjIwLCA1MiwgNjAsIDM0LCAyMjMsIDExMCwgNjAsIAorICAgIDM0LCAyMjIsIDEyNiwgNjAsIDM0LCAyNDQsIDMyLCA2MCwgMzQsIDI1MSwgMjAwLCA2MCwgMzQsIDI1MCwgMjI4LCA2MCwgCisgICAgMzQsIDI1MSwgMjI2LCA2MCwgMzQsIDIzMCwgMTI1LCA2MCwgMzQsIDIxMiwgNTcsIDYwLCAzNCwgMjUwLCAyNywgNjAsIDM0LCAKKyAgICAyMTEsIDIzNiwgNjAsIDM0LCAyNDcsIDE4MCwgNjAsIDM0LCAyMTMsIDE2MSwgNjAsIDM0LCAyNDIsIDE2NiwgNjAsIDM0LCAKKyAgICAyMzIsIDEzNywgNjAsIDM0LCAyNDMsIDg4LCA2MCwgMzQsIDIzMCwgMTE4LCA2MCwgMzQsIDIxOSwgOTQsIDYwLCAzNCwgCisgICAgMjE5LCAyNTEsIDIxNywgNzYsIDI1MSwgMjM3LCA2MCwgMzQsIDIyMywgMTU5LCA2MCwgMzQsIDI1MSwgMjA3LCA2MCwgMzQsIAorICAgIDIxMSwgMTk3LCA2MCwgMzQsIDI0NCwgMTkwLCA2MCwgMzQsIDIzMywgNTIsIDYwLCAzNCwgMjE3LCA1NiwgMjMzLCA1MiwgCisgICAgNjAsIDM0LCAyMzMsIDQ4LCA2MCwgMzQsIDIxOSwgMzAsIDYwLCAzNCwgMjMzLCA1MywgNjAsIDM0LCAyMTEsIDIzOSwgNjAsIAorICAgIDM0LCAyNDQsIDQ2LCA2MCwgMzQsIDI0NSwgMjE3LCA2MCwgMzQsIDI0MSwgMjM1LCA2MCwgMzQsIDI0NCwgMCwgNjAsIDM0LCAKKyAgICAyNDAsIDI0NSwgNjAsIDM0LCAyNTEsIDE5NCwgNjAsIDM0LCAyMTcsIDYzLCA2MCwgMzQsIDI0MiwgMzQsIDYwLCAzNCwgCisgICAgMjQ0LCAxMTMsIDYwLCAzNCwgMjIyLCAyOCwgMjExLCAyMzYsIDYwLCAzNCwgMjUwLCAyMjAsIDYwLCAzNCwgMjQyLCAyMjIsIAorICAgIDYwLCAzNCwgMjQ0LCA5MCwgNjAsIDM0LCAyNTEsIDIzNywgNjAsIDM0LCAyMjIsIDEsIDYwLCAzNCwgMjQ4LCA3NCwgNjAsIAorICAgIDM0LCAyMTIsIDIsIDYwLCAzNCwgMjQxLCAyMTAsIDYwLCAzNCwgMjExLCA0MSwgNjAsIDM0LCAyMzAsIDE5MiwgNjAsIDM0LCAKKyAgICAyNTEsIDIyMSwgNjAsIDM0LCAyNDUsIDE1NSwgNjAsIDM0LCAyNDMsIDI0NCwgNjAsIDM0LCAyMTUsIDIwOSwgNjAsIDM0LCAKKyAgICAyNDYsIDgyLCA2MCwgMzQsIDIyMywgMTQxLCA2MCwgMzQsIDIyOCwgNTMsIDYwLCAzNCwgMjQ1LCA0MSwgNjAsIDM0LCAyMTYsIAorICAgIDE1LCA2MCwgMzQsIDI0NiwgOTYsIDYwLCAzNCwgMjE1LCA5MSwgNjAsIDM0LCAyNDQsIDQ4LCAxMDksIDI0OCwgMzcsIDEzNSwgCisgICAgNDMsIDIxNiwgNDIsIDIyMiwgMjUxLCAxMDksIDI0OCwgMzcsIDEzNSwgNzcsIDIxNiwgNDIsIDUxLCAxMDksIDI0OCwgMzcsIAorICAgIDEzNSwgNDMsIDIxNiwgNDIsIDIzMCwgMjI0LCAyMiwgMjIyLCAyNTEsIDEwOSwgMjQ4LCAzNywgMTM1LCA3NywgMjE2LCA0MiwgCisgICAgMjMwLCAyMjQsIDIyLCA1MSwgMTA5LCAyNDgsIDM3LCAxMzUsIDI0MywgMjI5LCAyMTgsIDEwLCAxMDksIDI0OCwgMzcsIAorICAgIDEzNSwgMjE4LCAxMSwgMjQzLCAyNDMsIDQ4LCAxMDksIDI0OCwgMzcsIDEzNSwgMjE4LCAxMSwgMjQzLCAyNDMsIDUxLCAKKyAgICAxMDksIDI0OCwgMzcsIDEzNSwgMjE4LCAxMSwgMjQzLCAyNDMsIDIzMywgNDYsIDEwOSwgMjQ4LCAzNywgMTM1LCAyMTgsIAorICAgIDExLCAyNDMsIDI0MywgMjE0LCAxNjAsIDIzMywgNDYsIDEwOSwgMjQ4LCAzNywgMTM1LCAyMTgsIDExLCAyNDMsIDI0MywgCisgICAgMjE0LCAxNjAsIDIyMiwgMjUxLCAxMDksIDI0OCwgMzcsIDEzNSwgMjE4LCAxMSwgMjQzLCAyNDMsIDIzMiwgMTA4LCAyMzMsIAorICAgIDQ2LCAxMDksIDI0OCwgMzcsIDEzNSwgMjI2LCAxMjIsIDEwOSwgMjE5LCAxOCwgMTA5LCAyNDksIDIxOSwgMTA5LCAyNDMsIAorICAgIDIyOSwgMjE4LCAxMjksIDI0NywgMTc3LCA3OCwgMjM1LCAxMzEsIDIzNSwgMjM2LCAyMTgsIDE1OSwgODcsIDEwOSwgMjM1LCAKKyAgICAxNTgsIDc4LCAxMDksIDI0OSwgMjUyLCA3OCwgMTA5LCA1NCwgMjEwLCA4NiwgNDMsIDI1NCwgMTEwLCAxMjcsIDQ0LCAyNTQsIAorICAgIDExMCwgMTI3LCA0MywgNTIsIDI1NCwgMTEwLCAxMjcsIDQ0LCA1MiwgMjU0LCAxMTAsIDEyNywgNDMsIDI0OSwgMTYxLCAKKyAgICAxMjcsIDQ0LCAyNDksIDE2MSwgMTI3LCA0MywgNzEsIDI0OSwgMTYxLCAxMjcsIDQ0LCA3MSwgMjQ5LCAxNjEsIDEyNywgNDMsIAorICAgIDg1LCAyMzMsIDIwLCAxMjcsIDQ0LCA4NSwgMjMzLCAyMCwgMTI3LCAyMjQsIDIzNywgNzgsIDI0MywgMzIsIDc4LCA0MywgCisgICAgMjE2LCA2LCAyMjAsIDUzLCAxMjcsIDQ0LCAyMTYsIDYsIDIyMCwgNTMsIDEyNywgNDMsIDcxLCAyMzMsIDIwLCAxMjcsIDQ0LCAKKyAgICA3MSwgMjMzLCAyMCwgMTI3LCA0MywgNzEsIDIxNiwgNiwgMjIwLCA1MywgMTI3LCA0NCwgNzEsIDIxNiwgNiwgMjIwLCA1MywgCisgICAgMTI3LCA0MywgNzEsIDQyLCAxMjcsIDQ0LCA3MSwgNDIsIDEyNywgMjEyLCAzNiwgMjQ4LCAxNTYsIDIyMywgNDksIDUyLCAKKyAgICAyMjQsIDE5MSwgMjIzLCAyNTQsIDc4LCA1MiwgMjI0LCAxOTEsIDIyMywgMjU0LCA3OCwgMTIxLCA1MiwgMjI0LCAxOTEsIAorICAgIDIyMywgMjU0LCA3OCwgMjI0LCAyMzcsIDE2NCwgMjQ0LCAxOTAsIDI0MiwgOCwgMjI3LCAxOTgsIDExMCwgMjQyLCA4LCAKKyAgICAyMjcsIDE5OCwgMTA1LCAyNDIsIDgsIDIyNywgMTk4LCAxNTgsIDI0MiwgOCwgMjI3LCAxOTgsIDE2MSwgMjQyLCA4LCAyMjcsIAorICAgIDE5OCwgMTg5LCAyNDIsIDgsIDIyNywgMTk4LCAxOTQsIDI0MiwgOCwgMjI3LCAxOTgsIDE5OCwgMjQyLCA4LCAyMjcsIDE5OCwgCisgICAgMTk1LCAyNDIsIDgsIDIyNywgMTk4LCAyMDAsIDEwOSwgMjMzLCAzLCAxMzgsIDc4LCAxMDksIDIyMiwgMjI4LCAxMzgsIDc4LCAKKyAgICAxMDksIDI0OCwgNDQsIDEzOCwgNzgsIDEwOSwgMjQ1LCAxMjgsIDEzOCwgNzgsIDI0LCAyMTksIDE1NSwgNTksIDEzOCwgNzgsIAorICAgIDI0LCA1MiwgNTksIDEzOCwgNzgsIDIxMiwgMzIsIDI0OCwgMTU2LCA2NywgMjM0LCAyMzMsIDIyMywgNzcsIDc4LCA2NywgCisgICAgMjM0LCAyMzMsIDIyMywgNzcsIDIsIDIxMywgMTM1LCAyMTksIDMxLCA3OCwgNjcsIDIzNCwgMjMzLCAyMjMsIDc3LCAxNjQsIAorICAgIDIxNCwgMTYwLCAyNDIsIDI3LCA2NywgMjM0LCAyMzMsIDIyMywgNzcsIDIsIDIxMywgMTM1LCAyMTksIDMxLCAxNjQsIDIxNCwgCisgICAgMTYwLCAyNDIsIDI3LCA2NywgMjM0LCAyMzMsIDIyMywgNzcsIDE2NCwgMjMyLCAxMDgsIDI0MiwgMjcsIDM3LCAyMjQsIAorICAgIDIzNywgNzgsIDEwOSwgMjE3LCAzLCAyMzIsIDIxNCwgMjQ0LCAxNDYsIDIyMCwgMTM4LCA4NywgMjQyLCA4LCAyMjcsIDE5OCwgCisgICAgMjE2LCAyNDcsIDI0MiwgOCwgMjI3LCAxOTgsIDIxNSwgNzMsIDI0MiwgOCwgMjI3LCAxOTgsIDIxNiwgMTYyLCA2NywgMTA5LCAKKyAgICAyMzUsIDE1OCwgNzgsIDIzMSwgMTQwLCA3OCwgMjI1LCAyNTUsIDI1NCwgMTQwLCA3OCwgMTA5LCA0NSwgMjM1LCAyMzgsIAorICAgIDEwOSwgMTYzLCAyNDQsIDEwNiwgMjE5LCAxOCwgMTQxLCAxLCA0LCA2MSwgMTQxLCAxLCA2MSwgMTQxLCAxLCA0LCA3MywgCisgICAgMTQxLCAxLCA3MywgMTQxLCAxLCA0LCA3MCwgMTQxLCAxLCA3MCwgMTQxLCAxLCA0LCA3NSwgMTQxLCAxLCA3NSwgMTQxLCAxLCAKKyAgICA0LCA3NiwgMTQxLCAxLCA3NiwgMTQxLCAxLCAxNzYsIDE0MSwgMSwgMjQzLCAxMzUsIDE0MSwgMSwgMjM0LCA5MiwgMTQxLCAKKyAgICAxLCAyNDIsIDIxNCwgMTQxLCAxLCAyMzMsIDIxNywgMTQxLCAxLCAyNDIsIDExMywgMTQxLCAxLCAyMzQsIDE4MiwgMTQxLCAKKyAgICAxLCAyNDMsIDYyLCAxNDEsIDEsIDIzNCwgMjgsIDE0MSwgMSwgMjQyLCAxNzQsIDE0MSwgMSwgMjA2LCAxNDEsIDEsIDIxMCwgCisgICAgMTE2LCAxNDEsIDEsIDIxOSwgMTkxLCAxNDEsIDEsIDIxMCwgNDQsIDE0MSwgMSwgMjE4LCA4MywgMTQxLCAxLCAyMTAsIDEzLCAKKyAgICAxNDEsIDEsIDIyMSwgMTgxLCAxNDEsIDEsIDIxMCwgOTQsIDE0MSwgMSwgMjE5LCA1OCwgMTQxLCAxLCAyMTAsIDIzLCAxNDEsIAorICAgIDEsIDIxNywgMTA1LCAxNDEsIDEsIDI0OCwgMjIxLCAxNDEsIDEsIDIxNiwgMTE3LCAxNDEsIDEsIDI0OCwgMywgMTQxLCAxLCAKKyAgICA0LCAyMTUsIDExOCwgMTQxLCAxLCAyMTUsIDExOCwgMTQxLCAxLCAyNDYsIDc4LCAxNDEsIDEsIDIxNywgMjIsIDE0MSwgMSwgCisgICAgMjQ4LCA5MCwgMTQxLCAxLCAxMTEsIDE0MSwgMSwgMjQ3LCAxNDUsIDE0MSwgMSwgMTk3LCAxNDEsIDEsIDIyOCwgMjMzLCAKKyAgICAxNDEsIDEsIDIyNywgMjM3LCAxNDEsIDEsIDIyOSwgMTA3LCAxNDEsIDEsIDIyOCwgNzQsIDE0MSwgMSwgMTYyLCAxNDEsIDEsIAorICAgIDI1MiwgMTkxLCAxNDEsIDEsIDE5MCwgMTQxLCAxLCAyNDEsIDE4MCwgMTQxLCAxLCAyNTIsIDYsIDE0MSwgMSwgMjI1LCAKKyAgICAxMDgsIDE0MSwgMSwgMjQwLCAyMjIsIDE0MSwgMSwgMjUxLCAxMjUsIDE0MSwgMSwgMjI0LCAxNTAsIDE0MSwgMSwgMjQxLCAKKyAgICAyMzgsIDE0MSwgMSwgMjUyLCA3NSwgMTQxLCAxLCAyMjUsIDIyMSwgMTQxLCAxLCAyNDEsIDY4LCAxNDEsIDEsIDI1MSwgCisgICAgMjA1LCAxNDEsIDEsIDIyNSwgMTYsIDE0MSwgMSwgMTg0LCAxNDEsIDEsIDIzMCwgMjMwLCAxNDEsIDEsIDIzMCwgMTAyLCAKKyAgICAxNDEsIDEsIDIzMSwgOTEsIDE0MSwgMSwgMjMwLCAxNjEsIDE0MSwgMSwgNCwgMTkxLCAxNDEsIDEsIDE5MSwgMTQxLCAxLCAKKyAgICA0LCAyMTAsIDIxMiwgMTQxLCAxLCAyMTAsIDIxMiwgMTQxLCAxLCA0LCAyMTAsIDI0NCwgMTQxLCAxLCAyMTAsIDI0NCwgCisgICAgMTQxLCAxLCAyMDUsIDE0MSwgMSwgMjIzLCAzNSwgMTQxLCAxLCAyMjIsIDE0MCwgMTQxLCAxLCAyMjMsIDEyOCwgMTQxLCAxLCAKKyAgICAyMjIsIDIxMSwgMTQxLCAxLCA0LCAyMTIsIDY1LCAxNDEsIDEsIDIxMiwgNjUsIDE0MSwgMSwgMjExLCAyNTAsIDE0MSwgMSwgCisgICAgMjEyLCAyMiwgMTQxLCAxLCAyMTEsIDIyNywgMTQxLCAxLCAyMzAsIDI1LCAxNDEsIDEsIDIxMiwgMTE2LCAxNDEsIDEsIDQsIAorICAgIDE3NiwgMTQxLCAxLCA0LCAyMzQsIDE4MiwgMzgsIDIzNCwgMjAxLCAyMTMsIDEzNSwgMjE5LCAzMSwgNzgsIDM4LCAyMzQsIAorICAgIDIwMSwgMjIwLCAxNTUsIDIxOSwgMzEsIDc4LCAyMzQsIDIwMSwgMjEzLCAxMzUsIDIxOSwgMzEsIDc4LCAyMzQsIDIwMSwgCisgICAgMjIwLCAxNTUsIDIxOSwgMzEsIDc4LCAxNDEsIDIzNSwgMTU4LCA3OCwgMTQxLCAyMTMsIDEzNSwgMjM1LCAxNTgsIDc4LCAKKyAgICAxNDEsIDI0NywgMjIxLCAyMTAsIDIyNSwgMjM0LCAyMDEsIDUyLCAyNDAsIDE2OCwgNTYsIDEsIDQsIDYxLCA1NiwgMSwgNjEsIAorICAgIDU2LCAxLCA0LCA3MywgNTYsIDEsIDczLCA1NiwgMSwgNCwgNzAsIDU2LCAxLCA3MCwgNTYsIDEsIDQsIDc1LCA1NiwgMSwgCisgICAgNzUsIDU2LCAxLCA0LCA3NiwgNTYsIDEsIDc2LCA1NiwgMSwgMTc2LCA1NiwgMSwgMjQzLCAxMzUsIDU2LCAxLCAyMzQsIDkyLCAKKyAgICA1NiwgMSwgMjQyLCAyMTQsIDU2LCAxLCAyMzMsIDIxNywgNTYsIDEsIDI0MiwgMTEzLCA1NiwgMSwgMjM0LCAxODIsIDU2LCAKKyAgICAxLCAyNDMsIDYyLCA1NiwgMSwgMjM0LCAyOCwgNTYsIDEsIDI0MiwgMTc0LCA1NiwgMSwgMjA2LCA1NiwgMSwgMjEwLCAxMTYsIAorICAgIDU2LCAxLCAyMTksIDE5MSwgNTYsIDEsIDIxMCwgNDQsIDU2LCAxLCAyMTgsIDgzLCA1NiwgMSwgMjEwLCAxMywgNTYsIDEsIAorICAgIDIyMSwgMTgxLCA1NiwgMSwgMjEwLCA5NCwgNTYsIDEsIDIxOSwgNTgsIDU2LCAxLCAyMTAsIDIzLCA1NiwgMSwgMjE3LCAKKyAgICAxMDUsIDU2LCAxLCAyNDgsIDIyMSwgNTYsIDEsIDIxNiwgMTE3LCA1NiwgMSwgMjQ4LCAzLCA1NiwgMSwgNCwgMjE1LCAxMTgsIAorICAgIDU2LCAxLCAyMTUsIDExOCwgNTYsIDEsIDI0NiwgNzgsIDU2LCAxLCAyMTcsIDIyLCA1NiwgMSwgMjQ4LCA5MCwgNTYsIDEsIAorICAgIDExMSwgNTYsIDEsIDI0NywgMTQ1LCA1NiwgMSwgMTk3LCA1NiwgMSwgMjI4LCAyMzMsIDU2LCAxLCAyMjcsIDIzNywgNTYsIAorICAgIDEsIDIyOSwgMTA3LCA1NiwgMSwgMjI4LCA3NCwgNTYsIDEsIDE2MiwgNTYsIDEsIDI1MiwgMTkxLCA1NiwgMSwgMTkwLCA1NiwgCisgICAgMSwgMjQxLCAxODAsIDU2LCAxLCAyNTIsIDYsIDU2LCAxLCAyMjUsIDEwOCwgNTYsIDEsIDI0MCwgMjIyLCA1NiwgMSwgMjUxLCAKKyAgICAxMjUsIDU2LCAxLCAyMjQsIDE1MCwgNTYsIDEsIDI0MSwgMjM4LCA1NiwgMSwgMjUyLCA3NSwgNTYsIDEsIDIyNSwgMjIxLCAKKyAgICA1NiwgMSwgMjQxLCA2OCwgNTYsIDEsIDI1MSwgMjA1LCA1NiwgMSwgMjI1LCAxNiwgNTYsIDEsIDE4NCwgNTYsIDEsIDIzMCwgCisgICAgMjMwLCA1NiwgMSwgMjMwLCAxMDIsIDU2LCAxLCAyMzEsIDkxLCA1NiwgMSwgMjMwLCAxNjEsIDU2LCAxLCA0LCAxOTEsIDU2LCAKKyAgICAxLCAxOTEsIDU2LCAxLCA0LCAyMTAsIDIxMiwgNTYsIDEsIDIxMCwgMjEyLCA1NiwgMSwgNCwgMjEwLCAyNDQsIDU2LCAxLCAKKyAgICAyMTAsIDI0NCwgNTYsIDEsIDIwNSwgNTYsIDEsIDIyMywgMzUsIDU2LCAxLCAyMjIsIDE0MCwgNTYsIDEsIDIyMywgMTI4LCAKKyAgICA1NiwgMSwgMjIyLCAyMTEsIDU2LCAxLCA0LCAyMTIsIDY1LCA1NiwgMSwgMjEyLCA2NSwgNTYsIDEsIDIxMSwgMjUwLCA1NiwgCisgICAgMSwgMjEyLCAyMiwgNTYsIDEsIDIxMSwgMjI3LCA1NiwgMSwgMjMwLCAyNSwgNTYsIDEsIDIxMiwgMTE2LCA1NiwgMSwgNCwgCisgICAgMTc2LCA1NiwgMSwgNCwgMjM0LCAxODIsIDU2LCAxLCAyMTQsIDI3LCA1NiwgMSwgMjEzLCAxNzYsIDU2LCAxLCAyMTMsIAorICAgIDI1NSwgNTYsIDEsIDIxMywgMTM4LCA1NiwgMjMwLCAyMjQsIDI0NywgMTIwLCAyMzQsIDIwMSwgMjI0LCAxNzMsIDIxOSwgCisgICAgMzEsIDc4LCA1NiwgMjM1LCAxNTgsIDc4LCA1NiwgMjEzLCAxMzUsIDIzNSwgMTU4LCA3OCwgNTYsIDI0NywgMjIxLCAyMzMsIAorICAgIDI1NSwgMjUxLCAxODQsIDEsIDI1MywgMTU4LCAyNTEsIDE4NCwgMSwgMjI2LCAxMDUsIDI1MSwgMTg0LCAxLCAxOTMsIDI1MSwgCisgICAgMTg0LCAxLCAyNDUsIDYsIDI1MSwgMTg0LCAxLCAyNDksIDYwLCAyNTEsIDE4NCwgMSwgMjE3LCAxNTIsIDI1MSwgMTg0LCAxLCAKKyAgICAyMzAsIDI1LCAyNTEsIDE4NCwgMSwgMTU2LCAyNTEsIDE4NCwgMSwgMjQzLCAyMDIsIDI1MSwgMTg0LCAxLCAyMzUsIDIzLCAKKyAgICAyNTEsIDE4NCwgMSwgMjQyLCA2MCwgMjUxLCAxODQsIDEsIDIzNSwgMTQ0LCAyNTEsIDE4NCwgMSwgMjI0LCA5NiwgMjUxLCAKKyAgICAxODQsIDEsIDIxMSwgMTc4LCAyNTEsIDE4NCwgMSwgMjEwLCA4MywgMjUxLCAxODQsIDEsIDI1MCwgMTU4LCAyNTEsIDE4NCwgCisgICAgMSwgMjIwLCAxMDQsIDI1MSwgMTg0LCAxLCAxNTMsIDI1MSwgMTg0LCAxLCAyMTAsIDE1OSwgMjUxLCAxODQsIDEsIDI1MSwgCisgICAgNjYsIDI1MSwgMTg0LCAxLCAyMjIsIDkxLCAyNTEsIDE4NCwgMSwgNjEsIDI1MSwgMTg0LCAxLCA3NiwgMjUxLCAxODQsIDEsIAorICAgIDc1LCAyNTEsIDE4NCwgMSwgMjQ1LCAxOTcsIDI1MSwgMTg0LCAxLCAyNTQsIDIwMSwgMjUxLCAxODQsIDEsIDI0NSwgMTk1LCAKKyAgICAyNTEsIDE4NCwgMSwgMjUzLCAxOTIsIDI1MSwgMTg0LCAxLCAyMjYsIDEzNCwgMjUxLCAxODQsIDEsIDI1NCwgMTIzLCAyNTEsIAorICAgIDE4NCwgMSwgMjQ1LCAxNTAsIDI1MSwgMTg0LCAxLCAyNTQsIDExNSwgMjUxLCAxODQsIDEsIDI0NSwgMTM4LCAyNTEsIDE4NCwgCisgICAgMSwgMjQ1LCA5MiwgMjUxLCAxODQsIDEsIDczLCAyNTEsIDE4NCwgMSwgNzAsIDI1MSwgMTg0LCAxLCAyMzUsIDE1NiwgMjUxLCAKKyAgICAxODQsIDEsIDIxNCwgMTA1LCAyNTEsIDE4NCwgMSwgMjI5LCA3OSwgMjUxLCAxODQsIDEsIDI0MiwgMTc4LCAyNTEsIDE4NCwgCisgICAgMSwgMjM2LCAzNCwgMjQsIDEsIDIzNCwgNTgsIDI0LCAxLCAyMTgsIDIxNSwgMjQsIDEsIDIzNCwgNTEsIDI0LCAxLCAyMjgsIAorICAgIDIyNiwgMjQsIDEsIDIyOCwgMjI0LCAyNCwgMSwgMjI4LCAyMjMsIDI0LCAxLCAyMTYsIDEwMSwgMjQsIDEsIDIxOCwgMjA0LCAKKyAgICAyNCwgMSwgMjIzLCAyNiwgMjQsIDEsIDIyMywgMjEsIDI0LCAxLCAyMjMsIDE4LCAyNCwgMSwgMjIzLCAxMSwgMjQsIDEsIAorICAgIDIyMywgNiwgMjQsIDEsIDIyMywgMSwgMjQsIDEsIDIyMywgMTIsIDI0LCAxLCAyMjMsIDI0LCAyNCwgMSwgMjMwLCAyMTcsIAorICAgIDI0LCAxLCAyMjUsIDk1LCAyNCwgMSwgMjE4LCAyMTIsIDI0LCAxLCAyMjUsIDg0LCAyNCwgMSwgMjE5LCAxNDgsIDI0LCAxLCAKKyAgICAyMTgsIDIwOSwgMjQsIDEsIDIzNiwgNTYsIDI0LCAxLCAyNTAsIDQ2LCAyNCwgMSwgMjE4LCAyMTksIDI0LCAxLCAyNTAsIAorICAgIDEwNiwgMjQsIDEsIDIzNCwgMTEwLCAyNCwgMSwgMjE2LCAxNzMsIDI0LCAxLCAyMjUsIDEzMSwgMjQsIDEsIDI0MSwgMTcyLCAKKyAgICAyNCwgMSwgNjEsIDI0LCAxLCAyNTQsIDI0MywgMjQsIDEsIDE5MSwgMjQsIDEsIDIxMSwgOTIsIDI0LCAxLCAyNDUsIDExNywgCisgICAgMjQsIDEsIDc1LCAyNCwgMSwgMjExLCAzNiwgMjQsIDEsIDIxMSwgNDcsIDI0LCAxLCA3NiwgMjQsIDEsIDIxMiwgNjUsIDI0LCAKKyAgICAxLCAyMTIsIDYyLCAyNCwgMSwgMjI2LCAyMzQsIDI0LCAxLCAyMTAsIDI0NCwgMjQsIDEsIDcwLCAyNCwgMSwgMjEyLCAxMSwgCisgICAgMjQsIDEsIDIxMiwgMjIsIDI0LCAxLCAyMTEsIDI1MCwgMjQsIDEsIDIxMCwgMjEyLCAyNCwgMSwgMjQ1LCA1NSwgMjQsIDEsIAorICAgIDIxMSwgOCwgMjQsIDEsIDczLCAyNCwgMjQ0LCAxMDMsIDI0LCAxLCAyMTgsIDIxMywgMjQsIDEsIDIyOCwgMjE2LCAyNCwgMSwgCisgICAgMjI4LCAyMTgsIDI0LCAxLCAyMjgsIDIyMSwgMjQsIDEsIDIyMywgMTksIDI0LCAxLCAyMjMsIDAsIDI0LCAxLCAyMjMsIDgsIAorICAgIDI0LCAxLCAyMjMsIDEzLCAyNCwgMSwgMjIyLCAyNTQsIDI0LCAxLCAyMzAsIDIxMCwgMjQsIDEsIDIzMCwgMjA3LCAyNCwgMSwgCisgICAgMjMwLCAyMTEsIDI0LCAxLCAyMzQsIDIyMSwgMjQsIDEsIDIyNSwgOTAsIDI0LCAxLCAyMjUsIDc2LCAyNCwgMSwgMjI1LCAKKyAgICA4MiwgMjQsIDEsIDIyNSwgNzksIDI0LCAxLCAyMjUsIDkzLCAyNCwgMSwgMjI1LCA3NywgMjQsIDEsIDIzNCwgMjE5LCAyNCwgCisgICAgMSwgMjM0LCAyMTcsIDI0LCAxLCAyMTksIDE0MSwgMjQsIDEsIDIxOSwgMTM5LCAyNCwgMSwgMjE5LCAxMzEsIDI0LCAxLCAKKyAgICAyMTksIDEzNiwgMjQsIDEsIDIxOSwgMTQ2LCAyNCwgMSwgMjI2LCAzMiwgMjQsIDEsIDIxOCwgMjE2LCAyNCwgMSwgMjExLCAKKyAgICAyNiwgMjQsIDEsIDIxMSwgMjIsIDI0LCAxLCAyMTEsIDIzLCAyNCwgMSwgMjM0LCAyMjAsIDI0LCAxLCAyMTgsIDIxNywgMjQsIAorICAgIDEsIDIxMSwgMzIsIDI0LCAxLCAyMTAsIDIzOCwgMjQsIDEsIDIxMCwgMjM3LCAyNCwgMSwgMjEwLCAyNDAsIDI0LCAxLCAKKyAgICAyMTAsIDIwMywgMjQsIDEsIDIxMCwgMjA0LCAyNCwgMSwgMjEwLCAyMDcsIDI0LCAxLCAyNTQsIDM0LCAyNCwgMSwgMjU0LCAKKyAgICAyOCwgMTA5LCAyNTQsIDk5LCAyMzIsIDIwMywgNzgsIDEwOSwgMjU0LCA5OSwgMjIzLCA1MCwgNzgsIDEwOSwgMjU0LCA5OSwgCisgICAgMTIzLCA3OCwgMTA5LCAyNTQsIDk5LCAxMTMsIDc4LCAxMDksIDI1NCwgOTksIDEzNCwgNzgsIDEwOSwgMjU0LCA5OSwgMjQ0LCAKKyAgICAxMSwgNzgsIDEwOSwgMjU0LCA5OSwgMjE2LCAxNCwgNzgsIDEwOSwgMjU0LCA5OSwgMjMwLCAyMjQsIDc4LCAxMDksIDI1NCwgCisgICAgOTksIDI1MSwgMTc1LCA3OCwgMTA5LCAyNTQsIDk5LCAyNDQsIDkyLCA3OCwgMTA5LCAyNTQsIDk5LCAyMjEsIDE3NiwgNzgsIAorICAgIDEwOSwgMjU0LCA5OSwgMjE2LCAxNjksIDc4LCAxMDksIDI1NCwgOTksIDI0NCwgNCwgNzgsIDEwOSwgMjU0LCA5OSwgMjQxLCAKKyAgICAyMjQsIDc4LCAxMDksIDI1NCwgOTksIDI0NSwgMjI0LCA3OCwgMTA5LCAyNTQsIDk5LCAyMzEsIDE4NiwgNzgsIDI1MSwgCisgICAgMTg0LCAxLCAyNTEsIDEyNSwgMjUxLCAxODQsIDEsIDIxMCwgNDQsIDI1MSwgMTg0LCAxLCAyMzUsIDEwOCwgMjUxLCAxODQsIAorICAgIDEsIDI0MiwgMTEzLCAyNTEsIDE4NCwgMSwgMjQ1LCAyMDksIDI1MSwgMTg0LCAxLCAyNDUsIDEzNSwgMjUxLCAxODQsIDEsIAorICAgIDIyNiwgMTgzLCAyNTEsIDE4NCwgMSwgMjI2LCAxODcsIDI1MSwgMTg0LCAxLCAyMzUsIDE3OSwgMjUxLCAxODQsIDEsIDI1NCwgCisgICAgMTAxLCAyNTEsIDE4NCwgMSwgMjM1LCAyMjQsIDI1MSwgMTg0LCAxLCAyMTQsIDE2OCwgMjUxLCAxODQsIDEsIDIzNiwgMTYsIAorICAgIDI1MSwgMTg0LCAxLCAyMjksIDU3LCAyNTEsIDE4NCwgMSwgMjU0LCAxOTUsIDI1MSwgMTg0LCAxLCAyNTMsIDE4NywgMjUxLCAKKyAgICAxODQsIDEsIDI1NCwgMTM2LCAyNTEsIDE4NCwgMSwgMjI2LCAyMDQsIDI1MSwgMTg0LCAxLCAyMjYsIDE4OSwgMjUxLCAxODQsIAorICAgIDEsIDIzNSwgMjIxLCAyNTEsIDE4NCwgNDAsIDEsIDIyNiwgMTA1LCAyNTEsIDE4NCwgNDAsIDEsIDIxNywgMTUyLCAyNTEsIAorICAgIDE4NCwgNDAsIDEsIDIzNSwgMjMsIDI1MSwgMTg0LCA0MCwgMSwgMjQyLCA2MCwgMjUxLCAxODQsIDEsIDI0MiwgMjUwLCAKKyAgICAyNTEsIDE4NCwgMSwgMjMyLCAyNTUsIDI1MSwgMTg0LCAxLCAyMDksIDI1MCwgOSwgMjE4LCAxMDMsIDIxNywgMTUyLCA5LCAKKyAgICAyMTgsIDEwMywgMjEyLCA0LCA5LCAyMTgsIDEwMywgMjExLCAxNTgsIDksIDIxOCwgMTAzLCAyNTEsIDc5LCA5LCAyMTgsIAorICAgIDEwMywgMjE3LCAyNTQsIDksIDIxOCwgMTAzLCAyNDAsIDE1OCwgOSwgMjE4LCAxMDMsIDI0MCwgMTYyLCA5LCAyMTgsIDEwMywgCisgICAgMjQwLCAyMzEsIDksIDIxOCwgMTAzLCAyNDAsIDE1OSwgOSwgMjE4LCAxMDMsIDIxNywgMTU1LCA5LCAyMTgsIDEwMywgMjQwLCAKKyAgICAxNjEsIDksIDIxOCwgMTAzLCAyNDAsIDE1NywgOSwgMjE4LCAxMDMsIDI0MCwgMjI5LCA5LCAyMTgsIDEwMywgMjQwLCAxNjAsIAorICAgIDksIDIxOCwgMTAzLCAyNDAsIDE1NiwgOSwgMjE4LCAxMDMsIDIzMCwgMjUsIDksIDIxOCwgMTAzLCAyNDIsIDYwLCA5LCAKKyAgICAyMTgsIDEwMywgMjIyLCA5MSwgOSwgMjE4LCAxMDMsIDIyNiwgMTA1LCA5LCAyMTgsIDEwMywgMjE5LCAyMSwgOSwgMjE4LCAKKyAgICAxMDMsIDI0OSwgNjAsIDksIDIxOCwgMTAzLCAyNDAsIDE2MywgOSwgMjE4LCAxMDMsIDI0MSwgMTkwLCA5LCAyMTgsIDEwMywgCisgICAgMjE3LCAxNjQsIDksIDIxOCwgMTAzLCAyMTcsIDIzMywgOSwgMjE4LCAxMDMsIDIxOCwgMTY4LCA5LCAyMTgsIDEwMywgMjIwLCAKKyAgICAxMTAsIDksIDIxOCwgMTAzLCAyMjUsIDIyNCwgOSwgMjE4LCAxMDMsIDIyNCwgOTgsIDksIDIxOCwgMTAzLCAyMTYsIDQzLCAKKyAgICA5LCAyMTgsIDEwMywgMjE3LCAxNTQsIDksIDIxOCwgMTAzLCAyMTcsIDI0NCwgOSwgMjE4LCAxMDMsIDI0MCwgMTcwLCA5LCAKKyAgICAyMTgsIDEwMywgMjQwLCAxNTUsIDksIDIxOCwgMTAzLCAyMjUsIDE0OSwgOSwgMjE4LCAxMDMsIDIyNCwgOTYsIDU2LCAxLCAKKyAgICA0LCAyMzMsIDIxNywgNTYsIDEsIDQsIDIxOSwgMTkxLCA1NiwgMSwgNCwgMjE4LCA4MywgNTYsIDEsIDQsIDExMSwgNTYsIDEsIAorICAgIDQsIDIyNywgMjM3LCA1NiwgMSwgNCwgMTYyLCA1NiwgMSwgNCwgMjQxLCAxODAsIDU2LCAxLCA0LCAyNDAsIDIyMiwgNTYsIAorICAgIDEsIDQsIDI0MSwgMjM4LCA1NiwgMSwgNCwgMjQxLCA2OCwgNTYsIDEsIDQsIDIzMCwgMTAyLCA1NiwgMSwgNCwgMjA1LCA1NiwgCisgICAgMSwgNCwgMjIzLCAzNSwgNTYsIDEsIDQsIDIyMiwgMTQwLCA1NiwgMSwgNCwgMjIzLCAxMjgsIDU2LCAxLCA0LCAyMjIsIAorICAgIDIxMSwgODgsIDI0LCAyMzQsIDU4LCA4OCwgMjQsIDIyOCwgMjI2LCA4OCwgMjQsIDIxNiwgMTAxLCA4OCwgMjQsIDIyMywgCisgICAgMjYsIDg4LCAyNCwgMjMwLCAyMTcsIDg4LCAyNCwgMjI1LCA5NSwgODgsIDI0LCAyMTksIDE0OCwgODgsIDI0LCAyMzYsIDU2LCAKKyAgICA4OCwgMjQsIDI1MCwgNDYsIDg4LCAyNCwgMjUwLCAxMDYsIDg4LCAyNCwgMjM0LCAxMTAsIDg4LCAyNCwgMjE2LCAxNzMsIAorICAgIDg4LCAyNCwgMjI1LCAxMzEsIDg4LCAyNCwgMjQxLCAxNzIsIDg4LCAyNCwgMjM0LCA1OSwgNjEsIDg4LCAyNCwgMjI4LCAKKyAgICAyMjcsIDYxLCA4OCwgMjQsIDIxNiwgMTAyLCA2MSwgODgsIDI0LCAyMjMsIDI3LCA2MSwgODgsIDI0LCAyMzAsIDIxOCwgNjEsIAorICAgIDg4LCAyNCwgMjI1LCA5NiwgNjEsIDg4LCAyNCwgMjE5LCAxNDksIDYxLCA4OCwgMjQsIDIzNiwgNTcsIDYxLCA4OCwgMjQsIAorICAgIDI1MCwgNDcsIDYxLCA4OCwgMjQsIDI1MCwgMTA3LCA2MSwgODgsIDI0LCAyMzQsIDExMSwgNjEsIDg4LCAyNCwgMjE2LCAKKyAgICAxNzQsIDYxLCA4OCwgMjQsIDIyNSwgMTMyLCA2MSwgODgsIDI0LCAyNDEsIDE3MywgNjEsIDg4LCAyNCwgMjUwLCA0NywgNzAsIAorICAgIDg4LCAyMzQsIDMsIDEzNSwgMjI2LCAyMTcsIDg4LCAyMzQsIDMsIDEzNSwgMTQ0LCAyNDAsIDIyMiwgODgsIDE1NCwgMTEwLCAKKyAgICA4OCwgMTU0LCAxMDUsIDg4LCAxNTQsIDE1OCwgODgsIDE1NCwgMTYxLCA4OCwgMTU0LCAxODksIDg4LCAxNTQsIDE5NCwgODgsIAorICAgIDE1NCwgMTk4LCA4OCwgMTU0LCAxOTUsIDg4LCAxNTQsIDIwMCwgODgsIDE1NCwgMjE2LCAyNDcsIDg4LCAxNTQsIDIzMCwgCisgICAgMTI4LCA4OCwgMTU0LCAyNDQsIDk2LCA4OCwgMTU0LCAyMTIsIDQwLCA4OCwgMTU0LCAyMTEsIDIxNCwgODgsIDE1NCwgMjMxLCAKKyAgICAzOSwgODgsIDE1NCwgMjQ1LCAyMjMsIDg4LCAxNTQsIDIxOCwgMzcsIDg4LCAxNTQsIDIxOCwgMTMyLCA4OCwgMTU0LCAyNDEsIAorICAgIDI0NCwgODgsIDE1NCwgMjE5LCA1NCwgODgsIDE1NCwgMjI5LCAyMDQsIDg4LCAxNTQsIDIxOSwgNCwgODgsIDE1NCwgMjQ0LCAKKyAgICAxMDIsIDg4LCAxNTQsIDI0OSwgMjAwLCA4OCwgMTU0LCAyMzMsIDEyNSwgODgsIDE1NCwgMjIzLCA3MSwgODgsIDE1NCwgCisgICAgMjUxLCAxNSwgODgsIDE1NCwgMjE4LCA4NywgODgsIDE1NCwgMjE4LCAyMCwgODgsIDE1NCwgMjQ1LCAxMjcsIDg4LCAxNTQsIAorICAgIDIyMywgNjMsIDg4LCAxNTQsIDI1NCwgMTUwLCA4OCwgMTU0LCAyNDQsIDEyOCwgODgsIDE1NCwgMjIzLCA2MSwgODgsIDE1NCwgCisgICAgMjIwLCAxNTYsIDg4LCAxNTQsIDIyMywgMTI3LCAzNywgMTU0LCAyMjQsIDEyLCAzNywgMTU0LCAyMzQsIDgwLCAzNywgMTU0LCAKKyAgICAyMjEsIDE5OCwgMzcsIDE1NCwgMjMzLCAyNTUsIDM3LCA1NCwgMjE2LCAyNDgsIDIyNiwgMTk3LCA4NSwgMjE4LCAyMzQsIAorICAgIDM3LCA1NCwgMjE1LCA3NCwgMjI2LCAxOTcsIDg1LCAyMTgsIDIzNCwgMzcsIDU0LCAyMTYsIDE2MywgMjI2LCAxOTcsIDg1LCAKKyAgICAyMTgsIDIzNCwgMzcsIDU0LCAyNDQsIDE2LCAyMjYsIDE5NywgODUsIDIxOCwgMjM0LCAzNywgNTQsIDI0NCwgMTE1LCAyMjYsIAorICAgIDE5NywgODUsIDIxOCwgMjM0LCAzNywgNTQsIDIxOSwgMTEyLCAyMjYsIDE5NywgODUsIDIxOCwgMjM0LCAzNywgNTQsIDIyMCwgCisgICAgMTE3LCAyMjYsIDE5NywgODUsIDIxOCwgMjM0LCAzNywgNTQsIDI0NSwgMTg1LCAyMjYsIDE5NywgODUsIDIxOCwgMjM0LCAKKyAgICAyMjUsIDI1MSwgNTAsIDM3LCA1NCwgMjE1LCA3NCwgMTEwLCAzNywgNTQsIDIxNSwgNzQsIDEwNSwgMzcsIDU0LCAyMTUsIAorICAgIDc0LCAxNTgsIDM3LCA1NCwgMjE1LCA3NCwgMTYxLCAzNywgNTQsIDIxNSwgNzQsIDE4OSwgMzcsIDU0LCAyMTUsIDc0LCAKKyAgICAxOTQsIDM3LCA1NCwgMjE1LCA3NCwgMTk4LCAzNywgNTQsIDIxNSwgNzQsIDE5NSwgMzcsIDU0LCAyMTUsIDc0LCAyMDAsIAorICAgIDM3LCA1NCwgMjE2LCAxNjIsIDM3LCA1NCwgMjE2LCAxNjMsIDExMCwgMzcsIDU0LCAyMTYsIDE2MywgMTA1LCAzNywgNTQsIAorICAgIDIxNiwgMTYzLCAxNTgsIDM3LCA1NCwgMjE2LCAxNjMsIDE2MSwgMzcsIDU0LCAyMTYsIDE2MywgMTg5LCAzNywgMjQsIDIzNCwgCisgICAgNTgsIDM3LCAyNCwgMjI4LCAyMjYsIDM3LCAyNCwgMjE2LCAxMDEsIDM3LCAyNCwgMjIzLCAyNiwgMzcsIDI0LCAyMzAsIAorICAgIDIxNywgMzcsIDI0LCAyMjUsIDk1LCAzNywgMjQsIDIxOSwgMTQ4LCAzNywgMjQsIDIzNiwgNTYsIDM3LCAyNCwgMjUwLCA0NiwgCisgICAgMzcsIDI0LCAyNTAsIDEwNiwgMzcsIDI0LCAyMzQsIDExMCwgMzcsIDI0LCAyMTYsIDE3MywgMzcsIDI0LCAyMjUsIDEzMSwgCisgICAgMzcsIDI0LCAyNDEsIDE3MiwgMzcsIDI0LCAyMzQsIDU5LCA2MSwgMzcsIDI0LCAyMjgsIDIyNywgNjEsIDM3LCAyNCwgMjE2LCAKKyAgICAxMDIsIDYxLCAzNywgMjQsIDIyMywgMjcsIDYxLCAzNywgMjQsIDIzMCwgMjE4LCA2MSwgMzcsIDI0LCAyMjUsIDk2LCA2MSwgCisgICAgMzcsIDI0LCAyMTksIDE0OSwgNjEsIDM3LCAyNCwgMjM2LCA1NywgNjEsIDM3LCAyNCwgMjUwLCA0NywgNjEsIDM3LCAyNCwgCisgICAgMjUwLCAxMDcsIDYxLCAzNywgMjQsIDIzNCwgMTExLCA2MSwgMzcsIDI0LCAyMTYsIDE3NCwgNjEsIDM3LCAyNCwgMjI1LCAKKyAgICAxMzIsIDYxLCAzNywgMjQsIDI0MSwgMTczLCA2MSwgMzcsIDIzNCwgMywgMTM1LCAyNTAsIDE0OCwgMzcsIDIzNCwgMywgCisgICAgMTM1LCAyMzUsIDQ3LCAzNywgMjQsIDIzNiwgNTcsIDcwLCAyMzQsIDMsIDIxOCwgMTU5LCA4NywgMzcsIDE1NCwgMTEwLCAKKyAgICAzNywgMTU0LCAxMDUsIDM3LCAxNTQsIDE1OCwgMzcsIDE1NCwgMTYxLCAzNywgMTU0LCAxODksIDM3LCAxNTQsIDE5NCwgMzcsIAorICAgIDE1NCwgMTk4LCAzNywgMTU0LCAxOTUsIDM3LCAxNTQsIDIwMCwgMzcsIDE1NCwgMjE2LCAyNDcsIDM3LCAxNTQsIDIzMCwgCisgICAgMTI4LCAzNywgMTU0LCAyNDQsIDk2LCAzNywgMTU0LCAyMTIsIDQwLCAzNywgMTU0LCAyMTEsIDIxNCwgMzcsIDE1NCwgMjMxLCAKKyAgICAzOSwgMzcsIDE1NCwgMjQ1LCAyMjMsIDM3LCAxNTQsIDIxOCwgMzcsIDM3LCAxNTQsIDIxOCwgMTMyLCAzNywgMTU0LCAyNDEsIAorICAgIDI0NCwgMzcsIDE1NCwgMjE5LCA1NCwgMzcsIDE1NCwgMjI5LCAyMDQsIDM3LCAxNTQsIDIxOSwgNCwgMzcsIDE1NCwgMjQ0LCAKKyAgICAxMDIsIDM3LCAxNTQsIDI0OSwgMjAwLCAzNywgMTU0LCAyMzMsIDEyNSwgMzcsIDE1NCwgMjIxLCAxNzQsIDM3LCAxNTQsIAorICAgIDIzMSwgMTg5LCAzNywgMTU0LCAyNDQsIDEzNywgMzcsIDE1NCwgMjE4LCA0OSwgMzcsIDE1NCwgMjQ1LCAzNCwgMzcsIDE1NCwgCisgICAgMjI0LCAxODcsIDM3LCAxNTQsIDI1MywgMTk2LCAzNywgMTU0LCAyMzUsIDE1OSwgMzcsIDE1NCwgMjIzLCA2MSwgMzcsIAorICAgIDE1NCwgMjQ5LCAxNjQsIDM3LCAxNTQsIDI0OSwgMTU1LCAzNywgMTU0LCAyNDEsIDE2NSwgMzcsIDE1NCwgMjUwLCAxNzQsIAorICAgIDM3LCAxNTQsIDIzMiwgMTEwLCAzNywgMTU0LCAyMzMsIDQ2LCAzNywgMTU0LCAyMjIsIDI1MSwgMzcsIDE1NCwgMjMxLCA4MywgCisgICAgMzcsIDE1NCwgMjIzLCA4NywgMzcsIDE1NCwgMjE4LCA4NywgMzcsIDE1NCwgMjE4LCAyMCwgMzcsIDE1NCwgMjQ1LCAxMjcsIAorICAgIDM3LCAxNTQsIDIyMywgNjMsIDM3LCAxNTQsIDI1NCwgMTUwLCAzNywgMTU0LCAyMjgsIDIxMiwgMzcsIDU0LCAyMTYsIDE2MywgCisgICAgMTk0LCAzNywgNTQsIDIxNiwgMTYzLCAxOTgsIDM3LCA1NCwgMjE2LCAxNjMsIDE5NSwgMzcsIDU0LCAyMTYsIDE2MywgMjAwLCAKKyAgICAzNywgNTQsIDI0NCwgMTUsIDM3LCA1NCwgMjQ0LCAxNiwgMTEwLCAzNywgNTQsIDI0NCwgMTYsIDEwNSwgMzcsIDU0LCAyNDQsIAorICAgIDE2LCAxNTgsIDM3LCA1NCwgMjQ0LCAxNiwgMTYxLCAzNywgNTQsIDI0NCwgMTYsIDE4OSwgMzcsIDU0LCAyNDQsIDE2LCAKKyAgICAxOTQsIDM3LCA1NCwgMjQ0LCAxNiwgMTk4LCAzNywgNTQsIDI0NCwgMTYsIDE5NSwgMzcsIDU0LCAyNDQsIDE2LCAyMDAsIAorICAgIDM3LCA1NCwgMjQ0LCAxMTQsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDIzNSwgMTMzLCAxMDksIDIxNywgMywgMTYsIDMxLCAKKyAgICAyNDQsIDE0OCwgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjMxLCAxNjAsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI1NCwgNDcsIAorICAgIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDIzMSwgMTMyLCAxMDksIDIxNywgMywgMTYsIDMxLCAyMzUsIDQ1LCAxMDksIDIxNywgMywgCisgICAgMTYsIDMxLCAyMzUsIDQ2LCAxMDksIDIxNywgMywgMTYsIDMxLCAyNTMsIDE4OCwgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjIwLCAKKyAgICAxMzYsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDIyNiwgMjM5LCAxMDksIDIxNywgMywgMTYsIDMxLCAyMjgsIDQwLCAxMDksIAorICAgIDIxNywgMywgMTYsIDMxLCAyNDgsIDg1LCA0MiwgMjQxLCAxOTAsIDQyLCAyNDUsIDg4LCA0MiwgMjQ1LCA0MywgMjMyLCAKKyAgICAyMTksIDIzMiwgMjQwLCA1MCwgMzcsIDU2LCA2MSwgMzcsIDU2LCA3MywgMzcsIDU2LCA3MCwgMzcsIDU2LCA3NSwgMzcsIAorICAgIDU2LCA3NiwgMzcsIDU2LCAxNzYsIDM3LCA1NiwgMjM0LCA5MiwgMzcsIDU2LCAyMzMsIDIxNywgMzcsIDU2LCAyMzQsIDE4MiwgCisgICAgMzcsIDU2LCAyMzQsIDI4LCAzNywgNTYsIDIwNiwgMzcsIDU2LCAyMTksIDE5MSwgMzcsIDU2LCAyMTgsIDgzLCAzNywgNTYsIAorICAgIDIyMSwgMTgxLCAzNywgNTYsIDIxOSwgNTgsIDM3LCA1NiwgMjE3LCAxMDUsIDM3LCA1NiwgMjE2LCAxMTcsIDM3LCA1NiwgCisgICAgMjE1LCAxMTgsIDM3LCA1NiwgMjE3LCAyMiwgMzcsIDU2LCAxMTEsIDM3LCA1NiwgMTk3LCAzNywgNTYsIDIyOCwgMjMzLCAKKyAgICAzNywgNTYsIDIyNywgMjM3LCAzNywgNTYsIDIyOSwgMTA3LCAzNywgNTYsIDIyOCwgNzQsIDM3LCA1NiwgMTYyLCAzNywgNTYsIAorICAgIDI0MSwgMTgwLCAzNywgNTYsIDI0MCwgMjIyLCAzNywgNTYsIDI0MSwgMjM4LCAzNywgNTYsIDI0MSwgNjgsIDM3LCA1NiwgCisgICAgMTg0LCAzNywgNTYsIDIzMCwgMjMwLCAzNywgNTYsIDIzMCwgMTAyLCAzNywgNTYsIDIzMSwgOTEsIDM3LCA1NiwgMjMwLCAKKyAgICAxNjEsIDM3LCA1NiwgMTkxLCAzNywgNTYsIDIxMCwgMjEyLCAzNywgNTYsIDIxMCwgMjQ0LCAzNywgNTYsIDIwNSwgMzcsIAorICAgIDU2LCAyMjMsIDM1LCAzNywgNTYsIDIyMiwgMTQwLCAzNywgNTYsIDIyMywgMTI4LCAzNywgNTYsIDIyMiwgMjExLCAzNywgCisgICAgNTYsIDIxMiwgNjUsIDM3LCA1NiwgMjExLCAyNTAsIDM3LCA1NiwgMjEyLCAyMiwgMzcsIDU2LCAyMTEsIDIyNywgNDIsIAorICAgIDI1NCwgNzEsIDQyLCAyNTMsIDIzOSwgNDIsIDI1NCwgOTUsIDQyLCAyNTUsIDMxLCA0MiwgMjM1LCAyMjYsIDQyLCAyMzUsIAorICAgIDE5NiwgNDIsIDIxNCwgMTY2LCA0MiwgMjQ1LCA2NiwgNDIsIDI0NSwgMjA2LCA0MiwgMjI2LCAxODYsIDQyLCAyMjYsIDE4MCwgCisgICAgNDIsIDIzNCwgMjQ1LCA0MiwgMjM0LCAyMTQsIDQyLCAyMzQsIDIxMSwgNDIsIDI0MywgOTIsIDQyLCAyNDMsIDEwMSwgNDIsIAorICAgIDI0MiwgMjA0LCA0MiwgMjQyLCAyMDAsIDQyLCAyMzMsIDE1MCwgNDIsIDI0MiwgMTkzLCA0MiwgMjM0LCA3MiwgNDIsIDIzNCwgCisgICAgNzEsIDQyLCAyMzQsIDcwLCA0MiwgMjM0LCA2OSwgNDIsIDI0MiwgODYsIDQyLCAyNDIsIDg1LCA0MiwgMjMzLCAxOTMsIDQyLCAKKyAgICAyMzMsIDE5NSwgNDIsIDIzNCwgMTc4LCA0MiwgMjM0LCAxLCA0MiwgMjM0LCA4LCA0MiwgMjIyLCAxNiwgNDIsIDIyMSwgCisgICAgMjM3LCA0MiwgMjE5LCAxMjksIDQyLCAyMjAsIDE0MSwgNDIsIDIyMCwgMTQwLCA0MiwgMjQ4LCAyMTgsIDQyLCAyNDgsIDM2LCAKKyAgICA0MiwgMjQ3LCAxMjEsIDQyLCAyMTYsIDMyLCA0MiwgMjI5LCAyMDAsIDQyLCAyMjgsIDQxLCA0MiwgMjQyLCAzMiwgNDIsIAorICAgIDIyNiwgODQsIDQyLCAyMjYsIDgzLCA0MiwgMjUyLCAxODgsIDQyLCAyMjUsIDEwNSwgNDIsIDIyNSwgNjksIDQyLCAyMjUsIAorICAgIDcwLCA0MiwgMjUxLCAyMzQsIDQyLCAyNDAsIDIyMSwgNDIsIDI0MCwgMjE3LCA0MiwgMjUxLCA5MSwgNDIsIDI0MCwgMjA0LCAKKyAgICA0MiwgMjQxLCAyMTUsIDQyLCAyMjUsIDE1OSwgNDIsIDIyNSwgMTk0LCA0MiwgMjQxLCAxOTgsIDQyLCAyMjUsIDE5MSwgNDIsIAorICAgIDIyNSwgMjA3LCA0MiwgMjUyLCA2MSwgNDIsIDIyNSwgNiwgNDIsIDI1MSwgMTgwLCA0MiwgMjQxLCA1NiwgNDIsIDIyNCwgCisgICAgMjUwLCA0MiwgMjQxLCA0OCwgNDIsIDI0MSwgNTAsIDQyLCAyMzEsIDIwMSwgNDIsIDIzMSwgMTk3LCA0MiwgMjMxLCAyMDYsIAorICAgIDQyLCAyMzEsIDE1MCwgNDIsIDIzMSwgMTc1LCA0MiwgMjMwLCAxOTcsIDQyLCAyMzAsIDE3NiwgNDIsIDIzMCwgMTc1LCA0MiwgCisgICAgMjMxLCA3NCwgNDIsIDIzMSwgNzEsIDQyLCAyMzEsIDc1LCA0MiwgMjExLCAxMDIsIDQyLCAyMTEsIDEwMCwgNDIsIDIxMCwgCisgICAgMjAxLCA0MiwgMjIyLCAyMjYsIDQyLCAyMjIsIDIzMCwgNDIsIDIyMiwgMTE3LCA0MiwgMjIyLCAxMTEsIDQyLCAyMjMsIDg1LCAKKyAgICA0MiwgMjIzLCA4MiwgNDIsIDIxMiwgMzgsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0MCwgMjM5LCAyMTAsIDg2LCAxMDksIAorICAgIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMTEwLCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMTA1LCAxMDksIAorICAgIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMTU4LCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMTYxLCAxMDksIAorICAgIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMTg5LCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMTk0LCAxMDksIAorICAgIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMTk4LCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMTk1LCAxMDksIAorICAgIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMjAwLCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMjE2LCAyNDcsIAorICAgIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0MCwgMjM5LCAyNDUsIDE2NywgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQwLCAyMzksIAorICAgIDIxNSwgNzYsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0MCwgMjM5LCAyMTYsIDE2NCwgMTA5LCAyMTcsIDMsIDE2LCAzMSwgCisgICAgMjQwLCAyMzksIDI0NCwgNSwgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQwLCAyMzksIDI0NCwgMTE4LCAxMDksIDIxNywgMywgCisgICAgMTYsIDMxLCAyNDAsIDIzOSwgMjE5LCAxMTksIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0MCwgMjM5LCAyMjAsIDExOSwgMTA5LCAKKyAgICAyMTcsIDMsIDE2LCAzMSwgMjQwLCAyMzksIDI0NSwgMTkwLCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMjI4LCAKKyAgICAxOTcsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0MCwgMjM5LCAyMTUsIDczLCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDAsIAorICAgIDIzOSwgMjE1LCA2NywgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQwLCAyMzksIDIxNSwgNjMsIDEwOSwgMjE3LCAzLCAxNiwgCisgICAgMzEsIDI0MCwgMjM5LCAyMTUsIDY0LCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDAsIDIzOSwgMjE1LCA2OSwgNDIsIDI0MCwgCisgICAgMjMwLCA0MiwgMjQ4LCAyMjEsIDQyLCAyNTMsIDE5MiwgNDIsIDEzMCwgNDIsIDIyNiwgMTI1LCA0MiwgMjI1LCAyMjUsIDQyLCAKKyAgICAyNDcsIDE0NywgNDIsIDI0NywgMTQ4LCAyMTgsIDIzMywgNDIsIDI0NywgMTQ4LCAyNDksIDEwOCwgNDIsIDIzNSwgMTU2LCAKKyAgICA0MiwgMjQ1LCA5MSwgMjI5LCAyMDUsIDI0MSwgMjE2LCA0MiwgMjQ1LCA5MSwgMjI5LCAyMDUsIDIxNywgMTc0LCA0MiwgCisgICAgMjQ1LCA5MSwgMjI5LCAyMDUsIDIxNywgNzQsIDQyLCAyNDUsIDkxLCAyMjksIDIwNSwgMjMxLCA3MCwgNDIsIDI0OSwgMTU3LCAKKyAgICA0MiwgMjI2LCA5MCwgMjU0LCAxMjUsIDQyLCAxOTcsIDQyLCAyMzAsIDEwMywgNjEsIDQyLCAxODQsIDQyLCAxNzYsIDQyLCAKKyAgICAyMzQsIDE4NSwgNDIsIDIzMSwgMTI5LCA0MiwgMjQzLCA4MCwgNDIsIDI1MSwgMTgsIDQyLCAyMzQsIDE4NCwgNDIsIDIyNSwgCisgICAgMTUwLCA0MiwgMjI5LCA4MSwgNDIsIDIzMCwgMTAzLCAyNDUsIDYsIDQyLCAyMzAsIDEwMywgMjQzLCAyMDIsIDQyLCAyMzEsIAorICAgIDE1LCA0MiwgMjM0LCAxMzQsIDQyLCAyNDAsIDE2MywgNDIsIDIzNCwgOTQsIDQyLCAyMzAsIDIzMiwgNDIsIDI0MiwgMjE2LCAKKyAgICA0MiwgMjE2LCAxMTksIDQyLCAyMzAsIDEwMywgMTU2LCA0MiwgMjMwLCAxNjksIDQyLCAyNDcsIDE1NywgNDIsIDIzNCwgNDAsIAorICAgIDQyLCAyNDQsIDQ1LCA0MiwgMjI4LCAxMTIsIDQyLCAyMzAsIDEwMywgMTkzLCA0MiwgMjMwLCAxNjYsIDQyLCAyNDksIDIzOSwgCisgICAgNDIsIDIzNCwgMzQsIDQyLCAyMzAsIDE2NywgMjE4LCAyMzMsIDQyLCAyNDksIDI0MCwgMjE4LCAyMzMsIDQyLCAyMzIsIDUwLCAKKyAgICAyMTgsIDIzMywgNDIsIDIzNCwgMzUsIDIxOCwgMjMzLCA0MiwgMjMwLCAxNjcsIDI0OSwgMTA4LCA0MiwgMjQ5LCAyNDAsIAorICAgIDI0OSwgMTA4LCA0MiwgMjMyLCA1MCwgMjQ5LCAxMDgsIDQyLCAyMzQsIDM1LCAyNDksIDEwOCwgNDIsIDIzMiwgNTAsIDExNywgCisgICAgMjIyLCA5MSwgNDIsIDIzMiwgNTAsIDExNywgMjIyLCA5MiwgMjE4LCAyMzMsIDQyLCAxOTAsIDQyLCAyMzMsIDI1MSwgNDIsIAorICAgIDIzMCwgMTA1LCA0MiwgMjQyLCAxNTEsIDQyLCAyMjMsIDE3NiwgNDIsIDIyMywgMTc3LCAxMTcsIDIyMiwgOTEsIDQyLCAKKyAgICAyMjMsIDE3NywgMTE3LCAyMjIsIDkyLCAyMTgsIDIzMywgNDIsIDIyNCwgMTYyLCA0MiwgMjI4LCAxMywgNDIsIDIzMCwgCisgICAgMTAzLCAyMjIsIDkxLCA0MiwgMjMwLCAxMDQsIDQyLCAyMjQsIDExNiwgNDIsIDIyNywgMTc2LCA0MiwgMjMwLCAxMDMsIAorICAgIDIxNCwgMTA1LCA0MiwgMjMwLCA0OSwgNDIsIDIzMywgMTg1LCA0MiwgMjMwLCA1MCwgMjMxLCA3NCwgNDIsIDIyNCwgMTE1LCAKKyAgICA0MiwgMjI3LCAxNzUsIDQyLCAyMzAsIDEwMywgMjEyLCA5OCwgNDIsIDIzMCwgNDMsIDQyLCAyMzMsIDE4MywgNDIsIDIzMCwgCisgICAgNDQsIDIzMSwgNzQsIDQyLCAyMzUsIDI0LCAyMjYsIDIyMCwgNDIsIDIzMiwgNTAsIDIyNiwgMjIwLCA0MiwgMjU0LCAxMzYsIAorICAgIDQyLCAyNTEsIDE2MCwgNDIsIDI1MCwgMjE0LCA0MiwgMjUwLCAxOTEsIDQyLCAyNTEsIDY3LCAxMTcsIDIzNCwgMTM0LCA0MiwgCisgICAgMjQ5LCAyMzgsIDQyLCAyNDgsIDE0MiwgNDIsIDI0MiwgNzIsIDQyLCAxNjIsIDQyLCAyNDAsIDIzMSwgNDIsIDIzNSwgMjU1LCAKKyAgICA0MiwgMjM0LCA0NywgNDIsIDIzNCwgMzUsIDI1MCwgMjUwLCA0MiwgMjMzLCAyMTksIDQyLCAyMzIsIDE1OSwgNDIsIDIzMiwgCisgICAgMTU4LCA0MiwgMjMyLCAxNDcsIDQyLCAyMzIsIDYzLCA0MiwgMjMxLCAxMzAsIDIxOSwgNzksIDQyLCAyMzAsIDE5NiwgNDIsIAorICAgIDIzMCwgMTUyLCA0MiwgMjI1LCAxNDgsIDQyLCAyMjUsIDE5LCA0MiwgMjI0LCAyMTksIDQyLCAyMjQsIDIxNywgNDIsIDIxOCwgCisgICAgMjI3LCA0MiwgMjE4LCAyLCA0MiwgMjEyLCAyNCwgNDIsIDIxNCwgMTA2LCAxMTcsIDE5MywgNDIsIDExNSwgMTE3LCAxOTMsIAorICAgIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAxMTAsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAxMDUsIAorICAgIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAxNTgsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAxNjEsIAorICAgIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAxODksIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAxOTQsIAorICAgIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAxOTgsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAxOTUsIAorICAgIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAyMDAsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAyMTYsIAorICAgIDI0NywgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQ4LCAxNDYsIDI0NSwgMTY3LCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDgsIAorICAgIDE0NiwgMjE1LCA3NiwgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQ4LCAxNDYsIDIxNiwgMTY0LCAxMDksIDIxNywgMywgMTYsIAorICAgIDMxLCAyNDgsIDE0NiwgMjQ0LCA1LCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDgsIDE0NiwgMjQ0LCAxMTgsIDEwOSwgMjE3LCAKKyAgICAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAyMTksIDExOSwgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQ4LCAxNDYsIDIyMCwgMTE5LCAKKyAgICAxMDksIDIxNywgMywgMTYsIDMxLCAyNDgsIDE0NiwgMjQ1LCAxOTAsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAKKyAgICAyMjgsIDE5NywgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQ4LCAxNDYsIDIxNSwgNzMsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIAorICAgIDI0OCwgMTQ2LCAyMTUsIDY3LCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDgsIDE0NiwgMjE1LCA2MywgMTA5LCAyMTcsIDMsIAorICAgIDE2LCAzMSwgMjQ4LCAxNDYsIDIxNSwgNjQsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAyMTUsIDY5LCAxMDksIAorICAgIDIxNywgMywgMTYsIDMxLCAyNDgsIDE0NiwgMjE1LCA3MCwgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQ4LCAxNDYsIDIxNSwgCisgICAgNjUsIDEwOSwgMjE3LCAzLCAxNiwgMzEsIDI0OCwgMTQ2LCAyMTUsIDY2LCAxMDksIDIxNywgMywgMTYsIDMxLCAyNDgsIAorICAgIDE0NiwgMjE1LCA3MiwgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQ4LCAxNDYsIDIxNSwgNjgsIDEwOSwgMjE3LCAzLCAxNiwgCisgICAgMzEsIDI0OCwgMTQ2LCAyMTYsIDE2MiwgMTA5LCAyMTcsIDMsIDE2LCAzMSwgMjQ4LCAxNDYsIDIxNiwgMTYxLCA0MiwgMjQzLCAKKyAgICAxMTgsIDI0MSwgMTkyLCAzMSwgMjE2LCAxOTYsIDI0OSwgMTQwLCAyNDEsIDIyMywgMjQxLCAxOTIsIDMxLCAyMTYsIDE5NiwgCisgICAgMjIzLCAxMjIsIDI0NSwgMjIzLCAyNDEsIDE5MiwgMzEsIDI0NywgMjMxLCAyNTMsIDIwNywgMjE2LCAxOTYsIDI1MiwgNTYsIAorICAgIDI0MSwgMTkyLCAzMSwgMjEwLCAyMjMsIDI0NCwgMzgsIDI0MSwgMTkyLCAzMSwgMjEyLCA1OSwgMjQxLCAxOTIsIDMxLCAKKyAgICAyNDksIDIwMywgMjQxLCAxOTIsIDMxLCAyMTYsIDE5NiwgMjU0LCAzLCAyNDEsIDE5MiwgMzEsIDI0MSwgNjAsIDIxNiwgMzgsIAorICAgIDI0MSwgMTkyLCAzMSwgNCwgMjE3LCA2MSwgMjQxLCAxOTIsIDMxLCAyMTUsIDIzNywgMjQxLCAxOTIsIDMxLCAyMjUsIDIxOSwgCisgICAgMjQxLCAxOTIsIDMxLCAyMTgsIDE1OCwgMjQxLCAxOTIsIDMxLCAyNDQsIDEzOSwgMjQxLCAxOTIsIDMxLCAyNDIsIDEzMiwgCisgICAgMjI0LCAyNDAsIDI0MSwgMTkyLCAzMSwgMjMwLCAxNTUsIDI0MSwgMTkyLCAzMSwgMjQ1LCAxMjYsIDI0MSwgMTkyLCAzMSwgCisgICAgMjQ0LCAzOSwgMjQxLCAxOTIsIDMxLCAyMTEsIDIwNywgMjI2LCAxOTcsIDIxNiwgMTk2LCAyNDgsIDg2LCAyNDEsIDE5MiwgCisgICAgMzEsIDI1NCwgNTEsIDI0MSwgMTkyLCAzMSwgMjQ5LCAxODUsIDI0MSwgMTkyLCAzMSwgMjUxLCAyMjcsIDIxNiwgMTM4LCAKKyAgICAyNDEsIDE5MiwgMzEsIDI0MiwgMTQ5LCAyNDEsIDE5MiwgMzEsIDIxOCwgMjQ1LCAyNTQsIDcwLCAyNDEsIDE5MiwgMzEsIAorICAgIDIyMywgNTMsIDI0MSwgMTkyLCAzMSwgMjM1LCAyMjAsIDI0MSwgMTkyLCAzMSwgMjQyLCAxMzIsIDIxNywgNjEsIDI0MSwgCisgICAgMTkyLCAzMSwgMjMwLCAxMTEsIDI0OSwgMTU5LCAyNDEsIDE5MiwgMzEsIDI0MiwgMTMyLCAyMjQsIDE5NywgMjQxLCAxOTIsIAorICAgIDMxLCAyMTYsIDE5NiwgMjU1LCAxOCwgMjEyLCA0MCwgMjQxLCAxOTIsIDMxLCAyMTYsIDE5NiwgMjUwLCA4LCAyNDQsIDk2LCAKKyAgICAyNDEsIDE5MiwgMzEsIDIzNSwgMjMzLCAyNDEsIDE5MiwgMzEsIDI0NiwgNTcsIDI0MSwgMTkyLCAzMSwgMjIzLCA1NiwgCisgICAgMjQxLCAxOTIsIDMxLCAyNDIsIDEzMiwgMjI0LCAyMjQsIDI0MSwgMTkyLCAzMSwgMjI0LCAxNzcsIDI0MSwgMTkyLCAzMSwgCisgICAgMjQ4LCAxNjEsIDY0LCAyMTYsIDE5NiwgMjMyLCAyMzAsIDI0MSwgMTkyLCAzMSwgMjE2LCAxOTYsIDI0NCwgMTc0LCAyNDEsIAorICAgIDE5MiwgMzEsIDIyNiwgMTYzLCAyNDEsIDE5MiwgMzEsIDIyNiwgMjQ0LCAyNDEsIDE5MiwgMzEsIDI0OCwgNTksIDI0MSwgCisgICAgMTkyLCAzMSwgMjQ4LCA3OSwgMjQxLCAxOTIsIDMxLCAyMzUsIDI0NywgMjQxLCAxOTIsIDMxLCAyNTEsIDE0OSwgMjQxLCAKKyAgICAxOTIsIDMxLCAyNDksIDIyMSwgMjE2LCA0MiwgMjMxLCA3NiwgMjQxLCAxOTIsIDMxLCAyNDMsIDg3LCAyMTYsIDM4LCAyNDEsIAorICAgIDE5MiwgMzEsIDIyNCwgMTI1LCAyMTQsIDE1NCwgMjQxLCAxOTIsIDMxLCAyMjYsIDE2MiwgMjQxLCAxOTIsIDMxLCAyMTYsIAorICAgIDE5NiwgMjEyLCAxMywgMjQxLCAxOTIsIDMxLCAyMjMsIDQ1LCAyNDEsIDE5MiwgMzEsIDIxNiwgMTk2LCAyNTAsIDIyMCwgCisgICAgMjQxLCAxOTIsIDMxLCAyMTYsIDE5NiwgMjUzLCAyNTUsIDIxNiwgMTMzLCAyNDEsIDE5MiwgMzEsIDIxNiwgMTk2LCAyMzQsIAorICAgIDE3OSwgMjE4LCAxMzQsIDIzMCwgMTE1LCAyNDEsIDE5MiwgMzEsIDI0OCwgMzIsIDI0MSwgMTkyLCAzMSwgMjE2LCAxOTYsIAorICAgIDIzMSwgMTUyLCAyMzEsIDIwMiwgMjQxLCAxOTIsIDMxLCAyNTUsIDE5LCAyNDEsIDE5MiwgMzEsIDIxNiwgMTk2LCAyMTIsIAorICAgIDU0LCAyNDEsIDE5MiwgMzEsIDIxNiwgMTk2LCAyNDMsIDQ3LCAyMTEsIDIzOSwgMjQxLCAxOTIsIDMxLCAyMTYsIDE5NiwgCisgICAgMjM1LCA1MiwgMjMzLCAxMDcsIDI0MSwgMTkyLCAzMSwgMjQ3LCAxODQsIDI0MSwgMTkyLCAzMSwgMjMyLCAyMjAsIDI0MSwgCisgICAgMTkyLCAzMSwgMjM1LCAyMjMsIDIxNSwgMTg3LCAyNDEsIDE5MiwgMzEsIDQsIDIyNCwgMTk3LCAyNDEsIDE5MiwgMzEsIAorICAgIDI1NCwgMjE3LCAyNDksIDIxMiwgMjQxLCAxOTIsIDMxLCAyNTIsIDU5LCAyNDksIDIxMiwgOCwgMywgMjM1LCAxNjAsIDgsIAorICAgIDMsIDIzNSwgMTUzLCA4LCAzLCA3MywgOCwgMywgMjM1LCAxODIsIDgsIDMsIDIzNiwgNTgsIDgsIDMsIDIzNiwgNDEsIDgsIAorICAgIDMsIDIzNiwgNjAsIDgsIDMsIDIzNiwgNTksIDgsIDMsIDI1MywgMjA2LCA4LCAzLCAyNTMsIDE2OSwgOCwgMywgNjEsIDgsIAorICAgIDMsIDI1NCwgNzIsIDgsIDMsIDIxNCwgMTY0LCA4LCAzLCAyMTQsIDE2NywgOCwgMywgMjE0LCAxNjUsIDgsIDMsIDIyNiwgCisgICAgMTQwLCA4LCAzLCAyMjYsIDExNCwgOCwgMywgNzYsIDgsIDMsIDIyNiwgMTc1LCA4LCAzLCAyNDUsIDM1LCA4LCAzLCA3NSwgCisgICAgOCwgMywgMjExLCAxOTUsIDgsIDMsIDI1MSwgMjI4LCA4LCAzLCAyNTEsIDIyNSwgOCwgMywgMjUyLCA2LCA4LCAzLCAyNTEsIAorICAgIDIzOCwgOCwgMywgMjUxLCAyNTEsIDgsIDMsIDI1MSwgMjUwLCA4LCAzLCAyNTEsIDI1MywgOCwgMywgMjUxLCAyNTIsIDgsIAorICAgIDMsIDI1MiwgMTIxLCA4LCAzLCAyNTIsIDExMywgOCwgMywgMjUyLCAxOTEsIDgsIDMsIDI1MiwgMTQyLCA4LCAzLCAyNTEsIAorICAgIDEwMSwgOCwgMywgMjUxLCAxMDUsIDgsIDMsIDI1MSwgMTAyLCA4LCAzLCAyNTEsIDE3OSwgOCwgMywgMjUxLCAxNjMsIDgsIAorICAgIDMsIDI1MSwgMjA1LCA4LCAzLCAyNTEsIDE4NSwgOCwgMywgMjUyLCAyMSwgOCwgMywgMjUyLCA3NSwgOCwgMywgMjUyLCAzMywgCisgICAgOCwgMywgMjUxLCA4NywgOCwgMywgMjUxLCA4NCwgOCwgMywgMjUxLCAxMjUsIDgsIDMsIDI1MSwgMTAwLCA4LCAzLCAyNTEsIAorICAgIDk0LCA4LCAzLCAyNTEsIDk4LCA4LCAzLCAyNTEsIDcyLCA4LCAzLCAyNTEsIDcwLCA4LCAzLCAyNTEsIDc3LCA4LCAzLCAKKyAgICAyNTEsIDc1LCA4LCAzLCAyNTEsIDczLCA4LCAzLCAyNTEsIDc0LCA4LCAzLCAyMjUsIDQ5LCA4LCAzLCAyMjUsIDQ1LCA4LCAKKyAgICAzLCAyMjUsIDEwOCwgOCwgMywgMjI1LCA1OSwgOCwgMywgMjI1LCA3NSwgOCwgMywgMjI1LCAxMDIsIDgsIDMsIDIyNSwgOTgsIAorICAgIDgsIDMsIDIyNSwgMjQwLCA4LCAzLCAyMjUsIDIzMCwgOCwgMywgMTkwLCA4LCAzLCAyMjYsIDIxLCA4LCAzLCAyMjQsIDEzNSwgCisgICAgOCwgMywgMjI0LCAxMzcsIDgsIDMsIDIyNCwgMTM2LCA4LCAzLCAyMjQsIDIzMywgOCwgMywgMjI0LCAyMjIsIDgsIDMsIAorICAgIDIyNSwgMTYsIDgsIDMsIDIyNCwgMjQ1LCA4LCAzLCAyMjQsIDEyMSwgOCwgMywgMjI0LCAxMTcsIDgsIDMsIDIyNCwgMTUwLCAKKyAgICA4LCAzLCAyMjQsIDEzNCwgOCwgMywgMjI0LCAxMjYsIDgsIDMsIDIyNCwgMTMyLCA4LCAzLCAyMjQsIDEwMCwgOCwgMywgCisgICAgMjI0LCA5OSwgOCwgMywgMjI0LCAxMDQsIDgsIDMsIDIyNCwgMTAzLCA4LCAzLCAyMjQsIDEwMSwgOCwgMywgMjI0LCAxMDIsIAorICAgIDgsIDMsIDI1MiwgOTYsIDgsIDMsIDI1MiwgOTUsIDgsIDMsIDI1MiwgMTAyLCA4LCAzLCAyNTIsIDk3LCA4LCAzLCAyNTIsIAorICAgIDk5LCA4LCAzLCAyNTIsIDk4LCA4LCAzLCAyNTIsIDEwMSwgOCwgMywgMjUyLCAxMDAsIDgsIDMsIDI1MiwgMTA4LCA4LCAzLCAKKyAgICAyNTIsIDEwNywgOCwgMywgMjUyLCAxMTEsIDgsIDMsIDI1MiwgMTA5LCA4LCAzLCAyNTIsIDg3LCA4LCAzLCAyNTIsIDg5LCAKKyAgICA4LCAzLCAyNTIsIDg4LCA4LCAzLCAyNTIsIDkyLCA4LCAzLCAyNTIsIDkxLCA4LCAzLCAyNTIsIDk0LCA4LCAzLCAyNTIsIAorICAgIDkzLCA4LCAzLCAyNTIsIDEwMywgOCwgMywgMjUyLCAxMDYsIDgsIDMsIDI1MiwgMTA0LCA4LCAzLCAyNTIsIDgzLCA4LCAzLCAKKyAgICAyNTIsIDgyLCA4LCAzLCAyNTIsIDkwLCA4LCAzLCAyNTIsIDg2LCA4LCAzLCAyNTIsIDg0LCA4LCAzLCAyNTIsIDg1LCA4LCAKKyAgICAzLCAyNTIsIDc5LCA4LCAzLCAyNTIsIDc4LCA4LCAzLCAyNTIsIDgxLCA4LCAzLCAyNTIsIDgwLCA4LCAzLCAyMjksIDE2OSwgCisgICAgOCwgMywgMjI5LCAxNjgsIDgsIDMsIDIyOSwgMTc0LCA4LCAzLCAyMjksIDE3MCwgOCwgMywgMjI5LCAxNzEsIDgsIDMsIAorICAgIDIyOSwgMTczLCA4LCAzLCAyMjksIDE3MiwgOCwgMywgMjI5LCAxNzcsIDgsIDMsIDIyOSwgMTc2LCA4LCAzLCAyMjksIDE3OSwgCisgICAgOCwgMywgMjI5LCAxNzgsIDgsIDMsIDIyOSwgMTY1LCA4LCAzLCAyMjksIDE2NCwgOCwgMywgMjI5LCAxNjcsIDgsIDMsIAorICAgIDIyOSwgMTY2LCA4LCAzLCAyMjksIDE1OCwgOCwgMywgMjI5LCAxNTcsIDgsIDMsIDIyOSwgMTYyLCA4LCAzLCAyMjksIDE2MSwgCisgICAgOCwgMywgMjI5LCAxNTksIDgsIDMsIDIyOSwgMTYwLCA4LCAzLCAyMjksIDE1MiwgOCwgMywgMjI5LCAxNTEsIDgsIDMsIAorICAgIDIyOSwgMTU2LCA4LCAzLCAyMjksIDE1NSwgOCwgMywgMjI5LCAxNTMsIDgsIDMsIDIyOSwgMTU0LCA4LCAzLCAyNDEsIDExMCwgCisgICAgOCwgMywgMjQxLCAxMDksIDgsIDMsIDI0MSwgMTE1LCA4LCAzLCAyNDEsIDExMSwgOCwgMywgMjQxLCAxMTIsIDgsIDMsIAorICAgIDI0MSwgMTE0LCA4LCAzLCAyNDEsIDExMywgOCwgMywgMjQxLCAxMTgsIDgsIDMsIDI0MSwgMTE3LCA4LCAzLCAyNDEsIDEyMCwgCisgICAgOCwgMywgMjQxLCAxMTksIDgsIDMsIDI0MSwgMTAxLCA4LCAzLCAyNDEsIDEwMywgOCwgMywgMjQxLCAxMDIsIDgsIDMsIAorICAgIDI0MSwgMTA2LCA4LCAzLCAyNDEsIDEwNSwgOCwgMywgMjQxLCAxMDgsIDgsIDMsIDI0MSwgMTA3LCA4LCAzLCAyNDEsIDk3LCAKKyAgICA4LCAzLCAyNDEsIDk2LCA4LCAzLCAyNDEsIDEwNCwgOCwgMywgMjQxLCAxMDAsIDgsIDMsIDI0MSwgOTgsIDgsIDMsIDI0MSwgCisgICAgOTksIDgsIDMsIDI0MSwgOTEsIDgsIDMsIDI0MSwgOTUsIDgsIDMsIDI0MSwgOTQsIDgsIDMsIDI0MSwgOTIsIDgsIDMsIAorICAgIDI0MSwgOTMsIDgsIDMsIDIzMCwgMTcyLCA4LCAzLCAyMzAsIDE3MSwgOCwgMywgMjMwLCAyMzAsIDgsIDMsIDIzMCwgMTc4LCAKKyAgICA4LCAzLCAyMzAsIDIwMywgOCwgMywgMjMwLCAyMjEsIDgsIDMsIDIzMCwgMjE5LCA4LCAzLCAyMzEsIDEzOSwgOCwgMywgCisgICAgMjMxLCAxMzQsIDgsIDMsIDE4NCwgOCwgMywgMjMxLCAxNzIsIDgsIDMsIDIzMCwgNzQsIDgsIDMsIDIzMCwgNzMsIDgsIDMsIAorICAgIDIzMCwgNzcsIDgsIDMsIDIzMCwgNzUsIDgsIDMsIDIzMCwgMTIxLCA4LCAzLCAyMzAsIDEwNywgOCwgMywgMjMwLCAxNjEsIAorICAgIDgsIDMsIDIzMCwgMTI2LCA4LCAzLCAyMzEsIDI2LCA4LCAzLCAyMzEsIDkxLCA4LCAzLCAyMzAsIDU1LCA4LCAzLCAyMzAsIAorICAgIDUxLCA4LCAzLCAyMzAsIDEwMiwgOCwgMywgMjMwLCA3MCwgOCwgMywgMjMwLCA2MywgOCwgMywgMjMwLCA2OCwgOCwgMywgCisgICAgMjMwLCAyOCwgOCwgMywgMjMwLCAyNywgOCwgMywgMjMwLCAzMywgOCwgMywgMjMwLCAzMCwgOCwgMywgMjQ0LCA4MywgOCwgCisgICAgMywgMjQ0LCA3OCwgOCwgMywgMjQ0LCAxMjEsIDgsIDMsIDI0NCwgOTgsIDgsIDMsIDI0NCwgMTY3LCA4LCAzLCAyNDQsIAorICAgIDE1OCwgOCwgMywgMjQ0LCAxOTYsIDgsIDMsIDI0NCwgMTcwLCA4LCAzLCAyNDQsIDMsIDgsIDMsIDI0NCwgNDMsIDgsIDMsIAorICAgIDI0NCwgMjcsIDgsIDMsIDI0MywgMjE4LCA4LCAzLCAyNDMsIDIxNywgOCwgMywgMjQzLCAyMzQsIDgsIDMsIDI0MywgMjIzLCAKKyAgICA4LCAzLCAyNDMsIDIyMSwgOCwgMywgMjQzLCAyMjIsIDgsIDMsIDI0MywgMjA1LCA4LCAzLCAyNDMsIDIwNCwgOCwgMywgCisgICAgMjQzLCAyMDgsIDgsIDMsIDI0MywgMjA2LCA4LCAzLCAyMTMsIDE0NCwgOCwgMywgMjEzLCAxMzksIDgsIDMsIDIxMywgMTc2LCAKKyAgICA4LCAzLCAyMTMsIDE1MywgOCwgMywgMjEzLCAxNjYsIDgsIDMsIDIxMywgMTYzLCA4LCAzLCAyMTMsIDE2OCwgOCwgMywgCisgICAgMjEzLCAxNjcsIDgsIDMsIDIxNCwgNywgOCwgMywgMjE0LCAyLCA4LCAzLCAyMTQsIDI3LCA4LCAzLCAyMTQsIDE4LCA4LCAzLCAKKyAgICAyMTMsIDEyNSwgOCwgMywgMjEzLCAxMjEsIDgsIDMsIDIxMywgMTM4LCA4LCAzLCAyMTMsIDEyNiwgOCwgMywgMjEzLCAxNzgsIAorICAgIDgsIDMsIDIxMywgMjQ0LCA4LCAzLCAyMTIsIDExMCwgOCwgMywgMjEyLCAxMDgsIDgsIDMsIDIxMiwgMTE2LCA4LCAzLCAKKyAgICAyMTIsIDExMywgOCwgMywgMjEyLCAxMTEsIDgsIDMsIDIxMiwgMTEyLCA4LCAzLCAyMTIsIDEwMiwgOCwgMywgMjEyLCAxMDEsIAorICAgIDgsIDMsIDIxMiwgMTA2LCA4LCAzLCAyMTIsIDEwNSwgOCwgMywgMjEyLCAxMDMsIDgsIDMsIDIxMiwgMTA0LCA4LCAzLCAKKyAgICAyNDcsIDE3OCwgOCwgMywgMjQ3LCAxNjYsIDgsIDMsIDI0OCwgMywgOCwgMywgMjQ3LCAyMDMsIDgsIDMsIDI0NywgMjM2LCAKKyAgICA4LCAzLCAyNDcsIDI0MCwgOCwgMywgMjQ3LCAyMzksIDgsIDMsIDI0OCwgMTUyLCA4LCAzLCAyNDgsIDE0NywgOCwgMywgCisgICAgMjQ4LCAyMjEsIDgsIDMsIDI0OCwgMTcyLCA4LCAzLCAyNDYsIDYyLCA4LCAzLCAyNDYsIDYzLCA4LCAzLCAyNDcsIDEyMCwgCisgICAgOCwgMywgMjQ2LCAxMDIsIDgsIDMsIDI0NywgMTQ1LCA4LCAzLCAyNDcsIDEyMiwgOCwgMywgMjQ4LCAzMCwgOCwgMywgMjQ4LCAKKyAgICA5MCwgOCwgMywgMjQ4LCA0NSwgOCwgMywgMjQ2LCA1MywgOCwgMywgMjQ2LCA1MSwgOCwgMywgMjQ2LCA3OCwgOCwgMywgCisgICAgMjQ2LCA2MSwgOCwgMywgMjQ2LCA1NiwgOCwgMywgMjQ2LCA1OSwgOCwgMywgMjE2LCA2NywgOCwgMywgMjE2LCA2MSwgOCwgCisgICAgMywgMjE2LCAxMTcsIDgsIDMsIDIxNiwgNzYsIDgsIDMsIDIxNiwgMTA5LCA4LCAzLCAyMTYsIDExMSwgOCwgMywgMjE2LCAKKyAgICAxMTAsIDgsIDMsIDIxNywgNDYsIDgsIDMsIDIxNywgMzMsIDgsIDMsIDIxNywgMTA1LCA4LCAzLCAyMTcsIDU0LCA4LCAzLCAKKyAgICAyMTUsIDEwMiwgOCwgMywgMjE1LCAxMDEsIDgsIDMsIDIxNSwgMTA0LCA4LCAzLCAyMTUsIDEwMywgOCwgMywgMjE2LCA1LCAKKyAgICA4LCAzLCAyMTYsIDEsIDgsIDMsIDExMSwgOCwgMywgMjE2LCAxMywgOCwgMywgMjE2LCAyMTMsIDgsIDMsIDIxNywgMjIsIDgsIAorICAgIDMsIDIxNiwgMjM3LCA4LCAzLCAyMTUsIDg4LCA4LCAzLCAyMTUsIDgzLCA4LCAzLCAyMTUsIDExOCwgOCwgMywgMjE1LCAKKyAgICAxMDAsIDgsIDMsIDIxNSwgODksIDgsIDMsIDIxNSwgOTgsIDgsIDMsIDI0OCwgMTA3LCA4LCAzLCAyNDgsIDEwNiwgOCwgMywgCisgICAgMjQ4LCAxMTIsIDgsIDMsIDI0OCwgMTA4LCA4LCAzLCAyNDgsIDEwOSwgOCwgMywgMjQ4LCAxMTEsIDgsIDMsIDI0OCwgMTEwLCAKKyAgICA4LCAzLCAyNDgsIDEyOCwgOCwgMywgMjQ4LCAxMjcsIDgsIDMsIDI0OCwgMTM1LCA4LCAzLCAyNDgsIDEyOSwgOCwgMywgCisgICAgMjQ4LCA5NywgOCwgMywgMjQ4LCA5OSwgOCwgMywgMjQ4LCA5OCwgOCwgMywgMjQ4LCAxMDIsIDgsIDMsIDI0OCwgMTAxLCA4LCAKKyAgICAzLCAyNDgsIDEwNSwgOCwgMywgMjQ4LCAxMDMsIDgsIDMsIDI0OCwgMTIwLCA4LCAzLCAyNDgsIDEyMywgOCwgMywgMjQ4LCAKKyAgICAxMjEsIDgsIDMsIDI0OCwgOTMsIDgsIDMsIDI0OCwgOTIsIDgsIDMsIDI0OCwgMTAwLCA4LCAzLCAyNDgsIDk2LCA4LCAzLCAKKyAgICAyNDgsIDk0LCA4LCAzLCAyNDgsIDk1LCA4LCAzLCAyMjksIDEyNiwgOCwgMywgMjI5LCAxMjUsIDgsIDMsIDIyOSwgMTMzLCAKKyAgICA4LCAzLCAyMjksIDEyOCwgOCwgMywgMjI5LCAxMjksIDgsIDMsIDIyOSwgMTMwLCA4LCAzLCAyMjksIDE0MiwgOCwgMywgCisgICAgMjI5LCAxNDEsIDgsIDMsIDIyOSwgMTQ4LCA4LCAzLCAyMjksIDE0MywgOCwgMywgMjI5LCAxMTgsIDgsIDMsIDIyOSwgMTE3LCAKKyAgICA4LCAzLCAyMjksIDEyNCwgOCwgMywgMjI5LCAxMTksIDgsIDMsIDIyOSwgMTM0LCA4LCAzLCAyMjksIDE0MCwgOCwgMywgCisgICAgMjI5LCAxMzgsIDgsIDMsIDIyOSwgMTEwLCA4LCAzLCAyMjksIDEwOSwgOCwgMywgMjI5LCAxMTUsIDgsIDMsIDIyOSwgMTEzLCAKKyAgICA4LCAzLCAyMjksIDExMSwgOCwgMywgMjI5LCAxMTIsIDgsIDMsIDI0MSwgNzcsIDgsIDMsIDI0MSwgNzYsIDgsIDMsIDI0MSwgCisgICAgODMsIDgsIDMsIDI0MSwgNzgsIDgsIDMsIDI0MSwgODAsIDgsIDMsIDI0MSwgNzksIDgsIDMsIDI0MSwgODIsIDgsIDMsIAorICAgIDI0MSwgODEsIDgsIDMsIDI0MSwgODgsIDgsIDMsIDI0MSwgODcsIDgsIDMsIDI0MSwgOTAsIDgsIDMsIDI0MSwgODksIDgsIAorICAgIDMsIDI0MSwgNzEsIDgsIDMsIDI0MSwgNzIsIDgsIDMsIDI0MSwgNzQsIDgsIDMsIDI0MSwgNzMsIDgsIDMsIDI0MSwgNzUsIAorICAgIDgsIDMsIDI0MSwgODQsIDgsIDMsIDI0MSwgODYsIDgsIDMsIDI0MSwgODUsIDgsIDMsIDI0MSwgNzAsIDgsIDMsIDIyOCwgCisgICAgMTg5LCA4LCAzLCAyMjgsIDE4NywgOCwgMywgMjI4LCAyMzMsIDgsIDMsIDIyOCwgMTkyLCA4LCAzLCAyMjgsIDIxNSwgOCwgCisgICAgMywgMjI4LCAyMjksIDgsIDMsIDIyOCwgMjI4LCA4LCAzLCAyMjksIDE4MywgOCwgMywgMTk3LCA4LCAzLCAyMjksIDE5NywgCisgICAgOCwgMywgMjI3LCAxODYsIDgsIDMsIDIyNywgMTg4LCA4LCAzLCAyMjcsIDE4NywgOCwgMywgMjI4LCA1MSwgOCwgMywgMjI4LCAKKyAgICAzOCwgOCwgMywgMjI4LCA3NCwgOCwgMywgMjI4LCA2MCwgOCwgMywgMjI5LCA4MywgOCwgMywgMjI5LCAxMDcsIDgsIDMsIAorICAgIDIyOSwgOTQsIDgsIDMsIDIyNywgMTgxLCA4LCAzLCAyMjcsIDE3NywgOCwgMywgMjI3LCAyMzcsIDgsIDMsIDIyNywgMTg1LCAKKyAgICA4LCAzLCAyMjcsIDE4MywgOCwgMywgMjI3LCAxODQsIDgsIDMsIDI0MSwgMTQxLCA4LCAzLCAyNDEsIDE0MCwgOCwgMywgCisgICAgMjQxLCAxNDYsIDgsIDMsIDI0MSwgMTQyLCA4LCAzLCAyNDEsIDE0MywgOCwgMywgMjQxLCAxNDUsIDgsIDMsIDI0MSwgMTQ0LCAKKyAgICA4LCAzLCAyNDEsIDE1MSwgOCwgMywgMjQxLCAxNTAsIDgsIDMsIDI0MSwgMTUzLCA4LCAzLCAyNDEsIDE1MiwgOCwgMywgCisgICAgMjQxLCAxMzMsIDgsIDMsIDI0MSwgMTM1LCA4LCAzLCAyNDEsIDEzNCwgOCwgMywgMjQxLCAxMzcsIDgsIDMsIDI0MSwgMTM5LCAKKyAgICA4LCAzLCAyNDEsIDEzOCwgOCwgMywgMjQxLCAxNDcsIDgsIDMsIDI0MSwgMTQ5LCA4LCAzLCAyNDEsIDE0OCwgOCwgMywgCisgICAgMjQxLCAxMjksIDgsIDMsIDI0MSwgMTI4LCA4LCAzLCAyNDEsIDEzNiwgOCwgMywgMjQxLCAxMzIsIDgsIDMsIDI0MSwgMTMwLCAKKyAgICA4LCAzLCAyNDEsIDEzMSwgOCwgMywgMjQxLCAxMjMsIDgsIDMsIDI0MSwgMTIyLCA4LCAzLCAyNDEsIDEyNywgOCwgMywgCisgICAgMjQxLCAxMjYsIDgsIDMsIDI0MSwgMTI0LCA4LCAzLCAyNDEsIDEyNSwgOCwgMywgMjMyLCAxOTUsIDgsIDMsIDIzMiwgMTg5LCAKKyAgICA4LCAzLCAyMzIsIDI0MSwgOCwgMywgMjMyLCAyMDIsIDgsIDMsIDIzMiwgMjMzLCA4LCAzLCAyMzIsIDIzMiwgOCwgMywgCisgICAgMjMyLCAyMzYsIDgsIDMsIDIzMiwgMjM0LCA4LCAzLCAyMzMsIDc5LCA4LCAzLCAyMzMsIDY5LCA4LCAzLCAyMzMsIDEzNSwgCisgICAgOCwgMywgMjMzLCA4OCwgOCwgMywgMjMyLCA3OSwgOCwgMywgMjMyLCA3OCwgOCwgMywgMjMyLCA4MSwgOCwgMywgMjMyLCAKKyAgICA4MCwgOCwgMywgMjMyLCAxMTYsIDgsIDMsIDIzMiwgMTA2LCA4LCAzLCAyMzIsIDE1NiwgOCwgMywgMjMyLCAxMjAsIDgsIDMsIAorICAgIDIzMywgMiwgOCwgMywgMjMzLCA1OCwgOCwgMywgMjMzLCAxNywgOCwgMywgMjMyLCA3NCwgOCwgMywgMjMyLCA3MiwgOCwgMywgCisgICAgMjMyLCA5OCwgOCwgMywgMjMyLCA3NywgOCwgMywgMjMyLCA3NSwgOCwgMywgMjMyLCA3NiwgOCwgMywgMjMyLCA1NCwgOCwgCisgICAgMywgMjMyLCA1MywgOCwgMywgMjMyLCA2MiwgOCwgMywgMjMyLCA1NywgOCwgMywgMjMyLCA1NSwgOCwgMywgMjMyLCA1NiwgCisgICAgOCwgMywgMjQyLCAxODksIDgsIDMsIDI0MiwgMTg4LCA4LCAzLCAyNDIsIDIxNCwgOCwgMywgMjQyLCAxOTksIDgsIDMsIAorICAgIDI0MiwgMjA2LCA4LCAzLCAyNDIsIDIwNSwgOCwgMywgMjQyLCAyMDgsIDgsIDMsIDI0MiwgMjA3LCA4LCAzLCAyNDMsIDg5LCAKKyAgICA4LCAzLCAyNDMsIDg0LCA4LCAzLCAyNDMsIDEzNSwgOCwgMywgMjQzLCA5OSwgOCwgMywgMjQyLCA5MSwgOCwgMywgMjQyLCAKKyAgICA5MCwgOCwgMywgMjQyLCA5MywgOCwgMywgMjQyLCA5MiwgOCwgMywgMjQyLCAxNTQsIDgsIDMsIDI0MiwgMTUyLCA4LCAzLCAKKyAgICAyNDIsIDE3NCwgOCwgMywgMjQyLCAxNjIsIDgsIDMsIDI0MywgMzMsIDgsIDMsIDI0MywgMzEsIDgsIDMsIDI0MywgNjIsIDgsIAorICAgIDMsIDI0MywgNDQsIDgsIDMsIDI0MiwgODEsIDgsIDMsIDI0MiwgODAsIDgsIDMsIDI0MiwgMTEzLCA4LCAzLCAyNDIsIDg5LCAKKyAgICA4LCAzLCAyNDIsIDgyLCA4LCAzLCAyNDIsIDg4LCA4LCAzLCAyMzQsIDYxLCA4LCAzLCAyMzQsIDYwLCA4LCAzLCAyMzQsIAorICAgIDkyLCA4LCAzLCAyMzQsIDc1LCA4LCAzLCAyMzQsIDg1LCA4LCAzLCAyMzQsIDg4LCA4LCAzLCAyMzQsIDg2LCA4LCAzLCAKKyAgICAyMzQsIDIwMiwgOCwgMywgMjM0LCAxOTAsIDgsIDMsIDE3NiwgOCwgMywgMjM0LCAyMjgsIDgsIDMsIDIzMywgMjAwLCA4LCAKKyAgICAzLCAyMzMsIDIwNSwgOCwgMywgMjMzLCAyMDIsIDgsIDMsIDIzNCwgMCwgOCwgMywgMjMzLCAyNTIsIDgsIDMsIDIzNCwgMjgsIAorICAgIDgsIDMsIDIzNCwgNywgOCwgMywgMjM0LCAxNTYsIDgsIDMsIDIzNCwgMTQwLCA4LCAzLCAyMzQsIDE4MiwgOCwgMywgMjM0LCAKKyAgICAxNTksIDgsIDMsIDIzMywgMTg5LCA4LCAzLCAyMzMsIDE4NiwgOCwgMywgMjMzLCAyMTcsIDgsIDMsIDIzMywgMTk5LCA4LCAKKyAgICAzLCAyMzMsIDE5MiwgOCwgMywgMjMzLCAxOTYsIDgsIDMsIDI0MywgMTUsIDgsIDMsIDI0MywgMTQsIDgsIDMsIDI0MywgMTksIAorICAgIDgsIDMsIDI0MywgMTYsIDgsIDMsIDI0MywgMTgsIDgsIDMsIDI0MywgMTcsIDgsIDMsIDI0MywgMjYsIDgsIDMsIDI0MywgCisgICAgMjUsIDgsIDMsIDI0MywgMjksIDgsIDMsIDI0MywgMjcsIDgsIDMsIDI0MywgNiwgOCwgMywgMjQzLCA1LCA4LCAzLCAyNDMsIAorICAgIDgsIDgsIDMsIDI0MywgNywgOCwgMywgMjQzLCAxMSwgOCwgMywgMjQzLCAxMCwgOCwgMywgMjQzLCAxMywgOCwgMywgMjQzLCAKKyAgICAxMiwgOCwgMywgMjQzLCAyMSwgOCwgMywgMjQzLCAyMCwgOCwgMywgMjQzLCAyNCwgOCwgMywgMjQzLCAyMiwgOCwgMywgCisgICAgMjQzLCAxLCA4LCAzLCAyNDMsIDAsIDgsIDMsIDI0MywgOSwgOCwgMywgMjQzLCA0LCA4LCAzLCAyNDMsIDIsIDgsIDMsIAorICAgIDI0MywgMywgOCwgMywgMjMwLCAyNDksIDgsIDMsIDIzMCwgMjUwLCA4LCAzLCAyMzEsIDEyLCA4LCAzLCAyMzEsIDExLCA4LCAKKyAgICAzLCAyMzEsIDE0LCA4LCAzLCAyMzEsIDEzLCA4LCAzLCAyMzAsIDI0MCwgOCwgMywgMjMwLCAyNDIsIDgsIDMsIDIzMCwgCisgICAgMjQxLCA4LCAzLCAyMzAsIDI0NSwgOCwgMywgMjMwLCAyNDQsIDgsIDMsIDIzMCwgMjQ3LCA4LCAzLCAyMzAsIDI0NiwgOCwgCisgICAgMywgMjMwLCAyNTEsIDgsIDMsIDIzMCwgMjUzLCA4LCAzLCAyMzAsIDI1MiwgOCwgMywgMjMwLCAyMzYsIDgsIDMsIDIzMCwgCisgICAgMjM1LCA4LCAzLCAyMzAsIDI0MywgOCwgMywgMjMwLCAyMzksIDgsIDMsIDIzMCwgMjM3LCA4LCAzLCAyMzAsIDIzOCwgOCwgCisgICAgMywgMjQwLCAxODAsIDgsIDMsIDI0MCwgMTc5LCA4LCAzLCAyNDAsIDE4NiwgOCwgMywgMjQwLCAxODEsIDgsIDMsIDI0MCwgCisgICAgMTgzLCA4LCAzLCAyNDAsIDE4MiwgOCwgMywgMjQwLCAxODUsIDgsIDMsIDI0MCwgMTg0LCA4LCAzLCAyNDAsIDE5MSwgOCwgCisgICAgMywgMjQwLCAxOTAsIDgsIDMsIDI0MCwgMTkzLCA4LCAzLCAyNDAsIDE5MiwgOCwgMywgMjQwLCAxNzIsIDgsIDMsIDI0MCwgCisgICAgMTcxLCA4LCAzLCAyNDAsIDE3NCwgOCwgMywgMjQwLCAxNzMsIDgsIDMsIDI0MCwgMTc2LCA4LCAzLCAyNDAsIDE3NSwgOCwgCisgICAgMywgMjQwLCAxNzgsIDgsIDMsIDI0MCwgMTc3LCA4LCAzLCAyNDAsIDE4NywgOCwgMywgMjQwLCAxODksIDgsIDMsIDI0MCwgCisgICAgMTg4LCA4LCAzLCAyMjksIDI0LCA4LCAzLCAyMjksIDI2LCA4LCAzLCAyMjksIDI1LCA4LCAzLCAyMjksIDY3LCA4LCAzLCAKKyAgICAyMjksIDY1LCA4LCAzLCAyMjksIDc3LCA4LCAzLCAyMjksIDcwLCA4LCAzLCAyMjgsIDI0MywgOCwgMywgMjI4LCAyNDIsIDgsIAorICAgIDMsIDIyOCwgMjQ0LCA4LCAzLCAyMjgsIDI1MiwgOCwgMywgMjI4LCAyNDksIDgsIDMsIDIyOSwgNCwgOCwgMywgMjI4LCAKKyAgICAyNTQsIDgsIDMsIDIyOSwgNTgsIDgsIDMsIDIyOSwgNjQsIDgsIDMsIDIyOSwgNjAsIDgsIDMsIDI0MSwgMTU2LCA4LCAzLCAKKyAgICAyNDEsIDE2NiwgOCwgMywgMjQxLCAxNzUsIDgsIDMsIDI0MSwgMjUxLCA4LCAzLCAyNDEsIDI0MywgOCwgMywgMTYyLCA4LCAKKyAgICAzLCAyNDIsIDYsIDgsIDMsIDI0MCwgMjA2LCA4LCAzLCAyNDAsIDIwNSwgOCwgMywgMjQwLCAyMDgsIDgsIDMsIDI0MCwgCisgICAgMjA3LCA4LCAzLCAyNDAsIDI0MiwgOCwgMywgMjQwLCAyMzMsIDgsIDMsIDI0MSwgNjgsIDgsIDMsIDI0MSwgNDcsIDgsIDMsIAorICAgIDI0MSwgMTk0LCA4LCAzLCAyNDEsIDIzOCwgOCwgMywgMjQxLCAyMDYsIDgsIDMsIDIxMiwgNDMsIDgsIDMsIDIxMiwgMjgsIAorICAgIDgsIDMsIDIxMiwgNjUsIDgsIDMsIDIxMiwgNTEsIDgsIDMsIDIxMSwgMTg1LCA4LCAzLCAyMTEsIDE4NywgOCwgMywgMjExLCAKKyAgICAxODYsIDgsIDMsIDIxMSwgMjAzLCA4LCAzLCAyMTEsIDIyNywgOCwgMywgMjExLCAyMTAsIDgsIDMsIDIxMiwgNSwgOCwgMywgCisgICAgMjEyLCAyMiwgOCwgMywgMjEyLCAxMCwgOCwgMywgMjEwLCAzMCwgOCwgMywgMjEwLCAyOSwgOCwgMywgMjEwLCA0NCwgOCwgCisgICAgMywgMjEwLCAzMiwgOCwgMywgMjEwLCAzNywgOCwgMywgMjEwLCAzOSwgOCwgMywgMjEwLCAzOCwgOCwgMywgMjEwLCAxMDIsIAorICAgIDgsIDMsIDIxMCwgOTksIDgsIDMsIDIxMCwgMTE2LCA4LCAzLCAyMTAsIDEwNSwgOCwgMywgMjEwLCA2LCA4LCAzLCAyMTAsIAorICAgIDgsIDgsIDMsIDIxMCwgNywgOCwgMywgMjEwLCAxOSwgOCwgMywgMjEwLCAxOCwgOCwgMywgMjEwLCAyMywgOCwgMywgMjEwLCAKKyAgICAyMCwgOCwgMywgMjEwLCA4NCwgOCwgMywgMjEwLCA5NCwgOCwgMywgMjEwLCA4OCwgOCwgMywgMjEwLCAyLCA4LCAzLCAyMTAsIAorICAgIDEsIDgsIDMsIDIxMCwgMTMsIDgsIDMsIDIxMCwgNSwgOCwgMywgMjEwLCAzLCA4LCAzLCAyMTAsIDQsIDgsIDMsIDIwOSwgCisgICAgMjQ1LCA4LCAzLCAyMDksIDI0NCwgOCwgMywgMjA5LCAyNTAsIDgsIDMsIDIwOSwgMjQ4LCA4LCAzLCAyMDksIDI0NiwgOCwgCisgICAgMywgMjA5LCAyNDcsIDgsIDMsIDI1MCwgMjgsIDgsIDMsIDI1MCwgMjQsIDgsIDMsIDI1MCwgNTEsIDgsIDMsIDI1MCwgMzcsIAorICAgIDgsIDMsIDI1MCwgNDgsIDgsIDMsIDI1MCwgNDIsIDgsIDMsIDI1MCwgNTAsIDgsIDMsIDI1MCwgNDksIDgsIDMsIDI1MCwgCisgICAgMjI0LCA4LCAzLCAyNTAsIDIxNywgOCwgMywgMjUxLCAzMywgOCwgMywgMjUwLCAyNTEsIDgsIDMsIDI0OSwgMTA0LCA4LCAzLCAKKyAgICAyNDksIDEwNiwgOCwgMywgMjQ5LCAxMDUsIDgsIDMsIDI0OSwgMTUzLCA4LCAzLCAyNDksIDE0NCwgOCwgMywgMjQ5LCAyMzgsIAorICAgIDgsIDMsIDI0OSwgMTY5LCA4LCAzLCAyNTAsIDE2MCwgOCwgMywgMjUwLCAxOTAsIDgsIDMsIDI1MCwgMTY1LCA4LCAzLCAKKyAgICAyNDksIDg0LCA4LCAzLCAyNDksIDgyLCA4LCAzLCAyNDksIDExMiwgOCwgMywgMjQ5LCAxMDIsIDgsIDMsIDI0OSwgODksIDgsIAorICAgIDMsIDI0OSwgMTAxLCA4LCAzLCAyNDksIDYzLCA4LCAzLCAyNDksIDYyLCA4LCAzLCAyNDksIDczLCA4LCAzLCAyNDksIDY5LCAKKyAgICA4LCAzLCAyNDksIDY0LCA4LCAzLCAyNDksIDY2LCA4LCAzLCAyMDksIDIyOCwgOCwgMywgMjA5LCAyMjcsIDgsIDMsIDIwOSwgCisgICAgMjM0LCA4LCAzLCAyMDksIDIyOSwgOCwgMywgMjA5LCAyMzEsIDgsIDMsIDIwOSwgMjMwLCA4LCAzLCAyMDksIDIzMywgOCwgCisgICAgMywgMjA5LCAyMzIsIDgsIDMsIDIwOSwgMjQwLCA4LCAzLCAyMDksIDIzOSwgOCwgMywgMjA5LCAyNDMsIDgsIDMsIDIwOSwgCisgICAgMjQxLCA4LCAzLCAyMDksIDIyNCwgOCwgMywgMjA5LCAyMjYsIDgsIDMsIDIwOSwgMjI1LCA4LCAzLCAyMDksIDIzNSwgOCwgCisgICAgMywgMjA5LCAyMzgsIDgsIDMsIDIwOSwgMjM2LCA4LCAzLCAyMDksIDIxNywgOCwgMywgMjA5LCAyMjEsIDgsIDMsIDIwOSwgCisgICAgMjIwLCA4LCAzLCAyMDksIDIxOCwgOCwgMywgMjA5LCAyMTksIDgsIDMsIDIwOSwgMjExLCA4LCAzLCAyMDksIDIxMCwgOCwgCisgICAgMywgMjA5LCAyMTYsIDgsIDMsIDIwOSwgMjE0LCA4LCAzLCAyMDksIDIxMiwgOCwgMywgMjA5LCAyMTMsIDgsIDMsIDIyNywgCisgICAgMTA0LCA4LCAzLCAyMjcsIDEwMywgOCwgMywgMjI3LCAxMDksIDgsIDMsIDIyNywgMTA1LCA4LCAzLCAyMjcsIDEwNiwgOCwgCisgICAgMywgMjI3LCAxMDgsIDgsIDMsIDIyNywgMTA3LCA4LCAzLCAyMjcsIDExNCwgOCwgMywgMjI3LCAxMTMsIDgsIDMsIDIyNywgCisgICAgMTE3LCA4LCAzLCAyMjcsIDExNiwgOCwgMywgMjI3LCA5NywgOCwgMywgMjI3LCA5OCwgOCwgMywgMjI3LCAxMDEsIDgsIDMsIAorICAgIDIyNywgMTAyLCA4LCAzLCAyMjcsIDExMCwgOCwgMywgMjI3LCAxMTIsIDgsIDMsIDIyNywgOTIsIDgsIDMsIDIyNywgMTAwLCAKKyAgICA4LCAzLCAyMjcsIDk2LCA4LCAzLCAyMjcsIDkzLCA4LCAzLCAyMjcsIDk0LCA4LCAzLCAyMjcsIDg3LCA4LCAzLCAyMjcsIAorICAgIDg2LCA4LCAzLCAyMjcsIDkxLCA4LCAzLCAyMjcsIDkwLCA4LCAzLCAyMjcsIDg4LCA4LCAzLCAyMjcsIDg5LCA4LCAzLCAKKyAgICAyMTksIDEyNywgOCwgMywgMTk0LCA4LCAzLCAyMTksIDE5MSwgOCwgMywgMjE5LCAxMzAsIDgsIDMsIDIxOSwgMTgzLCA4LCAKKyAgICAzLCAyMTksIDE4NiwgOCwgMywgMjE5LCAxODQsIDgsIDMsIDIyMSwgMjI2LCA4LCAzLCAyMjEsIDIxNCwgOCwgMywgMjA2LCAKKyAgICA4LCAzLCAyMjEsIDIzNCwgOCwgMywgMjE4LCAyOCwgOCwgMywgMjE4LCAzMCwgOCwgMywgMjE4LCAyOSwgOCwgMywgMjE5LCAKKyAgICAzNCwgOCwgMywgMjE5LCAyMywgOCwgMywgMjE5LCA1OCwgOCwgMywgMjE5LCAzOCwgOCwgMywgMjIwLCAxMTQsIDgsIDMsIAorICAgIDIyMSwgMTgxLCA4LCAzLCAyMjAsIDEzOSwgOCwgMywgMjE4LCA1LCA4LCAzLCAyMTgsIDMsIDgsIDMsIDIxOCwgODMsIDgsIAorICAgIDMsIDIxOCwgMjcsIDgsIDMsIDIxOCwgOSwgOCwgMywgMjE4LCAxNywgOCwgMywgMjE3LCAxNjYsIDgsIDMsIDIxNywgMTY1LCAKKyAgICA4LCAzLCAyMTcsIDIzMiwgOCwgMywgMjE3LCAxNzMsIDgsIDMsIDIxNywgMTY4LCA4LCAzLCAyMTcsIDE3MiwgOCwgMywgCisgICAgMjE4LCAxODYsIDgsIDMsIDIxOCwgMTg1LCA4LCAzLCAyMTgsIDE5MiwgOCwgMywgMjE4LCAxODcsIDgsIDMsIDIxOCwgMTg5LCAKKyAgICA4LCAzLCAyMTgsIDE5MSwgOCwgMywgMjE4LCAxOTAsIDgsIDMsIDIxOCwgMjAwLCA4LCAzLCAyMTgsIDE5OCwgOCwgMywgCisgICAgMjE4LCAyMjMsIDgsIDMsIDIxOCwgMjAxLCA4LCAzLCAyMTgsIDE4MSwgOCwgMywgMjE4LCAxODAsIDgsIDMsIDIxOCwgMTg0LCAKKyAgICA4LCAzLCAyMTgsIDE4MiwgOCwgMywgMjE4LCAxOTQsIDgsIDMsIDIxOCwgMTk3LCA4LCAzLCAyMTgsIDE5NSwgOCwgMywgCisgICAgMjE4LCAxNzcsIDgsIDMsIDIxOCwgMTc1LCA4LCAzLCAyMTgsIDE3OSwgOCwgMywgMjE4LCAxNzgsIDgsIDMsIDIxOCwgMTcwLCAKKyAgICA4LCAzLCAyMTgsIDE2OSwgOCwgMywgMjE4LCAxNzQsIDgsIDMsIDIxOCwgMTczLCA4LCAzLCAyMTgsIDE3MSwgOCwgMywgCisgICAgMjE4LCAxNzIsIDgsIDMsIDIxMCwgNzcsIDgsIDMsIDIxMCwgNzYsIDgsIDMsIDIxMCwgODIsIDgsIDMsIDIxMCwgNzksIDgsIAorICAgIDMsIDIxMCwgNTksIDgsIDMsIDIxMCwgNjEsIDgsIDMsIDIxMCwgNjAsIDgsIDMsIDIxMCwgNjQsIDgsIDMsIDIxMCwgNjMsIAorICAgIDgsIDMsIDIxMCwgNjcsIDgsIDMsIDIxMCwgNjUsIDgsIDMsIDIxMCwgNzEsIDgsIDMsIDIxMCwgNzAsIDgsIDMsIDIxMCwgCisgICAgNzQsIDgsIDMsIDIxMCwgNzIsIDgsIDMsIDIxMCwgNTUsIDgsIDMsIDIxMCwgNTQsIDgsIDMsIDIxMCwgNjIsIDgsIDMsIAorICAgIDIxMCwgNTgsIDgsIDMsIDIxMCwgNTYsIDgsIDMsIDIxMCwgNTcsIDgsIDMsIDIxMCwgNDcsIDgsIDMsIDIxMCwgNDYsIDgsIAorICAgIDMsIDIxMCwgNTEsIDgsIDMsIDIxMCwgNTAsIDgsIDMsIDIxMCwgNDgsIDgsIDMsIDIxMCwgNDksIDgsIDMsIDI1MCwgMTM2LCAKKyAgICA4LCAzLCAyNTAsIDEzMywgOCwgMywgMjUwLCAxNTcsIDgsIDMsIDI1MCwgMTQ0LCA4LCAzLCAyNTAsIDY1LCA4LCAzLCAyNTAsIAorICAgIDY0LCA4LCAzLCAyNTAsIDY3LCA4LCAzLCAyNTAsIDY2LCA4LCAzLCAyNTAsIDc5LCA4LCAzLCAyNTAsIDc4LCA4LCAzLCAKKyAgICAyNTAsIDg2LCA4LCAzLCAyNTAsIDgxLCA4LCAzLCAyNTAsIDExNSwgOCwgMywgMjUwLCAxMTMsIDgsIDMsIDI1MCwgMTMxLCAKKyAgICA4LCAzLCAyNTAsIDEyMSwgOCwgMywgMjUwLCA1OSwgOCwgMywgMjUwLCA2OSwgOCwgMywgMjUwLCA2MywgOCwgMywgMjUwLCAKKyAgICA2MCwgOCwgMywgMjUwLCA2MiwgOCwgMywgMjUwLCA1MywgOCwgMywgMjUwLCA1MiwgOCwgMywgMjUwLCA1NywgOCwgMywgCisgICAgMjUwLCA1NiwgOCwgMywgMjUwLCA1NCwgOCwgMywgMjUwLCA1NSwgOCwgMywgMjIyLCAxNzUsIDgsIDMsIDIyMiwgMTc5LCA4LCAKKyAgICAzLCAyMjIsIDE1OCwgOCwgMywgMjIyLCAxNTksIDgsIDMsIDIyMiwgMTYyLCA4LCAzLCAyMjIsIDE2MSwgOCwgMywgMjIyLCAKKyAgICAxNjUsIDgsIDMsIDIyMiwgMTYzLCA4LCAzLCAyMjIsIDE2OSwgOCwgMywgMjIyLCAxNjgsIDgsIDMsIDIyMiwgMTc0LCA4LCAKKyAgICAzLCAyMjIsIDE3MCwgOCwgMywgMjIyLCAxNTQsIDgsIDMsIDIyMiwgMTUyLCA4LCAzLCAyMjIsIDE2MCwgOCwgMywgMjIyLCAKKyAgICAxNTcsIDgsIDMsIDIyMiwgMTU1LCA4LCAzLCAyMjIsIDE1NiwgOCwgMywgMjIyLCAxNDcsIDgsIDMsIDIyMiwgMTQ2LCA4LCAKKyAgICAzLCAyMjIsIDE1MSwgOCwgMywgMjIyLCAxNTAsIDgsIDMsIDIyMiwgMTQ4LCA4LCAzLCAyMjIsIDE0OSwgOCwgMywgMjI4LCAKKyAgICAzNCwgOCwgMywgMjI4LCAzMywgOCwgMywgMjI4LCAzNiwgOCwgMywgMjI4LCAzNSwgOCwgMywgMjI4LCAyNiwgOCwgMywgCisgICAgMjI4LCAyOCwgOCwgMywgMjI4LCAyNywgOCwgMywgMjI4LCAzMCwgOCwgMywgMjI4LCAyOSwgOCwgMywgMjI4LCAzMiwgOCwgCisgICAgMywgMjI4LCAzMSwgOCwgMywgMjI4LCAyMSwgOCwgMywgMjI4LCAyMCwgOCwgMywgMjI4LCAyNSwgOCwgMywgMjI4LCAyNCwgCisgICAgOCwgMywgMjI4LCAyMiwgOCwgMywgMjI4LCAyMywgOCwgMywgMjI4LCAxNSwgOCwgMywgMjI4LCAxNCwgOCwgMywgMjI4LCAKKyAgICAxOSwgOCwgMywgMjI4LCAxOCwgOCwgMywgMjI4LCAxNiwgOCwgMywgMjI4LCAxNywgOCwgMywgMjIwLCA3MiwgOCwgMywgCisgICAgMjIwLCA2NywgOCwgMywgMjIwLCAxMDIsIDgsIDMsIDIyMCwgODMsIDgsIDMsIDIxOSwgMjE1LCA4LCAzLCAyMTksIDIxNywgCisgICAgOCwgMywgMjE5LCAyMTYsIDgsIDMsIDIxOSwgMjM2LCA4LCAzLCAyMTksIDIzMywgOCwgMywgMjIwLCA3LCA4LCAzLCAyMTksIAorICAgIDI1NCwgOCwgMywgMjIwLCA0MiwgOCwgMywgMjIwLCAzNSwgOCwgMywgMjIwLCA2MywgOCwgMywgMjIwLCA1MCwgOCwgMywgCisgICAgMjE5LCAyMTEsIDgsIDMsIDIxOSwgMjA5LCA4LCAzLCAyMTksIDIyNSwgOCwgMywgMjE5LCAyMTQsIDgsIDMsIDIxOSwgMjEyLCAKKyAgICA4LCAzLCAyMTksIDIxMywgOCwgMywgMjE5LCAxOTQsIDgsIDMsIDIxOSwgMTkzLCA4LCAzLCAyMTksIDIwMCwgOCwgMywgCisgICAgMjE5LCAxOTcsIDgsIDMsIDIxOSwgMTk1LCA4LCAzLCAyMTksIDE5NiwgOCwgMywgMjIzLCAxNDEsIDgsIDMsIDIyMywgMTM1LCAKKyAgICA4LCAzLCAyMDUsIDgsIDMsIDIyMywgMTQ3LCA4LCAzLCAyMjIsIDEyMCwgOCwgMywgMjIyLCAxMjIsIDgsIDMsIDIyMiwgCisgICAgMTIxLCA4LCAzLCAyMjIsIDE4OCwgOCwgMywgMjIyLCAxODEsIDgsIDMsIDIyMiwgMjExLCA4LCAzLCAyMjIsIDE5MiwgOCwgCisgICAgMywgMjIzLCA0MywgOCwgMywgMjIzLCAxMjgsIDgsIDMsIDIyMywgODEsIDgsIDMsIDIyMiwgMTEzLCA4LCAzLCAyMjIsIAorICAgIDExMCwgOCwgMywgMjIyLCAxNDAsIDgsIDMsIDIyMiwgMTE5LCA4LCAzLCAyMjIsIDExNSwgOCwgMywgMjIyLCAxMTYsIDgsIAorICAgIDMsIDIyMiwgOTUsIDgsIDMsIDIyMiwgOTQsIDgsIDMsIDIyMiwgMTAwLCA4LCAzLCAyMjIsIDk4LCA4LCAzLCAyMjIsIDk2LCAKKyAgICA4LCAzLCAyMjIsIDk3LCA4LCAzLCAyMzUsIDk4LCA4LCAzLCAyMzUsIDk3LCA4LCAzLCAyMzUsIDEwOCwgOCwgMywgMjM1LCAKKyAgICA5OSwgOCwgMywgMjM1LCAxMDQsIDgsIDMsIDIzNSwgMTAzLCA4LCAzLCAyMzUsIDEwNiwgOCwgMywgMjM1LCAxMDUsIDgsIDMsIAorICAgIDIzNSwgNDEsIDgsIDMsIDIzNSwgNDAsIDgsIDMsIDIzNSwgNDMsIDgsIDMsIDIzNSwgNDIsIDgsIDMsIDIzNSwgNTYsIDgsIAorICAgIDMsIDIzNSwgNTQsIDgsIDMsIDIzNSwgNjgsIDgsIDMsIDIzNSwgNTgsIDgsIDMsIDIzNSwgMzQsIDgsIDMsIDIzNSwgMzIsIAorICAgIDgsIDMsIDIzNSwgNTEsIDgsIDMsIDIzNSwgMzksIDgsIDMsIDIzNSwgMzYsIDgsIDMsIDIzNSwgMzcsIDgsIDMsIDIzNSwgCisgICAgMjYsIDgsIDMsIDIzNSwgMjUsIDgsIDMsIDIzNSwgMzAsIDgsIDMsIDIzNSwgMjksIDgsIDMsIDIzNSwgMjcsIDgsIDMsIAorICAgIDIzNSwgMjgsIDgsIDMsIDIyNCwgNDYsIDgsIDMsIDIyNCwgNDQsIDgsIDMsIDIyNCwgNTMsIDgsIDMsIDIyNCwgNDcsIDgsIAorICAgIDMsIDIyNCwgNTAsIDgsIDMsIDIyNCwgNDksIDgsIDMsIDIyNCwgNTIsIDgsIDMsIDIyNCwgNTEsIDgsIDMsIDIyMywgMjU1LCAKKyAgICA4LCAzLCAyMjMsIDI1MiwgOCwgMywgMjI0LCAxLCA4LCAzLCAyMjQsIDAsIDgsIDMsIDIyNCwgMzMsIDgsIDMsIDIyNCwgMzIsIAorICAgIDgsIDMsIDIyNCwgNDIsIDgsIDMsIDIyNCwgMzYsIDgsIDMsIDIyMywgMjQ3LCA4LCAzLCAyMjMsIDI0MywgOCwgMywgMjI0LCAKKyAgICAzMCwgOCwgMywgMjIzLCAyNTEsIDgsIDMsIDIyMywgMjQ5LCA4LCAzLCAyMjMsIDI1MCwgOCwgMywgMjIzLCAyMjcsIDgsIDMsIAorICAgIDIyMywgMjI1LCA4LCAzLCAyMjMsIDIzNywgOCwgMywgMjIzLCAyMzAsIDgsIDMsIDIyMywgMjI4LCA4LCAzLCAyMjMsIDIyOSwgCisgICAgOCwgMywgMjM1LCA4NywgOCwgMywgMjM1LCA4NiwgOCwgMywgMjM1LCA5MywgOCwgMywgMjM1LCA4OCwgOCwgMywgMjM1LCAKKyAgICA5MCwgOCwgMywgMjM1LCA4OSwgOCwgMywgMjM1LCA5MiwgOCwgMywgMjM1LCA5MSwgOCwgMywgMjM1LCA3OCwgOCwgMywgCisgICAgMjM1LCA4MCwgOCwgMywgMjM1LCA3OSwgOCwgMywgMjM1LCA4MywgOCwgMywgMjM1LCA4MiwgOCwgMywgMjM1LCA4NSwgOCwgCisgICAgMywgMjM1LCA4NCwgOCwgMywgMjM1LCA3NCwgOCwgMywgMjM1LCA3MywgOCwgMywgMjM1LCA4MSwgOCwgMywgMjM1LCA3NywgCisgICAgOCwgMywgMjM1LCA3NSwgOCwgMywgMjM1LCA3NiwgOCwgMywgMjM1LCA3MCwgOCwgMywgMjM1LCA2OSwgOCwgMywgMjM1LCAKKyAgICA3MiwgOCwgMywgMjM1LCA3MSwgOCwgMywgMjI4LCAxNjIsIDgsIDMsIDIyOCwgMTYxLCA4LCAzLCAyMjgsIDE2OSwgOCwgMywgCisgICAgMjI4LCAxNjMsIDgsIDMsIDIyOCwgMTY1LCA4LCAzLCAyMjgsIDE2NCwgOCwgMywgMjI4LCAxNjgsIDgsIDMsIDIyOCwgMTY2LCAKKyAgICA4LCAzLCAyMjgsIDE1MSwgOCwgMywgMjI4LCAxNTIsIDgsIDMsIDIyOCwgMTU3LCA4LCAzLCAyMjgsIDE1NiwgOCwgMywgCisgICAgMjI4LCAxNjAsIDgsIDMsIDIyOCwgMTU4LCA4LCAzLCAyMjgsIDE0NiwgOCwgMywgMjI4LCAxNTUsIDgsIDMsIDIyOCwgMTUwLCAKKyAgICA4LCAzLCAyMjgsIDE0NywgOCwgMywgMjI4LCAxNDgsIDgsIDMsIDIyOCwgMTQxLCA4LCAzLCAyMjgsIDE0MCwgOCwgMywgCisgICAgMjI4LCAxNDUsIDgsIDMsIDIyOCwgMTQ0LCA4LCAzLCAyMjgsIDE0MiwgOCwgMywgMjI4LCAxNDMsIDgsIDMsIDIyNywgMTM3LCAKKyAgICA4LCAzLCAyMjcsIDEzNiwgOCwgMywgMjI3LCAxNDgsIDgsIDMsIDIyNywgMTQxLCA4LCAzLCAyMjcsIDE0NSwgOCwgMywgCisgICAgMjI3LCAxNDQsIDgsIDMsIDIyNywgMTQ3LCA4LCAzLCAyMjcsIDE0NiwgOCwgMywgMjI3LCAxMjQsIDgsIDMsIDIyNywgMTI2LCAKKyAgICA4LCAzLCAyMjcsIDEyNSwgOCwgMywgMjI3LCAxMzAsIDgsIDMsIDIyNywgMTI5LCA4LCAzLCAyMjcsIDEzNCwgOCwgMywgCisgICAgMjI3LCAxMzEsIDgsIDMsIDIyNywgMTIyLCA4LCAzLCAyMjcsIDEyMCwgOCwgMywgMjI3LCAxMjgsIDgsIDMsIDIyNywgMTIzLCAKKyAgICA4LCAzLCAyMTEsIDE1MCwgOCwgMywgMjExLCAxNDksIDgsIDMsIDIxMSwgMTU3LCA4LCAzLCAyMTEsIDE1MiwgOCwgMywgCisgICAgMjExLCAxNTQsIDgsIDMsIDIxMSwgMTUzLCA4LCAzLCAyMTEsIDE1NiwgOCwgMywgMjExLCAxNTUsIDgsIDMsIDIxMSwgMTM5LCAKKyAgICA4LCAzLCAyMTEsIDE0MCwgOCwgMywgMjExLCAxNDQsIDgsIDMsIDIxMSwgMTQzLCA4LCAzLCAyMTEsIDE0OCwgOCwgMywgCisgICAgMjExLCAxNDYsIDgsIDMsIDIxMSwgMTIxLCA4LCAzLCAyMTEsIDExOSwgOCwgMywgMjExLCAxMzEsIDgsIDMsIDIxMSwgMTI0LCAKKyAgICA4LCAzLCAyMTEsIDEyMiwgOCwgMywgMjExLCAxMjMsIDgsIDMsIDIxMCwgMjUwLCA4LCAzLCAyMTAsIDI0OCwgOCwgMywgCisgICAgMjExLCA4LCA4LCAzLCAyMTAsIDI1MSwgOCwgMywgMjExLCAyLCA4LCAzLCAyMTEsIDEsIDgsIDMsIDIxMSwgNSwgOCwgMywgCisgICAgMjExLCAzLCA4LCAzLCAyMTAsIDE5MSwgOCwgMywgMjEwLCAxOTAsIDgsIDMsIDIxMCwgMTk0LCA4LCAzLCAyMTAsIDE5MiwgCisgICAgOCwgMywgMjEwLCAyMjQsIDgsIDMsIDIxMCwgMjIxLCA4LCAzLCAyMTAsIDI0NCwgOCwgMywgMjEwLCAyMjgsIDgsIDMsIAorICAgIDIxMCwgMTgyLCA4LCAzLCAyMTAsIDE3OCwgOCwgMywgMjEwLCAyMTIsIDgsIDMsIDIxMCwgMTg5LCA4LCAzLCAyMTAsIDE4NSwgCisgICAgOCwgMywgMjEwLCAxODYsIDgsIDMsIDIxMCwgMTYyLCA4LCAzLCAyMTAsIDE2MSwgOCwgMywgMjEwLCAxNjksIDgsIDMsIAorICAgIDIxMCwgMTY1LCA4LCAzLCAyMTAsIDE2MywgOCwgMywgMjEwLCAxNjQsIDgsIDM0LCAyMjQsIDMzLCA4LCAzNCwgMjMyLCAKKyAgICAyNDEsIDgsIDM0LCAyMzQsIDYxLCA4LCAzNCwgMjI3LCAxNDEsIDgsIDM0LCAyNDksIDY5LCA4LCAzNCwgMjE4LCAxOTIsIDgsIAorICAgIDM0LCAyNDMsIDEyLCA4LCAzNCwgMjQzLCA0NCwgOCwgMzQsIDIzMCwgMjMwLCA4LCAzNCwgMjQwLCAxODAsIDgsIDM0LCAKKyAgICAyMzIsIDU2LCA4LCAzNCwgMjUyLCA4MywgOCwgMzQsIDIzMCwgMTI2LCA4LCAzNCwgMjEwLCAyNDQsIDgsIDM0LCAyMjQsIAorICAgIDEyMSwgOCwgMzQsIDI0MCwgMTc0LCA4LCAzNCwgMjE3LCA0NiwgOCwgMzQsIDI0MywgMTM1LCA4LCAzNCwgMjEwLCA1LCA4LCAKKyAgICAzNCwgMjQ5LCA2MywgOCwgMzQsIDI0OCwgOTUsIDgsIDM0LCAyNTEsIDk4LCA4LCAzNCwgMjQzLCA4LCA4LCAzNCwgMjI3LCAKKyAgICAxMzEsIDgsIDM0LCAyMTUsIDExOCwgOCwgMzQsIDIyNiwgMTc1LCA4LCAzNCwgMjM1LCA3NCwgOCwgMzQsIDIxMCwgMTksIDgsIAorICAgIDM0LCAyMjQsIDEwMCwgOCwgMzQsIDI0MSwgMTA4LCA4LCAzNCwgMjEwLCAyNTAsIDgsIDM0LCAyMTIsIDExMiwgOCwgMzQsIAorICAgIDIxOSwgMjAwLCA4LCAzNCwgMjEzLCAyNDQsIDgsIDM0LCAyMTAsIDExNiwgOCwgMzQsIDIzNSwgNjgsIDgsIDM0LCAyMjcsIAorICAgIDk2LCA4LCAzNCwgMjM1LCA3MiwgOCwgMzQsIDI0MiwgMTU0LCA4LCAzNCwgMjM1LCA5MiwgOCwgMzQsIDIxMSwgMjI3LCA4LCAKKyAgICAzNCwgMjQ2LCA3OCwgOCwgMzQsIDIxOSwgMjEzLCA4LCAzNCwgMjMyLCAyMzYsIDgsIDM0LCAyNDksIDczLCA4LCAzNCwgCisgICAgMjQ5LCAxMDUsIDgsIDM0LCAyNTAsIDM3LCA4LCAzNCwgMjQwLCAxNzcsIDgsIDM0LCAyMjAsIDcyLCA4LCAzNCwgMjEwLCA0LCAKKyAgICA4LCAzNCwgMjE5LCAyNTQsIDgsIDM0LCAyNTAsIDEzMSwgOCwgMzQsIDIwOSwgMjMxLCA4LCAzNCwgMjI5LCAxNzMsIDgsIAorICAgIDM0LCAyMzQsIDE4MiwgMjMyLCAxOTYsIDEsIDI1MiwgMTkxLCAyMzIsIDE5NiwgMSwgMTkwLCAyMzIsIDE5NiwgMSwgMjI1LCAKKyAgICAxNDcsIDIzMiwgMTk2LCAxLCAyNDgsIDIyMSwgMjMyLCAxOTYsIDEsIDIxNywgMTA1LCAyMzIsIDE5NiwgMSwgMjE2LCAyMDgsIAorICAgIDIzMiwgMTk2LCAxLCAyNDMsIDEzNSwgMjMyLCAxOTYsIDEsIDE3NiwgMjMyLCAxOTYsIDEsIDIzNCwgMTMyLCAyMzIsIDE5NiwgCisgICAgMSwgMjM1LCAxNDEsIDIzMiwgMTk2LCAxLCAyNTEsIDMzLCAyMzIsIDE5NiwgMSwgMjUwLCAxNTcsIDIzMiwgMTk2LCAxLCAKKyAgICAyNDYsIDM4LCAyMzIsIDE5NiwgMSwgMjE1LCAxODMsIDIzMiwgMTk2LCAxLCAyMTUsIDE3NSwgMjMyLCAxOTYsIDEsIDE4NCwgCisgICAgMjMyLCAxOTYsIDEsIDE5NywgMjMyLCAxOTYsIDEsIDIzMywgMTM1LCAyMzIsIDE5NiwgMSwgMjA2LCAyMzIsIDE5NiwgMSwgCisgICAgMjEwLCA4MiwgMjMyLCAxOTYsIDEsIDIxMCwgMTE2LCAyMzIsIDE5NiwgMSwgMjI5LCA3NywgMjMyLCAxOTYsIDEsIDE2MiwgCisgICAgMjMyLCAxOTYsIDEsIDIxMSwgMTY1LCAyMzIsIDE5NiwgMSwgMjQxLCAxODksIDIzMiwgMTk2LCAxLCAyNDQsIDE5NiwgMjMyLCAKKyAgICAxOTYsIDEsIDIxMiwgNjUsIDIzMiwgMTk2LCAxLCAyMjAsIDEwMiwgMjMyLCAxOTYsIDEsIDE5MSwgMjMyLCAxOTYsIDEsIAorICAgIDI0MiwgMjQ5LCAyMzIsIDE5NiwgMSwgNjEsIDIzMiwgMTk2LCAxLCAyNTQsIDI0MywgMjMyLCAxOTYsIDEsIDc1LCAyMzIsIAorICAgIDE5NiwgMSwgMjQ1LCA1NSwgMjMyLCAxOTYsIDEsIDczLCAyMzIsIDE5NiwgMSwgNzYsIDIzMiwgMTk2LCAxLCA3MCwgMjMyLCAKKyAgICAxOTYsIDEsIDIxNCwgMjE0LCAyMzIsIDE5NiwgMSwgMjE0LCAyMDgsIDIzMiwgMTk2LCAxLCAyMjYsIDIzNCwgMjMyLCAxOTYsIAorICAgIDEsIDEzOCwgMjMwLCAzMiwgMjE2LCAxMTcsIDIzMiwgMTk2LCAxLCAxMzgsIDIyOSwgMjI5LCAyMjUsIDE2LCAyMzIsIDE5NiwgCisgICAgMSwgMTM4LCAyMzAsIDMyLCAyNDksIDcyLCAyMzIsIDE5NiwgMSwgMTM4LCAyMzAsIDMyLCAyNTEsIDIwNSwgMjMyLCAxOTYsIAorICAgIDEsIDEzOCwgMjMwLCAzMiwgMTk3LCAyMzIsIDE5NiwgMSwgMTM4LCAyMzAsIDMyLCAyMzUsIDExNSwgMjMyLCAxOTYsIDIyNCwgCisgICAgMTQxLCAyNDksIDIxOSwgMjMyLCAxOTYsIDIyNCwgMTQxLCAyNDMsIDIyOSwgMjE4LCAxMjksIDQxLCAzLCAyNDUsIDIwOSwgCisgICAgNDEsIDMsIDI0NSwgMjA1LCA0MSwgMywgMjQxLCAyMjAsIDQxLCAzLCAyMTIsIDE3LCA0MSwgMywgMjEyLCAxNiwgNDEsIDMsIAorICAgIDIyNSwgMjExLCA0MSwgMywgMjUyLCAxMywgNDEsIDMsIDI1MiwgNjYsIDQxLCAzLCAyMzEsIDExNiwgNDEsIDMsIDIzMywgCisgICAgMjQ3LCA0MSwgMywgMjMxLCA2LCA0MSwgMywgMjQzLCA3NSwgNDEsIDMsIDI0NCwgMTQ3LCA0MSwgMywgMjEzLCAyNTAsIDQxLCAKKyAgICAzLCAyMTcsIDExLCA0MSwgMywgMjE2LCAxOTQsIDQxLCAzLCAyNDgsIDE2LCA0MSwgMywgMjQ4LCAxMywgNDEsIDMsIDIzMywgCisgICAgNTAsIDQxLCAzLCAyMjMsIDEwOCwgNDEsIDMsIDI0OCwgNzcsIDQxLCAzLCAyMjksIDEzOSwgNDEsIDMsIDIyMSwgMTcwLCAKKyAgICA0MSwgMywgMjIwLCA2MSwgNDEsIDMsIDIxMCwgOTIsIDQxLCAzLCAyMTAsIDczLCA0MSwgMywgMjUwLCAxODIsIDQxLCAzLCAKKyAgICAyMzUsIDEyNCwgNDEsIDMsIDIyOCwgMTc2LCA0MSwgMywgMjExLCA0NCwgNDEsIDMsIDIzNCwgMTgxLCA0MSwgMywgMjI5LCAKKyAgICA1MSwgNDEsIDMsIDI0MywgNTUsIDQxLCAzLCAyMzEsIDgwLCA0MSwgMywgMjI5LCAxMDMsIDQxLCAzLCAyMjcsIDE1NSwgNDEsIAorICAgIDMsIDczLCA0MSwgMywgMjM1LCAyNTUsIDQxLCAzLCAyNDEsIDE4MCwgNDEsIDMsIDI0MSwgMTYwLCA0MSwgMywgMjExLCAKKyAgICAyNTAsIDQxLCAzLCAyMTEsIDI0MSwgNDEsIDMsIDIyNSwgMTA4LCA0MSwgMywgMjUyLCAxMSwgNDEsIDMsIDI1MiwgNiwgNDEsIAorICAgIDMsIDIzMSwgMTA5LCA0MSwgMywgMjMzLCAyNDQsIDQxLCAzLCAyMzEsIDMsIDQxLCAzLCAyNDMsIDcxLCA0MSwgMywgMjQ0LCAKKyAgICAxMjEsIDQxLCAzLCAyMTMsIDE3NiwgNDEsIDMsIDIxNiwgMTE3LCA0MSwgMywgMjE2LCAxNzUsIDQxLCAzLCAyNDgsIDgsIAorICAgIDQxLCAzLCAyNDgsIDEyLCA0MSwgMywgMjMyLCAyNDEsIDQxLCAzLCAyMjMsIDM1LCA0MSwgMywgMjQ4LCAzLCA0MSwgMywgCisgICAgMjI5LCAxMzMsIDQxLCAzLCAyMTksIDE5MSwgNDEsIDMsIDIyMCwgMzIsIDQxLCAzLCAyMTAsIDQ0LCA0MSwgMywgMjEwLCAKKyAgICA2OSwgNDEsIDMsIDI1MCwgNTEsIDQxLCAzLCAyMzUsIDEwOCwgNDEsIDMsIDIyOCwgMTY5LCA0MSwgMywgMjExLCA4LCA0MSwgCisgICAgMywgMjM0LCA5MiwgNDEsIDMsIDIyOSwgNDMsIDQxLCAzLCAyNDIsIDIxNCwgNDEsIDMsIDIzMCwgMjMwLCA0MSwgMywgMjI4LCAKKyAgICAyMzMsIDQxLCAzLCAyMjcsIDE0OCwgNDEsIDMsIDYxLCA0MSwgMywgMjU0LCAxMjMsIDQxLCAzLCAyMjksIDcyLCA0MSwgMywgCisgICAgMTYyLCA0MSwgMywgMjQyLCAxOCwgNDEsIDMsIDIxMiwgNjUsIDQxLCAzLCAyMTIsIDU1LCA0MSwgMywgMTkwLCA0MSwgMywgCisgICAgMjUyLCAxOCwgNDEsIDMsIDI1MiwgMTkxLCA0MSwgMywgMjMxLCAxMjQsIDQxLCAzLCAyMzMsIDI1MSwgNDEsIDMsIDIzMywgCisgICAgMjUwLCA0MSwgMywgMjMxLCAxMCwgNDEsIDMsIDI0MywgNzksIDQxLCAzLCAyNDQsIDE5NiwgNDEsIDMsIDIxNCwgMjcsIDQxLCAKKyAgICAzLCAyMTcsIDEwNSwgNDEsIDMsIDIxNiwgMjA4LCA0MSwgMywgMjQ4LCAyNSwgNDEsIDMsIDI0OCwgMTUsIDQxLCAzLCAyMzMsIAorICAgIDEzNSwgNDEsIDMsIDIwNSwgNDEsIDMsIDI0OCwgMjIxLCA0MSwgMywgMjI5LCAxNDgsIDQxLCAzLCAyMDYsIDQxLCAzLCAKKyAgICAyMjAsIDEwMiwgNDEsIDMsIDIxMCwgMTE2LCA0MSwgMywgMjEwLCA4MiwgNDEsIDMsIDI1MSwgMzMsIDQxLCAzLCAyMzUsIAorICAgIDE0MSwgNDEsIDMsIDIyOCwgMTg1LCA0MSwgMywgMTkxLCA0MSwgMywgMTc2LCA0MSwgMywgMjM0LCAyMzQsIDQxLCAzLCAKKyAgICAyMjksIDU2LCA0MSwgMywgMjQzLCAxMzUsIDQxLCAzLCAxODQsIDQxLCAzLCAxOTcsIDQxLCAzLCAyMjcsIDE2NSwgNDEsIDMsIAorICAgIDIyNiwgMTgzLCA0MSwgMywgMjI2LCAxNzksIDQxLCAzLCAyNDEsIDUzLCA0MSwgMywgMjExLCAyMTUsIDQxLCAzLCAyMTEsIAorICAgIDIxMSwgNDEsIDMsIDIyNCwgMjQ5LCA0MSwgMywgMjUyLCA5LCA0MSwgMywgMjUxLCAxOTMsIDQxLCAzLCAyMzEsIDEwNCwgCisgICAgNDEsIDMsIDIzMywgMjQyLCA0MSwgMywgMjMwLCAyNTUsIDQxLCAzLCAyNDMsIDY3LCA0MSwgMywgMjQ0LCAzNCwgNDEsIDMsIAorICAgIDIxMywgMTI3LCA0MSwgMywgMjE2LCAxNywgNDEsIDMsIDIxNiwgMTUzLCA0MSwgMywgMjQ4LCA2LCA0MSwgMywgMjQ4LCAxMCwgCisgICAgNDEsIDMsIDIzMiwgMTI3LCA0MSwgMywgMjIyLCAxOTcsIDQxLCAzLCAyNDcsIDEyNSwgNDEsIDMsIDIyOSwgMTIwLCA0MSwgCisgICAgMywgMjE5LCA0MCwgNDEsIDMsIDIyMCwgMSwgNDEsIDMsIDIxMCwgMjEsIDQxLCAzLCAyMTAsIDY2LCA0MSwgMywgMjQ5LCAKKyAgICAxNzQsIDQxLCAzLCAyMzUsIDU5LCA0MSwgMywgMjI4LCAxNTksIDQxLCAzLCAyMTAsIDIyOSwgNDEsIDMsIDIzNCwgMTAsIAorICAgIDQxLCAzLCAyMjksIDQxLCA0MSwgMywgMjQyLCAxNjQsIDQxLCAzLCAyMzAsIDEzMiwgNDEsIDMsIDIyOCwgNjQsIDQxLCAzLCAKKyAgICAyMjcsIDEzMiwgNDEsIDMsIDcwLCA0MSwgMywgMjE0LCAxOTAsIDQxLCAzLCAyNDAsIDIyMiwgNDEsIDMsIDI0MCwgMjEyLCAKKyAgICA0MSwgMywgMjExLCAxOTUsIDQxLCAzLCAyMTEsIDE4OSwgNDEsIDMsIDIyNCwgMTUwLCA0MSwgMywgMjUyLCA4LCA0MSwgMywgCisgICAgMjUxLCAxMjUsIDQxLCAzLCAyMzEsIDEwMywgNDEsIDMsIDIzMywgMjQwLCA0MSwgMywgMjMwLCAyNTQsIDQxLCAzLCAyNDMsIAorICAgIDY2LCA0MSwgMywgMjQzLCAyMzQsIDQxLCAzLCAyMTIsIDExNiwgNDEsIDMsIDIxNSwgMTE4LCA0MSwgMywgMjE2LCAxMzYsIAorICAgIDQxLCAzLCAyNDgsIDQsIDQxLCAzLCAyNDgsIDksIDQxLCAzLCAyMzIsIDk4LCA0MSwgMywgMjIyLCAxNDAsIDQxLCAzLCAKKyAgICAyNDYsIDc4LCA0MSwgMywgMjI5LCAxMTUsIDQxLCAzLCAyMTgsIDgzLCA0MSwgMywgMjE5LCAyMjUsIDQxLCAzLCAyMTAsIAorICAgIDEzLCA0MSwgMywgMjEwLCA2MiwgNDEsIDMsIDI0OSwgMTEyLCA0MSwgMywgMjM1LCA1MSwgNDEsIDMsIDIyOCwgMTU1LCA0MSwgCisgICAgMywgMjEwLCAyMTIsIDQxLCAzLCAyMzMsIDIxNywgNDEsIDMsIDIyOSwgNDAsIDQxLCAzLCAyNDIsIDExMywgNDEsIDMsIAorICAgIDIzMCwgMTAyLCA0MSwgMywgMjI3LCAyMzcsIDQxLCAzLCAyMjcsIDEyOCwgNDEsIDMsIDc2LCA0MSwgMywgMjI2LCAxOTYsIAorICAgIDQxLCAzLCAyMjksIDAsIDQxLCAzLCAyNDEsIDY4LCA0MSwgMywgMjQxLCA1NiwgNDEsIDMsIDIxMSwgMjI3LCA0MSwgMywgCisgICAgMjExLCAyMTYsIDQxLCAzLCAyMjUsIDE2LCA0MSwgMywgMjUyLCAxMCwgNDEsIDMsIDI1MSwgMjA1LCA0MSwgMywgMjMxLCAKKyAgICAxMDUsIDQxLCAzLCAyMzMsIDI0MywgNDEsIDMsIDIzMSwgMSwgNDEsIDMsIDI0MywgNjksIDQxLCAzLCAyNDMsIDY4LCA0MSwgCisgICAgMywgMjQ0LCA0MywgNDEsIDMsIDIxMywgMTM4LCA0MSwgMywgMTExLCA0MSwgMywgMjE2LCAxNTYsIDQxLCAzLCAyNDgsIDcsIAorICAgIDQxLCAzLCAyNDgsIDExLCA0MSwgMywgMjMyLCAxNTYsIDQxLCAzLCAyMjIsIDIxMSwgNDEsIDMsIDI0NywgMTQ1LCA0MSwgMywgCisgICAgMjI5LCAxMjQsIDQxLCAzLCAyMTksIDU4LCA0MSwgMywgMjIwLCA3LCA0MSwgMywgMjEwLCAyMywgNDEsIDMsIDIxMCwgNjcsIAorICAgIDQxLCAzLCAyNDksIDIzOCwgNDEsIDMsIDIzNSwgNjgsIDQxLCAzLCAyMjgsIDE2MCwgNDEsIDMsIDIxMCwgMjQ0LCA0MSwgMywgCisgICAgMjM0LCAyOCwgNDEsIDMsIDIyOSwgNDIsIDQxLCAzLCAyNDIsIDE3NCwgNDEsIDMsIDIzMCwgMTYxLCA0MSwgMywgMjI4LCAKKyAgICA3NCwgNDEsIDMsIDIyNywgMTM0LCA0MSwgMywgNzUsIDQxLCAzLCAyNDUsIDE1MCwgNDEsIDMsIDIyOSwgNjEsIDQxLCAzLCAKKyAgICAyNDEsIDIzOCwgNDEsIDMsIDI0MSwgMjA5LCA0MSwgMywgMjEyLCAyMiwgNDEsIDMsIDIxMiwgMTIsIDQxLCAzLCAyMjUsIAorICAgIDIyMSwgNDEsIDMsIDI1MiwgMTQsIDQxLCAzLCAyNTIsIDc1LCA0MSwgMywgMjMxLCAxMTcsIDQxLCAzLCAyMzMsIDI0OCwgCisgICAgNDEsIDMsIDIzMywgMjQ2LCA0MSwgMywgMjMxLCA3LCA0MSwgMywgMjQzLCA3NiwgNDEsIDMsIDI0MywgNzQsIDQxLCAzLCAKKyAgICAyNDQsIDE1NCwgNDEsIDMsIDIxMywgMjU1LCA0MSwgMywgMjE3LCAyMiwgNDEsIDMsIDIxNiwgMTk1LCA0MSwgMywgMjQ4LCAKKyAgICAxNywgNDEsIDMsIDI0OCwgMTQsIDQxLCAzLCAyMzMsIDU4LCA0MSwgMywgMjIzLCAxMjgsIDQxLCAzLCAyNDgsIDkwLCA0MSwgCisgICAgMywgMjI5LCAxNDAsIDQxLCAzLCAyMjEsIDE4MSwgNDEsIDMsIDIyMCwgNjMsIDQxLCAzLCAyMTAsIDk0LCA0MSwgMywgMjEwLCAKKyAgICA3NCwgNDEsIDMsIDI1MCwgMTkwLCA0MSwgMywgMjM1LCAxMjYsIDQxLCAzLCAyMjgsIDE3OCwgNDEsIDMsIDIxMSwgNDcsIAorICAgIDQxLCAzLCAyMzQsIDE4MiwgNDEsIDMsIDIyOSwgNTIsIDQxLCAzLCAyMjksIDQ4LCA0MSwgMywgMjQzLCA2MiwgNDEsIDMsIAorICAgIDI0MywgNTEsIDQxLCAzLCAyMzEsIDkxLCA0MSwgMywgMjI5LCAxMDcsIDQxLCAzLCAyMjcsIDE1NiwgNDEsIDMsIDIyOSwgCisgICAgNzksIDQxLCAzLCAyMzMsIDIyLCA0MSwgMjQ5LCAyMTksIDQxLCAyNDMsIDIyOSwgMjE4LCAxMjksIDQxLCAyMjQsIDEzLCAKKyAgICA3OCwgNDEsIDMsIDIyOSwgMTIzLCAyNDQsIDE5NiwgNDEsIDMsIDIyOSwgMTIzLCAxNzYsIDQxLCAzLCAyMjksIDEyMywgCisgICAgMjE5LCA0MCwgNDEsIDE2LCAyNDQsIDE0NCwgNDEsIDE2LCAyMzQsIDE4MCwgNDEsIDE2LCAyMTYsIDgxLCA0MSwgMTYsIAorICAgIDIyOCwgMjA4LCA0MSwgMTYsIDI1MiwgMTQ3LCA0MSwgMTYsIDI0NCwgMTk1LCA0MSwgMTYsIDIxNywgMTAxLCA0MSwgMTYsIAorICAgIDI0OCwgMTc2LCA0MSwgMTYsIDI0NywgMTI0LCA0MSwgMTYsIDIzMywgMjA2LCA0MSwgMTYsIDIxNiwgMjEsIDQxLCAxNiwgCisgICAgMjQ3LCAxNDQsIDQxLCAxNiwgMjM1LCA2MCwgNDEsIDIxLCAyMTAsIDg2LCA0MSwgMjEsIDExMCwgNDEsIDIxLCAxMDUsIDQxLCAKKyAgICAyMSwgMTU4LCA0MSwgMjEsIDE2MSwgNDEsIDIxLCAxODksIDQxLCAyMSwgMTk0LCA0MSwgMjEsIDE5OCwgNDEsIDIxLCAxOTUsIAorICAgIDQxLCAyMSwgMjAwLCA0MSwgMywgMjI5LCAxMjMsIDE4NCwgNDEsIDMsIDIyOSwgMTIzLCAyNDcsIDE0NSwgMzMsIDYsIDEsIAorICAgIDIxMCwgOTAsIDMzLCA0LCAxLCAyMTAsIDkwLCAzMywgNiwgMSwgMjQ2LCAzNCwgMzMsIDQsIDEsIDI0NiwgMzQsIDMzLCA2LCAKKyAgICAxLCAyMjMsIDQ5LCAyNDYsIDM2LCAzMywgNCwgMSwgMjIzLCA0OSwgMjQ2LCAzNiwgMzMsIDYsIDEsIDIzNSwgMTg1LCAzMywgCisgICAgNCwgMSwgMjM1LCAxODUsIDMzLCA2LCAxLCAyNDcsIDE2MSwgMzMsIDQsIDEsIDI0NywgMTYxLCAzMywgNiwgMSwgMjMwLCAKKyAgICAxNDAsIDIxNCwgMjA1LCAzMywgNCwgMSwgMjMwLCAxNDAsIDIxNCwgMjA1LCAzMywgNiwgMSwgMjUxLCAxMzYsIDIyNiwgCisgICAgMjAxLCAzMywgNCwgMSwgMjUxLCAxMzYsIDIyNiwgMjAxLCAzMywgNiwgMSwgMjI5LCA4NywgMjExLCAzMSwgMzMsIDQsIDEsIAorICAgIDIyOSwgODcsIDIxMSwgMzEsIDMzLCA2LCAxLCAyMTEsIDI4LCAyLCAyNTIsIDE4NSwgMjExLCAzMSwgMzMsIDQsIDEsIDIxMSwgCisgICAgMjgsIDIsIDI1MiwgMTg1LCAyMTEsIDMxLCAzMywgNiwgMSwgMjM1LCAxODMsIDIxMSwgNTksIDMzLCA0LCAxLCAyMzUsIAorICAgIDE4MywgMjExLCA1OSwgMzMsIDYsIDEsIDIyMywgNDksIDIxMCwgMjEyLCAzMywgNCwgMSwgMjIzLCA0OSwgMjEwLCAyMTIsIAorICAgIDMzLCA2LCAxLCAyMzUsIDE4MywgNjEsIDMzLCA0LCAxLCAyMzUsIDE4MywgNjEsIDMzLCA2LCAxLCAyNTAsIDAsIDIzMiwgCisgICAgMTkyLCAyMTAsIDE4MywgMzMsIDQsIDEsIDI1MCwgMCwgMjMyLCAxOTIsIDIxMCwgMTgzLCAzMywgNiwgMSwgMjUxLCAyMTQsIAorICAgIDIxMCwgMTgzLCAzMywgNCwgMSwgMjUxLCAyMTQsIDIxMCwgMTgzLCAzMywgNiwgMSwgMjM1LCAxODMsIDI1MCwgMCwgMjMyLCAKKyAgICAxOTIsIDIxMCwgMTgzLCAzMywgNCwgMSwgMjM1LCAxODMsIDI1MCwgMCwgMjMyLCAxOTIsIDIxMCwgMTgzLCAzMywgNiwgMSwgCisgICAgMjEwLCAyNDYsIDMzLCA0LCAxLCAyMTAsIDI0NiwgMzMsIDYsIDEsIDIyMywgNDksIDIxNSwgMTc4LCAzMywgNCwgMSwgMjIzLCAKKyAgICA0OSwgMjE1LCAxNzgsIDMzLCA2LCAxLCAyMTksIDUyLCAyNDgsIDkwLCAzMywgNCwgMSwgMjE5LCA1MiwgMjQ4LCA5MCwgMzMsIAorICAgIDYsIDEsIDIxOSwgNTIsIDI0NSwgMTc0LCAzMywgNCwgMSwgMjE5LCA1MiwgMjQ1LCAxNzQsIDMzLCA2LCAxLCAyMTksIDUyLCAKKyAgICAyNDUsIDE1OSwgMzMsIDQsIDEsIDIxOSwgNTIsIDI0NSwgMTU5LCAzMywgNiwgMSwgMjMwLCAxNDQsIDc2LCAzMywgNCwgMSwgCisgICAgMjMwLCAxNDQsIDc2LCAzMywgNiwgMSwgMjUxLCAyNDAsIDc2LCAzMywgNCwgMSwgMjUxLCAyNDAsIDc2LCAzMywgNiwgMSwgCisgICAgNTIsIDIzMCwgMTQ0LCA3NiwgMzMsIDQsIDEsIDUyLCAyMzAsIDE0NCwgNzYsIDMzLCAxLCAyMzAsIDg2LCA3NiwgMzgsIDMzLCAKKyAgICAyMTIsIDEwMCwgMzgsIDMzLCAyMTYsIDI0OCwgMjMwLCAxOTEsIDUwLCAzOCwgMzMsIDI0MCwgMjExLCAyMzAsIDE5MSwgNTAsIAorICAgIDM4LCAzMywgMjE2LCAxNDgsIDIzMCwgMTkxLCA1MCwgMjE5LCA5MywgMjUzLCAyMTYsIDM4LCAzMywgMSwgMjE0LCAyMDIsIAorICAgIDIzNiwgNjAsIDM4LCAzMywgMSwgNzMsIDM4LCAzMywgMSwgMjExLCA4LCAzOCwgMzMsIDEsIDcwLCAzOCwgMzMsIDEsIDI0MiwgCisgICAgMywgNTAsIDM4LCAzMywgMSwgMjExLCAyNywgMzgsIDMzLCAxLCAyMTksIDUyLCA1MCwgMzgsIDMzLCAxLCAyMjYsIDIwMSwgCisgICAgMzgsIDMzLCAyMzQsIDE5MiwgMzgsIDMzLCAyMjUsIDIyNywgMzMsIDIzNCwgMTkyLCAzMywgMjI1LCAyMjcsIDMzLCA2LCAxLCAKKyAgICAyNDYsIDQ2LCAzMywgNCwgMSwgMjQ2LCA0NiwgMzMsIDYsIDEsIDI0NiwgMjcsIDMzLCA0LCAxLCAyNDYsIDI3LCAzMywgNiwgCisgICAgMSwgMjEwLCA1MiwgMzMsIDQsIDEsIDIxMCwgNTIsIDMzLCA2LCAxLCAyNTAsIDIwNiwgMzMsIDQsIDEsIDI1MCwgMjA2LCAKKyAgICAzMywgNiwgMSwgMjQ2LCAyNSwgMzMsIDQsIDEsIDI0NiwgMjUsIDMzLCA2LCAxLCAyMTcsIDIzLCAyLCAyMzAsIDIyNCwgCisgICAgMTAzLCAzMywgNCwgMSwgMjE3LCAyMywgMiwgMjMwLCAyMjQsIDEwMywgMzMsIDYsIDEsIDIxNSwgNzgsIDMzLCA0LCAxLCAKKyAgICAyMTUsIDc4LCAzMywgNiwgMSwgMjE1LCAxNjAsIDMzLCA0LCAxLCAyMTUsIDE2MCwgMzMsIDYsIDEsIDIxNSwgMTY0LCAzMywgCisgICAgNCwgMSwgMjE1LCAxNjQsIDMzLCA2LCAxLCAyMTcsIDI4LCAzMywgNCwgMSwgMjE3LCAyOCwgMzMsIDYsIDEsIDI0MCwgMTk4LCAKKyAgICAzMywgNCwgMSwgMjQwLCAxOTgsIDMzLCA2LCAxLCAyMTksIDIwNiwgMzMsIDQsIDEsIDIxOSwgMjA2LCAzOCwgMzMsIDEsIAorICAgIDIzNSwgMTgzLCA3NSwgMjAsIDEsIDYxLCAyMCwgMSwgMTc2LCAyMCwgMSwgNzAsIDIwLCAxLCAyMzMsIDIxNywgMjAsIDEsIAorICAgIDI0NSwgMjA5LCAyMCwgMSwgMjIzLCAxMDgsIDIwLCAxLCAyMTcsIDg2LCAyMCwgMSwgNzYsIDIwLCAxLCAyMjcsIDE0OCwgCisgICAgMjAsIDEsIDczLCAyMCwgMSwgMjMzLCAxMzUsIDIwLCAxLCAxOTAsIDIwLCAxLCAyMjIsIDIzOSwgMjAsIDEsIDIyMywgMjksIAorICAgIDIwLCAxLCAyMzMsIDQ5LCAyMCwgMSwgMjMxLCA3OSwgMjAsIDEsIDIxNywgMTAxLCAyMCwgMSwgMjI5LCAxNDYsIDIwLCAxLCAKKyAgICAyMjgsIDE4MywgMjAsIDEsIDE5MywgMjAsIDEsIDIxOCwgNCwgMjAsIDEsIDIzMCwgMTAyLCAyMCwgMSwgMjIwLCAyNywgMjAsIAorICAgIDEsIDIxOSwgMTkxLCAyMCwgMSwgMjIwLCAzNywgMjAsIDEsIDIyMCwgMTIzLCAyMCwgMSwgMjMzLCAxNTUsIDIwLCAxLCAKKyAgICAyMzQsIDE1NiwgMjAsIDEsIDIyNywgMjA5LCAyMCwgMSwgMjI3LCAyMzcsIDIwLCAxLCAyMjgsIDE1NCwgMjAsIDEsIDIxMCwgCisgICAgMjI2LCAyMCwgMSwgMjE5LCAyMjUsIDIwLCAxLCAyMTAsIDE4NywgMjAsIDEsIDE5MSwgMjAsIDEsIDIyOCwgOSwgMjAsIDEsIAorICAgIDIzNCwgMTQyLCAyMCwgMSwgMjI1LCAxNTEsIDIwLCAxLCAyMjgsIDE3NiwgMjAsIDEsIDIyNywgMjQ2LCAyMCwgMSwgMjI0LCAKKyAgICAxNDQsIDIwLCAxLCAyMTEsIDE5MiwgMjAsIDEsIDIyNSwgMjExLCAyMCwgMSwgMjQ0LCAxNDcsIDIwLCAxLCAyMjIsIDE0MCwgCisgICAgMjAsIDEsIDIzMiwgOTgsIDIwLCAxLCAyMzAsIDIzMCwgMjAsIDEsIDIyOCwgMjMzLCAyMCwgMSwgMjIzLCA1MSwgMjAsIDEsIAorICAgIDIyMywgMTcxLCAyMCwgMSwgMjM0LCAxNjUsIDIwLCAxLCAyMjksIDcsIDIwLCAxLCAyMjksIDU2LCAyMCwgMSwgMjI5LCA3NywgCisgICAgMjAsIDEsIDIyMCwgNywgMjAsIDEsIDIyNCwgMTQ3LCAyMCwgMSwgMjQzLCAyMzQsIDIwLCAxLCAyNDQsIDM3LCAyMCwgMSwgCisgICAgMjEyLCA2NSwgMjAsIDEsIDE5NywgMjAsIDEsIDIzMiwgMjQxLCAyMCwgMSwgMjI1LCAxMDgsIDIwLCAxLCAyMzIsIDExOSwgCisgICAgMjAsIDEsIDIzNCwgMjgsIDIwLCAxLCAyMzEsIDExNCwgMjAsIDEsIDIyMywgODMsIDIwLCAxLCAyMzEsIDU4LCAyMCwgMSwgCisgICAgMTg0LCAyMCwgMSwgMjE2LCAxMTcsIDIwLCAxLCAyMzQsIDkyLCAyMCwgMSwgMjMwLCAxNjEsIDIwLCAxLCAyMzEsIDEyMiwgCisgICAgMjAsIDEsIDIxNiwgMjMwLCAyMCwgMSwgMjMzLCAyNTEsIDIwLCAxLCAyMTYsIDI0NywgMjAsIDEsIDIyNywgMjM4LCAyMCwgCisgICAgMSwgMjIxLCAyNTEsIDIwLCAxLCAyNDQsIDE5MiwgMjAsIDEsIDIzMywgMjUzLCAyMCwgMSwgMjM0LCAyNCwgMjAsIDM4LCAKKyAgICAxNjQsIDIzNCwgNSwgMjAsIDM4LCAxNjQsIDIxNSwgMTEwLCAyMCwgMjI4LCAxODIsIDIwLCAyNDMsIDIyOSwgMjE4LCAxMjksIAorICAgIDIwLCAyNDksIDIyNiwgMjAsIDI0OSwgMjE5LCAyMCwgMjIwLCAxNTAsIDIwLCAyMjQsIDEzLCA3OCwgNTgsIDEsIDI1MCwgCisgICAgOTYsIDEzOCwgMjEwLCAyNTQsIDIyNSwgNjEsIDU4LCAxLCAyNTAsIDk2LCAxMzgsIDIxMSwgNzAsIDIyNSwgNjEsIDU4LCAxLCAKKyAgICAyNTAsIDk2LCAxMzgsIDIxMCwgMjU0LCAyMjAsIDg0LCA1OCwgMSwgMjUwLCA5NiwgMTM4LCAyMTEsIDcwLCAyMjAsIDg0LCAKKyAgICA1OCwgMSwgMjUwLCA5NiwgMTM4LCAyMTAsIDI1NCwgMjI0LCAzMCwgNTgsIDEsIDI1MCwgOTYsIDEzOCwgMjExLCA3MCwgCisgICAgMjI0LCAzMCwgNTgsIDEsIDI1MCwgOTYsIDEzOCwgMjEwLCAyNTQsIDIyMiwgMTQwLCA1OCwgMSwgMjUwLCA5NiwgMTM4LCAKKyAgICAyMTEsIDcwLCAyMjIsIDE0MCwgNTgsIDEsIDI0NSwgMjAsIDI0NiwgMTE4LCAxMzgsIDEzMCwgNTgsIDEsIDEyNSwgMjQ2LCAKKyAgICAxMTgsIDEzOCwgMTMwLCA1OCwgMSwgMjMwLCAyMjUsIDI0NiwgMTE4LCAxMzgsIDEzMCwgNTgsIDEsIDEyMSwgMjQ2LCAxMTgsIAorICAgIDEzOCwgMTMwLCA1OCwgMSwgMjQ1LCAxOSwgMjQ2LCAxMTgsIDEzOCwgMTMwLCA1OCwgMSwgMjQ1LCAyMCwgMjQ2LCAxMTgsIAorICAgIDIzMywgMzksIDEzOCwgMTMwLCA1OCwgMSwgMTI1LCAyNDYsIDExOCwgMjMzLCAzOSwgMTM4LCAxMzAsIDU4LCAxLCAyMzAsIAorICAgIDIyNSwgMjQ2LCAxMTgsIDIzMywgMzksIDEzOCwgMTMwLCA1OCwgMSwgMTIxLCAyNDYsIDExOCwgMjMzLCAzOSwgMTM4LCAKKyAgICAxMzAsIDU4LCAxLCAyNDUsIDE5LCAyNDYsIDExOCwgMjMzLCAzOSwgMTM4LCAxMzAsIDU4LCAxLCAyNDUsIDIwLCAyMzMsIAorICAgIDM5LCAxMzgsIDEzMCwgNTgsIDEsIDEyNSwgMjMzLCAzOSwgMTM4LCAxMzAsIDU4LCAxLCAyMzAsIDIyNSwgMjMzLCAzOSwgCisgICAgMTM4LCAxMzAsIDU4LCAxLCAxMjEsIDIzMywgMzksIDEzOCwgMTMwLCA1OCwgMSwgMjQ1LCAxOSwgMjMzLCAzOSwgMTM4LCAKKyAgICAxMzAsIDU4LCAxLCA1OSwgNjcsIDEzMCwgNTgsIDEsIDU5LCAyMTksIDk1LCA1OCwgMSwgNTksIDIwMywgMTMwLCA1OCwgMSwgCisgICAgMjMyLCAxMDgsIDQ0LCAyNDksIDE2MSwgMjU0LCAxMDksIDU4LCAxLCAyMjMsIDE1NywgMTIwLCA3NCwgNTgsIDEsIDIyMywgCisgICAgMTU3LCAxMjQsIDc0LCA1OCwgMSwgMjIzLCAxNTcsIDI0NSwgMzEsIDc4LCA1OCwgMSwgMjIzLCAxNTcsIDIzNSwgMTkzLCAKKyAgICAyNDUsIDMxLCA3OCwgNTgsIDEsIDEyMSwgMjM1LCAxOTMsIDI0NSwgMzEsIDc4LCA1OCwgMSwgMjE4LCAxMTEsIDIyLCAxMjUsIAorICAgIDIxNiwgMzAsIDU4LCAxLCAyMTgsIDExMSwgMjIsIDEyMSwgMjE2LCAzMCwgNywgNiwgMSwgMjQ1LCAxOTksIDI1NCwgMTcwLCAKKyAgICA3LCA0LCAxLCAyNDUsIDE5OSwgMjU0LCAxNzAsIDcsIDYsIDEsIDI0NSwgMTk5LCAyNTQsIDE5NiwgNywgNCwgMSwgMjQ1LCAKKyAgICAxOTksIDI1NCwgMTk2LCA3LCA2LCAxLCAyNDEsIDIwNywgNywgNCwgMSwgMjQxLCAyMDcsIDcsIDYsIDEsIDIxNSwgNDAsIDcsIAorICAgIDQsIDEsIDIxNSwgNDAsIDcsIDYsIDEsIDIxNSwgMjI5LCA3LCA0LCAxLCAyMTUsIDIyOSwgNywgNiwgMSwgMjQ5LCAxMTAsIAorICAgIDcsIDQsIDEsIDI0OSwgMTEwLCA3LCA2LCAxLCAyNDksIDExMSwgMiwgMjQ5LCAyMTksIDcsIDQsIDEsIDI0OSwgMTExLCAyLCAKKyAgICAyNDksIDIxOSwgNywgMSwgNCwgNiwgMjQ1LCA2LCA3LCAxLCA0LCA2LCAyMjIsIDkxLCA3LCA2LCAxLCAyNTUsIDczLCA3LCAKKyAgICA0LCAxLCAyNTUsIDczLCA3LCA2LCAxLCAyNTQsIDczLCA3LCA0LCAxLCAyNTQsIDczLCA3LCA2LCAxLCAyNTMsIDE5MiwgNywgCisgICAgNCwgMSwgMjUzLCAxOTIsIDcsIDYsIDEsIDI1MywgMTc2LCA3LCA0LCAxLCAyNTMsIDE3NiwgNywgNiwgMSwgMjUzLCAxNzcsIAorICAgIDIsIDIwMywgMTMwLCA3LCA0LCAxLCAyNTMsIDE3NywgMiwgMjAzLCAxMzAsIDcsIDYsIDEsIDI1MywgMTY3LCA3LCA0LCAxLCAKKyAgICAyNTMsIDE2NywgNywgNiwgMSwgMjIzLCA0OSwgMjUxLCA2NywgMiwgMjQ3LCAxMjAsIDcsIDQsIDEsIDIyMywgNDksIDI1MSwgCisgICAgNjcsIDIsIDI0NywgMTIwLCA3LCA2LCAxLCAyMzUsIDI0LCAyLCA5MSwgNywgNCwgMSwgMjM1LCAyNCwgMiwgOTEsIDcsIDYsIAorICAgIDEsIDIzNSwgMjQsIDIsIDI0NywgMjU1LCA5MSwgNywgNCwgMSwgMjM1LCAyNCwgMiwgMjQ3LCAyNTUsIDkxLCA3LCA2LCAxLCAKKyAgICAyMzUsIDI0LCAyLCAyMTgsIDEwMywgMjIsIDI0NywgMjU1LCA5MSwgNywgNCwgMSwgMjM1LCAyNCwgMiwgMjE4LCAxMDMsIAorICAgIDIyLCAyNDcsIDI1NSwgOTEsIDcsIDYsIDEsIDI1MSwgMTM1LCAxNTYsIDcsIDQsIDEsIDI1MSwgMTM1LCAxNTYsIDcsIDYsIAorICAgIDEsIDIzMywgMTQ5LCAyLCAxMjUsIDkxLCA3LCA0LCAxLCAyMzMsIDE0OSwgMiwgMTI1LCA5MSwgNywgNiwgMSwgMTQ0LCAyLCAKKyAgICAxOTksIDIxOCwgMTAzLCAyMjYsIDEyMCwgNywgNCwgMSwgMTQ0LCAyLCAxOTksIDIxOCwgMTAzLCAyMjYsIDEyMCwgNywgNiwgCisgICAgMSwgMTQ0LCAyLCAyMzIsIDEyMywgNywgNCwgMSwgMTQ0LCAyLCAyMzIsIDEyMywgNywgNiwgMSwgMjI2LCAxODMsIDcsIDQsIAorICAgIDEsIDIyNiwgMTgzLCA3LCA2LCAxLCAyMjYsIDEwNiwgMiwgMjE4LCAxMDMsIDIxNiwgMTM5LCAyNDgsIDM5LCA3LCA0LCAxLCAKKyAgICAyMjYsIDEwNiwgMiwgMjE4LCAxMDMsIDIxNiwgMTM5LCAyNDgsIDM5LCA3LCA2LCAxLCAyMjYsIDEwNiwgMiwgMjQ0LCA1MywgCisgICAgNywgNCwgMSwgMjI2LCAxMDYsIDIsIDI0NCwgNTMsIDcsIDYsIDEsIDIyNiwgMTA2LCAyLCAyMTgsIDIyOSwgMjE3LCA3NywgCisgICAgNywgNCwgMSwgMjI2LCAxMDYsIDIsIDIxOCwgMjI5LCAyMTcsIDc3LCA3LCA2LCAxLCAyMjQsIDk3LCAyLCAyMTgsIDEwMywgCisgICAgMjE2LCAxMzksIDI0OCwgMzksIDcsIDQsIDEsIDIyNCwgOTcsIDIsIDIxOCwgMTAzLCAyMTYsIDEzOSwgMjQ4LCAzOSwgNywgCisgICAgNiwgMSwgMjI0LCA5NywgMiwgMjQ3LCAyNTUsIDkxLCA3LCA0LCAxLCAyMjQsIDk3LCAyLCAyNDcsIDI1NSwgOTEsIDcsIDYsIAorICAgIDEsIDIyMywgMjI0LCAyMjIsIDE4NiwgNywgNCwgMSwgMjIzLCAyMjQsIDIyMiwgMTg2LCA3LCA2LCAxLCAyMjIsIDEzMCwgCisgICAgMjIyLCAxODYsIDcsIDQsIDEsIDIyMiwgMTMwLCAyMjIsIDE4NiwgNywgNiwgMSwgMjE0LCAxMDYsIDIsIDI0NywgMjU1LCAKKyAgICA5MSwgNywgNCwgMSwgMjE0LCAxMDYsIDIsIDI0NywgMjU1LCA5MSwgNywgNiwgMSwgMjEyLCAxMDYsIDcsIDQsIDEsIDIxMiwgCisgICAgMTA2LCA3LCA2LCAxLCAyMTMsIDE0NSwgMjEwLCAxNTksIDcsIDQsIDEsIDIxMywgMTQ1LCAyMTAsIDE1OSwgNywgNiwgMSwgCisgICAgMjE2LCAxNTIsIDIsIDkxLCA3LCA0LCAxLCAyMTYsIDE1MiwgMiwgOTEsIDcsIDYsIDEsIDIxNiwgMTUyLCAyLCAyMTgsIAorICAgIDEwMywgMjE2LCAxMzksIDI0OCwgMzksIDcsIDQsIDEsIDIxNiwgMTUyLCAyLCAyMTgsIDEwMywgMjE2LCAxMzksIDI0OCwgCisgICAgMzksIDcsIDYsIDEsIDIxMywgMjQ1LCA3LCA0LCAxLCAyMTMsIDI0NSwgNywgNiwgMSwgMjQ1LCA2NSwgNywgNCwgMSwgMjQ1LCAKKyAgICA2NSwgNywgNiwgMSwgMjM1LCAxNzEsIDcsIDQsIDEsIDIzNSwgMTcxLCA3LCA2LCAxLCAyNDksIDIwNywgNywgNCwgMSwgCisgICAgMjQ5LCAyMDcsIDU4LCAxLCAyMTQsIDEzMywgNywgNCwgMSwgMjQ2LCA2OSwgNywgNCwgMSwgMjMyLCA4NCwgNywgNCwgMSwgCisgICAgMjMwLCA4MCwgNywgNCwgMSwgMjI3LCAyMDEsIDcsIDQsIDEsIDIyMiwgMTI5LCA3LCAxLCA0LCA2LCAyMjIsIDEyOSwgNywgCisgICAgNCwgMSwgMjE1LCAxMDgsIDcsIDQsIDEsIDIxNCwgMTk3LCA3LCA2LCAxLCAyMzUsIDIxMywgMjQ5LCA2MCwgNywgNCwgMSwgCisgICAgMjM1LCAyMTMsIDI0OSwgNjAsIDcsIDYsIDEsIDIzNSwgMjEzLCAyNDUsIDYsIDcsIDQsIDEsIDIzNSwgMjEzLCAyNDUsIDYsIAorICAgIDcsIDYsIDEsIDIzNSwgMjEzLCAyNDMsIDIwMiwgNywgNiwgMSwgMjE1LCA5NCwgMjM1LCAyMTMsIDI0MywgMjAyLCA3LCA0LCAKKyAgICAxLCAyMTUsIDk0LCAyMzUsIDIxMywgMjQzLCAyMDIsIDcsIDYsIDEsIDIxNSwgOTQsIDE1NiwgNywgNCwgMSwgMjE1LCA5NCwgCisgICAgMTU2LCA3LCA2LCAxLCAyMzUsIDIxMywgMTUzLCA3LCA0LCAxLCAyMzUsIDIxMywgMTUzLCA3LCA2LCAxLCAyMzUsIDIxMywgCisgICAgMjIyLCA5MSwgNywgNCwgMSwgMjM1LCAyMTMsIDIyMiwgOTEsIDcsIDYsIDEsIDIzNSwgMjEzLCAyMTcsIDE1MiwgNywgNCwgCisgICAgMSwgMjM1LCAyMTMsIDIxNywgMTUyLCA1OCwgMSwgMTIxLCAyNTAsIDMxLCAyNTUsIDE0LCA1OCwgMSwgMjQ5LCAyMjYsIDU4LCAKKyAgICAxLCAyMTksIDI1MSwgMjQ1LCA5OCwgNTAsIDcsIDYsIDEsIDIyMSwgMjU1LCA3LCA0LCAxLCAyMjEsIDI1NSwgNywgNiwgMSwgCisgICAgMjE1LCA5NCwgMjQyLCA2MCwgNywgNCwgMSwgMjMzLCAxNDksIDIsIDIyMywgNTUsIDI0MSwgNTIsIDIyLCAyNTIsIDQxLCA3LCAKKyAgICA2LCAxLCAyMzAsIDI2LCAyLCAyNDgsIDM5LCA3LCA0LCAxLCAyMzAsIDI2LCAyLCAyNDgsIDM5LCA3LCA2LCAxLCAyNTEsIAorICAgIDY3LCAyLCAxMzAsIDcsIDQsIDEsIDI1MSwgNjcsIDIsIDEzMCwgNywgNiwgMSwgMjQzLCAyMDMsIDIsIDIyNiwgMjQ4LCA5MSwgCisgICAgNywgNCwgMSwgMjQzLCAyMDMsIDIsIDIyNiwgMjQ4LCA5MSwgNywgNiwgMSwgMjM1LCAyNCwgMiwgMjI2LCAyNDgsIDkxLCA3LCAKKyAgICA0LCAxLCAyMzUsIDI0LCAyLCAyMjYsIDI0OCwgOTEsIDcsIDYsIDEsIDIzMCwgMjYsIDIsIDIyNiwgMjQ4LCA5MSwgNywgNCwgCisgICAgMSwgMjMwLCAyNiwgMiwgMjI2LCAyNDgsIDkxLCA3LCA2LCAxLCAyMjMsIDIyNCwgMiwgMjI2LCAyNDgsIDkxLCA3LCA0LCAxLCAKKyAgICAyMjMsIDIyNCwgMiwgMjI2LCAyNDgsIDkxLCA3LCA2LCAxLCAyMjIsIDkyLCAyLCAyMjYsIDI0OCwgOTEsIDcsIDQsIDEsIAorICAgIDIyMiwgOTIsIDIsIDIyNiwgMjQ4LCA5MSwgNywgNiwgMSwgMjQyLCA2MSwgMiwgMTAzLCA1OCwgMSwgNiwgMjQyLCA2MSwgMiwgCisgICAgOTEsIDU4LCAxLCA0LCAyNywgMjI2LCAyMzQsIDcsIDEsIDQsIDYsIDIxNSwgOTQsIDE5MywgNywgMjQ1LCAxMDMsIDEsIAorICAgIDIyMywgNDksIDI0NSwgNiwgNywgMjQ1LCAxMDMsIDEsIDIyMywgNDksIDIyNiwgMTA1LCA3LCAyNDUsIDEwMywgMSwgMjM1LCAKKyAgICAxOTMsIDE5MywgNywgMjQ1LCAxMDMsIDEsIDI0MCwgMTU0LCAyMzIsIDEyOSwgNywgMjQ1LCAxMDMsIDEsIDI1NCwgMjMsIAorICAgIDE5MywgMjE3LCAyMzAsIDIyOSwgMjE0LCAxLCA2MSwgMjE3LCAyMzAsIDIyOSwgMjE0LCAxLCA3MywgMjE3LCAyMzAsIDIyOSwgCisgICAgMjE0LCA1LCAyNDYsIDQ4LCAyMTcsIDIzMCwgMjI5LCAyMTQsIDEsIDcwLCAyMTcsIDIzMCwgMjI5LCAyMTQsIDEsIDc1LCAKKyAgICAyMTcsIDIzMCwgMjI5LCAyMTQsIDEsIDc2LCAyMTcsIDIzMCwgMjI5LCAyMTQsIDUsIDI0MSwgMjUzLCAyMTcsIDIzMCwgCisgICAgMjI5LCAyMTQsIDEsIDIzNCwgMjgsIDIxNywgMjMwLCAyMjksIDIxNCwgMSwgMjM0LCAxMDUsIDIxNywgMjMwLCAyMjksIAorICAgIDIxNCwgMSwgMjQyLCAxNzQsIDIxNywgMjMwLCAyMjksIDIxNCwgMSwgMjQyLCAyMjQsIDIxNywgMjMwLCAyMjksIDIxNCwgNSwgCisgICAgMjU0LCA3NSwgMjE3LCAyMzAsIDIyOSwgMjE0LCAxLCAyNDksIDIzOCwgMjE3LCAyMzAsIDIyOSwgMjE0LCAxLCAyNTAsIDg2LCAKKyAgICAyMTcsIDIzMCwgMjI5LCAyMTQsIDEsIDIzNSwgNjgsIDIxNywgMjMwLCAyMjksIDIxNCwgMSwgMjM1LCAxMDksIDIxNywgCisgICAgMjMwLCAyMjksIDIxNCwgMSwgMjE1LCAxMzMsIDIxNywgMjMwLCAyMjksIDIxNCwgMSwgMjE1LCAxMzksIDIxNywgMjMwLCAKKyAgICAyMjksIDIxNCwgMSwgMjQ4LCAxMDUsIDIxNywgMjMwLCAyMjksIDIxNCwgMSwgMjQ4LCAxMTQsIDIxNywgMjMwLCAyMjksIAorICAgIDIxNCwgMSwgMTExLCAyMTcsIDIzMCwgMjI5LCAyMTQsIDEsIDIxNiwgMTU2LCAyMTcsIDIzMCwgMjI5LCAyMTQsIDEsIDI0NywgCisgICAgMTQ1LCAyMTcsIDIzMCwgMjI5LCAyMTQsIDEsIDI0OCwgNywgMjE3LCAyMzAsIDIyOSwgMjE0LCAxLCAyMjgsIDc0LCAyMTcsIAorICAgIDIzMCwgMjI5LCAyMTQsIDEsIDIyNSwgMTYsIDIxNywgMjMwLCAyMjksIDIxNCwgMSwgMjI1LCAxMjEsIDIxNywgMjMwLCAKKyAgICAyMjksIDIxNCwgMSwgMjUxLCAyMDUsIDIxNywgMjMwLCAyMjksIDIxNCwgMSwgMjUyLCAxMCwgMjE3LCAyMzAsIDIyOSwgCisgICAgMjE0LCAxLCAyMzAsIDE2MSwgMjE3LCAyMzAsIDIyOSwgMjE0LCAxLCAyMjIsIDIxMSwgMjE3LCAyMzAsIDIyOSwgMjE0LCAxLCAKKyAgICAyMzIsIDE1NiwgMjE3LCAyMzAsIDIyOSwgMjE0LCAxLCAyMjIsIDE2NSwgMjE3LCAyMzAsIDIyOSwgMjE0LCAxLCAyMTksIAorICAgIDU4LCAyMTcsIDIzMCwgMjI5LCAyMTQsIDEsIDI0MSwgNjgsIDIxNywgMjMwLCAyMjksIDIxNCwgMjUsIDUsIDYxLCAyMTcsIAorICAgIDIzMCwgMjI5LCAyMTQsIDI1LCA1LCA3MywgMjE3LCAyMzAsIDIyOSwgMjE0LCAyNSwgNSwgNzAsIDIxNywgMjMwLCAyMjksIAorICAgIDIxNCwgMjUsIDUsIDc1LCAyMTcsIDIzMCwgMjI5LCAyMTQsIDI1LCA1LCAyMjYsIDE4MywgMjE3LCAyMzAsIDIyOSwgMjE0LCAKKyAgICAyMjUsIDEyLCAyMzEsIDE1OCwgMjE3LCAyMzAsIDIyOSwgMjE0LCAyMjUsIDEyLCAyMzEsIDE1NywgMjE3LCAyMzAsIDIyOSwgCisgICAgMjE0LCAyMjUsIDEyLCAyMzEsIDE1NiwgMjE3LCAyMzAsIDIyOSwgMjE0LCAyMjUsIDEyLCAyMzEsIDE1NSwgMjI4LCA1NiwgCisgICAgMjM1LCAyNDAsIDI0NCwgMiwgMTIzLCAyMjQsIDIxLCAyMjgsIDU2LCAyMzUsIDI0MCwgMjQ0LCAyLCAxMjMsIDI0MiwgMjcsIAorICAgIDIyOCwgNTYsIDIzNSwgMjQwLCAyNDQsIDIsIDEzNCwgMjI0LCAxOSwgMjI4LCA1NiwgMjM1LCAyNDAsIDI0NCwgMiwgMTIzLCAKKyAgICAyMTksIDExNywgMjI4LCA1NiwgMjM1LCAyNDAsIDI0NCwgMiwgMTIzLCAyNDUsIDE4OCwgMjI4LCA1NiwgMjM1LCAyNDAsIAorICAgIDI0NCwgMiwgMTM0LCAyMTksIDExNiwgMjI4LCA1NiwgMjM1LCAyNDAsIDIyNCwgMjIsIDc4LCAyMjgsIDU2LCAyMzUsIDI0MCwgCisgICAgMjI1LCA0MCwgNzgsIDIyOCwgNTYsIDIzNSwgMjQwLCAyMjIsIDExOCwgNzgsIDIyOCwgNTYsIDIzNSwgMjQwLCAyMjQsIDIzLCAKKyAgICA3OCwgMjI1LCAxNDQsIDEsIDE3NiwgMjI1LCAxNDQsIDEsIDIzNCwgMTMyLCAyMjUsIDE0NCwgMSwgMjQzLCAxMzUsIDIyNSwgCisgICAgMTQ0LCAxLCAyMjksIDc3LCAyMjUsIDE0NCwgMSwgMjUxLCAzMywgMjI1LCAxNDQsIDEsIDI1MCwgMTU3LCAyMjUsIDE0NCwgCisgICAgMSwgMjM1LCAxNDEsIDIyNSwgMTQ0LCAxLCAyMjcsIDE2NSwgMjI1LCAxNDQsIDEsIDIxNywgMTA1LCAyMjUsIDE0NCwgMSwgCisgICAgMjE2LCAyMDgsIDIyNSwgMTQ0LCAxLCAyNDgsIDIyMSwgMjI1LCAxNDQsIDEsIDE5NywgMjI1LCAxNDQsIDEsIDE5MCwgMjI1LCAKKyAgICAxNDQsIDEsIDIyNSwgMTQ3LCAyMjUsIDE0NCwgMSwgMjUyLCAxOTEsIDIyNSwgMTQ0LCAxLCAxODQsIDIyNSwgMTQ0LCAxLCAKKyAgICAyMTUsIDE4MywgMjI1LCAxNDQsIDEsIDIxNSwgMTc1LCAyMjUsIDE0NCwgMSwgMjQ2LCAzOCwgMjI1LCAxNDQsIDEsIDIxMiwgCisgICAgNjUsIDIyNSwgMTQ0LCAxLCAyMTAsIDgyLCAyMjUsIDE0NCwgMSwgMjEwLCAxMTYsIDIyNSwgMTQ0LCAxLCA0LCA2MSwgMjI1LCAKKyAgICAxNDQsIDEsIDE5MSwgMjI1LCAxNDQsIDEsIDIwNSwgMjI1LCAxNDQsIDEsIDIzMywgMTM1LCAyMjUsIDE0NCwgMSwgMjIwLCAKKyAgICAxMDIsIDIyNSwgMTQ0LCAxLCAyMDYsIDIyNSwgMTQ0LCAxLCAxNjIsIDIyNSwgMTQ0LCAxLCA2MSwgMjI1LCAxNDQsIDEsIAorICAgIDczLCAyMjUsIDE0NCwgMSwgNzAsIDIyNSwgMTQ0LCAxLCA3NSwgMjI1LCAxNDQsIDEsIDc2LCAyMjUsIDE0NCwgMSwgMjI0LCAKKyAgICA4OCwgMjI1LCAxNDQsIDEsIDIxMSwgMTY1LCAyMjUsIDE0NCwgMSwgMjQ0LCAxOTYsIDIyNSwgMTQ0LCAxLCAyNDMsIDI5LCAKKyAgICAyMjUsIDE0NCwgMSwgMjQ1LCAyMDksIDIyNSwgMTQ0LCAyMTgsIDczLCAxLCAyMTIsIDY1LCAyMjUsIDE0NCwgMjE4LCA3MywgCisgICAgMSwgMTkxLCAyMjUsIDE0NCwgMSwgMjE1LCAxNTYsIDIyNSwgMTQ0LCAxLCAyMTUsIDE0NCwgMjI1LCAxNDQsIDEsIDI0OCwgCisgICAgMTM1LCAyMjUsIDE0NCwgMSwgMjI4LCAxMTAsIDIyNSwgMTQ0LCAxLCAyNTQsIDE0MSwgMTkxLCAyMjUsIDE0NCwgMSwgMjEzLCAKKyAgICAxMzQsIDIyMCwgMTAyLCAyMjUsIDE0NCwgMSwgMjEzLCAxMzUsIDE2MiwgMjI1LCAxNDQsIDEsIDI1MywgMjIzLCAyNDQsIAorICAgIDE5NiwgMjI1LCAxNDQsIDIxOCwgNzMsIDEsIDIwNSwgMjI1LCAxNDQsIDIxOCwgMjUsIDEsIDIwNSwgMjI1LCAxNDQsIDEsIAorICAgIDI1MCwgMjU1LCAyMjUsIDE0NCwgMjE5LCAxNTUsIDI0MSwgMjM2LCA3OCwgMjI1LCAxNDQsIDUyLCAyNDEsIDIzNiwgNzgsIAorICAgIDIyNSwgMTQ0LCAxNjQsIDIyMCwgOTUsIDIyNSwgMTQ0LCAxNjQsIDUyLCAyMjAsIDk1LCAxNzksIDUsIDI1NCwgNzUsIDE3OSwgCisgICAgNSwgMjEzLCAxNDcsIDE3OSwgMSwgNjEsIDE3OSwgMSwgMjU1LCA3MywgMTc5LCAxLCA3MywgMTc5LCAxLCAyMzYsIDMzLCAKKyAgICAxNzksIDEsIDcwLCAxNzksIDEsIDIxNCwgMTE4LCAxNzksIDEsIDE0OSwgMTUzLCAxNzksIDEsIDE0OSwgMjIyLCAxODAsIAorICAgIDE3OSwgMSwgMTQ5LCAxNTYsIDE3OSwgMSwgMTQ5LCAyMzIsIDE4NSwgMTc5LCAxLCA3NSwgMTc5LCAxLCAyNDUsIDIwOSwgCisgICAgMTc5LCAxLCAyNTQsIDIwMSwgMTc5LCAxLCA3NiwgMTc5LCAxLCAyMjYsIDE4MywgMTc5LCAxLCAyNTMsIDE5MiwgMTc5LCAxLCAKKyAgICAxNzYsIDE3OSwgMSwgMjM0LCAxMzIsIDE3OSwgMSwgMjQzLCAxMzUsIDE3OSwgMSwgMjQyLCAyNDksIDE3OSwgMSwgMjI5LCAKKyAgICA3NywgMTc5LCAxLCAyNTEsIDMzLCAxNzksIDEsIDI1MCwgMTU3LCAxNzksIDEsIDIzNSwgMTQxLCAxNzksIDEsIDIzNSwgCisgICAgMTE0LCAxNzksIDEsIDIyNywgMTY1LCAxNzksIDEsIDIxNSwgMTU2LCAxNzksIDEsIDIxNSwgMTQ0LCAxNzksIDEsIDI0OCwgCisgICAgMTM1LCAxNzksIDEsIDI0OCwgMTE5LCAxNzksIDEsIDIyOCwgMTEwLCAxNzksIDEsIDIxNywgMTA1LCAxNzksIDEsIDIxNiwgCisgICAgMjA4LCAxNzksIDEsIDI0OCwgMjIxLCAxNzksIDEsIDI0OCwgMjUsIDE3OSwgMSwgMTk3LCAxNzksIDEsIDE5MCwgMTc5LCAxLCAKKyAgICAyMjUsIDE0NywgMTc5LCAxLCAyNTIsIDE5MSwgMTc5LCAxLCAyNTIsIDE4LCAxNzksIDEsIDE4NCwgMTc5LCAxLCAxOTEsIAorICAgIDE3OSwgMSwgMjA1LCAxNzksIDEsIDIzMywgMTM1LCAxNzksIDEsIDIxNCwgMjcsIDE3OSwgMSwgMjIwLCAxMDIsIDE3OSwgMSwgCisgICAgMjE4LCAyMjMsIDE3OSwgMSwgMjA2LCAxNzksIDEsIDE2MiwgMTc5LCAxLCAyMzIsIDE4NCwgMTc5LCAxMTYsIDUsIDI0MiwgCisgICAgNDQsIDE3OSwgMjUsIDUsIDI1NSwgNzMsIDE3OSwgMjUsIDUsIDczLCAxNzksIDI1LCA1LCAyMzYsIDMzLCAxNzksIDI1LCA1LCAKKyAgICA3MCwgMTc5LCAyNSwgNSwgMjE0LCAxMTgsIDE3OSwgMjUsIDUsIDE0OSwgMTUzLCAxNzksIDI1LCA1LCAxNDksIDIyMiwgCisgICAgMTgwLCAxNzksIDI1LCA1LCAxNDksIDE1NiwgMTc5LCAyNSwgNSwgMTQ5LCAyMzIsIDE4NSwgMTc5LCAyNSwgNSwgNzUsIAorICAgIDE3OSwgMjUsIDUsIDI0NSwgMjA5LCAxNzksIDI1LCA1LCAyNTQsIDIwMSwgMTc5LCAyNSwgNSwgNzYsIDE3OSwgMjUsIDUsIAorICAgIDIyNiwgMTgzLCAxNzksIDI1LCA1LCAyNTMsIDE5MiwgMTc5LCA1LCAyMTMsIDE1MiwgMTc5LCAyNDgsIDE3OCwgMTc5LCA1MiwgCisgICAgMjQ4LCAxNzgsIDE3OSwgMjEsIDIxMCwgODYsIDE3OSwgMjEsIDExMCwgMTc5LCAyMSwgMTA1LCAxNzksIDIxLCAxNTgsIAorICAgIDE3OSwgMjEsIDE2MSwgMTc5LCAyMSwgMTg5LCAxNzksIDIxLCAxOTQsIDE3OSwgMjEsIDE5OCwgMTc5LCAyMSwgMTk1LCAKKyAgICAxNzksIDIxLCAyMDAsIDM4LCA4NCwgMjEsIDIxMCwgODYsIDM4LCA4NCwgMjEsIDExMCwgMzgsIDg0LCAyMSwgMTA1LCAzOCwgCisgICAgODQsIDIxLCAxNTgsIDM4LCA4NCwgMjEsIDE2MSwgMzgsIDg0LCAyMSwgMTg5LCAzOCwgODQsIDIxLCAxOTQsIDM4LCA4NCwgCisgICAgMjEsIDE5OCwgMzgsIDg0LCAyMSwgMTk1LCAzOCwgODQsIDIxLCAyMDAsIDM4LCA4NCwgMSwgNjEsIDM4LCA4NCwgMSwgNzAsIAorICAgIDM4LCA4NCwgMSwgMTc2LCAzOCwgODQsIDEsIDE5NywgMzgsIDg0LCAxLCAxOTAsIDM4LCA4NCwgMSwgMjA1LCAzOCwgODQsIAorICAgIDEsIDIxMywgMTc2LCAzOCwgODQsIDUsIDI1MywgMTc1LCA4NCwgNSwgMjE5LCAxNywgMjUwLCAyNTUsIDg0LCA1LCAyNTEsIAorICAgIDAsIDIxMywgMTUyLCA4NCwgNSwgNTIsIDI1MSwgMCwgMjEzLCAxNTIsIDg0LCA1LCAyNTEsIDAsIDEwNSwgODQsIDUsIDI1MSwgCisgICAgMCwgMTU4LCA4NCwgNSwgMjUxLCAwLCAyNTMsIDE3NSwgODQsIDUsIDIyNCwgMTI0LCA4NCwgMjQzLCAxMDAsIDI0NCwgMTAzLCAKKyAgICA4NCwgMjUwLCAyMzgsIDg0LCAyNDEsIDIzMCwgMjM0LCAxODgsIDIzMiwgMjQyLCAyMSwgMjEwLCA4NiwgMjM0LCAxODgsIAorICAgIDIzMiwgMjQyLCAyMSwgMTEwLCAyMzQsIDE4OCwgMjMyLCAyNDIsIDIxLCAxMDUsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMjEsIAorICAgIDE1OCwgMjM0LCAxODgsIDIzMiwgMjQyLCAyMSwgMTYxLCAyMzQsIDE4OCwgMjMyLCAyNDIsIDIxLCAxODksIDIzNCwgMTg4LCAKKyAgICAyMzIsIDI0MiwgMjEsIDE5NCwgMjM0LCAxODgsIDIzMiwgMjQyLCAyMSwgMTk4LCAyMzQsIDE4OCwgMjMyLCAyNDIsIDIxLCAKKyAgICAxOTUsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMjEsIDIwMCwgMjM0LCAxODgsIDIzMiwgMjQyLCAxLCAxNzYsIDIzNCwgMTg4LCAKKyAgICAyMzIsIDI0MiwgMSwgMjM0LCAxMzIsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjQzLCAxMzUsIDIzNCwgMTg4LCAyMzIsIAorICAgIDI0MiwgMSwgMjI5LCA3NywgMjM0LCAxODgsIDIzMiwgMjQyLCAxLCAyMDYsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjIwLCAKKyAgICAxMDIsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjEwLCAxMTYsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjI3LCAxNjUsIAorICAgIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjE3LCAxMDUsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjQwLCAyMjYsIDIzNCwgCisgICAgMTg4LCAyMzIsIDI0MiwgMSwgMTk3LCAyMzQsIDE4OCwgMjMyLCAyNDIsIDEsIDE5MCwgMjM0LCAxODgsIDIzMiwgMjQyLCAxLCAKKyAgICAyMjUsIDE0NywgMjM0LCAxODgsIDIzMiwgMjQyLCAxLCAxODQsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjQ4LCAyMjEsIAorICAgIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjUyLCAxOTEsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjA1LCAyMzQsIDE4OCwgCisgICAgMjMyLCAyNDIsIDEsIDE5MSwgMjM0LCAxODgsIDIzMiwgMjQyLCAxLCAyMzMsIDEzNSwgMjM0LCAxODgsIDIzMiwgMjQyLCAxLCAKKyAgICAyMTIsIDY1LCAyMzQsIDE4OCwgMjMyLCAyNDIsIDEsIDIxNiwgMjA4LCAyMzQsIDE4OCwgMjMyLCAyNDIsIDEsIDE2MiwgCisgICAgMjM0LCAxODgsIDIzMiwgMjQyLCAxLCAyMTQsIDI3LCAyMzQsIDE4OCwgMjMyLCAyNDIsIDEsIDI1MSwgMzMsIDIzNCwgMTg4LCAKKyAgICAyMzIsIDI0MiwgMSwgNjEsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjI2LCAyMzQsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgCisgICAgNzMsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMSwgMjI2LCAxODMsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMjUsIDIxNCwgMjE0LCAKKyAgICAyMzQsIDE4OCwgMjMyLCAyNDIsIDI1LCA3NSwgMjM0LCAxODgsIDIzMiwgMjQyLCAyNSwgNzAsIDIzNCwgMTg4LCAyMzIsIAorICAgIDI0MiwgMjUsIDI0NSwgMjA5LCAyMzQsIDE4OCwgMjMyLCAyNDIsIDI1LCA3NiwgMjM0LCAxODgsIDIzMiwgMjQyLCAxMzgsIAorICAgIDIyNSwgMzAsIDIzNCwgMTg4LCAyMzIsIDI0MiwgMTM4LCAyNTEsIDEyLCAyMzQsIDE4OCwgMjMyLCAyNDIsIDEzOCwgMjUxLCAKKyAgICAxMywgMjI1LCAzMCwgMjM0LCAxODgsIDIzMiwgMjQyLCA1LCAyNDksIDc3LCAyMzQsIDE4OCwgMjMyLCAyNDIsIDUsIDIxOSwgCisgICAgMTk5LCAyMjMsIDkzLCAxLCAxNzYsIDIyMywgOTMsIDEsIDI0MywgMTM1LCAyMjMsIDkzLCAxLCAyMjksIDc3LCAyMjMsIDkzLCAKKyAgICAxLCAyMTcsIDEwNSwgMjIzLCA5MywgMSwgMjQ4LCAyMjEsIDIyMywgOTMsIDEsIDE5NywgMjIzLCA5MywgMSwgMTkwLCAyMjMsIAorICAgIDkzLCAxLCAyNTIsIDE5MSwgMjIzLCA5MywgMSwgMTg0LCAyMjMsIDkzLCAxLCAyNTEsIDMzLCAyMjMsIDkzLCAxLCAyMzUsIAorICAgIDE0MSwgMjIzLCA5MywgMSwgMjI3LCAxNjUsIDIyMywgOTMsIDEsIDIwNiwgMjIzLCA5MywgMSwgMjA1LCAyMjMsIDkzLCAxLCAKKyAgICAyMzMsIDEzNSwgMjIzLCA5MywgMSwgMTkxLCAyMjMsIDkzLCAxLCAyMTIsIDY1LCAyMjMsIDkzLCAxLCAxNjIsIDIyMywgOTMsIAorICAgIDEsIDIzMSwgMTI0LCAyMjMsIDkzLCAxLCAyMjksIDU2LCAyMjMsIDkzLCAxLCAyMjksIDE0OCwgMjIzLCA5MywgMSwgMjI3LCAKKyAgICAxMzUsIDIyMywgOTMsIDEsIDYxLCAyMjMsIDkzLCAyNSwgNSwgNzMsIDIyMywgOTMsIDI1LCA1LCA3MCwgMjIzLCA5MywgMjUsIAorICAgIDUsIDc1LCAyMjMsIDkzLCAyNSwgNSwgMjU0LCAyMDEsIDIyMywgOTMsIDI1LCA1LCA3NiwgMjIzLCA5MywgMjUsIDUsIDI1MywgCisgICAgMTkyLCAyMjMsIDkzLCAyNSwgNSwgMjQ1LCA1NSwgMjIzLCA5MywgMjUsIDUsIDI0NSwgMjMzLCAyMjMsIDkzLCAxMTYsIDUsIAorICAgIDIyOSwgNzksIDIyMywgOTMsIDExNiwgNSwgMjMwLCAyNSwgMjIzLCA5MywgMTE2LCA1LCAxNTMsIDIyMywgOTMsIDExNiwgNSwgCisgICAgMjQyLCA2MCwgMjIzLCA5MywgMjEzLCAxNTIsIDIyMywgOTMsIDIyMSwgMTczLCA3OCwgMjQsIDEwMCwgMjE2LCA5NywgMjQsIAorICAgIDEwMCwgMjE2LCA5NiwgMjQsIDEwMCwgMjE2LCA5NCwgMjQsIDEwMCwgMjE2LCA5OSwgMjQsIDEwMCwgMjIzLCAyMSwgMjQsIAorICAgIDEwMCwgMjIzLCA1LCAyNCwgMTAwLCAyMjMsIDAsIDI0LCAxMDAsIDIyMywgMiwgMjQsIDEwMCwgMjIzLCAxOCwgMjQsIDEwMCwgCisgICAgMjIzLCAxMSwgMjQsIDEwMCwgMjIzLCA0LCAyNCwgMTAwLCAyMjMsIDIzLCAyNCwgMTAwLCAyMjMsIDYsIDI0LCAxMDAsIAorICAgIDIyMywgMjUsIDI0LCAxMDAsIDIyMywgMjIsIDI0LCAxMDAsIDIzMCwgMjEzLCAyNCwgMTAwLCAyMzAsIDIwNCwgMjQsIDEwMCwgCisgICAgMjMwLCAyMDcsIDI0LCAxMDAsIDIyNSwgODAsIDI0LCAxMDAsIDIyNSwgOTEsIDI0LCAxMDAsIDIyNSwgOTIsIDI0LCAxMDAsIAorICAgIDIxOCwgMjA3LCAyNCwgMTAwLCAyMzYsIDQ2LCAyNCwgMTAwLCAyMzYsIDUzLCAyNCwgMTAwLCAyMTgsIDIxOCwgMjQsIDEwMCwgCisgICAgMjE4LCAyMDUsIDI0LCAxMDAsIDIyNSwgMTMwLCAyNCwgMTAwLCAyNDEsIDE2NywgMjQsIDEwMCwgMjE4LCAyMDIsIDE1NSwgCisgICAgNSwgMjI2LCAyNywgMTU1LCA1LCAyNTAsIDE4NywgMTU1LCA1LCAyMzMsIDY2LCAxNTUsIDUsIDIxMSwgMjQzLCAxNTUsIDEsIAorICAgIDYxLCAxNTUsIDEsIDI0MCwgMTU0LCAyMzQsIDE5MSwgMTU1LCAxLCA3MywgMTU1LCAxLCAyMzYsIDMzLCAxNTUsIDEsIDcwLCAKKyAgICAxNTUsIDEsIDIyNiwgOTAsIDI1MCwgMTYzLCAxNTUsIDEsIDIyOSwgNzgsIDIzMywgMjgsIDE1NSwgMSwgMjI5LCA3OCwgCisgICAgMjMzLCAyOSwgMjIzLCAxNDIsIDE1NSwgMSwgNzUsIDE1NSwgMSwgMjU0LCAyMDEsIDE1NSwgMSwgNzYsIDE1NSwgMSwgMTc2LCAKKyAgICAxNTUsIDEsIDIzNSwgMTMsIDIyMSwgMjI4LCAxNTUsIDEsIDIzNSwgMTMsIDIzMCwgNjYsIDE1NSwgMSwgMjQzLCAxMzUsIAorICAgIDE1NSwgMSwgMjQzLCAxMzYsIDIzMCwgNjYsIDE1NSwgMSwgMjI5LCA3NywgMTU1LCAxLCAyNTEsIDMzLCAxNTUsIDEsIDI1MSwgCisgICAgMzQsIDIzMCwgNjYsIDE1NSwgMSwgMjM1LCAxNDEsIDE1NSwgMSwgMjI3LCAxNjYsIDIzMCwgNjYsIDE1NSwgMSwgMjM1LCAKKyAgICAxNDIsIDIzMSwgMjA3LCAxNTUsIDEsIDIyNywgMTY1LCAxNTUsIDEsIDIxNSwgMTU2LCAxNTUsIDEsIDIxNSwgMTU3LCAyMzEsIAorICAgIDIwNywgMTU1LCAxLCAyNDgsIDEzNSwgMTU1LCAxLCAyNDgsIDEzNiwgMjMxLCAyMDcsIDE1NSwgMSwgMjI5LCAyMjksIDIzMCwgCisgICAgNjYsIDE1NSwgMSwgMjE3LCAxMDUsIDE1NSwgMSwgMjE3LCAxMDYsIDIzMCwgNjYsIDE1NSwgMSwgMjQ4LCAyMjEsIDE1NSwgCisgICAgMSwgMjQ4LCAyMjIsIDIzMSwgMjA3LCAxNTUsIDEsIDE5NywgMTU1LCAxLCAxOTAsIDE1NSwgMSwgMjI2LCA5MCwgMjMwLCAKKyAgICA2NiwgMTU1LCAxLCAyNTIsIDE5MSwgMTU1LCAxLCAyNTIsIDE5MiwgMjMwLCA2NiwgMTU1LCAxLCAxODQsIDE1NSwgMSwgCisgICAgMTkxLCAxNTUsIDEsIDIwNSwgMTU1LCAxLCAyMjMsIDE4OCwgMjU0LCAyMTAsIDE1NSwgMSwgMjMzLCAxMzUsIDE1NSwgMSwgCisgICAgMjEyLCA2NSwgMTU1LCAxLCAyMjIsIDM0LCAyMzAsIDY2LCAxNTUsIDEsIDIyMiwgMzQsIDIzMSwgMjA3LCAxNTUsIDEsIAorICAgIDIwNiwgMTU1LCAxLCAxNjIsIDE1NSwgNSwgMjUwLCAxODgsIDIxNiwgMjUwLCAxNTUsIDI1LCA1LCAyMTcsIDQ3LCAxNTUsIAorICAgIDI1LCA1LCAyMTYsIDM1LCAxNTUsIDI1LCA1LCAyMTEsIDE5MCwgMTU1LCAyNSwgNSwgMjExLCAxOTEsIDIzMSwgNjksIDE1NSwgCisgICAgMjUsIDUsIDIxOCwgNDcsIDE1NSwgMjUsIDUsIDIxOCwgNDgsIDIzMSwgNTcsIDE1NSwgMjUsIDUsIDIxNywgNjUsIDE1NSwgCisgICAgMjUsIDUsIDI0NywgMTk0LCAyMzAsIDY1LCAxNTUsIDI1LCA1LCAyMjUsIDE4NCwgMTU1LCAxMTYsIDUsIDIzNCwgMTU4LCAKKyAgICAxNTUsIDExNiwgNSwgMjI1LCAxOTYsIDE1NSwgMTE2LCA1LCAyNTEsIDE5LCAxNTUsIDIyNiwgNDAsIDE1NSwgNDMsIDIyMywgCisgICAgNjksIDE1NSwgNDQsIDIyMywgNjksIDE1NSwgMjI2LCA3OSwgMjU0LCAxMTcsIDE1NSwgMjI2LCA3OSwgMjMxLCAyMjQsIAorICAgIDE1NSwgMjI2LCA3OSwgMjMyLCA4OCwgMTU1LCAyMjYsIDc5LCAyMTEsIDIzOCwgMTU1LCAyMjYsIDc5LCAyMjYsIDQxLCAKKyAgICAxNTUsIDIyNiwgNzksIDIzMiwgMjA1LCAxNTUsIDIyNiwgNzksIDIzMiwgODIsIDE1NSwgMjI2LCA3OSwgMjU0LCAyNDksIAorICAgIDE1NSwgMjI2LCA3OSwgMjU0LCAyNTAsIDI1NCwgMjQ5LCAxNTUsIDIyNiwgNzksIDIyNSwgNTEsIDE1NSwgMjE1LCA5NCwgCisgICAgMjI2LCA3OSwgMjI1LCA1MSwgMTU1LCAyMjYsIDM2LCAxNTUsIDIxLCAyMTAsIDg2LCAxNTUsIDIxLCAxMTAsIDE1NSwgMjEsIAorICAgIDEwNSwgMTU1LCAyMSwgMTU4LCAxNTUsIDIxLCAxNjEsIDE1NSwgMjEsIDE4OSwgMTU1LCAyMSwgMTk0LCAxNTUsIDIxLCAKKyAgICAxOTgsIDE1NSwgMjEsIDE5NSwgMTU1LCAyMSwgMjAwLCAxNTUsIDIyNiwgNzksIDIxNiwgNjksIDIxNSwgMTA2LCAxNTUsIAorICAgIDIyNiwgNzksIDIzNSwgMTY3LCAxNzIsIDEsIDYxLCAxNzIsIDEsIDczLCAxNzIsIDEsIDcwLCAxNzIsIDEsIDc1LCAxNzIsIAorICAgIDEsIDI1NCwgMjAxLCAxNzIsIDEsIDc2LCAxNzIsIDEsIDE3NiwgMTcyLCAxLCAyMzQsIDEzMiwgMTcyLCAxLCAyNDMsIDEzNSwgCisgICAgMTcyLCAxLCAyNDIsIDI0OSwgMTcyLCAxLCAyMjgsIDI0NSwgMTcyLCAxLCAyMjksIDc3LCAxNzIsIDEsIDI1MCwgMTU3LCAKKyAgICAxNzIsIDEsIDI1MCwgMTEyLCAxNzIsIDEsIDIzNSwgMTQxLCAxNzIsIDEsIDIzNSwgMTE0LCAxNzIsIDEsIDIyOCwgMjM1LCAKKyAgICAxNzIsIDEsIDIyOCwgMjM3LCAxNzIsIDEsIDIyOCwgMjM2LCAxNzIsIDEsIDIxNywgMTA1LCAxNzIsIDEsIDIxNiwgMjA4LCAKKyAgICAxNzIsIDEsIDI0OCwgMjIxLCAxNzIsIDEsIDI0OCwgMjUsIDE3MiwgMSwgMjI3LCAyMDcsIDE3MiwgMSwgMTk3LCAxNzIsIDEsIAorICAgIDI0OCwgMTM1LCAxNzIsIDEsIDE5MCwgMTcyLCAxLCAyMjQsIDIyMCwgMTcyLCAxLCAyMjUsIDE0NywgMTcyLCAxLCAyNTIsIAorICAgIDE5MSwgMTcyLCAxLCAyNTIsIDE4LCAxNzIsIDEsIDIzMCwgOTUsIDE3MiwgMSwgMTg0LCAxNzIsIDEsIDI1MiwgMTExLCAKKyAgICAxNzIsIDEsIDE5MSwgMTcyLCAxLCAyMDUsIDE3MiwgMSwgMjMzLCAxMzUsIDE3MiwgMSwgMjE0LCAyNywgMTcyLCAxLCAyMTgsIAorICAgIDIyMywgMTcyLCAxLCAyMDYsIDE3MiwgMSwgMTYyLCAxNzIsIDI1LCA1LCAyNTUsIDczLCAxNzIsIDI1LCA1LCA3MywgMTcyLCAKKyAgICAyNSwgNSwgMjM2LCAzMywgMTcyLCAyNSwgNSwgMjQ1LCAxOTUsIDE3MiwgMjUsIDUsIDcwLCAxNzIsIDI1LCA1LCAyMjYsIAorICAgIDIzNCwgMTcyLCAyNSwgNSwgNzYsIDE3MiwgMjUsIDUsIDI1NCwgMjAxLCAxNzIsIDI1LCA1LCAyNTMsIDE5MiwgMTcyLCAyNSwgCisgICAgNSwgMjE0LCAyMTQsIDE3MiwgMTE2LCA1LCAxOTEsIDE3MiwgMTE2LCA1LCAyMDUsIDE3MiwgMTE2LCA1LCAyMzMsIDEzNSwgCisgICAgMTcyLCAxMTYsIDUsIDIxMiwgNjUsIDE3MiwgMSwgNDAsIDIzNSwgMjMsIDE3MiwgMSwgNDAsIDI0MywgMjAyLCAxNzIsIDEsIAorICAgIDQwLCAyMjksIDc5LCAxNzIsIDExNiwgNSwgNDAsIDIyOSwgNzksIDE3MiwgMSwgNDAsIDI1MCwgMTU4LCAxNzIsIDEsIDQwLCAKKyAgICAyMTcsIDE1MiwgMTcyLCAxLCA0MCwgMjMwLCAyNSwgMTcyLCAxLCA0MCwgMjI2LCAxMDUsIDE3MiwgMSwgNDAsIDIxMSwgCisgICAgMTE3LCAxNzIsIDEsIDQwLCAxNTMsIDE3MiwgMSwgNDAsIDE1NiwgMTcyLCAxLCA0MCwgMjE4LCAyMjYsIDE3MiwgMTE2LCA1LCAKKyAgICA0MCwgMTkzLCAxNzIsIDExNiwgNSwgNDAsIDI0MiwgNjAsIDE3MiwgMjEsIDIxMCwgODYsIDE3MiwgMjEsIDExMCwgMTcyLCAKKyAgICAyMSwgMTA1LCAxNzIsIDIxLCAxNTgsIDE3MiwgMjEsIDE2MSwgMTcyLCAyMSwgMTg5LCAxNzIsIDIxLCAxOTQsIDE3MiwgMjEsIAorICAgIDE5OCwgMTcyLCAyMSwgMTk1LCAxNzIsIDIxLCAyMDAsIDE3MiwgMjI0LCAxNDEsIDIxOCwgMjUxLCAxNzIsIDIyNCwgMTQxLCAKKyAgICAyNDgsIDE3OCwgMTcyLCAyMjQsIDE0MSwgNTIsIDI0OCwgMTc4LCAxNzIsIDIyNCwgMTQxLCAyMTUsIDIxMSwgMjQ4LCAxNzgsIAorICAgIDY4LCAxLCAyMzQsIDEyNiwgMjQzLCAxMzUsIDY4LCAxLCAyMzQsIDEyNiwgMjUxLCAzMywgNjgsIDEsIDIzNCwgMTI2LCAKKyAgICAyNTAsIDE1NywgNjgsIDEsIDIzNCwgMTI2LCAyMzUsIDE0MSwgNjgsIDEsIDIzNCwgMTI2LCAyMzUsIDExNCwgNjgsIDEsIAorICAgIDIzNCwgMTI2LCAyMjcsIDE2NSwgNjgsIDEsIDIzNCwgMTI2LCAyMTUsIDE1NiwgNjgsIDEsIDIzNCwgMTI2LCAyMTUsIDE0NCwgCisgICAgNjgsIDEsIDIzNCwgMTI2LCAyNDgsIDEzNSwgNjgsIDEsIDIzNCwgMTI2LCAyNDgsIDExOSwgNjgsIDEsIDIzNCwgMTI2LCAKKyAgICAyNDgsIDI1LCA2OCwgMSwgMjM0LCAxMjYsIDE5NywgNjgsIDEsIDIzNCwgMTI2LCAyMDYsIDY4LCAxLCAyMzQsIDEyNiwgCisgICAgMTYyLCA2OCwgMSwgMjM0LCAxMjYsIDI0MSwgMTg5LCA2OCwgMSwgMjM0LCAxMjYsIDI0NCwgMTk2LCA2OCwgNTgsIDEsIAorICAgIDIzNCwgMTI2LCAyMjMsIDEwOSwgNjgsIDEsIDIzNCwgMTI2LCAyMTEsIDE2NSwgNjgsIDEsIDIzNCwgMTI2LCAyMTAsIDExNiwgCisgICAgNjgsIDEsIDIzNCwgMTI2LCAyMDUsIDY4LCAyMzIsIDE0NSwgMjM0LCAxMjYsIDIyNiwgMjUzLCA2OCwgMjMyLCAxNDUsIAorICAgIDIzNCwgMTI2LCAyMjQsIDQzLCA2OCwgMjMyLCAxNDUsIDIzNCwgMTI2LCAyNDEsIDEyMSwgNjgsIDE2LCAyNTQsIDE5MCwgCisgICAgMjQ1LCAzMCwgNjgsIDE2LCAyNTQsIDE5MCwgMTEwLCA2OCwgMTYsIDI1NCwgMTkwLCAxMDUsIDY4LCAxLCAyNTQsIDE5MCwgCisgICAgMjA1LCA2OCwgNSwgMjI2LCAyMywgMjM0LCAyMTMsIDIxNiwgMzAsIDM5LCAyMDgsIDEsIDEyMSwgMjM0LCAyOCwgMzksIAorICAgIDIwOCwgMSwgMTI1LCAyMzQsIDI4LCAzOSwgMjA4LCAxLCAxMjEsIDIzNCwgMTA1LCAzOSwgMjA4LCAxLCAxMjUsIDIzNCwgCisgICAgMTA1LCAzOSwgMjA4LCAxLCAxMjEsIDIzNCwgMTE0LCAzOSwgMjA4LCAxLCAxMjUsIDIzNCwgMTE0LCAzOSwgMjA4LCAxLCAKKyAgICAxMjEsIDI0MiwgMTc0LCAzOSwgMjA4LCAxLCAxMjUsIDI0MiwgMTc0LCAzOSwgMjA4LCAxLCAxMjEsIDIyOSwgNCwgMzksIAorICAgIDIwOCwgMSwgMTI1LCAyMjksIDQsIDM5LCAyMDgsIDEsIDEyMSwgMjQ5LCAyMzgsIDM5LCAyMDgsIDEsIDEyNSwgMjQ5LCAKKyAgICAyMzgsIDM5LCAyMDgsIDEsIDEyMSwgMjUwLCA4NiwgMzksIDIwOCwgMSwgMTI1LCAyNTAsIDg2LCAzOSwgMjA4LCAxLCAxMjEsIAorICAgIDIxOSwgNTgsIDM5LCAyMDgsIDEsIDEyNSwgMjE5LCA1OCwgMzksIDIwOCwgMSwgMTIxLCAyMjcsIDEzNCwgMzksIDIwOCwgMSwgCisgICAgMTI1LCAyMjcsIDEzNCwgMzksIDIwOCwgMSwgMTIxLCAyNDcsIDE0NSwgMzksIDIwOCwgMSwgMTI1LCAyNDcsIDE0NSwgMzksIAorICAgIDIwOCwgMSwgMTIxLCAxMTEsIDM5LCAyMDgsIDEsIDEyNSwgMTExLCAzOSwgMjA4LCAxLCAxMjEsIDIxNiwgMTU2LCAzOSwgCisgICAgMjA4LCAxLCAxMjUsIDIxNiwgMTU2LCAzOSwgMjA4LCAxLCAxMjEsIDIyOCwgNzQsIDM5LCAyMDgsIDEsIDEyNSwgMjI4LCAKKyAgICA3NCwgMzksIDIwOCwgMSwgMTIxLCAyNTEsIDIwNSwgMzksIDIwOCwgMSwgMTI1LCAyNTEsIDIwNSwgMzksIDIwOCwgMSwgCisgICAgMTIxLCAyMjUsIDE2LCAzOSwgMjA4LCAxLCAxMjUsIDIyNSwgMTYsIDM5LCAyMDgsIDEsIDEyMSwgMjI1LCAxMjEsIDM5LCAKKyAgICAyMDgsIDEsIDEyNSwgMjI1LCAxMjEsIDM5LCAyMDgsIDEsIDEyMSwgMjQ0LCA0MywgMzksIDIwOCwgMSwgMTI1LCAyNDQsIAorICAgIDQzLCAzOSwgMjA4LCAxLCAxMjEsIDIzMCwgMTYxLCAzOSwgMjA4LCAxLCAxMjUsIDIzMCwgMTYxLCAzOSwgMjA4LCAxLCAKKyAgICAxMjEsIDIxMCwgMjQ0LCAzOSwgMjA4LCAxLCAxMjUsIDIxMCwgMjQ0LCAzOSwgMjA4LCAxLCAxMjEsIDIyMiwgMjExLCAzOSwgCisgICAgMjA4LCAxLCAxMjUsIDIyMiwgMjExLCAzOSwgMjA4LCAxLCAxMjEsIDIzMiwgMTU2LCAzOSwgMjA4LCAxLCAxMjUsIDIzMiwgCisgICAgMTU2LCAzOSwgMjA4LCAxLCAxMjEsIDIxMywgMTM4LCAzOSwgMjA4LCAxLCAxMjUsIDIxMywgMTM4LCAzOSwgMjA4LCAxLCAKKyAgICAxMjEsIDI0MSwgNjgsIDM5LCAyMDgsIDEsIDEyNSwgMjQxLCA2OCwgMzksIDIwOCwgMSwgMTIxLCA3NiwgMzksIDIwOCwgMSwgCisgICAgMTI1LCA3NiwgMzksIDIwOCwgMjMxLCAyMDQsIDIzNCwgMjMwLCAzOSwgMjA4LCAyNSwgMjU1LCA3MywgMzksIDIwOCwgMjUsIAorICAgIDczLCAzOSwgMjA4LCAyNSwgMjE0LCAyMTQsIDM5LCAyMDgsIDI1LCA3MCwgMzksIDIwOCwgMjUsIDc1LCAzOSwgMjA4LCAyNSwgCisgICAgNzYsIDM5LCAyMDgsIDIzMSwgMjA0LCAyMzQsIDEwOCwgMzksIDIwOCwgMjUsIDI0MCwgMTE5LCAzOSwgMjA4LCAyNSwgMjE0LCAKKyAgICAyMTMsIDM5LCAyMDgsIDI1LCAyMTQsIDIyOSwgMzksIDIwOCwgMjUsIDI1MywgMTkwLCAzOSwgMjA4LCAyNSwgMjUzLCAxNjcsIAorICAgIDM5LCAyMDgsIDI1LCAyNTQsIDEyMywgMzksIDIwOCwgMjUsIDI1NCwgMTM2LCAzOSwgMjA4LCAxMzgsIDIzMSwgMjA0LCAKKyAgICAyNDUsIDE4MCwgMzksIDIwOCwgMTM4LCAyMzEsIDIwNCwgMjI3LCAyMDYsIDM5LCAyMDgsIDEzOCwgMjMxLCAyMDQsIDIxNiwgCisgICAgMTU2LCAzOSwgMjA4LCAxMzgsIDIzMSwgMjA0LCAyMTksIDQyLCAzOSwgMjA4LCAxNiwgMjM0LCAxMywgMzksIDIwOCwgMTYsIAorICAgIDIyNywgMjA2LCAzOSwgMjA4LCAxNiwgMjIxLCAyNTMsIDM5LCAyMDgsIDE2LCAyNDEsIDY5LCAyNDEsIDY0LCAzOSwgMjA4LCAKKyAgICAxNiwgMjM0LCAyMiwgMjM0LCAyMSwgMTg2LCAxODUsIDEsIDc1LCAxODYsIDE4NSwgMSwgNzYsIDE4NiwgMTg1LCAxLCAyNTAsIAorICAgIDE1NywgMTg2LCAxODUsIDEsIDIyNywgMTY1LCAxODYsIDE4NSwgMSwgMjE1LCAxNTYsIDE4NiwgMTg1LCAxLCAyMTUsIDE0NCwgCisgICAgMTg2LCAxODUsIDEsIDI0OCwgMTM1LCAxODYsIDE4NSwgMSwgMjQ4LCAxMTksIDE4NiwgMTg1LCAxLCAyMjgsIDExMCwgMTg2LCAKKyAgICAxODUsIDEsIDIyMCwgMTAyLCAxODYsIDE4NSwgMSwgMjE4LCAyMjMsIDE4NiwgMTg1LCAyNSwgNSwgMjM2LCAzMywgMTg2LCAKKyAgICAxODUsIDI1LCA1LCAyMTQsIDExOCwgMTg2LCAxODUsIDI1LCA1LCAyNTUsIDM3LCAxODYsIDE4NSwgMjUsIDUsIDI1MywgCisgICAgMTkyLCAxODYsIDE4NSwgMjUsIDUsIDI1NSwgMzAsIDE4NiwgMTg1LCAyNTAsIDEyNSwgMTg2LCAxODUsIDI1NCwgMjA2LCAKKyAgICAyMzQsIDk4LCAxODYsIDE4NSwgMjU0LCAxMDMsIDE4NiwgMTg1LCAzLCAyMjMsIDc0LCA3OCwgMTg2LCAxODUsIDIxMSwgCisgICAgMjA5LCAyMjMsIDc0LCA3OCwgMTg2LCAxODUsIDI1LCA1LCAyMTMsIDE0NywgMTg2LCAxODUsIDIxMywgMTUyLCAyOSwgMywgCisgICAgMjE1LCAxMzcsIDI5LCAzLCAyMTUsIDE0MCwgMjksIDMsIDIxNSwgMTQzLCAyOSwgMywgMjE1LCAxNDEsIDI5LCAzLCAyMTUsIAorICAgIDE0MiwgMjksIDMsIDIxNSwgMTM5LCAyOSwgMywgMjQ4LCAxMTMsIDI5LCAzLCAyNDgsIDExNSwgMjksIDMsIDI0OCwgMTE4LCAKKyAgICAyOSwgMywgMjQ4LCAxMTYsIDI5LCAzLCAyNDgsIDExNywgMjksIDMsIDI0OCwgMTE0LCAyOSwgMywgMjQ2LCAyOCwgMjksIDMsIAorICAgIDI0NiwgMzEsIDI5LCAzLCAyNDYsIDM3LCAyOSwgMywgMjQ2LCAzNSwgMjksIDMsIDI0NiwgMzYsIDI5LCAzLCAyNDYsIDI5LCAKKyAgICAyOSwgMywgMjUwLCAyMDQsIDI5LCAzLCAyNTAsIDE5OCwgMjksIDMsIDI1MCwgMjAwLCAyOSwgMywgMjUwLCAyMDMsIDI5LCAKKyAgICAzLCAyNTAsIDIwMSwgMjksIDMsIDI1MCwgMjAyLCAyOSwgMywgMjUwLCAxOTksIDI5LCAzLCAyNTIsIDExMSwgMjksIDMsIAorICAgIDI1MiwgOTAsIDI5LCAzLCAyNTIsIDEwMiwgMjksIDMsIDI1MiwgMTEwLCAyOSwgMywgMjUyLCAxMDUsIDI5LCAzLCAyNTIsIAorICAgIDEwNiwgMjksIDMsIDI1MiwgOTQsIDE4NiwgMTg1LCAxLCAyMzQsIDE5LCAxODYsIDE4NSwgMSwgMjIxLCAyNTMsIDE4NiwgCisgICAgMTg1LCAxLCAyMzMsIDEwOSwgMTg2LCAxODUsIDEsIDIzMCwgMTcyLCAxODYsIDE4NSwgMSwgMTkwLCAxODYsIDE4NSwgMSwgCisgICAgMTk3LCAxODYsIDE4NSwgMSwgMjUwLCAxMDIsIDE4NiwgMTg1LCAxLCAyMTYsIDkwLCAxODYsIDE4NSwgMSwgMjM0LCAxMDEsIAorICAgIDE4NiwgMTg1LCAxLCAyMjgsIDI1MCwgMTg2LCAxODUsIDEsIDIxNiwgMTUwLCAxODYsIDE4NSwgMSwgMjEyLCA2MCwgMTg2LCAKKyAgICAxODUsIDEsIDIxMSwgNjksIDE4NiwgMTg1LCAxLCAyNDAsIDIxNiwgMTg2LCAxODUsIDEsIDIxNCwgMTkwLCAxODYsIDE4NSwgCisgICAgMSwgNzMsIDE4NiwgMTg1LCAxLCAyMjUsIDE0MiwgMTg2LCAxODUsIDEsIDI1MywgMjAyLCAxODYsIDE4NSwgMSwgMjQyLCAKKyAgICAxNjcsIDE4NiwgMTg1LCAxLCAyMzUsIDExMiwgMTg2LCAxODUsIDEsIDIyMywgMTY2LCAxODYsIDE4NSwgMSwgMjUyLCAxOTEsIAorICAgIDE4NiwgMTg1LCAxLCAyMzUsIDEwMCwgMTg2LCAxODUsIDEsIDI0NywgMjE5LCAxODYsIDE4NSwgMSwgMjQyLCAyMjEsIDE4NiwgCisgICAgMTg1LCAxLCAyNDgsIDUsIDE4NiwgMTg1LCAxLCAyNTIsIDE2LCAxODYsIDE4NSwgMSwgMjM0LCAyMCwgMjMyLCAxMjgsIAorICAgIDE4NiwgMTg1LCAxLCAyMzMsIDExMCwgMjMyLCAxMjgsIDE4NiwgMTg1LCAxLCAyMzAsIDE3MywgMjMyLCAxMjgsIDE4NiwgCisgICAgMTg1LCAxLCAyMjYsIDkwLCAyMzIsIDEyOCwgMTg2LCAxODUsIDEsIDIyOSwgMjI5LCAyMzIsIDEyOCwgMTg2LCAxODUsIDEsIAorICAgIDIxNiwgOTEsIDIzMiwgMTI4LCAxODYsIDE4NSwgMSwgMjI4LCAyNTEsIDIzMiwgMTI4LCAxODYsIDE4NSwgMSwgMjQwLCAKKyAgICAxNTQsIDIzMiwgMTI4LCAxODYsIDE4NSwgMjUsIDUsIDIyNiwgMTk1LCAxODYsIDE4NSwgMjUsIDUsIDIzNSwgMjUzLCAxODYsIAorICAgIDE4NSwgMjUsIDUsIDI1NCwgMTIyLCAxODYsIDE4NSwgMjUsIDUsIDIxMSwgMzgsIDE4NiwgMTg1LCAyNSwgNSwgMjE5LCAzMiwgCisgICAgMTg2LCAxODUsIDI1LCA1LCAyMTQsIDE4NywgMTg2LCAxODUsIDI1LCA1LCAyNTAsIDEyMywgMTg2LCAxODUsIDI1LCA1LCAKKyAgICAyMjcsIDE5MSwgMTg2LCAxODUsIDI1MCwgMTI0LCAxODYsIDE4NSwgMjMyLCA4NSwgMjM1LCAxNTAsIDE4NiwgMTg1LCAyNTQsIAorICAgIDQ2LCAyMzUsIDE1MCwgMTg2LCAxODUsIDIxLCAyMTAsIDg2LCAxODYsIDE4NSwgMjEsIDExMCwgMTg2LCAxODUsIDIxLCAKKyAgICAxMDUsIDE4NiwgMTg1LCAyMSwgMTU4LCAxODYsIDE4NSwgMjEsIDE2MSwgMTg2LCAxODUsIDIxLCAxODksIDE4NiwgMTg1LCAKKyAgICAyMSwgMTk0LCAxODYsIDE4NSwgMjEsIDE5OCwgMTg2LCAxODUsIDIxLCAxOTUsIDE4NiwgMTg1LCAyMSwgMjAwLCAyNCwgCisgICAgMTQzLCAyMjcsIDc3LCAyNCwgMTQzLCAyMjcsIDgyLCAyNCwgMTQzLCAyMTAsIDI0MywgMjQsIDE0MywgMjEwLCAyNDIsIDI0LCAKKyAgICAxNDMsIDIxMCwgMjQxLCAyNCwgMTQzLCAyMTUsIDIzLCAyNCwgMTQzLCAyMTUsIDI2LCAyNCwgMTQzLCAyMTAsIDIxMCwgMjQsIAorICAgIDE0MywgMjEwLCAyMDYsIDI0LCAxNDMsIDI0NSwgNTQsIDI0LCAxNDMsIDI0NSwgNTIsIDI0LCAxNDMsIDI0NSwgNTMsIDI0LCAKKyAgICAxNDMsIDI0NSwgNTAsIDI0LCAxNDMsIDI0MCwgMTQ0LCAyNCwgMTQzLCAyNDAsIDE0MywgMjQsIDE0MywgMjQwLCAxNDEsIAorICAgIDI0LCAxNDMsIDI0MCwgMTQyLCAyNCwgMTQzLCAyNDAsIDE0NywgMjQsIDE0MywgMjQwLCAxNDAsIDI0LCAxNDMsIDI0MCwgCisgICAgMTM5LCAyNCwgMTQzLCAyNDAsIDE0OSwgMjQsIDE0MywgMjU0LCAzMywgMjQsIDE0MywgMjU0LCAzMiwgMjQsIDkwLCAyMjgsIAorICAgIDIxOSwgMjQsIDkwLCAyMjgsIDIyNSwgMjQsIDkwLCAyMTgsIDIwNCwgMjQsIDkwLCAyMTgsIDIwMywgMjQsIDkwLCAyMTYsIAorICAgIDk2LCAyNCwgOTAsIDIxNiwgOTQsIDI0LCA5MCwgMjE2LCA5MywgMjQsIDkwLCAyMTYsIDk5LCAyNCwgOTAsIDIxNiwgMTAwLCAKKyAgICAyNCwgOTAsIDIxNiwgOTIsIDI0LCA5MCwgMjIzLCA1LCAyNCwgOTAsIDIyMywgMjAsIDI0LCA5MCwgMjE4LCAyMTAsIDI0LCAKKyAgICA5MCwgMjIzLCAxNywgMjQsIDkwLCAyMjMsIDcsIDI0LCA5MCwgMjIzLCA5LCAyNCwgOTAsIDIyMiwgMjUyLCAyNCwgOTAsIAorICAgIDIyMiwgMjUzLCAyNCwgOTAsIDIzNCwgMjE4LCAyNCwgOTAsIDIzMCwgMjEyLCAyNCwgOTAsIDIzMCwgMjA2LCAyNCwgOTAsIAorICAgIDIxOCwgMjE0LCAyNCwgOTAsIDIzMCwgMjA5LCAyNCwgOTAsIDIzMCwgMjE1LCAyNCwgOTAsIDIyNSwgNzYsIDI0LCA5MCwgCisgICAgMjI1LCA4NSwgMjQsIDkwLCAyMjUsIDg5LCAyNCwgOTAsIDIxOCwgMjEyLCAyNCwgOTAsIDIyNSwgNzksIDI0LCA5MCwgMjI1LCAKKyAgICA5MywgMjQsIDkwLCAyMjUsIDk0LCAyNCwgOTAsIDIxOSwgMTQwLCAyNCwgOTAsIDIxOSwgMTQzLCAyNCwgOTAsIDIxOCwgCisgICAgMjA4LCAyNCwgOTAsIDIxOCwgMjA2LCAyNCwgOTAsIDIxOSwgMTM4LCAyNCwgOTAsIDIxOSwgMTQ2LCAyNCwgOTAsIDIxOSwgCisgICAgMTQ3LCAyNCwgOTAsIDIxOSwgMTMyLCAyNCwgOTAsIDIxOSwgMTQ1LCAyNCwgOTAsIDIyNiwgMzAsIDI0LCA5MCwgMjI2LCAKKyAgICAzMSwgMjQsIDkwLCAyMTEsIDI0LCAyNCwgOTAsIDIxMSwgMjUsIDI0LCA5MCwgMjUwLCA0NCwgMjQsIDkwLCAyNTAsIDQzLCAKKyAgICAyNCwgOTAsIDIxOCwgMjE5LCAyNCwgOTAsIDIyNSwgMTI4LCAyNCwgOTAsIDIyNSwgMTI3LCA5LCAxNCwgMjM4LCAyNCwgOSwgCisgICAgMTQsIDIzOCwgMjMsIDksIDE0LCAyMzgsIDIyLCA5LCAxNCwgMjM4LCAyMSwgOSwgMTQsIDIzOCwgMjAsIDksIDE0LCAyMzgsIAorICAgIDE5LCA5LCAxNCwgMjM4LCAxOCwgOSwgMTQsIDIzOCwgMTcsIDksIDE0LCAyMzgsIDE2LCA5LCAxNCwgMjM4LCAxNSwgOSwgCisgICAgMTQsIDIzOCwgMTQsIDksIDE0LCAyMzgsIDEzLCA5LCAxNCwgMjM4LCAxMiwgOSwgMTQsIDIzOCwgMTEsIDksIDE0LCAyMzgsIAorICAgIDEwLCA5LCAxNCwgMjM4LCA5LCA5LCAxNCwgMjM4LCA4LCA5LCAxNCwgMjM4LCA3LCA5LCAxNCwgMjM4LCA2LCA5LCAxNCwgCisgICAgMjM4LCA1LCA5LCAxNCwgMjM4LCA0LCA5LCAxNCwgMjM4LCAzLCA5LCAxNCwgMjM4LCAyLCA5LCAxNCwgMjM4LCAxLCA5LCAKKyAgICAxNCwgMjM4LCAwLCA5LCAxNCwgMjM3LCAyNTUsIDksIDE0LCAyMzcsIDI1NCwgOSwgMTQsIDIzNywgMjUzLCA5LCAxNCwgCisgICAgMjM3LCAyNTIsIDksIDE0LCAyMzcsIDI1MSwgOSwgMTQsIDIzNywgMjUwLCA5LCAxNCwgMjM3LCAyNDksIDksIDE0LCAyMzcsIAorICAgIDI0OCwgOSwgMTQsIDIzNywgMjQ3LCA5LCAxNCwgMjM3LCAyNDYsIDksIDE0LCAyMzcsIDI0NSwgOSwgMTQsIDIzNywgMjQ0LCAKKyAgICA5LCAxNCwgMjM3LCAyNDMsIDksIDE0LCAyMzcsIDI0MiwgOSwgMTQsIDIzNywgMjQxLCA5LCAxNCwgMjM3LCAyNDAsIDksIAorICAgIDE0LCAyMzcsIDIzOSwgOSwgMTQsIDIzNywgMjM4LCA5LCAxNCwgMjM3LCAyMzcsIDksIDE0LCAyMzcsIDIzNiwgOSwgMTQsIAorICAgIDIzNywgMjM1LCA5LCAxNCwgMjM3LCAyMzQsIDksIDE0LCAyMzcsIDIzMywgOSwgMTQsIDIzNywgMjMyLCA5LCAxNCwgMjM3LCAKKyAgICAyMzEsIDksIDE0LCAyMzcsIDIzMCwgOSwgMTQsIDIzNywgMjI5LCA5LCAxNCwgMjM3LCAyMjgsIDksIDE0LCAyMzcsIDIyNywgCisgICAgOSwgMTQsIDIzNywgMjI2LCA5LCAxNCwgMjM3LCAyMjUsIDksIDE0LCAyMzcsIDIyNCwgOSwgMTQsIDIzNywgMjIzLCA5LCAKKyAgICAxNCwgMjM3LCAyMjIsIDksIDE0LCAyMzcsIDIyMSwgOSwgMTQsIDIzNywgMjIwLCA5LCAxNCwgMjM3LCAyMTksIDksIDE0LCAKKyAgICAyMzcsIDIxOCwgOSwgMTQsIDIzNywgMjE3LCA5LCAxNCwgMjM3LCAyMTYsIDksIDE0LCAyMzcsIDIxNSwgOSwgMTQsIDIzNywgCisgICAgMjE0LCA5LCAxNCwgMjM3LCAyMTMsIDksIDE0LCAyMzcsIDIxMiwgOSwgMTQsIDIzNywgMjExLCA5LCAxNCwgMjM3LCAyMTAsIAorICAgIDksIDE0LCAyMzcsIDIwOSwgOSwgMTQsIDIzNywgMjA4LCA5LCAxNCwgMjM3LCAyMDcsIDksIDE0LCAyMzcsIDIwNiwgOSwgCisgICAgMTQsIDIzNywgMjA1LCA5LCAxNCwgMjM3LCAyMDQsIDksIDE0LCAyMzcsIDIwMywgOSwgMTQsIDIzNywgMjAyLCA5LCAxNCwgCisgICAgMjM3LCAyMDEsIDksIDE0LCAyMzcsIDIwMCwgOSwgMTQsIDIzNywgMTk5LCA5LCAxNCwgMjM3LCAxOTgsIDksIDE0LCAyMzcsIAorICAgIDE5NywgOSwgMTQsIDIzNywgMTk2LCA5LCAxNCwgMjM3LCAxOTUsIDksIDE0LCAyMzcsIDE5NCwgOSwgMTQsIDIzNywgMTkzLCAKKyAgICA5LCAxNCwgMjM3LCAxOTIsIDksIDE0LCAyMzcsIDE5MSwgOSwgMTQsIDIzNywgMTkwLCA5LCAxNCwgMjM3LCAxODksIDksIAorICAgIDE0LCAyMzcsIDE4OCwgOSwgMTQsIDIzNywgMTg3LCA5LCAxNCwgMjM3LCAxODYsIDksIDE0LCAyMzcsIDE4NSwgOSwgMTQsIAorICAgIDIzNywgMTg0LCA5LCAxNCwgMjM3LCAxODMsIDksIDE0LCAyMzcsIDE4MiwgOSwgMTQsIDIzNywgMTgxLCA5LCAxNCwgMjM3LCAKKyAgICAxODAsIDksIDE0LCAyMzcsIDE3OSwgOSwgMTQsIDIzNywgMTc4LCA5LCAxNCwgMjM3LCAxNzcsIDksIDE0LCAyMzcsIDE3NiwgCisgICAgOSwgMTQsIDIzNywgMTc1LCA5LCAxNCwgMjM3LCAxNzQsIDksIDE0LCAyMzcsIDE3MywgOSwgMTQsIDIzNywgMTcyLCA5LCAKKyAgICAxNCwgMjM3LCAxNzEsIDksIDE0LCAyMzcsIDE3MCwgOSwgMTQsIDIzNywgMTY5LCA5LCAxNCwgMjM3LCAxNjgsIDksIDE0LCAKKyAgICAyMzcsIDE2NywgOSwgMTQsIDIzNywgMTY2LCA5LCAxNCwgMjM3LCAxNjUsIDksIDE0LCAyMzcsIDE2NCwgOSwgMTQsIDIzNywgCisgICAgMTYzLCA5LCAxNCwgMjM3LCAxNjIsIDksIDE0LCAyMzcsIDE2MSwgOSwgMTQsIDIzNywgMTYwLCA5LCAxNCwgMjM3LCAxNTksIAorICAgIDksIDE0LCAyMzcsIDE1OCwgOSwgMTQsIDIzNywgMTU3LCA5LCAxNCwgMjM3LCAxNTYsIDksIDE0LCAyMzcsIDE1NSwgOSwgCisgICAgMTQsIDIzNywgMTU0LCA5LCAxNCwgMjM3LCAxNTMsIDksIDE0LCAyMzcsIDE1MiwgOSwgMTQsIDIzNywgMTUxLCA5LCAxNCwgCisgICAgMjM3LCAxNTAsIDksIDE0LCAyMzcsIDE0OSwgOSwgMTQsIDIzNywgMTQ4LCA5LCAxNCwgMjM3LCAxNDcsIDksIDE0LCAyMzcsIAorICAgIDE0NiwgOSwgMTQsIDIzNywgMTQ1LCA5LCAxNCwgMjM3LCAxNDQsIDksIDE0LCAyMzcsIDE0MywgOSwgMTQsIDIzNywgMTQyLCAKKyAgICA5LCAxNCwgMjM3LCAxNDEsIDksIDE0LCAyMzcsIDE0MCwgOSwgMTQsIDIzNywgMTM5LCA5LCAxNCwgMjM3LCAxMzgsIDksIAorICAgIDE0LCAyMzcsIDEzNywgOSwgMTQsIDIzNywgMTM2LCA5LCAxNCwgMjM3LCAxMzUsIDksIDE0LCAyMzcsIDEzNCwgOSwgMTQsIAorICAgIDIzNywgMTMzLCA5LCAxNCwgMjM3LCAxMzIsIDksIDE0LCAyMzcsIDEzMSwgOSwgMTQsIDIzNywgMTMwLCA5LCAxNCwgMjM3LCAKKyAgICAxMjksIDksIDE0LCAyMzcsIDEyOCwgOSwgMTQsIDIzNywgMTI3LCA5LCAxNCwgMjM3LCAxMjYsIDksIDE0LCAyMzcsIDEyNSwgCisgICAgOSwgMTQsIDIzNywgMTI0LCA5LCAxNCwgMjM3LCAxMjMsIDksIDE0LCAyMzcsIDEyMiwgOSwgMTQsIDIzNywgMTIxLCA5LCAKKyAgICAxNCwgMjM3LCAxMjAsIDksIDE0LCAyMzcsIDExOSwgOSwgMTQsIDIzNywgMTE4LCA5LCAxNCwgMjM3LCAxMTcsIDksIDE0LCAKKyAgICAyMzcsIDExNiwgOSwgMTQsIDIzNywgMTE1LCA5LCAxNCwgMjM3LCAxMTQsIDksIDE0LCAyMzcsIDExMywgOSwgMTQsIDIzNywgCisgICAgMTEyLCA5LCAxNCwgMjM3LCAxMTEsIDksIDE0LCAyMzcsIDExMCwgOSwgMTQsIDIzNywgMTA5LCA5LCAxNCwgMjM3LCAxMDgsIAorICAgIDksIDE0LCAyMzcsIDEwNywgOSwgMTQsIDIzNywgMTA2LCA5LCAxNCwgMjM3LCAxMDUsIDksIDE0LCAyMzcsIDEwNCwgOSwgCisgICAgMTQsIDIzNywgMTAzLCA5LCAxNCwgMjM3LCAxMDIsIDksIDE0LCAyMzcsIDEwMSwgOSwgMTQsIDIzNywgMTAwLCA5LCAxNCwgCisgICAgMjM3LCA5OSwgOSwgMTQsIDIzNywgOTgsIDksIDE0LCAyMzcsIDk3LCA5LCAxNCwgMjM3LCA5NiwgOSwgMTQsIDIzNywgOTUsIAorICAgIDksIDE0LCAyMzcsIDk0LCA5LCAxNCwgMjM3LCA5MywgOSwgMTQsIDIzNywgOTIsIDksIDE0LCAyMzcsIDkxLCA5LCAxNCwgCisgICAgMjM3LCA5MCwgOSwgMTQsIDIzNywgODksIDksIDE0LCAyMzcsIDg4LCA5LCAxNCwgMjM3LCA4NywgOSwgMTQsIDIzNywgODYsIAorICAgIDksIDE0LCAyMzcsIDg1LCA5LCAxNCwgMjM3LCA4NCwgOSwgMTQsIDIzNywgODMsIDksIDE0LCAyMzcsIDgyLCA5LCAxNCwgCisgICAgMjM3LCA4MSwgOSwgMTQsIDIzNywgODAsIDksIDE0LCAyMzcsIDc5LCA5LCAxNCwgMjM3LCA3OCwgOSwgMTQsIDIzNywgNzcsIAorICAgIDksIDE0LCAyMzcsIDc2LCA5LCAxNCwgMjM3LCA3NSwgOSwgMTQsIDIzNywgNzQsIDksIDE0LCAyMzcsIDczLCA5LCAxNCwgCisgICAgMjM3LCA3MiwgOSwgMTQsIDIzNywgNzEsIDksIDE0LCAyMzcsIDcwLCA5LCAxNCwgMjM3LCA2OSwgOSwgMTQsIDIzNywgNjgsIAorICAgIDksIDE0LCAyMzcsIDY3LCA5LCAxNCwgMjM3LCA2NiwgOSwgMTQsIDIzNywgNjUsIDksIDE0LCAyMzcsIDY0LCA5LCAxNCwgCisgICAgMjM3LCA2MywgOSwgMTQsIDIzNywgNjIsIDksIDE0LCAyMzcsIDYxLCA5LCAxNCwgMjM3LCA2MCwgOSwgMTQsIDIzNywgNTksIAorICAgIDksIDE0LCAyMzcsIDU4LCA5LCAxNCwgMjM3LCA1NywgOSwgMTQsIDIzNywgNTYsIDksIDE0LCAyMzcsIDU1LCA5LCAxNCwgCisgICAgMjM3LCA1NCwgOSwgMTQsIDIzNywgNTMsIDksIDE0LCAyMzcsIDUyLCA5LCAxNCwgMjM3LCA1MSwgOSwgMTQsIDIzNywgNTAsIAorICAgIDksIDE0LCAyMzcsIDQ5LCA5LCAxNCwgMjM3LCA0OCwgOSwgMTQsIDIzNywgNDcsIDksIDE0LCAyMzcsIDQ2LCA5LCAxNCwgCisgICAgMjM3LCA0NSwgOSwgMTQsIDIzNywgNDQsIDksIDE0LCAyMzcsIDQzLCA5LCAxNCwgMjM3LCA0MiwgOSwgMTQsIDIzNywgNDEsIAorICAgIDksIDE0LCAyMzcsIDQwLCA5LCAxNCwgMjM3LCAzOSwgOSwgMTQsIDIzNywgMzgsIDksIDE0LCAyMzcsIDM3LCA5LCAxNCwgCisgICAgMjM3LCAzNiwgOSwgMTQsIDIzNywgMzUsIDksIDE0LCAyMzcsIDM0LCA5LCAxNCwgMjM3LCAzMywgOSwgMTQsIDIzNywgMzIsIAorICAgIDksIDE0LCAyMzcsIDMxLCA5LCAxNCwgMjM3LCAzMCwgOSwgMTQsIDIzNywgMjksIDksIDE0LCAyMzcsIDI4LCA5LCAxNCwgCisgICAgMjM3LCAyNywgOSwgMTQsIDIzNywgMjYsIDksIDE0LCAyMzcsIDI1LCA5LCAxNCwgMjM3LCAyNCwgOSwgMTQsIDIzNywgMjMsIAorICAgIDksIDE0LCAyMzcsIDIyLCA5LCAxNCwgMjM3LCAyMSwgOSwgMTQsIDIzNywgMjAsIDksIDE0LCAyMzcsIDE5LCA5LCAxNCwgCisgICAgMjM3LCAxOCwgOSwgMTQsIDIzNywgMTcsIDksIDE0LCAyMzcsIDE2LCA5LCAxNCwgMjM3LCAxNSwgOSwgMTQsIDIzNywgMTQsIAorICAgIDksIDE0LCAyMzcsIDEzLCA5LCAxNCwgMjM3LCAxMiwgOSwgMTQsIDIzNywgMTEsIDksIDE0LCAyMzcsIDEwLCA5LCAxNCwgCisgICAgMjM3LCA5LCA5LCAxNCwgMjM3LCA4LCA5LCAxNCwgMjM3LCA3LCA5LCAxNCwgMjM3LCA2LCA5LCAxNCwgMjM3LCA1LCA5LCAKKyAgICAxNCwgMjM3LCA0LCA5LCAxNCwgMjM3LCAzLCA5LCAxNCwgMjM3LCAyLCA5LCAxNCwgMjM3LCAxLCA5LCAxNCwgMjM3LCAwLCAKKyAgICA5LCAxNCwgMjM2LCAyNTUsIDksIDE0LCAyMzYsIDI1NCwgOSwgMTQsIDIzNiwgMjUzLCA5LCAxNCwgMjM2LCAyNTIsIDksIAorICAgIDE0LCAyMzYsIDI1MSwgOSwgMTQsIDIzNiwgMjUwLCA5LCAxNCwgMjM2LCAyNDksIDksIDE0LCAyMzYsIDI0OCwgOSwgMTQsIAorICAgIDIzNiwgMjQ3LCA5LCAxNCwgMjM2LCAyNDYsIDksIDE0LCAyMzYsIDI0NSwgOSwgMTQsIDIzNiwgMjQ0LCA5LCAxNCwgMjM2LCAKKyAgICAyNDMsIDksIDE0LCAyMzYsIDI0MiwgOSwgMTQsIDIzNiwgMjQxLCA5LCAxNCwgMjM2LCAyNDAsIDksIDE0LCAyMzYsIDIzOSwgCisgICAgOSwgMTQsIDIzNiwgMjM4LCA5LCAxNCwgMjM2LCAyMzcsIDksIDE0LCAyMzYsIDIzNiwgOSwgMTQsIDIzNiwgMjM1LCA5LCAKKyAgICAxNCwgMjM2LCAyMzQsIDksIDE0LCAyMzYsIDIzMywgOSwgMTQsIDIzNiwgMjMyLCA5LCAxNCwgMjM2LCAyMzEsIDksIDE0LCAKKyAgICAyMzYsIDIzMCwgOSwgMTQsIDIzNiwgMjI5LCA5LCAxNCwgMjM2LCAyMjgsIDksIDE0LCAyMzYsIDIyNywgOSwgMTQsIDIzNiwgCisgICAgMjI2LCA5LCAxNCwgMjM2LCAyMjUsIDksIDE0LCAyMzYsIDIyNCwgOSwgMTQsIDIzNiwgMjIzLCA5LCAxNCwgMjM2LCAyMjIsIAorICAgIDksIDE0LCAyMzYsIDIyMSwgOSwgMTQsIDIzNiwgMjIwLCA5LCAxNCwgMjM2LCAyMTksIDksIDE0LCAyMzYsIDIxOCwgOSwgCisgICAgMTQsIDIzNiwgMjE3LCA5LCAxNCwgMjM2LCAyMTYsIDksIDE0LCAyMzYsIDIxNSwgOSwgMTQsIDIzNiwgMjE0LCA5LCAxNCwgCisgICAgMjM2LCAyMTMsIDksIDE0LCAyMzYsIDIxMiwgOSwgMTQsIDIzNiwgMjExLCA5LCAxNCwgMjM2LCAyMTAsIDksIDE0LCAyMzYsIAorICAgIDIwOSwgOSwgMTQsIDIzNiwgMjA4LCA5LCAxNCwgMjM2LCAyMDcsIDksIDE0LCAyMzYsIDIwNiwgOSwgMTQsIDIzNiwgMjA1LCAKKyAgICA5LCAxNCwgMjM2LCAyMDQsIDksIDE0LCAyMzYsIDIwMywgOSwgMTQsIDIzNiwgMjAyLCA5LCAxNCwgMjM2LCAyMDEsIDksIAorICAgIDE0LCAyMzYsIDIwMCwgOSwgMTQsIDIzNiwgMTk5LCA5LCAxNCwgMjM2LCAxOTgsIDksIDE0LCAyMzYsIDE5NywgOSwgMTQsIAorICAgIDIzNiwgMTk2LCA5LCAxNCwgMjM2LCAxOTUsIDksIDE0LCAyMzYsIDE5NCwgOSwgMTQsIDIzNiwgMTkzLCA5LCAxNCwgMjM2LCAKKyAgICAxOTIsIDksIDE0LCAyMzYsIDE5MSwgOSwgMTQsIDIzNiwgMTkwLCA5LCAxNCwgMjM2LCAxODksIDksIDE0LCAyMzYsIDE4OCwgCisgICAgOSwgMTQsIDIzNiwgMTg3LCA5LCAxNCwgMjM2LCAxODYsIDksIDE0LCAyMzYsIDE4NSwgOSwgMTQsIDIzNiwgMTg0LCA5LCAKKyAgICAxNCwgMjM2LCAxODMsIDksIDE0LCAyMzYsIDE4MiwgOSwgMTQsIDIzNiwgMTgxLCA5LCAxNCwgMjM2LCAxODAsIDksIDE0LCAKKyAgICAyMzYsIDE3OSwgOSwgMTQsIDIzNiwgMTc4LCA5LCAxNCwgMjM2LCAxNzcsIDksIDE0LCAyMzYsIDE3NiwgOSwgMTQsIDIzNiwgCisgICAgMTc1LCA5LCAxNCwgMjM2LCAxNzQsIDksIDE0LCAyMzYsIDE3MywgOSwgMTQsIDIzNiwgMTcyLCA5LCAxNCwgMjM2LCAxNzEsIAorICAgIDksIDE0LCAyMzYsIDE3MCwgOSwgMTQsIDIzNiwgMTY5LCA5LCAxNCwgMjM2LCAxNjgsIDksIDE0LCAyMzYsIDE2NywgOSwgCisgICAgMTQsIDIzNiwgMTY2LCA5LCAxNCwgMjM2LCAxNjUsIDksIDE0LCAyMzYsIDE2NCwgOSwgMTQsIDIzNiwgMTYzLCA5LCAxNCwgCisgICAgMjM2LCAxNjIsIDksIDE0LCAyMzYsIDE2MSwgOSwgMTQsIDIzNiwgMTYwLCA5LCAxNCwgMjM2LCAxNTksIDksIDE0LCAyMzYsIAorICAgIDE1OCwgOSwgMTQsIDIzNiwgMTU3LCA5LCAxNCwgMjM2LCAxNTYsIDksIDE0LCAyMzYsIDE1NSwgOSwgMTQsIDIzNiwgMTU0LCAKKyAgICA5LCAxNCwgMjM2LCAxNTMsIDksIDE0LCAyMzYsIDE1MiwgOSwgMTQsIDIzNiwgMTUxLCA5LCAxNCwgMjM2LCAxNTAsIDksIAorICAgIDE0LCAyMzYsIDE0OSwgOSwgMTQsIDIzNiwgMTQ4LCA5LCAxNCwgMjM2LCAxNDcsIDksIDE0LCAyMzYsIDE0NiwgOSwgMTQsIAorICAgIDIzNiwgMTQ1LCA5LCAxNCwgMjM2LCAxNDQsIDksIDE0LCAyMzYsIDE0MywgOSwgMTQsIDIzNiwgMTQyLCA5LCAxNCwgMjM2LCAKKyAgICAxNDEsIDksIDE0LCAyMzYsIDE0MCwgOSwgMTQsIDIzNiwgMTM5LCA5LCAxNCwgMjM2LCAxMzgsIDksIDE0LCAyMzYsIDEzNywgCisgICAgOSwgMTQsIDIzNiwgMTM2LCA5LCAxNCwgMjM2LCAxMzUsIDksIDE0LCAyMzYsIDEzNCwgOSwgMTQsIDIzNiwgMTMzLCA5LCAKKyAgICAxNCwgMjM2LCAxMzIsIDksIDE0LCAyMzYsIDEzMSwgOSwgMTQsIDIzNiwgMTMwLCA5LCAxNCwgMjM2LCAxMjksIDksIDE0LCAKKyAgICAyMzYsIDEyOCwgOSwgMTQsIDIzNiwgMTI3LCA5LCAxNCwgMjM2LCAxMjYsIDksIDE0LCAyMzYsIDEyNSwgOSwgMTQsIDIzNiwgCisgICAgMTI0LCA5LCAxNCwgMjM2LCAxMjMsIDksIDE0LCAyMzYsIDEyMiwgOSwgMTQsIDIzNiwgMTIxLCA5LCAxNCwgMjM2LCAxMjAsIAorICAgIDksIDE0LCAyMzYsIDExOSwgOSwgMTQsIDIzNiwgMTE4LCA5LCAxNCwgMjM2LCAxMTcsIDksIDE0LCAyMzYsIDExNiwgOSwgCisgICAgMTQsIDIzNiwgMTE1LCA5LCAxNCwgMjM2LCAxMTQsIDksIDE0LCAyMzYsIDExMywgOSwgMTQsIDIzNiwgMTEyLCA5LCAxNCwgCisgICAgMjM2LCAxMTEsIDksIDE0LCAyMzYsIDExMCwgOSwgMTQsIDIzNiwgMTA5LCA5LCAxNCwgMjM2LCAxMDgsIDksIDE0LCAyMzYsIAorICAgIDEwNywgOSwgMTQsIDIzNiwgMTA2LCA5LCAxNCwgMjM2LCAxMDUsIDksIDE0LCAyMzYsIDEwNCwgOSwgMTQsIDIzNiwgMTAzLCAKKyAgICA5LCAxNCwgMjM2LCAxMDIsIDksIDE0LCAyMzYsIDEwMSwgOSwgMTQsIDIzNiwgMTAwLCA5LCAxNCwgMjM2LCA5OSwgOSwgMTQsIAorICAgIDIzNiwgOTgsIDksIDE0LCAyMzYsIDk3LCA5LCAxNCwgMjM2LCA5NiwgOSwgMTQsIDIzNiwgOTUsIDksIDE0LCAyMzYsIDk0LCAKKyAgICA5LCAxNCwgMjM2LCA5MywgOSwgMTQsIDIzNiwgOTIsIDksIDE0LCAyMzYsIDkxLCA5LCAxNCwgMjM2LCA5MCwgOSwgMTQsIAorICAgIDIzNiwgODksIDksIDE0LCAyMzYsIDg4LCA5LCAxNCwgMjM2LCA4NywgOSwgMTQsIDIzNiwgODYsIDksIDE0LCAyMzYsIDg1LCAKKyAgICA5LCAxNCwgMjM2LCA4NCwgOSwgMTQsIDIzNiwgODMsIDksIDE0LCAyMzYsIDgyLCA5LCAxNCwgMjM2LCA4MSwgOSwgMTQsIAorICAgIDIzNiwgODAsIDksIDE0LCAyMzYsIDc5LCA5LCAxNCwgMjM2LCA3OCwgOSwgMTQsIDIzNiwgNzcsIDksIDE0LCAyMzYsIDc2LCAKKyAgICA5LCAxNCwgMjM2LCA3NSwgOSwgMTQsIDIzNiwgNzQsIDksIDE0LCAyMzYsIDczLCA5LCAxNCwgMjM2LCA3MiwgOSwgMTQsIAorICAgIDIzNiwgNzEsIDksIDE0LCAyMzYsIDcwLCA5LCAxNCwgMjM2LCA2OSwgOSwgMTQsIDIzNiwgNjgsIDksIDE0LCAyMzYsIDY3LCAKKyAgICA5LCAxNCwgMjM2LCA2NiwgOSwgMTQsIDIzNiwgNjUsIDcsIDQsIDI3LCAyNDQsIDEyNSwgNywgNCwgMjcsIDI0NCwgMTIxLCAKKyAgICA3LCA0LCAyNywgMjQ0LCA3NiwgNywgNCwgMjcsIDI0NCwgMTI0LCA3LCA0LCAyNywgMjQ0LCAxMjMsIDcsIDQsIDI3LCAxOTksIAorICAgIDIyMiwgOTIsIDIxNywgMTUyLCA3LCA0LCAyNywgMjE4LCAxNjgsIDE1MCwgNCwgMjcsIDIzMSwgNTksIDIyOCwgMzksIDE1MCwgCisgICAgNCwgMjcsIDIzMSwgNTksIDI0NSwgMjEzLCAxNTAsIDQsIDI3LCAyMzEsIDU5LCAyMzUsIDIyNywgMTUwLCA0LCAyNywgMjEzLCAKKyAgICAxODAsIDIyOCwgMzksIDE1MCwgNCwgMjcsIDIzMSwgNTksIDIxMSwgMTYwLCA5NCwgMSwgMjEwLCAyMzQsIDIsIDI0MSwgCisgICAgMTU4LCA5NCwgMjI1LCAxMSwgMjM1LCA1MCwgMjE0LCAxMSwgOTQsIDI3LCAyMTEsIDYsIDIxMCwgMjM0LCAyMTAsIDIzNCwgCisgICAgMjI1LCAyMzksIDk0LCAxLCAyNTQsIDEzOSwgMjUzLCAxNjIsIDk0LCAxLCAyMTEsIDI0NywgMjU0LCAxNzAsIDk0LCAxLCAKKyAgICAyMTEsIDI0NywgMjQ4LCAxODksIDk0LCAxLCAyMTEsIDI0NywgMjQxLCAyMzgsIDk0LCAxLCAyMTEsIDI0NywgMjM0LCAyNTAsIAorICAgIDk0LCAxLCAyMTEsIDI0NywgMjMzLCA5NCwgOTQsIDEsIDIxMSwgMjQ3LCA0MCwgMjMxLCA2NSwgOTQsIDEsIDIxMSwgMjQ3LCAKKyAgICAyMjMsIDY3LCA5NCwgMSwgMjExLCAyNDcsIDIxNywgMzgsIDk0LCAxLCAyNTQsIDEzOSwgOTYsIDUwLCA5NCwgMSwgMjIwLCAKKyAgICAyMSwgMiwgMjIwLCAyMSwgMjQ3LCAxMjAsIDk0LCAxLCAyMjAsIDIxLCAyLCAyMTksIDE1OSwgMjQ3LCAxMjAsIDk0LCAxLCAKKyAgICAyMjAsIDIxLCAyLCAyNDgsIDIwOCwgMjIsIDIyMCwgMjEsIDI0NywgMTIwLCA5NCwgMSwgMjIwLCAyMSwgMiwgMjQ4LCAyMDgsIAorICAgIDIyLCAyMTksIDE1OSwgMjQ3LCAxMjAsIDk0LCAxLCAxMTIsIDIsIDIyNSwgMjM5LCA5NCwgMSwgMTEyLCAyLCAyMjQsIDc2LCAKKyAgICA5NCwgMSwgMTEyLCAyLCAyMzEsIDE3MSwgOTQsIDEsIDI1MiwgMjksIDIsIDI0OCwgMjA3LCA5NCwgMSwgMjQyLCAyMDIsIDIsIAorICAgIDI0OCwgMjA3LCA5NCwgMSwgMjQ4LCAxOTAsIDIsIDI0OCwgMjA3LCA5NCwgMSwgMjQxLCAyMzksIDIsIDIzMSwgMTcxLCA5NCwgCisgICAgMSwgMjE0LCA0LCAyLCAyNDgsIDIwNywgOTQsIDEsIDIxMCwgOTgsIDIsIDI0OCwgMjA3LCA5NCwgMSwgMjE2LCAyMzEsIDIsIAorICAgIDI0OCwgMjA3LCA5NCwgMSwgMjEwLCAyMzQsIDIsIDI0OCwgMjA3LCA5NCwgMSwgNDAsIDIzNCwgMjUxLCAyLCAyNDgsIDIwNywgCisgICAgOTQsIDEsIDIzNCwgMjUxLCAyLCAyNDgsIDIwNywgOTQsIDEsIDIzMywgOTUsIDIsIDI0OCwgMjA3LCA5NCwgMSwgMjMxLCAKKyAgICA2NiwgMiwgMjQ4LCAyMDcsIDk0LCAxLCAyMjcsIDE5NSwgMiwgMjQ4LCAyMDcsIDk0LCAxLCAyMjEsIDI1MCwgMiwgMjQ4LCAKKyAgICAyMDcsIDk0LCAxLCA0MCwgMjI1LCAyMjIsIDIsIDI0OCwgMjA3LCA5NCwgMSwgMjI1LCAyMjIsIDIsIDI0OCwgMjA3LCA5NCwgCisgICAgMSwgMjE1LCAxODAsIDIsIDI0OCwgMjA3LCA5NCwgMSwgMjI0LCA0MCwgMiwgMjQ4LCAyMDcsIDk0LCAxLCAyMjMsIDY4LCAyLCAKKyAgICAyNDgsIDIwNywgOTQsIDEsIDIyMCwgMjEsIDIsIDI0OCwgMjA3LCA5NCwgMSwgMjE3LCAzOSwgMiwgMjQ4LCAyMDcsIDk0LCAKKyAgICAxLCAyMTQsIDQsIDIsIDI0MSwgNjEsIDk0LCAxLCAyNTIsIDI5LCAyLCAyMjMsIDE2OSwgOTQsIDEsIDIzNCwgMjUxLCAyLCAKKyAgICAyMjMsIDE2OSwgOTQsIDEsIDIyNSwgMjIyLCAyLCAyMjMsIDE2OSwgOTQsIDI3LCAxMTIsIDIzMywgOTQsIDEwLCAxLCAxMTIsIAorICAgIDIxMiwgNDcsIDUzLCAxNywgMTAsIDEsIDExMiwgMjEyLCA0NywgNDAsIDE3LCAxMCwgMSwgMjUyLCA2NSwgNTMsIDE3LCAxMCwgCisgICAgMSwgMjUyLCA2NSwgNDAsIDE3LCAxMCwgMSwgMjUyLCA2NSwgNjUsIDE3LCAxMCwgMSwgMjUyLCA2NSwgMTQ3LCAxNywgMTAsIAorICAgIDEsIDIyNSwgMjA2LCA1MywgMTcsIDEwLCAxLCAyMjUsIDIwNiwgNDAsIDE3LCAxMCwgMSwgMjI1LCAyMDYsIDY1LCAxNywgCisgICAgMTAsIDEsIDIyNSwgMjA2LCAxNDcsIDE3LCAxMCwgMSwgMjUyLCA1MywgNTMsIDE3LCAxMCwgMSwgMjUyLCA1MywgNDAsIDE3LCAKKyAgICAxMCwgMSwgMjUyLCA1MywgNjUsIDE3LCAxMCwgMSwgMjUyLCA1MywgMTQ3LCAxNywgMTAsIDEsIDIxNSwgMTQ3LCA1MywgMTcsIAorICAgIDEwLCAxLCAyMTUsIDE0NywgNDAsIDE3LCAxMCwgMSwgMjE1LCAxNDcsIDY1LCAxNywgMTAsIDEsIDIxNSwgMTQ3LCAxNDcsIAorICAgIDE3LCAxMCwgMSwgMjE3LCA2LCA1MywgMTcsIDEwLCAxLCAyMTcsIDYsIDQwLCAxNywgMTAsIDEsIDIxNywgNiwgNjUsIDE3LCAKKyAgICAxMCwgMSwgMjE3LCA2LCAxNDcsIDE3LCAxMCwgMSwgMjE1LCAxNDksIDUzLCAxNywgMTAsIDEsIDIxNSwgMTQ5LCA0MCwgMTcsIAorICAgIDEwLCAxLCAyMTUsIDE0OSwgNjUsIDE3LCAxMCwgMSwgMjE1LCAxNDksIDE0NywgMTcsIDEwLCAxLCAyMTMsIDI0OSwgNTMsIAorICAgIDE3LCAxMCwgMSwgMjEzLCAyNDksIDQwLCAxNywgMTAsIDEsIDIxMywgMjQ5LCA2NSwgMTcsIDEwLCAxLCAyMTMsIDI0OSwgCisgICAgMTQ3LCAxNywgMTAsIDEsIDIyNSwgMjA0LCA1MywgMTcsIDEwLCAxLCAyMjUsIDIwNCwgNDAsIDE3LCAxMCwgMSwgMjI1LCAKKyAgICAyMDQsIDY1LCAxNywgMTAsIDEsIDIyNSwgMjA0LCAxNDcsIDE3LCAxMCwgMSwgMjQ2LCA0NCwgNTMsIDE3LCAxMCwgMSwgCisgICAgMjQ2LCA0NCwgNDAsIDE3LCAxMCwgMSwgMjQ2LCA0NCwgNjUsIDE3LCAxMCwgMSwgMjQ2LCA0NCwgMTQ3LCAxNywgMTAsIDEsIAorICAgIDIyNywgMTU0LCA1MywgMTcsIDEwLCAxLCAyMjcsIDE1NCwgNDAsIDE3LCAxMCwgMSwgMjI3LCAxNTQsIDY1LCAxNywgMTAsIAorICAgIDEsIDIyNywgMTU0LCAxNDcsIDE3LCAxMCwgMSwgMjE3LCAyNywgNTMsIDE3LCAxMCwgMSwgMjE3LCAyNywgNDAsIDE3LCAxMCwgCisgICAgMSwgMjE3LCAyNywgNjUsIDE3LCAxMCwgMSwgMjE3LCAyNywgMTQ3LCAxNywgMTAsIDEsIDIxNywgMjUsIDUzLCAxNywgMTAsIAorICAgIDEsIDIxNywgMjUsIDQwLCAxNywgMTAsIDEsIDIxNywgMjUsIDY1LCAxNywgMTAsIDEsIDIxNywgMjUsIDE0NywgMTcsIDEwLCAKKyAgICAxLCAyNDgsIDEzMywgNTMsIDE3LCAxMCwgMSwgMjQ4LCAxMzMsIDQwLCAxNywgMTAsIDEsIDI0OCwgMjAyLCA1MywgMTcsIAorICAgIDEwLCAxLCAyNDgsIDIwMiwgNDAsIDE3LCAxMCwgMSwgMjQ2LCA3MSwgNTMsIDE3LCAxMCwgMSwgMjQ2LCA3MSwgNDAsIDE3LCAKKyAgICAxMCwgMSwgMjQ4LCAxMzEsIDUzLCAxNywgMTAsIDEsIDI0OCwgMTMxLCA0MCwgMTcsIDEwLCAxLCAyMzUsIDEyMSwgNTMsIAorICAgIDE3LCAxMCwgMSwgMjM1LCAxMjEsIDQwLCAxNywgMTAsIDEsIDIyMiwgMTcyLCA1MywgMTcsIDEwLCAxLCAyMjIsIDE3MiwgCisgICAgNDAsIDE3LCAxMCwgMSwgMjM0LCAxNzUsIDUzLCAxNywgMTAsIDEsIDIzNCwgMTc1LCA0MCwgMTcsIDEwLCAxLCAyMzQsIAorICAgIDE3NSwgNjUsIDE3LCAxMCwgMSwgMjM0LCAxNzUsIDE0NywgMTcsIDEwLCAxLCAyNDMsIDEyMywgNTMsIDE3LCAxMCwgMSwgCisgICAgMjQzLCAxMjMsIDQwLCAxNywgMTAsIDEsIDI0MywgMTIzLCA2NSwgMTcsIDEwLCAxLCAyNDMsIDEyMywgMTQ3LCAxNywgMTAsIAorICAgIDEsIDI0MiwgMTAyLCA1MywgMTcsIDEwLCAxLCAyNDIsIDEwMiwgNDAsIDE3LCAxMCwgMSwgMjQyLCAxMDIsIDY1LCAxNywgCisgICAgMTAsIDEsIDI0MiwgMTAyLCAxNDcsIDE3LCAxMCwgMSwgMjI5LCAzLCA1MywgMTcsIDEwLCAxLCAyMjksIDMsIDQwLCAxNywgCisgICAgMTAsIDEsIDIyOSwgMywgNjUsIDE3LCAxMCwgMSwgMjI5LCAzLCAxNDcsIDE3LCAxMCwgMSwgMjI4LCA2MywgMjQyLCAyMTksIAorICAgIDUzLCAxNywgMTAsIDEsIDIyOCwgNjMsIDI0MiwgMjE5LCA0MCwgMTcsIDEwLCAxLCAyMjIsIDIxNSwgNTMsIDE3LCAxMCwgMSwgCisgICAgMjIyLCAyMTUsIDQwLCAxNywgMTAsIDEsIDIyMiwgMjE1LCA2NSwgMTcsIDEwLCAxLCAyMjIsIDIxNSwgMTQ3LCAxNywgMTAsIAorICAgIDEsIDI0MSwgMjE5LCAyLCA3OSwgNzcsIDUzLCAxNywgMTAsIDEsIDI0MSwgMjE5LCAyLCA3OSwgNzcsIDQwLCAxNywgMTAsIAorICAgIDEsIDI0MSwgMjE5LCAyNDIsIDE3MiwgNTMsIDE3LCAxMCwgMSwgMjQxLCAyMTksIDI0MiwgMTcyLCA0MCwgMTcsIDEwLCAxLCAKKyAgICAyNDEsIDIxOSwgMjQyLCAxNzIsIDY1LCAxNywgMTAsIDEsIDI0MSwgMjE5LCAyNDIsIDE3MiwgMTQ3LCAxNywgMTAsIDEsIAorICAgIDI0MSwgMjE5LCAyNDcsIDE0MiwgNTMsIDE3LCAxMCwgMSwgMjQxLCAyMTksIDI0NywgMTQyLCA0MCwgMTcsIDEwLCAxLCAKKyAgICAyNDEsIDIxOSwgMjQ3LCAxNDIsIDY1LCAxNywgMTAsIDEsIDI0MSwgMjE5LCAyNDcsIDE0MiwgMTQ3LCAxNywgMTAsIDEsIAorICAgIDc5LCAyNTIsIDEzMywgNTMsIDE3LCAxMCwgMSwgNzksIDI1MiwgMTMzLCA0MCwgMTcsIDEwLCAxLCA3OSwgMjUyLCAxMzMsIAorICAgIDIsIDIwMiwgNzcsIDUzLCAxNywgMTAsIDEsIDc5LCAyNTIsIDEzMywgMiwgMjAyLCA3NywgNDAsIDE3LCAxMCwgMTYsIDU5LCAKKyAgICA0OCwgMTAsIDE2LCA1OSwgNTEsIDEwLCAxNiwgMTEzLCAxNzAsIDQ4LCAxMCwgMTYsIDExMywgMTcwLCA1MSwgMTAsIDE2LCAKKyAgICAxMzQsIDE3MCwgNDgsIDEwLCAxNiwgMTM0LCAxNzAsIDUxLCAxMCwgMTYsIDEzNCwgMTcwLCAyMjUsIDcsIDI0NiwgMTA0LCAKKyAgICA0OCwgMTAsIDE2LCAxMzQsIDE3MCwgMjI1LCA3LCAyNDYsIDEwNCwgNTEsIDEwLCAxNiwgMjQ0LCAxMSwgMTcwLCA0OCwgMTAsIAorICAgIDE2LCAyNDQsIDExLCAxNzAsIDUxLCAxMCwgMTYsIDUyLCA2NywgMjUyLCAxNDEsIDUxLCAxMCwgMTYsIDExMywgMTcwLCAKKyAgICAyMTMsIDE4OSwgNDgsIDEwLCAxNiwgMTEzLCAxNzAsIDIxMywgMTg5LCA1MSwgMTAsIDE2LCAyMjIsIDIzMywgMTAsIDE2LCAKKyAgICA0LCAyMTcsIDgxLCA0OCwgMTAsIDE2LCA0LCAyMTcsIDgxLCA1MSwgMTAsIDEsIDIyOSwgODAsIDUzLCAxNywgMTAsIDEsIAorICAgIDIyOSwgODAsIDQwLCAxNywgMTAsIDEsIDIyOSwgODAsIDY1LCAxNywgMTAsIDEsIDIyOSwgODAsIDE0NywgMTcsIDEwLCAxLCAKKyAgICAxMDQsIDUzLCAxNywgMTAsIDEsIDEwNCwgNDAsIDE3LCAxMCwgMSwgMjI2LCAyMzUsIDUzLCAxNywgMTAsIDEsIDIyNiwgCisgICAgMjM1LCA0MCwgMTcsIDEwLCAxLCAyMTAsIDIxMywgNTMsIDE3LCAxMCwgMSwgMjEwLCAyMTMsIDQwLCAxNywgMTAsIDEsIAorICAgIDEwNCwgMiwgMjAyLCA3NywgNTMsIDE3LCAxMCwgMSwgMjE0LCAwLCA1MywgMTcsIDEwLCAxLCAyMTQsIDAsIDQwLCAxNywgCisgICAgMTAsIDEsIDIzNCwgNzMsIDIyNiwgMjM1LCA1MywgMTcsIDEwLCAxLCAyMzQsIDczLCAyMjYsIDIzNSwgNDAsIDE3LCAxMCwgCisgICAgMSwgMjM0LCA3MywgMjEwLCAyMTMsIDUzLCAxNywgMTAsIDEsIDIzNCwgNzMsIDIxMCwgMjEzLCA0MCwgMTcsIDEwLCAxLCAKKyAgICAxNjAsIDUzLCAxNywgMTAsIDEsIDE2MCwgNDAsIDE3LCAxMCwgMSwgMTYwLCA2NSwgMTcsIDEwLCAxLCAxNjAsIDE0NywgMTcsIAorICAgIDEwLCAxLCAyMTQsIDIwNywgMjM0LCAxODYsIDIzNCwgNzMsIDExMiwgMjMxLCAxOTMsIDY1LCAxNywgMTAsIDEsIDIxNCwgCisgICAgMjA3LCAyMzQsIDE4NiwgMjM0LCA3MywgMTEyLCAyMzEsIDE5MywgMTQ3LCAxNywgMTAsIDI3LCA3OSwgMiwgMjAyLCA3NywgCisgICAgMiwgMTEyLCA1MywgMTcsIDEwLCAyNywgNzksIDIsIDIwMiwgNzcsIDIsIDExMiwgNDAsIDE3LCAxMCwgMjcsIDc5LCAyLCAKKyAgICAyMDIsIDc3LCAyLCAyNTQsIDI0NCwgNTMsIDE3LCAxMCwgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCAyNTQsIDI0NCwgNDAsIAorICAgIDE3LCAxMCwgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCAyMTIsIDMxLCA1MywgMTcsIDEwLCAyNywgNzksIDIsIDIwMiwgNzcsIAorICAgIDIsIDIxMiwgMzEsIDQwLCAxNywgMTAsIDI3LCA3OSwgMiwgMjAyLCA3NywgMiwgMTA0LCA1MywgMTcsIDEwLCAyNywgNzksIAorICAgIDIsIDIwMiwgNzcsIDIsIDEwNCwgNDAsIDE3LCAxMCwgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCAyMjYsIDIzNSwgNTMsIDE3LCAKKyAgICAxMCwgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCAyMjYsIDIzNSwgNDAsIDE3LCAxMCwgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCAKKyAgICAyMTAsIDIxMywgNTMsIDE3LCAxMCwgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCAyMTAsIDIxMywgNDAsIDE3LCAxMCwgMjcsIAorICAgIDc5LCAyLCAyMDIsIDc3LCAyLCAxNjAsIDUzLCAxNywgMTAsIDI3LCA3OSwgMiwgMjAyLCA3NywgMiwgMTYwLCA0MCwgMTcsIAorICAgIDEwLCAyNywgNzksIDIsIDIwMiwgNzcsIDIsIDE2MCwgNjUsIDE3LCAxMCwgMjcsIDIxNCwgMjA3LCAyMzQsIDczLCA3OSwgMiwgCisgICAgMjAyLCA3NywgMiwgMTEyLCAyMzEsIDE5MywgNTMsIDE3LCAxMCwgMjcsIDIxNCwgMjA3LCAyMzQsIDczLCA3OSwgMiwgMjAyLCAKKyAgICA3NywgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDIxNCwgMjA3LCAyMzQsIDczLCA3OSwgMiwgMjAyLCA3NywgCisgICAgMiwgMTEyLCAyMzEsIDE5MywgNjUsIDE3LCAxMCwgMSwgMjQ0LCAxNjgsIDc5LCA1MywgMTcsIDEwLCAxLCAyNDQsIDE2OCwgCisgICAgNzksIDQwLCAxNywgMTAsIDEsIDI0NCwgMTY4LCA3OSwgNjUsIDE3LCAxMCwgMSwgMjQ0LCAxNjgsIDc5LCAxNDcsIDE3LCAKKyAgICAxMCwgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCAxNTEsIDUzLCAxNywgMTAsIDI3LCA3OSwgMiwgMjAyLCA3NywgMiwgMTIyLCAKKyAgICA1MywgMTcsIDEwLCAyNywgNzksIDIsIDIwMiwgNzcsIDIsIDY2LCA1MywgMTcsIDEwLCAyNywgNzksIDIsIDIwMiwgNzcsIDIsIAorICAgIDExMiwgMjMxLCAxOTMsIDUzLCAxNywgMTAsIDI3LCA3OSwgMiwgMjAyLCA3NywgMiwgNzksIDUzLCAxNywgMTAsIDI3LCAKKyAgICAyNTIsIDU1LCAyLCAxNTEsIDUzLCAxNywgMTAsIDI3LCAyNTIsIDU1LCAyLCAxMjIsIDUzLCAxNywgMTAsIDI3LCAyNTIsIAorICAgIDU1LCAyLCAyMzQsIDEzMCwgNTMsIDE3LCAxMCwgMjcsIDI1MiwgNTUsIDIsIDY2LCA1MywgMTcsIDEwLCAyNywgMjUyLCA1NSwgCisgICAgMiwgMTEyLCAyMzEsIDE5MywgNTMsIDE3LCAxMCwgMjcsIDI1MiwgNTUsIDIsIDc5LCA1MywgMTcsIDEwLCAyNywgMjE3LCA4LCAKKyAgICAyLCAxNTEsIDUzLCAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDEyMiwgNTMsIDE3LCAxMCwgMjcsIDIxNywgOCwgMiwgMjM0LCAKKyAgICAxMzAsIDUzLCAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDY2LCA1MywgMTcsIDEwLCAyNywgMjE3LCA4LCAyLCAxMTIsIDIzMSwgCisgICAgMTkzLCA1MywgMTcsIDEwLCAyNywgMjE3LCA4LCAyLCA3OSwgNTMsIDE3LCAxMCwgMjcsIDIxNiwgMTkzLCAyLCAxNTEsIDUzLCAKKyAgICAxNywgMTAsIDI3LCAyMTYsIDE5MywgMiwgNjYsIDUzLCAxNywgMTAsIDI3LCAyMTYsIDE5MywgMiwgMTEyLCAyMzEsIDE5MywgCisgICAgNTMsIDE3LCAxMCwgMjcsIDIxNiwgMTkzLCAyLCA3OSwgNTMsIDE3LCAxMCwgMjcsIDE1MSwgMiwgMTIyLCA1MywgMTcsIDEwLCAKKyAgICAyNywgMTUxLCAyLCA2NiwgNTMsIDE3LCAxMCwgMjcsIDEyMiwgMiwgMTUxLCA1MywgMTcsIDEwLCAyNywgMTIyLCAyLCA2NiwgCisgICAgNTMsIDE3LCAxMCwgMjcsIDIzNCwgMTMwLCAyLCAxNTEsIDUzLCAxNywgMTAsIDI3LCAyMzQsIDEzMCwgMiwgMTIyLCA1MywgCisgICAgMTcsIDEwLCAyNywgMjM0LCAxMzAsIDIsIDY2LCA1MywgMTcsIDEwLCAyNywgMjIxLCAxNjcsIDIsIDE1MSwgNTMsIDE3LCAKKyAgICAxMCwgMjcsIDIyMSwgMTY3LCAyLCAxMjIsIDUzLCAxNywgMTAsIDI3LCAyMjEsIDE2NywgMiwgMjM0LCAxMzAsIDUzLCAxNywgCisgICAgMTAsIDI3LCAyMjEsIDE2NywgMiwgNjYsIDUzLCAxNywgMTAsIDI3LCAyMjIsIDI3LCAyLCAxMjIsIDUzLCAxNywgMTAsIDI3LCAKKyAgICAyMjIsIDI3LCAyLCA2NiwgNTMsIDE3LCAxMCwgMjcsIDI0OCwgMjE3LCAyLCAxNTEsIDUzLCAxNywgMTAsIDI3LCAyNDgsIAorICAgIDIxNywgMiwgMTIyLCA1MywgMTcsIDEwLCAyNywgMjQ4LCAyMTcsIDIsIDIzNCwgMTMwLCA1MywgMTcsIDEwLCAyNywgMjQ4LCAKKyAgICAyMTcsIDIsIDY2LCA1MywgMTcsIDEwLCAyNywgMjE3LCA4MSwgMiwgMTIyLCA1MywgMTcsIDEwLCAyNywgMjE3LCA4MSwgMiwgCisgICAgNjYsIDUzLCAxNywgMTAsIDI3LCAyMTAsIDExMiwgMiwgNjYsIDUzLCAxNywgMTAsIDI3LCAyNTQsIDE5NywgMiwgMTUxLCAKKyAgICA1MywgMTcsIDEwLCAyNywgMjU0LCAxOTcsIDIsIDY2LCA1MywgMTcsIDEwLCAyNywgMjQyLCAyNDUsIDIsIDE1MSwgNTMsIAorICAgIDE3LCAxMCwgMjcsIDI0MiwgMjQ1LCAyLCA2NiwgNTMsIDE3LCAxMCwgMjcsIDI0NCwgMTQzLCAyLCAxNTEsIDUzLCAxNywgCisgICAgMTAsIDI3LCAyNDQsIDE0MywgMiwgMTIyLCA1MywgMTcsIDEwLCAyNywgMjQ0LCAxNDMsIDIsIDIzNCwgMTMwLCA1MywgMTcsIAorICAgIDEwLCAyNywgMjQ0LCAxNDMsIDIsIDY2LCA1MywgMTcsIDEwLCAyNywgMjQ0LCAxNDMsIDIsIDExMiwgMjMxLCAxOTMsIDUzLCAKKyAgICAxNywgMTAsIDI3LCAyNDQsIDE0MywgMiwgNzksIDUzLCAxNywgMTAsIDI3LCAyMjQsIDgyLCAyLCAxMjIsIDUzLCAxNywgMTAsIAorICAgIDI3LCAyMjQsIDgyLCAyLCA2NiwgNTMsIDE3LCAxMCwgMjcsIDIyNCwgODIsIDIsIDExMiwgMjMxLCAxOTMsIDUzLCAxNywgCisgICAgMTAsIDI3LCAyMjQsIDgyLCAyLCA3OSwgNTMsIDE3LCAxMCwgMjcsIDIzNCwgMjUxLCAyLCAxMTIsIDUzLCAxNywgMTAsIDI3LCAKKyAgICAyMzQsIDI1MSwgMiwgMTUxLCA1MywgMTcsIDEwLCAyNywgMjM0LCAyNTEsIDIsIDEyMiwgNTMsIDE3LCAxMCwgMjcsIDIzNCwgCisgICAgMjUxLCAyLCAyMzQsIDEzMCwgNTMsIDE3LCAxMCwgMjcsIDIzNCwgMjUxLCAyLCAyMzMsIDEwMywgNTMsIDE3LCAxMCwgMjcsIAorICAgIDIzNCwgMjUxLCAyLCA2NiwgNTMsIDE3LCAxMCwgMjcsIDIzNCwgMjUxLCAyLCAxMTIsIDIzMSwgMTkzLCA1MywgMTcsIDEwLCAKKyAgICAyNywgMjM0LCAyNTEsIDIsIDc5LCA1MywgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDE1MSwgNTMsIDE3LCAxMCwgMjcsIAorICAgIDIzMywgMTAzLCAyLCAxMjIsIDUzLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgMjM0LCAxMzAsIDUzLCAxNywgMTAsIDI3LCAKKyAgICAyMzMsIDEwMywgMiwgNjYsIDUzLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgMTEyLCAyMzEsIDE5MywgNTMsIDE3LCAxMCwgCisgICAgMjcsIDIzMywgMTAzLCAyLCA3OSwgNTMsIDE3LCAxMCwgMjcsIDY2LCAyLCAxNTEsIDUzLCAxNywgMTAsIDI3LCA2NiwgMiwgCisgICAgMTIyLCA1MywgMTcsIDEwLCAyNywgNjYsIDIsIDIzNCwgMTMwLCA1MywgMTcsIDEwLCAyNywgNjYsIDIsIDY2LCA1MywgMTcsIAorICAgIDEwLCAyNywgNjYsIDIsIDExMiwgMjMxLCAxOTMsIDUzLCAxNywgMTAsIDI3LCA2NiwgMiwgNzksIDUzLCAxNywgMTAsIDI3LCAKKyAgICAyMjgsIDYzLCAyLCAxNTEsIDUzLCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCAxMjIsIDUzLCAxNywgMTAsIDI3LCAyMjgsIAorICAgIDYzLCAyLCAyMzQsIDEzMCwgNTMsIDE3LCAxMCwgMjcsIDIyOCwgNjMsIDIsIDY2LCA1MywgMTcsIDEwLCAyNywgMjI4LCA2MywgCisgICAgMiwgMTEyLCAyMzEsIDE5MywgNTMsIDE3LCAxMCwgMjcsIDIyOCwgNjMsIDIsIDc5LCA1MywgMTcsIDEwLCAyNywgMjQxLCAKKyAgICAyMTksIDIsIDE1MSwgNTMsIDE3LCAxMCwgMjcsIDI0MSwgMjE5LCAyLCA2NiwgNTMsIDE3LCAxMCwgMjcsIDI0MSwgMjE5LCAKKyAgICAyLCAxMTIsIDIzMSwgMTkzLCA1MywgMTcsIDEwLCAyNywgMjQxLCAyMTksIDIsIDc5LCA1MywgMTcsIDEwLCAyNywgNzksIDIsIAorICAgIDE1MSwgNTMsIDE3LCAxMCwgMjcsIDc5LCAyLCAxMjIsIDUzLCAxNywgMTAsIDI3LCA3OSwgMiwgMjM0LCAxMzAsIDUzLCAxNywgCisgICAgMTAsIDI3LCA3OSwgMiwgNjYsIDUzLCAxNywgMTAsIDI3LCA3OSwgMiwgMTEyLCAyMzEsIDE5MywgNTMsIDE3LCAxMCwgMjcsIAorICAgIDc5LCAyLCA3OSwgNTMsIDE3LCAxMCwgMjcsIDIxNiwgMjAzLCAyLCAyMTgsIDIzLCAxMTIsIDUzLCAxNywgMTAsIDI3LCAKKyAgICAyMjMsIDk2LCAyLCAyMTgsIDIzLCAxMTIsIDUzLCAxNywgMTAsIDI3LCAxMTIsIDIzMSwgMTkzLCAyLCAyMTgsIDIzLCAxMTIsIAorICAgIDUzLCAxNywgMTAsIDI3LCAyMjAsIDk0LCAyLCAyNDgsIDE4MywgNTMsIDE3LCAxMCwgMjcsIDIyMCwgOTQsIDIsIDIzNCwgCisgICAgMjA0LCA1MywgMTcsIDEwLCAyNywgMjIwLCA5NCwgMiwgMjQ0LCAxNjYsIDUzLCAxNywgMTAsIDI3LCAyMjAsIDk0LCAyLCAKKyAgICAyNDgsIDE4NSwgNTMsIDE3LCAxMCwgMjcsIDIyMCwgOTQsIDIsIDIzNCwgMjA2LCA1MywgMTcsIDEwLCAyNywgMjIwLCA5NCwgCisgICAgMiwgMjE4LCAyMywgMTEyLCA1MywgMTcsIDEwLCAyNywgNzksIDIsIDIwMiwgNzcsIDIsIDIyMywgOTYsIDQwLCAxNywgMTAsIAorICAgIDI3LCA3OSwgMiwgMjAyLCA3NywgMiwgMjEwLCAxMDksIDQwLCAxNywgMTAsIDI3LCA3OSwgMiwgMjAyLCA3NywgMiwgNjYsIAorICAgIDQwLCAxNywgMTAsIDI3LCA3OSwgMiwgMjAyLCA3NywgMiwgMjI4LCA2MywgNDAsIDE3LCAxMCwgMjcsIDc5LCAyLCAyMDIsIAorICAgIDc3LCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIDEwLCAyNywgNzksIDIsIDIwMiwgNzcsIDIsIDc5LCA0MCwgMTcsIDEwLCAKKyAgICAyNywgMjUyLCA1NSwgMiwgMjIzLCA5NiwgNDAsIDE3LCAxMCwgMjcsIDI1MiwgNTUsIDIsIDIxMCwgMTA5LCA0MCwgMTcsIAorICAgIDEwLCAyNywgMjUyLCA1NSwgMiwgNjYsIDQwLCAxNywgMTAsIDI3LCAyNTIsIDU1LCAyLCAyMjgsIDYzLCA0MCwgMTcsIDEwLCAKKyAgICAyNywgMjUyLCA1NSwgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDI1MiwgNTUsIDIsIDc5LCA0MCwgMTcsIAorICAgIDEwLCAyNywgMjE3LCA4LCAyLCAyMjMsIDk2LCA0MCwgMTcsIDEwLCAyNywgMjE3LCA4LCAyLCAyMTAsIDEwOSwgNDAsIDE3LCAKKyAgICAxMCwgMjcsIDIxNywgOCwgMiwgNjYsIDQwLCAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDIyOCwgNjMsIDQwLCAxNywgMTAsIAorICAgIDI3LCAyMTcsIDgsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDc5LCA0MCwgMTcsIDEwLCAKKyAgICAyNywgMjE2LCAxOTMsIDIsIDIyMywgOTYsIDQwLCAxNywgMTAsIDI3LCAyMTYsIDE5MywgMiwgMjEwLCAxMDksIDQwLCAxNywgCisgICAgMTAsIDI3LCAyMTYsIDE5MywgMiwgNjYsIDQwLCAxNywgMTAsIDI3LCAyMTYsIDE5MywgMiwgMjI4LCA2MywgNDAsIDE3LCAKKyAgICAxMCwgMjcsIDIxNiwgMTkzLCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIDEwLCAyNywgMjE2LCAxOTMsIDIsIDc5LCA0MCwgCisgICAgMTcsIDEwLCAyNywgMjQ0LCAxNDMsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyNDQsIDE0MywgMiwgNzksIAorICAgIDQwLCAxNywgMTAsIDI3LCAyMjQsIDgyLCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIDEwLCAyNywgMjI0LCA4MiwgMiwgCisgICAgNzksIDQwLCAxNywgMTAsIDI3LCAyMzQsIDI1MSwgMiwgMTEyLCA0MCwgMTcsIDEwLCAyNywgMjM0LCAyNTEsIDIsIDIzMywgCisgICAgMTAzLCA0MCwgMTcsIDEwLCAyNywgMjM0LCAyNTEsIDIsIDY2LCA0MCwgMTcsIDEwLCAyNywgMjM0LCAyNTEsIDIsIDExMiwgCisgICAgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyMzQsIDI1MSwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgCisgICAgNjYsIDQwLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDIzMywgMTAzLCAKKyAgICAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIDY2LCAyLCAxMTIsIDQwLCAxNywgMTAsIDI3LCA2NiwgMiwgNjYsIDQwLCAxNywgMTAsIAorICAgIDI3LCAyMjgsIDYzLCAyLCAyMjMsIDk2LCA0MCwgMTcsIDEwLCAyNywgMjI4LCA2MywgMiwgMjEwLCAxMDksIDQwLCAxNywgCisgICAgMTAsIDI3LCAyMjgsIDYzLCAyLCA2NiwgNDAsIDE3LCAxMCwgMjcsIDIyOCwgNjMsIDIsIDIyOCwgNjMsIDQwLCAxNywgMTAsIAorICAgIDI3LCAyMjgsIDYzLCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIDEwLCAyNywgMjI4LCA2MywgMiwgNzksIDQwLCAxNywgCisgICAgMTAsIDI3LCAxMTIsIDIzMSwgMTkzLCAyLCAyMTgsIDIzLCAxMTIsIDQwLCAxNywgMTAsIDI3LCA3OSwgMiwgMjIzLCA5NiwgCisgICAgNDAsIDE3LCAxMCwgMjcsIDc5LCAyLCAyMTAsIDEwOSwgNDAsIDE3LCAxMCwgMjcsIDc5LCAyLCA2NiwgNDAsIDE3LCAxMCwgCisgICAgMjcsIDc5LCAyLCAyMjgsIDYzLCA0MCwgMTcsIDEwLCAyNywgNzksIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAKKyAgICA3OSwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCA3OSwgMiwgMjAyLCA3NywgMiwgMTUxLCA2NSwgMTcsIDEwLCAyNywgNzksIDIsIAorICAgIDIwMiwgNzcsIDIsIDEyMiwgNjUsIDE3LCAxMCwgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCAyMzQsIDEzMCwgNjUsIDE3LCAxMCwgCisgICAgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCA2NiwgNjUsIDE3LCAxMCwgMjcsIDc5LCAyLCAyMDIsIDc3LCAyLCAyNDEsIDIxOSwgCisgICAgNjUsIDE3LCAxMCwgMjcsIDI1MiwgNTUsIDIsIDE1MSwgNjUsIDE3LCAxMCwgMjcsIDI1MiwgNTUsIDIsIDEyMiwgNjUsIDE3LCAKKyAgICAxMCwgMjcsIDI1MiwgNTUsIDIsIDIzNCwgMTMwLCA2NSwgMTcsIDEwLCAyNywgMjUyLCA1NSwgMiwgNjYsIDY1LCAxNywgMTAsIAorICAgIDI3LCAyNTIsIDU1LCAyLCAyNDEsIDIxOSwgNjUsIDE3LCAxMCwgMjcsIDIxNywgOCwgMiwgMTUxLCA2NSwgMTcsIDEwLCAyNywgCisgICAgMjE3LCA4LCAyLCAxMjIsIDY1LCAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDIzNCwgMTMwLCA2NSwgMTcsIDEwLCAyNywgMjE3LCAKKyAgICA4LCAyLCA2NiwgNjUsIDE3LCAxMCwgMjcsIDIxNywgOCwgMiwgMjQxLCAyMTksIDY1LCAxNywgMTAsIDI3LCAyMTYsIDE5MywgCisgICAgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAxNTEsIDIsIDEyMiwgNjUsIDE3LCAxMCwgMjcsIDE1MSwgMiwgNjYsIDY1LCAxNywgCisgICAgMTAsIDI3LCAxMjIsIDIsIDE1MSwgNjUsIDE3LCAxMCwgMjcsIDEyMiwgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAyMzQsIAorICAgIDEzMCwgMiwgMTUxLCA2NSwgMTcsIDEwLCAyNywgMjM0LCAxMzAsIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgMjIxLCAxNjcsIAorICAgIDIsIDE1MSwgNjUsIDE3LCAxMCwgMjcsIDIyMSwgMTY3LCAyLCAxMjIsIDY1LCAxNywgMTAsIDI3LCAyMjEsIDE2NywgMiwgCisgICAgMjM0LCAxMzAsIDY1LCAxNywgMTAsIDI3LCAyMjEsIDE2NywgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAyMjIsIDI3LCAyLCAKKyAgICAxMjIsIDY1LCAxNywgMTAsIDI3LCAyMjIsIDI3LCAyLCAyMzQsIDEzMCwgNjUsIDE3LCAxMCwgMjcsIDIyMiwgMjcsIDIsIAorICAgIDY2LCA2NSwgMTcsIDEwLCAyNywgMjQ4LCAyMTcsIDIsIDE1MSwgNjUsIDE3LCAxMCwgMjcsIDI0OCwgMjE3LCAyLCAxMjIsIAorICAgIDY1LCAxNywgMTAsIDI3LCAyNDgsIDIxNywgMiwgMjM0LCAxMzAsIDY1LCAxNywgMTAsIDI3LCAyNDgsIDIxNywgMiwgNjYsIAorICAgIDY1LCAxNywgMTAsIDI3LCAyMTcsIDgxLCAyLCAxMjIsIDY1LCAxNywgMTAsIDI3LCAyMTAsIDExMiwgMiwgNjYsIDY1LCAxNywgCisgICAgMTAsIDI3LCAyNTQsIDE5NywgMiwgMTUxLCA2NSwgMTcsIDEwLCAyNywgMjU0LCAxOTcsIDIsIDY2LCA2NSwgMTcsIDEwLCAKKyAgICAyNywgMjQyLCAyNDUsIDIsIDE1MSwgNjUsIDE3LCAxMCwgMjcsIDI0MiwgMjQ1LCAyLCA2NiwgNjUsIDE3LCAxMCwgMjcsIAorICAgIDI0NCwgMTQzLCAyLCAxNTEsIDY1LCAxNywgMTAsIDI3LCAyNDQsIDE0MywgMiwgMTIyLCA2NSwgMTcsIDEwLCAyNywgMjQ0LCAKKyAgICAxNDMsIDIsIDIzNCwgMTMwLCA2NSwgMTcsIDEwLCAyNywgMjQ0LCAxNDMsIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgMjI0LCAKKyAgICA4MiwgMiwgMTIyLCA2NSwgMTcsIDEwLCAyNywgMjI0LCA4MiwgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAyMzQsIDI1MSwgMiwgCisgICAgMTUxLCA2NSwgMTcsIDEwLCAyNywgMjM0LCAyNTEsIDIsIDEyMiwgNjUsIDE3LCAxMCwgMjcsIDIzNCwgMjUxLCAyLCAyMzQsIAorICAgIDEzMCwgNjUsIDE3LCAxMCwgMjcsIDIzNCwgMjUxLCAyLCAyMzMsIDEwMywgNjUsIDE3LCAxMCwgMjcsIDIzNCwgMjUxLCAyLCAKKyAgICA2NiwgNjUsIDE3LCAxMCwgMjcsIDIzMywgMTAzLCAyLCAxNTEsIDY1LCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgMTIyLCAKKyAgICA2NSwgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDIzNCwgMTMwLCA2NSwgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDY2LCAKKyAgICA2NSwgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDI0MSwgMjE5LCA2NSwgMTcsIDEwLCAyNywgNjYsIDIsIDE1MSwgNjUsIAorICAgIDE3LCAxMCwgMjcsIDY2LCAyLCAxMjIsIDY1LCAxNywgMTAsIDI3LCA2NiwgMiwgMjM0LCAxMzAsIDY1LCAxNywgMTAsIDI3LCAKKyAgICA2NiwgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCAxNTEsIDY1LCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCAKKyAgICAxMjIsIDY1LCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCAyMzQsIDEzMCwgNjUsIDE3LCAxMCwgMjcsIDIyOCwgNjMsIDIsIAorICAgIDY2LCA2NSwgMTcsIDEwLCAyNywgMjI4LCA2MywgMiwgMjQxLCAyMTksIDY1LCAxNywgMTAsIDI3LCAyNDEsIDIxOSwgMiwgCisgICAgMTUxLCA2NSwgMTcsIDEwLCAyNywgMjQxLCAyMTksIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgMjQxLCAyMTksIDIsIDIxOCwgCisgICAgMjMsIDExMiwgNjUsIDE3LCAxMCwgMjcsIDc5LCAyLCAxNTEsIDY1LCAxNywgMTAsIDI3LCA3OSwgMiwgMTIyLCA2NSwgMTcsIAorICAgIDEwLCAyNywgNzksIDIsIDIzNCwgMTMwLCA2NSwgMTcsIDEwLCAyNywgNzksIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgNzksIAorICAgIDIsIDI0MSwgMjE5LCA2NSwgMTcsIDEwLCAyNywgNzksIDIsIDIwMiwgNzcsIDIsIDY2LCAxNDcsIDE3LCAxMCwgMjcsIDc5LCAKKyAgICAyLCAyMDIsIDc3LCAyLCAyNDEsIDIxOSwgMTQ3LCAxNywgMTAsIDI3LCAyNTIsIDU1LCAyLCA2NiwgMTQ3LCAxNywgMTAsIAorICAgIDI3LCAyNTIsIDU1LCAyLCAyNDEsIDIxOSwgMTQ3LCAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDY2LCAxNDcsIDE3LCAxMCwgCisgICAgMjcsIDIxNywgOCwgMiwgMjQxLCAyMTksIDE0NywgMTcsIDEwLCAyNywgMjE2LCAxOTMsIDIsIDY2LCAxNDcsIDE3LCAxMCwgCisgICAgMjcsIDIxNiwgMTkzLCAyLCAyNDEsIDIxOSwgMTQ3LCAxNywgMTAsIDI3LCAyMjEsIDE2NywgMiwgNjYsIDE0NywgMTcsIDEwLCAKKyAgICAyNywgMjIxLCAxNjcsIDIsIDI0MSwgMjE5LCAxNDcsIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIDY2LCAxNDcsIDE3LCAxMCwgCisgICAgMjcsIDIyMCwgNjAsIDIsIDI0MSwgMjE5LCAxNDcsIDE3LCAxMCwgMjcsIDIzNCwgMjUxLCAyLCAyMzMsIDEwMywgMTQ3LCAKKyAgICAxNywgMTAsIDI3LCAyMzQsIDI1MSwgMiwgNjYsIDE0NywgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDY2LCAxNDcsIDE3LCAKKyAgICAxMCwgMjcsIDIyOCwgNjMsIDIsIDY2LCAxNDcsIDE3LCAxMCwgMjcsIDIyOCwgNjMsIDIsIDI0MSwgMjE5LCAxNDcsIDE3LCAKKyAgICAxMCwgMjcsIDc5LCAyLCA2NiwgMTQ3LCAxNywgMTAsIDI3LCA3OSwgMiwgMjQxLCAyMTksIDE0NywgMTcsIDEwLCAyNywgCisgICAgMjIwLCA5NCwgMiwgMjQ0LCAxNjYsIDE0NywgMTcsIDEwLCAyNywgMjIwLCA5NCwgMiwgMjQ4LCAxODUsIDE0NywgMTcsIDEwLCAKKyAgICAyNywgMjIwLCA5NCwgMiwgMjM0LCAyMDYsIDE0NywgMTcsIDEwLCAyNywgMjE3LCA4MSwgMiwgMTEyLCAyMzEsIDE5MywgNTMsIAorICAgIDE3LCAxMCwgMjcsIDIxNywgODEsIDIsIDc5LCA1MywgMTcsIDEwLCAyNywgMjU0LCAxOTcsIDIsIDExMiwgMjMxLCAxOTMsIAorICAgIDUzLCAxNywgMTAsIDI3LCAyNTQsIDE5NywgMiwgNzksIDUzLCAxNywgMTAsIDI3LCAyNDIsIDI0NSwgMiwgMTEyLCAyMzEsIAorICAgIDE5MywgNTMsIDE3LCAxMCwgMjcsIDI0MiwgMjQ1LCAyLCA3OSwgNTMsIDE3LCAxMCwgMjcsIDIyMSwgMTY3LCAyLCAxMTIsIAorICAgIDIzMSwgMTkzLCA1MywgMTcsIDEwLCAyNywgMjIxLCAxNjcsIDIsIDc5LCA1MywgMTcsIDEwLCAyNywgMjIwLCA2MCwgMiwgCisgICAgMTEyLCAyMzEsIDE5MywgNTMsIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIDc5LCA1MywgMTcsIDEwLCAyNywgMTIyLCAyLCAKKyAgICAxMTIsIDIzMSwgMTkzLCA1MywgMTcsIDEwLCAyNywgMTIyLCAyLCA3OSwgNTMsIDE3LCAxMCwgMjcsIDE1MSwgMiwgMTEyLCAKKyAgICAyMzEsIDE5MywgNTMsIDE3LCAxMCwgMjcsIDE1MSwgMiwgNzksIDUzLCAxNywgMTAsIDI3LCAyMzQsIDEzMCwgMiwgMTEyLCAKKyAgICAyMzEsIDE5MywgNTMsIDE3LCAxMCwgMjcsIDIzNCwgMTMwLCAyLCA3OSwgNTMsIDE3LCAxMCwgMjcsIDIyMiwgMjcsIDIsIAorICAgIDExMiwgMjMxLCAxOTMsIDUzLCAxNywgMTAsIDI3LCAyMjIsIDI3LCAyLCA3OSwgNTMsIDE3LCAxMCwgMjcsIDI0OCwgMjE3LCAKKyAgICAyLCAxMTIsIDIzMSwgMTkzLCA1MywgMTcsIDEwLCAyNywgMjQ4LCAyMTcsIDIsIDc5LCA1MywgMTcsIDEwLCAyNywgMjIwLCAKKyAgICA2MCwgMiwgMTUxLCA1MywgMTcsIDEwLCAyNywgMjIwLCA2MCwgMiwgMTIyLCA1MywgMTcsIDEwLCAyNywgMjIwLCA2MCwgMiwgCisgICAgMjM0LCAxMzAsIDUzLCAxNywgMTAsIDI3LCAyMjAsIDYwLCAyLCA2NiwgNTMsIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIAorICAgIDIyMywgOTYsIDUzLCAxNywgMTAsIDI3LCAyMjEsIDE2NywgMiwgMjIzLCA5NiwgNTMsIDE3LCAxMCwgMjcsIDIyMiwgMjcsIAorICAgIDIsIDIyMywgOTYsIDUzLCAxNywgMTAsIDI3LCAyNDgsIDIxNywgMiwgMjIzLCA5NiwgNTMsIDE3LCAxMCwgMjcsIDIxNywgCisgICAgODEsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyMTcsIDgxLCAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIAorICAgIDI1NCwgMTk3LCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIDEwLCAyNywgMjU0LCAxOTcsIDIsIDc5LCA0MCwgMTcsIDEwLCAKKyAgICAyNywgMjQyLCAyNDUsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyNDIsIDI0NSwgMiwgNzksIDQwLCAxNywgCisgICAgMTAsIDI3LCAyMjEsIDE2NywgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDIyMSwgMTY3LCAyLCA3OSwgNDAsIAorICAgIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyMjAsIDYwLCAyLCA3OSwgCisgICAgNDAsIDE3LCAxMCwgMjcsIDEyMiwgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDEyMiwgMiwgNzksIDQwLCAKKyAgICAxNywgMTAsIDI3LCAxNTEsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAxNTEsIDIsIDc5LCA0MCwgMTcsIAorICAgIDEwLCAyNywgMjM0LCAxMzAsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyMzQsIDEzMCwgMiwgNzksIDQwLCAKKyAgICAxNywgMTAsIDI3LCAyMjIsIDI3LCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIDEwLCAyNywgMjIyLCAyNywgMiwgNzksIAorICAgIDQwLCAxNywgMTAsIDI3LCAyNDgsIDIxNywgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDI0OCwgMjE3LCAyLCAKKyAgICA3OSwgNDAsIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIDE1MSwgNDAsIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIDEyMiwgNDAsIAorICAgIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIDIzNCwgMTMwLCA0MCwgMTcsIDEwLCAyNywgMjIwLCA2MCwgMiwgNjYsIDQwLCAxNywgCisgICAgMTAsIDI3LCAyMjAsIDYwLCAyLCAyMjMsIDk2LCA0MCwgMTcsIDEwLCAyNywgMjIxLCAxNjcsIDIsIDIyMywgOTYsIDQwLCAKKyAgICAxNywgMTAsIDI3LCAyMjIsIDI3LCAyLCAyMjMsIDk2LCA0MCwgMTcsIDEwLCAyNywgMjQ4LCAyMTcsIDIsIDIyMywgOTYsIAorICAgIDQwLCAxNywgMTAsIDI3LCAyMjAsIDYwLCAyLCAxNTEsIDY1LCAxNywgMTAsIDI3LCAyMjAsIDYwLCAyLCAxMjIsIDY1LCAxNywgCisgICAgMTAsIDI3LCAyMjAsIDYwLCAyLCAyMzQsIDEzMCwgNjUsIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIDY2LCA2NSwgMTcsIDEwLCAKKyAgICAyNywgMjIxLCAxNjcsIDIsIDI0MSwgMjE5LCA2NSwgMTcsIDEwLCAyNywgMjIwLCA2MCwgMiwgMjQxLCAyMTksIDY1LCAxNywgCisgICAgMTAsIDI3LCAyMTcsIDgxLCAyLCA2NiwgNjUsIDE3LCAxMCwgMjcsIDIyMSwgMTY3LCAyLCAxNTEsIDE0NywgMTcsIDEwLCAKKyAgICAyNywgMjIxLCAxNjcsIDIsIDEyMiwgMTQ3LCAxNywgMTAsIDI3LCAyMjEsIDE2NywgMiwgMjM0LCAxMzAsIDE0NywgMTcsIAorICAgIDEwLCAyNywgMjIwLCA2MCwgMiwgMTUxLCAxNDcsIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIDEyMiwgMTQ3LCAxNywgMTAsIAorICAgIDI3LCAyMjAsIDYwLCAyLCAyMzQsIDEzMCwgMTQ3LCAxNywgMTAsIDI3LCAyMTcsIDgxLCAyLCA2NiwgMTQ3LCAxNywgMTAsIAorICAgIDI3LCAyMTAsIDExMiwgMiwgNjYsIDE0NywgMTcsIDEwLCAyNywgMTEyLCAyLCAyNDQsIDE2NCwgNDAsIDE3LCAxMCwgMjcsIAorICAgIDExMiwgMiwgMjQ0LCAxNjQsIDUzLCAxNywgMjI2LCAxNDYsIDQzLCAyMjYsIDMsIDIyNiwgMTQ2LCA0NCwgMjI2LCAzLCAxMCwgCisgICAgMjcsIDIxNywgOCwgMiwgMTUxLCAyLCA2NiwgNjUsIDE3LCAxMCwgMjcsIDIxNywgOCwgMiwgMTIyLCAyLCAxNTEsIDQwLCAKKyAgICAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDEyMiwgMiwgMTUxLCA2NSwgMTcsIDEwLCAyNywgMjE3LCA4LCAyLCAxMjIsIDIsIAorICAgIDY2LCA2NSwgMTcsIDEwLCAyNywgMjE3LCA4LCAyLCAyMzQsIDEzMCwgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAyMTcsIDgsIAorICAgIDIsIDY2LCAyLCAxNTEsIDY1LCAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDY2LCAyLCAxMjIsIDY1LCAxNywgMTAsIDI3LCAKKyAgICAyMTcsIDgsIDIsIDY2LCAyLCAyMzQsIDEzMCwgNjUsIDE3LCAxMCwgMjcsIDE1MSwgMiwgNjYsIDIsIDEyMiwgNDAsIDE3LCAKKyAgICAxMCwgMjcsIDE1MSwgMiwgNjYsIDIsIDEyMiwgNjUsIDE3LCAxMCwgMjcsIDEyMiwgMiwgNjYsIDIsIDc5LCA0MCwgMTcsIAorICAgIDEwLCAyNywgMTIyLCAyLCA2NiwgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDIyMSwgMTY3LCAyLCAxMjIsIAorICAgIDIsIDE1MSwgNjUsIDE3LCAxMCwgMjcsIDIyMSwgMTY3LCAyLCAxNTEsIDIsIDEyMiwgNjUsIDE3LCAxMCwgMjcsIDIyMSwgCisgICAgMTY3LCAyLCAxNTEsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyMjEsIDE2NywgMiwgNjYsIDIsIDEyMiwgCisgICAgNDAsIDE3LCAxMCwgMjcsIDIyMSwgMTY3LCAyLCA2NiwgMiwgMTIyLCA2NSwgMTcsIDEwLCAyNywgMjIxLCAxNjcsIDIsIDY2LCAKKyAgICAyLCAxNTEsIDY1LCAxNywgMTAsIDI3LCAyMjEsIDE2NywgMiwgNjYsIDIsIDY2LCA0MCwgMTcsIDEwLCAyNywgMjIxLCAxNjcsIAorICAgIDIsIDY2LCAyLCA2NiwgNjUsIDE3LCAxMCwgMjcsIDIyMiwgMjcsIDIsIDEyMiwgMiwgMTIyLCA0MCwgMTcsIDEwLCAyNywgCisgICAgMjIyLCAyNywgMiwgMTIyLCAyLCAxMjIsIDY1LCAxNywgMTAsIDI3LCAyMjIsIDI3LCAyLCA2NiwgMiwgNjYsIDQwLCAxNywgCisgICAgMTAsIDI3LCAyMjAsIDYwLCAyLCAxMjIsIDIsIDY2LCA0MCwgMTcsIDEwLCAyNywgMjIwLCA2MCwgMiwgMTIyLCAyLCA2NiwgCisgICAgNjUsIDE3LCAxMCwgMjcsIDIyMCwgNjAsIDIsIDE1MSwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCAyMjAsIDYwLCAyLCA2NiwgCisgICAgMiwgMjM0LCAxMzAsIDQwLCAxNywgMTAsIDI3LCAyMjAsIDYwLCAyLCA2NiwgMiwgMjM0LCAxMzAsIDY1LCAxNywgMTAsIDI3LCAKKyAgICAyMjAsIDYwLCAyLCA2NiwgMiwgNjYsIDQwLCAxNywgMTAsIDI3LCAyMjAsIDYwLCAyLCA2NiwgMiwgNjYsIDY1LCAxNywgMTAsIAorICAgIDI3LCAyNDgsIDIxNywgMiwgMTIyLCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIDEwLCAyNywgMjQ4LCAyMTcsIDIsIDIzNCwgCisgICAgMTMwLCAyLCA2NiwgNDAsIDE3LCAxMCwgMjcsIDI0OCwgMjE3LCAyLCAyMzQsIDEzMCwgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAKKyAgICAyMTcsIDgxLCAyLCA2NiwgMiwgMTIyLCA0MCwgMTcsIDEwLCAyNywgMjE3LCA4MSwgMiwgNjYsIDIsIDEyMiwgNjUsIDE3LCAKKyAgICAxMCwgMjcsIDIxNywgODEsIDIsIDY2LCAyLCA2NiwgNjUsIDE3LCAxMCwgMjcsIDIxNywgODEsIDIsIDY2LCAyLCA3OSwgNDAsIAorICAgIDE3LCAxMCwgMjcsIDI1NCwgMTk3LCAyLCAxNTEsIDIsIDY2LCA0MCwgMTcsIDEwLCAyNywgMjU0LCAxOTcsIDIsIDY2LCAyLCAKKyAgICA2NiwgNDAsIDE3LCAxMCwgMjcsIDI1NCwgMTk3LCAyLCA2NiwgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAyNTQsIDE5NywgMiwgCisgICAgNjYsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyNDIsIDI0NSwgMiwgNjYsIDIsIDY2LCA0MCwgMTcsIDEwLCAKKyAgICAyNywgMjQyLCAyNDUsIDIsIDY2LCAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIDI0MiwgMjQ1LCAyLCA2NiwgMiwgMTEyLCAyMzEsIAorICAgIDE5MywgNDAsIDE3LCAxMCwgMjcsIDI0NCwgMTQzLCAyLCAyMzQsIDEzMCwgMiwgNjYsIDQwLCAxNywgMTAsIDI3LCAyNDQsIAorICAgIDE0MywgMiwgMjM0LCAxMzAsIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgMjI0LCA4MiwgMiwgNjYsIDIsIDEyMiwgNDAsIDE3LCAKKyAgICAxMCwgMjcsIDIyNCwgODIsIDIsIDY2LCAyLCA2NiwgNDAsIDE3LCAxMCwgMjcsIDIzMywgMTAzLCAyLCAxMjIsIDIsIDY2LCAKKyAgICA0MCwgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDEyMiwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgCisgICAgMTIyLCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDE1MSwgMiwgMTUxLCA2NSwgMTcsIAorICAgIDEwLCAyNywgMjMzLCAxMDMsIDIsIDE1MSwgMiwgMTUxLCA0MCwgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDIzNCwgMTMwLCAKKyAgICAyLCA2NiwgNDAsIDE3LCAxMCwgMjcsIDIzMywgMTAzLCAyLCAyMzQsIDEzMCwgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAyMzMsIAorICAgIDEwMywgMiwgNjYsIDIsIDEyMiwgNDAsIDE3LCAxMCwgMjcsIDIzMywgMTAzLCAyLCA2NiwgMiwgMTIyLCA2NSwgMTcsIDEwLCAKKyAgICAyNywgNjYsIDIsIDEyMiwgMiwgMTUxLCA2NSwgMTcsIDEwLCAyNywgNjYsIDIsIDEyMiwgMiwgNjYsIDY1LCAxNywgMTAsIAorICAgIDI3LCA2NiwgMiwgMTIyLCAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIDY2LCAyLCAxNTEsIDIsIDEyMiwgNjUsIDE3LCAxMCwgCisgICAgMjcsIDY2LCAyLCAxNTEsIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgNjYsIDIsIDIzNCwgMTMwLCAyLCAxNTEsIDY1LCAxNywgCisgICAgMTAsIDI3LCA2NiwgMiwgMjM0LCAxMzAsIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgNjYsIDIsIDE1MSwgMiwgMjM0LCAxMzAsIAorICAgIDY1LCAxNywgMTAsIDI3LCAyNDEsIDIxOSwgMiwgNjYsIDIsIDE1MSwgNjUsIDE3LCAxMCwgMjcsIDI0MSwgMjE5LCAyLCA2NiwgCisgICAgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCAxMjIsIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgMjI4LCA2MywgCisgICAgMiwgMTIyLCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIDEwLCAyNywgMjI4LCA2MywgMiwgMTUxLCAyLCA2NiwgNDAsIDE3LCAKKyAgICAxMCwgMjcsIDIyOCwgNjMsIDIsIDE1MSwgMiwgNjYsIDY1LCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCAxNTEsIDIsIDExMiwgCisgICAgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCA2NiwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCAyMjgsIDYzLCAKKyAgICAyLCA2NiwgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDc5LCAyLCA2NiwgMiwgNjYsIDQwLCAxNywgMTAsIAorICAgIDI3LCA3OSwgMiwgNjYsIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgMjUyLCA1NSwgMiwgMjM0LCAxMzAsIDIsIDc5LCA0MCwgCisgICAgMTcsIDEwLCAyNywgMjE3LCA4LCAyLCAxNTEsIDIsIDc5LCA0MCwgMTcsIDEwLCAyNywgMjE3LCA4LCAyLCAxNTEsIDIsIAorICAgIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDIzNCwgMTMwLCAyLCA3OSwgNDAsIDE3LCAxMCwgCisgICAgMjcsIDIxNywgOCwgMiwgMjM0LCAxMzAsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAyMTcsIDgsIDIsIDY2LCAKKyAgICAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIDIxNywgOCwgMiwgNjYsIDIsIDExMiwgMjMxLCAxOTMsIDQwLCAxNywgMTAsIDI3LCAKKyAgICAxNTEsIDIsIDY2LCAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIDE1MSwgMiwgMTIyLCAyLCAxMTIsIDIzMSwgMTkzLCA0MCwgMTcsIAorICAgIDEwLCAyNywgMTUxLCAyLCA2NiwgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDIyMSwgMTY3LCAyLCAyMzQsIAorICAgIDEzMCwgMiwgMTEyLCAyMzEsIDE5MywgNDAsIDE3LCAxMCwgMjcsIDIyMiwgMjcsIDIsIDEyMiwgMiwgNzksIDQwLCAxNywgCisgICAgMTAsIDI3LCAyMjAsIDYwLCAyLCAxMjIsIDIsIDc5LCA0MCwgMTcsIDEwLCAyNywgMjQ4LCAyMTcsIDIsIDEyMiwgMiwgNzksIAorICAgIDQwLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgMTUxLCAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIDIzMywgMTAzLCAyLCA2NiwgCisgICAgMiwgNzksIDQwLCAxNywgMTAsIDI3LCA3OSwgMiwgMTIyLCAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIDc5LCAyLCAxNTEsIDIsIAorICAgIDc5LCA0MCwgMTcsIDEwLCAyNywgNzksIDIsIDY2LCAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIDY2LCAyLCA2NiwgMiwgNzksIAorICAgIDQwLCAxNywgMTAsIDI3LCAyMjQsIDgyLCAyLCA2NiwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCAxMjIsIAorICAgIDIsIDc5LCA0MCwgMTcsIDEwLCAyNywgMjI0LCA4MiwgMiwgNjYsIDIsIDEyMiwgNjUsIDE3LCAxMCwgMjcsIDIzMywgMTAzLCAKKyAgICAyLCAxMjIsIDIsIDY2LCA2NSwgMTcsIDEwLCAyNywgMjU0LCAxOTcsIDIsIDY2LCAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIAorICAgIDIzNCwgMjUxLCAyLCA2NiwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCAxNTEsIDIsIDEyMiwgNjUsIDE3LCAKKyAgICAxMCwgMjcsIDY2LCAyLCAyMzQsIDEzMCwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgMTUxLCAyLCA2NiwgCisgICAgNjUsIDE3LCAxMCwgMjcsIDIzNCwgMjUxLCAyLCA2NiwgMiwgNjYsIDQwLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgMTUxLCAKKyAgICAyLCA2NiwgNDAsIDE3LCAxMCwgMjcsIDIyOCwgNjMsIDIsIDE1MSwgMiwgMTIyLCA0MCwgMTcsIDEwLCAyNywgMTUxLCAyLCAKKyAgICAxMjIsIDIsIDc5LCA0MCwgMTcsIDEwLCAyNywgMTIyLCAyLCAxNTEsIDIsIDc5LCA0MCwgMTcsIDEwLCAyNywgNjYsIDIsIAorICAgIDE1MSwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCAyNDQsIDE0MywgMiwgNjYsIDIsIDc5LCA0MCwgMTcsIDEwLCAyNywgMjUyLCAKKyAgICA1NSwgMiwgMTIyLCAyLCA3OSwgNDAsIDE3LCAxMCwgMjcsIDIzNCwgMjUxLCAyLCA2NiwgMiwgNjYsIDY1LCAxNywgMTAsIAorICAgIDI3LCAyNTQsIDE5NywgMiwgMTUxLCAyLCA2NiwgNjUsIDE3LCAxMCwgMjcsIDIyMiwgMjcsIDIsIDY2LCAyLCA2NiwgNjUsIAorICAgIDE3LCAxMCwgMjcsIDIyMSwgMTY3LCAyLCAyMzQsIDEzMCwgMiwgNzksIDQwLCAxNywgMTAsIDI3LCAyMjgsIDYzLCAyLCAKKyAgICAxNTEsIDIsIDc5LCA0MCwgMTcsIDEwLCAyNywgMjIyLCA0LCAyMTQsIDEyOCwgMjUzLCAyMzgsIDIzNCwgNCwgMjE4LCAxMzAsIAorICAgIDUsIDUzLCAxNywgMTAsIDI3LCAyMjQsIDc4LCAyMTQsIDEyOCwgMjUzLCAyMzgsIDIzNCwgNCwgMjE4LCAxMzAsIDUsIDUzLCAKKyAgICAxNywgMTAsIDI3LCAyNTQsIDE1MywgNTMsIDE3LCAxMCwgMjcsIDI1NCwgMTgzLCA1MywgMTcsIDEwLCAyNywgMjMwLCAxNTMsIAorICAgIDUzLCAxNywgMTAsIDI3LCAyMjIsIDUsIDUzLCAxNywgMTAsIDI3LCAyMjMsIDE0MywgNTMsIDE3LCAxMCwgMjcsIDI1NCwgCisgICAgMTcyLCA1MywgMTcsIDEwLCAyNywgMjEyLCA0OSwgNTMsIDE3LCAxMCwgMjcsIDIyMiwgNCwgNTMsIDE3LCAxMCwgMjcsIAorICAgIDIyMiwgMywgMjU0LCAxNzIsIDIxMiwgNDgsIDEwLCAyNywgMjM1LCAxMzQsIDIyMywgMzQsIDUwLCAxMCwgMjcsIDI1MSwgCisgICAgMjMwLCAyNTQsIDM5LCAyNTQsIDQwLCA0NSwgMjIxLCAxNTYsIDQ1LCAyMjEsIDQ1LCA0NSwgMjIwLCAyMzMsIDQ1LCAyMjAsIAorICAgIDIyMiwgNDUsIDIyMCwgMjExLCA0NSwgMjIwLCAyMDAsIDQ1LCAyMjAsIDE4OSwgNDUsIDIyMCwgMTc4LCA0NSwgMjIwLCAKKyAgICAxNjcsIDQ1LCAyMjEsIDE1NSwgNDUsIDIyMSwgMTQ0LCA0NSwgMjIxLCAxMzMsIDQ1LCAyMjEsIDEyMiwgNDUsIDIyMSwgCisgICAgMTExLCA0NSwgMjIxLCAxMDAsIDQ1LCAyMjEsIDg5LCAyMjQsIDE5NCwgMjQ0LCAyMCwgMzEsIDY3LCAyNDksIDIxOSwgMjI0LCAKKyAgICAxOTQsIDI0NCwgMjAsIDMxLCA2NywgMTA5LCAyNDksIDIxOSwgMjI0LCAxOTQsIDI0NCwgMjAsIDMxLCA2NywgMTA5LCAyNDMsIAorICAgIDIyOSwgMjE4LCAxMjksIDIyNCwgMTk0LCAyNDQsIDIwLCAzMSwgNjcsIDI0OSwgMjI2LCAyMjQsIDE5NCwgMjQ0LCAyMCwgCisgICAgMzEsIDY3LCAyMjAsIDE1MCwgMjI0LCAxOTQsIDI0NCwgMjAsIDMxLCA2NywgMjQ1LCAzMSwgNzgsIDIyNCwgMTk0LCAyNDQsIAorICAgIDIwLCAzMSwgNjcsIDIyNCwgMTMsIDc4LCAyMjQsIDE5NCwgMjQ0LCAyMCwgMzEsIDY3LCA0MywgNzEsIDIzMywgMjAsIDEyNywgCisgICAgMjI0LCAxOTQsIDI0NCwgMjAsIDMxLCA2NywgNDQsIDcxLCAyMzMsIDIwLCAyNTEsIDE1NiwgMjI0LCAxOTQsIDI0NCwgMjAsIAorICAgIDMxLCA2NywgMjAzLCAyNDUsIDE2MywgMzgsIDI3LCA0MywgMjQyLCAyNywgMzgsIDI3LCA0NCwgMjQyLCAyNywgMzgsIDUyLCAKKyAgICAyMTYsIDg5LCA0MywgMjQyLCAyNywgMzgsIDUyLCAyMTYsIDg5LCA0NCwgMjQyLCAyNywgMzgsIDIzMSwgMjMzLCA0MywgCisgICAgMjQyLCAyNywgMzgsIDIzMSwgMjMzLCA0NCwgMjQyLCAyNywgMzgsIDI0OSwgMTk3LCAyMzEsIDIzMiwgMjI0LCAxOTQsIAorICAgIDI0NCwgMjAsIDMxLCA2NywgMTEzLCA1OSwgMjMzLCA1NiwgMjI0LCAxOTQsIDI0NCwgMjAsIDMxLCA2NywgMjQ1LCAxNjAsIAorICAgIDI0OCwgMTU2LCAyMjQsIDE5NCwgMjQ0LCAyMCwgMzEsIDY3LCAyNDUsIDE1MSwgMjQ4LCAxNTYsIDIyNCwgMTk0LCAyNDQsIAorICAgIDIwLCAzMSwgNjcsIDEyMSwgMjMyLCAyMTMsIDIyNCwgMTk0LCAyNDQsIDIwLCAzMSwgNjcsIDIxMiwgMzIsIDEyMSwgMjMyLCAKKyAgICAyMTMsIDIyNCwgMTk0LCAyNDQsIDIwLCAzMSwgNjcsIDQzLCAyMjYsIDMsIDIyNCwgMTk0LCAyNDQsIDIwLCAzMSwgNjcsIAorICAgIDQ0LCAyMjYsIDMsIDIyNCwgMTk0LCAyNDQsIDIwLCAzMSwgNjcsIDQzLCAyNDksIDk5LCAxMjcsIDIyNCwgMTk0LCAyNDQsIAorICAgIDIwLCAzMSwgNjcsIDQ0LCAyNDksIDk5LCAxMjcsIDIyNCwgMTk0LCAyNDQsIDIwLCAzMSwgNjcsIDQzLCAyMTYsIDYsIDIyMCwgCisgICAgNTMsIDEyNywgMjI0LCAxOTQsIDI0NCwgMjAsIDMxLCA2NywgNDQsIDIxNiwgNiwgMjIwLCA1MywgMTI3LCAyMjQsIDE5NCwgCisgICAgMjQ0LCAyMCwgMzEsIDY3LCA0MywgODUsIDIzMywgMjAsIDEyNywgMjI0LCAxOTQsIDI0NCwgMjAsIDMxLCA2NywgNDQsIDg1LCAKKyAgICAyMzMsIDIwLCAxMjcsIDIyNCwgMTk0LCAyNDQsIDIwLCAzMSwgNjcsIDQzLCA1MiwgMjU0LCAxMTAsIDEyNywgMjI0LCAxOTQsIAorICAgIDI0NCwgMjAsIDMxLCA2NywgNDQsIDUyLCAyNTQsIDExMCwgMTI3LCAyMjQsIDE5NCwgMjQ0LCAyMCwgMzEsIDY3LCA0MywgCisgICAgMjU0LCAxMTAsIDEyNywgMjI0LCAxOTQsIDI0NCwgMjAsIDMxLCA2NywgNDQsIDI1NCwgMTEwLCAxMjcsIDIyNCwgMTk0LCAKKyAgICAyNDQsIDIwLCAzMSwgNjcsIDQzLCAyNDksIDE2MSwgMTI3LCAyMjQsIDE5NCwgMjQ0LCAyMCwgMzEsIDY3LCA0NCwgMjQ5LCAKKyAgICAxNjEsIDEyNywgMjI0LCAxOTQsIDI0NCwgMjAsIDMxLCA2NywgNDMsIDcxLCAyNDksIDE2MSwgMTI3LCAyMjQsIDE5NCwgCisgICAgMjQ0LCAyMCwgMzEsIDY3LCA0NCwgNzEsIDI0OSwgMTYxLCAxMjcsIDIyMCwgMTMxLCAyNDcsIDEyMCwgNzEsIDIyMCwgMTMxLCAKKyAgICAyNDcsIDEyMCwgMjI0LCAxOTQsIDI0NCwgMjAsIDMxLCA2NywgNDMsIDQyLCAxMjcsIDIyNCwgMTk0LCAyNDQsIDIwLCAzMSwgCisgICAgNjcsIDQ0LCA0MiwgMTI3LCAyNDgsIDE1NSwgMjI2LCAxMTksIDI1MCwgMTcyLCAyMjYsIDExOSwgMjEyLCAzMiwgMjI2LCAKKyAgICAxMTksIDUyLCAyMTIsIDMyLCAyMjYsIDExOSwgMjQ4LCAxNTUsIDEyMSwgMjMyLCAyMTMsIDI1MCwgMTcyLCAxMjEsIDIzMiwgCisgICAgMjEzLCAyMTIsIDMyLCAxMjEsIDIzMiwgMjEzLCA0LCAyNDksIDIxOSwgNCwgMTA5LCAyNDksIDIxOSwgNCwgMjQzLCAyMjksIAorICAgIDIxOCwgMTI5LCA0LCAyMjAsIDE1MCwgNCwgMjQ5LCAyMjYsIDQsIDIyNCwgMTMsIDc4LCA0LCAyNDUsIDMxLCA3OCwgNCwgCisgICAgMjQ1LCAxNjAsIDI0OCwgMTU2LCA0LCA0MywgMjI2LCAzLCA0LCA0NCwgMjI2LCAzLCA0LCA0MywgMjQ5LCA5OSwgMTI3LCA0LCAKKyAgICA0NCwgMjQ5LCA5OSwgMTI3LCA0LCA0MywgMjE2LCA2LCAyMjAsIDUzLCAxMjcsIDQsIDQ0LCAyMTYsIDYsIDIyMCwgNTMsIAorICAgIDEyNywgNCwgNTQsIDUwLCA0LCAyNTQsIDEyNiwgNCwgMjUzLCAyMTYsIDQsIDk2LCA1MCwgNCwgMjQwLCAxNjcsIDQsIDIzMywgCisgICAgMTUsIDUwLCA0LCAyNDIsIDEzMCwgNTAsIDQsIDI0NSwgOTgsIDUwLCA0LCAyMjMsIDUwLCAyMTksIDQ2LCA0LCAyNDcsIAorICAgIDEzMiwgNTAsIDQsIDIyNSwgMTgyLCA1MCwgNCwgMjQ5LCAyMTcsIDI1MywgMjA2LCAxMCwgMjQ0LCAxNjQsIDUzLCAxNywgCisgICAgMTAsIDIxNywgNDQsIDIsIDI0NCwgMTY0LCA0OCwgMTAsIDI0OCwgMTgzLCA1MywgMTcsIDEwLCAyMTcsIDc4LCAyNDQsIDEsIAorICAgIDEwLCAyMzQsIDIwNCwgNTMsIDE3LCAxMCwgMjQ0LCAxNjYsIDUzLCAxNywgMTAsIDI0NCwgMTY2LCAxNDcsIDE3LCAxMCwgCisgICAgMjQ4LCAxODUsIDUzLCAxNywgMTAsIDI0OCwgMTg1LCAxNDcsIDE3LCAxMCwgMjM0LCAyMDYsIDUzLCAxNywgMTAsIDIzNCwgCisgICAgMjA2LCAxNDcsIDE3LCAxMCwgMjIwLCA5NCwgNTMsIDE3LCAxMCwgMjIwLCA5NCwgMTQ3LCAxNywgMTAsIDIxOCwgNDYsIDUzLCAKKyAgICAxNywgMTAsIDIxOCwgNDYsIDE0NywgMTcsIDEwLCAxLCAyMDIsIDUzLCAxNywgMTAsIDEsIDExMiwgMiwgMjMxLCAyMjgsIAorICAgIDc3LCA1MywgMTcsIDEwLCAxLCAxMTIsIDIsIDIzMSwgMjI4LCA3NywgNDAsIDE3LCAxMCwgMSwgMTEyLCAyLCAyMDIsIDc3LCAKKyAgICA1MywgMTcsIDEwLCAxLCAxMTIsIDIsIDIwMiwgNzcsIDQwLCAxNywgMTAsIDEsIDIxMiwgMzEsIDIsIDIwMiwgNzcsIDUzLCAKKyAgICAxNywgMTAsIDEsIDIxMiwgMzEsIDIsIDIwMiwgNzcsIDQwLCAxNywgMTAsIDEsIDExMiwgMiwgMjAyLCAyNTIsIDQzLCA1MywgCisgICAgMTcsIDEwLCAxLCAxMTIsIDIsIDIwMiwgMjUyLCA0MywgNDAsIDE3LCAxMCwgMSwgNzksIDIsIDIwMiwgNzcsIDUzLCAxNywgCisgICAgMTAsIDEsIDc5LCAyLCAyMDIsIDc3LCA0MCwgMTcsIDEwLCAxLCA3OSwgMiwgMjAyLCA3NywgNjUsIDE3LCAxMCwgMSwgNzksIAorICAgIDIsIDIwMiwgNzcsIDE0NywgMTcsIDEwLCAxLCAxMTIsIDUzLCAxNywgMTAsIDEsIDExMiwgNDAsIDE3LCAxMCwgMSwgMjUyLCAKKyAgICA1NSwgNTMsIDE3LCAxMCwgMSwgMjUyLCA1NSwgNDAsIDE3LCAxMCwgMSwgMjUyLCA1NSwgNjUsIDE3LCAxMCwgMSwgMjUyLCAKKyAgICA1NSwgMTQ3LCAxNywgMTAsIDEsIDIxNywgOCwgMjMxLCAxNjUsIDUzLCAxNywgMTAsIDEsIDIxNywgOCwgMjMxLCAxNjUsIAorICAgIDQwLCAxNywgMTAsIDEsIDIxNywgOCwgNTMsIDE3LCAxMCwgMSwgMjE3LCA4LCA0MCwgMTcsIDEwLCAxLCAyMTcsIDgsIDY1LCAKKyAgICAxNywgMTAsIDEsIDIxNywgOCwgMTQ3LCAxNywgMTAsIDEsIDIxNiwgMTkzLCA1MywgMTcsIDEwLCAxLCAyMTYsIDE5MywgNDAsIAorICAgIDE3LCAxMCwgMSwgMjE2LCAxOTMsIDY1LCAxNywgMTAsIDEsIDIxNiwgMTkzLCAxNDcsIDE3LCAxMCwgMSwgMTUxLCA1MywgCisgICAgMTcsIDEwLCAxLCAxNTEsIDQwLCAxNywgMTAsIDEsIDE1MSwgNjUsIDE3LCAxMCwgMSwgMTUxLCAxNDcsIDE3LCAxMCwgMSwgCisgICAgMTIyLCA1MywgMTcsIDEwLCAxLCAxMjIsIDQwLCAxNywgMTAsIDEsIDEyMiwgNjUsIDE3LCAxMCwgMSwgMTIyLCAxNDcsIDE3LCAKKyAgICAxMCwgMSwgMjM0LCAxMzAsIDUzLCAxNywgMTAsIDEsIDIzNCwgMTMwLCA0MCwgMTcsIDEwLCAxLCAyMzQsIDEzMCwgNjUsIAorICAgIDE3LCAxMCwgMSwgMjM0LCAxMzAsIDE0NywgMTcsIDEwLCAxLCAyNDgsIDE5NiwgNTMsIDE3LCAxMCwgMSwgMjQ4LCAxOTYsIAorICAgIDQwLCAxNywgMTAsIDEsIDIxNiwgMjAzLCA1MywgMTcsIDEwLCAxLCAyMTYsIDIwMywgNDAsIDE3LCAxMCwgMSwgMjIzLCA5NiwgCisgICAgNTMsIDE3LCAxMCwgMSwgMjIzLCA5NiwgNDAsIDE3LCAxMCwgMSwgMjEwLCAxMDksIDUzLCAxNywgMTAsIDEsIDIxMCwgMTA5LCAKKyAgICA0MCwgMTcsIDEwLCAxLCAyMjEsIDE2NywgNTMsIDE3LCAxMCwgMSwgMjIxLCAxNjcsIDQwLCAxNywgMTAsIDEsIDIyMSwgCisgICAgMTY3LCA2NSwgMTcsIDEwLCAxLCAyMjEsIDE2NywgMTQ3LCAxNywgMTAsIDEsIDIyMCwgNjAsIDUzLCAxNywgMTAsIDEsIAorICAgIDIyMCwgNjAsIDQwLCAxNywgMTAsIDEsIDIyMCwgNjAsIDY1LCAxNywgMTAsIDEsIDIyMCwgNjAsIDE0NywgMTcsIDEwLCAxLCAKKyAgICAyMjIsIDI3LCA1MywgMTcsIDEwLCAxLCAyMjIsIDI3LCA0MCwgMTcsIDEwLCAxLCAyMjIsIDI3LCA2NSwgMTcsIDEwLCAxLCAKKyAgICAyMjIsIDI3LCAxNDcsIDE3LCAxMCwgMSwgMjQ4LCAyMTcsIDUzLCAxNywgMTAsIDEsIDI0OCwgMjE3LCA0MCwgMTcsIDEwLCAKKyAgICAxLCAyNDgsIDIxNywgNjUsIDE3LCAxMCwgMSwgMjQ4LCAyMTcsIDE0NywgMTcsIDEwLCAxLCAyMTcsIDgxLCA1MywgMTcsIAorICAgIDEwLCAxLCAyMTcsIDgxLCA0MCwgMTcsIDEwLCAxLCAyMTcsIDgxLCA2NSwgMTcsIDEwLCAxLCAyMTcsIDgxLCAxNDcsIDE3LCAKKyAgICAxMCwgMSwgMjEwLCAxMTIsIDUzLCAxNywgMTAsIDEsIDIxMCwgMTEyLCA0MCwgMTcsIDEwLCAxLCAyMTAsIDExMiwgNjUsIAorICAgIDE3LCAxMCwgMSwgMjEwLCAxMTIsIDE0NywgMTcsIDEwLCAxLCAyNTQsIDE5NywgNTMsIDE3LCAxMCwgMSwgMjU0LCAxOTcsIAorICAgIDQwLCAxNywgMTAsIDEsIDI1NCwgMTk3LCA2NSwgMTcsIDEwLCAxLCAyNTQsIDE5NywgMTQ3LCAxNywgMTAsIDEsIDI0MiwgCisgICAgMjQ1LCA1MywgMTcsIDEwLCAxLCAyNDIsIDI0NSwgNDAsIDE3LCAxMCwgMSwgMjQyLCAyNDUsIDY1LCAxNywgMTAsIDEsIAorICAgIDI0MiwgMjQ1LCAxNDcsIDE3LCAxMCwgMSwgMjQ0LCAxNDMsIDUzLCAxNywgMTAsIDEsIDI0NCwgMTQzLCA0MCwgMTcsIDEwLCAKKyAgICAxLCAyNDQsIDE0MywgNjUsIDE3LCAxMCwgMSwgMjQ0LCAxNDMsIDE0NywgMTcsIDEwLCAxLCAyMjQsIDgyLCA1MywgMTcsIAorICAgIDEwLCAxLCAyMjQsIDgyLCA0MCwgMTcsIDEwLCAxLCAyMjQsIDgyLCA2NSwgMTcsIDEwLCAxLCAyMjQsIDgyLCAxNDcsIDE3LCAKKyAgICAxMCwgMSwgMjM0LCAyNTEsIDUzLCAxNywgMTAsIDEsIDIzNCwgMjUxLCA0MCwgMTcsIDEwLCAxLCAyMzQsIDI1MSwgNjUsIAorICAgIDE3LCAxMCwgMSwgMjM0LCAyNTEsIDE0NywgMTcsIDEwLCAxLCAyMzMsIDEwMywgNTMsIDE3LCAxMCwgMSwgMjMzLCAxMDMsIAorICAgIDQwLCAxNywgMTAsIDEsIDIzMywgMTAzLCA2NSwgMTcsIDEwLCAxLCAyMzMsIDEwMywgMTQ3LCAxNywgMTAsIDEsIDY2LCA1MywgCisgICAgMTcsIDEwLCAxLCA2NiwgNDAsIDE3LCAxMCwgMSwgNjYsIDY1LCAxNywgMTAsIDEsIDY2LCAxNDcsIDE3LCAxMCwgMSwgMjI4LCAKKyAgICA2MywgNTMsIDE3LCAxMCwgMSwgMjI4LCA2MywgNDAsIDE3LCAxMCwgMSwgMjI4LCA2MywgNjUsIDE3LCAxMCwgMSwgMjI4LCAKKyAgICA2MywgMTQ3LCAxNywgMTAsIDEsIDI0MSwgMjE5LCA1MywgMTcsIDEwLCAxLCAyNDEsIDIxOSwgNDAsIDE3LCAxMCwgMSwgCisgICAgMjQxLCAyMTksIDY1LCAxNywgMTAsIDEsIDI0MSwgMjE5LCAxNDcsIDE3LCAxMCwgMSwgMjEyLCAzMSwgNTMsIDE3LCAxMCwgCisgICAgMSwgMjEyLCAzMSwgNDAsIDE3LCAxMCwgMSwgMTEyLCAyMzEsIDE5MywgNTMsIDE3LCAxMCwgMSwgMTEyLCAyMzEsIDE5MywgCisgICAgNDAsIDE3LCAxMCwgMSwgNzksIDUzLCAxNywgMTAsIDEsIDc5LCA0MCwgMTcsIDEwLCAxLCA3OSwgNjUsIDE3LCAxMCwgMSwgCisgICAgNzksIDE0NywgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDExMiwgMiwgMjMxLCAyMjgsIDc3LCA1MywgMTcsIDEwLCAyNywgCisgICAgMjMzLCAxMDMsIDIsIDExMiwgMiwgMjMxLCAyMjgsIDc3LCA0MCwgMTcsIDEwLCAyNywgMjMzLCAxMDMsIDIsIDExMiwgMiwgCisgICAgMjAyLCA3NywgNTMsIDE3LCAxMCwgMjcsIDIzMywgMTAzLCAyLCAxMTIsIDIsIDIwMiwgNzcsIDQwLCAxNywgMTAsIDI3LCAKKyAgICAyMzMsIDEwMywgMiwgMTEyLCAyLCAyMDIsIDI1MiwgNDMsIDUzLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgMTEyLCAyLCAKKyAgICAyMDIsIDI1MiwgNDMsIDQwLCAxNywgMTAsIDI3LCAyMzMsIDEwMywgMiwgMTEyLCA1MywgMTcsIDEwLCAyNywgMjMzLCAxMDMsIAorICAgIDIsIDExMiwgNDAsIDE3LCAyMTAsIDg3LCAyMTEsIDI0NSwgMjI4LCA3MywgMjE5LCAxOCwgMTI2LCAyNDUsIDMxLCA3OCwgCisgICAgMTI2LCAyMjMsIDI1NCwgNzgsIDEyNiwgNTQsIDUwLCAxMjYsIDI0NywgMTMyLCA1MCwgMTI2LCAyMjUsIDE4MiwgNTAsIAorICAgIDEyNiwgMjU0LCAxMjYsIDEyNiwgMjU0LCA1NywgMTI2LCA0MywgMjI2LCAzLCAxMjYsIDQ0LCAyMjYsIDMsIDEyNiwgMjUzLCAKKyAgICAyMTYsIDEyNiwgOTYsIDUwLCAxMjYsIDI0OSwgMjE5LCAxMjYsIDI0MCwgMTY3LCAxMjYsIDI0MywgMjI5LCAyMTgsIDEyOSwgCisgICAgMTI2LCAyMTksIDQ2LCAxMjYsIDIxLCAyMTAsIDg2LCAxMjYsIDIxLCAxMTAsIDEyNiwgMjEsIDEwNSwgMTI2LCAyMSwgMTU4LCAKKyAgICAxMjYsIDIxLCAxNjEsIDEyNiwgMjEsIDE4OSwgMTI2LCAyMSwgMTk0LCAxMjYsIDIxLCAxOTgsIDEyNiwgMjEsIDE5NSwgCisgICAgMTI2LCAyMSwgMjAwLCAxMjYsIDI0OSwgMjI2LCAxMjYsIDIyMCwgMTUwLCAxMjYsIDIzMywgMTUsIDUwLCAxMjYsIDI0NSwgCisgICAgOTgsIDUwLCAxMjYsIDI0MiwgMTMwLCA1MCwgMTI2LCAyMjQsIDEzLCA3OCwgMTI2LCAyNDksIDIxNywgMjUzLCAyMDYsIAorICAgIDEyNiwgNywgNiwgMSwgNjEsIDEyNiwgNywgNiwgMSwgMjUzLCAxNTgsIDEyNiwgNywgNiwgMSwgMjUxLCA2NiwgMTI2LCA3LCAKKyAgICA2LCAxLCAyNDksIDYwLCAxMjYsIDcsIDYsIDEsIDc1LCAxMjYsIDcsIDYsIDEsIDI0NSwgNiwgMTI2LCA3LCA2LCAxLCAyNDMsIAorICAgIDIwMiwgMTI2LCA3LCA2LCAxLCAyNDIsIDYwLCAxMjYsIDcsIDYsIDEsIDczLCAxMjYsIDcsIDYsIDEsIDIzNSwgMTQ0LCAKKyAgICAxMjYsIDcsIDYsIDEsIDIzNSwgMjMsIDEyNiwgNywgNiwgMSwgMTU2LCAxMjYsIDcsIDYsIDEsIDE5MywgMTI2LCA3LCA2LCAKKyAgICAxLCAyMzAsIDI1LCAxMjYsIDcsIDYsIDEsIDc2LCAxMjYsIDcsIDYsIDEsIDIyNiwgMTA1LCAxMjYsIDcsIDYsIDEsIDIyNCwgCisgICAgOTYsIDEyNiwgNywgNiwgMSwgMTUzLCAxMjYsIDcsIDYsIDEsIDIyMiwgOTEsIDEyNiwgNywgNiwgMSwgMjE3LCAxNTIsIAorICAgIDEyNiwgNywgNiwgMSwgNzAsIDEyNiwgNywgNiwgMSwgMjE0LCAxMDUsIDEyNiwgNywgNiwgMSwgMjEyLCA5OCwgMTI2LCA3LCAKKyAgICA2LCAxLCAyMTEsIDE3OCwgMTI2LCA3LCA2LCAxLCAyMTEsIDExNywgMTI2LCA3LCA2LCAxLCAyMTAsIDE1OSwgMTI2LCA0MywgCisgICAgNDIsIDEyNywgMTI2LCAyMjMsIDUwLCAyMTksIDQ2LCAxMjYsIDQ0LCA0MiwgMTI3LCAxMjYsIDI1MCwgMzEsIDI1NSwgMTQsIAorICAgIDEyNiwgMTIxLCAyMzIsIDIxMywgMTI2LCAyNDIsIDEzNywgMjU1LCAxNCwgMTI2LCA3LCA0LCAxLCA2MSwgMTI2LCA3LCA0LCAKKyAgICAxLCAyNTMsIDE1OCwgMTI2LCA3LCA0LCAxLCAyNTEsIDY2LCAxMjYsIDcsIDQsIDEsIDI0OSwgNjAsIDEyNiwgNywgNCwgMSwgCisgICAgNzUsIDEyNiwgNywgNCwgMSwgMjQ1LCA2LCAxMjYsIDcsIDQsIDEsIDI0MywgMjAyLCAxMjYsIDcsIDQsIDEsIDI0MiwgNjAsIAorICAgIDEyNiwgNywgNCwgMSwgNzMsIDEyNiwgNywgNCwgMSwgMjM1LCAxNDQsIDEyNiwgNywgNCwgMSwgMjM1LCAyMywgMTI2LCA3LCAKKyAgICA0LCAxLCAxNTYsIDEyNiwgNywgNCwgMSwgMTkzLCAxMjYsIDcsIDQsIDEsIDIzMCwgMjUsIDEyNiwgNywgNCwgMSwgNzYsIAorICAgIDEyNiwgNywgNCwgMSwgMjI2LCAxMDUsIDEyNiwgNywgNCwgMSwgMjI0LCA5NiwgMTI2LCA3LCA0LCAxLCAxNTMsIDEyNiwgNywgCisgICAgNCwgMSwgMjIyLCA5MSwgMTI2LCA3LCA0LCAxLCAyMTcsIDE1MiwgMTI2LCA3LCA0LCAxLCA3MCwgMTI2LCA3LCA0LCAxLCAKKyAgICAyMTQsIDEwNSwgMTI2LCA3LCA0LCAxLCAyMTIsIDk4LCAxMjYsIDcsIDQsIDEsIDIxMSwgMTc4LCAxMjYsIDcsIDQsIDEsIAorICAgIDIxMSwgMTE3LCAxMjYsIDcsIDQsIDEsIDIxMCwgMTU5LCAxMjYsIDQzLCAyNDksIDk5LCAxMjcsIDEyNiwgNjcsIDIzMiwgCisgICAgMjEzLCAxMjYsIDQ0LCAyNDksIDk5LCAxMjcsIDEyNiwgMTgyLCAxMjYsIDQzLCA3MSwgMjI2LCAzLCAxMjYsIDQ0LCA3MSwgCisgICAgMjI2LCAzLCAxMDEsIDEwOSwgMjQzLCAyMjksIDIxOCwgMTI5LCAxMDEsIDQzLCAyNDksIDE2MSwgMTI3LCAxMDEsIDQ0LCAKKyAgICAyNDksIDE2MSwgMTI3LCAxMDEsIDEwOSwgMjQ5LCAyMTksIDEwMSwgNTYsIDIzMCwgMjI0LCAyNDcsIDEyMCwgMTAxLCA1NiwgCisgICAgMSwgMjExLCAyMjcsIDEwMSwgNTYsIDEsIDQsIDYxLCAxMDEsIDU2LCAxLCA0LCA3MywgMTAxLCA1NiwgMSwgNCwgNzAsIAorICAgIDEwMSwgNTYsIDEsIDQsIDc1LCAxMDEsIDU2LCAxLCA0LCA3NiwgMTAxLCA1NiwgMSwgNCwgMTkxLCAxMDEsIDU2LCAxLCA0LCAKKyAgICAyMTAsIDIxMiwgMTAxLCA1NiwgMSwgNCwgMjEwLCAyNDQsIDEwMSwgNTYsIDEsIDQsIDIxNSwgMTE4LCAxMDEsIDIzNCwgCisgICAgMjAxLCAyMjQsIDE3MywgMjE5LCAzMSwgNzgsIDEwMSwgNTYsIDEsIDYxLCAxMDEsIDU2LCAxLCA3MywgMTAxLCA1NiwgMSwgCisgICAgNzAsIDEwMSwgNTYsIDEsIDc1LCAxMDEsIDU2LCAxLCA3NiwgMTAxLCA1NiwgMSwgMTc2LCAxMDEsIDU2LCAxLCAyMzQsIDkyLCAKKyAgICAxMDEsIDU2LCAxLCAyMzMsIDIxNywgMTAxLCA1NiwgMSwgMjM0LCAxODIsIDEwMSwgNTYsIDEsIDIzNCwgMjgsIDEwMSwgNTYsIAorICAgIDEsIDIwNiwgMTAxLCA1NiwgMSwgMjE5LCAxOTEsIDEwMSwgNTYsIDEsIDIxOCwgODMsIDEwMSwgNTYsIDEsIDIyMSwgMTgxLCAKKyAgICAxMDEsIDU2LCAxLCAyMTksIDU4LCAxMDEsIDU2LCAxLCAyMTcsIDEwNSwgMTAxLCA1NiwgMSwgMjE2LCAxMTcsIDEwMSwgNTYsIAorICAgIDEsIDIxNSwgMTE4LCAxMDEsIDU2LCAxLCAyMTcsIDIyLCAxMDEsIDU2LCAxLCAxMTEsIDEwMSwgNTYsIDEsIDE5NywgMTAxLCAKKyAgICA1NiwgMSwgMjI4LCAyMzMsIDEwMSwgNTYsIDEsIDIyNywgMjM3LCAxMDEsIDU2LCAxLCAyMjksIDEwNywgMTAxLCA1NiwgMSwgCisgICAgMjI4LCA3NCwgMTAxLCA1NiwgMSwgMTYyLCAxMDEsIDU2LCAxLCAyNDEsIDE4MCwgMTAxLCA1NiwgMSwgMjQwLCAyMjIsIAorICAgIDEwMSwgNTYsIDEsIDI0MSwgMjM4LCAxMDEsIDU2LCAxLCAyNDEsIDY4LCAxMDEsIDU2LCAxLCAxODQsIDEwMSwgNTYsIDEsIAorICAgIDIzMCwgMjMwLCAxMDEsIDU2LCAxLCAyMzAsIDEwMiwgMTAxLCA1NiwgMSwgMjMxLCA5MSwgMTAxLCA1NiwgMSwgMjMwLCAKKyAgICAxNjEsIDEwMSwgNTYsIDEsIDE5MSwgMTAxLCA1NiwgMSwgMjEwLCAyMTIsIDEwMSwgNTYsIDEsIDIxMCwgMjQ0LCAxMDEsIAorICAgIDU2LCAxLCAyMDUsIDEwMSwgNTYsIDEsIDIyMywgMzUsIDEwMSwgNTYsIDEsIDIyMiwgMTQwLCAxMDEsIDU2LCAxLCAyMjMsIAorICAgIDEyOCwgMTAxLCA1NiwgMSwgMjIyLCAyMTEsIDEwMSwgNTYsIDEsIDIxMiwgNjUsIDEwMSwgNTYsIDEsIDIzMCwgMjUsIDEwMSwgCisgICAgNTYsIDIxMywgMTM1LCAyMTksIDMxLCA3OCwgMTAxLCA1NiwgMjIwLCAxNTUsIDIxOSwgMzEsIDc4LCAxMDEsIDI0LCAyNDQsIAorICAgIDEwMywgMTAxLCAyNCwgMSwgMjM0LCA1OCwgMTAxLCAyNCwgMSwgMjE4LCAyMTUsIDEwMSwgMjQsIDEsIDIzNCwgNTEsIDEwMSwgCisgICAgMjQsIDEsIDIyOCwgMjI2LCAxMDEsIDI0LCAxLCAyMjgsIDIyNCwgMTAxLCAyNCwgMSwgMjI4LCAyMjMsIDEwMSwgMjQsIDEsIAorICAgIDIxNiwgMTAxLCAxMDEsIDI0LCAxLCAyMTgsIDIwNCwgMTAxLCAyNCwgMSwgMjIzLCAyNiwgMTAxLCAyNCwgMSwgMjIzLCAyMSwgCisgICAgMTAxLCAyNCwgMSwgMjIzLCAxOCwgMTAxLCAyNCwgMSwgMjIzLCAxMSwgMTAxLCAyNCwgMSwgMjIzLCA2LCAxMDEsIDI0LCAxLCAKKyAgICAyMjMsIDEsIDEwMSwgMjQsIDEsIDIyMywgMTIsIDEwMSwgMjQsIDEsIDIyMywgMjQsIDEwMSwgMjQsIDEsIDIzMCwgMjE3LCAKKyAgICAxMDEsIDI0LCAxLCAyMjUsIDk1LCAxMDEsIDI0LCAxLCAyMTgsIDIxMiwgMTAxLCAyNCwgMSwgMjI1LCA4NCwgMTAxLCAyNCwgCisgICAgMSwgMjE5LCAxNDgsIDEwMSwgMjQsIDEsIDIxOCwgMjA5LCAxMDEsIDI0LCAxLCAyMzYsIDU2LCAxMDEsIDI0LCAxLCAyNTAsIAorICAgIDQ2LCAxMDEsIDI0LCAxLCAyMTgsIDIxOSwgMTAxLCAyNCwgMSwgMjUwLCAxMDYsIDEwMSwgMjQsIDEsIDIzNCwgMTEwLCAKKyAgICAxMDEsIDI0LCAxLCAyMTYsIDE3MywgMTAxLCAyNCwgMSwgMjI1LCAxMzEsIDEwMSwgMjQsIDEsIDI0MSwgMTcyLCAxMDEsIAorICAgIDI0LCAxLCA2MSwgMTAxLCAyNCwgMSwgMjU0LCAyNDMsIDEwMSwgMjQsIDEsIDE5MSwgMTAxLCAyNCwgMSwgMjExLCA5MiwgCisgICAgMTAxLCAyNCwgMSwgMjQ1LCAxMTcsIDEwMSwgMjQsIDEsIDc1LCAxMDEsIDI0LCAxLCAyMTEsIDM2LCAxMDEsIDI0LCAxLCAKKyAgICAyMTEsIDQ3LCAxMDEsIDI0LCAxLCA3NiwgMTAxLCAyNCwgMSwgMjEyLCA2NSwgMTAxLCAyNCwgMSwgMjEyLCA2MiwgMTAxLCAKKyAgICAyNCwgMSwgMjI2LCAyMzQsIDEwMSwgMjQsIDEsIDIxMCwgMjQ0LCAxMDEsIDI0LCAxLCA3MCwgMTAxLCAyNCwgMSwgMjEyLCAKKyAgICAxMSwgMTAxLCAyNCwgMSwgMjEyLCAyMiwgMTAxLCAyNCwgMSwgMjExLCAyNTAsIDEwMSwgMjQsIDEsIDIxMCwgMjEyLCAxMDEsIAorICAgIDI0LCAxLCAyNDUsIDU1LCAxMDEsIDI0LCAxLCAyMTEsIDgsIDEwMSwgMjQsIDEsIDczLCAxMjYsIDI1MCwgMTc2LCA1MCwgCisgICAgMTI2LCAyMjQsIDIyOCwgNTAsIDEyNiwgMjI4LCA1MiwgNTAsIDEyNiwgMjMxLCAyMzIsIDEyNiwgMjUxLCAxMzUsIDEzMCwgCisgICAgMTI2LCAyMTEsIDQwLCA1MCwgMTI2LCAyMTEsIDIxNywgNTAsIDEwMSwgMjQ0LCAxOCwgMTkyLCAyMTMsIDIzOSwgMTAxLCAKKyAgICAxNDAsIDc0LCAxMDEsIDIxNCwgMTUzLCA3NCwgMTAxLCA5NywgNzQsIDEwMSwgMjQ2LCAxMDQsIDc0LCAxMDEsIDg1LCAyMTgsIAorICAgIDIzNCwgMTAxLCA3MSwgMjUwLCAzNSwgMjM1LCAyMDQsIDI1NCwgOTksIDI1NCwgMTIwLCAyMzUsIDIwNCwgMjU0LCA5OSwgCisgICAgMjIwLCAxMzcsIDIzNSwgMjA0LCAyNTQsIDk5LCAyMTYsIDIzNiwgMjI2LCAyNDksIDIyMywgNzIsIDI1MCwgMTQyLCAyMjMsIAorICAgIDcyLCAyNTAsIDE0MiwgNjIsIDU3LCAzLCAyNTMsIDE0MiwgNjEsIDYyLCA1NywgMywgMjUzLCAxMTEsIDc1LCA2MiwgNTcsIAorICAgIDMsIDI1MywgMTIwLCA3MywgNjIsIDU3LCAzLCAyNTMsIDg4LCA3NiwgNjIsIDU3LCAzLCAyNTMsIDEzOCwgNzAsIDYyLCA1NywgCisgICAgMywgMjUzLCAxNTcsIDI0OCwgMjIxLCA2MiwgNTcsIDMsIDI1MywgMTA0LCAyNDgsIDkwLCA2MiwgNTcsIDMsIDI1MywgMTQ0LCAKKyAgICAyNDgsIDMsIDYyLCA1NywgMywgMjUzLCAxMzQsIDI0NywgMTQ1LCA2MiwgNTcsIDMsIDI1MywgOTgsIDI0NiwgNzgsIDYyLCAKKyAgICA1NywgMywgMjUzLCA5MiwgMjM1LCAxNDEsIDYyLCA1NywgMywgMjUzLCAxMDMsIDIzNSwgMTI2LCA2MiwgNTcsIDMsIDI1MywgCisgICAgMTEzLCAyMzUsIDY4LCA2MiwgNTcsIDMsIDI1MywgODQsIDIzNSwgNTEsIDYyLCA1NywgMywgMjUzLCA3MiwgMTc2LCA2MiwgCisgICAgNTcsIDMsIDI1MywgMTA1LCAyMzQsIDE4MiwgNjIsIDU3LCAzLCAyNTMsIDgyLCAyMzQsIDkyLCA2MiwgNTcsIDMsIDI1MywgCisgICAgNzksIDIzNCwgMjgsIDYyLCA1NywgMywgMjUzLCA2OCwgMjMzLCAyMTcsIDYyLCA1NywgMywgMjUzLCA2OSwgMTg0LCA2MiwgCisgICAgNTcsIDMsIDI1MywgMTM1LCAyMzEsIDkxLCA2MiwgNTcsIDMsIDI1MywgNzYsIDIzMCwgMjMwLCA2MiwgNTcsIDMsIDI1MywgCisgICAgMTMzLCAyMzAsIDE2MSwgNjIsIDU3LCAzLCAyNTMsIDEyNSwgMjMwLCAxMDIsIDYyLCA1NywgMywgMjUzLCAxNDYsIDE5NywgCisgICAgNjIsIDU3LCAzLCAyNTMsIDEyNCwgMjI5LCAxMDcsIDYyLCA1NywgMywgMjUzLCAxMTgsIDIyOCwgMjMzLCA2MiwgNTcsIDMsIAorICAgIDI1MywgOTcsIDIyOCwgNzQsIDYyLCA1NywgMywgMjUzLCA5NCwgMjI3LCAyMzcsIDYyLCA1NywgMywgMjUzLCAxNTMsIDE5MCwgCisgICAgNjIsIDU3LCAzLCAyNTMsIDc3LCAyMjUsIDIyMSwgNjIsIDU3LCAzLCAyNTMsIDExMCwgMjI1LCAxMDgsIDYyLCA1NywgMywgCisgICAgMjUzLCAxMzcsIDIyNSwgMTYsIDYyLCA1NywgMywgMjUzLCA5OSwgMjI0LCAxNTAsIDYyLCA1NywgMywgMjUzLCAxMzIsIAorICAgIDIyNCwgODgsIDYyLCA1NywgMywgMjUzLCA3MSwgMjI0LCA2OSwgNjIsIDU3LCAzLCAyNTMsIDEyNywgMjI0LCA1MywgNjIsIAorICAgIDU3LCAzLCAyNTMsIDExNiwgMjI0LCA0MiwgNjIsIDU3LCAzLCAyNTMsIDg5LCAyMDUsIDYyLCA1NywgMywgMjUzLCAxMjEsIAorICAgIDIyMywgMTI4LCA2MiwgNTcsIDMsIDI1MywgOTYsIDIyMywgMzUsIDYyLCA1NywgMywgMjUzLCAxNTUsIDIyMiwgMjExLCA2MiwgCisgICAgNTcsIDMsIDI1MywgMTIyLCAyMjIsIDE0MCwgNjIsIDU3LCAzLCAyNTMsIDExNywgMjA2LCA2MiwgNTcsIDMsIDI1MywgMTQwLCAKKyAgICAyMjEsIDE4MSwgNjIsIDU3LCAzLCAyNTMsIDEwOCwgMjE5LCAxOTEsIDYyLCA1NywgMywgMjUzLCAxMzYsIDIxOSwgNTgsIAorICAgIDYyLCA1NywgMywgMjUzLCA5MSwgMjE4LCA4MywgNjIsIDU3LCAzLCAyNTMsIDkwLCAyMTcsIDEwNSwgNjIsIDU3LCAzLCAKKyAgICAyNTMsIDE1MSwgMjE3LCAyMiwgNjIsIDU3LCAzLCAyNTMsIDExMiwgMjE2LCAxMTcsIDYyLCA1NywgMywgMjUzLCAxNDksIAorICAgIDExMSwgNjIsIDU3LCAzLCAyNTMsIDgwLCAyMTUsIDExOCwgNjIsIDU3LCAzLCAyNTMsIDk1LCAyMTIsIDY1LCA2MiwgNTcsIAorICAgIDMsIDI1MywgNzQsIDIxMiwgMjIsIDYyLCA1NywgMywgMjUzLCAxMDksIDIxMSwgMjUwLCA2MiwgNTcsIDMsIDI1MywgMTA3LCAKKyAgICAyMTEsIDIyNywgNjIsIDU3LCAzLCAyNTMsIDEzMSwgMjEwLCAxMTYsIDYyLCA1NywgMywgMjUzLCA3NSwgMjEwLCA5NCwgNjIsIAorICAgIDU3LCAzLCAyNTMsIDEyOCwgMjEwLCAyMywgNjIsIDU3LCAzLCAyNTMsIDEyMywgMjU1LCA3NSwgNjIsIDU3LCAzLCAyNTMsIAorICAgIDEwNiwgMjU1LCA3NCwgNjIsIDU3LCAzLCAyNTMsIDY1LCAyNTMsIDE5MiwgNjIsIDU3LCAzLCAyNTMsIDc4LCAyNDYsIDQ2LCAKKyAgICA2MiwgNTcsIDMsIDI1MywgNjEsIDI0NiwgNDUsIDYyLCA1NywgMywgMjUzLCAxMDEsIDIyNywgMTc0LCA2MiwgNTcsIDMsIAorICAgIDI1MywgMTE5LCAyMjQsIDE0OCwgNjIsIDU3LCAzLCAyNTMsIDg3LCAyMjQsIDE1MiwgNjIsIDU3LCAzLCAyNTMsIDczLCAKKyAgICAyMjMsIDE4NiwgNjIsIDU3LCAzLCAyNTMsIDExNSwgMjIzLCAxODUsIDYyLCA1NywgMywgMjUzLCA4MSwgMjIyLCAyMTAsIAorICAgIDYyLCA1NywgMywgMjUzLCA4MywgMjE3LCAxMDIsIDYyLCA1NywgMywgMjUzLCA2MywgMjE1LCA3OCwgNjIsIDU3LCAzLCAKKyAgICAyNTMsIDYwLCAxMDUsIDYyLCA1NywgMTYsIDI1MywgMTMwLCA2MiwgNTcsIDE2LCAyNTMsIDEyOSwgNjIsIDU3LCAxNiwgCisgICAgMjUzLCAxMjYsIDYyLCA1NywgMTYsIDI1MywgMTE0LCA2MiwgNTcsIDE2LCAyNTMsIDEwMiwgNjIsIDU3LCAxNiwgMjUzLCAKKyAgICAxMDAsIDYyLCA1NywgMTYsIDI1MywgOTMsIDYyLCA1NywgMTYsIDI1MywgODYsIDYyLCA1NywgMTYsIDI1MywgODUsIDYyLCAKKyAgICA1NywgMTYsIDI1MywgNzAsIDYyLCA1NywgMTYsIDI1MywgNjcsIDYyLCA1NywgMTYsIDI1MywgNjYsIDYyLCA1NywgMTYsIAorICAgIDI1MywgNjQsIDYyLCA1NywgMTYsIDI1MywgNjIsIDYyLCA1NywgMTA2LCAyNTMsIDU5LCAyMzEsIDE4NSwgNjIsIDU3LCAKKyAgICAxMDYsIDI1MywgNTgsIDIxMSwgMjIxLCA2MiwgNTcsIDEwNiwgMjUzLCA1NywgMjQ4LCA3NCwgNjIsIDU3LCAxMDYsIDI1MywgCisgICAgNTYsIDI0NSwgOTUsIDYyLCA1NywgMTA2LCAyNTMsIDU1LCAyMzEsIDE1OSwgNjIsIDU3LCAxMDYsIDI1MywgNTQsIDIxOCwgCisgICAgMTYyLCA2MiwgNTcsIDEwNiwgMjUzLCA1MywgMjQ1LCAzNywgNjIsIDU3LCAxMDYsIDI1MywgNTIsIDIyMywgMTUzLCA2MiwgCisgICAgNTcsIDEwNiwgMjUzLCA1MSwgMjIwLCA2MiwgNjIsIDU3LCAxMDYsIDI1MywgNTAsIDI0MSwgMjM3LCA2MiwgNTcsIDEwNiwgCisgICAgMjUzLCA0OSwgMjE5LCAyNSwgNjIsIDU3LCAxMDYsIDI1MywgNDgsIDI1MSwgMjAzLCA2MiwgNTcsIDEwNiwgMjUzLCA0NywgCisgICAgMjQ5LCAxNDUsIDYyLCA1NywgMTA2LCAyNTMsIDQ2LCAyNTEsIDExNSwgNjIsIDU3LCAxMDYsIDI1MywgNDUsIDIxMiwgMiwgCisgICAgNjIsIDU3LCAxMDYsIDI1MywgNDQsIDI1MiwgMTM2LCA2MiwgNTcsIDEwNiwgMjUzLCA0MywgMjI2LCAyMDUsIDYyLCA1NywgCisgICAgMTA2LCAyNTMsIDQyLCAyMTgsIDI1NCwgNjIsIDU3LCAxMDYsIDI1MywgNDEsIDI0OSwgNjgsIDYyLCA1NywgMjMwLCAxNDIsIAorICAgIDI1MywgNDAsIDIzNCwgMjI0LCA2MiwgNTcsIDIzMCwgMTQyLCAyNTMsIDM5LCAyMzQsIDIzMiwgNjIsIDU3LCAxMDYsIDI1MywgCisgICAgMzgsIDIyNiwgMjE4LCA2MiwgNTcsIDEwNiwgMjUzLCAzNywgMjExLCAyMzYsIDYyLCA1NywgMTA2LCAyNTMsIDM2LCA2MiwgCisgICAgNTcsIDIzMCwgMTQyLCAyNTMsIDM1LCAyNTQsIDE3LCA2MiwgNTcsIDIzMCwgMTQyLCAyNTMsIDM0LCAyMzEsIDUyLCA2MiwgCisgICAgNTcsIDEwNiwgMjUzLCAzMywgMjUxLCAxMzQsIDYyLCA1NywgMTA2LCAyNTMsIDMyLCAyNDIsIDE2NiwgNjIsIDU3LCAxMDYsIAorICAgIDI1MywgMzEsIDYyLCA1NywgMTA2LCAyNTMsIDMwLCAyMTEsIDIxMiwgNjIsIDU3LCAxMDYsIDI1MywgMjksIDYyLCA1NywgCisgICAgMTA2LCAyNTMsIDI4LCA2MiwgNTcsIDEwNiwgMjUzLCAyNywgMjQwLCAyNDgsIDYyLCA1NywgMTA2LCAyNTMsIDI2LCA2MiwgCisgICAgNTcsIDEwNiwgMjUzLCAyNSwgNjIsIDU3LCAxMDYsIDI1MywgMjQsIDYyLCA1NywgMjMwLCAxNDIsIDI1MywgMjIsIDIxNSwgCisgICAgOTIsIDYyLCA1NywgMTA2LCAyNTMsIDIxLCA2MiwgNTcsIDEwNiwgMjUzLCAyMCwgNjIsIDU3LCAxMDYsIDI1MywgMTksIAorICAgIDI0OSwgMjUwLCA2MiwgNTcsIDEwNiwgMjUzLCAxOCwgNjIsIDU3LCAxMDYsIDI1MywgMTcsIDYyLCA1NywgMTA2LCAyNTMsIAorICAgIDE2LCAyNDMsIDkzLCA2MiwgNTcsIDEwNiwgMjUzLCAxNSwgMjU0LCA0LCA2MiwgNTcsIDEwNiwgMjUzLCAxNCwgNjIsIDU3LCAKKyAgICAxMDYsIDI1MywgMTMsIDYyLCA1NywgMTA2LCAyNTMsIDEyLCA2MiwgNTcsIDEwNiwgMjUzLCAxMSwgNjIsIDU3LCAxMDYsIAorICAgIDI1MywgMTAsIDYyLCA1NywgMTA2LCAyNTMsIDksIDYyLCA1NywgMTA2LCAyNTMsIDgsIDYyLCA1NywgMTA2LCAyNTMsIDcsIAorICAgIDYyLCA1NywgMTA2LCAyNTMsIDYsIDYyLCA1NywgMTA2LCAyNTMsIDUsIDIzMCwgMTM0LCA2MiwgNTcsIDEwNiwgMjUzLCA0LCAKKyAgICA2MiwgNTcsIDEwNiwgMjUzLCAzLCAyMTUsIDIzNSwgNjIsIDU3LCAxMDYsIDI1MywgMiwgNjIsIDU3LCAxMDYsIDI1MywgMSwgCisgICAgNjIsIDU3LCAxMDYsIDI1MywgMCwgNjIsIDU3LCAxMDYsIDI1MiwgMjU1LCA2MiwgNTcsIDEwNiwgMjUyLCAyNTQsIDYyLCAKKyAgICA1NywgMTA2LCAyNTIsIDI1MywgNjIsIDU3LCAxMDYsIDI1MiwgMjUyLCA2MiwgNTcsIDEwNiwgMjUyLCAyNTEsIDYyLCA1NywgCisgICAgMTA2LCAyNTIsIDI1MCwgNjIsIDU3LCAxMDYsIDI1MiwgMjQ5LCA2MiwgNTcsIDEwNiwgMjUyLCAyNDgsIDYyLCA1NywgMTA2LCAKKyAgICAyNTIsIDI0NywgMjQxLCAyMTEsIDYyLCA1NywgMTA2LCAyNTIsIDIyNiwgMjQ0LCAyOCwgNjIsIDU3LCAxMDYsIDI1MiwgCisgICAgMjIzLCAyNTIsIDExNiwgNjIsIDU3LCAxMDYsIDI1MiwgMjE4LCAyMTksIDUsIDYyLCA1NywgMTA2LCAyNTIsIDIxNywgNzQsIAorICAgIDYyLCA1NywgMTA2LCAyNTIsIDIxNiwgNjIsIDU3LCAxMDYsIDI1MiwgMjE1LCAyMTcsIDIzNiwgNjIsIDU3LCAxMDYsIDI1MiwgCisgICAgMjE0LCA2MiwgNTcsIDEwNiwgMjUyLCAyMTMsIDYyLCA1NywgMTA2LCAyNTIsIDIxMiwgMjExLCAyNTQsIDI1MCwgMTM5LCAKKyAgICA2MiwgNTcsIDEwNiwgMjUyLCAyMTEsIDI1MCwgMTM5LCA2MiwgNTcsIDEwNiwgMjUyLCAyMTAsIDI1MCwgMTQwLCAyNDMsIAorICAgIDI1NSwgNjIsIDU3LCAxMDYsIDI1MiwgMjA5LCAyMTIsIDAsIDYyLCA1NywgMTA2LCAyNTIsIDIwOCwgNjIsIDU3LCAxMDYsIAorICAgIDI1MiwgMjA3LCA2MiwgNTcsIDIzMCwgMTQyLCAyNTIsIDIwNiwgMjQ3LCAxOTgsIDYyLCA1NywgMTA2LCAyNTIsIDIwNSwgCisgICAgNjIsIDU3LCAxMDYsIDI1MiwgMjA0LCA2MiwgNTcsIDEwNiwgMjUyLCAyMDIsIDYyLCA1NywgMTA2LCAyNTIsIDIwMSwgNjIsIAorICAgIDU3LCAxMDYsIDI1MiwgMjAwLCA2MiwgNTcsIDEwNiwgMjUyLCAxOTksIDI0OCwgMTU5LCA2MiwgNTcsIDEwNiwgMjUyLCAKKyAgICAxOTgsIDYyLCA1NywgMTA2LCAyNTIsIDE5NywgNjIsIDU3LCAxMDYsIDI1MiwgMTk2LCA2MiwgNTcsIDEwNiwgMjUyLCAxOTUsIAorICAgIDYyLCA1NywgMTA2LCAyNTIsIDE5NCwgNjIsIDU3LCAxMDYsIDIxMywgMTg2LCAyNTMsIDIzLCA2MiwgNTcsIDEwNiwgMjEzLCAKKyAgICAxODYsIDI1MiwgMjQ2LCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjQ1LCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIAorICAgIDI1MiwgMjQ0LCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjQzLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgCisgICAgMjQyLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjQxLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjQwLCAKKyAgICA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjM5LCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjM4LCA2MiwgNTcsIAorICAgIDEwNiwgMjEzLCAxODYsIDI1MiwgMjM3LCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjM2LCA2MiwgNTcsIDEwNiwgCisgICAgMjEzLCAxODYsIDI1MiwgMjM1LCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjM0LCA2MiwgNTcsIDEwNiwgMjEzLCAKKyAgICAxODYsIDI1MiwgMjMzLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjMyLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIAorICAgIDI1MiwgMjMxLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjMwLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgCisgICAgMjI5LCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjI4LCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjI3LCAKKyAgICA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjI1LCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjI0LCA2MiwgNTcsIAorICAgIDEwNiwgMjEzLCAxODYsIDI1MiwgMjIyLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjIxLCA2MiwgNTcsIDEwNiwgCisgICAgMjEzLCAxODYsIDI1MiwgMjIwLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMjE5LCA2MiwgNTcsIDEwNiwgMjEzLCAKKyAgICAxODYsIDI1MiwgMjAzLCA2MiwgNTcsIDEwNiwgMjEzLCAxODYsIDI1MiwgMTkzLCAyNTQsIDIzNiwgMjExLCAyMDksIDIyMCwgCisgICAgMTM4LCAyMzIsIDIxMywgMjU0LCAyMzYsIDIxMSwgMjA5LCAyMjAsIDEzOCwgMjQ3LCAxMjAsIDI1NCwgMjM2LCAyNTAsIAorICAgIDEzMCwgNzgsIDI1NCwgMjM2LCA1NCwgMTEwLCAyNTQsIDIzNiwgNTQsIDEwNSwgMjU0LCAyMzYsIDU0LCAxNTgsIDI1NCwgCisgICAgMjM2LCA1NCwgMTYxLCAyNTQsIDIzNiwgNTQsIDE4OSwgMjU0LCAyMzYsIDU0LCAxOTQsIDI1NCwgMjM2LCA1NCwgMTk4LCAKKyAgICAyNTQsIDIzNiwgNTQsIDE5NSwgMjU0LCAyMzYsIDU0LCAyMDAsIDI1NCwgMjM2LCA1NCwgMjE2LCAyNDcsIDI1NCwgMjM2LCAKKyAgICA1NCwgMjE1LCA3MywgMjU0LCAyMzYsIDU0LCAyMTYsIDE2MiwgMjU0LCAyMzYsIDU0LCAyNDQsIDE1LCAyNTQsIDIzNiwgNTQsIAorICAgIDI0NCwgMTE0LCAyNTQsIDIzNiwgNTQsIDIxOSwgMTExLCAyNTQsIDIzNiwgNTQsIDIyMCwgMTE2LCAyNTQsIDIzNiwgNTQsIAorICAgIDI0NSwgMTg0LCAyNTQsIDIzNiwgNTQsIDIyOCwgMTk1LCAyNTQsIDIzNiwgNTQsIDEyMywgMjQwLCAyMTAsIDI1NCwgMjM2LCAKKyAgICA1NCwgMTEzLCAyNDAsIDIxMCwgMjU0LCAyMzYsIDU0LCAxMzQsIDI0MCwgMjEwLCAyNTQsIDIzNiwgNTQsIDI0NCwgMTEsIAorICAgIDI0MCwgMjEwLCAyNTQsIDIzNiwgNTQsIDI0NCwgODEsIDI0MCwgMjEwLCAyNTQsIDIzNiwgNTQsIDIxOSwgMTI1LCAyNDAsIAorICAgIDIxMCwgMjU0LCAyMzYsIDU0LCAyMjAsIDEyMiwgMjQwLCAyMTAsIDI1NCwgMjM2LCA1NCwgMjQ1LCAxOTMsIDI0MCwgMjEwLCAKKyAgICAyNTQsIDIzNiwgNTQsIDIyOCwgMjAwLCAyNDAsIDIxMCwgMjU0LCAyMzYsIDU0LCAxMjMsIDIxNiwgMTQ3LCAyNTQsIDIzNiwgCisgICAgNTQsIDExMywgMjE2LCAxNDcsIDI1NCwgMjM2LCA1NCwgMTM0LCAyMTYsIDE0NywgMjU0LCAyMzYsIDU0LCAyNDQsIDExLCAKKyAgICAyMTYsIDE0NywgMjU0LCAyMzYsIDU0LCAyNDQsIDgxLCAyMTYsIDE0NywgMjU0LCAyMzYsIDU0LCAyMTksIDEyNSwgMjE2LCAKKyAgICAxNDcsIDI1NCwgMjM2LCA1NCwgMjIwLCAxMjIsIDIxNiwgMTQ3LCAyNTQsIDIzNiwgNTQsIDI0NSwgMTkzLCAyMTYsIDE0NywgCisgICAgMjU0LCAyMzYsIDU0LCAyMjgsIDIwMCwgMjE2LCAxNDcsIDI1NCwgMjM2LCA1NCwgMjE2LCAyNDgsIDIxNiwgMTQ3LCAyNTQsIAorICAgIDIzNiwgNTQsIDIxNSwgNzQsIDIxNiwgMTQ3LCAyNTQsIDIzNiwgNTQsIDIxNiwgMTYzLCAyMTYsIDE0NywgMjU0LCAyMzYsIAorICAgIDU0LCAyNDQsIDE2LCAyMTYsIDE0NywgMjU0LCAyMzYsIDU0LCAyNDQsIDExNSwgMjE2LCAxNDcsIDI1NCwgMjM2LCA1NCwgCisgICAgMjE5LCAxMTIsIDIxNiwgMTQ3LCAyNTQsIDIzNiwgNTQsIDIyMCwgMTE3LCAyMTYsIDE0NywgMjU0LCAyMzYsIDU0LCAyNDUsIAorICAgIDE4NSwgMjE2LCAxNDcsIDI1NCwgMjM2LCA1NCwgMjI4LCAxOTYsIDIxNiwgMTQ3LCAyNTQsIDIzNiwgMjEyLCAxNCwgMjUyLCAKKyAgICAxMjgsIDIxNCwgMTczLCAyNTQsIDIzNiwgMjEyLCAxNCwgMjQ0LCA5MiwgMjE4LCA1OSwgMjU0LCAyMzYsIDIxMiwgMTQsIAorICAgIDIyMSwgMTc2LCAyMTgsIDU5LCAyNTQsIDIzNiwgMjEyLCAxNCwgMjE2LCAxNjksIDIxOCwgNTksIDI1NCwgMjM2LCAyMTIsIAorICAgIDE0LCAyNDQsIDQsIDIxOCwgNTksIDI1NCwgMjM2LCAyNDYsIDgxLCAyMzEsIDkwLCAyNDQsIDkyLCAyMTgsIDU5LCAyNTQsIAorICAgIDIzNiwgMjMyLCAxOTksIDIzMSwgOTAsIDI0NCwgOTIsIDIxOCwgNTksIDI1NCwgMjM2LCAyMzEsIDkwLCAyMjEsIDE3NiwgCisgICAgMjE4LCA1OSwgMjU0LCAyMzYsIDIzMSwgOTAsIDIxNiwgMTY5LCAyMTgsIDU5LCAyNiwgMjU1LCA2LCAyNTMsIDE5NCwgMTIzLCAKKyAgICAyMjQsIDIxLCAyNiwgMjU1LCA2LCAyNTMsIDE5NCwgMTIzLCAyNDIsIDI3LCAyNiwgMjU1LCA2LCAyNTMsIDE5NCwgMTIzLCAKKyAgICAyNDYsIDEwMCwgMjYsIDI1NSwgNiwgMjUzLCAxOTQsIDE4OSwgMjYsIDI1NSwgNiwgMjUzLCAxOTQsIDI0NCwgMTE0LCAyNiwgCisgICAgMjU1LCA2LCAyNTMsIDE5NCwgMjQ0LCA4MSwgMjQwLCAyMTAsIDI2LCAyNTUsIDYsIDI1MywgMTk0LCAyNDQsIDgxLCAyMTYsIAorICAgIDE0NywgMjYsIDI1NSwgNiwgMjUzLCAxOTQsIDI0NCwgMTE1LCAyMTYsIDE0NywgMjYsIDI1NSwgNiwgMjUzLCAxOTQsIDI0NCwgCisgICAgODEsIDIxNywgNjcsIDI2LCAyNTUsIDYsIDI1MywgMTk0LCAyMTYsIDI0OCwgMjE3LCA2NywgMjYsIDI1NSwgNiwgMjUzLCAKKyAgICAxOTQsIDI0NCwgMTE1LCAyMTcsIDY3LCAyNiwgMjU1LCA2LCAyNTMsIDE5NCwgMTIzLCAyNDAsIDIxMSwgMjE3LCA2NywgMjYsIAorICAgIDI1NSwgNiwgMjUzLCAxOTQsIDI0NCwgODEsIDI0MCwgMjExLCAyMTcsIDY3LCAyNiwgMjU1LCA2LCAyNTMsIDE5NCwgMTIzLCAKKyAgICAyMTYsIDE0OCwgMjE3LCA2NywgMjYsIDI1NSwgNiwgMjUzLCAxOTQsIDI0NCwgODEsIDIxNiwgMTQ4LCAyMTcsIDY3LCAyNiwgCisgICAgMjU1LCA2LCAyNTMsIDE5NCwgMjQ0LCA4MSwgMjE4LCAxNTAsIDI2LCAyNTUsIDYsIDI1MywgMTk0LCAyMTYsIDI0OCwgMjE4LCAKKyAgICAxNTAsIDI2LCAyNTUsIDYsIDI1MywgMTk0LCAyNDQsIDExNSwgMjE4LCAxNTAsIDI2LCAyNTUsIDYsIDI1MywgMTk0LCAxMjMsIAorICAgIDI0MCwgMjExLCAyMTgsIDE1MCwgMjYsIDI1NSwgNiwgMjUzLCAxOTQsIDI0NCwgODEsIDI0MCwgMjExLCAyMTgsIDE1MCwgCisgICAgMjYsIDI1NSwgNiwgMjUzLCAxOTQsIDEyMywgMjE2LCAxNDgsIDIxOCwgMTUwLCAyNiwgMjU1LCA2LCAyNTMsIDE5NCwgMjE2LCAKKyAgICAyNDgsIDIxNiwgMTQ4LCAyMTgsIDE1MCwgMjYsIDI1NSwgNiwgMjUzLCAxOTQsIDI0NCwgMTE1LCAyMTYsIDE0OCwgMjE4LCAKKyAgICAxNTAsIDI2LCAyNTUsIDYsIDI1MywgMTk0LCAyMTYsIDI0OCwgMjMwLCAxNjQsIDI2LCAyNTUsIDYsIDI0MSwgMjA1LCAxMjMsIAorICAgIDIyNSwgMzEsIDI2LCAyNTUsIDYsIDIxNiwgMTgxLCAxMTAsIDI2LCAyNTUsIDYsIDI0MSwgMjAxLCAxMTAsIDI2LCAyNTUsIAorICAgIDYsIDI0NSwgMTA0LCAxMDUsIDI2LCAyNTUsIDYsIDIxNiwgMTgxLCAxMDUsIDI2LCAyNTUsIDYsIDI0OSwgNjUsIDExMywgCisgICAgMjQ2LCA5OSwgMjYsIDI1NSwgNiwgMjQ1LCAxMDQsIDExMywgMjQ2LCA5OSwgMjYsIDI1NSwgNiwgMjE1LCAyMDMsIDE4OSwgCisgICAgMjYsIDI1NSwgNiwgMjE1LCAyMDMsIDIxNiwgMjQ3LCAyNiwgMjU1LCA2LCAyMTUsIDIwMywgMjE2LCAyNDgsIDI1NCwgMTQxLCAKKyAgICAxNywgMjYsIDI1NSwgNiwgMjQxLCAyMDEsIDIxNiwgMjQ3LCAyNiwgMjU1LCA2LCAyMzEsIDQxLCAyMTYsIDI0NywgMjYsIAorICAgIDI1NSwgNiwgMjE2LCAxODEsIDIxNiwgMjQ3LCAyNiwgMjU1LCA2LCAyMTYsIDE4MSwgMjE2LCAxNjIsIDI2LCAyNTUsIDYsIAorICAgIDIxNSwgMjAzLCAyNDQsIDExNCwgMjYsIDI1NSwgNiwgMjE1LCAyMDMsIDI0NCwgMTE1LCAyNTQsIDE0MSwgMTcsIDI2LCAKKyAgICAyNTUsIDYsIDI0MSwgMjAxLCAyNDQsIDExNCwgMjYsIDI1NSwgNiwgMjE2LCAxODEsIDI0NCwgMTE0LCAyNiwgMjU1LCA2LCAKKyAgICAyMTYsIDE4MSwgMTIzLCAyNDAsIDIxMCwgMjYsIDI1NSwgNiwgMjE2LCAxODEsIDEzNCwgMjQwLCAyMTAsIDI2LCAyNTUsIDYsIAorICAgIDI0NSwgMTA0LCAyNDQsIDgxLCAyNDAsIDIxMCwgMjYsIDI1NSwgNiwgMjE1LCAyMDMsIDI0NCwgODEsIDI0MCwgMjEwLCAyNiwgCisgICAgMjU1LCA2LCAyMTYsIDE4MSwgMjQ0LCA4MSwgMjQwLCAyMTAsIDI2LCAyNTUsIDYsIDI1MCwgMjI3LCAyNDQsIDgxLCAyNDAsIAorICAgIDIxMCwgMjYsIDI1NSwgNiwgMjI5LCAxODIsIDI0NCwgODEsIDI0MCwgMjEwLCAyNiwgMjU1LCA2LCAyMTYsIDE4MSwgMTIzLCAKKyAgICAyMTYsIDE0NywgMjYsIDI1NSwgNiwgMjE2LCAxODEsIDI0NCwgODEsIDIxNiwgMTQ3LCAyNiwgMjU1LCA2LCAyNDgsIDU3LCAKKyAgICAyNDQsIDgxLCAyMzAsIDE2NCwgMjYsIDI1NSwgNiwgMjE4LCAxMTgsIDI0NCwgMTE1LCAyMzAsIDE2NCwgMjYsIDEyMywgCisgICAgMTYzLCA1MCwgMjYsIDEyMywgMTYzLCA1LCAyNTQsIDE0MSwgMTcsIDI2LCAxMTMsIDIxNiwgMTY3LCA1MCwgMjYsIDEzNCwgCisgICAgMjI0LCAyMCwgNTAsIDI2LCAyMTEsIDQ1LCA1MCwgMjYsIDIxNywgNjgsIDUwLCAyNiwgMjQ2LCAxMDEsIDUwLCAyNiwgMjI2LCAKKyAgICAyNDYsIDUwLCAyNiwgMTEzLCAyMjYsIDI0NSwgNTAsIDI2LCAxMzQsIDIyNiwgMjQ1LCA1MCwgMjYsIDI0NCwgMTEsIDIyNiwgCisgICAgMjQ1LCA1MCwgMjYsIDI0NCwgODEsIDIyNiwgMjQ1LCA1MCwgMjYsIDIzMSwgMzUsIDUwLCAyNiwgMjMzLCAxNTcsIDI1MiwgCisgICAgMTI4LCA1MCwgMjYsIDIzMiwgMTk0LCA1MCwgMjYsIDIyNiwgMTMxLCA1MCwgMjYsIDIxMSwgMTU5LCA1MCwgMjYsIDI1MywgCisgICAgMjQzLCA1MCwgMjYsIDI1NCwgMCwgNTAsIDI2LCAyNDIsIDE0NCwgNTAsIDI2LCAyMTUsIDE4NiwgMjUyLCAxMjgsIDUwLCAKKyAgICAyNiwgMjEwLCA4NywgNTAsIDIyMiwgMTk4LCAyMjAsIDExMywgNTAsIDIyMiwgMTk4LCAyMTQsIDE4NSwgNTAsIDIyMiwgCisgICAgMTk4LCAyMjAsIDE0MiwgNTAsIDIyMiwgMTk4LCAyMjAsIDExMSwgNTAsIDIyMiwgMTk4LCAyNDcsIDIxMywgMjIwLCAxMTEsIAorICAgIDUwLCAyMjIsIDE5OCwgMjE5LCAxNjgsIDUwLCAyMjIsIDE5OCwgMjQ4LCA1MywgNTAsIDIyMiwgMTk4LCAyMjQsIDYsIDUwLCAKKyAgICAyMjIsIDE5OCwgMjIwLCAxMjksIDUwLCAyMjIsIDE5OCwgMjQ2LCA2MCwgNTAsIDIyMiwgMTk4LCAyNTMsIDIzOCwgNTAsIAorICAgIDIyMiwgMTk4LCAyNTAsIDE3MSwgNTAsIDIyNSwgMTQzLCAyNDcsIDE5MSwgNSwgMjI1LCAyMTMsIDIyNSwgMTQzLCAyNDcsIAorICAgIDE5MSwgNSwgMjI1LCAyNCwgMjQxLCAyMzUsIDIyNSwgMTQzLCAyNDcsIDE5MSwgNSwgMjE3LCA0NSwgMjQxLCAyMzUsIDIyNSwgCisgICAgMTQzLCAyNDcsIDE5MSwgNSwgMjUwLCAyNDcsIDIyNSwgMTQzLCAyNDcsIDE5MSwgNSwgMjUwLCAxMDEsIDIyNSwgMTQzLCAKKyAgICAyNDcsIDE5MSwgNSwgMjExLCAyMjEsIDIyNSwgMTQzLCAyNDcsIDE5MSwgNSwgMjQxLCAyMTEsIDIyNSwgMTQzLCAyNDcsIAorICAgIDE5MSwgNSwgMjQzLCA4NSwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAyMTYsIDExNiwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAKKyAgICA3NCwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAyNTEsIDE2OSwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAyMjAsIDI5LCAyMjUsIAorICAgIDE0MywgMjQ3LCAxOTEsIDUsIDI0OSwgMjQ0LCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIDIzMSwgMTg0LCAyMjUsIDE0MywgCisgICAgMjQ3LCAxOTEsIDUsIDIzMSwgMTM2LCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIDIyMSwgMjE2LCAyMjUsIDE0MywgMjQ3LCAKKyAgICAxOTEsIDUsIDIzMiwgMjM3LCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIDI1MSwgMTg4LCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIAorICAgIDI1MCwgMjMxLCAyMjUsIDM1LCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIDI0NywgMTMzLCAyMjUsIDE0MywgMjQ3LCAxOTEsIAorICAgIDUsIDI0OSwgMjIzLCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIDIxOSwgODcsIDIyNSwgMTQzLCAyNDcsIDE5MSwgNSwgMjQ5LCAKKyAgICAyMjQsIDIyNSwgMTQzLCAyNDcsIDE5MSwgNSwgMjUyLCA2MywgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAyMjAsIDE2LCAyMjUsIAorICAgIDE0MywgMjQ3LCAxOTEsIDUsIDI0MCwgMjQ4LCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIDI0MSwgMTc4LCAyMjUsIDE0MywgCisgICAgMjQ3LCAxOTEsIDUsIDI1MSwgMTEyLCAyMzMsIDM2LCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIDI1MCwgMjI0LCAyMjUsIAorICAgIDE0MywgMjQ3LCAxOTEsIDUsIDIyMywgMTUzLCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIDI0NSwgMjMwLCAyMjUsIDE0MywgCisgICAgMjQ3LCAxOTEsIDUsIDI0NiwgMTA3LCAyMjUsIDE0MywgMjQ3LCAxOTEsIDUsIDIxNSwgMTA1LCAyMjUsIDE0MywgMjQ3LCAKKyAgICAxOTEsIDUsIDI1MiwgNjYsIDIyNSwgMTQzLCAyNDcsIDE5MSwgNSwgMjI1LCAzNiwgMjE1LCAyMzUsIDIyNSwgMTQzLCAyNDcsIAorICAgIDE5MSwgNSwgMjEzLCAxNTksIDIyNSwgMTQzLCAyNDcsIDE5MSwgNSwgMjI2LCAxOCwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAKKyAgICAyMjIsIDE5MCwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAyMzIsIDIyNCwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAyMjYsIAorICAgIDExNSwgMjUyLCAxODQsIDIyNSwgMTQzLCAyNDcsIDE5MSwgNSwgMjQ0LCA0OCwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAKKyAgICAyNDIsIDEzOCwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAyMTgsIDExOSwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCA0LCAyNTMsIAorICAgIDE2OCwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAyMTIsIDMyLCAyNTIsIDE0OCwgMjI1LCAxNDMsIDI0NywgMTkxLCA1LCAzOCwgCisgICAgMjI2LCAyNDgsIDkxLCAyMzIsIDYwLCAxLCA2MSwgMjMyLCA2MCwgMSwgNzUsIDIzMiwgNjAsIDEsIDI1MywgMTU4LCAyMzIsIAorICAgIDYwLCAxLCAyNTIsIDE5LCAyMzIsIDYwLCAxLCAyNDMsIDIwMiwgMjMyLCA2MCwgMSwgMjQ5LCA2MCwgMjMyLCA2MCwgMSwgCisgICAgNzMsIDIzMiwgNjAsIDEsIDIxMiwgOTgsIDIzMiwgNjAsIDEsIDIxMCwgMTU5LCAyMzIsIDYwLCAxLCAyMTYsIDIxMCwgMjMyLCAKKyAgICA2MCwgMSwgMjM1LCAxNDQsIDIzMiwgNjAsIDEsIDIzNSwgMjMsIDIzMiwgNjAsIDEsIDIyNCwgOTYsIDIzMiwgNjAsIDEsIAorICAgIDE1NiwgMjMyLCA2MCwgMSwgMTkzLCAyMzIsIDYwLCAxLCAyMzAsIDI1LCAyMzIsIDYwLCAxLCAyMzAsIDE2NiwgMjMyLCA2MCwgCisgICAgMSwgMjI4LCAxMTEsIDIzMiwgNjAsIDEsIDcwLCAyMzIsIDYwLCAxLCAyMjYsIDEwNSwgMjMyLCA2MCwgMSwgMjM0LCA0NywgCisgICAgMjMyLCA2MCwgMSwgMTUzLCAyMzIsIDYwLCAxLCAyMjIsIDkxLCAyMzIsIDYwLCAxLCAyMTcsIDE1MiwgMjMyLCA2MCwgMSwgCisgICAgMjE1LCAxNTksIDIzMiwgNjAsIDEsIDI1NCwgMTIzLCAyMzIsIDYwLCAxLCAyNDUsIDE1MCwgMjMyLCA2MCwgMSwgMjQyLCAKKyAgICA2MCwgMjMyLCA2MCwgMSwgMjExLCAxNzgsIDI1MCwgMjM3LCAxLCA2MSwgMjUwLCAyMzcsIDEsIDIyNiwgOTEsIDI1MCwgCisgICAgMjM3LCAxLCAyNDksIDYwLCAyNTAsIDIzNywgMSwgMTU2LCAyNTAsIDIzNywgMSwgMjE0LCAxMTYsIDI1MCwgMjM3LCAxLCAKKyAgICAxNTMsIDI1MCwgMjM3LCAxLCAyMzMsIDYyLCAyNTAsIDIzNywgMSwgMjU1LCA3NSwgMjUwLCAyMzcsIDEsIDIyNCwgOTYsIAorICAgIDI1MCwgMjM3LCAxLCAyNTMsIDE1OCwgMjUwLCAyMzcsIDEsIDE5MywgMjUwLCAyMzcsIDEsIDc2LCAyNTAsIDIzNywgMSwgCisgICAgMjQ4LCAyMjMsIDI1MCwgMjM3LCAxLCAyMTcsIDE1MiwgMjUwLCAyMzcsIDEsIDIyMCwgMTA0LCAyNTAsIDIzNywgMSwgMjIwLCAKKyAgICAxMDMsIDI1MCwgMjM3LCAxLCAyMjIsIDkxLCAyNTAsIDIzNywgMSwgMjUxLCA2NSwgMjUwLCAyMzcsIDEsIDcwLCAyNTAsIAorICAgIDIzNywgMSwgMjI4LCAxMTEsIDI1MCwgMjM3LCAxLCAyMTEsIDE3OCwgMjUwLCAyMzcsIDEsIDIzMCwgMjUsIDI1MCwgMjM3LCAKKyAgICAxLCAyMTUsIDE1OCwgMjUwLCAyMzcsIDEsIDIyNiwgMTA1LCAyNTAsIDIzNywgMSwgMjE4LCAyMjYsIDI1MCwgMjM3LCAxLCAKKyAgICA3MywgMjUwLCAyMzcsIDEsIDc1LCAyNTAsIDIzNywgMSwgMjE0LCAxMTMsIDI1MCwgMjM3LCAxLCAyMzUsIDIzLCAyNTAsIAorICAgIDIzNywgMSwgMjM1LCAxNCwgMjUwLCAyMzcsIDEsIDIyOSwgMTUwLCAyNTAsIDIzNywgMSwgMjE0LCAxMTgsIDI1MCwgMjM3LCAKKyAgICAxLCAyNDMsIDIwMiwgMjUwLCAyMzcsIDEsIDI0MywgMTM3LCAyNTAsIDIzNywgMSwgMjE4LCAxNjgsIDI1MCwgMjM3LCAxLCAKKyAgICAyMTgsIDE2NywgMjUwLCAyMzcsIDEsIDIyOSwgNzksIDI1MCwgMjM3LCAxLCAyMzYsIDMzLCAyNTAsIDIzNywgMSwgMjUxLCAKKyAgICA2NCwgMjUwLCAyMzcsIDEsIDIxNSwgMTU5LCAyNTAsIDIzNywgMSwgMjE0LCAxMTUsIDI1MCwgMjM3LCAxLCAyMjIsIDE4MCwgCisgICAgMjUwLCAyMzcsIDEsIDIzMSwgMTI5LCAyNTAsIDIzNywgMSwgMjMxLCAxMjgsIDI1MCwgMjM3LCAxLCAyMzEsIDEyNywgMjUwLCAKKyAgICAyMzcsIDEsIDIzMSwgMTI2LCAyNTAsIDIzNywgMSwgMjMzLCA2MSwgMjUwLCAyMzcsIDEsIDI0NSwgMjM0LCAyNTAsIDIzNywgCisgICAgMSwgMjE0LCAxMTQsIDU1LCAzMiwgMSwgNjEsIDU1LCAzMiwgMSwgMjUyLCA3NSwgNTUsIDMyLCAxLCAyMzQsIDE4MiwgNTUsIAorICAgIDMyLCAxLCAyNDgsIDkwLCA1NSwgMzIsIDEsIDc1LCA1NSwgMzIsIDEsIDIxMywgMjU1LCA1NSwgMzIsIDEsIDIxMCwgOTQsIAorICAgIDU1LCAzMiwgMSwgMjQxLCAyMzgsIDU1LCAzMiwgMSwgMjE2LCAxOTUsIDU1LCAzMiwgMSwgNzMsIDU1LCAzMiwgMSwgMTc2LCAKKyAgICA1NSwgMzIsIDEsIDI0NSwgMTc0LCA1NSwgMzIsIDEsIDI0NSwgMTU5LCA1NSwgMzIsIDEsIDI0NSwgMTUwLCA1NSwgMzIsIDEsIAorICAgIDI0NSwgNzUsIDU1LCAzMiwgMSwgNzYsIDU1LCAzMiwgMSwgMjI1LCAyMjEsIDU1LCAzMiwgMSwgMjIwLCA2MywgNTUsIDMyLCAKKyAgICAxLCAyMzMsIDIxNywgNTUsIDMyLCAxLCAyNDUsIDkyLCA1NSwgMzIsIDEsIDI0NSwgODIsIDU1LCAzMiwgMSwgMjE3LCAyMiwgCisgICAgNTUsIDMyLCAxLCA3MCwgNTUsIDMyLCAxLCAyNDUsIDE3NywgNTUsIDMyLCAxLCAyMjUsIDEzNiwgNTUsIDMyLCAxLCAyMzQsIAorICAgIDExOSwgNTUsIDMyLCAxLCAyNDUsIDIwMiwgNTUsIDMyLCAxLCAyNDUsIDg0LCA1NSwgMzIsIDEsIDI1MCwgMTMxLCA1NSwgCisgICAgMzIsIDEsIDIzNiwgMzMsIDU1LCAzMiwgMSwgMjE0LCAxMTgsIDU1LCAzMiwgMjI3LCAxOTgsIDExMCwgNTUsIDMyLCAyMjcsIAorICAgIDE5OCwgMTg5LCA1NSwgMzIsIDIyNywgMTk4LCAyMTYsIDI0NywgNTUsIDMyLCAyMjcsIDE5OCwgMjQ0LCAxMTQsIDI0MiwgCisgICAgMTUzLCAxLCAyNTQsIDIwNCwgMjQyLCAxNTMsIDEsIDI1MiwgMTYzLCAyNDIsIDE1MywgMSwgMjQyLCAyMTEsIDI0MiwgMTUzLCAKKyAgICAxLCAyNDgsIDIwNCwgMjQyLCAxNTMsIDEsIDI1NCwgMjAwLCAyNDIsIDE1MywgMSwgMjI0LCA3OSwgMjQyLCAxNTMsIDEsIAorICAgIDIzNSwgMTU1LCAyNDIsIDE1MywgMSwgMjQyLCAzOSwgMjQyLCAxNTMsIDEsIDIxNiwgMTU4LCAyNDIsIDE1MywgMSwgMjQ1LCAKKyAgICAxODMsIDI0MiwgMTUzLCAxLCAyMzMsIDE5MCwgMjQyLCAxNTMsIDEsIDIzMywgMTEzLCAyNDIsIDE1MywgMSwgMjMxLCAxNzksIAorICAgIDI0MiwgMTUzLCAxLCAyMjksIDE4NCwgMjQyLCAxNTMsIDEsIDIzNSwgMTE5LCAyNDIsIDE1MywgMSwgMjE0LCAxMzYsIDI0MiwgCisgICAgMTUzLCAxLCAyMjYsIDY5LCAyNDIsIDE1MywgMSwgMjI4LCAxOTUsIDI0MiwgMTUzLCAxLCAyMjMsIDE2NSwgMjQyLCAxNTMsIAorICAgIDEsIDIyMSwgMjE4LCAyNDIsIDE1MywgMSwgMjE3LCA0LCAyNDIsIDE1MywgMSwgMjExLCAyMzQsIDI0MiwgMTUzLCAxLCAKKyAgICAyNDQsIDE3OCwgMjQyLCAxNTMsIDEsIDIzNiwgMzcsIDI0MiwgMTUzLCAxLCAyNDAsIDE5OSwgMjQyLCAxNTMsIDEsIDIyNiwgCisgICAgMTM5LCAyNDIsIDE1MywgMSwgMjI4LCAyMDAsIDI0MCwgMjEwLCAyMTQsIDIwOSwgMSwgMjU0LCAxNDcsIDIxNCwgMjA5LCAxLCAKKyAgICAyNTIsIDI2LCAyMTQsIDIwOSwgMSwgMjQzLCAxMDgsIDIxNCwgMjA5LCAxLCAyMzQsIDEzMiwgMjE0LCAyMDksIDEsIDI0OCwgCisgICAgNTQsIDIxNCwgMjA5LCAxLCAyNDEsIDY4LCAyMTQsIDIwOSwgMSwgMjExLCAyMjcsIDIxNCwgMjA5LCAxLCAyMTAsIDg1LCAKKyAgICAyMTQsIDIwOSwgMSwgMjQwLCAyNDEsIDIxNCwgMjA5LCAxLCAyMTYsIDIzMCwgMjE0LCAyMDksIDEsIDIxMCwgMjMzLCAyMTQsIAorICAgIDIwOSwgMSwgMjM0LCAyNTAsIDIxNCwgMjA5LCAxLCAyMjAsIDIwLCAyMTQsIDIwOSwgMSwgMjMzLCA5OCwgMjE0LCAyMDksIAorICAgIDEsIDIzMSwgNjUsIDIxNCwgMjA5LCAxLCAyNDgsIDIxLCAyMTQsIDIwOSwgMSwgMjI3LCAxOTQsIDIxNCwgMjA5LCAxLCAKKyAgICAyMTAsIDEzLCAyMTQsIDIwOSwgMSwgMjIxLCAyNDgsIDIxNCwgMjA5LCAxLCAyNTQsIDE5NiwgMjE0LCAyMDksIDEsIDIyNCwgCisgICAgMTUwLCAyMTQsIDIwOSwgMSwgMjIyLCAyNSwgMjE0LCAyMDksIDEsIDIyNCwgMzUsIDIxNCwgMjA5LCAxLCAyMjMsIDE0NCwgCisgICAgMjE0LCAyMDksIDEsIDIxNiwgMTk5LCAyMTQsIDIwOSwgMSwgMjQyLCAyNDQsIDIxNCwgMjA5LCAxLCAxMTEsIDIxNCwgMjA5LCAKKyAgICAxLCA3MywgMjE0LCAyMDksIDEsIDcwLCAyMTQsIDIwOSwgMSwgMjE4LCAxNzksIDIxNCwgMjA5LCAyMTEsIDIwOSwgMjQ3LCAKKyAgICAxNzIsIDU1LCAyMjUsIDE2OSwgNSwgNjEsIDU1LCAyMjUsIDE2OSwgNSwgNzMsIDU1LCAyMjUsIDE2OSwgNSwgNzAsIDU1LCAKKyAgICAyMjUsIDE2OSwgNSwgMTc2LCA1NSwgMjI1LCAxNjksIDUsIDIzMywgMjE3LCA1NSwgMjI1LCAxNjksIDUsIDI0MywgMTM1LCAKKyAgICA1NSwgMjI1LCAxNjksIDUsIDI0MiwgMTEzLCA1NSwgMjI1LCAxNjksIDUsIDIxMSwgMTY1LCA1NSwgMjI1LCAxNjksIDUsIAorICAgIDI1MSwgMzMsIDU1LCAyMjUsIDE2OSwgNSwgMjM1LCAxNDEsIDU1LCAyMjUsIDE2OSwgNSwgMjM1LCAxMDgsIDU1LCAyMjUsIAorICAgIDE2OSwgNSwgMjE3LCAxMDUsIDU1LCAyMjUsIDE2OSwgNSwgMjE1LCAxMTgsIDU1LCAyMjUsIDE2OSwgNSwgMjQ4LCAyMjEsIAorICAgIDU1LCAyMjUsIDE2OSwgNSwgMjQ4LCAzLCA1NSwgMjI1LCAxNjksIDUsIDI0NiwgNzgsIDU1LCAyMjUsIDE2OSwgNSwgMjE2LCAKKyAgICAyMDgsIDU1LCAyMjUsIDE2OSwgNSwgMTkwLCA1NSwgMjI1LCAxNjksIDUsIDI1MiwgMTkxLCA1NSwgMjI1LCAxNjksIDUsIAorICAgIDI0NCwgMTk2LCA1NSwgMjI1LCAxNjksIDUsIDE5NywgNTUsIDIyNSwgMTY5LCA1LCAyMjcsIDIzNywgNTUsIDIyNSwgMTY5LCAKKyAgICA1LCAxODQsIDU1LCAyMjUsIDE2OSwgNSwgMjMwLCAyMzAsIDU1LCAyMjUsIDE2OSwgNSwgMjMwLCAxMDIsIDU1LCAyMjUsIAorICAgIDE2OSwgNSwgMTkxLCA1NSwgMjI1LCAxNjksIDUsIDIxNCwgMjcsIDU1LCAyMjUsIDE2OSwgNSwgMjEzLCAxNzYsIDU1LCAKKyAgICAyMjUsIDE2OSwgNSwgMjA1LCA1NSwgMjI1LCAxNjksIDUsIDIyMiwgMTQwLCA1NSwgMjI1LCAxNjksIDUsIDIzMywgMTM1LCAKKyAgICA1NSwgMjI1LCAxNjksIDUsIDIwNiwgNTUsIDIyNSwgMTY5LCA1LCAyMTAsIDExNiwgNTUsIDIyNSwgMTY5LCA1LCAyMjAsIAorICAgIDEwMiwgNTUsIDIyNSwgMTY5LCA1LCAyMTgsIDIyMywgNTUsIDIyNSwgMTY5LCA1LCAxNjIsIDU1LCAyMjUsIDE2OSwgNSwgCisgICAgMjUzLCAxODYsIDU1LCAyMjUsIDE2OSwgNSwgMjUzLCAxODUsIDU1LCAyMjUsIDE2OSwgNSwgMjUzLCAxODQsIDU1LCAyMjUsIAorICAgIDE2OSwgNSwgMjExLCAxNDIsIDU1LCAyMjUsIDE2OSwgNSwgMjQ4LCAyMDAsIDU1LCAyMjUsIDE2OSwgNSwgMjQ4LCAxOTksIAorICAgIDU1LCAyMjUsIDE2OSwgNSwgMjUyLCAxNzAsIDU1LCAyMjUsIDE2OSwgNSwgMjUxLCA4NSwgNTUsIDIyNSwgMTY5LCAyMTEsIAorICAgIDIwOSwgMjQ3LCAxNzIsIDU1LCAyMjUsIDE2OSwgNTQsIDExMCwgNTUsIDIyNSwgMTY5LCA1NCwgMTA1LCA1NSwgMjI1LCAKKyAgICAxNjksIDU0LCAyMTYsIDI0NywgNTUsIDIyNSwgMTY5LCA1NCwgMjE1LCA3MywgNTUsIDIyNSwgMTY5LCA1NCwgMjQwLCAyMTAsIAorICAgIDE4MSwgNiwgMSwgMTk5LCA3MywgMTgxLCA2LCAxLCAxOTksIDc1LCAxODEsIDYsIDEsIDE5OSwgNjEsIDE4MSwgNiwgMSwgCisgICAgMTk5LCAyNTQsIDIwOSwgMTgxLCA2LCAxLCAxOTksIDc2LCAxODEsIDYsIDEsIDE5OSwgMjI2LCAxODMsIDE4MSwgNiwgMSwgCisgICAgMjE5LCAyNTEsIDczLCAxODEsIDYsIDEsIDIxOSwgMjUxLCA3NSwgMTgxLCA2LCAxLCAyMTksIDI1MSwgNjEsIDE4MSwgNiwgCisgICAgMSwgMjE5LCAyNTEsIDI1NCwgMjA5LCAxODEsIDYsIDEsIDIxOSwgMjUxLCA3NiwgMTgxLCA2LCAxLCAyMTksIDI1MSwgMjI2LCAKKyAgICAxODMsIDE4MSwgNiwgMSwgMjUzLCAxNjcsIDE4MSwgNiwgMSwgMjI2LCAxMTYsIDE4MSwgNiwgMSwgMjExLCAxOTUsIDE4MSwgCisgICAgNiwgMSwgMjExLCA0NCwgMTgxLCA2LCAxLCAyNDIsIDYwLCAxODEsIDYsIDEsIDIyNSwgMjExLCAxODEsIDYsIDEsIDI1MiwgCisgICAgNjYsIDE4MSwgNiwgMSwgMjE3LCAxMSwgMTgxLCA2LCAxLCAyNDgsIDc3LCAxODEsIDYsIDEsIDI1MCwgMTI4LCAxODEsIDYsIAorICAgIDEsIDIzNSwgMTI0LCAxODEsIDYsIDEsIDIzNCwgMTg5LCAxODEsIDYsIDEsIDI0MywgODMsIDE4MSwgNiwgMSwgMjQ1LCAKKyAgICAyMDIsIDE4MSwgNiwgMSwgMjEzLCAyNTAsIDE4MSwgNiwgMSwgMjQ1LCA1OSwgMTgxLCA2LCAxLCAyMTYsIDE5NCwgMTgxLCAKKyAgICA2LCAxLCAyNDUsIDgyLCAxODEsIDYsIDEsIDIxMCwgOTIsIDE4MSwgNiwgMSwgMjQ1LCA3NSwgMTgxLCA2LCAxLCAyMTAsIAorICAgIDczLCAxODEsIDYsIDEsIDI0NSwgOTIsIDE4MSwgNiwgMSwgMjQ1LCAxNzQsIDE4MSwgNiwgMSwgMjQ1LCAxNTksIDE4MSwgNiwgCisgICAgMSwgMjQ1LCAxNTAsIDE4MSwgNiwgMSwgMjQ1LCAxMzgsIDE4MSwgNiwgMSwgMjI2LCAyMTksIDE4MSwgNiwgMSwgMjQ1LCAKKyAgICAzOCwgMTgxLCA0LCAxLCAxOTksIDczLCAxODEsIDQsIDEsIDE5OSwgNzUsIDE4MSwgNCwgMSwgMTk5LCA2MSwgMTgxLCA0LCAKKyAgICAxLCAxOTksIDI1NCwgMjA5LCAxODEsIDQsIDEsIDE5OSwgNzYsIDE4MSwgNCwgMSwgMTk5LCAyMjYsIDE4MywgMTgxLCA0LCAKKyAgICAxLCAyMTksIDI1MSwgNzMsIDE4MSwgNCwgMSwgMjE5LCAyNTEsIDc1LCAxODEsIDQsIDEsIDIxOSwgMjUxLCA2MSwgMTgxLCAKKyAgICA0LCAxLCAyMTksIDI1MSwgMjU0LCAyMDksIDE4MSwgNCwgMSwgMjE5LCAyNTEsIDc2LCAxODEsIDQsIDEsIDIxOSwgMjUxLCAKKyAgICAyMjYsIDE4MywgMTgxLCA0LCAxLCAyNTMsIDE2NywgMTgxLCA0LCAxLCAyMjYsIDExNiwgMTgxLCA0LCAxLCAyMTEsIDE5NSwgCisgICAgMTgxLCA0LCAxLCAyMTEsIDQ0LCAxODEsIDQsIDEsIDI0MiwgNjAsIDE4MSwgNCwgMSwgMjI1LCAyMTEsIDE4MSwgNCwgMSwgCisgICAgMjUyLCA2NiwgMTgxLCA0LCAxLCAyMTcsIDExLCAxODEsIDQsIDEsIDI0OCwgNzcsIDE4MSwgNCwgMSwgMjUwLCAxMjgsIAorICAgIDE4MSwgNCwgMSwgMjM1LCAxMjQsIDE4MSwgNCwgMSwgMjM0LCAxODksIDE4MSwgNCwgMSwgMjQzLCA4MywgMTgxLCA0LCAxLCAKKyAgICAyNDUsIDIwMiwgMTgxLCA0LCAxLCAyMTMsIDI1MCwgMTgxLCA0LCAxLCAyNDUsIDU5LCAxODEsIDQsIDEsIDIxNiwgMTk0LCAKKyAgICAxODEsIDQsIDEsIDI0NSwgODIsIDE4MSwgNCwgMSwgMjEwLCA5MiwgMTgxLCA0LCAxLCAyNDUsIDc1LCAxODEsIDQsIDEsIAorICAgIDIxMCwgNzMsIDE4MSwgNCwgMSwgMjQ1LCA5MiwgMTgxLCA0LCAxLCAyNDUsIDE3NCwgMTgxLCA0LCAxLCAyNDUsIDE1OSwgCisgICAgMTgxLCA0LCAxLCAyNDUsIDE1MCwgMTgxLCA0LCAxLCAyNDUsIDEzOCwgMTgxLCA0LCAxLCAyMjYsIDIxOSwgMTgxLCA0LCAxLCAKKyAgICAyNDUsIDM4LCAyMjAsIDY5LCAxLCAyMjUsIDIwOSwgMjIwLCA2OSwgMSwgMjE2LCA1LCAyMjAsIDY5LCAxLCAyMzQsIDkxLCAKKyAgICAyMjAsIDY5LCAxLCAyNDQsIDE0NywgMjIwLCA2OSwgMSwgMjE2LCAxNzIsIDIyMCwgNjksIDEsIDIxOSwgNTgsIDIyMCwgNjksIAorICAgIDEsIDIxOCwgMTQsIDIyMCwgNjksIDEsIDI1MCwgNjEsIDIyMCwgNjksIDEsIDIxMSwgNDYsIDIyMCwgNjksIDEsIDI0MCwgCisgICAgMjA5LCAyMjAsIDY5LCAxLCAyNTIsIDUsIDIyMCwgNjksIDEsIDI0OCwgODksIDIyMCwgNjksIDEsIDI0MywgMTIxLCAyMjAsIAorICAgIDY5LCAxLCAyMTMsIDEyMywgMjIwLCA2OSwgMSwgMjE2LCAxNzYsIDIyMCwgNjksIDEsIDIxMCwgMjEsIDIyMCwgNjksIDEsIAorICAgIDIzMSwgODksIDIyMCwgNjksIDEsIDIzNSwgNDksIDIyMCwgNjksIDEsIDIxMSwgMjI1LCAyMjAsIDY5LCAxLCAyNDIsIDQ4LCAKKyAgICAyMjAsIDY5LCAxLCAyMzIsIDE0MiwgMjIwLCA2OSwgMSwgMjMwLCAxODksIDIyMCwgNjksIDEsIDIzNiwgNDAsIDIyMCwgNjksIAorICAgIDEsIDI0NSwgMjAxLCAyMjAsIDY5LCAxLCAyNTMsIDIzMSwgMjIwLCA2OSwgMSwgMjU0LCAyNDcsIDIyMCwgNjksIDEsIDIyNiwgCisgICAgMTk2LCAyMjAsIDY5LCAxLCAyMTEsIDIxMiwgMjIwLCA2OSwgMSwgMjI2LCAxMzAsIDIyMCwgNjksIDEsIDI1NCwgMjA5LCAKKyAgICAyMjAsIDY5LCAxLCAyMjIsIDIwOCwgMjIwLCA2OSwgMSwgMjI3LCAxOTQsIDIyMCwgNjksIDEsIDI0NSwgMjE3LCAyMjAsIAorICAgIDY5LCAxLCAyNTQsIDIxNCwgMjIwLCA2OSwgMSwgMjQwLCAxMTEsIDIyMCwgNjksIDEsIDIxNCwgMTYzLCAyMjAsIDY5LCAxLCAKKyAgICAyMjYsIDI1NCwgMjIwLCA2OSwgMSwgMjI2LCAxNzYsIDIyMCwgNjksIDEsIDIyNiwgMjE4LCAyMjAsIDY5LCAxLCAyNTMsIAorICAgIDE3MCwgMjIwLCA2OSwgMSwgMjU0LCAxOSwgMjIwLCA2OSwgMSwgMjI2LCAxNTgsIDIyMCwgNjksIDEsIDI1NCwgMTkyLCAKKyAgICAyMjAsIDY5LCAxLCAyNDUsIDg2LCAyMjAsIDY5LCAxLCAyNTMsIDI1MywgMjIwLCA2OSwgMSwgMjQ1LCAyMjcsIDIyMCwgNjksIAorICAgIDEsIDI0MCwgMTE4LCAyMjAsIDY5LCAxLCAyMTEsIDEzLCAyMjYsIDE0MSwgMSwgMjU0LCAxNzAsIDIyNiwgMTQxLCAxLCAKKyAgICAyNTIsIDE5MSwgMjI2LCAxNDEsIDEsIDIxNywgMTA1LCAyMjYsIDE0MSwgMSwgMjM1LCAxNDEsIDIyNiwgMTQxLCAxLCAyMTEsIAorICAgIDE2NSwgMjI2LCAxNDEsIDEsIDIzNCwgMTMyLCAyMjYsIDE0MSwgMSwgMjQ4LCA3NiwgMjI2LCAxNDEsIDEsIDIwNSwgMjI2LCAKKyAgICAxNDEsIDEsIDIwNiwgMjI2LCAxNDEsIDEsIDIyMCwgMjYsIDIyNiwgMTQxLCAxLCAyNDgsIDI1LCAyMjYsIDE0MSwgMSwgCisgICAgMjUwLCAyMTUsIDIyNiwgMTQxLCAxLCAyNDMsIDEzNSwgMjI2LCAxNDEsIDEsIDI0NCwgMTk2LCAyMjYsIDE0MSwgMSwgMjI0LCAKKyAgICA4NiwgMjI2LCAxNDEsIDEsIDIzNSwgOSwgMjI2LCAxNDEsIDEsIDIzMywgMTMwLCAyMjYsIDE0MSwgMSwgMjMwLCAyMDAsIAorICAgIDIyNiwgMTQxLCAxLCAyMjcsIDE3OCwgMjI2LCAxNDEsIDEsIDIxMiwgMzAsIDIyNiwgMTQxLCAxLCAxNjIsIDIyNiwgMTQxLCAKKyAgICAxLCAxOTEsIDIyNiwgMTQxLCAxLCA2MSwgMjI2LCAxNDEsIDEsIDc1LCAyMjYsIDE0MSwgMSwgNzMsIDIyNiwgMTQxLCAxLCAKKyAgICA3NiwgMjI2LCAxNDEsIDEsIDcwLCAyMjYsIDE0MSwgMSwgMjU1LCA3MywgMjI2LCAxNDEsIDEsIDI0NSwgMjA5LCAyMjYsIAorICAgIDE0MSwgMSwgMjI2LCAxODMsIDIyNiwgMTQxLCAyMSwgMjEwLCA4NiwgMjI2LCAxNDEsIDIxLCAxMTAsIDIyNiwgMTQxLCAyMSwgCisgICAgMTA1LCAyMjYsIDE0MSwgMjEsIDE1OCwgMjI2LCAxNDEsIDIxLCAxNjEsIDIyNiwgMTQxLCAyMSwgMTg5LCAyMjYsIDE0MSwgCisgICAgMjEsIDE5NCwgMjI2LCAxNDEsIDIxLCAxOTgsIDIyNiwgMTQxLCAyMSwgMTk1LCAyMjYsIDE0MSwgMjEsIDIwMCwgMjQ5LCAKKyAgICA2NywgMywgNjEsIDI0OSwgNjcsIDMsIDc1LCAyNDksIDY3LCAzLCA3MywgMjQ5LCA2NywgMywgNzYsIDI0OSwgNjcsIDMsIAorICAgIDcwLCAyNDksIDY3LCAzLCAyMzUsIDE0MSwgMjQ5LCA2NywgMywgMjM1LCA2OCwgMjQ5LCA2NywgMywgMTc2LCAyNDksIDY3LCAKKyAgICAzLCAyMzQsIDE4MiwgMjQ5LCA2NywgMywgMjM0LCA5MiwgMjQ5LCA2NywgMywgMjM0LCAyOCwgMjQ5LCA2NywgMywgMjMzLCAKKyAgICAyMTcsIDI0OSwgNjcsIDMsIDIzMywgMTM1LCAyNDksIDY3LCAzLCAyMzMsIDU4LCAyNDksIDY3LCAzLCAyMzIsIDI0MSwgCisgICAgMjQ5LCA2NywgMywgMjMyLCAxNTYsIDI0OSwgNjcsIDMsIDIzMiwgOTgsIDI0OSwgNjcsIDMsIDE4NCwgMjQ5LCA2NywgMywgCisgICAgMjMxLCA5MSwgMjQ5LCA2NywgMywgMjMwLCAyMzAsIDI0OSwgNjcsIDMsIDIzMCwgMTYxLCAyNDksIDY3LCAzLCAyMzAsIAorICAgIDEwMiwgMjQ5LCA2NywgMywgMTk3LCAyNDksIDY3LCAzLCAyMjksIDEwNywgMjQ5LCA2NywgMywgMjI4LCAyMzMsIDI0OSwgCisgICAgNjcsIDMsIDIyOCwgNzQsIDI0OSwgNjcsIDMsIDIyNywgMjM3LCAyNDksIDY3LCAzLCAxOTAsIDI0OSwgNjcsIDMsIDIyNSwgCisgICAgMjIxLCAyNDksIDY3LCAzLCAyMjUsIDEwOCwgMjQ5LCA2NywgMywgMjI1LCAxNiwgMjQ5LCA2NywgMywgMjI0LCAxNTAsIAorICAgIDI0OSwgNjcsIDMsIDIwNSwgMjQ5LCA2NywgMywgMjIzLCAxMjgsIDI0OSwgNjcsIDMsIDIyMywgMzUsIDI0OSwgNjcsIDMsIAorICAgIDIyMiwgMjExLCAyNDksIDY3LCAzLCAyMjIsIDE0MCwgMjQ5LCA2NywgMywgMjA2LCAyNDksIDY3LCAzLCAyMjEsIDE4MSwgCisgICAgMjQ5LCA2NywgMywgMjE5LCAxOTEsIDI0OSwgNjcsIDMsIDIxOSwgNTgsIDI0OSwgNjcsIDMsIDIxOCwgODMsIDI0OSwgNjcsIAorICAgIDMsIDIxNywgMTA1LCAyNDksIDY3LCAzLCAyMTcsIDIyLCAyNDksIDY3LCAzLCAyMTYsIDExNywgMjQ5LCA2NywgMywgMTExLCAKKyAgICAyNDksIDY3LCAzLCAyMTUsIDExOCwgMjQ5LCA2NywgMywgMjEyLCA2NSwgMjQ5LCA2NywgMywgMjEyLCAyMiwgMjQ5LCA2NywgCisgICAgMywgMjExLCAyNTAsIDI0OSwgNjcsIDMsIDIxMSwgMjI3LCAyNDksIDY3LCAzLCAyMTEsIDE2NSwgMjQ5LCA2NywgMywgMjExLCAKKyAgICAxNjIsIDI0OSwgNjcsIDMsIDIxMCwgMTE2LCAyNDksIDY3LCAzLCAyMTAsIDIzLCAyMzYsIDEsIDI1NCwgMjcsIDEsIDI1NCwgCisgICAgMTY4LCAyMzYsIDEsIDI1NCwgMjcsIDEsIDI1MiwgMjUsIDIzNiwgMSwgMjU0LCAyNywgMSwgMjQyLCAyMDEsIDIzNiwgMSwgCisgICAgMjU0LCAyNywgMSwgMjQ4LCAxODgsIDIzNiwgMSwgMjU0LCAyNywgMSwgMjQxLCAyMzgsIDIzNiwgMSwgMjU0LCAyNywgMSwgCisgICAgMjEyLCAzMCwgMjM2LCAxLCAyNTQsIDI3LCAxLCAyMTAsIDk3LCAyMzYsIDEsIDI1NCwgMjcsIDEsIDI0MSwgMTk1LCAyMzYsIAorICAgIDEsIDI1NCwgMjcsIDEsIDIxNiwgMjI2LCAyMzYsIDEsIDI1NCwgMjcsIDEsIDIxMCwgMjMyLCAyMzYsIDEsIDI1NCwgMjcsIAorICAgIDEsIDIzNCwgMjI1LCAyMzYsIDEsIDI1NCwgMjcsIDEsIDIzMywgOTMsIDIzNiwgMSwgMjU0LCAyNywgMSwgMjMxLCA2NSwgCisgICAgMjM2LCAxLCAyNTQsIDI3LCAxLCAyMjcsIDE5NCwgMjM2LCAxLCAyNTQsIDI3LCAxLCAyMjEsIDI0OSwgMjM2LCAxLCAyNTQsIAorICAgIDI3LCAxLCAyNTMsIDE2MiwgMjM2LCAxLCAyNTQsIDI3LCAxLCAyMjUsIDIyMSwgMjM2LCAxLCAyNTQsIDI3LCAxLCAyMjIsIAorICAgIDI0LCAyMzYsIDEsIDI1NCwgMjcsIDEsIDIyNCwgMzQsIDIzNiwgMSwgMjU0LCAyNywgMSwgMjIzLCA2NywgMjM2LCAxLCAKKyAgICAyNTQsIDI3LCAxLCAyMjAsIDIwLCAyMzYsIDEsIDI1NCwgMjcsIDEsIDIxNywgMzYsIDIzNiwgMSwgMjU0LCAyNywgMjIxLCAKKyAgICAxNzMsIDUwLCAyMzYsIDEsIDI1NCwgMjcsIDU0LCAxMTAsIDIzNiwgMSwgMjU0LCAyNywgNTQsIDEwNSwgMjM2LCAxLCAyNTQsIAorICAgIDI3LCA1NCwgMTU4LCAyMzYsIDEsIDI1NCwgMjcsIDU0LCAyMTYsIDI0NywgMjM2LCAxLCAyNTQsIDI3LCA1NCwgMjE1LCA3MywgCisgICAgMjM2LCAxLCAyNTQsIDI3LCA1NCwgMTIzLCAyNDAsIDIxMCwgMjM2LCAxLCAyNTQsIDI3LCA1NCwgMTIzLCAyMTYsIDE0NywgCisgICAgMjM2LCAxLCAyNTQsIDI3LCA1NCwgMjE2LCAyNDgsIDIxNiwgMTQ3LCAyMjUsIDExOSwgMSwgMjU0LCAxNjUsIDIyNSwgMTE5LCAKKyAgICAxLCAyNTIsIDI4LCAyMjUsIDExOSwgMSwgMjQzLCAxMDksIDIyNSwgMTE5LCAxLCAyNDgsIDU2LCAyMjUsIDExOSwgMSwgCisgICAgMjQxLCAyMzgsIDIyNSwgMTE5LCAxLCAyMTIsIDM3LCAyMjUsIDExOSwgMSwgMjEwLCAxMTAsIDIyNSwgMTE5LCAxLCAyNDEsIAorICAgIDE5NywgMjI1LCAxMTksIDEsIDIxNiwgMjMwLCAyMjUsIDExOSwgMSwgMjEwLCAyMzMsIDIyNSwgMTE5LCAxLCAyMzQsIDI1MCwgCisgICAgMjI1LCAxMTksIDEsIDIzMywgOTksIDIyNSwgMTE5LCAxLCAyMzEsIDY1LCAyMjUsIDExOSwgMSwgMjI3LCAxOTQsIDIyNSwgCisgICAgMTE5LCAxLCAyMjAsIDE0NCwgMjI1LCAxMTksIDEsIDI1NCwgMTk2LCAyMjUsIDExOSwgMSwgMjI1LCAyMjEsIDIyNSwgMTE5LCAKKyAgICAxLCAyMjIsIDI1LCAyMjUsIDExOSwgMSwgMjI0LCAzOSwgMjI1LCAxMTksIDEsIDIyMiwgMTg5LCAyMjUsIDExOSwgMSwgCisgICAgMjIwLCAyMCwgMjI1LCAxMTksIDEsIDIxNywgNDEsIDIyNSwgMTE5LCA1NCwgMTEwLCAyMjUsIDExOSwgNTQsIDIxNiwgMjQ3LCAKKyAgICAyMjUsIDExOSwgNTQsIDIxNSwgNzMsIDIyNSwgMTE5LCA1NCwgMTIzLCAyNDAsIDIxMCwgMjI1LCAxMTksIDU0LCAxMDUsIAorICAgIDIyNSwgMTE5LCA1NCwgMTU4LCAyMjUsIDExOSwgMjExLCAyMDksIDIyMCwgMTM3LCAyMzIsIDU5LCAxLCA2MSwgMjMyLCA1OSwgCisgICAgMSwgMjUzLCAxNTgsIDIzMiwgNTksIDEsIDI0MywgMjAyLCAyMzIsIDU5LCAxLCAyNDksIDYwLCAyMzIsIDU5LCAxLCA3NSwgCisgICAgMjMyLCA1OSwgMSwgMjE0LCAxMDUsIDIzMiwgNTksIDEsIDczLCAyMzIsIDU5LCAxLCAyMTEsIDExNywgMjMyLCA1OSwgMSwgCisgICAgMjM1LCAyMywgMjMyLCA1OSwgMSwgMTU2LCAyMzIsIDU5LCAxLCAxOTMsIDIzMiwgNTksIDEsIDIzMCwgMjUsIDIzMiwgNTksIAorICAgIDEsIDc2LCAyMzIsIDU5LCAxLCAxNTMsIDIzMiwgNTksIDEsIDIxOCwgMjI2LCAyMzIsIDU5LCAxLCAyMTcsIDE1MiwgMjMyLCAKKyAgICA1OSwgMSwgNzAsIDIzMiwgNTksIDEsIDI0NSwgNiwgMjMyLCA1OSwgMSwgMjI0LCA5NiwgMjMyLCA1OSwgMSwgMjIyLCA5MSwgCisgICAgMjMyLCA1OSwgMSwgMjE1LCAxNTksIDIzMiwgNTksIDEsIDI1NCwgMTIzLCAyMzIsIDU5LCAxLCAyNDUsIDE1MCwgMjMyLCAKKyAgICA1OSwgMSwgMjMyLCA2MiwgMjMyLCA1OSwgMSwgMjI4LCAxMTEsIDIzMiwgNTksIDEsIDI1MSwgNjYsIDIzMiwgNTksIDIxNSwgCisgICAgMjIyLCA3OCwgMjMxLCA0OCwgMjQxLCAxNzQsIDEsIDYxLCAyMzEsIDQ4LCAyNDEsIDE3NCwgMSwgNzUsIDIzMSwgNDgsIAorICAgIDI0MSwgMTc0LCAxLCA3MywgMjMxLCA0OCwgMjQxLCAxNzQsIDEsIDc2LCAyMzEsIDQ4LCAyNDEsIDE3NCwgMSwgMTkxLCAKKyAgICAyMzEsIDQ4LCAyNDEsIDE3NCwgMSwgMjEyLCA2NSwgMjMxLCA0OCwgMjQxLCAxNzQsIDEsIDI1MiwgMTkxLCAyMzEsIDQ4LCAKKyAgICAyNDEsIDE3NCwgMSwgMjUyLCAxOTAsIDIzMSwgNDgsIDI0MSwgMTc0LCAxLCAxOTAsIDIzMSwgNDgsIDI0MSwgMTc0LCAxLCAKKyAgICAxODQsIDIzMSwgNDgsIDI0MSwgMTc0LCAxLCAxOTcsIDIzMSwgNDgsIDI0MSwgMTc0LCAxLCAyMjksIDIyOCwgMjMxLCA0OCwgCisgICAgMjQxLCAxNzQsIDEsIDIyOSwgMTA3LCAyMzEsIDQ4LCAyNDEsIDE3NCwgMSwgMjI5LCAxMDYsIDIzMSwgNDgsIDI0MSwgMTc0LCAKKyAgICAxLCAyMDUsIDIzMSwgNDgsIDI0MSwgMTc0LCAxLCAyMjMsIDE4NywgMjMxLCA0OCwgMjQxLCAxNzQsIDEsIDIzMywgMTM1LCAKKyAgICAyMzEsIDQ4LCAyNDEsIDE3NCwgMSwgMjM0LCAxMzIsIDIzMSwgNDgsIDI0MSwgMTc0LCAxLCAyNDEsIDE4OSwgMjMxLCA0OCwgCisgICAgMjQxLCAxNzQsIDEsIDIwNiwgMjMxLCA0OCwgMjQxLCAxNzQsIDEsIDIyMiwgMzMsIDIzMSwgNDgsIDI0MSwgMTc0LCAxLCAKKyAgICAyMjEsIDE4MSwgMjMxLCA0OCwgMjQxLCAxNzQsIDEsIDE3NiwgMjMxLCA0OCwgMjQxLCAxNzQsIDEsIDIyNCwgODgsIDIzMSwgCisgICAgNDgsIDI0MSwgMTc0LCAxLCAyMTcsIDEwNSwgMjMxLCA0OCwgMjQxLCAxNzQsIDEsIDIxNywgMTA0LCAyMzEsIDQ4LCAyNDEsIAorICAgIDE3NCwgMSwgMjE3LCAyMiwgMjMxLCA0OCwgMjQxLCAxNzQsIDEsIDIxNywgMjEsIDIzMSwgNDgsIDI0MSwgMTc0LCAxLCAKKyAgICAxMTEsIDIzMSwgNDgsIDI0MSwgMTc0LCAxLCAyNDgsIDIyMSwgMjMxLCA0OCwgMjQxLCAxNzQsIDE2LCAyMTMsIDE3MCwgCisgICAgMjMxLCA0OCwgMjQxLCAxNzQsIDE2LCAyMTMsIDE2OSwgMjMxLCA0OCwgMjQ5LCA5NCwgMSwgNjEsIDIzMSwgNDgsIDI0OSwgCisgICAgOTQsIDEsIDc1LCAyMzEsIDQ4LCAyNDksIDk0LCAxLCA3MywgMjMxLCA0OCwgMjQ5LCA5NCwgMSwgNzYsIDIzMSwgNDgsIAorICAgIDI0OSwgOTQsIDEsIDE5MSwgMjMxLCA0OCwgMjQ5LCA5NCwgMSwgMjEyLCA2NSwgMjMxLCA0OCwgMjQ5LCA5NCwgMSwgMjUyLCAKKyAgICAxOTEsIDIzMSwgNDgsIDI0OSwgOTQsIDEsIDE5MCwgMjMxLCA0OCwgMjQ5LCA5NCwgMSwgMTg0LCAyMzEsIDQ4LCAyNDksIAorICAgIDk0LCAxLCAxOTcsIDIzMSwgNDgsIDI0OSwgOTQsIDEsIDIyOSwgMTA3LCAyMzEsIDQ4LCAyNDksIDk0LCAxLCAyMDUsIDIzMSwgCisgICAgNDgsIDI0OSwgOTQsIDEsIDIzMywgMTM1LCAyMzEsIDQ4LCAyNDksIDk0LCAxLCAyMzQsIDEzMiwgMjMxLCA0OCwgMjQ5LCAKKyAgICA5NCwgMSwgMjQxLCAxODksIDIzMSwgNDgsIDI0OSwgOTQsIDEsIDIwNiwgMjMxLCA0OCwgMjQ5LCA5NCwgMSwgMjU0LCAyMywgCisgICAgMjA2LCAyMzEsIDQ4LCAyNDksIDk0LCAxLCAyMjEsIDE4MSwgMjMxLCA0OCwgMjQ5LCA5NCwgMSwgMTc2LCAyMzEsIDQ4LCAKKyAgICAyNDksIDk0LCAxLCAyMjQsIDg4LCAyMzEsIDQ4LCAyNDksIDk0LCAxLCAyMTcsIDEwNSwgMjMxLCA0OCwgMjQ5LCA5NCwgMSwgCisgICAgMjE3LCAyMiwgMjMxLCA0OCwgMjQ5LCA5NCwgMSwgMTExLCAyMzEsIDQ4LCAyNDksIDk0LCAxLCAyNDgsIDIyMSwgMjMxLCAKKyAgICA0OCwgMjQ5LCA5NCwgMjMyLCAxNDUsIDIyMiwgMjE3LCAyMzEsIDQ4LCAyNDksIDk0LCAyMzIsIDE0NSwgMjM2LCA2LCAyMzQsIAorICAgIDEyMCwgMSwgNjEsIDIzNCwgMTIwLCAyNSwgNSwgNzMsIDIzNCwgMTIwLCAyNSwgNSwgNzAsIDIzNCwgMTIwLCAyNSwgNSwgCisgICAgMTQ5LCAxNTMsIDIzNCwgMTIwLCAyNSwgNSwgNzUsIDIzNCwgMTIwLCAyNSwgNSwgNzYsIDIzNCwgMTIwLCAyNSwgMjMzLCAKKyAgICAyMywgNzgsIDIzNCwgMTIwLCA1LCA1MiwgMjIyLCAyMzQsIDUxLCAyMzQsIDEyMCwgNSwgMjU0LCA3NSwgMjM0LCAxMjAsIDUsIAorICAgIDIxMywgMTQ3LCAyMzQsIDEyMCwgMSwgMTc2LCAyMzQsIDEyMCwgMSwgMjM0LCAxMzIsIDIzNCwgMTIwLCAxLCAyNDMsIDEzNSwgCisgICAgMjM0LCAxMjAsIDEsIDI0MiwgMjQ5LCAyMzQsIDEyMCwgMSwgMjUxLCAzMywgMjM0LCAxMjAsIDEsIDI1MCwgMTU3LCAyMzQsIAorICAgIDEyMCwgMSwgMjM1LCAxNDEsIDIzNCwgMTIwLCAxLCAyMjcsIDE2NSwgMjM0LCAxMjAsIDEsIDIxNSwgMTU2LCAyMzQsIDEyMCwgCisgICAgMSwgMjE1LCAxNDQsIDIzNCwgMTIwLCAxLCAyNDgsIDEzNSwgMjM0LCAxMjAsIDEsIDI0OCwgMTE5LCAyMzQsIDEyMCwgMSwgCisgICAgMjI4LCAxMTAsIDIzNCwgMTIwLCAxLCAyMTcsIDEwNSwgMjM0LCAxMjAsIDEsIDIxNiwgMjA4LCAyMzQsIDEyMCwgMSwgMjQ4LCAKKyAgICAyMjEsIDIzNCwgMTIwLCAxLCAyNDgsIDI1LCAyMzQsIDEyMCwgMSwgMTk3LCAyMzQsIDEyMCwgMSwgMTkwLCAyMzQsIDEyMCwgCisgICAgMSwgMjI1LCAxNDcsIDIzNCwgMTIwLCAxLCAyNTIsIDE5MSwgMjM0LCAxMjAsIDEsIDI1MiwgMTgsIDIzNCwgMTIwLCAxLCAKKyAgICAxODQsIDIzNCwgMTIwLCAxLCAxOTEsIDIzNCwgMTIwLCAxLCAyMDUsIDIzNCwgMTIwLCAxLCAyMzMsIDEzNSwgMjM0LCAxMjAsIAorICAgIDEsIDIxNCwgMjcsIDIzNCwgMTIwLCAxLCAyMjAsIDEwMiwgMjM0LCAxMjAsIDEsIDIxOCwgMjIzLCAyMzQsIDEyMCwgMSwgCisgICAgMjA2LCAyMzQsIDEyMCwgMSwgMjEwLCAxMTYsIDIzNCwgMTIwLCAxLCAxNjIsIDIzNCwgMTIwLCAxLCAyMzQsIDQ2LCAyMzQsIAorICAgIDEyMCwgMSwgMjE1LCAxMjQsIDIzNCwgMTIwLCA1LCAyNTIsIDE0MSwgNDgsIDIzNCwgMTIwLCA1LCAyNTAsIDIyMSwgMjM0LCAKKyAgICAxMjAsIDUsIDU5LCA1MSwgMjM0LCAxMjAsIDIxMywgMTUyLCAyMzQsIDEyMCwgMjEsIDExMCwgMjM0LCAxMjAsIDIxLCAxMDUsIAorICAgIDIzNCwgMTIwLCAyMSwgMTU4LCAyMzQsIDEyMCwgMjEsIDE2MSwgMjM0LCAxMjAsIDU0LCAyMTYsIDI0NywgMjM0LCAxMjAsIAorICAgIDU0LCAyMTUsIDczLCAyMzQsIDEyMCwgNTQsIDEyMywgMjQwLCAyMTAsIDIzNCwgMTIwLCA1NCwgMTIzLCAyMTYsIDE0NywgCisgICAgMjM0LCAxMjAsIDIyNCwgMTQxLCAyNDcsIDEyMCwgMjM0LCAxMjAsIDIyNCwgMTQxLCA0LCAyNTAsIDM1LCAyMzQsIDEyMCwgCisgICAgMjI0LCAxNDEsIDI1MCwgMzUsIDIzNCwgMTIwLCAyMjQsIDE0MSwgMjQ5LCAxMzcsIDEzMCwgMjM0LCAxMjAsIDIyNCwgMTQxLCAKKyAgICAyMzEsIDE4MCwgMjM0LCAxMjAsIDIyNCwgMTQxLCAyMzIsIDExNSwgMjM0LCAxMjAsIDIyNCwgMTQxLCAyNDgsIDE3OCwgCisgICAgMjM0LCAxMjAsIDIyNCwgMTQxLCA1MiwgMjQ4LCAxNzgsIDIzNCwgMTIwLCAyMjQsIDE0MSwgMjMyLCAyMDcsIDU1LCAyMTksIAorICAgIDI4LCAyNTQsIDM4LCAxLCAyNDEsIDIzOCwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDEsIDIzMywgOTMsIDU1LCAyMTksIDI4LCAKKyAgICAyNTQsIDM4LCAxLCAyNDEsIDE5NSwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDEsIDIzMSwgNjUsIDU1LCAyMTksIDI4LCAyNTQsIAorICAgIDM4LCAxLCAyMjQsIDM0LCA1NSwgMjE5LCAyOCwgMjU0LCAzOCwgMSwgMjEyLCAzMCwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIAorICAgIDEsIDIyMCwgMjAsIDU1LCAyMTksIDI4LCAyNTQsIDM4LCAxLCAyMjMsIDY3LCA1NSwgMjE5LCAyOCwgMjU0LCAzOCwgMSwgCisgICAgMjUyLCAyNSwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDEsIDIxNywgMzYsIDU1LCAyMTksIDI4LCAyNTQsIDM4LCAxLCAyMjEsIAorICAgIDIyNiwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDEsIDIzNCwgMjI1LCA1NSwgMjE5LCAyOCwgMjU0LCAzOCwgMSwgMjI3LCAKKyAgICAxOTQsIDU1LCAyMTksIDI4LCAyNTQsIDM4LCAxLCAyMzQsIDExNiwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDEsIDIyMiwgMjQsIAorICAgIDU1LCAyMTksIDI4LCAyNTQsIDM4LCAxLCAyMjEsIDI0OSwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDEsIDI0NCwgMTU0LCA1NSwgCisgICAgMjE5LCAyOCwgMjU0LCAzOCwgMSwgMjU0LCAxNzAsIDU1LCAyMTksIDI4LCAyNTQsIDM4LCAxLCAyNTMsIDE2MSwgNTUsIAorICAgIDIxOSwgMjgsIDI1NCwgMzgsIDEsIDI0OCwgMjIsIDU1LCAyMTksIDI4LCAyNTQsIDM4LCAxLCAyNDIsIDIwMSwgNTUsIDIxOSwgCisgICAgMjgsIDI1NCwgMzgsIDEsIDI0OCwgMTg4LCA1NSwgMjE5LCAyOCwgMjU0LCAzOCwgMSwgMjQyLCAyMzgsIDU1LCAyMTksIDI4LCAKKyAgICAyNTQsIDM4LCAxLCAyMTYsIDIyNiwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDEsIDIxMCwgOTYsIDU1LCAyMTksIDI4LCAyNTQsIAorICAgIDM4LCAxLCAyNDgsIDE5LCA1NSwgMjE5LCAyOCwgMjU0LCAzOCwgMSwgMjEwLCAyMzIsIDU1LCAyMTksIDI4LCAyNTQsIDM4LCAKKyAgICAxLCAyMTYsIDE5NywgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDEsIDIxNiwgMTc4LCA1NSwgMjE5LCAyOCwgMjU0LCAzOCwgNTQsIAorICAgIDExMCwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDU0LCAyNDQsIDExNCwgNTUsIDIxOSwgMjgsIDI1NCwgMzgsIDEzMiwgMjM1LCAKKyAgICAyMzgsIDI1MywgMTcyLCAxLCA2MSwgMjUzLCAxNzIsIDEsIDI1NSwgNzMsIDI1MywgMTcyLCAxLCAyNTQsIDczLCAyNTMsIAorICAgIDE3MiwgMSwgMjU1LCAzMiwgMjUzLCAxNzIsIDEsIDI1NCwgMTIzLCAyNTMsIDE3MiwgMSwgMjU1LCAzMywgMjUzLCAxNzIsIAorICAgIDEsIDI1NCwgMjQzLCAyNTMsIDE3MiwgMSwgMjU0LCAyMzksIDI1MywgMTcyLCAxLCA3NSwgMjUzLCAxNzIsIDEsIDI0NSwgCisgICAgMjA5LCAyNTMsIDE3MiwgMSwgNzYsIDI1MywgMTcyLCAxLCAyMjYsIDE4MywgMjUzLCAxNzIsIDEsIDczLCAyNTMsIDE3MiwgCisgICAgMSwgMjM2LCAzMywgMjUzLCAxNzIsIDEsIDcwLCAyNTMsIDE3MiwgMSwgMjE0LCAxMTgsIDI1MywgMTcyLCAxLCAyMzQsIAorICAgIDE4MiwgMjUzLCAxNzIsIDEsIDIxMSwgMTYyLCAyNTMsIDE3MiwgMSwgMjExLCAxMjgsIDI1MywgMTcyLCAxLCAyMTEsIDEzNywgCisgICAgMjUzLCAxNzIsIDEsIDI0MywgNjIsIDI1MywgMTcyLCAxLCAyNDMsIDI0LCAyNTMsIDE3MiwgMSwgMjQyLCAyMzYsIDI1MywgCisgICAgMTcyLCAxLCAyNTAsIDE5MCwgMjUzLCAxNzIsIDEsIDIzNSwgMTI2LCAyNTMsIDE3MiwgMSwgMjE3LCAyMiwgMjUzLCAxNzIsIAorICAgIDEsIDIxNiwgMTk1LCAyNTMsIDE3MiwgMSwgMjQ4LCA5MCwgMjUzLCAxNzIsIDEsIDI0OCwgMTcsIDI1MywgMTcyLCAxLCAKKyAgICAyMTUsIDE1MSwgMjUzLCAxNzIsIDEsIDIyNSwgMjIxLCAyNTMsIDE3MiwgMSwgMjQ0LCAxNTQsIDI1MywgMTcyLCAxLCAyNTIsIAorICAgIDc1LCAyNTMsIDE3MiwgMSwgMjUyLCAxNCwgMjUzLCAxNzIsIDEsIDIyOSwgNjQsIDI1MywgMTcyLCAxLCAyMjgsIDIzOSwgCisgICAgMjUzLCAxNzIsIDEsIDIyOCwgMjQwLCAyNTMsIDE3MiwgMSwgMjI5LCAxMDcsIDI1MywgMTcyLCAxLCAyMjcsIDE1NiwgMjUzLCAKKyAgICAxNzIsIDEsIDIyOCwgMTA1LCAyNTMsIDE3MiwgMSwgMjMxLCA5MSwgMjUzLCAxNzIsIDEsIDI0MSwgMTE2LCAyNTMsIDE3MiwgCisgICAgMSwgMjEwLCAxNjYsIDI1MywgMTcyLCAxLCAyMTEsIDQ3LCAyNTMsIDE3MiwgMSwgMjEzLCAyNTUsIDI1MywgMTcyLCAxLCAKKyAgICAyMjMsIDEyOCwgMjUzLCAxNzIsIDEsIDIzMywgNTgsIDI1MywgMTcyLCAxLCAyMjEsIDE4MSwgMjUzLCAxNzIsIDEsIDIxMCwgCisgICAgOTQsIDI1MywgMTcyLCAxLCAyMjAsIDYzLCAyNTMsIDE3MiwgMSwgMjEwLCA3NCwgMjUzLCAxNzIsIDEsIDIxOSwgMTk4LCAKKyAgICAyNTMsIDE3MiwgMSwgMjE4LCAxOTMsIDI1MywgMTcyLCAxLCAyNDEsIDIzOCwgMjUzLCAxNzIsIDI1NSwgMjEsIDc4LCAyMTYsIAorICAgIDc5LCAxMTMsIDE3MCwgMTE3LCAxMjMsIDU5LCAyMjQsIDE0MCwgNCwgMTEzLCAxNzAsIDExNywgMTIzLCA1OSwgMjI0LCAKKyAgICAxNDAsIDIzMywgODUsIDExMywgMTcwLCAxMTcsIDEyMywgNTksIDIyNCwgMTQwLCAyMzMsIDg1LCAxMjMsIDU5LCAxMTcsIAorICAgIDExMywgMTcwLCAyMjQsIDE0MCwgMjMzLCA4NSwgMTEzLCAyMjIsIDIzMiwgMTE3LCAxMjMsIDIyMiwgMjM0LCAyMjQsIDE0MCwgCisgICAgMjMzLCA4NSwgMTIzLCAyMjIsIDIzNCwgMTE3LCAxMTMsIDIyMiwgMjMyLCAyMjQsIDE0MCwgMjM1LCAyMTgsIDIyNSwgMjU0LCAKKyAgICAxLCAyNTQsIDE2OCwgMjM1LCAyMTgsIDIyNSwgMjU0LCAxLCAyNTIsIDI1LCAyMzUsIDIxOCwgMjI1LCAyNTQsIDEsIDI0MiwgCisgICAgMjAxLCAyMzUsIDIxOCwgMjI1LCAyNTQsIDEsIDI0OCwgMTg4LCAyMzUsIDIxOCwgMjI1LCAyNTQsIDEsIDI0MSwgMjM4LCAKKyAgICAyMzUsIDIxOCwgMjI1LCAyNTQsIDEsIDIxMiwgMzAsIDIzNSwgMjE4LCAyMjUsIDI1NCwgMSwgMjEwLCA5NywgMjM1LCAyMTgsIAorICAgIDIyNSwgMjU0LCAxLCAyNDEsIDE5NSwgMjM1LCAyMTgsIDIyNSwgMjU0LCAxLCAyMTYsIDIyNiwgMjM1LCAyMTgsIDIyNSwgCisgICAgMjU0LCAxLCAyMTAsIDIzMiwgMjM1LCAyMTgsIDIyNSwgMjU0LCAxLCAyMzQsIDIyNSwgMjM1LCAyMTgsIDIyNSwgMjU0LCAxLCAKKyAgICAyMzMsIDkzLCAyMzUsIDIxOCwgMjI1LCAyNTQsIDEsIDIzMSwgNjUsIDIzNSwgMjE4LCAyMjUsIDI1NCwgMSwgMjI3LCAxOTQsIAorICAgIDIzNSwgMjE4LCAyMjUsIDI1NCwgMSwgMjIxLCAyNDksIDIzNSwgMjE4LCAyMjUsIDI1NCwgMSwgMjUzLCAxNjIsIDIzNSwgCisgICAgMjE4LCAyMjUsIDI1NCwgMSwgMjI1LCAyMjEsIDIzNSwgMjE4LCAyMjUsIDI1NCwgMSwgMjIyLCAyNCwgMjM1LCAyMTgsIAorICAgIDIyNSwgMjU0LCAxLCAyMjQsIDM0LCAyMzUsIDIxOCwgMjI1LCAyNTQsIDEsIDIyMywgNjcsIDIzNSwgMjE4LCAyMjUsIDI1NCwgCisgICAgMSwgMjIwLCAyMCwgMjM1LCAyMTgsIDIyNSwgMjU0LCAxLCAyMTcsIDM2LCAyMzUsIDIxOCwgMjI1LCAyNTQsIDU0LCAxMTAsIAorICAgIDIzNSwgMjE4LCAyMjUsIDI1NCwgNTQsIDEwNSwgMjM1LCAyMTgsIDIyNSwgMjU0LCA1NCwgMTU4LCAyMzUsIDIxOCwgMjI1LCAKKyAgICAyNTQsIDU0LCAxNjEsIDIzNSwgMjE4LCAyMjUsIDI1NCwgNTQsIDIxNiwgMjQ3LCAyMzUsIDIxOCwgMjI1LCAyNTQsIDU0LCAKKyAgICAyMTUsIDczLCAyMzUsIDIxOCwgMjI1LCAyNTQsIDU0LCAxMjMsIDI0MCwgMjEwLCAyMzUsIDIxOCwgMjI1LCAyNTQsIDU0LCAKKyAgICAxMjMsIDIxNiwgMTQ3LCAyMzUsIDIxOCwgMjI2LCA3MiwgMSwgMjU0LCAxNjgsIDIzNSwgMjE4LCAyMjYsIDcyLCAxLCAyNTIsIAorICAgIDI1LCAyMzUsIDIxOCwgMjI2LCA3MiwgMSwgMjQyLCAyMDEsIDIzNSwgMjE4LCAyMjYsIDcyLCAxLCAyNDgsIDE4OCwgMjM1LCAKKyAgICAyMTgsIDIyNiwgNzIsIDEsIDI0MSwgMjM4LCAyMzUsIDIxOCwgMjI2LCA3MiwgMSwgMjEyLCAyOSwgMjM1LCAyMTgsIDIyNiwgCisgICAgNzIsIDEsIDIxMCwgOTcsIDIzNSwgMjE4LCAyMjYsIDcyLCAxLCAyNDEsIDE5NSwgMjM1LCAyMTgsIDIyNiwgNzIsIDEsIAorICAgIDIxNiwgMjI2LCAyMzUsIDIxOCwgMjI2LCA3MiwgMSwgMjEwLCAyMzIsIDIzNSwgMjE4LCAyMjYsIDcyLCAxLCAyMzQsIDIyNSwgCisgICAgMjM1LCAyMTgsIDIyNiwgNzIsIDEsIDIzMywgOTMsIDIzNSwgMjE4LCAyMjYsIDcyLCAxLCAyMzEsIDY0LCAyMzUsIDIxOCwgCisgICAgMjI2LCA3MiwgMSwgMjI3LCAxOTQsIDIzNSwgMjE4LCAyMjYsIDcyLCAxLCAyMjEsIDI0OSwgMjM1LCAyMTgsIDIyNiwgNzIsIAorICAgIDEsIDIyNSwgMjIxLCAyMzUsIDIxOCwgMjI2LCA3MiwgMSwgMjIyLCAyNCwgMjM1LCAyMTgsIDIyNiwgNzIsIDEsIDIyMCwgCisgICAgMjAsIDIzNSwgMjE4LCAyMjYsIDcyLCAxLCAyMTcsIDM2LCAyMzUsIDIxOCwgMjI2LCA3MiwgNTQsIDExMCwgMjM1LCAyMTgsIAorICAgIDIyNiwgNzIsIDU0LCAxMDUsIDIzNSwgMjE4LCAyMjYsIDcyLCA1NCwgMTU4LCAyMzUsIDIxOCwgMjI2LCA3MiwgNTQsIDE2MSwgCisgICAgMjM1LCAyMTgsIDIyNiwgNzIsIDU0LCAyMTYsIDI0NywgMjM1LCAyMTgsIDIyNiwgNzIsIDU0LCAyMTUsIDczLCAyMzUsIAorICAgIDIxOCwgMjI2LCA3MiwgNTQsIDEyMywgMjQwLCAyMTAsIDIzNSwgMjE4LCAyMjYsIDcyLCA1NCwgMTIzLCAyMTYsIDE0NywgCisgICAgNTUsIDIwMSwgMSwgMjI2LCAxNDksIDYxLCA1NSwgMjAxLCAxLCAyMTEsIDM3LCA2MSwgNTUsIDIwMSwgMSwgMjExLCAzNywgCisgICAgMjU0LCAyNDMsIDU1LCAyMDEsIDEsIDIyNiwgMTQ5LCA3MywgNTUsIDIwMSwgMSwgMjExLCAzNywgNzMsIDU1LCAyMDEsIDEsIAorICAgIDIxMSwgMzcsIDc1LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgNzYsIDU1LCAyMDEsIDEsIDIyNiwgMTQ5LCAyMjYsIDIzNCwgCisgICAgNTUsIDIwMSwgMSwgMjExLCAzNywgMjI2LCAyMzQsIDU1LCAyMDEsIDEsIDIyNiwgMTQ5LCAyNTUsIDI1LCA1NSwgMjAxLCAxLCAKKyAgICAyMTEsIDM3LCAyNTUsIDI1LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjU0LCAyNDIsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIAorICAgIDI1NCwgMjQyLCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjU0LCAyMTYsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1NCwgMjE2LCAKKyAgICA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjU0LCAyMzcsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1NCwgMjM3LCA1NSwgMjAxLCAKKyAgICAxLCAyMjYsIDE0OSwgMjU0LCAyNTUsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1NCwgMjU1LCA1NSwgMjAxLCAxLCAyMjYsIAorICAgIDE0OSwgMjU0LCAyNDEsIDU1LCAyMDEsIDEsIDIyNiwgMTQ5LCAyNDUsIDEyLCA1NSwgMjAxLCAxLCAyMTEsIDM3LCAyNDUsIAorICAgIDEyLCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjUzLCAxNjcsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1MywgMTY3LCA1NSwgCisgICAgMjAxLCAxLCAyMjYsIDE0OSwgMjU0LCAyMjQsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1NCwgMjI0LCA1NSwgMjAxLCAxLCAKKyAgICAyMjYsIDE0OSwgMjU0LCAyMzUsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1NCwgMjM1LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgCisgICAgMjI2LCAyMzMsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDIyNiwgMjMzLCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjU0LCAxNzgsIAorICAgIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1NCwgMTc4LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjU0LCAyMzQsIDU1LCAyMDEsIAorICAgIDEsIDIyNiwgMTQ5LCAyNDUsIDE2MSwgNTUsIDIwMSwgMSwgMjI2LCAxNDksIDI0NSwgMTU5LCA1NSwgMjAxLCAxLCAyMjYsIAorICAgIDE0OSwgMjU0LCAxMjMsIDU1LCAyMDEsIDEsIDIyNiwgMTQ5LCAyNTQsIDIzMiwgNTUsIDIwMSwgMSwgMjExLCAzNywgMjU0LCAKKyAgICAyMzIsIDU1LCAyMDEsIDEsIDIyNiwgMTQ5LCAyNDUsIDEzMSwgNTUsIDIwMSwgMSwgMjExLCAzNywgMjQ1LCAxMzEsIDU1LCAKKyAgICAyMDEsIDEsIDIyNiwgMTQ5LCAyNDUsIDE0NywgNTUsIDIwMSwgMSwgMjExLCAzNywgMjQ1LCAxNDcsIDU1LCAyMDEsIDEsIAorICAgIDIyNiwgMTQ5LCAyNDUsIDExOCwgNTUsIDIwMSwgMSwgMjExLCAzNywgMjQ1LCAxMTgsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIAorICAgIDI1NCwgMTE1LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjQ1LCAxMzgsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1NCwgMjMxLCAKKyAgICA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjQ1LCAxMDgsIDU1LCAyMDEsIDEsIDIyNiwgMTQ5LCAyMjYsIDE3NSwgNTUsIDIwMSwgCisgICAgMSwgMjI2LCAxNDksIDI0MCwgMTEzLCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjQ1LCAyMTUsIDU1LCAyMDEsIDEsIDIxMSwgCisgICAgMzcsIDI0NSwgMjE1LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjU0LCA0NSwgNTUsIDIwMSwgMSwgMjExLCAzNywgMjU0LCAKKyAgICA0NSwgNTUsIDIwMSwgMSwgMjI2LCAxNDksIDIzNSwgMTgxLCA1NSwgMjAxLCAxLCAyMTEsIDM3LCAyMzUsIDE4MSwgNTUsIAorICAgIDIwMSwgMSwgMjI2LCAxNDksIDIyNiwgMTU5LCA1NSwgMjAxLCAxLCAyMTEsIDM3LCAyMjYsIDE1OSwgNTUsIDIwMSwgMSwgCisgICAgMjI2LCAxNDksIDI1NCwgNDEsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1NCwgNDEsIDU1LCAyMDEsIDEsIDIyNiwgMTQ5LCAKKyAgICAyNTQsIDIzMCwgNTUsIDIwMSwgMSwgMjI2LCAxNDksIDI1MywgMjM3LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjU0LCAyMjgsIAorICAgIDU1LCAyMDEsIDEsIDIyNiwgMTQ5LCAyNTMsIDIzMSwgNTUsIDIwMSwgMSwgMjExLCAzNywgMjUzLCAyMzEsIDU1LCAyMDEsIAorICAgIDEsIDIyNiwgMTQ5LCAyNDUsIDc1LCA1NSwgMjAxLCAxLCAyMTEsIDM3LCAyNDUsIDc1LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgCisgICAgMjUzLCAyMDYsIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1MywgMjA2LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjU0LCAyMjUsIAorICAgIDU1LCAyMDEsIDEsIDIxMSwgMzcsIDI1NCwgMjI1LCA1NSwgMjAxLCAxLCAyMjYsIDE0OSwgMjI2LCAxNDAsIDU1LCAyMDEsIAorICAgIDEsIDIyNiwgMTQ5LCAyNTIsIDEyNSwgMjIyLCAxMjcsIDIxLCAxMTAsIDIyMiwgMTI3LCAyMSwgMTA1LCAyMjIsIDEyNywgCisgICAgMjEsIDE1OCwgMjIyLCAxMjcsIDIxLCAxNjEsIDIyMiwgMTI3LCAyMSwgMTg5LCAyMjIsIDEyNywgMjEsIDE5NCwgMjIyLCAKKyAgICAxMjcsIDIxLCAxOTgsIDIyMiwgMTI3LCAyMSwgMTk1LCAyMjIsIDEyNywgMjEsIDIwMCwgMjIyLCAxMjcsIDU0LCAyMTYsIAorICAgIDI0NywgMjIyLCAxMjcsIDU0LCAyMTUsIDczLCAyMjIsIDEyNywgNTQsIDIxNiwgMTYyLCAyMjIsIDEyNywgNTQsIDI0NCwgCisgICAgMTUsIDIyMiwgMTI3LCA1NCwgMjQ0LCAxMTQsIDIyMiwgMTI3LCA1NCwgMjE5LCAxMTEsIDIyMiwgMTI3LCA1NCwgMjIwLCAKKyAgICAxMTYsIDIyMiwgMTI3LCA1NCwgMjQ1LCAxODQsIDIyMiwgMTI3LCA1NCwgMjI4LCAxOTUsIDIyMiwgMTI3LCA1NCwgMTIzLCAKKyAgICAyNDAsIDIxMCwgMjIyLCAxMjcsIDU0LCAxMTMsIDI0MCwgMjEwLCAyMjIsIDEyNywgNTQsIDEzNCwgMjQwLCAyMTAsIDIyMiwgCisgICAgMTI3LCA1NCwgMjQ0LCAxMSwgMjQwLCAyMTAsIDIyMiwgMTI3LCA1NCwgMjQ0LCA4MSwgMjQwLCAyMTAsIDIyMiwgMTI3LCAKKyAgICA1NCwgMjE5LCAxMjUsIDI0MCwgMjEwLCAyMjIsIDEyNywgNTQsIDIyMCwgMTIyLCAyNDAsIDIxMCwgMjIyLCAxMjcsIDU0LCAKKyAgICAyNDUsIDE5MywgMjQwLCAyMTAsIDIyMiwgMTI3LCA1NCwgMjI4LCAyMDAsIDI0MCwgMjEwLCAyMjIsIDEyNywgMjQ0LCAyLCAKKyAgICAxMjMsIDI0MiwgMjcsIDIyMiwgMTI3LCAyNDQsIDIsIDEyMywgMjI0LCAyMSwgMjIyLCAxMjcsIDI0NCwgMiwgMTIzLCAyMTYsIAorICAgIDE2OCwgMjIyLCAxMjcsIDI0NCwgMiwgMTEzLCAyMTYsIDE2NiwgMTE4LCA1LCAyNTAsIDI1NSwgMTE4LCA1LCAyNTQsIDc1LCAKKyAgICAxMTgsIDUsIDIxMywgMTQ3LCAxMTgsIDUsIDIzNSwgMTAyLCAxMTgsIDUsIDIxNCwgMTYxLCAxMTgsIDEsIDYxLCAxMTgsIDEsIAorICAgIDI1NSwgNzMsIDExOCwgMSwgNzMsIDExOCwgMSwgMjM2LCAzMywgMTE4LCAxLCA3MCwgMTE4LCAxLCAyMTQsIDExOCwgMTE4LCAKKyAgICAxLCAxNDksIDE1MywgMTE4LCAxLCAxNDksIDIyMiwgMTgwLCAxMTgsIDEsIDE0OSwgMTU2LCAxMTgsIDEsIDE0OSwgMjMyLCAKKyAgICAxODUsIDExOCwgMSwgNzUsIDExOCwgMSwgMjU0LCAyMDEsIDExOCwgMSwgNzYsIDExOCwgMSwgMjUzLCAxOTIsIDExOCwgMSwgCisgICAgMTc2LCAxMTgsIDEsIDIzNCwgMTMyLCAxMTgsIDEsIDI0MywgMTM1LCAxMTgsIDEsIDI0MiwgMjQ5LCAxMTgsIDEsIDIyOSwgCisgICAgNzcsIDExOCwgMSwgMjUxLCAzMywgMTE4LCAxLCAyNTAsIDE1NywgMTE4LCAxLCAyMzUsIDE0MSwgMTE4LCAxLCAyMzUsIAorICAgIDExNCwgMTE4LCAxLCAyMjcsIDE2NSwgMTE4LCAxLCAyMTUsIDE1NiwgMTE4LCAxLCAyMTUsIDE0NCwgMTE4LCAxLCAyNDgsIAorICAgIDEzNSwgMTE4LCAxLCAyNDgsIDExOSwgMTE4LCAxLCAyMjgsIDExMCwgMTE4LCAxLCAyMTcsIDEwNSwgMTE4LCAxLCAyMTYsIAorICAgIDIwOCwgMTE4LCAxLCAyNDgsIDIyMSwgMTE4LCAxLCAyNDgsIDI1LCAxMTgsIDEsIDE5NywgMTE4LCAxLCAxOTAsIDExOCwgMSwgCisgICAgMjI1LCAxNDcsIDExOCwgMSwgMjUyLCAxOTEsIDExOCwgMSwgMjUyLCAxOCwgMTE4LCAxLCAxODQsIDExOCwgMSwgMTkxLCAKKyAgICAxMTgsIDEsIDIwNSwgMTE4LCAxLCAyMzMsIDEzNSwgMTE4LCAxLCAyMTQsIDI3LCAxMTgsIDEsIDIyMCwgMTAyLCAxMTgsIDEsIAorICAgIDIxOCwgMjIzLCAxMTgsIDEsIDIwNiwgMTE4LCAxLCAxNjIsIDExOCwgMSwgMjMyLCAxODQsIDExOCwgMSwgNTUsIDM2LCAKKyAgICAyMzIsIDE3NSwgMTE4LCAxLCA1NSwgMzYsIDIyMiwgMTc5LCAxMTgsIDEsIDU1LCAzNiwgMjI4LCA5MiwgMTE4LCAyNSwgNSwgCisgICAgMjU1LCA3MywgMTE4LCAyNSwgNSwgMjUyLCAxNSwgMjU1LCA3MywgMTE4LCAyNSwgNSwgNzMsIDExOCwgMjUsIDUsIDIzNiwgCisgICAgMzMsIDExOCwgMjUsIDUsIDcwLCAxMTgsIDI1LCA1LCAyMTQsIDExOCwgMTE4LCAyNSwgNSwgMTQ5LCAxNTMsIDExOCwgMjUsIAorICAgIDUsIDE0OSwgMjIyLCAxODAsIDExOCwgMjUsIDUsIDE0OSwgMTU2LCAxMTgsIDI1LCA1LCAxNDksIDIzMiwgMTg1LCAxMTgsIAorICAgIDI1LCA1LCA3NSwgMTE4LCAyNSwgNSwgMjU0LCAyMDEsIDExOCwgMjUsIDUsIDc2LCAxMTgsIDI1LCA1LCAyNTMsIDE5MiwgCisgICAgMTE4LCAyMTMsIDE1MiwgMTE4LCAyNDgsIDE3OCwgMTE4LCA1MiwgMjQ4LCAxNzgsIDExOCwgMjI0LCAxNDEsIDI0NywgMTIwLCAKKyAgICAxMTgsIDIyNCwgMTQxLCA1MiwgMjQ3LCAxMjAsIDExOCwgMjI0LCAxNDEsIDIzMiwgMjEzLCAxMTgsIDIyNCwgMTQxLCAyNDksIAorICAgIDEzNywgMTMwLCAxMTgsIDIyNCwgMTQxLCAyMzIsIDExNSwgMTE4LCA1NCwgMTEwLCAxMTgsIDU0LCAxMDUsIDExOCwgNTQsIAorICAgIDE1OCwgMTE4LCA1NCwgMTYxLCAxMTgsIDU0LCAxODksIDExOCwgNTQsIDE5NCwgMTE4LCA1NCwgMTk4LCAxMTgsIDU0LCAKKyAgICAxOTUsIDExOCwgNTQsIDIwMCwgMTE4LCA1NCwgMjE2LCAyNDcsIDExOCwgNTQsIDIxNSwgNzMsIDExOCwgNTQsIDIxNiwgCisgICAgMTYyLCAxMTgsIDU0LCAyNDQsIDE1LCAxMTgsIDU0LCAyNDQsIDExNCwgMTE4LCA1NCwgMjE5LCAxMTEsIDExOCwgNTQsIAorICAgIDIyMCwgMTE2LCAxMTgsIDU0LCAyNDUsIDE4NCwgMTE4LCA1NCwgMjI4LCAxOTUsIDExOCwgNTQsIDEyMywgMjQwLCAyMTAsIAorICAgIDExOCwgNTQsIDEyMywgMjE2LCAxNDcsIDExOCwgMjEsIDIxMCwgODYsIDExOCwgMjEsIDExMCwgMTE4LCAyMSwgMTA1LCAKKyAgICAxMTgsIDIxLCAxNTgsIDExOCwgMjEsIDE2MSwgMTE4LCAyMSwgMTg5LCAxMTgsIDIxLCAxOTQsIDExOCwgMjEsIDE5OCwgCisgICAgMTE4LCAyMSwgMTk1LCAxMTgsIDIxLCAyMDAsIDIzNCwgMjQ0LCA1LCAyNTAsIDI1NSwgMjM0LCAyNDQsIDUsIDI1NCwgNzUsIAorICAgIDIzNCwgMjQ0LCA1LCAyMTMsIDE0NywgMjM0LCAyNDQsIDEsIDYxLCAyMzQsIDI0NCwgMSwgMjU1LCA3MywgMjM0LCAyNDQsIAorICAgIDEsIDczLCAyMzQsIDI0NCwgMSwgMjM2LCAzMywgMjM0LCAyNDQsIDEsIDcwLCAyMzQsIDI0NCwgMSwgMjE0LCAxMTgsIDIzNCwgCisgICAgMjQ0LCAxLCA3NSwgMjM0LCAyNDQsIDEsIDI1NCwgMjAxLCAyMzQsIDI0NCwgMSwgNzYsIDIzNCwgMjQ0LCAxLCAyNTMsIAorICAgIDE5MiwgMjM0LCAyNDQsIDEsIDE3NiwgMjM0LCAyNDQsIDEsIDIzNCwgMTMyLCAyMzQsIDI0NCwgMSwgMjQzLCAxMzUsIDIzNCwgCisgICAgMjQ0LCAxLCAyNDIsIDI0OSwgMjM0LCAyNDQsIDEsIDIyOSwgNzcsIDIzNCwgMjQ0LCAxLCAyNTEsIDMzLCAyMzQsIDI0NCwgCisgICAgMSwgMjUwLCAxNTcsIDIzNCwgMjQ0LCAxLCAyMzUsIDE0MSwgMjM0LCAyNDQsIDEsIDIzNSwgMTE0LCAyMzQsIDI0NCwgMSwgCisgICAgMjI3LCAxNjUsIDIzNCwgMjQ0LCAxLCAyMTUsIDE1NiwgMjM0LCAyNDQsIDEsIDIxNSwgMTQ0LCAyMzQsIDI0NCwgMSwgMjQ4LCAKKyAgICAxMzUsIDIzNCwgMjQ0LCAxLCAyNDgsIDEyNCwgMjM0LCAyNDQsIDEsIDI0OCwgMTE5LCAyMzQsIDI0NCwgMSwgMjIzLCAzOSwgCisgICAgMjM0LCAyNDQsIDEsIDIyOCwgMTEwLCAyMzQsIDI0NCwgMSwgMjE3LCAxMDUsIDIzNCwgMjQ0LCAxLCAyMTYsIDIwOCwgMjM0LCAKKyAgICAyNDQsIDEsIDI0OCwgMjIxLCAyMzQsIDI0NCwgMSwgMjQ4LCAyNSwgMjM0LCAyNDQsIDEsIDE5NywgMjM0LCAyNDQsIDEsIAorICAgIDE5MCwgMjM0LCAyNDQsIDEsIDIyNSwgMTQ3LCAyMzQsIDI0NCwgMSwgMjUyLCAxOTEsIDIzNCwgMjQ0LCAxLCAyNTIsIDE4LCAKKyAgICAyMzQsIDI0NCwgMSwgMTg0LCAyMzQsIDI0NCwgMSwgMTkxLCAyMzQsIDI0NCwgMSwgMjA1LCAyMzQsIDI0NCwgMSwgMjMzLCAKKyAgICAxMzUsIDIzNCwgMjQ0LCAxLCAyMTQsIDI3LCAyMzQsIDI0NCwgMSwgMjIwLCAxMDIsIDIzNCwgMjQ0LCAxLCAyMTgsIDIyMywgCisgICAgMjM0LCAyNDQsIDEsIDIwNiwgMjM0LCAyNDQsIDEsIDE2MiwgMjM0LCAyNDQsIDI1LCA1LCAyNTUsIDczLCAyMzQsIDI0NCwgCisgICAgMjUsIDUsIDczLCAyMzQsIDI0NCwgMjUsIDUsIDIzNiwgMzMsIDIzNCwgMjQ0LCAyNSwgNSwgNzAsIDIzNCwgMjQ0LCAyNSwgCisgICAgNSwgMjE0LCAxMTgsIDIzNCwgMjQ0LCAyNSwgNSwgNzUsIDIzNCwgMjQ0LCAyNSwgNSwgMjU0LCAyMDEsIDIzNCwgMjQ0LCAKKyAgICAyNSwgNSwgNzYsIDIzNCwgMjQ0LCAyNSwgNSwgMjUzLCAxOTIsIDIzNCwgMjQ0LCA1LCAyMTMsIDE1MiwgMjM0LCAyNDQsIDUsIAorICAgIDIyNywgMjA1LCAyMzQsIDI0NCwgMjU1LCAyMSwgNTAsIDIzNCwgMjQ0LCAyNDUsIDEyMSwgNTAsIDIzNCwgMjQ0LCA1NCwgCisgICAgNTAsIDIzNCwgMjQ0LCAyMjEsIDE3MywgNzgsIDIzNCwgMjQ0LCA1MiwgMjIxLCAxNzMsIDc4LCAyMzQsIDI0NCwgMjQ4LCAKKyAgICAxNzgsIDIzNCwgMjQ0LCA1MiwgMjQ4LCAxNzgsIDIxOSwgMzYsIDIxOSwgNDQsIDEsIDIyMiwgMTgsIDIxOSwgMzYsIDIxOSwgCisgICAgNDQsIDEsIDIxNywgODAsIDIxOSwgMzYsIDIxOSwgNDQsIDEsIDI1MiwgMTY4LCAyMTksIDM2LCAyMTksIDQ0LCAxLCAyNTEsIAorICAgIDIzLCAyMTksIDM2LCAyMTksIDQ0LCAxLCAyNDgsIDIwMywgMjE5LCAzNiwgMjE5LCA0NCwgMSwgMjQzLCAxMjAsIDIxOSwgCisgICAgMzYsIDIxOSwgNDQsIDEsIDIzMSwgMjEwLCAyMTksIDM2LCAyMTksIDQ0LCAxLCAyMjksIDc0LCAyMTksIDM2LCAyMTksIDQ0LCAKKyAgICAxLCAyMzMsIDExMiwgMjE5LCAzNiwgMjE5LCA0NCwgMSwgMjI5LCAyMTMsIDIxOSwgMzYsIDIxOSwgNDQsIDEsIDIxNCwgMjQsIAorICAgIDIxOSwgMzYsIDIxOSwgNDQsIDEsIDIyNiwgNzMsIDIxOSwgMzYsIDIxOSwgNDQsIDEsIDIxMSwgODQsIDIxOSwgMzYsIDIxOSwgCisgICAgNDQsIDEsIDIyMywgMTY4LCAyMTksIDM2LCAyMTksIDQ0LCAxLCAyNDIsIDM3LCAyMTksIDM2LCAyMTksIDQ0LCAxLCAyMzQsIAorICAgIDI0OCwgMjE5LCAzNiwgMjE5LCA0NCwgMSwgMjM1LCAxMzYsIDIxOSwgMzYsIDIxOSwgNDQsIDEsIDIyNywgMTYyLCAyMTksIAorICAgIDM2LCAyMTksIDQ0LCAxLCAyNTQsIDIwOSwgMjE5LCAzNiwgMjE5LCA0NCwgMSwgMjQ1LCAyMDcsIDIxOSwgMzYsIDIxOSwgCisgICAgNDQsIDEsIDIzNiwgMzQsIDIxOSwgMzYsIDIxOSwgNDQsIDEsIDIxNCwgMjA4LCAyMTksIDM2LCAyMTksIDQ0LCAxLCAyMjYsIAorICAgIDIyMiwgMjE5LCAzNiwgMjE5LCA0NCwgMSwgMjQ1LCAxOTcsIDIxOSwgMzYsIDIxOSwgNDQsIDEsIDIzMSwgMjIzLCAyMTksIAorICAgIDM2LCAyMTksIDQ0LCAyMSwgMjEwLCA4NiwgMjE5LCAzNiwgMjE5LCA0NCwgMjEsIDExMCwgMjE5LCAzNiwgMjE5LCA0NCwgCisgICAgMjEsIDEwNSwgMjE5LCAzNiwgMjE5LCA0NCwgMjEsIDE1OCwgMjE5LCAzNiwgMjE5LCA0NCwgMjEsIDE2MSwgMjE5LCAzNiwgCisgICAgMjE5LCA0NCwgMjEsIDE4OSwgMjE5LCAzNiwgMjE5LCA0NCwgMjEsIDE5NCwgMjE5LCAzNiwgMjE5LCA0NCwgMjEsIDE5OCwgCisgICAgMjE5LCAzNiwgMjE5LCA0NCwgMjEsIDE5NSwgMjE5LCAzNiwgMjE5LCA0NCwgMjEsIDIwMCwgMjUwLCAxNTEsIDUsIDI1MCwgCisgICAgMjU1LCAyNTAsIDE1MSwgNSwgMjU0LCA3NSwgMjUwLCAxNTEsIDUsIDIxMywgMTQ3LCAyNTAsIDE1MSwgMSwgMjU1LCA3MywgCisgICAgMjUwLCAxNTEsIDEsIDczLCAyNTAsIDE1MSwgMSwgNzAsIDI1MCwgMTUxLCAxLCA3NSwgMjUwLCAxNTEsIDEsIDIzNSwgMTAsIAorICAgIDI1MCwgMTUxLCAxLCAyMzQsIDEzMSwgMjUwLCAxNTEsIDEsIDI0MywgMTMyLCAyNTAsIDE1MSwgMSwgMjQyLCAyNDgsIDI1MCwgCisgICAgMTUxLCAxLCAyMjksIDc2LCAyNTAsIDE1MSwgMSwgMjUxLCAzMiwgMjUwLCAxNTEsIDEsIDI1MCwgMTU2LCAyNTAsIDE1MSwgCisgICAgMSwgMjM1LCAxNDAsIDI1MCwgMTUxLCAxLCAyMzUsIDExMywgMjUwLCAxNTEsIDEsIDIyNywgMTY0LCAyNTAsIDE1MSwgMSwgCisgICAgMjE1LCAxNTUsIDI1MCwgMTUxLCAxLCAyMTUsIDE0MywgMjUwLCAxNTEsIDEsIDI0OCwgMTM0LCAyNTAsIDE1MSwgMSwgMjQ4LCAKKyAgICAxMTgsIDI1MCwgMTUxLCAxLCAyMjgsIDEwOSwgMjUwLCAxNTEsIDEsIDIxNywgMTAxLCAyNTAsIDE1MSwgMSwgMjE2LCAyMDcsIAorICAgIDI1MCwgMTUxLCAxLCAyNDgsIDIyMCwgMjUwLCAxNTEsIDEsIDI0OCwgMjQsIDI1MCwgMTUxLCAxLCAyMjksIDIyNSwgMjUwLCAKKyAgICAxNTEsIDEsIDIyNiwgODksIDI1MCwgMTUxLCAxLCAyMjUsIDE0NiwgMjUwLCAxNTEsIDEsIDI1MiwgMTg5LCAyNTAsIDE1MSwgCisgICAgMSwgMjUyLCAxNywgMjUwLCAxNTEsIDEsIDIzMSwgMjM3LCAyNTAsIDE1MSwgMSwgMjEwLCAxNjcsIDI1MCwgMTUxLCAxLCAKKyAgICAyMTEsIDEwMywgMjUwLCAxNTEsIDEsIDIyMywgMTg0LCAyNTAsIDE1MSwgMSwgMjMzLCAxMzQsIDI1MCwgMTUxLCAxLCAyMTIsIAorICAgIDY0LCAyNTAsIDE1MSwgMSwgMjIyLCAzMSwgMjUwLCAxNTEsIDEsIDI0MiwgNDYsIDI1MCwgMTUxLCAyNSwgNSwgNjEsIDI1MCwgCisgICAgMTUxLCAyNSwgNSwgNzMsIDI1MCwgMTUxLCAyNSwgNSwgMjM2LCAzMywgMjUwLCAxNTEsIDI1LCA1LCA3MCwgMjUwLCAxNTEsIAorICAgIDI1LCA1LCAyMTQsIDExOCwgMjUwLCAxNTEsIDI1LCA1LCA3NSwgMjUwLCAxNTEsIDI1LCA1LCAyNTQsIDIwMSwgMjUwLCAKKyAgICAxNTEsIDI1LCA1LCA3NiwgMjUwLCAxNTEsIDI1LCA1LCAyNTMsIDE5MiwgMjUwLCAxNTEsIDI1LCA1LCAyMjYsIDIxOSwgCisgICAgMjUwLCAxNTEsIDE0NCwgNzgsIDI1MCwgMTUxLCAyNTMsIDE5MywgNzgsIDI1MCwgMTUxLCAyMTMsIDE1MiwgMjUwLCAxNTEsIAorICAgIDIzMSwgMjM1LCAyNTAsIDE1MSwgMjEsIDIxMCwgODYsIDI1MCwgMTUxLCAyMSwgMTEwLCAyNTAsIDE1MSwgMjEsIDEwNSwgCisgICAgMjUwLCAxNTEsIDIxLCAxNTgsIDI1MCwgMTUxLCAyMSwgMTYxLCAyNTAsIDE1MSwgMjEsIDE4OSwgMjUwLCAxNTEsIDIxLCAKKyAgICAxOTQsIDI1MCwgMTUxLCAyMSwgMTk4LCAyNTAsIDE1MSwgMjEsIDE5NSwgMjUwLCAxNTEsIDIxLCAyMDAsIDI1MCwgMTUxLCAKKyAgICAyMjEsIDE3MywgNzgsIDI1MCwgMTUxLCAyNDgsIDE3OCwgMjUwLCAxNTEsIDUyLCAyNDgsIDE3OCwgMjUwLCAxNTEsIDIyNCwgCisgICAgMTMsIDc4LCAxNzQsIDUsIDI1MCwgMjU1LCAxNzQsIDUsIDI1NCwgNzUsIDE3NCwgNSwgMjEzLCAxNDcsIDE3NCwgMSwgNjEsIAorICAgIDE3NCwgMSwgMjU1LCA3MywgMTc0LCAxLCA3MywgMTc0LCAxLCAyMzYsIDMzLCAxNzQsIDEsIDcwLCAxNzQsIDEsIDIxNCwgCisgICAgMTE4LCAxNzQsIDEsIDE0OSwgMTUzLCAxNzQsIDEsIDE0OSwgMjIyLCAxODAsIDE3NCwgMSwgMTQ5LCAxNTYsIDE3NCwgMSwgCisgICAgMTQ5LCAyMzIsIDE4NSwgMTc0LCAxLCA3NSwgMTc0LCAxLCAyNTQsIDIwMSwgMTc0LCAxLCA3NiwgMTc0LCAxLCAyNTMsIAorICAgIDE5MiwgMTc0LCAxLCAxNzYsIDE3NCwgMSwgMjM0LCAxMzIsIDE3NCwgMSwgMjQzLCAxMzUsIDE3NCwgMSwgMjQyLCAyNDksIAorICAgIDE3NCwgMSwgMjI5LCA3NywgMTc0LCAxLCAyNTEsIDMzLCAxNzQsIDEsIDI1MCwgMTU3LCAxNzQsIDEsIDIzNSwgMTQxLCAKKyAgICAxNzQsIDEsIDIzNSwgMTE0LCAxNzQsIDEsIDIyNywgMTY1LCAxNzQsIDEsIDIxNSwgMTU2LCAxNzQsIDEsIDIxNSwgMTQ0LCAKKyAgICAxNzQsIDEsIDI0OCwgMTM1LCAxNzQsIDEsIDI0OCwgMTE5LCAxNzQsIDEsIDIyOCwgMTEwLCAxNzQsIDEsIDIxNywgMTA1LCAKKyAgICAxNzQsIDEsIDIxNiwgMjA4LCAxNzQsIDEsIDI0OCwgMjIxLCAxNzQsIDEsIDI0OCwgMjUsIDE3NCwgMSwgMTk3LCAxNzQsIDEsIAorICAgIDE5MCwgMTc0LCAxLCAyMjUsIDE0NywgMTc0LCAxLCAyNTIsIDE5MSwgMTc0LCAxLCAyNTIsIDE4LCAxNzQsIDEsIDE4NCwgCisgICAgMTc0LCAxLCAxOTEsIDE3NCwgMSwgMjA1LCAxNzQsIDEsIDIzMywgMTM1LCAxNzQsIDEsIDIzMiwgMTg0LCAxNzQsIDEsIAorICAgIDIxNCwgMjcsIDE3NCwgMSwgMjIwLCAxMDIsIDE3NCwgMSwgMjE4LCAyMjMsIDE3NCwgMSwgMjA2LCAxNzQsIDEsIDE2MiwgCisgICAgMTc0LCAyNSwgNSwgMjU1LCA3MywgMTc0LCAyNSwgNSwgNzMsIDE3NCwgMjUsIDUsIDIzNiwgMzMsIDE3NCwgMjUsIDUsIDcwLCAKKyAgICAxNzQsIDI1LCA1LCAyMTQsIDExOCwgMTc0LCAyNSwgNSwgMTQ5LCAxNTMsIDE3NCwgMjUsIDUsIDE0OSwgMjIyLCAxODAsIAorICAgIDE3NCwgMjUsIDUsIDE0OSwgMTU2LCAxNzQsIDI1LCA1LCAxNDksIDIzMiwgMTg1LCAxNzQsIDI1LCA1LCA3NSwgMTc0LCAyNSwgCisgICAgNSwgMjU0LCAyMDEsIDE3NCwgMjUsIDUsIDc2LCAxNzQsIDI1LCA1LCAyNTMsIDE5MiwgMTc0LCA1LCAyMTMsIDE1MiwgMTc0LCAKKyAgICA1LCAyNTMsIDE3NSwgMTc0LCA1LCAyMzUsIDEwMiwgMTc0LCA1LCAyMTQsIDE2MSwgMTc0LCAyMjYsIDIwNCwgMTc0LCAyNDgsIAorICAgIDE3OCwgMTc0LCA1MiwgMjQ4LCAxNzgsIDE3NCwgMjU1LCAyMSwgNTAsIDE3NCwgMjIwLCAxMzcsIDE3NCwgMjEsIDIxMCwgCisgICAgODYsIDE3NCwgMjEsIDExMCwgMTc0LCAyMSwgMTA1LCAxNzQsIDIxLCAxNTgsIDE3NCwgMjEsIDE2MSwgMTc0LCAyMSwgMTg5LCAKKyAgICAxNzQsIDIxLCAxOTQsIDE3NCwgMjEsIDE5OCwgMTc0LCAyMSwgMTk1LCAxNzQsIDIxLCAyMDAsIDIxNywgNjksIDEsIDYxLCAKKyAgICAyMTcsIDY5LCAxLCAyNTUsIDczLCAyMTcsIDY5LCAxLCA3MywgMjE3LCA2OSwgMSwgMjM2LCAzMywgMjE3LCA2OSwgMSwgNzAsIAorICAgIDIxNywgNjksIDEsIDIxNCwgMTE4LCAyMTcsIDY5LCAxLCA3NSwgMjE3LCA2OSwgMSwgMjU0LCAyMDEsIDIxNywgNjksIDEsIAorICAgIDc2LCAyMTcsIDY5LCAxLCAyNTMsIDE5MiwgMjE3LCA2OSwgMSwgMTc2LCAyMTcsIDY5LCAxLCAyMzQsIDEzMiwgMjE3LCA2OSwgCisgICAgMSwgMjQzLCAxMzUsIDIxNywgNjksIDEsIDI0MiwgMjQ5LCAyMTcsIDY5LCAxLCAyMjksIDc3LCAyMTcsIDY5LCAxLCAyNTEsIAorICAgIDMzLCAyMTcsIDY5LCAxLCAyNTAsIDE1NywgMjE3LCA2OSwgMSwgMjM1LCAxNDEsIDIxNywgNjksIDEsIDIzNSwgMTE0LCAKKyAgICAyMTcsIDY5LCAxLCAyMjcsIDE2NSwgMjE3LCA2OSwgMSwgMjE1LCAxNTYsIDIxNywgNjksIDEsIDIxNSwgMTQ0LCAyMTcsIAorICAgIDY5LCAxLCAyNDgsIDEzNSwgMjE3LCA2OSwgMSwgMjQ4LCAxMTksIDIxNywgNjksIDEsIDIyOCwgMTEwLCAyMTcsIDY5LCAxLCAKKyAgICAyMTcsIDEwNSwgMjE3LCA2OSwgMSwgMjE2LCAyMDgsIDIxNywgNjksIDEsIDI0OCwgMjIxLCAyMTcsIDY5LCAxLCAyNDgsIAorICAgIDI1LCAyMTcsIDY5LCAxLCAxOTcsIDIxNywgNjksIDEsIDE5MCwgMjE3LCA2OSwgMSwgMjI1LCAxNDcsIDIxNywgNjksIDEsIAorICAgIDI1MiwgMTkxLCAyMTcsIDY5LCAxLCAyNTIsIDE4LCAyMTcsIDY5LCAxLCAxODQsIDIxNywgNjksIDEsIDE5MSwgMjE3LCA2OSwgCisgICAgMSwgMjA1LCAyMTcsIDY5LCAxLCAyMzMsIDEzNSwgMjE3LCA2OSwgMSwgMjE0LCAyNywgMjE3LCA2OSwgMSwgMjIwLCAxMDIsIAorICAgIDIxNywgNjksIDEsIDIwNiwgMjE3LCA2OSwgMSwgMTYyLCAyMTcsIDY5LCAxLCAyMjIsIDE3OSwgMjE3LCA2OSwgNSwgMjU0LCAKKyAgICA3NSwgMjE3LCA2OSwgNSwgMjEzLCAxNDcsIDIxNywgNjksIDI1LCA1LCAyNTUsIDczLCAyMTcsIDY5LCAyNSwgNSwgNzMsIAorICAgIDIxNywgNjksIDI1LCA1LCAyMzYsIDMzLCAyMTcsIDY5LCAyNSwgNSwgNzAsIDIxNywgNjksIDI1LCA1LCAyMTQsIDExOCwgCisgICAgMjE3LCA2OSwgMjUsIDUsIDc1LCAyMTcsIDY5LCAyNSwgNSwgMjU0LCAyMDEsIDIxNywgNjksIDI1LCA1LCA3NiwgMjE3LCAKKyAgICA2OSwgMjUsIDUsIDI1MywgMTkyLCAyMTcsIDY5LCA1LCAyMTMsIDE1MiwgMjE3LCA2OSwgNSwgMjI3LCAyMDUsIDIxNywgNjksIAorICAgIDIxLCAyMTAsIDg2LCAyMTcsIDY5LCAyMSwgMTEwLCAyMTcsIDY5LCAyMSwgMTA1LCAyMTcsIDY5LCAyMSwgMTU4LCAyMTcsIAorICAgIDY5LCAyMSwgMTYxLCAyMTcsIDY5LCAyMSwgMTg5LCAyMTcsIDY5LCAyMSwgMTk0LCAyMTcsIDY5LCAyMSwgMTk4LCAyMTcsIAorICAgIDY5LCAyMSwgMTk1LCAyMTcsIDY5LCAyMSwgMjAwLCAxNSwgNSwgNjEsIDE1LCA1LCAxMTUsIDMwLCA2MSwgMTUsIDUsIDExNSwgCisgICAgMzAsIDI1MiwgMTc2LCAxNSwgNSwgMTE1LCAzMCwgMjQzLCAxMDUsIDIxNiwgMjM5LCAxNSwgNSwgMTE1LCAzMCwgMTYyLCAKKyAgICAxNSwgNSwgMTE1LCAzMCwgMjM2LCAzNSwgMTUsIDUsIDExNSwgMzAsIDIzMywgMTE2LCAyNDIsIDk0LCAxNSwgNSwgMTE1LCAKKyAgICAzMCwgMjMwLCA2MSwgMTUsIDUsIDExNSwgMzAsIDIyMiwgMjEsIDE1LCA1LCAyNTUsIDc1LCAxNSwgNSwgMjU1LCAyNSwgMTUsIAorICAgIDUsIDI1NSwgMjYsIDMwLCAyNTMsIDIyOSwgMTUsIDUsIDI1NSwgMjYsIDMwLCAyNDYsIDY3LCAyNDIsIDk0LCAxNSwgNSwgCisgICAgMjU1LCAyNiwgMzAsIDI0MywgMTE4LCAxNSwgNSwgMjU1LCAyNiwgMzAsIDI0MywgMTA1LCAyMTYsIDIzOSwgMTUsIDUsIAorICAgIDI1NSwgMjYsIDMwLCAxNjIsIDE1LCA1LCAyNTUsIDI2LCAzMCwgMjM2LCAzNiwgMjQyLCA5NCwgMTUsIDUsIDI1NSwgMjYsIAorICAgIDMwLCAyMzYsIDksIDE1LCA1LCAyNTUsIDI2LCAzMCwgMjMzLCAxMTcsIDE1LCA1LCAyNTUsIDI2LCAzMCwgMjIwLCA0OCwgCisgICAgMTUsIDUsIDI1NSwgMjYsIDMwLCAxMDQsIDk2LCAxMDQsIDk2LCA3MCwgMTUsIDUsIDI1NSwgMjYsIDI0MiwgOTQsIDE1LCA1LCAKKyAgICAyNTUsIDIzLCAxNSwgNSwgMjU1LCAyNCwgMzAsIDI1MiwgMTYwLCAxNSwgNSwgMjU1LCAyNCwgMzAsIDI0MywgMTA1LCAyMTYsIAorICAgIDIzOSwgMTUsIDUsIDI1NSwgMjQsIDMwLCAyMzEsIDkyLCA5NiwgMjQ1LCAxNTAsIDE1LCA1LCAyNTUsIDI0LCAzMCwgMjIwLCAKKyAgICAxMDAsIDE1LCA1LCAyNTUsIDI0LCAzMCwgMjE3LCA3MiwgMTUsIDUsIDI1NCwgMjU1LCAxNSwgNSwgMjU0LCAxODYsIDE1LCAKKyAgICA1LCAyNTQsIDE4NywgMzAsIDI0NSwgODcsIDE1LCA1LCAyNTQsIDE4NywgMzAsIDIyMCwgMTAsIDk2LCAyNDIsIDE5MCwgMTUsIAorICAgIDUsIDI1NCwgMTc4LCAxNSwgNSwgMjU0LCAxNzksIDMwLCAyNTQsIDE3OCwgMTUsIDUsIDI1NCwgMTc5LCAzMCwgMjQ3LCAKKyAgICAyMTYsIDE1LCA1LCAyNTQsIDE3OSwgMzAsIDI0MiwgMTkwLCAxNSwgNSwgMjU0LCAxNzksIDMwLCAxNjIsIDE1LCA1LCAyNTQsIAorICAgIDE3OSwgMzAsIDIzNCwgMjU1LCAxNSwgNSwgMjU0LCAxNzksIDMwLCAyMzQsIDkyLCAxNSwgNSwgMjU0LCAxNzksIDMwLCAKKyAgICAyMjAsIDYzLCAxNSwgNSwgMjU0LCAxNzksIDMwLCAyMTQsIDEyNiwgMTUsIDUsIDI1NCwgMTc1LCAxNSwgNSwgMjU0LCAxNjgsIAorICAgIDE1LCA1LCAyNTQsIDEzMiwgMTUsIDUsIDI1NCwgMTMzLCAzMCwgMjIwLCA2MywgMTUsIDUsIDI1NCwgMTIzLCAxNSwgNSwgCisgICAgMjU0LCAxMjQsIDExNywgMjU0LCAxMjMsIDE1LCA1LCAyNTQsIDEyNCwgMTM0LCAyMTYsIDg1LCAxNSwgNSwgMjU0LCAxMjQsIAorICAgIDk2LCAyMjksIDIxNywgMjI2LCAxNjQsIDI1NCwgMTI0LCA5NiwgMjI5LCAyMTYsIDE1LCA1LCAyNTQsIDEyNCwgOTYsIDIyOSwgCisgICAgMjE3LCAyMTgsIDIzMywgMTUsIDUsIDI1NCwgOTQsIDE1LCA1LCAyNTQsIDY3LCAxNSwgNSwgMjU0LCAzNSwgMTUsIDUsIAorICAgIDI1NCwgMzYsIDMwLCAyMzMsIDE5NiwgMTUsIDUsIDI1NCwgOCwgMTUsIDUsIDI1MywgMjM2LCAxNSwgNSwgMjUzLCAyMzEsIAorICAgIDE1LCA1LCAyNTMsIDIzMiwgMjEwLCA0MCwgMjE2LCAyMzksIDE1LCA1LCAyNTMsIDIzMiwgMjM1LCAzLCAyMTYsIDIzOSwgCisgICAgMTUsIDUsIDI1MywgMjMyLCAxMTcsIDI1MywgMjMyLCAyMTUsIDExNCwgMTE3LCAyMTUsIDExNCwgMjE1LCAxMTQsIDExNywgCisgICAgMjE1LCAxMTQsIDIyNiwgMjEsIDE1LCA1LCAyNTMsIDIzMiwgMTE3LCAyNTMsIDIzMiwgMTE3LCAyNTMsIDIzMSwgMTUsIDUsIAorICAgIDI1MywgMjMyLCAxMTcsIDI1MywgMjMyLCAxMTcsIDI1MywgMjMyLCAyNDksIDEyNSwgMjUzLCAyMzIsIDExNywgMjUzLCAKKyAgICAyMzIsIDExNywgMjUzLCAyMzEsIDE1LCA1LCAyNTMsIDIyOSwgMTUsIDUsIDI1MywgMjI2LCAxNSwgNSwgMjUyLCAxOTEsIAorICAgIDE1LCA1LCAyNTIsIDE3NiwgMTUsIDUsIDI1MiwgMTcxLCAxNSwgNSwgMjUyLCAxNjcsIDE1LCA1LCAyNTIsIDE2MSwgMTUsIAorICAgIDUsIDI1MiwgMTYyLCAxMTcsIDI1MiwgMTYxLCAxNSwgNSwgMjUyLCAxNjAsIDE1LCA1LCAxMzAsIDE1LCA1LCAyNTIsIDE0MCwgCisgICAgMTUsIDUsIDI1MiwgNiwgMTUsIDUsIDI1MiwgNywgMzAsIDYxLCAxNSwgNSwgMjUyLCA3LCAzMCwgMjQzLCA5NiwgMTUsIDUsIAorICAgIDI1MiwgNywgMzAsIDIzNiwgMzYsIDI0MiwgOTQsIDE1LCA1LCAyNTEsIDEyNSwgMTUsIDUsIDI1MSwgMTI2LCAxMTcsIDI1MSwgCisgICAgMTI2LCAyNTUsIDI1LCAxNSwgNSwgMjUxLCAxMjYsIDExNywgMjUxLCAxMjYsIDIxNCwgMTkwLCAxNSwgNSwgMjUxLCAxMjYsIAorICAgIDI0OSwgMTI1LCAyNTEsIDEyNSwgMTUsIDUsIDI1MSwgMTA5LCAxNSwgNSwgMjUxLCAxMTAsIDExNywgMjUxLCAxMDksIDE1LCAKKyAgICA1LCAyNTEsIDk4LCAxNSwgNSwgMjUxLCA5NywgMTUsIDUsIDI0OCwgMjIxLCAxNSwgNSwgMjQ4LCAyMTIsIDE1LCA1LCAyNDgsIAorICAgIDIxMywgMjM0LCA2NiwgMzAsIDExNSwgOTYsIDIzMSwgMTQ3LCAxNSwgNSwgMjQ4LCAyMTMsIDIzNCwgNjYsIDMwLCAyNTQsIAorICAgIDEzMiwgMTUsIDUsIDI0OCwgMjEzLCAyMzQsIDY2LCAzMCwgMjUyLCAxNjAsIDE1LCA1LCAyNDgsIDIxMywgMjM0LCA2NiwgCisgICAgMzAsIDI1MiwgNiwgMTUsIDUsIDI0OCwgMjEzLCAyMzQsIDY2LCAzMCwgMjQzLCAxMzUsIDE1LCA1LCAyNDgsIDIxMywgMjM0LCAKKyAgICA2NiwgMzAsIDI0MywgMTM2LCA5NiwgMjMxLCAxNDcsIDE1LCA1LCAyNDgsIDIxMywgMjM0LCA2NiwgMzAsIDI0MiwgMjE0LCAKKyAgICAxNSwgNSwgMjQ4LCAyMTMsIDIzNCwgNjYsIDMwLCAyNDIsIDE5NywgMTUsIDUsIDI0OCwgMjEzLCAyMzQsIDY2LCAzMCwgCisgICAgMjQyLCAxMDMsIDE1LCA1LCAyNDgsIDIxMywgMjM0LCA2NiwgMzAsIDE2MiwgMTUsIDUsIDI0OCwgMjEzLCAyMzQsIDY2LCAKKyAgICAzMCwgMjM1LCAxNzksIDE1LCA1LCAyNDgsIDIxMywgMjM0LCA2NiwgMzAsIDIzNSwgMTgwLCA5NiwgMjMyLCA5OCwgMTUsIDUsIAorICAgIDI0OCwgMjEzLCAyMzQsIDY2LCAzMCwgMjM0LCAyNDIsIDE1LCA1LCAyNDgsIDIxMywgMjM0LCA2NiwgMzAsIDIzMywgMTM1LCAKKyAgICAxNSwgNSwgMjQ4LCAyMTMsIDIzNCwgNjYsIDMwLCAyMzIsIDk4LCAxNSwgNSwgMjQ4LCAyMTMsIDIzNCwgNjYsIDMwLCAyMzIsIAorICAgIDk5LCA5NiwgMjMxLCAxNDYsIDE1LCA1LCAyNDgsIDIxMywgMjM0LCA2NiwgMzAsIDIzMiwgODQsIDE1LCA1LCAyNDgsIDIxMywgCisgICAgMjM0LCA2NiwgMzAsIDIyOSwgMTA3LCAxNSwgNSwgMjQ4LCAyMTMsIDIzNCwgNjYsIDMwLCAyMjYsIDIyLCA5NiwgMjI2LCAKKyAgICAyMSwgMTUsIDUsIDI0OCwgMjEzLCAyMzQsIDY2LCAzMCwgMjE5LCAxOTEsIDE1LCA1LCAyNDgsIDIxMywgMjM0LCA2NiwgMzAsIAorICAgIDIxNywgNzIsIDE1LCA1LCAyNDgsIDIxMywgMjM0LCA2NiwgMzAsIDIxNCwgMjMxLCA5NiwgMjQyLCAxOTcsIDE1LCA1LCAKKyAgICAyNDgsIDIxMywgMjM0LCA2NiwgMzAsIDIxNCwgMTI2LCAxNSwgNSwgMjQ4LCAxODcsIDE1LCA1LCAyNDgsIDE2NiwgMTUsIDUsIAorICAgIDI0OCwgMTY1LCAxNSwgNSwgMjQ4LCAxNjQsIDE1LCA1LCAyNDgsIDMsIDE1LCA1LCAyNDcsIDI0MiwgMTUsIDUsIDI0NywgCisgICAgMjE3LCAxNSwgNSwgMjQ3LCAyMTgsIDMwLCAyMjAsIDYzLCAxNSwgNSwgMjQ3LCAyMTYsIDE1LCA1LCAyNDcsIDIwNiwgMTUsIAorICAgIDUsIDI0NywgMjA3LCAyMzQsIDIwOCwgMTA0LCAyNDIsIDk1LCAyNDcsIDE4NywgMTUsIDUsIDI0NywgMTg3LCAxNSwgNSwgCisgICAgMjQ2LCA3OCwgMTUsIDUsIDI0NiwgNzksIDExNywgMjQ2LCA3OCwgMTUsIDUsIDI0NiwgNzksIDI0MiwgOTQsIDE1LCA1LCAKKyAgICAyNDYsIDc5LCAyMjAsIDQ1LCAxNSwgNSwgMjQ2LCA3NiwgMTUsIDUsIDI0NiwgNzcsIDMwLCAyNDUsIDcyLCAxNSwgNSwgCisgICAgMjQ2LCA3NSwgMTUsIDUsIDI0NiwgNzQsIDE1LCA1LCAyNDYsIDczLCAxNSwgNSwgMjQ2LCA3MiwgMTUsIDUsIDI0NiwgNjgsIAorICAgIDE1LCA1LCAyNDYsIDY2LCAxNSwgNSwgMjQ2LCA2NywgMjQyLCA5NCwgMTUsIDUsIDI0NiwgNjcsIDI0MiwgOTUsIDI0MiwgCisgICAgOTQsIDE1LCA1LCAyNDYsIDY1LCAxNSwgNSwgMjQ2LCA1OCwgMTUsIDUsIDc1LCAxNSwgNSwgMTYwLCAzMCwgMjI2LCAyMSwgCisgICAgMTUsIDUsIDE2MCwgMTE3LCAxNjAsIDIyNywgMTk1LCAxMTcsIDIyNywgMTk0LCAxNSwgNSwgMjQ1LCAyMzQsIDE1LCA1LCAKKyAgICAyNDUsIDIzNSwgMzAsIDExNSwgOTYsIDI0MiwgNDksIDk2LCAyNDgsIDIyMSwgMTUsIDUsIDI0NSwgMjM1LCAzMCwgMjQzLCAKKyAgICA5NiwgMTUsIDUsIDI0NSwgMjM1LCAzMCwgMjMwLCAyMzAsIDE1LCA1LCAyNDUsIDIzNSwgMzAsIDIyMiwgOCwgMTUsIDUsIAorICAgIDI0NSwgMjM1LCAzMCwgMjIwLCA2MywgMTUsIDUsIDI0NSwgMjM1LCAzMCwgNzAsIDE1LCA1LCAyNDUsIDIxMSwgMTUsIDUsIAorICAgIDI0NSwgMjAwLCAxNSwgNSwgMjQ1LCAxNzQsIDE1LCA1LCAyNDUsIDE1MCwgMTUsIDUsIDI0NSwgMTUxLCAzMCwgMjQzLCAKKyAgICAxMDQsIDE1LCA1LCAyNDUsIDE1MSwgMzAsIDI0MywgMTA1LCAyMTYsIDIzOSwgMTUsIDUsIDI0NSwgMTUxLCAzMCwgMjMxLCAKKyAgICA5MSwgMTUsIDUsIDI0NSwgMTUxLCAyNDksIDEyNSwgMjQ1LCAxNTAsIDE1LCA1LCAyNDUsIDE1MSwgMjI2LCAxNjQsIDI0NSwgCisgICAgMTUwLCAxNSwgNSwgMjQ1LCAxNTEsIDIxOCwgMjMzLCAxNSwgNSwgMjQ1LCA4OSwgMTUsIDUsIDI0NSwgODcsIDE1LCA1LCAKKyAgICAyNDUsIDcyLCAxNSwgNSwgMjQ1LCAxMCwgMTUsIDUsIDI0NSwgMTEsIDMwLCA2MSwgMTUsIDUsIDI0NSwgMTEsIDMwLCAxMTUsIAorICAgIDk2LCAyMzMsIDEwNCwgMTUsIDUsIDI0NSwgMTEsIDMwLCAxMTUsIDk2LCAyMzMsIDEwNSwgMzAsIDIzMywgMTA0LCAxNSwgNSwgCisgICAgMjQ1LCAxMSwgMzAsIDI1NCwgMTIzLCAxNSwgNSwgMjQ1LCAxMSwgMzAsIDI1MiwgMTc2LCAxNSwgNSwgMjQ1LCAxMSwgMzAsIAorICAgIDI0NiwgNjcsIDI0MiwgOTQsIDE1LCA1LCAyNDUsIDExLCAzMCwgMjQ2LCA2NywgMjQyLCA5NSwgMjQyLCA5NCwgMTUsIDUsIAorICAgIDI0NSwgMTEsIDMwLCAxNjIsIDE1LCA1LCAyNDUsIDExLCAzMCwgMjQyLCA0OSwgMjQyLCA5NCwgMTUsIDUsIDI0NSwgMTEsIAorICAgIDMwLCAyMzYsIDM2LCAyNDIsIDk0LCAxNSwgNSwgMjQ1LCAxMSwgMzAsIDIzNCwgMjA3LCAxNSwgNSwgMjQ1LCAxMSwgMzAsIAorICAgIDIzNCwgMjA4LCAyMTgsIDIzMywgMTUsIDUsIDI0NSwgMTEsIDMwLCAyMzMsIDIxNSwgMTUsIDUsIDI0NSwgMTEsIDMwLCAKKyAgICAyMzMsIDEzNSwgMTUsIDUsIDI0NSwgMTEsIDMwLCAyMzMsIDEwNSwgMzAsIDIzMywgMTA0LCAxNSwgNSwgMjQ1LCAxMSwgMzAsIAorICAgIDIzMiwgMjQxLCAxNSwgNSwgMjQ1LCAxMSwgMzAsIDIzMiwgOTgsIDE1LCA1LCAyNDUsIDExLCAzMCwgMjE0LCAyMzAsIDE1LCAKKyAgICA1LCAyNDUsIDExLCAzMCwgMjE0LCAyMTksIDE1LCA1LCAyNDMsIDEzNSwgMTUsIDUsIDI0MywgMTM2LCAyNDIsIDk0LCAxNSwgCisgICAgNSwgMjQzLCAxMzMsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDExNSwgOTYsIDI0OCwgMjIyLCA5NiwgMTYyLCAxNSwgNSwgMjQzLCAKKyAgICAxMzQsIDMwLCAxMTUsIDk2LCAxNjIsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDExNSwgOTYsIDIzNiwgMzUsIDE1LCA1LCAyNDMsIAorICAgIDEzNCwgMzAsIDI1NSwgMjQsIDIxNiwgMjQwLCA5NiwgMjE3LCA5MywgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjU0LCAxMjMsIAorICAgIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDI1MywgMjMxLCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyNTMsIDIzMCwgOTYsIDI0MywgCisgICAgMTE4LCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyNTIsIDE3NiwgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjUyLCAxNDEsIDk2LCAKKyAgICAyMDUsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDI1MSwgOTgsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDI1MSwgOTksIDk2LCAyMDUsIAorICAgIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDI0OCwgMjIxLCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyNDgsIDMsIDE1LCA1LCAyNDMsIAorICAgIDEzNCwgMzAsIDI0NywgMjE4LCAzMCwgMjIwLCA2MywgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjQ2LCA3NiwgMTUsIDUsIDI0MywgCisgICAgMTM0LCAzMCwgMjQ1LCAxNzQsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDI0NSwgMTc1LCA5NiwgMjMzLCAxMzUsIDE1LCA1LCAKKyAgICAyNDMsIDEzNCwgMzAsIDI0NSwgMTUwLCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyNDUsIDE1MSwgMzAsIDI0MywgMTA1LCAyMTYsIAorICAgIDIzOSwgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjQzLCAxMDUsIDIxNiwgMjM5LCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyNDMsIAorICAgIDk2LCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyNDIsIDIxNCwgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjQyLCAyMTIsIDE1LCA1LCAKKyAgICAyNDMsIDEzNCwgMzAsIDI0MiwgMjEzLCA5NiwgNjEsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDI0MiwgMTk4LCA5NiwgMjE4LCAKKyAgICA4MywgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjQyLCA0OSwgOTYsIDIzMiwgOTksIDk2LCAyNDUsIDcyLCAxNSwgNSwgMjQzLCAKKyAgICAxMzQsIDMwLCAyNDIsIDMwLCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyNDIsIDMxLCA5NiwgMjMzLCAxMzUsIDE1LCA1LCAyNDMsIAorICAgIDEzNCwgMzAsIDI0MSwgMTgxLCA5NiwgMjMyLCAyNDEsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDI0MCwgMjE4LCAxNSwgNSwgCisgICAgMjQzLCAxMzQsIDMwLCAyMzYsIDM2LCAyNDIsIDk0LCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyMzUsIDE2NiwgOTYsIDI0MCwgCisgICAgMjIzLCA5NiwgMjUzLCAyMzEsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDIzNCwgMjQyLCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAKKyAgICAyMzQsIDIwNywgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjM0LCA4OSwgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjM0LCA5MCwgOTYsIAorICAgIDIzMywgMTA0LCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyMzMsIDIxNiwgOTYsIDI1NCwgMTIzLCAxNSwgNSwgMjQzLCAxMzQsIAorICAgIDMwLCAyMzMsIDEzNSwgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjMxLCA5MiwgOTYsIDI0NSwgMTUwLCAxNSwgNSwgMjQzLCAKKyAgICAxMzQsIDMwLCAyMzAsIDIzMCwgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjI3LCAxOTQsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIAorICAgIDIyNywgMTk1LCAxMTcsIDIyNywgMTk0LCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAxOTAsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIAorICAgIDIyMiwgOCwgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjIxLCAyMzEsIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDIyMCwgNjMsIDE1LCAKKyAgICA1LCAyNDMsIDEzNCwgMzAsIDIyMCwgNjQsIDk2LCAyMTUsIDk4LCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyMjAsIDMwLCAxNSwgCisgICAgNSwgMjQzLCAxMzQsIDMwLCAyMTgsIDQzLCAxNSwgNSwgMjQzLCAxMzQsIDMwLCAyMTcsIDcyLCAxNSwgNSwgMjQzLCAxMzQsIAorICAgIDMwLCA3MCwgMTUsIDUsIDI0MywgMTM0LCAzMCwgMjE0LCAyMTksIDE1LCA1LCAyNDMsIDEzNCwgMzAsIDIxNCwgMjIwLCA5NiwgCisgICAgMjQ2LCA3OCwgMTUsIDUsIDI0MywgMTM0LCAxMTcsIDI0MywgMTMzLCAxNSwgNSwgMjQzLCAxMjgsIDE1LCA1LCAyNDMsIAorICAgIDEyOSwgMjQ5LCAxMjUsIDI0MywgMTI4LCAxNSwgNSwgMjQzLCAxMjYsIDE1LCA1LCAyNDMsIDEyNywgMTE3LCAyNDMsIDEyNywgCisgICAgMjQzLCA5NywgMTE3LCAyNDMsIDk2LCAxNSwgNSwgMjQzLCAxMTgsIDE1LCA1LCAyNDMsIDExOSwgMjQzLCAxMjcsIDExNywgCisgICAgMjQzLCAxMjcsIDI0MywgOTcsIDExNywgMjQzLCA5NiwgMTUsIDUsIDI0MywgMTE3LCAxNSwgNSwgMjQzLCAxMTUsIDE1LCA1LCAKKyAgICAyNDMsIDEwNiwgMTUsIDUsIDI0MywgMTA0LCAxNSwgNSwgMjQzLCAxMDUsIDIxNiwgMjM5LCAxNSwgNSwgMjQzLCAxMDUsIAorICAgIDExNywgMjQzLCAxMDQsIDE1LCA1LCAyNDMsIDEwNSwgMjQ5LCAxMjUsIDI0MywgMTA0LCAxNSwgNSwgMjQzLCA5NiwgMTUsIAorICAgIDUsIDI0MywgOTUsIDE1LCA1LCAyNDMsIDkwLCAxNSwgNSwgMjQzLCAzNiwgMTUsIDUsIDI0MywgMzcsIDMwLCAyMzMsIDE5NiwgCisgICAgMTUsIDUsIDI0MiwgMjE0LCAxNSwgNSwgMjQyLCAyMTUsIDMwLCA3NSwgMTUsIDUsIDI0MiwgMjE1LCAzMCwgNzAsIDE1LCA1LCAKKyAgICAyNDIsIDIxNSwgMjQ5LCAxMjUsIDI0MiwgMjE0LCAxNSwgNSwgMjQyLCAyMTIsIDE1LCA1LCAyNDIsIDIxMywgMTE3LCAyNDIsIAorICAgIDIxMiwgMTUsIDUsIDI0MiwgMjEzLCAyNDksIDEyNSwgMjQyLCAyMTIsIDE1LCA1LCAyNDIsIDIwOSwgMTUsIDUsIDI0MiwgCisgICAgMTk3LCAxNSwgNSwgMjQyLCAxOTgsIDI0MiwgOTQsIDE1LCA1LCAyNDIsIDE5NSwgMTUsIDUsIDI0MiwgMTk2LCAzMCwgMTE1LCAKKyAgICA5NiwgMjM2LCAzNSwgMTUsIDUsIDI0MiwgMTk2LCAzMCwgMjQzLCAxMDUsIDIxNiwgMjM5LCAxNSwgNSwgMjQyLCAxOTYsIAorICAgIDMwLCAyMzYsIDM1LCAxNSwgNSwgMjQyLCAxOTYsIDMwLCAyMzIsIDk5LCA5NiwgMjM2LCAzNSwgMTUsIDUsIDI0MiwgMTk2LCAKKyAgICAzMCwgMTkwLCAxNSwgNSwgMjQyLCAxOTIsIDE1LCA1LCAyNDIsIDE5MCwgMTUsIDUsIDI0MiwgMTkxLCAyNDksIDEyNSwgCisgICAgMjQyLCAxOTAsIDE1LCA1LCAyNDIsIDE5MSwgMzAsIDI1MiwgMTc2LCAxNSwgNSwgMjQyLCAxOTEsIDMwLCAyMTcsIDcyLCAKKyAgICAxNSwgNSwgMjQyLCAxOTEsIDIxNiwgMjM5LCAxNSwgNSwgMjQyLCAxMTMsIDE1LCA1LCAyNDIsIDExNCwgMjQ5LCAxMjUsIAorICAgIDI0MiwgMTEzLCAxNSwgNSwgMjQyLCAxMTEsIDE1LCA1LCAyNDIsIDExMiwgMzAsIDIzNCwgMjQyLCAxNSwgNSwgMjQyLCAKKyAgICAxMTIsIDMwLCAyMzQsIDI0MywgMzAsIDIzNiwgMzYsIDI0MiwgOTQsIDE1LCA1LCAyNDIsIDExMiwgMzAsIDIyNywgMTk0LCAKKyAgICAxNSwgNSwgMjQyLCAxMTIsIDMwLCAyMjIsIDksIDk2LCAyMTUsIDExMywgMTUsIDUsIDI0MiwgMTEyLCAyNDIsIDk0LCAxNSwgCisgICAgNSwgMjQyLCAxMDMsIDE1LCA1LCAyNDIsIDEwNCwgMzAsIDExNSwgOTYsIDIzMywgMTk2LCAxNSwgNSwgMjQyLCAxMDQsIDMwLCAKKyAgICAyMzMsIDE5NiwgMTUsIDUsIDI0MiwgMTA0LCAxMTcsIDI0MiwgMTA0LCAyMzIsIDkxLCAxNSwgNSwgMjQyLCA5OCwgMTUsIDUsIAorICAgIDI0MiwgOTYsIDE1LCA1LCAyNDIsIDk3LCAzMCwgMjIwLCA2MywgMTUsIDUsIDI0MiwgODgsIDE1LCA1LCAyNDIsIDg3LCAxNSwgCisgICAgNSwgMjQyLCA4NCwgMTUsIDUsIDI0MiwgODMsIDE1LCA1LCAxNjIsIDE1LCA1LCAyNDIsIDQ5LCAyMTYsIDIzOSwgMTUsIDUsIAorICAgIDI0MiwgNDksIDI0MiwgOTQsIDE1LCA1LCAyNDIsIDMwLCAxNSwgNSwgMjQxLCAxODAsIDE1LCA1LCAyNDEsIDE4MSwgMzAsIAorICAgIDI1MywgMjMxLCAxNSwgNSwgMjQxLCAxODEsIDMwLCAyNTMsIDIyOSwgMTUsIDUsIDI0MSwgMTgxLCAzMCwgMjUyLCAxNzYsIAorICAgIDE1LCA1LCAyNDEsIDE4MSwgMzAsIDI0NywgMTg3LCAxNSwgNSwgMjQxLCAxODEsIDMwLCAyNDMsIDEyNiwgMTUsIDUsIDI0MSwgCisgICAgMTgxLCAzMCwgMjM0LCA4MSwgMTUsIDUsIDI0MSwgMTgxLCAzMCwgMjI3LCAxOTQsIDE1LCA1LCAyNDEsIDE4MSwgMzAsIAorICAgIDIyMCwgNjMsIDE1LCA1LCAyNDEsIDE4MSwgMzAsIDcwLCAxNSwgNSwgMjQwLCAyMjIsIDE1LCA1LCAyNDAsIDIxOCwgMTUsIAorICAgIDUsIDI0MCwgMjE5LCAzMCwgMjU0LCAxMjMsIDE1LCA1LCAyNDAsIDIxOSwgMzAsIDI0MiwgMzAsIDE1LCA1LCAyNDAsIDIxOSwgCisgICAgMzAsIDIzNCwgMjA3LCAxNSwgNSwgMjQwLCAyMTksIDMwLCAyMzIsIDE5NywgMTUsIDUsIDI0MCwgMjE5LCAzMCwgMjE0LCAKKyAgICAyMTksIDE1LCA1LCAyNDAsIDIxNSwgMTUsIDUsIDczLCAxNSwgNSwgMjQwLCAxNTQsIDYxLCAxNSwgNSwgMjQwLCAxMTUsIAorICAgIDE1LCA1LCAyMzYsIDYzLCAxNSwgNSwgMjM2LCA2NCwgMTE3LCAyMzYsIDY0LCAyNTEsIDk4LCAxNSwgNSwgMjM2LCA2NCwgCisgICAgMTE3LCAyMzYsIDY0LCAyMTgsIDIzMywgMTUsIDUsIDIzNiwgMzgsIDE1LCA1LCAyMzYsIDM1LCAxNSwgNSwgMjM2LCAzNiwgCisgICAgMjQ3LCAyNDIsIDE1LCA1LCAyMzYsIDM2LCAyMjMsIDM1LCAxNSwgNSwgMjM2LCAzNiwgMTE3LCAyMzYsIDM2LCAyMjAsIDE0LCAKKyAgICAxMTcsIDIyMCwgMTQsIDIxNCwgMjIwLCAxMTcsIDIxNCwgMjE5LCAxNSwgNSwgMjM2LCAzNiwgMjQyLCA5NCwgMTUsIDUsIAorICAgIDIzNiwgMjcsIDE1LCA1LCAyMzYsIDI4LCAzMCwgMjQzLCAxMDUsIDIxNiwgMjM5LCAxNSwgNSwgMjM2LCAyNiwgMTUsIDUsIAorICAgIDIzNiwgMTYsIDE1LCA1LCAyMzYsIDE3LCAzMCwgMjE3LCA3MiwgMTUsIDUsIDIzNiwgMTcsIDI0OSwgMTI1LCAyMzYsIDE2LCAKKyAgICAxNSwgNSwgMjM2LCAxNywgMjI2LCAxNjQsIDIzNiwgMTYsIDE1LCA1LCAyMzYsIDE3LCAyMTgsIDIzMywgMTUsIDUsIDIzNiwgCisgICAgOSwgMTUsIDUsIDIzNSwgMjU1LCAxNSwgNSwgMjM1LCAxNzksIDE1LCA1LCAyMzUsIDE2NSwgMTUsIDUsIDE3NiwgMTUsIDUsIAorICAgIDIzNSwgMTMsIDMwLCA2MSwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyNTQsIDI1NSwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyNTUsIAorICAgIDAsIDk2LCAyMzMsIDIxNSwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyNTMsIDIyOSwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyNTIsIAorICAgIDE3NiwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyNTIsIDE2MCwgMTUsIDUsIDIzNSwgMTMsIDMwLCAxMzAsIDE1LCA1LCAyMzUsIAorICAgIDEzLCAzMCwgMjUyLCA2LCAxNSwgNSwgMjM1LCAxMywgMzAsIDI0NSwgODcsIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjQ1LCA3MiwgCisgICAgMTUsIDUsIDIzNSwgMTMsIDMwLCAyNDMsIDEzNSwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyNDMsIDExOCwgMTUsIDUsIDIzNSwgCisgICAgMTMsIDMwLCAyNDMsIDEwNSwgMjE2LCAyMzksIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjQzLCA5NiwgMTUsIDUsIDIzNSwgMTMsIAorICAgIDMwLCAyNDMsIDk3LCA5NiwgMjIwLCAxMDEsIDk2LCA2MSwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyNDIsIDIxNCwgMTUsIDUsIAorICAgIDIzNSwgMTMsIDMwLCAyNDIsIDE5NywgMTUsIDUsIDIzNSwgMTMsIDMwLCAyNDIsIDE5MSwgOTYsIDIyMSwgMjMxLCAxNSwgNSwgCisgICAgMjM1LCAxMywgMzAsIDI0MiwgMTkxLCAyNDksIDEyNSwgMjQyLCAxOTAsIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjQyLCAxMTMsIAorICAgIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjQyLCA4NywgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMzYsIDM1LCAxNSwgNSwgMjM1LCAxMywgCisgICAgMzAsIDIzNiwgMTYsIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjM0LCAyNDIsIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjM0LCA5MiwgCisgICAgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMzQsIDg5LCAxNSwgNSwgMjM1LCAxMywgMzAsIDIzMiwgMjQxLCAxNSwgNSwgMjM1LCAKKyAgICAxMywgMzAsIDIzMiwgOTgsIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjMxLCA5MSwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMzEsIAorICAgIDkyLCA5NiwgMjQ2LCA3OCwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMzEsIDkyLCA5NiwgMjQyLCAyMTQsIDE1LCA1LCAyMzUsIAorICAgIDEzLCAzMCwgMjMxLCA5MiwgOTYsIDIxNywgMjIsIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjMwLCAyMzAsIDE1LCA1LCAyMzUsIAorICAgIDEzLCAzMCwgMjMwLCAyMzEsIDk2LCAyMjcsIDE4OSwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMjksIDEwNywgMTUsIDUsIDIzNSwgCisgICAgMTMsIDMwLCAyMjcsIDE5NCwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMjUsIDEwOCwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMjIsIAorICAgIDE0MCwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMDYsIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjIxLCAyMzEsIDE1LCA1LCAyMzUsIAorICAgIDEzLCAzMCwgMjIwLCAxMDIsIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjIwLCA2MywgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMjAsIAorICAgIDMwLCAxNSwgNSwgMjM1LCAxMywgMzAsIDIxOSwgMjI1LCAxNSwgNSwgMjM1LCAxMywgMzAsIDIxOSwgMTgyLCAxNSwgNSwgCisgICAgMjM1LCAxMywgMzAsIDIxOCwgNTEsIDE1LCA1LCAyMzUsIDEzLCAzMCwgMjE3LCA1MCwgMTUsIDUsIDIzNSwgMTMsIDMwLCAKKyAgICA3MCwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMTQsIDIzMCwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMTQsIDIxOSwgMTUsIDUsIAorICAgIDIzNSwgMTMsIDMwLCAyMTQsIDE5MywgMzAsIDE5MCwgMTUsIDUsIDIzNSwgMTMsIDMwLCAyMTQsIDEyNiwgMTUsIDUsIDIzNSwgCisgICAgMTMsIDMwLCAyMTAsIDQ0LCAxNSwgNSwgMjM1LCAxMSwgMTUsIDUsIDIzNSwgMTIsIDI0OSwgMTI1LCAyMzUsIDExLCAxNSwgCisgICAgNSwgMjM1LCA0LCAxNSwgNSwgMjM1LCAxLCAxNSwgNSwgMjM0LCAyNTUsIDE1LCA1LCAyMzQsIDI1NCwgMTUsIDUsIDIzNCwgCisgICAgMjUyLCAxNSwgNSwgMjM0LCAyNTMsIDExNywgMjM0LCAyNTIsIDE1LCA1LCAyMzQsIDI0MiwgMTUsIDUsIDIzNCwgMjQzLCAKKyAgICAzMCwgMjM2LCAzNiwgMjQyLCA5NCwgMTUsIDUsIDIzNCwgMjM4LCAxNSwgNSwgMjM0LCAyMzksIDMwLCAyNTIsIDE3NiwgMTUsIAorICAgIDUsIDIzNCwgMjM5LCAyNDksIDEyNSwgMjM0LCAyMzgsIDE1LCA1LCAyMzQsIDIzNiwgMTUsIDUsIDIzNCwgMjM1LCAxNSwgNSwgCisgICAgMjM0LCAyMDcsIDE1LCA1LCAyMzQsIDIwOCwgMjMzLCAxMTgsIDMwLCAxMDQsIDExNywgMjMzLCAxMTgsIDMwLCA3MCwgMTUsIAorICAgIDUsIDIzNCwgMjA4LCAxMTcsIDIzNCwgMjA4LCAyMzMsIDExOCwgMzAsIDEwNCwgMTE3LCAyMzMsIDExOCwgMzAsIDcwLCAxNSwgCisgICAgNSwgMjM0LCAxNTcsIDE1LCA1LCAyMzQsIDkyLCAxNSwgNSwgMjM0LCA5MywgMzAsIDI1MiwgMTc2LCAxNSwgNSwgMjM0LCAKKyAgICA5MywgMzAsIDcwLCAxNSwgNSwgMjM0LCA5MywgMzAsIDIxNCwgMjE5LCAxNSwgNSwgMjM0LCA4OSwgMTUsIDUsIDIzNCwgODEsIAorICAgIDE1LCA1LCAyMzQsIDY4LCAxNSwgNSwgMjM0LCA2NywgMTUsIDUsIDIzNCwgNjUsIDE1LCA1LCAyMzQsIDY2LCAxMTcsIDIzNCwgCisgICAgNjUsIDE1LCA1LCAyMzMsIDIxNywgMTUsIDUsIDIzMywgMjE4LCAxMTcsIDI0MSwgMTgxLCAzMCwgMjUzLCAyMzAsIDIzMywgCisgICAgMjE4LCAxMTcsIDI0MSwgMTgxLCAzMCwgMjUzLCAyMjksIDE1LCA1LCAyMzMsIDIxNSwgMTUsIDUsIDIzMywgMjEzLCAxNSwgCisgICAgNSwgMjMzLCAyMTQsIDIxNCwgMTIsIDE3LCAxNSwgNSwgMjMzLCAyMTIsIDE1LCA1LCAyMzMsIDIwOSwgMTUsIDUsIDIzMywgCisgICAgMjEwLCAyNDIsIDk0LCAxNSwgNSwgMjMzLCAyMDgsIDE1LCA1LCAyMzMsIDE5NiwgMTUsIDUsIDIzMywgMTk3LCAyMjYsIAorICAgIDE2NCwgMjMzLCAxOTYsIDE1LCA1LCAyMzMsIDE5MSwgMTUsIDUsIDIzMywgMTcyLCAxNSwgNSwgMjMzLCAxMzUsIDE1LCA1LCAKKyAgICAyMzMsIDExNywgMTUsIDUsIDIzMywgMTE4LCAzMCwgNjEsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDExNSwgOTYsIDI0OCwgCisgICAgMjIyLCA5NiwgMTYyLCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAxMTUsIDk2LCAyNDMsIDk2LCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAKKyAgICAxMTUsIDk2LCAyMzMsIDEwNCwgMTUsIDUsIDIzMywgMTE4LCAzMCwgMjU0LCAxNzgsIDE1LCA1LCAyMzMsIDExOCwgMzAsIAorICAgIDI1NCwgMTIzLCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAyNTMsIDIzMiwgMjEwLCA0MCwgMjE2LCAyMzksIDE1LCA1LCAyMzMsIAorICAgIDExOCwgMzAsIDI1MiwgMTc2LCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAyNTIsIDYsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDI0OCwgCisgICAgMTY2LCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAyNDUsIDE1MCwgMTUsIDUsIDIzMywgMTE4LCAzMCwgMjQzLCAxMzUsIDE1LCA1LCAKKyAgICAyMzMsIDExOCwgMzAsIDI0MywgOTYsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDI0MiwgMTAzLCAxNSwgNSwgMjMzLCAxMTgsIAorICAgIDMwLCAyNDIsIDEwNCwgOTYsIDI0MiwgMTAzLCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAxNjIsIDE1LCA1LCAyMzMsIDExOCwgCisgICAgMzAsIDI0MiwgMzAsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDI0MSwgMTgxLCAzMCwgMjI3LCAxOTQsIDE1LCA1LCAyMzMsIAorICAgIDExOCwgMzAsIDIzNiwgMzYsIDI0MiwgOTQsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDIzNiwgMTYsIDE1LCA1LCAyMzMsIDExOCwgCisgICAgMzAsIDIzNiwgMTcsIDk2LCAxNjIsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDIzNiwgMTcsIDk2LCAyMzIsIDk4LCAxNSwgNSwgCisgICAgMjMzLCAxMTgsIDMwLCAyMzQsIDkyLCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAyMzQsIDgxLCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAKKyAgICAyMzMsIDIxNSwgMTUsIDUsIDIzMywgMTE4LCAzMCwgMjMzLCAyMDksIDE1LCA1LCAyMzMsIDExOCwgMzAsIDIzMywgMjEwLCAKKyAgICA5NiwgMjQxLCAxODEsIDk2LCA2MSwgMTUsIDUsIDIzMywgMTE4LCAzMCwgMjMzLCAxMTcsIDE1LCA1LCAyMzMsIDExOCwgMzAsIAorICAgIDIzMiwgMTk3LCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAyMzIsIDk4LCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAyMzIsIDg2LCAxNSwgCisgICAgNSwgMjMzLCAxMTgsIDMwLCAyMzEsIDkxLCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAyMzEsIDkyLCA5NiwgMjQ1LCAxNTAsIDE1LCAKKyAgICA1LCAyMzMsIDExOCwgMzAsIDIzMCwgNjEsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDIyOSwgMTA3LCAxNSwgNSwgMjMzLCAxMTgsIAorICAgIDMwLCAyMjAsIDY0LCA5NiwgMjE4LCA0MywgMTUsIDUsIDIzMywgMTE4LCAzMCwgMjIwLCAxMCwgOTYsIDI0MiwgMTkxLCA5NiwgCisgICAgMjQ1LCA4NywgMTUsIDUsIDIzMywgMTE4LCAzMCwgMjIwLCAxMCwgOTYsIDI0MiwgMTkxLCAyMTYsIDIzOSwgMTUsIDUsIAorICAgIDIzMywgMTE4LCAzMCwgMjE5LCAyMjMsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDIxOSwgMjI0LCA5NiwgMjE5LCAyMjMsIDE1LCAKKyAgICA1LCAyMzMsIDExOCwgMzAsIDIxOCwgNDMsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDIxNywgODQsIDE1LCA1LCAyMzMsIDExOCwgCisgICAgMzAsIDIxNywgNzIsIDE1LCA1LCAyMzMsIDExOCwgMzAsIDIxNywgMjMsIDk2LCAxMTUsIDk2LCAyMTgsIDg0LCA5NiwgMTk3LCAKKyAgICAxNSwgNSwgMjMzLCAxMTgsIDMwLCA3MCwgMTUsIDUsIDIzMywgMTE4LCAzMCwgMTA0LCA5NiwgNjEsIDE1LCA1LCAyMzMsIAorICAgIDExOCwgMzAsIDEwNCwgOTYsIDEwNCwgOTYsIDcwLCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAyMTQsIDIzMSwgOTYsIDI1MywgCisgICAgMjMxLCAxNSwgNSwgMjMzLCAxMTgsIDMwLCAyMTQsIDIxOSwgMTUsIDUsIDIzMywgMTE4LCAzMCwgMjE0LCAxMjYsIDE1LCA1LCAKKyAgICAyMzMsIDExOCwgMjE4LCAyMzMsIDE1LCA1LCAyMzMsIDExNSwgMTUsIDUsIDIzMywgMTE2LCAzMCwgMjIwLCA2MywgMTUsIDUsIAorICAgIDIzMywgMTE2LCAzMCwgMjIwLCA2NCwgOTYsIDIxOCwgNDMsIDE1LCA1LCAyMzMsIDExNiwgMjQyLCA5NCwgMTUsIDUsIDIzMywgCisgICAgMTE2LCAyNDIsIDk1LCAxMTcsIDIzMywgMTE2LCAyNDIsIDk1LCAyMjAsIDYzLCAxNSwgNSwgMjMzLCAxMTEsIDE1LCA1LCAKKyAgICAyMzMsIDEwNCwgMTUsIDUsIDIzMywgMTA1LCAzMCwgMjMzLCAxMDQsIDE1LCA1LCAyMzMsIDEwMiwgMTUsIDUsIDIzMywgCisgICAgMTAzLCAzMCwgMjMzLCAxOTYsIDE1LCA1LCAyMzMsIDEwMywgMzAsIDIzMywgMTk3LCA5NiwgMjIyLCAxNDAsIDE1LCA1LCAKKyAgICAyMzIsIDI0MSwgMTUsIDUsIDIzMiwgMjI2LCAxNSwgNSwgMjMyLCAyMTYsIDE1LCA1LCAyMzIsIDE5NywgMTUsIDUsIDIzMiwgCisgICAgOTgsIDE1LCA1LCAyMzIsIDk5LCAzMCwgMjUyLCAxNzYsIDE1LCA1LCAyMzIsIDk2LCAxNSwgNSwgMjMyLCA5NywgMzAsIAorICAgIDI1NCwgMTc4LCAxNSwgNSwgMjMyLCA5NywgMzAsIDI1MiwgMTc2LCAxNSwgNSwgMjMyLCA5NywgMzAsIDI0NSwgNzIsIDE1LCAKKyAgICA1LCAyMzIsIDk3LCAzMCwgMjQ1LCA3MywgMjE2LCAyMzksIDE1LCA1LCAyMzIsIDk3LCAzMCwgMjQzLCAxMDUsIDIxNiwgCisgICAgMjM5LCAxNSwgNSwgMjMyLCA5NywgMzAsIDI0MSwgMTgxLCAzMCwgMjUyLCAxNzYsIDE1LCA1LCAyMzIsIDk3LCAzMCwgMjM2LCAKKyAgICAxNiwgMTUsIDUsIDIzMiwgOTcsIDMwLCAyMzUsIDEsIDE1LCA1LCAyMzIsIDk3LCAzMCwgMjM0LCAyNTUsIDE1LCA1LCAyMzIsIAorICAgIDk3LCAzMCwgMjM1LCAwLCA5NiwgMjUzLCAyMzEsIDE1LCA1LCAyMzIsIDk3LCAzMCwgMjM0LCA5MiwgMTUsIDUsIDIzMiwgCisgICAgOTcsIDMwLCAyMzMsIDEzNiwgOTYsIDI1MywgMjMxLCAxNSwgNSwgMjMyLCA5NywgMzAsIDIzMywgMTE3LCAxNSwgNSwgMjMyLCAKKyAgICA5NywgMzAsIDIzMSwgOTIsIDk2LCAyNDUsIDE1MCwgMTUsIDUsIDIzMiwgOTcsIDMwLCAyMjksIDEwNywgMTUsIDUsIDIzMiwgCisgICAgOTcsIDMwLCAyMjcsIDIzNywgMTUsIDUsIDIzMiwgOTcsIDMwLCAyMTksIDE5MiwgOTYsIDI1MywgMjMxLCAxNSwgNSwgMjMyLCAKKyAgICA5NywgMzAsIDIxOSwgMTc0LCA5NiwgMjUxLCAxMjUsIDE1LCA1LCAyMzIsIDk3LCAzMCwgMjE1LCAxMTMsIDE1LCA1LCAyMzIsIAorICAgIDk3LCAyMTYsIDIzOSwgMTUsIDUsIDIzMiwgOTcsIDI0OSwgMTI1LCAyMzIsIDk2LCAxNSwgNSwgMjMyLCA5NywgMjI2LCAKKyAgICAxNjQsIDIzMiwgOTYsIDE1LCA1LCAyMzIsIDk3LCAyMTgsIDIzMywgMTUsIDUsIDIzMiwgOTcsIDIyMCwgNDUsIDE1LCA1LCAKKyAgICAyMzIsIDk1LCAxNSwgNSwgMjMyLCA5MSwgMTUsIDUsIDIzMiwgOTIsIDExNywgMjMyLCA5MSwgMTUsIDUsIDIzMiwgOTIsIAorICAgIDIyNiwgMTY0LCAyMzIsIDkxLCAxNSwgNSwgMjMyLCA5MiwgMjIwLCA0NSwgMTUsIDUsIDIzMiwgODksIDE1LCA1LCAyMzIsIAorICAgIDg2LCAxNSwgNSwgMjMyLCA4NCwgMTUsIDUsIDIzMiwgODUsIDExNywgMjMyLCA4NCwgMTUsIDUsIDIzMiwgODUsIDExNywgCisgICAgMjMyLCA4NSwgMjQzLCA5NywgMTE3LCAyNDMsIDk2LCAxNSwgNSwgMTg0LCAxNSwgNSwgMjMxLCAyMzksIDMwLCAyMTcsIDcyLCAKKyAgICAxNSwgNSwgMjMxLCAyMzksIDI0MiwgOTQsIDE1LCA1LCAyMzEsIDIzOCwgMTUsIDUsIDIzMSwgMjEwLCAxNSwgNSwgMjMxLCAKKyAgICAxNjYsIDE1LCA1LCAyMzEsIDE0NywgMTUsIDUsIDIzMSwgMTQ2LCAxNSwgNSwgMjMxLCA5MSwgMTUsIDUsIDIzMSwgNDcsIAorICAgIDE1LCA1LCAyMzAsIDIzMCwgMTUsIDUsIDIzMCwgMTg4LCAxNSwgNSwgMjMwLCAxMDIsIDE1LCA1LCAyMzAsIDEwMywgMTE3LCAKKyAgICAyMzAsIDEwMiwgMTUsIDUsIDIzMCwgOTMsIDE1LCA1LCAyMzAsIDk0LCAyNDIsIDk0LCAxNSwgNSwgMjMwLCA3OCwgMTUsIDUsIAorICAgIDIzMCwgNjQsIDE1LCA1LCAyMzAsIDYxLCAxNSwgNSwgMjMwLCA2MiwgMzAsIDYxLCAxNSwgNSwgMjMwLCA2MiwgMzAsIDIzMywgCisgICAgMTk2LCAxNSwgNSwgMjMwLCA2MiwgMzAsIDIxMCwgMTE2LCAxNSwgNSwgMjMwLCA2MiwgMTE3LCAyMzAsIDYxLCAxNSwgNSwgCisgICAgMjMwLCA2MiwgMTE3LCAyMzAsIDYyLCAzMCwgMTE1LCA5NiwgMTk3LCAxNSwgNSwgMjMwLCA2MiwgMjQ5LCAxMjUsIDIzMCwgCisgICAgNjEsIDE1LCA1LCAyMzAsIDU5LCAxNSwgNSwgMjMwLCA2MCwgMzAsIDYxLCAxNSwgNSwgMjMwLCA2MCwgMzAsIDExNSwgOTYsIAorICAgIDI0OCwgMywgMTUsIDUsIDIzMCwgNjAsIDMwLCAyNDgsIDMsIDE1LCA1LCAyMzAsIDYwLCAyNDIsIDk0LCAxNSwgNSwgMTk3LCAKKyAgICAxNSwgNSwgMjI5LCAyMjcsIDE1LCA1LCAyMjksIDIxNiwgMTUsIDUsIDIyOSwgMjE3LCAyMzUsIDE5MiwgMTUsIDUsIDIyOSwgCisgICAgMjE3LCAzMCwgMjE5LCAyMjYsIDIxNiwgMjM5LCAxNSwgNSwgMjI5LCAyMTcsIDIyNiwgMTY0LCAyMjksIDIxNiwgMTUsIDUsIAorICAgIDIyOSwgMjE1LCAxNSwgNSwgMjI5LCAyMDgsIDIyNywgMTgwLCAxNSwgNSwgMjI5LCAyMDcsIDE1LCA1LCAyMjksIDIwNiwgCisgICAgMTUsIDUsIDIyOSwgMTA3LCAxNSwgNSwgMjI5LCAxMDgsIDMwLCA2MSwgMTUsIDUsIDIyOSwgMTA4LCAzMCwgMjE0LCAyMTksIAorICAgIDE1LCA1LCAyMjksIDEwOCwgMjIwLCA0NSwgMTUsIDUsIDIyOCwgMjMzLCAxNSwgNSwgMjI4LCAyMzQsIDMwLCA3NSwgMTUsIAorICAgIDUsIDIyOCwgMjMyLCAxNSwgNSwgMjI4LCAyMDMsIDE1LCA1LCAyMjgsIDIwNCwgMzAsIDI0MywgMTA1LCAyMTYsIDIzOSwgCisgICAgMTUsIDUsIDIyOCwgMjA0LCAzMCwgMjQzLCA5NywgOTYsIDI0MywgMTA1LCAyMTYsIDIzOSwgMTUsIDUsIDIyOCwgMjAxLCAKKyAgICAxNSwgNSwgMjI4LCAyMDIsIDMwLCAyNTQsIDEyMywgMTUsIDUsIDIyOCwgMjAyLCAzMCwgMjUzLCAyMzEsIDE1LCA1LCAyMjgsIAorICAgIDIwMiwgMzAsIDI1MywgMjMyLCA5NiwgMjUzLCAyMzEsIDE1LCA1LCAyMjgsIDIwMiwgMzAsIDI0MiwgMTAzLCAxNSwgNSwgCisgICAgMjI4LCAyMDIsIDMwLCAyMzEsIDkyLCA5NiwgMjQzLCAxMDUsIDIxNiwgMjM5LCAxNSwgNSwgMjI4LCAyMDIsIDMwLCAyMjksIAorICAgIDEwNywgMTUsIDUsIDIyOCwgMjAyLCAzMCwgMjI3LCAxOTQsIDE1LCA1LCAyMjgsIDIwMiwgMzAsIDIyMCwgNjMsIDE1LCA1LCAKKyAgICAyMjgsIDIwMiwgMzAsIDIyMCwgNjQsIDk2LCAxMTUsIDI1NCwgMTIzLCAxNSwgNSwgMjI4LCAyMDIsIDMwLCAyMjAsIDY0LCAKKyAgICA5NiwgMjUzLCAyMzEsIDE1LCA1LCAyMjgsIDIwMiwgMzAsIDIyMCwgNjQsIDk2LCAyNTMsIDIzMiwgOTYsIDI1MywgMjMxLCAKKyAgICAxNSwgNSwgMjI4LCAyMDIsIDMwLCAyMTQsIDIzMSwgOTYsIDI1MywgMjMxLCAxNSwgNSwgMjI4LCAyMDIsIDMwLCAyMTQsIAorICAgIDEyNiwgMTUsIDUsIDIyOCwgMTkwLCAxNSwgNSwgMjI3LCAyMzcsIDE1LCA1LCAyMjcsIDIxMCwgMTUsIDUsIDIyNywgMTk0LCAKKyAgICAxNSwgNSwgMjI3LCAxOTUsIDIzMywgMTE2LCAzMCwgMjQzLCA5NiwgMTUsIDUsIDIyNywgMTk1LCAyMzMsIDExNiwgMzAsIAorICAgIDIzMSwgMTQ3LCAxNSwgNSwgMjI3LCAxOTUsIDIzMywgMTE2LCAzMCwgMjIyLCA4LCAxNSwgNSwgMjI3LCAxOTUsIDIzMywgCisgICAgMTE2LCAzMCwgMjIyLCA5LCAxMTcsIDIyNywgMTk1LCAyMzMsIDExNiwgMzAsIDIyMiwgOCwgMTUsIDUsIDIyNywgMTk1LCAKKyAgICAyMzMsIDExNiwgMzAsIDIxNCwgMTI2LCAxNSwgNSwgMjI3LCAxOTUsIDIxNiwgMjM5LCAxNSwgNSwgMjI3LCAxOTUsIDExNywgCisgICAgMjI3LCAxOTQsIDE1LCA1LCAyMjcsIDE5NSwgMjQ5LCAxMjUsIDIyNywgMTk0LCAxNSwgNSwgMjI3LCAxOTUsIDI0OSwgMTI1LCAKKyAgICAyMjcsIDE5NSwgMjMzLCAxMTYsIDExNywgMjMzLCAxMTUsIDE1LCA1LCAyMjcsIDE4OSwgMTUsIDUsIDIyNywgMTkwLCAyNTUsIAorICAgIDI0LCAzMCwgMjUzLCAyMjYsIDE1LCA1LCAyMjcsIDE5MCwgMjU1LCAyNCwgMzAsIDI1MiwgNiwgMTUsIDUsIDIyNywgMTkwLCAKKyAgICAyNTUsIDI0LCAzMCwgMjQ2LCA3NCwgMTUsIDUsIDIyNywgMTkwLCAyNTUsIDI0LCAzMCwgMjQyLCAxMDMsIDE1LCA1LCAyMjcsIAorICAgIDE5MCwgMjU1LCAyNCwgMzAsIDIzNiwgMzYsIDI0MiwgOTQsIDE1LCA1LCAyMjcsIDE5MCwgMjU1LCAyNCwgMzAsIDIzNCwgCisgICAgMjU1LCAxNSwgNSwgMjI3LCAxOTAsIDI1NSwgMjQsIDMwLCAyMzMsIDEzNSwgMTUsIDUsIDIyNywgMTkwLCAyNTUsIDI0LCAKKyAgICAzMCwgMjI5LCAxMDcsIDE1LCA1LCAyMjcsIDE5MCwgMjU1LCAyNCwgMzAsIDIxOSwgMTcxLCAxNSwgNSwgMjI3LCAxOTAsIAorICAgIDI1NSwgMjQsIDMwLCAyMTQsIDIzMCwgMTUsIDUsIDIyNywgMTkwLCAyMzQsIDY2LCAzMCwgMjUyLCA2LCAxNSwgNSwgMjI3LCAKKyAgICAxOTAsIDIzNCwgNjYsIDMwLCAyNTIsIDcsIDcwLCAxNSwgNSwgMTkwLCAxNSwgNSwgMjI2LCA4MCwgMTUsIDUsIDIyNiwgNDcsIAorICAgIDE1LCA1LCAyMjYsIDIxLCAxNSwgNSwgMjI1LCAxNjEsIDE1LCA1LCAyMjUsIDEwOCwgMTUsIDUsIDIyNSwgMTA5LCAzMCwgCisgICAgNjEsIDE1LCA1LCAyMjUsIDEwOSwgMzAsIDI1NSwgMjUsIDE1LCA1LCAyMjUsIDEwOSwgMzAsIDI1MiwgNiwgMTUsIDUsIAorICAgIDIyNSwgMTA5LCAzMCwgMjUxLCAxMjUsIDE1LCA1LCAyMjUsIDEwOSwgMzAsIDc1LCAxNSwgNSwgMjI1LCAxMDksIDMwLCA3MywgCisgICAgMTUsIDUsIDIyNSwgMTA5LCAzMCwgMjQwLCAxMTUsIDE1LCA1LCAyMjUsIDEwOSwgMzAsIDcwLCAxNSwgNSwgMjI1LCAxMDksIAorICAgIDMwLCAyMTQsIDIzMCwgMTUsIDUsIDIyNSwgMTA5LCAyNDksIDEyNSwgMjI1LCAxMDgsIDE1LCA1LCAyMjUsIDUzLCAxNSwgNSwgCisgICAgMjI1LCA1NCwgMzAsIDIzNCwgMjM4LCAxNSwgNSwgMjI1LCA1NCwgMzAsIDIxNCwgMjE5LCAxNSwgNSwgMjI1LCA1NCwgMzAsIAorICAgIDIxMCwgMTE2LCAxNSwgNSwgMjI1LCA1NCwgMjI2LCAxNjQsIDIyNSwgNTMsIDE1LCA1LCAyMDUsIDE1LCA1LCAyMjMsIDE4MiwgCisgICAgMTUsIDUsIDIyMywgMzUsIDE1LCA1LCAyMjIsIDE0MCwgMTUsIDUsIDIwNiwgMTUsIDUsIDIyMiwgMjIsIDIyNywgMTgwLCAKKyAgICAxNSwgNSwgMjIyLCAyMSwgMTUsIDUsIDIyMiwgMjIsIDMwLCA2MSwgMTUsIDUsIDIyMiwgMjIsIDMwLCAyNDYsIDc4LCAxNSwgCisgICAgNSwgMjIyLCAyMiwgMzAsIDI0NiwgNzYsIDE1LCA1LCAyMjIsIDIyLCAzMCwgMTYyLCAxNSwgNSwgMjIyLCAyMiwgMzAsIAorICAgIDIzNCwgMjQyLCAxNSwgNSwgMjIyLCAyMiwgMzAsIDIzMywgMTk2LCAxNSwgNSwgMjIyLCAyMiwgMzAsIDIzMiwgODQsIDE1LCAKKyAgICA1LCAyMjIsIDIyLCAzMCwgMjMwLCAyMzAsIDE1LCA1LCAyMjIsIDIyLCAzMCwgMjI3LCAxOTQsIDE1LCA1LCAyMjIsIDIyLCAKKyAgICAzMCwgMjIyLCA4LCAxNSwgNSwgMjIyLCAyMiwgMzAsIDIyMCwgMzAsIDE1LCA1LCAyMjIsIDIyLCAzMCwgMjE3LCA5MywgMTUsIAorICAgIDUsIDIyMiwgMjIsIDMwLCAyMTQsIDIzMCwgMTUsIDUsIDIyMiwgMjIsIDMwLCAyMTQsIDIyNSwgMTUsIDUsIDIyMiwgMjIsIAorICAgIDMwLCAyMTQsIDE5NywgMTUsIDUsIDIyMiwgMjIsIDMwLCAyMTQsIDE1MCwgMTUsIDUsIDIyMiwgMjIsIDMwLCAyMTQsIDEyNiwgCisgICAgMTUsIDUsIDIyMiwgMjIsIDExNywgMjIyLCAyMSwgMTUsIDUsIDIyMiwgMjIsIDI0MiwgOTQsIDE1LCA1LCAyMjIsIDgsIDE1LCAKKyAgICA1LCAyMjIsIDksIDIzMywgMTE4LCAzMCwgMjUzLCAyMjksIDE1LCA1LCAyMjEsIDIzOSwgMTUsIDUsIDIyMSwgMjMxLCAxNSwgCisgICAgNSwgMjIwLCAxMDIsIDE1LCA1LCAyMjAsIDEwMCwgMTUsIDUsIDIyMCwgMTAxLCAzMCwgNjEsIDE1LCA1LCAyMjAsIDEwMSwgCisgICAgMzAsIDI1MiwgMTc2LCAxNSwgNSwgMjIwLCAxMDEsIDMwLCAyNDIsIDE5MCwgMTUsIDUsIDIyMCwgMTAxLCAzMCwgMjI5LCAKKyAgICAxMDcsIDE1LCA1LCAyMjAsIDEwMSwgMzAsIDIxOSwgMjIzLCAxNSwgNSwgMjIwLCAxMDEsIDMwLCAyMTUsIDk4LCAxNSwgNSwgCisgICAgMjIwLCAxMDEsIDMwLCA3MCwgMTUsIDUsIDIyMCwgMTAxLCAzMCwgMTA0LCA5NiwgNjEsIDE1LCA1LCAyMjAsIDk5LCAxNSwgCisgICAgNSwgMjIwLCA5NywgMTUsIDUsIDIyMCwgNzgsIDE1LCA1LCAyMjAsIDYzLCAxNSwgNSwgMjIwLCA2NCwgMjQwLCAyMjIsIDE1LCAKKyAgICA1LCAyMjAsIDY0LCAxMTcsIDIyMCwgNjQsIDI0MywgMTI3LCAxMTcsIDI0MywgMTI3LCAyNDMsIDk3LCAxMTcsIDI0MywgOTYsIAorICAgIDE1LCA1LCAyMjAsIDY0LCAxMTcsIDIyMCwgNjQsIDIxNywgOTQsIDExNywgMjE3LCA5NCwgMjQzLCA5NywgMTE3LCAyNDMsIAorICAgIDk2LCAxNSwgNSwgMjIwLCA1NiwgMTUsIDUsIDIyMCwgNTEsIDE1LCA1LCAyMjAsIDQ4LCAxNSwgNSwgMjIwLCA0NywgMTUsIAorICAgIDUsIDIyMCwgNDQsIDE1LCA1LCAyMjAsIDMwLCAxNSwgNSwgMjIwLCAzMSwgMzAsIDYxLCAxNSwgNSwgMjIwLCAzMSwgMzAsIAorICAgIDIzNiwgMTYsIDE1LCA1LCAyMjAsIDI0LCAxNSwgNSwgMjIwLCAyNSwgMzAsIDYxLCAxNSwgNSwgMjIwLCAyNSwgMzAsIDI1MiwgCisgICAgMTYxLCAxNSwgNSwgMjIwLCAyNSwgMzAsIDI1MSwgMTA5LCAxNSwgNSwgMjIwLCAyNSwgMzAsIDI0NywgMjA2LCAxNSwgNSwgCisgICAgMjIwLCAyNSwgMzAsIDI0MywgOTYsIDE1LCA1LCAyMjAsIDI1LCAzMCwgMjM2LCAzNSwgMTUsIDUsIDIyMCwgMjUsIDMwLCAKKyAgICAyMzYsIDM2LCAyNDIsIDk0LCAxNSwgNSwgMjIwLCAyNSwgMzAsIDIzMywgMTkxLCAxNSwgNSwgMjIwLCAyNSwgMzAsIDIzMiwgCisgICAgODYsIDE1LCA1LCAyMjAsIDI1LCAzMCwgMjMwLCA5MywgMTUsIDUsIDIyMCwgMjUsIDMwLCAyMjIsIDgsIDE1LCA1LCAyMjAsIAorICAgIDE4LCAxNSwgNSwgMjIwLCAxMywgMTUsIDUsIDIyMCwgMTQsIDIxNiwgMjM5LCAxNSwgNSwgMjIwLCAxNCwgMTE3LCAyMjAsIAorICAgIDE0LCAyNTEsIDk5LCAxMTcsIDI1MSwgOTgsIDE1LCA1LCAyMjAsIDksIDE1LCA1LCAyMTksIDIyNSwgMTUsIDUsIDIxOSwgCisgICAgMjI2LCAxMTcsIDIzNSwgMTkzLCAyMTksIDIyNSwgMTUsIDUsIDIxOSwgMjIzLCAxNSwgNSwgMjE5LCAyMjIsIDE1LCA1LCAKKyAgICAyMTksIDE5MSwgMTUsIDUsIDIxOSwgMTkyLCAyNDIsIDk0LCAxNSwgNSwgMjE5LCAxODIsIDE1LCA1LCAyMTksIDE4MCwgMTUsIAorICAgIDUsIDIxOSwgMTgxLCAxMTcsIDIxOSwgMTgxLCAyMTksIDIyMywgMTUsIDUsIDIxOSwgMTczLCAxNSwgNSwgMjE5LCAxNzEsIAorICAgIDE1LCA1LCAyMTgsIDgzLCAxNSwgNSwgMjE4LCA4NCwgMTE3LCAyMTgsIDgzLCAxNSwgNSwgMjE4LCA1NCwgMTUsIDUsIDIxOCwgCisgICAgNTMsIDE1LCA1LCAyMTgsIDUxLCAxNSwgNSwgMjE4LCA0MywgMTUsIDUsIDIxOCwgNDIsIDE1LCA1LCAyMTgsIDE3LCAxNSwgCisgICAgNSwgMjE4LCAxNiwgMTUsIDUsIDIxNywgMTA1LCAxNSwgNSwgMjE3LCAxMDYsIDI1MywgMjE2LCAxNSwgNSwgMjE3LCAxMDYsIAorICAgIDMwLCAyNDEsIDE4MCwgMTUsIDUsIDIxNywgMTA2LCAzMCwgMjMwLCAyMzAsIDE1LCA1LCAyMTcsIDEwNiwgMjQyLCA5NCwgCisgICAgMTUsIDUsIDIxNywgOTMsIDE1LCA1LCAyMTcsIDk0LCAxMTcsIDIxNywgOTQsIDIyOCwgMjM0LCAxMTcsIDIyOCwgMjM0LCAKKyAgICAyNDcsIDE4OCwgMTE3LCAyNDcsIDE4NywgMTUsIDUsIDIxNywgOTQsIDIxOCwgMjMzLCAxNSwgNSwgMjE3LCA4NCwgMTUsIDUsIAorICAgIDEyOSwgMzAsIDI1MiwgNiwgMTUsIDUsIDEyOSwgMzAsIDI0MiwgMTAzLCAxNSwgNSwgMTI5LCAzMCwgMjIwLCA2MywgMTUsIAorICAgIDUsIDEyOSwgMzAsIDIxOSwgMjI1LCAxNSwgNSwgMTI5LCAzMCwgMjE1LCAxMTMsIDE1LCA1LCAxMjksIDMwLCAyMTQsIDIxOSwgCisgICAgMTUsIDUsIDIxNywgNzIsIDE1LCA1LCAyMTcsIDUwLCAxNSwgNSwgMjE3LCAyMiwgMTUsIDUsIDIxNywgMjMsIDI0MiwgOTQsIAorICAgIDE1LCA1LCAyMTYsIDExNywgMTUsIDUsIDIxNiwgMTE4LCAyMTYsIDIzOSwgMTUsIDUsIDIxNiwgOTAsIDE1LCA1LCAyMTYsIAorICAgIDcyLCAxNSwgNSwgMjE2LCA3MywgMzAsIDIxNywgNzIsIDE1LCA1LCAyMTYsIDczLCAxMTcsIDIxNiwgNzIsIDE1LCA1LCAKKyAgICAyMTYsIDczLCAxMTcsIDIxNiwgNzMsIDI0MywgMTI3LCAxMTcsIDI0MywgMTI3LCAyNDMsIDk3LCAxMTcsIDI0MywgOTYsIAorICAgIDE1LCA1LCAyMTUsIDExOCwgMTUsIDUsIDIxNSwgMTEzLCAxNSwgNSwgMjE1LCAxMTEsIDE1LCA1LCAyMTUsIDEwOCwgMTUsIAorICAgIDUsIDIxNSwgOTgsIDE1LCA1LCAyMTUsIDk5LCAxMTcsIDIxNSwgOTksIDIxMCwgMTE3LCAxMTcsIDIxMCwgMTE2LCAxNSwgNSwgCisgICAgNzAsIDE1LCA1LCAxMDQsIDI0MiwgMTAzLCAxNSwgNSwgMTA0LCAxMDQsIDcwLCAxNSwgNSwgMTA0LCAxMTcsIDEwNCwgMjI2LCAKKyAgICA5MCwgMTE3LCAyMjYsIDkwLCAyNDMsIDk3LCAxMTcsIDI0MywgOTYsIDE1LCA1LCAxMDQsIDExNywgMTA0LCAyMTgsIDE4LCAKKyAgICAxMTcsIDIxOCwgMTcsIDE1LCA1LCAxMDQsIDExNywgMTA0LCAxMDQsIDIyMywgNDksIDExNywgMTA0LCAyMjMsIDQ4LCAxNSwgCisgICAgNSwgMjE0LCAyMzAsIDE1LCA1LCAyMTQsIDIyNSwgMTUsIDUsIDIxNCwgMjE5LCAxNSwgNSwgMjE0LCAyMjAsIDIzMywgMTkxLCAKKyAgICAxNSwgNSwgMjE0LCAyMjAsIDMwLCAyNTIsIDE3NiwgMTUsIDUsIDIxNCwgMjIwLCAzMCwgMjMwLCAyMzAsIDE1LCA1LCAyMTQsIAorICAgIDIyMCwgMzAsIDEwNCwgOTYsIDEwNCwgOTYsIDcwLCAxNSwgNSwgMjE0LCAyMjAsIDMwLCAxMDQsIDk2LCAxMDQsIDk2LCAKKyAgICAxMDQsIDI0MiwgOTQsIDE1LCA1LCAyMTQsIDIyMCwgMjQyLCA5NCwgMTUsIDUsIDIxNCwgMjIwLCAyMjAsIDQ1LCAxNSwgNSwgCisgICAgMjE0LCAyMjAsIDIyMCwgNDYsIDMwLCAyNTIsIDE3NiwgMTUsIDUsIDIxNCwgMjE1LCAxNSwgNSwgMjE0LCAxOTcsIDE1LCA1LCAKKyAgICAyMTQsIDE5OCwgMzAsIDIzMywgMTE3LCAxNSwgNSwgMjE0LCAxOTgsIDMwLCAyMzEsIDkyLCA5NiwgMjQ4LCAyMjEsIDE1LCAKKyAgICA1LCAyMTQsIDE5OCwgMzAsIDIyMCwgMTAwLCAxNSwgNSwgMjE0LCAxOTgsIDMwLCA3MCwgMTUsIDUsIDIxNCwgMTk2LCAxNSwgCisgICAgNSwgMjE0LCAxOTIsIDE1LCA1LCAyMTQsIDE5MywgMzAsIDIzNCwgMjA3LCAxNSwgNSwgMjE0LCAxOTMsIDMwLCAxOTAsIDE1LCAKKyAgICA1LCAyMTQsIDE5MCwgMTUsIDUsIDIxNCwgMTkxLCAyNDIsIDk0LCAxNSwgNSwgMjE0LCAxNTAsIDE1LCA1LCAyMTQsIDE1MSwgCisgICAgMjQ5LCAxMjUsIDIxNCwgMTUwLCAxNSwgNSwgMjE0LCAxNTEsIDIyMCwgNDUsIDE1LCA1LCAyMTQsIDE0OCwgMTUsIDUsIAorICAgIDIxNCwgMTQ5LCAzMCwgMTE1LCA5NiwgMTYyLCAxNSwgNSwgMjE0LCAxNDksIDMwLCAxMTUsIDk2LCAxOTcsIDE1LCA1LCAKKyAgICAyMTQsIDE0OSwgMzAsIDI1NCwgMTc4LCAxNSwgNSwgMjE0LCAxNDksIDMwLCAxNjIsIDE1LCA1LCAyMTQsIDE0OSwgMzAsIAorICAgIDIyNywgMTk0LCAxNSwgNSwgMjE0LCAxNDksIDMwLCAyMTQsIDIzMCwgMTUsIDUsIDIxNCwgMTQ5LCAzMCwgMjE0LCAyMzEsIAorICAgIDk2LCAyNTMsIDIzMSwgMTUsIDUsIDIxNCwgMTQ5LCAzMCwgMjE0LCAyMzEsIDk2LCAyNTIsIDYsIDE1LCA1LCAyMTQsIDE0NywgCisgICAgMTUsIDUsIDIxNCwgMTQ0LCAxNSwgNSwgMjE0LCAxNDMsIDE1LCA1LCAyMTQsIDEzOSwgMTUsIDUsIDIxNCwgMTQwLCAzMCwgCisgICAgNjEsIDE1LCA1LCAyMTQsIDE0MCwgMzAsIDI1MywgMjI2LCAxNSwgNSwgMjE0LCAxNDAsIDMwLCAxMzAsIDE1LCA1LCAyMTQsIAorICAgIDE0MCwgMzAsIDI0NiwgNjgsIDE1LCA1LCAyMTQsIDE0MCwgMzAsIDI0MywgMTM1LCAxNSwgNSwgMjE0LCAxNDAsIDMwLCAKKyAgICAyNDMsIDExOCwgMTUsIDUsIDIxNCwgMTQwLCAzMCwgMjQzLCAxMDUsIDIxNiwgMjM5LCAxNSwgNSwgMjE0LCAxNDAsIDMwLCAKKyAgICAyNDMsIDk2LCAxNSwgNSwgMjE0LCAxNDAsIDMwLCAyNDIsIDExMywgMTUsIDUsIDIxNCwgMTQwLCAzMCwgMTYyLCAxNSwgNSwgCisgICAgMjE0LCAxNDAsIDMwLCAyMzYsIDM1LCAxNSwgNSwgMjE0LCAxNDAsIDMwLCAyMzYsIDE2LCAxNSwgNSwgMjE0LCAxNDAsIDMwLCAKKyAgICAyMzUsIDE2NSwgMTUsIDUsIDIxNCwgMTQwLCAzMCwgMjM0LCA5MiwgMTUsIDUsIDIxNCwgMTQwLCAzMCwgMjMyLCA4NCwgMTUsIAorICAgIDUsIDIxNCwgMTQwLCAzMCwgMjMwLCAxODgsIDE1LCA1LCAyMTQsIDE0MCwgMzAsIDE5MCwgMTUsIDUsIDIxNCwgMTQwLCAzMCwgCisgICAgMjIwLCA2MywgMTUsIDUsIDIxNCwgMTQwLCAzMCwgMjE5LCAxODAsIDE1LCA1LCAyMTQsIDE0MCwgMzAsIDIxNSwgMTE4LCAKKyAgICAxNSwgNSwgMjE0LCAxNDAsIDMwLCAxMDQsIDk2LCAyNDIsIDEwMywgMTUsIDUsIDIxNCwgMTQwLCAzMCwgMjE0LCAyMTksIAorICAgIDE1LCA1LCAyMTQsIDE0MCwgMzAsIDIxNCwgMTM3LCAxNSwgNSwgMjE0LCAxMzcsIDE1LCA1LCAyMTQsIDEzOCwgMzAsIDcwLCAKKyAgICAxNSwgNSwgMjE0LCAxMjYsIDE1LCA1LCAyMTQsIDEyNywgMzAsIDYxLCAxNSwgNSwgMjE0LCAxMjcsIDMwLCAyMzMsIDIxNywgCisgICAgMTUsIDUsIDIxNCwgMTI3LCAzMCwgMjMzLCAxOTYsIDE1LCA1LCAyMTQsIDEyNywgMzAsIDIxNywgNzIsIDE1LCA1LCAyMTQsIAorICAgIDEyMiwgMTUsIDUsIDIxNCwgMTI1LCAxNSwgNSwgMjE0LCAxMjMsIDE1LCA1LCAyMTQsIDExOSwgMTUsIDUsIDIxNCwgMTA4LCAKKyAgICAxNSwgNSwgMjE0LCAxMDksIDMwLCAyMzQsIDIwNywgMTUsIDUsIDIxNCwgMTA3LCAxNSwgNSwgMjEwLCAxMTYsIDE1LCA1LCAKKyAgICAyMTAsIDExNywgMjE2LCAyMzksIDE1LCA1LCAyMTAsIDExNywgOTIsIDMwLCAyMzMsIDE5NiwgMTUsIDUsIDIxMCwgMTEzLCAKKyAgICAxNSwgNSwgMjEwLCAxMDYsIDE1LCA1LCAyMTAsIDkzLCAxNSwgNSwgMjEwLCA0NCwgMTUsIDUsIDIxMCwgNDUsIDExNywgCisgICAgMjEwLCA0NCwgMTUsIDUsIDIxMCwgNDMsIDE1LCA1LCAyMTAsIDQxLCAxNSwgNSwgMjEwLCA0MiwgMjM1LCAzLCAyMTYsIAorICAgIDIzOSwgMTUsIDUsIDIxMCwgMzYsIDE1LCA1LCAyMTAsIDI4LCAxNSwgNSwgMjEwLCAxMywgMTUsIDUsIDIxMCwgMTEsIDE1LCAKKyAgICA1LCAyMTAsIDEyLCAzMCwgNjEsIDE1LCA1LCAyMTAsIDEwLCAxNSwgNSwgMjEwLCA5LCAxNSwgMTMyLCA1LCAxMTMsIDI1MywgCisgICAgMjMxLCAxNSwgMTMyLCA1LCAxMzQsIDI1MywgMjMxLCAxNSwgMTMyLCA1LCAyNDQsIDExLCAyNTMsIDIzMSwgMTUsIDEzMiwgCisgICAgNSwgMjQ0LCA4MSwgMjUzLCAyMzEsIDE1LCAxMzIsIDUsIDIxOSwgMTI1LCAyNTMsIDIzMSwgMTUsIDEzMiwgNSwgMjIwLCAKKyAgICAxMjIsIDI1MywgMjMxLCAxNSwgMTMyLCA1LCAyNDUsIDE5MywgMjUzLCAyMzEsIDE1LCAxMzIsIDUsIDIyOCwgMjAwLCAyNTMsIAorICAgIDIzMSwgMTUsIDEzMiwgNSwgMTM0LCAyNDcsIDE4NywgMTUsIDEzMiwgNSwgMjQ0LCAxMSwgMjQ3LCAxODcsIDE1LCAxMzIsIAorICAgIDUsIDI0NCwgODEsIDI0NywgMTg3LCAxNSwgMTMyLCA1LCAyMTksIDEyNSwgMjQ3LCAxODcsIDE1LCAxMzIsIDUsIDIyMCwgCisgICAgMTIyLCAyNDcsIDE4NywgMTUsIDEzMiwgNSwgMjQ1LCAxOTMsIDI0NywgMTg3LCAxNSwgMTMyLCA1LCAyMjgsIDIwMCwgMjQ3LCAKKyAgICAxODcsIDE1LCAxMzIsIDUsIDI0NCwgMTEsIDcwLCAxNSwgMTMyLCA1LCAyNDQsIDgxLCA3MCwgMTUsIDEzMiwgNSwgMjE5LCAKKyAgICAxMjUsIDcwLCAxNSwgMTMyLCA1LCAyMjAsIDEyMiwgNzAsIDE1LCAxMzIsIDUsIDI0NSwgMTkzLCA3MCwgMTUsIDEzMiwgNSwgCisgICAgMjI4LCAyMDAsIDcwLCAxNSwgMTMyLCA1LCAxMjMsIDI0MywgMzgsIDE1LCAxMzIsIDUsIDExMywgMjQzLCAzOCwgMTUsIAorICAgIDEzMiwgNSwgMTM0LCAyNDMsIDM4LCAxNSwgMTMyLCA1LCAyNDQsIDExLCAyNDMsIDM4LCAxNSwgMTMyLCA1LCAyNDQsIDgxLCAKKyAgICAyNDMsIDM4LCAxNSwgMTMyLCA1LCAyMTksIDEyNSwgMjQzLCAzOCwgMTUsIDEzMiwgNSwgMjIwLCAxMjIsIDI0MywgMzgsIAorICAgIDE1LCAxMzIsIDUsIDI0NSwgMTkzLCAyNDMsIDM4LCAxNSwgMTMyLCA1LCAyMjgsIDIwMCwgMjQzLCAzOCwgMTUsIDEzMiwgNSwgCisgICAgMTIzLCAyNDMsIDM1LCAxNSwgMTMyLCA1LCAxMTMsIDI0MywgMzUsIDE1LCAxMzIsIDUsIDEzNCwgMjQzLCAzNSwgMTUsIAorICAgIDEzMiwgNSwgMjQ0LCAxMSwgMjQzLCAzNSwgMTUsIDEzMiwgNSwgMjQ0LCA4MSwgMjQzLCAzNSwgMTUsIDEzMiwgNSwgMTEzLCAKKyAgICAyMjAsIDc4LCAxNSwgMTMyLCA1LCAxMzQsIDIyMCwgNzgsIDE1LCAxMzIsIDUsIDEzNCwgMjIwLCA3OSwgMjE0LCAxMiwgMTcsIAorICAgIDE1LCAxMzIsIDUsIDI0NCwgMTEsIDIyMCwgNzgsIDE1LCAxMzIsIDUsIDI0NCwgODEsIDIyMCwgNzgsIDE1LCAxMzIsIDUsIAorICAgIDIxOSwgMTI1LCAyMjAsIDc4LCAxNSwgMTMyLCA1LCAyMjAsIDEyMiwgMjIwLCA3OCwgMTUsIDEzMiwgNSwgMjQ1LCAxOTMsIAorICAgIDIyMCwgNzgsIDE1LCAxMzIsIDUsIDIyOCwgMjAwLCAyMjAsIDc4LCAxNSwgMTMyLCA1LCAxMjMsIDIyMCwgNzMsIDE1LCAKKyAgICAxMzIsIDUsIDExMywgMjIwLCA3MywgMTUsIDEzMiwgNSwgMTM0LCAyMjAsIDczLCAxNSwgMTMyLCA1LCAxMzQsIDIyMCwgNzQsIAorICAgIDIxNCwgMTIsIDE3LCAxNSwgMTMyLCA1LCAyNDQsIDExLCAyMjAsIDczLCAxNSwgMTMyLCA1LCAyNDQsIDgxLCAyMjAsIDczLCAKKyAgICAxNSwgMTMyLCA1LCAyMjAsIDc5LCAzMCwgMjQzLCAxMTksIDk2LCAyNDcsIDE4NywgMTUsIDEzMiwgNSwgMjIwLCA3OSwgMzAsIAorICAgIDI0MywgMTE5LCA5NiwgMjMwLCAxODgsIDE1LCAxMzIsIDUsIDEyMywgMjUxLCA5NSwgMTUsIDEzMiwgNSwgMTEzLCAyNTEsIAorICAgIDk1LCAxNSwgMTMyLCA1LCAxMzQsIDI1MSwgOTUsIDE1LCAxMzIsIDUsIDEzNCwgMjUxLCA5NiwgMjE0LCAxMiwgMTcsIDE1LCAKKyAgICAxMzIsIDUsIDI0NCwgMTEsIDI1MSwgOTUsIDE1LCAxMzIsIDUsIDI0NCwgODEsIDI1MSwgOTUsIDE1LCAxMzIsIDUsIDEzNCwgCisgICAgMjE0LCAxMiwgMjQ0LCAyMCwgMjQ1LCA3NCwgMTUsIDEzMiwgNSwgMTM0LCAyMTQsIDEyLCAyNDQsIDIwLCAyNDUsIDcxLCAKKyAgICAxNSwgMTMyLCA1LCAyNDQsIDExLCAyMTQsIDEyLCAyNDQsIDIwLCAyMzIsIDIxNywgMTUsIDEzMiwgNSwgMjQ0LCAxMSwgCisgICAgMjE0LCAxMiwgMjQ0LCAyMCwgMjMyLCAyMTUsIDE1LCAxMzIsIDUsIDI0NCwgMTEsIDIxNCwgMTIsIDI0NCwgMjAsIDIzMiwgCisgICAgMjE4LCA2MSwgMTUsIDEzMiwgNSwgMjQ0LCAxMSwgMjE0LCAxMiwgMjQ0LCAyMCwgMjMyLCAyMTgsIDI1MywgMTU4LCAxNSwgCisgICAgMTMyLCA1LCAyMTksIDEyNSwgMjE0LCAxMiwgMjQ0LCAyMCwgMjUzLCAyMjgsIDE1LCAxMzIsIDUsIDIyMCwgMTIyLCAyMTQsIAorICAgIDEyLCAyNDQsIDIwLCAyMzYsIDgsIDE1LCAxMzIsIDUsIDIyMCwgMTIyLCAyMTQsIDEyLCAyNDQsIDIwLCAyMzYsIDEwLCA2MSwgCisgICAgMTUsIDEzMiwgNSwgMjIwLCAxMjIsIDIxNCwgMTIsIDI0NCwgMjAsIDIzNiwgMTAsIDI1MywgMTU4LCAxNSwgMTMyLCA1LCAKKyAgICAyNDUsIDE5MywgMjE0LCAxMiwgMjQ0LCAyMCwgMjE0LCAxMjEsIDE1LCAxMzIsIDUsIDI0NSwgMTkzLCAyMTQsIDEyLCAyNDQsIAorICAgIDIwLCAyMTQsIDEyMCwgMTUsIDEzMiwgNSwgMjI4LCAyMDAsIDIxNCwgMTIsIDI0NCwgMjAsIDIzNiwgMjQsIDE1LCAxMzIsIAorICAgIDUsIDIyOCwgMjAwLCAyMTQsIDEyLCAyNDQsIDIwLCAyMzYsIDIzLCAxNSwgMTMyLCA1LCAyMjgsIDIwMCwgMjE0LCAxMiwgCisgICAgMjQ0LCAyMCwgMjM2LCAyMiwgMTUsIDEzMiwgNSwgMjI4LCAyMDAsIDIxNCwgMTIsIDI0NCwgMjAsIDIzNiwgMjUsIDYxLCAKKyAgICAxNSwgMTMyLCA1LCAxMTMsIDI1MywgMjMyLCAyMTYsIDIzOSwgMTUsIDEzMiwgNSwgMTM0LCAyNTMsIDIzMiwgMjE2LCAyMzksIAorICAgIDE1LCAxMzIsIDUsIDI0NCwgMTEsIDI1MywgMjMyLCAyMTYsIDIzOSwgMTUsIDEzMiwgNSwgMjQ0LCA4MSwgMjUzLCAyMzIsIAorICAgIDIxNiwgMjM5LCAxNSwgMTMyLCA1LCAyMTksIDEyNSwgMjUzLCAyMzIsIDIxNiwgMjM5LCAxNSwgMTMyLCA1LCAxMjMsIDI1MiwgCisgICAgMTUwLCAxNSwgMTMyLCA1LCAxMTMsIDI1MiwgMTUwLCAxNSwgMTMyLCA1LCAxMzQsIDI1MiwgMTUwLCAxNSwgMTMyLCA1LCAKKyAgICAyNDQsIDExLCAyNTIsIDE1MCwgMTUsIDEzMiwgNSwgMjQ0LCAxMSwgMjUyLCAxNTEsIDIxNCwgMTIsIDE3LCAxNSwgMTMyLCAKKyAgICA1LCAyNDQsIDgxLCAyNTIsIDE1MCwgMTUsIDEzMiwgNSwgMjQ0LCA4MSwgMjUyLCAxNTEsIDIxNCwgMTIsIDE3LCAxNSwgCisgICAgMTMyLCA1LCAyMjgsIDIxMCwgMTUsIDEzMiwgNSwgMjI4LCAyMTEsIDE1LCAxMzIsIDUsIDEyMywgMjQ1LCA3MCwgMTUsIAorICAgIDEzMiwgNSwgMTEzLCAyNDUsIDcwLCAxNSwgMTMyLCA1LCAxMjMsIDIxNiwgMTY5LCAyNDcsIDE4NywgMTUsIDEzMiwgNSwgCisgICAgMTEzLCAyMTYsIDE2NywgMjQ3LCAxODcsIDE1LCAxMzIsIDUsIDI0NCwgODEsIDIxOSwgMTE0LCAyNDcsIDE4NywgMTUsIAorICAgIDEzMiwgNSwgMTIzLCAyMTYsIDE2OSwgMjE0LCAxMiwgMjQ0LCAyMCwgNjEsIDE1LCAxMzIsIDUsIDExMywgMjE2LCAxNjcsIAorICAgIDIxNCwgMTIsIDI0NCwgMjAsIDYxLCAxNSwgMTMyLCA1LCAxMjMsIDI0NSwgMTg5LCAyNTMsIDIzMSwgMTUsIDEzMiwgNSwgCisgICAgMTIzLCAyMjQsIDIyLCAyNTMsIDIzMSwgMTUsIDEzMiwgNSwgNTUsIDI1MywgMjE5LCAxMjMsIDIxOSwgMTE1LCAxNSwgMTMyLCAKKyAgICA1LCA1NSwgMjUzLCAyMTksIDEyMywgMjI0LCAyMSwgMTUsIDIyNCwgMTQxLCA1LCA1NSwgMjUzLCAyMTksIDIxMSwgMjA5LCAKKyAgICAyNDcsIDE3MiwgMTUsIDIyNCwgMTQxLCA1LCA2NywgMjQ5LCAyMjYsIDE1LCAyMjQsIDE0MSwgNSwgMjQ3LCAyNTUsIDI0OSwgCisgICAgMjI2LCAxNSwgMjI0LCAxNDEsIDUsIDI0NywgMjU1LCAyMTUsIDIyMSwgMTIsIDEzLCAyNTUsIDE1NSwgMTIsIDEzLCAyNTUsIAorICAgIDE1NCwgMTIsIDEzLCAyNTUsIDE1MywgMTIsIDEzLCAyNTUsIDE1MiwgMTIsIDEzLCAyNTUsIDE1MSwgMTIsIDEzLCAyNTUsIAorICAgIDE1MCwgMTIsIDEzLCAyNTUsIDE0OSwgMTIsIDEzLCAyNTUsIDE0OCwgMTIsIDEzLCAyNTUsIDE0NywgMTIsIDEzLCAyNTUsIAorICAgIDE0NiwgMTIsIDEzLCAyNTUsIDE0NSwgMTIsIDEzLCAyNTUsIDE0NCwgMTIsIDEzLCAyNTUsIDE0MywgMTIsIDEzLCAyNTUsIAorICAgIDE0MiwgMTIsIDEzLCAyNTUsIDE0MSwgMTIsIDEzLCAyNTUsIDE0MCwgMTIsIDEzLCAyNTUsIDEzOSwgMTIsIDEzLCAyNTUsIAorICAgIDEzOCwgMTIsIDEzLCAyNTUsIDEzNywgMTIsIDEzLCAyNTUsIDEzNiwgMTIsIDEzLCAyNTUsIDEzNSwgMTIsIDEzLCAyNTUsIAorICAgIDEzNCwgMTIsIDEzLCAyNTUsIDEzMywgMTIsIDEzLCAyNTUsIDEzMiwgMTIsIDEzLCAyNTUsIDEzMSwgMTIsIDEzLCAyNTUsIAorICAgIDEzMCwgMTIsIDEzLCAyNTUsIDEyOSwgMTIsIDEzLCAyNTUsIDEyOCwgMTIsIDEzLCAyNTUsIDEyNywgMTIsIDEzLCAyNTUsIAorICAgIDEyNiwgMTIsIDEzLCAyNTUsIDEyNSwgMTIsIDEzLCAyNTUsIDEyNCwgMTIsIDEzLCAyNTUsIDEyMywgMTIsIDEzLCAyNTUsIAorICAgIDEyMiwgMTIsIDEzLCAyNTUsIDEyMSwgMTIsIDEzLCAyNTUsIDEyMCwgMTIsIDEzLCAyNTUsIDExOSwgMTIsIDEzLCAyNTUsIAorICAgIDExOCwgMTIsIDEzLCAyNTUsIDExNywgMTIsIDEzLCAyNTUsIDExNiwgMTIsIDEzLCAyNTUsIDExNSwgMTIsIDEzLCAyNTUsIAorICAgIDExNCwgMTIsIDEzLCAyNTUsIDExMywgMTIsIDEzLCAyNTUsIDExMiwgMTIsIDEzLCAyNTUsIDExMSwgMTIsIDEzLCAyNTUsIAorICAgIDExMCwgMTIsIDEzLCAyNTUsIDEwOSwgMTIsIDEzLCAyNTUsIDEwOCwgMTIsIDEzLCAyNTUsIDEwNywgMTIsIDEzLCAyNTUsIAorICAgIDEwNiwgMTIsIDEzLCAyNTUsIDEwNSwgMTIsIDEzLCAyNTUsIDEwNCwgMTIsIDEzLCAyNTUsIDEwMywgMTIsIDEzLCAyNTUsIAorICAgIDEwMiwgMTIsIDEzLCAyNTUsIDEwMSwgMTIsIDEzLCAyNTUsIDEwMCwgMTIsIDEzLCAyNTUsIDk5LCAxMiwgMTMsIDI1NSwgCisgICAgOTgsIDEyLCAxMywgMjU1LCA5NywgMTIsIDEzLCAyNTUsIDk2LCAxMiwgMTMsIDI1NSwgOTUsIDEyLCAxMywgMjU1LCA5NCwgCisgICAgMTIsIDEzLCAyNTUsIDkzLCAxMiwgMTMsIDI1NSwgOTIsIDEyLCAxMywgMjU1LCA5MSwgMTIsIDEzLCAyNTUsIDkwLCAxMiwgCisgICAgMTMsIDI1NSwgODksIDEyLCAxMywgMjU1LCA4OCwgMTIsIDEzLCAyNTUsIDg3LCAxMiwgMTMsIDI1NSwgODYsIDEyLCAxMywgCisgICAgMjU1LCA4NSwgMTIsIDEzLCAyNTUsIDg0LCAxMiwgMTMsIDI1NSwgODMsIDEyLCAxMywgMjU1LCA4MiwgMTIsIDEzLCAyNTUsIAorICAgIDgxLCAxMiwgMTMsIDI1NSwgODAsIDEyLCAxMywgMjU1LCA3OSwgMTIsIDEzLCAyNTUsIDc4LCAxMiwgMTMsIDI1NSwgNzcsIAorICAgIDEyLCAxMywgMjU1LCA3NiwgMTIsIDEzLCAyNTMsIDE1NiwgMTIsIDEzLCAyNTMsIDE1NCwgMTIsIDEzLCAyNTMsIDE1MiwgCisgICAgMTIsIDEzLCAyNTMsIDE1MCwgMTIsIDEzLCAyNTMsIDE0OCwgMTIsIDEzLCAyNTMsIDE0NywgMTIsIDEzLCAyNTMsIDE0NSwgCisgICAgMTIsIDEzLCAyNTMsIDE0MywgMTIsIDEzLCAyNTMsIDE0MSwgMTIsIDEzLCAyNTMsIDEzOSwgMTIsIDEzLCAyNTEsIDYyLCAKKyAgICAxMiwgMTMsIDI1MSwgNjEsIDEyLCAxMywgMjUxLCA2MCwgMTIsIDEzLCAyNTEsIDU5LCAxMiwgMTMsIDI1MSwgNTgsIDEyLCAKKyAgICAxMywgMjUxLCA1NywgMTIsIDEzLCAyNTEsIDU2LCAxMiwgMTMsIDI1MSwgNTUsIDEyLCAxMywgMjUxLCA1NCwgMTIsIDEzLCAKKyAgICAyNTEsIDUzLCAxMiwgMTMsIDI1MSwgNTIsIDEyLCAxMywgMjUxLCA1MSwgMTIsIDEzLCAyNTEsIDUwLCAxMiwgMTMsIDI1MSwgCisgICAgNDksIDEyLCAxMywgMjUxLCA0OCwgMTIsIDEzLCAyNTEsIDQ3LCAxMiwgMTMsIDI1MSwgNDYsIDEyLCAxMywgMjUxLCA0NSwgCisgICAgMTIsIDEzLCAyNTEsIDQ0LCAxMiwgMTMsIDI1MSwgNDMsIDEyLCAxMywgMjUxLCA0MiwgMTIsIDEzLCAyNTEsIDQxLCAxMiwgCisgICAgMTMsIDI1MSwgNDAsIDEyLCAxMywgMjUxLCAzOSwgMTIsIDEzLCAyNTEsIDM4LCAxMiwgMTMsIDI1MSwgMzcsIDEyLCAxMywgCisgICAgMjUxLCAzNiwgMTIsIDEzLCAyNTEsIDM1LCAxMiwgMTMsIDI0OSwgNTksIDEyLCAxMywgMjQ5LCA1OCwgMTIsIDEzLCAyNDksIAorICAgIDU3LCAxMiwgMTMsIDI0OSwgNTYsIDEyLCAxMywgMjQ5LCA1NSwgMTIsIDEzLCAyNDksIDU0LCAxMiwgMTMsIDI0OSwgNTMsIAorICAgIDEyLCAxMywgMjQ5LCA1MiwgMTIsIDEzLCAyNDksIDUxLCAxMiwgMTMsIDI0OSwgNTAsIDEyLCAxMywgMjQ5LCA0OSwgMTIsIAorICAgIDEzLCAyNDksIDQ4LCAxMiwgMTMsIDI0OSwgNDcsIDEyLCAxMywgMjQ5LCA0NiwgMTIsIDEzLCAyNDksIDQ1LCAxMiwgMTMsIAorICAgIDI0OSwgNDQsIDEyLCAxMywgMjQ5LCA0MywgMTIsIDEzLCAyNDksIDQyLCAxMiwgMTMsIDI0OSwgNDEsIDEyLCAxMywgMjQ5LCAKKyAgICA0MCwgMTIsIDEzLCAyNDksIDM5LCAxMiwgMTMsIDI0OSwgMzgsIDEyLCAxMywgMjQ5LCAzNywgMTIsIDEzLCAyNDksIDM2LCAKKyAgICAxMiwgMTMsIDI0OSwgMzUsIDEyLCAxMywgMjQ5LCAzNCwgMTIsIDEzLCAyNDksIDMzLCAxMiwgMTMsIDI0OSwgMzIsIDEyLCAKKyAgICAxMywgMjQ5LCAzMSwgMTIsIDEzLCAyNDksIDMwLCAxMiwgMTMsIDI0OSwgMjksIDEyLCAxMywgMjQ5LCAyOCwgMTIsIDEzLCAKKyAgICAyNDksIDI3LCAxMiwgMTMsIDI0OSwgMjYsIDEyLCAxMywgMjQ5LCAyNSwgMTIsIDEzLCAyNDksIDI0LCAxMiwgMTMsIDI0OSwgCisgICAgMjMsIDEyLCAxMywgMjQ5LCAyMiwgMTIsIDEzLCAyNDksIDIxLCAxMiwgMTMsIDI0OSwgMjAsIDEyLCAxMywgMjQ5LCAxOSwgCisgICAgMTIsIDEzLCAyNDksIDE4LCAxMiwgMTMsIDI0OSwgMTcsIDEyLCAxMywgMjQ5LCAxNiwgMTIsIDEzLCAyNDksIDE1LCAxMiwgCisgICAgMTMsIDI0OSwgMTQsIDEyLCAxMywgMjQ5LCAxMywgMTIsIDEzLCAyNDksIDEyLCAxMiwgMTMsIDI0OSwgMTEsIDEyLCAxMywgCisgICAgMjQ5LCAxMCwgMTIsIDEzLCAyNDksIDksIDEyLCAxMywgMjQ5LCA4LCAxMiwgMTMsIDI0OSwgNywgMTIsIDEzLCAyNDksIDYsIAorICAgIDEyLCAxMywgMjQ5LCA1LCAxMiwgMTMsIDI0OSwgNCwgMTIsIDEzLCAyNDksIDMsIDEyLCAxMywgMjQ5LCAyLCAxMiwgMTMsIAorICAgIDI0OSwgMSwgMTIsIDEzLCAyNDksIDAsIDEyLCAxMywgMjQ4LCAyNTUsIDEyLCAxMywgMjQ4LCAyNTQsIDEyLCAxMywgMjQ4LCAKKyAgICAyNTMsIDEyLCAxMywgMjQ4LCAyNTIsIDEyLCAxMywgMjQ4LCAyNTEsIDEyLCAxMywgMjQ4LCAyNTAsIDEyLCAxMywgMjQ4LCAKKyAgICAyNDksIDEyLCAxMywgMjQ4LCAyNDgsIDEyLCAxMywgMjQ4LCAyNDcsIDEyLCAxMywgMjQ4LCAyNDYsIDEyLCAxMywgMjQ4LCAKKyAgICAyNDUsIDEyLCAxMywgMjQ4LCAyNDQsIDEyLCAxMywgMjQ4LCAyNDMsIDEyLCAxMywgMjQ4LCAyNDIsIDEyLCAxMywgMjQ4LCAKKyAgICAyNDEsIDEyLCAxMywgMjQ4LCAyNDAsIDEyLCAxMywgMjQ4LCAyMzksIDEyLCAxMywgMjQ4LCAyMzgsIDEyLCAxMywgMjQ4LCAKKyAgICAyMzcsIDEyLCAxMywgMjQ4LCAyMzYsIDEyLCAxMywgMjQ4LCAyMzUsIDEyLCAxMywgMjQ4LCAyMzQsIDEyLCAxMywgMjQ4LCAKKyAgICAyMzMsIDEyLCAxMywgMjQ4LCAyMzIsIDEyLCAxMywgMjQ4LCAyMzEsIDEyLCAxMywgMjQ4LCAyMzAsIDEyLCAxMywgMjQ4LCAKKyAgICAyMjksIDEyLCAxMywgMjQ4LCAyMjgsIDEyLCAxMywgMjQ4LCAyMjcsIDEyLCAxMywgMjQ4LCAyMjYsIDEyLCAxMywgMjQ4LCAKKyAgICAyMjUsIDEyLCAxMywgMjQ4LCAyMjQsIDEyLCAxMywgMjQ2LCAyMywgMTIsIDEzLCAyNDYsIDIyLCAxMiwgMTMsIDI0NiwgMjEsIAorICAgIDEyLCAxMywgMjQ2LCAyMCwgMTIsIDEzLCAyNDYsIDE5LCAxMiwgMTMsIDI0NiwgMTgsIDEyLCAxMywgMjQ2LCAxNywgMTIsIAorICAgIDEzLCAyNDYsIDE2LCAxMiwgMTMsIDI0NiwgMTUsIDEyLCAxMywgMjQ2LCAxNCwgMTIsIDEzLCAyNDYsIDEzLCAxMiwgMTMsIAorICAgIDI0NiwgMTIsIDEyLCAxMywgMjQ2LCAxMSwgMTIsIDEzLCAyNDYsIDEwLCAxMiwgMTMsIDI0NiwgOSwgMTIsIDEzLCAyNDYsIAorICAgIDgsIDEyLCAxMywgMjQ2LCA3LCAxMiwgMTMsIDI0NiwgNiwgMTIsIDEzLCAyNDYsIDUsIDEyLCAxMywgMjQ2LCA0LCAxMiwgCisgICAgMTMsIDI0NiwgMywgMTIsIDEzLCAyNDYsIDIsIDEyLCAxMywgMjQ2LCAxLCAxMiwgMTMsIDI0NiwgMCwgMTIsIDEzLCAyNDUsIAorICAgIDI1NSwgMTIsIDEzLCAyNDUsIDI1NCwgMTIsIDEzLCAyNDUsIDI1MywgMTIsIDEzLCAyNDUsIDI1MiwgMTIsIDEzLCAyNDUsIAorICAgIDI1MSwgMTIsIDEzLCAyNDUsIDI1MCwgMTIsIDEzLCAyNDUsIDI0OSwgMTIsIDEzLCAyNDUsIDI0OCwgMTIsIDEzLCAyNDUsIAorICAgIDI0NywgMTIsIDEzLCAyNDUsIDI0NiwgMTIsIDEzLCAyNDUsIDI0NSwgMTIsIDEzLCAyNDUsIDI0NCwgMTIsIDEzLCAyNDUsIAorICAgIDI0MywgMTIsIDEzLCAyNDUsIDI0MiwgMTIsIDEzLCAyNDUsIDI0MSwgMTIsIDEzLCAyNDUsIDI0MCwgMTIsIDEzLCAyNDUsIAorICAgIDIzOSwgMTIsIDEzLCAyNDUsIDIzOCwgMTIsIDEzLCAyNDUsIDIzNywgMTIsIDEzLCAyNDUsIDIzNiwgMTIsIDEzLCAyNDUsIAorICAgIDUsIDEyLCAxMywgMjQ1LCA0LCAxMiwgMTMsIDI0NSwgMywgMTIsIDEzLCAyNDUsIDIsIDEyLCAxMywgMjQ1LCAxLCAxMiwgCisgICAgMTMsIDI0NSwgMCwgMTIsIDEzLCAyNDQsIDI1NSwgMTIsIDEzLCAyNDQsIDI1NCwgMTIsIDEzLCAyNDQsIDI1MywgMTIsIDEzLCAKKyAgICAyNDQsIDI1MiwgMTIsIDEzLCAyNDQsIDI1MSwgMTIsIDEzLCAyNDQsIDI1MCwgMTIsIDEzLCAyNDQsIDI0OSwgMTIsIDEzLCAKKyAgICAyNDQsIDI0OCwgMTIsIDEzLCAyNDQsIDI0NywgMTIsIDEzLCAyNDQsIDI0NiwgMTIsIDEzLCAyNDQsIDI0NSwgMTIsIDEzLCAKKyAgICAyNDQsIDI0NCwgMTIsIDEzLCAyNDQsIDI0MywgMTIsIDEzLCAyNDQsIDI0MiwgMTIsIDEzLCAyNDQsIDI0MSwgMTIsIDEzLCAKKyAgICAyNDQsIDI0MCwgMTIsIDEzLCAyNDQsIDIzOSwgMTIsIDEzLCAyNDQsIDIzOCwgMTIsIDEzLCAyNDQsIDIzNywgMTIsIDEzLCAKKyAgICAyNDQsIDIzNiwgMTIsIDEzLCAyNDQsIDIzNSwgMTIsIDEzLCAyNDQsIDIzNCwgMTIsIDEzLCAyNDQsIDIzMywgMTIsIDEzLCAKKyAgICAyNDQsIDIzMiwgMTIsIDEzLCAyNDQsIDIzMSwgMTIsIDEzLCAyNDQsIDIzMCwgMTIsIDEzLCAyNDQsIDIyOSwgMTIsIDEzLCAKKyAgICAyNDQsIDIyOCwgMTIsIDEzLCAyNDQsIDIyNywgMTIsIDEzLCAyNDQsIDIyNiwgMTIsIDEzLCAyNDQsIDIyNSwgMTIsIDEzLCAKKyAgICAyNDQsIDIyNCwgMTIsIDEzLCAyNDQsIDIyMywgMTIsIDEzLCAyNDQsIDIyMiwgMTIsIDEzLCAyNDQsIDIyMSwgMTIsIDEzLCAKKyAgICAyNDQsIDIyMCwgMTIsIDEzLCAyNDQsIDIxOSwgMTIsIDEzLCAyNDQsIDIxOCwgMTIsIDEzLCAyNDQsIDIxNywgMTIsIDEzLCAKKyAgICAyNDQsIDIxNiwgMTIsIDEzLCAyNDQsIDIxNSwgMTIsIDEzLCAyNDQsIDIxNCwgMTIsIDEzLCAyNDQsIDIxMywgMTIsIDEzLCAKKyAgICAyNDQsIDIxMiwgMTIsIDEzLCAyNDQsIDIxMSwgMTIsIDEzLCAyNDQsIDIxMCwgMTIsIDEzLCAyNDQsIDIwOSwgMTIsIDEzLCAKKyAgICAyNDQsIDIwOCwgMTIsIDEzLCAyNDQsIDIwNywgMTIsIDEzLCAyNDQsIDIwNiwgMTIsIDEzLCAyNDQsIDIwNSwgMTIsIDEzLCAKKyAgICAyNDQsIDIwNCwgMTIsIDEzLCAyNDQsIDIwMywgMTIsIDEzLCAyNDQsIDIwMiwgMTIsIDEzLCAyNDQsIDIwMSwgMTIsIDEzLCAKKyAgICAyNDQsIDIwMCwgMTIsIDEzLCAyNDQsIDE5OSwgMTIsIDEzLCAyNDQsIDE5OCwgMTIsIDEzLCAyNDQsIDE5NywgMTIsIDEzLCAKKyAgICAyNDMsIDIwMSwgMTIsIDEzLCAyNDMsIDIwMCwgMTIsIDEzLCAyNDMsIDE5OSwgMTIsIDEzLCAyNDMsIDE5OCwgMTIsIDEzLCAKKyAgICAyNDMsIDE5NywgMTIsIDEzLCAyNDMsIDE5NiwgMTIsIDEzLCAyNDMsIDE5NSwgMTIsIDEzLCAyNDMsIDE5NCwgMTIsIDEzLCAKKyAgICAyNDMsIDE5MywgMTIsIDEzLCAyNDMsIDE5MiwgMTIsIDEzLCAyNDMsIDE5MSwgMTIsIDEzLCAyNDMsIDE5MCwgMTIsIDEzLCAKKyAgICAyNDMsIDE4OSwgMTIsIDEzLCAyNDMsIDE4OCwgMTIsIDEzLCAyNDMsIDE4NywgMTIsIDEzLCAyNDMsIDE4NiwgMTIsIDEzLCAKKyAgICAyNDMsIDE4NSwgMTIsIDEzLCAyNDMsIDE4NCwgMTIsIDEzLCAyNDMsIDE4MywgMTIsIDEzLCAyNDMsIDE4MiwgMTIsIDEzLCAKKyAgICAyNDMsIDE4MSwgMTIsIDEzLCAyNDMsIDE4MCwgMTIsIDEzLCAyNDMsIDE3OSwgMTIsIDEzLCAyNDMsIDE3OCwgMTIsIDEzLCAKKyAgICAyNDMsIDE3NywgMTIsIDEzLCAyNDMsIDE3NiwgMTIsIDEzLCAyNDMsIDE3NSwgMTIsIDEzLCAyNDMsIDE3NCwgMTIsIDEzLCAKKyAgICAyNDMsIDE3MywgMTIsIDEzLCAyNDMsIDE3MiwgMTIsIDEzLCAyNDMsIDE3MSwgMTIsIDEzLCAyNDMsIDE3MCwgMTIsIDEzLCAKKyAgICAyNDMsIDE2OSwgMTIsIDEzLCAyNDMsIDE2OCwgMTIsIDEzLCAyNDMsIDE2NywgMTIsIDEzLCAyNDMsIDE2NiwgMTIsIDEzLCAKKyAgICAyNDMsIDE2NSwgMTIsIDEzLCAyNDMsIDE2NCwgMTIsIDEzLCAyNDMsIDE2MywgMTIsIDEzLCAyNDMsIDE2MiwgMTIsIDEzLCAKKyAgICAyNDMsIDE2MSwgMTIsIDEzLCAyNDMsIDE2MCwgMTIsIDEzLCAyNDMsIDE1OSwgMTIsIDEzLCAyNDMsIDE1OCwgMTIsIDEzLCAKKyAgICAyNDMsIDE1NywgMTIsIDEzLCAyNDMsIDE1NiwgMTIsIDEzLCAyNDMsIDE1NSwgMTIsIDEzLCAyNDMsIDE1NCwgMTIsIDEzLCAKKyAgICAyNDMsIDE1MywgMTIsIDEzLCAyNDMsIDE1MiwgMTIsIDEzLCAyNDMsIDE1MSwgMTIsIDEzLCAyNDMsIDE1MCwgMTIsIDEzLCAKKyAgICAyNDMsIDE0OSwgMTIsIDEzLCAyNDMsIDE0OCwgMTIsIDEzLCAyNDMsIDE0NywgMTIsIDEzLCAyNDMsIDE0NiwgMTIsIDEzLCAKKyAgICAyNDMsIDE0NSwgMTIsIDEzLCAyNDMsIDE0NCwgMTIsIDEzLCAyNDMsIDE0MywgMTIsIDEzLCAyNDMsIDE0MiwgMTIsIDEzLCAKKyAgICAyNDMsIDE0MSwgMTIsIDEzLCAyNDMsIDE0MCwgMTIsIDEzLCAyNDMsIDEzOSwgMTIsIDEzLCAyNDMsIDEzOCwgMTIsIDEzLCAKKyAgICAyNDIsIDU4LCAxMiwgMTMsIDI0MiwgNTcsIDEyLCAxMywgMjQyLCA1NiwgMTIsIDEzLCAyNDIsIDU1LCAxMiwgMTMsIDI0MiwgCisgICAgNTQsIDEyLCAxMywgMjQyLCA1MywgMTIsIDEzLCAyNDIsIDUyLCAxMiwgMTMsIDI0MiwgNTEsIDEyLCAxMywgMjQyLCA1MCwgCisgICAgMTIsIDEzLCAyNDAsIDEzOCwgMTIsIDEzLCAyNDAsIDEzNywgMTIsIDEzLCAyNDAsIDEzNiwgMTIsIDEzLCAyNDAsIDEzNSwgCisgICAgMTIsIDEzLCAyNDAsIDEzNCwgMTIsIDEzLCAyNDAsIDEzMywgMTIsIDEzLCAyNDAsIDEzMiwgMTIsIDEzLCAyNDAsIDEzMSwgCisgICAgMTIsIDEzLCAyNDAsIDEzMCwgMTIsIDEzLCAyNDAsIDEyOSwgMTIsIDEzLCAyNDAsIDEyOCwgMTIsIDEzLCAyNDAsIDEyNywgCisgICAgMTIsIDEzLCAyNDAsIDEyNiwgMTIsIDEzLCAyNDAsIDEyNSwgMTIsIDEzLCAyNDAsIDEyNCwgMTIsIDEzLCAyNDAsIDEyMywgCisgICAgMTIsIDEzLCAyNDAsIDEyMiwgMTIsIDEzLCAyNDAsIDEyMSwgMTIsIDEzLCAyNDAsIDEyMCwgMTIsIDEzLCAyMzUsIDIyLCAKKyAgICAxMiwgMTMsIDIzNSwgMjEsIDEyLCAxMywgMjM1LCAyMCwgMTIsIDEzLCAyMzUsIDE5LCAxMiwgMTMsIDIzNSwgMTgsIDEyLCAKKyAgICAxMywgMjM1LCAxNywgMTIsIDEzLCAyMzUsIDE2LCAxMiwgMTMsIDIzNSwgMTUsIDEyLCAxMywgMjMzLCAxNDYsIDEyLCAxMywgCisgICAgMjMzLCAxNDUsIDEyLCAxMywgMjMzLCAxNDQsIDEyLCAxMywgMjMzLCAxNDMsIDEyLCAxMywgMjMzLCAxNDIsIDEyLCAxMywgCisgICAgMjMzLCAxNDEsIDEyLCAxMywgMjMzLCAxNDAsIDEyLCAxMywgMjMzLCAxMzksIDEyLCAxMywgMjMzLCAxMzgsIDEyLCAxMywgCisgICAgMjMzLCAxMzcsIDEyLCAxMywgMjMyLCA0OSwgMTIsIDEzLCAyMzIsIDQ4LCAxMiwgMTMsIDIzMiwgNDcsIDEyLCAxMywgMjMyLCAKKyAgICA0NiwgMTIsIDEzLCAyMzIsIDQ1LCAxMiwgMTMsIDIzMiwgNDQsIDEyLCAxMywgMjMyLCA0MywgMTIsIDEzLCAyMzIsIDQyLCAKKyAgICAxMiwgMTMsIDIzMiwgNDEsIDEyLCAxMywgMjMyLCA0MCwgMTIsIDEzLCAyMzIsIDM5LCAxMiwgMTMsIDIzMiwgMzgsIDEyLCAKKyAgICAxMywgMjMyLCAzNywgMTIsIDEzLCAyMzIsIDM2LCAxMiwgMTMsIDIzMiwgMzUsIDEyLCAxMywgMjMyLCAzNCwgMTIsIDEzLCAKKyAgICAyMzIsIDMzLCAxMiwgMTMsIDIzMiwgMzIsIDEyLCAxMywgMjMyLCAzMSwgMTIsIDEzLCAyMzIsIDMwLCAxMiwgMTMsIDIzMiwgCisgICAgMjksIDEyLCAxMywgMjMyLCAyOCwgMTIsIDEzLCAyMzIsIDI3LCAxMiwgMTMsIDIzMiwgMjYsIDEyLCAxMywgMjMyLCAyNSwgCisgICAgMTIsIDEzLCAyMzIsIDI0LCAxMiwgMTMsIDIzMiwgMjMsIDEyLCAxMywgMjMyLCAyMiwgMTIsIDEzLCAyMzIsIDIxLCAxMiwgCisgICAgMTMsIDIzMiwgMjAsIDEyLCAxMywgMjMyLCAxOSwgMTIsIDEzLCAyMzIsIDE4LCAxMiwgMTMsIDIzMiwgMTcsIDEyLCAxMywgCisgICAgMjMyLCAxNiwgMTIsIDEzLCAyMzIsIDE1LCAxMiwgMTMsIDIzMiwgMTQsIDEyLCAxMywgMjMyLCAxMywgMTIsIDEzLCAyMzIsIAorICAgIDEyLCAxMiwgMTMsIDIzMiwgMTEsIDEyLCAxMywgMjMyLCAxMCwgMTIsIDEzLCAyMzIsIDksIDEyLCAxMywgMjMyLCA4LCAxMiwgCisgICAgMTMsIDIzMiwgNywgMTIsIDEzLCAyMzIsIDYsIDEyLCAxMywgMjMyLCA1LCAxMiwgMTMsIDIzMiwgNCwgMTIsIDEzLCAyMzIsIAorICAgIDMsIDEyLCAxMywgMjMyLCAyLCAxMiwgMTMsIDIzMiwgMSwgMTIsIDEzLCAyMzIsIDAsIDEyLCAxMywgMjMxLCAyNTUsIDEyLCAKKyAgICAxMywgMjMxLCAyNTQsIDEyLCAxMywgMjMxLCAyNTMsIDEyLCAxMywgMjMxLCAyNTIsIDEyLCAxMywgMjMxLCAyNTEsIDEyLCAKKyAgICAxMywgMjMxLCAyNTAsIDEyLCAxMywgMjMxLCAyNDksIDEyLCAxMywgMjMxLCAyNDgsIDEyLCAxMywgMjMxLCAyNDcsIDEyLCAKKyAgICAxMywgMjMxLCAyNDYsIDEyLCAxMywgMjMxLCAyNDUsIDEyLCAxMywgMjMxLCAyNDQsIDEyLCAxMywgMjMxLCAyNDMsIDEyLCAKKyAgICAxMywgMjMxLCAyNDIsIDEyLCAxMywgMjMxLCAyNDEsIDEyLCAxMywgMjMxLCAyNDAsIDEyLCAxMywgMjMwLCAyMiwgMTIsIAorICAgIDEzLCAyMzAsIDIxLCAxMiwgMTMsIDIzMCwgMjAsIDEyLCAxMywgMjMwLCAxOSwgMTIsIDEzLCAyMzAsIDE4LCAxMiwgMTMsIAorICAgIDIzMCwgMTcsIDEyLCAxMywgMjMwLCAxNiwgMTIsIDEzLCAyMzAsIDE1LCAxMiwgMTMsIDIzMCwgMTQsIDEyLCAxMywgMjMwLCAKKyAgICAxMywgMTIsIDEzLCAyMzAsIDEyLCAxMiwgMTMsIDIzMCwgMTEsIDEyLCAxMywgMjMwLCAxMCwgMTIsIDEzLCAyMzAsIDksIAorICAgIDEyLCAxMywgMjMwLCA4LCAxMiwgMTMsIDIzMCwgNywgMTIsIDEzLCAyMzAsIDYsIDEyLCAxMywgMjMwLCA1LCAxMiwgMTMsIAorICAgIDIzMCwgNCwgMTIsIDEzLCAyMzAsIDMsIDEyLCAxMywgMjMwLCAyLCAxMiwgMTMsIDIzMCwgMSwgMTIsIDEzLCAyMzAsIDAsIAorICAgIDEyLCAxMywgMjI5LCAyNTUsIDEyLCAxMywgMjI5LCAyNTQsIDEyLCAxMywgMjI5LCAyNTMsIDEyLCAxMywgMjI5LCAyNTIsIAorICAgIDEyLCAxMywgMjI5LCAyNTEsIDEyLCAxMywgMjI5LCAyNTAsIDEyLCAxMywgMjI5LCAyNDksIDEyLCAxMywgMjI5LCAyNDgsIAorICAgIDEyLCAxMywgMjI5LCAyNDcsIDEyLCAxMywgMjI5LCAyNDYsIDEyLCAxMywgMjI5LCAyNDUsIDEyLCAxMywgMjI5LCAyNDQsIAorICAgIDEyLCAxMywgMjI5LCAyNDMsIDEyLCAxMywgMjI5LCAyNDIsIDEyLCAxMywgMjI5LCAyNDEsIDEyLCAxMywgMjI5LCAyNDAsIAorICAgIDEyLCAxMywgMjI5LCAyMzksIDEyLCAxMywgMjI5LCAyMzgsIDEyLCAxMywgMjI5LCAyMzcsIDEyLCAxMywgMjI5LCAyMzYsIAorICAgIDEyLCAxMywgMjI5LCAyMzUsIDEyLCAxMywgMjI5LCAyMzQsIDEyLCAxMywgMjI5LCAyMzMsIDEyLCAxMywgMjI5LCAyMzIsIAorICAgIDEyLCAxMywgMjI5LCAyMzEsIDEyLCAxMywgMjI5LCAyMzAsIDEyLCAxMywgMjI4LCAxMzQsIDEyLCAxMywgMjI4LCAxMzMsIAorICAgIDEyLCAxMywgMjI4LCAxMzIsIDEyLCAxMywgMjI4LCAxMzEsIDEyLCAxMywgMjI4LCAxMzAsIDEyLCAxMywgMjI4LCAxMjksIAorICAgIDEyLCAxMywgMjI4LCAxMjgsIDEyLCAxMywgMjI4LCAxMjcsIDEyLCAxMywgMjI4LCAxMjYsIDEyLCAxMywgMjI4LCAxMjUsIAorICAgIDEyLCAxMywgMjI4LCAxMjQsIDEyLCAxMywgMjI4LCAxMjMsIDEyLCAxMywgMjI4LCAxMjIsIDEyLCAxMywgMjI4LCAxMjEsIAorICAgIDEyLCAxMywgMjI4LCAxMjAsIDEyLCAxMywgMjI4LCAxMTksIDEyLCAxMywgMjI4LCAxMTgsIDEyLCAxMywgMjI4LCAxMTcsIAorICAgIDEyLCAxMywgMjI4LCAxMTYsIDEyLCAxMywgMjI4LCAxMTUsIDEyLCAxMywgMjI4LCAxMTQsIDEyLCAxMywgMjI4LCAxMTMsIAorICAgIDEyLCAxMywgMjI3LCAyMzYsIDEyLCAxMywgMjI3LCAyMzUsIDEyLCAxMywgMjI3LCAyMzQsIDEyLCAxMywgMjI3LCAyMzMsIAorICAgIDEyLCAxMywgMjI3LCAyMzIsIDEyLCAxMywgMjI3LCAyMzEsIDEyLCAxMywgMjI3LCAyMzAsIDEyLCAxMywgMjI3LCAyMjksIAorICAgIDEyLCAxMywgMjI3LCAyMjgsIDEyLCAxMywgMjI3LCAyMjcsIDEyLCAxMywgMjI3LCAyMjYsIDEyLCAxMywgMjI3LCAyMjUsIAorICAgIDEyLCAxMywgMjI3LCAyMjQsIDEyLCAxMywgMjI3LCAyMjMsIDEyLCAxMywgMjI3LCAyMjIsIDEyLCAxMywgMjI3LCAyMjEsIAorICAgIDEyLCAxMywgMjI3LCAyMjAsIDEyLCAxMywgMjI3LCAyMTksIDEyLCAxMywgMjI3LCAyMTgsIDEyLCAxMywgMjI3LCAyMTcsIAorICAgIDEyLCAxMywgMjI3LCAyMTYsIDEyLCAxMywgMjI3LCAyMTUsIDEyLCAxMywgMjI3LCAyMTQsIDEyLCAxMywgMjI3LCAyMTMsIAorICAgIDEyLCAxMywgMjI3LCAyMTIsIDEyLCAxMywgMjI3LCAyMTEsIDEyLCAxMywgMjI3LCA3NiwgMTIsIDEzLCAyMjcsIDc1LCAxMiwgCisgICAgMTMsIDIyNywgNzQsIDEyLCAxMywgMjI3LCA3MywgMTIsIDEzLCAyMjcsIDcyLCAxMiwgMTMsIDIyNywgNzEsIDEyLCAxMywgCisgICAgMjI3LCA3MCwgMTIsIDEzLCAyMjcsIDY5LCAxMiwgMTMsIDIyNywgNjgsIDEyLCAxMywgMjI3LCA2NywgMTIsIDEzLCAyMjcsIAorICAgIDY2LCAxMiwgMTMsIDIyNywgNjUsIDEyLCAxMywgMjI3LCA2NCwgMTIsIDEzLCAyMjcsIDYzLCAxMiwgMTMsIDIyNywgNjIsIAorICAgIDEyLCAxMywgMjI3LCA2MSwgMTIsIDEzLCAyMjcsIDYwLCAxMiwgMTMsIDIyNywgNTksIDEyLCAxMywgMjI3LCA1OCwgMTIsIAorICAgIDEzLCAyMjcsIDU3LCAxMiwgMTMsIDIyNywgNTYsIDEyLCAxMywgMjI3LCA1NSwgMTIsIDEzLCAyMjcsIDU0LCAxMiwgMTMsIAorICAgIDIyNywgNTMsIDEyLCAxMywgMjI3LCA1MiwgMTIsIDEzLCAyMjcsIDUxLCAxMiwgMTMsIDIyNywgNTAsIDEyLCAxMywgMjI3LCAKKyAgICA0OSwgMTIsIDEzLCAyMjcsIDQ4LCAxMiwgMTMsIDIyNywgNDcsIDEyLCAxMywgMjI3LCA0NiwgMTIsIDEzLCAyMjcsIDQ1LCAKKyAgICAxMiwgMTMsIDIyNywgNDQsIDEyLCAxMywgMjI3LCA0MywgMTIsIDEzLCAyMjcsIDQyLCAxMiwgMTMsIDIyNywgNDEsIDEyLCAKKyAgICAxMywgMjI3LCA0MCwgMTIsIDEzLCAyMjcsIDM5LCAxMiwgMTMsIDIyNywgMzgsIDEyLCAxMywgMjI3LCAzNywgMTIsIDEzLCAKKyAgICAyMjcsIDM2LCAxMiwgMTMsIDIyNywgMzUsIDEyLCAxMywgMjI3LCAzNCwgMTIsIDEzLCAyMjcsIDMzLCAxMiwgMTMsIDIyNywgCisgICAgMzIsIDEyLCAxMywgMjI3LCAzMSwgMTIsIDEzLCAyMjcsIDMwLCAxMiwgMTMsIDIyNywgMjksIDEyLCAxMywgMjI3LCAyOCwgCisgICAgMTIsIDEzLCAyMjcsIDI3LCAxMiwgMTMsIDIyNywgMjYsIDEyLCAxMywgMjI3LCAyNSwgMTIsIDEzLCAyMjcsIDI0LCAxMiwgCisgICAgMTMsIDIyNywgMjMsIDEyLCAxMywgMjI3LCAyMiwgMTIsIDEzLCAyMjcsIDIxLCAxMiwgMTMsIDIyNywgMjAsIDEyLCAxMywgCisgICAgMjI3LCAxOSwgMTIsIDEzLCAyMjcsIDE4LCAxMiwgMTMsIDIyNywgMTcsIDEyLCAxMywgMjI3LCAxNiwgMTIsIDEzLCAyMjcsIAorICAgIDE1LCAxMiwgMTMsIDIyNywgMTQsIDEyLCAxMywgMjI3LCAxMywgMTIsIDEzLCAyMjcsIDEyLCAxMiwgMTMsIDIyNywgMTEsIAorICAgIDEyLCAxMywgMjI3LCAxMCwgMTIsIDEzLCAyMjcsIDksIDEyLCAxMywgMjI3LCA4LCAxMiwgMTMsIDIyNywgNywgMTIsIDEzLCAKKyAgICAyMjcsIDYsIDEyLCAxMywgMjI3LCA1LCAxMiwgMTMsIDIyNywgNCwgMTIsIDEzLCAyMjcsIDMsIDEyLCAxMywgMjI3LCAyLCAKKyAgICAxMiwgMTMsIDIyNiwgMTA0LCAxMiwgMTMsIDIyNiwgMTAzLCAxMiwgMTMsIDIyNiwgMTAyLCAxMiwgMTMsIDIyNiwgMTAxLCAKKyAgICAxMiwgMTMsIDIyNiwgMTAwLCAxMiwgMTMsIDIyNiwgOTksIDEyLCAxMywgMjI2LCA5OCwgMTIsIDEzLCAyMjYsIDk3LCAxMiwgCisgICAgMTMsIDIyNiwgOTYsIDEyLCAxMywgMjI2LCA5NSwgMTIsIDEzLCAyMjYsIDk0LCAxMiwgMTMsIDIyNiwgOTMsIDEyLCAxMywgCisgICAgMjI2LCA5MiwgMTIsIDEzLCAyMjQsIDk1LCAxMiwgMTMsIDIyNCwgOTQsIDEyLCAxMywgMjI0LCA5MywgMTIsIDEzLCAyMjQsIAorICAgIDkyLCAxMiwgMTMsIDIyNCwgOTEsIDEyLCAxMywgMjI0LCA5MCwgMTIsIDEzLCAyMjQsIDg5LCAxMiwgMTMsIDIyMywgMjIyLCAKKyAgICAxMiwgMTMsIDIyMywgMjIxLCAxMiwgMTMsIDIyMywgMjIwLCAxMiwgMTMsIDIyMywgMjE5LCAxMiwgMTMsIDIyMywgMjE4LCAKKyAgICAxMiwgMTMsIDIyMywgMjE3LCAxMiwgMTMsIDIyMywgMjE2LCAxMiwgMTMsIDIyMywgMjE1LCAxMiwgMTMsIDIyMywgMjE0LCAKKyAgICAxMiwgMTMsIDIyMywgMjEzLCAxMiwgMTMsIDIyMywgMjEyLCAxMiwgMTMsIDIyMywgMjExLCAxMiwgMTMsIDIyMywgMjEwLCAKKyAgICAxMiwgMTMsIDIyMywgMjA5LCAxMiwgMTMsIDIyMywgMjA4LCAxMiwgMTMsIDIyMywgMjA3LCAxMiwgMTMsIDIyMywgMjA2LCAKKyAgICAxMiwgMTMsIDIyMywgMjA1LCAxMiwgMTMsIDIyMywgMjA0LCAxMiwgMTMsIDIyMywgMjAzLCAxMiwgMTMsIDIyMywgMjAyLCAKKyAgICAxMiwgMTMsIDIyMywgMjAxLCAxMiwgMTMsIDIyMywgMjAwLCAxMiwgMTMsIDIyMywgMTk5LCAxMiwgMTMsIDIyMywgMTk4LCAKKyAgICAxMiwgMTMsIDIyMywgMTk3LCAxMiwgMTMsIDIyMywgMTk2LCAxMiwgMTMsIDIyMywgMTk1LCAxMiwgMTMsIDIyMywgMTk0LCAKKyAgICAxMiwgMTMsIDIyMywgMTkzLCAxMiwgMTMsIDIyMywgMTkyLCAxMiwgMTMsIDIyMywgMTkxLCAxMiwgMTMsIDIyMywgMTkwLCAKKyAgICAxMiwgMTMsIDIyMywgMTg5LCAxMiwgMTMsIDIyMiwgODgsIDEyLCAxMywgMjIyLCA4NywgMTIsIDEzLCAyMjIsIDg2LCAxMiwgCisgICAgMTMsIDIyMiwgODUsIDEyLCAxMywgMjIyLCA4NCwgMTIsIDEzLCAyMjIsIDgzLCAxMiwgMTMsIDIyMiwgODIsIDEyLCAxMywgCisgICAgMjIyLCA4MSwgMTIsIDEzLCAyMjIsIDgwLCAxMiwgMTMsIDIyMiwgNzksIDEyLCAxMywgMjIyLCA3OCwgMTIsIDEzLCAyMjIsIAorICAgIDc3LCAxMiwgMTMsIDIyMiwgNzYsIDEyLCAxMywgMjIyLCA3NSwgMTIsIDEzLCAyMjIsIDc0LCAxMiwgMTMsIDIyMiwgNzMsIAorICAgIDEyLCAxMywgMjIyLCA3MiwgMTIsIDEzLCAyMjIsIDcxLCAxMiwgMTMsIDIyMiwgNzAsIDEyLCAxMywgMjIyLCA2OSwgMTIsIAorICAgIDEzLCAyMjIsIDY4LCAxMiwgMTMsIDIyMiwgNjcsIDEyLCAxMywgMjIyLCA2NiwgMTIsIDEzLCAyMjIsIDY1LCAxMiwgMTMsIAorICAgIDIyMiwgNjQsIDEyLCAxMywgMjIyLCA2MywgMTIsIDEzLCAyMjIsIDYyLCAxMiwgMTMsIDIyMiwgNjEsIDEyLCAxMywgMjIyLCAKKyAgICA2MCwgMTIsIDEzLCAyMjIsIDU5LCAxMiwgMTMsIDIyMiwgNTgsIDEyLCAxMywgMjIyLCA1NywgMTIsIDEzLCAyMjIsIDU2LCAKKyAgICAxMiwgMTMsIDIyMiwgNTUsIDEyLCAxMywgMjIyLCA1NCwgMTIsIDEzLCAyMjIsIDUzLCAxMiwgMTMsIDIyMiwgNTIsIDEyLCAKKyAgICAxMywgMjIyLCA1MSwgMTIsIDEzLCAyMjIsIDUwLCAxMiwgMTMsIDIyMiwgNDksIDEyLCAxMywgMjIyLCA0OCwgMTIsIDEzLCAKKyAgICAyMjIsIDQ3LCAxMiwgMTMsIDIyMiwgNDYsIDEyLCAxMywgMjIyLCA0NSwgMTIsIDEzLCAyMjIsIDQ0LCAxMiwgMTMsIDIyMiwgCisgICAgNDMsIDEyLCAxMywgMjIyLCA0MiwgMTIsIDEzLCAyMjIsIDQxLCAxMiwgMTMsIDIyMiwgNDAsIDEyLCAxMywgMjIyLCAzOSwgCisgICAgMTIsIDEzLCAyMjIsIDM4LCAxMiwgMTMsIDIyMiwgMzcsIDEyLCAxMywgMjIyLCAzNiwgMTIsIDEzLCAyMjIsIDM1LCAxMiwgCisgICAgMTMsIDIxNywgMTUwLCAxMiwgMTMsIDIxNywgMTQ5LCAxMiwgMTMsIDIxNywgMTQ4LCAxMiwgMTMsIDIxNywgMTQ3LCAxMiwgCisgICAgMTMsIDIxNywgMTQ2LCAxMiwgMTMsIDIxNywgMTQ1LCAxMiwgMTMsIDIxNywgMTQ0LCAxMiwgMTMsIDIxNywgMTQzLCAxMiwgCisgICAgMTMsIDIxNywgMTQyLCAxMiwgMTMsIDIxNywgMTQxLCAxMiwgMTMsIDIxNywgMTQwLCAxMiwgMTMsIDIxNywgMTM5LCAxMiwgCisgICAgMTMsIDIxNywgMTM4LCAxMiwgMTMsIDIxNywgMTM3LCAxMiwgMTMsIDIxNywgMTM2LCAxMiwgMTMsIDIxNywgMTM1LCAxMiwgCisgICAgMTMsIDIxNywgMTM0LCAxMiwgMTMsIDIxNywgMTMzLCAxMiwgMTMsIDIxNywgMTMyLCAxMiwgMTMsIDIxNywgMTMxLCAxMiwgCisgICAgMTMsIDIxNywgMTMwLCAxMiwgMTMsIDIxNywgMTI5LCAxMiwgMTMsIDIxNywgMTI4LCAxMiwgMTMsIDIxNywgMTI3LCAxMiwgCisgICAgMTMsIDIxNywgMTI2LCAxMiwgMTMsIDIxNywgMTI1LCAxMiwgMTMsIDIxNywgMTI0LCAxMiwgMTMsIDIxNywgMTIzLCAxMiwgCisgICAgMTMsIDIxNywgMTIyLCAxMiwgMTMsIDIxNywgMTIxLCAxMiwgMTMsIDIxNywgMTIwLCAxMiwgMTMsIDIxNywgMTE5LCAxMiwgCisgICAgMTMsIDIxNywgMTE4LCAxMiwgMTMsIDIxNywgMTE3LCAxMiwgMTMsIDIxNywgMTE2LCAxMiwgMTMsIDIxNywgMTE1LCAxMiwgCisgICAgMTMsIDIxNywgMTE0LCAxMiwgMTMsIDIxNywgMTEzLCAxMiwgMTMsIDIxNywgMTEyLCAxMiwgMTMsIDIxNywgMTExLCAxMiwgCisgICAgMTMsIDIxNywgMTEwLCAxMiwgMTMsIDIxNywgMTA5LCAxMiwgMTMsIDIxNywgMTA4LCAxMiwgMTMsIDIxNywgMTA3LCAxMiwgCisgICAgMTMsIDIxNSwgMjIsIDEyLCAxMywgMjE1LCAyMSwgMTIsIDEzLCAyMTUsIDIwLCAxMiwgMTMsIDIxNSwgMTksIDEyLCAxMywgCisgICAgMjE1LCAxOCwgMTIsIDEzLCAyMTUsIDE3LCAxMiwgMTMsIDIxNSwgMTYsIDEyLCAxMywgMjE1LCAxNSwgMTIsIDEzLCAyMTUsIAorICAgIDE0LCAxMiwgMTMsIDIxNSwgMTMsIDEyLCAxMywgMjE1LCAxMiwgMTIsIDEzLCAyMTUsIDExLCAxMiwgMTMsIDIxNSwgMTAsIAorICAgIDEyLCAxMywgMjE1LCA5LCAxMiwgMTMsIDIxNSwgOCwgMTIsIDEzLCAyMTUsIDcsIDEyLCAxMywgMjE1LCA2LCAxMiwgMTMsIAorICAgIDIxNSwgNSwgMTIsIDEzLCAyMTUsIDQsIDEyLCAxMywgMjE1LCAzLCAxMiwgMTMsIDIxNSwgMiwgMTIsIDEzLCAyMTUsIDEsIAorICAgIDEyLCAxMywgMjE1LCAwLCAxMiwgMTMsIDIxNCwgMjU1LCAxMiwgMTMsIDIxNCwgMjU0LCAxMiwgMTMsIDIxNCwgMjUzLCAxMiwgCisgICAgMTMsIDIxNCwgMjUyLCAxMiwgMTMsIDIxNCwgMjUxLCAxMiwgMTMsIDIxNCwgMjUwLCAxMiwgMTMsIDIxNCwgMjQ5LCAxMiwgCisgICAgMTMsIDIxNCwgMjQ4LCAxMiwgMTMsIDIxNCwgMjQ3LCAxMiwgMTMsIDIxNCwgMjQ2LCAxMiwgMTMsIDIxNCwgMjQ1LCAxMiwgCisgICAgMTMsIDIxNCwgMjQ0LCAxMiwgMTMsIDIxNCwgMjQzLCAxMiwgMTMsIDIxNCwgMjQyLCAxMiwgMTMsIDIxNCwgMjQxLCAxMiwgCisgICAgMTMsIDIxNCwgMjQwLCAxMiwgMTMsIDIxNCwgMjM5LCAxMiwgMTMsIDIxNCwgMjM4LCAxMiwgMTMsIDIxNCwgMjM3LCAxMiwgCisgICAgMTMsIDIxNCwgMjM2LCAxMiwgMTMsIDIxNCwgMjM1LCAxMiwgMTMsIDIxNCwgMjM0LCAxMiwgMTMsIDIxNCwgMjMzLCAxMiwgCisgICAgMTMsIDIxNCwgMjMyLCAxMiwgMTMsIDIxNCwgMTA0LCAxMiwgMTMsIDIxNCwgMTAzLCAxMiwgMTMsIDIxNCwgMTAyLCAxMiwgCisgICAgMTMsIDIxNCwgMTAxLCAxMiwgMTMsIDIxNCwgMTAwLCAxMiwgMTMsIDIxNCwgOTksIDEyLCAxMywgMjE0LCA5OCwgMTIsIDEzLCAKKyAgICAyMTQsIDk3LCAxMiwgMTMsIDIxNCwgOTYsIDEyLCAxMywgMjE0LCA5NSwgMTIsIDEzLCAyMTQsIDk0LCAxMiwgMTMsIDIxNCwgCisgICAgOTMsIDEyLCAxMywgMjE0LCA5MiwgMTIsIDEzLCAyMTQsIDkxLCAxMiwgMTMsIDIxNCwgOTAsIDEyLCAxMywgMjE0LCA4OSwgCisgICAgMTIsIDEzLCAyMTQsIDg4LCAxMiwgMTMsIDIxNCwgODcsIDEyLCAxMywgMjE0LCA4NiwgMTIsIDEzLCAyMTQsIDg1LCAxMiwgCisgICAgMTMsIDIxNCwgODQsIDEyLCAxMywgMjE0LCA4MywgMTIsIDEzLCAyMTQsIDgyLCAxMiwgMTMsIDIxNCwgODEsIDEyLCAxMywgCisgICAgMjE0LCA4MCwgMTIsIDEzLCAyMTQsIDc5LCAxMiwgMTMsIDIxNCwgNzgsIDEyLCAxMywgMjE0LCA3NywgMTIsIDEzLCAyMTQsIAorICAgIDc2LCAxMiwgMTMsIDIxNCwgNzUsIDEyLCAxMywgMjE0LCA3NCwgMTIsIDEzLCAyMTQsIDczLCAxMiwgMTMsIDIxNCwgNzIsIAorICAgIDEyLCAxMywgMjE0LCA3MSwgMTIsIDEzLCAyMTQsIDcwLCAxMiwgMTMsIDIxNCwgNjksIDEyLCAxMywgMjE0LCA2OCwgMTIsIAorICAgIDEzLCAyMTQsIDY3LCAxMiwgMTMsIDIxNCwgNjYsIDEyLCAxMywgMjE0LCA2NSwgMTIsIDEzLCAyMTQsIDY0LCAxMiwgMTMsIAorICAgIDIxNCwgNjMsIDEyLCAxMywgMjE0LCA2MiwgMTIsIDEzLCAyMTQsIDYxLCAxMiwgMTMsIDIxNCwgNjAsIDEyLCAxMywgMjE0LCAKKyAgICA1OSwgMTIsIDEzLCAyMTQsIDU4LCAxMiwgMTMsIDIxNCwgNTcsIDEyLCAxMywgMjE0LCA1NiwgMTIsIDEzLCAyMTQsIDU1LCAKKyAgICAxMiwgMTMsIDIxNCwgNTQsIDEyLCAxMywgMjE0LCA1MywgMTIsIDEzLCAyMTQsIDUyLCAxMiwgMTMsIDIxNCwgNTEsIDEyLCAKKyAgICAxMywgMjE0LCA1MCwgMTIsIDEzLCAyMTQsIDQ5LCAxMiwgMTMsIDIxNCwgNDgsIDEyLCAxMywgMjE0LCA0NywgMTIsIDEzLCAKKyAgICAyMTQsIDQ2LCAxMiwgMTMsIDIxNCwgNDUsIDEyLCAxMywgMjE0LCA0NCwgMTIsIDEzLCAyMTQsIDQzLCAxMiwgMTMsIDIxNCwgCisgICAgNDIsIDEyLCAxMywgMjE0LCA0MSwgMTIsIDEzLCAyMTQsIDQwLCAxMiwgMTMsIDIxNCwgMzksIDEyLCAxMywgMjE0LCAzOCwgCisgICAgMTIsIDEzLCAyMTQsIDM3LCAxMiwgMTMsIDIxNCwgMzYsIDEyLCAxMywgMjE0LCAzNSwgMTIsIDEzLCAyMTQsIDM0LCAxMiwgCisgICAgMTMsIDIxNCwgMzMsIDEyLCAxMywgMjE0LCAzMiwgMTIsIDEzLCAyMTQsIDMxLCAxMiwgMTMsIDIxNCwgMzAsIDEyLCAxMywgCisgICAgMjE0LCAyOSwgMTIsIDEzLCAyMTQsIDI4LCAxMiwgMTMsIDIxMiwgOTcsIDEyLCAxMywgMjEyLCA5NiwgMTIsIDEzLCAyMTIsIAorICAgIDk1LCAxMiwgMTMsIDIxMiwgOTQsIDEyLCAxMywgMjEyLCA5MywgMTIsIDEzLCAyMTIsIDkyLCAxMiwgMTMsIDIxMiwgOTEsIAorICAgIDEyLCAxMywgMjEyLCA5MCwgMTIsIDEzLCAyMTIsIDg5LCAxMiwgMTMsIDIxMiwgODgsIDEyLCAxMywgMjEyLCA4NywgMTIsIAorICAgIDEzLCAyMTIsIDg2LCAxMiwgMTMsIDIxMiwgODUsIDEyLCAxMywgMjEyLCA4NCwgMTIsIDEzLCAyMTIsIDgzLCAxMiwgMTMsIAorICAgIDIxMiwgODIsIDEyLCAxMywgMjEyLCA4MSwgMTIsIDEzLCAyMTIsIDgwLCAxMiwgMTMsIDIxMiwgNzksIDEyLCAxMywgMjEyLCAKKyAgICA3OCwgMTIsIDEzLCAyMTIsIDc3LCAxMiwgMTMsIDIxMiwgNzYsIDEyLCAxMywgMjEyLCA3NSwgMTIsIDEzLCAyMTIsIDc0LCAKKyAgICAxMiwgMTMsIDIxMiwgNzMsIDEyLCAxMywgMjEyLCA3MiwgMTIsIDEzLCAyMTIsIDcxLCAxMiwgMTMsIDIxMiwgNzAsIDEyLCAKKyAgICAxMywgMjEyLCA2OSwgMTIsIDEzLCAyMTIsIDY4LCAxMiwgMTMsIDIxMiwgNjcsIDEyLCAxMywgMjEyLCA2NiwgMTIsIDEzLCAKKyAgICAyMTEsIDE3NywgMTIsIDEzLCAyMTEsIDE3NiwgMTIsIDEzLCAyMTEsIDE3NSwgMTIsIDEzLCAyMTEsIDE3NCwgMTIsIDEzLCAKKyAgICAyMTEsIDE3MywgMTIsIDEzLCAyMTEsIDE3MiwgMTIsIDEzLCAyMTEsIDE3MSwgMTIsIDEzLCAyMTEsIDE3MCwgMTIsIDEzLCAKKyAgICAyMTEsIDE2OSwgMTIsIDEzLCAyMTEsIDE2OCwgMTIsIDEzLCAyMTEsIDE2NywgMTIsIDEzLCAyMTEsIDE2NiwgMTIsIDEzLCAKKyAgICAyMTEsIDExNSwgMTIsIDEzLCAyMTEsIDExNCwgMTIsIDEzLCAyMTEsIDExMywgMTIsIDEzLCAyMTEsIDExMiwgMTIsIDEzLCAKKyAgICAyMTEsIDExMSwgMTIsIDEzLCAyMTEsIDExMCwgMTIsIDEzLCAyMTEsIDEwOSwgMTIsIDEzLCAyMTEsIDEwOCwgMTIsIDEzLCAKKyAgICAyMTEsIDEwNywgMTIsIDEzLCAyMTAsIDE1OCwgMTIsIDEzLCAyMTAsIDE1NywgMTIsIDEzLCAyMTAsIDE1NiwgMTIsIDEzLCAKKyAgICAyMTAsIDE1NSwgMTIsIDEzLCAyMTAsIDE1NCwgMTIsIDEzLCAyMTAsIDE1MywgMTIsIDEzLCAyMTAsIDE1MiwgMTIsIDEzLCAKKyAgICAyMTAsIDE1MSwgMTIsIDEzLCAyMTAsIDE1MCwgMTIsIDEzLCAyMTAsIDE0OSwgMTIsIDEzLCAyMTAsIDE0OCwgMTIsIDEzLCAKKyAgICAyMTAsIDE0NywgMTIsIDEzLCAyMTAsIDE0NiwgMTIsIDEzLCAyMTAsIDE0NSwgMTIsIDEzLCAyMTAsIDE0NCwgMTIsIDEzLCAKKyAgICAyMTAsIDE0MywgMTIsIDEzLCAyMTAsIDE0MiwgMTIsIDEzLCAyMTAsIDE0MSwgMTIsIDEzLCAyMTAsIDE0MCwgMTIsIDEzLCAKKyAgICAyMTAsIDEzOSwgMTIsIDEzLCAyMTAsIDEzOCwgMTIsIDEzLCAyMTAsIDEzNywgMTIsIDEzLCAyMTAsIDEzNiwgMTIsIDEzLCAKKyAgICAyMTAsIDEzNSwgMTIsIDEzLCAyMTAsIDEzNCwgMTIsIDEzLCAyMTAsIDEzMywgMTIsIDEzLCAyMTAsIDEzMiwgMTIsIDEzLCAKKyAgICAyMTAsIDEzMSwgMTIsIDEzLCAyMTAsIDEzMCwgMTIsIDEzLCAyMTAsIDEyOSwgMTIsIDEzLCAyMTAsIDEyOCwgMTIsIDEzLCAKKyAgICAyMTAsIDEyNywgMTIsIDEzLCAyMTAsIDEyNiwgMTIsIDEzLCAyMTAsIDEyNSwgMTIsIDEzLCAyMTAsIDEyNCwgMTIsIDEzLCAKKyAgICAyMTAsIDEyMywgMTIsIDEzLCAyMTAsIDEyMiwgMTIsIDEzLCAyMTAsIDEyMSwgMTIsIDEzLCAyMTAsIDEyMCwgMTIsIDEzLCAKKyAgICAyMTAsIDExOSwgMTIsIDEzLCAyMTAsIDExOCwgMTIsIDEzLCAyNTUsIDcyLCAxMiwgMTMsIDI1NSwgNzEsIDEyLCAxMywgCisgICAgMjU1LCA3MCwgMTIsIDEzLCAyNTUsIDY5LCAxMiwgMTMsIDI1NSwgNjgsIDEyLCAxMywgMjU1LCA2NywgMTIsIDEzLCAyNTUsIAorICAgIDY2LCAxMiwgMTMsIDI1NSwgNjUsIDEyLCAxMywgMjU1LCA2NCwgMTIsIDEzLCAyNTUsIDYzLCAxMiwgMTMsIDI1NSwgNjIsIAorICAgIDEyLCAxMywgMjU1LCA2MSwgMTIsIDEzLCAyNTUsIDYwLCAxMiwgMTMsIDI1NSwgNTksIDEyLCAxMywgMjU1LCA1OCwgMTIsIAorICAgIDEzLCAyNTUsIDU3LCAxMiwgMTMsIDI1NSwgNTYsIDEyLCAxMywgMjU1LCA1NSwgMTIsIDEzLCAyNTUsIDU0LCAxMiwgMTMsIAorICAgIDI1NSwgNTMsIDEyLCAxMywgMjU1LCA1MiwgMTIsIDEzLCAyNTUsIDUxLCAxMiwgMTMsIDI1NSwgNTAsIDEyLCAxMywgMjU1LCAKKyAgICA0OSwgMTIsIDEzLCAyNTUsIDQ4LCAxMiwgMTMsIDI1NSwgNDcsIDEyLCAxMywgMjU1LCA0NiwgMTIsIDEzLCAyNTUsIDQ1LCAKKyAgICAxMiwgMTMsIDI1NSwgNDQsIDEyLCAxMywgMjU1LCA0MywgMTIsIDEzLCAyNTUsIDQyLCAxMiwgMTMsIDI1NSwgNDEsIDEyLCAKKyAgICAxMywgMjU1LCA0MCwgMTIsIDEzLCAyNTUsIDM5LCAyMCwgMSwgMTY3LCAyMjksIDEyLCAyMzEsIDE2LCAyMCwgMSwgMTY3LCAKKyAgICAyNDMsIDcwLCAyNDQsIDM2LCAyMCwgMSwgMTY3LCAyMjQsIDI1MSwgMjMxLCAxNywgMjI1LCA1NywgMjAsIDEsIDE2NywgCisgICAgMjI0LCAyNTEsIDIzMSwgMTcsIDIyNSwgNTgsIDIwLCAxLCAxNjcsIDIyOSwgMjI2LCAyMzEsIDE2LCAyMCwgMSwgMTY3LCAKKyAgICAyMTksIDIyMSwgMjAsIDEsIDE2NywgMjE2LCA2NiwgMjMxLCAxNiwgMjAsIDEsIDE2NywgMjI3LCAxMTgsIDIzMSwgMTYsIAorICAgIDIwLCAxLCAxNjcsIDIyMCwgMTksIDIyNiwgOTAsIDIyOCwgMTY5LCAyMCwgMSwgMTY3LCAyMjQsIDI1MSwgMjI2LCA5MCwgCisgICAgMjI4LCAxNzAsIDIyNSwgNTcsIDIwLCAxLCAxNjcsIDIyNCwgMjUxLCAyMjYsIDkwLCAyMjgsIDE3MCwgMjI1LCA1OCwgMjAsIAorICAgIDEsIDE2NywgMjMxLCAyMTgsIDIwLCAxLCAxNjcsIDIxNSwgMTE5LCAyMzEsIDIxOSwgMjAsIDEsIDE2NywgMjI5LCA3MSwgCisgICAgMjAsIDEsIDE2NywgMjMxLCAyMTUsIDIwLCAxLCAxNjcsIDIzMSwgMTc2LCAyMCwgMSwgMTY3LCAyMzAsIDQ4LCAyMCwgMSwgCisgICAgMTY3LCAyMjAsIDEyNCwgMjAsIDEsIDE2NywgMjI3LCAyNDEsIDIwLCAxLCAxNjcsIDIzNCwgMTQ5LCAyMCwgMSwgMTY3LCAKKyAgICAyMjgsIDEzOCwgMjAsIDEsIDE2NywgMjE4LCA0LCAyMCwgMSwgMTY3LCAyMjksIDExLCAyMCwgMSwgMTY3LCAyMzMsIDg3LCAKKyAgICAyMCwgMSwgMTY3LCAyMzMsIDEyLCAyMzMsIDE4OSwgMjAsIDEsIDE2NywgMjI3LCAyNDgsIDIzMSwgMjQsIDIwLCAxLCAxNjcsIAorICAgIDIzMSwgMjIyLCAyMCwgMSwgMTY3LCAyMjUsIDI0NiwgMjAsIDEsIDE2NywgMjQyLCAyMzEsIDIwLCAxLCAxNjcsIDIyNiwgCisgICAgNTAsIDIwLCAxLCAxNjcsIDIzMCwgMTUxLCAyMjksIDQ1LCAyMCwgMSwgMTY3LCAyMjcsIDk5LCAyMzEsIDI3LCAyMCwgMSwgCisgICAgMTY3LCAxMDQsIDIxMCwgMTg4LCAyMjksIDIyMCwgMjAsIDEsIDE2NywgMjQyLCAyMzIsIDIwLCAxLCAxNjcsIDIyNywgMjQ4LCAKKyAgICAyMjcsIDI0OSwgMjAsIDEsIDE2NywgMjE5LCAxMjgsIDIwLCAxLCAxNjcsIDIzMSwgOSwgMjAsIDEsIDE2NywgMjMxLCAzMCwgCisgICAgMjAsIDEsIDE2NywgMjMwLCAxMzAsIDIwLCAxLCAxNjcsIDIzNCwgMjQ5LCAyMCwgMSwgMTY3LCAyMjYsIDkwLCAyMzMsIDQ3LCAKKyAgICAyMCwgMSwgMTY3LCAyMjksIDE0OSwgMjMzLCA0NywgMjAsIDEsIDE2NywgMjI1LCAxNTgsIDIwLCAxLCAxNjcsIDIzMSwgCisgICAgMjE2LCAyMCwgMSwgMTY3LCAyMjgsIDIwNywgMjAsIDEsIDE2NywgMjI0LCAxMzQsIDIwLCAxLCAxNjcsIDIxNSwgMTE2LCAKKyAgICAyMCwgMSwgMTY3LCAyMzIsIDk0LCAyMCwgMSwgMTY3LCAyMTksIDQxLCAyMCwgMSwgMTY3LCAyMTYsIDIxNiwgMjAsIDEsIAorICAgIDE2NywgMjMxLCAyMTMsIDIwLCAxLCAxNjcsIDIzNCwgMTU2LCAyMCwgMSwgMTY3LCAyMjksIDE0NSwgMjAsIDEsIDE2NywgCisgICAgMjMzLCAyMDEsIDIwLCAxLCAxNjcsIDIzMCwgMTMxLCAyMCwgMSwgMTY3LCAyMTksIDIxOCwgMjAsIDEsIDE2NywgMjMyLCAKKyAgICAxMzgsIDIwLCAxLCAxNjcsIDI0NCwgOTMsIDIwLCAxLCAxNjcsIDIyMiwgMTk5LCAyMCwgMSwgMTY3LCAyMzMsIDI0MSwgMjAsIAorICAgIDEsIDE2NywgMjE5LCAzNywgMjAsIDEsIDE2NywgMjMxLCAxNzMsIDIyNSwgOTksIDIwLCAxLCAxNjcsIDIyMCwgMTIsIDIwLCAKKyAgICAxLCAxNjcsIDIyNywgMjQ3LCAyMCwgMSwgMTY3LCAyMTksIDI1MywgMjI4LCAyLCAyMTAsIDE5NiwgMjAsIDEsIDE2NywgCisgICAgMjI3LCAxMzgsIDIzMCwgMTQ4LCAyMCwgMSwgMTY3LCAyMjYsIDg1LCAyMCwgMSwgMTY3LCAyMjgsIDEzOSwgMjAsIDEsIAorICAgIDE2NywgMjE0LCAxNzAsIDIwLCAxLCAxNjcsIDIyOSwgNDgsIDIwLCAxLCAxNjcsIDIzMSwgMjEyLCAyMCwgMSwgMTY3LCAKKyAgICAyMjgsIDE4MSwgMjAsIDEsIDE2NywgMjMxLCAxMTksIDIwLCAxLCAxNjcsIDIyNywgMTUxLCAyMCwgMSwgMTY3LCAyMTYsIAorICAgIDIyMCwgMjAsIDEsIDE2NywgMjE5LCAzNCwgMjAsIDEsIDE2NywgMjI2LCA4NiwgMjAsIDEsIDE2NywgMjI4LCA2LCAyMCwgMSwgCisgICAgMTY3LCAyMzEsIDIyMCwgMjAsIDEsIDE2NywgMjI3LCAxNDgsIDIwLCAxLCAxNjcsIDIzNCwgMjE2LCAyMCwgMSwgMTY3LCAKKyAgICAyMjgsIDksIDIwLCAxLCAxNjcsIDIxMywgMjUwLCAyMCwgMSwgMTY3LCAyMzIsIDk4LCAyMCwgMSwgMTY3LCAyMjksIDk4LCAKKyAgICAyMCwgMSwgMTY3LCAyMjksIDE5NiwgMjAsIDEsIDE2NywgMjMxLCAxMTgsIDIwLCAxLCAyMjUsIDEzOCwgMjI4LCA0LCAyMCwgCisgICAgMSwgMjI1LCAxMzgsIDIxNSwgMTE5LCAyMzEsIDIxNywgMjAsIDEsIDIyNSwgMTM4LCAyMTksIDE4NSwgMjAsIDEsIDIyNSwgCisgICAgMTM4LCAyMjAsIDEyOCwgMjE1LCAxMTgsIDIwLCAxLCAyMjUsIDEzOCwgMjMyLCAxNDAsIDIyNywgMjQ0LCAyMCwgMSwgMjI1LCAKKyAgICAxMzgsIDIzMSwgMTI1LCAyMzEsIDIyMSwgMjAsIDEsIDIyNSwgMTM4LCAyMzQsIDg3LCAyMCwgMSwgMjI1LCAxMzgsIDIxMSwgCisgICAgMTUsIDIwLCAxLCAyMjUsIDEzOCwgMjMxLCAxMjAsIDIwLCAxLCAyMjUsIDEzOCwgMjM0LCAyMzcsIDIwLCAxLCAyMjUsIAorICAgIDEzOCwgMjI1LCAyMDgsIDIwLCAxLCAyMjUsIDEzOCwgMjExLCA4OSwgMjMzLCA0NywgMjAsIDEsIDIyNSwgMTM4LCAyMzMsIAorICAgIDEwMywgMjI4LCAyLCAyMjcsIDE2MCwgMjAsIDEsIDIyNSwgMTM4LCAyMjcsIDI0MiwgMjIwLCAzOCwgMjAsIDEsIDIyNSwgCisgICAgMTM4LCAyMjksIDExNiwgMjI4LCAxODQsIDIwLCAxLCAyMjUsIDEzOCwgMjQyLCAyMjksIDIwLCAxLCAyMjUsIDEzOCwgMjI1LCAKKyAgICA0OSwgMjAsIDEsIDIyNSwgMTM4LCAyMTUsIDExOSwgMjI4LCAwLCAyMCwgMSwgMjI1LCAxMzgsIDIyMCwgNDMsIDIyOCwgCisgICAgMTc5LCAyMCwgMSwgMjI1LCAxMzgsIDIyMCwgMzksIDIwLCAxLCAyMjUsIDEzOCwgMjMxLCAxNywgMjE2LCAyMTksIDIwLCAxLCAKKyAgICAyMjUsIDEzOCwgMjMxLCAxMDcsIDIzMSwgMTIxLCAyMCwgMSwgMjI1LCAxMzgsIDIyNywgMTQ5LCAyMjcsIDI0NCwgMjAsIDEsIAorICAgIDIyNSwgMTM4LCAyMzQsIDE0NSwgMjAsIDEsIDIyNSwgMTM4LCAyNDIsIDIzMCwgMjAsIDEsIDIyNSwgMTM4LCAyMzQsIDE0MSwgCisgICAgMjAsIDEsIDIyNSwgMTM4LCAyMzMsIDEyOSwgMjAsIDEsIDIyNSwgMTM4LCAyMjUsIDI0OSwgMjAsIDEsIDIyNSwgMTM4LCAKKyAgICAyMTMsIDE4MiwgMjAsIDEsIDIyNSwgMTM4LCAyMjksIDEzLCAyMzAsIDQ2LCAyMCwgMSwgMjI1LCAxMzgsIDIyOSwgNDcsIAorICAgIDIzMSwgMTAzLCAyMCwgMSwgMjI1LCAxMzgsIDIxMSwgMTkzLCAyMCwgMSwgMjI1LCAxMzgsIDIyMiwgMTEsIDIwLCAxLCAKKyAgICAyMjUsIDEzOCwgMjE3LCA5NywgMjAsIDEsIDIyNSwgMTM4LCAyMzEsIDI5LCAyMCwgMSwgMjI1LCAxMzgsIDIyOSwgMzIsIAorICAgIDIwLCAxLCAyMjUsIDEzOCwgMjI5LCAzMywgMjMzLCA4NCwgMjAsIDEsIDIyNSwgMTM4LCAyMzEsIDE5LCAyMCwgMSwgMjI1LCAKKyAgICAxMzgsIDIxOCwgNTIsIDIwLCAxLCAyMjUsIDEzOCwgMjMxLCAxMTEsIDIwLCAxLCAyMjUsIDEzOCwgMjMwLCAxMzMsIDIwLCAKKyAgICAxLCAyMjUsIDEzOCwgMjI3LCAxNjMsIDIwLCAxLCAyMjUsIDEzOCwgMjI0LCAxMzgsIDIwLCAxLCAyMjUsIDEzOCwgMjMxLCAKKyAgICAyOCwgMjI5LCA0OSwgMjAsIDEsIDIyNSwgMTM4LCAyNDQsIDEyNiwgMjAsIDEsIDIyNSwgMTM4LCAyMzEsIDk4LCAyMCwgMSwgCisgICAgMjI1LCAxMzgsIDI0NCwgMTQ3LCAyMCwgMSwgMjI1LCAxMzgsIDIzNCwgMTUzLCAyMCwgMSwgMjI1LCAxMzgsIDIzMSwgMjM5LCAKKyAgICAyMjgsIDE3MywgMjAsIDEsIDIyNSwgMTM4LCAyMzEsIDIzOSwgMjI4LCAxNDksIDIwLCAxLCAyMjUsIDEzOCwgMjMzLCAxMSwgCisgICAgMjAsIDEsIDIyNSwgMTM4LCAyMjksIDU1LCAyMCwgMSwgMjI1LCAxMzgsIDIyOCwgMTEsIDIwLCAxLCAyMjUsIDEzOCwgMTg0LCAKKyAgICAyMCwgMSwgMjI1LCAxMzgsIDIzNCwgNzQsIDIwLCAxLCAyMjUsIDEzOCwgMjI5LCAxLCAyMCwgMSwgMTM3LCAyMjksIDEyLCAKKyAgICAyMzEsIDIxOSwgMjAsIDEsIDEzNywgMjI3LCAxMTcsIDIwLCAxLCAxMzcsIDIxMCwgMTk2LCAyMCwgMSwgMTM3LCAyMTIsIAorICAgIDUzLCAyMCwgMSwgMTM3LCAyMjksIDQ4LCAyMCwgMSwgMTM3LCAyMjksIDEzNywgMjAsIDEsIDEzNywgMjI5LCAxOSwgMjAsIAorICAgIDEsIDEzNywgMjQyLCAyMzksIDIwLCAxLCAxMzcsIDIzMSwgMTE1LCAyMCwgMSwgMTM3LCAyNDMsIDc3LCAyMCwgMSwgMTM3LCAKKyAgICAyMjcsIDE0MCwgMjMwLCAxNzAsIDIzMSwgMzEsIDIwLCAxLCAxMzcsIDIyNywgMjQwLCAyMzEsIDEwNiwgMjAsIDEsIDEzNywgCisgICAgMjMxLCAxMTIsIDIwLCAxLCAxMzcsIDIyNSwgNTUsIDIwLCAxLCAxMzcsIDIyOSwgMTIyLCAyMCwgMSwgMTM3LCAyMzEsIAorICAgIDEyMywgMjUxLCAyOSwgMjAsIDEsIDEzNywgMjM0LCAxNDMsIDIwLCAxLCAxMzcsIDI0MiwgMjQwLCAyMCwgMSwgMTM3LCAKKyAgICAyMzQsIDE1MCwgMjAsIDEsIDEzNywgMjEwLCAyMTMsIDIzMCwgNzYsIDIwLCAxLCAxMzcsIDIyNywgMTExLCAyMCwgMSwgCisgICAgMTM3LCAyMzEsIDEwMCwgMjAsIDEsIDEzNywgMjI4LCAxMCwgMjAsIDEsIDEzNywgMjMxLCAxMDYsIDIwLCAxLCAxMzcsIAorICAgIDIxMSwgMTYsIDIwLCAxLCAxMzcsIDIzMywgMjQ5LCAyMCwgMSwgMTM3LCAyMzUsIDEwLCAyMCwgMSwgMTM3LCAyMjAsIDEyMywgCisgICAgMjAsIDEsIDEzNywgMjI5LCAxMzEsIDIwLCAxLCAxMzcsIDIxNywgOTUsIDIwLCAxLCAxMzcsIDIyOCwgMTUzLCAyMCwgMSwgCisgICAgMTM3LCAyMTYsIDY2LCAyMTAsIDE5OCwgMjAsIDEsIDEzNywgMjE4LCA3OSwgMjAsIDEsIDEzNywgMjI5LCAzOSwgMjI3LCAKKyAgICAxNjAsIDIwLCAxLCAxMzcsIDIxMywgMTgxLCAyMCwgMSwgMTM3LCAyMjksIDE5OSwgMjAsIDEsIDEzNywgMjMxLCAyMzksIAorICAgIDIzNCwgMTUyLCAyMCwgMSwgMTM3LCAyMjcsIDI0OSwgMjAsIDEsIDEzNywgMjI5LCAzNCwgMjAsIDEsIDEzNywgMjMzLCA4OCwgCisgICAgMjAsIDEsIDEzNywgMjMxLCAxMDgsIDIwLCAxLCAxMzcsIDIzMSwgOCwgMjAsIDEsIDEzNywgMjI3LCAyNDMsIDIwLCAxLCAKKyAgICAxMzcsIDIxNiwgMjE1LCAyMCwgMSwgMTM3LCAyMjksIDM2LCAyMCwgMSwgMTM3LCAyNDMsIDIzMywgMjAsIDEsIDEzNywgCisgICAgMjI5LCAxMzYsIDIwLCAxLCAxMzcsIDIyOCwgMTIsIDIwLCAxLCAxMzcsIDIyOCwgOCwgMjAsIDEsIDEzNywgMjUxLCAxMDcsIAorICAgIDIwLCAxLCAxMzcsIDIxMywgMTgzLCAyMCwgMSwgMTM3LCAyMzEsIDExMywgMjAsIDEsIDEzNywgMjIyLCAxNDAsIDIwLCAxLCAKKyAgICAxMzcsIDIyOCwgMTgzLCAyMCwgMSwgMTM3LCAyMzMsIDEwMiwgMjAsIDEsIDEzNywgMjE2LCA2NCwgMjAsIDEsIDEzNywgCisgICAgMjI3LCAyNTAsIDIyOSwgMSwgMjAsIDEsIDEzNywgMjI4LCAxNzUsIDIwLCAxLCAxMzcsIDIzNCwgMTU2LCAyMCwgMSwgMTM3LCAKKyAgICAyMjksIDQwLCAyMCwgMSwgMTM3LCAyMzEsIDIxMiwgMjAsIDEsIDEzNywgMjMxLCAxMDEsIDIwLCAxLCAxMzcsIDIzMiwgOTgsIAorICAgIDIwLCAxLCAxMzcsIDIzMywgMTg5LCAyMCwgMSwgMTM3LCAyMjgsIDE4MSwgMjAsIDEsIDEzNywgMjI5LCAxLCAyMCwgMSwgCisgICAgMTM3LCAyMTEsIDE4NCwgMjAsIDEsIDEzNywgMjI5LCAzNywgMjAsIDEsIDEzNywgMjI3LCAyNTMsIDIwLCAxLCAxMzcsIAorICAgIDIyNywgMjQ1LCAyMCwgMSwgMTM3LCAyMzMsIDIwMywgMjI4LCAxMzksIDIwLCAxLCAxMzcsIDIyNywgMjUxLCAyMCwgMSwgCisgICAgMTM3LCAyMjksIDE0NCwgMjAsIDEsIDEzNywgMjMxLCAyMzksIDIyOCwgMCwgMjAsIDEsIDEzNywgMjExLCAxMDMsIDIwLCAxLCAKKyAgICAxMzcsIDIyOSwgMTQzLCAyMCwgMSwgMTM3LCAyMTksIDIyMCwgMjAsIDEsIDEzNywgMjIwLCAxMjYsIDIwLCAxLCAxMzcsIAorICAgIDIzMSwgMTA5LCAyMCwgMSwgMTM3LCAyMzEsIDIxOSwgMjAsIDEsIDEzNywgMjMxLCAxMTksIDIwLCAxLCAxMzcsIDIzNCwgCisgICAgMTQ0LCAyMCwgMSwgMTM3LCAyMzEsIDExMCwgMjAsIDEsIDEzNywgMjM0LCAxNDgsIDIwLCAxLCAxMzcsIDIzMSwgMTIzLCAKKyAgICAyMjUsIDEwMywgMjAsIDEsIDEzNywgMjEwLCAxNzksIDIwLCAxLCAxMzcsIDIyOCwgMTcxLCAyMCwgMSwgMTM3LCAyMzAsIAorICAgIDIyMCwgMjAsIDEsIDEzNywgMjMwLCAxMDAsIDIwLCAxLCAxMzcsIDIyMCwgMTUsIDIwLCAxLCAxMzcsIDIzNCwgMTY2LCAKKyAgICAyMzMsIDcwLCAyMCwgMSwgMTM3LCAyMzQsIDE2NiwgMjQ0LCAxNjAsIDIwLCAxLCAxMzcsIDIyOSwgNjksIDIwLCAxLCAxMzcsIAorICAgIDIyOSwgMTk2LCAyMCwgMSwgMTM3LCAyMzIsIDIwMCwgMjAsIDEsIDEzNywgMjI1LCA2NSwgMjAsIDEsIDEzNywgMjI1LCAKKyAgICAxOTksIDIwLCAxLCAxMzcsIDIxNiwgMjMwLCAyMCwgMSwgMTA3LCAyMzEsIDk5LCAyMCwgMSwgMTA3LCAyMTIsIDUxLCAyMCwgCisgICAgMSwgMTA3LCAyMjgsIDE2OSwgMjAsIDEsIDEwNywgMjMxLCAxNiwgMjAsIDEsIDEwNywgMjI4LCAxNjcsIDIwLCAxLCAxMDcsIAorICAgIDIzMiwgMjM1LCAyMCwgMSwgMTA3LCAyMjgsIDE3MiwgMjAsIDEsIDEwNywgMjI4LCA3LCAyMCwgMSwgMTA3LCAyMjksIDU0LCAKKyAgICAyMCwgMSwgMTA3LCAyMjcsIDE2MCwgMjAsIDEsIDEwNywgMjExLCAxOTQsIDIwLCAxLCAxMDcsIDIyOSwgOSwgMjAsIDEsIAorICAgIDEwNywgMjIwLCA2MSwgMjAsIDEsIDEwNywgMjI5LCAyMCwgMjAsIDEsIDEwNywgMjM0LCAxNTEsIDIwLCAxLCAxMDcsIDIxNiwgCisgICAgMjE3LCAyMCwgMSwgMTA3LCAyMjAsIDQxLCAyMCwgMSwgMTA3LCAyMjgsIDE4MCwgMjAsIDEsIDEwNywgMjE4LCA1MiwgMjAsIAorICAgIDEsIDEwNywgMjM0LCAxNTYsIDIwLCAxLCAxMDcsIDIxMSwgOTEsIDIwLCAxLCAxMDcsIDIzMywgMjA0LCAyMCwgMSwgMTA3LCAKKyAgICAyMjEsIDIzNCwgMjAsIDEsIDEwNywgMjMxLCAyMSwgMjAsIDEsIDEwNywgMjI5LCAxMzUsIDIwLCAxLCAxMDcsIDIzMSwgCisgICAgMTg4LCAyMCwgMSwgMTA3LCAyMzEsIDI3LCAyMCwgMSwgMTA3LCAyMjAsIDEyNSwgMjAsIDEsIDEwNywgMjExLCAzOSwgMjAsIAorICAgIDEsIDEwNywgMjI4LCAxNzQsIDIwLCAxLCAxMDcsIDIzNCwgMTQ3LCAyMzEsIDEwMiwgMjAsIDEsIDEwNywgMjI5LCAxNiwgCisgICAgMjAsIDEsIDEwNywgMjE1LCAxMTgsIDIwLCAxLCAxMDcsIDI0MiwgMjQ4LCAyMCwgMSwgMTA3LCAyMjksIDYsIDIwLCAxLCAKKyAgICAxMDcsIDI0NCwgMTI3LCAyMCwgMSwgMTA3LCAyMjksIDEzOSwgMjAsIDEsIDEwNywgMjMxLCAwLCAyMCwgMSwgMTA3LCAyMzMsIAorICAgIDUsIDIwLCAxLCAxMDcsIDIyOSwgMTIxLCAyMCwgMSwgMTA3LCAyMzAsIDE0NywgMjAsIDEsIDEwNywgMjMxLCA0LCAyMCwgMSwgCisgICAgMTA3LCAyMjQsIDExOCwgMjAsIDEsIDEwNywgMjMxLCAyLCAyMCwgMSwgMTA3LCAyMzEsIDE4LCAyMCwgMSwgMTA3LCAyMzIsIAorICAgIDg0LCAyMCwgMSwgMTA3LCAyMjcsIDI1NSwgMjAsIDEsIDEwNywgMjMxLCAxMjIsIDIwLCAxLCAxMDcsIDIzMywgMTgwLCAyMCwgCisgICAgMSwgMTA3LCAyMjcsIDE1MSwgMjAsIDEsIDEwNywgMjE2LCAyMjAsIDIwLCAxLCAxMDcsIDIxOSwgMzQsIDIwLCAxLCAxMDcsIAorICAgIDIxMCwgMTc5LCAyMCwgMSwgMTA3LCAyMzQsIDE0OCwgMjAsIDEsIDEwNywgMjIzLCAxNzAsIDIwLCAxLCAxMDcsIDIxNywgCisgICAgMTAsIDIwLCAxLCAxMDcsIDIyOSwgMTcsIDIwLCAxLCAxMDcsIDIzMSwgMjMsIDIwLCAxLCAxMDcsIDIyNywgMjU0LCAyMCwgCisgICAgMSwgMTA3LCAyMzQsIDE0NiwgMjAsIDEsIDEwNywgMjI1LCA1OSwgMjAsIDEsIDEwNywgMjI1LCAxNTIsIDIwLCAxLCAxMDcsIAorICAgIDIyNywgMTI3LCAyMCwgMSwgMTA3LCAyMzMsIDExLCAyMCwgMSwgMTA3LCAyMjksIDU1LCAyMCwgMSwgMTA3LCAyMzEsIDIwLCAKKyAgICAyMCwgMSwgMTA3LCAyMjksIDI5LCAyMCwgMSwgMTA3LCAyMTAsIDE5MywgMjAsIDEsIDEwNywgMjI2LCAyMSwgMjAsIDEsIAorICAgIDEwNywgMjEwLCAxOTIsIDIwLCAxLCAxMDcsIDIyOSwgMTQ0LCAyMCwgMSwgMTA3LCAyMjcsIDI0NCwgMjAsIDEsIDEwNywgCisgICAgMjE4LCA4MSwgMjAsIDEsIDEwNywgMjMzLCAyMDgsIDIwLCAxLCAxMDcsIDIyOSwgNDQsIDIwLCAxLCAxMDcsIDIyOSwgMTQsIAorICAgIDIwLCAxLCAxMDcsIDIxNSwgMTAyLCAyMCwgMSwgMTA3LCAyMzEsIDMxLCAyMCwgMSwgMTA3LCAyMzMsIDE5OCwgMjAsIDEsIAorICAgIDEwNywgMjI3LCAyNTIsIDIwLCAxLCAxMDcsIDIxNiwgMjE4LCAyMCwgMSwgMTA3LCAyMzEsIDIxNCwgMjAsIDEsIDEwNywgCisgICAgMjI5LCA1MywgMjAsIDEsIDEwNywgMjMzLCA0LCAyMCwgMSwgMTA3LCAyMjksIDM1LCAyMCwgMSwgMTA3LCAyMjgsIDEsIDIwLCAKKyAgICAxLCAxMDcsIDIyOCwgMTUzLCAyMCwgMSwgMTA3LCAyNDIsIDIzMywgMjAsIDEsIDEwNywgMjMzLCAyMTcsIDIwLCAxLCAxMDcsIAorICAgIDIyMywgODQsIDIyNiwgMjA5LCAyMCwgMSwgMTA3LCAyMTcsIDg2LCAyMCwgMSwgMTA3LCAyMTYsIDEwLCAyMCwgMSwgMTA3LCAKKyAgICAyMjcsIDE0OCwgMjAsIDEsIDEwNywgMjIyLCAyMzksIDIwLCAxLCAxMDcsIDIzMywgNDksIDIwLCAxLCAxMDcsIDIzMSwgNzksIAorICAgIDIwLCAxLCAxMDcsIDE5MywgMjAsIDEsIDEwNywgMjE4LCA0LCAyMCwgMSwgMTA3LCAyMzAsIDEwMiwgMjAsIDEsIDEwNywgCisgICAgMjIwLCAyNywgMjAsIDEsIDEwNywgMjIwLCAzNywgMjAsIDEsIDEwNywgMjMzLCAxNTUsIDIwLCAxLCAxMDcsIDIyNywgMjM3LCAKKyAgICAyMCwgMSwgMTA3LCAyMTksIDIyNSwgMjAsIDEsIDEwNywgMjI3LCAyNDYsIDIwLCAxLCAxMDcsIDIyNSwgMjExLCAyMCwgMSwgCisgICAgMTA3LCAyMjgsIDIzMywgMjAsIDEsIDEwNywgMjE5LCAyNTIsIDIwLCAxLCAxMDcsIDIyNCwgMTMzLCAyMCwgMSwgMTA3LCAKKyAgICAyMzAsIDQ2LCAyMCwgMSwgMTA3LCAyMzIsIDExOSwgMjAsIDEsIDEwNywgMjIzLCA4NCwgMjMwLCA5NiwgMjAsIDEsIDEwNywgCisgICAgMjE2LCAxMTcsIDIwLCAxLCAxMDcsIDIyNywgMjM4LCAyMCwgMSwgMTA3LCAyMzEsIDEyMywgMTk4LCAyMCwgMSwgMTA3LCAKKyAgICAyMjEsIDIzMiwgMjAsIDEsIDEwNywgMjQ0LCAxOTUsIDIwLCAxLCA4MiwgMjI5LCAxNDMsIDIwLCAxLCA4MiwgMjE2LCAxNiwgCisgICAgMjAsIDEsIDgyLCAyMzEsIDExMiwgMjAsIDEsIDgyLCAyMzMsIDg4LCAyMCwgMSwgODIsIDIxMywgMTI4LCAyMCwgMSwgODIsIAorICAgIDIzMiwgMTI1LCAyMCwgMSwgODIsIDIyNiwgODksIDIwLCAxLCA4MiwgMjE5LCA0NSwgMjAsIDEsIDgyLCAyMjMsIDE0NSwgCisgICAgMjAsIDEsIDgyLCAyMjgsIDMsIDIwLCAxLCA4MiwgMjI5LCAxMTQsIDIwLCAxLCA4MiwgMjI0LCAxNDcsIDIwLCAxLCA4MiwgCisgICAgMjE3LCA2MiwgMjAsIDEsIDgyLCAyMjksIDIyLCAyMCwgMSwgODIsIDIzMywgMjQ1LCAyMCwgMSwgODIsIDIxMSwgMTg3LCAKKyAgICAyMCwgMSwgODIsIDIyMSwgMTcwLCAyMCwgMSwgODIsIDIyOSwgNDUsIDIwLCAxLCA4MiwgMjI2LCA4NiwgMjAsIDEsIDgyLCAKKyAgICAyMTYsIDE3LCAyMCwgMSwgODIsIDIzMywgMjAyLCAyMCwgMSwgODIsIDIzMiwgMTM5LCAyMCwgMSwgODIsIDIyOCwgNiwgMjAsIAorICAgIDEsIDgyLCAyMjgsIDI1NCwgMjAsIDEsIDgyLCAyMzEsIDIyMCwgMjAsIDEsIDgyLCAyMjksIDE1LCAyMCwgMSwgODIsIDIyOCwgCisgICAgMjUzLCAyMCwgMSwgODIsIDIyOCwgNSwgMjAsIDEsIDgyLCAyMjIsIDIzNywgMjAsIDEsIDgyLCAyMjgsIDE3MSwgMjAsIDEsIAorICAgIDgyLCAyMjUsIDIxMCwgMjAsIDEsIDgyLCAyMjIsIDMxLCAyMCwgMSwgODIsIDIyOSwgMzAsIDIwLCAxLCA4MiwgMjMxLCAxMCwgCisgICAgMjAsIDEsIDgyLCAyNDIsIDIyNywgMjAsIDEsIDgyLCAyMjksIDE4LCAyMCwgMSwgODIsIDIyOCwgMTgyLCAyMCwgMSwgODIsIAorICAgIDIzMSwgMTcyLCAyMCwgMSwgODIsIDIzMiwgMTIxLCAyMCwgMSwgODIsIDIyOSwgNTAsIDIwLCAxLCA4MiwgMjI5LCAxMjcsIAorICAgIDIwLCAxLCA4MiwgMjE3LCA4NSwgMjI3LCAyNDQsIDIwLCAxLCA4MiwgMjIwLCAxMjcsIDIwLCAxLCA4MiwgMjI0LCAxNDMsIAorICAgIDIwLCAxLCA4MiwgMjI5LCAxNDcsIDIxOSwgNTEsIDIwLCAxLCA4MiwgMjI5LCAzOCwgMjI3LCAxNjAsIDIwLCAxLCA4MiwgCisgICAgMjExLCA0LCAyMCwgMSwgODIsIDI0MiwgMjI4LCAyMCwgMSwgODIsIDIxNSwgMTE3LCAyMCwgMSwgODIsIDIxMSwgMTksIDIwLCAKKyAgICAxLCA4MiwgMjI1LCAxNiwgMjAsIDEsIDgyLCAyMTUsIDEwNywgMjAsIDEsIDgyLCAyMzQsIDE1NCwgMjAsIDEsIDgyLCAyMTgsIAorICAgIDgwLCAyMCwgMSwgODIsIDIxNiwgMjE5LCAyMCwgMSwgODIsIDIxMywgMTg0LCAyMCwgMSwgODIsIDIxMiwgNiwgMjAsIDEsIAorICAgIDgyLCAyMzMsIDEzMiwgMjAsIDEsIDgyLCAyMjQsIDE1MCwgMjAsIDEsIDgyLCAyMTcsIDk2LCAyMCwgMSwgODIsIDI0MiwgCisgICAgMjQ3LCAyMCwgMSwgODIsIDIyOSwgNTksIDIwLCAxLCA4MiwgMjIwLCA0MCwgMjAsIDEsIDgyLCAyMzEsIDUsIDIwLCAxLCAKKyAgICA4MiwgMjMxLCAxMTYsIDIwLCAxLCA4MiwgMjI3LCAxMTUsIDIwLCAxLCA4MiwgMjI4LCAxMzYsIDIwLCAxLCA4MiwgMjQzLCAKKyAgICA3MywgMjAsIDEsIDgyLCAyMTUsIDEwOCwgMjAsIDEsIDgyLCAyMzMsIDIxMSwgMjAsIDEsIDgyLCAyMTEsIDY3LCAyMCwgMSwgCisgICAgODIsIDIyNywgMTQ5LCAyNTAsIDE2LCAyMCwgMSwgODIsIDIxMCwgMjUwLCAyMCwgMSwgODIsIDIzMSwgMjIsIDIwLCAxLCAKKyAgICA4MiwgMjI5LCAxMzIsIDIwLCAxLCA4MiwgMjI1LCAxMDAsIDIwLCAxLCA4MiwgMjEwLCAxOTcsIDIwLCAxLCA4MiwgMjMzLCAKKyAgICA2LCAyMCwgMSwgODIsIDI0MywgMjMzLCAyMCwgMSwgODIsIDI0MywgNzIsIDIwLCAxLCA4MiwgMjI5LCA4LCAyMCwgMSwgODIsIAorICAgIDIzNCwgMTU2LCAyMCwgMSwgODIsIDIzMSwgMjIzLCAyMCwgMSwgODIsIDIyOSwgMjEsIDIwLCAxLCA4MiwgMjQyLCAyMzQsIAorICAgIDIwLCAxLCA4MiwgMjQ0LCAxOTYsIDIwLCAxLCA4MiwgMjI3LCAyMzksIDIwLCAxLCA4MiwgMjI1LCAxNTMsIDIwLCAxLCA4MiwgCisgICAgMjExLCAxNywgMjAsIDEsIDgyLCAyMjksIDQ2LCAyMCwgMSwgODIsIDIyNywgMTQ5LCAyNTIsIDIzLCAyMCwgMSwgODIsIAorICAgIDIyNywgOTUsIDIwLCAxLCA4MiwgMjI0LCAyNDcsIDIwLCAxLCA4MiwgMjMwLCAyMjAsIDIwLCAxLCA4MiwgMjQzLCAyMzEsIAorICAgIDIwLCAxLCA4MiwgMjI5LCAyMjAsIDIwLCAxLCA4MiwgMjMwLCAxMDAsIDIwLCAxLCA4MiwgMjQyLCAyMzMsIDIwLCAxLCA4MiwgCisgICAgMjQzLCAyMzUsIDczLCAyMCwgMSwgODIsIDIzMCwgNDcsIDIwLCAxLCA4MiwgMjI0LCAxNDYsIDIwLCAxLCA4MiwgMjI5LCAKKyAgICAxMCwgMjAsIDEsIDgyLCAyMzMsIDE4OSwgMjAsIDEsIDgyLCAyMjUsIDk3LCAyMCwgMSwgODIsIDIyNywgMjQ3LCAyMCwgMSwgCisgICAgODIsIDIxMSwgMTgsIDIwLCAxLCA4MiwgMjI5LCAzMSwgMjAsIDEsIDgyLCAyMjYsIDkwLCAyMjUsIDE4NywgMjAsIDEsIDgyLCAKKyAgICAyNDMsIDIzNSwgMjUxLCAxNSwgMjAsIDEsIDgyLCAyNDQsIDM3LCAyMCwgMSwgODIsIDIyOCwgMTc2LCAyMCwgMSwgODIsIAorICAgIDYxLCAyMCwgMSwgODIsIDIxNiwgMTAsIDIwLCAxLCA4MiwgNzYsIDIwLCAxLCA4MiwgNzMsIDIwLCAxLCA4MiwgMjMzLCA4NiwgCisgICAgMjAsIDEsIDgyLCAyMjYsIDkwLCAyMjUsIDIzLCAyMCwgMSwgODIsIDIxNywgMTAxLCAyMCwgMSwgODIsIDIxNywgNTEsIDIwLCAKKyAgICAxLCA4MiwgMjI5LCAxNDcsIDIzMCwgMzQsIDI0MCwgMjM0LCAyMCwgMSwgODIsIDIyMCwgMTUsIDIwLCAxLCA4MiwgMjExLCAKKyAgICAxNCwgMjAsIDEsIDgyLCAyMjgsIDI0NywgMjAsIDEsIDgyLCAyMTAsIDIwMiwgMjAsIDEsIDgyLCAyMTAsIDIyNywgMjE3LCAKKyAgICAyNDAsIDIwLCAxLCA4MiwgMjEwLCAyMjcsIDI0OSwgMTQ3LCAyMCwgMSwgODIsIDIxMCwgMTg3LCAyMCwgMSwgODIsIDIxMCwgCisgICAgMTk1LCAyMCwgMSwgODIsIDIzNCwgMTQyLCAyMCwgMSwgODIsIDIyNSwgMTUxLCAyMCwgMSwgODIsIDIyOCwgMTc3LCAyNDUsIAorICAgIDEwMiwgMjAsIDEsIDgyLCAyMjQsIDE0NCwgMjAsIDEsIDgyLCAyMTEsIDE5MiwgMjAsIDEsIDgyLCAyNDQsIDE0NywgMjAsIAorICAgIDEsIDgyLCAyMTMsIDI1MCwgMjAsIDEsIDgyLCAyMzIsIDk4LCAyMCwgMSwgODIsIDIzMCwgMjMwLCAyMCwgMSwgODIsIDIyMywgCisgICAgNTEsIDIwLCAxLCA4MiwgMjIzLCAxNzEsIDIwLCAxLCA4MiwgMjI4LCAyNDYsIDIwLCAxLCA4MiwgMjI5LCA3NywgMjAsIDEsIAorICAgIDgyLCAyMjAsIDcsIDIwLCAxLCA4MiwgMjE5LCAyNTIsIDIwLCAxLCA4MiwgMjQzLCAyMzUsIDIyMywgODYsIDIwLCAxLCA4MiwgCisgICAgMTk3LCAyMCwgMSwgODIsIDIyNSwgMTA4LCAyMCwgMSwgODIsIDIzMiwgMTE5LCAyMCwgMSwgODIsIDIzNCwgMjgsIDIwLCAxLCAKKyAgICA4MiwgMjMxLCA1OCwgMjAsIDEsIDgyLCAxODQsIDIwLCAxLCA4MiwgMjMxLCAxNjksIDIwLCAxLCA4MiwgMjE2LCAyMjEsIAorICAgIDIwLCAxLCA4MiwgMjM0LCA5MiwgMjAsIDEsIDgyLCAyMzAsIDE1MCwgMjAsIDEsIDgyLCAyMTYsIDI0NywgMjAsIDEsIDgyLCAKKyAgICAyNDQsIDE2OSwgMjAsIDEsIDgyLCAyNDIsIDIyMywgMjAsIDEsIDIyNSwgMTM3LCAxNzYsIDIwLCAxLCAyMjUsIDEzNywgNzAsIAorICAgIDIwLCAxLCAyMjUsIDEzNywgMjMzLCAyMTcsIDIwLCAxLCAyMjUsIDEzNywgMjQ1LCAyMDksIDIwLCAxLCAyMjUsIDEzNywgCisgICAgMjIzLCAxMDgsIDIwLCAxLCAyMjUsIDEzNywgMjE3LCA4NiwgMjAsIDEsIDIyNSwgMTM3LCAyMjcsIDE0OCwgMjAsIDEsIAorICAgIDIyNSwgMTM3LCAyMzMsIDEzNSwgMjAsIDEsIDIyNSwgMTM3LCAyMjIsIDIzOSwgMjAsIDEsIDIyNSwgMTM3LCAyMjMsIDI5LCAKKyAgICAyMCwgMSwgMjI1LCAxMzcsIDIzMSwgNzksIDIwLCAxLCAyMjUsIDEzNywgMjE3LCAxMDEsIDIwLCAxLCAyMjUsIDEzNywgCisgICAgMjI5LCAxNDYsIDIwLCAxLCAyMjUsIDEzNywgMjI4LCAxODMsIDIwLCAxLCAyMjUsIDEzNywgMTkzLCAyMCwgMSwgMjI1LCAKKyAgICAxMzcsIDIxOCwgNCwgMjAsIDEsIDIyNSwgMTM3LCAyMjAsIDI3LCAyMCwgMSwgMjI1LCAxMzcsIDIxOSwgMTkxLCAyMCwgMSwgCisgICAgMjI1LCAxMzcsIDIyMCwgMTIzLCAyMCwgMSwgMjI1LCAxMzcsIDIzMywgMTU1LCAyMCwgMSwgMjI1LCAxMzcsIDIzNCwgMTU2LCAKKyAgICAyMCwgMSwgMjI1LCAxMzcsIDIyNywgMjA5LCAyMCwgMSwgMjI1LCAxMzcsIDIyNywgMjM3LCAyMCwgMSwgMjI1LCAxMzcsIAorICAgIDIyOCwgMTU0LCAyMCwgMSwgMjI1LCAxMzcsIDIxMCwgMjI2LCAyMCwgMSwgMjI1LCAxMzcsIDIxOSwgMjI1LCAyMCwgMSwgCisgICAgMjI1LCAxMzcsIDE5MSwgMjAsIDEsIDIyNSwgMTM3LCAyMjgsIDksIDIwLCAxLCAyMjUsIDEzNywgMjI1LCAxNTEsIDIwLCAxLCAKKyAgICAyMjUsIDEzNywgMjI3LCAyNDYsIDIwLCAxLCAyMjUsIDEzNywgMjExLCAxOTIsIDIwLCAxLCAyMjUsIDEzNywgMjI1LCAyMTEsIAorICAgIDIwLCAxLCAyMjUsIDEzNywgMjIyLCAxNDAsIDIwLCAxLCAyMjUsIDEzNywgMjI4LCAyMzMsIDIwLCAxLCAyMjUsIDEzNywgCisgICAgMjIzLCA1MSwgMjAsIDEsIDIyNSwgMTM3LCAyMzQsIDE2NSwgMjAsIDEsIDIyNSwgMTM3LCAyMjksIDcsIDIwLCAxLCAyMjUsIAorICAgIDEzNywgMjI5LCA1NiwgMjAsIDEsIDIyNSwgMTM3LCAyMjAsIDcsIDIwLCAxLCAyMjUsIDEzNywgMjI0LCAxNDcsIDIwLCAxLCAKKyAgICAyMjUsIDEzNywgMjQ0LCAzNywgMjAsIDEsIDIyNSwgMTM3LCAyMTIsIDY1LCAyMCwgMSwgMjI1LCAxMzcsIDIzMiwgMjQxLCAKKyAgICAyMCwgMSwgMjI1LCAxMzcsIDIzMiwgMTE5LCAyMCwgMSwgMjI1LCAxMzcsIDIzNCwgMjgsIDIwLCAxLCAyMjUsIDEzNywgCisgICAgMjMxLCAxMTQsIDIwLCAxLCAyMjUsIDEzNywgMjIzLCA4MywgMjAsIDEsIDIyNSwgMTM3LCAxODQsIDIwLCAxLCAyMjUsIAorICAgIDEzNywgMjMwLCAxNjEsIDIwLCAxLCAyMjUsIDEzNywgMjMxLCAxMjIsIDIwLCAxLCAyMjUsIDEzNywgMjE2LCAyMzAsIDIwLCAKKyAgICAxLCAyMjUsIDEzNywgMjMzLCAyNTEsIDIwLCAxLCAyMjUsIDEzNywgMjIxLCAyNTEsIDIwLCAxLCAyMjUsIDEzNywgMjEyLCAKKyAgICAxMTUsIDk1LCAxLCAxOTAsIDk1LCAxLCAyNTIsIDE5MSwgOTUsIDEsIDgsIDE5MCwgOTUsIDEsIDIyNSwgNDIsIDk1LCAxLCAKKyAgICAxODQsIDk1LCAxLCAyMzAsIDIzMywgOTUsIDEsIDI1NCwgMjMsIDE4NCwgOTUsIDEsIDI0NCwgMTk2LCA5NSwgMSwgMjE0LCAKKyAgICAyNywgOTUsIDEsIDIxMywgMTc3LCA5NSwgMSwgMjE3LCAxMDUsIDk1LCAxLCAyNDgsIDIyMSwgOTUsIDEsIDgsIDIxNSwgCisgICAgMTU2LCA5NSwgMSwgOCwgMjE3LCAxMDUsIDk1LCAxLCAyMTUsIDE1NiwgOTUsIDEsIDI0OCwgMTM1LCA5NSwgMSwgMTk3LCAKKyAgICA5NSwgMSwgMjI4LCAyMzcsIDk1LCAxLCA4LCAyMjgsIDExMCwgOTUsIDEsIDI1NCwgMjMsIDE5NywgOTUsIDEsIDIyOCwgCisgICAgMTEwLCA5NSwgMSwgMjI4LCA5NiwgOTUsIDEsIDIzMywgMTM1LCA5NSwgMSwgMjMyLCA2MSwgOTUsIDEsIDIzMiwgMjU0LCAKKyAgICA5NSwgMSwgMjMyLCAyNDMsIDk1LCAxLCAyMTYsIDU2LCA5NSwgMSwgMjQ3LCAxNTMsIDk1LCAxLCAyMTYsIDQ4LCA5NSwgMSwgCisgICAgMjQ3LCAxNTIsIDk1LCAxLCAxNzYsIDk1LCAxLCAyNDMsIDEzNSwgOTUsIDEsIDgsIDE3NiwgOTUsIDEsIDIyNCwgODgsIDk1LCAKKyAgICAxLCAyMjQsIDY2LCA5NSwgMSwgMjI5LCA3NywgOTUsIDEsIDIyOSwgMjgsIDk1LCAxLCAyNTQsIDIzLCAyMjksIDc3LCA5NSwgCisgICAgMSwgMTYyLCA5NSwgMSwgMjExLCAxNjUsIDk1LCAxLCAyNDIsIDI0OSwgOTUsIDEsIDI0MiwgMjI2LCA5NSwgMSwgMjE1LCAKKyAgICAxNjUsIDk1LCAxLCAyNDYsIDI2LCA5NSwgMSwgMjI3LCAxNjUsIDk1LCAxLCAyMjcsIDE1MCwgOTUsIDEsIDIxNSwgMTc1LCAKKyAgICA5NSwgMSwgMjQ2LCAzMywgOTUsIDEsIDgsIDIxNSwgMTc1LCA5NSwgMSwgOCwgMjQ2LCAzMywgOTUsIDEsIDIyMywgMTA2LCAKKyAgICAyMTUsIDE3NSwgOTUsIDEsIDIyMCwgMTAyLCA5NSwgMSwgMjE4LCAyMjMsIDk1LCAxLCAyMTAsIDgyLCA5NSwgMSwgMjEwLCAKKyAgICAxNCwgOTUsIDEsIDIxNSwgMTgzLCA5NSwgMSwgMjQ2LCAzOCwgOTUsIDEsIDgsIDIxNSwgMTgzLCA5NSwgMSwgMjA2LCA5NSwgCisgICAgMSwgMjEwLCAxMTYsIDk1LCAxLCAyMTAsIDE1LCA5NSwgMSwgMjA5LCAyNDMsIDk1LCAxLCAyMDksIDIyMywgOTUsIDEsIAorICAgIDI1NCwgMjMsIDIwOSwgMjQzLCA5NSwgMSwgMjA5LCAyMTUsIDk1LCAxLCAyMDksIDIyMiwgOTUsIDEsIDIxMiwgNjUsIDk1LCAKKyAgICAxLCAyNTQsIDIwOSwgOTUsIDEsIDI0MSwgMTg5LCA5NSwgMSwgMjI5LCAxOTIsIDk1LCA1LCAyNTMsIDIyMiwgOTUsIDUsIAorICAgIDIyMywgMTA2LCAyMTMsIDEzMywgOTUsIDUsIDIyMywgMTA2LCAyNTMsIDIyMiwgOTUsIDI1LCA1LCA2MSwgOTUsIDI1LCA1LCAKKyAgICAyNTUsIDczLCA5NSwgMjUsIDUsIDI1NCwgMjA1LCA5NSwgMjUsIDUsIDI1NCwgMTIzLCA5NSwgMjUsIDUsIDI1NCwgMTE1LCAKKyAgICA5NSwgMjUsIDUsIDc2LCA5NSwgMjUsIDUsIDIyNiwgMTgzLCA5NSwgMjUsIDUsIDIxMSwgMjI3LCA5NSwgMjUsIDUsIDIxMiwgCisgICAgOTgsIDk1LCAyNSwgNSwgNzUsIDk1LCAyNSwgNSwgMjQ1LCAxNTAsIDk1LCAyNSwgNSwgMjQ1LCAxMzgsIDk1LCAyNSwgNSwgCisgICAgMjI2LCAyMzIsIDk1LCAyNSwgNSwgNzMsIDk1LCAyNSwgNSwgMjQwLCAxMTksIDk1LCAyNSwgNSwgMjQwLCAxMTgsIDk1LCAKKyAgICAyNSwgNSwgMjQwLCAxMTcsIDk1LCAyNSwgNSwgMjM1LCAxODksIDk1LCAyNSwgNSwgMjM2LCA2MCwgOTUsIDI1LCA1LCAyMzYsIAorICAgIDMzLCA5NSwgMjUsIDUsIDIzNSwgMTU2LCA5NSwgMjUsIDUsIDIzNSwgMjMxLCA5NSwgMjUsIDUsIDcwLCA5NSwgMjUsIDUsIAorICAgIDIxNCwgMjI5LCA5NSwgMjUsIDUsIDIxNCwgMjI4LCA5NSwgMjUsIDUsIDIxNCwgMjI3LCA5NSwgMjUsIDUsIDIxNCwgMTE4LCAKKyAgICA5NSwgMjUsIDUsIDIxNCwgMjExLCA5NSwgMjUsIDUsIDIxNCwgMTc4LCA5NSwgMjUsIDUsIDIxMSwgMTE3LCA5NSwgMjUsIDUsIAorICAgIDIxMSwgOCwgOTUsIDI1LCA1LCAyNTQsIDI0MywgOTUsIDI1LCA1LCAyNTQsIDIzOSwgOTUsIDI1LCA1LCAyNDUsIDg2LCA5NSwgCisgICAgMjUsIDUsIDIyMiwgMTgzLCAyNDUsIDg2LCA5NSwgMjUsIDUsIDI0NSwgOTIsIDk1LCAyNSwgNSwgMjIyLCAxODMsIDI0NSwgCisgICAgOTIsIDk1LCAyNSwgNSwgMjU0LCAyMDEsIDk1LCAyNSwgNSwgMjQ1LCAxOTUsIDk1LCAyNSwgNSwgMjUzLCAxOTIsIDk1LCAKKyAgICAyNSwgNSwgMjI2LCAxMzQsIDk1LCAyNSwgNSwgMjMwLCAyNSwgOTUsIDI1LCA1LCAyMjksIDc5LCA5NSwgMTM4LCAyMjIsIAorICAgIDI1MSwgOTUsIDEzOCwgMjE2LCAxNCwgMjIyLCAyNTEsIDk1LCAxMzgsIDQ4LCA5NSwgMTM4LCA1MSwgOTUsIDEsIDIxNiwgCisgICAgMjgsIDk1LCAxLCAyMTYsIDI3LCA5NSwgMSwgMjE2LCAyNiwgOTUsIDEsIDIxNiwgMjUsIDk1LCAxLCAyMTYsIDI0LCA5NSwgCisgICAgMSwgMjE2LCAyMywgOTUsIDEsIDIxNiwgMjIsIDk1LCAxLCAyMjMsIDEwNiwgMjE2LCAyOSwgOTUsIDEsIDIyMywgMTA2LCAKKyAgICAyMTYsIDI4LCA5NSwgMSwgMjIzLCAxMDYsIDIxNiwgMjYsIDk1LCAxLCAyMjMsIDEwNiwgMjE2LCAyNSwgOTUsIDEsIDIyMywgCisgICAgMTA2LCAyMTYsIDI0LCA5NSwgMSwgMjIzLCAxMDYsIDIxNiwgMjIsIDU2LCAxLCAyNTQsIDIzLCA3NSwgMTQxLCAxLCAyNTQsIAorICAgIDIzLCAyMTEsIDQ3LCA0OSwgMjgsIDE2LCAyMjQsIDE1NCwgNDksIDI4LCAxNiwgMjQ4LCAxNTgsIDQ5LCAyOCwgMTYsIDIyNSwgCisgICAgMTc1LCA0OSwgMjgsIDE2LCAyMjYsIDExMywgMjQ1LCAxNzgsIDQ5LCAyOCwgMTYsIDIyNiwgMTEzLCAyNDcsIDIwMSwgNDksIAorICAgIDI4LCAxNiwgMjE0LCAxNiwgMjQ1LCAxNzgsIDQ5LCAyOCwgMTYsIDIxNCwgMTYsIDI0NywgMjAxLCA0OSwgMjgsIDE2LCAKKyAgICAyMzQsIDE5NywgNDksIDI4LCAxNiwgMjE3LCAxNjksIDQ5LCAyOCwgMTYsIDIyNiwgOSwgNDksIDI4LCAxNiwgMjEwLCAyMTcsIAorICAgIDQ5LCAyOCwgMTYsIDIxMCwgMjE4LCAyNDcsIDIwMSwgNDksIDI4LCAxNiwgMjMzLCAyMzQsIDQ5LCAyOCwgMTYsIDI1NCwgCisgICAgNjgsIDI0NSwgMTc4LCA0OSwgMjgsIDE2LCAyNDUsIDI2LCAyNDUsIDE3OCwgNDksIDI4LCAxNiwgMjE3LCAyLCA0OSwgMjgsIAorICAgIDE2LCAyMzQsIDE2MSwgNDksIDI4LCAxNiwgMjU0LCA1OCwgNDksIDI4LCAxNiwgMjU0LCA1OSwgMjQ3LCAyMDEsIDQ5LCAyOCwgCisgICAgMTYsIDIxNywgMTc1LCA0OSwgMjgsIDE2LCAyMTYsIDE1OSwgNDksIDI4LCAxNiwgMjI2LCAyMDYsIDI1NCwgMjEsIDQ5LCAKKyAgICAyOCwgMTYsIDI0MiwgMTU5LCAyNTQsIDIxLCA0OSwgMjgsIDE2LCAyMjQsIDE1MywgNDksIDI4LCAxNiwgMjUwLCAxNDksIAorICAgIDQ5LCAyOCwgMTYsIDIxNCwgNiwgNDksIDI4LCAxNiwgMjM1LCAxNjQsIDI1NCwgMjEsIDQ5LCAyOCwgMTYsIDIzNCwgMTYzLCAKKyAgICAyNTQsIDIxLCA0OSwgMjgsIDE2LCAyMzQsIDE2MiwgMjU0LCAyMSwgNDksIDI4LCAxNiwgMjIxLCAyMTMsIDQ5LCAyOCwgMTYsIAorICAgIDIyNiwgMCwgNDksIDI4LCAxNiwgMjE4LCAxNDYsIDI1NCwgNjEsIDQ5LCAyOCwgMTYsIDIyNiwgMTEyLCAyNTQsIDIxLCA0OSwgCisgICAgMjgsIDE2LCAyMTQsIDE1LCAyNTQsIDIxLCA0OSwgMjgsIDE2LCAyNTQsIDYyLCAyNTQsIDIxLCA0OSwgMjgsIDE2LCAyNTQsIAorICAgIDU2LCA0OSwgMjgsIDE2LCAyMzQsIDM3LCA0OSwgMjgsIDE2LCAyMjMsIDQ2LCA0OSwgMjgsIDE2LCAyMjUsIDEwNiwgMjU0LCAKKyAgICAyMSwgNDksIDI4LCAxNiwgMjE2LCA4MywgNDksIDI4LCAxNiwgMjU0LCAxMjEsIDQ5LCAyOCwgMTYsIDIyMSwgMTU5LCA0OSwgCisgICAgMjgsIDE2LCAyMTcsIDE3OCwgMjU0LCAyMSwgNDksIDI4LCAxNiwgMjE3LCAxNzgsIDIzMSwgNDAsIDIxOCwgMTQ0LCA0OSwgCisgICAgMjgsIDE2LCAyMjYsIDEwNywgMjU0LCAyMSwgNDksIDI4LCAxNiwgMjE2LCAxOTAsIDQ5LCAyOCwgMTYsIDIzMywgMjcsIDQ5LCAKKyAgICAyOCwgMTYsIDI0NiwgNDEsIDQ5LCAyOCwgMTYsIDIxNSwgMjI3LCA0OSwgMjgsIDE2LCAyMTYsIDIzMiwgNDksIDI4LCAxNiwgCisgICAgMjMzLCAyMzcsIDQ5LCAyOCwgMTYsIDI1NCwgNjgsIDI0NSwgMjYsIDIyOSwgOTUsIDQ5LCAyOCwgMTYsIDI0MywgMjM2LCAKKyAgICAyNTQsIDIxLCA0OSwgMjgsIDE2LCAyMzYsIDEyLCA0OSwgMjgsIDE2LCAyMTUsIDE5OSwgMjU0LCAyMSwgNDksIDI4LCAxNiwgCisgICAgMjM0LCAyMDAsIDIxNSwgMTk4LCA0OSwgMjgsIDE2LCAyMjUsIDIwMCwgNDksIDI4LCAxNiwgMjI0LCAxNTgsIDQ5LCAyOCwgCisgICAgMTYsIDIzNCwgMTEsIDQ5LCAyOCwgMTYsIDI1MCwgODAsIDI1NCwgMjEsIDQ5LCAyOCwgMTYsIDIyMywgMTQ2LCA0OSwgMjgsIAorICAgIDE2LCAyMjYsIDEyLCAyNTQsIDIxLCA0OSwgMjgsIDE2LCAyMjYsIDEwLCAyNTQsIDIxLCA0OSwgMjgsIDE2LCAyNDAsIDEwOSwgCisgICAgNDksIDI4LCAxNiwgMjI5LCAyMDMsIDQ5LCAyOCwgMTYsIDIyNSwgMTU2LCA0OSwgMjgsIDE2LCAyMzQsIDEyLCAyNTQsIAorICAgIDE0OSwgNDksIDI4LCAxNiwgMjE1LCAxOTksIDI1NCwgMTQ5LCA0OSwgMjgsIDE2LCAyMTgsIDEyMywgNDksIDI4LCAxNiwgCisgICAgMjQyLCAxMjMsIDQ5LCAyOCwgMTYsIDIzNSwgMTY0LCAyMjksIDk1LCA0OSwgMjgsIDE2LCAyMjYsIDIwNiwgMjI5LCA5NSwgCisgICAgNDksIDI4LCAxNiwgMjI2LCAxMTMsIDIyOSwgOTUsIDQ5LCAyOCwgMTYsIDIyNSwgMTU1LCA0OSwgMjgsIDE2LCAyMzMsIAorICAgIDI1NCwgNDksIDI4LCAxNiwgMjI1LCAxNTQsIDQ5LCAyOCwgMTYsIDIzMywgMjM2LCA0OSwgMjgsIDE2LCAyMjUsIDIwMSwgCisgICAgMjI5LCA5NSwgNDksIDI4LCAxNiwgMjM0LCAxNjIsIDIyOSwgOTYsIDI1NCwgOTYsIDQ5LCAyOCwgMTYsIDIzNCwgMTYzLCAKKyAgICAyMjksIDk2LCAyNTQsIDk2LCA0OSwgMjgsIDE2LCAyMTAsIDIxNSwgNDksIDI4LCAxNiwgMjU0LCA1OSwgMjI5LCA5NSwgNDksIAorICAgIDI4LCAxNiwgMjU0LCA2MCwgMjE3LCAxNzYsIDIyOSwgOTUsIDQ5LCAyOCwgMTYsIDIxMCwgMjE2LCA0OSwgMjgsIDE2LCAKKyAgICAyMzMsIDIzNSwgNDksIDI4LCAxNiwgMjQ1LCAxNzMsIDQ5LCAyOCwgMTYsIDI1MCwgMTUwLCA0OSwgMjgsIDE2LCAyMzAsIAorICAgIDE5OCwgMjM1LCAxNjMsIDQ5LCAyOCwgMTYsIDIxNCwgMTYsIDIyOSwgOTUsIDQ5LCAyOCwgMTYsIDIyNSwgMTA2LCAyMjksIAorICAgIDk1LCA0OSwgMjgsIDE2LCAyMjQsIDE1OSwgMjI5LCA5NSwgNDksIDI4LCAxNiwgMjI2LCAyMDMsIDQ5LCAyOCwgMTYsIDI1NCwgCisgICAgODQsIDQ5LCAyOCwgMTYsIDIzMiwgNTgsIDQ5LCAyOCwgMTYsIDIyNiwgMTAsIDIyOSwgOTUsIDQ5LCAyOCwgMTYsIDIyNiwgCisgICAgMTIsIDIyOSwgOTUsIDQ5LCAyOCwgMTYsIDI0NSwgNjAsIDIyNiwgMTEsIDQ5LCAyOCwgMTYsIDIzMywgMTUzLCA0OSwgMjgsIAorICAgIDE2LCAyNTQsIDg1LCA0OSwgMjgsIDE2LCAyMTUsIDE5OSwgMjI5LCA5NSwgNDksIDI4LCAxNiwgMjQ1LCAxNzYsIDQ5LCAyOCwgCisgICAgMTYsIDIxNywgMTc4LCAyMjksIDk1LCA0OSwgMjgsIDE2LCAyMTcsIDE3MCwgNDksIDI4LCAxNiwgMjUwLCA4MCwgMjI5LCAKKyAgICA5NSwgNDksIDI4LCAxNiwgMjQ1LCAxMDYsIDQ5LCAyOCwgMTYsIDIyMSwgMTYwLCAyMjksIDk1LCA0OSwgMjgsIDE2LCAyMTEsIAorICAgIDE1MSwgMjM0LCAzNywgNDksIDI4LCAxNiwgMjE1LCAxOTYsIDQ5LCAyOCwgMTYsIDIyNCwgMTYwLCA0OSwgMjgsIDE2LCAKKyAgICAyMTUsIDIwMCwgNDksIDI4LCAxNiwgMjE1LCAxOTcsIDQ5LCAyOCwgMTYsIDIyNCwgMTU3LCA0OSwgMjgsIDE2LCAyMTUsIAorICAgIDE5NSwgNDksIDI4LCAxNiwgMjI0LCAxNTYsIDQ5LCAyOCwgMTYsIDI0MiwgMTU4LCA0OSwgMjgsIDE2LCAyNTQsIDE0LCA0OSwgCisgICAgMjgsIDE2LCAyNDUsIDYwLCAyNTQsIDE0LCA0OSwgMjgsIDE2LCAyMjYsIDEwNywgMjI5LCA5NSwgNDksIDI4LCAxNiwgMjE2LCAKKyAgICAxODksIDI0NSwgNjksIDQ5LCAyOCwgMTYsIDIxNiwgMTg5LCAyNDUsIDI1LCA0OSwgMjgsIDE2LCAyMTYsIDE5MSwgMjU0LCAKKyAgICA2MywgNDksIDI4LCAxNiwgMjE2LCAxODQsIDIzNCwgMjQ3LCAyNTQsIDU1LCA0OSwgMjgsIDE2LCAyMzQsIDE5OSwgNDksIAorICAgIDI4LCAxNiwgMjQ1LCAxMzksIDQ5LCAyOCwgMTYsIDIxMSwgMTEsIDIzNCwgMTk2LCA0OSwgMjgsIDE2LCAyMTEsIDExLCAKKyAgICAyNTQsIDk2LCA0OSwgMjgsIDE2LCAyMTgsIDE0NSwgNDksIDI4LCAxNiwgMjM0LCAzOCwgMjU0LCA5NiwgNDksIDI4LCAxNiwgCisgICAgMjQ3LCAyMDIsIDI1NCwgMjEsIDQ5LCAyOCwgMTYsIDIzMywgMjM4LCAyNTQsIDIxLCA0OSwgMjgsIDE2LCAyMzMsIDIzOCwgCisgICAgMjU0LCAxNDksIDQ5LCAyOCwgMTYsIDIzMywgMjM4LCAyMjksIDk1LCA0OSwgMjgsIDE2LCAyNTQsIDYyLCAyMjksIDk1LCAKKyAgICA0OSwgMjgsIDE2LCAyNTQsIDY0LCA0OSwgMjgsIDE2LCAyNDcsIDIwMSwgNDksIDI4LCAxNiwgMjE1LCAyMTAsIDQ5LCAyOCwgCisgICAgMTYsIDIxNiwgMjI0LCA0OSwgMjgsIDE2LCAyMzQsIDIsIDQ5LCAyOCwgMTYsIDIzMywgMzIsIDI0NSwgMTM0LCAyNTAsIDcxLCAKKyAgICA0OSwgMjgsIDE2LCAyMzMsIDMyLCAyNDYsIDQyLCAyNTAsIDcyLCA0OSwgMjgsIDE2LCAyMzMsIDMyLCAyMTUsIDIxMiwgCisgICAgMjUwLCA3MiwgNDksIDI4LCAxNiwgMjMzLCAzMiwgMjE2LCAyMzQsIDI1MCwgNzIsIDQ5LCAyOCwgMTYsIDIzMywgMzIsIAorICAgIDIzNiwgNywgMjUwLCA3MSwgNDksIDI4LCAxNiwgMjQyLCAxNTksIDIyOSwgOTYsIDI1NCwgOTYsIDQ5LCAyOCwgMTYsIDI0MiwgCisgICAgMTU5LCAyMjYsIDEsIDI1NCwgMTAsIDQ5LCAyOCwgMTYsIDI0MiwgMTU5LCAyMjYsIDEsIDI0OCwgMjksIDQ5LCAyOCwgMTYsIAorICAgIDI0NywgMjI1LCA0OSwgMjgsIDE2LCAyNDcsIDIyNiwgMjI2LCAxLCAyNTQsIDExLCAyMzQsIDE5NiwgNDksIDI4LCAxNiwgCisgICAgMjQ3LCAyMjYsIDIyNiwgMSwgMjU0LCAxMSwgMjU0LCA5NiwgNDksIDI4LCAxNiwgMjQ3LCAyMjYsIDIyNiwgMSwgMjQ4LCAKKyAgICAyOSwgNDksIDI4LCAxNiwgMjE1LCAyMTYsIDQ5LCAyOCwgMTYsIDI1NCwgMTUsIDQ5LCAyOCwgMTYsIDIzNiwgMTQsIDQ5LCAKKyAgICAyOCwgMTYsIDI0NywgMjQ2LCA0OSwgMjgsIDE2LCAyNTQsIDIxMSwgMjI1LCAwLCAyNTQsIDE2LCA0OSwgMjgsIDE2LCAyNTQsIAorICAgIDIxMSwgMjU0LCAxMywgNDksIDI4LCAxNiwgMjU0LCAyMTEsIDI1NCwgMTYsIDQ5LCAyOCwgMTYsIDI1NCwgMjExLCAyMzEsIAorICAgIDM0LCA0OSwgMjgsIDE2LCAyNTQsIDIxMSwgMjMxLCA0NSwgNDksIDI4LCAxNiwgMjU0LCAyMTEsIDI0MiwgMTYwLCA0OSwgCisgICAgMjgsIDE2LCAyNTQsIDIxMSwgMjQyLCAxNTcsIDQ5LCAyOCwgMTYsIDI1NCwgMjExLCAyMjUsIDAsIDI0MiwgMTYwLCA0OSwgCisgICAgMjgsIDE2LCAyMzEsIDE1MSwgMjI0LCAxNjUsIDI0MCwgMTA3LCA0OSwgMjgsIDE2LCAyMzEsIDE1MSwgMjU0LCAxNTEsIAorICAgIDIyNCwgMTY1LCAyNDAsIDEwNywgNDksIDI4LCAxNiwgMjMxLCAxNTEsIDI0OCwgMjgsIDI0MCwgMTA3LCA0OSwgMjgsIDE2LCAKKyAgICAyMzEsIDE1MSwgMjU0LCAxNTEsIDI0OCwgMjgsIDI0MCwgMTA3LCA0OSwgMjgsIDE2LCAyMzEsIDE1MSwgMjE1LCAyMDUsIAorICAgIDI0MCwgMTA3LCA0OSwgMjgsIDE2LCAyMzEsIDE1MSwgMjE1LCAyMTcsIDQ5LCAyOCwgMTYsIDIzMSwgMTUxLCAyMTYsIDIyOCwgCisgICAgMjQwLCAxMDcsIDQ5LCAyOCwgMTYsIDIzMSwgMTUxLCAyMTYsIDIyOCwgMjMzLCAzNSwgMjQwLCAxMDcsIDQ5LCAyOCwgMTYsIAorICAgIDIzMSwgMTUxLCAyMzMsIDM1LCAyNDAsIDEwNywgNDksIDI4LCAxNiwgMjMxLCAxNTEsIDIyNSwgMzksIDI0MCwgMTA3LCA0OSwgCisgICAgMjgsIDE2LCAyMzUsIDE2OSwgMjE2LCAyNTEsIDI0MCwgMTA4LCA0OSwgMjgsIDE2LCAyNTQsIDYwLCAyMTYsIDI1MSwgMjQwLCAKKyAgICAxMDgsIDQ5LCAyOCwgMTYsIDI0NCwgMTcyLCAyMTYsIDIyNSwgNDksIDI4LCAxNiwgMjQ0LCAxNzIsIDIzMCwgMTQzLCA0OSwgCisgICAgMjgsIDE2LCAyNDQsIDE3MiwgMjQ3LCAyMzAsIDQ5LCAyOCwgMTYsIDIzMSwgMTUxLCAyMTQsIDEwLCAyNDAsIDEwNywgNDksIAorICAgIDI4LCAxNiwgMjMxLCAxNTEsIDIyNCwgMTY0LCAyNDAsIDEwNywgNDksIDI4LCAxNiwgMjMxLCAxNTEsIDIyNSwgMzksIDIxNiwgCisgICAgMjI4LCAyNDAsIDEwNywgNDksIDI4LCAxNiwgMjQyLCAxNTUsIDIzMCwgMjYsIDI1NCwgNjMsIDQ5LCAyOCwgMTYsIDI0MiwgCisgICAgMTU1LCAyMzAsIDI2LCAyNDcsIDIwMCwgNDksIDI4LCAxNiwgMjQ1LCAxNDgsIDIzNCwgMjQ3LCAyNDMsIDIzNiwgMjEzLCAKKyAgICAxMjQsIDQ5LCAyOCwgMTYsIDIzNiwgMTMsIDQ5LCAyOCwgMTYsIDIzNiwgMTEsIDQ5LCAyOCwgMTYsIDI0MywgMjM2LCAyNTQsIAorICAgIDIyLCAyNDgsIDI3LCAyNDAsIDEwNiwgNDksIDI4LCAxNiwgMjQzLCAyMzYsIDI0NywgMjQ0LCAxOTAsIDQ5LCAyOCwgMTYsIAorICAgIDI0MywgMjM2LCAyNDcsIDI0NCwgMjI5LCAyMDMsIDQ5LCAyOCwgMTYsIDI0MywgMjM2LCAyMjksIDE5OCwgMjQwLCAxMDcsIAorICAgIDQ5LCAyOCwgMTYsIDI0MywgMjM2LCAyNDcsIDI0NCwgMjQ4LCAzLCA0OSwgMjgsIDE2LCAyNDMsIDIzNiwgMjE5LCAxMDIsIAorICAgIDI0NywgMjQzLCAyNDgsIDMsIDQ5LCAyOCwgMTYsIDI0MywgMjM2LCAyNDcsIDI0NCwgMjM0LCAxODIsIDQ5LCAyOCwgMTYsIAorICAgIDI0MywgMjM2LCAyNDcsIDI0NCwgMjEwLCAyMywgNDksIDI4LCAxNiwgMjQzLCAyMzYsIDI0NywgMjQ0LCAyMjgsIDIzNCwgCisgICAgMjM0LCAxOTYsIDQ5LCAyOCwgMTYsIDI0MywgMjM2LCAyNDcsIDI0NCwgMjI4LCAyMzQsIDI1NCwgOTYsIDQ5LCAyOCwgMTYsIAorICAgIDI0MywgMjM2LCAyMzEsIDE5MSwgMjUwLCA3MywgMjQ3LCAyMzAsIDQ5LCAyOCwgMTYsIDI0MywgMjM2LCAyMzEsIDE5MSwgCisgICAgMjUwLCA3MywgMjMwLCAxNDMsIDQ5LCAyOCwgMTYsIDI0NCwgMTIyLCAyMTksIDEwMiwgMjUwLCA3MywgMjE0LCA5LCA0OSwgCisgICAgMjgsIDE2LCAyNDMsIDIzNiwgMjE5LCAxMDIsIDI1MCwgNzMsIDIxNywgMTc5LCA0OSwgMjgsIDE2LCAyNDMsIDIzNiwgMjI5LCAKKyAgICA5NywgNDksIDI4LCAxNiwgMjUwLCA3NCwgMjA5LCAyNDksIDQ5LCAyOCwgMTYsIDI1MCwgNzQsIDIzNCwgMzYsIDQ5LCAyOCwgCisgICAgMTYsIDI1MCwgNzQsIDIxOSwgOSwgNDksIDI4LCAxNiwgMjQzLCAyMzYsIDI0MCwgMTU0LCAyMTEsIDEwLCAyMTYsIDIyOSwgCisgICAgNDksIDI4LCAxNiwgMjQzLCAyMzYsIDI0NSwgMTQ5LCAyNTQsIDg2LCA0OSwgMjgsIDE2LCAyMTEsIDEwLCAyMTUsIDIwNiwgCisgICAgNDksIDI4LCAxNiwgMjQ3LCAyMzgsIDIxNSwgMjA2LCA0OSwgMjgsIDE2LCAyNDcsIDIzOCwgMjE2LCAyMjksIDQ5LCAyOCwgCisgICAgMTYsIDI0NywgMjM4LCAyNTQsIDY1LCAyNDYsIDQyLCAyNDcsIDEzOSwgNDksIDI4LCAxNiwgMjQ3LCAyMzgsIDIzMCwgMTQxLCAKKyAgICAyMTYsIDIzMywgMjQ3LCAxMzksIDQ5LCAyOCwgMTYsIDI0NywgMjM4LCAyNDcsIDIyMiwgMjQ1LCAzNiwgMjQ3LCAxMzksIAorICAgIDQ5LCAyOCwgMTYsIDI0NywgMjM4LCAyMTUsIDIxNCwgMjI2LCAyMTEsIDI0NywgMTM5LCA0OSwgMjgsIDE2LCAyMTEsIDEwLCAKKyAgICAyNTQsIDY1LCAyNDYsIDQyLCAyNDcsIDEzOSwgNDksIDI4LCAxNiwgMjExLCAxMCwgMjMwLCAxNDEsIDIxNiwgMjMzLCAyNDcsIAorICAgIDEzOSwgNDksIDI4LCAxNiwgMjExLCAxMCwgMjQ3LCAyMjIsIDI0NSwgMzYsIDI0NywgMTM5LCA0OSwgMjgsIDE2LCAyMTEsIAorICAgIDEwLCAyMTUsIDIxNCwgMjI2LCAyMTEsIDI0NywgMTM5LCA0OSwgMjgsIDE2LCAyNDMsIDQ5LCAyNDcsIDIzNywgNDksIDI4LCAKKyAgICAxNiwgMjQzLCA0OSwgMjExLCA5LCA0OSwgMjgsIDE2LCAyNDcsIDI0NSwgMjU0LCA2NSwgMjMwLCAxOTksIDQ5LCAyOCwgMTYsIAorICAgIDI0NywgMjQ1LCAyNTQsIDY1LCAyMzEsIDczLCA0OSwgMjgsIDE2LCAyNDcsIDI0NSwgMjQ3LCAyMDEsIDQ5LCAyOCwgMTYsIAorICAgIDI0NywgMjQ1LCAyMTYsIDE4MiwgNDksIDI4LCAxNiwgMjE5LCAxNjMsIDIxNiwgMTgyLCA0OSwgMjgsIDE2LCAyMTksIDE2MywgCisgICAgMjE2LCAxODMsIDI0NywgMTg2LCA0OSwgMjgsIDE2LCAyMTksIDE2MywgMjE2LCAxODMsIDIxNSwgMjA3LCA0OSwgMjgsIDE2LCAKKyAgICAyMTksIDE2MywgMjE2LCAxODMsIDIxNiwgMjIyLCA0OSwgMjgsIDE2LCAyMTksIDE2MywgMjUzLCAyNDQsIDQ5LCAyOCwgMTYsIAorICAgIDIxOSwgMTYzLCAyNTMsIDI0NSwgMjQ3LCAxODYsIDQ5LCAyOCwgMTYsIDIxOSwgMTYzLCAyNTMsIDI0NSwgMjE1LCAyMDcsIAorICAgIDQ5LCAyOCwgMTYsIDIxOSwgMTYzLCAyNTMsIDI0NSwgMjE2LCAyMjIsIDQ5LCAyOCwgMTYsIDI0NywgMjIzLCAyNDMsIDMwLCAKKyAgICA0OSwgMjgsIDE2LCAyNDcsIDIyOSwgMjI2LCAxMzQsIDQ5LCAyOCwgMTYsIDIxOCwgMTM3LCA0OSwgMjgsIDE2LCAyNTQsIDcsIAorICAgIDE5MCwgNDksIDI4LCAxNiwgMjU0LCA3LCAyMTMsIDEyNCwgNDksIDI4LCAxNiwgMjU0LCA3LCAyNDMsIDEzNSwgNDksIDI4LCAKKyAgICAxNiwgMjU0LCA3LCAyNDgsIDMsIDQ5LCAyOCwgMTYsIDI1NCwgNywgMjM0LCAxODIsIDQ5LCAyOCwgMTYsIDI1NCwgNywgCisgICAgMjEwLCAyMywgNDksIDI4LCAxNiwgMjU0LCA3LCAyMjgsIDIzMywgNDksIDI4LCAxNiwgMjM0LCAxNjIsIDIyOSwgOTYsIAorICAgIDIzMSwgNDQsIDQ5LCAyOCwgMTYsIDIzNCwgMTYzLCAyMjksIDk2LCAyMzEsIDQ0LCA0OSwgMjgsIDE2LCAyMzQsIDE2MiwgCisgICAgMjI5LCA5NiwgMjM0LCAxOTYsIDQ5LCAyOCwgMTYsIDIzNCwgMTYzLCAyMjksIDk2LCAyMzQsIDE5NiwgNDksIDI4LCAxNiwgCisgICAgMjM0LCAzOCwgMjM0LCAxOTYsIDQ5LCAyOCwgMTYsIDI0MiwgMTU5LCAyMjksIDk2LCAyMzQsIDE5NiwgMjgsIDE2LCAyMTksIAorICAgIDE1NSwgMjUyLCAxMzUsIDI4LCAxNiwgNTIsIDI1MiwgMTM1LCAyOCwgMTYsIDQwLCAyNTIsIDEzNSwgMjgsIDE2LCAyMjMsIAorICAgIDUwLCA0MCwgMjUyLCAxMzUsIDI4LCAxNiwgMjQ4LCAxNTUsIDI1MiwgMTM1LCAyOCwgMTYsIDIxOSwgMjUxLCAyNTIsIDEzNSwgCisgICAgMjgsIDE2LCA0MywgMjIzLCA3NywgNTAsIDI4LCAxNiwgNDQsIDIyMywgNzcsIDUwLCAyOCwgMTYsIDIyMywgNzcsIDI0NywgCisgICAgMTE4LCAyOCwgMTYsIDI0OCwgMTk2LCAyMjEsIDE2MywgMjgsIDE2LCAyNDgsIDIyMiwgMjUwLCAyNDksIDI4LCAxNiwgMjIxLCAKKyAgICAxNjMsIDI4LCAxNiwgMjQ5LCAyMzQsIDI4LCAxNiwgMjIzLCA3NSwgMjQ0LCAxMTEsIDI4LCAxNiwgMjIzLCA3NSwgMjQ0LCAKKyAgICAxMTAsIDI4LCAxNiwgMjIzLCA3NSwgMjQ0LCAxMDksIDI4LCAxNiwgMjQ0LCAxMzEsIDI4LCAxNiwgMjQ0LCAxMzIsIDUxLCAKKyAgICAyOCwgMTYsIDI1MSwgMTQ4LCA3OCwgMjgsIDE2LCAyNTEsIDI0LCAyOCwgMTYsIDI1MSwgMTU5LCAyOCwgMTYsIDEyNywgMjgsIAorICAgIDE2LCAyMjYsIDE5MywgMjE4LCAxNjMsIDI4LCAxNiwgMjE1LCA1NywgMjE4LCAxNjMsIDI4LCAxNiwgMjE2LCAxNDIsIDIxOCwgCisgICAgMTYzLCAyOCwgMTYsIDI0NCwgMTAsIDIxOCwgMTYzLCAyOCwgMTYsIDI0NCwgODAsIDIxOCwgMTYzLCAyOCwgMTYsIDIxOSwgCisgICAgMTI0LCAyMTgsIDE2MywgMjgsIDE2LCAyMTksIDEyMiwgMjQzLCAyNTAsIDI4LCAxNiwgMjQ0LCA4LCAyNDMsIDI1MCwgMjgsIAorICAgIDE2LCAyNDMsIDIwMywgMjUwLCAxNCwgMjgsIDE2LCAyNDMsIDIwMywgMjUwLCAxNSwgMjI2LCAxMzYsIDI1NCwgMTQyLCAyOCwgCisgICAgMTYsIDI0MywgMjAzLCAyNTAsIDE1LCAyMjYsIDEzNiwgMjUyLCAxMjIsIDI4LCAxNiwgMjUxLCA2NywgMjUwLCAxNCwgMjgsIAorICAgIDE2LCAyNDUsIDcsIDI1MCwgMTQsIDI4LCAxNiwgMjQ1LCA3LCAyNTAsIDE1LCAyMjYsIDEzNiwgMjU0LCAxNDIsIDI4LCAxNiwgCisgICAgMjQ1LCA3LCAyNTAsIDE1LCAyMjYsIDEzNiwgMjUyLCAxMjIsIDI4LCAxNiwgMjQ2LCA4MywgMjUwLCAxMywgMjgsIDE2LCAKKyAgICAyNDYsIDgzLCAyNTAsIDEyLCAyOCwgMTYsIDIzMCwgODUsIDIzMSwgOTAsIDIyMywgNjEsIDI4LCAxNiwgNTIsIDIyMCwgNzUsIAorICAgIDI4LCAxNiwgNTIsIDI0NCwgNjUsIDI4LCAxNiwgMjQ0LCA2NiwgMjE0LCAxNjMsIDI4LCAxNiwgMjQ0LCA2NiwgMjQ2LCAKKyAgICAxMDYsIDI4LCAxNiwgMjI5LCAxODgsIDIxNCwgMTYzLCAyOCwgMTYsIDIyOSwgMTg4LCAyNDYsIDEwNiwgMjgsIDE2LCAyMjAsIAorICAgIDc2LCAyMTQsIDE2MywgMjgsIDE2LCAyMjAsIDc2LCAyNDYsIDEwNiwgMjgsIDE2LCAyMjQsIDIyLCAxMzgsIDIyMCwgNzUsIAorICAgIDI4LCAxNiwgMjI0LCAyMiwgMTM4LCAyNDQsIDY1LCAyOCwgMTYsIDI0OSwgMjE2LCAyMTYsIDg3LCAyOCwgMTYsIDI0OSwgCisgICAgODUsIDIxNiwgODcsIDI4LCAxNiwgMjI2LCAxMzYsIDI1NCwgMTQyLCAyOCwgMTYsIDIyNiwgMTM2LCAyNTIsIDEyMiwgMjgsIAorICAgIDE2LCAyMjQsIDQsIDI1NCwgMTQyLCAyOCwgMTYsIDIyNCwgNCwgMjUyLCAxMjIsIDI4LCAxNiwgMjMwLCA4OCwgMjIzLCA2MSwgCisgICAgMjgsIDE2LCAyMTEsIDI1MSwgMjIzLCA2MSwgMjgsIDE2LCAxNjMsIDIyMywgNjEsIDI4LCAxNiwgMjI0LCAyMiwgMjIzLCAKKyAgICA2MSwgMjgsIDE2LCAyNDUsIDE4OSwgMjIzLCA2MSwgMjgsIDE2LCAyMTksIDExOCwgMjIzLCA2MSwgMjgsIDE2LCAyMTYsIAorICAgIDE2MCwgMjIzLCA2MSwgMjgsIDE2LCAyMTksIDExMCwgMjIzLCA2MSwgMjgsIDE2LCAxMjMsIDI0MCwgMjExLCAyMTUsIDcxLCAKKyAgICAyMjMsIDYxLCAyOCwgMTYsIDIxMSwgMTc5LCAyMjgsIDQzLCAyOCwgMTYsIDk2LCAyMjgsIDQzLCAyOCwgMTYsIDI1MCwgMzYsIAorICAgIDIxMSwgMTc5LCAyMjgsIDQzLCAyOCwgMTYsIDQyLCAyMjgsIDQ0LCAyMTEsIDI1MywgMjgsIDE2LCA0MiwgMjI4LCA0NCwgCisgICAgMjUxLCAyMjEsIDI4LCAxNiwgMjE1LCAyMjYsIDIyOCwgNDQsIDEyMCwgMjExLCAyNTMsIDI4LCAxNiwgMjE1LCAyMjYsIAorICAgIDIyOCwgNDQsIDEyMCwgMjUxLCAyMjEsIDI4LCAxNiwgMjE1LCAyMjYsIDIyOCwgNDQsIDQzLCAyMTEsIDI1MywgMjgsIDE2LCAKKyAgICAyMTUsIDIyNiwgMjI4LCA0NCwgNDMsIDI1MSwgMjIxLCAyOCwgMTYsIDIxNSwgMjI2LCAyMjgsIDQ0LCA0NCwgMjExLCAyNTMsIAorICAgIDI4LCAxNiwgMjE1LCAyMjYsIDIyOCwgNDQsIDQ0LCAyNTEsIDIyMSwgMjgsIDE2LCAyMTUsIDIyNiwgMjI4LCA0NCwgMTI0LCAKKyAgICAyMTEsIDI1MywgMjgsIDE2LCAyMTUsIDIyNiwgMjI4LCA0NCwgMTI0LCAyNTEsIDIyMSwgMjgsIDE2LCAyMTUsIDIyNiwgCisgICAgMjI4LCA0NCwgMTIwLCA0NCwgMjExLCAyNTMsIDI4LCAxNiwgMjE1LCAyMjYsIDIyOCwgNDQsIDEyMCwgNDQsIDI1MSwgMjIxLCAKKyAgICAyOCwgMTYsIDIzMCwgMTI5LCAyMjgsIDQ0LCAyMTEsIDI1MywgMjgsIDE2LCAyMzAsIDEyOSwgMjI4LCA0NCwgMjUxLCAyMjEsIAorICAgIDI4LCAxNiwgMjE1LCAyMjMsIDIyOCwgNDQsIDEyNCwgMjExLCAyNTMsIDI4LCAxNiwgMjE1LCAyMjMsIDIyOCwgNDQsIDEyNCwgCisgICAgMjUxLCAyMjEsIDI4LCAxNiwgMjI2LCA0LCAyMjgsIDQzLCAyOCwgMTYsIDIxMywgMTMyLCAyMjgsIDQzLCAyOCwgMTYsIAorICAgIDIyOCwgNDQsIDI1MSwgMjIxLCAyOCwgMTYsIDIyNywgMjAzLCAyMjgsIDQzLCAyOCwgMTYsIDI0OSwgMjQxLCAyMjgsIDQ0LCAKKyAgICAyMTEsIDI1MywgMjgsIDE2LCAyNDksIDI0MSwgMjI4LCA0NCwgMjUxLCAyMjEsIDI4LCAxNiwgMjUxLCAxNDYsIDI4LCAxNiwgCisgICAgMjExLCAyNTEsIDIyOCwgNDcsIDI4LCAxNiwgMTYzLCAyMjgsIDQ3LCAyOCwgMTYsIDIyNCwgMjIsIDIyOCwgNDcsIDI4LCAKKyAgICAxNiwgMjQ1LCAxODksIDIyOCwgNDcsIDI4LCAxNiwgMjE5LCAxMTgsIDIyOCwgNDcsIDI4LCAxNiwgMjE2LCAxNjAsIDIyOCwgCisgICAgNDcsIDI4LCAxNiwgMjE5LCAxMTAsIDIyOCwgNDcsIDI4LCAxNiwgMTIzLCAyNDAsIDIxMSwgMjE1LCA3MSwgMjI4LCA0NywgCisgICAgMjgsIDE2LCAzOCwgMjE4LCAxMzksIDI4LCAxNiwgMzgsIDIxOCwgMjQwLCAyMTgsIDEzOSwgMjgsIDE2LCAzOCwgMjE1LCAKKyAgICAyMzQsIDI4LCAxNiwgMzgsIDIxNSwgMjMzLCAyOCwgMTYsIDM4LCAyMTUsIDIzMiwgMjgsIDE2LCAyNDQsIDEwMSwgMjE1LCAKKyAgICAyMzQsIDI4LCAxNiwgMjQ0LCAxMDEsIDIxNSwgMjMzLCAyOCwgMTYsIDI0NCwgMTAxLCAyMTUsIDIzMiwgMjgsIDE2LCAzOCwgCisgICAgMjUzLCAxODksIDI0NywgMTIwLCAyOCwgMTYsIDM4LCAyNDQsIDcyLCAyOCwgMTYsIDM4LCAyNDQsIDcxLCAyOCwgMTYsIDM4LCAKKyAgICAyNDQsIDcwLCAyOCwgMTYsIDM4LCAyNDQsIDY5LCAyOCwgMTYsIDM4LCAyNDQsIDY4LCAyOCwgMTYsIDI1MiwgNTgsIDI1MiwgCisgICAgNzQsIDI4LCAxNiwgMjQ1LCAxNDMsIDI1MiwgNzQsIDI4LCAxNiwgMjUyLCA1OCwgMjE2LCAxMTEsIDI4LCAxNiwgMjQ1LCAKKyAgICAxNDMsIDIxNiwgMTExLCAyOCwgMTYsIDI1MiwgNTgsIDIxOSwgODAsIDI4LCAxNiwgMjQ1LCAxNDMsIDIxOSwgODAsIDI4LCAKKyAgICAxNiwgMjUyLCA1OCwgMjI1LCAxMTUsIDI4LCAxNiwgMjQ1LCAxNDMsIDIyNSwgMTE1LCAyOCwgMTYsIDM4LCAyNTUsIDE0LCAKKyAgICAyOCwgMTYsIDM4LCAyMTgsIDE2NSwgMjgsIDE2LCAzOCwgMjE2LCAyMzgsIDI4LCAxNiwgMzgsIDIxOCwgMTY2LCAyOCwgMTYsIAorICAgIDM4LCAyMzEsIDE2MiwgMjgsIDE2LCAzOCwgMjMxLCAxNjEsIDI4LCAxNiwgMzgsIDI1NSwgMTMsIDI4LCAxNiwgMzgsIDIzMiwgCisgICAgMTEyLCAyOCwgMTYsIDI1MywgMjU0LCAyMTQsIDE2MywgMjgsIDE2LCAyNTMsIDI1NCwgMjQ2LCAxMDYsIDI4LCAxNiwgMzgsIAorICAgIDI0NywgMTM1LCAyOCwgMTYsIDM4LCAyMjIsIDIzMSwgMjgsIDE2LCAzOCwgMjQ0LCA1OCwgMjgsIDE2LCAzOCwgMjE5LCA3NiwgCisgICAgMjgsIDE2LCAzOCwgMjUyLCAzOCwgMjgsIDE2LCAzOCwgNTIsIDIxNiwgMTksIDI4LCAxNiwgMzgsIDIxNSwgMjExLCAyMTYsIAorICAgIDE5LCAyOCwgMTYsIDIyMiwgMjM1LCAyOCwgMTYsIDIxOCwgNzUsIDI4LCAxNiwgMjEwLCAxNTksIDI4LCAxNiwgMjI1LCAKKyAgICAxMDcsIDI4LCAxNiwgMjMxLCAyNSwgMjgsIDE2LCAyNDQsIDE3LCAyOCwgMTYsIDI0OSwgMTM4LCAyOCwgMTYsIDI0OCwgNzgsIAorICAgIDI4LCAxNiwgMjQyLCAxNTAsIDIyOCwgNDgsIDIxOSwgOTUsIDI4LCAxNiwgMjQyLCAxNTAsIDIyOCwgNDgsIDIyOCwgNzUsIAorICAgIDIxOSwgOTUsIDI4LCAxNiwgMjE2LCAwLCAyOCwgMTYsIDIxNSwgOTUsIDI4LCAxNiwgMjM1LCAxOTMsIDIxNSwgOTUsIDI4LCAKKyAgICAxNiwgMjE1LCA5NiwgMjE5LCA5NSwgMjgsIDE2LCAyMTUsIDk2LCAyMTQsIDE2MywgMjgsIDE2LCAyMjYsIDE0OCwgMjE4LCAKKyAgICAxMDIsIDI4LCAxNiwgMjI2LCAxNDgsIDIxOCwgOTksIDI4LCAxNiwgMjI2LCAxNDgsIDIxOCwgOTgsIDI4LCAxNiwgMjI2LCAKKyAgICAxNDgsIDIxOCwgOTcsIDI4LCAxNiwgMjI2LCAxNDgsIDIxOCwgOTYsIDI4LCAxNiwgMjI2LCAxNDgsIDIxOCwgOTUsIDI4LCAKKyAgICAxNiwgMjI2LCAxNDgsIDIxOCwgOTQsIDI4LCAxNiwgMjI2LCAxNDgsIDIxOCwgOTMsIDI4LCAxNiwgMjI2LCAxNDgsIDIxOCwgCisgICAgOTIsIDI4LCAxNiwgMjI2LCAxNDgsIDIxOCwgMTAxLCAyOCwgMTYsIDIyNiwgMTQ4LCAyMTgsIDEwMCwgMjgsIDE2LCAyNDEsIAorICAgIDI0NSwgMjgsIDE2LCAyMjksIDEwNSwgMjgsIDE2LCAyNDUsIDE0MywgNjQsIDIxOCwgMTMzLCAyOCwgMTYsIDI0OCwgNzEsIAorICAgIDIxOSwgOTUsIDI4LCAxNiwgMzgsIDEyNCwgMjUxLCAxNjksIDI4LCAxNiwgMzgsIDEyMCwgMjUxLCAxNjksIDI4LCAxNiwgCisgICAgMzgsIDI0MiwgMCwgMjgsIDE2LCAzOCwgMjE5LCA2NywgMjI1LCA0MywgMjgsIDE2LCAyMjUsIDIxNiwgNzgsIDI4LCAxNiwgCisgICAgMjI1LCAyMTYsIDEyMCwgNzgsIDI4LCAxNiwgMTYzLCAyMjUsIDIxNiwgNzgsIDI4LCAxNiwgMjQyLCAxODIsIDIxNCwgMTYzLCAKKyAgICAyOCwgMTYsIDI0MiwgMTgyLCAyNDYsIDEwNiwgMjgsIDE2LCAyLCAyNDQsIDEwMCwgMjgsIDE2LCAyNDgsIDE4MCwgMjgsIAorICAgIDE2LCAyNDgsIDE4MSwgMjU0LCAxNTQsIDI4LCAxNiwgMjMxLCAxMzMsIDI4LCAxNiwgMjMyLCAxMjksIDI4LCAxNiwgMjUxLCAKKyAgICAxNDMsIDI4LCAxNiwgMjIwLCAxNTQsIDIxMSwgMjUzLCAyOCwgMTYsIDIyMCwgMTU0LCAyNTEsIDIyMSwgMjgsIDE2LCAyMzAsIAorICAgIDE4NCwgMjgsIDE2LCAyMzAsIDE4NSwgMjUxLCAyMjEsIDI4LCAxNiwgMjIwLCAxNDgsIDIxMSwgMjUzLCAyOCwgMTYsIDIyMCwgCisgICAgMTQ4LCAyNTEsIDIyMSwgMjgsIDE2LCAyNDMsIDIyMCwgMjExLCAyNTMsIDI4LCAxNiwgMjQzLCAyMjAsIDI1MSwgMjIxLCAKKyAgICAyOCwgMTYsIDIzMiwgMTMwLCAyMjUsIDE4MCwgMjIzLCA2MSwgMjgsIDE2LCAyMzIsIDEzMCwgMjM2LCA0LCAyMjMsIDYxLCAKKyAgICAyOCwgMTYsIDI1MSwgMTQ0LCAyMjMsIDYxLCAyOCwgMTYsIDIyMCwgMTU0LCAyMjMsIDYxLCAyOCwgMTYsIDIzMCwgMTg1LCAKKyAgICAyMjMsIDYxLCAyOCwgMTYsIDIyMCwgMTQ4LCAyMjMsIDYxLCAyOCwgMTYsIDIxNiwgMjQ5LCAyMjUsIDE3OCwgMjQ5LCAxMDcsIAorICAgIDIyNCwgMTc0LCAyMjUsIDE3OSwgMjgsIDE2LCAyMTYsIDI0OSwgMjI1LCAxNzgsIDI0OSwgMTA3LCAyMjQsIDE3NCwgMjM2LCAKKyAgICAzLCAyOCwgMTYsIDIxNiwgMjQ5LCAyMjUsIDE3OCwgMjQ5LCAxMDcsIDIyNCwgMTc0LCAyMjUsIDE4MCwgMjQ3LCAyMTEsIAorICAgIDI4LCAxNiwgMjE2LCAyNDksIDIzNiwgMiwgMjQ5LCAxMDcsIDIyNCwgMTc0LCAyMjUsIDE3OSwgMjgsIDE2LCAyMTYsIDI0OSwgCisgICAgMjM2LCAyLCAyNDksIDEwNywgMjI0LCAxNzQsIDIzNiwgMywgMjgsIDE2LCAyMTYsIDI0OSwgMjM2LCAyLCAyNDksIDEwNywgCisgICAgMjI0LCAxNzQsIDIzNiwgNCwgMjQ3LCAyMTEsIDI4LCAxNiwgMjE2LCAyNDksIDIzNiwgMiwgMjQ5LCAxMDcsIDIyNCwgMTc0LCAKKyAgICAyMzYsIDQsIDI0NywgMjEwLCAyOCwgMTYsIDIxNiwgMjQ5LCAyMzYsIDIsIDI0OSwgMTA3LCAyMjQsIDE3NCwgMjM2LCA0LCAKKyAgICAyNDcsIDIwOSwgMjgsIDE2LCAyNDksIDEzMywgMjgsIDE2LCAyNDIsIDEyNiwgMjUxLCA2NywgMjUwLCAxNCwgMjgsIDE2LCAKKyAgICAyNDIsIDEyNiwgMjQ1LCA3LCAyNTAsIDE0LCAyOCwgMTYsIDQyLCAyNTMsIDE1OCwgMjgsIDE2LCAyMTMsIDE1MSwgMjgsIAorICAgIDE2LCAyMjUsIDE0LCAyOCwgMTYsIDI1MCwgNSwgMjgsIDE2LCAyMjEsIDIwMywgMjgsIDE2LCAyNTAsIDksIDI4LCAxNiwgCisgICAgMjE2LCA3LCAyOCwgMTYsIDIyNCwgMjQyLCAyOCwgMTYsIDIyNCwgMjQzLCAyNDQsIDYwLCAyOCwgMTYsIDIyMSwgMjA0LCAKKyAgICAyNDQsIDYwLCAyOCwgMTYsIDIxNiwgOCwgMjIzLCA1OCwgMjgsIDE2LCAyMjUsIDE2MywgMjE4LCA2NiwgMjYsIDIxMywgCisgICAgMTM3LCAxODcsIDIxNywgMjI5LCAyNiwgMjEzLCAxMzcsIDE4NywgMjE3LCAyMTgsIDI2LCAyMTMsIDEzNywgMTg3LCAyMTcsIAorICAgIDIwOCwgMjYsIDIxMywgMTM3LCAxODcsIDIxNywgMjAxLCAyNiwgMjEzLCAxMzcsIDE4NywgMjE3LCAxOTMsIDI2LCAyMTMsIAorICAgIDEzNywgMTg3LCAyMTcsIDE4NywgMjYsIDIxMywgMTM3LCAxODcsIDIxNywgMTg2LCAyNiwgMjEzLCAxMzcsIDE4NywgMjE3LCAKKyAgICAxODUsIDI2LCAyMTMsIDEzNywgMTg3LCAyMTcsIDE4NCwgMjYsIDIxMywgMTM3LCAxODcsIDIxNywgMjI4LCAyNiwgMjEzLCAKKyAgICAxMzcsIDE4NywgMjE3LCAyMjcsIDI2LCAyMTMsIDEzNywgMTg3LCAyMTcsIDIyNiwgMjYsIDIxMywgMTM3LCAxODcsIDIxNywgCisgICAgMjI1LCAyNiwgMjEzLCAxMzcsIDE4NywgMjE3LCAyMjQsIDI2LCAyMTMsIDEzNywgMTg3LCAyMTcsIDIyMywgMjYsIDIxMywgCisgICAgMTM3LCAxODcsIDIxNywgMjIyLCAyNiwgMjEzLCAxMzcsIDE4NywgMjE3LCAyMjEsIDI2LCAyMTMsIDEzNywgMTg3LCAyMTcsIAorICAgIDIyMCwgMjYsIDIxMywgMTM3LCAxODcsIDIxNywgMjE5LCAyNiwgMjEzLCAxMzcsIDE4NywgMjE3LCAyMTcsIDI2LCAyMTMsIAorICAgIDEzNywgMTg3LCAyMTcsIDIxNiwgMjYsIDIxMywgMTM3LCAxODcsIDIxNywgMjE1LCAyNiwgMjEzLCAxMzcsIDE4NywgMjE3LCAKKyAgICAyMTQsIDI2LCAyMTMsIDEzNywgMTg3LCAyMTcsIDIxMywgMjYsIDIxMywgMTM3LCAxODcsIDIxNywgMTkyLCAyNiwgMjEzLCAKKyAgICAxMzcsIDE4NywgMjE3LCAxOTEsIDI2LCAyMTMsIDEzNywgMTg3LCAyMTcsIDE5MCwgMjYsIDIxMywgMTM3LCAxODcsIDIxNywgCisgICAgMTg5LCAyNiwgMjEzLCAxMzcsIDE4NywgMjE3LCAxODgsIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIDIyOSwgMjYsIDIzNSwgCisgICAgMjE0LCAxODcsIDIxNywgMjE4LCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAyMDEsIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIAorICAgIDE5MywgMjYsIDIzNSwgMjE0LCAxODcsIDIxNywgMTg2LCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAxODUsIDI2LCAyMzUsIAorICAgIDIxNCwgMTg3LCAyMTcsIDIyNywgMjYsIDIzNSwgMjE0LCAxODcsIDIxNywgMjI2LCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAKKyAgICAyMjUsIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIDIyNCwgMjYsIDIzNSwgMjE0LCAxODcsIDIxNywgMjIxLCAyNiwgMjM1LCAKKyAgICAyMTQsIDE4NywgMjE3LCAyMjAsIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIDIxOSwgMjYsIDIzNSwgMjE0LCAxODcsIDIxNywgCisgICAgMjE0LCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAyMTMsIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIDIxMiwgMjYsIDIzNSwgCisgICAgMjE0LCAxODcsIDIxNywgMjExLCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAyMTAsIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIAorICAgIDIwOSwgMjYsIDIzNSwgMjE0LCAxODcsIDIxNywgMjA3LCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAyMDYsIDI2LCAyMzUsIAorICAgIDIxNCwgMTg3LCAyMTcsIDIwNSwgMjYsIDIzNSwgMjE0LCAxODcsIDIxNywgMjA0LCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAKKyAgICAyMDMsIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIDIwMiwgMjYsIDIzNSwgMjE0LCAxODcsIDIxNywgMjAwLCAyNiwgMjM1LCAKKyAgICAyMTQsIDE4NywgMjE3LCAxOTksIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIDE5OCwgMjYsIDIzNSwgMjE0LCAxODcsIDIxNywgCisgICAgMTk3LCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAxOTYsIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIDE5NSwgMjYsIDIzNSwgCisgICAgMjE0LCAxODcsIDIxNywgMTk0LCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAxOTIsIDI2LCAyMzUsIDIxNCwgMTg3LCAyMTcsIAorICAgIDE5MSwgMjYsIDIzNSwgMjE0LCAxODcsIDIxNywgMTkwLCAyNiwgMjM1LCAyMTQsIDE4NywgMjE3LCAxODksIDI2LCAyMzUsIAorICAgIDIxNCwgMTg3LCAyMTcsIDE4OCwgMzgsIDI2LCAyOCwgMjE1LCAyMDgsIDM4LCAyNiwgMjgsIDIxNiwgMjIzLCAzOCwgMjYsIAorICAgIDI4LCAyMjUsIDE4OCwgMjYsIDI4LCAyMzMsIDMxLCAyMzAsIDE0MiwgMzEsIDI0NSwgMjIzLCAyNDcsIDIyNCwgMzEsIDI0MSwgCisgICAgMjIyLCAyNDUsIDIyMywgMjQ3LCAyMjQsIDMxLCAyNDAsIDIxNCwgMjQ1LCAyMjMsIDI0NywgMjI0LCAzMSwgMjQ1LCAyMjIsIAorICAgIDI0MSwgMjIzLCAyNDcsIDIyNCwgMzEsIDI0NSwgMjIyLCAyNDAsIDIxMywgMjQ3LCAyMjQsIDMxLCAyNDUsIDIyMywgMTgwLCAKKyAgICAzMSwgMjUwLCAxNzQsIDE4MCwgMzEsIDI0MywgMjI5LCAyNTAsIDM1LCAxODAsIDMxLCAyMzAsIDE3NywgMTgwLCAzMSwgCisgICAgMjUyLCAxMzAsIDE4MCwgMzEsIDIzNCwgMTc5LCAyMTksIDc5LCAxODAsIDMxLCAyNDksIDE3OSwgMTgwLCAzMSwgMjUzLCAKKyAgICAyMzMsIDE4MCwgMzEsIDIyNiwgMTYzLCAxODAsIDMxLCAyNTEsIDE1MywgMjI2LCAxMzAsIDE4MCwgMzEsIDI0OCwgNzMsIAorICAgIDE3NywgMjQ3LCAxNzksIDE4MCwgMzEsIDI0NywgMTc2LCAxODAsIDMxLCAyMTAsIDIyMiwgMTgwLCAzMSwgMjM1LCAyNDcsIAorICAgIDE4MCwgMzEsIDIyNSwgMTk3LCAxODAsIDMxLCAyMjMsIDEyNywgMTgwLCAzMSwgMjQ5LCAxODksIDE4MCwgMzEsIDI0MSwgCisgICAgNjAsIDI1MiwgMTg0LCAxODAsIDMxLCAyMTIsIDU5LCAxODAsIDMxLCAyNDQsIDM5LCAxODAsIDMxLCAyNTQsIDI0NiwgMTgwLCAKKyAgICAzMSwgMjIzLCA4OSwgMTgwLCAzMSwgMjIzLCA2NSwgMTgwLCAzMSwgMjQ1LCAyMjEsIDE4MCwgMzEsIDIzNSwgNTMsIDE4MCwgCisgICAgMzEsIDI0OSwgMTg0LCAxODAsIDMxLCAyNDUsIDE0MiwgMTgwLCAzMSwgMjQ2LCA1MiwgMTgwLCAzMSwgMjUwLCAxNDUsIAorICAgIDE4MCwgMzEsIDI0OCwgODIsIDE4MCwgMzEsIDIzLCAyMjMsIDY0LCAxODAsIDMxLCAyMjYsIDgxLCAxODAsIDMxLCAyMzMsIAorICAgIDM0LCAxODAsIDMxLCAyNDksIDI1NCwgMTgwLCAzMSwgMjM0LCA3NywgMTgwLCAzMSwgMjQzLCA4NiwgMTgwLCAzMSwgMjE4LCAKKyAgICAxMTIsIDE4MCwgMzEsIDIyNCwgMTMwLCAxODAsIDMxLCAyNDMsIDIyOCwgMTgwLCAzMSwgMjIzLCA2NiwgMTgwLCAzMSwgCisgICAgMjMzLCA3MSwgMTc3LCAyMzAsIDE1NywgMTgwLCAzMSwgMjIzLCA2MiwgMTgwLCAzMSwgMjQyLCAxNjgsIDIxNiwgNDIsIAorICAgIDIzMSwgNzYsIDE4MCwgMzEsIDI0NSwgMTQ0LCAxODAsIDMxLCAyMTgsIDEyNCwgMTgwLCAzMSwgMjQyLCAxMjgsIDE4MCwgCisgICAgMzEsIDI0NSwgMTM2LCAxODAsIDMxLCAyMjUsIDIzNSwgMTgwLCAzMSwgMjIyLCAyMjUsIDE4MCwgMzEsIDI0NCwgNTksIAorICAgIDE4MCwgMzEsIDIxNCwgOCwgMTc3LCAyMTIsIDQ0LCAxODAsIDMxLCAyNDksIDE5MywgMTgwLCAzMSwgMjMxLCA4OSwgMTgwLCAKKyAgICAzMSwgMjQ1LCA2MSwgMTgwLCAzMSwgMjE0LCAxNzIsIDE4MCwgMzEsIDI0NywgMjEyLCAxODAsIDMxLCAyNTAsIDAsIDIzMCwgCisgICAgMTEwLCAxODAsIDMxLCAyNDIsIDEwNiwgMTgwLCAzMSwgMjQzLCA4NywgMjM1LCAyNTUsIDE4MCwgMzEsIDIzMSwgMTQxLCAKKyAgICAxODAsIDMxLCAyNTUsIDEwLCAxODAsIDMxLCAyNDUsIDE1NywgMTgwLCAzMSwgMjQ2LCAxMDksIDE4MCwgMzEsIDIxMiwgNDIsIAorICAgIDE4MCwgMzEsIDIxOSwgMTUwLCAxODAsIDMxLCAyMzUsIDIyMiwgMTgwLCAzMSwgMjQ4LCA0MiwgMTgwLCAzMSwgMjQ4LCAKKyAgICAxNjAsIDE4MCwgMzEsIDI0NywgMjA4LCAxODAsIDMxLCAyNDUsIDI5LCAxODAsIDMxLCAyMjAsIDExNSwgMTgwLCAzMSwgCisgICAgMjE4LCAxMjgsIDE4MCwgMzEsIDI0MiwgMiwgMTgwLCAzMSwgMjQ5LCAyMTIsIDE4MCwgMzEsIDI0OSwgMjUxLCAxODAsIDMxLCAKKyAgICAyNDQsIDE3NywgMTgwLCAzMSwgMjU0LCAyMTIsIDE4MCwgMzEsIDI0OSwgMjExLCAxODAsIDMxLCAyMjYsIDE5NywgMjE2LCAKKyAgICAxOTYsIDIxMywgMjQyLCAxODAsIDMxLCAyNDcsIDIzMiwgMTgwLCAzMSwgMjMzLCAxMjQsIDE4MCwgMzEsIDI0NCwgMTMsIAorICAgIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE0LCAxNzQsIDIxLCAxMTAsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE0LCAxNzQsIDIxLCAKKyAgICAxMDUsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE0LCAxNzQsIDIxLCAxNTgsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE0LCAxNzQsIAorICAgIDIxLCAxNjEsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE0LCAxNzQsIDIxLCAxODksIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE0LCAKKyAgICAxNzQsIDIxLCAxOTQsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE0LCAxNzQsIDIxLCAxOTgsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgCisgICAgMjE0LCAxNzQsIDIxLCAxOTUsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE0LCAxNzQsIDIxLCAyMDAsIDI0OSwgMTQ5LCAyMjIsIAorICAgIDIwMiwgMjE2LCAyNDMsIDIxLCAxMTAsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE2LCAyNDMsIDIxLCAxMDUsIDI0OSwgMTQ5LCAKKyAgICAyMjIsIDIwMiwgMjE2LCAyNDMsIDIxLCAxNTgsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE2LCAyNDMsIDIxLCAxNjEsIDI0OSwgCisgICAgMTQ5LCAyMjIsIDIwMiwgMjE2LCAyNDMsIDIxLCAxODksIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE2LCAyNDMsIDIxLCAxOTQsIAorICAgIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE2LCAyNDMsIDIxLCAxOTgsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE2LCAyNDMsIDIxLCAKKyAgICAxOTUsIDI0OSwgMTQ5LCAyMjIsIDIwMiwgMjE2LCAyNDMsIDIxLCAyMDAsIDExLCAyMywgNiwgNjEsIDExLCAyMywgNiwgCisgICAgMjUzLCAxNTgsIDExLCAyMywgNiwgMjUxLCA2NiwgMTEsIDIzLCA2LCAyNDksIDYwLCAxMSwgMjMsIDYsIDc1LCAxMSwgMjMsIAorICAgIDYsIDI0NSwgNiwgMTEsIDIzLCA2LCAyNDMsIDIwMiwgMTEsIDIzLCA2LCAyNDIsIDYwLCAxMSwgMjMsIDYsIDczLCAxMSwgCisgICAgMjMsIDYsIDIzNSwgMTQ0LCAxMSwgMjMsIDYsIDIzNSwgMjMsIDExLCAyMywgNiwgMTU2LCAxMSwgMjMsIDYsIDE5MywgMTEsIAorICAgIDIzLCA2LCAyMzAsIDI1LCAxMSwgMjMsIDYsIDc2LCAxMSwgMjMsIDYsIDIyNiwgMTA1LCAxMSwgMjMsIDYsIDIyNCwgOTYsIAorICAgIDExLCAyMywgNiwgMTUzLCAxMSwgMjMsIDYsIDIyMiwgOTEsIDExLCAyMywgNiwgMjE3LCAxNTIsIDExLCAyMywgNiwgNzAsIAorICAgIDExLCAyMywgNiwgMjE0LCAxMDUsIDExLCAyMywgNiwgMjEyLCA5OCwgMTEsIDIzLCA2LCAyMTEsIDE3OCwgMTEsIDIzLCA2LCAKKyAgICAyMTEsIDExNywgMTEsIDIzLCA2LCAyMTAsIDE1OSwgMTEsIDIzLCA0LCA2MSwgMTEsIDIzLCA0LCAyNTMsIDE1OCwgMTEsIAorICAgIDIzLCA0LCAyNTEsIDY2LCAxMSwgMjMsIDQsIDI0OSwgNjAsIDExLCAyMywgNCwgNzUsIDExLCAyMywgNCwgMjQ1LCA2LCAxMSwgCisgICAgMjMsIDQsIDI0MywgMjAyLCAxMSwgMjMsIDQsIDI0MiwgNjAsIDExLCAyMywgNCwgNzMsIDExLCAyMywgNCwgMjM1LCAxNDQsIAorICAgIDExLCAyMywgNCwgMjM1LCAyMywgMTEsIDIzLCA0LCAxNTYsIDExLCAyMywgNCwgMTkzLCAxMSwgMjMsIDQsIDIzMCwgMjUsIAorICAgIDExLCAyMywgNCwgNzYsIDExLCAyMywgNCwgMjI2LCAxMDUsIDExLCAyMywgNCwgMjI0LCA5NiwgMTEsIDIzLCA0LCAxNTMsIAorICAgIDExLCAyMywgNCwgMjIyLCA5MSwgMTEsIDIzLCA0LCAyMTcsIDE1MiwgMTEsIDIzLCA0LCA3MCwgMTEsIDIzLCA0LCAyMTQsIAorICAgIDEwNSwgMTEsIDIzLCA0LCAyMTIsIDk4LCAxMSwgMjMsIDQsIDIxMSwgMTc4LCAxMSwgMjMsIDQsIDIxMSwgMTE3LCAxMSwgCisgICAgMjMsIDQsIDIxMCwgMTU5LCAxMSwgMzIsIDYsIDYxLCAxMSwgMzIsIDYsIDI1MywgMTU4LCAxMSwgMzIsIDYsIDI1MSwgNjYsIAorICAgIDExLCAzMiwgNiwgMjQ5LCA2MCwgMTEsIDMyLCA2LCA3NSwgMTEsIDMyLCA2LCAyNDUsIDYsIDExLCAzMiwgNiwgMjQzLCAKKyAgICAyMDIsIDExLCAzMiwgNiwgMjQyLCA2MCwgMTEsIDMyLCA2LCA3MywgMTEsIDMyLCA2LCAyMzUsIDE0NCwgMTEsIDMyLCA2LCAKKyAgICAyMzUsIDIzLCAxMSwgMzIsIDYsIDE1NiwgMTEsIDMyLCA2LCAxOTMsIDExLCAzMiwgNiwgMjMwLCAyNSwgMTEsIDMyLCA2LCAKKyAgICA3NiwgMTEsIDMyLCA2LCAyMjYsIDEwNSwgMTEsIDMyLCA2LCAyMjQsIDk2LCAxMSwgMzIsIDYsIDE1MywgMTEsIDMyLCA2LCAKKyAgICAyMjIsIDkxLCAxMSwgMzIsIDYsIDIxNywgMTUyLCAxMSwgMzIsIDYsIDcwLCAxMSwgMzIsIDYsIDIxNCwgMTA1LCAxMSwgMzIsIAorICAgIDYsIDIxMiwgOTgsIDExLCAzMiwgNiwgMjExLCAxNzgsIDExLCAzMiwgNiwgMjExLCAxMTcsIDExLCAzMiwgNiwgMjEwLCAKKyAgICAxNTksIDExLCAzMiwgNCwgNjEsIDExLCAzMiwgNCwgMjUzLCAxNTgsIDExLCAzMiwgNCwgMjUxLCA2NiwgMTEsIDMyLCA0LCAKKyAgICAyNDksIDYwLCAxMSwgMzIsIDQsIDc1LCAxMSwgMzIsIDQsIDI0NSwgNiwgMTEsIDMyLCA0LCAyNDMsIDIwMiwgMTEsIDMyLCAKKyAgICA0LCA3MywgMTEsIDMyLCA0LCAyMzUsIDE0NCwgMTEsIDMyLCA0LCAyMzUsIDIzLCAxMSwgMzIsIDQsIDE1NiwgMTEsIDMyLCAKKyAgICA0LCAxOTMsIDExLCAzMiwgNCwgMjMwLCAyNSwgMTEsIDMyLCA0LCA3NiwgMTEsIDMyLCA0LCAyMjYsIDEwNSwgMTEsIDMyLCAKKyAgICA0LCAyMjQsIDk2LCAxMSwgMzIsIDQsIDE1MywgMTEsIDMyLCA0LCAyMjIsIDkxLCAxMSwgMzIsIDQsIDIxNywgMTUyLCAxMSwgCisgICAgMzIsIDQsIDcwLCAxMSwgMzIsIDQsIDIxNCwgMTA1LCAxMSwgMzIsIDQsIDIxMiwgOTgsIDExLCAzMiwgNCwgMjExLCAxNzgsIAorICAgIDExLCAzMiwgNCwgMjExLCAxMTcsIDExLCAzMiwgNCwgMjEwLCAxNTksIDExLCAyMywgMzIsIDYsIDYxLCAxMSwgMjMsIDMyLCAKKyAgICA2LCAyNTMsIDE1OCwgMTEsIDIzLCAzMiwgNiwgMjUxLCA2NiwgMTEsIDIzLCAzMiwgNiwgMjQ5LCA2MCwgMTEsIDIzLCAzMiwgCisgICAgNiwgNzUsIDExLCAyMywgMzIsIDYsIDI0NSwgNiwgMTEsIDIzLCAzMiwgNiwgMjQzLCAyMDIsIDExLCAyMywgMzIsIDYsIAorICAgIDI0MiwgNjAsIDExLCAyMywgMzIsIDYsIDczLCAxMSwgMjMsIDMyLCA2LCAyMzUsIDE0NCwgMTEsIDIzLCAzMiwgNiwgMjM1LCAKKyAgICAyMywgMTEsIDIzLCAzMiwgNiwgMTU2LCAxMSwgMjMsIDMyLCA2LCAxOTMsIDExLCAyMywgMzIsIDYsIDIzMCwgMjUsIDExLCAKKyAgICAyMywgMzIsIDYsIDc2LCAxMSwgMjMsIDMyLCA2LCAyMjYsIDEwNSwgMTEsIDIzLCAzMiwgNiwgMjI0LCA5NiwgMTEsIDIzLCAKKyAgICAzMiwgNiwgMTUzLCAxMSwgMjMsIDMyLCA2LCAyMjIsIDkxLCAxMSwgMjMsIDMyLCA2LCAyMTcsIDE1MiwgMTEsIDIzLCAzMiwgCisgICAgNiwgNzAsIDExLCAyMywgMzIsIDYsIDIxNCwgMTA1LCAxMSwgMjMsIDMyLCA2LCAyMTIsIDk4LCAxMSwgMjMsIDMyLCA2LCAKKyAgICAyMTEsIDE3OCwgMTEsIDIzLCAzMiwgNiwgMjExLCAxMTcsIDExLCAyMywgMzIsIDYsIDIxMCwgMTU5LCAxMSwgMjMsIDMyLCAKKyAgICA0LCA2MSwgMTEsIDIzLCAzMiwgNCwgMjUzLCAxNTgsIDExLCAyMywgMzIsIDQsIDI1MSwgNjYsIDExLCAyMywgMzIsIDQsIAorICAgIDI0OSwgNjAsIDExLCAyMywgMzIsIDQsIDc1LCAxMSwgMjMsIDMyLCA0LCAyNDUsIDYsIDExLCAyMywgMzIsIDQsIDI0MywgCisgICAgMjAyLCAxMSwgMjMsIDMyLCA0LCAyNDIsIDYwLCAxMSwgMjMsIDMyLCA0LCA3MywgMTEsIDIzLCAzMiwgNCwgMjM1LCAxNDQsIAorICAgIDExLCAyMywgMzIsIDQsIDIzNSwgMjMsIDExLCAyMywgMzIsIDQsIDE1NiwgMTEsIDIzLCAzMiwgNCwgMTkzLCAxMSwgMjMsIAorICAgIDMyLCA0LCAyMzAsIDI1LCAxMSwgMjMsIDMyLCA0LCA3NiwgMTEsIDIzLCAzMiwgNCwgMjI2LCAxMDUsIDExLCAyMywgMzIsIAorICAgIDQsIDIyNCwgOTYsIDExLCAyMywgMzIsIDQsIDE1MywgMTEsIDIzLCAzMiwgNCwgMjIyLCA5MSwgMTEsIDIzLCAzMiwgNCwgCisgICAgMjE3LCAxNTIsIDExLCAyMywgMzIsIDQsIDcwLCAxMSwgMjMsIDMyLCA0LCAyMTQsIDEwNSwgMTEsIDIzLCAzMiwgNCwgMjEyLCAKKyAgICA5OCwgMTEsIDIzLCAzMiwgNCwgMjExLCAxNzgsIDExLCAyMywgMzIsIDQsIDIxMSwgMTE3LCAxMSwgMjMsIDMyLCA0LCAyMTAsIAorICAgIDE1OSwgMTEsIDExOSwgNiwgNjEsIDExLCAxMTksIDYsIDI1MSwgNjYsIDExLCAxMTksIDYsIDI0OSwgNjAsIDExLCAxMTksIAorICAgIDYsIDI0MywgMjAyLCAxMSwgMTE5LCA2LCAyMzUsIDE0NCwgMTEsIDExOSwgNiwgMjM1LCAyMywgMTEsIDExOSwgNiwgMjMwLCAKKyAgICAyNSwgMTEsIDExOSwgNiwgNzYsIDExLCAxMTksIDYsIDIyNiwgMTA1LCAxMSwgMTE5LCA2LCAyMjQsIDk2LCAxMSwgMTE5LCAKKyAgICA2LCAyMjIsIDkxLCAxMSwgMTE5LCA2LCAyMTcsIDE1MiwgMTEsIDExOSwgNiwgNzAsIDExLCAxMTksIDYsIDIxNCwgMTA1LCAKKyAgICAxMSwgMTE5LCA2LCAyMTIsIDk4LCAxMSwgMTE5LCA2LCAyMTEsIDE3OCwgMTEsIDExOSwgNiwgMjExLCAxMTcsIDExLCAxMTksIAorICAgIDYsIDIxMCwgMTU5LCAxMSwgMTE5LCA0LCA2MSwgMTEsIDExOSwgNCwgMjUzLCAxNTgsIDExLCAxMTksIDQsIDI1MSwgNjYsIAorICAgIDExLCAxMTksIDQsIDI0OSwgNjAsIDExLCAxMTksIDQsIDI0NSwgNiwgMTEsIDExOSwgNCwgMjQyLCA2MCwgMTEsIDExOSwgNCwgCisgICAgNzMsIDExLCAxMTksIDQsIDIzNSwgMTQ0LCAxMSwgMTE5LCA0LCAyMzUsIDIzLCAxMSwgMTE5LCA0LCAxNTYsIDExLCAxMTksIAorICAgIDQsIDE5MywgMTEsIDExOSwgNCwgMjMwLCAyNSwgMTEsIDExOSwgNCwgMjI2LCAxMDUsIDExLCAxMTksIDQsIDIyNCwgOTYsIAorICAgIDExLCAxMTksIDQsIDE1MywgMTEsIDExOSwgNCwgMjIyLCA5MSwgMTEsIDExOSwgNCwgMjE3LCAxNTIsIDExLCAxMTksIDQsIAorICAgIDcwLCAxMSwgMTE5LCA0LCAyMTQsIDEwNSwgMTEsIDExOSwgNCwgMjEyLCA5OCwgMTEsIDExOSwgNCwgMjExLCAxNzgsIDExLCAKKyAgICAxMTksIDQsIDIxMSwgMTE3LCAxMSwgMTE5LCA0LCAyMTAsIDE1OSwgMTEsIDIzLCAxMTksIDYsIDYxLCAxMSwgMjMsIDExOSwgCisgICAgNiwgMjUzLCAxNTgsIDExLCAyMywgMTE5LCA2LCAyNTEsIDY2LCAxMSwgMjMsIDExOSwgNiwgMjQ5LCA2MCwgMTEsIDIzLCAKKyAgICAxMTksIDYsIDc1LCAxMSwgMjMsIDExOSwgNiwgMjQ1LCA2LCAxMSwgMjMsIDExOSwgNiwgMjQzLCAyMDIsIDExLCAyMywgCisgICAgMTE5LCA2LCAyNDIsIDYwLCAxMSwgMjMsIDExOSwgNiwgNzMsIDExLCAyMywgMTE5LCA2LCAyMzUsIDE0NCwgMTEsIDIzLCAKKyAgICAxMTksIDYsIDIzNSwgMjMsIDExLCAyMywgMTE5LCA2LCAxNTYsIDExLCAyMywgMTE5LCA2LCAxOTMsIDExLCAyMywgMTE5LCAKKyAgICA2LCAyMzAsIDI1LCAxMSwgMjMsIDExOSwgNiwgNzYsIDExLCAyMywgMTE5LCA2LCAyMjYsIDEwNSwgMTEsIDIzLCAxMTksIDYsIAorICAgIDIyNCwgOTYsIDExLCAyMywgMTE5LCA2LCAxNTMsIDExLCAyMywgMTE5LCA2LCAyMjIsIDkxLCAxMSwgMjMsIDExOSwgNiwgCisgICAgMjE3LCAxNTIsIDExLCAyMywgMTE5LCA2LCA3MCwgMTEsIDIzLCAxMTksIDYsIDIxNCwgMTA1LCAxMSwgMjMsIDExOSwgNiwgCisgICAgMjEyLCA5OCwgMTEsIDIzLCAxMTksIDYsIDIxMSwgMTc4LCAxMSwgMjMsIDExOSwgNiwgMjExLCAxMTcsIDExLCAyMywgMTE5LCAKKyAgICA2LCAyMTAsIDE1OSwgMTEsIDIzLCAxMTksIDQsIDYxLCAxMSwgMjMsIDExOSwgNCwgMjUzLCAxNTgsIDExLCAyMywgMTE5LCAKKyAgICA0LCAyNTEsIDY2LCAxMSwgMjMsIDExOSwgNCwgMjQ5LCA2MCwgMTEsIDIzLCAxMTksIDQsIDc1LCAxMSwgMjMsIDExOSwgNCwgCisgICAgMjQ1LCA2LCAxMSwgMjMsIDExOSwgNCwgMjQzLCAyMDIsIDExLCAyMywgMTE5LCA0LCAyNDIsIDYwLCAxMSwgMjMsIDExOSwgCisgICAgNCwgNzMsIDExLCAyMywgMTE5LCA0LCAyMzUsIDE0NCwgMTEsIDIzLCAxMTksIDQsIDIzNSwgMjMsIDExLCAyMywgMTE5LCA0LCAKKyAgICAxNTYsIDExLCAyMywgMTE5LCA0LCAxOTMsIDExLCAyMywgMTE5LCA0LCAyMzAsIDI1LCAxMSwgMjMsIDExOSwgNCwgNzYsIAorICAgIDExLCAyMywgMTE5LCA0LCAyMjYsIDEwNSwgMTEsIDIzLCAxMTksIDQsIDIyNCwgOTYsIDExLCAyMywgMTE5LCA0LCAxNTMsIAorICAgIDExLCAyMywgMTE5LCA0LCAyMjIsIDkxLCAxMSwgMjMsIDExOSwgNCwgMjE3LCAxNTIsIDExLCAyMywgMTE5LCA0LCA3MCwgCisgICAgMTEsIDIzLCAxMTksIDQsIDIxNCwgMTA1LCAxMSwgMjMsIDExOSwgNCwgMjEyLCA5OCwgMTEsIDIzLCAxMTksIDQsIDIxMSwgCisgICAgMTc4LCAxMSwgMjMsIDExOSwgNCwgMjExLCAxMTcsIDExLCAyMywgMTE5LCA0LCAyMTAsIDE1OSwgMTEsIDEzMywgNiwgNjEsIAorICAgIDExLCAxMzMsIDYsIDI1MywgMTU4LCAxMSwgMTMzLCA2LCAyNDksIDYwLCAxMSwgMTMzLCA2LCA3NSwgMTEsIDEzMywgNiwgCisgICAgMjQ1LCA2LCAxMSwgMTMzLCA2LCAyNDMsIDIwMiwgMTEsIDEzMywgNiwgMjM1LCAxNDQsIDExLCAxMzMsIDYsIDIzNSwgMjMsIAorICAgIDExLCAxMzMsIDYsIDE1NiwgMTEsIDEzMywgNiwgMTkzLCAxMSwgMTMzLCA2LCAyMzAsIDI1LCAxMSwgMTMzLCA2LCA3NiwgCisgICAgMTEsIDEzMywgNiwgMjI2LCAxMDUsIDExLCAxMzMsIDYsIDIyNCwgOTYsIDExLCAxMzMsIDYsIDIyMiwgOTEsIDExLCAxMzMsIAorICAgIDYsIDIxNywgMTUyLCAxMSwgMTMzLCA2LCA3MCwgMTEsIDEzMywgNiwgMjE0LCAxMDUsIDExLCAxMzMsIDYsIDIxMiwgOTgsIAorICAgIDExLCAxMzMsIDYsIDIxMSwgMTc4LCAxMSwgMTMzLCA2LCAyMTEsIDExNywgMTEsIDEzMywgNCwgNjEsIDExLCAxMzMsIDQsIAorICAgIDI1MywgMTU4LCAxMSwgMTMzLCA0LCAyNTEsIDY2LCAxMSwgMTMzLCA0LCAyNDksIDYwLCAxMSwgMTMzLCA0LCA3NSwgMTEsIAorICAgIDEzMywgNCwgMjQ1LCA2LCAxMSwgMTMzLCA0LCAyNDMsIDIwMiwgMTEsIDEzMywgNCwgMjQyLCA2MCwgMTEsIDEzMywgNCwgCisgICAgNzMsIDExLCAxMzMsIDQsIDIzNSwgMTQ0LCAxMSwgMTMzLCA0LCAyMzUsIDIzLCAxMSwgMTMzLCA0LCAxNTYsIDExLCAxMzMsIAorICAgIDQsIDE5MywgMTEsIDEzMywgNCwgMjMwLCAyNSwgMTEsIDEzMywgNCwgNzYsIDExLCAxMzMsIDQsIDIyNiwgMTA1LCAxMSwgCisgICAgMTMzLCA0LCAyMjQsIDk2LCAxMSwgMTMzLCA0LCAxNTMsIDExLCAxMzMsIDQsIDIyMiwgOTEsIDExLCAxMzMsIDQsIDIxNywgCisgICAgMTUyLCAxMSwgMTMzLCA0LCA3MCwgMTEsIDEzMywgNCwgMjE0LCAxMDUsIDExLCAxMzMsIDQsIDIxMiwgOTgsIDExLCAxMzMsIAorICAgIDQsIDIxMSwgMTc4LCAxMSwgMTMzLCA0LCAyMTEsIDExNywgMTEsIDEzMywgNCwgMjEwLCAxNTksIDExLCAxMzksIDYsIDYxLCAKKyAgICAxMSwgMTM5LCA2LCAyNTMsIDE1OCwgMTEsIDEzOSwgNiwgMjQ5LCA2MCwgMTEsIDEzOSwgNiwgNzUsIDExLCAxMzksIDYsIAorICAgIDI0NSwgNiwgMTEsIDEzOSwgNiwgMjQzLCAyMDIsIDExLCAxMzksIDYsIDczLCAxMSwgMTM5LCA2LCAyMzUsIDE0NCwgMTEsIAorICAgIDEzOSwgNiwgMjM1LCAyMywgMTEsIDEzOSwgNiwgMTU2LCAxMSwgMTM5LCA2LCAxOTMsIDExLCAxMzksIDYsIDc2LCAxMSwgCisgICAgMTM5LCA2LCAyMjIsIDkxLCAxMSwgMTM5LCA2LCAyMTcsIDE1MiwgMTEsIDEzOSwgNiwgNzAsIDExLCAxMzksIDYsIDIxNCwgCisgICAgMTA1LCAxMSwgMTM5LCA2LCAyMTIsIDk4LCAxMSwgMTM5LCA2LCAyMTEsIDE3OCwgMTEsIDEzOSwgNiwgMjExLCAxMTcsIDExLCAKKyAgICAxMzksIDQsIDYxLCAxMSwgMTM5LCA0LCAyNTMsIDE1OCwgMTEsIDEzOSwgNCwgMjUxLCA2NiwgMTEsIDEzOSwgNCwgMjQ5LCAKKyAgICA2MCwgMTEsIDEzOSwgNCwgNzUsIDExLCAxMzksIDQsIDI0NSwgNiwgMTEsIDEzOSwgNCwgMjQzLCAyMDIsIDExLCAxMzksIDQsIAorICAgIDI0MiwgNjAsIDExLCAxMzksIDQsIDczLCAxMSwgMTM5LCA0LCAyMzUsIDE0NCwgMTEsIDEzOSwgNCwgMjM1LCAyMywgMTEsIAorICAgIDEzOSwgNCwgMTU2LCAxMSwgMTM5LCA0LCAxOTMsIDExLCAxMzksIDQsIDIzMCwgMjUsIDExLCAxMzksIDQsIDc2LCAxMSwgCisgICAgMTM5LCA0LCAyMjYsIDEwNSwgMTEsIDEzOSwgNCwgMjI0LCA5NiwgMTEsIDEzOSwgNCwgMTUzLCAxMSwgMTM5LCA0LCAyMjIsIAorICAgIDkxLCAxMSwgMTM5LCA0LCAyMTcsIDE1MiwgMTEsIDEzOSwgNCwgNzAsIDExLCAxMzksIDQsIDIxNCwgMTA1LCAxMSwgMTM5LCAKKyAgICA0LCAyMTIsIDk4LCAxMSwgMTM5LCA0LCAyMTEsIDE3OCwgMTEsIDEzOSwgNCwgMjExLCAxMTcsIDExLCAxMzksIDQsIDIxMCwgCisgICAgMTU5LCAxMSwgMjMsIDEzMywgNiwgNjEsIDExLCAyMywgMTMzLCA2LCAyNTMsIDE1OCwgMTEsIDIzLCAxMzMsIDYsIDI1MSwgCisgICAgNjYsIDExLCAyMywgMTMzLCA2LCAyNDksIDYwLCAxMSwgMjMsIDEzMywgNiwgNzUsIDExLCAyMywgMTMzLCA2LCAyNDUsIDYsIAorICAgIDExLCAyMywgMTMzLCA2LCAyNDMsIDIwMiwgMTEsIDIzLCAxMzMsIDYsIDI0MiwgNjAsIDExLCAyMywgMTMzLCA2LCA3MywgCisgICAgMTEsIDIzLCAxMzMsIDYsIDIzNSwgMTQ0LCAxMSwgMjMsIDEzMywgNiwgMjM1LCAyMywgMTEsIDIzLCAxMzMsIDYsIDE1NiwgCisgICAgMTEsIDIzLCAxMzMsIDYsIDE5MywgMTEsIDIzLCAxMzMsIDYsIDIzMCwgMjUsIDExLCAyMywgMTMzLCA2LCA3NiwgMTEsIDIzLCAKKyAgICAxMzMsIDYsIDIyNiwgMTA1LCAxMSwgMjMsIDEzMywgNiwgMjI0LCA5NiwgMTEsIDIzLCAxMzMsIDYsIDE1MywgMTEsIDIzLCAKKyAgICAxMzMsIDYsIDIyMiwgOTEsIDExLCAyMywgMTMzLCA2LCAyMTcsIDE1MiwgMTEsIDIzLCAxMzMsIDYsIDcwLCAxMSwgMjMsIAorICAgIDEzMywgNiwgMjE0LCAxMDUsIDExLCAyMywgMTMzLCA2LCAyMTIsIDk4LCAxMSwgMjMsIDEzMywgNiwgMjExLCAxNzgsIDExLCAKKyAgICAyMywgMTMzLCA2LCAyMTEsIDExNywgMTEsIDIzLCAxMzMsIDYsIDIxMCwgMTU5LCAxMSwgMjMsIDEzMywgNCwgNjEsIDExLCAKKyAgICAyMywgMTMzLCA0LCAyNTMsIDE1OCwgMTEsIDIzLCAxMzMsIDQsIDI1MSwgNjYsIDExLCAyMywgMTMzLCA0LCAyNDksIDYwLCAKKyAgICAxMSwgMjMsIDEzMywgNCwgNzUsIDExLCAyMywgMTMzLCA0LCAyNDUsIDYsIDExLCAyMywgMTMzLCA0LCAyNDMsIDIwMiwgMTEsIAorICAgIDIzLCAxMzMsIDQsIDI0MiwgNjAsIDExLCAyMywgMTMzLCA0LCA3MywgMTEsIDIzLCAxMzMsIDQsIDIzNSwgMTQ0LCAxMSwgCisgICAgMjMsIDEzMywgNCwgMjM1LCAyMywgMTEsIDIzLCAxMzMsIDQsIDE1NiwgMTEsIDIzLCAxMzMsIDQsIDE5MywgMTEsIDIzLCAKKyAgICAxMzMsIDQsIDIzMCwgMjUsIDExLCAyMywgMTMzLCA0LCA3NiwgMTEsIDIzLCAxMzMsIDQsIDIyNiwgMTA1LCAxMSwgMjMsIAorICAgIDEzMywgNCwgMjI0LCA5NiwgMTEsIDIzLCAxMzMsIDQsIDE1MywgMTEsIDIzLCAxMzMsIDQsIDIyMiwgOTEsIDExLCAyMywgCisgICAgMTMzLCA0LCAyMTcsIDE1MiwgMTEsIDIzLCAxMzMsIDQsIDcwLCAxMSwgMjMsIDEzMywgNCwgMjE0LCAxMDUsIDExLCAyMywgCisgICAgMTMzLCA0LCAyMTIsIDk4LCAxMSwgMjMsIDEzMywgNCwgMjExLCAxNzgsIDExLCAyMywgMTMzLCA0LCAyMTEsIDExNywgMTEsIAorICAgIDIzLCAxMzMsIDQsIDIxMCwgMTU5LCAxMSwgMzUsIDYsIDYxLCAxMSwgMzUsIDYsIDI1MywgMTU4LCAxMSwgMzUsIDYsIDI1MSwgCisgICAgNjYsIDExLCAzNSwgNiwgMjQ5LCA2MCwgMTEsIDM1LCA2LCA3NSwgMTEsIDM1LCA2LCAyNDUsIDYsIDExLCAzNSwgNiwgMjQzLCAKKyAgICAyMDIsIDExLCAzNSwgNiwgMjQyLCA2MCwgMTEsIDM1LCA2LCA3MywgMTEsIDM1LCA2LCAyMzUsIDE0NCwgMTEsIDM1LCA2LCAKKyAgICAyMzUsIDIzLCAxMSwgMzUsIDYsIDE1NiwgMTEsIDM1LCA2LCAxOTMsIDExLCAzNSwgNiwgMjMwLCAyNSwgMTEsIDM1LCA2LCAKKyAgICA3NiwgMTEsIDM1LCA2LCAyMjYsIDEwNSwgMTEsIDM1LCA2LCAyMjQsIDk2LCAxMSwgMzUsIDYsIDE1MywgMTEsIDM1LCA2LCAKKyAgICAyMjIsIDkxLCAxMSwgMzUsIDYsIDIxNywgMTUyLCAxMSwgMzUsIDYsIDcwLCAxMSwgMzUsIDYsIDIxNCwgMTA1LCAxMSwgMzUsIAorICAgIDYsIDIxMiwgOTgsIDExLCAzNSwgNiwgMjExLCAxNzgsIDExLCAzNSwgNiwgMjExLCAxMTcsIDExLCAzNSwgNiwgMjEwLCAKKyAgICAxNTksIDExLCAzNSwgNCwgNjEsIDExLCAzNSwgNCwgMjUzLCAxNTgsIDExLCAzNSwgNCwgMjUxLCA2NiwgMTEsIDM1LCA0LCAKKyAgICAyNDksIDYwLCAxMSwgMzUsIDQsIDc1LCAxMSwgMzUsIDQsIDI0NSwgNiwgMTEsIDM1LCA0LCAyNDMsIDIwMiwgMTEsIDM1LCAKKyAgICA0LCAyNDIsIDYwLCAxMSwgMzUsIDQsIDczLCAxMSwgMzUsIDQsIDIzNSwgMTQ0LCAxMSwgMzUsIDQsIDIzNSwgMjMsIDExLCAKKyAgICAzNSwgNCwgMTU2LCAxMSwgMzUsIDQsIDE5MywgMTEsIDM1LCA0LCAyMzAsIDI1LCAxMSwgMzUsIDQsIDc2LCAxMSwgMzUsIDQsIAorICAgIDIyNiwgMTA1LCAxMSwgMzUsIDQsIDIyNCwgOTYsIDExLCAzNSwgNCwgMTUzLCAxMSwgMzUsIDQsIDIyMiwgOTEsIDExLCAzNSwgCisgICAgNCwgMjE3LCAxNTIsIDExLCAzNSwgNCwgNzAsIDExLCAzNSwgNCwgMjE0LCAxMDUsIDExLCAzNSwgNCwgMjEyLCA5OCwgMTEsIAorICAgIDM1LCA0LCAyMTEsIDE3OCwgMTEsIDM1LCA0LCAyMTEsIDExNywgMTEsIDM1LCA0LCAyMTAsIDE1OSwgMTEsIDM1LCAyMywgNiwgCisgICAgNjEsIDExLCAzNSwgMjMsIDYsIDI1MywgMTU4LCAxMSwgMzUsIDIzLCA2LCAyNTEsIDY2LCAxMSwgMzUsIDIzLCA2LCAyNDksIAorICAgIDYwLCAxMSwgMzUsIDIzLCA2LCA3NSwgMTEsIDM1LCAyMywgNiwgMjQ1LCA2LCAxMSwgMzUsIDIzLCA2LCAyNDMsIDIwMiwgCisgICAgMTEsIDM1LCAyMywgNiwgMjQyLCA2MCwgMTEsIDM1LCAyMywgNiwgNzMsIDExLCAzNSwgMjMsIDYsIDIzNSwgMTQ0LCAxMSwgCisgICAgMzUsIDIzLCA2LCAyMzUsIDIzLCAxMSwgMzUsIDIzLCA2LCAxNTYsIDExLCAzNSwgMjMsIDYsIDE5MywgMTEsIDM1LCAyMywgCisgICAgNiwgMjMwLCAyNSwgMTEsIDM1LCAyMywgNiwgNzYsIDExLCAzNSwgMjMsIDYsIDIyNiwgMTA1LCAxMSwgMzUsIDIzLCA2LCAKKyAgICAyMjQsIDk2LCAxMSwgMzUsIDIzLCA2LCAxNTMsIDExLCAzNSwgMjMsIDYsIDIyMiwgOTEsIDExLCAzNSwgMjMsIDYsIDIxNywgCisgICAgMTUyLCAxMSwgMzUsIDIzLCA2LCA3MCwgMTEsIDM1LCAyMywgNiwgMjE0LCAxMDUsIDExLCAzNSwgMjMsIDYsIDIxMiwgOTgsIAorICAgIDExLCAzNSwgMjMsIDYsIDIxMSwgMTc4LCAxMSwgMzUsIDIzLCA2LCAyMTEsIDExNywgMTEsIDM1LCAyMywgNiwgMjEwLCAKKyAgICAxNTksIDExLCAzNSwgMjMsIDQsIDYxLCAxMSwgMzUsIDIzLCA0LCAyNTMsIDE1OCwgMTEsIDM1LCAyMywgNCwgMjUxLCA2NiwgCisgICAgMTEsIDM1LCAyMywgNCwgMjQ5LCA2MCwgMTEsIDM1LCAyMywgNCwgNzUsIDExLCAzNSwgMjMsIDQsIDI0NSwgNiwgMTEsIDM1LCAKKyAgICAyMywgNCwgMjQzLCAyMDIsIDExLCAzNSwgMjMsIDQsIDI0MiwgNjAsIDExLCAzNSwgMjMsIDQsIDczLCAxMSwgMzUsIDIzLCAKKyAgICA0LCAyMzUsIDE0NCwgMTEsIDM1LCAyMywgNCwgMjM1LCAyMywgMTEsIDM1LCAyMywgNCwgMTU2LCAxMSwgMzUsIDIzLCA0LCAKKyAgICAxOTMsIDExLCAzNSwgMjMsIDQsIDIzMCwgMjUsIDExLCAzNSwgMjMsIDQsIDc2LCAxMSwgMzUsIDIzLCA0LCAyMjYsIDEwNSwgCisgICAgMTEsIDM1LCAyMywgNCwgMjI0LCA5NiwgMTEsIDM1LCAyMywgNCwgMTUzLCAxMSwgMzUsIDIzLCA0LCAyMjIsIDkxLCAxMSwgCisgICAgMzUsIDIzLCA0LCAyMTcsIDE1MiwgMTEsIDM1LCAyMywgNCwgNzAsIDExLCAzNSwgMjMsIDQsIDIxNCwgMTA1LCAxMSwgMzUsIAorICAgIDIzLCA0LCAyMTIsIDk4LCAxMSwgMzUsIDIzLCA0LCAyMTEsIDE3OCwgMTEsIDM1LCAyMywgNCwgMjExLCAxMTcsIDExLCAzNSwgCisgICAgMjMsIDQsIDIxMCwgMTU5LCAxMSwgMzUsIDMyLCA2LCA2MSwgMTEsIDM1LCAzMiwgNiwgMjUzLCAxNTgsIDExLCAzNSwgMzIsIAorICAgIDYsIDI1MSwgNjYsIDExLCAzNSwgMzIsIDYsIDI0OSwgNjAsIDExLCAzNSwgMzIsIDYsIDc1LCAxMSwgMzUsIDMyLCA2LCAKKyAgICAyNDUsIDYsIDExLCAzNSwgMzIsIDYsIDI0MywgMjAyLCAxMSwgMzUsIDMyLCA2LCAyNDIsIDYwLCAxMSwgMzUsIDMyLCA2LCAKKyAgICA3MywgMTEsIDM1LCAzMiwgNiwgMjM1LCAxNDQsIDExLCAzNSwgMzIsIDYsIDIzNSwgMjMsIDExLCAzNSwgMzIsIDYsIDE1NiwgCisgICAgMTEsIDM1LCAzMiwgNiwgMTkzLCAxMSwgMzUsIDMyLCA2LCAyMzAsIDI1LCAxMSwgMzUsIDMyLCA2LCA3NiwgMTEsIDM1LCAKKyAgICAzMiwgNiwgMjI2LCAxMDUsIDExLCAzNSwgMzIsIDYsIDIyNCwgOTYsIDExLCAzNSwgMzIsIDYsIDE1MywgMTEsIDM1LCAzMiwgCisgICAgNiwgMjIyLCA5MSwgMTEsIDM1LCAzMiwgNiwgMjE3LCAxNTIsIDExLCAzNSwgMzIsIDYsIDcwLCAxMSwgMzUsIDMyLCA2LCAKKyAgICAyMTQsIDEwNSwgMTEsIDM1LCAzMiwgNiwgMjEyLCA5OCwgMTEsIDM1LCAzMiwgNiwgMjExLCAxNzgsIDExLCAzNSwgMzIsIDYsIAorICAgIDIxMSwgMTE3LCAxMSwgMzUsIDMyLCA2LCAyMTAsIDE1OSwgMTEsIDM1LCAzMiwgNCwgNjEsIDExLCAzNSwgMzIsIDQsIDI1MywgCisgICAgMTU4LCAxMSwgMzUsIDMyLCA0LCAyNTEsIDY2LCAxMSwgMzUsIDMyLCA0LCAyNDksIDYwLCAxMSwgMzUsIDMyLCA0LCA3NSwgCisgICAgMTEsIDM1LCAzMiwgNCwgMjQ1LCA2LCAxMSwgMzUsIDMyLCA0LCAyNDMsIDIwMiwgMTEsIDM1LCAzMiwgNCwgMjQyLCA2MCwgCisgICAgMTEsIDM1LCAzMiwgNCwgNzMsIDExLCAzNSwgMzIsIDQsIDIzNSwgMTQ0LCAxMSwgMzUsIDMyLCA0LCAyMzUsIDIzLCAxMSwgCisgICAgMzUsIDMyLCA0LCAxNTYsIDExLCAzNSwgMzIsIDQsIDE5MywgMTEsIDM1LCAzMiwgNCwgMjMwLCAyNSwgMTEsIDM1LCAzMiwgCisgICAgNCwgNzYsIDExLCAzNSwgMzIsIDQsIDIyNiwgMTA1LCAxMSwgMzUsIDMyLCA0LCAyMjQsIDk2LCAxMSwgMzUsIDMyLCA0LCAKKyAgICAxNTMsIDExLCAzNSwgMzIsIDQsIDIyMiwgOTEsIDExLCAzNSwgMzIsIDQsIDIxNywgMTUyLCAxMSwgMzUsIDMyLCA0LCA3MCwgCisgICAgMTEsIDM1LCAzMiwgNCwgMjE0LCAxMDUsIDExLCAzNSwgMzIsIDQsIDIxMiwgOTgsIDExLCAzNSwgMzIsIDQsIDIxMSwgMTc4LCAKKyAgICAxMSwgMzUsIDMyLCA0LCAyMTEsIDExNywgMTEsIDM1LCAzMiwgNCwgMjEwLCAxNTksIDExLCAzNSwgMjMsIDMyLCA2LCA2MSwgCisgICAgMTEsIDM1LCAyMywgMzIsIDYsIDI1MywgMTU4LCAxMSwgMzUsIDIzLCAzMiwgNiwgMjUxLCA2NiwgMTEsIDM1LCAyMywgMzIsIAorICAgIDYsIDI0OSwgNjAsIDExLCAzNSwgMjMsIDMyLCA2LCA3NSwgMTEsIDM1LCAyMywgMzIsIDYsIDI0NSwgNiwgMTEsIDM1LCAyMywgCisgICAgMzIsIDYsIDI0MywgMjAyLCAxMSwgMzUsIDIzLCAzMiwgNiwgMjQyLCA2MCwgMTEsIDM1LCAyMywgMzIsIDYsIDczLCAxMSwgCisgICAgMzUsIDIzLCAzMiwgNiwgMjM1LCAxNDQsIDExLCAzNSwgMjMsIDMyLCA2LCAyMzUsIDIzLCAxMSwgMzUsIDIzLCAzMiwgNiwgCisgICAgMTU2LCAxMSwgMzUsIDIzLCAzMiwgNiwgMTkzLCAxMSwgMzUsIDIzLCAzMiwgNiwgMjMwLCAyNSwgMTEsIDM1LCAyMywgMzIsIAorICAgIDYsIDc2LCAxMSwgMzUsIDIzLCAzMiwgNiwgMjI2LCAxMDUsIDExLCAzNSwgMjMsIDMyLCA2LCAyMjQsIDk2LCAxMSwgMzUsIAorICAgIDIzLCAzMiwgNiwgMTUzLCAxMSwgMzUsIDIzLCAzMiwgNiwgMjIyLCA5MSwgMTEsIDM1LCAyMywgMzIsIDYsIDIxNywgMTUyLCAKKyAgICAxMSwgMzUsIDIzLCAzMiwgNiwgNzAsIDExLCAzNSwgMjMsIDMyLCA2LCAyMTQsIDEwNSwgMTEsIDM1LCAyMywgMzIsIDYsIAorICAgIDIxMiwgOTgsIDExLCAzNSwgMjMsIDMyLCA2LCAyMTEsIDE3OCwgMTEsIDM1LCAyMywgMzIsIDYsIDIxMSwgMTE3LCAxMSwgCisgICAgMzUsIDIzLCAzMiwgNiwgMjEwLCAxNTksIDExLCAzNSwgMjMsIDMyLCA0LCA2MSwgMTEsIDM1LCAyMywgMzIsIDQsIDI1MywgCisgICAgMTU4LCAxMSwgMzUsIDIzLCAzMiwgNCwgMjUxLCA2NiwgMTEsIDM1LCAyMywgMzIsIDQsIDI0OSwgNjAsIDExLCAzNSwgMjMsIAorICAgIDMyLCA0LCA3NSwgMTEsIDM1LCAyMywgMzIsIDQsIDI0NSwgNiwgMTEsIDM1LCAyMywgMzIsIDQsIDI0MywgMjAyLCAxMSwgCisgICAgMzUsIDIzLCAzMiwgNCwgMjQyLCA2MCwgMTEsIDM1LCAyMywgMzIsIDQsIDczLCAxMSwgMzUsIDIzLCAzMiwgNCwgMjM1LCAKKyAgICAxNDQsIDExLCAzNSwgMjMsIDMyLCA0LCAyMzUsIDIzLCAxMSwgMzUsIDIzLCAzMiwgNCwgMTU2LCAxMSwgMzUsIDIzLCAzMiwgCisgICAgNCwgMTkzLCAxMSwgMzUsIDIzLCAzMiwgNCwgMjMwLCAyNSwgMTEsIDM1LCAyMywgMzIsIDQsIDc2LCAxMSwgMzUsIDIzLCAKKyAgICAzMiwgNCwgMjI2LCAxMDUsIDExLCAzNSwgMjMsIDMyLCA0LCAyMjQsIDk2LCAxMSwgMzUsIDIzLCAzMiwgNCwgMTUzLCAxMSwgCisgICAgMzUsIDIzLCAzMiwgNCwgMjIyLCA5MSwgMTEsIDM1LCAyMywgMzIsIDQsIDIxNywgMTUyLCAxMSwgMzUsIDIzLCAzMiwgNCwgCisgICAgNzAsIDExLCAzNSwgMjMsIDMyLCA0LCAyMTQsIDEwNSwgMTEsIDM1LCAyMywgMzIsIDQsIDIxMiwgOTgsIDExLCAzNSwgMjMsIAorICAgIDMyLCA0LCAyMTEsIDE3OCwgMTEsIDM1LCAyMywgMzIsIDQsIDIxMSwgMTE3LCAxMSwgMzUsIDIzLCAzMiwgNCwgMjEwLCAKKyAgICAxNTksIDExLCAyMzAsIDEzOCwgNiwgNjEsIDExLCAyMzAsIDEzOCwgNiwgMjUzLCAxNTgsIDExLCAyMzAsIDEzOCwgNiwgCisgICAgMjUxLCA2NiwgMTEsIDIzMCwgMTM4LCA2LCAyNDksIDYwLCAxMSwgMjMwLCAxMzgsIDYsIDc1LCAxMSwgMjMwLCAxMzgsIDYsIAorICAgIDI0NSwgNiwgMTEsIDIzMCwgMTM4LCA2LCAyNDMsIDIwMiwgMTEsIDIzMCwgMTM4LCA2LCAyNDIsIDYwLCAxMSwgMjMwLCAKKyAgICAxMzgsIDYsIDczLCAxMSwgMjMwLCAxMzgsIDYsIDIzNSwgMTQ0LCAxMSwgMjMwLCAxMzgsIDYsIDIzNSwgMjMsIDExLCAyMzAsIAorICAgIDEzOCwgNiwgMTU2LCAxMSwgMjMwLCAxMzgsIDYsIDE5MywgMTEsIDIzMCwgMTM4LCA2LCAyMzAsIDI1LCAxMSwgMjMwLCAKKyAgICAxMzgsIDYsIDc2LCAxMSwgMjMwLCAxMzgsIDYsIDIyNiwgMTA1LCAxMSwgMjMwLCAxMzgsIDYsIDIyNCwgOTYsIDExLCAyMzAsIAorICAgIDEzOCwgNiwgMTUzLCAxMSwgMjMwLCAxMzgsIDYsIDIyMiwgOTEsIDExLCAyMzAsIDEzOCwgNiwgMjE3LCAxNTIsIDExLCAKKyAgICAyMzAsIDEzOCwgNiwgNzAsIDExLCAyMzAsIDEzOCwgNiwgMjE0LCAxMDUsIDExLCAyMzAsIDEzOCwgNiwgMjEyLCA5OCwgMTEsIAorICAgIDIzMCwgMTM4LCA2LCAyMTEsIDE3OCwgMTEsIDIzMCwgMTM4LCA2LCAyMTEsIDExNywgMTEsIDIzMCwgMTM4LCA2LCAyMTAsIAorICAgIDE1OSwgMTEsIDIzMCwgMTM4LCA0LCA2MSwgMTEsIDIzMCwgMTM4LCA0LCAyNTMsIDE1OCwgMTEsIDIzMCwgMTM4LCA0LCAKKyAgICAyNTEsIDY2LCAxMSwgMjMwLCAxMzgsIDQsIDI0OSwgNjAsIDExLCAyMzAsIDEzOCwgNCwgNzUsIDExLCAyMzAsIDEzOCwgNCwgCisgICAgMjQ1LCA2LCAxMSwgMjMwLCAxMzgsIDQsIDI0MywgMjAyLCAxMSwgMjMwLCAxMzgsIDQsIDI0MiwgNjAsIDExLCAyMzAsIAorICAgIDEzOCwgNCwgNzMsIDExLCAyMzAsIDEzOCwgNCwgMjM1LCAxNDQsIDExLCAyMzAsIDEzOCwgNCwgMjM1LCAyMywgMTEsIDIzMCwgCisgICAgMTM4LCA0LCAxNTYsIDExLCAyMzAsIDEzOCwgNCwgMTkzLCAxMSwgMjMwLCAxMzgsIDQsIDIzMCwgMjUsIDExLCAyMzAsIAorICAgIDEzOCwgNCwgNzYsIDExLCAyMzAsIDEzOCwgNCwgMjI2LCAxMDUsIDExLCAyMzAsIDEzOCwgNCwgMjI0LCA5NiwgMTEsIDIzMCwgCisgICAgMTM4LCA0LCAxNTMsIDExLCAyMzAsIDEzOCwgNCwgMjIyLCA5MSwgMTEsIDIzMCwgMTM4LCA0LCAyMTcsIDE1MiwgMTEsIAorICAgIDIzMCwgMTM4LCA0LCA3MCwgMTEsIDIzMCwgMTM4LCA0LCAyMTQsIDEwNSwgMTEsIDIzMCwgMTM4LCA0LCAyMTIsIDk4LCAxMSwgCisgICAgMjMwLCAxMzgsIDQsIDIxMSwgMTc4LCAxMSwgMjMwLCAxMzgsIDQsIDIxMSwgMTE3LCAxMSwgMjMwLCAxMzgsIDQsIDIxMCwgCisgICAgMTU5LCAxMSwgMzIsIDQsIDI0NywgMTE5LCA3MywgMTEsIDMyLCA0LCAyNDcsIDExOSwgMjM1LCAxNDQsIDExLCAyMywgNiwgCisgICAgMjU0LCAxNDMsIDExLCAyMywgNiwgMjUyLCAyNiwgMTEsIDIzLCA2LCAyNDMsIDEwNywgMTEsIDIzLCA2LCAyNDgsIDU0LCAKKyAgICAxMSwgMjMsIDYsIDI0NSwgMTAwLCAxMSwgMjMsIDYsIDIxMCwgODUsIDExLCAyMywgNiwgMjQ1LCA2MywgMTEsIDIzLCA2LCAKKyAgICAyMTYsIDE3OSwgMTEsIDIzLCA2LCAyMzUsIDE4NSwgMTEsIDIzLCA2LCAyMzQsIDIyMiwgMTEsIDIzLCA2LCAyMzMsIDk4LCAKKyAgICAxMSwgMjMsIDYsIDIzMCwgMTAyLCAxMSwgMjMsIDYsIDIyNywgMjM3LCAxMSwgMjMsIDYsIDIxMSwgMTU3LCAxMSwgMjMsIDYsIAorICAgIDIyNiwgMTk5LCAxMSwgMjMsIDYsIDIyNSwgMTA4LCAxMSwgMjMsIDYsIDIyMywgMzcsIDExLCAyMywgNiwgMjE2LCAxODAsIAorICAgIDg3LCAxMSwgMjMsIDYsIDIxOSwgMTc3LCAxMSwgMjMsIDYsIDIxNywgNDEsIDExLCAyMywgNiwgMjE0LCAxNTcsIDExLCAyMywgCisgICAgNiwgMjI1LCAxMzMsIDExLCAyMywgNiwgMjUwLCAxMTAsIDExLCAyMywgNiwgMjI0LCAxNjEsIDExLCAyMywgNiwgMjI2LCAKKyAgICAyMDEsIDExLCAyMywgMjI5LCAyMjEsIDExLCAyMywgNCwgMjU0LCAxNDMsIDExLCAyMywgNCwgMjUyLCAyNiwgMTEsIDIzLCAKKyAgICA0LCAyNDMsIDEwNywgMTEsIDIzLCA0LCAyNDgsIDU0LCAxMSwgMjMsIDQsIDI0NSwgMTAwLCAxMSwgMjMsIDQsIDIxMCwgODUsIAorICAgIDExLCAyMywgNCwgMjQ1LCA2MywgMTEsIDIzLCA0LCAyMTYsIDE3OSwgMTEsIDIzLCA0LCAyMzUsIDE4NSwgMTEsIDIzLCA0LCAKKyAgICAyMzQsIDIyMiwgMTEsIDIzLCA0LCAyMzMsIDk4LCAxMSwgMjMsIDQsIDIzMCwgMTAyLCAxMSwgMjMsIDQsIDIyNywgMjM3LCAKKyAgICAxMSwgMjMsIDQsIDIxMSwgMTU3LCAxMSwgMjMsIDQsIDIyNiwgMTk5LCAxMSwgMjMsIDQsIDIyNSwgMTA4LCAxMSwgMjMsIDQsIAorICAgIDIyMywgMzcsIDExLCAyMywgNCwgNDAsIDIxOSwgMTc3LCAxMSwgMjMsIDQsIDIxOSwgMTc3LCAxMSwgMjMsIDQsIDIxNywgCisgICAgNDEsIDExLCAyMywgNCwgMjE0LCAxNTcsIDExLCAyMywgNCwgMjI1LCAxMzMsIDExLCAyMywgNCwgMjUwLCAxMTAsIDExLCAKKyAgICAyMywgNCwgMjI0LCAxNjEsIDExLCAyMywgNCwgMjI2LCAyMDEsIDExLCAyMywgMjI1LCAyNTMsIDI0NywgMjMzLCAxMSwgMjMsIAorICAgIDI0NSwgMTAxLCA4NywgMTEsIDIzLCAyMTYsIDE4MCwgODcsIDExLCAyMywgMjM0LCAyMjMsIDg3LCAxMSwgMjMsIDIyNSwgCisgICAgMTM0LCA4NywgMTEsIDIzLCAyMjMsIDM4LCA4NywgMTEsIDIzLCAyMjUsIDEwOSwgODcsIDExLCAzMiwgNiwgMjU0LCAxNDMsIAorICAgIDExLCAzMiwgNiwgMjUyLCAyNiwgMTEsIDMyLCA2LCAyNDMsIDEwNywgMTEsIDMyLCA2LCAyNDgsIDU0LCAxMSwgMzIsIDYsIAorICAgIDI0NSwgMTAwLCAxMSwgMzIsIDYsIDIxMCwgODUsIDExLCAzMiwgNiwgMjQ1LCA2MywgMTEsIDMyLCA2LCAyMTYsIDE3OSwgCisgICAgMTEsIDMyLCA2LCAyMzUsIDE4NSwgMTEsIDMyLCA2LCAyMzQsIDIyMiwgMTEsIDMyLCA2LCAyMzMsIDk4LCAxMSwgMzIsIDYsIAorICAgIDIzMCwgMTAyLCAxMSwgMzIsIDYsIDIyNywgMjM3LCAxMSwgMzIsIDYsIDIxMSwgMTU3LCAxMSwgMzIsIDYsIDIyNiwgMTk5LCAKKyAgICAxMSwgMzIsIDYsIDIyNSwgMTA4LCAxMSwgMzIsIDYsIDIyMywgMzcsIDExLCAzMiwgNiwgMjE2LCAxODAsIDg3LCAxMSwgMzIsIAorICAgIDYsIDIxOSwgMTc3LCAxMSwgMzIsIDYsIDIxNywgNDEsIDExLCAzMiwgNiwgMjE0LCAxNTcsIDExLCAzMiwgNiwgMjI1LCAKKyAgICAxMzMsIDExLCAzMiwgNiwgMjUwLCAxMTAsIDExLCAzMiwgNiwgMjI0LCAxNjEsIDExLCAzMiwgNiwgMjI2LCAyMDEsIDExLCAKKyAgICAzMiwgMjI5LCAyMjEsIDExLCAzMiwgNCwgMjU0LCAxNDMsIDExLCAzMiwgNCwgMjUyLCAyNiwgMTEsIDMyLCA0LCAyNDMsIAorICAgIDEwNywgMTEsIDMyLCA0LCAyNDgsIDU0LCAxMSwgMzIsIDQsIDI0NSwgMTAwLCAxMSwgMzIsIDQsIDIxMCwgODUsIDExLCAzMiwgCisgICAgNCwgMjQ1LCA2MywgMTEsIDMyLCA0LCAyMTYsIDE3OSwgMTEsIDMyLCA0LCAyMzUsIDE4NSwgMTEsIDMyLCA0LCAyMzQsIAorICAgIDIyMiwgMTEsIDMyLCA0LCAyMzMsIDk4LCAxMSwgMzIsIDQsIDIzMCwgMTAyLCAxMSwgMzIsIDQsIDIyNywgMjM3LCAxMSwgCisgICAgMzIsIDQsIDIxMSwgMTU3LCAxMSwgMzIsIDQsIDIyNiwgMTk5LCAxMSwgMzIsIDQsIDIyNSwgMTA4LCAxMSwgMzIsIDQsIAorICAgIDIyMywgMzcsIDExLCAzMiwgNCwgNDAsIDIxOSwgMTc3LCAxMSwgMzIsIDQsIDIxOSwgMTc3LCAxMSwgMzIsIDQsIDIxNywgCisgICAgNDEsIDExLCAzMiwgNCwgMjE0LCAxNTcsIDExLCAzMiwgNCwgMjI1LCAxMzMsIDExLCAzMiwgNCwgMjUwLCAxMTAsIDExLCAKKyAgICAzMiwgNCwgMjI0LCAxNjEsIDExLCAzMiwgNCwgMjI2LCAyMDEsIDExLCAzMiwgMjI1LCAyNTMsIDI0NywgMjMzLCAxMSwgMzIsIAorICAgIDI0NSwgMTAxLCA4NywgMTEsIDMyLCAyMTYsIDE4MCwgODcsIDExLCAzMiwgMjM0LCAyMjMsIDg3LCAxMSwgMzIsIDIyNSwgCisgICAgMTM0LCA4NywgMTEsIDMyLCAyMjMsIDM4LCA4NywgMTEsIDMyLCAyMjUsIDEwOSwgODcsIDExLCAyMywgMzIsIDYsIDI1NCwgCisgICAgMTQzLCAxMSwgMjMsIDMyLCA2LCAyNTIsIDI2LCAxMSwgMjMsIDMyLCA2LCAyNDMsIDEwNywgMTEsIDIzLCAzMiwgNiwgMjQ4LCAKKyAgICA1NCwgMTEsIDIzLCAzMiwgNiwgMjQ1LCAxMDAsIDExLCAyMywgMzIsIDYsIDIxMCwgODUsIDExLCAyMywgMzIsIDYsIDI0NSwgCisgICAgNjMsIDExLCAyMywgMzIsIDYsIDIxNiwgMTc5LCAxMSwgMjMsIDMyLCA2LCAyMzUsIDE4NSwgMTEsIDIzLCAzMiwgNiwgMjM0LCAKKyAgICAyMjIsIDExLCAyMywgMzIsIDYsIDIzMywgOTgsIDExLCAyMywgMzIsIDYsIDIzMCwgMTAyLCAxMSwgMjMsIDMyLCA2LCAyMjcsIAorICAgIDIzNywgMTEsIDIzLCAzMiwgNiwgMjExLCAxNTcsIDExLCAyMywgMzIsIDYsIDIyNiwgMTk5LCAxMSwgMjMsIDMyLCA2LCAKKyAgICAyMjUsIDEwOCwgMTEsIDIzLCAzMiwgNiwgMjIzLCAzNywgMTEsIDIzLCAzMiwgNiwgMjE2LCAxODAsIDg3LCAxMSwgMjMsIAorICAgIDMyLCA2LCAyMTksIDE3NywgMTEsIDIzLCAzMiwgNiwgMjE3LCA0MSwgMTEsIDIzLCAzMiwgNiwgMjE0LCAxNTcsIDExLCAyMywgCisgICAgMzIsIDYsIDIyNSwgMTMzLCAxMSwgMjMsIDMyLCA2LCAyNTAsIDExMCwgMTEsIDIzLCAzMiwgNiwgMjI0LCAxNjEsIDExLCAKKyAgICAyMywgMzIsIDYsIDIyNiwgMjAxLCAxMSwgMjMsIDMyLCAyMjksIDIyMSwgMTEsIDIzLCAzMiwgNCwgMjU0LCAxNDMsIDExLCAKKyAgICAyMywgMzIsIDQsIDI1MiwgMjYsIDExLCAyMywgMzIsIDQsIDI0MywgMTA3LCAxMSwgMjMsIDMyLCA0LCAyNDgsIDU0LCAxMSwgCisgICAgMjMsIDMyLCA0LCAyNDUsIDEwMCwgMTEsIDIzLCAzMiwgNCwgMjEwLCA4NSwgMTEsIDIzLCAzMiwgNCwgMjQ1LCA2MywgMTEsIAorICAgIDIzLCAzMiwgNCwgMjE2LCAxNzksIDExLCAyMywgMzIsIDQsIDIzNSwgMTg1LCAxMSwgMjMsIDMyLCA0LCAyMzQsIDIyMiwgCisgICAgMTEsIDIzLCAzMiwgNCwgMjMzLCA5OCwgMTEsIDIzLCAzMiwgNCwgMjMwLCAxMDIsIDExLCAyMywgMzIsIDQsIDIyNywgMjM3LCAKKyAgICAxMSwgMjMsIDMyLCA0LCAyMTEsIDE1NywgMTEsIDIzLCAzMiwgNCwgMjI2LCAxOTksIDExLCAyMywgMzIsIDQsIDIyNSwgCisgICAgMTA4LCAxMSwgMjMsIDMyLCA0LCAyMjMsIDM3LCAxMSwgMjMsIDMyLCA0LCA0MCwgMjE5LCAxNzcsIDExLCAyMywgMzIsIDQsIAorICAgIDIxOSwgMTc3LCAxMSwgMjMsIDMyLCA0LCAyMTcsIDQxLCAxMSwgMjMsIDMyLCA0LCAyMTQsIDE1NywgMTEsIDIzLCAzMiwgNCwgCisgICAgMjI1LCAxMzMsIDExLCAyMywgMzIsIDQsIDI1MCwgMTEwLCAxMSwgMjMsIDMyLCA0LCAyMjQsIDE2MSwgMTEsIDIzLCAzMiwgCisgICAgNCwgMjI2LCAyMDEsIDExLCAyMywgMzIsIDIyNSwgMjUzLCAyNDcsIDIzMywgMTEsIDIzLCAzMiwgMjQ1LCAxMDEsIDg3LCAKKyAgICAxMSwgMjMsIDMyLCAyMTYsIDE4MCwgODcsIDExLCAyMywgMzIsIDIzNCwgMjIzLCA4NywgMTEsIDIzLCAzMiwgMjI1LCAxMzQsIAorICAgIDg3LCAxMSwgMjMsIDMyLCAyMjMsIDM4LCA4NywgMTEsIDIzLCAzMiwgMjI1LCAxMDksIDg3LCAxMSwgMzUsIDIzLCA2LCAKKyAgICAyNTQsIDE0MywgMTEsIDM1LCAyMywgNiwgMjUyLCAyNiwgMTEsIDM1LCAyMywgNiwgMjQzLCAxMDcsIDExLCAzNSwgMjMsIDYsIAorICAgIDI0OCwgNTQsIDExLCAzNSwgMjMsIDYsIDI0NSwgMTAwLCAxMSwgMzUsIDIzLCA2LCAyMTAsIDg1LCAxMSwgMzUsIDIzLCA2LCAKKyAgICAyNDUsIDYzLCAxMSwgMzUsIDIzLCA2LCAyMTYsIDE3OSwgMTEsIDM1LCAyMywgNiwgMjM1LCAxODUsIDExLCAzNSwgMjMsIDYsIAorICAgIDIzNCwgMjIyLCAxMSwgMzUsIDIzLCA2LCAyMzMsIDk4LCAxMSwgMzUsIDIzLCA2LCAyMzAsIDEwMiwgMTEsIDM1LCAyMywgNiwgCisgICAgMjI3LCAyMzcsIDExLCAzNSwgMjMsIDYsIDIxMSwgMTU3LCAxMSwgMzUsIDIzLCA2LCAyMjYsIDE5OSwgMTEsIDM1LCAyMywgCisgICAgNiwgMjI1LCAxMDgsIDExLCAzNSwgMjMsIDYsIDIyMywgMzcsIDExLCAzNSwgMjMsIDYsIDIxNiwgMTgwLCA4NywgMTEsIDM1LCAKKyAgICAyMywgNiwgMjE5LCAxNzcsIDExLCAzNSwgMjMsIDYsIDIxNywgNDEsIDExLCAzNSwgMjMsIDYsIDIxNCwgMTU3LCAxMSwgMzUsIAorICAgIDIzLCA2LCAyMjUsIDEzMywgMTEsIDM1LCAyMywgNiwgMjUwLCAxMTAsIDExLCAzNSwgMjMsIDYsIDIyNCwgMTYxLCAxMSwgCisgICAgMzUsIDIzLCA2LCAyMjYsIDIwMSwgMTEsIDM1LCAyMywgMjI5LCAyMjEsIDExLCAzNSwgMjMsIDQsIDI1NCwgMTQzLCAxMSwgCisgICAgMzUsIDIzLCA0LCAyNTIsIDI2LCAxMSwgMzUsIDIzLCA0LCAyNDMsIDEwNywgMTEsIDM1LCAyMywgNCwgMjQ4LCA1NCwgMTEsIAorICAgIDM1LCAyMywgNCwgMjQ1LCAxMDAsIDExLCAzNSwgMjMsIDQsIDIxMCwgODUsIDExLCAzNSwgMjMsIDQsIDI0NSwgNjMsIDExLCAKKyAgICAzNSwgMjMsIDQsIDIxNiwgMTc5LCAxMSwgMzUsIDIzLCA0LCAyMzUsIDE4NSwgMTEsIDM1LCAyMywgNCwgMjM0LCAyMjIsIAorICAgIDExLCAzNSwgMjMsIDQsIDIzMywgOTgsIDExLCAzNSwgMjMsIDQsIDIzMCwgMTAyLCAxMSwgMzUsIDIzLCA0LCAyMjcsIDIzNywgCisgICAgMTEsIDM1LCAyMywgNCwgMjExLCAxNTcsIDExLCAzNSwgMjMsIDQsIDIyNiwgMTk5LCAxMSwgMzUsIDIzLCA0LCAyMjUsIAorICAgIDEwOCwgMTEsIDM1LCAyMywgNCwgMjIzLCAzNywgMTEsIDM1LCAyMywgNCwgNDAsIDIxOSwgMTc3LCAxMSwgMzUsIDIzLCA0LCAKKyAgICAyMTksIDE3NywgMTEsIDM1LCAyMywgNCwgMjE3LCA0MSwgMTEsIDM1LCAyMywgNCwgMjE0LCAxNTcsIDExLCAzNSwgMjMsIDQsIAorICAgIDIyNSwgMTMzLCAxMSwgMzUsIDIzLCA0LCAyNTAsIDExMCwgMTEsIDM1LCAyMywgNCwgMjI0LCAxNjEsIDExLCAzNSwgMjMsIAorICAgIDQsIDIyNiwgMjAxLCAxMSwgMzUsIDIzLCAyMjUsIDI1MywgMjQ3LCAyMzMsIDExLCAzNSwgMjMsIDI0NSwgMTAxLCA4NywgCisgICAgMTEsIDM1LCAyMywgMjE2LCAxODAsIDg3LCAxMSwgMzUsIDIzLCAyMzQsIDIyMywgODcsIDExLCAzNSwgMjMsIDIyNSwgMTM0LCAKKyAgICA4NywgMTEsIDM1LCAyMywgMjIzLCAzOCwgODcsIDExLCAzNSwgMjMsIDIyNSwgMTA5LCA4NywgMTEsIDM1LCAyMywgMzIsIDYsIAorICAgIDI1NCwgMTQzLCAxMSwgMzUsIDIzLCAzMiwgNiwgMjUyLCAyNiwgMTEsIDM1LCAyMywgMzIsIDYsIDI0MywgMTA3LCAxMSwgCisgICAgMzUsIDIzLCAzMiwgNiwgMjQ4LCA1NCwgMTEsIDM1LCAyMywgMzIsIDYsIDI0NSwgMTAwLCAxMSwgMzUsIDIzLCAzMiwgNiwgCisgICAgMjEwLCA4NSwgMTEsIDM1LCAyMywgMzIsIDYsIDI0NSwgNjMsIDExLCAzNSwgMjMsIDMyLCA2LCAyMTYsIDE3OSwgMTEsIDM1LCAKKyAgICAyMywgMzIsIDYsIDIzNSwgMTg1LCAxMSwgMzUsIDIzLCAzMiwgNiwgMjM0LCAyMjIsIDExLCAzNSwgMjMsIDMyLCA2LCAyMzMsIAorICAgIDk4LCAxMSwgMzUsIDIzLCAzMiwgNiwgMjMwLCAxMDIsIDExLCAzNSwgMjMsIDMyLCA2LCAyMjcsIDIzNywgMTEsIDM1LCAyMywgCisgICAgMzIsIDYsIDIxMSwgMTU3LCAxMSwgMzUsIDIzLCAzMiwgNiwgMjI2LCAxOTksIDExLCAzNSwgMjMsIDMyLCA2LCAyMjUsIAorICAgIDEwOCwgMTEsIDM1LCAyMywgMzIsIDYsIDIyMywgMzcsIDExLCAzNSwgMjMsIDMyLCA2LCAyMTYsIDE4MCwgODcsIDExLCAzNSwgCisgICAgMjMsIDMyLCA2LCAyMTksIDE3NywgMTEsIDM1LCAyMywgMzIsIDYsIDIxNywgNDEsIDExLCAzNSwgMjMsIDMyLCA2LCAyMTQsIAorICAgIDE1NywgMTEsIDM1LCAyMywgMzIsIDYsIDIyNSwgMTMzLCAxMSwgMzUsIDIzLCAzMiwgNiwgMjUwLCAxMTAsIDExLCAzNSwgCisgICAgMjMsIDMyLCA2LCAyMjQsIDE2MSwgMTEsIDM1LCAyMywgMzIsIDYsIDIyNiwgMjAxLCAxMSwgMzUsIDIzLCAzMiwgMjI5LCAKKyAgICAyMjEsIDExLCAzNSwgMjMsIDMyLCA0LCAyNTQsIDE0MywgMTEsIDM1LCAyMywgMzIsIDQsIDI1MiwgMjYsIDExLCAzNSwgMjMsIAorICAgIDMyLCA0LCAyNDMsIDEwNywgMTEsIDM1LCAyMywgMzIsIDQsIDI0OCwgNTQsIDExLCAzNSwgMjMsIDMyLCA0LCAyNDUsIDEwMCwgCisgICAgMTEsIDM1LCAyMywgMzIsIDQsIDIxMCwgODUsIDExLCAzNSwgMjMsIDMyLCA0LCAyNDUsIDYzLCAxMSwgMzUsIDIzLCAzMiwgCisgICAgNCwgMjE2LCAxNzksIDExLCAzNSwgMjMsIDMyLCA0LCAyMzUsIDE4NSwgMTEsIDM1LCAyMywgMzIsIDQsIDIzNCwgMjIyLCAKKyAgICAxMSwgMzUsIDIzLCAzMiwgNCwgMjMzLCA5OCwgMTEsIDM1LCAyMywgMzIsIDQsIDIzMCwgMTAyLCAxMSwgMzUsIDIzLCAzMiwgCisgICAgNCwgMjI3LCAyMzcsIDExLCAzNSwgMjMsIDMyLCA0LCAyMTEsIDE1NywgMTEsIDM1LCAyMywgMzIsIDQsIDIyNiwgMTk5LCAKKyAgICAxMSwgMzUsIDIzLCAzMiwgNCwgMjI1LCAxMDgsIDExLCAzNSwgMjMsIDMyLCA0LCAyMjMsIDM3LCAxMSwgMzUsIDIzLCAzMiwgCisgICAgNCwgNDAsIDIxOSwgMTc3LCAxMSwgMzUsIDIzLCAzMiwgNCwgMjE5LCAxNzcsIDExLCAzNSwgMjMsIDMyLCA0LCAyMTcsIDQxLCAKKyAgICAxMSwgMzUsIDIzLCAzMiwgNCwgMjE0LCAxNTcsIDExLCAzNSwgMjMsIDMyLCA0LCAyMjUsIDEzMywgMTEsIDM1LCAyMywgMzIsIAorICAgIDQsIDI1MCwgMTEwLCAxMSwgMzUsIDIzLCAzMiwgNCwgMjI0LCAxNjEsIDExLCAzNSwgMjMsIDMyLCA0LCAyMjYsIDIwMSwgCisgICAgMTEsIDM1LCAyMywgMzIsIDIyNSwgMjUzLCAyNDcsIDIzMywgMTEsIDM1LCAyMywgMzIsIDI0NSwgMTAxLCA4NywgMTEsIDM1LCAKKyAgICAyMywgMzIsIDIxNiwgMTgwLCA4NywgMTEsIDM1LCAyMywgMzIsIDIzNCwgMjIzLCA4NywgMTEsIDM1LCAyMywgMzIsIDIyNSwgCisgICAgMTM0LCA4NywgMTEsIDM1LCAyMywgMzIsIDIyMywgMzgsIDg3LCAxMSwgMzUsIDIzLCAzMiwgMjI1LCAxMDksIDg3LCAxMSwgCisgICAgMjMsIDYsIDI0NywgMjI3LCAxMSwgMjMsIDQsIDI0NywgMjI3LCAxMSwgMjMsIDIxLCAyMTAsIDg2LCAxMSwgMjMsIDIxLCAKKyAgICAxMTAsIDExLCAyMywgMjEsIDEwNSwgMTEsIDIzLCAyMSwgMTU4LCAxMSwgMjMsIDIxLCAxNjEsIDExLCAyMywgMjEsIDE4OSwgCisgICAgMTEsIDIzLCAyMSwgMTk0LCAxMSwgMjMsIDIxLCAxOTgsIDExLCAyMywgMjEsIDE5NSwgMTEsIDIzLCAyMSwgMjAwLCAxMSwgCisgICAgMTM5LCAyMSwgMjEwLCA4NiwgMTEsIDEzOSwgMjEsIDExMCwgMTEsIDEzOSwgMjEsIDEwNSwgMTEsIDEzOSwgMjEsIDE1OCwgCisgICAgMTEsIDEzOSwgMjEsIDE2MSwgMTEsIDEzOSwgMjEsIDE4OSwgMTEsIDEzOSwgMjEsIDE5NCwgMTEsIDEzOSwgMjEsIDE5OCwgCisgICAgMTEsIDEzOSwgMjEsIDE5NSwgMTEsIDEzOSwgMjEsIDIwMCwgMTEsIDM1LCAyMSwgMjEwLCA4NiwgMTEsIDM1LCAyMSwgMTEwLCAKKyAgICAxMSwgMzUsIDIxLCAxMDUsIDExLCAzNSwgMjEsIDE1OCwgMTEsIDM1LCAyMSwgMTYxLCAxMSwgMzUsIDIxLCAxODksIDExLCAKKyAgICAzNSwgMjEsIDE5NCwgMTEsIDM1LCAyMSwgMTk4LCAxMSwgMzUsIDIxLCAxOTUsIDExLCAzNSwgMjEsIDIwMCwgMTEsIDM1LCAKKyAgICAyMywgMjEsIDIxMCwgODYsIDExLCAzNSwgMjMsIDIxLCAxMTAsIDExLCAzNSwgMjMsIDIxLCAxMDUsIDExLCAzNSwgMjMsIAorICAgIDIxLCAxNTgsIDExLCAzNSwgMjMsIDIxLCAxNjEsIDExLCAzNSwgMjMsIDIxLCAxODksIDExLCAzNSwgMjMsIDIxLCAxOTQsIAorICAgIDExLCAzNSwgMjMsIDIxLCAxOTgsIDExLCAzNSwgMjMsIDIxLCAxOTUsIDExLCAzNSwgMjMsIDIxLCAyMDAsIDExLCAyMzAsIAorICAgIDEzOCwgMjEsIDIxMCwgODYsIDExLCAyMzAsIDEzOCwgMjEsIDExMCwgMTEsIDIzMCwgMTM4LCAyMSwgMTA1LCAxMSwgMjMwLCAKKyAgICAxMzgsIDIxLCAxNTgsIDExLCAyMzAsIDEzOCwgMjEsIDE2MSwgMTEsIDIzMCwgMTM4LCAyMSwgMTg5LCAxMSwgMjMwLCAxMzgsIAorICAgIDIxLCAxOTQsIDExLCAyMzAsIDEzOCwgMjEsIDE5OCwgMTEsIDIzMCwgMTM4LCAyMSwgMTk1LCAxMSwgMjMwLCAxMzgsIDIxLCAKKyAgICAyMDAsIDEwLCAxMSwgMjU0LCAxNzAsIDEwLCAxMSwgMjUyLCA1NCwgMTAsIDExLCAyMzUsIDEyMywgMTAsIDExLCAyNDgsIAorICAgIDE5NSwgMTAsIDExLCAyMTIsIDMwLCAxMCwgMTEsIDIxMCwgMTA4LCAxMCwgMTEsIDI0MiwgMzcsIDEwLCAxMSwgMjE3LCA4MCwgCisgICAgMTAsIDExLCAyMTEsIDQzLCAxMCwgMTEsIDIzNCwgMjUwLCAxMCwgMTEsIDIzMywgMTAyLCAxMCwgMTEsIDIzMSwgNzgsIDEwLCAKKyAgICAxMSwgMjI4LCA2MiwgMTAsIDExLCAyMjEsIDE2NiwgMTAsIDExLCAyNTQsIDE5NiwgMTAsIDExLCAyNDQsIDE0MiwgMTAsIAorICAgIDExLCAyMjIsIDI2LCAxMCwgMTEsIDIyNCwgODEsIDEwLCAxMSwgMjIzLCA5NSwgMTAsIDExLCAyMjAsIDU5LCAxMCwgMTEsIAorICAgIDIxNywgNywgMTAsIDExLCAyMTYsIDE5MiwgMTAsIDExLCAyMzQsIDEyOSwgMTAsIDExLCAyMTYsIDIwMiwgMTAsIDExLCAKKyAgICAyNDgsIDIxNiwgMTAsIDExLCAyMTAsIDExMSwgMTAsIDExLCAyNDIsIDI0NCwgMTAsIDExLCAyNDcsIDExOSwgMjUyLCA1NCwgCisgICAgMTAsIDExLCAyNDcsIDExOSwgMjI4LCA2MiwgMTAsIDExLCAyNDcsIDExOSwgMjQ0LCAxNDIsIDEwLCAxMSwgMjQ3LCAxMTksIAorICAgIDIyNCwgODEsIDEwLCAxMSwgNjUsIDI1MiwgNTQsIDEwLCAxMSwgNjUsIDIzNSwgMTIzLCAxMCwgMTEsIDY1LCAyNDEsIDIxOCwgCisgICAgMTAsIDExLCA2NSwgMjQyLCAzNywgMTAsIDExLCA2NSwgMjExLCA0MywgMTAsIDExLCA2NSwgMjM0LCAyNTAsIDEwLCAxMSwgCisgICAgNjUsIDIzMywgMTAyLCAxMCwgMTEsIDY1LCAyMzEsIDc4LCAxMCwgMTEsIDY1LCAyMjgsIDYyLCAxMCwgMTEsIDY1LCAyMjEsIAorICAgIDE2NiwgMTAsIDExLCA2NSwgMjU0LCAxOTYsIDEwLCAxMSwgNjUsIDI0NCwgMTQyLCAxMCwgMTEsIDY1LCAyMjIsIDI2LCAxMCwgCisgICAgMTEsIDY1LCAyMjQsIDgxLCAxMCwgMTEsIDY1LCAyMjAsIDU5LCAxMCwgMTEsIDY1LCAyMTcsIDcsIDEwLCAxMSwgNjUsIAorICAgIDIxNiwgMTkyLCAxMCwgMTEsIDY1LCAyMzQsIDEyOSwgMTAsIDExLCA2NSwgMjQ4LCAyMTYsIDEwLCAxMSwgNjUsIDI0MiwgCisgICAgMjQ0LCAxMCwgMTEsIDIxNywgNzYsIDIzNSwgMTIzLCAxMCwgMTEsIDIxNywgNzYsIDI0MiwgMzcsIDEwLCAxMSwgMjE3LCAKKyAgICA3NiwgMjExLCA0MywgMTAsIDExLCAyMTcsIDc2LCAyMzMsIDEwMiwgMTAsIDExLCAyMTcsIDc2LCAyMjgsIDYyLCAxMCwgMTEsIAorICAgIDIxNywgNzYsIDIyMSwgMTY2LCAxMCwgMTEsIDIxNywgNzYsIDI1NCwgMTk2LCAxMCwgMTEsIDIxNywgNzYsIDIyMiwgMjYsIAorICAgIDEwLCAxMSwgMjE3LCA3NiwgMjI0LCA4MSwgMTAsIDExLCAyMTcsIDc2LCAyMjAsIDU5LCAxMCwgMTEsIDIxNywgNzYsIDIzNCwgCisgICAgMTI5LCAxMCwgMTEsIDIxNywgNzYsIDI0OCwgMjE2LCAxMCwgMTEsIDIxNywgNzYsIDI0MiwgMjQ0LCAxMCwgMTEsIDIxNywgCisgICAgNzYsIDI0NywgMTE5LCAyMjgsIDYyLCAxMCwgMTEsIDIxNywgNzYsIDI0NywgMTE5LCAyMjQsIDgxLCAxMCwgMTEsIDIxOCwgCisgICAgMTEwLCAyNTIsIDU0LCAxMCwgMTEsIDIxOCwgMTEwLCAyMzUsIDEyMywgMTAsIDExLCAyMTgsIDExMCwgMjQxLCAyMTgsIDEwLCAKKyAgICAxMSwgMjE4LCAxMTAsIDI0MiwgMzcsIDEwLCAxMSwgMjE4LCAxMTAsIDIxNywgODAsIDEwLCAxMSwgMjE4LCAxMTAsIDIxMSwgCisgICAgNDMsIDEwLCAxMSwgMjE4LCAxMTAsIDIzNCwgMjUwLCAxMCwgMTEsIDIxOCwgMTEwLCAyMzEsIDc4LCAxMCwgMTEsIDIxOCwgCisgICAgMTEwLCAyMjgsIDYyLCAxMCwgMTEsIDIxOCwgMTEwLCAyMjEsIDE2NiwgMTAsIDExLCAyMTgsIDExMCwgMjU0LCAxOTYsIDEwLCAKKyAgICAxMSwgMjE4LCAxMTAsIDI0NCwgMTQyLCAxMCwgMTEsIDIxOCwgMTEwLCAyMjIsIDI2LCAxMCwgMTEsIDIxOCwgMTEwLCAyMjQsIAorICAgIDgxLCAxMCwgMTEsIDIxOCwgMTEwLCAyMjAsIDU5LCAxMCwgMTEsIDIxOCwgMTEwLCAyMTcsIDcsIDEwLCAxMSwgMjE4LCAKKyAgICAxMTAsIDIxNiwgMTkyLCAxMCwgMTEsIDIxOCwgMTEwLCAyMzQsIDEyOSwgMTAsIDExLCAyMTgsIDExMCwgMjQ4LCAyMTYsIAorICAgIDEwLCAxMSwgMjE4LCAxMTAsIDIxMCwgMTExLCAxMCwgMTEsIDIxOCwgMTEwLCAyNDIsIDI0NCwgMTAsIDExLCAyMTgsIDExMCwgCisgICAgMjQ3LCAxMTksIDI1MiwgNTQsIDEwLCAxMSwgMjE4LCAxMTAsIDI0NywgMTE5LCAyNDQsIDE0MiwgMTAsIDExLCAyMzIsIAorICAgIDEyMiwgMjU0LCAxNzAsIDEwLCAxMSwgMjMyLCAxMjIsIDI1MiwgNTQsIDEwLCAxMSwgMjMyLCAxMjIsIDIzNSwgMTIzLCAxMCwgCisgICAgMTEsIDIzMiwgMTIyLCAyNDgsIDE5NSwgMTAsIDExLCAyMzIsIDEyMiwgMjQxLCAyMTgsIDEwLCAxMSwgMjMyLCAxMjIsIAorICAgIDIxMiwgMzAsIDEwLCAxMSwgMjMyLCAxMjIsIDIxMCwgMTA4LCAxMCwgMTEsIDIzMiwgMTIyLCAyNDIsIDM3LCAxMCwgMTEsIAorICAgIDIzMiwgMTIyLCAyMTcsIDgwLCAxMCwgMTEsIDIzMiwgMTIyLCAyMTEsIDQzLCAxMCwgMTEsIDIzMiwgMTIyLCAyMzMsIDEwMiwgCisgICAgMTAsIDExLCAyMzIsIDEyMiwgMjMxLCA3OCwgMTAsIDExLCAyMzIsIDEyMiwgMjI4LCA2MiwgMTAsIDExLCAyMzIsIDEyMiwgCisgICAgMjIxLCAxNjYsIDEwLCAxMSwgMjMyLCAxMjIsIDI1NCwgMTk2LCAxMCwgMTEsIDIzMiwgMTIyLCAyNDQsIDE0MiwgMTAsIDExLCAKKyAgICAyMzIsIDEyMiwgMjIyLCAyNiwgMTAsIDExLCAyMzIsIDEyMiwgMjI0LCA4MSwgMTAsIDExLCAyMzIsIDEyMiwgMjIzLCA5NSwgCisgICAgMTAsIDExLCAyMzIsIDEyMiwgMjIwLCA1OSwgMTAsIDExLCAyMzIsIDEyMiwgMjE3LCA3LCAxMCwgMTEsIDIzMiwgMTIyLCAKKyAgICAyMTYsIDE5MiwgMTAsIDExLCAyMzIsIDEyMiwgMjM0LCAxMjksIDEwLCAxMSwgMjMyLCAxMjIsIDIxNiwgMjAyLCAxMCwgMTEsIAorICAgIDIzMiwgMTIyLCAyNDgsIDIxNiwgMTAsIDExLCAyMzIsIDEyMiwgMjEwLCAxMTEsIDEwLCAxMSwgMjMyLCAxMjIsIDI0MiwgCisgICAgMjQ0LCAxMCwgMTEsIDEzOSwgMjUyLCA1NCwgMTAsIDExLCAxMzksIDIzNSwgMTIzLCAxMCwgMTEsIDEzOSwgMjQ4LCAxOTUsIAorICAgIDEwLCAxMSwgMTM5LCAyMTIsIDMwLCAxMCwgMTEsIDEzOSwgMjEwLCAxMDgsIDEwLCAxMSwgMTM5LCAyNDIsIDM3LCAxMCwgCisgICAgMTEsIDEzOSwgMjE3LCA4MCwgMTAsIDExLCAxMzksIDIxMSwgNDMsIDEwLCAxMSwgMTM5LCAyMzMsIDEwMiwgMTAsIDExLCAKKyAgICAxMzksIDIzMSwgNzgsIDEwLCAxMSwgMTM5LCAyMjgsIDYyLCAxMCwgMTEsIDEzOSwgMjIxLCAxNjYsIDEwLCAxMSwgMTM5LCAKKyAgICAyNTQsIDE5NiwgMTAsIDExLCAxMzksIDI0NCwgMTQyLCAxMCwgMTEsIDEzOSwgMjIyLCAyNiwgMTAsIDExLCAxMzksIDIyNCwgCisgICAgODEsIDEwLCAxMSwgMTM5LCAyMjMsIDk1LCAxMCwgMTEsIDEzOSwgMjIwLCA1OSwgMTAsIDExLCAxMzksIDIxNywgNywgMTAsIAorICAgIDExLCAxMzksIDIxNiwgMTkyLCAxMCwgMTEsIDEzOSwgMjM0LCAxMjksIDEwLCAxMSwgMTM5LCAyMTYsIDIwMiwgMTAsIDExLCAKKyAgICAxMzksIDI0OCwgMjE2LCAxMCwgMTEsIDEzOSwgMjEwLCAxMTEsIDEwLCAxMSwgMTM5LCAyNDIsIDI0NCwgMTAsIDExLCAyMjYsIAorICAgIDE2OCwgNjYsIDIsIDEyMiwgMiwgMjE3LCA0MywgMTAsIDExLCAyMjYsIDE2OCwgMTIyLCAyLCAyNDgsIDE5NSwgMjMxLCAKKyAgICAyMDUsIDg2LCAyNDUsIDIyMCwgMjExLCAyMzksIDIzMSwgMjA1LCA4NiwgMjE5LCAyOCwgMjExLCAyMzksIDIzMSwgMjA1LCAKKyAgICA4NiwgMjEyLCA5LCAyMTEsIDIzOSwgMjMxLCAyMDUsIDg2LCAyMjgsIDU2LCAyMTEsIDIzOSwgMjMxLCAyMDUsIDg2LCAyMjMsIAorICAgIDExMSwgMjQ2LCA5NiwgMjMxLCAyMDUsIDg2LCAyNDIsIDEyNywgMjQ2LCA5NiwgMjMxLCAyMDUsIDg2LCA3MSwgMjQ2LCA5NiwgCisgICAgMjMxLCAyMDUsIDg2LCAxMjMsIDY0LCAyNTAsIDE0MSwgMjMxLCAyMDUsIDg2LCAxMTMsIDY0LCAyNTAsIDE0MSwgMjMxLCAKKyAgICAyMDUsIDg2LCAxMzQsIDY0LCAyNTAsIDE0MSwgMjMxLCAyMDUsIDg2LCAyNDQsIDExLCA2NCwgMjUwLCAxNDEsIDIzMSwgCisgICAgMjA1LCA4NiwgMjQ0LCA4MSwgNjQsIDI1MCwgMTQxLCAyMzEsIDIwNSwgODYsIDIxOSwgMTI1LCA2NCwgMjUwLCAxNDEsIAorICAgIDIzMSwgMjA1LCA4NiwgMjIwLCAxMjIsIDY0LCAyNTAsIDE0MSwgMjMxLCAyMDUsIDg2LCAyNDUsIDE5MywgNjQsIDI1MCwgCisgICAgMTQxLCAyMzEsIDIwNSwgODYsIDIyOCwgMjAwLCA2NCwgMjUwLCAxNDEsIDIzMSwgMjA1LCA4NiwgMTIzLCA2NCwgMjUyLCAKKyAgICAxNTMsIDIzMSwgMjA1LCA4NiwgMTEzLCA2NCwgMjUyLCAxNTMsIDIzMSwgMjA1LCA4NiwgMTM0LCA2NCwgMjUyLCAxNTMsIAorICAgIDIzMSwgMjA1LCA4NiwgMjQ0LCAxMSwgNjQsIDI1MiwgMTUzLCAyMzEsIDIwNSwgODYsIDI0NCwgODEsIDY0LCAyNTIsIDE1MywgCisgICAgMjMxLCAyMDUsIDg2LCAyMTksIDEyNSwgNjQsIDI1MiwgMTUzLCAyMzEsIDIwNSwgODYsIDIyMCwgMTIyLCA2NCwgMjUyLCAKKyAgICAxNTMsIDIzMSwgMjA1LCA4NiwgMjQ1LCAxOTMsIDY0LCAyNTIsIDE1MywgMjMxLCAyMDUsIDg2LCAyMjgsIDIwMCwgNjQsIAorICAgIDI1MiwgMTUzLCAyMzEsIDIwNSwgODYsIDEyMywgNjQsIDI1MCwgMzQsIDIzMSwgMjA1LCA4NiwgMTEzLCA2NCwgMjUwLCAzNCwgCisgICAgMjMxLCAyMDUsIDg2LCAxMzQsIDY0LCAyNTAsIDM0LCAyMzEsIDIwNSwgODYsIDI0NCwgMTEsIDY0LCAyNTAsIDM0LCAyMzEsIAorICAgIDIwNSwgODYsIDI0NCwgODEsIDY0LCAyNTAsIDM0LCAyMzEsIDIwNSwgODYsIDIxOSwgMTI1LCA2NCwgMjUwLCAzNCwgMjMxLCAKKyAgICAyMDUsIDg2LCAyMjAsIDEyMiwgNjQsIDI1MCwgMzQsIDIzMSwgMjA1LCA4NiwgMjQ1LCAxOTMsIDY0LCAyNTAsIDM0LCAyMzEsIAorICAgIDIwNSwgODYsIDIyOCwgMjAwLCA2NCwgMjUwLCAzNCwgMjMxLCAyMDUsIDg2LCAyMjUsIDI1LCAyMzEsIDIwNSwgODYsIDIyNiwgCisgICAgMTU2LCAyMzEsIDIwNSwgODYsIDI1MiwgMTU0LCAyMzEsIDIwNSwgODYsIDI1MCwgNzAsIDIzMSwgMjA1LCA4NiwgMjE4LCAKKyAgICAyMzksIDIzMSwgMjA1LCA4NiwgMjE4LCAzOSwgMjMxLCAyMDUsIDg2LCAyNTMsIDE3OSwgMjMxLCAyMDUsIDg2LCAyMTEsIAorICAgIDIzMiwgMjMxLCAyMDUsIDg2LCAyMzUsIDYyLCAyMzEsIDIwNSwgODYsIDI1MiwgMTg0LCAxMzEsIDg2LCAyMDMsIDI1MiwgCisgICAgMTg0LCAxMzEsIDg2LCAyNDEsIDQzLCAxMzEsIDg2LCAyNDEsIDQyLCAxMzEsIDg2LCAyNDEsIDQxLCAxMzEsIDg2LCAyNDEsIAorICAgIDQwLCAxMzEsIDg2LCAyNDEsIDM5LCAxMzEsIDg2LCAyNDEsIDM4LCAxMzEsIDg2LCAyNDEsIDM3LCAxMzEsIDg2LCAyNDEsIAorICAgIDM2LCAxMzEsIDg2LCAyNDEsIDM1LCAxMzEsIDg2LCAyNDEsIDM0LCAxMzEsIDg2LCAyNDEsIDMzLCAxMzEsIDg2LCAyNDEsIAorICAgIDMyLCAxMzEsIDg2LCAyNDEsIDMxLCAxMzEsIDg2LCAyNDEsIDMwLCAxMzEsIDg2LCAyNDEsIDI5LCAxMzEsIDg2LCAyNDEsIAorICAgIDI4LCAxMzEsIDg2LCAyNDEsIDI3LCAxMzEsIDg2LCAyNDEsIDI2LCAxMzEsIDg2LCAyNDEsIDI1LCAxMzEsIDg2LCAyNDEsIAorICAgIDI0LCAxMzEsIDg2LCAyNDEsIDIzLCAxMzEsIDg2LCAyNDEsIDIyLCAxMzEsIDg2LCAyNDEsIDIxLCAxMzEsIDg2LCAyNDEsIAorICAgIDIwLCAxMzEsIDg2LCAyNDEsIDE5LCAxMzEsIDg2LCAyNDEsIDE4LCAxMzEsIDg2LCAyNDEsIDE3LCAxMzEsIDg2LCAyNDEsIAorICAgIDE2LCAxMzEsIDg2LCAyNDEsIDE1LCAxMzEsIDg2LCAyNDEsIDE0LCAxMzEsIDg2LCAyNDEsIDEzLCAxMzEsIDg2LCAyNDEsIAorICAgIDEyLCAxMzEsIDg2LCAyNDEsIDExLCAxMzEsIDg2LCAyNDEsIDEwLCAxMzEsIDg2LCAyNDEsIDksIDEzMSwgODYsIDI0MSwgOCwgCisgICAgMTMxLCA4NiwgMjQxLCA3LCAxMzEsIDg2LCAyNDEsIDYsIDEzMSwgODYsIDI0MSwgNSwgMTMxLCA4NiwgMjQxLCA0LCAxMzEsIAorICAgIDg2LCAyNDEsIDMsIDEzMSwgODYsIDI0MSwgMiwgMTMxLCA4NiwgMjQxLCAxLCAxMzEsIDg2LCAyNDEsIDAsIDEzMSwgODYsIAorICAgIDI0MCwgMjU1LCAxMzEsIDg2LCAyNDAsIDI1NCwgMTMxLCA4NiwgMjQwLCAyNTMsIDEzMSwgODYsIDI0MCwgMjUyLCAxMzEsIAorICAgIDg2LCAyNDAsIDI1MSwgMTMxLCA4NiwgNjcsIDI1MiwgMTg0LCAxMzEsIDg2LCAyMTMsIDIzOCwgMTMxLCA4NiwgMjEzLCAKKyAgICAyMzcsIDEzMSwgODYsIDIxMywgMjM2LCAxMzEsIDg2LCAyMTMsIDIzNSwgMTMxLCA4NiwgMjEzLCAyMzQsIDEzMSwgODYsIAorICAgIDIxMywgMjMzLCAxMzEsIDg2LCAyMTMsIDIzMiwgMTMxLCA4NiwgMjEzLCAyMzEsIDEzMSwgODYsIDIxMywgMjMwLCAxMzEsIAorICAgIDg2LCAyMTMsIDIyOSwgMTMxLCA4NiwgMjEzLCAyMjgsIDEzMSwgODYsIDIxMywgMjI3LCAxMzEsIDg2LCAyMTMsIDIyNiwgCisgICAgMTMxLCA4NiwgMjEzLCAyMjUsIDEzMSwgODYsIDIxMywgMjI0LCAxMzEsIDg2LCAyMTMsIDIyMywgMTMxLCA4NiwgMjEzLCAKKyAgICAyMjIsIDEzMSwgODYsIDIxMywgMjIxLCAxMzEsIDg2LCAyMTMsIDIyMCwgMTMxLCA4NiwgMjEzLCAyMTksIDEzMSwgODYsIAorICAgIDIxMywgMjE4LCAxMzEsIDg2LCAyMTMsIDIxNywgMTMxLCA4NiwgMjEzLCAyMTYsIDEzMSwgODYsIDIxMywgMjE1LCAxMzEsIAorICAgIDg2LCAyMTMsIDIxNCwgMTMxLCA4NiwgMjEzLCAyMTMsIDEzMSwgODYsIDIxMywgMjEyLCAxMzEsIDg2LCAyMTMsIDIxMSwgCisgICAgMTMxLCA4NiwgMjEzLCAyMTAsIDEzMSwgODYsIDIxMywgMjA5LCAxMzEsIDg2LCAyMTMsIDIwOCwgMTMxLCA4NiwgMjEzLCAKKyAgICAyMDcsIDEzMSwgODYsIDIxMywgMjA2LCAxMzEsIDg2LCAyMTMsIDIwNSwgMTMxLCA4NiwgMjEzLCAyMDQsIDEzMSwgODYsIAorICAgIDIxMywgMjAzLCAxMzEsIDg2LCAyMTMsIDIwMiwgMTMxLCA4NiwgMjEzLCAyMDEsIDEzMSwgODYsIDIxMywgMjAwLCAxMzEsIAorICAgIDg2LCAyMTMsIDE5OSwgMTMxLCA4NiwgMjEzLCAxOTgsIDEzMSwgODYsIDIxMywgMTk3LCAxMzEsIDg2LCAyMTMsIDE5NiwgCisgICAgMTMxLCA4NiwgMjEzLCAxOTUsIDEzMSwgODYsIDIxMywgMTk0LCAxMzEsIDg2LCAyMTMsIDE5MywgMTMxLCA4NiwgMjEzLCAKKyAgICAxOTIsIDEzMSwgODYsIDIxMywgMTkxLCAxMzEsIDg2LCAyMTMsIDE5MCwgMjI1LCAzMywgMjUwLCAyNDMsIDI1MiwgMTg0LCAKKyAgICAyMjUsIDMzLCAyNTAsIDI0MywgMjU1LCA5LCA2NCwgMjE5LCAxNSwgMjI1LCAzMywgMjUwLCAyNDMsIDExMywgNjQsIDIxOSwgCisgICAgMTUsIDIyNSwgMzMsIDI1MCwgMjQzLCAxMzQsIDY0LCAyMTksIDE1LCAyMjUsIDMzLCAyNTAsIDI0MywgMjQ0LCAxMSwgNjQsIAorICAgIDIxOSwgMTUsIDIyNSwgMzMsIDI1MCwgMjQzLCAyNDQsIDgxLCA2NCwgMjE5LCAxNSwgMjI1LCAzMywgMjUwLCAyNDMsIDIxOSwgCisgICAgMTI1LCA2NCwgMjE5LCAxNSwgMjI1LCAzMywgMjUwLCAyNDMsIDIyMCwgMTIyLCA2NCwgMjE5LCAxNSwgMjI1LCAzMywgMjUwLCAKKyAgICAyNDMsIDI0NSwgMTkzLCA2NCwgMjE5LCAxNSwgMjI1LCAzMywgMjUwLCAyNDMsIDIyOCwgMjAwLCA2NCwgMjE5LCAxNSwgCisgICAgMjI1LCAzMywgMjUwLCAyNDMsIDIxNiwgMjQ4LCA2NCwgMjE5LCAxNSwgMjI1LCAzMywgMjUwLCAyNDMsIDIzNSwgMTM5LCAKKyAgICA2NCwgMjE5LCAxNSwgMjI1LCAzMywgMjUwLCAyNDMsIDIzNCwgMzEsIDY0LCAyMTksIDE1LCAyMjUsIDMzLCAyNTAsIDI0MywgCisgICAgMjI0LCAxNSwgNjQsIDIxOSwgMTUsIDIyNSwgMzMsIDI1MCwgMjQzLCAyMzQsIDc5LCA2NCwgMjE5LCAxNSwgMjI1LCAzMywgCisgICAgMjUwLCAyNDMsIDI1NSwgOSwgNjQsIDI0MSwgMjI1LCAyMjUsIDMzLCAyNTAsIDI0MywgMTEzLCA2NCwgMjQxLCAyMjUsIAorICAgIDIyNSwgMzMsIDI1MCwgMjQzLCAxMzQsIDY0LCAyNDEsIDIyNSwgMjI1LCAzMywgMjUwLCAyNDMsIDI0NCwgMTEsIDY0LCAKKyAgICAyNDEsIDIyNSwgMjI1LCAzMywgMjUwLCAyNDMsIDI0NCwgODEsIDY0LCAyNDEsIDIyNSwgMjI1LCAzMywgMjUwLCAyNDMsIAorICAgIDIxOSwgMTI1LCA2NCwgMjQxLCAyMjUsIDIyNSwgMzMsIDI1MCwgMjQzLCAyMjAsIDEyMiwgNjQsIDI0MSwgMjI1LCAyMjUsIAorICAgIDMzLCAyNTAsIDI0MywgMjQ1LCAxOTMsIDY0LCAyNDEsIDIyNSwgMjI1LCAzMywgMjUwLCAyNDMsIDIyOCwgMjAwLCA2NCwgCisgICAgMjQxLCAyMjUsIDIyNSwgMzMsIDI1MCwgMjQzLCAyMTYsIDI0OCwgNjQsIDI0MSwgMjI1LCAyMjUsIDMzLCAyNTAsIDI0MywgCisgICAgMjM1LCAxMzksIDY0LCAyNDEsIDIyNSwgMjI1LCAzMywgMjUwLCAyNDMsIDIzNCwgMzEsIDY0LCAyNDEsIDIyNSwgMjI1LCAKKyAgICAzMywgMjUwLCAyNDMsIDIyNCwgMTUsIDY0LCAyNDEsIDIyNSwgMjI1LCAzMywgMjUwLCAyNDMsIDIzNCwgNzksIDY0LCAyNDEsIAorICAgIDIyNSwgMjI1LCAzMywgMjUwLCAyNDMsIDI1NSwgOSwgNjQsIDI0NywgMjQ3LCAyMjUsIDMzLCAyNTAsIDI0MywgMTEzLCA2NCwgCisgICAgMjQ3LCAyNDcsIDIyNSwgMzMsIDI1MCwgMjQzLCAxMzQsIDY0LCAyNDcsIDI0NywgMjI1LCAzMywgMjUwLCAyNDMsIDI0NCwgCisgICAgMTEsIDY0LCAyNDcsIDI0NywgMjI1LCAzMywgMjUwLCAyNDMsIDI0NCwgODEsIDY0LCAyNDcsIDI0NywgMjI1LCAzMywgMjUwLCAKKyAgICAyNDMsIDIxOSwgMTI1LCA2NCwgMjQ3LCAyNDcsIDIyNSwgMzMsIDI1MCwgMjQzLCAyMjAsIDEyMiwgNjQsIDI0NywgMjQ3LCAKKyAgICAyMjUsIDMzLCAyNTAsIDI0MywgMjQ1LCAxOTMsIDY0LCAyNDcsIDI0NywgMjI1LCAzMywgMjUwLCAyNDMsIDIyOCwgMjAwLCAKKyAgICA2NCwgMjQ3LCAyNDcsIDIyNSwgMzMsIDI1MCwgMjQzLCAyMTYsIDI0OCwgNjQsIDI0NywgMjQ3LCAyMjUsIDMzLCAyNTAsIAorICAgIDI0MywgMjM1LCAxMzksIDY0LCAyNDcsIDI0NywgMjI1LCAzMywgMjUwLCAyNDMsIDIzNCwgMzEsIDY0LCAyNDcsIDI0NywgCisgICAgMjI1LCAzMywgMjUwLCAyNDMsIDIyNCwgMTUsIDY0LCAyNDcsIDI0NywgMjI1LCAzMywgMjUwLCAyNDMsIDIzNCwgNzksIDY0LCAKKyAgICAyNDcsIDI0NywgMjI1LCAzMywgMjUwLCAyNDMsIDg1LCAyMzUsIDYyLCAyMjUsIDMzLCAyNTAsIDI0MywgMjU1LCA5LCA2NCwgCisgICAgMjQ5LCAyNDIsIDIyNSwgMzMsIDI1MCwgMjQzLCAxMTMsIDY0LCAyNDksIDI0MiwgMjI1LCAzMywgMjUwLCAyNDMsIDEzNCwgCisgICAgNjQsIDI0OSwgMjQyLCAyMjUsIDMzLCAyNTAsIDI0MywgMjQ0LCAxMSwgNjQsIDI0OSwgMjQyLCAyMjUsIDMzLCAyNTAsIAorICAgIDI0MywgMjQ0LCA4MSwgNjQsIDI0OSwgMjQyLCAyMjUsIDMzLCAyNTAsIDI0MywgMjE5LCAxMjUsIDY0LCAyNDksIDI0MiwgCisgICAgMjI1LCAzMywgMjUwLCAyNDMsIDIyMCwgMTIyLCA2NCwgMjQ5LCAyNDIsIDIyNSwgMzMsIDI1MCwgMjQzLCAyNDUsIDE5MywgCisgICAgNjQsIDI0OSwgMjQyLCAyMjUsIDMzLCAyNTAsIDI0MywgMjI4LCAyMDAsIDY0LCAyNDksIDI0MiwgMjI1LCAzMywgMjUwLCAKKyAgICAyNDMsIDIxNiwgMjQ4LCA2NCwgMjQ5LCAyNDIsIDIyNSwgMzMsIDI1MCwgMjQzLCAyMzUsIDEzOSwgNjQsIDI0OSwgMjQyLCAKKyAgICAyMjUsIDMzLCAyNTAsIDI0MywgMjM0LCAzMSwgNjQsIDI0OSwgMjQyLCAyMjUsIDMzLCAyNTAsIDI0MywgMjI0LCAxNSwgNjQsIAorICAgIDI0OSwgMjQyLCAyMjUsIDMzLCAyNTAsIDI0MywgMjM0LCA3OSwgNjQsIDI0OSwgMjQyLCAyMjUsIDMzLCAyNTAsIDI0MywgCisgICAgNzEsIDIzNSwgNjIsIDIxLCAyMTAsIDg3LCAyNDMsIDIyOSwgMjE4LCAxMjksIDIxLCAyMTAsIDg3LCAyNDksIDIxOSwgMjEsIAorICAgIDEyMywgMjQ5LCAyMTksIDIxLCAxMTMsIDI0OSwgMjE5LCAyMSwgMTM0LCAyNDksIDIxOSwgMjEsIDI0NCwgMTEsIDI0OSwgCisgICAgMjE5LCAyMSwgMjQ0LCA4MSwgMjQ5LCAyMTksIDIxLCAyMTksIDEyNSwgMjQ5LCAyMTksIDIxLCAyMjAsIDEyMiwgMjQ5LCAKKyAgICAyMTksIDIxLCAyNDUsIDE5MywgMjQ5LCAyMTksIDIxLCAyMjgsIDIwMCwgMjQ5LCAyMTksIDg4LCA3LCA2LCAxLCA2MSwgODgsIAorICAgIDcsIDYsIDEsIDI1MywgMTU4LCA4OCwgNywgNiwgMSwgMjUxLCA2NiwgODgsIDcsIDYsIDEsIDI0OSwgNjAsIDg4LCA3LCA2LCAKKyAgICAxLCA3NSwgODgsIDcsIDYsIDEsIDI0NSwgNiwgODgsIDcsIDYsIDEsIDI0MywgMjAyLCA4OCwgNywgNiwgMSwgMjQyLCA2MCwgCisgICAgODgsIDcsIDYsIDEsIDczLCA4OCwgNywgNiwgMSwgMjM1LCAxNDQsIDg4LCA3LCA2LCAxLCAyMzUsIDIzLCA4OCwgNywgNiwgCisgICAgMSwgMTU2LCA4OCwgNywgNiwgMSwgMTkzLCA4OCwgNywgNiwgMSwgMjMwLCAyNSwgODgsIDcsIDYsIDEsIDc2LCA4OCwgNywgCisgICAgNiwgMSwgMjI2LCAxMDUsIDg4LCA3LCA2LCAxLCAyMjQsIDk2LCA4OCwgNywgNiwgMSwgMTUzLCA4OCwgNywgNiwgMSwgMjIyLCAKKyAgICA5MSwgODgsIDcsIDYsIDEsIDIxNywgMTUyLCA4OCwgNywgNiwgMSwgNzAsIDg4LCA3LCA2LCAxLCAyMTQsIDEwNSwgODgsIDcsIAorICAgIDYsIDEsIDIxMiwgOTgsIDg4LCA3LCA2LCAxLCAyMTEsIDE3OCwgODgsIDcsIDYsIDEsIDIxMSwgMTE3LCA4OCwgNywgNiwgMSwgCisgICAgMjEwLCAxNTksIDIxNiwgNiwgMjIwLCA1MywgMjUxLCAxNTcsIDcsIDYsIDEsIDIyMiwgOTEsIDM3LCAzMiwgNywgNiwgMSwgCisgICAgMjUxLCA2NiwgMzcsIDMyLCA3LCA2LCAxLCAxNTMsIDM3LCAyNTAsIDE5MSwgMzcsIDIxMSwgMTgwLCA5MiwgNywgNiwgMSwgCisgICAgNjEsIDkyLCA3LCA2LCAxLCAyNTMsIDE1OCwgOTIsIDcsIDYsIDEsIDI1MSwgNjYsIDkyLCA3LCA2LCAxLCAyNDksIDYwLCAKKyAgICA5MiwgNywgNiwgMSwgNzUsIDkyLCA3LCA2LCAxLCAyNDUsIDYsIDkyLCA3LCA2LCAxLCAyNDMsIDIwMiwgOTIsIDcsIDYsIDEsIAorICAgIDI0MiwgNjAsIDkyLCA3LCA2LCAxLCA3MywgOTIsIDcsIDYsIDEsIDIzNSwgMTQ0LCA5MiwgNywgNiwgMSwgMjM1LCAyMywgCisgICAgOTIsIDcsIDYsIDEsIDE1NiwgOTIsIDcsIDYsIDEsIDE5MywgOTIsIDcsIDYsIDEsIDIzMCwgMjUsIDkyLCA3LCA2LCAxLCAKKyAgICA3NiwgOTIsIDcsIDYsIDEsIDIyNiwgMTA1LCA5MiwgNywgNiwgMSwgMjI0LCA5NiwgOTIsIDcsIDYsIDEsIDE1MywgOTIsIDcsIAorICAgIDYsIDEsIDIyMiwgOTEsIDkyLCA3LCA2LCAxLCAyMTcsIDE1MiwgOTIsIDcsIDYsIDEsIDcwLCA5MiwgNywgNiwgMSwgMjE0LCAKKyAgICAxMDUsIDkyLCA3LCA2LCAxLCAyMTIsIDk4LCA5MiwgNywgNiwgMSwgMjExLCAxNzgsIDkyLCA3LCA2LCAxLCAyMTEsIDExNywgCisgICAgOTIsIDcsIDYsIDEsIDIxMCwgMTU5LCA5MiwgMjQwLCAyMDEsIDkyLCAyMzAsIDQ5LCA5MiwgMjIxLCAxODMsIDkyLCAyMTgsIAorICAgIDIyNiwgOTIsIDIyNCwgMjE4LCA5MiwgMjEyLCAyMywgMTUyLCAzNywgNywgNiwgMSwgNjEsIDE1MiwgMzcsIDcsIDYsIDEsIAorICAgIDI1MywgMTU4LCAxNTIsIDM3LCA3LCA2LCAxLCAyNTEsIDY2LCAxNTIsIDM3LCA3LCA2LCAxLCAyNDksIDYwLCAxNTIsIDM3LCAKKyAgICA3LCA2LCAxLCA3NSwgMTUyLCAzNywgNywgNiwgMSwgMjQ1LCA2LCAxNTIsIDM3LCA3LCA2LCAxLCAyNDMsIDIwMiwgMTUyLCAKKyAgICAzNywgNywgNiwgMSwgMjQyLCA2MCwgMTUyLCAzNywgNywgNiwgMSwgNzMsIDE1MiwgMzcsIDcsIDYsIDEsIDIzNSwgMTQ0LCAKKyAgICAxNTIsIDM3LCA3LCA2LCAxLCAyMzUsIDIzLCAxNTIsIDM3LCA3LCA2LCAxLCAxNTYsIDE1MiwgMzcsIDcsIDYsIDEsIDE5MywgCisgICAgMTUyLCAzNywgNywgNiwgMSwgMjMwLCAyNSwgMTUyLCAzNywgNywgNiwgMSwgNzYsIDE1MiwgMzcsIDcsIDYsIDEsIDIyNiwgCisgICAgMTA1LCAxNTIsIDM3LCA3LCA2LCAxLCAyMjQsIDk2LCAxNTIsIDM3LCA3LCA2LCAxLCAxNTMsIDE1MiwgMzcsIDcsIDYsIDEsIAorICAgIDIyMiwgOTEsIDE1MiwgMzcsIDcsIDYsIDEsIDIxNywgMTUyLCAxNTIsIDM3LCA3LCA2LCAxLCA3MCwgMTUyLCAzNywgNywgNiwgCisgICAgMSwgMjE0LCAxMDUsIDE1MiwgMzcsIDcsIDYsIDEsIDIxMiwgOTgsIDE1MiwgMzcsIDcsIDYsIDEsIDIxMSwgMTc4LCAxNTIsIAorICAgIDM3LCA3LCA2LCAxLCAyMTEsIDExNywgMTUyLCAzNywgNywgNiwgMSwgMjEwLCAxNTksIDIyMywgMTU3LCAyMzEsIDk3LCA1MCwgCisgICAgMjIzLCAxNTcsIDIzMSwgOTQsIDUwLCAxNTIsIDkyLCA3LCA2LCAxLCA2MSwgMTUyLCA5MiwgNywgNiwgMSwgMjUzLCAxNTgsIAorICAgIDE1MiwgOTIsIDcsIDYsIDEsIDI1MSwgNjYsIDE1MiwgOTIsIDcsIDYsIDEsIDI0OSwgNjAsIDE1MiwgOTIsIDcsIDYsIDEsIAorICAgIDc1LCAxNTIsIDkyLCA3LCA2LCAxLCAyNDUsIDYsIDE1MiwgOTIsIDcsIDYsIDEsIDI0MywgMjAyLCAxNTIsIDkyLCA3LCA2LCAKKyAgICAxLCAyNDIsIDYwLCAxNTIsIDkyLCA3LCA2LCAxLCA3MywgMTUyLCA5MiwgNywgNiwgMSwgMjM1LCAxNDQsIDE1MiwgOTIsIDcsIAorICAgIDYsIDEsIDIzNSwgMjMsIDE1MiwgOTIsIDcsIDYsIDEsIDE1NiwgMTUyLCA5MiwgNywgNiwgMSwgMTkzLCAxNTIsIDkyLCA3LCAKKyAgICA2LCAxLCAyMzAsIDI1LCAxNTIsIDkyLCA3LCA2LCAxLCA3NiwgMTUyLCA5MiwgNywgNiwgMSwgMjI2LCAxMDUsIDE1MiwgOTIsIAorICAgIDcsIDYsIDEsIDIyNCwgOTYsIDE1MiwgOTIsIDcsIDYsIDEsIDE1MywgMTUyLCA5MiwgNywgNiwgMSwgMjIyLCA5MSwgMTUyLCAKKyAgICA5MiwgNywgNiwgMSwgMjE3LCAxNTIsIDE1MiwgOTIsIDcsIDYsIDEsIDcwLCAxNTIsIDkyLCA3LCA2LCAxLCAyMTQsIDEwNSwgCisgICAgMTUyLCA5MiwgNywgNiwgMSwgMjEyLCA5OCwgMTUyLCA5MiwgNywgNiwgMSwgMjExLCAxNzgsIDE1MiwgOTIsIDcsIDYsIDEsIAorICAgIDIxMSwgMTE3LCAxNTIsIDkyLCA3LCA2LCAxLCAyMTAsIDE1OSwgMjQ5LCAxMjgsIDE1MiwgOTIsIDcsIDYsIDEsIDIyNiwgCisgICAgMTA1LCAxNTIsIDkyLCAyNDAsIDExMywgMTUyLCA5MiwgMTkwLCAxNTIsIDkyLCAyMDYsIDE1MiwgOTIsIDI1NSwgMjUsIAorICAgIDE1MiwgOTIsIDIxMiwgMjMsIDQyLCAyNDcsIDE2NCwgOTIsIDI1MCwgMjMsIDkyLCAyNDksIDE3MCwgOTIsIDI0MywgMjUyLCAKKyAgICA5MiwgMjQwLCAxMDUsIDkyLCAyMjksIDg2LCA5MiwgMjI5LCA3OSwgOTIsIDIyNiwgMjE0LCA5MiwgMjE5LCAzNSwgOTIsIAorICAgIDEyMCwgMiwgMjQ1LCAzMSwgNzgsIDkyLCAyMTMsIDExOSwgMjIzLCAxMDMsIDIzNSwgMjM5LCAxNiwgMSwgNjEsIDIyMywgCisgICAgMTAzLCAyMzUsIDIzOSwgMTYsIDEsIDI1MywgMTU4LCAyMjMsIDEwMywgMjM1LCAyMzksIDE2LCAxLCAyNTEsIDY2LCAyMjMsIAorICAgIDEwMywgMjM1LCAyMzksIDE2LCAxLCAyNDksIDYwLCAyMjMsIDEwMywgMjM1LCAyMzksIDE2LCAxLCA3NSwgMjIzLCAxMDMsIAorICAgIDIzNSwgMjM5LCAxNiwgMSwgMjQ1LCA2LCAyMjMsIDEwMywgMjM1LCAyMzksIDE2LCAxLCAyNDMsIDIwMiwgMjIzLCAxMDMsIAorICAgIDIzNSwgMjM5LCAxNiwgMSwgMjQyLCA2MCwgMjIzLCAxMDMsIDIzNSwgMjM5LCAxNiwgMSwgNzMsIDIyMywgMTAzLCAyMzUsIAorICAgIDIzOSwgMTYsIDEsIDIzNSwgMTQ0LCAyMjMsIDEwMywgMjM1LCAyMzksIDE2LCAxLCAyMzUsIDIzLCAyMjMsIDEwMywgMjM1LCAKKyAgICAyMzksIDE2LCAxLCAxNTYsIDIyMywgMTAzLCAyMzUsIDIzOSwgMTYsIDEsIDE5MywgMjIzLCAxMDMsIDIzNSwgMjM5LCAxNiwgCisgICAgMSwgMjMwLCAyNSwgMjIzLCAxMDMsIDIzNSwgMjM5LCAxNiwgMSwgNzYsIDIyMywgMTAzLCAyMzUsIDIzOSwgMTYsIDEsIAorICAgIDIyNiwgMTA1LCAyMjMsIDEwMywgMjM1LCAyMzksIDE2LCAxLCAyMjQsIDk2LCAyMjMsIDEwMywgMjM1LCAyMzksIDE2LCAxLCAKKyAgICAxNTMsIDIyMywgMTAzLCAyMzUsIDIzOSwgMTYsIDEsIDIyMiwgOTEsIDIyMywgMTAzLCAyMzUsIDIzOSwgMTYsIDEsIDIxNywgCisgICAgMTUyLCAyMjMsIDEwMywgMjM1LCAyMzksIDE2LCAxLCA3MCwgMjIzLCAxMDMsIDIzNSwgMjM5LCAxNiwgMSwgMjE0LCAxMDUsIAorICAgIDIyMywgMTAzLCAyMzUsIDIzOSwgMTYsIDEsIDIxMiwgOTgsIDIyMywgMTAzLCAyMzUsIDIzOSwgMTYsIDEsIDIxMSwgMTc4LCAKKyAgICAyMjMsIDEwMywgMjM1LCAyMzksIDE2LCAxLCAyMTEsIDExNywgMjIzLCAxMDMsIDIzNSwgMjM5LCAxNiwgMSwgMjEwLCAxNTksIAorICAgIDQyLCAxNDEsIDI0MSwgNjMsIDkyLCA1NiwgMjM0LCAxOCwgOTIsIDU2LCAyMDYsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCA1MCwgCisgICAgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDU0LCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgNjIsIDkyLCA1NiwgMjQ4LCA5MCwgOTIsIAorICAgIDksIDIxNCwgMTc3LCAyMzgsIDY5LCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgNTYsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCAyOCwgCisgICAgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDU1LCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgNjgsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCAKKyAgICA0MiwgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDM1LCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgNDQsIDkyLCA5LCAyMTQsIDE3NywgCisgICAgMjM4LCA2NSwgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDUxLCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgNjcsIDkyLCA5LCAyMTQsIAorICAgIDE3NywgMjM4LCA0MywgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDY2LCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgMjksIDkyLCA5LCAKKyAgICAyMTQsIDE3NywgMjM4LCAzNCwgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDI3LCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgNTcsIAorICAgIDkyLCA5LCAyMTQsIDE3NywgMjM4LCA1OSwgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDM3LCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgCisgICAgNDgsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCA0NiwgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDcyLCA5MiwgOSwgMjE0LCAxNzcsIAorICAgIDIzOCwgNzEsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCAyNSwgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDUyLCA5MiwgOSwgMjE0LCAKKyAgICAxNzcsIDIzOCwgNzAsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCA2MSwgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDQ3LCA5MiwgOSwgCisgICAgMjE0LCAxNzcsIDIzOCwgMjYsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCA0OSwgOTIsIDksIDIxNCwgMTc3LCAyMzgsIDMxLCAKKyAgICA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgMzAsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCA2MCwgOTIsIDksIDIxNCwgMTc3LCAyMzgsIAorICAgIDM4LCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgNDAsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCA0MSwgOTIsIDksIDIxNCwgMTc3LCAKKyAgICAyMzgsIDMzLCA5MiwgOSwgMjE0LCAxNzcsIDIzOCwgNjQsIDkyLCA5LCAyMTQsIDE3NywgMjM4LCA1OCwgMjE2LCA2LCAyMjAsIAorICAgIDUzLCAyNTEsIDE1NywgOSwgMjE0LCAxNzcsIDIzOCwgMzksIDIxNiwgNiwgMjIwLCA1MywgMjUxLCAxNTcsIDksIDIxNCwgCisgICAgMTc3LCAyMzgsIDcxLCAyMTYsIDYsIDIyMCwgNTMsIDI1MSwgMTU3LCA5LCAyMTQsIDE3NywgMjM4LCA2OSwgMjE2LCA2LCAKKyAgICAyMjAsIDUzLCAyNTEsIDE1NywgOSwgMjE0LCAxNzcsIDIzOCwgNTMsIDIxNiwgNiwgMjIwLCA1MywgMjUxLCAxNTcsIDksIAorICAgIDIxNCwgMTc3LCAyMzgsIDM2LCAyMTYsIDYsIDIyMCwgNTMsIDI1MSwgMTU3LCA5LCAyMTQsIDE3NywgMjM4LCA0OSwgMjE2LCAKKyAgICA2LCAyMjAsIDUzLCAyNTEsIDE1NywgOSwgMjE0LCAxNzcsIDIzOCwgMzIsIDIxNiwgNiwgMjIwLCA1MywgMjUxLCAxNTcsIDksIAorICAgIDIxNCwgMTc3LCAyMzgsIDYzLCAyMTYsIDYsIDIyMCwgNTMsIDI1MSwgMTU3LCA5LCAyMTQsIDE3NywgMjM4LCA0NSwgMzcsIAorICAgIDE1NCwgMjU0LCAyNDUsIDM3LCAxNTQsIDI1NSwgMTIsIDI0OSwgNzEsIDI0NCwgNDIsIDI1MCwgMCwgMjE0LCAxOTQsIDIyOCwgCisgICAgMjEzLCAyLCAyMTgsIDE1MywgMjE4LCAzMywgMTE3LCAyMzAsIDExNCwgMjE4LCAzMiwgMjUwLCAyNiwgMjUzLCAyMDcsIAorICAgIDI0NiwgNTQsIDIxOCwgMzEsIDExNywgMjUxLCAxMTgsIDIyMywgMTU4LCAyNTEsIDE0MCwgMjUzLCAyMDcsIDIyOCwgMjEyLCAKKyAgICAyMTIsIDQxLCAyMTIsIDM1LCAyMTMsIDEzMSwgMjMwLCAxOTUsIDIxMiwgMjUsIDI0NSwgMjI0LCAyNDIsIDE4MSwgMjQ1LCAKKyAgICA0NSwgMjQ1LCAyMjQsIDI0MiwgMTgxLCAyNTQsIDEyOCwgMjQ1LCAyMjQsIDI0MiwgMTgxLCAyNTMsIDIyNSwgMjQyLCAxODEsIAorICAgIDIsIDIzMSwgNTEsIDE2NiwgMjMwLCAxMjksIDg3LCAyMTIsIDI3LCAyNDksIDEzNywgMjMwLCAxMjksIDg3LCAyNDQsIDkyLCAKKyAgICAyMjQsIDIyLCAyMzAsIDEyOSwgODcsIDIxMiwgMjcsIDI0MiwgMjEwLCAyMzAsIDEyOSwgODcsIDI0MywgMjI5LCAyMzAsIAorICAgIDEyOSwgODcsIDIxMiwgNTIsIDI0MiwgMjEwLCAyMzAsIDEyOSwgODcsIDIzMywgODAsIDIyNCwgMjIsIDIzMCwgMTI5LCA4NywgCisgICAgMjEyLCA1MiwgMjQ5LCAxMzcsIDIzMCwgMTI5LCA4NywgMjQ5LCAxMzcsIDIzMCwgMTI4LCAxNjYsIDIzMCwgMTI5LCAyLCAKKyAgICAyNDQsIDE5MCwgMjQ0LCA5MiwgMjI0LCAyMiwgMjMwLCAxMjksIDIsIDI0NCwgMTkwLCAyMzMsIDgwLCAyMjQsIDIyLCAyMzAsIAorICAgIDEyOSwgMiwgMjQ0LCAxOTAsIDI0MywgMjI5LCAyMzAsIDEyOSwgMiwgMjQ0LCAxOTAsIDIxOCwgMzgsIDIsIDI0NCwgMTkwLCAKKyAgICAyNDIsIDE3OSwgMjE4LCAxNTYsIDIxOSwgMjU1LCAyMTgsIDE1NiwgMjUwLCAxMTYsIDIyMSwgMTY4LCAyNDUsIDM5LCAyMTUsIAorICAgIDIzNSwgMjQ4LCA4NCwgMjE1LCAyMzUsIDIyNiwgNTksIDIxNSwgMjM1LCAyNTEsIDI3LCAyMTUsIDEwOSwgMjUwLCAxMTgsIAorICAgIDI1MSwgMjEwLCAyMjIsIDE5MSwgMjQxLCAxNzksIDIxOCwgMzYsIDI1MSwgMjEwLCAyNDUsIDIyOCwgNjQsIDIzMSwgMTk0LCAKKyAgICAyNDUsIDIyOCwgNjQsIDIyMywgMzEsIDI0MSwgMjA0LCAyNDQsIDExLCAyMzMsIDU0LCAyNDksIDI0NiwgMjMxLCAxNzAsIAorICAgIDIzMywgNTMsIDI0NCwgMTc2LCAyMzMsIDUzLCAyMzMsIDU0LCAyNDQsIDQ3LCAyMzYsIDAsIDIxMSwgMjM5LCAyMzAsIDU4LCAKKyAgICAyMTYsIDM0LCAyNTMsIDE5MSwgMjQyLCAxNDMsIDIzMSwgNjcsIDIxMiwgMzksIDIxNywgNTcsIDIzMywgMjYsIDI1MiwgCisgICAgMTQ5LCAyMjUsIDYyLCAyMjMsIDExMSwgMjU0LCA1NCwgMjQyLCAxMjcsIDI1NCwgNTQsIDIyNSwgMjE3LCAyMjUsIDIxOCwgCisgICAgMjUwLCAxMTksIDIxOCwgMTE0LCAyNDIsIDIzLCAyMTksIDkwLCA2NCwgMjI1LCA0NCwgMjMxLCA4NywgMjI2LCAxOTcsIAorICAgIDI1MSwgMTk0LCAyMjQsIDIyOSwgMjMzLCAzNiwgMjIzLCAzMiwgMjQ5LCAxNDIsIDIyMywgMzIsIDI1MiwgMTU5LCAyNDksIAorICAgIDE3MywgMjIzLCAzMSwgMjQ5LCA5NSwgMjIsIDIyMywgMzEsIDIxOCwgMTQxLCAyNTEsIDE2NywgMjE5LCAxNCwgMjUxLCAKKyAgICAxNTEsIDI0MywgMjUxLCAyNDMsIDI0NywgMjIyLCAyMDcsIDIxNywgMjQ2LCAyMjQsIDIzMSwgMjQ4LCAxNzUsIDIyNiwgCisgICAgMjM2LCAyMTgsIDcsIDI0MywgMjQ4LCAyMTksIDIzMCwgMjQ0LCA5MSwgMjUxLCAyMSwgMiwgMjE3LCAyMzksIDI0OCwgMzUsIAorICAgIDIxOSwgNTIsIDI0MCwgMTEyLCAyNDksIDE0MSwgMjIwLCA3MCwgMjQwLCAxMTEsIDI0MCwgMTEyLCAyNDksIDE0MSwgMjQ2LCAKKyAgICAxMDgsIDI0OSwgMTcyLCAyNTAsIDg0LCAxMzAsIDI1MCwgMjU0LCAyMzIsIDE0MSwgMjQ5LCA4OCwgMjQxLCA1NSwgMjI0LCAKKyAgICAyMzMsIDIxOSwgMjQwLCAyNTIsIDM2LCAyNTEsIDE2MywgMjI0LCAyMzQsIDY0LCAyNDQsIDMzLCAyNDksIDE3MSwgMjQ0LCAKKyAgICAyNCwgMjIsIDIzNCwgMzIsIDIxNywgMTksIDIxMSwgMjMwLCAyNDIsIDEzLCAyMjIsIDEyLCAyNTEsIDE3NywgMjIsIDI0OSwgCisgICAgMTAyLCAyMTEsIDIzNywgMjQyLCAxODQsIDI0OSwgMjM1LCAyNDIsIDE4NCwgMjE1LCAxOTMsIDI0NiwgOTAsIDI1MiwgNjIsIAorICAgIDIzMCwgOTMsIDI1MCwgNywgMjUyLCA2MiwgMjMwLCA5MiwgMjUyLCAxODcsIDI1MSwgMTc2LCAyMjMsIDMzLCAyMTEsIDIwMSwgCisgICAgMjI0LCAxOTUsIDI1MSwgMjM1LCAyNTEsIDIwLCAyMzUsIDEzOCwgMjUwLCA3NywgMjE1LCAyMzUsIDI0NCwgMTYyLCAyNTAsIAorICAgIDc2LCAyNDQsIDk0LCAyNDQsIDk1LCAyMTksIDEyLCAyNTIsIDE1OCwgMjI1LCAyNTAsIDIyNCwgMjQ0LCAyNDksIDIwNCwgCisgICAgMjUyLCAxNTksIDIxNywgNTksIDIxNSwgMjM1LCAyNDksIDEyOCwgMjQ0LCA2NywgMjI1LCA2MywgMjQ4LCA4MSwgMjM1LCAKKyAgICAxMzEsIDI0NywgMTMxLCAyNTAsIDIzMiwgMjE4LCAxMTMsIDIxMSwgMjQwLCAyNTAsIDk4LCAyMzAsIDEyOSwgMjEzLCAxNjQsIAorICAgIDI1MCwgMTYyLCAyMjEsIDE5OSwgMjIxLCAyMjQsIDI0MiwgMTQ4LCAyNTAsIDI1MSwgMjUwLCAyMzMsIDI0MCwgMjQ1LCAKKyAgICAyNDQsIDEzMCwgMjEyLCAwLCAyMjIsIDIwMCwgMjQ5LCAyMzYsIDI0NCwgODYsIDIyNSwgMiwgMjIsIDI0NCwgOTAsIDIzMCwgCisgICAgMjI3LCAyMzAsIDEwOCwgMjUxLCAxMCwgMjUwLCAzOSwgMjQxLCAyMzIsIDI1MywgMjQxLCAyMjYsIDYyLCAyMTYsIDE0LCAKKyAgICAyNDEsIDI1MSwgMjUwLCAyOSwgMjE2LCAyNDIsIDIxNiwgMTEzLCAyNTAsIDIwLCAyNTEsIDIwMiwgMjI1LCAxNzcsIDI1MywgCisgICAgMjQwLCAyMTMsIDE3MiwgMjQzLCAxMTAsIDI0NywgMTk3LCAyNDEsIDE1NiwgMjE5LCA4NCwgMjMxLCAyMzQsIDI1MSwgMjQ1LCAKKyAgICAyNDMsIDExMSwgMjQ3LCAyNDAsIDI1MSwgMTY2LCAyNDQsIDUyLCAyMjUsIDMzLCAyNTAsIDI0MSwgMjgsIDIyOCwgNDcsIAorICAgIDIzMCwgODUsIDI4LCAyMjgsIDQyLCAyMjEsIDIxMiwgMjQyLCA5OSwgMjgsIDIzNCwgMTM3LCAyMTUsIDE5MCwgMjEzLCAKKyAgICAxNTQsIDI4LCAyMjEsIDE5MiwgMjIyLCAxMjQsIDIyMCwgMTEsIDIsIDIyMSwgMjI3LCAyMTYsIDI0NCwgMjIzLCAxNzgsIAorICAgIDIyLCAyNTIsIDE1OSwgMjE5LCAxMDUsIDIyLCAyMTksIDEwNSwgMjUxLCAxODcsIDI1MiwgMTIzLCAyMiwgMjQxLCA0OSwgCisgICAgMjUwLCAxMjAsIDI0NCwgNzMsIDIxOSwgNjMsIDIyMiwgMTI1LCAyMTgsIDEyLCAyMTUsIDE5NCwgMjQwLCAyNDYsIDIyMywgCisgICAgMTc5LCAyNTQsIDEyOSwgMjQ0LCAzMSwgMjIyLCAxMzYsIDI0NCwgMzEsIDIxNywgMjQxLCAyNDAsIDIzNSwgMjUxLCAxMTksIAorICAgIDI0MCwgMjM1LCAyLCAyNDMsIDk0LCAyMjYsIDIyOSwgMjUxLCAxMTksIDIzNSwgMTMxLCAyMjQsIDIzOSwgMjI2LCAyMjgsIAorICAgIDI0NSwgNDQsIDIyNCwgMjM5LCAyMjYsIDIyOCwgMjQwLCAyNDQsIDI1MiwgMTQ1LCAyNTMsIDE4MSwgMjE2LCAyNTIsIDIzMSwgCisgICAgMjM0LCAyNDAsIDI0MCwgMjMyLCAxMTEsIDI0MCwgMjQwLCAyNDksIDE3NiwgMjE4LCAxMjUsIDIyMSwgMTk4LCAyNDgsIDQzLCAKKyAgICAyMTgsIDEyNSwgMjQ0LCAxODAsIDIzNSwgMTQ5LCAyMzMsIDg5LCAyMzUsIDEzMSwgMjUwLCAyMjYsIDI0NSwgNDQsIDI1MCwgCisgICAgMjI2LCAyMjMsIDE0MSwgMjMwLCAxMTIsIDIyNiwgMTE0LCAyMTIsIDQxLCAyNTEsIDEyMywgMjQ5LCAxNDUsIDIxNiwgMTA2LCAKKyAgICAyMzMsIDE4LCAyMjMsIDE4MCwgMjUwLCAyMjQsIDI0NiwgOTYsIDI0OSwgMTM1LCAyMTIsIDMsIDIxOSwgNzAsIDIxOSwgNjgsIAorICAgIDI0MCwgMjQ1LCAyMjMsIDE1MywgMjQyLCAxNzAsIDIyMCwgNTcsIDIzMCwgMTQ1LCAyMjIsIDE5NCwgMjUwLCAxMDgsIDI0NywgCisgICAgMTM2LCAyMjUsIDczLCAyNTEsIDIwMywgMjQ1LCAxNjksIDIyNiwgMjM4LCAyMTgsIDI1MiwgMjIwLCA1MiwgMjUxLCAxMjIsIAorICAgIDI1NCwgOTIsIDI0MSwgNTQsIDIzMywgMTIxLCAyNTIsIDYwLCAyNDQsIDkwLCAyMTUsIDE5MywgMjQ0LCA5MCwgMjUxLCAKKyAgICAyMDksIDIxNSwgOTEsIDI0MSwgMjQ5LCAyNTAsIDEwOSwgMjUyLCAxODcsIDI1MCwgMTA5LCAyNDMsIDI0MiwgMjUyLCAxODcsIAorICAgIDI1MCwgMTA5LCAyNTEsIDIzNywgMjI1LCAxOTUsIDIzNCwgMjYsIDIyNCwgMjQ4LCAyNDYsIDg3LCAyNTEsIDExLCAyNTIsIAorICAgIDE3NywgMjUxLCAxMSwgMjQ3LCAxMzAsIDIzMCwgMTEzLCAyNDQsIDE5MCwgMjQ5LCAxNDYsIDI0NCwgMTkwLCAyMTYsIDEwNywgCisgICAgMjQ0LCAxOTAsIDIyMywgMTgxLCAyNDQsIDE5MCwgMjUwLCAyMjUsIDI0NCwgMTkwLCAyNDYsIDk3LCAyNDQsIDE5MCwgMjE4LCAKKyAgICAyNDEsIDIxMiwgMywgMjQwLCAyNDYsIDI0NCwgMTkwLCAyMzAsIDE0NiwgMjQ0LCAxOTAsIDI0NywgMTM3LCAyNDQsIDE5MCwgCisgICAgMjI1LCA3NCwgMjQ0LCAxOTAsIDI0MywgMjQ1LCAyNDQsIDE5MCwgMjQyLCAyMCwgMjQ0LCAxOTAsIDIxMSwgMjI0LCAyNDQsIAorICAgIDE5MCwgMjUyLCA3MSwgMjQ0LCAxOTAsIDIyNiwgNDUsIDI0NCwgMTkwLCAyMjUsIDc0LCAyMjgsIDUzLCAyMjUsIDIzMiwgCisgICAgMjI0LCAxODYsIDI0NSwgMTMsIDI0NSwgMjI3LCAyMjgsIDUzLCAyMzAsIDExMCwgMjE2LCAxOSwgNzEsIDEyMCwgMjI1LCA3LCAKKyAgICAyNTIsIDE4MiwgMjM1LCAyNDIsIDcxLCAxMjQsIDIyNSwgNywgMjUyLCAxODIsIDIzNSwgMjQyLCA3MSwgNDMsIDIyNSwgNywgCisgICAgMjUyLCAxODIsIDIzNSwgMjQyLCA3MSwgNDQsIDIyNSwgNywgMjUyLCAxODIsIDIzNSwgMjQyLCAyNDQsIDg0LCAyNDIsIDE2LCAKKyAgICA1MCwgMjEyLCAzMywgMjQyLCAxNiwgNTAsIDIyNiwgMjE1LCAyNDIsIDE2LCA1MCwgMjE2LCAxMzUsIDEyMCwgNTAsIDIxNiwgCisgICAgMTM1LCAxMjQsIDUwLCAyNTAsIDE5LCAyNDIsIDExLCA1MCwgMjA0LCAyNDIsIDExLCA1MCwgMjQ5LCAxMjMsIDIxMSwgMjIwLCAKKyAgICAyNDEsIDI1MSwgMjQ1LCAxNCwgMjI5LCAxMDQsIDIxNywgMTUxLCAyMzUsIDEyNSwgMjQ2LCA5MiwgMjM0LCA4MiwgMjUxLCAKKyAgICAyNDcsIDIxMSwgMjIwLCAyNDksIDI0OSwgMjI0LCAxMjcsIDI0MiwgMTQsIDIyNCwgMjMwLCAyMzEsIDE3NywgMjIwLCA0LCAKKyAgICAyNTMsIDIwMywgMjIwLCA0LCAyNDEsIDE2NCwgMjIwLCA0LCAyMTEsIDIyMCwgMjIxLCAyNDAsIDIxMSwgMjIwLCAyNTEsIAorICAgIDE4NiwgMjQ0LCAyOSwgMjUxLCA5MCwgMjM2LCAwLCAyMTksIDE2OSwgMjUxLCA4OSwgMjM2LCAwLCAyMTksIDE2OSwgMjUxLCAKKyAgICAxNjIsIDI0MiwgMTk0LCAyMzEsIDE4NSwgMjExLCAyMjEsIDI0NCwgMTc0LCAyMzEsIDE4NiwgMjIsIDIxMSwgMjIyLCAyNDEsIAorICAgIDYwLCAyNDIsIDEwLCAxMTMsIDIzMSwgNTksIDI0MSwgNjAsIDI0MiwgMTAsIDExMywgMjExLCAyMTksIDI0MSwgNjAsIDI0MiwgCisgICAgMTAsIDIyNCwgMjU1LCAyMjYsIDIyNywgMjExLCAyMjIsIDIsIDI1MSwgMTA2LCAyNDUsIDIyNSwgMjUxLCAxNDEsIDIsIAorICAgIDIxMywgMjQ2LCAyMjUsIDE2OCwgMiwgMjUxLCAyMTIsIDI0MiwgMzQsIDIzMSwgMTg2LCAyLCAyNDIsIDExMCwgMjI1LCAKKyAgICAxMDksIDIzMSwgMTc0LCAyMzEsIDE4NiwgMiwgMjE1LCA5NywgMjI2LCAyMDgsIDIzMSwgMTg1LCAyMjYsIDIwOCwgMjExLCAKKyAgICAyMjEsIDI1MiwgMTg2LCAyNDksIDE5MCwgMjExLCAyMDUsIDIyNCwgMTg5LCAyMzUsIDEzMSwgMjI2LCAyMjMsIDIzNSwgCisgICAgMTMxLCAyNDIsIDE2OSwgMjQyLCAyMjIsIDI1MiwgMTg3LCAyNTQsIDExMywgMjQ1LCAxOCwgMjU0LCAxNjAsIDI1NCwgMTYxLCAKKyAgICAyMzAsIDEzNiwgMjM2LCA1LCAyMTksIDEwMCwgMjM1LCAyMzIsIDI0OCwgMzQsIDIyNSwgMTY3LCAyNDIsIDEwNSwgMjQ4LCAKKyAgICAxNzksIDIzMiwgMjAxLCAyMjksIDIxMSwgMjI0LCAyNTQsIDI0NCwgMTkxLCAyMzEsIDE0MiwgMjQyLCAzMywgMjUyLCAxMzgsIAorICAgIDIyNSwgMSwgMjE3LCAxNzEsIDIyNSwgNjYsIDIzNCwgNjQsIDc4LCAyMzIsIDExMSwgMjMzLCAxMCwgMjIyLCAyMzMsIDI0MywgCisgICAgNTQsIDIxOCwgMTMxLCAyMzQsIDYzLCAyNTEsIDE3MSwgMjQ5LCAxNDgsIDIsIDI0MSwgMjI3LCAyMTIsIDE5LCAyNTIsIDY5LCAKKyAgICAyNDEsIDIyNywgMjUxLCAxMzUsIDI0MSwgMjI3LCAxMTMsIDI0MSwgMjI1LCAyMTksIDEwLCAyNDEsIDIyNywgMjQyLCAxMjAsIAorICAgIDI0MSwgMjI3LCAyNDEsIDIyOCwgMiwgNzQsIDI1MSwgMjA4LCAyNDEsIDIyNywgMjQyLCAxMjcsIDI0MSwgMjI3LCAyMTEsIAorICAgIDQyLCAyNDEsIDIyNywgMjI0LCAxMjgsIDI0MSwgMjI3LCAyNDEsIDIyOCwgMiwgMjIzLCAzMywgMjIzLCA0NCwgMjQxLCAKKyAgICAyMjUsIDI0MSwgMjI4LCAyNDgsIDgxLCAyNDcsIDI0OSwgMjIwLCA4MiwgMiwgMTE1LCA1OSwgMjM1LCAyMTUsIDI0NSwgCisgICAgMTcyLCAxOTIsIDI1MSwgMTE2LCAyNTQsIDExMiwgODcsIDI1MSwgMTk1LCAyMTksIDkyLCA4NywgMjQ5LCAyMjgsIDg3LCAKKyAgICAyMTgsIDI0NiwgMjE3LCAyNDgsIDg3LCAyNDYsIDg1LCAyNDgsIDE1NywgODcsIDIyNSwgNjcsIDY0LCAyMjQsIDI0OSwgCisgICAgMjQ0LCA2MSwgMjUyLCAzLCAyNDcsIDE2NSwgODcsIDIxOSwgMywgMjUyLCAxNTgsIDIxNiwgMTQ5LCAyNTIsIDE1OCwgNzEsIAorICAgIDI0NCwgNTEsIDI0MCwgMjExLCAyMjUsIDUsIDg3LCAyMzAsIDE0OSwgMjUyLCAxNzIsIDI0OSwgOTgsIDI0NSwgMzIsIDExNCwgCisgICAgMjQ3LCAxMzIsIDUwLCAyNDksIDEzOSwgMjUwLCAyNDIsIDI1MiwgMTQ0LCAyLCAyMTEsIDQwLCA1MCwgMjUyLCAxNDQsIDIsIAorICAgIDI0NywgMTMyLCA1MCwgMjUyLCAxNDQsIDIsIDI0NSwgNDcsIDUwLCAyNTIsIDE0NCwgMiwgMjI0LCAyMjgsIDUwLCAyMzAsIAorICAgIDE0OSwgMiwgMjExLCAyMzUsIDI1MCwgMTM4LCAyLCAyMTQsIDE1MywgMjE1LCAyMzEsIDIyLCAyMTEsIDQwLCA1MCwgMjIxLCAKKyAgICAxNzgsIDIyNSwgMTY2LCAyNDksIDIwOCwgMjUxLCAxMzksIDIzMCwgMTg2LCAyNDQsIDU2LCAyNDcsIDE4NSwgMjI2LCAxNjEsIAorICAgIDI0NywgMTkwLCAyNDYsIDQ5LCAyNDQsIDEwNywgMjQ0LCA0MCwgMjA0LCAyNDQsIDEwNywgMjQ0LCA0MCwgMjI2LCA3NiwgMiwgCisgICAgMjQ5LCAxMDAsIDIyNiwgNzYsIDI0NCwgMTgzLCAyMTQsIDE2MywgMjUxLCAxNiwgMjE3LCAxOCwgMjUxLCAxNiwgMjUwLCAKKyAgICAyNDMsIDIzNSwgMjQyLCAyNTAsIDEzOCwgMiwgMjE0LCAxNTMsIDIxNSwgMjMwLCAyNTAsIDEzOCwgMiwgMjQ2LCAxMDQsIAorICAgIDIxNSwgMjMwLCAyNTIsIDE0MSwgMjUwLCAxMzcsIDI1MCwgNiwgMjI0LCAxMjMsIDIyMiwgMTg1LCAyMjQsIDEyMywgMjI2LCAKKyAgICAxOSwgMjE4LCAxMjEsIDIyMiwgMTMxLCAyMTUsIDIyMiwgMjIyLCAxMzEsIDI1MSwgMTkxLCAyMTcsIDkxLCAyMzMsIDUxLCAKKyAgICAyMjgsIDQ1LCAyMjgsIDQ2LCAyLCAyNDgsIDgwLCAyNDksIDE0NywgMjUwLCAwLCAyNTEsIDE5MiwgMjA0LCAyNTEsIDE5MiwgCisgICAgMjQyLCAxMjcsIDI1MSwgMTkyLCAyNTEsIDIwOCwgMjUxLCAxOTIsIDIyNiwgMTU3LCAyNTEsIDE5MiwgMjUxLCAxODksIAorICAgIDIyOSwgMjA1LCAyNTIsIDE3NSwgMjIxLCAxODYsIDIzMSwgNjAsIDIxNywgMSwgMjIzLCAxMjMsIDIyNiwgNzQsIDI0NCwgCisgICAgMTU5LCAyMzEsIDIzNCwgMjIxLCAyMjMsIDI1NCwgODksIDIyNCwgMTQ1LCAyNTQsIDI1MiwgMjMyLCAxMTMsIDI1MCwgMTI3LCAKKyAgICAyMzEsIDcyLCAyMjYsIDEyOSwgMjE1LCAyMzgsIDIzNSwgMjUyLCAyMTUsIDIzOCwgMjI2LCA4MiwgMjQ2LCAyNCwgODcsIAorICAgIDIzNSwgMjQ5LCAyNDUsIDExOSwgMjQ1LCAxMjAsIDIsIDI0NiwgMTA0LCA4MCwgNDgsIDI1MCwgMCwgMjMxLCAyMDAsIDIsIAorICAgIDIzMiwgMTA3LCAyNDQsIDczLCAyNTAsIDAsIDIzMSwgMjAwLCAyLCAyMjMsIDE1NywgMjQ0LCA3MywgMjA0LCAyMzEsIDIwMCwgCisgICAgMiwgMjIzLCAxNTcsIDI0NCwgNzMsIDIwNCwgMjMxLCAyMDAsIDIsIDIzMiwgMTA3LCAyNDQsIDczLCAyMjQsIDIzNiwgMjI0LCAKKyAgICAyMzcsIDI0MCwgMjQ4LCAyMjksIDg0LCAyMzAsIDE1OSwgMjI1LCAxMTcsIDIzMCwgMTU5LCAyMjUsIDExOCwgMiwgOTcsIAorICAgIDgwLCAyNTMsIDIwNywgMjMzLCA0NiwgMjEzLCAxNzUsIDIzMCwgMTU4LCAyMzAsIDE1OSwgMjI1LCAxMTgsIDIyNiwgMjMwLCAKKyAgICAyMjgsIDc1LCAyMzAsIDE1OSwgMjI1LCAxMTYsIDI1NCwgOTAsIDIsIDI1MiwgMTI5LCAyNTEsIDEwLCAyMTMsIDE3MiwgCisgICAgMjUxLCAxMCwgMjE2LCAyNTQsIDIyMywgMTczLCAyMTMsIDE3MSwgMjE1LCA2MCwgOTcsIDI1MywgMjQ3LCAyNTAsIDIsIDk3LCAKKyAgICAyMiwgMTQwLCAyMDQsIDI1MCwgMzYsIDI1MywgMjQ3LCAyNTAsIDIsIDk3LCAyMiwgMTQwLCAyMDQsIDI1MCwgMzYsIDI1MywgCisgICAgMjQ4LCAyLCAzNywgMTIzLCAyMjYsIDEyMCwgMjUwLCAyLCAyNDYsIDEwNCwgMjIsIDIxNCwgMTUzLCAyMDQsIDI1MCwgMzYsIAorICAgIDI1MywgMjQ3LCAyNTQsIDg4LCAyNDYsIDEwNCwgMjIsIDIxNCwgMTUzLCAyMDQsIDI1MCwgMzYsIDI1MywgMjQ3LCAxMjEsIAorICAgIDI1MSwgMTM4LCA4NywgMTI1LCAyNTEsIDEzOCwgODcsIDIxOSwgNywgMiwgMjUxLCA0LCA5MSwgMjE5LCA2LCAyMTksIDcsIAorICAgIDIsIDEyMywgMjE5LCAzMSwgMjEyLCAzNSwgMjE5LCA3LCAyLCAxMzQsIDIxOSwgMzEsIDIxMiwgMzQsIDI1MiwgMTE1LCAKKyAgICAyNDUsIDE3MiwgMjI1LCAyNywgMjMzLCA0MiwgMjMxLCAyMTEsIDI0MiwgMTg0LCAyMjIsIDI0NywgMjMxLCAyMTEsIDI0MiwgCisgICAgMTg0LCAyMzIsIDE1MiwgMiwgMjM1LCAyMjUsIDIyNSwgMTk5LCAyNTAsIDAsIDIzMiwgMTUyLCAyLCAyMzQsIDEzOCwgMjM0LCAKKyAgICAxMzgsIDIzMiwgMTUxLCAyMDQsIDIzMiwgMTUxLCAyNTIsIDQ0LCAyNTIsIDQ1LCAyLCAyNTEsIDQsIDkxLCAyNTEsIDE5MCwgCisgICAgMjMyLCAyMDQsIDg3LCAyMjMsIDE3NCwgMjUxLCA4NiwgMjUyLCAxODUsIDIsIDE0MCwgODAsIDQ4LCAyNDUsIDE0MywgMiwgCisgICAgMTQwLCA4MCwgNDgsIDIyNiwgMTk3LCAyLCAyNDUsIDMxLCAxNjQsIDIsIDQzLCA0NCwgODAsIDQ4LCAyMTksIDM5LCAyLCAKKyAgICA5NywgODAsIDQ4LCAyMTYsIDE0LCAyLCAyMTQsIDE1MywgODAsIDQ4LCAyMjgsIDc1LCAxMjMsIDIxNCwgMTg0LCAyNDUsIAorICAgIDE5MSwgODcsIDIzNCwgMTM2LCAyMTYsIDI0NywgMjM1LCAyMTksIDE2LCAzMSwgNywgNiwgMjMzLCA5LCAyMzUsIDIxOSwgCisgICAgMTYsIDMxLCA3LCA0LCAyMzMsIDksIDIzNSwgMjE5LCAxNiwgMzEsIDIyNywgMTk5LCAyMzUsIDIxOSwgMTYsIDMxLCAyMTcsIAorICAgIDE4MywgMjM1LCAyMTksIDE2LCAzMSwgNywgMjMzLCA5LCAyNDQsIDk2LCAyNDUsIDE3MiwgMjE2LCA5LCAyMTEsIDE5OSwgCisgICAgMjQyLCAyMSwgMjI3LCAxODIsIDIyLCAyNTEsIDE5NywgMjQxLCA2NiwgMjI1LCA1MCwgMjMwLCAyMjYsIDIxNiwgMjU1LCAKKyAgICAyNDksIDExNCwgMjUyLCAxNTksIDIxOSwgMTI1LCAyMjUsIDksIDIxOCwgMTU3LCAyLCAyMzAsIDIyNCwgMjQ3LCAxMjAsIAorICAgIDIzNSwgMTMxLCAxNiwgMzEsIDI1MiwgNTcsIDIxNSwgMjIwLCAyNDUsIDE1NiwgODUsIDQyLCAyNTEsIDg2LCA3MSwgNDIsIAorICAgIDI1MSwgODYsIDIzMywgODUsIDIyMywgMTExLCAyNTAsIDM1LCAyMzMsIDg1LCAyNTEsIDIwOCwgMjUwLCAzNSwgMjMzLCA4NSwgCisgICAgMjI2LCAxNTcsIDI0NywgMjQ4LCAyMzMsIDg1LCAyNTEsIDIwOCwgMjQ3LCAyNDgsIDQsIDIyNiwgMTU3LCAyNDcsIDI0OCwgCisgICAgNCwgMjUxLCAyMDgsIDI0NywgMjQ4LCAyMTQsIDE2MiwgMjIzLCAxMTEsIDIxNSwgMjI1LCAyNDYsIDEwNSwgMjIzLCAxMTEsIAorICAgIDIxNSwgMjI1LCAyMTQsIDE2MiwgNCwgMjIzLCAxMTEsIDIxNSwgMjI1LCAyNDYsIDEwNSwgNCwgMjIzLCAxMTEsIDIxNSwgCisgICAgMjI1LCAzNywgMjQ5LCAxMzEsIDIyNCwgMjUyLCAyNDksIDEzMSwgMjI0LCAyNTMsIDIsIDI0MiwgMjYsIDUxLCAyNDksIAorICAgIDEzMSwgMjI0LCAyNTIsIDIyOCwgNDksIDQzLCAyMjAsIDE1MywgMiwgMTM0LCAyNDcsIDExOCwgMjUwLCA0LCAyNDQsIDE5MSwgCisgICAgMTIzLCAyMjYsIDI0MiwgMjUwLCA0LCAyNDQsIDE5MSwgMTEzLCAyMjYsIDI0MiwgMjUwLCA0LCAyNDQsIDE5MSwgMTM0LCAKKyAgICAyMjYsIDI0MiwgMjUwLCA0LCAyNDQsIDE5MSwgMjQ0LCAxMSwgMjI2LCAyNDIsIDI1MCwgNCwgMjQ0LCAxOTEsIDI0NCwgODEsIAorICAgIDIyNiwgMjQyLCAyNTAsIDQsIDI0NCwgMTkxLCAyMTksIDEyNSwgMjI2LCAyNDIsIDI1MCwgNCwgMjQ0LCAxOTEsIDIyMCwgCisgICAgMTIyLCAyMjYsIDI0MiwgMjUwLCA0LCAyNDQsIDE5MSwgMjQ1LCAxOTMsIDIyNiwgMjQyLCAyNTAsIDQsIDI0NCwgMTkxLCAKKyAgICAyMjgsIDIwMCwgMjI2LCAyNDIsIDI1MCwgNCwgMjQ0LCAxOTEsIDIxNiwgMjQ4LCAyMjYsIDI0MiwgMjUwLCA0LCAyNDQsIAorICAgIDE5MSwgMjQ1LCAxNjgsIDIyNiwgMjQyLCAyNTAsIDQsIDI0NCwgMTkxLCAyMTUsIDc3LCAyMjYsIDI0MiwgMjUwLCA0LCAKKyAgICAyNDQsIDE5MSwgMjI2LCAxOTIsIDI1MCwgNCwgMjQ0LCAxOTEsIDIxNSwgNTYsIDI1MCwgNCwgMjQ0LCAxOTEsIDIxNiwgCisgICAgMTQwLCAyNTAsIDQsIDI0NCwgMTkxLCAyNDQsIDcsIDI1MCwgNCwgMjQ0LCAxOTEsIDI0NCwgNzksIDI1MCwgNCwgMjQ0LCAKKyAgICAxOTEsIDIxOSwgMTIxLCAyNTAsIDQsIDI0NCwgMTkxLCAyMjAsIDEyMSwgMjUwLCA0LCAyNDQsIDE5MSwgMjQ1LCAxOTIsIAorICAgIDI1MCwgNCwgMjQ0LCAxOTEsIDIyOCwgMTk5LCAyNTAsIDQsIDI0NCwgMTkxLCAyMTYsIDI0NiwgMjUwLCA0LCAyNDQsIDE5MSwgCisgICAgMjQ1LCAxNjYsIDI1MCwgNCwgMjQ0LCAxOTEsIDIxNSwgNzUsIDIzMCwgMTE3LCAyNDMsIDIzMCwgMjE2LCAzNiwgMjE2LCAyLCAKKyAgICAyMTgsIDE0OCwgNjQsIDIzMiwgMjM5LCAyMTksIDE3MCwgNjQsIDIzNSwgMTMyLCAyMzAsIDEwNiwgMjQyLCAxMjQsIDI0NCwgCisgICAgMTkwLCAyNDIsIDEyNCwgMjQ0LCAxOTEsIDIsIDIxOSwgNzQsIDI0NSwgMTMsIDI0NCwgMTkxLCAyLCAyMTcsIDE0LCA2NCwgCisgICAgMjM1LCA1MywgMjE5LCA3NCwgMjQ0LCAxOTEsIDIsIDIwNCwgMjMwLCAxMTAsIDIxOSwgNzQsIDI0NCwgMTkxLCAyLCAyMDQsIAorICAgIDIzMCwgMTExLCAyMiwgMjE5LCA3NCwgMjQ1LCAxMywgMjE5LCA3NCwgMjQ0LCAxOTEsIDIsIDIwNCwgMjMwLCAxMTEsIDIyLCAKKyAgICAyNDksIDIzMCwgMjE3LCAyNDcsIDIxOSwgNzQsIDI0NCwgMTkxLCAyLCAyMDQsIDIzMCwgMTExLCAyMiwgMjE2LCAxMDQsIAorICAgIDI0NSwgMTMsIDIxOSwgNzQsIDI0NCwgMTkxLCAyLCAyNDIsIDI1LCAyMTksIDc0LCAyNDQsIDE5MSwgMiwgMjQwLCAyNDcsIAorICAgIDIxMSwgMjMzLCAyNDQsIDE5MCwgMjE5LCA3NCwgMjQ0LCAxOTEsIDIsIDIxOSwgNzQsIDI0NSwgMTMsIDI0NCwgMTkxLCAKKyAgICAyMjEsIDIxNywgMjQ4LCA2MiwgMjQ0LCAzMywgMjIzLCA4OCwgMjQ0LCAxOTAsIDIxOSwgNzQsIDI0NCwgMTkxLCAyLCAyNDEsIAorICAgIDIyNiwgMjQ1LCAxMywgMjE5LCA3NCwgMjQ0LCAxOTEsIDIsIDIxOCwgMzQsIDIxOSwgNzMsIDI0NCwgMTkwLCAyMjksIDg3LCAKKyAgICAyNDQsIDE5MCwgMjQ1LCAyMywgMjQ0LCAxOTAsIDIxNCwgMTg4LCAyNDQsIDE5MCwgMjQ0LCAxOTEsIDIsIDI0OSwgMjMwLCAKKyAgICAyMTcsIDI0NywgMjI1LCAxOTIsIDI0NCwgMTkwLCAyNDksIDIwMSwgMjQ0LCAxOTAsIDI0OSwgMjAyLCAyNDQsIDE5MCwgCisgICAgMjM0LCA2MiwgMjQ0LCAxOTAsIDI0NCwgMTkxLCAyMTYsIDEzNywgMTE1LCAyMzQsIDYzLCAyMzQsIDYyLCAyNDQsIDE5MSwgCisgICAgMiwgMjE5LCA3NCwgMjQ1LCAxMywgMjM0LCA2MiwgMjQ0LCAxOTEsIDIsIDI1MCwgMCwgMjQ1LCAxMywgMjQ0LCAxOTEsIDIsIAorICAgIDIxOCwgODgsIDIxNiwgMTksIDI0NCwgMTkxLCAyLCAyMTgsIDg4LCAyMTYsIDIwLCAyMiwgMjExLCAyMzMsIDI0NSwgMTUsIAorICAgIDI0NCwgMTkxLCAyLCAyMTgsIDg4LCAyMTYsIDIwLCAyMiwgMjE2LCAxMDQsIDI0NSwgMTMsIDI0NywgMTkyLCAyNDQsIDE5MCwgCisgICAgMjExLCAyMDQsIDI0NCwgMTkwLCAyNTQsIDEwOCwgMjQ0LCAxOTAsIDIyNCwgMjI3LCAyNDQsIDE5MCwgMjQ5LCAxMTYsIAorICAgIDI0NCwgMTkwLCAyMjUsIDE3MCwgMjQ0LCAxOTAsIDI0NCwgMTkxLCAyLCAyMzIsIDEyNiwgNjQsIDIxNSwgMjA0LCAyNDcsIAorICAgIDE5MiwgMjUxLCA4OCwgMjIzLCA4OCwgMjQ0LCAxOTAsIDI0MywgMjM5LCAyNDQsIDE5MSwgMiwgMjA0LCAyMzAsIDExMCwgCisgICAgMjU0LCAxMDYsIDI0NCwgMTkwLCAyNDQsIDE1MiwgMjQ0LCAxOTAsIDIxMiwgMjAsIDI0NCwgMTkwLCAyMTksIDkxLCAyNDQsIAorICAgIDE5MCwgMjE2LCA3MSwgMjQ0LCAxOTAsIDI0MiwgMTI1LCAyNDQsIDE5MCwgMjMyLCAxMTQsIDI0OSwgMTE2LCAyNDQsIDE5MCwgCisgICAgMjQ0LCAxOTEsIDIsIDIwNCwgMjMwLCAxMTAsIDI0MCwgMjAzLCAyNDQsIDE5MCwgMjQ0LCAxOTEsIDIsIDIwNCwgMjMwLCAKKyAgICAxMTEsIDIyLCAyNDksIDIzMCwgMjE3LCAyNDcsIDI0NCwgMTkxLCAyMjEsIDE5MCwgMjM2LCAwLCAyNDQsIDE1MywgMjUzLCAKKyAgICAyMTMsIDI0NCwgMTkwLCAyNDQsIDQ5LCAyNDQsIDE5MCwgMjE5LCA5MiwgMjQ0LCAxOTAsIDI0NywgMTY1LCAyNDQsIDE5MCwgCisgICAgMjQ0LCAxOTEsIDIxMSwgMjMwLCAyMzAsIDExMCwgMjQ0LCAxOTEsIDIsIDIzMSwgODQsIDIzMSwgMTQ0LCAyNDIsIDEyNCwgCisgICAgMjUwLCAyMjUsIDI0NCwgMTkxLCAyLCAyMTksIDc0LCAyNDUsIDEzLCAyNTAsIDIyNSwgMjQ0LCAxOTEsIDIsIDIxNywgMTQsIAorICAgIDY0LCAyMzUsIDUzLCAyMTksIDc0LCAyNTAsIDIyNSwgMjQ0LCAxOTEsIDIsIDIwNCwgMjMwLCAxMTAsIDIxOSwgNzQsIDI1MCwgCisgICAgMjI1LCAyNDQsIDE5MSwgMiwgMjQxLCAyMjYsIDI0NSwgMTMsIDI1MCwgMjI1LCAyNDQsIDE5MSwgMiwgMjExLCAxOTYsIAorICAgIDIxOSwgNzUsIDIzNCwgNjIsIDI1MCwgMjI1LCAyNDQsIDE5MSwgMiwgMjUwLCAwLCAyNDUsIDEzLCAyMjQsIDIyNywgMjUwLCAKKyAgICAyMjUsIDI0NCwgMTkwLCAyNDksIDExNiwgMjUwLCAyMjUsIDI0NCwgMTkwLCAyMTIsIDIwLCAyNTAsIDIyNSwgMjQ0LCAxOTAsIAorICAgIDI0NCwgMTkxLCAyLCAyMjgsIDc1LCAyNDIsIDE2MywgMjQzLCAzNCwgMjQ0LCAxOTEsIDIsIDIyNiwgMjE1LCAyNDMsIDM0LCAKKyAgICAyMjUsIDE2OCwgMjUxLCAxNjgsIDI0OCwgNzUsIDIyMSwgMTY5LCAyMzAsIDE0NSwgMjQxLCAyMjksIDIzMCwgMTQ1LCAyMTksIAorICAgIDgsIDIzMCwgMTQ1LCAyNDIsIDUsIDIyNSwgMTY4LCAyMjMsIDE1NiwgMTIzLCAyNDIsIDE1LCAyMjUsIDE2OCwgMjIzLCAKKyAgICAxNTYsIDI1MSwgMTc4LCAyNDIsIDExLCAyMzYsIDAsIDI1MCwgMTc5LCAyMjUsIDE2OCwgMjQzLCAyMzgsIDIyNSwgMTY4LCAKKyAgICAyLCAyMjQsIDIyNywgMjQ0LCAxOTAsIDIyNSwgMTY4LCAyLCAyNDQsIDQxLCAyNDIsIDEwLCAyMjIsIDIwMywgMjQxLCAyMTQsIAorICAgIDIxOCwgMTQzLCAyMzIsIDE0OSwgMjIzLCAxNjIsIDI1MCwgMjQ0LCAyNDEsIDE2MiwgMjE1LCAyNDgsIDI0MSwgMTYyLCAKKyAgICAyMTUsIDI0OSwgMiwgMjUxLCAxMTQsIDIyOCwgNTMsIDIxNSwgMjQ4LCAyMzEsIDMyLCAxOTIsIDIyMywgMTYzLCAyMTgsIAorICAgIDE0OSwgMjE1LCAyNDYsIDIxNSwgMjQ3LCAyNTAsIDI0NCwgMjUxLCA5MiwgMjI2LCAxOTQsIDI1MSwgOTIsIDIxNSwgMjAxLCAKKyAgICAyNTEsIDkzLCAyMTgsIDEyOSwgMjMwLCAxODcsIDI1NCwgMTMwLCAyNDQsIDk3LCAyNDUsIDEzNywgMjI0LCAyNTUsIDI1MCwgCisgICAgMjQ0LCAyMjYsIDE5NCwgMjI0LCAyNTUsIDI1MCwgMjQ0LCAyMTcsIDMyLCAyMjYsIDE5NCwgMjE3LCAzMiwgMjUzLCAxODAsIAorICAgIDIyNiwgMTk0LCAyNTMsIDE4MCwgMjIzLCAxMTgsIDIxMywgMjQ3LCAyNDgsIDU4LCAyMTUsIDE5MiwgMjUzLCAyNDIsIDIzMiwgCisgICAgMTE3LCAyMTUsIDI1NCwgMjMwLCAxMzksIDIzMCwgMTE2LCAyMjMsIDE2MSwgMjE4LCA2LCAyMjMsIDE2MSwgMjMwLCAxMTYsIAorICAgIDI1MSwgMjgsIDI1NCwgMjI5LCAyMTUsIDI0NSwgMjIwLCAxNiwgMjIyLCAxODIsIDIxOSwgMSwgMjAzLCAyMTUsIDI1MiwgCisgICAgMjMyLCAyMzAsIDY3LCAyMTUsIDI1MiwgMjMyLCAyMzAsIDI0OSwgMTkwLCA1MCwgMjI0LCAyNTUsIDI1MCwgMjI5LCAyMjMsIAorICAgIDQ0LCAyMzIsIDIzMCwgMjE1LCAyMjIsIDI0NCwgNzQsIDIyNiwgMTk3LCAyMjQsIDIzOCwgMjQ3LCAxMjMsIDIyOCwgNzUsIAorICAgIDI0NSwgMTI1LCA1MCwgMjE5LCA3MiwgODcsIDIyOCwgNzUsIDIxOSwgNzIsIDg3LCAyMjQsIDEyMiwgMjMyLCAxOTMsIDIzNiwgCisgICAgMCwgMjM1LCAxNTcsIDIyNSwgNDEsIDg3LCAyNDcsIDE0NiwgMjI4LCA1MiwgMjMyLCAxOTMsIDg3LCAyMjQsIDIzMiwgMjEyLCAKKyAgICA0MSwgODcsIDIyOCwgNjYsIDIxMiwgNDEsIDg3LCAyNTIsIDIsIDIyOCwgNzUsIDI1MiwgMSwgMjUyLCAwLCAyMzAsIDExNiwgCisgICAgMjUyLCAwLCAyMjUsIDIxMywgMjI4LCA3NSwgMjI1LCAyMTIsIDI1MCwgMTAwLCAyNDksIDEyNCwgMjMxLCA1NiwgODcsIAorICAgIDIxMSwgMjE4LCA4NywgMjIzLCA1OSwgMjUyLCAxODcsIDg3LCAyMTYsIDM3LCAyMTIsIDQxLCAyNDksIDI1MywgMjE5LCAKKyAgICAyMzQsIDI1MiwgMTE4LCAyNTIsIDExNiwgMjI1LCAyNDIsIDI0OSwgMTc3LCAyNDksIDg2LCAyNTIsIDE2OSwgMjUwLCAyMiwgCisgICAgNDMsIDIzMiwgOTAsIDEwOCwgMTYsIDMxLCAyMjQsIDMsIDEwOCwgMTYsIDMxLCAyNTQsIDE5MiwgMTA4LCAxNiwgMzEsIAorICAgIDI0NCwgOTYsIDEwOCwgMTYsIDMxLCAyNDUsIDIyMywgMTA4LCAxNiwgMzEsIDIxMiwgNDAsIDEwOCwgMTYsIDMxLCAyNTQsIAorICAgIDQzLCAxMDgsIDE2LCAzMSwgMjU0LCA0NCwgMjIzLCAxMDUsIDEwOCwgMTYsIDMxLCAyNTQsIDQ0LCAyMjMsIDEwNCwgMTA4LCAKKyAgICAxNiwgMzEsIDI1NCwgNDQsIDIxMywgMTQzLCAxMDgsIDE2LCAzMSwgMjU0LCA0NCwgMjEzLCAxNDIsIDEwOCwgMTYsIDMxLCAKKyAgICAyMTMsIDE1NywgMTA4LCAxNiwgMzEsIDIxMywgMTU2LCAxMDgsIDE2LCAzMSwgMjEzLCAxNTUsIDEwOCwgMTYsIDMxLCAyMTgsIAorICAgIDQ0LCAxMDgsIDE2LCAzMSwgMjI1LCAxMjUsIDIxOCwgNDQsIDEwOCwgMTYsIDMxLCA4NSwgMjE4LCA0NCwgMTA4LCAxNiwgCisgICAgMzEsIDIzMSwgNTUsIDIxOCwgNzEsIDEwOCwgMTYsIDMxLCAyMzEsIDU1LCAyMTgsIDcwLCAxMDgsIDE2LCAzMSwgMjMxLCAKKyAgICA1NSwgMjE4LCA2OSwgMTA4LCAxNiwgMzEsIDI1MCwgMzgsIDEwOCwgMTYsIDMxLCAyMjIsIDEsIDEwOCwgMTYsIDMxLCAyMjgsIAorICAgIDE4OCwgMTA4LCAxNiwgMzEsIDIxMywgMTQxLCAxMDgsIDE2LCAzMSwgMjEzLCAxNDAsIDEwOCwgMTYsIDMxLCAyMjIsIDIwNCwgCisgICAgMjIyLCAxLCAxMDgsIDE2LCAzMSwgMjIyLCAyMDQsIDIyMiwgMCwgMTA4LCAxNiwgMzEsIDI0MiwgMTY2LCAxMDgsIDE2LCAKKyAgICAzMSwgMjE5LCAxNjYsIDEwOCwgMTYsIDMxLCAyMzUsIDE3NywgMjI2LCAxNTMsIDEwOCwgMTYsIDMxLCAyMzUsIDE3NywgCisgICAgMjI2LCAxNTIsIDEwOCwgMTYsIDMxLCAyNDksIDEzNCwgNjQsIDIzNSwgMTc2LCAxMDgsIDE2LCAzMSwgMjIzLCAxMDEsIDY0LCAKKyAgICAyMzUsIDE3NiwgMTA4LCAxNiwgMzEsIDI0OSwgMTY4LCAyMjYsIDE1MywgMTA4LCAxNiwgMzEsIDIzNSwgMTc1LCAyMjYsIAorICAgIDE1MywgMTA4LCAxNiwgMzEsIDIxOCwgNzIsIDY0LCAyNDksIDE2NywgMTA4LCAxNiwgMzEsIDI0OSwgMTM0LCA2NCwgMjQ5LCAKKyAgICAxNjcsIDEwOCwgMTYsIDMxLCAyNDksIDEzNCwgNjQsIDI0OSwgMTY2LCAxMDgsIDE2LCAzMSwgMjQ5LCAxNjgsIDI1NCwgODMsIAorICAgIDEwOCwgMTYsIDMxLCAyMjIsIDIsIDY0LCAyNDksIDE2OCwgMjU0LCA4MywgMTA4LCAxNiwgMzEsIDIxOCwgNzIsIDY0LCAKKyAgICAyMjIsIDIsIDY0LCAyNDksIDE2NywgMTA4LCAxNiwgMzEsIDIxMywgMjQzLCAxMDgsIDE2LCAzMSwgMjE2LCA4NCwgMjI2LCAKKyAgICAxNTMsIDEwOCwgMTYsIDMxLCAyMzMsIDU3LCAyMjYsIDE1MywgMTA4LCAxNiwgMzEsIDI1NCwgODIsIDIyNiwgMTUzLCAxMDgsIAorICAgIDE2LCAzMSwgMjE4LCA3MiwgNjQsIDI1NCwgODEsIDEwOCwgMTYsIDMxLCAyMjIsIDIsIDY0LCAyNTQsIDgxLCAxMDgsIDE2LCAKKyAgICAzMSwgMjE4LCA3MiwgNjQsIDIyMiwgMiwgNjQsIDI1NCwgODEsIDEwOCwgMTYsIDMxLCAyMTMsIDE1OCwgNjQsIDI1NCwgODEsIAorICAgIDEwOCwgMTYsIDMxLCAyMjMsIDEwMSwgNjQsIDI1NCwgODEsIDEwOCwgMTYsIDMxLCAyMjMsIDEwMSwgNjQsIDI1NCwgODAsIAorICAgIDEwOCwgMTYsIDMxLCAyMjMsIDEwMCwgMTA4LCAxNiwgMzEsIDIyMywgOTksIDEwOCwgMTYsIDMxLCAyMjMsIDk4LCAxMDgsIAorICAgIDE2LCAzMSwgMjIzLCA5NywgMTA4LCAxNiwgMzEsIDI1NCwgMTU3LCAxMDgsIDE2LCAzMSwgMjU0LCAxNTYsIDEwOCwgMTYsIAorICAgIDMxLCAyMzEsIDE2MywgMTA4LCAxNiwgMzEsIDIyMiwgNywgMTA4LCAxNiwgMzEsIDI1MywgMjQ2LCAxMDgsIDE2LCAzMSwgCisgICAgMjIzLCAxMjUsIDEwOCwgMTYsIDMxLCAyMjMsIDEyNCwgMTA4LCAxNiwgMzEsIDI1MywgMTgzLCAxMDgsIDE2LCAzMSwgMjUxLCAKKyAgICAyMjksIDIyNiwgMTUzLCAxMDgsIDE2LCAzMSwgMjE3LCA0OSwgMTA4LCAxNiwgMzEsIDIxNywgNDgsIDEwOCwgMTYsIDMxLCAKKyAgICAyMjQsIDgsIDIzMiwgMjIyLCAxMDgsIDE2LCAzMSwgMjUxLCAxODMsIDEwOCwgMTYsIDMxLCAyNTEsIDE4MiwgMTA4LCAxNiwgCisgICAgMzEsIDI1MSwgMTgxLCAxMDgsIDE2LCAzMSwgMjU0LCAxMzgsIDEwOCwgMTYsIDMxLCAyMjYsIDIxOCwgMTA4LCAxNiwgMzEsIAorICAgIDIxOCwgMjQ4LCAxMDgsIDE2LCAzMSwgMjE2LCA4MiwgMTA4LCAxNiwgMzEsIDI0MiwgOTYsIDEwOCwgMTYsIDMxLCAyMTIsIAorICAgIDI4LCAxMDgsIDE2LCAzMSwgMjI0LCAyMjYsIDEwOCwgMTYsIDMxLCAyNTEsIDE0LCAxMDgsIDE2LCAzMSwgMjE1LCA4NiwgCisgICAgMTA4LCAxNiwgMzEsIDI1MCwgMjQ2LCAyMzAsIDEyMiwgMTA4LCAxNiwgMzEsIDIyMSwgMjAyLCA2NCwgMjM1LCA1NSwgMTA4LCAKKyAgICAxNiwgMzEsIDI1MSwgMjUsIDEwOCwgMTYsIDMxLCAyMTUsIDIxOSwgMTA4LCAxNiwgMzEsIDIxOCwgMTU0LCAyMTUsIDIxOSwgCisgICAgMTA4LCAxNiwgMzEsIDIzMiwgMTQ4LCAxMDgsIDE2LCAzMSwgMjE5LCA1NiwgMTA4LCAxNiwgMzEsIDIxNCwgMTQyLCAxMDgsIAorICAgIDE2LCAzMSwgMjQwLCAyNDYsIDI0NiwgNjQsIDEwOCwgMTYsIDMxLCAyNTMsIDIyNywgMTA4LCAxNiwgMzEsIDIyNCwgMjM0LCAKKyAgICAyNTMsIDIyNywgMTA4LCAxNiwgMzEsIDI1MSwgMTQyLCAxMDgsIDE2LCAzMSwgMjI0LCAyMjUsIDI1MSwgMTQyLCAxMDgsIAorICAgIDE2LCAzMSwgMjU0LCAxMzUsIDEwOCwgMTYsIDMxLCAyMTgsIDExNywgMjE4LCAyNiwgMjE4LCAxMTYsIDEwOCwgMTYsIDMxLCAKKyAgICAyMTgsIDExNywgMjE4LCAyNiwgMjE4LCAxMTUsIDEwOCwgMTYsIDMxLCAyMTgsIDY4LCAxMDgsIDE2LCAzMSwgMjI0LCAyMDAsIAorICAgIDEwOCwgMTYsIDMxLCAyNDcsIDE4MSwgMTA4LCAxNiwgMzEsIDI0NywgMTgzLCAxMDgsIDE2LCAzMSwgMjQ3LCAxODIsIDEwOCwgCisgICAgMTYsIDMxLCAyMjQsIDEzMSwgMTA4LCAxNiwgMzEsIDIyNCwgMTIwLCAxMDgsIDE2LCAzMSwgMjQ5LCAxMjIsIDEwOCwgMTYsIAorICAgIDMxLCAyNDksIDEyMSwgMTA4LCAxNiwgMzEsIDI0OSwgMTIwLCAxMDgsIDE2LCAzMSwgMjQ5LCAxMTksIDEwOCwgMTYsIDMxLCAKKyAgICAyNDksIDExOCwgMTA4LCAxNiwgMzEsIDI1NCwgMTY5LCAxMDgsIDE2LCAzMSwgMjUyLCAxMTksIDY0LCAyMzEsIDE0OSwgCisgICAgMTA4LCAxNiwgMzEsIDI1MiwgMTE5LCA2NCwgMjE0LCAxNywgMTA4LCAxNiwgMzEsIDIyMywgNTcsIDEwOCwgMTYsIDMxLCAKKyAgICAyNDAsIDIzOCwgMTA4LCAxNiwgMzEsIDIyOCwgMjEyLCAxMDgsIDE2LCAzMSwgMjQ4LCAxNDUsIDEwOCwgMTYsIDMxLCAyMzAsIAorICAgIDEzNCwgMTA4LCAxNiwgMzEsIDE2MywgMjQ2LCA5NCwgMTA4LCAxNiwgMzEsIDE2MywgMjI2LCAxMzIsIDksIDE0LCAyNDAsIAorICAgIDEwMiwgOSwgMTQsIDI0MCwgMTAxLCA5LCAxNCwgMjQwLCAxMDAsIDksIDE0LCAyNDAsIDk5LCA5LCAxNCwgMjQwLCA5OCwgOSwgCisgICAgMTQsIDI0MCwgOTcsIDksIDE0LCAyNDAsIDk2LCA5LCAxNCwgMjQwLCA5NSwgOSwgMTQsIDI0MCwgOTQsIDksIDE0LCAyNDAsIAorICAgIDkzLCA5LCAxNCwgMjQwLCA5MiwgOSwgMTQsIDI0MCwgOTEsIDksIDE0LCAyNDAsIDkwLCA5LCAxNCwgMjQwLCA4OSwgOSwgCisgICAgMTQsIDI0MCwgODgsIDksIDE0LCAyNDAsIDg3LCA5LCAxNCwgMjQwLCA4NiwgOSwgMTQsIDI0MCwgODUsIDksIDE0LCAyNDAsIAorICAgIDg0LCA5LCAxNCwgMjQwLCA4MywgOSwgMTQsIDI0MCwgODIsIDksIDE0LCAyNDAsIDgxLCA5LCAxNCwgMjQwLCA4MCwgOSwgCisgICAgMTQsIDI0MCwgNzksIDksIDE0LCAyNDAsIDc4LCA5LCAxNCwgMjQwLCA3NywgOSwgMTQsIDI0MCwgNzYsIDksIDE0LCAyNDAsIAorICAgIDc1LCA5LCAxNCwgMjQwLCA3NCwgOSwgMTQsIDI0MCwgNzMsIDksIDE0LCAyNDAsIDcyLCA5LCAxNCwgMjQwLCA3MSwgOSwgCisgICAgMTQsIDI0MCwgNzAsIDksIDE0LCAyNDAsIDY5LCA5LCAxNCwgMjQwLCA2OCwgOSwgMTQsIDI0MCwgNjcsIDksIDE0LCAyNDAsIAorICAgIDY2LCA5LCAxNCwgMjQwLCA2NSwgOSwgMTQsIDI0MCwgNjQsIDksIDE0LCAyNDAsIDYzLCA5LCAxNCwgMjQwLCA2MiwgOSwgCisgICAgMTQsIDI0MCwgNjEsIDksIDE0LCAyNDAsIDYwLCA5LCAxNCwgMjQwLCA1OSwgOSwgMTQsIDI0MCwgNTgsIDksIDE0LCAyNDAsIAorICAgIDU3LCA5LCAxNCwgMjQwLCA1NiwgOSwgMTQsIDI0MCwgNTUsIDksIDE0LCAyNDAsIDU0LCA5LCAxNCwgMjQwLCA1MywgOSwgCisgICAgMTQsIDI0MCwgNTIsIDksIDE0LCAyNDAsIDUxLCA5LCAxNCwgMjQwLCA1MCwgOSwgMTQsIDI0MCwgNDksIDksIDE0LCAyNDAsIAorICAgIDQ4LCA5LCAxNCwgMjQwLCA0NywgOSwgMTQsIDI0MCwgNDYsIDksIDE0LCAyNDAsIDQ1LCA5LCAxNCwgMjQwLCA0NCwgOSwgCisgICAgMTQsIDI0MCwgNDMsIDksIDE0LCAyNDAsIDQyLCA5LCAxNCwgMjQwLCA0MSwgOSwgMTQsIDI0MCwgNDAsIDksIDE0LCAyNDAsIAorICAgIDM5LCA5LCAxNCwgMjQwLCAzOCwgOSwgMTQsIDI0MCwgMzcsIDksIDE0LCAyNDAsIDM2LCA5LCAxNCwgMjQwLCAzNSwgOSwgCisgICAgMTQsIDI0MCwgMzQsIDksIDE0LCAyNDAsIDMzLCA5LCAxNCwgMjQwLCAzMiwgOSwgMTQsIDI0MCwgMzEsIDksIDE0LCAyNDAsIAorICAgIDMwLCA5LCAxNCwgMjQwLCAyOSwgOSwgMTQsIDI0MCwgMjgsIDksIDE0LCAyNDAsIDI3LCA5LCAxNCwgMjQwLCAyNiwgOSwgCisgICAgMTQsIDI0MCwgMjUsIDksIDE0LCAyNDAsIDI0LCA5LCAxNCwgMjQwLCAyMywgOSwgMTQsIDI0MCwgMjIsIDksIDE0LCAyNDAsIAorICAgIDIxLCA5LCAxNCwgMjQwLCAyMCwgOSwgMTQsIDI0MCwgMTksIDksIDE0LCAyNDAsIDE4LCA5LCAxNCwgMjQwLCAxNywgOSwgCisgICAgMTQsIDI0MCwgMTYsIDksIDE0LCAyNDAsIDE1LCA5LCAxNCwgMjQwLCAxNCwgOSwgMTQsIDI0MCwgMTMsIDksIDE0LCAyNDAsIAorICAgIDEyLCA5LCAxNCwgMjQwLCAxMSwgOSwgMTQsIDI0MCwgMTAsIDksIDE0LCAyNDAsIDksIDksIDE0LCAyNDAsIDgsIDksIDE0LCAKKyAgICAyNDAsIDcsIDksIDE0LCAyNDAsIDYsIDksIDE0LCAyNDAsIDUsIDksIDE0LCAyNDAsIDQsIDksIDE0LCAyNDAsIDMsIDksIAorICAgIDE0LCAyNDAsIDIsIDksIDE0LCAyNDAsIDEsIDksIDE0LCAyNDAsIDAsIDksIDE0LCAyMzksIDI1NSwgOSwgMTQsIDIzOSwgCisgICAgMjU0LCA5LCAxNCwgMjM5LCAyNTMsIDksIDE0LCAyMzksIDI1MiwgOSwgMTQsIDIzOSwgMjUxLCA5LCAxNCwgMjM5LCAyNTAsIAorICAgIDksIDE0LCAyMzksIDI0OSwgOSwgMTQsIDIzOSwgMjQ4LCA5LCAxNCwgMjM5LCAyNDcsIDksIDE0LCAyMzksIDI0NiwgOSwgCisgICAgMTQsIDIzOSwgMjQ1LCA5LCAxNCwgMjM5LCAyNDQsIDksIDE0LCAyMzksIDI0MywgOSwgMTQsIDIzOSwgMjQyLCA5LCAxNCwgCisgICAgMjM5LCAyNDEsIDksIDE0LCAyMzksIDI0MCwgOSwgMTQsIDIzOSwgMjM5LCA5LCAxNCwgMjM5LCAyMzgsIDksIDE0LCAyMzksIAorICAgIDIzNywgOSwgMTQsIDIzOSwgMjM2LCA5LCAxNCwgMjM5LCAyMzUsIDksIDE0LCAyMzksIDIzNCwgOSwgMTQsIDIzOSwgMjMzLCAKKyAgICA5LCAxNCwgMjM5LCAyMzIsIDksIDE0LCAyMzksIDIzMSwgOSwgMTQsIDIzOSwgMjMwLCA5LCAxNCwgMjM5LCAyMjksIDksIAorICAgIDE0LCAyMzksIDIyOCwgOSwgMTQsIDIzOSwgMjI3LCA5LCAxNCwgMjM5LCAyMjYsIDksIDE0LCAyMzksIDIyNSwgOSwgMTQsIAorICAgIDIzOSwgMjI0LCA5LCAxNCwgMjM5LCAyMjMsIDksIDE0LCAyMzksIDIyMiwgOSwgMTQsIDIzOSwgMjIxLCA5LCAxNCwgMjM5LCAKKyAgICAyMjAsIDksIDE0LCAyMzksIDIxOSwgOSwgMTQsIDIzOSwgMjE4LCA5LCAxNCwgMjM5LCAyMTcsIDksIDE0LCAyMzksIDIxNiwgCisgICAgOSwgMTQsIDIzOSwgMjE1LCA5LCAxNCwgMjM5LCAyMTQsIDksIDE0LCAyMzksIDIxMywgOSwgMTQsIDIzOSwgMjEyLCA5LCAKKyAgICAxNCwgMjM5LCAyMTEsIDksIDE0LCAyMzksIDIxMCwgOSwgMTQsIDIzOSwgMjA5LCA5LCAxNCwgMjM5LCAyMDgsIDksIDE0LCAKKyAgICAyMzksIDIwNywgOSwgMTQsIDIzOSwgMjA2LCA5LCAxNCwgMjM5LCAyMDUsIDksIDE0LCAyMzksIDIwNCwgOSwgMTQsIDIzOSwgCisgICAgMjAzLCA5LCAxNCwgMjM5LCAyMDIsIDksIDE0LCAyMzksIDIwMSwgOSwgMTQsIDIzOSwgMjAwLCA5LCAxNCwgMjM5LCAxOTksIAorICAgIDksIDE0LCAyMzksIDE5OCwgOSwgMTQsIDIzOSwgMTk3LCA5LCAxNCwgMjM5LCAxOTYsIDksIDE0LCAyMzksIDE5NSwgOSwgCisgICAgMTQsIDIzOSwgMTk0LCA5LCAxNCwgMjM5LCAxOTMsIDksIDE0LCAyMzksIDE5MiwgOSwgMTQsIDIzOSwgMTkxLCA5LCAxNCwgCisgICAgMjM5LCAxOTAsIDksIDE0LCAyMzksIDE4OSwgOSwgMTQsIDIzOSwgMTg4LCA5LCAxNCwgMjM5LCAxODcsIDksIDE0LCAyMzksIAorICAgIDE4NiwgOSwgMTQsIDIzOSwgMTg1LCA5LCAxNCwgMjM5LCAxODQsIDksIDE0LCAyMzksIDE4MywgOSwgMTQsIDIzOSwgMTgyLCAKKyAgICA5LCAxNCwgMjM5LCAxODEsIDksIDE0LCAyMzksIDE4MCwgOSwgMTQsIDIzOSwgMTc5LCA5LCAxNCwgMjM5LCAxNzgsIDksIAorICAgIDE0LCAyMzksIDE3NywgOSwgMTQsIDIzOSwgMTc2LCA5LCAxNCwgMjM5LCAxNzUsIDksIDE0LCAyMzksIDE3NCwgOSwgMTQsIAorICAgIDIzOSwgMTczLCA5LCAxNCwgMjM5LCAxNzIsIDksIDE0LCAyMzksIDE3MSwgOSwgMTQsIDIzOSwgMTcwLCA5LCAxNCwgMjM5LCAKKyAgICAxNjksIDksIDE0LCAyMzksIDE2OCwgOSwgMTQsIDIzOSwgMTY3LCA5LCAxNCwgMjM5LCAxNjYsIDksIDE0LCAyMzksIDE2NSwgCisgICAgOSwgMTQsIDIzOSwgMTY0LCA5LCAxNCwgMjM5LCAxNjMsIDksIDE0LCAyMzksIDE2MiwgOSwgMTQsIDIzOSwgMTYxLCA5LCAKKyAgICAxNCwgMjM5LCAxNjAsIDksIDE0LCAyMzksIDE1OSwgOSwgMTQsIDIzOSwgMTU4LCA5LCAxNCwgMjM5LCAxNTcsIDksIDE0LCAKKyAgICAyMzksIDE1NiwgOSwgMTQsIDIzOSwgMTU1LCA5LCAxNCwgMjM5LCAxNTQsIDksIDE0LCAyMzksIDE1MywgOSwgMTQsIDIzOSwgCisgICAgMTUyLCA5LCAxNCwgMjM5LCAxNTEsIDksIDE0LCAyMzksIDE1MCwgOSwgMTQsIDIzOSwgMTQ5LCA5LCAxNCwgMjM5LCAxNDgsIAorICAgIDksIDE0LCAyMzksIDE0NywgOSwgMTQsIDIzOSwgMTQ2LCA5LCAxNCwgMjM5LCAxNDUsIDksIDE0LCAyMzksIDE0NCwgOSwgCisgICAgMTQsIDIzOSwgMTQzLCA5LCAxNCwgMjM5LCAxNDIsIDksIDE0LCAyMzksIDE0MSwgOSwgMTQsIDIzOSwgMTQwLCA5LCAxNCwgCisgICAgMjM5LCAxMzksIDksIDE0LCAyMzksIDEzOCwgOSwgMTQsIDIzOSwgMTM3LCA5LCAxNCwgMjM5LCAxMzYsIDksIDE0LCAyMzksIAorICAgIDEzNSwgOSwgMTQsIDIzOSwgMTM0LCA5LCAxNCwgMjM5LCAxMzMsIDksIDE0LCAyMzksIDEzMiwgOSwgMTQsIDIzOSwgMTMxLCAKKyAgICA5LCAxNCwgMjM5LCAxMzAsIDksIDE0LCAyMzksIDEyOSwgOSwgMTQsIDIzOSwgMTI4LCA5LCAxNCwgMjM5LCAxMjcsIDksIAorICAgIDE0LCAyMzksIDEyNiwgOSwgMTQsIDIzOSwgMTI1LCA5LCAxNCwgMjM5LCAxMjQsIDksIDE0LCAyMzksIDEyMywgOSwgMTQsIAorICAgIDIzOSwgMTIyLCA5LCAxNCwgMjM5LCAxMjEsIDksIDE0LCAyMzksIDEyMCwgOSwgMTQsIDIzOSwgMTE5LCA5LCAxNCwgMjM5LCAKKyAgICAxMTgsIDksIDE0LCAyMzksIDExNywgOSwgMTQsIDIzOSwgMTE2LCA5LCAxNCwgMjM5LCAxMTUsIDksIDE0LCAyMzksIDExNCwgCisgICAgOSwgMTQsIDIzOSwgMTEzLCA5LCAxNCwgMjM5LCAxMTIsIDksIDE0LCAyMzksIDExMSwgOSwgMTQsIDIzOSwgMTEwLCA5LCAKKyAgICAxNCwgMjM5LCAxMDksIDksIDE0LCAyMzksIDEwOCwgOSwgMTQsIDIzOSwgMTA3LCA5LCAxNCwgMjM5LCAxMDYsIDksIDE0LCAKKyAgICAyMzksIDEwNSwgOSwgMTQsIDIzOSwgMTA0LCA5LCAxNCwgMjM5LCAxMDMsIDksIDE0LCAyMzksIDEwMiwgOSwgMTQsIDIzOSwgCisgICAgMTAxLCA5LCAxNCwgMjM5LCAxMDAsIDksIDE0LCAyMzksIDk5LCA5LCAxNCwgMjM5LCA5OCwgOSwgMTQsIDIzOSwgOTcsIDksIAorICAgIDE0LCAyMzksIDk2LCA5LCAxNCwgMjM5LCA5NSwgOSwgMTQsIDIzOSwgOTQsIDksIDE0LCAyMzksIDkzLCA5LCAxNCwgMjM5LCAKKyAgICA5MiwgOSwgMTQsIDIzOSwgOTEsIDksIDE0LCAyMzksIDkwLCA5LCAxNCwgMjM5LCA4OSwgOSwgMTQsIDIzOSwgODgsIDksIAorICAgIDE0LCAyMzksIDg3LCA5LCAxNCwgMjM5LCA4NiwgOSwgMTQsIDIzOSwgODUsIDksIDE0LCAyMzksIDg0LCA5LCAxNCwgMjM5LCAKKyAgICA4MywgOSwgMTQsIDIzOSwgODIsIDksIDE0LCAyMzksIDgxLCA5LCAxNCwgMjM5LCA4MCwgOSwgMTQsIDIzOSwgNzksIDksIAorICAgIDE0LCAyMzksIDc4LCA5LCAxNCwgMjM5LCA3NywgOSwgMTQsIDIzOSwgNzYsIDksIDE0LCAyMzksIDc1LCA5LCAxNCwgMjM5LCAKKyAgICA3NCwgOSwgMTQsIDIzOSwgNzMsIDksIDE0LCAyMzksIDcyLCA5LCAxNCwgMjM5LCA3MSwgOSwgMTQsIDIzOSwgNzAsIDksIAorICAgIDE0LCAyMzksIDY5LCA5LCAxNCwgMjM5LCA2OCwgOSwgMTQsIDIzOSwgNjcsIDksIDE0LCAyMzksIDY2LCA5LCAxNCwgMjM5LCAKKyAgICA2NSwgOSwgMTQsIDIzOSwgNjQsIDksIDE0LCAyMzksIDYzLCA5LCAxNCwgMjM5LCA2MiwgOSwgMTQsIDIzOSwgNjEsIDksIAorICAgIDE0LCAyMzksIDYwLCA5LCAxNCwgMjM5LCA1OSwgOSwgMTQsIDIzOSwgNTgsIDksIDE0LCAyMzksIDU3LCA5LCAxNCwgMjM5LCAKKyAgICA1NiwgOSwgMTQsIDIzOSwgNTUsIDksIDE0LCAyMzksIDU0LCA5LCAxNCwgMjM5LCA1MywgOSwgMTQsIDIzOSwgNTIsIDksIAorICAgIDE0LCAyMzksIDUxLCA5LCAxNCwgMjM5LCA1MCwgOSwgMTQsIDIzOSwgNDksIDksIDE0LCAyMzksIDQ4LCA5LCAxNCwgMjM5LCAKKyAgICA0NywgOSwgMTQsIDIzOSwgNDYsIDksIDE0LCAyMzksIDQ1LCA5LCAxNCwgMjM5LCA0NCwgOSwgMTQsIDIzOSwgNDMsIDksIAorICAgIDE0LCAyMzksIDQyLCA5LCAxNCwgMjM5LCA0MSwgOSwgMTQsIDIzOSwgNDAsIDksIDE0LCAyMzksIDM5LCA5LCAxNCwgMjM5LCAKKyAgICAzOCwgOSwgMTQsIDIzOSwgMzcsIDksIDE0LCAyMzksIDM2LCA5LCAxNCwgMjM5LCAzNSwgOSwgMTQsIDIzOSwgMzQsIDksIAorICAgIDE0LCAyMzksIDMzLCA5LCAxNCwgMjM5LCAzMiwgOSwgMTQsIDIzOSwgMzEsIDksIDE0LCAyMzksIDMwLCA5LCAxNCwgMjM5LCAKKyAgICAyOSwgOSwgMTQsIDIzOSwgMjgsIDksIDE0LCAyMzksIDI3LCA5LCAxNCwgMjM5LCAyNiwgOSwgMTQsIDIzOSwgMjUsIDksIAorICAgIDE0LCAyMzksIDI0LCA5LCAxNCwgMjM5LCAyMywgOSwgMTQsIDIzOSwgMjIsIDksIDE0LCAyMzksIDIxLCA5LCAxNCwgMjM5LCAKKyAgICAyMCwgOSwgMTQsIDIzOSwgMTksIDksIDE0LCAyMzksIDE4LCA5LCAxNCwgMjM5LCAxNywgOSwgMTQsIDIzOSwgMTYsIDksIAorICAgIDE0LCAyMzksIDE1LCA5LCAxNCwgMjM5LCAxNCwgOSwgMTQsIDIzOSwgMTMsIDksIDE0LCAyMzksIDEyLCA5LCAxNCwgMjM5LCAKKyAgICAxMSwgOSwgMTQsIDIzOSwgMTAsIDksIDE0LCAyMzksIDksIDksIDE0LCAyMzksIDgsIDksIDE0LCAyMzksIDcsIDksIDE0LCAKKyAgICAyMzksIDYsIDksIDE0LCAyMzksIDUsIDksIDE0LCAyMzksIDQsIDksIDE0LCAyMzksIDMsIDksIDE0LCAyMzksIDIsIDksIAorICAgIDE0LCAyMzksIDEsIDksIDE0LCAyMzksIDAsIDksIDE0LCAyMzgsIDI1NSwgOSwgMTQsIDIzOCwgMjU0LCA5LCAxNCwgMjM4LCAKKyAgICAyNTMsIDksIDE0LCAyMzgsIDI1MiwgOSwgMTQsIDIzOCwgMjUxLCA5LCAxNCwgMjM4LCAyNTAsIDksIDE0LCAyMzgsIDI0OSwgCisgICAgOSwgMTQsIDIzOCwgMjQ4LCA5LCAxNCwgMjM4LCAyNDcsIDksIDE0LCAyMzgsIDI0NiwgOSwgMTQsIDIzOCwgMjQ1LCA5LCAKKyAgICAxNCwgMjM4LCAyNDQsIDksIDE0LCAyMzgsIDI0MywgOSwgMTQsIDIzOCwgMjQyLCA5LCAxNCwgMjM4LCAyNDEsIDksIDE0LCAKKyAgICAyMzgsIDI0MCwgOSwgMTQsIDIzOCwgMjM5LCA5LCAxNCwgMjM4LCAyMzgsIDksIDE0LCAyMzgsIDIzNywgOSwgMTQsIDIzOCwgCisgICAgMjM2LCA5LCAxNCwgMjM4LCAyMzUsIDksIDE0LCAyMzgsIDIzNCwgOSwgMTQsIDIzOCwgMjMzLCA5LCAxNCwgMjM4LCAyMzIsIAorICAgIDksIDE0LCAyMzgsIDIzMSwgOSwgMTQsIDIzOCwgMjMwLCA5LCAxNCwgMjM4LCAyMjksIDksIDE0LCAyMzgsIDIyOCwgOSwgCisgICAgMTQsIDIzOCwgMjI3LCA5LCAxNCwgMjM4LCAyMjYsIDksIDE0LCAyMzgsIDIyNSwgOSwgMTQsIDIzOCwgMjI0LCA5LCAxNCwgCisgICAgMjM4LCAyMjMsIDksIDE0LCAyMzgsIDIyMiwgOSwgMTQsIDIzOCwgMjIxLCA5LCAxNCwgMjM4LCAyMjAsIDksIDE0LCAyMzgsIAorICAgIDIxOSwgOSwgMTQsIDIzOCwgMjE4LCA5LCAxNCwgMjM4LCAyMTcsIDksIDE0LCAyMzgsIDIxNiwgOSwgMTQsIDIzOCwgMjE1LCAKKyAgICA5LCAxNCwgMjM4LCAyMTQsIDksIDE0LCAyMzgsIDIxMywgOSwgMTQsIDIzOCwgMjEyLCA5LCAxNCwgMjM4LCAyMTEsIDksIAorICAgIDE0LCAyMzgsIDIxMCwgOSwgMTQsIDIzOCwgMjA5LCA5LCAxNCwgMjM4LCAyMDgsIDksIDE0LCAyMzgsIDIwNywgOSwgMTQsIAorICAgIDIzOCwgMjA2LCA5LCAxNCwgMjM4LCAyMDUsIDksIDE0LCAyMzgsIDIwNCwgOSwgMTQsIDIzOCwgMjAzLCA5LCAxNCwgMjM4LCAKKyAgICAyMDIsIDksIDE0LCAyMzgsIDIwMSwgOSwgMTQsIDIzOCwgMjAwLCA5LCAxNCwgMjM4LCAxOTksIDksIDE0LCAyMzgsIDE5OCwgCisgICAgOSwgMTQsIDIzOCwgMTk3LCA5LCAxNCwgMjM4LCAxOTYsIDksIDE0LCAyMzgsIDE5NSwgOSwgMTQsIDIzOCwgMTk0LCA5LCAKKyAgICAxNCwgMjM4LCAxOTMsIDksIDE0LCAyMzgsIDE5MiwgOSwgMTQsIDIzOCwgMTkxLCA5LCAxNCwgMjM4LCAxOTAsIDksIDE0LCAKKyAgICAyMzgsIDE4OSwgOSwgMTQsIDIzOCwgMTg4LCA5LCAxNCwgMjM4LCAxODcsIDksIDE0LCAyMzgsIDE4NiwgOSwgMTQsIDIzOCwgCisgICAgMTg1LCA5LCAxNCwgMjM4LCAxODQsIDksIDE0LCAyMzgsIDE4MywgOSwgMTQsIDIzOCwgMTgyLCA5LCAxNCwgMjM4LCAxODEsIAorICAgIDksIDE0LCAyMzgsIDE4MCwgOSwgMTQsIDIzOCwgMTc5LCA5LCAxNCwgMjM4LCAxNzgsIDksIDE0LCAyMzgsIDE3NywgOSwgCisgICAgMTQsIDIzOCwgMTc2LCA5LCAxNCwgMjM4LCAxNzUsIDksIDE0LCAyMzgsIDE3NCwgOSwgMTQsIDIzOCwgMTczLCA5LCAxNCwgCisgICAgMjM4LCAxNzIsIDksIDE0LCAyMzgsIDE3MSwgOSwgMTQsIDIzOCwgMTcwLCA5LCAxNCwgMjM4LCAxNjksIDksIDE0LCAyMzgsIAorICAgIDE2OCwgOSwgMTQsIDIzOCwgMTY3LCA5LCAxNCwgMjM4LCAxNjYsIDksIDE0LCAyMzgsIDE2NSwgOSwgMTQsIDIzOCwgMTY0LCAKKyAgICA5LCAxNCwgMjM4LCAxNjMsIDksIDE0LCAyMzgsIDE2MiwgOSwgMTQsIDIzOCwgMTYxLCA5LCAxNCwgMjM4LCAxNjAsIDksIAorICAgIDE0LCAyMzgsIDE1OSwgOSwgMTQsIDIzOCwgMTU4LCA5LCAxNCwgMjM4LCAxNTcsIDksIDE0LCAyMzgsIDE1NiwgOSwgMTQsIAorICAgIDIzOCwgMTU1LCA5LCAxNCwgMjM4LCAxNTQsIDksIDE0LCAyMzgsIDE1MywgOSwgMTQsIDIzOCwgMTUyLCA5LCAxNCwgMjM4LCAKKyAgICAxNTEsIDksIDE0LCAyMzgsIDE1MCwgOSwgMTQsIDIzOCwgMTQ5LCA5LCAxNCwgMjM4LCAxNDgsIDksIDE0LCAyMzgsIDE0NywgCisgICAgOSwgMTQsIDIzOCwgMTQ2LCA5LCAxNCwgMjM4LCAxNDUsIDksIDE0LCAyMzgsIDE0NCwgOSwgMTQsIDIzOCwgMTQzLCA5LCAKKyAgICAxNCwgMjM4LCAxNDIsIDksIDE0LCAyMzgsIDE0MSwgOSwgMTQsIDIzOCwgMTQwLCA5LCAxNCwgMjM4LCAxMzksIDksIDE0LCAKKyAgICAyMzgsIDEzOCwgOSwgMTQsIDIzOCwgMTM3LCA5LCAxNCwgMjM4LCAxMzYsIDksIDE0LCAyMzgsIDEzNSwgOSwgMTQsIDIzOCwgCisgICAgMTM0LCA5LCAxNCwgMjM4LCAxMzMsIDksIDE0LCAyMzgsIDEzMiwgOSwgMTQsIDIzOCwgMTMxLCA5LCAxNCwgMjM4LCAxMzAsIAorICAgIDksIDE0LCAyMzgsIDEyOSwgOSwgMTQsIDIzOCwgMTI4LCA5LCAxNCwgMjM4LCAxMjcsIDksIDE0LCAyMzgsIDEyNiwgOSwgCisgICAgMTQsIDIzOCwgMTI1LCA5LCAxNCwgMjM4LCAxMjQsIDksIDE0LCAyMzgsIDEyMywgOSwgMTQsIDIzOCwgMTIyLCA5LCAxNCwgCisgICAgMjM4LCAxMjEsIDksIDE0LCAyMzgsIDEyMCwgOSwgMTQsIDIzOCwgMTE5LCA5LCAxNCwgMjM4LCAxMTgsIDksIDE0LCAyMzgsIAorICAgIDExNywgOSwgMTQsIDIzOCwgMTE2LCA5LCAxNCwgMjM4LCAxMTUsIDksIDE0LCAyMzgsIDExNCwgOSwgMTQsIDIzOCwgMTEzLCAKKyAgICA5LCAxNCwgMjM4LCAxMTIsIDksIDE0LCAyMzgsIDExMSwgOSwgMTQsIDIzOCwgMTEwLCA5LCAxNCwgMjM4LCAxMDksIDksIAorICAgIDE0LCAyMzgsIDEwOCwgOSwgMTQsIDIzOCwgMTA3LCA5LCAxNCwgMjM4LCAxMDYsIDksIDE0LCAyMzgsIDEwNSwgOSwgMTQsIAorICAgIDIzOCwgMTA0LCA5LCAxNCwgMjM4LCAxMDMsIDksIDE0LCAyMzgsIDEwMiwgOSwgMTQsIDIzOCwgMTAxLCA5LCAxNCwgMjM4LCAKKyAgICAxMDAsIDksIDE0LCAyMzgsIDk5LCA5LCAxNCwgMjM4LCA5OCwgOSwgMTQsIDIzOCwgOTcsIDksIDE0LCAyMzgsIDk2LCA5LCAKKyAgICAxNCwgMjM4LCA5NSwgOSwgMTQsIDIzOCwgOTQsIDksIDE0LCAyMzgsIDkzLCA5LCAxNCwgMjM4LCA5MiwgOSwgMTQsIDIzOCwgCisgICAgOTEsIDksIDE0LCAyMzgsIDkwLCA5LCAxNCwgMjM4LCA4OSwgOSwgMTQsIDIzOCwgODgsIDksIDE0LCAyMzgsIDg3LCA5LCAKKyAgICAxNCwgMjM4LCA4NiwgOSwgMTQsIDIzOCwgODUsIDksIDE0LCAyMzgsIDg0LCA5LCAxNCwgMjM4LCA4MywgOSwgMTQsIDIzOCwgCisgICAgODIsIDksIDE0LCAyMzgsIDgxLCA5LCAxNCwgMjM4LCA4MCwgOSwgMTQsIDIzOCwgNzksIDksIDE0LCAyMzgsIDc4LCA5LCAKKyAgICAxNCwgMjM4LCA3NywgOSwgMTQsIDIzOCwgNzYsIDksIDE0LCAyMzgsIDc1LCA5LCAxNCwgMjM4LCA3NCwgOSwgMTQsIDIzOCwgCisgICAgNzMsIDIzMywgOTAsIDIxNywgODQsIDEyOSwgMjE5LCAxOCwgMTI5LCAyNDUsIDMxLCA3OCwgMTI5LCAyMjMsIDI1NCwgNzgsIAorICAgIDEyOSwgNTQsIDUwLCAxMjksIDI0NywgMTMyLCA1MCwgMTI5LCAyMjUsIDE4MiwgNTAsIDEyOSwgMjU0LCAxMjYsIDEyOSwgCisgICAgMjU0LCA1NywgMTI5LCA0MywgMjI2LCAzLCAxMjksIDQ0LCAyMjYsIDMsIDEyOSwgMjUzLCAyMTYsIDEyOSwgOTYsIDUwLCAKKyAgICAxMjksIDI0OSwgMjE5LCAxMjksIDI0MCwgMTY3LCAxMjksIDI0MywgMjI5LCAyMTgsIDEyOSwgMTI5LCAyMTksIDQ2LCAxMjksIAorICAgIDIxLCAyMTAsIDg2LCAxMjksIDIxLCAxMTAsIDEyOSwgMjEsIDEwNSwgMTI5LCAyMSwgMTU4LCAxMjksIDIxLCAxNjEsIDEyOSwgCisgICAgMjEsIDE4OSwgMTI5LCAyMSwgMTk0LCAxMjksIDIxLCAxOTgsIDEyOSwgMjEsIDE5NSwgMTI5LCAyMSwgMjAwLCAxMjksIAorICAgIDI0OSwgMjI2LCAxMjksIDIyMCwgMTUwLCAxMjksIDIzMywgMTUsIDUwLCAxMjksIDI0NSwgOTgsIDUwLCAxMjksIDI0MiwgCisgICAgMTMwLCA1MCwgMTI5LCAyMjQsIDEzLCA3OCwgMTI5LCAyNDksIDIxNywgMjUzLCAyMDYsIDEyOSwgNywgNiwgMSwgNjEsIAorICAgIDEyOSwgNywgNiwgMSwgMjUzLCAxNTgsIDEyOSwgNywgNiwgMSwgMjUxLCA2NiwgMTI5LCA3LCA2LCAxLCAyNDksIDYwLCAKKyAgICAxMjksIDcsIDYsIDEsIDc1LCAxMjksIDcsIDYsIDEsIDI0NSwgNiwgMTI5LCA3LCA2LCAxLCAyNDMsIDIwMiwgMTI5LCA3LCAKKyAgICA2LCAxLCAyNDIsIDYwLCAxMjksIDcsIDYsIDEsIDczLCAxMjksIDcsIDYsIDEsIDIzNSwgMTQ0LCAxMjksIDcsIDYsIDEsIAorICAgIDIzNSwgMjMsIDEyOSwgNywgNiwgMSwgMTU2LCAxMjksIDcsIDYsIDEsIDE5MywgMTI5LCA3LCA2LCAxLCAyMzAsIDI1LCAKKyAgICAxMjksIDcsIDYsIDEsIDc2LCAxMjksIDcsIDYsIDEsIDIyNiwgMTA1LCAxMjksIDcsIDYsIDEsIDIyNCwgOTYsIDEyOSwgNywgCisgICAgNiwgMSwgMTUzLCAxMjksIDcsIDYsIDEsIDIyMiwgOTEsIDEyOSwgNywgNiwgMSwgMjE3LCAxNTIsIDEyOSwgNywgNiwgMSwgCisgICAgNzAsIDEyOSwgNywgNiwgMSwgMjE0LCAxMDUsIDEyOSwgNywgNiwgMSwgMjEyLCA5OCwgMTI5LCA3LCA2LCAxLCAyMTEsIAorICAgIDE3OCwgMTI5LCA3LCA2LCAxLCAyMTEsIDExNywgMTI5LCA3LCA2LCAxLCAyMTAsIDE1OSwgMTI5LCA0MywgNDIsIDEyNywgCisgICAgMTI5LCAyMjMsIDUwLCAyMTksIDQ2LCAxMjksIDQ0LCA0MiwgMTI3LCAxMjksIDI1MCwgMzEsIDI1NSwgMTQsIDEyOSwgMTIxLCAKKyAgICAyMzIsIDIxMywgMTI5LCAyNDIsIDEzNywgMjU1LCAxNCwgMTI5LCA3LCA0LCAxLCA2MSwgMTI5LCA3LCA0LCAxLCAyNTMsIAorICAgIDE1OCwgMTI5LCA3LCA0LCAxLCAyNTEsIDY2LCAxMjksIDcsIDQsIDEsIDI0OSwgNjAsIDEyOSwgNywgNCwgMSwgNzUsIDEyOSwgCisgICAgNywgNCwgMSwgMjQ1LCA2LCAxMjksIDcsIDQsIDEsIDI0MywgMjAyLCAxMjksIDcsIDQsIDEsIDI0MiwgNjAsIDEyOSwgNywgCisgICAgNCwgMSwgNzMsIDEyOSwgNywgNCwgMSwgMjM1LCAxNDQsIDEyOSwgNywgNCwgMSwgMjM1LCAyMywgMTI5LCA3LCA0LCAxLCAKKyAgICAxNTYsIDEyOSwgNywgNCwgMSwgMTkzLCAxMjksIDcsIDQsIDEsIDIzMCwgMjUsIDEyOSwgNywgNCwgMSwgNzYsIDEyOSwgNywgCisgICAgNCwgMSwgMjI2LCAxMDUsIDEyOSwgNywgNCwgMSwgMjI0LCA5NiwgMTI5LCA3LCA0LCAxLCAxNTMsIDEyOSwgNywgNCwgMSwgCisgICAgMjIyLCA5MSwgMTI5LCA3LCA0LCAxLCAyMTcsIDE1MiwgMTI5LCA3LCA0LCAxLCA3MCwgMTI5LCA3LCA0LCAxLCAyMTQsIAorICAgIDEwNSwgMTI5LCA3LCA0LCAxLCAyMTIsIDk4LCAxMjksIDcsIDQsIDEsIDIxMSwgMTc4LCAxMjksIDcsIDQsIDEsIDIxMSwgCisgICAgMTE3LCAxMjksIDcsIDQsIDEsIDIxMCwgMTU5LCAxMjksIDQzLCAyNDksIDk5LCAxMjcsIDEyOSwgNjcsIDIzMiwgMjEzLCAKKyAgICAxMjksIDQ0LCAyNDksIDk5LCAxMjcsIDEyOSwgMTgyLCAyNTEsIDYsIDIxNywgODQsIDQ1LCAyMjEsIDc4LCA0NSwgMjIxLCAKKyAgICA2NywgNDUsIDIyMSwgNTYsIDQ1LCAyMjEsIDQ0LCA0NSwgMjIxLCAzMywgNDUsIDIyMSwgMjIsIDQ1LCAyMjEsIDExLCA0NSwgCisgICAgMjIxLCAwLCA0NSwgMjIwLCAyNDUsIDQ1LCAyMjAsIDIzNywgNDUsIDIyMCwgMjM2LCA0NSwgMjIwLCAyMzUsIDQ1LCAyMjAsIAorICAgIDIzNCwgNDUsIDIyMCwgMjMyLCA0NSwgMjIwLCAyMzEsIDQ1LCAyMjAsIDIzMCwgNDUsIDIyMCwgMjI5LCA0NSwgMjIwLCAKKyAgICAyMjgsIDQ1LCAyMjAsIDIyNywgNDUsIDIyMCwgMjI2LCA0NSwgMjIwLCAyMjUsIDQ1LCAyMjAsIDIyNCwgNDUsIDIyMCwgCisgICAgMjIzLCA0NSwgMjIwLCAyMjEsIDQ1LCAyMjAsIDIyMCwgNDUsIDIyMCwgMjE5LCA0NSwgMjIwLCAyMTgsIDQ1LCAyMjAsIAorICAgIDIxNywgNDUsIDIyMCwgMjE2LCA0NSwgMjIwLCAyMTUsIDQ1LCAyMjAsIDIxNCwgNDUsIDIyMCwgMjEzLCA0NSwgMjIwLCAKKyAgICAyMTIsIDQ1LCAyMjAsIDIxMCwgNDUsIDIyMCwgMjA5LCA0NSwgMjIwLCAyMDgsIDQ1LCAyMjAsIDIwNywgNDUsIDIyMCwgCisgICAgMjA2LCA0NSwgMjIwLCAyMDUsIDQ1LCAyMjAsIDIwNCwgNDUsIDIyMCwgMjAzLCA0NSwgMjIwLCAyMDIsIDQ1LCAyMjAsIAorICAgIDIwMSwgNDUsIDIyMCwgMTk5LCA0NSwgMjIwLCAxOTgsIDQ1LCAyMjAsIDE5NywgNDUsIDIyMCwgMTk2LCA0NSwgMjIwLCAKKyAgICAxOTUsIDQ1LCAyMjAsIDE5NCwgNDUsIDIyMCwgMTkzLCA0NSwgMjIwLCAxOTIsIDQ1LCAyMjAsIDE5MSwgNDUsIDIyMCwgCisgICAgMTkwLCA0NSwgMjIwLCAxODgsIDQ1LCAyMjAsIDE4NywgNDUsIDIyMCwgMTg2LCA0NSwgMjIwLCAxODUsIDQ1LCAyMjAsIAorICAgIDE4NCwgNDUsIDIyMCwgMTgzLCA0NSwgMjIwLCAxODIsIDQ1LCAyMjAsIDE4MSwgNDUsIDIyMCwgMTgwLCA0NSwgMjIwLCAKKyAgICAxNzksIDQ1LCAyMjAsIDE3NywgNDUsIDIyMCwgMTc2LCA0NSwgMjIwLCAxNzUsIDQ1LCAyMjAsIDE3NCwgNDUsIDIyMCwgCisgICAgMTczLCA0NSwgMjIwLCAxNzIsIDQ1LCAyMjAsIDE3MSwgNDUsIDIyMCwgMTcwLCA0NSwgMjIwLCAxNjksIDQ1LCAyMjAsIAorICAgIDE2OCwgNDUsIDIyMCwgMTY2LCA0NSwgMjIwLCAxNjUsIDQ1LCAyMjAsIDE2NCwgNDUsIDIyMCwgMTYzLCA0NSwgMjIwLCAKKyAgICAxNjIsIDQ1LCAyMjAsIDE2MSwgNDUsIDIyMCwgMTYwLCA0NSwgMjIwLCAxNTksIDQ1LCAyMjAsIDE1OCwgNDUsIDIyMCwgCisgICAgMTU3LCA0NSwgMjIxLCAxNTQsIDQ1LCAyMjEsIDE1MywgNDUsIDIyMSwgMTUyLCA0NSwgMjIxLCAxNTEsIDQ1LCAyMjEsIAorICAgIDE1MCwgNDUsIDIyMSwgMTQ5LCA0NSwgMjIxLCAxNDgsIDQ1LCAyMjEsIDE0NywgNDUsIDIyMSwgMTQ2LCA0NSwgMjIxLCAKKyAgICAxNDUsIDQ1LCAyMjEsIDE0MywgNDUsIDIyMSwgMTQyLCA0NSwgMjIxLCAxNDEsIDQ1LCAyMjEsIDE0MCwgNDUsIDIyMSwgCisgICAgMTM5LCA0NSwgMjIxLCAxMzgsIDQ1LCAyMjEsIDEzNywgNDUsIDIyMSwgMTM2LCA0NSwgMjIxLCAxMzUsIDQ1LCAyMjEsIAorICAgIDEzNCwgNDUsIDIyMSwgMTMyLCA0NSwgMjIxLCAxMzEsIDQ1LCAyMjEsIDEzMCwgNDUsIDIyMSwgMTI5LCA0NSwgMjIxLCAKKyAgICAxMjgsIDQ1LCAyMjEsIDEyNywgNDUsIDIyMSwgMTI2LCA0NSwgMjIxLCAxMjUsIDQ1LCAyMjEsIDEyNCwgNDUsIDIyMSwgCisgICAgMTIzLCA0NSwgMjIxLCAxMjEsIDQ1LCAyMjEsIDEyMCwgNDUsIDIyMSwgMTE5LCA0NSwgMjIxLCAxMTgsIDQ1LCAyMjEsIAorICAgIDExNywgNDUsIDIyMSwgMTE2LCA0NSwgMjIxLCAxMTUsIDQ1LCAyMjEsIDExNCwgNDUsIDIyMSwgMTEzLCA0NSwgMjIxLCAKKyAgICAxMTIsIDQ1LCAyMjEsIDExMCwgNDUsIDIyMSwgMTA5LCA0NSwgMjIxLCAxMDgsIDQ1LCAyMjEsIDEwNywgNDUsIDIyMSwgCisgICAgMTA2LCA0NSwgMjIxLCAxMDUsIDQ1LCAyMjEsIDEwNCwgNDUsIDIyMSwgMTAzLCA0NSwgMjIxLCAxMDIsIDQ1LCAyMjEsIAorICAgIDEwMSwgNDUsIDIyMSwgOTksIDQ1LCAyMjEsIDk4LCA0NSwgMjIxLCA5NywgNDUsIDIyMSwgOTYsIDQ1LCAyMjEsIDk1LCA0NSwgCisgICAgMjIxLCA5NCwgNDUsIDIyMSwgOTMsIDQ1LCAyMjEsIDkyLCA0NSwgMjIxLCA5MSwgNDUsIDIyMSwgOTAsIDQ1LCAyMjEsIDg4LCAKKyAgICA0NSwgMjIxLCA4NywgNDUsIDIyMSwgODYsIDQ1LCAyMjEsIDg1LCA0NSwgMjIxLCA4NCwgNDUsIDIyMSwgODMsIDQ1LCAyMjEsIAorICAgIDgyLCA0NSwgMjIxLCA4MSwgNDUsIDIyMSwgODAsIDQ1LCAyMjEsIDc5LCA0NSwgMjIxLCA3NywgNDUsIDIyMSwgNzYsIDQ1LCAKKyAgICAyMjEsIDc1LCA0NSwgMjIxLCA3NCwgNDUsIDIyMSwgNzMsIDQ1LCAyMjEsIDcyLCA0NSwgMjIxLCA3MSwgNDUsIDIyMSwgNzAsIAorICAgIDQ1LCAyMjEsIDY5LCA0NSwgMjIxLCA2OCwgNDUsIDIyMSwgNjYsIDQ1LCAyMjEsIDY1LCA0NSwgMjIxLCA2NCwgNDUsIDIyMSwgCisgICAgNjMsIDQ1LCAyMjEsIDYyLCA0NSwgMjIxLCA2MSwgNDUsIDIyMSwgNjAsIDQ1LCAyMjEsIDU5LCA0NSwgMjIxLCA1OCwgNDUsIAorICAgIDIyMSwgNTcsIDQ1LCAyMjEsIDU1LCA0NSwgMjIxLCA1NCwgNDUsIDIyMSwgNTMsIDQ1LCAyMjEsIDUyLCA0NSwgMjIxLCA1MSwgCisgICAgNDUsIDIyMSwgNTAsIDQ1LCAyMjEsIDQ5LCA0NSwgMjIxLCA0OCwgNDUsIDIyMSwgNDcsIDQ1LCAyMjEsIDQ2LCA0NSwgMjIxLCAKKyAgICA0MywgNDUsIDIyMSwgNDIsIDQ1LCAyMjEsIDQxLCA0NSwgMjIxLCA0MCwgNDUsIDIyMSwgMzksIDQ1LCAyMjEsIDM4LCA0NSwgCisgICAgMjIxLCAzNywgNDUsIDIyMSwgMzYsIDQ1LCAyMjEsIDM1LCA0NSwgMjIxLCAzNCwgNDUsIDIyMSwgMzIsIDQ1LCAyMjEsIDMxLCAKKyAgICA0NSwgMjIxLCAzMCwgNDUsIDIyMSwgMjksIDQ1LCAyMjEsIDI4LCA0NSwgMjIxLCAyNywgNDUsIDIyMSwgMjYsIDQ1LCAyMjEsIAorICAgIDI1LCA0NSwgMjIxLCAyNCwgNDUsIDIyMSwgMjMsIDQ1LCAyMjEsIDIxLCA0NSwgMjIxLCAyMCwgNDUsIDIyMSwgMTksIDQ1LCAKKyAgICAyMjEsIDE4LCA0NSwgMjIxLCAxNywgNDUsIDIyMSwgMTYsIDQ1LCAyMjEsIDE1LCA0NSwgMjIxLCAxNCwgNDUsIDIyMSwgMTMsIAorICAgIDQ1LCAyMjEsIDEyLCA0NSwgMjIxLCAxMCwgNDUsIDIyMSwgOSwgNDUsIDIyMSwgOCwgNDUsIDIyMSwgNywgNDUsIDIyMSwgNiwgCisgICAgNDUsIDIyMSwgNSwgNDUsIDIyMSwgNCwgNDUsIDIyMSwgMywgNDUsIDIyMSwgMiwgNDUsIDIyMSwgMSwgNDUsIDIyMCwgMjU1LCAKKyAgICA0NSwgMjIwLCAyNTQsIDQ1LCAyMjAsIDI1MywgNDUsIDIyMCwgMjUyLCA0NSwgMjIwLCAyNTEsIDQ1LCAyMjAsIDI1MCwgNDUsIAorICAgIDIyMCwgMjQ5LCA0NSwgMjIwLCAyNDgsIDQ1LCAyMjAsIDI0NywgNDUsIDIyMCwgMjQ2LCA0NSwgMjIwLCAyNDQsIDQ1LCAKKyAgICAyMjAsIDI0MywgNDUsIDIyMCwgMjQyLCA0NSwgMjIwLCAyNDEsIDQ1LCAyMjAsIDI0MCwgNDUsIDIyMCwgMjM5LCA0NSwgCisgICAgMjIwLCAyMzgsIDIyNywgMjAyLCAyMjcsIDIwNCwgMjE4LCAxNTIsIDY0LCAyNDEsIDIzMywgMjE5LCA0OCwgMjE4LCAxNTIsIAorICAgIDY0LCAyMTYsIDIxMiwgMjE4LCA4NSwgMjQ1LCAxNDMsIDY0LCAyMTYsIDIxMiwgMjQ1LCA1NiwgMjQ1LCAxNDMsIDY0LCAKKyAgICAyMTUsIDI0MywgMjQ1LCAxMDksIDI0NSwgMTMyLCAyNDUsIDEzMywgMjU1LCA3LCAyNTUsIDgsIDI1NCwgMTY3LCAyNTIsIAorICAgIDQ3LCAyNTIsIDE3OSwgMjUxLCAxMzEsIDEzNSwgMjE3LCA4OSwgMjAzLCAyMTcsIDg5LCAyNDAsIDIyNywgMjE3LCA5MywgCisgICAgMjMyLCAyMTQsIDI0NCwgMTQ1LCAxNjYsIDIzMiwgMjEzLCAyNDUsIDE0MywgNjQsIDIzMiwgMjEzLCAyMzMsIDAsIDIyOCwgCisgICAgMTM1LCAyNDUsIDExMiwgMjMyLCAyMTQsIDIxNywgODksIDY3LCAyMTcsIDg5LCAyMTIsIDExOCwgMjQ0LCAyMCwgMjQ0LCAKKyAgICAxNDUsIDI0NCwgMTI1LCAyNTAsIDIzMCwgMjIzLCA1MywgMjQ5LCAxNDMsIDIyMCwgMjgsIDIyNiwgMTMwLCAyMzIsIDE1MCwgCisgICAgMTEwLCAyMTksIDU4LCAyMjAsIDI4LCAyMzUsIDI1NSwgMjMyLCAxNTAsIDIxMCwgODYsIDIxOSwgMTkxLCAyNDgsIDE1MSwgCisgICAgMjMyLCAyMDQsIDI0NSwgNzcsIDI0NywgMTU1LCAyNDgsIDMxLCAyNDksIDE3OCwgMTEwLCAyNDgsIDE0MSwgMjQ4LCAzMSwgCisgICAgMjQ5LCAxNzgsIDEwNSwgMjQ4LCAxNDAsIDI0OCwgMzEsIDI0OSwgMTc4LCAxNTgsIDI0OCwgMTM5LCAyNDgsIDMxLCAyNDksIAorICAgIDE3OCwgMTYxLCAyNDgsIDEzOCwgMTUyLCAyNTUsIDcsIDIyOSwgMjA5LCAyMTcsIDE3NywgMjM2LCA2MiwgMjE3LCAxODAsIAorICAgIDI0NSwgMTQzLCA2NCwgMjE1LCAyNDQsIDI1MSwgMjEzLCAyNDUsIDYyLCAyNTEsIDUsIDI1MSwgNywgMjQ1LCAxNDMsIDY0LCAKKyAgICAyMzEsIDgxLCAyNDUsIDExMCwgMjE4LCA2MSwgMjE4LCA3OCwgMjQ1LCA3NywgMjQ1LCA3OCwgMjM1LCAyMzIsIDIyMCwgCisgICAgMTM4LCAxNjEsIDI0NCwgMTA3LCAyMjAsIDEzNywgMjQzLCAyMzcsIDIzNSwgMjMyLCAyMjAsIDEzOCwgMTU4LCAyNDIsIAorICAgIDEyMSwgMjIwLCAxMzcsIDI0MiwgMTE4LCAyMzUsIDIzMiwgMjIwLCAxMzgsIDEwNSwgMjIzLCAxMjEsIDIyMCwgMTM3LCAKKyAgICAyMjIsIDE0NSwgMjM1LCAyMzIsIDIyMCwgMTM4LCAxMTAsIDIxNCwgMTc0LCAyMjAsIDEzNywgMjE0LCAxMzMsIDIxOSwgMjEsIAorICAgIDI0OCwgNjMsIDI0OCwgNjUsIDIyNiwgNzgsIDI1MCwgMTQyLCAyMjYsIDgwLCAxMjUsIDIyNiwgMjQwLCAyMjQsIDE5MywgCisgICAgMjQxLCA0NywgMjUxLCAxNTAsIDIyNSwgMTczLCAyNDEsIDIwMywgMjUxLCAxNjEsIDIyOCwgNzUsIDI1MSwgMTUwLCAyNDEsIAorICAgIDIwMywgMjI5LCAxNzUsIDIzNSwgMjQyLCAyMzUsIDI0NCwgMjI5LCA4MiwgMjMyLCAyMTMsIDIyOSwgOTksIDIxOCwgMTUyLCAKKyAgICA2NCwgMjIxLCAxNTgsIDI1NCwgMTgsIDIxOCwgMjIzLCAyNDUsIDE0MywgNjQsIDIyMSwgMTU4LCAyNTQsIDE4LCAyNDUsIAorICAgIDgwLCAxMzUsIDIxNywgOTAsIDIyMCwgMTI3LCAyMDMsIDIxNywgOTAsIDIyMCwgMTI3LCAyNDAsIDIyNCwgMTM1LCAyMTcsIAorICAgIDkwLCAyLCAyMzUsIDM1LCAyMDMsIDIxNywgOTAsIDIsIDIzNSwgMzUsIDI0MCwgMjI1LCAyMzIsIDIxNCwgMjE3LCA5MCwgCisgICAgMjIwLCAxMjcsIDY3LCAyMTcsIDkwLCAyMjAsIDEyNywgMjEyLCAxMTcsIDIyNSwgMjUzLCAyMzIsIDIxNCwgMjQ0LCAxNCwgCisgICAgMjI1LCAyNTMsIDIzMiwgMjE0LCAyNDYsIDEwNiwgMjI1LCAzMiwgMjI1LCAyNTMsIDIzMiwgMjE0LCAyNTIsIDE3OCwgMjI1LCAKKyAgICAyNTMsIDIzMiwgMjE0LCAyMTQsIDE2MywgMjI1LCAyOCwgMjIzLCA1MCwgMjMyLCAyMTQsIDI0NCwgMTQ1LCAyMjMsIDUwLCAKKyAgICAyMzUsIDI0MiwgMjIzLCAzNSwgMjE5LCAxNTUsIDIyMCwgMjgsIDEwNSwgMjE5LCAxNTIsIDIxOCwgMjI1LCAyMTksIDE1NSwgCisgICAgMjIwLCAyOCwgMTU4LCAyMTksIDE1MSwgMjE4LCAyMjQsIDI0OCwgMzEsIDI0OSwgMTc4LCAyMTgsIDEwNSwgMjQ4LCAxMzcsIAorICAgIDIyNCwgMTgzLCAyMTQsIDEzMiwgMTEwLCAyMjQsIDE4MywgMjE0LCAxMzAsIDIyNCwgMTQ5LCAyMjQsIDE4MywgMjE0LCAKKyAgICAxMzIsIDEwNSwgMjI0LCAxODMsIDIxNCwgMTI5LCAyMjQsIDE0OCwgMjIwLCAxMjgsIDIxNSwgMjQyLCAyMTgsIDE1MSwgCisgICAgMjE4LCA4OSwgMjUxLCA2LCAyNTAsIDE0MiwgMjUwLCAyMDksIDIzMSwgNDMsIDIxMiwgNTksIDIzMCwgNDMsIDIxOCwgMTUyLCAKKyAgICA2NCwgMjQyLCAxMDcsIDI1NCwgMTgsIDIxOCwgMTUyLCA2NCwgMjI0LCAxNjYsIDI1NCwgMTgsIDIxOSwgMjAsIDI0NSwgCisgICAgMTQzLCA2NCwgMjQyLCAxMDcsIDI1NCwgMTgsIDI0NSwgMTQzLCA2NCwgMjI0LCAxNjYsIDI1NCwgMTgsIDI0NSwgMTA3LCAKKyAgICAyMTgsIDE1MiwgNjQsIDIxOCwgMTA1LCAyMTksIDM1LCAyMTksIDE1NSwgMjQyLCAxNDEsIDEzNSwgMjM1LCAxOTUsIDIyMCwgCisgICAgMTA3LCAyMTksIDE1NSwgMTM1LCAyMzUsIDE5NSwgMjIxLCAxOTQsIDI0OSwgMTc4LCAyMjAsIDEzNSwgMjM1LCAxOTUsIAorICAgIDI0OSwgMTEzLCAyMTgsIDEwNiwgMjE2LCAyMzYsIDIxOCwgMTY4LCAyMjYsIDE2OSwgMjE3LCAxNjcsIDI0OSwgMjE4LCAKKyAgICAyMjYsIDE0MiwgMjI0LCAxODQsIDIzMSwgNDIsIDIyNSwgMTksIDI1NCwgNTMsIDIyNCwgMTc4LCAyNDksIDIxOCwgMjU0LCAKKyAgICA2OSwgMjI5LCAxNjMsIDIxOSwgMjAwLCA3LCA2LCAxLCAyNDIsIDI0OSwgNywgNCwgMSwgMjQyLCAyNDksIDI1MCwgMTU5LCAKKyAgICAxNjUsIDEsIDIzMiwgMTc1LCAyMDksIDIwOSwgMSwgMjQ0LCA0NCwgMjQ0LCAzNiwgMjA5LCAyMDksIDEsIDI0NCwgNDQsIAorICAgIDI0NCwgMTU3LCAyMDksIDIwOSwgMSwgMjIyLCAyMTEsIDIwOSwgMjA5LCAxLCAyMzIsIDE1NiwgNjMsIDE2NCwgMjUxLCAKKyAgICAyMjMsIDIyMCwgMywgMjQyLCAyMTUsIDIzMCwgMjQ4LCAyMjMsIDQxLCAyNDMsIDIxNiwgMjQzLCAyMTUsIDI0MywgMjE0LCAKKyAgICAyMzAsIDQ1LCAyMDksIDI1MSwgMjA5LCAyNTIsIDIwOSwgMjU0LCAyMzIsIDEwMiwgMjIyLCAyMTksIDIzMiwgMTAzLCAyMjIsIAorICAgIDIyMCwgMjI1LCAyMjMsIDIzMiwgMTAxLCAyMjIsIDIxOCwgMjI4LCAxMDYsIDIzMCwgMTY1LCAyMTEsIDIyOSwgMjEyLCAxNSwgCisgICAgMjQ1LCAxNjIsIDI0MywgMjI2LCAyMzAsIDIyOSwgMjI2LCAxOTcsIDIxNCwgMTM0LCA4NywgMjMwLCAyMjksIDI0OCwgMTU3LCAKKyAgICA4NywgOCwgMywgMjM1LCAxNTgsIDc4LCAyMjQsIDE5NCwgMjQ0LCAyMCwgMzEsIDY3LCA0NCwgNzEsIDIzMywgMjAsIDEyNywgCisgICAgMjEzLCAxMTgsIDIxMywgNywgMjEyLCAxOTUsIDIxMiwgMTg0LCAyMTIsIDE3MywgMjEyLCAxNjIsIDIxMiwgMTUxLCAyMTIsIAorICAgIDE0MCwgMjEyLCAxMjksIDIxMywgMTE3LCAyMTMsIDEwNiwgMjEzLCA5NSwgMjEzLCA4NCwgMjEzLCA3MywgMjEzLCA2MiwgCisgICAgMjEzLCA1MSwgMjUxLCA3MSwgMjI2LCAxNTUsIDc4LCAyNTEsIDE5NiwgMjA5LCAyNTMsIDQ5LCAyOCwgMTYsIDI0MywgMjM2LCAKKyAgICAyMTksIDEwMiwgMjUwLCA3MywgMjE0LCA5LCAyMTMsIDQwLCAyMTMsIDI5LCAyMTMsIDE4LCAyMTMsIDYsIDIxMiwgMjUxLCAKKyAgICAyMTIsIDI0MCwgMjEyLCAyMjksIDIxMiwgMjE4LCAyMTIsIDIwNywgMjEyLCAxOTksIDIxMiwgMTk4LCAyMTIsIDE5NywgCisgICAgMjEyLCAxOTYsIDIxMiwgMTk0LCAyMTIsIDE5MywgMjEyLCAxOTIsIDIxMiwgMTkxLCAyMTIsIDE5MCwgMjEyLCAxODksIAorICAgIDIxMiwgMTg4LCAyMTIsIDE4NywgMjEyLCAxODYsIDIxMiwgMTg1LCAyMTIsIDE4MywgMjEyLCAxODIsIDIxMiwgMTgxLCAKKyAgICAyMTIsIDE4MCwgMjEyLCAxNzksIDIxMiwgMTc4LCAyMTIsIDE3NywgMjEyLCAxNzYsIDIxMiwgMTc1LCAyMTIsIDE3NCwgCisgICAgMjEyLCAxNzIsIDIxMiwgMTcxLCAyMTIsIDE3MCwgMjEyLCAxNjksIDIxMiwgMTY4LCAyMTIsIDE2NywgMjEyLCAxNjYsIAorICAgIDIxMiwgMTY1LCAyMTIsIDE2NCwgMjEyLCAxNjMsIDIxMiwgMTYxLCAyMTIsIDE2MCwgMjEyLCAxNTksIDIxMiwgMTU4LCAKKyAgICAyMTIsIDE1NywgMjEyLCAxNTYsIDIxMiwgMTU1LCAyMTIsIDE1NCwgMjEyLCAxNTMsIDIxMiwgMTUyLCAyMTIsIDE1MCwgCisgICAgMjEyLCAxNDksIDIxMiwgMTQ4LCAyMTIsIDE0NywgMjEyLCAxNDYsIDIxMiwgMTQ1LCAyMTIsIDE0NCwgMjEyLCAxNDMsIAorICAgIDIxMiwgMTQyLCAyMTIsIDE0MSwgMjEyLCAxMzksIDIxMiwgMTM4LCAyMTIsIDEzNywgMjEyLCAxMzYsIDIxMiwgMTM1LCAKKyAgICAyMTIsIDEzNCwgMjEyLCAxMzMsIDIxMiwgMTMyLCAyMTIsIDEzMSwgMjEyLCAxMzAsIDIxMiwgMTI4LCAyMTIsIDEyNywgCisgICAgMjEyLCAxMjYsIDIxMiwgMTI1LCAyMTIsIDEyNCwgMjEyLCAxMjMsIDIxMiwgMTIyLCAyMTIsIDEyMSwgMjEyLCAxMjAsIAorICAgIDIxMiwgMTE5LCAyMTMsIDExNiwgMjEzLCAxMTUsIDIxMywgMTE0LCAyMTMsIDExMywgMjEzLCAxMTIsIDIxMywgMTExLCAKKyAgICAyMTMsIDExMCwgMjEzLCAxMDksIDIxMywgMTA4LCAyMTMsIDEwNywgMjEzLCAxMDUsIDIxMywgMTA0LCAyMTMsIDEwMywgCisgICAgMjEzLCAxMDIsIDIxMywgMTAxLCAyMTMsIDEwMCwgMjEzLCA5OSwgMjEzLCA5OCwgMjEzLCA5NywgMjEzLCA5NiwgMjEzLCAKKyAgICA5NCwgMjEzLCA5MywgMjEzLCA5MiwgMjEzLCA5MSwgMjEzLCA5MCwgMjEzLCA4OSwgMjEzLCA4OCwgMjEzLCA4NywgMjEzLCAKKyAgICA4NiwgMjEzLCA4NSwgMjEzLCA4MywgMjEzLCA4MiwgMjEzLCA4MSwgMjEzLCA4MCwgMjEzLCA3OSwgMjEzLCA3OCwgMjEzLCAKKyAgICA3NywgMjEzLCA3NiwgMjEzLCA3NSwgMjEzLCA3NCwgMjEzLCA3MiwgMjEzLCA3MSwgMjEzLCA3MCwgMjEzLCA2OSwgMjEzLCAKKyAgICA2OCwgMjEzLCA2NywgMjEzLCA2NiwgMjEzLCA2NSwgMjEzLCA2NCwgMjEzLCA2MywgMjEzLCA2MSwgMjEzLCA2MCwgMjEzLCAKKyAgICA1OSwgMjEzLCA1OCwgMjEzLCA1NywgMjEzLCA1NiwgMjEzLCA1NSwgMjEzLCA1NCwgMjEzLCA1MywgMjEzLCA1MiwgMjEzLCAKKyAgICA1MCwgMjEzLCA0OSwgMjEzLCA0OCwgMjEzLCA0NywgMjEzLCA0NiwgMjEzLCA0NSwgMjEzLCA0NCwgMjEzLCA0MywgMjEzLCAKKyAgICA0MiwgMjEzLCA0MSwgMjEzLCAzOSwgMjEzLCAzOCwgMjEzLCAzNywgMjEzLCAzNiwgMjEzLCAzNSwgMjEzLCAzNCwgMjEzLCAKKyAgICAzMywgMjEzLCAzMiwgMjEzLCAzMSwgMjEzLCAzMCwgMjEzLCAyOCwgMjEzLCAyNywgMjEzLCAyNiwgMjEzLCAyNSwgMjEzLCAKKyAgICAyNCwgMjEzLCAyMywgMjEzLCAyMiwgMjEzLCAyMSwgMjEzLCAyMCwgMjEzLCAxOSwgMjEzLCAxNywgMjEzLCAxNiwgMjEzLCAKKyAgICAxNSwgMjEzLCAxNCwgMjEzLCAxMywgMjEzLCAxMiwgMjEzLCAxMSwgMjEzLCAxMCwgMjEzLCA5LCAyMTMsIDgsIDIxMywgNSwgCisgICAgMjEzLCA0LCAyMTMsIDMsIDIxMywgMiwgMjEzLCAxLCAyMTMsIDAsIDIxMiwgMjU1LCAyMTIsIDI1NCwgMjEyLCAyNTMsIAorICAgIDIxMiwgMjUyLCAyMTIsIDI1MCwgMjEyLCAyNDksIDIxMiwgMjQ4LCAyMTIsIDI0NywgMjEyLCAyNDYsIDIxMiwgMjQ1LCAKKyAgICAyMTIsIDI0NCwgMjEyLCAyNDMsIDIxMiwgMjQyLCAyMTIsIDI0MSwgMjEyLCAyMzksIDIxMiwgMjM4LCAyMTIsIDIzNywgCisgICAgMjEyLCAyMzYsIDIxMiwgMjM1LCAyMTIsIDIzNCwgMjEyLCAyMzMsIDIxMiwgMjMyLCAyMTIsIDIzMSwgMjEyLCAyMzAsIAorICAgIDIxMiwgMjI4LCAyMTIsIDIyNywgMjEyLCAyMjYsIDIxMiwgMjI1LCAyMTIsIDIyNCwgMjEyLCAyMjMsIDIxMiwgMjIyLCAKKyAgICAyMTIsIDIyMSwgMjEyLCAyMjAsIDIxMiwgMjE5LCAyMTIsIDIxNywgMjEyLCAyMTYsIDIxMiwgMjE1LCAyMTIsIDIxNCwgCisgICAgMjEyLCAyMTMsIDIxMiwgMjEyLCAyMTIsIDIxMSwgMjEyLCAyMTAsIDIxMiwgMjA5LCAyMTIsIDIwOCwgMjEyLCAyMDYsIAorICAgIDIxMiwgMjA1LCAyMTIsIDIwNCwgMjEyLCAyMDMsIDIxMiwgMjAyLCAyMTIsIDIwMSwgMjEyLCAyMDAsIDcsIDYsIDEsIDExNSwgCisgICAgMiwgMjMxLCAyMzMsIDIyLCAyNDIsIDEzNiwgNywgNCwgMSwgMTE1LCAyLCAyMzEsIDIzMywgMjIsIDI0MiwgMTM2LCA3LCA2LCAKKyAgICAxLCAxNjAsIDIsIDY3LCAyMzIsIDIxNCwgNTEsIDcsIDQsIDEsIDE2MCwgMiwgNjcsIDIzMiwgMjE0LCA1MSwgNywgNiwgMSwgCisgICAgMTYwLCAyLCA2NywgMjMyLCAyMTQsIDI1MiwgNDMsIDIyLCAyNDIsIDEzNiwgNywgNCwgMSwgMTYwLCAyLCA2NywgMjMyLCAKKyAgICAyMTQsIDI1MiwgNDMsIDIyLCAyNDIsIDEzNiwgNywgNiwgMSwgMTYwLCAyLCA2NywgMjMyLCAyMTQsIDI1MiwgNDMsIDIyLCAKKyAgICAxNDIsIDcsIDQsIDEsIDE2MCwgMiwgNjcsIDIzMiwgMjE0LCAyNTIsIDQzLCAyMiwgMTQyLCA3LCA2LCAxLCAxNjAsIDIsIAorICAgIDI1MCwgMzEsIDIyLCAyMzEsIDIzMiwgNywgNCwgMSwgMTYwLCAyLCAyNTAsIDMxLCAyMiwgMjMxLCAyMzIsIDcsIDYsIDEsIAorICAgIDE2MCwgMiwgMjUwLCAzMSwgMjIsIDI1MCwgMjM0LCA3LCA0LCAxLCAxNjAsIDIsIDI1MCwgMzEsIDIyLCAyNTAsIDIzNCwgNywgCisgICAgNiwgMSwgMjQwLCAxNTQsIDIsIDIzMSwgMjMzLCAyMiwgMjQyLCAxMzYsIDcsIDQsIDEsIDI0MCwgMTU0LCAyLCAyMzEsIAorICAgIDIzMywgMjIsIDI0MiwgMTM2LCA3LCA0LCAxLCAyNDAsIDE1NCwgMiwgNTksIDc3LCAyMiwgMTQyLCA3LCA0LCAxLCAyMjksIAorICAgIDgwLCAyLCAyMTYsIDg5LCA0OCwgNywgNiwgMSwgMTQ0LCAyLCA2NywgMjMyLCAyMTQsIDUxLCA3LCA0LCAxLCAxNDQsIDIsIAorICAgIDY3LCAyMzIsIDIxNCwgNTEsIDcsIDYsIDEsIDE0NCwgMiwgNjcsIDIzMiwgMjE0LCAyNTIsIDQzLCAyMiwgMjQyLCAxMzYsIAorICAgIDcsIDQsIDEsIDE0NCwgMiwgNjcsIDIzMiwgMjE0LCAyNTIsIDQzLCAyMiwgMjQyLCAxMzYsIDcsIDYsIDEsIDE0NCwgMiwgCisgICAgNjcsIDIzMiwgMjE0LCAyNTIsIDQzLCAyMiwgMTQyLCA3LCA0LCAxLCAxNDQsIDIsIDY3LCAyMzIsIDIxNCwgMjUyLCA0MywgCisgICAgMjIsIDE0MiwgNywgNiwgMSwgMjIyLCA5MiwgMiwgNjcsIDIzMiwgMjE0LCA1MSwgNywgNCwgMSwgMjIyLCA5MiwgMiwgNjcsIAorICAgIDIzMiwgMjE0LCA1MSwgNywgNiwgMSwgMTA0LCAyLCAyMzEsIDIzMywgMjIsIDI0MiwgMTM2LCA3LCA0LCAxLCAxMDQsIDIsIAorICAgIDIzMSwgMjMzLCAyMiwgMjQyLCAxMzYsIDcsIDYsIDEsIDExNSwgMiwgMjI2LCAyMjUsIDIyLCAxNDIsIDcsIDQsIDEsIDExNSwgCisgICAgMiwgMjI2LCAyMjUsIDIyLCAxNDIsIDcsIDYsIDEsIDExNSwgMiwgMjI2LCAyMjUsIDIyLCAxODIsIDcsIDQsIDEsIDExNSwgCisgICAgMiwgMjI2LCAyMjUsIDIyLCAxODIsIDcsIDYsIDEsIDE2MCwgMiwgMjI2LCAyMjUsIDIyLCAxNDIsIDcsIDQsIDEsIDE2MCwgCisgICAgMiwgMjI2LCAyMjUsIDIyLCAxNDIsIDcsIDYsIDEsIDE2MCwgMiwgMjI2LCAyMjUsIDIyLCAxODIsIDcsIDQsIDEsIDE2MCwgCisgICAgMiwgMjI2LCAyMjUsIDIyLCAxODIsIDcsIDYsIDEsIDE2MCwgMiwgNTksIDc3LCAyMiwgMTQyLCA3LCA0LCAxLCAxNjAsIDIsIAorICAgIDU5LCA3NywgMjIsIDE0MiwgNywgNiwgMSwgMTYwLCAyLCA1OSwgNzcsIDIyLCAxODIsIDcsIDQsIDEsIDE2MCwgMiwgNTksIAorICAgIDc3LCAyMiwgMTgyLCA3LCA0LCAxLCAyNDAsIDE1NCwgMiwgNTksIDc3LCAyMiwgMjQyLCAxMzYsIDcsIDQsIDEsIDI0MCwgCisgICAgMTU0LCAyLCA1OSwgNzcsIDIyLCAxODIsIDcsIDYsIDEsIDI0MCwgMTU0LCAyLCAyMjYsIDIyNSwgMjIsIDE0MiwgNywgNCwgCisgICAgMSwgMjQwLCAxNTQsIDIsIDIyNiwgMjI1LCAyMiwgNTksIDc3LCAyMiwgMTQyLCA3LCA2LCAxLCAyNDAsIDE1NCwgMiwgMjI2LCAKKyAgICAyMjUsIDIyLCAxODIsIDcsIDQsIDEsIDI0MCwgMTU0LCAyLCAyMjYsIDIyNSwgMjIsIDU5LCA3NywgMjIsIDE4MiwgNywgNiwgCisgICAgMSwgMjM1LCAxNDUsIDIsIDE4MiwgNywgNCwgMSwgMjM1LCAxNDUsIDIsIDU5LCA3NywgMjIsIDE4MiwgNywgNiwgMSwgMjMzLCAKKyAgICAxNDksIDIsIDE4MiwgNywgNCwgMSwgMjMzLCAxNDksIDIsIDE4MiwgNywgNiwgMSwgMjMyLCA1MCwgMiwgMTgyLCA3LCA0LCAKKyAgICAxLCAyMzIsIDUwLCAyLCAxODIsIDcsIDYsIDEsIDIyMywgMjI0LCAyLCAxODIsIDcsIDQsIDEsIDIyMywgMjI0LCAyLCAxODIsIAorICAgIDcsIDYsIDEsIDEwNCwgMiwgMjI2LCAyMjUsIDIyLCAxNDIsIDcsIDQsIDEsIDEwNCwgMiwgMjI2LCAyMjUsIDIyLCAxNDIsIAorICAgIDcsIDYsIDEsIDEwNCwgMiwgMjI2LCAyMjUsIDIyLCAxODIsIDcsIDQsIDEsIDEwNCwgMiwgMjI2LCAyMjUsIDIyLCAxODIsIAorICAgIDcsIDYsIDEsIDEwNCwgMiwgMjMxLCAyMzMsIDIyLCAxNDIsIDcsIDQsIDEsIDEwNCwgMiwgMjMxLCAyMzMsIDIyLCAxNDIsIAorICAgIDcsIDYsIDEsIDEwNCwgMiwgMjMxLCAyMzMsIDIyLCAxODIsIDcsIDQsIDEsIDEwNCwgMiwgMjMxLCAyMzMsIDIyLCAxODIsIAorICAgIDcsIDQsIDEsIDI1NCwgMjQ0LCAyLCAyNDIsIDEzNiwgNywgNCwgMSwgMjA0LCAxNDQsIDIsIDI0MiwgMTM2LCA3LCA0LCAxLCAKKyAgICAyMDQsIDE0NCwgMiwgMTQyLCA3LCA0LCAxLCAyMTUsIDk0LCAyMTQsIDEwNiwgMiwgMjQyLCAxMzYsIDcsIDQsIDEsIDIxNSwgCisgICAgOTQsIDIxNCwgMTA2LCAyLCAxNDIsIDcsIDQsIDEsIDIyMSwgMTk2LCAyLCAyNDIsIDEzNiwgNywgNCwgMSwgMjIxLCAxOTYsIAorICAgIDIsIDE0MiwgNywgNCwgMSwgMjQxLCA1MSwgMjIxLCAxOTYsIDIsIDI0MiwgMTM2LCA3LCA0LCAxLCAyNDEsIDUxLCAyMjEsIAorICAgIDE5NiwgMiwgMTQyLCAxNDYsIDEsIDIzNCwgMTA5LCAzNiwgMTE2LCAyMzUsIDIzLCAzNiwgMTE2LCAyMjksIDc5LCAzNiwgCisgICAgMTE2LCAyNTEsIDY2LCAzNiwgMTE2LCAyMjcsIDE2NywgMzYsIDExNiwgMjE1LCAxNTksIDM2LCAxMTYsIDIyOCwgMTExLCAKKyAgICAzNiwgMTE2LCAyMTcsIDE1MiwgMzYsIDExNiwgMjMwLCAyNSwgMzYsIDExNiwgMjI2LCAxMDUsIDM2LCAxMTYsIDE5MywgMzYsIAorICAgIDExNiwgMjExLCAxMTcsIDM2LCAxMTYsIDE1MywgMzYsIDExNiwgMTU2LCAzNiwgMTE2LCAyMTQsIDEwNSwgMzYsIDExNiwgCisgICAgMjMyLCAxNzYsIDM2LCAxMTYsIDIzMiwgMTg1LCAzNiwgMTE2LCAyMjIsIDE4MCwgMzYsIDExNiwgMjI4LCA5MywgMzYsIAorICAgIDExNiwgMjM1LCAxNDQsIDM2LCAxMTYsIDIyMCwgMTA0LCAzNiwgMTE2LCAyMTgsIDIyNiwgMzYsIDExNiwgMjIyLCA5MSwgCisgICAgMzYsIDExNiwgMjQyLCA2MCwgMzYsIDExNiwgMjMzLCAyMzIsIDM2LCAzLCAyMzUsIDEwLCAzNiwgMywgMjM0LCA5MiwgMzYsIAorICAgIDMsIDIzNCwgODMsIDM2LCAzLCAyMzMsIDIxNywgMzYsIDMsIDIzMywgMTg4LCAzNiwgMywgMjM0LCAxODIsIDM2LCAzLCAKKyAgICAyMzQsIDE4MSwgMzYsIDMsIDIzNCwgMjQ2LCAzNiwgMywgMjM0LCAyOCwgMzYsIDMsIDIzNCwgMTAsIDM2LCAzLCAyMzQsIAorICAgIDE5NSwgMzYsIDMsIDIyOSwgNzYsIDM2LCAzLCAyMjksIDI3LCAzNiwgMywgMjI5LCAyMywgMzYsIDMsIDIyOCwgMjQ4LCAzNiwgCisgICAgMywgMjI4LCAyNDEsIDM2LCAzLCAyMjksIDY0LCAzNiwgMywgMjI5LCA2MiwgMzYsIDMsIDIyOSwgNzMsIDM2LCAzLCAyMjksIAorICAgIDQsIDM2LCAzLCAyMjgsIDI1NSwgMzYsIDMsIDIyOSwgNjYsIDM2LCAzLCAyNTEsIDMyLCAzNiwgMywgMjUwLCA1MSwgMzYsIAorICAgIDMsIDI1MCwgNDEsIDM2LCAzLCAyNDksIDExMiwgMzYsIDMsIDI0OSwgODMsIDM2LCAzLCAyNTAsIDE5MCwgMzYsIDMsIDI1MCwgCisgICAgMTgyLCAzNiwgMywgMjUxLCAyMiwgMzYsIDMsIDI0OSwgMjM4LCAzNiwgMywgMjQ5LCAxNzQsIDM2LCAzLCAyNTAsIDIyMiwgCisgICAgMzYsIDMsIDIyNywgMTY0LCAzNiwgMywgMjI3LCAxNDgsIDM2LCAzLCAyMjcsIDE0MywgMzYsIDMsIDIyNywgMTI4LCAzNiwgCisgICAgMywgMjI3LCAxMjEsIDM2LCAzLCAyMjcsIDE1NiwgMzYsIDMsIDIyNywgMTU1LCAzNiwgMywgMjI3LCAxNjEsIDM2LCAzLCAKKyAgICAyMjcsIDEzNCwgMzYsIDMsIDIyNywgMTMyLCAzNiwgMywgMjI3LCAxNTksIDM2LCAzLCAyMTUsIDE1NSwgMzYsIDMsIDIxNSwgCisgICAgMTM1LCAzNiwgMywgMjE1LCAxMzQsIDM2LCAzLCAyMTUsIDEyMywgMzYsIDMsIDIxNSwgMTIwLCAzNiwgMywgMjE1LCAxNTEsIAorICAgIDM2LCAzLCAyMTUsIDE1MCwgMzYsIDMsIDIxNSwgMTU0LCAzNiwgMywgMjE1LCAxMzMsIDM2LCAzLCAyMTUsIDEzMiwgMzYsIAorICAgIDMsIDIxNSwgMTUzLCAzNiwgMywgMjI4LCAxMDksIDM2LCAzLCAyMjgsIDk1LCAzNiwgMywgMjI4LCA5NCwgMzYsIDMsIDIyOCwgCisgICAgNzgsIDM2LCAzLCAyMjgsIDc3LCAzNiwgMywgMjI4LCAxMDUsIDM2LCAzLCAyMjgsIDEwNCwgMzYsIDMsIDIyOCwgMTA4LCAKKyAgICAzNiwgMywgMjI4LCA4MCwgMzYsIDMsIDIyOCwgNzksIDM2LCAzLCAyMjgsIDEwNywgMzYsIDMsIDIxNywgMTAxLCAzNiwgMywgCisgICAgMjE2LCAxMTcsIDM2LCAzLCAyMTYsIDEwMywgMzYsIDMsIDIxNSwgMTE4LCAzNiwgMywgMjE1LCA4NSwgMzYsIDMsIDIxNywgCisgICAgMjIsIDM2LCAzLCAyMTcsIDExLCAzNiwgMywgMjE3LCA3OSwgMzYsIDMsIDExMSwgMzYsIDMsIDIxNiwgMTcsIDM2LCAzLCAKKyAgICAyMTcsIDQxLCAzNiwgMywgMjI5LCAyMjUsIDM2LCAzLCAyMjgsIDIzMywgMzYsIDMsIDIyOCwgMjA4LCAzNiwgMywgMjI3LCAKKyAgICAyMzcsIDM2LCAzLCAyMjcsIDE3OSwgMzYsIDMsIDIyOSwgMTA3LCAzNiwgMywgMjI5LCAxMDMsIDM2LCAzLCAyMjksIDIxMiwgCisgICAgMzYsIDMsIDIyOCwgNzQsIDM2LCAzLCAyMjgsIDY0LCAzNiwgMywgMjI5LCAxODcsIDM2LCAzLCAyMjYsIDg5LCAzNiwgMywgCisgICAgMjI1LCAxMDgsIDM2LCAzLCAyMjUsIDcxLCAzNiwgMywgMjI0LCAxNTAsIDM2LCAzLCAyMjQsIDExOSwgMzYsIDMsIDIyNSwgCisgICAgMjIxLCAzNiwgMywgMjI1LCAyMTEsIDM2LCAzLCAyMjYsIDcxLCAzNiwgMywgMjI1LCAxNiwgMzYsIDMsIDIyNCwgMjQ5LCAKKyAgICAzNiwgMywgMjI1LCAyMzQsIDM2LCAzLCAyMzEsIDIzNywgMzYsIDMsIDIzMCwgMjMwLCAzNiwgMywgMjMwLCAyMDEsIDM2LCAKKyAgICAzLCAyMzAsIDEwMiwgMzYsIDMsIDIzMCwgNTQsIDM2LCAzLCAyMzEsIDkxLCAzNiwgMywgMjMxLCA4MCwgMzYsIDMsIDIzMSwgCisgICAgMjAzLCAzNiwgMywgMjMwLCAxNjEsIDM2LCAzLCAyMzAsIDEzMiwgMzYsIDMsIDIzMSwgMTM1LCAzNiwgMywgMjExLCAxMDMsIAorICAgIDM2LCAzLCAyMTEsIDgsIDM2LCAzLCAyMTAsIDI1NSwgMzYsIDMsIDIxMCwgMjEyLCAzNiwgMywgMjEwLCAxODEsIDM2LCAzLCAKKyAgICAyMTEsIDQ3LCAzNiwgMywgMjExLCA0NCwgMzYsIDMsIDIxMSwgODIsIDM2LCAzLCAyMTAsIDI0NCwgMzYsIDMsIDIxMCwgCisgICAgMjI5LCAzNiwgMywgMjExLCA1NSwgMzYsIDMsIDIyMywgMTg0LCAzNiwgMywgMjIzLCAzNSwgMzYsIDMsIDIyMiwgMjM5LCAKKyAgICAzNiwgMywgMjIyLCAxNDAsIDM2LCAzLCAyMjIsIDExMiwgMzYsIDMsIDIyMywgMTI4LCAzNiwgMywgMjIzLCAxMDgsIDM2LCAKKyAgICAzLCAyMjMsIDE2NiwgMzYsIDMsIDIyMiwgMjExLCAzNiwgMywgMjIyLCAxOTcsIDM2LCAzLCAyMjMsIDEzNiwgMzYsIDMsIAorICAgIDIzMywgMTM0LCAzNiwgMywgMjMyLCAyNDEsIDM2LCAzLCAyMzIsIDIyNywgMzYsIDMsIDIzMiwgOTgsIDM2LCAzLCAyMzIsIAorICAgIDczLCAzNiwgMywgMjMzLCA1OCwgMzYsIDMsIDIzMywgNTAsIDM2LCAzLCAyMzMsIDEwOSwgMzYsIDMsIDIzMiwgMTU2LCAzNiwgCisgICAgMywgMjMyLCAxMjcsIDM2LCAzLCAyMzMsIDc0LCAzNiwgMywgMjE0LCAyNiwgMzYsIDMsIDIxMywgMTc2LCAzNiwgMywgMjEzLCAKKyAgICAxNjIsIDM2LCAzLCAyMTIsIDExNiwgMzYsIDMsIDIxMiwgMTA5LCAzNiwgMywgMjEzLCAyNTUsIDM2LCAzLCAyMTMsIDI1MCwgCisgICAgMzYsIDMsIDIxNCwgMjMsIDM2LCAzLCAyMTMsIDEzOCwgMzYsIDMsIDIxMywgMTI3LCAzNiwgMywgMjE0LCA1LCAzNiwgMywgCisgICAgMjMyLCAxNzQsIDM2LCAzLCAyMzIsIDE2OSwgMzYsIDMsIDIzMiwgMTY4LCAzNiwgMywgMjMyLCAxNjUsIDM2LCAzLCAyMzIsIAorICAgIDE2NCwgMzYsIDMsIDIzMiwgMTcxLCAzNiwgMywgMjMyLCAxNzAsIDM2LCAzLCAyMzIsIDE3MywgMzYsIDMsIDIzMiwgMTY3LCAKKyAgICAzNiwgMywgMjMyLCAxNjYsIDM2LCAzLCAyMzIsIDE3MiwgMzYsIDMsIDIzMiwgMTgzLCAzNiwgMywgMjMyLCAxNzgsIDM2LCAKKyAgICAzLCAyMzIsIDE3NywgMzYsIDMsIDIzMiwgMTYxLCAzNiwgMywgMjMyLCAxNjAsIDM2LCAzLCAyMzIsIDE4MCwgMzYsIDMsIAorICAgIDIzMiwgMTc5LCAzNiwgMywgMjMyLCAxODIsIDM2LCAzLCAyMzIsIDE2MywgMzYsIDMsIDIzMiwgMTYyLCAzNiwgMywgMjMyLCAKKyAgICAxODEsIDM2LCAzLCAyMjIsIDE3OCwgMzYsIDMsIDIyMiwgMTY3LCAzNiwgMywgMjIyLCAxNjYsIDM2LCAzLCAyMjIsIDE2MCwgCisgICAgMzYsIDMsIDIyMiwgMTUzLCAzNiwgMywgMjIyLCAxNzQsIDM2LCAzLCAyMjIsIDE3MywgMzYsIDMsIDIyMiwgMTc3LCAzNiwgCisgICAgMywgMjIyLCAxNjUsIDM2LCAzLCAyMjIsIDE2NCwgMzYsIDMsIDIyMiwgMTc2LCAzNiwgMywgMjI4LCA5MSwgMzYsIDMsIAorICAgIDIyOCwgODYsIDM2LCAzLCAyMjgsIDg1LCAzNiwgMywgMjI4LCA4MiwgMzYsIDMsIDIyOCwgODEsIDM2LCAzLCAyMjgsIDg4LCAKKyAgICAzNiwgMywgMjI4LCA4NywgMzYsIDMsIDIyOCwgOTAsIDM2LCAzLCAyMjgsIDg0LCAzNiwgMywgMjI4LCA4MywgMzYsIDMsIAorICAgIDIyOCwgODksIDM2LCAzLCAyMzUsIDE0MCwgMzYsIDMsIDIzNSwgMTA4LCAzNiwgMywgMjM1LCAxMDEsIDM2LCAzLCAyMzUsIAorICAgIDUxLCAzNiwgMywgMjM1LCAzMywgMzYsIDMsIDIzNSwgMTI2LCAzNiwgMywgMjM1LCAxMjQsIDM2LCAzLCAyMzUsIDEzNSwgCisgICAgMzYsIDMsIDIzNSwgNjgsIDM2LCAzLCAyMzUsIDU5LCAzNiwgMywgMjM1LCAxMjksIDM2LCAzLCAyMjAsIDk4LCAzNiwgMywgCisgICAgMjIwLCAzMiwgMzYsIDMsIDIyMCwgMjcsIDM2LCAzLCAyMTksIDIyNSwgMzYsIDMsIDIxOSwgMjEwLCAzNiwgMywgMjIwLCAKKyAgICA2MywgMzYsIDMsIDIyMCwgNjEsIDM2LCAzLCAyMjAsIDkwLCAzNiwgMywgMjIwLCA3LCAzNiwgMywgMjIwLCAxLCAzNiwgMywgCisgICAgMjIwLCA3MSwgMzYsIDMsIDIxOCwgMjIyLCAzNiwgMywgMjE4LCAxOTIsIDM2LCAzLCAyMTgsIDE4OCwgMzYsIDMsIDIxOCwgCisgICAgMTc5LCAzNiwgMywgMjE4LCAxNzYsIDM2LCAzLCAyMTgsIDE5NywgMzYsIDMsIDIxOCwgMTk2LCAzNiwgMywgMjE4LCAyMjEsIAorICAgIDM2LCAzLCAyMTgsIDE4NCwgMzYsIDMsIDIxOCwgMTgzLCAzNiwgMywgMjE4LCAxOTksIDM2LCAzLCAyMjIsIDMxLCAzNiwgMywgCisgICAgMjE5LCAxOTEsIDM2LCAzLCAyMTksIDE3NSwgMzYsIDMsIDIxOCwgODMsIDM2LCAzLCAyMTgsIDQsIDM2LCAzLCAyMjEsIAorICAgIDE4MSwgMzYsIDMsIDIyMSwgMTcwLCAzNiwgMywgMjIyLCAxNywgMzYsIDMsIDIxOSwgNTgsIDM2LCAzLCAyMTksIDQwLCAzNiwgCisgICAgMywgMjIxLCAyMTksIDM2LCAzLCAyNDIsIDQ2LCAzNiwgMywgMjQxLCAxODAsIDM2LCAzLCAyNDEsIDE2MSwgMzYsIDMsIAorICAgIDI0MCwgMjIyLCAzNiwgMywgMjQwLCAyMDIsIDM2LCAzLCAyNDEsIDIzOCwgMzYsIDMsIDI0MSwgMjIwLCAzNiwgMywgMjQyLCAKKyAgICAzNiwgMzYsIDMsIDI0MSwgNjgsIDM2LCAzLCAyNDEsIDUzLCAzNiwgMywgMjQxLCAyNDYsIDM2LCAzLCAyMzMsIDIzMSwgMzYsIAorICAgIDMsIDIzMywgMjMwLCAzNiwgMywgMjMzLCAyMjUsIDM2LCAzLCAyMzMsIDIyNCwgMzYsIDMsIDIzMywgMjIxLCAzNiwgMywgCisgICAgMjMzLCAyMjAsIDM2LCAzLCAyMzMsIDIyNywgMzYsIDMsIDIzMywgMjI2LCAzNiwgMywgMjMzLCAyMjksIDM2LCAzLCAyMzMsIAorICAgIDIyMywgMzYsIDMsIDIzMywgMjIyLCAzNiwgMywgMjMzLCAyMjgsIDM2LCAzLCAyMTksIDIzMSwgMTc1LCAxMTYsIDUsIDIxMSwgCisgICAgNjgsIDE3NSwgMTE2LCA1LCAyMjMsIDE1NSwgMTc1LCAxMTYsIDUsIDIyMywgNzgsIDk4LCAxLCAyMTUsIDI4LCA2OSwgMTE2LCAKKyAgICA1LCAyNDksIDIzMywgMTc2LCA2OSwgMTE2LCA1LCAyNDksIDIzMywgMjM0LCAxMzIsIDY5LCAxMTYsIDUsIDI0OSwgMjMzLCAKKyAgICAyMzQsIDI4LCA2OSwgMTE2LCA1LCAyNDksIDIzMywgMjM0LCAxMDUsIDY5LCAxMTYsIDUsIDI0OSwgMjMzLCAyMjksIDQsIAorICAgIDY5LCAxMTYsIDUsIDI0OSwgMjMzLCAyNTEsIDMzLCA2OSwgMTE2LCA1LCAyNDksIDIzMywgMjUwLCAxNTcsIDY5LCAxMTYsIAorICAgIDUsIDI0OSwgMjMzLCAyNDksIDIzOCwgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDI1MCwgODYsIDY5LCAxMTYsIDUsIDI0OSwgCisgICAgMjMzLCAyMjcsIDEzNCwgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDI0OCwgMjIxLCA2OSwgMTE2LCA1LCAyNDksIDIzMywgMjE1LCAKKyAgICAxNDQsIDY5LCAxMTYsIDUsIDI0OSwgMjMzLCAyNDcsIDE0NSwgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDIxNSwgMTM5LCA2OSwgCisgICAgMTE2LCA1LCAyNDksIDIzMywgMTk3LCA2OSwgMTE2LCA1LCAyNDksIDIzMywgMjE3LCAxMDUsIDY5LCAxMTYsIDUsIDI0OSwgCisgICAgMjMzLCAyMTYsIDIwOCwgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDExMSwgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDIxNiwgMTU2LCAKKyAgICA2OSwgMTE2LCA1LCAyNDksIDIzMywgMjI4LCA3NCwgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDI1MiwgMTkxLCA2OSwgMTE2LCAKKyAgICA1LCAyNDksIDIzMywgMjI1LCAxNDcsIDY5LCAxMTYsIDUsIDI0OSwgMjMzLCAyMjUsIDE2LCA2OSwgMTE2LCA1LCAyNDksIAorICAgIDIzMywgMjI1LCAxMjEsIDY5LCAxMTYsIDUsIDI0OSwgMjMzLCAyMzAsIDE2MSwgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDIxMCwgCisgICAgMjQ0LCA2OSwgMTE2LCA1LCAyNDksIDIzMywgMjIyLCAyMTEsIDY5LCAxMTYsIDUsIDI0OSwgMjMzLCAyMzIsIDE1NiwgNjksIAorICAgIDExNiwgNSwgMjQ5LCAyMzMsIDIxMywgMTM4LCA2OSwgMTE2LCA1LCAyNDksIDIzMywgMjIwLCAxMDIsIDY5LCAxMTYsIDUsIAorICAgIDI0OSwgMjMzLCAyMTgsIDIyMywgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDIwNiwgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDE2MiwgCisgICAgNjksIDExNiwgNSwgMjQ5LCAyMzMsIDIzMywgMTM1LCA2OSwgMjUsIDUsIDI0OSwgMjMzLCAyMjQsIDg4LCA2OSwgMjM1LCAKKyAgICAyNDMsIDI1LCA1LCAyNDksIDIzMywgMjI0LCAzMCwgNjksIDIzNSwgMjQzLCAyNSwgNSwgMjQ5LCAyMzMsIDIyMiwgMTAwLCAKKyAgICA2OSwgMjM1LCAyNDMsIDI1LCA1LCAyNDksIDIzMywgMjIyLCA5MywgNjksIDIzNSwgMjQzLCAyNSwgNSwgMjQ5LCAyMzMsIAorICAgIDIyNCwgNjksIDY5LCAyNSwgNSwgMjI2LCAyMDQsIDY5LCAyNSwgNSwgMjU1LCAzNCwgMTQxLCAxLCAyNTEsIDI1NSwgMjI5LCAKKyAgICA3NywgMTQxLCAxLCAyNTEsIDI1NSwgMjI5LCAyNywgMTQxLCAxLCAyNTEsIDI1NSwgMjI4LCAyNDgsIDE0MSwgMSwgMjUxLCAKKyAgICAyNTUsIDIyOSwgNjQsIDE0MSwgMSwgMjUxLCAyNTUsIDIyOSwgNCwgNTYsIDEsIDI1MSwgMjU1LCAyMjksIDc3LCA1NiwgMSwgCisgICAgMjUxLCAyNTUsIDIyOSwgMjcsIDU2LCAxLCAyNTEsIDI1NSwgMjI4LCAyNDgsIDU2LCAxLCAyNTEsIDI1NSwgMjI5LCA2NCwgCisgICAgNTYsIDEsIDI1MSwgMjU1LCAyMjksIDQsIDU2LCAxLCAyNTQsIDE5NCwgMjUwLCAxOTAsIDU2LCAxLCAyNTQsIDE5NCwgMjE1LCAKKyAgICAxMTgsIDU2LCAxLCAyNTQsIDE5NCwgMTExLCA1NiwgMSwgMjU0LCAxOTQsIDIyNiwgMTA1LCA1OCwgMSwgMjQ1LCAyMCwgCisgICAgMjQ1LCAxOSwgMjQ5LCAxODIsIDEzOCwgMTMwLCA1OCwgMSwgMjQ1LCAxOSwgMjQ1LCAyMCwgMjQ5LCAxODIsIDEzOCwgMTMwLCAKIH07CiAKIHN0YXRpYyB1bnNpZ25lZCBjaGFyIHBocmFzZWJvb2tfb2Zmc2V0MVtdID0gewpAQCAtMTMxMjcsNDg3ICsxMzgyNCw0ODggQEAKICAgICAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAzMCwgMzEsIDMyLCAzMywgMzQsIDM1LCAzNiwgMzcsIDM4LCAKICAgICAzOSwgNDAsIDQxLCA0MiwgNDMsIDQ0LCA0NSwgNDYsIDQ3LCA0OCwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAKICAgICA1NywgNTgsIDU5LCA2MCwgNjEsIDYyLCA2MywgNjQsIDY1LCA2NiwgNjcsIDY4LCA2OSwgNzAsIDcxLCA3MiwgNzMsIDc0LCAKLSAgICA3NSwgNzYsIDc3LCA3OCwgNzksIDgwLCA4MSwgODIsIDgzLCA4NCwgODUsIDg2LCAxNywgODcsIDg4LCA4OSwgOTAsIDkxLCAKLSAgICA5MiwgOTMsIDk0LCA5NSwgOTYsIDk3LCA5OCwgOTksIDEwMCwgMTAxLCAxMDIsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDEwMywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxMDQsIDEwNSwgMTA2LCAxMDcsIDEwOCwgCi0gICAgMTA5LCAxMTAsIDExMSwgMTEyLCAxMTMsIDExNCwgMTE1LCAxMTYsIDExNywgMTE4LCAxMTksIDEyMCwgMTIxLCAxMjIsIAotICAgIDEyMywgMTI0LCAxMjUsIDEyNiwgMTI3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxMjgsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDEyOSwgMTMwLCAKLSAgICAxMzEsIDEzMiwgMTMzLCAxMzQsIDEzNSwgMTM2LCAxMzcsIDEzOCwgMTM5LCAxNDAsIDE0MSwgMTQyLCAxNDMsIDE0NCwgCi0gICAgMTQ1LCAxNDYsIDE3LCAxNDcsIDE0OCwgMTQ5LCAxNTAsIDE1MSwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTUyLCAxNywgCi0gICAgMTUzLCAxNywgMTU0LCAxNywgMTU1LCAxNywgMTU2LCAxNywgMTcsIDE3LCAxNTcsIDE3LCAxNywgMTcsIDE1OCwgMTU5LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNjAsIDE2MSwgMTYyLCAxNjMsIDE2NCwgCi0gICAgMTY1LCAxNjYsIDE3LCAxNjcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTY4LCAxNjksIDE3MCwgMTcxLCAxNzIsIDE3MywgCi0gICAgMTc0LCAxNzUsIDE3NiwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3NywgCi0gICAgMTc4LCAxNzksIDE4MCwgMTgxLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTgyLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxODMsIDE4NCwgMTg1LCAxODYsIDE4NywgMTcsIDE4OCwgCi0gICAgMTcsIDE4OSwgMTkwLCAxOTEsIDE5MiwgMTkzLCAxOTQsIDE5NSwgMTk2LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxOTcsIDE5OCwgMTk5LCAyMDAsIDIwMSwgMTcsIDIwMiwgMjAzLCAyMDQsIDIwNSwgMjA2LCAKLSAgICAyMDcsIDIwOCwgMjA5LCAyMTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDIxMSwgMjEyLCAyMTMsIAotICAgIDIxNCwgMjE1LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAyMTYsIDE3LCAyMTcsIDIxOCwgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKKyAgICA3NSwgNzYsIDc3LCA3OCwgNzksIDgwLCA4MSwgODIsIDgzLCA4NCwgODUsIDg2LCA4NywgODgsIDg5LCA5MCwgOTEsIDkyLCAKKyAgICA5MywgOTQsIDk1LCA5NiwgOTcsIDk4LCA5OSwgMTAwLCAxMDEsIDEwMiwgMTAzLCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAKKyAgICA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAKKyAgICA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAKKyAgICA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAxMDQsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgMTA1LCAxMDYsIDEwNywgMTA4LCAxMDksIAorICAgIDExMCwgMTExLCAxMTIsIDExMywgMTE0LCAxMTUsIDExNiwgMTE3LCAxMTgsIDExOSwgMTIwLCAxMjEsIDEyMiwgMTIzLCAKKyAgICAxMjQsIDEyNSwgMTI2LCAxMjcsIDEyOCwgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgMTI5LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAxMzAsIDEzMSwgCisgICAgMTMyLCAxMzMsIDEzNCwgMTM1LCAxMzYsIDEzNywgMTM4LCAxMzksIDE0MCwgMTQxLCAxNDIsIDE0MywgMTQ0LCAxNDUsIAorICAgIDE0NiwgMTQ3LCA4NywgMTQ4LCAxNDksIDE1MCwgMTUxLCAxNTIsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDE1MywgODcsIAorICAgIDE1NCwgMTU1LCAxNTYsIDg3LCAxNTcsIDg3LCAxNTgsIDg3LCA4NywgODcsIDE1OSwgODcsIDg3LCA4NywgMTYwLCAxNjEsIAorICAgIDE2MiwgMTYzLCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAxNjQsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDE2NSwgMTY2LCAxNjcsIDE2OCwgCisgICAgMTY5LCAxNzAsIDE3MSwgODcsIDE3MiwgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAxNzMsIDE3NCwgMTc1LCAxNzYsIDE3NywgMTc4LCAKKyAgICAxNzksIDE4MCwgMTgxLCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgMTgyLCAKKyAgICAxODMsIDE4NCwgMTg1LCAxODYsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDE4NywgMTg4LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDE4OSwgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAKKyAgICA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAKKyAgICA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAKKyAgICA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgMTkwLCAxOTEsIDE5MiwgMTkzLCAxOTQsIDg3LCAxOTUsIAorICAgIDg3LCAxOTYsIDE5NywgMTk4LCAxOTksIDIwMCwgMjAxLCAyMDIsIDIwMywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCAyMDQsIDIwNSwgODcsIDg3LCAyMDYsIDIwNywgMjA4LCAyMDksIDIxMCwgODcsIDIxMSwgMjEyLCAyMTMsIDIxNCwgCisgICAgMjE1LCAyMTYsIDIxNywgMjE4LCAyMTksIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDIyMCwgMjIxLCAKKyAgICAyMjIsIDIyMywgMjI0LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIAorICAgIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCAyMjUsIDg3LCAyMjYsIDIyNywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDIyOCwgMjI5LCAyMzAsIDIzMSwgMjMyLCAyMzMsIDIzNCwgMjM1LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgODcsIDg3LCA4NywgCisgICAgODcsIDg3LCA4NywgODcsIAogfTsKIAogc3RhdGljIHVuc2lnbmVkIGludCBwaHJhc2Vib29rX29mZnNldDJbXSA9IHsKQEAgLTEzNjE1LDI4MDMgKzE0MzEzLDMwMTUgQEAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxLCAzLCA2LCA5LCAxMSwgMTQsIDE3LCAxOSwgMjEsIDI0LCAyNywgMjksIDMxLCAKICAgICAzMywgMzUsIDM5LCA0MSwgNDQsIDQ2LCA0OCwgNTAsIDUyLCA1NCwgNTYsIDU4LCA2MCwgNjIsIDY0LCA2NiwgNjksIDcyLCAKICAgICA3NSwgNzgsIDgyLCA4NiwgOTEsIDk2LCAxMDEsIDEwNSwgMTEwLCAxMTUsIDEyMCwgMTI0LCAxMjksIDEzNCwgMTM4LCAxNDIsIAotICAgIDE0NiwgMTUwLCAxNTUsIDE2MCwgMTY0LCAxNjgsIDE3MywgMTc3LCAxODIsIDE4NywgMTkyLCAxOTcsIDIwMiwgMjA1LCAKLSAgICAyMDksIDIxMiwgMjE2LCAyMTksIDIyMywgMjI3LCAyMzIsIDIzNywgMjQyLCAyNDYsIDI1MSwgMjU2LCAyNjEsIDI2NSwgCi0gICAgMjcwLCAyNzUsIDI3OSwgMjgzLCAyODcsIDI5MSwgMjk2LCAzMDEsIDMwNSwgMzA5LCAzMTQsIDMxOCwgMzIzLCAzMjgsIAotICAgIDMzMywgMzM4LCAzNDMsIDM0NywgMzUwLCAzNTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM1NiwgMzYwLCAzNjUsIAotICAgIDM2OCwgMzcxLCAzNzQsIDM3NywgMzgwLCAzODMsIDM4NSwgMzg4LCAzOTQsIDQwMiwgNDA1LCA0MDksIDQxMiwgNDE0LCAKLSAgICA0MTcsIDQyMCwgNDIzLCA0MjYsIDQzMCwgNDMzLCA0MzYsIDQ0MCwgNDQyLCA0NDUsIDQ1MSwgNDU5LCA0NjYsIDQ3MywgCi0gICAgNDgwLCA0ODUsIDQ5MiwgNDk4LCA1MDUsIDUxMiwgNTE5LCA1MjcsIDUzMiwgNTQwLCA1NDcsIDU1MywgNTYwLCA1NjcsIAotICAgIDU3NSwgNTgyLCA1OTAsIDU5OCwgNjAzLCA2MTEsIDYxOCwgNjI0LCA2MzEsIDYzOCwgNjQ1LCA2NDgsIDY1NCwgNjYxLCAKLSAgICA2NjcsIDY3NCwgNjgxLCA2ODgsIDY5MywgNjk5LCA3MDYsIDcxMiwgNzE5LCA3MjYsIDczMywgNzQxLCA3NDYsIDc1NCwgCi0gICAgNzYxLCA3NjcsIDc3NCwgNzgxLCA3ODksIDc5NiwgODA0LCA4MTIsIDgxNywgODI1LCA4MzIsIDgzOCwgODQ1LCA4NTIsIAotICAgIDg1OSwgODYyLCA4NjgsIDg3NSwgODgxLCA4ODgsIDg5NSwgOTAyLCA5MDcsIDkxNSwgOTIyLCA5MjksIDkzNiwgOTQzLCAKLSAgICA5NTAsIDk1NywgOTY0LCA5NzEsIDk3OSwgOTg3LCA5OTUsIDEwMDMsIDEwMTEsIDEwMTksIDEwMjcsIDEwMzUsIDEwNDIsIAotICAgIDEwNDksIDEwNTYsIDEwNjMsIDEwNzAsIDEwNzcsIDEwODQsIDEwOTEsIDEwOTgsIDExMDUsIDExMTIsIDExMTksIDExMjcsIAotICAgIDExMzUsIDExNDMsIDExNTEsIDExNTksIDExNjcsIDExNzUsIDExODMsIDExOTEsIDExOTksIDEyMDYsIDEyMTMsIDEyMjEsIAotICAgIDEyMjksIDEyMzcsIDEyNDUsIDEyNTMsIDEyNjEsIDEyNjksIDEyNzcsIDEyODUsIDEyOTEsIDEyOTYsIDEzMDEsIDEzMDksIAotICAgIDEzMTcsIDEzMjUsIDEzMzMsIDEzMzgsIDEzNDUsIDEzNTIsIDEzNjAsIDEzNjgsIDEzNzYsIDEzODQsIDEzOTQsIDE0MDQsIAotICAgIDE0MTEsIDE0MTgsIDE0MjUsIDE0MzIsIDE0NDAsIDE0NDgsIDE0NTYsIDE0NjQsIDE0NzUsIDE0ODAsIDE0ODUsIDE0OTIsIAotICAgIDE0OTksIDE1MDYsIDE1MTMsIDE1MjAsIDE1MjcsIDE1MzIsIDE1MzcsIDE1NDQsIDE1NTEsIDE1NTksIDE1NjcsIDE1NzUsIAotICAgIDE1ODMsIDE1OTAsIDE1OTcsIDE2MDUsIDE2MTMsIDE2MjEsIDE2MjksIDE2MzcsIDE2NDUsIDE2NTMsIDE2NjEsIDE2NjksIAotICAgIDE2NzcsIDE2ODQsIDE2OTEsIDE2OTgsIDE3MDUsIDE3MTIsIDE3MTksIDE3MjYsIDE3MzMsIDE3NDEsIDE3NDksIDE3NTYsIAotICAgIDE3NjMsIDE3NzAsIDE3NzcsIDE3ODUsIDE3OTMsIDE4MDEsIDE4MDksIDE4MTcsIDE4MjQsIDE4MzEsIDE4MzksIDE4NDcsIAotICAgIDE4NTUsIDE4NjMsIDE4NjgsIDE4NzQsIDE4ODAsIDE4ODcsIDE4OTQsIDE4OTksIDE5MDQsIDE5MTAsIDE5MTcsIDE5MjQsIAotICAgIDE5MzEsIDE5MzgsIDE5NDYsIDE5NTQsIDE5NjEsIDE5NjcsIDE5NzIsIDE5NzgsIDE5ODUsIDE5OTIsIDE5OTksIDIwMDQsIAotICAgIDIwMDksIDIwMTQsIDIwMjEsIDIwMjgsIDIwMzUsIDIwNDIsIDIwNDksIDIwNTUsIDIwNjMsIDIwNzMsIDIwODIsIDIwODksIAotICAgIDIwOTYsIDIxMDEsIDIxMDYsIDIxMTMsIDIxMjAsIDIxMjQsIDIxMjksIDIxMzQsIDIxMzksIDIxNDcsIDIxNTYsIDIxNjMsIAotICAgIDIxNzAsIDIxNzksIDIxODYsIDIxOTMsIDIxOTgsIDIyMDUsIDIyMTIsIDIyMTksIDIyMjYsIDIyMzMsIDIyMzgsIDIyNDUsIAotICAgIDIyNTIsIDIyNjAsIDIyNjUsIDIyNzAsIDIyNzUsIDIyODUsIDIyODksIDIyOTUsIDIzMDEsIDIzMDcsIDIzMTMsIDIzMjEsIAotICAgIDIzMzQsIDIzNDIsIDIzNDcsIDIzNTcsIDIzNjIsIDIzNjcsIDIzNzcsIDIzODIsIDIzODksIDIzOTYsIDI0MDQsIDI0MTIsIAotICAgIDI0MTksIDI0MjYsIDI0MzMsIDI0NDAsIDI0NTAsIDI0NjAsIDI0NjksIDI0NzgsIDI0ODgsIDI0OTgsIDI1MDgsIDI1MTgsIAotICAgIDI1MjQsIDI1MzQsIDI1NDQsIDI1NTQsIDI1NjQsIDI1NzIsIDI1ODAsIDI1ODcsIDI1OTQsIDI2MDIsIDI2MTAsIDI2MTgsIAotICAgIDI2MjYsIDI2MzMsIDI2NDAsIDI2NTAsIDI2NjAsIDI2NjgsIDI2NzYsIDI2ODQsIDI2ODksIDI2OTksIDI3MDQsIDI3MTEsIAotICAgIDI3MTgsIDI3MjMsIDI3MjgsIDI3MzYsIDI3NDQsIDI3NTQsIDI3NjQsIDI3NzEsIDI3NzgsIDI3ODcsIDI3OTYsIDI4MDQsIAotICAgIDI4MTIsIDI4MjEsIDI4MzAsIDI4MzgsIDI4NDYsIDI4NTUsIDI4NjQsIDI4NzMsIDI4ODIsIDI4OTIsIDI5MDIsIDI5MTAsIAotICAgIDI5MTgsIDI5MjcsIDI5MzYsIDI5NDUsIDI5NTQsIDI5NjQsIDI5NzQsIDI5ODIsIDI5OTAsIDI5OTksIDMwMDgsIDMwMTcsIAotICAgIDMwMjYsIDMwMzUsIDMwNDQsIDMwNDksIDMwNTQsIDMwNjIsIDMwNzAsIDMwODAsIDMwODgsIDMwOTMsIDMwOTgsIDMxMDUsIAotICAgIDMxMTIsIDMxMTksIDMxMjYsIDMxMzMsIDMxNDAsIDMxNTAsIDMxNjAsIDMxNzAsIDMxODAsIDMxODcsIDMxOTQsIDMyMDQsIAotICAgIDMyMTQsIDMyMjIsIDMyMzAsIDMyMzgsIDMyNDYsIDMyNTQsIDMyNjEsIDMyNjgsIDMyNzUsIDMyODEsIDMyODgsIDMyOTUsIAotICAgIDMzMDIsIDMzMTEsIDMzMjEsIDMzMzEsIDMzMzgsIDMzNDUsIDMzNTEsIDMzNTYsIDMzNjMsIDMzNjksIDMzNzUsIDMzODIsIAotICAgIDMzODksIDM0MDAsIDM0MTAsIDM0MTcsIDM0MjQsIDM0MzEsIDM0MzgsIDM0NDQsIDM0NDksIDM0NTYsIDM0NjIsIDM0NjgsIAotICAgIDM0NzYsIDM0ODQsIDM0OTEsIDM0OTcsIDM1MDIsIDM1MDksIDM1MTUsIDM1MjMsIDM1MzMsIDM1NDMsIDM1NTIsIDM1NTksIAotICAgIDM1NjUsIDM1NzEsIDM1NzYsIDM1ODMsIDM1OTAsIDM1OTcsIDM2MDQsIDM2MTEsIDM2MTYsIDM2MjEsIDM2MzEsIDM2MzksIAotICAgIDM2NDgsIDM2NTMsIDM2NTksIDM2NzAsIDM2NzcsIDM2ODUsIDM2OTQsIDM2OTksIDM3MDUsIDM3MTEsIDM3MTgsIDM3MjMsIAotICAgIDM3MjksIDM3NDAsIDM3NDksIDM3NTgsIDM3NjYsIDM3NzQsIDM3ODQsIDM3ODksIDM3OTYsIDM4MDMsIDM4MDgsIDM4MjAsIAotICAgIDM4MjksIDM4MzcsIDM4NDQsIDM4NTMsIDM4NTgsIDM4NjMsIDM4NzAsIDM4NzcsIDM4ODQsIDM4OTEsIDM4OTcsIDM5MDYsIAotICAgIDM5MTQsIDM5MTksIDM5MjcsIDM5MzMsIDM5NDEsIDM5NDksIDM5NTUsIDM5NjEsIDM5NjcsIDM5NzUsIDM5ODMsIDM5ODksIAotICAgIDM5OTcsIDQwMDQsIDQwMDksIDQwMTYsIDQwMjQsIDQwMzQsIDQwNDEsIDQwNDgsIDQwNTgsIDQwNjUsIDQwNzIsIDQwODIsIAotICAgIDQwODksIDQwOTYsIDQxMDMsIDQxMDksIDQxMTUsIDQxMjUsIDQxMzgsIDQxNDMsIDQxNTAsIDQxNTUsIDQxNTksIDQxNjUsIAotICAgIDQxNzQsIDQxODEsIDQxODYsIDQxOTEsIDQxOTUsIDQyMDAsIDQyMDYsIDQyMTAsIDQyMTYsIDQyMjIsIDQyMjgsIDQyMzQsIAotICAgIDQyNDIsIDQyNDcsIDQyNTIsIDQyNTcsIDQyNjIsIDQyNjgsIDQyNzAsIDQyNzUsIDQyNzksIDQyODUsIDQyOTEsIDQyOTcsIAotICAgIDQzMDIsIDQzMDksIDQzMTYsIDQzMjIsIDQzMjksIDQzMzcsIDQzNDUsIDQzNTAsIDQzNTUsIDQzNTksIDQzNjQsIDQzNjYsIAotICAgIDQzNjgsIDQzNzEsIDQzNzMsIDQzNzYsIDQzODEsIDQzODYsIDQzOTIsIDQzOTcsIDQ0MDEsIDQ0MDUsIDQ0MTAsIDQ0MTksIAotICAgIDQ0MjUsIDQ0MzAsIDQ0MzYsIDQ0NDEsIDQ0NDcsIDQ0NTUsIDQ0NjMsIDQ0NjcsIDQ0NzEsIDQ0NzYsIDQ0ODIsIDQ0ODgsIAotICAgIDQ0OTQsIDQ1MDAsIDQ1MDUsIDQ1MTMsIDQ1MjIsIDQ1MzEsIDQ1MzYsIDQ1NDIsIDQ1NDksIDQ1NTYsIDQ1NjMsIDQ1NzAsIAotICAgIDQ1NzQsIDQ1ODAsIDQ1ODUsIDQ1OTAsIDQ1OTUsIDQ2MDAsIDQ2MDMsIDQ2MDYsIDQ2MDksIDQ2MTIsIDQ2MTUsIDQ2MTgsIAotICAgIDQ2MjIsIDQ2MjYsIDQ2MzIsIDQ2MzUsIDQ2NDAsIDQ2NDYsIDQ2NTIsIDQ2NTUsIDQ2NjAsIDQ2NjYsIDQ2NzAsIDQ2NzYsIAotICAgIDQ2ODIsIDQ2ODgsIDQ2OTQsIDQ2OTksIDQ3MDQsIDQ3MDksIDQ3MTIsIDQ3MTgsIDQ3MjMsIDQ3MjgsIDQ3MzIsIDQ3MzcsIAotICAgIDQ3NDMsIDQ3NDksIDQ3NTIsIDQ3NTYsIDQ3NjAsIDQ3NjQsIDQ3NjcsIDQ3NzAsIDQ3NzUsIDQ3NzksIDQ3ODYsIDQ3OTAsIAotICAgIDQ3OTYsIDQ4MDAsIDQ4MDYsIDQ4MTAsIDQ4MTQsIDQ4MTgsIDQ4MjMsIDQ4MjgsIDQ4MzUsIDQ4NDEsIDQ4NDgsIDQ4NTQsIAotICAgIDQ4NjAsIDQ4NjYsIDQ4NjksIDQ4NzMsIDQ4NzcsIDQ4ODEsIDQ4ODUsIDQ4OTAsIDQ4OTUsIDQ4OTksIDQ5MDMsIDQ5MDksIAotICAgIDQ5MTMsIDQ5MTcsIDQ5MjIsIDQ5MjgsIDQ5MzMsIDQ5MzksIDQ5NDMsIDQ5NTAsIDQ5NTUsIDQ5NjAsIDQ5NjUsIDQ5NzAsIAotICAgIDQ5NzYsIDQ5NzksIDQ5ODMsIDQ5ODgsIDQ5OTMsIDUwMDIsIDUwMDgsIDUwMTMsIDUwMTcsIDUwMjIsIDUwMjYsIDUwMzEsIAotICAgIDUwMzUsIDUwMzksIDUwNDQsIDUwNDgsIDUwNTQsIDUwNTksIDUwNjQsIDUwNjksIDUwNzQsIDUwNzksIDUwODQsIDUwOTAsIAotICAgIDUwOTYsIDUxMDIsIDUxMDcsIDUxMTIsIDUxMTgsIDUxMjQsIDUxMzAsIDUxMzUsIDUxNDAsIDUxNDcsIDUxNTQsIDUxNTgsIAotICAgIDUxNjQsIDUxNzEsIDAsIDAsIDUxNzgsIDUxODEsIDUxOTAsIDUxOTksIDUyMTAsIDAsIDAsIDAsIDAsIDAsIDUyMTQsIAotICAgIDUyMTcsIDUyMjIsIDUyMzAsIDUyMzUsIDUyNDMsIDUyNTEsIDAsIDUyNTksIDAsIDUyNjcsIDUyNzUsIDUyODMsIDUyOTQsIAotICAgIDUyOTksIDUzMDQsIDUzMDksIDUzMTQsIDUzMTksIDUzMjQsIDUzMjksIDUzMzQsIDUzMzksIDUzNDQsIDUzNDksIDUzNTQsIAotICAgIDUzNTksIDUzNjQsIDUzNjksIDUzNzQsIDAsIDUzNzksIDUzODQsIDUzODksIDUzOTQsIDUzOTksIDU0MDQsIDU0MDksIAotICAgIDU0MTQsIDU0MjIsIDU0MzAsIDU0MzgsIDU0NDYsIDU0NTQsIDU0NjIsIDU0NzMsIDU0NzgsIDU0ODMsIDU0ODgsIDU0OTMsIAotICAgIDU0OTgsIDU1MDMsIDU1MDgsIDU1MTMsIDU1MTgsIDU1MjMsIDU1MjgsIDU1MzMsIDU1MzgsIDU1NDMsIDU1NDgsIDU1NTMsIAotICAgIDU1NTgsIDU1NjQsIDU1NjksIDU1NzQsIDU1NzksIDU1ODQsIDU1ODksIDU1OTQsIDU1OTksIDU2MDcsIDU2MTUsIDU2MjMsIAotICAgIDU2MzEsIDU2MzksIDU2NDQsIDU2NDgsIDU2NTIsIDU2NTksIDU2NjksIDU2NzksIDU2ODMsIDU2ODcsIDU2OTEsIDU2OTcsIAotICAgIDU3MDQsIDU3MDgsIDU3MTMsIDU3MTcsIDU3MjIsIDU3MjYsIDU3MzEsIDU3MzUsIDU3NDAsIDU3NDUsIDU3NTAsIDU3NTUsIAotICAgIDU3NjAsIDU3NjUsIDU3NzAsIDU3NzUsIDU3ODAsIDU3ODUsIDU3OTAsIDU3OTUsIDU4MDAsIDU4MDUsIDU4MTAsIDU4MTQsIAotICAgIDU4MTgsIDU4MjQsIDU4MjgsIDU4MzMsIDU4MzksIDU4NDcsIDU4NTIsIDU4NTcsIDU4NjQsIDU4NjksIDU4NzQsIDU4ODEsIAotICAgIDU4OTAsIDU4OTksIDU5MTAsIDU5MTgsIDU5MjMsIDU5MjgsIDU5MzMsIDU5NDAsIDU5NDUsIDU5NTEsIDU5NTYsIDU5NjEsIAotICAgIDU5NjYsIDU5NzEsIDU5NzYsIDU5ODEsIDU5ODksIDU5OTUsIDYwMDAsIDYwMDQsIDYwMDksIDYwMTQsIDYwMTksIDYwMjQsIAotICAgIDYwMjksIDYwMzQsIDYwMzksIDYwNDMsIDYwNDksIDYwNTMsIDYwNTgsIDYwNjMsIDYwNjgsIDYwNzIsIDYwNzcsIDYwODIsIAotICAgIDYwODcsIDYwOTIsIDYwOTYsIDYxMDEsIDYxMDUsIDYxMTAsIDYxMTUsIDYxMjAsIDYxMjUsIDYxMzEsIDYxMzYsIDYxNDIsIAotICAgIDYxNDYsIDYxNTEsIDYxNTUsIDYxNTksIDYxNjQsIDYxNjksIDYxNzQsIDYxNzksIDYxODQsIDYxODksIDYxOTQsIDYxOTgsIAotICAgIDYyMDQsIDYyMDgsIDYyMTMsIDYyMTgsIDYyMjMsIDYyMjcsIDYyMzIsIDYyMzcsIDYyNDIsIDYyNDcsIDYyNTEsIDYyNTYsIAotICAgIDYyNjAsIDYyNjUsIDYyNzAsIDYyNzUsIDYyODAsIDYyODYsIDYyOTEsIDYyOTcsIDYzMDEsIDYzMDYsIDYzMTAsIDYzMTgsIAotICAgIDYzMjMsIDYzMjgsIDYzMzMsIDYzNDAsIDYzNDUsIDYzNTEsIDYzNTYsIDYzNjEsIDYzNjYsIDYzNzEsIDYzNzYsIDYzODEsIAotICAgIDYzODksIDYzOTUsIDY0MDAsIDY0MDUsIDY0MTAsIDY0MTUsIDY0MjAsIDY0MjYsIDY0MzIsIDY0MzksIDY0NDYsIDY0NTUsIAotICAgIDY0NjQsIDY0NzEsIDY0NzgsIDY0ODcsIDY0OTYsIDY1MDEsIDY1MDYsIDY1MTEsIDY1MTYsIDY1MjEsIDY1MjYsIDY1MzEsIAotICAgIDY1MzYsIDY1NDcsIDY1NTgsIDY1NjMsIDY1NjgsIDY1NzUsIDY1ODIsIDY1OTAsIDY1OTgsIDY2MDMsIDY2MDgsIDY2MTMsIAotICAgIDY2MTgsIDY2MjIsIDY2MjYsIDY2MzAsIDY2MzUsIDY2NDEsIDY2NDUsIDY2NTIsIDY2NTcsIDY2NjcsIDY2NzcsIDY2ODMsIAotICAgIDY2ODksIDY2OTcsIDY3MDUsIDY3MTMsIDY3MjEsIDY3MjgsIDY3MzUsIDY3NDQsIDY3NTMsIDY3NjEsIDY3NjksIDY3NzcsIAotICAgIDY3ODUsIDY3OTMsIDY4MDEsIDY4MDksIDY4MTcsIDY4MjQsIDY4MzEsIDY4MzcsIDY4NDMsIDY4NTEsIDY4NTksIDY4NjYsIAotICAgIDY4NzMsIDY4ODIsIDY4OTEsIDY4OTcsIDY5MDMsIDY5MTEsIDY5MTksIDY5MjcsIDY5MzUsIDY5NDEsIDY5NDcsIDY5NTUsIAotICAgIDY5NjMsIDY5NzEsIDY5NzksIDY5ODYsIDY5OTMsIDcwMDEsIDcwMDksIDcwMTcsIDcwMjUsIDcwMzAsIDcwMzUsIDcwNDIsIAotICAgIDcwNDksIDcwNTksIDcwNjksIDcwNzMsIDcwODEsIDcwODksIDcwOTYsIDcxMDMsIDcxMTEsIDcxMTksIDcxMjYsIDcxMzMsIAotICAgIDcxNDEsIDcxNDksIDcxNTYsIDcxNjMsIDcxNzEsIDcxNzksIDcxODQsIDcxOTEsIDcxOTgsIDcyMDUsIDcyMTIsIDcyMTgsIAotICAgIDcyMjQsIDcyMzIsIDcyNDAsIDcyNDUsIDcyNTAsIDcyNTgsIDcyNjYsIDcyNzQsIDcyODIsIDcyOTAsIDcyOTgsIDczMDUsIAotICAgIDczMTIsIDczMjAsIDczMjgsIDczMzYsIDczNDQsIDczNTEsIDczNTgsIDczNjQsIDczNzAsIDczNzksIDczODgsIDczOTUsIAotICAgIDc0MDIsIDc0MDksIDc0MTYsIDc0MjMsIDc0MzAsIDc0MzcsIDc0NDQsIDc0NTIsIDc0NjAsIDc0NjgsIDc0NzYsIDc0ODQsIAotICAgIDc0OTIsIDc1MDIsIDc1MTIsIDc1MTksIDc1MjYsIDc1MzMsIDc1NDAsIDc1NDcsIDc1NTQsIDc1NjEsIDc1NjgsIDc1NzUsIAotICAgIDc1ODIsIDc1ODksIDc1OTYsIDc2MDMsIDc2MTAsIDc2MTcsIDc2MjQsIDc2MzEsIDc2MzgsIDc2NDUsIDc2NTIsIDc2NTksIAotICAgIDc2NjYsIDc2NzMsIDc2ODAsIDc2ODUsIDc2OTAsIDc2OTUsIDc3MDAsIDc3MDUsIDc3MTAsIDc3MTUsIDc3MjAsIDc3MjUsIAotICAgIDc3MzAsIDc3MzYsIDc3NDIsIDc3NTEsIDc3NjAsIDc3NjksIDc3NzgsIDc3ODYsIDc3OTQsIDc4MDIsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDc4MTAsIDc4MTUsIDc4MjAsIDc4MjUsIDc4MzAsIDc4MzUsIDc4NDAsIDc4NDUsIDc4NTAsIAotICAgIDc4NTQsIDc4NTksIDc4NjQsIDc4NjksIDc4NzQsIDc4NzksIDc4ODQsIDc4ODksIDc4OTQsIDc4OTksIDc5MDQsIDc5MDksIAotICAgIDc5MTQsIDc5MTksIDc5MjQsIDc5MjksIDc5MzQsIDc5MzksIDc5NDQsIDc5NDgsIDc5NTMsIDc5NTgsIDc5NjMsIDc5NjgsIAotICAgIDc5NzMsIDc5NzgsIDc5ODMsIDc5ODgsIDc5OTMsIDAsIDAsIDc5OTgsIDgwMDUsIDgwMDgsIDgwMTIsIDgwMTYsIDgwMTksIAotICAgIDgwMjMsIDAsIDgwMjcsIDgwMzIsIDgwMzcsIDgwNDIsIDgwNDcsIDgwNTIsIDgwNTcsIDgwNjIsIDgwNjcsIDgwNzEsIAotICAgIDgwNzYsIDgwODEsIDgwODYsIDgwOTEsIDgwOTYsIDgxMDEsIDgxMDYsIDgxMTEsIDgxMTYsIDgxMjEsIDgxMjYsIDgxMzEsIAotICAgIDgxMzYsIDgxNDEsIDgxNDYsIDgxNTEsIDgxNTYsIDgxNjEsIDgxNjUsIDgxNzAsIDgxNzUsIDgxODAsIDgxODUsIDgxOTAsIAotICAgIDgxOTUsIDgyMDAsIDgyMDUsIDgyMTAsIDgyMTUsIDAsIDgyMjIsIDgyMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDgyMzAsIAotICAgIDgyMzUsIDgyNDAsIDgyNDUsIDgyNTIsIDgyNTksIDgyNjQsIDgyNjksIDgyNzQsIDgyNzksIDgyODQsIDgyODksIDgyOTQsIAotICAgIDgzMDEsIDgzMDYsIDgzMTMsIDgzMjAsIDgzMjUsIDgzMzIsIDgzMzcsIDgzNDIsIDgzNDcsIDgzNTQsIDgzNTksIDgzNjQsIAotICAgIDgzNzEsIDgzODAsIDgzODUsIDgzOTAsIDgzOTUsIDg0MDAsIDg0MDYsIDg0MTEsIDg0MTgsIDg0MjUsIDg0MzIsIDg0MzcsIAotICAgIDg0NDIsIDg0NDcsIDg0NTIsIDg0NTcsIDg0NjIsIDg0NzIsIDg0NzcsIDg0ODUsIDg0OTAsIDg0OTUsIDg1MDAsIDg1MDUsIAotICAgIDg1MTIsIDg1MTksIDg1MjYsIDg1MzIsIDg1MzgsIDg1NDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg1NTIsIDg1NTYsIAotICAgIDg1NjAsIDg1NjQsIDg1NjgsIDg1NzIsIDg1NzYsIDg1ODAsIDg1ODQsIDg1ODgsIDg1OTIsIDg1OTcsIDg2MDEsIDg2MDUsIAotICAgIDg2MTAsIDg2MTQsIDg2MTksIDg2MjMsIDg2MjcsIDg2MzEsIDg2MzYsIDg2NDAsIDg2NDUsIDg2NDksIDg2NTMsIDg2NTcsIAotICAgIDg2NjEsIDAsIDAsIDAsIDAsIDAsIDg2NjUsIDg2NzIsIDg2ODAsIDg2ODcsIDg2OTIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDg2OTcsIDg3MDAsIDg3MDQsIDg3MDksIDAsIDAsIDg3MTMsIDg3MTksIDg3MjUsIDg3MjgsIDg3MzUsIAotICAgIDg3NDQsIDg3NDcsIDg3NTAsIDg3NTUsIDg3NjEsIDg3NjUsIDg3NzMsIDg3NzksIDg3ODUsIDg3OTMsIDg3OTcsIDg4MDIsIAotICAgIDg4MTMsIDg4MTgsIDg4MjIsIDg4MjYsIDg4MzAsIDAsIDAsIDg4MzMsIDg4NDAsIDg4NDQsIDg4NTAsIDg4NTQsIDg4NjEsIAotICAgIDg4NjcsIDg4NzQsIDg4ODAsIDg4ODYsIDg4OTAsIDg4OTQsIDg5MDAsIDg5MDQsIDg5MDgsIDg5MTIsIDg5MTYsIDg5MjAsIAotICAgIDg5MjQsIDg5MjgsIDg5MzIsIDg5MzYsIDg5NDAsIDg5NDQsIDg5NDgsIDg5NTIsIDg5NTYsIDg5NjAsIDg5NjQsIDg5NjgsIAotICAgIDg5NzYsIDg5ODQsIDg5OTQsIDkwMDMsIDkwMTIsIDkwMTUsIDkwMTksIDkwMjMsIDkwMjcsIDkwMzEsIDkwMzUsIDkwMzksIAotICAgIDkwNDMsIDkwNDcsIDkwNTIsIDkwNTYsIDkwNTksIDkwNjIsIDkwNjUsIDkwNjgsIDkwNzEsIDkwNzQsIDkwNzcsIDkwODAsIAotICAgIDkwODQsIDkwODcsIDkwOTAsIDkwOTUsIDkxMDAsIDkxMDYsIDkxMDksIDkxMTYsIDkxMjUsIDkxMzAsIDkxMzUsIDkxNDIsIAotICAgIDkxNDcsIDkxNTIsIDkxNTYsIDkxNjAsIDkxNjQsIDkxNjgsIDkxNzIsIDkxNzYsIDkxODAsIDkxODQsIDkxODgsIDkxOTIsIAotICAgIDkxOTcsIDkyMDIsIDkyMDksIDkyMTUsIDkyMjEsIDkyMjcsIDkyMzIsIDkyNDAsIDkyNDgsIDkyNTMsIDkyNTksIDkyNjUsIAotICAgIDkyNzEsIDkyNzcsIDkyODEsIDkyODUsIDkyODksIDkyOTYsIDkzMDYsIDkzMTAsIDkzMTQsIDkzMTgsIDkzMjQsIDkzMzIsIAotICAgIDkzMzYsIDkzNDAsIDkzNDcsIDkzNTEsIDkzNTUsIDkzNTksIDkzNjYsIDkzNzMsIDkzODUsIDkzODksIDkzOTMsIDkzOTcsIAotICAgIDk0MDcsIDk0MTYsIDk0MjAsIDk0MjgsIDk0MzUsIDk0NDIsIDk0NTEsIDk0NjIsIDk0NzAsIDk0NzQsIDk0ODMsIDk0OTQsIAotICAgIDk1MDIsIDk1MTUsIDk1MjMsIDk1MzEsIDk1MzksIDk1NDcsIDk1NTMsIDk1NjIsIDk1NjksIDk1NzMsIDk1ODEsIDk1ODUsIAotICAgIDk1OTIsIDk2MDAsIDk2MDQsIDk2MTAsIDk2MTcsIDk2MjQsIDk2MjgsIDk2MzYsIDk2NDAsIDk2NDcsIDk2NTEsIDk2NTksIAotICAgIDk2NjMsIDk2NzEsIDk2NzksIDk2ODYsIDk2OTQsIDk3MDIsIDk3MDksIDk3MTUsIDk3MTksIDk3MjYsIDk3MzQsIDk3NDAsIAotICAgIDk3NDcsIDk3NTQsIDk3NjAsIDk3NjksIDk3NzcsIDk3ODQsIDk3OTAsIDk3OTQsIDk3OTcsIDk4MDEsIDk4MDcsIDk4MTUsIAotICAgIDk4MTksIDk4MjUsIDk4MzEsIDk4MzgsIDk4NDUsIDk4NDgsIDk4NTUsIDk4NjAsIDk4NjgsIDk4NzMsIDk4NzcsIDk4OTAsIAotICAgIDk5MDMsIDk5MDksIDk5MTYsIDk5MjEsIDk5MjcsIDk5MzIsIDk5MzgsIDk5NDgsIDk5NTUsIDk5NjQsIDk5NzQsIDk5ODAsIAotICAgIDk5ODUsIDk5OTAsIDk5OTQsIDk5OTgsIDEwMDAzLCAxMDAwOCwgMTAwMTQsIDEwMDIyLCAxMDAzMCwgMTAwNDEsIDEwMDQ2LCAKLSAgICAxMDA1NSwgMTAwNjQsIDEwMDcxLCAxMDA3NywgMTAwODMsIDEwMDg5LCAxMDA5NSwgMTAxMDEsIDEwMTA3LCAxMDExMywgCi0gICAgMTAxMTksIDEwMTI1LCAxMDEzMiwgMTAxMzksIDEwMTQ2LCAxMDE1MiwgMTAxNjAsIDEwMTY5LCAxMDE3NSwgMTAxODIsIAotICAgIDEwMTg5LCAxMDE5NCwgMTAxOTksIDEwMjAzLCAxMDIxMCwgMTAyMTcsIDEwMjI2LCAxMDIzNSwgMTAyMzgsIDEwMjQzLCAKLSAgICAxMDI0OCwgMCwgMTAyNTMsIDEwMjU3LCAxMDI2MSwgMTAyNjcsIDEwMjcxLCAxMDI3NSwgMTAyODEsIDEwMjg1LCAxMDI5MywgCi0gICAgMTAyOTcsIDEwMzAxLCAxMDMwNSwgMTAzMDksIDEwMzEzLCAxMDMxOSwgMTAzMjMsIDEwMzI5LCAxMDMzMywgMTAzMzcsIAotICAgIDEwMzQxLCAxMDM0NSwgMTAzNDksIDEwMzU0LCAxMDM1NywgMTAzNjEsIDEwMzY3LCAxMDM3MSwgMTAzNzUsIDEwMzc5LCAKLSAgICAxMDM4MywgMTAzODcsIDEwMzkzLCAxMDM5OSwgMTA0MDUsIDEwNDA5LCAxMDQxMywgMTA0MTgsIDEwNDIyLCAxMDQyNiwgCi0gICAgMTA0MzEsIDEwNDM1LCAxMDQzOSwgMTA0NDYsIDEwNDUzLCAxMDQ1NywgMTA0NjEsIDEwNDY2LCAxMDQ3MCwgMTA0NzQsIAotICAgIDEwNDc3LCAxMDQ4MiwgMTA0ODUsIDEwNDg4LCAxMDQ5MywgMTA0OTgsIDEwNTAyLCAxMDUwNiwgMTA1MTIsIDEwNTE4LCAKLSAgICAxMDUyMSwgMCwgMCwgMTA1MjQsIDEwNTMwLCAxMDUzNiwgMTA1NDIsIDEwNTUyLCAxMDU2NCwgMTA1NzYsIDEwNTkzLCAKLSAgICAxMDYwNSwgMTA2MTYsIDEwNjI0LCAxMDYzMSwgMTA2NDIsIDEwNjU3LCAxMDY2OCwgMTA2NzQsIDEwNjgzLCAxMDY5MSwgCi0gICAgMTA3MDMsIDEwNzEzLCAxMDcyMSwgMTA3MzMsIDEwNzQwLCAxMDc0OCwgMTA3NjAsIDEwNzY2LCAxMDc3MiwgMTA3ODAsIAotICAgIDEwNzg4LCAxMDc5NiwgMTA4MDIsIDEwODEyLCAxMDgxOSwgMTA4MjksIDEwODM5LCAxMDg1MiwgMTA4NjYsIDEwODgwLCAKLSAgICAxMDg5MCwgMTA5MDEsIDEwOTEyLCAxMDkyNSwgMTA5MzgsIDEwOTUyLCAxMDk2NCwgMTA5NzYsIDEwOTg5LCAxMTAwMiwgCi0gICAgMTEwMTQsIDExMDI3LCAxMTAzNiwgMTEwNDQsIDExMDQ5LCAxMTA1NCwgMTEwNTksIDExMDY0LCAxMTA2OSwgMTEwNzQsIAotICAgIDExMDc5LCAxMTA4NCwgMTEwODksIDExMDk0LCAxMTA5OSwgMTExMDQsIDExMTA5LCAxMTExNCwgMTExMTksIDExMTI0LCAKLSAgICAxMTEyOSwgMTExMzQsIDExMTM5LCAxMTE0NCwgMTExNDksIDExMTU0LCAxMTE1OSwgMTExNjQsIDExMTY5LCAxMTE3NCwgCi0gICAgMTExNzksIDExMTg0LCAxMTE4OSwgMTExOTQsIDExMTk5LCAxMTIwNCwgMTEyMDgsIDExMjEzLCAxMTIxOCwgMTEyMjMsIAotICAgIDExMjI4LCAxMTIzMywgMTEyMzcsIDExMjQxLCAxMTI0NSwgMTEyNDksIDExMjUzLCAxMTI1NywgMTEyNjEsIDExMjY1LCAKLSAgICAxMTI2OSwgMTEyNzMsIDExMjc3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTI4MiwgCi0gICAgMTEyODcsIDExMjkxLCAxMTI5NSwgMTEyOTksIDExMzAzLCAxMTMwNywgMTEzMTEsIDExMzE1LCAxMTMxOSwgMTEzMjMsIAotICAgIDExMzI3LCAxMTMzMiwgMTEzMzYsIDExMzQwLCAxMTM0NCwgMTEzNDksIDExMzUzLCAxMTM1OCwgMTEzNjIsIDExMzY3LCAKLSAgICAxMTM3MSwgMTEzNzYsIDExMzgxLCAxMTM4NiwgMTEzOTEsIDExMzk1LCAxMTQwMCwgMTE0MDUsIDExNDEwLCAxMTQxNSwgCi0gICAgMTE0MTksIDExNDI0LCAxMTQzMSwgMTE0MzUsIDExNDQwLCAxMTQ0NCwgMTE0NDgsIDExNDUzLCAxMTQ1NywgMTE0NjQsIAotICAgIDExNDcxLCAxMTQ3OCwgMTE0ODQsIDExNDkyLCAxMTUwMCwgMTE1MDksIDExNTE3LCAxMTUyNCwgMTE1MzEsIDExNTM5LCAKLSAgICAxMTU0NSwgMTE1NTEsIDExNTU3LCAxMTU2MywgMTE1NzAsIDExNTc1LCAxMTU3OSwgMTE1ODQsIDAsIDAsIDAsIDAsIDAsIAotICAgIDExNTg4LCAxMTU5MywgMTE1OTgsIDExNjAzLCAxMTYwOCwgMTE2MTMsIDExNjE4LCAxMTYyMywgMTE2MjgsIDExNjMzLCAKLSAgICAxMTYzOCwgMTE2NDMsIDExNjQ4LCAxMTY1MywgMTE2NTgsIDExNjYzLCAxMTY2OCwgMTE2NzMsIDExNjc4LCAxMTY4MywgCi0gICAgMTE2ODgsIDExNjkzLCAxMTY5OCwgMTE3MDMsIDExNzA4LCAxMTcxMywgMTE3MTgsIDExNzI2LCAxMTczMywgMTE3MzksIAotICAgIDExNzQ0LCAxMTc1MiwgMTE3NTksIDExNzY1LCAxMTc3MiwgMTE3NzgsIDExNzgzLCAxMTc5MCwgMTE3OTcsIDExODAzLCAKLSAgICAxMTgwOCwgMTE4MTMsIDExODE5LCAxMTgyNCwgMTE4MjksIDExODM1LCAwLCAwLCAxMTg0MCwgMTE4NDYsIDExODUyLCAKLSAgICAxMTg1OCwgMTE4NjQsIDExODcwLCAxMTg3NiwgMTE4ODEsIDExODg5LCAxMTg5NSwgMTE5MDEsIDExOTA3LCAxMTkxMywgCi0gICAgMTE5MTksIDExOTI3LCAwLCAxMTkzMywgMTE5MzgsIDExOTQzLCAxMTk0OCwgMTE5NTMsIDExOTU4LCAxMTk2MywgMTE5NjgsIAotICAgIDExOTczLCAxMTk3OCwgMTE5ODMsIDExOTg4LCAxMTk5MywgMTE5OTgsIDEyMDAzLCAxMjAwOCwgMTIwMTMsIDEyMDE4LCAKLSAgICAxMjAyMywgMTIwMjgsIDEyMDMzLCAxMjAzOCwgMTIwNDMsIDEyMDQ4LCAxMjA1MywgMTIwNTgsIDEyMDYzLCAxMjA2OCwgMCwgCi0gICAgMCwgMTIwNzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyMDc3LCAxMjA4MywgCi0gICAgMTIwODcsIDEyMDkxLCAxMjA5NSwgMTIxMDAsIDEyMTAzLCAxMjEwNywgMTIxMTAsIDEyMTE0LCAxMjExNywgMTIxMjEsIAotICAgIDEyMTI1LCAxMjEyOSwgMTIxMzQsIDEyMTM5LCAxMjE0MiwgMTIxNDYsIDEyMTUxLCAxMjE1NiwgMTIxNTksIDEyMTYzLCAKLSAgICAxMjE2NiwgMTIxNzAsIDEyMTc0LCAxMjE3OCwgMTIxODIsIDEyMTg2LCAxMjE5MCwgMTIxOTQsIDEyMTk4LCAxMjIwMiwgCi0gICAgMTIyMDYsIDEyMjEwLCAxMjIxNCwgMTIyMTgsIDEyMjIyLCAxMjIyNiwgMTIyMzAsIDEyMjM0LCAxMjIzOCwgMTIyNDEsIAotICAgIDEyMjQ1LCAxMjI0OCwgMTIyNTIsIDEyMjU2LCAxMjI2MCwgMTIyNjMsIDEyMjY2LCAxMjI2OSwgMTIyNzMsIDEyMjc3LCAKLSAgICAxMjI4MSwgMTIyODUsIDEyMjg5LCAxMjI5MywgMTIyOTcsIDEyMzAxLCAxMjMwNCwgMTIzMDksIDEyMzE0LCAxMjMxOCwgCi0gICAgMTIzMjIsIDEyMzI3LCAxMjMzMSwgMTIzMzYsIDEyMzQwLCAxMjM0NSwgMTIzNTAsIDEyMzU2LCAxMjM2MiwgMTIzNjgsIAotICAgIDEyMzcyLCAxMjM3NywgMTIzODMsIDEyMzg5LCAxMjM5MywgMTIzOTgsIDEyNDAyLCAxMjQwOCwgMTI0MTMsIDEyNDE2LCAKLSAgICAxMjQyMiwgMTI0MjgsIDEyNDMzLCAxMjQzOCwgMTI0NDUsIDEyNDUwLCAxMjQ1NSwgMTI0NTksIDEyNDYzLCAxMjQ2NywgCi0gICAgMTI0NzEsIDEyNDc1LCAxMjQ3OSwgMTI0ODMsIDEyNDg3LCAxMjQ5MiwgMTI0OTcsIDEyNTAyLCAxMjUwOCwgMTI1MTEsIAotICAgIDEyNTE1LCAxMjUxOSwgMTI1MjIsIDEyNTI1LCAxMjUyOCwgMTI1MzEsIDEyNTM0LCAxMjUzNywgMTI1NDAsIDEyNTQzLCAKLSAgICAxMjU0NiwgMTI1NTAsIDEyNTU3LCAxMjU2MiwgMTI1NjYsIDEyNTcwLCAxMjU3NCwgMTI1NzgsIDAsIDEyNTgyLCAxMjU4NiwgCi0gICAgMTI1OTAsIDEyNTk0LCAxMjU5OCwgMTI2MDQsIDEyNjA4LCAwLCAxMjYxMiwgMTI2MTYsIDEyNjIwLCAwLCAxMjYyNCwgCi0gICAgMTI2MjcsIDEyNjMxLCAxMjYzNCwgMTI2MzgsIDEyNjQxLCAxMjY0NSwgMTI2NDksIDAsIDAsIDEyNjUzLCAxMjY1NiwgMCwgCi0gICAgMCwgMTI2NjAsIDEyNjYzLCAxMjY2NywgMTI2NzAsIDEyNjc0LCAxMjY3OCwgMTI2ODIsIDEyNjg2LCAxMjY5MCwgMTI2OTQsIAotICAgIDEyNjk4LCAxMjcwMiwgMTI3MDYsIDEyNzEwLCAxMjcxNCwgMTI3MTgsIDEyNzIyLCAxMjcyNiwgMTI3MzAsIDEyNzM0LCAKLSAgICAxMjczOCwgMTI3NDIsIDAsIDEyNzQ1LCAxMjc0OCwgMTI3NTIsIDEyNzU2LCAxMjc2MCwgMTI3NjMsIDEyNzY2LCAwLCAKLSAgICAxMjc2OSwgMCwgMCwgMCwgMTI3NzMsIDEyNzc3LCAxMjc4MSwgMTI3ODUsIDAsIDAsIDEyNzg4LCAxMjc5MiwgMTI3OTYsIAotICAgIDEyODAxLCAxMjgwNSwgMTI4MTAsIDEyODE0LCAxMjgxOSwgMTI4MjQsIDAsIDAsIDEyODMwLCAxMjgzNCwgMCwgMCwgCi0gICAgMTI4MzksIDEyODQzLCAxMjg0OCwgMTI4NTIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyODU4LCAwLCAwLCAwLCAwLCAKLSAgICAxMjg2NCwgMTI4NjgsIDAsIDEyODcyLCAxMjg3NiwgMTI4ODEsIDEyODg2LCAxMjg5MSwgMCwgMCwgMTI4OTcsIDEyOTAxLCAKLSAgICAxMjkwNCwgMTI5MDcsIDEyOTEwLCAxMjkxMywgMTI5MTYsIDEyOTE5LCAxMjkyMiwgMTI5MjUsIDEyOTI4LCAxMjkzNywgCi0gICAgMTI5NDYsIDEyOTUwLCAxMjk1NCwgMTI5NjAsIDEyOTY2LCAxMjk3MiwgMTI5NzgsIDEyOTkyLCAxMjk5OSwgMTMwMDIsIDAsIAotICAgIDAsIDAsIDAsIDAsIDEzMDA2LCAxMzAxMiwgMTMwMTYsIDAsIDEzMDIwLCAxMzAyMywgMTMwMjcsIDEzMDMwLCAxMzAzNCwgCi0gICAgMTMwMzcsIDAsIDAsIDAsIDAsIDEzMDQxLCAxMzA0NSwgMCwgMCwgMTMwNDksIDEzMDUzLCAxMzA1NywgMTMwNjAsIDEzMDY0LCAKLSAgICAxMzA2OCwgMTMwNzIsIDEzMDc2LCAxMzA4MCwgMTMwODQsIDEzMDg4LCAxMzA5MiwgMTMwOTYsIDEzMTAwLCAxMzEwNCwgCi0gICAgMTMxMDgsIDEzMTEyLCAxMzExNiwgMTMxMjAsIDEzMTI0LCAxMzEyOCwgMTMxMzIsIDAsIDEzMTM1LCAxMzEzOCwgMTMxNDIsIAotICAgIDEzMTQ2LCAxMzE1MCwgMTMxNTMsIDEzMTU2LCAwLCAxMzE1OSwgMTMxNjMsIDAsIDEzMTY3LCAxMzE3MSwgMCwgMTMxNzUsIAotICAgIDEzMTc5LCAwLCAwLCAxMzE4MiwgMCwgMTMxODYsIDEzMTkxLCAxMzE5NSwgMTMyMDAsIDEzMjA0LCAwLCAwLCAwLCAwLCAKLSAgICAxMzIwOSwgMTMyMTQsIDAsIDAsIDEzMjE5LCAxMzIyNCwgMTMyMjksIDAsIDAsIDAsIDEzMjMzLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAxMzIzNywgMTMyNDEsIDEzMjQ1LCAxMzI0OSwgMCwgMTMyNTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzMjU3LCAKLSAgICAxMzI2MSwgMTMyNjQsIDEzMjY3LCAxMzI3MCwgMTMyNzMsIDEzMjc2LCAxMzI3OSwgMTMyODIsIDEzMjg1LCAxMzI4OCwgCi0gICAgMTMyOTEsIDEzMjk0LCAxMzI5NywgMTMzMDAsIDEzMzA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAxMzMwOSwgMTMzMTMsIDEzMzE3LCAwLCAxMzMyMSwgMTMzMjQsIDEzMzI4LCAxMzMzMSwgMTMzMzUsIDEzMzM4LCAxMzM0MiwgCi0gICAgMTMzNDYsIDEzMzUwLCAwLCAxMzM1NSwgMTMzNTgsIDEzMzYyLCAwLCAxMzM2NywgMTMzNzAsIDEzMzc0LCAxMzM3NywgCi0gICAgMTMzODEsIDEzMzg1LCAxMzM4OSwgMTMzOTMsIDEzMzk3LCAxMzQwMSwgMTM0MDUsIDEzNDA5LCAxMzQxMywgMTM0MTcsIAotICAgIDEzNDIxLCAxMzQyNSwgMTM0MjksIDEzNDMzLCAxMzQzNywgMTM0NDEsIDEzNDQ1LCAxMzQ0OSwgMCwgMTM0NTIsIDEzNDU1LCAKLSAgICAxMzQ1OSwgMTM0NjMsIDEzNDY3LCAxMzQ3MCwgMTM0NzMsIDAsIDEzNDc2LCAxMzQ4MCwgMCwgMTM0ODQsIDEzNDg4LCAKLSAgICAxMzQ5MiwgMTM0OTYsIDEzNTAwLCAwLCAwLCAxMzUwMywgMTM1MDcsIDEzNTExLCAxMzUxNiwgMTM1MjAsIDEzNTI1LCAKLSAgICAxMzUyOSwgMTM1MzQsIDEzNTM5LCAxMzU0NSwgMCwgMTM1NTEsIDEzNTU1LCAxMzU2MCwgMCwgMTM1NjYsIDEzNTcwLCAKLSAgICAxMzU3NSwgMCwgMCwgMTM1NzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzNTgyLCAKLSAgICAxMzU4NywgMTM1OTIsIDEzNTk3LCAwLCAwLCAxMzYwMywgMTM2MDcsIDEzNjEwLCAxMzYxMywgMTM2MTYsIDEzNjE5LCAKLSAgICAxMzYyMiwgMTM2MjUsIDEzNjI4LCAxMzYzMSwgMCwgMTM2MzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDEzNjM4LCAxMzY0MiwgMTM2NDYsIDAsIDEzNjUwLCAxMzY1MywgMTM2NTcsIDEzNjYwLCAxMzY2NCwgCi0gICAgMTM2NjcsIDEzNjcxLCAxMzY3NSwgMCwgMCwgMTM2NzksIDEzNjgyLCAwLCAwLCAxMzY4NiwgMTM2ODksIDEzNjkzLCAKLSAgICAxMzY5NiwgMTM3MDAsIDEzNzA0LCAxMzcwOCwgMTM3MTIsIDEzNzE2LCAxMzcyMCwgMTM3MjQsIDEzNzI4LCAxMzczMiwgCi0gICAgMTM3MzYsIDEzNzQwLCAxMzc0NCwgMTM3NDgsIDEzNzUyLCAxMzc1NiwgMTM3NjAsIDEzNzY0LCAxMzc2OCwgMCwgMTM3NzEsIAotICAgIDEzNzc0LCAxMzc3OCwgMTM3ODIsIDEzNzg2LCAxMzc4OSwgMTM3OTIsIDAsIDEzNzk1LCAxMzc5OSwgMCwgMTM4MDMsIAotICAgIDEzODA3LCAxMzgxMSwgMTM4MTUsIDEzODE5LCAwLCAwLCAxMzgyMiwgMTM4MjYsIDEzODMwLCAxMzgzNSwgMTM4MzksIAotICAgIDEzODQ0LCAxMzg0OCwgMTM4NTMsIDEzODU4LCAwLCAwLCAxMzg2NCwgMTM4NjgsIDAsIDAsIDEzODczLCAxMzg3NywgCi0gICAgMTM4ODIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzODg2LCAxMzg5MiwgMCwgMCwgMCwgMCwgMTM4OTgsIDEzOTAyLCAwLCAKLSAgICAxMzkwNiwgMTM5MTAsIDEzOTE1LCAxMzkyMCwgMTM5MjUsIDAsIDAsIDEzOTMxLCAxMzkzNSwgMTM5MzgsIDEzOTQxLCAKLSAgICAxMzk0NCwgMTM5NDcsIDEzOTUwLCAxMzk1MywgMTM5NTYsIDEzOTU5LCAxMzk2MiwgMTM5NjUsIDEzOTY5LCAxMzk3NSwgCi0gICAgMTM5ODEsIDEzOTg3LCAxMzk5MywgMTM5OTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0MDA1LCAxNDAwOSwgCi0gICAgMCwgMTQwMTMsIDE0MDE2LCAxNDAyMCwgMTQwMjMsIDE0MDI3LCAxNDAzMCwgMCwgMCwgMCwgMTQwMzQsIDE0MDM3LCAKLSAgICAxNDA0MSwgMCwgMTQwNDUsIDE0MDQ4LCAxNDA1MiwgMTQwNTYsIDAsIDAsIDAsIDE0MDU5LCAxNDA2MywgMCwgMTQwNjcsIDAsIAotICAgIDE0MDcxLCAxNDA3NSwgMCwgMCwgMCwgMTQwNzksIDE0MDgzLCAwLCAwLCAwLCAxNDA4NywgMTQwOTAsIDE0MDk0LCAwLCAwLCAKLSAgICAwLCAxNDA5NywgMTQxMDAsIDE0MTAzLCAxNDEwNiwgMTQxMTAsIDE0MTE0LCAxNDExOCwgMTQxMjIsIDE0MTI2LCAxNDEzMCwgCi0gICAgMTQxMzQsIDE0MTM4LCAwLCAwLCAwLCAwLCAxNDE0MSwgMTQxNDYsIDE0MTUwLCAxNDE1NSwgMTQxNTksIDAsIDAsIDAsIAotICAgIDE0MTY0LCAxNDE2OCwgMTQxNzMsIDAsIDE0MTc4LCAxNDE4MiwgMTQxODcsIDE0MTkyLCAwLCAwLCAxNDE5NiwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMTQxOTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0MjA1LCAxNDIwOSwgCi0gICAgMTQyMTIsIDE0MjE1LCAxNDIxOCwgMTQyMjEsIDE0MjI0LCAxNDIyNywgMTQyMzAsIDE0MjMzLCAxNDIzNiwgMTQyNDAsIAotICAgIDE0MjQ1LCAxNDI1MCwgMTQyNTQsIDE0MjU4LCAxNDI2MiwgMTQyNjYsIDE0MjcwLCAxNDI3NSwgMTQyNzksIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDE0MjgyLCAxNDI4NiwgMTQyOTAsIDAsIDE0Mjk0LCAxNDI5NywgMTQzMDEsIDE0MzA0LCAxNDMwOCwgCi0gICAgMTQzMTEsIDE0MzE1LCAxNDMxOSwgMCwgMTQzMjMsIDE0MzI2LCAxNDMzMCwgMCwgMTQzMzQsIDE0MzM3LCAxNDM0MSwgCi0gICAgMTQzNDUsIDE0MzQ4LCAxNDM1MiwgMTQzNTYsIDE0MzYwLCAxNDM2NCwgMTQzNjgsIDE0MzcyLCAxNDM3NiwgMTQzODAsIAotICAgIDE0Mzg0LCAxNDM4OCwgMTQzOTIsIDE0Mzk2LCAxNDQwMCwgMTQ0MDQsIDE0NDA4LCAxNDQxMiwgMTQ0MTYsIDE0NDIwLCAwLCAKLSAgICAxNDQyMywgMTQ0MjYsIDE0NDMwLCAxNDQzNCwgMTQ0MzgsIDE0NDQxLCAxNDQ0NCwgMTQ0NDcsIDE0NDUxLCAxNDQ1NSwgMCwgCi0gICAgMTQ0NTksIDE0NDYzLCAxNDQ2NywgMTQ0NzEsIDE0NDc1LCAwLCAwLCAwLCAxNDQ3OCwgMTQ0ODIsIDE0NDg3LCAxNDQ5MSwgCi0gICAgMTQ0OTYsIDE0NTAwLCAxNDUwNSwgMTQ1MTAsIDAsIDE0NTE2LCAxNDUyMCwgMTQ1MjUsIDAsIDE0NTMwLCAxNDUzNCwgCi0gICAgMTQ1MzksIDE0NTQ0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDU0OCwgMTQ1NTIsIDAsIDE0NTU4LCAxNDU2MiwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMTQ1NjYsIDE0NTcxLCAxNDU3NiwgMTQ1ODEsIDAsIDAsIDE0NTg3LCAxNDU5MSwgMTQ1OTQsIDE0NTk3LCAKLSAgICAxNDYwMCwgMTQ2MDMsIDE0NjA2LCAxNDYwOSwgMTQ2MTIsIDE0NjE1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDYxOCwgCi0gICAgMTQ2MzEsIDE0NjQzLCAxNDY1NSwgMTQ2NjcsIDE0Njc5LCAxNDY5MSwgMTQ3MDMsIDAsIDAsIDE0NzA3LCAxNDcxMSwgMCwgCi0gICAgMTQ3MTUsIDE0NzE4LCAxNDcyMiwgMTQ3MjUsIDE0NzI5LCAxNDczMiwgMTQ3MzYsIDE0NzQwLCAwLCAxNDc0NCwgMTQ3NDcsIAotICAgIDE0NzUxLCAwLCAxNDc1NSwgMTQ3NTgsIDE0NzYyLCAxNDc2NiwgMTQ3NjksIDE0NzczLCAxNDc3NywgMTQ3ODEsIDE0Nzg1LCAKLSAgICAxNDc4OSwgMTQ3OTMsIDE0Nzk3LCAxNDgwMSwgMTQ4MDUsIDE0ODA5LCAxNDgxMywgMTQ4MTcsIDE0ODIxLCAxNDgyNSwgCi0gICAgMTQ4MjksIDE0ODMzLCAxNDgzNywgMTQ4NDEsIDAsIDE0ODQ0LCAxNDg0NywgMTQ4NTEsIDE0ODU1LCAxNDg1OSwgMTQ4NjIsIAotICAgIDE0ODY1LCAxNDg2OCwgMTQ4NzIsIDE0ODc2LCAwLCAxNDg4MCwgMTQ4ODQsIDE0ODg4LCAxNDg5MiwgMTQ4OTYsIDAsIDAsIAotICAgIDE0ODk5LCAxNDkwMywgMTQ5MDcsIDE0OTEyLCAxNDkxNiwgMTQ5MjEsIDE0OTI1LCAxNDkzMCwgMTQ5MzUsIDAsIDE0OTQxLCAKLSAgICAxNDk0NSwgMTQ5NTAsIDAsIDE0OTU1LCAxNDk1OSwgMTQ5NjQsIDE0OTY5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDk3MywgCi0gICAgMTQ5NzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0OTgzLCAwLCAxNDk4NywgMTQ5OTIsIDE0OTk3LCAxNTAwMiwgMCwgMCwgCi0gICAgMTUwMDgsIDE1MDEyLCAxNTAxNSwgMTUwMTgsIDE1MDIxLCAxNTAyNCwgMTUwMjcsIDE1MDMwLCAxNTAzMywgMTUwMzYsIDAsIAotICAgIDE1MDM5LCAxNTA0MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTUwNDcsIDE1MDUxLCAKLSAgICAwLCAxNTA1NSwgMTUwNTgsIDE1MDYyLCAxNTA2NSwgMTUwNjksIDE1MDcyLCAxNTA3NiwgMTUwODAsIDAsIDE1MDg0LCAKLSAgICAxNTA4NywgMTUwOTEsIDAsIDE1MDk1LCAxNTA5OCwgMTUxMDIsIDE1MTA2LCAxNTEwOSwgMTUxMTMsIDE1MTE3LCAxNTEyMSwgCi0gICAgMTUxMjUsIDE1MTI5LCAxNTEzMywgMTUxMzcsIDE1MTQxLCAxNTE0NSwgMTUxNDksIDE1MTUzLCAxNTE1NywgMTUxNjEsIAotICAgIDE1MTY1LCAxNTE2OSwgMTUxNzMsIDE1MTc3LCAxNTE4MSwgMTUxODQsIDE1MTg4LCAxNTE5MSwgMTUxOTUsIDE1MTk5LCAKLSAgICAxNTIwMywgMTUyMDYsIDE1MjA5LCAxNTIxMiwgMTUyMTYsIDE1MjIwLCAxNTIyNCwgMTUyMjgsIDE1MjMyLCAxNTIzNiwgCi0gICAgMTUyNDAsIDE1MjQ0LCAxNTI0NywgMCwgMCwgMTUyNTEsIDE1MjU1LCAxNTI2MCwgMTUyNjQsIDE1MjY5LCAxNTI3MywgCi0gICAgMTUyNzgsIDE1MjgzLCAwLCAxNTI4OSwgMTUyOTMsIDE1Mjk4LCAwLCAxNTMwMywgMTUzMDcsIDE1MzEyLCAxNTMxNywgCi0gICAgMTUzMjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE1MzI2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNTMzMiwgCi0gICAgMTUzMzcsIDE1MzQyLCAxNTM0NywgMCwgMCwgMTUzNTMsIDE1MzU3LCAxNTM2MCwgMTUzNjMsIDE1MzY2LCAxNTM2OSwgCi0gICAgMTUzNzIsIDE1Mzc1LCAxNTM3OCwgMTUzODEsIDE1Mzg0LCAxNTM4OCwgMTUzOTMsIDE1Mzk4LCAxNTQwNCwgMTU0MTAsIDAsIAotICAgIDAsIDAsIDE1NDE2LCAxNTQyMCwgMTU0MjYsIDE1NDMxLCAxNTQzNywgMTU0NDIsIDE1NDQ4LCAwLCAwLCAxNTQ1NCwgCi0gICAgMTU0NTgsIDAsIDE1NDYyLCAxNTQ2NiwgMTU0NzAsIDE1NDc0LCAxNTQ3OCwgMTU0ODIsIDE1NDg2LCAxNTQ5MCwgMTU0OTQsIAotICAgIDE1NDk4LCAxNTUwMiwgMTU1MDYsIDE1NTEwLCAxNTUxNCwgMTU1MTgsIDE1NTIyLCAxNTUyNiwgMTU1MzAsIDAsIDAsIDAsIAotICAgIDE1NTM0LCAxNTU0MCwgMTU1NDYsIDE1NTUyLCAxNTU1OCwgMTU1NjQsIDE1NTcwLCAxNTU3NiwgMTU1ODIsIDE1NTg4LCAKLSAgICAxNTU5NCwgMTU2MDAsIDE1NjA4LCAxNTYxNCwgMTU2MjAsIDE1NjI2LCAxNTYzMiwgMTU2MzgsIDE1NjQ0LCAxNTY1MCwgCi0gICAgMTU2NTYsIDE1NjYyLCAxNTY2OCwgMTU2NzQsIDAsIDE1NjgwLCAxNTY4NiwgMTU2OTIsIDE1Njk4LCAxNTcwNCwgMTU3MTAsIAotICAgIDE1NzE0LCAxNTcyMCwgMTU3MjQsIDAsIDE1NzI4LCAwLCAwLCAxNTczNCwgMTU3MzgsIDE1NzQ0LCAxNTc1MCwgMTU3NTYsIAotICAgIDE1NzYwLCAxNTc2NiwgMCwgMCwgMCwgMTU3NzAsIDAsIDAsIDAsIDAsIDE1Nzc0LCAxNTc3OSwgMTU3ODYsIDE1NzkzLCAKLSAgICAxNTgwMCwgMTU4MDcsIDAsIDE1ODE0LCAwLCAxNTgyMSwgMTU4MjYsIDE1ODMxLCAxNTgzOCwgMTU4NDUsIDE1ODU0LCAKLSAgICAxNTg2NSwgMTU4NzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDE1ODc5LCAxNTg4NiwgMTU4OTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE1ODk4LCAxNTkwNCwgCi0gICAgMTU5MTAsIDE1OTE2LCAxNTkyMiwgMTU5MjgsIDE1OTM0LCAxNTk0MCwgMTU5NDYsIDE1OTUyLCAxNTk1OCwgMTU5NjQsIAotICAgIDE1OTcwLCAxNTk3NiwgMTU5ODIsIDE1OTg4LCAxNTk5NCwgMTYwMDAsIDE2MDA2LCAxNjAxMiwgMTYwMTgsIDE2MDI0LCAKLSAgICAxNjAzMCwgMTYwMzYsIDE2MDQyLCAxNjA0OCwgMTYwNTQsIDE2MDYwLCAxNjA2NiwgMTYwNzIsIDE2MDc4LCAxNjA4NCwgCi0gICAgMTYwOTAsIDE2MDk1LCAxNjEwMSwgMTYxMDcsIDE2MTExLCAxNjExNywgMTYxMjEsIDE2MTI3LCAxNjEzMywgMTYxMzksIAotICAgIDE2MTQ1LCAxNjE1MSwgMTYxNTcsIDE2MTYyLCAxNjE2OCwgMTYxNzIsIDE2MTc3LCAxNjE4MywgMTYxODksIDE2MTk1LCAKLSAgICAxNjIwMCwgMTYyMDYsIDE2MjEyLCAxNjIxOCwgMTYyMjMsIDE2MjI5LCAwLCAwLCAwLCAwLCAxNjIzMywgMTYyMzksIAotICAgIDE2MjQ0LCAxNjI1MCwgMTYyNTUsIDE2MjYzLCAxNjI3MSwgMTYyNzUsIDE2Mjc5LCAxNjI4MywgMTYyODksIDE2Mjk1LCAKLSAgICAxNjMwMSwgMTYzMDcsIDE2MzExLCAxNjMxNSwgMTYzMTksIDE2MzIzLCAxNjMyNywgMTYzMzAsIDE2MzMzLCAxNjMzNiwgCi0gICAgMTYzMzksIDE2MzQyLCAxNjM0NSwgMTYzNDgsIDE2MzUxLCAxNjM1NCwgMTYzNTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDE2MzYyLCAxNjM2NywgMCwgMTYzNzQsIDAsIDAsIDE2MzgxLCAxNjM4NiwgMCwgMTYzOTEsIDAsIAotICAgIDAsIDE2Mzk4LCAwLCAwLCAwLCAwLCAwLCAwLCAxNjQwMywgMTY0MDgsIDE2NDEyLCAxNjQxOSwgMCwgMTY0MjYsIDE2NDMxLCAKLSAgICAxNjQzNiwgMTY0NDEsIDE2NDQ4LCAxNjQ1NSwgMTY0NjIsIDAsIDE2NDY5LCAxNjQ3NCwgMTY0NzksIDAsIDE2NDg2LCAwLCAKLSAgICAxNjQ5MywgMCwgMCwgMTY0OTgsIDE2NTA1LCAwLCAxNjUxMiwgMTY1MTYsIDE2NTIzLCAxNjUyNywgMTY1MzIsIDE2NTQwLCAKLSAgICAxNjU0NiwgMTY1NTIsIDE2NTU3LCAxNjU2MywgMTY1NjksIDE2NTc1LCAxNjU4MCwgMCwgMTY1ODYsIDE2NTk0LCAxNjYwMSwgCi0gICAgMCwgMCwgMTY2MDgsIDE2NjEzLCAxNjYxOSwgMTY2MjQsIDE2NjMwLCAwLCAxNjYzNiwgMCwgMTY2NDIsIDE2NjQ5LCAKLSAgICAxNjY1NiwgMTY2NjMsIDE2NjcwLCAxNjY3NSwgMCwgMCwgMTY2NzksIDE2Njg0LCAxNjY4OCwgMTY2OTIsIDE2Njk2LCAKLSAgICAxNjcwMCwgMTY3MDQsIDE2NzA4LCAxNjcxMiwgMTY3MTYsIDAsIDAsIDE2NzIwLCAxNjcyNiwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMTY3MzIsIDE2NzM2LCAxNjc0NywgMTY3NjIsIDE2Nzc3LCAxNjc4NywgMTY3OTgsIDE2ODExLCAKLSAgICAxNjgyMiwgMTY4MjgsIDE2ODM2LCAxNjg0NiwgMTY4NTIsIDE2ODYwLCAxNjg2NCwgMTY4NzAsIDE2ODc2LCAxNjg4NCwgCi0gICAgMTY4OTQsIDE2OTAyLCAxNjkxNSwgMTY5MjEsIDE2OTI5LCAxNjkzNywgMTY5NDksIDE2OTU2LCAxNjk2NCwgMTY5NzIsIAotICAgIDE2OTgwLCAxNjk4OCwgMTY5OTYsIDE3MDA0LCAxNzAxNCwgMTcwMTgsIDE3MDIxLCAxNzAyNCwgMTcwMjcsIDE3MDMwLCAKLSAgICAxNzAzMywgMTcwMzYsIDE3MDM5LCAxNzA0MiwgMTcwNDUsIDE3MDQ5LCAxNzA1MywgMTcwNTcsIDE3MDYxLCAxNzA2NSwgCi0gICAgMTcwNjksIDE3MDczLCAxNzA3NywgMTcwODEsIDE3MDg2LCAxNzA5MiwgMTcxMDIsIDE3MTE2LCAxNzEyNiwgMTcxMzIsIAotICAgIDE3MTM4LCAxNzE0NiwgMTcxNTQsIDE3MTYyLCAxNzE3MCwgMTcxNzYsIDE3MTgyLCAxNzE4NSwgMTcxODksIDE3MTkzLCAKLSAgICAxNzE5NywgMTcyMDEsIDE3MjA1LCAxNzIwOSwgMCwgMTcyMTMsIDE3MjE3LCAxNzIyMSwgMTcyMjUsIDE3MjI5LCAxNzIzMywgCi0gICAgMTcyMzcsIDE3MjQxLCAxNzI0NSwgMTcyNDksIDE3MjUzLCAxNzI1NiwgMTcyNTksIDE3MjYzLCAxNzI2NywgMTcyNzEsIAotICAgIDE3Mjc0LCAxNzI3OCwgMTcyODIsIDE3Mjg2LCAxNzI5MCwgMTcyOTQsIDE3Mjk4LCAxNzMwMiwgMTczMDYsIDE3MzA5LCAKLSAgICAxNzMxMiwgMTczMTYsIDE3MzIwLCAxNzMyNCwgMTczMjgsIDE3MzMxLCAxNzMzNCwgMTczMzgsIDE3MzQzLCAxNzM0NywgMCwgCi0gICAgMCwgMCwgMCwgMTczNTEsIDE3MzU2LCAxNzM2MCwgMTczNjUsIDE3MzY5LCAxNzM3NCwgMTczNzksIDE3Mzg1LCAxNzM5MCwgCi0gICAgMTczOTYsIDE3NDAwLCAxNzQwNSwgMTc0MDksIDE3NDE0LCAxNzQyNCwgMTc0MzAsIDE3NDM2LCAxNzQ0MywgMTc0NTMsIAotICAgIDE3NDU5LCAxNzQ2MywgMTc0NjcsIDE3NDczLCAxNzQ3OSwgMTc0ODcsIDE3NDkzLCAxNzUwMSwgMTc1MDksIDE3NTE3LCAKLSAgICAxNzUyNywgMTc1MzUsIDE3NTQ1LCAxNzU1MCwgMTc1NTYsIDE3NTYyLCAxNzU2OCwgMTc1NzQsIDE3NTgwLCAxNzU4NiwgMCwgCi0gICAgMTc1OTIsIDE3NTk4LCAxNzYwNCwgMTc2MTAsIDE3NjE2LCAxNzYyMiwgMTc2MjgsIDE3NjM0LCAxNzY0MCwgMTc2NDYsIAotICAgIDE3NjUyLCAxNzY1NywgMTc2NjIsIDE3NjY4LCAxNzY3NCwgMTc2ODAsIDE3Njg1LCAxNzY5MSwgMTc2OTcsIDE3NzAzLCAKLSAgICAxNzcwOSwgMTc3MTUsIDE3NzIxLCAxNzcyNywgMTc3MzMsIDE3NzM4LCAxNzc0MywgMTc3NDksIDE3NzU1LCAxNzc2MSwgCi0gICAgMTc3NjcsIDE3NzcyLCAxNzc3NywgMTc3ODMsIDE3NzkxLCAxNzc5OCwgMCwgMTc4MDUsIDE3ODEyLCAxNzgyNSwgMTc4MzIsIAotICAgIDE3ODM5LCAxNzg0NywgMTc4NTUsIDE3ODYxLCAxNzg2NywgMTc4NzMsIDE3ODgzLCAxNzg4OCwgMTc4OTQsIDE3OTA0LCAKLSAgICAxNzkxNCwgMCwgMTc5MjQsIDE3OTM0LCAxNzk0MiwgMTc5NTQsIDE3OTY2LCAxNzk3MiwgMTc5ODYsIDE4MDAxLCAxODAwNiwgCi0gICAgMTgwMTEsIDE4MDE5LCAxODAyNywgMTgwMzUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4MDQzLCAKLSAgICAxODA0NiwgMTgwNTAsIDE4MDU0LCAxODA1OCwgMTgwNjIsIDE4MDY2LCAxODA3MCwgMTgwNzQsIDE4MDc4LCAxODA4MiwgCi0gICAgMTgwODYsIDE4MDkwLCAxODA5NCwgMTgwOTgsIDE4MTAyLCAxODEwNiwgMTgxMTAsIDE4MTE0LCAxODExOCwgMTgxMjIsIAotICAgIDE4MTI1LCAxODEyOCwgMTgxMzIsIDE4MTM2LCAxODE0MCwgMTgxNDMsIDE4MTQ2LCAxODE0OSwgMTgxNTMsIDE4MTU3LCAKLSAgICAxODE2MSwgMTgxNjQsIDE4MTY4LCAxODE3MSwgMTgxNzYsIDE4MTc5LCAxODE4MywgMTgxODYsIDE4MTkwLCAxODE5MywgCi0gICAgMTgxOTgsIDE4MjAxLCAxODIwNSwgMTgyMTIsIDE4MjE3LCAxODIyMSwgMTgyMjYsIDE4MjMwLCAxODIzNSwgMTgyMzksIAotICAgIDE4MjQ0LCAxODI1MSwgMTgyNTcsIDE4MjYyLCAxODI2NiwgMTgyNzAsIDE4Mjc0LCAxODI3OCwgMTgyODIsIDE4Mjg4LCAKLSAgICAxODI5NCwgMTgzMDEsIDE4MzA3LCAxODMxMywgMTgzMTcsIDE4MzIwLCAxODMyMywgMTgzMjYsIDE4MzI5LCAxODMzMiwgCi0gICAgMTgzMzUsIDE4MzM4LCAxODM0MSwgMTgzNDQsIDE4MzUwLCAxODM1NCwgMTgzNTgsIDE4MzYyLCAxODM2NiwgMTgzNzAsIAotICAgIDE4Mzc0LCAxODM3OCwgMTgzODIsIDE4Mzg3LCAxODM5MSwgMTgzOTYsIDE4NDAxLCAxODQwNywgMTg0MTIsIDE4NDE4LCAKLSAgICAxODQyNCwgMTg0MzAsIDE4NDM2LCAxODQ0MiwgMTg0NTAsIDE4NDU4LCAxODQ2NywgMTg0NzUsIDE4NDg0LCAxODQ5MywgCi0gICAgMTg1MDQsIDE4NTE0LCAxODUyNCwgMTg1MzUsIDE4NTQ2LCAxODU1NiwgMTg1NjYsIDE4NTc2LCAxODU4NiwgMTg1OTYsIAotICAgIDE4NjA2LCAxODYxNiwgMTg2MjYsIDE4NjM0LCAxODY0MSwgMTg2NDcsIDE4NjU0LCAxODY1OSwgMTg2NjUsIDE4NjcxLCAKLSAgICAxODY3NywgMTg2ODMsIDE4Njg5LCAxODY5NSwgMTg3MDAsIDE4NzA2LCAxODcxMiwgMTg3MTgsIDE4NzI0LCAxODcyOSwgCi0gICAgMTg3MzgsIDE4NzQ1LCAxODc1MSwgMTg3NTgsIDE4NzY2LCAxODc3MiwgMTg3NzgsIDE4Nzg0LCAxODc5MCwgMTg3OTgsIAotICAgIDE4ODA2LCAxODgxNiwgMTg4MjQsIDE4ODMyLCAxODgzOCwgMTg4NDMsIDE4ODQ4LCAxODg1MywgMTg4NTgsIDE4ODYzLCAKLSAgICAxODg2OCwgMTg4NzMsIDE4ODc4LCAxODg4MywgMTg4ODksIDE4ODk1LCAxODkwMSwgMTg5MDgsIDE4OTEzLCAxODkxOSwgCi0gICAgMTg5MjQsIDE4OTI5LCAxODkzNCwgMTg5MzksIDE4OTQ0LCAxODk0OSwgMTg5NTQsIDE4OTU5LCAxODk2NCwgMTg5NjksIAotICAgIDE4OTc0LCAxODk3OSwgMTg5ODQsIDE4OTg5LCAxODk5NCwgMTg5OTksIDE5MDA0LCAxOTAwOSwgMTkwMTQsIDE5MDE5LCAKLSAgICAxOTAyNCwgMTkwMjksIDE5MDM0LCAxOTAzOSwgMTkwNDQsIDE5MDQ5LCAxOTA1NCwgMTkwNTksIDE5MDY0LCAxOTA2OSwgCi0gICAgMTkwNzQsIDE5MDc5LCAxOTA4NCwgMTkwODksIDE5MDk0LCAxOTA5OSwgMTkxMDQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDE5MTA5LCAxOTExMywgMTkxMTcsIDE5MTIxLCAxOTEyNSwgMTkxMjksIDE5MTMzLCAxOTEzNywgMTkxNDEsIAotICAgIDE5MTQ1LCAxOTE0OSwgMTkxNTMsIDE5MTU3LCAxOTE2MSwgMTkxNjUsIDE5MTY5LCAxOTE3MywgMTkxNzcsIDE5MTgxLCAKLSAgICAxOTE4NSwgMTkxODksIDE5MTkzLCAxOTE5NywgMTkyMDEsIDE5MjA1LCAxOTIwOSwgMTkyMTMsIDE5MjE3LCAxOTIyMSwgCi0gICAgMTkyMjUsIDE5MjI5LCAxOTIzMywgMTkyMzcsIDE5MjQxLCAxOTI0NSwgMTkyNDksIDE5MjUzLCAxOTI1NywgMTkyNjEsIAotICAgIDE5MjY1LCAxOTI2OSwgMTkyNzMsIDE5Mjc5LCAxOTI4MywgMTkyODgsIDAsIDAsIDAsIDE5MjkzLCAxOTI5NywgMTkzMDEsIAotICAgIDE5MzA1LCAxOTMwOSwgMTkzMTMsIDE5MzE3LCAxOTMyMSwgMTkzMjUsIDE5MzI5LCAxOTMzMywgMTkzMzcsIDE5MzQxLCAKLSAgICAxOTM0NSwgMTkzNDksIDE5MzUzLCAxOTM1NywgMTkzNjEsIDE5MzY1LCAxOTM2OSwgMTkzNzMsIDE5Mzc3LCAxOTM4MSwgCi0gICAgMTkzODUsIDE5Mzg5LCAxOTM5MywgMTkzOTcsIDE5NDAxLCAxOTQwNSwgMTk0MDksIDE5NDEzLCAxOTQxNywgMTk0MjEsIAotICAgIDE5NDI1LCAxOTQyOSwgMTk0MzMsIDE5NDM3LCAxOTQ0MSwgMTk0NDUsIDE5NDQ5LCAxOTQ1MywgMTk0NTcsIDE5NDYxLCAKLSAgICAxOTQ2NSwgMTk0NjksIDE5NDczLCAxOTQ3NywgMTk0ODEsIDE5NDg1LCAxOTQ4OSwgMTk0OTMsIDE5NDk3LCAxOTUwMSwgCi0gICAgMTk1MDUsIDE5NTA5LCAxOTUxMywgMTk1MTcsIDE5NTIxLCAxOTUyNSwgMTk1MjksIDE5NTMzLCAxOTUzNywgMTk1NDEsIAotICAgIDE5NTQ1LCAxOTU0OSwgMTk1NTMsIDE5NTU3LCAxOTU2MSwgMTk1NjUsIDE5NTY5LCAxOTU3MywgMTk1NzcsIDE5NTgxLCAKLSAgICAxOTU4NSwgMTk1ODksIDE5NTkzLCAxOTU5NywgMTk2MDEsIDE5NjA1LCAxOTYwOSwgMTk2MTMsIDE5NjE3LCAxOTYyMSwgCi0gICAgMTk2MjUsIDE5NjI5LCAxOTYzMywgMTk2MzcsIDE5NjQxLCAxOTY0NSwgMTk2NDksIDE5NjUzLCAxOTY1NywgMTk2NjEsIAotICAgIDE5NjY1LCAxOTY2OSwgMTk2NzMsIDE5Njc3LCAxOTY4MSwgMTk2ODQsIDE5Njg4LCAxOTY5MSwgMTk2OTUsIDE5Njk5LCAKLSAgICAxOTcwMiwgMTk3MDYsIDE5NzEwLCAxOTcxMywgMTk3MTcsIDE5NzIxLCAxOTcyNSwgMTk3MjksIDE5NzMyLCAxOTczNiwgCi0gICAgMTk3NDAsIDE5NzQ0LCAxOTc0OCwgMTk3NTIsIDE5NzU2LCAxOTc1OSwgMTk3NjMsIDE5NzY3LCAxOTc3MSwgMTk3NzUsIAotICAgIDE5Nzc5LCAxOTc4MywgMTk3ODcsIDE5NzkxLCAxOTc5NSwgMTk3OTksIDE5ODAzLCAxOTgwNywgMTk4MTEsIDE5ODE1LCAKLSAgICAxOTgxOSwgMTk4MjMsIDE5ODI3LCAxOTgzMSwgMTk4MzUsIDE5ODM5LCAxOTg0MywgMTk4NDcsIDE5ODUxLCAxOTg1NSwgCi0gICAgMTk4NTksIDE5ODYzLCAxOTg2NywgMTk4NzEsIDE5ODc1LCAxOTg3OSwgMTk4ODMsIDE5ODg3LCAxOTg5MSwgMTk4OTUsIAotICAgIDE5ODk5LCAxOTkwMywgMTk5MDcsIDE5OTExLCAxOTkxNSwgMTk5MTksIDE5OTIzLCAxOTkyNywgMTk5MzEsIDE5OTM1LCAKLSAgICAxOTkzOSwgMTk5NDMsIDE5OTQ3LCAxOTk1MSwgMTk5NTUsIDE5OTU5LCAxOTk2MywgMTk5NjcsIDE5OTcxLCAxOTk3NSwgCi0gICAgMTk5NzksIDE5OTgzLCAxOTk4NywgMTk5OTEsIDE5OTk1LCAxOTk5OSwgMjAwMDMsIDIwMDA3LCAyMDAxMSwgMjAwMTUsIAotICAgIDIwMDE5LCAyMDAyMywgMjAwMjcsIDIwMDMxLCAyMDAzNSwgMjAwMzksIDIwMDQzLCAyMDA0NywgMjAwNTEsIDIwMDU1LCAKLSAgICAyMDA1OSwgMjAwNjMsIDIwMDY3LCAyMDA3MSwgMjAwNzUsIDIwMDc5LCAyMDA4MywgMjAwODcsIDIwMDkxLCAyMDA5NSwgCi0gICAgMjAwOTksIDIwMTAzLCAyMDEwNywgMjAxMTEsIDIwMTE1LCAyMDExOSwgMjAxMjMsIDIwMTI3LCAyMDEzMSwgMjAxMzUsIAotICAgIDIwMTM5LCAyMDE0MywgMjAxNDcsIDIwMTUxLCAyMDE1NSwgMjAxNTksIDIwMTYzLCAyMDE2NywgMjAxNzEsIDIwMTc1LCAKLSAgICAyMDE3OSwgMjAxODMsIDIwMTg3LCAyMDE5MSwgMjAxOTUsIDIwMTk5LCAyMDIwMywgMjAyMDcsIDIwMjExLCAyMDIxNSwgCi0gICAgMjAyMTksIDIwMjIzLCAyMDIyNywgMjAyMzEsIDIwMjM1LCAyMDIzOSwgMjAyNDMsIDIwMjQ3LCAyMDI1MSwgMjAyNTUsIAotICAgIDIwMjU5LCAyMDI2MywgMjAyNjcsIDIwMjcxLCAyMDI3NSwgMjAyNzksIDIwMjgzLCAyMDI4NywgMjAyOTEsIDIwMjk1LCAKLSAgICAyMDI5OSwgMjAzMDMsIDIwMzA3LCAyMDMxMSwgMjAzMTQsIDIwMzE4LCAyMDMyMiwgMjAzMjYsIDIwMzMwLCAyMDMzNCwgCi0gICAgMjAzMzgsIDIwMzQyLCAyMDM0NiwgMjAzNTAsIDIwMzU0LCAyMDM1OCwgMjAzNjIsIDIwMzY2LCAyMDM3MCwgMjAzNzQsIAotICAgIDIwMzc4LCAyMDM4MiwgMjAzODYsIDIwMzkwLCAyMDM5NCwgMjAzOTgsIDIwNDAyLCAyMDQwNiwgMjA0MDksIDIwNDEzLCAKLSAgICAyMDQxNywgMjA0MjEsIDIwNDI1LCAyMDQyOSwgMjA0MzMsIDIwNDM3LCAyMDQ0MSwgMjA0NDUsIDIwNDQ5LCAyMDQ1MywgCi0gICAgMjA0NTcsIDIwNDYxLCAyMDQ2NSwgMjA0NjksIDIwNDcyLCAyMDQ3NiwgMjA0ODAsIDIwNDg0LCAyMDQ4OCwgMjA0OTIsIAotICAgIDIwNDk2LCAyMDUwMCwgMjA1MDQsIDIwNTA4LCAyMDUxMiwgMjA1MTYsIDIwNTIwLCAyMDUyNCwgMjA1MjgsIDIwNTMyLCAKLSAgICAyMDUzNiwgMjA1NDAsIDIwNTQ0LCAyMDU0OCwgMjA1NTIsIDIwNTU2LCAyMDU2MCwgMjA1NjQsIDIwNTY4LCAyMDU3MiwgCi0gICAgMjA1NzYsIDIwNTgwLCAyMDU4NCwgMjA1ODgsIDIwNTkyLCAyMDU5NiwgMCwgMjA2MDAsIDIwNjA0LCAyMDYwOCwgMjA2MTIsIAotICAgIDAsIDAsIDIwNjE2LCAyMDYyMCwgMjA2MjQsIDIwNjI4LCAyMDYzMiwgMjA2MzYsIDIwNjQwLCAwLCAyMDY0NCwgMCwgCi0gICAgMjA2NDgsIDIwNjUyLCAyMDY1NiwgMjA2NjAsIDAsIDAsIDIwNjY0LCAyMDY2OCwgMjA2NzIsIDIwNjc2LCAyMDY4MCwgCi0gICAgMjA2ODQsIDIwNjg4LCAyMDY5MiwgMjA2OTYsIDIwNzAwLCAyMDcwNCwgMjA3MDgsIDIwNzEyLCAyMDcxNiwgMjA3MjAsIAotICAgIDIwNzI0LCAyMDcyOCwgMjA3MzIsIDIwNzM2LCAyMDc0MCwgMjA3NDQsIDIwNzQ4LCAyMDc1MiwgMjA3NTUsIDIwNzU5LCAKLSAgICAyMDc2MywgMjA3NjcsIDIwNzcxLCAyMDc3NSwgMjA3NzksIDIwNzgzLCAyMDc4NywgMjA3OTEsIDIwNzk1LCAyMDc5OSwgCi0gICAgMjA4MDMsIDIwODA3LCAyMDgxMSwgMjA4MTUsIDIwODE5LCAyMDgyMywgMCwgMjA4MjcsIDIwODMxLCAyMDgzNSwgMjA4MzksIAotICAgIDAsIDAsIDIwODQzLCAyMDg0NiwgMjA4NTAsIDIwODU0LCAyMDg1OCwgMjA4NjIsIDIwODY2LCAyMDg3MCwgMjA4NzQsIAotICAgIDIwODc4LCAyMDg4MiwgMjA4ODYsIDIwODkwLCAyMDg5NCwgMjA4OTgsIDIwOTAyLCAyMDkwNiwgMjA5MTEsIDIwOTE2LCAKLSAgICAyMDkyMSwgMjA5MjcsIDIwOTMzLCAyMDkzOCwgMjA5NDMsIDIwOTQ5LCAyMDk1MiwgMjA5NTYsIDIwOTYwLCAyMDk2NCwgCi0gICAgMjA5NjgsIDIwOTcyLCAyMDk3NiwgMjA5ODAsIDAsIDIwOTg0LCAyMDk4OCwgMjA5OTIsIDIwOTk2LCAwLCAwLCAyMTAwMCwgCi0gICAgMjEwMDQsIDIxMDA4LCAyMTAxMiwgMjEwMTYsIDIxMDIwLCAyMTAyNCwgMCwgMjEwMjgsIDAsIDIxMDMyLCAyMTAzNiwgCi0gICAgMjEwNDAsIDIxMDQ0LCAwLCAwLCAyMTA0OCwgMjEwNTIsIDIxMDU2LCAyMTA2MCwgMjEwNjQsIDIxMDY4LCAyMTA3MiwgCi0gICAgMjEwNzYsIDIxMDgwLCAyMTA4NSwgMjEwOTAsIDIxMDk1LCAyMTEwMSwgMjExMDcsIDIxMTEyLCAwLCAyMTExNywgMjExMjEsIAotICAgIDIxMTI1LCAyMTEyOSwgMjExMzMsIDIxMTM3LCAyMTE0MSwgMjExNDUsIDIxMTQ5LCAyMTE1MywgMjExNTcsIDIxMTYxLCAKLSAgICAyMTE2NSwgMjExNjksIDIxMTczLCAyMTE3NywgMjExODEsIDIxMTg0LCAyMTE4OCwgMjExOTIsIDIxMTk2LCAyMTIwMCwgCi0gICAgMjEyMDQsIDIxMjA4LCAyMTIxMiwgMjEyMTYsIDIxMjIwLCAyMTIyNCwgMjEyMjgsIDIxMjMyLCAyMTIzNiwgMjEyNDAsIAotICAgIDIxMjQ0LCAyMTI0OCwgMjEyNTIsIDIxMjU2LCAyMTI2MCwgMjEyNjQsIDIxMjY4LCAyMTI3MiwgMjEyNzYsIDIxMjgwLCAKLSAgICAyMTI4NCwgMjEyODgsIDIxMjkyLCAyMTI5NiwgMjEzMDAsIDIxMzA0LCAyMTMwOCwgMjEzMTIsIDIxMzE2LCAyMTMyMCwgCi0gICAgMjEzMjQsIDIxMzI4LCAyMTMzMiwgMjEzMzYsIDIxMzQwLCAwLCAyMTM0NCwgMjEzNDgsIDIxMzUyLCAyMTM1NiwgMCwgMCwgCi0gICAgMjEzNjAsIDIxMzY0LCAyMTM2OCwgMjEzNzIsIDIxMzc2LCAyMTM4MCwgMjEzODQsIDIxMzg4LCAyMTM5MiwgMjEzOTYsIAotICAgIDIxNDAwLCAyMTQwNCwgMjE0MDgsIDIxNDEyLCAyMTQxNiwgMjE0MjAsIDIxNDI0LCAyMTQyOCwgMjE0MzIsIDIxNDM2LCAKLSAgICAyMTQ0MCwgMjE0NDQsIDIxNDQ4LCAyMTQ1MiwgMjE0NTYsIDIxNDYwLCAyMTQ2NCwgMjE0NjgsIDIxNDcyLCAyMTQ3NiwgCi0gICAgMjE0ODAsIDIxNDg0LCAyMTQ4OCwgMjE0OTIsIDIxNDk2LCAyMTUwMCwgMjE1MDQsIDIxNTA4LCAyMTUxMiwgMjE1MTYsIAotICAgIDIxNTIwLCAyMTUyNCwgMjE1MjgsIDIxNTMyLCAyMTUzNiwgMjE1NDAsIDIxNTQ0LCAyMTU0OCwgMjE1NTIsIDIxNTU2LCAKLSAgICAyMTU2MCwgMjE1NjQsIDIxNTY4LCAyMTU3MiwgMjE1NzYsIDIxNTgwLCAyMTU4NCwgMjE1ODcsIDIxNTkxLCAyMTU5NSwgCi0gICAgMjE1OTksIDIxNjAzLCAyMTYwNywgMjE2MTEsIDIxNjE1LCAyMTYxOSwgMjE2MjMsIDAsIDAsIDIxNjI3LCAyMTYzNiwgCi0gICAgMjE2NDIsIDIxNjQ3LCAyMTY1MSwgMjE2NTQsIDIxNjU5LCAyMTY2MiwgMjE2NjUsIDIxNjY4LCAyMTY3MywgMjE2NzcsIAotICAgIDIxNjgyLCAyMTY4NSwgMjE2ODgsIDIxNjkxLCAyMTY5NCwgMjE2OTcsIDIxNzAwLCAyMTcwMywgMjE3MDYsIDIxNzA5LCAKLSAgICAyMTcxMywgMjE3MTcsIDIxNzIxLCAyMTcyNSwgMjE3MjksIDIxNzMzLCAyMTczNywgMjE3NDEsIDIxNzQ1LCAyMTc0OSwgMCwgCi0gICAgMCwgMCwgMjE3NTUsIDIxNzYxLCAyMTc2NSwgMjE3NjksIDIxNzczLCAyMTc3OSwgMjE3ODMsIDIxNzg3LCAyMTc5MSwgCi0gICAgMjE3OTcsIDIxODAxLCAyMTgwNSwgMjE4MDksIDIxODE1LCAyMTgxOSwgMjE4MjMsIDIxODI3LCAyMTgzMywgMjE4MzksIAotICAgIDIxODQ1LCAyMTg1MywgMjE4NTksIDIxODY1LCAyMTg3MSwgMjE4NzcsIDIxODgzLCAwLCAwLCAwLCAwLCAwLCAwLCAyMTg4OSwgCi0gICAgMjE4OTIsIDIxODk1LCAyMTg5OCwgMjE5MDEsIDIxOTA0LCAyMTkwOCwgMjE5MTIsIDIxOTE1LCAyMTkxOSwgMjE5MjMsIAotICAgIDIxOTI3LCAyMTkzMSwgMjE5MzUsIDIxOTM4LCAyMTk0MiwgMjE5NDYsIDIxOTUwLCAyMTk1NCwgMjE5NTgsIDIxOTYyLCAKLSAgICAyMTk2NiwgMjE5NzAsIDIxOTc0LCAyMTk3OCwgMjE5ODIsIDIxOTg1LCAyMTk4OSwgMjE5OTMsIDIxOTk3LCAyMjAwMSwgCi0gICAgMjIwMDQsIDIyMDA4LCAyMjAxMiwgMjIwMTYsIDIyMDIwLCAyMjAyNCwgMjIwMjgsIDIyMDMyLCAyMjAzNiwgMjIwNDAsIAotICAgIDIyMDQ0LCAyMjA0OCwgMjIwNTIsIDIyMDU2LCAyMjA2MCwgMjIwNjMsIDIyMDY3LCAyMjA3MSwgMjIwNzUsIDIyMDc5LCAKLSAgICAyMjA4MywgMjIwODcsIDIyMDkxLCAyMjA5NSwgMjIwOTksIDIyMTAzLCAyMjEwNywgMjIxMTEsIDIyMTE1LCAyMjExOSwgCi0gICAgMjIxMjMsIDIyMTI3LCAyMjEzMSwgMjIxMzUsIDIyMTM5LCAyMjE0MywgMjIxNDcsIDIyMTUxLCAyMjE1NSwgMjIxNTksIAotICAgIDIyMTYzLCAyMjE2NywgMjIxNzEsIDIyMTc1LCAyMjE3OSwgMjIxODMsIDIyMTg3LCAyMjE5MSwgMjIxOTUsIDIyMTk4LCAKLSAgICAyMjIwMiwgMjIyMDYsIDIyMjEwLCAyMjIxNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjIyMTgsIAotICAgIDIyMjIyLCAyMjIyNSwgMjIyMjksIDIyMjMyLCAyMjIzNiwgMjIyMzksIDIyMjQzLCAyMjI0OSwgMjIyNTQsIDIyMjU4LCAKLSAgICAyMjI2MSwgMjIyNjUsIDIyMjY5LCAyMjI3NCwgMjIyNzgsIDIyMjgzLCAyMjI4NywgMjIyOTIsIDIyMjk2LCAyMjMwMSwgCi0gICAgMjIzMDUsIDIyMzEwLCAyMjMxNiwgMjIzMjAsIDIyMzI1LCAyMjMyOSwgMjIzMzQsIDIyMzQwLCAyMjM0NCwgMjIzNTAsIAotICAgIDIyMzU2LCAyMjM2MCwgMjIzNjUsIDIyMzczLCAyMjM4MSwgMjIzODgsIDIyMzkzLCAyMjM5OCwgMjI0MDcsIDIyNDE0LCAKLSAgICAyMjQyMSwgMjI0MjYsIDIyNDMyLCAyMjQzNiwgMjI0NDAsIDIyNDQ0LCAyMjQ0OCwgMjI0NTIsIDIyNDU2LCAyMjQ2MCwgCi0gICAgMjI0NjQsIDIyNDY4LCAyMjQ3MiwgMjI0NzgsIDIyNDgzLCAyMjQ4OCwgMjI0OTEsIDIyNDk1LCAyMjQ5OSwgMjI1MDQsIAotICAgIDIyNTA4LCAyMjUxMywgMjI1MTcsIDIyNTIyLCAyMjUyNiwgMjI1MzEsIDIyNTM1LCAyMjU0MCwgMjI1NDQsIDIyNTQ5LCAKLSAgICAyMjU1MywgMjI1NTgsIDIyNTY0LCAyMjU2OCwgMjI1NzMsIDIyNTc4LCAyMjU4MiwgMjI1ODYsIDIyNTkwLCAyMjU5NCwgCi0gICAgMjI1OTcsIDIyNjAxLCAyMjYwNywgMjI2MTIsIDIyNjE3LCAyMjYyMSwgMjI2MjUsIDIyNjI5LCAyMjYzNCwgMjI2MzgsIAotICAgIDIyNjQzLCAyMjY0NywgMjI2NTIsIDIyNjU1LCAyMjY1OSwgMjI2NjMsIDIyNjY4LCAyMjY3MiwgMjI2NzcsIDIyNjgxLCAKLSAgICAyMjY4NiwgMjI2OTIsIDIyNjk2LCAyMjcwMCwgMjI3MDQsIDIyNzA4LCAyMjcxMiwgMjI3MTYsIDIyNzIwLCAyMjcyNCwgCi0gICAgMjI3MjgsIDIyNzMyLCAyMjczNiwgMjI3NDIsIDIyNzQ1LCAyMjc0OSwgMjI3NTMsIDIyNzU4LCAyMjc2MiwgMjI3NjcsIAotICAgIDIyNzcxLCAyMjc3NiwgMjI3ODAsIDIyNzg1LCAyMjc4OSwgMjI3OTQsIDIyNzk4LCAyMjgwMywgMjI4MDcsIDIyODEyLCAKLSAgICAyMjgxOCwgMjI4MjIsIDIyODI2LCAyMjgzMiwgMjI4MzgsIDIyODQ0LCAyMjg1MCwgMjI4NTQsIDIyODU4LCAyMjg2MiwgCi0gICAgMjI4NjYsIDIyODcwLCAyMjg3NCwgMjI4ODAsIDIyODg0LCAyMjg4OCwgMjI4OTIsIDIyODk3LCAyMjkwMSwgMjI5MDYsIAotICAgIDIyOTEwLCAyMjkxNSwgMjI5MTksIDIyOTI0LCAyMjkyOCwgMjI5MzMsIDIyOTM3LCAyMjk0MiwgMjI5NDYsIDIyOTUxLCAKLSAgICAyMjk1NywgMjI5NjEsIDIyOTY3LCAyMjk3MSwgMjI5NzUsIDIyOTc5LCAyMjk4MywgMjI5ODcsIDIyOTkxLCAyMjk5NywgCi0gICAgMjMwMDAsIDIzMDA0LCAyMzAwOCwgMjMwMTMsIDIzMDE3LCAyMzAyMiwgMjMwMjYsIDIzMDMxLCAyMzAzNSwgMjMwNDAsIAotICAgIDIzMDQ0LCAyMzA0OSwgMjMwNTMsIDIzMDU4LCAyMzA2MiwgMjMwNjcsIDIzMDczLCAyMzA3NiwgMjMwODAsIDIzMDg0LCAKLSAgICAyMzA4OSwgMjMwOTQsIDIzMDk4LCAyMzEwMiwgMjMxMDYsIDIzMTEwLCAyMzExNCwgMjMxMTgsIDIzMTI0LCAyMzEyNywgCi0gICAgMjMxMzEsIDIzMTM1LCAyMzE0MCwgMjMxNDQsIDIzMTQ5LCAyMzE1MywgMjMxNTgsIDIzMTY0LCAyMzE2NywgMjMxNzIsIAotICAgIDIzMTc2LCAyMzE4MCwgMjMxODQsIDIzMTg4LCAyMzE5MiwgMjMxOTYsIDIzMjAwLCAyMzIwNiwgMjMyMTAsIDIzMjE0LCAKLSAgICAyMzIxOCwgMjMyMjMsIDIzMjI3LCAyMzIzMiwgMjMyMzYsIDIzMjQxLCAyMzI0NSwgMjMyNTAsIDIzMjU0LCAyMzI1OSwgCi0gICAgMjMyNjMsIDIzMjY4LCAyMzI3MiwgMjMyNzcsIDIzMjgwLCAyMzI4NCwgMjMyODgsIDIzMjkyLCAyMzI5NiwgMjMzMDAsIAotICAgIDIzMzA0LCAyMzMwOCwgMjMzMTIsIDIzMzE4LCAyMzMyMiwgMjMzMjYsIDIzMzMwLCAyMzMzNSwgMjMzMzksIDIzMzQ0LCAKLSAgICAyMzM0OCwgMjMzNTMsIDIzMzU3LCAyMzM2MiwgMjMzNjYsIDIzMzcxLCAyMzM3NSwgMjMzODAsIDIzMzg0LCAyMzM4OSwgCi0gICAgMjMzOTUsIDIzMzk4LCAyMzQwMywgMjM0MDcsIDIzNDEyLCAyMzQxOCwgMjM0MjQsIDIzNDMwLCAyMzQzNiwgMjM0NDIsIAotICAgIDIzNDQ4LCAyMzQ1NCwgMjM0NTgsIDIzNDYyLCAyMzQ2NiwgMjM0NzAsIDIzNDc0LCAyMzQ3OCwgMjM0ODIsIDIzNDg2LCAKLSAgICAyMzQ5MSwgMjM0OTUsIDIzNTAwLCAyMzUwNCwgMjM1MDksIDIzNTEzLCAyMzUxOCwgMjM1MjIsIDIzNTI3LCAyMzUzMSwgCi0gICAgMjM1MzYsIDIzNTQwLCAyMzU0NSwgMjM1NDksIDIzNTUzLCAyMzU1NywgMjM1NjEsIDIzNTY1LCAyMzU2OSwgMjM1NzMsIAotICAgIDIzNTc5LCAyMzU4MiwgMjM1ODYsIDIzNTkwLCAyMzU5NSwgMjM1OTksIDIzNjA0LCAyMzYwOCwgMjM2MTMsIDIzNjE3LCAKLSAgICAyMzYyMiwgMjM2MjYsIDIzNjMxLCAyMzYzNSwgMjM2NDAsIDIzNjQ0LCAyMzY0OSwgMjM2NTUsIDIzNjU5LCAyMzY2NSwgCi0gICAgMjM2NzAsIDIzNjc2LCAyMzY4MCwgMjM2ODYsIDIzNjkxLCAyMzY5NSwgMjM2OTksIDIzNzAzLCAyMzcwNywgMjM3MTEsIAotICAgIDIzNzE2LCAyMzcxOSwgMjM3MjMsIDIzNzI4LCAyMzczMiwgMjM3MzcsIDIzNzQwLCAyMzc0NCwgMjM3NDgsIDIzNzUyLCAKLSAgICAyMzc1NiwgMjM3NjAsIDIzNzY0LCAyMzc2OCwgMjM3NzIsIDIzNzc2LCAyMzc4MCwgMjM3ODQsIDIzNzg5LCAyMzc5MywgCi0gICAgMjM3OTcsIDIzODAzLCAyMzgwNywgMjM4MTMsIDIzODE3LCAyMzgyMywgMjM4MjcsIDIzODMxLCAyMzgzNSwgMjM4MzksIAotICAgIDIzODQzLCAyMzg0OCwgMjM4NTIsIDIzODU2LCAyMzg2MCwgMjM4NjQsIDIzODY4LCAyMzg3MiwgMjM4NzYsIDIzODgwLCAKLSAgICAyMzg4NCwgMjM4ODgsIDIzODk0LCAyMzkwMCwgMjM5MDYsIDIzOTEyLCAyMzkxOCwgMjM5MjMsIDIzOTI5LCAyMzkzNSwgCi0gICAgMjM5NDEsIDIzOTQ1LCAyMzk0OSwgMjM5NTMsIDIzOTU3LCAyMzk2MSwgMjM5NjUsIDIzOTY5LCAyMzk3MywgMjM5NzcsIAotICAgIDIzOTgxLCAyMzk4NSwgMjM5ODksIDIzOTkzLCAyMzk5OCwgMjQwMDMsIDI0MDA4LCAyNDAxMiwgMjQwMTYsIDI0MDIwLCAKLSAgICAyNDAyNCwgMjQwMjgsIDI0MDMyLCAyNDAzNiwgMjQwNDAsIDI0MDQ0LCAyNDA0OCwgMjQwNTQsIDI0MDYwLCAyNDA2NiwgCi0gICAgMjQwNzIsIDI0MDc4LCAyNDA4NCwgMjQwOTAsIDI0MDk2LCAyNDEwMiwgMjQxMDYsIDI0MTEwLCAyNDExNCwgMjQxMTgsIAotICAgIDI0MTIyLCAyNDEyNiwgMjQxMzAsIDI0MTM2LCAyNDE0MiwgMjQxNDgsIDI0MTU0LCAyNDE2MCwgMjQxNjYsIDI0MTcyLCAKLSAgICAyNDE3OCwgMjQxODQsIDI0MTg5LCAyNDE5NCwgMjQxOTksIDI0MjA0LCAyNDIxMCwgMjQyMTYsIDI0MjIyLCAyNDIyOCwgCi0gICAgMjQyMzQsIDI0MjQwLCAyNDI0NiwgMjQyNTEsIDI0MjU3LCAyNDI2MywgMjQyNjksIDI0Mjc0LCAyNDI4MCwgMjQyODYsIAotICAgIDI0MjkyLCAyNDI5NywgMjQzMDIsIDI0MzA3LCAyNDMxMiwgMjQzMTcsIDI0MzIyLCAyNDMyNywgMjQzMzIsIDI0MzM3LCAKLSAgICAyNDM0MiwgMjQzNDcsIDI0MzUyLCAyNDM1NiwgMjQzNjEsIDI0MzY2LCAyNDM3MSwgMjQzNzYsIDI0MzgxLCAyNDM4NiwgCi0gICAgMjQzOTEsIDI0Mzk2LCAyNDQwMSwgMjQ0MDYsIDI0NDExLCAyNDQxNiwgMjQ0MjEsIDI0NDI2LCAyNDQzMSwgMjQ0MzYsIAotICAgIDI0NDQxLCAyNDQ0NiwgMjQ0NTEsIDI0NDU2LCAyNDQ2MSwgMjQ0NjYsIDI0NDcxLCAyNDQ3NiwgMjQ0ODEsIDI0NDg2LCAKLSAgICAyNDQ5MSwgMjQ0OTYsIDI0NTAxLCAyNDUwNSwgMjQ1MTAsIDI0NTE1LCAyNDUyMCwgMjQ1MjUsIDI0NTMwLCAyNDUzNSwgCi0gICAgMjQ1NDAsIDI0NTQ1LCAyNDU1MCwgMjQ1NTUsIDI0NTYwLCAyNDU2NSwgMjQ1NzAsIDI0NTc1LCAyNDU4MCwgMjQ1ODUsIAotICAgIDI0NTkwLCAyNDU5NSwgMjQ2MDAsIDI0NjA1LCAyNDYxMCwgMjQ2MTUsIDI0NjIwLCAyNDYyNSwgMjQ2MzAsIDI0NjM0LCAKLSAgICAyNDYzOSwgMjQ2NDQsIDI0NjQ5LCAyNDY1NCwgMjQ2NTksIDI0NjYzLCAyNDY2OCwgMjQ2NzMsIDI0Njc4LCAyNDY4MywgCi0gICAgMjQ2ODgsIDI0NjkyLCAyNDY5NywgMjQ3MDMsIDI0NzA4LCAyNDcxMywgMjQ3MTgsIDI0NzIzLCAyNDcyOSwgMjQ3MzQsIAotICAgIDI0NzM5LCAyNDc0NCwgMjQ3NDksIDI0NzU0LCAyNDc1OSwgMjQ3NjQsIDI0NzY5LCAyNDc3NCwgMjQ3NzksIDI0Nzg0LCAKLSAgICAyNDc4OSwgMjQ3OTQsIDI0Nzk5LCAyNDgwNCwgMjQ4MDksIDI0ODE0LCAyNDgxOSwgMjQ4MjQsIDI0ODI5LCAyNDgzNCwgCi0gICAgMjQ4MzksIDI0ODQ0LCAyNDg0OSwgMjQ4NTQsIDI0ODU5LCAyNDg2NCwgMjQ4NjksIDI0ODc0LCAyNDg3OSwgMjQ4ODQsIAotICAgIDI0ODg5LCAyNDg5NCwgMjQ4OTksIDI0OTA0LCAyNDkwOSwgMjQ5MTQsIDI0OTE5LCAyNDkyNCwgMjQ5MjksIDI0OTM0LCAKLSAgICAyNDkzOSwgMjQ5NDQsIDI0OTQ5LCAyNDk1NSwgMjQ5NjAsIDI0OTY1LCAyNDk3MCwgMjQ5NzUsIDI0OTgwLCAyNDk4NSwgCi0gICAgMjQ5OTAsIDI0OTk1LCAyNTAwMCwgMjUwMDUsIDI1MDEwLCAyNTAxNSwgMjUwMjAsIDI1MDI1LCAyNTAzMCwgMjUwMzUsIAotICAgIDI1MDQwLCAyNTA0NSwgMjUwNTAsIDI1MDU1LCAyNTA2MCwgMjUwNjUsIDI1MDcwLCAyNTA3NSwgMjUwODAsIDI1MDg1LCAKLSAgICAyNTA5MCwgMjUwOTUsIDI1MTAwLCAyNTEwNSwgMjUxMTAsIDI1MTE1LCAyNTEyMCwgMjUxMjUsIDI1MTMwLCAyNTEzNSwgCi0gICAgMjUxNDAsIDI1MTQ1LCAyNTE1MSwgMjUxNTUsIDI1MTU5LCAyNTE2MywgMjUxNjcsIDI1MTcxLCAyNTE3NSwgMjUxNzksIAotICAgIDI1MTgzLCAyNTE4OSwgMjUxOTUsIDI1MjAxLCAyNTIwNywgMjUyMTMsIDI1MjE5LCAyNTIyNSwgMjUyMzIsIDI1MjM4LCAKLSAgICAyNTI0MywgMjUyNDgsIDI1MjUzLCAyNTI1OCwgMjUyNjMsIDI1MjY4LCAyNTI3MywgMjUyNzgsIDI1MjgzLCAyNTI4OCwgCi0gICAgMjUyOTMsIDI1Mjk4LCAyNTMwMywgMjUzMDgsIDI1MzEzLCAyNTMxOCwgMjUzMjMsIDI1MzI4LCAyNTMzMywgMjUzMzgsIAotICAgIDI1MzQzLCAyNTM0OCwgMjUzNTMsIDI1MzU4LCAyNTM2MywgMjUzNjgsIDI1MzczLCAyNTM3OCwgMCwgMCwgMCwgMjUzODUsIAotICAgIDI1Mzk1LCAyNTM5OSwgMjU0MDYsIDI1NDEwLCAyNTQxNCwgMjU0MTgsIDI1NDI2LCAyNTQzMCwgMjU0MzUsIDI1NDQwLCAKLSAgICAyNTQ0NSwgMjU0NDksIDI1NDU0LCAyNTQ1OSwgMjU0NjIsIDI1NDY2LCAyNTQ3MCwgMjU0NzksIDI1NDgzLCAyNTQ4NywgCi0gICAgMjU0OTMsIDI1NDk3LCAyNTUwMSwgMjU1MDksIDI1NTEzLCAyNTUyMSwgMjU1MjcsIDI1NTMzLCAyNTUzOSwgMjU1NDUsIAotICAgIDI1NTU0LCAyNTU1OSwgMjU1NjMsIDI1NTcyLCAyNTU3NSwgMjU1ODEsIDI1NTg1LCAyNTU5MSwgMjU1OTYsIDI1NjAyLCAKLSAgICAyNTYxMCwgMjU2MTYsIDI1NjIxLCAyNTYyOCwgMjU2MzMsIDI1NjM3LCAyNTY0MSwgMjU2NTEsIDI1NjU3LCAyNTY2MSwgCi0gICAgMjU2NzEsIDI1Njc3LCAyNTY4MSwgMjU2ODUsIDI1NjkyLCAyNTY5OSwgMjU3MDQsIDI1NzA5LCAyNTcxOCwgMjU3MjIsIAotICAgIDI1NzI2LCAyNTczMCwgMjU3MzgsIDI1NzQ1LCAyNTc0OSwgMjU3NTMsIDI1NzU3LCAyNTc2MSwgMjU3NjUsIDI1NzY5LCAKLSAgICAyNTc3MywgMjU3NzcsIDI1NzgxLCAyNTc4NSwgMjU3ODksIDI1Nzk0LCAyNTc5OSwgMjU4MDQsIDI1ODA4LCAyNTgxMiwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjU4MTYsIDI1ODIwLCAyNTgyNCwgMjU4MjgsIAotICAgIDI1ODMyLCAyNTgzNywgMjU4NDIsIDI1ODQ3LCAyNTg1MiwgMjU4NTYsIDI1ODYwLCAyNTg2NSwgMjU4NjksIDAsIDI1ODczLCAKLSAgICAyNTg3OCwgMjU4ODMsIDI1ODg4LCAyNTg5MiwgMjU4OTcsIDI1OTAyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAyNTkwNywgMjU5MTEsIDI1OTE1LCAyNTkxOSwgMjU5MjMsIDI1OTI4LCAyNTkzMywgMjU5MzgsIDI1OTQzLCAyNTk0NywgCi0gICAgMjU5NTEsIDI1OTU2LCAyNTk2MCwgMjU5NjQsIDI1OTY4LCAyNTk3MywgMjU5NzgsIDI1OTgzLCAyNTk4NywgMjU5OTIsIAotICAgIDI1OTk3LCAyNjAwMiwgMjYwMDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI2MDEzLCAyNjAxNywgMjYwMjEsIAotICAgIDI2MDI1LCAyNjAyOSwgMjYwMzQsIDI2MDM5LCAyNjA0NCwgMjYwNDksIDI2MDUzLCAyNjA1NywgMjYwNjIsIDI2MDY2LCAKLSAgICAyNjA3MCwgMjYwNzQsIDI2MDc5LCAyNjA4NCwgMjYwODksIDI2MDkzLCAyNjA5OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMjYxMDMsIDI2MTA3LCAyNjExMSwgMjYxMTUsIDI2MTE5LCAyNjEyNCwgMjYxMjksIDI2MTM0LCAKLSAgICAyNjEzOSwgMjYxNDMsIDI2MTQ3LCAyNjE1MiwgMjYxNTYsIDAsIDI2MTYwLCAyNjE2NSwgMjYxNzAsIDAsIDI2MTc1LCAKLSAgICAyNjE4MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjYxODUsIDI2MTg4LCAyNjE5MiwgMjYxOTYsIAotICAgIDI2MjAwLCAyNjIwNCwgMjYyMDgsIDI2MjEyLCAyNjIxNiwgMjYyMjAsIDI2MjI0LCAyNjIyOCwgMjYyMzIsIDI2MjM2LCAKLSAgICAyNjI0MCwgMjYyNDQsIDI2MjQ4LCAyNjI1MiwgMjYyNTUsIDI2MjU5LCAyNjI2MywgMjYyNjcsIDI2MjcxLCAyNjI3NSwgCi0gICAgMjYyNzksIDI2MjgzLCAyNjI4NywgMjYyOTEsIDI2Mjk1LCAyNjI5OSwgMjYzMDMsIDI2MzA3LCAyNjMxMSwgMjYzMTQsIAotICAgIDI2MzE4LCAyNjMyMiwgMjYzMjgsIDI2MzM0LCAyNjM0MCwgMjYzNDYsIDI2MzUyLCAyNjM1OCwgMjYzNjQsIDI2MzcwLCAKLSAgICAyNjM3NiwgMjYzODIsIDI2Mzg4LCAyNjM5NCwgMjY0MDAsIDI2NDA2LCAyNjQxNSwgMjY0MjQsIDI2NDMwLCAyNjQzNiwgCi0gICAgMjY0NDIsIDI2NDQ3LCAyNjQ1MSwgMjY0NTYsIDI2NDYxLCAyNjQ2NiwgMjY0NzAsIDI2NDc1LCAyNjQ4MCwgMjY0ODUsIAotICAgIDI2NDg5LCAyNjQ5NCwgMjY0OTgsIDI2NTAzLCAyNjUwOCwgMjY1MTMsIDI2NTE4LCAyNjUyMiwgMjY1MjYsIDI2NTMwLCAKLSAgICAyNjUzNCwgMjY1MzgsIDI2NTQyLCAyNjU0NiwgMjY1NTAsIDI2NTU0LCAyNjU1OCwgMjY1NjQsIDI2NTY4LCAyNjU3MiwgCi0gICAgMjY1NzYsIDI2NTgwLCAyNjU4NCwgMjY1OTIsIDI2NTk4LCAyNjYwMiwgMjY2MDgsIDI2NjEyLCAyNjYxOCwgMjY2MjIsIDAsIAotICAgIDAsIDI2NjI2LCAyNjYzMCwgMjY2MzMsIDI2NjM2LCAyNjYzOSwgMjY2NDIsIDI2NjQ1LCAyNjY0OCwgMjY2NTEsIDI2NjU0LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAyNjY1NywgMjY2NjUsIDI2NjczLCAyNjY4MSwgMjY2ODksIDI2Njk3LCAyNjcwNSwgMjY3MTMsIAotICAgIDI2NzIxLCAyNjcyOSwgMCwgMCwgMCwgMCwgMCwgMCwgMjY3MzcsIDI2NzQwLCAyNjc0MywgMjY3NDYsIDI2NzUxLCAyNjc1NCwgCi0gICAgMjY3NTksIDI2NzY2LCAyNjc3NCwgMjY3NzksIDI2Nzg2LCAyNjc4OSwgMjY3OTYsIDI2ODAzLCAyNjgxMCwgMCwgMjY4MTQsIAotICAgIDI2ODE4LCAyNjgyMSwgMjY4MjQsIDI2ODI3LCAyNjgzMCwgMjY4MzMsIDI2ODM2LCAyNjgzOSwgMjY4NDIsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDI2ODQ1LCAyNjg0OCwgMjY4NTEsIDI2ODU0LCAyNjg1NywgMjY4NjAsIDI2ODY0LCAyNjg2OCwgMjY4NzIsIAotICAgIDI2ODc1LCAyNjg3OSwgMjY4ODMsIDI2ODg2LCAyNjg5MCwgMjY4OTQsIDI2ODk3LCAyNjkwMSwgMjY5MDUsIDI2OTA5LCAKLSAgICAyNjkxMywgMjY5MTcsIDI2OTIxLCAyNjkyNSwgMjY5MjgsIDI2OTMxLCAyNjkzNSwgMjY5MzksIDI2OTQyLCAyNjk0NiwgCi0gICAgMjY5NTAsIDI2OTU0LCAyNjk1OCwgMjY5NjIsIDI2OTY2LCAyNjk3MCwgMjY5NzQsIDI2OTgxLCAyNjk4NiwgMjY5OTEsIAotICAgIDI2OTk2LCAyNzAwMSwgMjcwMDcsIDI3MDEzLCAyNzAxOSwgMjcwMjUsIDI3MDMwLCAyNzAzNiwgMjcwNDIsIDI3MDQ3LCAKLSAgICAyNzA1MywgMjcwNTksIDI3MDY1LCAyNzA3MSwgMjcwNzcsIDI3MDgyLCAyNzA4OCwgMjcwOTMsIDI3MDk5LCAyNzEwNSwgCi0gICAgMjcxMTEsIDI3MTE3LCAyNzEyMywgMjcxMjgsIDI3MTMzLCAyNzEzOSwgMjcxNDUsIDI3MTUwLCAyNzE1NiwgMjcxNjEsIAotICAgIDI3MTY3LCAyNzE3MiwgMjcxNzcsIDI3MTgzLCAyNzE4OSwgMjcxOTUsIDI3MjAxLCAyNzIwNywgMjcyMTMsIDI3MjE5LCAKLSAgICAyNzIyNSwgMjcyMzEsIDI3MjM3LCAyNzI0MywgMjcyNDksIDI3MjU0LCAyNzI1OSwgMjcyNjQsIDI3MjcwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAyNzI3NiwgMjcyODUsIDI3Mjk0LCAyNzMwMiwgMjczMTAsIDI3MzIwLCAyNzMyOCwgMjczMzcsIAotICAgIDI3MzQ0LCAyNzM1MSwgMjczNTgsIDI3MzY2LCAyNzM3NCwgMjczODIsIDI3MzkwLCAyNzM5OCwgMjc0MDYsIDI3NDE0LCAKLSAgICAyNzQyMiwgMjc0MjksIDI3NDM3LCAyNzQ0NSwgMjc0NTMsIDI3NDYxLCAyNzQ2OSwgMjc0NzksIDI3NDg5LCAyNzQ5OSwgCi0gICAgMjc1MDksIDI3NTE5LCAyNzUyOSwgMjc1MzksIDI3NTQ5LCAyNzU1OSwgMjc1NjksIDI3NTc5LCAyNzU4OSwgMjc1OTksIAotICAgIDI3NjA5LCAyNzYxNywgMjc2MjUsIDI3NjM1LCAyNzY0MywgMCwgMCwgMCwgMCwgMCwgMjc2NTMsIDI3NjU3LCAyNzY2MSwgCi0gICAgMjc2NjUsIDI3NjY5LCAyNzY3MywgMjc2NzcsIDI3NjgxLCAyNzY4NSwgMjc2ODksIDI3NjkzLCAyNzY5NywgMjc3MDEsIAotICAgIDI3NzA1LCAyNzcwOSwgMjc3MTMsIDI3NzE3LCAyNzcyMSwgMjc3MjUsIDI3NzI5LCAyNzczMywgMjc3MzcsIDI3NzQxLCAKLSAgICAyNzc0NSwgMjc3NTEsIDI3NzU1LCAyNzc2MSwgMjc3NjUsIDI3NzcxLCAyNzc3NSwgMjc3ODEsIDI3Nzg1LCAyNzc4OSwgCi0gICAgMjc3OTMsIDI3Nzk3LCAyNzgwMSwgMjc4MDUsIDI3ODExLCAyNzgxNywgMjc4MjMsIDI3ODI5LCAyNzgzNCwgMjc4MzksIAotICAgIDI3ODQ0LCAyNzg1MCwgMjc4NTYsIDI3ODYyLCAyNzg2OCwgMjc4NzUsIDI3ODgxLCAyNzg4NiwgMjc4OTEsIDI3ODk1LCAKLSAgICAyNzg5OSwgMjc5MDMsIDI3OTA3LCAyNzkxMSwgMjc5MTUsIDI3OTE5LCAyNzkyNSwgMjc5MzEsIDI3OTM3LCAyNzk0MiwgCi0gICAgMjc5NDksIDI3OTU0LCAyNzk1OSwgMjc5NjUsIDI3OTcwLCAyNzk3NywgMjc5ODQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDI3OTkwLCAyNzk5NSwgMjc5OTgsIDI4MDAyLCAyODAwNiwgMjgwMTAsIDI4MDE0LCAyODAxOCwgMjgwMjIsIAotICAgIDI4MDI2LCAyODAzMCwgMjgwMzQsIDI4MDM4LCAyODA0MiwgMjgwNDYsIDI4MDUwLCAyODA1MywgMjgwNTYsIDI4MDYwLCAKLSAgICAyODA2NCwgMjgwNjgsIDI4MDcxLCAyODA3NCwgMjgwNzcsIDI4MDgxLCAyODA4NSwgMjgwODksIDI4MDkzLCAyODA5NywgMCwgCi0gICAgMCwgMCwgMjgxMDAsIDI4MTA0LCAyODEwOCwgMjgxMTIsIDI4MTE3LCAyODEyMiwgMjgxMjcsIDI4MTMyLCAyODEzNiwgCi0gICAgMjgxNDAsIDI4MTQ1LCAyODE1MCwgMCwgMCwgMCwgMCwgMjgxNTYsIDI4MTYwLCAyODE2NSwgMjgxNzAsIDI4MTc1LCAKLSAgICAyODE3OSwgMjgxODMsIDI4MTg3LCAyODE5MSwgMjgxOTYsIDI4MjAwLCAyODIwNCwgMCwgMCwgMCwgMCwgMjgyMDgsIDAsIDAsIAotICAgIDAsIDI4MjEyLCAyODIxNiwgMjgyMjAsIDI4MjI0LCAyODIyNywgMjgyMzAsIDI4MjMzLCAyODIzNiwgMjgyMzksIDI4MjQyLCAKLSAgICAyODI0NSwgMjgyNDgsIDI4MjUxLCAyODI1NiwgMjgyNjIsIDI4MjY4LCAyODI3NCwgMjgyODAsIDI4Mjg1LCAyODI5MSwgCi0gICAgMjgyOTcsIDI4MzAzLCAyODMwOCwgMjgzMTQsIDI4MzE5LCAyODMyNSwgMjgzMzEsIDI4MzM2LCAyODM0MiwgMjgzNDgsIAotICAgIDI4MzU0LCAyODM1OSwgMjgzNjQsIDI4MzY5LCAyODM3NSwgMjgzODEsIDI4Mzg2LCAyODM5MiwgMjgzOTcsIDI4NDAzLCAKLSAgICAyODQwOCwgMjg0MTQsIDAsIDAsIDI4NDIwLCAyODQyNiwgMjg0MzIsIDI4NDM4LCAyODQ0NCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMjg0NTAsIDI4NDU3LCAyODQ2NCwgMjg0NzAsIDI4NDc3LCAyODQ4NCwgMjg0OTAsIDI4NDk3LCAKLSAgICAyODUwNCwgMjg1MTEsIDI4NTE4LCAyODUyNCwgMjg1MzEsIDI4NTM4LCAyODU0NCwgMjg1NTEsIDI4NTU4LCAyODU2NCwgCi0gICAgMjg1NzEsIDI4NTc4LCAyODU4NCwgMjg1OTAsIDI4NTk3LCAyODYwMywgMjg2MDksIDI4NjE2LCAyODYyMiwgMjg2MjksIAotICAgIDI4NjM2LCAyODY0MywgMjg2NTAsIDI4NjU3LCAyODY2NCwgMjg2NzAsIDI4Njc3LCAyODY4NCwgMjg2OTAsIDI4Njk3LCAKLSAgICAyODcwNCwgMjg3MTEsIDI4NzE4LCAyODcyNSwgMjg3MzIsIDI4NzM5LCAwLCAwLCAwLCAwLCAyODc0NiwgMjg3NTQsIAotICAgIDI4NzYxLCAyODc2OCwgMjg3NzQsIDI4NzgxLCAyODc4NywgMjg3OTQsIDI4ODAwLCAyODgwNywgMjg4MTQsIDI4ODIxLCAKLSAgICAyODgyOCwgMjg4MzUsIDI4ODQyLCAyODg0OSwgMjg4NTYsIDI4ODYzLCAyODg3MCwgMjg4NzcsIDI4ODgzLCAyODg4OSwgCi0gICAgMjg4OTYsIDI4OTAzLCAyODkxMCwgMjg5MTYsIDAsIDAsIDAsIDAsIDAsIDAsIDI4OTIyLCAyODkyOCwgMjg5MzMsIDI4OTM4LCAKLSAgICAyODk0MywgMjg5NDgsIDI4OTUzLCAyODk1OCwgMjg5NjMsIDI4OTY4LCAyODk3MywgMCwgMCwgMCwgMjg5NzksIDI4OTg1LCAKLSAgICAyODk5MSwgMjg5OTUsIDI5MDAxLCAyOTAwNywgMjkwMTMsIDI5MDE5LCAyOTAyNSwgMjkwMzEsIDI5MDM3LCAyOTA0MywgCi0gICAgMjkwNDksIDI5MDU1LCAyOTA2MSwgMjkwNjcsIDI5MDczLCAyOTA3OSwgMjkwODUsIDI5MDg5LCAyOTA5NSwgMjkxMDEsIAotICAgIDI5MTA3LCAyOTExMywgMjkxMTksIDI5MTI1LCAyOTEzMSwgMjkxMzcsIDI5MTQzLCAyOTE0OSwgMjkxNTUsIDI5MTYxLCAKLSAgICAyOTE2NywgMjkxNzMsIDI5MTc5LCAyOTE4MywgMjkxODgsIDI5MTkzLCAyOTE5OCwgMjkyMDIsIDI5MjA3LCAyOTIxMSwgCi0gICAgMjkyMTYsIDI5MjIxLCAyOTIyNiwgMjkyMzAsIDI5MjM1LCAyOTI0MCwgMjkyNDUsIDI5MjUwLCAyOTI1NSwgMjkyNTksIAotICAgIDI5MjYzLCAyOTI2OCwgMjkyNzMsIDI5Mjc4LCAyOTI4MiwgMjkyODYsIDI5MjkxLCAyOTI5NiwgMjkzMDEsIDI5MzA2LCAwLCAKLSAgICAwLCAyOTMxMiwgMjkzMTYsIDI5MzIzLCAyOTMyOCwgMjkzMzQsIDI5MzQwLCAyOTM0NSwgMjkzNTEsIDI5MzU3LCAyOTM2MiwgCi0gICAgMjkzNjgsIDI5Mzc0LCAyOTM4MCwgMjkzODYsIDI5MzkyLCAyOTM5NywgMjk0MDIsIDI5NDA4LCAyOTQxMywgMjk0MTksIAotICAgIDI5NDI0LCAyOTQzMCwgMjk0MzYsIDI5NDQyLCAyOTQ0OCwgMjk0NTIsIDI5NDU3LCAyOTQ2MiwgMjk0NjgsIDI5NDc0LCAKLSAgICAyOTQ3OSwgMjk0ODUsIDI5NDkxLCAyOTQ5NSwgMjk1MDAsIDI5NTA1LCAyOTUwOSwgMjk1MTQsIDI5NTE5LCAyOTUyNCwgCi0gICAgMjk1MjksIDI5NTM1LCAyOTU0MSwgMjk1NDcsIDI5NTUyLCAyOTU1NywgMjk1NjEsIDI5NTY2LCAyOTU3MCwgMjk1NzUsIAotICAgIDI5NTc5LCAyOTU4NCwgMjk1ODksIDI5NTk0LCAyOTU5OSwgMjk2MDYsIDI5NjEzLCAyOTYyMSwgMjk2MzIsIDI5NjQxLCAKLSAgICAyOTY0OSwgMjk2NTYsIDI5NjY3LCAyOTY3MywgMjk2ODAsIDAsIDI5Njg3LCAyOTY5MiwgMjk2OTcsIDI5NzA1LCAyOTcxMSwgCi0gICAgMjk3MTksIDI5NzI0LCAyOTczMCwgMjk3MzYsIDI5NzQyLCAyOTc0NywgMjk3NTMsIDI5NzU4LCAyOTc2NSwgMjk3NzEsIAotICAgIDI5Nzc2LCAyOTc4MiwgMjk3ODgsIDI5Nzk0LCAyOTgwMSwgMjk4MDgsIDI5ODE1LCAyOTgyMCwgMjk4MjUsIDI5ODMyLCAKLSAgICAyOTgzOSwgMjk4NDYsIDI5ODUzLCAyOTg2MCwgMCwgMCwgMjk4NjcsIDI5ODc0LCAyOTg4MSwgMjk4ODcsIDI5ODkzLCAKLSAgICAyOTg5OSwgMjk5MDUsIDI5OTExLCAyOTkxNywgMjk5MjMsIDI5OTI5LCAwLCAwLCAwLCAwLCAwLCAwLCAyOTkzNSwgMjk5NDEsIAotICAgIDI5OTQ2LCAyOTk1MSwgMjk5NTYsIDI5OTYxLCAyOTk2NiwgMjk5NzEsIDI5OTc2LCAyOTk4MSwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMjk5ODYsIDI5OTkxLCAyOTk5NiwgMzAwMDEsIDMwMDA2LCAzMDAxMSwgMzAwMTYsIDMwMDI1LCAzMDAzMiwgMzAwMzcsIAotICAgIDMwMDQyLCAzMDA0NywgMzAwNTIsIDMwMDU3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMDA2MiwgMzAwNjgsIAotICAgIDMwMDc0LCAzMDA3OCwgMzAwODIsIDMwMDg2LCAzMDA5MCwgMzAwOTYsIDMwMTAwLCAzMDEwNiwgMzAxMTAsIDMwMTE2LCAKLSAgICAzMDEyMiwgMzAxMzAsIDMwMTM2LCAzMDE0NCwgMzAxNDgsIDMwMTUyLCAzMDE1NiwgMzAxNjIsIDMwMTY1LCAzMDE3MSwgCi0gICAgMzAxNzUsIDMwMTgxLCAzMDE4NSwgMzAxODksIDMwMTk1LCAzMDE5OSwgMzAyMDUsIDMwMjA5LCAzMDIxNSwgMzAyMjMsIAotICAgIDMwMjMxLCAzMDIzOSwgMzAyNDUsIDMwMjQ5LCAzMDI1NSwgMzAyNTksIDMwMjY1LCAzMDI2OCwgMzAyNzEsIDMwMjc3LCAKLSAgICAzMDI4MSwgMzAyODcsIDMwMjkwLCAzMDI5MywgMzAyOTYsIDMwMzAwLCAzMDMwNCwgMzAzMTAsIDMwMzE2LCAzMDMyMCwgCi0gICAgMzAzMjMsIDMwMzI3LCAzMDMzMiwgMzAzMzcsIDMwMzQ0LCAzMDM0OSwgMzAzNTYsIDMwMzYzLCAzMDM3MiwgMzAzNzksIAotICAgIDMwMzg4LCAzMDM5MywgMzA0MDAsIDMwNDA3LCAzMDQxNiwgMzA0MjEsIDMwNDI4LCAzMDQzMywgMzA0MzksIDMwNDQ1LCAKLSAgICAzMDQ1MSwgMzA0NTcsIDMwNDYzLCAzMDQ2OSwgMCwgMCwgMCwgMCwgMzA0NzUsIDMwNDc5LCAzMDQ4MiwgMzA0ODUsIAotICAgIDMwNDg4LCAzMDQ5MSwgMzA0OTQsIDMwNDk3LCAzMDUwMCwgMzA1MDMsIDMwNTA2LCAzMDUwOSwgMzA1MTIsIDMwNTE1LCAKLSAgICAzMDUyMCwgMzA1MjUsIDMwNTMwLCAzMDUzMywgMzA1MzgsIDMwNTQzLCAzMDU0OCwgMzA1NTMsIDMwNTYwLCAzMDU2NSwgCi0gICAgMzA1NzAsIDMwNTc1LCAzMDU4MCwgMzA1ODcsIDMwNTkzLCAzMDU5OSwgMzA2MDUsIDMwNjExLCAzMDYxNywgMzA2MjYsIAotICAgIDMwNjM1LCAzMDY0MSwgMzA2NDcsIDMwNjU2LCAzMDY2NSwgMzA2NzQsIDMwNjgzLCAzMDY5MiwgMzA3MDEsIDMwNzEwLCAKLSAgICAzMDcxOSwgMCwgMCwgMCwgMzA3MjgsIDMwNzMzLCAzMDczOCwgMzA3NDMsIDMwNzQ3LCAzMDc1MSwgMzA3NTUsIDMwNzYwLCAKLSAgICAzMDc2NCwgMzA3NjgsIDMwNzczLCAzMDc3NywgMzA3ODIsIDMwNzg3LCAzMDc5MiwgMzA3OTcsIDMwODAyLCAzMDgwNywgCi0gICAgMzA4MTIsIDMwODE3LCAzMDgyMiwgMzA4MjYsIDMwODMwLCAzMDgzNSwgMzA4NDAsIDMwODQ1LCAzMDg0OSwgMzA4NTMsIAotICAgIDMwODU3LCAzMDg2MiwgMzA4NjcsIDMwODcyLCAzMDg3NywgMzA4ODEsIDMwODg4LCAzMDg5NSwgMzA5MDIsIDMwOTA4LCAKLSAgICAzMDkxNCwgMzA5MjAsIDMwOTI2LCAzMDkzMiwgMzA5MzgsIDAsIDAsIDAsIDMwOTQzLCAzMDk0OCwgMzA5NTMsIDMwOTU4LCAKLSAgICAzMDk2MiwgMzA5NjYsIDMwOTcwLCAzMDk3NCwgMzA5NzgsIDMwOTgyLCAzMDk4NiwgMzA5OTAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDMwOTk0LCAzMDk5OCwgMzEwMDQsIDMxMDA4LCAzMTAxNCwgMzEwMjAsIDMxMDI1LCAzMTAzMiwgMzEwMzYsIDMxMDQyLCAKLSAgICAzMTA0NiwgMzEwNTIsIDMxMDU3LCAzMTA2NCwgMzEwNzEsIDMxMDc2LCAzMTA4MywgMzEwODgsIDMxMDkzLCAzMTA5NywgCi0gICAgMzExMDMsIDMxMTA3LCAzMTExMywgMzExMjAsIDMxMTI3LCAzMTEzMiwgMzExMzksIDMxMTQ2LCAzMTE1MCwgMzExNTYsIAotICAgIDMxMTYxLCAzMTE2NiwgMzExNzMsIDMxMTc4LCAzMTE4MywgMzExODgsIDMxMTkzLCAzMTE5NywgMzEyMDEsIDMxMjA2LCAKLSAgICAzMTIxMSwgMzEyMTgsIDMxMjI0LCAzMTIyOSwgMzEyMzYsIDMxMjQxLCAzMTI0OCwgMzEyNTMsIDMxMjYzLCAzMTI3MCwgCi0gICAgMzEyNzcsIDMxMjgxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMTI4NSwgMzEyOTQsIDMxMzAxLCAzMTMwOCwgMzEzMTUsIAotICAgIDMxMzE4LCAzMTMyMiwgMzEzMjYsIDMxMzMwLCAzMTMzNCwgMzEzMzgsIDMxMzQyLCAzMTM0NiwgMzEzNTAsIDMxMzU0LCAKLSAgICAzMTM1OCwgMzEzNjIsIDMxMzY2LCAzMTM2OSwgMzEzNzIsIDMxMzc2LCAzMTM4MCwgMzEzODQsIDMxMzg4LCAzMTM5MiwgCi0gICAgMzEzOTYsIDMxMzk5LCAzMTQwMywgMzE0MDcsIDMxNDExLCAzMTQxNSwgMzE0MTgsIDMxNDIxLCAzMTQyNSwgMzE0MjgsIAotICAgIDMxNDMyLCAzMTQzNiwgMzE0NDAsIDMxNDQ0LCAzMTQ0OCwgMzE0NTEsIDMxNDU2LCAzMTQ2MSwgMzE0NjYsIDMxNDcwLCAKLSAgICAzMTQ3NCwgMzE0NzksIDMxNDgzLCAzMTQ4OCwgMzE0OTIsIDMxNDk4LCAzMTUwMywgMzE1MDgsIDMxNTEzLCAzMTUxOSwgCi0gICAgMzE1MjQsIDMxNTMwLCAzMTUzNiwgMzE1NDIsIDMxNTQ2LCAwLCAwLCAwLCAzMTU1MCwgMzE1NTUsIDMxNTY0LCAzMTU2OSwgCi0gICAgMzE1NzYsIDMxNTgxLCAzMTU4NSwgMzE1ODgsIDMxNTkxLCAzMTU5NCwgMzE1OTcsIDMxNjAwLCAzMTYwMywgMzE2MDYsIAotICAgIDMxNjA5LCAwLCAwLCAwLCAzMTYxMiwgMzE2MTYsIDMxNjIwLCAzMTYyNCwgMzE2MzEsIDMxNjM3LCAzMTY0MywgMzE2NDksIAotICAgIDMxNjU1LCAzMTY2MSwgMzE2NjcsIDMxNjczLCAzMTY3OSwgMzE2ODUsIDMxNjkyLCAzMTY5OSwgMzE3MDYsIDMxNzEzLCAKLSAgICAzMTcyMCwgMzE3MjcsIDMxNzM0LCAzMTc0MSwgMzE3NDgsIDMxNzU1LCAzMTc2MiwgMzE3NjksIDMxNzc2LCAzMTc4MywgCi0gICAgMzE3OTAsIDMxNzk3LCAzMTgwNCwgMzE4MTEsIDMxODE4LCAzMTgyNSwgMzE4MzIsIDMxODM5LCAzMTg0NiwgMzE4NTMsIAotICAgIDMxODYwLCAzMTg2NywgMzE4NzQsIDMxODgxLCAzMTg4OCwgMzE4OTUsIDMxOTAzLCAzMTkxMSwgMzE5MTksIDMxOTI1LCAKLSAgICAzMTkzMSwgMzE5MzcsIDMxOTQ1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMTk1NCwgMzE5NTksIDMxOTY0LCAzMTk2OSwgCi0gICAgMzE5NzQsIDMxOTgzLCAzMTk5NCwgMzIwMDMsIDMyMDE0LCAzMjAyMCwgMzIwMzMsIDMyMDM5LCAzMjA0NiwgMzIwNTMsIAotICAgIDMyMDU4LCAzMjA2NCwgMzIwNzAsIDMyMDgxLCAzMjA5MCwgMzIwOTcsIDMyMTA0LCAzMjExMywgMzIxMjAsIDMyMTI5LCAKLSAgICAzMjEzOSwgMzIxNDksIDMyMTU2LCAzMjE2MywgMzIxNzAsIDMyMTgwLCAzMjE4NSwgMzIxOTMsIDMyMTk5LCAzMjIwNywgCi0gICAgMzIyMTYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMyMjIxLCAzMjIyNiwgMzIyMzIsIDMyMjM5LCAKLSAgICAzMjI0NywgMzIyNTMsIDMyMjU5LCAzMjI2NSwgMzIyNzAsIDMyMjc4LCAzMjI4NCwgMzIyOTAsIDMyMjk2LCAzMjMwNCwgCi0gICAgMzIzMDksIDMyMzE2LCAzMjMyMSwgMzIzMjgsIDMyMzM0LCAzMjM0MiwgMzIzNTAsIDMyMzU3LCAzMjM2MywgMzIzNzAsIAotICAgIDMyMzc3LCAzMjM4MywgMzIzOTAsIDMyMzk3LCAzMjQwMywgMzI0MDgsIDMyNDE0LCAzMjQyMiwgMzI0MzAsIDMyNDM2LCAKLSAgICAzMjQ0MiwgMzI0NDgsIDMyNDU0LCAzMjQ2MiwgMzI0NjYsIDMyNDcyLCAzMjQ3OCwgMzI0ODQsIDMyNDkwLCAzMjQ5NiwgCi0gICAgMzI1MDIsIDMyNTA2LCAzMjUxMSwgMzI1MTYsIDMyNTIzLCAzMjUyOCwgMzI1MzIsIDMyNTM4LCAzMjU0MywgMzI1NDgsIAotICAgIDMyNTUyLCAzMjU1NywgMzI1NjIsIDMyNTY2LCAzMjU3MCwgMzI1NzQsIDMyNTgwLCAzMjU4NCwgMzI1ODksIDMyNTk0LCAKLSAgICAzMjU5OCwgMzI2MDMsIDMyNjA3LCAzMjYxMiwgMzI2MTYsIDMyNjIyLCAzMjYyNywgMzI2MzQsIDMyNjM5LCAzMjY0NCwgCi0gICAgMzI2NDgsIDMyNjUzLCAzMjY1OSwgMzI2NjcsIDMyNjcyLCAzMjY3OCwgMzI2ODMsIDMyNjg3LCAzMjY5MiwgMzI2OTYsIAotICAgIDMyNzAyLCAzMjcwOSwgMzI3MTYsIDMyNzIxLCAzMjcyNiwgMzI3MzAsIDMyNzM2LCAzMjc0MiwgMzI3NDcsIDMyNzUyLCAKLSAgICAzMjc1NywgMzI3NjMsIDMyNzY4LCAzMjc3NCwgMzI3NzksIDMyNzg1LCAzMjc5MSwgMzI3OTcsIDMyODA0LCAzMjgxMSwgCi0gICAgMzI4MTgsIDMyODI1LCAzMjgzMiwgMzI4MzksIDMyODQ0LCAzMjg1MywgMzI4NjMsIDMyODczLCAzMjg4MywgMzI4OTMsIAotICAgIDMyOTAzLCAzMjkxMywgMzI5MjYsIDMyOTM2LCAzMjk0NiwgMzI5NTYsIDMyOTYzLCAzMjk2OCwgMzI5NzUsIDMyOTgzLCAKLSAgICAzMjk5MSwgMzI5OTgsIDMzMDA1LCAzMzAxMiwgMzMwMTksIDMzMDI3LCAzMzAzNiwgMzMwNDUsIDMzMDU0LCAzMzA2MywgCi0gICAgMzMwNzIsIDMzMDgxLCAzMzA5MCwgMzMwOTksIDMzMTA4LCAzMzExNywgMzMxMjYsIDMzMTM1LCAzMzE0NCwgMzMxNTMsIAotICAgIDMzMTYxLCAzMzE3MCwgMzMxODEsIDMzMTg5LCAzMzE5OSwgMzMyMTEsIDMzMjIwLCAzMzIyOSwgMzMyMzksIDMzMjQ4LCAKLSAgICAzMzI1NiwgMzMyNjUsIDMzMjcyLCAzMzI3NywgMzMyODUsIDMzMjkwLCAzMzI5OCwgMzMzMDMsIDMzMzEyLCAzMzMxOCwgCi0gICAgMzMzMjUsIDMzMzMyLCAzMzMzNywgMzMzNDIsIDMzMzUwLCAzMzM1OCwgMzMzNjcsIDMzMzc2LCAzMzM4MSwgMzMzODgsIAotICAgIDMzMzk5LCAzMzQwNywgMzM0MTYsIDMzNDIxLCAzMzQyNywgMzM0MzIsIDMzNDM5LCAzMzQ0NCwgMzM0NTMsIDMzNDU4LCAKLSAgICAzMzQ2MywgMzM0NjgsIDMzNDc1LCAzMzQ4MiwgMzM0ODcsIDMzNDk2LCAzMzUwNCwgMzM1MDksIDMzNTE0LCAzMzUyMSwgCi0gICAgMzM1MjgsIDMzNTMyLCAzMzUzNiwgMzM1MzksIDMzNTQyLCAzMzU0NSwgMzM1NDgsIDMzNTUxLCAzMzU1NCwgMzM1NjEsIAotICAgIDMzNTY0LCAzMzU2NywgMzM1NzIsIDMzNTc2LCAzMzU4MCwgMzM1ODQsIDMzNTg4LCAzMzU5MiwgMzM2MDIsIDMzNjA4LCAKLSAgICAzMzYxNCwgMzM2MjAsIDMzNjI4LCAzMzYzNiwgMzM2NDIsIDMzNjQ4LCAzMzY1NSwgMzM2NjEsIDMzNjY2LCAzMzY3MiwgCi0gICAgMzM2NzgsIDMzNjgzLCAzMzY4OSwgMzM2OTUsIDMzNzAzLCAzMzcwOCwgMzM3MTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMzNzIwLCAzMzcyNywgMzM3MzQsIDMzNzM5LCAzMzc0OCwgCi0gICAgMzM3NTYsIDMzNzY0LCAzMzc3MSwgMzM3NzgsIDMzNzg1LCAzMzc5MiwgMzM4MDAsIDMzODA4LCAzMzgxOCwgMzM4MjgsIAotICAgIDMzODM2LCAzMzg0NCwgMzM4NTIsIDMzODYwLCAzMzg2OSwgMzM4NzgsIDMzODg2LCAzMzg5NCwgMzM5MDMsIDMzOTEyLCAKLSAgICAzMzkyMiwgMzM5MzIsIDMzOTQxLCAzMzk1MCwgMzM5NTgsIDMzOTY2LCAzMzk3NCwgMzM5ODIsIDMzOTkyLCAzNDAwMiwgCi0gICAgMzQwMTAsIDM0MDE4LCAzNDAyNiwgMzQwMzQsIDM0MDQyLCAzNDA1MCwgMzQwNTgsIDM0MDY2LCAzNDA3NCwgMzQwODIsIAotICAgIDM0MDkwLCAzNDA5OCwgMzQxMDcsIDM0MTE2LCAzNDEyNSwgMzQxMzQsIDM0MTQ0LCAzNDE1NCwgMzQxNjEsIDM0MTY4LCAKLSAgICAzNDE3NiwgMzQxODQsIDM0MTkzLCAzNDIwMiwgMzQyMTAsIDM0MjE4LCAzNDIzMCwgMzQyNDIsIDM0MjUxLCAzNDI2MCwgCi0gICAgMzQyNjksIDM0Mjc4LCAzNDI4NSwgMzQyOTIsIDM0MzAwLCAzNDMwOCwgMzQzMTYsIDM0MzI0LCAzNDMzMiwgMzQzNDAsIAotICAgIDM0MzQ4LCAzNDM1NiwgMzQzNjUsIDM0Mzc0LCAzNDM4MywgMzQzOTIsIDM0NDAxLCAzNDQxMCwgMzQ0MjAsIDM0NDMwLCAKLSAgICAzNDQ0MCwgMzQ0NTAsIDM0NDU5LCAzNDQ2OCwgMzQ0NzUsIDM0NDgyLCAzNDQ5MCwgMzQ0OTgsIDM0NTA2LCAzNDUxNCwgCi0gICAgMzQ1MjIsIDM0NTMwLCAzNDU0MiwgMzQ1NTQsIDM0NTYzLCAzNDU3MiwgMzQ1ODAsIDM0NTg4LCAzNDU5NiwgMzQ2MDQsIAotICAgIDM0NjE1LCAzNDYyNiwgMzQ2MzcsIDM0NjQ4LCAzNDY2MCwgMzQ2NzIsIDM0NjgwLCAzNDY4OCwgMzQ2OTYsIDM0NzA0LCAKLSAgICAzNDcxMywgMzQ3MjIsIDM0NzMxLCAzNDc0MCwgMzQ3NDgsIDM0NzU2LCAzNDc2NCwgMzQ3NzIsIDM0NzgwLCAzNDc4OCwgCi0gICAgMzQ3OTcsIDM0ODA2LCAzNDgxNiwgMzQ4MjYsIDM0ODM0LCAzNDg0MiwgMzQ4NTAsIDM0ODU4LCAzNDg2NiwgMzQ4NzQsIAotICAgIDM0ODgxLCAzNDg4OCwgMzQ4OTYsIDM0OTA0LCAzNDkxMiwgMzQ5MjAsIDM0OTI4LCAzNDkzNiwgMzQ5NDQsIDM0OTUyLCAKLSAgICAzNDk2MCwgMzQ5NjgsIDM0OTc2LCAzNDk4NCwgMzQ5OTIsIDM1MDAwLCAzNTAwOCwgMzUwMTYsIDM1MDI1LCAzNTAzNCwgCi0gICAgMzUwNDMsIDM1MDUxLCAzNTA2MCwgMzUwNjksIDM1MDc4LCAzNTA4NywgMzUwOTcsIDM1MTA2LCAzNTExMiwgMzUxMTcsIAotICAgIDM1MTI0LCAzNTEzMSwgMzUxMzksIDM1MTQ3LCAzNTE1NiwgMzUxNjUsIDM1MTc1LCAzNTE4NSwgMzUxOTYsIDM1MjA3LCAKLSAgICAzNTIxNywgMzUyMjcsIDM1MjM3LCAzNTI0NywgMzUyNTYsIDM1MjY1LCAzNTI3NSwgMzUyODUsIDM1Mjk2LCAzNTMwNywgCi0gICAgMzUzMTcsIDM1MzI3LCAzNTMzNywgMzUzNDcsIDM1MzU0LCAzNTM2MSwgMzUzNjksIDM1Mzc3LCAzNTM4NCwgMzUzOTEsIAotICAgIDM1NDAwLCAzNTQwOSwgMzU0MTksIDM1NDI5LCAzNTQ0MCwgMzU0NTEsIDM1NDYxLCAzNTQ3MSwgMzU0ODEsIDM1NDkxLCAKLSAgICAzNTUwMCwgMzU1MDksIDM1NTE3LCAzNTUyNSwgMzU1MzIsIDM1NTM5LCAzNTU0NywgMzU1NTUsIDM1NTY0LCAzNTU3MywgCi0gICAgMzU1ODMsIDM1NTkzLCAzNTYwNCwgMzU2MTUsIDM1NjI1LCAzNTYzNSwgMzU2NDUsIDM1NjU1LCAzNTY2NCwgMzU2NzMsIAotICAgIDM1NjgzLCAzNTY5MywgMzU3MDQsIDM1NzE1LCAzNTcyNSwgMzU3MzUsIDM1NzQ1LCAzNTc1NSwgMzU3NjIsIDM1NzY5LCAKLSAgICAzNTc3NywgMzU3ODUsIDM1Nzk0LCAzNTgwMywgMzU4MTMsIDM1ODIzLCAzNTgzNCwgMzU4NDUsIDM1ODU1LCAzNTg2NSwgCi0gICAgMzU4NzUsIDM1ODg1LCAzNTg5MywgMzU5MDEsIDM1OTA5LCAzNTkxNywgMzU5MjYsIDM1OTM1LCAzNTk0MywgMzU5NTEsIAotICAgIDM1OTU4LCAzNTk2NSwgMzU5NzIsIDM1OTc5LCAzNTk4NywgMzU5OTUsIDM2MDAzLCAzNjAxMSwgMzYwMjIsIDM2MDMyLCAKLSAgICAzNjA0MywgMzYwNTMsIDM2MDY0LCAzNjA3NCwgMzYwODIsIDM2MDkwLCAzNjEwMSwgMzYxMTEsIDM2MTIyLCAzNjEzMiwgCi0gICAgMzYxNDMsIDM2MTUzLCAzNjE2MSwgMzYxNjksIDM2MTgwLCAzNjE5MCwgMzYyMDEsIDAsIDAsIDM2MjExLCAzNjIxOSwgCi0gICAgMzYyMjcsIDM2MjM4LCAzNjI0OCwgMzYyNTksIDAsIDAsIDM2MjY5LCAzNjI3NywgMzYyODUsIDM2Mjk2LCAzNjMwNiwgCi0gICAgMzYzMTcsIDM2MzI3LCAzNjMzOCwgMzYzNDgsIDM2MzU2LCAzNjM2NCwgMzYzNzUsIDM2Mzg1LCAzNjM5NiwgMzY0MDYsIAotICAgIDM2NDE3LCAzNjQyNywgMzY0MzUsIDM2NDQzLCAzNjQ1NCwgMzY0NjQsIDM2NDc1LCAzNjQ4NSwgMzY0OTYsIDM2NTA2LCAKLSAgICAzNjUxNCwgMzY1MjIsIDM2NTMzLCAzNjU0MywgMzY1NTQsIDM2NTY0LCAzNjU3NSwgMzY1ODUsIDM2NTkzLCAzNjYwMSwgCi0gICAgMzY2MTIsIDM2NjIyLCAzNjYzMywgMCwgMCwgMzY2NDMsIDM2NjUxLCAzNjY1OSwgMzY2NzAsIDM2NjgwLCAzNjY5MSwgMCwgCi0gICAgMCwgMzY3MDEsIDM2NzA5LCAzNjcxNywgMzY3MjgsIDM2NzM4LCAzNjc0OSwgMzY3NTksIDM2NzcwLCAwLCAzNjc4MCwgMCwgCi0gICAgMzY3ODgsIDAsIDM2Nzk4LCAwLCAzNjgwOCwgMzY4MTgsIDM2ODI2LCAzNjgzNCwgMzY4NDUsIDM2ODU1LCAzNjg2NiwgCi0gICAgMzY4NzYsIDM2ODg3LCAzNjg5NywgMzY5MDUsIDM2OTEzLCAzNjkyNCwgMzY5MzQsIDM2OTQ1LCAzNjk1NSwgMzY5NjYsIAotICAgIDM2OTc2LCAzNjk4NCwgMzY5OTIsIDM3MDAwLCAzNzAwOCwgMzcwMTYsIDM3MDI0LCAzNzAzMiwgMzcwNDAsIDM3MDQ4LCAKLSAgICAzNzA1NiwgMzcwNjQsIDM3MDcyLCAzNzA4MCwgMCwgMCwgMzcwODgsIDM3MDk5LCAzNzEwOSwgMzcxMjMsIDM3MTM2LCAKLSAgICAzNzE1MCwgMzcxNjMsIDM3MTc3LCAzNzE5MCwgMzcyMDEsIDM3MjExLCAzNzIyNSwgMzcyMzgsIDM3MjUyLCAzNzI2NSwgCi0gICAgMzcyNzksIDM3MjkyLCAzNzMwMywgMzczMTMsIDM3MzI3LCAzNzM0MCwgMzczNTQsIDM3MzY3LCAzNzM4MSwgMzczOTQsIAotICAgIDM3NDA1LCAzNzQxNSwgMzc0MjksIDM3NDQyLCAzNzQ1NiwgMzc0NjksIDM3NDgzLCAzNzQ5NiwgMzc1MDcsIDM3NTE3LCAKLSAgICAzNzUzMSwgMzc1NDQsIDM3NTU4LCAzNzU3MSwgMzc1ODUsIDM3NTk4LCAzNzYwOSwgMzc2MTksIDM3NjMzLCAzNzY0NiwgCi0gICAgMzc2NjAsIDM3NjczLCAzNzY4NywgMzc3MDAsIDM3NzA4LCAzNzcxNiwgMzc3MjcsIDM3NzM1LCAwLCAzNzc0NiwgMzc3NTQsIAotICAgIDM3NzY1LCAzNzc3MywgMzc3ODEsIDM3Nzg5LCAzNzc5NywgMzc4MDUsIDM3ODA4LCAzNzgxMSwgMzc4MTQsIDM3ODE3LCAKLSAgICAzNzgyMywgMzc4MzQsIDM3ODQyLCAwLCAzNzg1MywgMzc4NjEsIDM3ODcyLCAzNzg4MCwgMzc4ODgsIDM3ODk2LCAzNzkwNCwgCi0gICAgMzc5MTIsIDM3OTE4LCAzNzkyNCwgMzc5MzAsIDM3OTM4LCAzNzk0NiwgMzc5NTcsIDAsIDAsIDM3OTY4LCAzNzk3NiwgCi0gICAgMzc5ODcsIDM3OTk1LCAzODAwMywgMzgwMTEsIDAsIDM4MDE5LCAzODAyNCwgMzgwMjksIDM4MDM0LCAzODA0MiwgMzgwNTAsIAotICAgIDM4MDYxLCAzODA3MiwgMzgwODAsIDM4MDg4LCAzODA5NiwgMzgxMDcsIDM4MTE1LCAzODEyMywgMzgxMzEsIDM4MTM5LCAKLSAgICAzODE0NywgMzgxNTMsIDM4MTU5LCAwLCAwLCAzODE2MiwgMzgxNzMsIDM4MTgxLCAwLCAzODE5MiwgMzgyMDAsIDM4MjExLCAKLSAgICAzODIxOSwgMzgyMjcsIDM4MjM1LCAzODI0MywgMzgyNTEsIDM4MjU0LCAwLCAzODI1NywgMzgyNjEsIDM4MjY1LCAzODI2OSwgCi0gICAgMzgyNzMsIDM4Mjc3LCAzODI4MSwgMzgyODUsIDM4Mjg5LCAzODI5MywgMzgyOTcsIDM4MzAxLCAzODMwNywgMzgzMTMsIAotICAgIDM4MzE5LCAzODMyMiwgMzgzMjUsIDM4MzI3LCAzODMzMSwgMzgzMzUsIDM4MzM5LCAzODM0MywgMzgzNDUsIDM4MzQ5LCAKLSAgICAzODM1MywgMzgzNTksIDM4MzY1LCAzODM3MiwgMzgzNzksIDM4Mzg0LCAzODM4OSwgMzgzOTUsIDM4NDAxLCAzODQwMywgCi0gICAgMzg0MDYsIDM4NDA4LCAzODQxMiwgMzg0MTYsIDM4NDIwLCAzODQyMywgMzg0MjcsIDM4NDMxLCAzODQzNSwgMzg0MzksIAotICAgIDM4NDQzLCAzODQ0OSwgMzg0NTMsIDM4NDU3LCAzODQ2MywgMzg0NjgsIDM4NDc1LCAzODQ3NywgMzg0ODAsIDM4NDg0LCAKLSAgICAzODQ4OCwgMzg0OTMsIDM4NDk5LCAzODUwMSwgMzg1MTAsIDM4NTE5LCAzODUyMiwgMzg1MjYsIDM4NTI4LCAzODUzMCwgCi0gICAgMzg1MzIsIDM4NTM1LCAzODU0MSwgMzg1NDMsIDM4NTQ3LCAzODU1MSwgMzg1NTgsIDM4NTY1LCAzODU2OSwgMzg1NzQsIAotICAgIDM4NTc5LCAzODU4NCwgMzg1ODksIDM4NTkzLCAzODU5NywgMzg2MDAsIDM4NjA0LCAzODYwOCwgMzg2MTUsIDM4NjIwLCAKLSAgICAzODYyNCwgMzg2MjgsIDM4NjMzLCAzODYzNywgMzg2NDEsIDM4NjQ2LCAzODY1MSwgMzg2NTUsIDM4NjU5LCAzODY2MywgCi0gICAgMzg2NjUsIDM4NjcwLCAzODY3NSwgMzg2NzksIDM4NjgzLCAzODY4NywgMzg2OTEsIDAsIDAsIDAsIDAsIDAsIDM4Njk1LCAKLSAgICAzODcwMSwgMzg3MDcsIDM4NzE0LCAzODcyMSwgMzg3MjYsIDM4NzMxLCAzODczNSwgMCwgMCwgMzg3NDEsIDM4NzQ0LCAKLSAgICAzODc0NywgMzg3NTAsIDM4NzUzLCAzODc1NiwgMzg3NTksIDM4NzYzLCAzODc2NywgMzg3NzIsIDM4Nzc3LCAzODc4MiwgCi0gICAgMzg3ODgsIDM4NzkyLCAzODc5NSwgMzg3OTgsIDM4ODAxLCAzODgwNCwgMzg4MDcsIDM4ODEwLCAzODgxMywgMzg4MTYsIAotICAgIDM4ODE5LCAzODgyMywgMzg4MjcsIDM4ODMyLCAzODgzNywgMCwgMzg4NDIsIDM4ODQ4LCAzODg1NCwgMzg4NjAsIDM4ODY3LCAKLSAgICAzODg3NCwgMzg4ODEsIDM4ODg4LCAzODg5NCwgMzg5MDAsIDM4OTA2LCAzODkxMywgMzg5MTksIDAsIDAsIDAsIDM4OTI2LCAKLSAgICAzODkyOSwgMzg5MzIsIDM4OTM1LCAzODk0MCwgMzg5NDMsIDM4OTQ2LCAzODk0OSwgMzg5NTIsIDM4OTU1LCAzODk1OCwgCi0gICAgMzg5NjIsIDM4OTY1LCAzODk2OCwgMzg5NzEsIDM4OTc0LCAzODk3NywgMzg5ODIsIDM4OTg1LCAzODk4OCwgMzg5OTEsIAotICAgIDM4OTk0LCAzODk5NywgMzkwMDIsIDM5MDA1LCAzOTAwOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzkwMTMsIDM5MDE4LCAzOTAyMywgMzkwMzAsIDM5MDM4LCAzOTA0MywgCi0gICAgMzkwNDgsIDM5MDUyLCAzOTA1NiwgMzkwNjEsIDM5MDY4LCAzOTA3NSwgMzkwNzksIDM5MDg0LCAzOTA4OSwgMzkwOTQsIAotICAgIDM5MDk5LCAzOTEwNiwgMzkxMTEsIDM5MTE2LCAzOTEyMSwgMzkxMzAsIDM5MTM3LCAzOTE0NCwgMzkxNDgsIDM5MTUzLCAKLSAgICAzOTE1OSwgMzkxNjQsIDM5MTcxLCAzOTE3OSwgMzkxODcsIDM5MTkxLCAzOTE5NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzkxOTksIDM5MjAzLCAzOTIxMSwgMzkyMTUsIDM5MjE5LCAzOTIyNCwgMzkyMjgsIAotICAgIDM5MjMyLCAzOTIzNiwgMzkyMzgsIDM5MjQyLCAzOTI0NiwgMzkyNTAsIDM5MjU1LCAzOTI1OSwgMzkyNjMsIDM5MjcxLCAKLSAgICAzOTI3NCwgMzkyNzgsIDM5MjgxLCAzOTI4NCwgMzkyOTAsIDM5MjkzLCAzOTI5NiwgMzkzMDIsIDM5MzA2LCAzOTMxMCwgCi0gICAgMzkzMTQsIDM5MzE3LCAzOTMyMSwgMzkzMjQsIDM5MzI4LCAzOTMzMCwgMzkzMzMsIDM5MzM2LCAzOTM0MCwgMzkzNDIsIAotICAgIDM5MzQ2LCAzOTM0OSwgMzkzNTIsIDM5MzU3LCAzOTM2MiwgMzkzNjksIDM5MzcyLCAzOTM3NSwgMzkzNzksIDM5Mzg0LCAKLSAgICAzOTM4NywgMzkzOTAsIDM5MzkzLCAzOTM5NywgMzk0MDIsIDM5NDA1LCAzOTQwOCwgMzk0MTAsIDM5NDEzLCAzOTQxNiwgCi0gICAgMzk0MTksIDM5NDIzLCAzOTQyOCwgMzk0MzEsIDM5NDM1LCAzOTQzOSwgMzk0NDMsIDM5NDQ3LCAzOTQ1MiwgMzk0NTgsIAotICAgIDM5NDYzLCAzOTQ2OCwgMzk0NzQsIDM5NDc5LCAzOTQ4NCwgMzk0ODgsIDM5NDkyLCAzOTQ5NywgMzk1MDEsIDM5NTA1LCAKLSAgICAzOTUwOCwgMzk1MTAsIDM5NTE1LCAzOTUyMSwgMzk1MjgsIDM5NTM1LCAzOTU0MiwgMzk1NDksIDM5NTU2LCAzOTU2MywgCi0gICAgMzk1NzAsIDM5NTc3LCAzOTU4NSwgMzk1OTIsIDM5NjAwLCAzOTYwNywgMzk2MTQsIDM5NjIyLCAzOTYzMCwgMzk2MzUsIAotICAgIDM5NjQwLCAzOTY0NSwgMzk2NTAsIDM5NjU1LCAzOTY2MCwgMzk2NjUsIDM5NjcwLCAzOTY3NSwgMzk2ODAsIDM5Njg2LCAKLSAgICAzOTY5MiwgMzk2OTgsIDM5NzA0LCAzOTcxMSwgMzk3MTksIDM5NzI2LCAzOTczMiwgMzk3MzgsIDM5NzQ0LCAzOTc1MCwgCi0gICAgMzk3NTYsIDM5NzYyLCAzOTc2OCwgMzk3NzQsIDM5NzgwLCAzOTc4NywgMzk3OTQsIDM5ODAxLCAzOTgwOCwgMzk4MTYsIAotICAgIDM5ODI1LCAzOTgzMywgMzk4NDQsIDM5ODUyLCAzOTg2MCwgMzk4NjksIDM5ODc2LCAzOTg4NSwgMzk4OTQsIDM5OTAyLCAKLSAgICAzOTkxMSwgMCwgMCwgMCwgMCwgMCwgMCwgMzk5MTksIDM5OTIxLCAzOTkyNCwgMzk5MjYsIDM5OTI5LCAzOTkzMiwgMzk5MzUsIAotICAgIDM5OTQwLCAzOTk0NSwgMzk5NTAsIDM5OTU1LCAzOTk1OSwgMzk5NjMsIDM5OTY3LCAzOTk3MSwgMzk5NzYsIDM5OTgyLCAKLSAgICAzOTk4NywgMzk5OTMsIDM5OTk4LCA0MDAwMywgNDAwMDgsIDQwMDE0LCA0MDAxOSwgNDAwMjUsIDQwMDMxLCA0MDAzNSwgCi0gICAgNDAwMzksIDQwMDQ0LCA0MDA0OSwgNDAwNTQsIDQwMDU5LCA0MDA2NCwgNDAwNzIsIDQwMDgwLCA0MDA4OCwgNDAwOTYsIAotICAgIDQwMTAzLCA0MDExMSwgNDAxMTgsIDQwMTI1LCA0MDEzNCwgNDAxNDYsIDQwMTUzLCA0MDE2MCwgNDAxNjcsIDQwMTc0LCAKLSAgICA0MDE4MiwgNDAxOTAsIDQwMTk3LCA0MDIwNCwgNDAyMTIsIDQwMjIwLCA0MDIyNSwgNDAyMzMsIDQwMjM4LCA0MDI0MywgCi0gICAgNDAyNDksIDQwMjU0LCA0MDI2MCwgNDAyNjcsIDQwMjc0LCA0MDI3OSwgNDAyODUsIDQwMjkwLCA0MDI5MywgNDAyOTcsIAotICAgIDQwMzAwLCA0MDMwNCwgNDAzMDgsIDQwMzEyLCA0MDMxOCwgNDAzMjQsIDQwMzMwLCA0MDMzNiwgNDAzNDAsIDQwMzQ0LCAKLSAgICA0MDM0OCwgNDAzNTIsIDQwMzU4LCA0MDM2NCwgNDAzNjgsIDQwMzczLCA0MDM3NywgNDAzODIsIDQwMzg3LCA0MDM5MiwgCi0gICAgNDAzOTUsIDQwMzk5LCA0MDQwMiwgNDA0MDYsIDQwNDEzLCA0MDQyMSwgNDA0MzIsIDQwNDQzLCA0MDQ0OCwgNDA0NTcsIAotICAgIDQwNDY0LCA0MDQ3MywgNDA0ODIsIDQwNDg2LCA0MDQ5MiwgNDA1MDAsIDQwNTA0LCA0MDUwOSwgNDA1MTQsIDQwNTIwLCAKLSAgICA0MDUyNiwgNDA1MzIsIDQwNTM5LCA0MDU0MywgNDA1NDcsIDQwNTUyLCA0MDU1NSwgNDA1NTcsIDQwNTYxLCA0MDU2NSwgCi0gICAgNDA1NzMsIDQwNTc3LCA0MDU3OSwgNDA1ODEsIDQwNTg1LCA0MDU5MywgNDA1OTgsIDQwNjA0LCA0MDYxNCwgNDA2MjEsIAotICAgIDQwNjI2LCA0MDYzMCwgNDA2MzQsIDQwNjM4LCA0MDY0MSwgNDA2NDQsIDQwNjQ3LCA0MDY1MSwgNDA2NTUsIDQwNjU5LCAKLSAgICA0MDY2MywgNDA2NjcsIDQwNjcwLCA0MDY3NCwgNDA2NzgsIDQwNjgxLCA0MDY4MywgNDA2ODYsIDQwNjg4LCA0MDY5MiwgCi0gICAgNDA2OTYsIDQwNjk4LCA0MDcwNCwgNDA3MDcsIDQwNzEyLCA0MDcxNiwgNDA3MjAsIDQwNzIyLCA0MDcyNCwgNDA3MjYsIAotICAgIDQwNzI5LCA0MDczMywgNDA3MzcsIDQwNzQxLCA0MDc0NSwgNDA3NDksIDQwNzU1LCA0MDc2MSwgNDA3NjMsIDQwNzY1LCAKLSAgICA0MDc2NywgNDA3NjksIDQwNzcyLCA0MDc3NCwgNDA3NzgsIDQwNzgwLCA0MDc4NCwgNDA3ODgsIDQwNzkzLCA0MDc5NywgCi0gICAgNDA4MDEsIDQwODA1LCA0MDgwOSwgNDA4MTMsIDQwODE5LCA0MDgyMywgNDA4MzMsIDQwODQzLCA0MDg0NywgNDA4NTMsIAotICAgIDQwODU5LCA0MDg2MywgNDA4NjcsIDQwODcwLCA0MDg3NSwgNDA4NzksIDQwODg1LCA0MDg4OSwgNDA5MDEsIDQwOTA5LCAKLSAgICA0MDkxMywgNDA5MTcsIDQwOTIzLCA0MDkyNywgNDA5MzAsIDQwOTMyLCA0MDkzNSwgNDA5MzksIDQwOTQzLCA0MDk1MCwgCi0gICAgNDA5NTQsIDQwOTU4LCA0MDk2MiwgNDA5NjUsIDQwOTcwLCA0MDk3NSwgNDA5ODAsIDQwOTg1LCA0MDk5MCwgNDA5OTUsIAotICAgIDQxMDAzLCA0MTAxMSwgNDEwMTUsIDQxMDE5LCA0MTAyMSwgNDEwMjYsIDQxMDMwLCA0MTAzNCwgNDEwNDIsIDQxMDUwLCAKLSAgICA0MTA1NiwgNDEwNjIsIDQxMDcxLCA0MTA4MCwgNDEwODUsIDQxMDkwLCA0MTA5OCwgNDExMDYsIDQxMTA4LCA0MTExMCwgCi0gICAgNDExMTUsIDQxMTIwLCA0MTEyNiwgNDExMzIsIDQxMTM4LCA0MTE0NCwgNDExNDgsIDQxMTUyLCA0MTE1OSwgNDExNjYsIAotICAgIDQxMTcyLCA0MTE3OCwgNDExODgsIDQxMTk4LCA0MTIwNiwgNDEyMTQsIDQxMjE2LCA0MTIyMCwgNDEyMjQsIDQxMjI5LCAKLSAgICA0MTIzNCwgNDEyNDEsIDQxMjQ4LCA0MTI1MSwgNDEyNTQsIDQxMjU3LCA0MTI2MCwgNDEyNjMsIDQxMjY4LCA0MTI3MiwgCi0gICAgNDEyNzcsIDQxMjgyLCA0MTI4NSwgNDEyODgsIDQxMjkxLCA0MTI5NCwgNDEyOTcsIDQxMzAxLCA0MTMwNCwgNDEzMDcsIAotICAgIDQxMzEwLCA0MTMxMywgNDEzMTUsIDQxMzE3LCA0MTMxOSwgNDEzMjEsIDQxMzI5LCA0MTMzNywgNDEzNDMsIDQxMzQ3LCAKLSAgICA0MTM1MywgNDEzNjMsIDQxMzY5LCA0MTM3NSwgNDEzODEsIDQxMzg5LCA0MTM5NywgNDE0MDgsIDQxNDEyLCA0MTQxNiwgCi0gICAgNDE0MTgsIDQxNDI0LCA0MTQyNiwgNDE0MjgsIDQxNDMwLCA0MTQzMiwgNDE0MzgsIDQxNDQxLCA0MTQ0NywgNDE0NTMsIAotICAgIDQxNDU3LCA0MTQ2MSwgNDE0NjUsIDQxNDY4LCA0MTQ3MiwgNDE0NzYsIDQxNDc4LCA0MTQ4NywgNDE0OTYsIDQxNTAxLCAKLSAgICA0MTUwNiwgNDE1MTIsIDQxNTE4LCA0MTUyNCwgNDE1MjcsIDQxNTMwLCA0MTUzMywgNDE1MzYsIDQxNTM4LCA0MTU0MywgCi0gICAgNDE1NDgsIDQxNTUzLCA0MTU1OSwgNDE1NjUsIDQxNTczLCA0MTU4MSwgNDE1ODcsIDQxNTkzLCA0MTU5OSwgNDE2MDUsIAotICAgIDQxNjE0LCA0MTYyMywgNDE2MzIsIDQxNjQxLCA0MTY1MCwgNDE2NTksIDQxNjY4LCA0MTY3NywgNDE2ODYsIDQxNjk1LCAKLSAgICA0MTcwMywgNDE3MTUsIDQxNzI1LCA0MTc0MCwgNDE3NDMsIDQxNzQ4LCA0MTc1NCwgNDE3NjAsIDQxNzY3LCA0MTc4MSwgCi0gICAgNDE3OTYsIDQxODAyLCA0MTgwOCwgNDE4MTUsIDQxODIxLCA0MTgyOSwgNDE4MzUsIDQxODQ4LCA0MTg2MiwgNDE4NjcsIAotICAgIDQxODczLCA0MTg4MCwgNDE4ODMsIDQxODg2LCA0MTg4OCwgNDE4OTEsIDQxODk0LCA0MTg5NiwgNDE4OTgsIDQxOTAyLCAKLSAgICA0MTkwNSwgNDE5MDgsIDQxOTExLCA0MTkxNCwgNDE5MTksIDQxOTI0LCA0MTkyOSwgNDE5MzQsIDQxOTM5LCA0MTk0MiwgCi0gICAgNDE5NDQsIDQxOTQ2LCA0MTk0OCwgNDE5NTIsIDQxOTU2LCA0MTk2MCwgNDE5NjYsIDQxOTcxLCA0MTk3MywgNDE5NzUsIAotICAgIDQxOTgwLCA0MTk4NSwgNDE5OTAsIDQxOTk1LCA0MjAwMCwgNDIwMDUsIDQyMDA3LCA0MjAwOSwgNDIwMTgsIDQyMDIyLCAKLSAgICA0MjAzMCwgNDIwMzksIDQyMDQxLCA0MjA0NiwgNDIwNTEsIDQyMDU5LCA0MjA2MywgNDIwNjUsIDQyMDY5LCA0MjA3MSwgCi0gICAgNDIwNzUsIDQyMDc5LCA0MjA4MywgNDIwODUsIDQyMDg3LCA0MjA4OSwgNDIwOTQsIDQyMTAxLCA0MjEwOCwgNDIxMTUsIAotICAgIDQyMTIyLCA0MjEyOSwgNDIxMzYsIDQyMTQzLCA0MjE1MCwgNDIxNTYsIDQyMTYyLCA0MjE2OSwgNDIxNzYsIDQyMTgzLCAKLSAgICA0MjE5MCwgNDIxOTYsIDQyMjAyLCA0MjIwOSwgNDIyMTYsIDQyMjIzLCA0MjIzMSwgNDIyMzgsIDQyMjQ2LCA0MjI1MywgCi0gICAgNDIyNjEsIDQyMjY4LCA0MjI3NiwgNDIyODQsIDQyMjkxLCA0MjI5OSwgNDIzMDYsIDQyMzE0LCA0MjMyMSwgNDIzMjksIAotICAgIDQyMzM2LCA0MjM0MywgNDIzNTAsIDQyMzU3LCA0MjM2NCwgNDIzNzIsIDQyMzc5LCA0MjM4NiwgNDIzOTMsIDQyNDAxLCAKLSAgICA0MjQwOCwgNDI0MTUsIDQyNDIyLCA0MjQyOSwgNDI0MzcsIDQyNDQ1LCA0MjQ1MiwgNDI0NTksIDQyNDY1LCA0MjQ3MiwgCi0gICAgNDI0NzcsIDQyNDg0LCA0MjQ5MSwgNDI1MDAsIDQyNTA3LCA0MjUxNSwgNDI1MjMsIDQyNTI4LCA0MjUzMywgNDI1MzgsIAotICAgIDQyNTQ1LCA0MjU1MiwgNDI1NTksIDQyNTY2LCA0MjU3MSwgNDI1NzYsIDQyNTg1LCA0MjU5MSwgNDI1OTQsIDQyNjAyLCAKLSAgICA0MjYwNSwgNDI2MTAsIDQyNjE1LCA0MjYxOCwgNDI2MjEsIDQyNjI5LCA0MjYzMiwgNDI2MzcsIDQyNjQwLCA0MjY0NywgCi0gICAgNDI2NTIsIDQyNjYwLCA0MjY2MywgNDI2NjYsIDQyNjY5LCA0MjY3NCwgNDI2NzksIDQyNjgyLCA0MjY4NSwgNDI2OTMsIAotICAgIDQyNjk2LCA0MjcwMSwgNDI3MDgsIDQyNzEyLCA0MjcxNiwgNDI3MjEsIDQyNzI2LCA0MjczMiwgNDI3MzcsIDQyNzQzLCAKLSAgICA0Mjc0OSwgNDI3NTQsIDQyNzYwLCA0Mjc2OCwgNDI3NzQsIDQyNzgyLCA0Mjc5MCwgNDI3OTYsIDQyODA0LCA0MjgxMiwgCi0gICAgNDI4MjEsIDQyODI5LCA0MjgzNSwgNDI4NDMsIDQyODUyLCA0Mjg2MCwgNDI4NjQsIDQyODY5LCA0Mjg4MiwgNDI4OTUsIAotICAgIDQyODk5LCA0MjkwMywgNDI5MDcsIDQyOTExLCA0MjkyMSwgNDI5MjUsIDQyOTMwLCA0MjkzNSwgNDI5NDAsIDQyOTQ1LCAKLSAgICA0Mjk1MCwgNDI5NTUsIDQyOTY1LCA0Mjk3NSwgNDI5ODMsIDQyOTkzLCA0MzAwMywgNDMwMTEsIDQzMDIxLCA0MzAzMSwgCi0gICAgNDMwMzksIDQzMDQ5LCA0MzA1OSwgNDMwNjcsIDQzMDc1LCA0MzA4NSwgNDMwOTUsIDQzMDk4LCA0MzEwMSwgNDMxMDQsIAotICAgIDQzMTA5LCA0MzExMywgNDMxMTksIDQzMTI2LCA0MzEzMywgNDMxNDEsIDQzMTQ4LCA0MzE1MiwgNDMxNTYsIDQzMTYwLCAKLSAgICA0MzE2NCwgNDMxNjYsIDQzMTcwLCA0MzE3NCwgNDMxNzksIDQzMTg0LCA0MzE5MSwgNDMxOTgsIDQzMjAxLCA0MzIwOCwgCi0gICAgNDMyMTAsIDQzMjEyLCA0MzIxNiwgNDMyMjAsIDQzMjI1LCA0MzIzMSwgNDMyMzcsIDQzMjQzLCA0MzI0OSwgNDMyNTgsIAotICAgIDQzMjY3LCA0MzI3NiwgNDMyODAsIDQzMjgyLCA0MzI4NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNDMyOTMsIDQzMjk3LCA0MzMwNCwgNDMzMTEsIDQzMzE4LCA0MzMyNSwgNDMzMjksIDQzMzMzLCA0MzMzNywgNDMzNDEsIAotICAgIDQzMzQ2LCA0MzM1MiwgNDMzNTcsIDQzMzYzLCA0MzM2OSwgNDMzNzUsIDQzMzgxLCA0MzM4OSwgNDMzOTYsIDQzNDAzLCAKLSAgICA0MzQxMCwgNDM0MTcsIDQzNDIyLCA0MzQyOCwgNDM0MzcsIDQzNDQxLCA0MzQ0OCwgNDM0NTIsIDQzNDU2LCA0MzQ2MiwgCi0gICAgNDM0NjgsIDQzNDc0LCA0MzQ4MCwgNDM0ODQsIDQzNDg4LCA0MzQ5MSwgNDM0OTUsIDQzNDk5LCA0MzUwNiwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDM1MTMsIAotICAgIDQzNTE2LCA0MzUyMCwgNDM1MjQsIDQzNTMwLCA0MzUzNiwgNDM1NDIsIDQzNTUwLCA0MzU1NywgNDM1NjEsIDQzNTY5LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MzU3NCwgNDM1NzcsIAotICAgIDQzNTgwLCA0MzU4MywgNDM1ODYsIDQzNTg5LCA0MzU5MiwgNDM1OTUsIDQzNTk4LCA0MzYwMSwgNDM2MDUsIDQzNjA5LCAKLSAgICA0MzYxMywgNDM2MTcsIDQzNjIxLCA0MzYyNSwgNDM2MjksIDQzNjMzLCA0MzYzNywgNDM2NDEsIDQzNjQ1LCA0MzY0OCwgCi0gICAgNDM2NTEsIDQzNjU0LCA0MzY1NywgNDM2NjAsIDQzNjYzLCA0MzY2NiwgNDM2NjksIDQzNjcyLCA0MzY3NiwgNDM2ODAsIAotICAgIDQzNjg0LCA0MzY4OCwgNDM2OTIsIDQzNjk2LCA0MzcwMCwgNDM3MDQsIDQzNzA4LCA0MzcxMiwgNDM3MTYsIDQzNzIyLCAKLSAgICA0MzcyOCwgNDM3MzQsIDQzNzQxLCA0Mzc0OCwgNDM3NTUsIDQzNzYyLCA0Mzc2OSwgNDM3NzYsIDQzNzgzLCA0Mzc5MCwgCi0gICAgNDM3OTcsIDQzODA0LCA0MzgxMSwgNDM4MTgsIDQzODI1LCA0MzgzMiwgNDM4MzksIDQzODQ2LCA0Mzg1MywgNDM4NTgsIAotICAgIDQzODY0LCA0Mzg3MCwgNDM4NzYsIDQzODgxLCA0Mzg4NywgNDM4OTMsIDQzODk5LCA0MzkwNCwgNDM5MTAsIDQzOTE2LCAKLSAgICA0MzkyMSwgNDM5MjYsIDQzOTMxLCA0MzkzNiwgNDM5NDIsIDQzOTQ4LCA0Mzk1MywgNDM5NTgsIDQzOTY0LCA0Mzk2OSwgCi0gICAgNDM5NzUsIDQzOTgxLCA0Mzk4NywgNDM5OTMsIDQzOTk5LCA0NDAwNCwgNDQwMTAsIDQ0MDE2LCA0NDAyMiwgNDQwMjcsIAotICAgIDQ0MDMzLCA0NDAzOSwgNDQwNDUsIDQ0MDUwLCA0NDA1NiwgNDQwNjIsIDQ0MDY3LCA0NDA3MiwgNDQwNzcsIDQ0MDgyLCAKLSAgICA0NDA4OCwgNDQwOTQsIDQ0MDk5LCA0NDEwNCwgNDQxMTAsIDQ0MTE1LCA0NDEyMSwgNDQxMjcsIDQ0MTMzLCA0NDEzOSwgCi0gICAgNDQxNDUsIDQ0MTUwLCA0NDE1NiwgNDQxNjIsIDQ0MTY4LCA0NDE3MywgNDQxNzksIDQ0MTg1LCA0NDE5MSwgNDQxOTYsIAotICAgIDQ0MjAyLCA0NDIwOCwgNDQyMTMsIDQ0MjE4LCA0NDIyMywgNDQyMjgsIDQ0MjM0LCA0NDI0MCwgNDQyNDUsIDQ0MjUwLCAKLSAgICA0NDI1NiwgNDQyNjEsIDQ0MjY3LCA0NDI3MywgNDQyNzksIDQ0Mjg1LCA0NDI5MSwgNDQyOTUsIDQ0MzAwLCA0NDMwNSwgCi0gICAgNDQzMTAsIDQ0MzE1LCA0NDMyMCwgNDQzMjUsIDQ0MzMwLCA0NDMzNSwgNDQzNDAsIDQ0MzQ1LCA0NDM0OSwgNDQzNTMsIAotICAgIDQ0MzU3LCA0NDM2MSwgNDQzNjUsIDQ0MzY5LCA0NDM3MywgNDQzNzcsIDQ0MzgxLCA0NDM4NiwgNDQzOTEsIDQ0Mzk2LCAKLSAgICA0NDQwMSwgNDQ0MDYsIDQ0NDExLCA0NDQyMCwgNDQ0MjksIDQ0NDM4LCA0NDQ0NywgNDQ0NTYsIDQ0NDY1LCA0NDQ3NCwgCi0gICAgNDQ0ODMsIDQ0NDkwLCA0NDQ5OCwgNDQ1MDYsIDQ0NTEzLCA0NDUyMCwgNDQ1MjgsIDQ0NTM2LCA0NDU0MywgNDQ1NTAsIAotICAgIDQ0NTU4LCA0NDU2NiwgNDQ1NzMsIDQ0NTgwLCA0NDU4OCwgNDQ1OTYsIDQ0NjAzLCA0NDYxMCwgNDQ2MTgsIDQ0NjI3LCAKLSAgICA0NDYzNiwgNDQ2NDQsIDQ0NjUzLCA0NDY2MiwgNDQ2NjksIDQ0Njc2LCA0NDY4NCwgNDQ2OTMsIDQ0NzAyLCA0NDcxMCwgCi0gICAgNDQ3MTksIDQ0NzI4LCA0NDczNSwgNDQ3NDIsIDQ0NzUxLCA0NDc2MCwgNDQ3NjgsIDQ0Nzc2LCA0NDc4NSwgNDQ3OTQsIAotICAgIDQ0ODAxLCA0NDgwOCwgNDQ4MTcsIDQ0ODI2LCA0NDgzNCwgNDQ4NDIsIDQ0ODUxLCA0NDg2MCwgNDQ4NjcsIDQ0ODc0LCAKLSAgICA0NDg4MywgNDQ4OTIsIDQ0OTAwLCA0NDkwOSwgNDQ5MTgsIDQ0OTI2LCA0NDkzNiwgNDQ5NDYsIDQ0OTU2LCA0NDk2NiwgCi0gICAgNDQ5NzUsIDQ0OTg0LCA0NDk5MywgNDUwMDIsIDQ1MDA5LCA0NTAxNywgNDUwMjUsIDQ1MDMzLCA0NTA0MSwgNDUwNDYsIAotICAgIDQ1MDUxLCA0NTA2MCwgNDUwNjgsIDQ1MDc1LCA0NTA4NCwgNDUwOTIsIDQ1MDk5LCA0NTEwOCwgNDUxMTYsIDQ1MTIzLCAKLSAgICA0NTEzMiwgNDUxNDAsIDQ1MTQ3LCA0NTE1NiwgNDUxNjQsIDQ1MTcxLCA0NTE4MCwgNDUxODgsIDQ1MTk1LCA0NTIwNCwgCi0gICAgNDUyMTIsIDQ1MjE5LCA0NTIyOCwgNDUyMzYsIDQ1MjQzLCA0NTI1MiwgNDUyNjAsIDQ1MjY3LCA0NTI3NiwgNDUyODUsIAotICAgIDQ1Mjk0LCA0NTMwMywgNDUzMTcsIDQ1MzMxLCA0NTMzOCwgNDUzNDMsIDQ1MzQ4LCA0NTM1MywgNDUzNTgsIDQ1MzYzLCAKLSAgICA0NTM2OCwgNDUzNzMsIDQ1Mzc4LCA0NTM4NiwgNDUzOTQsIDQ1NDAyLCA0NTQxMCwgNDU0MTUsIDQ1NDIyLCA0NTQyOSwgCi0gICAgNDU0MzYsIDQ1NDQxLCA0NTQ0OSwgNDU0NTYsIDQ1NDY0LCA0NTQ2OCwgNDU0NzUsIDQ1NDgxLCA0NTQ4OCwgNDU0OTIsIAotICAgIDQ1NDk4LCA0NTUwNCwgNDU1MTAsIDQ1NTE0LCA0NTUxNywgNDU1MjEsIDQ1NTI1LCA0NTUzMiwgNDU1MzgsIDQ1NTQ0LCAKLSAgICA0NTU1MCwgNDU1NTYsIDQ1NTcwLCA0NTU4MCwgNDU1OTQsIDQ1NjA4LCA0NTYxNCwgNDU2MjQsIDQ1NjM4LCA0NTY0MSwgCi0gICAgNDU2NDQsIDQ1NjUxLCA0NTY1OSwgNDU2NjQsIDQ1NjY5LCA0NTY3NywgNDU2ODksIDQ1NzAxLCA0NTcwOSwgNDU3MTMsIAotICAgIDQ1NzE3LCA0NTcyMCwgNDU3MjMsIDQ1NzI3LCA0NTczMSwgNDU3MzQsIDQ1NzM3LCA0NTc0MiwgNDU3NDcsIDQ1NzUzLCAKLSAgICA0NTc1OSwgNDU3NjQsIDQ1NzY5LCA0NTc3NSwgNDU3ODEsIDQ1Nzg2LCA0NTc5MSwgNDU3OTYsIDQ1ODAxLCA0NTgwNywgCi0gICAgNDU4MTMsIDQ1ODE4LCA0NTgyMywgNDU4MjksIDQ1ODM1LCA0NTg0MCwgNDU4NDUsIDQ1ODQ4LCA0NTg1MSwgNDU4NjAsIAotICAgIDQ1ODYyLCA0NTg2NCwgNDU4NjcsIDQ1ODcxLCA0NTg3NywgNDU4NzksIDQ1ODgyLCA0NTg4OSwgNDU4OTYsIDQ1OTA0LCAKLSAgICA0NTkxMiwgNDU5MjIsIDQ1OTM2LCA0NTk0MSwgNDU5NDYsIDQ1OTUwLCA0NTk1NSwgNDU5NjMsIDQ1OTcxLCA0NTk4MCwgCi0gICAgNDU5ODksIDQ1OTk4LCA0NjAwNywgNDYwMTIsIDQ2MDE3LCA0NjAyMywgNDYwMjksIDQ2MDM1LCA0NjA0MSwgNDYwNDQsIAotICAgIDQ2MDUwLCA0NjA1NiwgNDYwNjYsIDQ2MDc2LCA0NjA4NCwgNDYwOTIsIDQ2MTAxLCA0NjExMCwgNDYxMTQsIDQ2MTIyLCAKLSAgICA0NjEzMCwgNDYxMzgsIDQ2MTQ2LCA0NjE1NSwgNDYxNjQsIDQ2MTczLCA0NjE4MiwgNDYxODcsIDQ2MTkyLCA0NjE5NywgCi0gICAgNDYyMDIsIDQ2MjA3LCA0NjIxMywgNDYyMTksIDQ2MjI0LCA0NjIzMCwgNDYyMzIsIDQ2MjM0LCA0NjIzNiwgNDYyMzgsIAotICAgIDQ2MjQxLCA0NjI0NCwgNDYyNDYsIDQ2MjQ4LCA0NjI1MCwgNDYyNTQsIDQ2MjU4LCA0NjI2MCwgNDYyNjIsIDQ2MjY1LCAKLSAgICA0NjI2OCwgNDYyNzIsIDQ2Mjc4LCA0NjI4NCwgNDYyODYsIDQ2MjkzLCA0NjI5NywgNDYzMDIsIDQ2MzA3LCA0NjMwOSwgCi0gICAgNDYzMTksIDQ2MzI1LCA0NjMzMSwgNDYzMzcsIDQ2MzQzLCA0NjM0OSwgNDYzNTUsIDQ2MzYwLCA0NjM2MywgNDYzNjYsIAotICAgIDQ2MzY5LCA0NjM3MSwgNDYzNzMsIDQ2Mzc3LCA0NjM4MSwgNDYzODYsIDQ2MzkxLCA0NjM5NiwgNDYzOTksIDQ2NDAzLCAKLSAgICA0NjQwOCwgNDY0MTEsIDQ2NDE1LCA0NjQyMCwgNDY0MjUsIDQ2NDMwLCA0NjQzNSwgNDY0NDAsIDQ2NDQ1LCA0NjQ1MCwgCi0gICAgNDY0NTUsIDQ2NDYwLCA0NjQ2NSwgNDY0NzAsIDQ2NDc1LCA0NjQ4MSwgNDY0ODcsIDQ2NDkzLCA0NjQ5NSwgNDY0OTgsIAotICAgIDQ2NTAwLCA0NjUwMywgNDY1MDUsIDQ2NTA3LCA0NjUwOSwgNDY1MTEsIDQ2NTEzLCA0NjUxNSwgNDY1MTcsIDQ2NTE5LCAKLSAgICA0NjUyMSwgNDY1MjMsIDQ2NTI1LCA0NjUyNywgNDY1MjksIDQ2NTMxLCA0NjUzMywgNDY1MzUsIDQ2NTM3LCA0NjU0MiwgCi0gICAgNDY1NDcsIDQ2NTUyLCA0NjU1NywgNDY1NjIsIDQ2NTY3LCA0NjU3MiwgNDY1NzcsIDQ2NTgyLCA0NjU4NywgNDY1OTIsIAotICAgIDQ2NTk3LCA0NjYwMiwgNDY2MDcsIDQ2NjEyLCA0NjYxNywgNDY2MjIsIDQ2NjI3LCA0NjYzMiwgNDY2MzcsIDQ2NjQxLCAKLSAgICA0NjY0NSwgNDY2NDksIDQ2NjU1LCA0NjY2MSwgNDY2NjYsIDQ2NjcxLCA0NjY3NiwgNDY2ODEsIDQ2Njg2LCA0NjY5MSwgCi0gICAgNDY2OTksIDQ2NzA3LCA0NjcxNSwgNDY3MjMsIDQ2NzMxLCA0NjczOSwgNDY3NDcsIDQ2NzU1LCA0Njc2MSwgNDY3NjYsIAotICAgIDQ2NzcxLCA0Njc3NiwgNDY3NzksIDQ2NzgzLCA0Njc4NywgNDY3OTEsIDQ2Nzk1LCA0Njc5OSwgNDY4MDMsIDQ2ODEwLCAKLSAgICA0NjgxNywgNDY4MjUsIDQ2ODMzLCA0NjgzOCwgNDY4NDMsIDQ2ODUwLCA0Njg1NywgNDY4NjQsIDQ2ODcxLCA0Njg3NCwgCi0gICAgNDY4NzcsIDQ2ODgyLCA0Njg4NCwgNDY4ODgsIDQ2ODkzLCA0Njg5NSwgNDY4OTcsIDQ2ODk5LCA0NjkwMSwgNDY5MDYsIAotICAgIDQ2OTA5LCA0NjkxMSwgNDY5MTYsIDQ2OTIzLCA0NjkzMCwgNDY5MzMsIDQ2OTM3LCA0Njk0MiwgNDY5NDcsIDQ2OTU1LCAKLSAgICA0Njk2MSwgNDY5NjcsIDQ2OTc5LCA0Njk4NiwgNDY5OTMsIDQ2OTk4LCA0NzAwMywgNDcwMDksIDQ3MDEyLCA0NzAxNSwgCi0gICAgNDcwMjAsIDQ3MDIyLCA0NzAyNiwgNDcwMjgsIDQ3MDMwLCA0NzAzMiwgNDcwMzQsIDQ3MDM2LCA0NzAzOCwgNDcwNDMsIAotICAgIDQ3MDQ1LCA0NzA0NywgNDcwNDksIDQ3MDUxLCA0NzA1NSwgNDcwNTcsIDQ3MDYwLCA0NzA2NSwgNDcwNzAsIDQ3MDc1LCAKLSAgICA0NzA4MCwgNDcwODYsIDQ3MDkyLCA0NzA5NCwgNDcwOTcsIDQ3MTA0LCA0NzExMSwgNDcxMTgsIDQ3MTI1LCA0NzEyOSwgCi0gICAgNDcxMzMsIDQ3MTM1LCA0NzEzNywgNDcxNDEsIDQ3MTQ3LCA0NzE1MiwgNDcxNTQsIDQ3MTU4LCA0NzE2NywgNDcxNzUsIAotICAgIDQ3MTgzLCA0NzE4OSwgNDcxOTUsIDQ3MjAwLCA0NzIwNiwgNDcyMTEsIDQ3MjE0LCA0NzIyOCwgNDcyMzEsIDQ3MjM2LCAKLSAgICA0NzI0MSwgNDcyNDcsIDQ3MjU3LCA0NzI1OSwgNDcyNjUsIDQ3MjcxLCA0NzI3NSwgNDcyODIsIDQ3Mjg2LCA0NzI4OCwgCi0gICAgNDcyOTAsIDQ3Mjk0LCA0NzMwMCwgNDczMDUsIDQ3MzExLCA0NzMxMywgNDczMTksIDQ3MzIxLCA0NzMyNywgNDczMjksIAotICAgIDQ3MzMxLCA0NzMzNiwgNDczMzgsIDQ3MzQyLCA0NzM0NywgNDczNDksIDQ3MzU0LCA0NzM1OSwgNDczNjMsIDQ3MzcwLCAwLCAKLSAgICA0NzM4MCwgNDczODYsIDQ3Mzg5LCA0NzM5NSwgNDczOTgsIDQ3NDAzLCA0NzQwOCwgNDc0MTIsIDQ3NDE0LCA0NzQxNiwgCi0gICAgNDc0MjAsIDQ3NDI0LCA0NzQyOCwgNDc0MzIsIDQ3NDM3LCA0NzQzOSwgNDc0NDQsIDQ3NDQ3LCA0NzQ1MCwgNDc0NTMsIAotICAgIDQ3NDU3LCA0NzQ2MSwgNDc0NjYsIDQ3NDcwLCA0NzQ3NSwgNDc0ODAsIDQ3NDg0LCA0NzQ5MCwgNDc0OTcsIDQ3NTAwLCAKLSAgICA0NzUwNiwgNDc1MTEsIDQ3NTE1LCA0NzUyMCwgNDc1MjYsIDQ3NTMyLCA0NzUzOSwgNDc1NDUsIDQ3NTUyLCA0NzU1OSwgCi0gICAgNDc1NjEsIDQ3NTY4LCA0NzU3MiwgNDc1NzksIDQ3NTg1LCA0NzU5MCwgNDc1OTYsIDQ3NjAwLCA0NzYwNSwgNDc2MDgsIAotICAgIDQ3NjE0LCA0NzYyMCwgNDc2MjcsIDQ3NjM1LCA0NzY0MiwgNDc2NTEsIDQ3NjYxLCA0NzY2OCwgNDc2NzQsIDQ3Njc4LCAKLSAgICA0NzY4NiwgNDc2OTEsIDQ3NzAwLCA0NzcwMywgNDc3MDYsIDQ3NzE1LCA0NzcyNiwgNDc3MzMsIDQ3NzM1LCA0Nzc0MSwgCi0gICAgNDc3NDYsIDQ3NzQ4LCA0Nzc1MSwgNDc3NTUsIDQ3NzYzLCA0Nzc3MiwgNDc3NzUsIDQ3NzgwLCA0Nzc4NSwgNDc3OTMsIAotICAgIDQ3ODAxLCA0NzgwOSwgNDc4MTcsIDQ3ODIzLCA0NzgyOSwgNDc4MzUsIDQ3ODQzLCA0Nzg0OCwgNDc4NTEsIDQ3ODU1LCAKLSAgICA0Nzg1OCwgNDc4NzAsIDQ3ODgwLCA0Nzg5MSwgNDc5MDAsIDQ3OTExLCA0NzkyMSwgNDc5MzAsIDQ3OTM2LCA0Nzk0NCwgCi0gICAgNDc5NDgsIDQ3OTU2LCA0Nzk2MCwgNDc5NjgsIDQ3OTc1LCA0Nzk4MiwgNDc5OTEsIDQ4MDAwLCA0ODAxMCwgNDgwMjAsIAotICAgIDQ4MDMwLCA0ODA0MCwgNDgwNDksIDQ4MDU4LCA0ODA2OCwgNDgwNzgsIDQ4MDg3LCA0ODA5NiwgNDgxMDIsIDQ4MTA4LCAKLSAgICA0ODExNCwgNDgxMjAsIDQ4MTI2LCA0ODEzMiwgNDgxMzgsIDQ4MTQ0LCA0ODE1MCwgNDgxNTcsIDQ4MTYzLCA0ODE2OSwgCi0gICAgNDgxNzUsIDQ4MTgxLCA0ODE4NywgNDgxOTMsIDQ4MTk5LCA0ODIwNSwgNDgyMTEsIDQ4MjE4LCA0ODIyNSwgNDgyMzIsIAotICAgIDQ4MjM5LCA0ODI0NiwgNDgyNTMsIDQ4MjYwLCA0ODI2NywgNDgyNzQsIDQ4MjgxLCA0ODI4OSwgNDgyOTQsIDQ4Mjk3LCAKLSAgICA0ODMwMSwgNDgzMDUsIDQ4MzExLCA0ODMxNCwgNDgzMjAsIDQ4MzI2LCA0ODMzMSwgNDgzMzUsIDQ4MzQwLCA0ODM0NiwgCi0gICAgNDgzNTMsIDQ4MzU2LCA0ODM2MywgNDgzNzAsIDQ4Mzc0LCA0ODM4MywgNDgzOTIsIDQ4Mzk3LCA0ODQwMywgNDg0MDgsIAotICAgIDQ4NDEzLCA0ODQyMCwgNDg0MjcsIDQ4NDM1LCA0ODQ0MywgNDg0NTIsIDQ4NDU2LCA0ODQ2NSwgNDg0NzAsIDQ4NDc0LCAKLSAgICA0ODQ4MSwgNDg0ODUsIDQ4NDkyLCA0ODUwMCwgNDg1MDUsIDQ4NTEzLCA0ODUxNywgNDg1MjIsIDQ4NTI2LCA0ODUzMSwgCi0gICAgNDg1MzUsIDQ4NTQwLCA0ODU0NSwgNDg1NTQsIDQ4NTU2LCA0ODU2MCwgNDg1NjQsIDQ4NTcxLCA0ODU3OCwgNDg1ODMsIAotICAgIDQ4NTkxLCA0ODU5NywgMCwgNDg2MDMsIDAsIDQ4NjA2LCA0ODYxMSwgNDg2MTYsIDQ4NjI0LCA0ODYyOCwgNDg2MzUsIAotICAgIDQ4NjQzLCA0ODY1MSwgNDg2NTYsIDQ4NjYxLCA0ODY2NywgNDg2NzIsIDQ4Njc3LCA0ODY4MywgNDg2ODgsIDQ4NjkxLCAKLSAgICA0ODY5NSwgNDg2OTksIDQ4NzA2LCA0ODcxNSwgNDg3MjAsIDQ4NzI5LCA0ODczOCwgNDg3NDQsIDQ4NzUwLCA0ODc1NSwgCi0gICAgNDg3NjAsIDQ4NzY1LCA0ODc3MCwgNDg3NzYsIDQ4NzgyLCA0ODc5MCwgNDg3OTgsIDQ4ODA0LCA0ODgxMCwgNDg4MTUsIAotICAgIDQ4ODIwLCA0ODgyNywgNDg4MzQsIDQ4ODQwLCA0ODg0MywgNDg4NDYsIDQ4ODUwLCA0ODg1NCwgNDg4NTgsIDQ4ODYzLCAKLSAgICA0ODg2OSwgNDg4NzUsIDQ4ODgyLCA0ODg4OSwgNDg4OTQsIDQ4ODk4LCA0ODkwMiwgNDg5MDYsIDQ4OTEwLCA0ODkxNCwgCi0gICAgNDg5MTgsIDQ4OTIyLCA0ODkyNiwgNDg5MzAsIDQ4OTM0LCA0ODkzOCwgNDg5NDIsIDQ4OTQ2LCA0ODk1MCwgNDg5NTQsIAotICAgIDQ4OTU4LCA0ODk2MiwgNDg5NjYsIDQ4OTcwLCA0ODk3NCwgNDg5NzgsIDQ4OTgyLCA0ODk4NiwgNDg5OTAsIDQ4OTk0LCAKLSAgICA0ODk5OCwgNDkwMDIsIDQ5MDA2LCA0OTAxMCwgNDkwMTQsIDQ5MDE4LCA0OTAyMiwgNDkwMjYsIDQ5MDMwLCA0OTAzNCwgCi0gICAgNDkwMzgsIDQ5MDQyLCA0OTA0NiwgNDkwNTAsIDQ5MDU0LCA0OTA1OCwgNDkwNjIsIDQ5MDY2LCA0OTA3MCwgNDkwNzQsIAotICAgIDQ5MDc4LCA0OTA4MiwgNDkwODYsIDQ5MDkwLCA0OTA5NCwgNDkwOTgsIDQ5MTAyLCA0OTEwNiwgNDkxMTAsIDQ5MTE0LCAKLSAgICA0OTExOCwgNDkxMjIsIDQ5MTI2LCA0OTEzMCwgNDkxMzQsIDQ5MTM4LCA0OTE0MiwgNDkxNDYsIDQ5MTUwLCA0OTE1NCwgCi0gICAgNDkxNTgsIDQ5MTYyLCA0OTE2NiwgNDkxNzAsIDQ5MTc0LCA0OTE3OCwgNDkxODIsIDQ5MTg2LCA0OTE5MCwgNDkxOTQsIAotICAgIDQ5MTk4LCA0OTIwMiwgNDkyMDYsIDQ5MjEwLCA0OTIxNCwgNDkyMTgsIDQ5MjIyLCA0OTIyNiwgNDkyMzAsIDQ5MjM0LCAKLSAgICA0OTIzOCwgNDkyNDIsIDQ5MjQ2LCA0OTI1MCwgNDkyNTQsIDQ5MjU4LCA0OTI2MiwgNDkyNjYsIDQ5MjcwLCA0OTI3NCwgCi0gICAgNDkyNzgsIDQ5MjgyLCA0OTI4NiwgNDkyOTAsIDQ5Mjk0LCA0OTI5OCwgNDkzMDIsIDQ5MzA2LCA0OTMxMCwgNDkzMTQsIAotICAgIDQ5MzE4LCA0OTMyMiwgNDkzMjYsIDQ5MzMwLCA0OTMzNCwgNDkzMzgsIDQ5MzQyLCA0OTM0NiwgNDkzNTAsIDQ5MzU0LCAKLSAgICA0OTM1OCwgNDkzNjIsIDQ5MzY2LCA0OTM3MCwgNDkzNzQsIDQ5Mzc4LCA0OTM4MiwgNDkzODYsIDQ5MzkwLCA0OTM5NCwgCi0gICAgNDkzOTgsIDQ5NDAyLCA0OTQwNiwgNDk0MTAsIDQ5NDE0LCA0OTQxOCwgNDk0MjIsIDQ5NDI2LCA0OTQzMCwgNDk0MzQsIAotICAgIDQ5NDM4LCA0OTQ0MiwgNDk0NDYsIDQ5NDUwLCA0OTQ1NCwgNDk0NTgsIDQ5NDYyLCA0OTQ2NiwgNDk0NzAsIDQ5NDc0LCAKLSAgICA0OTQ3OCwgNDk0ODIsIDQ5NDg2LCA0OTQ5MCwgNDk0OTQsIDQ5NDk4LCA0OTUwMiwgNDk1MDYsIDQ5NTEwLCA0OTUxNCwgCi0gICAgNDk1MTgsIDQ5NTIyLCA0OTUyNiwgNDk1MzAsIDQ5NTM0LCA0OTUzOCwgNDk1NDIsIDQ5NTQ2LCA0OTU1MCwgNDk1NTQsIAotICAgIDQ5NTU4LCA0OTU2MiwgNDk1NjYsIDQ5NTcwLCA0OTU3NCwgNDk1NzgsIDQ5NTgyLCA0OTU4NiwgNDk1OTAsIDQ5NTk0LCAKLSAgICA0OTU5OCwgNDk2MDIsIDQ5NjA2LCA0OTYxMCwgNDk2MTQsIDQ5NjE4LCA0OTYyMiwgNDk2MjYsIDQ5NjMwLCA0OTYzNCwgCi0gICAgNDk2MzgsIDQ5NjQyLCA0OTY0NiwgNDk2NTAsIDQ5NjU0LCA0OTY1OCwgNDk2NjIsIDQ5NjY2LCA0OTY3MCwgNDk2NzQsIAotICAgIDQ5Njc4LCA0OTY4MiwgNDk2ODYsIDQ5NjkwLCA0OTY5NCwgNDk2OTgsIDQ5NzAyLCA0OTcwNiwgNDk3MTAsIDQ5NzE0LCAKLSAgICA0OTcxOCwgNDk3MjIsIDQ5NzI2LCA0OTczMCwgNDk3MzQsIDQ5NzM4LCA0OTc0MiwgNDk3NDYsIDQ5NzUwLCA0OTc1NCwgCi0gICAgNDk3NTgsIDQ5NzYyLCA0OTc2NiwgNDk3NzAsIDQ5Nzc0LCA0OTc3OCwgNDk3ODIsIDQ5Nzg2LCA0OTc5MCwgNDk3OTQsIAotICAgIDQ5Nzk4LCA0OTgwMiwgNDk4MDYsIDQ5ODEwLCA0OTgxNCwgNDk4MTgsIDQ5ODIyLCA0OTgyNiwgNDk4MzAsIDQ5ODM0LCAKLSAgICA0OTgzOCwgNDk4NDIsIDQ5ODQ2LCA0OTg1MCwgNDk4NTQsIDQ5ODU4LCA0OTg2MiwgNDk4NjYsIDQ5ODcwLCA0OTg3NCwgCi0gICAgNDk4NzgsIDQ5ODgyLCA0OTg4NiwgNDk4OTAsIDQ5ODk0LCA0OTg5OCwgNDk5MDIsIDQ5OTA2LCA0OTkxMCwgNDk5MTQsIAotICAgIDQ5OTE4LCA0OTkyNSwgNDk5MzMsIDQ5OTM5LCA0OTk0NSwgNDk5NTIsIDQ5OTU5LCA0OTk2NSwgNDk5NzEsIDQ5OTc3LCAKLSAgICA0OTk4MywgNDk5ODgsIDQ5OTkzLCA0OTk5OCwgNTAwMDMsIDUwMDA5LCA1MDAxNSwgNTAwMjMsIDUwMDMwLCA1MDAzNiwgCi0gICAgNTAwNDIsIDUwMDUwLCA1MDA1OSwgNTAwNjYsIDUwMDc2LCA1MDA4NywgNTAwOTAsIDUwMDkzLCA1MDA5NywgNTAxMDEsIAotICAgIDUwMTA4LCA1MDExNSwgNTAxMjYsIDUwMTM3LCA1MDE0NywgNTAxNTcsIDUwMTY0LCA1MDE3MSwgNTAxNzgsIDUwMTg1LCAKLSAgICA1MDE5NiwgNTAyMDcsIDUwMjE4LCA1MDIyOSwgNTAyMzksIDUwMjQ5LCA1MDI2MSwgNTAyNzMsIDUwMjg0LCA1MDI5NSwgCi0gICAgNTAzMDcsIDUwMzE5LCA1MDMyOCwgNTAzMzgsIDUwMzQ4LCA1MDM1OSwgNTAzNzAsIDUwMzc3LCA1MDM4NCwgNTAzOTEsIAotICAgIDUwMzk4LCA1MDQwOCwgNTA0MTgsIDUwNDI2LCA1MDQzNCwgNTA0NDEsIDUwNDQ4LCA1MDQ1NSwgNTA0NjIsIDUwNDY5LCAKLSAgICA1MDQ3NCwgNTA0NzksIDUwNDg1LCA1MDQ5MywgNTA1MDMsIDUwNTExLCA1MDUxOSwgNTA1MjcsIDUwNTM1LCA1MDU0MywgCi0gICAgNTA1NTEsIDUwNTU5LCA1MDU2NywgNTA1NzYsIDUwNTg1LCA1MDU5NSwgNTA2MDUsIDUwNjE0LCA1MDYyMywgNTA2MzMsIAotICAgIDUwNjQzLCA1MDY1MiwgNTA2NjEsIDUwNjcxLCA1MDY4MSwgNTA2OTAsIDUwNjk5LCA1MDcwOSwgNTA3MTksIDUwNzMzLCAKLSAgICA1MDc1MCwgNTA3NjQsIDUwNzgxLCA1MDc5NSwgNTA4MDksIDUwODIzLCA1MDgzNywgNTA4NDcsIDUwODU4LCA1MDg2OCwgCi0gICAgNTA4NzksIDUwODk2LCA1MDkxMywgNTA5MjEsIDUwOTI3LCA1MDkzNCwgNTA5NDEsIDUwOTQ4LCA1MDk1NSwgNTA5NjAsIAotICAgIDUwOTY2LCA1MDk3MSwgNTA5NzYsIDUwOTgyLCA1MDk4NywgNTA5OTIsIDUwOTk3LCA1MTAwMiwgNTEwMDcsIDUxMDE0LCAKLSAgICA1MTAxOSwgNTEwMjYsIDUxMDMxLCA1MTAzNiwgNTEwNDAsIDUxMDQ0LCA1MTA1MSwgNTEwNTgsIDUxMDY1LCA1MTA3MiwgCi0gICAgNTEwNzksIDUxMDg2LCA1MTA5OSwgNTExMTIsIDUxMTI1LCA1MTEzOCwgNTExNDYsIDUxMTU0LCA1MTE2MCwgNTExNjYsIAotICAgIDUxMTczLCA1MTE4MCwgNTExODcsIDUxMTk0LCA1MTE5OCwgNTEyMDMsIDUxMjExLCA1MTIxOSwgNTEyMjcsIDUxMjM0LCAKLSAgICA1MTIzOCwgNTEyNDYsIDUxMjU0LCA1MTI1OCwgNTEyNjIsIDUxMjY3LCA1MTI3NCwgNTEyODIsIDUxMjkwLCA1MTMxMCwgCi0gICAgNTEzMzAsIDUxMzUwLCA1MTM3MCwgNTEzOTAsIDUxNDEwLCA1MTQzMCwgNTE0NTAsIDUxNDU2LCA1MTQ2MywgNTE0NzIsIAotICAgIDUxNDgwLCA1MTQ4OCwgNTE0OTMsIDUxNDk2LCA1MTQ5OSwgNTE1MDQsIDUxNTA3LCA1MTUyNiwgNTE1MzMsIDUxNTM5LCAKLSAgICA1MTU0NSwgNTE1NDksIDUxNTUyLCA1MTU1NSwgNTE1NTgsIDUxNTcwLCA1MTU4MywgNTE1OTAsIDUxNTk3LCA1MTYwMCwgCi0gICAgNTE2MDQsIDUxNjA3LCA1MTYxMiwgNTE2MTcsIDUxNjIyLCA1MTYyOCwgNTE2MzcsIDUxNjQ0LCA1MTY1MSwgNTE2NTksIAotICAgIDUxNjY2LCA1MTY3MywgNTE2NzYsIDUxNjgyLCA1MTY4OCwgNTE2OTEsIDUxNjk0LCA1MTY5OSwgNTE3MDQsIDUxNzEwLCAKLSAgICA1MTcxNiwgNTE3MjAsIDUxNzI1LCA1MTczMiwgNTE3MzYsIDUxNzQyLCA1MTc0NiwgNTE3NTAsIDUxNzU4LCA1MTc3MCwgCi0gICAgNTE3NzksIDUxNzgzLCA1MTc4NSwgNTE3OTQsIDUxODAzLCA1MTgwOSwgNTE4MTIsIDUxODE4LCA1MTgyNCwgNTE4MjksIAotICAgIDUxODM0LCA1MTgzOSwgNTE4NDQsIDUxODQ5LCA1MTg1NCwgNTE4NTYsIDUxODYyLCA1MTg2NywgNTE4NzQsIDUxODc4LCAKLSAgICA1MTg4NCwgNTE4ODcsIDUxODkxLCA1MTg5OCwgNTE5MDUsIDUxOTA3LCA1MTkwOSwgNTE5MTUsIDUxOTIxLCA1MTkyNywgCi0gICAgNTE5MzYsIDUxOTQ1LCA1MTk1MiwgNTE5NTksIDUxOTY1LCA1MTk3MSwgNTE5NzYsIDUxOTgxLCA1MTk4NiwgNTE5OTIsIAotICAgIDUxOTk4LCA1MjAwMywgNTIwMTAsIDUyMDE0LCA1MjAxOCwgNTIwMzEsIDUyMDQ0LCA1MjA1NiwgNTIwNjUsIDUyMDcxLCAKLSAgICA1MjA3OCwgNTIwODMsIDUyMDg4LCA1MjA5MywgNTIwOTgsIDUyMTAzLCA1MjEwNSwgNTIxMTIsIDUyMTE5LCA1MjEyNiwgCi0gICAgNTIxMzMsIDUyMTQwLCA1MjE0OCwgNTIxNTQsIDUyMTU5LCA1MjE2NSwgNTIxNzEsIDUyMTc3LCA1MjE4NCwgNTIxOTAsIAotICAgIDUyMTk4LCA1MjIwNiwgNTIyMTQsIDUyMjIyLCA1MjIyOSwgNTIyMzUsIDUyMjQxLCA1MjI1MCwgNTIyNTQsIDUyMjYzLCAKLSAgICA1MjI3MiwgNTIyODEsIDUyMjg5LCA1MjI5MywgNTIyOTksIDUyMzA2LCA1MjMxMywgNTIzMTcsIDUyMzIzLCA1MjMzMCwgCi0gICAgNTIzMzUsIDUyMzQwLCA1MjM0NiwgNTIzNTEsIDUyMzU2LCA1MjM2MywgNTIzNzAsIDUyMzc1LCA1MjM4MCwgNTIzODgsIAotICAgIDUyMzk2LCA1MjQwNiwgNTI0MTYsIDUyNDIzLCA1MjQzMCwgNTI0MzQsIDUyNDM4LCA1MjQ1MCwgNTI0NTYsIDUyNDYyLCAKLSAgICA1MjQ2NywgNTI0NzIsIDUyNDc5LCA1MjQ4NiwgNTI0OTIsIDUyNDk4LCA1MjUwNywgNTI1MTUsIDUyNTIzLCA1MjUzMCwgCi0gICAgNTI1MzcsIDUyNTQ0LCA1MjU1MCwgNTI1NTcsIDUyNTYzLCA1MjU3MCwgNTI1NzcsIDUyNTg0LCA1MjU5MSwgNTI1OTcsIAotICAgIDUyNjAyLCA1MjYxMSwgNTI2MjEsIDUyNjI4LCA1MjYzNywgNTI2NDMsIDUyNjQ4LCA1MjY1MywgNTI2NjMsIDUyNjY5LCAKLSAgICA1MjY3NSwgNTI2ODEsIDUyNjg5LCA1MjY5NCwgNTI3MDEsIDUyNzA4LCA1MjcxOSwgNTI3MjYsIDUyNzMzLCA1Mjc0MCwgCi0gICAgNTI3NDcsIDUyNzU0LCA1Mjc2MSwgNTI3NjgsIDUyNzgwLCA1Mjc5MiwgNTI4MDMsIDUyODE0LCA1MjgyNywgNTI4NDAsIAotICAgIDUyODQ1LCA1Mjg1MCwgNTI4NTksIDUyODY4LCA1Mjg3NSwgNTI4ODIsIDUyODkxLCA1MjkwMCwgNTI5MDgsIDUyOTE2LCAKLSAgICA1MjkyNCwgNTI5MzIsIDUyOTQyLCA1Mjk1MiwgNTI5NjYsIDUyOTgwLCA1Mjk4OCwgNTI5OTYsIDUzMDA4LCA1MzAyMCwgCi0gICAgNTMwMjgsIDUzMDM2LCA1MzA0NiwgNTMwNTYsIDUzMDYxLCA1MzA2NiwgNTMwNzUsIDUzMDg0LCA1MzA4OSwgNTMwOTQsIAotICAgIDUzMTAyLCA1MzEwOCwgNTMxMTQsIDUzMTIyLCA1MzEzMCwgNTMxNDMsIDUzMTU2LCA1MzE2MCwgNTMxNjQsIDUzMTcxLCAKLSAgICA1MzE3OCwgNTMxODUsIDUzMTkzLCA1MzIwMSwgNTMyMTAsIDUzMjE5LCA1MzIyNSwgNTMyMzEsIDUzMjM4LCA1MzI0NSwgCi0gICAgNTMyNTIsIDUzMjU5LCA1MzI2OCwgNTMyNzcsIDUzMjgwLCA1MzI4MywgNTMyODgsIDUzMjkzLCA1MzI5OSwgNTMzMDUsIAotICAgIDUzMzEyLCA1MzMxOSwgNTMzMjksIDUzMzM5LCA1MzM0NiwgNTMzNTMsIDUzMzYxLCA1MzM2OSwgNTMzNzcsIDUzMzg1LCAKLSAgICA1MzM5MywgNTM0MDEsIDUzNDA4LCA1MzQxNSwgNTM0MTksIDUzNDIzLCA1MzQzMCwgNTM0MzcsIDUzNDQyLCA1MzQ0NywgCi0gICAgNTM0NTIsIDUzNDU3LCA1MzQ2MywgNTM0NzcsIDUzNDg0LCA1MzQ5MSwgNTM0OTUsIDUzNDk3LCA1MzQ5OSwgNTM1MDQsIAotICAgIDUzNTA5LCA1MzUxNCwgNTM1MTgsIDUzNTI2LCA1MzUzMywgNTM1NDAsIDUzNTQ4LCA1MzU2MCwgNTM1NjgsIDUzNTc2LCAKLSAgICA1MzU4NywgNTM1OTEsIDUzNTk1LCA1MzYwMSwgNTM2MDksIDUzNjIyLCA1MzYyOSwgNTM2MzYsIDUzNjQzLCA1MzY0OCwgCi0gICAgNTM2NTUsIDUzNjY0LCA1MzY3MiwgNTM2NzgsIDUzNjg0LCA1MzY5MCwgNTM2OTksIDUzNzA4LCA1MzcxNiwgNTM3MjUsIAotICAgIDUzNzMwLCA1MzczMywgNTM3MzgsIDUzNzQ0LCA1Mzc1MCwgNTM3NTYsIDUzNzYyLCA1Mzc2NiwgNTM3NjksIDUzNzczLCAKLSAgICA1Mzc3NywgNTM3ODMsIDUzNzg5LCA1Mzc5NSwgNTM4MDEsIDUzODA1LCA1MzgwOSwgNTM4MTYsIDUzODIzLCA1MzgzMCwgCi0gICAgNTM4MzcsIDUzODQ0LCA1Mzg1MSwgNTM4NjEsIDUzODcxLCA1Mzg3OCwgNTM4ODUsIDUzODkzLCA1MzkwMSwgNTM5MDUsIAotICAgIDUzOTEwLCA1MzkxNSwgNTM5MjEsIDUzOTI3LCA1MzkzMCwgNTM5MzMsIDUzOTM2LCA1MzkzOSwgNTM5NDMsIDUzOTQ4LCAKLSAgICA1Mzk1MywgNTM5NTgsIDUzOTYzLCA1Mzk2OCwgNTM5NzIsIDUzOTc2LCA1Mzk4MCwgNTM5ODQsIDUzOTg4LCA1Mzk5MiwgCi0gICAgNTM5OTYsIDU0MDAyLCA1NDAwNiwgNTQwMTIsIDU0MDE3LCA1NDAyNCwgNTQwMzIsIDU0MDM5LCA1NDA0NywgNTQwNTQsIAotICAgIDU0MDYyLCA1NDA3MSwgNTQwNzgsIDU0MDg4LCA1NDA5OSwgNTQxMDUsIDU0MTE0LCA1NDEyMCwgNTQxMjksIDU0MTM4LCAKLSAgICA1NDE0NCwgNTQxNTAsIDU0MTU0LCA1NDE1OCwgNTQxNjcsIDU0MTc2LCA1NDE4MywgNTQxOTAsIDU0MTk5LCAwLCAwLCAwLCAKLSAgICA1NDIwOCwgNTQyMTMsIDU0MjE3LCA1NDIyMSwgNTQyMjYsIDU0MjMxLCA1NDIzNiwgNTQyNDQsIDU0MjUyLCA1NDI1NSwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTQyNTksIDU0MjY0LCA1NDI2OSwgNTQyNzQsIDU0Mjc5LCAKLSAgICA1NDI4NCwgNTQyODksIDU0Mjk0LCA1NDI5OSwgNTQzMDQsIDU0MzA5LCA1NDMxNSwgNTQzMTksIDU0MzI0LCA1NDMyOSwgCi0gICAgNTQzMzQsIDU0MzM5LCA1NDM0NCwgNTQzNDksIDU0MzU0LCA1NDM1OSwgNTQzNjQsIDU0MzY5LCA1NDM3NCwgNTQzNzksIAotICAgIDU0Mzg0LCA1NDM4OSwgNTQzOTQsIDU0Mzk5LCA1NDQwNCwgNTQ0MDksIDU0NDE0LCA1NDQxOSwgNTQ0MjQsIDU0NDI5LCAKLSAgICA1NDQzNSwgNTQ0NDAsIDU0NDQ2LCA1NDQ1NSwgNTQ0NjAsIDU0NDY4LCA1NDQ3NSwgNTQ0ODQsIDU0NDg5LCA1NDQ5NCwgCi0gICAgNTQ0OTksIDU0NTA1LCAwLCA1NDUxMiwgNTQ1MTcsIDU0NTIyLCA1NDUyNywgNTQ1MzIsIDU0NTM3LCA1NDU0MiwgNTQ1NDcsIAotICAgIDU0NTUyLCA1NDU1NywgNTQ1NjIsIDU0NTY4LCA1NDU3MiwgNTQ1NzcsIDU0NTgyLCA1NDU4NywgNTQ1OTIsIDU0NTk3LCAKLSAgICA1NDYwMiwgNTQ2MDcsIDU0NjEyLCA1NDYxNywgNTQ2MjIsIDU0NjI3LCA1NDYzMiwgNTQ2MzcsIDU0NjQyLCA1NDY0NywgCi0gICAgNTQ2NTIsIDU0NjU3LCA1NDY2MiwgNTQ2NjcsIDU0NjcyLCA1NDY3NywgNTQ2ODIsIDU0Njg4LCA1NDY5MywgNTQ2OTksIAotICAgIDU0NzA4LCA1NDcxMywgNTQ3MjEsIDU0NzI4LCA1NDczNywgNTQ3NDIsIDU0NzQ3LCA1NDc1MiwgNTQ3NTgsIDAsIDU0NzY1LCAKLSAgICA1NDc3MywgNTQ3ODEsIDU0NzkxLCA1NDc5OCwgNTQ4MDYsIDU0ODEyLCA1NDgyMSwgNTQ4MjksIDU0ODM3LCA1NDg0NSwgCi0gICAgNTQ4NTMsIDU0ODYxLCA1NDg2OSwgNTQ4NzQsIDU0ODgxLCA1NDg4NywgNTQ4OTQsIDU0OTAyLCA1NDkwOSwgNTQ5MTYsIAotICAgIDU0OTI0LCA1NDkzMCwgNTQ5MzYsIDU0OTQzLCA1NDk1MCwgNTQ5NjAsIDU0OTcwLCA1NDk3NywgNTQ5ODQsIDU0OTg5LCAKLSAgICA1NDk5OSwgNTUwMDksIDU1MDE0LCA1NTAxOSwgNTUwMjQsIDU1MDI5LCA1NTAzNCwgNTUwMzksIDU1MDQ0LCA1NTA0OSwgCi0gICAgNTUwNTQsIDU1MDU5LCA1NTA2NCwgNTUwNjksIDU1MDc0LCA1NTA3OSwgNTUwODQsIDU1MDg5LCA1NTA5NCwgNTUwOTksIAotICAgIDU1MTA0LCA1NTEwOSwgNTUxMTQsIDU1MTE5LCA1NTEyNCwgNTUxMjksIDU1MTM0LCA1NTEzOSwgNTUxNDQsIDU1MTQ5LCAKLSAgICA1NTE1NCwgNTUxNTksIDU1MTYzLCA1NTE2NywgNTUxNzIsIDU1MTc3LCA1NTE4MiwgNTUxODcsIDU1MTkyLCA1NTE5NywgCi0gICAgNTUyMDIsIDU1MjA3LCA1NTIxMiwgNTUyMTcsIDU1MjIyLCA1NTIyNywgNTUyMzIsIDU1MjM3LCA1NTI0MiwgNTUyNDcsIAotICAgIDU1MjUyLCA1NTI1NywgNTUyNjQsIDU1MjcxLCA1NTI3OCwgNTUyODUsIDU1MjkyLCA1NTI5OSwgNTUzMDYsIDU1MzEzLCAKLSAgICA1NTMyMCwgNTUzMjcsIDU1MzM0LCA1NTM0MSwgNTUzNDgsIDU1MzU1LCA1NTM2MCwgNTUzNjUsIDU1MzcyLCA1NTM3OSwgCi0gICAgNTUzODYsIDU1MzkzLCA1NTQwMCwgNTU0MDcsIDU1NDE0LCA1NTQyMSwgNTU0MjgsIDU1NDM1LCA1NTQ0MiwgNTU0NDksIAotICAgIDU1NDU1LCA1NTQ2MSwgNTU0NjcsIDU1NDczLCA1NTQ4MCwgNTU0ODcsIDU1NDk0LCA1NTUwMSwgNTU1MDgsIDU1NTE1LCAKLSAgICA1NTUyMiwgNTU1MjksIDU1NTM2LCA1NTU0MywgNTU1NTEsIDU1NTU5LCA1NTU2NywgNTU1NzUsIDU1NTgzLCA1NTU5MSwgCi0gICAgNTU1OTksIDU1NjA3LCA1NTYxMSwgNTU2MTcsIDU1NjIzLCA1NTYyNywgNTU2MzMsIDU1NjM5LCA1NTY0NSwgNTU2NTIsIAotICAgIDU1NjU5LCA1NTY2NiwgNTU2NzMsIDU1Njc4LCA1NTY4NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTU2OTAsIDU1Njk4LCAKLSAgICA1NTcwNywgNTU3MTYsIDU1NzI0LCA1NTczMCwgNTU3MzUsIDU1NzQwLCA1NTc0NSwgNTU3NTAsIDU1NzU1LCA1NTc2MCwgCi0gICAgNTU3NjUsIDU1NzcwLCA1NTc3NSwgNTU3ODAsIDU1Nzg1LCA1NTc5MCwgNTU3OTUsIDU1ODAwLCA1NTgwNSwgNTU4MTAsIAotICAgIDU1ODE1LCA1NTgyMCwgNTU4MjUsIDU1ODMwLCA1NTgzNSwgNTU4NDAsIDU1ODQ1LCA1NTg1MCwgNTU4NTUsIDU1ODYwLCAKLSAgICA1NTg2NSwgNTU4NzAsIDU1ODc1LCA1NTg4MCwgNTU4ODUsIDU1ODkwLCA1NTg5NSwgNTU5MDAsIDU1OTA1LCA1NTkxMCwgCi0gICAgNTU5MTUsIDU1OTIwLCA1NTkyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTU5MzAsIDU1OTM0LCA1NTkzOSwgCi0gICAgNTU5NDQsIDU1OTQ5LCA1NTk1NCwgNTU5NjMsIDU1OTY4LCA1NTk3MywgNTU5NzgsIDU1OTgzLCA1NTk4OCwgNTU5OTMsIAotICAgIDU1OTk4LCA1NjAwMywgNTYwMTAsIDU2MDE1LCA1NjAyMCwgNTYwMjksIDU2MDM2LCA1NjA0MSwgNTYwNDYsIDU2MDUxLCAKLSAgICA1NjA1OCwgNTYwNjMsIDU2MDcwLCA1NjA3NSwgNTYwODAsIDU2MDg3LCA1NjA5NCwgNTYwOTksIDU2MTA0LCA1NjEwOSwgCi0gICAgNTYxMTYsIDU2MTIzLCA1NjEyOCwgNTYxMzMsIDU2MTM4LCA1NjE0MywgNTYxNDgsIDU2MTU1LCA1NjE2MiwgNTYxNjcsIAotICAgIDU2MTcyLCA1NjE3NywgNTYxODIsIDU2MTg3LCA1NjE5MiwgNTYxOTcsIDU2MjAyLCA1NjIwNywgNTYyMTIsIDU2MjE3LCAKLSAgICA1NjIyNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTYyMjksIDU2MjM2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCA1NjI0MSwgNTYyNDcsIDU2MjUxLCA1NjI1NSwgNTYyNTksIDU2MjYzLCA1NjI2NywgNTYyNzEsIAotICAgIDU2Mjc1LCA1NjI3OSwgNTYyODMsIDU2Mjg3LCA1NjI5MywgNTYyOTcsIDU2MzAxLCA1NjMwNSwgNTYzMDksIDU2MzEzLCAKLSAgICA1NjMxNywgNTYzMjEsIDU2MzI1LCA1NjMyOSwgNTYzMzMsIDU2MzM3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA1NjM0MSwgNTYzNDUsIDU2MzQ5LCA1NjM1MywgNTYzNTcsIDU2MzYxLCA1NjM2NSwgMCwgNTYzNjksIDU2MzczLCA1NjM3NywgCi0gICAgNTYzODEsIDU2Mzg1LCA1NjM4OSwgNTYzOTMsIDAsIDU2Mzk3LCA1NjQwMSwgNTY0MDUsIDU2NDA5LCA1NjQxMywgNTY0MTcsIAotICAgIDU2NDIxLCAwLCA1NjQyNSwgNTY0MjksIDU2NDMzLCA1NjQzNywgNTY0NDEsIDU2NDQ1LCA1NjQ0OSwgMCwgNTY0NTMsIAotICAgIDU2NDU3LCA1NjQ2MSwgNTY0NjUsIDU2NDY5LCA1NjQ3MywgNTY0NzcsIDAsIDU2NDgxLCA1NjQ4NSwgNTY0ODksIDU2NDkzLCAKLSAgICA1NjQ5NywgNTY1MDEsIDU2NTA1LCAwLCA1NjUwOSwgNTY1MTMsIDU2NTE3LCA1NjUyMSwgNTY1MjUsIDU2NTI5LCA1NjUzMywgCi0gICAgMCwgNTY1MzcsIDU2NTQxLCA1NjU0NSwgNTY1NDksIDU2NTUzLCA1NjU1NywgNTY1NjEsIDAsIDU2NTY1LCA1NjU3MCwgCi0gICAgNTY1NzUsIDU2NTgwLCA1NjU4NSwgNTY1OTAsIDU2NTk1LCA1NjU5OSwgNTY2MDQsIDU2NjA5LCA1NjYxNCwgNTY2MTgsIAotICAgIDU2NjIzLCA1NjYyOCwgNTY2MzMsIDU2NjM4LCA1NjY0MiwgNTY2NDcsIDU2NjUyLCA1NjY1NywgNTY2NjIsIDU2NjY3LCAKLSAgICA1NjY3MiwgNTY2NzYsIDU2NjgxLCA1NjY4NiwgNTY2OTMsIDU2Njk4LCA1NjcwMywgNTY3MDksIDU2NzE2LCA1NjcyMywgCi0gICAgNTY3MzIsIDU2NzM5LCA1Njc0OCwgNTY3NTIsIDU2NzU2LCA1Njc2MiwgNTY3NjgsIDU2Nzc0LCA1Njc4MiwgNTY3ODgsIAotICAgIDU2NzkyLCA1Njc5NiwgNTY4MDAsIDU2ODA2LCA1NjgxMiwgNTY4MTYsIDU2ODE4LCA1NjgyMiwgNTY4MjgsIDU2ODMwLCAKLSAgICA1NjgzNCwgNTY4MzgsIDU2ODQyLCA1Njg0OCwgNTY4NTMsIDU2ODU3LCA1Njg2MSwgNTY4NjYsIDU2ODcyLCA1Njg3NywgCi0gICAgNTY4ODIsIDU2ODg3LCA1Njg5MiwgNTY4OTksIDU2OTA2LCA1NjkxMSwgNTY5MTYsIDU2OTIxLCA1NjkyNiwgNTY5MzEsIAotICAgIDU2OTM2LCA1Njk0MCwgNTY5NDQsIDU2OTUxLCA1Njk1OCwgNTY5NjQsIDU2OTY4LCA1Njk3MywgNTY5NzYsIDU2OTgwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA1Njk4OCwgNTY5OTIsIDU2OTk2LCA1NzAwMSwgNTcwMDYsIDU3MDExLCA1NzAxNSwgNTcwMTksIAotICAgIDU3MDIzLCA1NzAyOCwgNTcwMzMsIDU3MDM3LCA1NzA0MSwgNTcwNDUsIDU3MDQ5LCA1NzA1NCwgNTcwNTksIDU3MDY0LCAKLSAgICA1NzA2OSwgNTcwNzMsIDU3MDc3LCA1NzA4MiwgNTcwODcsIDU3MDkyLCA1NzA5NywgNTcxMDEsIDAsIDU3MTA1LCA1NzEwOSwgCi0gICAgNTcxMTMsIDU3MTE3LCA1NzEyMSwgNTcxMjUsIDU3MTI5LCA1NzEzNCwgNTcxMzksIDU3MTQzLCA1NzE0OCwgNTcxNTMsIAotICAgIDU3MTYyLCA1NzE2NiwgNTcxNzAsIDU3MTc0LCA1NzE4MSwgNTcxODUsIDU3MTkwLCA1NzE5NSwgNTcxOTksIDU3MjAzLCAKLSAgICA1NzIwOSwgNTcyMTQsIDU3MjE5LCA1NzIyNCwgNTcyMjksIDU3MjMzLCA1NzIzNywgNTcyNDEsIDU3MjQ1LCA1NzI0OSwgCi0gICAgNTcyNTQsIDU3MjU5LCA1NzI2MywgNTcyNjcsIDU3MjcyLCA1NzI3NywgNTcyODIsIDU3Mjg2LCA1NzI5MCwgNTcyOTUsIAotICAgIDU3MzAwLCA1NzMwNiwgNTczMTIsIDU3MzE2LCA1NzMyMiwgNTczMjgsIDU3MzMyLCA1NzMzOCwgNTczNDQsIDU3MzQ5LCAKLSAgICA1NzM1NCwgNTczNTgsIDU3MzY0LCA1NzM2OCwgNTczNzIsIDU3Mzc4LCA1NzM4NCwgNTczODksIDU3Mzk0LCA1NzM5OCwgCi0gICAgNTc0MDIsIDU3NDEwLCA1NzQxNiwgNTc0MjIsIDU3NDI4LCA1NzQzMywgNTc0MzgsIDU3NDQzLCA1NzQ0OSwgNTc0NTMsIAotICAgIDU3NDU5LCA1NzQ2MywgNTc0NjcsIDU3NDczLCA1NzQ3OSwgNTc0ODUsIDU3NDkxLCA1NzQ5NywgNTc1MDMsIDU3NTA5LCAKLSAgICA1NzUxNSwgNTc1MjEsIDU3NTI3LCA1NzUzMywgNTc1MzksIDU3NTQzLCA1NzU0OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNTc1NTUsIDU3NTU4LCA1NzU2MiwgNTc1NjYsIDU3NTcwLCA1NzU3NCwgNTc1NzcsIDU3NTgwLCAKLSAgICA1NzU4NCwgNTc1ODgsIDU3NTkyLCA1NzU5NiwgNTc1OTksIDU3NjA0LCA1NzYwOCwgNTc2MTIsIDU3NjE2LCA1NzYyMiwgCi0gICAgNTc2MjYsIDU3NjMwLCA1NzYzNCwgNTc2MzgsIDU3NjQ1LCA1NzY1MSwgNTc2NTUsIDU3NjU5LCA1NzY2MywgNTc2NjcsIAotICAgIDU3NjcxLCA1NzY3NSwgNTc2NzksIDU3NjgzLCA1NzY4NywgNTc2OTEsIDU3Njk1LCA1NzcwMSwgNTc3MDUsIDU3NzA5LCAKLSAgICA1NzcxMywgNTc3MTcsIDU3NzIxLCA1NzcyNSwgNTc3MjksIDU3NzMzLCA1NzczNywgNTc3NDEsIDU3NzQ1LCA1Nzc0OSwgCi0gICAgNTc3NTMsIDU3NzU3LCA1Nzc2MSwgNTc3NjUsIDU3NzcxLCA1Nzc3NywgNTc3ODIsIDU3Nzg3LCA1Nzc5MSwgNTc3OTUsIAotICAgIDU3Nzk5LCA1NzgwMywgNTc4MDcsIDU3ODExLCA1NzgxNSwgNTc4MTksIDU3ODIzLCA1NzgyNywgNTc4MzEsIDU3ODM1LCAKLSAgICA1NzgzOSwgNTc4NDMsIDU3ODQ3LCA1Nzg1MSwgNTc4NTUsIDU3ODU5LCA1Nzg2MywgNTc4NjcsIDU3ODcxLCA1Nzg3NSwgCi0gICAgNTc4NzksIDU3ODgzLCA1Nzg4OSwgNTc4OTMsIDU3ODk3LCA1NzkwMSwgNTc5MDUsIDU3OTA5LCA1NzkxMywgNTc5MTcsIAotICAgIDU3OTIxLCA1NzkyNiwgNTc5MzMsIDU3OTM3LCA1Nzk0MSwgNTc5NDUsIDU3OTQ5LCA1Nzk1MywgNTc5NTcsIDU3OTYxLCAKLSAgICA1Nzk2NSwgNTc5NjksIDU3OTczLCA1Nzk3NywgNTc5ODEsIDU3OTg4LCA1Nzk5MiwgNTc5OTgsIDU4MDAyLCA1ODAwNiwgCi0gICAgNTgwMTAsIDU4MDE0LCA1ODAxOCwgNTgwMjEsIDU4MDI1LCA1ODAyOSwgNTgwMzMsIDU4MDM3LCA1ODA0MSwgNTgwNDUsIAotICAgIDU4MDQ5LCA1ODA1MywgNTgwNTcsIDU4MDYxLCA1ODA2NSwgNTgwNjksIDU4MDczLCA1ODA3NywgNTgwODEsIDU4MDg1LCAKLSAgICA1ODA4OSwgNTgwOTMsIDU4MDk3LCA1ODEwMSwgNTgxMDUsIDU4MTA5LCA1ODExMywgNTgxMTcsIDU4MTIxLCA1ODEyNSwgCi0gICAgNTgxMjksIDU4MTMzLCA1ODEzNywgNTgxNDEsIDU4MTQ1LCA1ODE0OSwgNTgxNTUsIDU4MTU5LCA1ODE2MywgNTgxNjcsIAotICAgIDU4MTcxLCA1ODE3NSwgNTgxNzksIDU4MTgzLCA1ODE4NywgNTgxOTEsIDU4MTk1LCA1ODE5OSwgNTgyMDMsIDU4MjA3LCAKLSAgICA1ODIxMSwgNTgyMTUsIDU4MjE5LCA1ODIyMywgNTgyMjcsIDU4MjMxLCA1ODIzNSwgNTgyMzksIDU4MjQzLCA1ODI0NywgCi0gICAgNTgyNTEsIDU4MjU1LCA1ODI1OSwgNTgyNjMsIDU4MjcxLCA1ODI3NSwgNTgyNzksIDU4MjgzLCA1ODI4NywgNTgyOTEsIAotICAgIDU4Mjk3LCA1ODMwMSwgNTgzMDUsIDU4MzA5LCA1ODMxMywgNTgzMTcsIDU4MzIxLCA1ODMyNSwgNTgzMjksIDU4MzMzLCAKLSAgICA1ODMzNywgNTgzNDEsIDU4MzQ1LCA1ODM0OSwgNTgzNTUsIDU4MzU5LCA1ODM2MywgNTgzNjcsIDU4MzcxLCA1ODM3NSwgCi0gICAgNTgzNzksIDU4MzgzLCA1ODM4NywgNTgzOTEsIDU4Mzk1LCA1ODM5OSwgNTg0MDMsIDU4NDA3LCA1ODQxMSwgNTg0MTUsIAotICAgIDU4NDE5LCA1ODQyMywgNTg0MjcsIDU4NDMxLCA1ODQzNSwgNTg0MzksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU4NDQzLCA1ODQ1MiwgNTg0NjAsIAotICAgIDU4NDcyLCA1ODQ4MywgNTg0OTEsIDU4NTAwLCA1ODUwOSwgNTg1MTksIDU4NTMxLCA1ODU0MywgNTg1NTUsIDAsIDAsIDAsIAotICAgIDAsIDU4NTYxLCA1ODU2NCwgNTg1NjcsIDU4NTcyLCA1ODU3NSwgNTg1ODIsIDU4NTg2LCA1ODU5MCwgNTg1OTQsIDU4NTk4LCAKLSAgICA1ODYwMiwgNTg2MDcsIDU4NjEyLCA1ODYxNiwgNTg2MjAsIDU4NjI1LCA1ODYzMCwgNTg2MzUsIDU4NjQwLCA1ODY0MywgCi0gICAgNTg2NDYsIDU4NjUyLCA1ODY1OCwgNTg2NjMsIDU4NjY4LCA1ODY3NSwgNTg2ODIsIDU4Njg2LCA1ODY5MCwgNTg2OTQsIAotICAgIDU4NzAyLCA1ODcwOCwgNTg3MTUsIDU4NzIwLCA1ODcyNSwgNTg3MzAsIDU4NzM1LCA1ODc0MCwgNTg3NDUsIDU4NzUwLCAKLSAgICA1ODc1NSwgNTg3NjAsIDU4NzY1LCA1ODc3MCwgNTg3NzUsIDU4NzgwLCA1ODc4NSwgNTg3OTEsIDU4Nzk2LCA1ODgwMCwgCi0gICAgNTg4MDYsIDU4ODE3LCA1ODgyNywgNTg4NDIsIDU4ODUyLCA1ODg1NiwgNTg4NjUsIDU4ODcxLCA1ODg3NywgNTg4ODMsIAotICAgIDU4ODg4LCA1ODg5MSwgNTg4OTYsIDU4OTAwLCAwLCA1ODkwNiwgNTg5MTAsIDU4OTEzLCA1ODkxNywgNTg5MjAsIDU4OTI0LCAKLSAgICA1ODkyNywgNTg5MzEsIDU4OTM0LCA1ODkzOCwgNTg5NDEsIDU4OTQ0LCA1ODk0OCwgNTg5NTIsIDU4OTU2LCA1ODk2MCwgCi0gICAgNTg5NjQsIDU4OTY4LCA1ODk3MiwgNTg5NzYsIDU4OTgwLCA1ODk4NCwgNTg5ODgsIDU4OTkyLCA1ODk5NiwgNTkwMDAsIAotICAgIDU5MDA0LCA1OTAwOCwgNTkwMTIsIDU5MDE2LCA1OTAyMCwgNTkwMjQsIDU5MDI4LCA1OTAzMiwgNTkwMzYsIDU5MDQxLCAKLSAgICA1OTA0NSwgNTkwNDksIDU5MDUzLCA1OTA1NywgNTkwNjAsIDU5MDY0LCA1OTA2NywgNTkwNzEsIDU5MDc1LCA1OTA3OSwgCi0gICAgNTkwODMsIDU5MDg2LCA1OTA5MCwgNTkwOTMsIDU5MDk3LCA1OTEwMSwgNTkxMDUsIDU5MTA5LCA1OTExMywgNTkxMTcsIAotICAgIDU5MTIxLCA1OTEyNSwgNTkxMjksIDU5MTMzLCA1OTEzNywgNTkxNDEsIDU5MTQ0LCA1OTE0OCwgNTkxNTIsIDU5MTU2LCAKLSAgICA1OTE2MCwgNTkxNjQsIDU5MTY3LCA1OTE3MiwgNTkxNzYsIDU5MTgxLCA1OTE4NSwgNTkxODgsIDU5MTkyLCA1OTE5NiwgCi0gICAgNTkyMDAsIDU5MjA0LCA1OTIwOSwgNTkyMTMsIDU5MjE3LCA1OTIyMSwgNTkyMjUsIDU5MjI4LCA1OTIzMiwgNTkyMzYsIDAsIAotICAgIDAsIDU5MjQxLCA1OTI0OSwgNTkyNTcsIDU5MjY0LCA1OTI3MSwgNTkyNzUsIDU5MjgxLCA1OTI4NiwgNTkyOTEsIDU5Mjk1LCAKLSAgICA1OTI5OCwgNTkzMDIsIDU5MzA1LCA1OTMwOSwgNTkzMTIsIDU5MzE2LCA1OTMxOSwgNTkzMjMsIDU5MzI2LCA1OTMyOSwgCi0gICAgNTkzMzMsIDU5MzM3LCA1OTM0MSwgNTkzNDUsIDU5MzQ5LCA1OTM1MywgNTkzNTcsIDU5MzYxLCA1OTM2NSwgNTkzNjksIAotICAgIDU5MzczLCA1OTM3NywgNTkzODEsIDU5Mzg1LCA1OTM4OSwgNTkzOTMsIDU5Mzk3LCA1OTQwMSwgNTk0MDUsIDU5NDA5LCAKLSAgICA1OTQxMywgNTk0MTcsIDU5NDIxLCA1OTQyNiwgNTk0MzAsIDU5NDM0LCA1OTQzOCwgNTk0NDIsIDU5NDQ1LCA1OTQ0OSwgCi0gICAgNTk0NTIsIDU5NDU2LCA1OTQ2MCwgNTk0NjQsIDU5NDY4LCA1OTQ3MSwgNTk0NzUsIDU5NDc4LCA1OTQ4MiwgNTk0ODYsIAotICAgIDU5NDkwLCA1OTQ5NCwgNTk0OTgsIDU5NTAyLCA1OTUwNiwgNTk1MTAsIDU5NTE0LCA1OTUxOCwgNTk1MjIsIDU5NTI2LCAKLSAgICA1OTUyOSwgNTk1MzMsIDU5NTM3LCA1OTU0MSwgNTk1NDUsIDU5NTQ5LCA1OTU1MiwgNTk1NTcsIDU5NTYxLCA1OTU2NiwgCi0gICAgNTk1NzAsIDU5NTczLCA1OTU3NywgNTk1ODEsIDU5NTg1LCA1OTU4OSwgNTk1OTQsIDU5NTk4LCA1OTYwMiwgNTk2MDYsIAotICAgIDU5NjEwLCA1OTYxMywgNTk2MTcsIDU5NjIxLCA1OTYyNiwgNTk2MzAsIDU5NjM0LCA1OTYzOCwgNTk2NDIsIDU5NjQ3LCAKLSAgICA1OTY1NCwgNTk2NTgsIDU5NjY0LCAwLCAwLCAwLCAwLCAwLCA1OTY2OSwgNTk2NzMsIDU5Njc3LCA1OTY4MCwgNTk2ODQsIAotICAgIDU5Njg4LCA1OTY5MiwgNTk2OTUsIDU5Njk4LCA1OTcwMiwgNTk3MDYsIDU5NzEwLCA1OTcxNCwgNTk3MTgsIDU5NzIyLCAKLSAgICA1OTcyNiwgNTk3MzAsIDU5NzM0LCA1OTczNywgNTk3NDEsIDU5NzQ1LCA1OTc0OCwgNTk3NTEsIDU5NzU0LCA1OTc1NywgCi0gICAgNTk3NjEsIDU5NzY1LCA1OTc2OSwgNTk3NzMsIDU5Nzc3LCA1OTc4MSwgNTk3ODUsIDU5Nzg5LCA1OTc5MywgNTk3OTcsIAotICAgIDU5ODAwLCA1OTgwMywgNTk4MDcsIDU5ODExLCA1OTgxNSwgNTk4MTksIDAsIDAsIDAsIDU5ODIzLCA1OTgyNywgNTk4MzEsIAotICAgIDU5ODM1LCA1OTgzOSwgNTk4NDMsIDU5ODQ3LCA1OTg1MSwgNTk4NTUsIDU5ODU5LCA1OTg2MywgNTk4NjcsIDU5ODcxLCAKLSAgICA1OTg3NSwgNTk4NzksIDU5ODgzLCA1OTg4NywgNTk4OTEsIDU5ODk1LCA1OTg5OSwgNTk5MDMsIDU5OTA3LCA1OTkxMSwgCi0gICAgNTk5MTUsIDU5OTE5LCA1OTkyMywgNTk5MjcsIDU5OTMxLCA1OTkzNSwgNTk5MzksIDU5OTQzLCA1OTk0NiwgNTk5NTAsIAotICAgIDU5OTUzLCA1OTk1NywgNTk5NjEsIDU5OTY0LCA1OTk2OCwgNTk5NzIsIDU5OTc1LCA1OTk3OSwgNTk5ODMsIDU5OTg3LCAKLSAgICA1OTk5MSwgNTk5OTQsIDU5OTk4LCA2MDAwMiwgNjAwMDYsIDYwMDEwLCA2MDAxNCwgNjAwMTgsIDYwMDIxLCA2MDAyNCwgCi0gICAgNjAwMjgsIDYwMDMyLCA2MDAzNiwgNjAwNDAsIDYwMDQ0LCA2MDA0OCwgNjAwNTIsIDYwMDU2LCA2MDA2MCwgNjAwNjQsIAotICAgIDYwMDY4LCA2MDA3MiwgNjAwNzYsIDYwMDgwLCA2MDA4NCwgNjAwODgsIDYwMDkyLCA2MDA5NiwgNjAxMDAsIDYwMTA0LCAKLSAgICA2MDEwOCwgNjAxMTIsIDYwMTE2LCA2MDEyMCwgNjAxMjQsIDYwMTI4LCA2MDEzMiwgNjAxMzYsIDYwMTQwLCA2MDE0NCwgCi0gICAgNjAxNDgsIDYwMTUyLCA2MDE1NiwgNjAxNjAsIDYwMTY0LCA2MDE2OCwgNjAxNzIsIDYwMTc2LCA2MDE4MCwgNjAxODQsIAotICAgIDYwMTg4LCAwLCA2MDE5MiwgNjAxOTgsIDYwMjA0LCA2MDIwOSwgNjAyMTQsIDYwMjE5LCA2MDIyNSwgNjAyMzEsIDYwMjM3LCAKLSAgICA2MDI0MywgNjAyNDksIDYwMjU1LCA2MDI2MSwgNjAyNjcsIDYwMjczLCA2MDI3OSwgNjAyODUsIDYwMjg5LCA2MDI5MywgCi0gICAgNjAyOTcsIDYwMzAxLCA2MDMwNSwgNjAzMDksIDYwMzEzLCA2MDMxNywgNjAzMjEsIDYwMzI1LCA2MDMyOSwgNjAzMzMsIAotICAgIDYwMzM3LCA2MDM0MSwgNjAzNDUsIDYwMzQ5LCA2MDM1MywgNjAzNTcsIDYwMzYxLCA2MDM2NSwgNjAzNzAsIDYwMzc1LCAKLSAgICA2MDM4MCwgNjAzODUsIDYwMzg5LCA2MDM5MywgMCwgMCwgMCwgMCwgMCwgNjAzOTcsIDYwNDAyLCA2MDQwNywgNjA0MTIsIAotICAgIDYwNDE3LCA2MDQyMiwgNjA0MjcsIDYwNDMyLCA2MDQzNywgNjA0NDIsIDYwNDQ3LCA2MDQ1MiwgNjA0NTcsIDYwNDYyLCAKLSAgICA2MDQ2NywgNjA0NzIsIDYwNDc2LCA2MDQ4MSwgNjA0ODUsIDYwNDkwLCA2MDQ5NSwgNjA1MDAsIDYwNTA1LCA2MDUxMCwgCi0gICAgNjA1MTUsIDYwNTIwLCA2MDUyNSwgNjA1MzAsIDYwNTM1LCA2MDU0MCwgNjA1NDUsIDYwNTUwLCA2MDU1NSwgNjA1NjAsIAotICAgIDYwNTY1LCA2MDU3MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjA1NzUsIDYwNTgwLCA2MDU4NSwgCi0gICAgNjA1OTAsIDYwNTk0LCA2MDU5OSwgNjA2MDMsIDYwNjA4LCA2MDYxMywgNjA2MTgsIDYwNjIzLCA2MDYyOCwgNjA2MzIsIAotICAgIDYwNjM3LCA2MDY0MiwgNjA2NDcsIDYwNjUyLCA2MDY1NiwgNjA2NjAsIDYwNjY0LCA2MDY2OCwgNjA2NzIsIDYwNjc2LCAKLSAgICA2MDY4MCwgNjA2ODQsIDYwNjg4LCA2MDY5MiwgNjA2OTYsIDYwNzAwLCA2MDcwNCwgNjA3MDgsIDYwNzEzLCA2MDcxOCwgCi0gICAgNjA3MjMsIDYwNzI4LCA2MDczMywgNjA3MzgsIDYwNzQzLCA2MDc0OCwgNjA3NTMsIDYwNzU4LCA2MDc2MywgNjA3NjgsIAotICAgIDYwNzczLCA2MDc3OCwgNjA3ODMsIDYwNzg5LCAwLCA2MDc5NiwgNjA3OTksIDYwODAyLCA2MDgwNSwgNjA4MDgsIDYwODExLCAKLSAgICA2MDgxNCwgNjA4MTcsIDYwODIwLCA2MDgyMywgNjA4MjcsIDYwODMxLCA2MDgzNSwgNjA4MzksIDYwODQzLCA2MDg0NywgCi0gICAgNjA4NTEsIDYwODU1LCA2MDg1OSwgNjA4NjMsIDYwODY3LCA2MDg3MSwgNjA4NzUsIDYwODc5LCA2MDg4MywgNjA4ODcsIAotICAgIDYwODkxLCA2MDg5NSwgNjA4OTksIDYwOTAzLCA2MDkwNywgNjA5MTEsIDYwOTE1LCA2MDkxOSwgNjA5MjMsIDYwOTI3LCAKLSAgICA2MDkzMSwgNjA5MzUsIDYwOTM5LCA2MDk0MywgNjA5NDcsIDYwOTU2LCA2MDk2NSwgNjA5NzQsIDYwOTgzLCA2MDk5MiwgCi0gICAgNjEwMDEsIDYxMDEwLCA2MTAxOSwgNjEwMjIsIDYxMDI3LCA2MTAzMiwgNjEwMzcsIDYxMDQyLCA2MTA0NywgNjEwNTIsIAotICAgIDYxMDU3LCA2MTA2MiwgNjEwNjcsIDYxMDcxLCA2MTA3NiwgNjEwODEsIDYxMDg2LCA2MTA5MSwgNjEwOTYsIDYxMTAwLCAKLSAgICA2MTEwNCwgNjExMDgsIDYxMTEyLCA2MTExNiwgNjExMjAsIDYxMTI0LCA2MTEyOCwgNjExMzIsIDYxMTM2LCA2MTE0MCwgCi0gICAgNjExNDQsIDYxMTQ4LCA2MTE1MiwgNjExNTcsIDYxMTYyLCA2MTE2NywgNjExNzIsIDYxMTc3LCA2MTE4MiwgNjExODcsIAotICAgIDYxMTkyLCA2MTE5NywgNjEyMDIsIDYxMjA3LCA2MTIxMiwgNjEyMTcsIDYxMjIyLCA2MTIyOCwgNjEyMzQsIDYxMjM5LCAKLSAgICA2MTI0NCwgNjEyNDcsIDYxMjUwLCA2MTI1MywgNjEyNTYsIDYxMjU5LCA2MTI2MiwgNjEyNjUsIDYxMjY4LCA2MTI3MSwgCi0gICAgNjEyNzUsIDYxMjc5LCA2MTI4MywgNjEyODcsIDYxMjkxLCA2MTI5NSwgNjEyOTksIDYxMzAzLCA2MTMwNywgNjEzMTEsIAotICAgIDYxMzE1LCA2MTMxOSwgNjEzMjMsIDYxMzI3LCA2MTMzMSwgNjEzMzUsIDYxMzM5LCA2MTM0MywgNjEzNDcsIDYxMzUxLCAKLSAgICA2MTM1NSwgNjEzNTksIDYxMzYzLCA2MTM2NywgNjEzNzEsIDYxMzc1LCA2MTM3OSwgNjEzODMsIDYxMzg3LCA2MTM5MSwgCi0gICAgNjEzOTUsIDYxMzk5LCA2MTQwMywgNjE0MDcsIDYxNDExLCA2MTQxNSwgNjE0MTksIDYxNDIzLCA2MTQyNywgNjE0MzEsIAotICAgIDYxNDM2LCA2MTQ0MSwgNjE0NDYsIDYxNDUxLCA2MTQ1NSwgNjE0NjAsIDYxNDY1LCA2MTQ3MCwgNjE0NzUsIDYxNDgwLCAKLSAgICA2MTQ4NSwgNjE0OTAsIDYxNDk1LCA2MTUwMCwgNjE1MDQsIDYxNTEwLCA2MTUxNiwgNjE1MjIsIDYxNTI4LCA2MTUzNCwgCi0gICAgNjE1NDAsIDYxNTQ2LCA2MTU1MiwgNjE1NTgsIDYxNTY0LCA2MTU3MCwgNjE1NzYsIDYxNTc5LCA2MTU4MiwgNjE1ODUsIAotICAgIDYxNTkwLCA2MTU5MywgNjE1OTYsIDYxNTk5LCA2MTYwMiwgNjE2MDUsIDYxNjA4LCA2MTYxMiwgNjE2MTYsIDYxNjIwLCAKLSAgICA2MTYyNCwgNjE2MjgsIDYxNjMyLCA2MTYzNiwgNjE2NDAsIDYxNjQ0LCA2MTY0OCwgNjE2NTIsIDYxNjU2LCA2MTY2MCwgCi0gICAgNjE2NjMsIDYxNjY2LCA2MTY3MCwgNjE2NzQsIDYxNjc4LCA2MTY4MiwgNjE2ODUsIDYxNjg5LCA2MTY5MywgNjE2OTcsIAotICAgIDYxNzAxLCA2MTcwNCwgNjE3MDgsIDYxNzEyLCA2MTcxNiwgNjE3MjAsIDYxNzIzLCA2MTcyNywgNjE3MzEsIDYxNzM0LCAKLSAgICA2MTczOCwgNjE3NDIsIDYxNzQ2LCA2MTc1MCwgNjE3NTQsIDYxNzU4LCA2MTc2MiwgMCwgNjE3NjYsIDYxNzY5LCA2MTc3MiwgCi0gICAgNjE3NzUsIDYxNzc4LCA2MTc4MSwgNjE3ODQsIDYxNzg3LCA2MTc5MCwgNjE3OTMsIDYxNzk2LCA2MTc5OSwgNjE4MDIsIAotICAgIDYxODA1LCA2MTgwOCwgNjE4MTEsIDYxODE0LCA2MTgxNywgNjE4MjAsIDYxODIzLCA2MTgyNiwgNjE4MjksIDYxODMyLCAKLSAgICA2MTgzNSwgNjE4MzgsIDYxODQxLCA2MTg0NCwgNjE4NDcsIDYxODUwLCA2MTg1MywgNjE4NTYsIDYxODU5LCA2MTg2MiwgCi0gICAgNjE4NjUsIDYxODY4LCA2MTg3MSwgNjE4NzQsIDYxODc3LCA2MTg4MCwgNjE4ODMsIDYxODg2LCA2MTg4OSwgNjE4OTIsIAotICAgIDYxODk1LCA2MTg5OCwgNjE5MDEsIDYxOTA0LCA2MTkwNywgNjE5MTAsIDYxOTEzLCA2MTkxNiwgNjE5MTksIDYxOTIyLCAKLSAgICA2MTkyNSwgNjE5MjgsIDYxOTMxLCA2MTkzNCwgNjE5MzcsIDYxOTQwLCA2MTk0MywgNjE5NDYsIDYxOTQ5LCA2MTk1MiwgCi0gICAgNjE5NTUsIDYxOTU4LCA2MTk2MSwgNjE5NjQsIDYxOTY3LCA2MTk3MCwgNjE5NzMsIDYxOTc2LCA2MTk3OSwgNjE5ODIsIAotICAgIDYxOTg1LCA2MTk4OCwgNjE5OTEsIDYxOTk0LCA2MTk5NywgNjIwMDAsIDYyMDAzLCA2MjAwNiwgNjIwMDksIDYyMDEyLCAKLSAgICA2MjAxNSwgNjIwMTgsIDYyMDIxLCA2MjAyNCwgNjIwMjcsIDYyMDMwLCA2MjAzOCwgNjIwNDUsIDYyMDUyLCA2MjA1OSwgCi0gICAgNjIwNjYsIDYyMDczLCA2MjA4MCwgNjIwODcsIDYyMDk0LCA2MjEwMSwgNjIxMDksIDYyMTE3LCA2MjEyNSwgNjIxMzMsIAotICAgIDYyMTQxLCA2MjE0OSwgNjIxNTcsIDYyMTY1LCA2MjE3MywgNjIxODEsIDYyMTg5LCA2MjE5NywgNjIyMDUsIDYyMjEzLCAKLSAgICA2MjIyMSwgNjIyMjQsIDYyMjI3LCA2MjIzMCwgNjIyMzIsIDYyMjM1LCA2MjIzOCwgNjIyNDEsIDYyMjQ2LCA2MjI1MSwgCi0gICAgNjIyNTQsIDYyMjYxLCA2MjI2OCwgNjIyNzUsIDYyMjgyLCA2MjI4NSwgNjIyOTAsIDYyMjkyLCA2MjI5NiwgNjIyOTgsIAotICAgIDYyMzAwLCA2MjMwMywgNjIzMDYsIDYyMzA5LCA2MjMxMiwgNjIzMTUsIDYyMzE4LCA2MjMyMSwgNjIzMjYsIDYyMzMxLCAKLSAgICA2MjMzNCwgNjIzMzcsIDYyMzQwLCA2MjM0MywgNjIzNDYsIDYyMzQ5LCA2MjM1MiwgNjIzNTYsIDYyMzU5LCA2MjM2MiwgCi0gICAgNjIzNjUsIDYyMzY4LCA2MjM3MSwgNjIzNzUsIDYyMzc4LCA2MjM4MSwgNjIzODQsIDYyMzg5LCA2MjM5NCwgNjIzOTksIAotICAgIDYyNDA0LCA2MjQwOSwgNjI0MTQsIDYyNDE5LCA2MjQyNCwgNjI0MjksIDYyNDM3LCA2MjQzOSwgNjI0NDIsIDYyNDQ1LCAKLSAgICA2MjQ0OCwgNjI0NTEsIDYyNDU2LCA2MjQ2NCwgNjI0NjcsIDYyNDcwLCA2MjQ3NCwgNjI0NzcsIDYyNDgwLCA2MjQ4MywgCi0gICAgNjI0ODgsIDYyNDkxLCA2MjQ5NCwgNjI0OTksIDYyNTAyLCA2MjUwNSwgNjI1MTAsIDYyNTEzLCA2MjUxNiwgNjI1MjEsIAotICAgIDYyNTI2LCA2MjUzMSwgNjI1MzQsIDYyNTM3LCA2MjU0MCwgNjI1NDMsIDYyNTQ5LCA2MjU1MiwgNjI1NTUsIDYyNTU4LCAKLSAgICA2MjU2MCwgNjI1NjMsIDYyNTY2LCA2MjU2OSwgNjI1NzQsIDYyNTc3LCA2MjU4MCwgNjI1ODMsIDYyNTg2LCA2MjU4OSwgCi0gICAgNjI1OTQsIDYyNTk3LCA2MjYwMCwgNjI2MDMsIDYyNjA2LCA2MjYwOSwgNjI2MTIsIDYyNjE1LCA2MjYxOCwgNjI2MjEsIAotICAgIDYyNjI2LCA2MjYzMCwgNjI2MzcsIDYyNjQ0LCA2MjY1MSwgNjI2NTgsIDYyNjY1LCA2MjY3MiwgNjI2NzksIDYyNjg2LCAKLSAgICA2MjY5MywgNjI3MDEsIDYyNzA5LCA2MjcxNywgNjI3MjUsIDYyNzMzLCA2Mjc0MSwgNjI3NDksIDYyNzU3LCA2Mjc2NSwgCi0gICAgNjI3NzMsIDYyNzgxLCA2Mjc4OSwgNjI3OTcsIDYyODA1LCA2MjgxMywgNjI4MjEsIDYyODI5LCA2MjgzNywgNjI4NDUsIAotICAgIDYyODUzLCA2Mjg2MSwgNjI4NjksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDE0NywgMTUxLCAxNTYsIDE2MSwgMTY1LCAxNzAsIDE3NSwgMTc5LCAxODQsIDE4OSwgMTk0LCAxOTksIDIwNCwgMjA3LCAKKyAgICAyMTEsIDIxNCwgMjE4LCAyMjEsIDIyNSwgMjI5LCAyMzQsIDIzOSwgMjQ0LCAyNDgsIDI1MywgMjU4LCAyNjMsIDI2NywgCisgICAgMjcyLCAyNzcsIDI4MSwgMjg1LCAyOTAsIDI5NCwgMjk5LCAzMDQsIDMwOCwgMzEzLCAzMTgsIDMyMiwgMzI3LCAzMzIsIAorICAgIDMzNywgMzQyLCAzNDcsIDM1MSwgMzU0LCAzNTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM1OSwgMzYzLCAzNjgsIAorICAgIDM3MSwgMzc0LCAzNzcsIDM4MCwgMzgzLCAzODYsIDM4OCwgMzkxLCAzOTcsIDQwNSwgNDA4LCA0MTIsIDQxNSwgNDE3LCAKKyAgICA0MjAsIDQyMywgNDI2LCA0MjksIDQzMywgNDM2LCA0MzksIDQ0MywgNDQ1LCA0NDgsIDQ1NCwgNDYyLCA0NjksIDQ3NiwgCisgICAgNDgzLCA0ODgsIDQ5NSwgNTAxLCA1MDgsIDUxNCwgNTIxLCA1MjksIDUzNCwgNTQyLCA1NDksIDU1NSwgNTYyLCA1NjksIAorICAgIDU3NywgNTg0LCA1OTIsIDYwMCwgNjA1LCA2MTIsIDYxOSwgNjI1LCA2MzIsIDYzOCwgNjQ1LCA2NDgsIDY1NCwgNjYxLCAKKyAgICA2NjcsIDY3NCwgNjgxLCA2ODgsIDY5MywgNzAwLCA3MDcsIDcxMywgNzIwLCA3MjYsIDczMywgNzQxLCA3NDYsIDc1NCwgCisgICAgNzYxLCA3NjcsIDc3NCwgNzgxLCA3ODksIDc5NiwgODA0LCA4MTIsIDgxNywgODI0LCA4MzEsIDgzNywgODQ0LCA4NTAsIAorICAgIDg1NywgODYwLCA4NjYsIDg3MywgODc5LCA4ODYsIDg5MywgOTAwLCA5MDUsIDkxMywgOTIwLCA5MjcsIDkzNCwgOTQxLCAKKyAgICA5NDgsIDk1NSwgOTYyLCA5NjksIDk3NywgOTg1LCA5OTMsIDEwMDEsIDEwMDksIDEwMTcsIDEwMjUsIDEwMzMsIDEwNDAsIAorICAgIDEwNDcsIDEwNTQsIDEwNjEsIDEwNjgsIDEwNzUsIDEwODIsIDEwODksIDEwOTYsIDExMDMsIDExMTAsIDExMTcsIDExMjUsIAorICAgIDExMzMsIDExNDEsIDExNDksIDExNTcsIDExNjUsIDExNzMsIDExODEsIDExODksIDExOTcsIDEyMDQsIDEyMTEsIDEyMTgsIAorICAgIDEyMjUsIDEyMzMsIDEyNDEsIDEyNDksIDEyNTcsIDEyNjUsIDEyNzMsIDEyODEsIDEyODcsIDEyOTIsIDEyOTcsIDEzMDUsIAorICAgIDEzMTMsIDEzMjEsIDEzMjksIDEzMzQsIDEzNDEsIDEzNDgsIDEzNTYsIDEzNjQsIDEzNzIsIDEzODAsIDEzOTAsIDE0MDAsIAorICAgIDE0MDcsIDE0MTQsIDE0MjEsIDE0MjgsIDE0MzYsIDE0NDQsIDE0NTIsIDE0NjAsIDE0NzEsIDE0NzYsIDE0ODEsIDE0ODgsIAorICAgIDE0OTUsIDE1MDIsIDE1MDksIDE1MTYsIDE1MjMsIDE1MjgsIDE1MzMsIDE1NDAsIDE1NDcsIDE1NTUsIDE1NjMsIDE1NzEsIAorICAgIDE1NzksIDE1ODYsIDE1OTMsIDE2MDEsIDE2MDksIDE2MTcsIDE2MjUsIDE2MzMsIDE2NDEsIDE2NDksIDE2NTcsIDE2NjUsIAorICAgIDE2NzMsIDE2ODAsIDE2ODcsIDE2OTMsIDE2OTksIDE3MDYsIDE3MTMsIDE3MjAsIDE3MjcsIDE3MzUsIDE3NDMsIDE3NTAsIAorICAgIDE3NTcsIDE3NjQsIDE3NzEsIDE3NzksIDE3ODcsIDE3OTUsIDE4MDMsIDE4MTEsIDE4MTgsIDE4MjUsIDE4MzMsIDE4NDEsIAorICAgIDE4NDksIDE4NTcsIDE4NjMsIDE4NjksIDE4NzUsIDE4ODIsIDE4ODksIDE4OTQsIDE4OTksIDE5MDQsIDE5MTEsIDE5MTgsIAorICAgIDE5MjUsIDE5MzIsIDE5NDAsIDE5NDgsIDE5NTUsIDE5NjEsIDE5NjYsIDE5NzEsIDE5NzgsIDE5ODUsIDE5OTIsIDE5OTcsIAorICAgIDIwMDIsIDIwMDcsIDIwMTQsIDIwMjEsIDIwMjgsIDIwMzUsIDIwNDIsIDIwNDgsIDIwNTYsIDIwNjYsIDIwNzQsIDIwODEsIAorICAgIDIwODgsIDIwOTMsIDIwOTgsIDIxMDUsIDIxMTIsIDIxMTYsIDIxMjEsIDIxMjYsIDIxMzEsIDIxMzksIDIxNDgsIDIxNTUsIAorICAgIDIxNjIsIDIxNzEsIDIxNzgsIDIxODUsIDIxOTAsIDIxOTcsIDIyMDQsIDIyMTEsIDIyMTgsIDIyMjUsIDIyMzAsIDIyMzcsIAorICAgIDIyNDQsIDIyNTIsIDIyNTcsIDIyNjIsIDIyNjcsIDIyNzcsIDIyODEsIDIyODcsIDIyOTMsIDIyOTksIDIzMDUsIDIzMTMsIAorICAgIDIzMjYsIDIzMzQsIDIzMzksIDIzNDksIDIzNTQsIDIzNTksIDIzNjksIDIzNzQsIDIzODEsIDIzODgsIDIzOTYsIDI0MDQsIAorICAgIDI0MTEsIDI0MTgsIDI0MjUsIDI0MzIsIDI0NDIsIDI0NTIsIDI0NjEsIDI0NzAsIDI0ODAsIDI0OTAsIDI1MDAsIDI1MTAsIAorICAgIDI1MTYsIDI1MjYsIDI1MzYsIDI1NDYsIDI1NTYsIDI1NjQsIDI1NzIsIDI1NzksIDI1ODYsIDI1OTQsIDI2MDIsIDI2MTAsIAorICAgIDI2MTgsIDI2MjUsIDI2MzIsIDI2NDIsIDI2NTIsIDI2NjAsIDI2NjgsIDI2NzYsIDI2ODEsIDI2OTEsIDI2OTYsIDI3MDMsIAorICAgIDI3MTAsIDI3MTUsIDI3MjAsIDI3MjgsIDI3MzYsIDI3NDYsIDI3NTYsIDI3NjMsIDI3NzAsIDI3NzksIDI3ODgsIDI3OTYsIAorICAgIDI4MDQsIDI4MTMsIDI4MjIsIDI4MzAsIDI4MzgsIDI4NDcsIDI4NTYsIDI4NjUsIDI4NzQsIDI4ODQsIDI4OTQsIDI5MDIsIAorICAgIDI5MTAsIDI5MTksIDI5MjgsIDI5MzcsIDI5NDYsIDI5NTYsIDI5NjYsIDI5NzQsIDI5ODIsIDI5OTEsIDMwMDAsIDMwMDksIAorICAgIDMwMTgsIDMwMjcsIDMwMzYsIDMwNDEsIDMwNDYsIDMwNTQsIDMwNjIsIDMwNzIsIDMwODAsIDMwODUsIDMwOTAsIDMwOTcsIAorICAgIDMxMDQsIDMxMTEsIDMxMTgsIDMxMjUsIDMxMzIsIDMxNDIsIDMxNTIsIDMxNjIsIDMxNzIsIDMxNzksIDMxODYsIDMxOTYsIAorICAgIDMyMDYsIDMyMTQsIDMyMjIsIDMyMzAsIDMyMzgsIDMyNDYsIDMyNTMsIDMyNjAsIDMyNjcsIDMyNzMsIDMyODAsIDMyODcsIAorICAgIDMyOTQsIDMzMDMsIDMzMTMsIDMzMjMsIDMzMzAsIDMzMzcsIDMzNDMsIDMzNDgsIDMzNTUsIDMzNjEsIDMzNjcsIDMzNzQsIAorICAgIDMzODEsIDMzOTIsIDM0MDIsIDM0MDksIDM0MTYsIDM0MjMsIDM0MzAsIDM0MzYsIDM0NDEsIDM0NDgsIDM0NTQsIDM0NTksIAorICAgIDM0NjcsIDM0NzUsIDM0ODIsIDM0ODgsIDM0OTMsIDM1MDAsIDM1MDUsIDM1MTIsIDM1MjEsIDM1MzAsIDM1MzksIDM1NDYsIAorICAgIDM1NTIsIDM1NTgsIDM1NjMsIDM1NzAsIDM1NzcsIDM1ODQsIDM1OTEsIDM1OTgsIDM2MDMsIDM2MDgsIDM2MTcsIDM2MjUsIAorICAgIDM2MzQsIDM2MzksIDM2NDUsIDM2NTYsIDM2NjMsIDM2NzEsIDM2ODAsIDM2ODYsIDM2OTIsIDM2OTgsIDM3MDUsIDM3MTAsIAorICAgIDM3MTYsIDM3MjcsIDM3MzYsIDM3NDUsIDM3NTMsIDM3NjEsIDM3NzEsIDM3NzYsIDM3ODMsIDM3OTAsIDM3OTUsIDM4MDcsIAorICAgIDM4MTYsIDM4MjQsIDM4MzEsIDM4NDAsIDM4NDUsIDM4NTAsIDM4NTcsIDM4NjQsIDM4NzEsIDM4NzgsIDM4ODQsIDM4OTMsIAorICAgIDM5MDEsIDM5MDYsIDM5MTQsIDM5MjAsIDM5MjgsIDM5MzYsIDM5NDIsIDM5NDgsIDM5NTQsIDM5NjEsIDM5NjksIDM5NzUsIAorICAgIDM5ODMsIDM5OTAsIDM5OTUsIDQwMDIsIDQwMTAsIDQwMjAsIDQwMjcsIDQwMzQsIDQwNDQsIDQwNTEsIDQwNTgsIDQwNjgsIAorICAgIDQwNzUsIDQwODIsIDQwODksIDQwOTUsIDQxMDEsIDQxMTEsIDQxMjQsIDQxMjksIDQxMzYsIDQxNDEsIDQxNDUsIDQxNTEsIAorICAgIDQxNjAsIDQxNjcsIDQxNzIsIDQxNzcsIDQxODEsIDQxODYsIDQxOTIsIDQxOTYsIDQyMDIsIDQyMDgsIDQyMTQsIDQyMjAsIAorICAgIDQyMjgsIDQyMzMsIDQyMzgsIDQyNDMsIDQyNDgsIDQyNTQsIDQyNTYsIDQyNjEsIDQyNjUsIDQyNzEsIDQyNzcsIDQyODMsIAorICAgIDQyODgsIDQyOTUsIDQzMDIsIDQzMDgsIDQzMTUsIDQzMjMsIDQzMzEsIDQzMzYsIDQzNDEsIDQzNDUsIDQzNTAsIDQzNTIsIAorICAgIDQzNTQsIDQzNTcsIDQzNTksIDQzNjEsIDQzNjYsIDQzNzEsIDQzNzcsIDQzODIsIDQzODYsIDQzOTEsIDQzOTYsIDQ0MDUsIAorICAgIDQ0MTEsIDQ0MTYsIDQ0MjIsIDQ0MjcsIDQ0MzMsIDQ0NDEsIDQ0NDksIDQ0NTMsIDQ0NTcsIDQ0NjIsIDQ0NjgsIDQ0NzQsIAorICAgIDQ0ODAsIDQ0ODYsIDQ0OTEsIDQ0OTksIDQ1MDgsIDQ1MTcsIDQ1MjEsIDQ1MjcsIDQ1MzQsIDQ1NDEsIDQ1NDgsIDQ1NTUsIAorICAgIDQ1NTksIDQ1NjQsIDQ1NjksIDQ1NzQsIDQ1NzksIDQ1ODQsIDQ1ODYsIDQ1ODksIDQ1OTIsIDQ1OTUsIDQ1OTgsIDQ2MDEsIAorICAgIDQ2MDUsIDQ2MDksIDQ2MTUsIDQ2MTgsIDQ2MjMsIDQ2MjksIDQ2MzUsIDQ2MzgsIDQ2NDMsIDQ2NDksIDQ2NTMsIDQ2NTksIAorICAgIDQ2NjUsIDQ2NzEsIDQ2NzcsIDQ2ODIsIDQ2ODcsIDQ2OTIsIDQ2OTUsIDQ3MDEsIDQ3MDYsIDQ3MTEsIDQ3MTUsIDQ3MjAsIAorICAgIDQ3MjYsIDQ3MzIsIDQ3MzUsIDQ3MzksIDQ3NDMsIDQ3NDcsIDQ3NTAsIDQ3NTMsIDQ3NTgsIDQ3NjIsIDQ3NjksIDQ3NzMsIAorICAgIDQ3NzksIDQ3ODMsIDQ3ODksIDQ3OTMsIDQ3OTcsIDQ4MDEsIDQ4MDYsIDQ4MTEsIDQ4MTgsIDQ4MjQsIDQ4MzEsIDQ4MzcsIAorICAgIDQ4NDMsIDQ4NDksIDQ4NTIsIDQ4NTYsIDQ4NjAsIDQ4NjMsIDQ4NjcsIDQ4NzIsIDQ4NzcsIDQ4ODEsIDQ4ODUsIDQ4OTEsIAorICAgIDQ4OTUsIDQ4OTksIDQ5MDQsIDQ5MTAsIDQ5MTUsIDQ5MjEsIDQ5MjUsIDQ5MzIsIDQ5MzcsIDQ5NDIsIDQ5NDcsIDQ5NTIsIAorICAgIDQ5NTgsIDQ5NjEsIDQ5NjUsIDQ5NzAsIDQ5NzUsIDQ5ODQsIDQ5OTAsIDQ5OTUsIDQ5OTksIDUwMDQsIDUwMDgsIDUwMTMsIAorICAgIDUwMTcsIDUwMjEsIDUwMjYsIDUwMjksIDUwMzUsIDUwNDAsIDUwNDUsIDUwNTAsIDUwNTUsIDUwNjAsIDUwNjUsIDUwNzEsIAorICAgIDUwNzcsIDUwODMsIDUwODgsIDUwOTMsIDUwOTksIDUxMDUsIDUxMTEsIDUxMTYsIDUxMjEsIDUxMjgsIDUxMzUsIDUxMzksIAorICAgIDUxNDUsIDUxNTIsIDAsIDAsIDUxNTksIDUxNjIsIDUxNzEsIDUxODAsIDUxOTEsIDAsIDAsIDAsIDAsIDAsIDUxOTUsIAorICAgIDUxOTgsIDUyMDMsIDUyMTEsIDUyMTYsIDUyMjQsIDUyMzIsIDAsIDUyNDAsIDAsIDUyNDgsIDUyNTYsIDUyNjQsIDUyNzUsIAorICAgIDUyODAsIDUyODUsIDUyOTAsIDUyOTUsIDUzMDAsIDUzMDUsIDUzMTAsIDUzMTUsIDUzMjAsIDUzMjUsIDUzMzAsIDUzMzUsIAorICAgIDUzNDAsIDUzNDUsIDUzNTAsIDUzNTUsIDAsIDUzNjAsIDUzNjUsIDUzNzAsIDUzNzUsIDUzODAsIDUzODUsIDUzOTAsIAorICAgIDUzOTUsIDU0MDMsIDU0MTEsIDU0MTksIDU0MjcsIDU0MzUsIDU0NDMsIDU0NTQsIDU0NTksIDU0NjQsIDU0NjksIDU0NzQsIAorICAgIDU0NzksIDU0ODQsIDU0ODksIDU0OTQsIDU0OTksIDU1MDQsIDU1MDksIDU1MTQsIDU1MTksIDU1MjQsIDU1MjksIDU1MzQsIAorICAgIDU1MzksIDU1NDUsIDU1NTAsIDU1NTUsIDU1NjAsIDU1NjUsIDU1NzAsIDU1NzUsIDU1ODAsIDU1ODgsIDU1OTYsIDU2MDQsIAorICAgIDU2MTIsIDU2MjAsIDU2MjUsIDU2MjksIDU2MzMsIDU2NDAsIDU2NTAsIDU2NjAsIDU2NjQsIDU2NjgsIDU2NzIsIDU2NzgsIAorICAgIDU2ODUsIDU2ODksIDU2OTQsIDU2OTgsIDU3MDMsIDU3MDcsIDU3MTIsIDU3MTYsIDU3MjEsIDU3MjYsIDU3MzEsIDU3MzYsIAorICAgIDU3NDEsIDU3NDYsIDU3NTEsIDU3NTYsIDU3NjEsIDU3NjYsIDU3NzEsIDU3NzYsIDU3ODEsIDU3ODYsIDU3OTEsIDU3OTUsIAorICAgIDU3OTksIDU4MDUsIDU4MDksIDU4MTQsIDU4MjAsIDU4MjgsIDU4MzMsIDU4MzgsIDU4NDUsIDU4NTAsIDU4NTUsIDU4NjIsIAorICAgIDU4NzEsIDU4ODAsIDU4OTEsIDU4OTksIDU5MDQsIDU5MDksIDU5MTQsIDU5MjEsIDU5MjYsIDU5MzIsIDU5MzcsIDU5NDIsIAorICAgIDU5NDcsIDU5NTIsIDU5NTcsIDU5NjIsIDU5NzAsIDU5NzYsIDU5ODEsIDU5ODUsIDU5OTAsIDU5OTUsIDYwMDAsIDYwMDUsIAorICAgIDYwMTAsIDYwMTUsIDYwMjAsIDYwMjQsIDYwMzAsIDYwMzQsIDYwMzksIDYwNDQsIDYwNDksIDYwNTMsIDYwNTgsIDYwNjMsIAorICAgIDYwNjgsIDYwNzMsIDYwNzcsIDYwODIsIDYwODYsIDYwOTEsIDYwOTYsIDYxMDEsIDYxMDYsIDYxMTIsIDYxMTcsIDYxMjMsIAorICAgIDYxMjcsIDYxMzIsIDYxMzYsIDYxNDAsIDYxNDUsIDYxNTAsIDYxNTUsIDYxNjAsIDYxNjUsIDYxNzAsIDYxNzUsIDYxNzksIAorICAgIDYxODUsIDYxODksIDYxOTQsIDYxOTksIDYyMDQsIDYyMDgsIDYyMTMsIDYyMTgsIDYyMjMsIDYyMjgsIDYyMzIsIDYyMzcsIAorICAgIDYyNDEsIDYyNDYsIDYyNTEsIDYyNTYsIDYyNjEsIDYyNjcsIDYyNzIsIDYyNzgsIDYyODIsIDYyODcsIDYyOTEsIDYyOTksIAorICAgIDYzMDQsIDYzMDksIDYzMTQsIDYzMjEsIDYzMjYsIDYzMzIsIDYzMzcsIDYzNDIsIDYzNDcsIDYzNTIsIDYzNTcsIDYzNjIsIAorICAgIDYzNzAsIDYzNzYsIDYzODEsIDYzODYsIDYzOTEsIDYzOTYsIDY0MDEsIDY0MDcsIDY0MTMsIDY0MjAsIDY0MjcsIDY0MzYsIAorICAgIDY0NDUsIDY0NTIsIDY0NTksIDY0NjgsIDY0NzcsIDY0ODIsIDY0ODcsIDY0OTIsIDY0OTcsIDY1MDIsIDY1MDcsIDY1MTIsIAorICAgIDY1MTcsIDY1MjgsIDY1MzksIDY1NDQsIDY1NDksIDY1NTYsIDY1NjMsIDY1NzEsIDY1NzksIDY1ODQsIDY1ODksIDY1OTQsIAorICAgIDY1OTksIDY2MDMsIDY2MDcsIDY2MTEsIDY2MTcsIDY2MjMsIDY2MjcsIDY2MzQsIDY2MzksIDY2NDksIDY2NTksIDY2NjUsIAorICAgIDY2NzEsIDY2NzksIDY2ODcsIDY2OTUsIDY3MDMsIDY3MTAsIDY3MTcsIDY3MjYsIDY3MzUsIDY3NDMsIDY3NTEsIDY3NTksIAorICAgIDY3NjcsIDY3NzUsIDY3ODMsIDY3OTEsIDY3OTksIDY4MDYsIDY4MTMsIDY4MTksIDY4MjUsIDY4MzMsIDY4NDEsIDY4NDgsIAorICAgIDY4NTUsIDY4NjQsIDY4NzMsIDY4NzksIDY4ODUsIDY4OTMsIDY5MDEsIDY5MDksIDY5MTcsIDY5MjMsIDY5MjksIDY5MzcsIAorICAgIDY5NDUsIDY5NTMsIDY5NjEsIDY5NjgsIDY5NzUsIDY5ODMsIDY5OTEsIDY5OTksIDcwMDcsIDcwMTIsIDcwMTcsIDcwMjQsIAorICAgIDcwMzEsIDcwNDEsIDcwNTEsIDcwNTUsIDcwNjMsIDcwNzEsIDcwNzgsIDcwODUsIDcwOTMsIDcxMDEsIDcxMDgsIDcxMTUsIAorICAgIDcxMjMsIDcxMzEsIDcxMzgsIDcxNDUsIDcxNTMsIDcxNjEsIDcxNjYsIDcxNzMsIDcxODAsIDcxODcsIDcxOTQsIDcyMDAsIAorICAgIDcyMDYsIDcyMTQsIDcyMjIsIDcyMjcsIDcyMzIsIDcyNDAsIDcyNDgsIDcyNTYsIDcyNjQsIDcyNzIsIDcyODAsIDcyODcsIAorICAgIDcyOTQsIDczMDIsIDczMTAsIDczMTgsIDczMjYsIDczMzMsIDczNDAsIDczNDYsIDczNTIsIDczNjEsIDczNzAsIDczNzcsIAorICAgIDczODQsIDczOTEsIDczOTgsIDc0MDUsIDc0MTIsIDc0MTksIDc0MjYsIDc0MzQsIDc0NDIsIDc0NTAsIDc0NTgsIDc0NjYsIAorICAgIDc0NzQsIDc0ODQsIDc0OTQsIDc1MDEsIDc1MDgsIDc1MTUsIDc1MjIsIDc1MjksIDc1MzYsIDc1NDMsIDc1NTAsIDc1NTcsIAorICAgIDc1NjQsIDc1NzEsIDc1NzgsIDc1ODUsIDc1OTIsIDc1OTksIDc2MDYsIDc2MTMsIDc2MjAsIDc2MjcsIDc2MzQsIDc2NDEsIAorICAgIDc2NDgsIDc2NTUsIDc2NjIsIDc2NjcsIDc2NzIsIDc2NzcsIDc2ODIsIDc2ODcsIDc2OTIsIDc2OTcsIDc3MDIsIDc3MDcsIAorICAgIDc3MTIsIDc3MTgsIDc3MjQsIDc3MzMsIDc3NDIsIDc3NTEsIDc3NjAsIDc3NjgsIDc3NzYsIDc3ODQsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDc3OTIsIDc3OTcsIDc4MDIsIDc4MDcsIDc4MTIsIDc4MTcsIDc4MjIsIDc4MjcsIDc4MzIsIAorICAgIDc4MzYsIDc4NDEsIDc4NDYsIDc4NTEsIDc4NTYsIDc4NjEsIDc4NjYsIDc4NzEsIDc4NzYsIDc4ODEsIDc4ODYsIDc4OTEsIAorICAgIDc4OTYsIDc5MDEsIDc5MDYsIDc5MTEsIDc5MTYsIDc5MjEsIDc5MjYsIDc5MzAsIDc5MzUsIDc5NDAsIDc5NDUsIDc5NTAsIAorICAgIDc5NTUsIDc5NjAsIDc5NjUsIDc5NzAsIDc5NzUsIDAsIDAsIDc5ODAsIDc5ODcsIDc5OTAsIDc5OTQsIDc5OTgsIDgwMDEsIAorICAgIDgwMDUsIDAsIDgwMDksIDgwMTQsIDgwMTksIDgwMjQsIDgwMjksIDgwMzQsIDgwMzksIDgwNDQsIDgwNDksIDgwNTMsIAorICAgIDgwNTgsIDgwNjMsIDgwNjgsIDgwNzMsIDgwNzgsIDgwODMsIDgwODgsIDgwOTMsIDgwOTgsIDgxMDMsIDgxMDgsIDgxMTMsIAorICAgIDgxMTgsIDgxMjMsIDgxMjgsIDgxMzMsIDgxMzgsIDgxNDMsIDgxNDcsIDgxNTIsIDgxNTcsIDgxNjIsIDgxNjcsIDgxNzIsIAorICAgIDgxNzcsIDgxODIsIDgxODcsIDgxOTIsIDgxOTcsIDAsIDgyMDQsIDgyMDksIDAsIDAsIDAsIDAsIDgyMTIsIDAsIDgyMTYsIAorICAgIDgyMjEsIDgyMjYsIDgyMzEsIDgyMzgsIDgyNDUsIDgyNTAsIDgyNTUsIDgyNjAsIDgyNjUsIDgyNzAsIDgyNzUsIDgyODAsIAorICAgIDgyODcsIDgyOTIsIDgyOTksIDgzMDYsIDgzMTEsIDgzMTgsIDgzMjMsIDgzMjgsIDgzMzMsIDgzNDAsIDgzNDUsIDgzNTAsIAorICAgIDgzNTcsIDgzNjYsIDgzNzEsIDgzNzYsIDgzODEsIDgzODYsIDgzOTIsIDgzOTcsIDg0MDQsIDg0MTEsIDg0MTgsIDg0MjMsIAorICAgIDg0MjgsIDg0MzMsIDg0MzgsIDg0NDMsIDg0NDgsIDg0NTgsIDg0NjMsIDg0NzEsIDg0NzYsIDg0ODEsIDg0ODYsIDg0OTEsIAorICAgIDg0OTgsIDg1MDUsIDg1MTIsIDg1MTgsIDg1MjQsIDg1MzEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg1MzgsIDg1NDIsIAorICAgIDg1NDYsIDg1NTAsIDg1NTQsIDg1NTgsIDg1NjIsIDg1NjYsIDg1NzAsIDg1NzQsIDg1NzgsIDg1ODMsIDg1ODcsIDg1OTEsIAorICAgIDg1OTYsIDg2MDAsIDg2MDUsIDg2MDksIDg2MTMsIDg2MTcsIDg2MjIsIDg2MjYsIDg2MzEsIDg2MzUsIDg2MzksIDg2NDMsIAorICAgIDg2NDcsIDAsIDAsIDAsIDAsIDAsIDg2NTEsIDg2NTgsIDg2NjYsIDg2NzMsIDg2NzgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDg2ODMsIDg2ODYsIDg2OTAsIDg2OTUsIDg2OTksIDAsIDg3MDMsIDg3MDksIDg3MTUsIDg3MTgsIAorICAgIDg3MjUsIDg3MzQsIDg3MzcsIDg3NDAsIDg3NDUsIDg3NTEsIDg3NTUsIDg3NjMsIDg3NjksIDg3NzUsIDg3ODMsIDg3ODcsIAorICAgIDg3OTIsIDg4MDMsIDg4MDgsIDg4MTIsIDg4MTYsIDg4MjAsIDAsIDAsIDg4MjMsIDg4MzAsIDg4MzQsIDg4NDAsIDg4NDQsIAorICAgIDg4NTEsIDg4NTcsIDg4NjQsIDg4NzAsIDg4NzYsIDg4ODAsIDg4ODQsIDg4OTAsIDg4OTQsIDg4OTgsIDg5MDIsIDg5MDYsIAorICAgIDg5MTAsIDg5MTQsIDg5MTgsIDg5MjIsIDg5MjYsIDg5MzAsIDg5MzQsIDg5MzgsIDg5NDIsIDg5NDYsIDg5NTAsIDg5NTQsIAorICAgIDg5NTgsIDg5NjYsIDg5NzQsIDg5ODQsIDg5OTMsIDkwMDIsIDkwMDUsIDkwMDksIDkwMTMsIDkwMTcsIDkwMjEsIDkwMjUsIAorICAgIDkwMjksIDkwMzMsIDkwMzcsIDkwNDIsIDkwNDYsIDkwNDksIDkwNTIsIDkwNTUsIDkwNTgsIDkwNjEsIDkwNjQsIDkwNjcsIAorICAgIDkwNzAsIDkwNzQsIDkwNzcsIDkwODAsIDkwODUsIDkwOTAsIDkwOTYsIDkwOTksIDkxMDYsIDkxMTUsIDkxMjAsIDkxMjUsIAorICAgIDkxMzIsIDkxMzcsIDkxNDIsIDkxNDYsIDkxNTAsIDkxNTQsIDkxNTgsIDkxNjIsIDkxNjYsIDkxNzAsIDkxNzQsIDkxNzgsIAorICAgIDkxODIsIDkxODcsIDkxOTIsIDkxOTksIDkyMDUsIDkyMTEsIDkyMTcsIDkyMjIsIDkyMzAsIDkyMzgsIDkyNDMsIDkyNDksIAorICAgIDkyNTUsIDkyNjEsIDkyNjcsIDkyNzEsIDkyNzUsIDkyNzksIDkyODYsIDkyOTYsIDkzMDAsIDkzMDQsIDkzMDgsIDkzMTQsIAorICAgIDkzMjIsIDkzMjYsIDkzMzAsIDkzMzcsIDkzNDEsIDkzNDUsIDkzNDksIDkzNTYsIDkzNjMsIDkzNzUsIDkzNzksIDkzODMsIAorICAgIDkzODcsIDkzOTcsIDk0MDYsIDk0MTAsIDk0MTgsIDk0MjUsIDk0MzIsIDk0NDEsIDk0NTIsIDk0NjAsIDk0NjQsIDk0NzMsIAorICAgIDk0ODQsIDk0OTIsIDk1MDUsIDk1MTMsIDk1MjEsIDk1MjksIDk1MzcsIDk1NDMsIDk1NTIsIDk1NTksIDk1NjMsIDk1NzEsIAorICAgIDk1NzUsIDk1ODIsIDk1OTAsIDk1OTQsIDk2MDAsIDk2MDcsIDk2MTQsIDk2MTgsIDk2MjYsIDk2MzAsIDk2MzcsIDk2NDEsIAorICAgIDk2NDksIDk2NTMsIDk2NjEsIDk2NjksIDk2NzYsIDk2ODQsIDk2OTIsIDk2OTksIDk3MDUsIDk3MDksIDk3MTYsIDk3MjQsIAorICAgIDk3MzAsIDk3MzcsIDk3NDQsIDk3NTAsIDk3NTksIDk3NjcsIDk3NzQsIDk3ODAsIDk3ODQsIDk3ODcsIDk3OTEsIDk3OTcsIAorICAgIDk4MDUsIDk4MDksIDk4MTUsIDk4MjEsIDk4MjgsIDk4MzUsIDk4MzgsIDk4NDUsIDk4NTAsIDk4NTgsIDk4NjMsIDk4NjcsIAorICAgIDk4ODAsIDk4OTMsIDk4OTksIDk5MDYsIDk5MTEsIDk5MTcsIDk5MjIsIDk5MjgsIDk5MzgsIDk5NDUsIDk5NTQsIDk5NjQsIAorICAgIDk5NzAsIDk5NzUsIDk5ODAsIDk5ODQsIDk5ODgsIDk5OTMsIDk5OTgsIDEwMDA0LCAxMDAxMiwgMTAwMjAsIDEwMDMxLCAKKyAgICAxMDAzNiwgMTAwNDUsIDEwMDU0LCAxMDA2MSwgMTAwNjcsIDEwMDczLCAxMDA3OSwgMTAwODUsIDEwMDkxLCAxMDA5NywgCisgICAgMTAxMDMsIDEwMTA5LCAxMDExNSwgMTAxMjIsIDEwMTI5LCAxMDEzNiwgMTAxNDIsIDEwMTUwLCAxMDE1OSwgMTAxNjUsIAorICAgIDEwMTcyLCAxMDE3OSwgMTAxODQsIDEwMTg5LCAxMDE5MywgMTAyMDAsIDEwMjA3LCAxMDIxNiwgMTAyMjUsIDEwMjI4LCAKKyAgICAxMDIzMywgMTAyMzgsIDAsIDEwMjQzLCAxMDI0NywgMTAyNTEsIDEwMjU3LCAxMDI2MSwgMTAyNjUsIDEwMjcxLCAxMDI3NSwgCisgICAgMTAyODMsIDEwMjg3LCAxMDI5MSwgMTAyOTUsIDEwMjk5LCAxMDMwMywgMTAzMDksIDEwMzEzLCAxMDMxOSwgMTAzMjMsIAorICAgIDEwMzI3LCAxMDMzMSwgMTAzMzUsIDEwMzM5LCAxMDM0NCwgMTAzNDcsIDEwMzUxLCAxMDM1NywgMTAzNjEsIDEwMzY1LCAKKyAgICAxMDM2OSwgMTAzNzMsIDEwMzc3LCAxMDM4MywgMTAzODksIDEwMzk1LCAxMDM5OSwgMTA0MDMsIDEwNDA4LCAxMDQxMiwgCisgICAgMTA0MTYsIDEwNDIxLCAxMDQyNSwgMTA0MjksIDEwNDM2LCAxMDQ0MywgMTA0NDcsIDEwNDUxLCAxMDQ1NiwgMTA0NjAsIAorICAgIDEwNDY0LCAxMDQ2NywgMTA0NzIsIDEwNDc1LCAxMDQ3OCwgMTA0ODMsIDEwNDg4LCAxMDQ5MiwgMTA0OTYsIDEwNTAyLCAKKyAgICAxMDUwOCwgMTA1MTEsIDAsIDAsIDEwNTE0LCAxMDUyMCwgMTA1MjYsIDEwNTMyLCAxMDU0MiwgMTA1NTQsIDEwNTY2LCAKKyAgICAxMDU4MywgMTA1OTUsIDEwNjA2LCAxMDYxNCwgMTA2MjEsIDEwNjMyLCAxMDY0NywgMTA2NTgsIDEwNjY0LCAxMDY3MywgCisgICAgMTA2ODEsIDEwNjkzLCAxMDcwMywgMTA3MTEsIDEwNzIzLCAxMDczMCwgMTA3MzgsIDEwNzUwLCAxMDc1NiwgMTA3NjIsIAorICAgIDEwNzcwLCAxMDc3OCwgMTA3ODYsIDEwNzkyLCAxMDgwMiwgMTA4MDksIDEwODE5LCAxMDgyOSwgMTA4NDIsIDEwODU2LCAKKyAgICAxMDg3MCwgMTA4ODAsIDEwODkxLCAxMDkwMiwgMTA5MTUsIDEwOTI4LCAxMDk0MiwgMTA5NTQsIDEwOTY2LCAxMDk3OSwgCisgICAgMTA5OTIsIDExMDA0LCAxMTAxNywgMTEwMjYsIDExMDM0LCAxMTAzOSwgMTEwNDQsIDExMDQ5LCAxMTA1NCwgMTEwNTksIAorICAgIDExMDY0LCAxMTA2OSwgMTEwNzQsIDExMDc5LCAxMTA4NCwgMTEwODksIDExMDk0LCAxMTA5OSwgMTExMDQsIDExMTA5LCAKKyAgICAxMTExNCwgMTExMTksIDExMTI0LCAxMTEyOSwgMTExMzQsIDExMTM5LCAxMTE0NCwgMTExNDksIDExMTU0LCAxMTE1OSwgCisgICAgMTExNjQsIDExMTY5LCAxMTE3NCwgMTExNzksIDExMTg0LCAxMTE4OSwgMTExOTQsIDExMTk4LCAxMTIwMywgMTEyMDgsIAorICAgIDExMjEzLCAxMTIxOCwgMTEyMjMsIDExMjI3LCAxMTIzMSwgMTEyMzUsIDExMjM5LCAxMTI0MywgMTEyNDcsIDExMjUxLCAKKyAgICAxMTI1NSwgMTEyNTksIDExMjYzLCAxMTI2NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTEyNzIsIDExMjc3LCAxMTI4MSwgMTEyODUsIDExMjg5LCAxMTI5MywgMTEyOTcsIDExMzAxLCAxMTMwNSwgMTEzMDksIAorICAgIDExMzEzLCAxMTMxNywgMTEzMjIsIDExMzI2LCAxMTMzMCwgMTEzMzQsIDExMzM5LCAxMTM0MywgMTEzNDgsIDExMzUzLCAKKyAgICAxMTM1OCwgMTEzNjIsIDExMzY3LCAxMTM3MiwgMTEzNzcsIDExMzgyLCAxMTM4NiwgMTEzOTEsIDExMzk1LCAxMTQwMCwgCisgICAgMTE0MDUsIDExNDA5LCAxMTQxNCwgMTE0MjEsIDExNDI1LCAxMTQzMCwgMTE0MzQsIDExNDM4LCAxMTQ0MywgMTE0NDcsIAorICAgIDExNDU0LCAxMTQ2MSwgMTE0NjgsIDExNDc0LCAxMTQ4MiwgMTE0OTAsIDExNDk5LCAxMTUwNywgMTE1MTQsIDExNTIxLCAKKyAgICAxMTUyOSwgMTE1MzUsIDExNTQxLCAxMTU0NywgMTE1NTMsIDExNTYwLCAxMTU2NSwgMTE1NjksIDExNTc0LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAxMTU3OCwgMTE1ODMsIDExNTg4LCAxMTU5MywgMTE1OTgsIDExNjAzLCAxMTYwOCwgMTE2MTMsIDExNjE4LCAKKyAgICAxMTYyMywgMTE2MjgsIDExNjMzLCAxMTYzOCwgMTE2NDMsIDExNjQ4LCAxMTY1MywgMTE2NTgsIDExNjYzLCAxMTY2OCwgCisgICAgMTE2NzMsIDExNjc4LCAxMTY4MywgMTE2ODgsIDExNjkzLCAxMTY5OCwgMTE3MDMsIDExNzA4LCAxMTcxNiwgMTE3MjMsIAorICAgIDExNzI5LCAxMTczNCwgMTE3NDIsIDExNzQ5LCAxMTc1NSwgMTE3NjIsIDExNzY4LCAxMTc3MywgMTE3ODAsIDExNzg3LCAKKyAgICAxMTc5MywgMTE3OTgsIDExODAzLCAxMTgwOSwgMTE4MTQsIDExODE5LCAxMTgyNSwgMCwgMCwgMTE4MzAsIDExODM2LCAKKyAgICAxMTg0MiwgMTE4NDgsIDExODU0LCAxMTg2MCwgMTE4NjYsIDExODcxLCAxMTg3OSwgMTE4ODUsIDExODkxLCAxMTg5NywgCisgICAgMTE5MDMsIDExOTA5LCAxMTkxNywgMCwgMTE5MjMsIDExOTI4LCAxMTkzMywgMTE5MzgsIDExOTQzLCAxMTk0OCwgMTE5NTMsIAorICAgIDExOTU4LCAxMTk2MywgMTE5NjgsIDExOTczLCAxMTk3OCwgMTE5ODMsIDExOTg4LCAxMTk5MywgMTE5OTgsIDEyMDAzLCAKKyAgICAxMjAwOCwgMTIwMTMsIDEyMDE4LCAxMjAyMywgMTIwMjgsIDEyMDMzLCAxMjAzOCwgMTIwNDMsIDEyMDQ4LCAxMjA1MywgCisgICAgMTIwNTgsIDAsIDAsIDEyMDYzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA2Mjg3MiwgNjI4ODEsIDYyODkwLCA2MjkwMSwgNjI5MDgsIDYyOTEzLCA2MjkxOCwgNjI5MjUsIDYyOTMyLCA2MjkzOCwgCi0gICAgNjI5NDMsIDYyOTQ4LCA2Mjk1MywgNjI5NTgsIDYyOTY1LCA2Mjk3MCwgNjI5NzUsIDYyOTgwLCA2Mjk5MSwgNjI5OTYsIAotICAgIDYzMDAxLCA2MzAwOCwgNjMwMTMsIDYzMDIwLCA2MzAyNSwgNjMwMzAsIDYzMDM3LCA2MzA0NCwgNjMwNTEsIDYzMDYwLCAKLSAgICA2MzA2OSwgNjMwNzQsIDYzMDc5LCA2MzA4NCwgNjMwOTEsIDYzMDk2LCA2MzEwNiwgNjMxMTMsIDYzMTE4LCA2MzEyMywgCi0gICAgNjMxMjgsIDYzMTMzLCA2MzEzOCwgNjMxNDMsIDYzMTUyLCA2MzE1OSwgNjMxNjYsIDYzMTcxLCA2MzE3OCwgNjMxODMsIAotICAgIDYzMTkwLCA2MzE5OSwgNjMyMTAsIDYzMjE1LCA2MzIyNCwgNjMyMjksIDYzMjM2LCA2MzI0NSwgNjMyNTQsIDYzMjU5LCAKLSAgICA2MzI2NCwgNjMyNzEsIDYzMjc3LCA2MzI4NCwgNjMyOTEsIDYzMjk1LCA2MzI5OSwgNjMzMDIsIDYzMzA2LCA2MzMxMCwgCi0gICAgNjMzMTQsIDYzMzE4LCA2MzMyMiwgNjMzMjYsIDYzMzMwLCA2MzMzMywgNjMzMzcsIDYzMzQxLCA2MzM0NSwgNjMzNDksIAotICAgIDYzMzUzLCA2MzM1NywgNjMzNjAsIDYzMzY0LCA2MzM2OCwgNjMzNzEsIDYzMzc1LCA2MzM3OSwgNjMzODMsIDYzMzg3LCAKLSAgICA2MzM5MSwgNjMzOTUsIDYzMzk5LCA2MzQwMywgNjM0MDcsIDYzNDExLCA2MzQxNSwgNjM0MTksIDYzNDIzLCA2MzQyNywgCi0gICAgNjM0MzEsIDYzNDM1LCA2MzQzOSwgNjM0NDMsIDYzNDQ3LCA2MzQ1MSwgNjM0NTUsIDYzNDU5LCA2MzQ2MywgNjM0NjcsIAotICAgIDYzNDcxLCA2MzQ3NSwgNjM0NzksIDYzNDgzLCA2MzQ4NywgNjM0OTEsIDYzNDk1LCA2MzQ5OSwgNjM1MDMsIDYzNTA3LCAKLSAgICA2MzUxMSwgNjM1MTUsIDYzNTE5LCA2MzUyMywgNjM1MjcsIDYzNTMxLCA2MzUzNSwgNjM1MzksIDYzNTQzLCA2MzU0NywgCi0gICAgNjM1NTAsIDYzNTU0LCA2MzU1OCwgNjM1NjIsIDYzNTY2LCA2MzU3MCwgNjM1NzQsIDYzNTc4LCA2MzU4MiwgNjM1ODYsIAotICAgIDYzNTkwLCA2MzU5NCwgNjM1OTgsIDYzNjAyLCA2MzYwNiwgNjM2MTAsIDYzNjE0LCA2MzYxOCwgNjM2MjIsIDYzNjI2LCAKLSAgICA2MzYzMCwgNjM2MzQsIDYzNjM4LCA2MzY0MiwgNjM2NDYsIDYzNjUwLCA2MzY1NCwgNjM2NTgsIDYzNjYyLCA2MzY2NiwgCi0gICAgNjM2NzAsIDYzNjc0LCA2MzY3OCwgNjM2ODIsIDYzNjg2LCA2MzY5MCwgNjM2OTQsIDYzNjk4LCA2MzcwMiwgNjM3MDYsIAotICAgIDYzNzEwLCA2MzcxNCwgNjM3MTgsIDYzNzIyLCA2MzcyNiwgNjM3MzAsIDYzNzM0LCA2MzczOCwgNjM3NDIsIDYzNzQ2LCAKLSAgICA2Mzc1MCwgNjM3NTQsIDYzNzU4LCA2Mzc2MiwgNjM3NjYsIDYzNzcwLCA2Mzc3NCwgNjM3NzgsIDYzNzgyLCA2Mzc4NiwgCi0gICAgNjM3OTAsIDYzNzk0LCA2Mzc5OCwgNjM4MDIsIDYzODA2LCA2MzgxMCwgNjM4MTQsIDYzODE4LCA2MzgyMiwgNjM4MjYsIAotICAgIDYzODMwLCA2MzgzNCwgNjM4MzgsIDYzODQyLCA2Mzg0NiwgNjM4NTAsIDYzODU0LCA2Mzg1OCwgNjM4NjIsIDYzODY2LCAKLSAgICA2Mzg3MCwgNjM4NzQsIDYzODc4LCA2Mzg4MiwgNjM4ODYsIDYzODkwLCA2Mzg5NCwgNjM4OTgsIDYzOTAyLCA2MzkwNiwgCi0gICAgNjM5MTAsIDYzOTE0LCA2MzkxOCwgNjM5MjIsIDYzOTI2LCA2MzkzMCwgNjM5MzQsIDYzOTM4LCA2Mzk0MiwgNjM5NDYsIAotICAgIDYzOTUwLCA2Mzk1NCwgNjM5NTgsIDYzOTYyLCA2Mzk2NiwgNjM5NzAsIDYzOTc0LCA2Mzk3OCwgNjM5ODIsIDYzOTg2LCAKLSAgICA2Mzk5MCwgNjM5OTQsIDYzOTk4LCA2NDAwMiwgNjQwMDYsIDY0MDEwLCA2NDAxNCwgNjQwMTgsIDY0MDIxLCA2NDAyNSwgCi0gICAgNjQwMjksIDY0MDMzLCA2NDAzNywgNjQwNDEsIDY0MDQ1LCA2NDA0OSwgNjQwNTMsIDY0MDU3LCA2NDA2MSwgNjQwNjUsIAotICAgIDY0MDY5LCA2NDA3MywgNjQwNzcsIDY0MDgxLCA2NDA4NSwgNjQwODksIDY0MDkzLCA2NDA5NywgNjQxMDEsIDY0MTA1LCAKLSAgICA2NDEwOSwgNjQxMTMsIDY0MTE3LCA2NDEyMSwgNjQxMjUsIDY0MTI5LCA2NDEzMywgNjQxMzcsIDY0MTQxLCA2NDE0NSwgCi0gICAgNjQxNDksIDY0MTUzLCA2NDE1NywgNjQxNjEsIDY0MTY1LCA2NDE2OSwgNjQxNzMsIDY0MTc3LCA2NDE4MSwgNjQxODUsIAotICAgIDY0MTg5LCA2NDE5MywgNjQxOTcsIDY0MjAxLCA2NDIwNSwgNjQyMDksIDY0MjEzLCA2NDIxNywgNjQyMjEsIDY0MjI1LCAKLSAgICA2NDIyOSwgNjQyMzMsIDY0MjM3LCA2NDI0MSwgNjQyNDUsIDY0MjQ5LCA2NDI1MywgNjQyNTcsIDY0MjYxLCA2NDI2NSwgCi0gICAgNjQyNjksIDY0MjczLCA2NDI3NywgNjQyODEsIDY0Mjg1LCA2NDI4OSwgNjQyOTMsIDY0Mjk3LCA2NDMwMSwgNjQzMDUsIAotICAgIDY0MzA5LCA2NDMxMywgNjQzMTcsIDY0MzIxLCA2NDMyNSwgNjQzMjksIDY0MzMzLCA2NDMzNywgNjQzNDEsIDY0MzQ1LCAKLSAgICA2NDM0OSwgNjQzNTMsIDY0MzU3LCA2NDM2MSwgNjQzNjUsIDY0MzY5LCA2NDM3MywgNjQzNzcsIDY0MzgxLCA2NDM4NSwgCi0gICAgNjQzODksIDY0MzkzLCA2NDM5NywgNjQ0MDEsIDY0NDA1LCA2NDQwOSwgNjQ0MTMsIDY0NDE3LCA2NDQyMSwgNjQ0MjUsIAotICAgIDY0NDI5LCA2NDQzMywgNjQ0MzcsIDY0NDQxLCA2NDQ0NSwgNjQ0NDksIDY0NDUzLCA2NDQ1NywgNjQ0NjEsIDY0NDY1LCAKLSAgICA2NDQ2OSwgNjQ0NzMsIDY0NDc3LCA2NDQ4MSwgNjQ0ODQsIDY0NDg4LCA2NDQ5MiwgNjQ0OTYsIDY0NTAwLCA2NDUwNCwgCi0gICAgNjQ1MDgsIDY0NTEyLCA2NDUxNiwgNjQ1MjAsIDY0NTI0LCA2NDUyOCwgNjQ1MzIsIDY0NTM2LCA2NDU0MCwgNjQ1NDQsIAotICAgIDY0NTQ4LCA2NDU1MiwgNjQ1NTYsIDY0NTYwLCA2NDU2NCwgNjQ1NjgsIDY0NTcyLCA2NDU3NiwgNjQ1ODAsIDY0NTg0LCAKLSAgICA2NDU4OCwgNjQ1OTIsIDY0NTk2LCA2NDYwMCwgNjQ2MDQsIDY0NjA4LCA2NDYxMiwgNjQ2MTYsIDY0NjIwLCA2NDYyNCwgCi0gICAgNjQ2MjgsIDY0NjMyLCA2NDYzNiwgNjQ2NDAsIDY0NjQ0LCA2NDY0OCwgNjQ2NTIsIDY0NjU2LCA2NDY2MCwgNjQ2NjQsIAotICAgIDY0NjY4LCA2NDY3MiwgNjQ2NzYsIDY0NjgwLCA2NDY4NCwgNjQ2ODgsIDY0NjkyLCA2NDY5NiwgNjQ3MDAsIDY0NzA0LCAKLSAgICA2NDcwOCwgNjQ3MTIsIDY0NzE2LCA2NDcyMCwgNjQ3MjQsIDY0NzI4LCA2NDczMiwgNjQ3MzYsIDY0NzQwLCA2NDc0NCwgCi0gICAgNjQ3NDgsIDY0NzUyLCA2NDc1NiwgNjQ3NjAsIDY0NzY0LCA2NDc2OCwgNjQ3NzIsIDY0Nzc2LCA2NDc4MCwgNjQ3ODQsIAotICAgIDY0Nzg4LCA2NDc5MiwgNjQ3OTYsIDY0ODAwLCA2NDgwNCwgNjQ4MDgsIDY0ODEyLCA2NDgxNiwgNjQ4MjAsIDY0ODI0LCAKLSAgICA2NDgyOCwgNjQ4MzIsIDY0ODM2LCA2NDg0MCwgNjQ4NDMsIDY0ODQ3LCA2NDg1MSwgNjQ4NTUsIDY0ODU5LCA2NDg2MywgCi0gICAgNjQ4NjcsIDY0ODcxLCA2NDg3NSwgNjQ4NzksIDY0ODgzLCA2NDg4NywgNjQ4OTEsIDY0ODk1LCA2NDg5OSwgNjQ5MDMsIAotICAgIDY0OTA3LCA2NDkxMSwgNjQ5MTUsIDY0OTE5LCA2NDkyMywgNjQ5MjcsIDY0OTMxLCA2NDkzNSwgNjQ5MzksIDY0OTQzLCAKLSAgICA2NDk0NywgNjQ5NTEsIDY0OTU1LCA2NDk1OSwgNjQ5NjMsIDY0OTY3LCA2NDk3MSwgNjQ5NzUsIDY0OTc5LCA2NDk4MywgCi0gICAgNjQ5ODcsIDY0OTkxLCA2NDk5NSwgNjQ5OTksIDY1MDAzLCA2NTAwNywgNjUwMTEsIDY1MDE1LCA2NTAxOSwgNjUwMjMsIAotICAgIDY1MDI3LCA2NTAzMSwgNjUwMzUsIDY1MDM5LCA2NTA0MywgNjUwNDcsIDY1MDUxLCA2NTA1NSwgNjUwNTksIDY1MDYzLCAKLSAgICA2NTA2NywgNjUwNzEsIDY1MDc1LCA2NTA3OSwgNjUwODMsIDY1MDg3LCA2NTA5MSwgNjUwOTUsIDY1MDk5LCA2NTEwMywgCi0gICAgNjUxMDcsIDY1MTExLCA2NTExNSwgNjUxMTksIDY1MTIzLCA2NTEyNywgNjUxMzEsIDY1MTM1LCA2NTEzOSwgNjUxNDMsIAotICAgIDY1MTQ3LCA2NTE1MSwgNjUxNTUsIDY1MTU5LCA2NTE2MywgNjUxNjcsIDY1MTcxLCA2NTE3NSwgNjUxNzksIDY1MTgzLCAKLSAgICA2NTE4NywgNjUxOTEsIDY1MTk1LCA2NTE5OSwgNjUyMDMsIDY1MjA3LCA2NTIxMSwgNjUyMTUsIDY1MjE5LCA2NTIyMywgCi0gICAgNjUyMjcsIDY1MjMxLCA2NTIzNSwgNjUyMzksIDY1MjQzLCA2NTI0NywgNjUyNTEsIDY1MjU1LCA2NTI1OSwgNjUyNjMsIAotICAgIDY1MjY3LCA2NTI3MSwgNjUyNzUsIDY1Mjc5LCA2NTI4MywgNjUyODcsIDY1MjkxLCA2NTI5NSwgNjUyOTksIDY1MzAzLCAKLSAgICA2NTMwNywgNjUzMTEsIDY1MzE1LCA2NTMxOSwgNjUzMjMsIDY1MzI3LCA2NTMzMSwgNjUzMzUsIDY1MzM4LCA2NTM0MiwgCi0gICAgNjUzNDYsIDY1MzUwLCA2NTM1NCwgNjUzNTgsIDY1MzYyLCA2NTM2NiwgNjUzNzAsIDY1Mzc0LCA2NTM3OCwgNjUzODIsIAotICAgIDY1Mzg2LCA2NTM5MCwgNjUzOTQsIDY1Mzk4LCA2NTQwMiwgNjU0MDYsIDY1NDEwLCA2NTQxNCwgNjU0MTgsIDY1NDIyLCAKLSAgICA2NTQyNiwgNjU0MzAsIDY1NDM0LCA2NTQzOCwgNjU0NDIsIDY1NDQ2LCA2NTQ1MCwgNjU0NTQsIDY1NDU4LCA2NTQ2MiwgCi0gICAgNjU0NjYsIDY1NDcwLCA2NTQ3NCwgNjU0NzgsIDY1NDgyLCA2NTQ4NiwgNjU0OTAsIDY1NDk0LCA2NTQ5OCwgNjU1MDIsIAotICAgIDY1NTA2LCA2NTUxMCwgNjU1MTQsIDY1NTE4LCA2NTUyMiwgNjU1MjYsIDY1NTMwLCA2NTUzNCwgNjU1MzgsIDY1NTQyLCAKLSAgICA2NTU0NiwgNjU1NTAsIDY1NTU0LCA2NTU1OCwgNjU1NjIsIDY1NTY2LCA2NTU3MCwgNjU1NzQsIDY1NTc4LCA2NTU4MiwgCi0gICAgNjU1ODYsIDY1NTkwLCA2NTU5NCwgNjU1OTgsIDY1NjAyLCA2NTYwNiwgNjU2MTAsIDY1NjE0LCA2NTYxOCwgNjU2MjIsIAotICAgIDY1NjI2LCA2NTYzMCwgNjU2MzQsIDY1NjM4LCA2NTY0MiwgNjU2NDYsIDY1NjUwLCA2NTY1NCwgNjU2NTgsIDY1NjYyLCAKLSAgICA2NTY2NiwgNjU2NzAsIDY1Njc0LCA2NTY3OCwgNjU2ODIsIDY1Njg2LCA2NTY5MCwgNjU2OTQsIDY1Njk4LCA2NTcwMiwgCi0gICAgNjU3MDYsIDY1NzEwLCA2NTcxNCwgNjU3MTgsIDY1NzIyLCA2NTcyNiwgNjU3MzAsIDY1NzM0LCA2NTczOCwgNjU3NDIsIAotICAgIDY1NzQ2LCA2NTc1MCwgNjU3NTQsIDY1NzU4LCA2NTc2MiwgNjU3NjYsIDY1NzcwLCA2NTc3NCwgNjU3NzgsIDY1NzgyLCAKLSAgICA2NTc4NiwgNjU3OTAsIDY1NzkzLCA2NTc5NywgNjU4MDEsIDY1ODA1LCA2NTgwOSwgNjU4MTMsIDY1ODE3LCA2NTgyMSwgCi0gICAgNjU4MjUsIDY1ODI5LCA2NTgzMywgNjU4MzcsIDY1ODQxLCA2NTg0NSwgNjU4NDksIDY1ODUzLCA2NTg1NywgNjU4NjEsIAotICAgIDY1ODY1LCA2NTg2OSwgNjU4NzMsIDY1ODc3LCA2NTg4MSwgNjU4ODUsIDY1ODg5LCA2NTg5MywgNjU4OTcsIDY1OTAxLCAKLSAgICA2NTkwNSwgNjU5MDksIDY1OTEzLCA2NTkxNywgNjU5MjEsIDY1OTI1LCA2NTkyOSwgNjU5MzMsIDY1OTM3LCA2NTk0MSwgCi0gICAgNjU5NDUsIDY1OTQ5LCA2NTk1MywgNjU5NTcsIDY1OTYxLCA2NTk2NSwgNjU5NjksIDY1OTczLCA2NTk3NywgNjU5ODEsIAotICAgIDY1OTg1LCA2NTk4OSwgNjU5OTMsIDY1OTk3LCA2NjAwMSwgNjYwMDUsIDY2MDA5LCA2NjAxMywgNjYwMTcsIDY2MDIxLCAKLSAgICA2NjAyNSwgNjYwMjksIDY2MDMzLCA2NjAzNywgNjYwNDEsIDY2MDQ1LCA2NjA0OSwgNjYwNTMsIDY2MDU3LCA2NjA2MSwgCi0gICAgNjYwNjUsIDY2MDY5LCA2NjA3MywgNjYwNzcsIDY2MDgxLCA2NjA4NSwgNjYwODksIDY2MDkzLCA2NjA5NywgNjYxMDEsIAotICAgIDY2MTA1LCA2NjEwOSwgNjYxMTMsIDY2MTE3LCA2NjEyMSwgNjYxMjUsIDY2MTI5LCA2NjEzMywgNjYxMzcsIDY2MTQxLCAKLSAgICA2NjE0NSwgNjYxNDksIDY2MTUzLCA2NjE1NywgNjYxNjEsIDY2MTY1LCA2NjE2OSwgNjYxNzMsIDY2MTc3LCA2NjE4MSwgCi0gICAgNjYxODUsIDY2MTg5LCA2NjE5MywgNjYxOTcsIDY2MjAxLCA2NjIwNSwgNjYyMDksIDY2MjEzLCA2NjIxNywgNjYyMjEsIAotICAgIDY2MjI1LCA2NjIyOSwgNjYyMzMsIDY2MjM3LCA2NjI0MSwgNjYyNDUsIDY2MjQ5LCA2NjI1MywgNjYyNTcsIDY2MjYxLCAKLSAgICA2NjI2NSwgNjYyNjksIDY2MjczLCA2NjI3NywgNjYyODEsIDY2Mjg1LCA2NjI4OSwgNjYyOTMsIDY2Mjk3LCA2NjMwMSwgCi0gICAgNjYzMDUsIDY2MzA5LCA2NjMxMywgNjYzMTcsIDY2MzIxLCA2NjMyNSwgNjYzMjksIDY2MzMzLCA2NjMzNywgNjYzNDEsIAotICAgIDY2MzQ1LCA2NjM0OSwgNjYzNTMsIDY2MzU3LCA2NjM2MSwgNjYzNjUsIDY2MzY5LCA2NjM3MywgNjYzNzcsIDY2MzgxLCAKLSAgICA2NjM4NSwgNjYzODksIDY2MzkzLCA2NjM5NiwgNjY0MDAsIDY2NDA0LCA2NjQwOCwgNjY0MTIsIDY2NDE2LCA2NjQyMCwgCi0gICAgNjY0MjQsIDY2NDI4LCA2NjQzMiwgNjY0MzYsIDY2NDQwLCA2NjQ0NCwgNjY0NDgsIDY2NDUyLCA2NjQ1NiwgNjY0NjAsIAotICAgIDY2NDY0LCA2NjQ2OCwgNjY0NzIsIDY2NDc2LCA2NjQ4MCwgNjY0ODQsIDY2NDg4LCA2NjQ5MiwgNjY0OTYsIDY2NTAwLCAKLSAgICA2NjUwNCwgNjY1MDgsIDY2NTEyLCA2NjUxNiwgNjY1MjAsIDY2NTI0LCA2NjUyOCwgNjY1MzIsIDY2NTM2LCA2NjU0MCwgCi0gICAgNjY1NDQsIDY2NTQ4LCA2NjU1MiwgNjY1NTYsIDY2NTYwLCA2NjU2NCwgNjY1NjgsIDY2NTcyLCA2NjU3NiwgNjY1ODAsIAotICAgIDY2NTg0LCA2NjU4OCwgNjY1OTIsIDY2NTk2LCA2NjYwMCwgNjY2MDQsIDY2NjA4LCA2NjYxMiwgNjY2MTYsIDY2NjIwLCAKLSAgICA2NjYyNCwgNjY2MjgsIDY2NjMyLCA2NjYzNiwgNjY2NDAsIDY2NjQ0LCA2NjY0OCwgNjY2NTIsIDY2NjU2LCA2NjY2MCwgCi0gICAgNjY2NjQsIDY2NjY4LCA2NjY3MiwgNjY2NzYsIDY2NjgwLCA2NjY4NCwgNjY2ODgsIDY2NjkyLCA2NjY5NiwgNjY3MDAsIAotICAgIDY2NzA0LCA2NjcwOCwgNjY3MTIsIDY2NzE2LCA2NjcyMCwgNjY3MjQsIDY2NzI4LCA2NjczMiwgNjY3MzYsIDY2NzQwLCAKLSAgICA2Njc0NCwgNjY3NDgsIDY2NzUyLCA2Njc1NiwgNjY3NjAsIDY2NzY0LCA2Njc2OCwgNjY3NzIsIDY2Nzc2LCA2Njc4MCwgCi0gICAgNjY3ODQsIDY2Nzg4LCA2Njc5MiwgNjY3OTYsIDY2ODAwLCA2NjgwNCwgNjY4MDgsIDY2ODEyLCA2NjgxNiwgNjY4MjAsIAotICAgIDY2ODI0LCA2NjgyOCwgNjY4MzIsIDY2ODM2LCA2Njg0MCwgNjY4NDQsIDY2ODQ4LCA2Njg1MiwgNjY4NTYsIDY2ODYwLCAKLSAgICA2Njg2NCwgNjY4NjgsIDY2ODcyLCA2Njg3NiwgNjY4ODAsIDY2ODg0LCA2Njg4OCwgNjY4OTIsIDY2ODk2LCA2NjkwMCwgCi0gICAgNjY5MDQsIDY2OTA4LCA2NjkxMiwgNjY5MTYsIDY2OTIwLCA2NjkyNCwgNjY5MjgsIDY2OTMyLCA2NjkzNiwgNjY5NDAsIAotICAgIDY2OTQ0LCA2Njk0OCwgNjY5NTIsIDY2OTU2LCA2Njk2MCwgNjY5NjQsIDY2OTY4LCA2Njk3MiwgNjY5NzYsIDY2OTgwLCAKLSAgICA2Njk4NCwgNjY5ODgsIDY2OTkyLCA2Njk5NiwgNjcwMDAsIDY3MDA0LCA2NzAwOCwgNjcwMTIsIDY3MDE2LCA2NzAyMCwgCi0gICAgNjcwMjQsIDY3MDI4LCA2NzAzMiwgNjcwMzYsIDY3MDQwLCA2NzA0NCwgNjcwNDgsIDY3MDUyLCA2NzA1NiwgNjcwNjAsIAotICAgIDY3MDY0LCA2NzA2OCwgNjcwNzIsIDY3MDc2LCA2NzA4MCwgNjcwODQsIDY3MDg4LCA2NzA5MiwgNjcwOTYsIDY3MTAwLCAKLSAgICA2NzEwNCwgNjcxMDgsIDY3MTEyLCA2NzExNiwgNjcxMjAsIDY3MTI0LCA2NzEyOCwgNjcxMzIsIDY3MTM2LCA2NzE0MCwgCi0gICAgNjcxNDQsIDY3MTQ4LCA2NzE1MiwgNjcxNTUsIDY3MTU5LCA2NzE2MywgNjcxNjcsIDY3MTcxLCA2NzE3NSwgNjcxNzksIAotICAgIDY3MTgzLCA2NzE4NywgNjcxOTEsIDY3MTk1LCA2NzE5OSwgNjcyMDMsIDY3MjA3LCA2NzIxMSwgNjcyMTUsIDY3MjE5LCAKLSAgICA2NzIyMywgNjcyMjcsIDY3MjMxLCA2NzIzNSwgNjcyMzksIDY3MjQzLCA2NzI0NywgNjcyNTEsIDY3MjU1LCA2NzI1OSwgCi0gICAgNjcyNjMsIDY3MjY3LCA2NzI3MSwgNjcyNzUsIDY3Mjc5LCA2NzI4MywgNjcyODcsIDY3MjkxLCA2NzI5NSwgNjcyOTksIAotICAgIDY3MzAzLCA2NzMwNywgNjczMTEsIDY3MzE1LCA2NzMxOSwgNjczMjMsIDY3MzI3LCA2NzMzMSwgNjczMzUsIDY3MzM5LCAKLSAgICA2NzM0MywgNjczNDcsIDY3MzUxLCA2NzM1NSwgNjczNTksIDY3MzYzLCA2NzM2NywgNjczNzEsIDY3Mzc1LCA2NzM3OSwgCi0gICAgNjczODMsIDY3Mzg3LCA2NzM5MSwgNjczOTUsIDY3Mzk5LCA2NzQwMywgNjc0MDcsIDY3NDExLCA2NzQxNSwgNjc0MTksIAotICAgIDY3NDIzLCA2NzQyNywgNjc0MzEsIDY3NDM1LCA2NzQzOSwgNjc0NDMsIDY3NDQ3LCA2NzQ1MSwgNjc0NTUsIDY3NDU5LCAKLSAgICA2NzQ2MywgNjc0NjcsIDY3NDcxLCA2NzQ3NSwgNjc0NzksIDY3NDgzLCA2NzQ4NywgNjc0OTEsIDY3NDk1LCA2NzQ5OSwgCi0gICAgNjc1MDMsIDY3NTA3LCA2NzUxMSwgNjc1MTUsIDY3NTE5LCA2NzUyMywgNjc1MjcsIDY3NTMxLCA2NzUzNSwgNjc1MzksIAotICAgIDY3NTQzLCA2NzU0NywgNjc1NTEsIDY3NTU1LCA2NzU1OSwgNjc1NjMsIDY3NTY3LCA2NzU3MSwgNjc1NzUsIDY3NTc5LCAKLSAgICA2NzU4MywgNjc1ODcsIDY3NTkxLCA2NzU5NSwgNjc1OTksIDY3NjAzLCA2NzYwNywgNjc2MTEsIDY3NjE1LCA2NzYxOSwgCi0gICAgNjc2MjMsIDY3NjI3LCA2NzYzMSwgNjc2MzUsIDY3NjM5LCA2NzY0MywgNjc2NDcsIDY3NjUxLCA2NzY1NSwgNjc2NTksIAotICAgIDY3NjYzLCA2NzY2NywgNjc2NzEsIDY3Njc1LCA2NzY3OSwgNjc2ODMsIDY3Njg3LCA2NzY5MSwgNjc2OTUsIDY3Njk5LCAKLSAgICA2NzcwMywgNjc3MDcsIDY3NzExLCA2NzcxNSwgNjc3MTksIDY3NzIzLCA2NzcyNywgNjc3MzEsIDY3NzM1LCA2NzczOSwgCi0gICAgNjc3NDMsIDY3NzQ3LCA2Nzc1MSwgNjc3NTUsIDY3NzU5LCA2Nzc2MywgNjc3NjcsIDY3NzcxLCA2Nzc3NSwgNjc3NzksIAotICAgIDY3NzgzLCA2Nzc4NywgNjc3OTEsIDY3Nzk1LCA2Nzc5OSwgNjc4MDMsIDY3ODA3LCA2NzgxMSwgNjc4MTUsIDY3ODE5LCAKLSAgICA2NzgyMywgNjc4MjcsIDY3ODMxLCA2NzgzNSwgNjc4MzksIDY3ODQzLCA2Nzg0NywgNjc4NTEsIDY3ODU1LCA2Nzg1OSwgCi0gICAgNjc4NjMsIDY3ODY3LCA2Nzg3MSwgNjc4NzUsIDY3ODc5LCA2Nzg4MywgNjc4ODcsIDY3ODkxLCA2Nzg5NSwgNjc4OTksIAotICAgIDY3OTAzLCA2NzkwNywgNjc5MTEsIDY3OTE1LCA2NzkxOSwgNjc5MjMsIDY3OTI3LCA2NzkzMSwgNjc5MzUsIDAsIDAsIDAsIAotICAgIDY3OTM5LCA2Nzk0MywgNjc5NDcsIDY3OTUxLCA2Nzk1NSwgNjc5NTksIDY3OTYzLCA2Nzk2NywgNjc5NzEsIDY3OTc1LCAKLSAgICA2Nzk3OSwgNjc5ODMsIDY3OTg3LCA2Nzk5MSwgNjc5OTUsIDY3OTk5LCA2ODAwMywgNjgwMDcsIDY4MDExLCA2ODAxNSwgCi0gICAgNjgwMTksIDY4MDIzLCA2ODAyNywgNjgwMzEsIDY4MDM1LCA2ODAzOSwgNjgwNDMsIDY4MDQ3LCA2ODA1MSwgNjgwNTUsIAotICAgIDY4MDU5LCA2ODA2MywgNjgwNjcsIDY4MDcxLCA2ODA3NSwgNjgwNzksIDY4MDgzLCA2ODA4NywgNjgwOTEsIDY4MDk1LCAKLSAgICA2ODA5OSwgNjgxMDMsIDY4MTA3LCA2ODExMSwgNjgxMTUsIDY4MTE5LCA2ODEyMywgNjgxMjcsIDY4MTMxLCA2ODEzNSwgCi0gICAgNjgxMzksIDY4MTQzLCA2ODE0NywgNjgxNTEsIDY4MTU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2ODE1OSwgCi0gICAgNjgxNjQsIDY4MTY4LCA2ODE3MywgNjgxNzgsIDY4MTgzLCA2ODE4OCwgNjgxOTMsIDY4MTk3LCA2ODIwMiwgNjgyMDcsIAotICAgIDY4MjEyLCA2ODIxNywgNjgyMjIsIDY4MjI3LCA2ODIzMiwgNjgyMzYsIDY4MjQwLCA2ODI0NSwgNjgyNTAsIDY4MjU1LCAKLSAgICA2ODI2MCwgNjgyNjUsIDY4MjY5LCA2ODI3NCwgNjgyNzksIDY4Mjg0LCA2ODI4OSwgNjgyOTQsIDY4Mjk4LCA2ODMwMywgCi0gICAgNjgzMDcsIDY4MzEyLCA2ODMxNiwgNjgzMjEsIDY4MzI1LCA2ODMyOSwgNjgzMzMsIDY4MzM4LCA2ODM0MywgNjgzNDgsIAotICAgIDY4MzU2LCA2ODM2NCwgNjgzNzIsIDY4MzgwLCA2ODM4NywgNjgzOTUsIDY4NDAxLCA2ODQwOSwgNjg0MTMsIDY4NDE3LCAKLSAgICA2ODQyMSwgNjg0MjUsIDY4NDI5LCA2ODQzMywgNjg0MzcsIDY4NDQxLCA2ODQ0NSwgNjg0NDksIDY4NDUzLCA2ODQ1NywgCi0gICAgNjg0NjEsIDY4NDY1LCA2ODQ2OSwgNjg0NzMsIDY4NDc3LCA2ODQ4MSwgNjg0ODUsIDY4NDg5LCA2ODQ5MywgNjg0OTcsIAotICAgIDY4NTAxLCA2ODUwNSwgNjg1MDksIDY4NTEzLCA2ODUxNywgNjg1MjEsIDY4NTI1LCA2ODUyOSwgNjg1MzMsIDY4NTM3LCAKLSAgICA2ODU0MSwgNjg1NDUsIDY4NTQ5LCA2ODU1MywgNjg1NTYsIDY4NTYwLCA2ODU2NCwgNjg1NjgsIDY4NTcyLCA2ODU3NiwgCi0gICAgNjg1ODAsIDY4NTg0LCA2ODU4OCwgNjg1OTIsIDY4NTk2LCA2ODYwMCwgNjg2MDQsIDY4NjA4LCA2ODYxMiwgNjg2MTYsIAotICAgIDY4NjIwLCA2ODYyNCwgNjg2MjgsIDY4NjMyLCA2ODYzNiwgNjg2NDAsIDY4NjQ0LCA2ODY0OCwgNjg2NTIsIDY4NjU2LCAKLSAgICA2ODY2MCwgNjg2NjQsIDY4NjY4LCA2ODY3MiwgNjg2NzYsIDY4NjgwLCA2ODY4NCwgNjg2ODgsIDY4NjkyLCA2ODY5NiwgCi0gICAgNjg3MDAsIDY4NzAzLCA2ODcwNywgNjg3MTEsIDY4NzE0LCA2ODcxOCwgNjg3MjIsIDY4NzI2LCA2ODcyOSwgNjg3MzMsIAotICAgIDY4NzM3LCA2ODc0MSwgNjg3NDUsIDY4NzQ5LCA2ODc1MywgNjg3NTcsIDY4NzYxLCA2ODc2NSwgNjg3NjksIDY4NzczLCAKLSAgICA2ODc3NywgNjg3ODEsIDY4Nzg1LCA2ODc4OCwgNjg3OTIsIDY4Nzk2LCA2ODgwMCwgNjg4MDQsIDY4ODA4LCA2ODgxMiwgCi0gICAgNjg4MTYsIDY4ODIwLCA2ODgyNCwgNjg4MjcsIDY4ODMwLCA2ODgzNCwgNjg4MzgsIDY4ODQyLCA2ODg0NSwgNjg4NDgsIAotICAgIDY4ODUyLCA2ODg1NiwgNjg4NjAsIDY4ODY0LCA2ODg2OCwgNjg4NzIsIDY4ODc2LCA2ODg4MCwgNjg4ODQsIDY4ODg4LCAKLSAgICA2ODg5MiwgNjg4OTYsIDY4OTAwLCA2ODkwNCwgNjg5MDgsIDY4OTEyLCA2ODkxNiwgNjg5MjAsIDY4OTI0LCA2ODkyOCwgCi0gICAgNjg5MzIsIDY4OTM2LCA2ODk0MCwgNjg5NDQsIDY4OTQ4LCA2ODk1MiwgNjg5NTYsIDY4OTYwLCA2ODk2NCwgNjg5NjgsIAotICAgIDY4OTcyLCA2ODk3NiwgNjg5ODAsIDY4OTg0LCA2ODk4OCwgNjg5OTIsIDY4OTk2LCA2ODk5OSwgNjkwMDMsIDY5MDA3LCAKLSAgICA2OTAxMSwgNjkwMTUsIDY5MDE5LCA2OTAyMywgNjkwMjcsIDY5MDMxLCA2OTAzNSwgNjkwMzksIDY5MDQzLCA2OTA0NywgCi0gICAgNjkwNTEsIDY5MDU1LCA2OTA1OSwgNjkwNjMsIDY5MDY3LCA2OTA3MSwgNjkwNzUsIDY5MDc5LCA2OTA4MywgNjkwODcsIAotICAgIDY5MDkxLCA2OTA5NSwgNjkwOTksIDY5MTAzLCA2OTEwNywgNjkxMTEsIDY5MTE1LCA2OTExOSwgNjkxMjMsIDY5MTI3LCAKLSAgICA2OTEzMSwgNjkxMzUsIDY5MTM5LCA2OTE0MywgNjkxNDYsIDY5MTUwLCA2OTE1NCwgNjkxNTgsIDY5MTYyLCA2OTE2NiwgCi0gICAgNjkxNzAsIDY5MTc0LCA2OTE3OCwgNjkxODIsIDY5MTg2LCA2OTE5MCwgNjkxOTQsIDY5MTk4LCA2OTIwMiwgNjkyMDYsIAotICAgIDY5MjEwLCA2OTIxMywgNjkyMTcsIDY5MjIxLCA2OTIyNSwgNjkyMjksIDY5MjMzLCA2OTIzNywgNjkyNDEsIDY5MjQ1LCAKLSAgICA2OTI0OSwgNjkyNTMsIDY5MjU3LCA2OTI2MSwgNjkyNjUsIDY5MjY5LCA2OTI3MywgNjkyNzcsIDY5MjgxLCA2OTI4NSwgCi0gICAgNjkyODksIDY5MjkzLCA2OTI5NywgNjkzMDAsIDY5MzA0LCA2OTMwOCwgNjkzMTIsIDY5MzE2LCA2OTMyMCwgNjkzMjQsIAotICAgIDY5MzI4LCA2OTMzMiwgNjkzMzYsIDY5MzQwLCA2OTM0NCwgNjkzNDgsIDY5MzUyLCA2OTM1NiwgNjkzNjAsIDY5MzY0LCAKLSAgICA2OTM2OCwgNjkzNzIsIDY5Mzc2LCA2OTM4MCwgNjkzODQsIDY5Mzg4LCA2OTM5MiwgNjkzOTYsIDY5NDAwLCA2OTQwNCwgCi0gICAgNjk0MDgsIDY5NDEyLCA2OTQxNiwgNjk0MjAsIDY5NDI0LCA2OTQyOCwgNjk0MzIsIDY5NDM2LCA2OTQ0MCwgNjk0NDQsIAotICAgIDY5NDQ4LCA2OTQ1MiwgNjk0NTYsIDY5NDYwLCA2OTQ2NCwgNjk0NjgsIDY5NDcyLCA2OTQ3NSwgNjk0ODAsIDY5NDg0LCAKLSAgICA2OTQ5MCwgNjk0OTUsIDY5NTAxLCA2OTUwNSwgNjk1MDksIDY5NTEzLCA2OTUxNywgNjk1MjEsIDY5NTI1LCA2OTUyOSwgCi0gICAgNjk1MzMsIDY5NTM3LCA2OTU0MSwgNjk1NDUsIDY5NTQ5LCA2OTU1MywgNjk1NTcsIDY5NTYwLCA2OTU2MywgNjk1NjYsIAotICAgIDY5NTY5LCA2OTU3MiwgNjk1NzUsIDY5NTc4LCA2OTU4MSwgNjk1ODQsIDY5NTg5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2OTU5NSwgNjk2MDAsIDY5NjA1LCA2OTYxMCwgNjk2MTUsIAotICAgIDY5NjIyLCA2OTYyOSwgNjk2MzQsIDY5NjM5LCA2OTY0NCwgNjk2NDksIDY5NjU2LCA2OTY2MywgNjk2NzAsIDY5Njc3LCAKLSAgICA2OTY4NCwgNjk2OTEsIDY5NzAxLCA2OTcxMSwgNjk3MTgsIDY5NzI1LCA2OTczMiwgNjk3MzksIDY5NzQ1LCA2OTc1MSwgCi0gICAgNjk3NjAsIDY5NzY5LCA2OTc3NiwgNjk3ODMsIDY5Nzk0LCA2OTgwNSwgNjk4MTAsIDY5ODE1LCA2OTgyMiwgNjk4MjksIAotICAgIDY5ODM2LCA2OTg0MywgNjk4NTAsIDY5ODU3LCA2OTg2NCwgNjk4NzEsIDY5ODc3LCA2OTg4MywgNjk4ODksIDY5ODk1LCAKLSAgICA2OTkwMiwgNjk5MDksIDY5OTE0LCA2OTkxOCwgNjk5MjUsIDY5OTMyLCA2OTkzOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNjk5NDMsIDY5OTQ3LCA2OTk1MSwgNjk5NTQsIDY5OTU3LCA2OTk2MiwgNjk5NjcsIDY5OTcyLCA2OTk3NywgNjk5ODIsIAotICAgIDY5OTg3LCA2OTk5MiwgNjk5OTcsIDcwMDAyLCA3MDAwNywgNzAwMTYsIDcwMDI1LCA3MDAzMCwgNzAwMzUsIDcwMDQwLCAKLSAgICA3MDA0NSwgNzAwNTAsIDcwMDU1LCA3MDA2MCwgNzAwNjUsIDcwMDcwLCA3MDA3NSwgNzAwODAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDcwMDg1LCA3MDA4OCwgNzAwOTEsIDcwMDk0LCA3MDA5OCwgNzAxMDIsIDcwMTA2LCA3MDExMCwgNzAxMTMsIAotICAgIDcwMTE3LCA3MDEyMCwgNzAxMjQsIDcwMTI3LCA3MDEzMSwgNzAxMzUsIDcwMTM5LCA3MDE0MywgNzAxNDcsIDcwMTUxLCAKLSAgICA3MDE1NSwgNzAxNTgsIDcwMTYyLCA3MDE2NiwgNzAxNzAsIDcwMTc0LCA3MDE3OCwgNzAxODIsIDcwMTg2LCA3MDE5MCwgCi0gICAgNzAxOTQsIDcwMTk4LCA3MDIwMiwgNzAyMDYsIDcwMjEwLCA3MDIxNCwgNzAyMTcsIDcwMjIxLCA3MDIyNSwgNzAyMjksIAotICAgIDcwMjMzLCA3MDIzNywgNzAyNDEsIDcwMjQ1LCA3MDI0OSwgNzAyNTMsIDcwMjU3LCA3MDI2MSwgNzAyNjUsIDcwMjY5LCAKLSAgICA3MDI3MywgNzAyNzcsIDcwMjgxLCA3MDI4NSwgNzAyODksIDcwMjkzLCA3MDI5NywgNzAzMDEsIDcwMzA1LCA3MDMwOSwgCi0gICAgNzAzMTMsIDcwMzE2LCA3MDMyMCwgNzAzMjQsIDcwMzI4LCA3MDMzMiwgNzAzMzYsIDcwMzQwLCA3MDM0NCwgNzAzNDcsIAotICAgIDcwMzUxLCA3MDM1NSwgNzAzNTksIDcwMzYzLCA3MDM2NywgNzAzNzEsIDcwMzc1LCA3MDM3OSwgNzAzODMsIDcwMzg3LCAKLSAgICA3MDM5MSwgNzAzOTUsIDcwNDAwLCA3MDQwNSwgNzA0MDgsIDcwNDEzLCA3MDQxNiwgNzA0MTksIDcwNDIyLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA3MDQyNiwgNzA0MzUsIDcwNDQ0LCA3MDQ1MywgNzA0NjIsIDcwNDcxLCA3MDQ4MCwgNzA0ODksIAotICAgIDcwNDk4LCA3MDUwNiwgNzA1MTMsIDcwNTIxLCA3MDUyOCwgNzA1MzYsIDcwNTQ2LCA3MDU1NSwgNzA1NjUsIDcwNTc0LCAKLSAgICA3MDU4NCwgNzA1OTIsIDcwNTk5LCA3MDYwNywgNzA2MTQsIDcwNjIyLCA3MDYyNywgNzA2MzIsIDcwNjM3LCA3MDY0NiwgCi0gICAgNzA2NTIsIDcwNjU4LCA3MDY2NSwgNzA2NzQsIDcwNjgyLCA3MDY5MCwgNzA2OTgsIDcwNzA1LCA3MDcxMiwgNzA3MTksIAotICAgIDcwNzI2LCA3MDczMSwgNzA3MzYsIDcwNzQxLCA3MDc0NiwgNzA3NTEsIDcwNzU2LCA3MDc2MSwgNzA3NjYsIDcwNzc0LCAKLSAgICA3MDc4MiwgNzA3ODgsIDcwNzkzLCA3MDc5OCwgNzA4MDMsIDcwODA4LCA3MDgxMywgNzA4MTgsIDcwODIzLCA3MDgyOCwgCi0gICAgNzA4MzMsIDcwODQxLCA3MDg0OSwgNzA4NTQsIDcwODU5LCA3MDg2OSwgNzA4NzksIDcwODg2LCA3MDg5MywgNzA5MDIsIAotICAgIDcwOTExLCA3MDkyMywgNzA5MzUsIDcwOTQxLCA3MDk0NywgNzA5NTUsIDcwOTYzLCA3MDk3MywgNzA5ODMsIDcwOTkwLCAKLSAgICA3MDk5NywgNzEwMDIsIDcxMDA3LCA3MTAxOSwgNzEwMzEsIDcxMDM5LCA3MTA0NywgNzEwNTcsIDcxMDY3LCA3MTA3OSwgCi0gICAgNzEwOTEsIDcxMTAwLCA3MTEwOSwgNzExMTYsIDcxMTIzLCA3MTEzMCwgNzExMzcsIDcxMTQ2LCA3MTE1NSwgNzExNjAsIAotICAgIDcxMTY1LCA3MTE3MiwgNzExNzksIDcxMTg2LCA3MTE5MywgNzEyMDUsIDcxMjE3LCA3MTIyMiwgNzEyMjcsIDcxMjMyLCAKLSAgICA3MTIzNywgNzEyNDIsIDcxMjQ3LCA3MTI1MiwgNzEyNTcsIDcxMjYxLCA3MTI2NiwgNzEyNzEsIDcxMjc2LCA3MTI4MSwgCi0gICAgNzEyODYsIDcxMjkyLCA3MTI5NywgNzEzMDIsIDcxMzA5LCA3MTMxNiwgNzEzMjMsIDcxMzMwLCA3MTMzNywgNzEzNDYsIAotICAgIDcxMzU1LCA3MTM2MSwgNzEzNjcsIDcxMzczLCA3MTM3OSwgNzEzODUsIDcxMzkxLCA3MTM5OCwgNzE0MDUsIDcxNDEyLCAKLSAgICA3MTQxNiwgNzE0MjMsIDcxNDI4LCA3MTQzMywgNzE0NDAsIDAsIDcxNDUzLCA3MTQ2MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzE0NjksIDcxNDc4LCA3MTQ4NywgNzE0OTYsIDcxNTA1LCA3MTUxNCwgNzE1MjMsIAotICAgIDcxNTMyLCA3MTU0MSwgNzE1NTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDEyMDY3LCAwLCAxMjA3NiwgMTIwODMsIDEyMDkxLCAxMjEwMywgMTIxMTAsIDEyMTE3LCAxMjEyNCwgMTIxMzUsIDEyMTQ2LCAKKyAgICAxMjE1MywgMTIxNjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyMTY3LCAxMjE3MiwgMTIxNzcsIDEyMTgyLCAxMjE4NywgCisgICAgMTIxOTIsIDEyMTk3LCAxMjIwMiwgMTIyMDcsIDEyMjEyLCAxMjIxNywgMTIyMjIsIDEyMjI3LCAxMjIzMSwgMTIyMzUsIAorICAgIDEyMjM5LCAxMjI0NCwgMTIyNTAsIDEyMjU2LCAxMjI2MiwgMTIyNjcsIDEyMjcyLCAxMjI3NywgMTIyODIsIDEyMjg4LCAKKyAgICAxMjI5NywgMTIzMDUsIDAsIDEyMzExLCAxMjMxNywgMTIzMjEsIDEyMzI1LCAxMjMyOSwgMTIzMzQsIDEyMzM3LCAxMjM0MSwgCisgICAgMTIzNDQsIDEyMzQ4LCAxMjM1MSwgMTIzNTUsIDEyMzU5LCAxMjM2MywgMTIzNjgsIDEyMzczLCAxMjM3NiwgMTIzODAsIAorICAgIDEyMzg1LCAxMjM5MCwgMTIzOTMsIDEyMzk3LCAxMjQwMCwgMTI0MDQsIDEyNDA4LCAxMjQxMiwgMTI0MTYsIDEyNDIwLCAKKyAgICAxMjQyNCwgMTI0MjgsIDEyNDMyLCAxMjQzNiwgMTI0NDAsIDEyNDQ0LCAxMjQ0OCwgMTI0NTIsIDEyNDU2LCAxMjQ2MCwgCisgICAgMTI0NjQsIDEyNDY4LCAxMjQ3MiwgMTI0NzUsIDEyNDc5LCAxMjQ4MiwgMTI0ODYsIDEyNDkwLCAxMjQ5NCwgMTI0OTcsIAorICAgIDEyNTAwLCAxMjUwMywgMTI1MDcsIDEyNTExLCAxMjUxNSwgMTI1MTksIDEyNTIzLCAxMjUyNywgMTI1MzEsIDEyNTM0LCAKKyAgICAxMjUzNywgMTI1NDIsIDEyNTQ3LCAxMjU1MSwgMTI1NTUsIDEyNTYwLCAxMjU2NCwgMTI1NjksIDEyNTczLCAxMjU3OCwgCisgICAgMTI1ODMsIDEyNTg5LCAxMjU5NSwgMTI2MDEsIDEyNjA1LCAxMjYxMCwgMTI2MTYsIDEyNjIyLCAxMjYyNiwgMTI2MzEsIAorICAgIDEyNjM1LCAxMjY0MSwgMTI2NDYsIDEyNjQ5LCAxMjY1NSwgMTI2NjEsIDEyNjY2LCAxMjY3MSwgMTI2NzgsIDEyNjgzLCAKKyAgICAxMjY4OCwgMTI2OTIsIDEyNjk2LCAxMjcwMCwgMTI3MDQsIDEyNzA4LCAxMjcxMiwgMTI3MTYsIDEyNzIwLCAxMjcyNSwgCisgICAgMTI3MzAsIDEyNzM1LCAxMjc0MSwgMTI3NDQsIDEyNzQ4LCAxMjc1MiwgMTI3NTUsIDEyNzU4LCAxMjc2MSwgMTI3NjQsIAorICAgIDEyNzY3LCAxMjc3MCwgMTI3NzMsIDEyNzc2LCAxMjc3OSwgMTI3ODMsIDEyNzkwLCAxMjc5NSwgMTI3OTksIDEyODAzLCAKKyAgICAxMjgwNywgMTI4MTEsIDAsIDEyODE1LCAxMjgxOSwgMTI4MjMsIDEyODI3LCAxMjgzMSwgMTI4MzcsIDEyODQxLCAwLCAKKyAgICAxMjg0NSwgMTI4NDksIDEyODUzLCAwLCAxMjg1NywgMTI4NjAsIDEyODY0LCAxMjg2NywgMTI4NzEsIDEyODc0LCAxMjg3OCwgCisgICAgMTI4ODIsIDAsIDAsIDEyODg2LCAxMjg4OSwgMCwgMCwgMTI4OTMsIDEyODk2LCAxMjkwMCwgMTI5MDMsIDEyOTA3LCAKKyAgICAxMjkxMSwgMTI5MTUsIDEyOTE5LCAxMjkyMywgMTI5MjcsIDEyOTMxLCAxMjkzNSwgMTI5MzksIDEyOTQzLCAxMjk0NywgCisgICAgMTI5NTEsIDEyOTU1LCAxMjk1OSwgMTI5NjMsIDEyOTY3LCAxMjk3MSwgMTI5NzUsIDAsIDEyOTc4LCAxMjk4MSwgMTI5ODUsIAorICAgIDEyOTg5LCAxMjk5MywgMTI5OTYsIDEyOTk5LCAwLCAxMzAwMiwgMCwgMCwgMCwgMTMwMDYsIDEzMDEwLCAxMzAxNCwgCisgICAgMTMwMTcsIDAsIDAsIDEzMDIwLCAxMzAyNCwgMTMwMjgsIDEzMDMzLCAxMzAzNywgMTMwNDIsIDEzMDQ2LCAxMzA1MSwgCisgICAgMTMwNTYsIDAsIDAsIDEzMDYyLCAxMzA2NiwgMCwgMCwgMTMwNzEsIDEzMDc1LCAxMzA4MCwgMTMwODQsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDEzMDkwLCAwLCAwLCAwLCAwLCAxMzA5NiwgMTMxMDAsIDAsIDEzMTA0LCAxMzEwOCwgMTMxMTMsIAorICAgIDEzMTE4LCAxMzEyMywgMCwgMCwgMTMxMjksIDEzMTMzLCAxMzEzNiwgMTMxMzksIDEzMTQyLCAxMzE0NSwgMTMxNDgsIAorICAgIDEzMTUxLCAxMzE1NCwgMTMxNTcsIDEzMTYwLCAxMzE2OSwgMTMxNzgsIDEzMTgyLCAxMzE4NiwgMTMxOTIsIDEzMTk4LCAKKyAgICAxMzIwNCwgMTMyMTAsIDEzMjI0LCAxMzIzMSwgMTMyMzQsIDAsIDAsIDAsIDAsIDAsIDEzMjM4LCAxMzI0NCwgMTMyNDgsIDAsIAorICAgIDEzMjUyLCAxMzI1NSwgMTMyNTksIDEzMjYyLCAxMzI2NiwgMTMyNjksIDAsIDAsIDAsIDAsIDEzMjczLCAxMzI3NywgMCwgMCwgCisgICAgMTMyODEsIDEzMjg1LCAxMzI4OSwgMTMyOTIsIDEzMjk2LCAxMzMwMCwgMTMzMDQsIDEzMzA4LCAxMzMxMiwgMTMzMTYsIAorICAgIDEzMzIwLCAxMzMyNCwgMTMzMjgsIDEzMzMyLCAxMzMzNiwgMTMzNDAsIDEzMzQ0LCAxMzM0OCwgMTMzNTIsIDEzMzU2LCAKKyAgICAxMzM2MCwgMTMzNjQsIDAsIDEzMzY3LCAxMzM3MCwgMTMzNzQsIDEzMzc4LCAxMzM4MiwgMTMzODUsIDEzMzg4LCAwLCAKKyAgICAxMzM5MSwgMTMzOTUsIDAsIDEzMzk5LCAxMzQwMywgMCwgMTM0MDcsIDEzNDEwLCAwLCAwLCAxMzQxMywgMCwgMTM0MTcsIAorICAgIDEzNDIyLCAxMzQyNiwgMTM0MzEsIDEzNDM1LCAwLCAwLCAwLCAwLCAxMzQ0MCwgMTM0NDUsIDAsIDAsIDEzNDUwLCAxMzQ1NSwgCisgICAgMTM0NjAsIDAsIDAsIDAsIDEzNDY0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzQ2OCwgMTM0NzIsIDEzNDc2LCAxMzQ4MCwgCisgICAgMCwgMTM0ODQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzNDg4LCAxMzQ5MiwgMTM0OTUsIDEzNDk4LCAxMzUwMSwgMTM1MDQsIAorICAgIDEzNTA3LCAxMzUxMCwgMTM1MTMsIDEzNTE2LCAxMzUxOSwgMTM1MjIsIDEzNTI1LCAxMzUyOCwgMTM1MzEsIDEzNTM2LCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzU0MCwgMTM1NDQsIDEzNTQ4LCAwLCAxMzU1MiwgMTM1NTUsIAorICAgIDEzNTU5LCAxMzU2MiwgMTM1NjYsIDEzNTY5LCAxMzU3MywgMTM1NzcsIDEzNTgxLCAwLCAxMzU4NiwgMTM1ODksIDEzNTkzLCAKKyAgICAwLCAxMzU5OCwgMTM2MDEsIDEzNjA1LCAxMzYwOCwgMTM2MTIsIDEzNjE2LCAxMzYyMCwgMTM2MjQsIDEzNjI4LCAxMzYzMiwgCisgICAgMTM2MzYsIDEzNjQwLCAxMzY0NCwgMTM2NDgsIDEzNjUyLCAxMzY1NiwgMTM2NjAsIDEzNjY0LCAxMzY2OCwgMTM2NzIsIAorICAgIDEzNjc2LCAxMzY4MCwgMCwgMTM2ODMsIDEzNjg2LCAxMzY5MCwgMTM2OTQsIDEzNjk4LCAxMzcwMSwgMTM3MDQsIDAsIAorICAgIDEzNzA3LCAxMzcxMSwgMCwgMTM3MTUsIDEzNzE5LCAxMzcyMywgMTM3MjcsIDEzNzMwLCAwLCAwLCAxMzczMywgMTM3MzcsIAorICAgIDEzNzQxLCAxMzc0NiwgMTM3NTAsIDEzNzU1LCAxMzc1OSwgMTM3NjQsIDEzNzY5LCAxMzc3NSwgMCwgMTM3ODEsIDEzNzg1LCAKKyAgICAxMzc5MCwgMCwgMTM3OTYsIDEzODAwLCAxMzgwNSwgMCwgMCwgMTM4MDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDEzODEyLCAxMzgxNywgMTM4MjIsIDEzODI3LCAwLCAwLCAxMzgzMywgMTM4MzcsIDEzODQwLCAKKyAgICAxMzg0MywgMTM4NDYsIDEzODQ5LCAxMzg1MiwgMTM4NTUsIDEzODU4LCAxMzg2MSwgMTM4NjQsIDEzODY4LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzg3MiwgMTM4NzYsIDEzODgwLCAwLCAxMzg4NCwgMTM4ODcsIAorICAgIDEzODkxLCAxMzg5NCwgMTM4OTgsIDEzOTAxLCAxMzkwNSwgMTM5MDksIDAsIDAsIDEzOTEzLCAxMzkxNiwgMCwgMCwgCisgICAgMTM5MjAsIDEzOTIzLCAxMzkyNywgMTM5MzAsIDEzOTM0LCAxMzkzOCwgMTM5NDIsIDEzOTQ2LCAxMzk1MCwgMTM5NTQsIAorICAgIDEzOTU4LCAxMzk2MiwgMTM5NjYsIDEzOTcwLCAxMzk3NCwgMTM5NzgsIDEzOTgyLCAxMzk4NiwgMTM5OTAsIDEzOTk0LCAKKyAgICAxMzk5OCwgMTQwMDIsIDAsIDE0MDA1LCAxNDAwOCwgMTQwMTIsIDE0MDE2LCAxNDAyMCwgMTQwMjMsIDE0MDI2LCAwLCAKKyAgICAxNDAyOSwgMTQwMzMsIDAsIDE0MDM3LCAxNDA0MSwgMTQwNDUsIDE0MDQ5LCAxNDA1MiwgMCwgMCwgMTQwNTUsIDE0MDU5LCAKKyAgICAxNDA2MywgMTQwNjgsIDE0MDcyLCAxNDA3NywgMTQwODEsIDE0MDg2LCAxNDA5MSwgMCwgMCwgMTQwOTcsIDE0MTAxLCAwLCAKKyAgICAwLCAxNDEwNiwgMTQxMTAsIDE0MTE1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDExOSwgMTQxMjUsIDAsIDAsIDAsIDAsIAorICAgIDE0MTMxLCAxNDEzNSwgMCwgMTQxMzksIDE0MTQzLCAxNDE0OCwgMTQxNTMsIDE0MTU4LCAwLCAwLCAxNDE2NCwgMTQxNjgsIAorICAgIDE0MTcxLCAxNDE3NCwgMTQxNzcsIDE0MTgwLCAxNDE4MywgMTQxODYsIDE0MTg5LCAxNDE5MiwgMTQxOTUsIDE0MTk4LCAKKyAgICAxNDIwMiwgMTQyMDgsIDE0MjE0LCAxNDIyMCwgMTQyMjYsIDE0MjMyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAxNDIzOCwgMTQyNDIsIDAsIDE0MjQ2LCAxNDI0OSwgMTQyNTMsIDE0MjU2LCAxNDI2MCwgMTQyNjMsIDAsIDAsIDAsIAorICAgIDE0MjY3LCAxNDI3MCwgMTQyNzQsIDAsIDE0Mjc4LCAxNDI4MSwgMTQyODUsIDE0Mjg5LCAwLCAwLCAwLCAxNDI5MiwgCisgICAgMTQyOTYsIDAsIDE0MzAwLCAwLCAxNDMwNCwgMTQzMDgsIDAsIDAsIDAsIDE0MzEyLCAxNDMxNiwgMCwgMCwgMCwgMTQzMjAsIAorICAgIDE0MzIzLCAxNDMyNywgMCwgMCwgMCwgMTQzMzAsIDE0MzMzLCAxNDMzNiwgMTQzMzksIDE0MzQzLCAxNDM0NywgMTQzNTEsIAorICAgIDE0MzU1LCAxNDM1OSwgMTQzNjMsIDE0MzY3LCAxNDM3MCwgMCwgMCwgMCwgMCwgMTQzNzMsIDE0Mzc4LCAxNDM4MiwgCisgICAgMTQzODcsIDE0MzkxLCAwLCAwLCAwLCAxNDM5NiwgMTQ0MDAsIDE0NDA1LCAwLCAxNDQxMCwgMTQ0MTQsIDE0NDE5LCAKKyAgICAxNDQyNCwgMCwgMCwgMTQ0MjgsIDAsIDAsIDAsIDAsIDAsIDAsIDE0NDMxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAxNDQzNywgMTQ0NDEsIDE0NDQ0LCAxNDQ0NywgMTQ0NTAsIDE0NDUzLCAxNDQ1NiwgMTQ0NTksIAorICAgIDE0NDYyLCAxNDQ2NSwgMTQ0NjgsIDE0NDcyLCAxNDQ3NywgMTQ0ODIsIDE0NDg2LCAxNDQ5MCwgMTQ0OTQsIDE0NDk4LCAKKyAgICAxNDUwMiwgMTQ1MDcsIDE0NTExLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDUxNCwgMTQ1MTgsIDE0NTIyLCAwLCAxNDUyNiwgCisgICAgMTQ1MjksIDE0NTMzLCAxNDUzNiwgMTQ1NDAsIDE0NTQzLCAxNDU0NywgMTQ1NTEsIDAsIDE0NTU1LCAxNDU1OCwgMTQ1NjIsIAorICAgIDAsIDE0NTY2LCAxNDU2OSwgMTQ1NzMsIDE0NTc3LCAxNDU4MCwgMTQ1ODQsIDE0NTg4LCAxNDU5MiwgMTQ1OTYsIDE0NjAwLCAKKyAgICAxNDYwNCwgMTQ2MDgsIDE0NjEyLCAxNDYxNiwgMTQ2MjAsIDE0NjI0LCAxNDYyOCwgMTQ2MzIsIDE0NjM2LCAxNDY0MCwgCisgICAgMTQ2NDQsIDE0NjQ4LCAxNDY1MiwgMCwgMTQ2NTUsIDE0NjU4LCAxNDY2MiwgMTQ2NjYsIDE0NjcwLCAxNDY3MywgMTQ2NzYsIAorICAgIDE0Njc5LCAxNDY4MywgMTQ2ODcsIDAsIDE0NjkxLCAxNDY5NSwgMTQ2OTksIDE0NzAzLCAxNDcwNiwgMCwgMCwgMCwgCisgICAgMTQ3MDksIDE0NzEzLCAxNDcxOCwgMTQ3MjIsIDE0NzI3LCAxNDczMSwgMTQ3MzYsIDE0NzQxLCAwLCAxNDc0NywgMTQ3NTEsIAorICAgIDE0NzU2LCAwLCAxNDc2MSwgMTQ3NjUsIDE0NzcwLCAxNDc3NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQ3NzksIDE0NzgzLCAKKyAgICAwLCAxNDc4OSwgMTQ3OTMsIDAsIDAsIDAsIDAsIDAsIDAsIDE0Nzk3LCAxNDgwMiwgMTQ4MDcsIDE0ODEyLCAwLCAwLCAKKyAgICAxNDgxOCwgMTQ4MjIsIDE0ODI1LCAxNDgyOCwgMTQ4MzEsIDE0ODM0LCAxNDgzNywgMTQ4NDAsIDE0ODQzLCAxNDg0NiwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQ4NDksIDE0ODYyLCAxNDg3NCwgMTQ4ODYsIDE0ODk4LCAxNDkxMCwgMTQ5MjIsIAorICAgIDE0OTM0LCAwLCAwLCAxNDkzOCwgMTQ5NDIsIDAsIDE0OTQ2LCAxNDk0OSwgMTQ5NTMsIDE0OTU2LCAxNDk2MCwgMTQ5NjMsIAorICAgIDE0OTY3LCAxNDk3MSwgMCwgMTQ5NzUsIDE0OTc4LCAxNDk4MiwgMCwgMTQ5ODYsIDE0OTg5LCAxNDk5MywgMTQ5OTcsIAorICAgIDE1MDAwLCAxNTAwNCwgMTUwMDgsIDE1MDEyLCAxNTAxNiwgMTUwMjAsIDE1MDI0LCAxNTAyOCwgMTUwMzIsIDE1MDM2LCAKKyAgICAxNTA0MCwgMTUwNDQsIDE1MDQ4LCAxNTA1MiwgMTUwNTYsIDE1MDYwLCAxNTA2NCwgMTUwNjgsIDE1MDcyLCAwLCAxNTA3NSwgCisgICAgMTUwNzgsIDE1MDgyLCAxNTA4NiwgMTUwOTAsIDE1MDkzLCAxNTA5NiwgMTUwOTksIDE1MTAzLCAxNTEwNywgMCwgMTUxMTEsIAorICAgIDE1MTE1LCAxNTExOSwgMTUxMjMsIDE1MTI2LCAwLCAwLCAxNTEyOSwgMTUxMzMsIDE1MTM3LCAxNTE0MiwgMTUxNDYsIAorICAgIDE1MTUxLCAxNTE1NSwgMTUxNjAsIDE1MTY1LCAwLCAxNTE3MSwgMTUxNzUsIDE1MTgwLCAwLCAxNTE4NSwgMTUxODksIAorICAgIDE1MTk0LCAxNTE5OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTUyMDMsIDE1MjA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAxNTIxMywgMCwgMTUyMTcsIDE1MjIyLCAxNTIyNywgMTUyMzIsIDAsIDAsIDE1MjM4LCAxNTI0MiwgMTUyNDUsIDE1MjQ4LCAKKyAgICAxNTI1MSwgMTUyNTQsIDE1MjU3LCAxNTI2MCwgMTUyNjMsIDE1MjY2LCAwLCAxNTI2OSwgMTUyNzMsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE1Mjc3LCAxNTI4MSwgMCwgMTUyODUsIDE1Mjg4LCAxNTI5MiwgCisgICAgMTUyOTUsIDE1Mjk5LCAxNTMwMiwgMTUzMDYsIDE1MzEwLCAwLCAxNTMxNCwgMTUzMTcsIDE1MzIxLCAwLCAxNTMyNSwgCisgICAgMTUzMjgsIDE1MzMyLCAxNTMzNiwgMTUzMzksIDE1MzQzLCAxNTM0NywgMTUzNTEsIDE1MzU1LCAxNTM1OSwgMTUzNjMsIAorICAgIDE1MzY3LCAxNTM3MSwgMTUzNzUsIDE1Mzc5LCAxNTM4MywgMTUzODcsIDE1MzkxLCAxNTM5NSwgMTUzOTksIDE1NDAzLCAKKyAgICAxNTQwNywgMTU0MTEsIDE1NDE0LCAxNTQxOCwgMTU0MjEsIDE1NDI1LCAxNTQyOSwgMTU0MzMsIDE1NDM2LCAxNTQzOSwgCisgICAgMTU0NDIsIDE1NDQ2LCAxNTQ1MCwgMTU0NTQsIDE1NDU4LCAxNTQ2MiwgMTU0NjYsIDE1NDcwLCAxNTQ3MywgMTU0NzYsIDAsIAorICAgIDAsIDE1NDgwLCAxNTQ4NCwgMTU0ODksIDE1NDkzLCAxNTQ5OCwgMTU1MDIsIDE1NTA3LCAxNTUxMiwgMCwgMTU1MTgsIAorICAgIDE1NTIyLCAxNTUyNywgMCwgMTU1MzIsIDE1NTM2LCAxNTU0MSwgMTU1NDYsIDE1NTUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAxNTU1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTU1NjEsIDE1NTY2LCAxNTU3MSwgMTU1NzYsIDAsIDAsIAorICAgIDE1NTgyLCAxNTU4NiwgMTU1ODksIDE1NTkyLCAxNTU5NSwgMTU1OTgsIDE1NjAxLCAxNTYwNCwgMTU2MDcsIDE1NjEwLCAKKyAgICAxNTYxMywgMTU2MTcsIDE1NjIyLCAxNTYyNywgMTU2MzMsIDE1NjM5LCAwLCAwLCAwLCAxNTY0NSwgMTU2NDksIDE1NjU1LCAKKyAgICAxNTY2MSwgMTU2NjcsIDE1NjcyLCAxNTY3OCwgMCwgMCwgMTU2ODQsIDE1Njg4LCAwLCAxNTY5MiwgMTU2OTYsIDE1NzAwLCAKKyAgICAxNTcwNCwgMTU3MDgsIDE1NzEyLCAxNTcxNiwgMTU3MjAsIDE1NzI0LCAxNTcyOCwgMTU3MzIsIDE1NzM2LCAxNTc0MCwgCisgICAgMTU3NDQsIDE1NzQ4LCAxNTc1MiwgMTU3NTYsIDE1NzYwLCAwLCAwLCAwLCAxNTc2NCwgMTU3NzAsIDE1Nzc2LCAxNTc4MiwgCisgICAgMTU3ODgsIDE1Nzk0LCAxNTgwMCwgMTU4MDYsIDE1ODEyLCAxNTgxOCwgMTU4MjQsIDE1ODMwLCAxNTgzOCwgMTU4NDQsIAorICAgIDE1ODUwLCAxNTg1NiwgMTU4NjIsIDE1ODY4LCAxNTg3NCwgMTU4ODAsIDE1ODg2LCAxNTg5MiwgMTU4OTgsIDE1OTA0LCAwLCAKKyAgICAxNTkxMCwgMTU5MTYsIDE1OTIyLCAxNTkyOCwgMTU5MzQsIDE1OTQwLCAxNTk0NCwgMTU5NTAsIDE1OTU0LCAwLCAxNTk1OCwgCisgICAgMCwgMCwgMTU5NjQsIDE1OTY4LCAxNTk3NCwgMTU5ODAsIDE1OTg2LCAxNTk5MCwgMTU5OTYsIDAsIDAsIDAsIDE2MDAwLCAwLCAKKyAgICAwLCAwLCAwLCAxNjAwNCwgMTYwMDksIDE2MDE2LCAxNjAyMywgMTYwMzAsIDE2MDM3LCAwLCAxNjA0NCwgMCwgMTYwNTEsIAorICAgIDE2MDU2LCAxNjA2MSwgMTYwNjgsIDE2MDc1LCAxNjA4NCwgMTYwOTUsIDE2MTA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNjEwOSwgMTYxMTYsIDE2MTIzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAxNjEyOCwgMTYxMzQsIDE2MTQwLCAxNjE0NiwgMTYxNTIsIDE2MTU4LCAxNjE2NCwgMTYxNzAsIAorICAgIDE2MTc2LCAxNjE4MiwgMTYxODgsIDE2MTk0LCAxNjIwMCwgMTYyMDYsIDE2MjEyLCAxNjIxOCwgMTYyMjQsIDE2MjMwLCAKKyAgICAxNjIzNiwgMTYyNDIsIDE2MjQ4LCAxNjI1NCwgMTYyNjAsIDE2MjY2LCAxNjI3MiwgMTYyNzgsIDE2Mjg0LCAxNjI5MCwgCisgICAgMTYyOTYsIDE2MzAyLCAxNjMwOCwgMTYzMTQsIDE2MzIwLCAxNjMyNSwgMTYzMzEsIDE2MzM3LCAxNjM0MSwgMTYzNDcsIAorICAgIDE2MzUxLCAxNjM1NywgMTYzNjMsIDE2MzY5LCAxNjM3NSwgMTYzODEsIDE2Mzg3LCAxNjM5MiwgMTYzOTgsIDE2NDAyLCAKKyAgICAxNjQwNywgMTY0MTMsIDE2NDE5LCAxNjQyNSwgMTY0MzAsIDE2NDM2LCAxNjQ0MiwgMTY0NDgsIDE2NDUzLCAxNjQ1OSwgMCwgCisgICAgMCwgMCwgMCwgMTY0NjMsIDE2NDY5LCAxNjQ3NCwgMTY0ODAsIDE2NDg1LCAxNjQ5MywgMTY1MDEsIDE2NTA1LCAxNjUwOSwgCisgICAgMTY1MTMsIDE2NTE5LCAxNjUyNSwgMTY1MzEsIDE2NTM3LCAxNjU0MSwgMTY1NDUsIDE2NTQ5LCAxNjU1MywgMTY1NTcsIAorICAgIDE2NTYwLCAxNjU2MywgMTY1NjYsIDE2NTY5LCAxNjU3MiwgMTY1NzUsIDE2NTc4LCAxNjU4MSwgMTY1ODQsIDE2NTg4LCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNjU5MiwgMTY1OTcsIDAsIDE2NjA0LCAwLCAwLCAxNjYxMSwgCisgICAgMTY2MTYsIDAsIDE2NjIxLCAwLCAwLCAxNjYyOCwgMCwgMCwgMCwgMCwgMCwgMCwgMTY2MzMsIDE2NjM4LCAxNjY0MiwgCisgICAgMTY2NDksIDAsIDE2NjU2LCAxNjY2MSwgMTY2NjYsIDE2NjcxLCAxNjY3OCwgMTY2ODUsIDE2NjkyLCAwLCAxNjY5OSwgCisgICAgMTY3MDQsIDE2NzA5LCAwLCAxNjcxNiwgMCwgMTY3MjMsIDAsIDAsIDE2NzI4LCAxNjczNSwgMCwgMTY3NDIsIDE2NzQ2LCAKKyAgICAxNjc1MywgMTY3NTcsIDE2NzYyLCAxNjc3MCwgMTY3NzYsIDE2NzgyLCAxNjc4NywgMTY3OTMsIDE2Nzk5LCAxNjgwNSwgCisgICAgMTY4MTAsIDAsIDE2ODE2LCAxNjgyNCwgMTY4MzEsIDAsIDAsIDE2ODM4LCAxNjg0MywgMTY4NDksIDE2ODU0LCAxNjg2MCwgCisgICAgMCwgMTY4NjYsIDAsIDE2ODcyLCAxNjg3OSwgMTY4ODYsIDE2ODkzLCAxNjkwMCwgMTY5MDUsIDAsIDAsIDE2OTA5LCAKKyAgICAxNjkxNCwgMTY5MTgsIDE2OTIyLCAxNjkyNiwgMTY5MzAsIDE2OTM0LCAxNjkzOCwgMTY5NDIsIDE2OTQ2LCAwLCAwLCAKKyAgICAxNjk1MCwgMTY5NTYsIDE2OTYyLCAxNjk2OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTY5NzYsIDE2OTgwLCAxNjk5MSwgCisgICAgMTcwMDYsIDE3MDIxLCAxNzAzMSwgMTcwNDIsIDE3MDU1LCAxNzA2NiwgMTcwNzIsIDE3MDgwLCAxNzA5MCwgMTcwOTYsIAorICAgIDE3MTA0LCAxNzEwOCwgMTcxMTQsIDE3MTIwLCAxNzEyOCwgMTcxMzgsIDE3MTQ2LCAxNzE1OSwgMTcxNjUsIDE3MTczLCAKKyAgICAxNzE4MSwgMTcxOTMsIDE3MjAwLCAxNzIwOCwgMTcyMTYsIDE3MjI0LCAxNzIzMiwgMTcyNDAsIDE3MjQ4LCAxNzI1OCwgCisgICAgMTcyNjIsIDE3MjY1LCAxNzI2OCwgMTcyNzEsIDE3Mjc0LCAxNzI3NywgMTcyODAsIDE3MjgzLCAxNzI4NiwgMTcyODksIAorICAgIDE3MjkzLCAxNzI5NywgMTczMDEsIDE3MzA1LCAxNzMwOSwgMTczMTMsIDE3MzE3LCAxNzMyMSwgMTczMjUsIDE3MzMwLCAKKyAgICAxNzMzNiwgMTczNDYsIDE3MzYwLCAxNzM3MCwgMTczNzYsIDE3MzgyLCAxNzM5MCwgMTczOTgsIDE3NDA2LCAxNzQxNCwgCisgICAgMTc0MjAsIDE3NDI2LCAxNzQyOSwgMTc0MzMsIDE3NDM3LCAxNzQ0MSwgMTc0NDUsIDE3NDQ5LCAxNzQ1MywgMCwgMTc0NTcsIAorICAgIDE3NDYxLCAxNzQ2NSwgMTc0NjksIDE3NDczLCAxNzQ3NywgMTc0ODEsIDE3NDg1LCAxNzQ4OSwgMTc0OTMsIDE3NDk3LCAKKyAgICAxNzUwMCwgMTc1MDMsIDE3NTA3LCAxNzUxMSwgMTc1MTUsIDE3NTE4LCAxNzUyMiwgMTc1MjYsIDE3NTMwLCAxNzUzNCwgCisgICAgMTc1MzgsIDE3NTQyLCAxNzU0NiwgMTc1NTAsIDE3NTUzLCAxNzU1NiwgMTc1NjAsIDE3NTY0LCAxNzU2OCwgMTc1NzEsIAorICAgIDE3NTc0LCAxNzU3NywgMTc1ODEsIDE3NTg2LCAxNzU5MCwgMCwgMCwgMCwgMCwgMTc1OTQsIDE3NTk5LCAxNzYwMywgCisgICAgMTc2MDgsIDE3NjEyLCAxNzYxNywgMTc2MjIsIDE3NjI4LCAxNzYzMywgMTc2MzksIDE3NjQzLCAxNzY0OCwgMTc2NTIsIAorICAgIDE3NjU3LCAxNzY2NywgMTc2NzMsIDE3Njc5LCAxNzY4NiwgMTc2OTYsIDE3NzAyLCAxNzcwNiwgMTc3MTAsIDE3NzE2LCAKKyAgICAxNzcyMiwgMTc3MzAsIDE3NzM2LCAxNzc0NCwgMTc3NTIsIDE3NzYwLCAxNzc3MCwgMTc3NzgsIDE3Nzg4LCAxNzc5MywgCisgICAgMTc3OTksIDE3ODA1LCAxNzgxMSwgMTc4MTcsIDE3ODIzLCAxNzgyOSwgMCwgMTc4MzUsIDE3ODQxLCAxNzg0NywgMTc4NTMsIAorICAgIDE3ODU5LCAxNzg2NSwgMTc4NzEsIDE3ODc3LCAxNzg4MywgMTc4ODksIDE3ODk1LCAxNzkwMCwgMTc5MDUsIDE3OTExLCAKKyAgICAxNzkxNywgMTc5MjMsIDE3OTI4LCAxNzkzNCwgMTc5NDAsIDE3OTQ2LCAxNzk1MiwgMTc5NTgsIDE3OTY0LCAxNzk3MCwgCisgICAgMTc5NzYsIDE3OTgxLCAxNzk4NiwgMTc5OTIsIDE3OTk4LCAxODAwNCwgMTgwMDksIDE4MDE0LCAxODAxOSwgMTgwMjUsIAorICAgIDE4MDMzLCAxODA0MCwgMCwgMTgwNDcsIDE4MDU0LCAxODA2NywgMTgwNzQsIDE4MDgxLCAxODA4OSwgMTgwOTcsIDE4MTAzLCAKKyAgICAxODEwOSwgMTgxMTUsIDE4MTI1LCAxODEzMCwgMTgxMzYsIDE4MTQ2LCAxODE1NiwgMCwgMTgxNjYsIDE4MTc2LCAxODE4NCwgCisgICAgMTgxOTYsIDE4MjA4LCAxODIxNCwgMTgyMjgsIDE4MjQzLCAxODI0OCwgMTgyNTMsIDE4MjYxLCAxODI2OSwgMTgyNzcsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4Mjg1LCAxODI4OCwgMTgyOTIsIDE4Mjk2LCAxODMwMCwgCisgICAgMTgzMDQsIDE4MzA4LCAxODMxMiwgMTgzMTYsIDE4MzIwLCAxODMyNCwgMTgzMjgsIDE4MzMyLCAxODMzNiwgMTgzNDAsIAorICAgIDE4MzQ0LCAxODM0OCwgMTgzNTIsIDE4MzU2LCAxODM2MCwgMTgzNjQsIDE4MzY3LCAxODM3MCwgMTgzNzQsIDE4Mzc4LCAKKyAgICAxODM4MiwgMTgzODUsIDE4Mzg4LCAxODM5MSwgMTgzOTUsIDE4Mzk5LCAxODQwMiwgMTg0MDUsIDE4NDA5LCAxODQxMiwgCisgICAgMTg0MTcsIDE4NDIwLCAxODQyNCwgMTg0MjcsIDE4NDMxLCAxODQzNCwgMTg0MzksIDE4NDQyLCAxODQ0NiwgMTg0NTMsIAorICAgIDE4NDU4LCAxODQ2MiwgMTg0NjcsIDE4NDcxLCAxODQ3NiwgMTg0ODAsIDE4NDg1LCAxODQ5MiwgMTg0OTgsIDE4NTAzLCAKKyAgICAxODUwNywgMTg1MTEsIDE4NTE1LCAxODUxOSwgMTg1MjMsIDE4NTI4LCAxODUzMywgMTg1MzksIDE4NTQ0LCAxODU0OSwgCisgICAgMTg1NTMsIDE4NTU2LCAxODU1OSwgMTg1NjIsIDE4NTY1LCAxODU2OCwgMTg1NzEsIDE4NTc0LCAxODU3NywgMTg1ODAsIAorICAgIDE4NTg2LCAxODU5MCwgMTg1OTQsIDE4NTk4LCAxODYwMiwgMTg2MDYsIDE4NjEwLCAxODYxNCwgMTg2MTgsIDE4NjIzLCAKKyAgICAxODYyNywgMTg2MzIsIDE4NjM3LCAxODY0MywgMTg2NDgsIDE4NjU0LCAxODY2MCwgMTg2NjYsIDE4NjcyLCAxODY3OCwgCisgICAgMTg2ODUsIDE4NjkyLCAxODcwMCwgMTg3MDgsIDE4NzE3LCAxODcyNiwgMTg3MzcsIDE4NzQ3LCAxODc1NywgMTg3NjgsIAorICAgIDE4Nzc5LCAxODc4OSwgMTg3OTksIDE4ODA5LCAxODgxOSwgMTg4MjksIDE4ODM5LCAxODg0OSwgMTg4NTksIDE4ODY3LCAKKyAgICAxODg3NCwgMTg4ODAsIDE4ODg3LCAxODg5MiwgMTg4OTgsIDE4OTA0LCAxODkxMCwgMTg5MTYsIDE4OTIyLCAxODkyOCwgCisgICAgMTg5MzMsIDE4OTM5LCAxODk0NSwgMTg5NTEsIDE4OTU3LCAxODk2MiwgMTg5NzAsIDE4OTc3LCAxODk4MywgMTg5OTAsIAorICAgIDE4OTk4LCAxOTAwNCwgMTkwMTAsIDE5MDE2LCAxOTAyMiwgMTkwMzAsIDE5MDM4LCAxOTA0OCwgMTkwNTYsIDE5MDY0LCAKKyAgICAxOTA3MCwgMTkwNzUsIDE5MDgwLCAxOTA4NSwgMTkwOTAsIDE5MDk1LCAxOTEwMCwgMTkxMDUsIDE5MTEwLCAxOTExNSwgCisgICAgMTkxMjEsIDE5MTI3LCAxOTEzMywgMTkxNDAsIDE5MTQ1LCAxOTE1MSwgMTkxNTYsIDE5MTYxLCAxOTE2NiwgMTkxNzEsIAorICAgIDE5MTc2LCAxOTE4MSwgMTkxODYsIDE5MTkxLCAxOTE5NiwgMTkyMDEsIDE5MjA2LCAxOTIxMSwgMTkyMTYsIDE5MjIxLCAKKyAgICAxOTIyNiwgMTkyMzEsIDE5MjM2LCAxOTI0MSwgMTkyNDYsIDE5MjUxLCAxOTI1NiwgMTkyNjEsIDE5MjY2LCAxOTI3MSwgCisgICAgMTkyNzYsIDE5MjgxLCAxOTI4NiwgMTkyOTEsIDE5Mjk2LCAxOTMwMSwgMTkzMDYsIDE5MzExLCAxOTMxNiwgMTkzMjEsIAorICAgIDE5MzI2LCAxOTMzMSwgMTkzMzYsIDAsIDE5MzQxLCAwLCAwLCAwLCAwLCAwLCAxOTM0NiwgMCwgMCwgMTkzNTEsIDE5MzU1LCAKKyAgICAxOTM1OSwgMTkzNjMsIDE5MzY3LCAxOTM3MSwgMTkzNzUsIDE5Mzc5LCAxOTM4MywgMTkzODcsIDE5MzkxLCAxOTM5NSwgCisgICAgMTkzOTksIDE5NDAzLCAxOTQwNywgMTk0MTEsIDE5NDE1LCAxOTQxOSwgMTk0MjMsIDE5NDI3LCAxOTQzMSwgMTk0MzUsIAorICAgIDE5NDM5LCAxOTQ0MywgMTk0NDcsIDE5NDUxLCAxOTQ1NSwgMTk0NTksIDE5NDYzLCAxOTQ2NywgMTk0NzEsIDE5NDc1LCAKKyAgICAxOTQ3OSwgMTk0ODMsIDE5NDg3LCAxOTQ5MSwgMTk0OTUsIDE5NDk5LCAxOTUwMywgMTk1MDcsIDE5NTExLCAxOTUxNSwgCisgICAgMTk1MjEsIDE5NTI1LCAxOTUzMCwgMTk1MzUsIDE5NTM5LCAxOTU0NCwgMTk1NDksIDE5NTUzLCAxOTU1NywgMTk1NjEsIAorICAgIDE5NTY1LCAxOTU2OSwgMTk1NzMsIDE5NTc3LCAxOTU4MSwgMTk1ODUsIDE5NTg5LCAxOTU5MywgMTk1OTcsIDE5NjAxLCAKKyAgICAxOTYwNSwgMTk2MDksIDE5NjEzLCAxOTYxNywgMTk2MjEsIDE5NjI1LCAxOTYyOSwgMTk2MzMsIDE5NjM3LCAxOTY0MSwgCisgICAgMTk2NDUsIDE5NjQ5LCAxOTY1MywgMTk2NTcsIDE5NjYxLCAxOTY2NSwgMTk2NjksIDE5NjczLCAxOTY3NywgMTk2ODEsIAorICAgIDE5Njg1LCAxOTY4OSwgMTk2OTMsIDE5Njk3LCAxOTcwMSwgMTk3MDUsIDE5NzA5LCAxOTcxMywgMTk3MTcsIDE5NzIxLCAKKyAgICAxOTcyNSwgMTk3MjksIDE5NzMzLCAxOTczNywgMTk3NDEsIDE5NzQ1LCAxOTc0OSwgMTk3NTMsIDE5NzU3LCAxOTc2MSwgCisgICAgMTk3NjUsIDE5NzY5LCAxOTc3MywgMTk3NzcsIDE5NzgxLCAxOTc4NSwgMTk3ODksIDE5NzkzLCAxOTc5NywgMTk4MDEsIAorICAgIDE5ODA1LCAxOTgwOSwgMTk4MTMsIDE5ODE3LCAxOTgyMSwgMTk4MjUsIDE5ODI5LCAxOTgzMywgMTk4MzcsIDE5ODQxLCAKKyAgICAxOTg0NSwgMTk4NDksIDE5ODUzLCAxOTg1NywgMTk4NjEsIDE5ODY1LCAxOTg2OSwgMTk4NzMsIDE5ODc3LCAxOTg4MSwgCisgICAgMTk4ODUsIDE5ODg5LCAxOTg5MywgMTk4OTcsIDE5OTAxLCAxOTkwNSwgMTk5MDksIDE5OTEzLCAxOTkxNywgMTk5MjEsIAorICAgIDE5OTI1LCAxOTkyOSwgMTk5MzMsIDE5OTM3LCAxOTk0MCwgMTk5NDQsIDE5OTQ3LCAxOTk1MSwgMTk5NTUsIDE5OTU4LCAKKyAgICAxOTk2MiwgMTk5NjYsIDE5OTY5LCAxOTk3MywgMTk5NzcsIDE5OTgxLCAxOTk4NSwgMTk5ODgsIDE5OTkyLCAxOTk5NiwgCisgICAgMjAwMDAsIDIwMDA0LCAyMDAwOCwgMjAwMTIsIDIwMDE1LCAyMDAxOSwgMjAwMjMsIDIwMDI3LCAyMDAzMSwgMjAwMzUsIAorICAgIDIwMDM5LCAyMDA0MywgMjAwNDcsIDIwMDUxLCAyMDA1NSwgMjAwNTksIDIwMDYzLCAyMDA2NywgMjAwNzEsIDIwMDc1LCAKKyAgICAyMDA3OSwgMjAwODMsIDIwMDg3LCAyMDA5MSwgMjAwOTUsIDIwMDk5LCAyMDEwMywgMjAxMDcsIDIwMTExLCAyMDExNSwgCisgICAgMjAxMTksIDIwMTIzLCAyMDEyNywgMjAxMzEsIDIwMTM1LCAyMDEzOSwgMjAxNDMsIDIwMTQ3LCAyMDE1MSwgMjAxNTUsIAorICAgIDIwMTU5LCAyMDE2MywgMjAxNjcsIDIwMTcxLCAyMDE3NSwgMjAxNzksIDIwMTgzLCAyMDE4NywgMjAxOTEsIDIwMTk1LCAKKyAgICAyMDE5OSwgMjAyMDMsIDIwMjA3LCAyMDIxMSwgMjAyMTUsIDIwMjE5LCAyMDIyMywgMjAyMjcsIDIwMjMxLCAyMDIzNSwgCisgICAgMjAyMzksIDIwMjQzLCAyMDI0NywgMjAyNTEsIDIwMjU1LCAyMDI1OSwgMjAyNjMsIDIwMjY3LCAyMDI3MSwgMjAyNzUsIAorICAgIDIwMjc5LCAyMDI4MywgMjAyODcsIDIwMjkxLCAyMDI5NSwgMjAyOTksIDIwMzAzLCAyMDMwNywgMjAzMTEsIDIwMzE1LCAKKyAgICAyMDMxOSwgMjAzMjMsIDIwMzI3LCAyMDMzMSwgMjAzMzUsIDIwMzM5LCAyMDM0MywgMjAzNDcsIDIwMzUxLCAyMDM1NSwgCisgICAgMjAzNTksIDIwMzYzLCAyMDM2NywgMjAzNzEsIDIwMzc1LCAyMDM3OSwgMjAzODMsIDIwMzg3LCAyMDM5MSwgMjAzOTUsIAorICAgIDIwMzk5LCAyMDQwMywgMjA0MDcsIDIwNDExLCAyMDQxNSwgMjA0MTksIDIwNDIzLCAyMDQyNywgMjA0MzEsIDIwNDM1LCAKKyAgICAyMDQzOSwgMjA0NDMsIDIwNDQ3LCAyMDQ1MSwgMjA0NTUsIDIwNDU5LCAyMDQ2MywgMjA0NjcsIDIwNDcxLCAyMDQ3NSwgCisgICAgMjA0NzksIDIwNDgzLCAyMDQ4NywgMjA0OTEsIDIwNDk1LCAyMDQ5OSwgMjA1MDMsIDIwNTA3LCAyMDUxMSwgMjA1MTUsIAorICAgIDIwNTE5LCAyMDUyMywgMjA1MjcsIDIwNTMxLCAyMDUzNSwgMjA1MzksIDIwNTQzLCAyMDU0NywgMjA1NTEsIDIwNTU1LCAKKyAgICAyMDU1OSwgMjA1NjMsIDIwNTY3LCAyMDU3MCwgMjA1NzQsIDIwNTc4LCAyMDU4MiwgMjA1ODYsIDIwNTkwLCAyMDU5NCwgCisgICAgMjA1OTgsIDIwNjAyLCAyMDYwNiwgMjA2MTAsIDIwNjE0LCAyMDYxOCwgMjA2MjIsIDIwNjI2LCAyMDYzMCwgMjA2MzQsIAorICAgIDIwNjM4LCAyMDY0MiwgMjA2NDYsIDIwNjUwLCAyMDY1NCwgMjA2NTgsIDIwNjYyLCAyMDY2NSwgMjA2NjksIDIwNjczLCAKKyAgICAyMDY3NywgMjA2ODEsIDIwNjg1LCAyMDY4OSwgMjA2OTMsIDIwNjk3LCAyMDcwMSwgMjA3MDUsIDIwNzA5LCAyMDcxMywgCisgICAgMjA3MTcsIDIwNzIxLCAyMDcyNSwgMjA3MjgsIDIwNzMyLCAyMDczNiwgMjA3NDAsIDIwNzQ0LCAyMDc0OCwgMjA3NTIsIAorICAgIDIwNzU2LCAyMDc1OSwgMjA3NjMsIDIwNzY3LCAyMDc3MSwgMjA3NzUsIDIwNzc5LCAyMDc4MywgMjA3ODcsIDIwNzkxLCAKKyAgICAyMDc5NSwgMjA3OTksIDIwODAzLCAyMDgwNywgMjA4MTEsIDIwODE1LCAyMDgxOSwgMjA4MjMsIDIwODI3LCAyMDgzMSwgCisgICAgMjA4MzUsIDIwODM5LCAyMDg0MywgMjA4NDcsIDIwODUxLCAwLCAyMDg1NSwgMjA4NTksIDIwODYzLCAyMDg2NywgMCwgMCwgCisgICAgMjA4NzEsIDIwODc1LCAyMDg3OSwgMjA4ODMsIDIwODg3LCAyMDg5MSwgMjA4OTUsIDAsIDIwODk5LCAwLCAyMDkwMywgCisgICAgMjA5MDcsIDIwOTExLCAyMDkxNSwgMCwgMCwgMjA5MTksIDIwOTIzLCAyMDkyNywgMjA5MzEsIDIwOTM1LCAyMDkzOSwgCisgICAgMjA5NDMsIDIwOTQ3LCAyMDk1MSwgMjA5NTUsIDIwOTU5LCAyMDk2MywgMjA5NjcsIDIwOTcxLCAyMDk3NSwgMjA5NzksIAorICAgIDIwOTgzLCAyMDk4NywgMjA5OTEsIDIwOTk1LCAyMDk5OSwgMjEwMDMsIDIxMDA3LCAyMTAxMCwgMjEwMTQsIDIxMDE4LCAKKyAgICAyMTAyMiwgMjEwMjYsIDIxMDMwLCAyMTAzNCwgMjEwMzgsIDIxMDQyLCAyMTA0NiwgMjEwNTAsIDIxMDU0LCAyMTA1OCwgCisgICAgMjEwNjIsIDIxMDY2LCAyMTA3MCwgMjEwNzQsIDIxMDc4LCAwLCAyMTA4MiwgMjEwODYsIDIxMDkwLCAyMTA5NCwgMCwgMCwgCisgICAgMjEwOTgsIDIxMTAxLCAyMTEwNSwgMjExMDksIDIxMTEzLCAyMTExNywgMjExMjEsIDIxMTI1LCAyMTEyOSwgMjExMzMsIAorICAgIDIxMTM3LCAyMTE0MSwgMjExNDUsIDIxMTQ5LCAyMTE1MywgMjExNTcsIDIxMTYxLCAyMTE2NiwgMjExNzEsIDIxMTc2LCAKKyAgICAyMTE4MiwgMjExODgsIDIxMTkzLCAyMTE5OCwgMjEyMDQsIDIxMjA3LCAyMTIxMSwgMjEyMTUsIDIxMjE5LCAyMTIyMywgCisgICAgMjEyMjcsIDIxMjMxLCAyMTIzNSwgMCwgMjEyMzksIDIxMjQzLCAyMTI0NywgMjEyNTEsIDAsIDAsIDIxMjU1LCAyMTI1OSwgCisgICAgMjEyNjMsIDIxMjY3LCAyMTI3MSwgMjEyNzUsIDIxMjc5LCAwLCAyMTI4MywgMCwgMjEyODcsIDIxMjkxLCAyMTI5NSwgCisgICAgMjEyOTksIDAsIDAsIDIxMzAzLCAyMTMwNywgMjEzMTEsIDIxMzE1LCAyMTMxOSwgMjEzMjMsIDIxMzI3LCAyMTMzMSwgCisgICAgMjEzMzUsIDIxMzQwLCAyMTM0NSwgMjEzNTAsIDIxMzU2LCAyMTM2MiwgMjEzNjcsIDAsIDIxMzcyLCAyMTM3NiwgMjEzODAsIAorICAgIDIxMzg0LCAyMTM4OCwgMjEzOTIsIDIxMzk2LCAyMTQwMCwgMjE0MDQsIDIxNDA4LCAyMTQxMiwgMjE0MTYsIDIxNDIwLCAKKyAgICAyMTQyNCwgMjE0MjgsIDIxNDMyLCAyMTQzNiwgMjE0MzksIDIxNDQzLCAyMTQ0NywgMjE0NTEsIDIxNDU1LCAyMTQ1OSwgCisgICAgMjE0NjMsIDIxNDY3LCAyMTQ3MSwgMjE0NzUsIDIxNDc5LCAyMTQ4MywgMjE0ODcsIDIxNDkxLCAyMTQ5NSwgMjE0OTksIAorICAgIDIxNTAzLCAyMTUwNywgMjE1MTEsIDIxNTE1LCAyMTUxOSwgMjE1MjMsIDIxNTI3LCAyMTUzMSwgMjE1MzUsIDIxNTM5LCAKKyAgICAyMTU0MywgMjE1NDcsIDIxNTUxLCAyMTU1NSwgMjE1NTksIDIxNTYzLCAyMTU2NywgMjE1NzEsIDIxNTc1LCAyMTU3OSwgCisgICAgMjE1ODMsIDIxNTg3LCAyMTU5MSwgMjE1OTUsIDAsIDIxNTk5LCAyMTYwMywgMjE2MDcsIDIxNjExLCAwLCAwLCAyMTYxNSwgCisgICAgMjE2MTksIDIxNjIzLCAyMTYyNywgMjE2MzEsIDIxNjM1LCAyMTYzOSwgMjE2NDMsIDIxNjQ3LCAyMTY1MSwgMjE2NTUsIAorICAgIDIxNjU5LCAyMTY2MywgMjE2NjcsIDIxNjcxLCAyMTY3NSwgMjE2NzksIDIxNjgzLCAyMTY4NywgMjE2OTEsIDIxNjk1LCAKKyAgICAyMTY5OSwgMjE3MDMsIDIxNzA3LCAyMTcxMSwgMjE3MTUsIDIxNzE5LCAyMTcyMywgMjE3MjcsIDIxNzMxLCAyMTczNSwgCisgICAgMjE3MzksIDIxNzQzLCAyMTc0NywgMjE3NTEsIDIxNzU1LCAyMTc1OSwgMjE3NjMsIDIxNzY3LCAyMTc3MSwgMjE3NzUsIAorICAgIDIxNzc5LCAyMTc4MywgMjE3ODcsIDIxNzkxLCAyMTc5NSwgMjE3OTksIDIxODAzLCAyMTgwNywgMjE4MTEsIDIxODE1LCAKKyAgICAyMTgxOSwgMjE4MjMsIDIxODI3LCAyMTgzMSwgMjE4MzUsIDIxODM5LCAyMTg0MiwgMjE4NDYsIDIxODUwLCAyMTg1NCwgCisgICAgMjE4NTgsIDIxODYyLCAyMTg2NiwgMjE4NzAsIDIxODc0LCAyMTg3OCwgMCwgMCwgMjE4ODIsIDIxODkxLCAyMTg5NywgCisgICAgMjE5MDIsIDIxOTA2LCAyMTkwOSwgMjE5MTQsIDIxOTE3LCAyMTkyMCwgMjE5MjMsIDIxOTI4LCAyMTkzMiwgMjE5MzcsIAorICAgIDIxOTQwLCAyMTk0MywgMjE5NDYsIDIxOTQ5LCAyMTk1MiwgMjE5NTUsIDIxOTU4LCAyMTk2MSwgMjE5NjQsIDIxOTY4LCAKKyAgICAyMTk3MiwgMjE5NzYsIDIxOTgwLCAyMTk4NCwgMjE5ODgsIDIxOTkyLCAyMTk5NiwgMjIwMDAsIDIyMDA0LCAwLCAwLCAwLCAKKyAgICAyMjAxMCwgMjIwMTYsIDIyMDIwLCAyMjAyNCwgMjIwMjgsIDIyMDM0LCAyMjAzOCwgMjIwNDIsIDIyMDQ2LCAyMjA1MiwgCisgICAgMjIwNTYsIDIyMDYwLCAyMjA2NCwgMjIwNzAsIDIyMDc0LCAyMjA3OCwgMjIwODIsIDIyMDg4LCAyMjA5NCwgMjIxMDAsIAorICAgIDIyMTA4LCAyMjExNCwgMjIxMjAsIDIyMTI2LCAyMjEzMiwgMjIxMzgsIDAsIDAsIDAsIDAsIDAsIDAsIDIyMTQ0LCAyMjE0NywgCisgICAgMjIxNTAsIDIyMTUzLCAyMjE1NiwgMjIxNTksIDIyMTYzLCAyMjE2NywgMjIxNzAsIDIyMTc0LCAyMjE3OCwgMjIxODIsIAorICAgIDIyMTg2LCAyMjE5MCwgMjIxOTMsIDIyMTk3LCAyMjIwMSwgMjIyMDUsIDIyMjA5LCAyMjIxMywgMjIyMTcsIDIyMjIxLCAKKyAgICAyMjIyNSwgMjIyMjksIDIyMjMzLCAyMjIzNywgMjIyNDAsIDIyMjQ0LCAyMjI0OCwgMjIyNTIsIDIyMjU2LCAyMjI1OSwgCisgICAgMjIyNjMsIDIyMjY3LCAyMjI3MSwgMjIyNzUsIDIyMjc5LCAyMjI4MywgMjIyODcsIDIyMjkxLCAyMjI5NSwgMjIyOTksIAorICAgIDIyMzAzLCAyMjMwNywgMjIzMTEsIDIyMzE0LCAyMjMxOCwgMjIzMjIsIDIyMzI2LCAyMjMzMCwgMjIzMzQsIDIyMzM4LCAKKyAgICAyMjM0MiwgMjIzNDYsIDIyMzUwLCAyMjM1NCwgMjIzNTgsIDIyMzYyLCAyMjM2NiwgMjIzNzAsIDIyMzc0LCAyMjM3OCwgCisgICAgMjIzODIsIDIyMzg2LCAyMjM5MCwgMjIzOTQsIDIyMzk4LCAyMjQwMiwgMjI0MDYsIDIyNDEwLCAyMjQxNCwgMjI0MTgsIAorICAgIDIyNDIyLCAyMjQyNiwgMjI0MzAsIDIyNDM0LCAyMjQzOCwgMjI0NDIsIDIyNDQ2LCAyMjQ1MCwgMjI0NTMsIDIyNDU3LCAKKyAgICAyMjQ2MSwgMjI0NjUsIDIyNDY5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMjQ3MywgMjI0NzcsIAorICAgIDIyNDgwLCAyMjQ4NCwgMjI0ODcsIDIyNDkxLCAyMjQ5NCwgMjI0OTgsIDIyNTA0LCAyMjUwOSwgMjI1MTMsIDIyNTE2LCAKKyAgICAyMjUyMCwgMjI1MjQsIDIyNTI5LCAyMjUzMywgMjI1MzgsIDIyNTQyLCAyMjU0NywgMjI1NTEsIDIyNTU2LCAyMjU2MCwgCisgICAgMjI1NjUsIDIyNTcxLCAyMjU3NSwgMjI1ODAsIDIyNTg0LCAyMjU4OSwgMjI1OTUsIDIyNTk5LCAyMjYwNSwgMjI2MTEsIAorICAgIDIyNjE1LCAyMjYyMCwgMjI2MjgsIDIyNjM2LCAyMjY0MywgMjI2NDgsIDIyNjUzLCAyMjY2MiwgMjI2NjksIDIyNjc2LCAKKyAgICAyMjY4MSwgMjI2ODcsIDIyNjkxLCAyMjY5NSwgMjI2OTksIDIyNzAzLCAyMjcwNywgMjI3MTEsIDIyNzE1LCAyMjcxOSwgCisgICAgMjI3MjMsIDIyNzI3LCAyMjczMywgMjI3MzgsIDIyNzQzLCAyMjc0NiwgMjI3NTAsIDIyNzU0LCAyMjc1OSwgMjI3NjMsIAorICAgIDIyNzY4LCAyMjc3MiwgMjI3NzcsIDIyNzgxLCAyMjc4NiwgMjI3OTAsIDIyNzk1LCAyMjc5OSwgMjI4MDQsIDIyODA4LCAKKyAgICAyMjgxMywgMjI4MTksIDIyODIzLCAyMjgyOCwgMjI4MzMsIDIyODM3LCAyMjg0MSwgMjI4NDUsIDIyODQ5LCAyMjg1MiwgCisgICAgMjI4NTYsIDIyODYyLCAyMjg2NywgMjI4NzIsIDIyODc2LCAyMjg4MCwgMjI4ODQsIDIyODg5LCAyMjg5MywgMjI4OTgsIAorICAgIDIyOTAyLCAyMjkwNywgMjI5MTAsIDIyOTE0LCAyMjkxOCwgMjI5MjMsIDIyOTI3LCAyMjkzMiwgMjI5MzYsIDIyOTQxLCAKKyAgICAyMjk0NywgMjI5NTEsIDIyOTU1LCAyMjk1OSwgMjI5NjMsIDIyOTY3LCAyMjk3MSwgMjI5NzUsIDIyOTc5LCAyMjk4MywgCisgICAgMjI5ODcsIDIyOTkxLCAyMjk5NywgMjMwMDAsIDIzMDA0LCAyMzAwOCwgMjMwMTMsIDIzMDE3LCAyMzAyMiwgMjMwMjYsIAorICAgIDIzMDMxLCAyMzAzNSwgMjMwNDAsIDIzMDQ0LCAyMzA0OSwgMjMwNTMsIDIzMDU4LCAyMzA2MiwgMjMwNjcsIDIzMDczLCAKKyAgICAyMzA3NywgMjMwODEsIDIzMDg3LCAyMzA5MywgMjMwOTksIDIzMTA1LCAyMzEwOSwgMjMxMTMsIDIzMTE3LCAyMzEyMSwgCisgICAgMjMxMjUsIDIzMTI5LCAyMzEzNSwgMjMxMzksIDIzMTQzLCAyMzE0NywgMjMxNTIsIDIzMTU2LCAyMzE2MSwgMjMxNjUsIAorICAgIDIzMTcwLCAyMzE3NCwgMjMxNzksIDIzMTgzLCAyMzE4OCwgMjMxOTIsIDIzMTk3LCAyMzIwMSwgMjMyMDYsIDIzMjEyLCAKKyAgICAyMzIxNiwgMjMyMjIsIDIzMjI2LCAyMzIzMCwgMjMyMzQsIDIzMjM4LCAyMzI0MiwgMjMyNDYsIDIzMjUyLCAyMzI1NSwgCisgICAgMjMyNTksIDIzMjYzLCAyMzI2OCwgMjMyNzIsIDIzMjc3LCAyMzI4MSwgMjMyODYsIDIzMjkwLCAyMzI5NSwgMjMyOTksIAorICAgIDIzMzA0LCAyMzMwOCwgMjMzMTMsIDIzMzE3LCAyMzMyMiwgMjMzMjgsIDIzMzMxLCAyMzMzNSwgMjMzMzksIDIzMzQ0LCAKKyAgICAyMzM0OSwgMjMzNTMsIDIzMzU3LCAyMzM2MSwgMjMzNjUsIDIzMzY5LCAyMzM3MywgMjMzNzksIDIzMzgyLCAyMzM4NiwgCisgICAgMjMzOTAsIDIzMzk1LCAyMzM5OSwgMjM0MDQsIDIzNDA4LCAyMzQxMywgMjM0MTksIDIzNDIzLCAyMzQyOCwgMjM0MzIsIAorICAgIDIzNDM2LCAyMzQ0MCwgMjM0NDQsIDIzNDQ4LCAyMzQ1MiwgMjM0NTYsIDIzNDYyLCAyMzQ2NiwgMjM0NzAsIDIzNDc0LCAKKyAgICAyMzQ3OSwgMjM0ODMsIDIzNDg4LCAyMzQ5MiwgMjM0OTcsIDIzNTAxLCAyMzUwNiwgMjM1MTAsIDIzNTE1LCAyMzUxOSwgCisgICAgMjM1MjQsIDIzNTI4LCAyMzUzMywgMjM1MzYsIDIzNTQwLCAyMzU0NCwgMjM1NDgsIDIzNTUyLCAyMzU1NiwgMjM1NjAsIAorICAgIDIzNTY0LCAyMzU2OCwgMjM1NzQsIDIzNTc3LCAyMzU4MSwgMjM1ODUsIDIzNTkwLCAyMzU5NCwgMjM1OTksIDIzNjAzLCAKKyAgICAyMzYwOCwgMjM2MTIsIDIzNjE3LCAyMzYyMSwgMjM2MjYsIDIzNjMwLCAyMzYzNSwgMjM2MzksIDIzNjQ0LCAyMzY1MCwgCisgICAgMjM2NTQsIDIzNjYwLCAyMzY2NCwgMjM2NzAsIDIzNjc2LCAyMzY4MiwgMjM2ODgsIDIzNjk0LCAyMzcwMCwgMjM3MDYsIAorICAgIDIzNzEyLCAyMzcxNiwgMjM3MjAsIDIzNzI0LCAyMzcyOCwgMjM3MzIsIDIzNzM2LCAyMzc0MCwgMjM3NDQsIDIzNzQ5LCAKKyAgICAyMzc1MywgMjM3NTgsIDIzNzYyLCAyMzc2NywgMjM3NzEsIDIzNzc2LCAyMzc4MCwgMjM3ODUsIDIzNzg5LCAyMzc5NCwgCisgICAgMjM3OTgsIDIzODAzLCAyMzgwNywgMjM4MTEsIDIzODE1LCAyMzgxOSwgMjM4MjMsIDIzODI3LCAyMzgzMSwgMjM4MzcsIAorICAgIDIzODQwLCAyMzg0NCwgMjM4NDgsIDIzODUzLCAyMzg1NywgMjM4NjIsIDIzODY2LCAyMzg3MSwgMjM4NzUsIDIzODgwLCAKKyAgICAyMzg4NCwgMjM4ODksIDIzODkzLCAyMzg5OCwgMjM5MDIsIDIzOTA3LCAyMzkxMywgMjM5MTcsIDIzOTIzLCAyMzkyOCwgCisgICAgMjM5MzQsIDIzOTM4LCAyMzk0NCwgMjM5NDksIDIzOTUzLCAyMzk1NywgMjM5NjEsIDIzOTY1LCAyMzk2OSwgMjM5NzQsIAorICAgIDIzOTc3LCAyMzk4MSwgMjM5ODYsIDIzOTkwLCAyMzk5NSwgMjM5OTgsIDI0MDAyLCAyNDAwNiwgMjQwMTAsIDI0MDE0LCAKKyAgICAyNDAxOCwgMjQwMjIsIDI0MDI2LCAyNDAzMCwgMjQwMzQsIDI0MDM4LCAyNDA0MiwgMjQwNDcsIDI0MDUxLCAyNDA1NSwgCisgICAgMjQwNjEsIDI0MDY1LCAyNDA3MSwgMjQwNzUsIDI0MDgxLCAyNDA4NSwgMjQwODksIDI0MDkzLCAyNDA5NywgMjQxMDEsIAorICAgIDI0MTA2LCAyNDExMCwgMjQxMTQsIDI0MTE4LCAyNDEyMiwgMjQxMjYsIDI0MTMwLCAyNDEzNCwgMjQxMzgsIDI0MTQyLCAKKyAgICAyNDE0NiwgMjQxNTIsIDI0MTU4LCAyNDE2NCwgMjQxNzAsIDI0MTc2LCAyNDE4MSwgMjQxODcsIDI0MTkzLCAyNDE5OSwgCisgICAgMjQyMDMsIDI0MjA3LCAyNDIxMSwgMjQyMTUsIDI0MjE5LCAyNDIyMywgMjQyMjcsIDI0MjMxLCAyNDIzNSwgMjQyMzksIAorICAgIDI0MjQzLCAyNDI0NywgMjQyNTEsIDI0MjU2LCAyNDI2MSwgMjQyNjYsIDI0MjcwLCAyNDI3NCwgMjQyNzgsIDI0MjgyLCAKKyAgICAyNDI4NiwgMjQyOTAsIDI0Mjk0LCAyNDI5OCwgMjQzMDIsIDI0MzA2LCAyNDMxMiwgMjQzMTgsIDI0MzI0LCAyNDMzMCwgCisgICAgMjQzMzYsIDI0MzQyLCAyNDM0OCwgMjQzNTQsIDI0MzYwLCAyNDM2NCwgMjQzNjgsIDI0MzcyLCAyNDM3NiwgMjQzODAsIAorICAgIDI0Mzg0LCAyNDM4OCwgMjQzOTQsIDI0NDAwLCAyNDQwNiwgMjQ0MTIsIDI0NDE4LCAyNDQyNCwgMjQ0MzAsIDI0NDM2LCAKKyAgICAyNDQ0MiwgMjQ0NDcsIDI0NDUyLCAyNDQ1NywgMjQ0NjIsIDI0NDY4LCAyNDQ3NCwgMjQ0ODAsIDI0NDg2LCAyNDQ5MiwgCisgICAgMjQ0OTgsIDI0NTA0LCAyNDUwOSwgMjQ1MTUsIDI0NTIxLCAyNDUyNywgMjQ1MzIsIDI0NTM4LCAyNDU0NCwgMjQ1NTAsIAorICAgIDI0NTU1LCAyNDU2MCwgMjQ1NjUsIDI0NTcwLCAyNDU3NSwgMjQ1ODAsIDI0NTg1LCAyNDU5MCwgMjQ1OTUsIDI0NjAwLCAKKyAgICAyNDYwNSwgMjQ2MTAsIDI0NjE0LCAyNDYxOSwgMjQ2MjQsIDI0NjI5LCAyNDYzNCwgMjQ2MzksIDI0NjQ0LCAyNDY0OSwgCisgICAgMjQ2NTQsIDI0NjU5LCAyNDY2NCwgMjQ2NjksIDI0Njc0LCAyNDY3OSwgMjQ2ODQsIDI0Njg5LCAyNDY5NCwgMjQ2OTksIAorICAgIDI0NzA0LCAyNDcwOSwgMjQ3MTQsIDI0NzE5LCAyNDcyNCwgMjQ3MjksIDI0NzM0LCAyNDczOSwgMjQ3NDQsIDI0NzQ5LCAKKyAgICAyNDc1NCwgMjQ3NTksIDI0NzYzLCAyNDc2OCwgMjQ3NzMsIDI0Nzc4LCAyNDc4MywgMjQ3ODgsIDI0NzkzLCAyNDc5OCwgCisgICAgMjQ4MDMsIDI0ODA4LCAyNDgxMywgMjQ4MTgsIDI0ODIzLCAyNDgyOCwgMjQ4MzMsIDI0ODM4LCAyNDg0MywgMjQ4NDgsIAorICAgIDI0ODUzLCAyNDg1OCwgMjQ4NjMsIDI0ODY4LCAyNDg3MywgMjQ4NzgsIDI0ODgzLCAyNDg4OCwgMjQ4OTIsIDI0ODk3LCAKKyAgICAyNDkwMiwgMjQ5MDcsIDI0OTEyLCAyNDkxNywgMjQ5MjEsIDI0OTI2LCAyNDkzMSwgMjQ5MzYsIDI0OTQxLCAyNDk0NiwgCisgICAgMjQ5NTAsIDI0OTU1LCAyNDk2MSwgMjQ5NjYsIDI0OTcxLCAyNDk3NiwgMjQ5ODEsIDI0OTg3LCAyNDk5MiwgMjQ5OTcsIAorICAgIDI1MDAyLCAyNTAwNywgMjUwMTIsIDI1MDE3LCAyNTAyMiwgMjUwMjcsIDI1MDMyLCAyNTAzNywgMjUwNDIsIDI1MDQ3LCAKKyAgICAyNTA1MiwgMjUwNTcsIDI1MDYyLCAyNTA2NywgMjUwNzIsIDI1MDc3LCAyNTA4MiwgMjUwODcsIDI1MDkyLCAyNTA5NywgCisgICAgMjUxMDIsIDI1MTA3LCAyNTExMiwgMjUxMTcsIDI1MTIyLCAyNTEyNywgMjUxMzIsIDI1MTM3LCAyNTE0MiwgMjUxNDcsIAorICAgIDI1MTUyLCAyNTE1NywgMjUxNjIsIDI1MTY3LCAyNTE3MiwgMjUxNzcsIDI1MTgyLCAyNTE4NywgMjUxOTIsIDI1MTk3LCAKKyAgICAyNTIwMiwgMjUyMDcsIDI1MjEzLCAyNTIxOCwgMjUyMjMsIDI1MjI4LCAyNTIzMywgMjUyMzgsIDI1MjQzLCAyNTI0OCwgCisgICAgMjUyNTMsIDI1MjU4LCAyNTI2MywgMjUyNjgsIDI1MjcyLCAyNTI3NywgMjUyODIsIDI1Mjg3LCAyNTI5MiwgMjUyOTcsIAorICAgIDI1MzAyLCAyNTMwNywgMjUzMTIsIDI1MzE3LCAyNTMyMiwgMjUzMjcsIDI1MzMyLCAyNTMzNywgMjUzNDIsIDI1MzQ3LCAKKyAgICAyNTM1MiwgMjUzNTcsIDI1MzYyLCAyNTM2NywgMjUzNzIsIDI1Mzc3LCAyNTM4MiwgMjUzODcsIDI1MzkyLCAyNTM5NywgCisgICAgMjU0MDIsIDI1NDA4LCAyNTQxMiwgMjU0MTYsIDI1NDIwLCAyNTQyNCwgMjU0MjgsIDI1NDMyLCAyNTQzNiwgMjU0NDAsIAorICAgIDI1NDQ2LCAyNTQ1MiwgMjU0NTgsIDI1NDY0LCAyNTQ3MCwgMjU0NzYsIDI1NDgyLCAyNTQ4OSwgMjU0OTUsIDI1NTAwLCAKKyAgICAyNTUwNSwgMjU1MTAsIDI1NTE1LCAyNTUyMCwgMjU1MjUsIDI1NTMwLCAyNTUzNSwgMjU1NDAsIDI1NTQ1LCAyNTU1MCwgCisgICAgMjU1NTUsIDI1NTYwLCAyNTU2NSwgMjU1NzAsIDI1NTc1LCAyNTU4MCwgMjU1ODUsIDI1NTkwLCAyNTU5NSwgMjU2MDAsIAorICAgIDI1NjA1LCAyNTYxMCwgMjU2MTUsIDI1NjIwLCAyNTYyNSwgMjU2MzAsIDI1NjM1LCAwLCAwLCAwLCAyNTY0MiwgMjU2NTIsIAorICAgIDI1NjU2LCAyNTY2MywgMjU2NjcsIDI1NjcxLCAyNTY3NSwgMjU2ODMsIDI1Njg3LCAyNTY5MiwgMjU2OTcsIDI1NzAyLCAKKyAgICAyNTcwNiwgMjU3MTEsIDI1NzE2LCAyNTcxOSwgMjU3MjMsIDI1NzI3LCAyNTczNiwgMjU3NDAsIDI1NzQ0LCAyNTc1MCwgCisgICAgMjU3NTQsIDI1NzU4LCAyNTc2NiwgMjU3NzAsIDI1Nzc4LCAyNTc4NCwgMjU3OTAsIDI1Nzk2LCAyNTgwMiwgMjU4MTIsIAorICAgIDI1ODE4LCAyNTgyMiwgMjU4MzEsIDI1ODM0LCAyNTg0MCwgMjU4NDQsIDI1ODUwLCAyNTg1NSwgMjU4NjEsIDI1ODY5LCAKKyAgICAyNTg3NSwgMjU4ODEsIDI1ODg5LCAyNTg5NSwgMjU4OTksIDI1OTAzLCAyNTkxMywgMjU5MTksIDI1OTIzLCAyNTkzMywgCisgICAgMjU5MzksIDI1OTQzLCAyNTk0NywgMjU5NTQsIDI1OTYxLCAyNTk2NiwgMjU5NzEsIDI1OTgwLCAyNTk4NCwgMjU5ODgsIAorICAgIDI1OTkyLCAyNjAwMCwgMjYwMDcsIDI2MDExLCAyNjAxNSwgMjYwMTksIDI2MDIzLCAyNjAyNywgMjYwMzEsIDI2MDM1LCAKKyAgICAyNjAzOSwgMjYwNDMsIDI2MDQ3LCAyNjA1MSwgMjYwNTYsIDI2MDYxLCAyNjA2NiwgMjYwNzAsIDI2MDc0LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNjA3OCwgMjYwODIsIDI2MDg2LCAyNjA5MCwgMjYwOTQsIAorICAgIDI2MDk5LCAyNjEwNCwgMjYxMDksIDI2MTE0LCAyNjExOCwgMjYxMjIsIDI2MTI3LCAyNjEzMSwgMCwgMjYxMzUsIDI2MTQwLCAKKyAgICAyNjE0NSwgMjYxNDksIDI2MTUzLCAyNjE1OCwgMjYxNjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDI2MTY4LCAyNjE3MiwgMjYxNzYsIDI2MTgwLCAyNjE4NCwgMjYxODksIDI2MTk0LCAyNjE5OSwgMjYyMDQsIDI2MjA4LCAKKyAgICAyNjIxMiwgMjYyMTcsIDI2MjIxLCAyNjIyNSwgMjYyMjksIDI2MjM0LCAyNjIzOSwgMjYyNDMsIDI2MjQ3LCAyNjI1MiwgCisgICAgMjYyNTcsIDI2MjYyLCAyNjI2OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjYyNzMsIDI2Mjc3LCAyNjI4MSwgCisgICAgMjYyODUsIDI2Mjg5LCAyNjI5NCwgMjYyOTksIDI2MzA0LCAyNjMwOSwgMjYzMTMsIDI2MzE3LCAyNjMyMiwgMjYzMjYsIAorICAgIDI2MzMwLCAyNjMzNCwgMjYzMzksIDI2MzQ0LCAyNjM0OCwgMjYzNTIsIDI2MzU3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAyNjM2MiwgMjYzNjYsIDI2MzcwLCAyNjM3NCwgMjYzNzgsIDI2MzgzLCAyNjM4OCwgMjYzOTMsIAorICAgIDI2Mzk4LCAyNjQwMiwgMjY0MDYsIDI2NDExLCAyNjQxNSwgMCwgMjY0MTksIDI2NDI0LCAyNjQyOSwgMCwgMjY0MzMsIAorICAgIDI2NDM4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNjQ0MywgMjY0NDYsIDI2NDUwLCAyNjQ1NCwgCisgICAgMjY0NTgsIDI2NDYyLCAyNjQ2NiwgMjY0NzAsIDI2NDc0LCAyNjQ3OCwgMjY0ODIsIDI2NDg2LCAyNjQ5MCwgMjY0OTQsIAorICAgIDI2NDk4LCAyNjUwMiwgMjY1MDYsIDI2NTEwLCAyNjUxMywgMjY1MTcsIDI2NTIxLCAyNjUyNSwgMjY1MjksIDI2NTMzLCAKKyAgICAyNjUzNywgMjY1NDEsIDI2NTQ1LCAyNjU0OSwgMjY1NTMsIDI2NTU3LCAyNjU2MSwgMjY1NjUsIDI2NTY4LCAyNjU3MSwgCisgICAgMjY1NzUsIDI2NTc5LCAyNjU4NSwgMjY1OTEsIDI2NTk3LCAyNjYwMywgMjY2MDksIDI2NjE1LCAyNjYyMSwgMjY2MjcsIAorICAgIDI2NjMzLCAyNjYzOSwgMjY2NDUsIDI2NjUxLCAyNjY1NywgMjY2NjMsIDI2NjcyLCAyNjY4MSwgMjY2ODcsIDI2NjkzLCAKKyAgICAyNjY5OSwgMjY3MDQsIDI2NzA4LCAyNjcxMywgMjY3MTgsIDI2NzIzLCAyNjcyNywgMjY3MzIsIDI2NzM3LCAyNjc0MiwgCisgICAgMjY3NDYsIDI2NzUxLCAyNjc1NSwgMjY3NjAsIDI2NzY1LCAyNjc3MCwgMjY3NzUsIDI2Nzc5LCAyNjc4MywgMjY3ODcsIAorICAgIDI2NzkxLCAyNjc5NSwgMjY3OTksIDI2ODAzLCAyNjgwNywgMjY4MTEsIDI2ODE1LCAyNjgyMSwgMjY4MjUsIDI2ODI5LCAKKyAgICAyNjgzMywgMjY4MzcsIDI2ODQxLCAyNjg0OSwgMjY4NTUsIDI2ODU5LCAyNjg2NSwgMjY4NjksIDI2ODc1LCAyNjg3OSwgMCwgCisgICAgMCwgMjY4ODMsIDI2ODg3LCAyNjg5MCwgMjY4OTMsIDI2ODk2LCAyNjg5OSwgMjY5MDIsIDI2OTA1LCAyNjkwOCwgMjY5MTEsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDI2OTE0LCAyNjkyMiwgMjY5MzAsIDI2OTM4LCAyNjk0NiwgMjY5NTQsIDI2OTYyLCAyNjk3MCwgCisgICAgMjY5NzgsIDI2OTg2LCAwLCAwLCAwLCAwLCAwLCAwLCAyNjk5NCwgMjY5OTcsIDI3MDAwLCAyNzAwMywgMjcwMDgsIDI3MDExLCAKKyAgICAyNzAxNiwgMjcwMjMsIDI3MDMxLCAyNzAzNiwgMjcwNDMsIDI3MDQ2LCAyNzA1MywgMjcwNjAsIDI3MDY3LCAwLCAyNzA3MSwgCisgICAgMjcwNzUsIDI3MDc4LCAyNzA4MSwgMjcwODQsIDI3MDg3LCAyNzA5MCwgMjcwOTMsIDI3MDk2LCAyNzA5OSwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMjcxMDIsIDI3MTA1LCAyNzEwOCwgMjcxMTEsIDI3MTE0LCAyNzExNywgMjcxMjEsIDI3MTI1LCAyNzEyOSwgCisgICAgMjcxMzIsIDI3MTM2LCAyNzE0MCwgMjcxNDMsIDI3MTQ3LCAyNzE1MSwgMjcxNTQsIDI3MTU4LCAyNzE2MSwgMjcxNjUsIAorICAgIDI3MTY5LCAyNzE3MywgMjcxNzcsIDI3MTgxLCAyNzE4NCwgMjcxODcsIDI3MTkxLCAyNzE5NSwgMjcxOTgsIDI3MjAyLCAKKyAgICAyNzIwNiwgMjcyMTAsIDI3MjE0LCAyNzIxOCwgMjcyMjIsIDI3MjI2LCAyNzIzMCwgMjcyMzcsIDI3MjQyLCAyNzI0NywgCisgICAgMjcyNTIsIDI3MjU3LCAyNzI2MywgMjcyNjksIDI3Mjc1LCAyNzI4MSwgMjcyODYsIDI3MjkyLCAyNzI5OCwgMjczMDMsIAorICAgIDI3MzA5LCAyNzMxNSwgMjczMjEsIDI3MzI3LCAyNzMzMywgMjczMzgsIDI3MzQ0LCAyNzM0OSwgMjczNTUsIDI3MzYxLCAKKyAgICAyNzM2NywgMjczNzMsIDI3Mzc5LCAyNzM4NCwgMjczODksIDI3Mzk1LCAyNzQwMSwgMjc0MDYsIDI3NDEyLCAyNzQxNywgCisgICAgMjc0MjMsIDI3NDI4LCAyNzQzMywgMjc0MzksIDI3NDQ1LCAyNzQ1MSwgMjc0NTcsIDI3NDYzLCAyNzQ2OSwgMjc0NzUsIAorICAgIDI3NDgxLCAyNzQ4NywgMjc0OTMsIDI3NDk5LCAyNzUwNSwgMjc1MTAsIDI3NTE1LCAyNzUyMCwgMjc1MjYsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDI3NTMyLCAyNzU0MSwgMjc1NTAsIDI3NTU4LCAyNzU2NiwgMjc1NzYsIDI3NTg0LCAyNzU5MywgCisgICAgMjc2MDAsIDI3NjA3LCAyNzYxNCwgMjc2MjIsIDI3NjMwLCAyNzYzOCwgMjc2NDYsIDI3NjU0LCAyNzY2MiwgMjc2NzAsIAorICAgIDI3Njc4LCAyNzY4NSwgMjc2OTMsIDI3NzAxLCAyNzcwOSwgMjc3MTcsIDI3NzI1LCAyNzczNSwgMjc3NDUsIDI3NzU1LCAKKyAgICAyNzc2NSwgMjc3NzUsIDI3Nzg1LCAyNzc5NSwgMjc4MDUsIDI3ODE1LCAyNzgyNSwgMjc4MzUsIDI3ODQ1LCAyNzg1NSwgCisgICAgMjc4NjUsIDI3ODczLCAyNzg4MSwgMjc4OTEsIDI3ODk5LCAwLCAwLCAwLCAwLCAwLCAyNzkwOSwgMjc5MTMsIDI3OTE3LCAKKyAgICAyNzkyMSwgMjc5MjUsIDI3OTI5LCAyNzkzMywgMjc5MzcsIDI3OTQxLCAyNzk0NSwgMjc5NDksIDI3OTUzLCAyNzk1NywgCisgICAgMjc5NjEsIDI3OTY1LCAyNzk2OSwgMjc5NzMsIDI3OTc3LCAyNzk4MSwgMjc5ODUsIDI3OTg5LCAyNzk5MywgMjc5OTcsIAorICAgIDI4MDAxLCAyODAwNywgMjgwMTEsIDI4MDE3LCAyODAyMSwgMjgwMjcsIDI4MDMxLCAyODAzNywgMjgwNDEsIDI4MDQ1LCAKKyAgICAyODA0OSwgMjgwNTMsIDI4MDU3LCAyODA2MSwgMjgwNjcsIDI4MDczLCAyODA3OSwgMjgwODUsIDI4MDkwLCAyODA5NiwgCisgICAgMjgxMDIsIDI4MTA4LCAyODExNCwgMjgxMjAsIDI4MTI2LCAyODEzMywgMjgxMzksIDI4MTQ0LCAyODE0OSwgMjgxNTMsIAorICAgIDI4MTU3LCAyODE2MSwgMjgxNjUsIDI4MTY5LCAyODE3MywgMjgxNzcsIDI4MTgzLCAyODE4OSwgMjgxOTUsIDI4MjAwLCAKKyAgICAyODIwNywgMjgyMTIsIDI4MjE3LCAyODIyMywgMjgyMjgsIDI4MjM1LCAyODI0MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMjgyNDksIDI4MjU1LCAyODI1OSwgMjgyNjQsIDI4MjY5LCAyODI3NCwgMjgyNzksIDI4Mjg0LCAyODI4OSwgCisgICAgMjgyOTQsIDI4Mjk5LCAyODMwNCwgMjgzMDksIDI4MzE0LCAyODMxOSwgMjgzMjQsIDI4MzI4LCAyODMzMiwgMjgzMzcsIAorICAgIDI4MzQyLCAyODM0NywgMjgzNTEsIDI4MzU1LCAyODM1OSwgMjgzNjQsIDI4MzY5LCAyODM3NCwgMjgzNzksIDI4MzgzLCAwLCAKKyAgICAwLCAwLCAyODM4NywgMjgzOTIsIDI4Mzk3LCAyODQwMiwgMjg0MDgsIDI4NDE0LCAyODQyMCwgMjg0MjYsIDI4NDMxLCAKKyAgICAyODQzNiwgMjg0NDIsIDI4NDQ4LCAwLCAwLCAwLCAwLCAyODQ1NSwgMjg0NjAsIDI4NDY2LCAyODQ3MiwgMjg0NzgsIAorICAgIDI4NDgzLCAyODQ4OCwgMjg0OTMsIDI4NDk4LCAyODUwNCwgMjg1MDksIDI4NTE0LCAwLCAwLCAwLCAwLCAyODUxOSwgMCwgMCwgCisgICAgMCwgMjg1MjQsIDI4NTI5LCAyODUzNCwgMjg1MzksIDI4NTQzLCAyODU0NywgMjg1NTEsIDI4NTU1LCAyODU1OSwgMjg1NjMsIAorICAgIDI4NTY3LCAyODU3MSwgMjg1NzUsIDI4NTgwLCAyODU4NiwgMjg1OTIsIDI4NTk4LCAyODYwMywgMjg2MDgsIDI4NjE0LCAKKyAgICAyODYyMCwgMjg2MjYsIDI4NjMxLCAyODYzNywgMjg2NDIsIDI4NjQ4LCAyODY1NCwgMjg2NTksIDI4NjY1LCAyODY3MSwgCisgICAgMjg2NzcsIDI4NjgyLCAyODY4NywgMjg2OTIsIDI4Njk4LCAyODcwNCwgMjg3MDksIDI4NzE1LCAyODcyMCwgMjg3MjYsIAorICAgIDI4NzMxLCAyODczNywgMCwgMCwgMjg3NDMsIDI4NzQ5LCAyODc1NSwgMjg3NjEsIDI4NzY3LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAyODc3MywgMjg3ODAsIDI4Nzg3LCAyODc5MywgMjg4MDAsIDI4ODA3LCAyODgxMywgMjg4MjAsIAorICAgIDI4ODI3LCAyODgzNCwgMjg4NDAsIDI4ODQ2LCAyODg1MywgMjg4NTksIDI4ODY1LCAyODg3MiwgMjg4NzksIDI4ODg1LCAKKyAgICAyODg5MiwgMjg4OTksIDI4OTA1LCAyODkxMSwgMjg5MTgsIDI4OTI0LCAyODkzMCwgMjg5MzcsIDI4OTQzLCAyODk1MCwgCisgICAgMjg5NTcsIDI4OTY0LCAyODk3MSwgMjg5NzgsIDI4OTg1LCAyODk5MSwgMjg5OTgsIDI5MDA1LCAyOTAxMSwgMjkwMTgsIAorICAgIDI5MDI1LCAyOTAzMiwgMjkwMzksIDI5MDQ2LCAyOTA1MywgMjkwNjAsIDAsIDAsIDAsIDAsIDI5MDY3LCAyOTA3NSwgCisgICAgMjkwODIsIDI5MDg5LCAyOTA5NSwgMjkxMDIsIDI5MTA4LCAyOTExNSwgMjkxMjEsIDI5MTI4LCAyOTEzNSwgMjkxNDIsIAorICAgIDI5MTQ5LCAyOTE1NiwgMjkxNjMsIDI5MTcwLCAyOTE3NywgMjkxODQsIDI5MTkxLCAyOTE5OCwgMjkyMDUsIDI5MjExLCAKKyAgICAyOTIxOCwgMjkyMjUsIDI5MjMyLCAyOTIzOCwgMCwgMCwgMCwgMCwgMCwgMCwgMjkyNDQsIDI5MjUwLCAyOTI1NSwgMjkyNjAsIAorICAgIDI5MjY1LCAyOTI3MCwgMjkyNzUsIDI5MjgwLCAyOTI4NSwgMjkyOTAsIDI5Mjk1LCAwLCAwLCAwLCAyOTMwMSwgMjkzMDcsIAorICAgIDI5MzEzLCAyOTMxNywgMjkzMjMsIDI5MzI5LCAyOTMzNSwgMjkzNDEsIDI5MzQ3LCAyOTM1MywgMjkzNTksIDI5MzY1LCAKKyAgICAyOTM3MSwgMjkzNzcsIDI5MzgzLCAyOTM4OSwgMjkzOTUsIDI5NDAxLCAyOTQwNywgMjk0MTEsIDI5NDE3LCAyOTQyMywgCisgICAgMjk0MjksIDI5NDM1LCAyOTQ0MSwgMjk0NDcsIDI5NDUzLCAyOTQ1OSwgMjk0NjUsIDI5NDcxLCAyOTQ3NywgMjk0ODMsIAorICAgIDI5NDg5LCAyOTQ5NSwgMjk1MDEsIDI5NTA1LCAyOTUxMCwgMjk1MTUsIDI5NTIwLCAyOTUyNCwgMjk1MjksIDI5NTMzLCAKKyAgICAyOTUzOCwgMjk1NDMsIDI5NTQ4LCAyOTU1MiwgMjk1NTcsIDI5NTYyLCAyOTU2NywgMjk1NzIsIDI5NTc3LCAyOTU4MSwgCisgICAgMjk1ODUsIDI5NTkwLCAyOTU5NSwgMjk1OTksIDI5NjAzLCAyOTYwNywgMjk2MTIsIDI5NjE3LCAyOTYyMiwgMjk2MjcsIDAsIAorICAgIDAsIDI5NjMzLCAyOTYzNywgMjk2NDQsIDI5NjQ5LCAyOTY1NSwgMjk2NjEsIDI5NjY2LCAyOTY3MiwgMjk2NzgsIDI5NjgzLCAKKyAgICAyOTY4OSwgMjk2OTUsIDI5NzAxLCAyOTcwNiwgMjk3MTIsIDI5NzE3LCAyOTcyMiwgMjk3MjgsIDI5NzMzLCAyOTczOSwgCisgICAgMjk3NDQsIDI5NzUwLCAyOTc1NiwgMjk3NjIsIDI5NzY4LCAyOTc3MiwgMjk3NzcsIDI5NzgyLCAyOTc4OCwgMjk3OTQsIAorICAgIDI5Nzk5LCAyOTgwNSwgMjk4MTEsIDI5ODE1LCAyOTgyMCwgMjk4MjUsIDI5ODI5LCAyOTgzNCwgMjk4MzksIDI5ODQ0LCAKKyAgICAyOTg0OSwgMjk4NTUsIDI5ODYxLCAyOTg2NiwgMjk4NzEsIDI5ODc2LCAyOTg4MCwgMjk4ODUsIDI5ODg5LCAyOTg5NCwgCisgICAgMjk4OTgsIDI5OTAzLCAyOTkwOCwgMjk5MTMsIDI5OTE4LCAyOTkyNCwgMjk5MzAsIDI5OTM3LCAyOTk0NywgMjk5NTYsIAorICAgIDI5OTYzLCAyOTk2OSwgMjk5NzksIDI5OTg0LCAyOTk5MCwgMCwgMjk5OTUsIDMwMDAwLCAzMDAwNSwgMzAwMTMsIDMwMDE5LCAKKyAgICAzMDAyNywgMzAwMzIsIDMwMDM4LCAzMDA0NCwgMzAwNTAsIDMwMDU1LCAzMDA2MSwgMzAwNjYsIDMwMDczLCAzMDA3OSwgCisgICAgMzAwODQsIDMwMDkwLCAzMDA5NiwgMzAxMDIsIDMwMTA5LCAzMDExNiwgMzAxMjMsIDMwMTI4LCAzMDEzMywgMzAxNDAsIAorICAgIDMwMTQ3LCAzMDE1NCwgMzAxNjEsIDMwMTY4LCAwLCAwLCAzMDE3NSwgMzAxODIsIDMwMTg5LCAzMDE5NSwgMzAyMDEsIAorICAgIDMwMjA3LCAzMDIxMywgMzAyMTksIDMwMjI1LCAzMDIzMSwgMzAyMzcsIDAsIDAsIDAsIDAsIDAsIDAsIDMwMjQzLCAzMDI0OSwgCisgICAgMzAyNTQsIDMwMjU5LCAzMDI2NCwgMzAyNjksIDMwMjc0LCAzMDI3OSwgMzAyODQsIDMwMjg5LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAzMDI5NCwgMzAyOTksIDMwMzA0LCAzMDMwOSwgMzAzMTQsIDMwMzE5LCAzMDMyNCwgMzAzMzMsIDMwMzQwLCAzMDM0NSwgCisgICAgMzAzNTAsIDMwMzU1LCAzMDM2MCwgMzAzNjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcxNTU5LCA3MTU2NiwgNzE1NzQsIDcxNTgyLCAKLSAgICA3MTU4OSwgNzE1OTcsIDcxNjA0LCA3MTYxMCwgNzE2MTYsIDcxNjIzLCA3MTYyOSwgNzE2MzUsIDcxNjQxLCA3MTY0OCwgCi0gICAgNzE2NTUsIDcxNjYyLCA3MTY2OSwgNzE2NzYsIDcxNjgzLCA3MTY5MCwgNzE2OTcsIDcxNzA0LCA3MTcxMSwgNzE3MTgsIAotICAgIDcxNzI1LCA3MTczMiwgNzE3MzksIDcxNzQ1LCA3MTc1MiwgNzE3NTksIDcxNzY2LCA3MTc3MywgNzE3ODAsIDcxNzg3LCAKLSAgICA3MTc5NCwgNzE4MDEsIDcxODA4LCA3MTgxNSwgNzE4MjIsIDcxODI5LCA3MTgzNiwgNzE4NDMsIDcxODUwLCA3MTg1NywgCi0gICAgNzE4NjQsIDcxODcxLCA3MTg3OSwgNzE4ODcsIDcxODk1LCA3MTkwMywgMCwgMCwgMCwgMCwgNzE5MTEsIDcxOTIwLCAKLSAgICA3MTkyOSwgNzE5MzgsIDcxOTQ3LCA3MTk1NiwgNzE5NjUsIDcxOTcyLCA3MTk3OSwgNzE5ODYsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDcxOTkzLCA3MTk5NywgNzIwMDIsIDcyMDA3LCA3MjAxMiwgNzIwMTcsIDcyMDIyLCA3MjAyNywgNzIwMzIsIDcyMDM3LCAKLSAgICA3MjA0MiwgNzIwNDcsIDcyMDUxLCA3MjA1NSwgNzIwNjAsIDcyMDY1LCA3MjA2OSwgNzIwNzQsIDcyMDc5LCA3MjA4NCwgCi0gICAgNzIwODksIDcyMDk0LCA3MjA5OSwgNzIxMDQsIDcyMTA4LCA3MjExMiwgNzIxMTcsIDcyMTIyLCA3MjEyNywgNzIxMzEsIAotICAgIDcyMTM1LCA3MjEzOSwgNzIxNDMsIDcyMTQ3LCA3MjE1MSwgNzIxNTYsIDcyMTYxLCA3MjE2NiwgNzIxNzEsIDcyMTc2LCAKLSAgICA3MjE4MywgNzIxODksIDcyMTk0LCA3MjE5OSwgNzIyMDQsIDcyMjA5LCA3MjIxNSwgNzIyMjIsIDcyMjI4LCA3MjIzNSwgCi0gICAgNzIyNDEsIDcyMjQ3LCA3MjI1MiwgNzIyNTksIDcyMjY1LCA3MjI3MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzIyNzYsIAotICAgIDcyMjgwLCA3MjI4NCwgNzIyODcsIDcyMjkxLCA3MjI5NCwgNzIyOTgsIDcyMzAxLCA3MjMwNSwgNzIzMDksIDcyMzE0LCAKLSAgICA3MjMxOCwgNzIzMjMsIDcyMzI2LCA3MjMzMCwgNzIzMzQsIDcyMzM3LCA3MjM0MSwgNzIzNDUsIDcyMzQ4LCA3MjM1MiwgCi0gICAgNzIzNTYsIDcyMzYwLCA3MjM2NCwgNzIzNjgsIDcyMzcyLCA3MjM3NiwgNzIzODAsIDcyMzg0LCA3MjM4OCwgNzIzOTIsIAotICAgIDcyMzk2LCA3MjQwMCwgNzI0MDQsIDcyNDA4LCA3MjQxMiwgNzI0MTYsIDcyNDIwLCA3MjQyMywgNzI0MjYsIDcyNDMwLCAKLSAgICA3MjQzNCwgNzI0MzgsIDcyNDQxLCA3MjQ0NCwgNzI0NDcsIDcyNDUxLCA3MjQ1NSwgNzI0NTksIDcyNDYzLCA3MjQ2NywgCi0gICAgNzI0NzAsIDcyNDc0LCA3MjQ4MCwgNzI0ODUsIDcyNDg5LCA3MjQ5NCwgNzI0OTgsIDcyNTAzLCA3MjUwOCwgNzI1MTQsIAotICAgIDcyNTE5LCA3MjUyNSwgNzI1MjksIDcyNTM0LCA3MjUzOSwgNzI1NDMsIDcyNTQ4LCA3MjU1MywgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNzI1NTcsIDcyNTYwLCA3MjU2NCwgNzI1NjgsIDcyNTcxLCA3MjU3NCwgNzI1NzcsIDcyNTgwLCA3MjU4MywgCi0gICAgNzI1ODYsIDcyNTg5LCA3MjU5MiwgMCwgMCwgMCwgMCwgMCwgMCwgNzI1OTUsIDcyNjAwLCA3MjYwNCwgNzI2MDgsIDcyNjEyLCAKLSAgICA3MjYxNiwgNzI2MjAsIDcyNjI0LCA3MjYyOCwgNzI2MzIsIDcyNjM2LCA3MjY0MCwgNzI2NDQsIDcyNjQ4LCA3MjY1MiwgCi0gICAgNzI2NTYsIDcyNjYwLCA3MjY2NSwgNzI2NzAsIDcyNjc2LCA3MjY4MiwgNzI2ODksIDcyNjk0LCA3MjY5OSwgNzI3MDUsIAotICAgIDcyNzA5LCA3MjcxNCwgNzI3MTcsIDAsIDAsIDAsIDAsIDcyNzIwLCA3MjcyNywgNzI3MzMsIDcyNzM5LCA3Mjc0NSwgCi0gICAgNzI3NTEsIDcyNzU3LCA3Mjc2MywgNzI3NjksIDcyNzc1LCA3Mjc4MSwgNzI3ODcsIDcyNzk0LCA3MjgwMSwgNzI4MDgsIAotICAgIDcyODE1LCA3MjgyMiwgNzI4MjksIDcyODM2LCA3Mjg0MywgNzI4NTAsIDcyODU2LCA3Mjg2MiwgNzI4NjksIDcyODc1LCAKLSAgICA3Mjg4MiwgNzI4ODksIDcyODk1LCA3MjkwMSwgNzI5MDgsIDcyOTE1LCA3MjkyMiwgNzI5MjgsIDcyOTM1LCA3Mjk0MiwgCi0gICAgNzI5NDgsIDcyOTU1LCA3Mjk2MSwgNzI5NjgsIDcyOTc1LCA3Mjk4MSwgNzI5ODcsIDcyOTk0LCA3MzAwMCwgNzMwMDcsIAotICAgIDczMDE0LCA3MzAyMywgNzMwMzAsIDczMDM3LCA3MzA0MSwgNzMwNDYsIDczMDUxLCA3MzA1NiwgNzMwNjEsIDczMDY1LCAKLSAgICA3MzA2OSwgNzMwNzQsIDczMDc4LCA3MzA4MywgNzMwODgsIDczMDkzLCA3MzA5OCwgNzMxMDIsIDczMTA3LCA3MzExMSwgCi0gICAgNzMxMTYsIDczMTIwLCA3MzEyNSwgNzMxMzAsIDczMTM1LCA3MzE0MCwgNzMxNDQsIDczMTQ5LCA3MzE1NCwgNzMxNTksIAotICAgIDczMTY1LCA3MzE3MCwgNzMxNzYsIDczMTgyLCA3MzE4OCwgNzMxOTUsIDczMjAxLCA3MzIwNywgNzMyMTQsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDczMjE4LCA3MzIyMywgNzMyMjcsIDczMjMxLCA3MzIzNSwgNzMyMzksIDczMjQzLCAKLSAgICA3MzI0NywgNzMyNTEsIDczMjU1LCA3MzI1OSwgNzMyNjMsIDczMjY3LCA3MzI3MSwgNzMyNzUsIDczMjc5LCA3MzI4MywgCi0gICAgNzMyODcsIDczMjkxLCA3MzI5NSwgNzMyOTksIDczMzAzLCA3MzMwNywgNzMzMTEsIDczMzE1LCA3MzMxOSwgNzMzMjMsIAotICAgIDczMzI3LCA3MzMzMSwgNzMzMzUsIDAsIDAsIDAsIDczMzM5LCA3MzM0MywgNzMzNDcsIDczMzUxLCA3MzM1NSwgNzMzNTgsIAotICAgIDczMzY0LCA3MzM2NywgNzMzNzEsIDczMzc0LCA3MzM4MCwgNzMzODYsIDczMzk0LCA3MzM5NywgNzM0MDEsIDczNDA0LCAKLSAgICA3MzQwNywgNzM0MTMsIDczNDE5LCA3MzQyMywgNzM0MjksIDczNDMzLCA3MzQzNywgNzM0NDMsIDczNDQ3LCA3MzQ1MywgCi0gICAgNzM0NTksIDczNDYzLCA3MzQ2NywgNzM0NzMsIDczNDc3LCA3MzQ4MywgNzM0ODksIDczNDkzLCA3MzQ5OSwgNzM1MDMsIAotICAgIDczNTA5LCA3MzUxMiwgNzM1MTUsIDczNTIxLCA3MzUyNSwgNzM1MzEsIDczNTM0LCA3MzUzNywgNzM1NDAsIDczNTQ2LCAKLSAgICA3MzU1MCwgNzM1NTQsIDczNTYwLCA3MzU2NiwgNzM1NzAsIDczNTczLCA3MzU3OSwgNzM1ODQsIDczNTg5LCA3MzU5NCwgCi0gICAgNzM2MDEsIDczNjA2LCA3MzYxMywgNzM2MTgsIDczNjI1LCA3MzYzMCwgNzM2MzYsIDczNjQyLCA3MzY0OCwgNzM2NTEsIAotICAgIDczNjU1LCA3MzY1OSwgNzM2NjQsIDczNjY5LCA3MzY3NCwgNzM2NzksIDczNjg0LCA3MzY4OSwgNzM2OTQsIDczNjk5LCAKLSAgICA3MzcwNiwgNzM3MTEsIDAsIDczNzE4LCA3MzcyMSwgNzM3MjUsIDczNzI4LCA3MzczMSwgNzM3MzQsIDczNzM3LCA3Mzc0MCwgCi0gICAgNzM3NDMsIDczNzQ2LCA3Mzc0OSwgMCwgMCwgMCwgMCwgNzM3NTIsIDczNzU5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMDM3MCwgMzAzNzYsIAorICAgIDMwMzgyLCAzMDM4NiwgMzAzOTAsIDMwMzk0LCAzMDM5OCwgMzA0MDQsIDMwNDA4LCAzMDQxNCwgMzA0MTgsIDMwNDI0LCAKKyAgICAzMDQzMCwgMzA0MzgsIDMwNDQ0LCAzMDQ1MiwgMzA0NTYsIDMwNDYwLCAzMDQ2NCwgMzA0NzAsIDMwNDczLCAzMDQ3OSwgCisgICAgMzA0ODMsIDMwNDg5LCAzMDQ5MywgMzA0OTcsIDMwNTAzLCAzMDUwNywgMzA1MTMsIDMwNTE3LCAzMDUyMywgMzA1MzEsIAorICAgIDMwNTM5LCAzMDU0NywgMzA1NTMsIDMwNTU3LCAzMDU2MywgMzA1NjcsIDMwNTczLCAzMDU3NiwgMzA1NzksIDMwNTg1LCAKKyAgICAzMDU4OSwgMzA1OTUsIDMwNTk4LCAzMDYwMSwgMzA2MDQsIDMwNjA4LCAzMDYxMiwgMzA2MTgsIDMwNjI0LCAzMDYyNywgCisgICAgMzA2MzAsIDMwNjM0LCAzMDYzOSwgMzA2NDQsIDMwNjUxLCAzMDY1NiwgMzA2NjMsIDMwNjcwLCAzMDY3OSwgMzA2ODYsIAorICAgIDMwNjk1LCAzMDcwMCwgMzA3MDcsIDMwNzE0LCAzMDcyMywgMzA3MjgsIDMwNzM1LCAzMDc0MCwgMzA3NDYsIDMwNzUyLCAKKyAgICAzMDc1OCwgMzA3NjQsIDMwNzcwLCAzMDc3NiwgMCwgMCwgMCwgMCwgMzA3ODIsIDMwNzg2LCAzMDc4OSwgMzA3OTIsIAorICAgIDMwNzk1LCAzMDc5OCwgMzA4MDEsIDMwODA0LCAzMDgwNywgMzA4MTAsIDMwODEzLCAzMDgxNiwgMzA4MTksIDMwODIyLCAKKyAgICAzMDgyNywgMzA4MzIsIDMwODM3LCAzMDg0MCwgMzA4NDUsIDMwODUwLCAzMDg1NSwgMzA4NjAsIDMwODY3LCAzMDg3MiwgCisgICAgMzA4NzcsIDMwODgyLCAzMDg4NywgMzA4OTQsIDMwOTAwLCAzMDkwNiwgMzA5MTIsIDMwOTE4LCAzMDkyNCwgMzA5MzMsIAorICAgIDMwOTQyLCAzMDk0OCwgMzA5NTQsIDMwOTYyLCAzMDk3MCwgMzA5NzksIDMwOTg4LCAzMDk5NiwgMzEwMDQsIDMxMDEzLCAKKyAgICAzMTAyMiwgMCwgMCwgMCwgMzEwMzAsIDMxMDM0LCAzMTAzOCwgMzEwNDIsIDMxMDQ1LCAzMTA0OCwgMzEwNTEsIDMxMDU1LCAKKyAgICAzMTA1OCwgMzEwNjEsIDMxMDY1LCAzMTA2OCwgMzEwNzIsIDMxMDc2LCAzMTA4MCwgMzEwODQsIDMxMDg4LCAzMTA5MiwgCisgICAgMzEwOTYsIDMxMTAwLCAzMTEwNCwgMzExMDcsIDMxMTEwLCAzMTExNCwgMzExMTgsIDMxMTIyLCAzMTEyNSwgMzExMjgsIAorICAgIDMxMTMxLCAzMTEzNSwgMzExMzksIDMxMTQyLCAzMTE0NiwgMzExNDksIDMxMTU0LCAzMTE1OSwgMzExNjQsIDMxMTY5LCAKKyAgICAzMTE3NCwgMzExNzksIDMxMTg0LCAzMTE4OSwgMzExOTQsIDMxMTk4LCAzMTIwMiwgMzEyMDgsIDMxMjE1LCAzMTIxOSwgCisgICAgMzEyMjMsIDMxMjI3LCAzMTIzMCwgMzEyMzMsIDMxMjM2LCAzMTIzOSwgMzEyNDIsIDMxMjQ1LCAzMTI0OCwgMzEyNTEsIAorICAgIDMxMjU0LCAzMTI1NywgMzEyNjEsIDMxMjY1LCAzMTI2OSwgMzEyNzQsIDMxMjc4LCAzMTI4MiwgMzEyODgsIDMxMjkyLCAKKyAgICAzMTI5OCwgMzEzMDQsIDMxMzA5LCAzMTMxNiwgMzEzMjAsIDMxMzI2LCAzMTMzMCwgMzEzMzYsIDMxMzQxLCAzMTM0OCwgCisgICAgMzEzNTUsIDMxMzYwLCAzMTM2NywgMzEzNzIsIDMxMzc3LCAzMTM4MSwgMzEzODcsIDMxMzkxLCAzMTM5NywgMzE0MDQsIAorICAgIDMxNDExLCAzMTQxNSwgMzE0MjEsIDMxNDI3LCAzMTQzMSwgMzE0MzcsIDMxNDQyLCAzMTQ0NywgMzE0NTQsIDMxNDU5LCAKKyAgICAzMTQ2NCwgMzE0NjksIDMxNDc0LCAzMTQ3OCwgMzE0ODIsIDMxNDg3LCAzMTQ5MiwgMzE0OTksIDMxNTA1LCAzMTUxMCwgCisgICAgMzE1MTcsIDMxNTIyLCAzMTUyOSwgMzE1MzQsIDMxNTQzLCAzMTU0OSwgMzE1NTUsIDMxNTU5LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAzMTU2MywgMzE1NzIsIDMxNTc5LCAzMTU4NiwgMzE1OTMsIDMxNTk2LCAzMTYwMCwgMzE2MDQsIDMxNjA4LCAKKyAgICAzMTYxMiwgMzE2MTYsIDMxNjIwLCAzMTYyNCwgMzE2MjgsIDMxNjMyLCAzMTYzNiwgMzE2NDAsIDMxNjQ0LCAzMTY0NywgCisgICAgMzE2NTAsIDMxNjU0LCAzMTY1OCwgMzE2NjIsIDMxNjY2LCAzMTY3MCwgMzE2NzQsIDMxNjc3LCAzMTY4MSwgMzE2ODUsIAorICAgIDMxNjg5LCAzMTY5MywgMzE2OTYsIDMxNjk5LCAzMTcwMywgMzE3MDYsIDMxNzEwLCAzMTcxNCwgMzE3MTcsIDMxNzIxLCAKKyAgICAzMTcyNSwgMzE3MjgsIDMxNzMzLCAzMTczOCwgMzE3NDMsIDMxNzQ3LCAzMTc1MSwgMzE3NTYsIDMxNzYwLCAzMTc2NSwgCisgICAgMzE3NjksIDMxNzc0LCAzMTc3OCwgMzE3ODIsIDMxNzg3LCAzMTc5MiwgMzE3OTYsIDMxODAxLCAzMTgwNiwgMzE4MTEsIAorICAgIDMxODE1LCAwLCAwLCAwLCAzMTgxOSwgMzE4MjQsIDMxODMzLCAzMTgzOCwgMzE4NDUsIDMxODUwLCAzMTg1NCwgMzE4NTcsIAorICAgIDMxODYwLCAzMTg2MywgMzE4NjYsIDMxODY5LCAzMTg3MiwgMzE4NzUsIDMxODc4LCAwLCAwLCAwLCAzMTg4MSwgMzE4ODUsIAorICAgIDMxODg5LCAzMTg5MywgMzE5MDAsIDMxOTA2LCAzMTkxMiwgMzE5MTgsIDMxOTI0LCAzMTkzMCwgMzE5MzYsIDMxOTQyLCAKKyAgICAzMTk0OCwgMzE5NTQsIDMxOTYxLCAzMTk2OCwgMzE5NzUsIDMxOTgyLCAzMTk4OSwgMzE5OTYsIDMyMDAzLCAzMjAxMCwgCisgICAgMzIwMTcsIDMyMDI0LCAzMjAzMSwgMzIwMzgsIDMyMDQ1LCAzMjA1MiwgMzIwNTksIDMyMDY2LCAzMjA3MywgMzIwODAsIAorICAgIDMyMDg3LCAzMjA5NCwgMzIxMDEsIDMyMTA4LCAzMjExNSwgMzIxMjIsIDMyMTI5LCAzMjEzNiwgMzIxNDMsIDMyMTUwLCAKKyAgICAzMjE1NywgMzIxNjQsIDMyMTcyLCAzMjE4MCwgMzIxODgsIDMyMTk0LCAzMjIwMCwgMzIyMDYsIDMyMjE0LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMjIyMywgMzIyMzAsIDMyMjM3LCAzMjI0NCwgMzIyNTEsIAorICAgIDMyMjYwLCAzMjI2OSwgMzIyNzgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMyMjg3LCAzMjI5MiwgMzIyOTcsIDMyMzAyLCAKKyAgICAzMjMwNywgMzIzMTYsIDMyMzI3LCAzMjMzNiwgMzIzNDcsIDMyMzUzLCAzMjM2NiwgMzIzNzIsIDMyMzc5LCAzMjM4NiwgCisgICAgMzIzOTEsIDMyMzk3LCAzMjQwMywgMzI0MTQsIDMyNDIzLCAzMjQzMCwgMzI0MzcsIDMyNDQ2LCAzMjQ1MywgMzI0NjIsIAorICAgIDMyNDcyLCAzMjQ4MiwgMzI0ODksIDMyNDk2LCAzMjUwMywgMzI1MTMsIDMyNTE4LCAzMjUyNiwgMzI1MzIsIDMyNTQwLCAKKyAgICAzMjU0OSwgMzI1NTQsIDMyNTYxLCAzMjU2NywgMzI1NzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMyNTc3LCAKKyAgICAzMjU4MiwgMzI1ODgsIDMyNTk1LCAzMjYwMywgMzI2MDksIDMyNjE1LCAzMjYyMSwgMzI2MjYsIDMyNjMzLCAzMjYzOSwgCisgICAgMzI2NDUsIDMyNjUxLCAzMjY1OSwgMzI2NjQsIDMyNjcyLCAzMjY3NywgMzI2ODMsIDMyNjg5LCAzMjY5NiwgMzI3MDQsIAorICAgIDMyNzExLCAzMjcxNywgMzI3MjQsIDMyNzMxLCAzMjczNywgMzI3NDQsIDMyNzUxLCAzMjc1NywgMzI3NjIsIDMyNzY4LCAKKyAgICAzMjc3NiwgMzI3ODQsIDMyNzkwLCAzMjc5NiwgMzI4MDIsIDMyODA4LCAzMjgxNiwgMzI4MjAsIDMyODI2LCAzMjgzMiwgCisgICAgMzI4MzgsIDMyODQ0LCAzMjg1MCwgMzI4NTYsIDMyODYwLCAzMjg2NSwgMzI4NzAsIDMyODc3LCAzMjg4MiwgMzI4ODYsIAorICAgIDMyODkyLCAzMjg5NywgMzI5MDIsIDMyOTA2LCAzMjkxMSwgMzI5MTYsIDMyOTIwLCAzMjkyNCwgMzI5MjksIDMyOTM2LCAKKyAgICAzMjk0MCwgMzI5NDUsIDMyOTUwLCAzMjk1NCwgMzI5NTksIDMyOTYzLCAzMjk2OCwgMzI5NzIsIDMyOTc4LCAzMjk4MywgCisgICAgMzI5OTAsIDMyOTk1LCAzMzAwMCwgMzMwMDQsIDMzMDA5LCAzMzAxNCwgMzMwMjEsIDMzMDI2LCAzMzAzMiwgMzMwMzcsIAorICAgIDMzMDQxLCAzMzA0NiwgMzMwNTAsIDMzMDU1LCAzMzA2MiwgMzMwNjksIDMzMDc0LCAzMzA3OSwgMzMwODMsIDMzMDg5LCAKKyAgICAzMzA5NSwgMzMxMDAsIDMzMTA1LCAzMzExMCwgMzMxMTYsIDMzMTIxLCAzMzEyNywgMzMxMzIsIDMzMTM4LCAzMzE0NCwgCisgICAgMzMxNTAsIDMzMTU3LCAzMzE2NCwgMzMxNzEsIDMzMTc4LCAzMzE4NSwgMzMxOTIsIDMzMTk3LCAzMzIwNSwgMzMyMTQsIAorICAgIDMzMjIzLCAzMzIzMiwgMzMyNDEsIDMzMjUwLCAzMzI1OSwgMzMyNzEsIDMzMjgwLCAzMzI4OSwgMzMyOTgsIDMzMzA1LCAKKyAgICAzMzMxMCwgMzMzMTcsIDMzMzI1LCAzMzMzMywgMzMzNDAsIDMzMzQ3LCAzMzM1NCwgMzMzNjEsIDMzMzY5LCAzMzM3OCwgCisgICAgMzMzODcsIDMzMzk2LCAzMzQwNSwgMzM0MTQsIDMzNDIzLCAzMzQzMiwgMzM0NDEsIDMzNDUwLCAzMzQ1OSwgMzM0NjgsIAorICAgIDMzNDc3LCAzMzQ4NiwgMzM0OTUsIDMzNTAzLCAzMzUxMiwgMzM1MjMsIDMzNTMxLCAzMzU0MCwgMzM1NTEsIDMzNTYwLCAKKyAgICAzMzU2OSwgMzM1NzgsIDMzNTg3LCAzMzU5NSwgMzM2MDQsIDMzNjExLCAzMzYxNiwgMzM2MjQsIDMzNjI5LCAzMzYzNiwgCisgICAgMzM2NDEsIDMzNjUwLCAzMzY1NiwgMzM2NjMsIDMzNjcwLCAzMzY3NSwgMzM2ODAsIDMzNjg4LCAzMzY5NiwgMzM3MDUsIAorICAgIDMzNzE0LCAzMzcxOSwgMzM3MjYsIDMzNzM3LCAzMzc0NSwgMzM3NTQsIDMzNzYwLCAzMzc2NiwgMzM3NzEsIDMzNzc4LCAKKyAgICAzMzc4MywgMzM3OTIsIDMzNzk3LCAzMzgwMiwgMzM4MDcsIDMzODE0LCAzMzgyMSwgMzM4MjYsIDMzODM1LCAzMzg0MywgCisgICAgMzM4NDgsIDMzODUzLCAzMzg2MCwgMzM4NjcsIDMzODcxLCAzMzg3NSwgMzM4NzgsIDMzODgxLCAzMzg4NCwgMzM4ODcsIAorICAgIDMzODkwLCAzMzg5MywgMzM5MDAsIDMzOTAzLCAzMzkwNiwgMzM5MTEsIDMzOTE1LCAzMzkxOSwgMzM5MjMsIDMzOTI3LCAKKyAgICAzMzkzMSwgMzM5NDAsIDMzOTQ2LCAzMzk1MiwgMzM5NTgsIDMzOTY2LCAzMzk3NCwgMzM5ODAsIDMzOTg2LCAzMzk5MywgCisgICAgMzM5OTksIDM0MDA0LCAzNDAxMCwgMzQwMTYsIDM0MDIyLCAzNDAyOSwgMzQwMzUsIDM0MDQzLCAzNDA0OSwgMzQwNTYsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM0MDYyLCAzNDA2OSwgCisgICAgMzQwNzYsIDM0MDgxLCAzNDA5MCwgMzQwOTgsIDM0MTA2LCAzNDExMywgMzQxMjAsIDM0MTI3LCAzNDEzNCwgMzQxNDIsIAorICAgIDM0MTUwLCAzNDE2MCwgMzQxNzAsIDM0MTc4LCAzNDE4NiwgMzQxOTQsIDM0MjAyLCAzNDIxMSwgMzQyMjAsIDM0MjI4LCAKKyAgICAzNDIzNiwgMzQyNDUsIDM0MjU0LCAzNDI2NCwgMzQyNzQsIDM0MjgzLCAzNDI5MiwgMzQzMDAsIDM0MzA4LCAzNDMxNiwgCisgICAgMzQzMjQsIDM0MzM0LCAzNDM0NCwgMzQzNTIsIDM0MzYwLCAzNDM2OCwgMzQzNzYsIDM0Mzg0LCAzNDM5MiwgMzQ0MDAsIAorICAgIDM0NDA4LCAzNDQxNiwgMzQ0MjQsIDM0NDMyLCAzNDQ0MCwgMzQ0NDksIDM0NDU4LCAzNDQ2NywgMzQ0NzYsIDM0NDg2LCAKKyAgICAzNDQ5NiwgMzQ1MDMsIDM0NTEwLCAzNDUxOCwgMzQ1MjYsIDM0NTM1LCAzNDU0NCwgMzQ1NTIsIDM0NTYwLCAzNDU3MiwgCisgICAgMzQ1ODQsIDM0NTkzLCAzNDYwMiwgMzQ2MTEsIDM0NjIwLCAzNDYyNywgMzQ2MzQsIDM0NjQyLCAzNDY1MCwgMzQ2NTgsIAorICAgIDM0NjY2LCAzNDY3NCwgMzQ2ODIsIDM0NjkwLCAzNDY5OCwgMzQ3MDcsIDM0NzE2LCAzNDcyNSwgMzQ3MzQsIDM0NzQzLCAKKyAgICAzNDc1MiwgMzQ3NjIsIDM0NzcyLCAzNDc4MiwgMzQ3OTIsIDM0ODAxLCAzNDgxMCwgMzQ4MTcsIDM0ODI0LCAzNDgzMiwgCisgICAgMzQ4NDAsIDM0ODQ4LCAzNDg1NiwgMzQ4NjQsIDM0ODcyLCAzNDg4NCwgMzQ4OTYsIDM0OTA1LCAzNDkxNCwgMzQ5MjIsIAorICAgIDM0OTMwLCAzNDkzOCwgMzQ5NDYsIDM0OTU3LCAzNDk2OCwgMzQ5NzksIDM0OTkwLCAzNTAwMiwgMzUwMTQsIDM1MDIyLCAKKyAgICAzNTAzMCwgMzUwMzgsIDM1MDQ2LCAzNTA1NSwgMzUwNjQsIDM1MDczLCAzNTA4MiwgMzUwOTAsIDM1MDk4LCAzNTEwNiwgCisgICAgMzUxMTQsIDM1MTIyLCAzNTEzMCwgMzUxMzksIDM1MTQ4LCAzNTE1OCwgMzUxNjgsIDM1MTc1LCAzNTE4MiwgMzUxOTAsIAorICAgIDM1MTk4LCAzNTIwNiwgMzUyMTQsIDM1MjIxLCAzNTIyOCwgMzUyMzYsIDM1MjQ0LCAzNTI1MiwgMzUyNjAsIDM1MjY4LCAKKyAgICAzNTI3NiwgMzUyODQsIDM1MjkyLCAzNTMwMCwgMzUzMDgsIDM1MzE2LCAzNTMyNCwgMzUzMzIsIDM1MzQwLCAzNTM0OCwgCisgICAgMzUzNTYsIDM1MzY1LCAzNTM3NCwgMzUzODMsIDM1MzkxLCAzNTQwMCwgMzU0MDksIDM1NDE4LCAzNTQyNywgMzU0MzcsIAorICAgIDM1NDQ2LCAzNTQ1MywgMzU0NTgsIDM1NDY1LCAzNTQ3MiwgMzU0ODAsIDM1NDg4LCAzNTQ5NywgMzU1MDYsIDM1NTE2LCAKKyAgICAzNTUyNiwgMzU1MzcsIDM1NTQ4LCAzNTU1NywgMzU1NjYsIDM1NTc2LCAzNTU4NiwgMzU1OTUsIDM1NjA0LCAzNTYxNCwgCisgICAgMzU2MjQsIDM1NjM1LCAzNTY0NiwgMzU2NTUsIDM1NjY0LCAzNTY3NCwgMzU2ODQsIDM1NjkxLCAzNTY5OCwgMzU3MDYsIAorICAgIDM1NzE0LCAzNTcyMCwgMzU3MjYsIDM1NzM1LCAzNTc0NCwgMzU3NTQsIDM1NzY0LCAzNTc3NSwgMzU3ODYsIDM1Nzk1LCAKKyAgICAzNTgwNCwgMzU4MTQsIDM1ODI0LCAzNTgzMywgMzU4NDIsIDM1ODUwLCAzNTg1OCwgMzU4NjUsIDM1ODcyLCAzNTg4MCwgCisgICAgMzU4ODgsIDM1ODk3LCAzNTkwNiwgMzU5MTYsIDM1OTI2LCAzNTkzNywgMzU5NDgsIDM1OTU3LCAzNTk2NiwgMzU5NzYsIAorICAgIDM1OTg2LCAzNTk5NSwgMzYwMDQsIDM2MDE0LCAzNjAyNCwgMzYwMzUsIDM2MDQ2LCAzNjA1NSwgMzYwNjQsIDM2MDc0LCAKKyAgICAzNjA4NCwgMzYwOTEsIDM2MDk4LCAzNjEwNiwgMzYxMTQsIDM2MTIzLCAzNjEzMiwgMzYxNDIsIDM2MTUyLCAzNjE2MywgCisgICAgMzYxNzQsIDM2MTgzLCAzNjE5MiwgMzYyMDIsIDM2MjEyLCAzNjIyMCwgMzYyMjgsIDM2MjM2LCAzNjI0NCwgMzYyNTMsIAorICAgIDM2MjYyLCAzNjI2OSwgMzYyNzYsIDM2MjgzLCAzNjI5MCwgMzYyOTcsIDM2MzA0LCAzNjMxMiwgMzYzMjAsIDM2MzI4LCAKKyAgICAzNjMzNiwgMzYzNDcsIDM2MzU4LCAzNjM2OSwgMzYzODAsIDM2MzkxLCAzNjQwMiwgMzY0MTAsIDM2NDE4LCAzNjQyOSwgCisgICAgMzY0NDAsIDM2NDUxLCAzNjQ2MiwgMzY0NzMsIDM2NDg0LCAzNjQ5MiwgMzY1MDAsIDM2NTExLCAzNjUyMiwgMzY1MzMsIDAsIAorICAgIDAsIDM2NTQ0LCAzNjU1MiwgMzY1NjAsIDM2NTcxLCAzNjU4MiwgMzY1OTMsIDAsIDAsIDM2NjA0LCAzNjYxMiwgMzY2MjAsIAorICAgIDM2NjMxLCAzNjY0MiwgMzY2NTMsIDM2NjY0LCAzNjY3NSwgMzY2ODYsIDM2Njk0LCAzNjcwMiwgMzY3MTMsIDM2NzI0LCAKKyAgICAzNjczNSwgMzY3NDYsIDM2NzU3LCAzNjc2OCwgMzY3NzYsIDM2Nzg0LCAzNjc5NSwgMzY4MDYsIDM2ODE3LCAzNjgyOCwgCisgICAgMzY4MzksIDM2ODUwLCAzNjg1OCwgMzY4NjYsIDM2ODc3LCAzNjg4OCwgMzY4OTksIDM2OTEwLCAzNjkyMSwgMzY5MzIsIAorICAgIDM2OTQwLCAzNjk0OCwgMzY5NTksIDM2OTcwLCAzNjk4MSwgMCwgMCwgMzY5OTIsIDM3MDAwLCAzNzAwOCwgMzcwMTksIAorICAgIDM3MDMwLCAzNzA0MSwgMCwgMCwgMzcwNTIsIDM3MDYwLCAzNzA2OCwgMzcwNzksIDM3MDkwLCAzNzEwMSwgMzcxMTIsIAorICAgIDM3MTIzLCAwLCAzNzEzNCwgMCwgMzcxNDIsIDAsIDM3MTUzLCAwLCAzNzE2NCwgMzcxNzUsIDM3MTgzLCAzNzE5MSwgCisgICAgMzcyMDIsIDM3MjEzLCAzNzIyNCwgMzcyMzUsIDM3MjQ2LCAzNzI1NywgMzcyNjUsIDM3MjczLCAzNzI4NCwgMzcyOTUsIAorICAgIDM3MzA2LCAzNzMxNywgMzczMjgsIDM3MzM5LCAzNzM0NywgMzczNTUsIDM3MzYzLCAzNzM3MSwgMzczNzksIDM3Mzg3LCAKKyAgICAzNzM5NSwgMzc0MDMsIDM3NDExLCAzNzQxOSwgMzc0MjcsIDM3NDM1LCAzNzQ0MywgMCwgMCwgMzc0NTEsIDM3NDYyLCAKKyAgICAzNzQ3MywgMzc0ODcsIDM3NTAxLCAzNzUxNSwgMzc1MjksIDM3NTQzLCAzNzU1NywgMzc1NjgsIDM3NTc5LCAzNzU5MywgCisgICAgMzc2MDcsIDM3NjIxLCAzNzYzNSwgMzc2NDksIDM3NjYzLCAzNzY3NCwgMzc2ODUsIDM3Njk5LCAzNzcxMywgMzc3MjcsIAorICAgIDM3NzQxLCAzNzc1NSwgMzc3NjksIDM3NzgwLCAzNzc5MSwgMzc4MDUsIDM3ODE5LCAzNzgzMywgMzc4NDcsIDM3ODYxLCAKKyAgICAzNzg3NSwgMzc4ODYsIDM3ODk3LCAzNzkxMSwgMzc5MjUsIDM3OTM5LCAzNzk1MywgMzc5NjcsIDM3OTgxLCAzNzk5MiwgCisgICAgMzgwMDMsIDM4MDE3LCAzODAzMSwgMzgwNDUsIDM4MDU5LCAzODA3MywgMzgwODcsIDM4MDk1LCAzODEwMywgMzgxMTQsIAorICAgIDM4MTIyLCAwLCAzODEzMywgMzgxNDEsIDM4MTUyLCAzODE2MCwgMzgxNjgsIDM4MTc2LCAzODE4NCwgMzgxOTIsIDM4MTk1LCAKKyAgICAzODE5OCwgMzgyMDEsIDM4MjA0LCAzODIxMCwgMzgyMjEsIDM4MjI5LCAwLCAzODI0MCwgMzgyNDgsIDM4MjU5LCAzODI2NywgCisgICAgMzgyNzUsIDM4MjgzLCAzODI5MSwgMzgyOTksIDM4MzA1LCAzODMxMSwgMzgzMTcsIDM4MzI1LCAzODMzMywgMzgzNDQsIDAsIAorICAgIDAsIDM4MzU1LCAzODM2MywgMzgzNzQsIDM4MzgyLCAzODM5MCwgMzgzOTgsIDAsIDM4NDA2LCAzODQxMiwgMzg0MTgsIAorICAgIDM4NDI0LCAzODQzMiwgMzg0NDAsIDM4NDUxLCAzODQ2MiwgMzg0NzAsIDM4NDc4LCAzODQ4NiwgMzg0OTcsIDM4NTA1LCAKKyAgICAzODUxMywgMzg1MjEsIDM4NTI5LCAzODUzNywgMzg1NDMsIDM4NTQ5LCAwLCAwLCAzODU1MiwgMzg1NjMsIDM4NTcxLCAwLCAKKyAgICAzODU4MiwgMzg1OTAsIDM4NjAxLCAzODYwOSwgMzg2MTcsIDM4NjI1LCAzODYzMywgMzg2NDEsIDM4NjQ0LCAwLCAzODY0NywgCisgICAgMzg2NTEsIDM4NjU1LCAzODY1OSwgMzg2NjMsIDM4NjY3LCAzODY3MSwgMzg2NzUsIDM4Njc5LCAzODY4MywgMzg2ODcsIAorICAgIDM4NjkxLCAzODY5NywgMzg3MDMsIDM4NzA5LCAzODcxMiwgMzg3MTUsIDM4NzE3LCAzODcyMSwgMzg3MjUsIDM4NzI5LCAKKyAgICAzODczMywgMzg3MzUsIDM4NzM5LCAzODc0MywgMzg3NDksIDM4NzU1LCAzODc2MiwgMzg3NjksIDM4Nzc0LCAzODc3OSwgCisgICAgMzg3ODUsIDM4NzkxLCAzODc5MywgMzg3OTYsIDM4Nzk4LCAzODgwMiwgMzg4MDYsIDM4ODEwLCAzODgxMywgMzg4MTcsIAorICAgIDM4ODIxLCAzODgyNSwgMzg4MjksIDM4ODMzLCAzODgzOSwgMzg4NDMsIDM4ODQ3LCAzODg1MywgMzg4NTgsIDM4ODY1LCAKKyAgICAzODg2NywgMzg4NzAsIDM4ODc0LCAzODg3OCwgMzg4ODMsIDM4ODg5LCAzODg5MSwgMzg5MDAsIDM4OTA5LCAzODkxMiwgCisgICAgMzg5MTYsIDM4OTE4LCAzODkyMCwgMzg5MjIsIDM4OTI1LCAzODkzMSwgMzg5MzMsIDM4OTM3LCAzODk0MSwgMzg5NDgsIAorICAgIDM4OTU1LCAzODk1OSwgMzg5NjQsIDM4OTY5LCAzODk3NCwgMzg5NzksIDM4OTgzLCAzODk4NywgMzg5OTAsIDM4OTk0LCAKKyAgICAzODk5OCwgMzkwMDUsIDM5MDEwLCAzOTAxNCwgMzkwMTgsIDM5MDIzLCAzOTAyNywgMzkwMzEsIDM5MDM2LCAzOTA0MSwgCisgICAgMzkwNDUsIDM5MDQ5LCAzOTA1MywgMzkwNTUsIDM5MDYwLCAzOTA2NSwgMzkwNjksIDM5MDczLCAzOTA3NywgMzkwODEsIDAsIAorICAgIDAsIDAsIDAsIDAsIDM5MDg1LCAzOTA5MSwgMzkwOTcsIDM5MTA0LCAzOTExMSwgMzkxMTYsIDM5MTIxLCAzOTEyNSwgMCwgMCwgCisgICAgMzkxMzEsIDM5MTM0LCAzOTEzNywgMzkxNDAsIDM5MTQzLCAzOTE0NiwgMzkxNDksIDM5MTUzLCAzOTE1NywgMzkxNjIsIAorICAgIDM5MTY3LCAzOTE3MiwgMzkxNzksIDM5MTgzLCAzOTE4NiwgMzkxODksIDM5MTkyLCAzOTE5NSwgMzkxOTgsIDM5MjAxLCAKKyAgICAzOTIwNCwgMzkyMDcsIDM5MjEwLCAzOTIxNCwgMzkyMTgsIDM5MjIzLCAzOTIyOCwgMCwgMzkyMzMsIDM5MjM5LCAzOTI0NSwgCisgICAgMzkyNTEsIDM5MjU4LCAzOTI2NSwgMzkyNzIsIDM5Mjc5LCAzOTI4NSwgMzkyOTEsIDM5Mjk4LCAzOTMwNSwgMzkzMTIsIDAsIAorICAgIDAsIDAsIDM5MzE5LCAzOTMyMiwgMzkzMjUsIDM5MzI4LCAzOTMzMywgMzkzMzYsIDM5MzM5LCAzOTM0MiwgMzkzNDUsIAorICAgIDM5MzQ4LCAzOTM1MSwgMzkzNTUsIDM5MzU4LCAzOTM2MSwgMzkzNjQsIDM5MzY3LCAzOTM3MCwgMzkzNzUsIDM5Mzc4LCAKKyAgICAzOTM4MSwgMzkzODQsIDM5Mzg3LCAzOTM5MCwgMzkzOTUsIDM5Mzk4LCAzOTQwMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzk0MDYsIDM5NDExLCAzOTQxNiwgMzk0MjMsIAorICAgIDM5NDMxLCAzOTQzNiwgMzk0NDEsIDM5NDQ1LCAzOTQ0OSwgMzk0NTQsIDM5NDYxLCAzOTQ2OCwgMzk0NzIsIDM5NDc3LCAKKyAgICAzOTQ4MiwgMzk0ODcsIDM5NDkyLCAzOTQ5OSwgMzk1MDQsIDM5NTA5LCAzOTUxNCwgMzk1MjMsIDM5NTMwLCAzOTUzNywgCisgICAgMzk1NDEsIDM5NTQ2LCAzOTU1MiwgMzk1NTcsIDM5NTY0LCAzOTU3MywgMzk1ODIsIDM5NTg2LCAzOTU5MCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzk1OTQsIDM5NTk4LCAzOTYwNiwgMzk2MTAsIDM5NjE0LCAKKyAgICAzOTYxOSwgMzk2MjMsIDM5NjI3LCAzOTYzMSwgMzk2MzMsIDM5NjM3LCAzOTY0MSwgMzk2NDUsIDM5NjUwLCAzOTY1NCwgCisgICAgMzk2NTgsIDM5NjY2LCAzOTY2OSwgMzk2NzMsIDM5Njc2LCAzOTY3OSwgMzk2ODUsIDM5Njg5LCAzOTY5MiwgMzk2OTgsIAorICAgIDM5NzAyLCAzOTcwNiwgMzk3MTAsIDM5NzEzLCAzOTcxNywgMzk3MjAsIDM5NzI0LCAzOTcyNiwgMzk3MjksIDM5NzMyLCAKKyAgICAzOTczNiwgMzk3MzgsIDM5NzQyLCAzOTc0NSwgMzk3NDgsIDM5NzUzLCAzOTc1OCwgMzk3NjUsIDM5NzY4LCAzOTc3MSwgCisgICAgMzk3NzUsIDM5NzgwLCAzOTc4MywgMzk3ODYsIDM5Nzg5LCAzOTc5MywgMzk3OTgsIDM5ODAxLCAzOTgwNCwgMzk4MDYsIAorICAgIDM5ODA5LCAzOTgxMiwgMzk4MTUsIDM5ODE5LCAzOTgyNCwgMzk4MjcsIDM5ODMxLCAzOTgzNSwgMzk4MzksIDM5ODQzLCAKKyAgICAzOTg0OCwgMzk4NTQsIDM5ODU5LCAzOTg2NCwgMzk4NzAsIDM5ODc1LCAzOTg4MCwgMzk4ODQsIDM5ODg4LCAzOTg5MywgCisgICAgMzk4OTcsIDM5OTAxLCAzOTkwNCwgMzk5MDYsIDM5OTExLCAzOTkxNywgMzk5MjQsIDM5OTMxLCAzOTkzOCwgMzk5NDUsIAorICAgIDM5OTUyLCAzOTk1OSwgMzk5NjYsIDM5OTczLCAzOTk4MSwgMzk5ODgsIDM5OTk2LCA0MDAwMywgNDAwMTAsIDQwMDE4LCAKKyAgICA0MDAyNiwgNDAwMzEsIDQwMDM2LCA0MDA0MSwgNDAwNDYsIDQwMDUxLCA0MDA1NiwgNDAwNjEsIDQwMDY2LCA0MDA3MSwgCisgICAgNDAwNzYsIDQwMDgyLCA0MDA4OCwgNDAwOTQsIDQwMTAwLCA0MDEwNywgNDAxMTUsIDQwMTIyLCA0MDEyOCwgNDAxMzQsIAorICAgIDQwMTQwLCA0MDE0NiwgNDAxNTIsIDQwMTU4LCA0MDE2NCwgNDAxNzAsIDQwMTc2LCA0MDE4MywgNDAxOTAsIDQwMTk3LCAKKyAgICA0MDIwNCwgNDAyMTIsIDQwMjIxLCA0MDIyOSwgNDAyNDAsIDQwMjQ4LCA0MDI1NiwgNDAyNjUsIDQwMjcyLCA0MDI4MSwgCisgICAgNDAyOTAsIDQwMjk4LCA0MDMwNywgMCwgMCwgMCwgMCwgMCwgMCwgNDAzMTUsIDQwMzE3LCA0MDMyMCwgNDAzMjIsIDQwMzI1LCAKKyAgICA0MDMyOCwgNDAzMzEsIDQwMzM2LCA0MDM0MSwgNDAzNDYsIDQwMzUxLCA0MDM1NSwgNDAzNTksIDQwMzYzLCA0MDM2NywgCisgICAgNDAzNzIsIDQwMzc4LCA0MDM4MywgNDAzODksIDQwMzk0LCA0MDM5OSwgNDA0MDQsIDQwNDEwLCA0MDQxNSwgNDA0MjEsIAorICAgIDQwNDI3LCA0MDQzMSwgNDA0MzUsIDQwNDQwLCA0MDQ0NSwgNDA0NTAsIDQwNDU1LCA0MDQ2MCwgNDA0NjgsIDQwNDc2LCAKKyAgICA0MDQ4NCwgNDA0OTIsIDQwNDk5LCA0MDUwNywgNDA1MTQsIDQwNTIxLCA0MDUzMCwgNDA1NDIsIDQwNTQ4LCA0MDU1NCwgCisgICAgNDA1NjIsIDQwNTcwLCA0MDU3OSwgNDA1ODgsIDQwNTk2LCA0MDYwNCwgNDA2MTMsIDQwNjIyLCA0MDYyNywgNDA2MzUsIAorICAgIDQwNjQwLCA0MDY0NSwgNDA2NTEsIDQwNjU2LCA0MDY2MiwgNDA2NjksIDQwNjc2LCA0MDY4MSwgNDA2ODcsIDQwNjkyLCAKKyAgICA0MDY5NSwgNDA2OTksIDQwNzAyLCA0MDcwNiwgNDA3MTAsIDQwNzE0LCA0MDcyMCwgNDA3MjYsIDQwNzMyLCA0MDczOCwgCisgICAgNDA3NDIsIDQwNzQ2LCA0MDc1MCwgNDA3NTQsIDQwNzYwLCA0MDc2NiwgNDA3NzAsIDQwNzc1LCA0MDc3OSwgNDA3ODQsIAorICAgIDQwNzg5LCA0MDc5NCwgNDA3OTcsIDQwODAxLCA0MDgwNCwgNDA4MDgsIDQwODE1LCA0MDgyMywgNDA4MzQsIDQwODQ1LCAKKyAgICA0MDg1MCwgNDA4NTksIDQwODY2LCA0MDg3NSwgNDA4ODQsIDQwODg4LCA0MDg5NCwgNDA5MDIsIDQwOTA2LCA0MDkxMSwgCisgICAgNDA5MTYsIDQwOTIyLCA0MDkyOCwgNDA5MzQsIDQwOTQxLCA0MDk0NSwgNDA5NDksIDQwOTU0LCA0MDk1NywgNDA5NTksIAorICAgIDQwOTYzLCA0MDk2NywgNDA5NzUsIDQwOTc5LCA0MDk4MSwgNDA5ODMsIDQwOTg3LCA0MDk5NSwgNDEwMDAsIDQxMDA2LCAKKyAgICA0MTAxNiwgNDEwMjMsIDQxMDI4LCA0MTAzMiwgNDEwMzYsIDQxMDQwLCA0MTA0MywgNDEwNDYsIDQxMDQ5LCA0MTA1MywgCisgICAgNDEwNTcsIDQxMDYxLCA0MTA2NSwgNDEwNjksIDQxMDcyLCA0MTA3NiwgNDEwODAsIDQxMDgzLCA0MTA4NSwgNDEwODgsIAorICAgIDQxMDkwLCA0MTA5NCwgNDEwOTgsIDQxMTAwLCA0MTEwNiwgNDExMDksIDQxMTE0LCA0MTExOCwgNDExMjIsIDQxMTI0LCAKKyAgICA0MTEyNiwgNDExMjgsIDQxMTMxLCA0MTEzNSwgNDExMzksIDQxMTQzLCA0MTE0NywgNDExNTEsIDQxMTU3LCA0MTE2MywgCisgICAgNDExNjUsIDQxMTY3LCA0MTE2OSwgNDExNzEsIDQxMTc0LCA0MTE3NiwgNDExODAsIDQxMTgyLCA0MTE4NiwgNDExODksIAorICAgIDQxMTk1LCA0MTE5OSwgNDEyMDMsIDQxMjA2LCA0MTIwOSwgNDEyMTMsIDQxMjE5LCA0MTIyMywgNDEyMzMsIDQxMjQzLCAKKyAgICA0MTI0NywgNDEyNTMsIDQxMjU5LCA0MTI2MiwgNDEyNjYsIDQxMjY5LCA0MTI3NCwgNDEyNzgsIDQxMjg0LCA0MTI4OCwgCisgICAgNDEzMDAsIDQxMzA4LCA0MTMxMiwgNDEzMTYsIDQxMzIyLCA0MTMyNiwgNDEzMjksIDQxMzMxLCA0MTMzNCwgNDEzMzgsIAorICAgIDQxMzQyLCA0MTM0OSwgNDEzNTMsIDQxMzU3LCA0MTM2MSwgNDEzNjQsIDQxMzY5LCA0MTM3NCwgNDEzNzksIDQxMzg0LCAKKyAgICA0MTM4OSwgNDEzOTQsIDQxNDAyLCA0MTQxMCwgNDE0MTQsIDQxNDE4LCA0MTQyMCwgNDE0MjUsIDQxNDI5LCA0MTQzMywgCisgICAgNDE0NDEsIDQxNDQ5LCA0MTQ1NSwgNDE0NjEsIDQxNDcwLCA0MTQ3OSwgNDE0ODQsIDQxNDg5LCA0MTQ5NywgNDE1MDUsIAorICAgIDQxNTA3LCA0MTUwOSwgNDE1MTQsIDQxNTE5LCA0MTUyNSwgNDE1MzEsIDQxNTM3LCA0MTU0MywgNDE1NDcsIDQxNTUxLCAKKyAgICA0MTU1OCwgNDE1NjUsIDQxNTcxLCA0MTU3NywgNDE1ODcsIDQxNTk3LCA0MTYwNSwgNDE2MTMsIDQxNjE1LCA0MTYxOSwgCisgICAgNDE2MjMsIDQxNjI4LCA0MTYzMywgNDE2NDAsIDQxNjQ3LCA0MTY1MCwgNDE2NTMsIDQxNjU2LCA0MTY1OSwgNDE2NjIsIAorICAgIDQxNjY3LCA0MTY3MSwgNDE2NzYsIDQxNjgxLCA0MTY4NCwgNDE2ODcsIDQxNjkwLCA0MTY5MywgNDE2OTYsIDQxNzAwLCAKKyAgICA0MTcwMywgNDE3MDYsIDQxNzA5LCA0MTcxMiwgNDE3MTQsIDQxNzE2LCA0MTcxOCwgNDE3MjAsIDQxNzI4LCA0MTczNiwgCisgICAgNDE3NDIsIDQxNzQ2LCA0MTc1MiwgNDE3NjIsIDQxNzY4LCA0MTc3NCwgNDE3ODAsIDQxNzg4LCA0MTc5NiwgNDE4MDcsIAorICAgIDQxODExLCA0MTgxNSwgNDE4MTcsIDQxODIzLCA0MTgyNSwgNDE4MjcsIDQxODI5LCA0MTgzMSwgNDE4MzcsIDQxODQwLCAKKyAgICA0MTg0NiwgNDE4NTIsIDQxODU2LCA0MTg2MCwgNDE4NjQsIDQxODY3LCA0MTg3MSwgNDE4NzUsIDQxODc3LCA0MTg4NiwgCisgICAgNDE4OTUsIDQxOTAwLCA0MTkwNSwgNDE5MTEsIDQxOTE3LCA0MTkyMywgNDE5MjYsIDQxOTI5LCA0MTkzMiwgNDE5MzUsIAorICAgIDQxOTM3LCA0MTk0MiwgNDE5NDcsIDQxOTUyLCA0MTk1OCwgNDE5NjQsIDQxOTcyLCA0MTk4MCwgNDE5ODYsIDQxOTkyLCAKKyAgICA0MTk5OCwgNDIwMDQsIDQyMDEzLCA0MjAyMiwgNDIwMzEsIDQyMDQwLCA0MjA0OSwgNDIwNTgsIDQyMDY3LCA0MjA3NiwgCisgICAgNDIwODUsIDQyMDk0LCA0MjEwMiwgNDIxMTQsIDQyMTI0LCA0MjEzOSwgNDIxNDIsIDQyMTQ3LCA0MjE1MywgNDIxNTksIAorICAgIDQyMTY2LCA0MjE4MCwgNDIxOTUsIDQyMjAxLCA0MjIwNywgNDIyMTQsIDQyMjIwLCA0MjIyOCwgNDIyMzQsIDQyMjQ3LCAKKyAgICA0MjI2MSwgNDIyNjYsIDQyMjcyLCA0MjI3OSwgNDIyODIsIDQyMjg1LCA0MjI4NywgNDIyOTAsIDQyMjkzLCA0MjI5NSwgCisgICAgNDIyOTcsIDQyMzAxLCA0MjMwNCwgNDIzMDcsIDQyMzEwLCA0MjMxMywgNDIzMTgsIDQyMzIzLCA0MjMyOCwgNDIzMzMsIAorICAgIDQyMzM4LCA0MjM0MSwgNDIzNDMsIDQyMzQ1LCA0MjM0NywgNDIzNTEsIDQyMzU1LCA0MjM1OSwgNDIzNjUsIDQyMzcwLCAKKyAgICA0MjM3MiwgNDIzNzQsIDQyMzc5LCA0MjM4NCwgNDIzODksIDQyMzk0LCA0MjM5OSwgNDI0MDQsIDQyNDA2LCA0MjQwOCwgCisgICAgNDI0MTcsIDQyNDIxLCA0MjQyOSwgNDI0MzgsIDQyNDQwLCA0MjQ0NSwgNDI0NTAsIDQyNDU4LCA0MjQ2MiwgNDI0NjQsIAorICAgIDQyNDY4LCA0MjQ3MCwgNDI0NzQsIDQyNDc4LCA0MjQ4MiwgNDI0ODQsIDQyNDg2LCA0MjQ4OCwgNDI0OTUsIDQyNTA0LCAKKyAgICA0MjUxMywgNDI1MjIsIDQyNTMxLCA0MjU0MCwgNDI1NDksIDQyNTU4LCA0MjU2NywgNDI1NzUsIDQyNTgzLCA0MjU5MiwgCisgICAgNDI2MDEsIDQyNjEwLCA0MjYxOSwgNDI2MjcsIDQyNjM1LCA0MjY0NCwgNDI2NTMsIDQyNjYyLCA0MjY3MiwgNDI2ODEsIAorICAgIDQyNjkxLCA0MjcwMCwgNDI3MTAsIDQyNzE5LCA0MjcyOSwgNDI3MzksIDQyNzQ4LCA0Mjc1OCwgNDI3NjcsIDQyNzc3LCAKKyAgICA0Mjc4NiwgNDI3OTYsIDQyODA1LCA0MjgxNCwgNDI4MjMsIDQyODMyLCA0Mjg0MSwgNDI4NTEsIDQyODYwLCA0Mjg2OSwgCisgICAgNDI4NzgsIDQyODg4LCA0Mjg5NywgNDI5MDYsIDQyOTE1LCA0MjkyNCwgNDI5MzQsIDQyOTQ0LCA0Mjk1MywgNDI5NjIsIAorICAgIDQyOTcwLCA0Mjk3OCwgNDI5ODUsIDQyOTkzLCA0MzAwMiwgNDMwMTMsIDQzMDIyLCA0MzAzMSwgNDMwNDAsIDQzMDQ3LCAKKyAgICA0MzA1NCwgNDMwNjEsIDQzMDcwLCA0MzA3OSwgNDMwODgsIDQzMDk3LCA0MzEwNCwgNDMxMDksIDQzMTE4LCA0MzEyMywgCisgICAgNDMxMjYsIDQzMTM0LCA0MzEzNywgNDMxNDIsIDQzMTQ3LCA0MzE1MCwgNDMxNTMsIDQzMTYxLCA0MzE2NCwgNDMxNjksIAorICAgIDQzMTcyLCA0MzE3OSwgNDMxODQsIDQzMTkyLCA0MzE5NSwgNDMxOTgsIDQzMjAxLCA0MzIwNiwgNDMyMTEsIDQzMjE0LCAKKyAgICA0MzIxNywgNDMyMjUsIDQzMjI4LCA0MzIzNSwgNDMyNDIsIDQzMjQ2LCA0MzI1MCwgNDMyNTUsIDQzMjYwLCA0MzI2NiwgCisgICAgNDMyNzEsIDQzMjc3LCA0MzI4MywgNDMyODgsIDQzMjk0LCA0MzMwMiwgNDMzMDgsIDQzMzE2LCA0MzMyNCwgNDMzMzAsIAorICAgIDQzMzM4LCA0MzM0NiwgNDMzNTUsIDQzMzYzLCA0MzM2OSwgNDMzNzcsIDQzMzg2LCA0MzM5NCwgNDMzOTgsIDQzNDAzLCAKKyAgICA0MzQxNiwgNDM0MjksIDQzNDMzLCA0MzQzNywgNDM0NDEsIDQzNDQ1LCA0MzQ1NSwgNDM0NTksIDQzNDY0LCA0MzQ2OSwgCisgICAgNDM0NzQsIDQzNDc5LCA0MzQ4NCwgNDM0ODksIDQzNDk5LCA0MzUwOSwgNDM1MTcsIDQzNTI3LCA0MzUzNywgNDM1NDUsIAorICAgIDQzNTU1LCA0MzU2NSwgNDM1NzMsIDQzNTgzLCA0MzU5MywgNDM2MDEsIDQzNjA5LCA0MzYxOSwgNDM2MjksIDQzNjMyLCAKKyAgICA0MzYzNSwgNDM2MzgsIDQzNjQzLCA0MzY0NywgNDM2NTMsIDQzNjYwLCA0MzY2NywgNDM2NzUsIDQzNjgyLCA0MzY4NiwgCisgICAgNDM2OTAsIDQzNjk0LCA0MzY5OCwgNDM3MDAsIDQzNzA0LCA0MzcwOCwgNDM3MTMsIDQzNzE4LCA0MzcyNSwgNDM3MzIsIAorICAgIDQzNzM1LCA0Mzc0MiwgNDM3NDQsIDQzNzQ2LCA0Mzc1MCwgNDM3NTQsIDQzNzU5LCA0Mzc2NSwgNDM3NzEsIDQzNzc3LCAKKyAgICA0Mzc4MywgNDM3OTIsIDQzODAxLCA0MzgxMCwgNDM4MTQsIDQzODE2LCA0MzgyMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgNDM4MjcsIDQzODMxLCA0MzgzOCwgNDM4NDUsIDQzODUyLCA0Mzg1OSwgNDM4NjMsIDQzODY3LCAKKyAgICA0Mzg3MSwgNDM4NzUsIDQzODgwLCA0Mzg4NiwgNDM4OTEsIDQzODk3LCA0MzkwMywgNDM5MDksIDQzOTE1LCA0MzkyMywgCisgICAgNDM5MzAsIDQzOTM3LCA0Mzk0NCwgNDM5NTEsIDQzOTU2LCA0Mzk2MiwgNDM5NzEsIDQzOTc1LCA0Mzk4MiwgNDM5ODYsIAorICAgIDQzOTkwLCA0Mzk5NiwgNDQwMDIsIDQ0MDA4LCA0NDAxNCwgNDQwMTgsIDQ0MDIyLCA0NDAyNSwgNDQwMjgsIDQ0MDMyLCAKKyAgICA0NDAzOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgNDQwNDYsIDQ0MDQ5LCA0NDA1MywgNDQwNTcsIDQ0MDYzLCA0NDA2OSwgNDQwNzUsIDQ0MDgzLCA0NDA5MCwgCisgICAgNDQwOTQsIDQ0MTAyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA0NDEwNywgNDQxMTAsIDQ0MTEzLCA0NDExNiwgNDQxMTksIDQ0MTIyLCA0NDEyNSwgNDQxMjgsIDQ0MTMxLCA0NDEzNCwgCisgICAgNDQxMzgsIDQ0MTQyLCA0NDE0NiwgNDQxNTAsIDQ0MTU0LCA0NDE1OCwgNDQxNjIsIDQ0MTY2LCA0NDE3MCwgNDQxNzQsIAorICAgIDQ0MTc4LCA0NDE4MSwgNDQxODQsIDQ0MTg3LCA0NDE5MCwgNDQxOTMsIDQ0MTk2LCA0NDE5OSwgNDQyMDIsIDQ0MjA1LCAKKyAgICA0NDIwOSwgNDQyMTMsIDQ0MjE3LCA0NDIyMSwgNDQyMjUsIDQ0MjI5LCA0NDIzMywgNDQyMzcsIDQ0MjQxLCA0NDI0NSwgCisgICAgNDQyNDksIDQ0MjU1LCA0NDI2MSwgNDQyNjcsIDQ0Mjc0LCA0NDI4MSwgNDQyODgsIDQ0Mjk1LCA0NDMwMiwgNDQzMDksIAorICAgIDQ0MzE2LCA0NDMyMywgNDQzMzAsIDQ0MzM3LCA0NDM0NCwgNDQzNTEsIDQ0MzU4LCA0NDM2NSwgNDQzNzIsIDQ0Mzc5LCAKKyAgICA0NDM4NiwgNDQzOTEsIDQ0Mzk3LCA0NDQwMywgNDQ0MDksIDQ0NDE0LCA0NDQyMCwgNDQ0MjYsIDQ0NDMyLCA0NDQzNywgCisgICAgNDQ0NDMsIDQ0NDQ5LCA0NDQ1NCwgNDQ0NTksIDQ0NDY1LCA0NDQ3MCwgNDQ0NzYsIDQ0NDgyLCA0NDQ4NywgNDQ0OTMsIAorICAgIDQ0NDk5LCA0NDUwNCwgNDQ1MTAsIDQ0NTE2LCA0NDUyMiwgNDQ1MjgsIDQ0NTM0LCA0NDUzOSwgNDQ1NDUsIDQ0NTUxLCAKKyAgICA0NDU1NywgNDQ1NjIsIDQ0NTY4LCA0NDU3NCwgNDQ1ODAsIDQ0NTg1LCA0NDU5MSwgNDQ1OTcsIDQ0NjAyLCA0NDYwNywgCisgICAgNDQ2MTMsIDQ0NjE4LCA0NDYyNCwgNDQ2MzAsIDQ0NjM1LCA0NDY0MSwgNDQ2NDcsIDQ0NjUyLCA0NDY1OCwgNDQ2NjQsIAorICAgIDQ0NjcwLCA0NDY3NiwgNDQ2ODIsIDQ0Njg3LCA0NDY5MywgNDQ2OTksIDQ0NzA1LCA0NDcxMCwgNDQ3MTYsIDQ0NzIyLCAKKyAgICA0NDcyOCwgNDQ3MzMsIDQ0NzM5LCA0NDc0NSwgNDQ3NTAsIDQ0NzU1LCA0NDc2MSwgNDQ3NjYsIDQ0NzcyLCA0NDc3OCwgCisgICAgNDQ3ODMsIDQ0Nzg5LCA0NDc5NSwgNDQ4MDAsIDQ0ODA2LCA0NDgxMiwgNDQ4MTgsIDQ0ODI0LCA0NDgzMCwgNDQ4MzQsIAorICAgIDQ0ODM5LCA0NDg0NCwgNDQ4NDksIDQ0ODU0LCA0NDg1OSwgNDQ4NjQsIDQ0ODY5LCA0NDg3NCwgNDQ4NzksIDQ0ODg0LCAKKyAgICA0NDg4OCwgNDQ4OTIsIDQ0ODk2LCA0NDkwMCwgNDQ5MDQsIDQ0OTA4LCA0NDkxMiwgNDQ5MTYsIDQ0OTIwLCA0NDkyNSwgCisgICAgNDQ5MzAsIDQ0OTM1LCA0NDk0MCwgNDQ5NDUsIDQ0OTUwLCA0NDk1OSwgNDQ5NjgsIDQ0OTc3LCA0NDk4NiwgNDQ5OTUsIAorICAgIDQ1MDA0LCA0NTAxMywgNDUwMjIsIDQ1MDI5LCA0NTAzNywgNDUwNDUsIDQ1MDUyLCA0NTA1OSwgNDUwNjcsIDQ1MDc1LCAKKyAgICA0NTA4MiwgNDUwODksIDQ1MDk3LCA0NTEwNSwgNDUxMTIsIDQ1MTE5LCA0NTEyNywgNDUxMzUsIDQ1MTQyLCA0NTE0OSwgCisgICAgNDUxNTcsIDQ1MTY2LCA0NTE3NSwgNDUxODMsIDQ1MTkyLCA0NTIwMSwgNDUyMDgsIDQ1MjE1LCA0NTIyMywgNDUyMzIsIAorICAgIDQ1MjQxLCA0NTI0OSwgNDUyNTgsIDQ1MjY3LCA0NTI3NCwgNDUyODEsIDQ1MjkwLCA0NTI5OSwgNDUzMDcsIDQ1MzE1LCAKKyAgICA0NTMyNCwgNDUzMzMsIDQ1MzQwLCA0NTM0NywgNDUzNTYsIDQ1MzY1LCA0NTM3MywgNDUzODEsIDQ1MzkwLCA0NTM5OSwgCisgICAgNDU0MDYsIDQ1NDEzLCA0NTQyMiwgNDU0MzEsIDQ1NDM5LCA0NTQ0OCwgNDU0NTcsIDQ1NDY1LCA0NTQ3NSwgNDU0ODUsIAorICAgIDQ1NDk1LCA0NTUwNSwgNDU1MTQsIDQ1NTIzLCA0NTUzMiwgNDU1NDEsIDQ1NTQ4LCA0NTU1NiwgNDU1NjQsIDQ1NTcyLCAKKyAgICA0NTU4MCwgNDU1ODUsIDQ1NTkwLCA0NTU5OSwgNDU2MDcsIDQ1NjE0LCA0NTYyMywgNDU2MzEsIDQ1NjM4LCA0NTY0NywgCisgICAgNDU2NTUsIDQ1NjYyLCA0NTY3MSwgNDU2NzksIDQ1Njg2LCA0NTY5NSwgNDU3MDMsIDQ1NzEwLCA0NTcxOSwgNDU3MjcsIAorICAgIDQ1NzM0LCA0NTc0MywgNDU3NTEsIDQ1NzU4LCA0NTc2NywgNDU3NzUsIDQ1NzgyLCA0NTc5MSwgNDU3OTksIDQ1ODA2LCAKKyAgICA0NTgxNSwgNDU4MjQsIDQ1ODMzLCA0NTg0MiwgNDU4NTYsIDQ1ODcwLCA0NTg3NywgNDU4ODIsIDQ1ODg3LCA0NTg5MiwgCisgICAgNDU4OTcsIDQ1OTAyLCA0NTkwNywgNDU5MTIsIDQ1OTE3LCA0NTkyNSwgNDU5MzMsIDQ1OTQxLCA0NTk0OSwgNDU5NTQsIAorICAgIDQ1OTYxLCA0NTk2OCwgNDU5NzUsIDQ1OTgwLCA0NTk4OCwgNDU5OTUsIDQ2MDAzLCA0NjAwNywgNDYwMTQsIDQ2MDIwLCAKKyAgICA0NjAyNywgNDYwMzEsIDQ2MDM3LCA0NjA0MywgNDYwNDksIDQ2MDUzLCA0NjA1NiwgNDYwNjAsIDQ2MDY0LCA0NjA3MSwgCisgICAgNDYwNzcsIDQ2MDgzLCA0NjA4OSwgNDYwOTUsIDQ2MTA5LCA0NjExOSwgNDYxMzMsIDQ2MTQ3LCA0NjE1MywgNDYxNjMsIAorICAgIDQ2MTc3LCA0NjE4MCwgNDYxODMsIDQ2MTkwLCA0NjE5OCwgNDYyMDMsIDQ2MjA4LCA0NjIxNiwgNDYyMjgsIDQ2MjQwLCAKKyAgICA0NjI0OCwgNDYyNTIsIDQ2MjU2LCA0NjI1OSwgNDYyNjIsIDQ2MjY2LCA0NjI3MCwgNDYyNzMsIDQ2Mjc2LCA0NjI4MSwgCisgICAgNDYyODYsIDQ2MjkyLCA0NjI5OCwgNDYzMDMsIDQ2MzA4LCA0NjMxNCwgNDYzMjAsIDQ2MzI1LCA0NjMzMCwgNDYzMzUsIAorICAgIDQ2MzQwLCA0NjM0NiwgNDYzNTIsIDQ2MzU3LCA0NjM2MiwgNDYzNjgsIDQ2Mzc0LCA0NjM3OSwgNDYzODQsIDQ2Mzg3LCAKKyAgICA0NjM5MCwgNDYzOTksIDQ2NDAxLCA0NjQwMywgNDY0MDYsIDQ2NDEwLCA0NjQxNiwgNDY0MTgsIDQ2NDIxLCA0NjQyOCwgCisgICAgNDY0MzUsIDQ2NDQzLCA0NjQ1MSwgNDY0NjEsIDQ2NDc1LCA0NjQ4MCwgNDY0ODUsIDQ2NDg5LCA0NjQ5NCwgNDY1MDIsIAorICAgIDQ2NTEwLCA0NjUxOSwgNDY1MjgsIDQ2NTM3LCA0NjU0NiwgNDY1NTEsIDQ2NTU2LCA0NjU2MiwgNDY1NjgsIDQ2NTc0LCAKKyAgICA0NjU4MCwgNDY1ODMsIDQ2NTg5LCA0NjU5NSwgNDY2MDUsIDQ2NjE1LCA0NjYyMywgNDY2MzEsIDQ2NjQwLCA0NjY0OSwgCisgICAgNDY2NTMsIDQ2NjYxLCA0NjY2OSwgNDY2NzcsIDQ2Njg1LCA0NjY5NCwgNDY3MDMsIDQ2NzEyLCA0NjcyMSwgNDY3MjYsIAorICAgIDQ2NzMxLCA0NjczNiwgNDY3NDEsIDQ2NzQ2LCA0Njc1MiwgNDY3NTgsIDQ2NzYzLCA0Njc2OSwgNDY3NzEsIDQ2NzczLCAKKyAgICA0Njc3NSwgNDY3NzcsIDQ2NzgwLCA0Njc4MywgNDY3ODUsIDQ2Nzg3LCA0Njc4OSwgNDY3OTMsIDQ2Nzk3LCA0Njc5OSwgCisgICAgNDY4MDEsIDQ2ODA0LCA0NjgwNywgNDY4MTEsIDQ2ODE3LCA0NjgyMywgNDY4MjUsIDQ2ODMyLCA0NjgzNiwgNDY4NDEsIAorICAgIDQ2ODQ2LCA0Njg0OCwgNDY4NTgsIDQ2ODY0LCA0Njg3MCwgNDY4NzYsIDQ2ODgyLCA0Njg4OCwgNDY4OTQsIDQ2ODk5LCAKKyAgICA0NjkwMiwgNDY5MDUsIDQ2OTA4LCA0NjkxMCwgNDY5MTIsIDQ2OTE2LCA0NjkyMCwgNDY5MjUsIDQ2OTMwLCA0NjkzNSwgCisgICAgNDY5MzgsIDQ2OTQyLCA0Njk0NywgNDY5NTAsIDQ2OTU0LCA0Njk1OSwgNDY5NjQsIDQ2OTY5LCA0Njk3NCwgNDY5NzksIAorICAgIDQ2OTg0LCA0Njk4OSwgNDY5OTQsIDQ2OTk5LCA0NzAwNCwgNDcwMDksIDQ3MDE0LCA0NzAyMCwgNDcwMjYsIDQ3MDMyLCAKKyAgICA0NzAzNCwgNDcwMzcsIDQ3MDM5LCA0NzA0MiwgNDcwNDQsIDQ3MDQ2LCA0NzA0OCwgNDcwNTAsIDQ3MDUyLCA0NzA1NCwgCisgICAgNDcwNTYsIDQ3MDU4LCA0NzA2MCwgNDcwNjIsIDQ3MDY0LCA0NzA2NiwgNDcwNjgsIDQ3MDcwLCA0NzA3MiwgNDcwNzQsIAorICAgIDQ3MDc2LCA0NzA4MSwgNDcwODYsIDQ3MDkxLCA0NzA5NiwgNDcxMDEsIDQ3MTA2LCA0NzExMSwgNDcxMTYsIDQ3MTIxLCAKKyAgICA0NzEyNiwgNDcxMzEsIDQ3MTM2LCA0NzE0MSwgNDcxNDYsIDQ3MTUxLCA0NzE1NiwgNDcxNjEsIDQ3MTY2LCA0NzE3MSwgCisgICAgNDcxNzYsIDQ3MTgwLCA0NzE4NCwgNDcxODgsIDQ3MTk0LCA0NzIwMCwgNDcyMDUsIDQ3MjEwLCA0NzIxNSwgNDcyMjAsIAorICAgIDQ3MjI1LCA0NzIzMCwgNDcyMzgsIDQ3MjQ2LCA0NzI1NCwgNDcyNjIsIDQ3MjcwLCA0NzI3OCwgNDcyODYsIDQ3Mjk0LCAKKyAgICA0NzMwMCwgNDczMDUsIDQ3MzEwLCA0NzMxNSwgNDczMTgsIDQ3MzIyLCA0NzMyNiwgNDczMzAsIDQ3MzM0LCA0NzMzOCwgCisgICAgNDczNDIsIDQ3MzQ5LCA0NzM1NiwgNDczNjQsIDQ3MzcyLCA0NzM3NywgNDczODIsIDQ3Mzg5LCA0NzM5NiwgNDc0MDMsIAorICAgIDQ3NDEwLCA0NzQxMywgNDc0MTYsIDQ3NDIxLCA0NzQyMywgNDc0MjcsIDQ3NDMyLCA0NzQzNCwgNDc0MzYsIDQ3NDM4LCAKKyAgICA0NzQ0MCwgNDc0NDUsIDQ3NDQ4LCA0NzQ1MCwgNDc0NTUsIDQ3NDYyLCA0NzQ2OSwgNDc0NzIsIDQ3NDc2LCA0NzQ4MSwgCisgICAgNDc0ODYsIDQ3NDk0LCA0NzUwMCwgNDc1MDYsIDQ3NTE4LCA0NzUyNSwgNDc1MzIsIDQ3NTM3LCA0NzU0MiwgNDc1NDgsIAorICAgIDQ3NTUxLCA0NzU1NCwgNDc1NTksIDQ3NTYxLCA0NzU2NSwgNDc1NjcsIDQ3NTY5LCA0NzU3MSwgNDc1NzMsIDQ3NTc1LCAKKyAgICA0NzU3NywgNDc1ODIsIDQ3NTg0LCA0NzU4NiwgNDc1ODgsIDQ3NTkwLCA0NzU5NCwgNDc1OTYsIDQ3NTk5LCA0NzYwNCwgCisgICAgNDc2MDksIDQ3NjE0LCA0NzYxOSwgNDc2MjUsIDQ3NjMxLCA0NzYzMywgNDc2MzYsIDQ3NjQzLCA0NzY1MCwgNDc2NTcsIAorICAgIDQ3NjY0LCA0NzY2OCwgNDc2NzIsIDQ3Njc0LCA0NzY3NiwgNDc2ODAsIDQ3Njg2LCA0NzY5MSwgNDc2OTMsIDQ3Njk3LCAKKyAgICA0NzcwNiwgNDc3MTQsIDQ3NzIyLCA0NzcyOCwgNDc3MzQsIDQ3NzM5LCA0Nzc0NSwgNDc3NTAsIDQ3NzUzLCA0Nzc2NywgCisgICAgNDc3NzAsIDQ3Nzc1LCA0Nzc4MCwgNDc3ODYsIDQ3Nzk2LCA0Nzc5OCwgNDc4MDQsIDQ3ODEwLCA0NzgxNCwgNDc4MjEsIAorICAgIDQ3ODI1LCA0NzgyNywgNDc4MjksIDQ3ODMzLCA0NzgzOSwgNDc4NDQsIDQ3ODUwLCA0Nzg1MiwgNDc4NTgsIDQ3ODYwLCAKKyAgICA0Nzg2NiwgNDc4NjgsIDQ3ODcwLCA0Nzg3NSwgNDc4NzcsIDQ3ODgxLCA0Nzg4NiwgNDc4ODgsIDQ3ODkzLCA0Nzg5OCwgCisgICAgNDc5MDIsIDQ3OTA5LCAwLCA0NzkxOSwgNDc5MjUsIDQ3OTI4LCA0NzkzNCwgNDc5MzcsIDQ3OTQyLCA0Nzk0NywgNDc5NTEsIAorICAgIDQ3OTUzLCA0Nzk1NSwgNDc5NTksIDQ3OTYzLCA0Nzk2NywgNDc5NzEsIDQ3OTc2LCA0Nzk3OCwgNDc5ODMsIDQ3OTg2LCAKKyAgICA0Nzk4OSwgNDc5OTIsIDQ3OTk2LCA0ODAwMCwgNDgwMDUsIDQ4MDA5LCA0ODAxNCwgNDgwMTksIDQ4MDIzLCA0ODAyOCwgCisgICAgNDgwMzQsIDQ4MDM3LCA0ODA0MywgNDgwNDgsIDQ4MDUyLCA0ODA1NywgNDgwNjMsIDQ4MDY5LCA0ODA3NiwgNDgwODIsIAorICAgIDQ4MDg5LCA0ODA5NiwgNDgwOTgsIDQ4MTA1LCA0ODEwOSwgNDgxMTUsIDQ4MTIxLCA0ODEyNiwgNDgxMzIsIDQ4MTM2LCAKKyAgICA0ODE0MSwgNDgxNDQsIDQ4MTQ5LCA0ODE1NSwgNDgxNjIsIDQ4MTcwLCA0ODE3NywgNDgxODYsIDQ4MTk2LCA0ODIwMywgCisgICAgNDgyMDksIDQ4MjEzLCA0ODIyMCwgNDgyMjUsIDQ4MjM0LCA0ODIzNywgNDgyNDAsIDQ4MjQ5LCA0ODI1OSwgNDgyNjYsIAorICAgIDQ4MjY4LCA0ODI3NCwgNDgyNzksIDQ4MjgxLCA0ODI4NCwgNDgyODgsIDQ4Mjk2LCA0ODMwNSwgNDgzMDgsIDQ4MzEzLCAKKyAgICA0ODMxOCwgNDgzMjYsIDQ4MzM0LCA0ODM0MiwgNDgzNTAsIDQ4MzU2LCA0ODM2MiwgNDgzNjgsIDQ4Mzc2LCA0ODM4MSwgCisgICAgNDgzODQsIDQ4Mzg4LCA0ODM5MSwgNDg0MDMsIDQ4NDEzLCA0ODQyNCwgNDg0MzMsIDQ4NDQ0LCA0ODQ1NCwgNDg0NjMsIAorICAgIDQ4NDY5LCA0ODQ3NywgNDg0ODEsIDQ4NDg5LCA0ODQ5MywgNDg1MDEsIDQ4NTA4LCA0ODUxNSwgNDg1MjQsIDQ4NTMzLCAKKyAgICA0ODU0MywgNDg1NTMsIDQ4NTYzLCA0ODU3MywgNDg1ODIsIDQ4NTkxLCA0ODYwMSwgNDg2MTEsIDQ4NjIwLCA0ODYyOSwgCisgICAgNDg2MzUsIDQ4NjQxLCA0ODY0NywgNDg2NTMsIDQ4NjU5LCA0ODY2NSwgNDg2NzEsIDQ4Njc3LCA0ODY4MywgNDg2OTAsIAorICAgIDQ4Njk2LCA0ODcwMiwgNDg3MDgsIDQ4NzE0LCA0ODcyMCwgNDg3MjYsIDQ4NzMyLCA0ODczOCwgNDg3NDQsIDQ4NzUxLCAKKyAgICA0ODc1OCwgNDg3NjUsIDQ4NzcyLCA0ODc3OSwgNDg3ODYsIDQ4NzkzLCA0ODgwMCwgNDg4MDcsIDQ4ODE0LCA0ODgyMiwgCisgICAgNDg4MjcsIDQ4ODMwLCA0ODgzNCwgNDg4MzgsIDQ4ODQ0LCA0ODg0NywgNDg4NTMsIDQ4ODU5LCA0ODg2NCwgNDg4NjgsIAorICAgIDQ4ODczLCA0ODg3OSwgNDg4ODYsIDQ4ODg5LCA0ODg5NiwgNDg5MDMsIDQ4OTA3LCA0ODkxNiwgNDg5MjUsIDQ4OTMwLCAKKyAgICA0ODkzNiwgNDg5NDEsIDQ4OTQ2LCA0ODk1MywgNDg5NjAsIDQ4OTY4LCA0ODk3NiwgNDg5ODUsIDQ4OTg5LCA0ODk5OCwgCisgICAgNDkwMDMsIDQ5MDA3LCA0OTAxNCwgNDkwMTgsIDQ5MDI1LCA0OTAzMywgNDkwMzgsIDQ5MDQ2LCA0OTA1MCwgNDkwNTUsIAorICAgIDQ5MDU5LCA0OTA2NCwgNDkwNjgsIDQ5MDczLCA0OTA3OCwgNDkwODcsIDQ5MDg5LCA0OTA5MiwgNDkwOTUsIDQ5MTAyLCAKKyAgICA0OTEwOSwgNDkxMTQsIDQ5MTIyLCA0OTEyOCwgNDkxMzQsIDQ5MTM5LCA0OTE0MiwgNDkxNDcsIDQ5MTUyLCA0OTE1NywgCisgICAgNDkxNjUsIDQ5MTY5LCA0OTE3NiwgNDkxODQsIDQ5MTkyLCA0OTE5NywgNDkyMDIsIDQ5MjA4LCA0OTIxMywgNDkyMTgsIAorICAgIDQ5MjI0LCA0OTIyOSwgNDkyMzIsIDQ5MjM2LCA0OTI0MCwgNDkyNDcsIDQ5MjU2LCA0OTI2MSwgNDkyNzAsIDQ5Mjc5LCAKKyAgICA0OTI4NSwgNDkyOTEsIDQ5Mjk2LCA0OTMwMSwgNDkzMDYsIDQ5MzExLCA0OTMxNywgNDkzMjMsIDQ5MzMxLCA0OTMzOSwgCisgICAgNDkzNDUsIDQ5MzUxLCA0OTM1NiwgNDkzNjEsIDQ5MzY4LCA0OTM3NSwgNDkzODEsIDQ5Mzg0LCA0OTM4NywgNDkzOTEsIAorICAgIDQ5Mzk1LCA0OTM5OSwgNDk0MDQsIDQ5NDEwLCA0OTQxNiwgNDk0MjMsIDQ5NDMwLCA0OTQzNSwgNDk0MzksIDQ5NDQzLCAKKyAgICA0OTQ0NywgNDk0NTEsIDQ5NDU1LCA0OTQ1OSwgNDk0NjMsIDQ5NDY3LCA0OTQ3MSwgNDk0NzUsIDQ5NDc5LCA0OTQ4MywgCisgICAgNDk0ODcsIDQ5NDkxLCA0OTQ5NSwgNDk0OTksIDQ5NTAzLCA0OTUwNywgNDk1MTEsIDQ5NTE1LCA0OTUxOSwgNDk1MjMsIAorICAgIDQ5NTI3LCA0OTUzMSwgNDk1MzUsIDQ5NTM5LCA0OTU0MywgNDk1NDcsIDQ5NTUxLCA0OTU1NSwgNDk1NTksIDQ5NTYzLCAKKyAgICA0OTU2NywgNDk1NzEsIDQ5NTc1LCA0OTU3OSwgNDk1ODMsIDQ5NTg3LCA0OTU5MSwgNDk1OTUsIDQ5NTk5LCA0OTYwMywgCisgICAgNDk2MDcsIDQ5NjExLCA0OTYxNSwgNDk2MTksIDQ5NjIzLCA0OTYyNywgNDk2MzEsIDQ5NjM1LCA0OTYzOSwgNDk2NDMsIAorICAgIDQ5NjQ3LCA0OTY1MSwgNDk2NTUsIDQ5NjU5LCA0OTY2MywgNDk2NjcsIDQ5NjcxLCA0OTY3NSwgNDk2NzksIDQ5NjgzLCAKKyAgICA0OTY4NywgNDk2OTEsIDQ5Njk1LCA0OTY5OSwgNDk3MDMsIDQ5NzA3LCA0OTcxMSwgNDk3MTUsIDQ5NzE5LCA0OTcyMywgCisgICAgNDk3MjcsIDQ5NzMxLCA0OTczNSwgNDk3MzksIDQ5NzQzLCA0OTc0NywgNDk3NTEsIDQ5NzU1LCA0OTc1OSwgNDk3NjMsIAorICAgIDQ5NzY3LCA0OTc3MSwgNDk3NzUsIDQ5Nzc5LCA0OTc4MywgNDk3ODcsIDQ5NzkxLCA0OTc5NSwgNDk3OTksIDQ5ODAzLCAKKyAgICA0OTgwNywgNDk4MTEsIDQ5ODE1LCA0OTgxOSwgNDk4MjMsIDQ5ODI3LCA0OTgzMSwgNDk4MzUsIDQ5ODM5LCA0OTg0MywgCisgICAgNDk4NDcsIDQ5ODUxLCA0OTg1NSwgNDk4NTksIDQ5ODYzLCA0OTg2NywgNDk4NzEsIDQ5ODc1LCA0OTg3OSwgNDk4ODMsIAorICAgIDQ5ODg3LCA0OTg5MSwgNDk4OTUsIDQ5ODk5LCA0OTkwMywgNDk5MDcsIDQ5OTExLCA0OTkxNSwgNDk5MTksIDQ5OTIzLCAKKyAgICA0OTkyNywgNDk5MzEsIDQ5OTM1LCA0OTkzOSwgNDk5NDMsIDQ5OTQ3LCA0OTk1MSwgNDk5NTUsIDQ5OTU5LCA0OTk2MywgCisgICAgNDk5NjcsIDQ5OTcxLCA0OTk3NSwgNDk5NzksIDQ5OTgzLCA0OTk4NywgNDk5OTEsIDQ5OTk1LCA0OTk5OSwgNTAwMDMsIAorICAgIDUwMDA3LCA1MDAxMSwgNTAwMTUsIDUwMDE5LCA1MDAyMywgNTAwMjcsIDUwMDMxLCA1MDAzNSwgNTAwMzksIDUwMDQzLCAKKyAgICA1MDA0NywgNTAwNTEsIDUwMDU1LCA1MDA1OSwgNTAwNjMsIDUwMDY3LCA1MDA3MSwgNTAwNzUsIDUwMDc5LCA1MDA4MywgCisgICAgNTAwODcsIDUwMDkxLCA1MDA5NSwgNTAwOTksIDUwMTAzLCA1MDEwNywgNTAxMTEsIDUwMTE1LCA1MDExOSwgNTAxMjMsIAorICAgIDUwMTI3LCA1MDEzMSwgNTAxMzUsIDUwMTM5LCA1MDE0MywgNTAxNDcsIDUwMTUxLCA1MDE1NSwgNTAxNTksIDUwMTYzLCAKKyAgICA1MDE2NywgNTAxNzEsIDUwMTc1LCA1MDE3OSwgNTAxODMsIDUwMTg3LCA1MDE5MSwgNTAxOTUsIDUwMTk5LCA1MDIwMywgCisgICAgNTAyMDcsIDUwMjExLCA1MDIxNSwgNTAyMTksIDUwMjIzLCA1MDIyNywgNTAyMzEsIDUwMjM1LCA1MDIzOSwgNTAyNDMsIAorICAgIDUwMjQ3LCA1MDI1MSwgNTAyNTUsIDUwMjU5LCA1MDI2MywgNTAyNjcsIDUwMjcxLCA1MDI3NSwgNTAyNzksIDUwMjgzLCAKKyAgICA1MDI4NywgNTAyOTEsIDUwMjk1LCA1MDI5OSwgNTAzMDMsIDUwMzA3LCA1MDMxMSwgNTAzMTUsIDUwMzE5LCA1MDMyMywgCisgICAgNTAzMjcsIDUwMzMxLCA1MDMzNSwgNTAzMzksIDUwMzQzLCA1MDM0NywgNTAzNTEsIDUwMzU1LCA1MDM1OSwgNTAzNjMsIAorICAgIDUwMzY3LCA1MDM3MSwgNTAzNzUsIDUwMzc5LCA1MDM4MywgNTAzODcsIDUwMzkxLCA1MDM5NSwgNTAzOTksIDUwNDAzLCAKKyAgICA1MDQwNywgNTA0MTEsIDUwNDE1LCA1MDQxOSwgNTA0MjMsIDUwNDI3LCA1MDQzMSwgNTA0MzUsIDUwNDM5LCA1MDQ0MywgCisgICAgNTA0NDcsIDUwNDUxLCA1MDQ1NSwgNTA0NTksIDUwNDY2LCA1MDQ3NCwgNTA0ODAsIDUwNDg2LCA1MDQ5MywgNTA1MDAsIAorICAgIDUwNTA2LCA1MDUxMiwgNTA1MTgsIDUwNTI0LCA1MDUyOSwgNTA1MzQsIDUwNTM5LCA1MDU0NCwgNTA1NTAsIDUwNTU2LCAKKyAgICA1MDU2NCwgNTA1NzEsIDUwNTc3LCA1MDU4MywgNTA1OTEsIDUwNjAwLCA1MDYwNywgNTA2MTcsIDUwNjI4LCA1MDYzMSwgCisgICAgNTA2MzQsIDUwNjM4LCA1MDY0MiwgNTA2NDksIDUwNjU2LCA1MDY2NywgNTA2NzgsIDUwNjg4LCA1MDY5OCwgNTA3MDUsIAorICAgIDUwNzEyLCA1MDcxOSwgNTA3MjYsIDUwNzM3LCA1MDc0OCwgNTA3NTksIDUwNzcwLCA1MDc4MCwgNTA3OTAsIDUwODAyLCAKKyAgICA1MDgxNCwgNTA4MjUsIDUwODM2LCA1MDg0OCwgNTA4NjAsIDUwODY5LCA1MDg3OSwgNTA4ODksIDUwOTAwLCA1MDkxMSwgCisgICAgNTA5MTgsIDUwOTI1LCA1MDkzMiwgNTA5MzksIDUwOTQ5LCA1MDk1OSwgNTA5NjcsIDUwOTc1LCA1MDk4MiwgNTA5ODksIAorICAgIDUwOTk2LCA1MTAwMywgNTEwMTAsIDUxMDE1LCA1MTAyMCwgNTEwMjYsIDUxMDM0LCA1MTA0NCwgNTEwNTQsIDUxMDY0LCAKKyAgICA1MTA3NCwgNTEwODQsIDUxMDk0LCA1MTEwNCwgNTExMTQsIDUxMTI0LCA1MTEzNCwgNTExNDQsIDUxMTU1LCA1MTE2NiwgCisgICAgNTExNzYsIDUxMTg2LCA1MTE5NywgNTEyMDgsIDUxMjE4LCA1MTIyOCwgNTEyMzksIDUxMjUwLCA1MTI2MCwgNTEyNzAsIAorICAgIDUxMjgxLCA1MTI5MiwgNTEzMDgsIDUxMzI3LCA1MTM0MywgNTEzNjIsIDUxMzc4LCA1MTM5NCwgNTE0MTAsIDUxNDI2LCAKKyAgICA1MTQzNywgNTE0NDksIDUxNDYwLCA1MTQ3MiwgNTE0OTEsIDUxNTEwLCA1MTUxOCwgNTE1MjQsIDUxNTMxLCA1MTUzOCwgCisgICAgNTE1NDUsIDUxNTUyLCA1MTU1NywgNTE1NjMsIDUxNTY4LCA1MTU3MywgNTE1NzksIDUxNTg0LCA1MTU4OSwgNTE1OTQsIAorICAgIDUxNTk5LCA1MTYwNCwgNTE2MTEsIDUxNjE2LCA1MTYyMywgNTE2MjgsIDUxNjMzLCA1MTYzNywgNTE2NDEsIDUxNjQ4LCAKKyAgICA1MTY1NSwgNTE2NjIsIDUxNjY5LCA1MTY3NiwgNTE2ODMsIDUxNjk2LCA1MTcwOSwgNTE3MjIsIDUxNzM1LCA1MTc0MywgCisgICAgNTE3NTEsIDUxNzU3LCA1MTc2MywgNTE3NzAsIDUxNzc3LCA1MTc4NCwgNTE3OTEsIDUxNzk1LCA1MTgwMCwgNTE4MDgsIAorICAgIDUxODE2LCA1MTgyNCwgNTE4MzEsIDUxODM1LCA1MTg0MywgNTE4NTEsIDUxODU1LCA1MTg1OSwgNTE4NjQsIDUxODcxLCAKKyAgICA1MTg3OSwgNTE4ODcsIDUxOTA2LCA1MTkyNSwgNTE5NDQsIDUxOTYzLCA1MTk4MiwgNTIwMDEsIDUyMDIwLCA1MjAzOSwgCisgICAgNTIwNDUsIDUyMDUyLCA1MjA2MSwgNTIwNjksIDUyMDc3LCA1MjA4MiwgNTIwODUsIDUyMDg4LCA1MjA5MywgNTIwOTYsIAorICAgIDUyMTE1LCA1MjEyMiwgNTIxMjgsIDUyMTM0LCA1MjEzOCwgNTIxNDEsIDUyMTQ0LCA1MjE0NywgNTIxNTksIDUyMTcyLCAKKyAgICA1MjE3OSwgNTIxODYsIDUyMTg5LCA1MjE5MywgNTIxOTYsIDUyMjAxLCA1MjIwNiwgNTIyMTEsIDUyMjE3LCA1MjIyNiwgCisgICAgNTIyMzMsIDUyMjQwLCA1MjI0OCwgNTIyNTUsIDUyMjYyLCA1MjI2NSwgNTIyNzEsIDUyMjc3LCA1MjI4MCwgNTIyODMsIAorICAgIDUyMjg4LCA1MjI5MywgNTIyOTksIDUyMzA1LCA1MjMwOSwgNTIzMTQsIDUyMzIxLCA1MjMyNSwgNTIzMzEsIDUyMzM1LCAKKyAgICA1MjMzOSwgNTIzNDcsIDUyMzU5LCA1MjM2OCwgNTIzNzIsIDUyMzc0LCA1MjM4MywgNTIzOTIsIDUyMzk4LCA1MjQwMSwgCisgICAgNTI0MDcsIDUyNDEzLCA1MjQxOCwgNTI0MjMsIDUyNDI4LCA1MjQzMywgNTI0MzgsIDUyNDQzLCA1MjQ0NSwgNTI0NTEsIAorICAgIDUyNDU2LCA1MjQ2MywgNTI0NjcsIDUyNDczLCA1MjQ3NiwgNTI0ODAsIDUyNDg3LCA1MjQ5NCwgNTI0OTYsIDUyNDk4LCAKKyAgICA1MjUwNCwgNTI1MTAsIDUyNTE2LCA1MjUyNSwgNTI1MzQsIDUyNTQxLCA1MjU0OCwgNTI1NTQsIDUyNTYwLCA1MjU2NSwgCisgICAgNTI1NzAsIDUyNTc1LCA1MjU4MSwgNTI1ODcsIDUyNTkyLCA1MjU5OSwgNTI2MDMsIDUyNjA3LCA1MjYyMCwgNTI2MzMsIAorICAgIDUyNjQ1LCA1MjY1NCwgNTI2NjAsIDUyNjY3LCA1MjY3MiwgNTI2NzcsIDUyNjgyLCA1MjY4NywgNTI2OTIsIDUyNjk0LCAKKyAgICA1MjcwMSwgNTI3MDgsIDUyNzE1LCA1MjcyMiwgNTI3MjksIDUyNzM3LCA1Mjc0MywgNTI3NDgsIDUyNzU0LCA1Mjc2MCwgCisgICAgNTI3NjYsIDUyNzczLCA1Mjc3OSwgNTI3ODcsIDUyNzk1LCA1MjgwMywgNTI4MTEsIDUyODE4LCA1MjgyNCwgNTI4MzAsIAorICAgIDUyODM5LCA1Mjg0MywgNTI4NTIsIDUyODYxLCA1Mjg3MCwgNTI4NzgsIDUyODgyLCA1Mjg4OCwgNTI4OTUsIDUyOTAyLCAKKyAgICA1MjkwNiwgNTI5MTIsIDUyOTE5LCA1MjkyNCwgNTI5MjksIDUyOTM1LCA1Mjk0MCwgNTI5NDUsIDUyOTUyLCA1Mjk1OSwgCisgICAgNTI5NjQsIDUyOTY5LCA1Mjk3NywgNTI5ODUsIDUyOTk1LCA1MzAwNSwgNTMwMTIsIDUzMDE5LCA1MzAyMywgNTMwMjcsIAorICAgIDUzMDM5LCA1MzA0NSwgNTMwNTEsIDUzMDU2LCA1MzA2MSwgNTMwNjgsIDUzMDc1LCA1MzA4MSwgNTMwODcsIDUzMDk2LCAKKyAgICA1MzEwNCwgNTMxMTIsIDUzMTE5LCA1MzEyNiwgNTMxMzMsIDUzMTM5LCA1MzE0NiwgNTMxNTIsIDUzMTU5LCA1MzE2NiwgCisgICAgNTMxNzMsIDUzMTgwLCA1MzE4NiwgNTMxOTEsIDUzMjAwLCA1MzIxMCwgNTMyMTcsIDUzMjI2LCA1MzIzMiwgNTMyMzcsIAorICAgIDUzMjQyLCA1MzI1MiwgNTMyNTgsIDUzMjY0LCA1MzI3MCwgNTMyNzgsIDUzMjgzLCA1MzI5MCwgNTMyOTcsIDUzMzA4LCAKKyAgICA1MzMxNSwgNTMzMjIsIDUzMzI5LCA1MzMzNiwgNTMzNDMsIDUzMzUwLCA1MzM1NywgNTMzNjksIDUzMzgxLCA1MzM5MiwgCisgICAgNTM0MDMsIDUzNDE2LCA1MzQyOSwgNTM0MzQsIDUzNDM5LCA1MzQ0OCwgNTM0NTcsIDUzNDY0LCA1MzQ3MSwgNTM0ODAsIAorICAgIDUzNDg5LCA1MzQ5NywgNTM1MDUsIDUzNTEzLCA1MzUyMSwgNTM1MzEsIDUzNTQxLCA1MzU1NSwgNTM1NjksIDUzNTc3LCAKKyAgICA1MzU4NSwgNTM1OTcsIDUzNjA5LCA1MzYxNywgNTM2MjUsIDUzNjM1LCA1MzY0NSwgNTM2NTAsIDUzNjU1LCA1MzY2NCwgCisgICAgNTM2NzMsIDUzNjc4LCA1MzY4MywgNTM2OTEsIDUzNjk3LCA1MzcwMywgNTM3MTEsIDUzNzE5LCA1MzczMiwgNTM3NDUsIAorICAgIDUzNzQ5LCA1Mzc1MywgNTM3NjAsIDUzNzY3LCA1Mzc3NCwgNTM3ODIsIDUzNzkwLCA1Mzc5OSwgNTM4MDgsIDUzODE0LCAKKyAgICA1MzgyMCwgNTM4MjcsIDUzODM0LCA1Mzg0MSwgNTM4NDgsIDUzODU3LCA1Mzg2NiwgNTM4NjksIDUzODcyLCA1Mzg3NywgCisgICAgNTM4ODIsIDUzODg4LCA1Mzg5NCwgNTM5MDEsIDUzOTA4LCA1MzkxOCwgNTM5MjgsIDUzOTM1LCA1Mzk0MiwgNTM5NTAsIAorICAgIDUzOTU4LCA1Mzk2NiwgNTM5NzQsIDUzOTgyLCA1Mzk5MCwgNTM5OTYsIDU0MDAyLCA1NDAwNiwgNTQwMTAsIDU0MDE3LCAKKyAgICA1NDAyNCwgNTQwMjksIDU0MDM0LCA1NDAzOSwgNTQwNDQsIDU0MDUwLCA1NDA2NCwgNTQwNzEsIDU0MDc4LCA1NDA4MiwgCisgICAgNTQwODQsIDU0MDg2LCA1NDA5MSwgNTQwOTYsIDU0MTAxLCA1NDEwNiwgNTQxMTQsIDU0MTIxLCA1NDEyOCwgNTQxMzYsIAorICAgIDU0MTQ4LCA1NDE1NiwgNTQxNjQsIDU0MTc1LCA1NDE3OSwgNTQxODMsIDU0MTg5LCA1NDE5NywgNTQyMTAsIDU0MjE3LCAKKyAgICA1NDIyNCwgNTQyMzEsIDU0MjM2LCA1NDI0MywgNTQyNTIsIDU0MjYwLCA1NDI2NiwgNTQyNzIsIDU0Mjc4LCA1NDI4NywgCisgICAgNTQyOTYsIDU0MzA0LCA1NDMxMywgNTQzMTgsIDU0MzIxLCA1NDMyNiwgNTQzMzIsIDU0MzM4LCA1NDM0NCwgNTQzNTAsIAorICAgIDU0MzU0LCA1NDM1NywgNTQzNjEsIDU0MzY1LCA1NDM3MSwgNTQzNzcsIDU0MzgzLCA1NDM4OSwgNTQzOTMsIDU0Mzk3LCAKKyAgICA1NDQwNCwgNTQ0MTEsIDU0NDE4LCA1NDQyNSwgNTQ0MzIsIDU0NDM5LCA1NDQ0OSwgNTQ0NTksIDU0NDY2LCA1NDQ3MywgCisgICAgNTQ0ODEsIDU0NDg5LCA1NDQ5MywgNTQ0OTgsIDU0NTAzLCA1NDUwOSwgNTQ1MTUsIDU0NTE4LCA1NDUyMSwgNTQ1MjQsIAorICAgIDU0NTI3LCA1NDUzMSwgNTQ1MzYsIDU0NTQxLCA1NDU0NiwgNTQ1NTEsIDU0NTU2LCA1NDU2MCwgNTQ1NjQsIDU0NTY4LCAKKyAgICA1NDU3MiwgNTQ1NzYsIDU0NTgwLCA1NDU4NCwgNTQ1OTAsIDU0NTk0LCA1NDYwMCwgNTQ2MDUsIDU0NjEyLCA1NDYyMCwgCisgICAgNTQ2MjcsIDU0NjM1LCA1NDY0MiwgNTQ2NTAsIDU0NjU5LCA1NDY2NiwgNTQ2NzYsIDU0Njg3LCA1NDY5MywgNTQ3MDIsIAorICAgIDU0NzA4LCA1NDcxNywgNTQ3MjYsIDU0NzMyLCA1NDczOCwgNTQ3NDIsIDU0NzQ2LCA1NDc1NSwgNTQ3NjQsIDU0NzcxLCAKKyAgICA1NDc3OCwgNTQ3ODcsIDAsIDAsIDAsIDU0Nzk2LCA1NDgwMSwgNTQ4MDUsIDU0ODA5LCA1NDgxNCwgNTQ4MTksIDU0ODI0LCAKKyAgICA1NDgzMiwgNTQ4NDAsIDU0ODQzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA1NDg0NywgNTQ4NTIsIDU0ODU3LCA1NDg2MiwgNTQ4NjcsIDU0ODcyLCA1NDg3NywgNTQ4ODIsIAorICAgIDU0ODg3LCA1NDg5MiwgNTQ4OTcsIDU0OTAzLCA1NDkwNywgNTQ5MTIsIDU0OTE3LCA1NDkyMiwgNTQ5MjcsIDU0OTMyLCAKKyAgICA1NDkzNywgNTQ5NDIsIDU0OTQ3LCA1NDk1MiwgNTQ5NTcsIDU0OTYyLCA1NDk2NywgNTQ5NzIsIDU0OTc3LCA1NDk4MiwgCisgICAgNTQ5ODcsIDU0OTkyLCA1NDk5NywgNTUwMDIsIDU1MDA3LCA1NTAxMiwgNTUwMTcsIDU1MDIzLCA1NTAyOCwgNTUwMzQsIAorICAgIDU1MDQzLCA1NTA0OCwgNTUwNTYsIDU1MDYzLCA1NTA3MiwgNTUwNzcsIDU1MDgyLCA1NTA4NywgNTUwOTMsIDAsIDU1MTAwLCAKKyAgICA1NTEwNSwgNTUxMTAsIDU1MTE1LCA1NTEyMCwgNTUxMjUsIDU1MTMwLCA1NTEzNSwgNTUxNDAsIDU1MTQ1LCA1NTE1MCwgCisgICAgNTUxNTYsIDU1MTYwLCA1NTE2NSwgNTUxNzAsIDU1MTc1LCA1NTE4MCwgNTUxODUsIDU1MTkwLCA1NTE5NSwgNTUyMDAsIAorICAgIDU1MjA1LCA1NTIxMCwgNTUyMTUsIDU1MjIwLCA1NTIyNSwgNTUyMzAsIDU1MjM1LCA1NTI0MCwgNTUyNDUsIDU1MjUwLCAKKyAgICA1NTI1NSwgNTUyNjAsIDU1MjY1LCA1NTI3MCwgNTUyNzYsIDU1MjgxLCA1NTI4NywgNTUyOTYsIDU1MzAxLCA1NTMwOSwgCisgICAgNTUzMTYsIDU1MzI1LCA1NTMzMCwgNTUzMzUsIDU1MzQwLCA1NTM0NiwgMCwgNTUzNTMsIDU1MzYxLCA1NTM2OSwgNTUzNzgsIAorICAgIDU1Mzg1LCA1NTM5MywgNTUzOTksIDU1NDA4LCA1NTQxNiwgNTU0MjQsIDU1NDMyLCA1NTQ0MCwgNTU0NDgsIDU1NDU2LCAKKyAgICA1NTQ2MSwgNTU0NjgsIDU1NDc0LCA1NTQ4MSwgNTU0ODksIDU1NDk2LCA1NTUwMywgNTU1MTEsIDU1NTE3LCA1NTUyMywgCisgICAgNTU1MzAsIDU1NTM3LCA1NTU0NywgNTU1NTcsIDU1NTY0LCA1NTU3MSwgNTU1NzYsIDU1NTg2LCA1NTU5NiwgNTU2MDEsIAorICAgIDU1NjA2LCA1NTYxMSwgNTU2MTYsIDU1NjIxLCA1NTYyNiwgNTU2MzEsIDU1NjM2LCA1NTY0MSwgNTU2NDYsIDU1NjUxLCAKKyAgICA1NTY1NiwgNTU2NjEsIDU1NjY2LCA1NTY3MSwgNTU2NzYsIDU1NjgxLCA1NTY4NiwgNTU2OTEsIDU1Njk2LCA1NTcwMSwgCisgICAgNTU3MDYsIDU1NzExLCA1NTcxNiwgNTU3MjEsIDU1NzI2LCA1NTczMSwgNTU3MzYsIDU1NzQxLCA1NTc0NiwgNTU3NTAsIAorICAgIDU1NzU0LCA1NTc1OSwgNTU3NjQsIDU1NzY5LCA1NTc3NCwgNTU3NzksIDU1Nzg0LCA1NTc4OSwgNTU3OTQsIDU1Nzk5LCAKKyAgICA1NTgwNCwgNTU4MDksIDU1ODE0LCA1NTgxOSwgNTU4MjQsIDU1ODI5LCA1NTgzNCwgNTU4MzksIDU1ODQ0LCA1NTg1MSwgCisgICAgNTU4NTgsIDU1ODY1LCA1NTg3MiwgNTU4NzksIDU1ODg2LCA1NTg5MywgNTU5MDAsIDU1OTA3LCA1NTkxNCwgNTU5MjEsIAorICAgIDU1OTI4LCA1NTkzNSwgNTU5NDIsIDU1OTQ3LCA1NTk1MiwgNTU5NTksIDU1OTY2LCA1NTk3MywgNTU5ODAsIDU1OTg3LCAKKyAgICA1NTk5NCwgNTYwMDEsIDU2MDA4LCA1NjAxNSwgNTYwMjIsIDU2MDI5LCA1NjAzNiwgNTYwNDIsIDU2MDQ4LCA1NjA1NCwgCisgICAgNTYwNjAsIDU2MDY3LCA1NjA3NCwgNTYwODEsIDU2MDg4LCA1NjA5NSwgNTYxMDIsIDU2MTA5LCA1NjExNiwgNTYxMjMsIAorICAgIDU2MTMwLCA1NjEzOCwgNTYxNDYsIDU2MTU0LCA1NjE2MiwgNTYxNzAsIDU2MTc4LCA1NjE4NiwgNTYxOTQsIDU2MTk4LCAKKyAgICA1NjIwNCwgNTYyMTAsIDU2MjE0LCA1NjIyMCwgNTYyMjYsIDU2MjMyLCA1NjIzOSwgNTYyNDYsIDU2MjUzLCA1NjI2MCwgCisgICAgNTYyNjUsIDU2MjcxLCA1NjI3NywgNTYyODQsIDAsIDAsIDAsIDAsIDAsIDU2MjkxLCA1NjI5OSwgNTYzMDgsIDU2MzE3LCAKKyAgICA1NjMyNSwgNTYzMzEsIDU2MzM2LCA1NjM0MSwgNTYzNDYsIDU2MzUxLCA1NjM1NiwgNTYzNjEsIDU2MzY2LCA1NjM3MSwgCisgICAgNTYzNzYsIDU2MzgxLCA1NjM4NiwgNTYzOTEsIDU2Mzk2LCA1NjQwMSwgNTY0MDYsIDU2NDExLCA1NjQxNiwgNTY0MjEsIAorICAgIDU2NDI2LCA1NjQzMSwgNTY0MzYsIDU2NDQxLCA1NjQ0NiwgNTY0NTEsIDU2NDU2LCA1NjQ2MSwgNTY0NjYsIDU2NDcxLCAKKyAgICA1NjQ3NiwgNTY0ODEsIDU2NDg2LCA1NjQ5MSwgNTY0OTYsIDU2NTAxLCA1NjUwNiwgNTY1MTEsIDU2NTE2LCA1NjUyMSwgCisgICAgNTY1MjYsIDAsIDU2NTMxLCAwLCAwLCAwLCAwLCAwLCA1NjUzNiwgMCwgMCwgNTY1NDEsIDU2NTQ1LCA1NjU1MCwgNTY1NTUsIAorICAgIDU2NTYwLCA1NjU2NSwgNTY1NzQsIDU2NTc5LCA1NjU4NCwgNTY1ODksIDU2NTk0LCA1NjU5OSwgNTY2MDQsIDU2NjA5LCAKKyAgICA1NjYxNCwgNTY2MjEsIDU2NjI2LCA1NjYzMSwgNTY2NDAsIDU2NjQ3LCA1NjY1MiwgNTY2NTcsIDU2NjYyLCA1NjY2OSwgCisgICAgNTY2NzQsIDU2NjgxLCA1NjY4NiwgNTY2OTEsIDU2Njk4LCA1NjcwNSwgNTY3MTAsIDU2NzE1LCA1NjcyMCwgNTY3MjcsIAorICAgIDU2NzM0LCA1NjczOSwgNTY3NDQsIDU2NzQ5LCA1Njc1NCwgNTY3NTksIDU2NzY2LCA1Njc3MywgNTY3NzgsIDU2NzgzLCAKKyAgICA1Njc4OCwgNTY3OTMsIDU2Nzk4LCA1NjgwMywgNTY4MDgsIDU2ODEzLCA1NjgxOCwgNTY4MjMsIDU2ODI4LCA1NjgzNSwgCisgICAgNTY4NDAsIDU2ODQ1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1Njg1MCwgNTY4NTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDU2ODYyLCA1Njg2NywgNTY4NzEsIDU2ODc1LCA1Njg3OSwgNTY4ODMsIDU2ODg3LCA1Njg5MSwgCisgICAgNTY4OTUsIDU2ODk5LCA1NjkwMywgNTY5MDcsIDU2OTEzLCA1NjkxNywgNTY5MjEsIDU2OTI1LCA1NjkyOSwgNTY5MzMsIAorICAgIDU2OTM3LCA1Njk0MSwgNTY5NDUsIDU2OTQ5LCA1Njk1MywgNTY5NTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDU2OTYxLCA1Njk2NSwgNTY5NjksIDU2OTczLCA1Njk3NywgNTY5ODEsIDU2OTg1LCAwLCA1Njk4OSwgNTY5OTMsIDU2OTk3LCAKKyAgICA1NzAwMSwgNTcwMDUsIDU3MDA5LCA1NzAxMywgMCwgNTcwMTcsIDU3MDIxLCA1NzAyNSwgNTcwMjksIDU3MDMzLCA1NzAzNywgCisgICAgNTcwNDEsIDAsIDU3MDQ1LCA1NzA0OSwgNTcwNTMsIDU3MDU3LCA1NzA2MSwgNTcwNjUsIDU3MDY5LCAwLCA1NzA3MywgCisgICAgNTcwNzcsIDU3MDgxLCA1NzA4NSwgNTcwODksIDU3MDkzLCA1NzA5NywgMCwgNTcxMDEsIDU3MTA1LCA1NzEwOSwgNTcxMTMsIAorICAgIDU3MTE3LCA1NzEyMSwgNTcxMjUsIDAsIDU3MTI5LCA1NzEzMywgNTcxMzcsIDU3MTQxLCA1NzE0NSwgNTcxNDksIDU3MTUzLCAKKyAgICAwLCA1NzE1NywgNTcxNjEsIDU3MTY1LCA1NzE2OSwgNTcxNzMsIDU3MTc3LCA1NzE4MSwgMCwgNTcxODUsIDU3MTkwLCAKKyAgICA1NzE5NSwgNTcyMDAsIDU3MjA1LCA1NzIxMCwgNTcyMTUsIDU3MjE5LCA1NzIyNCwgNTcyMjksIDU3MjM0LCA1NzIzOCwgCisgICAgNTcyNDMsIDU3MjQ4LCA1NzI1MywgNTcyNTgsIDU3MjYyLCA1NzI2NywgNTcyNzIsIDU3Mjc3LCA1NzI4MiwgNTcyODcsIAorICAgIDU3MjkyLCA1NzI5NiwgNTczMDEsIDU3MzA2LCA1NzMxMywgNTczMTgsIDU3MzIzLCA1NzMyOSwgNTczMzYsIDU3MzQzLCAKKyAgICA1NzM1MiwgNTczNTksIDU3MzY4LCA1NzM3MiwgNTczNzYsIDU3MzgyLCA1NzM4OCwgNTczOTQsIDU3NDAyLCA1NzQwOCwgCisgICAgNTc0MTIsIDU3NDE2LCA1NzQyMCwgNTc0MjYsIDU3NDMyLCA1NzQzNiwgNTc0MzgsIDU3NDQyLCA1NzQ0OCwgNTc0NTAsIAorICAgIDU3NDU0LCA1NzQ1OCwgNTc0NjIsIDU3NDY4LCA1NzQ3MywgNTc0NzcsIDU3NDgxLCA1NzQ4NiwgNTc0OTIsIDU3NDk3LCAKKyAgICA1NzUwMiwgNTc1MDcsIDU3NTEyLCA1NzUxOSwgNTc1MjYsIDU3NTMxLCA1NzUzNiwgNTc1NDEsIDU3NTQ2LCA1NzU1MSwgCisgICAgNTc1NTYsIDU3NTYwLCA1NzU2NCwgNTc1NzEsIDU3NTc4LCA1NzU4NCwgNTc1ODgsIDU3NTkzLCA1NzU5NSwgNTc1OTksIAorICAgIDU3NjA3LCA1NzYxMSwgNTc2MTUsIDU3NjE5LCA1NzYyMywgNTc2MjksIDU3NjM1LCA1NzYzOSwgNTc2NDUsIDU3NjQ5LCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NzY1MywgNTc2NTcsIAorICAgIDU3NjYxLCA1NzY2NiwgNTc2NzEsIDU3Njc2LCA1NzY4MCwgNTc2ODQsIDU3Njg4LCA1NzY5MywgNTc2OTgsIDU3NzAyLCAKKyAgICA1NzcwNiwgNTc3MTAsIDU3NzE0LCA1NzcxOSwgNTc3MjQsIDU3NzI5LCA1NzczNCwgNTc3MzgsIDU3NzQyLCA1Nzc0NywgCisgICAgNTc3NTIsIDU3NzU3LCA1Nzc2MiwgNTc3NjYsIDAsIDU3NzcwLCA1Nzc3NCwgNTc3NzgsIDU3NzgyLCA1Nzc4NiwgNTc3OTAsIAorICAgIDU3Nzk0LCA1Nzc5OSwgNTc4MDQsIDU3ODA4LCA1NzgxMywgNTc4MTgsIDU3ODI3LCA1NzgzMSwgNTc4MzUsIDU3ODM5LCAKKyAgICA1Nzg0NiwgNTc4NTAsIDU3ODU1LCA1Nzg2MCwgNTc4NjQsIDU3ODY4LCA1Nzg3NCwgNTc4NzksIDU3ODg0LCA1Nzg4OSwgCisgICAgNTc4OTQsIDU3ODk4LCA1NzkwMiwgNTc5MDYsIDU3OTEwLCA1NzkxNCwgNTc5MTksIDU3OTI0LCA1NzkyOCwgNTc5MzIsIAorICAgIDU3OTM3LCA1Nzk0MiwgNTc5NDcsIDU3OTUxLCA1Nzk1NSwgNTc5NjAsIDU3OTY1LCA1Nzk3MSwgNTc5NzcsIDU3OTgxLCAKKyAgICA1Nzk4NywgNTc5OTMsIDU3OTk3LCA1ODAwMywgNTgwMDksIDU4MDE0LCA1ODAxOSwgNTgwMjMsIDU4MDI5LCA1ODAzMywgCisgICAgNTgwMzcsIDU4MDQzLCA1ODA0OSwgNTgwNTQsIDU4MDU5LCA1ODA2MywgNTgwNjcsIDU4MDc1LCA1ODA4MSwgNTgwODcsIAorICAgIDU4MDkzLCA1ODA5OCwgNTgxMDMsIDU4MTA4LCA1ODExNCwgNTgxMTgsIDU4MTI0LCA1ODEyOCwgNTgxMzIsIDU4MTM4LCAKKyAgICA1ODE0NCwgNTgxNTAsIDU4MTU2LCA1ODE2MiwgNTgxNjgsIDU4MTc0LCA1ODE4MCwgNTgxODYsIDU4MTkyLCA1ODE5OCwgCisgICAgNTgyMDQsIDU4MjA4LCA1ODIxNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTgyMjAsIDU4MjIzLCAKKyAgICA1ODIyNywgNTgyMzEsIDU4MjM1LCA1ODIzOSwgNTgyNDIsIDU4MjQ1LCA1ODI0OSwgNTgyNTMsIDU4MjU3LCA1ODI2MSwgCisgICAgNTgyNjQsIDU4MjY5LCA1ODI3MywgNTgyNzcsIDU4MjgxLCA1ODI4NiwgNTgyOTAsIDU4Mjk0LCA1ODI5OCwgNTgzMDIsIAorICAgIDU4MzA4LCA1ODMxNCwgNTgzMTgsIDU4MzIyLCA1ODMyNiwgNTgzMzAsIDU4MzM0LCA1ODMzOCwgNTgzNDIsIDU4MzQ2LCAKKyAgICA1ODM1MCwgNTgzNTQsIDU4MzU4LCA1ODM2NCwgNTgzNjgsIDU4MzcyLCA1ODM3NiwgNTgzODAsIDU4Mzg0LCA1ODM4OCwgCisgICAgNTgzOTIsIDU4Mzk2LCA1ODQwMCwgNTg0MDQsIDU4NDA4LCA1ODQxMiwgNTg0MTYsIDU4NDIwLCA1ODQyNCwgNTg0MjgsIAorICAgIDU4NDM0LCA1ODQ0MCwgNTg0NDUsIDU4NDUwLCA1ODQ1NCwgNTg0NTgsIDU4NDYyLCA1ODQ2NiwgNTg0NzAsIDU4NDc0LCAKKyAgICA1ODQ3OCwgNTg0ODIsIDU4NDg2LCA1ODQ5MCwgNTg0OTQsIDU4NDk4LCA1ODUwMiwgNTg1MDYsIDU4NTEwLCA1ODUxNCwgCisgICAgNTg1MTgsIDU4NTIyLCA1ODUyNiwgNTg1MzAsIDU4NTM0LCA1ODUzOCwgNTg1NDIsIDU4NTQ2LCA1ODU1MiwgNTg1NTYsIAorICAgIDU4NTYwLCA1ODU2NCwgNTg1NjgsIDU4NTcyLCA1ODU3NiwgNTg1ODAsIDU4NTg0LCA1ODU4OSwgNTg1OTYsIDU4NjAwLCAKKyAgICA1ODYwNCwgNTg2MDgsIDU4NjEyLCA1ODYxNiwgNTg2MjAsIDU4NjI0LCA1ODYyOCwgNTg2MzIsIDU4NjM2LCA1ODY0MCwgCisgICAgNTg2NDQsIDU4NjUxLCA1ODY1NSwgNTg2NjEsIDU4NjY1LCA1ODY2OSwgNTg2NzMsIDU4Njc3LCA1ODY4MSwgNTg2ODQsIAorICAgIDU4Njg4LCA1ODY5MiwgNTg2OTYsIDU4NzAwLCA1ODcwNCwgNTg3MDgsIDU4NzEyLCA1ODcxNiwgNTg3MjAsIDU4NzI0LCAKKyAgICA1ODcyOCwgNTg3MzIsIDU4NzM2LCA1ODc0MCwgNTg3NDQsIDU4NzQ4LCA1ODc1MiwgNTg3NTYsIDU4NzYwLCA1ODc2NCwgCisgICAgNTg3NjgsIDU4NzcyLCA1ODc3NiwgNTg3ODAsIDU4Nzg0LCA1ODc4OCwgNTg3OTIsIDU4Nzk2LCA1ODgwMCwgNTg4MDQsIAorICAgIDU4ODA4LCA1ODgxMiwgNTg4MTgsIDU4ODIyLCA1ODgyNiwgNTg4MzAsIDU4ODM0LCA1ODgzOCwgNTg4NDIsIDU4ODQ2LCAKKyAgICA1ODg1MCwgNTg4NTQsIDU4ODU4LCA1ODg2MiwgNTg4NjYsIDU4ODcwLCA1ODg3NCwgNTg4NzgsIDU4ODgyLCA1ODg4NiwgCisgICAgNTg4OTAsIDU4ODk0LCA1ODg5OCwgNTg5MDIsIDU4OTA2LCA1ODkxMCwgNTg5MTQsIDU4OTE4LCA1ODkyMiwgNTg5MjYsIAorICAgIDU4OTM0LCA1ODkzOCwgNTg5NDIsIDU4OTQ2LCA1ODk1MCwgNTg5NTQsIDU4OTYwLCA1ODk2NCwgNTg5NjgsIDU4OTcyLCAKKyAgICA1ODk3NiwgNTg5ODAsIDU4OTg0LCA1ODk4OCwgNTg5OTIsIDU4OTk2LCA1OTAwMCwgNTkwMDQsIDU5MDA4LCA1OTAxMiwgCisgICAgNTkwMTgsIDU5MDIyLCA1OTAyNiwgNTkwMzAsIDU5MDM0LCA1OTAzOCwgNTkwNDIsIDU5MDQ2LCA1OTA1MCwgNTkwNTQsIAorICAgIDU5MDU4LCA1OTA2MiwgNTkwNjYsIDU5MDcwLCA1OTA3NCwgNTkwNzgsIDU5MDgyLCA1OTA4NiwgNTkwOTAsIDU5MDk0LCAKKyAgICA1OTA5OCwgNTkxMDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDU5MTA2LCA1OTExNSwgNTkxMjMsIDU5MTM1LCA1OTE0NiwgNTkxNTQsIDU5MTYzLCA1OTE3MiwgCisgICAgNTkxODIsIDU5MTk0LCA1OTIwNiwgNTkyMTgsIDAsIDAsIDAsIDAsIDU5MjI0LCA1OTIyNywgNTkyMzAsIDU5MjM1LCAKKyAgICA1OTIzOCwgNTkyNDUsIDU5MjQ5LCA1OTI1MywgNTkyNTcsIDU5MjYxLCA1OTI2NSwgNTkyNzAsIDU5Mjc1LCA1OTI3OSwgCisgICAgNTkyODMsIDU5Mjg4LCA1OTI5MywgNTkyOTgsIDU5MzAzLCA1OTMwNiwgNTkzMDksIDU5MzE1LCA1OTMyMSwgNTkzMjYsIAorICAgIDU5MzMxLCA1OTMzOCwgNTkzNDUsIDU5MzQ5LCA1OTM1MywgNTkzNTcsIDU5MzY1LCA1OTM3MSwgNTkzNzgsIDU5MzgzLCAKKyAgICA1OTM4OCwgNTkzOTMsIDU5Mzk4LCA1OTQwMywgNTk0MDgsIDU5NDEzLCA1OTQxOCwgNTk0MjMsIDU5NDI4LCA1OTQzMywgCisgICAgNTk0MzgsIDU5NDQzLCA1OTQ0OCwgNTk0NTQsIDU5NDU5LCA1OTQ2MywgNTk0NjksIDU5NDgwLCA1OTQ5MCwgNTk1MDUsIAorICAgIDU5NTE1LCA1OTUxOSwgNTk1MjksIDU5NTM1LCA1OTU0MSwgNTk1NDcsIDU5NTUyLCA1OTU1NSwgNTk1NjAsIDU5NTY0LCAwLCAKKyAgICA1OTU3MCwgNTk1NzQsIDU5NTc3LCA1OTU4MSwgNTk1ODQsIDU5NTg4LCA1OTU5MSwgNTk1OTUsIDU5NTk4LCA1OTYwMiwgCisgICAgNTk2MDUsIDU5NjA4LCA1OTYxMiwgNTk2MTYsIDU5NjIwLCA1OTYyNCwgNTk2MjgsIDU5NjMyLCA1OTYzNiwgNTk2NDAsIAorICAgIDU5NjQ0LCA1OTY0NywgNTk2NTEsIDU5NjU1LCA1OTY1OSwgNTk2NjMsIDU5NjY3LCA1OTY3MSwgNTk2NzUsIDU5Njc5LCAKKyAgICA1OTY4MywgNTk2ODcsIDU5NjkxLCA1OTY5NSwgNTk2OTksIDU5NzA0LCA1OTcwOCwgNTk3MTIsIDU5NzE2LCA1OTcyMCwgCisgICAgNTk3MjMsIDU5NzI3LCA1OTczMCwgNTk3MzQsIDU5NzM4LCA1OTc0MiwgNTk3NDYsIDU5NzQ5LCA1OTc1MywgNTk3NTYsIAorICAgIDU5NzYwLCA1OTc2NCwgNTk3NjgsIDU5NzcyLCA1OTc3NiwgNTk3ODAsIDU5Nzg0LCA1OTc4OCwgNTk3OTIsIDU5Nzk2LCAKKyAgICA1OTgwMCwgNTk4MDQsIDU5ODA3LCA1OTgxMSwgNTk4MTUsIDU5ODE5LCA1OTgyMywgNTk4MjcsIDU5ODMwLCA1OTgzNSwgCisgICAgNTk4MzksIDU5ODQ0LCA1OTg0OCwgNTk4NTEsIDU5ODU1LCA1OTg1OSwgNTk4NjMsIDU5ODY3LCA1OTg3MiwgNTk4NzYsIAorICAgIDU5ODgwLCA1OTg4NCwgNTk4ODgsIDU5ODkyLCA1OTg5NiwgNTk5MDAsIDAsIDAsIDU5OTA1LCA1OTkxMywgNTk5MjEsIAorICAgIDU5OTI4LCA1OTkzNSwgNTk5MzksIDU5OTQ1LCA1OTk1MCwgNTk5NTUsIDU5OTU5LCA1OTk2MiwgNTk5NjYsIDU5OTY5LCAKKyAgICA1OTk3MywgNTk5NzYsIDU5OTgwLCA1OTk4MywgNTk5ODcsIDU5OTkwLCA1OTk5MywgNTk5OTcsIDYwMDAxLCA2MDAwNSwgCisgICAgNjAwMDksIDYwMDEzLCA2MDAxNywgNjAwMjEsIDYwMDI1LCA2MDAyOSwgNjAwMzIsIDYwMDM2LCA2MDA0MCwgNjAwNDQsIAorICAgIDYwMDQ4LCA2MDA1MiwgNjAwNTYsIDYwMDYwLCA2MDA2NCwgNjAwNjgsIDYwMDcyLCA2MDA3NiwgNjAwODAsIDYwMDg0LCAKKyAgICA2MDA4OSwgNjAwOTMsIDYwMDk3LCA2MDEwMSwgNjAxMDUsIDYwMTA4LCA2MDExMiwgNjAxMTUsIDYwMTE5LCA2MDEyMywgCisgICAgNjAxMjcsIDYwMTMxLCA2MDEzNCwgNjAxMzgsIDYwMTQxLCA2MDE0NSwgNjAxNDksIDYwMTUzLCA2MDE1NywgNjAxNjEsIAorICAgIDYwMTY1LCA2MDE2OSwgNjAxNzMsIDYwMTc3LCA2MDE4MSwgNjAxODUsIDYwMTg5LCA2MDE5MiwgNjAxOTYsIDYwMjAwLCAKKyAgICA2MDIwNCwgNjAyMDgsIDYwMjEyLCA2MDIxNSwgNjAyMjAsIDYwMjI0LCA2MDIyOSwgNjAyMzMsIDYwMjM2LCA2MDI0MCwgCisgICAgNjAyNDQsIDYwMjQ4LCA2MDI1MiwgNjAyNTcsIDYwMjYxLCA2MDI2NSwgNjAyNjksIDYwMjczLCA2MDI3NywgNjAyODEsIAorICAgIDYwMjg1LCA2MDI5MCwgNjAyOTQsIDYwMjk4LCA2MDMwMiwgNjAzMDYsIDYwMzExLCA2MDMxOCwgNjAzMjIsIDYwMzI4LCAwLCAKKyAgICAwLCAwLCAwLCAwLCA2MDMzMywgNjAzMzgsIDYwMzQzLCA2MDM0NywgNjAzNTIsIDYwMzU3LCA2MDM2MiwgNjAzNjcsIAorICAgIDYwMzcxLCA2MDM3NiwgNjAzODEsIDYwMzg2LCA2MDM5MSwgNjAzOTYsIDYwNDAxLCA2MDQwNiwgNjA0MTEsIDYwNDE2LCAKKyAgICA2MDQyMCwgNjA0MjUsIDYwNDMwLCA2MDQzNSwgNjA0MzksIDYwNDQzLCA2MDQ0NywgNjA0NTIsIDYwNDU3LCA2MDQ2MiwgCisgICAgNjA0NjcsIDYwNDcyLCA2MDQ3NywgNjA0ODIsIDYwNDg3LCA2MDQ5MiwgNjA0OTcsIDYwNTAxLCA2MDUwNSwgNjA1MTAsIAorICAgIDYwNTE1LCA2MDUyMCwgNjA1MjUsIDAsIDAsIDAsIDYwNTMwLCA2MDUzNCwgNjA1MzgsIDYwNTQyLCA2MDU0NiwgNjA1NTAsIAorICAgIDYwNTU0LCA2MDU1OCwgNjA1NjIsIDYwNTY2LCA2MDU3MCwgNjA1NzQsIDYwNTc4LCA2MDU4MiwgNjA1ODYsIDYwNTkwLCAKKyAgICA2MDU5NCwgNjA1OTgsIDYwNjAyLCA2MDYwNiwgNjA2MTAsIDYwNjE0LCA2MDYxOCwgNjA2MjIsIDYwNjI2LCA2MDYzMCwgCisgICAgNjA2MzQsIDYwNjM4LCA2MDY0MiwgNjA2NDYsIDYwNjUwLCA2MDY1MywgNjA2NTcsIDYwNjYwLCA2MDY2NCwgNjA2NjgsIAorICAgIDYwNjcxLCA2MDY3NSwgNjA2NzksIDYwNjgyLCA2MDY4NiwgNjA2OTAsIDYwNjk0LCA2MDY5OCwgNjA3MDEsIDYwNzA1LCAKKyAgICA2MDcwOSwgNjA3MTMsIDYwNzE3LCA2MDcyMSwgNjA3MjUsIDYwNzI4LCA2MDczMSwgNjA3MzUsIDYwNzM5LCA2MDc0MywgCisgICAgNjA3NDcsIDYwNzUxLCA2MDc1NSwgNjA3NTksIDYwNzYzLCA2MDc2NywgNjA3NzEsIDYwNzc1LCA2MDc3OSwgNjA3ODMsIAorICAgIDYwNzg3LCA2MDc5MSwgNjA3OTUsIDYwNzk5LCA2MDgwMywgNjA4MDcsIDYwODExLCA2MDgxNSwgNjA4MTksIDYwODIzLCAKKyAgICA2MDgyNywgNjA4MzEsIDYwODM1LCA2MDgzOSwgNjA4NDMsIDYwODQ3LCA2MDg1MSwgNjA4NTUsIDYwODU5LCA2MDg2MywgCisgICAgNjA4NjcsIDYwODcxLCA2MDg3NSwgNjA4NzksIDYwODgzLCA2MDg4NywgNjA4OTEsIDYwODk1LCAwLCA2MDg5OSwgNjA5MDUsIAorICAgIDYwOTExLCA2MDkxNiwgNjA5MjEsIDYwOTI2LCA2MDkzMiwgNjA5MzgsIDYwOTQ0LCA2MDk1MCwgNjA5NTYsIDYwOTYyLCAKKyAgICA2MDk2OCwgNjA5NzQsIDYwOTgwLCA2MDk4NiwgNjA5OTIsIDYwOTk3LCA2MTAwMiwgNjEwMDcsIDYxMDEyLCA2MTAxNywgCisgICAgNjEwMjIsIDYxMDI3LCA2MTAzMiwgNjEwMzcsIDYxMDQyLCA2MTA0NywgNjEwNTIsIDYxMDU3LCA2MTA2MiwgNjEwNjcsIAorICAgIDYxMDcyLCA2MTA3NywgNjEwODIsIDYxMDg3LCA2MTA5MiwgNjEwOTgsIDYxMTA0LCA2MTExMCwgNjExMTYsIDYxMTIxLCAKKyAgICA2MTEyNiwgMCwgMCwgMCwgMCwgMCwgNjExMzEsIDYxMTM2LCA2MTE0MSwgNjExNDYsIDYxMTUxLCA2MTE1NiwgNjExNjEsIAorICAgIDYxMTY2LCA2MTE3MSwgNjExNzYsIDYxMTgxLCA2MTE4NiwgNjExOTEsIDYxMTk2LCA2MTIwMSwgNjEyMDYsIDYxMjExLCAKKyAgICA2MTIxNiwgNjEyMjEsIDYxMjI2LCA2MTIzMSwgNjEyMzYsIDYxMjQxLCA2MTI0NiwgNjEyNTEsIDYxMjU2LCA2MTI2MSwgCisgICAgNjEyNjYsIDYxMjcxLCA2MTI3NiwgNjEyODEsIDYxMjg2LCA2MTI5MSwgNjEyOTYsIDYxMzAxLCA2MTMwNiwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjEzMTEsIDYxMzE2LCA2MTMyMSwgNjEzMjYsIDYxMzMwLCA2MTMzNSwgCisgICAgNjEzMzksIDYxMzQ0LCA2MTM0OSwgNjEzNTQsIDYxMzU5LCA2MTM2NCwgNjEzNjgsIDYxMzczLCA2MTM3OCwgNjEzODMsIAorICAgIDYxMzg4LCA2MTM5MiwgNjEzOTYsIDYxNDAwLCA2MTQwNCwgNjE0MDgsIDYxNDEyLCA2MTQxNiwgNjE0MjAsIDYxNDI0LCAKKyAgICA2MTQyOCwgNjE0MzIsIDYxNDM2LCA2MTQ0MCwgNjE0NDQsIDYxNDQ5LCA2MTQ1NCwgNjE0NTksIDYxNDY0LCA2MTQ2OSwgCisgICAgNjE0NzQsIDYxNDc5LCA2MTQ4NCwgNjE0ODksIDYxNDk0LCA2MTQ5OSwgNjE1MDQsIDYxNTA5LCA2MTUxNCwgNjE1MTksIAorICAgIDYxNTI1LCAwLCA2MTUzMiwgNjE1MzUsIDYxNTM4LCA2MTU0MSwgNjE1NDQsIDYxNTQ3LCA2MTU1MCwgNjE1NTMsIDYxNTU2LCAKKyAgICA2MTU1OSwgNjE1NjMsIDYxNTY3LCA2MTU3MSwgNjE1NzUsIDYxNTc5LCA2MTU4MywgNjE1ODcsIDYxNTkxLCA2MTU5NSwgCisgICAgNjE1OTksIDYxNjAzLCA2MTYwNywgNjE2MTEsIDYxNjE1LCA2MTYxOSwgNjE2MjMsIDYxNjI3LCA2MTYzMSwgNjE2MzUsIAorICAgIDYxNjM5LCA2MTY0MywgNjE2NDcsIDYxNjUxLCA2MTY1NSwgNjE2NTksIDYxNjYzLCA2MTY2NywgNjE2NzEsIDYxNjc1LCAKKyAgICA2MTY3OSwgNjE2ODMsIDYxNjkyLCA2MTcwMSwgNjE3MTAsIDYxNzE5LCA2MTcyOCwgNjE3MzcsIDYxNzQ2LCA2MTc1NSwgCisgICAgNjE3NTgsIDYxNzYzLCA2MTc2OCwgNjE3NzMsIDYxNzc4LCA2MTc4MywgNjE3ODgsIDYxNzkzLCA2MTc5OCwgNjE4MDMsIAorICAgIDYxODA3LCA2MTgxMiwgNjE4MTcsIDYxODIyLCA2MTgyNywgNjE4MzIsIDYxODM2LCA2MTg0MCwgNjE4NDQsIDYxODQ4LCAKKyAgICA2MTg1MiwgNjE4NTYsIDYxODYwLCA2MTg2NCwgNjE4NjgsIDYxODcyLCA2MTg3NiwgNjE4ODAsIDYxODg0LCA2MTg4OCwgCisgICAgNjE4OTMsIDYxODk4LCA2MTkwMywgNjE5MDgsIDYxOTEzLCA2MTkxOCwgNjE5MjMsIDYxOTI4LCA2MTkzMywgNjE5MzgsIAorICAgIDYxOTQzLCA2MTk0OCwgNjE5NTMsIDYxOTU4LCA2MTk2NCwgNjE5NzAsIDYxOTc1LCA2MTk4MCwgNjE5ODMsIDYxOTg2LCAKKyAgICA2MTk4OSwgNjE5OTIsIDYxOTk1LCA2MTk5OCwgNjIwMDEsIDYyMDA0LCA2MjAwNywgNjIwMTEsIDYyMDE1LCA2MjAxOSwgCisgICAgNjIwMjMsIDYyMDI3LCA2MjAzMSwgNjIwMzUsIDYyMDM5LCA2MjA0MywgNjIwNDcsIDYyMDUxLCA2MjA1NSwgNjIwNTksIAorICAgIDYyMDYzLCA2MjA2NywgNjIwNzEsIDYyMDc1LCA2MjA3OSwgNjIwODMsIDYyMDg3LCA2MjA5MSwgNjIwOTUsIDYyMDk5LCAKKyAgICA2MjEwMywgNjIxMDcsIDYyMTExLCA2MjExNSwgNjIxMTksIDYyMTIzLCA2MjEyNywgNjIxMzEsIDYyMTM1LCA2MjEzOSwgCisgICAgNjIxNDMsIDYyMTQ3LCA2MjE1MSwgNjIxNTUsIDYyMTU5LCA2MjE2MywgNjIxNjcsIDYyMTcyLCA2MjE3NywgNjIxODIsIAorICAgIDYyMTg3LCA2MjE5MSwgNjIxOTYsIDYyMjAxLCA2MjIwNiwgNjIyMTEsIDYyMjE2LCA2MjIyMSwgNjIyMjYsIDYyMjMxLCAKKyAgICA2MjIzNiwgNjIyNDAsIDYyMjQ3LCA2MjI1NCwgNjIyNjEsIDYyMjY4LCA2MjI3NSwgNjIyODIsIDYyMjg5LCA2MjI5NiwgCisgICAgNjIzMDMsIDYyMzEwLCA2MjMxNywgNjIzMjQsIDYyMzI3LCA2MjMzMCwgNjIzMzMsIDYyMzM4LCA2MjM0MSwgNjIzNDQsIAorICAgIDYyMzQ3LCA2MjM1MCwgNjIzNTMsIDYyMzU2LCA2MjM2MCwgNjIzNjQsIDYyMzY4LCA2MjM3MiwgNjIzNzUsIDYyMzc5LCAKKyAgICA2MjM4MywgNjIzODcsIDYyMzkxLCA2MjM5NSwgNjIzOTksIDYyNDAzLCA2MjQwNywgNjI0MTAsIDYyNDEzLCA2MjQxNywgCisgICAgNjI0MjEsIDYyNDI1LCA2MjQyOSwgNjI0MzIsIDYyNDM2LCA2MjQ0MCwgNjI0NDQsIDYyNDQ4LCA2MjQ1MSwgNjI0NTUsIAorICAgIDYyNDU5LCA2MjQ2MywgNjI0NjcsIDYyNDcwLCA2MjQ3NCwgNjI0NzgsIDYyNDgxLCA2MjQ4NSwgNjI0ODksIDYyNDkzLCAKKyAgICA2MjQ5NywgNjI1MDEsIDYyNTA1LCA2MjUwOSwgMCwgNjI1MTMsIDYyNTE2LCA2MjUxOSwgNjI1MjIsIDYyNTI1LCA2MjUyOCwgCisgICAgNjI1MzEsIDYyNTM0LCA2MjUzNywgNjI1NDAsIDYyNTQzLCA2MjU0NiwgNjI1NDksIDYyNTUyLCA2MjU1NSwgNjI1NTgsIAorICAgIDYyNTYxLCA2MjU2NCwgNjI1NjcsIDYyNTcwLCA2MjU3MywgNjI1NzYsIDYyNTc5LCA2MjU4MiwgNjI1ODUsIDYyNTg4LCAKKyAgICA2MjU5MSwgNjI1OTQsIDYyNTk3LCA2MjYwMCwgNjI2MDMsIDYyNjA2LCA2MjYwOSwgNjI2MTIsIDYyNjE1LCA2MjYxOCwgCisgICAgNjI2MjEsIDYyNjI0LCA2MjYyNywgNjI2MzAsIDYyNjMzLCA2MjYzNiwgNjI2MzksIDYyNjQyLCA2MjY0NSwgNjI2NDgsIAorICAgIDYyNjUxLCA2MjY1NCwgNjI2NTcsIDYyNjYwLCA2MjY2MywgNjI2NjYsIDYyNjY5LCA2MjY3MiwgNjI2NzUsIDYyNjc4LCAKKyAgICA2MjY4MSwgNjI2ODQsIDYyNjg3LCA2MjY5MCwgNjI2OTMsIDYyNjk2LCA2MjY5OSwgNjI3MDIsIDYyNzA1LCA2MjcwOCwgCisgICAgNjI3MTEsIDYyNzE0LCA2MjcxNywgNjI3MjAsIDYyNzIzLCA2MjcyNiwgNjI3MjksIDYyNzMyLCA2MjczNSwgNjI3MzgsIAorICAgIDYyNzQxLCA2Mjc0NCwgNjI3NDcsIDYyNzUwLCA2Mjc1MywgNjI3NTYsIDYyNzU5LCA2Mjc2MiwgNjI3NjUsIDYyNzY4LCAKKyAgICA2Mjc3MSwgNjI3NzQsIDYyNzc3LCA2Mjc4NiwgNjI3OTQsIDYyODAyLCA2MjgxMCwgNjI4MTgsIDYyODI2LCA2MjgzNCwgCisgICAgNjI4NDIsIDYyODUwLCA2Mjg1OCwgNjI4NjcsIDYyODc2LCA2Mjg4NSwgNjI4OTQsIDYyOTAzLCA2MjkxMiwgNjI5MjEsIAorICAgIDYyOTMwLCA2MjkzOSwgNjI5NDgsIDYyOTU3LCA2Mjk2NiwgNjI5NzUsIDYyOTg0LCA2Mjk5MywgNjI5OTYsIDYyOTk5LCAKKyAgICA2MzAwMiwgNjMwMDQsIDYzMDA3LCA2MzAxMCwgNjMwMTMsIDYzMDE4LCA2MzAyMywgNjMwMjYsIDYzMDMzLCA2MzA0MCwgCisgICAgNjMwNDcsIDYzMDU0LCA2MzA1NywgNjMwNjIsIDYzMDY0LCA2MzA2OCwgNjMwNzAsIDYzMDcyLCA2MzA3NSwgNjMwNzgsIAorICAgIDYzMDgxLCA2MzA4NCwgNjMwODcsIDYzMDkwLCA2MzA5MywgNjMwOTgsIDYzMTAzLCA2MzEwNiwgNjMxMDksIDYzMTEyLCAKKyAgICA2MzExNSwgNjMxMTgsIDYzMTIxLCA2MzEyNCwgNjMxMjgsIDYzMTMxLCA2MzEzNCwgNjMxMzcsIDYzMTQwLCA2MzE0MywgCisgICAgNjMxNDcsIDYzMTUwLCA2MzE1MywgNjMxNTYsIDYzMTYxLCA2MzE2NiwgNjMxNzEsIDYzMTc2LCA2MzE4MSwgNjMxODYsIAorICAgIDYzMTkxLCA2MzE5NiwgNjMyMDIsIDYzMjEwLCA2MzIxMiwgNjMyMTUsIDYzMjE4LCA2MzIyMSwgNjMyMjQsIDYzMjMwLCAKKyAgICA2MzIzOCwgNjMyNDEsIDYzMjQ0LCA2MzI0OSwgNjMyNTIsIDYzMjU1LCA2MzI1OCwgNjMyNjMsIDYzMjY2LCA2MzI2OSwgCisgICAgNjMyNzQsIDYzMjc3LCA2MzI4MCwgNjMyODUsIDYzMjg4LCA2MzI5MSwgNjMyOTYsIDYzMzAxLCA2MzMwNiwgNjMzMDksIAorICAgIDYzMzEyLCA2MzMxNSwgNjMzMTgsIDYzMzI0LCA2MzMyNywgNjMzMzAsIDYzMzMzLCA2MzMzNSwgNjMzMzgsIDYzMzQxLCAKKyAgICA2MzM0NCwgNjMzNDksIDYzMzUyLCA2MzM1NSwgNjMzNTgsIDYzMzYxLCA2MzM2NCwgNjMzNjksIDYzMzcyLCA2MzM3NSwgCisgICAgNjMzNzgsIDYzMzgxLCA2MzM4NCwgNjMzODcsIDYzMzkwLCA2MzM5MywgNjMzOTYsIDYzNDAxLCA2MzQwNSwgNjM0MTMsIAorICAgIDYzNDIxLCA2MzQyOSwgNjM0MzcsIDYzNDQ1LCA2MzQ1MywgNjM0NjEsIDYzNDY5LCA2MzQ3NywgNjM0ODYsIDYzNDk1LCAKKyAgICA2MzUwNCwgNjM1MTMsIDYzNTIyLCA2MzUzMSwgNjM1NDAsIDYzNTQ5LCA2MzU1OCwgNjM1NjcsIDYzNTc2LCA2MzU4NSwgCisgICAgNjM1OTQsIDYzNjAzLCA2MzYxMiwgNjM2MjEsIDYzNjMwLCA2MzYzOSwgNjM2NDgsIDYzNjU3LCA2MzY2NiwgNjM2NzUsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYzNjc4LCA2MzY4NywgNjM2OTYsIDYzNzA3LCAKKyAgICA2MzcxNCwgNjM3MTksIDYzNzI0LCA2MzczMSwgNjM3MzgsIDYzNzQ0LCA2Mzc0OSwgNjM3NTQsIDYzNzU5LCA2Mzc2NCwgCisgICAgNjM3NzEsIDYzNzc2LCA2Mzc4MSwgNjM3ODYsIDYzNzk3LCA2MzgwMiwgNjM4MDcsIDYzODE0LCA2MzgxOSwgNjM4MjYsIAorICAgIDYzODMxLCA2MzgzNiwgNjM4NDMsIDYzODUwLCA2Mzg1NywgNjM4NjYsIDYzODc1LCA2Mzg4MCwgNjM4ODUsIDYzODkwLCAKKyAgICA2Mzg5NywgNjM5MDIsIDYzOTEyLCA2MzkxOSwgNjM5MjQsIDYzOTI5LCA2MzkzNCwgNjM5MzksIDYzOTQ0LCA2Mzk0OSwgCisgICAgNjM5NTgsIDYzOTY1LCA2Mzk3MiwgNjM5NzcsIDYzOTg0LCA2Mzk4OSwgNjM5OTYsIDY0MDA1LCA2NDAxNiwgNjQwMjEsIAorICAgIDY0MDMwLCA2NDAzNSwgNjQwNDIsIDY0MDUxLCA2NDA2MCwgNjQwNjUsIDY0MDcwLCA2NDA3NywgNjQwODMsIDY0MDkwLCAKKyAgICA2NDA5NywgNjQxMDEsIDY0MTA1LCA2NDEwOCwgNjQxMTIsIDY0MTE2LCA2NDEyMCwgNjQxMjQsIDY0MTI4LCA2NDEzMiwgCisgICAgNjQxMzYsIDY0MTM5LCA2NDE0MywgNjQxNDcsIDY0MTUxLCA2NDE1NSwgNjQxNTksIDY0MTYzLCA2NDE2NiwgNjQxNzAsIAorICAgIDY0MTc0LCA2NDE3NywgNjQxODEsIDY0MTg1LCA2NDE4OSwgNjQxOTMsIDY0MTk3LCA2NDIwMSwgNjQyMDUsIDY0MjA5LCAKKyAgICA2NDIxMywgNjQyMTcsIDY0MjIxLCA2NDIyNSwgNjQyMjksIDY0MjMzLCA2NDIzNywgNjQyNDEsIDY0MjQ1LCA2NDI0OSwgCisgICAgNjQyNTMsIDY0MjU3LCA2NDI2MSwgNjQyNjUsIDY0MjY5LCA2NDI3MywgNjQyNzcsIDY0MjgxLCA2NDI4NSwgNjQyODksIAorICAgIDY0MjkzLCA2NDI5NywgNjQzMDEsIDY0MzA1LCA2NDMwOSwgNjQzMTMsIDY0MzE3LCA2NDMyMSwgNjQzMjUsIDY0MzI5LCAKKyAgICA2NDMzMywgNjQzMzcsIDY0MzQxLCA2NDM0NSwgNjQzNDksIDY0MzUzLCA2NDM1NiwgNjQzNjAsIDY0MzY0LCA2NDM2OCwgCisgICAgNjQzNzIsIDY0Mzc2LCA2NDM4MCwgNjQzODQsIDY0Mzg4LCA2NDM5MiwgNjQzOTYsIDY0NDAwLCA2NDQwNCwgNjQ0MDgsIAorICAgIDY0NDEyLCA2NDQxNiwgNjQ0MjAsIDY0NDI0LCA2NDQyOCwgNjQ0MzIsIDY0NDM2LCA2NDQ0MCwgNjQ0NDQsIDY0NDQ4LCAKKyAgICA2NDQ1MiwgNjQ0NTYsIDY0NDYwLCA2NDQ2NCwgNjQ0NjgsIDY0NDcyLCA2NDQ3NiwgNjQ0ODAsIDY0NDg0LCA2NDQ4OCwgCisgICAgNjQ0OTIsIDY0NDk2LCA2NDUwMCwgNjQ1MDQsIDY0NTA4LCA2NDUxMiwgNjQ1MTYsIDY0NTIwLCA2NDUyNCwgNjQ1MjgsIAorICAgIDY0NTMyLCA2NDUzNiwgNjQ1NDAsIDY0NTQ0LCA2NDU0OCwgNjQ1NTIsIDY0NTU2LCA2NDU2MCwgNjQ1NjQsIDY0NTY4LCAKKyAgICA2NDU3MiwgNjQ1NzYsIDY0NTgwLCA2NDU4NCwgNjQ1ODgsIDY0NTkyLCA2NDU5NiwgNjQ2MDAsIDY0NjA0LCA2NDYwOCwgCisgICAgNjQ2MTIsIDY0NjE2LCA2NDYyMCwgNjQ2MjQsIDY0NjI4LCA2NDYzMiwgNjQ2MzYsIDY0NjQwLCA2NDY0NCwgNjQ2NDgsIAorICAgIDY0NjUyLCA2NDY1NiwgNjQ2NjAsIDY0NjY0LCA2NDY2OCwgNjQ2NzIsIDY0Njc2LCA2NDY4MCwgNjQ2ODQsIDY0Njg4LCAKKyAgICA2NDY5MiwgNjQ2OTYsIDY0NzAwLCA2NDcwNCwgNjQ3MDgsIDY0NzEyLCA2NDcxNiwgNjQ3MjAsIDY0NzI0LCA2NDcyOCwgCisgICAgNjQ3MzIsIDY0NzM2LCA2NDc0MCwgNjQ3NDQsIDY0NzQ4LCA2NDc1MiwgNjQ3NTYsIDY0NzYwLCA2NDc2NCwgNjQ3NjgsIAorICAgIDY0NzcyLCA2NDc3NiwgNjQ3ODAsIDY0Nzg0LCA2NDc4OCwgNjQ3OTIsIDY0Nzk2LCA2NDgwMCwgNjQ4MDQsIDY0ODA4LCAKKyAgICA2NDgxMiwgNjQ4MTYsIDY0ODIwLCA2NDgyNCwgNjQ4MjcsIDY0ODMxLCA2NDgzNSwgNjQ4MzksIDY0ODQzLCA2NDg0NywgCisgICAgNjQ4NTEsIDY0ODU1LCA2NDg1OSwgNjQ4NjMsIDY0ODY3LCA2NDg3MSwgNjQ4NzUsIDY0ODc5LCA2NDg4MywgNjQ4ODcsIAorICAgIDY0ODkxLCA2NDg5NSwgNjQ4OTksIDY0OTAzLCA2NDkwNywgNjQ5MTEsIDY0OTE1LCA2NDkxOSwgNjQ5MjMsIDY0OTI3LCAKKyAgICA2NDkzMSwgNjQ5MzUsIDY0OTM5LCA2NDk0MywgNjQ5NDcsIDY0OTUxLCA2NDk1NSwgNjQ5NTksIDY0OTYzLCA2NDk2NywgCisgICAgNjQ5NzEsIDY0OTc1LCA2NDk3OSwgNjQ5ODMsIDY0OTg3LCA2NDk5MSwgNjQ5OTUsIDY0OTk5LCA2NTAwMywgNjUwMDcsIAorICAgIDY1MDExLCA2NTAxNSwgNjUwMTksIDY1MDIzLCA2NTAyNywgNjUwMzEsIDY1MDM1LCA2NTAzOSwgNjUwNDMsIDY1MDQ3LCAKKyAgICA2NTA1MSwgNjUwNTUsIDY1MDU5LCA2NTA2MywgNjUwNjcsIDY1MDcxLCA2NTA3NSwgNjUwNzksIDY1MDgzLCA2NTA4NywgCisgICAgNjUwOTEsIDY1MDk1LCA2NTA5OSwgNjUxMDMsIDY1MTA3LCA2NTExMSwgNjUxMTUsIDY1MTE5LCA2NTEyMywgNjUxMjcsIAorICAgIDY1MTMxLCA2NTEzNSwgNjUxMzksIDY1MTQzLCA2NTE0NywgNjUxNTEsIDY1MTU1LCA2NTE1OSwgNjUxNjMsIDY1MTY3LCAKKyAgICA2NTE3MSwgNjUxNzUsIDY1MTc5LCA2NTE4MywgNjUxODcsIDY1MTkxLCA2NTE5NSwgNjUxOTksIDY1MjAzLCA2NTIwNywgCisgICAgNjUyMTEsIDY1MjE1LCA2NTIxOSwgNjUyMjMsIDY1MjI3LCA2NTIzMSwgNjUyMzUsIDY1MjM5LCA2NTI0MywgNjUyNDcsIAorICAgIDY1MjUxLCA2NTI1NSwgNjUyNTksIDY1MjYzLCA2NTI2NywgNjUyNzEsIDY1Mjc1LCA2NTI3OSwgNjUyODMsIDY1Mjg3LCAKKyAgICA2NTI5MCwgNjUyOTQsIDY1Mjk4LCA2NTMwMiwgNjUzMDYsIDY1MzEwLCA2NTMxNCwgNjUzMTgsIDY1MzIyLCA2NTMyNiwgCisgICAgNjUzMzAsIDY1MzM0LCA2NTMzOCwgNjUzNDIsIDY1MzQ2LCA2NTM1MCwgNjUzNTQsIDY1MzU4LCA2NTM2MiwgNjUzNjYsIAorICAgIDY1MzcwLCA2NTM3NCwgNjUzNzgsIDY1MzgyLCA2NTM4NiwgNjUzOTAsIDY1Mzk0LCA2NTM5OCwgNjU0MDIsIDY1NDA2LCAKKyAgICA2NTQxMCwgNjU0MTQsIDY1NDE4LCA2NTQyMiwgNjU0MjYsIDY1NDMwLCA2NTQzNCwgNjU0MzgsIDY1NDQyLCA2NTQ0NiwgCisgICAgNjU0NTAsIDY1NDU0LCA2NTQ1OCwgNjU0NjIsIDY1NDY2LCA2NTQ3MCwgNjU0NzQsIDY1NDc4LCA2NTQ4MiwgNjU0ODYsIAorICAgIDY1NDkwLCA2NTQ5NCwgNjU0OTgsIDY1NTAyLCA2NTUwNiwgNjU1MTAsIDY1NTE0LCA2NTUxOCwgNjU1MjIsIDY1NTI2LCAKKyAgICA2NTUzMCwgNjU1MzQsIDY1NTM4LCA2NTU0MiwgNjU1NDYsIDY1NTUwLCA2NTU1NCwgNjU1NTgsIDY1NTYyLCA2NTU2NiwgCisgICAgNjU1NzAsIDY1NTc0LCA2NTU3OCwgNjU1ODIsIDY1NTg2LCA2NTU5MCwgNjU1OTQsIDY1NTk4LCA2NTYwMiwgNjU2MDYsIAorICAgIDY1NjEwLCA2NTYxNCwgNjU2MTgsIDY1NjIyLCA2NTYyNiwgNjU2MzAsIDY1NjM0LCA2NTYzOCwgNjU2NDIsIDY1NjQ2LCAKKyAgICA2NTY0OSwgNjU2NTMsIDY1NjU3LCA2NTY2MSwgNjU2NjUsIDY1NjY5LCA2NTY3MywgNjU2NzcsIDY1NjgxLCA2NTY4NSwgCisgICAgNjU2ODksIDY1NjkzLCA2NTY5NywgNjU3MDEsIDY1NzA1LCA2NTcwOSwgNjU3MTMsIDY1NzE3LCA2NTcyMSwgNjU3MjUsIAorICAgIDY1NzI5LCA2NTczMywgNjU3MzcsIDY1NzQxLCA2NTc0NSwgNjU3NDksIDY1NzUzLCA2NTc1NywgNjU3NjEsIDY1NzY1LCAKKyAgICA2NTc2OSwgNjU3NzMsIDY1Nzc3LCA2NTc4MSwgNjU3ODUsIDY1Nzg5LCA2NTc5MywgNjU3OTcsIDY1ODAxLCA2NTgwNSwgCisgICAgNjU4MDksIDY1ODEzLCA2NTgxNywgNjU4MjEsIDY1ODI1LCA2NTgyOSwgNjU4MzMsIDY1ODM3LCA2NTg0MSwgNjU4NDUsIAorICAgIDY1ODQ5LCA2NTg1MywgNjU4NTcsIDY1ODYxLCA2NTg2NSwgNjU4NjksIDY1ODczLCA2NTg3NywgNjU4ODEsIDY1ODg1LCAKKyAgICA2NTg4OSwgNjU4OTMsIDY1ODk3LCA2NTkwMSwgNjU5MDUsIDY1OTA5LCA2NTkxMywgNjU5MTcsIDY1OTIxLCA2NTkyNSwgCisgICAgNjU5MjksIDY1OTMzLCA2NTkzNywgNjU5NDEsIDY1OTQ1LCA2NTk0OSwgNjU5NTMsIDY1OTU3LCA2NTk2MSwgNjU5NjUsIAorICAgIDY1OTY5LCA2NTk3MywgNjU5NzcsIDY1OTgxLCA2NTk4NSwgNjU5ODksIDY1OTkzLCA2NTk5NywgNjYwMDEsIDY2MDA1LCAKKyAgICA2NjAwOSwgNjYwMTMsIDY2MDE3LCA2NjAyMSwgNjYwMjUsIDY2MDI5LCA2NjAzMywgNjYwMzcsIDY2MDQxLCA2NjA0NSwgCisgICAgNjYwNDksIDY2MDUzLCA2NjA1NywgNjYwNjEsIDY2MDY1LCA2NjA2OSwgNjYwNzMsIDY2MDc3LCA2NjA4MSwgNjYwODUsIAorICAgIDY2MDg5LCA2NjA5MywgNjYwOTcsIDY2MTAxLCA2NjEwNSwgNjYxMDksIDY2MTEzLCA2NjExNywgNjYxMjEsIDY2MTI1LCAKKyAgICA2NjEyOSwgNjYxMzMsIDY2MTM3LCA2NjE0MSwgNjYxNDQsIDY2MTQ4LCA2NjE1MiwgNjYxNTYsIDY2MTYwLCA2NjE2NCwgCisgICAgNjYxNjgsIDY2MTcyLCA2NjE3NiwgNjYxODAsIDY2MTg0LCA2NjE4OCwgNjYxOTIsIDY2MTk2LCA2NjIwMCwgNjYyMDQsIAorICAgIDY2MjA4LCA2NjIxMiwgNjYyMTYsIDY2MjIwLCA2NjIyNCwgNjYyMjgsIDY2MjMyLCA2NjIzNiwgNjYyNDAsIDY2MjQ0LCAKKyAgICA2NjI0OCwgNjYyNTIsIDY2MjU2LCA2NjI2MCwgNjYyNjQsIDY2MjY4LCA2NjI3MiwgNjYyNzYsIDY2MjgwLCA2NjI4NCwgCisgICAgNjYyODgsIDY2MjkyLCA2NjI5NiwgNjYzMDAsIDY2MzA0LCA2NjMwOCwgNjYzMTIsIDY2MzE2LCA2NjMyMCwgNjYzMjQsIAorICAgIDY2MzI4LCA2NjMzMiwgNjYzMzYsIDY2MzQwLCA2NjM0NCwgNjYzNDgsIDY2MzUyLCA2NjM1NiwgNjYzNjAsIDY2MzY0LCAKKyAgICA2NjM2OCwgNjYzNzIsIDY2Mzc2LCA2NjM4MCwgNjYzODQsIDY2Mzg4LCA2NjM5MiwgNjYzOTYsIDY2NDAwLCA2NjQwNCwgCisgICAgNjY0MDgsIDY2NDEyLCA2NjQxNiwgNjY0MjAsIDY2NDI0LCA2NjQyOCwgNjY0MzIsIDY2NDM2LCA2NjQ0MCwgNjY0NDQsIAorICAgIDY2NDQ4LCA2NjQ1MiwgNjY0NTYsIDY2NDYwLCA2NjQ2NCwgNjY0NjgsIDY2NDcyLCA2NjQ3NiwgNjY0ODAsIDY2NDg0LCAKKyAgICA2NjQ4OCwgNjY0OTIsIDY2NDk2LCA2NjUwMCwgNjY1MDQsIDY2NTA4LCA2NjUxMiwgNjY1MTYsIDY2NTIwLCA2NjUyNCwgCisgICAgNjY1MjgsIDY2NTMyLCA2NjUzNiwgNjY1NDAsIDY2NTQ0LCA2NjU0OCwgNjY1NTIsIDY2NTU2LCA2NjU2MCwgNjY1NjQsIAorICAgIDY2NTY4LCA2NjU3MiwgNjY1NzYsIDY2NTgwLCA2NjU4NCwgNjY1ODgsIDY2NTkyLCA2NjU5NiwgNjY1OTksIDY2NjAzLCAKKyAgICA2NjYwNywgNjY2MTEsIDY2NjE1LCA2NjYxOSwgNjY2MjMsIDY2NjI3LCA2NjYzMSwgNjY2MzUsIDY2NjM5LCA2NjY0MywgCisgICAgNjY2NDcsIDY2NjUxLCA2NjY1NSwgNjY2NTksIDY2NjYzLCA2NjY2NywgNjY2NzEsIDY2Njc1LCA2NjY3OSwgNjY2ODMsIAorICAgIDY2Njg3LCA2NjY5MSwgNjY2OTUsIDY2Njk5LCA2NjcwMywgNjY3MDcsIDY2NzExLCA2NjcxNSwgNjY3MTksIDY2NzIzLCAKKyAgICA2NjcyNywgNjY3MzEsIDY2NzM1LCA2NjczOSwgNjY3NDMsIDY2NzQ3LCA2Njc1MSwgNjY3NTUsIDY2NzU5LCA2Njc2MywgCisgICAgNjY3NjcsIDY2NzcxLCA2Njc3NSwgNjY3NzksIDY2NzgzLCA2Njc4NywgNjY3OTEsIDY2Nzk1LCA2Njc5OSwgNjY4MDMsIAorICAgIDY2ODA3LCA2NjgxMSwgNjY4MTUsIDY2ODE5LCA2NjgyMywgNjY4MjcsIDY2ODMxLCA2NjgzNSwgNjY4MzksIDY2ODQzLCAKKyAgICA2Njg0NywgNjY4NTEsIDY2ODU1LCA2Njg1OSwgNjY4NjMsIDY2ODY3LCA2Njg3MSwgNjY4NzUsIDY2ODc5LCA2Njg4MywgCisgICAgNjY4ODcsIDY2ODkxLCA2Njg5NSwgNjY4OTksIDY2OTAzLCA2NjkwNywgNjY5MTEsIDY2OTE1LCA2NjkxOSwgNjY5MjMsIAorICAgIDY2OTI3LCA2NjkzMSwgNjY5MzUsIDY2OTM5LCA2Njk0MywgNjY5NDcsIDY2OTUxLCA2Njk1NSwgNjY5NTksIDY2OTYzLCAKKyAgICA2Njk2NywgNjY5NzEsIDY2OTc1LCA2Njk3OSwgNjY5ODMsIDY2OTg3LCA2Njk5MSwgNjY5OTUsIDY2OTk5LCA2NzAwMywgCisgICAgNjcwMDcsIDY3MDExLCA2NzAxNSwgNjcwMTksIDY3MDIzLCA2NzAyNywgNjcwMzEsIDY3MDM1LCA2NzAzOSwgNjcwNDMsIAorICAgIDY3MDQ3LCA2NzA1MSwgNjcwNTUsIDY3MDU5LCA2NzA2MywgNjcwNjcsIDY3MDcxLCA2NzA3NSwgNjcwNzksIDY3MDgzLCAKKyAgICA2NzA4NywgNjcwOTEsIDY3MDk1LCA2NzA5OSwgNjcxMDMsIDY3MTA3LCA2NzExMSwgNjcxMTUsIDY3MTE5LCA2NzEyMywgCisgICAgNjcxMjcsIDY3MTMxLCA2NzEzNSwgNjcxMzksIDY3MTQzLCA2NzE0NywgNjcxNTEsIDY3MTU1LCA2NzE1OSwgNjcxNjMsIAorICAgIDY3MTY3LCA2NzE3MSwgNjcxNzUsIDY3MTc5LCA2NzE4MywgNjcxODcsIDY3MTkxLCA2NzE5NSwgNjcxOTksIDY3MjAyLCAKKyAgICA2NzIwNiwgNjcyMTAsIDY3MjE0LCA2NzIxOCwgNjcyMjIsIDY3MjI2LCA2NzIzMCwgNjcyMzMsIDY3MjM3LCA2NzI0MSwgCisgICAgNjcyNDUsIDY3MjQ5LCA2NzI1MywgNjcyNTcsIDY3MjYxLCA2NzI2NSwgNjcyNjksIDY3MjczLCA2NzI3NywgNjcyODEsIAorICAgIDY3Mjg1LCA2NzI4OSwgNjcyOTMsIDY3Mjk3LCA2NzMwMSwgNjczMDUsIDY3MzA5LCA2NzMxMywgNjczMTcsIDY3MzIxLCAKKyAgICA2NzMyNSwgNjczMjksIDY3MzMzLCA2NzMzNywgNjczNDEsIDY3MzQ1LCA2NzM0OSwgNjczNTMsIDY3MzU3LCA2NzM2MSwgCisgICAgNjczNjUsIDY3MzY5LCA2NzM3MywgNjczNzcsIDY3MzgxLCA2NzM4NSwgNjczODksIDY3MzkzLCA2NzM5NywgNjc0MDEsIAorICAgIDY3NDA1LCA2NzQwOSwgNjc0MTMsIDY3NDE3LCA2NzQyMSwgNjc0MjUsIDY3NDI5LCA2NzQzMywgNjc0MzcsIDY3NDQxLCAKKyAgICA2NzQ0NSwgNjc0NDksIDY3NDUzLCA2NzQ1NywgNjc0NjEsIDY3NDY1LCA2NzQ2OSwgNjc0NzMsIDY3NDc3LCA2NzQ4MSwgCisgICAgNjc0ODUsIDY3NDg5LCA2NzQ5MywgNjc0OTcsIDY3NTAxLCA2NzUwNSwgNjc1MDksIDY3NTEzLCA2NzUxNywgNjc1MjEsIAorICAgIDY3NTI1LCA2NzUyOSwgNjc1MzMsIDY3NTM3LCA2NzU0MSwgNjc1NDUsIDY3NTQ5LCA2NzU1MywgNjc1NTcsIDY3NTYxLCAKKyAgICA2NzU2NSwgNjc1NjksIDY3NTczLCA2NzU3NywgNjc1ODEsIDY3NTg1LCA2NzU4OSwgNjc1OTMsIDY3NTk3LCA2NzYwMSwgCisgICAgNjc2MDUsIDY3NjA5LCA2NzYxMywgNjc2MTcsIDY3NjIxLCA2NzYyNSwgNjc2MjksIDY3NjMzLCA2NzYzNywgNjc2NDEsIAorICAgIDY3NjQ1LCA2NzY0OSwgNjc2NTMsIDY3NjU3LCA2NzY2MSwgNjc2NjUsIDY3NjY5LCA2NzY3MywgNjc2NzcsIDY3NjgxLCAKKyAgICA2NzY4NSwgNjc2ODksIDY3NjkzLCA2NzY5NywgNjc3MDEsIDY3NzA1LCA2NzcwOSwgNjc3MTMsIDY3NzE3LCA2NzcyMSwgCisgICAgNjc3MjUsIDY3NzI5LCA2NzczMywgNjc3MzcsIDY3NzQxLCA2Nzc0NSwgNjc3NDksIDY3NzUzLCA2Nzc1NywgNjc3NjEsIAorICAgIDY3NzY1LCA2Nzc2OSwgNjc3NzMsIDY3Nzc3LCA2Nzc4MSwgNjc3ODUsIDY3Nzg5LCA2Nzc5MywgNjc3OTcsIDY3ODAxLCAKKyAgICA2NzgwNSwgNjc4MDksIDY3ODEzLCA2NzgxNywgNjc4MjEsIDY3ODI1LCA2NzgyOSwgNjc4MzMsIDY3ODM3LCA2Nzg0MSwgCisgICAgNjc4NDUsIDY3ODQ5LCA2Nzg1MywgNjc4NTcsIDY3ODYxLCA2Nzg2NSwgNjc4NjksIDY3ODczLCA2Nzg3NywgNjc4ODEsIAorICAgIDY3ODg1LCA2Nzg4OSwgNjc4OTMsIDY3ODk3LCA2NzkwMSwgNjc5MDUsIDY3OTA5LCA2NzkxMywgNjc5MTcsIDY3OTIxLCAKKyAgICA2NzkyNSwgNjc5MjksIDY3OTMzLCA2NzkzNywgNjc5NDEsIDY3OTQ1LCA2Nzk0OSwgNjc5NTMsIDY3OTU3LCA2Nzk2MCwgCisgICAgNjc5NjQsIDY3OTY4LCA2Nzk3MiwgNjc5NzYsIDY3OTgwLCA2Nzk4NCwgNjc5ODgsIDY3OTkyLCA2Nzk5NiwgNjgwMDAsIAorICAgIDY4MDA0LCA2ODAwOCwgNjgwMTIsIDY4MDE2LCA2ODAyMCwgNjgwMjQsIDY4MDI4LCA2ODAzMiwgNjgwMzYsIDY4MDQwLCAKKyAgICA2ODA0NCwgNjgwNDgsIDY4MDUyLCA2ODA1NiwgNjgwNjAsIDY4MDY0LCA2ODA2OCwgNjgwNzIsIDY4MDc2LCA2ODA4MCwgCisgICAgNjgwODQsIDY4MDg4LCA2ODA5MiwgNjgwOTYsIDY4MTAwLCA2ODEwNCwgNjgxMDgsIDY4MTEyLCA2ODExNiwgNjgxMjAsIAorICAgIDY4MTI0LCA2ODEyOCwgNjgxMzIsIDY4MTM2LCA2ODE0MCwgNjgxNDQsIDY4MTQ4LCA2ODE1MiwgNjgxNTYsIDY4MTYwLCAKKyAgICA2ODE2NCwgNjgxNjgsIDY4MTcyLCA2ODE3NiwgNjgxODAsIDY4MTg0LCA2ODE4OCwgNjgxOTIsIDY4MTk2LCA2ODIwMCwgCisgICAgNjgyMDQsIDY4MjA4LCA2ODIxMiwgNjgyMTYsIDY4MjIwLCA2ODIyNCwgNjgyMjgsIDY4MjMyLCA2ODIzNiwgNjgyNDAsIAorICAgIDY4MjQ0LCA2ODI0OCwgNjgyNTIsIDY4MjU2LCA2ODI2MCwgNjgyNjQsIDY4MjY4LCA2ODI3MiwgNjgyNzYsIDY4MjgwLCAKKyAgICA2ODI4NCwgNjgyODgsIDY4MjkyLCA2ODI5NiwgNjgzMDAsIDY4MzA0LCA2ODMwOCwgNjgzMTIsIDY4MzE2LCA2ODMyMCwgCisgICAgNjgzMjQsIDY4MzI4LCA2ODMzMiwgNjgzMzYsIDY4MzQwLCA2ODM0NCwgNjgzNDgsIDY4MzUyLCA2ODM1NiwgNjgzNjAsIAorICAgIDY4MzY0LCA2ODM2OCwgNjgzNzIsIDY4Mzc2LCA2ODM4MCwgNjgzODQsIDY4Mzg4LCA2ODM5MiwgNjgzOTYsIDY4NDAwLCAKKyAgICA2ODQwNCwgNjg0MDgsIDY4NDEyLCA2ODQxNiwgNjg0MjAsIDY4NDI0LCA2ODQyOCwgNjg0MzIsIDY4NDM2LCA2ODQ0MCwgCisgICAgNjg0NDQsIDY4NDQ4LCA2ODQ1MiwgNjg0NTYsIDY4NDYwLCA2ODQ2NCwgNjg0NjgsIDY4NDcyLCA2ODQ3NiwgNjg0ODAsIAorICAgIDY4NDg0LCA2ODQ4OCwgNjg0OTIsIDY4NDk2LCA2ODUwMCwgNjg1MDQsIDY4NTA4LCA2ODUxMiwgNjg1MTYsIDY4NTIwLCAKKyAgICA2ODUyNCwgNjg1MjgsIDY4NTMyLCA2ODUzNiwgNjg1NDAsIDY4NTQ0LCA2ODU0OCwgNjg1NTIsIDY4NTU2LCA2ODU2MCwgCisgICAgNjg1NjQsIDY4NTY4LCA2ODU3MiwgNjg1NzYsIDY4NTgwLCA2ODU4NCwgNjg1ODgsIDY4NTkyLCA2ODU5NiwgNjg2MDAsIAorICAgIDY4NjA0LCA2ODYwOCwgNjg2MTIsIDY4NjE2LCA2ODYyMCwgNjg2MjQsIDY4NjI4LCA2ODYzMiwgNjg2MzYsIDY4NjQwLCAKKyAgICA2ODY0NCwgNjg2NDgsIDY4NjUyLCA2ODY1NiwgNjg2NjAsIDY4NjY0LCA2ODY2OCwgNjg2NzIsIDY4Njc2LCA2ODY4MCwgCisgICAgNjg2ODQsIDY4Njg4LCA2ODY5MiwgNjg2OTYsIDY4NzAwLCA2ODcwNCwgNjg3MDgsIDY4NzEyLCA2ODcxNiwgNjg3MjAsIAorICAgIDY4NzI0LCA2ODcyOCwgNjg3MzIsIDY4NzM2LCA2ODc0MCwgMCwgMCwgMCwgNjg3NDQsIDY4NzQ4LCA2ODc1MiwgNjg3NTYsIAorICAgIDY4NzYwLCA2ODc2NCwgNjg3NjgsIDY4NzcyLCA2ODc3NiwgNjg3ODAsIDY4Nzg0LCA2ODc4OCwgNjg3OTIsIDY4Nzk2LCAKKyAgICA2ODgwMCwgNjg4MDQsIDY4ODA4LCA2ODgxMiwgNjg4MTYsIDY4ODIwLCA2ODgyNCwgNjg4MjgsIDY4ODMyLCA2ODgzNiwgCisgICAgNjg4NDAsIDY4ODQ0LCA2ODg0OCwgNjg4NTIsIDY4ODU2LCA2ODg2MCwgNjg4NjQsIDY4ODY4LCA2ODg3MiwgNjg4NzYsIAorICAgIDY4ODgwLCA2ODg4NCwgNjg4ODgsIDY4ODkyLCA2ODg5NiwgNjg5MDAsIDY4OTA0LCA2ODkwOCwgNjg5MTIsIDY4OTE2LCAKKyAgICA2ODkyMCwgNjg5MjQsIDY4OTI4LCA2ODkzMiwgNjg5MzYsIDY4OTQwLCA2ODk0NCwgNjg5NDgsIDY4OTUyLCA2ODk1NiwgCisgICAgNjg5NjAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDY4OTY0LCA2ODk2OSwgNjg5NzMsIDY4OTc4LCA2ODk4MywgCisgICAgNjg5ODgsIDY4OTkzLCA2ODk5OCwgNjkwMDIsIDY5MDA3LCA2OTAxMiwgNjkwMTcsIDY5MDIyLCA2OTAyNywgNjkwMzIsIAorICAgIDY5MDM3LCA2OTA0MSwgNjkwNDUsIDY5MDUwLCA2OTA1NCwgNjkwNTksIDY5MDY0LCA2OTA2OSwgNjkwNzMsIDY5MDc4LCAKKyAgICA2OTA4MywgNjkwODgsIDY5MDkzLCA2OTA5OCwgNjkxMDIsIDY5MTA3LCA2OTExMSwgNjkxMTYsIDY5MTIwLCA2OTEyNSwgCisgICAgNjkxMjksIDY5MTMzLCA2OTEzNywgNjkxNDIsIDY5MTQ3LCA2OTE1MiwgNjkxNjAsIDY5MTY4LCA2OTE3NiwgNjkxODQsIAorICAgIDY5MTkxLCA2OTE5OSwgNjkyMDUsIDY5MjEzLCA2OTIxNywgNjkyMjEsIDY5MjI1LCA2OTIyOSwgNjkyMzMsIDY5MjM3LCAKKyAgICA2OTI0MSwgNjkyNDUsIDY5MjQ5LCA2OTI1MywgNjkyNTcsIDY5MjYxLCA2OTI2NSwgNjkyNjksIDY5MjczLCA2OTI3NywgCisgICAgNjkyODEsIDY5Mjg1LCA2OTI4OSwgNjkyOTMsIDY5Mjk3LCA2OTMwMSwgNjkzMDUsIDY5MzA5LCA2OTMxMywgNjkzMTcsIAorICAgIDY5MzIxLCA2OTMyNSwgNjkzMjksIDY5MzMzLCA2OTMzNywgNjkzNDEsIDY5MzQ1LCA2OTM0OSwgNjkzNTMsIDY5MzU3LCAKKyAgICA2OTM2MCwgNjkzNjQsIDY5MzY4LCA2OTM3MiwgNjkzNzYsIDY5MzgwLCA2OTM4NCwgNjkzODgsIDY5MzkyLCA2OTM5NiwgCisgICAgNjk0MDAsIDY5NDA0LCA2OTQwOCwgNjk0MTIsIDY5NDE2LCA2OTQyMCwgNjk0MjQsIDY5NDI4LCA2OTQzMiwgNjk0MzYsIAorICAgIDY5NDQwLCA2OTQ0NCwgNjk0NDgsIDY5NDUyLCA2OTQ1NiwgNjk0NjAsIDY5NDY0LCA2OTQ2OCwgNjk0NzIsIDY5NDc2LCAKKyAgICA2OTQ4MCwgNjk0ODQsIDY5NDg4LCA2OTQ5MiwgNjk0OTYsIDY5NTAwLCA2OTUwNCwgNjk1MDcsIDY5NTExLCA2OTUxNSwgCisgICAgNjk1MTgsIDY5NTIyLCA2OTUyNiwgNjk1MzAsIDY5NTMzLCA2OTUzNywgNjk1NDEsIDY5NTQ1LCA2OTU0OSwgNjk1NTMsIAorICAgIDY5NTU3LCA2OTU2MSwgNjk1NjUsIDY5NTY5LCA2OTU3MywgNjk1NzcsIDY5NTgxLCA2OTU4NSwgNjk1ODksIDY5NTkyLCAKKyAgICA2OTU5NiwgNjk2MDAsIDY5NjAzLCA2OTYwNywgNjk2MTEsIDY5NjE1LCA2OTYxOSwgNjk2MjMsIDY5NjI3LCA2OTYzMCwgCisgICAgNjk2MzMsIDY5NjM3LCA2OTY0MSwgNjk2NDUsIDY5NjQ4LCA2OTY1MSwgNjk2NTUsIDY5NjU5LCA2OTY2MywgNjk2NjcsIAorICAgIDY5NjcxLCA2OTY3NSwgNjk2NzksIDY5NjgzLCA2OTY4NywgNjk2OTEsIDY5Njk1LCA2OTY5OSwgNjk3MDMsIDY5NzA3LCAKKyAgICA2OTcxMSwgNjk3MTUsIDY5NzE5LCA2OTcyMywgNjk3MjcsIDY5NzMxLCA2OTczNSwgNjk3MzksIDY5NzQzLCA2OTc0NywgCisgICAgNjk3NTEsIDY5NzU1LCA2OTc1OSwgNjk3NjMsIDY5NzY3LCA2OTc3MSwgNjk3NzUsIDY5Nzc5LCA2OTc4MywgNjk3ODcsIAorICAgIDY5NzkxLCA2OTc5NSwgNjk3OTksIDY5ODAyLCA2OTgwNiwgNjk4MTAsIDY5ODE0LCA2OTgxOCwgNjk4MjIsIDY5ODI2LCAKKyAgICA2OTgzMCwgNjk4MzQsIDY5ODM4LCA2OTg0MiwgNjk4NDYsIDY5ODUwLCA2OTg1NCwgNjk4NTgsIDY5ODYyLCA2OTg2NiwgCisgICAgNjk4NzAsIDY5ODc0LCA2OTg3OCwgNjk4ODIsIDY5ODg2LCA2OTg5MCwgNjk4OTQsIDY5ODk4LCA2OTkwMiwgNjk5MDYsIAorICAgIDY5OTEwLCA2OTkxNCwgNjk5MTgsIDY5OTIyLCA2OTkyNiwgNjk5MzAsIDY5OTM0LCA2OTkzOCwgNjk5NDIsIDY5OTQ2LCAKKyAgICA2OTk0OSwgNjk5NTMsIDY5OTU3LCA2OTk2MSwgNjk5NjUsIDY5OTY5LCA2OTk3MywgNjk5NzcsIDY5OTgxLCA2OTk4NSwgCisgICAgNjk5ODksIDY5OTkzLCA2OTk5NywgNzAwMDEsIDcwMDA1LCA3MDAwOSwgNzAwMTMsIDcwMDE2LCA3MDAyMCwgNzAwMjQsIAorICAgIDcwMDI4LCA3MDAzMiwgNzAwMzYsIDcwMDQwLCA3MDA0NCwgNzAwNDgsIDcwMDUyLCA3MDA1NiwgNzAwNjAsIDcwMDY0LCAKKyAgICA3MDA2OCwgNzAwNzIsIDcwMDc2LCA3MDA4MCwgNzAwODQsIDcwMDg4LCA3MDA5MiwgNzAwOTYsIDcwMTAwLCA3MDEwMywgCisgICAgNzAxMDcsIDcwMTExLCA3MDExNSwgNzAxMTksIDcwMTIzLCA3MDEyNywgNzAxMzEsIDcwMTM1LCA3MDEzOSwgNzAxNDMsIAorICAgIDcwMTQ3LCA3MDE1MSwgNzAxNTUsIDcwMTU5LCA3MDE2MywgNzAxNjcsIDcwMTcxLCA3MDE3NSwgNzAxNzksIDcwMTgzLCAKKyAgICA3MDE4NywgNzAxOTEsIDcwMTk1LCA3MDE5OSwgNzAyMDMsIDcwMjA3LCA3MDIxMSwgNzAyMTUsIDcwMjE5LCA3MDIyMywgCisgICAgNzAyMjcsIDcwMjMxLCA3MDIzNSwgNzAyMzksIDcwMjQzLCA3MDI0NywgNzAyNTEsIDcwMjU1LCA3MDI1OSwgNzAyNjMsIAorICAgIDcwMjY3LCA3MDI3MSwgNzAyNzUsIDcwMjc4LCA3MDI4MywgNzAyODcsIDcwMjkzLCA3MDI5OCwgNzAzMDQsIDcwMzA4LCAKKyAgICA3MDMxMiwgNzAzMTYsIDcwMzIwLCA3MDMyNCwgNzAzMjgsIDcwMzMyLCA3MDMzNiwgNzAzNDAsIDcwMzQ0LCA3MDM0OCwgCisgICAgNzAzNTIsIDcwMzU2LCA3MDM2MCwgNzAzNjMsIDcwMzY2LCA3MDM2OSwgNzAzNzIsIDcwMzc1LCA3MDM3OCwgNzAzODEsIAorICAgIDcwMzg0LCA3MDM4NywgNzAzOTIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDcwMzk4LCA3MDQwMywgNzA0MDgsIDcwNDEzLCA3MDQxOCwgNzA0MjUsIDcwNDMyLCA3MDQzNywgNzA0NDIsIAorICAgIDcwNDQ3LCA3MDQ1MiwgNzA0NTksIDcwNDY2LCA3MDQ3MywgNzA0ODAsIDcwNDg3LCA3MDQ5NCwgNzA1MDQsIDcwNTE0LCAKKyAgICA3MDUyMSwgNzA1MjgsIDcwNTM1LCA3MDU0MiwgNzA1NDgsIDcwNTU0LCA3MDU2MywgNzA1NzIsIDcwNTc5LCA3MDU4NiwgCisgICAgNzA1OTcsIDcwNjA4LCA3MDYxMywgNzA2MTgsIDcwNjI1LCA3MDYzMiwgNzA2MzksIDcwNjQ2LCA3MDY1MywgNzA2NjAsIAorICAgIDcwNjY3LCA3MDY3NCwgNzA2ODAsIDcwNjg2LCA3MDY5MiwgNzA2OTgsIDcwNzA1LCA3MDcxMiwgNzA3MTcsIDcwNzIxLCAKKyAgICA3MDcyOCwgNzA3MzUsIDcwNzQyLCA3MDc0NiwgNzA3NTMsIDcwNzU3LCA3MDc2MiwgNzA3NjYsIDcwNzcyLCA3MDc3NywgCisgICAgNzA3ODMsIDcwNzg4LCA3MDc5MiwgNzA3OTYsIDcwNzk5LCA3MDgwMiwgNzA4MDcsIDcwODEyLCA3MDgxNywgNzA4MjIsIAorICAgIDcwODI3LCA3MDgzMiwgNzA4MzcsIDcwODQyLCA3MDg0NywgNzA4NTIsIDcwODYxLCA3MDg3MCwgNzA4NzUsIDcwODgwLCAKKyAgICA3MDg4NSwgNzA4OTAsIDcwODk1LCA3MDkwMCwgNzA5MDUsIDcwOTEwLCA3MDkxNSwgNzA5MjAsIDcwOTI1LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA3MDkzMCwgNzA5MzYsIDcwOTM5LCA3MDk0MiwgNzA5NDUsIDcwOTQ5LCA3MDk1MywgNzA5NTcsIAorICAgIDcwOTYxLCA3MDk2NCwgNzA5NjgsIDcwOTcxLCA3MDk3NSwgNzA5NzgsIDcwOTgyLCA3MDk4NiwgNzA5OTAsIDcwOTk0LCAKKyAgICA3MDk5OCwgNzEwMDIsIDcxMDA2LCA3MTAwOSwgNzEwMTMsIDcxMDE3LCA3MTAyMSwgNzEwMjUsIDcxMDI5LCA3MTAzMywgCisgICAgNzEwMzcsIDcxMDQxLCA3MTA0NSwgNzEwNDksIDcxMDUzLCA3MTA1NywgNzEwNjEsIDcxMDY1LCA3MTA2OCwgNzEwNzIsIAorICAgIDcxMDc2LCA3MTA4MCwgNzEwODQsIDcxMDg4LCA3MTA5MiwgNzEwOTYsIDcxMTAwLCA3MTEwNCwgNzExMDgsIDcxMTEyLCAKKyAgICA3MTExNiwgNzExMjAsIDcxMTI0LCA3MTEyOCwgNzExMzIsIDcxMTM2LCA3MTE0MCwgNzExNDQsIDcxMTQ4LCA3MTE1MiwgCisgICAgNzExNTYsIDcxMTYwLCA3MTE2NCwgNzExNjcsIDcxMTcxLCA3MTE3NSwgNzExNzksIDcxMTgzLCA3MTE4NywgNzExOTEsIAorICAgIDcxMTk1LCA3MTE5OCwgNzEyMDIsIDcxMjA2LCA3MTIxMCwgNzEyMTQsIDcxMjE4LCA3MTIyMiwgNzEyMjYsIDcxMjMwLCAKKyAgICA3MTIzNCwgNzEyMzgsIDcxMjQyLCA3MTI0NiwgNzEyNTEsIDcxMjU2LCA3MTI1OSwgNzEyNjQsIDcxMjY3LCA3MTI3MCwgCisgICAgNzEyNzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcxMjc3LCA3MTI4NiwgNzEyOTUsIDcxMzA0LCA3MTMxMywgNzEzMjIsIAorICAgIDcxMzMxLCA3MTM0MCwgNzEzNDksIDcxMzU3LCA3MTM2NCwgNzEzNzIsIDcxMzc5LCA3MTM4NywgNzEzOTcsIDcxNDA2LCAKKyAgICA3MTQxNiwgNzE0MjUsIDcxNDM1LCA3MTQ0MywgNzE0NTAsIDcxNDU4LCA3MTQ2NSwgNzE0NzMsIDcxNDc4LCA3MTQ4MywgCisgICAgNzE0ODgsIDcxNDk3LCA3MTUwMywgNzE1MDksIDcxNTE2LCA3MTUyNSwgNzE1MzMsIDcxNTQxLCA3MTU0OSwgNzE1NTYsIAorICAgIDcxNTYzLCA3MTU3MCwgNzE1NzcsIDcxNTgyLCA3MTU4NywgNzE1OTIsIDcxNTk3LCA3MTYwMiwgNzE2MDcsIDcxNjEyLCAKKyAgICA3MTYxNywgNzE2MjUsIDcxNjMzLCA3MTYzOSwgNzE2NDUsIDcxNjUwLCA3MTY1NSwgNzE2NjAsIDcxNjY1LCA3MTY3MCwgCisgICAgNzE2NzUsIDcxNjgwLCA3MTY4NSwgNzE2OTMsIDcxNzAxLCA3MTcwNiwgNzE3MTEsIDcxNzIxLCA3MTczMSwgNzE3MzgsIAorICAgIDcxNzQ1LCA3MTc1NCwgNzE3NjMsIDcxNzc1LCA3MTc4NywgNzE3OTMsIDcxNzk5LCA3MTgwNywgNzE4MTUsIDcxODI1LCAKKyAgICA3MTgzNSwgNzE4NDIsIDcxODQ5LCA3MTg1NCwgNzE4NTksIDcxODcxLCA3MTg4MywgNzE4OTEsIDcxODk5LCA3MTkwOSwgCisgICAgNzE5MTksIDcxOTMxLCA3MTk0MywgNzE5NTIsIDcxOTYxLCA3MTk2OCwgNzE5NzUsIDcxOTgyLCA3MTk4OSwgNzE5OTgsIAorICAgIDcyMDA3LCA3MjAxMiwgNzIwMTcsIDcyMDI0LCA3MjAzMSwgNzIwMzgsIDcyMDQ1LCA3MjA1NywgNzIwNjksIDcyMDc0LCAKKyAgICA3MjA3OSwgNzIwODQsIDcyMDg5LCA3MjA5NCwgNzIwOTksIDcyMTA0LCA3MjEwOSwgNzIxMTMsIDcyMTE4LCA3MjEyMywgCisgICAgNzIxMjgsIDcyMTMzLCA3MjEzOCwgNzIxNDQsIDcyMTQ5LCA3MjE1NCwgNzIxNjEsIDcyMTY4LCA3MjE3NSwgNzIxODIsIAorICAgIDcyMTg5LCA3MjE5OCwgNzIyMDcsIDcyMjEzLCA3MjIxOSwgNzIyMjUsIDcyMjMxLCA3MjIzOCwgNzIyNDUsIDcyMjUyLCAKKyAgICA3MjI1OSwgNzIyNjYsIDcyMjcwLCA3MjI3NywgNzIyODIsIDcyMjg3LCA3MjI5NCwgMCwgNzIzMDcsIDcyMzE1LCA3MjMyMywgCisgICAgNzIzMzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcyMzM3LCA3MjM0NiwgNzIzNTUsIDcyMzY0LCAKKyAgICA3MjM3MywgNzIzODIsIDcyMzkxLCA3MjQwMCwgNzI0MDksIDcyNDE4LCA3MjQyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzI0MzQsIAorICAgIDcyNDQxLCA3MjQ0NywgNzI0NTQsIDcyNDYyLCA3MjQ3MCwgNzI0NzcsIDcyNDg1LCA3MjQ5MiwgNzI0OTgsIDcyNTA0LCAKKyAgICA3MjUxMSwgNzI1MTcsIDcyNTIzLCA3MjUyOSwgNzI1MzYsIDcyNTQzLCA3MjU1MCwgNzI1NTcsIDcyNTY0LCA3MjU3MSwgCisgICAgNzI1NzgsIDcyNTg1LCA3MjU5MiwgNzI1OTksIDcyNjA2LCA3MjYxMywgNzI2MjAsIDcyNjI3LCA3MjYzMywgNzI2NDAsIAorICAgIDcyNjQ3LCA3MjY1NCwgNzI2NjEsIDcyNjY4LCA3MjY3NSwgNzI2ODIsIDcyNjg5LCA3MjY5NiwgNzI3MDMsIDcyNzEwLCAKKyAgICA3MjcxNywgNzI3MjQsIDcyNzMxLCA3MjczOCwgNzI3NDUsIDcyNzUyLCA3Mjc1OSwgNzI3NjcsIDcyNzc1LCA3Mjc4MywgCisgICAgNzI3OTEsIDAsIDAsIDAsIDAsIDcyNzk5LCA3MjgwOCwgNzI4MTcsIDcyODI2LCA3MjgzNSwgNzI4NDQsIDcyODUzLCAKKyAgICA3Mjg2MCwgNzI4NjcsIDcyODc0LCAwLCAwLCAwLCAwLCAwLCAwLCA3Mjg4MSwgNzI4ODUsIDcyODkwLCA3Mjg5NSwgNzI5MDAsIAorICAgIDcyOTA1LCA3MjkxMCwgNzI5MTUsIDcyOTIwLCA3MjkyNSwgNzI5MzAsIDcyOTM1LCA3MjkzOSwgNzI5NDMsIDcyOTQ4LCAKKyAgICA3Mjk1MywgNzI5NTcsIDcyOTYyLCA3Mjk2NywgNzI5NzIsIDcyOTc3LCA3Mjk4MiwgNzI5ODcsIDcyOTkyLCA3Mjk5NiwgCisgICAgNzMwMDAsIDczMDA1LCA3MzAxMCwgNzMwMTQsIDczMDE4LCA3MzAyMiwgNzMwMjYsIDczMDMwLCA3MzAzNCwgNzMwMzgsIAorICAgIDczMDQzLCA3MzA0OCwgNzMwNTMsIDczMDU4LCA3MzA2MywgNzMwNzAsIDczMDc2LCA3MzA4MSwgNzMwODYsIDczMDkxLCAKKyAgICA3MzA5NiwgNzMxMDIsIDczMTA5LCA3MzExNSwgNzMxMjIsIDczMTI4LCA3MzEzNCwgNzMxMzksIDczMTQ2LCA3MzE1MiwgCisgICAgNzMxNTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDczMTYzLCA3MzE2NywgNzMxNzEsIDczMTc0LCA3MzE3OCwgNzMxODEsIAorICAgIDczMTg1LCA3MzE4OCwgNzMxOTIsIDczMTk2LCA3MzIwMSwgNzMyMDUsIDczMjEwLCA3MzIxMywgNzMyMTcsIDczMjIxLCAKKyAgICA3MzIyNCwgNzMyMjgsIDczMjMyLCA3MzIzNSwgNzMyMzksIDczMjQzLCA3MzI0NywgNzMyNTEsIDczMjU1LCA3MzI1OSwgCisgICAgNzMyNjMsIDczMjY3LCA3MzI3MSwgNzMyNzUsIDczMjc5LCA3MzI4MywgNzMyODcsIDczMjkxLCA3MzI5NSwgNzMyOTksIAorICAgIDczMzAzLCA3MzMwNywgNzMzMTAsIDczMzEzLCA3MzMxNywgNzMzMjEsIDczMzI1LCA3MzMyOCwgNzMzMzEsIDczMzM0LCAKKyAgICA3MzMzOCwgNzMzNDIsIDczMzQ2LCA3MzM1MCwgNzMzNTMsIDczMzU2LCA3MzM2MCwgNzMzNjUsIDczMzcwLCA3MzM3NCwgCisgICAgNzMzNzksIDczMzgzLCA3MzM4OCwgNzMzOTMsIDczMzk5LCA3MzQwNCwgNzM0MTAsIDczNDE0LCA3MzQxOSwgNzM0MjQsIAorICAgIDczNDI4LCA3MzQzMywgNzM0MzgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDczNDQyLCA3MzQ0NSwgNzM0NDksIAorICAgIDczNDUzLCA3MzQ1NiwgNzM0NTksIDczNDYyLCA3MzQ2NSwgNzM0NjgsIDczNDcxLCA3MzQ3NCwgNzM0NzcsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDczNDgwLCA3MzQ4NSwgNzM0ODksIDczNDkzLCA3MzQ5NywgNzM1MDEsIDczNTA1LCA3MzUwOSwgNzM1MTMsIAorICAgIDczNTE3LCA3MzUyMSwgNzM1MjUsIDczNTI5LCA3MzUzMywgNzM1MzcsIDczNTQxLCA3MzU0NSwgNzM1NTAsIDczNTU1LCAKKyAgICA3MzU2MSwgNzM1NjcsIDczNTc0LCA3MzU3OSwgNzM1ODQsIDczNTkwLCA3MzU5NCwgNzM1OTksIDczNjAyLCAwLCAwLCAwLCAKKyAgICAwLCA3MzYwNSwgNzM2MTIsIDczNjE4LCA3MzYyNCwgNzM2MzAsIDczNjM2LCA3MzY0MiwgNzM2NDgsIDczNjU0LCA3MzY2MCwgCisgICAgNzM2NjYsIDczNjcyLCA3MzY3OSwgNzM2ODYsIDczNjkzLCA3MzY5OSwgNzM3MDYsIDczNzEzLCA3MzcyMCwgNzM3MjcsIAorICAgIDczNzM0LCA3Mzc0MCwgNzM3NDYsIDczNzUzLCA3Mzc1OSwgNzM3NjYsIDczNzczLCA3Mzc3OSwgNzM3ODUsIDczNzkyLCAKKyAgICA3Mzc5OSwgNzM4MDYsIDczODEyLCA3MzgxOSwgNzM4MjYsIDczODMyLCA3MzgzOSwgNzM4NDUsIDczODUyLCA3Mzg1OSwgCisgICAgNzM4NjUsIDczODcxLCA3Mzg3OCwgNzM4ODQsIDczODkxLCA3Mzg5OCwgNzM5MDcsIDczOTE0LCA3MzkyMSwgNzM5MjUsIAorICAgIDczOTMwLCA3MzkzNSwgNzM5NDAsIDczOTQ1LCA3Mzk0OSwgNzM5NTMsIDczOTU4LCA3Mzk2MiwgNzM5NjcsIDczOTcyLCAKKyAgICA3Mzk3NywgNzM5ODEsIDczOTg1LCA3Mzk5MCwgNzM5OTQsIDczOTk5LCA3NDAwMywgNzQwMDgsIDc0MDEzLCA3NDAxOCwgCisgICAgNzQwMjMsIDc0MDI3LCA3NDAzMiwgNzQwMzcsIDc0MDQyLCA3NDA0OCwgNzQwNTMsIDc0MDU5LCA3NDA2NSwgNzQwNzEsIAorICAgIDc0MDc3LCA3NDA4MywgNzQwODgsIDc0MDk0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3NDA5OCwgCisgICAgNzQxMDMsIDc0MTA3LCA3NDExMSwgNzQxMTUsIDc0MTE5LCA3NDEyMywgNzQxMjcsIDc0MTMxLCA3NDEzNSwgNzQxMzksIAorICAgIDc0MTQzLCA3NDE0NywgNzQxNTEsIDc0MTU1LCA3NDE1OSwgNzQxNjMsIDc0MTY3LCA3NDE3MSwgNzQxNzUsIDc0MTc5LCAKKyAgICA3NDE4MywgNzQxODcsIDc0MTkxLCA3NDE5NSwgNzQxOTksIDc0MjAzLCA3NDIwNywgNzQyMTEsIDc0MjE1LCAwLCAwLCAwLCAKKyAgICA3NDIxOSwgNzQyMjMsIDc0MjI3LCA3NDIzMSwgNzQyMzUsIDc0MjM4LCA3NDI0NCwgNzQyNDcsIDc0MjUxLCA3NDI1NCwgCisgICAgNzQyNjAsIDc0MjY2LCA3NDI3NCwgNzQyNzcsIDc0MjgxLCA3NDI4NCwgNzQyODcsIDc0MjkzLCA3NDI5OSwgNzQzMDMsIAorICAgIDc0MzA5LCA3NDMxMywgNzQzMTcsIDc0MzIzLCA3NDMyNywgNzQzMzMsIDc0MzM5LCA3NDM0MywgNzQzNDcsIDc0MzUzLCAKKyAgICA3NDM1NywgNzQzNjMsIDc0MzY5LCA3NDM3MywgNzQzNzksIDc0MzgzLCA3NDM4OSwgNzQzOTIsIDc0Mzk1LCA3NDQwMSwgCisgICAgNzQ0MDUsIDc0NDExLCA3NDQxNCwgNzQ0MTcsIDc0NDIwLCA3NDQyNiwgNzQ0MzAsIDc0NDM0LCA3NDQ0MCwgNzQ0NDYsIAorICAgIDc0NDQ5LCA3NDQ1MiwgNzQ0NTgsIDc0NDYzLCA3NDQ2OCwgNzQ0NzMsIDc0NDgwLCA3NDQ4NSwgNzQ0OTIsIDc0NDk3LCAKKyAgICA3NDUwNCwgNzQ1MDksIDc0NTE0LCA3NDUxOSwgNzQ1MjQsIDc0NTI3LCA3NDUzMSwgNzQ1MzUsIDc0NTQwLCA3NDU0NSwgCisgICAgNzQ1NTAsIDc0NTU1LCA3NDU2MCwgNzQ1NjUsIDc0NTcwLCA3NDU3NSwgNzQ1ODIsIDc0NTg3LCAwLCA3NDU5NCwgNzQ1OTcsIAorICAgIDc0NjAxLCA3NDYwNCwgNzQ2MDcsIDc0NjEwLCA3NDYxMywgNzQ2MTYsIDc0NjE5LCA3NDYyMiwgNzQ2MjUsIDAsIDAsIDAsIAorICAgIDAsIDc0NjI4LCA3NDYzNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzQ2NDAsIDc0NjQzLCA3NDY0NiwgNzQ2NDksIDc0NjUyLCAKKyAgICA3NDY1NiwgNzQ2NTksIDc0NjYyLCA3NDY2NiwgNzQ2NzAsIDc0Njc0LCA3NDY3OCwgNzQ2ODIsIDc0Njg2LCA3NDY5MCwgCisgICAgNzQ2OTQsIDc0Njk4LCA3NDcwMiwgNzQ3MDYsIDc0NzEwLCA3NDcxNCwgNzQ3MTgsIDc0NzIyLCA3NDcyNiwgNzQ3MzAsIAorICAgIDc0NzMzLCA3NDczNywgNzQ3NDAsIDc0NzQ0LCA3NDc0OCwgNzQ3NTIsIDc0NzU2LCA3NDc2MCwgNzQ3NjMsIDc0NzY3LCAKKyAgICA3NDc3MCwgNzQ3NzMsIDc0Nzc3LCA3NDc4MSwgNzQ3ODUsIDc0Nzg4LCA3NDc5MSwgNzQ3OTYsIDc0ODAwLCA3NDgwNSwgCisgICAgNzQ4MTAsIDc0ODE0LCA3NDgxOSwgNzQ4MjMsIDc0ODI4LCA3NDgzMywgNzQ4MzgsIDc0ODQyLCA3NDg0NiwgNzQ4NTEsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc0ODU2LCA3NDg2MSwgNzQ4NjYsIDc0ODcxLCA3NDg3NywgNzQ4ODIsIDc0ODg3LCAKKyAgICA3NDg5MiwgNzQ4OTcsIDc0OTAyLCA3NDkwNiwgNzQ5MTAsIDc0OTE1LCA3NDkyMCwgMCwgMCwgNzQ5MjYsIDc0OTMwLCAKKyAgICA3NDkzMywgNzQ5MzYsIDc0OTM5LCA3NDk0MiwgNzQ5NDUsIDc0OTQ4LCA3NDk1MSwgNzQ5NTQsIDAsIDAsIDc0OTU3LCAKKyAgICA3NDk2MiwgNzQ5NjcsIDc0OTczLCA3NDk4MCwgNzQ5ODYsIDc0OTkyLCA3NDk5OCwgNzUwMDQsIDc1MDEwLCA3NTAxNiwgCisgICAgNzUwMjIsIDc1MDI4LCA3NTAzNCwgNzUwNDAsIDc1MDQ2LCA3NTA1MSwgNzUwNTYsIDc1MDYxLCA3NTA2NywgNzUwNzMsIAorICAgIDc1MDgwLCA3NTA4NiwgNzUwOTIsIDc1MDk3LCA3NTEwNCwgNzUxMTEsIDc1MTE4LCA3NTEyNCwgNzUxMjksIDc1MTM0LCAKKyAgICA3NTEzOSwgMCwgMCwgMCwgMCwgNzUxNDcsIDc1MTUzLCA3NTE1OSwgNzUxNjUsIDc1MTcxLCA3NTE3NywgNzUxODMsIAorICAgIDc1MTg5LCA3NTE5NSwgNzUyMDEsIDc1MjA3LCA3NTIxMywgNzUyMTksIDc1MjI1LCA3NTIzMSwgNzUyMzcsIDc1MjQzLCAKKyAgICA3NTI0OSwgNzUyNTUsIDc1MjYxLCA3NTI2NywgNzUyNzIsIDc1Mjc3LCA3NTI4MywgNzUyODksIDc1Mjk1LCA3NTMwMSwgCisgICAgNzUzMDcsIDc1MzEzLCA3NTMxOSwgNzUzMjUsIDc1MzMxLCA3NTMzNywgNzUzNDMsIDc1MzQ5LCA3NTM1NSwgNzUzNjEsIAorICAgIDc1MzY3LCA3NTM3MywgNzUzNzksIDc1Mzg1LCA3NTM5MSwgNzUzOTcsIDc1NDAzLCA3NTQwOSwgNzU0MTUsIDc1NDIxLCAKKyAgICA3NTQyNiwgNzU0MzEsIDc1NDM3LCA3NTQ0MiwgNzU0NDYsIDc1NDUxLCA3NTQ1NSwgNzU0NTksIDc1NDYzLCA3NTQ2OSwgCisgICAgNzU0NzQsIDc1NDc5LCA3NTQ4NCwgNzU0ODksIDc1NDk0LCA3NTQ5OSwgNzU1MDQsIDc1NTExLCA3NTUxOCwgNzU1MjUsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDczNzY0LCA3Mzc2NywgNzM3NzAsIDczNzczLCA3Mzc3NiwgNzM3ODAsIDczNzgzLCA3Mzc4NiwgNzM3OTAsIDczNzk0LCAKLSAgICA3Mzc5OCwgNzM4MDIsIDczODA2LCA3MzgxMCwgNzM4MTQsIDczODE4LCA3MzgyMiwgNzM4MjYsIDczODMwLCA3MzgzNCwgCi0gICAgNzM4MzgsIDczODQyLCA3Mzg0NiwgNzM4NTAsIDczODU0LCA3Mzg1NywgNzM4NjEsIDczODY0LCA3Mzg2OCwgNzM4NzIsIAotICAgIDczODc2LCA3Mzg4MCwgNzM4ODQsIDczODg3LCA3Mzg5MSwgNzM4OTQsIDczODk3LCA3MzkwMSwgNzM5MDUsIDczOTA5LCAKLSAgICA3MzkxMywgNzM5MTYsIDczOTIxLCA3MzkyNSwgNzM5MzAsIDczOTM1LCA3MzkzOSwgNzM5NDQsIDczOTQ4LCA3Mzk1MywgCi0gICAgNzM5NTgsIDczOTYzLCA3Mzk2OCwgNzM5NzMsIDczOTc5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3Mzk4NSwgCi0gICAgNzM5OTAsIDczOTk1LCA3NDAwMCwgNzQwMDcsIDc0MDEyLCA3NDAxNywgNzQwMjEsIDc0MDI2LCA3NDAzMSwgNzQwMzUsIAotICAgIDc0MDM5LCA3NDA0NCwgNzQwNTAsIDAsIDAsIDc0MDU3LCA3NDA2MSwgNzQwNjQsIDc0MDY3LCA3NDA3MCwgNzQwNzMsIAotICAgIDc0MDc2LCA3NDA3OSwgNzQwODIsIDc0MDg1LCAwLCAwLCA3NDA4OCwgNzQwOTMsIDc0MDk4LCA3NDEwNCwgNzQxMTEsIAotICAgIDc0MTE3LCA3NDEyMywgNzQxMjksIDc0MTM1LCA3NDE0MSwgNzQxNDcsIDc0MTUzLCA3NDE1OSwgNzQxNjUsIDc0MTcxLCAKLSAgICA3NDE3NywgNzQxODIsIDc0MTg4LCA3NDE5MywgNzQxOTksIDc0MjA1LCA3NDIxMiwgNzQyMTgsIDc0MjI0LCA3NDIyOSwgCi0gICAgNzQyMzYsIDc0MjQzLCA3NDI1MCwgNzQyNTYsIDc0MjYxLCA3NDI2NiwgNzQyNzEsIDAsIDAsIDAsIDAsIDc0Mjc5LCAKLSAgICA3NDI4NSwgNzQyOTEsIDc0Mjk3LCA3NDMwMywgNzQzMDksIDc0MzE1LCA3NDMyMSwgNzQzMjcsIDc0MzMzLCA3NDMzOSwgCi0gICAgNzQzNDUsIDc0MzUxLCA3NDM1NywgNzQzNjMsIDc0MzY5LCA3NDM3NSwgNzQzODEsIDc0Mzg3LCA3NDM5MywgNzQzOTksIAotICAgIDc0NDA0LCA3NDQwOSwgNzQ0MTUsIDc0NDIxLCA3NDQyNywgNzQ0MzMsIDc0NDM5LCA3NDQ0NSwgNzQ0NTEsIDc0NDU3LCAKLSAgICA3NDQ2MywgNzQ0NjksIDc0NDc1LCA3NDQ4MSwgNzQ0ODcsIDc0NDkzLCA3NDQ5OSwgNzQ1MDUsIDc0NTExLCA3NDUxNywgCi0gICAgNzQ1MjMsIDc0NTI5LCA3NDUzNSwgNzQ1NDEsIDc0NTQ3LCA3NDU1MywgNzQ1NTgsIDc0NTYzLCA3NDU2OSwgNzQ1NzQsIAotICAgIDc0NTc4LCA3NDU4MywgNzQ1ODcsIDc0NTkxLCA3NDU5NSwgNzQ2MDEsIDc0NjA2LCA3NDYxMSwgNzQ2MTYsIDc0NjIxLCAKLSAgICA3NDYyNiwgNzQ2MzEsIDc0NjM2LCA3NDY0MywgNzQ2NTAsIDc0NjU3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3NDY2NCwgNzQ2NjksIDc0Njc0LCA3NDY3OSwgCi0gICAgNzQ2ODYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc0NjkzLCA3NDY5NywgNzQ3MDEsIDc0NzA1LCA3NDcwOSwgCi0gICAgNzQ3MTMsIDAsIDAsIDc0NzE3LCA3NDcyMSwgNzQ3MjUsIDc0NzI5LCA3NDczMywgNzQ3MzcsIDAsIDAsIDc0NzQxLCAKLSAgICA3NDc0NSwgNzQ3NDksIDc0NzUzLCA3NDc1NywgNzQ3NjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc0NzY1LCAKLSAgICA3NDc2OSwgNzQ3NzMsIDc0Nzc3LCA3NDc4MSwgNzQ3ODUsIDc0Nzg5LCAwLCA3NDc5MywgNzQ3OTcsIDc0ODAxLCA3NDgwNSwgCi0gICAgNzQ4MDksIDc0ODEzLCA3NDgxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNzU1MzIsIDc1NTM3LCA3NTU0MiwgNzU1NDcsIDc1NTU0LCA3NTU2MSwgNzU1NjUsIDc1NTY5LCA3NTU3NCwgNzU1NzksIAorICAgIDc1NTg0LCA3NTU4OSwgNzU1OTQsIDc1NTk5LCA3NTYwNCwgNzU2MDksIDc1NjE0LCA3NTYyMCwgNzU2MjYsIDc1NjMyLCAKKyAgICA3NTYzOCwgNzU2NDQsIDc1NjQ4LCA3NTY1NCwgNzU2NTgsIDc1NjY0LCA3NTY3MSwgNzU2NzcsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDc1NjgxLCA3NTY4NSwgNzU2ODksIDc1NjkzLCA3NTY5NywgNzU3MDEsIDAsIDAsIDc1NzA1LCA3NTcwOSwgCisgICAgNzU3MTMsIDc1NzE3LCA3NTcyMSwgNzU3MjUsIDAsIDAsIDc1NzI5LCA3NTczMywgNzU3MzcsIDc1NzQxLCA3NTc0NSwgCisgICAgNzU3NDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc1NzUzLCA3NTc1NywgNzU3NjEsIDc1NzY1LCA3NTc2OSwgCisgICAgNzU3NzMsIDc1Nzc3LCAwLCA3NTc4MSwgNzU3ODUsIDc1Nzg5LCA3NTc5MywgNzU3OTcsIDc1ODAxLCA3NTgwNSwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzQ4MjEsIDc0ODI4LCA3NDgzNSwgNzQ4NDIsIDc0ODQ5LCA3NDg1NSwgNzQ4NjEsIAotICAgIDc0ODY4LCA3NDg3NSwgNzQ4ODIsIDc0ODg5LCA3NDg5NiwgNzQ5MDMsIDc0OTEwLCA3NDkxNywgNzQ5MjQsIDc0OTMwLCAKLSAgICA3NDkzNywgNzQ5NDQsIDc0OTUxLCA3NDk1OCwgNzQ5NjUsIDc0OTcyLCA3NDk3OSwgNzQ5ODYsIDc0OTkzLCA3NTAwMCwgCi0gICAgNzUwMDcsIDc1MDE2LCA3NTAyNSwgNzUwMzQsIDc1MDQzLCA3NTA1MiwgNzUwNjEsIDc1MDcwLCA3NTA3OSwgNzUwODcsIAotICAgIDc1MDk1LCA3NTEwMywgNzUxMTEsIDc1MTE5LCA3NTEyNywgNzUxMzUsIDc1MTQzLCA3NTE0OSwgNzUxNTcsIDAsIDAsIAotICAgIDc1MTY1LCA3NTE3MiwgNzUxNzgsIDc1MTg0LCA3NTE5MCwgNzUxOTYsIDc1MjAyLCA3NTIwOCwgNzUyMTQsIDc1MjIwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA3NTgwOSwgNzU4MTQsIDc1ODE5LCA3NTgyNCwgNzU4MjksIDc1ODMzLCA3NTgzNywgNzU4NDIsIDc1ODQ3LCA3NTg1MiwgCisgICAgNzU4NTcsIDc1ODYyLCA3NTg2NywgNzU4NzIsIDc1ODc3LCA3NTg4MiwgNzU4ODYsIDc1ODkxLCA3NTg5NiwgNzU5MDEsIAorICAgIDc1OTA2LCA3NTkxMSwgNzU5MTYsIDc1OTIxLCA3NTkyNiwgNzU5MzEsIDc1OTM2LCA3NTk0MSwgNzU5NDgsIDc1OTU1LCAKKyAgICA3NTk2MiwgNzU5NjksIDc1OTc2LCA3NTk4MywgNzU5OTAsIDc1OTk3LCA3NjAwMywgNzYwMDksIDc2MDE1LCA3NjAyMSwgCisgICAgNzYwMjcsIDc2MDMzLCA3NjAzOSwgNzYwNDUsIDc2MDQ5LCA3NjA1NSwgMCwgMCwgNzYwNjEsIDc2MDY2LCA3NjA3MCwgCisgICAgNzYwNzQsIDc2MDc4LCA3NjA4MiwgNzYwODYsIDc2MDkwLCA3NjA5NCwgNzYwOTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc2MTAyLCAKKyAgICA3NjEwNiwgNzYxMTAsIDc2MTE0LCA3NjExOCwgNzYxMjIsIDc2MTI2LCA3NjEzMCwgNzYxMzQsIDc2MTM4LCA3NjE0MiwgCisgICAgNzYxNDYsIDc2MTUwLCA3NjE1NCwgNzYxNTgsIDc2MTYyLCA3NjE2NiwgNzYxNzAsIDc2MTc0LCA3NjE3OCwgNzYxODIsIAorICAgIDc2MTg2LCA3NjE5MCwgMCwgMCwgMCwgMCwgNzYxOTQsIDc2MTk4LCA3NjIwMiwgNzYyMDYsIDc2MjEwLCA3NjIxNCwgCisgICAgNzYyMTgsIDc2MjIyLCA3NjIyNiwgNzYyMzAsIDc2MjM0LCA3NjIzOCwgNzYyNDIsIDc2MjQ2LCA3NjI1MCwgNzYyNTQsIAorICAgIDc2MjU4LCA3NjI2MiwgNzYyNjYsIDc2MjcwLCA3NjI3NCwgNzYyNzgsIDc2MjgyLCA3NjI4NiwgNzYyOTAsIDc2Mjk0LCAKKyAgICA3NjI5OCwgNzYzMDIsIDc2MzA2LCA3NjMxMCwgNzYzMTQsIDc2MzE4LCA3NjMyMiwgNzYzMjYsIDc2MzMwLCA3NjMzNCwgCisgICAgNzYzMzgsIDc2MzQyLCA3NjM0NiwgNzYzNTAsIDc2MzU0LCA3NjM1OCwgNzYzNjIsIDc2MzY2LCA3NjM3MCwgNzYzNzQsIAorICAgIDc2Mzc4LCA3NjM4MiwgNzYzODYsIDAsIDAsIDAsIDAsIDc2MzkwLCA3NjM5NCwgNzYzOTgsIDc2NDAyLCA3NjQwNiwgCisgICAgNzY0MTAsIDc2NDE0LCA3NjQxOCwgNzY0MjIsIDc2NDI2LCA3NjQzMCwgNzY0MzQsIDc2NDM4LCA3NjQ0MiwgNzY0NDYsIAorICAgIDc2NDUwLCA3NjQ1NCwgNzY0NTgsIDc2NDYyLCA3NjQ2NiwgNzY0NzAsIDc2NDc0LCA3NjQ3OCwgNzY0ODIsIDc2NDg2LCAKKyAgICA3NjQ5MCwgNzY0OTQsIDc2NDk4LCA3NjUwMiwgNzY1MDYsIDc2NTEwLCA3NjUxNCwgNzY1MTgsIDc2NTIyLCA3NjUyNiwgCisgICAgNzY1MzAsIDc2NTM0LCA3NjUzOCwgNzY1NDIsIDc2NTQ2LCA3NjU1MCwgNzY1NTQsIDc2NTU4LCA3NjU2MiwgNzY1NjYsIAorICAgIDc2NTcwLCA3NjU3NCwgNzY1NzgsIDc2NTgyLCA3NjU4NiwgNzY1OTAsIDc2NTk0LCA3NjU5OCwgNzY2MDIsIDc2NjA2LCAKKyAgICA3NjYxMCwgNzY2MTQsIDc2NjE4LCA3NjYyMiwgNzY2MjYsIDc2NjMwLCA3NjYzNCwgNzY2MzgsIDc2NjQyLCA3NjY0NiwgCisgICAgNzY2NTAsIDc2NjU0LCA3NjY1OCwgNzY2NjIsIDc2NjY2LCA3NjY3MCwgNzY2NzQsIDc2Njc4LCA3NjY4MiwgNzY2ODYsIAorICAgIDc2NjkwLCA3NjY5NCwgNzY2OTgsIDc2NzAyLCA3NjcwNiwgNzY3MTAsIDc2NzE0LCA3NjcxOCwgNzY3MjIsIDc2NzI2LCAKKyAgICA3NjczMCwgNzY3MzQsIDc2NzM4LCA3Njc0MiwgNzY3NDYsIDc2NzUwLCA3Njc1NCwgNzY3NTgsIDc2NzYyLCA3Njc2NiwgCisgICAgNzY3NzAsIDc2Nzc0LCA3Njc3OCwgNzY3ODIsIDc2Nzg2LCA3Njc5MCwgNzY3OTQsIDc2Nzk4LCA3NjgwMiwgNzY4MDYsIAorICAgIDc2ODEwLCA3NjgxNCwgNzY4MTgsIDc2ODIyLCA3NjgyNiwgNzY4MzAsIDc2ODM0LCA3NjgzOCwgNzY4NDIsIDc2ODQ2LCAKKyAgICA3Njg1MCwgNzY4NTQsIDc2ODU4LCA3Njg2MiwgNzY4NjYsIDc2ODcwLCA3Njg3NCwgNzY4NzgsIDc2ODgyLCA3Njg4NiwgCisgICAgNzY4OTAsIDc2ODk0LCA3Njg5OCwgNzY5MDIsIDc2OTA2LCA3NjkxMCwgNzY5MTQsIDc2OTE4LCA3NjkyMiwgNzY5MjYsIAorICAgIDc2OTMwLCA3NjkzNCwgNzY5MzgsIDc2OTQyLCA3Njk0NiwgNzY5NTAsIDc2OTU0LCA3Njk1OCwgNzY5NjIsIDc2OTY2LCAKKyAgICA3Njk3MCwgNzY5NzQsIDc2OTc4LCA3Njk4MiwgNzY5ODYsIDc2OTkwLCA3Njk5NCwgNzY5OTgsIDc3MDAyLCA3NzAwNiwgCisgICAgNzcwMTAsIDc3MDE0LCA3NzAxOCwgNzcwMjIsIDc3MDI2LCA3NzAzMCwgNzcwMzQsIDc3MDM4LCA3NzA0MiwgNzcwNDYsIAorICAgIDc3MDUwLCA3NzA1NCwgNzcwNTgsIDc3MDYyLCA3NzA2NiwgNzcwNzAsIDc3MDc0LCA3NzA3OCwgNzcwODIsIDc3MDg2LCAKKyAgICA3NzA5MCwgNzcwOTQsIDc3MDk4LCA3NzEwMiwgNzcxMDYsIDc3MTEwLCA3NzExNCwgNzcxMTgsIDc3MTIyLCA3NzEyNiwgCisgICAgNzcxMzAsIDc3MTM0LCA3NzEzOCwgNzcxNDIsIDc3MTQ2LCA3NzE1MCwgNzcxNTQsIDc3MTU4LCA3NzE2MiwgNzcxNjYsIAorICAgIDc3MTcwLCA3NzE3NCwgNzcxNzgsIDc3MTgyLCA3NzE4NiwgNzcxOTAsIDc3MTk0LCA3NzE5OCwgNzcyMDIsIDc3MjA2LCAKKyAgICA3NzIxMCwgNzcyMTQsIDc3MjE4LCA3NzIyMiwgNzcyMjYsIDc3MjMwLCA3NzIzNCwgNzcyMzgsIDc3MjQyLCA3NzI0NiwgCisgICAgNzcyNTAsIDc3MjU0LCA3NzI1OCwgNzcyNjIsIDc3MjY2LCA3NzI3MCwgNzcyNzQsIDc3Mjc4LCA3NzI4MiwgNzcyODYsIAorICAgIDc3MjkwLCA3NzI5NCwgNzcyOTgsIDc3MzAyLCA3NzMwNiwgNzczMTAsIDc3MzE0LCA3NzMxOCwgNzczMjIsIDc3MzI2LCAKKyAgICA3NzMzMCwgNzczMzQsIDc3MzM4LCA3NzM0MiwgNzczNDYsIDc3MzUwLCA3NzM1NCwgNzczNTgsIDc3MzYyLCA3NzM2NiwgCisgICAgNzczNzAsIDc3Mzc0LCA3NzM3OCwgNzczODIsIDc3Mzg2LCA3NzM5MCwgNzczOTQsIDc3Mzk4LCA3NzQwMiwgNzc0MDYsIAorICAgIDc3NDEwLCA3NzQxNCwgNzc0MTgsIDc3NDIyLCA3NzQyNiwgNzc0MzAsIDc3NDM0LCA3NzQzOCwgNzc0NDIsIDc3NDQ2LCAKKyAgICA3NzQ1MCwgNzc0NTQsIDc3NDU4LCA3NzQ2MiwgNzc0NjYsIDc3NDcwLCA3NzQ3NCwgNzc0NzgsIDc3NDgyLCA3NzQ4NiwgCisgICAgNzc0OTAsIDc3NDk0LCA3NzQ5OCwgNzc1MDIsIDc3NTA2LCA3NzUxMCwgNzc1MTQsIDc3NTE4LCA3NzUyMiwgNzc1MjYsIAorICAgIDc3NTMwLCA3NzUzNCwgNzc1MzgsIDc3NTQyLCA3NzU0NiwgNzc1NTAsIDc3NTU0LCA3NzU1OCwgNzc1NjIsIDc3NTY2LCAKKyAgICA3NzU3MCwgNzc1NzQsIDc3NTc4LCA3NzU4MiwgNzc1ODYsIDc3NTkwLCA3NzU5NCwgNzc1OTgsIDc3NjAyLCA3NzYwNiwgCisgICAgNzc2MTAsIDc3NjE0LCA3NzYxOCwgNzc2MjIsIDc3NjI2LCA3NzYzMCwgNzc2MzQsIDc3NjM4LCA3NzY0MiwgNzc2NDYsIAorICAgIDc3NjUwLCA3NzY1NCwgNzc2NTgsIDc3NjYyLCA3NzY2NiwgNzc2NzAsIDc3Njc0LCA3NzY3OCwgNzc2ODIsIDc3Njg2LCAKKyAgICA3NzY5MCwgNzc2OTQsIDc3Njk4LCA3NzcwMiwgNzc3MDYsIDc3NzEwLCA3NzcxNCwgNzc3MTgsIDc3NzIyLCA3NzcyNiwgCisgICAgNzc3MzAsIDc3NzM0LCA3NzczOCwgNzc3NDIsIDc3NzQ2LCA3Nzc1MCwgNzc3NTQsIDc3NzU4LCA3Nzc2MiwgNzc3NjYsIAorICAgIDc3NzcwLCA3Nzc3NCwgNzc3NzgsIDc3NzgyLCA3Nzc4NiwgNzc3OTAsIDc3Nzk0LCA3Nzc5OCwgNzc4MDIsIDc3ODA2LCAKKyAgICA3NzgxMCwgNzc4MTQsIDc3ODE4LCA3NzgyMiwgNzc4MjYsIDc3ODMwLCA3NzgzNCwgNzc4MzgsIDc3ODQyLCA3Nzg0NiwgCisgICAgNzc4NTAsIDAsIDAsIDc3ODU0LCA3Nzg1OCwgNzc4NjIsIDc3ODY2LCA3Nzg3MCwgNzc4NzQsIDc3ODc4LCA3Nzg4MiwgCisgICAgNzc4ODYsIDc3ODkwLCA3Nzg5NCwgNzc4OTgsIDc3OTAyLCA3NzkwNiwgNzc5MTAsIDc3OTE0LCA3NzkxOCwgNzc5MjIsIAorICAgIDc3OTI2LCA3NzkzMCwgNzc5MzQsIDc3OTM4LCA3Nzk0MiwgNzc5NDYsIDc3OTUwLCA3Nzk1NCwgNzc5NTgsIDc3OTYyLCAKKyAgICA3Nzk2NiwgNzc5NzAsIDc3OTc0LCA3Nzk3OCwgNzc5ODIsIDc3OTg2LCA3Nzk5MCwgNzc5OTQsIDc3OTk4LCA3ODAwMiwgCisgICAgNzgwMDYsIDc4MDEwLCA3ODAxNCwgNzgwMTgsIDc4MDIyLCA3ODAyNiwgNzgwMzAsIDc4MDM0LCA3ODAzOCwgNzgwNDIsIAorICAgIDc4MDQ2LCA3ODA1MCwgNzgwNTQsIDc4MDU4LCA3ODA2MiwgNzgwNjYsIDc4MDcwLCA3ODA3NCwgNzgwNzgsIDc4MDgyLCAKKyAgICA3ODA4NiwgNzgwOTAsIDc4MDk0LCA3ODA5OCwgNzgxMDIsIDc4MTA2LCA3ODExMCwgNzgxMTQsIDc4MTE4LCA3ODEyMiwgCisgICAgNzgxMjYsIDc4MTMwLCA3ODEzNCwgNzgxMzgsIDc4MTQyLCA3ODE0NiwgNzgxNTAsIDc4MTU0LCA3ODE1OCwgNzgxNjIsIAorICAgIDc4MTY2LCA3ODE3MCwgNzgxNzQsIDc4MTc4LCA3ODE4MiwgNzgxODYsIDc4MTkwLCA3ODE5NCwgNzgxOTgsIDc4MjAyLCAKKyAgICA3ODIwNiwgNzgyMTAsIDc4MjE0LCA3ODIxOCwgNzgyMjIsIDc4MjI2LCA3ODIzMCwgNzgyMzQsIDc4MjM4LCA3ODI0MiwgCisgICAgNzgyNDYsIDc4MjUwLCA3ODI1NCwgNzgyNTgsIDc4MjYyLCA3ODI2NiwgNzgyNzAsIDc4Mjc0LCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA3NTIyNiwgNzUyMzAsIDc1MjM0LCA3NTIzOCwgNzUyNDIsIDc1MjQ2LCA3NTI1MCwgNzUyNTQsIAotICAgIDc1MjU4LCA3NTI2MiwgNzUyNjYsIDc1MjcwLCA3NTI3NCwgNzUyNzgsIDc1MjgyLCA3NTI4NiwgNzUyOTAsIDc1Mjk0LCAKLSAgICA3NTI5OCwgNzUzMDIsIDc1MzA2LCA3NTMxMCwgNzUzMTQsIDAsIDAsIDAsIDAsIDc1MzE4LCA3NTMyMiwgNzUzMjYsIAotICAgIDc1MzMwLCA3NTMzNCwgNzUzMzgsIDc1MzQyLCA3NTM0NiwgNzUzNTAsIDc1MzU0LCA3NTM1OCwgNzUzNjIsIDc1MzY2LCAKLSAgICA3NTM3MCwgNzUzNzQsIDc1Mzc4LCA3NTM4MiwgNzUzODYsIDc1MzkwLCA3NTM5NCwgNzUzOTgsIDc1NDAyLCA3NTQwNiwgCi0gICAgNzU0MTAsIDc1NDE0LCA3NTQxOCwgNzU0MjIsIDc1NDI2LCA3NTQzMCwgNzU0MzQsIDc1NDM4LCA3NTQ0MiwgNzU0NDYsIAotICAgIDc1NDUwLCA3NTQ1NCwgNzU0NTgsIDc1NDYyLCA3NTQ2NiwgNzU0NzAsIDc1NDc0LCA3NTQ3OCwgNzU0ODIsIDc1NDg2LCAKLSAgICA3NTQ5MCwgNzU0OTQsIDc1NDk4LCA3NTUwMiwgNzU1MDYsIDc1NTEwLCAwLCAwLCAwLCAwLCA3NTUxNCwgNzU1MTgsIAotICAgIDc1NTIyLCA3NTUyNiwgNzU1MzAsIDc1NTM0LCA3NTUzOCwgNzU1NDIsIDc1NTQ2LCA3NTU1MCwgNzU1NTQsIDc1NTU4LCAKLSAgICA3NTU2MiwgNzU1NjYsIDc1NTcwLCA3NTU3NCwgNzU1NzgsIDc1NTgyLCA3NTU4NiwgNzU1OTAsIDc1NTk0LCA3NTU5OCwgCi0gICAgNzU2MDIsIDc1NjA2LCA3NTYxMCwgNzU2MTQsIDc1NjE4LCA3NTYyMiwgNzU2MjYsIDc1NjMwLCA3NTYzNCwgNzU2MzgsIAotICAgIDc1NjQyLCA3NTY0NiwgNzU2NTAsIDc1NjU0LCA3NTY1OCwgNzU2NjIsIDc1NjY2LCA3NTY3MCwgNzU2NzQsIDc1Njc4LCAKLSAgICA3NTY4MiwgNzU2ODYsIDc1NjkwLCA3NTY5NCwgNzU2OTgsIDc1NzAyLCA3NTcwNiwgNzU3MTAsIDc1NzE0LCA3NTcxOCwgCi0gICAgNzU3MjIsIDc1NzI2LCA3NTczMCwgNzU3MzQsIDc1NzM4LCA3NTc0MiwgNzU3NDYsIDc1NzUwLCA3NTc1NCwgNzU3NTgsIAotICAgIDc1NzYyLCA3NTc2NiwgNzU3NzAsIDc1Nzc0LCA3NTc3OCwgNzU3ODIsIDc1Nzg2LCA3NTc5MCwgNzU3OTQsIDc1Nzk4LCAKLSAgICA3NTgwMiwgNzU4MDYsIDc1ODEwLCA3NTgxNCwgNzU4MTgsIDc1ODIyLCA3NTgyNiwgNzU4MzAsIDc1ODM0LCA3NTgzOCwgCi0gICAgNzU4NDIsIDc1ODQ2LCA3NTg1MCwgNzU4NTQsIDc1ODU4LCA3NTg2MiwgNzU4NjYsIDc1ODcwLCA3NTg3NCwgNzU4NzgsIAotICAgIDc1ODgyLCA3NTg4NiwgNzU4OTAsIDc1ODk0LCA3NTg5OCwgNzU5MDIsIDc1OTA2LCA3NTkxMCwgNzU5MTQsIDc1OTE4LCAKLSAgICA3NTkyMiwgNzU5MjYsIDc1OTMwLCA3NTkzNCwgNzU5MzgsIDc1OTQyLCA3NTk0NiwgNzU5NTAsIDc1OTU0LCA3NTk1OCwgCi0gICAgNzU5NjIsIDc1OTY2LCA3NTk3MCwgNzU5NzQsIDc1OTc4LCA3NTk4MiwgNzU5ODYsIDc1OTkwLCA3NTk5NCwgNzU5OTgsIAotICAgIDc2MDAyLCA3NjAwNiwgNzYwMTAsIDc2MDE0LCA3NjAxOCwgNzYwMjIsIDc2MDI2LCA3NjAzMCwgNzYwMzQsIDc2MDM4LCAKLSAgICA3NjA0MiwgNzYwNDYsIDc2MDUwLCA3NjA1NCwgNzYwNTgsIDc2MDYyLCA3NjA2NiwgNzYwNzAsIDc2MDc0LCA3NjA3OCwgCi0gICAgNzYwODIsIDc2MDg2LCA3NjA5MCwgNzYwOTQsIDc2MDk4LCA3NjEwMiwgNzYxMDYsIDc2MTEwLCA3NjExNCwgNzYxMTgsIAotICAgIDc2MTIyLCA3NjEyNiwgNzYxMzAsIDc2MTM0LCA3NjEzOCwgNzYxNDIsIDc2MTQ2LCA3NjE1MCwgNzYxNTQsIDc2MTU4LCAKLSAgICA3NjE2MiwgNzYxNjYsIDc2MTcwLCA3NjE3NCwgNzYxNzgsIDc2MTgyLCA3NjE4NiwgNzYxOTAsIDc2MTk0LCA3NjE5OCwgCi0gICAgNzYyMDIsIDc2MjA2LCA3NjIxMCwgNzYyMTQsIDc2MjE4LCA3NjIyMiwgNzYyMjYsIDc2MjMwLCA3NjIzNCwgNzYyMzgsIAotICAgIDc2MjQyLCA3NjI0NiwgNzYyNTAsIDc2MjU0LCA3NjI1OCwgNzYyNjIsIDc2MjY2LCA3NjI3MCwgNzYyNzQsIDc2Mjc4LCAKLSAgICA3NjI4MiwgNzYyODYsIDc2MjkwLCA3NjI5NCwgNzYyOTgsIDc2MzAyLCA3NjMwNiwgNzYzMTAsIDc2MzE0LCA3NjMxOCwgCi0gICAgNzYzMjIsIDc2MzI2LCA3NjMzMCwgNzYzMzQsIDc2MzM4LCA3NjM0MiwgNzYzNDYsIDc2MzUwLCA3NjM1NCwgNzYzNTgsIAotICAgIDc2MzYyLCA3NjM2NiwgNzYzNzAsIDc2Mzc0LCA3NjM3OCwgNzYzODIsIDc2Mzg2LCA3NjM5MCwgNzYzOTQsIDc2Mzk4LCAKLSAgICA3NjQwMiwgNzY0MDYsIDc2NDEwLCA3NjQxNCwgNzY0MTgsIDc2NDIyLCA3NjQyNiwgNzY0MzAsIDc2NDM0LCA3NjQzOCwgCi0gICAgNzY0NDIsIDc2NDQ2LCA3NjQ1MCwgNzY0NTQsIDc2NDU4LCA3NjQ2MiwgNzY0NjYsIDc2NDcwLCA3NjQ3NCwgNzY0NzgsIAotICAgIDc2NDgyLCA3NjQ4NiwgNzY0OTAsIDc2NDk0LCA3NjQ5OCwgNzY1MDIsIDc2NTA2LCA3NjUxMCwgNzY1MTQsIDc2NTE4LCAKLSAgICA3NjUyMiwgNzY1MjYsIDc2NTMwLCA3NjUzNCwgNzY1MzgsIDc2NTQyLCA3NjU0NiwgNzY1NTAsIDc2NTU0LCA3NjU1OCwgCi0gICAgNzY1NjIsIDc2NTY2LCA3NjU3MCwgNzY1NzQsIDc2NTc4LCA3NjU4MiwgNzY1ODYsIDc2NTkwLCA3NjU5NCwgNzY1OTgsIAotICAgIDc2NjAyLCA3NjYwNiwgNzY2MTAsIDc2NjE0LCA3NjYxOCwgNzY2MjIsIDc2NjI2LCA3NjYzMCwgNzY2MzQsIDc2NjM4LCAKLSAgICA3NjY0MiwgNzY2NDYsIDc2NjUwLCA3NjY1NCwgNzY2NTgsIDc2NjYyLCA3NjY2NiwgNzY2NzAsIDc2Njc0LCA3NjY3OCwgCi0gICAgNzY2ODIsIDc2Njg2LCA3NjY5MCwgNzY2OTQsIDc2Njk4LCA3NjcwMiwgNzY3MDYsIDc2NzEwLCA3NjcxNCwgNzY3MTgsIDAsIAotICAgIDAsIDc2NzIyLCA3NjcyNiwgNzY3MzAsIDc2NzM0LCA3NjczOCwgNzY3NDIsIDc2NzQ2LCA3Njc1MCwgNzY3NTQsIDc2NzU4LCAKLSAgICA3Njc2MiwgNzY3NjYsIDc2NzcwLCA3Njc3NCwgNzY3NzgsIDc2NzgyLCA3Njc4NiwgNzY3OTAsIDc2Nzk0LCA3Njc5OCwgCi0gICAgNzY4MDIsIDc2ODA2LCA3NjgxMCwgNzY4MTQsIDc2ODE4LCA3NjgyMiwgNzY4MjYsIDc2ODMwLCA3NjgzNCwgNzY4MzgsIAotICAgIDc2ODQyLCA3Njg0NiwgNzY4NTAsIDc2ODU0LCA3Njg1OCwgNzY4NjIsIDc2ODY2LCA3Njg3MCwgNzY4NzQsIDc2ODc4LCAKLSAgICA3Njg4MiwgNzY4ODYsIDc2ODkwLCA3Njg5NCwgNzY4OTgsIDc2OTAyLCA3NjkwNiwgNzY5MTAsIDc2OTE0LCA3NjkxOCwgCi0gICAgNzY5MjIsIDc2OTI2LCA3NjkzMCwgNzY5MzQsIDc2OTM4LCA3Njk0MiwgNzY5NDYsIDc2OTUwLCA3Njk1NCwgNzY5NTgsIAotICAgIDc2OTYyLCA3Njk2NiwgMCwgMCwgNzY5NzAsIDc2OTc0LCA3Njk3OCwgNzY5ODIsIDc2OTg2LCA3Njk5MCwgNzY5OTQsIAotICAgIDc2OTk4LCA3NzAwMiwgNzcwMDYsIDc3MDEwLCA3NzAxNCwgNzcwMTgsIDc3MDIyLCA3NzAyNiwgNzcwMzAsIDc3MDM0LCAKLSAgICA3NzAzOCwgNzcwNDIsIDc3MDQ2LCA3NzA1MCwgNzcwNTQsIDc3MDU4LCA3NzA2MiwgNzcwNjYsIDc3MDcwLCA3NzA3NCwgCi0gICAgNzcwNzgsIDc3MDgyLCA3NzA4NiwgNzcwOTAsIDc3MDk0LCA3NzA5OCwgNzcxMDIsIDc3MTA2LCA3NzExMCwgNzcxMTQsIAotICAgIDc3MTE4LCA3NzEyMiwgNzcxMjYsIDc3MTMwLCA3NzEzNCwgNzcxMzgsIDc3MTQyLCA3NzE0NiwgNzcxNTAsIDc3MTU0LCAKLSAgICA3NzE1OCwgNzcxNjIsIDc3MTY2LCA3NzE3MCwgNzcxNzQsIDc3MTc4LCA3NzE4MiwgNzcxODYsIDc3MTkwLCA3NzE5NCwgCi0gICAgNzcxOTgsIDc3MjAyLCA3NzIwNiwgNzcyMTAsIDc3MjE0LCA3NzIxOCwgNzcyMjIsIDc3MjI2LCA3NzIzMCwgNzcyMzQsIAotICAgIDc3MjM4LCA3NzI0MiwgNzcyNDYsIDc3MjUwLCA3NzI1NCwgNzcyNTgsIDc3MjYyLCA3NzI2NiwgNzcyNzAsIDc3Mjc0LCAKLSAgICA3NzI3OCwgNzcyODIsIDc3Mjg2LCA3NzI5MCwgNzcyOTQsIDc3Mjk4LCA3NzMwMiwgNzczMDYsIDc3MzEwLCA3NzMxNCwgCi0gICAgNzczMTgsIDc3MzIyLCA3NzMyNiwgNzczMzAsIDc3MzM0LCA3NzMzOCwgNzczNDIsIDc3MzQ2LCA3NzM1MCwgNzczNTQsIAotICAgIDc3MzU4LCA3NzM2MiwgNzczNjYsIDc3MzcwLCA3NzM3NCwgNzczNzgsIDc3MzgyLCA3NzM4NiwgNzczOTAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc4Mjc4LCA3ODI4MywgNzgyODgsIDc4MjkzLCA3ODI5OCwgNzgzMDMsIDc4MzExLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3ODMxNiwgNzgzMjMsIDc4MzMwLCA3ODMzNywgNzgzNDQsIDAsIAorICAgIDAsIDAsIDAsIDAsIDc4MzUxLCA3ODM1OCwgNzgzNjUsIDc4Mzc1LCA3ODM4MSwgNzgzODcsIDc4MzkzLCA3ODM5OSwgCisgICAgNzg0MDUsIDc4NDExLCA3ODQxOCwgNzg0MjQsIDc4NDMwLCA3ODQzNiwgNzg0NDUsIDc4NDU0LCA3ODQ2NiwgNzg0NzgsIAorICAgIDc4NDg0LCA3ODQ5MCwgNzg0OTYsIDc4NTAzLCA3ODUxMCwgNzg1MTcsIDc4NTI0LCA3ODUzMSwgMCwgNzg1MzgsIDc4NTQ1LCAKKyAgICA3ODU1MiwgNzg1NjAsIDc4NTY3LCAwLCA3ODU3NCwgMCwgNzg1ODEsIDc4NTg4LCAwLCA3ODU5NSwgNzg2MDMsIDAsIAorICAgIDc4NjEwLCA3ODYxNywgNzg2MjQsIDc4NjMxLCA3ODYzOCwgNzg2NDUsIDc4NjUyLCA3ODY1OSwgNzg2NjYsIDc4NjczLCAKKyAgICA3ODY3OCwgNzg2ODUsIDc4NjkyLCA3ODY5OCwgNzg3MDQsIDc4NzEwLCA3ODcxNiwgNzg3MjIsIDc4NzI4LCA3ODczNCwgCisgICAgNzg3NDAsIDc4NzQ2LCA3ODc1MiwgNzg3NTgsIDc4NzY0LCA3ODc3MCwgNzg3NzYsIDc4NzgyLCA3ODc4OCwgNzg3OTQsIAorICAgIDc4ODAwLCA3ODgwNiwgNzg4MTIsIDc4ODE4LCA3ODgyNCwgNzg4MzAsIDc4ODM2LCA3ODg0MiwgNzg4NDgsIDc4ODU0LCAKKyAgICA3ODg2MCwgNzg4NjYsIDc4ODcyLCA3ODg3OCwgNzg4ODQsIDc4ODkwLCA3ODg5NiwgNzg5MDIsIDc4OTA4LCA3ODkxNCwgCisgICAgNzg5MjAsIDc4OTI2LCA3ODkzMiwgNzg5MzgsIDc4OTQ0LCA3ODk1MCwgNzg5NTYsIDc4OTYyLCA3ODk2OCwgNzg5NzQsIAorICAgIDc4OTgwLCA3ODk4NiwgNzg5OTIsIDc4OTk4LCA3OTAwNCwgNzkwMTAsIDc5MDE2LCA3OTAyMiwgNzkwMjgsIDc5MDM0LCAKKyAgICA3OTA0MCwgNzkwNDYsIDc5MDUyLCA3OTA1OCwgNzkwNjQsIDc5MDcwLCA3OTA3NiwgNzkwODIsIDc5MDg4LCA3OTA5NCwgCisgICAgNzkxMDAsIDc5MTA2LCA3OTExMiwgNzkxMTgsIDc5MTI0LCA3OTEzMCwgNzkxMzYsIDc5MTQyLCA3OTE0OCwgNzkxNTYsIAorICAgIDc5MTY0LCA3OTE3MCwgNzkxNzYsIDc5MTgyLCA3OTE4OCwgNzkxOTcsIDc5MjA2LCA3OTIxNCwgNzkyMjIsIDc5MjMwLCAKKyAgICA3OTIzOCwgNzkyNDYsIDc5MjU0LCA3OTI2MiwgNzkyNzAsIDc5Mjc3LCA3OTI4NCwgNzkyOTQsIDc5MzA0LCA3OTMwOCwgCisgICAgNzkzMTIsIDc5MzE3LCA3OTMyMiwgNzkzMjcsIDc5MzMyLCA3OTM0MSwgNzkzNTAsIDc5MzU2LCA3OTM2MiwgNzkzNjksIAorICAgIDc5Mzc2LCA3OTM4MywgNzkzODcsIDc5MzkzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA3OTM5OSwgNzk0MDUsIDc5NDExLCA3OTQxNywgNzk0MjMsIDc5NDI4LCA3OTQzMywgNzk0MzksIDc5NDQ1LCAKKyAgICA3OTQ1MSwgNzk0NTcsIDc5NDY1LCA3OTQ3MSwgNzk0NzcsIDc5NDg1LCA3OTQ5MywgNzk1MDEsIDc5NTA5LCA3OTUxNCwgCisgICAgNzk1MTksIDc5NTI0LCA3OTUyOSwgNzk1NDIsIDc5NTU1LCA3OTU2NSwgNzk1NzUsIDc5NTg2LCA3OTU5NywgNzk2MDgsIAorICAgIDc5NjE5LCA3OTYyOSwgNzk2MzksIDc5NjUwLCA3OTY2MSwgNzk2NzIsIDc5NjgzLCA3OTY5MywgNzk3MDMsIDc5NzEzLCAKKyAgICA3OTcyOSwgNzk3NDUsIDc5NzYxLCA3OTc2OCwgNzk3NzUsIDc5NzgyLCA3OTc4OSwgNzk3OTksIDc5ODA5LCA3OTgxOSwgCisgICAgNzk4MzEsIDc5ODQxLCA3OTg0OSwgNzk4NTcsIDc5ODY2LCA3OTg3NCwgNzk4ODQsIDc5ODkyLCA3OTkwMCwgNzk5MDgsIAorICAgIDc5OTE3LCA3OTkyNSwgNzk5MzUsIDc5OTQzLCA3OTk1MSwgNzk5NTksIDc5OTY5LCA3OTk3NywgNzk5ODQsIDc5OTkxLCAKKyAgICA3OTk5OCwgODAwMDUsIDgwMDEzLCA4MDAyMSwgODAwMjksIDgwMDM3LCA4MDA0NSwgODAwNTQsIDgwMDYyLCA4MDA3MCwgCisgICAgODAwNzgsIDgwMDg2LCA4MDA5NCwgODAxMDMsIDgwMTExLCA4MDExOSwgODAxMjcsIDgwMTM1LCA4MDE0MywgODAxNTEsIAorICAgIDgwMTU5LCA4MDE2NywgODAxNzUsIDgwMTgzLCA4MDE5MiwgODAyMDAsIDgwMjEwLCA4MDIxOCwgODAyMjYsIDgwMjM0LCAKKyAgICA4MDI0NCwgODAyNTIsIDgwMjYwLCA4MDI2OCwgODAyNzYsIDgwMjg1LCA4MDI5NCwgODAzMDIsIDgwMzEyLCA4MDMyMCwgCisgICAgODAzMjgsIDgwMzM2LCA4MDM0NSwgODAzNTMsIDgwMzYzLCA4MDM3MSwgODAzNzgsIDgwMzg1LCA4MDM5MywgODA0MDAsIAorICAgIDgwNDA5LCA4MDQxNiwgODA0MjQsIDgwNDMyLCA4MDQ0MSwgODA0NDksIDgwNDU5LCA4MDQ2NywgODA0NzUsIDgwNDgzLCAKKyAgICA4MDQ5MywgODA1MDEsIDgwNTA4LCA4MDUxNSwgODA1MjMsIDgwNTMwLCA4MDUzOSwgODA1NDYsIDgwNTU2LCA4MDU2NiwgCisgICAgODA1NzcsIDgwNTg2LCA4MDU5NSwgODA2MDQsIDgwNjEzLCA4MDYyMiwgODA2MzIsIDgwNjQzLCA4MDY1NCwgODA2NjQsIAorICAgIDgwNjc1LCA4MDY4NywgODA2OTcsIDgwNzA2LCA4MDcxNSwgODA3MjMsIDgwNzMyLCA4MDc0MiwgODA3NTAsIDgwNzU5LCAKKyAgICA4MDc2OCwgODA3NzYsIDgwNzg1LCA4MDc5NSwgODA4MDMsIDgwODEyLCA4MDgyMSwgODA4MjksIDgwODM4LCA4MDg0OCwgCisgICAgODA4NTYsIDgwODY2LCA4MDg3NCwgODA4ODQsIDgwODkyLCA4MDkwMCwgODA5MDksIDgwOTE3LCA4MDkyNywgODA5MzUsIAorICAgIDgwOTQzLCA4MDk1MywgODA5NjEsIDgwOTY4LCA4MDk3NSwgODA5ODQsIDgwOTkzLCA4MTAwMSwgODEwMTAsIDgxMDIwLCAKKyAgICA4MTAyOCwgODEwMzksIDgxMDQ3LCA4MTA1NSwgODEwNjIsIDgxMDcwLCA4MTA3OSwgODEwODYsIDgxMDk2LCA4MTEwNiwgCisgICAgODExMTcsIDgxMTI3LCA4MTEzOCwgODExNDYsIDgxMTU0LCA4MTE2MywgODExNzEsIDgxMTgwLCA4MTE4OCwgODExOTYsIAorICAgIDgxMjA1LCA4MTIxMywgODEyMjIsIDgxMjMwLCA4MTIzNywgODEyNDQsIDgxMjUxLCA4MTI1OCwgODEyNjYsIDgxMjc0LCAKKyAgICA4MTI4MiwgODEyOTAsIDgxMjk5LCA4MTMwNywgODEzMTUsIDgxMzI0LCA4MTMzMiwgODEzNDAsIDgxMzQ4LCA4MTM1NywgCisgICAgODEzNjUsIDgxMzczLCA4MTM4MSwgODEzODksIDgxMzk3LCA4MTQwNSwgODE0MTMsIDgxNDIxLCA4MTQyOSwgODE0MzgsIAorICAgIDgxNDQ2LCA4MTQ1NCwgODE0NjIsIDgxNDcwLCA4MTQ3OCwgODE0ODcsIDgxNDk2LCA4MTUwNCwgODE1MTIsIDgxNTIwLCAKKyAgICA4MTUyOSwgODE1MzcsIDgxNTQ2LCA4MTU1MywgODE1NjAsIDgxNTY4LCA4MTU3NSwgODE1ODMsIDgxNTkxLCA4MTYwMCwgCisgICAgODE2MDgsIDgxNjE3LCA4MTYyNSwgODE2MzMsIDgxNjQzLCA4MTY1MCwgODE2NTcsIDgxNjY1LCA4MTY3MiwgODE2ODAsIAorICAgIDgxNjkwLCA4MTcwMSwgODE3MDksIDgxNzE4LCA4MTcyNiwgODE3MzUsIDgxNzQzLCA4MTc1MiwgODE3NjAsIDgxNzY5LCAKKyAgICA4MTc3NywgODE3ODYsIDgxNzk1LCA4MTgwMywgODE4MTEsIDgxODE5LCA4MTgyOCwgODE4MzUsIDgxODQzLCA4MTg1MiwgCisgICAgODE4NjEsIDgxODcwLCA4MTg4MCwgODE4ODgsIDgxODk4LCA4MTkwNiwgODE5MTYsIDgxOTI0LCA4MTkzNCwgODE5NDIsIAorICAgIDgxOTUyLCA4MTk2MCwgODE5NjksIDgxOTc2LCA4MTk4NSwgODE5OTIsIDgyMDAyLCA4MjAxMCwgODIwMjAsIDgyMDI4LCAKKyAgICA4MjAzOCwgODIwNDYsIDgyMDU0LCA4MjA2MiwgODIwNzEsIDgyMDc5LCA4MjA4OCwgODIwOTcsIDgyMTA2LCA4MjExNSwgCisgICAgODIxMjUsIDgyMTMzLCA4MjE0MywgODIxNTEsIDgyMTYxLCA4MjE2OSwgODIxNzksIDgyMTg3LCA4MjE5NywgODIyMDUsIAorICAgIDgyMjE0LCA4MjIyMSwgODIyMzAsIDgyMjM3LCA4MjI0NywgODIyNTUsIDgyMjY1LCA4MjI3MywgODIyODMsIDgyMjkxLCAKKyAgICA4MjI5OSwgODIzMDcsIDgyMzE2LCA4MjMyNCwgODIzMzMsIDgyMzQyLCA4MjM1MSwgODIzNjAsIDgyMzY4LCA4MjM3NiwgCisgICAgODIzODUsIDgyMzkzLCA4MjQwMiwgODI0MTEsIDgyNDE5LCA4MjQyNywgODI0MzUsIDgyNDQ0LCA4MjQ1MiwgODI0NjAsIAorICAgIDgyNDY5LCA4MjQ3NywgODI0ODUsIDgyNDkzLCA4MjUwMSwgODI1MDYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDgyNTExLCA4MjUyMSwgODI1MzEsIDgyNTQxLCA4MjU1MSwgODI1NjIsIDgyNTcyLCA4MjU4MiwgCisgICAgODI1OTMsIDgyNjAyLCA4MjYxMSwgODI2MjAsIDgyNjMxLCA4MjY0MSwgODI2NTEsIDgyNjYzLCA4MjY3MywgODI2ODMsIAorICAgIDgyNjkzLCA4MjcwMywgODI3MTMsIDgyNzIzLCA4MjczMywgODI3NDMsIDgyNzUzLCA4Mjc2MywgODI3NzMsIDgyNzg0LCAKKyAgICA4Mjc5NSwgODI4MDUsIDgyODE1LCA4MjgyNywgODI4MzgsIDgyODQ5LCA4Mjg1OSwgODI4NjksIDgyODc5LCA4Mjg4OSwgCisgICAgODI4OTksIDgyOTA5LCA4MjkxOSwgODI5MzEsIDgyOTQxLCA4Mjk1MSwgODI5NjMsIDgyOTc0LCA4Mjk4NSwgODI5OTUsIAorICAgIDgzMDA1LCA4MzAxNSwgODMwMjUsIDgzMDM3LCA4MzA0NywgODMwNTcsIDgzMDY4LCA4MzA3OSwgODMwODksIDgzMDk5LCAKKyAgICA4MzEwOCwgODMxMTcsIDgzMTI2LCA4MzEzNSwgODMxNDQsIDgzMTU0LCAwLCAwLCA4MzE2NCwgODMxNzQsIDgzMTg0LCAKKyAgICA4MzE5NCwgODMyMDQsIDgzMjE2LCA4MzIyNiwgODMyMzYsIDgzMjQ4LCA4MzI1OCwgODMyNzAsIDgzMjc5LCA4MzI4OCwgCisgICAgODMyOTksIDgzMzA5LCA4MzMyMSwgODMzMzIsIDgzMzQ1LCA4MzM1NSwgODMzNjcsIDgzMzc2LCA4MzM4NywgODMzOTgsIAorICAgIDgzNDExLCA4MzQyMSwgODM0MzEsIDgzNDQxLCA4MzQ1MSwgODM0NjEsIDgzNDcwLCA4MzQ3OSwgODM0ODgsIDgzNDk3LCAKKyAgICA4MzUwNywgODM1MTcsIDgzNTI3LCA4MzUzNywgODM1NDcsIDgzNTU3LCA4MzU2NywgODM1NzcsIDgzNTg3LCA4MzU5NywgCisgICAgODM2MDcsIDgzNjE3LCA4MzYyNiwgODM2MzUsIDgzNjQ0LCA4MzY1NCwgODM2NjQsIDgzNjc0LCA4MzY4NCwgODM2OTQsIAorICAgIDgzNzA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MzcxNSwgODM3MzAsIAorICAgIDgzNzQ1LCA4Mzc1MSwgODM3NTcsIDgzNzYzLCA4Mzc2OSwgODM3NzUsIDgzNzgxLCA4Mzc4NywgODM3OTMsIDgzODAxLCAKKyAgICA4MzgwNSwgODM4MDgsIDAsIDAsIDgzODE2LCA4MzgxOSwgODM4MjIsIDgzODI1LCA4MzgyOCwgODM4MzEsIDgzODM0LCAKKyAgICA4MzgzNywgODM4NDAsIDgzODQzLCA4Mzg0NiwgODM4NDksIDgzODUyLCA4Mzg1NSwgODM4NTgsIDgzODYxLCA4Mzg2NCwgCisgICAgODM4NzIsIDgzODgxLCA4Mzg5MiwgODM5MDAsIDgzOTA4LCA4MzkxNywgODM5MjYsIDgzOTM3LCA4Mzk0OSwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgODM5NTgsIDgzOTYzLCA4Mzk2OCwgODM5NzUsIDgzOTgyLCA4Mzk4OCwgODM5OTQsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDgzOTk5LCA4NDAwOSwgODQwMTksIDg0MDI5LCA4NDAzOCwgODQwNDksIDg0MDU4LCA4NDA2NywgCisgICAgODQwNzcsIDg0MDg3LCA4NDA5OSwgODQxMTEsIDg0MTIyLCA4NDEzMywgODQxNDQsIDg0MTU1LCA4NDE2NSwgODQxNzUsIAorICAgIDg0MTg1LCA4NDE5NSwgODQyMDYsIDg0MjE3LCA4NDIyMSwgODQyMjYsIDg0MjM1LCA4NDI0NCwgODQyNDgsIDg0MjUyLCAKKyAgICA4NDI1NiwgODQyNjEsIDg0MjY2LCA4NDI3MSwgODQyNzYsIDg0Mjc5LCA4NDI4MywgMCwgODQyODgsIDg0MjkxLCA4NDI5NCwgCisgICAgODQyOTgsIDg0MzAyLCA4NDMwNywgODQzMTEsIDg0MzE1LCA4NDMyMCwgODQzMjUsIDg0MzMyLCA4NDMzOSwgODQzNDIsIAorICAgIDg0MzQ1LCA4NDM0OCwgODQzNTEsIDg0MzU0LCA4NDM1OCwgODQzNjIsIDAsIDg0MzY2LCA4NDM3MSwgODQzNzUsIDg0Mzc5LCAKKyAgICAwLCAwLCAwLCAwLCA4NDM4NCwgODQzODksIDg0Mzk2LCA4NDQwMSwgODQ0MDYsIDAsIDg0NDExLCA4NDQxNiwgODQ0MjEsIAorICAgIDg0NDI2LCA4NDQzMSwgODQ0MzYsIDg0NDQxLCA4NDQ0NiwgODQ0NTEsIDg0NDU2LCA4NDQ2MSwgODQ0NjYsIDg0NDc1LCAKKyAgICA4NDQ4NCwgODQ0OTIsIDg0NTAwLCA4NDUwOSwgODQ1MTgsIDg0NTI3LCA4NDUzNiwgODQ1NDQsIDg0NTUyLCA4NDU2MCwgCisgICAgODQ1NjgsIDg0NTczLCA4NDU3OCwgODQ1ODQsIDg0NTkwLCA4NDU5NiwgODQ2MDIsIDg0NjEwLCA4NDYxOCwgODQ2MjQsIAorICAgIDg0NjMwLCA4NDYzNiwgODQ2NDIsIDg0NjQ4LCA4NDY1NCwgODQ2NjAsIDg0NjY2LCA4NDY3MSwgODQ2NzYsIDg0NjgxLCAKKyAgICA4NDY4NiwgODQ2OTEsIDg0Njk2LCA4NDcwMSwgODQ3MDYsIDg0NzEyLCA4NDcxOCwgODQ3MjQsIDg0NzMwLCA4NDczNiwgCisgICAgODQ3NDIsIDg0NzQ4LCA4NDc1NCwgODQ3NjAsIDg0NzY2LCA4NDc3MiwgODQ3NzgsIDg0Nzg0LCA4NDc5MCwgODQ3OTYsIAorICAgIDg0ODAyLCA4NDgwOCwgODQ4MTQsIDg0ODIwLCA4NDgyNiwgODQ4MzIsIDg0ODM4LCA4NDg0NCwgODQ4NTAsIDg0ODU2LCAKKyAgICA4NDg2MiwgODQ4NjgsIDg0ODc0LCA4NDg4MCwgODQ4ODYsIDg0ODkyLCA4NDg5OCwgODQ5MDQsIDg0OTEwLCA4NDkxNiwgCisgICAgODQ5MjIsIDg0OTI4LCA4NDkzNCwgODQ5NDAsIDg0OTQ2LCA4NDk1MiwgODQ5NTgsIDg0OTY0LCA4NDk3MCwgODQ5NzYsIAorICAgIDg0OTgyLCA4NDk4OCwgODQ5OTQsIDg1MDAwLCA4NTAwNiwgODUwMTIsIDg1MDE4LCA4NTAyNCwgODUwMzAsIDg1MDM2LCAKKyAgICA4NTA0MiwgODUwNDgsIDg1MDU0LCA4NTA2MCwgODUwNjYsIDg1MDcxLCA4NTA3NiwgODUwODEsIDg1MDg2LCA4NTA5MiwgCisgICAgODUwOTgsIDg1MTA0LCA4NTExMCwgODUxMTYsIDg1MTIyLCA4NTEyOCwgODUxMzQsIDg1MTQwLCA4NTE0NiwgODUxNTMsIAorICAgIDg1MTYwLCA4NTE2NSwgODUxNzAsIDg1MTc1LCA4NTE4MCwgODUxOTIsIDg1MjA0LCA4NTIxNSwgODUyMjYsIDg1MjM4LCAKKyAgICA4NTI1MCwgODUyNTgsIDAsIDAsIDg1MjY2LCAwLCA4NTI3NCwgODUyNzgsIDg1MjgyLCA4NTI4NSwgODUyODksIDg1MjkzLCAKKyAgICA4NTI5NiwgODUyOTksIDg1MzAzLCA4NTMwNywgODUzMTAsIDg1MzEzLCA4NTMxNiwgODUzMTksIDg1MzI0LCA4NTMyNywgCisgICAgODUzMzEsIDg1MzM0LCA4NTMzNywgODUzNDAsIDg1MzQzLCA4NTM0NiwgODUzNDksIDg1MzUyLCA4NTM1NSwgODUzNTgsIAorICAgIDg1MzYxLCA4NTM2NCwgODUzNjgsIDg1MzcyLCA4NTM3NiwgODUzODAsIDg1Mzg1LCA4NTM5MCwgODUzOTYsIDg1NDAyLCAKKyAgICA4NTQwOCwgODU0MTMsIDg1NDE5LCA4NTQyNSwgODU0MzEsIDg1NDM2LCA4NTQ0MiwgODU0NDgsIDg1NDUzLCA4NTQ1OCwgCisgICAgODU0NjQsIDg1NDY5LCA4NTQ3NSwgODU0ODEsIDg1NDg2LCA4NTQ5MiwgODU0OTgsIDg1NTAzLCA4NTUwOSwgODU1MTUsIAorICAgIDg1NTIxLCA4NTUyNywgODU1MzMsIDg1NTM3LCA4NTU0MiwgODU1NDYsIDg1NTUxLCA4NTU1NSwgODU1NjAsIDg1NTY1LCAKKyAgICA4NTU3MSwgODU1NzcsIDg1NTgzLCA4NTU4OCwgODU1OTQsIDg1NjAwLCA4NTYwNiwgODU2MTEsIDg1NjE3LCA4NTYyMywgCisgICAgODU2MjgsIDg1NjMzLCA4NTYzOSwgODU2NDQsIDg1NjUwLCA4NTY1NiwgODU2NjEsIDg1NjY3LCA4NTY3MywgODU2NzgsIAorICAgIDg1Njg0LCA4NTY5MCwgODU2OTYsIDg1NzAyLCA4NTcwOCwgODU3MTMsIDg1NzE3LCA4NTcyMiwgODU3MjQsIDg1NzI5LCAKKyAgICA4NTczNCwgODU3NDAsIDg1NzQ1LCA4NTc1MCwgODU3NTQsIDg1NzYwLCA4NTc2NSwgODU3NzAsIDg1Nzc1LCA4NTc4MCwgCisgICAgODU3ODUsIDg1NzkwLCA4NTc5NSwgODU4MDEsIDg1ODA3LCA4NTgxMywgODU4MjEsIDg1ODI1LCA4NTgyOSwgODU4MzMsIAorICAgIDg1ODM3LCA4NTg0MSwgODU4NDUsIDg1ODUwLCA4NTg1NSwgODU4NjAsIDg1ODY1LCA4NTg2OSwgODU4NzQsIDg1ODc5LCAKKyAgICA4NTg4NCwgODU4ODksIDg1ODk0LCA4NTg5OSwgODU5MDQsIDg1OTA5LCA4NTkxMywgODU5MTcsIDg1OTIyLCA4NTkyNywgCisgICAgODU5MzIsIDg1OTM3LCA4NTk0MSwgODU5NDYsIDg1OTUxLCA4NTk1NiwgODU5NjEsIDg1OTY1LCA4NTk3MCwgODU5NzUsIAorICAgIDg1OTgwLCA4NTk4NSwgODU5ODksIDg1OTk0LCA4NTk5OSwgODYwMDMsIDg2MDA4LCA4NjAxMywgODYwMTgsIDg2MDIzLCAKKyAgICA4NjAyOCwgODYwMzMsIDg2MDQwLCA4NjA0NywgODYwNTEsIDg2MDU2LCA4NjA2MSwgODYwNjYsIDg2MDcxLCA4NjA3NiwgCisgICAgODYwODEsIDg2MDg2LCA4NjA5MSwgODYwOTYsIDg2MTAxLCA4NjEwNiwgODYxMTEsIDg2MTE2LCA4NjEyMSwgODYxMjYsIAorICAgIDg2MTMxLCA4NjEzNiwgODYxNDEsIDg2MTQ2LCA4NjE1MSwgODYxNTYsIDg2MTYxLCA4NjE2NiwgODYxNzEsIDg2MTc2LCAKKyAgICA4NjE4MSwgODYxODYsIDg2MTkxLCA4NjE5NiwgMCwgMCwgMCwgODYyMDEsIDg2MjA1LCA4NjIxMCwgODYyMTQsIDg2MjE5LCAKKyAgICA4NjIyNCwgMCwgMCwgODYyMjgsIDg2MjMzLCA4NjIzOCwgODYyNDIsIDg2MjQ3LCA4NjI1MiwgMCwgMCwgODYyNTcsIAorICAgIDg2MjYyLCA4NjI2NiwgODYyNzEsIDg2Mjc2LCA4NjI4MSwgMCwgMCwgODYyODYsIDg2MjkxLCA4NjI5NiwgMCwgMCwgMCwgCisgICAgODYzMDAsIDg2MzA0LCA4NjMwOCwgODYzMTIsIDg2MzE1LCA4NjMxOSwgODYzMjMsIDAsIDg2MzI3LCA4NjMzMywgODYzMzYsIAorICAgIDg2MzQwLCA4NjM0MywgODYzNDcsIDg2MzUxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4NjM1NSwgODYzNjEsIAorICAgIDg2MzY3LCA4NjM3MywgODYzNzksIDAsIDAsIDg2MzgzLCA4NjM4OSwgODYzOTUsIDg2NDAxLCA4NjQwNywgODY0MTMsIAorICAgIDg2NDIwLCA4NjQyNywgODY0MzQsIDg2NDQxLCA4NjQ0OCwgODY0NTUsIDAsIDg2NDYyLCA4NjQ2OSwgODY0NzYsIDg2NDgyLCAKKyAgICA4NjQ4OSwgODY0OTYsIDg2NTAzLCA4NjUxMCwgODY1MTYsIDg2NTIzLCA4NjUzMCwgODY1MzcsIDg2NTQ0LCA4NjU1MCwgCisgICAgODY1NTcsIDg2NTY0LCA4NjU3MSwgODY1NzgsIDg2NTg0LCA4NjU5MSwgODY1OTgsIDg2NjA1LCA4NjYxMiwgODY2MTksIAorICAgIDg2NjI2LCA4NjYzMywgMCwgODY2NDAsIDg2NjQ2LCA4NjY1MywgODY2NjAsIDg2NjY3LCA4NjY3NCwgODY2ODAsIDg2Njg3LCAKKyAgICA4NjY5NCwgODY3MDEsIDg2NzA4LCA4NjcxNSwgODY3MjIsIDg2NzI5LCA4NjczNSwgODY3NDIsIDg2NzQ5LCA4Njc1NiwgCisgICAgODY3NjMsIDAsIDg2NzcwLCA4Njc3NywgMCwgODY3ODQsIDg2NzkxLCA4Njc5OCwgODY4MDUsIDg2ODEyLCA4NjgxOSwgCisgICAgODY4MjYsIDg2ODMzLCA4Njg0MCwgODY4NDcsIDg2ODU0LCA4Njg2MSwgODY4NjgsIDg2ODc1LCA4Njg4MiwgMCwgMCwgCisgICAgODY4ODgsIDg2ODkzLCA4Njg5OCwgODY5MDMsIDg2OTA4LCA4NjkxMywgODY5MTgsIDg2OTIzLCA4NjkyOCwgODY5MzMsIAorICAgIDg2OTM4LCA4Njk0MywgODY5NDgsIDg2OTUzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4Njk1OCwgODY5NjUsIAorICAgIDg2OTcyLCA4Njk3OSwgODY5ODYsIDg2OTkzLCA4NzAwMCwgODcwMDcsIDg3MDE0LCA4NzAyMSwgODcwMjgsIDg3MDM1LCAKKyAgICA4NzA0MiwgODcwNDksIDg3MDU2LCA4NzA2MywgODcwNzAsIDg3MDc3LCA4NzA4NCwgODcwOTEsIDg3MDk5LCA4NzEwNywgCisgICAgODcxMTQsIDg3MTIxLCA4NzEyNiwgODcxMzQsIDg3MTQyLCA4NzE0OSwgODcxNTYsIDg3MTYxLCA4NzE2OCwgODcxNzMsIAorICAgIDg3MTc4LCA4NzE4NSwgODcxOTAsIDg3MTk1LCA4NzIwMCwgODcyMDgsIDg3MjEzLCA4NzIxOCwgODcyMjUsIDg3MjMwLCAKKyAgICA4NzIzNSwgODcyNDIsIDg3MjQ5LCA4NzI1NCwgODcyNTksIDg3MjY0LCA4NzI2OSwgODcyNzQsIDg3Mjc5LCA4NzI4NCwgCisgICAgODcyODksIDg3Mjk0LCA4NzMwMSwgODczMDYsIDg3MzEzLCA4NzMxOCwgODczMjMsIDg3MzI4LCA4NzMzMywgODczMzgsIAorICAgIDg3MzQzLCA4NzM0OCwgODczNTMsIDg3MzU4LCA4NzM2MywgODczNjgsIDg3Mzc1LCA4NzM4MiwgODczODksIDg3Mzk2LCAKKyAgICA4NzQwMiwgODc0MDcsIDg3NDE0LCA4NzQxOSwgODc0MjQsIDg3NDMzLCA4NzQ0MCwgODc0NDksIDg3NDU2LCA4NzQ2MSwgCisgICAgODc0NjYsIDg3NDc0LCA4NzQ3OSwgODc0ODQsIDg3NDg5LCA4NzQ5NCwgODc0OTksIDg3NTA2LCA4NzUxMSwgODc1MTYsIAorICAgIDg3NTIxLCA4NzUyNiwgODc1MzEsIDg3NTM4LCA4NzU0NSwgODc1NTIsIDg3NTU5LCA4NzU2NiwgODc1NzMsIDg3NTgwLCAKKyAgICA4NzU4NywgODc1OTQsIDg3NjAxLCA4NzYwOCwgODc2MTUsIDg3NjIyLCA4NzYyOSwgODc2MzYsIDg3NjQzLCA4NzY1MCwgCisgICAgODc2NTcsIDg3NjY0LCA4NzY3MSwgODc2NzgsIDg3Njg1LCA4NzY5MiwgODc2OTksIDg3NzA2LCA4NzcxMywgODc3MjAsIAorICAgIDg3NzI3LCAwLCAwLCAwLCAwLCAwLCA4NzczNCwgODc3NDIsIDg3NzUwLCAwLCAwLCAwLCAwLCA4Nzc1NSwgODc3NTksIAorICAgIDg3NzYzLCA4Nzc2NywgODc3NzEsIDg3Nzc1LCA4Nzc3OSwgODc3ODMsIDg3Nzg3LCA4Nzc5MSwgODc3OTYsIDg3ODAxLCAKKyAgICA4NzgwNiwgODc4MTEsIDg3ODE2LCA4NzgyMSwgODc4MjYsIDg3ODMxLCA4NzgzNiwgODc4NDIsIDg3ODQ4LCA4Nzg1NCwgCisgICAgODc4NjEsIDg3ODY4LCA4Nzg3NSwgODc4ODIsIDg3ODg5LCA4Nzg5NiwgODc5MDIsIDg3OTA4LCA4NzkxNCwgODc5MjEsIAorICAgIDg3OTI4LCA4NzkzNSwgODc5NDIsIDg3OTQ5LCA4Nzk1NiwgODc5NjMsIDg3OTcwLCA4Nzk3NywgODc5ODQsIDg3OTkxLCAKKyAgICA4Nzk5OCwgODgwMDUsIDg4MDEyLCAwLCAwLCAwLCA4ODAxOSwgODgwMjcsIDg4MDM1LCA4ODA0MywgODgwNTEsIDg4MDU5LCAKKyAgICA4ODA2OSwgODgwNzksIDg4MDg3LCA4ODA5NSwgODgxMDMsIDg4MTExLCA4ODExOSwgODgxMjUsIDg4MTMyLCA4ODE0MSwgCisgICAgODgxNTAsIDg4MTU5LCA4ODE2OCwgODgxNzcsIDg4MTg2LCA4ODE5NiwgODgyMDcsIDg4MjE3LCA4ODIyOCwgODgyMzcsIAorICAgIDg4MjQ2LCA4ODI1NSwgODgyNjUsIDg4Mjc2LCA4ODI4NiwgODgyOTcsIDg4MzA4LCA4ODMxNywgODgzMjUsIDg4MzMxLCAKKyAgICA4ODMzNywgODgzNDMsIDg4MzQ5LCA4ODM1NywgODgzNjUsIDg4MzcxLCA4ODM3OCwgODgzODgsIDg4Mzk1LCA4ODQwMiwgCisgICAgODg0MDksIDg4NDE2LCA4ODQyMywgODg0MzMsIDg4NDQwLCA4ODQ0NywgODg0NTUsIDg4NDYzLCA4ODQ3MiwgODg0ODEsIAorICAgIDg4NDkwLCA4ODQ5OSwgODg1MDgsIDg4NTE2LCA4ODUyNSwgODg1MzQsIDg4NTQzLCA4ODU0NywgODg1NTQsIDg4NTU5LCAKKyAgICA4ODU2NCwgODg1NjgsIDg4NTcyLCA4ODU3NiwgODg1ODAsIDg4NTg1LCA4ODU5MCwgODg1OTYsIDg4NjAyLCA4ODYwNiwgCisgICAgODg2MTIsIDg4NjE2LCA4ODYyMCwgODg2MjQsIDg4NjI4LCA4ODYzMiwgODg2MzYsIDg4NjQyLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA4ODY0NiwgODg2NTEsIDg4NjU2LCA4ODY2MSwgODg2NjYsIDg4NjczLCA4ODY3OCwgODg2ODMsIDg4Njg4LCA4ODY5MywgCisgICAgODg2OTgsIDg4NzAzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3NzM5NCwgNzczOTksIDc3NDA0LCA3NzQwOSwgNzc0MTQsIAotICAgIDc3NDE5LCA3NzQyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzc0MzIsIDc3NDM5LCA3NzQ0NiwgCi0gICAgNzc0NTMsIDc3NDYwLCAwLCAwLCAwLCAwLCAwLCA3NzQ2NywgNzc0NzQsIDc3NDgxLCA3NzQ5MSwgNzc0OTcsIDc3NTAzLCAKLSAgICA3NzUwOSwgNzc1MTUsIDc3NTIxLCA3NzUyNywgNzc1MzQsIDc3NTQwLCA3NzU0NiwgNzc1NTIsIDc3NTYxLCA3NzU3MCwgCi0gICAgNzc1ODIsIDc3NTk0LCA3NzYwMCwgNzc2MDYsIDc3NjEyLCA3NzYxOSwgNzc2MjYsIDc3NjMzLCA3NzY0MCwgNzc2NDcsIDAsIAotICAgIDc3NjU0LCA3NzY2MSwgNzc2NjgsIDc3Njc2LCA3NzY4MywgMCwgNzc2OTAsIDAsIDc3Njk3LCA3NzcwNCwgMCwgNzc3MTEsIAotICAgIDc3NzE5LCAwLCA3NzcyNiwgNzc3MzMsIDc3NzQwLCA3Nzc0NywgNzc3NTQsIDc3NzYxLCA3Nzc2OCwgNzc3NzUsIDc3NzgyLCAKLSAgICA3Nzc4OSwgNzc3OTQsIDc3ODAxLCA3NzgwOCwgNzc4MTQsIDc3ODIwLCA3NzgyNiwgNzc4MzIsIDc3ODM4LCA3Nzg0NCwgCi0gICAgNzc4NTAsIDc3ODU2LCA3Nzg2MiwgNzc4NjgsIDc3ODc0LCA3Nzg4MCwgNzc4ODYsIDc3ODkyLCA3Nzg5OCwgNzc5MDQsIAotICAgIDc3OTEwLCA3NzkxNiwgNzc5MjIsIDc3OTI4LCA3NzkzNCwgNzc5NDAsIDc3OTQ2LCA3Nzk1MiwgNzc5NTgsIDc3OTY0LCAKLSAgICA3Nzk3MCwgNzc5NzYsIDc3OTgyLCA3Nzk4OCwgNzc5OTQsIDc4MDAwLCA3ODAwNiwgNzgwMTIsIDc4MDE4LCA3ODAyNCwgCi0gICAgNzgwMzAsIDc4MDM2LCA3ODA0MiwgNzgwNDgsIDc4MDU0LCA3ODA2MCwgNzgwNjYsIDc4MDcyLCA3ODA3OCwgNzgwODQsIAotICAgIDc4MDkwLCA3ODA5NiwgNzgxMDIsIDc4MTA4LCA3ODExNCwgNzgxMjAsIDc4MTI2LCA3ODEzMiwgNzgxMzgsIDc4MTQ0LCAKLSAgICA3ODE1MCwgNzgxNTYsIDc4MTYyLCA3ODE2OCwgNzgxNzQsIDc4MTgwLCA3ODE4NiwgNzgxOTIsIDc4MTk4LCA3ODIwNCwgCi0gICAgNzgyMTAsIDc4MjE2LCA3ODIyMiwgNzgyMjgsIDc4MjM0LCA3ODI0MCwgNzgyNDYsIDc4MjUyLCA3ODI1OCwgNzgyNjQsIAotICAgIDc4MjcyLCA3ODI4MCwgNzgyODYsIDc4MjkyLCA3ODI5OCwgNzgzMDQsIDc4MzEzLCA3ODMyMiwgNzgzMzAsIDc4MzM4LCAKLSAgICA3ODM0NiwgNzgzNTQsIDc4MzYyLCA3ODM3MCwgNzgzNzgsIDc4Mzg2LCA3ODM5MywgNzg0MDAsIDc4NDEwLCA3ODQyMCwgCi0gICAgNzg0MjQsIDc4NDI4LCA3ODQzMywgNzg0MzgsIDc4NDQzLCA3ODQ0OCwgNzg0NTcsIDc4NDY2LCA3ODQ3MiwgNzg0NzgsIAotICAgIDc4NDg1LCA3ODQ5MiwgNzg0OTksIDc4NTAzLCA3ODUwOSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgNzg1MTUsIDc4NTIxLCA3ODUyNywgNzg1MzMsIDc4NTM5LCA3ODU0NCwgNzg1NDksIDc4NTU1LCAKLSAgICA3ODU2MSwgNzg1NjcsIDc4NTczLCA3ODU4MSwgNzg1ODcsIDc4NTkzLCA3ODYwMSwgNzg2MDksIDc4NjE3LCA3ODYyNSwgCi0gICAgNzg2MzAsIDc4NjM1LCA3ODY0MCwgNzg2NDUsIDc4NjU3LCA3ODY2OSwgNzg2NzksIDc4Njg5LCA3ODcwMCwgNzg3MTEsIAotICAgIDc4NzIyLCA3ODczMywgNzg3NDMsIDc4NzUzLCA3ODc2NCwgNzg3NzUsIDc4Nzg2LCA3ODc5NywgNzg4MDcsIDc4ODE3LCAKLSAgICA3ODgyNywgNzg4NDIsIDc4ODU3LCA3ODg3MiwgNzg4NzksIDc4ODg2LCA3ODg5MywgNzg5MDAsIDc4OTEwLCA3ODkyMCwgCi0gICAgNzg5MzAsIDc4OTQxLCA3ODk1MSwgNzg5NTksIDc4OTY3LCA3ODk3NiwgNzg5ODQsIDc4OTkzLCA3OTAwMSwgNzkwMDksIAotICAgIDc5MDE3LCA3OTAyNiwgNzkwMzQsIDc5MDQzLCA3OTA1MSwgNzkwNTksIDc5MDY3LCA3OTA3NiwgNzkwODQsIDc5MDkxLCAKLSAgICA3OTA5OCwgNzkxMDUsIDc5MTEyLCA3OTEyMCwgNzkxMjgsIDc5MTM2LCA3OTE0NCwgNzkxNTIsIDc5MTYxLCA3OTE2OSwgCi0gICAgNzkxNzcsIDc5MTg1LCA3OTE5MywgNzkyMDEsIDc5MjEwLCA3OTIxOCwgNzkyMjYsIDc5MjM0LCA3OTI0MiwgNzkyNTAsIAotICAgIDc5MjU4LCA3OTI2NiwgNzkyNzQsIDc5MjgyLCA3OTI5MCwgNzkyOTksIDc5MzA3LCA3OTMxNiwgNzkzMjQsIDc5MzMyLCAKLSAgICA3OTM0MCwgNzkzNDksIDc5MzU3LCA3OTM2NSwgNzkzNzMsIDc5MzgxLCA3OTM5MCwgNzkzOTksIDc5NDA3LCA3OTQxNiwgCi0gICAgNzk0MjQsIDc5NDMyLCA3OTQ0MCwgNzk0NDksIDc5NDU3LCA3OTQ2NiwgNzk0NzQsIDc5NDgxLCA3OTQ4OCwgNzk0OTYsIAotICAgIDc5NTAzLCA3OTUxMSwgNzk1MTgsIDc5NTI2LCA3OTUzNCwgNzk1NDMsIDc5NTUxLCA3OTU2MCwgNzk1NjgsIDc5NTc2LCAKLSAgICA3OTU4NCwgNzk1OTMsIDc5NjAxLCA3OTYwOCwgNzk2MTUsIDc5NjIzLCA3OTYzMCwgNzk2MzgsIDc5NjQ1LCA3OTY1NSwgCi0gICAgNzk2NjUsIDc5Njc1LCA3OTY4NCwgNzk2OTMsIDc5NzAyLCA3OTcxMSwgNzk3MjAsIDc5NzMwLCA3OTc0MSwgNzk3NTIsIAotICAgIDc5NzYyLCA3OTc3MywgNzk3ODQsIDc5Nzk0LCA3OTgwMywgNzk4MTIsIDc5ODIwLCA3OTgyOSwgNzk4MzgsIDc5ODQ2LCAKLSAgICA3OTg1NSwgNzk4NjQsIDc5ODcyLCA3OTg4MSwgNzk4OTAsIDc5ODk4LCA3OTkwNywgNzk5MTYsIDc5OTI0LCA3OTkzMywgCi0gICAgNzk5NDIsIDc5OTUwLCA3OTk1OSwgNzk5NjcsIDc5OTc2LCA3OTk4NCwgNzk5OTIsIDgwMDAxLCA4MDAwOSwgODAwMTgsIAotICAgIDgwMDI2LCA4MDAzNCwgODAwNDMsIDgwMDUxLCA4MDA1OCwgODAwNjUsIDgwMDc0LCA4MDA4MywgODAwOTEsIDgwMTAwLCAKLSAgICA4MDEwOSwgODAxMTcsIDgwMTI3LCA4MDEzNSwgODAxNDMsIDgwMTUwLCA4MDE1OCwgODAxNjYsIDgwMTczLCA4MDE4MywgCi0gICAgODAxOTMsIDgwMjA0LCA4MDIxNCwgODAyMjUsIDgwMjMzLCA4MDI0MSwgODAyNTAsIDgwMjU4LCA4MDI2NywgODAyNzUsIAotICAgIDgwMjgzLCA4MDI5MiwgODAzMDAsIDgwMzA5LCA4MDMxNywgODAzMjQsIDgwMzMxLCA4MDMzOCwgODAzNDUsIDgwMzUzLCAKLSAgICA4MDM2MSwgODAzNjksIDgwMzc3LCA4MDM4NiwgODAzOTQsIDgwNDAyLCA4MDQxMSwgODA0MTksIDgwNDI3LCA4MDQzNSwgCi0gICAgODA0NDQsIDgwNDUyLCA4MDQ2MCwgODA0NjgsIDgwNDc2LCA4MDQ4NCwgODA0OTIsIDgwNTAwLCA4MDUwOCwgODA1MTYsIAotICAgIDgwNTI1LCA4MDUzMywgODA1NDEsIDgwNTQ5LCA4MDU1NywgODA1NjUsIDgwNTc0LCA4MDU4MywgODA1OTEsIDgwNTk5LCAKLSAgICA4MDYwNywgODA2MTYsIDgwNjI0LCA4MDYzMywgODA2NDAsIDgwNjQ3LCA4MDY1NSwgODA2NjIsIDgwNjcwLCA4MDY3OCwgCi0gICAgODA2ODcsIDgwNjk1LCA4MDcwNCwgODA3MTIsIDgwNzIwLCA4MDczMCwgODA3MzcsIDgwNzQ0LCA4MDc1MiwgODA3NTksIAotICAgIDgwNzY3LCA4MDc3NywgODA3ODgsIDgwNzk2LCA4MDgwNSwgODA4MTMsIDgwODIyLCA4MDgzMCwgODA4MzksIDgwODQ3LCAKLSAgICA4MDg1NiwgODA4NjQsIDgwODczLCA4MDg4MiwgODA4OTAsIDgwODk4LCA4MDkwNiwgODA5MTUsIDgwOTIyLCA4MDkzMCwgCi0gICAgODA5MzksIDgwOTQ4LCA4MDk1NywgODA5NjYsIDgwOTc0LCA4MDk4MywgODA5OTEsIDgxMDAwLCA4MTAwOCwgODEwMTcsIAotICAgIDgxMDI1LCA4MTAzNCwgODEwNDIsIDgxMDUwLCA4MTA1NywgODEwNjUsIDgxMDcyLCA4MTA4MSwgODEwODksIDgxMDk4LCAKLSAgICA4MTEwNiwgODExMTUsIDgxMTIzLCA4MTEzMSwgODExMzksIDgxMTQ4LCA4MTE1NiwgODExNjUsIDgxMTc0LCA4MTE4MywgCi0gICAgODExOTIsIDgxMjAxLCA4MTIwOSwgODEyMTgsIDgxMjI2LCA4MTIzNSwgODEyNDMsIDgxMjUyLCA4MTI2MCwgODEyNjksIAotICAgIDgxMjc3LCA4MTI4NSwgODEyOTIsIDgxMzAwLCA4MTMwNywgODEzMTYsIDgxMzI0LCA4MTMzMywgODEzNDEsIDgxMzUwLCAKLSAgICA4MTM1OCwgODEzNjYsIDgxMzc0LCA4MTM4MywgODEzOTEsIDgxNDAwLCA4MTQwOSwgODE0MTgsIDgxNDI3LCA4MTQzNSwgCi0gICAgODE0NDMsIDgxNDUyLCA4MTQ2MCwgODE0NjksIDgxNDc4LCA4MTQ4NiwgODE0OTQsIDgxNTAyLCA4MTUxMSwgODE1MTksIAotICAgIDgxNTI3LCA4MTUzNiwgODE1NDQsIDgxNTUyLCA4MTU2MCwgODE1NjgsIDgxNTczLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MTU3OCwgODE1ODgsIDgxNTk4LCA4MTYwOCwgODE2MTgsIDgxNjI5LCA4MTYzOSwgCi0gICAgODE2NDksIDgxNjYwLCA4MTY2OSwgODE2NzgsIDgxNjg3LCA4MTY5NywgODE3MDcsIDgxNzE3LCA4MTcyOCwgODE3MzgsIAotICAgIDgxNzQ4LCA4MTc1OCwgODE3NjgsIDgxNzc4LCA4MTc4OCwgODE3OTgsIDgxODA4LCA4MTgxOCwgODE4MjgsIDgxODM4LCAKLSAgICA4MTg0OSwgODE4NjAsIDgxODcwLCA4MTg4MCwgODE4OTEsIDgxOTAyLCA4MTkxMywgODE5MjMsIDgxOTMzLCA4MTk0MywgCi0gICAgODE5NTMsIDgxOTYzLCA4MTk3MywgODE5ODMsIDgxOTk0LCA4MjAwNCwgODIwMTQsIDgyMDI1LCA4MjAzNiwgODIwNDcsIAotICAgIDgyMDU3LCA4MjA2NywgODIwNzcsIDgyMDg3LCA4MjA5OCwgODIxMDgsIDgyMTE4LCA4MjEyOSwgODIxNDAsIDgyMTUwLCAKLSAgICA4MjE2MCwgODIxNjksIDgyMTc4LCA4MjE4NywgODIxOTYsIDgyMjA1LCA4MjIxNSwgMCwgMCwgODIyMjUsIDgyMjM1LCAKLSAgICA4MjI0NSwgODIyNTUsIDgyMjY1LCA4MjI3NiwgODIyODYsIDgyMjk2LCA4MjMwNywgODIzMTcsIDgyMzI4LCA4MjMzNywgCi0gICAgODIzNDYsIDgyMzU3LCA4MjM2NywgODIzNzgsIDgyMzg5LCA4MjQwMSwgODI0MTEsIDgyNDIyLCA4MjQzMSwgODI0NDEsIAotICAgIDgyNDUxLCA4MjQ2MywgODI0NzMsIDgyNDgzLCA4MjQ5MywgODI1MDMsIDgyNTEzLCA4MjUyMiwgODI1MzEsIDgyNTQwLCAKLSAgICA4MjU0OSwgODI1NTksIDgyNTY5LCA4MjU3OSwgODI1ODksIDgyNTk5LCA4MjYwOSwgODI2MTksIDgyNjI5LCA4MjYzOSwgCi0gICAgODI2NDksIDgyNjU5LCA4MjY2OSwgODI2NzgsIDgyNjg3LCA4MjY5NiwgODI3MDYsIDgyNzE2LCA4MjcyNiwgODI3MzYsIAotICAgIDgyNzQ2LCA4Mjc1NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODI3NjcsIDgyNzgyLCAKLSAgICA4Mjc5NywgODI4MDMsIDgyODA5LCA4MjgxNSwgODI4MjEsIDgyODI3LCA4MjgzMywgODI4MzksIDgyODQ1LCA4Mjg1MywgCi0gICAgODI4NTcsIDgyODYwLCAwLCAwLCA4Mjg2OCwgODI4NzEsIDgyODc0LCA4Mjg3NywgODI4ODAsIDgyODgzLCA4Mjg4NiwgCi0gICAgODI4ODksIDgyODkyLCA4Mjg5NSwgODI4OTgsIDgyOTAxLCA4MjkwNCwgODI5MDcsIDgyOTEwLCA4MjkxMywgODI5MTYsIAotICAgIDgyOTI0LCA4MjkzMywgODI5NDQsIDgyOTUyLCA4Mjk2MCwgODI5NjksIDgyOTc4LCA4Mjk4OSwgODMwMDEsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDgzMDEwLCA4MzAxNSwgODMwMjAsIDgzMDI3LCA4MzAzNCwgODMwNDAsIDgzMDQ2LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA4MzA1MSwgODMwNjEsIDgzMDcxLCA4MzA4MSwgODMwOTAsIDgzMTAxLCA4MzExMCwgODMxMTksIAotICAgIDgzMTI5LCA4MzEzOSwgODMxNTEsIDgzMTYzLCA4MzE3NCwgODMxODUsIDgzMTk2LCA4MzIwNywgODMyMTcsIDgzMjI3LCAKLSAgICA4MzIzNywgODMyNDcsIDgzMjU4LCA4MzI2OSwgODMyNzMsIDgzMjc4LCA4MzI4NywgODMyOTYsIDgzMzAwLCA4MzMwNCwgCi0gICAgODMzMDgsIDgzMzEzLCA4MzMxOCwgODMzMjMsIDgzMzI4LCA4MzMzMSwgODMzMzUsIDAsIDgzMzQwLCA4MzM0MywgODMzNDYsIAotICAgIDgzMzUwLCA4MzM1NCwgODMzNTksIDgzMzYzLCA4MzM2NywgODMzNzIsIDgzMzc3LCA4MzM4NCwgODMzOTEsIDgzMzk0LCAKLSAgICA4MzM5NywgODM0MDAsIDgzNDAzLCA4MzQwNiwgODM0MTAsIDgzNDE0LCAwLCA4MzQxOCwgODM0MjMsIDgzNDI3LCA4MzQzMSwgCi0gICAgMCwgMCwgMCwgMCwgODM0MzYsIDgzNDQxLCA4MzQ0OCwgODM0NTMsIDgzNDU4LCAwLCA4MzQ2MywgODM0NjgsIDgzNDczLCAKLSAgICA4MzQ3OCwgODM0ODMsIDgzNDg4LCA4MzQ5MywgODM0OTgsIDgzNTAzLCA4MzUwOCwgODM1MTMsIDgzNTE4LCA4MzUyNywgCi0gICAgODM1MzYsIDgzNTQ0LCA4MzU1MiwgODM1NjEsIDgzNTcwLCA4MzU3OSwgODM1ODgsIDgzNTk2LCA4MzYwNCwgODM2MTIsIAotICAgIDgzNjIwLCA4MzYyNSwgODM2MzAsIDgzNjM2LCA4MzY0MiwgODM2NDgsIDgzNjU0LCA4MzY2MiwgODM2NzAsIDgzNjc2LCAKLSAgICA4MzY4MiwgODM2ODgsIDgzNjk0LCA4MzcwMCwgODM3MDYsIDgzNzEyLCA4MzcxOCwgODM3MjMsIDgzNzI4LCA4MzczMywgCi0gICAgODM3MzgsIDgzNzQzLCA4Mzc0OCwgODM3NTMsIDgzNzU4LCA4Mzc2NCwgODM3NzAsIDgzNzc2LCA4Mzc4MiwgODM3ODgsIAotICAgIDgzNzk0LCA4MzgwMCwgODM4MDYsIDgzODEyLCA4MzgxOCwgODM4MjQsIDgzODMwLCA4MzgzNiwgODM4NDIsIDgzODQ4LCAKLSAgICA4Mzg1NCwgODM4NjAsIDgzODY2LCA4Mzg3MiwgODM4NzgsIDgzODg0LCA4Mzg5MCwgODM4OTYsIDgzOTAyLCA4MzkwOCwgCi0gICAgODM5MTQsIDgzOTIwLCA4MzkyNiwgODM5MzIsIDgzOTM4LCA4Mzk0NCwgODM5NTAsIDgzOTU2LCA4Mzk2MiwgODM5NjgsIAotICAgIDgzOTc0LCA4Mzk4MCwgODM5ODYsIDgzOTkyLCA4Mzk5OCwgODQwMDQsIDg0MDEwLCA4NDAxNiwgODQwMjIsIDg0MDI4LCAKLSAgICA4NDAzNCwgODQwNDAsIDg0MDQ2LCA4NDA1MiwgODQwNTgsIDg0MDY0LCA4NDA3MCwgODQwNzYsIDg0MDgyLCA4NDA4OCwgCi0gICAgODQwOTQsIDg0MTAwLCA4NDEwNiwgODQxMTIsIDg0MTE4LCA4NDEyMywgODQxMjgsIDg0MTMzLCA4NDEzOCwgODQxNDQsIAotICAgIDg0MTUwLCA4NDE1NiwgODQxNjIsIDg0MTY4LCA4NDE3NCwgODQxODAsIDg0MTg2LCA4NDE5MiwgODQxOTgsIDg0MjA0LCAKLSAgICA4NDIxMCwgODQyMTUsIDg0MjIwLCA4NDIyNSwgODQyMzAsIDg0MjQyLCA4NDI1NCwgODQyNjUsIDg0Mjc2LCA4NDI4OCwgCi0gICAgODQzMDAsIDg0MzA4LCAwLCAwLCA4NDMxNiwgMCwgODQzMjQsIDg0MzI4LCA4NDMzMiwgODQzMzUsIDg0MzM5LCA4NDM0MywgCi0gICAgODQzNDYsIDg0MzQ5LCA4NDM1MywgODQzNTcsIDg0MzYwLCA4NDM2MywgODQzNjYsIDg0MzY5LCA4NDM3NCwgODQzNzcsIAotICAgIDg0MzgxLCA4NDM4NCwgODQzODcsIDg0MzkwLCA4NDM5MywgODQzOTYsIDg0Mzk5LCA4NDQwMiwgODQ0MDUsIDg0NDA4LCAKLSAgICA4NDQxMSwgODQ0MTQsIDg0NDE4LCA4NDQyMiwgODQ0MjYsIDg0NDMwLCA4NDQzNSwgODQ0NDAsIDg0NDQ2LCA4NDQ1MiwgCi0gICAgODQ0NTgsIDg0NDYzLCA4NDQ2OSwgODQ0NzUsIDg0NDgxLCA4NDQ4NiwgODQ0OTIsIDg0NDk4LCA4NDUwMywgODQ1MDgsIAotICAgIDg0NTEzLCA4NDUxOCwgODQ1MjQsIDg0NTMwLCA4NDUzNSwgODQ1NDAsIDg0NTQ2LCA4NDU1MSwgODQ1NTcsIDg0NTYzLCAKLSAgICA4NDU2OSwgODQ1NzUsIDg0NTgxLCA4NDU4NSwgODQ1OTAsIDg0NTk0LCA4NDU5OSwgODQ2MDMsIDg0NjA4LCA4NDYxMywgCi0gICAgODQ2MTksIDg0NjI1LCA4NDYzMSwgODQ2MzYsIDg0NjQyLCA4NDY0OCwgODQ2NTQsIDg0NjU5LCA4NDY2NSwgODQ2NzEsIAotICAgIDg0Njc2LCA4NDY4MSwgODQ2ODYsIDg0NjkxLCA4NDY5NywgODQ3MDMsIDg0NzA4LCA4NDcxMywgODQ3MTksIDg0NzI0LCAKLSAgICA4NDczMCwgODQ3MzYsIDg0NzQyLCA4NDc0OCwgODQ3NTQsIDg0NzU5LCA4NDc2MywgODQ3NjgsIDg0NzcxLCA4NDc3NiwgCi0gICAgODQ3ODEsIDg0Nzg3LCA4NDc5MiwgODQ3OTcsIDg0ODAxLCA4NDgwNywgODQ4MTIsIDg0ODE3LCA4NDgyMiwgODQ4MjcsIAotICAgIDg0ODMyLCA4NDgzNywgODQ4NDIsIDg0ODQ4LCA4NDg1NCwgODQ4NjAsIDg0ODY4LCA4NDg3MiwgODQ4NzYsIDg0ODgwLCAKLSAgICA4NDg4NCwgODQ4ODgsIDg0ODkyLCA4NDg5NywgODQ5MDIsIDg0OTA3LCA4NDkxMiwgODQ5MTcsIDg0OTIyLCA4NDkyNywgCi0gICAgODQ5MzIsIDg0OTM3LCA4NDk0MiwgODQ5NDcsIDg0OTUyLCA4NDk1NywgODQ5NjEsIDg0OTY1LCA4NDk3MCwgODQ5NzUsIAotICAgIDg0OTgwLCA4NDk4NSwgODQ5ODksIDg0OTk0LCA4NDk5OSwgODUwMDQsIDg1MDA5LCA4NTAxMywgODUwMTgsIDg1MDIzLCAKLSAgICA4NTAyOCwgODUwMzMsIDg1MDM3LCA4NTA0MiwgODUwNDcsIDg1MDUxLCA4NTA1NiwgODUwNjEsIDg1MDY2LCA4NTA3MSwgCi0gICAgODUwNzYsIDg1MDgwLCA4NTA4NywgODUwOTQsIDg1MDk4LCA4NTEwMywgODUxMDgsIDg1MTEzLCA4NTExOCwgODUxMjMsIAotICAgIDg1MTI4LCA4NTEzMywgODUxMzgsIDg1MTQzLCA4NTE0OCwgODUxNTMsIDg1MTU4LCA4NTE2MywgODUxNjgsIDg1MTczLCAKLSAgICA4NTE3OCwgODUxODMsIDg1MTg4LCA4NTE5MywgODUxOTgsIDg1MjAzLCA4NTIwOCwgODUyMTMsIDg1MjE4LCA4NTIyMywgCi0gICAgODUyMjgsIDg1MjMzLCA4NTIzOCwgODUyNDMsIDAsIDAsIDAsIDg1MjQ4LCA4NTI1MiwgODUyNTcsIDg1MjYxLCA4NTI2NiwgCi0gICAgODUyNzEsIDAsIDAsIDg1Mjc1LCA4NTI4MCwgODUyODUsIDg1Mjg5LCA4NTI5NCwgODUyOTksIDAsIDAsIDg1MzA0LCAKLSAgICA4NTMwOSwgODUzMTMsIDg1MzE4LCA4NTMyMywgODUzMjgsIDAsIDAsIDg1MzMzLCA4NTMzOCwgODUzNDMsIDAsIDAsIDAsIAotICAgIDg1MzQ3LCA4NTM1MSwgODUzNTUsIDg1MzU5LCA4NTM2MiwgODUzNjYsIDg1MzcwLCAwLCA4NTM3NCwgODUzODAsIDg1MzgzLCAKLSAgICA4NTM4NywgODUzOTAsIDg1Mzk0LCA4NTM5OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODU0MDIsIDg1NDA4LCAKLSAgICA4NTQxNCwgODU0MjAsIDg1NDI2LCAwLCAwLCA4NTQzMCwgODU0MzYsIDg1NDQyLCA4NTQ0OCwgODU0NTQsIDg1NDYwLCAKLSAgICA4NTQ2NywgODU0NzQsIDg1NDgxLCA4NTQ4OCwgODU0OTUsIDg1NTAyLCAwLCA4NTUwOSwgODU1MTYsIDg1NTIzLCA4NTUyOSwgCi0gICAgODU1MzYsIDg1NTQzLCA4NTU1MCwgODU1NTcsIDg1NTYzLCA4NTU3MCwgODU1NzcsIDg1NTg0LCA4NTU5MSwgODU1OTcsIAotICAgIDg1NjA0LCA4NTYxMSwgODU2MTgsIDg1NjI1LCA4NTYzMSwgODU2MzgsIDg1NjQ1LCA4NTY1MiwgODU2NTksIDg1NjY2LCAKLSAgICA4NTY3MywgODU2ODAsIDAsIDg1Njg3LCA4NTY5MywgODU3MDAsIDg1NzA3LCA4NTcxNCwgODU3MjEsIDg1NzI4LCA4NTczNSwgCi0gICAgODU3NDIsIDg1NzQ5LCA4NTc1NiwgODU3NjMsIDg1NzcwLCA4NTc3NywgODU3ODMsIDg1NzkwLCA4NTc5NywgODU4MDQsIAotICAgIDg1ODExLCAwLCA4NTgxOCwgODU4MjUsIDAsIDg1ODMyLCA4NTgzOSwgODU4NDYsIDg1ODUzLCA4NTg2MCwgODU4NjcsIAotICAgIDg1ODc0LCA4NTg4MSwgODU4ODgsIDg1ODk1LCA4NTkwMiwgODU5MDksIDg1OTE2LCA4NTkyMywgODU5MzAsIDAsIDAsIAotICAgIDg1OTM2LCA4NTk0MSwgODU5NDYsIDg1OTUxLCA4NTk1NiwgODU5NjEsIDg1OTY2LCA4NTk3MSwgODU5NzYsIDg1OTgxLCAKLSAgICA4NTk4NiwgODU5OTEsIDg1OTk2LCA4NjAwMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODYwMDYsIDg2MDEzLCAKLSAgICA4NjAyMCwgODYwMjcsIDg2MDM0LCA4NjA0MSwgODYwNDgsIDg2MDU1LCA4NjA2MiwgODYwNjksIDg2MDc2LCA4NjA4MywgCi0gICAgODYwOTAsIDg2MDk3LCA4NjEwNCwgODYxMTEsIDg2MTE4LCA4NjEyNSwgODYxMzIsIDg2MTM5LCA4NjE0NywgODYxNTUsIAotICAgIDg2MTYyLCA4NjE2OSwgODYxNzQsIDg2MTgyLCA4NjE5MCwgODYxOTcsIDg2MjA0LCA4NjIwOSwgODYyMTYsIDg2MjIxLCAKLSAgICA4NjIyNiwgODYyMzMsIDg2MjM4LCA4NjI0MywgODYyNDgsIDg2MjU2LCA4NjI2MSwgODYyNjYsIDg2MjczLCA4NjI3OCwgCi0gICAgODYyODMsIDg2MjkwLCA4NjI5NywgODYzMDIsIDg2MzA3LCA4NjMxMiwgODYzMTcsIDg2MzIyLCA4NjMyNywgODYzMzIsIAotICAgIDg2MzM3LCA4NjM0MiwgODYzNDksIDg2MzU0LCA4NjM2MSwgODYzNjYsIDg2MzcxLCA4NjM3NiwgODYzODEsIDg2Mzg2LCAKLSAgICA4NjM5MSwgODYzOTYsIDg2NDAxLCA4NjQwNiwgODY0MTEsIDg2NDE2LCA4NjQyMywgODY0MzAsIDg2NDM3LCA4NjQ0NCwgCi0gICAgODY0NTAsIDg2NDU1LCA4NjQ2MiwgODY0NjcsIDg2NDcyLCA4NjQ4MSwgODY0ODgsIDg2NDk3LCA4NjUwNCwgODY1MDksIAotICAgIDg2NTE0LCA4NjUyMiwgODY1MjcsIDg2NTMyLCA4NjUzNywgODY1NDIsIDg2NTQ3LCA4NjU1NCwgODY1NTksIDg2NTY0LCAKLSAgICA4NjU2OSwgODY1NzQsIDg2NTc5LCA4NjU4NiwgODY1OTMsIDg2NjAwLCA4NjYwNywgODY2MTQsIDg2NjIxLCA4NjYyOCwgCi0gICAgODY2MzUsIDg2NjQyLCA4NjY0OSwgODY2NTYsIDg2NjYzLCA4NjY3MCwgODY2NzcsIDg2Njg0LCA4NjY5MSwgODY2OTgsIAotICAgIDg2NzA1LCA4NjcxMiwgODY3MTksIDg2NzI2LCA4NjczMywgODY3NDAsIDg2NzQ3LCA4Njc1NCwgODY3NjEsIDg2NzY4LCAKLSAgICA4Njc3NSwgMCwgMCwgMCwgMCwgMCwgODY3ODIsIDg2NzkwLCA4Njc5OCwgMCwgMCwgMCwgMCwgODY4MDMsIDg2ODA3LCAKLSAgICA4NjgxMSwgODY4MTUsIDg2ODE5LCA4NjgyMywgODY4MjcsIDg2ODMxLCA4NjgzNSwgODY4MzksIDg2ODQ0LCA4Njg0OSwgCi0gICAgODY4NTQsIDg2ODU5LCA4Njg2NCwgODY4NjksIDg2ODc0LCA4Njg3OSwgODY4ODQsIDg2ODkwLCA4Njg5NiwgODY5MDIsIAotICAgIDg2OTA5LCA4NjkxNiwgODY5MjMsIDg2OTMwLCA4NjkzNywgODY5NDQsIDg2OTUwLCA4Njk1NiwgODY5NjIsIDg2OTY5LCAKLSAgICA4Njk3NiwgODY5ODMsIDg2OTkwLCA4Njk5NywgODcwMDQsIDg3MDExLCA4NzAxOCwgODcwMjUsIDg3MDMyLCA4NzAzOSwgCi0gICAgODcwNDYsIDg3MDUzLCA4NzA2MCwgMCwgMCwgMCwgODcwNjcsIDg3MDc1LCA4NzA4MywgODcwOTEsIDg3MDk5LCA4NzEwNywgCi0gICAgODcxMTcsIDg3MTI3LCA4NzEzNSwgODcxNDMsIDg3MTUxLCA4NzE1OSwgODcxNjcsIDg3MTczLCA4NzE4MCwgODcxODksIAotICAgIDg3MTk4LCA4NzIwNywgODcyMTYsIDg3MjI1LCA4NzIzNCwgODcyNDQsIDg3MjU1LCA4NzI2NSwgODcyNzYsIDg3Mjg1LCAKLSAgICA4NzI5NCwgODczMDMsIDg3MzEzLCA4NzMyNCwgODczMzQsIDg3MzQ1LCA4NzM1NiwgODczNjUsIDg3MzczLCA4NzM3OSwgCi0gICAgODczODUsIDg3MzkxLCA4NzM5NywgODc0MDUsIDg3NDEzLCA4NzQxOSwgODc0MjYsIDg3NDM2LCA4NzQ0MywgODc0NTAsIAotICAgIDg3NDU3LCA4NzQ2NCwgODc0NzEsIDg3NDgxLCA4NzQ4OCwgODc0OTUsIDg3NTAzLCA4NzUxMSwgODc1MjAsIDg3NTI5LCAKLSAgICA4NzUzOCwgODc1NDcsIDg3NTU2LCA4NzU2NCwgODc1NzMsIDg3NTgyLCA4NzU5MSwgODc1OTUsIDg3NjAyLCA4NzYwNywgCi0gICAgODc2MTIsIDg3NjE2LCA4NzYyMCwgODc2MjQsIDg3NjI4LCA4NzYzMywgODc2MzgsIDg3NjQ0LCA4NzY1MCwgODc2NTQsIAotICAgIDg3NjYwLCA4NzY2NCwgODc2NjgsIDg3NjcyLCA4NzY3NiwgODc2ODAsIDg3Njg0LCA4NzY5MCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgODc2OTQsIDg3Njk5LCA4NzcwNCwgODc3MDksIDg3NzE0LCA4NzcyMSwgODc3MjYsIDg3NzMxLCA4NzczNiwgODc3NDEsIAotICAgIDg3NzQ2LCA4Nzc1MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODg3MDgsIDg4NzE1LCA4ODcyNCwgODg3MzMsIDg4NzQwLCA4ODc0NywgODg3NTQsIAorICAgIDg4NzYxLCA4ODc2OCwgODg3NzUsIDg4NzgxLCA4ODc4OCwgODg3OTUsIDg4ODAyLCA4ODgwOSwgODg4MTYsIDg4ODIzLCAKKyAgICA4ODgzMCwgODg4MzcsIDg4ODQ2LCA4ODg1MywgODg4NjAsIDg4ODY3LCA4ODg3NCwgODg4ODEsIDg4ODg4LCA4ODg5NSwgCisgICAgODg5MDIsIDg4OTExLCA4ODkxOCwgODg5MjUsIDg4OTMyLCA4ODkzOSwgODg5NDYsIDg4OTUzLCA4ODk2MiwgODg5NjksIAorICAgIDg4OTc2LCA4ODk4MywgODg5OTAsIDg4OTk5LCA4OTAwNiwgODkwMTMsIDg5MDIwLCA4OTAyOCwgODkwMzcsIDAsIDAsIAorICAgIDg5MDQ2LCA4OTA1MCwgODkwNTQsIDg5MDU5LCA4OTA2NCwgODkwNjksIDg5MDc0LCA4OTA3OCwgODkwODMsIDg5MDg4LCAKKyAgICA4OTA5MywgODkwOTgsIDg5MTAzLCA4OTEwOCwgODkxMTIsIDg5MTE2LCA4OTEyMSwgODkxMjYsIDg5MTMxLCA4OTEzNSwgCisgICAgODkxNDAsIDg5MTQ1LCA4OTE0OSwgODkxNTQsIDg5MTU5LCA4OTE2NCwgODkxNjksIDg5MTc0LCA4OTE3OSwgMCwgMCwgMCwgCisgICAgODkxODQsIDg5MTg4LCA4OTE5MywgODkxOTgsIDg5MjAyLCA4OTIwNywgODkyMTEsIDg5MjE2LCA4OTIyMSwgODkyMjYsIAorICAgIDg5MjMxLCA4OTIzNSwgODkyMzksIDg5MjQ0LCA4OTI0OSwgODkyNTQsIDg5MjU5LCA4OTI2NCwgODkyNjksIDg5MjczLCAKKyAgICA4OTI3OCwgODkyODMsIDg5Mjg4LCA4OTI5MywgODkyOTgsIDg5MzAzLCA4OTMwNywgODkzMTEsIDg5MzE2LCA4OTMyMSwgCisgICAgODkzMjYsIDg5MzMxLCA4OTMzNiwgODkzNDEsIDg5MzQ2LCA4OTM1MSwgODkzNTYsIDg5MzYxLCA4OTM2NiwgODkzNzEsIAorICAgIDg5Mzc2LCA4OTM4MSwgODkzODYsIDg5MzkxLCA4OTM5NiwgODk0MDEsIDg5NDA2LCA4OTQxMSwgODk0MTYsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg3NzU2LCA4Nzc2MywgODc3NzIsIDg3NzgxLCA4Nzc4OCwgODc3OTUsIDg3ODAyLCAKLSAgICA4NzgwOSwgODc4MTYsIDg3ODIzLCA4NzgyOSwgODc4MzYsIDg3ODQzLCA4Nzg1MCwgODc4NTcsIDg3ODY0LCA4Nzg3MSwgCi0gICAgODc4NzgsIDg3ODg1LCA4Nzg5NCwgODc5MDEsIDg3OTA4LCA4NzkxNSwgODc5MjIsIDg3OTI5LCA4NzkzNiwgODc5NDMsIAotICAgIDg3OTUwLCA4Nzk1OSwgODc5NjYsIDg3OTczLCA4Nzk4MCwgODc5ODcsIDg3OTk0LCA4ODAwMSwgODgwMTAsIDg4MDE3LCAKLSAgICA4ODAyNCwgODgwMzEsIDg4MDM4LCA4ODA0NywgODgwNTQsIDg4MDYxLCA4ODA2OCwgODgwNzYsIDg4MDg1LCAwLCAwLCAKLSAgICA4ODA5NCwgODgwOTgsIDg4MTAyLCA4ODEwNywgODgxMTIsIDg4MTE3LCA4ODEyMiwgODgxMjYsIDg4MTMxLCA4ODEzNiwgCi0gICAgODgxNDEsIDg4MTQ2LCA4ODE1MSwgODgxNTYsIDg4MTYwLCA4ODE2NCwgODgxNjgsIDg4MTczLCA4ODE3OCwgODgxODIsIAotICAgIDg4MTg3LCA4ODE5MiwgODgxOTYsIDg4MjAwLCA4ODIwNSwgODgyMTAsIDg4MjE1LCA4ODIyMCwgODgyMjUsIDAsIDAsIDAsIAotICAgIDg4MjMwLCA4ODIzNCwgODgyMzksIDg4MjQ0LCA4ODI0OCwgODgyNTMsIDg4MjU3LCA4ODI2MiwgODgyNjcsIDg4MjcyLCAKLSAgICA4ODI3NywgODgyODEsIDg4Mjg1LCA4ODI5MCwgODgyOTUsIDg4MzAwLCA4ODMwNSwgODgzMDksIDg4MzE0LCA4ODMxOCwgCi0gICAgODgzMjMsIDg4MzI4LCA4ODMzMiwgODgzMzcsIDg4MzQyLCA4ODM0NywgODgzNTEsIDg4MzU1LCA4ODM2MCwgODgzNjUsIAotICAgIDg4MzcwLCA4ODM3NSwgODgzODAsIDg4Mzg1LCA4ODM5MCwgODgzOTUsIDg4NDAwLCA4ODQwNSwgODg0MTAsIDg4NDE1LCAKLSAgICA4ODQyMCwgODg0MjUsIDg4NDMwLCA4ODQzNSwgODg0NDAsIDg4NDQ1LCA4ODQ1MCwgODg0NTUsIDg4NDYwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4OTQyMSwgODk0MjUsIAorICAgIDg5NDMwLCA4OTQzNSwgODk0NDAsIDg5NDQ0LCA4OTQ0OSwgODk0NTQsIDg5NDU5LCA4OTQ2NCwgODk0NjgsIDg5NDcyLCAKKyAgICA4OTQ3NywgODk0ODIsIDg5NDg3LCA4OTQ5MiwgODk0OTYsIDg5NTAxLCA4OTUwNiwgODk1MTEsIDg5NTE2LCA4OTUyMSwgCisgICAgODk1MjYsIDg5NTMwLCA4OTUzNSwgODk1NDAsIDg5NTQ1LCA4OTU1MCwgODk1NTUsIDg5NTYwLCA4OTU2NSwgMCwgODk1NzAsIAorICAgIDg5NTc1LCA4OTU4MCwgODk1ODYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg5NTkyLCA4OTU5NywgCisgICAgODk2MDIsIDg5NjA3LCA4OTYxMiwgODk2MTcsIDg5NjIyLCA4OTYyNywgODk2MzIsIDg5NjM3LCA4OTY0MiwgODk2NDcsIAorICAgIDg5NjUyLCA4OTY1NywgODk2NjIsIDg5NjY3LCA4OTY3MiwgODk2NzcsIDg5NjgyLCA4OTY4NywgODk2OTIsIDg5Njk3LCAKKyAgICA4OTcwMiwgODk3MDcsIDg5NzEyLCA4OTcxNywgODk3MjIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg4NDY1LCA4ODQ2OSwgCi0gICAgODg0NzQsIDg4NDc5LCA4ODQ4NCwgODg0ODgsIDg4NDkzLCA4ODQ5OCwgODg1MDMsIDg4NTA4LCA4ODUxMiwgODg1MTYsIAotICAgIDg4NTIxLCA4ODUyNiwgODg1MzEsIDg4NTM2LCA4ODU0MCwgODg1NDUsIDg4NTUwLCA4ODU1NSwgODg1NjAsIDg4NTY1LCAKLSAgICA4ODU3MCwgODg1NzQsIDg4NTc5LCA4ODU4NCwgODg1ODksIDg4NTk0LCA4ODU5OSwgODg2MDQsIDg4NjA5LCAwLCA4ODYxNCwgCi0gICAgODg2MTksIDg4NjI0LCA4ODYzMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODg2MzYsIDg4NjQxLCAKLSAgICA4ODY0NiwgODg2NTEsIDg4NjU2LCA4ODY2MSwgODg2NjYsIDg4NjcxLCA4ODY3NiwgODg2ODEsIDg4Njg2LCA4ODY5MSwgCi0gICAgODg2OTYsIDg4NzAxLCA4ODcwNiwgODg3MTEsIDg4NzE2LCA4ODcyMSwgODg3MjYsIDg4NzMxLCA4ODczNiwgODg3NDEsIAotICAgIDg4NzQ2LCA4ODc1MSwgODg3NTYsIDg4NzYxLCA4ODc2NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODk3MjksIDg5NzM0LCA4OTczOSwgCisgICAgODk3NDQsIDg5NzQ5LCA4OTc1NCwgODk3NTksIDg5NzY0LCA4OTc2OSwgODk3NzQsIDg5Nzc5LCA4OTc4NCwgODk3ODksIAorICAgIDg5Nzk0LCA4OTc5OSwgODk4MDQsIDg5ODA5LCA4OTgxNCwgODk4MTksIDg5ODI0LCA4OTgyOSwgODk4MzQsIDg5ODM5LCAKKyAgICA4OTg0NCwgODk4NDksIDg5ODU0LCA4OTg1OSwgODk4NjMsIDg5ODY3LCA4OTg3MSwgMCwgODk4NzYsIDg5ODgyLCA4OTg4NywgCisgICAgODk4OTIsIDg5ODk3LCA4OTkwMiwgODk5MDgsIDg5OTE0LCA4OTkyMCwgODk5MjYsIDg5OTMyLCA4OTkzOCwgODk5NDQsIAorICAgIDg5OTUwLCA4OTk1NiwgODk5NjIsIDg5OTY4LCA4OTk3NCwgODk5ODAsIDg5OTg1LCA4OTk5MSwgODk5OTcsIDkwMDAyLCAKKyAgICA5MDAwOCwgOTAwMTMsIDkwMDE5LCA5MDAyNSwgOTAwMzAsIDkwMDM2LCA5MDA0MiwgOTAwNDcsIDkwMDUzLCA5MDA1OSwgCisgICAgOTAwNjQsIDkwMDcwLCA5MDA3NiwgOTAwODIsIDAsIDAsIDAsIDAsIDkwMDg3LCA5MDA5MywgOTAwOTksIDkwMTA1LCAKKyAgICA5MDExMSwgOTAxMTcsIDkwMTIzLCA5MDEyOSwgOTAxMzUsIDkwMTQyLCA5MDE0NywgOTAxNTIsIDkwMTU4LCA5MDE2NCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODg3NzMsIDg4Nzc4LCA4ODc4MywgCi0gICAgODg3ODgsIDg4NzkzLCA4ODc5OCwgODg4MDMsIDg4ODA4LCA4ODgxMywgODg4MTgsIDg4ODIzLCA4ODgyOCwgODg4MzMsIAotICAgIDg4ODM4LCA4ODg0MywgODg4NDgsIDg4ODUzLCA4ODg1OCwgODg4NjMsIDg4ODY4LCA4ODg3MywgODg4NzgsIDg4ODgzLCAKLSAgICA4ODg4OCwgODg4OTMsIDg4ODk4LCA4ODkwMywgODg5MDcsIDg4OTExLCA4ODkxNSwgMCwgODg5MjAsIDg4OTI2LCA4ODkzMSwgCi0gICAgODg5MzYsIDg4OTQxLCA4ODk0NiwgODg5NTIsIDg4OTU4LCA4ODk2NCwgODg5NzAsIDg4OTc2LCA4ODk4MiwgODg5ODgsIAotICAgIDg4OTk0LCA4OTAwMCwgODkwMDYsIDg5MDEyLCA4OTAxOCwgODkwMjQsIDg5MDI5LCA4OTAzNSwgODkwNDEsIDg5MDQ2LCAKLSAgICA4OTA1MiwgODkwNTcsIDg5MDYzLCA4OTA2OSwgODkwNzQsIDg5MDgwLCA4OTA4NiwgODkwOTEsIDg5MDk3LCA4OTEwMywgCi0gICAgODkxMDksIDg5MTE1LCA4OTEyMSwgODkxMjcsIDAsIDAsIDAsIDAsIDg5MTMyLCA4OTEzOCwgODkxNDQsIDg5MTUwLCAKLSAgICA4OTE1NiwgODkxNjIsIDg5MTY4LCA4OTE3NCwgODkxODAsIDg5MTg3LCA4OTE5MiwgODkxOTcsIDg5MjAzLCA4OTIwOSwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODkyMTUsIDg5MjIwLCA4OTIyNSwgCi0gICAgODkyMzAsIDg5MjM2LCA4OTI0MSwgODkyNDcsIDg5MjUzLCA4OTI1OSwgODkyNjUsIDg5MjcyLCA4OTI3OCwgODkyODUsIAotICAgIDg5MjkwLCA4OTI5NSwgODkzMDAsIDg5MzA1LCA4OTMxMCwgODkzMTUsIDg5MzIwLCA4OTMyNSwgODkzMzAsIDg5MzM1LCAKLSAgICA4OTM0MCwgODkzNDUsIDg5MzUwLCA4OTM1NSwgODkzNjAsIDg5MzY1LCA4OTM3MCwgODkzNzUsIDg5MzgwLCA4OTM4NSwgCi0gICAgODkzOTAsIDg5Mzk1LCA4OTQwMCwgODk0MDUsIDg5NDEwLCA4OTQxNSwgODk0MjAsIDg5NDI1LCA4OTQzMCwgODk0MzUsIAotICAgIDg5NDQwLCA4OTQ0NiwgODk0NTEsIDg5NDU3LCA4OTQ2MywgODk0NjksIDg5NDc1LCA4OTQ4MiwgODk0ODgsIDg5NDk1LCAKLSAgICA4OTUwMCwgODk1MDUsIDg5NTEwLCA4OTUxNSwgODk1MjAsIDg5NTI1LCA4OTUzMCwgODk1MzUsIDg5NTQwLCA4OTU0NSwgCi0gICAgODk1NTAsIDg5NTU1LCA4OTU2MCwgODk1NjUsIDg5NTcwLCA4OTU3NSwgODk1ODAsIDg5NTg1LCA4OTU5MCwgODk1OTUsIAotICAgIDg5NjAwLCA4OTYwNSwgODk2MTAsIDg5NjE1LCA4OTYyMCwgODk2MjUsIDg5NjMwLCA4OTYzNSwgODk2NDAsIDg5NjQ1LCAKLSAgICA4OTY1MCwgODk2NTUsIDg5NjYwLCA4OTY2NSwgODk2NzAsIDg5Njc1LCA4OTY4MCwgODk2ODUsIDg5NjkwLCA4OTY5NSwgCi0gICAgODk3MDAsIDg5NzA1LCA4OTcxMCwgODk3MTUsIDg5NzIwLCA4OTcyNSwgODk3MzAsIDg5NzM1LCA4OTc0MCwgODk3NDUsIAotICAgIDg5NzUwLCA4OTc1NSwgODk3NjAsIDg5NzY1LCA4OTc3MCwgODk3NzUsIDg5NzgwLCA4OTc4NSwgODk3OTAsIDg5Nzk1LCAKLSAgICA4OTgwMCwgODk4MDUsIDg5ODEwLCA4OTgxNSwgODk4MjAsIDg5ODI1LCA4OTgzMCwgODk4MzUsIDg5ODQwLCA4OTg0NSwgCi0gICAgODk4NTAsIDg5ODU1LCA4OTg2MCwgODk4NjUsIDg5ODcwLCA4OTg3NSwgODk4ODAsIDg5ODg1LCA4OTg5MCwgODk4OTUsIAotICAgIDg5OTAwLCA4OTkwNSwgODk5MTAsIDg5OTE0LCA4OTkxOSwgODk5MjQsIDg5OTI5LCA4OTkzNCwgODk5MzksIDg5OTQ0LCAKLSAgICA4OTk0OSwgODk5NTQsIDg5OTU5LCA4OTk2NCwgODk5NjksIDg5OTc0LCA4OTk3OCwgODk5ODIsIDg5OTg2LCA4OTk5MCwgCi0gICAgODk5OTQsIDg5OTk4LCA5MDAwMiwgOTAwMDcsIDkwMDEyLCAwLCAwLCA5MDAxNywgOTAwMjIsIDkwMDI2LCA5MDAzMCwgCi0gICAgOTAwMzQsIDkwMDM4LCA5MDA0MiwgOTAwNDYsIDkwMDUwLCA5MDA1NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTAxNzAsIDkwMTc1LCA5MDE4MCwgCisgICAgOTAxODUsIDkwMTkxLCA5MDE5NiwgOTAyMDIsIDkwMjA4LCA5MDIxNCwgOTAyMjAsIDkwMjI3LCA5MDIzMywgOTAyNDAsIAorICAgIDkwMjQ1LCA5MDI1MCwgOTAyNTUsIDkwMjYwLCA5MDI2NSwgOTAyNzAsIDkwMjc1LCA5MDI4MCwgOTAyODUsIDkwMjkwLCAKKyAgICA5MDI5NSwgOTAzMDAsIDkwMzA1LCA5MDMxMCwgOTAzMTUsIDkwMzIwLCA5MDMyNSwgOTAzMzAsIDkwMzM1LCA5MDM0MCwgCisgICAgOTAzNDUsIDkwMzUwLCA5MDM1NSwgOTAzNjAsIDkwMzY1LCA5MDM3MCwgOTAzNzUsIDkwMzgwLCA5MDM4NSwgOTAzOTAsIAorICAgIDkwMzk1LCA5MDQwMSwgOTA0MDYsIDkwNDEyLCA5MDQxOCwgOTA0MjQsIDkwNDMwLCA5MDQzNywgOTA0NDMsIDkwNDUwLCAKKyAgICA5MDQ1NSwgOTA0NjAsIDkwNDY1LCA5MDQ3MCwgOTA0NzUsIDkwNDgwLCA5MDQ4NSwgOTA0OTAsIDkwNDk1LCA5MDUwMCwgCisgICAgOTA1MDUsIDkwNTEwLCA5MDUxNSwgOTA1MjAsIDkwNTI1LCA5MDUzMCwgOTA1MzUsIDkwNTQwLCA5MDU0NSwgOTA1NTAsIAorICAgIDkwNTU1LCA5MDU2MCwgOTA1NjUsIDkwNTcwLCA5MDU3NSwgOTA1ODAsIDkwNTg1LCA5MDU5MCwgOTA1OTUsIDkwNjAwLCAKKyAgICA5MDYwNSwgOTA2MTAsIDkwNjE1LCA5MDYyMCwgOTA2MjUsIDkwNjMwLCA5MDYzNSwgOTA2NDAsIDkwNjQ1LCA5MDY1MCwgCisgICAgOTA2NTUsIDkwNjYwLCA5MDY2NSwgOTA2NzAsIDkwNjc1LCA5MDY4MCwgOTA2ODUsIDkwNjkwLCA5MDY5NSwgOTA3MDAsIAorICAgIDkwNzA1LCA5MDcxMCwgOTA3MTUsIDkwNzIwLCA5MDcyNSwgOTA3MzAsIDkwNzM1LCA5MDc0MCwgOTA3NDUsIDkwNzUwLCAKKyAgICA5MDc1NSwgOTA3NjAsIDkwNzY1LCA5MDc3MCwgOTA3NzUsIDkwNzgwLCA5MDc4NSwgOTA3OTAsIDkwNzk1LCA5MDgwMCwgCisgICAgOTA4MDUsIDkwODEwLCA5MDgxNSwgOTA4MjAsIDkwODI1LCA5MDgzMCwgOTA4MzUsIDkwODQwLCA5MDg0NSwgOTA4NTAsIAorICAgIDkwODU1LCA5MDg2MCwgOTA4NjUsIDkwODY5LCA5MDg3MywgOTA4NzgsIDkwODgzLCA5MDg4OCwgOTA4OTMsIDkwODk4LCAKKyAgICA5MDkwMywgOTA5MDgsIDkwOTEzLCA5MDkxOCwgOTA5MjMsIDkwOTI4LCA5MDkzMiwgOTA5MzYsIDkwOTQwLCA5MDk0NCwgCisgICAgOTA5NDgsIDkwOTUyLCA5MDk1NiwgOTA5NjEsIDkwOTY2LCAwLCAwLCA5MDk3MSwgOTA5NzYsIDkwOTgwLCA5MDk4NCwgCisgICAgOTA5ODgsIDkwOTkyLCA5MDk5NiwgOTEwMDAsIDkxMDA0LCA5MTAwOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgOTAwNTgsIDkwMDYyLCA5MDA2NiwgOTAwNzAsIDkwMDc0LCA5MDA3OCwgMCwgMCwgOTAwODMsIDAsIAotICAgIDkwMDg4LCA5MDA5MiwgOTAwOTcsIDkwMTAyLCA5MDEwNywgOTAxMTIsIDkwMTE3LCA5MDEyMiwgOTAxMjcsIDkwMTMyLCAKLSAgICA5MDEzNywgOTAxNDEsIDkwMTQ2LCA5MDE1MSwgOTAxNTYsIDkwMTYxLCA5MDE2NSwgOTAxNzAsIDkwMTc1LCA5MDE4MCwgCi0gICAgOTAxODUsIDkwMTg5LCA5MDE5NCwgOTAxOTksIDkwMjA0LCA5MDIwOSwgOTAyMTMsIDkwMjE4LCA5MDIyMywgOTAyMjgsIAotICAgIDkwMjMzLCA5MDIzOCwgOTAyNDMsIDkwMjQ4LCA5MDI1MywgOTAyNTgsIDkwMjYzLCA5MDI2OCwgOTAyNzMsIDkwMjc3LCAKLSAgICA5MDI4MiwgOTAyODcsIDkwMjkyLCA5MDI5NywgMCwgOTAzMDIsIDkwMzA3LCAwLCAwLCAwLCA5MDMxMiwgMCwgMCwgOTAzMTcsIAotICAgIDkwMzIyLCA5MDMyOSwgOTAzMzYsIDkwMzQzLCA5MDM1MCwgOTAzNTcsIDkwMzY0LCA5MDM3MSwgOTAzNzgsIDkwMzg1LCAKLSAgICA5MDM5MiwgOTAzOTksIDkwNDA2LCA5MDQxMywgOTA0MjAsIDkwNDI3LCA5MDQzNCwgOTA0NDEsIDkwNDQ4LCA5MDQ1NSwgCi0gICAgOTA0NjIsIDkwNDY5LCAwLCA5MDQ3NiwgOTA0ODMsIDkwNDg5LCA5MDQ5NSwgOTA1MDEsIDkwNTA4LCA5MDUxNSwgOTA1MjMsIAotICAgIDkwNTMxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MDU0MCwgOTA1NDUsIDkwNTUwLCA5MDU1NSwgOTA1NjAsIDkwNTY1LCAKLSAgICA5MDU3MCwgOTA1NzUsIDkwNTgwLCA5MDU4NSwgOTA1OTAsIDkwNTk1LCA5MDYwMCwgOTA2MDUsIDkwNjEwLCA5MDYxNSwgCi0gICAgOTA2MjAsIDkwNjI1LCA5MDYzMCwgOTA2MzUsIDkwNjQwLCA5MDY0NSwgOTA2NTAsIDkwNjU0LCA5MDY1OSwgOTA2NjQsIAotICAgIDkwNjcwLCA5MDY3NCwgMCwgMCwgMCwgOTA2NzgsIDkwNjg0LCA5MDY4OCwgOTA2OTMsIDkwNjk4LCA5MDcwMywgOTA3MDcsIAotICAgIDkwNzEyLCA5MDcxNiwgOTA3MjEsIDkwNzI2LCA5MDczMCwgOTA3MzQsIDkwNzM4LCA5MDc0MiwgOTA3NDYsIDkwNzUxLCAKLSAgICA5MDc1NiwgOTA3NjAsIDkwNzY1LCA5MDc3MCwgOTA3NzQsIDkwNzc5LCA5MDc4NCwgOTA3ODksIDkwNzk0LCA5MDc5OSwgMCwgCi0gICAgMCwgMCwgMCwgMCwgOTA4MDQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDkxMDEyLCA5MTAxNiwgOTEwMjAsIDkxMDI0LCA5MTAyOCwgOTEwMzIsIDAsIDAsIDkxMDM3LCAwLCAKKyAgICA5MTA0MiwgOTEwNDYsIDkxMDUxLCA5MTA1NiwgOTEwNjEsIDkxMDY2LCA5MTA3MSwgOTEwNzYsIDkxMDgxLCA5MTA4NiwgCisgICAgOTEwOTEsIDkxMDk1LCA5MTEwMCwgOTExMDUsIDkxMTEwLCA5MTExNSwgOTExMTksIDkxMTI0LCA5MTEyOSwgOTExMzQsIAorICAgIDkxMTM5LCA5MTE0MywgOTExNDgsIDkxMTUzLCA5MTE1OCwgOTExNjMsIDkxMTY3LCA5MTE3MiwgOTExNzcsIDkxMTgyLCAKKyAgICA5MTE4NywgOTExOTEsIDkxMTk2LCA5MTIwMSwgOTEyMDYsIDkxMjExLCA5MTIxNiwgOTEyMjEsIDkxMjI2LCA5MTIzMCwgCisgICAgOTEyMzUsIDkxMjQwLCA5MTI0NSwgOTEyNTAsIDAsIDkxMjU1LCA5MTI2MCwgMCwgMCwgMCwgOTEyNjUsIDAsIDAsIDkxMjcwLCAKKyAgICA5MTI3NSwgOTEyODIsIDkxMjg5LCA5MTI5NiwgOTEzMDMsIDkxMzEwLCA5MTMxNywgOTEzMjQsIDkxMzMxLCA5MTMzOCwgCisgICAgOTEzNDUsIDkxMzUyLCA5MTM1OSwgOTEzNjYsIDkxMzczLCA5MTM4MCwgOTEzODcsIDkxMzk0LCA5MTQwMSwgOTE0MDgsIAorICAgIDkxNDE1LCA5MTQyMiwgMCwgOTE0MjksIDkxNDM2LCA5MTQ0MiwgOTE0NDgsIDkxNDU0LCA5MTQ2MSwgOTE0NjgsIDkxNDc2LCAKKyAgICA5MTQ4NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTE0OTMsIDkxNDk4LCA5MTUwMywgOTE1MDgsIDkxNTEzLCA5MTUxOCwgCisgICAgOTE1MjMsIDkxNTI4LCA5MTUzMywgOTE1MzgsIDkxNTQzLCA5MTU0OCwgOTE1NTMsIDkxNTU4LCA5MTU2MywgOTE1NjgsIAorICAgIDkxNTczLCA5MTU3OCwgOTE1ODMsIDkxNTg4LCA5MTU5MywgOTE1OTgsIDkxNjAzLCA5MTYwNywgOTE2MTIsIDkxNjE3LCAKKyAgICA5MTYyMywgOTE2MjcsIDAsIDAsIDAsIDkxNjMxLCA5MTYzNywgOTE2NDEsIDkxNjQ2LCA5MTY1MSwgOTE2NTYsIDkxNjYwLCAKKyAgICA5MTY2NSwgOTE2NjksIDkxNjc0LCA5MTY3OSwgOTE2ODMsIDkxNjg3LCA5MTY5MiwgOTE2OTYsIDkxNzAwLCA5MTcwNSwgCisgICAgOTE3MTAsIDkxNzE0LCA5MTcxOSwgOTE3MjQsIDkxNzI5LCA5MTczNCwgOTE3MzksIDkxNzQ0LCA5MTc0OSwgOTE3NTQsIDAsIAorICAgIDAsIDAsIDAsIDAsIDkxNzU5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MDgwOSwgCi0gICAgOTA4MTMsIDkwODE4LCA5MDgyMywgMCwgOTA4MjksIDkwODM0LCAwLCAwLCAwLCAwLCAwLCA5MDgzOSwgOTA4NDUsIDkwODUyLCAKLSAgICA5MDg1NywgOTA4NjIsIDkwODY2LCA5MDg3MSwgOTA4NzYsIDAsIDkwODgxLCA5MDg4NiwgOTA4OTEsIDAsIDkwODk2LCAKLSAgICA5MDkwMSwgOTA5MDYsIDkwOTExLCA5MDkxNiwgOTA5MjEsIDkwOTI2LCA5MDkzMSwgOTA5MzYsIDkwOTQxLCA5MDk0NiwgCi0gICAgOTA5NTAsIDkwOTU0LCA5MDk1OSwgOTA5NjQsIDkwOTY5LCA5MDk3MywgOTA5NzcsIDkwOTgxLCA5MDk4NiwgOTA5OTEsIAotICAgIDkwOTk2LCA5MTAwMSwgOTEwMDYsIDkxMDExLCA5MTAxNSwgOTEwMjAsIDAsIDAsIDAsIDAsIDkxMDI1LCA5MTAzMSwgCi0gICAgOTEwMzYsIDAsIDAsIDAsIDAsIDkxMDQxLCA5MTA0NSwgOTEwNDksIDkxMDUzLCA5MTA1NywgOTEwNjEsIDkxMDY2LCAKLSAgICA5MTA3MSwgOTEwNzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkxMDgzLCA5MTA4OSwgOTEwOTYsIDkxMTAyLCA5MTEwOSwgCi0gICAgOTExMTUsIDkxMTIxLCA5MTEyNywgOTExMzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkxMTQwLCA5MTE0OCwgOTExNTYsIAotICAgIDkxMTY0LCA5MTE3MiwgOTExODAsIDkxMTg4LCA5MTE5NiwgOTEyMDQsIDkxMjEyLCA5MTIyMCwgOTEyMjgsIDkxMjM2LCAKLSAgICA5MTI0NCwgOTEyNTIsIDkxMjYwLCA5MTI2OCwgOTEyNzYsIDkxMjg0LCA5MTI5MiwgOTEzMDAsIDkxMzA4LCA5MTMxNiwgCi0gICAgOTEzMjQsIDkxMzMyLCA5MTM0MCwgOTEzNDgsIDkxMzU2LCA5MTM2NCwgOTEzNzIsIDkxMzc5LCA5MTM4NywgOTEzOTUsIAotICAgIDkxMzk5LCA5MTQwNCwgOTE0MDksIDkxNDE0LCA5MTQxOSwgOTE0MjQsIDkxNDI5LCA5MTQzNCwgOTE0MzgsIDkxNDQzLCAKLSAgICA5MTQ0NywgOTE0NTIsIDkxNDU2LCA5MTQ2MSwgOTE0NjUsIDkxNDcwLCA5MTQ3NSwgOTE0ODAsIDkxNDg1LCA5MTQ5MCwgCi0gICAgOTE0OTUsIDkxNTAwLCA5MTUwNSwgOTE1MTAsIDkxNTE1LCA5MTUyMCwgOTE1MjUsIDkxNTMwLCA5MTUzNSwgOTE1NDAsIAotICAgIDkxNTQ1LCA5MTU1MCwgOTE1NTUsIDkxNTYwLCA5MTU2NSwgOTE1NzAsIDkxNTc1LCA5MTU4MCwgOTE1ODUsIDkxNTkwLCAKLSAgICA5MTU5NSwgOTE2MDAsIDkxNjA1LCA5MTYxMCwgOTE2MTUsIDkxNjIwLCA5MTYyNSwgOTE2MzAsIDkxNjM1LCA5MTY0MCwgCi0gICAgOTE2NDUsIDkxNjUwLCA5MTY1NSwgMCwgMCwgMCwgOTE2NjAsIDkxNjY1LCA5MTY3NCwgOTE2ODIsIDkxNjkxLCA5MTcwMCwgCi0gICAgOTE3MTEsIDkxNzIyLCA5MTcyOSwgOTE3MzYsIDkxNzQzLCA5MTc1MCwgOTE3NTcsIDkxNzY0LCA5MTc3MSwgOTE3NzgsIAotICAgIDkxNzg1LCA5MTc5MiwgOTE3OTksIDkxODA2LCA5MTgxMywgOTE4MjAsIDkxODI3LCA5MTgzNCwgOTE4NDEsIDkxODQ4LCAKLSAgICA5MTg1NSwgOTE4NjIsIDkxODY5LCAwLCAwLCA5MTg3NiwgOTE4ODIsIDkxODg4LCA5MTg5NCwgOTE5MDAsIDkxOTA3LCAKLSAgICA5MTkxNCwgOTE5MjIsIDkxOTMwLCA5MTkzNywgOTE5NDQsIDkxOTUxLCA5MTk1OCwgOTE5NjUsIDkxOTcyLCA5MTk3OSwgCi0gICAgOTE5ODYsIDkxOTkzLCA5MjAwMCwgOTIwMDcsIDkyMDE0LCA5MjAyMSwgOTIwMjgsIDkyMDM1LCA5MjA0MiwgOTIwNDksIAotICAgIDkyMDU2LCAwLCAwLCAwLCAwLCAwLCA5MjA2MywgOTIwNjksIDkyMDc1LCA5MjA4MSwgOTIwODcsIDkyMDk0LCA5MjEwMSwgCi0gICAgOTIxMDksIDkyMTE3LCA5MjEyMywgOTIxMjksIDkyMTM2LCA5MjE0MiwgOTIxNDgsIDkyMTU0LCA5MjE2MCwgOTIxNjcsIAotICAgIDkyMTc0LCA5MjE4MSwgOTIxODgsIDkyMTk1LCA5MjIwMiwgOTIyMDksIDkyMjE2LCA5MjIyMywgOTIyMzAsIDkyMjM3LCAKLSAgICA5MjI0NCwgOTIyNTEsIDkyMjU4LCA5MjI2NSwgOTIyNzIsIDkyMjc5LCA5MjI4NiwgOTIyOTMsIDkyMzAwLCA5MjMwNywgCi0gICAgOTIzMTQsIDkyMzIxLCA5MjMyOCwgOTIzMzUsIDkyMzQyLCA5MjM0OSwgOTIzNTYsIDkyMzYzLCA5MjM3MCwgOTIzNzcsIAotICAgIDkyMzg0LCA5MjM5MSwgOTIzOTgsIDkyNDA1LCA5MjQxMiwgOTI0MTksIDkyNDI2LCA5MjQzMywgOTI0NDAsIDkyNDQ3LCAKLSAgICA5MjQ1NCwgOTI0NjEsIDkyNDY4LCA5MjQ3NSwgOTI0ODIsIDkyNDg5LCA5MjQ5NiwgOTI1MDMsIDkyNTEwLCA5MjUxNywgCi0gICAgOTI1MjQsIDkyNTMxLCA5MjUzOCwgOTI1NDUsIDkyNTUyLCA5MjU1OSwgOTI1NjYsIDkyNTczLCA5MjU4MCwgOTI1ODcsIAotICAgIDkyNTk0LCA5MjYwMSwgOTI2MDgsIDkyNjE1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MTc2NCwgCisgICAgOTE3NzAsIDkxNzc2LCA5MTc4MiwgOTE3ODgsIDkxNzk0LCA5MTgwMSwgOTE4MDgsIDkxODE1LCA5MTgyMSwgOTE4MjcsIAorICAgIDkxODMzLCA5MTg0MCwgOTE4NDcsIDkxODU0LCA5MTg2MCwgOTE4NjcsIDkxODc0LCA5MTg4MSwgOTE4ODgsIDkxODk0LCAKKyAgICA5MTkwMSwgOTE5MDgsIDkxOTE0LCA5MTkyMSwgOTE5MjgsIDkxOTM1LCA5MTk0MiwgOTE5NDksIDkxOTU1LCA5MTk2MiwgCisgICAgOTE5NjksIDkxOTc2LCA5MTk4MiwgOTE5ODgsIDkxOTk0LCA5MjAwMCwgOTIwMDYsIDkyMDEzLCA5MjAyMCwgOTIwMjYsIAorICAgIDkyMDMyLCA5MjAzOCwgOTIwNDUsIDkyMDUxLCA5MjA1OCwgOTIwNjUsIDkyMDcyLCA5MjA3OCwgOTIwODYsIDkyMDkzLCAKKyAgICA5MjA5OSwgOTIxMDYsIDkyMTEzLCA5MjEyMCwgOTIxMjYsIDAsIDAsIDAsIDAsIDAsIDAsIDkyMTMzLCA5MjE0MSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTIxNDksIDkyMTUzLCA5MjE1OCwgOTIxNjMsIDAsIAorICAgIDkyMTY5LCA5MjE3NCwgMCwgMCwgMCwgMCwgMCwgOTIxNzksIDkyMTg1LCA5MjE5MiwgOTIxOTcsIDkyMjAyLCA5MjIwNiwgCisgICAgOTIyMTEsIDkyMjE2LCAwLCA5MjIyMSwgOTIyMjYsIDkyMjMxLCAwLCA5MjIzNiwgOTIyNDEsIDkyMjQ2LCA5MjI1MSwgCisgICAgOTIyNTYsIDkyMjYxLCA5MjI2NiwgOTIyNzEsIDkyMjc2LCA5MjI4MSwgOTIyODYsIDkyMjkwLCA5MjI5NCwgOTIyOTksIAorICAgIDkyMzA0LCA5MjMwOSwgOTIzMTMsIDkyMzE3LCA5MjMyMSwgOTIzMjYsIDkyMzMxLCA5MjMzNiwgOTIzNDEsIDkyMzQ1LCAKKyAgICA5MjM1MCwgOTIzNTQsIDkyMzU5LCAwLCAwLCAwLCAwLCA5MjM2NCwgOTIzNzAsIDkyMzc1LCAwLCAwLCAwLCAwLCA5MjM4MCwgCisgICAgOTIzODQsIDkyMzg4LCA5MjM5MiwgOTIzOTYsIDkyNDAwLCA5MjQwNSwgOTI0MTAsIDkyNDE2LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA5MjQyMiwgOTI0MjgsIDkyNDM1LCA5MjQ0MSwgOTI0NDgsIDkyNDU0LCA5MjQ2MCwgOTI0NjYsIDkyNDczLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA5MjQ3OSwgOTI0ODcsIDkyNDk1LCA5MjUwMywgOTI1MTEsIDkyNTE5LCA5MjUyNywgOTI1MzUsIAorICAgIDkyNTQzLCA5MjU1MSwgOTI1NTksIDkyNTY3LCA5MjU3NSwgOTI1ODMsIDkyNTkxLCA5MjU5OSwgOTI2MDcsIDkyNjE1LCAKKyAgICA5MjYyMywgOTI2MzEsIDkyNjM5LCA5MjY0NywgOTI2NTUsIDkyNjYzLCA5MjY3MSwgOTI2NzksIDkyNjg3LCA5MjY5NSwgCisgICAgOTI3MDMsIDkyNzExLCA5MjcxOCwgOTI3MjYsIDkyNzM0LCA5MjczOCwgOTI3NDMsIDkyNzQ4LCA5Mjc1MywgOTI3NTgsIAorICAgIDkyNzYzLCA5Mjc2OCwgOTI3NzMsIDkyNzc3LCA5Mjc4MiwgOTI3ODYsIDkyNzkxLCA5Mjc5NSwgOTI4MDAsIDkyODA0LCAKKyAgICA5MjgwOSwgOTI4MTQsIDkyODE5LCA5MjgyNCwgOTI4MjksIDkyODM0LCA5MjgzOSwgOTI4NDQsIDkyODQ5LCA5Mjg1NCwgCisgICAgOTI4NTksIDkyODY0LCA5Mjg2OSwgOTI4NzQsIDkyODc5LCA5Mjg4NCwgOTI4ODksIDkyODk0LCA5Mjg5OSwgOTI5MDQsIAorICAgIDkyOTA5LCA5MjkxNCwgOTI5MTksIDkyOTI0LCA5MjkyOSwgOTI5MzQsIDkyOTM5LCA5Mjk0NCwgOTI5NDksIDkyOTU0LCAKKyAgICA5Mjk1OSwgOTI5NjQsIDkyOTY5LCA5Mjk3NCwgOTI5NzksIDkyOTg0LCA5Mjk4OSwgOTI5OTQsIDAsIDAsIDAsIDkyOTk5LCAKKyAgICA5MzAwNCwgOTMwMTMsIDkzMDIxLCA5MzAzMCwgOTMwMzksIDkzMDUwLCA5MzA2MSwgOTMwNjgsIDkzMDc1LCA5MzA4MiwgCisgICAgOTMwODksIDkzMDk2LCA5MzEwMywgOTMxMTAsIDkzMTE3LCA5MzEyNCwgOTMxMzEsIDkzMTM4LCA5MzE0NSwgOTMxNTIsIAorICAgIDkzMTU5LCA5MzE2NiwgOTMxNzMsIDkzMTgwLCA5MzE4NywgOTMxOTQsIDkzMjAxLCA5MzIwOCwgMCwgMCwgOTMyMTUsIAorICAgIDkzMjIxLCA5MzIyNywgOTMyMzMsIDkzMjM5LCA5MzI0NiwgOTMyNTMsIDkzMjYxLCA5MzI2OSwgOTMyNzYsIDkzMjgzLCAKKyAgICA5MzI5MCwgOTMyOTcsIDkzMzA0LCA5MzMxMSwgOTMzMTgsIDkzMzI1LCA5MzMzMiwgOTMzMzksIDkzMzQ2LCA5MzM1MywgCisgICAgOTMzNjAsIDkzMzY3LCA5MzM3NCwgOTMzODEsIDkzMzg4LCA5MzM5NSwgMCwgMCwgMCwgMCwgMCwgOTM0MDIsIDkzNDA4LCAKKyAgICA5MzQxNCwgOTM0MjAsIDkzNDI2LCA5MzQzMywgOTM0NDAsIDkzNDQ4LCA5MzQ1NiwgOTM0NjIsIDkzNDY4LCA5MzQ3NSwgCisgICAgOTM0ODEsIDkzNDg3LCA5MzQ5MywgOTM0OTksIDkzNTA2LCA5MzUxMywgOTM1MjAsIDkzNTI3LCA5MzUzNCwgOTM1NDEsIAorICAgIDkzNTQ4LCA5MzU1NSwgOTM1NjIsIDkzNTY5LCA5MzU3NiwgOTM1ODMsIDkzNTkwLCA5MzU5NywgOTM2MDQsIDkzNjExLCAKKyAgICA5MzYxOCwgOTM2MjUsIDkzNjMyLCA5MzYzOSwgOTM2NDYsIDkzNjUzLCA5MzY2MCwgOTM2NjcsIDkzNjc0LCA5MzY4MSwgCisgICAgOTM2ODgsIDkzNjk1LCA5MzcwMiwgOTM3MDksIDkzNzE2LCA5MzcyMywgOTM3MzAsIDkzNzM3LCA5Mzc0NCwgOTM3NTEsIAorICAgIDkzNzU4LCA5Mzc2NSwgOTM3NzIsIDkzNzc5LCA5Mzc4NiwgOTM3OTMsIDkzODAwLCA5MzgwNywgOTM4MTQsIDkzODIxLCAKKyAgICA5MzgyOCwgOTM4MzUsIDkzODQyLCA5Mzg0OSwgOTM4NTYsIDkzODYzLCA5Mzg3MCwgOTM4NzcsIDkzODg0LCA5Mzg5MSwgCisgICAgOTM4OTgsIDkzOTA1LCA5MzkxMiwgOTM5MTksIDkzOTI2LCA5MzkzMywgOTM5NDAsIDkzOTQ3LCA5Mzk1NCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTI2MjIsIDkyNjI2LCA5MjYzMCwgCi0gICAgOTI2MzQsIDkyNjM4LCA5MjY0MiwgOTI2NDYsIDkyNjUwLCA5MjY1NCwgOTI2NTgsIDkyNjYzLCA5MjY2OCwgOTI2NzMsIAotICAgIDkyNjc4LCA5MjY4MywgOTI2ODgsIDkyNjkzLCA5MjY5OCwgOTI3MDMsIDkyNzA5LCA5MjcxNSwgOTI3MjEsIDkyNzI4LCAKLSAgICA5MjczNSwgOTI3NDIsIDkyNzQ5LCA5Mjc1NiwgOTI3NjMsIDkyNzcwLCA5Mjc3NywgOTI3ODQsIDAsIDkyNzkxLCA5Mjc5NSwgCi0gICAgOTI3OTksIDkyODAzLCA5MjgwNywgOTI4MTEsIDkyODE0LCA5MjgxOCwgOTI4MjEsIDkyODI1LCA5MjgyOCwgOTI4MzIsIAotICAgIDkyODM2LCA5Mjg0MSwgOTI4NDUsIDkyODUwLCA5Mjg1MywgOTI4NTcsIDkyODYwLCA5Mjg2NCwgOTI4NjcsIDkyODcxLCAKLSAgICA5Mjg3NSwgOTI4NzksIDkyODgzLCA5Mjg4NywgOTI4OTEsIDkyODk1LCA5Mjg5OSwgOTI5MDMsIDkyOTA3LCA5MjkxMSwgCi0gICAgOTI5MTUsIDkyOTE5LCA5MjkyMywgOTI5MjcsIDkyOTMxLCA5MjkzNSwgOTI5MzksIDkyOTQyLCA5Mjk0NSwgOTI5NDksIAotICAgIDkyOTUzLCA5Mjk1NywgOTI5NjAsIDkyOTYzLCA5Mjk2NiwgOTI5NzAsIDkyOTc0LCA5Mjk3OCwgOTI5ODIsIDkyOTg2LCAKLSAgICA5Mjk4OSwgOTI5OTMsIDkyOTk5LCA5MzAwNSwgOTMwMTEsIDkzMDE2LCA5MzAyMywgOTMwMjcsIDkzMDMyLCA5MzAzNiwgCi0gICAgOTMwNDEsIDkzMDQ2LCA5MzA1MiwgOTMwNTcsIDkzMDYzLCA5MzA2NywgOTMwNzIsIDkzMDc2LCA5MzA4MSwgOTMwODQsIAotICAgIDkzMDg3LCA5MzA5MSwgOTMwOTYsIDkzMTAyLCA5MzEwNywgOTMxMTMsIDAsIDAsIDAsIDAsIDkzMTE4LCA5MzEyMSwgCi0gICAgOTMxMjQsIDkzMTI3LCA5MzEzMCwgOTMxMzMsIDkzMTM2LCA5MzEzOSwgOTMxNDIsIDkzMTQ1LCA5MzE0OSwgOTMxNTMsIAotICAgIDkzMTU3LCA5MzE2MSwgOTMxNjUsIDkzMTY5LCA5MzE3MywgOTMxNzcsIDkzMTgxLCA5MzE4NiwgOTMxOTEsIDkzMTk1LCAKLSAgICA5MzE5OCwgOTMyMDEsIDkzMjA0LCA5MzIwNywgOTMyMTAsIDkzMjEzLCA5MzIxNiwgOTMyMTksIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkzMjIyLCA5MzIyNiwgOTMyMzAsIDkzMjM0LCA5MzIzNywgOTMyNDEsIAotICAgIDkzMjQ0LCA5MzI0OCwgOTMyNTEsIDkzMjU1LCA5MzI1OCwgOTMyNjIsIDkzMjY1LCA5MzI2OSwgOTMyNzIsIDkzMjc2LCAKLSAgICA5MzI4MCwgOTMyODQsIDkzMjg4LCA5MzI5MiwgOTMyOTYsIDkzMzAwLCA5MzMwNCwgOTMzMDgsIDkzMzEyLCA5MzMxNiwgCi0gICAgOTMzMjAsIDkzMzI0LCA5MzMyOCwgOTMzMzIsIDkzMzM2LCA5MzM0MCwgOTMzNDQsIDkzMzQ4LCA5MzM1MiwgOTMzNTUsIAotICAgIDkzMzU4LCA5MzM2MiwgOTMzNjYsIDkzMzcwLCA5MzM3MywgOTMzNzYsIDkzMzc5LCA5MzM4MywgOTMzODcsIDkzMzkxLCAKLSAgICA5MzM5NSwgOTMzOTksIDkzNDAyLCA5MzQwNywgOTM0MTEsIDkzNDE2LCA5MzQyMCwgOTM0MjUsIDkzNDI5LCA5MzQzNCwgCi0gICAgOTM0MzgsIDkzNDQzLCA5MzQ0NywgOTM0NTEsIDkzNDU1LCA5MzQ1OSwgOTM0NjIsIDkzNDY2LCA5MzQ3MSwgOTM0NzQsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDkzOTYxLCA5Mzk2NSwgOTM5NjksIDkzOTczLCA5Mzk3NywgOTM5ODEsIDkzOTg1LCA5Mzk4OSwgCisgICAgOTM5OTMsIDkzOTk3LCA5NDAwMiwgOTQwMDcsIDk0MDEyLCA5NDAxNywgOTQwMjIsIDk0MDI3LCA5NDAzMiwgOTQwMzcsIAorICAgIDk0MDQyLCA5NDA0OCwgOTQwNTQsIDk0MDYwLCA5NDA2NywgOTQwNzQsIDk0MDgxLCA5NDA4OCwgOTQwOTUsIDk0MTAyLCAKKyAgICA5NDEwOSwgOTQxMTYsIDk0MTIzLCAwLCA5NDEzMCwgOTQxMzQsIDk0MTM4LCA5NDE0MiwgOTQxNDYsIDk0MTUwLCA5NDE1MywgCisgICAgOTQxNTcsIDk0MTYwLCA5NDE2NCwgOTQxNjcsIDk0MTcxLCA5NDE3NSwgOTQxODAsIDk0MTg0LCA5NDE4OSwgOTQxOTIsIAorICAgIDk0MTk2LCA5NDE5OSwgOTQyMDMsIDk0MjA2LCA5NDIxMCwgOTQyMTQsIDk0MjE4LCA5NDIyMiwgOTQyMjYsIDk0MjMwLCAKKyAgICA5NDIzNCwgOTQyMzgsIDk0MjQyLCA5NDI0NiwgOTQyNTAsIDk0MjU0LCA5NDI1OCwgOTQyNjIsIDk0MjY2LCA5NDI3MCwgCisgICAgOTQyNzQsIDk0Mjc4LCA5NDI4MSwgOTQyODQsIDk0Mjg4LCA5NDI5MiwgOTQyOTYsIDk0Mjk5LCA5NDMwMiwgOTQzMDUsIAorICAgIDk0MzA5LCA5NDMxMywgOTQzMTcsIDk0MzIxLCA5NDMyNCwgOTQzMjcsIDk0MzMxLCA5NDMzNywgOTQzNDMsIDk0MzQ5LCAKKyAgICA5NDM1NCwgOTQzNjEsIDk0MzY1LCA5NDM3MCwgOTQzNzQsIDk0Mzc5LCA5NDM4NCwgOTQzOTAsIDk0Mzk1LCA5NDQwMSwgCisgICAgOTQ0MDUsIDk0NDEwLCA5NDQxNCwgOTQ0MTksIDk0NDIyLCA5NDQyNSwgOTQ0MjksIDk0NDM0LCA5NDQ0MCwgOTQ0NDUsIAorICAgIDk0NDUxLCAwLCAwLCAwLCAwLCA5NDQ1NiwgOTQ0NTksIDk0NDYyLCA5NDQ2NSwgOTQ0NjgsIDk0NDcxLCA5NDQ3NCwgCisgICAgOTQ0NzcsIDk0NDgwLCA5NDQ4MywgOTQ0ODcsIDk0NDkxLCA5NDQ5NSwgOTQ0OTksIDk0NTAzLCA5NDUwNywgOTQ1MTEsIAorICAgIDk0NTE1LCA5NDUxOSwgOTQ1MjQsIDk0NTI5LCA5NDUzMywgOTQ1MzYsIDk0NTM5LCA5NDU0MiwgOTQ1NDUsIDk0NTQ4LCAKKyAgICA5NDU1MSwgOTQ1NTQsIDk0NTU3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA5NDU2MCwgOTQ1NjUsIDk0NTcwLCA5NDU3NSwgOTQ1NzksIDk0NTg0LCA5NDU4OCwgOTQ1OTMsIDk0NTk3LCA5NDYwMiwgCisgICAgOTQ2MDYsIDk0NjExLCA5NDYxNSwgOTQ2MjAsIDk0NjI0LCA5NDYyOSwgOTQ2MzQsIDk0NjM5LCA5NDY0NCwgOTQ2NDksIAorICAgIDk0NjU0LCA5NDY1OSwgOTQ2NjQsIDk0NjY5LCA5NDY3NCwgOTQ2NzksIDk0Njg0LCA5NDY4OSwgOTQ2OTQsIDk0Njk5LCAKKyAgICA5NDcwNCwgOTQ3MDksIDk0NzE0LCA5NDcxOSwgOTQ3MjQsIDk0NzI4LCA5NDczMiwgOTQ3MzcsIDk0NzQyLCA5NDc0NywgCisgICAgOTQ3NTEsIDk0NzU1LCA5NDc1OSwgOTQ3NjQsIDk0NzY5LCA5NDc3NCwgOTQ3NzksIDk0NzgzLCA5NDc4NywgOTQ3OTMsIAorICAgIDk0Nzk4LCA5NDgwNCwgOTQ4MDksIDk0ODE1LCA5NDgyMCwgOTQ4MjYsIDk0ODMxLCA5NDgzNywgOTQ4NDIsIDk0ODQ3LCAKKyAgICA5NDg1MiwgOTQ4NTcsIDk0ODYxLCA5NDg2NiwgOTQ4NzIsIDk0ODc2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA5NDg4MSwgOTQ4ODgsIDk0ODk1LCA5NDkwMiwgOTQ5MDksIDk0OTE2LCA5NDkyMywgOTQ5MzAsIAorICAgIDk0OTM3LCA5NDk0NCwgOTQ5NTEsIDk0OTU4LCA5NDk2NSwgOTQ5NzIsIDk0OTc5LCA5NDk4NiwgOTQ5OTMsIDk1MDAwLCAKKyAgICA5NTAwNywgOTUwMTQsIDk1MDIxLCA5NTAyOCwgOTUwMzUsIDk1MDQyLCA5NTA0OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgOTUwNTYsIDk1MDYzLCA5NTA2OSwgOTUwNzUsIDk1MDgxLCA5NTA4NywgOTUwOTMsIDk1MDk5LCA5NTEwNSwgOTUxMTEsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDk1MTE3LCA5NTEyMiwgOTUxMjcsIDk1MTMyLCA5NTEzNywgOTUxNDEsIDk1MTQ1LCA5NTE0OSwgCisgICAgOTUxNTQsIDk1MTU5LCA5NTE2NCwgOTUxNjksIDk1MTc0LCA5NTE3OSwgOTUxODQsIDk1MTg5LCA5NTE5NCwgOTUxOTksIAorICAgIDk1MjA0LCA5NTIwOSwgOTUyMTQsIDk1MjE5LCA5NTIyNCwgOTUyMjksIDk1MjM0LCA5NTIzOSwgOTUyNDQsIDk1MjQ5LCAKKyAgICA5NTI1NCwgOTUyNTksIDk1MjY0LCA5NTI2OSwgOTUyNzQsIDk1Mjc5LCA5NTI4NCwgOTUyODksIDk1Mjk0LCA5NTI5OSwgCisgICAgOTUzMDQsIDk1MzA5LCA5NTMxNCwgOTUzMTksIDk1MzI1LCA5NTMzMCwgOTUzMzYsIDk1MzQxLCA5NTM0NywgOTUzNTIsIAorICAgIDk1MzU4LCA5NTM2NCwgOTUzNjgsIDk1MzczLCA5NTM3NywgMCwgOTUzODEsIDk1Mzg2LCA5NTM5MCwgOTUzOTQsIDk1Mzk4LCAKKyAgICA5NTQwMiwgOTU0MDYsIDk1NDEwLCA5NTQxNCwgOTU0MTgsIDk1NDIyLCA5NTQyNywgOTU0MzEsIDk1NDM2LCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MzQ3OCwgOTM0ODEsIDkzNDg2LCA5MzQ5MiwgOTM1MDAsIAotICAgIDkzNTA1LCA5MzUxMSwgOTM1MTksIDkzNTI1LCA5MzUzMSwgOTM1MzUsIDkzNTM5LCA5MzU0NiwgOTM1NTUsIDkzNTYyLCAKLSAgICA5MzU3MSwgOTM1NzcsIDkzNTg2LCA5MzU5MywgOTM2MDAsIDkzNjA3LCA5MzYxNywgOTM2MjMsIDkzNjI3LCA5MzYzNCwgCi0gICAgOTM2NDMsIDkzNjUzLCA5MzY2MCwgOTM2NjcsIDkzNjcxLCA5MzY3NSwgOTM2ODIsIDkzNjkyLCA5MzY5NiwgOTM3MDMsIAotICAgIDkzNzEwLCA5MzcxNywgOTM3MjMsIDkzNzMwLCA5MzczNywgOTM3NDQsIDkzNzUxLCA5Mzc1NSwgOTM3NTksIDkzNzYzLCAKLSAgICA5Mzc3MCwgOTM3NzQsIDkzNzgxLCA5Mzc4OCwgOTM4MDIsIDkzODExLCA5MzgxNSwgOTM4MTksIDkzODIzLCA5MzgzMCwgCi0gICAgOTM4MzQsIDkzODM4LCA5Mzg0MiwgOTM4NTAsIDkzODU4LCA5Mzg3NywgOTM4ODcsIDkzOTA3LCA5MzkxMSwgOTM5MTUsIAotICAgIDkzOTE5LCA5MzkyMywgOTM5MjcsIDkzOTMxLCA5MzkzNSwgOTM5NDIsIDkzOTQ2LCA5Mzk0OSwgOTM5NTMsIDkzOTU3LCAKLSAgICA5Mzk2MywgOTM5NzAsIDkzOTc5LCA5Mzk4MywgOTM5OTIsIDk0MDAxLCA5NDAwOSwgOTQwMTMsIDk0MDIwLCA5NDAyNCwgCi0gICAgOTQwMjgsIDk0MDMyLCA5NDAzNiwgOTQwNDcsIDk0MDU2LCA5NDA2NSwgOTQwNzQsIDk0MDgzLCA5NDA5NSwgOTQxMDQsIAotICAgIDk0MTEzLCA5NDEyMiwgOTQxMzAsIDk0MTM5LCA5NDE1MSwgOTQxNjAsIDk0MTY5LCA5NDE3OCwgOTQxOTAsIDk0MTk5LCAKLSAgICA5NDIwOCwgOTQyMjAsIDk0MjI5LCA5NDIzOCwgOTQyNTAsIDk0MjU5LCA5NDI2MywgOTQyNjcsIDk0MjcxLCA5NDI3NSwgCi0gICAgOTQyNzksIDk0MjgzLCA5NDI4NywgOTQyOTQsIDk0Mjk4LCA5NDMwMiwgOTQzMTMsIDk0MzE3LCA5NDMyMSwgOTQzMjgsIAotICAgIDk0MzM0LCA5NDM0MCwgOTQzNDQsIDk0MzUxLCA5NDM1NSwgOTQzNTksIDk0MzYzLCA5NDM2NywgOTQzNzEsIDk0Mzc1LCAKLSAgICA5NDM4MSwgOTQzODksIDk0MzkzLCA5NDM5NywgOTQ0MDAsIDk0NDA2LCA5NDQxNiwgOTQ0MjAsIDk0NDMyLCA5NDQzOSwgCi0gICAgOTQ0NDYsIDk0NDUzLCA5NDQ2MCwgOTQ0NjYsIDk0NDcwLCA5NDQ3NCwgOTQ0NzgsIDk0NDgyLCA5NDQ4OSwgOTQ0OTgsIAotICAgIDk0NTA1LCA5NDUxMywgOTQ1MjEsIDk0NTI3LCA5NDUzMSwgOTQ1MzUsIDk0NTM5LCA5NDU0MywgOTQ1NDksIDk0NTU4LCAKLSAgICA5NDU3MCwgOTQ1NzcsIDk0NTg0LCA5NDU5MywgOTQ2MDQsIDk0NjEwLCA5NDYxOSwgOTQ2MjgsIDk0NjM1LCA5NDY0NCwgCi0gICAgOTQ2NTEsIDk0NjU4LCA5NDY2OCwgOTQ2NzUsIDk0NjgyLCA5NDY4OSwgOTQ2OTYsIDk0NzAwLCA5NDcwNiwgOTQ3MTAsIAotICAgIDk0NzIxLCA5NDcyOSwgOTQ3MzgsIDk0NzUwLCA5NDc1NywgOTQ3NjQsIDk0Nzc0LCA5NDc4MSwgOTQ3OTAsIDk0Nzk3LCAKLSAgICA5NDgwNiwgOTQ4MTMsIDk0ODIwLCA5NDgzMCwgOTQ4MzcsIDk0ODQ0LCA5NDg1NCwgOTQ4NjEsIDk0ODczLCA5NDg4MiwgCi0gICAgOTQ4ODksIDk0ODk2LCA5NDkwMywgOTQ5MTIsIDk0OTIyLCA5NDkzNSwgOTQ5NDIsIDk0OTUyLCA5NDk2MiwgOTQ5NjksIAotICAgIDk0OTc4LCA5NDk5MSwgOTQ5OTgsIDk1MDA1LCA5NTAxMiwgOTUwMjIsIDk1MDMyLCA5NTAzOSwgOTUwNDksIDk1MDU2LCAKLSAgICA5NTA2MywgOTUwNzMsIDk1MDc5LCA5NTA4NiwgOTUwOTMsIDk1MTAwLCA5NTExMCwgOTUxMTcsIDk1MTI0LCA5NTEzMSwgCi0gICAgOTUxMzcsIDk1MTQ0LCA5NTE1NCwgOTUxNjEsIDk1MTY1LCA5NTE3MywgOTUxNzcsIDk1MTg5LCA5NTE5MywgOTUyMDcsIAotICAgIDk1MjExLCA5NTIxNSwgOTUyMTksIDk1MjIzLCA5NTIyOSwgOTUyMzYsIDk1MjQ0LCA5NTI0OCwgOTUyNTIsIDk1MjU2LCAKLSAgICA5NTI2MCwgOTUyNjcsIDk1MjcxLCA5NTI3NywgOTUyODMsIDk1MjkxLCA5NTI5NSwgOTUzMDIsIDk1MzEwLCA5NTMxNCwgCi0gICAgOTUzMTgsIDk1MzI0LCA5NTMyOCwgOTUzMzcsIDk1MzQ2LCA5NTM1MywgOTUzNjMsIDk1MzY5LCA5NTM3MywgOTUzNzcsIAotICAgIDk1Mzg1LCA5NTM5MiwgOTUzOTksIDk1NDA1LCA5NTQwOSwgOTU0MTcsIDk1NDIxLCA5NTQyOCwgOTU0NDAsIDk1NDQ3LCAKLSAgICA5NTQ1NywgOTU0NjMsIDk1NDY3LCA5NTQ3NiwgOTU0ODMsIDk1NDkyLCA5NTQ5NiwgOTU1MDAsIDk1NTA3LCA5NTUxMSwgCi0gICAgOTU1MTUsIDk1NTE5LCA5NTUyMywgOTU1MjYsIDk1NTMyLCA5NTUzOCwgOTU1NDIsIDk1NTQ2LCA5NTU1MywgOTU1NjAsIAotICAgIDk1NTY3LCA5NTU3NCwgOTU1ODEsIDk1NTg4LCA5NTU5NSwgOTU2MDIsIDk1NjA4LCA5NTYxMiwgOTU2MTYsIDk1NjIzLCAKLSAgICA5NTYzMCwgOTU2MzcsIDk1NjQ0LCA5NTY1MSwgOTU2NTUsIDk1NjU4LCA5NTY2MywgOTU2NjcsIDk1NjcxLCA5NTY4MCwgCi0gICAgOTU2ODksIDk1NjkzLCA5NTY5NywgOTU3MDMsIDk1NzA5LCA5NTcyNiwgOTU3MzIsIDk1NzM2LCA5NTc0NSwgOTU3NDksIAotICAgIDk1NzUzLCA5NTc2MCwgOTU3NjgsIDk1Nzc2LCA5NTc4MiwgOTU3ODYsIDk1NzkwLCA5NTc5NCwgOTU3OTgsIDk1ODAxLCAKLSAgICA5NTgwNywgOTU4MTQsIDk1ODI0LCA5NTgzMSwgOTU4MzgsIDk1ODQ1LCA5NTg1MSwgOTU4NTgsIDk1ODY1LCA5NTg3MiwgCi0gICAgOTU4NzksIDk1ODg2LCA5NTg5NSwgOTU5MDIsIDk1OTE0LCA5NTkyMSwgOTU5MjgsIDk1OTM4LCA5NTk0OSwgOTU5NTYsIAotICAgIDk1OTYzLCA5NTk3MCwgOTU5NzcsIDk1OTg0LCA5NTk5MSwgOTU5OTgsIDk2MDA1LCA5NjAxMiwgOTYwMTksIDk2MDI5LCAKLSAgICA5NjAzOSwgOTYwNDksIDk2MDU2LCA5NjA2NiwgOTYwNzMsIDk2MDgwLCA5NjA4NywgOTYwOTQsIDk2MTAxLCA5NjEwOCwgCi0gICAgOTYxMTUsIDk2MTIyLCA5NjEyOSwgOTYxMzYsIDk2MTQzLCA5NjE1MCwgOTYxNTcsIDk2MTYzLCA5NjE3MCwgOTYxNzcsIAotICAgIDk2MTg2LCA5NjE5MywgOTYyMDAsIDk2MjA0LCA5NjIxMiwgOTYyMTYsIDk2MjIwLCA5NjIyNCwgOTYyMjgsIDk2MjMyLCAKLSAgICA5NjIzOSwgOTYyNDMsIDk2MjUyLCA5NjI1NiwgOTYyNjMsIDk2MjcxLCA5NjI3NSwgOTYyNzksIDk2MjgzLCA5NjI5NiwgCi0gICAgOTYzMTIsIDk2MzE2LCA5NjMyMCwgOTYzMjcsIDk2MzMzLCA5NjM0MCwgOTYzNDQsIDk2MzQ4LCA5NjM1MiwgOTYzNTYsIAotICAgIDk2MzYwLCA5NjM2NywgOTYzNzEsIDk2Mzg5LCA5NjM5MywgOTYzOTcsIDk2NDA0LCA5NjQwOCwgOTY0MTIsIDk2NDE4LCAKLSAgICA5NjQyMiwgOTY0MjYsIDk2NDM0LCA5NjQzOCwgOTY0NDIsIDk2NDQ2LCA5NjQ1MCwgOTY0NTYsIDk2NDY3LCA5NjQ3NiwgCi0gICAgOTY0ODUsIDk2NDkyLCA5NjQ5OSwgOTY1MTAsIDk2NTE3LCA5NjUyNCwgOTY1MzEsIDk2NTM4LCA5NjU0NSwgOTY1NTIsIAotICAgIDk2NTU5LCA5NjU2OSwgOTY1NzUsIDk2NTgyLCA5NjU5MiwgOTY2MDEsIDk2NjA4LCA5NjYxNywgOTY2MjcsIDk2NjM0LCAKLSAgICA5NjY0MSwgOTY2NDgsIDk2NjU1LCA5NjY2NywgOTY2NzQsIDk2NjgxLCA5NjY4OCwgOTY2OTUsIDk2NzAyLCA5NjcxMiwgCi0gICAgOTY3MTksIDk2NzI2LCA5NjczNiwgOTY3NDksIDk2NzYxLCA5Njc2OCwgOTY3NzgsIDk2Nzg1LCA5Njc5MiwgOTY3OTksIAotICAgIDk2ODEzLCA5NjgxOSwgOTY4MjcsIDk2ODM3LCA5Njg0NywgOTY4NTQsIDk2ODYxLCA5Njg2NywgOTY4NzEsIDk2ODc4LCAKLSAgICA5Njg4OCwgOTY4OTQsIDk2OTA3LCA5NjkxMSwgOTY5MTUsIDk2OTIyLCA5NjkyNiwgOTY5MzMsIDk2OTQzLCA5Njk0NywgCi0gICAgOTY5NTEsIDk2OTU1LCA5Njk1OSwgOTY5NjMsIDk2OTcwLCA5Njk3NCwgOTY5ODEsIDk2OTg4LCA5Njk5NSwgOTcwMDQsIAotICAgIDk3MDEzLCA5NzAyMywgOTcwMzAsIDk3MDM3LCA5NzA0NCwgOTcwNTQsIDk3MDYxLCA5NzA3MSwgOTcwNzgsIDk3MDg4LCAKLSAgICA5NzA5NSwgOTcxMDIsIDk3MTEyLCA5NzEyMiwgOTcxMjksIDk3MTM1LCA5NzE0MywgOTcxNTEsIDk3MTU3LCA5NzE2MywgCi0gICAgOTcxNjcsIDk3MTcxLCA5NzE3OCwgOTcxODYsIDk3MTkyLCA5NzE5NiwgOTcyMDAsIDk3MjA0LCA5NzIxMSwgOTcyMjMsIAotICAgIDk3MjI2LCA5NzIzMywgOTcyMzksIDk3MjQzLCA5NzI0NywgOTcyNTEsIDk3MjU1LCA5NzI1OSwgOTcyNjMsIDk3MjY3LCAKLSAgICA5NzI3MSwgOTcyNzUsIDk3Mjc5LCA5NzI4NiwgOTcyOTAsIDk3Mjk2LCA5NzMwMCwgOTczMDQsIDk3MzA4LCA5NzMxNCwgCi0gICAgOTczMjEsIDk3MzI4LCA5NzMzNSwgOTczNDYsIDk3MzU0LCA5NzM1OCwgOTczNjQsIDk3MzczLCA5NzM4MCwgOTczODYsIAotICAgIDk3Mzg5LCA5NzM5MywgOTczOTcsIDk3NDAzLCA5NzQxMiwgOTc0MjAsIDk3NDI0LCA5NzQzMCwgOTc0MzQsIDk3NDM4LCAKLSAgICA5NzQ0MiwgOTc0NDgsIDk3NDU1LCA5NzQ2MSwgOTc0NjUsIDk3NDcxLCA5NzQ3NSwgOTc0NzksIDk3NDg4LCA5NzUwMCwgCi0gICAgOTc1MDQsIDk3NTExLCA5NzUxOCwgOTc1MjgsIDk3NTM1LCA5NzU0NywgOTc1NTQsIDk3NTYxLCA5NzU2OCwgOTc1NzksIAotICAgIDk3NTg5LCA5NzYwMiwgOTc2MTIsIDk3NjE5LCA5NzYyMywgOTc2MjcsIDk3NjMxLCA5NzYzNSwgOTc2NDQsIDk3NjUzLCAKLSAgICA5NzY2MiwgOTc2NzksIDk3Njg4LCA5NzY5NCwgOTc3MDEsIDk3NzA5LCA5NzcyMiwgOTc3MjYsIDk3NzM1LCA5Nzc0NCwgCi0gICAgOTc3NTMsIDk3NzYyLCA5Nzc3MywgOTc3ODIsIDk3NzkxLCA5NzgwMCwgOTc4MDksIDk3ODE4LCA5NzgyNywgOTc4MzcsIAotICAgIDk3ODQwLCA5Nzg0NCwgOTc4NDgsIDk3ODUyLCA5Nzg1NiwgOTc4NjAsIDk3ODY2LCA5Nzg3MywgOTc4ODAsIDk3ODg3LCAKLSAgICA5Nzg5MywgOTc4OTksIDk3OTA2LCA5NzkxMiwgOTc5MTksIDk3OTI3LCA5NzkzMSwgOTc5MzgsIDk3OTQ1LCA5Nzk1MiwgCi0gICAgOTc5NjAsIDk3OTYzLCA5Nzk2NywgOTc5NzEsIDk3OTc1LCA5Nzk3OSwgOTc5ODUsIDk3OTg5LCA5Nzk5NSwgOTgwMDIsIAotICAgIDk4MDA5LCA5ODAxNSwgOTgwMjIsIDk4MDI5LCA5ODAzNiwgOTgwNDMsIDk4MDUwLCA5ODA1NywgOTgwNjQsIDk4MDcxLCAKLSAgICA5ODA3OCwgOTgwODUsIDk4MDkyLCA5ODA5OSwgOTgxMDYsIDk4MTEzLCA5ODExOSwgOTgxMjMsIDk4MTMyLCA5ODEzNiwgCi0gICAgOTgxNDAsIDk4MTQ0LCA5ODE0OCwgOTgxNTQsIDk4MTYxLCA5ODE2OCwgOTgxNzUsIDk4MTgyLCA5ODE4OSwgOTgxOTUsIAotICAgIDk4MjAzLCA5ODIwNywgOTgyMTEsIDk4MjE1LCA5ODIxOSwgOTgyMjUsIDk4MjQyLCA5ODI1OSwgOTgyNjMsIDk4MjY3LCAKLSAgICA5ODI3MSwgOTgyNzUsIDk4Mjc5LCA5ODI4MywgOTgyODksIDk4Mjk2LCA5ODMwMCwgOTgzMDYsIDk4MzEzLCA5ODMyMCwgCi0gICAgOTgzMjcsIDk4MzM0LCA5ODM0MSwgOTgzNTAsIDk4MzU3LCA5ODM2NCwgOTgzNzEsIDk4Mzc4LCA5ODM4MiwgOTgzODYsIAotICAgIDk4MzkyLCA5ODQwNCwgOTg0MDgsIDk4NDEyLCA5ODQyMSwgOTg0MjUsIDk4NDI5LCA5ODQzMywgOTg0MzksIDk4NDQzLCAKLSAgICA5ODQ0NywgOTg0NTYsIDk4NDYwLCA5ODQ2NCwgOTg0NjgsIDk4NDc1LCA5ODQ3OSwgOTg0ODMsIDk4NDg3LCA5ODQ5MSwgCi0gICAgOTg0OTUsIDk4NDk5LCA5ODUwMywgOTg1MDcsIDk4NTEzLCA5ODUyMCwgOTg1MjcsIDk4NTMzLCA5ODUzNywgOTg1NTQsIAotICAgIDk4NTYwLCA5ODU2NCwgOTg1NzAsIDk4NTc2LCA5ODU4MiwgOTg1ODgsIDk4NTk0LCA5ODYwMCwgOTg2MDQsIDk4NjA4LCAKLSAgICA5ODYxMiwgOTg2MTgsIDk4NjIyLCA5ODYyOCwgOTg2MzIsIDk4NjM2LCA5ODY0MywgOTg2NTAsIDk4NjY3LCA5ODY3MSwgCi0gICAgOTg2NzUsIDk4Njc5LCA5ODY4MywgOTg2ODcsIDk4Njk5LCA5ODcwMiwgOTg3MDcsIDk4NzEyLCA5ODcyNywgOTg3MzcsIAotICAgIDk4NzQ5LCA5ODc1MywgOTg3NTcsIDk4NzYxLCA5ODc2NywgOTg3NzQsIDk4NzgxLCA5ODc5MSwgOTg4MDMsIDk4ODA5LCAKLSAgICA5ODgxNSwgOTg4MjQsIDk4ODI4LCA5ODgzMiwgOTg4MzksIDk4ODQ5LCA5ODg1NiwgOTg4NjIsIDk4ODY2LCA5ODg3MCwgCi0gICAgOTg4NzcsIDk4ODgzLCA5ODg4NywgOTg4OTMsIDk4ODk3LCA5ODkwNSwgOTg5MTEsIDk4OTE1LCA5ODkyMywgOTg5MzEsIAotICAgIDk4OTM4LCA5ODk0NCwgOTg5NTEsIDk4OTU4LCA5ODk2OCwgOTg5NzgsIDk4OTgyLCA5ODk4NiwgOTg5OTAsIDk4OTk0LCAKLSAgICA5OTAwMCwgOTkwMDcsIDk5MDEzLCA5OTAyMCwgOTkwMjcsIDk5MDM0LCA5OTA0MywgOTkwNTAsIDk5MDU3LCA5OTA2MywgCi0gICAgOTkwNzAsIDk5MDc3LCA5OTA4NCwgOTkwOTEsIDk5MDk4LCA5OTEwNSwgOTkxMTEsIDk5MTE4LCA5OTEyNSwgOTkxMzIsIAotICAgIDk5MTQxLCA5OTE0OCwgOTkxNTUsIDk5MTU5LCA5OTE2NSwgOTkxNjksIDk5MTc1LCA5OTE4MiwgOTkxODksIDk5MTk2LCAKLSAgICA5OTIwMCwgOTkyMDQsIDk5MjA4LCA5OTIxMiwgOTkyMTYsIDk5MjIzLCA5OTIyNywgOTkyMzEsIDk5MjM3LCA5OTI0NSwgCi0gICAgOTkyNDksIDk5MjUzLCA5OTI1NywgOTkyNjEsIDk5MjY4LCA5OTI3MiwgOTkyNzYsIDk5Mjg0LCA5OTI4OCwgOTkyOTIsIAotICAgIDk5Mjk2LCA5OTMwMCwgOTkzMDYsIDk5MzEwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA5OTMxNCwgOTkzMjAsIDk5MzI2LCA5OTMzMywgOTkzNDAsIDk5MzQ3LCA5OTM1NCwgOTkzNjEsIDk5MzY4LCAKLSAgICA5OTM3NCwgOTkzODEsIDk5Mzg4LCA5OTM5NSwgOTk0MDIsIDk5NDA5LCA5OTQxNiwgOTk0MjIsIDk5NDI4LCA5OTQzNCwgCi0gICAgOTk0NDAsIDk5NDQ2LCA5OTQ1MiwgOTk0NTgsIDk5NDY0LCA5OTQ3MCwgOTk0NzcsIDk5NDg0LCA5OTQ5MSwgOTk0OTgsIAotICAgIDk5NTA1LCA5OTUxMiwgOTk1MTgsIDk5NTI0LCA5OTUzMCwgOTk1MzcsIDk5NTQ0LCA5OTU1MCwgOTk1NTYsIDk5NTY1LCAKLSAgICA5OTU3MiwgOTk1NzksIDk5NTg2LCA5OTU5MywgOTk2MDAsIDk5NjA3LCA5OTYxMywgOTk2MTksIDk5NjI1LCA5OTYzNCwgCi0gICAgOTk2NDEsIDk5NjQ4LCA5OTY1OSwgOTk2NzAsIDk5Njc2LCA5OTY4MiwgOTk2ODgsIDk5Njk3LCA5OTcwNCwgOTk3MTEsIAotICAgIDk5NzIxLCA5OTczMSwgOTk3NDIsIDk5NzUzLCA5OTc2NSwgOTk3NzgsIDk5Nzg5LCA5OTgwMCwgOTk4MTIsIDk5ODI1LCAKLSAgICA5OTgzNiwgOTk4NDcsIDk5ODU4LCA5OTg2OSwgOTk4ODAsIDk5ODkyLCA5OTkwMCwgOTk5MDgsIDk5OTE3LCA5OTkyNiwgCi0gICAgOTk5MzUsIDk5OTQxLCA5OTk0NywgOTk5NTMsIDk5OTYwLCA5OTk3MCwgOTk5NzcsIDk5OTg3LCA5OTk5MiwgOTk5OTcsIAotICAgIDEwMDAwMywgMTAwMDA5LCAxMDAwMTcsIDEwMDAyNSwgMTAwMDM0LCAxMDAwNDUsIDEwMDA1NiwgMTAwMDY0LCAxMDAwNzIsIAotICAgIDEwMDA4MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTAwMDkwLCAxMDAxMDEsIDEwMDEwOCwgCi0gICAgMTAwMTE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDAxMjQsIDEwMDEyOCwgMTAwMTMyLCAKLSAgICAxMDAxMzYsIDEwMDE0MCwgMTAwMTQ0LCAxMDAxNDgsIDEwMDE1MiwgMTAwMTU2LCAxMDAxNjAsIDEwMDE2NCwgMTAwMTY4LCAKLSAgICAxMDAxNzIsIDEwMDE3NiwgMTAwMTgwLCAxMDAxODQsIDEwMDE4OCwgMTAwMTkyLCAxMDAxOTYsIDEwMDIwMCwgMTAwMjA0LCAKLSAgICAxMDAyMDgsIDEwMDIxMiwgMTAwMjE2LCAxMDAyMjAsIDEwMDIyNCwgMTAwMjI4LCAxMDAyMzIsIDEwMDIzNiwgMTAwMjQwLCAKLSAgICAxMDAyNDQsIDEwMDI0OCwgMTAwMjUyLCAxMDAyNTYsIDEwMDI2MCwgMTAwMjY0LCAxMDAyNjgsIDEwMDI3MiwgMTAwMjc2LCAKLSAgICAxMDAyODAsIDEwMDI4NCwgMTAwMjg4LCAxMDAyOTIsIDEwMDI5NiwgMTAwMzAwLCAxMDAzMDQsIDEwMDMwOCwgMTAwMzEyLCAKLSAgICAxMDAzMTYsIDEwMDMyMCwgMTAwMzI0LCAxMDAzMjgsIDEwMDMzMiwgMTAwMzM2LCAxMDAzNDAsIDEwMDM0NCwgMTAwMzQ4LCAKLSAgICAxMDAzNTIsIDEwMDM1NiwgMTAwMzYwLCAxMDAzNjQsIDEwMDM2OCwgMTAwMzcyLCAxMDAzNzYsIDEwMDM4MCwgMTAwMzg0LCAKLSAgICAxMDAzODgsIDEwMDM5MiwgMTAwMzk2LCAxMDA0MDAsIDEwMDQwNCwgMTAwNDA4LCAxMDA0MTIsIDEwMDQxNiwgMTAwNDIwLCAKLSAgICAxMDA0MjQsIDEwMDQyOCwgMTAwNDMyLCAxMDA0MzYsIDEwMDQ0MCwgMTAwNDQ0LCAxMDA0NDgsIDEwMDQ1MiwgMTAwNDU2LCAKLSAgICAxMDA0NjAsIDEwMDQ2NCwgMTAwNDY4LCAxMDA0NzIsIDEwMDQ3NiwgMTAwNDgwLCAxMDA0ODQsIDEwMDQ4OCwgMTAwNDkyLCAKLSAgICAxMDA0OTYsIDEwMDUwMCwgMTAwNTA0LCAxMDA1MDgsIDEwMDUxMiwgMTAwNTE2LCAxMDA1MjAsIDEwMDUyNCwgMTAwNTI4LCAKLSAgICAxMDA1MzIsIDEwMDUzNiwgMTAwNTQwLCAxMDA1NDQsIDEwMDU0OCwgMTAwNTUyLCAxMDA1NTYsIDEwMDU2MCwgMTAwNTY0LCAKLSAgICAxMDA1NjgsIDEwMDU3MiwgMTAwNTc2LCAxMDA1ODAsIDEwMDU4NCwgMTAwNTg4LCAxMDA1OTIsIDEwMDU5NiwgMTAwNjAwLCAKLSAgICAxMDA2MDQsIDEwMDYwOCwgMTAwNjEyLCAxMDA2MTYsIDEwMDYyMCwgMTAwNjI0LCAxMDA2MjgsIDEwMDYzMiwgMTAwNjM2LCAKLSAgICAxMDA2NDAsIDEwMDY0NCwgMTAwNjQ4LCAxMDA2NTIsIDEwMDY1NiwgMTAwNjYwLCAxMDA2NjQsIDEwMDY2OCwgMTAwNjcyLCAKLSAgICAxMDA2NzYsIDEwMDY4MCwgMTAwNjg0LCAxMDA2ODgsIDEwMDY5MiwgMTAwNjk2LCAxMDA3MDAsIDEwMDcwNCwgMTAwNzA4LCAKLSAgICAxMDA3MTIsIDEwMDcxNiwgMTAwNzIwLCAxMDA3MjQsIDEwMDcyOCwgMTAwNzMyLCAxMDA3MzYsIDEwMDc0MCwgMTAwNzQ0LCAKLSAgICAxMDA3NDgsIDEwMDc1MiwgMTAwNzU2LCAxMDA3NjAsIDEwMDc2NCwgMTAwNzY4LCAxMDA3NzIsIDEwMDc3NiwgMTAwNzgwLCAKLSAgICAxMDA3ODQsIDEwMDc4OCwgMTAwNzkyLCAxMDA3OTYsIDEwMDgwMCwgMTAwODA0LCAxMDA4MDgsIDEwMDgxMiwgMTAwODE2LCAKLSAgICAxMDA4MjAsIDEwMDgyNCwgMTAwODI4LCAxMDA4MzIsIDEwMDgzNiwgMTAwODQwLCAxMDA4NDQsIDEwMDg0OCwgMTAwODUyLCAKLSAgICAxMDA4NTYsIDEwMDg2MCwgMTAwODY0LCAxMDA4NjgsIDEwMDg3MiwgMTAwODc2LCAxMDA4ODAsIDEwMDg4NCwgMTAwODg4LCAKLSAgICAxMDA4OTIsIDEwMDg5NiwgMTAwOTAwLCAxMDA5MDQsIDEwMDkwOCwgMTAwOTEyLCAxMDA5MTYsIDEwMDkyMCwgMTAwOTI0LCAKLSAgICAxMDA5MjgsIDEwMDkzMiwgMTAwOTM2LCAxMDA5NDAsIDEwMDk0NCwgMTAwOTQ4LCAxMDA5NTIsIDEwMDk1NiwgMTAwOTYwLCAKLSAgICAxMDA5NjQsIDEwMDk2OCwgMTAwOTcyLCAxMDA5NzYsIDEwMDk4MCwgMTAwOTg0LCAxMDA5ODgsIDEwMDk5MiwgMTAwOTk2LCAKLSAgICAxMDEwMDAsIDEwMTAwNCwgMTAxMDA4LCAxMDEwMTIsIDEwMTAxNiwgMTAxMDIwLCAxMDEwMjQsIDEwMTAyOCwgMTAxMDMyLCAKLSAgICAxMDEwMzYsIDEwMTA0MCwgMTAxMDQ0LCAxMDEwNDgsIDEwMTA1MiwgMTAxMDU2LCAxMDEwNjAsIDEwMTA2NCwgMTAxMDY4LCAKLSAgICAxMDEwNzIsIDEwMTA3NiwgMTAxMDgwLCAxMDEwODQsIDEwMTA4OCwgMTAxMDkyLCAxMDEwOTYsIDEwMTEwMCwgMTAxMTA0LCAKLSAgICAxMDExMDgsIDEwMTExMiwgMTAxMTE2LCAxMDExMjAsIDEwMTEyNCwgMTAxMTI4LCAxMDExMzIsIDEwMTEzNiwgMTAxMTQwLCAKLSAgICAxMDExNDQsIDEwMTE0OCwgMTAxMTUyLCAxMDExNTYsIDEwMTE2MCwgMTAxMTY0LCAxMDExNjgsIDEwMTE3MiwgMTAxMTc2LCAKLSAgICAxMDExODAsIDEwMTE4NCwgMTAxMTg4LCAxMDExOTIsIDEwMTE5NiwgMTAxMjAwLCAxMDEyMDQsIDEwMTIwOCwgMTAxMjEyLCAKLSAgICAxMDEyMTYsIDEwMTIyMCwgMTAxMjI0LCAxMDEyMjgsIDEwMTIzMiwgMTAxMjM2LCAxMDEyNDAsIDEwMTI0NCwgMTAxMjQ4LCAKLSAgICAxMDEyNTIsIDEwMTI1NiwgMTAxMjYwLCAxMDEyNjQsIDEwMTI2OCwgMTAxMjcyLCAxMDEyNzYsIDEwMTI4MCwgMTAxMjg0LCAKLSAgICAxMDEyODgsIDEwMTI5MiwgMTAxMjk2LCAxMDEzMDAsIDEwMTMwNCwgMTAxMzA4LCAxMDEzMTIsIDEwMTMxNiwgMTAxMzIwLCAKLSAgICAxMDEzMjQsIDEwMTMyOCwgMTAxMzMyLCAxMDEzMzYsIDEwMTM0MCwgMTAxMzQ0LCAxMDEzNDgsIDEwMTM1MiwgMTAxMzU2LCAKLSAgICAxMDEzNjAsIDEwMTM2NCwgMTAxMzY4LCAxMDEzNzIsIDEwMTM3NiwgMTAxMzgwLCAxMDEzODQsIDEwMTM4OCwgMTAxMzkyLCAKLSAgICAxMDEzOTYsIDEwMTQwMCwgMTAxNDA0LCAxMDE0MDgsIDEwMTQxMiwgMTAxNDE2LCAxMDE0MjAsIDEwMTQyNCwgMTAxNDI4LCAKLSAgICAxMDE0MzIsIDEwMTQzNiwgMTAxNDQwLCAxMDE0NDQsIDEwMTQ0OCwgMTAxNDUyLCAxMDE0NTYsIDEwMTQ2MCwgMTAxNDY0LCAKLSAgICAxMDE0NjgsIDEwMTQ3MiwgMTAxNDc2LCAxMDE0ODAsIDEwMTQ4NCwgMTAxNDg4LCAxMDE0OTIsIDEwMTQ5NiwgMTAxNTAwLCAKLSAgICAxMDE1MDQsIDEwMTUwOCwgMTAxNTEyLCAxMDE1MTYsIDEwMTUyMCwgMTAxNTI0LCAxMDE1MjgsIDEwMTUzMiwgMTAxNTM2LCAKLSAgICAxMDE1NDAsIDEwMTU0NCwgMTAxNTQ4LCAxMDE1NTIsIDEwMTU1NiwgMTAxNTYwLCAxMDE1NjQsIDEwMTU2OCwgMTAxNTcyLCAKLSAgICAxMDE1NzYsIDEwMTU4MCwgMTAxNTg0LCAxMDE1ODgsIDEwMTU5MiwgMTAxNTk2LCAxMDE2MDAsIDEwMTYwNCwgMTAxNjA4LCAKLSAgICAxMDE2MTIsIDEwMTYxNiwgMTAxNjIwLCAxMDE2MjQsIDEwMTYyOCwgMTAxNjMyLCAxMDE2MzYsIDEwMTY0MCwgMTAxNjQ0LCAKLSAgICAxMDE2NDgsIDEwMTY1MiwgMTAxNjU2LCAxMDE2NjAsIDEwMTY2NCwgMTAxNjY4LCAxMDE2NzIsIDEwMTY3NiwgMTAxNjgwLCAKLSAgICAxMDE2ODQsIDEwMTY4OCwgMTAxNjkyLCAxMDE2OTYsIDEwMTcwMCwgMTAxNzA0LCAxMDE3MDgsIDEwMTcxMiwgMTAxNzE2LCAKLSAgICAxMDE3MjAsIDEwMTcyNCwgMTAxNzI4LCAxMDE3MzIsIDEwMTczNiwgMTAxNzQwLCAxMDE3NDQsIDEwMTc0OCwgMTAxNzUyLCAKLSAgICAxMDE3NTYsIDEwMTc2MCwgMTAxNzY0LCAxMDE3NjgsIDEwMTc3MiwgMTAxNzc2LCAxMDE3ODAsIDEwMTc4NCwgMTAxNzg4LCAKLSAgICAxMDE3OTIsIDEwMTc5NiwgMTAxODAwLCAxMDE4MDQsIDEwMTgwOCwgMTAxODEyLCAxMDE4MTYsIDEwMTgyMCwgMTAxODI0LCAKLSAgICAxMDE4MjgsIDEwMTgzMiwgMTAxODM2LCAxMDE4NDAsIDEwMTg0NCwgMTAxODQ4LCAxMDE4NTIsIDEwMTg1NiwgMTAxODYwLCAKLSAgICAxMDE4NjQsIDEwMTg2OCwgMTAxODcyLCAxMDE4NzYsIDEwMTg4MCwgMTAxODg0LCAxMDE4ODgsIDEwMTg5MiwgMTAxODk2LCAKLSAgICAxMDE5MDAsIDEwMTkwNCwgMTAxOTA4LCAxMDE5MTIsIDEwMTkxNiwgMTAxOTIwLCAxMDE5MjQsIDEwMTkyOCwgMTAxOTMyLCAKLSAgICAxMDE5MzYsIDEwMTk0MCwgMTAxOTQ0LCAxMDE5NDgsIDEwMTk1MiwgMTAxOTU2LCAxMDE5NjAsIDEwMTk2NCwgMTAxOTY4LCAKLSAgICAxMDE5NzIsIDEwMTk3NiwgMTAxOTgwLCAxMDE5ODQsIDEwMTk4OCwgMTAxOTkyLCAxMDE5OTYsIDEwMjAwMCwgMTAyMDA0LCAKLSAgICAxMDIwMDgsIDEwMjAxMiwgMTAyMDE2LCAxMDIwMjAsIDEwMjAyNCwgMTAyMDI4LCAxMDIwMzIsIDEwMjAzNiwgMTAyMDQwLCAKLSAgICAxMDIwNDQsIDEwMjA0OCwgMTAyMDUyLCAxMDIwNTYsIDEwMjA2MCwgMTAyMDY0LCAxMDIwNjgsIDEwMjA3MiwgMTAyMDc2LCAKLSAgICAxMDIwODAsIDEwMjA4NCwgMTAyMDg4LCAxMDIwOTIsIDEwMjA5NiwgMTAyMTAwLCAxMDIxMDQsIDEwMjEwOCwgMTAyMTEyLCAKLSAgICAxMDIxMTYsIDEwMjEyMCwgMTAyMTI0LCAxMDIxMjgsIDEwMjEzMiwgMTAyMTM2LCAxMDIxNDAsIDEwMjE0NCwgMTAyMTQ4LCAKLSAgICAxMDIxNTIsIDEwMjE1NiwgMTAyMTYwLCAxMDIxNjQsIDEwMjE2OCwgMTAyMTcyLCAxMDIxNzYsIDEwMjE4MCwgMTAyMTg0LCAKLSAgICAxMDIxODgsIDEwMjE5MiwgMTAyMTk2LCAxMDIyMDAsIDEwMjIwNCwgMTAyMjA4LCAxMDIyMTIsIDEwMjIxNiwgMTAyMjIwLCAKLSAgICAxMDIyMjQsIDEwMjIyOCwgMTAyMjMyLCAxMDIyMzYsIDEwMjI0MCwgMTAyMjQ0LCAxMDIyNDgsIDEwMjI1MiwgMTAyMjU2LCAKLSAgICAxMDIyNjAsIDEwMjI2NCwgMTAyMjY4LCAxMDIyNzIsIDEwMjI3NiwgMTAyMjgwLCAxMDIyODQsIDEwMjI4OCwgMTAyMjkyLCAKLSAgICAxMDIyOTYsIDEwMjMwMCwgMTAyMzA0LCAxMDIzMDgsIDEwMjMxMiwgMTAyMzE2LCAxMDIzMjAsIDEwMjMyNCwgMTAyMzI4LCAKLSAgICAxMDIzMzIsIDEwMjMzNiwgMTAyMzQwLCAxMDIzNDQsIDEwMjM0OCwgMTAyMzUyLCAxMDIzNTYsIDEwMjM2MCwgMTAyMzY0LCAKLSAgICAxMDIzNjgsIDEwMjM3MiwgMTAyMzc2LCAxMDIzODAsIDEwMjM4NCwgMTAyMzg4LCAxMDIzOTIsIDEwMjM5NiwgMTAyNDAwLCAKLSAgICAxMDI0MDQsIDEwMjQwOCwgMTAyNDEyLCAxMDI0MTYsIDEwMjQyMCwgMTAyNDI0LCAxMDI0MjgsIDEwMjQzMiwgMTAyNDM2LCAKLSAgICAxMDI0NDAsIDEwMjQ0NCwgMTAyNDQ4LCAxMDI0NTIsIDEwMjQ1NiwgMTAyNDYwLCAxMDI0NjQsIDEwMjQ2OCwgMTAyNDcyLCAKLSAgICAxMDI0NzYsIDEwMjQ4MCwgMTAyNDg0LCAxMDI0ODgsIDEwMjQ5MiwgMTAyNDk2LCAxMDI1MDAsIDEwMjUwNCwgMTAyNTA4LCAKLSAgICAxMDI1MTIsIDEwMjUxNiwgMTAyNTIwLCAxMDI1MjQsIDEwMjUyOCwgMTAyNTMyLCAxMDI1MzYsIDEwMjU0MCwgMTAyNTQ0LCAKLSAgICAxMDI1NDgsIDEwMjU1MiwgMTAyNTU2LCAxMDI1NjAsIDEwMjU2NCwgMTAyNTY4LCAxMDI1NzIsIDEwMjU3NiwgMTAyNTgwLCAKLSAgICAxMDI1ODQsIDEwMjU4OCwgMTAyNTkyLCAxMDI1OTYsIDEwMjYwMCwgMTAyNjA0LCAxMDI2MDgsIDEwMjYxMiwgMTAyNjE2LCAKLSAgICAxMDI2MjAsIDEwMjYyNCwgMTAyNjI4LCAxMDI2MzIsIDEwMjYzNiwgMTAyNjQwLCAxMDI2NDQsIDEwMjY0OCwgMTAyNjUyLCAKLSAgICAxMDI2NTYsIDEwMjY2MCwgMTAyNjY0LCAxMDI2NjgsIDEwMjY3MiwgMTAyNjc2LCAxMDI2ODAsIDEwMjY4NCwgMTAyNjg4LCAKLSAgICAxMDI2OTIsIDEwMjY5NiwgMTAyNzAwLCAxMDI3MDQsIDEwMjcwOCwgMTAyNzEyLCAxMDI3MTYsIDEwMjcyMCwgMTAyNzI0LCAKLSAgICAxMDI3MjgsIDEwMjczMiwgMTAyNzM2LCAxMDI3NDAsIDEwMjc0NCwgMTAyNzQ4LCAxMDI3NTIsIDEwMjc1NiwgMTAyNzYwLCAKLSAgICAxMDI3NjQsIDEwMjc2OCwgMTAyNzcyLCAxMDI3NzYsIDEwMjc4MCwgMTAyNzg0LCAxMDI3ODgsIDEwMjc5MiwgMTAyNzk2LCAKLSAgICAxMDI4MDAsIDEwMjgwNCwgMTAyODA4LCAxMDI4MTIsIDEwMjgxNiwgMTAyODIwLCAxMDI4MjQsIDEwMjgyOCwgMTAyODMyLCAKLSAgICAxMDI4MzYsIDEwMjg0MCwgMTAyODQ0LCAxMDI4NDgsIDEwMjg1MiwgMTAyODU2LCAxMDI4NjAsIDEwMjg2NCwgMTAyODY4LCAKLSAgICAxMDI4NzIsIDEwMjg3NiwgMTAyODgwLCAxMDI4ODQsIDEwMjg4OCwgMTAyODkyLCAxMDI4OTYsIDEwMjkwMCwgMTAyOTA0LCAKLSAgICAxMDI5MDgsIDEwMjkxMiwgMTAyOTE2LCAxMDI5MjAsIDEwMjkyNCwgMTAyOTI4LCAxMDI5MzIsIDEwMjkzNiwgMTAyOTQwLCAKLSAgICAxMDI5NDQsIDEwMjk0OCwgMTAyOTUyLCAxMDI5NTYsIDEwMjk2MCwgMTAyOTY0LCAxMDI5NjgsIDEwMjk3MiwgMTAyOTc2LCAKLSAgICAxMDI5ODAsIDEwMjk4NCwgMTAyOTg4LCAxMDI5OTIsIDEwMjk5NiwgMTAzMDAwLCAxMDMwMDQsIDEwMzAwOCwgMTAzMDEyLCAKLSAgICAxMDMwMTYsIDEwMzAyMCwgMTAzMDI0LCAxMDMwMjgsIDEwMzAzMiwgMTAzMDM2LCAxMDMwNDAsIDEwMzA0NCwgMTAzMDQ4LCAKLSAgICAxMDMwNTIsIDEwMzA1NiwgMTAzMDYwLCAxMDMwNjQsIDEwMzA2OCwgMTAzMDcyLCAxMDMwNzYsIDEwMzA4MCwgMTAzMDg0LCAKLSAgICAxMDMwODgsIDEwMzA5MiwgMTAzMDk2LCAxMDMxMDAsIDEwMzEwNCwgMTAzMTA4LCAxMDMxMTIsIDEwMzExNiwgMTAzMTIwLCAKLSAgICAxMDMxMjQsIDEwMzEyOCwgMTAzMTMyLCAxMDMxMzYsIDEwMzE0MCwgMTAzMTQ0LCAxMDMxNDgsIDEwMzE1MiwgMTAzMTU2LCAKLSAgICAxMDMxNjAsIDEwMzE2NCwgMTAzMTY4LCAxMDMxNzIsIDEwMzE3NiwgMTAzMTgwLCAxMDMxODQsIDEwMzE4OCwgMTAzMTkyLCAKLSAgICAxMDMxOTYsIDEwMzIwMCwgMTAzMjA0LCAxMDMyMDgsIDEwMzIxMiwgMTAzMjE2LCAxMDMyMjAsIDEwMzIyNCwgMTAzMjI4LCAKLSAgICAxMDMyMzIsIDEwMzIzNiwgMTAzMjQwLCAxMDMyNDQsIDEwMzI0OCwgMTAzMjUyLCAxMDMyNTYsIDEwMzI2MCwgMTAzMjY0LCAKLSAgICAxMDMyNjgsIDEwMzI3MiwgMTAzMjc2LCAxMDMyODAsIDEwMzI4NCwgMTAzMjg4LCAxMDMyOTIsIDEwMzI5NiwgMTAzMzAwLCAKLSAgICAxMDMzMDQsIDEwMzMwOCwgMTAzMzEyLCAxMDMzMTYsIDEwMzMyMCwgMTAzMzI0LCAxMDMzMjgsIDEwMzMzMiwgMTAzMzM2LCAKLSAgICAxMDMzNDAsIDEwMzM0NCwgMTAzMzQ4LCAxMDMzNTIsIDEwMzM1NiwgMTAzMzYwLCAxMDMzNjQsIDEwMzM2OCwgMTAzMzcyLCAKLSAgICAxMDMzNzYsIDEwMzM4MCwgMTAzMzg0LCAxMDMzODgsIDEwMzM5MiwgMTAzMzk2LCAxMDM0MDAsIDEwMzQwNCwgMTAzNDA4LCAKLSAgICAxMDM0MTIsIDEwMzQxNiwgMTAzNDIwLCAxMDM0MjQsIDEwMzQyOCwgMTAzNDMyLCAxMDM0MzYsIDEwMzQ0MCwgMTAzNDQ0LCAKLSAgICAxMDM0NDgsIDEwMzQ1MiwgMTAzNDU2LCAxMDM0NjAsIDEwMzQ2NCwgMTAzNDY4LCAxMDM0NzIsIDEwMzQ3NiwgMTAzNDgwLCAKLSAgICAxMDM0ODQsIDEwMzQ4OCwgMTAzNDkyLCAxMDM0OTYsIDEwMzUwMCwgMTAzNTA0LCAxMDM1MDgsIDEwMzUxMiwgMTAzNTE2LCAKLSAgICAxMDM1MjAsIDEwMzUyNCwgMTAzNTI4LCAxMDM1MzIsIDEwMzUzNiwgMTAzNTQwLCAxMDM1NDQsIDEwMzU0OCwgMTAzNTUyLCAKLSAgICAxMDM1NTYsIDEwMzU2MCwgMTAzNTY0LCAxMDM1NjgsIDEwMzU3MiwgMTAzNTc2LCAxMDM1ODAsIDEwMzU4NCwgMTAzNTg4LCAKLSAgICAxMDM1OTIsIDEwMzU5NiwgMTAzNjAwLCAxMDM2MDQsIDEwMzYwOCwgMTAzNjEyLCAxMDM2MTYsIDEwMzYyMCwgMTAzNjI0LCAKLSAgICAxMDM2MjgsIDEwMzYzMiwgMTAzNjM2LCAxMDM2NDAsIDEwMzY0NCwgMTAzNjQ4LCAxMDM2NTIsIDEwMzY1NiwgMTAzNjYwLCAKLSAgICAxMDM2NjQsIDEwMzY2OCwgMTAzNjcyLCAxMDM2NzYsIDEwMzY4MCwgMTAzNjg0LCAxMDM2ODgsIDEwMzY5MiwgMTAzNjk2LCAKLSAgICAxMDM3MDAsIDEwMzcwNCwgMTAzNzA4LCAxMDM3MTIsIDEwMzcxNiwgMTAzNzIwLCAxMDM3MjQsIDEwMzcyOCwgMTAzNzMyLCAKLSAgICAxMDM3MzYsIDEwMzc0MCwgMTAzNzQ0LCAxMDM3NDgsIDEwMzc1MiwgMTAzNzU2LCAxMDM3NjAsIDEwMzc2NCwgMTAzNzY4LCAKLSAgICAxMDM3NzIsIDEwMzc3NiwgMTAzNzgwLCAxMDM3ODQsIDEwMzc4OCwgMTAzNzkyLCAxMDM3OTYsIDEwMzgwMCwgMTAzODA0LCAKLSAgICAxMDM4MDgsIDEwMzgxMiwgMTAzODE2LCAxMDM4MjAsIDEwMzgyNCwgMTAzODI4LCAxMDM4MzIsIDEwMzgzNiwgMTAzODQwLCAKLSAgICAxMDM4NDQsIDEwMzg0OCwgMTAzODUyLCAxMDM4NTYsIDEwMzg2MCwgMTAzODY0LCAxMDM4NjgsIDEwMzg3MiwgMTAzODc2LCAKLSAgICAxMDM4ODAsIDEwMzg4NCwgMTAzODg4LCAxMDM4OTIsIDEwMzg5NiwgMTAzOTAwLCAxMDM5MDQsIDEwMzkwOCwgMTAzOTEyLCAKLSAgICAxMDM5MTYsIDEwMzkyMCwgMTAzOTI0LCAxMDM5MjgsIDEwMzkzMiwgMTAzOTM2LCAxMDM5NDAsIDEwMzk0NCwgMTAzOTQ4LCAKLSAgICAxMDM5NTIsIDEwMzk1NiwgMTAzOTYwLCAxMDM5NjQsIDEwMzk2OCwgMTAzOTcyLCAxMDM5NzYsIDEwMzk4MCwgMTAzOTg0LCAKLSAgICAxMDM5ODgsIDEwMzk5MiwgMTAzOTk2LCAxMDQwMDAsIDEwNDAwNCwgMTA0MDA4LCAxMDQwMTIsIDEwNDAxNiwgMTA0MDIwLCAKLSAgICAxMDQwMjQsIDEwNDAyOCwgMTA0MDMyLCAxMDQwMzYsIDEwNDA0MCwgMTA0MDQ0LCAxMDQwNDgsIDEwNDA1MiwgMTA0MDU2LCAKLSAgICAxMDQwNjAsIDEwNDA2NCwgMTA0MDY4LCAxMDQwNzIsIDEwNDA3NiwgMTA0MDgwLCAxMDQwODQsIDEwNDA4OCwgMTA0MDkyLCAKLSAgICAxMDQwOTYsIDEwNDEwMCwgMTA0MTA0LCAxMDQxMDgsIDEwNDExMiwgMTA0MTE2LCAxMDQxMjAsIDEwNDEyNCwgMTA0MTI4LCAKLSAgICAxMDQxMzIsIDEwNDEzNiwgMTA0MTQwLCAxMDQxNDQsIDEwNDE0OCwgMTA0MTUyLCAxMDQxNTYsIDEwNDE2MCwgMTA0MTY0LCAKLSAgICAxMDQxNjgsIDEwNDE3MiwgMTA0MTc2LCAxMDQxODAsIDEwNDE4NCwgMTA0MTg4LCAxMDQxOTIsIDEwNDE5NiwgMTA0MjAwLCAKLSAgICAxMDQyMDQsIDEwNDIwOCwgMTA0MjEyLCAxMDQyMTYsIDEwNDIyMCwgMTA0MjI0LCAxMDQyMjgsIDEwNDIzMiwgMTA0MjM2LCAKLSAgICAxMDQyNDAsIDEwNDI0NCwgMTA0MjQ4LCAxMDQyNTIsIDEwNDI1NiwgMTA0MjYwLCAxMDQyNjQsIDEwNDI2OCwgMTA0MjcyLCAKLSAgICAxMDQyNzYsIDEwNDI4MCwgMTA0Mjg0LCAxMDQyODgsIDEwNDI5MiwgMTA0Mjk2LCAxMDQzMDAsIDEwNDMwNCwgMTA0MzA4LCAKLSAgICAxMDQzMTIsIDEwNDMxNiwgMTA0MzIwLCAxMDQzMjQsIDEwNDMyOCwgMTA0MzMyLCAxMDQzMzYsIDEwNDM0MCwgMTA0MzQ0LCAKLSAgICAxMDQzNDgsIDEwNDM1MiwgMTA0MzU2LCAxMDQzNjAsIDEwNDM2NCwgMTA0MzY4LCAxMDQzNzIsIDEwNDM3NiwgMTA0MzgwLCAKLSAgICAxMDQzODQsIDEwNDM4OCwgMTA0MzkyLCAxMDQzOTYsIDEwNDQwMCwgMTA0NDA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5NTQ0MSwgOTU0NDUsIDk1NDQ5LCA5NTQ1MywgOTU0NTYsIDk1NDYwLCAKKyAgICA5NTQ2MywgOTU0NjcsIDk1NDcwLCA5NTQ3NCwgOTU0NzgsIDk1NDgzLCA5NTQ4NywgOTU0OTIsIDk1NDk1LCA5NTQ5OSwgCisgICAgOTU1MDIsIDk1NTA2LCA5NTUwOSwgOTU1MTMsIDk1NTE3LCA5NTUyMSwgOTU1MjUsIDk1NTI5LCA5NTUzMywgOTU1MzcsIAorICAgIDk1NTQxLCA5NTU0NSwgOTU1NDksIDk1NTUzLCA5NTU1NywgOTU1NjEsIDk1NTY1LCA5NTU2OSwgOTU1NzMsIDk1NTc3LCAKKyAgICA5NTU4MSwgOTU1ODQsIDk1NTg3LCA5NTU5MSwgOTU1OTUsIDk1NTk5LCA5NTYwMiwgOTU2MDUsIDk1NjA4LCA5NTYxMiwgCisgICAgOTU2MTYsIDk1NjIwLCA5NTYyNCwgOTU2MjgsIDk1NjMxLCA5NTYzNCwgOTU2MzksIDk1NjQzLCA5NTY0OCwgOTU2NTIsIAorICAgIDk1NjU3LCA5NTY2MiwgOTU2NjgsIDk1NjczLCA5NTY3OSwgOTU2ODMsIDk1Njg4LCA5NTY5MiwgOTU2OTcsIDk1NzAxLCAKKyAgICA5NTcwNSwgOTU3MDksIDk1NzEzLCA5NTcxNiwgOTU3MTksIDk1NzIzLCA5NTcyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgOTU3MzAsIDk1NzM0LCA5NTczNywgOTU3NDAsIDk1NzQzLCA5NTc0NiwgOTU3NDksIDk1NzUyLCA5NTc1NSwgOTU3NTgsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDk1NzYxLCA5NTc2NSwgOTU3NzAsIDk1Nzc0LCA5NTc3OSwgCisgICAgOTU3ODMsIDk1Nzg4LCA5NTc5MiwgOTU3OTcsIDk1ODAxLCA5NTgwNiwgOTU4MTAsIDk1ODE1LCA5NTgyMCwgOTU4MjUsIAorICAgIDk1ODMwLCA5NTgzNSwgOTU4NDAsIDk1ODQ1LCA5NTg1MCwgOTU4NTUsIDk1ODYwLCA5NTg2NSwgOTU4NzAsIDk1ODc1LCAKKyAgICA5NTg4MCwgOTU4ODUsIDk1ODkwLCA5NTg5NSwgOTU5MDAsIDk1OTA0LCA5NTkwOCwgOTU5MTMsIDk1OTE4LCA5NTkyMywgCisgICAgOTU5MjcsIDk1OTMxLCA5NTkzNSwgOTU5NDAsIDk1OTQ1LCA5NTk1MCwgOTU5NTQsIDk1OTU4LCA5NTk2MywgOTU5NjgsIAorICAgIDk1OTczLCA5NTk3OSwgOTU5ODQsIDk1OTkwLCA5NTk5NSwgOTYwMDEsIDk2MDA2LCA5NjAxMiwgOTYwMTcsIDk2MDIzLCAKKyAgICA5NjAyOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTYwMzMsIDk2MDM4LCA5NjA0MiwgOTYwNDYsIDk2MDUwLCA5NjA1NCwgCisgICAgOTYwNTgsIDk2MDYyLCA5NjA2NiwgOTYwNzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDk2MDc0LCA5NjA3NywgOTYwODIsIDk2MDg4LCAKKyAgICA5NjA5NiwgOTYxMDEsIDk2MTA3LCA5NjExNSwgOTYxMjEsIDk2MTI3LCA5NjEzMSwgOTYxMzUsIDk2MTQyLCA5NjE1MSwgCisgICAgOTYxNTgsIDk2MTY3LCA5NjE3MywgOTYxODIsIDk2MTg5LCA5NjE5NiwgOTYyMDMsIDk2MjEzLCA5NjIxOSwgOTYyMjMsIAorICAgIDk2MjMwLCA5NjIzOSwgOTYyNDksIDk2MjU2LCA5NjI2MywgOTYyNjcsIDk2MjcxLCA5NjI3OCwgOTYyODgsIDk2MjkyLCAKKyAgICA5NjI5OSwgOTYzMDYsIDk2MzEzLCA5NjMxOSwgOTYzMjYsIDk2MzMzLCA5NjM0MCwgOTYzNDcsIDk2MzUxLCA5NjM1NSwgCisgICAgOTYzNTksIDk2MzY2LCA5NjM3MCwgOTYzNzcsIDk2Mzg0LCA5NjM5OCwgOTY0MDcsIDk2NDExLCA5NjQxNSwgOTY0MTksIAorICAgIDk2NDI2LCA5NjQzMCwgOTY0MzQsIDk2NDM4LCA5NjQ0NiwgOTY0NTQsIDk2NDczLCA5NjQ4MywgOTY1MDMsIDk2NTA3LCAKKyAgICA5NjUxMSwgOTY1MTUsIDk2NTE5LCA5NjUyMywgOTY1MjcsIDk2NTMxLCA5NjUzOCwgOTY1NDIsIDk2NTQ1LCA5NjU0OSwgCisgICAgOTY1NTMsIDk2NTU5LCA5NjU2NiwgOTY1NzUsIDk2NTc5LCA5NjU4OCwgOTY1OTcsIDk2NjA1LCA5NjYwOSwgOTY2MTYsIAorICAgIDk2NjIwLCA5NjYyNCwgOTY2MjgsIDk2NjMyLCA5NjY0MywgOTY2NTIsIDk2NjYxLCA5NjY3MCwgOTY2NzksIDk2NjkxLCAKKyAgICA5NjcwMCwgOTY3MDksIDk2NzE4LCA5NjcyNiwgOTY3MzUsIDk2NzQ3LCA5Njc1NiwgOTY3NjUsIDk2Nzc0LCA5Njc4NiwgCisgICAgOTY3OTUsIDk2ODA0LCA5NjgxNiwgOTY4MjUsIDk2ODM0LCA5Njg0NiwgOTY4NTUsIDk2ODU5LCA5Njg2MywgOTY4NjcsIAorICAgIDk2ODcxLCA5Njg3NSwgOTY4NzksIDk2ODgzLCA5Njg5MCwgOTY4OTQsIDk2ODk4LCA5NjkwOSwgOTY5MTMsIDk2OTE3LCAKKyAgICA5NjkyNCwgOTY5MzAsIDk2OTM2LCA5Njk0MCwgOTY5NDcsIDk2OTUxLCA5Njk1NSwgOTY5NTksIDk2OTYzLCA5Njk2NywgCisgICAgOTY5NzEsIDk2OTc3LCA5Njk4NSwgOTY5ODksIDk2OTkzLCA5Njk5NiwgOTcwMDIsIDk3MDEyLCA5NzAxNiwgOTcwMjgsIAorICAgIDk3MDM1LCA5NzA0MiwgOTcwNDksIDk3MDU2LCA5NzA2MiwgOTcwNjYsIDk3MDcwLCA5NzA3NCwgOTcwNzgsIDk3MDg1LCAKKyAgICA5NzA5NCwgOTcxMDEsIDk3MTA5LCA5NzExNywgOTcxMjMsIDk3MTI3LCA5NzEzMSwgOTcxMzUsIDk3MTM5LCA5NzE0NSwgCisgICAgOTcxNTQsIDk3MTY2LCA5NzE3MywgOTcxODAsIDk3MTg5LCA5NzIwMCwgOTcyMDYsIDk3MjE1LCA5NzIyNCwgOTcyMzEsIAorICAgIDk3MjQwLCA5NzI0NywgOTcyNTQsIDk3MjY0LCA5NzI3MSwgOTcyNzgsIDk3Mjg1LCA5NzI5MiwgOTcyOTYsIDk3MzAyLCAKKyAgICA5NzMwNiwgOTczMTcsIDk3MzI1LCA5NzMzNCwgOTczNDYsIDk3MzUzLCA5NzM2MCwgOTczNzAsIDk3Mzc3LCA5NzM4NiwgCisgICAgOTczOTMsIDk3NDAyLCA5NzQwOSwgOTc0MTYsIDk3NDI2LCA5NzQzMywgOTc0NDAsIDk3NDUwLCA5NzQ1NywgOTc0NjksIAorICAgIDk3NDc4LCA5NzQ4NSwgOTc0OTIsIDk3NDk5LCA5NzUwOCwgOTc1MTgsIDk3NTMxLCA5NzUzOCwgOTc1NDgsIDk3NTU4LCAKKyAgICA5NzU2NSwgOTc1NzQsIDk3NTg3LCA5NzU5NCwgOTc2MDEsIDk3NjA4LCA5NzYxOCwgOTc2MjgsIDk3NjM1LCA5NzY0NSwgCisgICAgOTc2NTIsIDk3NjU5LCA5NzY2OSwgOTc2NzUsIDk3NjgyLCA5NzY4OSwgOTc2OTYsIDk3NzA2LCA5NzcxMywgOTc3MjAsIAorICAgIDk3NzI3LCA5NzczMywgOTc3NDAsIDk3NzUwLCA5Nzc1NywgOTc3NjEsIDk3NzY5LCA5Nzc3MywgOTc3ODUsIDk3Nzg5LCAKKyAgICA5NzgwMywgOTc4MDcsIDk3ODExLCA5NzgxNSwgOTc4MTksIDk3ODI1LCA5NzgzMiwgOTc4NDAsIDk3ODQ0LCA5Nzg0OCwgCisgICAgOTc4NTIsIDk3ODU2LCA5Nzg2MywgOTc4NjcsIDk3ODczLCA5Nzg3OSwgOTc4ODcsIDk3ODkxLCA5Nzg5OCwgOTc5MDYsIAorICAgIDk3OTEwLCA5NzkxNCwgOTc5MjAsIDk3OTI0LCA5NzkzMywgOTc5NDIsIDk3OTQ5LCA5Nzk1OSwgOTc5NjUsIDk3OTY5LCAKKyAgICA5Nzk3MywgOTc5ODEsIDk3OTg4LCA5Nzk5NSwgOTgwMDEsIDk4MDA1LCA5ODAxMywgOTgwMTcsIDk4MDI0LCA5ODAzNiwgCisgICAgOTgwNDMsIDk4MDUzLCA5ODA1OSwgOTgwNjMsIDk4MDcyLCA5ODA3OSwgOTgwODgsIDk4MDkyLCA5ODA5NiwgOTgxMDMsIAorICAgIDk4MTA3LCA5ODExMSwgOTgxMTUsIDk4MTE5LCA5ODEyMiwgOTgxMjgsIDk4MTM0LCA5ODEzOCwgOTgxNDIsIDk4MTQ5LCAKKyAgICA5ODE1NiwgOTgxNjMsIDk4MTcwLCA5ODE3NywgOTgxODQsIDk4MTkxLCA5ODE5OCwgOTgyMDQsIDk4MjA4LCA5ODIxMiwgCisgICAgOTgyMTksIDk4MjI2LCA5ODIzMywgOTgyNDAsIDk4MjQ3LCA5ODI1MSwgOTgyNTQsIDk4MjU5LCA5ODI2MywgOTgyNjcsIAorICAgIDk4Mjc2LCA5ODI4NSwgOTgyODksIDk4MjkzLCA5ODI5OSwgOTgzMDUsIDk4MzIyLCA5ODMyOCwgOTgzMzIsIDk4MzQxLCAKKyAgICA5ODM0NSwgOTgzNDksIDk4MzU2LCA5ODM2NCwgOTgzNzIsIDk4Mzc4LCA5ODM4MiwgOTgzODYsIDk4MzkwLCA5ODM5NCwgCisgICAgOTgzOTcsIDk4NDAzLCA5ODQxMCwgOTg0MjAsIDk4NDI3LCA5ODQzNCwgOTg0NDEsIDk4NDQ3LCA5ODQ1NCwgOTg0NjEsIAorICAgIDk4NDY4LCA5ODQ3NSwgOTg0ODIsIDk4NDkxLCA5ODQ5OCwgOTg1MTAsIDk4NTE3LCA5ODUyNCwgOTg1MzQsIDk4NTQ1LCAKKyAgICA5ODU1MiwgOTg1NTksIDk4NTY2LCA5ODU3MywgOTg1ODAsIDk4NTg3LCA5ODU5NCwgOTg2MDEsIDk4NjA4LCA5ODYxNSwgCisgICAgOTg2MjUsIDk4NjM1LCA5ODY0NSwgOTg2NTIsIDk4NjYyLCA5ODY2OSwgOTg2NzYsIDk4NjgzLCA5ODY5MCwgOTg2OTYsIAorICAgIDk4NzAzLCA5ODcxMCwgOTg3MTcsIDk4NzI0LCA5ODczMSwgOTg3MzgsIDk4NzQ1LCA5ODc1MiwgOTg3NTgsIDk4NzY1LCAKKyAgICA5ODc3MiwgOTg3ODEsIDk4Nzg4LCA5ODc5NSwgOTg3OTksIDk4ODA3LCA5ODgxMSwgOTg4MTUsIDk4ODE5LCA5ODgyMywgCisgICAgOTg4MjcsIDk4ODM0LCA5ODgzOCwgOTg4NDcsIDk4ODUxLCA5ODg1OCwgOTg4NjYsIDk4ODcwLCA5ODg3NCwgOTg4NzgsIAorICAgIDk4ODkxLCA5ODkwNywgOTg5MTEsIDk4OTE1LCA5ODkyMiwgOTg5MjgsIDk4OTM1LCA5ODkzOSwgOTg5NDMsIDk4OTQ3LCAKKyAgICA5ODk1MSwgOTg5NTUsIDk4OTYyLCA5ODk2NiwgOTg5ODQsIDk4OTg4LCA5ODk5MiwgOTg5OTksIDk5MDAzLCA5OTAwNywgCisgICAgOTkwMTMsIDk5MDE3LCA5OTAyMSwgOTkwMjksIDk5MDMzLCA5OTAzNywgOTkwNDEsIDk5MDQ1LCA5OTA1MSwgOTkwNjIsIAorICAgIDk5MDcxLCA5OTA4MCwgOTkwODcsIDk5MDk0LCA5OTEwNSwgOTkxMTIsIDk5MTE5LCA5OTEyNiwgOTkxMzMsIDk5MTQwLCAKKyAgICA5OTE0NywgOTkxNTQsIDk5MTY0LCA5OTE3MCwgOTkxNzcsIDk5MTg3LCA5OTE5NiwgOTkyMDMsIDk5MjEyLCA5OTIyMiwgCisgICAgOTkyMjksIDk5MjM2LCA5OTI0MywgOTkyNTAsIDk5MjYyLCA5OTI2OSwgOTkyNzYsIDk5MjgzLCA5OTI5MCwgOTkyOTcsIAorICAgIDk5MzA3LCA5OTMxNCwgOTkzMjEsIDk5MzMxLCA5OTM0NCwgOTkzNTYsIDk5MzYzLCA5OTM3MywgOTkzODAsIDk5Mzg3LCAKKyAgICA5OTM5NCwgOTk0MDgsIDk5NDE0LCA5OTQyMiwgOTk0MzIsIDk5NDQyLCA5OTQ0OSwgOTk0NTYsIDk5NDYyLCA5OTQ2NiwgCisgICAgOTk0NzMsIDk5NDgzLCA5OTQ4OSwgOTk1MDIsIDk5NTA2LCA5OTUxMCwgOTk1MTcsIDk5NTIxLCA5OTUyOCwgOTk1MzgsIAorICAgIDk5NTQyLCA5OTU0NiwgOTk1NTAsIDk5NTU0LCA5OTU1OCwgOTk1NjUsIDk5NTY5LCA5OTU3NiwgOTk1ODMsIDk5NTkwLCAKKyAgICA5OTU5OSwgOTk2MDgsIDk5NjE4LCA5OTYyNSwgOTk2MzIsIDk5NjM5LCA5OTY0OSwgOTk2NTYsIDk5NjY2LCA5OTY3MywgCisgICAgOTk2ODMsIDk5NjkwLCA5OTY5NywgOTk3MDcsIDk5NzE3LCA5OTcyNCwgOTk3MzAsIDk5NzM4LCA5OTc0NiwgOTk3NTIsIAorICAgIDk5NzU4LCA5OTc2MiwgOTk3NjYsIDk5NzczLCA5OTc4MSwgOTk3ODcsIDk5NzkxLCA5OTc5NSwgOTk3OTksIDk5ODA2LCAKKyAgICA5OTgxOCwgOTk4MjEsIDk5ODI4LCA5OTgzNCwgOTk4MzgsIDk5ODQyLCA5OTg0NiwgOTk4NTAsIDk5ODU0LCA5OTg1OCwgCisgICAgOTk4NjIsIDk5ODY2LCA5OTg3MCwgOTk4NzQsIDk5ODgxLCA5OTg4NSwgOTk4OTEsIDk5ODk1LCA5OTg5OSwgOTk5MDMsIAorICAgIDk5OTA5LCA5OTkxNiwgOTk5MjMsIDk5OTMwLCA5OTk0MSwgOTk5NDksIDk5OTUzLCA5OTk1OSwgOTk5NjgsIDk5OTc1LCAKKyAgICA5OTk4MSwgOTk5ODQsIDk5OTg4LCA5OTk5MiwgOTk5OTgsIDEwMDAwNywgMTAwMDE1LCAxMDAwMTksIDEwMDAyNSwgCisgICAgMTAwMDI5LCAxMDAwMzMsIDEwMDAzNywgMTAwMDQzLCAxMDAwNTAsIDEwMDA1NiwgMTAwMDYwLCAxMDAwNjYsIDEwMDA3MCwgCisgICAgMTAwMDc0LCAxMDAwODMsIDEwMDA5NSwgMTAwMDk5LCAxMDAxMDYsIDEwMDExMywgMTAwMTIzLCAxMDAxMzAsIDEwMDE0MiwgCisgICAgMTAwMTQ5LCAxMDAxNTYsIDEwMDE2MywgMTAwMTc0LCAxMDAxODQsIDEwMDE5NywgMTAwMjA3LCAxMDAyMTQsIDEwMDIxOCwgCisgICAgMTAwMjIyLCAxMDAyMjYsIDEwMDIzMCwgMTAwMjM5LCAxMDAyNDgsIDEwMDI1NywgMTAwMjc0LCAxMDAyODMsIDEwMDI4OSwgCisgICAgMTAwMjk2LCAxMDAzMDQsIDEwMDMxNywgMTAwMzIxLCAxMDAzMzAsIDEwMDMzOSwgMTAwMzQ4LCAxMDAzNTcsIDEwMDM2OCwgCisgICAgMTAwMzc3LCAxMDAzODYsIDEwMDM5NSwgMTAwNDA0LCAxMDA0MTMsIDEwMDQyMiwgMTAwNDMyLCAxMDA0MzUsIDEwMDQzOSwgCisgICAgMTAwNDQzLCAxMDA0NDcsIDEwMDQ1MSwgMTAwNDU1LCAxMDA0NjEsIDEwMDQ2OCwgMTAwNDc1LCAxMDA0ODIsIDEwMDQ4OCwgCisgICAgMTAwNDk0LCAxMDA1MDEsIDEwMDUwNywgMTAwNTE0LCAxMDA1MjIsIDEwMDUyNiwgMTAwNTMzLCAxMDA1NDAsIDEwMDU0NywgCisgICAgMTAwNTU1LCAxMDA1NTgsIDEwMDU2MiwgMTAwNTY2LCAxMDA1NzAsIDEwMDU3MywgMTAwNTc5LCAxMDA1ODMsIDEwMDU4OSwgCisgICAgMTAwNTk2LCAxMDA2MDMsIDEwMDYwOSwgMTAwNjE2LCAxMDA2MjMsIDEwMDYzMCwgMTAwNjM3LCAxMDA2NDQsIDEwMDY1MSwgCisgICAgMTAwNjU4LCAxMDA2NjUsIDEwMDY3MiwgMTAwNjc5LCAxMDA2ODYsIDEwMDY5MywgMTAwNzAwLCAxMDA3MDcsIDEwMDcxMywgCisgICAgMTAwNzE3LCAxMDA3MjYsIDEwMDczMCwgMTAwNzM0LCAxMDA3MzgsIDEwMDc0MiwgMTAwNzQ4LCAxMDA3NTUsIDEwMDc2MiwgCisgICAgMTAwNzY5LCAxMDA3NzYsIDEwMDc4MywgMTAwNzg5LCAxMDA3OTcsIDEwMDgwMSwgMTAwODA1LCAxMDA4MDksIDEwMDgxMywgCisgICAgMTAwODE5LCAxMDA4MzYsIDEwMDg1MywgMTAwODU3LCAxMDA4NjEsIDEwMDg2NSwgMTAwODY5LCAxMDA4NzMsIDEwMDg3NywgCisgICAgMTAwODgzLCAxMDA4OTAsIDEwMDg5NCwgMTAwOTAwLCAxMDA5MDcsIDEwMDkxNCwgMTAwOTIxLCAxMDA5MjgsIDEwMDkzNSwgCisgICAgMTAwOTQ0LCAxMDA5NTEsIDEwMDk1OCwgMTAwOTY1LCAxMDA5NzIsIDEwMDk3NiwgMTAwOTgwLCAxMDA5ODYsIDEwMDk5OCwgCisgICAgMTAxMDAyLCAxMDEwMDYsIDEwMTAxNSwgMTAxMDE5LCAxMDEwMjMsIDEwMTAyNywgMTAxMDMzLCAxMDEwMzcsIDEwMTA0MSwgCisgICAgMTAxMDUwLCAxMDEwNTQsIDEwMTA1OCwgMTAxMDYyLCAxMDEwNjksIDEwMTA3MywgMTAxMDc3LCAxMDEwODEsIDEwMTA4NSwgCisgICAgMTAxMDg5LCAxMDEwOTMsIDEwMTA5NywgMTAxMTAxLCAxMDExMDcsIDEwMTExNCwgMTAxMTIxLCAxMDExMjcsIDEwMTEzMSwgCisgICAgMTAxMTQ4LCAxMDExNTQsIDEwMTE1OCwgMTAxMTY0LCAxMDExNzAsIDEwMTE3NiwgMTAxMTgyLCAxMDExODgsIDEwMTE5NCwgCisgICAgMTAxMTk4LCAxMDEyMDIsIDEwMTIwNiwgMTAxMjEyLCAxMDEyMTYsIDEwMTIyMiwgMTAxMjI2LCAxMDEyMzAsIDEwMTIzNywgCisgICAgMTAxMjQ0LCAxMDEyNjEsIDEwMTI2NSwgMTAxMjY5LCAxMDEyNzMsIDEwMTI3NywgMTAxMjgxLCAxMDEyOTMsIDEwMTI5NiwgCisgICAgMTAxMzAxLCAxMDEzMDYsIDEwMTMyMSwgMTAxMzMxLCAxMDEzNDMsIDEwMTM0NywgMTAxMzUxLCAxMDEzNTUsIDEwMTM2MSwgCisgICAgMTAxMzY4LCAxMDEzNzUsIDEwMTM4NSwgMTAxMzk3LCAxMDE0MDMsIDEwMTQwOSwgMTAxNDE4LCAxMDE0MjIsIDEwMTQyNiwgCisgICAgMTAxNDMzLCAxMDE0NDMsIDEwMTQ1MCwgMTAxNDU2LCAxMDE0NjAsIDEwMTQ2NCwgMTAxNDcxLCAxMDE0NzcsIDEwMTQ4MSwgCisgICAgMTAxNDg3LCAxMDE0OTEsIDEwMTQ5OSwgMTAxNTA1LCAxMDE1MDksIDEwMTUxNywgMTAxNTI1LCAxMDE1MzIsIDEwMTUzOCwgCisgICAgMTAxNTQ1LCAxMDE1NTIsIDEwMTU2MiwgMTAxNTcyLCAxMDE1NzYsIDEwMTU4MCwgMTAxNTg0LCAxMDE1ODgsIDEwMTU5NCwgCisgICAgMTAxNjAxLCAxMDE2MDcsIDEwMTYxNCwgMTAxNjIxLCAxMDE2MjgsIDEwMTYzNywgMTAxNjQ0LCAxMDE2NTEsIDEwMTY1NywgCisgICAgMTAxNjY0LCAxMDE2NzEsIDEwMTY3OCwgMTAxNjg1LCAxMDE2OTIsIDEwMTY5OSwgMTAxNzA1LCAxMDE3MTIsIDEwMTcxOSwgCisgICAgMTAxNzI2LCAxMDE3MzUsIDEwMTc0MiwgMTAxNzQ5LCAxMDE3NTMsIDEwMTc1OSwgMTAxNzYzLCAxMDE3NjksIDEwMTc3NiwgCisgICAgMTAxNzgzLCAxMDE3OTAsIDEwMTc5NCwgMTAxNzk4LCAxMDE4MDIsIDEwMTgwNiwgMTAxODEwLCAxMDE4MTcsIDEwMTgyMSwgCisgICAgMTAxODI1LCAxMDE4MzEsIDEwMTgzOSwgMTAxODQzLCAxMDE4NDcsIDEwMTg1MSwgMTAxODU1LCAxMDE4NjIsIDEwMTg2NiwgCisgICAgMTAxODcwLCAxMDE4NzgsIDEwMTg4MiwgMTAxODg2LCAxMDE4OTAsIDEwMTg5NCwgMTAxOTAwLCAxMDE5MDQsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwMTkwOCwgMTAxOTE0LCAxMDE5MjAsIDEwMTkyNywgCisgICAgMTAxOTM0LCAxMDE5NDEsIDEwMTk0OCwgMTAxOTU1LCAxMDE5NjIsIDEwMTk2OCwgMTAxOTc1LCAxMDE5ODIsIDEwMTk4OSwgCisgICAgMTAxOTk2LCAxMDIwMDMsIDEwMjAxMCwgMTAyMDE2LCAxMDIwMjIsIDEwMjAyOCwgMTAyMDM0LCAxMDIwNDAsIDEwMjA0NiwgCisgICAgMTAyMDUyLCAxMDIwNTgsIDEwMjA2NCwgMTAyMDcxLCAxMDIwNzgsIDEwMjA4NSwgMTAyMDkyLCAxMDIwOTksIDEwMjEwNiwgCisgICAgMTAyMTEyLCAxMDIxMTgsIDEwMjEyNCwgMTAyMTMxLCAxMDIxMzgsIDEwMjE0NCwgMTAyMTUwLCAxMDIxNTksIDEwMjE2NiwgCisgICAgMTAyMTczLCAxMDIxODAsIDEwMjE4NywgMTAyMTk0LCAxMDIyMDEsIDEwMjIwNywgMTAyMjEzLCAxMDIyMTksIDEwMjIyOCwgCisgICAgMTAyMjM1LCAxMDIyNDIsIDEwMjI1MywgMTAyMjY0LCAxMDIyNzAsIDEwMjI3NiwgMTAyMjgyLCAxMDIyOTEsIDEwMjI5OCwgCisgICAgMTAyMzA1LCAxMDIzMTUsIDEwMjMyNSwgMTAyMzM2LCAxMDIzNDcsIDEwMjM1OSwgMTAyMzcyLCAxMDIzODMsIDEwMjM5NCwgCisgICAgMTAyNDA2LCAxMDI0MTksIDEwMjQzMCwgMTAyNDQxLCAxMDI0NTIsIDEwMjQ2MywgMTAyNDc0LCAxMDI0ODYsIDEwMjQ5NCwgCisgICAgMTAyNTAyLCAxMDI1MTEsIDEwMjUyMCwgMTAyNTI5LCAxMDI1MzUsIDEwMjU0MSwgMTAyNTQ3LCAxMDI1NTQsIDEwMjU2NCwgCisgICAgMTAyNTcxLCAxMDI1ODEsIDEwMjU4NiwgMTAyNTkxLCAxMDI1OTcsIDEwMjYwMywgMTAyNjExLCAxMDI2MTksIDEwMjYyOCwgCisgICAgMTAyNjM5LCAxMDI2NTAsIDEwMjY1OCwgMTAyNjY2LCAxMDI2NzUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDEwMjY4NCwgMTAyNjk1LCAxMDI3MDIsIDEwMjcxMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTAyNzE4LCAxMDI3MjIsIDEwMjcyNiwgMTAyNzMwLCAxMDI3MzQsIDEwMjczOCwgMTAyNzQyLCAxMDI3NDYsIDEwMjc1MCwgCisgICAgMTAyNzU0LCAxMDI3NTgsIDEwMjc2MiwgMTAyNzY2LCAxMDI3NzAsIDEwMjc3NCwgMTAyNzc4LCAxMDI3ODIsIDEwMjc4NiwgCisgICAgMTAyNzkwLCAxMDI3OTQsIDEwMjc5OCwgMTAyODAyLCAxMDI4MDYsIDEwMjgxMCwgMTAyODE0LCAxMDI4MTgsIDEwMjgyMiwgCisgICAgMTAyODI2LCAxMDI4MzAsIDEwMjgzNCwgMTAyODM4LCAxMDI4NDIsIDEwMjg0NiwgMTAyODUwLCAxMDI4NTQsIDEwMjg1OCwgCisgICAgMTAyODYyLCAxMDI4NjYsIDEwMjg3MCwgMTAyODc0LCAxMDI4NzgsIDEwMjg4MiwgMTAyODg2LCAxMDI4OTAsIDEwMjg5NCwgCisgICAgMTAyODk4LCAxMDI5MDIsIDEwMjkwNiwgMTAyOTEwLCAxMDI5MTQsIDEwMjkxOCwgMTAyOTIyLCAxMDI5MjYsIDEwMjkzMCwgCisgICAgMTAyOTM0LCAxMDI5MzgsIDEwMjk0MiwgMTAyOTQ2LCAxMDI5NTAsIDEwMjk1NCwgMTAyOTU4LCAxMDI5NjIsIDEwMjk2NiwgCisgICAgMTAyOTcwLCAxMDI5NzQsIDEwMjk3OCwgMTAyOTgyLCAxMDI5ODYsIDEwMjk5MCwgMTAyOTk0LCAxMDI5OTgsIDEwMzAwMiwgCisgICAgMTAzMDA2LCAxMDMwMTAsIDEwMzAxNCwgMTAzMDE4LCAxMDMwMjIsIDEwMzAyNiwgMTAzMDMwLCAxMDMwMzQsIDEwMzAzOCwgCisgICAgMTAzMDQyLCAxMDMwNDYsIDEwMzA1MCwgMTAzMDU0LCAxMDMwNTgsIDEwMzA2MiwgMTAzMDY2LCAxMDMwNzAsIDEwMzA3NCwgCisgICAgMTAzMDc4LCAxMDMwODIsIDEwMzA4NiwgMTAzMDkwLCAxMDMwOTQsIDEwMzA5OCwgMTAzMTAyLCAxMDMxMDYsIDEwMzExMCwgCisgICAgMTAzMTE0LCAxMDMxMTgsIDEwMzEyMiwgMTAzMTI2LCAxMDMxMzAsIDEwMzEzNCwgMTAzMTM4LCAxMDMxNDIsIDEwMzE0NiwgCisgICAgMTAzMTUwLCAxMDMxNTQsIDEwMzE1OCwgMTAzMTYyLCAxMDMxNjYsIDEwMzE3MCwgMTAzMTc0LCAxMDMxNzgsIDEwMzE4MiwgCisgICAgMTAzMTg2LCAxMDMxOTAsIDEwMzE5NCwgMTAzMTk4LCAxMDMyMDIsIDEwMzIwNiwgMTAzMjEwLCAxMDMyMTQsIDEwMzIxOCwgCisgICAgMTAzMjIyLCAxMDMyMjYsIDEwMzIzMCwgMTAzMjM0LCAxMDMyMzgsIDEwMzI0MiwgMTAzMjQ2LCAxMDMyNTAsIDEwMzI1NCwgCisgICAgMTAzMjU4LCAxMDMyNjIsIDEwMzI2NiwgMTAzMjcwLCAxMDMyNzQsIDEwMzI3OCwgMTAzMjgyLCAxMDMyODYsIDEwMzI5MCwgCisgICAgMTAzMjk0LCAxMDMyOTgsIDEwMzMwMiwgMTAzMzA2LCAxMDMzMTAsIDEwMzMxNCwgMTAzMzE4LCAxMDMzMjIsIDEwMzMyNiwgCisgICAgMTAzMzMwLCAxMDMzMzQsIDEwMzMzOCwgMTAzMzQyLCAxMDMzNDYsIDEwMzM1MCwgMTAzMzU0LCAxMDMzNTgsIDEwMzM2MiwgCisgICAgMTAzMzY2LCAxMDMzNzAsIDEwMzM3NCwgMTAzMzc4LCAxMDMzODIsIDEwMzM4NiwgMTAzMzkwLCAxMDMzOTQsIDEwMzM5OCwgCisgICAgMTAzNDAyLCAxMDM0MDYsIDEwMzQxMCwgMTAzNDE0LCAxMDM0MTgsIDEwMzQyMiwgMTAzNDI2LCAxMDM0MzAsIDEwMzQzNCwgCisgICAgMTAzNDM4LCAxMDM0NDIsIDEwMzQ0NiwgMTAzNDUwLCAxMDM0NTQsIDEwMzQ1OCwgMTAzNDYyLCAxMDM0NjYsIDEwMzQ3MCwgCisgICAgMTAzNDc0LCAxMDM0NzgsIDEwMzQ4MiwgMTAzNDg2LCAxMDM0OTAsIDEwMzQ5NCwgMTAzNDk4LCAxMDM1MDIsIDEwMzUwNiwgCisgICAgMTAzNTEwLCAxMDM1MTQsIDEwMzUxOCwgMTAzNTIyLCAxMDM1MjYsIDEwMzUzMCwgMTAzNTM0LCAxMDM1MzgsIDEwMzU0MiwgCisgICAgMTAzNTQ2LCAxMDM1NTAsIDEwMzU1NCwgMTAzNTU4LCAxMDM1NjIsIDEwMzU2NiwgMTAzNTcwLCAxMDM1NzQsIDEwMzU3OCwgCisgICAgMTAzNTgyLCAxMDM1ODYsIDEwMzU5MCwgMTAzNTk0LCAxMDM1OTgsIDEwMzYwMiwgMTAzNjA2LCAxMDM2MTAsIDEwMzYxNCwgCisgICAgMTAzNjE4LCAxMDM2MjIsIDEwMzYyNiwgMTAzNjMwLCAxMDM2MzQsIDEwMzYzOCwgMTAzNjQyLCAxMDM2NDYsIDEwMzY1MCwgCisgICAgMTAzNjU0LCAxMDM2NTgsIDEwMzY2MiwgMTAzNjY2LCAxMDM2NzAsIDEwMzY3NCwgMTAzNjc4LCAxMDM2ODIsIDEwMzY4NiwgCisgICAgMTAzNjkwLCAxMDM2OTQsIDEwMzY5OCwgMTAzNzAyLCAxMDM3MDYsIDEwMzcxMCwgMTAzNzE0LCAxMDM3MTgsIDEwMzcyMiwgCisgICAgMTAzNzI2LCAxMDM3MzAsIDEwMzczNCwgMTAzNzM4LCAxMDM3NDIsIDEwMzc0NiwgMTAzNzUwLCAxMDM3NTQsIDEwMzc1OCwgCisgICAgMTAzNzYyLCAxMDM3NjYsIDEwMzc3MCwgMTAzNzc0LCAxMDM3NzgsIDEwMzc4MiwgMTAzNzg2LCAxMDM3OTAsIDEwMzc5NCwgCisgICAgMTAzNzk4LCAxMDM4MDIsIDEwMzgwNiwgMTAzODEwLCAxMDM4MTQsIDEwMzgxOCwgMTAzODIyLCAxMDM4MjYsIDEwMzgzMCwgCisgICAgMTAzODM0LCAxMDM4MzgsIDEwMzg0MiwgMTAzODQ2LCAxMDM4NTAsIDEwMzg1NCwgMTAzODU4LCAxMDM4NjIsIDEwMzg2NiwgCisgICAgMTAzODcwLCAxMDM4NzQsIDEwMzg3OCwgMTAzODgyLCAxMDM4ODYsIDEwMzg5MCwgMTAzODk0LCAxMDM4OTgsIDEwMzkwMiwgCisgICAgMTAzOTA2LCAxMDM5MTAsIDEwMzkxNCwgMTAzOTE4LCAxMDM5MjIsIDEwMzkyNiwgMTAzOTMwLCAxMDM5MzQsIDEwMzkzOCwgCisgICAgMTAzOTQyLCAxMDM5NDYsIDEwMzk1MCwgMTAzOTU0LCAxMDM5NTgsIDEwMzk2MiwgMTAzOTY2LCAxMDM5NzAsIDEwMzk3NCwgCisgICAgMTAzOTc4LCAxMDM5ODIsIDEwMzk4NiwgMTAzOTkwLCAxMDM5OTQsIDEwMzk5OCwgMTA0MDAyLCAxMDQwMDYsIDEwNDAxMCwgCisgICAgMTA0MDE0LCAxMDQwMTgsIDEwNDAyMiwgMTA0MDI2LCAxMDQwMzAsIDEwNDAzNCwgMTA0MDM4LCAxMDQwNDIsIDEwNDA0NiwgCisgICAgMTA0MDUwLCAxMDQwNTQsIDEwNDA1OCwgMTA0MDYyLCAxMDQwNjYsIDEwNDA3MCwgMTA0MDc0LCAxMDQwNzgsIDEwNDA4MiwgCisgICAgMTA0MDg2LCAxMDQwOTAsIDEwNDA5NCwgMTA0MDk4LCAxMDQxMDIsIDEwNDEwNiwgMTA0MTEwLCAxMDQxMTQsIDEwNDExOCwgCisgICAgMTA0MTIyLCAxMDQxMjYsIDEwNDEzMCwgMTA0MTM0LCAxMDQxMzgsIDEwNDE0MiwgMTA0MTQ2LCAxMDQxNTAsIDEwNDE1NCwgCisgICAgMTA0MTU4LCAxMDQxNjIsIDEwNDE2NiwgMTA0MTcwLCAxMDQxNzQsIDEwNDE3OCwgMTA0MTgyLCAxMDQxODYsIDEwNDE5MCwgCisgICAgMTA0MTk0LCAxMDQxOTgsIDEwNDIwMiwgMTA0MjA2LCAxMDQyMTAsIDEwNDIxNCwgMTA0MjE4LCAxMDQyMjIsIDEwNDIyNiwgCisgICAgMTA0MjMwLCAxMDQyMzQsIDEwNDIzOCwgMTA0MjQyLCAxMDQyNDYsIDEwNDI1MCwgMTA0MjU0LCAxMDQyNTgsIDEwNDI2MiwgCisgICAgMTA0MjY2LCAxMDQyNzAsIDEwNDI3NCwgMTA0Mjc4LCAxMDQyODIsIDEwNDI4NiwgMTA0MjkwLCAxMDQyOTQsIDEwNDI5OCwgCisgICAgMTA0MzAyLCAxMDQzMDYsIDEwNDMxMCwgMTA0MzE0LCAxMDQzMTgsIDEwNDMyMiwgMTA0MzI2LCAxMDQzMzAsIDEwNDMzNCwgCisgICAgMTA0MzM4LCAxMDQzNDIsIDEwNDM0NiwgMTA0MzUwLCAxMDQzNTQsIDEwNDM1OCwgMTA0MzYyLCAxMDQzNjYsIDEwNDM3MCwgCisgICAgMTA0Mzc0LCAxMDQzNzgsIDEwNDM4MiwgMTA0Mzg2LCAxMDQzOTAsIDEwNDM5NCwgMTA0Mzk4LCAxMDQ0MDIsIDEwNDQwNiwgCisgICAgMTA0NDEwLCAxMDQ0MTQsIDEwNDQxOCwgMTA0NDIyLCAxMDQ0MjYsIDEwNDQzMCwgMTA0NDM0LCAxMDQ0MzgsIDEwNDQ0MiwgCisgICAgMTA0NDQ2LCAxMDQ0NTAsIDEwNDQ1NCwgMTA0NDU4LCAxMDQ0NjIsIDEwNDQ2NiwgMTA0NDcwLCAxMDQ0NzQsIDEwNDQ3OCwgCisgICAgMTA0NDgyLCAxMDQ0ODYsIDEwNDQ5MCwgMTA0NDk0LCAxMDQ0OTgsIDEwNDUwMiwgMTA0NTA2LCAxMDQ1MTAsIDEwNDUxNCwgCisgICAgMTA0NTE4LCAxMDQ1MjIsIDEwNDUyNiwgMTA0NTMwLCAxMDQ1MzQsIDEwNDUzOCwgMTA0NTQyLCAxMDQ1NDYsIDEwNDU1MCwgCisgICAgMTA0NTU0LCAxMDQ1NTgsIDEwNDU2MiwgMTA0NTY2LCAxMDQ1NzAsIDEwNDU3NCwgMTA0NTc4LCAxMDQ1ODIsIDEwNDU4NiwgCisgICAgMTA0NTkwLCAxMDQ1OTQsIDEwNDU5OCwgMTA0NjAyLCAxMDQ2MDYsIDEwNDYxMCwgMTA0NjE0LCAxMDQ2MTgsIDEwNDYyMiwgCisgICAgMTA0NjI2LCAxMDQ2MzAsIDEwNDYzNCwgMTA0NjM4LCAxMDQ2NDIsIDEwNDY0NiwgMTA0NjUwLCAxMDQ2NTQsIDEwNDY1OCwgCisgICAgMTA0NjYyLCAxMDQ2NjYsIDEwNDY3MCwgMTA0Njc0LCAxMDQ2NzgsIDEwNDY4MiwgMTA0Njg2LCAxMDQ2OTAsIDEwNDY5NCwgCisgICAgMTA0Njk4LCAxMDQ3MDIsIDEwNDcwNiwgMTA0NzEwLCAxMDQ3MTQsIDEwNDcxOCwgMTA0NzIyLCAxMDQ3MjYsIDEwNDczMCwgCisgICAgMTA0NzM0LCAxMDQ3MzgsIDEwNDc0MiwgMTA0NzQ2LCAxMDQ3NTAsIDEwNDc1NCwgMTA0NzU4LCAxMDQ3NjIsIDEwNDc2NiwgCisgICAgMTA0NzcwLCAxMDQ3NzQsIDEwNDc3OCwgMTA0NzgyLCAxMDQ3ODYsIDEwNDc5MCwgMTA0Nzk0LCAxMDQ3OTgsIDEwNDgwMiwgCisgICAgMTA0ODA2LCAxMDQ4MTAsIDEwNDgxNCwgMTA0ODE4LCAxMDQ4MjIsIDEwNDgyNiwgMTA0ODMwLCAxMDQ4MzQsIDEwNDgzOCwgCisgICAgMTA0ODQyLCAxMDQ4NDYsIDEwNDg1MCwgMTA0ODU0LCAxMDQ4NTgsIDEwNDg2MiwgMTA0ODY2LCAxMDQ4NzAsIDEwNDg3NCwgCisgICAgMTA0ODc4LCAxMDQ4ODIsIDEwNDg4NiwgMTA0ODkwLCAxMDQ4OTQsIDEwNDg5OCwgMTA0OTAyLCAxMDQ5MDYsIDEwNDkxMCwgCisgICAgMTA0OTE0LCAxMDQ5MTgsIDEwNDkyMiwgMTA0OTI2LCAxMDQ5MzAsIDEwNDkzNCwgMTA0OTM4LCAxMDQ5NDIsIDEwNDk0NiwgCisgICAgMTA0OTUwLCAxMDQ5NTQsIDEwNDk1OCwgMTA0OTYyLCAxMDQ5NjYsIDEwNDk3MCwgMTA0OTc0LCAxMDQ5NzgsIDEwNDk4MiwgCisgICAgMTA0OTg2LCAxMDQ5OTAsIDEwNDk5NCwgMTA0OTk4LCAxMDUwMDIsIDEwNTAwNiwgMTA1MDEwLCAxMDUwMTQsIDEwNTAxOCwgCisgICAgMTA1MDIyLCAxMDUwMjYsIDEwNTAzMCwgMTA1MDM0LCAxMDUwMzgsIDEwNTA0MiwgMTA1MDQ2LCAxMDUwNTAsIDEwNTA1NCwgCisgICAgMTA1MDU4LCAxMDUwNjIsIDEwNTA2NiwgMTA1MDcwLCAxMDUwNzQsIDEwNTA3OCwgMTA1MDgyLCAxMDUwODYsIDEwNTA5MCwgCisgICAgMTA1MDk0LCAxMDUwOTgsIDEwNTEwMiwgMTA1MTA2LCAxMDUxMTAsIDEwNTExNCwgMTA1MTE4LCAxMDUxMjIsIDEwNTEyNiwgCisgICAgMTA1MTMwLCAxMDUxMzQsIDEwNTEzOCwgMTA1MTQyLCAxMDUxNDYsIDEwNTE1MCwgMTA1MTU0LCAxMDUxNTgsIDEwNTE2MiwgCisgICAgMTA1MTY2LCAxMDUxNzAsIDEwNTE3NCwgMTA1MTc4LCAxMDUxODIsIDEwNTE4NiwgMTA1MTkwLCAxMDUxOTQsIDEwNTE5OCwgCisgICAgMTA1MjAyLCAxMDUyMDYsIDEwNTIxMCwgMTA1MjE0LCAxMDUyMTgsIDEwNTIyMiwgMTA1MjI2LCAxMDUyMzAsIDEwNTIzNCwgCisgICAgMTA1MjM4LCAxMDUyNDIsIDEwNTI0NiwgMTA1MjUwLCAxMDUyNTQsIDEwNTI1OCwgMTA1MjYyLCAxMDUyNjYsIDEwNTI3MCwgCisgICAgMTA1Mjc0LCAxMDUyNzgsIDEwNTI4MiwgMTA1Mjg2LCAxMDUyOTAsIDEwNTI5NCwgMTA1Mjk4LCAxMDUzMDIsIDEwNTMwNiwgCisgICAgMTA1MzEwLCAxMDUzMTQsIDEwNTMxOCwgMTA1MzIyLCAxMDUzMjYsIDEwNTMzMCwgMTA1MzM0LCAxMDUzMzgsIDEwNTM0MiwgCisgICAgMTA1MzQ2LCAxMDUzNTAsIDEwNTM1NCwgMTA1MzU4LCAxMDUzNjIsIDEwNTM2NiwgMTA1MzcwLCAxMDUzNzQsIDEwNTM3OCwgCisgICAgMTA1MzgyLCAxMDUzODYsIDEwNTM5MCwgMTA1Mzk0LCAxMDUzOTgsIDEwNTQwMiwgMTA1NDA2LCAxMDU0MTAsIDEwNTQxNCwgCisgICAgMTA1NDE4LCAxMDU0MjIsIDEwNTQyNiwgMTA1NDMwLCAxMDU0MzQsIDEwNTQzOCwgMTA1NDQyLCAxMDU0NDYsIDEwNTQ1MCwgCisgICAgMTA1NDU0LCAxMDU0NTgsIDEwNTQ2MiwgMTA1NDY2LCAxMDU0NzAsIDEwNTQ3NCwgMTA1NDc4LCAxMDU0ODIsIDEwNTQ4NiwgCisgICAgMTA1NDkwLCAxMDU0OTQsIDEwNTQ5OCwgMTA1NTAyLCAxMDU1MDYsIDEwNTUxMCwgMTA1NTE0LCAxMDU1MTgsIDEwNTUyMiwgCisgICAgMTA1NTI2LCAxMDU1MzAsIDEwNTUzNCwgMTA1NTM4LCAxMDU1NDIsIDEwNTU0NiwgMTA1NTUwLCAxMDU1NTQsIDEwNTU1OCwgCisgICAgMTA1NTYyLCAxMDU1NjYsIDEwNTU3MCwgMTA1NTc0LCAxMDU1NzgsIDEwNTU4MiwgMTA1NTg2LCAxMDU1OTAsIDEwNTU5NCwgCisgICAgMTA1NTk4LCAxMDU2MDIsIDEwNTYwNiwgMTA1NjEwLCAxMDU2MTQsIDEwNTYxOCwgMTA1NjIyLCAxMDU2MjYsIDEwNTYzMCwgCisgICAgMTA1NjM0LCAxMDU2MzgsIDEwNTY0MiwgMTA1NjQ2LCAxMDU2NTAsIDEwNTY1NCwgMTA1NjU4LCAxMDU2NjIsIDEwNTY2NiwgCisgICAgMTA1NjcwLCAxMDU2NzQsIDEwNTY3OCwgMTA1NjgyLCAxMDU2ODYsIDEwNTY5MCwgMTA1Njk0LCAxMDU2OTgsIDEwNTcwMiwgCisgICAgMTA1NzA2LCAxMDU3MTAsIDEwNTcxNCwgMTA1NzE4LCAxMDU3MjIsIDEwNTcyNiwgMTA1NzMwLCAxMDU3MzQsIDEwNTczOCwgCisgICAgMTA1NzQyLCAxMDU3NDYsIDEwNTc1MCwgMTA1NzU0LCAxMDU3NTgsIDEwNTc2MiwgMTA1NzY2LCAxMDU3NzAsIDEwNTc3NCwgCisgICAgMTA1Nzc4LCAxMDU3ODIsIDEwNTc4NiwgMTA1NzkwLCAxMDU3OTQsIDEwNTc5OCwgMTA1ODAyLCAxMDU4MDYsIDEwNTgxMCwgCisgICAgMTA1ODE0LCAxMDU4MTgsIDEwNTgyMiwgMTA1ODI2LCAxMDU4MzAsIDEwNTgzNCwgMTA1ODM4LCAxMDU4NDIsIDEwNTg0NiwgCisgICAgMTA1ODUwLCAxMDU4NTQsIDEwNTg1OCwgMTA1ODYyLCAxMDU4NjYsIDEwNTg3MCwgMTA1ODc0LCAxMDU4NzgsIDEwNTg4MiwgCisgICAgMTA1ODg2LCAxMDU4OTAsIDEwNTg5NCwgMTA1ODk4LCAxMDU5MDIsIDEwNTkwNiwgMTA1OTEwLCAxMDU5MTQsIDEwNTkxOCwgCisgICAgMTA1OTIyLCAxMDU5MjYsIDEwNTkzMCwgMTA1OTM0LCAxMDU5MzgsIDEwNTk0MiwgMTA1OTQ2LCAxMDU5NTAsIDEwNTk1NCwgCisgICAgMTA1OTU4LCAxMDU5NjIsIDEwNTk2NiwgMTA1OTcwLCAxMDU5NzQsIDEwNTk3OCwgMTA1OTgyLCAxMDU5ODYsIDEwNTk5MCwgCisgICAgMTA1OTk0LCAxMDU5OTgsIDEwNjAwMiwgMTA2MDA2LCAxMDYwMTAsIDEwNjAxNCwgMTA2MDE4LCAxMDYwMjIsIDEwNjAyNiwgCisgICAgMTA2MDMwLCAxMDYwMzQsIDEwNjAzOCwgMTA2MDQyLCAxMDYwNDYsIDEwNjA1MCwgMTA2MDU0LCAxMDYwNTgsIDEwNjA2MiwgCisgICAgMTA2MDY2LCAxMDYwNzAsIDEwNjA3NCwgMTA2MDc4LCAxMDYwODIsIDEwNjA4NiwgMTA2MDkwLCAxMDYwOTQsIDEwNjA5OCwgCisgICAgMTA2MTAyLCAxMDYxMDYsIDEwNjExMCwgMTA2MTE0LCAxMDYxMTgsIDEwNjEyMiwgMTA2MTI2LCAxMDYxMzAsIDEwNjEzNCwgCisgICAgMTA2MTM4LCAxMDYxNDIsIDEwNjE0NiwgMTA2MTUwLCAxMDYxNTQsIDEwNjE1OCwgMTA2MTYyLCAxMDYxNjYsIDEwNjE3MCwgCisgICAgMTA2MTc0LCAxMDYxNzgsIDEwNjE4MiwgMTA2MTg2LCAxMDYxOTAsIDEwNjE5NCwgMTA2MTk4LCAxMDYyMDIsIDEwNjIwNiwgCisgICAgMTA2MjEwLCAxMDYyMTQsIDEwNjIxOCwgMTA2MjIyLCAxMDYyMjYsIDEwNjIzMCwgMTA2MjM0LCAxMDYyMzgsIDEwNjI0MiwgCisgICAgMTA2MjQ2LCAxMDYyNTAsIDEwNjI1NCwgMTA2MjU4LCAxMDYyNjIsIDEwNjI2NiwgMTA2MjcwLCAxMDYyNzQsIDEwNjI3OCwgCisgICAgMTA2MjgyLCAxMDYyODYsIDEwNjI5MCwgMTA2Mjk0LCAxMDYyOTgsIDEwNjMwMiwgMTA2MzA2LCAxMDYzMTAsIDEwNjMxNCwgCisgICAgMTA2MzE4LCAxMDYzMjIsIDEwNjMyNiwgMTA2MzMwLCAxMDYzMzQsIDEwNjMzOCwgMTA2MzQyLCAxMDYzNDYsIDEwNjM1MCwgCisgICAgMTA2MzU0LCAxMDYzNTgsIDEwNjM2MiwgMTA2MzY2LCAxMDYzNzAsIDEwNjM3NCwgMTA2Mzc4LCAxMDYzODIsIDEwNjM4NiwgCisgICAgMTA2MzkwLCAxMDYzOTQsIDEwNjM5OCwgMTA2NDAyLCAxMDY0MDYsIDEwNjQxMCwgMTA2NDE0LCAxMDY0MTgsIDEwNjQyMiwgCisgICAgMTA2NDI2LCAxMDY0MzAsIDEwNjQzNCwgMTA2NDM4LCAxMDY0NDIsIDEwNjQ0NiwgMTA2NDUwLCAxMDY0NTQsIDEwNjQ1OCwgCisgICAgMTA2NDYyLCAxMDY0NjYsIDEwNjQ3MCwgMTA2NDc0LCAxMDY0NzgsIDEwNjQ4MiwgMTA2NDg2LCAxMDY0OTAsIDEwNjQ5NCwgCisgICAgMTA2NDk4LCAxMDY1MDIsIDEwNjUwNiwgMTA2NTEwLCAxMDY1MTQsIDEwNjUxOCwgMTA2NTIyLCAxMDY1MjYsIDEwNjUzMCwgCisgICAgMTA2NTM0LCAxMDY1MzgsIDEwNjU0MiwgMTA2NTQ2LCAxMDY1NTAsIDEwNjU1NCwgMTA2NTU4LCAxMDY1NjIsIDEwNjU2NiwgCisgICAgMTA2NTcwLCAxMDY1NzQsIDEwNjU3OCwgMTA2NTgyLCAxMDY1ODYsIDEwNjU5MCwgMTA2NTk0LCAxMDY1OTgsIDEwNjYwMiwgCisgICAgMTA2NjA2LCAxMDY2MTAsIDEwNjYxNCwgMTA2NjE4LCAxMDY2MjIsIDEwNjYyNiwgMTA2NjMwLCAxMDY2MzQsIDEwNjYzOCwgCisgICAgMTA2NjQyLCAxMDY2NDYsIDEwNjY1MCwgMTA2NjU0LCAxMDY2NTgsIDEwNjY2MiwgMTA2NjY2LCAxMDY2NzAsIDEwNjY3NCwgCisgICAgMTA2Njc4LCAxMDY2ODIsIDEwNjY4NiwgMTA2NjkwLCAxMDY2OTQsIDEwNjY5OCwgMTA2NzAyLCAxMDY3MDYsIDEwNjcxMCwgCisgICAgMTA2NzE0LCAxMDY3MTgsIDEwNjcyMiwgMTA2NzI2LCAxMDY3MzAsIDEwNjczNCwgMTA2NzM4LCAxMDY3NDIsIDEwNjc0NiwgCisgICAgMTA2NzUwLCAxMDY3NTQsIDEwNjc1OCwgMTA2NzYyLCAxMDY3NjYsIDEwNjc3MCwgMTA2Nzc0LCAxMDY3NzgsIDEwNjc4MiwgCisgICAgMTA2Nzg2LCAxMDY3OTAsIDEwNjc5NCwgMTA2Nzk4LCAxMDY4MDIsIDEwNjgwNiwgMTA2ODEwLCAxMDY4MTQsIDEwNjgxOCwgCisgICAgMTA2ODIyLCAxMDY4MjYsIDEwNjgzMCwgMTA2ODM0LCAxMDY4MzgsIDEwNjg0MiwgMTA2ODQ2LCAxMDY4NTAsIDEwNjg1NCwgCisgICAgMTA2ODU4LCAxMDY4NjIsIDEwNjg2NiwgMTA2ODcwLCAxMDY4NzQsIDEwNjg3OCwgMTA2ODgyLCAxMDY4ODYsIDEwNjg5MCwgCisgICAgMTA2ODk0LCAxMDY4OTgsIDEwNjkwMiwgMTA2OTA2LCAxMDY5MTAsIDEwNjkxNCwgMTA2OTE4LCAxMDY5MjIsIDEwNjkyNiwgCisgICAgMTA2OTMwLCAxMDY5MzQsIDEwNjkzOCwgMTA2OTQyLCAxMDY5NDYsIDEwNjk1MCwgMTA2OTU0LCAxMDY5NTgsIDEwNjk2MiwgCisgICAgMTA2OTY2LCAxMDY5NzAsIDEwNjk3NCwgMTA2OTc4LCAxMDY5ODIsIDEwNjk4NiwgMTA2OTkwLCAxMDY5OTQsIDEwNjk5OCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTA0NDA4LCAxMDQ0MTUsIDEwNDQyMiwgMTA0NDMxLCAxMDQ0NDAsIDEwNDQ0NywgMTA0NDUyLCAxMDQ0NTksIAotICAgIDEwNDQ2NiwgMTA0NDc1LCAxMDQ0ODYsIDEwNDQ5NywgMTA0NTAyLCAxMDQ1MDksIDEwNDUxNCwgMTA0NTE5LCAxMDQ1MjQsIAotICAgIDEwNDUyOSwgMTA0NTM0LCAxMDQ1MzksIDEwNDU0NCwgMTA0NTQ5LCAxMDQ1NTQsIDEwNDU1OSwgMTA0NTY0LCAxMDQ1NzEsIAotICAgIDEwNDU3OCwgMTA0NTgzLCAxMDQ1ODgsIDEwNDU5MywgMTA0NTk4LCAxMDQ2MDUsIDEwNDYxMiwgMTA0NjIwLCAxMDQ2MjUsIAotICAgIDEwNDYzMiwgMTA0NjM3LCAxMDQ2NDIsIDEwNDY0NywgMTA0NjUyLCAxMDQ2NTcsIDEwNDY2NCwgMTA0NjcxLCAxMDQ2NzYsIAotICAgIDEwNDY4MSwgMTA0Njg2LCAxMDQ2OTEsIDEwNDY5NiwgMTA0NzAxLCAxMDQ3MDYsIDEwNDcxMSwgMTA0NzE2LCAxMDQ3MjEsIAotICAgIDEwNDcyNiwgMTA0NzMxLCAxMDQ3MzYsIDEwNDc0MSwgMTA0NzQ2LCAxMDQ3NTEsIDEwNDc1NiwgMTA0NzYxLCAxMDQ3NjYsIAotICAgIDEwNDc3MywgMTA0Nzc4LCAxMDQ3ODMsIDEwNDc5MiwgMTA0Nzk5LCAxMDQ4MDQsIDEwNDgwOSwgMTA0ODE0LCAxMDQ4MTksIAotICAgIDEwNDgyNCwgMTA0ODI5LCAxMDQ4MzQsIDEwNDgzOSwgMTA0ODQ0LCAxMDQ4NDksIDEwNDg1NCwgMTA0ODU5LCAxMDQ4NjQsIAotICAgIDEwNDg2OSwgMTA0ODc0LCAxMDQ4NzksIDEwNDg4NCwgMTA0ODg5LCAxMDQ4OTQsIDEwNDg5OSwgMTA0OTA0LCAxMDQ5MTAsIAotICAgIDEwNDkxOCwgMTA0OTI0LCAxMDQ5MzIsIDEwNDk0MCwgMTA0OTQ4LCAxMDQ5NTQsIDEwNDk2MCwgMTA0OTY2LCAxMDQ5NzIsIAotICAgIDEwNDk3OCwgMTA0OTg2LCAxMDQ5OTYsIDEwNTAwNCwgMTA1MDEyLCAxMDUwMTgsIDEwNTAyNCwgMTA1MDMyLCAxMDUwNDAsIAotICAgIDEwNTA0NiwgMTA1MDU0LCAxMDUwNjIsIDEwNTA3MCwgMTA1MDc2LCAxMDUwODIsIDEwNTA4OCwgMTA1MDk0LCAxMDUxMDAsIAotICAgIDEwNTEwNiwgMTA1MTE0LCAxMDUxMjIsIDEwNTEyOCwgMTA1MTM0LCAxMDUxNDAsIDEwNTE0NiwgMTA1MTUyLCAxMDUxNjAsIAotICAgIDEwNTE2NiwgMTA1MTcyLCAxMDUxNzgsIDEwNTE4NCwgMTA1MTkwLCAxMDUxOTYsIDEwNTIwNCwgMTA1MjEwLCAxMDUyMTYsIAotICAgIDEwNTIyMiwgMTA1MjI4LCAxMDUyMzYsIDEwNTI0NCwgMTA1MjUwLCAxMDUyNTYsIDEwNTI2MiwgMTA1MjY3LCAxMDUyNzMsIAotICAgIDEwNTI3OSwgMTA1Mjg2LCAxMDUyOTEsIDEwNTI5NiwgMTA1MzAxLCAxMDUzMDYsIDEwNTMxMSwgMTA1MzE2LCAxMDUzMjEsIAotICAgIDEwNTMyNiwgMTA1MzMxLCAxMDUzNDAsIDEwNTM0NywgMTA1MzUyLCAxMDUzNTcsIDEwNTM2MiwgMTA1MzY5LCAxMDUzNzQsIAotICAgIDEwNTM3OSwgMTA1Mzg0LCAxMDUzOTEsIDEwNTM5NiwgMTA1NDAxLCAxMDU0MDYsIDEwNTQxMSwgMTA1NDE2LCAxMDU0MjEsIAotICAgIDEwNTQyNiwgMTA1NDMxLCAxMDU0MzYsIDEwNTQ0MSwgMTA1NDQ2LCAxMDU0NTMsIDEwNTQ1OCwgMTA1NDY1LCAxMDU0NzAsIAotICAgIDEwNTQ3NSwgMTA1NDgyLCAxMDU0ODcsIDEwNTQ5MiwgMTA1NDk3LCAxMDU1MDIsIDEwNTUwNywgMTA1NTEyLCAxMDU1MTcsIAotICAgIDEwNTUyMiwgMTA1NTI3LCAxMDU1MzIsIDEwNTUzNywgMTA1NTQyLCAxMDU1NDcsIDEwNTU1MiwgMTA1NTU3LCAxMDU1NjIsIAotICAgIDEwNTU2NywgMTA1NTcyLCAxMDU1NzcsIDEwNTU4NCwgMTA1NTg5LCAxMDU1OTQsIDEwNTU5OSwgMTA1NjA0LCAxMDU2MDksIAotICAgIDEwNTYxNCwgMTA1NjE5LCAxMDU2MjQsIDEwNTYyOSwgMTA1NjM0LCAxMDU2MzksIDEwNTY0NCwgMTA1NjQ5LCAxMDU2NTYsIAotICAgIDEwNTY2MSwgMTA1NjY2LCAxMDU2NzMsIDEwNTY3OCwgMTA1NjgzLCAxMDU2ODgsIDEwNTY5MywgMTA1Njk4LCAxMDU3MDMsIAotICAgIDEwNTcwOCwgMTA1NzEzLCAxMDU3MTgsIDEwNTcyMywgMTA1NzMwLCAxMDU3MzUsIDEwNTc0MCwgMTA1NzQ1LCAxMDU3NTAsIAotICAgIDEwNTc1NSwgMTA1NzYyLCAxMDU3NjksIDEwNTc3NCwgMTA1Nzc5LCAxMDU3ODQsIDEwNTc4OSwgMTA1Nzk0LCAxMDU3OTksIAotICAgIDEwNTgwNCwgMTA1ODA5LCAxMDU4MTQsIDEwNTgxOSwgMTA1ODI0LCAxMDU4MjksIDEwNTgzNCwgMTA1ODM5LCAxMDU4NDQsIAotICAgIDEwNTg0OSwgMTA1ODU0LCAxMDU4NTksIDEwNTg2NCwgMTA1ODY5LCAxMDU4NzQsIDEwNTg3OSwgMTA1ODg0LCAxMDU4ODksIAotICAgIDEwNTg5NCwgMTA1ODk5LCAxMDU5MDQsIDEwNTkwOSwgMTA1OTE0LCAxMDU5MTksIDEwNTkyNCwgMTA1OTI5LCAxMDU5MzQsIAotICAgIDEwNTkzOSwgMTA1OTQ0LCAxMDU5NDksIDEwNTk1NiwgMTA1OTYxLCAxMDU5NjYsIDEwNTk3MSwgMTA1OTc2LCAxMDU5ODEsIAotICAgIDEwNTk4NiwgMTA1OTkxLCAxMDU5OTYsIDEwNjAwMSwgMTA2MDA2LCAxMDYwMTEsIDEwNjAxNiwgMTA2MDIxLCAxMDYwMjYsIAotICAgIDEwNjAzMSwgMTA2MDM2LCAxMDYwNDEsIDEwNjA0NiwgMTA2MDUxLCAxMDYwNTYsIDEwNjA2MSwgMTA2MDY2LCAxMDYwNzEsIAotICAgIDEwNjA3NiwgMTA2MDgxLCAxMDYwODYsIDEwNjA5MSwgMTA2MDk2LCAxMDYxMDEsIDEwNjEwNiwgMTA2MTExLCAxMDYxMTYsIAotICAgIDEwNjEyMSwgMTA2MTI2LCAxMDYxMzEsIDEwNjEzNiwgMTA2MTQxLCAxMDYxNDYsIDEwNjE1MSwgMTA2MTU2LCAxMDYxNjEsIAotICAgIDEwNjE2NiwgMTA2MTcxLCAxMDYxNzYsIDEwNjE4MSwgMTA2MTg2LCAxMDYxOTEsIDEwNjE5NiwgMTA2MjAxLCAxMDYyMDYsIAotICAgIDEwNjIxMSwgMTA2MjE2LCAxMDYyMjEsIDEwNjIyNiwgMTA2MjMxLCAxMDYyMzYsIDEwNjI0MSwgMTA2MjQ2LCAxMDYyNTMsIAotICAgIDEwNjI1OCwgMTA2MjYzLCAxMDYyNjgsIDEwNjI3MywgMTA2Mjc4LCAxMDYyODMsIDEwNjI4NywgMTA2MjkyLCAxMDYyOTcsIAotICAgIDEwNjMwMiwgMTA2MzA3LCAxMDYzMTIsIDEwNjMxNywgMTA2MzIyLCAxMDYzMjcsIDEwNjMzMiwgMTA2MzM3LCAxMDYzNDIsIAotICAgIDEwNjM0NywgMTA2MzUyLCAxMDYzNTcsIDEwNjM2NCwgMTA2MzY5LCAxMDYzNzQsIDEwNjM4MCwgMTA2Mzg1LCAxMDYzOTAsIAotICAgIDEwNjM5NSwgMTA2NDAwLCAxMDY0MDUsIDEwNjQxMCwgMTA2NDE1LCAxMDY0MjAsIDEwNjQyNSwgMTA2NDMwLCAxMDY0MzUsIAotICAgIDEwNjQ0MCwgMTA2NDQ1LCAxMDY0NTAsIDEwNjQ1NSwgMTA2NDYwLCAxMDY0NjUsIDEwNjQ3MCwgMTA2NDc1LCAxMDY0ODAsIAotICAgIDEwNjQ4NSwgMTA2NDkwLCAxMDY0OTUsIDEwNjUwMCwgMTA2NTA1LCAxMDY1MTAsIDEwNjUxNSwgMTA2NTIwLCAxMDY1MjUsIAotICAgIDEwNjUzMCwgMTA2NTM1LCAxMDY1NDAsIDEwNjU0NSwgMTA2NTUwLCAxMDY1NTUsIDEwNjU2MCwgMTA2NTY1LCAxMDY1NzAsIAotICAgIDEwNjU3NSwgMTA2NTgwLCAxMDY1ODUsIDEwNjU5MCwgMTA2NTk1LCAxMDY2MDIsIDEwNjYwNywgMTA2NjEyLCAxMDY2MTksIAotICAgIDEwNjYyNiwgMTA2NjMxLCAxMDY2MzYsIDEwNjY0MSwgMTA2NjQ2LCAxMDY2NTEsIDEwNjY1NiwgMTA2NjYxLCAxMDY2NjYsIAotICAgIDEwNjY3MSwgMTA2Njc2LCAxMDY2ODEsIDEwNjY4NiwgMTA2NjkxLCAxMDY2OTYsIDEwNjcwMSwgMTA2NzA2LCAxMDY3MTEsIAotICAgIDEwNjcxNiwgMTA2NzIxLCAxMDY3MjYsIDEwNjczMSwgMTA2NzM2LCAxMDY3NDEsIDEwNjc0NiwgMTA2NzUxLCAxMDY3NTgsIAotICAgIDEwNjc2MywgMTA2NzY4LCAxMDY3NzMsIDEwNjc3OCwgMTA2NzgzLCAxMDY3ODgsIDEwNjc5MywgMTA2Nzk4LCAxMDY4MDMsIAotICAgIDEwNjgwOCwgMTA2ODEzLCAxMDY4MTgsIDEwNjgyMywgMTA2ODI4LCAxMDY4MzMsIDEwNjgzOCwgMTA2ODQzLCAxMDY4NDgsIAotICAgIDEwNjg1NSwgMTA2ODYwLCAxMDY4NjUsIDEwNjg3MCwgMTA2ODc1LCAxMDY4ODAsIDEwNjg4NSwgMTA2ODkwLCAxMDY4OTYsIAotICAgIDEwNjkwMSwgMTA2OTA2LCAxMDY5MTEsIDEwNjkxNiwgMTA2OTIxLCAxMDY5MjYsIDEwNjkzMSwgMTA2OTM2LCAxMDY5NDMsIAotICAgIDEwNjk1MCwgMTA2OTU1LCAxMDY5NjAsIDEwNjk2NCwgMTA2OTY5LCAxMDY5NzMsIDEwNjk3NywgMTA2OTgyLCAxMDY5ODksIAotICAgIDEwNjk5NCwgMTA2OTk5LCAxMDcwMDgsIDEwNzAxMywgMTA3MDE4LCAxMDcwMjMsIDEwNzAyOCwgMTA3MDM1LCAxMDcwNDIsIAotICAgIDEwNzA0NywgMTA3MDUyLCAxMDcwNTcsIDEwNzA2MiwgMTA3MDY5LCAxMDcwNzQsIDEwNzA3OSwgMTA3MDg0LCAxMDcwODksIAotICAgIDEwNzA5NCwgMTA3MDk5LCAxMDcxMDQsIDEwNzEwOSwgMTA3MTE0LCAxMDcxMTksIDEwNzEyNCwgMTA3MTI5LCAxMDcxMzYsIAotICAgIDEwNzE0MCwgMTA3MTQ1LCAxMDcxNTAsIDEwNzE1NSwgMTA3MTYwLCAxMDcxNjQsIDEwNzE2OSwgMTA3MTc0LCAxMDcxNzksIAotICAgIDEwNzE4NCwgMTA3MTg5LCAxMDcxOTQsIDEwNzE5OSwgMTA3MjA0LCAxMDcyMDksIDEwNzIxNSwgMTA3MjIxLCAxMDcyMjcsIAotICAgIDEwNzIzMywgMTA3MjM5LCAxMDcyNDUsIDEwNzI1MSwgMTA3MjU3LCAxMDcyNjMsIDEwNzI2OSwgMTA3Mjc1LCAxMDcyODEsIAotICAgIDEwNzI4NiwgMTA3MjkyLCAxMDcyOTgsIDEwNzMwNCwgMTA3MzEwLCAxMDczMTYsIDEwNzMyMiwgMTA3MzI4LCAxMDczMzQsIAotICAgIDEwNzM0MCwgMTA3MzQ2LCAxMDczNTIsIDEwNzM1NywgMTA3MzYzLCAxMDczNjksIDEwNzM3NSwgMTA3MzgxLCAxMDczODcsIAotICAgIDEwNzM5MywgMTA3Mzk5LCAxMDc0MDUsIDEwNzQxMSwgMTA3NDE3LCAxMDc0MjMsIDEwNzQyOSwgMTA3NDM1LCAxMDc0NDEsIAotICAgIDEwNzQ0NywgMTA3NDUzLCAxMDc0NTksIDEwNzQ2NSwgMTA3NDcxLCAxMDc0NzcsIDEwNzQ4MiwgMTA3NDg4LCAxMDc0OTQsIAotICAgIDEwNzUwMCwgMTA3NTA2LCAxMDc1MTIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwNzAwMiwgMTA3MDA5LCAxMDcwMTYsIDEwNzAyNSwgMTA3MDM0LCAKKyAgICAxMDcwNDEsIDEwNzA0NiwgMTA3MDUzLCAxMDcwNjAsIDEwNzA2OSwgMTA3MDgwLCAxMDcwOTEsIDEwNzA5NiwgMTA3MTAzLCAKKyAgICAxMDcxMDgsIDEwNzExMywgMTA3MTE4LCAxMDcxMjMsIDEwNzEyOCwgMTA3MTMzLCAxMDcxMzgsIDEwNzE0MywgMTA3MTQ4LCAKKyAgICAxMDcxNTMsIDEwNzE1OCwgMTA3MTY1LCAxMDcxNzIsIDEwNzE3NywgMTA3MTgyLCAxMDcxODcsIDEwNzE5MiwgMTA3MTk5LCAKKyAgICAxMDcyMDYsIDEwNzIxNCwgMTA3MjE5LCAxMDcyMjYsIDEwNzIzMSwgMTA3MjM2LCAxMDcyNDEsIDEwNzI0NiwgMTA3MjUxLCAKKyAgICAxMDcyNTgsIDEwNzI2NSwgMTA3MjcwLCAxMDcyNzUsIDEwNzI4MCwgMTA3Mjg1LCAxMDcyOTAsIDEwNzI5NSwgMTA3MzAwLCAKKyAgICAxMDczMDUsIDEwNzMxMCwgMTA3MzE1LCAxMDczMjAsIDEwNzMyNSwgMTA3MzMwLCAxMDczMzUsIDEwNzM0MCwgMTA3MzQ1LCAKKyAgICAxMDczNTAsIDEwNzM1NSwgMTA3MzYwLCAxMDczNjcsIDEwNzM3MiwgMTA3Mzc3LCAxMDczODYsIDEwNzM5MywgMTA3Mzk4LCAKKyAgICAxMDc0MDMsIDEwNzQwOCwgMTA3NDEzLCAxMDc0MTgsIDEwNzQyMywgMTA3NDI4LCAxMDc0MzMsIDEwNzQzOCwgMTA3NDQzLCAKKyAgICAxMDc0NDgsIDEwNzQ1MywgMTA3NDU4LCAxMDc0NjMsIDEwNzQ2OCwgMTA3NDczLCAxMDc0NzgsIDEwNzQ4MywgMTA3NDg4LCAKKyAgICAxMDc0OTMsIDEwNzQ5OCwgMTA3NTA0LCAxMDc1MTIsIDEwNzUxOCwgMTA3NTI2LCAxMDc1MzQsIDEwNzU0MiwgMTA3NTQ4LCAKKyAgICAxMDc1NTQsIDEwNzU2MCwgMTA3NTY2LCAxMDc1NzIsIDEwNzU4MCwgMTA3NTkwLCAxMDc1OTgsIDEwNzYwNiwgMTA3NjEyLCAKKyAgICAxMDc2MTgsIDEwNzYyNiwgMTA3NjM0LCAxMDc2NDAsIDEwNzY0OCwgMTA3NjU2LCAxMDc2NjQsIDEwNzY3MCwgMTA3Njc2LCAKKyAgICAxMDc2ODIsIDEwNzY4OCwgMTA3Njk0LCAxMDc3MDAsIDEwNzcwOCwgMTA3NzE2LCAxMDc3MjIsIDEwNzcyOCwgMTA3NzM0LCAKKyAgICAxMDc3NDAsIDEwNzc0NiwgMTA3NzU0LCAxMDc3NjAsIDEwNzc2NiwgMTA3NzcyLCAxMDc3NzgsIDEwNzc4NCwgMTA3NzkwLCAKKyAgICAxMDc3OTgsIDEwNzgwNCwgMTA3ODEwLCAxMDc4MTYsIDEwNzgyMiwgMTA3ODMwLCAxMDc4MzgsIDEwNzg0NCwgMTA3ODUwLCAKKyAgICAxMDc4NTYsIDEwNzg2MSwgMTA3ODY3LCAxMDc4NzMsIDEwNzg4MCwgMTA3ODg1LCAxMDc4OTAsIDEwNzg5NSwgMTA3OTAwLCAKKyAgICAxMDc5MDUsIDEwNzkxMCwgMTA3OTE1LCAxMDc5MjAsIDEwNzkyNSwgMTA3OTM0LCAxMDc5NDEsIDEwNzk0NiwgMTA3OTUxLCAKKyAgICAxMDc5NTYsIDEwNzk2MywgMTA3OTY4LCAxMDc5NzMsIDEwNzk3OCwgMTA3OTg1LCAxMDc5OTAsIDEwNzk5NSwgMTA4MDAwLCAKKyAgICAxMDgwMDUsIDEwODAxMCwgMTA4MDE1LCAxMDgwMjAsIDEwODAyNSwgMTA4MDMwLCAxMDgwMzUsIDEwODA0MCwgMTA4MDQ3LCAKKyAgICAxMDgwNTIsIDEwODA1OSwgMTA4MDY0LCAxMDgwNjksIDEwODA3NiwgMTA4MDgxLCAxMDgwODYsIDEwODA5MSwgMTA4MDk2LCAKKyAgICAxMDgxMDEsIDEwODEwNiwgMTA4MTExLCAxMDgxMTYsIDEwODEyMSwgMTA4MTI2LCAxMDgxMzEsIDEwODEzNiwgMTA4MTQxLCAKKyAgICAxMDgxNDYsIDEwODE1MSwgMTA4MTU2LCAxMDgxNjEsIDEwODE2NiwgMTA4MTcxLCAxMDgxNzgsIDEwODE4MywgMTA4MTg4LCAKKyAgICAxMDgxOTMsIDEwODE5OCwgMTA4MjAzLCAxMDgyMDgsIDEwODIxMywgMTA4MjE4LCAxMDgyMjMsIDEwODIyOCwgMTA4MjMzLCAKKyAgICAxMDgyMzgsIDEwODI0MywgMTA4MjUwLCAxMDgyNTUsIDEwODI2MCwgMTA4MjY3LCAxMDgyNzIsIDEwODI3NywgMTA4MjgyLCAKKyAgICAxMDgyODcsIDEwODI5MiwgMTA4Mjk3LCAxMDgzMDIsIDEwODMwNywgMTA4MzEyLCAxMDgzMTcsIDEwODMyNCwgMTA4MzI5LCAKKyAgICAxMDgzMzQsIDEwODMzOSwgMTA4MzQ0LCAxMDgzNDksIDEwODM1NiwgMTA4MzYzLCAxMDgzNjgsIDEwODM3MywgMTA4Mzc4LCAKKyAgICAxMDgzODMsIDEwODM4OCwgMTA4MzkzLCAxMDgzOTgsIDEwODQwMywgMTA4NDA4LCAxMDg0MTMsIDEwODQxOCwgMTA4NDIzLCAKKyAgICAxMDg0MjgsIDEwODQzMywgMTA4NDM4LCAxMDg0NDMsIDEwODQ0OCwgMTA4NDUzLCAxMDg0NTgsIDEwODQ2MywgMTA4NDY4LCAKKyAgICAxMDg0NzMsIDEwODQ3OCwgMTA4NDgzLCAxMDg0ODgsIDEwODQ5MywgMTA4NDk4LCAxMDg1MDMsIDEwODUwOCwgMTA4NTEzLCAKKyAgICAxMDg1MTgsIDEwODUyMywgMTA4NTI4LCAxMDg1MzMsIDEwODUzOCwgMTA4NTQzLCAxMDg1NTAsIDEwODU1NSwgMTA4NTYwLCAKKyAgICAxMDg1NjUsIDEwODU3MCwgMTA4NTc1LCAxMDg1ODAsIDEwODU4NSwgMTA4NTkwLCAxMDg1OTUsIDEwODYwMCwgMTA4NjA1LCAKKyAgICAxMDg2MTAsIDEwODYxNSwgMTA4NjIwLCAxMDg2MjUsIDEwODYzMCwgMTA4NjM1LCAxMDg2NDAsIDEwODY0NSwgMTA4NjUwLCAKKyAgICAxMDg2NTUsIDEwODY2MCwgMTA4NjY1LCAxMDg2NzAsIDEwODY3NSwgMTA4NjgwLCAxMDg2ODUsIDEwODY5MCwgMTA4Njk1LCAKKyAgICAxMDg3MDAsIDEwODcwNSwgMTA4NzEwLCAxMDg3MTUsIDEwODcyMCwgMTA4NzI1LCAxMDg3MzAsIDEwODczNSwgMTA4NzQwLCAKKyAgICAxMDg3NDUsIDEwODc1MCwgMTA4NzU1LCAxMDg3NjAsIDEwODc2NSwgMTA4NzcwLCAxMDg3NzUsIDEwODc4MCwgMTA4Nzg1LCAKKyAgICAxMDg3OTAsIDEwODc5NSwgMTA4ODAwLCAxMDg4MDUsIDEwODgxMCwgMTA4ODE1LCAxMDg4MjAsIDEwODgyNSwgMTA4ODMwLCAKKyAgICAxMDg4MzUsIDEwODg0MCwgMTA4ODQ3LCAxMDg4NTIsIDEwODg1NywgMTA4ODYyLCAxMDg4NjcsIDEwODg3MiwgMTA4ODc3LCAKKyAgICAxMDg4ODEsIDEwODg4NiwgMTA4ODkxLCAxMDg4OTYsIDEwODkwMSwgMTA4OTA2LCAxMDg5MTEsIDEwODkxNiwgMTA4OTIxLCAKKyAgICAxMDg5MjYsIDEwODkzMSwgMTA4OTM2LCAxMDg5NDEsIDEwODk0NiwgMTA4OTUxLCAxMDg5NTgsIDEwODk2MywgMTA4OTY4LCAKKyAgICAxMDg5NzQsIDEwODk3OSwgMTA4OTg0LCAxMDg5ODksIDEwODk5NCwgMTA4OTk5LCAxMDkwMDQsIDEwOTAwOSwgMTA5MDE0LCAKKyAgICAxMDkwMTksIDEwOTAyNCwgMTA5MDI5LCAxMDkwMzQsIDEwOTAzOSwgMTA5MDQ0LCAxMDkwNDksIDEwOTA1NCwgMTA5MDU5LCAKKyAgICAxMDkwNjQsIDEwOTA2OSwgMTA5MDc0LCAxMDkwNzksIDEwOTA4NCwgMTA5MDg5LCAxMDkwOTQsIDEwOTA5OSwgMTA5MTA0LCAKKyAgICAxMDkxMDksIDEwOTExNCwgMTA5MTE5LCAxMDkxMjQsIDEwOTEyOSwgMTA5MTM0LCAxMDkxMzksIDEwOTE0NCwgMTA5MTQ5LCAKKyAgICAxMDkxNTQsIDEwOTE1OSwgMTA5MTY0LCAxMDkxNjksIDEwOTE3NCwgMTA5MTc5LCAxMDkxODQsIDEwOTE4OSwgMTA5MTk2LCAKKyAgICAxMDkyMDEsIDEwOTIwNiwgMTA5MjEzLCAxMDkyMjAsIDEwOTIyNSwgMTA5MjMwLCAxMDkyMzUsIDEwOTI0MCwgMTA5MjQ1LCAKKyAgICAxMDkyNTAsIDEwOTI1NSwgMTA5MjYwLCAxMDkyNjUsIDEwOTI3MCwgMTA5Mjc1LCAxMDkyODAsIDEwOTI4NSwgMTA5MjkwLCAKKyAgICAxMDkyOTUsIDEwOTMwMCwgMTA5MzA1LCAxMDkzMTAsIDEwOTMxNSwgMTA5MzIwLCAxMDkzMjUsIDEwOTMzMCwgMTA5MzM1LCAKKyAgICAxMDkzNDAsIDEwOTM0NSwgMTA5MzUyLCAxMDkzNTcsIDEwOTM2MiwgMTA5MzY3LCAxMDkzNzIsIDEwOTM3NywgMTA5MzgyLCAKKyAgICAxMDkzODcsIDEwOTM5MiwgMTA5Mzk3LCAxMDk0MDIsIDEwOTQwNywgMTA5NDEyLCAxMDk0MTcsIDEwOTQyMiwgMTA5NDI3LCAKKyAgICAxMDk0MzIsIDEwOTQzNywgMTA5NDQyLCAxMDk0NDksIDEwOTQ1NCwgMTA5NDU5LCAxMDk0NjQsIDEwOTQ2OSwgMTA5NDc0LCAKKyAgICAxMDk0NzksIDEwOTQ4NCwgMTA5NDkwLCAxMDk0OTUsIDEwOTUwMCwgMTA5NTA1LCAxMDk1MTAsIDEwOTUxNSwgMTA5NTIwLCAKKyAgICAxMDk1MjUsIDEwOTUzMCwgMTA5NTM3LCAxMDk1NDQsIDEwOTU0OSwgMTA5NTU0LCAxMDk1NTgsIDEwOTU2MywgMTA5NTY3LCAKKyAgICAxMDk1NzEsIDEwOTU3NiwgMTA5NTgzLCAxMDk1ODgsIDEwOTU5MywgMTA5NjAyLCAxMDk2MDcsIDEwOTYxMiwgMTA5NjE3LCAKKyAgICAxMDk2MjIsIDEwOTYyOSwgMTA5NjM2LCAxMDk2NDEsIDEwOTY0NiwgMTA5NjUxLCAxMDk2NTYsIDEwOTY2MywgMTA5NjY4LCAKKyAgICAxMDk2NzMsIDEwOTY3OCwgMTA5NjgzLCAxMDk2ODgsIDEwOTY5MywgMTA5Njk4LCAxMDk3MDMsIDEwOTcwOCwgMTA5NzEzLCAKKyAgICAxMDk3MTgsIDEwOTcyMywgMTA5NzMwLCAxMDk3MzQsIDEwOTczOSwgMTA5NzQ0LCAxMDk3NDksIDEwOTc1NCwgMTA5NzU4LCAKKyAgICAxMDk3NjMsIDEwOTc2OCwgMTA5NzczLCAxMDk3NzgsIDEwOTc4MywgMTA5Nzg4LCAxMDk3OTMsIDEwOTc5OCwgMTA5ODAzLCAKKyAgICAxMDk4MDksIDEwOTgxNSwgMTA5ODIxLCAxMDk4MjcsIDEwOTgzMywgMTA5ODM5LCAxMDk4NDUsIDEwOTg1MSwgMTA5ODU3LCAKKyAgICAxMDk4NjMsIDEwOTg2OSwgMTA5ODc1LCAxMDk4ODAsIDEwOTg4NiwgMTA5ODkyLCAxMDk4OTgsIDEwOTkwNCwgMTA5OTEwLCAKKyAgICAxMDk5MTYsIDEwOTkyMiwgMTA5OTI4LCAxMDk5MzQsIDEwOTk0MCwgMTA5OTQ2LCAxMDk5NTEsIDEwOTk1NywgMTA5OTYzLCAKKyAgICAxMDk5NjksIDEwOTk3NSwgMTA5OTgxLCAxMDk5ODcsIDEwOTk5MywgMTA5OTk5LCAxMTAwMDUsIDExMDAxMSwgMTEwMDE3LCAKKyAgICAxMTAwMjMsIDExMDAyOSwgMTEwMDM1LCAxMTAwNDEsIDExMDA0NywgMTEwMDUzLCAxMTAwNTksIDExMDA2NSwgMTEwMDcxLCAKKyAgICAxMTAwNzYsIDExMDA4MiwgMTEwMDg4LCAxMTAwOTQsIDExMDEwMCwgMTEwMTA2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDc1MTgsIDEwNzUyMywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTEwMTEyLCAxMTAxMTUsIDExMDExOSwgCisgICAgMTEwMTIzLCAxMTAxMjcsIDExMDEzMCwgMTEwMTM0LCAxMTAxMzksIDExMDE0MywgMTEwMTQ3LCAxMTAxNTEsIDExMDE1NSwgCisgICAgMTEwMTU5LCAxMTAxNjQsIDExMDE2OSwgMTEwMTczLCAxMTAxNzcsIDExMDE4MCwgMTEwMTg0LCAxMTAxODksIDExMDE5NCwgCisgICAgMTEwMTk4LCAxMTAyMDIsIDExMDIwNiwgMTEwMjEwLCAxMTAyMTQsIDExMDIxOCwgMTEwMjIyLCAxMTAyMjYsIDExMDIzMCwgCisgICAgMTEwMjM0LCAxMTAyMzcsIDExMDI0MSwgMTEwMjQ1LCAxMTAyNDksIDExMDI1MywgMTEwMjU3LCAxMTAyNjEsIDExMDI2NywgCisgICAgMTEwMjcwLCAxMTAyNzQsIDExMDI3OCwgMTEwMjgyLCAxMTAyODYsIDExMDI5MCwgMTEwMjk0LCAxMTAyOTgsIDExMDMwMiwgCisgICAgMTEwMzA2LCAxMTAzMTEsIDExMDMxNiwgMTEwMzIyLCAxMTAzMjYsIDExMDMzMCwgMTEwMzM0LCAxMTAzMzgsIDExMDM0MiwgCisgICAgMTEwMzQ2LCAxMTAzNTEsIDExMDM1NCwgMTEwMzU4LCAxMTAzNjIsIDExMDM2NiwgMTEwMzcwLCAxMTAzNzYsIDExMDM4MCwgCisgICAgMTEwMzg0LCAxMTAzODgsIDExMDM5MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTEwMzk2LCAxMTA0MDAsIAorICAgIDExMDQwNCwgMTEwNDEwLCAxMTA0MTYsIDExMDQyMCwgMTEwNDI1LCAxMTA0MzAsIDExMDQzNSwgMTEwNDQwLCAxMTA0NDQsIAorICAgIDExMDQ0OSwgMTEwNDU0LCAxMTA0NTksIDExMDQ2MywgMTEwNDY4LCAxMTA0NzMsIDExMDQ3OCwgMTEwNDgyLCAxMTA0ODcsIAorICAgIDExMDQ5MiwgMTEwNDk3LCAxMTA1MDIsIDExMDUwNywgMTEwNTEyLCAxMTA1MTcsIDExMDUyMiwgMTEwNTI2LCAxMTA1MzEsIAorICAgIDExMDUzNiwgMTEwNTQxLCAxMTA1NDYsIDExMDU1MSwgMTEwNTU2LCAxMTA1NjEsIDExMDU2NiwgMTEwNTcxLCAxMTA1NzYsIAorICAgIDExMDU4MSwgMTEwNTg4LCAxMTA1OTMsIDExMDYwMCwgMTEwNjA1LCAxMTA2MTAsIDExMDYxNSwgMTEwNjIwLCAxMTA2MjUsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExMDYzMCwgMTEwNjM0LCAxMTA2NDAsIAorICAgIDExMDY0MywgMTEwNjQ2LCAxMTA2NTAsIDExMDY1NCwgMTEwNjU4LCAxMTA2NjIsIDExMDY2NiwgMTEwNjcwLCAxMTA2NzQsIAorICAgIDExMDY4MCwgMTEwNjg2LCAxMTA2OTIsIDExMDY5OCwgMTEwNzA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDc1MjksIDEwNzUzNCwgCi0gICAgMTA3NTM5LCAxMDc1NDQsIDEwNzU1MSwgMTA3NTU4LCAxMDc1NjUsIDEwNzU3MiwgMTA3NTc3LCAxMDc1ODIsIDEwNzU4NywgCi0gICAgMTA3NTkyLCAxMDc1OTksIDEwNzYwNCwgMTA3NjExLCAxMDc2MTgsIDEwNzYyMywgMTA3NjI4LCAxMDc2MzMsIDEwNzY0MCwgCi0gICAgMTA3NjQ1LCAxMDc2NTAsIDEwNzY1NywgMTA3NjY0LCAxMDc2NjksIDEwNzY3NCwgMTA3Njc5LCAxMDc2ODYsIDEwNzY5MywgCi0gICAgMTA3NzAwLCAxMDc3MDUsIDEwNzcxMCwgMTA3NzE3LCAxMDc3MjQsIDEwNzczMSwgMTA3NzM4LCAxMDc3NDMsIDEwNzc0OCwgCi0gICAgMTA3NzUzLCAxMDc3NjAsIDEwNzc2NSwgMTA3NzcwLCAxMDc3NzUsIDEwNzc4MiwgMTA3NzkxLCAxMDc3OTgsIDEwNzgwMywgCi0gICAgMTA3ODA4LCAxMDc4MTMsIDEwNzgxOCwgMTA3ODIzLCAxMDc4MjgsIDEwNzgzNywgMTA3ODQ0LCAxMDc4NDksIDEwNzg1NiwgCi0gICAgMTA3ODYzLCAxMDc4NjgsIDEwNzg3MywgMTA3ODc4LCAxMDc4ODUsIDEwNzg5MCwgMTA3ODk3LCAxMDc5MDQsIDEwNzkwOSwgCi0gICAgMTA3OTE0LCAxMDc5MTksIDEwNzkyNiwgMTA3OTMzLCAxMDc5MzgsIDEwNzk0MywgMTA3OTUwLCAxMDc5NTcsIDEwNzk2NCwgCi0gICAgMTA3OTY5LCAxMDc5NzQsIDEwNzk3OSwgMTA3OTg0LCAxMDc5OTEsIDEwODAwMCwgMTA4MDA5LCAxMDgwMTQsIDEwODAyMSwgCi0gICAgMTA4MDMwLCAxMDgwMzUsIDEwODA0MCwgMTA4MDQ1LCAxMDgwNTAsIDEwODA1NywgMTA4MDY0LCAxMDgwNzEsIDEwODA3OCwgCi0gICAgMTA4MDgzLCAxMDgwODgsIDEwODA5MywgMTA4MTAwLCAxMDgxMDcsIDEwODExNCwgMTA4MTE5LCAxMDgxMjQsIDEwODEzMSwgCi0gICAgMTA4MTM2LCAxMDgxNDMsIDEwODE0OCwgMTA4MTU1LCAxMDgxNjAsIDEwODE2NywgMTA4MTc0LCAxMDgxNzksIDEwODE4NCwgCi0gICAgMTA4MTg5LCAxMDgxOTQsIDEwODE5OSwgMTA4MjA0LCAxMDgyMDksIDEwODIxNCwgMTA4MjE5LCAxMDgyMjYsIDEwODIzMywgCi0gICAgMTA4MjQwLCAxMDgyNDcsIDEwODI1NCwgMTA4MjYzLCAxMDgyNjgsIDEwODI3MywgMTA4MjgwLCAxMDgyODcsIDEwODI5MiwgCi0gICAgMTA4Mjk5LCAxMDgzMDYsIDEwODMxMywgMTA4MzIwLCAxMDgzMjcsIDEwODMzNCwgMTA4MzM5LCAxMDgzNDQsIDEwODM0OSwgCi0gICAgMTA4MzU0LCAxMDgzNTksIDEwODM2OCwgMTA4Mzc3LCAxMDgzODYsIDEwODM5NSwgMTA4NDA0LCAxMDg0MTMsIDEwODQyMiwgCi0gICAgMTA4NDMxLCAxMDg0MzYsIDEwODQ0NywgMTA4NDU4LCAxMDg0NjcsIDEwODQ3MiwgMTA4NDc3LCAxMDg0ODIsIDEwODQ4NywgCi0gICAgMTA4NDk2LCAxMDg1MDMsIDEwODUxMCwgMTA4NTE3LCAxMDg1MjQsIDEwODUzMSwgMTA4NTM4LCAxMDg1NDcsIDEwODU1NiwgCi0gICAgMTA4NTY3LCAxMDg1NzYsIDEwODU4NywgMTA4NTk2LCAxMDg2MDMsIDEwODYxMiwgMTA4NjIzLCAxMDg2MzIsIDEwODY0MSwgCi0gICAgMTA4NjUwLCAxMDg2NTksIDEwODY2NiwgMTA4NjczLCAxMDg2ODAsIDEwODY4OSwgMTA4Njk4LCAxMDg3MDksIDEwODcxOCwgCi0gICAgMTA4NzI3LCAxMDg3MzgsIDEwODc0MywgMTA4NzQ4LCAxMDg3NTksIDEwODc2NywgMTA4Nzc2LCAxMDg3ODUsIDEwODc5NCwgCi0gICAgMTA4ODA1LCAxMDg4MTQsIDEwODgyMywgMTA4ODM0LCAxMDg4NDUsIDEwODg1NiwgMTA4ODY3LCAxMDg4NzgsIDEwODg4OSwgCi0gICAgMTA4ODk2LCAxMDg5MDMsIDEwODkxMCwgMTA4OTE3LCAxMDg5MjgsIDEwODkzNywgMTA4OTQ0LCAxMDg5NTEsIDEwODk1OCwgCi0gICAgMTA4OTY5LCAxMDg5ODAsIDEwODk5MSwgMTA5MDAyLCAxMDkwMTMsIDEwOTAyNCwgMTA5MDM1LCAxMDkwNDYsIDEwOTA1MywgCi0gICAgMTA5MDYwLCAxMDkwNjksIDEwOTA3OCwgMTA5MDg1LCAxMDkwOTIsIDEwOTA5OSwgMTA5MTA4LCAxMDkxMTcsIDEwOTEyNiwgCi0gICAgMTA5MTMzLCAxMDkxNDIsIDEwOTE1MSwgMTA5MTYwLCAxMDkxNjcsIDEwOTE3NCwgMTA5MTc5LCAxMDkxODUsIDEwOTE5MiwgCi0gICAgMTA5MTk5LCAxMDkyMDYsIDEwOTIxMywgMTA5MjIwLCAxMDkyMjcsIDEwOTIzNiwgMTA5MjQ1LCAxMDkyNTQsIDEwOTI2MywgCi0gICAgMTA5MjcwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDkyNzksIDEwOTI4NSwgMTA5MjkwLCAxMDkyOTUsIAotICAgIDEwOTMwMiwgMTA5MzA4LCAxMDkzMTQsIDEwOTMyMCwgMTA5MzI2LCAxMDkzMzIsIDEwOTMzOCwgMTA5MzQ0LCAxMDkzNDgsIAotICAgIDEwOTM1MiwgMTA5MzU4LCAxMDkzNjQsIDEwOTM3MCwgMTA5Mzc0LCAxMDkzNzksIDEwOTM4NCwgMTA5Mzg4LCAxMDkzOTIsIAotICAgIDEwOTM5NSwgMTA5NDAxLCAxMDk0MDcsIDEwOTQxMywgMTA5NDE5LCAxMDk0MjUsIDEwOTQzMSwgMTA5NDM3LCAxMDk0NDMsIAotICAgIDEwOTQ0OSwgMTA5NDU5LCAxMDk0NjksIDEwOTQ3NSwgMTA5NDgxLCAxMDk0OTEsIDEwOTUwMSwgMTA5NTA3LCAwLCAwLCAKLSAgICAxMDk1MTMsIDEwOTUyMSwgMTA5NTI2LCAxMDk1MzEsIDEwOTUzNywgMTA5NTQzLCAxMDk1NDksIDEwOTU1NSwgMTA5NTYxLCAKLSAgICAxMDk1NjcsIDEwOTU3NCwgMTA5NTgxLCAxMDk1ODcsIDEwOTU5MywgMTA5NTk5LCAxMDk2MDUsIDEwOTYxMSwgMTA5NjE3LCAKLSAgICAxMDk2MjMsIDEwOTYyOSwgMTA5NjM0LCAxMDk2NDAsIDEwOTY0NiwgMTA5NjUyLCAxMDk2NTgsIDEwOTY2NCwgMTA5NjczLCAKLSAgICAxMDk2NzksIDEwOTY4NCwgMTA5NjkyLCAxMDk2OTksIDEwOTcwNiwgMTA5NzE1LCAxMDk3MjQsIDEwOTczMywgMTA5NzQyLCAKLSAgICAxMDk3NTEsIDEwOTc2MCwgMTA5NzY5LCAxMDk3NzgsIDEwOTc4OCwgMTA5Nzk4LCAxMDk4MDYsIDEwOTgxNCwgMTA5ODIzLCAKLSAgICAxMDk4MzIsIDEwOTgzOCwgMTA5ODQ0LCAxMDk4NTAsIDEwOTg1NiwgMTA5ODY0LCAxMDk4NzIsIDEwOTg3NiwgMTA5ODgyLCAKLSAgICAxMDk4ODcsIDEwOTg5MywgMTA5ODk5LCAxMDk5MDUsIDEwOTkxMSwgMTA5OTE3LCAxMDk5MjYsIDEwOTkzMSwgMTA5OTM4LCAKLSAgICAxMDk5NDMsIDEwOTk0OCwgMTA5OTUzLCAxMDk5NTksIDEwOTk2NSwgMTA5OTcxLCAxMDk5NzgsIDEwOTk4MywgMTA5OTg4LCAKLSAgICAxMDk5OTMsIDEwOTk5OCwgMTEwMDAzLCAxMTAwMDksIDExMDAxNSwgMTEwMDIxLCAxMTAwMjcsIDExMDAzMywgMTEwMDM5LCAKLSAgICAxMTAwNDUsIDExMDA1MSwgMTEwMDU2LCAxMTAwNjEsIDExMDA2NiwgMTEwMDcxLCAxMTAwNzYsIDExMDA4MSwgMTEwMDg2LCAKLSAgICAxMTAwOTEsIDExMDA5NywgMTEwMTAzLCAxMTAxMDgsIDExMDExMywgMTEwMTE4LCAxMTAxMjMsIDExMDEyOCwgMTEwMTM0LCAKLSAgICAxMTAxNDEsIDExMDE0NSwgMTEwMTQ5LCAxMTAxNTMsIDExMDE1NywgMTEwMTYxLCAxMTAxNjUsIDExMDE2OSwgMTEwMTczLCAKLSAgICAxMTAxODEsIDExMDE5MSwgMTEwMTk1LCAxMTAxOTksIDExMDIwNSwgMTEwMjExLCAxMTAyMTcsIDExMDIyMywgMTEwMjI5LCAKLSAgICAxMTAyMzUsIDExMDI0MSwgMTEwMjQ3LCAxMTAyNTMsIDExMDI1OSwgMTEwMjY1LCAxMTAyNzEsIDExMDI3NywgMTEwMjgzLCAKLSAgICAxMTAyODcsIDExMDI5MSwgMTEwMjk4LCAxMTAzMDQsIDExMDMxMCwgMTEwMzE2LCAxMTAzMjEsIDExMDMyOCwgMTEwMzMzLCAKLSAgICAxMTAzMzksIDExMDM0NSwgMTEwMzUxLCAxMTAzNTcsIDExMDM2MiwgMTEwMzY2LCAxMTAzNzIsIDExMDM3NiwgMTEwMzgwLCAKLSAgICAxMTAzODQsIDExMDM5MCwgMTEwMzk2LCAxMTA0MDAsIDExMDQwNiwgMTEwNDEyLCAxMTA0MTgsIDExMDQyNCwgMTEwNDMwLCAKLSAgICAxMTA0MzgsIDExMDQ0NiwgMTEwNDUyLCAxMTA0NTgsIDExMDQ2NCwgMTEwNDcwLCAxMTA0ODIsIDExMDQ5NCwgMTEwNTA4LCAKLSAgICAxMTA1MjAsIDExMDUzMiwgMTEwNTQ2LCAxMTA1NjAsIDExMDU3NCwgMTEwNTc4LCAxMTA1ODYsIDExMDU5NCwgMTEwNTk5LCAKLSAgICAxMTA2MDMsIDExMDYwNywgMTEwNjExLCAxMTA2MTUsIDExMDYxOSwgMTEwNjIzLCAxMTA2MjcsIDExMDYzMywgMTEwNjM5LCAKLSAgICAxMTA2NDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExMDY1MSwgMTEwNjU3LCAxMTA2NjMsIDExMDY2OSwgCi0gICAgMTEwNjc1LCAxMTA2ODEsIDExMDY4NywgMTEwNjkzLCAxMTA2OTksIDExMDcwNSwgMTEwNzExLCAxMTA3MTcsIDExMDcyMywgCi0gICAgMTEwNzI5LCAxMTA3MzUsIDExMDc0MSwgMTEwNzQ3LCAxMTA3NTMsIDExMDc1OSwgMTEwNzY1LCAxMTA3NzEsIDExMDc3NywgCi0gICAgMTEwNzgzLCAxMTA3ODksIDExMDc5NSwgMTEwODAxLCAxMTA4MDcsIDExMDgxMywgMTEwODE5LCAxMTA4MjUsIDExMDgzMSwgCi0gICAgMTEwODM3LCAxMTA4NDMsIDExMDg0OSwgMTEwODU1LCAxMTA4NjEsIDExMDg2NywgMTEwODczLCAxMTA4NzksIDExMDg4NSwgCi0gICAgMTEwODkxLCAxMTA4OTcsIDExMDkwMywgMTEwOTA5LCAxMTA5MTUsIDExMDkyMSwgMTEwOTI3LCAxMTA5MzMsIDExMDkzOSwgCi0gICAgMTEwOTQ1LCAxMTA5NTEsIDExMDk1NywgMTEwOTYzLCAxMTA5NjksIDExMDk3NSwgMTEwOTgxLCAxMTA5ODcsIDExMDk5MywgCi0gICAgMTEwOTk5LCAxMTEwMDUsIDExMTAxMSwgMTExMDE3LCAxMTEwMjMsIDExMTAyOSwgMTExMDM1LCAxMTEwNDEsIDExMTA0NywgCi0gICAgMTExMDUyLCAxMTEwNTcsIDExMTA2MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTExMDY2LCAxMTEwNzEsIAotICAgIDExMTA3OCwgMTExMDg1LCAxMTEwOTIsIDExMTA5OSwgMTExMTA0LCAxMTExMDgsIDExMTExNCwgMTExMTE4LCAxMTExMjIsIAotICAgIDExMTEyOCwgMTExMTMyLCAxMTExMzYsIDExMTE0MCwgMTExMTQ2LCAxMTExNTMsIDExMTE1NywgMTExMTYxLCAxMTExNjUsIAotICAgIDExMTE2OSwgMTExMTczLCAxMTExNzcsIDExMTE4MywgMTExMTg3LCAxMTExOTEsIDExMTE5NSwgMTExMTk5LCAxMTEyMDMsIAotICAgIDExMTIwNywgMTExMjExLCAxMTEyMTUsIDExMTIxOSwgMTExMjIzLCAxMTEyMjcsIDExMTIzMSwgMTExMjM2LCAxMTEyNDAsIAotICAgIDExMTI0NCwgMTExMjQ4LCAxMTEyNTIsIDExMTI1NiwgMTExMjYwLCAxMTEyNjQsIDExMTI2OCwgMTExMjcyLCAxMTEyNzksIAotICAgIDExMTI4MywgMTExMjkxLCAxMTEyOTUsIDExMTI5OSwgMTExMzAzLCAxMTEzMDcsIDExMTMxMSwgMTExMzE1LCAxMTEzMTksIAotICAgIDExMTMyNiwgMTExMzMwLCAxMTEzMzQsIDExMTMzOCwgMTExMzQyLCAxMTEzNDYsIDExMTM1MiwgMTExMzU2LCAxMTEzNjIsIAotICAgIDExMTM2NiwgMTExMzcwLCAxMTEzNzQsIDExMTM3OCwgMTExMzgyLCAxMTEzODYsIDExMTM5MCwgMTExMzk0LCAxMTEzOTgsIAotICAgIDExMTQwMiwgMTExNDA2LCAxMTE0MTAsIDExMTQxNCwgMTExNDE4LCAxMTE0MjIsIDExMTQyNiwgMTExNDMwLCAxMTE0MzQsIAotICAgIDExMTQzOCwgMTExNDQ2LCAxMTE0NTAsIDExMTQ1NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTExNDU4LCAKLSAgICAxMTE0NjYsIDExMTQ3NCwgMTExNDgyLCAxMTE0OTAsIDExMTQ5OCwgMTExNTA2LCAxMTE1MTQsIDExMTUyMiwgMTExNTMwLCAKLSAgICAxMTE1MzgsIDExMTU0NiwgMTExNTU0LCAxMTE1NjIsIDExMTU3MCwgMTExNTc4LCAxMTE1ODYsIDExMTU5NCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTExNjAyLCAxMTE2MDYsIDExMTYxMSwgMTExNjE2LCAxMTE2MjEsIAotICAgIDExMTYyNSwgMTExNjMwLCAxMTE2MzUsIDExMTY0MCwgMTExNjQ0LCAxMTE2NDksIDExMTY1NCwgMTExNjU4LCAxMTE2NjIsIAotICAgIDExMTY2NiwgMTExNjcwLCAxMTE2NzUsIDExMTY4MCwgMTExNjg0LCAxMTE2ODgsIDExMTY5MywgMTExNjk3LCAxMTE3MDIsIAotICAgIDExMTcwNywgMTExNzEyLCAxMTE3MTcsIDExMTcyMiwgMTExNzI2LCAxMTE3MzEsIDExMTczNiwgMTExNzQxLCAxMTE3NDUsIAotICAgIDExMTc1MCwgMTExNzU1LCAxMTE3NjAsIDExMTc2NCwgMTExNzY5LCAxMTE3NzQsIDExMTc3OCwgMTExNzgyLCAxMTE3ODYsIAotICAgIDExMTc5MCwgMTExNzk1LCAxMTE4MDAsIDExMTgwNCwgMTExODA4LCAxMTE4MTMsIDExMTgxNywgMTExODIyLCAxMTE4MjcsIAotICAgIDExMTgzMiwgMTExODM3LCAxMTE4NDIsIDExMTg0NiwgMTExODUxLCAxMTE4NTYsIDExMTg2MSwgMTExODY1LCAxMTE4NzAsIAotICAgIDExMTg3NSwgMTExODgwLCAxMTE4ODQsIDExMTg4OSwgMTExODk0LCAxMTE4OTgsIDExMTkwMiwgMTExOTA2LCAxMTE5MTAsIAotICAgIDExMTkxNSwgMTExOTIwLCAxMTE5MjQsIDExMTkyOCwgMTExOTMzLCAxMTE5MzcsIDExMTk0MiwgMTExOTQ3LCAxMTE5NTIsIAotICAgIDExMTk1NywgMTExOTYyLCAxMTE5NjYsIDExMTk3MSwgMTExOTc2LCAxMTE5ODEsIDExMTk4NSwgMTExOTkwLCAwLCAKLSAgICAxMTE5OTUsIDExMTk5OSwgMTEyMDA0LCAxMTIwMDksIDExMjAxMywgMTEyMDE3LCAxMTIwMjEsIDExMjAyNSwgMTEyMDMwLCAKLSAgICAxMTIwMzUsIDExMjAzOSwgMTEyMDQzLCAxMTIwNDgsIDExMjA1MiwgMTEyMDU3LCAxMTIwNjIsIDExMjA2NywgMTEyMDcyLCAKLSAgICAxMTIwNzcsIDExMjA4MiwgMTEyMDg4LCAxMTIwOTQsIDExMjEwMCwgMTEyMTA1LCAxMTIxMTEsIDExMjExNywgMTEyMTIzLCAKLSAgICAxMTIxMjgsIDExMjEzNCwgMTEyMTQwLCAxMTIxNDUsIDExMjE1MCwgMTEyMTU1LCAxMTIxNjAsIDExMjE2NiwgMTEyMTcyLCAKLSAgICAxMTIxNzcsIDExMjE4MiwgMTEyMTg4LCAxMTIxOTMsIDExMjE5OSwgMTEyMjA1LCAxMTIyMTEsIDExMjIxNywgMTEyMjIzLCAKLSAgICAxMTIyMjgsIDExMjIzNCwgMTEyMjQwLCAxMTIyNDYsIDExMjI1MSwgMTEyMjU3LCAxMTIyNjMsIDExMjI2OSwgMTEyMjc0LCAKLSAgICAxMTIyODAsIDExMjI4NiwgMTEyMjkxLCAxMTIyOTYsIDExMjMwMSwgMTEyMzA2LCAxMTIzMTIsIDExMjMxOCwgMTEyMzIzLCAKLSAgICAxMTIzMjgsIDExMjMzNCwgMTEyMzM5LCAxMTIzNDUsIDExMjM1MSwgMTEyMzU3LCAxMTIzNjMsIDExMjM2OSwgMCwgCi0gICAgMTEyMzczLCAxMTIzNzgsIDAsIDAsIDExMjM4MywgMCwgMCwgMTEyMzg4LCAxMTIzOTMsIDAsIDAsIDExMjM5OCwgMTEyNDAyLCAKLSAgICAxMTI0MDYsIDExMjQxMSwgMCwgMTEyNDE2LCAxMTI0MjAsIDExMjQyNSwgMTEyNDI5LCAxMTI0MzQsIDExMjQzOSwgCi0gICAgMTEyNDQ0LCAxMTI0NDksIDExMjQ1NCwgMTEyNDU4LCAxMTI0NjMsIDExMjQ2OCwgMCwgMTEyNDczLCAwLCAxMTI0NzgsIAotICAgIDExMjQ4MywgMTEyNDg3LCAxMTI0OTIsIDExMjQ5NywgMTEyNTAxLCAxMTI1MDUsIDAsIDExMjUwOSwgMTEyNTE0LCAKLSAgICAxMTI1MTksIDExMjUyMywgMTEyNTI3LCAxMTI1MzIsIDExMjUzNiwgMTEyNTQxLCAxMTI1NDYsIDExMjU1MSwgMTEyNTU2LCAKLSAgICAxMTI1NjEsIDExMjU2NiwgMTEyNTcyLCAxMTI1NzgsIDExMjU4NCwgMTEyNTg5LCAxMTI1OTUsIDExMjYwMSwgMTEyNjA3LCAKLSAgICAxMTI2MTIsIDExMjYxOCwgMTEyNjI0LCAxMTI2MjksIDExMjYzNCwgMTEyNjM5LCAxMTI2NDQsIDExMjY1MCwgMTEyNjU2LCAKLSAgICAxMTI2NjEsIDExMjY2NiwgMTEyNjcyLCAxMTI2NzcsIDExMjY4MywgMTEyNjg5LCAxMTI2OTUsIDExMjcwMSwgMTEyNzA3LCAKLSAgICAxMTI3MTIsIDExMjcxOCwgMTEyNzI0LCAxMTI3MzAsIDExMjczNSwgMTEyNzQxLCAxMTI3NDcsIDExMjc1MywgMTEyNzU4LCAKLSAgICAxMTI3NjQsIDExMjc3MCwgMTEyNzc1LCAxMTI3ODAsIDExMjc4NSwgMTEyNzkwLCAxMTI3OTYsIDExMjgwMiwgMTEyODA3LCAKLSAgICAxMTI4MTIsIDExMjgxOCwgMTEyODIzLCAxMTI4MjksIDExMjgzNSwgMTEyODQxLCAxMTI4NDcsIDExMjg1MywgMTEyODU3LCAKLSAgICAwLCAxMTI4NjIsIDExMjg2NywgMTEyODcxLCAxMTI4NzYsIDAsIDAsIDExMjg4MSwgMTEyODg2LCAxMTI4OTEsIDExMjg5NSwgCi0gICAgMTEyODk5LCAxMTI5MDMsIDExMjkwNywgMTEyOTEyLCAwLCAxMTI5MTcsIDExMjkyMSwgMTEyOTI2LCAxMTI5MzAsIAotICAgIDExMjkzNSwgMTEyOTQwLCAxMTI5NDUsIDAsIDExMjk1MCwgMTEyOTU0LCAxMTI5NTksIDExMjk2NCwgMTEyOTY5LCAKLSAgICAxMTI5NzMsIDExMjk3OCwgMTEyOTgzLCAxMTI5ODgsIDExMjk5MiwgMTEyOTk3LCAxMTMwMDIsIDExMzAwNiwgMTEzMDEwLCAKLSAgICAxMTMwMTQsIDExMzAxOCwgMTEzMDIzLCAxMTMwMjgsIDExMzAzMiwgMTEzMDM2LCAxMTMwNDEsIDExMzA0NSwgMTEzMDUwLCAKLSAgICAxMTMwNTUsIDExMzA2MCwgMTEzMDY1LCAxMTMwNzAsIDExMzA3NCwgMCwgMTEzMDc5LCAxMTMwODQsIDExMzA4OCwgCi0gICAgMTEzMDkzLCAwLCAxMTMwOTgsIDExMzEwMiwgMTEzMTA3LCAxMTMxMTIsIDExMzExNiwgMCwgMTEzMTIwLCAwLCAwLCAwLCAKLSAgICAxMTMxMjQsIDExMzEyOCwgMTEzMTMzLCAxMTMxMzcsIDExMzE0MiwgMTEzMTQ3LCAxMTMxNTIsIDAsIDExMzE1NywgCi0gICAgMTEzMTYxLCAxMTMxNjYsIDExMzE3MSwgMTEzMTc2LCAxMTMxODAsIDExMzE4NSwgMTEzMTkwLCAxMTMxOTUsIDExMzE5OSwgCi0gICAgMTEzMjA0LCAxMTMyMDksIDExMzIxMywgMTEzMjE3LCAxMTMyMjEsIDExMzIyNSwgMTEzMjMwLCAxMTMyMzUsIDExMzIzOSwgCi0gICAgMTEzMjQzLCAxMTMyNDgsIDExMzI1MiwgMTEzMjU3LCAxMTMyNjIsIDExMzI2NywgMTEzMjcyLCAxMTMyNzcsIDExMzI4MiwgCi0gICAgMTEzMjg4LCAxMTMyOTQsIDExMzMwMCwgMTEzMzA1LCAxMTMzMTEsIDExMzMxNywgMTEzMzIzLCAxMTMzMjgsIDExMzMzNCwgCi0gICAgMTEzMzQwLCAxMTMzNDUsIDExMzM1MCwgMTEzMzU1LCAxMTMzNjAsIDExMzM2NiwgMTEzMzcyLCAxMTMzNzcsIDExMzM4MiwgCi0gICAgMTEzMzg4LCAxMTMzOTMsIDExMzM5OSwgMTEzNDA1LCAxMTM0MTEsIDExMzQxNywgMTEzNDIzLCAxMTM0MjgsIDExMzQzNCwgCi0gICAgMTEzNDQwLCAxMTM0NDYsIDExMzQ1MSwgMTEzNDU3LCAxMTM0NjMsIDExMzQ2OSwgMTEzNDc0LCAxMTM0ODAsIDExMzQ4NiwgCi0gICAgMTEzNDkxLCAxMTM0OTYsIDExMzUwMSwgMTEzNTA2LCAxMTM1MTIsIDExMzUxOCwgMTEzNTIzLCAxMTM1MjgsIDExMzUzNCwgCi0gICAgMTEzNTM5LCAxMTM1NDUsIDExMzU1MSwgMTEzNTU3LCAxMTM1NjMsIDExMzU2OSwgMTEzNTczLCAxMTM1NzgsIDExMzU4MywgCi0gICAgMTEzNTg4LCAxMTM1OTIsIDExMzU5NywgMTEzNjAyLCAxMTM2MDcsIDExMzYxMSwgMTEzNjE2LCAxMTM2MjEsIDExMzYyNSwgCi0gICAgMTEzNjI5LCAxMTM2MzMsIDExMzYzNywgMTEzNjQyLCAxMTM2NDcsIDExMzY1MSwgMTEzNjU1LCAxMTM2NjAsIDExMzY2NCwgCi0gICAgMTEzNjY5LCAxMTM2NzQsIDExMzY3OSwgMTEzNjg0LCAxMTM2ODksIDExMzY5MywgMTEzNjk4LCAxMTM3MDMsIDExMzcwOCwgCi0gICAgMTEzNzEyLCAxMTM3MTcsIDExMzcyMiwgMTEzNzI3LCAxMTM3MzEsIDExMzczNiwgMTEzNzQxLCAxMTM3NDUsIDExMzc0OSwgCi0gICAgMTEzNzUzLCAxMTM3NTcsIDExMzc2MiwgMTEzNzY3LCAxMTM3NzEsIDExMzc3NSwgMTEzNzgwLCAxMTM3ODQsIDExMzc4OSwgCi0gICAgMTEzNzk0LCAxMTM3OTksIDExMzgwNCwgMTEzODA5LCAxMTM4MTQsIDExMzgyMCwgMTEzODI2LCAxMTM4MzIsIDExMzgzNywgCi0gICAgMTEzODQzLCAxMTM4NDksIDExMzg1NSwgMTEzODYwLCAxMTM4NjYsIDExMzg3MiwgMTEzODc3LCAxMTM4ODIsIDExMzg4NywgCi0gICAgMTEzODkyLCAxMTM4OTgsIDExMzkwNCwgMTEzOTA5LCAxMTM5MTQsIDExMzkyMCwgMTEzOTI1LCAxMTM5MzEsIDExMzkzNywgCi0gICAgMTEzOTQzLCAxMTM5NDksIDExMzk1NSwgMTEzOTYwLCAxMTM5NjYsIDExMzk3MiwgMTEzOTc4LCAxMTM5ODMsIDExMzk4OSwgCi0gICAgMTEzOTk1LCAxMTQwMDEsIDExNDAwNiwgMTE0MDEyLCAxMTQwMTgsIDExNDAyMywgMTE0MDI4LCAxMTQwMzMsIDExNDAzOCwgCi0gICAgMTE0MDQ0LCAxMTQwNTAsIDExNDA1NSwgMTE0MDYwLCAxMTQwNjYsIDExNDA3MSwgMTE0MDc3LCAxMTQwODMsIDExNDA4OSwgCi0gICAgMTE0MDk1LCAxMTQxMDEsIDExNDEwNiwgMTE0MTEyLCAxMTQxMTgsIDExNDEyNCwgMTE0MTI5LCAxMTQxMzUsIDExNDE0MSwgCi0gICAgMTE0MTQ3LCAxMTQxNTIsIDExNDE1OCwgMTE0MTY0LCAxMTQxNjksIDExNDE3NCwgMTE0MTc5LCAxMTQxODQsIDExNDE5MCwgCi0gICAgMTE0MTk2LCAxMTQyMDEsIDExNDIwNiwgMTE0MjEyLCAxMTQyMTcsIDExNDIyMywgMTE0MjI5LCAxMTQyMzUsIDExNDI0MSwgCi0gICAgMTE0MjQ3LCAxMTQyNTIsIDExNDI1OCwgMTE0MjY0LCAxMTQyNzAsIDExNDI3NSwgMTE0MjgxLCAxMTQyODcsIDExNDI5MywgCi0gICAgMTE0Mjk4LCAxMTQzMDQsIDExNDMxMCwgMTE0MzE1LCAxMTQzMjAsIDExNDMyNSwgMTE0MzMwLCAxMTQzMzYsIDExNDM0MiwgCi0gICAgMTE0MzQ3LCAxMTQzNTIsIDExNDM1OCwgMTE0MzYzLCAxMTQzNjksIDExNDM3NSwgMTE0MzgxLCAxMTQzODcsIDExNDM5MywgCi0gICAgMTE0Mzk5LCAxMTQ0MDYsIDExNDQxMywgMTE0NDIwLCAxMTQ0MjYsIDExNDQzMywgMTE0NDQwLCAxMTQ0NDcsIDExNDQ1MywgCi0gICAgMTE0NDYwLCAxMTQ0NjcsIDExNDQ3MywgMTE0NDc5LCAxMTQ0ODUsIDExNDQ5MSwgMTE0NDk4LCAxMTQ1MDUsIDExNDUxMSwgCi0gICAgMTE0NTE3LCAxMTQ1MjQsIDExNDUzMCwgMTE0NTM3LCAxMTQ1NDQsIDExNDU1MSwgMTE0NTU4LCAxMTQ1NjUsIDExNDU3MSwgCi0gICAgMTE0NTc4LCAxMTQ1ODUsIDExNDU5MiwgMTE0NTk4LCAxMTQ2MDUsIDExNDYxMiwgMTE0NjE5LCAxMTQ2MjUsIDExNDYzMiwgCi0gICAgMTE0NjM5LCAxMTQ2NDUsIDExNDY1MSwgMTE0NjU3LCAxMTQ2NjMsIDExNDY3MCwgMTE0Njc3LCAxMTQ2ODMsIDExNDY4OSwgCi0gICAgMTE0Njk2LCAxMTQ3MDIsIDExNDcwOSwgMTE0NzE2LCAxMTQ3MjMsIDExNDczMCwgMTE0NzM3LCAxMTQ3NDIsIDExNDc0OCwgCi0gICAgMTE0NzU0LCAxMTQ3NjAsIDExNDc2NSwgMTE0NzcxLCAxMTQ3NzcsIDExNDc4MywgMTE0Nzg4LCAxMTQ3OTQsIDExNDgwMCwgCi0gICAgMTE0ODA1LCAxMTQ4MTAsIDExNDgxNSwgMTE0ODIwLCAxMTQ4MjYsIDExNDgzMiwgMTE0ODM3LCAxMTQ4NDIsIDExNDg0OCwgCi0gICAgMTE0ODUzLCAxMTQ4NTksIDExNDg2NSwgMTE0ODcxLCAxMTQ4NzcsIDExNDg4MywgMTE0ODg4LCAxMTQ4OTQsIDExNDkwMCwgCi0gICAgMTE0OTA2LCAxMTQ5MTEsIDExNDkxNywgMTE0OTIzLCAxMTQ5MjksIDExNDkzNCwgMTE0OTQwLCAxMTQ5NDYsIDExNDk1MSwgCi0gICAgMTE0OTU2LCAxMTQ5NjEsIDExNDk2NiwgMTE0OTcyLCAxMTQ5NzgsIDExNDk4MywgMTE0OTg4LCAxMTQ5OTQsIDExNDk5OSwgCi0gICAgMTE1MDA1LCAxMTUwMTEsIDExNTAxNywgMTE1MDIzLCAxMTUwMjksIDExNTAzNSwgMCwgMCwgMTE1MDQyLCAxMTUwNDcsIAotICAgIDExNTA1MiwgMTE1MDU3LCAxMTUwNjIsIDExNTA2NywgMTE1MDcyLCAxMTUwNzcsIDExNTA4MiwgMTE1MDg3LCAxMTUwOTIsIAotICAgIDExNTA5NywgMTE1MTAyLCAxMTUxMDcsIDExNTExMiwgMTE1MTE3LCAxMTUxMjIsIDExNTEyNywgMTE1MTMzLCAxMTUxMzgsIAotICAgIDExNTE0MywgMTE1MTQ4LCAxMTUxNTMsIDExNTE1OCwgMTE1MTYzLCAxMTUxNjgsIDExNTE3MiwgMTE1MTc3LCAxMTUxODIsIAotICAgIDExNTE4NywgMTE1MTkyLCAxMTUxOTcsIDExNTIwMiwgMTE1MjA3LCAxMTUyMTIsIDExNTIxNywgMTE1MjIyLCAxMTUyMjcsIAotICAgIDExNTIzMiwgMTE1MjM3LCAxMTUyNDIsIDExNTI0NywgMTE1MjUyLCAxMTUyNTcsIDExNTI2MywgMTE1MjY4LCAxMTUyNzMsIAotICAgIDExNTI3OCwgMTE1MjgzLCAxMTUyODgsIDExNTI5MywgMTE1Mjk4LCAxMTUzMDQsIDExNTMwOSwgMTE1MzE0LCAxMTUzMTksIAotICAgIDExNTMyNCwgMTE1MzI5LCAxMTUzMzQsIDExNTMzOSwgMTE1MzQ0LCAxMTUzNDksIDExNTM1NCwgMTE1MzU5LCAxMTUzNjQsIAotICAgIDExNTM2OSwgMTE1Mzc0LCAxMTUzNzksIDExNTM4NCwgMTE1Mzg5LCAxMTUzOTQsIDExNTM5OSwgMTE1NDA0LCAxMTU0MDksIAotICAgIDExNTQxNCwgMTE1NDE5LCAxMTU0MjUsIDExNTQzMCwgMTE1NDM1LCAxMTU0NDAsIDExNTQ0NSwgMTE1NDUwLCAxMTU0NTUsIAotICAgIDExNTQ2MCwgMTE1NDY0LCAxMTU0NjksIDExNTQ3NCwgMTE1NDc5LCAxMTU0ODQsIDExNTQ4OSwgMTE1NDk0LCAxMTU0OTksIAotICAgIDExNTUwNCwgMTE1NTA5LCAxMTU1MTQsIDExNTUxOSwgMTE1NTI0LCAxMTU1MjksIDExNTUzNCwgMTE1NTM5LCAxMTU1NDQsIAotICAgIDExNTU0OSwgMTE1NTU1LCAxMTU1NjAsIDExNTU2NSwgMTE1NTcwLCAxMTU1NzUsIDExNTU4MCwgMTE1NTg1LCAxMTU1OTAsIAotICAgIDExNTU5NiwgMTE1NjAxLCAxMTU2MDYsIDExNTYxMSwgMTE1NjE2LCAxMTU2MjEsIDExNTYyNiwgMTE1NjMyLCAxMTU2MzgsIAotICAgIDExNTY0NCwgMTE1NjUwLCAxMTU2NTYsIDExNTY2MiwgMTE1NjY4LCAxMTU2NzQsIDExNTY4MCwgMTE1Njg2LCAxMTU2OTIsIAotICAgIDExNTY5OCwgMTE1NzA0LCAxMTU3MTAsIDExNTcxNiwgMTE1NzIyLCAxMTU3MjgsIDExNTczNSwgMTE1NzQxLCAxMTU3NDcsIAotICAgIDExNTc1MywgMTE1NzU5LCAxMTU3NjUsIDExNTc3MSwgMTE1Nzc3LCAxMTU3ODIsIDExNTc4OCwgMTE1Nzk0LCAxMTU4MDAsIAotICAgIDExNTgwNiwgMTE1ODEyLCAxMTU4MTgsIDExNTgyNCwgMTE1ODMwLCAxMTU4MzYsIDExNTg0MiwgMTE1ODQ4LCAxMTU4NTQsIAotICAgIDExNTg2MCwgMTE1ODY2LCAxMTU4NzIsIDExNTg3OCwgMTE1ODg0LCAxMTU4OTEsIDExNTg5NywgMTE1OTAzLCAxMTU5MDksIAotICAgIDExNTkxNSwgMTE1OTIxLCAxMTU5MjcsIDExNTkzMywgMTE1OTQwLCAxMTU5NDYsIDExNTk1MiwgMTE1OTU4LCAxMTU5NjQsIAotICAgIDExNTk3MCwgMTE1OTc2LCAxMTU5ODIsIDExNTk4OCwgMTE1OTk0LCAxMTYwMDAsIDExNjAwNiwgMTE2MDEyLCAxMTYwMTgsIAotICAgIDExNjAyNCwgMTE2MDMwLCAxMTYwMzYsIDExNjA0MiwgMTE2MDQ4LCAxMTYwNTQsIDExNjA2MCwgMTE2MDY2LCAxMTYwNzIsIAotICAgIDExNjA3OCwgMTE2MDg1LCAxMTYwOTEsIDExNjA5NywgMTE2MTAzLCAxMTYxMDksIDExNjExNSwgMTE2MTIxLCAxMTYxMjcsIAotICAgIDExNjEzMiwgMTE2MTM4LCAxMTYxNDQsIDExNjE1MCwgMTE2MTU2LCAxMTYxNjIsIDExNjE2OCwgMTE2MTc0LCAxMTYxODAsIAotICAgIDExNjE4NiwgMTE2MTkyLCAxMTYxOTgsIDExNjIwNCwgMTE2MjEwLCAxMTYyMTYsIDExNjIyMiwgMTE2MjI4LCAxMTYyMzQsIAotICAgIDExNjI0MSwgMTE2MjQ3LCAxMTYyNTMsIDExNjI1OSwgMTE2MjY1LCAxMTYyNzEsIDExNjI3NywgMTE2MjgzLCAxMTYyOTAsIAotICAgIDExNjI5NiwgMTE2MzAyLCAxMTYzMDgsIDExNjMxNCwgMTE2MzIwLCAxMTYzMjYsIDExNjMzMywgMTE2MzQwLCAxMTYzNDcsIAotICAgIDExNjM1NCwgMTE2MzYxLCAxMTYzNjgsIDExNjM3NSwgMTE2MzgyLCAxMTYzODksIDExNjM5NiwgMTE2NDAzLCAxMTY0MTAsIAotICAgIDExNjQxNywgMTE2NDI0LCAxMTY0MzEsIDExNjQzOCwgMTE2NDQ1LCAxMTY0NTMsIDExNjQ2MCwgMTE2NDY3LCAxMTY0NzQsIAotICAgIDExNjQ4MSwgMTE2NDg4LCAxMTY0OTUsIDExNjUwMiwgMTE2NTA4LCAxMTY1MTUsIDExNjUyMiwgMTE2NTI5LCAxMTY1MzYsIAotICAgIDExNjU0MywgMTE2NTUwLCAxMTY1NTcsIDExNjU2NCwgMTE2NTcxLCAxMTY1NzgsIDExNjU4NSwgMTE2NTkyLCAxMTY1OTksIAotICAgIDExNjYwNiwgMTE2NjEzLCAxMTY2MjAsIDExNjYyNywgMTE2NjM1LCAxMTY2NDIsIDExNjY0OSwgMTE2NjU2LCAxMTY2NjMsIAotICAgIDExNjY3MCwgMTE2Njc3LCAxMTY2ODQsIDExNjY5MiwgMTE2Njk5LCAxMTY3MDYsIDExNjcxMywgMTE2NzIwLCAxMTY3MjcsIAotICAgIDExNjczNCwgMTE2NzM5LCAwLCAwLCAxMTY3NDQsIDExNjc0OSwgMTE2NzUzLCAxMTY3NTcsIDExNjc2MSwgMTE2NzY1LCAKLSAgICAxMTY3NjksIDExNjc3MywgMTE2Nzc3LCAxMTY3ODEsIDExNjc4NSwgMTE2NzkwLCAxMTY3OTQsIDExNjc5OCwgMTE2ODAyLCAKLSAgICAxMTY4MDYsIDExNjgxMCwgMTE2ODE0LCAxMTY4MTgsIDExNjgyMiwgMTE2ODI2LCAxMTY4MzEsIDExNjgzNSwgMTE2ODM5LCAKLSAgICAxMTY4NDMsIDExNjg0NywgMTE2ODUxLCAxMTY4NTUsIDExNjg1OSwgMTE2ODYzLCAxMTY4NjcsIDExNjg3MywgMTE2ODc4LCAKLSAgICAxMTY4ODMsIDExNjg4OCwgMTE2ODkzLCAxMTY4OTgsIDExNjkwMywgMTE2OTA4LCAxMTY5MTMsIDExNjkxOCwgMTE2OTI0LCAKLSAgICAxMTY5MjksIDExNjkzNCwgMTE2OTM5LCAxMTY5NDQsIDExNjk0OSwgMTE2OTU0LCAxMTY5NTksIDExNjk2NCwgMTE2OTY5LCAKLSAgICAxMTY5NzYsIDExNjk4MywgMTE2OTkwLCAxMTY5OTcsIDExNzAwNCwgMTE3MDExLCAxMTcwMTcsIDExNzAyNCwgMTE3MDMxLCAKLSAgICAxMTcwMzgsIDExNzA0NiwgMTE3MDU0LCAxMTcwNjIsIDExNzA3MCwgMTE3MDc4LCAxMTcwODYsIDExNzA5MywgMTE3MTAwLCAKLSAgICAxMTcxMDcsIDExNzExNSwgMTE3MTIzLCAxMTcxMzEsIDExNzEzOSwgMTE3MTQ3LCAxMTcxNTUsIDExNzE2MiwgMTE3MTY5LCAKLSAgICAxMTcxNzYsIDExNzE4NCwgMTE3MTkyLCAxMTcyMDAsIDExNzIwOCwgMTE3MjE2LCAxMTcyMjQsIDExNzIyOSwgMTE3MjM0LCAKLSAgICAxMTcyMzksIDExNzI0NCwgMTE3MjQ5LCAxMTcyNTQsIDExNzI1OSwgMTE3MjY0LCAxMTcyNjksIDAsIDAsIDAsIDAsIAotICAgIDExNzI3NCwgMTE3Mjc5LCAxMTcyODMsIDExNzI4NywgMTE3MjkxLCAxMTcyOTUsIDExNzI5OSwgMTE3MzAzLCAxMTczMDcsIAotICAgIDExNzMxMSwgMTE3MzE1LCAxMTczMTksIDExNzMyMywgMTE3MzI3LCAxMTczMzEsIDExNzMzNSwgMTE3MzM5LCAxMTczNDMsIAotICAgIDExNzM0NywgMTE3MzUxLCAxMTczNTUsIDExNzM1OSwgMTE3MzYzLCAxMTczNjcsIDExNzM3MSwgMTE3Mzc1LCAxMTczNzksIAotICAgIDExNzM4MywgMTE3Mzg3LCAxMTczOTEsIDExNzM5NSwgMTE3Mzk5LCAxMTc0MDMsIDExNzQwNywgMTE3NDExLCAxMTc0MTUsIAotICAgIDExNzQxOSwgMTE3NDIzLCAxMTc0MjcsIDExNzQzMSwgMTE3NDM1LCAxMTc0MzksIDExNzQ0MywgMTE3NDQ3LCAxMTc0NTEsIAotICAgIDExNzQ1NSwgMTE3NDU5LCAxMTc0NjMsIDExNzQ2NywgMTE3NDcxLCAxMTc0NzUsIDExNzQ4MCwgMTE3NDg0LCAxMTc0ODgsIAotICAgIDExNzQ5MiwgMTE3NDk2LCAxMTc1MDAsIDExNzUwNCwgMTE3NTA4LCAxMTc1MTIsIDExNzUxNiwgMTE3NTIwLCAxMTc1MjQsIAotICAgIDExNzUyOCwgMTE3NTMyLCAxMTc1MzYsIDExNzU0MCwgMTE3NTQ0LCAxMTc1NDgsIDExNzU1MiwgMTE3NTU2LCAxMTc1NjAsIAotICAgIDExNzU2NCwgMTE3NTY4LCAxMTc1NzIsIDExNzU3NiwgMTE3NTgwLCAxMTc1ODQsIDExNzU4OCwgMTE3NTkyLCAxMTc1OTYsIAotICAgIDExNzYwMCwgMTE3NjA0LCAxMTc2MDgsIDExNzYxMiwgMTE3NjE2LCAxMTc2MjAsIDExNzYyNCwgMTE3NjI4LCAxMTc2MzIsIAotICAgIDExNzYzNiwgMTE3NjQwLCAxMTc2NDQsIDExNzY0OCwgMTE3NjUyLCAxMTc2NTYsIDExNzY2MCwgMTE3NjY0LCAxMTc2NjgsIAotICAgIDExNzY3MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE3Njc2LCAxMTc2ODIsIDExNzY5MSwgCi0gICAgMTE3Njk5LCAxMTc3MDcsIDExNzcxNiwgMTE3NzI1LCAxMTc3MzQsIDExNzc0MywgMTE3NzUyLCAxMTc3NjEsIDExNzc3MCwgCi0gICAgMTE3Nzc5LCAxMTc3ODgsIDExNzc5NywgMCwgMCwgMTE3ODA2LCAxMTc4MTUsIDExNzgyMywgMTE3ODMxLCAxMTc4NDAsIAotICAgIDExNzg0OSwgMTE3ODU4LCAxMTc4NjcsIDExNzg3NiwgMTE3ODg1LCAxMTc4OTQsIDExNzkwMywgMTE3OTEyLCAxMTc5MjEsIAotICAgIDAsIDAsIDExNzkzMCwgMTE3OTM5LCAxMTc5NDcsIDExNzk1NSwgMTE3OTY0LCAxMTc5NzMsIDExNzk4MiwgMTE3OTkxLCAKLSAgICAxMTgwMDAsIDExODAwOSwgMTE4MDE4LCAxMTgwMjcsIDExODAzNiwgMTE4MDQ1LCAxMTgwNTQsIDAsIDExODA2MSwgCi0gICAgMTE4MDcwLCAxMTgwNzgsIDExODA4NiwgMTE4MDk1LCAxMTgxMDQsIDExODExMywgMTE4MTIyLCAxMTgxMzEsIDExODE0MCwgCi0gICAgMTE4MTQ5LCAxMTgxNTgsIDExODE2NywgMTE4MTc2LCAxMTgxODUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExODE5MiwgCi0gICAgMTE4MTk5LCAxMTgyMDQsIDExODIwOCwgMTE4MjEyLCAxMTgyMTYsIDExODIyMSwgMTE4MjI2LCAxMTgyMzEsIDExODIzNiwgCi0gICAgMTE4MjQxLCAwLCAwLCAwLCAwLCAwLCAxMTgyNDYsIDExODI1MSwgMTE4MjU3LCAxMTgyNjMsIDExODI2OSwgMTE4Mjc0LCAKLSAgICAxMTgyODAsIDExODI4NiwgMTE4MjkyLCAxMTgyOTcsIDExODMwMywgMTE4MzA5LCAxMTgzMTQsIDExODMxOSwgMTE4MzI0LCAKLSAgICAxMTgzMjksIDExODMzNSwgMTE4MzQxLCAxMTgzNDYsIDExODM1MSwgMTE4MzU3LCAxMTgzNjIsIDExODM2OCwgMTE4Mzc0LCAKLSAgICAxMTgzODAsIDExODM4NiwgMTE4MzkyLCAxMTg0MDIsIDExODQwOSwgMTE4NDE1LCAxMTg0MTgsIDAsIDExODQyMSwgCi0gICAgMTE4NDI2LCAxMTg0MzIsIDExODQzOCwgMTE4NDQ0LCAxMTg0NDksIDExODQ1NSwgMTE4NDYxLCAxMTg0NjcsIDExODQ3MiwgCi0gICAgMTE4NDc4LCAxMTg0ODQsIDExODQ4OSwgMTE4NDk0LCAxMTg0OTksIDExODUwNCwgMTE4NTEwLCAxMTg1MTYsIDExODUyMSwgCi0gICAgMTE4NTI2LCAxMTg1MzIsIDExODUzNywgMTE4NTQzLCAxMTg1NDksIDExODU1NSwgMTE4NTYxLCAxMTg1NjcsIDExODU3MCwgCi0gICAgMTE4NTczLCAxMTg1NzYsIDExODU3OSwgMTE4NTgyLCAxMTg1ODUsIDExODU5MSwgMTE4NTk4LCAxMTg2MDUsIDExODYxMiwgCi0gICAgMTE4NjE4LCAxMTg2MjUsIDExODYzMiwgMTE4NjM5LCAxMTg2NDUsIDExODY1MiwgMTE4NjU5LCAxMTg2NjUsIDExODY3MSwgCi0gICAgMTE4Njc3LCAxMTg2ODMsIDExODY5MCwgMTE4Njk3LCAxMTg3MDMsIDExODcwOSwgMTE4NzE2LCAxMTg3MjIsIDExODcyOSwgCi0gICAgMTE4NzM2LCAxMTg3NDMsIDExODc1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE4NzU3LCAxMTg3NjMsIDExODc3MCwgMTE4Nzc3LCAKLSAgICAxMTg3ODQsIDExODc5MCwgMTE4Nzk3LCAxMTg4MDQsIDExODgxMSwgMTE4ODE3LCAxMTg4MjQsIDExODgzMSwgMTE4ODM3LCAKLSAgICAxMTg4NDMsIDExODg0OSwgMTE4ODU1LCAxMTg4NjIsIDExODg2OSwgMTE4ODc1LCAxMTg4ODEsIDExODg4OCwgMTE4ODk0LCAKLSAgICAxMTg5MDEsIDExODkwOCwgMTE4OTE1LCAxMTg5MjIsIDExODkyOSwgMTE4OTM4LCAxMTg5NDIsIDExODk0NSwgMTE4OTQ5LCAKLSAgICAxMTg5NTMsIDExODk1NywgMTE4OTYwLCAxMTg5NjMsIDExODk2NiwgMTE4OTY5LCAxMTg5NzIsIDExODk3NSwgMTE4OTc4LCAKLSAgICAxMTg5ODEsIDExODk4NCwgMTE4OTkwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTg5OTMsIDExOTAwMCwgMTE5MDA4LCAxMTkwMTYsIDExOTAyNCwgCi0gICAgMTE5MDMxLCAxMTkwMzksIDExOTA0NywgMTE5MDU1LCAxMTkwNjIsIDExOTA3MCwgMTE5MDc4LCAxMTkwODUsIDExOTA5MiwgCi0gICAgMTE5MDk5LCAxMTkxMDYsIDExOTExNCwgMTE5MTIyLCAxMTkxMjksIDExOTEzNiwgMTE5MTQ0LCAxMTkxNTEsIDExOTE1OSwgCi0gICAgMTE5MTY3LCAxMTkxNzUsIDExOTE4MywgMTE5MTkxLCAxMTkxOTUsIDExOTE5OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTE5MjAzLCAxMTkyMDksIDExOTIxNSwgMTE5MjIxLCAxMTkyMjUsIDExOTIzMSwgMTE5MjM3LCAKLSAgICAxMTkyNDMsIDExOTI0OSwgMTE5MjU1LCAxMTkyNjEsIDExOTI2NywgMTE5MjczLCAxMTkyNzksIDExOTI4NSwgMTE5MjkxLCAKLSAgICAxMTkyOTcsIDExOTMwMywgMTE5MzA5LCAxMTkzMTUsIDExOTMyMSwgMTE5MzI3LCAxMTkzMzMsIDExOTMzOSwgMTE5MzQ1LCAKLSAgICAxMTkzNTEsIDExOTM1NywgMTE5MzYzLCAxMTkzNjksIDExOTM3NSwgMTE5MzgxLCAxMTkzODcsIDExOTM5MywgMTE5Mzk5LCAKLSAgICAxMTk0MDUsIDExOTQxMSwgMTE5NDE3LCAxMTk0MjMsIDExOTQyOSwgMTE5NDM1LCAxMTk0NDEsIDExOTQ0NywgMTE5NDUzLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxMTk0NTksIDExOTQ3MCwgMTE5NDgxLCAxMTk0OTIsIDExOTUwMywgMTE5NTE0LCAxMTk1MjUsIAotICAgIDExOTUzNiwgMTE5NTQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTk1NTgsIDExOTU2MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE5NTY2LCAxMTk1NjgsIDExOTU3MCwgCi0gICAgMTE5NTc0LCAxMTk1NzksIDExOTU4NCwgMTE5NTg2LCAxMTk1OTIsIDExOTU5NywgMTE5NTk5LCAxMTk2MDUsIDExOTYwOSwgCi0gICAgMTE5NjExLCAxMTk2MTUsIDExOTYyMSwgMTE5NjI3LCAxMTk2MzMsIDExOTYzOCwgMTE5NjQyLCAxMTk2NDksIDExOTY1NiwgCi0gICAgMTE5NjYzLCAxMTk2NjgsIDExOTY3NSwgMTE5NjgyLCAxMTk2ODksIDExOTY5MywgMTE5Njk5LCAxMTk3MDgsIDExOTcxNywgCi0gICAgMTE5NzI0LCAxMTk3MjksIDExOTczMywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTE5NzM3LCAxMTk3MzksIDExOTc0MSwgMTE5NzQ1LCAxMTk3NDksIDExOTc1MywgMCwgMTE5NzU1LCAxMTk3NTcsIAotICAgIDExOTc2MSwgMTE5NzYzLCAxMTk3NjUsIDExOTc2NywgMTE5NzY5LCAxMTk3NzQsIDExOTc3OSwgMTE5NzgxLCAxMTk3ODcsIAotICAgIDExOTc5MSwgMTE5Nzk1LCAxMTk4MDMsIDExOTgwNSwgMTE5ODA3LCAxMTk4MDksIDExOTgxMSwgMTE5ODEzLCAxMTk4MTUsIAotICAgIDExOTgxNywgMTE5ODE5LCAxMTk4MjEsIDExOTgyMywgMTE5ODI3LCAxMTk4MzEsIDExOTgzMywgMTE5ODM1LCAxMTk4MzcsIAotICAgIDExOTgzOSwgMTE5ODQxLCAxMTk4NDYsIDExOTg1MiwgMTE5ODU2LCAxMTk4NjAsIDExOTg2NCwgMTE5ODY4LCAxMTk4NzMsIAotICAgIDExOTg3NywgMTE5ODc5LCAxMTk4ODEsIDExOTg4NSwgMTE5ODkxLCAxMTk4OTMsIDExOTg5NSwgMTE5ODk3LCAxMTk5MDEsIAotICAgIDExOTkxMCwgMTE5OTE2LCAxMTk5MjAsIDExOTkyNCwgMTE5OTI2LCAxMTk5MjgsIDExOTkzMSwgMTE5OTMzLCAxMTk5MzUsIAotICAgIDExOTkzNywgMTE5OTQxLCAxMTk5NDMsIDExOTk0NywgMTE5OTUyLCAxMTk5NTQsIDExOTk1OSwgMTE5OTY1LCAxMTk5NzIsIAotICAgIDExOTk3NiwgMTE5OTgwLCAxMTk5ODQsIDExOTk4OCwgMTE5OTk0LCAwLCAwLCAwLCAxMTk5OTgsIDEyMDAwMCwgMTIwMDA0LCAKLSAgICAxMjAwMDgsIDEyMDAxMCwgMTIwMDE0LCAxMjAwMTgsIDEyMDAyMCwgMTIwMDI0LCAxMjAwMjYsIDEyMDAzMCwgMTIwMDM0LCAKLSAgICAxMjAwMzgsIDEyMDA0MiwgMTIwMDQ2LCAxMjAwNTAsIDEyMDA1NCwgMTIwMDU4LCAxMjAwNjQsIDEyMDA2OCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTIwMDcyLCAxMjAwNzYsIDEyMDA4MCwgMTIwMDg0LCAxMjAwOTEsIAotICAgIDEyMDA5MywgMTIwMDk3LCAxMjAwOTksIDEyMDEwMSwgMTIwMTA1LCAxMjAxMDksIDEyMDExMywgMTIwMTE1LCAxMjAxMTksIAotICAgIDEyMDEyMywgMTIwMTI3LCAxMjAxMzEsIDEyMDEzNSwgMTIwMTM3LCAxMjAxNDEsIDEyMDE0MywgMTIwMTQ5LCAxMjAxNTIsIAotICAgIDEyMDE1NywgMTIwMTU5LCAxMjAxNjEsIDEyMDE2NCwgMTIwMTY2LCAxMjAxNjgsIDEyMDE3MSwgMTIwMTc4LCAxMjAxODUsIAotICAgIDEyMDE5MiwgMTIwMTk3LCAxMjAyMDEsIDEyMDIwMywgMTIwMjA1LCAwLCAxMjAyMDcsIDEyMDIwOSwgMTIwMjEzLCAKLSAgICAxMjAyMTcsIDEyMDIyMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMTIwMjIzLCAxMjAyMjcsIDEyMDIzMiwgMTIwMjM2LCAxMjAyNDIsIDEyMDI0OCwgMTIwMjUwLCAxMjAyNTIsIAotICAgIDEyMDI1OCwgMTIwMjYwLCAxMjAyNjQsIDEyMDI2OCwgMTIwMjcwLCAxMjAyNzQsIDEyMDI3NiwgMTIwMjgwLCAxMjAyODQsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyMDI4OCwgMTIwMjkwLCAxMjAyOTIsIAotICAgIDEyMDI5NCwgMTIwMjk4LCAxMjAzMDAsIDEyMDMwMiwgMTIwMzA0LCAxMjAzMDYsIDEyMDMwOCwgMTIwMzEwLCAxMjAzMTIsIAotICAgIDEyMDMxNCwgMTIwMzE2LCAxMjAzMTgsIDEyMDMyMCwgMTIwMzIyLCAxMjAzMjQsIDEyMDMyNiwgMTIwMzI4LCAxMjAzMzAsIAotICAgIDEyMDMzMiwgMTIwMzM0LCAxMjAzMzYsIDEyMDMzOCwgMTIwMzQwLCAxMjAzNDIsIDEyMDM0NiwgMTIwMzQ4LCAxMjAzNTAsIAotICAgIDEyMDM1MiwgMTIwMzU2LCAxMjAzNTgsIDEyMDM2MiwgMTIwMzY0LCAxMjAzNjYsIDEyMDM3MCwgMTIwMzc0LCAxMjAzODAsIAotICAgIDEyMDM4MiwgMTIwMzg0LCAxMjAzODYsIDEyMDM4OCwgMTIwMzkyLCAxMjAzOTYsIDEyMDM5OCwgMTIwNDAyLCAxMjA0MDYsIAotICAgIDEyMDQxMCwgMTIwNDE0LCAxMjA0MTgsIDEyMDQyMiwgMTIwNDI2LCAxMjA0MzAsIDEyMDQzNCwgMTIwNDM4LCAxMjA0NDIsIAotICAgIDEyMDQ0NiwgMTIwNDUwLCAxMjA0NTQsIDEyMDQ1OCwgMTIwNDYyLCAxMjA0NjYsIDAsIDEyMDQ3MCwgMCwgMTIwNDcyLCAKLSAgICAxMjA0NzQsIDEyMDQ3NiwgMTIwNDc4LCAxMjA0ODAsIDEyMDQ4OCwgMTIwNDk2LCAxMjA1MDQsIDEyMDUxMiwgMTIwNTE3LCAKLSAgICAxMjA1MjIsIDEyMDUyNywgMTIwNTMxLCAxMjA1MzUsIDEyMDU0MCwgMTIwNTQ1LCAxMjA1NDcsIDEyMDU1MSwgMTIwNTUzLCAKLSAgICAxMjA1NTUsIDEyMDU1NywgMTIwNTU5LCAxMjA1NjEsIDEyMDU2MywgMTIwNTY1LCAxMjA1NjksIDEyMDU3MSwgMTIwNTczLCAKLSAgICAxMjA1NzUsIDEyMDU3OSwgMTIwNTgzLCAxMjA1ODcsIDEyMDU5MSwgMTIwNTk1LCAxMjA1OTcsIDEyMDYwMywgMTIwNjA5LCAKLSAgICAxMjA2MTEsIDEyMDYxMywgMTIwNjE1LCAxMjA2MTcsIDEyMDYxOSwgMTIwNjI4LCAxMjA2MzUsIDEyMDY0MiwgMTIwNjQ2LCAKLSAgICAxMjA2NTMsIDEyMDY1OCwgMTIwNjY1LCAxMjA2NzQsIDEyMDY3OSwgMTIwNjgzLCAxMjA2ODcsIDEyMDY4OSwgMTIwNjkzLCAKLSAgICAxMjA2OTUsIDEyMDY5OSwgMTIwNzAzLCAxMjA3MDUsIDEyMDcwOSwgMTIwNzEzLCAxMjA3MTcsIDEyMDcxOSwgMTIwNzIxLCAKLSAgICAxMjA3MjcsIDEyMDcyOSwgMTIwNzMxLCAxMjA3MzMsIDEyMDczNywgMTIwNzQxLCAxMjA3NDMsIDEyMDc0NywgMTIwNzQ5LCAKLSAgICAxMjA3NTEsIDEyMDc1NCwgMTIwNzU4LCAxMjA3NjAsIDEyMDc2NCwgMTIwNzY2LCAxMjA3NjgsIDEyMDc3MywgMTIwNzc1LCAKLSAgICAxMjA3NzksIDEyMDc4MywgMTIwNzg2LCAxMjA3OTAsIDEyMDc5NCwgMTIwNzk4LCAxMjA4MDIsIDEyMDgwNiwgMTIwODEwLCAKLSAgICAxMjA4MTQsIDEyMDgxOSwgMTIwODIzLCAxMjA4MjcsIDEyMDgzNiwgMTIwODQxLCAxMjA4NDQsIDEyMDg0NiwgMTIwODQ5LCAKLSAgICAxMjA4NTIsIDEyMDg1NywgMTIwODU5LCAxMjA4NjIsIDEyMDg2NywgMTIwODcxLCAxMjA4NzQsIDEyMDg3OCwgMTIwODgyLCAKLSAgICAxMjA4ODUsIDEyMDg5MCwgMTIwODk0LCAxMjA4OTgsIDEyMDkwMiwgMTIwOTA2LCAxMjA5MTIsIDEyMDkxOCwgMTIwOTI0LCAKLSAgICAxMjA5MzAsIDEyMDkzNSwgMTIwOTQ2LCAxMjA5NDgsIDEyMDk1MiwgMTIwOTU0LCAxMjA5NTYsIDEyMDk2MCwgMTIwOTY0LCAKLSAgICAxMjA5NjYsIDEyMDk3MCwgMTIwOTc2LCAxMjA5ODEsIDEyMDk4NywgMTIwOTg5LCAxMjA5OTMsIDEyMDk5NywgMTIxMDA0LCAKLSAgICAxMjEwMTEsIDEyMTAxNSwgMTIxMDE3LCAxMjEwMTksIDEyMTAyMywgMTIxMDI1LCAxMjEwMjksIDEyMTAzMywgMTIxMDM3LCAKLSAgICAxMjEwMzksIDEyMTA0MSwgMTIxMDQ4LCAxMjEwNTIsIDEyMTA1NiwgMTIxMDYwLCAxMjEwNjQsIDEyMTA2OCwgMTIxMDcwLCAKLSAgICAxMjEwNzQsIDEyMTA3NiwgMTIxMDc4LCAxMjEwODIsIDEyMTA4NCwgMTIxMDg4LCAxMjEwOTIsIDEyMTA5OCwgMTIxMTAyLCAKLSAgICAxMjExMDYsIDEyMTExMCwgMTIxMTEyLCAxMjExMTUsIDEyMTExOSwgMTIxMTI2LCAxMjExMzUsIDEyMTE0NCwgMTIxMTUzLCAKLSAgICAxMjExNjIsIDEyMTE2NCwgMTIxMTY4LCAxMjExNzAsIDEyMTE3NCwgMTIxMTg1LCAxMjExODksIDEyMTE5NSwgMTIxMjAxLCAKLSAgICAxMjEyMDYsIDAsIDEyMTIwOCwgMTIxMjEyLCAxMjEyMTQsIDEyMTIxNiwgMCwgMCwgMCwgMTIxMjE4LCAxMjEyMjMsIAotICAgIDEyMTIzNCwgMTIxMjUwLCAxMjEyNjMsIDEyMTI3NiwgMTIxMjgwLCAxMjEyODQsIDEyMTI5MCwgMTIxMjkyLCAxMjEzMDAsIAotICAgIDEyMTMwOCwgMTIxMzEwLCAxMjEzMTQsIDEyMTMyMCwgMTIxMzI2LCAxMjEzMzMsIDEyMTM0MCwgMTIxMzQyLCAxMjEzNDQsIAotICAgIDEyMTM0OCwgMTIxMzUwLCAxMjEzNTYsIDEyMTM1OCwgMTIxMzYxLCAxMjEzNjUsIDEyMTM3MSwgMTIxMzc3LCAxMjEzODgsIAotICAgIDEyMTM5NCwgMTIxNDAxLCAxMjE0MDksIDEyMTQxMywgMTIxNDIxLCAxMjE0MjksIDEyMTQzNSwgMTIxNDQxLCAxMjE0NDgsIAotICAgIDEyMTQ1MCwgMTIxNDU0LCAxMjE0NTYsIDEyMTQ1OCwgMTIxNDYzLCAxMjE0NjUsIDEyMTQ2NywgMTIxNDY5LCAxMjE0NzEsIAotICAgIDEyMTQ3NSwgMTIxNDg2LCAxMjE0OTIsIDEyMTQ5NiwgMTIxNTAwLCAxMjE1MDQsIDEyMTUxMCwgMTIxNTE2LCAxMjE1MjIsIAotICAgIDEyMTUyOCwgMTIxNTMzLCAxMjE1MzgsIDEyMTU0NCwgMTIxNTUwLCAxMjE1NTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyMTU2NCwgMTIxNTcxLCAxMjE1NzgsIDEyMTU4NSwgMTIxNTkzLCAKLSAgICAxMjE2MDEsIDEyMTYwOSwgMTIxNjE3LCAxMjE2MjUsIDEyMTYzMywgMTIxNjQxLCAxMjE2NDksIDEyMTY1NywgMTIxNjYzLCAKLSAgICAxMjE2NjksIDEyMTY3NSwgMTIxNjgxLCAxMjE2ODcsIDEyMTY5MywgMTIxNjk5LCAxMjE3MDUsIDEyMTcxMSwgMTIxNzE3LCAKLSAgICAxMjE3MjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExMDcxMCwgMTEwNzE1LCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxMjE3MjksIDEyMTczMywgMTIxNzM3LCAxMjE3NDIsIDEyMTc0NywgMCwgMTIxNzQ5LCAxMjE3NTgsIAotICAgIDEyMTc2NiwgMTIxNzc1LCAxMjE3ODksIDEyMTgwMywgMTIxODE3LCAxMjE4MjQsIDEyMTgzMSwgMTIxODM1LCAxMjE4NDQsIAotICAgIDEyMTg1MiwgMTIxODU2LCAxMjE4NjUsIDEyMTg3MiwgMTIxODc2LCAwLCAxMjE4ODAsIDEyMTg4NCwgMTIxODkxLCAwLCAKLSAgICAxMjE4OTUsIDAsIDEyMTg5OSwgMCwgMTIxOTA2LCAwLCAxMjE5MTUsIDEyMTkyNywgMTIxOTM5LCAwLCAxMjE5NDMsIAotICAgIDEyMTk0NywgMTIxOTUxLCAxMjE5NTUsIDEyMTk1OSwgMTIxOTY3LCAwLCAwLCAxMjE5NzUsIDEyMTk3OSwgMTIxOTgzLCAKLSAgICAxMjE5ODcsIDAsIDEyMTk5MSwgMCwgMCwgMTIxOTk3LCAxMjIwMDksIDEyMjAxNywgMTIyMDIxLCAwLCAxMjIwMjUsIAotICAgIDEyMjAyOSwgMTIyMDM1LCAxMjIwNDIsIDEyMjA1MywgMTIyMDYzLCAxMjIwNzQsIDEyMjA4NSwgMTIyMDk0LCAxMjIxMDUsIAotICAgIDEyMjExMSwgMTIyMTE3LCAwLCAwLCAwLCAwLCAxMjIxMjMsIDEyMjEzMiwgMTIyMTM5LCAxMjIxNDUsIDEyMjE0OSwgCi0gICAgMTIyMTUzLCAxMjIxNTcsIDEyMjE2NiwgMTIyMTc4LCAxMjIxODIsIDEyMjE4OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTEwNzIxLCAxMTA3MjYsIDExMDczMSwgMTEwNzM2LCAxMTA3NDMsIDExMDc1MCwgMTEwNzU3LCAxMTA3NjQsIDExMDc2OSwgCisgICAgMTEwNzc0LCAxMTA3NzksIDExMDc4NCwgMTEwNzkxLCAxMTA3OTYsIDExMDgwMywgMTEwODEwLCAxMTA4MTUsIDExMDgyMCwgCisgICAgMTEwODI1LCAxMTA4MzIsIDExMDgzNywgMTEwODQyLCAxMTA4NDksIDExMDg1NiwgMTEwODYxLCAxMTA4NjYsIDExMDg3MSwgCisgICAgMTEwODc4LCAxMTA4ODUsIDExMDg5MiwgMTEwODk3LCAxMTA5MDIsIDExMDkwOSwgMTEwOTE2LCAxMTA5MjMsIDExMDkzMCwgCisgICAgMTEwOTM1LCAxMTA5NDAsIDExMDk0NSwgMTEwOTUyLCAxMTA5NTcsIDExMDk2MiwgMTEwOTY3LCAxMTA5NzQsIDExMDk4MywgCisgICAgMTEwOTkwLCAxMTA5OTUsIDExMTAwMCwgMTExMDA1LCAxMTEwMTAsIDExMTAxNSwgMTExMDIwLCAxMTEwMjksIDExMTAzNiwgCisgICAgMTExMDQxLCAxMTEwNDgsIDExMTA1NSwgMTExMDYwLCAxMTEwNjUsIDExMTA3MCwgMTExMDc3LCAxMTEwODIsIDExMTA4OSwgCisgICAgMTExMDk2LCAxMTExMDEsIDExMTEwNiwgMTExMTExLCAxMTExMTgsIDExMTEyNSwgMTExMTMwLCAxMTExMzUsIDExMTE0MiwgCisgICAgMTExMTQ5LCAxMTExNTYsIDExMTE2MSwgMTExMTY2LCAxMTExNzEsIDExMTE3NiwgMTExMTgzLCAxMTExOTIsIDExMTIwMSwgCisgICAgMTExMjA2LCAxMTEyMTMsIDExMTIyMiwgMTExMjI3LCAxMTEyMzIsIDExMTIzNywgMTExMjQyLCAxMTEyNDksIDExMTI1NiwgCisgICAgMTExMjYzLCAxMTEyNzAsIDExMTI3NSwgMTExMjgwLCAxMTEyODUsIDExMTI5MiwgMTExMjk5LCAxMTEzMDYsIDExMTMxMSwgCisgICAgMTExMzE2LCAxMTEzMjMsIDExMTMyOCwgMTExMzM1LCAxMTEzNDAsIDExMTM0NywgMTExMzUyLCAxMTEzNTksIDExMTM2NiwgCisgICAgMTExMzcxLCAxMTEzNzYsIDExMTM4MSwgMTExMzg2LCAxMTEzOTEsIDExMTM5NiwgMTExNDAxLCAxMTE0MDYsIDExMTQxMSwgCisgICAgMTExNDE4LCAxMTE0MjUsIDExMTQzMiwgMTExNDM5LCAxMTE0NDYsIDExMTQ1NSwgMTExNDYwLCAxMTE0NjUsIDExMTQ3MiwgCisgICAgMTExNDc5LCAxMTE0ODQsIDExMTQ5MSwgMTExNDk4LCAxMTE1MDUsIDExMTUxMiwgMTExNTE5LCAxMTE1MjYsIDExMTUzMSwgCisgICAgMTExNTM2LCAxMTE1NDEsIDExMTU0NiwgMTExNTUxLCAxMTE1NjAsIDExMTU2OSwgMTExNTc4LCAxMTE1ODcsIDExMTU5NiwgCisgICAgMTExNjA1LCAxMTE2MTQsIDExMTYyMywgMTExNjI4LCAxMTE2MzksIDExMTY1MCwgMTExNjU5LCAxMTE2NjQsIDExMTY2OSwgCisgICAgMTExNjc0LCAxMTE2NzksIDExMTY4OCwgMTExNjk1LCAxMTE3MDIsIDExMTcwOSwgMTExNzE2LCAxMTE3MjMsIDExMTczMCwgCisgICAgMTExNzM5LCAxMTE3NDgsIDExMTc1OSwgMTExNzY4LCAxMTE3NzksIDExMTc4OCwgMTExNzk1LCAxMTE4MDQsIDExMTgxNSwgCisgICAgMTExODI0LCAxMTE4MzMsIDExMTg0MiwgMTExODUxLCAxMTE4NTgsIDExMTg2NSwgMTExODcyLCAxMTE4ODEsIDExMTg5MCwgCisgICAgMTExOTAxLCAxMTE5MTAsIDExMTkxOSwgMTExOTMwLCAxMTE5MzUsIDExMTk0MCwgMTExOTUxLCAxMTE5NTksIDExMTk2OCwgCisgICAgMTExOTc3LCAxMTE5ODYsIDExMTk5NywgMTEyMDA2LCAxMTIwMTUsIDExMjAyNiwgMTEyMDM3LCAxMTIwNDgsIDExMjA1OSwgCisgICAgMTEyMDcwLCAxMTIwODEsIDExMjA4OCwgMTEyMDk1LCAxMTIxMDIsIDExMjEwOSwgMTEyMTIwLCAxMTIxMjksIDExMjEzNiwgCisgICAgMTEyMTQzLCAxMTIxNTAsIDExMjE2MSwgMTEyMTcyLCAxMTIxODMsIDExMjE5NCwgMTEyMjA1LCAxMTIyMTYsIDExMjIyNywgCisgICAgMTEyMjM4LCAxMTIyNDUsIDExMjI1MiwgMTEyMjYxLCAxMTIyNzAsIDExMjI3NywgMTEyMjg0LCAxMTIyOTEsIDExMjMwMCwgCisgICAgMTEyMzA5LCAxMTIzMTgsIDExMjMyNSwgMTEyMzM0LCAxMTIzNDMsIDExMjM1MiwgMTEyMzU5LCAxMTIzNjYsIDExMjM3MSwgCisgICAgMTEyMzc3LCAxMTIzODQsIDExMjM5MSwgMTEyMzk4LCAxMTI0MDUsIDExMjQxMiwgMTEyNDE5LCAxMTI0MjgsIDExMjQzNywgCisgICAgMTEyNDQ2LCAxMTI0NTUsIDExMjQ2MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTEyNDcxLCAxMTI0NzcsIAorICAgIDExMjQ4MiwgMTEyNDg3LCAxMTI0OTQsIDExMjUwMCwgMTEyNTA2LCAxMTI1MTIsIDExMjUxOCwgMTEyNTI0LCAxMTI1MzAsIAorICAgIDExMjUzNiwgMTEyNTQwLCAxMTI1NDQsIDExMjU1MCwgMTEyNTU2LCAxMTI1NjIsIDExMjU2NiwgMTEyNTcxLCAxMTI1NzYsIAorICAgIDExMjU4MCwgMTEyNTg0LCAxMTI1ODcsIDExMjU5MywgMTEyNTk5LCAxMTI2MDUsIDExMjYxMSwgMTEyNjE3LCAxMTI2MjMsIAorICAgIDExMjYyOSwgMTEyNjM1LCAxMTI2NDEsIDExMjY1MSwgMTEyNjYxLCAxMTI2NjcsIDExMjY3MywgMTEyNjgzLCAxMTI2OTMsIAorICAgIDExMjY5OSwgMCwgMCwgMTEyNzA1LCAxMTI3MTMsIDExMjcxOCwgMTEyNzIzLCAxMTI3MjksIDExMjczNSwgMTEyNzQxLCAKKyAgICAxMTI3NDcsIDExMjc1MywgMTEyNzU5LCAxMTI3NjYsIDExMjc3MywgMTEyNzc5LCAxMTI3ODUsIDExMjc5MSwgMTEyNzk3LCAKKyAgICAxMTI4MDMsIDExMjgwOSwgMTEyODE1LCAxMTI4MjEsIDExMjgyNiwgMTEyODMyLCAxMTI4MzgsIDExMjg0NCwgMTEyODUwLCAKKyAgICAxMTI4NTYsIDExMjg2NSwgMTEyODcxLCAxMTI4NzYsIDExMjg4NCwgMTEyODkxLCAxMTI4OTgsIDExMjkwNywgMTEyOTE2LCAKKyAgICAxMTI5MjUsIDExMjkzNCwgMTEyOTQzLCAxMTI5NTIsIDExMjk2MSwgMTEyOTcwLCAxMTI5ODAsIDExMjk5MCwgMTEyOTk4LCAKKyAgICAxMTMwMDYsIDExMzAxNSwgMTEzMDI0LCAxMTMwMzAsIDExMzAzNiwgMTEzMDQyLCAxMTMwNDgsIDExMzA1NiwgMTEzMDY0LCAKKyAgICAxMTMwNjgsIDExMzA3NCwgMTEzMDc5LCAxMTMwODUsIDExMzA5MSwgMTEzMDk3LCAxMTMxMDMsIDExMzEwOSwgMTEzMTE4LCAKKyAgICAxMTMxMjMsIDExMzEzMCwgMTEzMTM1LCAxMTMxNDAsIDExMzE0NSwgMTEzMTUxLCAxMTMxNTcsIDExMzE2MywgMTEzMTcwLCAKKyAgICAxMTMxNzUsIDExMzE4MCwgMTEzMTg1LCAxMTMxOTAsIDExMzE5NSwgMTEzMjAxLCAxMTMyMDcsIDExMzIxMywgMTEzMjE5LCAKKyAgICAxMTMyMjUsIDExMzIzMSwgMTEzMjM3LCAxMTMyNDMsIDExMzI0OCwgMTEzMjUzLCAxMTMyNTgsIDExMzI2MywgMTEzMjY4LCAKKyAgICAxMTMyNzMsIDExMzI3OCwgMTEzMjgzLCAxMTMyODksIDExMzI5NSwgMTEzMzAwLCAxMTMzMDUsIDExMzMxMCwgMTEzMzE1LCAKKyAgICAxMTMzMjAsIDExMzMyNiwgMTEzMzMzLCAxMTMzMzcsIDExMzM0MSwgMTEzMzQ1LCAxMTMzNDksIDExMzM1MywgMTEzMzU3LCAKKyAgICAxMTMzNjEsIDExMzM2NSwgMTEzMzczLCAxMTMzODMsIDExMzM4NywgMTEzMzkxLCAxMTMzOTcsIDExMzQwMywgMTEzNDA5LCAKKyAgICAxMTM0MTUsIDExMzQyMSwgMTEzNDI3LCAxMTM0MzMsIDExMzQzOSwgMTEzNDQ1LCAxMTM0NTEsIDExMzQ1NywgMTEzNDYzLCAKKyAgICAxMTM0NjksIDExMzQ3NSwgMTEzNDc5LCAxMTM0ODMsIDExMzQ5MCwgMTEzNDk2LCAxMTM1MDIsIDExMzUwOCwgMTEzNTEzLCAKKyAgICAxMTM1MjAsIDExMzUyNSwgMTEzNTMxLCAxMTM1MzcsIDExMzU0MywgMTEzNTQ5LCAxMTM1NTQsIDExMzU1OCwgMTEzNTY0LCAKKyAgICAxMTM1NjgsIDExMzU3MiwgMTEzNTc2LCAxMTM1ODIsIDExMzU4OCwgMTEzNTkyLCAxMTM1OTgsIDExMzYwNCwgMTEzNjEwLCAKKyAgICAxMTM2MTYsIDExMzYyMiwgMTEzNjMwLCAxMTM2MzgsIDExMzY0NCwgMTEzNjUwLCAxMTM2NTYsIDExMzY2MiwgMTEzNjc0LCAKKyAgICAxMTM2ODYsIDExMzcwMCwgMTEzNzEyLCAxMTM3MjQsIDExMzczOCwgMTEzNzUyLCAxMTM3NjYsIDExMzc3MCwgMTEzNzc4LCAKKyAgICAxMTM3ODYsIDExMzc5MSwgMTEzNzk1LCAxMTM3OTksIDExMzgwMywgMTEzODA3LCAxMTM4MTEsIDExMzgxNSwgMTEzODE5LCAKKyAgICAxMTM4MjUsIDExMzgzMSwgMTEzODM3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTM4NDMsIDExMzg0OSwgCisgICAgMTEzODU1LCAxMTM4NjEsIDExMzg2NywgMTEzODczLCAxMTM4NzksIDExMzg4NSwgMTEzODkxLCAxMTM4OTcsIDExMzkwMywgCisgICAgMTEzOTA5LCAxMTM5MTUsIDExMzkyMSwgMTEzOTI3LCAxMTM5MzMsIDExMzkzOSwgMTEzOTQ1LCAxMTM5NTEsIDExMzk1NywgCisgICAgMTEzOTYzLCAxMTM5NjksIDExMzk3NSwgMTEzOTgxLCAxMTM5ODcsIDExMzk5MywgMTEzOTk5LCAxMTQwMDUsIDExNDAxMSwgCisgICAgMTE0MDE3LCAxMTQwMjMsIDExNDAyOSwgMTE0MDM1LCAxMTQwNDEsIDExNDA0NywgMTE0MDUzLCAxMTQwNTksIDExNDA2NSwgCisgICAgMTE0MDcxLCAxMTQwNzcsIDExNDA4MywgMTE0MDg5LCAxMTQwOTUsIDExNDEwMSwgMTE0MTA3LCAxMTQxMTMsIDExNDExOSwgCisgICAgMTE0MTI1LCAxMTQxMzEsIDExNDEzNywgMTE0MTQzLCAxMTQxNDksIDExNDE1NSwgMTE0MTYxLCAxMTQxNjcsIDExNDE3MywgCisgICAgMTE0MTc5LCAxMTQxODUsIDExNDE5MSwgMTE0MTk3LCAxMTQyMDMsIDExNDIwOSwgMTE0MjE1LCAxMTQyMjEsIDExNDIyNywgCisgICAgMTE0MjMzLCAxMTQyMzksIDExNDI0NCwgMTE0MjQ5LCAxMTQyNTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyMjE5NiwgMTIyMTk4LCAxMjIyMDAsIAotICAgIDEyMjIwNCwgMTIyMjA4LCAxMjIyMTIsIDEyMjIyMSwgMTIyMjIzLCAxMjIyMjUsIDEyMjIyOCwgMTIyMjMwLCAxMjIyMzIsIAotICAgIDEyMjIzNiwgMTIyMjM4LCAxMjIyNDIsIDEyMjI0NCwgMTIyMjQ4LCAxMjIyNTAsIDEyMjI1MiwgMTIyMjU2LCAxMjIyNjAsIAotICAgIDEyMjI2NiwgMTIyMjY4LCAxMjIyNzIsIDEyMjI3NCwgMTIyMjc4LCAxMjIyODIsIDEyMjI4NiwgMTIyMjkwLCAxMjIyOTIsIAotICAgIDEyMjI5NCwgMTIyMjk4LCAxMjIzMDIsIDEyMjMwNiwgMTIyMzEwLCAxMjIzMTIsIDEyMjMxNCwgMTIyMzE2LCAxMjIzMjEsIAotICAgIDEyMjMyNiwgMTIyMzI5LCAxMjIzMzcsIDEyMjM0NSwgMTIyMzQ3LCAxMjIzNTIsIDEyMjM1NSwgMTIyMzYwLCAxMjIzNzEsIAotICAgIDEyMjM3OCwgMTIyMzgzLCAxMjIzODgsIDEyMjM5MCwgMTIyMzk0LCAxMjIzOTYsIDEyMjQwMCwgMTIyNDAyLCAxMjI0MDYsIAotICAgIDEyMjQxMCwgMTIyNDEzLCAxMjI0MTYsIDEyMjQxOCwgMTIyNDIxLCAxMjI0MjMsIDEyMjQyNywgMTIyNDI5LCAxMjI0MzEsIAotICAgIDEyMjQzMywgMTIyNDM3LCAxMjI0MzksIDEyMjQ0MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTE0MjU4LCAxMTQyNjMsIDExNDI3MCwgMTE0Mjc3LCAxMTQyODQsIDExNDI5MSwgMTE0Mjk2LCAxMTQzMDAsIDExNDMwNiwgCisgICAgMTE0MzEwLCAxMTQzMTQsIDExNDMyMCwgMTE0MzI0LCAxMTQzMjgsIDExNDMzMiwgMTE0MzM4LCAxMTQzNDUsIDExNDM0OSwgCisgICAgMTE0MzUzLCAxMTQzNTcsIDExNDM2MSwgMTE0MzY1LCAxMTQzNjksIDExNDM3NSwgMTE0Mzc5LCAxMTQzODMsIDExNDM4NywgCisgICAgMTE0MzkxLCAxMTQzOTUsIDExNDM5OSwgMTE0NDAzLCAxMTQ0MDcsIDExNDQxMSwgMTE0NDE1LCAxMTQ0MTksIDExNDQyMywgCisgICAgMTE0NDI4LCAxMTQ0MzIsIDExNDQzNiwgMTE0NDQwLCAxMTQ0NDQsIDExNDQ0OCwgMTE0NDUyLCAxMTQ0NTYsIDExNDQ2MCwgCisgICAgMTE0NDY0LCAxMTQ0NzEsIDExNDQ3NSwgMTE0NDgzLCAxMTQ0ODcsIDExNDQ5MSwgMTE0NDk1LCAxMTQ0OTksIDExNDUwMywgCisgICAgMTE0NTA3LCAxMTQ1MTEsIDExNDUxOCwgMTE0NTIyLCAxMTQ1MjYsIDExNDUzMCwgMTE0NTM0LCAxMTQ1MzgsIDExNDU0NCwgCisgICAgMTE0NTQ4LCAxMTQ1NTQsIDExNDU1OCwgMTE0NTYyLCAxMTQ1NjYsIDExNDU3MCwgMTE0NTc0LCAxMTQ1NzgsIDExNDU4MiwgCisgICAgMTE0NTg2LCAxMTQ1OTAsIDExNDU5NCwgMTE0NTk4LCAxMTQ2MDIsIDExNDYwNiwgMTE0NjEwLCAxMTQ2MTQsIDExNDYxOCwgCisgICAgMTE0NjIyLCAxMTQ2MjYsIDExNDYzMCwgMTE0NjM4LCAxMTQ2NDIsIDExNDY0NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMTE0NjUwLCAxMTQ2NTgsIDExNDY2NiwgMTE0Njc0LCAxMTQ2ODIsIDExNDY5MCwgMTE0Njk4LCAxMTQ3MDYsIAorICAgIDExNDcxNCwgMTE0NzIyLCAxMTQ3MzAsIDExNDczOCwgMTE0NzQ2LCAxMTQ3NTQsIDExNDc2MiwgMTE0NzcwLCAxMTQ3NzgsIAorICAgIDExNDc4NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE0Nzk0LCAxMTQ3OTgsIDExNDgwMywgCisgICAgMTE0ODA4LCAxMTQ4MTMsIDExNDgxNywgMTE0ODIyLCAxMTQ4MjcsIDExNDgzMiwgMTE0ODM2LCAxMTQ4NDEsIDExNDg0NiwgCisgICAgMTE0ODUwLCAxMTQ4NTQsIDExNDg1OSwgMTE0ODYzLCAxMTQ4NjgsIDExNDg3MywgMTE0ODc3LCAxMTQ4ODIsIDExNDg4NywgCisgICAgMTE0ODkxLCAxMTQ4OTYsIDExNDkwMSwgMTE0OTA2LCAxMTQ5MTEsIDExNDkxNiwgMTE0OTIwLCAxMTQ5MjUsIDExNDkzMCwgCisgICAgMTE0OTM1LCAxMTQ5MzksIDExNDk0NCwgMTE0OTQ5LCAxMTQ5NTQsIDExNDk1OCwgMTE0OTYzLCAxMTQ5NjgsIDExNDk3MiwgCisgICAgMTE0OTc2LCAxMTQ5ODEsIDExNDk4NSwgMTE0OTkwLCAxMTQ5OTUsIDExNDk5OSwgMTE1MDA0LCAxMTUwMDksIDExNTAxMywgCisgICAgMTE1MDE4LCAxMTUwMjMsIDExNTAyOCwgMTE1MDMzLCAxMTUwMzgsIDExNTA0MiwgMTE1MDQ3LCAxMTUwNTIsIDExNTA1NywgCisgICAgMTE1MDYxLCAxMTUwNjYsIDExNTA3MSwgMTE1MDc2LCAxMTUwODAsIDExNTA4NSwgMTE1MDkwLCAxMTUwOTQsIDExNTA5OCwgCisgICAgMTE1MTAzLCAxMTUxMDcsIDExNTExMiwgMTE1MTE3LCAxMTUxMjEsIDExNTEyNiwgMTE1MTMxLCAxMTUxMzUsIDExNTE0MCwgCisgICAgMTE1MTQ1LCAxMTUxNTAsIDExNTE1NSwgMTE1MTYwLCAxMTUxNjQsIDExNTE2OSwgMTE1MTc0LCAxMTUxNzksIDExNTE4MywgCisgICAgMTE1MTg4LCAwLCAxMTUxOTMsIDExNTE5NywgMTE1MjAyLCAxMTUyMDcsIDExNTIxMSwgMTE1MjE1LCAxMTUyMjAsIAorICAgIDExNTIyNCwgMTE1MjI5LCAxMTUyMzQsIDExNTIzOCwgMTE1MjQzLCAxMTUyNDgsIDExNTI1MiwgMTE1MjU3LCAxMTUyNjIsIAorICAgIDExNTI2NywgMTE1MjcyLCAxMTUyNzcsIDExNTI4MiwgMTE1Mjg4LCAxMTUyOTQsIDExNTMwMCwgMTE1MzA1LCAxMTUzMTEsIAorICAgIDExNTMxNywgMTE1MzIzLCAxMTUzMjgsIDExNTMzNCwgMTE1MzQwLCAxMTUzNDUsIDExNTM1MCwgMTE1MzU2LCAxMTUzNjEsIAorICAgIDExNTM2NywgMTE1MzczLCAxMTUzNzgsIDExNTM4NCwgMTE1MzkwLCAxMTUzOTUsIDExNTQwMSwgMTE1NDA3LCAxMTU0MTMsIAorICAgIDExNTQxOSwgMTE1NDI1LCAxMTU0MzAsIDExNTQzNiwgMTE1NDQyLCAxMTU0NDgsIDExNTQ1MywgMTE1NDU5LCAxMTU0NjUsIAorICAgIDExNTQ3MSwgMTE1NDc2LCAxMTU0ODIsIDExNTQ4OCwgMTE1NDkzLCAxMTU0OTgsIDExNTUwNCwgMTE1NTA5LCAxMTU1MTUsIAorICAgIDExNTUyMSwgMTE1NTI2LCAxMTU1MzIsIDExNTUzOCwgMTE1NTQzLCAxMTU1NDksIDExNTU1NSwgMTE1NTYxLCAxMTU1NjcsIAorICAgIDExNTU3MywgMCwgMTE1NTc3LCAxMTU1ODIsIDAsIDAsIDExNTU4NywgMCwgMCwgMTE1NTkyLCAxMTU1OTcsIDAsIDAsIAorICAgIDExNTYwMiwgMTE1NjA3LCAxMTU2MTEsIDExNTYxNiwgMCwgMTE1NjIxLCAxMTU2MjYsIDExNTYzMSwgMTE1NjM1LCAKKyAgICAxMTU2NDAsIDExNTY0NSwgMTE1NjUwLCAxMTU2NTUsIDExNTY2MCwgMTE1NjY0LCAxMTU2NjksIDExNTY3NCwgMCwgCisgICAgMTE1Njc5LCAwLCAxMTU2ODQsIDExNTY4OSwgMTE1NjkzLCAxMTU2OTgsIDExNTcwMywgMTE1NzA3LCAxMTU3MTEsIDAsIAorICAgIDExNTcxNiwgMTE1NzIxLCAxMTU3MjYsIDExNTczMCwgMTE1NzM1LCAxMTU3NDAsIDExNTc0NCwgMTE1NzQ5LCAxMTU3NTQsIAorICAgIDExNTc1OSwgMTE1NzY0LCAxMTU3NjksIDExNTc3NCwgMTE1NzgwLCAxMTU3ODYsIDExNTc5MiwgMTE1Nzk3LCAxMTU4MDMsIAorICAgIDExNTgwOSwgMTE1ODE1LCAxMTU4MjAsIDExNTgyNiwgMTE1ODMyLCAxMTU4MzcsIDExNTg0MiwgMTE1ODQ4LCAxMTU4NTMsIAorICAgIDExNTg1OSwgMTE1ODY1LCAxMTU4NzAsIDExNTg3NiwgMTE1ODgyLCAxMTU4ODcsIDExNTg5MywgMTE1ODk5LCAxMTU5MDUsIAorICAgIDExNTkxMSwgMTE1OTE3LCAxMTU5MjIsIDExNTkyOCwgMTE1OTM0LCAxMTU5NDAsIDExNTk0NSwgMTE1OTUxLCAxMTU5NTcsIAorICAgIDExNTk2MywgMTE1OTY4LCAxMTU5NzQsIDExNTk4MCwgMTE1OTg1LCAxMTU5OTAsIDExNTk5NiwgMTE2MDAxLCAxMTYwMDcsIAorICAgIDExNjAxMywgMTE2MDE4LCAxMTYwMjQsIDExNjAzMCwgMTE2MDM1LCAxMTYwNDEsIDExNjA0NywgMTE2MDUzLCAxMTYwNTksIAorICAgIDExNjA2NSwgMTE2MDY5LCAwLCAxMTYwNzQsIDExNjA3OSwgMTE2MDgzLCAxMTYwODgsIDAsIDAsIDExNjA5MywgMTE2MDk4LCAKKyAgICAxMTYxMDMsIDExNjEwNywgMTE2MTExLCAxMTYxMTYsIDExNjEyMCwgMTE2MTI1LCAwLCAxMTYxMzAsIDExNjEzNSwgCisgICAgMTE2MTQwLCAxMTYxNDQsIDExNjE0OSwgMTE2MTU0LCAxMTYxNTksIDAsIDExNjE2NCwgMTE2MTY4LCAxMTYxNzMsIAorICAgIDExNjE3OCwgMTE2MTgzLCAxMTYxODcsIDExNjE5MiwgMTE2MTk3LCAxMTYyMDIsIDExNjIwNiwgMTE2MjExLCAxMTYyMTYsIAorICAgIDExNjIyMCwgMTE2MjI0LCAxMTYyMjksIDExNjIzMywgMTE2MjM4LCAxMTYyNDMsIDExNjI0NywgMTE2MjUyLCAxMTYyNTcsIAorICAgIDExNjI2MSwgMTE2MjY2LCAxMTYyNzEsIDExNjI3NiwgMTE2MjgxLCAxMTYyODYsIDExNjI5MCwgMCwgMTE2Mjk1LCAKKyAgICAxMTYzMDAsIDExNjMwNCwgMTE2MzA5LCAwLCAxMTYzMTQsIDExNjMxOCwgMTE2MzIzLCAxMTYzMjgsIDExNjMzMiwgMCwgCisgICAgMTE2MzM2LCAwLCAwLCAwLCAxMTYzNDAsIDExNjM0NSwgMTE2MzUwLCAxMTYzNTQsIDExNjM1OSwgMTE2MzY0LCAxMTYzNjksIAorICAgIDAsIDExNjM3NCwgMTE2Mzc4LCAxMTYzODMsIDExNjM4OCwgMTE2MzkzLCAxMTYzOTcsIDExNjQwMiwgMTE2NDA3LCAKKyAgICAxMTY0MTIsIDExNjQxNiwgMTE2NDIxLCAxMTY0MjYsIDExNjQzMCwgMTE2NDM0LCAxMTY0MzksIDExNjQ0MywgMTE2NDQ4LCAKKyAgICAxMTY0NTMsIDExNjQ1NywgMTE2NDYyLCAxMTY0NjcsIDExNjQ3MSwgMTE2NDc2LCAxMTY0ODEsIDExNjQ4NiwgMTE2NDkxLCAKKyAgICAxMTY0OTYsIDExNjUwMSwgMTE2NTA3LCAxMTY1MTMsIDExNjUxOSwgMTE2NTI0LCAxMTY1MzAsIDExNjUzNiwgMTE2NTQyLCAKKyAgICAxMTY1NDcsIDExNjU1MywgMTE2NTU5LCAxMTY1NjQsIDExNjU2OSwgMTE2NTc1LCAxMTY1ODAsIDExNjU4NiwgMTE2NTkyLCAKKyAgICAxMTY1OTcsIDExNjYwMywgMTE2NjA5LCAxMTY2MTQsIDExNjYyMCwgMTE2NjI2LCAxMTY2MzIsIDExNjYzOCwgMTE2NjQ0LCAKKyAgICAxMTY2NDksIDExNjY1NSwgMTE2NjYxLCAxMTY2NjcsIDExNjY3MiwgMTE2Njc4LCAxMTY2ODQsIDExNjY5MCwgMTE2Njk1LCAKKyAgICAxMTY3MDEsIDExNjcwNywgMTE2NzEyLCAxMTY3MTcsIDExNjcyMywgMTE2NzI4LCAxMTY3MzQsIDExNjc0MCwgMTE2NzQ1LCAKKyAgICAxMTY3NTEsIDExNjc1NywgMTE2NzYyLCAxMTY3NjgsIDExNjc3NCwgMTE2NzgwLCAxMTY3ODYsIDExNjc5MiwgMTE2Nzk2LCAKKyAgICAxMTY4MDEsIDExNjgwNiwgMTE2ODExLCAxMTY4MTUsIDExNjgyMCwgMTE2ODI1LCAxMTY4MzAsIDExNjgzNCwgMTE2ODM5LCAKKyAgICAxMTY4NDQsIDExNjg0OCwgMTE2ODUyLCAxMTY4NTcsIDExNjg2MSwgMTE2ODY2LCAxMTY4NzEsIDExNjg3NSwgMTE2ODgwLCAKKyAgICAxMTY4ODUsIDExNjg4OSwgMTE2ODk0LCAxMTY4OTksIDExNjkwNCwgMTE2OTA5LCAxMTY5MTQsIDExNjkxOCwgMTE2OTIzLCAKKyAgICAxMTY5MjgsIDExNjkzMywgMTE2OTM3LCAxMTY5NDIsIDExNjk0NywgMTE2OTUyLCAxMTY5NTYsIDExNjk2MSwgMTE2OTY2LCAKKyAgICAxMTY5NzAsIDExNjk3NCwgMTE2OTc5LCAxMTY5ODMsIDExNjk4OCwgMTE2OTkzLCAxMTY5OTcsIDExNzAwMiwgMTE3MDA3LCAKKyAgICAxMTcwMTEsIDExNzAxNiwgMTE3MDIxLCAxMTcwMjYsIDExNzAzMSwgMTE3MDM2LCAxMTcwNDEsIDExNzA0NywgMTE3MDUzLCAKKyAgICAxMTcwNTksIDExNzA2NCwgMTE3MDcwLCAxMTcwNzYsIDExNzA4MiwgMTE3MDg3LCAxMTcwOTMsIDExNzA5OSwgMTE3MTA0LCAKKyAgICAxMTcxMDksIDExNzExNSwgMTE3MTIwLCAxMTcxMjYsIDExNzEzMiwgMTE3MTM3LCAxMTcxNDMsIDExNzE0OSwgMTE3MTU0LCAKKyAgICAxMTcxNjAsIDExNzE2NiwgMTE3MTcyLCAxMTcxNzgsIDExNzE4NCwgMTE3MTg5LCAxMTcxOTUsIDExNzIwMSwgMTE3MjA3LCAKKyAgICAxMTcyMTIsIDExNzIxOCwgMTE3MjI0LCAxMTcyMzAsIDExNzIzNSwgMTE3MjQxLCAxMTcyNDcsIDExNzI1MiwgMTE3MjU3LCAKKyAgICAxMTcyNjMsIDExNzI2OCwgMTE3Mjc0LCAxMTcyODAsIDExNzI4NSwgMTE3MjkxLCAxMTcyOTcsIDExNzMwMiwgMTE3MzA4LCAKKyAgICAxMTczMTQsIDExNzMyMCwgMTE3MzI2LCAxMTczMzIsIDExNzMzNywgMTE3MzQzLCAxMTczNDksIDExNzM1NSwgMTE3MzYwLCAKKyAgICAxMTczNjYsIDExNzM3MiwgMTE3Mzc4LCAxMTczODMsIDExNzM4OSwgMTE3Mzk1LCAxMTc0MDAsIDExNzQwNSwgMTE3NDExLCAKKyAgICAxMTc0MTYsIDExNzQyMiwgMTE3NDI4LCAxMTc0MzMsIDExNzQzOSwgMTE3NDQ1LCAxMTc0NTAsIDExNzQ1NiwgMTE3NDYyLCAKKyAgICAxMTc0NjgsIDExNzQ3NCwgMTE3NDgwLCAxMTc0ODUsIDExNzQ5MSwgMTE3NDk3LCAxMTc1MDMsIDExNzUwOCwgMTE3NTE0LCAKKyAgICAxMTc1MjAsIDExNzUyNiwgMTE3NTMxLCAxMTc1MzcsIDExNzU0MywgMTE3NTQ4LCAxMTc1NTMsIDExNzU1OSwgMTE3NTY0LCAKKyAgICAxMTc1NzAsIDExNzU3NiwgMTE3NTgxLCAxMTc1ODcsIDExNzU5MywgMTE3NTk4LCAxMTc2MDQsIDExNzYxMCwgMTE3NjE2LCAKKyAgICAxMTc2MjIsIDExNzYyOCwgMTE3NjM0LCAxMTc2NDEsIDExNzY0OCwgMTE3NjU1LCAxMTc2NjEsIDExNzY2OCwgMTE3Njc1LCAKKyAgICAxMTc2ODIsIDExNzY4OCwgMTE3Njk1LCAxMTc3MDIsIDExNzcwOCwgMTE3NzE0LCAxMTc3MjEsIDExNzcyNywgMTE3NzM0LCAKKyAgICAxMTc3NDEsIDExNzc0NywgMTE3NzU0LCAxMTc3NjEsIDExNzc2NywgMTE3Nzc0LCAxMTc3ODEsIDExNzc4OCwgMTE3Nzk1LCAKKyAgICAxMTc4MDIsIDExNzgwOCwgMTE3ODE1LCAxMTc4MjIsIDExNzgyOSwgMTE3ODM1LCAxMTc4NDIsIDExNzg0OSwgMTE3ODU2LCAKKyAgICAxMTc4NjIsIDExNzg2OSwgMTE3ODc2LCAxMTc4ODIsIDExNzg4OCwgMTE3ODk1LCAxMTc5MDEsIDExNzkwOCwgMTE3OTE1LCAKKyAgICAxMTc5MjEsIDExNzkyOCwgMTE3OTM1LCAxMTc5NDEsIDExNzk0OCwgMTE3OTU1LCAxMTc5NjIsIDExNzk2OSwgMTE3OTc2LCAKKyAgICAxMTc5ODEsIDExNzk4NywgMTE3OTkzLCAxMTc5OTksIDExODAwNCwgMTE4MDEwLCAxMTgwMTYsIDExODAyMiwgMTE4MDI3LCAKKyAgICAxMTgwMzMsIDExODAzOSwgMTE4MDQ0LCAxMTgwNDksIDExODA1NSwgMTE4MDYwLCAxMTgwNjYsIDExODA3MiwgMTE4MDc3LCAKKyAgICAxMTgwODMsIDExODA4OSwgMTE4MDk0LCAxMTgxMDAsIDExODEwNiwgMTE4MTEyLCAxMTgxMTgsIDExODEyNCwgMTE4MTI5LCAKKyAgICAxMTgxMzUsIDExODE0MSwgMTE4MTQ3LCAxMTgxNTIsIDExODE1OCwgMTE4MTY0LCAxMTgxNzAsIDExODE3NSwgMTE4MTgxLCAKKyAgICAxMTgxODcsIDExODE5MiwgMTE4MTk3LCAxMTgyMDMsIDExODIwOCwgMTE4MjE0LCAxMTgyMjAsIDExODIyNSwgMTE4MjMxLCAKKyAgICAxMTgyMzcsIDExODI0MiwgMTE4MjQ4LCAxMTgyNTQsIDExODI2MCwgMTE4MjY2LCAxMTgyNzIsIDExODI3OCwgMCwgMCwgCisgICAgMTE4Mjg1LCAxMTgyOTAsIDExODI5NSwgMTE4MzAwLCAxMTgzMDUsIDExODMxMCwgMTE4MzE1LCAxMTgzMjAsIDExODMyNSwgCisgICAgMTE4MzMwLCAxMTgzMzUsIDExODM0MCwgMTE4MzQ1LCAxMTgzNTAsIDExODM1NSwgMTE4MzYwLCAxMTgzNjUsIDExODM3MCwgCisgICAgMTE4Mzc2LCAxMTgzODEsIDExODM4NiwgMTE4MzkxLCAxMTgzOTYsIDExODQwMSwgMTE4NDA2LCAxMTg0MTEsIDExODQxNSwgCisgICAgMTE4NDIwLCAxMTg0MjUsIDExODQzMCwgMTE4NDM1LCAxMTg0NDAsIDExODQ0NSwgMTE4NDUwLCAxMTg0NTUsIDExODQ2MCwgCisgICAgMTE4NDY1LCAxMTg0NzAsIDExODQ3NSwgMTE4NDgwLCAxMTg0ODUsIDExODQ5MCwgMTE4NDk1LCAxMTg1MDAsIDExODUwNiwgCisgICAgMTE4NTExLCAxMTg1MTYsIDExODUyMSwgMTE4NTI2LCAxMTg1MzEsIDExODUzNiwgMTE4NTQxLCAxMTg1NDcsIDExODU1MiwgCisgICAgMTE4NTU3LCAxMTg1NjIsIDExODU2NywgMTE4NTcyLCAxMTg1NzcsIDExODU4MiwgMTE4NTg3LCAxMTg1OTIsIDExODU5NywgCisgICAgMTE4NjAyLCAxMTg2MDcsIDExODYxMiwgMTE4NjE3LCAxMTg2MjIsIDExODYyNywgMTE4NjMyLCAxMTg2MzcsIDExODY0MiwgCisgICAgMTE4NjQ3LCAxMTg2NTIsIDExODY1NywgMTE4NjYyLCAxMTg2NjgsIDExODY3MywgMTE4Njc4LCAxMTg2ODMsIDExODY4OCwgCisgICAgMTE4NjkzLCAxMTg2OTgsIDExODcwMywgMTE4NzA3LCAxMTg3MTIsIDExODcxNywgMTE4NzIyLCAxMTg3MjcsIDExODczMiwgCisgICAgMTE4NzM3LCAxMTg3NDIsIDExODc0NywgMTE4NzUyLCAxMTg3NTcsIDExODc2MiwgMTE4NzY3LCAxMTg3NzIsIDExODc3NywgCisgICAgMTE4NzgyLCAxMTg3ODcsIDExODc5MiwgMTE4Nzk4LCAxMTg4MDMsIDExODgwOCwgMTE4ODEzLCAxMTg4MTgsIDExODgyMywgCisgICAgMTE4ODI4LCAxMTg4MzMsIDExODgzOSwgMTE4ODQ0LCAxMTg4NDksIDExODg1NCwgMTE4ODU5LCAxMTg4NjQsIDExODg2OSwgCisgICAgMTE4ODc1LCAxMTg4ODEsIDExODg4NywgMTE4ODkzLCAxMTg4OTksIDExODkwNSwgMTE4OTExLCAxMTg5MTcsIDExODkyMywgCisgICAgMTE4OTI5LCAxMTg5MzUsIDExODk0MSwgMTE4OTQ3LCAxMTg5NTMsIDExODk1OSwgMTE4OTY1LCAxMTg5NzEsIDExODk3OCwgCisgICAgMTE4OTg0LCAxMTg5OTAsIDExODk5NiwgMTE5MDAyLCAxMTkwMDgsIDExOTAxNCwgMTE5MDIwLCAxMTkwMjUsIDExOTAzMSwgCisgICAgMTE5MDM3LCAxMTkwNDMsIDExOTA0OSwgMTE5MDU1LCAxMTkwNjEsIDExOTA2NywgMTE5MDczLCAxMTkwNzksIDExOTA4NSwgCisgICAgMTE5MDkxLCAxMTkwOTcsIDExOTEwMywgMTE5MTA5LCAxMTkxMTUsIDExOTEyMSwgMTE5MTI3LCAxMTkxMzQsIDExOTE0MCwgCisgICAgMTE5MTQ2LCAxMTkxNTIsIDExOTE1OCwgMTE5MTY0LCAxMTkxNzAsIDExOTE3NiwgMTE5MTgzLCAxMTkxODksIDExOTE5NSwgCisgICAgMTE5MjAxLCAxMTkyMDcsIDExOTIxMywgMTE5MjE5LCAxMTkyMjUsIDExOTIzMSwgMTE5MjM3LCAxMTkyNDMsIDExOTI0OSwgCisgICAgMTE5MjU1LCAxMTkyNjEsIDExOTI2NywgMTE5MjczLCAxMTkyNzksIDExOTI4NSwgMTE5MjkxLCAxMTkyOTcsIDExOTMwMywgCisgICAgMTE5MzA5LCAxMTkzMTUsIDExOTMyMSwgMTE5MzI4LCAxMTkzMzQsIDExOTM0MCwgMTE5MzQ2LCAxMTkzNTIsIDExOTM1OCwgCisgICAgMTE5MzY0LCAxMTkzNzAsIDExOTM3NSwgMTE5MzgxLCAxMTkzODcsIDExOTM5MywgMTE5Mzk5LCAxMTk0MDUsIDExOTQxMSwgCisgICAgMTE5NDE3LCAxMTk0MjMsIDExOTQyOSwgMTE5NDM1LCAxMTk0NDEsIDExOTQ0NywgMTE5NDUzLCAxMTk0NTksIDExOTQ2NSwgCisgICAgMTE5NDcxLCAxMTk0NzcsIDExOTQ4NCwgMTE5NDkwLCAxMTk0OTYsIDExOTUwMiwgMTE5NTA4LCAxMTk1MTQsIDExOTUyMCwgCisgICAgMTE5NTI2LCAxMTk1MzMsIDExOTUzOSwgMTE5NTQ1LCAxMTk1NTEsIDExOTU1NywgMTE5NTYzLCAxMTk1NjksIDExOTU3NiwgCisgICAgMTE5NTgzLCAxMTk1OTAsIDExOTU5NywgMTE5NjA0LCAxMTk2MTEsIDExOTYxOCwgMTE5NjI1LCAxMTk2MzIsIDExOTYzOSwgCisgICAgMTE5NjQ2LCAxMTk2NTMsIDExOTY2MCwgMTE5NjY3LCAxMTk2NzQsIDExOTY4MSwgMTE5Njg4LCAxMTk2OTYsIDExOTcwMywgCisgICAgMTE5NzEwLCAxMTk3MTcsIDExOTcyNCwgMTE5NzMxLCAxMTk3MzgsIDExOTc0NSwgMTE5NzUxLCAxMTk3NTgsIDExOTc2NSwgCisgICAgMTE5NzcyLCAxMTk3NzksIDExOTc4NiwgMTE5NzkzLCAxMTk4MDAsIDExOTgwNywgMTE5ODE0LCAxMTk4MjEsIDExOTgyOCwgCisgICAgMTE5ODM1LCAxMTk4NDIsIDExOTg0OSwgMTE5ODU2LCAxMTk4NjMsIDExOTg3MCwgMTE5ODc4LCAxMTk4ODUsIDExOTg5MiwgCisgICAgMTE5ODk5LCAxMTk5MDYsIDExOTkxMywgMTE5OTIwLCAxMTk5MjcsIDExOTkzNSwgMTE5OTQyLCAxMTk5NDksIDExOTk1NiwgCisgICAgMTE5OTYzLCAxMTk5NzAsIDExOTk3NywgMTE5OTgyLCAwLCAwLCAxMTk5ODcsIDExOTk5MiwgMTE5OTk2LCAxMjAwMDAsIAorICAgIDEyMDAwNCwgMTIwMDA4LCAxMjAwMTIsIDEyMDAxNiwgMTIwMDIwLCAxMjAwMjQsIDEyMDAyOCwgMTIwMDMzLCAxMjAwMzcsIAorICAgIDEyMDA0MSwgMTIwMDQ1LCAxMjAwNDksIDEyMDA1MywgMTIwMDU3LCAxMjAwNjEsIDEyMDA2NSwgMTIwMDY5LCAxMjAwNzQsIAorICAgIDEyMDA3OCwgMTIwMDgyLCAxMjAwODYsIDEyMDA5MCwgMTIwMDk0LCAxMjAwOTgsIDEyMDEwMiwgMTIwMTA2LCAxMjAxMTAsIAorICAgIDEyMDExNiwgMTIwMTIxLCAxMjAxMjYsIDEyMDEzMSwgMTIwMTM2LCAxMjAxNDEsIDEyMDE0NiwgMTIwMTUxLCAxMjAxNTYsIAorICAgIDEyMDE2MSwgMTIwMTY3LCAxMjAxNzIsIDEyMDE3NywgMTIwMTgyLCAxMjAxODcsIDEyMDE5MiwgMTIwMTk3LCAxMjAyMDIsIAorICAgIDEyMDIwNywgMTIwMjEyLCAxMjAyMTYsIDEyMDIyMCwgMTIwMjI0LCAwLCAxMjAyMjgsIDEyMDIzMiwgMTIwMjM2LCAKKyAgICAxMjAyNDAsIDEyMDI0NCwgMTIwMjQ4LCAxMjAyNTIsIDEyMDI1NiwgMTIwMjYwLCAxMjAyNjQsIDEyMDI2OCwgMTIwMjcyLCAKKyAgICAxMjAyNzYsIDEyMDI4MCwgMTIwMjg0LCAxMjAyODgsIDEyMDI5MiwgMTIwMjk2LCAxMjAzMDAsIDEyMDMwNCwgMTIwMzA4LCAKKyAgICAxMjAzMTIsIDEyMDMxNiwgMTIwMzIwLCAxMjAzMjYsIDEyMDMzMiwgMTIwMzM4LCAwLCAxMjAzNDQsIDEyMDM0OSwgMCwgCisgICAgMTIwMzU0LCAwLCAwLCAxMjAzNTksIDAsIDEyMDM2NCwgMTIwMzY5LCAxMjAzNzQsIDEyMDM3OSwgMTIwMzg0LCAxMjAzODksIAorICAgIDEyMDM5NCwgMTIwMzk5LCAxMjA0MDQsIDEyMDQwOSwgMCwgMTIwNDE0LCAxMjA0MTksIDEyMDQyNCwgMTIwNDI5LCAwLCAKKyAgICAxMjA0MzQsIDAsIDEyMDQzOSwgMCwgMCwgMCwgMCwgMCwgMCwgMTIwNDQ0LCAwLCAwLCAwLCAwLCAxMjA0NTAsIDAsIAorICAgIDEyMDQ1NiwgMCwgMTIwNDYyLCAwLCAxMjA0NjgsIDEyMDQ3NCwgMTIwNDgwLCAwLCAxMjA0ODYsIDEyMDQ5MiwgMCwgCisgICAgMTIwNDk4LCAwLCAwLCAxMjA1MDQsIDAsIDEyMDUxMCwgMCwgMTIwNTE2LCAwLCAxMjA1MjIsIDAsIDEyMDUzMCwgMCwgCisgICAgMTIwNTM4LCAxMjA1NDQsIDAsIDEyMDU1MCwgMCwgMCwgMTIwNTU2LCAxMjA1NjIsIDEyMDU2OCwgMTIwNTc0LCAwLCAKKyAgICAxMjA1ODAsIDEyMDU4NiwgMTIwNTkyLCAxMjA1OTgsIDEyMDYwNCwgMTIwNjEwLCAxMjA2MTYsIDAsIDEyMDYyMiwgCisgICAgMTIwNjI4LCAxMjA2MzQsIDEyMDY0MCwgMCwgMTIwNjQ2LCAxMjA2NTIsIDEyMDY1OCwgMTIwNjY0LCAwLCAxMjA2NzIsIDAsIAorICAgIDEyMDY4MCwgMTIwNjg2LCAxMjA2OTIsIDEyMDY5OCwgMTIwNzA0LCAxMjA3MTAsIDEyMDcxNiwgMTIwNzIyLCAxMjA3MjgsIAorICAgIDEyMDczNCwgMCwgMTIwNzQwLCAxMjA3NDYsIDEyMDc1MiwgMTIwNzU4LCAxMjA3NjQsIDEyMDc3MCwgMTIwNzc2LCAKKyAgICAxMjA3ODIsIDEyMDc4OCwgMTIwNzk0LCAxMjA4MDAsIDEyMDgwNiwgMTIwODEyLCAxMjA4MTgsIDEyMDgyNCwgMTIwODMwLCAKKyAgICAxMjA4MzYsIDAsIDAsIDAsIDAsIDAsIDEyMDg0MiwgMTIwODQ3LCAxMjA4NTIsIDAsIDEyMDg1NywgMTIwODYyLCAxMjA4NjcsIAorICAgIDEyMDg3MiwgMTIwODc3LCAwLCAxMjA4ODIsIDEyMDg4NywgMTIwODkyLCAxMjA4OTcsIDEyMDkwMiwgMTIwOTA3LCAKKyAgICAxMjA5MTIsIDEyMDkxNywgMTIwOTIyLCAxMjA5MjcsIDEyMDkzMiwgMTIwOTM3LCAxMjA5NDIsIDEyMDk0NywgMTIwOTUyLCAKKyAgICAxMjA5NTcsIDEyMDk2MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTIyNDQ2LCAKLSAgICAxMjI0NTEsIDEyMjQ1NiwgMTIyNDYxLCAxMjI0NjYsIDEyMjQ3MSwgMTIyNDc2LCAxMjI0ODMsIDEyMjQ5MCwgMTIyNDk3LCAKLSAgICAxMjI1MDQsIDEyMjUwOSwgMTIyNTE0LCAxMjI1MTksIDEyMjUyNCwgMTIyNTMxLCAxMjI1MzcsIDEyMjU0NCwgMTIyNTUxLCAKLSAgICAxMjI1NTgsIDEyMjU2MywgMTIyNTY4LCAxMjI1NzMsIDEyMjU3OCwgMTIyNTgzLCAxMjI1OTAsIDEyMjU5NywgMTIyNjAyLCAKLSAgICAxMjI2MDcsIDEyMjYxNCwgMTIyNjIxLCAxMjI2MjksIDEyMjYzNywgMTIyNjQ0LCAxMjI2NTEsIDEyMjY1OSwgMTIyNjY3LCAKLSAgICAxMjI2NzUsIDEyMjY4MiwgMTIyNjkyLCAxMjI3MDMsIDEyMjcwOCwgMTIyNzE1LCAxMjI3MjIsIDEyMjcyOSwgMTIyNzM3LCAKLSAgICAxMjI3NDUsIDEyMjc1NiwgMTIyNzY0LCAxMjI3NzIsIDEyMjc4MCwgMTIyNzg1LCAxMjI3OTAsIDEyMjc5NSwgMTIyODAwLCAKLSAgICAxMjI4MDUsIDEyMjgxMCwgMTIyODE1LCAxMjI4MjAsIDEyMjgyNSwgMTIyODMwLCAxMjI4MzUsIDEyMjg0MCwgMTIyODQ3LCAKLSAgICAxMjI4NTIsIDEyMjg1NywgMTIyODY0LCAxMjI4NjksIDEyMjg3NCwgMTIyODc5LCAxMjI4ODQsIDEyMjg4OSwgMTIyODk0LCAKLSAgICAxMjI4OTksIDEyMjkwNCwgMTIyOTA5LCAxMjI5MTQsIDEyMjkxOSwgMTIyOTI0LCAxMjI5MzEsIDEyMjkzOSwgMTIyOTQ0LCAKLSAgICAxMjI5NDksIDEyMjk1NiwgMTIyOTYxLCAxMjI5NjYsIDEyMjk3MSwgMTIyOTc4LCAxMjI5ODMsIDEyMjk5MCwgMTIyOTk1LCAKLSAgICAxMjMwMDIsIDEyMzAwNywgMTIzMDE2LCAxMjMwMjUsIDEyMzAzMCwgMTIzMDM1LCAxMjMwNDAsIDEyMzA0NSwgMTIzMDUwLCAKLSAgICAxMjMwNTUsIDEyMzA2MCwgMTIzMDY1LCAxMjMwNzAsIDEyMzA3NSwgMTIzMDgwLCAxMjMwODUsIDEyMzA5MCwgMTIzMDk4LCAKLSAgICAxMjMxMDYsIDEyMzExMSwgMTIzMTE2LCAxMjMxMjEsIDEyMzEyNiwgMTIzMTMxLCAxMjMxMzcsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDEyMzE0MywgMTIzMTQ3LCAxMjMxNTEsIDEyMzE1NSwgMTIzMTU5LCAxMjMxNjMsIDEyMzE2NywgCi0gICAgMTIzMTcxLCAxMjMxNzUsIDEyMzE3OSwgMTIzMTgzLCAxMjMxODcsIDEyMzE5MSwgMTIzMTk1LCAxMjMxOTksIDEyMzIwMywgCi0gICAgMTIzMjA3LCAxMjMyMTEsIDEyMzIxNSwgMTIzMjE5LCAxMjMyMjMsIDEyMzIyNywgMTIzMjMxLCAxMjMyMzUsIDEyMzIzOSwgCi0gICAgMTIzMjQzLCAxMjMyNDcsIDEyMzI1MSwgMTIzMjU1LCAxMjMyNTksIDEyMzI2MywgMTIzMjY3LCAxMjMyNzEsIDEyMzI3NSwgCi0gICAgMTIzMjc5LCAxMjMyODMsIDEyMzI4NywgMTIzMjkxLCAxMjMyOTUsIDEyMzI5OSwgMTIzMzAzLCAxMjMzMDcsIDEyMzMxMSwgCi0gICAgMTIzMzE1LCAxMjMzMTksIDEyMzMyMywgMTIzMzI3LCAxMjMzMzEsIDEyMzMzNSwgMTIzMzM5LCAxMjMzNDMsIDEyMzM0NywgCi0gICAgMTIzMzUxLCAxMjMzNTUsIDEyMzM1OSwgMTIzMzYzLCAxMjMzNjcsIDEyMzM3MSwgMTIzMzc1LCAxMjMzNzksIDEyMzM4MywgCi0gICAgMTIzMzg3LCAxMjMzOTEsIDEyMzM5NSwgMTIzMzk5LCAxMjM0MDMsIDEyMzQwNywgMTIzNDExLCAxMjM0MTUsIDEyMzQxOSwgCi0gICAgMTIzNDIzLCAxMjM0MjcsIDEyMzQzMSwgMTIzNDM1LCAxMjM0MzksIDEyMzQ0MywgMTIzNDQ3LCAxMjM0NTEsIDEyMzQ1NSwgCi0gICAgMTIzNDU5LCAxMjM0NjMsIDEyMzQ2NywgMTIzNDcxLCAxMjM0NzUsIDEyMzQ3OSwgMTIzNDgzLCAxMjM0ODcsIDEyMzQ5MSwgCi0gICAgMTIzNDk1LCAxMjM0OTksIDEyMzUwMywgMTIzNTA3LCAxMjM1MTEsIDEyMzUxNSwgMTIzNTE5LCAxMjM1MjMsIDEyMzUyNywgCi0gICAgMTIzNTMxLCAxMjM1MzUsIDEyMzUzOSwgMTIzNTQzLCAxMjM1NDcsIDEyMzU1MSwgMTIzNTU1LCAxMjM1NTksIDEyMzU2MywgCi0gICAgMTIzNTY3LCAxMjM1NzEsIDEyMzU3NSwgMTIzNTc5LCAxMjM1ODMsIDEyMzU4NywgMTIzNTkxLCAxMjM1OTUsIDEyMzU5OSwgCi0gICAgMTIzNjAzLCAxMjM2MDcsIDEyMzYxMSwgMTIzNjE1LCAxMjM2MTksIDEyMzYyMywgMTIzNjI3LCAxMjM2MzEsIDEyMzYzNSwgCi0gICAgMTIzNjM5LCAxMjM2NDMsIDEyMzY0NywgMTIzNjUxLCAxMjM2NTUsIDEyMzY1OSwgMTIzNjYzLCAxMjM2NjcsIDEyMzY3MSwgCi0gICAgMTIzNjc1LCAxMjM2NzksIDEyMzY4MywgMTIzNjg3LCAxMjM2OTEsIDEyMzY5NSwgMTIzNjk5LCAxMjM3MDMsIDEyMzcwNywgCi0gICAgMTIzNzExLCAxMjM3MTUsIDEyMzcxOSwgMTIzNzIzLCAxMjM3MjcsIDEyMzczMSwgMTIzNzM1LCAxMjM3MzksIDEyMzc0MywgCi0gICAgMTIzNzQ3LCAxMjM3NTEsIDEyMzc1NSwgMTIzNzU5LCAxMjM3NjMsIDEyMzc2NywgMTIzNzcxLCAxMjM3NzUsIDEyMzc3OSwgCi0gICAgMTIzNzgzLCAxMjM3ODcsIDEyMzc5MSwgMTIzNzk1LCAxMjM3OTksIDEyMzgwMywgMTIzODA3LCAxMjM4MTEsIDEyMzgxNSwgCi0gICAgMTIzODE5LCAxMjM4MjMsIDEyMzgyNywgMTIzODMxLCAxMjM4MzUsIDEyMzgzOSwgMTIzODQzLCAxMjM4NDcsIDEyMzg1MSwgCi0gICAgMTIzODU1LCAxMjM4NTksIDEyMzg2MywgMTIzODY3LCAxMjM4NzEsIDEyMzg3NSwgMTIzODc5LCAxMjM4ODMsIDEyMzg4NywgCi0gICAgMTIzODkxLCAxMjM4OTUsIDEyMzg5OSwgMTIzOTAzLCAxMjM5MDcsIDEyMzkxMSwgMTIzOTE1LCAxMjM5MTksIDEyMzkyMywgCi0gICAgMTIzOTI3LCAxMjM5MzEsIDEyMzkzNSwgMTIzOTM5LCAxMjM5NDMsIDEyMzk0NywgMTIzOTUxLCAxMjM5NTUsIDEyMzk1OSwgCi0gICAgMTIzOTYzLCAxMjM5NjcsIDEyMzk3MSwgMTIzOTc1LCAxMjM5NzksIDEyMzk4MywgMTIzOTg3LCAxMjM5OTEsIDEyMzk5NSwgCi0gICAgMTIzOTk5LCAxMjQwMDMsIDEyNDAwNywgMTI0MDExLCAxMjQwMTUsIDEyNDAxOSwgMTI0MDIzLCAxMjQwMjcsIDEyNDAzMSwgCi0gICAgMTI0MDM1LCAxMjQwMzksIDEyNDA0MywgMTI0MDQ3LCAxMjQwNTEsIDEyNDA1NSwgMTI0MDU5LCAxMjQwNjMsIDEyNDA2NywgCi0gICAgMTI0MDcxLCAxMjQwNzUsIDEyNDA3OSwgMTI0MDgzLCAxMjQwODcsIDEyNDA5MSwgMTI0MDk1LCAxMjQwOTksIDEyNDEwMywgCi0gICAgMTI0MTA3LCAxMjQxMTEsIDEyNDExNSwgMTI0MTE5LCAxMjQxMjMsIDEyNDEyNywgMTI0MTMxLCAxMjQxMzUsIDEyNDEzOSwgCi0gICAgMTI0MTQzLCAxMjQxNDcsIDEyNDE1MSwgMTI0MTU1LCAxMjQxNTksIDEyNDE2MywgMTI0MTY3LCAxMjQxNzEsIDEyNDE3NSwgCi0gICAgMTI0MTc5LCAxMjQxODMsIDEyNDE4NywgMTI0MTkxLCAxMjQxOTUsIDEyNDE5OSwgMTI0MjAzLCAxMjQyMDcsIDEyNDIxMSwgCi0gICAgMTI0MjE1LCAxMjQyMTksIDEyNDIyMywgMTI0MjI3LCAxMjQyMzEsIDEyNDIzNSwgMTI0MjM5LCAxMjQyNDMsIDEyNDI0NywgCi0gICAgMTI0MjUxLCAxMjQyNTUsIDEyNDI1OSwgMTI0MjYzLCAxMjQyNjcsIDEyNDI3MSwgMTI0Mjc1LCAxMjQyNzksIDEyNDI4MywgCi0gICAgMTI0Mjg3LCAxMjQyOTEsIDEyNDI5NSwgMTI0Mjk5LCAxMjQzMDMsIDEyNDMwNywgMTI0MzExLCAxMjQzMTUsIDEyNDMxOSwgCi0gICAgMTI0MzIzLCAxMjQzMjcsIDEyNDMzMSwgMTI0MzM1LCAxMjQzMzksIDEyNDM0MywgMTI0MzQ3LCAxMjQzNTEsIDEyNDM1NSwgCi0gICAgMTI0MzU5LCAxMjQzNjMsIDEyNDM2NywgMTI0MzcxLCAxMjQzNzUsIDEyNDM3OSwgMTI0MzgzLCAxMjQzODcsIDEyNDM5MSwgCi0gICAgMTI0Mzk1LCAxMjQzOTksIDEyNDQwMywgMTI0NDA3LCAxMjQ0MTEsIDEyNDQxNSwgMTI0NDE5LCAxMjQ0MjMsIDEyNDQyNywgCi0gICAgMTI0NDMxLCAxMjQ0MzUsIDEyNDQzOSwgMTI0NDQzLCAxMjQ0NDcsIDEyNDQ1MSwgMTI0NDU1LCAxMjQ0NTksIDEyNDQ2MywgCi0gICAgMTI0NDY3LCAxMjQ0NzEsIDEyNDQ3NSwgMTI0NDc5LCAxMjQ0ODMsIDEyNDQ4NywgMTI0NDkxLCAxMjQ0OTUsIDEyNDQ5OSwgCi0gICAgMTI0NTAzLCAxMjQ1MDcsIDEyNDUxMSwgMTI0NTE1LCAxMjQ1MTksIDEyNDUyMywgMTI0NTI3LCAxMjQ1MzEsIDEyNDUzNSwgCi0gICAgMTI0NTM5LCAxMjQ1NDMsIDEyNDU0NywgMTI0NTUxLCAxMjQ1NTUsIDEyNDU1OSwgMTI0NTYzLCAxMjQ1NjcsIDEyNDU3MSwgCi0gICAgMTI0NTc1LCAxMjQ1NzksIDEyNDU4MywgMTI0NTg3LCAxMjQ1OTEsIDEyNDU5NSwgMTI0NTk5LCAxMjQ2MDMsIDEyNDYwNywgCi0gICAgMTI0NjExLCAxMjQ2MTUsIDEyNDYxOSwgMTI0NjIzLCAxMjQ2MjcsIDEyNDYzMSwgMTI0NjM1LCAxMjQ2MzksIDEyNDY0MywgCi0gICAgMTI0NjQ3LCAxMjQ2NTEsIDEyNDY1NSwgMTI0NjU5LCAxMjQ2NjMsIDEyNDY2NywgMTI0NjcxLCAxMjQ2NzUsIDEyNDY3OSwgCi0gICAgMTI0NjgzLCAxMjQ2ODcsIDEyNDY5MSwgMTI0Njk1LCAxMjQ2OTksIDEyNDcwMywgMTI0NzA3LCAxMjQ3MTEsIDEyNDcxNSwgCi0gICAgMTI0NzE5LCAxMjQ3MjMsIDEyNDcyNywgMTI0NzMxLCAxMjQ3MzUsIDEyNDczOSwgMTI0NzQzLCAxMjQ3NDcsIDEyNDc1MSwgCi0gICAgMTI0NzU1LCAxMjQ3NTksIDEyNDc2MywgMTI0NzY3LCAxMjQ3NzEsIDEyNDc3NSwgMTI0Nzc5LCAxMjQ3ODMsIDEyNDc4NywgCi0gICAgMTI0NzkxLCAxMjQ3OTUsIDEyNDc5OSwgMTI0ODAzLCAxMjQ4MDcsIDEyNDgxMSwgMTI0ODE1LCAxMjQ4MTksIDEyNDgyMywgCi0gICAgMTI0ODI3LCAxMjQ4MzEsIDEyNDgzNSwgMTI0ODM5LCAxMjQ4NDMsIDEyNDg0NywgMTI0ODUxLCAxMjQ4NTUsIDEyNDg1OSwgCi0gICAgMTI0ODYzLCAxMjQ4NjcsIDEyNDg3MSwgMTI0ODc1LCAxMjQ4NzksIDEyNDg4MywgMTI0ODg3LCAxMjQ4OTEsIDEyNDg5NSwgCi0gICAgMTI0ODk5LCAxMjQ5MDMsIDEyNDkwNywgMTI0OTExLCAxMjQ5MTUsIDEyNDkxOSwgMTI0OTIzLCAxMjQ5MjcsIDEyNDkzMSwgCi0gICAgMTI0OTM1LCAxMjQ5MzksIDEyNDk0MywgMTI0OTQ3LCAxMjQ5NTEsIDEyNDk1NSwgMTI0OTU5LCAxMjQ5NjMsIDEyNDk2NywgCi0gICAgMTI0OTcxLCAxMjQ5NzUsIDEyNDk3OSwgMTI0OTgzLCAxMjQ5ODcsIDEyNDk5MSwgMTI0OTk1LCAxMjQ5OTksIDEyNTAwMywgCi0gICAgMTI1MDA3LCAxMjUwMTEsIDEyNTAxNSwgMTI1MDE5LCAxMjUwMjMsIDEyNTAyNywgMTI1MDMxLCAxMjUwMzUsIDEyNTAzOSwgCi0gICAgMTI1MDQzLCAxMjUwNDcsIDEyNTA1MSwgMTI1MDU1LCAxMjUwNTksIDEyNTA2MywgMTI1MDY3LCAxMjUwNzEsIDEyNTA3NSwgCi0gICAgMTI1MDc5LCAxMjUwODMsIDEyNTA4NywgMTI1MDkxLCAxMjUwOTUsIDEyNTA5OSwgMTI1MTAzLCAxMjUxMDcsIDEyNTExMSwgCi0gICAgMTI1MTE1LCAxMjUxMTksIDEyNTEyMywgMTI1MTI3LCAxMjUxMzEsIDEyNTEzNSwgMTI1MTM5LCAxMjUxNDMsIDEyNTE0NywgCi0gICAgMTI1MTUxLCAxMjUxNTUsIDEyNTE1OSwgMTI1MTYzLCAxMjUxNjcsIDEyNTE3MSwgMTI1MTc1LCAxMjUxNzksIDEyNTE4MywgCi0gICAgMTI1MTg3LCAxMjUxOTEsIDEyNTE5NSwgMTI1MTk5LCAxMjUyMDMsIDEyNTIwNywgMTI1MjExLCAxMjUyMTUsIDEyNTIxOSwgCi0gICAgMTI1MjIzLCAxMjUyMjcsIDEyNTIzMSwgMTI1MjM1LCAxMjUyMzksIDEyNTI0MywgMTI1MjQ3LCAxMjUyNTEsIDEyNTI1NSwgCi0gICAgMTI1MjU5LCAxMjUyNjMsIDEyNTI2NywgMTI1MjcxLCAxMjUyNzUsIDEyNTI3OSwgMTI1MjgzLCAxMjUyODcsIDEyNTI5MSwgCi0gICAgMTI1Mjk1LCAxMjUyOTksIDEyNTMwMywgMTI1MzA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjA5NjcsIDEyMDk3NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMTIwOTg1LCAxMjA5OTIsIDEyMDk5OSwgMTIxMDA2LCAxMjEwMTMsIDEyMTAyMCwgMTIxMDI3LCAKKyAgICAxMjEwMzMsIDEyMTA0MCwgMTIxMDQ3LCAxMjEwNTQsIDEyMTA2MiwgMTIxMDcwLCAxMjEwNzgsIDEyMTA4NiwgMTIxMDk0LCAKKyAgICAxMjExMDIsIDEyMTEwOSwgMTIxMTE2LCAxMjExMjMsIDEyMTEzMSwgMTIxMTM5LCAxMjExNDcsIDEyMTE1NSwgMTIxMTYzLCAKKyAgICAxMjExNzEsIDEyMTE3OCwgMTIxMTg1LCAxMjExOTIsIDEyMTIwMCwgMTIxMjA4LCAxMjEyMTYsIDEyMTIyNCwgMTIxMjMyLCAKKyAgICAxMjEyNDAsIDEyMTI0NSwgMTIxMjUwLCAxMjEyNTUsIDEyMTI2MCwgMTIxMjY1LCAxMjEyNzAsIDEyMTI3NSwgMTIxMjgwLCAKKyAgICAxMjEyODUsIDAsIDAsIDAsIDAsIDEyMTI5MCwgMTIxMjk1LCAxMjEyOTksIDEyMTMwMywgMTIxMzA3LCAxMjEzMTEsIAorICAgIDEyMTMxNSwgMTIxMzE5LCAxMjEzMjMsIDEyMTMyNywgMTIxMzMxLCAxMjEzMzUsIDEyMTMzOSwgMTIxMzQzLCAxMjEzNDcsIAorICAgIDEyMTM1MSwgMTIxMzU1LCAxMjEzNTksIDEyMTM2MywgMTIxMzY3LCAxMjEzNzEsIDEyMTM3NSwgMTIxMzc5LCAxMjEzODMsIAorICAgIDEyMTM4NywgMTIxMzkxLCAxMjEzOTUsIDEyMTM5OSwgMTIxNDAzLCAxMjE0MDcsIDEyMTQxMSwgMTIxNDE1LCAxMjE0MTksIAorICAgIDEyMTQyMywgMTIxNDI3LCAxMjE0MzEsIDEyMTQzNSwgMTIxNDM5LCAxMjE0NDMsIDEyMTQ0NywgMTIxNDUxLCAxMjE0NTUsIAorICAgIDEyMTQ1OSwgMTIxNDYzLCAxMjE0NjcsIDEyMTQ3MSwgMTIxNDc1LCAxMjE0NzksIDEyMTQ4MywgMTIxNDg3LCAxMjE0OTEsIAorICAgIDEyMTQ5NiwgMTIxNTAwLCAxMjE1MDQsIDEyMTUwOCwgMTIxNTEyLCAxMjE1MTYsIDEyMTUyMCwgMTIxNTI0LCAxMjE1MjgsIAorICAgIDEyMTUzMiwgMTIxNTM2LCAxMjE1NDAsIDEyMTU0NCwgMTIxNTQ4LCAxMjE1NTIsIDEyMTU1NiwgMTIxNTYwLCAxMjE1NjQsIAorICAgIDEyMTU2OCwgMTIxNTcyLCAxMjE1NzYsIDEyMTU4MCwgMTIxNTg0LCAxMjE1ODgsIDEyMTU5MiwgMTIxNTk2LCAxMjE2MDAsIAorICAgIDEyMTYwNCwgMTIxNjA4LCAxMjE2MTIsIDEyMTYxNiwgMTIxNjIwLCAxMjE2MjQsIDEyMTYyOCwgMTIxNjMyLCAxMjE2MzYsIAorICAgIDEyMTY0MCwgMTIxNjQ0LCAxMjE2NDgsIDEyMTY1MiwgMTIxNjU2LCAxMjE2NjAsIDEyMTY2NCwgMTIxNjY4LCAxMjE2NzIsIAorICAgIDEyMTY3NiwgMTIxNjgwLCAxMjE2ODQsIDEyMTY4OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTIxNjkyLCAxMjE2OTgsIDEyMTcwNywgMTIxNzE1LCAxMjE3MjMsIDEyMTczMiwgMTIxNzQxLCAxMjE3NTAsIDEyMTc1OSwgCisgICAgMTIxNzY4LCAxMjE3NzcsIDEyMTc4NiwgMTIxNzk1LCAxMjE4MDQsIDEyMTgxMywgMCwgMCwgMTIxODIyLCAxMjE4MzEsIAorICAgIDEyMTgzOSwgMTIxODQ3LCAxMjE4NTYsIDEyMTg2NSwgMTIxODc0LCAxMjE4ODMsIDEyMTg5MiwgMTIxOTAxLCAxMjE5MTAsIAorICAgIDEyMTkxOSwgMTIxOTI4LCAxMjE5MzcsIDAsIDAsIDEyMTk0NiwgMTIxOTU1LCAxMjE5NjMsIDEyMTk3MSwgMTIxOTgwLCAKKyAgICAxMjE5ODksIDEyMTk5OCwgMTIyMDA3LCAxMjIwMTYsIDEyMjAyNSwgMTIyMDM0LCAxMjIwNDMsIDEyMjA1MiwgMTIyMDYxLCAKKyAgICAxMjIwNzAsIDAsIDEyMjA3NywgMTIyMDg2LCAxMjIwOTQsIDEyMjEwMiwgMTIyMTExLCAxMjIxMjAsIDEyMjEyOSwgCisgICAgMTIyMTM4LCAxMjIxNDcsIDEyMjE1NiwgMTIyMTY1LCAxMjIxNzQsIDEyMjE4MywgMTIyMTkyLCAxMjIyMDEsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDEyMjIwOCwgMTIyMjE1LCAxMjIyMjAsIDEyMjIyNCwgMTIyMjI4LCAxMjIyMzIsIDEyMjIzNywgCisgICAgMTIyMjQyLCAxMjIyNDcsIDEyMjI1MiwgMTIyMjU3LCAwLCAwLCAwLCAwLCAwLCAxMjIyNjIsIDEyMjI2NywgMTIyMjczLCAKKyAgICAxMjIyNzksIDEyMjI4NSwgMTIyMjkwLCAxMjIyOTYsIDEyMjMwMiwgMTIyMzA4LCAxMjIzMTMsIDEyMjMxOSwgMTIyMzI1LCAKKyAgICAxMjIzMzAsIDEyMjMzNSwgMTIyMzQxLCAxMjIzNDYsIDEyMjM1MiwgMTIyMzU4LCAxMjIzNjMsIDEyMjM2OSwgMTIyMzc1LCAKKyAgICAxMjIzODAsIDEyMjM4NiwgMTIyMzkyLCAxMjIzOTgsIDEyMjQwNCwgMTIyNDEwLCAxMjI0MjEsIDEyMjQyOCwgMTIyNDM0LCAKKyAgICAxMjI0MzcsIDAsIDEyMjQ0MCwgMTIyNDQ1LCAxMjI0NTEsIDEyMjQ1NywgMTIyNDYzLCAxMjI0NjgsIDEyMjQ3NCwgCisgICAgMTIyNDgwLCAxMjI0ODYsIDEyMjQ5MSwgMTIyNDk3LCAxMjI1MDMsIDEyMjUwOCwgMTIyNTEzLCAxMjI1MTksIDEyMjUyNCwgCisgICAgMTIyNTMwLCAxMjI1MzYsIDEyMjU0MSwgMTIyNTQ3LCAxMjI1NTMsIDEyMjU1OCwgMTIyNTY0LCAxMjI1NzAsIDEyMjU3NiwgCisgICAgMTIyNTgyLCAxMjI1ODgsIDEyMjU5MSwgMTIyNTk0LCAxMjI1OTcsIDEyMjYwMCwgMTIyNjAzLCAxMjI2MDYsIDEyMjYxMiwgCisgICAgMTIyNjE5LCAxMjI2MjYsIDEyMjYzMywgMTIyNjM5LCAxMjI2NDYsIDEyMjY1MywgMTIyNjYwLCAxMjI2NjYsIDEyMjY3MywgCisgICAgMTIyNjgwLCAxMjI2ODYsIDEyMjY5MiwgMTIyNjk5LCAxMjI3MDUsIDEyMjcxMiwgMTIyNzE5LCAxMjI3MjUsIDEyMjczMiwgCisgICAgMTIyNzM5LCAxMjI3NDUsIDEyMjc1MiwgMTIyNzU5LCAxMjI3NjYsIDEyMjc3MywgMTIyNzgwLCAxMjI3ODUsIDAsIDAsIDAsIAorICAgIDAsIDEyMjc5MCwgMTIyNzk2LCAxMjI4MDMsIDEyMjgxMCwgMTIyODE3LCAxMjI4MjMsIDEyMjgzMCwgMTIyODM3LCAKKyAgICAxMjI4NDQsIDEyMjg1MCwgMTIyODU3LCAxMjI4NjQsIDEyMjg3MCwgMTIyODc2LCAxMjI4ODMsIDEyMjg4OSwgMTIyODk2LCAKKyAgICAxMjI5MDMsIDEyMjkwOSwgMTIyOTE2LCAxMjI5MjMsIDEyMjkyOSwgMTIyOTM2LCAxMjI5NDMsIDEyMjk1MCwgMTIyOTU3LCAKKyAgICAxMjI5NjQsIDEyMjk3MywgMTIyOTc3LCAxMjI5ODAsIDEyMjk4MywgMTIyOTg3LCAxMjI5OTEsIDEyMjk5NCwgMTIyOTk3LCAKKyAgICAxMjMwMDAsIDEyMzAwMywgMTIzMDA2LCAxMjMwMDksIDEyMzAxMiwgMTIzMDE1LCAxMjMwMTgsIDEyMzAyNCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI1MzExLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjUzMTUsIAotICAgIDEyNTMxOCwgMTI1MzIyLCAxMjUzMjYsIDEyNTMyOSwgMTI1MzMzLCAxMjUzMzcsIDEyNTM0MCwgMTI1MzQzLCAxMjUzNDcsIAotICAgIDEyNTM1MSwgMTI1MzU0LCAxMjUzNTcsIDEyNTM2MCwgMTI1MzYzLCAxMjUzNjgsIDEyNTM3MSwgMTI1Mzc1LCAxMjUzNzgsIAotICAgIDEyNTM4MSwgMTI1Mzg0LCAxMjUzODcsIDEyNTM5MCwgMTI1MzkzLCAxMjUzOTYsIDEyNTM5OSwgMTI1NDAyLCAxMjU0MDUsIAotICAgIDEyNTQwOCwgMTI1NDEyLCAxMjU0MTYsIDEyNTQyMCwgMTI1NDI0LCAxMjU0MjksIDEyNTQzNCwgMTI1NDQwLCAxMjU0NDYsIAotICAgIDEyNTQ1MiwgMTI1NDU3LCAxMjU0NjMsIDEyNTQ2OSwgMTI1NDc1LCAxMjU0ODAsIDEyNTQ4NiwgMTI1NDkyLCAxMjU0OTcsIAotICAgIDEyNTUwMiwgMTI1NTA3LCAxMjU1MTIsIDEyNTUxOCwgMTI1NTI0LCAxMjU1MjksIDEyNTUzNCwgMTI1NTQwLCAxMjU1NDUsIAotICAgIDEyNTU1MSwgMTI1NTU3LCAxMjU1NjMsIDEyNTU2OSwgMTI1NTc1LCAxMjU1NzksIDEyNTU4NCwgMTI1NTg4LCAxMjU1OTMsIAotICAgIDEyNTU5NywgMTI1NjAyLCAxMjU2MDcsIDEyNTYxMywgMTI1NjE5LCAxMjU2MjUsIDEyNTYzMCwgMTI1NjM2LCAxMjU2NDIsIAotICAgIDEyNTY0OCwgMTI1NjUzLCAxMjU2NTksIDEyNTY2NSwgMTI1NjcwLCAxMjU2NzUsIDEyNTY4MCwgMTI1Njg1LCAxMjU2OTEsIAotICAgIDEyNTY5NywgMTI1NzAyLCAxMjU3MDcsIDEyNTcxMywgMTI1NzE4LCAxMjU3MjQsIDEyNTczMCwgMTI1NzM2LCAxMjU3NDIsIAotICAgIDEyNTc0OCwgMTI1NzUzLCAxMjU3NTcsIDEyNTc2MiwgMTI1NzY1LCAxMjU3NjksIDEyNTc3MiwgMTI1Nzc1LCAxMjU3NzgsIAotICAgIDEyNTc4MSwgMTI1Nzg0LCAxMjU3ODcsIDEyNTc5MCwgMTI1NzkzLCAxMjU3OTYsIDEyNTc5OSwgMTI1ODAyLCAxMjU4MDUsIAotICAgIDEyNTgwOCwgMTI1ODExLCAxMjU4MTQsIDEyNTgxNywgMTI1ODIwLCAxMjU4MjMsIDEyNTgyNiwgMTI1ODI5LCAxMjU4MzIsIAotICAgIDEyNTgzNSwgMTI1ODM4LCAxMjU4NDEsIDEyNTg0NCwgMTI1ODQ3LCAxMjU4NTAsIDEyNTg1MywgMTI1ODU2LCAxMjU4NTksIAotICAgIDEyNTg2MiwgMTI1ODY1LCAxMjU4NjgsIDEyNTg3MSwgMTI1ODc0LCAxMjU4NzcsIDEyNTg4MCwgMTI1ODgzLCAxMjU4ODYsIAotICAgIDEyNTg4OSwgMTI1ODkyLCAxMjU4OTUsIDEyNTg5OCwgMTI1OTAxLCAxMjU5MDQsIDEyNTkwNywgMTI1OTEwLCAxMjU5MTMsIAotICAgIDEyNTkxNiwgMTI1OTE5LCAxMjU5MjIsIDEyNTkyNSwgMTI1OTI4LCAxMjU5MzEsIDEyNTkzNCwgMTI1OTM3LCAxMjU5NDAsIAotICAgIDEyNTk0MywgMTI1OTQ2LCAxMjU5NDksIDEyNTk1MiwgMTI1OTU1LCAxMjU5NTgsIDEyNTk2MSwgMTI1OTY0LCAxMjU5NjcsIAotICAgIDEyNTk3MCwgMTI1OTczLCAxMjU5NzYsIDEyNTk3OSwgMTI1OTgyLCAxMjU5ODUsIDEyNTk4OCwgMTI1OTkxLCAxMjU5OTQsIAotICAgIDEyNTk5NywgMTI2MDAwLCAxMjYwMDMsIDEyNjAwNiwgMTI2MDA5LCAxMjYwMTIsIDEyNjAxNSwgMTI2MDE4LCAxMjYwMjEsIAotICAgIDEyNjAyNCwgMTI2MDI3LCAxMjYwMzAsIDEyNjAzMywgMTI2MDM2LCAxMjYwMzksIDEyNjA0MiwgMTI2MDQ1LCAxMjYwNDgsIAotICAgIDEyNjA1MSwgMTI2MDU0LCAxMjYwNTcsIDEyNjA2MCwgMTI2MDYzLCAxMjYwNjYsIDEyNjA2OSwgMTI2MDcyLCAxMjYwNzUsIAotICAgIDEyNjA3OCwgMTI2MDgxLCAxMjYwODQsIDEyNjA4NywgMTI2MDkwLCAxMjYwOTMsIDEyNjA5NiwgMTI2MDk5LCAxMjYxMDIsIAotICAgIDEyNjEwNSwgMTI2MTA4LCAxMjYxMTEsIDEyNjExNCwgMTI2MTE3LCAxMjYxMjAsIDEyNjEyMywgMTI2MTI2LCAxMjYxMjksIAotICAgIDEyNjEzMiwgMTI2MTM1LCAxMjYxMzgsIDEyNjE0MSwgMTI2MTQ0LCAxMjYxNDcsIDEyNjE1MCwgMTI2MTUzLCAxMjYxNTYsIAotICAgIDEyNjE1OSwgMTI2MTYyLCAxMjYxNjUsIDEyNjE2OCwgMTI2MTcxLCAxMjYxNzQsIDEyNjE3NywgMTI2MTgwLCAxMjYxODMsIAotICAgIDEyNjE4NiwgMTI2MTg5LCAxMjYxOTIsIDEyNjE5NSwgMTI2MTk4LCAxMjYyMDEsIDEyNjIwNCwgMTI2MjA3LCAxMjYyMTAsIAotICAgIDEyNjIxMywgMTI2MjE2LCAxMjYyMTksIDEyNjIyMiwgMTI2MjI1LCAxMjYyMjgsIDEyNjIzMSwgMTI2MjM0LCAxMjYyMzcsIAotICAgIDEyNjI0MCwgMTI2MjQzLCAxMjYyNDYsIDEyNjI0OSwgMTI2MjUyLCAxMjYyNTUsIDEyNjI1OCwgMTI2MjYxLCAxMjYyNjQsIAotICAgIDEyNjI2NywgMTI2MjcwLCAxMjYyNzMsIDEyNjI3NiwgMTI2Mjc5LCAxMjYyODIsIDEyNjI4NSwgMTI2Mjg4LCAxMjYyOTEsIAotICAgIDEyNjI5NCwgMTI2Mjk3LCAxMjYzMDAsIDEyNjMwMywgMTI2MzA2LCAxMjYzMDksIDEyNjMxMiwgMTI2MzE1LCAxMjYzMTgsIAotICAgIDEyNjMyMSwgMTI2MzI0LCAxMjYzMjcsIDEyNjMzMCwgMTI2MzMzLCAxMjYzMzYsIDEyNjMzOSwgMTI2MzQyLCAxMjYzNDUsIAotICAgIDEyNjM0OCwgMTI2MzUxLCAxMjYzNTQsIDEyNjM1NywgMTI2MzYwLCAxMjYzNjMsIDEyNjM2NiwgMTI2MzY5LCAxMjYzNzIsIAotICAgIDEyNjM3NSwgMTI2Mzc4LCAxMjYzODEsIDEyNjM4NCwgMTI2Mzg3LCAxMjYzOTAsIDEyNjM5MywgMTI2Mzk2LCAxMjYzOTksIAotICAgIDEyNjQwMiwgMTI2NDA1LCAxMjY0MDgsIDEyNjQxMSwgMTI2NDE0LCAxMjY0MTcsIDEyNjQyMCwgMTI2NDIzLCAxMjY0MjYsIAotICAgIDEyNjQyOSwgMTI2NDMyLCAxMjY0MzUsIDEyNjQzOCwgMTI2NDQxLCAxMjY0NDQsIDEyNjQ0NywgMTI2NDUwLCAxMjY0NTMsIAotICAgIDEyNjQ1NiwgMTI2NDU5LCAxMjY0NjIsIDEyNjQ2NSwgMTI2NDY4LCAxMjY0NzEsIDEyNjQ3NCwgMTI2NDc3LCAxMjY0ODAsIAotICAgIDEyNjQ4MywgMTI2NDg2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAxMjMwMjcsIDEyMzAzNCwgMTIzMDQyLCAxMjMwNTAsIDEyMzA1OCwgMTIzMDY1LCAxMjMwNzMsIDEyMzA4MSwgMTIzMDg5LCAKKyAgICAxMjMwOTYsIDEyMzEwNCwgMTIzMTEyLCAxMjMxMTksIDEyMzEyNiwgMTIzMTM0LCAxMjMxNDEsIDEyMzE0OSwgMTIzMTU3LCAKKyAgICAxMjMxNjQsIDEyMzE3MiwgMTIzMTgwLCAxMjMxODcsIDEyMzE5NSwgMTIzMjAzLCAxMjMyMTEsIDEyMzIxOSwgMTIzMjI3LCAKKyAgICAxMjMyMzEsIDEyMzIzNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTIzMjM4LCAxMjMyNDQsIAorICAgIDEyMzI1MCwgMTIzMjU2LCAxMjMyNjAsIDEyMzI2NiwgMTIzMjcyLCAxMjMyNzgsIDEyMzI4NCwgMTIzMjkwLCAxMjMyOTYsIAorICAgIDEyMzMwMiwgMTIzMzA4LCAxMjMzMTQsIDEyMzMyMCwgMTIzMzI2LCAxMjMzMzIsIDEyMzMzOCwgMTIzMzQ0LCAxMjMzNTAsIAorICAgIDEyMzM1NiwgMTIzMzYyLCAxMjMzNjgsIDEyMzM3NCwgMTIzMzgwLCAxMjMzODYsIDEyMzM5MiwgMTIzMzk4LCAxMjM0MDQsIAorICAgIDEyMzQxMCwgMTIzNDE2LCAxMjM0MjIsIDEyMzQyOCwgMTIzNDM0LCAxMjM0NDAsIDEyMzQ0NiwgMTIzNDUyLCAxMjM0NTgsIAorICAgIDEyMzQ2NCwgMTIzNDcwLCAxMjM0NzYsIDEyMzQ4MiwgMTIzNDg4LCAwLCAwLCAwLCAwLCAwLCAxMjM0OTQsIDEyMzUwNSwgCisgICAgMTIzNTE2LCAxMjM1MjcsIDEyMzUzOCwgMTIzNTQ5LCAxMjM1NjAsIDEyMzU3MSwgMTIzNTgyLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAxMjM1OTMsIDEyMzU5NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMTIzNjAxLCAxMjM2MDMsIDEyMzYwNSwgMTIzNjA5LCAxMjM2MTQsIDEyMzYxOSwgMTIzNjIxLCAKKyAgICAxMjM2MjcsIDEyMzYzMiwgMTIzNjM0LCAxMjM2NDAsIDEyMzY0NCwgMTIzNjQ2LCAxMjM2NTAsIDEyMzY1NiwgMTIzNjYyLCAKKyAgICAxMjM2NjgsIDEyMzY3MywgMTIzNjc3LCAxMjM2ODQsIDEyMzY5MSwgMTIzNjk4LCAxMjM3MDMsIDEyMzcxMCwgMTIzNzE3LCAKKyAgICAxMjM3MjQsIDEyMzcyOCwgMTIzNzM0LCAxMjM3NDMsIDEyMzc1MiwgMTIzNzU5LCAxMjM3NjQsIDEyMzc2OCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTIzNzcyLCAxMjM3NzQsIDEyMzc3NiwgMTIzNzgwLCAKKyAgICAxMjM3ODQsIDEyMzc4OCwgMCwgMTIzNzkwLCAxMjM3OTIsIDEyMzc5NiwgMTIzNzk4LCAxMjM4MDAsIDEyMzgwMiwgCisgICAgMTIzODA0LCAxMjM4MDksIDEyMzgxNCwgMTIzODE2LCAxMjM4MjIsIDEyMzgyNiwgMTIzODMwLCAxMjM4MzgsIDEyMzg0MCwgCisgICAgMTIzODQyLCAxMjM4NDQsIDEyMzg0NiwgMTIzODQ4LCAxMjM4NTAsIDEyMzg1MiwgMTIzODU0LCAxMjM4NTYsIDEyMzg1OCwgCisgICAgMTIzODYyLCAxMjM4NjYsIDEyMzg2OCwgMTIzODcwLCAxMjM4NzIsIDEyMzg3NCwgMTIzODc2LCAxMjM4ODEsIDEyMzg4NywgCisgICAgMTIzODkxLCAxMjM4OTUsIDEyMzg5OSwgMTIzOTAzLCAxMjM5MDgsIDEyMzkxMiwgMTIzOTE0LCAxMjM5MTYsIDEyMzkyMCwgCisgICAgMTIzOTI2LCAxMjM5MjgsIDEyMzkzMCwgMTIzOTMyLCAxMjM5MzYsIDEyMzk0NSwgMTIzOTUxLCAxMjM5NTUsIDEyMzk1OSwgCisgICAgMTIzOTYxLCAxMjM5NjMsIDEyMzk2NiwgMTIzOTY4LCAxMjM5NzAsIDEyMzk3MiwgMTIzOTc2LCAxMjM5NzgsIDEyMzk4MiwgCisgICAgMTIzOTg3LCAxMjM5ODksIDEyMzk5NCwgMTI0MDAwLCAxMjQwMDcsIDEyNDAxMSwgMTI0MDE1LCAxMjQwMTksIDEyNDAyMywgCisgICAgMTI0MDI5LCAwLCAwLCAwLCAxMjQwMzMsIDEyNDAzNSwgMTI0MDM5LCAxMjQwNDMsIDEyNDA0NSwgMTI0MDQ5LCAxMjQwNTMsIAorICAgIDEyNDA1NSwgMTI0MDU5LCAxMjQwNjEsIDEyNDA2NSwgMTI0MDY5LCAxMjQwNzMsIDEyNDA3NywgMTI0MDgxLCAxMjQwODUsIAorICAgIDEyNDA4OSwgMTI0MDkzLCAxMjQwOTksIDEyNDEwMywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTI0MTA3LCAxMjQxMTEsIDEyNDExNSwgMTI0MTE5LCAxMjQxMjYsIDEyNDEyOCwgMTI0MTMyLCAxMjQxMzQsIDEyNDEzNiwgCisgICAgMTI0MTQwLCAxMjQxNDQsIDEyNDE0OCwgMTI0MTUwLCAxMjQxNTQsIDEyNDE1OCwgMTI0MTYyLCAxMjQxNjYsIDEyNDE3MCwgCisgICAgMTI0MTcyLCAxMjQxNzYsIDEyNDE3OCwgMTI0MTg0LCAxMjQxODcsIDEyNDE5MiwgMTI0MTk0LCAxMjQxOTYsIDEyNDE5OSwgCisgICAgMTI0MjAxLCAxMjQyMDMsIDEyNDIwNiwgMTI0MjEzLCAxMjQyMjAsIDEyNDIyNywgMTI0MjMyLCAxMjQyMzYsIDEyNDIzOCwgCisgICAgMTI0MjQwLCAwLCAxMjQyNDIsIDEyNDI0NCwgMTI0MjQ4LCAxMjQyNTIsIDEyNDI1NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI0MjU4LCAxMjQyNjIsIDEyNDI2NywgMTI0MjcxLCAKKyAgICAxMjQyNzcsIDEyNDI4MywgMTI0Mjg1LCAxMjQyODcsIDEyNDI5MywgMTI0Mjk1LCAxMjQyOTksIDEyNDMwMywgMTI0MzA1LCAKKyAgICAxMjQzMDksIDEyNDMxMSwgMTI0MzE1LCAxMjQzMTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDEyNDMyMywgMTI0MzI1LCAxMjQzMjcsIDEyNDMyOSwgMTI0MzMzLCAxMjQzMzUsIDEyNDMzNywgMTI0MzM5LCAKKyAgICAxMjQzNDEsIDEyNDM0MywgMTI0MzQ1LCAxMjQzNDcsIDEyNDM0OSwgMTI0MzUxLCAxMjQzNTMsIDEyNDM1NSwgMTI0MzU3LCAKKyAgICAxMjQzNTksIDEyNDM2MSwgMTI0MzYzLCAxMjQzNjUsIDEyNDM2NywgMTI0MzY5LCAxMjQzNzEsIDEyNDM3MywgMTI0Mzc1LCAKKyAgICAxMjQzNzcsIDEyNDM4MSwgMTI0MzgzLCAxMjQzODUsIDEyNDM4NywgMTI0MzkxLCAxMjQzOTMsIDEyNDM5NywgMTI0Mzk5LCAKKyAgICAxMjQ0MDEsIDEyNDQwNSwgMTI0NDA5LCAxMjQ0MTUsIDEyNDQxNywgMTI0NDE5LCAxMjQ0MjEsIDEyNDQyMywgMTI0NDI3LCAKKyAgICAxMjQ0MzEsIDEyNDQzMywgMTI0NDM3LCAxMjQ0NDEsIDEyNDQ0NSwgMTI0NDQ5LCAxMjQ0NTMsIDEyNDQ1NywgMTI0NDYxLCAKKyAgICAxMjQ0NjUsIDEyNDQ2OSwgMTI0NDczLCAxMjQ0NzcsIDEyNDQ4MSwgMTI0NDg1LCAxMjQ0ODksIDEyNDQ5MywgMTI0NDk3LCAKKyAgICAxMjQ1MDEsIDAsIDEyNDUwNSwgMCwgMTI0NTA3LCAxMjQ1MDksIDEyNDUxMSwgMTI0NTEzLCAxMjQ1MTUsIDEyNDUyMywgCisgICAgMTI0NTMxLCAxMjQ1MzksIDEyNDU0NywgMTI0NTUyLCAxMjQ1NTcsIDEyNDU2MiwgMTI0NTY2LCAxMjQ1NzAsIDEyNDU3NSwgCisgICAgMTI0NTc5LCAxMjQ1ODEsIDEyNDU4NSwgMTI0NTg3LCAxMjQ1ODksIDEyNDU5MSwgMTI0NTkzLCAxMjQ1OTUsIDEyNDU5NywgCisgICAgMTI0NTk5LCAxMjQ2MDMsIDEyNDYwNSwgMTI0NjA3LCAxMjQ2MDksIDEyNDYxMywgMTI0NjE3LCAxMjQ2MjEsIDEyNDYyNSwgCisgICAgMTI0NjI5LCAxMjQ2MzEsIDEyNDYzNywgMTI0NjQzLCAxMjQ2NDUsIDEyNDY0NywgMTI0NjQ5LCAxMjQ2NTEsIDEyNDY1MywgCisgICAgMTI0NjYyLCAxMjQ2NjksIDEyNDY3NiwgMTI0NjgwLCAxMjQ2ODcsIDEyNDY5MiwgMTI0Njk5LCAxMjQ3MDgsIDEyNDcxMywgCisgICAgMTI0NzE3LCAxMjQ3MjEsIDEyNDcyMywgMTI0NzI3LCAxMjQ3MjksIDEyNDczMywgMTI0NzM3LCAxMjQ3MzksIDEyNDc0MywgCisgICAgMTI0NzQ3LCAxMjQ3NTEsIDEyNDc1MywgMTI0NzU1LCAxMjQ3NjEsIDEyNDc2MywgMTI0NzY1LCAxMjQ3NjcsIDEyNDc3MSwgCisgICAgMTI0Nzc1LCAxMjQ3NzcsIDEyNDc4MSwgMTI0NzgzLCAxMjQ3ODUsIDEyNDc4OCwgMTI0NzkyLCAxMjQ3OTQsIDEyNDc5OCwgCisgICAgMTI0ODAwLCAxMjQ4MDIsIDEyNDgwNywgMTI0ODA5LCAxMjQ4MTMsIDEyNDgxNywgMTI0ODIwLCAxMjQ4MjQsIDEyNDgyOCwgCisgICAgMTI0ODMyLCAxMjQ4MzYsIDEyNDg0MCwgMTI0ODQ0LCAxMjQ4NDgsIDEyNDg1MywgMTI0ODU3LCAxMjQ4NjEsIDEyNDg3MCwgCisgICAgMTI0ODc1LCAxMjQ4NzgsIDEyNDg4MCwgMTI0ODgzLCAxMjQ4ODYsIDEyNDg5MSwgMTI0ODkzLCAxMjQ4OTYsIDEyNDkwMSwgCisgICAgMTI0OTA1LCAxMjQ5MDgsIDEyNDkxMiwgMTI0OTE2LCAxMjQ5MTksIDEyNDkyNCwgMTI0OTI4LCAxMjQ5MzIsIDEyNDkzNiwgCisgICAgMTI0OTQwLCAxMjQ5NDYsIDEyNDk1MiwgMTI0OTU4LCAxMjQ5NjQsIDEyNDk2OSwgMTI0OTgwLCAxMjQ5ODIsIDEyNDk4NiwgCisgICAgMTI0OTg4LCAxMjQ5OTAsIDEyNDk5NCwgMTI0OTk4LCAxMjUwMDAsIDEyNTAwNCwgMTI1MDA5LCAxMjUwMTQsIDEyNTAyMCwgCisgICAgMTI1MDIyLCAxMjUwMjYsIDEyNTAzMCwgMTI1MDM3LCAxMjUwNDQsIDEyNTA0OCwgMTI1MDUwLCAxMjUwNTIsIDEyNTA1NiwgCisgICAgMTI1MDU4LCAxMjUwNjIsIDEyNTA2NiwgMTI1MDcwLCAxMjUwNzIsIDEyNTA3NCwgMTI1MDgxLCAxMjUwODUsIDEyNTA4OCwgCisgICAgMTI1MDkyLCAxMjUwOTYsIDEyNTEwMCwgMTI1MTAyLCAxMjUxMDYsIDEyNTEwOCwgMTI1MTEwLCAxMjUxMTQsIDEyNTExNiwgCisgICAgMTI1MTIwLCAxMjUxMjQsIDEyNTEzMCwgMTI1MTM0LCAxMjUxMzgsIDEyNTE0MiwgMTI1MTQ0LCAxMjUxNDcsIDEyNTE1MSwgCisgICAgMTI1MTU4LCAxMjUxNjcsIDEyNTE3NiwgMTI1MTg0LCAxMjUxOTIsIDEyNTE5NCwgMTI1MTk4LCAxMjUyMDAsIDEyNTIwNCwgCisgICAgMTI1MjE1LCAxMjUyMTksIDEyNTIyNSwgMTI1MjMxLCAxMjUyMzYsIDAsIDEyNTIzOCwgMTI1MjQyLCAxMjUyNDQsIAorICAgIDEyNTI0NiwgMCwgMCwgMCwgMTI1MjQ4LCAxMjUyNTMsIDEyNTI2MywgMTI1Mjc4LCAxMjUyOTAsIDEyNTMwMiwgMTI1MzA2LCAKKyAgICAxMjUzMTAsIDEyNTMxNiwgMTI1MzE4LCAxMjUzMjYsIDEyNTMzNCwgMTI1MzM2LCAxMjUzNDAsIDEyNTM0NiwgMTI1MzUyLCAKKyAgICAxMjUzNTksIDEyNTM2NiwgMTI1MzY4LCAxMjUzNzAsIDEyNTM3MywgMTI1Mzc1LCAxMjUzODEsIDEyNTM4MywgMTI1Mzg2LCAKKyAgICAxMjUzOTAsIDEyNTM5NiwgMTI1NDAyLCAxMjU0MTMsIDEyNTQxOSwgMTI1NDI2LCAxMjU0MzQsIDEyNTQzOCwgMTI1NDQ2LCAKKyAgICAxMjU0NTQsIDEyNTQ2MCwgMTI1NDY2LCAxMjU0NzMsIDEyNTQ3NSwgMTI1NDc5LCAxMjU0ODEsIDEyNTQ4MywgMTI1NDg4LCAKKyAgICAxMjU0OTAsIDEyNTQ5MiwgMTI1NDk0LCAxMjU0OTYsIDEyNTUwMCwgMTI1NTExLCAxMjU1MTcsIDEyNTUyMSwgMTI1NTI1LCAKKyAgICAxMjU1MjksIDEyNTUzNSwgMTI1NTQxLCAxMjU1NDcsIDEyNTU1MywgMTI1NTU4LCAxMjU1NjMsIDEyNTU2OSwgMTI1NTc1LCAKKyAgICAxMjU1ODIsIDAsIDAsIDEyNTU4OSwgMTI1NTk0LCAxMjU2MDIsIDEyNTYwNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMTI1NjE1LCAxMjU2MjIsIDEyNTYyOSwgMTI1NjM2LCAxMjU2NDQsIDEyNTY1MiwgMTI1NjYwLCAxMjU2NjgsIAorICAgIDEyNTY3NiwgMTI1Njg0LCAxMjU2OTIsIDEyNTcwMCwgMTI1NzA4LCAxMjU3MTQsIDEyNTcyMCwgMTI1NzI2LCAxMjU3MzIsIAorICAgIDEyNTczOCwgMTI1NzQ0LCAxMjU3NTAsIDEyNTc1NiwgMTI1NzYyLCAxMjU3NjgsIDEyNTc3NCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI1NzgwLCAKKyAgICAxMjU3ODQsIDEyNTc4OCwgMTI1NzkzLCAxMjU3OTgsIDEyNTgwMCwgMTI1ODA0LCAxMjU4MTMsIDEyNTgyMSwgMTI1ODI5LCAKKyAgICAxMjU4NDIsIDEyNTg1NSwgMTI1ODY4LCAxMjU4NzUsIDEyNTg4MiwgMTI1ODg2LCAxMjU4OTUsIDEyNTkwMywgMTI1OTA3LCAKKyAgICAxMjU5MTYsIDEyNTkyMywgMTI1OTI3LCAxMjU5MzEsIDEyNTkzNSwgMTI1OTM5LCAxMjU5NDYsIDEyNTk1MCwgMTI1OTU0LCAKKyAgICAxMjU5NTgsIDEyNTk2MiwgMTI1OTY5LCAxMjU5NzgsIDEyNTk4NywgMTI1OTk0LCAxMjYwMDYsIDEyNjAxOCwgMTI2MDIyLCAKKyAgICAxMjYwMjYsIDEyNjAzMCwgMTI2MDM0LCAxMjYwMzgsIDEyNjA0MiwgMTI2MDUwLCAxMjYwNTgsIDEyNjA2NiwgMTI2MDcwLCAKKyAgICAxMjYwNzQsIDEyNjA3OCwgMTI2MDgyLCAxMjYwODYsIDEyNjA5MCwgMTI2MDk2LCAxMjYxMDIsIDEyNjEwNiwgMTI2MTE3LCAKKyAgICAxMjYxMjUsIDEyNjEyOSwgMTI2MTMzLCAxMjYxMzcsIDEyNjE0MSwgMTI2MTQ3LCAxMjYxNTQsIDEyNjE2NSwgMTI2MTc1LCAKKyAgICAxMjYxODUsIDEyNjE5NiwgMTI2MjA1LCAxMjYyMTYsIDEyNjIyMiwgMTI2MjI4LCAwLCAwLCAwLCAwLCAxMjYyMzQsIAorICAgIDEyNjI0MywgMTI2MjUwLCAxMjYyNTYsIDEyNjI2MCwgMTI2MjY0LCAxMjYyNjgsIDEyNjI3NywgMTI2Mjg5LCAxMjYyOTMsIAorICAgIDEyNjMwMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMTI2MzA3LCAxMjYzMDksIDEyNjMxMSwgMTI2MzE1LCAxMjYzMTksIDEyNjMyMywgMTI2MzMyLCAxMjYzMzQsIAorICAgIDEyNjMzNiwgMTI2MzM5LCAxMjYzNDEsIDEyNjM0MywgMTI2MzQ3LCAxMjYzNDksIDEyNjM1MywgMTI2MzU1LCAxMjYzNTksIAorICAgIDEyNjM2MSwgMTI2MzYzLCAxMjYzNjcsIDEyNjM3MSwgMTI2Mzc3LCAxMjYzNzksIDEyNjM4MywgMTI2Mzg1LCAxMjYzODksIAorICAgIDEyNjM5MywgMTI2Mzk3LCAxMjY0MDEsIDEyNjQwMywgMTI2NDA1LCAxMjY0MDksIDEyNjQxMywgMTI2NDE3LCAxMjY0MjEsIAorICAgIDEyNjQyMywgMTI2NDI1LCAxMjY0MjcsIDEyNjQzMiwgMTI2NDM3LCAxMjY0NDAsIDEyNjQ0OCwgMTI2NDU2LCAxMjY0NTgsIAorICAgIDEyNjQ2MywgMTI2NDY2LCAxMjY0NzEsIDEyNjQ4MiwgMTI2NDg5LCAxMjY0OTQsIDEyNjQ5OSwgMTI2NTAxLCAxMjY1MDUsIAorICAgIDEyNjUwNywgMTI2NTExLCAxMjY1MTMsIDEyNjUxNywgMTI2NTIxLCAxMjY1MjQsIDEyNjUyNywgMTI2NTI5LCAxMjY1MzIsIAorICAgIDEyNjUzNCwgMTI2NTM4LCAxMjY1NDAsIDEyNjU0MiwgMTI2NTQ0LCAxMjY1NDgsIDEyNjU1MCwgMTI2NTU0LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjY1NTcsIDEyNjU2MiwgMTI2NTY3LCAxMjY1NzIsIDEyNjU3NywgMTI2NTgyLCAKKyAgICAxMjY1ODcsIDEyNjU5NCwgMTI2NjAxLCAxMjY2MDgsIDEyNjYxNSwgMTI2NjIwLCAxMjY2MjUsIDEyNjYzMCwgMTI2NjM1LCAKKyAgICAxMjY2NDIsIDEyNjY0OCwgMTI2NjU1LCAxMjY2NjIsIDEyNjY2OSwgMTI2Njc0LCAxMjY2NzksIDEyNjY4NCwgMTI2Njg5LCAKKyAgICAxMjY2OTQsIDEyNjcwMSwgMTI2NzA4LCAxMjY3MTMsIDEyNjcxOCwgMTI2NzI1LCAxMjY3MzIsIDEyNjc0MCwgMTI2NzQ4LCAKKyAgICAxMjY3NTUsIDEyNjc2MiwgMTI2NzcwLCAxMjY3NzgsIDEyNjc4NiwgMTI2NzkzLCAxMjY4MDMsIDEyNjgxNCwgMTI2ODE5LCAKKyAgICAxMjY4MjYsIDEyNjgzMywgMTI2ODQwLCAxMjY4NDgsIDEyNjg1NiwgMTI2ODY3LCAxMjY4NzUsIDEyNjg4MywgMTI2ODkxLCAKKyAgICAxMjY4OTYsIDEyNjkwMSwgMTI2OTA2LCAxMjY5MTEsIDEyNjkxNiwgMTI2OTIxLCAxMjY5MjYsIDEyNjkzMSwgMTI2OTM2LCAKKyAgICAxMjY5NDEsIDEyNjk0NiwgMTI2OTUxLCAxMjY5NTgsIDEyNjk2MywgMTI2OTY4LCAxMjY5NzUsIDEyNjk4MCwgMTI2OTg1LCAKKyAgICAxMjY5OTAsIDEyNjk5NSwgMTI3MDAwLCAxMjcwMDUsIDEyNzAxMCwgMTI3MDE1LCAxMjcwMjAsIDEyNzAyNSwgMTI3MDMwLCAKKyAgICAxMjcwMzUsIDEyNzA0MiwgMTI3MDUwLCAxMjcwNTUsIDEyNzA2MCwgMTI3MDY3LCAxMjcwNzIsIDEyNzA3NywgMTI3MDgyLCAKKyAgICAxMjcwODksIDEyNzA5NCwgMTI3MTAxLCAxMjcxMDYsIDEyNzExMywgMTI3MTE4LCAxMjcxMjcsIDEyNzEzNiwgMTI3MTQxLCAKKyAgICAxMjcxNDYsIDEyNzE1MSwgMTI3MTU2LCAxMjcxNjEsIDEyNzE2NiwgMTI3MTcxLCAxMjcxNzYsIDEyNzE4MSwgMTI3MTg2LCAKKyAgICAxMjcxOTEsIDEyNzE5NiwgMTI3MjAxLCAxMjcyMDksIDEyNzIxNywgMTI3MjIyLCAxMjcyMjcsIDEyNzIzMiwgMTI3MjM3LCAKKyAgICAxMjcyNDIsIDEyNzI0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI3MjU0LCAxMjcyNTgsIAorICAgIDEyNzI2MiwgMTI3MjY2LCAxMjcyNzAsIDEyNzI3NCwgMTI3Mjc4LCAxMjcyODIsIDEyNzI4NiwgMTI3MjkwLCAxMjcyOTQsIAorICAgIDEyNzI5OCwgMTI3MzAyLCAxMjczMDYsIDEyNzMxMCwgMTI3MzE0LCAxMjczMTgsIDEyNzMyMiwgMTI3MzI2LCAxMjczMzAsIAorICAgIDEyNzMzNCwgMTI3MzM4LCAxMjczNDIsIDEyNzM0NiwgMTI3MzUwLCAxMjczNTQsIDEyNzM1OCwgMTI3MzYyLCAxMjczNjYsIAorICAgIDEyNzM3MCwgMTI3Mzc0LCAxMjczNzgsIDEyNzM4MiwgMTI3Mzg2LCAxMjczOTAsIDEyNzM5NCwgMTI3Mzk4LCAxMjc0MDIsIAorICAgIDEyNzQwNiwgMTI3NDEwLCAxMjc0MTQsIDEyNzQxOCwgMTI3NDIyLCAxMjc0MjYsIDEyNzQzMCwgMTI3NDM0LCAxMjc0MzgsIAorICAgIDEyNzQ0MiwgMTI3NDQ2LCAxMjc0NTAsIDEyNzQ1NCwgMTI3NDU4LCAxMjc0NjIsIDEyNzQ2NiwgMTI3NDcwLCAxMjc0NzQsIAorICAgIDEyNzQ3OCwgMTI3NDgyLCAxMjc0ODYsIDEyNzQ5MCwgMTI3NDk0LCAxMjc0OTgsIDEyNzUwMiwgMTI3NTA2LCAxMjc1MTAsIAorICAgIDEyNzUxNCwgMTI3NTE4LCAxMjc1MjIsIDEyNzUyNiwgMTI3NTMwLCAxMjc1MzQsIDEyNzUzOCwgMTI3NTQyLCAxMjc1NDYsIAorICAgIDEyNzU1MCwgMTI3NTU0LCAxMjc1NTgsIDEyNzU2MiwgMTI3NTY2LCAxMjc1NzAsIDEyNzU3NCwgMTI3NTc4LCAxMjc1ODIsIAorICAgIDEyNzU4NiwgMTI3NTkwLCAxMjc1OTQsIDEyNzU5OCwgMTI3NjAyLCAxMjc2MDYsIDEyNzYxMCwgMTI3NjE0LCAxMjc2MTgsIAorICAgIDEyNzYyMiwgMTI3NjI2LCAxMjc2MzAsIDEyNzYzNCwgMTI3NjM4LCAxMjc2NDIsIDEyNzY0NiwgMTI3NjUwLCAxMjc2NTQsIAorICAgIDEyNzY1OCwgMTI3NjYyLCAxMjc2NjYsIDEyNzY3MCwgMTI3Njc0LCAxMjc2NzgsIDEyNzY4MiwgMTI3Njg2LCAxMjc2OTAsIAorICAgIDEyNzY5NCwgMTI3Njk4LCAxMjc3MDIsIDEyNzcwNiwgMTI3NzEwLCAxMjc3MTQsIDEyNzcxOCwgMTI3NzIyLCAxMjc3MjYsIAorICAgIDEyNzczMCwgMTI3NzM0LCAxMjc3MzgsIDEyNzc0MiwgMTI3NzQ2LCAxMjc3NTAsIDEyNzc1NCwgMTI3NzU4LCAxMjc3NjIsIAorICAgIDEyNzc2NiwgMTI3NzcwLCAxMjc3NzQsIDEyNzc3OCwgMTI3NzgyLCAxMjc3ODYsIDEyNzc5MCwgMTI3Nzk0LCAxMjc3OTgsIAorICAgIDEyNzgwMiwgMTI3ODA2LCAxMjc4MTAsIDEyNzgxNCwgMTI3ODE4LCAxMjc4MjIsIDEyNzgyNiwgMTI3ODMwLCAxMjc4MzQsIAorICAgIDEyNzgzOCwgMTI3ODQyLCAxMjc4NDYsIDEyNzg1MCwgMTI3ODU0LCAxMjc4NTgsIDEyNzg2MiwgMTI3ODY2LCAxMjc4NzAsIAorICAgIDEyNzg3NCwgMTI3ODc4LCAxMjc4ODIsIDEyNzg4NiwgMTI3ODkwLCAxMjc4OTQsIDEyNzg5OCwgMTI3OTAyLCAxMjc5MDYsIAorICAgIDEyNzkxMCwgMTI3OTE0LCAxMjc5MTgsIDEyNzkyMiwgMTI3OTI2LCAxMjc5MzAsIDEyNzkzNCwgMTI3OTM4LCAxMjc5NDIsIAorICAgIDEyNzk0NiwgMTI3OTUwLCAxMjc5NTQsIDEyNzk1OCwgMTI3OTYyLCAxMjc5NjYsIDEyNzk3MCwgMTI3OTc0LCAxMjc5NzgsIAorICAgIDEyNzk4MiwgMTI3OTg2LCAxMjc5OTAsIDEyNzk5NCwgMTI3OTk4LCAxMjgwMDIsIDEyODAwNiwgMTI4MDEwLCAxMjgwMTQsIAorICAgIDEyODAxOCwgMTI4MDIyLCAxMjgwMjYsIDEyODAzMCwgMTI4MDM0LCAxMjgwMzgsIDEyODA0MiwgMTI4MDQ2LCAxMjgwNTAsIAorICAgIDEyODA1NCwgMTI4MDU4LCAxMjgwNjIsIDEyODA2NiwgMTI4MDcwLCAxMjgwNzQsIDEyODA3OCwgMTI4MDgyLCAxMjgwODYsIAorICAgIDEyODA5MCwgMTI4MDk0LCAxMjgwOTgsIDEyODEwMiwgMTI4MTA2LCAxMjgxMTAsIDEyODExNCwgMTI4MTE4LCAxMjgxMjIsIAorICAgIDEyODEyNiwgMTI4MTMwLCAxMjgxMzQsIDEyODEzOCwgMTI4MTQyLCAxMjgxNDYsIDEyODE1MCwgMTI4MTU0LCAxMjgxNTgsIAorICAgIDEyODE2MiwgMTI4MTY2LCAxMjgxNzAsIDEyODE3NCwgMTI4MTc4LCAxMjgxODIsIDEyODE4NiwgMTI4MTkwLCAxMjgxOTQsIAorICAgIDEyODE5OCwgMTI4MjAyLCAxMjgyMDYsIDEyODIxMCwgMTI4MjE0LCAxMjgyMTgsIDEyODIyMiwgMTI4MjI2LCAxMjgyMzAsIAorICAgIDEyODIzNCwgMTI4MjM4LCAxMjgyNDIsIDEyODI0NiwgMTI4MjUwLCAxMjgyNTQsIDEyODI1OCwgMTI4MjYyLCAxMjgyNjYsIAorICAgIDEyODI3MCwgMTI4Mjc0LCAxMjgyNzgsIDEyODI4MiwgMTI4Mjg2LCAxMjgyOTAsIDEyODI5NCwgMTI4Mjk4LCAxMjgzMDIsIAorICAgIDEyODMwNiwgMTI4MzEwLCAxMjgzMTQsIDEyODMxOCwgMTI4MzIyLCAxMjgzMjYsIDEyODMzMCwgMTI4MzM0LCAxMjgzMzgsIAorICAgIDEyODM0MiwgMTI4MzQ2LCAxMjgzNTAsIDEyODM1NCwgMTI4MzU4LCAxMjgzNjIsIDEyODM2NiwgMTI4MzcwLCAxMjgzNzQsIAorICAgIDEyODM3OCwgMTI4MzgyLCAxMjgzODYsIDEyODM5MCwgMTI4Mzk0LCAxMjgzOTgsIDEyODQwMiwgMTI4NDA2LCAxMjg0MTAsIAorICAgIDEyODQxNCwgMTI4NDE4LCAxMjg0MjIsIDEyODQyNiwgMTI4NDMwLCAxMjg0MzQsIDEyODQzOCwgMTI4NDQyLCAxMjg0NDYsIAorICAgIDEyODQ1MCwgMTI4NDU0LCAxMjg0NTgsIDEyODQ2MiwgMTI4NDY2LCAxMjg0NzAsIDEyODQ3NCwgMTI4NDc4LCAxMjg0ODIsIAorICAgIDEyODQ4NiwgMTI4NDkwLCAxMjg0OTQsIDEyODQ5OCwgMTI4NTAyLCAxMjg1MDYsIDEyODUxMCwgMTI4NTE0LCAxMjg1MTgsIAorICAgIDEyODUyMiwgMTI4NTI2LCAxMjg1MzAsIDEyODUzNCwgMTI4NTM4LCAxMjg1NDIsIDEyODU0NiwgMTI4NTUwLCAxMjg1NTQsIAorICAgIDEyODU1OCwgMTI4NTYyLCAxMjg1NjYsIDEyODU3MCwgMTI4NTc0LCAxMjg1NzgsIDEyODU4MiwgMTI4NTg2LCAxMjg1OTAsIAorICAgIDEyODU5NCwgMTI4NTk4LCAxMjg2MDIsIDEyODYwNiwgMTI4NjEwLCAxMjg2MTQsIDEyODYxOCwgMTI4NjIyLCAxMjg2MjYsIAorICAgIDEyODYzMCwgMTI4NjM0LCAxMjg2MzgsIDEyODY0MiwgMTI4NjQ2LCAxMjg2NTAsIDEyODY1NCwgMTI4NjU4LCAxMjg2NjIsIAorICAgIDEyODY2NiwgMTI4NjcwLCAxMjg2NzQsIDEyODY3OCwgMTI4NjgyLCAxMjg2ODYsIDEyODY5MCwgMTI4Njk0LCAxMjg2OTgsIAorICAgIDEyODcwMiwgMTI4NzA2LCAxMjg3MTAsIDEyODcxNCwgMTI4NzE4LCAxMjg3MjIsIDEyODcyNiwgMTI4NzMwLCAxMjg3MzQsIAorICAgIDEyODczOCwgMTI4NzQyLCAxMjg3NDYsIDEyODc1MCwgMTI4NzU0LCAxMjg3NTgsIDEyODc2MiwgMTI4NzY2LCAxMjg3NzAsIAorICAgIDEyODc3NCwgMTI4Nzc4LCAxMjg3ODIsIDEyODc4NiwgMTI4NzkwLCAxMjg3OTQsIDEyODc5OCwgMTI4ODAyLCAxMjg4MDYsIAorICAgIDEyODgxMCwgMTI4ODE0LCAxMjg4MTgsIDEyODgyMiwgMTI4ODI2LCAxMjg4MzAsIDEyODgzNCwgMTI4ODM4LCAxMjg4NDIsIAorICAgIDEyODg0NiwgMTI4ODUwLCAxMjg4NTQsIDEyODg1OCwgMTI4ODYyLCAxMjg4NjYsIDEyODg3MCwgMTI4ODc0LCAxMjg4NzgsIAorICAgIDEyODg4MiwgMTI4ODg2LCAxMjg4OTAsIDEyODg5NCwgMTI4ODk4LCAxMjg5MDIsIDEyODkwNiwgMTI4OTEwLCAxMjg5MTQsIAorICAgIDEyODkxOCwgMTI4OTIyLCAxMjg5MjYsIDEyODkzMCwgMTI4OTM0LCAxMjg5MzgsIDEyODk0MiwgMTI4OTQ2LCAxMjg5NTAsIAorICAgIDEyODk1NCwgMTI4OTU4LCAxMjg5NjIsIDEyODk2NiwgMTI4OTcwLCAxMjg5NzQsIDEyODk3OCwgMTI4OTgyLCAxMjg5ODYsIAorICAgIDEyODk5MCwgMTI4OTk0LCAxMjg5OTgsIDEyOTAwMiwgMTI5MDA2LCAxMjkwMTAsIDEyOTAxNCwgMTI5MDE4LCAxMjkwMjIsIAorICAgIDEyOTAyNiwgMTI5MDMwLCAxMjkwMzQsIDEyOTAzOCwgMTI5MDQyLCAxMjkwNDYsIDEyOTA1MCwgMTI5MDU0LCAxMjkwNTgsIAorICAgIDEyOTA2MiwgMTI5MDY2LCAxMjkwNzAsIDEyOTA3NCwgMTI5MDc4LCAxMjkwODIsIDEyOTA4NiwgMTI5MDkwLCAxMjkwOTQsIAorICAgIDEyOTA5OCwgMTI5MTAyLCAxMjkxMDYsIDEyOTExMCwgMTI5MTE0LCAxMjkxMTgsIDEyOTEyMiwgMTI5MTI2LCAxMjkxMzAsIAorICAgIDEyOTEzNCwgMTI5MTM4LCAxMjkxNDIsIDEyOTE0NiwgMTI5MTUwLCAxMjkxNTQsIDEyOTE1OCwgMTI5MTYyLCAxMjkxNjYsIAorICAgIDEyOTE3MCwgMTI5MTc0LCAxMjkxNzgsIDEyOTE4MiwgMTI5MTg2LCAxMjkxOTAsIDEyOTE5NCwgMTI5MTk4LCAxMjkyMDIsIAorICAgIDEyOTIwNiwgMTI5MjEwLCAxMjkyMTQsIDEyOTIxOCwgMTI5MjIyLCAxMjkyMjYsIDEyOTIzMCwgMTI5MjM0LCAxMjkyMzgsIAorICAgIDEyOTI0MiwgMTI5MjQ2LCAxMjkyNTAsIDEyOTI1NCwgMTI5MjU4LCAxMjkyNjIsIDEyOTI2NiwgMTI5MjcwLCAxMjkyNzQsIAorICAgIDEyOTI3OCwgMTI5MjgyLCAxMjkyODYsIDEyOTI5MCwgMTI5Mjk0LCAxMjkyOTgsIDEyOTMwMiwgMTI5MzA2LCAxMjkzMTAsIAorICAgIDEyOTMxNCwgMTI5MzE4LCAxMjkzMjIsIDEyOTMyNiwgMTI5MzMwLCAxMjkzMzQsIDEyOTMzOCwgMTI5MzQyLCAxMjkzNDYsIAorICAgIDEyOTM1MCwgMTI5MzU0LCAxMjkzNTgsIDEyOTM2MiwgMTI5MzY2LCAxMjkzNzAsIDEyOTM3NCwgMTI5Mzc4LCAxMjkzODIsIAorICAgIDEyOTM4NiwgMTI5MzkwLCAxMjkzOTQsIDEyOTM5OCwgMTI5NDAyLCAxMjk0MDYsIDEyOTQxMCwgMTI5NDE0LCAxMjk0MTgsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDEyOTQyMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI5NDI2LCAxMjk0MjksIDEyOTQzMywgMTI5NDM3LCAxMjk0NDAsIAorICAgIDEyOTQ0NCwgMTI5NDQ4LCAxMjk0NTEsIDEyOTQ1NCwgMTI5NDU4LCAxMjk0NjIsIDEyOTQ2NSwgMTI5NDY4LCAxMjk0NzEsIAorICAgIDEyOTQ3NCwgMTI5NDc5LCAxMjk0ODIsIDEyOTQ4NiwgMTI5NDg5LCAxMjk0OTIsIDEyOTQ5NSwgMTI5NDk4LCAxMjk1MDEsIAorICAgIDEyOTUwNCwgMTI5NTA3LCAxMjk1MTAsIDEyOTUxMywgMTI5NTE2LCAxMjk1MTksIDEyOTUyMywgMTI5NTI3LCAxMjk1MzEsIAorICAgIDEyOTUzNSwgMTI5NTQwLCAxMjk1NDUsIDEyOTU1MSwgMTI5NTU3LCAxMjk1NjMsIDEyOTU2OCwgMTI5NTc0LCAxMjk1ODAsIAorICAgIDEyOTU4NiwgMTI5NTkxLCAxMjk1OTcsIDEyOTYwMywgMTI5NjA4LCAxMjk2MTMsIDEyOTYxOSwgMTI5NjI0LCAxMjk2MzAsIAorICAgIDEyOTYzNiwgMTI5NjQxLCAxMjk2NDcsIDEyOTY1MywgMTI5NjU4LCAxMjk2NjQsIDEyOTY3MCwgMTI5Njc2LCAxMjk2ODIsIAorICAgIDEyOTY4OCwgMTI5NjkyLCAxMjk2OTcsIDEyOTcwMSwgMTI5NzA2LCAxMjk3MTAsIDEyOTcxNSwgMTI5NzIwLCAxMjk3MjYsIAorICAgIDEyOTczMiwgMTI5NzM4LCAxMjk3NDMsIDEyOTc0OSwgMTI5NzU1LCAxMjk3NjEsIDEyOTc2NiwgMTI5NzcyLCAxMjk3NzgsIAorICAgIDEyOTc4MywgMTI5Nzg4LCAxMjk3OTQsIDEyOTc5OSwgMTI5ODA1LCAxMjk4MTEsIDEyOTgxNiwgMTI5ODIyLCAxMjk4MjgsIAorICAgIDEyOTgzMywgMTI5ODM5LCAxMjk4NDUsIDEyOTg1MSwgMTI5ODU3LCAxMjk4NjMsIDEyOTg2OCwgMTI5ODcyLCAxMjk4NzcsIAorICAgIDEyOTg3OSwgMTI5ODgzLCAxMjk4ODYsIDEyOTg4OSwgMTI5ODkyLCAxMjk4OTUsIDEyOTg5OCwgMTI5OTAxLCAxMjk5MDQsIAorICAgIDEyOTkwNywgMTI5OTEwLCAxMjk5MTMsIDEyOTkxNiwgMTI5OTE5LCAxMjk5MjIsIDEyOTkyNSwgMTI5OTI4LCAxMjk5MzEsIAorICAgIDEyOTkzNCwgMTI5OTM3LCAxMjk5NDAsIDEyOTk0MywgMTI5OTQ2LCAxMjk5NDksIDEyOTk1MiwgMTI5OTU1LCAxMjk5NTgsIAorICAgIDEyOTk2MSwgMTI5OTY0LCAxMjk5NjcsIDEyOTk3MCwgMTI5OTczLCAxMjk5NzYsIDEyOTk3OSwgMTI5OTgyLCAxMjk5ODUsIAorICAgIDEyOTk4OCwgMTI5OTkxLCAxMjk5OTQsIDEyOTk5NywgMTMwMDAwLCAxMzAwMDMsIDEzMDAwNiwgMTMwMDA5LCAxMzAwMTIsIAorICAgIDEzMDAxNSwgMTMwMDE4LCAxMzAwMjEsIDEzMDAyNCwgMTMwMDI3LCAxMzAwMzAsIDEzMDAzMywgMTMwMDM2LCAxMzAwMzksIAorICAgIDEzMDA0MiwgMTMwMDQ1LCAxMzAwNDgsIDEzMDA1MSwgMTMwMDU0LCAxMzAwNTcsIDEzMDA2MCwgMTMwMDYzLCAxMzAwNjYsIAorICAgIDEzMDA2OSwgMTMwMDcyLCAxMzAwNzUsIDEzMDA3OCwgMTMwMDgxLCAxMzAwODQsIDEzMDA4NywgMTMwMDkwLCAxMzAwOTMsIAorICAgIDEzMDA5NiwgMTMwMDk5LCAxMzAxMDIsIDEzMDEwNSwgMTMwMTA4LCAxMzAxMTEsIDEzMDExNCwgMTMwMTE3LCAxMzAxMjAsIAorICAgIDEzMDEyMywgMTMwMTI2LCAxMzAxMjksIDEzMDEzMiwgMTMwMTM1LCAxMzAxMzgsIDEzMDE0MSwgMTMwMTQ0LCAxMzAxNDcsIAorICAgIDEzMDE1MCwgMTMwMTUzLCAxMzAxNTYsIDEzMDE1OSwgMTMwMTYyLCAxMzAxNjUsIDEzMDE2OCwgMTMwMTcxLCAxMzAxNzQsIAorICAgIDEzMDE3NywgMTMwMTgwLCAxMzAxODMsIDEzMDE4NiwgMTMwMTg5LCAxMzAxOTIsIDEzMDE5NSwgMTMwMTk4LCAxMzAyMDEsIAorICAgIDEzMDIwNCwgMTMwMjA3LCAxMzAyMTAsIDEzMDIxMywgMTMwMjE2LCAxMzAyMTksIDEzMDIyMiwgMTMwMjI1LCAxMzAyMjgsIAorICAgIDEzMDIzMSwgMTMwMjM0LCAxMzAyMzcsIDEzMDI0MCwgMTMwMjQzLCAxMzAyNDYsIDEzMDI0OSwgMTMwMjUyLCAxMzAyNTUsIAorICAgIDEzMDI1OCwgMTMwMjYxLCAxMzAyNjQsIDEzMDI2NywgMTMwMjcwLCAxMzAyNzMsIDEzMDI3NiwgMTMwMjc5LCAxMzAyODIsIAorICAgIDEzMDI4NSwgMTMwMjg4LCAxMzAyOTEsIDEzMDI5NCwgMTMwMjk3LCAxMzAzMDAsIDEzMDMwMywgMTMwMzA2LCAxMzAzMDksIAorICAgIDEzMDMxMiwgMTMwMzE1LCAxMzAzMTgsIDEzMDMyMSwgMTMwMzI0LCAxMzAzMjcsIDEzMDMzMCwgMTMwMzMzLCAxMzAzMzYsIAorICAgIDEzMDMzOSwgMTMwMzQyLCAxMzAzNDUsIDEzMDM0OCwgMTMwMzUxLCAxMzAzNTQsIDEzMDM1NywgMTMwMzYwLCAxMzAzNjMsIAorICAgIDEzMDM2NiwgMTMwMzY5LCAxMzAzNzIsIDEzMDM3NSwgMTMwMzc4LCAxMzAzODEsIDEzMDM4NCwgMTMwMzg3LCAxMzAzOTAsIAorICAgIDEzMDM5MywgMTMwMzk2LCAxMzAzOTksIDEzMDQwMiwgMTMwNDA1LCAxMzA0MDgsIDEzMDQxMSwgMTMwNDE0LCAxMzA0MTcsIAorICAgIDEzMDQyMCwgMTMwNDIzLCAxMzA0MjYsIDEzMDQyOSwgMTMwNDMyLCAxMzA0MzUsIDEzMDQzOCwgMTMwNDQxLCAxMzA0NDQsIAorICAgIDEzMDQ0NywgMTMwNDUwLCAxMzA0NTMsIDEzMDQ1NiwgMTMwNDU5LCAxMzA0NjIsIDEzMDQ2NSwgMTMwNDY4LCAxMzA0NzEsIAorICAgIDEzMDQ3NCwgMTMwNDc3LCAxMzA0ODAsIDEzMDQ4MywgMTMwNDg2LCAxMzA0ODksIDEzMDQ5MiwgMTMwNDk1LCAxMzA0OTgsIAorICAgIDEzMDUwMSwgMTMwNTA0LCAxMzA1MDcsIDEzMDUxMCwgMTMwNTEzLCAxMzA1MTYsIDEzMDUxOSwgMTMwNTIyLCAxMzA1MjUsIAorICAgIDEzMDUyOCwgMTMwNTMxLCAxMzA1MzQsIDEzMDUzNywgMTMwNTQwLCAxMzA1NDMsIDEzMDU0NiwgMTMwNTQ5LCAxMzA1NTIsIAorICAgIDEzMDU1NSwgMTMwNTU4LCAxMzA1NjEsIDEzMDU2NCwgMTMwNTY3LCAxMzA1NzAsIDEzMDU3MywgMTMwNTc2LCAxMzA1NzksIAorICAgIDEzMDU4MiwgMTMwNTg1LCAxMzA1ODgsIDEzMDU5MSwgMTMwNTk0LCAxMzA1OTcsIDEzMDYwMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTMwNjAzLCAxMzA2MDUsIDEzMDYwNywgMTMwNjEyLCAxMzA2MTQsIAorICAgIDEzMDYxOSwgMTMwNjIxLCAxMzA2MjYsIDEzMDYyOCwgMTMwNjMzLCAxMzA2MzUsIDEzMDYzNywgMTMwNjM5LCAxMzA2NDEsIAorICAgIDEzMDY0MywgMTMwNjQ1LCAxMzA2NDcsIDEzMDY0OSwgMTMwNjUxLCAxMzA2NTQsIDEzMDY1NywgMTMwNjU5LCAxMzA2NjEsIAorICAgIDEzMDY2NSwgMTMwNjY4LCAxMzA2NzMsIDEzMDY3NSwgMTMwNjc3LCAxMzA2NzksIDEzMDY4MywgMTMwNjg2LCAxMzA2ODgsIAorICAgIDEzMDY5MiwgMTMwNjk0LCAxMzA2OTgsIDEzMDcwMCwgMTMwNzA0LCAxMzA3MDcsIDEzMDcwOSwgMTMwNzEzLCAxMzA3MTcsIAorICAgIDEzMDcxOSwgMTMwNzI1LCAxMzA3MjcsIDEzMDczMiwgMTMwNzM0LCAxMzA3MzksIDEzMDc0MSwgMTMwNzQ2LCAxMzA3NDgsIAorICAgIDEzMDc1MywgMTMwNzU1LCAxMzA3NTgsIDEzMDc2MCwgMTMwNzY0LCAxMzA3NjYsIDEzMDc3MywgMTMwNzc1LCAxMzA3NzcsIAorICAgIDEzMDc3OSwgMTMwNzg0LCAxMzA3ODYsIDEzMDc4OCwgMTMwNzkwLCAxMzA3OTIsIDEzMDc5NCwgMTMwNzk5LCAxMzA4MDMsIAorICAgIDEzMDgwNSwgMTMwODEwLCAxMzA4MTQsIDEzMDgxNiwgMTMwODIxLCAxMzA4MjUsIDEzMDgyNywgMTMwODMyLCAxMzA4MzYsIAorICAgIDEzMDgzOCwgMTMwODQwLCAxMzA4NDIsIDEzMDg0NCwgMTMwODQ4LCAxMzA4NTAsIDEzMDg1NSwgMTMwODU3LCAxMzA4NjMsIAorICAgIDEzMDg2NSwgMTMwODcxLCAxMzA4NzMsIDEzMDg3NSwgMTMwODc3LCAxMzA4ODEsIDEzMDg4MywgMTMwODkwLCAxMzA4OTIsIAorICAgIDEzMDg5OSwgMTMwOTAxLCAxMzA5MDYsIDEzMDkxMSwgMTMwOTEzLCAxMzA5MTksIDEzMDkyNSwgMTMwOTI3LCAxMzA5MzMsIAorICAgIDEzMDkzOCwgMTMwOTQwLCAxMzA5NDYsIDEzMDk1MiwgMTMwOTU0LCAxMzA5NjAsIDEzMDk2NiwgMTMwOTY4LCAxMzA5NzQsIAorICAgIDEzMDk3OCwgMTMwOTgwLCAxMzA5ODUsIDEzMDk4NywgMTMwOTg5LCAxMzA5OTQsIDEzMDk5NiwgMTMwOTk4LCAxMzEwMDQsIAorICAgIDEzMTAwNiwgMTMxMDExLCAxMzEwMTUsIDEzMTAxNywgMTMxMDIyLCAxMzEwMjYsIDEzMTAyOCwgMTMxMDM0LCAxMzEwMzYsIAorICAgIDEzMTA0MCwgMTMxMDQyLCAxMzEwNDYsIDEzMTA0OCwgMTMxMDU1LCAxMzEwNjIsIDEzMTA2NCwgMTMxMDcxLCAxMzEwNzgsIAorICAgIDEzMTA4MCwgMTMxMDg1LCAxMzEwODcsIDEzMTA5NCwgMTMxMDk2LCAxMzExMDEsIDEzMTEwMywgMTMxMTA5LCAxMzExMTEsIAorICAgIDEzMTExNSwgMTMxMTE3LCAxMzExMjMsIDEzMTEyNSwgMTMxMTI5LCAxMzExMzEsIDEzMTEzNywgMTMxMTM5LCAxMzExNDEsIAorICAgIDEzMTE0MywgMTMxMTQ4LCAxMzExNTMsIDEzMTE1NSwgMTMxMTU5LCAxMzExNjYsIDEzMTE3MywgMTMxMTc4LCAxMzExODMsIAorICAgIDEzMTE5NSwgMTMxMTk3LCAxMzExOTksIDEzMTIwMSwgMTMxMjAzLCAxMzEyMDUsIDEzMTIwNywgMTMxMjA5LCAxMzEyMTEsIAorICAgIDEzMTIxMywgMTMxMjE1LCAxMzEyMTcsIDEzMTIxOSwgMTMxMjIxLCAxMzEyMjMsIDEzMTIyNSwgMTMxMjI3LCAxMzEyMjksIAorICAgIDEzMTIzNSwgMTMxMjQyLCAxMzEyNDcsIDEzMTI1MiwgMTMxMjYzLCAxMzEyNjUsIDEzMTI2NywgMTMxMjY5LCAxMzEyNzEsIAorICAgIDEzMTI3MywgMTMxMjc1LCAxMzEyNzcsIDEzMTI3OSwgMTMxMjgxLCAxMzEyODMsIDEzMTI4NSwgMTMxMjg3LCAxMzEyODksIAorICAgIDEzMTI5MSwgMTMxMjkzLCAxMzEyOTUsIDEzMTMwMCwgMTMxMzAyLCAxMzEzMDQsIDEzMTMxNSwgMTMxMzE3LCAxMzEzMTksIAorICAgIDEzMTMyMSwgMTMxMzIzLCAxMzEzMjUsIDEzMTMyNywgMTMxMzI5LCAxMzEzMzEsIDEzMTMzMywgMTMxMzM1LCAxMzEzMzcsIAorICAgIDEzMTMzOSwgMTMxMzQxLCAxMzEzNDMsIDEzMTM0NSwgMTMxMzQ3LCAxMzEzNDksIDEzMTM1MSwgMTMxMzUzLCAxMzEzNTUsIAorICAgIDEzMTM1NywgMTMxMzU5LCAxMzEzNjEsIDEzMTM2MywgMTMxMzY1LCAxMzEzNjcsIDEzMTM2OSwgMTMxMzcxLCAxMzEzNzMsIAorICAgIDEzMTM3NSwgMTMxMzc3LCAxMzEzNzksIDEzMTM4MSwgMTMxMzgzLCAxMzEzODUsIDEzMTM4NywgMTMxMzg5LCAxMzEzOTEsIAorICAgIDEzMTM5MywgMTMxMzk1LCAxMzEzOTcsIDEzMTM5OSwgMTMxNDAxLCAxMzE0MDMsIDEzMTQwNSwgMTMxNDA3LCAxMzE0MDksIAorICAgIDEzMTQxMSwgMTMxNDEzLCAxMzE0MTUsIDEzMTQxNywgMTMxNDE5LCAxMzE0MjEsIDEzMTQyMywgMTMxNDI1LCAxMzE0MjcsIAorICAgIDEzMTQyOSwgMTMxNDMxLCAxMzE0MzMsIDEzMTQzNSwgMTMxNDM3LCAxMzE0MzksIDEzMTQ0MSwgMTMxNDQzLCAxMzE0NDUsIAorICAgIDEzMTQ0NywgMTMxNDQ5LCAxMzE0NTEsIDEzMTQ1MywgMTMxNDU1LCAxMzE0NTcsIDEzMTQ1OSwgMTMxNDYxLCAxMzE0NjMsIAorICAgIDEzMTQ2NSwgMTMxNDY3LCAxMzE0NjksIDEzMTQ3MSwgMTMxNDczLCAxMzE0NzUsIDEzMTQ3NywgMTMxNDc5LCAxMzE0ODEsIAorICAgIDEzMTQ4MywgMTMxNDg1LCAxMzE0ODcsIDEzMTQ4OSwgMTMxNDkxLCAxMzE0OTMsIDEzMTQ5NSwgMTMxNDk3LCAxMzE0OTksIAorICAgIDEzMTUwMSwgMTMxNTAzLCAxMzE1MDUsIDEzMTUwNywgMTMxNTA5LCAxMzE1MTEsIDEzMTUxMywgMTMxNTE1LCAxMzE1MTcsIAorICAgIDEzMTUxOSwgMTMxNTIxLCAxMzE1MjMsIDEzMTUyNSwgMTMxNTI3LCAxMzE1MjksIDEzMTUzMSwgMTMxNTMzLCAxMzE1MzUsIAorICAgIDEzMTUzNywgMTMxNTM5LCAxMzE1NDEsIDEzMTU0MywgMTMxNTQ1LCAxMzE1NDcsIDEzMTU0OSwgMTMxNTUxLCAxMzE1NTMsIAorICAgIDEzMTU1NSwgMTMxNTU3LCAxMzE1NTksIDEzMTU2MSwgMTMxNTYzLCAxMzE1NjUsIDEzMTU2NywgMTMxNTY5LCAxMzE1NzEsIAorICAgIDEzMTU3MywgMTMxNTc1LCAxMzE1NzcsIDEzMTU3OSwgMTMxNTgxLCAxMzE1ODMsIDEzMTU4NSwgMTMxNTg3LCAxMzE1ODksIAorICAgIDEzMTU5MSwgMTMxNTkzLCAxMzE1OTUsIDEzMTU5NywgMTMxNTk5LCAxMzE2MDEsIDEzMTYwMywgMTMxNjA1LCAxMzE2MDcsIAorICAgIDEzMTYwOSwgMTMxNjExLCAxMzE2MTMsIDEzMTYxNSwgMTMxNjE3LCAxMzE2MTksIDEzMTYyMSwgMTMxNjIzLCAxMzE2MjUsIAorICAgIDEzMTYyNywgMTMxNjI5LCAxMzE2MzEsIDEzMTYzMywgMTMxNjM1LCAxMzE2MzcsIDEzMTYzOSwgMTMxNjQxLCAxMzE2NDMsIAorICAgIDEzMTY0NSwgMTMxNjQ3LCAxMzE2NDksIDEzMTY1MSwgMTMxNjUzLCAxMzE2NTUsIDEzMTY1NywgMTMxNjU5LCAxMzE2NjEsIAorICAgIDEzMTY2MywgMTMxNjY1LCAxMzE2NjcsIDEzMTY2OSwgMTMxNjcxLCAxMzE2NzMsIDEzMTY3NSwgMTMxNjc3LCAxMzE2NzksIAorICAgIDEzMTY4MSwgMTMxNjgzLCAxMzE2ODUsIDEzMTY4NywgMTMxNjg5LCAxMzE2OTEsIDEzMTY5MywgMTMxNjk1LCAxMzE2OTcsIAorICAgIDEzMTY5OSwgMTMxNzAxLCAxMzE3MDMsIDEzMTcwNSwgMTMxNzA3LCAxMzE3MDksIDEzMTcxMSwgMTMxNzEzLCAxMzE3MTUsIAorICAgIDEzMTcxNywgMTMxNzE5LCAxMzE3MjEsIDEzMTcyMywgMTMxNzI1LCAxMzE3MjcsIDEzMTcyOSwgMTMxNzMxLCAxMzE3MzMsIAorICAgIDEzMTczNSwgMTMxNzM3LCAxMzE3MzksIDEzMTc0MSwgMTMxNzQzLCAxMzE3NDUsIDEzMTc0NywgMTMxNzQ5LCAxMzE3NTEsIAorICAgIDEzMTc1MywgMTMxNzU1LCAxMzE3NTcsIDEzMTc1OSwgMTMxNzYxLCAxMzE3NjMsIDEzMTc2NSwgMTMxNzY3LCAxMzE3NjksIAorICAgIDEzMTc3MSwgMTMxNzczLCAxMzE3NzUsIDEzMTc3NywgMTMxNzc5LCAxMzE3ODEsIDEzMTc4MywgMTMxNzg1LCAxMzE3ODcsIAorICAgIDEzMTc4OSwgMTMxNzkxLCAxMzE3OTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDEzMTc5NSwgMTMxODA1LCAxMzE4MTUsIDEzMTgyNCwgMTMxODMzLCAxMzE4NDYsIDEzMTg1OSwgMTMxODcxLCAxMzE4ODMsIAorICAgIDEzMTg5MywgMTMxOTAzLCAxMzE5MTMsIDEzMTkyMywgMTMxOTM0LCAxMzE5NDUsIDEzMTk1NSwgMTMxOTY0LCAxMzE5NzMsIAorICAgIDEzMTk4MiwgMTMxOTk1LCAxMzIwMDgsIDEzMjAyMCwgMTMyMDMyLCAxMzIwNDIsIDEzMjA1MiwgMTMyMDYyLCAxMzIwNzIsIAorICAgIDEzMjA4MSwgMTMyMDkwLCAxMzIwOTksIDEzMjEwOCwgMTMyMTE3LCAxMzIxMjYsIDEzMjEzNSwgMTMyMTQ0LCAxMzIxNTMsIAorICAgIDEzMjE2MiwgMTMyMTcxLCAxMzIxODAsIDEzMjE5MSwgMTMyMjAxLCAxMzIyMTEsIDEzMjIyNCwgMTMyMjM0LCAxMzIyNDcsIAorICAgIDEzMjI1NCwgMTMyMjY0LCAxMzIyNzEsIDEzMjI3OCwgMTMyMjg1LCAxMzIyOTIsIDEzMjI5OSwgMTMyMzA2LCAxMzIzMTUsIAorICAgIDEzMjMyNCwgMTMyMzMzLCAxMzIzNDIsIDEzMjM1MSwgMTMyMzYwLCAxMzIzNjksIDEzMjM3OCwgMTMyMzg2LCAxMzIzOTQsIAorICAgIDEzMjQwMSwgMTMyNDExLCAxMzI0MjAsIDEzMjQyOCwgMTMyNDM1LCAxMzI0NDUsIDEzMjQ1NCwgMTMyNDU4LCAxMzI0NjIsIAorICAgIDEzMjQ2NiwgMTMyNDcwLCAxMzI0NzQsIDEzMjQ3OCwgMTMyNDgyLCAxMzI0ODYsIDEzMjQ5MCwgMTMyNDk0LCAxMzI0OTcsIAorICAgIDEzMjUwMSwgMTMyNTA0LCAxMzI1MDcsIDEzMjUxMSwgMTMyNTE1LCAxMzI1MTksIDEzMjUyMywgMTMyNTI3LCAxMzI1MzEsIAorICAgIDEzMjUzNSwgMTMyNTM5LCAxMzI1NDMsIDEzMjU0NywgMTMyNTUxLCAxMzI1NTUsIDEzMjU1OSwgMTMyNTYzLCAxMzI1NjcsIAorICAgIDEzMjU3MSwgMTMyNTc1LCAxMzI1NzksIDEzMjU4MywgMTMyNTg3LCAxMzI1OTEsIDEzMjU5NSwgMTMyNTk5LCAxMzI2MDMsIAorICAgIDEzMjYwNywgMTMyNjExLCAxMzI2MTUsIDEzMjYxOSwgMTMyNjIzLCAxMzI2MjcsIDEzMjYzMSwgMTMyNjM1LCAxMzI2MzksIAorICAgIDEzMjY0MywgMTMyNjQ3LCAxMzI2NTEsIDEzMjY1NSwgMTMyNjU5LCAxMzI2NjMsIDEzMjY2NywgMTMyNjcxLCAxMzI2NzUsIAorICAgIDEzMjY3OSwgMTMyNjgzLCAxMzI2ODcsIDEzMjY5MSwgMTMyNjk1LCAxMzI2OTksIDEzMjcwMywgMTMyNzA3LCAxMzI3MTEsIAorICAgIDEzMjcxNSwgMTMyNzE5LCAxMzI3MjMsIDEzMjcyNywgMTMyNzMxLCAxMzI3MzUsIDEzMjczOSwgMTMyNzQzLCAxMzI3NDcsIAorICAgIDEzMjc1MSwgMTMyNzU1LCAxMzI3NTksIDEzMjc2MywgMTMyNzY3LCAxMzI3NzEsIDEzMjc3NSwgMTMyNzc5LCAxMzI3ODMsIAorICAgIDEzMjc4NywgMTMyNzkxLCAxMzI3OTUsIDEzMjc5OSwgMTMyODAzLCAxMzI4MDcsIDEzMjgxMSwgMTMyODE1LCAxMzI4MTksIAorICAgIDEzMjgyMywgMTMyODI3LCAxMzI4MzEsIDEzMjgzNSwgMTMyODM5LCAxMzI4NDMsIDEzMjg0NywgMTMyODUwLCAxMzI4NTQsIAorICAgIDEzMjg1OCwgMTMyODYyLCAxMzI4NjYsIDEzMjg3MCwgMTMyODc0LCAxMzI4NzgsIDEzMjg4MiwgMTMyODg2LCAxMzI4OTAsIAorICAgIDEzMjg5NCwgMTMyODk4LCAxMzI5MDIsIDEzMjkwNiwgMTMyOTEwLCAxMzI5MTQsIDEzMjkxOCwgMTMyOTIyLCAxMzI5MjYsIAorICAgIDEzMjkzMCwgMTMyOTM0LCAxMzI5MzgsIDEzMjk0MiwgMTMyOTQ2LCAxMzI5NTAsIDEzMjk1NCwgMTMyOTU4LCAxMzI5NjIsIAorICAgIDEzMjk2NiwgMTMyOTcwLCAxMzI5NzQsIDEzMjk3OCwgMTMyOTgyLCAxMzI5ODYsIDEzMjk5MCwgMTMyOTk0LCAxMzI5OTgsIAorICAgIDEzMzAwMiwgMTMzMDA2LCAxMzMwMTAsIDEzMzAxNCwgMTMzMDE4LCAxMzMwMjIsIDEzMzAyNiwgMTMzMDMwLCAxMzMwMzQsIAorICAgIDEzMzAzOCwgMTMzMDQyLCAxMzMwNDYsIDEzMzA1MCwgMTMzMDU0LCAxMzMwNTgsIDEzMzA2MiwgMTMzMDY2LCAxMzMwNzAsIAorICAgIDEzMzA3NCwgMTMzMDc4LCAxMzMwODIsIDEzMzA4NiwgMTMzMDkwLCAxMzMwOTQsIDEzMzA5OCwgMTMzMTAyLCAxMzMxMDYsIAorICAgIDEzMzExMCwgMTMzMTE0LCAxMzMxMTgsIDEzMzEyMiwgMTMzMTI2LCAxMzMxMzAsIDEzMzEzNCwgMTMzMTM4LCAxMzMxNDIsIAorICAgIDEzMzE0NiwgMTMzMTUwLCAxMzMxNTQsIDEzMzE1OCwgMTMzMTYyLCAxMzMxNjYsIDEzMzE3MCwgMTMzMTc0LCAxMzMxNzgsIAorICAgIDEzMzE4MiwgMTMzMTg2LCAxMzMxOTAsIDEzMzE5NCwgMTMzMTk4LCAxMzMyMDIsIDEzMzIwNiwgMTMzMjEwLCAxMzMyMTQsIAorICAgIDEzMzIxOCwgMTMzMjIyLCAxMzMyMjYsIDEzMzIzMCwgMTMzMjM0LCAxMzMyMzgsIDEzMzI0MiwgMTMzMjQ2LCAxMzMyNTAsIAorICAgIDEzMzI1NCwgMTMzMjU4LCAxMzMyNjIsIDEzMzI2NiwgMTMzMjcwLCAxMzMyNzQsIDEzMzI3OCwgMTMzMjgyLCAxMzMyODYsIAorICAgIDEzMzI5MCwgMTMzMjk0LCAxMzMyOTgsIDEzMzMwMiwgMTMzMzA2LCAxMzMzMTAsIDEzMzMxNCwgMTMzMzE4LCAxMzMzMjIsIAorICAgIDEzMzMyNiwgMTMzMzMwLCAxMzMzMzQsIDEzMzMzOCwgMTMzMzQyLCAxMzMzNDYsIDEzMzM1MCwgMTMzMzU0LCAxMzMzNTgsIAorICAgIDEzMzM2MiwgMTMzMzY2LCAxMzMzNzAsIDEzMzM3NCwgMTMzMzc4LCAxMzMzODIsIDEzMzM4NiwgMTMzMzkwLCAxMzMzOTQsIAorICAgIDEzMzM5OCwgMTMzNDAyLCAxMzM0MDYsIDEzMzQxMCwgMTMzNDE0LCAxMzM0MTgsIDEzMzQyMiwgMTMzNDI2LCAxMzM0MzAsIAorICAgIDEzMzQzNCwgMTMzNDM4LCAxMzM0NDIsIDEzMzQ0NiwgMTMzNDUwLCAxMzM0NTQsIDEzMzQ1OCwgMTMzNDYyLCAxMzM0NjYsIAorICAgIDEzMzQ3MCwgMTMzNDc0LCAxMzM0NzgsIDEzMzQ4MiwgMTMzNDg2LCAxMzM0OTAsIDEzMzQ5NCwgMTMzNDk4LCAxMzM1MDIsIAorICAgIDEzMzUwNiwgMTMzNTEwLCAxMzM1MTQsIDEzMzUxOCwgMTMzNTIyLCAxMzM1MjYsIDEzMzUzMCwgMTMzNTM0LCAxMzM1MzgsIAorICAgIDEzMzU0MiwgMTMzNTQ2LCAxMzM1NTAsIDEzMzU1NCwgMTMzNTU4LCAxMzM1NjIsIDEzMzU2NiwgMTMzNTcwLCAxMzM1NzQsIAorICAgIDEzMzU3OCwgMTMzNTgyLCAxMzM1ODYsIDEzMzU5MCwgMTMzNTk0LCAxMzM1OTgsIDEzMzYwMiwgMTMzNjA2LCAxMzM2MTAsIAorICAgIDEzMzYxNCwgMTMzNjE5LCAxMzM2MjQsIDEzMzYyOSwgMTMzNjMzLCAxMzM2MzksIDEzMzY0NiwgMTMzNjUzLCAxMzM2NjAsIAorICAgIDEzMzY2NywgMTMzNjc0LCAxMzM2ODEsIDEzMzY4OCwgMTMzNjk1LCAxMzM3MDIsIDEzMzcwOSwgMTMzNzE2LCAxMzM3MjMsIAorICAgIDEzMzczMCwgMTMzNzM2LCAxMzM3NDMsIDEzMzc1MCwgMTMzNzU2LCAxMzM3NjMsIDEzMzc3MCwgMTMzNzc3LCAxMzM3ODQsIAorICAgIDEzMzc5MSwgMTMzNzk4LCAxMzM4MDUsIDEzMzgxMiwgMTMzODE5LCAxMzM4MjYsIDEzMzgzMywgMTMzODQwLCAxMzM4NDcsIAorICAgIDEzMzg1MywgMTMzODU5LCAxMzM4NjYsIDEzMzg3MywgMTMzODgyLCAxMzM4OTEsIDEzMzkwMCwgMTMzOTA5LCAxMzM5MTQsIAorICAgIDEzMzkxOSwgMTMzOTI1LCAxMzM5MzEsIDEzMzkzNywgMTMzOTQzLCAxMzM5NDksIDEzMzk1NSwgMTMzOTYxLCAxMzM5NjcsIAorICAgIDEzMzk3MywgMTMzOTc5LCAxMzM5ODUsIDEzMzk5MSwgMTMzOTk2LCAxMzQwMDIsIDEzNDAxMiwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiB9OwogCiAvKiBuYW1lLT5jb2RlIGRpY3Rpb25hcnkgKi8KIHN0YXRpYyB1bnNpZ25lZCBpbnQgY29kZV9oYXNoW10gPSB7CiAgICAgNzQyMjQsIDQ4NTEsIDAsIDc4MTU2LCA3ODQ5OSwgMTI4Njg1LCA3OTI5LCAwLCAxOTQ2ODIsIDEyNzc2NiwgNzg1MDAsIAotICAgIDY2NDgwLCAwLCA0MjgzMywgNzQ1MjksIDEyMDY0LCAwLCA1OTYsIDAsIDEyODEwMywgMTMxOTIsIDg2NTEsIDAsIDAsIAorICAgIDY2NDgwLCAwLCA0MjgzMywgNzQ1MjksIDEyMDY0LCAwLCA1OTYsIDk4MzgxMiwgNjk4NTAsIDEzMTkyLCA4NjUxLCAwLCAwLCAKICAgICAxMjAyMTgsIDEyOTk1LCA2NDg2NSwgMTM3MywgMCwgMCwgNTgxNiwgMTE5MDY3LCA2NDgxMCwgNDIzMSwgNjgyNSwgNDI4OTcsIAogICAgIDQyMzMsIDQyMzQsIDQyMzIsIDkxNzgzNiwgNzQ0MTUsIDEyMDIxMCwgNjM4NCwgOTE3ODQwLCA3ODEwOCwgODg1MSwgMCwgCi0gICAgMTI4NTUzLCAwLCA0MTYwMSwgODg3NCwgMCwgNzc0OCwgMCwgMCwgMCwgMTI3OTM5LCA0MTYwMywgOTc4NCwgMCwgOTE4OCwgCi0gICAgNDE2MDAsIDAsIDEyMDYxOCwgMTI4MzQzLCAxNDU3LCAzNTM1LCAwLCAwLCAwLCAwLCA2NTI0MCwgMTE5NTEsIDAsIDM0MDQsIAotICAgIDAsIDAsIDAsIDE3NTksIDAsIDQxMDc2LCA2ODM4MywgMTIwNTcyLCAxMTkyMDUsIDY2NTc3LCAwLCAxMjc3NjQsIDY1ODU5LCAKLSAgICAwLCA3NDA0LCAwLCAwLCAwLCAwLCA2NTkwOCwgOTgzNCwgMzA1NSwgOTg1MiwgMCwgNjUyODgsIDAsIDExMzk4LCAwLCAKLSAgICA5MjQxNywgMTE5MjU1LCAwLCAwLCA2MDMsIDc0Mzk4LCA0MzU0OCwgMCwgMCwgOTE3ODI0LCAzMzUwLCAxMjA4MTcsIAotICAgIDY0MzE4LCA5MTc4MjgsIDEyNzA4OSwgMzM5MCwgNzQ0ODMsIDQzMjY1LCAxMjA1OTksIDkxNzgzMCwgNzg1NzMsIDAsIAotICAgIDE5MTksIDM0MDAsIDEyMDY1MSwgMTI3OTQ0LCAxMTY0NywgOTE3NTQwLCA2NjQ0NiwgNjQxNDEsIDg1NjIsIDIxMjEsIAotICAgIDY0MTM4LCA0MDQzLCA4NzEyLCA2NDEzNCwgNjQxMzMsIDExMjk3LCAwLCAwLCAxMTk2NiwgNjQxMjgsIDEyODU4NywgMCwgMCwgCi0gICAgNjQxMzIsIDEwODY3LCA2NDEzMCwgNjQxMjksIDAsIDQzMzc0LCA5Nzc5LCAyNzY0LCA2NjAwMiwgMTAxNjcsIDk0NzEsIDAsIAotICAgIDY2MDIxLCAwLCAwLCA1NDU3LCA1NDQwLCA4ODU3LCAxMjg3NzEsIDY1MjgyLCAyODQzLCA1MzU1LCAxMjc5MjgsIDAsIDAsIAotICAgIDUxOTQsIDExNjU3LCA0Mzk4NCwgMTI4MjkyLCAwLCAwLCAwLCAwLCAxMjcwMjcsIDEwNzE3LCA2NDU3MCwgNTYzMCwgCi0gICAgNzQzNTAsIDY0MTQzLCAxMDY4MiwgMCwgMTA2MDIsIDgwMCwgNDI0OTksIDY2MTg2LCAwLCAwLCA2NDkzMCwgMTE2MzEsIAotICAgIDY0MTQ2LCA2NDE0NSwgNjQxNDQsIDc2MiwgMTMxNzIsIDExODg1OSwgMTk0NjYxLCA2NDQ2OCwgMTA5MDYsIDEzNTMsIAotICAgIDY5NjAsIDAsIDAsIDU4MjgsIDg3MjQsIDkxNzgwNiwgODkzMywgMTYwMSwgNDIyNDQsIDg1OCwgNzA4MCwgNjQxMDksIAotICAgIDY0MTA4LCA4MDkwLCAwLCA3NDQwMSwgOTE3ODExLCA1ODcsIDAsIDEyODEzMSwgMCwgMCwgMCwgNzgyMTQsIDI3NTAsIAotICAgIDc0MjE4LCA1NTYsIDY0MTU4LCA2NDE1NywgMCwgMTIyMTMsIDE5NDY3OCwgMjc2MCwgMCwgMCwgMCwgMTk0Nzk0LCA2NDE1NiwgCi0gICAgNjQxNTUsIDQyNDk2LCAwLCA2NDE1MSwgNjQxNTAsIDEyNjc5LCAxMDA1MywgMTA0MjEsIDExMDkzLCA2NDE1MywgNjQxNTIsIAotICAgIDAsIDAsIDQ4MzksIDAsIDAsIDE4NzQsIDExOTAxNiwgMCwgNjU3NywgNjQxMjUsIDY0MTI0LCA2NDEyMywgMCwgMTI3NTMxLCAKLSAgICA5MjUzNCwgNzAwNywgNzU5MCwgNjU0NDMsIDkwMzYsIDkyNTUwLCA2NDEyMiwgNzQ0MjIsIDY2NjA5LCAwLCA2NDExNywgCi0gICAgNjQxMTYsIDYyODcsIDY0MTE0LCAyNzI1LCA2NDEyMCwgNjQxMTksIDQzOTgxLCA0MjEyOCwgMTI3ODQyLCAxMTc3LCAKLSAgICA2NTYwMSwgMTIzMjIsIDY0MTA2LCA2OTY0MCwgMTI3MzA2LCA2NDEwMiwgNzg1OSwgMTk0NSwgNjQwOTksIDAsIDEwNDUzLCAKLSAgICA2NDEwNCwgNzE4OCwgNzk5NywgMCwgNzM4OSwgMCwgODcwNSwgNjQwOTcsIDY0MDk2LCA5NTcxLCA1MjgsIDEyODY3MSwgCi0gICAgNDQwMTcsIDExNDI5LCAwLCAwLCAwLCA5MTc5OTAsIDczODQxLCAwLCAwLCA5MDU2LCA2NDMxMywgNjE4OCwgMTIwMDE5LCAKLSAgICA2MTU1LCA2NDA2OCwgMTgyMywgNjQwNjYsIDY0MDY1LCA2NDA3MiwgNjQwNzEsIDYzLCA3MjMzLCA5MjIxMiwgMCwgNDE5MDQsIAotICAgIDY2MzksIDY0MDY0LCAwLCAxMjgzNDQsIDAsIDExNzYsIDExODk1OSwgMTI3OTMwLCA4MTYyLCAxMjg2NjcsIDAsIDAsIAotICAgIDEyMDUxOSwgNjYzNzYsIDY2MjQyLCAxMTQxNSwgNDMzMywgOTg1NSwgNjQxMTIsIDY0NjQyLCAwLCA1Mzg4LCAwLCAwLCAwLCAKLSAgICA3NzE0LCA2NjIyMiwgMCwgNzc2OCwgMCwgNDE5OSwgNjQ3MDgsIDAsIDAsIDAsIDg3MDgsIDk1NjAsIDY0MDc3LCA2NDA3NiwgCi0gICAgODk5NiwgNDk5MiwgNDQ3MSwgNDI2MjIsIDY0MDc5LCA2NDA3OCwgOTIxNzksIDAsIDAsIDAsIDY0NjE1LCA0MTkxNSwgMCwgCi0gICAgMTIwNzUsIDkyMjExLCAwLCA1MTc0LCAwLCAwLCAxMjc1NTcsIDMxMjMsIDAsIDEyNjg1LCAxMjc5MDQsIDg0MDgsIDY0NzA0LCAKLSAgICAwLCAwLCA5MjIzLCAwLCA0MTYxNiwgMCwgNzM3OTcsIDAsIDExMTYsIDEyODIwNCwgNDMwNDksIDcxMzYsIDQzMDUwLCAKLSAgICA4NTQ4LCAxMjA0ODUsIDAsIDExOTA2MSwgOTE3OTk5LCAwLCAxMzExNSwgNDM2NzUsIDY0MDkxLCA5MzIyLCAwLCAxMjA1OTUsIAotICAgIDY0MDk1LCA2NDA5NCwgODExMSwgNjYyNDcsIDQyMzMyLCA2NDA4OSwgNjQwODgsIDYxOTksIDAsIDAsIDExNDM0LCA2NDA4MywgCi0gICAgNjQwODIsIDExMzI5LCA3NzM3LCA2NDA4NywgNjQwODYsIDY0MDg1LCA2NDA4NCwgMTk0ODE3LCA5OTI3LCA0MTMzNSwgCi0gICAgNDExOCwgMTc5NywgMCwgNDEzMzQsIDAsIDQ2LCA0MzQ0OCwgMTI3ODgxLCAyOTgsIDAsIDEyODExNCwgMCwgNDI2MjcsIDAsIAotICAgIDMyLCA2MTg3LCAxMTkwNTIsIDExNDk1LCAxMTQ1OSwgMzY2NSwgMCwgNDI4NzEsIDAsIDE5OTIzLCA3NDMzNSwgMCwgCi0gICAgMTI3MTkyLCA2NjIzOSwgNDIyNjQsIDY0NDAzLCA0NDEyLCA3MjQwLCA5MjQ5NSwgMCwgMCwgNjU3NTgsIDEyNzUwLCA0MTgxLCAKLSAgICA4NTQ0LCAwLCAxMjAxOTksIDkxNzg5NywgMTIwMTk4LCA2OTgwOSwgNjE4MSwgNjUwMTQsIDAsIDAsIDAsIDM2MzksIAotICAgIDExOTU4OCwgMCwgMCwgMTE4OTA0LCAxMDA3MywgMTIwMjA2LCAxMjg4NjIsIDEyNzE4NiwgNjg0MDksIDQyODQ0LCA3NDk4LCAKLSAgICAxMDk4LCA5MjU2NSwgMTIwMjA1LCAwLCAwLCAxMDIwNywgODc4OSwgMCwgMCwgMCwgMCwgOTIzNCwgMCwgNjE4MiwgMCwgCi0gICAgNjUwNTgsIDAsIDAsIDAsIDAsIDU0NzEsIDk0NjEsIDU1NzMsIDExODkzNiwgNTQ3MywgNDQsIDAsIDY2MjQ0LCAxMTg5MDcsIAotICAgIDAsIDY2MjM4LCAxMjg0NCwgMCwgMTYyMiwgNzc2NywgMTkwMCwgNDEzMzksIDExNDU4LCAwLCAwLCA2NTgxLCA1NTc2LCAwLCAKLSAgICA2NDQwNSwgNDEzMzcsIDAsIDQxNjMxLCA4OTQ3LCA2ODM5MCwgMTI3ODQ0LCA0MTY5NCwgMCwgMCwgNzkwOCwgMCwgMTA0MDgsIAotICAgIDY1NzksIDAsIDY0NjE4LCAwLCAxMjAxNDcsIDIxMzgsIDY1ODMsIDc3NjEsIDEyNzAxMCwgMTIwNTA0LCAxOTQ4MjgsIDAsIAotICAgIDUwNTgsIDQxMDEwLCA5OTkyLCAxMjgyOTksIDUwNTcsIDAsIDAsIDc0NTM4LCA1MDU0LCAxMTg5NTEsIDE5NDk3MSwgCi0gICAgNzg2MDYsIDAsIDE0MzcsIDQxNjE3LCA2NTgsIDM0OTcsIDEyODUwOSwgNzQ4NiwgNTA2MSwgNTA2MCwgNDIzNSwgMCwgMCwgCi0gICAgMCwgMTIxMTMsIDQyMzYsIDQ3MjcsIDAsIDAsIDc2OTMsIDEwNzQ5LCAwLCA3NDg4LCA1NzczLCA5NzgsIDEyODEzNCwgMCwgCi0gICAgNDE2MTksIDEwMjM5LCA2ODYxMSwgMCwgNjYyMDksIDAsIDEyODcwMCwgOTc0OCwgMCwgMTI3NTI0LCAwLCAwLCAwLCAwLCAKLSAgICAxOTUwODMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkzNDEsIDExOTU5NiwgMjM3OSwgMTEzMjUsIDAsIDY0NjY4LCA2Nzg1NCwgCi0gICAgODEyNSwgMTIwNTQ1LCA2NzQzLCAxMTkxNzUsIDkxNzk0MCwgMjM2OSwgMCwgMCwgMCwgMTE5MjM1LCA3NDA5MiwgNzM5MzYsIAotICAgIDcwMDgsIDQzNjYwLCAwLCAwLCAwLCAyMzY3LCAxMjc4MjcsIDAsIDI2NCwgMjM3NSwgODA2MCwgNjE5NCwgMTE5ODU4LCAKLSAgICAxODQ0LCAxMTkwODQsIDAsIDYwMTksIDAsIDAsIDY5NjEsIDAsIDExODgzOSwgMCwgODgwMCwgMCwgNDI4NjIsIDQ0NjMsIAotICAgIDY1NTgxLCA2MTkyLCAxOTQ2NzYsIDQyNzcxLCAwLCA5MjMzMywgNzI1LCA2NTA0MiwgMTE4Nzk3LCAxMjA4MDAsIDAsIAotICAgIDEyODkyLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjcyNjEsIDEyMDcwNywgMCwgMCwgNTA3NCwgNTA3MywgMTI4NzkwLCA4OTgzLCAKLSAgICAxMTg5ODEsIDc0NDkzLCAwLCA1MDcyLCAxMjgwNzEsIDYxOTgsIDExNjE0LCAwLCAxOTYsIDAsIDAsIDAsIDQ5MjksIAotICAgIDEyMDM0MiwgMCwgMCwgMCwgMCwgNDI4NDcsIDAsIDAsIDAsIDQ5MzQsIDAsIDQxMzIzLCA5NzU4LCAwLCA5MjI4OSwgCi0gICAgMTI3OTE3LCA0MjU4NCwgMCwgNDMyOSwgNDEzMjEsIDQ5NzksIDMwNDgsIDc3NTIsIDQxMzIwLCAwLCA3NDQxOCwgMTI4MTksIAotICAgIDAsIDUwNzEsIDAsIDM2NDIsIDAsIDUwNzAsIDEwMDQyLCAxMTg4MzUsIDM5ODcsIDUwNjgsIDAsIDg5MDksIDc4NjUwLCAKLSAgICA3ODY0OSwgMCwgMTA2MzYsIDczOTgxLCAxMTgwNiwgNDMxNjcsIDQ1MzEsIDEyNDUsIDkxMDUsIDY2NDYzLCA0OTIxLCAKLSAgICAxMjAyMTksIDQ5MjYsIDY1NTQ0LCA3Mzg4NCwgMTk0NjE5LCAwLCAwLCA2NDcwOSwgMCwgMTk0NjIwLCA3ODg4MCwgNDkyMiwgCi0gICAgMzI1LCA5OTIsIDExOTU2OCwgNDkyNSwgMCwgMCwgOTUyNiwgNDkyMCwgMCwgOTQ4LCAwLCAxMjAyMDgsIDQ5MzAsIDAsIAotICAgIDkyMTc1LCAxMjAyNzUsIDQ5MzMsIDAsIDAsIDExODk4NSwgNDkyOCwgMCwgMCwgNzQ3NzAsIDEyMDE5NCwgMCwgNzIyLCAKLSAgICAxOTQ5MzQsIDE5OTA4LCAxMjYzNywgMTI3NDg1LCAxMTk4NTUsIDg3NTMsIDE1MDksIDAsIDU0NjgsIDk1MTEsIDEyNzQ3NCwgCi0gICAgMTI3NDc3LCAxNjcyLCA2MjA1LCAxMDg2NCwgNzQ1ODYsIDEyNzQ4MCwgOTIzMTAsIDEyNzQ2NiwgNzg1NTUsIDEyNzQ2OCwgCi0gICAgNzM4NjMsIDEyNzQ3MCwgMTI3NDczLCA0MTYwNywgMTIwMTE1LCAxNjc5LCAxMjAxMTYsIDEyMDE4MCwgMTIwMTEzLCAKLSAgICAxMjc0NjIsIDcwMDUsIDQxNjA5LCA5NTgwLCAwLCA0MDEsIDAsIDQzNzc5LCA2OTY4LCA1NzYxLCAzNDIsIDg1NTMsIDAsIAotICAgIDgxNDMsIDEyNzExNSwgMTE5ODMsIDkyMjQ5LCA2MjQsIDc0NTA4LCA0MDU3LCA0Mzc4OCwgNTA3OCwgNzQyNTgsIDEyNDc4LCAKLSAgICAwLCA1MDc2LCAwLCAxOTQ2MDksIDAsIDEyMDA5NywgNjg1LCA5MDI1LCAxNTI0LCAxMjYxOCwgMCwgNTUzOSwgMCwgOTI1MjMsIAotICAgIDEyMDEwMiwgNzEzOCwgMTIwNTUyLCAwLCAxOTQ2MTEsIDc4NzUyLCAwLCAxMjUyMCwgODA1OCwgOTczMiwgMCwgNTA4MCwgCi0gICAgNjQ3NzUsIDUwMzYsIDUwMzUsIDEyMDU5MCwgNDI2MDQsIDAsIDAsIDgwNzQsIDI3NSwgMTMyOTEsIDE5MDcsIDc4ODM4LCAKKyAgICAxMjg1NTMsIDAsIDQxNjAxLCA4ODc0LCA5ODM3NzQsIDc3NDgsIDAsIDAsIDAsIDEyNzkzOSwgNDE2MDMsIDk3ODQsIDAsIAorICAgIDkxODgsIDQxNjAwLCAwLCAxMjA2MTgsIDEyODM0MywgMTQ1NywgMzUzNSwgMCwgMCwgMCwgMCwgNjUyNDAsIDExOTUxLCAwLCAKKyAgICAzNDA0LCAwLCAwLCAwLCAxNzU5LCAwLCA0MTA3NiwgNjgzODMsIDEyMDU3MiwgMTE5MjA1LCA2NjU3NywgOTQwMTQsIAorICAgIDEyNzc2NCwgNjU4NTksIDAsIDc0MDQsIDAsIDAsIDAsIDAsIDY1OTA4LCA5ODM0LCAzMDU1LCA5ODUyLCA5ODM4NTEsIAorICAgIDY1Mjg4LCAwLCAxMTM5OCwgMCwgOTI0MTcsIDExOTI1NSwgMCwgMCwgNjAzLCA3NDM5OCwgNDM1NDgsIDAsIDAsIDkxNzgyNCwgCisgICAgMzM1MCwgMTIwODE3LCA2NDMxOCwgOTE3ODI4LCAxMjcwODksIDMzOTAsIDc0NDgzLCA0MzI2NSwgMTIwNTk5LCA5MTc4MzAsIAorICAgIDc4NTczLCAwLCAxOTE5LCAzNDAwLCAxMjA2NTEsIDEyNzk0NCwgMTE2NDcsIDkxNzU0MCwgNjY0NDYsIDY0MTQxLCA4NTYyLCAKKyAgICAyMTIxLCA2NDEzOCwgNDA0MywgODcxMiwgNjQxMzQsIDY0MTMzLCAxMTI5NywgOTgzNjc5LCA5ODMxNTIsIDExOTY2LCAKKyAgICA2NDEyOCwgMTI4NTg3LCAwLCAwLCA2NDEzMiwgMTA4NjcsIDY0MTMwLCA2NDEyOSwgOTgzODM1LCA0MzM3NCwgOTc3OSwgCisgICAgMjc2NCwgNjYwMDIsIDEwMTY3LCA5NDcxLCAwLCA2NjAyMSwgMCwgMCwgNTQ1NywgNTQ0MCwgODg1NywgOTM5ODEsIDY1MjgyLCAKKyAgICAyODQzLCA1MzU1LCAxMjc5MjgsIDk4Mzk1NiwgMCwgNTE5NCwgMTE2NTcsIDQzOTg0LCAxMjgyOTIsIDAsIDk4MzYyMCwgMCwgCisgICAgMCwgMTI3MDI3LCAxMDcxNywgNjQ1NzAsIDU2MzAsIDUzOTYsIDY0MTQzLCAxMDY4MiwgMCwgMTA2MDIsIDgwMCwgNDI0OTksIAorICAgIDY2MTg2LCAwLCAwLCA2NDkzMCwgMTE2MzEsIDY0MTQ2LCA2NDE0NSwgNjQxNDQsIDc2MiwgMTMxNzIsIDExODg1OSwgCisgICAgMTk0NjYxLCA2NDQ2OCwgMTA5MDYsIDEzNTMsIDY5NjAsIDAsIDAsIDU4MjgsIDg3MjQsIDkxNzgwNiwgODkzMywgMTYwMSwgCisgICAgNDIyNDQsIDg1OCwgNzA4MCwgNjQxMDksIDY0MTA4LCA4MDkwLCAwLCA3NDQwMSwgOTE3ODExLCA1ODcsIDAsIDEyODEzMSwgCisgICAgMCwgMCwgMCwgNzgyMTQsIDI3NTAsIDc0MjE4LCA1NTYsIDY0MTU4LCA2NDE1NywgOTgzOTQwLCAxMjIxMywgMTk0Njc4LCAKKyAgICAyNzYwLCAwLCAwLCAwLCAxOTQ3OTQsIDY0MTU2LCA2NDE1NSwgNDI0OTYsIDAsIDY0MTUxLCA2NDE1MCwgMTI2NzksIAorICAgIDEwMDUzLCAxMDQyMSwgMTEwOTMsIDY0MTUzLCA2NDE1MiwgMCwgMCwgNDgzOSwgMCwgMCwgMTg3NCwgMTE5MDE2LCAwLCAKKyAgICA2NTc3LCA2NDEyNSwgNjQxMjQsIDY0MTIzLCAwLCAxMjc1MzEsIDkyNTM0LCA3MDA3LCA3NTkwLCA2NTQ0MywgOTAzNiwgCisgICAgOTI1NTAsIDY0MTIyLCA3NDQyMiwgNjY2MDksIDAsIDY0MTE3LCA2NDExNiwgNjI4NywgNjQxMTQsIDI3MjUsIDY0MTIwLCAKKyAgICA2NDExOSwgNDM5ODEsIDQyMTI4LCAxMjc4NDIsIDExNzcsIDY1NjAxLCAxMjMyMiwgNjQxMDYsIDY5NjQwLCAxMjczMDYsIAorICAgIDY0MTAyLCA3ODU5LCAxOTQ1LCA2NDA5OSwgMCwgMTA0NTMsIDY0MTA0LCA3MTg4LCA3OTk3LCAwLCA3Mzg5LCA5ODMxNjEsIAorICAgIDg3MDUsIDY0MDk3LCA2NDA5NiwgOTU3MSwgNTI4LCAxMjg2NzEsIDQ0MDE3LCAxMTQyOSwgNzEzNDcsIDAsIDk4MzA3NywgCisgICAgOTE3OTkwLCA3Mzg0MSwgMCwgMCwgOTA1NiwgNjQzMTMsIDYxODgsIDEyMDAxOSwgNjE1NSwgNjQwNjgsIDE4MjMsIDY0MDY2LCAKKyAgICA2NDA2NSwgNjQwNzIsIDY0MDcxLCA2MywgNzIzMywgOTIyMTIsIDAsIDQxOTA0LCA2NjM5LCA2NDA2NCwgOTgzNzY2LCAKKyAgICAxMjgzNDQsIDAsIDExNzYsIDExODk1OSwgMTI3OTMwLCA4MTYyLCAxMjg2NjcsIDk4MzgyMiwgMCwgMTIwNTE5LCA2NjM3NiwgCisgICAgNjYyNDIsIDExNDE1LCA0MzMzLCA5ODU1LCA2NDExMiwgNjQ2NDIsIDAsIDUzODgsIDAsIDAsIDAsIDc3MTQsIDY2MjIyLCAKKyAgICA2OTkwMiwgNzc2OCwgMCwgNDE5OSwgNjQ3MDgsIDk4MzQxMywgMCwgMCwgODcwOCwgOTU2MCwgNjQwNzcsIDY0MDc2LCAKKyAgICA4OTk2LCA0OTkyLCA0NDcxLCA0MjYyMiwgNjQwNzksIDY0MDc4LCA5MjE3OSwgMCwgMTI2NTcwLCAwLCA2NDYxNSwgNDE5MTUsIAorICAgIDAsIDEyMDc1LCA3MDA2MiwgMCwgNTE3NCwgOTgzMjE1LCAwLCAxMjc1NTcsIDMxMjMsIDAsIDEyNjg1LCAxMjc5MDQsIAorICAgIDg0MDgsIDY0NzA0LCAwLCAwLCA5MjIzLCAwLCA0MTYxNiwgNjc5OTksIDczNzk3LCAwLCAxMTE2LCAxMjgyMDQsIDQzMDQ5LCAKKyAgICA3MTM2LCA0MzA1MCwgODU0OCwgMTIwNDg1LCAwLCAxMTkwNjEsIDkxNzk5OSwgMCwgMTMxMTUsIDQzNjc1LCA2NDA5MSwgCisgICAgOTMyMiwgMCwgMTIwNTk1LCA2NDA5NSwgNjQwOTQsIDgxMTEsIDY2MjQ3LCA0MjMzMiwgNjQwODksIDY0MDg4LCA2MTk5LCAwLCAKKyAgICAwLCAxMTQzNCwgNjQwODMsIDY0MDgyLCAxMTMyOSwgNzczNywgNjQwODcsIDY0MDg2LCA2NDA4NSwgNjQwODQsIDE5NDgxNywgCisgICAgOTkyNywgNDEzMzUsIDQxMTgsIDE3OTcsIDAsIDQxMzM0LCAwLCA0NiwgNDM0NDgsIDEyNzg4MSwgMjk4LCAwLCAxMjgxMTQsIAorICAgIDAsIDQyNjI3LCAwLCAzMiwgNjE4NywgMTE5MDUyLCAxMTQ5NSwgMTE0NTksIDM2NjUsIDk4MzYwMCwgNDI4NzEsIDAsIAorICAgIDE5OTIzLCA3NDMzNSwgMCwgMTI3MTkyLCA2NjIzOSwgNDIyNjQsIDY0NDAzLCA0NDEyLCA3MjQwLCA5MjQ5NSwgMCwgCisgICAgOTgzNDU4LCA2NTc1OCwgMTI3NTAsIDQxODEsIDg1NDQsIDAsIDEyMDE5OSwgOTE3ODk3LCAxMjAxOTgsIDY5ODA5LCA2MTgxLCAKKyAgICA2NTAxNCwgMCwgMCwgOTgzMTk2LCAzNjM5LCAxMTk1ODgsIDAsIDAsIDExODkwNCwgMTAwNzMsIDEyMDIwNiwgMTI4ODYyLCAKKyAgICAxMjcxODYsIDY4NDA5LCA0Mjg0NCwgNzQ5OCwgMTA5OCwgOTI1NjUsIDEyMDIwNSwgMCwgOTgzMTE4LCAxMDIwNywgODc4OSwgCisgICAgOTgzMjIzLCAwLCAwLCA5ODM0NjQsIDkyMzQsIDAsIDYxODIsIDk4MzQ2NiwgNjUwNTgsIDAsIDk4MzQ3MCwgOTgzNDY3LCAwLCAKKyAgICA1NDcxLCA5NDYxLCA1NTczLCAxMTg5MzYsIDU0NzMsIDQ0LCAwLCA2NjI0NCwgOTQwNzIsIDAsIDY2MjM4LCAxMjg0NCwgMCwgCisgICAgMTYyMiwgNzc2NywgMTkwMCwgNDEzMzksIDExNDU4LCAwLCAwLCA2NTgxLCA1NTc2LCAwLCA2NDQwNSwgNDEzMzcsIDAsIAorICAgIDQxNjMxLCA4OTQ3LCA2ODM5MCwgMTI3ODQ0LCA0MTY5NCwgMCwgMCwgNzkwOCwgMCwgMTA0MDgsIDY1NzksIDAsIDY0NjE4LCAKKyAgICAwLCAxMjAxNDcsIDIxMzgsIDY1ODMsIDc3NjEsIDEyNzAxMCwgMTIwNTA0LCAxOTQ4MjgsIDAsIDUwNTgsIDQxMDEwLCAKKyAgICA5OTkyLCAxMjgyOTksIDUwNTcsIDAsIDAsIDc0NTM4LCA1MDU0LCAxMTg5NTEsIDE5NDk3MSwgNzg2MDYsIDAsIDE0MzcsIAorICAgIDQxNjE3LCA2NTgsIDM0OTcsIDEyODUwOSwgNzQ4NiwgNTA2MSwgNTA2MCwgNDIzNSwgMTI3ODc4LCAwLCAxMjg1MjksIAorICAgIDEyMTEzLCA0MjM2LCA0NzI3LCAwLCAwLCA3NjkzLCAxMDc0OSwgMCwgNzQ4OCwgNTc3MywgOTc4LCAxMjgxMzQsIDAsIAorICAgIDQxNjE5LCAxMDIzOSwgNjg2MTEsIDAsIDY2MjA5LCAwLCAxMjg3MDAsIDk3NDgsIDk4Mzk0NywgMTI3NTI0LCAwLCAwLCAwLCAKKyAgICAwLCAxOTUwODMsIDAsIDk4MzgzNCwgMCwgMCwgMCwgMCwgMCwgOTM0MSwgMTE5NTk2LCAyMzc5LCAxMTMyNSwgMCwgNjQ2NjgsIAorICAgIDY3ODU0LCA4MTI1LCAxMjA1NDUsIDY3NDMsIDExOTE3NSwgOTE3OTQwLCAyMzY5LCAwLCA5ODM5NjMsIDk4Mzk2NCwgCisgICAgMTE5MjM1LCA3NDA5MiwgNzM5MzYsIDcwMDgsIDQzNjYwLCAwLCAwLCAwLCAyMzY3LCAxMjc4MjcsIDk4Mzg0OCwgMjY0LCAKKyAgICAyMzc1LCA4MDYwLCA2MTk0LCAxMTk4NTgsIDE4NDQsIDExOTA4NCwgMCwgNjAxOSwgMCwgMCwgNjk2MSwgMCwgMTE4ODM5LCAKKyAgICAwLCA4ODAwLCAwLCA0Mjg2MiwgNDQ2MywgNjU1ODEsIDYxOTIsIDE5NDY3NiwgNDI3NzEsIDAsIDkyMzMzLCA3MjUsIAorICAgIDY1MDQyLCAxMTg3OTcsIDEyMDgwMCwgOTgzMDQwLCAxMjg5MiwgMCwgMCwgMCwgMCwgMCwgMCwgMTI3MjYxLCAxMjA3MDcsIAorICAgIDk4MzEyOCwgMCwgNTA3NCwgNTA3MywgMTI4NzkwLCA4OTgzLCAxMTg5ODEsIDc0NDkzLCA5ODM1NjEsIDUwNzIsIDkzOTc3LCAKKyAgICA2MTk4LCAxMTYxNCwgMCwgMTk2LCAwLCAwLCAwLCA0OTI5LCAxMjAzNDIsIDAsIDAsIDAsIDAsIDQyODQ3LCAwLCAwLCAwLCAKKyAgICA0OTM0LCAwLCA0MTMyMywgOTc1OCwgMCwgOTIyODksIDEyNzkxNywgNDI1ODQsIDAsIDQzMjksIDQxMzIxLCA0OTc5LCAKKyAgICAzMDQ4LCA3NzUyLCA0MTMyMCwgOTgzMDQyLCA3NDQxOCwgMTI4MTksIDAsIDUwNzEsIDAsIDM2NDIsIDAsIDUwNzAsIAorICAgIDEwMDQyLCAxMTg4MzUsIDM5ODcsIDUwNjgsIDAsIDg5MDksIDc4NjUwLCA3ODY0OSwgNjk5MTcsIDEwNjM2LCA3Mzk4MSwgCisgICAgMTE4MDYsIDQzMTY3LCA0NTMxLCAxMjQ1LCA5MTA1LCA2NjQ2MywgNDkyMSwgMTIwMjE5LCA0OTI2LCA2NTU0NCwgNzM4ODQsIAorICAgIDE5NDYxOSwgMCwgMCwgNjQ3MDksIDAsIDE5NDYyMCwgNzg4ODAsIDQ5MjIsIDMyNSwgOTkyLCAxMTk1NjgsIDQ5MjUsIDAsIAorICAgIDAsIDk1MjYsIDQ5MjAsIDAsIDk0OCwgMCwgMTIwMjA4LCA0OTMwLCAwLCA5MjE3NSwgMTIwMjc1LCA0OTMzLCAxMjAyMTEsIAorICAgIDAsIDExODk4NSwgNDkyOCwgMCwgMCwgNzQ3NzAsIDEyMDE5NCwgMTI2NTQ4LCA3MjIsIDE5NDkzNCwgMTk5MDgsIDEyNjM3LCAKKyAgICAxMjc0ODUsIDExOTg1NSwgODc1MywgMTUwOSwgMCwgNTQ2OCwgOTUxMSwgMTI3NDc0LCAxMjc0NzcsIDE2NzIsIDYyMDUsIAorICAgIDEwODY0LCA3NDU4NiwgMTI3NDgwLCA3MDEwMywgMTI3NDY2LCA3ODU1NSwgMTI3NDY4LCA3Mzg2MywgMTI2NTc3LCAKKyAgICAxMjY1MDMsIDQxNjA3LCAxMjAxMTUsIDE2NzksIDEyMDExNiwgMTIwMTgwLCAxMjAxMTMsIDEyNzQ2MiwgNzAwNSwgNDE2MDksIAorICAgIDk1ODAsIDAsIDQwMSwgNjk5NDksIDQzNzc5LCA2OTY4LCA1NzYxLCAzNDIsIDg1NTMsIDAsIDgxNDMsIDEyNzExNSwgCisgICAgMTE5ODMsIDkyMjQ5LCA2MjQsIDc0NTA4LCA0MDU3LCA0Mzc4OCwgNTA3OCwgNzQyNTgsIDEyNDc4LCAwLCA1MDc2LCAwLCAKKyAgICAxOTQ2MDksIDAsIDEyMDA5NywgNjg1LCA5MDI1LCAxNTI0LCAxMjYxOCwgMCwgNTUzOSwgMCwgOTI1MjMsIDEyMDEwMiwgCisgICAgNzEzOCwgMTIwNTUyLCAwLCAxOTQ2MTEsIDc4NzUyLCAwLCAxMjUyMCwgODA1OCwgOTczMiwgMCwgNTA4MCwgNjQ3NzUsIAorICAgIDUwMzYsIDUwMzUsIDEyMDU5MCwgNDI2MDQsIDk4MzY0NywgMCwgODA3NCwgMjc1LCAxMzI5MSwgMTkwNywgNzg4MzgsIAogICAgIDQ0MzIsIDEyNzI3MSwgNTAzMywgMTI3MjczLCAxMjcyNzIsIDQ4MzYsIDM4ODgsIDczNzkyLCAxMDcyOSwgNjQ1NDYsIAogICAgIDEyNzI2MiwgNDM3MDQsIDEyNzI2NCwgMTI3MjUxLCA2NzU4OCwgMTE5MDAwLCAxMjcyNTIsIDEyNzI1NSwgODg1OCwgNjQwOSwgCiAgICAgMTI3MjU2LCAxMjAyNTIsIDEyODEwMCwgMCwgMCwgNjYzMjEsIDAsIDEyODE0LCAxMjcyNDgsIDM0MzIsIDEwMjE4LCAwLCAKLSAgICA2MDk0LCA3NjQxLCA0MjQ0NSwgMCwgOTI0ODcsIDQyNDA2LCAxNjc2LCA3NDMyMCwgMTk0NjA3LCAwLCA1MDMwLCAwLCAwLCAKLSAgICAwLCA3Mzg2OSwgOTYyMiwgMCwgMCwgNjc4NywgMCwgMCwgMCwgMCwgMTA1NDQsIDEyOTE5LCAwLCA5MjIxOCwgMCwgMCwgMCwgCi0gICAgMTIwNzg5LCAwLCA5NDcsIDExOTgzNSwgMTk0NTg2LCAxOTQ1ODUsIDEwOTY5LCAxMTk5MzUsIDc2MTMsIDkyNTYyLCAKLSAgICAxMTk5MzYsIDQ3OTUsIDExOTkzMCwgNzAxOCwgNzM3NiwgMTIwMTgxLCAxMjAxOTIsIDEyMDI2OCwgMCwgNDM1NjcsIAotICAgIDc0MDU2LCA5MTc5MTAsIDExODk2MywgMTE5OTE5LCA3MjE2LCA2NTIzMiwgNzIxNywgMjUxLCA3MjE4LCA3ODk1LCA0Mzk1LCAKLSAgICA0MzUzOCwgMTE5OTI2LCAxMTk5MjksIDExOTkyOCwgNzIxMywgMTE5OTIyLCA3MjE0LCA3MjE1LCAwLCA3NDE0MSwgODg4MCwgCi0gICAgNzY4NSwgNjY0NTksIDEyMDE3MywgNjU1NDAsIDExOTYxOCwgNjI1LCA4MTg3LCA0Mjg2MSwgMTExMywgNzIzNiwgNzkxNSwgCi0gICAgMzYzMCwgMTIwMTc2LCA4MTc5LCA3NDI2NCwgNjc4ODYsIDkzMTYsIDEwOTgwLCAyNDg5LCA2NTYyNCwgODE1MCwgMTM1OSwgCi0gICAgNjc2NTIsIDEyNzMyOSwgMTI3MzMwLCA3Mzc1NiwgNTA0MiwgNTA0MSwgNDI3NjksIDEyMDg0LCAxMjczMjQsIDEyNzMyMSwgCi0gICAgOTIyNzksIDEyNzMxOSwgMTI3MzIwLCAxMjczMTcsIDEyNzMxOCwgMTI3MzE1LCAxMjI4MywgMTYxNiwgMzc5NSwgMCwgCi0gICAgODc5NSwgNjYyNDUsIDAsIDAsIDAsIDExMzgsIDczOTA1LCAxMjY3NywgMCwgMCwgMzIzOSwgMTI3MzExLCAwLCAwLCA4NDMxLCAKLSAgICAwLCA0MjE2NCwgMCwgMTE3NzgsIDEyNjIwLCA2ODI2LCA3Mzc3MywgMTE5MDczLCA1MDQwLCAwLCAwLCAwLCA3ODQyMCwgMCwgCi0gICAgNTAzOSwgMCwgNzg0MTgsIDAsIDUwMzgsIDAsIDAsIDEzMTg0LCA3NDI5MywgMCwgNjQ2NDgsIDAsIDkzNTksIDc4NDE2LCAwLCAKLSAgICAxMjg3NzAsIDY1MTU3LCA2NjYyLCAwLCAwLCAzODYzLCA3MzkwOSwgNDgzNSwgNTUyNjYsIDQzNDMyLCAxMjc4MjIsIDQzMDksIAotICAgIDcxMjcsIDE5NDU2OSwgMCwgMTk0NTY4LCAxMzAxLCAwLCA0MjU4OSwgNTY5LCAwLCA3MzgxMywgNzExLCA0Mzg5LCA3MTMzLCAKLSAgICAwLCA3Mzg4MCwgMTE2MTAsIDExMzY4LCAwLCAxOTQ1NzAsIDQxMzMxLCAxMDA2LCA3NDI0MCwgMCwgMTU1MCwgODIwMSwgCi0gICAgNzM3MzcsIDc2MjcsIDU0OTksIDUwMzEsIDc3OTA4LCA0MjczOCwgNjU3ODQsIDc3OTA3LCA2NTI2NywgMzc1OCwgMCwgCi0gICAgNjU3ODEsIDY0NzM0LCAwLCAyNDQwLCA2NTc4MCwgNzc5MTMsIDg0NDksIDAsIDUwMDgsIDAsIDIxMTgsIDAsIDEyMTIxLCAKLSAgICA4MjU1LCA1NTEyLCA3Mzg3NSwgMjEyOCwgMjEzMCwgMjEzMSwgMjEyNiwgMjEzMywgMTExOSwgMTI3MDY4LCAyMTE0LCAKLSAgICAyMTE2LCAyNDU1LCAwLCAyMTIyLCAyMTIzLCAyMTI0LCAyMTI1LCAwLCA4NzE0LCAwLCAyMTEzLCAwLCAyMTE1LCAxMjgxNzcsIAotICAgIDEyNzkwNywgNDM3MTMsIDUwNTIsIDY2MjIwLCA1ODIxLCA2MTg2LCA2NTc3OCwgNjU3NzUsIDUwNTEsIDY1NzczLCAxNDI5LCAKLSAgICA0MjY0NywgNTA1MCwgMzAyLCAzODgsIDQxMTE1LCA3MzUsIDY2MzcsIDU5MDcsIDY1MDg4LCAwLCAxMjcyNiwgNzQ1OTQsIAotICAgIDkxMTcsIDAsIDEyMDAzLCA1NTEzLCA2NjY2LCA1MDUzLCA3NDIzMCwgNTUxMCwgNzg0NTEsIDAsIDc4NDQ3LCAyNDcwLCAKKyAgICA2MDk0LCA3NjQxLCA0MjQ0NSwgMCwgOTI0ODcsIDQyNDA2LCAxNjc2LCA3NDMyMCwgMTk0NjA3LCA5ODMxNzcsIDUwMzAsIDAsIAorICAgIDAsIDAsIDczODY5LCA5NjIyLCAwLCA2OTk0NCwgNjc4NywgMCwgMCwgMCwgOTgzNTgzLCAxMDU0NCwgMTI5MTksIDAsIAorICAgIDkyMjE4LCAwLCAwLCA2OTkwNiwgMTIwNzg5LCAwLCA5NDcsIDExOTgzNSwgMTk0NTg2LCAxOTQ1ODUsIDEwOTY5LCAKKyAgICAxMTk5MzUsIDc2MTMsIDkyNTYyLCAxMTk5MzYsIDQ3OTUsIDExOTkzMCwgNzAxOCwgNzM3NiwgMTIwMTgxLCAxMjAxOTIsIAorICAgIDEyMDI2OCwgMCwgNDM1NjcsIDc0MDU2LCA5MTc5MTAsIDExODMzLCAxMTk5MTksIDcyMTYsIDY1MjMyLCA3MjE3LCAyNTEsIAorICAgIDcyMTgsIDc4OTUsIDQzOTUsIDQzNTM4LCAxMTk5MjYsIDExOTkyOSwgMTE5OTI4LCA3MjEzLCAxMTk5MjIsIDcyMTQsIAorICAgIDcyMTUsIDk4MzgyNywgNzQxNDEsIDg4ODAsIDc2ODUsIDY2NDU5LCAxMjAxNzMsIDY1NTQwLCAxMTk2MTgsIDYyNSwgODE4NywgCisgICAgNDI4NjEsIDExMTMsIDcyMzYsIDc5MTUsIDM2MzAsIDEyMDE3NiwgODE3OSwgNzQyNjQsIDY3ODg2LCA5MzE2LCAxMDk4MCwgCisgICAgMjQ4OSwgNjU2MjQsIDgxNTAsIDEzNTksIDY3NjUyLCAxMjczMjksIDEyNzMzMCwgNzM3NTYsIDUwNDIsIDUwNDEsIDQyNzY5LCAKKyAgICAxMjA4NCwgMTI3MzI0LCAxMjczMjEsIDkyMjc5LCAxMjczMTksIDEyNzMyMCwgMTI3MzE3LCAxMjczMTgsIDEyNzMxNSwgCisgICAgMTIyODMsIDE2MTYsIDM3OTUsIDAsIDg3OTUsIDY2MjQ1LCAwLCAwLCAwLCAxMTM4LCA3MzkwNSwgMTI2NzcsIDAsIDAsIAorICAgIDMyMzksIDEyNzMxMSwgMCwgMCwgODQzMSwgMCwgNDIxNjQsIDAsIDExNzc4LCAxMjYyMCwgNjgyNiwgNzM3NzMsIDExOTA3MywgCisgICAgNTA0MCwgMCwgMCwgOTgzNDM1LCA3ODQyMCwgMCwgNTAzOSwgMCwgNzg0MTgsIDAsIDUwMzgsIDAsIDAsIDEzMTg0LCAKKyAgICA3NDI5MywgMCwgNjQ2NDgsIDAsIDkzNTksIDc4NDE2LCAwLCAxMjg3NzAsIDY1MTU3LCA2NjYyLCAwLCAwLCAzODYzLCAKKyAgICA3MzkwOSwgNDgzNSwgNTUyNjYsIDQzNDMyLCAxMjc4MjIsIDQzMDksIDcxMjcsIDE5NDU2OSwgMCwgMTk0NTY4LCAxMzAxLCAKKyAgICAwLCA0MjU4OSwgNTY5LCAwLCA3MzgxMywgNzExLCA0Mzg5LCA3MTMzLCAwLCA3Mzg4MCwgMTE2MTAsIDExMzY4LCAwLCAKKyAgICAxOTQ1NzAsIDQxMzMxLCAxMDA2LCA3NDI0MCwgMCwgMTU1MCwgODIwMSwgNzM3MzcsIDc2MjcsIDU0OTksIDUwMzEsIAorICAgIDc3OTA4LCA0MjczOCwgNjU3ODQsIDc3OTA3LCA2NTI2NywgMzc1OCwgMCwgNjU3ODEsIDY0NzM0LCA3MDA3MywgMjQ0MCwgCisgICAgNjU3ODAsIDc3OTEzLCA4NDQ5LCAwLCA1MDA4LCA5ODM1NzIsIDIxMTgsIDAsIDEyMTIxLCA4MjU1LCA1NTEyLCA3Mzg3NSwgCisgICAgMjEyOCwgMjEzMCwgMjEzMSwgMjEyNiwgMjEzMywgMTExOSwgMTI3MDY4LCAyMTE0LCAyMTE2LCAyNDU1LCAwLCAyMTIyLCAKKyAgICAyMTIzLCAyMTI0LCAyMTI1LCAxMjc0ODYsIDg3MTQsIDk4MzgxMSwgMjExMywgMCwgMjExNSwgMTI4MTc3LCAxMjc5MDcsIAorICAgIDQzNzEzLCA1MDUyLCA2NjIyMCwgNTgyMSwgNjE4NiwgNjU3NzgsIDY1Nzc1LCA1MDUxLCA2NTc3MywgMTQyOSwgNDI2NDcsIAorICAgIDUwNTAsIDMwMiwgMzg4LCA0MTExNSwgNzM1LCA2NjM3LCA1OTA3LCA2NTA4OCwgMCwgMTI3MjYsIDc0NTk0LCA5MTE3LCAKKyAgICA5ODMxODEsIDEyMDAzLCA1NTEzLCA2NjY2LCA1MDUzLCA3NDIzMCwgNTUxMCwgNzg0NTEsIDAsIDc4NDQ3LCAyNDcwLCAKICAgICA3ODQzNywgMCwgMTkyNSwgMCwgOTIyMzcsIDc0ODA3LCAwLCA1MDQ4LCA1MDQ3LCAwLCAwLCAwLCA5MjMxMywgMCwgNzQ0OTcsIAotICAgIDkyMzk1LCA4MDg5LCA2OTI5LCA2MzksIDAsIDY4MTc5LCA2NDQ0MiwgMCwgOTIzNDgsIDQ1OTksIDQxNDAyLCA2Njc0LCAKLSAgICA0MzM5NywgNDMyOTQsIDE0NzYsIDY0OCwgMCwgNjU4MTksIDMyMzMsIDAsIDQxNzgyLCA2OTUxLCAwLCAwLCAzNTMwLCAKLSAgICA5NzUwLCAxMjgzMTcsIDAsIDY2NTYsIDkyMzY3LCAwLCA1MDQ2LCA4NTEyLCA2NTg1NiwgNzQyNjEsIDg5NjcsIDAsIDUwNDUsIAotICAgIDAsIDE5MTYsIDc5ODYsIDUwNDQsIDEyMDU1NiwgOTAwNiwgMTMxMjgsIDUwNDMsIDAsIDc4NTMsIDc0MDY4LCA3NDAwNCwgCi0gICAgOTY2OSwgMTIzNDEsIDEyNzAzLCA4NDAyLCAwLCAxMTkwNzAsIDkxNzYwMCwgNDE3NTAsIDM1ODYsIDY0NTA4LCA0MzE0OCwgCi0gICAgMCwgMCwgMTE5NjA2LCAwLCAxMzI5NiwgNTE3LCAwLCAxMjg1MzQsIDE5NDk0NiwgNDE1MjgsIDEyMywgNjU0NTQsIDAsIDAsIAotICAgIDc0NDc4LCAxMDUzMSwgNzc4NCwgNDE1MjYsIDEwODI5LCA3Mzk5MSwgODA1NywgMTEyNiwgNzM4OTUsIDAsIDE5NDU5MSwgMCwgCi0gICAgMzkyNSwgNDI1MSwgODA2OSwgMTA1MTcsIDEyMDQzOSwgNDg5LCAwLCA0MjUwLCAxMjA0NDEsIDEyMDQ1MiwgNDMxNTEsIDAsIAotICAgIDE5NDg1MSwgNjYyMDAsIDAsIDAsIDAsIDc4NDIzLCAwLCAwLCA4NzExLCA2MTgzLCAwLCAwLCAwLCAxMjA0NDgsIDc2MjMsIAotICAgIDExODkyNSwgMTk0ODUzLCA5MjM1LCAxMjc2MCwgNzQxNzYsIDY5NjYyLCA2NjQ0NSwgNDM1NDAsIDEwMDYyLCAzNzQzLCAKLSAgICAxMTUxNCwgMTEwNzgsIDAsIDEyMTM2LCAwLCAwLCAxMjA0MzUsIDAsIDc3MjYsIDAsIDE5OTIyLCAyNjcsIDMzOTMsIAotICAgIDQyMTk4LCAxMzcxLCAxOTQ4NDksIDY5MjMzLCAyNDU4LCAwLCA2MjAxLCAwLCA0MTA3NCwgNDI2NiwgMTA2NTIsIDQxNjEyLCAKLSAgICA0MTA3NywgMzQwMiwgOTA1MCwgMzM5OCwgMCwgMCwgMCwgMzM5MSwgNDEwNzUsIDI0NzYsIDAsIDEyODAxNywgMCwgMTA2MjUsIAotICAgIDAsIDEyNzY3LCAxMzAxNywgNzg3NDMsIDY0MjYxLCA2NDkzNCwgMTI3NTM3LCAxMzAxNCwgMTMwMTMsIDAsIDY2NzMsIDAsIAotICAgIDAsIDAsIDEyNDM4LCAwLCAwLCAwLCAwLCAwLCA5MDUzLCAxMzAxNSwgNzQ1MjMsIDAsIDcwNCwgNjYyMTUsIDYxOTUsIDAsIAotICAgIDY2NjAsIDc4NzU4LCA5MTc3NjAsIDkxNzc5MywgNDIyMTIsIDEyNjI5LCAxMTQzNSwgMCwgNTUyNTYsIDY1NTM4LCAwLCAKLSAgICAxMjc5NDAsIDAsIDc0NTQ3LCAwLCA2NTQ0OCwgNzgxMDAsIDEyOTQ4LCAxMTkwMDEsIDE5NTAwMiwgMTE5MjM4LCAxOTUwMDQsIAotICAgIDc4MDk5LCAxMjcwODUsIDAsIDAsIDQyODcsIDgyNzYsIDQ5MDIsIDExMzEsIDAsIDc4NDU4LCA2NjcyOCwgMTgxNiwgMCwgCi0gICAgNDI1MzMsIDE2OCwgNDI4NDUsIDQ4OTgsIDY0Mjk4LCAwLCAwLCA0OTAxLCAxODIxLCAwLCA1NzgsIDM2NTMsIDAsIDc5MSwgCi0gICAgOTE2MiwgNjk3NywgMCwgMTE5Mjk4LCA3NDU2MSwgMCwgNzM3MzEsIDgzNTQsIDQzNTkwLCAxMTkzMDMsIDAsIDc1NTcsIAotICAgIDExOTMzOSwgMTE5MzAxLCA4MjM0LCA3MjQxLCAwLCAxOTQ5OTQsIDExOTE2NywgMTk0OTk2LCAxMjgxMSwgNjU5MjUsIAotICAgIDM5NDYsIDc4MDc4LCAxMDk5OCwgNzgwODAsIDY3MywgMTk0ODY3LCA2NDM5NywgMTI4Mjc2LCA3NDU5OSwgNzg0NDksIAotICAgIDg4OTAsIDE5NDk3NywgMTk0OTc2LCAyNDQ4LCA3ODA4NSwgMTAyNjcsIDg0MjQsIDI0NTIsIDc4MDgzLCAxOTQ4NjQsIAotICAgIDg3MjksIDc4NDU2LCAwLCA3ODQ1LCA5MTc5MTcsIDc4NjkyLCA0NDA4LCA0MTIyLCA2NzcyLCAxMTAzOSwgODcyMywgCi0gICAgMTk0OTkwLCAxMjc4MzMsIDExOTMwMiwgNzMxLCAxMTkzMDQsIDkyMjg2LCAyNDM4LCA2NDg1NSwgMTE5MzAwLCAxMTkyOTksIAotICAgIDExNzUsIDAsIDQyMTM1LCAzNzMsIDExOTE3MiwgMjExOSwgMTE0NTcsIDExNTIxLCA3NzIzLCAwLCAwLCAwLCA0MTk1MiwgMCwgCi0gICAgNTI3MywgMjEyNywgNTI2OSwgNjMzNywgNTIwMiwgMjQwNCwgNTI2NywgNDI4MjMsIDExMjkxLCAxOTkxNSwgNTI3NywgCi0gICAgMTI5NjMsIDEyNzg2NCwgNjE4OSwgNDEyNSwgMTMxNCwgMTIxMzMsIDAsIDExODg3MywgMTI3MSwgMCwgMCwgNjYwMjQsIAotICAgIDQxNDgyLCAzODY0LCA3NDUzOSwgMCwgMzg3OSwgMCwgMTI5NzgsIDQxNjYsIDQ1NzQsIDAsIDc1NjcsIDc0NTksIDAsIAotICAgIDQxMzkwLCA1Mzg0LCA0MTg4MiwgNjc2NDcsIDkyNTQ4LCA1NzU5LCAwLCAwLCA0MTM4OCwgOTIzNjIsIDQxMzkyLCA2NDI4OCwgCi0gICAgNDEzODcsIDAsIDg3MDYsIDU1NTIsIDAsIDcwMCwgMCwgNTU1MywgMCwgNzA4OCwgNTM1NiwgNzQ5OSwgNzgxMTAsIDY2NTk2LCAKLSAgICAwLCAwLCAxMDI2MywgNTU1NCwgMCwgMTIzNDQsIDEwMzExLCA3ODExMywgNjY2NSwgMCwgMCwgNzYxOCwgODUxNywgMTE0NTUsIAotICAgIDc4NDQwLCA2NDYzMiwgNjQ0NDcsIDU1NTUsIDc4MDg4LCA3ODA5MywgNzgwOTEsIDAsIDQyODAzLCA2NTAzMywgOTE0MywgCi0gICAgNjY2OCwgMTk1MDY3LCAxOTUwNjYsIDE5NTA2OSwgNjU2LCAxOTUwNzEsIDY1MDM3LCA0NTc3LCA2NDYyNCwgMCwgMCwgMCwgCi0gICAgMCwgNDI2OSwgNzM4ODUsIDkxNzc3NSwgNDI4NDYsIDY5NjQ0LCA5NTAsIDAsIDkyMjczLCA2NjU4MCwgMTE4ODk1LCAKLSAgICA2NjY4MywgMTA1NTQsIDkxNzc3OCwgMTE5MTIxLCAwLCA1MDk4LCA5MTc3NzAsIDAsIDExOTA5OSwgNTA5NywgNDkzNSwgCi0gICAgOTg0OCwgMTAzODEsIDAsIDEyODg3MCwgMCwgMzY1MSwgMCwgMTk0NjEwLCAxMjc1NTYsIDUxMDIsIDUxMDEsIDEwMjY5LCAKLSAgICAxMjk4MywgODEzOCwgNDUxNywgMTkzMiwgNTEwMCwgMTQzOSwgMTIwOTMsIDEyNDcsIDEwMDM0LCAxOTUwNjQsIDUwOTksIAotICAgIDc4MzczLCAxNDQxLCA0MjA4NywgMzA2MywgNjUwLCAwLCA3ODM4LCAwLCAxOTUwNDEsIDE5NTA0MCwgMTE5MTQyLCA5MDMxLCAKLSAgICAxMjA3OTAsIDEyODU4MiwgOTA3OCwgODU0NSwgNjYzNTYsIDEyODc5OSwgMCwgOTE1NCwgOTExOCwgMCwgMCwgMjY3NiwgCi0gICAgNzc1MCwgMCwgNzM4MTIsIDYxOTAsIDg1OTksIDE5NTA1MywgMCwgMTA3OTUsIDk4NTcsIDcwMTQsIDk4NTYsIDE5NTAzMywgCisgICAgOTIzOTUsIDgwODksIDY5MjksIDYzOSwgOTgzNTYzLCA2ODE3OSwgNjQ0NDIsIDAsIDkyMzQ4LCA0NTk5LCA0MTQwMiwgCisgICAgNjY3NCwgNDMzOTcsIDQzMjk0LCAxNDc2LCA2NDgsIDAsIDY1ODE5LCAzMjMzLCAwLCA0MTc4MiwgNjk1MSwgOTQwMTcsIAorICAgIDk4Mzk2NywgMzUzMCwgOTc1MCwgMTI4MzE3LCAwLCA2NjU2LCA0MjYxOCwgMCwgNTA0NiwgODUxMiwgNjU4NTYsIDc0MjYxLCAKKyAgICA4OTY3LCAwLCA1MDQ1LCA0MjAyNiwgMTkxNiwgNzk4NiwgNTA0NCwgMTIwNTU2LCA5MDA2LCAxMzEyOCwgNTA0MywgMCwgCisgICAgNzg1MywgNzQwNjgsIDc0MDA0LCA5NjY5LCAxMjM0MSwgMTI3MDMsIDg0MDIsIDAsIDExOTA3MCwgOTE3NjAwLCA0MTc1MCwgCisgICAgMzU4NiwgNjQ1MDgsIDQzMTQ4LCAwLCAwLCAxMTk2MDYsIDY3OTgzLCAxMzI5NiwgNTE3LCAwLCAxMjg1MzQsIDE5NDk0NiwgCisgICAgNDE1MjgsIDEyMywgNjU0NTQsIDAsIDAsIDc0NDc4LCAxMDUzMSwgNzc4NCwgNDE1MjYsIDEwODI5LCA3Mzk5MSwgODA1NywgCisgICAgMTEyNiwgNzM4OTUsIDAsIDE5NDU5MSwgMCwgMzkyNSwgNDI1MSwgODA2OSwgMTA1MTcsIDEyMDQzOSwgNDg5LCAwLCA0MjUwLCAKKyAgICAxMjA0NDEsIDEyMDQ1MiwgNDMxNTEsIDk4MzE3OCwgMTk0ODUxLCA2NjIwMCwgMCwgMCwgMCwgNzg0MjMsIDAsIDAsIDg3MTEsIAorICAgIDYxODMsIDAsIDAsIDAsIDEyMDQ0OCwgNzYyMywgMTE4OTI1LCAxMTg4ODksIDkyMzUsIDEyNzYwLCA3NDE3NiwgNjk2NjIsIAorICAgIDY2NDQ1LCA0MzU0MCwgMTAwNjIsIDM3NDMsIDExNTE0LCAxMTA3OCwgMCwgMTIxMzYsIDAsIDEyNjU5NywgMTIwNDM1LCAwLCAKKyAgICA3NzI2LCAwLCAxOTkyMiwgMjY3LCAzMzkzLCA0MjE5OCwgMTM3MSwgMTk0ODQ5LCA2OTIzMywgMjQ1OCwgMCwgNjIwMSwgMCwgCisgICAgNDEwNzQsIDQyNjYsIDEwNjUyLCA0MTYxMiwgNDEwNzcsIDM0MDIsIDkwNTAsIDMzOTgsIDAsIDk4MzM0MCwgMCwgMzM5MSwgCisgICAgNDEwNzUsIDI0NzYsIDAsIDEyODAxNywgMCwgMTA2MjUsIDAsIDEyNzY3LCAxMzAxNywgNzg3NDMsIDY0MjYxLCA2NDkzNCwgCisgICAgMTI3NTM3LCAxMzAxNCwgMTMwMTMsIDAsIDY2NzMsIDAsIDAsIDAsIDEyNDM4LCAwLCA5ODMzMzQsIDAsIDk4Mzg3MSwgCisgICAgMTI2NjM4LCA5MDUzLCAxMzAxNSwgNzQ1MjMsIDAsIDcwNCwgNjYyMTUsIDYxOTUsIDk4MzgxOSwgNjY2MCwgNzg3NTgsIAorICAgIDkxNzc2MCwgOTE3NzkzLCA0MjIxMiwgMTI2MjksIDExNDM1LCAwLCA1NTI1NiwgNjU1MzgsIDAsIDEyNzk0MCwgOTgzMzMzLCAKKyAgICA3NDU0NywgMTI2NTg1LCA2NTQ0OCwgNzgxMDAsIDEyOTQ4LCAxMTkwMDEsIDE5NTAwMiwgMTE5MjM4LCAxOTUwMDQsIAorICAgIDc4MDk5LCAxMjcwODUsIDAsIDEyODMyMCwgNDI4NywgODI3NiwgNDkwMiwgMTEzMSwgMCwgNzg0NTgsIDY2NzI4LCAxODE2LCAKKyAgICAwLCA0MjUzMywgMTY4LCA0Mjg0NSwgNDg5OCwgNjQyOTgsIDk4MzE0MSwgMCwgNDkwMSwgMTgyMSwgMCwgNTc4LCAzNjUzLCAKKyAgICAwLCA3OTEsIDkxNjIsIDY5NzcsIDAsIDc4ODg5LCA3NDU2MSwgMCwgNzM3MzEsIDgzNTQsIDQzNTkwLCAxMTkzMDMsIAorICAgIDk4MzQ0MSwgNzU1NywgMTE5MzM5LCAxMTkzMDEsIDgyMzQsIDcyNDEsIDAsIDEyMDY3MSwgMTE5MTY3LCAxOTQ5OTYsIAorICAgIDEyODExLCA2NTkyNSwgMzk0NiwgNzgwNzgsIDEwOTk4LCA3ODA4MCwgNjczLCAxOTQ4NjcsIDY0Mzk3LCAxMjgyNzYsIAorICAgIDc0NTk5LCA3ODQ0OSwgODg5MCwgMTk0OTc3LCAxOTQ5NzYsIDI0NDgsIDc4MDg1LCAxMDI2NywgODQyNCwgMjQ1MiwgCisgICAgNzgwODMsIDEyODgyNCwgODcyOSwgNzg0NTYsIDAsIDc4NDUsIDkxNzkxNywgNzEzMDIsIDQ0MDgsIDQxMjIsIDY3NzIsIAorICAgIDExMDM5LCA4NzIzLCAxOTQ5OTAsIDcxMzEwLCAxMTkzMDIsIDczMSwgMTE5MzA0LCA5MjI4NiwgMjQzOCwgNjQ4NTUsIAorICAgIDExOTMwMCwgMTE5Mjk5LCAxMTc1LCAwLCA0MjEzNSwgMzczLCAxMTkxNzIsIDIxMTksIDExNDU3LCAxMTUyMSwgNzcyMywgMCwgCisgICAgMCwgMCwgNDE5NTIsIDAsIDUyNzMsIDIxMjcsIDUyNjksIDYzMzcsIDUyMDIsIDI0MDQsIDUyNjcsIDQyODIzLCAxMTI5MSwgCisgICAgMTk5MTUsIDUyNzcsIDEyOTYzLCAxMjc4NjQsIDYxODksIDQxMjUsIDEzMTQsIDEyMTMzLCAxMjAzNDAsIDExODg3MywgCisgICAgMTI3MSwgOTgzNjMxLCAwLCA2NjAyNCwgNDE0ODIsIDM4NjQsIDc0NTM5LCAwLCAzODc5LCAwLCAxMjk3OCwgNDE2NiwgCisgICAgNDU3NCwgMCwgNzU2NywgNzQ1OSwgOTgzMTYwLCA0MTM5MCwgNTM4NCwgNDE4ODIsIDY3NjQ3LCA5MjU0OCwgNTc1OSwgCisgICAgOTgzOTAzLCAwLCA0MTM4OCwgNjQ0NDYsIDQxMzkyLCA2NDI4OCwgNDEzODcsIDAsIDg3MDYsIDU1NTIsIDk4MzE4NywgNzAwLCAKKyAgICAwLCA1NTUzLCAwLCA3MDg4LCA1MzU2LCA3NDk5LCA2ODAwNywgNjY1OTYsIDc0MDY2LCAwLCAxMDI2MywgNTU1NCwgMCwgCisgICAgMTIzNDQsIDEwMzExLCA3ODExMywgNjY2NSwgOTI2MjYsIDAsIDc2MTgsIDg1MTcsIDExNDU1LCA3ODQ0MCwgNjQ2MzIsIAorICAgIDY0NDQ3LCA1NTU1LCA3ODA4OCwgNzgwOTMsIDc4MDkxLCAwLCA0MjgwMywgNjUwMzMsIDkxNDMsIDY2NjgsIDE5NTA2NywgCisgICAgNjc5OTUsIDE5NTA2OSwgNjU2LCAxOTUwNzEsIDY1MDM3LCA0NTc3LCA2NDYyNCwgMCwgMCwgMCwgOTgzNjQwLCA0MjY5LCAKKyAgICA3Mzg4NSwgOTE3Nzc1LCA0Mjg0NiwgNjk2NDQsIDk1MCwgMCwgOTIyNzMsIDY2NTgwLCAxMTg4OTUsIDY2NjgzLCAxMDU1NCwgCisgICAgOTE3Nzc4LCAxMTkxMjEsIDAsIDUwOTgsIDkxNzc3MCwgMCwgMTE5MDk5LCA1MDk3LCA0OTM1LCA5ODQ4LCAxMDM4MSwgMCwgCisgICAgMTI4ODcwLCA5ODM2OTIsIDM2NTEsIDAsIDEyMDczMCwgMTI3NTU2LCA1MTAyLCA1MTAxLCAxMDI2OSwgMTI5ODMsIDgxMzgsIAorICAgIDQ1MTcsIDE5MzIsIDUxMDAsIDE0MzksIDEyMDkzLCAxMjQ3LCAxMDAzNCwgMTk1MDY0LCA1MDk5LCA3ODM3MywgMTQ0MSwgCisgICAgNDIwODcsIDMwNjMsIDY1MCwgMCwgNzgzOCwgMCwgMTk1MDQxLCAxOTUwNDAsIDExOTE0MiwgOTAzMSwgMTIwNzkwLCAKKyAgICAxMjg1ODIsIDkwNzgsIDg1NDUsIDY2MzU2LCAxMjg3OTksIDAsIDkxNTQsIDkxMTgsIDEyNjU0MywgMCwgMjY3NiwgMjI3NywgCisgICAgMCwgNzM4MTIsIDYxOTAsIDg1OTksIDE5NTA1MywgNjk5MTgsIDEwNzk1LCA5ODU3LCA3MDE0LCA5ODU2LCAxOTUwMzMsIAogICAgIDkyNjIwLCAxMjEyOSwgMCwgODQ4MSwgMCwgNjIwMiwgMTk1MDM1LCAxMDkyMCwgMTI4MjM3LCA1MjAzLCAxOTUwMzksIAogICAgIDE5NTAzOCwgNTEwOCwgNTEwNywgNjU4MTgsIDY2MDE5LCA5NzYyLCAwLCA1NTQxLCA3NDc3MiwgMCwgMTI2MTMsIDUyODQsIAotICAgIDY2NTcsIDIwNywgMTI4ODA2LCA0Mjc1LCA3NDgxOSwgODU0LCA2ODE0NywgNzQzODEsIDAsIDAsIDUxMDMsIDEyNzg2MSwgCi0gICAgNjQzNDgsIDQxMzY4LCA0Mzk3NCwgNDg4LCA2OTgxMSwgMCwgMCwgMTAxNTcsIDAsIDQzMDM0LCAxMTQzOCwgMCwgMCwgCi0gICAgOTI2OTQsIDY4NDMxLCA0MTc3MSwgNTEwNiwgNjY2OSwgODUwNCwgNjUxNTQsIDY5ODEzLCA0MTM2NywgNTEwNSwgMTk1MDMwLCAKLSAgICA2OTcyMCwgNjQ3NiwgNTEwNCwgMCwgMzA0LCAzMTc2LCAwLCAwLCA5MzIsIDEyODY2MywgNjU2NywgMjM4LCA2OTY1NiwgCi0gICAgMTk1MDExLCAxOTQ1OTUsIDE5OTA1LCAxMjA1NzcsIDE5NTAxNSwgNzg4NzAsIDQxMDQ0LCA2NzY0MCwgMTk0OTAyLCAKLSAgICA0MjA1NSwgOTkxMiwgNjU5MzksIDEwNjcwLCA3NDA5MywgMTMyNzMsIDAsIDEyNTUyLCAxOTUwMTksIDg4MDMsIDMwOSwgCi0gICAgNjYyMiwgODE1MSwgMTA4NTgsIDE5NDU5NiwgNjc2MzYsIDAsIDEyNTY4LCAwLCAxMjU1MywgMTA4MTQsIDQzMjc1LCA2OTUwLCAKLSAgICA5NzEyLCA2ODY4MCwgNDM5NzAsIDAsIDY1MTY1LCA5MjcyNSwgMCwgNjY0NjYsIDAsIDAsIDAsIDY2NzI1LCA2MTkxLCAKLSAgICAxMTM1MSwgMTA0MzcsIDExMzE2LCA2NzYzNCwgMCwgMCwgNDE3NTQsIDY3NjM1LCA5MzcwLCAyNzIwLCAxOTQ5NzUsIAotICAgIDY4NDYyLCA4MjMyLCAxMTg4MTcsIDAsIDMyMjIsIDAsIDAsIDAsIDY2NjYzLCAwLCAwLCAxMDgzNCwgMCwgMCwgNjU3MzIsIAotICAgIDAsIDkxNzU0NywgOTI2ODIsIDY3Njc5LCAxOTUwMjAsIDAsIDc3ODEsIDQxMzgzLCA2NDU2OCwgMCwgMTIwNzM4LCAxMjA3NywgCi0gICAgMCwgNjQ1ODYsIDkxNzYyMCwgNDIzOTYsIDU1MjU1LCAzNDc1LCAxMjgwMzUsIDI0NzksIDAsIDM2MzIsIDEyMDcyOCwgCi0gICAgMTA2OTgsIDgzNzYsIDM2NDgsIDE5NDk2MCwgNzQ4NDQsIDY3NjM5LCAzNjM2LCA2Nzg5NCwgMzY1MCwgODgzNywgNjUyMjksIAotICAgIDE4NDMsIDQyMjgzLCA0MzI1MCwgNDE1NjIsIDkxMDAsIDc0NTQ4LCA5MTc2MzAsIDM2NDAsIDEyNzE5MCwgNDIzMjEsIAotICAgIDcyODQsIDE5NDk3NCwgMTk0OTczLCAxOTQ5NTAsIDE5NDk0OSwgMTk0OTUyLCAxOTQ5NTEsIDAsIDE5NDk1MywgNDIwODAsIAotICAgIDI1MjksIDAsIDAsIDAsIDQyMDgzLCAxMjA2NzgsIDY4Mzk4LCAxOTQ5NTcsIDY3NjE5LCA2NjM2NywgMTk0OTU4LCA5NjM0LCAKLSAgICA5MjM4MCwgOTk4OCwgMCwgNDEwNjgsIDAsIDAsIDY1MjY0LCAwLCAwLCA5MjU0NSwgMCwgNzg1LCA4MjM2LCAxMjg2NDcsIAotICAgIDkwMjcsIDY4MTYwLCA2NzYyMywgNjQzODMsIDEyODgyMSwgOTI1LCAxMjcxNTYsIDAsIDQxOTg1LCA0MTA3MSwgOTU4NiwgMCwgCi0gICAgNDE5ODQsIDkyMTcsIDAsIDAsIDAsIDkxODYsIDIwNjcsIDQwMTYsIDAsIDAsIDM4MSwgMCwgMCwgNDIwNzcsIDAsIAotICAgIDEyNzQ4MywgNTE4NCwgNDIwNzgsIDE5NDk0NywgMTA4MTAsIDEyODUzMSwgNDU4NSwgMTk5NDMsIDU4NjAsIDY3NjMzLCAwLCAKLSAgICAwLCA4MTIsIDM2MTUsIDAsIDUxNzgsIDQ0MDAwLCAxMjA1NDgsIDc4ODA3LCA1MTg4LCA3NDI4NywgNjc2MjksIDM2MDUsIAotICAgIDEwNjkyLCAxMTY2LCA2NDQyOSwgNDI2MzksIDkyNCwgMCwgNjc2MzEsIDAsIDEyMDY3MCwgMjQ0MiwgMTA3MDMsIDc4Nzg5LCAKLSAgICA2NzYzMiwgOTE3OTI0LCAxMjc3MSwgMTI3MzYsIDEyNzUzLCAwLCA3MzkzMywgNjc2MjYsIDQyNDAxLCAwLCAwLCAxMjczNzMsIAotICAgIDQyMjg4LCAxMjc1MSwgMCwgODU0MiwgMTMxNDUsIDE5NDk2MywgMjQ2OCwgNjY3MDYsIDQxMjk0LCAzNjI2LCAzODgzLCAKLSAgICA2NDM4OCwgNDI0NzksIDAsIDQxMTE3LCAwLCA5MjU4MCwgMCwgMCwgNjc2MjQsIDAsIDEyOTAsIDAsIDY1NTg1LCAyNzE1LCAKLSAgICA4MDYsIDY1MjA4LCA0MTg4NCwgOTE3ODgzLCAxMzE4LCA2NDczMSwgMCwgMCwgMCwgNjYzMjUsIDM0NjUsIDI0MDUsIDkyNDAsIAotICAgIDAsIDEyNzU2LCA2NTI1OSwgMCwgMCwgMTI3NTIsIDU4MzMsIDE0MzIsIDAsIDQxODgzLCA3MzkxMiwgOTc5OSwgMCwgCi0gICAgNDE4ODYsIDI0ODAsIDAsIDIwNjIsIDEyNzI5MywgNjQ5NCwgNTUzNywgNzg2NTYsIDAsIDE5NDU4NywgMCwgMTIxMSwgMCwgCi0gICAgMCwgMCwgMTE4ODMyLCAxMjMxOCwgMCwgMCwgMCwgMTA2MjIsIDAsIDAsIDc4NjU0LCA2NTY2LCA3ODY1OSwgMCwgNzM3ODAsIAotICAgIDAsIDY0ODY0LCAwLCA3ODY2MCwgMCwgODI4NCwgMTMwODEsIDAsIDM1ODksIDQyMDUxLCA0MDM1LCA2NDkyLCA5MjIzNiwgCi0gICAgNDI2NSwgNjY0MiwgMzk3NywgNzQxODYsIDQxNzc4LCA4MzYsIDExOTIxNiwgMjQ4OCwgMCwgNDU4MiwgMCwgMCwgNDE3NzcsIAotICAgIDEyOTI2LCAwLCA3NTI4LCAxMDU1MCwgMCwgOTI3MDYsIDAsIDExNDM5LCAwLCAxMzc0LCA2NDg3OCwgMTE5MDE0LCAwLCAKLSAgICA0MjM4OSwgNDEzNzQsIDAsIDAsIDc4NDkyLCA0MTM3NywgMTI3OTA5LCAwLCA0MDAsIDEyNTk3LCAxMjA1ODYsIDAsIDAsIAotICAgIDY2NjEsIDAsIDY0ODI3LCAwLCA3MzgxNywgMzkwLCAwLCA3NDc1NSwgMCwgMzQ3MywgNzcxOCwgMCwgMCwgMCwgNTUyODUsIAotICAgIDAsIDAsIDAsIDExOTY5LCAwLCAxMjc4NDEsIDYzNjUsIDE4ODcsIDY3NjMsIDAsIDgwODAsIDcwMDYsIDAsIDAsIDY3NTcsIAotICAgIDY0MzUxLCAxNTQ0LCAwLCA2NzY2LCA2NDY3NywgMTIwNzE2LCAwLCA2MTQ2LCAwLCA3NzEsIDAsIDAsIDEyODEyLCAxMzE2OCwgCi0gICAgNDIyNzIsIDEyMjAwLCA5MTc5MjcsIDc5MDQsIDAsIDk1MywgMTI5MTcsIDExOTU2MCwgMTIzMDAsIDAsIDExNDkxLCA5NzI0LCAKLSAgICAxMDM0MSwgMCwgOTUyNCwgNzQ5MCwgMTEzODksIDc0ODksIDMzNzksIDAsIDc0ODcsIDAsIDQ3MSwgNzQ4NCwgNzQ4MiwgCi0gICAgNjc1MywgNzQ4MCwgNzQ3OSwgNzQ3OCwgNzQ3NywgNjUwMSwgNzQ3NSwgNjkxOCwgNzQ3MywgNzQ3MiwgMjQ3NCwgNzQ3MCwgCi0gICAgNzQ2OCwgMTAyMzIsIDEwNjE1LCAxMDIxMywgMTI3Mjg4LCA5MjM1NywgMTAwNDksIDc4ODg0LCAzNTQ0LCAwLCA2MDE3LCAKLSAgICA2NTMxMSwgMTI3NDgxLCAxMjAyMTYsIDEzMzA2LCAxMDUzMywgNzg3MCwgNzM5NDksIDc2MjUsIDAsIDEyMDU0NCwgMCwgMCwgCi0gICAgOTI2NjAsIDAsIDAsIDAsIDE5OTYxLCAyNDcyLCA0MjY2NSwgOTIzNDEsIDAsIDIxMzksIDQyNTYsIDEyMDc3NiwgNzQzODAsIAotICAgIDAsIDQyNjc1LCA0MjY1OCwgMTI4NDUsIDAsIDAsIDY1MTM4LCAxMTkzNTUsIDY3ODYyLCAwLCA2NTY3MSwgMTIwMDAwLCAKLSAgICAxMjAwMDgsIDgwNjYsIDc2NzgsIDc0ODY1LCAwLCAwLCAwLCAwLCA3MTg2LCAwLCAxMjA1NTUsIDAsIDQ0NSwgMTIwNTY2LCAKLSAgICAxMjgzMDgsIDAsIDAsIDgzMzAsIDAsIDAsIDQyNzk3LCAwLCAxMjAyMTUsIDAsIDM5MDIsIDAsIDE3NzAsIDAsIDEyODg2NiwgCi0gICAgMTU2MCwgMTIwMjA5LCAxOTQ5NzIsIDQ1ODQsIDczODQzLCAwLCAxMTcxMiwgMTA4NjYsIDExODkyOCwgMTExOCwgOTIyMDksIAotICAgIDAsIDAsIDEwODEsIDc0MzYsIDY4NDIwLCA3MjUyLCAwLCA1OTk2LCAwLCA0OTAzLCAwLCA0MTM4NiwgNTE2MiwgMTE5MTg5LCAKLSAgICAxMzMwLCAwLCA3MTM5LCAwLCAxMjA0NywgNDEzODQsIDAsIDAsIDE4NDgsIDQzMzQsIDYzMjQsIDQxOTc1LCA2NDc3NywgCi0gICAgMTA2NzQsIDEyMzA4LCAxMjE4NiwgMCwgMCwgMCwgMTI3MTUsIDEyODM0OSwgMCwgMCwgMjAxOCwgNjY2NzIsIDQxOTc5LCAKLSAgICA2NjY4NSwgMTE5MTU3LCAwLCA5MjQ2NCwgMCwgMTI2OTg0LCAwLCA5MzM0LCA5MjcwNSwgOTIzMTUsIDAsIDc5NzUsIDAsIAotICAgIDc3OTU3LCAwLCA2NjYyMSwgNDg4NCwgNjY1OTcsIDY5NzMyLCAwLCAwLCA2MzEzLCA2NTUxMywgMCwgMCwgMCwgMCwgMjM0NSwgCi0gICAgNDM2OTcsIDQ2MywgMCwgMCwgMTE5NjA3LCAzMTE3LCA1NDYwLCAwLCAwLCAwLCAwLCA0MjI3OSwgMTk0NTc3LCAwLCAKLSAgICA3ODQxNSwgMCwgMTk1MDA4LCAwLCAxMzI0OCwgMCwgMCwgMCwgMCwgMCwgMCwgNTY2MywgMCwgMCwgMCwgMCwgMjQ4MiwgCi0gICAgMTQ3MSwgMCwgMCwgNDIyNDcsIDEyMzc4LCA3MzkyNSwgNjk2NjQsIDAsIDEyMzc0LCAwLCAwLCAwLCAwLCAyNDYwLCAwLCAKLSAgICAxMTk0NCwgMTIzNzYsIDEyNzg2OCwgNjQ2NzksIDAsIDEyMzgwLCAxMDU1NywgNjQ0NzMsIDU4NzAsIDAsIDIwMjQsIAotICAgIDEyNzE4MCwgMCwgMCwgNTM5LCAwLCAxMjc3NjUsIDAsIDM4NTMsIDY1MTgwLCAxMjc5MjMsIDEyMDc5NiwgMTIwMjQ1LCAKLSAgICA5MjMyNCwgMCwgODY1OSwgMCwgMTI0NzQsIDkyNTc5LCA5NTAzLCAxOTQ5NjksIDI0NzgsIDAsIDQxNjIsIDAsIDQyNjAsIAotICAgIDEyOTUzLCA2OTYzMywgMTIwMDg5LCAxMjQ3MCwgMCwgNzQxODksIDI3NDIsIDEyNDc2LCAxMTc5OCwgMTA5NDYsIDEyNzMxMCwgCi0gICAgNTAwMCwgMCwgMCwgMCwgNjk2NzIsIDgyMTMsIDc0MDE3LCA3NzcxLCA2MTYxLCAwLCA2NzA5LCAwLCA3ODg4NSwgMCwgCi0gICAgMTI3OTcxLCAxMjA1ODIsIDc4NTQ3LCAwLCAxMDMwMSwgMTAzMzMsIDEwMzk3LCAwLCAwLCA3Mzc5MSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgNDAxNCwgMTI4NDIsIDczOTUyLCAxMjAxNSwgMTI3MjkwLCA4Mjc1LCAzODkzLCAwLCAwLCAxMjIxMCwgNzIyMSwgCi0gICAgNDIxNDcsIDAsIDc0NTUwLCA3NDQ2NSwgNjQ3NDcsIDExODg0MSwgMCwgMTI1MTYsIDQ0NDQsIDAsIDkyMjcxLCA3NDUzNywgCi0gICAgMTA4OTIsIDgyMzEsIDAsIDY0NzMsIDQxOTY4LCA3ODM4OCwgNDE5NzMsIDM1OTEsIDQxOTY5LCAwLCAyNDUzLCAxMjg1NDksIAotICAgIDkyNjY2LCA2NDcwNSwgMCwgMCwgMTAzNDksIDEwNDEzLCA0MzU5MSwgNDE5NjIsIDMyMDIsIDc0MzUzLCAwLCA4MzE2LCAwLCAKLSAgICAwLCAwLCA2ODcsIDAsIDAsIDAsIDE4NDAsIDAsIDY4NjcxLCAxMTk4MDksIDQ4ODMsIDI4NSwgNDcyMywgNzc5MjcsIAotICAgIDkyNjkyLCA0NDU5LCA3NDU3NywgNDI5MjEsIDQxNzIwLCAxMTA4OSwgMjQwLCAxOTkwNiwgMCwgNDIzMjMsIDAsIDk3NDMsIAotICAgIDEyMDIzMiwgMTMxMzQsIDAsIDAsIDAsIDAsIDAsIDQyNjM0LCAwLCA0MzQzNywgMzA4MSwgMTE0NjMsIDEyMDE1NCwgMCwgMCwgCi0gICAgMTA0NDUsIDAsIDAsIDY2NzE3LCAyNjE0LCA5MTI1LCAxMTkwMjMsIDE3MjksIDAsIDEyMDIzNiwgNjUyMjEsIDYzODgzLCAKLSAgICA0MzMzNCwgNjQ4NTIsIDAsIDEyMDIzNSwgNjYyMDEsIDAsIDY2NTc4LCA1MDAxLCA0MTg3OSwgNzQ0MjcsIDQxMjEsIDUwMDMsIAotICAgIDg4NCwgNjY3MDAsIDYzODc5LCA0OTQzLCA1MTUwLCA3Mzg4OSwgNzQxODIsIDEyNzkxNSwgNjQzLCAzMDg2LCAwLCA0MjQ0OCwgCi0gICAgNDIyOTksIDU4LCAwLCA5MTc5NTIsIDEyMDA4MywgNjM4NzMsIDg0OTEsIDAsIDAsIDAsIDQ1MzAsIDQyNDA5LCA3MTI2LCAKLSAgICAxOTQ1NzUsIDI3MjEsIDEyMDA3NCwgMTE5MDk2LCAxOTkyOSwgMCwgMTk0NTc0LCAwLCA0MjQyLCA0MjY0LCAxMjAwNzcsIAotICAgIDEyODEzMiwgNjYxNzksIDQyNDEyLCA2NTk0MSwgMTMxMTQsIDY0NTIyLCAxMDc0MCwgMzA5NCwgMCwgOTc1NCwgMTE5MTAyLCAKLSAgICA0NDM3LCA3Mzk0OCwgMTI4NjkyLCAwLCA1NTI4MCwgNDIxNzQsIDE5NDkyNSwgNDI0MzAsIDAsIDAsIDQyMzU1LCA2NjAyNiwgCi0gICAgNDMwNiwgNDEzODAsIDY4NDMyLCA5MjU4NiwgMCwgNjY2NjcsIDEyNzMwOSwgMCwgMCwgNDIyMDAsIDQyNTY2LCAwLCAwLCAKLSAgICA1MDg4LCA2OTQ4LCAwLCA4NTI0LCAwLCAwLCAxMjM4NSwgMCwgMCwgNjk2NDYsIDEzODYsIDY0NTgwLCAxMTQ4MCwgNjExNiwgCi0gICAgNjUwMzksIDY1MDM4LCAxMjM5MiwgNjUwMzYsIDgwNjQsIDAsIDEyMTAxLCA1ODIyLCAxMTkwMDQsIDIwODAsIDcxMCwgCi0gICAgNzc5OTksIDExNjYzLCAxNjY2LCA0MjA5MSwgMTE5NjU3LCAxMjM4MywgNDM2NzEsIDQyMDkyLCA2ODQxOCwgNDI4OSwgMCwgCi0gICAgNjM4OTYsIDEyMDYxLCA0MjA5NiwgNDM2MjEsIDMzNjIsIDEyMzc3LCAwLCAwLCA2ODQ0OSwgNzQ2MSwgNzM5MDEsIDEyNDQsIAotICAgIDMzMSwgNzM3ODYsIDEyNjgzLCAxMDY2MiwgMCwgODExMiwgMCwgNjU4NTIsIDAsIDEyMzc5LCAxOTQ4NzcsIDEyMDgxOCwgCi0gICAgNDE5NjQsIDQyMjA4LCA2Mzg0MywgMjA4NCwgNDE5NjUsIDAsIDY1ODY2LCA0MzI3LCAwLCA2Mzg0MCwgNzg1NDksIDQxMjIwLCAKLSAgICAxMzAzMiwgMCwgNTg0LCAxMjkzMywgNDMxNzcsIDEyMzczLCAwLCAxMzAwMCwgMTM1MSwgMjkzNSwgODY5OCwgMTI2NjUsIDAsIAotICAgIDE5MzAsIDAsIDc4MjI5LCAxMjQyNywgNjY1MTQsIDAsIDEzMDMxLCAwLCA2MzkwMSwgMCwgMzY1NywgMTI4NTcyLCA2NTIwMiwgCisgICAgNjY1NywgMjA3LCAxMjg4MDYsIDQyNzUsIDc0ODE5LCA4NTQsIDY4MTQ3LCA3NDM4MSwgMCwgNzg3ODYsIDUxMDMsIAorICAgIDEyNzg2MSwgNjQzNDgsIDQxMzY4LCA0Mzk3NCwgNDg4LCA2OTgxMSwgMCwgNzEzMzksIDEwMTU3LCAwLCA0MzAzNCwgCisgICAgMTE0MzgsIDY0Njc0LCAwLCA5MjY5NCwgNjg0MzEsIDQxNzcxLCA1MTA2LCA2NjY5LCA4NTA0LCA2NTE1NCwgNjk4MTMsIAorICAgIDQxMzY3LCA1MTA1LCAxMjc1MDksIDY5NzIwLCA2NDc2LCA1MTA0LCA5ODM3NDAsIDMwNCwgMzE3NiwgMTE5MDEwLCAwLCAKKyAgICA5MzIsIDEyMDYzMywgNjU2NywgMjM4LCA2OTY1NiwgMTk1MDExLCAxOTQ1OTUsIDE5OTA1LCAxMjA1NzcsIDE5NTAxNSwgCisgICAgNzg4NzAsIDQxMDQ0LCA2NzY0MCwgMTk0OTAyLCA0MjA1NSwgOTkxMiwgNjU5MzksIDEwNjcwLCA3NDA5MywgMTMyNzMsIDAsIAorICAgIDEyNTUyLCAxOTUwMTksIDg4MDMsIDMwOSwgNjYyMiwgODE1MSwgMTA4NTgsIDc4NzA2LCA2NzYzNiwgMCwgMTI1NjgsIDAsIAorICAgIDEyNTUzLCAxMDgxNCwgNDMyNzUsIDY5NTAsIDk3MTIsIDY4NjgwLCA0Mzk3MCwgOTgzMTk4LCA2NTE2NSwgOTI3MjUsIDAsIAorICAgIDY2NDY2LCAwLCAwLCAwLCA2NjcyNSwgNjE5MSwgMTEzNTEsIDEwNDM3LCAxMTMxNiwgNjc2MzQsIDQzNzYzLCAwLCA0MTc1NCwgCisgICAgNjc2MzUsIDkzNzAsIDI3MjAsIDE5NDk3NSwgNjg0NjIsIDgyMzIsIDExODgxNywgMCwgMzIyMiwgMCwgMCwgMCwgNjY2NjMsIAorICAgIDAsIDAsIDEwODM0LCAwLCAwLCA2NTczMiwgOTQwOTUsIDkxNzU0NywgOTI2ODIsIDY3Njc5LCAxOTUwMjAsIDAsIDc3ODEsIAorICAgIDQxMzgzLCA2NDU2OCwgMCwgMTIwNzM4LCAxMjA3NywgMCwgNjQ1ODYsIDkxNzYyMCwgNDIzOTYsIDU1MjU1LCAzNDc1LCAKKyAgICAxMjgwMzUsIDI0NzksIDAsIDM2MzIsIDEyMDcyOCwgMTA2OTgsIDgzNzYsIDM2NDgsIDE5NDk2MCwgNzQ4NDQsIDY3NjM5LCAKKyAgICAzNjM2LCA2Nzg5NCwgMzY1MCwgODgzNywgNjUyMjksIDE4NDMsIDQyMjgzLCA0MzI1MCwgNDE1NjIsIDkxMDAsIDc0NTQ4LCAKKyAgICA5MTc2MzAsIDM2NDAsIDEyNzE5MCwgNDIzMjEsIDcyODQsIDE5NDk3NCwgMTk0OTczLCAxOTQ5NTAsIDE5NDk0OSwgCisgICAgMTk0OTUyLCAxOTQ5NTEsIDEyNjY0OSwgMTk0OTUzLCA0MjA4MCwgMjUyOSwgMCwgMCwgMCwgNDIwODMsIDEyMDY3OCwgCisgICAgNjgzOTgsIDE5NDk1NywgNjc2MTksIDY2MzY3LCAxOTQ5NTgsIDk2MzQsIDkyMzgwLCA5OTg4LCAwLCA0MTA2OCwgMCwgCisgICAgNDI5NSwgNjUyNjQsIDY4MDA2LCAwLCA5MjU0NSwgMCwgNzg1LCA4MjM2LCAxMjg2NDcsIDkwMjcsIDY4MTYwLCA2NzYyMywgCisgICAgNjQzODMsIDEyMDI2NSwgOTI1LCAxMjcxNTYsIDAsIDQxOTg1LCA0MTA3MSwgOTU4NiwgMCwgNDE5ODQsIDkyMTcsIDAsIDAsIAorICAgIDAsIDkxODYsIDIwNjcsIDQwMTYsIDk4Mzc5NCwgMCwgMzgxLCAxMjkzNiwgMCwgNDIwNzcsIDAsIDY5ODgwLCA1MTg0LCAKKyAgICA0MjA3OCwgMTk0OTQ3LCAxMDgxMCwgMTI4NTMxLCA0NTg1LCAxOTk0MywgNTg2MCwgNjc2MzMsIDAsIDAsIDgxMiwgMzYxNSwgCisgICAgMCwgNTE3OCwgNDQwMDAsIDEyMDU0OCwgNzg4MDcsIDUxODgsIDc0Mjg3LCA2NzYyOSwgMzYwNSwgMTA2OTIsIDExNjYsIAorICAgIDY0NDI5LCA0MjYzOSwgOTI0LCAwLCA2NzYzMSwgNDI2MTYsIDEyMDY3MCwgMjQ0MiwgMTA3MDMsIDc4Nzg5LCA2NzYzMiwgCisgICAgOTE3OTI0LCAxMjc3MSwgMTI3MzYsIDEyNzUzLCA2NjcwOCwgNzM5MzMsIDY3NjI2LCA0MjQwMSwgMCwgNjk4NzIsIAorICAgIDEyNzM3MywgNDIyODgsIDEyNzUxLCAwLCA4NTQyLCAxMzE0NSwgMTk0OTYzLCAyNDY4LCA2NjcwNiwgNDEyOTQsIDM2MjYsIAorICAgIDM4ODMsIDY0Mzg4LCA0MjQ3OSwgMCwgNDExMTcsIDAsIDkyNTgwLCAwLCAwLCA2NzYyNCwgMCwgMTI5MCwgMCwgNjU1ODUsIAorICAgIDI3MTUsIDgwNiwgNjUyMDgsIDQxODg0LCA5MTc4ODMsIDEzMTgsIDY0NzMxLCAxMjY1NzgsIDAsIDAsIDY2MzI1LCAzNDY1LCAKKyAgICAyNDA1LCA5MjQwLCAwLCAxMjc1NiwgNjUyNTksIDAsIDk4Mzc3MiwgMTI3NTIsIDU4MzMsIDE0MzIsIDAsIDQxODgzLCAKKyAgICA3MzkxMiwgOTc5OSwgMCwgNDE4ODYsIDI0ODAsIDAsIDIwNjIsIDEyNzI5MywgNjQ5NCwgNTUzNywgNzg2NTYsIDAsIAorICAgIDE5NDU4NywgMCwgMTIxMSwgMCwgMCwgMCwgMTE4ODMyLCAxMjMxOCwgMCwgMCwgNjgwMDUsIDEwNjIyLCA5ODM3NzAsIDAsIAorICAgIDc4NjU0LCA2NTY2LCA3ODY1OSwgMCwgNzM3ODAsIDExOTE5NiwgNjQ4NjQsIDAsIDc4NjYwLCAwLCA4Mjg0LCAxMzA4MSwgMCwgCisgICAgMzU4OSwgNDIwNTEsIDQwMzUsIDY0OTIsIDkyMjM2LCA0MjY1LCA2NjQyLCAzOTc3LCA3NDE4NiwgNDE3NzgsIDgzNiwgCisgICAgMTE5MjE2LCAyNDg4LCAwLCA0NTgyLCAwLCAwLCA0MTc3NywgMTI5MjYsIDk4MzM2OSwgNzUyOCwgMTA1NTAsIDAsIDkyNzA2LCAKKyAgICAwLCAxMDk2MSwgMCwgMTM3NCwgNjQ4NzgsIDExOTAxNCwgMCwgNDIzODksIDQxMzc0LCAyMjg2LCAwLCA3ODQ5MiwgNDEzNzcsIAorICAgIDEyNzkwOSwgMCwgNDAwLCAxMjU5NywgMTIwNTg2LCAwLCAwLCA2NjYxLCA5ODMxNDUsIDY0ODI3LCAwLCA3MzgxNywgMzkwLCAKKyAgICAwLCA3MTMwMSwgOTgzODUzLCAzNDczLCA3NzE4LCAwLCAwLCAwLCA1NTI4NSwgMCwgMCwgMCwgMTE5NjksIDk4MzM4MiwgCisgICAgMTI3ODQxLCA2MzY1LCAxODg3LCA2NzYzLCA5ODMzNjIsIDgwODAsIDcwMDYsIDAsIDk4MzM2MywgNjc1NywgNjQzNTEsIAorICAgIDE1NDQsIDAsIDY3NjYsIDY0Njc3LCAxMjA3MTYsIDk4MzM2NCwgNjE0NiwgMCwgNzcxLCA5ODMzNjUsIDAsIDEyODEyLCAKKyAgICAxMzE2OCwgNDIyNzIsIDEyMjAwLCA5MTc5MjcsIDc5MDQsIDAsIDk1MywgMTI5MTcsIDExOTU2MCwgMTIzMDAsIDAsIAorICAgIDExNDkxLCA5NzI0LCAxMDM0MSwgOTgzNzY0LCA5NTI0LCA3NDkwLCAxMTM4OSwgNzQ4OSwgMzM3OSwgMCwgNzQ4NywgMCwgCisgICAgNDcxLCA3NDg0LCA3NDgyLCA2NzUzLCA3NDgwLCA1NzY0LCA3NDc4LCA3NDc3LCA2NTAxLCA3NDc1LCA2OTE4LCA3NDczLCAKKyAgICA3NDcyLCAyNDc0LCA3NDcwLCA3NDY4LCAxMDIzMiwgMTA2MTUsIDEwMjEzLCAxMjcyODgsIDkyMzU3LCAxMDA0OSwgMTE4MzQsIAorICAgIDM1NDQsIDAsIDYwMTcsIDY1MzExLCAxMjc0ODEsIDEyMDIxNiwgMTMzMDYsIDEwNTMzLCA3ODcwLCA3Mzk0OSwgNzYyNSwgMCwgCisgICAgMTIwNTQ0LCAwLCAwLCA5MjY2MCwgMCwgMCwgMCwgMTk5NjEsIDI0NzIsIDQyNjY1LCA5MjM0MSwgMCwgMjEzOSwgNDI1NiwgCisgICAgMTIwNzc2LCA3NDM4MCwgMCwgNDI2NzUsIDQyNjU4LCAxMjg0NSwgMCwgMCwgNjUxMzgsIDExOTM1NSwgNjc4NjIsIDAsIAorICAgIDY1NjcxLCA3MDgzLCAxMjAwMDgsIDgwNjYsIDc2NzgsIDc0ODY1LCAwLCAwLCAwLCAwLCA3MTg2LCAwLCAxMjA1NTUsIDAsIAorICAgIDQ0NSwgMTIwNTY2LCAxMjgzMDgsIDAsIDAsIDgzMzAsIDAsIDAsIDQyNzk3LCA5ODMxNTAsIDEyMDIxNSwgMCwgMzkwMiwgMCwgCisgICAgMTc3MCwgMCwgMTI4ODY2LCAxNTYwLCAxMjAyMDksIDE5NDk3MiwgNDU4NCwgNzM4NDMsIDAsIDExNzEyLCAxMDg2NiwgCisgICAgMTE4OTI4LCAxMTE4LCA3MTMzNCwgMCwgMCwgMTA4MSwgNzQzNiwgNjg0MjAsIDcyNTIsIDAsIDU5OTYsIDY5OTIxLCA0OTAzLCAKKyAgICAwLCA0MTM4NiwgNTE2MiwgMTE5MTg5LCAxMzMwLCAwLCA3MTM5LCAwLCAxMjA0NywgNDEzODQsIDAsIDAsIDE4NDgsIDQzMzQsIAorICAgIDYzMjQsIDQxOTc1LCA2NDc3NywgMTA2NzQsIDEyMzA4LCAxMjE4NiwgMCwgMCwgOTgzNzMyLCAxMjcxNSwgNjgwMDIsIAorICAgIDk4MzQ3MSwgMTI2NjMwLCAyMDE4LCA2NjY3MiwgNDE5NzksIDY2Njg1LCAxMTkxNTcsIDY4MDAwLCA5MjQ2NCwgMCwgCisgICAgMTI2OTg0LCA2ODAwMSwgOTMzNCwgOTI3MDUsIDkyMzE1LCA3MDEwMSwgNzk3NSwgMCwgNzc5NTcsIDAsIDY2NjIxLCA0ODg0LCAKKyAgICA2NjU5NywgNjk3MzIsIDAsIDAsIDYzMTMsIDY1NTEzLCA2OTg1NywgMCwgMCwgMCwgMjM0NSwgNDM2OTcsIDQ2MywgMCwgMCwgCisgICAgMTE5NjA3LCAzMTE3LCA1NDYwLCAwLCAwLCA5ODMzNzksIDAsIDQyMjc5LCAxOTQ1NzcsIDAsIDc4NDE1LCAwLCAxOTUwMDgsIAorICAgIDk4MzM3NiwgMTMyNDgsIDAsIDAsIDAsIDAsIDAsIDAsIDU2NjMsIDAsIDAsIDAsIDAsIDI0ODIsIDE0NzEsIDAsIDAsIAorICAgIDQyMjQ3LCAxMjM3OCwgNzM5MjUsIDY5NjY0LCAwLCAxMjM3NCwgMCwgMCwgMCwgOTgzNjg1LCAyNDYwLCAwLCAxMTk0NCwgCisgICAgMTIzNzYsIDEyNzg2OCwgNjQ2NzksIDAsIDEyMzgwLCAxMDU1NywgNjQ0NzMsIDU4NzAsIDAsIDIwMjQsIDEyNzE4MCwgMCwgCisgICAgMCwgNTM5LCAwLCAxMjc3NjUsIDk0MDUyLCAzODUzLCA2NTE4MCwgMTI3OTIzLCAxMjA3OTYsIDEyMDI0NSwgOTIzMjQsIDAsIAorICAgIDg2NTksIDAsIDEyNDc0LCA5MjU3OSwgOTUwMywgMTk0OTY5LCAyNDc4LCAwLCA0MTYyLCAwLCA0MjYwLCAxMjk1MywgCisgICAgNjk2MzMsIDEyMDA4OSwgMTI0NzAsIDAsIDc0MTg5LCAyNzQyLCAxMjQ3NiwgMTE3OTgsIDEwOTQ2LCAxMjczMTAsIDUwMDAsIAorICAgIDAsIDk4MzU3OSwgMCwgNjk2NzIsIDgyMTMsIDc0MDE3LCA3NzcxLCA2MTYxLCA2ODAxOCwgNjcwOSwgMCwgNzg4ODUsIAorICAgIDk4MzY5OSwgMTI3OTcxLCAxMjA1ODIsIDc4NTQ3LCAwLCAxMDMwMSwgMTAzMzMsIDEwMzk3LCAwLCAwLCA3Mzc5MSwgMCwgMCwgCisgICAgMCwgMCwgMTE5MTIzLCA0MDE0LCAxMjg0MiwgNzM5NTIsIDEyMDE1LCAxMjcyOTAsIDgyNzUsIDM4OTMsIDk4MzI1NiwgMCwgCisgICAgMTIyMTAsIDcyMjEsIDQyMTQ3LCAwLCA3NDU1MCwgNzQ0NjUsIDY0NzQ3LCAxMTg4NDEsIDAsIDEyNTE2LCA0NDQ0LCAwLCAKKyAgICA5MjI3MSwgNzQ1MzcsIDEwODkyLCA4MjMxLCAwLCA2NDczLCA0MTk2OCwgNzgzODgsIDQxOTczLCAzNTkxLCA0MTk2OSwgMCwgCisgICAgMjQ1MywgMTI4NTQ5LCA5MjY2NiwgNjQ3MDUsIDAsIDAsIDEwMzQ5LCAxMDQxMywgNDM1OTEsIDQxOTYyLCAzMjAyLCAKKyAgICA3NDM1MywgMCwgODMxNiwgMCwgMCwgOTQwNjAsIDY4NywgMCwgMCwgMCwgMTg0MCwgMCwgNjg2NzEsIDExOTgwOSwgNDg4MywgCisgICAgMjg1LCA0NzIzLCA3MDA5OSwgOTI2OTIsIDQ0NTksIDc0NTc3LCA0MjkyMSwgNDE3MjAsIDExMDg5LCAyNDAsIDE5OTA2LCAwLCAKKyAgICA0MjMyMywgMCwgOTc0MywgMTIwMjMyLCAxMzEzNCwgMTI2NTM1LCAwLCAwLCAwLCAwLCA0MjYzNCwgOTgzMzM1LCA0MzQzNywgCisgICAgMzA4MSwgMTE0NjMsIDEyMDE1NCwgMCwgMCwgMTA0NDUsIDAsIDAsIDY2NzE3LCAyNjE0LCA5MTI1LCAxMTkwMjMsIDE3MjksIAorICAgIDAsIDEyMDIzNiwgNjUyMjEsIDYzODgzLCA0MzMzNCwgNjQ4NTIsIDAsIDY1MTk0LCA2NjIwMSwgMCwgNjY1NzgsIDUwMDEsIAorICAgIDQxODc5LCA3NDQyNywgNDEyMSwgNTAwMywgODg0LCA2NjcwMCwgNjM4NzksIDQ5NDMsIDUxNTAsIDczODg5LCA3NDE4MiwgCisgICAgMTI3OTE1LCA2NDMsIDMwODYsIDAsIDQyNDQ4LCA0MjI5OSwgNTgsIDAsIDkxNzk1MiwgMTIwMDgzLCA2Mzg3MywgODQ5MSwgCisgICAgMCwgMCwgMCwgNDUzMCwgNDI0MDksIDcxMjYsIDE5NDU3NSwgMjcyMSwgMTIwMDc0LCAxMTkwOTYsIDE5OTI5LCAwLCAKKyAgICAxOTQ1NzQsIDAsIDQyNDIsIDQyNjQsIDEyMDA3NywgMTIwNTMwLCA2NjE3OSwgNDI0MTIsIDY1OTQxLCAxMzExNCwgNjQ1MjIsIAorICAgIDEwNzQwLCAzMDk0LCAwLCA5NzU0LCAxMTkxMDIsIDQ0MzcsIDczOTQ4LCAxMjcwNzQsIDk4MzIzMiwgNTUyODAsIDQyMTc0LCAKKyAgICAxOTQ5MjUsIDQyNDMwLCAwLCAwLCA0MjM1NSwgNjYwMjYsIDQzMDYsIDQxMzgwLCA2ODQzMiwgOTI1ODYsIDAsIDY2NjY3LCAKKyAgICAxMjczMDksIDAsIDEyNjUyMSwgNDIyMDAsIDQyNTY2LCAwLCAwLCA1MDg4LCA2OTQ4LCAwLCA4NTI0LCAwLCAwLCAxMjM4NSwgCisgICAgMCwgMCwgNjk2NDYsIDEzODYsIDY0NTgwLCAxMTQ4MCwgNjExNiwgNjUwMzksIDY1MDM4LCAxMjM5MiwgNjUwMzYsIDgwNjQsIAorICAgIDAsIDEyMTAxLCA1ODIyLCAxMTkwMDQsIDIwODAsIDcxMCwgNzc5OTksIDExNjYzLCAxNjY2LCA0MjA5MSwgMTE5NjU3LCAKKyAgICAxMjM4MywgNDM2NzEsIDQyMDkyLCA2ODQxOCwgNDI4OSwgMCwgNjM4OTYsIDEyMDYxLCA0MjA5NiwgNDM2MjEsIDMzNjIsIAorICAgIDEyMzc3LCA5ODM4MjMsIDk4MzgyNSwgNjg0NDksIDc0NjEsIDczOTAxLCAxMjQ0LCAzMzEsIDczNzg2LCAxMjY4MywgCisgICAgMTA2NjIsIDAsIDgxMTIsIDAsIDY1ODUyLCAwLCAxMjM3OSwgMTk0ODc3LCAxMjA4MTgsIDQxOTY0LCA0MjIwOCwgNjM4NDMsIAorICAgIDIwODQsIDQxOTY1LCAwLCA2NTg2NiwgNDMyNywgMCwgNjM4NDAsIDc4NTQ5LCA0MTIyMCwgMTMwMzIsIDAsIDU4NCwgCisgICAgMTI5MzMsIDQzMTc3LCAxMjM3MywgNjk4NTUsIDEzMDAwLCAxMzUxLCAyOTM1LCA4Njk4LCAxMjY2NSwgMCwgMTkzMCwgMCwgCisgICAgNzgyMjksIDEyNDI3LCA2NjUxNCwgNjk4NTksIDEzMDMxLCAwLCA2MzkwMSwgMCwgMzY1NywgMTI4NTcyLCA2NTIwMiwgCiAgICAgNjAwMCwgMTE5MjA2LCAxMjQyNiwgMTI3MTgxLCAwLCA0MTc0MCwgMTI0MjgsIDQxMjgzLCA0MTkxNiwgMTE5MjEwLCAwLCAwLCAKICAgICAxMjQyOSwgNjcyNywgMCwgNzU2MiwgMCwgNTE3MCwgMCwgNDE3NTUsIDY3NiwgMCwgNjY3MDQsIDY2NjY0LCA5OTc4LCAKICAgICA2NjQ5MSwgMzUzNiwgMCwgOTc1MiwgOTIzOTcsIDYxNjIsIDAsIDY5MjI4LCAxMDExMywgNDE4MjksIDY1ODg2LCA1MTU5LCAKQEAgLTE2NDIxLDcwNiArMTczMzEsNzMxIEBACiAgICAgMCwgNjM4NjcsIDQxMzMsIDExMzcxLCAyMTAsIDQ2MDAsIDAsIDc0NTYwLCA0MTM3LCA4MDgyLCA3ODUwNiwgMTE5MDYyLCAKICAgICA3ODUwNCwgNjcwNCwgNDU5MSwgMTI4MDI5LCAwLCAwLCA5NjgwLCAwLCAxMjA2MjMsIDU2MSwgMTIxNTksIDE5NSwgNzg1MDgsIAogICAgIDQxNTAxLCAwLCA0MjAzMSwgNTcxOSwgNzE3MiwgNDI2ODcsIDgzNjgsIDAsIDQxNDk5LCAwLCAwLCA0MjI0MiwgNDE0OTgsIAotICAgIDkxNzc5NCwgNDIwMjUsIDc4NTY3LCA2NTgwNSwgNDI0NjMsIDAsIDI5MjQsIDAsIDEyMDUxMCwgMCwgMCwgMTE5MjEzLCAKKyAgICA5MTc3OTQsIDQyMDI1LCA3ODU2NSwgNjU4MDUsIDQyNDYzLCAwLCAyOTI0LCAwLCAxMjA1MTAsIDAsIDAsIDExOTIxMywgCiAgICAgNzM5NDEsIDAsIDQyMzMwLCA5MTc3ODQsIDM5NjksIDAsIDAsIDcxNjksIDE5OTIsIDk2NTIsIDczOTc3LCA3MjQ2LCAKLSAgICA0MjA4NiwgOTE3NzkwLCA5MTc3ODksIDAsIDAsIDEyODgwMSwgMCwgMCwgMzI3LCAwLCA5MDQyLCA5MTc3NzcsIDkxNzc3NiwgCi0gICAgNjUxNDgsIDEyNDMzLCA5MTc3ODEsIDEyNzI3NiwgOTE3Nzc5LCAxMjQzMSwgODY2OCwgMTI0MzQsIDAsIDkxNzc4MiwgCi0gICAgNTk5OSwgMCwgNzcxMiwgMTI0MzIsIDEyODI0MywgNDM2NTMsIDE3MjYsIDEwMTUsIDAsIDgyMTIsIDAsIDEyODAxNCwgCi0gICAgNDI0MjMsIDExOTA2NiwgMCwgMTI4MTA4LCA2NjcwOSwgMCwgODgxMSwgOTI3LCAwLCAwLCAxMjQzNiwgMCwgNDIwMjEsIDAsIAotICAgIDAsIDEyOTksIDEyMjQwLCA0MjM1MCwgNjUxNDMsIDAsIDE5NTAxNiwgMCwgNzgxOTcsIDExMzQ4LCAwLCA3ODAzNywgOTE5NCwgCi0gICAgMCwgMCwgMTk5MTQsIDEyMTc5LCAwLCA5NjQ4LCAxOTQ5MjMsIDYzODM2LCA2MzgzMiwgOTE3NzczLCAxMDk2NywgNjM4MTYsIAotICAgIDI1OTQsIDM0NDQsIDYzODE3LCA2NDY1MSwgMCwgNDE1MDMsIDEyNzQ3OCwgMTEyNjUsIDAsIDEyMDc1NiwgMTk0OTIyLCAwLCAKLSAgICA1NjY0LCAzOTcyLCAwLCAwLCAwLCAxMjg1MDgsIDEyNDE2LCA5MTc3NjQsIDExOTYwOCwgMTA4MTYsIDkxNzc2OSwgCi0gICAgOTE3NzY4LCAxMjQxOCwgNzQxMTEsIDM4ODIsIDg1MzIsIDkxNzc3MSwgMTU3MywgMTI4NjQ4LCAxMTk4NDcsIDQ1OTYsIAotICAgIDY2MzM5LCAxMjQxNywgNjYwMDEsIDY1MzQzLCAxOTQ3ODIsIDEyNDE0LCA4Mjg3LCA2ODIxOSwgMTk1MDE3LCA2ODEwOCwgCi0gICAgMTE0MywgMTE5MTY5LCAxMTk4NDYsIDEyNDE1LCA2NjI2LCA0Mjc2MywgMCwgMTE4ODg0LCA5MDIxLCAxMjA3ODMsIDAsIAotICAgIDExNzI0LCAwLCAwLCAxMjcxMDQsIDEyODUyNiwgMCwgMCwgODAyNywgMTA5OTcsIDkxNzEsIDEyNzQxLCAxMTQwMCwgCi0gICAgNzQxOTcsIDE5NDc5OSwgMCwgMTI4MjM5LCAwLCAxMjg4ODEsIDExOTYwNCwgMTI3NTIzLCAxMjAxOTAsIDE5NDc3MywgCi0gICAgNjc2MDgsIDEyODIxNCwgNDIzNjgsIDAsIDc3MTUsIDM4ODEsIDQxNDg3LCAxMjExOCwgNDI1MTQsIDY4NjUxLCAwLCAwLCAKLSAgICAzMDA5LCA0MTQ3NiwgNDE0ODksIDY5ODI1LCAzMDA3LCAxNDQ4LCAzMDE4LCAxOTQ4MDksIDM4ODksIDg1MjEsIDUwODMsIAotICAgIDUwODIsIDExOTg1OSwgMTIwMTg0LCA4NTE5LCAwLCAzMDE0LCA1MDgxLCA2NTg1MywgMTIwNzE1LCAwLCAxMjAxODMsIAotICAgIDc4MjE5LCA1MDc5LCA2NDgwMiwgNDIyMTAsIDQ1OTcsIDY1NTMyLCA3ODQ0NCwgMTIwMTg1LCAxMjM3MSwgMCwgODQwNywgMCwgCi0gICAgMTA4MDUsIDg1MTgsIDEwNzc5LCAxMjAxODgsIDAsIDAsIDEyMzY3LCA0MjE3MCwgMCwgOTI1NTcsIDYyOSwgMTkyNCwgMCwgCi0gICAgMTIwMzcsIDc0MzY2LCA1OTg3LCA4NDYyLCA4MDA1LCAxMjM2NSwgNjM5MzMsIDY5NzM1LCAxMjA4MTUsIDEyMzY5LCAKLSAgICAxMDY0OSwgMCwgNTA3NywgMTI3MTA4LCAxMDg4MCwgNjM5MjcsIDUwNzUsIDkxNzg4MSwgMCwgNjUwNzUsIDAsIDExMDA3LCAKLSAgICAwLCA2NjY1OSwgOTI2MDcsIDAsIDY2Njg0LCAwLCAzNDM0LCA0OTU0LCAxOTA0LCAwLCA1MjY2LCAxMjY5ODAsIDUyNzIsIAotICAgIDEwNDk5LCA0NTA3LCA5NTc4LCA2MzkyMywgMTIwMTc3LCA3OTc5LCAwLCA5ODMxLCAwLCAxOTQ5MjYsIDQ2MSwgOTgwMywgMCwgCi0gICAgNDUwNCwgMTUwNSwgMCwgNjMyNSwgNTI3NiwgNDMwMjEsIDEyMDQ4OCwgMCwgNTUyMzYsIDAsIDY2NDYxLCA1MTc3LCAKLSAgICA0MTMyNCwgMTIwNTUsIDg3MjIsIDAsIDQxMzI3LCAwLCA2NjY5NSwgNDExNCwgNDA5LCA0MzgzLCA4OTAwLCA4OTQ4LCAKLSAgICA0MTMyNSwgMCwgNzIxLCAxMDE4MiwgOTEwOCwgMCwgMCwgMTE5MTg1LCA0MjIyOSwgMTk0OTEyLCAwLCA1OTk4LCAwLCAKLSAgICA0MjM1MywgNzQ4MjUsIDAsIDEyNTg3LCAwLCA3ODU3MSwgMCwgMCwgMTk0NTYyLCA0MTU3NiwgNDIyMTUsIDc4NTcwLCAKLSAgICAxMTkyMDcsIDAsIDg1NzgsIDU5OTUsIDc1NzMsIDQxNTc1LCA3NDc4OSwgNzQ3NTIsIDYzOTQ0LCA2Mzk0OSwgNjQ3NjcsIAotICAgIDI2NzAsIDQxNjcsIDAsIDExNzIzLCAwLCA3NDEyMCwgMCwgNjUwNzYsIDkzOCwgNDM0MTQsIDczODU0LCAxMTczNywgOTcyMSwgCi0gICAgMCwgMCwgMCwgMTE3NDIsIDI0MTksIDAsIDExNDkzLCAxMjMzNCwgMTk0OTEzLCA0MTUzLCAxMjMwMiwgMTA3OTMsIDUyNTAsIAotICAgIDEyNDA3LCAxMTk3OCwgNDQwNCwgOTE4OSwgMTI0MDEsIDQyMDA3LCA1Nzc1LCA2NzU5LCA2NTgwNiwgNDM5OTcsIDAsIAotICAgIDQyMDAyLCAxMjQwNCwgMCwgMCwgNDk0MCwgMTI0MTAsIDc2ODMsIDExNjcsIDczNzI5LCA0OTgzLCAwLCA4NjEsIDAsIDAsIAotICAgIDAsIDAsIDY1NTc3LCA0MzM3MCwgMCwgMCwgMTE5NTYsIDAsIDAsIDAsIDk2MTYsIDY2MzEsIDAsIDEyODE2LCA3NDU4MywgCisgICAgNDIwODYsIDEyNjYxNSwgMjIxOSwgMCwgMCwgMTI4ODAxLCAxOTQ4MzcsIDAsIDMyNywgMCwgOTA0MiwgOTE3Nzc3LCAKKyAgICA5MTc3NzYsIDY1MTQ4LCAxMjQzMywgOTE3NzgxLCAxMjcyNzYsIDkxNzc3OSwgMTI0MzEsIDg2NjgsIDEyNDM0LCA5ODM4MjYsIAorICAgIDkxNzc4MiwgNTk5OSwgMCwgNzcxMiwgMTI0MzIsIDEyODI0MywgNDM2NTMsIDE3MjYsIDEwMTUsIDAsIDgyMTIsIDAsIAorICAgIDEyODAxNCwgNDI0MjMsIDExOTA2NiwgMCwgMTI4MTA4LCA2NjcwOSwgMCwgODgxMSwgOTI3LCAwLCAwLCAxMjQzNiwgCisgICAgOTgzMjM5LCA0MjAyMSwgMCwgMCwgMTI5OSwgMTIyNDAsIDQyMzUwLCA2NTE0MywgMCwgMTk1MDE2LCAwLCA3ODE5NywgCisgICAgMTEzNDgsIDAsIDc4MDM3LCA5MTk0LCA5ODMxODQsIDAsIDE5OTE0LCAxMjE3OSwgOTgzODAzLCAyMjk2LCAxOTQ5MjMsIAorICAgIDYzODM2LCA2MzgzMiwgOTE3NzczLCAxMDk2NywgNjM4MTYsIDI1OTQsIDM0NDQsIDYzODE3LCA2NDY1MSwgMCwgNDE1MDMsIAorICAgIDEyNzQ3OCwgMTEyNjUsIDAsIDEyMDc1NiwgMTk0OTIyLCAwLCA1NjY0LCAzOTcyLCAwLCAwLCAwLCAxMjg1MDgsIDEyNDE2LCAKKyAgICA5MTc3NjQsIDExOTYwOCwgMTA4MTYsIDkxNzc2OSwgOTE3NzY4LCAxMjQxOCwgNzQxMTEsIDM4ODIsIDg1MzIsIDkxNzc3MSwgCisgICAgMTU3MywgMTI4NjQ4LCAxMTk4NDcsIDQ1OTYsIDY2MzM5LCAxMjQxNywgNjYwMDEsIDY1MzQzLCAxMjY0OTEsIDEyNDE0LCAKKyAgICA4Mjg3LCA2ODIxOSwgMTk1MDE3LCA2ODEwOCwgMTE0MywgMTE5MTY5LCAxMTk4NDYsIDEyNDE1LCA2NjI2LCA0Mjc2MywgMCwgCisgICAgMTE4ODg0LCA5MDIxLCAxMjA3ODMsIDAsIDExNzI0LCAwLCAwLCAxMjcxMDQsIDEyNjYxOSwgMCwgMCwgODAyNywgMTA5OTcsIAorICAgIDkxNzEsIDEyNzQxLCAxMTQwMCwgNzEzMDUsIDE5NDc5OSwgMCwgMTI4MjM5LCAwLCAxMjg4ODEsIDExOTYwNCwgMTI3NTIzLCAKKyAgICAxMjAxOTAsIDE5NDc3MywgNjc2MDgsIDEyODIxNCwgNDIzNjgsIDAsIDc3MTUsIDM4ODEsIDQxNDg3LCAxMjExOCwgNDI1MTQsIAorICAgIDY4NjUxLCAwLCA5ODM4ODYsIDMwMDksIDQxNDc2LCA0MTQ4OSwgNjk4MjUsIDMwMDcsIDE0NDgsIDMwMTgsIDE5NDgwOSwgCisgICAgMzg4OSwgODUyMSwgNTA4MywgNTA4MiwgMTE5ODU5LCAxMjAxODQsIDg1MTksIDk4MzIzNSwgMzAxNCwgNTA4MSwgNjU4NTMsIAorICAgIDEyMDcxNSwgMCwgNjgwMTQsIDY5OTUxLCA1MDc5LCA2NDgwMiwgNDIyMTAsIDQ1OTcsIDY1NTMyLCAxMTgyOCwgMTIwMTg1LCAKKyAgICAxMjM3MSwgMCwgODQwNywgMCwgMTA4MDUsIDg1MTgsIDEwNzc5LCAxMjAxODgsIDcxMzAzLCA5ODM5MjQsIDEyMzY3LCAKKyAgICA0MjE3MCwgMCwgOTI1NTcsIDYyOSwgMTkyNCwgMCwgMTIwMzcsIDc0MzY2LCA1OTg3LCA4NDYyLCA4MDA1LCAxMjM2NSwgCisgICAgNjM5MzMsIDY5NzM1LCAxMjA4MTUsIDEyMzY5LCAxMDY0OSwgNjc5ODEsIDUwNzcsIDEyMDE3NCwgMTA4ODAsIDYzOTI3LCAKKyAgICA1MDc1LCA5MTc4ODEsIDAsIDY1MDc1LCAwLCAxMTAwNywgOTgzNjk2LCA2NjY1OSwgOTI2MDcsIDAsIDY2Njg0LCAwLCAKKyAgICAzNDM0LCA0OTU0LCAxOTA0LCAwLCA1MjY2LCAxMjY5ODAsIDUyNzIsIDEwNDk5LCA0NTA3LCA5NTc4LCA2MzkyMywgCisgICAgMTIwMTc3LCA3OTc5LCAwLCA5ODMxLCAwLCAxOTQ5MjYsIDQ2MSwgOTgwMywgMCwgNDUwNCwgMTUwNSwgMCwgNjMyNSwgCisgICAgNTI3NiwgNDMwMjEsIDEyMDQ4OCwgMCwgNTUyMzYsIDAsIDY2NDYxLCA1MTc3LCA0MTMyNCwgMTIwNTUsIDg3MjIsIDAsIAorICAgIDQxMzI3LCAwLCA2NjY5NSwgNDExNCwgNDA5LCA0MzgzLCA4OTAwLCA4OTQ4LCA0MTMyNSwgMCwgNzIxLCAxMDE4MiwgOTEwOCwgCisgICAgNzEzMTEsIDAsIDExOTE4NSwgNDIyMjksIDE5NDkxMiwgMCwgNTk5OCwgMCwgNDIzNTMsIDc0ODI1LCAwLCAxMjU4NywgCisgICAgOTQxMDQsIDc4NTcxLCAwLCA3MTMyOCwgMTk0NTYyLCA0MTU3NiwgNDIyMTUsIDc4NTcwLCAxMTkyMDcsIDAsIDg1NzgsIAorICAgIDU5OTUsIDc1NzMsIDQxNTc1LCA3NDc4OSwgNzQ3NTIsIDYzOTQ0LCA2Mzk0OSwgNjQ3NjcsIDI2NzAsIDQxNjcsIDE5NDc5NiwgCisgICAgMTE3MjMsIDAsIDc0MTIwLCAwLCA2NTA3NiwgOTM4LCA0MzQxNCwgNzM4NTQsIDExNzM3LCA5NzIxLCAwLCAwLCAwLCAKKyAgICAxMTc0MiwgMjQxOSwgMCwgMTE0OTMsIDEyMzM0LCAxOTQ5MTMsIDQxNTMsIDEyMzAyLCAxMDc5MywgNTI1MCwgMTI0MDcsIAorICAgIDExOTc4LCA0NDA0LCA5MTg5LCAxMjQwMSwgNDIwMDcsIDU3NzUsIDY3NTksIDY1ODA2LCA0Mzk5NywgMCwgNDIwMDIsIAorICAgIDEyNDA0LCA5ODM1NTMsIDAsIDQ5NDAsIDEyNDEwLCA3NjgzLCAxMTY3LCA3MzcyOSwgNDk4MywgMTIwNTA3LCA4NjEsIDAsIAorICAgIDAsIDAsIDAsIDQzNzU3LCA0MzM3MCwgMCwgMCwgMTE5NTYsIDAsIDAsIDAsIDk2MTYsIDY2MzEsIDAsIDEyODE2LCA0Mzc1OSwgCiAgICAgNDIyMTgsIDEyNzEwLCA2ODY3NCwgMTI3MjEsIDQxMDEsIDY2MTg1LCAwLCA1OTkyLCA3NjE2LCAxOTUwNDQsIDAsIDEyNTc3LCAKLSAgICAwLCAwLCA4NTMsIDQyNjkzLCAxOTUwMTQsIDAsIDAsIDUwMTYsIDQzNTM1LCA2Mzg5MywgNDI4MzUsIDk0OTEsIDkxNzkxMywgCi0gICAgMCwgOTE3OTE0LCAwLCAxMjcxMiwgNzEwNSwgMTI3ODA3LCA2NTA2MCwgMTIwNzk3LCA5OTAwLCAwLCAwLCAxOTQ5MTksIDAsIAotICAgIDEyNzgzMCwgMCwgNjQ3NzgsIDEyNTg1LCAxMDU2NSwgMTI4MTUxLCAxMjE3NywgMCwgMCwgMCwgNzc4MjQsIDAsIDQ5MDAsIAotICAgIDEyNzg3NCwgMTI4NzgsIDkyNjMwLCA4OTg0LCA0MTE5LCA3NDc2OCwgODk3MSwgNzg1OTMsIDQzMTEzLCA5NzAyLCA3ODU5NCwgCi0gICAgMTEwMjUsIDkyNDUsIDEzMDQ4LCA0OTI3LCA0MTM4LCA3NDE4NSwgOTI0ODEsIDkyNzEwLCAxMjM5NywgNzc4MjcsIDAsIAotICAgIDEzMDU0LCAxMjM5NCwgMCwgMCwgMCwgMTMwNTMsIDAsIDM5NDgsIDEwNzgxLCAxNTQ2LCAwLCA1MDEwLCAxNjgwLCAxMDUwNywgCi0gICAgNzg1OTAsIDc4NTgzLCAwLCAwLCAwLCAxOTQ5MTUsIDcyNjcsIDAsIDc0ODMzLCAxMjgxODEsIDU5OTMsIDI4MTksIDAsIAotICAgIDEyNzA2LCA3Nzg0MCwgMTg5MywgNzI2NiwgNjM5MTUsIDcyNjQsIDcyNjUsIDAsIDEzNjMsIDAsIDYzOTk3LCA2MzkxMCwgCi0gICAgNjM5OTYsIDMwNzcsIDAsIDAsIDE1MTIsIDAsIDEyNTg5LCA0MTQ3OSwgMTI4MzEzLCAwLCA0MzMzOSwgMCwgOTgzNiwgCi0gICAgMTIwNzI3LCAwLCA0MTQ4MSwgNDMzMzUsIDc4MzIsIDQyMzQzLCAzMDkwLCA0MzMzNywgODE3LCAxNjY0LCAxODUwLCAKLSAgICAxMjg4NDEsIDMwNzksIDExMzQwLCA0MjQwOCwgNDI0NDcsIDEyNzE0MCwgMTIwMDIwLCA0MjMwNywgMTIzODYsIDQyMzA0LCAKLSAgICA5MTc1NTUsIDAsIDEyMzg5LCAwLCA5MjM2NiwgNDE5OTYsIDExNTI2LCA2Mzk4NSwgNTg2NCwgMTE0NywgNjM5OTIsIAotICAgIDQyODg3LCAxOTg3LCA5MjcxOCwgNTQ4MCwgNzg1OCwgMTE2NTMsIDQxMTYsIDEyMzkxLCA2NjE5MywgMCwgNDkzOSwgCi0gICAgMTIzODQsIDAsIDAsIDQxNjg2LCA2MzkwNSwgMTE5NjAxLCAxOTQ2ODgsIDAsIDAsIDEyNjQ5LCAwLCAwLCA4MjQ3LCA1MDcsIAotICAgIDkxLCAyMDQyLCAxMjA3NzUsIDQzNjQzLCAxOTQ2ODksIDY2MDI4LCAxMDAzNiwgNDE4NDQsIDExOTgxMywgNzc0LCAKLSAgICAxMTk4MzEsIDAsIDExOTgxNSwgNTk5NCwgMTI1MzksIDAsIDc4Mzc1LCAxMjA1OTcsIDExOTgzMywgMCwgMTE5NjAwLCAwLCAKLSAgICAwLCA3NzE5LCA2MDI2LCAyNDg2LCAxMjgzMTIsIDExOTgwOCwgMTYyLCAwLCA2NTIxOSwgNDEwNzMsIDk2ODcsIDQxNjgxLCAKLSAgICA2MzA0LCAxMTk4MTIsIDY2MTk2LCAxOTQ4ODEsIDUyNjIsIDAsIDU1MjMzLCAxMjY4MSwgNDIzNzksIDAsIDc1MzQsIAotICAgIDEyMjE5LCAwLCAxMjc1MjgsIDQyODEwLCAxMDQ5MiwgMCwgMCwgMCwgNDMxMTksIDAsIDEyMDc1MywgMTI0MDMsIDI1MDAsIAotICAgIDE5NTAxMywgMCwgNDg5OSwgMTI3MjksIDAsIDAsIDc0MTEzLCAyMzQzLCA0MTAzLCAxOTk0NiwgNzQxMTIsIDc3ODUxLCAKLSAgICAxMzExMiwgMCwgMTk1MDEyLCAxMjg1OSwgMCwgMTIwMTQ4LCA2NjM2OSwgNTg2MSwgMTI3NzU4LCAxMTk5OSwgMTI0MDAsIDAsIAotICAgIDAsIDEyNjQ1LCA1MTQ2LCAxMTMyMCwgNjg0MTAsIDY3NDgsIDY1MDQwLCAwLCA2NDE4NCwgMTI5NzQsIDY0MTgzLCA2NzYxMywgCi0gICAgMTIwNjQ1LCA1MTQ3LCAwLCAwLCA3NDUyNCwgMCwgMTkyOCwgMCwgNjc2NDksIDU5OTEsIDM0NDUsIDY3NjA5LCA0OTc2LCAKLSAgICA2NDE3NiwgMCwgNjc2MTAsIDgyNDEsIDAsIDc3ODY4LCA0MjA2LCAwLCAwLCAwLCAxMjgyOTgsIDAsIDEwMTM4LCAwLCAwLCAKLSAgICA4ODk3LCAwLCAwLCA4MzU3LCA0MTI0LCA3Nzg2MiwgNjU4MzYsIDEyMDY0MSwgMTI3OTI2LCA3Nzg1OSwgMCwgMCwgMTEyMywgCi0gICAgOTYzLCA0MTU1MywgMTAxMjAsIDEyNDA1LCAxMjAxNTAsIDkyNjY0LCAzOTgsIDEzMjc4LCA5NzIzLCA2MzY2LCAxMjAzMTEsIAotICAgIDc5NDUsIDAsIDQ0MDIsIDk5NzAsIDEyNDAyLCAwLCA0MjM5MiwgMTMwNSwgMTI0MDgsIDAsIDQ0MDA3LCAwLCAwLCA0MTQ2NCwgCi0gICAgMTI0MTEsIDEyOTY5LCAxMjA4MjQsIDQxNDY1LCAwLCA4NTI4LCAxNTc1LCAwLCA2Mzk1NSwgMTY1LCAzMDI0LCA0MTQ2NywgCi0gICAgMTE5MTYzLCAwLCA5MDkzLCAwLCA5MTQ3LCAwLCA2Mzk1OCwgMCwgOTE0OCwgOTY5MiwgNDA5NiwgNTMsIDczNzc2LCA2NzUwLCAKLSAgICAxOTUwMTgsIDAsIDk1OTQsIDAsIDAsIDQzNTI3LCAwLCA3MjcsIDE5NDcwMywgMCwgNTgwNSwgMCwgNjcyNiwgMCwgNDIxNzYsIAotICAgIDEyMzcwLCAxMTY1NSwgMTE5MDk1LCAxMDU5MSwgMTIzNjQsIDAsIDEyMzcyLCAxMjA2NDIsIDEyMDMwNywgMCwgOTIzNDMsIAotICAgIDAsIDEyMzY2LCAxMDk2MywgNjA2NiwgMTMyOSwgMCwgMzA1MiwgOTIyMCwgMCwgNjQ0NzgsIDE5NDcwMSwgMTA4MDMsIAotICAgIDQxMzIsIDEyMDMwNiwgNjg0NzQsIDkyNDczLCAwLCAwLCA3NDgzNywgMTIwMTU1LCAxNDk5LCAwLCA4MDU1LCA0Mjc0MCwgCisgICAgMCwgOTgzODc1LCA4NTMsIDQyNjkzLCAxOTUwMTQsIDAsIDk4MzYzOCwgNTAxNiwgNDM1MzUsIDYzODkzLCA0MjgzNSwgCisgICAgOTQ5MSwgOTE3OTEzLCAwLCA5MTc5MTQsIDAsIDEyNzEyLCA3MTA1LCAxMjc4MDcsIDY1MDYwLCAxMjA3OTcsIDk5MDAsIAorICAgIDc3NTAsIDAsIDE5NDkxOSwgMCwgMTI3ODMwLCAwLCA2NDc3OCwgMTI1ODUsIDEwNTY1LCAxMjgxNTEsIDEyMTc3LCAwLCAwLCAKKyAgICAwLCA3NzgyNCwgMCwgNDkwMCwgMTI3ODc0LCAxMjg3OCwgOTI2MzAsIDg5ODQsIDQxMTksIDc0NzY4LCA4OTcxLCA3ODU5MywgCisgICAgNDMxMTMsIDk3MDIsIDc4NTk0LCAxMTAyNSwgOTI0NSwgMTMwNDgsIDQ5MjcsIDQxMzgsIDc0MTg1LCA5MjQ4MSwgOTI3MTAsIAorICAgIDEyMzk3LCA3NzgyNywgMCwgMTMwNTQsIDEyMzk0LCAwLCAwLCAwLCAxMzA1MywgMCwgMzk0OCwgMTA3ODEsIDE1NDYsIDAsIAorICAgIDUwMTAsIDE2ODAsIDEwNTA3LCA3ODU5MCwgNzg1ODMsIDAsIDAsIDAsIDE5NDkxNSwgNzI2NywgMCwgNzQ4MzMsIDEyODE4MSwgCisgICAgNTk5MywgMjgxOSwgMCwgMTI3MDYsIDc3ODQwLCAxODkzLCA3MjY2LCA2MzkxNSwgNzI2NCwgNzI2NSwgMCwgMTM2MywgMCwgCisgICAgNjM5OTcsIDYzOTEwLCA2Mzk5NiwgMzA3NywgMCwgMCwgMTUxMiwgNjk5MjksIDEyNTg5LCA0MTQ3OSwgMTI4MzEzLCAwLCAKKyAgICA0MzMzOSwgMCwgOTgzNiwgMTIwNzI3LCAwLCA0MTQ4MSwgNDMzMzUsIDc4MzIsIDQyMzQzLCAzMDkwLCA0MzMzNywgODE3LCAKKyAgICAxNjY0LCAxODUwLCAxMjg4NDEsIDMwNzksIDExMzQwLCA0MjQwOCwgNDI0NDcsIDEyNzE0MCwgMTIwMDIwLCA0MjMwNywgCisgICAgMTIzODYsIDQyMzA0LCA5MTc1NTUsIDAsIDEyMzg5LCAwLCA5MjM2NiwgNDE5OTYsIDExNTI2LCA2Mzk4NSwgNTg2NCwgCisgICAgMTE0NywgNjM5OTIsIDQyODg3LCAxOTg3LCA5MjcxOCwgNTQ4MCwgNzg1OCwgMTE2NTMsIDQxMTYsIDEyMzkxLCA2NjE5MywgCisgICAgMCwgNDkzOSwgMTIzODQsIDAsIDAsIDQxNjg2LCA2MzkwNSwgMTE5NjAxLCAxOTQ2ODgsIDk4MzE5MCwgMCwgMTI2NDksIDAsIAorICAgIDAsIDgyNDcsIDUwNywgOTEsIDIwNDIsIDEyMDc3NSwgNDM2NDMsIDE5NDY4OSwgNjYwMjgsIDEwMDM2LCA0MTg0NCwgCisgICAgMTE5ODEzLCA3NzQsIDExOTgyOSwgMCwgMTE5ODE1LCA1OTk0LCAxMjUzOSwgMCwgNzgzNzUsIDEyMDU5NywgMTE5ODMzLCAKKyAgICA5ODMxMDUsIDExOTYwMCwgMCwgMCwgNzcxOSwgNjAyNiwgMjQ4NiwgMTI4MzEyLCAxMTk4MDgsIDE2MiwgMCwgNjUyMTksIAorICAgIDQxMDczLCA5Njg3LCA0MTY4MSwgNjMwNCwgMTE5ODEyLCA2NjE5NiwgMTk0ODgxLCA1MjYyLCAwLCA1NTIzMywgMTI2ODEsIAorICAgIDQyMzc5LCAwLCA3NTM0LCAxMjIxOSwgMCwgMTI3NTI4LCA0MjgxMCwgMTA0OTIsIDAsIDk4MzY1MiwgMCwgNDMxMTksIDAsIAorICAgIDEyMDc1MywgMTI0MDMsIDI1MDAsIDE5NTAxMywgMCwgNDg5OSwgMTI3MjksIDAsIDAsIDc0MTEzLCAyMzQzLCA0MTAzLCAKKyAgICAxOTk0NiwgNzQxMTIsIDc3ODUxLCAxMzExMiwgMCwgMTk1MDEyLCAxMjg1OSwgNzAwODcsIDEyMDE0OCwgNjYzNjksIDU4NjEsIAorICAgIDEyNzc1OCwgMTE5OTksIDEyNDAwLCAwLCA5ODM4MzAsIDEyNjQ1LCA1MTQ2LCAxMTMyMCwgNjg0MTAsIDY3NDgsIDY1MDQwLCAKKyAgICAwLCA2NDE4NCwgMTI5NzQsIDY0MTgzLCA2NzYxMywgMTIwNjQ1LCA1MTQ3LCAwLCAwLCA3NDUyNCwgMCwgMTkyOCwgMCwgCisgICAgNjc2NDksIDU5OTEsIDM0NDUsIDY3NjA5LCA0OTc2LCA2NDE3NiwgMCwgNjc2MTAsIDgyNDEsIDAsIDc3ODY4LCA0MjA2LCAwLCAKKyAgICAwLCAwLCAxMjgyOTgsIDAsIDEwMTM4LCAwLCAwLCA4ODk3LCAxMjAyMzQsIDAsIDgzNTcsIDQxMjQsIDc3ODYyLCA2NTgzNiwgCisgICAgMTIwNjQxLCAxMjc5MjYsIDc3ODU5LCAwLCAwLCAxMTIzLCA5NjMsIDQxNTUzLCAxMDEyMCwgMTI0MDUsIDEyMDE1MCwgCisgICAgOTI2NjQsIDM5OCwgMTMyNzgsIDk3MjMsIDYzNjYsIDEyMDMxMSwgNzk0NSwgMCwgNDQwMiwgOTk3MCwgMTI0MDIsIAorICAgIDk4MzEzNiwgNDIzOTIsIDEzMDUsIDEyNDA4LCAwLCA0NDAwNywgMCwgMCwgNDE0NjQsIDEyNDExLCAxMjk2OSwgMTIwODI0LCAKKyAgICA0MTQ2NSwgOTgzNTY1LCA4NTI4LCAxNTc1LCAwLCA2Mzk1NSwgMTY1LCAzMDI0LCA0MTQ2NywgMTE5MTYzLCAwLCA5MDkzLCAKKyAgICAwLCA5MTQ3LCAxMjg3ODcsIDYzOTU4LCAwLCA5MTQ4LCA5NjkyLCA0MDk2LCA1MywgNzM3NzYsIDY3NTAsIDE5NTAxOCwgMCwgCisgICAgOTU5NCwgMCwgMCwgNDM1MjcsIDAsIDcyNywgMTk0NzAzLCAxOTUwMjMsIDU4MDUsIDAsIDY3MjYsIDAsIDQyMTc2LCAKKyAgICAxMjM3MCwgMTE2NTUsIDExOTA5NSwgMTA1OTEsIDIyODAsIDAsIDEyMzcyLCAxMjA2NDIsIDEyMDMwNywgMCwgOTIzNDMsIDAsIAorICAgIDEyMzY2LCAxMDk2MywgNjA2NiwgMTMyOSwgMCwgMzA1MiwgOTIyMCwgMCwgNjQ0NzgsIDE5NDcwMSwgMTA4MDMsIDQxMzIsIAorICAgIDEyMDMwNiwgNjg0NzQsIDkyNDczLCAwLCA5ODMzMDUsIDc0ODM3LCAxMjAxNTUsIDE0OTksIDAsIDgwNTUsIDQyNzQwLCAKICAgICA2Mzk2NSwgMCwgNjM5NjIsIDc0MDQyLCA4OTI0LCA0MzEyMywgNTk4OCwgMzY2MCwgNjM5NjksIDExNzgxLCA0MjcxOCwgCiAgICAgODc4OCwgMTM1NywgNjQ4NTEsIDY1NzQzLCAwLCA4Nzc0LCAwLCAxMjcwODYsIDk5NDEsIDEyMDE3MiwgMCwgMTkzMywgCiAgICAgNjk2NTUsIDk1NjQsIDAsIDkyNDM1LCA3Mzg2NiwgMCwgMCwgMjQ4NywgNjc2MTQsIDMxMjEsIDE4MDQsIDMzMTEsIDY3NjE1LCAKLSAgICAwLCA3ODMwMiwgMTIyMjAsIDY3NjE2LCAxMjA1OTgsIDEyNzQ3NSwgMCwgNjgyMDAsIDY2NzUsIDEyODE0NCwgMCwgNjc1OTIsIAotICAgIDEyMDY4NSwgMCwgNjQ3NzEsIDExOTgsIDkxMzIsIDAsIDY0NjE5LCA1MTAsIDY0NjYzLCAwLCAwLCA0NTYxLCAyMTAxLCAKLSAgICAxMzk4LCAwLCA5MjU1NCwgNzQwMzQsIDQxNTY5LCA5MjY4NCwgMTE0MDYsIDgxNjcsIDEyMTI3LCAwLCA4NDAsIDAsIDAsIDAsIAotICAgIDY5NjcsIDAsIDAsIDk3OTYsIDAsIDMzMywgMCwgMCwgODE0NCwgMjExNywgMCwgMCwgMTI0MDYsIDAsIDE5OTMxLCAKLSAgICAxMTkwODksIDY2NzgsIDc3NjksIDAsIDEyNjIxLCAwLCAxMjczNjYsIDEwMjI3LCA0NzY0LCA0MzEwMSwgOTk4MSwgMCwgCi0gICAgNDA5ODYsIDQxMjcsIDY2NDg3LCAwLCA0MjIwMiwgMTI3NTQsIDE5NTAyMiwgMCwgMCwgMCwgNjc1OTQsIDIwNDgsIDEyOTQ0LCAKLSAgICA0MDUwLCA2NzU5NSwgOTE3OTY3LCA0MzEwMiwgMTA1ODEsIDEyOTg1LCA0NTMzLCAxOTUwMjEsIDc0MDAzLCA2NDkwLCAwLCAKLSAgICAxMjAzOCwgMCwgMCwgMTIwNzA0LCA2NTQ2MSwgOTc5OCwgNjk3MDQsIDAsIDE5NDgsIDExOTAwNywgMCwgOTUyLCAxMjgyMzUsIAotICAgIDAsIDAsIDEyMDgwMiwgNjQ0OSwgOTQ5NCwgMTIwMzEzLCAwLCA0MzA5OCwgNDg0MywgODE0MiwgNjQxNjAsIDQwOTgsIAotICAgIDY0MTcwLCAwLCAwLCAzNDM2LCAxMTk5NzMsIDAsIDEyODE3LCA2NzU5NywgNjY3NiwgMzkzMCwgNjY3MDgsIDAsIDAsIAotICAgIDY3NTk4LCAwLCAwLCAwLCA2NTU5MSwgNDE1ODEsIDY1OTE2LCAxNDUzLCAwLCAwLCAwLCA4NTAwLCA0MjIyMiwgMTIwMTQyLCAKLSAgICA3Mzc0MywgMTIwNDAwLCA0MzE3LCAxMTU0MywgNjc2NzYsIDY0Njc2LCAwLCAwLCA2NzYwNiwgMTE5MDgzLCAwLCA0MjIxNywgCi0gICAgMTMxMDIsIDAsIDY2MDAzLCA2NjcyLCAwLCAwLCAwLCAwLCA2Mzg0MSwgOTYxMywgOTAwMSwgNDUyNiwgMTEyNzQsIDY3NjAxLCAKLSAgICA2NDUyMCwgNjQyMTAsIDY2NjQsIDc4NzA0LCA0MjA1NiwgMTAyMjgsIDY0OTU3LCAxMTI4MSwgMCwgNjQyMTMsIDE0NjksIAotICAgIDY2NjQwLCA2NTM4MSwgNDIxOTcsIDQ5ODgsIDQyMzcyLCAwLCA5NTk4LCA5MDQsIDM1MiwgNDIyMjUsIDE0NTEsIDgwNjEsIAotICAgIDg0NTMsIDQxMzQsIDAsIDc0ODQ3LCA2NjU3NiwgMTI3OTE2LCAwLCAxMDUyMCwgODU3NSwgOTk2MCwgMTIwMSwgMTI3Mjg5LCAKLSAgICAxMjg0NiwgMTI3MjkxLCAxMjcyOTIsIDExOTE5LCA2NDk2MiwgMTI3Mjg3LCA0MzczOSwgMTI3MjgxLCA4NTExLCA5NDYwLCAKLSAgICA4MjMsIDExNTg3LCAxMjMwNSwgMCwgNjQ2OTUsIDEyNzMwNSwgMTIzODcsIDEyNTMsIDEzMTgzLCA2NTc2NiwgNTAwLCAKLSAgICA0Mjc4MywgNjU3NjUsIDY0MjA4LCA2NDM2OSwgNjU3NjAsIDY1NzYxLCAxMTk1ODUsIDExNjA2LCA2NDc4NCwgMTE3MDIsIAotICAgIDY2NDk4LCA5ODIxLCA2NDMwNCwgMCwgNTE1MiwgMTEwNDgsIDc1MzMsIDY4MzY2LCA2NDQxMCwgOTIzMDUsIDAsIDQzMjMsIAotICAgIDEyMDA2MiwgOTI2NjksIDAsIDEyNzA1MiwgNDI1ODcsIDQyMjE0LCA0MTM5NCwgMCwgNDc2MywgNDExMiwgMTE4OTM1LCAwLCAKLSAgICA1MjYwLCA0MzE0MywgMCwgMzI2LCAxMjAxMzEsIDY4NDIzLCAwLCAxMDc3MSwgMjg3NiwgNzQwNzQsIDkyNTMwLCAxOTQ5MjQsIAotICAgIDQxMzk4LCA3MzgyLCA5ODAyLCAxMjcwNzcsIDEyNzA3NiwgNDUzLCA0MTM5NiwgMTIwNTI0LCA0MjcyMCwgMTIxNDAsIAotICAgIDk1NzIsIDAsIDcwMDMsIDE5NDg4MywgNDIzMzQsIDc3MDQsIDAsIDE5NDg4NSwgNDMxNDQsIDQxMjMsIDg0OTQsIDQzMTQ2LCAKLSAgICA5OTc3LCAwLCAwLCA2NTc1OSwgMTA3NjUsIDY0MDYxLCA0NDY1LCA5ODA4LCA2NDA1NiwgNjU1ODIsIDQxMjYsIDAsIDk1MjEsIAotICAgIDk1ODksIDY0NzU1LCAwLCA2NDAyMCwgMCwgMTA0NjQsIDAsIDAsIDE5NDg2OSwgNjQ1MTQsIDExNTI4LCA2NDAyNCwgCi0gICAgMTI4MDcyLCA2NzksIDY0MDEzLCAwLCA1ODUwLCA3NTgsIDc1MzYsIDAsIDkyMjM0LCA0MTQ0MSwgMTA2OTMsIDY0MDA2LCAwLCAKLSAgICA2NDAwNSwgNDA1OCwgMTE5MDE5LCAwLCA2NDY2MCwgMCwgMTE5MDUwLCAwLCAwLCAxMTM5LCA0MzI5OCwgNjQwMjcsIAotICAgIDY0MDI5LCA4OTcwLCAwLCA5OTM0LCAwLCAxMDc3NCwgMTI4MDIwLCA0MjIwMSwgMTI0MjEsIDEyODIxNiwgMCwgMTg1MiwgCi0gICAgMzA1NywgMTI4MTEzLCA3Mzc0NCwgNjQwMzQsIDY0MDM5LCAwLCAwLCAwLCAwLCA5MjMyMiwgNzY0NSwgMTI4NTQsIDc0MzM4LCAKLSAgICAzNDk2LCAwLCAwLCAwLCA5MTAyLCA2MjcsIDEyNzc5NSwgNjE1OCwgODMyNywgNzQ1NTMsIDY2NjMyLCAxMjQxOSwgMTMzMDksIAotICAgIDExNTcwLCAxMjc4MTEsIDE5OTYwLCAxMTY5NiwgMCwgMTAxOCwgMTE4OTcwLCAxOTQ5MDksIDE5NDg5NywgMTY4MiwgCi0gICAgMTk0ODk2LCAxOTQ5MTEsIDQyNzU2LCA2NzY1LCAxOTQ5MDYsIDAsIDAsIDczODE0LCAxMTQxMiwgNjc2OCwgMTA3MjgsIAotICAgIDE5NDgzMCwgMTE5MDEwLCAxMTg4NjMsIDQzMzExLCA2NDk2NiwgMTE1NzcsIDAsIDQzMDQwLCAxODMzLCAxMTU3NiwgMCwgCi0gICAgNzQ3NzksIDAsIDE4NSwgNjUwODUsIDc0NTMzLCA2NDc1NCwgMTk0ODQ4LCA3NTM1LCA4MDg1LCA0MjUyNSwgMTIwMzg3LCAKKyAgICA3MDA4MSwgNzgzMDIsIDEyMjIwLCA2NzYxNiwgMTIwNTk4LCAxMjc0NzUsIDAsIDY4MjAwLCA2Njc1LCAxMjgxNDQsIDAsIAorICAgIDY3NTkyLCAxMjA2ODUsIDAsIDY0NzcxLCAxMTk4LCA5MTMyLCAwLCA2NDYxOSwgNTEwLCA2NDY2MywgMCwgMCwgNDU2MSwgCisgICAgMjEwMSwgMTM5OCwgMCwgOTI1NTQsIDc0MDM0LCA0MTU2OSwgOTI2ODQsIDExNDA2LCA4MTY3LCAxMjEyNywgMCwgODQwLCAwLCAKKyAgICAxMjY1MTgsIDcxMDEsIDY5NjcsIDAsIDE5NDg5OCwgOTc5NiwgMCwgMzMzLCA2OTg5MSwgMCwgODE0NCwgMjExNywgMCwgCisgICAgOTgzNTk1LCAxMjQwNiwgMCwgMTk5MzEsIDExOTA4OSwgNjY3OCwgNzc2OSwgMCwgMTI2MjEsIDAsIDEyNzM2NiwgMTAyMjcsIAorICAgIDQ3NjQsIDQzMTAxLCA5OTgxLCAwLCA0MDk4NiwgNDEyNywgNjY0ODcsIDAsIDQyMjAyLCAxMjc1NCwgMTk1MDIyLCAwLCAwLCAKKyAgICA5NDA5NywgNjc1OTQsIDIwNDgsIDEyOTQ0LCA0MDUwLCA2NzU5NSwgOTE3OTY3LCA0MzEwMiwgMTA1ODEsIDEyOTg1LCAKKyAgICA0NTMzLCAxOTUwMjEsIDc0MDAzLCA2NDkwLCAwLCAxMjAzOCwgMCwgMCwgMTIwNzA0LCA2NTQ2MSwgOTc5OCwgNjk3MDQsIDAsIAorICAgIDE5NDgsIDY5ODQxLCAwLCA5NTIsIDEyODIzNSwgMCwgMCwgMTIwODAyLCA2NDQ5LCA5NDk0LCAxMjAzMTMsIDAsIDQzMDk4LCAKKyAgICA0ODQzLCA4MTQyLCA2NDE2MCwgNDA5OCwgNjQxNzAsIDAsIDAsIDM0MzYsIDExOTk3MywgMCwgMTI4MTcsIDY3NTk3LCAKKyAgICA2Njc2LCAzOTMwLCA0MjYxNSwgMCwgMCwgNjc1OTgsIDAsIDAsIDAsIDY1NTkxLCA0MTU4MSwgNjU5MTYsIDE0NTMsIDAsIDAsIAorICAgIDAsIDg1MDAsIDQyMjIyLCAxMjAxNDIsIDczNzQzLCAxMjA0MDAsIDQzMTcsIDExNTQzLCA2NzY3NiwgNjQ2NzYsIDAsIDAsIAorICAgIDY3NjA2LCAxMTkwODMsIDAsIDQyMjE3LCAxMzEwMiwgMCwgNjYwMDMsIDY2NzIsIDAsIDAsIDAsIDk4MzczOCwgNjM4NDEsIAorICAgIDk2MTMsIDkwMDEsIDQ1MjYsIDExMjc0LCA2NzYwMSwgNjQ1MjAsIDY0MjEwLCA2NjY0LCA3ODcwNCwgNDIwNTYsIDEwMjI4LCAKKyAgICA2NDk1NywgMTEyODEsIDAsIDM4MDcsIDE0NjksIDY2NjQwLCA2NTM4MSwgNDIxOTcsIDQ5ODgsIDQyMzcyLCAwLCA5NTk4LCAKKyAgICA5MDQsIDM1MiwgNDIyMjUsIDE0NTEsIDgwNjEsIDg0NTMsIDQxMzQsIDAsIDc0ODQ3LCA2NjU3NiwgMTI3OTE2LCAwLCAKKyAgICAxMDUyMCwgODU3NSwgOTk2MCwgMTIwMSwgMTI3Mjg5LCAxMjg0NiwgMTI3MjkxLCAxMjcyOTIsIDExOTE5LCA2NDk2MiwgCisgICAgMTI3Mjg3LCA0MzczOSwgMTI3MjgxLCA4NTExLCA5NDYwLCA4MjMsIDExNTg3LCAxMjMwNSwgMCwgNjQ2OTUsIDEyNzMwNSwgCisgICAgMTIzODcsIDEyNTMsIDEzMTgzLCA2NTc2NiwgNTAwLCA0Mjc4MywgNjU3NjUsIDY0MjA4LCA2NDM2OSwgNjU3NjAsIDY1NzYxLCAKKyAgICAxMTk1ODUsIDExNjA2LCA2NDc4NCwgMTE3MDIsIDY2NDk4LCA5ODIxLCA2NDMwNCwgMCwgNTE1MiwgMTEwNDgsIDc1MzMsIAorICAgIDY4MzY2LCA2NDQxMCwgOTIzMDUsIDAsIDQzMjMsIDEyMDA2MiwgOTI2NjksIDcxMzMyLCAxMjcwNTIsIDQyNTg3LCA0MjIxNCwgCisgICAgNDEzOTQsIDAsIDQ3NjMsIDQxMTIsIDExODkzNSwgMCwgNTI2MCwgNDMxNDMsIDk0MDM4LCAzMjYsIDEyMDEzMSwgNjg0MjMsIAorICAgIDAsIDEwNzcxLCAyODc2LCA3NDA3NCwgOTI1MzAsIDE5NDkyNCwgNDEzOTgsIDczODIsIDk4MDIsIDEyNzA3NywgMTI3MDc2LCAKKyAgICA0NTMsIDQxMzk2LCAxMjA1MjQsIDQyNzIwLCAxMjE0MCwgOTU3MiwgMCwgNzAwMywgMTk0ODgzLCA0MjMzNCwgNzcwNCwgCisgICAgMTI2NDkwLCAxOTQ4ODUsIDQzMTQ0LCA0MTIzLCA4NDk0LCA0MzE0NiwgOTk3NywgMCwgMCwgNjU3NTksIDEwNzY1LCAKKyAgICA2NDA2MSwgNDQ2NSwgOTgwOCwgNjQwNTYsIDY1NTgyLCA0MTI2LCAwLCA5NTIxLCA5NTg5LCA2NDc1NSwgMCwgNjQwMjAsIAorICAgIDEyNjYwNCwgMTA0NjQsIDAsIDAsIDE5NDg2OSwgNjQ1MTQsIDExNTI4LCA2NDAyNCwgMTI4MDcyLCA2NzksIDY0MDEzLCAwLCAKKyAgICA1ODUwLCA3NTgsIDc1MzYsIDAsIDkyMjM0LCA0MTQ0MSwgMTA2OTMsIDY0MDA2LCA5ODM1NjcsIDY0MDA1LCA0MDU4LCAKKyAgICAxMTkwMTksIDEyNjQ4NywgNjQ2NjAsIDAsIDExOTA1MCwgMCwgOTgzMDY5LCAxMTM5LCA0MzI5OCwgNjQwMjcsIDY0MDI5LCAKKyAgICA4OTcwLCAwLCA5OTM0LCA5ODMwOTQsIDEwNzc0LCAxMjgwMjAsIDQyMjAxLCAxMjQyMSwgMTI4MjE2LCAwLCAxODUyLCAKKyAgICAzMDU3LCA2NDA0NiwgNzM3NDQsIDY0MDM0LCA2NDAzOSwgMCwgMCwgMCwgMTk0ODk5LCA5MjMyMiwgNzY0NSwgMTI4NTQsIAorICAgIDc0MzM4LCAzNDk2LCAwLCAwLCAwLCA5MTAyLCA2MjcsIDEyNzc5NSwgNjE1OCwgODMyNywgNzQ1NTMsIDY2NjMyLCAxMjQxOSwgCisgICAgMTMzMDksIDExNTcwLCAxMjc4MTEsIDE5OTYwLCAxMTY5NiwgMCwgMTAxOCwgMTE4OTcwLCAxOTQ5MDksIDE5NDg5NywgCisgICAgMTY4MiwgMTk0ODk2LCAxOTQ5MTEsIDQyNzU2LCA2NzY1LCAxOTQ5MDYsIDAsIDAsIDczODE0LCAxMTQxMiwgNjc2OCwgCisgICAgMTA3MjgsIDE5NDgzMCwgNzEzMTYsIDExODg2MywgNDMzMTEsIDY0OTY2LCAxMTU3NywgMCwgNDMwNDAsIDE4MzMsIDExNTc2LCAKKyAgICAwLCA3NDc3OSwgMCwgMTg1LCA2NTA4NSwgNzQ1MzMsIDY0NzU0LCAxOTQ4NDgsIDc1MzUsIDgwODUsIDQyNTI1LCAxMjAzODcsIAogICAgIDk3NDksIDQxNzAxLCA2MTMxLCAxOTQ5LCA0MTE3LCA3ODQ3LCAxMjA0ODksIDE5NDcxMSwgNjQ0ODMsIDY1NjkzLCAwLCAwLCAKLSAgICAwLCA2OTY5NSwgNDIyNDAsIDAsIDAsIDQyODY0LCAwLCA2NDY2NywgNDE4NjgsIDExODQsIDAsIDgxNSwgMTE0ODQsIAotICAgIDEyNzUzNSwgNjc4NDAsIDAsIDAsIDEyODc5MywgMCwgMTA5ODYsIDY0NjgzLCAwLCAwLCAxOTQ3MDksIDAsIDAsIDk4NzksIAotICAgIDAsIDAsIDQxNTgsIDEyODA1MCwgNjgxNjYsIDAsIDAsIDAsIDAsIDY5NjQ1LCAzMzIsIDExODgwOCwgMCwgNTE0MiwgMjQwNywgCi0gICAgNjk2NDMsIDQyMTk5LCAwLCA5MjQwNCwgNzQzNzMsIDAsIDU1MjE3LCAwLCA2Mzg3MCwgNDMxNjMsIDAsIDAsIDkyMzkwLCAKLSAgICA0Mjg2NywgMTgzNCwgMCwgOTI0NjEsIDY5ODE3LCAxMDk0MCwgNjUyNDksIDExOTA0MCwgODY2MiwgMCwgMCwgMjY1MiwgCi0gICAgMTIwNTI3LCA3MTY0LCAxMDc4NCwgMTk1MDkzLCA2NzY3NCwgMCwgOTIyMzMsIDkyNDgyLCAxOTQ3NDksIDc0NTYyLCAKKyAgICAwLCA2OTY5NSwgNDIyNDAsIDAsIDEyNjY1MSwgNDI4NjQsIDEyNjQ5OCwgNjQ2NjcsIDQxODY4LCAxMTg0LCAwLCA4MTUsIAorICAgIDExNDg0LCAxMjc1MzUsIDY3ODQwLCA5ODM2NDIsIDAsIDY2MTk3LCAwLCAxMDk4NiwgNjQ2ODMsIDk4Mzc3NiwgMCwgMzQ1NSwgCisgICAgMCwgMCwgOTg3OSwgMCwgMCwgNDE1OCwgMTI4MDUwLCA2ODE2NiwgMCwgMCwgMCwgMCwgNjk2NDUsIDMzMiwgMTE4ODA4LCAwLCAKKyAgICA1MTQyLCAyNDA3LCA2OTY0MywgNDIxOTksIDAsIDkyNDA0LCA3NDM3MywgMCwgNTUyMTcsIDAsIDYzODcwLCA0MzE2MywgMCwgCisgICAgMCwgOTIzOTAsIDQyODY3LCAxODM0LCAwLCA5MjQ2MSwgNjk4MTcsIDEwOTQwLCA2NTI0OSwgMTE5MDQwLCA4NjYyLCAwLCAwLCAKKyAgICAyNjUyLCAxMjA1MjcsIDcxNjQsIDEwNzg0LCAxOTUwOTMsIDY3Njc0LCAwLCA5MjIzMywgOTI0ODIsIDE5NDc0OSwgNzQ1NjIsIAogICAgIDkxNzUwNSwgMTgyOCwgNzQ0NzQsIDEyMDMyNywgNzg2MjAsIDg1MzEsIDEyNDk5LCA2MjgwLCAxMjMyNCwgMTE4ODU0LCAKICAgICA2NTIzOCwgNjgzNzQsIDQ4MzIsIDY1NTczLCAwLCA2Mjc5LCAxMjUwOCwgMTI5MDQsIDEyNTAyLCA5MTYxLCAwLCAxNjIwLCAKLSAgICA2NDQzNiwgMzYwMSwgMTk1MDk0LCAxMjgwNzMsIDAsIDYwOSwgMTE1NTUsIDAsIDEyNDk2LCAxMjc4MzksIDc0MTgxLCAKLSAgICA0MzQzLCAxMjUwNSwgMCwgMTI3ODYzLCAwLCAxMTM3NywgMjM5LCAwLCA2MzcsIDAsIDAsIDQyNjcxLCAwLCAwLCAwLCAKLSAgICA0MzU2NSwgMTI3MDgyLCAwLCAxMjY5NiwgMTI4MjU2LCAwLCAxOTQ3OTYsIDEyOTI5LCAwLCA3MTIsIDAsIDQxOTcsIDAsIAotICAgIDQyODE4LCAxMjg2ODgsIDAsIDEyMDQ5MCwgMCwgMTE5MTM3LCAxNTA2LCA0MzU2MiwgMCwgMCwgMCwgMTI2NTEsIDAsIAotICAgIDY0NjI4LCA3NDUxNywgMTIwNTgsIDc0MDg0LCA5MTc4MzgsIDc0OTQsIDAsIDQ5MjQsIDY1NTkyLCAxMTg4NDQsIDAsIAotICAgIDEyNzA4OCwgMzU1LCA5NzE5LCAxMjcwODcsIDEzMDY2LCA2NDc5NiwgMCwgMCwgMTIwMzMsIDQyMTc4LCAwLCA2OTc2MCwgCi0gICAgNDI1NzEsIDkyNjM1LCAwLCAwLCAwLCAwLCAwLCAxMjcxNzYsIDMxNzgsIDAsIDAsIDkyNzA0LCAwLCA5MDgwLCAxMjcwMDAsIAotICAgIDEyMDM1MiwgMCwgNjgyMDksIDAsIDExMDgyLCAwLCA1Njk5LCAxOTUxMDAsIDY2MDAwLCA5NDg4LCA2NTE2NiwgMTE5MTEyLCAKLSAgICAwLCAwLCAwLCAwLCAxMjgyMDgsIDAsIDUyNjUsIDY5MjM1LCAwLCAxMTQ4NywgNjc4NTgsIDEyNDY0LCAwLCA0MzA0NSwgMCwgCi0gICAgMCwgNDMzNDUsIDAsIDEwNzcwLCAxMTg5OTQsIDY4MDcsIDQ2NSwgOTgyOSwgMCwgNzQzNDgsIDAsIDQzMzQ2LCA4MTE2LCAKLSAgICA3OTUsIDAsIDAsIDEyNDYyLCAxMDkzMCwgMTA4MzEsIDAsIDExODk1MiwgNjQzNjIsIDc0MzM0LCAwLCAxMjA4MTEsIDAsIAotICAgIDEyNDY4LCA4NjA3LCAxMDA4LCAwLCAxMDA5MiwgMTk1MDc4LCA5MTc4NDIsIDY3ODU1LCA1NTI1NywgNzM3NzEsIDE3NjYsIAotICAgIDExMjgyLCAxMTk5NiwgMTgyMCwgNDU0NywgMCwgMCwgMCwgMCwgMTMyMjMsIDEyODY2NSwgNjQ1OTUsIDEyNzI5NCwgMCwgCi0gICAgOTIzMTEsIDQzNDUsIDEyNjE2LCAwLCAwLCAwLCA3NDQ2NywgMCwgMCwgMCwgNTM4MiwgMCwgMCwgMCwgMTE5MDYwLCAKLSAgICA2NDk1MywgNTQwNiwgMTk5MjAsIDkyMjE2LCA2NjUxMCwgMzU5MCwgMCwgMTEzMCwgMCwgMCwgNDIwMTYsIDExODIzLCAKLSAgICA0MzAyMywgMCwgMTE4ODk2LCA3NzQyLCAwLCAxMzI4MCwgMCwgOTMyNiwgNzM4MjYsIDUzMTAsIDc0ODEyLCA3ODU4NCwgCi0gICAgOTIyMjksIDg5NTksIDQzNTg5LCA2NzQ3LCA2NjcyMywgMCwgODU2OCwgMCwgMTIwNDk2LCA3MzgxNiwgMTIwODAzLCAwLCAKLSAgICA0MjY3MCwgMCwgMTE2MjEsIDEyNDYwLCAwLCAxMjA2MzEsIDAsIDQzMDYzLCA3NDUxOSwgMTI3MTgyLCAwLCAwLCAwLCAKLSAgICA2OTc4MywgMTE2ODksIDU0MTAsIDU3ODMsIDEwNDY4LCA4NDAzLCA1NDAwLCAxMTU5NCwgMTI4MjQ3LCAwLCAxMTg5OTAsIAotICAgIDEwNDkxLCAwLCA2NDQxMiwgMCwgMCwgNTU4NywgNDI4NjUsIDY0NDA0LCA4MjY4LCA0OTIzLCA2NTA4NiwgODk4MSwgCi0gICAgMTIzODIsIDQyMTMzLCAxMjA3NTUsIDk3MDYsIDY5NzM4LCAwLCA2NjYxMCwgMTA0NjEsIDEyMTAzLCAwLCA4NjQyLCAwLCAKLSAgICA0Mjc2NiwgMCwgNjY1NjYsIDk5ODMsIDAsIDExOTEwNSwgMCwgMCwgMCwgNzM5OCwgNDE1MTUsIDAsIDExODAyLCA4MDQxLCAKLSAgICAxNDYxLCA5MTAsIDExOTEzMywgMCwgNjc0OSwgMzY1OCwgMCwgMTIwNTI1LCAwLCA3NjE3LCAxOTQ4NDEsIDEyODg4LCAwLCAKLSAgICA2NzY2OCwgMTMxNDMsIDAsIDkxOTMsIDExMDk3LCA1NzAzLCAwLCA0MTUxNywgNDE1MDQsIDQxNTE5LCAxMDAxNiwgNjQzMDUsIAotICAgIDAsIDY1ODY0LCA2MjMsIDc4MSwgNjcwLCAxMDY2MCwgNTc2OSwgNjEzLCA3NTQzLCAxMjAyNzksIDQ3NywgNDEwODMsIAotICAgIDkyNTIxLCAwLCA1OTIsIDE1NzgsIDEyNDU5LCA0MzQ0OSwgMCwgMCwgODIyNSwgMCwgNjU0LCAxMTM0NSwgNjUzLCA2NTIsIAotICAgIDAsIDY0NywgMCwgNjMzLCAxMjA3NDQsIDAsIDAsIDEyNDgwLCA0MzI0MywgMCwgMzksIDEyNDg3LCAwLCAxMjA1MjksIAotICAgIDc0MTk5LCAxMjQ4MiwgMCwgMTI0ODksIDAsIDMxOTUsIDU1NTAsIDAsIDc4OTcsIDAsIDEyMDMsIDc0Mzk2LCAxODEzLCAKLSAgICA2NDU0NCwgNDEzMTEsIDEyMDkwLCAwLCAyODc3LCAwLCAwLCAxNjc1LCAwLCAwLCAwLCAwLCAxMDA3MCwgMTA1OTUsIDAsIAotICAgIDExOTA3NywgMCwgMCwgMCwgMCwgMCwgNDMyNDQsIDAsIDAsIDAsIDExOTU2MSwgMCwgMCwgMTk0OTIxLCAxMjgxNjAsIAotICAgIDk5MzksIDAsIDAsIDc3ODYwLCAwLCAwLCAyNzAsIDAsIDEwNzE0LCAwLCAwLCAwLCAwLCAwLCA2NTM3MiwgMCwgNzQwMzgsIAotICAgIDExOTU1OCwgNjI3MywgNjY2NzksIDM2NCwgOTU5NSwgMTk0OTA4LCAwLCAwLCA3MDcsIDAsIDAsIDkyODIsIDY2NDg5LCAKLSAgICAyMjQsIDAsIDY4NjcwLCA5MzMyLCA0OTY2LCA2ODY3NywgMCwgNjg2NDQsIDAsIDM4NDEsIDY4NjM0LCAwLCAxMDczMiwgCi0gICAgNjg2NDAsIDg1MCwgNDk3MiwgMCwgNjQ2OTksIDI5MDksIDY4NjE5LCA0NDAwOCwgNjg2MjcsIDAsIDExNTQ0LCAxMDIwMywgCi0gICAgOTYwOCwgMCwgMCwgMTE5NjIsIDE5NDY5NCwgMTI1MDcsIDExOTYsIDEyODY4NywgMTI4MzExLCA3NzcsIDEyMDE4NywgCi0gICAgNDM3NSwgNjUyNzEsIDY3Njc4LCAwLCAxMjE5OCwgMCwgNjQ4MjQsIDExOTM0MywgMCwgOTQ1NCwgNjM3NzgsIDg2NTgsIAotICAgIDQyNTI4LCA3ODAwMCwgMjcwNSwgOTE3OTc1LCA0MTUyMCwgMCwgMCwgMTE5ODYsIDc3NjUsIDQyNTAyLCA4MjgwLCAwLCAKLSAgICAyNzAxLCAwLCAwLCA1NzY3LCAwLCAwLCA5ODA5LCA4MzUzLCA2Mzc0NywgNjY3MDEsIDYzNzcyLCAwLCA2Mzc0NSwgMTc0OCwgCi0gICAgNjM3NzAsIDAsIDAsIDAsIDY1NTQyLCA2Mzc2NiwgNTUyNDQsIDMwNjEsIDAsIDYzNzY0LCA2Mzc4NywgOTA2NywgNjA5NiwgCi0gICAgMCwgNzY5NCwgMCwgNzI1NywgNjM3NjgsIDM0ODUsIDEyOTg3LCAwLCAxMjc1MjIsIDEyMDYyOCwgNjM4MDcsIDE1OTEsIDAsIAotICAgIDYzODYsIDYzNzgzLCAwLCAwLCAxMjcxNzMsIDAsIDAsIDAsIDc0NTc1LCAwLCA2NTcxOSwgMTMwODMsIDY0NTc0LCA2NTAxMiwgCi0gICAgMCwgMTY0MCwgMTI0OTUsIDY2NjkxLCA3NjI0LCAzMTM4LCAxMDk5NiwgOTIyNDcsIDE5MjIsIDAsIDEyNDk4LCAxMDk4NywgCi0gICAgMCwgMCwgMzg5NCwgNjU1NDMsIDAsIDE5NDg0MiwgMCwgNDkzLCAwLCA0MzE5NywgMTcxNywgNDIyOCwgNDc5LCAxMDMwMywgCi0gICAgNzQwMjAsIDAsIDkxNzkzNSwgMTAzMzUsIDM1MjAsIDkxNzkzMiwgMTI0OTAsIDY0MzE1LCAwLCAxMjcwMzksIDEyNDkzLCAKLSAgICA2MjMzLCA0MjY4MSwgMTAwMiwgMTI0OTEsIDAsIDY0OTExLCA5MjYxNSwgMjA5NiwgNjUxMjAsIDAsIDAsIDAsIDExNjExLCAKLSAgICAxMTYzMiwgMTI3MDQxLCA2NjIxMywgNjM4NjQsIDY2MjIxLCA2NjIyNiwgNjYyMjksIDEzMjE4LCA2NjIzMSwgNjYyMTYsIAotICAgIDg1MDcsIDY2MjM2LCA2NjIxMSwgNjYyMTgsIDkyNjcyLCA2NjI0MCwgNzgwNDEsIDY2MjMzLCA4OTI4LCAwLCA3OTA5LCAKLSAgICA2NjIzNCwgMTE2MDUsIDYzNzU5LCAwLCA2NjIwOCwgNzM5OTksIDYzNzk5LCA2MzgwMywgMjQ0LCAxMTU0MiwgMTI4OTgsIAotICAgIDEyNDk0LCA3Mzc2MSwgMTI0OTIsIDEyNjY5LCAwLCAwLCA3NDE1MywgMCwgMTI4Mjc4LCAxMjA2ODAsIDQ4ODIsIDEzMDQwLCAKLSAgICAwLCA4NjEyLCA0ODg1LCA3NDA1MywgMCwgMTMwNDIsIDQ4ODAsIDY0NjYyLCAyNDI5LCAxMzYwLCAyNDgsIDAsIDYzNzk3LCAKLSAgICA5MjM5NCwgNDIzNTgsIDAsIDcyOTIsIDAsIDYzNzU2LCA0Mjc4NiwgNjY2OTMsIDAsIDE4NzAsIDc4MDQwLCA0NzAsIAotICAgIDc4MDM4LCA3ODAzNSwgNzgwMzYsIDAsIDc4MDM0LCA0NTc5LCAxMjgwOTAsIDAsIDEyNTExLCA3NDQ1MywgMTI1MTQsIDAsIAotICAgIDc0NTc5LCA3MjM5LCA3MDAxLCA4NjIzLCAwLCAxMjgwNTIsIDEyODA0OCwgNzM3OCwgMTI1MTIsIDExNjE1LCA2MTA0LCAwLCAKLSAgICAwLCA2NTksIDYwOTgsIDAsIDEyMjM0LCAxMjczMDcsIDEyNzA2NywgODMxMSwgMTI1MTAsIDQxODAzLCAxMzAzOSwgCi0gICAgMTI3MDcyLCAxMjUxMywgMTAyMDIsIDEyNDcxLCAwLCA4NzQ3LCAwLCAwLCAwLCAyMzIzLCAwLCAyMzE5LCA3NzkxNywgCi0gICAgMTI0NzcsIDc3OTE2LCAyMzExLCAwLCA0NDE1LCAyMzcsIDYyODEsIDEyNzI4MCwgMCwgMCwgMjMwOSwgMTMxMiwgODE3MywgCi0gICAgMTI4ODcxLCAxMjQ2OSwgMCwgNzg1MDUsIDY0MzM1LCAxMDYwOSwgMCwgMTI4MTExLCA5Mzk3LCAxMTUyNCwgOTM5NSwgCi0gICAgOTM5NiwgOTM5MywgOTM5NCwgOTM5MSwgOTM5MiwgOTM4OSwgNjIwOSwgOTM4NywgOTM4OCwgNDkzMiwgOTM4NiwgOTM4MywgCi0gICAgOTM4NCwgNjc0MCwgMCwgNjU0NTEsIDgxODUsIDAsIDkxNzgzMiwgNDMwMjQsIDQzMzM2LCA2NzY1OSwgMjMxMywgMTI4MTY3LCAKLSAgICA3OTQ4LCA5MjM2LCAwLCAwLCAwLCAxMDU3MCwgNDM0NzMsIDYyODksIDEwNDg0LCAwLCAwLCAxMTk5OCwgMTIwODIsIAotICAgIDEwOTI0LCAzMTQ3LCAwLCAxMjA2ODQsIDEyNTI0LCAxMTkwODEsIDIzMTAsIDExODE4LCA5MzgxLCA5MzgyLCA5Mzc5LCAKLSAgICA5MzgwLCA5Mzc3LCA5Mzc4LCA5Mzc1LCA5Mzc2LCAxNjgzLCA5Mzc0LCAwLCA5MzcyLCAxMjQ0NCwgMCwgMCwgMTMwMTYsIAotICAgIDgyMTAsIDAsIDQyMDI5LCAxMTA3OSwgMTIzMzEsIDQzNDUxLCA0MjAzMiwgODc0NCwgNzI2LCAwLCAwLCA0MTU1LCAwLCAwLCAKLSAgICA0MjAzMCwgNTAwNywgMTI1MjIsIDQzMDg4LCAwLCA0OTUxLCAxMjc4MDUsIDEyNzI0MCwgMCwgOTkyMiwgNDMzMDksIDAsIAotICAgIDEyNTI1LCAwLCAxMjAxNiwgNjU3NzAsIDk1NDgsIDY3NjY1LCA0MDMsIDc4MjMwLCAxMjUwMywgMCwgMCwgMTEwMzAsIDAsIAotICAgIDkyNTY3LCA2NTY5MSwgNjM5OTgsIDE4MTksIDEwNDk2LCAwLCAwLCAxMTk5MjAsIDAsIDE5NDY2OCwgMCwgMTI1MDYsIDAsIAotICAgIDEyMjMxLCAwLCAxMjUwMCwgNDQwMjMsIDEyNTA5LCA2NDM5MywgNzg4MzAsIDMzODksIDEwNTg5LCA2NjA4LCA0MTA0NywgCi0gICAgMTIwMzIxLCA3ODM5NSwgNzgzOTQsIDc0MDY5LCA3Nzk5NSwgNzgzOTEsIDM2MDgsIDgyODEsIDEyMDMyMCwgMTEwNywgMCwgCi0gICAgOTA3NiwgODg2MiwgNjk3NDMsIDQxMDUyLCAxMzA4NCwgNjQ3NjYsIDQzMjE3LCA3ODAzLCAxMzIyMiwgNzQxNjUsIDc0NzgyLCAKLSAgICAxMjg4MTcsIDg1NDYsIDExNTUzLCA2Mzk5NSwgMTMxNzcsIDkwNDMsIDYzMDMsIDAsIDQ5OCwgNjQ0NzEsIDEyMDMyNCwgCisgICAgNjQ0MzYsIDM2MDEsIDE5NTA5NCwgMTI4MDczLCA5ODM1NjIsIDYwOSwgMTE1NTUsIDk4MzA5OSwgMTI0OTYsIDEyNzgzOSwgCisgICAgNzQxODEsIDQzNDMsIDEyNTA1LCAwLCAxMjc4NjMsIDAsIDExMzc3LCAyMzksIDAsIDYzNywgMCwgMCwgNDI2NzEsIDAsIDAsIAorICAgIDAsIDQzNTY1LCA3MTMwNiwgMTI2NDkzLCAxMjY5NiwgMTI4MjU2LCAwLCA5NDA2MiwgMTI5MjksIDAsIDcxMiwgMCwgNDE5NywgCisgICAgOTgzMjA0LCA0MjgxOCwgMTI2NjMyLCAwLCAxMjA0OTAsIDAsIDExOTEzNywgMTUwNiwgNDM1NjIsIDAsIDkyNDkxLCAwLCAKKyAgICAxMjY1MSwgMCwgNjQ2MjgsIDc0NTE3LCAxMjA1OCwgNzQwODQsIDkxNzgzOCwgNzQ5NCwgMCwgNDkyNCwgNjU1OTIsIAorICAgIDExODg0NCwgMCwgMTI3MDg4LCAzNTUsIDk3MTksIDEyNzA4NywgMTMwNjYsIDY0Nzk2LCAwLCAwLCAxMjAzMywgNDIxNzgsIAorICAgIDAsIDY5NzYwLCA0MjU3MSwgOTI2MzUsIDAsIDAsIDAsIDAsIDAsIDEyNzE3NiwgMzE3OCwgMCwgMCwgOTI3MDQsIDAsIAorICAgIDkwODAsIDEyNzAwMCwgMTIwMzUyLCAwLCA2ODIwOSwgMCwgMTEwODIsIDAsIDU2OTksIDE5NTEwMCwgNjYwMDAsIDk0ODgsIAorICAgIDY1MTY2LCAxMTkxMTIsIDAsIDAsIDAsIDAsIDcxMzEzLCAwLCA1MjY1LCA2OTIzNSwgMCwgMTE0ODcsIDY3ODU4LCAxMjQ2NCwgCisgICAgMCwgNDMwNDUsIDAsIDAsIDQzMzQ1LCAwLCAxMDc3MCwgMTE4OTk0LCA2ODA3LCA0NjUsIDk4MjksIDAsIDc0MzQ4LCAwLCAKKyAgICA0MzM0NiwgODExNiwgNzk1LCAwLCAwLCAxMjQ2MiwgMTA5MzAsIDEwODMxLCAwLCAxMTg5NTIsIDY0MzYyLCA3NDMzNCwgCisgICAgOTgzNjAyLCAxMjA4MTEsIDAsIDEyNDY4LCA4NjA3LCAxMDA4LCAwLCAxMDA5MiwgMTk1MDc4LCA5MTc4NDIsIDY3ODU1LCAKKyAgICA1NTI1NywgNzM3NzEsIDE3NjYsIDExMjgyLCAxMTk5NiwgMTgyMCwgNDU0NywgMCwgMCwgMCwgMCwgMTMyMjMsIDEyODY2NSwgCisgICAgNjQ1OTUsIDEyNzI5NCwgMCwgOTIzMTEsIDQzNDUsIDEyNjE2LCAwLCAwLCAwLCA3NDQ2NywgMCwgMCwgMCwgNTM4MiwgMCwgCisgICAgMCwgMCwgMTE5MDYwLCA2NDk1MywgNTQwNiwgMTk5MjAsIDY5ODk3LCA2NjUxMCwgMzU5MCwgMTk0ODY0LCAxMTMwLCAwLCAwLCAKKyAgICA0MjAxNiwgMTE4MjMsIDQzMDIzLCAwLCAxMTg4OTYsIDc3NDIsIDAsIDEzMjgwLCA3MTMyMywgOTMyNiwgNzM4MjYsIDUzMTAsIAorICAgIDc0ODEyLCA3ODU4NCwgOTIyMjksIDg5NTksIDQzNTg5LCA2NzQ3LCA2NjcyMywgMCwgODU2OCwgMCwgMTIwNDk2LCA3MzgxNiwgCisgICAgMTIwODAzLCA5ODM4MzksIDQyNjcwLCAwLCAxMTYyMSwgMTI0NjAsIDAsIDEyMDYzMSwgMCwgNDMwNjMsIDc0NTE5LCAKKyAgICAxMjcxODIsIDAsIDczOTE3LCA3ODQzLCA2OTc4MywgMTE2ODksIDU0MTAsIDU3ODMsIDEwNDY4LCA4NDAzLCA1NDAwLCAKKyAgICAxMTU5NCwgMTI4MjQ3LCAwLCAxMTg5OTAsIDEwNDkxLCA2OTg0MiwgNjQ0MTIsIDAsIDAsIDU1ODcsIDQyODY1LCA2NDQwNCwgCisgICAgODI2OCwgNDkyMywgNjUwODYsIDg5ODEsIDEyMzgyLCA0MjEzMywgMTIwNzU1LCA5NzA2LCA2OTczOCwgMCwgNjY2MTAsIAorICAgIDEwNDYxLCAxMjEwMywgMCwgODY0MiwgMCwgNDI3NjYsIDk4Mzg1NywgMjIxMCwgOTk4MywgMCwgOTQwMDksIDAsIDAsIDAsIAorICAgIDczOTgsIDQxNTE1LCAwLCAxMTgwMiwgODA0MSwgMTQ2MSwgOTEwLCAxMTkxMzMsIDAsIDY3NDksIDM2NTgsIDkzOTY0LCAKKyAgICAxMjA1MjUsIDAsIDc2MTcsIDE5NDg0MSwgMTI4ODgsIDEyNzk4MywgNjc2NjgsIDEzMTQzLCAwLCA5MTkzLCAxMTA5NywgCisgICAgNTcwMywgMCwgNDE1MTcsIDQxNTA0LCA0MTUxOSwgMTAwMTYsIDY0MzA1LCAwLCA2NTg2NCwgNjIzLCA3ODEsIDY3MCwgCisgICAgMTA2NjAsIDU3NjksIDYxMywgNzU0MywgMTIwMjc5LCA0NzcsIDQxMDgzLCA5MjUyMSwgMCwgNTkyLCAxNTc4LCAxMjQ1OSwgCisgICAgNDM0NDksIDAsIDAsIDgyMjUsIDAsIDY1NCwgMTEzNDUsIDY1MywgNjUyLCAwLCA2NDcsIDAsIDYzMywgMTIwNzQ0LCAwLCAKKyAgICAxMjY0NzIsIDEyNDgwLCA0MzI0MywgMCwgMzksIDEyNDg3LCAwLCAxMjA1MjksIDc0MTk5LCAxMjQ4MiwgMCwgMTI0ODksIDAsIAorICAgIDMxOTUsIDU1NTAsIDk4MzU1NCwgNzg5NywgMCwgMTIwMywgNzQzOTYsIDE4MTMsIDY0NTQ0LCA0MTMxMSwgMTIwOTAsIDAsIAorICAgIDI4NzcsIDAsIDAsIDE2NzUsIDY5ODQwLCAwLCAwLCAwLCAxMDA3MCwgMTA1OTUsIDAsIDExOTA3NywgMTk0Nzc3LCAKKyAgICA5ODM2MTEsIDAsIDAsIDAsIDQzMjQ0LCAwLCAwLCA5ODM5MDcsIDExOTU2MSwgOTgzMDc4LCAwLCAxOTQ5MjEsIDEyODE2MCwgCisgICAgOTkzOSwgMCwgOTgzMTUxLCA3Nzg2MCwgMCwgMCwgMjcwLCAwLCAxMDcxNCwgMCwgMCwgMCwgMCwgMCwgNjUzNzIsIDAsIAorICAgIDc0MDM4LCAxMTk1NTgsIDYyNzMsIDY2Njc5LCAzNjQsIDk1OTUsIDE5NDkwOCwgMCwgMCwgNzA3LCAwLCAwLCA5MjgyLCAKKyAgICA2NjQ4OSwgMjI0LCAwLCA2ODY3MCwgOTMzMiwgNDk2NiwgNjg2NzcsIDAsIDY4NjQ0LCAwLCAzODQxLCA2ODYzNCwgMCwgCisgICAgMTA3MzIsIDY4NjQwLCA4NTAsIDQ5NzIsIDAsIDEyODkwLCAyOTA5LCA2ODYxOSwgNDQwMDgsIDY4NjI3LCA5ODM3MDksIAorICAgIDExNTQ0LCAxMDIwMywgOTYwOCwgMCwgMCwgMTE5NjIsIDE5NDY5NCwgMTI1MDcsIDExOTYsIDEyODY4NywgMTI4MzExLCAKKyAgICA3NzcsIDEyMDE4NywgNDM3NSwgNjUyNzEsIDY3Njc4LCAwLCAxMjE5OCwgMCwgNjQ4MjQsIDExOTM0MywgOTgzMjMwLCAKKyAgICA5NDU0LCA2Mzc3OCwgODY1OCwgNDI1MjgsIDc4MDAwLCAyNzA1LCA5MTc5NzUsIDQxNTIwLCAwLCAwLCAxMTk4NiwgNzc2NSwgCisgICAgNDI1MDIsIDgyODAsIDc0NTIwLCAyNzAxLCAwLCAxMjcwMDIsIDU3NjcsIDAsIDAsIDk4MDksIDgzNTMsIDYzNzQ3LCAKKyAgICA2NjcwMSwgNjM3NzIsIDk4MzgwNSwgNjM3NDUsIDE3NDgsIDYzNzcwLCAwLCAwLCAwLCA2NTU0MiwgNjM3NjYsIDU1MjQ0LCAKKyAgICAzMDYxLCAwLCA2Mzc2NCwgNjM3ODcsIDkwNjcsIDYwOTYsIDAsIDc2OTQsIDAsIDcyNTcsIDYzNzY4LCAzNDg1LCAxMjk4NywgCisgICAgMCwgMTI3NTIyLCAxMjA2MjgsIDYzODA3LCAxNTkxLCAwLCA2Mzg2LCA2Mzc4MywgMCwgMCwgOTI1MzUsIDAsIDAsIDAsIAorICAgIDc0NTc1LCAwLCA2NTcxOSwgMTMwODMsIDY0NTc0LCA2NTAxMiwgMCwgMTY0MCwgMTI0OTUsIDY2NjkxLCA3NjI0LCAzMTM4LCAKKyAgICAxMDk5NiwgOTIyNDcsIDE5MjIsIDAsIDEyNDk4LCAxMDk4NywgNjk5MzYsIDY5OTM5LCAzODk0LCA2NTU0MywgMCwgCisgICAgMTk0ODQyLCA5ODM1ODgsIDQ5MywgMCwgNDMxOTcsIDE3MTcsIDQyMjgsIDQ3OSwgMTAzMDMsIDc0MDIwLCAwLCA5MTc5MzUsIAorICAgIDEwMzM1LCAzNTIwLCA5MTc5MzIsIDEyNDkwLCA2NDMxNSwgMCwgMTI3MDM5LCAxMjQ5MywgNjIzMywgNDI2ODEsIDEwMDIsIAorICAgIDEyNDkxLCAwLCA2NDkxMSwgOTI2MTUsIDIwOTYsIDY1MTIwLCAwLCA3ODIxOSwgOTgzMDgxLCAxMTYxMSwgMTE2MzIsIAorICAgIDEyNzA0MSwgNjYyMTMsIDYzODY0LCA2NjIyMSwgNjYyMjYsIDY2MjI5LCAxMzIxOCwgNjYyMzEsIDY2MjE2LCA4NTA3LCAKKyAgICA2NjIzNiwgNjYyMTEsIDY2MjE4LCA5MjY3MiwgNjYyNDAsIDc4MDQxLCA2NjIzMywgODkyOCwgOTgzNTUyLCA3OTA5LCAKKyAgICA2NjIzNCwgMTE2MDUsIDYzNzU5LCA5ODM2NDUsIDY2MjA4LCA3Mzk5OSwgNjM3OTksIDYzODAzLCAyNDQsIDExNTQyLCAKKyAgICAxMjg5OCwgMTI0OTQsIDczNzYxLCAxMjQ5MiwgMTI2NjksIDAsIDAsIDc0MTUzLCAwLCAxMjgyNzgsIDEyMDY4MCwgNDg4MiwgCisgICAgMTMwNDAsIDAsIDg2MTIsIDQ4ODUsIDc0MDUzLCAwLCAxMzA0MiwgNDg4MCwgNjQ2NjIsIDI0MjksIDEzNjAsIDI0OCwgMCwgCisgICAgNjM3OTcsIDkyMzk0LCA0MjM1OCwgMCwgNzI5MiwgMCwgNjM3NTYsIDQyNzg2LCA2NjY5MywgMCwgMTg3MCwgNzgwNDAsIAorICAgIDQ3MCwgNzgwMzgsIDc4MDM1LCA3ODAzNiwgNzAwMjgsIDc4MDM0LCA0NTc5LCAxMjgwOTAsIDAsIDEyNTExLCA3NDQ1MywgCisgICAgMTI1MTQsIDAsIDc0NTc5LCA3MjM5LCA3MDAxLCA4NjIzLCA5NDAxMSwgMTI4MDUyLCAxMjgwNDgsIDczNzgsIDEyNTEyLCAKKyAgICAxMTYxNSwgNjEwNCwgMCwgMCwgNjU5LCA2MDk4LCAwLCAxMjIzNCwgMTI3MzA3LCAxMjcwNjcsIDgzMTEsIDEyNTEwLCAKKyAgICA0MTgwMywgMTMwMzksIDEyNzA3MiwgMTI1MTMsIDEwMjAyLCAxMjQ3MSwgMCwgODc0NywgOTgzOTExLCAwLCAwLCAyMzIzLCAKKyAgICAwLCAyMzE5LCA3NzkxNywgMTI0NzcsIDc3OTE2LCAyMzExLCAwLCA0NDE1LCAyMzcsIDYyODEsIDEyNzI4MCwgMCwgMCwgCisgICAgMjMwOSwgMTMxMiwgODE3MywgMTI4ODcxLCAxMjQ2OSwgMCwgNzg1MDUsIDY0MzM1LCAxMDYwOSwgMCwgMTI4MTExLCA5Mzk3LCAKKyAgICAxMTUyNCwgOTM5NSwgOTM5NiwgOTM5MywgOTM5NCwgOTM5MSwgOTM5MiwgOTM4OSwgNjIwOSwgOTM4NywgOTM4OCwgNDkzMiwgCisgICAgOTM4NiwgOTM4MywgOTM4NCwgNjc0MCwgMCwgNjU0NTEsIDgxODUsIDAsIDkxNzgzMiwgNDMwMjQsIDQzMzM2LCA2NzY1OSwgCisgICAgMjMxMywgMTI4MTY3LCA3OTQ4LCA5MjM2LCA5MjU3MSwgMCwgMCwgMTA1NzAsIDQzNDczLCA2Mjg5LCAxMDQ4NCwgMCwgMCwgCisgICAgMTE5OTgsIDEyMDgyLCAxMDkyNCwgMzE0NywgMCwgMTIwNjg0LCAxMjUyNCwgMTE5MDgxLCAyMzEwLCAxMTgxOCwgOTM4MSwgCisgICAgOTM4MiwgOTM3OSwgOTM4MCwgOTM3NywgOTM3OCwgOTM3NSwgOTM3NiwgMTY4MywgOTM3NCwgOTgzNzY5LCA5MzcyLCAKKyAgICAxMjQ0NCwgMCwgMCwgMTMwMTYsIDgyMTAsIDk4Mzk0OSwgNDIwMjksIDExMDc5LCAxMjMzMSwgNDM0NTEsIDQyMDMyLCAKKyAgICA4NzQ0LCA3MjYsIDAsIDk4MzgyOCwgNDE1NSwgMCwgMCwgNDIwMzAsIDUwMDcsIDEyNTIyLCA0MzA4OCwgMCwgNDk1MSwgCisgICAgMTI3ODA1LCAxMjcyNDAsIDAsIDk5MjIsIDQzMzA5LCA5ODM4MzIsIDEyNTI1LCA5ODM0NjMsIDEyMDE2LCA2NTc3MCwgCisgICAgOTU0OCwgNjc2NjUsIDQwMywgNzgyMzAsIDEyNTAzLCAwLCAwLCAxMTAzMCwgMCwgOTI1NjcsIDY1NjkxLCA2Mzk5OCwgCisgICAgMTgxOSwgMTA0OTYsIDAsIDAsIDExOTkyMCwgMCwgMTk0NjY4LCAwLCAxMjUwNiwgMCwgMTIyMzEsIDAsIDEyNTAwLCAKKyAgICA0NDAyMywgMTI1MDksIDY0MzkzLCA3ODgzMCwgMzM4OSwgMTA1ODksIDY2MDgsIDQxMDQ3LCAxMjAzMjEsIDc4Mzk1LCAKKyAgICA3ODM5NCwgNzQwNjksIDc3OTk1LCA3ODM5MSwgMzYwOCwgODI4MSwgMTIwMzIwLCAxMTA3LCAwLCA5MDc2LCA4ODYyLCAKKyAgICA2OTc0MywgNDEwNTIsIDEzMDg0LCA2NDc2NiwgNDMyMTcsIDc4MDMsIDEzMjIyLCA3NDE2NSwgNzQ3ODIsIDEyNjUxNCwgCisgICAgODU0NiwgMTE1NTMsIDYzOTk1LCAxMzE3NywgOTA0MywgNjMwMywgOTgzOTM4LCA0OTgsIDY0NDcxLCAxMjAzMjQsIAogICAgIDEyODU2NywgMTI1MjksIDgwNDIsIDAsIDIzNDQsIDEyNTI4LCA4MDMxLCAyNDE0LCAwLCA2OTcxOSwgMzIzMSwgMCwgNjQyMiwgCiAgICAgNjY1MTIsIDY5NjUzLCAxMjUzMCwgMjUzNywgNzg0MDUsIDQxNDI5LCAxMjY1OCwgMTMwMzYsIDY1NzcyLCAwLCA3ODczOCwgCiAgICAgNDE0MzMsIDQ3MTksIDQ2OSwgMCwgNDM2MywgMzMxMywgNDE0MjgsIDc4NDA3LCAyMDIzLCAxNzcyLCA3ODIyNCwgNzgyMjUsIAogICAgIDY1NzA2LCAxMDA1MSwgNjQ4MTIsIDc4MjIwLCAwLCA5OTIwLCAxMjIxNSwgMCwgNDkzMSwgMTk1MSwgMTI0OTcsIDExOTM2MywgCiAgICAgOTYwNywgMCwgOTY2MywgMCwgMTE5NjM0LCA2NTAzLCA0MTExMCwgMCwgMTQ5MSwgMCwgMCwgMTI3MzA0LCA0MTA2MSwgMCwgCi0gICAgMCwgMTI3MTg3LCA2NTAyNiwgNDE5OTMsIDQxNTA5LCAxMTA0NSwgNjUwMjgsIDc4NjAyLCA2NjQ3NiwgNDExMDgsIDk3MzgsIAotICAgIDQxOTk1LCAxMDc1LCAxOTU4LCAxMjUzNSwgNDE5OTIsIDQxNTA2LCAwLCA0MTY4NywgMCwgMTIwNzE3LCAxMjc3NzYsIAotICAgIDk5NDAsIDEyNzI5OSwgNzY5MiwgMCwgODAwOCwgNDExMzEsIDMzMCwgODU2NiwgNjUwODMsIDQxMTMzLCA5ODE2LCAKLSAgICAxMjgwNzQsIDEyNTMyLCA3ODU1MCwgNzg1NDYsIDM1MDgsIDEyNzA1OCwgNDMyMzUsIDAsIDEyNzI5OCwgNjQxMzksIAorICAgIDE5NDgzOCwgMTI3MTg3LCA2NTAyNiwgNDE5OTMsIDQxNTA5LCAxMTA0NSwgNjUwMjgsIDc4NjAyLCA2NjQ3NiwgNDExMDgsIAorICAgIDk3MzgsIDQxOTk1LCAxMDc1LCAxOTU4LCAxMjUzNSwgNDE5OTIsIDQxNTA2LCAwLCA0MTY4NywgMCwgMTIwNzE3LCAKKyAgICAxMjc3NzYsIDk5NDAsIDEyNzI5OSwgNzY5MiwgOTgzODI0LCA4MDA4LCA0MTEzMSwgMzMwLCA4NTY2LCA2NTA4MywgNDExMzMsIAorICAgIDk4MTYsIDEyNjUxNywgMTI1MzIsIDc4NTUwLCA3ODU0NiwgMzUwOCwgMTI3MDU4LCA0MzIzNSwgMCwgMTI3Mjk4LCA2NDEzOSwgCiAgICAgNzgyMzEsIDY0MTEsIDEyOTEwLCA3ODU1NCwgNjY2NDQsIDEzMDI4LCA2NzM3LCAxMjUzNywgMCwgMCwgNjQxMzYsIDEyNTM2LCAKLSAgICAyMzUwLCAxMzAyOSwgNzgyMzMsIDAsIDAsIDEzMDMwLCA2NzAyLCA0NTI3LCAwLCAxMjUzOCwgMTI4ODEwLCAwLCA2NTU5OSwgCi0gICAgNjU3MTcsIDk5NjYsIDAsIDQ5NDgsIDEyNDg0LCA0MDMyLCAxMjgxNDksIDEyNjIzLCAwLCA2MjA3LCAwLCA2MTE3LCAKLSAgICA2NTkzMCwgODQxMiwgMCwgNzQzOCwgMTI5NiwgMjMyNSwgNDE1MTEsIDAsIDEwMTQ5LCA3NDExOCwgMCwgMTI3Mjg2LCAKLSAgICAxMjQ4MSwgMCwgMTI0ODgsIDAsIDAsIDQxNTU2LCA2NDQxNCwgMTE4ODAyLCAyMzU0LCAxMjg1NzEsIDczNzY2LCAwLCAKLSAgICA2Mjk1LCA5MDEsIDQxNTEwLCA3OTUzLCAwLCA2NTAzMiwgNDE1MTMsIDAsIDExOTI3LCA2NjU4NCwgNzg1NTksIDc4NTYwLCAKLSAgICA3ODU1NywgNzg1NTgsIDAsIDc4NTU2LCA4NDgsIDk4NjgsIDAsIDY0MjQsIDc4NTY4LCAxMTkzMzgsIDc4NTY1LCA3NDAzMSwgCi0gICAgNzg1NjMsIDc4NTY0LCAyMzUyLCA3ODU3MiwgODkzLCA2NDU3NiwgMTEyODksIDE0MDcsIDAsIDAsIDEzMDI2LCA2NzYyLCAKLSAgICA3ODU3OSwgNzg1ODAsIDEzMDIzLCA4OTAzLCA5Nzc3LCA2NjcxNSwgMTg3MSwgODA5OSwgMCwgMCwgMTM0MywgMCwgMCwgCi0gICAgOTMyNSwgNjgxOCwgNjI4MywgMTE3MzgsIDAsIDAsIDAsIDExNzQxLCAwLCAwLCA5MjE2LCA4MjYzLCAxMTI3OSwgMTk0NzUyLCAKLSAgICAwLCAxOTQ3NTQsIDEzMDIxLCA2NDQ5NCwgMzEzNiwgMTk0NzU4LCAxOTQ3NTcsIDE5NDc2MCwgMTMwMjIsIDQyNzM3LCAKLSAgICA5OTU2LCAwLCAwLCA3NDU1MiwgMTAwMTQsIDAsIDQxMjYwLCAxMTkzNDAsIDEzMDIwLCAxMDAyNCwgMTk0NzY0LCAxOTQ3NjcsIAotICAgIDc0MzQwLCA2OTY4MSwgMCwgNjQ5NDUsIDgwMjksIDAsIDAsIDAsIDMzMzUsIDAsIDAsIDk3NzYsIDEyMDUyNiwgMTk0NzQ4LCAKLSAgICA1MjE1LCA0MjY0NCwgMzMzMywgMTYzMiwgMTk0NzUxLCA2NDg0OSwgMzM0MiwgNzg1ODIsIDUzNjMsIDEyOTU3LCA3ODU4MSwgCi0gICAgNDE1NiwgMCwgMCwgNjQyMSwgNzg1OTEsIDE2MTEsIDc4NTg5LCAxMzAxOCwgNzQyNTcsIDc4NTg4LCA3NDU0MiwgMzMzNywgCi0gICAgNDUzNywgNjc4OTUsIDExNzM2LCAwLCA2ODYwOCwgNjQ4MiwgNDIxNCwgNzM3OTAsIDExOTQ1LCAwLCAxMzA0NiwgODgzOCwgCi0gICAgNDI1LCA0MDI1LCAxMDcwOSwgNzg1OTUsIDIxMDgsIDIzOTIsIDEzMDQ3LCAwLCAwLCA2ODE5LCAxMzA0OSwgNjQ5OSwgCi0gICAgOTIyNDMsIDEyNDI0LCA2ODYxNCwgNzM5NDQsIDEzMDUwLCA5OTI0LCAxOTQ3NDUsIDY1MDcsIDEyNzkxOSwgMCwgMTI4MDY5LCAKLSAgICAzMjc3LCA4OTI5LCA0OTQ3LCA0MTA1NSwgMCwgMTk0NzIyLCAxOTQ3MjEsIDE5NDcyNCwgMTMwNDUsIDY0NjI2LCA2NjAzNCwgCi0gICAgNzc1MSwgMTk0NzI3LCA4MzcxLCAxOTQ3MjksIDM5OTcsIDEyODA2LCA4NzY4LCAxMzA0NCwgMCwgMTI0MjAsIDQwMjQsIAotICAgIDE5NDczMCwgNDEwNTQsIDEwNzgsIDk3NTcsIDY5NzM2LCA0MTA1NywgMCwgMCwgMCwgMCwgMCwgOTIyMTAsIDkyNDExLCAwLCAKLSAgICA0MTQ5NiwgMCwgOTE2NSwgMTU3MiwgMTE5MTEsIDAsIDExODg0MiwgMjM0NiwgMTMyNzAsIDg5NTgsIDAsIDk2NDYsIDM3NzMsIAotICAgIDQzMTgzLCA2NDAxLCA1ODMxLCAwLCAwLCAxMzA0MywgODA1NiwgOTI0OTQsIDY1NjgxLCAyMDgsIDEyNzM4MiwgNDE1MTQsIAotICAgIDAsIDAsIDAsIDEwNjk5LCA2NDA4LCA5MjIyNywgNzgyNSwgNTY2MSwgMCwgMTIwNjMwLCAzNjAzLCA0MTEwOSwgMjM5OCwgCi0gICAgMzU0OCwgMCwgMCwgMTE5OTMzLCAwLCAzMTE1LCA5OTE4LCAwLCAxMTMyMSwgNDI5MTIsIDAsIDAsIDE5NDcyNiwgNDg3NiwgCi0gICAgNjU4MDQsIDAsIDAsIDQzNDY4LCAwLCA0MTU1OCwgNDE0NzEsIDczOTUwLCA4MTU4LCA5OTQ0LCA0MTQ3MiwgMTIwMjk4LCAKLSAgICAxMzA1MSwgNzg2ODksIDMxNDMsIDE5NDY3NCwgNjcwMSwgNDE1NTksIDE4OTYsIDY2MjU2LCAxMzA1MiwgMTk0NjgwLCAKLSAgICA1NjY1LCAwLCAxMTkwNzEsIDcwMjUsIDYzOTc0LCAwLCA3NDM1MiwgNzQxNjEsIDQxNTQsIDk4NjMsIDQzNTUwLCAxMjMxMCwgCi0gICAgNTY2MiwgNDIzODIsIDE5NDY4NiwgNzM5MjQsIDExMjEsIDE5NDY2NSwgNjM5NTksIDAsIDk5NDIsIDEzMjMxLCAwLCAKLSAgICA2NDc1MiwgNDczMiwgMTk0NjY2LCAxMTU5NiwgMTE5OTMxLCA2NTE4NywgMTYyNiwgNjM5ODMsIDEwMTEwLCA2NDc3MiwgCi0gICAgNDIwMjQsIDY0MjAsIDQyMDI4LCAwLCAxMDUwOSwgMjc5NSwgNDkxMCwgMTk0NzI4LCA2OTIzMSwgNjQ3NTMsIDYyNzUsIAotICAgIDkxNzgwOCwgMTE4ODMwLCA2Mzk3OCwgMTEwNDQsIDMyMjksIDY0MjMsIDQyNzc0LCAwLCAwLCAwLCAxMjgyMywgMjMzMSwgCi0gICAgOTE3ODEwLCA0MjAyNiwgNjEzNywgMCwgNzUyNCwgMCwgOTE3ODA5LCA4MzQ2LCAwLCA4MzM4LCAxMjgzMTUsIDY1MDQzLCAwLCAKLSAgICA4MjIsIDEyNzk4NCwgOTkwMywgNjQ3MjEsIDQyNzIyLCAxOTQ2NTYsIDE5NDY1OSwgNzg2NTUsIDc4NjYxLCAxOTQ2NjAsIAotICAgIDc4NjYyLCA0MTI2NSwgNTMxMSwgMTc5NSwgOTY1LCAxMTg3OTEsIDEwNTg3LCA3ODA1NSwgMTEyNzgsIDc4NjMyLCAKLSAgICAxOTQ2NDAsIDAsIDEyOTQ2LCAxOTQ2NDEsIDExOTM0MSwgMTIwMzQ5LCA2Mjk0LCAzMTQ0LCAxOTQ2NDgsIDE5NDY0NywgCi0gICAgNjUwMTksIDE5NDY0OSwgNzM5OTAsIDAsIDAsIDc0OCwgNDEwNjcsIDIzMzAsIDUzNSwgMzE0OCwgMTIzNzUsIDE5NDY1MiwgCi0gICAgMTk0NjI5LCAxMDU1NiwgMjQ3NSwgMTIzODgsIDQ4ODksIDg5NjgsIDY3ODYzLCAzNTkzLCAwLCAwLCAyMzQyLCAwLCAKLSAgICAxOTQ2MzQsIDY1MjA2LCA0ODk0LCAxOTQ2MzUsIDQ4OTAsIDE5NDYzNywgOTE3ODA0LCA1ODEsIDQ4OTMsIDAsIDY1NzEsIAotICAgIDY1NTQ1LCA0ODg4LCA0MTU3LCA3ODA0OCwgNzgwNDksIDc4MDQ2LCA3ODA0NywgMCwgMTAxMTksIDY0MTUsIDQyODkzLCAwLCAKLSAgICA2OTcwMiwgMCwgMCwgMTEzNzUsIDY0NzQ2LCAyMzMyLCA3ODA2MywgNDEyLCA3ODA2MSwgNjQ5MzIsIDQyODgwLCA0MzU4NywgCi0gICAgMCwgMCwgMCwgMCwgNjUxOTcsIDc4MDY2LCAxMjIwMywgNzgwNjQsIDc4MDY1LCA4OTEzLCA2NTg1NCwgNDg3NSwgNjU4MTEsIAotICAgIDEyMDM4MSwgMTIwMzg5LCAxMTg4ODgsIDkzNDQsIDg4MjYsIDEyMDM4NiwgMTIwMzk1LCAxMzEwNCwgNzQ3ODEsIDExOTk3LCAKLSAgICAxMjAzOTMsIDc4MDc1LCAwLCAzMTM0LCAwLCA2NTY5NiwgOTIzMzEsIDAsIDY2MjE3LCAwLCA4MzM0LCAxMTkzNDQsIDAsIAotICAgIDM0NDksIDAsIDAsIDc4NDE0LCA3ODQxMywgMTE4OTUwLCA3NDAxMSwgMCwgMCwgMCwgMCwgMTkwOCwgMTIwMTY3LCA0MzI4LCAKLSAgICAxMDczNCwgMTI3MDE0LCAwLCAxMjc5MTQsIDc4MDQsIDc4MjcyLCAxMDgxMSwgNjI1MCwgMTEzMzksIDQ5MTQsIDExMzY3LCAKLSAgICAwLCA3ODA1NCwgNDkxNywgNzQ1MTYsIDc0MjA4LCA2NDI4NSwgNDkxMiwgNTQ2NCwgMTI3ODM2LCAxMTg4OTMsIDIzNjEsIAotICAgIDc5NzEsIDc4MDcyLCA3ODA3MywgNTUyNDMsIDc4MDcxLCAwLCA4MDg2LCA3NDMxNywgNjcwNywgODMxOSwgMjMxMiwgCi0gICAgNDA5NzcsIDEwOTYwLCA0MDk2MiwgODMwNSwgMTI1NzMsIDAsIDQwOTgwLCAwLCAxMzIwMiwgMCwgMTI1ODIsIDc4MjgyLCAwLCAKLSAgICAwLCA0MjQzOCwgNTUyMjEsIDYyODgsIDc4MjgwLCAxMjc5NDYsIDU2NTMsIDQyNDAwLCAxMDg5MSwgNzY5OCwgNTY1OCwgCi0gICAgNzQwNDUsIDEyMDE2NSwgMCwgMCwgNDkxMywgMCwgMCwgMCwgNDIzMjYsIDEyODE5NCwgMTI3MjgsIDkyNjg1LCA0MjQ3OCwgCi0gICAgMjMyNywgMCwgMTI1NjMsIDQyMjg3LCAxMjcwNSwgMCwgMCwgMTI1ODgsIDg4MjEsIDYxNTMsIDI4NjcsIDE5NDcwOCwgCi0gICAgNjYzMTIsIDY5OCwgMTI4MDA3LCAxOTQ2MDYsIDEwMzU2LCA3NDA3NSwgMTk0NzEzLCA2NTEsIDEyNjQxLCAwLCAwLCAwLCAwLCAKLSAgICA0MTU1MiwgNjUxMTUsIDc4NDY1LCA3ODQ2NywgNzg0NjMsIDc4NDY0LCAxMjg4NTEsIDc4NDYxLCAxOTQ2OTcsIDc0MzU2LCAKLSAgICA5MjYyNiwgNDcxNiwgNDMyNzcsIDAsIDc4NDc0LCAxMjM0MCwgMTIwNTY4LCAwLCAxOTQ3MDAsIDU1MjY0LCA0MTIxMSwgCi0gICAgMTIwNjc2LCA4NzAzLCA1NDYyLCA5MTc2MjksIDAsIDEwMTAxLCAwLCAwLCA4NDc5LCA0MTUxLCA0MTkzMywgMCwgMCwgCi0gICAgNjYyNTQsIDEyMDgyMSwgMCwgMCwgMTI4NjU0LCAwLCAxMTkxOTQsIDc0MDUwLCA5MjcwMSwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTIyNzgsIDAsIDAsIDAsIDI3MDAsIDEyNTc2LCA3ODQyLCAxMjg5OSwgMCwgMCwgMjY5OSwgMCwgNzM4NDUsIDI5ODUsIAotICAgIDkyNTY4LCAwLCA5MTc4NDUsIDEyMTkyLCAxMTkzMTQsIDAsIDExOTMxMiwgOTgyNywgMTE5MzEwLCAxMTkzMTEsIDExOTMwOCwgCi0gICAgMTE5MzA5LCAxMTkzMDYsIDExNDgxLCA0MTIxMCwgMTE5MzA1LCAwLCAzNSwgNzg0ODEsIDc4NDgyLCA2NjY5NCwgNjg0NzksIAotICAgIDc4NDc3LCA3ODQ3OCwgNDM1OTYsIDYwOTAsIDY0MjU3LCA3ODEyLCAxMDUzNCwgMCwgNzg0ODUsIDczODQ4LCA3ODQ4MywgCi0gICAgNDI3MiwgMCwgNDA5NjcsIDQwOTY0LCA5MTc4MjUsIDEyNzA0LCA3ODQ4NywgNDMzMDYsIDAsIDY0NDk3LCAxMjEzOCwgCi0gICAgNzkzMCwgMCwgNDMzMDMsIDY4MjE2LCAwLCA5MTc4MjYsIDUyNDQsIDQxODksIDEyNzA5OCwgNjc1OTYsIDEyNzUwNCwgCi0gICAgNDE4OCwgMTg3OSwgMCwgOTY4LCAwLCA0Mzc0MywgMCwgODg3MywgMCwgMCwgOTE3ODI3LCA2NTU1NSwgMTI1NzQsIDAsIDAsIAotICAgIDAsIDc0NDkwLCAxMjcwOTksIDQzNjU3LCAwLCAwLCAwLCA0MjY4MiwgMTI1NzgsIDEyNzIwLCAwLCA0MTIyNywgMCwgCi0gICAgMTIzNDYsIDEyNzEwMSwgNjQ4NDgsIDAsIDAsIDcyNTEsIDAsIDAsIDExODg1MCwgMTE5MTQxLCAxMjg1NDYsIDY2MDE1LCAwLCAKLSAgICA5NTksIDg4ODUsIDEyNTY0LCA2NjQ1NywgNzg4MDgsIDk0NjksIDk2MzIsIDkyMzIzLCA3NDc2MSwgNjQzMjMsIDAsIDAsIDAsIAotICAgIDAsIDMxMCwgMCwgNDEyODEsIDEwOTc2LCAwLCA5MjE5MCwgMCwgNzQyNjYsIDEwMDU0LCA2NDk3LCA4NTc0LCAwLCA5MDEyLCAKLSAgICAxOTk1OCwgNzQ0MjAsIDY1MDg5LCAxMzIxNSwgMTI3MzAsIDY1MTYzLCA3NDA0NCwgMzc0LCA0MzE5NSwgODE2LCAwLCAwLCAKLSAgICAwLCA0MTkzNCwgNzQ2NSwgMCwgMTI4MTY4LCAwLCA0NzE1LCA2MTAxLCAwLCA0MTkzNiwgMCwgNDg3OSwgMCwgNjU0NDYsIDAsIAotICAgIDMwNywgMTI3MTQ3LCA5NTg1LCA1Mzc0LCAwLCAxMjgwNTksIDAsIDAsIDAsIDAsIDAsIDY1NTY3LCAxMjA2MTQsIDE5MjksIAotICAgIDAsIDEyMTQyLCAwLCAxMjIzNiwgNDE0MTksIDE5NDYxOCwgMTIwNjEwLCAxMjk4MiwgMTk0NjIzLCA1Mzc4LCA3ODc5MSwgCi0gICAgMTI4Njc5LCA0MTQyMSwgMCwgNDQ2MiwgMCwgMCwgMTI4MDkyLCA4MjEsIDAsIDI0OTgsIDU4MDAsIDEyMDE1NywgMCwgCi0gICAgMTc2MCwgMjQyMSwgNDQ2OSwgMjMyNCwgODI4LCAzNjExLCA3ODQwMCwgNzU3LCAxMTg1LCAwLCA3ODc3MCwgNDM1OTcsIAotICAgIDEwNjI4LCA3NDgwOCwgMTk0NTcyLCA3OTk5LCA0Mzk3MSwgMCwgMCwgMTA2MzQsIDEwOTQyLCA3NzEzLCAyMzQ4LCAwLCAKLSAgICA2NDM3NCwgNDM4MCwgMTk0NjA4LCAxMTkwNDQsIDk5ODIsIDY0MzI0LCA0MTI0MCwgODYyLCA2NTYyNiwgNzg0NjIsIDE4MTAsIAotICAgIDM2NzMsIDUxMzcsIDE5NDYxNywgMCwgNzI3NywgNjU2MjIsIDAsIDc1NjYsIDY0Njg4LCAxOTQ1OTMsIDE5NDU5MiwgCi0gICAgNzgwOTIsIDc0MzU3LCAxOTQ1OTcsIDQ3NDgsIDkyMjI4LCAxOTQ1OTgsIDE5NDYwMSwgNDIyNjAsIDU4NzEsIDExOTA3NSwgCi0gICAgMCwgNzQ1NzYsIDQ0MDE5LCAwLCAxMjgxODksIDM5NjcsIDE5NDYwNCwgMTMxMzcsIDg3NzUsIDEyNzk0NSwgMCwgMjk2MywgCi0gICAgMCwgODQxMCwgNDQ1NCwgNzIzLCAxMjc4ODIsIDk2NiwgNDQ0OSwgOTIzMzAsIDkyMjM4LCAwLCA3ODE5LCAyMzIwLCAKLSAgICAxOTQ1ODksIDMzOSwgNDk2OCwgMTk0NTkwLCAxMjAzOTksIDgwNzUsIDU1Mjc2LCAwLCA4MDQ3LCAwLCA3ODgyNywgMTI2MzQsIAotICAgIDQxNTQyLCA3ODc4MCwgNzQ2NiwgNjcwNSwgMTIxNzQsIDQyNjEwLCAwLCA3NDQ1MiwgMCwgMTU4NCwgNjY2NDUsIDYwNDUsIAotICAgIDY3MjksIDEyMDY0MCwgNjUyMTgsIDc4Nzc3LCAwLCA3ODA2MiwgNzUzNywgMCwgMTEzNzAsIDAsIDEwMzMwLCAwLCAxMDM5NCwgCi0gICAgMCwgNzQxOTQsIDAsIDEyNzkyOSwgOTc4MCwgMCwgMTMwOTIsIDE5NDU3NiwgMTE5NjA1LCAxOTQ1NzgsIDcwNzQsIDkyNjQ4LCAKLSAgICAxOTQ1NzksIDE5NDU4MiwgMTE0MTQsIDEyODg2OCwgMjUzMSwgMTMwMzQsIDAsIDAsIDQyMTEsIDEyNTksIDc1MTcsIDAsIDAsIAotICAgIDE5NDU2MSwgNDA5OTYsIDEzMDM3LCA3MDkyLCA2NDEsIDUyMTksIDE5NDU2NywgMTk0NTY2LCAxMTA2NCwgNDExMjksIDAsIAotICAgIDQyODUwLCAxMzAzNSwgOTA3NSwgOTIzODcsIDU0NjYsIDEyODE1MywgMCwgNjQwOTgsIDY1NzkzLCA0NTM1LCAxOTQ1NzMsIAotICAgIDQyNzEsIDc4NDE3LCAxMjgzNTcsIDY3NjksIDQxNDEwLCAwLCA2NDI2MiwgNjc2NywgNDE0MDcsIDAsIDAsIDY3NTUsIAotICAgIDExODg2NCwgOTA0NiwgMTI3OTM0LCAwLCAwLCAwLCAwLCAwLCA2NzY3NSwgMCwgMCwgMCwgNjQzMzgsIDI1NjMsIDEzMDMzLCAKLSAgICAyNDcsIDExODkxNSwgMCwgMTIzMzgsIDQ2NTEsIDAsIDExMjcwLCAwLCAwLCAxMTkzMywgMCwgMCwgNDE5MDMsIDQzNDQ3LCAKLSAgICAxMTAwMSwgMCwgNDIyNTUsIDAsIDkyNjYxLCA2OTgyMSwgNDE5MDUsIDAsIDAsIDEwNzc1LCA5NzkzLCA1MDA5LCAwLCAKLSAgICA0MjI2OSwgNjQ1ODcsIDAsIDQyNTM1LCA2OTgxMiwgNjQ1MjksIDQxNDA4LCA0Mjg1MywgMzg3NywgMTIwNzk1LCA0MjY3NCwgCi0gICAgODE0NywgNDM1NjYsIDExOTAyMSwgMCwgMTAyMzYsIDY1OTE4LCA0Mzc4MiwgMCwgMCwgNjQ1MDYsIDY5NjUyLCAxMTg5MjEsIAotICAgIDQ3NDcsIDEyODA1OCwgMCwgNDMyMDAsIDU4MzIsIDAsIDAsIDUxNDEsIDQyNjAwLCAwLCA0MzIwMywgMCwgMCwgNDMyODYsIAotICAgIDAsIDEyODIxMSwgNDM3NzgsIDAsIDQxMzA1LCA3ODc3NiwgNDM3ODEsIDExMzAzLCA2NTU0NywgMCwgNzAzMSwgODU5LCAwLCAKLSAgICAwLCAwLCA2MDU5LCAxMjY5ODUsIDU1MjM1LCAwLCA4NTM1LCAwLCA2NTE5NiwgMTk0Nzg3LCA2NjAzMiwgMTE0ODgsIDAsIAotICAgIDEyMDc4NiwgNDIyMzMsIDY0MTQwLCA5OTQ2LCA2Mzg4NSwgMCwgMTE4MjIsIDAsIDQzMTg5LCAwLCAwLCAxNzg4LCAxNTc5LCAKLSAgICAxMjA0ODIsIDkxNzgxNywgMCwgMCwgMCwgOTAyOCwgMTE5NTcxLCA2OTIzNCwgMCwgMCwgMTI4NSwgNjQ4ODIsIDQxMjQyLCAKLSAgICAwLCAwLCAxMjY0MCwgMCwgNzQwMSwgMCwgMTI2MjUsIDY4MTk4LCAwLCA5MjI1NCwgMzk0MCwgNDE1OTcsIDU1MjYwLCAKLSAgICAzMzk2LCAxMjY0MiwgODY2NSwgMCwgMCwgMTI2MzAsIDE2NTMsIDkxNzgxNSwgMTAxNTMsIDAsIDYxNjYsIDEyMDUxNiwgCi0gICAgMTIwNTIzLCAwLCA4ODE1LCA2NjY3MywgNjUwNDYsIDkyODUsIDkxMywgNDIyNTksIDExOTMxNywgMTE5MzE4LCAyMTQyLCAKLSAgICA2ODQ1NCwgNDI0ODUsIDExODgzNywgNzg3OCwgODIxMSwgNDIyOTMsIDY0Mzc3LCAwLCA5MjY0MywgMCwgMTk0NjczLCAKKyAgICAyMzUwLCAxMzAyOSwgNzgyMzMsIDAsIDk4MzEwMywgMTMwMzAsIDY3MDIsIDQ1MjcsIDAsIDEyNTM4LCAxMjg4MTAsIAorICAgIDk4MzYzNiwgNjU1OTksIDY1NzE3LCA5OTY2LCAwLCA0OTQ4LCAxMjQ4NCwgNDAzMiwgMTI4MTQ5LCAxMjYyMywgMCwgNjIwNywgCisgICAgMCwgNjExNywgNjU5MzAsIDg0MTIsIDAsIDc0MzgsIDEyOTYsIDIzMjUsIDQxNTExLCAxMjY2MjUsIDEwMTQ5LCA3NDExOCwgCisgICAgMCwgMTI3Mjg2LCAxMjQ4MSwgMCwgMTI0ODgsIDY2NzEzLCAwLCA0MTU1NiwgNjQ0MTQsIDExODgwMiwgMjM1NCwgNDI2MTksIAorICAgIDczNzY2LCAwLCA2Mjk1LCA5MDEsIDQxNTEwLCA3OTUzLCAwLCA2NTAzMiwgNDE1MTMsIDk4MzE2NiwgMTE5MjcsIDY2NTg0LCAKKyAgICA3ODU1OSwgNzg1NjAsIDc4NTU3LCA3ODU1OCwgMCwgNzg1NTYsIDg0OCwgOTg2OCwgMCwgNjQyNCwgNzg1NjgsIDExOTMzOCwgCisgICAgNjk5MjIsIDc0MDMxLCA3ODU2MywgNzg1NjQsIDIzNTIsIDc4NTcyLCA4OTMsIDY0NTc2LCAxMTI4OSwgMTQwNywgNjc5NzMsIAorICAgIDAsIDEzMDI2LCA2NzYyLCA3ODU3OSwgNzg1ODAsIDEzMDIzLCA4OTAzLCA5Nzc3LCA2NjcxNSwgMTg3MSwgODA5OSwgMCwgMCwgCisgICAgMTM0MywgOTgzODE0LCAwLCA5MzI1LCA2ODE4LCA2MjgzLCAxMTczOCwgMCwgOTgzOTI1LCAwLCAxMTc0MSwgMCwgMCwgCisgICAgOTIxNiwgODI2MywgMTEyNzksIDE5NDc1MiwgOTgzODE2LCAxOTQ3NTQsIDEzMDIxLCA2NDQ5NCwgMzEzNiwgMTk0NzU4LCAKKyAgICAxOTQ3NTcsIDE5NDc2MCwgMTMwMjIsIDQyNzM3LCA5OTU2LCAwLCAwLCA3NDU1MiwgMTAwMTQsIDAsIDQxMjYwLCAxMTkzNDAsIAorICAgIDEzMDIwLCAxMDAyNCwgMTk0NzY0LCA3NDU4MywgNzQzNDAsIDY5NjgxLCAwLCA0MzAwMSwgODAyOSwgMCwgMCwgOTgzNzcxLCAKKyAgICAzMzM1LCAwLCAwLCA5Nzc2LCAxMjA1MjYsIDE5NDc0OCwgNTIxNSwgNDI2NDQsIDMzMzMsIDE2MzIsIDE5NDc1MSwgNjQ4NDksIAorICAgIDMzNDIsIDc4NTgyLCA1MzYzLCAxMjk1NywgNzg1ODEsIDQxNTYsIDAsIDAsIDY0MjEsIDc4NTkxLCAxNjExLCA3ODU4OSwgCisgICAgMTMwMTgsIDc0MjU3LCA3ODU4OCwgNzQ1NDIsIDMzMzcsIDQ1MzcsIDY3ODk1LCAxMTczNiwgMCwgNjg2MDgsIDY0ODIsIAorICAgIDQyMTQsIDczNzkwLCAxMTk0NSwgMCwgMTMwNDYsIDg4MzgsIDQyNSwgNDAyNSwgMTA3MDksIDc4NTk1LCAyMTA4LCAyMzkyLCAKKyAgICAxMzA0NywgMCwgMCwgNjgxOSwgMTMwNDksIDY0OTksIDkyMjQzLCAxMjQyNCwgNjg2MTQsIDczOTQ0LCAxMzA1MCwgOTkyNCwgCisgICAgMTk0NzQ1LCA2NTA3LCAxMjc5MTksIDk0MDczLCAxMjgwNjksIDMyNzcsIDg5MjksIDQ5NDcsIDQxMDU1LCAwLCAxOTQ3MjIsIAorICAgIDE5NDcyMSwgMTk0NzI0LCAxMzA0NSwgNjQ2MjYsIDY2MDM0LCA3NzUxLCAxOTQ3MjcsIDgzNzEsIDE5NDcyOSwgMzk5NywgCisgICAgMTI4MDYsIDg3NjgsIDEzMDQ0LCAwLCAxMjQyMCwgNDAyNCwgMTk0NzMwLCA0MTA1NCwgMTA3OCwgOTc1NywgNjk3MzYsIAorICAgIDQxMDU3LCAwLCAwLCAwLCAwLCA5ODM3ODIsIDkyMjEwLCA5MjQxMSwgMCwgNDE0OTYsIDAsIDkxNjUsIDE1NzIsIDExOTExLCAKKyAgICAwLCAxMTg4NDIsIDIzNDYsIDEzMjcwLCA4OTU4LCAwLCA5NjQ2LCAzNzczLCA0MzE4MywgNjQwMSwgNTgzMSwgMCwgMCwgCisgICAgMTMwNDMsIDgwNTYsIDkyNDk0LCA2NTY4MSwgMjA4LCAxMjczODIsIDQxNTE0LCAwLCAwLCAwLCAxMDY5OSwgNjQwOCwgCisgICAgOTIyMjcsIDc4MjUsIDU2NjEsIDAsIDEyMDYzMCwgMzYwMywgNDExMDksIDIzOTgsIDM1NDgsIDEyNjU5NiwgMCwgMTE5OTMzLCAKKyAgICAwLCAzMTE1LCA5OTE4LCAwLCAxMTMyMSwgNDI5MTIsIDAsIDAsIDE5NDcyNiwgNDg3NiwgNjU4MDQsIDAsIDAsIDQzNDY4LCAKKyAgICA5ODMyNjYsIDQxNTU4LCA0MTQ3MSwgNzM5NTAsIDgxNTgsIDk5NDQsIDQxNDcyLCAxMjAyOTgsIDEzMDUxLCA3ODY4OSwgCisgICAgMzE0MywgMTk0Njc0LCA2NzAxLCA0MTU1OSwgMTg5NiwgNjYyNTYsIDEzMDUyLCAxOTQ2ODAsIDU2NjUsIDAsIDExOTA3MSwgCisgICAgNzAyNSwgNjM5NzQsIDAsIDc0MzUyLCA3NDE2MSwgNDE1NCwgOTg2MywgNDM1NTAsIDEyMzEwLCA1NjYyLCA0MjM4MiwgCisgICAgMTk0Njg2LCA3MzkyNCwgMTEyMSwgNzgzMTksIDYzOTU5LCAwLCA5OTQyLCAxMzIzMSwgMCwgNjQ3NTIsIDQ3MzIsIAorICAgIDE5NDY2NiwgMTE1OTYsIDExOTkzMSwgNjUxODcsIDE2MjYsIDYzOTgzLCAxMDExMCwgNjQ3NzIsIDQyMDI0LCA2NDIwLCAKKyAgICA0MjAyOCwgMCwgMTA1MDksIDI3OTUsIDQ5MTAsIDE5NDcyOCwgNjkyMzEsIDY0NzUzLCA2Mjc1LCA5Mzk1NywgMTE4ODMwLCAKKyAgICA2Mzk3OCwgMTEwNDQsIDMyMjksIDY0MjMsIDQyNzc0LCAwLCAwLCAwLCAxMjgyMywgMjMzMSwgOTE3ODEwLCA3MDg1LCAKKyAgICA2MTM3LCAwLCA3NTI0LCAwLCA5MTc4MDksIDgzNDYsIDAsIDgzMzgsIDEyODMxNSwgNjUwNDMsIDAsIDgyMiwgMTI3OTg0LCAKKyAgICA5OTAzLCA2NDcyMSwgNDI3MjIsIDY5ODc3LCAxOTQ2NTksIDc4NjU1LCA3ODY2MSwgMTk0NjYwLCA3ODY2MiwgNDEyNjUsIAorICAgIDUzMTEsIDE3OTUsIDk2NSwgMTE4NzkxLCAxMDU4NywgNzgwNTUsIDExMjc4LCA3ODYzMiwgMTk0NjQwLCAwLCAxMjk0NiwgCisgICAgMTk0NjQxLCAxMTkzNDEsIDEyMDM0OSwgNjI5NCwgMzE0NCwgMTk0NjQ4LCAxOTQ2NDcsIDY1MDE5LCAxOTQ2NDksIDczOTkwLCAKKyAgICAwLCA5ODM5NTEsIDc0OCwgNDEwNjcsIDIzMzAsIDUzNSwgMzE0OCwgMTIzNzUsIDc4Nzk5LCAxOTQ2MjksIDEwNTU2LCAKKyAgICAyNDc1LCAxMjM4OCwgNDg4OSwgODk2OCwgNjc4NjMsIDM1OTMsIDAsIDAsIDIzNDIsIDAsIDE5NDYzNCwgNjUyMDYsIDQ4OTQsIAorICAgIDE5NDYzNSwgNDg5MCwgMTk0NjM3LCA5MTc4MDQsIDU4MSwgNDg5MywgOTgzNjE2LCA2NTcxLCA2NTU0NSwgNDg4OCwgNDE1NywgCisgICAgNzgwNDgsIDc4MDQ5LCA3ODA0NiwgNzgwNDcsIDAsIDEwMTE5LCA2NDE1LCA0Mjg5MywgMCwgNjk3MDIsIDAsIDAsIDExMzc1LCAKKyAgICA2NDc0NiwgMjMzMiwgNzgwNjMsIDQxMiwgNzgwNjEsIDY0OTMyLCA0Mjg4MCwgNDM1ODcsIDAsIDAsIDAsIDAsIDY1MTk3LCAKKyAgICA3ODA2NiwgMTIyMDMsIDc4MDY0LCA3ODA2NSwgODkxMywgNjU4NTQsIDQ4NzUsIDY1ODExLCAxMjAzODEsIDEyMDM4OSwgCisgICAgMTE4ODg4LCA5MzQ0LCA4ODI2LCAxMjAzODYsIDEyMDM5NSwgMTMxMDQsIDc0NzgxLCAxMTk5NywgMTIwMzkzLCA3ODA3NSwgCisgICAgMCwgMzEzNCwgMCwgNjU2OTYsIDkyMzMxLCAwLCA2NjIxNywgMCwgODMzNCwgMTE5MzQ0LCAwLCAzNDQ5LCAwLCAwLCAKKyAgICA3ODQxNCwgNzg0MTMsIDExODk1MCwgNzQwMTEsIDAsIDAsIDAsIDAsIDE5MDgsIDEyMDE2NywgNDMyOCwgMTA3MzQsIAorICAgIDEyNzAxNCwgMCwgMTI3OTE0LCA3ODA0LCA3ODI3MiwgMTA4MTEsIDYyNTAsIDExMzM5LCA0OTE0LCAxMTM2NywgMCwgCisgICAgNzgwNTQsIDQ5MTcsIDc0NTE2LCA3NDIwOCwgNjQyODUsIDQ5MTIsIDU0NjQsIDEyNzgzNiwgMTE4ODkzLCAyMzYxLCA3OTcxLCAKKyAgICA3ODA3MiwgNzgwNzMsIDU1MjQzLCA3ODA3MSwgMCwgODA4NiwgNzQzMTcsIDY3MDcsIDgzMTksIDIzMTIsIDQwOTc3LCAKKyAgICAxMDk2MCwgNDA5NjIsIDgzMDUsIDEyNTczLCA5ODM2MDgsIDQwOTgwLCA5ODM5NTUsIDEzMjAyLCAwLCAxMjU4MiwgNzgyODIsIAorICAgIDk4MzA0OCwgNjk4NTYsIDQyNDM4LCA1NTIyMSwgNjI4OCwgNzgyODAsIDEyNzk0NiwgNTY1MywgNDI0MDAsIDEwODkxLCAKKyAgICA3Njk4LCA1NjU4LCA3NDA0NSwgNzAwMzksIDAsIDAsIDQ5MTMsIDAsIDk4Mzk1MCwgNzEzMzMsIDQyMzI2LCAxMjgxOTQsIAorICAgIDEyNzI4LCA5MjY4NSwgNDI0NzgsIDIzMjcsIDAsIDEyNTYzLCA0MjI4NywgMTI3MDUsIDAsIDAsIDEyNTg4LCA4ODIxLCAKKyAgICA2MTUzLCAyODY3LCAxOTQ3MDgsIDY2MzEyLCA2OTgsIDEyODAwNywgMTk0NjA2LCAxMDM1NiwgNzAwMTcsIDE5NDcxMywgCisgICAgNjUxLCAxMjY0MSwgMCwgMCwgMCwgMCwgNDE1NTIsIDY1MTE1LCA3ODQ2NSwgNzg0NjcsIDc4NDYzLCA3ODQ2NCwgMTI4ODUxLCAKKyAgICA3ODQ2MSwgMTk0Njk3LCA3NDM1NiwgNjQ5NDUsIDQ3MTYsIDQzMjc3LCAwLCA3ODQ3NCwgMTIzNDAsIDEyMDU2OCwgMCwgCisgICAgMTk0NzAwLCA1NTI2NCwgNDEyMTEsIDEyMDY3NiwgODcwMywgNTQ2MiwgOTE3NjI5LCA5ODM0ODcsIDEwMTAxLCAwLCAKKyAgICA3MDA0OSwgODQ3OSwgNDE1MSwgNDE5MzMsIDAsIDAsIDY2MjU0LCAxMjA4MjEsIDAsIDAsIDEyODY1NCwgMCwgMTE5MTk0LCAKKyAgICA3NDA1MCwgOTI3MDEsIDAsIDAsIDAsIDAsIDAsIDEyMjc4LCAwLCAwLCAwLCAyNzAwLCAxMjU3NiwgNzg0MiwgMTI4OTksIDAsIAorICAgIDAsIDI2OTksIDAsIDczODQ1LCAyOTg1LCA5MjU2OCwgMTI2NDc1LCA5MTc4NDUsIDEyMTkyLCAxMTkzMTQsIDAsIDExOTMxMiwgCisgICAgOTgyNywgMTE5MzEwLCAxMTkzMTEsIDExOTMwOCwgMTE5MzA5LCAxMTkzMDYsIDExNDgxLCA0MTIxMCwgMTE5MzA1LCAwLCAKKyAgICAzNSwgNzg0ODEsIDc4NDgyLCA2NjY5NCwgNjg0NzksIDc4NDc3LCA3ODQ3OCwgNDM1OTYsIDYwOTAsIDY0MjU3LCA3ODEyLCAKKyAgICAxMDUzNCwgMCwgNzg0ODUsIDczODQ4LCA2Nzk3NSwgNDI3MiwgMCwgNDA5NjcsIDQwOTY0LCA5MTc4MjUsIDEyNzA0LCAKKyAgICA3ODQ4NywgNDMzMDYsIDAsIDY0NDk3LCAxMjEzOCwgNzkzMCwgMCwgMjI5MiwgNjgyMTYsIDAsIDkxNzgyNiwgNTI0NCwgCisgICAgNDE4OSwgOTQxMDgsIDY3NTk2LCAxMjc1MDQsIDQxODgsIDE4NzksIDAsIDk2OCwgMCwgNDM3NDMsIDAsIDg4NzMsIDIyNzksIAorICAgIDAsIDkxNzgyNywgNjU1NTUsIDEyNTc0LCAwLCAwLCAwLCA3NDQ5MCwgMTI3MDk5LCA0MzY1NywgMCwgMCwgMCwgNDI2ODIsIAorICAgIDEyNTc4LCAxMjcyMCwgMCwgNDEyMjcsIDAsIDEyMzQ2LCAxMjcxMDEsIDY0ODQ4LCAwLCAwLCA3MjUxLCAwLCAwLCAKKyAgICAxMTg4NTAsIDExOTE0MSwgMTI4NTQ2LCA2NjAxNSwgMCwgOTU5LCA4ODg1LCAxMjU2NCwgNjY0NTcsIDc4ODA4LCA5NDY5LCAKKyAgICA5NjMyLCA5MjMyMywgNzQ3NjEsIDY0MzIzLCAxMjczMzUsIDAsIDAsIDAsIDMxMCwgMCwgNDEyODEsIDEwOTc2LCAwLCAKKyAgICA3MTMyNSwgMCwgNzQyNjYsIDEwMDU0LCA2NDk3LCA4NTc0LCAwLCA5MDEyLCAxOTk1OCwgNzQ0MjAsIDY1MDg5LCAxMzIxNSwgCisgICAgMTI3MzAsIDY1MTYzLCA3NDA0NCwgMzc0LCA0MzE5NSwgODE2LCAxMjAxNjEsIDAsIDAsIDQxOTM0LCA3NDY1LCAwLCAKKyAgICAxMjgxNjgsIDk4MzI2MCwgNDcxNSwgNjEwMSwgOTQxMDYsIDQxOTM2LCAwLCA0ODc5LCAwLCA2NTQ0NiwgMCwgMzA3LCAKKyAgICAxMjcxNDcsIDk1ODUsIDUzNzQsIDk4MzI1OSwgMTI4MDU5LCAwLCAwLCAxMjY2MTgsIDEyMDM5MCwgMCwgNjU1NjcsIAorICAgIDEyMDYxNCwgMTkyOSwgMCwgMTIxNDIsIDAsIDEyMjM2LCA0MTQxOSwgMTk0NjE4LCAxMjA2MTAsIDEyOTgyLCAxOTQ2MjMsIAorICAgIDUzNzgsIDc4NzkxLCAxMjg2NzksIDQxNDIxLCAwLCA0NDYyLCAwLCAxMjY1OTksIDEyODA5MiwgODIxLCAwLCAyNDk4LCAKKyAgICA1ODAwLCAxMjAxNTcsIDk4MzExNSwgMTc2MCwgMjQyMSwgNDQ2OSwgMjMyNCwgODI4LCAzNjExLCA3ODQwMCwgNzU3LCAKKyAgICAxMTg1LCAwLCA3ODc3MCwgNDM1OTcsIDEwNjI4LCA3NDgwOCwgMTk0NTcyLCA3OTk5LCA0Mzk3MSwgMCwgMCwgMTA2MzQsIAorICAgIDEwOTQyLCA3NzEzLCAyMzQ4LCAwLCA2NDM3NCwgNDM4MCwgMTk0NjA4LCAxMTkwNDQsIDk5ODIsIDY0MzI0LCA0MTI0MCwgCisgICAgODYyLCA2NTYyNiwgNzg0NjIsIDE4MTAsIDM2NzMsIDUxMzcsIDE5NDYxNywgMCwgNzI3NywgNjU2MjIsIDAsIDc1NjYsIAorICAgIDY0Njg4LCAxOTQ1OTMsIDE5NDU5MiwgNzgwOTIsIDc0MzU3LCAxOTQ1OTcsIDQ3NDgsIDkyMjI4LCAxOTQ1OTgsIDE5NDYwMSwgCisgICAgNDIyNjAsIDU4NzEsIDExOTA3NSwgMCwgNzQ1NzYsIDQ0MDE5LCAwLCAxMjgxODksIDM5NjcsIDE5NDYwNCwgMTMxMzcsIAorICAgIDg3NzUsIDEyNzk0NSwgMCwgMjk2MywgMCwgODQxMCwgNDQ1NCwgNzIzLCAxMjc4ODIsIDk2NiwgNDQ0OSwgOTIzMzAsIAorICAgIDkyMjM4LCAwLCA3ODE5LCAyMzIwLCAxOTQ1ODksIDMzOSwgNDk2OCwgMTk0NTkwLCAxMjAzOTksIDgwNzUsIDU1Mjc2LCAwLCAKKyAgICA4MDQ3LCAwLCA3ODgyNywgMTI2MzQsIDQxNTQyLCA3ODc4MCwgNzQ2NiwgNjcwNSwgMTIxNzQsIDQyNjEwLCAwLCA3NDQ1MiwgCisgICAgOTgzNzU0LCAxNTg0LCA2NjY0NSwgNjA0NSwgNjcyOSwgMTIwNjQwLCA2NTIxOCwgMTE1NTksIDAsIDc4MDYyLCA3NTM3LCAwLCAKKyAgICAxMTM3MCwgMCwgMTAzMzAsIDAsIDEwMzk0LCAwLCA3NDE5NCwgMCwgMTI3OTI5LCA5NzgwLCAwLCAxMzA5MiwgMTk0NTc2LCAKKyAgICA3Nzk1MCwgMTk0NTc4LCA3MDc0LCA5MjY0OCwgMTk0NTc5LCAxOTQ1ODIsIDExNDE0LCAxMjg4NjgsIDI1MzEsIDEzMDM0LCAKKyAgICAwLCAwLCA0MjExLCAxMjU5LCA3NTE3LCAwLCAwLCAxOTQ1NjEsIDQwOTk2LCAxMzAzNywgNzA5MiwgNjQxLCA1MjE5LCAKKyAgICA5NDAzNCwgMTk0NTY2LCAxMTA2NCwgNDExMjksIDAsIDQyODUwLCAxMzAzNSwgOTA3NSwgOTIzODcsIDU0NjYsIDEyODE1MywgCisgICAgMCwgNjQwOTgsIDY1NzkzLCA0NTM1LCAxOTQ1NzMsIDQyNzEsIDc4NDE3LCAxMjgzNTcsIDY3NjksIDQxNDEwLCA5ODM0NDQsIAorICAgIDY0MjYyLCA2NzY3LCA0MTQwNywgMCwgMCwgNjc1NSwgMTE4ODY0LCA5MDQ2LCAxMjc5MzQsIDEyNjYwOCwgMCwgMCwgMCwgMCwgCisgICAgNjc2NzUsIDAsIDAsIDAsIDY0MzM4LCAyNTYzLCAxMzAzMywgMjQ3LCAxMTg5MTUsIDAsIDEyMzM4LCA0NjUxLCA2OTg5NSwgCisgICAgMTEyNzAsIDAsIDAsIDExOTMzLCAwLCAwLCA0MTkwMywgNDM0NDcsIDExMDAxLCAwLCA0MjI1NSwgMCwgOTI2NjEsIDY5ODIxLCAKKyAgICA0MTkwNSwgMCwgMCwgMTA3NzUsIDk3OTMsIDUwMDksIDAsIDQyMjY5LCA2NDU4NywgOTgzMDYzLCA0MjUzNSwgNjk4MTIsIAorICAgIDY0NTI5LCA0MTQwOCwgNDI4NTMsIDM4NzcsIDEyMDc5NSwgNDI2NzQsIDgxNDcsIDQzNTY2LCAxMTkwMjEsIDk4Mzc2NywgCisgICAgMTAyMzYsIDY1OTE4LCA0Mzc4MiwgMCwgMCwgNjQ1MDYsIDY5NjUyLCAxMTg5MjEsIDQ3NDcsIDEyODA1OCwgNjk4NDQsIAorICAgIDQzMjAwLCA1ODMyLCAwLCAwLCA1MTQxLCA0MjYwMCwgMCwgNDMyMDMsIDAsIDk4Mzc5MCwgNDMyODYsIDAsIDEyODIxMSwgCisgICAgNDM3NzgsIDAsIDQxMzA1LCA3ODc3NiwgNDM3ODEsIDExMzAzLCA2NTU0NywgMCwgNzAzMSwgODU5LCAwLCAwLCAwLCA2MDU5LCAKKyAgICAxMjY5ODUsIDU1MjM1LCAwLCA4NTM1LCAwLCA2NTE5NiwgMTk0Nzg3LCA2NjAzMiwgMTE0ODgsIDEyMDQ4MSwgMTIwNzg2LCAKKyAgICA0MjIzMywgNjQxNDAsIDk5NDYsIDYzODg1LCAxOTQ3OTIsIDExODIyLCAwLCA0MzE4OSwgOTgzODg5LCAwLCAxNzg4LCAKKyAgICAxNTc5LCAxMjA0ODIsIDcxMjk4LCAwLCAwLCAwLCA5MDI4LCAxMTk1NzEsIDY5MjM0LCA5NDA1NSwgMCwgMTI4NSwgNjQ4ODIsIAorICAgIDQxMjQyLCA3MDA4NiwgMCwgMTI2NDAsIDAsIDc0MDEsIDAsIDEyNjI1LCA2ODE5OCwgMCwgNzAwODIsIDM5NDAsIDQxNTk3LCAKKyAgICA0Mzc1NCwgMzM5NiwgMTI2NDIsIDg2NjUsIDAsIDAsIDEyNjMwLCAxNjUzLCA5MTc4MTUsIDEwMTUzLCAwLCA2MTY2LCAKKyAgICAxMjA1MTYsIDExODk4OSwgMCwgODgxNSwgNjY2NzMsIDY1MDQ2LCA5Mjg1LCA5MTMsIDQyMjU5LCAxMTkzMTcsIDExOTMxOCwgCisgICAgMjE0MiwgNjg0NTQsIDQyNDg1LCA5NDAxMiwgNzg3OCwgODIxMSwgNDIyOTMsIDY0Mzc3LCAwLCA5MjY0MywgMCwgMTk0NjczLCAKICAgICAxMjAzMiwgMCwgOTcyNSwgMCwgNzg0MzEsIDUyNjMsIDEyODE4LCA3ODQzMCwgNDE5MzksIDEwMDIyLCA2NTM4NywgNzg0MTksIAotICAgIDQyNzc3LCAxMDEzOSwgOTgwLCA0MzY5OCwgNjUzODYsIDAsIDAsIDQzNzAxLCA0MzE5OCwgNzE4NCwgMTIwNjczLCAKKyAgICA0Mjc3NywgMTAxMzksIDk4MCwgNDM2OTgsIDY1Mzg2LCAyMjA4LCAwLCA0MzcwMSwgNDMxOTgsIDcxODQsIDEyMDY3MywgCiAgICAgMTk0Nzk3LCA5MTc4MTksIDEwMDg1LCAxMTk5OTIsIDAsIDExOTk5MywgNjYzNCwgOTIzNzMsIDAsIDExOTMyMywgODA3MiwgCiAgICAgMTE5MzIxLCA0MzcwMCwgMCwgODg3MiwgNzc4MywgOTE3OTkyLCAxMjM5OCwgODIzNywgMCwgMCwgMTIzOTUsIDAsIAotICAgIDEyNjk3NywgMTIwNTY1LCA5OTE0LCAxMjcwMTEsIDkxNzg1NCwgNzM5NzUsIDYzNjcsIDYzNTEsIDY2Njg4LCAwLCA3ODEwNywgCisgICAgMTI2OTc3LCAxMjA1NjUsIDk5MTQsIDIyMTcsIDkxNzg1NCwgNzM5NzUsIDYzNjcsIDYzNTEsIDY2Njg4LCAwLCA3ODEwNywgCiAgICAgMCwgNjQ3MzUsIDQxMjQzLCA5MjE5OSwgNzgwOCwgMTgyOSwgMCwgNDE5MzcsIDQzNTgsIDQzMjcyLCA2MzUzLCAwLCAwLCAKICAgICAxMjA0MjIsIDAsIDE3MTAsIDAsIDAsIDY1NjA3LCAwLCA0OSwgNjYyNywgMCwgNjI1OCwgMTA2ODMsIDc4NjcyLCA5NzQxLCAKICAgICA3ODMyOSwgNTY0OSwgNzg0NDEsIDQzNDQzLCA2NDQxOCwgMTY0MywgNjUyMTMsIDg0MDUsIDM0NzAsIDEyODIyNSwgMTMyMTMsIAotICAgIDQyNDUyLCA3ODMzMSwgMCwgNzg0NDUsIDAsIDEwNzIsIDc4NDU3LCA3ODQ1MiwgNzg0NTQsIDY1NzYsIDQxOTg4LCA0MTEzMiwgCi0gICAgNjU2NzUsIDEwODAsIDEyMDAwMiwgOTg4NiwgNTUyMjUsIDExMDEsIDY4NDA0LCAxMjMwOSwgNTUyMjcsIDAsIDEyNjMyLCAKLSAgICAxMDg2LCAxODY5LCA3ODY4NSwgNzY4MCwgMCwgNjU0NTgsIDEyMDcxNCwgMTI2MzksIDMzODAsIDgxMjMsIDEwOTEsIAotICAgIDEyNjM4LCA3OTc3LCA0NTAxLCA0MTA5OSwgMCwgNjYzMDksIDAsIDAsIDE0OTQsIDAsIDAsIDAsIDExNjkzLCAwLCAxMDQ5NCwgCi0gICAgOTI2NTUsIDY1ODcyLCAxMjM2MywgMTEzODYsIDAsIDAsIDAsIDAsIDY0NTgyLCAwLCA3Mzc5NCwgMCwgODAyMiwgMCwgCi0gICAgMTIwNDYyLCA3NDEwNiwgMTI0MTMsIDE5NDgyOSwgOTE3OTk0LCAwLCA5MTc5OTUsIDU1NzAsIDE4ODEsIDcyMTAsIDAsIAotICAgIDEwMTIsIDY2NjMwLCAwLCAxMjA3MDksIDcyMDgsIDY2NDQyLCA1NTY5LCAwLCA0MjMzOSwgMCwgNjA2MywgMCwgMCwgCi0gICAgMTE5NTk0LCA2MDUzLCA2NTYwMiwgMCwgOTIyMDEsIDY0NzI3LCA5MTYwLCAxOTQ4MjcsIDAsIDAsIDkyMTgwLCAxMDUwMywgCi0gICAgMTE4ODEwLCA2MDU1LCAzODcwLCA0Mjc5LCA4NDkwLCAxMjAxMTQsIDQzMTksIDY0Nzg2LCA4NjAyLCAxMjAxMTAsIDExMzI2LCAKLSAgICA5MjIwNCwgMCwgMCwgMTIwMTE5LCA3ODMzMywgMTIwMTE3LCAxMjAxMTgsIDEyMDA5OSwgMTIwMTAwLCA2NTA4NywgNTU3MSwgCi0gICAgMzY3NCwgOTc0MCwgOTEyMSwgNTU2OCwgMTIwMTA3LCAxMjAxMDgsIDQyMDg1LCAxMDEwNywgNDIxNTksIDQyODcwLCAKLSAgICAxMjAxMDEsIDU4OSwgNzA1MCwgMCwgNDMyODEsIDEwMjMzLCA0MTI2MywgNjYyNTEsIDY1NzI5LCA2NjI1MywgMCwgNzQwOTksIAotICAgIDQyNjQ1LCAwLCAxOTQ4MTUsIDg1ODMsIDAsIDU4NDcsIDY5MjgsIDAsIDAsIDAsIDAsIDAsIDY2NTkyLCAxMjIwNCwgCi0gICAgOTE3OTYyLCAxOTk2NiwgNzc4NTYsIDQyNTYxLCAxMjA2MjYsIDAsIDAsIDgxMjAsIDEyMDcwMSwgMCwgMCwgMTI4MDEyLCAKLSAgICA0MTA2MywgMCwgMTA2NjQsIDAsIDgzNjksIDAsIDQ1NTEsIDE5NDk2NCwgMzM2OSwgMCwgMCwgOTY3MywgNjYzMzQsIAotICAgIDY1NTgwLCAxMDQ3OCwgMTE4OTYwLCAxMjUxNywgNTU3LCA5NDU3LCAxMjAzNCwgMCwgNjM1NSwgMTI1MTksIDQxMDA0LCAwLCAKLSAgICAxOTUwMjUsIDc0MDk0LCAwLCAwLCA3Nzk3MCwgMCwgMCwgMTI4MTc1LCAxMjExMSwgMzkyNywgMCwgMTI1MTUsIDE0NzQsIAotICAgIDY3ODkzLCA1NDkyLCA2OTIzLCAxMjgwOTksIDEwNDQxLCA3MzgzNiwgMCwgNDM5OTAsIDU0OTMsIDAsIDc0MzE5LCAwLCAKLSAgICA2NjYzNSwgMTIwMTksIDAsIDE2MTgsIDAsIDEyMDQ3NCwgOTY0NSwgMTA0MzAsIDkxNzk1OSwgNTg1MywgMTMwNjMsIAotICAgIDEwMzYzLCAwLCAxMjk1NiwgMTI4MTY5LCAxMjA3MjksIDExMzE0LCA5MTc1ODIsIDEyMDYwLCAwLCA3ODM5MiwgMTI4MjYsIAotICAgIDYzMjksIDAsIDEwNTE0LCA2NTUxNywgNzQzOTUsIDI3MDcsIDgzMDksIDAsIDEyNzA1NCwgNzgzOTgsIDQzNTcwLCAyNjk3LCAKLSAgICA0MzQyMCwgNzgzOTYsIDEyNzA1NywgMjY5NSwgNDIxNzEsIDAsIDAsIDAsIDY3NjE3LCAxMTg5NzEsIDAsIDI2OTMsIAotICAgIDEyMTI1LCAxMjc2NiwgMCwgMTE2NCwgMCwgMCwgNDE5MTgsIDAsIDEyNzU0MiwgODY4NywgNjYwMDksIDEyMTc4LCA3MDUzLCAKLSAgICAxMjgwMDEsIDc0NjksIDAsIDUyNDgsIDEyMjE4LCAxMjA1MzgsIDY0MjcsIDQyODg0LCA0MTEyMywgMCwgMCwgNDI4NzMsIAotICAgIDQxMTI2LCA5OTkxLCA0MTEyOCwgNzQzNzEsIDEyNzAzMSwgMCwgOTg3MywgMCwgNDI4NzcsIDc5OTQsIDY0NzYyLCAyMDUzLCAKLSAgICA0Mjg0MywgNjU5MSwgOTM0MCwgMCwgMTU4OSwgMCwgMjk2LCA3NDQzOCwgNzg4NTIsIDAsIDY3ODQxLCA3NDM3MCwgMCwgCi0gICAgODkyMiwgMTI4MDY4LCA3NDYwMCwgMTI3MDAsIDc0ODM2LCAwLCAxMjU3OSwgMCwgMTI1NzUsIDY0MTYsIDU2NTYsIDI4OTEsIAotICAgIDEzMjYyLCA2NTU5MCwgNTI5OSwgMCwgMTE0NzMsIDU0NDksIDEyNTIsIDAsIDc4NDA0LCA0MTQzMSwgNzQzNjksIDY1MzczLCAKLSAgICA1Mjk1LCA5MTc1NjksIDc0MTE0LCAxMjIzLCAxNjQyLCAxNzQsIDc4Mzk5LCA4ODMsIDQxNjEsIDEyNjkxLCA0MjYwMywgCi0gICAgNDE0MTMsIDMyMTIsIDQxNDU5LCAzMjExLCA3NDgxMCwgNDE0MjUsIDEyNzAyOSwgNzg0MTIsIDc0NDUwLCA5NzI4LCAzODQ2LCAKLSAgICA4MDcwLCA2MTUwLCA2NjM2LCA0MzcwLCAwLCAwLCA3NDE3OCwgNzQ1ODcsIDc0MTE3LCAwLCAwLCAwLCA0OTg2LCAxMjE4OSwgCi0gICAgMCwgNjc2NDgsIDEyMDQ5OSwgOTE3NTUzLCA0MjU3LCAxMjEwNCwgNzc5NDIsIDYyMjAsIDkwMDQsIDY1NTYxLCAwLCAKLSAgICA3Nzk0OSwgMCwgNjgxMzUsIDkxNzU3NiwgNzc5NDYsIDAsIDY5Njc5LCA2OTY4NCwgOTg5MCwgNzg1NjEsIDEyOTcxLCAKLSAgICA3ODQ1MywgOTI1NTYsIDczODk4LCAxMTk3OSwgMCwgMTE4OTAwLCA5MTc4OTQsIDAsIDk2MzUsIDEyNjAwLCA4ODcxLCAwLCAKLSAgICAwLCAwLCA2NDY5LCA3NDIyNywgMCwgNjUzMDQsIDQ2NzksIDEwMjMwLCA2NDMwMCwgNjQ4NjcsIDM0MjcsIDQyNDAsIDAsIDAsIAotICAgIDAsIDAsIDQyOTE2LCAwLCAwLCAwLCA3MjgyLCA3ODcyOCwgNjU3MzMsIDQ0NDUsIDEyNzEzOCwgMTI4MDgyLCAzNDk0LCAKLSAgICA3NDYwNiwgNjU1NSwgMCwgNzc5NzYsIDAsIDAsIDc4NTY2LCAwLCAwLCA2NTg5OCwgMCwgNjUzMTIsIDU0NDcsIDAsIAorICAgIDQyNDUyLCA3ODMzMSwgMTIwNjY0LCA3ODQ0NSwgMCwgMTA3MiwgNzg0NTcsIDc4NDUyLCA3ODQ1NCwgNjU3NiwgNDE5ODgsIAorICAgIDQxMTMyLCA2NTY3NSwgMTA4MCwgMTIwMDAyLCA5ODg2LCA1NTIyNSwgMTEwMSwgNjg0MDQsIDEyMzA5LCA1NTIyNywgMCwgCisgICAgMTI2MzIsIDEwODYsIDE4NjksIDc4Njg1LCA3NjgwLCAwLCA2NTQ1OCwgMTIwNzE0LCAxMjYzOSwgMzM4MCwgODEyMywgCisgICAgMTA5MSwgMTI2MzgsIDc5NzcsIDQ1MDEsIDQxMDk5LCAwLCA2NjMwOSwgMCwgMCwgMTQ5NCwgOTgzMTQ2LCAxMjY2MTMsIDAsIAorICAgIDExNjkzLCAxMjY1MTMsIDEwNDk0LCA5MjY1NSwgNjU4NzIsIDEyMzYzLCAxMTM4NiwgMCwgMCwgMCwgMCwgNjQ1ODIsIDAsIAorICAgIDczNzk0LCAwLCA4MDIyLCAwLCAxMjA0NjIsIDc0MTA2LCAxMjQxMywgOTQwNjksIDkxNzk5NCwgOTE3OTkzLCA5MTc5OTUsIAorICAgIDU1NzAsIDE4ODEsIDcyMTAsIDAsIDEwMTIsIDQzNzUyLCAwLCAxMjA3MDksIDcyMDgsIDY2NDQyLCA1NTY5LCA5ODMyMzYsIAorICAgIDQyMzM5LCAwLCA2MDYzLCAwLCA3ODM4MywgMTE5NTk0LCA2MDUzLCA2NTYwMiwgMCwgOTIyMDEsIDY0NzI3LCA5MTYwLCAKKyAgICAxOTQ4MjcsIDAsIDAsIDkyMTgwLCAxMDUwMywgMTE4ODEwLCA2MDU1LCAzODcwLCA0Mjc5LCA4NDkwLCAxMjAxMTQsIDQzMTksIAorICAgIDY0Nzg2LCA4NjAyLCAxMjAxMTAsIDExMzI2LCA5MjIwNCwgOTgzMTE2LCAwLCAxMjAxMTksIDc4MzMzLCAxMjAxMTcsIAorICAgIDEyMDExOCwgMTIwMDk5LCAxMjAxMDAsIDY1MDg3LCA1NTcxLCAzNjc0LCA5NzQwLCA5MTIxLCA1NTY4LCAxMjAxMDcsIAorICAgIDEyMDEwOCwgNDIwODUsIDEwMTA3LCA0MjE1OSwgNDI4NzAsIDEyMDEwMSwgNTg5LCA3MDUwLCA5ODM3OTEsIDQzMjgxLCAKKyAgICAxMDIzMywgNDEyNjMsIDY2MjUxLCA2NTcyOSwgNjYyNTMsIDEyNjQ5NywgNzQwOTksIDQyNjQ1LCAwLCAxOTQ4MTUsIDg1ODMsIAorICAgIDAsIDU4NDcsIDY5MjgsIDEyODA3NCwgMCwgMCwgMCwgMCwgNjY1OTIsIDEyMjA0LCA5MTc5NjIsIDE5OTY2LCA3Nzg1NiwgCisgICAgNDI1NjEsIDEyMDYyNiwgOTgzMjQ1LCAwLCA4MTIwLCAxMjA3MDEsIDAsIDAsIDEyODAxMiwgNDEwNjMsIDAsIDEwNjY0LCAwLCAKKyAgICA4MzY5LCAwLCA0NTUxLCAxOTQ5NjQsIDMzNjksIDAsIDAsIDk2NzMsIDY2MzM0LCA2NTU4MCwgMTA0NzgsIDExODk2MCwgCisgICAgMTI1MTcsIDU1NywgOTQ1NywgMTIwMzQsIDk4MzY2MiwgNjM1NSwgMTI1MTksIDQxMDA0LCAwLCAxOTUwMjUsIDc0MDk0LCAwLCAKKyAgICAwLCA3Nzk3MCwgOTgzNTYwLCAwLCAxMjgxNzUsIDEyMTExLCAzOTI3LCAwLCAxMjUxNSwgMTQ3NCwgNjc4OTMsIDU0OTIsIAorICAgIDY5MjMsIDkyMjgxLCAxMDQ0MSwgNzM4MzYsIDAsIDQzOTkwLCA1NDkzLCAwLCA3NDMxOSwgMCwgNjY2MzUsIDEyMDE5LCAwLCAKKyAgICAxNjE4LCAwLCAxMjA0NzQsIDk2NDUsIDEwNDMwLCA5MTc5NTksIDU4NTMsIDEzMDYzLCAxMDM2MywgMCwgMTI5NTYsIAorICAgIDEyODE2OSwgMTIwNzI5LCAxMTMxNCwgOTE3NTgyLCAxMjA2MCwgMCwgNzgzOTIsIDEyODI2LCA2MzI5LCAwLCAxMDUxNCwgCisgICAgNjU1MTcsIDc0Mzk1LCAyNzA3LCA4MzA5LCAwLCAxMjcwNTQsIDc4Mzk4LCA0MzU3MCwgMjY5NywgNDM0MjAsIDc4Mzk2LCAKKyAgICAxMjcwNTcsIDI2OTUsIDQyMTcxLCAwLCAwLCAwLCA2NzYxNywgMTE4OTcxLCAwLCAyNjkzLCAxMjEyNSwgMTI3NjYsIDAsIAorICAgIDExNjQsIDEyODgxNywgMCwgNDE5MTgsIDk4MzE2OCwgMTI3NTQyLCA4Njg3LCA2NjAwOSwgMTIxNzgsIDcwNTMsIDEyODAwMSwgCisgICAgNzQ2OSwgMCwgNTI0OCwgMTIyMTgsIDEyMDUzOCwgNjQyNywgNDI4ODQsIDQxMTIzLCAwLCAwLCA0Mjg3MywgNDExMjYsIAorICAgIDk5OTEsIDQxMTI4LCA3NDM3MSwgMTI3MDMxLCAwLCA5ODczLCAwLCA0Mjg3NywgNzk5NCwgNjQ3NjIsIDIwNTMsIDQyODQzLCAKKyAgICA2NTkxLCA5MzQwLCAwLCAxNTg5LCAwLCAyOTYsIDc0NDM4LCA3ODg1MiwgMCwgNjc4NDEsIDc0MzcwLCAwLCA4OTIyLCAKKyAgICAxMjgwNjgsIDc0NjAwLCAxMjcwMCwgNzQ4MzYsIDAsIDEyNTc5LCAwLCAxMjU3NSwgNjQxNiwgNTY1NiwgMjg5MSwgMTMyNjIsIAorICAgIDY1NTkwLCA1Mjk5LCAwLCAxMTQ3MywgNTQ0OSwgMTI1MiwgMCwgNzg0MDQsIDQxNDMxLCA3NDM2OSwgNjUzNzMsIDUyOTUsIAorICAgIDkxNzU2OSwgNzQxMTQsIDEyMjMsIDE2NDIsIDE3NCwgNzgzOTksIDg4MywgNDE2MSwgMTI2OTEsIDQyNjAzLCA0MTQxMywgCisgICAgMzIxMiwgNDE0NTksIDMyMTEsIDc0ODEwLCA0MTQyNSwgMTI3MDI5LCA3ODQxMiwgNzQ0NTAsIDk3MjgsIDM4NDYsIDgwNzAsIAorICAgIDYxNTAsIDY2MzYsIDQzNzAsIDAsIDAsIDc0MTc4LCA3NDU4NywgNzQxMTcsIDAsIDAsIDAsIDQ5ODYsIDEyMTg5LCAwLCAKKyAgICA2NzY0OCwgMTIwNDk5LCA5NDAwMSwgNDI1NywgMTIxMDQsIDc3OTQyLCA2MjIwLCA5MDA0LCA2NTU2MSwgMCwgNzc5NDksIDAsIAorICAgIDY4MTM1LCA5MTc1NzYsIDc3OTQ2LCAwLCA2OTY3OSwgNjk2ODQsIDk4OTAsIDc4NTYxLCAxMjk3MSwgNzg0NTMsIDkyNTU2LCAKKyAgICA3Mzg5OCwgMTE5NzksIDcwMDUxLCAxMTg5MDAsIDkxNzg5NCwgMCwgOTYzNSwgMTI2MDAsIDg4NzEsIDAsIDAsIDAsIDY0NjksIAorICAgIDc0MjI3LCAwLCA2NTMwNCwgNDY3OSwgMTAyMzAsIDY0MzAwLCA2NDg2NywgMzQyNywgNDI0MCwgMCwgMCwgMCwgMCwgCisgICAgNDI5MTYsIDAsIDAsIDAsIDcyODIsIDc4NzI4LCA2NTczMywgNDQ0NSwgMTI3MTM4LCAxMjgwODIsIDM0OTQsIDc0NjA2LCAKKyAgICA2NTU1LCAwLCA3Nzk3NiwgMCwgMCwgNzg1NjYsIDAsIDk4MzE4OSwgNjU4OTgsIDk4MzIzOCwgNjUzMTIsIDU0NDcsIDAsIAogICAgIDEyODk1LCA2NTU5MywgNDAxMCwgMCwgNDExMDYsIDAsIDY0NDQ4LCAwLCA0MTEwNSwgMCwgNjU4MjAsIDYyMzIsIDAsIAogICAgIDEyODI4MCwgMCwgNDM2MDgsIDExOTA5MSwgMCwgNjUzOCwgNDMzNSwgNzgzNjQsIDM5NDEsIDQxMTIyLCAxMTA2MSwgCi0gICAgNzgzNjMsIDY0ODkyLCA5MTEzLCAxOTU0LCAxMjE1NSwgMCwgNDI4NzgsIDExNTAwLCAwLCAwLCA3NDU3OCwgMCwgNjU4MzIsIAotICAgIDAsIDAsIDAsIDc3OTc1LCAxMTkyMzAsIDQ1ODYsIDAsIDM1MCwgMTA5NTEsIDAsIDUwOSwgMCwgMCwgOTIzMDcsIDAsIDAsIAotICAgIDUxMzMsIDAsIDAsIDk1MDAsIDAsIDQ5NTcsIDY0NzQxLCAyNDIyLCA5MzU0LCAwLCAwLCAwLCAyNDk2LCAxMTUxNiwgOTQ0LCAKLSAgICAxMTg4NTEsIDM4OTAsIDEyMTY4LCAxNDM4LCAwLCAwLCAwLCA0MTk0NywgMTIyMCwgMTIwODI4LCAxMjg1NTUsIDAsIDAsIAotICAgIDE1NzEsIDQyNjMwLCA0MTk0OSwgNDI4MDUsIDgyNzAsIDk0MywgNTY0LCAwLCAzMTIsIDQxOTgwLCAwLCAwLCA3ODEyMCwgCi0gICAgODg3NywgMjY5LCA0NDI5LCA2MjcyLCA5NjE3LCAxNDYwLCA2OTU0LCA3ODY1NywgNDExMjAsIDY1MTIxLCAxMDg2MiwgCi0gICAgNjA2MCwgNDExMTksIDQxNDE2LCA3NDM1NSwgNDE3MywgMCwgMCwgMCwgMTkwNiwgOTE3OTg2LCAxMTUzMiwgNzQwNzMsIDAsIAotICAgIDAsIDE5ODUsIDYyOTYsIDk1ODIsIDkxNzg5NSwgNjQyODcsIDAsIDc4MTE1LCAxMTQyOCwgMTczMCwgMjQ1NywgMCwgCi0gICAgMTk5MTgsIDEwNDY5LCAwLCAwLCA3NzAzLCA4ODQwLCA4MDM1LCAwLCAwLCA5MjQ5MSwgMCwgNjEyOSwgMCwgMCwgMTI4MjY4LCAKLSAgICAwLCA3ODc0LCA4NjgxLCAxMTkwOTIsIDAsIDEzMTM2LCAwLCAwLCA3NDI3OCwgNjM4ODYsIDExODg4MSwgOTYwNSwgNzM4OTIsIAotICAgIDEzMjIwLCAxMjg3NzYsIDEyMDI3NCwgNTUxNCwgMCwgOTIyOCwgMCwgMCwgMCwgNTI0MCwgOTgxMSwgMTAwMTIsIDMwOTYsIAotICAgIDAsIDAsIDAsIDY2Njc2LCA2NTg3MywgMCwgMCwgMCwgOTUwMSwgMCwgMTI3MiwgNjQ1MzYsIDY1NDY1LCA2NDY1NCwgNzQ2NywgCi0gICAgMCwgMTQ2NywgMTAxNTgsIDEwMDQwLCAwLCA5NTE5LCAwLCA5MTc4MTIsIDAsIDExODg5OSwgMTIxOTMsIDAsIDAsIDAsIDAsIAotICAgIDAsIDE5OTM1LCAwLCA5MjE2MiwgNjk2NzYsIDAsIDAsIDAsIDUyNzUsIDAsIDAsIDg2MzcsIDAsIDAsIDM3ODksIDYzODgwLCAKLSAgICAxMTQ3MSwgNDM1NTQsIDY1ODYyLCAxMTQ3NCwgNjYzMzIsIDY2NjAzLCAxMjgxMzgsIDI0MjYsIDEyMDQyLCA5MjE5NCwgMCwgCi0gICAgOTUzNywgMzk2MSwgMTIxMTUsIDc3OTUzLCAyNjA1LCA0NTAwLCA2NDU2MSwgNTUyMjQsIDQ5ODEsIDAsIDAsIDYzODc2LCAKLSAgICAxMTY2NywgNDI2ODYsIDc3OTczLCA0MjM2MiwgNjQ2ODYsIDQ0OTksIDQxNjQ5LCA3NTg5LCAwLCAwLCAzMjM3LCAwLCAKLSAgICA2ODIxNSwgMCwgODU0MSwgNzgyOTgsIDAsIDQxODY2LCAwLCAwLCAwLCAwLCAwLCA0MzU1NSwgMjgyMywgOTU1OSwgMTAwNjAsIAotICAgIDQxOTQwLCA4Mjk5LCA0MTk0NSwgNzEzMiwgNDE5NDEsIDMzMDgsIDcxOTAsIDY0ODgwLCA4NjE0LCA2NTIyMCwgNDE0OTMsIAotICAgIDAsIDQxNjk5LCAxMDc2MiwgNDM3ODAsIDEyOTk5LCAwLCAwLCA4MTA2LCA0MTI4LCAwLCAwLCA0NDk0LCAwLCA0MDEyLCAKLSAgICAxMDM5NSwgMCwgNDM2MzMsIDY1NDQ3LCAwLCAwLCAxMTAwNCwgNjk1LCA3MzksIDY5NiwgNzYxMSwgMCwgNDI3NTUsIAotICAgIDc0ODAyLCA5MjI3LCA3NTA2LCA3NTEwLCA5MjI4MSwgNjkxLCA3MzgsIDc1MTEsIDc1MTIsIDc1MTUsIDM4NjgsIDY4OCwgCi0gICAgNDE4NDcsIDY5MCwgMjU0OCwgNzM3LCA5NzQsIDgwMDMsIDc0MDYsIDkxNzkxMSwgMCwgMCwgMzk4NSwgOTE3OTEyLCAKLSAgICA2NTg2MCwgNjM5MjEsIDcwNTEsIDY5Nzc3LCA0NjgyLCA5MTc4MDUsIDEyODA5LCA2NDA2LCA0Njg1LCA5MjUwNSwgMTA4NzksIAotICAgIDEwMzQ3LCA0NjgwLCA2MzQxLCAwLCAzODUxLCA4MTMyLCA3NDMyNSwgMCwgOTE3OTA3LCAwLCA0MTk1OCwgMTE5MTc2LCAKLSAgICA5MTc5MDgsIDAsIDAsIDQyNjU3LCA5MjQ2OCwgNzY0MywgNDIzNzMsIDExNzE0LCA2NzU4NywgNDM1NjgsIDAsIDExNzE3LCAKLSAgICA3NjUwLCAxMDU5NCwgNjQ5NTEsIDc2NDcsIDc2NDksIDEyODE1NSwgNzY0NiwgMCwgNzgwODIsIDk2NTEsIDAsIDM4OTEsIDAsIAotICAgIDAsIDIzMzcsIDE3MzUsIDc0MzI0LCA2Nzg2MCwgMjM2MywgMCwgMCwgNDM1NjEsIDAsIDAsIDc0MTQ2LCAxODYwLCA3NDk1LCAKLSAgICA3NTgwLCA1ODEyLCA3NDk3LCA3NTg0LCAxMTkxNDAsIDEyNzg1MywgMCwgMTIwMzQ3LCA3NzI3LCAwLCA4NDk4LCA2OTgxOCwgCi0gICAgODk0OSwgMzA2NSwgNDI3MTksIDcxMzUsIDE1NjksIDkyMzc1LCAxMjUzNCwgMTIxMjQsIDc2OTAsIDAsIDEyNTMzLCAwLCAKLSAgICA2NDE4LCA0NTQzLCA3ODA4NiwgNjk2OSwgMCwgNzQ4MDAsIDAsIDAsIDExOTgwLCAxMjg2NTAsIDAsIDYzODk0LCAxMjA3NjAsIAotICAgIDEyMjgyLCA2NjE5MiwgMCwgNzQ1OTIsIDg4NTAsIDc0Mjc1LCA5MjM4LCAxMDYxNywgOTE3NTQ1LCAwLCA5MjYyNSwgMCwgCi0gICAgMTI3OTEsIDAsIDAsIDAsIDQ0NDcsIDczNzMyLCAxMjc5MywgMTI5MDAsIDkyMzc3LCAxMDk1MCwgMCwgNzgwODcsIDEyNzkwLCAKLSAgICA0MTQwMCwgMTE5MTI4LCA2NjYwNywgMTI3OTIsIDQyMjMyLCAxOTQ5MzgsIDE3NDQsIDEyNzg5LCAxMDM2NiwgMTIzMTcsIAotICAgIDQxMzEwLCAwLCA0MTM5OSwgMCwgMCwgNTUyNTgsIDAsIDEyNjkwLCAwLCAwLCA0MzY3MiwgMTI3ODQwLCA0MTY1MiwgMjk3NCwgCi0gICAgOTAxMCwgMTEzMTUsIDAsIDI3OCwgMCwgNDE0MDUsIDExOTI1NCwgMCwgMTAwNzcsIDYzODUzLCA3NDU1NywgNDI1ODYsIDAsIAotICAgIDAsIDYwMDIsIDAsIDQzNTUzLCAwLCA2NzkwMywgMCwgMTI3ODcsIDQxMzA4LCA3OTM0LCA2NTMwNiwgMCwgMCwgMCwgODY0NiwgCi0gICAgMCwgNzc4MjksIDAsIDAsIDY0MTMsIDY1NTAsIDAsIDE5NDAsIDAsIDQzNjM3LCAyMjAsIDY1MTkzLCA0MzU1MSwgMTA2NzgsIAotICAgIDEwMDQ0LCAwLCAwLCAwLCA2ODY1OSwgNjQwMywgNTcwNywgMTAzOTMsIDEyNzUzMiwgMCwgNjY2MTQsIDAsIDAsIDAsIAorICAgIDc4MzYzLCA2NDg5MiwgOTExMywgMTk1NCwgMTIxNTUsIDk4MzY2NSwgNDI4NzgsIDExNTAwLCAwLCAwLCA3NDU3OCwgMCwgCisgICAgNjU4MzIsIDAsIDAsIDAsIDc3OTc1LCAxMTkyMzAsIDQ1ODYsIDAsIDM1MCwgMTA5NTEsIDAsIDUwOSwgMCwgMCwgOTIzMDcsIAorICAgIDAsIDAsIDUxMzMsIDAsIDAsIDk1MDAsIDAsIDQ5NTcsIDY0NzQxLCAyNDIyLCAyMjEyLCA5ODMwODAsIDAsIDAsIDI0OTYsIAorICAgIDExNTE2LCA5NDQsIDExODg1MSwgMzg5MCwgMTIxNjgsIDE0MzgsIDAsIDk4MzExNywgMCwgNDE5NDcsIDEyMjAsIDEyMDgyOCwgCisgICAgMTI4NTU1LCAwLCAwLCAxNTcxLCA0MjYzMCwgNDE5NDksIDQyODA1LCA4MjcwLCA5NDMsIDU2NCwgMCwgMzEyLCA0MTk4MCwgCisgICAgOTgzOTM1LCAwLCA3ODEyMCwgODg3NywgMjY5LCA0NDI5LCA2MjcyLCA5NjE3LCAxNDYwLCA2OTU0LCA3ODY1NywgNDExMjAsIAorICAgIDY1MTIxLCAxMDg2MiwgNjA2MCwgNDExMTksIDQxNDE2LCA3NDM1NSwgNDE3MywgMCwgMCwgMCwgMTkwNiwgOTE3OTg2LCAKKyAgICAxMTUzMiwgNzQwNzMsIDEyNzMzOCwgMCwgMTk4NSwgNjI5NiwgOTU4MiwgOTE3ODk1LCA2NDI4NywgMCwgNzgxMTUsIAorICAgIDExNDI4LCAxNzMwLCAyNDU3LCA5MTc4MDgsIDE5OTE4LCAxMDQ2OSwgMCwgMCwgNzcwMywgODg0MCwgODAzNSwgMCwgMCwgCisgICAgOTIyMzAsIDAsIDYxMjksIDAsIDEyODUyOCwgMTI4MjY4LCAwLCA3ODc0LCA4NjgxLCAxMTkwOTIsIDAsIDEzMTM2LCAwLCAwLCAKKyAgICA3MDEwMiwgNjM4ODYsIDExODg4MSwgOTYwNSwgNzEzMDgsIDEzMjIwLCAxMjg3NzYsIDEyMDI3NCwgNTUxNCwgMCwgOTIyOCwgCisgICAgMCwgMCwgMCwgNTI0MCwgOTgxMSwgMTAwMTIsIDMwOTYsIDAsIDAsIDk4MzM0MywgNjY2NzYsIDY1ODczLCAwLCAwLCAwLCAKKyAgICA5NTAxLCAwLCAxMjcyLCA2NDUzNiwgNjU0NjUsIDY0NjU0LCA3NDY3LCAwLCAxNDY3LCAxMDE1OCwgMTAwNDAsIDAsIDk1MTksIAorICAgIDAsIDkxNzgxMiwgMCwgMTE4ODk5LCAxMjE5MywgMCwgMCwgMCwgMCwgOTgzMzQ1LCAxOTkzNSwgMCwgOTIxNjIsIDY5Njc2LCAKKyAgICAwLCAwLCAwLCA1Mjc1LCAwLCAwLCA4NjM3LCAwLCAwLCAzNzg5LCA2Mzg4MCwgMTE0NzEsIDQzNTU0LCA2NTg2MiwgMTE0NzQsIAorICAgIDY2MzMyLCA2NjYwMywgMTI4MTM4LCAyNDI2LCAxMjA0MiwgOTIxOTQsIDk4MzkwMiwgOTUzNywgMzk2MSwgMTIxMTUsIAorICAgIDc3OTUzLCAyNjA1LCA0NTAwLCA2NDU2MSwgNTUyMjQsIDQ5ODEsIDAsIDAsIDYzODc2LCAxMTY2NywgNDI2ODYsIDc3OTczLCAKKyAgICA0MjM2MiwgNjQ2ODYsIDQ0OTksIDQxNjQ5LCA3NTg5LCAwLCAwLCAzMjM3LCAwLCA2ODIxNSwgOTE3OTA0LCA4NTQxLCAKKyAgICA3ODI5OCwgNzAwMzQsIDQxODY2LCAwLCAwLCAwLCAwLCA2OTkyNCwgNDM1NTUsIDI4MjMsIDk1NTksIDEwMDYwLCA0MTk0MCwgCisgICAgODI5OSwgNDE5NDUsIDcxMzIsIDQxOTQxLCAzMzA4LCA3MTkwLCA2NDg4MCwgODYxNCwgNjUyMjAsIDQxNDkzLCAwLCAKKyAgICA0MTY5OSwgMTA3NjIsIDQzNzgwLCAxMjk5OSwgMCwgMCwgODEwNiwgNDEyOCwgMCwgNjI3NCwgNDQ5NCwgMCwgNDAxMiwgCisgICAgMTAzOTUsIDk4MzU5MSwgNDM2MzMsIDY1NDQ3LCAxMjY1MTEsIDAsIDExMDA0LCA2OTUsIDczOSwgNjk2LCA3NjExLCAwLCAKKyAgICA0Mjc1NSwgNzQ4MDIsIDkyMjcsIDc1MDYsIDc1MTAsIDY5OTM3LCA2OTEsIDczOCwgNzUxMSwgNzUxMiwgNzUxNSwgMzg2OCwgCisgICAgNjg4LCA0MTg0NywgNjkwLCAyNTQ4LCA3MzcsIDk3NCwgODAwMywgNzQwNiwgOTE3OTExLCAwLCAxMjg2ODgsIDM5ODUsIAorICAgIDkxNzkxMiwgNjU4NjAsIDYzOTIxLCA3MDUxLCA2OTc3NywgNDY4MiwgOTE3ODA1LCAxMjgwOSwgNjQwNiwgNDY4NSwgCisgICAgOTI1MDUsIDEwODc5LCAxMDM0NywgNDY4MCwgNjM0MSwgMCwgMzg1MSwgODEzMiwgNzQzMjUsIDAsIDkxNzkwNywgMCwgCisgICAgNDE5NTgsIDExOTE3NiwgOTE3OTA4LCAwLCAwLCA0MjY1NywgOTI0NjgsIDc2NDMsIDQyMzczLCAxMTcxNCwgNjc1ODcsIAorICAgIDQzNTY4LCA5ODMxNzUsIDExNzE3LCA3NjUwLCAxMDU5NCwgNjQ5NTEsIDc2NDcsIDc2NDksIDEyODE1NSwgNzY0NiwgMCwgCisgICAgNzgwODIsIDk2NTEsIDAsIDM4OTEsIDAsIDAsIDIzMzcsIDE3MzUsIDc0MzI0LCA2Nzg2MCwgMjM2MywgOTgzMTM1LCAwLCAKKyAgICA0MzU2MSwgMCwgMCwgNzQxNDYsIDE4NjAsIDc0OTUsIDc1ODAsIDU4MTIsIDc0OTcsIDc1ODQsIDExOTE0MCwgMTI3ODUzLCAKKyAgICAwLCAxMjAzNDcsIDc3MjcsIDAsIDg0OTgsIDY5ODE4LCA4OTQ5LCAzMDY1LCA0MjcxOSwgNzEzNSwgMTU2OSwgOTIzNzUsIAorICAgIDEyNTM0LCAxMjEyNCwgNzY5MCwgMCwgMTI1MzMsIDk4Mzg3MCwgNjQxOCwgNDU0MywgNzgwODYsIDY5NjksIDAsIDc0ODAwLCAKKyAgICAwLCA2Nzk3NCwgMTE5ODAsIDEyODY1MCwgOTgzNzkyLCA2Mzg5NCwgMTIwNzYwLCAxMjI4MiwgNjYxOTIsIDAsIDc0NTkyLCAKKyAgICA4ODUwLCA3NDI3NSwgOTIzOCwgMTA2MTcsIDkxNzU0NSwgMCwgOTI2MjUsIDAsIDEyNzkxLCAwLCAwLCAxMjc4NDMsIDQ0NDcsIAorICAgIDczNzMyLCAxMjc5MywgMTI5MDAsIDkyMzc3LCAxMDk1MCwgMCwgNzgwODcsIDEyNzkwLCA0MTQwMCwgMTE5MTI4LCA2NjYwNywgCisgICAgMTI3OTIsIDQyMjMyLCAxOTQ5MzgsIDE3NDQsIDEyNzg5LCAxMDM2NiwgMTIzMTcsIDQxMzEwLCA5ODM4NjAsIDQxMzk5LCAwLCAKKyAgICAwLCA1NTI1OCwgMCwgMTI2OTAsIDAsIDAsIDQzNjcyLCAxMjc4NDAsIDQxNjUyLCAyOTc0LCA5MDEwLCAxMTMxNSwgMCwgCisgICAgMjc4LCAwLCA0MTQwNSwgMTE5MjU0LCAwLCAxMDA3NywgNjM4NTMsIDc0NTU3LCA0MjU4NiwgMCwgMCwgNjAwMiwgMCwgCisgICAgNDM1NTMsIDAsIDY3OTAzLCAwLCAxMjc4NywgNDEzMDgsIDc5MzQsIDY1MzA2LCAwLCAwLCAwLCA4NjQ2LCA5ODMxODYsIAorICAgIDc3ODI5LCA3MTM2MCwgMCwgNjQxMywgNjU1MCwgMCwgMTk0MCwgMCwgNDM2MzcsIDIyMCwgNjUxOTMsIDQzNTUxLCAxMDY3OCwgCisgICAgMTAwNDQsIDEyODMyMiwgMCwgMCwgNjg2NTksIDY0MDMsIDU3MDcsIDEwMzkzLCAxMjc1MzIsIDAsIDY2NjE0LCAwLCAwLCAwLCAKICAgICAxMDI5NywgMCwgMzc0MiwgMCwgMzk1OSwgMCwgMCwgMCwgMjQ2NywgMCwgNjAwMywgNjM4NDQsIDY2NjMsIDgwNDAsIDAsIAotICAgIDYzODQ1LCA0MTgyLCA3ODE3MSwgNDY3NiwgMTIwNTAxLCAwLCAwLCAyNTEwLCAwLCAxMDIwOCwgNzgxNjgsIDkyMzYxLCAKLSAgICAxMTU0MCwgNDM1NDYsIDY2OTIsIDAsIDQxMDYwLCAwLCAwLCA5MDgzLCAwLCAwLCA3ODE0NCwgMTU1OSwgNjM4MzEsIDk2NzcsIAotICAgIDEyMDI2MCwgMCwgNjUyNTYsIDAsIDc0MDcwLCAwLCAwLCAzNjUsIDEyMDU2LCA0MzAyNywgMTIwNDIzLCA0MTcxNiwgCisgICAgNDM3NTgsIDQxODIsIDc4MTcxLCA0Njc2LCAxMjA1MDEsIDAsIDAsIDI1MTAsIDAsIDEwMjA4LCA3ODE2OCwgOTIzNjEsIAorICAgIDExNTQwLCA0MzU0NiwgNjY5MiwgMCwgNDEwNjAsIDAsIDQ2NjgsIDkwODMsIDAsIDAsIDc4MTQ0LCAxNTU5LCA2MzgzMSwgCisgICAgOTY3NywgMTIwMjYwLCAwLCA2NTI1NiwgMCwgNzQwNzAsIDAsIDAsIDM2NSwgMTIwNTYsIDQzMDI3LCAxMjA0MjMsIDQxNzE2LCAKICAgICAxMjgyMzYsIDAsIDEyMDQ3MiwgNTUxNiwgMjg0NSwgNzcxNywgODAzNiwgNDE3MTcsIDczODI3LCA1NDQsIDEyMDQ1LCAKLSAgICA2Mjc4LCAwLCA1NTE1LCAwLCAwLCAwLCA2NTMzOSwgNDMyMjEsIDY1MTk0LCAwLCA1NTE3LCAwLCAwLCA3NDg0MSwgNjc4ODQsIAotICAgIDAsIDY3ODkwLCA2Nzg4NSwgNjc4ODAsIDY3ODgxLCA2Nzg4MiwgNjc4ODMsIDAsIDAsIDY3ODc5LCAxMjcxODgsIDE5MDIsIAotICAgIDY3ODg3LCA5NjM4LCAxMjk3NiwgMCwgMTI0ODMsIDEyMzY4LCA0MTc2OSwgNDI3MjYsIDQxNzY1LCAxMjg4MTksIDY2NjcsIAotICAgIDY3ODc0LCA3NTU2LCA2Nzg3OCwgNzQzNTEsIDExMjY0LCA5ODksIDQyNjc3LCA2Nzg4OSwgMCwgMTMxMSwgOTE3OTY2LCAKLSAgICA0MzI2LCAxMTAwMCwgNjM4MjQsIDEzMDY4LCAxMDkzMiwgMTI4ODgwLCA2OTE3LCA3ODE1NSwgMCwgOTQ5LCA3ODE2MiwgMCwgCi0gICAgNjE0OCwgODYwNSwgNDIyNTMsIDc4MTc3LCAwLCAwLCA0MjcxNSwgMCwgMCwgMCwgNjM4NzEsIDAsIDQxNzk2LCAxMjY5LCAKLSAgICA2NTMwLCAwLCA2NTA1NywgMCwgNTE0NCwgMTIyMjEsIDQyNzE2LCAwLCA0NDMxLCA0MzMxLCAwLCAxMjg2NzUsIDQxODM0LCAKLSAgICA1Mjc5LCAwLCAxMDMzNiwgODMxMiwgMCwgNDI3MDEsIDEyODgyNSwgMCwgNzgxNjUsIDY2MDM2LCAwLCAwLCA2NDI4LCAKLSAgICA0MjI3MCwgMCwgMCwgNDMwNTksIDQyNjY2LCA1MjU2LCAxMDY3LCAyNTUsIDEyMTMxLCAwLCA5NDkzLCAwLCA0MTAxNCwgCi0gICAgMTE3OTMsIDAsIDAsIDc0Mzk0LCA0MzQ2MCwgMTA2NTMsIDQyNzIzLCAwLCAxMTk2MzIsIDAsIDY1NjAsIDcwMTYsIDc0Mjc0LCAKLSAgICAwLCA0MzU1NiwgMzkyOSwgNzM5MDAsIDY2MTQsIDI3NjgsIDkyNTA0LCA5NzQ2LCA1MTM1LCAxMTgxMSwgMTI3OTYsIAotICAgIDExOTUzLCAwLCA2OTc2MSwgNTEzOSwgMzQ2LCA3NDMwMywgNjMwNSwgMTI3OTUsIDQ2NzUsIDUxNjgsIDc4NTUyLCAKLSAgICAxMjc3NTMsIDc0MzE1LCA3NDM2MSwgODI1MywgODgxNywgMTEzNiwgMCwgNDM1NjMsIDkyMjMyLCAwLCAxOTQ3NTAsIDczOTIsIAotICAgIDgyMzAsIDkzNjUsIDAsIDAsIDAsIDAsIDAsIDQwNDEsIDAsIDIzNTcsIDQzMjQwLCAxMjc4NiwgMjI5LCAxMTk4ODUsIAotICAgIDExOTg4NCwgNDQwMDQsIDcxNDIsIDExOTg4MSwgMTIzNTAsIDY1NTU0LCAxMTk4ODIsIDExOTg3NywgMTE5ODc2LCAxMjc4NSwgCi0gICAgNjM4NjMsIDQzNzk1LCA3NzcwLCAxMDcxMiwgNjQ4NTMsIDEyNjg2LCAxMTg5MTYsIDQyMzc1LCAwLCAxMjcyMzgsIDY2MzUyLCAKLSAgICAxMDQ3MCwgMCwgMTEwNTksIDEwNzkxLCA5MTc5NDQsIDQ1MCwgMCwgMCwgMTA0MzIsIDEyMDk3LCA1NDUwLCA2NDY5MSwgCi0gICAgMTIzMywgMCwgNDQwMDksIDc4Mjg0LCA2NjMzOCwgMCwgMCwgMTgzOSwgMTE4Nzk5LCAwLCAxMDkyNywgMTcwMSwgMCwgCisgICAgNjI3OCwgMCwgNTUxNSwgMCwgMCwgOTgzMDUxLCA2NTMzOSwgNDMyMjEsIDIyMTEsIDAsIDU1MTcsIDAsIDAsIDc0ODQxLCAKKyAgICA2Nzg4NCwgMCwgNjc4OTAsIDY3ODg1LCA2Nzg4MCwgNjc4ODEsIDY3ODgyLCA2Nzg4MywgMCwgMCwgNjc4NzksIDEyNzE4OCwgCisgICAgMTkwMiwgNjc4ODcsIDk2MzgsIDEyOTc2LCAxMjY1NDYsIDEyNDgzLCAxMjM2OCwgNDE3NjksIDQyNzI2LCA0MTc2NSwgCisgICAgNzM2MSwgNjY2NywgNjc4NzQsIDc1NTYsIDY3ODc4LCA3NDM1MSwgMTEyNjQsIDk4OSwgNDI2NzcsIDY3ODg5LCAwLCAxMzExLCAKKyAgICA5MTc5NjYsIDQzMjYsIDExMDAwLCA2MzgyNCwgMTMwNjgsIDEwOTMyLCAxMjg4ODAsIDY5MTcsIDc4MTU1LCAwLCA5NDksIAorICAgIDc4MTYyLCAwLCA2MTQ4LCA4NjA1LCA0MjI1MywgNzgxNzcsIDAsIDAsIDQyNzE1LCAwLCAwLCAwLCA2Mzg3MSwgMCwgCisgICAgNDE3OTYsIDEyNjksIDY1MzAsIDAsIDY1MDU3LCAwLCA1MTQ0LCAxMjIyMSwgNDI3MTYsIDAsIDQ0MzEsIDQzMzEsIAorICAgIDk4MzcyMCwgMTI4Njc1LCA0MTgzNCwgNTI3OSwgMCwgMTAzMzYsIDgzMTIsIDAsIDQyNzAxLCAxMjg4MjUsIDAsIDc4MTY1LCAKKyAgICA2NjAzNiwgMCwgMCwgNjQyOCwgNDIyNzAsIDAsIDk4MzU5NiwgNDMwNTksIDQyNjY2LCA1MjU2LCAxMDY3LCAyNTUsIAorICAgIDEyMTMxLCA5ODM3MTMsIDk0OTMsIDk4Mzk1OSwgNDEwMTQsIDExNzkzLCAxOTQ5MjAsIDAsIDc0Mzk0LCA0MzQ2MCwgCisgICAgMTA2NTMsIDQyNzIzLCA5ODM4NDUsIDExOTYzMiwgMCwgNjU2MCwgNzAxNiwgNzQyNzQsIDk4MzYxNSwgNDM1NTYsIDM5MjksIAorICAgIDY3OTc3LCA2NjE0LCAyNzY4LCA5MjUwNCwgOTc0NiwgNTEzNSwgMTE4MTEsIDEyNzk2LCAxMTk1MywgMCwgNjk3NjEsIAorICAgIDUxMzksIDM0NiwgNzQzMDMsIDYzMDUsIDEyNzk1LCA0Njc1LCA1MTY4LCA3ODU1MiwgMTI3NzUzLCA3NDMxNSwgNzQzNjEsIAorICAgIDgyNTMsIDg4MTcsIDExMzYsIDAsIDQzNTYzLCA5MjIzMiwgMCwgMTk0NzUwLCA3MzkyLCA4MjMwLCA5MzY1LCAwLCAwLCAKKyAgICA5ODM2MDcsIDAsIDAsIDQwNDEsIDAsIDIzNTcsIDQzMjQwLCAxMjc4NiwgMjI5LCAxMTk4ODUsIDExOTg4NCwgNDQwMDQsIAorICAgIDcxNDIsIDExOTg4MSwgMTIzNTAsIDY1NTU0LCAxMTk4ODIsIDExOTg3NywgMTE5ODc2LCAxMjc4NSwgNjM4NjMsIDQzNzk1LCAKKyAgICA3NzcwLCAxMDcxMiwgNjQ4NTMsIDEyNjg2LCAxMTg5MTYsIDQyMzc1LCAwLCAxMjcyMzgsIDY2MzUyLCAxMDQ3MCwgMCwgCisgICAgMTEwNTksIDEwNzkxLCA5MTc5NDQsIDQ1MCwgMTE5MzI4LCAwLCAxMDQzMiwgMTIwOTcsIDU0NTAsIDY0NjkxLCAxMjMzLCAwLCAKKyAgICA0NDAwOSwgNzgyODQsIDY2MzM4LCAwLCAwLCAxODM5LCAxMTg3OTksIDk4MzIxNywgMTA5MjcsIDE3MDEsIDk4MzY1NSwgCiAgICAgMjM4OCwgNDE3NDksIDQxNzYxLCA1NDUzLCA4MzYxLCAxMTk4NjUsIDQxNzU4LCA1NDQ0LCA0MTc2MywgNjQ4ODksIDcxNDMsIAotICAgIDkyNDkzLCA3ODY3NywgMCwgOTI0MjksIDc4MTc0LCA2NjQzMiwgODgwMSwgMzA1MywgNDM0MCwgMCwgMCwgNjU4MTIsIAotICAgIDkxNzgzMSwgMCwgNDE4MjQsIDAsIDEyMDIwMywgMTk0ODAwLCAxOTQ4MDMsIDQyNzAwLCAxOTQ4MDUsIDEyNzk4MCwgCisgICAgOTI0OTMsIDc4Njc3LCAwLCA5MjQyOSwgNzgxNzQsIDY2NDMyLCA4ODAxLCAzMDUzLCA0MzQwLCA5ODMwNDQsIDAsIDY1ODEyLCAKKyAgICA5MTc4MzEsIDAsIDQxODI0LCA2Nzk4NSwgMTIwMjAzLCAxOTQ4MDAsIDE5NDgwMywgNDI3MDAsIDE5NDgwNSwgMTI3OTgwLCAKICAgICAxOTQ4MDcsIDc4Njc2LCA5MjM1NiwgMTk0ODA4LCAwLCAwLCA0NDkzLCA0MzM2LCAwLCAyMzE0LCA0MzYwMiwgNzg4MjYsIAotICAgIDExOTMyNSwgMTk0ODExLCA0MjQzOSwgNjQ2MzgsIDQyMzI3LCA0MzUyOCwgNDQ4OSwgMTk0NzkxLCAwLCAxOTQ3OTMsIAotICAgIDE5MTIsIDQyMzg1LCAxMDMwNiwgMTAzNzAsIDAsIDAsIDg4NjcsIDEwMjUwLCAxMDI1OCwgMjcxMiwgMTYzNSwgNzg4MjEsIAotICAgIDE0MTAsIDkyNjcxLCAwLCAxMTg4NzgsIDAsIDAsIDk5MTksIDAsIDU1OSwgMTI4MTU3LCA0MTgyNSwgMTI3OTc1LCA3ODE4OCwgCi0gICAgNDg5MiwgNzQwMTYsIDE5NDc4MSwgNjU0MiwgNDE5NTcsIDEyODg2NSwgNTc3NywgMCwgNzU5LCA2NTc0OSwgMjA3OSwgCi0gICAgNjUyNDgsIDEyNzg4LCA2NDQ4NywgNjQ1NTIsIDAsIDEwMjIzLCA0MjA2MiwgMCwgMCwgMCwgMzY2OCwgNjU3NTQsIDQzNTYwLCAKLSAgICAxMjIyNiwgMCwgNjUxNDksIDIzNDAsIDQxOTU5LCAxOTQ3ODYsIDE5NDc4NSwgMTk0Nzg4LCA0MzYxOCwgNjU3NDcsIAotICAgIDEwOTM3LCAyOTYyLCAwLCAyMzIxLCAzNTg3LCA2NTc0NSwgOTI0MzYsIDg5MjEsIDk5NTIsIDAsIDAsIDQyNzE0LCA5OTUxLCAKLSAgICA0MzQwOSwgMTk0NzcwLCAyOTQ5LCA2NjAxMiwgMTk0Nzc1LCAxOTQ3NzQsIDI5NTgsIDY4MzU5LCA0MTgyMCwgNDMwMzgsIAotICAgIDIzOTUsIDAsIDk5NzYsIDEyMDA0MywgMTIwMDUwLCAxMjAwNTgsIDY4MjIwLCAxMjgxNDMsIDQyODA5LCA0MjgwNywgMCwgCi0gICAgMTIwMDQ2LCAxMDE5OCwgNDE1MCwgNjQzNzEsIDgzMTgsIDQxNzkwLCAwLCA0MTg5OCwgMjM2MCwgNDE3OTQsIDkxNzk0MiwgCi0gICAgMCwgMTI3ODE4LCAwLCAwLCAyNDE4LCAwLCAyNDExLCAxMTMzNiwgNzk5LCA2MzgyMywgMTAyNzYsIDEwMzA4LCAxMDM3MiwgCi0gICAgOTE3NTQxLCA0MTc3MiwgNDI4MTMsIDIzMTcsIDEwMjYwLCAxMTg5ODAsIDU1Mjg0LCA5MjIwMywgMCwgMTAzODQsIDAsIDAsIAotICAgIDAsIDc3NTMsIDIzNTEsIDY2NTUsIDY0NDg5LCAwLCAwLCA3Nzg3MiwgNDQ0MywgNDI3NzksIDIzMCwgMCwgMCwgNDM1NDksIAotICAgIDQ4NTUsIDQyMTUwLCA2NTczOSwgNTQ0MSwgNDE4OTYsIDEwMjg4LCAxMDMyMCwgMCwgODU1LCA3MDQ2LCA2MTA5LCA2NTA0NSwgCi0gICAgNjM4MzksIDc4MTk4LCAyMDQ5LCAxMDA5OCwgMCwgNzQxNDUsIDEyNzk0MywgMTAyNjQsIDEwMjgwLCA5MTg0LCAxMDM3NiwgCi0gICAgNzAxMywgNDQ2NywgMCwgMCwgMCwgNDE4ODcsIDAsIDQ4NjIsIDk3MzUsIDY1MzcsIDEyMDU5MSwgNzQyODYsIDM5MTQsIAotICAgIDkyMTc4LCAwLCA5MDY1LCAxMjk2MSwgMCwgMCwgOTIyNTMsIDAsIDI4OSwgMCwgNDY5NCwgMTE0MjAsIDQ2OTAsIDAsIAotICAgIDEyMDUxNCwgOTE3OTc4LCA0NjkzLCAwLCA0MjcyNCwgMCwgNDY4OCwgMTIwNDU0LCAwLCAwLCAxMTk2MjksIDgyMzgsIAotICAgIDMxMTAsIDEyMDE2MiwgMCwgMTIwMTYzLCA2NTI4LCAxMjc1NTMsIDQzMDM1LCAxMjAxNjEsIDIxOCwgMCwgMTUyMCwgMCwgCi0gICAgNDc4NiwgMCwgNDMyMjUsIDQ2MDIsIDAsIDc4MTY3LCAxMDA4OCwgNjU0OCwgMCwgMTIwMTU2LCA0Mzk3OCwgODk4OCwgCi0gICAgODg4OCwgMCwgMCwgMCwgMCwgMTA2NjYsIDAsIDczOTAyLCA2OTc0MCwgMCwgMCwgOTk3NSwgMCwgMTE5OTAyLCA0Njg5LCAKLSAgICA4OTMyLCAwLCA2NTU2MCwgMTE5MjA5LCA3NDQ0MSwgNzg4MTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwMDY1LCAKLSAgICA4MjA3LCAwLCA5MjYxMywgMTI4MDExLCAwLCA2NjIsIDAsIDkyNDQsIDE5NDg2MywgMCwgMTE5MjYxLCAwLCAwLCAwLCAwLCAKLSAgICA0MTkyOSwgMCwgMCwgNjY2NzQsIDQxOTI2LCAxMjA0MDgsIDEyMDQ0MywgMTA1MTMsIDY0NjM3LCAxOTQ4NjIsIDAsIDUyLCAKLSAgICAxMzExOCwgNjQ3NSwgMCwgMTIwMzQxLCAxMjA5NSwgMTAyMjUsIDQ4MTIsIDkyNTc4LCAwLCAwLCA3NDA4NSwgMCwgMzk3OCwgCi0gICAgMCwgOTE3OTQ1LCAxMjc4MjMsIDExNTgyLCAxMjA3NjEsIDEyMjgxLCAwLCA2NTQ0LCAxMzI0MSwgMCwgNjk3ODIsIAorICAgIDExOTMyNSwgMTk0ODExLCA0MjQzOSwgNjQ2MzgsIDQyMzI3LCA0MzUyOCwgNDQ4OSwgNzEzMzEsIDAsIDE5NDc5MywgMTkxMiwgCisgICAgNDIzODUsIDEwMzA2LCAxMDM3MCwgMCwgMCwgODg2NywgMTAyNTAsIDEwMjU4LCAyNzEyLCAxNjM1LCA3ODgyMSwgMTQxMCwgCisgICAgOTI2NzEsIDk4MzI0NCwgMTE4ODc4LCAwLCAwLCA5OTE5LCAxMjA1MjgsIDU1OSwgMTI4MTU3LCA0MTgyNSwgMTI3OTc1LCAKKyAgICA3ODE4OCwgNDg5MiwgNzQwMTYsIDE5NDc4MSwgNjU0MiwgNDE5NTcsIDEyODg2NSwgNTc3NywgMCwgNzU5LCA2NTc0OSwgCisgICAgMjA3OSwgNjUyNDgsIDEyNzg4LCA2NDQ4NywgNjQ1NTIsIDAsIDEwMjIzLCA0MjA2MiwgMCwgMCwgMTI2NTczLCAzNjY4LCAKKyAgICA2NTc1NCwgNDM1NjAsIDEyMjI2LCA2Nzk5MSwgNjUxNDksIDIzNDAsIDQxOTU5LCAxOTQ3ODYsIDE5NDc4NSwgMTk0Nzg4LCAKKyAgICA0MzYxOCwgNjU3NDcsIDEwOTM3LCAyOTYyLCAwLCAyMzIxLCAzNTg3LCA2NTc0NSwgOTI0MzYsIDg5MjEsIDk5NTIsIDAsIDAsIAorICAgIDQyNzE0LCA5OTUxLCA0MzQwOSwgMTk0NzcwLCAyOTQ5LCA2NjAxMiwgMTk0Nzc1LCAxOTQ3NzQsIDI5NTgsIDY4MzU5LCAKKyAgICA0MTgyMCwgMjMwMCwgMjM5NSwgMTI4NTYzLCA5OTc2LCAxMjAwNDMsIDEyMDA1MCwgMTIwMDU4LCA2ODIyMCwgMTI4MTQzLCAKKyAgICA0MjgwOSwgNDI4MDcsIDAsIDEyMDA0NiwgMTAxOTgsIDQxNTAsIDY0MzcxLCA4MzE4LCA0MTc5MCwgNjc5NzYsIDQxODk4LCAKKyAgICAyMzYwLCA0MTc5NCwgOTE3OTQyLCA3MTMxNCwgMTI3ODE4LCAwLCAwLCAyNDE4LCA5ODMwOTgsIDI0MTEsIDExMzM2LCA3OTksIAorICAgIDYzODIzLCAxMDI3NiwgMTAzMDgsIDEwMzcyLCA5MTc1NDEsIDQxNzcyLCA0MjgxMywgMjMxNywgMTAyNjAsIDExODk4MCwgCisgICAgNTUyODQsIDkyMjAzLCAwLCAxMDM4NCwgOTgzMjE4LCAwLCAwLCA3NzUzLCAyMzUxLCA2NjU1LCA2NDQ4OSwgNjk5MzEsIDAsIAorICAgIDc3ODcyLCA0NDQzLCA0Mjc3OSwgMjMwLCAwLCAwLCA0MzU0OSwgNDg1NSwgNDIxNTAsIDY1NzM5LCA1NDQxLCA0MTg5NiwgCisgICAgMTAyODgsIDEwMzIwLCAwLCA4NTUsIDcwNDYsIDYxMDksIDY1MDQ1LCA2MzgzOSwgNzgxOTgsIDIwNDksIDEwMDk4LCAwLCAKKyAgICA3NDE0NSwgMTI3OTQzLCAxMDI2NCwgMTAyODAsIDkxODQsIDEwMzc2LCA3MDEzLCA0NDY3LCAwLCAwLCAwLCA0MTg4NywgMCwgCisgICAgNDg2MiwgOTczNSwgNjUzNywgMTIwNTkxLCA3NDI4NiwgMzkxNCwgOTIxNzgsIDkzOTc2LCA5MDY1LCAxMjk2MSwgMCwgMCwgCisgICAgOTIyNTMsIDAsIDI4OSwgMCwgNDY5NCwgMTE0MjAsIDQ2OTAsIDAsIDEyMDUxNCwgOTE3OTc4LCA0NjkzLCA3Mzg5MywgCisgICAgNDI3MjQsIDAsIDQ2ODgsIDEyMDQ1NCwgMCwgMCwgNjc5OTQsIDgyMzgsIDMxMTAsIDEyMDE2MiwgOTgzODk5LCAxMjAxNjMsIAorICAgIDY1MjgsIDEyNzU1MywgNDMwMzUsIDY5ODk4LCAyMTgsIDAsIDE1MjAsIDAsIDQ3ODYsIDAsIDQzMjI1LCA0NjAyLCAwLCAKKyAgICA3ODE2NywgMTAwODgsIDY1NDgsIDAsIDEyMDE1NiwgNDM5NzgsIDg5ODgsIDg4ODgsIDAsIDAsIDAsIDAsIDEwNjY2LCAwLCAKKyAgICA3MzkwMiwgNjk3NDAsIDAsIDAsIDk5NzUsIDEyODAzOSwgMTE5OTAyLCA0Njg5LCA4OTMyLCAwLCA2NTU2MCwgMTE5MjA5LCAKKyAgICA3NDQ0MSwgNzg4MTAsIDAsIDAsIDY3OTg3LCAwLCAwLCAwLCA2Nzk4OSwgMCwgMTAwNjUsIDgyMDcsIDAsIDkyNjEzLCAKKyAgICAxMjgwMTEsIDAsIDY2MiwgMCwgOTI0NCwgMTk0ODYzLCAwLCAxMTkyNjEsIDk4MzQyMCwgMCwgMCwgMCwgNDE5MjksIDAsIDAsIAorICAgIDY2Njc0LCA0MTkyNiwgMTIwNDA4LCAxMjA0NDMsIDEwNTEzLCA2NDYzNywgMTk0ODYyLCA2ODAxMywgNTIsIDEzMTE4LCAKKyAgICA2NDc1LCAwLCAxMjAzNDEsIDEyMDk1LCAxMDIyNSwgNDgxMiwgOTI1NzgsIDAsIDY3OTkyLCA3NDA4NSwgMCwgMzk3OCwgMCwgCisgICAgOTE3OTQ1LCAxMjc4MjMsIDExNTgyLCAxMjA3NjEsIDEyMjgxLCAwLCA2NTQ0LCAxMzI0MSwgOTM5NjEsIDY5NzgyLCAKICAgICAxMjg1NTcsIDE5NDg2MCwgMTE3NjUsIDY1MjU4LCAxMDM2OSwgMCwgMTU4NSwgNzE5MiwgMTAyNDksIDQyMiwgMTUwMCwgCiAgICAgMjAzNiwgOTg2LCAxOTQ4NTksIDY0Mzk0LCA1NzgxLCA1NTk5LCA2NDI5NCwgMjQ5NCwgMTIwNDUwLCA0ODYxLCA3NDAyMSwgCi0gICAgNjQzMzQsIDc4MjAzLCAxMjc4MDgsIDAsIDkyMjY2LCA2NTEwMiwgODk2MSwgNjU4NDIsIDEwMjQzLCAxMDI0NSwgOTE3OTMzLCAKKyAgICA2NDMzNCwgNzgyMDMsIDEyNzgwOCwgMCwgOTIyNjYsIDY1MTAyLCA4OTYxLCA2NTg0MiwgMTAyNDMsIDEwMjQ1LCA3NDE5MSwgCiAgICAgMTIwNDEwLCAwLCAxMjA0NTMsIDY0ODIxLCA5NDc4LCAyNTA4LCA5MjY4MywgMCwgMjAyLCAxMjgyNDYsIDc0MTMxLCAxMjQyLCAKICAgICA2NTUxNCwgMCwgNjM5NDAsIDEyODcwNiwgNjQ1MzMsIDEyMDEyOSwgMCwgNjc4NDIsIDExOTkwLCA5MjQzMCwgNjM5MzksIAotICAgIDQzMzc1LCA2NTQ0MCwgMjUwNCwgMCwgNzg2NzEsIDY0ODI5LCAwLCA2OTQzLCA5MTc5MzQsIDU4NTksIDAsIDI4NTgsIDAsIAotICAgIDc0Mjk0LCAwLCA2OTIzOSwgMCwgMTE5MDI3LCAxMjk5MiwgMjc1MywgMTkzNiwgNzQ0OTEsIDkyNTc0LCAyNzUxLCAxMjY2MiwgCi0gICAgMjc2MywgODk1MywgNjQ3MDEsIDEwNzMxLCAxMjkyMiwgNzA1MiwgOTE3ODM5LCAwLCAwLCAwLCA2MzkyMCwgNzQxMjgsIAotICAgIDI4NTYsIDExOTkxMCwgNDcsIDExOTkxMSwgMTI2OTg2LCA2NTg1OCwgMCwgMCwgMCwgNzg5OSwgMCwgODQxNywgNDM3OTgsIAotICAgIDcwNzIsIDAsIDAsIDQwMzMsIDEyODE2NCwgNDM5OTIsIDAsIDAsIDIxMiwgNjQ2MDAsIDE5MDMsIDEyMzIwLCAwLCAwLCAwLCAKLSAgICAwLCA4OTE1LCAyNzU5LCA5NDUsIDY2ODksIDAsIDAsIDAsIDAsIDEyOTEsIDc0ODI4LCAwLCAwLCA5NTMxLCAxMzE1NSwgCi0gICAgODUwNSwgNjgzNzksIDEyMDYyLCAwLCAwLCA2NTQ4NywgOTIxODksIDQxODM3LCAxMjA2MTEsIDEyMDQzMiwgMCwgMCwgMCwgCi0gICAgMTIwNDMzLCAwLCA2MzkzNSwgNzM5NjIsIDEyMDgwNiwgNjQ3ODcsIDQzNTI0LCAwLCA2NDQyNiwgMCwgMTk0OTQ4LCAwLCAwLCAKLSAgICA2NTY2NCwgNjY5MywgOTg0MywgMCwgODY3NCwgMTE5ODg3LCAxMjg4MTIsIDkyNzE1LCAwLCAxMjYyNCwgMCwgMTY3MywgCi0gICAgNDgxMSwgOTIzODMsIDU5ODYsIDkzMzgsIDMwNDYsIDc0NDgwLCA1OTg1LCA5MTc5MjgsIDExOTU5OCwgOTgyMCwgMCwgCi0gICAgMTIxODcsIDAsIDAsIDU5ODQsIDAsIDQzMzA4LCA0MzkzLCAwLCAwLCAwLCAwLCAwLCA3NDgyNiwgNjQ3MzMsIDAsIDAsIAotICAgIDM0OTEsIDAsIDAsIDEyODIxOSwgMzUxNCwgNjU0ODUsIDAsIDc0OTIsIDAsIDc0NjA1LCA5MjQ4MywgNzUxNCwgMCwgMCwgCi0gICAgMTk0NzMxLCA3NTAyLCA3NTg3LCA2ODM1MywgMCwgMCwgNjM5MjUsIDAsIDc2MTAsIDIxOSwgMCwgMCwgNjkyLCA0MzU4OCwgCi0gICAgNzQ0MzMsIDQxNjM1LCA0MzI0MSwgOTY4OCwgNzE0NywgOTUzNSwgMCwgMCwgMCwgNjQ1MzAsIDAsIDY0NjEwLCAxMTgwNCwgCi0gICAgMCwgNzE0OSwgNzQ1MywgMCwgODAxMywgMCwgOTIzMDEsIDAsIDg4OTUsIDUyNTMsIDAsIDU0NTgsIDAsIDI4NjYsIDAsIAotICAgIDEyNzg2MCwgNjUxMTEsIDY4NDMzLCA2NzAwLCAxMjA0ODQsIDAsIDAsIDAsIDg5NjIsIDc3OTYwLCA5NjQxLCA0MzY5NCwgCi0gICAgNzA1OSwgMCwgMCwgOTYwNCwgNzg3MDAsIDc0NDEsIDYzODI2LCA3ODcwNiwgMTE4OTQxLCA2NDM5MiwgMTk0NzM1LCAwLCAKLSAgICAyODQ0LCAwLCA0MTk3NCwgMCwgMTIxMzksIDAsIDAsIDAsIDMzNTgsIDY1Mjk1LCAwLCAzMTA0LCAxOTQ3MzQsIDAsIAotICAgIDE5NDc2NSwgMCwgNTMwOCwgMCwgMjkwLCAwLCAwLCAyODYyLCAyNzkyLCAxOTUwODgsIDAsIDAsIDMyNjgsIDY2NTkxLCAwLCAKLSAgICA2NTUyLCA0MjM2NywgNzAzNSwgMTIwNTU4LCAwLCAwLCAxODE0LCAwLCAxMDI0MCwgOTIzMzgsIDc0MzA1LCAwLCA3NDUyOCwgCi0gICAgNjU5MDMsIDAsIDQyNjQ2LCA3NjA2LCAyNTkxLCAyODM3LCA0MzQxLCA3Nzk1NiwgNjQ0ODIsIDEyNzMzNywgODE2MywgCi0gICAgNjUyNzAsIDAsIDAsIDAsIDkxMTIsIDc0NDMxLCA4NjMsIDk0OTAsIDExOTg5OCwgOTE3ODM3LCA0MzMyMywgMTIwNTEzLCAKLSAgICAxMTk4OTcsIDkwNzEsIDEyNzMzMywgMCwgMzY1NCwgNzc4OSwgOTYzNywgMCwgMjUzNSwgNjU1MDQsIDc2NTMsIDQwOTkzLCAKLSAgICAxMTk4OTksIDY2NTg3LCAxOTUwOTgsIDAsIDkyNDAxLCAwLCAxMTAwNiwgMTI5MjcsIDc4MDcsIDgwNzMsIDAsIDEwNjI5LCAKLSAgICAwLCA3NDA4OCwgMzA1NiwgMTA4MjMsIDEyODc5NywgMTI3MzI3LCA4NzYyLCAxMDUwOCwgNjk2ODksIDczNzcwLCA0Mzk2OSwgCi0gICAgNDMxOTMsIDEwNzM3LCAzNDYzLCAwLCAwLCA2NjYzMywgODY5NSwgNDgxNSwgMTEzMjIsIDU4MTEsIDEyMzQ1LCA3MDQ5LCAwLCAKLSAgICA1MTk1LCAxOTUwODEsIDAsIDY2NjM5LCAwLCAwLCAwLCAxMjgwNDEsIDAsIDkyMzg1LCAxMjYyLCAwLCA2NTYxLCAxOTkzOSwgCi0gICAgMCwgMCwgMCwgMTE5OTA2LCAwLCAwLCAwLCAwLCAwLCAxMTk5MDcsIDY0NjEyLCAxMTk5MSwgMCwgMCwgMCwgMTUwMiwgMCwgCi0gICAgMCwgOTEwNywgMTI3MzE2LCA1NzAyLCAzNjU1LCA2NzY2MSwgODQzMCwgMCwgNzQxMzIsIDEyMDc1OCwgMCwgNzQwNTcsIAotICAgIDk2MDMsIDAsIDUyNTQsIDEyMDc0MiwgNzcyNCwgNzQzODgsIDY4Mzc1LCAxMDc5NiwgNTEyOSwgMCwgMCwgNTkwLCA3NTc5LCAKLSAgICA1NjE0LCA1ODkzLCA5MjI4MCwgMTE3MjAsIDkyNDk2LCAxMTcyMSwgMCwgNDc5OCwgMCwgMTE5MzE2LCA2NjAzOCwgNDc5MywgCi0gICAgNjc4NTEsIDExNzI2LCAxMjc1NDEsIDc0MjA0LCA2ODYxMCwgMCwgNjg2MjYsIDg5NCwgMzAwLCA5MTc4MTMsIDEyMzA2LCAKLSAgICA2NjIzNSwgODAwNCwgMCwgMCwgMjU2MiwgMCwgMCwgNDI1MDMsIDAsIDExNjUyLCAwLCAwLCAxMTkyNDEsIDkyNjQ5LCAwLCAKLSAgICA1MDk2LCA1MDk1LCAyODYzLCAzNDI0LCA5MjI0NCwgMTA0NTQsIDQyNTMwLCA1MDk0LCAxMTk2MzgsIDAsIDEzMTU2LCAwLCAKLSAgICAxMDgzMiwgNTA5MywgMCwgMCwgMCwgNTA5MiwgMTA3MDgsIDExMzI3LCAwLCA1MDkxLCAxNzYsIDAsIDkxNTMsIDQxMDQsIAotICAgIDc4NTk5LCA3ODYwMSwgMTIxNSwgNDI3MTIsIDU3NDQsIDEyMjcyLCA5ODMyLCAxMTc3NywgMCwgMTI3MzcxLCA0Mjg4MSwgMCwgCisgICAgNDMzNzUsIDY1NDQwLCAyNTA0LCAwLCA3ODY3MSwgNjQ4MjksIDk4MzkwMSwgNjk0MywgOTE3OTM0LCA1ODU5LCAwLCAyODU4LCAKKyAgICA5ODMzNTMsIDc0Mjk0LCA5ODM5MDUsIDY5MjM5LCAwLCAxMTkwMjcsIDEyOTkyLCAyNzUzLCAxOTM2LCA3MDA3OCwgOTI1NzQsIAorICAgIDI3NTEsIDEyNjYyLCAyNzYzLCA4OTUzLCA2NDcwMSwgMTA3MzEsIDEyOTIyLCA3MDUyLCA5MTc4MzksIDAsIDAsIDAsIAorICAgIDYzOTIwLCA3NDEyOCwgMjg1NiwgMTE5OTEwLCA0NywgNjk5MDgsIDEyNjk4NiwgNjU4NTgsIDAsIDAsIDAsIDc4OTksIDAsIAorICAgIDg0MTcsIDQzNzk4LCA3MDcyLCAwLCAwLCA0MDMzLCAxMjgxNjQsIDQzOTkyLCAwLCAwLCAyMTIsIDY0NjAwLCAxOTAzLCAKKyAgICAxMjMyMCwgMCwgMCwgMTk0NTYzLCAwLCA4OTE1LCAyNzU5LCA5NDUsIDY2ODksIDAsIDAsIDAsIDAsIDEyOTEsIDc0ODI4LCAKKyAgICAwLCAwLCA5NTMxLCAxMzE1NSwgODUwNSwgNjgzNzksIDEyMDYyLCAwLCAwLCA2NTQ4NywgOTIxODksIDQxODM3LCAxMjA2MTEsIAorICAgIDEyMDQzMiwgMCwgMCwgMCwgMTIwNDMzLCAwLCA2MzkzNSwgNzM5NjIsIDEyMDgwNiwgNjQ3ODcsIDQzNTI0LCAwLCA2NDQyNiwgCisgICAgMCwgMTk0OTQ4LCAwLCAwLCA2NTY2NCwgNjY5MywgOTg0MywgMCwgODY3NCwgMTE5ODg3LCAxMjg4MTIsIDkyNzE1LCAwLCAKKyAgICAxMjYyNCwgMCwgMTY3MywgNDgxMSwgOTIzODMsIDU5ODYsIDkzMzgsIDMwNDYsIDc0NDgwLCA1OTg1LCA5MTc5MjgsIAorICAgIDExOTU5OCwgOTgyMCwgMCwgMTIxODcsIDAsIDAsIDU5ODQsIDAsIDQzMzA4LCA0MzkzLCA2NzY1MCwgMCwgMCwgMCwgMCwgCisgICAgNzQ4MjYsIDY0NzMzLCAwLCAwLCAzNDkxLCAwLCAwLCAxMjgyMTksIDM1MTQsIDY1NDg1LCAwLCA3NDkyLCAwLCA3NDYwNSwgCisgICAgOTI0ODMsIDc1MTQsIDk4MzM1OSwgMCwgMTk0NzMxLCA3NTAyLCA3NTg3LCA2ODM1MywgMCwgMCwgNjM5MjUsIDAsIDc2MTAsIAorICAgIDIxOSwgMCwgMCwgNjkyLCA0MzU4OCwgNzQ0MzMsIDQxNjM1LCA0MzI0MSwgOTY4OCwgNzE0NywgOTUzNSwgMCwgOTM5OTEsIAorICAgIDAsIDY0NTMwLCAwLCA2NDYxMCwgMTE4MDQsIDAsIDcxNDksIDc0NTMsIDAsIDgwMTMsIDAsIDkyMzAxLCAwLCA4ODk1LCAKKyAgICA1MjUzLCA3MDAyNSwgNTQ1OCwgMCwgMjg2NiwgMCwgMTI3ODYwLCA2NTExMSwgNjg0MzMsIDY3MDAsIDEyMDQ4NCwgMCwgCisgICAgMTIwNTgzLCAwLCA4OTYyLCA3Nzk2MCwgOTY0MSwgNDM2OTQsIDcwNTksIDk4MzY2OCwgMCwgOTYwNCwgNzg3MDAsIDc0NDEsIAorICAgIDYzODI2LCA2Nzk3MCwgMTE4OTQxLCA2NDM5MiwgMTk0NzM1LCA5ODM2NzgsIDI4NDQsIDk4MzkzMiwgNDE5NzQsIDAsIAorICAgIDEyMTM5LCA2Nzk3MSwgMCwgMCwgMzM1OCwgNjUyOTUsIDAsIDMxMDQsIDE5NDczNCwgMCwgMTk0NzY1LCA5ODMyMjcsIAorICAgIDUzMDgsIDAsIDI5MCwgMCwgMCwgMjg2MiwgMjc5MiwgMTk1MDg4LCA5ODMwNzAsIDAsIDMyNjgsIDY2NTkxLCAwLCA2NTUyLCAKKyAgICA0MjM2NywgNzAzNSwgMTIwNTU4LCAwLCAwLCAxODE0LCAwLCAxMDI0MCwgOTIzMzgsIDc0MzA1LCAwLCA3NDUyOCwgNjU5MDMsIAorICAgIDAsIDQyNjQ2LCA3NjA2LCAyNTkxLCAyODM3LCA0MzQxLCA3Nzk1NiwgNjQ0ODIsIDEyNzMzNywgODE2MywgNjUyNzAsIDAsIAorICAgIDc3OTMyLCAwLCA5MTEyLCA3NDQzMSwgODYzLCA5NDkwLCAxMTk4OTgsIDEyODM0OSwgNDMzMjMsIDEyMDUxMywgMTE5ODk3LCAKKyAgICA5MDcxLCAxMjczMzMsIDAsIDM2NTQsIDc3ODksIDk2MzcsIDAsIDI1MzUsIDY1NTA0LCA3NjUzLCA0MDk5MywgMTE5ODk5LCAKKyAgICA2NjU4NywgMTk1MDk4LCAwLCA5MjQwMSwgOTgzODg1LCAxMTAwNiwgMTI5MjcsIDc4MDcsIDgwNzMsIDAsIDEwNjI5LCAwLCAKKyAgICA3NDA4OCwgMzA1NiwgMTA4MjMsIDEyODc5NywgMTI3MzI3LCA4NzYyLCAxMDUwOCwgNjk2ODksIDczNzcwLCA0Mzk2OSwgCisgICAgNDMxOTMsIDEwNzM3LCAzNDYzLCA5ODMwNjUsIDAsIDY2NjMzLCA4Njk1LCA0ODE1LCAxMTMyMiwgNTgxMSwgMTIzNDUsIAorICAgIDcwNDksIDExOTkxMSwgNTE5NSwgMTk1MDgxLCAwLCA2NjYzOSwgMCwgMCwgMCwgMTI4MDQxLCAwLCA5MjM4NSwgMTI2MiwgMCwgCisgICAgNjU2MSwgMTk5MzksIDAsIDAsIDEyODUzNSwgMTE5OTA2LCAwLCAwLCA5ODMwOTcsIDAsIDk4MzY1OCwgMTE5OTA3LCAKKyAgICA2NDYxMiwgMTE5OTEsIDAsIDAsIDAsIDE1MDIsIDkxNzU2OCwgMCwgOTEwNywgMTI3MzE2LCA1NzAyLCAzNjU1LCA2NzY2MSwgCisgICAgODQzMCwgMCwgNzQxMzIsIDEyMDc1OCwgMCwgNzQwNTcsIDk2MDMsIDAsIDUyNTQsIDEyMDc0MiwgNzcyNCwgNzQzODgsIAorICAgIDY4Mzc1LCAxMDc5NiwgNTEyOSwgMCwgMCwgNTkwLCA3NTc5LCA1NjE0LCA1ODkzLCA5MjI4MCwgMTE3MjAsIDkyNDk2LCAKKyAgICAxMTcyMSwgMCwgNDc5OCwgMCwgMTE5MzE2LCA2NjAzOCwgNDc5MywgNjc4NTEsIDExNzI2LCAxMjc1NDEsIDc0MjA0LCAKKyAgICA2ODYxMCwgMCwgNjg2MjYsIDg5NCwgMzAwLCA5MTc4MTMsIDEyMzA2LCA2NjIzNSwgODAwNCwgMCwgMCwgMjU2MiwgCisgICAgMTI2NTU1LCAwLCA0MjUwMywgMCwgMTE2NTIsIDAsIDAsIDExOTI0MSwgNjQ2OTksIDEyNjU2OSwgNTA5NiwgNTA5NSwgCisgICAgMjg2MywgMzQyNCwgOTIyNDQsIDEwNDU0LCA0MjUzMCwgNTA5NCwgMTE5NjM4LCAwLCAxMzE1NiwgMCwgMTA4MzIsIDUwOTMsIAorICAgIDAsIDY5ODUyLCAwLCA1MDkyLCAxMDcwOCwgMTEzMjcsIDAsIDUwOTEsIDE3NiwgMCwgOTE1MywgNDEwNCwgNzg1OTksIAorICAgIDc4NjAxLCAxMjE1LCA0MjcxMiwgNTc0NCwgMTIyNzIsIDk4MzIsIDExNzc3LCA3MTI5OSwgMTI3MzcxLCA0Mjg4MSwgMCwgCiAgICAgODk4MCwgMTE4OTg4LCA2Nzg2MSwgODg0NCwgNzIwOSwgMCwgMCwgNDI3OCwgMCwgMCwgMTk0Nzg5LCAwLCA5MDc0LCA0MzQ4LCAKLSAgICAwLCA2NTU1OCwgNjU5NDYsIDgxMTMsIDcwODcsIDUyNTUsIDE3ODYsIDY2MSwgMCwgMCwgMCwgNzQ0MjMsIDAsIDU4NiwgCi0gICAgNzQ0MTQsIDY0MzU5LCAxMjY3LCAwLCA2NTQ2OCwgMCwgNjU3MzEsIDAsIDEyNzE3OSwgMzYyMSwgMTIwNDczLCA2NjY2NiwgCi0gICAgNjQyMTEsIDAsIDY1NjIsIDEyOTI4LCAwLCAxMjI4LCA2NTQ5MCwgMTEzODMsIDAsIDAsIDAsIDE3MTQsIDc0NDA2LCAKLSAgICAxMjc4MzEsIDAsIDAsIDAsIDY2MjI1LCAwLCAwLCA0MjY2MCwgMTE0MzYsIDIwNzAsIDY0LCAxMjA2OTQsIDAsIDEwMjkxLCAKLSAgICAxMDMyMywgMjgyNiwgMCwgMCwgMCwgNDIwMDgsIDk3MDgsIDQyNzEwLCAwLCA0MjAxMSwgNDE5OTksIDkyMTY0LCAxMjIwNiwgCi0gICAgNTgzOSwgMTcwMiwgMTI0MCwgNzQwNjUsIDYyODYsIDAsIDAsIDY1ODMzLCA3Nzg0OCwgMCwgMTc2NSwgMCwgMCwgNjU1ODgsIAotICAgIDAsIDAsIDAsIDg0MDEsIDAsIDQyMDE0LCAwLCA3MDMwLCAxOTQ3MDQsIDEwNDc5LCA2NDk1OSwgMjg1MiwgMCwgMCwgMCwgMCwgCi0gICAgMTI4NTg2LCA5MTc5NTEsIDY5NjMsIDAsIDEyNjY3LCA2NDU0MCwgNzQ3ODYsIDEwMTQ3LCAxMjkzNSwgMTI3NTY4LCAwLCAwLCAKLSAgICAwLCAwLCA3ODc1NywgMCwgMCwgMCwgMCwgOTk5NCwgMTI0NjcsIDI4NjQsIDY0NzE5LCAxMTQ4LCAxMDQzNSwgMTE0NjIsIAotICAgIDQxNjc1LCAwLCAyNzY1LCAwLCAwLCAwLCAxMjA3MTksIDEyODE4OCwgOTI1MTYsIDY2NjYyLCAwLCA3ODEzMywgOTM2NCwgCi0gICAgMTk0Njg1LCA3NDQxNiwgMCwgMCwgNzc5ODgsIDI2MywgMTA0NDksIDQxMjg4LCAwLCA0MTgzOSwgNzgzODcsIDAsIDc3OTg2LCAKLSAgICAwLCA2OTMxLCA2OTcyMiwgNjQzNTUsIDcxNzcsIDEyMDUzMCwgMCwgMCwgMCwgNDI2MiwgMTAyODUsIDEwNzIyLCA0MjAyMCwgCi0gICAgMCwgNjgwNiwgNjk5MiwgNDIwMTksIDAsIDQxMjkwLCAwLCA3NTAsIDAsIDAsIDEwMTYzLCA2MzkxMywgNzQwNjYsIDcwMzIsIAotICAgIDU5NTQsIDY0OTMxLCA0MzE0LCAwLCAxOTgsIDY4NDUzLCA3MzAsIDEyMDA5NCwgNjM5MDcsIDc3OTkzLCA3ODg5MSwgCi0gICAgMTMxNjUsIDcxMDcsIDc0MTcxLCA0MjgwNCwgNjc4LCA4MjQwLCA3ODAxNSwgMTI4Nzg0LCA0MTM3OCwgMTEwMDgsIDY5MzgsIAotICAgIDkyMjIyLCA5MjYzNywgMjA5NywgNjYyNDYsIDEyMDU2MCwgMCwgMCwgMCwgMzg5MiwgNjg2MzIsIDY5NjQyLCA2NzEyLCAKLSAgICA2NjA0NSwgNDE0NzAsIDY0ODA1LCAwLCAwLCAwLCA2NDgwMSwgMCwgNDk3LCAxMjEwMCwgNTk1MywgOTI2NjcsIDc3OTYsIAotICAgIDY5NjY5LCA0MzI1NCwgNzM4MzEsIDAsIDEwMjkzLCA1OTUyLCAxMjgxLCAwLCAwLCAwLCAxMDY3NywgNjA0LCA0MTA5NywgCi0gICAgOTE4MiwgMTg1OSwgMCwgOTI2MDMsIDM0MjUsIDEyNzQ4OCwgMCwgMjgzNiwgMCwgMCwgOTcwNywgMCwgNDMyMDIsIDAsIDAsIAotICAgIDY1MTk5LCAxNzM4LCA5MTc4MTgsIDEyODE1OCwgMjgzMiwgOTI3MDIsIDk2NzAsIDEyOTM3LCAwLCA2NjM3NCwgOTE3OTU2LCAKLSAgICAwLCAyODIyLCA2ODEyMiwgNDQzNiwgOTI1MTksIDAsIDczNzUyLCAwLCA2NDg3MiwgOTIzNDAsIDEzMzEsIDAsIDAsIDAsIAotICAgIDEyNzA4LCAwLCA1MDkwLCA1MDg5LCAwLCAwLCAxMTkxMDksIDAsIDEyODY4MSwgMzE5LCAxMTg4NDcsIDQzNDc5LCA5NDc3LCAKLSAgICAwLCAwLCA1MDg3LCA5MjMyNSwgNzY0MCwgOTYsIDUwODYsIDAsIDkyMzc5LCAwLCA1MDg1LCA2NDI4NiwgOTI2NjUsIDAsIAotICAgIDQxNDIyLCAwLCAxMTk5MDEsIDQyMzU2LCAzNzcyLCAwLCAwLCA1MDExLCAwLCAwLCAwLCAwLCAxMjcxNjUsIDEyNzI0MSwgCi0gICAgNjY3NywgNzYwMSwgMCwgNTkxLCA2NDQxOSwgMTE4OTUzLCA5MjI2MiwgMCwgMTE4OTIzLCA3MzczNCwgMCwgMTA5MzksIAotICAgIDYxMDYsIDY5MzMsIDQxMjcxLCA2NzYwLCAxMTk5MDMsIDQ1MzQsIDQxMjcwLCAxMjg4NzYsIDAsIDY1NTc0LCAwLCA5MjI0LCAKLSAgICAwLCAzNjcxLCA4OTc2LCAwLCAwLCA0MTI3NSwgNjM3MiwgMTI4MDg0LCA1NTI2MSwgNzk2MywgNjM3MSwgMCwgNTY4LCAwLCAKLSAgICA0MTI3MywgMCwgMCwgNjcyOCwgMCwgOTcxNSwgMCwgODI1OCwgMTE3NTMsIDc0ODIwLCAwLCA5NjAyLCAxMTg5MTksIDQyLCAKLSAgICAwLCA0MzY4OCwgMCwgMCwgNzQ1OCwgMCwgMCwgNjUzODUsIDExOTkwMCwgMCwgMTE5NTgsIDAsIDkxNzgyMiwgMCwgNjI1NCwgCi0gICAgNDI3MjEsIDY2MzM2LCA4MDQ1LCAxMTU1MCwgMCwgMCwgMCwgNDI4NTgsIDExNzg5LCA2NTg2OCwgNTU1NywgMTAxMzMsIAotICAgIDk3MzcsIDEzMTA5LCAwLCA5NDY3LCA1NTU4LCA4ODc4LCAxMjgxMzYsIDE5NTAzNiwgNzQ1MSwgNjcwNiwgMTAxNDYsIDAsIAotICAgIDkwODYsIDY0NTY2LCAwLCA2NDU4NCwgNzQzNywgNzQ1NCwgMTI1OTQsIDEyODY5MCwgNjgzNjIsIDQ1NDYsIDc3MzEsIDAsIAotICAgIDExOTkwOSwgNzQyNDMsIDAsIDM4MDUsIDAsIDE5NDU2NSwgNDQwMDEsIDQxMDA4LCAwLCA2MzA3LCAxOTk0OSwgMCwgNzU0NCwgCi0gICAgMCwgNDM0NjksIDAsIDAsIDEwMTUyLCA2NDQyMiwgNjUwOTEsIDExOTExMywgNzYwMiwgNjQ3MjksIDAsIDQzNTIxLCAwLCAKLSAgICA0MjMwMiwgNDM3MTEsIDQzNTIzLCA0MTQ0NywgNTU1OSwgMCwgODcwNCwgMjM5NywgNTU1NiwgMCwgMCwgMCwgOTAxMSwgCi0gICAgOTYzMCwgOTI2MzMsIDAsIDAsIDU1MDYsIDAsIDE5MTEsIDY2NjUyLCAwLCA5OTYxLCA4ODQ1LCA2NjY5OCwgMCwgMTA3OTIsIAotICAgIDg4ODksIDAsIDIwOTgsIDAsIDY0NzUxLCAwLCA2NjYyMiwgMCwgMCwgNzQzNjQsIDAsIDAsIDAsIDc0MzY1LCA3NTUyLCAwLCAKLSAgICAwLCA2NTM4NCwgNzIyMywgNDU1OSwgMCwgMTk1NiwgNDMxMzgsIDcwMjQsIDY1NzI4LCA2NDUwMSwgMTIxMCwgMTk1MDc3LCAKLSAgICA2NTE3NSwgMTAxODQsIDQzMTQwLCA0MzY1NCwgMCwgMCwgMCwgMzgsIDg1MzMsIDY2NjY5LCAxMTkxMjQsIDAsIDAsIDAsIAotICAgIDQzNTcsIDAsIDExOTgzNywgMCwgNzQyMzMsIDk5NjcsIDExOTg1MiwgNDI4NjAsIDExOTgzOCwgMTA5NDEsIDY1NzIxLCAKLSAgICA2OTYyLCAwLCAwLCAxMTkzMjQsIDAsIDExMDE0LCAxMjc5NzIsIDg5NDIsIDEyMDAwLCA2OTIyNCwgOTIyNjcsIDEyODUzNiwgCi0gICAgMTE5NzQsIDkyMjEzLCA0Mjc3MiwgMTI3NTE4LCAxMTY1MCwgNTAxMywgOTI2NjMsIDEyODY3NywgNjYyMTAsIDExODkxNCwgCi0gICAgNjYxMywgOTI0NzYsIDAsIDQzODE5LCAwLCAwLCA2NDcxNCwgMCwgMCwgMTIxNjIsIDEyMTIwLCA0MzQ3NiwgMCwgMTEwMjQsIAotICAgIDc0ODExLCA2NjIyOCwgMTA1NjMsIDAsIDEyNzE5NiwgNDM1MjIsIDI0NjIsIDAsIDE4MzcsIDAsIDYzOTcyLCA2OTU3LCAwLCAKLSAgICAxMjA1NTksIDQ5NTIsIDY1NzE4LCA2NTgyNywgNTUwNCwgNjU3MjAsIDY1NzE0LCA2NTcxNSwgNjU3MTYsIDAsIDEyNzAwNSwgCi0gICAgMTI3MTE5LCAzMTA5LCA2Mzk3NSwgNzQwMjgsIDAsIDgxMDcsIDExOTIzNCwgMTEyNywgNDU1LCAwLCA2Mzk2OCwgMTI3OTI0LCAKLSAgICAzNDgzLCAxMTk1OTMsIDE5ODksIDAsIDY5Njc4LCA5MTA0LCAzNTAzLCA2NTM3NSwgOTI1MDksIDY2OTQsIDQyNjMzLCAKLSAgICAxODY0LCAwLCA3NDMwNiwgNDE0NDYsIDI1NDAsIDc3MzYsIDAsIDc0MDY0LCAwLCAxMDUyMSwgMCwgNDIxNzMsIDk3MDUsIAotICAgIDc0MTI0LCA4NjA0LCA2OTU1LCAxMDkxNiwgNDM2ODQsIDYxNDksIDM4ODcsIDE5OTU2LCAxNDExLCAyODI0LCAwLCAxMDEwNiwgCi0gICAgMTI3ODYyLCAxNDAzLCAxMjg4MzksIDEzNDcsIDk2MzEsIDc0NDQ0LCAwLCAwLCAwLCAwLCA4NjQwLCAwLCAyNTgsIDE2NTQsIAotICAgIDAsIDAsIDAsIDQzMzE0LCAwLCAwLCA0MDQyLCAxMTQ3OCwgMjg3MywgNjM5NzcsIDExNTIyLCA0MTY2OCwgODU0OSwgCi0gICAgMTA4NjEsIDAsIDYzOTc2LCAwLCA2ODYyMywgMCwgNzQ1ODUsIDQxMzkxLCAwLCA5MTc5MDMsIDM3NiwgNjk4NywgOTIyMSwgCi0gICAgMCwgMCwgODgyMywgMTI4Njk3LCAxMjk0MywgNjUxODUsIDQxODY5LCAxMjYxOSwgMCwgMTAxNTQsIDAsIDc0NDM5LCAyMDM5LCAKLSAgICAwLCA3NDQ2LCAxNjg0LCA2Mzk3OSwgMTA5NzQsIDQ1OCwgMTIwNjIwLCAwLCA2OTc5MSwgMTI3MTYxLCAxMTkxNiwgNjUwMTYsIAotICAgIDAsIDY5NjcxLCA0MjExNSwgMCwgMTIyODgsIDc4MDU3LCAwLCAxNDkzLCA0MjExMSwgNzU1MywgNDA5NywgMTI4MTk5LCAKLSAgICAxMzA4MCwgMCwgNjU4MDgsIDY2MTAsIDYwMzAsIDgwNTksIDc1MDgsIDEzMTMxLCAwLCAwLCAwLCA4Nzk0LCA0MTI3OCwgCi0gICAgNDE2MjksIDEyMTU0LCAxMjgxOTIsIDQxMjc3LCA2NDY1OCwgMCwgNjQzODAsIDY2MjUsIDc0MzU0LCAxOTkwNCwgMCwgMCwgCi0gICAgMCwgNjUzNzEsIDcwNzgsIDAsIDgzMywgMCwgNjM2OSwgMCwgMTA5NzksIDQxOTUzLCAwLCA0MTQzNCwgNjA2MiwgMCwgMCwgCi0gICAgMTk5MTYsIDY5MTMsIDkzMywgMTM0MSwgOTg0MiwgNjcyMCwgNjU3NDQsIDAsIDAsIDEyODI5NSwgMCwgNzQwNSwgMTAxMDUsIAotICAgIDY1ODEwLCAwLCA0MTYzMiwgNzQ5MywgNTUyOTAsIDAsIDQxNjIyLCAwLCAwLCAxMTk1NTYsIDc0NTg0LCA3NjMyLCA5NzE2LCAKLSAgICAxOTk1NCwgOTgwNSwgNTk5MCwgOTAwLCAwLCA2Mzk1NywgMCwgMCwgMzYxMiwgMCwgNjQzNzYsIDAsIDUzODksIDkyNTk3LCAKLSAgICAwLCA2NTkzOCwgMjgzOSwgOTYyMSwgNTgyLCAwLCA3NDM2OCwgMzc0OSwgNjk0OSwgNzU2OSwgNzQwNjEsIDAsIDAsIDY5NTYsIAotICAgIDQ0MDMsIDE5OTYyLCA2NTU1OSwgMzI5OSwgMCwgOTE3NTY2LCAxMTkxMjcsIDkwMDIsIDAsIDc0MzcyLCA3NDIzNiwgODQ3OCwgCi0gICAgNzU5OCwgNTQ2LCA0MjQ2OSwgNjU1NjksIDE5MTgsIDk1NDIsIDQ3MiwgNzcxNiwgMTAzMTksIDEwMzgzLCA2OTk2LCAwLCAKLSAgICA2Mzk1MiwgODQyNSwgMzYwMiwgODMyOCwgMTE3NjQsIDExODg5NCwgMCwgNjk3OTYsIDQxMTgzLCAxMjkwNywgMTAyNzEsIAotICAgIDEwMjg3LCA2ODQsIDQzNTI1LCAwLCAyODU0LCAxMTk1ODYsIDQ1OTIsIDY1NzU1LCAwLCA5MjI1NiwgMTE5NjMsIDQzNjIwLCAKLSAgICAwLCA3ODg4OSwgMCwgMCwgMTI4ODA5LCA5ODgxLCA0MzExNSwgNjU3NTcsIDM0MTUsIDAsIDAsIDg2NDgsIDAsIDY3NDEsIAotICAgIDQzMDQ3LCAwLCAxMzE4MCwgMTI4NTE3LCA0MTgsIDkxNzk3MiwgNjQ0OTUsIDEwMjk1LCAxMDMyNywgMTAzOTEsIDQxNzUyLCAKLSAgICA3NDMzOSwgODY0MSwgNDE0NDksIDAsIDc0MTAwLCAwLCAxMDkxMSwgNjk0MiwgMCwgMTAyNCwgNDI4NDksIDQxNzUxLCAKLSAgICA2OTc3NiwgODk0MSwgMCwgNDU1NCwgMCwgOTAyMywgMTE2ODUsIDAsIDk5MjgsIDc4NjE3LCAwLCAxMTQzNywgNDM3NDEsIAotICAgIDkyMTYzLCAxMjA3MDAsIDYzOTY3LCAwLCA0MTIwNiwgMTIwNzI0LCA5MDQ5LCA0MTE4NSwgNDMxNjYsIDAsIDExNjgwLCAKLSAgICA5MjYxOSwgMTE2ODYsIDc4NTQ0LCA2NTIyNCwgNDU2NSwgNDY1NSwgMTE5NTUzLCAwLCA5MjE4MywgNjQ1MjMsIDEwMzQzLCAKLSAgICAxMDQwNywgMCwgNjY2NzEsIDExNDY2LCAwLCAxMjgwMDMsIDQyODkwLCAwLCAxMjA1MCwgNjgyMDEsIDI4NjAsIDAsIDAsIDAsIAotICAgIDQyNzkyLCA1NzQzLCAxMDQyNCwgMTIwNjUsIDQyODcyLCAwLCA5MjM0MiwgMCwgODg3NSwgMCwgMCwgOTE3OTkxLCA3NTMxLCAKLSAgICAxMjg0NywgMjQxMywgMCwgNzg2MzUsIDk2MiwgMCwgMTI4NTUsIDQxMTk2LCA0MjU2NCwgMCwgMTU4MiwgMCwgNTUwOCwgMCwgCi0gICAgMCwgMCwgMTA4MDEsIDAsIDkyMzU0LCAwLCA3MTczLCA0OTYsIDEwNDM5LCA0MzEzLCA2NDYwNywgNjk2MzgsIDc4NjAsIDAsIAotICAgIDkwNiwgNDI3OTMsIDI4NDIsIDY0MDUsIDY0NzIyLCAxMzEzMiwgNzk4LCA2NDY5NCwgMTI4MDEsIDg0MDYsIDExNTMsIAotICAgIDkyMTczLCA2NDc4OCwgMCwgODA1NCwgOTE3NCwgMTI4NjUyLCA5MTc5NzYsIDk5NjQsIDAsIDQxNjExLCA0NjQyLCA2NjU3NCwgCi0gICAgMTE1NTYsIDkxNzk4MiwgMCwgNzg4NTcsIDQyMDg5LCA3ODg1NSwgOTAwOCwgMCwgMCwgMTk1MDk2LCA0MjA3OSwgOTE3OTgxLCAKLSAgICA3NzkyNCwgNDI1MTMsIDAsIDQyODQyLCA3Mzk4NSwgNjUyODUsIDExODk3NCwgMTI3MDAzLCAwLCAwLCAwLCAwLCAxMTMzNSwgCi0gICAgNjQwNjksIDQyMDkzLCAzOTIwLCAwLCAwLCAwLCAwLCA0NTgwLCA0MTk2NywgMCwgNjQzODQsIDkyMTY3LCAxMTkxNTgsIAotICAgIDMwMjEsIDQyMDA0LCAwLCAwLCA0MjMxNywgNDE5OTgsIDAsIDY5NDYsIDAsIDAsIDAsIDEyODE5MywgNjUyMDQsIDAsIAotICAgIDY4MTEzLCA0MjY5MCwgOTg4MCwgNDIwMTAsIDc0ODI0LCA2NDU4OSwgMTAxMTEsIDY0ODc1LCAxMjc4ODAsIDY4Mzk5LCAKLSAgICA0Mzk5OCwgMTEzNjAsIDAsIDAsIDAsIDExODgyNiwgNDIxNDksIDAsIDAsIDAsIDY0OTQxLCA3NzkxOSwgMTIwNDIxLCAKLSAgICAxMjgwNzcsIDAsIDU1MjQ3LCA0MTEwLCA2NjAwNSwgNjk1OSwgMTA5MjksIDExOTExMCwgMCwgNjY3MDMsIDc3OTIxLCAKLSAgICA4NjE3LCA0MTk4MiwgNjAyNSwgNjkyNDIsIDAsIDAsIDAsIDAsIDk1OTcsIDQyMDk5LCA0MzE3MiwgMCwgMTAxMTcsIDAsIAorICAgIDAsIDY1NTU4LCA2NTk0NiwgODExMywgNzA4NywgNTI1NSwgMTc4NiwgNjYxLCAwLCAwLCAwLCA3NDQyMywgNzEzNDUsIDU4NiwgCisgICAgNzQ0MTQsIDY0MzU5LCAxMjY3LCAxMjgyNjksIDY1NDY4LCAwLCA2NTczMSwgMCwgMTI3MTc5LCAzNjIxLCAxMjA0NzMsIAorICAgIDY2NjY2LCA2NDIxMSwgMCwgNjU2MiwgMTI5MjgsIDAsIDEyMjgsIDY1NDkwLCAxMTM4MywgMCwgMCwgMCwgMTcxNCwgCisgICAgNzQ0MDYsIDEyNzgzMSwgMCwgOTgzOTEyLCAwLCA2NjIyNSwgMCwgMCwgNDI2NjAsIDExNDM2LCAyMDcwLCA2NCwgMTIwNjk0LCAKKyAgICAwLCAxMDI5MSwgMTAzMjMsIDI4MjYsIDAsIDAsIDAsIDQyMDA4LCA5NzA4LCA0MjcxMCwgMCwgNDIwMTEsIDQxOTk5LCAKKyAgICA5MjE2NCwgMTIyMDYsIDU4MzksIDE3MDIsIDEyNDAsIDc0MDY1LCA2Mjg2LCAwLCA5ODM5NjAsIDY1ODMzLCA3Nzg0OCwgMCwgCisgICAgMTc2NSwgMCwgMCwgNjU1ODgsIDAsIDAsIDAsIDg0MDEsIDAsIDQyMDE0LCAwLCA3MDMwLCAxOTQ3MDQsIDEwNDc5LCAKKyAgICA2NDk1OSwgMjg1MiwgMCwgMCwgMCwgMCwgMTI4NTg2LCA5MTc5NTEsIDY5NjMsIDAsIDEyNjY3LCA2NDU0MCwgNzQ3ODYsIAorICAgIDEwMTQ3LCAxMjkzNSwgMTI3NTY4LCAxMjY0ODMsIDAsIDAsIDAsIDc4NzU3LCAwLCAwLCAwLCAwLCA5OTk0LCAxMjQ2NywgCisgICAgMjg2NCwgNjQ3MTksIDExNDgsIDEwNDM1LCAxMTQ2MiwgNDE2NzUsIDcwODQsIDI3NjUsIDAsIDQzMzgyLCAwLCAxMjA3MTksIAorICAgIDEyODE4OCwgOTI1MTYsIDY2NjYyLCAwLCA3ODEzMywgOTM2NCwgMTk0Njg1LCA3NDQxNiwgMCwgMCwgNzc5ODgsIDI2MywgCisgICAgMTA0NDksIDQxMjg4LCAwLCA0MTgzOSwgNzgzODcsIDk4MzczMywgNzc5ODYsIDAsIDY5MzEsIDY5NzIyLCA2NDM1NSwgCisgICAgNzE3NywgNzAxMDUsIDAsIDAsIDAsIDQyNjIsIDEwMjg1LCAxMDcyMiwgNDIwMjAsIDEyNjU3NSwgNjgwNiwgNjk5MiwgCisgICAgNDIwMTksIDAsIDQxMjkwLCA5ODM3MDcsIDc1MCwgMCwgNzEzMDQsIDEwMTYzLCA2MzkxMywgNzEzMDAsIDcwMzIsIDU5NTQsIAorICAgIDY0OTMxLCA0MzE0LCAwLCAxOTgsIDY4NDUzLCA3MzAsIDEyMDA5NCwgNjM5MDcsIDc3OTkzLCA3ODg5MSwgMTMxNjUsIAorICAgIDcxMDcsIDc0MTcxLCA0MjgwNCwgNjc4LCA4MjQwLCA3ODAxNSwgMTI4Nzg0LCA0MTM3OCwgMTEwMDgsIDY5MzgsIDcwMDI2LCAKKyAgICA5MjYzNywgMjA5NywgNjYyNDYsIDEyMDU2MCwgMCwgMCwgMCwgMzg5MiwgNjg2MzIsIDY5NjQyLCA2NzEyLCA2NjA0NSwgCisgICAgNDE0NzAsIDY0ODA1LCAwLCAwLCAxMjgyMTUsIDY0ODAxLCAwLCA0OTcsIDEyMTAwLCA1OTUzLCA5MjY2NywgNzc5NiwgCisgICAgNjk2NjksIDQzMjU0LCA3MzgzMSwgMCwgMTAyOTMsIDU5NTIsIDEyODEsIDQzNzQ3LCAwLCAwLCAxMDY3NywgNjA0LCAKKyAgICA0MTA5NywgOTE4MiwgMTg1OSwgMCwgOTI2MDMsIDM0MjUsIDEyNzQ4OCwgMCwgMjgzNiwgMCwgMCwgOTcwNywgMCwgNDMyMDIsIAorICAgIDAsIDAsIDY1MTk5LCAxNzM4LCA5MTc4MTgsIDEyODE1OCwgMjgzMiwgOTI3MDIsIDk2NzAsIDEyOTM3LCAwLCA2NjM3NCwgCisgICAgOTE3OTU2LCAwLCAyODIyLCA2ODEyMiwgNDQzNiwgOTI1MTksIDk4MzcxNCwgNzM3NTIsIDAsIDY0ODcyLCA5MjM0MCwgCisgICAgMTMzMSwgMCwgMCwgMCwgMTI3MDgsIDAsIDUwOTAsIDUwODksIDEyNzk3NywgMCwgMTE5MTA5LCAwLCAxMjg2ODEsIDMxOSwgCisgICAgMTE4ODQ3LCA0MzQ3OSwgOTQ3NywgMCwgMCwgNTA4NywgOTIzMjUsIDc2NDAsIDk2LCA1MDg2LCAwLCA5MjM3OSwgMCwgCisgICAgNTA4NSwgNjQyODYsIDkyNjY1LCAwLCA0MTQyMiwgMCwgMTE5OTAxLCA0MjM1NiwgMzc3MiwgMCwgMCwgNTAxMSwgMCwgMCwgCisgICAgMTI2NTg3LCAwLCAxMjcxNjUsIDEyNzI0MSwgNjY3NywgNzYwMSwgMCwgNTkxLCA2NDQxOSwgMTE4OTUzLCA5MjI2MiwgMCwgCisgICAgMTE4OTIzLCA3MDA4NCwgMCwgMTA5MzksIDYxMDYsIDY5MzMsIDQxMjcxLCA2NzYwLCA3MTM0MywgNDUzNCwgNDEyNzAsIAorICAgIDEyODg3NiwgMCwgNjU1NzQsIDAsIDkyMjQsIDY5ODUzLCAzNjcxLCA4OTc2LCAxMjY0NzQsIDAsIDQxMjc1LCA2MzcyLCAKKyAgICAxMjgwODQsIDU1MjYxLCA3OTYzLCA2MzcxLCAwLCA1NjgsIDAsIDQxMjczLCA5ODM3MjEsIDAsIDY3MjgsIDAsIDk3MTUsIDAsIAorICAgIDgyNTgsIDExNzUzLCA3NDgyMCwgMCwgOTYwMiwgMTE4OTE5LCA0MiwgMCwgNDM2ODgsIDAsIDAsIDc0NTgsIDAsIDAsIAorICAgIDY1Mzg1LCAxMTk5MDAsIDAsIDExOTU4LCAwLCA5MTc4MjIsIDAsIDYyNTQsIDQyNzIxLCA2NjMzNiwgODA0NSwgMTE1NTAsIAorICAgIDAsIDAsIDk4MzU5NywgNDI4NTgsIDExNzg5LCA2NTg2OCwgNTU1NywgMTAxMzMsIDk3MzcsIDEzMTA5LCAwLCA5NDY3LCAKKyAgICA1NTU4LCA4ODc4LCAxMjgxMzYsIDE5NTAzNiwgNzQ1MSwgNjcwNiwgMTAxNDYsIDAsIDkwODYsIDY0NTY2LCAwLCA2NDU4NCwgCisgICAgNzQzNywgNzQ1NCwgMTI1OTQsIDEyODY5MCwgNjgzNjIsIDQ1NDYsIDc3MzEsIDAsIDcwMDQ4LCA3NDI0MywgMCwgMzgwNSwgCisgICAgMCwgMTk0NTY1LCA0NDAwMSwgNDEwMDgsIDAsIDYzMDcsIDE5OTQ5LCA5ODM3ODEsIDc1NDQsIDk4MzA0NSwgNDM0NjksIDAsIAorICAgIDAsIDEwMTUyLCA2NDQyMiwgNjUwOTEsIDExOTExMywgNzYwMiwgNjQ3MjksIDAsIDQzNTIxLCAwLCA0MjMwMiwgNDM3MTEsIAorICAgIDQzNTIzLCA0MTQ0NywgNTU1OSwgMCwgODcwNCwgMjM5NywgNTU1NiwgMCwgMCwgMCwgOTAxMSwgOTYzMCwgOTI2MzMsIDAsIAorICAgIDkzOTk4LCA1NTA2LCAwLCAxOTExLCA2NjY1MiwgMCwgOTk2MSwgODg0NSwgNjY2OTgsIDAsIDEwNzkyLCA4ODg5LCAwLCAKKyAgICAyMDk4LCAwLCA2NDc1MSwgMCwgNjY2MjIsIDAsIDAsIDc0MzY0LCAwLCAwLCA5ODM3OTYsIDc0MzY1LCA3NTUyLCAwLCAwLCAKKyAgICA2NTM4NCwgNzIyMywgNDU1OSwgMCwgMTk1NiwgNDMxMzgsIDcwMjQsIDY1NzI4LCA2NDUwMSwgMTIxMCwgMTk1MDc3LCAKKyAgICA2NTE3NSwgMTAxODQsIDQzMTQwLCA0MzY1NCwgMCwgMCwgMCwgMzgsIDg1MzMsIDY2NjY5LCAxMTkxMjQsIDk4MzI4NSwgCisgICAgOTgzNzgzLCAwLCA0MzU3LCAwLCAxMTk4MzcsIDkxNzg2MywgNzQyMzMsIDk5NjcsIDc4ODg0LCA0Mjg2MCwgMTE5ODM4LCAKKyAgICAxMDk0MSwgNjU3MjEsIDY5NjIsIDAsIDAsIDExOTMyNCwgMCwgMTEwMTQsIDEyNzk3MiwgODk0MiwgMTIwMDAsIDY5MjI0LCAKKyAgICA5MjI2NywgMTI4NTM2LCAxMTk3NCwgOTIyMTMsIDQyNzcyLCAxMjc1MTgsIDExNjUwLCA1MDEzLCA5MjY2MywgMTI2NTgzLCAKKyAgICA2NjIxMCwgMTE4OTE0LCA2NjEzLCA5MjQ3NiwgMCwgNDM4MTksIDk4Mzc2MSwgMCwgNjQ3MTQsIDAsIDAsIDEyMTYyLCAKKyAgICAxMjEyMCwgNDM0NzYsIDk4Mzc1NywgMTEwMjQsIDc0ODExLCA2NjIyOCwgMTA1NjMsIDAsIDEyNzE5NiwgNDM1MjIsIDI0NjIsIAorICAgIDAsIDE4MzcsIDAsIDYzOTcyLCA2OTU3LCAwLCAxMjA1NTksIDQ5NTIsIDY1NzE4LCA2NTgyNywgNTUwNCwgNjU3MjAsIAorICAgIDY1NzE0LCA2NTcxNSwgNjU3MTYsIDAsIDEyNzAwNSwgMTI3MTE5LCAzMTA5LCA2Mzk3NSwgNzQwMjgsIDAsIDgxMDcsIAorICAgIDExOTIzNCwgMTEyNywgNDU1LCAwLCA2Mzk2OCwgMTI3OTI0LCAzNDgzLCAxMTk1OTMsIDE5ODksIDAsIDY5Njc4LCA5MTA0LCAKKyAgICAzNTAzLCA2NTM3NSwgOTI1MDksIDY2OTQsIDQyNjMzLCAxODY0LCAwLCA3NDMwNiwgNDE0NDYsIDI1NDAsIDc3MzYsIDAsIAorICAgIDc0MDY0LCAwLCAxMDUyMSwgMCwgNDIxNzMsIDk3MDUsIDc0MTI0LCA4NjA0LCA2OTU1LCAxMDkxNiwgNDM2ODQsIDYxNDksIAorICAgIDM4ODcsIDE5OTU2LCAxNDExLCAyODI0LCAwLCAxMDEwNiwgMTI3ODYyLCAxNDAzLCAxMjg4MzksIDEzNDcsIDk2MzEsIAorICAgIDc0NDQ0LCAwLCAwLCAwLCAwLCA4NjQwLCAwLCAyNTgsIDE2NTQsIDAsIDAsIDAsIDQzMzE0LCAwLCAwLCA0MDQyLCAxMTQ3OCwgCisgICAgMjg3MywgNjM5NzcsIDExNTIyLCA0MTY2OCwgODU0OSwgMTA4NjEsIDAsIDYzOTc2LCAwLCA2ODYyMywgMCwgNzQ1ODUsIAorICAgIDQxMzkxLCAwLCA5MTc5MDMsIDM3NiwgNjk4NywgOTIyMSwgMCwgMCwgODgyMywgMTI4Njk3LCAxMjk0MywgNjUxODUsIAorICAgIDQxODY5LCAxMjYxOSwgMCwgMTAxNTQsIDk4MzA0MywgNzQ0MzksIDIwMzksIDAsIDc0NDYsIDE2ODQsIDYzOTc5LCAxMDk3NCwgCisgICAgNDU4LCAxMjA2MjAsIDAsIDY5NzkxLCAxMjcxNjEsIDExOTE2LCA2NTAxNiwgMCwgNjk2NzEsIDQyMTE1LCA5ODMxMzMsIAorICAgIDEyMjg4LCA3ODA1NywgMCwgMTQ5MywgNDIxMTEsIDc1NTMsIDQwOTcsIDEyODE5OSwgMTMwODAsIDAsIDY1ODA4LCA2NjEwLCAKKyAgICA2MDMwLCA4MDU5LCA3NTA4LCAxMzEzMSwgMCwgOTgzNDIzLCAwLCA4Nzk0LCA0MTI3OCwgNDE2MjksIDEyMTU0LCAxMjgxOTIsIAorICAgIDQxMjc3LCA2NDY1OCwgMCwgNjQzODAsIDY2MjUsIDc0MzU0LCAxOTkwNCwgMCwgMCwgMCwgNjUzNzEsIDcwNzgsIDAsIDgzMywgCisgICAgMCwgNjM2OSwgMCwgMTA5NzksIDQxOTUzLCAwLCA0MTQzNCwgNjA2MiwgMCwgMCwgMTk5MTYsIDY5MTMsIDkzMywgMTM0MSwgCisgICAgOTg0MiwgNjcyMCwgNjU3NDQsIDAsIDk4MzU5MiwgMTI4Mjk1LCAwLCA3NDA1LCAxMDEwNSwgNjU4MTAsIDAsIDQxNjMyLCAKKyAgICA3NDkzLCA1NTI5MCwgMCwgNDE2MjIsIDAsIDAsIDExOTU1NiwgNzQ1ODQsIDc2MzIsIDk3MTYsIDE5OTU0LCA5ODA1LCAKKyAgICA1OTkwLCA5MDAsIDAsIDYzOTU3LCAwLCAwLCAzNjEyLCAwLCA2NDM3NiwgOTM5ODcsIDUzODksIDkyNTk3LCAwLCA2NTkzOCwgCisgICAgMjgzOSwgOTYyMSwgNTgyLCAwLCA3NDM2OCwgMzc0OSwgNjk0OSwgNzU2OSwgNzQwNjEsIDAsIDAsIDY5NTYsIDQ0MDMsIAorICAgIDE5OTYyLCA2NTU1OSwgMzI5OSwgMCwgOTE3NTY2LCAxMTkxMjcsIDkwMDIsIDAsIDc0MzcyLCA3NDIzNiwgODQ3OCwgNzU5OCwgCisgICAgNTQ2LCA0MjQ2OSwgNjU1NjksIDE5MTgsIDk1NDIsIDQ3MiwgNzcxNiwgMTAzMTksIDEwMzgzLCA2OTk2LCAwLCA2Mzk1MiwgCisgICAgODQyNSwgMzYwMiwgODMyOCwgMTE3NjQsIDExODg5NCwgMCwgNjk3OTYsIDQxMTgzLCAxMjkwNywgMTAyNzEsIDEwMjg3LCAKKyAgICA2ODQsIDQzNTI1LCAwLCAyODU0LCAxMTk1ODYsIDQ1OTIsIDY1NzU1LCAwLCA5MjI1NiwgMTE5NjMsIDQzNjIwLCAwLCAKKyAgICA3ODI0OSwgMCwgMTI4NTUxLCAxMjg4MDksIDk4ODEsIDQzMTE1LCA2NTc1NywgMzQxNSwgMTE5MTMxLCAwLCA4NjQ4LCAwLCAKKyAgICA2NzQxLCA0MzA0NywgMCwgMTMxODAsIDEyODUxNywgNDE4LCA5MTc5NzIsIDY0NDk1LCAxMDI5NSwgMTAzMjcsIDEwMzkxLCAKKyAgICA0MTc1MiwgNzQzMzksIDg2NDEsIDQxNDQ5LCAwLCA3NDEwMCwgMCwgMTA5MTEsIDY5NDIsIDAsIDEwMjQsIDQyODQ5LCAKKyAgICA0MTc1MSwgNjk3NzYsIDg5NDEsIDk4MzU1NiwgNDU1NCwgMCwgOTAyMywgMTE2ODUsIDAsIDk5MjgsIDc4NjE3LCAwLCAKKyAgICAxMTQzNywgNDM3NDEsIDkyMTYzLCAxMjA3MDAsIDYzOTY3LCA5ODM0NzUsIDQxMjA2LCAxMjA3MjQsIDkwNDksIDQxMTg1LCAKKyAgICA0MzE2NiwgMCwgMTE2ODAsIDkyNjE5LCAxMTY4NiwgNzg1NDQsIDY1MjI0LCA0NTY1LCA0NjU1LCAxMTk1NTMsIDAsIAorICAgIDkyMTgzLCA2NDUyMywgMTAzNDMsIDEwNDA3LCAwLCA2NjY3MSwgMTE0NjYsIDAsIDEyODAwMywgNDI4OTAsIDc0MDEzLCAKKyAgICAxMjA1MCwgNjgyMDEsIDI4NjAsIDAsIDAsIDAsIDQyNzkyLCA1NzQzLCAxMDQyNCwgMTIwNjUsIDQyODcyLCAwLCA5MjM0MiwgCisgICAgMCwgODg3NSwgMCwgMCwgOTE3OTkxLCA3NTMxLCAxMjg0NywgMjQxMywgMCwgNzg2MzUsIDk2MiwgMCwgMTI4NTUsIDQxMTk2LCAKKyAgICA0MjU2NCwgMCwgMTU4MiwgOTgzNzA2LCA1NTA4LCAwLCAwLCAwLCAxMDgwMSwgNjk4NzYsIDkyMzU0LCAwLCA3MTczLCA0OTYsIAorICAgIDEwNDM5LCA0MzEzLCA2NDYwNywgNjk2MzgsIDc4NjAsIDAsIDkwNiwgNDI3OTMsIDI4NDIsIDY0MDUsIDY0NzIyLCAxMzEzMiwgCisgICAgNzk4LCA2NDY5NCwgMTI4MDEsIDg0MDYsIDExNTMsIDkyMTczLCA2NDc4OCwgMCwgODA1NCwgOTE3NCwgMTI4NjUyLCAKKyAgICA5MTc5NzYsIDk5NjQsIDc0NDA5LCA0MTYxMSwgNDY0MiwgNjY1NzQsIDExNTU2LCA5MTc5ODIsIDAsIDc4ODU3LCA0MjA4OSwgCisgICAgNzg4NTUsIDkwMDgsIDAsIDEyNjU5MiwgMTk1MDk2LCA0MjA3OSwgOTE3OTgxLCA3NzkyNCwgNDI1MTMsIDc3OTI3LCAKKyAgICA0Mjg0MiwgNzM5ODUsIDY1Mjg1LCAxMTg5NzQsIDEyNzAwMywgOTgzNjkzLCAwLCAwLCAwLCAxMTMzNSwgNjQwNjksIAorICAgIDQyMDkzLCAzOTIwLCAwLCAwLCAwLCAwLCA0NTgwLCA0MTk2NywgOTgzNzIzLCA2NDM4NCwgOTIxNjcsIDkzOTg0LCAzMDIxLCAKKyAgICA0MjAwNCwgMCwgMCwgNDIzMTcsIDQxOTk4LCAwLCA2OTQ2LCAwLCAwLCAwLCAxMjgxOTMsIDY1MjA0LCAwLCA2ODExMywgCisgICAgNDI2OTAsIDk4ODAsIDQyMDEwLCA3NDgyNCwgNjQ1ODksIDEwMTExLCA2NDg3NSwgMTI3ODgwLCA2ODM5OSwgNDM5OTgsIAorICAgIDExMzYwLCAwLCAwLCAwLCAxMTg4MjYsIDQyMTQ5LCAwLCAwLCAwLCA2NDk0MSwgNzc5MTksIDEyMDQyMSwgMTI4MDc3LCAwLCAKKyAgICA1NTI0NywgNDExMCwgNjYwMDUsIDY5NTksIDEwOTI5LCAxMTkxMTAsIDAsIDY2NzAzLCA3NzkyMSwgODYxNywgNDE5ODIsIAorICAgIDYwMjUsIDY5MjQyLCA5ODMxNzYsIDAsIDAsIDAsIDk1OTcsIDQyMDk5LCA0MzE3MiwgOTgzMzY4LCAxMDExNywgOTgzMTY5LCAKICAgICA5MjI5NywgNDE2MzYsIDAsIDAsIDEyMDY4MSwgODMwMSwgMCwgMCwgMTg3LCAwLCA2NTY2OSwgMTI4MzM5LCA0OTYzLCAwLCAKLSAgICAxMjc1MTcsIDAsIDg5NjQsIDY1Njc2LCA2NTc4NSwgMCwgNDE5NDgsIDAsIDAsIDAsIDQxOTQyLCA2NTQ0OSwgMzE2MCwgCi0gICAgMTAwODEsIDEzMjI2LCA0MjEyMSwgNDI0NzUsIDQyNjYzLCAxMjgyMTAsIDQxNzY2LCAwLCA2NTg4MiwgNzg4NDksIDQxNzYwLCAKLSAgICAxMTg5LCA5MDUsIDQ4MCwgMTA5ODUsIDQxNzMzLCA2Nzg1OSwgOTYyOSwgNjc0MiwgMTc0NSwgNDM2MjUsIDczODM1LCAKLSAgICA3ODg4LCAwLCAzOTgwLCAwLCA0MjY1NiwgNDE1MDcsIDg4MDYsIDcwMjMsIDAsIDc0Mjc5LCA5NDQ3LCA3ODY1MSwgNzg2NywgCi0gICAgNjkyMTgsIDYyMzYsIDAsIDAsIDEwNTA1LCAwLCAxMjg1MSwgMTE4OTQ4LCAzNDgsIDU0NzQsIDEyODg0MywgMzEwMywgMCwgCi0gICAgNDE3NTMsIDEyODU0MCwgMCwgMCwgNzg4NDQsIDc4ODQ1LCA0MTczOSwgNzg4NDMsIDQyNTE1LCAxMDkzMSwgNDE3NTYsIAotICAgIDQzMzQ3LCA0MjU2MCwgNTM5MSwgNDE3NDYsIDExOTE0NywgOTI1OTEsIDQxMjU5LCA1NTYxLCA3NDM2MCwgMjY5MSwgMCwgCi0gICAgNjU1NTMsIDc5MzMsIDU1NjIsIDY5ODAwLCAxMjgyNjUsIDQxMjYyLCAxMjgxNDYsIDY0NDIxLCA3NDg0NiwgNDEyNTEsIDAsIAotICAgIDAsIDM5NzksIDAsIDAsIDc0ODEzLCAwLCAwLCAwLCAwLCA5MjUyNCwgNDEyNjYsIDAsIDAsIDEyODgzNiwgMTA1ODUsIAotICAgIDY1NzQxLCA0MTczNywgOTU3NCwgMjY2NiwgMCwgNDE3MzgsIDgzMSwgNDE5LCAxMzEyNiwgMTA3MTYsIDAsIDQyODIyLCAwLCAKLSAgICA2NDM0LCAwLCA2OTM5LCA3NzY2LCA2NDMyLCAxMjgxMDYsIDAsIDkxNiwgNzY5LCA0MTc0MiwgMTE5NjgsIDc0ODA1LCAKLSAgICA2NDMzLCA1NTYzLCA1NDcsIDE5NDMsIDY0MzksIDU1NjAsIDQ5OTQsIDQ4NywgMCwgNDQ5NywgMzc1NCwgMTI3MDU2LCAKLSAgICAxMjA0MjQsIDkwMzksIDAsIDQxNzc2LCAwLCA4NzE2LCAxNTk1LCA0MTYxNSwgMCwgMCwgNzQyNjAsIDAsIDQyODU0LCAKLSAgICA0MzIxOSwgMTI4NzA5LCAwLCAxMjE4NSwgMTI4ODc5LCAwLCA2ODM1NSwgNjgzNTcsIDAsIDQyODU2LCA4NjM0LCAwLCAwLCAKLSAgICA0MjA5LCAxMjA3MDIsIDAsIDY1ODc5LCA0MTUzOCwgNjU2MTIsIDEyNzU0MywgNjY5LCA1Njc5LCAwLCA2OTc4NiwgOTI1NDAsIAotICAgIDAsIDAsIDU2NzgsIDExODIxLCAwLCA2NzExLCA0NjAsIDAsIDAsIDAsIDAsIDEyMDc0NywgMCwgMCwgNzgwNTAsIDExOTAyMiwgCi0gICAgMCwgMCwgMCwgNzc4MiwgOTA0NCwgNDk3NCwgMTE3NjAsIDc4NDk0LCA3NTc3LCA2NTcxMSwgNDE5MTIsIDEyMTYsIDAsIAotICAgIDEyODA3OSwgNTc5MiwgMCwgMCwgNzg1MDEsIDAsIDI5MzMsIDEyMjQ0LCAwLCA1NjgzLCAwLCAwLCA3ODExOSwgMTU0OSwgMCwgCi0gICAgMCwgMTIwMzk4LCA1NjgyLCA2MjA2LCA4NjcwLCAxMDI1NiwgNTY4MCwgOTE3NTY4LCAxMDAwMSwgMCwgNjk3NjgsIDE0NDksIAotICAgIDEwMjQxLCA3ODI5MCwgMTI4MjI4LCAwLCAxMDU1MiwgNjQzNDIsIDQxOTIyLCAxMjg1NDgsIDg1ODQsIDAsIDU1NjcsIAotICAgIDI3MTcsIDAsIDAsIDU1NjQsIDQyODg2LCA0MTkwOCwgNDI4ODIsIDU1NjUsIDAsIDEyODAyNiwgMCwgNjU3MDgsIDY1NzA5LCAKLSAgICA1NTY2LCA2OTgwMywgNjU3MDQsIDY1NzA1LCAxMTkwNCwgNDI4NzUsIDQzMzczLCA0MjUzOSwgNTk0MiwgODQ2OCwgCisgICAgMTI3NTE3LCAwLCA4OTY0LCA2NTY3NiwgNzc3NSwgMCwgNDE5NDgsIDAsIDAsIDAsIDQxOTQyLCA2NTQ0OSwgMzE2MCwgCisgICAgMTAwODEsIDEzMjI2LCA0MjEyMSwgNDI0NzUsIDQyNjYzLCAxMjgyMTAsIDQxNzY2LCAxMTkxMTQsIDY1ODgyLCA3ODg0OSwgCisgICAgNDE3NjAsIDExODksIDkwNSwgNDgwLCAxMDk4NSwgNDE3MzMsIDY3ODU5LCA5NjI5LCA2NzQyLCAxNzQ1LCA0MzYyNSwgCisgICAgNzM4MzUsIDc4ODgsIDAsIDM5ODAsIDAsIDQyNjU2LCA0MTUwNywgODgwNiwgNzAyMywgMCwgNzQyNzksIDk0NDcsIDc4NjUxLCAKKyAgICA3ODY3LCA2OTIxOCwgNjIzNiwgOTgzMTM0LCAwLCAxMDUwNSwgMCwgMTI4NTEsIDExODk0OCwgMzQ4LCA1NDc0LCAxMjg4NDMsIAorICAgIDMxMDMsIDAsIDQxNzUzLCAxMjg1NDAsIDAsIDAsIDc4ODQ0LCA3ODg0NSwgNDE3MzksIDc4ODQzLCA0MjUxNSwgMTA5MzEsIAorICAgIDQxNzU2LCA0MzM0NywgNDI1NjAsIDUzOTEsIDQxNzQ2LCAxMTkxNDcsIDkyNTkxLCA0MTI1OSwgNTU2MSwgNjk5MzAsIAorICAgIDI2OTEsIDAsIDY1NTUzLCA3OTMzLCA1NTYyLCA2OTgwMCwgMTI4MjY1LCA0MTI2MiwgMTI4MTQ2LCA2NDQyMSwgNzQ4NDYsIAorICAgIDQxMjUxLCAwLCAwLCAzOTc5LCAwLCAwLCA3NDgxMywgOTgzNzMwLCAwLCAwLCAwLCA5MjUyNCwgNDEyNjYsIDAsIDY2NTY2LCAKKyAgICAxMjg4MzYsIDEwNTg1LCA2NTc0MSwgNDE3MzcsIDk1NzQsIDI2NjYsIDAsIDQxNzM4LCA4MzEsIDQxOSwgMTMxMjYsIAorICAgIDEwNzE2LCAwLCA0MjgyMiwgMCwgNjQzNCwgMCwgNjkzOSwgNzc2NiwgNjQzMiwgMTI4MTA2LCA2OTkzMiwgOTE2LCA3NjksIAorICAgIDQxNzQyLCAxMTk2OCwgNzQ4MDUsIDY0MzMsIDU1NjMsIDU0NywgMTk0MywgNjQzOSwgNTU2MCwgNDk5NCwgNDg3LCAKKyAgICAxMjY1MzcsIDQ0OTcsIDM3NTQsIDEyNzA1NiwgMTIwNDI0LCA5MDM5LCAwLCA0MTc3NiwgMCwgODcxNiwgMTU5NSwgNDE2MTUsIAorICAgIDAsIDAsIDc0MjYwLCAwLCA0Mjg1NCwgNDMyMTksIDEyODcwOSwgOTgzNDUyLCAxMjE4NSwgMTI4ODc5LCA3MDA3MiwgCisgICAgNjgzNTUsIDY4MzU3LCAwLCA0Mjg1NiwgODYzNCwgMCwgOTgzMzg5LCA0MjA5LCAxMjA3MDIsIDAsIDY1ODc5LCA0MTUzOCwgCisgICAgNjU2MTIsIDEyNzU0MywgNjY5LCA1Njc5LCAwLCA2OTc4NiwgOTI1NDAsIDAsIDk4MzQ1NiwgNTY3OCwgMTE4MjEsIDAsIAorICAgIDY3MTEsIDQ2MCwgMCwgMCwgOTgzNDUzLCAwLCAxMjA3NDcsIDAsIDAsIDc4MDUwLCAxMTkwMjIsIDAsIDk4MzQ1NCwgMCwgCisgICAgNzc4MiwgOTA0NCwgNDk3NCwgMTE3NjAsIDc4NDk0LCA3NTc3LCA2NTcxMSwgNDE5MTIsIDEyMTYsIDAsIDEyODA3OSwgCisgICAgNTc5MiwgMCwgMCwgNzg1MDEsIDAsIDI5MzMsIDEyMjQ0LCAwLCA1NjgzLCA5ODMzODQsIDAsIDc4MTE5LCAxNTQ5LCAwLCAwLCAKKyAgICAxMjAzOTgsIDU2ODIsIDYyMDYsIDg2NzAsIDEwMjU2LCA1NjgwLCA2OTkzNSwgMTAwMDEsIDEyODUxMiwgNjk3NjgsIDE0NDksIAorICAgIDEwMjQxLCA3ODI5MCwgMTI4MjI4LCAwLCAxMDU1MiwgNjQzNDIsIDQxOTIyLCAxMjg1NDgsIDg1ODQsIDY4MDMwLCA1NTY3LCAKKyAgICAyNzE3LCAwLCAwLCA1NTY0LCA0Mjg4NiwgNDE5MDgsIDQyODgyLCA1NTY1LCA5ODMyNDgsIDEyODAyNiwgMCwgNjU3MDgsIAorICAgIDY1NzA5LCA1NTY2LCA2OTgwMywgNjU3MDQsIDY1NzA1LCAxMTkwNCwgNDI4NzUsIDQzMzczLCA0MjUzOSwgNTk0MiwgODQ2OCwgCiAgICAgMTIwNTYxLCAxMDM2MSwgMTA0MjUsIDY1Njk3LCA2NTY5OCwgNjU2OTksIDAsIDY2NTk4LCAwLCA2NDY2NCwgMTA2NDcsIAotICAgIDc4NzAyLCA3ODcwMywgNzg2OTAsIDQ1NywgNzg1MDIsIDY1NzAxLCAxOTM0LCA0MzAwNiwgMCwgODgwMiwgNzg3MTAsIAorICAgIDc4NzAyLCA3ODcwMywgNzg2OTAsIDQ1NywgNzg1MDIsIDY1NzAxLCAxOTM0LCA0MzAwNiwgMTE5OTAzLCA4ODAyLCA3ODcxMCwgCiAgICAgNjUxMzAsIDExNzQ3LCA3ODcwOSwgNjA4NywgNzg3MDUsIDc4NzE2LCA0MTc1NywgNzg3MTEsIDgwNDMsIDg5NTAsIDY1Njk0LCAKICAgICA2NDQ4NSwgNDM1MzQsIDEwNDU3LCAwLCAxMTk2MSwgNzg3MjUsIDc4NzIyLCA3ODcyMywgNzg3MjAsIDc4NzIxLCAwLCAKLSAgICA2NTUxNSwgOTQ5OSwgMTAwMzUsIDEzMDY5LCAwLCAwLCA5ODg5LCA2ODE4NCwgNDI4MDYsIDAsIDcyNTYsIDAsIDAsIDE2NjcsIAotICAgIDQyMTYxLCAwLCA0MjQyOCwgMCwgNjkzNCwgMCwgMTA4MDIsIDY0ODYxLCA2NTU2LCA3ODM5MCwgMCwgODEwMSwgMzYxMCwgMCwgCi0gICAgNDE3NDgsIDQ5OTUsIDk1NSwgNjU5MDcsIDExOTIwOCwgNTM1MCwgNjQzMzksIDc4MzA2LCA2NDU0OSwgMTA4NzUsIAotICAgIDEyODY2MiwgNTQ3NywgNjU2OTIsIDAsIDEyODUzMiwgMTIwMzk3LCAxMjg5NiwgMTA0NTYsIDkxNzk1NCwgMCwgMzg3NCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNjU2MDMsIDAsIDY1Njg3LCAwLCA0MTAzOCwgNzQwMDksIDExOTU3MCwgNDIyMzksIDg1MzYsIAotICAgIDc4NzQwLCAwLCA3ODcyNiwgNzQ0MzIsIDcyNCwgMCwgMTQ1NSwgNzg3NDksIDcxODMsIDY0NTgzLCA3ODc0NywgNjg0NDMsIAotICAgIDQxNzUsIDc4NzQxLCA0MzYxNCwgNjk4MDEsIDkzOSwgMCwgNDM1MjAsIDY4NjEzLCA3NDU2OSwgOTE3OTU4LCAwLCA3ODc2MywgCi0gICAgNzg3NjQsIDc4NzYwLCAxMDc4OCwgNjA4OCwgNzg3NTksIDc4NzU1LCAxOTAsIDAsIDEyNTkzLCAwLCA4MTg4LCA2NDQwOCwgCi0gICAgMCwgNDQxNywgMCwgOTIyNjEsIDYzNzAsIDAsIDc4MjcsIDY4NDQxLCA2OTY1LCAwLCAwLCAxMzIwMSwgMTI4MjA1LCAwLCAwLCAKLSAgICA3NDM4MiwgNzM3ODEsIDc5MTgsIDczOTg4LCAwLCAwLCA5MTc4ODQsIDE3MjgsIDAsIDEyMDcxMCwgMTc4LCAxMjk3MiwgCi0gICAgOTI2NzksIDAsIDkxNzg4NywgOTI1NjMsIDAsIDAsIDc4MzI3LCAxMjA0MDUsIDY1NjkwLCAwLCAwLCAxMTkwNTQsIDAsIAotICAgIDkyNTIsIDkxNzg4OSwgNDY1MiwgNjgzNzEsIDAsIDAsIDAsIDEzMDY1LCA5OTIzLCAxMDgwNiwgMCwgMTE3NjMsIDAsIAotICAgIDEyMDY4OCwgNjcyMywgNzgxODcsIDAsIDY5OTMsIDAsIDAsIDgzMzMsIDAsIDAsIDExMzkwLCAwLCA3NDQ2NCwgMCwgCi0gICAgOTIzMjAsIDc0MDgwLCAwLCAwLCAxMTkxMCwgOTI1NTksIDgyNzgsIDg5NjMsIDQwMzQsIDEyODU2MCwgMCwgNjUzNDQsIAotICAgIDEyMDUxNywgNDE3NDcsIDAsIDAsIDg2NzcsIDAsIDEyNzA3LCA5MzUwLCA2NjAzNywgMTI4MTgwLCA4ODM2LCAxMjMxNSwgCi0gICAgMTI3NDcsIDgzMDAsIDAsIDAsIDc0OTEsIDg4NTYsIDEyODA2NCwgMCwgNDMxNTAsIDEyNzc2OCwgMTIwNDA0LCA2NTM4OSwgCi0gICAgMTIwNDAyLCAxMjA0MDMsIDEwODEzLCAyNTkyLCAxMjg1MywgNDMyNjksIDcyNjMsIDEyMDI0NCwgNjUzNiwgMTIwMjM4LCAKLSAgICAxMjAyMzksIDY1NTE2LCAxMjMyMSwgMTIwMzkxLCAxMjAzODgsIDU1Mjg3LCAxMDAwNywgMTIwMjQ2LCA5NTg4LCAxMjAyNDgsIAotICAgIDE1OTYsIDEyMDM4MywgNDE5OTQsIDY1ODAxLCAxMjg4MDgsIDAsIDY2NTcyLCAwLCAwLCAxMDYxMywgNjY5NywgMTI4MDUsIAotICAgIDQxOTI4LCA0MDk4MSwgNzg0MDMsIDc4NDA5LCA1MDA2LCA2NDMyOCwgMCwgOTkzMSwgMCwgODgyNSwgNzQ1NTUsIDY1OTQwLCAKLSAgICA0MzI1OSwgMCwgNjEwNywgMCwgMTE5MTc3LCAwLCA3ODQwMSwgMTI4NjQxLCAxMTc4MywgMzM1LCAxMjAyMjcsIDY0Njg5LCAKLSAgICA0MzgsIDQ1MTAsIDU3NjUsIDg3MjEsIDEyMDIzMywgMTE5MjI3LCA2MDkyLCAxMjg0MCwgNDMxMTIsIDg4NzYsIDEyMDIzMSwgCi0gICAgODA5NiwgMTAyODQsIDEyODUxNSwgMCwgMCwgMTAzODAsIDg3MzMsIDAsIDEyODI0MCwgNDE2MDIsIDAsIDkyMzA4LCAKLSAgICA3NDgzMSwgOTE3OTAxLCAwLCA3Mzc0NywgNjUzOTksIDAsIDY0NTkxLCA0MjQwNSwgMCwgMTIwODIwLCA4NDMsIDExNTQxLCAKLSAgICAwLCA5MTc4OTgsIDIwNjUsIDQxOTM1LCA3NDQ5NiwgNDE5MDIsIDAsIDAsIDIxNSwgNDEyNTgsIDc3ODc1LCA0MzE1OSwgCi0gICAgMTk1MywgOTU3OSwgNDE5MzgsIDEyNTYsIDM5MTAsIDk0MDcsIDYyNDIsIDAsIDAsIDQxMjU3LCA0MTkwMCwgODY3NSwgCi0gICAgMTA3MDAsIDg4MDUsIDE3NDIsIDAsIDkzMzMsIDgyMDIsIDEyNzc1MCwgMCwgMCwgMCwgMCwgNzM4ODIsIDQ5OSwgMCwgCi0gICAgNDM0NjcsIDAsIDQzODE4LCAwLCAxNzEyLCA1OTMyLCA3Nzg0NSwgNDE3NjIsIDAsIDAsIDExOTY3LCAxNzc1LCAwLCAwLCAwLCAKLSAgICAwLCAxMjgwMDksIDk0NTgsIDAsIDY0NzAsIDkxODAsIDEyMDM4MCwgNDMxNzYsIDAsIDAsIDQyNzgyLCAwLCAwLCAwLCAKLSAgICAxMjgzMDksIDc0Nzc3LCAxMjA2NjksIDk0MTQsIDEyMDM4MiwgNzM3ODIsIDczOTY5LCA1NjUsIDQyNDg0LCA1Nzk0LCAyMDEsIAotICAgIDI2NjIsIDQyMjkyLCAwLCA4MjU0LCAwLCAxMDk3NSwgMCwgMTIwNjI1LCA3NDc2MywgMTAyMiwgNDEwOCwgMzg4MCwgCi0gICAgNzQyNDcsIDAsIDAsIDkyMjYzLCA5MTc5ODAsIDc1MDcsIDAsIDQzMTQ5LCAwLCA2NTAzMSwgNzk2MSwgMTYzNiwgMCwgCi0gICAgNjUwMjksIDY1MDI0LCAwLCAxMjQ3MywgNjUzNCwgMCwgOTksIDk4LCA5NywgMTIwNTcxLCA2NzU4NCwgNDA0OSwgNzQxNjMsIAotICAgIDEyNzA2NSwgNzA5MCwgMCwgNzg5MiwgOTE3OTY5LCAxMDc3NywgOTE3ODAzLCA2NTMxMCwgNjU1NjIsIDY2NTk5LCA2NjcyMiwgCi0gICAgMCwgODAzOSwgMzM2MywgNjY1OTQsIDQzNDM0LCAwLCAwLCAxMjU5NiwgNjY1OTUsIDQyMjU4LCA0MjU3MCwgNTU5MywgCi0gICAgMTE5MTQ4LCAxMjA3MTEsIDkyNDI1LCAxMDEwMCwgNjA2MSwgNjQ4NTQsIDExOSwgMTE4LCAxMTcsIDExNiwgMTI5OTgsIAotICAgIDEyMiwgMTIxLCAxMjAsIDExMSwgMTEwLCAxMDksIDEwOCwgMTE1LCAxMTQsIDExMywgMTEyLCAxMDMsIDEwMiwgMTAxLCAKLSAgICAxMDAsIDEwNywgMTA2LCAxMDUsIDEwNCwgNjQzNiwgNzM5NzQsIDUzNCwgNDEyMTIsIDc3OTMxLCAxNTM2LCA2NDA5MywgCi0gICAgNzM5NzAsIDc3OTMwLCAxMjcxNTcsIDAsIDYwMjAsIDEyNzE2LCAxMjcxMTIsIDEyNzQ0LCA0NzUsIDEyMDM5NCwgMTMyNjYsIAotICAgIDEyNzgxMywgMTI3MTExLCAwLCA3MzkyNiwgMCwgMTA2NDUsIDEyMTIsIDY1NDMsIDAsIDgxMzQsIDEyODAyOCwgMjkxMywgCi0gICAgNzM4NzAsIDEyNzExMywgMTg2NiwgMCwgMTk1MDk1LCAwLCA4OTIzLCAxNjQ1LCAxMjA1OSwgNjY1ODUsIDc4Nzg2LCAzMTk2LCAKLSAgICAwLCAwLCA1OTM1LCAxMjUwLCAxMjcwNjYsIDgxNzQsIDk3ODcsIDY3MzMsIDk4NTksIDc5MTYsIDk4NjEsIDk4NjAsIDUyNTgsIAotICAgIDE4ODIsIDE4OTIsIDY3MzEsIDEwODgyLCA0MDUsIDExNDU0LCA3MzkxMSwgMCwgMTI4NzgxLCA0MTE2OSwgODkzOSwgCi0gICAgNDEyNDUsIDAsIDQxMTcwLCAxNDU0LCAxMTM2OSwgNjQ3NywgMTIxNTcsIDAsIDAsIDAsIDQxMTcyLCA3ODU1LCAwLCAwLCAKLSAgICAxMDQ4MCwgMCwgMCwgNzc5MzYsIDgyNjQsIDEyNjEwLCAwLCA2NDUsIDAsIDc2MDksIDQwOTczLCAwLCA3MzgzMywgNzgyNDksIAotICAgIDU4MjQsIDk4NCwgNzc5MTgsIDEwNjg4LCA1ODUxLCAwLCA3NzI5LCA3Mzk4MiwgMTIwNTE4LCAwLCAxOTUwODYsIDQzMzY5LCAKLSAgICAwLCAxMjgxNDAsIDY4NDE1LCAwLCA0NTM4LCAxMjA0MDYsIDQzMTQxLCAwLCAwLCA3NDIxNCwgNzM4ODYsIDAsIDAsIAotICAgIDExODkwMiwgNDMwMDUsIDc4NDQ4LCA5NTUyLCAwLCAwLCAwLCAxMjk5NywgMCwgMCwgMCwgMCwgMjM4MSwgMTI4ODMsIAotICAgIDEwOTk0LCAxMDUyOSwgNDE5MDYsIDAsIDAsIDAsIDEyNDI1LCAxMDY2MSwgMTA4NTYsIDk2MTQsIDI0MjgsIDQxNDc4LCAKLSAgICA4NTgyLCAxMDA2NCwgNzM5MzAsIDAsIDAsIDAsIDY0ODk2LCAxMTkxNjIsIDE5NTIsIDkyMTgxLCA4NDU1LCAxMDA4MiwgCi0gICAgMTE1NzUsIDAsIDExOTU2NiwgMCwgMTI4MDgsIDEyMTgzLCA2MTQ1LCAxMTg5NTUsIDY0OTI5LCA5MjQzMywgMCwgMCwgCi0gICAgNDMxODYsIDQyNTA5LCAwLCAzOTIyLCA5MTg3LCAwLCAwLCAxMDE5MSwgMTE5MDU3LCAxMTc1MiwgMzM1MywgOTM1OCwgMCwgCi0gICAgOTE3OTU3LCA2NjY4MCwgMTIwMDkwLCA4MjQ4LCA3OTMxLCA4NTU4LCA5Nzk1LCA2ODM4MCwgMCwgMCwgMTIwMDgyLCAKLSAgICAxMjAwODEsIDEyMDA4NCwgNDEwMjcsIDEyMDA4NiwgMCwgMTIwMDg4LCAxMjAwODcsIDcwMTksIDEyMDA3MywgMCwgMTE3NTEsIAotICAgIDEyMDA3OCwgNzgyOTQsIDY0NjU3LCA4NjU3LCAxMjAwNDgsIDg1OTQsIDEyMDA2OCwgMCwgMCwgMTIwMDY5LCAxMjAwNzIsIAotICAgIDEyMDA3MSwgMCwgMCwgNDMxNTQsIDQxMDI5LCAwLCAxMTMzMiwgNjUzODAsIDc3MjgsIDAsIDExMjk0LCAwLCA2NjY2NSwgCi0gICAgNzg1MSwgMCwgODM3NSwgODY5OSwgMCwgNDI1MjQsIDAsIDkwODUsIDAsIDc1MDQsIDkzMjcsIDYxNjAsIDEyODA5NSwgMCwgCi0gICAgMCwgODA4OCwgMCwgNzQwMTIsIDkyNTAwLCAwLCA0NDM5LCA2OTI2LCAwLCAxMjkyNCwgMTI4MjI3LCA0MjM2OSwgMCwgCi0gICAgNjU0OTEsIDY1MTQ1LCA5MDQxLCA0MzU1OSwgNjQ1NzcsIDEwODI2LCAwLCAxMTI5NiwgMCwgMCwgMCwgNjU4MjUsIDk1NzcsIAotICAgIDY4MTk5LCAwLCA2NDY3MCwgMCwgNzgwNTYsIDY3OTMsIDExMjk1LCAwLCA3ODA1MywgNzM4NzIsIDAsIDAsIDEwOTAyLCAwLCAKLSAgICAwLCA3ODA3MCwgNzgwNjgsIDEwNDcyLCAyOTk1LCAwLCAwLCA2NDY4MiwgMjM3MSwgNzgwNjksIDEyMDgwOCwgMjU5LCAKLSAgICAxMDA5LCA5MjE3MSwgMjQwMiwgMjMzMywgNjQ0MCwgMCwgMCwgNjUxMjUsIDQxMjQ0LCAwLCAxMzI3MSwgOTEwMywgNDExODAsIAotICAgIDAsIDAsIDAsIDAsIDEwMjE5LCAwLCAwLCAwLCAwLCA0MzE3OCwgMTI3MDcwLCA0MTI2MSwgMTE5MzYyLCA0MzY0MCwgODYxMywgCi0gICAgMCwgMTE4OTg5LCA2NzM2LCAxOTUwOTIsIDQxNDkyLCAxMjAwNSwgMTI3ODg5LCAwLCAxODkwLCAxMjAwNTYsIDAsIDAsIDAsIAotICAgIDcyOTMsIDc5OTEsIDAsIDEwNTc4LCAwLCA3ODA3NiwgMTk0NzM4LCA3ODA3NywgMCwgMCwgNzg4MDAsIDkyNjUzLCA2NDQ0NSwgCi0gICAgNDI2NjgsIDY2MzUsIDAsIDYxNjQsIDY1MTcwLCAwLCAwLCA3Njc2LCAxMTY2NCwgMCwgMCwgNjk3MDcsIDAsIDExODgxMiwgCi0gICAgMCwgMCwgMTI4MDQ1LCA5MTc1LCAxMTkyNSwgNzgwNDUsIDkwODgsIDAsIDY0NTQ1LCAxMzk2LCAwLCA3NTQ2LCAzODQ3LCAwLCAKLSAgICAxMjc4MzUsIDQ5ODUsIDEzMjg4LCA2NzIsIDgwOTgsIDQzMTk2LCAxOTQ3NDYsIDAsIDEyODEyNiwgMCwgNzQwNDMsIAotICAgIDY1MDcyLCAxNTc3LCAxMTc3MiwgMTMwNDEsIDU5MjgsIDQ1MjUsIDEwNjU4LCA2NTkxMSwgMTI2NiwgMTAxODAsIDAsIAotICAgIDEyODU4NCwgMTI2MjIsIDAsIDAsIDAsIDE5NDcxNCwgMTI3MTM5LCAxMzMxMCwgNzczLCAxOTkzMywgMTUzOSwgMCwgCi0gICAgMTI2OTgzLCA0MjczMSwgOTIyMDUsIDAsIDAsIDAsIDMwNTEsIDU4NjIsIDc4MjMsIDkyNDc4LCAwLCAxMjA0MTEsIDMyNTAsIAotICAgIDQzOTkxLCA2OTY4NywgNjY2NDksIDk1MTAsIDY2MjM3LCAwLCAwLCA0MTA2NiwgNjQ2NzMsIDkxNzk2MywgOTE3OTY0LCAwLCAKLSAgICAzNTA1LCA4NzA3LCA5MTc5NjgsIDY3MjUsIDEyODAxMywgOTE3OTcxLCA5MjMxNCwgMzQ3MSwgOTE3OTcwLCA1NDc5LCA4ODIsIAotICAgIDY2ODYsIDExOTU4NCwgMTE2MTMsIDEyMDc3MiwgNDI3NTQsIDAsIDAsIDkyNjk2LCAwLCAwLCAwLCAxMjg1MjMsIDMyMjUsIAorICAgIDY1NTE1LCA5NDk5LCAxMDAzNSwgMTMwNjksIDcxMzA5LCAwLCA5ODg5LCA2ODE4NCwgNDI4MDYsIDAsIDcyNTYsIDAsIDAsIAorICAgIDE2NjcsIDQyMTYxLCAwLCA0MjQyOCwgMCwgNjkzNCwgMCwgMTA4MDIsIDY0ODYxLCA2NTU2LCA3ODM5MCwgMCwgODEwMSwgCisgICAgMzYxMCwgOTgzMTk5LCA0MTc0OCwgNDk5NSwgOTU1LCA2NTkwNywgMTE5MjA4LCA1MzUwLCA2NDMzOSwgNzgzMDYsIDY0NTQ5LCAKKyAgICAxMDg3NSwgMTI4NjYyLCA1NDc3LCA2NTY5MiwgMCwgMTI4NTMyLCAxMjAzOTcsIDEyODk2LCAxMDQ1NiwgOTE3OTU0LCAwLCAKKyAgICAzODc0LCAwLCAwLCA5ODM2MTksIDEyMDMzMSwgMCwgMCwgNjU2MDMsIDAsIDY1Njg3LCAwLCA0MTAzOCwgNzQwMDksIAorICAgIDExOTU3MCwgNDIyMzksIDg1MzYsIDc4NzQwLCA3ODMyNCwgNzg3MjYsIDc0NDMyLCA3MjQsIDAsIDE0NTUsIDc4NzQ5LCAKKyAgICA3MTgzLCA2NDU4MywgNzg3NDcsIDY4NDQzLCA0MTc1LCA3ODc0MSwgNDM2MTQsIDY5ODAxLCA5MzksIDAsIDQzNTIwLCAKKyAgICA2ODYxMywgNzQ1NjksIDkxNzk1OCwgMCwgNzg3NjMsIDc4NzY0LCA3ODc2MCwgMTA3ODgsIDYwODgsIDc4NzU5LCA3ODc1NSwgCisgICAgMTkwLCAwLCAxMjU5MywgMCwgODE4OCwgNjQ0MDgsIDAsIDQ0MTcsIDk4MzIxMSwgOTIyNjEsIDYzNzAsIDAsIDc4MjcsIAorICAgIDY4NDQxLCA2OTY1LCAwLCAwLCAxMzIwMSwgMTI4MjA1LCA2OTg5NiwgMCwgNzQzODIsIDczNzgxLCA3OTE4LCA3Mzk4OCwgMCwgCisgICAgMCwgOTE3ODg0LCAxNzI4LCAwLCA0Mzc2NCwgMTc4LCAxMjk3MiwgOTI2NzksIDAsIDkxNzg4NywgOTI1NjMsIDk4MzM3MywgCisgICAgMCwgNzgzMjcsIDEyMDQwNSwgNjU2OTAsIDAsIDAsIDExOTA1NCwgMCwgOTI1MiwgOTE3ODg5LCA0NjUyLCA2ODM3MSwgMCwgCisgICAgMCwgMCwgMTMwNjUsIDk5MjMsIDEwODA2LCAwLCAxMTc2MywgNzAwMTYsIDEyMDY4OCwgNjcyMywgNzgxODcsIDAsIDY5OTMsIAorICAgIDAsIDAsIDgzMzMsIDAsIDAsIDExMzkwLCAwLCA3NDQ2NCwgMCwgOTIzMjAsIDc0MDgwLCA5ODMzMDcsIDY5OTExLCAxMTkxMCwgCisgICAgOTI1NTksIDgyNzgsIDg5NjMsIDQwMzQsIDEyODU2MCwgMCwgNjUzNDQsIDEyMDUxNywgNDE3NDcsIDAsIDAsIDg2NzcsIDAsIAorICAgIDEyNzA3LCA5MzUwLCA2NjAzNywgMTI4MTgwLCA4ODM2LCAxMjMxNSwgMTI3NDcsIDgzMDAsIDk4Mzc0MSwgMCwgNzQ5MSwgCisgICAgODg1NiwgNzEzNjEsIDAsIDQzMTUwLCAxMjc3NjgsIDEyMDQwNCwgNjUzODksIDEyMDQwMiwgMTIwNDAzLCAxMDgxMywgCisgICAgMjU5MiwgMTI4NTMsIDQzMjY5LCA3MjYzLCAxMjAyNDQsIDY1MzYsIDEyMDIzOCwgMTIwMjM5LCA2NTUxNiwgMTIzMjEsIAorICAgIDEyMDM5MSwgMTIwMzg4LCA1NTI4NywgMTAwMDcsIDEyMDI0NiwgOTU4OCwgMTIwMjQ4LCAxNTk2LCAxMjAzODMsIDQxOTk0LCAKKyAgICA2NTgwMSwgMTI4ODA4LCAwLCA2NjU3MiwgMCwgMCwgMTA2MTMsIDY2OTcsIDEyODA1LCA0MTkyOCwgNDA5ODEsIDc4NDAzLCAKKyAgICA3ODQwOSwgNTAwNiwgNjQzMjgsIDAsIDk5MzEsIDAsIDg4MjUsIDc0NTU1LCA2NTk0MCwgNDMyNTksIDAsIDYxMDcsIDAsIAorICAgIDExOTE3NywgMCwgNzg0MDEsIDEyODY0MSwgMTE3ODMsIDMzNSwgMTIwMjI3LCA2NDY4OSwgNDM4LCA0NTEwLCA1NzY1LCAKKyAgICA4NzIxLCAxMjAyMzMsIDExOTIyNywgNjA5MiwgMTI4NDAsIDQzMTEyLCA4ODc2LCAxMjAyMzEsIDgwOTYsIDEwMjg0LCAKKyAgICAxMjg1MTUsIDAsIDAsIDEwMzgwLCA4NzMzLCA5ODMwNzIsIDEyODI0MCwgNDE2MDIsIDAsIDkyMzA4LCA3NDgzMSwgCisgICAgOTE3OTAxLCAwLCA3Mzc0NywgNjUzOTksIDAsIDY0NTkxLCA0MjQwNSwgMCwgMTIwODIwLCA4NDMsIDExNTQxLCAwLCAKKyAgICA5MTc4OTgsIDIwNjUsIDQxOTM1LCA3NDQ5NiwgNDE5MDIsIDAsIDAsIDIxNSwgNDEyNTgsIDc3ODc1LCA0MzE1OSwgMTk1MywgCisgICAgOTU3OSwgNDE5MzgsIDEyNTYsIDM5MTAsIDk0MDcsIDYyNDIsIDAsIDk4MzEwMCwgNDEyNTcsIDQxOTAwLCA4Njc1LCAKKyAgICAxMDcwMCwgODgwNSwgMTc0MiwgMCwgOTMzMywgODIwMiwgMTI3NzUwLCAwLCA5ODMxOTcsIDAsIDAsIDczODgyLCA0OTksIAorICAgIDk4MzA0OSwgNDM0NjcsIDAsIDQzODE4LCAwLCAxNzEyLCA1OTMyLCA3Nzg0NSwgNDE3NjIsIDk4MzEwNCwgMCwgMTE5NjcsIAorICAgIDE3NzUsIDAsIDAsIDAsIDAsIDEyODAwOSwgOTQ1OCwgMCwgNjQ3MCwgOTE4MCwgMTIwMzgwLCA0MzE3NiwgMCwgMCwgCisgICAgNDI3ODIsIDAsIDAsIDAsIDEyODMwOSwgNzQ3NzcsIDEyMDY2OSwgOTQxNCwgMTIwMzgyLCA3Mzc4MiwgNzM5NjksIDU2NSwgCisgICAgNDI0ODQsIDU3OTQsIDIwMSwgMjY2MiwgNDIyOTIsIDAsIDgyNTQsIDAsIDEwOTc1LCAwLCAxMjA2MjUsIDc0NzYzLCAxMDIyLCAKKyAgICA0MTA4LCAzODgwLCA3NDI0NywgMCwgMCwgOTIyNjMsIDkxNzk4MCwgNzUwNywgMCwgNDMxNDksIDAsIDY1MDMxLCA3OTYxLCAKKyAgICAxNjM2LCAwLCA2NTAyOSwgNjUwMjQsIDAsIDEyNDczLCA2NTM0LCAwLCA5OSwgOTgsIDk3LCAxMjA1NzEsIDY3NTg0LCAKKyAgICA0MDQ5LCA3NDE2MywgMTI3MDY1LCA3MDkwLCAwLCA3ODkyLCA5MTc5NjksIDEwNzc3LCA5MTc4MDMsIDY1MzEwLCA2NTU2MiwgCisgICAgNjY1OTksIDY2NzIyLCAwLCA4MDM5LCAzMzYzLCA2NjU5NCwgNDM0MzQsIDAsIDAsIDEyNTk2LCA2NjU5NSwgNDIyNTgsIAorICAgIDQyNTcwLCA1NTkzLCAxMTkxNDgsIDEyMDcxMSwgOTI0MjUsIDEwMTAwLCA2MDYxLCA2NDg1NCwgMTE5LCAxMTgsIDExNywgCisgICAgMTE2LCAxMjk5OCwgMTIyLCAxMjEsIDEyMCwgMTExLCAxMTAsIDEwOSwgMTA4LCAxMTUsIDExNCwgMTEzLCAxMTIsIDEwMywgCisgICAgMTAyLCAxMDEsIDEwMCwgMTA3LCAxMDYsIDEwNSwgMTA0LCA2NDM2LCA3Mzk3NCwgNTM0LCA0MTIxMiwgNzc5MzEsIDE1MzYsIAorICAgIDY0MDkzLCA3Mzk3MCwgNzc5MzAsIDEyNzE1NywgMCwgNjAyMCwgMTI3MTYsIDEyNzExMiwgMTI3NDQsIDQ3NSwgMTIwMzk0LCAKKyAgICAxMzI2NiwgMTI3ODEzLCAxMjcxMTEsIDAsIDczOTI2LCAwLCAxMDY0NSwgMTIxMiwgNjU0MywgOTgzMjk5LCA4MTM0LCAKKyAgICAxMjgwMjgsIDI5MTMsIDczODcwLCAxMjcxMTMsIDE4NjYsIDAsIDE5NTA5NSwgMCwgODkyMywgMTY0NSwgMTIwNTksIAorICAgIDY2NTg1LCA3MTI5NywgMzE5NiwgMCwgMCwgNTkzNSwgMTI1MCwgMTI3MDY2LCA4MTc0LCA5Nzg3LCA2NzMzLCA5ODU5LCAKKyAgICA3OTE2LCA5ODYxLCA5ODYwLCA1MjU4LCAxODgyLCAxODkyLCA2NzMxLCAxMDg4MiwgNDA1LCAxMTQ1NCwgNzM5MTEsIDAsIAorICAgIDEyODc4MSwgNDExNjksIDg5MzksIDQxMjQ1LCAwLCA0MTE3MCwgMTQ1NCwgMTEzNjksIDY0NzcsIDEyMTU3LCAwLCAwLCAwLCAKKyAgICA0MTE3MiwgNzg1NSwgMCwgMCwgMTA0ODAsIDAsIDAsIDc3OTM2LCA4MjY0LCAxMjYxMCwgOTgzMzAwLCA2NDUsIDEyNjYxNiwgCisgICAgNzYwOSwgNDA5NzMsIDY5OTQzLCA3MzgzMywgNjk5NDgsIDU4MjQsIDk4NCwgNzc5MTgsIDEwNjg4LCA1ODUxLCAwLCA3NzI5LCAKKyAgICA3Mzk4MiwgMTIwNTE4LCAwLCAxOTUwODYsIDQzMzY5LCAwLCAxMjgxNDAsIDY4NDE1LCA5ODMwOTMsIDQ1MzgsIDEyMDQwNiwgCisgICAgNDMxNDEsIDAsIDk4MzIwOCwgNzQyMTQsIDczODg2LCAwLCAwLCAxMTg5MDIsIDQzMDA1LCA3ODQ0OCwgOTU1MiwgMCwgMCwgCisgICAgOTgzMTU5LCAxMjk5NywgMCwgMCwgMCwgMCwgMjM4MSwgMTI4ODMsIDEwOTk0LCAxMDUyOSwgNDE5MDYsIDAsIDAsIDAsIAorICAgIDEyNDI1LCAxMDY2MSwgMTA4NTYsIDk2MTQsIDI0MjgsIDQxNDc4LCA4NTgyLCAxMDA2NCwgNzM5MzAsIDAsIDAsIDAsIAorICAgIDY0ODk2LCAxMTkxNjIsIDE5NTIsIDkyMTgxLCA4NDU1LCAxMDA4MiwgMTE1NzUsIDk4MzQ4MiwgMTE5NTY2LCAwLCAxMjgwOCwgCisgICAgMTIxODMsIDYxNDUsIDExODk1NSwgNjQ5MjksIDkyNDMzLCAwLCA5ODMxOTMsIDQzMTg2LCA0MjUwOSwgMCwgMzkyMiwgCisgICAgOTE4NywgOTgzNjE0LCAwLCAxMDE5MSwgMTE5MDU3LCAxMTc1MiwgMzM1MywgOTM1OCwgMCwgNzEzNjYsIDY2NjgwLCAKKyAgICAxMjAwOTAsIDgyNDgsIDc5MzEsIDg1NTgsIDk3OTUsIDY4MzgwLCA5ODMyODksIDAsIDEyMDA4MiwgMTIwMDgxLCAxMjAwODQsIAorICAgIDQxMDI3LCAxMjAwODYsIDAsIDEyMDA4OCwgNzM2NiwgNzAxOSwgMTIwMDczLCAwLCAxMTc1MSwgMTIwMDc4LCA3ODI5NCwgCisgICAgNjQ2NTcsIDg2NTcsIDEyMDA0OCwgODU5NCwgMTIwMDY4LCAwLCAwLCAxMjAwNjksIDEyMDA3MiwgMTIwMDcxLCAwLCAwLCAKKyAgICA0MzE1NCwgNDEwMjksIDAsIDExMzMyLCA2NTM4MCwgNzcyOCwgOTQwNzcsIDExMjk0LCAwLCA2NjY2NSwgNzg1MSwgMCwgCisgICAgODM3NSwgODY5OSwgMCwgNDI1MjQsIDAsIDkwODUsIDk0MDQxLCA3NTA0LCA5MzI3LCA2MTYwLCAxMjgwOTUsIDk4Mzg1NSwgCisgICAgMCwgODA4OCwgMCwgNzQwMTIsIDkyNTAwLCAwLCA0NDM5LCA2OTI2LCA5ODMwNDcsIDEyOTI0LCAxMjgyMjcsIDQyMzY5LCAKKyAgICA0MzUwLCA2NTQ5MSwgNjUxNDUsIDkwNDEsIDQzNTU5LCA2NDU3NywgMTA4MjYsIDAsIDExMjk2LCA5ODMyNzUsIDAsIDAsIAorICAgIDY1ODI1LCA5NTc3LCA2ODE5OSwgMCwgNjQ2NzAsIDk4MzEyMSwgNzgwNTYsIDY3OTMsIDExMjk1LCAwLCA3ODA1MywgCisgICAgNzM4NzIsIDAsIDAsIDEwOTAyLCAwLCAwLCA3ODA3MCwgNzgwNjgsIDEwNDcyLCAyOTk1LCAwLCAwLCA2NDY4MiwgMjM3MSwgCisgICAgNzgwNjksIDEyMDgwOCwgMjU5LCAxMDA5LCA5MjE3MSwgMjQwMiwgMjMzMywgNjQ0MCwgMTk0NzQxLCAwLCA2NTEyNSwgCisgICAgNDEyNDQsIDAsIDEzMjcxLCA5MTAzLCAyMjc4LCAwLCAwLCAwLCAwLCAxMDIxOSwgMCwgMCwgMCwgMCwgNDMxNzgsIAorICAgIDEyNzA3MCwgNDEyNjEsIDExOTM2MiwgNDM2NDAsIDg2MTMsIDAsIDk0MDQ5LCA2NzM2LCAxOTUwOTIsIDQxNDkyLCAxMjAwNSwgCisgICAgNjk5MjcsIDAsIDE4OTAsIDEyMDA1NiwgMCwgMCwgMCwgNzI5MywgNzk5MSwgMCwgMTA1NzgsIDAsIDc4MDc2LCAxOTQ3MzgsIAorICAgIDc4MDc3LCA2OTkyOCwgMCwgNzg4MDAsIDkyNjUzLCA2NDQ0NSwgNDI2NjgsIDY2MzUsIDAsIDYxNjQsIDY1MTcwLCAwLCAwLCAKKyAgICA3Njc2LCAxMTY2NCwgMCwgOTgzNjQ5LCA2OTcwNywgMCwgMTE4ODEyLCAwLCAwLCAxMjgwNDUsIDkxNzUsIDExOTI1LCAKKyAgICA3ODA0NSwgOTA4OCwgMCwgNjQ1NDUsIDEzOTYsIDAsIDc1NDYsIDM4NDcsIDEyNzE3NywgMTI3ODM1LCA0OTg1LCAxMzI4OCwgCisgICAgNjcyLCA4MDk4LCA0MzE5NiwgMTk0NzQ2LCA5ODMwOTYsIDEyODEyNiwgNDI2NTUsIDc0MDQzLCA2NTA3MiwgMTU3NywgCisgICAgMTE3NzIsIDEzMDQxLCA1OTI4LCA0NTI1LCAxMDY1OCwgNjU5MTEsIDEyNjYsIDEwMTgwLCAwLCAxMjg1ODQsIDEyNjIyLCAwLCAKKyAgICAwLCAwLCAxOTQ3MTQsIDEyNzEzOSwgMTMzMTAsIDc3MywgMTk5MzMsIDE1MzksIDAsIDEyNjk4MywgNDI3MzEsIDY3OTcyLCAKKyAgICAwLCAwLCAwLCAzMDUxLCA1ODYyLCA3ODIzLCA5MjQ3OCwgMCwgMTIwNDExLCAzMjUwLCA0Mzk5MSwgNjk2ODcsIDY2NjQ5LCAKKyAgICA5NTEwLCA2NjIzNywgOTgzMjk0LCAwLCA0MTA2NiwgNjQ2NzMsIDkxNzk2MywgOTE3OTY0LCAwLCAzNTA1LCA4NzA3LCAKKyAgICA5MTc5NjgsIDY3MjUsIDEyODAxMywgOTE3OTcxLCA5MjMxNCwgMzQ3MSwgOTE3OTcwLCA1NDc5LCA4ODIsIDY2ODYsIAorICAgIDExOTU4NCwgMTE2MTMsIDEyMDc3MiwgNDI3NTQsIDAsIDk4MzI5OCwgOTI2OTYsIDAsIDAsIDAsIDEyODUyMywgMzIyNSwgCiAgICAgOTE3OTk2LCA0NDMzLCA0MTE1NiwgNDM5NzMsIDQzMTczLCAxNDQzLCA0MzgxLCAwLCAwLCAxMDkyNiwgMTE3NTYsIDExNzU3LCAKICAgICA2NDg3OSwgOTE3OTQ5LCA5MTc5NTAsIDEyNzg0OCwgMTMyMjcsIDAsIDEwMDIxLCA1MTYwLCAxMzg3LCAwLCA5MTc5NTMsIAogICAgIDQxNDE4LCAwLCA2NTkxNCwgNjcyMSwgMjE3LCA5MTc5NTUsIDkxNzk2MCwgOTE3OTYxLCAxMDQ0MywgMTA3ODksIDQxMTU4LCAKLSAgICAxMTkyNTcsIDQyNzQsIDAsIDQxNDgzLCAwLCA0MTI1MCwgMCwgNDIxNzksIDAsIDU5MzEsIDExNzQ0LCA2OTIzMiwgMCwgCi0gICAgNDEyNTIsIDY2NjgyLCAwLCAxMTk2MzcsIDQxMjQ5LCAxMzY2LCA2NDYzNSwgNjUwNDcsIDEyNDY2LCAwLCAwLCA0Mzk3LCAKKyAgICAxMTkyNTcsIDQyNzQsIDk4MzI5MiwgNDE0ODMsIDAsIDQxMjUwLCAwLCA0MjE3OSwgMCwgNTkzMSwgMTE3NDQsIDY5MjMyLCAKKyAgICAwLCA0MTI1MiwgNjY2ODIsIDAsIDExOTYzNywgNDEyNDksIDEzNjYsIDY0NjM1LCA2NTA0NywgMTI0NjYsIDAsIDAsIDQzOTcsIAogICAgIDEyODAzNywgMTI4MzM2LCA0MTI5NiwgOTU0NSwgNDEyOTEsIDEyODA0OSwgMCwgNDE0ODUsIDM1MTEsIDQxMjgyLCA1OTIzLCAKICAgICAxMDQwMCwgMCwgMTI4ODE4LCA3NjAsIDAsIDEyMDg4LCA1Nzg2LCAwLCA0MjI1NiwgMTE5ODY5LCAxMTk4NjAsIDQxNywgCi0gICAgNDE0NzQsIDExOTU2MiwgNDE1NjUsIDAsIDU5MzQsIDExOTg2NywgNjY1ODMsIDExOTIzMSwgNjQ4NzcsIDAsIDY0NDgxLCAKKyAgICA0MTQ3NCwgMTE5NTYyLCA0MTU2NSwgMCwgNTkzNCwgMTE5ODY3LCA2NjU4MywgMTE5MjMxLCA2NDg3NywgMjI4NCwgNjQ0ODEsIAogICAgIDc4NjE0LCA2NjAxMywgNDE5NTYsIDQzNDU1LCAxMjY5OTUsIDAsIDAsIDAsIDQyMjczLCA1ODE5LCAwLCA5MTc1NTYsIDAsIAotICAgIDAsIDAsIDY1OTEwLCAxMjc3NDcsIDEwMjQ2LCAxMjA4MTYsIDAsIDEyMzcsIDEwMjc0LCA0NTUyLCAxMTk1NzYsIDAsIDAsIAotICAgIDEzNzUsIDY2NzA1LCA0MzU3MywgNjUyNjAsIDQyMDYzLCAwLCA0MjgxMSwgMTAzMTIsIDc0MTkyLCAxMjA3OTQsIDc4NDAsIAotICAgIDAsIDQzNjMwLCAxMDI1MiwgMCwgMTI4MTA0LCA0MzE4NSwgMCwgNDM5NiwgMCwgMTE5ODgwLCAxMDc2OSwgOTY3NiwgCi0gICAgMTE5MDQxLCAwLCA5NzUzLCAwLCA4OTQ0LCAwLCAwLCAxMDQ3MywgMCwgMCwgNjA3MiwgNDMwMjUsIDEwMjk5LCAwLCAwLCAKLSAgICAxMjA2MDgsIDY2MzI2LCAwLCAwLCAwLCA0MzgxMSwgOTMzMCwgMCwgNzIyMiwgMTAyODMsIDEwMzE1LCAxMDM3OSwgNDk5NiwgCi0gICAgMCwgMTMyODEsIDY2NTE3LCA3ODY1LCAxMDA4NywgNzgzNDMsIDAsIDc4MzQ3LCAwLCAwLCA3NTY1LCA2NjM2MywgMTI5NTIsIAotICAgIDY0ODA2LCA0MzE4MCwgNzc5MjgsIDY4MDk2LCA3NzkyOSwgNDM5ODIsIDc0Mjg4LCA2MjIsIDc0MDIzLCA4ODUsIDQzNDA1LCAKLSAgICAxNjAyLCAwLCAwLCA4NTIsIDAsIDEyMTYwLCAwLCAxMDIxMiwgNjU0MzUsIDAsIDEyMDcxLCA5NjA5LCAxMjE1NiwgCi0gICAgOTE3OTgzLCA5MTc5ODQsIDQzNTg2LCAxMTAzNSwgMTA0MTEsIDkxNzk4OCwgMTAyNTUsIDY3MTAsIDEwMjc5LCA0MTk0LCAKLSAgICAxMDM3NSwgOTE3OTkzLCAwLCA0MzE1LCAxMjY0NCwgMTI3NTE2LCA3NzkzNywgNDM2MzksIDQzMzQzLCAwLCA5MTc5OTgsIAotICAgIDExNTAxLCA0MTE3NywgMTI4Njg5LCAwLCA5MTc3OTIsIDAsIDkyNDEzLCA4NzE1LCAwLCA0MTE3OSwgMCwgNDMzMTMsIDAsIAotICAgIDQxMTc2LCAwLCA5OTQsIDAsIDg0NTIsIDEyNzEwMywgNzM5NjYsIDAsIDAsIDU5MjEsIDAsIDI1OTcsIDAsIDU5MjIsIAotICAgIDExODkwMywgNzc5NDMsIDQxODYsIDkyNTMxLCAxMjcxMDYsIDEyNzEwNSwgNjcxOCwgMCwgNDQwNiwgNzQ2MDEsIDg0ODAsIAotICAgIDkxOTIsIDk3NDcsIDEyODY5OSwgNDQxMywgOTIxOTYsIDQyMjY4LCAzMTk4LCA1OTI0LCA1OTIwLCA5MjQ2OSwgNjkyMSwgCi0gICAgNzgwODEsIDc0MDA3LCA0Mjg2OSwgODQxOCwgMTE2ODEsIDQzMTY5LCAxMDE3NiwgMCwgNzQyLCAwLCAyODkzLCAxMDc3MiwgCi0gICAgNjUyNzYsIDU5MzcsIDE5MTQsIDI1NTMsIDExNjgyLCA2NzU2LCAxMjg1OTAsIDEyODY0NiwgODM2MywgMCwgMjk5MywgCi0gICAgNzc3MiwgMzkxNiwgMCwgMTIwNDk0LCAxMTQxLCA0MjQwNywgODE1OSwgNzE4LCA3NTcyLCA5NzMsIDAsIDEyMDcxOCwgCi0gICAgMzIzNSwgMjQxNSwgNDMxNjQsIDAsIDgwMTgsIDQyMzMzLCA3NDc1NiwgMTA2NzUsIDY5MzcsIDQyNDg2LCA0MzM4MSwgCi0gICAgNjUzOTAsIDEwMDY3LCAwLCAxMjAyLCAwLCAwLCA2NTg2MywgMCwgMCwgMCwgNzgxODIsIDY0NTQyLCAzMjYwLCA3MzgyOSwgCi0gICAgNjUzODgsIDk5NDUsIDg0MTksIDc4MDQyLCA2NzM4LCAwLCA0MzY4MSwgNjk3MjgsIDIwNTksIDAsIDAsIDU1MjM3LCAxNDMxLCAKLSAgICAwLCA2NjU2NSwgMTA4MjEsIDAsIDEyODA0LCAxMjgwNzYsIDgyMjksIDEyMzUsIDMzMDcsIDExNDcyLCA3ODA4OSwgNzgxODQsIAotICAgIDQ1NDQsIDAsIDAsIDAsIDE3NDAsIDc4MDk3LCA4NzU4LCA5ODUsIDEyODcyLCA2NDUxMSwgNzgwOTQsIDEyMDY4LCA3ODEwMiwgCi0gICAgMCwgMTAxNDEsIDAsIDYzNzYxLCA4Nzg1LCA0NDc2LCA3ODEwOSwgNjM3NjMsIDEyNjU1LCA4OTA3LCA3ODEwNSwgNzgxMDYsIAotICAgIDc4MTAzLCA3ODEwNCwgMCwgMTE5NTcyLCAxMDY2NSwgNjQ2MTYsIDQxNTcyLCAwLCAxMjcxNjAsIDAsIDQxNTczLCAwLCAKLSAgICAzOTMxLCAxMjAyOTUsIDc0MTQzLCAwLCAwLCAwLCAwLCAxMTk4MiwgMCwgMCwgMCwgMTI4MDE2LCA2NDQ4NCwgMCwgNDExNjcsIAotICAgIDAsIDQxNzM1LCAwLCA3MTcsIDEwNzU0LCAwLCAwLCAxMjc5NzksIDAsIDYzNzY3LCAwLCAxNzgwLCA2OTM2LCAwLCAwLCAKLSAgICA4MTksIDEwNjExLCA5Njk0LCAxMjY5NzgsIDAsIDAsIDAsIDAsIDgzNDMsIDgzNDIsIDgzNDUsIDgzNDQsIDY1NzgsIDcwMDksIAorICAgIDEyNjY0MywgMCwgNjU5MTAsIDEyNzc0NywgMTAyNDYsIDEyMDgxNiwgNjU3ODUsIDEyMzcsIDEwMjc0LCA0NTUyLCAKKyAgICAxMTk1NzYsIDAsIDAsIDEzNzUsIDY2NzA1LCA0MzU3MywgNjUyNjAsIDQyMDYzLCAwLCA0MjgxMSwgMTAzMTIsIDY5ODQ1LCAKKyAgICAxMjA3OTQsIDc4NDAsIDAsIDQzNjMwLCAxMDI1MiwgMCwgMTI4MTA0LCA0MzE4NSwgMCwgNDM5NiwgMCwgMTE5ODgwLCAKKyAgICAxMDc2OSwgOTY3NiwgMTE5MDQxLCAwLCA5NzUzLCAwLCA4OTQ0LCAwLCAwLCAxMDQ3MywgMCwgMCwgNjA3MiwgNDMwMjUsIAorICAgIDEwMjk5LCAwLCAwLCAxMjA2MDgsIDY2MzI2LCA5ODM0MzksIDEyNzc5NCwgMCwgNDM4MTEsIDkzMzAsIDEyMDU5NiwgNzIyMiwgCisgICAgMTAyODMsIDEwMzE1LCAxMDM3OSwgNDk5NiwgOTgzNzczLCAxMzI4MSwgNjY1MTcsIDc4NjUsIDEwMDg3LCA3ODM0MywgMCwgCisgICAgNzgzNDcsIDAsIDAsIDc1NjUsIDY2MzYzLCAxMjk1MiwgNjQ4MDYsIDQzMTgwLCA3NzkyOCwgNzQxNCwgNzc5MjksIDQzOTgyLCAKKyAgICA3NDI4OCwgNjIyLCA3NDAyMywgODg1LCA0MzQwNSwgMTYwMiwgMCwgMCwgODUyLCAwLCAxMjE2MCwgMCwgMTAyMTIsIAorICAgIDY1NDM1LCAwLCAxMjA3MSwgOTYwOSwgMTIxNTYsIDkxNzk4MywgOTE3OTg0LCA0MzU4NiwgMTEwMzUsIDEwNDExLCAKKyAgICA5MTc5ODgsIDEwMjU1LCA2NzEwLCAxMDI3OSwgNDE5NCwgMTAzNzUsIDczOTAwLCAwLCA0MzE1LCAxMjY0NCwgMTI3NTE2LCAKKyAgICA3NzkzNywgNDM2MzksIDQzMzQzLCA3ODc3NywgOTE3OTk4LCAxMTUwMSwgNDExNzcsIDEyODY4OSwgMCwgOTE3NzkyLCAwLCAKKyAgICA5MjQxMywgODcxNSwgMCwgNDExNzksIDAsIDQzMzEzLCAwLCA0MTE3NiwgMCwgOTk0LCAwLCA4NDUyLCAxMjcxMDMsIAorICAgIDczOTY2LCAwLCAwLCA1OTIxLCAwLCAyNTk3LCAwLCA1OTIyLCAxMTg5MDMsIDc3OTQzLCA0MTg2LCA5MjUzMSwgMTI3MTA2LCAKKyAgICAxMjcxMDUsIDY3MTgsIDAsIDQ0MDYsIDc0NjAxLCA4NDgwLCA5MTkyLCA5NzQ3LCAxMjY1MzAsIDQ0MTMsIDkyMTk2LCAKKyAgICA0MjI2OCwgMzE5OCwgNTkyNCwgNTkyMCwgOTI0NjksIDY5MjEsIDc4MDgxLCA3NDAwNywgNDI4NjksIDg0MTgsIDExNjgxLCAKKyAgICA0MzE2OSwgMTAxNzYsIDAsIDc0MiwgMCwgMjg5MywgMTA3NzIsIDY1Mjc2LCA1OTM3LCAxOTE0LCAyNTUzLCAxMTY4MiwgCisgICAgNjc1NiwgMTI4NTkwLCAxMjg2NDYsIDgzNjMsIDAsIDI5OTMsIDc3NzIsIDM5MTYsIDQzMDEsIDEyMDQ5NCwgMTE0MSwgCisgICAgNDI0MDcsIDgxNTksIDcxOCwgNzU3MiwgOTczLCAwLCAxMjA3MTgsIDMyMzUsIDI0MTUsIDQzMTY0LCAwLCA4MDE4LCAKKyAgICA0MjMzMywgNzQ3NTYsIDEwNjc1LCA2OTM3LCA0MjQ4NiwgNDMzODEsIDY1MzkwLCAxMDA2NywgMCwgMTIwMiwgMCwgMCwgCisgICAgNjU4NjMsIDAsIDAsIDk0MDEzLCA3ODE4MiwgNjQ1NDIsIDMyNjAsIDczODI5LCA2NTM4OCwgOTk0NSwgODQxOSwgNzgwNDIsIAorICAgIDY3MzgsIDAsIDQzNjgxLCA2OTcyOCwgMjA1OSwgMCwgMCwgNTUyMzcsIDE0MzEsIDAsIDY2NTY1LCAxMDgyMSwgMCwgCisgICAgMTI4MDQsIDEyODA3NiwgODIyOSwgMTIzNSwgMzMwNywgMTE0NzIsIDc4MDg5LCA3ODE4NCwgNDU0NCwgMCwgMCwgMCwgCisgICAgMTc0MCwgNzgwOTcsIDg3NTgsIDk4NSwgMTI4NzIsIDY0NTExLCA3ODA5NCwgMTIwNjgsIDc4MTAyLCAwLCAxMDE0MSwgMCwgCisgICAgNjM3NjEsIDg3ODUsIDQ0NzYsIDc4MTA5LCA2Mzc2MywgMTI2NTUsIDg5MDcsIDc4MTA1LCA3ODEwNiwgNzgxMDMsIDc4MTA0LCAKKyAgICAwLCAxMTk1NzIsIDEwNjY1LCA2NDYxNiwgNDE1NzIsIDAsIDEyNzE2MCwgMCwgNDE1NzMsIDAsIDM5MzEsIDEyMDI5NSwgCisgICAgNzQxNDMsIDAsIDAsIDAsIDc4NDYwLCAxMTk4MiwgMCwgMCwgMCwgMTI4MDE2LCA2NDQ4NCwgMCwgNDExNjcsIDAsIDQxNzM1LCAKKyAgICA5NDAxOSwgNzE3LCAxMDc1NCwgMCwgMCwgMTI3OTc5LCAwLCA2Mzc2NywgMCwgMTc4MCwgNjkzNiwgMCwgOTIyNTQsIDgxOSwgCisgICAgMTA2MTEsIDk2OTQsIDEyNjk3OCwgMCwgMCwgMCwgMCwgODM0MywgODM0MiwgODM0NSwgODM0NCwgNjU3OCwgNzAwOSwgCiAgICAgNzUyMywgNjkyMiwgODM0OCwgODM0NywgNzUyNSwgMzM0NiwgODMzOSwgMTI4MTY1LCAxMjgzMzgsIDU3NSwgMjY4LCAKICAgICA3ODExMSwgODU2MywgNTc1NCwgMTIwMzQzLCA0MTU0MSwgNjU1NjUsIDgzMzYsIDU5MzYsIDcyOTAsIDc4MTE3LCA4MzM3LCAKICAgICA4MzQxLCAzMDgsIDExMzg4LCA3NTIyLCAxMjA3MjEsIDc4MTIzLCA2NTQ2NiwgMTEwOTAsIDY5NTMsIDAsIDEyMDM0NiwgMCwgCkBAIC0xNzEyOCwxNjg2ICsxODA2MywyNjQyIEBACiAgICAgNzgzMCwgMTE2NTEsIDEzMDkzLCA2NDAwMiwgMCwgNjU3NDIsIDEyODc0LCAxMTk1OTcsIDExNTkwLCAwLCA3NDA0OCwgCiAgICAgMTI4MzUwLCA4NTk1LCAwLCA5MTc5NDcsIDQzNzAzLCAxMzA5NywgMCwgNjQ2NDMsIDEzMjgzLCAxMjY5NywgMCwgMTIzODEsIAogICAgIDM0ODgsIDU5MzMsIDEwMDMzLCA3MzczOCwgNjYyNDEsIDY1NTcwLCAwLCAxMjI5NywgMTE5MTUzLCAxOTU1LCAwLCA1MzQ5LCAKLSAgICA0MjUzOCwgMCwgMCwgNjUzMDgsIDk0NjIsIDkxNzU1NCwgMCwgMCwgMCwgNDI3MzYsIDAsIDU3NTYsIDAsIDc2MzgsIAotICAgIDQxNjQyLCA0Mjc2NCwgMCwgNDMxMDksIDc2MzcsIDU3NTIsIDEyMDYwMCwgMCwgNzM4MzIsIDEyODgyNywgMTIwNjM1LCAKLSAgICAxMjgyMzEsIDc4MzM0LCAwLCA3NjM2LCA2NTE3MSwgOTEyNCwgMCwgNzg4OTIsIDAsIDI5MSwgMCwgMCwgMjAyNywgNjYyMzAsIAotICAgIDEwMDgwLCA3ODEzNiwgMTA0MDMsIDAsIDQ2NDAsIDY0NzEzLCAxMDIyNCwgMTIwNDI5LCA0MjUxMiwgMTIwNDMxLCAKKyAgICA0MjUzOCwgMCwgMCwgNzQxMSwgOTQ2MiwgOTE3NTU0LCAwLCAwLCAwLCA0MjczNiwgMCwgNTc1NiwgOTgzMjE5LCA3NjM4LCAKKyAgICA0MTY0MiwgNDI3NjQsIDAsIDQzMTA5LCA3NjM3LCA1NzUyLCA3NDAzNywgMCwgNzM4MzIsIDEyODgyNywgMTIwNjM1LCAKKyAgICAxMjgyMzEsIDc4MzM0LCAwLCA3NjM2LCA2NTE3MSwgOTEyNCwgMCwgNzg4OTIsIDEyMDc5OCwgMjkxLCAwLCAwLCAyMDI3LCAKKyAgICA2NjIzMCwgMTAwODAsIDc4MTM2LCAxMDQwMywgMCwgNDY0MCwgNjQ3MTMsIDEwMjI0LCAxMjA0MjksIDQyNTEyLCAxMjA0MzEsIAogICAgIDEyMDQzMCwgMCwgMTI4MzUxLCAxMjc0ODksIDEyNzE0OCwgMCwgOTI0OTksIDAsIDExOTA5NCwgNzQyMTMsIDc4MjQsIDAsIAogICAgIDAsIDQxMjc0LCA1Nzc4LCA2MzAyLCAwLCAwLCAxMjY4MCwgMTE5MTMwLCAxNDE3LCA3Nzg4OSwgMTk0OTE0LCA5NDUyLCAwLCAKLSAgICA3NDM5MywgMTE1NTIsIDAsIDEyNzg1NSwgMCwgNjUzOTEsIDAsIDEwMTcyLCA2NTQ1MywgNjM3ODksIDQxMjY0LCA3ODY1OCwgCi0gICAgNjQyNiwgNDY0MSwgOTE3OSwgNjQ4MTksIDU1Mjc4LCA0MTI1NSwgNDIwMzYsIDQxNDY5LCA0MTI2OSwgMTIwNDEyLCAKLSAgICA0MTI2NywgNDY0NiwgMTIwNDI1LCA4NjUsIDQyMDM0LCA3ODI3NCwgNzgyNzMsIDQ2NDUsIDQyMDMzLCA3ODI3MCwgCi0gICAgMTI3OTgyLCAwLCA2NDcyOCwgMCwgNzg2NzMsIDc4Njc0LCAxNjU5LCA5MTksIDQyNzg0LCAxNjcxLCAxOTUwODksIDYwNjksIAotICAgIDkyMTksIDE5NTA5MCwgMTY2MSwgMTMxMjAsIDYzNzg0LCA2OTgxOSwgMTAxNDAsIDk3MTMsIDExOTE0MywgMCwgMCwgMCwgCi0gICAgMjMwNiwgMTA0ODUsIDExODk0MywgNjA2OCwgMTA2MTIsIDE5NTA5OSwgMTE5NTY3LCAxOTUxMDEsIDkyNTYxLCA0MTQ2MiwgCi0gICAgMTIwNDcwLCAxOTUwNzksIDU0MjIsIDEyODIzNCwgMCwgMCwgMCwgMTAyMjksIDEwNjM1LCA4MjYsIDEyODA4MSwgMTk1MDgyLCAKLSAgICAxOTUwODUsIDE5NTA4NCwgMTk1MDg3LCA2NDgzLCAwLCAxODA4LCA3ODQ4LCAwLCA4MTAwLCA3ODIyNywgNzg2NjksIAotICAgIDc4NjcwLCAxMzMwMSwgNzg2NjcsIDk2NjcsIDc4NjY1LCA3ODg3MiwgMCwgMTEwMDMsIDk5MDQsIDAsIDAsIDEyMDY5MCwgCi0gICAgOTE0NCwgMTA5MjEsIDAsIDc4NjgwLCA5ODQwLCA2NTEzMSwgNzg2NzgsIDc3ODQxLCAxMDMxMywgMCwgMCwgNjQzMjAsIAotICAgIDEwMjY1LCA3ODY4NiwgMTA5NjIsIDc4Njg0LCA0MzAwOCwgODk0NSwgNzg2ODMsIDAsIDQxLCAxOTUwNzIsIDE3OTIsIAotICAgIDEyMDUxNSwgMTk1MDczLCA4NjU1LCAxOTUwNzUsIDkyNTQ0LCA3Nzk1MSwgMTIwNjYsIDAsIDM4NSwgNDE1MiwgMjU4NSwgCi0gICAgMTI3ODA0LCAxMTkwNjgsIDMxMjYsIDAsIDc0MTM2LCAxMDk1NywgMCwgNDMyNTgsIDAsIDEyNzg3MywgMTMxNTcsIDAsIDAsIAotICAgIDM1NzAsIDAsIDc0NDMsIDAsIDQ0MDA2LCA2OTk3LCAwLCAwLCA3ODc5LCA4NzM5LCAxMTA3NSwgMCwgNjUyMTYsIDAsIAotICAgIDY5Nzk1LCAyNTkzLCA4NDYzLCA3ODEwLCA5MTc4NjIsIDc4MzksIDExOTkxMywgNzg4MDYsIDExOTkxMiwgOTY5MSwgNDQxMSwgCi0gICAgNzg4MDIsIDAsIDAsIDQzNDQyLCA3ODc5OSwgNjUyNTQsIDEwMDY2LCAwLCAwLCAwLCAwLCAxMzA2MSwgODAxNiwgNzg2ODcsIAotICAgIDE5OTMyLCA2NDgzMSwgMCwgMTE5OTIzLCAxMjM5MCwgMTE5MTcxLCAxNjM0LCA2ODExNSwgMCwgMTEwNTYsIDAsIDExOTkyNSwgCi0gICAgMCwgNDExNjUsIDExMzI4LCAxMjQ1MCwgMCwgNDExNjYsIDAsIDEyNDU2LCAxMTk5MTQsIDE3MSwgNTk0MSwgMTI0NTIsIAotICAgIDkxNzU0NCwgMTI0NTgsIDEyNTMxLCA3ODc3OSwgNDMwMTMsIDYzODAwLCA3NDE2MiwgMTI3NTY5LCAxMjA0ODMsIDk5NjksIAotICAgIDAsIDEyNDU0LCA2MzgwNiwgNDIxMzIsIDEyMDYzLCA3ODQyNSwgNzg0MjQsIDMyMzAsIDAsIDAsIDAsIDUyMDksIDI5NywgCi0gICAgNTgxMCwgODUyMiwgODQxNSwgMTE5OTM3LCA3ODQyOSwgNzg0MjgsIDcwNzcsIDI0OTcsIDEyODY1MSwgOTYwLCA3NDE1NiwgCi0gICAgNjk4MSwgOTIzNzQsIDEyOTM4LCA0MjkyLCAwLCA3NDgxNSwgMTA1MTIsIDAsIDc0ODE0LCA3ODg3NSwgMTI3NTA1LCAKLSAgICA3ODg3NiwgMjUwMywgNzM3NzgsIDE3NjIsIDY5Nzk0LCAyNDk1LCA3ODg3MywgNTg0NCwgNzg4NzQsIDExODgzOCwgMCwgCi0gICAgMTI2NTQsIDQ2NjMsIDE4OTksIDc4ODc3LCAyNTA3LCA2NDEyMSwgODcyNiwgNjU1OTQsIDAsIDAsIDAsIDg4OTIsIDAsIAotICAgIDkyMzM5LCAwLCAwLCA1NzgyLCA0MjAsIDAsIDAsIDQzNzk2LCAxMDc5NywgNjM3OTQsIDAsIDAsIDY0ODE0LCA2Mzc5NiwgCi0gICAgNzc5NjUsIDAsIDY2NTgxLCAxMTkyMDQsIDQxNjA4LCAwLCAwLCA2Mzc5MiwgNDY1OSwgMTIwNzg4LCAwLCA0MzY3NiwgMCwgCi0gICAgNjk2NzMsIDAsIDAsIDAsIDMyOSwgNzc5NjgsIDkyNzA3LCA5MTc1NDgsIDczOTksIDAsIDQxMTg4LCAxMzI0NCwgMTIwNDY2LCAKLSAgICA0MjE2NywgNzQzNSwgNzgxOTMsIDUzODAsIDExOTA4NiwgNjkyMjUsIDExNTUsIDExMzY1LCA0MzEyNiwgNzc5NzIsIDAsIAotICAgIDY1Njg0LCAwLCA1NjAxLCA2NTE5MiwgNDI3NjUsIDYzNzUyLCAwLCA3OTg3LCAwLCAxMTcyLCA2OTc5OSwgNjc4NiwgCi0gICAgNDM2MDEsIDEyMDQ3NiwgNzQxMjYsIDU2MDMsIDAsIDQ0NzMsIDAsIDE5NDgyMywgMCwgNjUzNDcsIDY1MzQ2LCA2NTM0NSwgCi0gICAgMCwgMTI3Mzg0LCA1MzQ3LCA2OTgwMiwgMCwgNzM4NjgsIDExODk0NCwgMTA1ODgsIDAsIDAsIDYzNzU1LCAwLCA1MzQzLCAKLSAgICA3ODQyMiwgMCwgNDU1NSwgNTM0MSwgMCwgMCwgMTI4NjcwLCA1MzUxLCAwLCA0MzEwNCwgNjUyNDQsIDkxNzg5MiwgNjQ1NDEsIAotICAgIDQyNTE5LCA3NDQ3MiwgMCwgMCwgNzQ3NjUsIDkxNzg4OCwgMTk0ODkyLCA2NjM4LCAwLCA2NTExMywgMjcxLCA3NDE4MCwgCi0gICAgNjUzNzAsIDg4MzUsIDY1MzY4LCAxMjY1MywgNjUzNjYsIDQyMTcyLCA0MTA4NiwgNjUzNjMsIDY1MzYyLCA2NTM2MSwgCi0gICAgMTE5MTIsIDQzNDEwLCAxMTMyMywgNjUzNTcsIDExODAwLCA2NTM1NSwgNTM0NSwgNjUzNTMsIDY1MzUyLCA2NTM1MSwgNzYxLCAKLSAgICA2NTM0OSwgMTk5NTksIDY5NzE4LCA2Mzg1NiwgMCwgMjQyMywgNzc5NTgsIDY0NjQ3LCA3Nzk1OSwgMTE5NTcsIDQ2OTksIDAsIAotICAgIDAsIDAsIDAsIDY0NjA1LCAwLCAwLCAwLCA0OTE2LCAwLCAzODAsIDEwOTU4LCA2NjU2MywgNzc5NTUsIDY5NzczLCA5NzczLCAKLSAgICAxMzE2NywgMTI5MTgsIDQxMDk2LCA3Mzk4MCwgNjkyNDUsIDc4MjU0LCA5MTc4OTMsIDEwNjg0LCAwLCA5MTc4OTYsIDAsIAotICAgIDc5NDYsIDEyNTQxLCA4MTgyLCA2NzU4NiwgNjk3ODAsIDAsIDAsIDAsIDAsIDkwMDUsIDEyMjUsIDY2MzAsIDAsIDAsIDAsIAotICAgIDAsIDg4NDcsIDAsIDY1ODc2LCA1NTM1LCA4MzI5LCA3NDU5MCwgMCwgOTI2MDksIDAsIDAsIDMxMjcsIDI1OTUsIDY1NzEzLCAKLSAgICA0MjAxMywgMCwgNTYwNywgNDEwODksIDAsIDAsIDc0MjU2LCAyNjY1LCAxMTMwNCwgMCwgNzQyMDAsIDQ5NzAsIDg3NjQsIAorICAgIDc0MzkzLCAxMTU1MiwgMCwgMTI3ODU1LCAxMjgyMTcsIDY1MzkxLCAwLCAxMDE3MiwgNjU0NTMsIDYzNzg5LCA0MTI2NCwgCisgICAgNzg2NTgsIDY0MjYsIDQ2NDEsIDkxNzksIDY0ODE5LCA1NTI3OCwgNDEyNTUsIDQyMDM2LCA0MTQ2OSwgNDEyNjksIAorICAgIDEyMDQxMiwgNDEyNjcsIDQ2NDYsIDEyMDQyNSwgODY1LCA0MjAzNCwgNzgyNzQsIDc4MjczLCA0NjQ1LCA0MjAzMywgCisgICAgNzgyNzAsIDEyNzk4MiwgOTgzMTcyLCA2NDcyOCwgMCwgNzg2NzMsIDc4Njc0LCAxNjU5LCA5MTksIDQyNzg0LCAxNjcxLCAKKyAgICAxOTUwODksIDYwNjksIDkyMTksIDEyODU1OCwgMTY2MSwgMTMxMjAsIDYzNzg0LCA2OTgxOSwgMTAxNDAsIDk3MTMsIAorICAgIDExOTE0MywgMCwgMCwgOTQwNTAsIDIzMDYsIDEwNDg1LCAxMTg5NDMsIDYwNjgsIDEwNjEyLCAxOTUwOTksIDExOTU2NywgCisgICAgMTk1MTAxLCA5MjU2MSwgNDE0NjIsIDEyMDQ3MCwgMTk1MDc5LCA1NDIyLCAxMjgyMzQsIDAsIDAsIDAsIDEwMjI5LCAKKyAgICAxMDYzNSwgODI2LCAxMjgwODEsIDE5NTA4MiwgMTk1MDg1LCAxOTUwODQsIDE5NTA4NywgNjQ4MywgOTIyMTEsIDE4MDgsIAorICAgIDc4NDgsIDAsIDgxMDAsIDc4MjI3LCA3ODY2OSwgNzg2NzAsIDEzMzAxLCA3ODY2NywgOTY2NywgNzg2NjUsIDc4ODcyLCAwLCAKKyAgICAxMTAwMywgOTkwNCwgMCwgMCwgMTIwNjkwLCA5MTQ0LCAxMDkyMSwgMCwgNzg2ODAsIDk4NDAsIDY1MTMxLCA3ODY3OCwgCisgICAgNzc4NDEsIDEwMzEzLCAwLCAwLCA2NDMyMCwgMTAyNjUsIDc4Njg2LCAxMDk2MiwgNzg2ODQsIDQzMDA4LCA4OTQ1LCAKKyAgICA3ODY4MywgMCwgNDEsIDE5NTA3MiwgMTc5MiwgMTIwNTE1LCAxOTUwNzMsIDg2NTUsIDE5NTA3NSwgOTI1NDQsIDc3OTUxLCAKKyAgICAxMjA2NiwgMCwgMzg1LCA0MTUyLCAyNTg1LCAxMjc4MDQsIDExOTA2OCwgMzEyNiwgMCwgNzQxMzYsIDEwOTU3LCA5ODM2OTQsIAorICAgIDQzMjU4LCAxMTkxMTYsIDEyNzg3MywgMTMxNTcsIDAsIDkxNzU0NCwgMzU3MCwgMCwgNzQ0MywgMCwgNDQwMDYsIDY5OTcsIAorICAgIDY4MDA0LCAxMjY2MzEsIDc4NzksIDg3MzksIDExMDc1LCAwLCA2NTIxNiwgMCwgNjk3OTUsIDI1OTMsIDg0NjMsIDc4MTAsIAorICAgIDkxNzg2MiwgNzgzOSwgMTE5OTEzLCA3ODgwNiwgMTE5OTEyLCA5NjkxLCA0NDExLCA3ODgwMiwgMCwgMCwgNDM0NDIsIAorICAgIDY5ODUxLCA2NTI1NCwgMTAwNjYsIDk4Mzg4MCwgMCwgMCwgMCwgMTMwNjEsIDgwMTYsIDc4Njg3LCAxOTkzMiwgNjQ4MzEsIAorICAgIDAsIDExOTkyMywgMTIzOTAsIDExOTE3MSwgMTYzNCwgNjgxMTUsIDAsIDExMDU2LCA5ODM1NzQsIDExOTkyNSwgMCwgCisgICAgNDExNjUsIDExMzI4LCAxMjQ1MCwgMCwgNDExNjYsIDAsIDEyNDU2LCAxMTk5MTQsIDE3MSwgNTk0MSwgMTI0NTIsIAorICAgIDE5NDcwOSwgMTI0NTgsIDEyNTMxLCA3ODc3OSwgNDMwMTMsIDYzODAwLCA3NDE2MiwgMTI3NTY5LCAxMjA0ODMsIDk5NjksIAorICAgIDEyMDc2NywgMTI0NTQsIDYzODA2LCA0MjEzMiwgMTIwNjMsIDc4NDI1LCA3ODQyNCwgMzIzMCwgMCwgMCwgMCwgNTIwOSwgCisgICAgMjk3LCA1ODEwLCA4NTIyLCA4NDE1LCAxMTk5MzcsIDc4NDI5LCA3ODQyOCwgNzA3NywgMjQ5NywgMTI4NjUxLCA5NjAsIAorICAgIDc0MTU2LCA2OTgxLCA5MjM3NCwgMTI5MzgsIDQyOTIsIDAsIDc0ODE1LCAxMDUxMiwgMCwgNzQ4MTQsIDc4ODc1LCAKKyAgICAxMjc1MDUsIDc4ODc2LCAyNTAzLCA3Mzc3OCwgMTc2MiwgNjk3OTQsIDI0OTUsIDc4ODczLCA1ODQ0LCA2ODAzMSwgCisgICAgMTE4ODM4LCAwLCAxMjY1NCwgNDY2MywgMTg5OSwgNzg4NzcsIDI1MDcsIDY0MTIxLCA4NzI2LCA2NTU5NCwgMCwgMCwgMCwgCisgICAgODg5MiwgMCwgOTIzMzksIDAsIDk4MzA3MywgNTc4MiwgNDIwLCAwLCAwLCA0Mzc5NiwgMTA3OTcsIDYzNzk0LCAwLCAwLCAKKyAgICA2NDgxNCwgNjM3OTYsIDc3OTY1LCAwLCA2NjU4MSwgMTE5MjA0LCA0MTYwOCwgMCwgMCwgNjM3OTIsIDQ2NTksIDEyMDc4OCwgCisgICAgMCwgNDM2NzYsIDAsIDY5NjczLCAwLCAwLCAwLCAzMjksIDc3OTY4LCA5MjcwNywgOTE3NTQ4LCA3Mzk5LCAwLCA0MTE4OCwgCisgICAgMTMyNDQsIDEyMDQ2NiwgNDIxNjcsIDc0MzUsIDc4MTkzLCA1MzgwLCAxMTkwODYsIDY5MjI1LCAxMTU1LCAxMTM2NSwgCisgICAgNDMxMjYsIDc3OTcyLCAwLCA2NTY4NCwgMCwgNTYwMSwgNjUxOTIsIDQyNzY1LCA2Mzc1MiwgMCwgNzk4NywgMTI4NTQzLCAKKyAgICAxMTcyLCA2OTc5OSwgNjc4NiwgNDM2MDEsIDEyMDQ3NiwgNzQxMjYsIDU2MDMsIDAsIDQ0NzMsIDAsIDE5NDgyMywgMCwgCisgICAgNjUzNDcsIDY1MzQ2LCA2NTM0NSwgMCwgMTI3Mzg0LCA1MzQ3LCA2OTgwMiwgOTgzNjIzLCA3Mzg2OCwgMTE4OTQ0LCAKKyAgICAxMDU4OCwgMCwgMCwgNjM3NTUsIDAsIDUzNDMsIDc4NDIyLCAxMjA2NjEsIDQ1NTUsIDUzNDEsIDAsIDcwMDcxLCAxMjg2NzAsIAorICAgIDUzNTEsIDc4Njc1LCA0MzEwNCwgNjUyNDQsIDkxNzg5MiwgNjQ1NDEsIDQyNTE5LCA3NDQ3MiwgMCwgMCwgNzQ3NjUsIAorICAgIDkxNzg4OCwgMTI3NTEwLCA2NjM4LCAwLCA2NTExMywgMjcxLCA3NDE4MCwgNjUzNzAsIDg4MzUsIDY1MzY4LCAxMjY1MywgCisgICAgNjUzNjYsIDQyMTcyLCA0MTA4NiwgNjUzNjMsIDY1MzYyLCA2NTM2MSwgMTE5MTIsIDQzNDEwLCAxMTMyMywgNjUzNTcsIAorICAgIDExODAwLCA2NTM1NSwgNTM0NSwgNjUzNTMsIDY1MzUyLCA2NTM1MSwgNzYxLCA2NTM0OSwgMTk5NTksIDY5NzE4LCA2Mzg1NiwgCisgICAgMTI2NjM1LCAyNDIzLCA3Nzk1OCwgNjQ2NDcsIDc3OTU5LCAxMTk1NywgNDY5OSwgMCwgMCwgMCwgMCwgNjQ2MDUsIDAsIDAsIAorICAgIDAsIDQ5MTYsIDAsIDM4MCwgMTA5NTgsIDY2NTYzLCA3Nzk1NSwgNjk3NzMsIDk3NzMsIDEzMTY3LCAxMjkxOCwgNDEwOTYsIAorICAgIDczOTgwLCA2OTI0NSwgNzgyNTQsIDkxNzg5MywgMTA2ODQsIDAsIDkxNzg5NiwgMCwgNzk0NiwgMTI1NDEsIDgxODIsIAorICAgIDY3NTg2LCA2OTc4MCwgMCwgMCwgMCwgMCwgOTAwNSwgMTIyNSwgNjYzMCwgMCwgMCwgMCwgNjgwMTEsIDg4NDcsIDAsIAorICAgIDY1ODc2LCA1NTM1LCA4MzI5LCA3NDU5MCwgOTgzMjA2LCA5MjYwOSwgMCwgMCwgMzEyNywgMjU5NSwgNjU3MTMsIDQyMDEzLCAKKyAgICA5ODM4NDksIDU2MDcsIDQxMDg5LCAwLCAwLCA3NDI1NiwgMjY2NSwgMTEzMDQsIDQzNzUxLCA3NDIwMCwgNDk3MCwgODc2NCwgCiAgICAgMTIwNDU5LCA4OTM0LCA5MjcyNiwgNDE1NjYsIDQ0OTIsIDAsIDY1MDExLCA0MTA5MCwgMCwgMCwgMTE4OCwgNzI1NCwgCi0gICAgMTEwMCwgMCwgMTI4MzAxLCA0MTA4MSwgMjkxMiwgMTE3NDksIDY5NzkyLCAwLCAwLCAzNTcyLCAxMDAyMywgNDk1OSwgCi0gICAgMTMwNzksIDAsIDAsIDk3MjksIDAsIDAsIDAsIDQzMzYxLCAwLCAwLCAxMTgwMywgNzk5NiwgOTkwNywgNDE0NTAsIDEzMzA0LCAKLSAgICAxMjgyOTAsIDEyNzI2MCwgNDE0NTEsIDAsIDExMDk1LCA4MjczLCAxMjc1MzMsIDM0NTEsIDAsIDk3MiwgNDE0NTMsIDAsIDAsIAotICAgIDczODgzLCA5MjQwOCwgNzM5NDUsIDAsIDM0NTUsIDE5OTU1LCA5NTM4LCAwLCA2OTgwNywgMCwgMCwgMCwgMCwgMTEzOTYsIAotICAgIDAsIDExMDE5LCAwLCAwLCAwLCAxMjA1MDcsIDQxMDc4LCAwLCAyNjEsIDU5MjcsIDc3OTEsIDAsIDY0NDQ2LCAwLCAxMDY5NiwgCi0gICAgMCwgNjA3MywgOTgzOCwgMTE4OTIwLCAwLCA2MDc1LCAxMjg1NjMsIDI4MiwgMCwgNjQzNywgNzQwNzgsIDEyODAwMCwgCi0gICAgOTgwMSwgMCwgMCwgMCwgMCwgMzQ3NCwgMTE4Nzg3LCAwLCAxMjA2NTUsIDYwODEsIDAsIDEyNzg0MywgNzQwNzYsIDc4ODc5LCAKLSAgICAwLCAwLCAwLCAwLCAwLCA4NzUxLCAxMTQ5OSwgMTIwMjczLCA3ODE2LCAxMjYzNiwgNDY2NSwgMTI2MjgsIDQ2NzAsIAotICAgIDkyNjA4LCAxMjAyNzIsIDAsIDk2NDIsIDEwOTEyLCA5NTgsIDAsIDExMzg3LCA3ODg3OCwgNDY2NiwgMCwgNDkxNSwgMCwgCi0gICAgNDY2OSwgMCwgNjgwOTksIDEzMjg3LCA0NjY0LCAxMDgzNiwgMTIwNTUwLCAwLCA2OTc3NSwgMCwgNDM1OTUsIDc0NTAsIDAsIAotICAgIDkxNzg3NSwgODY2NCwgOTY5NywgMzYwNiwgOTE3ODczLCAwLCAwLCA2NDgxNSwgMTA2MywgMTIwMjUwLCAxMjAyNTEsIAotICAgIDk3NzIsIDcyNTUsIDg4ODYsIDEzODksIDEyNzkzMiwgMTIwMjU3LCAxMjAyNTgsIDEyMDI1OSwgMTI5NDEsIDQyNjYxLCAKLSAgICA5MjM4MSwgMTIwMjU1LCAxMjAyNTYsIDEyMzAxLCAxMjAyNjYsIDY5ODIwLCA0MTEwMiwgNjY2MDQsIDEyMDI2MiwgCi0gICAgMTIwMjYzLCAxMjAyNjQsIDEwMTcsIDY2NjAwLCA1MjMsIDUwNSwgMTQ0NywgNzQ0MzYsIDAsIDAsIDAsIDg2MDgsIDQyNzg5LCAKLSAgICAxMjA2MTMsIDEyODcwNCwgMCwgMTE5MTk2LCAxMTMwNywgNjY3MDcsIDkxNzg3MSwgMTI3NzUxLCAxMTc0NSwgNzkxOSwgMCwgCi0gICAgMTY0MSwgMCwgMCwgODk2NiwgMCwgMCwgNTkwOCwgMCwgMCwgNjc0NCwgMTI4MzU1LCAxNjk5LCA3NDE5MSwgNzQ4NDMsIDAsIAotICAgIDAsIDYzMDYsIDEwMTY5LCAwLCAxMTkyNTEsIDEwMDY4LCAzNzY2LCAyMzg5LCAxMjA0NTYsIDEyMDQ1NSwgNjYxMSwgMjU3LCAKLSAgICA0MzE3MCwgMTMxNTMsIDAsIDQyMzg2LCAwLCA5NDM2LCAyNTk5LCAwLCA2NDk2LCA5NDQ5LCA1OTMwLCAxMTQ3NiwgMTEwMzMsIAotICAgIDExNDQ3LCAxMDU0MSwgNTYyMiwgMTIwNDM2LCA4NDc3LCAzNzYwLCAxNzE4LCA5NDQyLCA2NjQzMywgMzc3NiwgMCwgCi0gICAgNDE0MzUsIDQzNTIsIDAsIDI0MzUsIDEyMDgwOSwgNTYyMSwgMTIwMzg1LCA0MjAxLCAzNzc4LCA0MjAzLCA0MjAyLCA0MjA1LCAKLSAgICA0MjA0LCAxMjA0NDcsIDM3NjgsIDY4MTQyLCA3NjUsIDQxNDQwLCAzNzY0LCA4NDczLCA2MzczLCA4NDY5LCAxMjA0MzgsIAotICAgIDEyOTQ3LCA0NTY0LCAwLCAwLCA3NDI3MSwgNzM3NTMsIDgzNzQsIDAsIDAsIDY4MjksIDUyMjUsIDEyODgwNywgMTI3Mzg1LCAKLSAgICAwLCAwLCAxMTk2MTUsIDAsIDc0NzkzLCA1NjI2LCA3MzgwNywgMTE3NzEsIDAsIDEyNzIzNiwgMTI4MDE5LCAwLCA1MzUzLCAKLSAgICA1NjI1LCA3NDE3OSwgMCwgMCwgMTAxMCwgNjQ1NzIsIDQxNzgwLCA0MjYyMywgNjQyNzcsIDAsIDY5NTIsIDAsIDEyMDc1MiwgCi0gICAgNzg3NjIsIDI1OTAsIDU2MjksIDY1NTUyLCA3NTUxLCAxMDMyNSwgNTYzMiwgMTA0NzEsIDEyMDAzOCwgMTIwMDI3LCAKLSAgICAxMjAwMjgsIDEyMDAyNSwgNTYyOCwgMTIwMDMxLCA5NzAsIDEyMDAyOSwgNDc3MiwgMjQwMCwgNTYyNywgMTIwMDE3LCAKLSAgICAxMjAwMTgsIDEyMDAyMywgNjQyNzUsIDEyMDAyMSwgMTA5NjEsIDAsIDIwMywgMCwgMCwgMCwgMCwgNzgzNTAsIDAsIAotICAgIDY0Mzc4LCA0MjA1NCwgMCwgMCwgNTU0LCAxMTk2NDksIDExMzU4LCAwLCAxMjE4MiwgNDIwNDgsIDExMDY1LCAxMjc4NzgsIAotICAgIDczODkxLCAwLCAwLCA1Njk0LCA3Njg5LCA2OTc5OCwgOTMyMywgNDMyNSwgMzA0NywgMTAzMTcsIDE3NSwgMCwgMCwgCi0gICAgNjk3NjQsIDAsIDAsIDEyNDMsIDQyMTU0LCA1NDMxLCA2NjUyLCAwLCA2OTc3MCwgNDM2NTEsIDAsIDY4MTE4LCAxMjgwMjQsIAotICAgIDExMjksIDAsIDAsIDY1OTAwLCAxOTg2LCA3ODQ2LCA3ODgwNCwgODY2MSwgOTE3NzcyLCA2NTI1NSwgMCwgMzg0NSwgNDQ5MCwgCi0gICAgMTE4OTY5LCA2NjQ5LCA3NDQwMCwgMTQ1NiwgNzUzMCwgMTE5NzcsIDcyNDksIDgzNjYsIDAsIDc3NTYsIDEyMzQyLCAKLSAgICAxMjg1NjgsIDUxLCA0MTUxNiwgMCwgODU3MCwgOTU2OCwgOTE3ODYzLCA0NTYsIDcwMjYsIDgxNDUsIDExNjgsIDkyNTEsIAotICAgIDkwODIsIDExOTk2NCwgNjQwNTUsIDQyNzgxLCAzODY2LCAxMjMyMywgNDE1MTIsIDczODA1LCA2ODEyMSwgMCwgNDE0OTQsIAotICAgIDkyMzE2LCA0NjYwLCAwLCAxMDQwNSwgMCwgNzg4MDMsIDAsIDAsIDQyMDQwLCA3MzkxOCwgMTE5NjI3LCA3OTQ0LCA0MTQ1NCwgCi0gICAgMTI2MDUsIDAsIDQyMjA1LCA0MTQ1NSwgMjM2LCA2NDA1MSwgNzg4NjcsIDgyMTQsIDAsIDAsIDAsIDQxNDU3LCAwLCAKLSAgICAxMTk1ODksIDE5NjksIDIzODQsIDgwOTcsIDkxNzg2NCwgMCwgMTI3MzgwLCA3ODAyOSwgODc2NiwgMCwgNzgwNzksIDU4NTQsIAotICAgIDEyNzk3NCwgMTA1ODMsIDAsIDExOTk4OSwgMCwgMTA0MTYsIDkxNzg2OSwgMzg3MiwgOTE3ODY4LCAwLCA4NDI5LCAwLCAKLSAgICAxMTg4MDYsIDI4MzgsIDEyODgwMiwgMCwgOTE3ODY2LCAwLCAwLCAwLCAwLCAwLCAxMTA5NiwgMTIwODEzLCAxMDU1MywgCi0gICAgMTY2MiwgODQ4MywgMTIwMzk2LCA0MzYwNSwgNTg5MiwgNDM0MTgsIDAsIDczNzQyLCA2NiwgNjUsIDY4LCA2NywgNzAsIDY5LCAKLSAgICA3MiwgNzEsIDc0LCA3MywgNzYsIDc1LCA3OCwgNzcsIDgwLCA3OSwgODIsIDgxLCA4NCwgODMsIDg2LCA4NSwgODgsIDg3LCAKLSAgICA5MCwgODksIDExOTg2MiwgMTAzNTcsIDczODUsIDgxNzAsIDE3MDQsIDg1NTYsIDAsIDk2NTksIDAsIDAsIDAsIDk1NTYsIDAsIAotICAgIDQ1MDMsIDExMzUzLCA5NjQ3LCAwLCA3ODE4NSwgMCwgMCwgOTI3MTMsIDc4ODg2LCAwLCAwLCA3NDIyOSwgNjY1OTMsIAotICAgIDY0MzgsIDkxNzk3OSwgOTEwOSwgNzg4ODIsIDEyODksIDY0NTk5LCAwLCAwLCAwLCA2NTUwNywgMjQ0NywgMCwgMCwgCi0gICAgMTI4MDQyLCAwLCAwLCAwLCA2MzM0LCAwLCAwLCAxOTkzNywgMCwgOTIzNjgsIDAsIDU2NzUsIDI1NCwgMCwgMCwgNjk2ODYsIAotICAgIDQyNDI1LCA4OTE4LCA2NDAwMywgNTcxNiwgNDIzMTIsIDAsIDAsIDY5NzIsIDQyODI2LCAwLCA0MjQ2NCwgMTIwNTY3LCAwLCAKLSAgICA5MjY0NSwgNzQ3OTYsIDY0NDAwLCA2NDY5MywgMCwgNzc4NjEsIDY1NDI5LCA5NTE1LCA0NDM1LCAwLCA0MjUyMiwgMCwgMCwgCi0gICAgMTE3ODUsIDAsIDY0NjcxLCA0MTk3OCwgMTQxMiwgNDU5NCwgMTM5MSwgMTA1MzYsIDgwNjcsIDk5MDEsIDc3NzUsIAotICAgIDEyODI5MywgMCwgNzQ1ODgsIDEyMDc0OCwgMzE0MCwgMTI4ODU0LCA3OTYwLCA0MzI3MSwgMCwgMTI1MTgsIDEwOTA5LCAKLSAgICAxMjc1MDgsIDE0MjgsIDEyNDcyLCAwLCAxMjg3ODcsIDc2OTksIDEyMzkzLCAwLCAwLCAwLCA3NDUxOCwgODIyMywgMCwgCi0gICAgNDI2MSwgMCwgMCwgMCwgMCwgMCwgMTI4MzAyLCAwLCAxMjgwNDYsIDQzNDE5LCAwLCA2NDU1NCwgMTA1NzQsIDM4NzgsIDAsIAotICAgIDQyMzUyLCAxNzUyLCA3Mzc4NSwgMCwgNDI1MDYsIDEyODU0MSwgMTAxOTksIDAsIDAsIDAsIDY1OTE5LCAwLCA2Njk1LCAKLSAgICA3MjAsIDMyNCwgMCwgMCwgNDM0MDYsIDAsIDE0NjQsIDQwOTg1LCAwLCA3OTc0LCAwLCA0MzQ3NCwgMCwgNjQ0ODgsIDAsIDAsIAotICAgIDY0MDQxLCA3NDc4NywgMCwgNzg4NjUsIDkyMjU4LCA2NTU5NywgMCwgNzg4NjMsIDAsIDEzMDIsIDAsIDc4ODYxLCAwLCAwLCAKLSAgICAwLCA1MjA0LCA3NDc3NCwgNDM0MDQsIDQzMzk2LCAwLCAzOTk1LCA2ODM2MCwgNjU2MDgsIDM3MTQsIDAsIDAsIDAsIAorICAgIDExMDAsIDAsIDEyODMwMSwgNDEwODEsIDI5MTIsIDExNzQ5LCA2OTc5MiwgMCwgNjgwMTksIDM1NzIsIDEwMDIzLCA0OTU5LCAKKyAgICAxMzA3OSwgMCwgOTgzMjY4LCA5NzI5LCAwLCAwLCAwLCA0MzM2MSwgMCwgMCwgMTE4MDMsIDc5OTYsIDk5MDcsIDQxNDUwLCAKKyAgICAxMzMwNCwgMTI4MjkwLCAxMjcyNjAsIDQxNDUxLCAwLCAxMTA5NSwgODI3MywgMTI3NTMzLCAzNDUxLCA5ODMzMDEsIDk3MiwgCisgICAgNDE0NTMsIDk4MzQzNCwgMCwgNzM4ODMsIDY4MDIyLCA3Mzk0NSwgOTgzNzI2LCAyMjg4LCAxOTk1NSwgOTUzOCwgMCwgCisgICAgNjk4MDcsIDAsIDAsIDAsIDAsIDExMzk2LCA5ODM0MzIsIDExMDE5LCAwLCAwLCAwLCA2ODAyMCwgNDEwNzgsIDcxMzY1LCAKKyAgICAyNjEsIDU5MjcsIDc3OTEsIDAsIDczNjIsIDAsIDEwNjk2LCAwLCA2MDczLCA5ODM4LCAxMTg5MjAsIDAsIDYwNzUsIAorICAgIDkzOTk1LCAyODIsIDEyNjUxMCwgNjQzNywgNzQwNzgsIDEyODAwMCwgOTgwMSwgMCwgNzQxNzcsIDAsIDAsIDM0NzQsIAorICAgIDExODc4NywgMCwgMTIwNjU1LCA2MDgxLCAwLCA3ODg3NCwgNzQwNzYsIDc4ODc5LCAwLCAwLCAwLCAwLCAwLCA4NzUxLCAKKyAgICAxMTQ5OSwgMTIwMjczLCA3ODE2LCAxMjYzNiwgNDY2NSwgMTI2MjgsIDQ2NzAsIDkyNjA4LCAxMjAyNzIsIDY4MDE3LCAKKyAgICA5NjQyLCAxMDkxMiwgOTU4LCAwLCAxMTM4NywgNzg4NzgsIDQ2NjYsIDAsIDQ5MTUsIDAsIDQ2NjksIDAsIDY4MDk5LCAKKyAgICAxMzI4NywgNDY2NCwgMTA4MzYsIDEyMDU1MCwgMCwgNjk3NzUsIDAsIDQzNTk1LCA3NDUwLCAwLCA5MTc4NzUsIDg2NjQsIAorICAgIDk2OTcsIDM2MDYsIDkxNzg3MywgMCwgMCwgNjQ4MTUsIDEwNjMsIDEyMDI1MCwgMTIwMjUxLCA5NzcyLCA3MjU1LCA4ODg2LCAKKyAgICAxMzg5LCAxMjc5MzIsIDEyMDI1NywgMTIwMjU4LCAxMjAyNTksIDEyOTQxLCA0MjY2MSwgOTIzODEsIDEyMDI1NSwgCisgICAgMTIwMjU2LCAxMjMwMSwgMTIwMjY2LCA2OTgyMCwgNDExMDIsIDY0NDI4LCAxMjAyNjIsIDEyMDI2MywgMTIwMjY0LCAxMDE3LCAKKyAgICA2NjYwMCwgNTIzLCA1MDUsIDE0NDcsIDc0NDM2LCAwLCAwLCAwLCA4NjA4LCA0Mjc4OSwgMTIwNjEzLCAxMjg3MDQsIDAsIAorICAgIDczODU1LCAxMTMwNywgNjY3MDcsIDkxNzg3MSwgMTI3NzUxLCAxMTc0NSwgNzkxOSwgMCwgMTY0MSwgMCwgMCwgODk2NiwgMCwgCisgICAgMCwgNTkwOCwgMCwgMCwgNjc0NCwgMTI4MzU1LCAxNjk5LCA2OTg2MSwgNzQ4NDMsIDkxNzkzMywgMCwgNjMwNiwgMTAxNjksIAorICAgIDcxMzI0LCAxMTkyNTEsIDEwMDY4LCAzNzY2LCAyMzg5LCAxMjA0NTYsIDEyMDQ1NSwgNjYxMSwgMjU3LCA0MzE3MCwgCisgICAgMTMxNTMsIDAsIDQyMzg2LCAwLCA5NDM2LCAyNTk5LCAwLCA2NDk2LCA5NDQ5LCA1OTMwLCAxMTQ3NiwgMTEwMzMsIDExNDQ3LCAKKyAgICAxMDU0MSwgNTYyMiwgMTIwNDM2LCA4NDc3LCAzNzYwLCAxNzE4LCA5NDQyLCA2NjQzMywgMzc3NiwgMCwgNDE0MzUsIDQzNTIsIAorICAgIDk4MzYxMCwgMjQzNSwgMTIwODA5LCA1NjIxLCAxMjAzODUsIDQyMDEsIDM3NzgsIDQyMDMsIDQyMDIsIDQyMDUsIDQyMDQsIAorICAgIDEyMDQ0NywgMzc2OCwgNjgxNDIsIDc2NSwgNDE0NDAsIDM3NjQsIDg0NzMsIDYzNzMsIDg0NjksIDEyMDQzOCwgMTI5NDcsIAorICAgIDQ1NjQsIDAsIDAsIDc0MjcxLCA3Mzc1MywgODM3NCwgOTgzMTU2LCAwLCA2ODI5LCA1MjI1LCAxMjg4MDcsIDEyNzM4NSwgMCwgCisgICAgMCwgMTE5NjE1LCAwLCA3NDc5MywgNTYyNiwgNzM4MDcsIDExNzcxLCA3NDA3NSwgMTI3MjM2LCAxMjgwMTksIDQyNjE0LCAKKyAgICA1MzUzLCA1NjI1LCA3NDE3OSwgMCwgMCwgMTAxMCwgNjQ1NzIsIDQxNzgwLCA0MjYyMywgNjQyNzcsIDY5OTQyLCA2OTUyLCAKKyAgICA5ODMyNjQsIDEyMDc1MiwgNzg3NjIsIDI1OTAsIDU2MjksIDY1NTUyLCA3NTUxLCAxMDMyNSwgNTYzMiwgMTA0NzEsIAorICAgIDEyMDAzOCwgMTIwMDI3LCAxMjAwMjgsIDEyMDAyNSwgNTYyOCwgMTIwMDMxLCA5NzAsIDEyMDAyOSwgNDc3MiwgMjQwMCwgCisgICAgNTYyNywgMTIwMDE3LCAxMjAwMTgsIDEyMDAyMywgNjQyNzUsIDEyMDAyMSwgODc4NiwgMCwgMjAzLCAwLCAwLCAwLCAwLCAKKyAgICA3ODM1MCwgMCwgNjQzNzgsIDQyMDU0LCAwLCAwLCA1NTQsIDExOTY0OSwgMTEzNTgsIDAsIDEyMTgyLCA0MjA0OCwgMTEwNjUsIAorICAgIDEyNjQ2NCwgNzM4OTEsIDAsIDAsIDU2OTQsIDc2ODksIDY5Nzk4LCA5MzIzLCA0MzI1LCAzMDQ3LCAxMDMxNywgMTc1LCAwLCAKKyAgICAwLCA2OTc2NCwgMCwgMCwgMTI0MywgNDIxNTQsIDU0MzEsIDY2NTIsIDAsIDY5NzcwLCA0MzY1MSwgMCwgNjgxMTgsIAorICAgIDEyODAyNCwgMTEyOSwgMTI2NTc0LCAwLCA2NTkwMCwgMTk4NiwgNzg0NiwgNzg4MDQsIDg2NjEsIDkxNzc3MiwgNjUyNTUsIAorICAgIDAsIDM4NDUsIDQ0OTAsIDExODk2OSwgNjY0OSwgNzQ0MDAsIDE0NTYsIDc1MzAsIDExOTc3LCA3MjQ5LCA4MzY2LCAwLCAKKyAgICA3NzU2LCAxMjM0MiwgMTI4NTY4LCA1MSwgNDE1MTYsIDAsIDg1NzAsIDk1NjgsIDcxMzE4LCA0NTYsIDcwMjYsIDgxNDUsIAorICAgIDExNjgsIDkyNTEsIDkwODIsIDExOTk2NCwgNjQwNTUsIDQyNzgxLCAzODY2LCAxMjMyMywgNDE1MTIsIDczODA1LCA2ODEyMSwgCisgICAgMCwgNDE0OTQsIDkyMzE2LCA0NjYwLCAwLCAxMDQwNSwgMCwgNzg4MDMsIDAsIDAsIDQyMDQwLCA3MzkxOCwgMTE5NjI3LCAKKyAgICA3OTQ0LCA0MTQ1NCwgMTI2MDUsIDAsIDQyMjA1LCA0MTQ1NSwgMjM2LCA2NDA1MSwgNzg4NjcsIDgyMTQsIDAsIDAsIDAsIAorICAgIDQxNDU3LCA5ODM5NjEsIDExOTU4OSwgMTk2OSwgMjM4NCwgODA5NywgOTE3ODY0LCA3NDEzLCA2ODAxMiwgNzgwMjksIAorICAgIDg3NjYsIDAsIDc4MDc5LCA1ODU0LCAxMjc5NzQsIDEwNTgzLCAwLCAxMTk5ODksIDAsIDEwNDE2LCA5MTc4NjksIDM4NzIsIAorICAgIDkxNzg2OCwgMCwgODQyOSwgMCwgMTE4ODA2LCAyODM4LCAxMjg4MDIsIDAsIDkxNzg2NiwgMCwgMCwgMCwgOTgzOTU4LCAKKyAgICA5NDAwNSwgMTEwOTYsIDEyMDgxMywgMTA1NTMsIDE2NjIsIDg0ODMsIDEyMDM5NiwgNDM2MDUsIDU4OTIsIDQzNDE4LCAwLCAKKyAgICA3Mzc0MiwgNjYsIDY1LCA2OCwgNjcsIDcwLCA2OSwgNzIsIDcxLCA3NCwgNzMsIDc2LCA3NSwgNzgsIDc3LCA4MCwgNzksIAorICAgIDgyLCA4MSwgODQsIDgzLCA4NiwgODUsIDg4LCA4NywgOTAsIDg5LCAxMTk4NjIsIDEwMzU3LCA3Mzg1LCA4MTcwLCAxNzA0LCAKKyAgICA4NTU2LCAwLCA5NjU5LCAwLCAwLCAwLCA5NTU2LCAwLCA0NTAzLCAxMTM1MywgOTY0NywgMCwgNzgxODUsIDAsIDAsIAorICAgIDkyNzEzLCA3ODg4NiwgMCwgMCwgNzQyMjksIDY2NTkzLCA2NDM4LCA5MTc5NzksIDkxMDksIDc4ODgyLCAxMjg5LCA2NDU5OSwgCisgICAgMCwgNjgwMDksIDAsIDY1NTA3LCAyNDQ3LCAwLCAwLCAxMjgwNDIsIDEyNjU0NSwgOTgzMTM3LCAwLCA2MzM0LCAwLCAwLCAKKyAgICAxOTkzNywgMCwgOTIzNjgsIDAsIDU2NzUsIDI1NCwgMCwgMCwgNjk2ODYsIDQyNDI1LCA4OTE4LCA2NDAwMywgNTcxNiwgCisgICAgNDIzMTIsIDAsIDAsIDY5NzIsIDQyODI2LCAwLCA0MjQ2NCwgMTIwNTY3LCAwLCA5MjY0NSwgNzQ3OTYsIDY0NDAwLCAKKyAgICA2NDY5MywgMCwgNzc4NjEsIDY1NDI5LCA5NTE1LCA0NDM1LCAwLCA0MjUyMiwgMCwgNjgwMDgsIDExNzg1LCA3NDEyLCAKKyAgICA2NDY3MSwgNDE5NzgsIDE0MTIsIDQ1OTQsIDEzOTEsIDEwNTM2LCA4MDY3LCA5OTAxLCA3MTAzLCAxMjgyOTMsIDcxMDIsIAorICAgIDc0NTg4LCAxMjA3NDgsIDMxNDAsIDEyODg1NCwgNzk2MCwgNDMyNzEsIDAsIDEyNTE4LCAxMDkwOSwgMTI3NTA4LCAxNDI4LCAKKyAgICAxMjQ3MiwgMCwgNjk4NjQsIDc2OTksIDEyMzkzLCAwLCAwLCAwLCA3NDUxOCwgODIyMywgMCwgNDI2MSwgMCwgMCwgMCwgMCwgCisgICAgMCwgMTI4MzAyLCAwLCAxMjgwNDYsIDQzNDE5LCAwLCA2NDU1NCwgMTA1NzQsIDM4NzgsIDAsIDQyMzUyLCAxNzUyLCAKKyAgICA3Mzc4NSwgMCwgNDI1MDYsIDEyODU0MSwgMTAxOTksIDAsIDAsIDY4MDIxLCA2NTkxOSwgMCwgNjY5NSwgNzIwLCAzMjQsIDAsIAorICAgIDAsIDQzNDA2LCA5ODM3MjcsIDE0NjQsIDQwOTg1LCAwLCA3OTc0LCAwLCA0MzQ3NCwgMCwgNjQ0ODgsIDAsIDAsIDY0MDQxLCAKKyAgICA3NDc4NywgMCwgNzg4NjUsIDkyMjU4LCA2NTU5NywgMCwgNzg4NjMsIDAsIDEzMDIsIDAsIDc4ODYxLCAxMTkxMzQsIDAsIDAsIAorICAgIDUyMDQsIDc0Nzc0LCA0MzQwNCwgMTE4MzUsIDAsIDM5OTUsIDY4MzYwLCA2NTYwOCwgMzcxNCwgOTIxOTAsIDAsIDAsIAogICAgIDEwOTk5LCAxMTc1MCwgMCwgNDMyNTEsIDY4NjYwLCA0MzMwMSwgMCwgMTIwNTU3LCA4MTMwLCA4NjcyLCAxMDg0NSwgCi0gICAgMTE5NjQsIDAsIDAsIDAsIDAsIDY4NDU1LCA0Mjg2MywgNzM4MzksIDAsIDAsIDAsIDAsIDAsIDAsIDQ2OCwgNjEyLCAwLCAKLSAgICA2NDQwMSwgNjY0NDgsIDY4Mzc2LCAwLCAxNjc0LCAwLCA1ODIzLCAwLCAxMjI4MCwgMCwgNTQwLCA3NDU2NCwgMTE5MDE3LCAKLSAgICAwLCA4NDMyLCAwLCAxMTA3MywgMCwgNjQzMTYsIDAsIDAsIDgyMCwgNDE3NDEsIDAsIDEyMDY2NywgMCwgNjQ2ODQsIAotICAgIDEyNjk5MiwgMzM1OSwgNzgwMCwgMTI4NjQ0LCA2NTE3NywgNjIyNiwgMzUzLCAxMjM5NiwgMCwgMTE5NjEyLCA2NDc0MiwgCi0gICAgMTI4NjgyLCAxMjAyODIsIDAsIDAsIDEyNDEyLCAxOTk0MSwgMCwgMTIwMjc3LCA3ODg0NywgMTg4NCwgOTQ4MSwgNDI0MTgsIAotICAgIDAsIDQxMTU3LCAwLCAxMTk1LCA2NDg5OCwgNzkyNCwgMCwgNDExNTEsIDIwMTAsIDAsIDQxMzI4LCA0MjM0NCwgMCwgCi0gICAgMTI0MDksIDAsIDQzNjAsIDEyNzAwOSwgOTczOSwgMCwgNzQzOTIsIDczOTIxLCAwLCA0MjUyMSwgODUzOSwgMCwgMCwgCi0gICAgMTE4OTg2LCAwLCA0Nzg4LCAwLCAwLCA2NTczNCwgMCwgNDM3OTAsIDAsIDEzMDc1LCA3NDQyOSwgMCwgNjQ1NjksIDQzNTMyLCAKLSAgICAxMDgzNywgMjQ5MiwgMTI3MTk3LCAxMTg5MDEsIDY4NjM3LCA0MTEzNiwgNDM3ODUsIDExODEzLCA5NjQ5LCA0MTE1NCwgCi0gICAgMTE5NjE3LCA1MTI4LCA0MDM4LCA0MTE0MywgNjU2MDQsIDY0ODU5LCA0MTU5MiwgNjc3MSwgMTY0OCwgNTQzNSwgMCwgCi0gICAgNjczNCwgNDEzNDMsIDExOTg0OCwgNjU0MzksIDEyNzA5LCA2OTg2LCA5MjM2NCwgMCwgMCwgNDEzNDksIDExOTEyMywgCi0gICAgMTI1ODEsIDEwMzc0LCA1MTc1LCAwLCA3MzgwNiwgMTAyNTQsIDAsIDEwMjc4LCAxMDI2MiwgNzc5NTAsIDQxMzQ2LCAwLCAKLSAgICA2MDcsIDAsIDExOTg1MywgMTI4ODQ2LCAxMjkyMywgMTAzMTQsIDEwMjgyLCA2NTQ3NywgMTAzNzgsIDEyMDI5NywgNDA5NzYsIAotICAgIDgyNjUsIDAsIDExOTgzNCwgNDA5NzUsIDU4NDAsIDQyODM4LCAwLCA0MDk3OCwgMCwgMTE5ODQwLCAwLCAwLCAwLCA2NjQ0NCwgCi0gICAgMTA1MzgsIDAsIDI1NTAsIDExOTgzNiwgNjc3OSwgMCwgMCwgMzUyNSwgNjgyNCwgMTE4ODg2LCAwLCAwLCA1NjE5LCAKLSAgICA2NTgyMiwgMCwgMTk0ODgyLCA3NDU1LCAwLCA1NjE2LCAxMTQ4NiwgOTY1NiwgMCwgMCwgMTA3MjcsIDU2MTUsIDAsIAotICAgIDEyMDU1MSwgNDIzODAsIDY0ODk1LCA0MzY5MywgNjY0NTEsIDgwOCwgNTQ1NSwgMTEzNDcsIDAsIDEwMjYsIDU2MjAsIAotICAgIDE5NDg4NywgMCwgMTEzNTAsIDU2MTcsIDAsIDkyMjUsIDY0NjM5LCAxMjcwNzMsIDkxNDUsIDEyODA2MCwgMTMzOCwgCi0gICAgMTIwNTgxLCAwLCAxMjczOSwgNDYwMywgMzA4NCwgMCwgOTI0ODQsIDk4NTgsIDYwMzcsIDAsIDM5NzQsIDc4MjEzLCAKLSAgICAxMDI5MCwgMCwgMzA4MywgMTAzMjIsIDAsIDAsIDAsIDQxMDM2LCAwLCAwLCA0MzMyMSwgNjU2MDYsIDAsIDQxMDMyLCAKLSAgICA0MjM4OCwgMCwgNjQ3MDAsIDEwMDExLCAxNDQ1LCA0MDk2MSwgMCwgMTk0ODkzLCAwLCA0MDk2MCwgMCwgMTk0ODkxLCAwLCAKLSAgICA0MDk2MywgNjQ5NTIsIDEwNDAyLCAwLCAwLCA5MjMwNCwgMTA2MDMsIDAsIDAsIDAsIDAsIDY3MTQsIDEwMDgzLCAxMjcwNjksIAotICAgIDE5NDg5NSwgNzgzNjcsIDEyNzM3NywgMCwgMCwgOTA3MywgNDI1ODUsIDY0MzAyLCAxMDcwNCwgNjUwMzAsIDQ3ODcsIDAsIAotICAgIDc0ODI5LCAwLCA2NTQyMywgMCwgMTI4MTE4LCA5NTcwLCAwLCA5NTI1LCAyNjg5LCA5MTc2MjYsIDY1NDI2LCAwLCAKLSAgICA5MTc2MjQsIDQzNzQwLCAwLCA0MDk2NiwgOTE3NjIzLCAxMzI4NiwgMzk5OCwgNDI1OTgsIDQyNTk2LCA1MDMsIDc0MjM3LCAKKyAgICAxMTk2NCwgMCwgOTgzMTg1LCAwLCAwLCA2ODQ1NSwgNDI4NjMsIDczODM5LCAwLCAwLCAwLCAwLCAxMjY2MjksIDAsIDQ2OCwgCisgICAgNjEyLCAwLCA2NDQwMSwgNjY0NDgsIDY4Mzc2LCAwLCAxNjc0LCAwLCA1ODIzLCA5ODMxNjMsIDEyMjgwLCAwLCA1NDAsIAorICAgIDc0NTY0LCAxMTkwMTcsIDAsIDg0MzIsIDAsIDExMDczLCAwLCA2NDMxNiwgMCwgMCwgODIwLCA0MTc0MSwgMCwgMTIwNjY3LCAKKyAgICAwLCA2NDY4NCwgMTI2OTkyLCAzMzU5LCA3ODAwLCA2OTkzNCwgNjUxNzcsIDYyMjYsIDM1MywgMTIzOTYsIDAsIDExOTYxMiwgCisgICAgNjQ3NDIsIDEyODY4MiwgMTIwMjgyLCAwLCA5ODM0NDIsIDEyNDEyLCAxOTk0MSwgMCwgMTIwMjc3LCA3ODg0NywgMTg4NCwgCisgICAgOTQ4MSwgNDI0MTgsIDcwMDU5LCA0MTE1NywgMCwgMTE5NSwgNjQ4OTgsIDc5MjQsIDAsIDQxMTUxLCAyMDEwLCAwLCAKKyAgICA0MTMyOCwgNDIzNDQsIDAsIDEyNDA5LCAwLCA0MzYwLCAxMjcwMDksIDk3MzksIDEyODU1MCwgNjk5MzMsIDczOTIxLCAwLCAKKyAgICA0MjUyMSwgODUzOSwgOTgzNzE2LCAwLCAxMTg5ODYsIDAsIDQ3ODgsIDAsIDY4MDIzLCA2NTczNCwgOTgzNDQ3LCA0Mzc5MCwgCisgICAgMCwgMTMwNzUsIDc0NDI5LCA5NDA2MywgNjQ1NjksIDQzNTMyLCAxMDgzNywgMjQ5MiwgMTI3MTk3LCAxMTg5MDEsIDY4NjM3LCAKKyAgICA0MTEzNiwgNDM3ODUsIDExODEzLCA5NjQ5LCA0MTE1NCwgMTE5NjE3LCA1MTI4LCA0MDM4LCA0MTE0MywgNjU2MDQsIAorICAgIDY0ODU5LCA0MTU5MiwgNjc3MSwgMTY0OCwgNTQzNSwgOTE3ODM3LCA2NzM0LCA0MTM0MywgMTE5ODQ4LCA2NTQzOSwgCisgICAgMTI3MDksIDY5ODYsIDkyMzY0LCA2ODAxNSwgMCwgNDEzNDksIDcwMDIxLCAxMjU4MSwgMTAzNzQsIDUxNzUsIDAsIDczODA2LCAKKyAgICAxMDI1NCwgMCwgMTAyNzgsIDEwMjYyLCA2OTg1OCwgNDEzNDYsIDAsIDYwNywgMCwgMTE5ODUyLCAxMjg4NDYsIDEyOTIzLCAKKyAgICAxMDMxNCwgMTAyODIsIDY1NDc3LCAxMDM3OCwgMTIwMjk3LCA0MDk3NiwgODI2NSwgMCwgMTE5ODM0LCA0MDk3NSwgNTg0MCwgCisgICAgNDI4MzgsIDAsIDQwOTc4LCA5ODM4ODgsIDExOTg0MCwgMCwgOTgzMDcxLCAwLCA2NjQ0NCwgMTA1MzgsIDAsIDI1NTAsIAorICAgIDExOTgzNiwgNjc3OSwgMCwgMCwgMzUyNSwgNjgyNCwgMTE4ODg2LCAwLCAwLCA1NjE5LCA2NTgyMiwgMTI2NTY3LCAKKyAgICAxOTQ4ODIsIDc0NTUsIDAsIDU2MTYsIDExNDg2LCA5NjU2LCAwLCAwLCAxMDcyNywgNTYxNSwgMCwgMTIwNTUxLCA0MjM4MCwgCisgICAgNjQ4OTUsIDQzNjkzLCA2NjQ1MSwgODA4LCA1NDU1LCAxMTM0NywgMCwgMTAyNiwgNTYyMCwgMTk0ODg3LCAwLCAxMTM1MCwgCisgICAgNTYxNywgMCwgOTIyNSwgNjQ2MzksIDEyNzA3MywgOTE0NSwgMTI4MDYwLCAxMzM4LCAxMjA1ODEsIDk4MzE1OCwgMTI3MzksIAorICAgIDQ2MDMsIDMwODQsIDk4MzE1NSwgOTI0ODQsIDk4NTgsIDYwMzcsIDAsIDM5NzQsIDc4MjEzLCAxMDI5MCwgOTgzNjk1LCAKKyAgICAzMDgzLCAxMDMyMiwgMCwgMCwgMCwgNDEwMzYsIDAsIDAsIDQzMzIxLCA2NTYwNiwgMCwgNDEwMzIsIDQyMzg4LCAwLCAKKyAgICA2NDcwMCwgMTAwMTEsIDE0NDUsIDQwOTYxLCAwLCAxMTkxMDUsIDAsIDQwOTYwLCAwLCAxOTQ4OTEsIDAsIDQwOTYzLCAKKyAgICA2NDk1MiwgMTA0MDIsIDAsIDAsIDkyMzA0LCAxMDYwMywgMCwgMCwgOTgzMTEzLCAwLCA2NzE0LCAxMDA4MywgMTI3MDY5LCAKKyAgICAxOTQ4OTUsIDc4MzY3LCAxMjczNzcsIDAsIDkzOTYzLCA5MDczLCA0MjU4NSwgNjQzMDIsIDEwNzA0LCA2NTAzMCwgNDc4NywgCisgICAgMCwgNzQ4MjksIDAsIDY1NDIzLCAwLCAxMjgxMTgsIDk1NzAsIDU1MjYwLCA5NTI1LCAyNjg5LCA5MTc2MjYsIDY1NDI2LCAwLCAKKyAgICA5MTc2MjQsIDQzNzQwLCAwLCA0MDk2NiwgOTE3NjIyLCAxMzI4NiwgMzk5OCwgNDI1OTgsIDQyNTk2LCA1MDMsIDc0MjM3LCAKICAgICA4NzM1LCAyNjkwLCA2NjQ4OCwgNDI4MzYsIDEyNzE1MCwgNDE5NTQsIDkxNzYxNywgMTY1MiwgNzcyLCA2Njg4LCA4MzEwLCAKICAgICA2NTQyOCwgMzQ4NywgNDM0MTYsIDM1ODUsIDEwMTk0LCA0MzMyMCwgMTE5MTU5LCAxMjgxODMsIDE5NDg3NCwgNjQ2OCwgCi0gICAgNDE5NzYsIDk3MjAsIDkxNzYwNiwgMTE3NjcsIDQxOTcwLCAwLCA1ODM2LCAxMjM1OCwgMCwgNDM1NSwgOTA0OCwgMTIxODAsIAotICAgIDY1MDI3LCA2NDY4MCwgMTMwMzgsIDQzNjk5LCAwLCA0MTQ4OCwgMTI4MDg3LCA4NTI3LCAxOTQ5MTcsIDEyMzYyLCAxMjQzNSwgCi0gICAgMTIzNjAsIDQxMDUzLCAzMjY2LCAwLCAxMjM1NiwgODYxNiwgNDE0NjYsIDAsIDkyNTg4LCAxMTQ1MCwgMCwgMzYzOCwgCi0gICAgMTIzNTQsIDAsIDMyMTYsIDAsIDIzNTgsIDkyNjA2LCA4NjMzLCAwLCAwLCAxMTkxODIsIDY5MjQ0LCAwLCAwLCAxMTc1OSwgCi0gICAgMTk0OTAzLCA2MzY4LCA3NDgyMywgMCwgNDE0MjMsIDgwNzgsIDEwNTA0LCAwLCA0MTY5OCwgNDIyMzcsIDAsIDcwMDIsIDAsIAotICAgIDQxNDMwLCA0MjI2NywgNDEwNTEsIDQxNDg0LCAwLCAwLCA0MTA1MCwgNDE0NzMsIDEwNDY2LCAxMzA5OSwgMCwgMCwgMCwgCi0gICAgNjQzNSwgMCwgMTEzNjIsIDAsIDAsIDY1MzgyLCAwLCA0MTQyMCwgMCwgMzYyNSwgNzgxNTcsIDQxNDA5LCAwLCA2OTYzOSwgCi0gICAgMjA0MSwgOTE3OCwgOTY3MiwgNDE0MjcsIDQzNTQxLCA0MzMxNywgMCwgMCwgMCwgNDE0MjQsIDkxNzU5OCwgMTIwNTQ2LCAwLCAKLSAgICAxMjgyMTIsIDAsIDQxNDE3LCAxMjYxLCAwLCAwLCAxMjEwMiwgMTE5NjYyLCA0MTQwMSwgMCwgMTI3NTM4LCAwLCA3ODI1MSwgCi0gICAgMCwgNDIyOTAsIDMyNzUsIDkyNDcyLCA0MjMyOSwgNzQ3NTksIDAsIDAsIDAsIDkyMzg4LCA2OTY0OSwgMTA5ODksIDc0MjM0LCAKLSAgICAwLCAxMDU5OCwgNzQxMCwgMjY2OSwgOTAzLCAwLCAyOTIwLCAwLCAxMjcyMzIsIDc0NjAzLCA2NDUwNCwgMTk5MjgsIDAsIDAsIAotICAgIDM5MTcsIDAsIDExNzMyLCAwLCAwLCA0MTQ0OCwgNDE0NjEsIDEyODgyMywgMCwgMTI3OTEyLCAwLCA4ODE5LCAxMjY2MywgMCwgCi0gICAgNDExODQsIDc0MDE0LCAyMzIsIDc0ODM1LCAxMjA2NDYsIDkxNjgsIDY1Nzg2LCAwLCAwLCAwLCA5MDk0LCAwLCAxMTc1OCwgCi0gICAgNjg0MjUsIDAsIDEwNjQsIDQyNDY3LCAxMjgwNDQsIDEwMTE1LCAxOTkyNCwgOTI3MTEsIDAsIDc4NjIsIDY0NTUxLCAKLSAgICAxMzIyNCwgODUxNiwgNDE4NjIsIDY2NjUwLCA3NTYxLCA3ODYxOCwgNjk3OTMsIDE4NzgsIDAsIDAsIDI5MTEsIDAsIAotICAgIDQxMTc4LCA1NDI3LCA2NDgyMywgMCwgMCwgMzc4NywgNDExNzQsIDAsIDQxNDU4LCAwLCA0MTQ2MywgNDI0MTMsIDExMjkyLCAKLSAgICAyNDA2LCA3NzUsIDAsIDY1NTg0LCAwLCA2MDc0LCA5NjE4LCAxMjg2NjgsIDAsIDQzNDQwLCAwLCAxOTQ5MDEsIDQxNDM2LCAKLSAgICAzNjU2LCAwLCAxOTQ4OTksIDQxNDU2LCAwLCAxNTk5LCAxMTMzMywgMCwgNjcwMywgODUxMywgMCwgMTYxMywgMCwgNjg0NTYsIAotICAgIDEyNTk4LCAwLCAxMjA3MzQsIDc4NzQ1LCA3NDUwMCwgNDE0NjAsIDEwMTQ1LCAxMDU0MiwgOTkzNywgNzg3NDYsIDAsIAorICAgIDQxOTc2LCA5NzIwLCA5MTc2MDYsIDExNzY3LCA0MTk3MCwgMTk0NTk2LCA1ODM2LCAxMjM1OCwgMCwgNDM1NSwgOTA0OCwgCisgICAgMTIxODAsIDY1MDI3LCA2NDY4MCwgMTMwMzgsIDQzNjk5LCAwLCA0MTQ4OCwgMTI4MDg3LCA4NTI3LCAxOTQ5MTcsIDEyMzYyLCAKKyAgICAxMjQzNSwgMTIzNjAsIDQxMDUzLCAzMjY2LCAwLCAxMjM1NiwgODYxNiwgNDE0NjYsIDAsIDkyNTg4LCAxMTQ1MCwgMCwgCisgICAgMzYzOCwgMTIzNTQsIDAsIDMyMTYsIDAsIDIzNTgsIDkyNjA2LCA4NjMzLCAwLCA5ODM3MzYsIDExOTE4MiwgNjkyNDQsIDAsIAorICAgIDAsIDExNzU5LCAxOTQ5MDMsIDYzNjgsIDc0ODIzLCAwLCA0MTQyMywgODA3OCwgMTA1MDQsIDEyNzU1OCwgNDE2OTgsIAorICAgIDQyMjM3LCAwLCA3MDAyLCA5ODM2NjksIDQxNDMwLCA0MjI2NywgNDEwNTEsIDQxNDg0LCAwLCAwLCA0MTA1MCwgNDE0NzMsIAorICAgIDEwNDY2LCAxMzA5OSwgMCwgMCwgMCwgNjQzNSwgMCwgMTEzNjIsIDAsIDAsIDY1MzgyLCAwLCA0MTQyMCwgMCwgMzYyNSwgCisgICAgNzgxNTcsIDQxNDA5LCAwLCA2OTYzOSwgMjA0MSwgOTE3OCwgOTY3MiwgNDE0MjcsIDQzNTQxLCA0MzMxNywgMCwgMCwgMCwgCisgICAgNDE0MjQsIDkxNzU5OCwgMTIwNTQ2LCAwLCAxMjgyMTIsIDAsIDQxNDE3LCAxMjYxLCAwLCAwLCAxMjEwMiwgMTE5NjYyLCAKKyAgICA0MTQwMSwgMCwgMTI3NTM4LCAwLCA3ODI1MSwgMCwgNDIyOTAsIDMyNzUsIDkyNDcyLCA0MjMyOSwgNzQ3NTksIDAsIDAsIDAsIAorICAgIDkyMzg4LCA2OTY0OSwgMTA5ODksIDc0MjM0LCA5ODMxNDAsIDEwNTk4LCA3NDEwLCAyNjY5LCA5MDMsIDAsIDI5MjAsIDAsIAorICAgIDEyNzIzMiwgNzQ2MDMsIDY0NTA0LCAxOTkyOCwgMCwgMCwgMzkxNywgMCwgMTE3MzIsIDAsIDk4MzE4MCwgNDE0NDgsIAorICAgIDQxNDYxLCAxMjg4MjMsIDAsIDEyNzkxMiwgMCwgODgxOSwgMTI2NjMsIDAsIDQxMTg0LCA3NDAxNCwgMjMyLCA3NDgzNSwgCisgICAgMTIwNjQ2LCA5MTY4LCA2NTc4NiwgMCwgMCwgMCwgOTA5NCwgMCwgMTE3NTgsIDY4NDI1LCAwLCAxMDY0LCA0MjQ2NywgCisgICAgMTI4MDQ0LCAxMDExNSwgMTk5MjQsIDkyNzExLCAwLCA3ODYyLCA2NDU1MSwgMTMyMjQsIDg1MTYsIDQxODYyLCA2NjY1MCwgCisgICAgNzU2MSwgNzg2MTgsIDY5NzkzLCAxODc4LCAwLCA5ODMyNjEsIDI5MTEsIDAsIDQxMTc4LCA1NDI3LCA2NDgyMywgMCwgMCwgCisgICAgMzc4NywgNDExNzQsIDAsIDQxNDU4LCAwLCA0MTQ2MywgNDI0MTMsIDExMjkyLCAyNDA2LCA3NzUsIDAsIDY1NTg0LCAKKyAgICA2OTkyMywgNjA3NCwgOTYxOCwgMTI4NjY4LCA5ODM5NDMsIDQzNDQwLCAwLCAxOTQ5MDEsIDQxNDM2LCAzNjU2LCAwLCAKKyAgICAxMjA2MDAsIDQxNDU2LCAwLCAxNTk5LCAxMTMzMywgMCwgNjcwMywgODUxMywgMCwgMTYxMywgMCwgNjg0NTYsIDEyNTk4LCAKKyAgICA5ODMxOTEsIDEyMDczNCwgNzg3NDUsIDc0NTAwLCA0MTQ2MCwgMTAxNDUsIDEwNTQyLCA5OTM3LCA3ODc0NiwgNzAwMjksIAogICAgIDk5MDUsIDAsIDY1NzMwLCAwLCAxMjAzNzQsIDg0MjcsIDEyMDM3NSwgNTUyNDYsIDEyMDM3NiwgMCwgMTE0OTcsIDY0Njg3LCAKICAgICA3NDAwOCwgNDI1OTIsIDM4NzEsIDAsIDEyODMwNSwgOTExMSwgNTc0MSwgMCwgMTk0ODQ2LCAxMjAzNjYsIDExOTExMSwgCiAgICAgMTIwNzQ1LCAwLCAxMjAzNjgsIDAsIDExNjQ4LCAwLCAxOTQ4NzMsIDEyMDM2NCwgNDE1ODcsIDEyMDM2NSwgMCwgNzQzMjIsIAogICAgIDQyMTEzLCAwLCAxMjcxNTUsIDEyMTcyLCAwLCA3NDUzMCwgNjUyOTgsIDY1NzIzLCAxOTQ4NDAsIDczODcxLCA2NTcyNCwgCi0gICAgNzkyOCwgMTIwMzU0LCAwLCA0MTU5NSwgNzM3MzAsIDAsIDQyMTE4LCA3MzgzMCwgNjYwNDIsIDEwMzU1LCAwLCA3ODc1LCAwLCAKLSAgICA0MTU5OCwgMzk5MywgMCwgMTU0NSwgNDA5NzEsIDUzNiwgMTI4NTIxLCA0MzAyOSwgMCwgMCwgNjUxNzMsIDY1Mjg2LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA0MTM3NSwgNTQwMiwgMCwgMCwgMTY4NywgMTIwNTAzLCAwLCAwLCA3ODE5NCwgNjQzMjYsIAotICAgIDQwOTY5LCAxMDUyNiwgNzg3NTMsIDgzMjMsIDQwOTY4LCAxMzM5LCAxMTczMSwgNzg3NTYsIDAsIDY1NDYwLCAxMjI0MiwgCi0gICAgMTI4NTEzLCA4MDIwLCAxMDg0MywgMTE1NTQsIDAsIDAsIDgyNjYsIDQxMDA2LCA2NTcyMiwgMCwgMTA3MTAsIDAsIAotICAgIDExODk0MiwgNjc2NjcsIDY0NTY3LCAxMTkxNTUsIDE5NTA5MSwgMCwgMTE5NjM2LCA2Nzg1NywgMTIwNjg3LCAwLCAwLCAKLSAgICAxMTc1NSwgNjYzMDUsIDAsIDAsIDEwOTE3LCAxMjA3NjcsIDAsIDExMjcyLCAyMDQwLCA0MTI0NywgNDEzMjYsIDE5NTA2MCwgCi0gICAgMTc0MSwgNDIzNzAsIDEyMjcsIDAsIDAsIDExNDEzLCAwLCAwLCA1MjgzLCAxNTg2LCA0OTc4LCAwLCAxOTg0LCAxOTQ2MjEsIAotICAgIDAsIDkyMjkzLCA0MDk4NCwgMTI4MzA2LCA5MzczLCAwLCAxMjkxNiwgNjI4NCwgMCwgNDE2NjMsIDAsIDAsIDAsIDkyMzcsIAotICAgIDkzODUsIDQxNjQ4LCAwLCAwLCAwLCA0MTY2NiwgMTgzMCwgNzM3ODMsIDIwNTYsIDQxMjg3LCA5MjYxMCwgMCwgMCwgCi0gICAgNDIyMTksIDEyODI1NywgMCwgNDE5ODcsIDQxNjc2LCAwLCAxMjA4MjMsIDAsIDQxNjcwLCAwLCA5MjU5MCwgMjc5NiwgCi0gICAgNTUyOTEsIDExNjgzLCA5OTAyLCA3NDUyMSwgMCwgMTE0NTEsIDAsIDEyODgyMiwgNDI2MzEsIDIzNTksIDAsIDY3ODQ0LCAKLSAgICA3NDE2NCwgNDEyMzgsIDU0OCwgMTE0MDUsIDEzMTMzLCA2NDM2OCwgMCwgMTI4Nzk1LCAwLCAzOTcsIDQzNjIyLCA0MjEzOSwgCi0gICAgOTU0NywgOTU5MCwgMTI4MjM4LCAxNjE0LCA0MzY2MSwgNjQzNTYsIDY2MzA3LCA2NjUxLCAxMzU4LCAwLCA0MjgsIDk2MjAsIAotICAgIDE0NjYsIDc4MTEyLCAxMDk4MiwgMTE4ODMxLCAxMzMzLCA3MTA0LCA0MDcsIDY0MjUsIDEyODgzNCwgNzQyNTMsIDAsIDAsIAotICAgIDAsIDU4MDQsIDExOTc2LCA4NTU0LCA5MjcyMSwgMCwgMCwgOTA1NywgNDIyOTQsIDQxMjE4LCAwLCAwLCA3ODEzNywgMTg4MywgCi0gICAgMTA5NTIsIDgwNDgsIDc4MTQyLCA0MTIyNSwgOTI2MjEsIDQyOTE1LCAwLCAxMjg2ODQsIDAsIDQ0MDcsIDAsIDY1ODA5LCAKLSAgICAxMTkwNzQsIDE5NDgyMSwgODQ0OCwgNzE0MSwgNzQxODMsIDAsIDEyNjc1LCAxMjY1OSwgMCwgNDIzNjMsIDEyMDYyNCwgCi0gICAgMTk0ODI0LCA1NTI3MywgMTA3NjYsIDEyMDEyLCAyMzg2LCA2NDczMiwgOTE3MCwgOTE3ODIxLCA5MTIzLCA2NDU4NSwgCi0gICAgMTIwNTAwLCAwLCA3MTQwLCAxMDk3NywgMTI3Mzc4LCA0MTY0LCA5MDgxLCAwLCAxMjA1NjksIDQyMDQ5LCA0MjA0MiwgCi0gICAgODcwOSwgMTI4MjgzLCAwLCAxMjA2MzcsIDQyNDE5LCA2NDc5OSwgNDIwNDcsIDAsIDAsIDg0NzAsIDExODA3LCA2NTg5NywgCi0gICAgNTc3LCAwLCAwLCA3NDMwMCwgMCwgMTI3MzA4LCA3NDg0MCwgMCwgMCwgMTI4NzkxLCA5MjIyNCwgODczNiwgMTQxNCwgCi0gICAgNDI2NDMsIDk2ODMsIDQzNDg2LCA3NDM0NCwgMCwgMjUzNiwgMCwgNjYzMzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDY2MzE3LCAKLSAgICA5MTc2MTIsIDY2MzE1LCAyMTA2LCAxMjAyMjIsIDExMjczLCAwLCA0MzAwNCwgNzU0MSwgMCwgMCwgOTYxLCA2NDMwNywgCi0gICAgNjYzMjQsIDY0OTA2LCAxMjg1OTEsIDMxMDYsIDY1OTE3LCA0MTI4NCwgMTY5NiwgMCwgODkxLCAxMjEwNSwgMCwgNDI2MjQsIAotICAgIDEyODAyLCAzMjY0LCA4ODI0LCAxMzI2OCwgNDMwMDMsIDEwOTM2LCAwLCAwLCAwLCAxOTQ4MjYsIDkyNjg4LCAwLCAyMzIyLCAKLSAgICAxMjAzNzEsIDAsIDExNDQ5LCAxMjgxODcsIDQyODY4LCA0MTI4NSwgMzU0NywgMCwgMCwgMCwgMCwgNDMyMTYsIDYwODksIAotICAgIDc4NjgyLCAwLCAxMjA1NzgsIDQxNzAsIDEwMjksIDEyNzc2MSwgMTI3MDM2LCAxMTkyMjQsIDQyMzc0LCAwLCA3NDQsIDAsIAotICAgIDAsIDAsIDY1ODIzLCAxMjc4MjYsIDAsIDM1NTEsIDAsIDAsIDQ2MjMsIDU1MjY4LCAwLCA0NTk4LCAwLCA2NTEzNiwgCi0gICAgMTI3MTM2LCAwLCAwLCAxMDg1MSwgMCwgNjE3OSwgOTI2MDIsIDYxODAsIDAsIDExOTUyLCAxMjA3NzgsIDc4NjQ4LCAKLSAgICAxMTk3MiwgNzg2NDYsIDc4NjQ3LCA3ODY0NCwgNzg2NDUsIDE3NywgNzg2NDMsIDYxNzYsIDEyMDU4MCwgMCwgMCwgNjE3NywgCi0gICAgOTAyMCwgNzg2NTIsIDc4NjUzLCA2MTc4LCAxMjAyNDksIDEyMDI0MiwgMTI4MDI3LCA2NzY3MywgNzUxOCwgODc1NCwgMCwgCi0gICAgMTIwMjM3LCAyMTM3LCA0MzA4MSwgMCwgMCwgOTEzNiwgMTIwMjQwLCA0NDAxLCA0MTI4MCwgMCwgODk3NCwgMjMwOCwgMCwgCi0gICAgNzQxNDksIDAsIDIzMTgsIDAsIDY2MzYxLCA4MTk4LCAwLCA2NDM2MCwgMTI2MDEsIDQyNTM2LCA2NTI2NiwgMTIwODI3LCAKLSAgICA3NDMwNywgMCwgNjk3MCwgNTQwNCwgNDMzMzIsIDM2NjcsIDc5MzYsIDEyOTI1LCAxMjY5ODksIDYzODUsIDAsIDAsIAotICAgIDExODk0OSwgMTA4NzQsIDY1NTA1LCAxMjgwODMsIDAsIDQyMDUzLCAyMDc1LCA0MjA1NywgMTEwODMsIDQyMDUyLCAwLCAwLCAKLSAgICA2NzY1MSwgMCwgOTY2NSwgOTIzMDAsIDAsIDEzMTgxLCAwLCAwLCAwLCAwLCA3NDE0OCwgMCwgMCwgMTIwMjI1LCAxMjAyMjksIAotICAgIDEyMDIyNCwgNzQxNzIsIDQxMTQ1LCAwLCAwLCAwLCA0MTE0OCwgODY4MywgNzU5NCwgMTI3NTE5LCAwLCAxMTkwOTAsIAotICAgIDEwODY5LCA0MzQ1OCwgNDExNDYsIDkyNDA3LCAxMTQ0MSwgMCwgMzUxMiwgMTE5NjMzLCAwLCA4MTAzLCAwLCAwLCA2NTE4NCwgCi0gICAgMTE3ODAsIDQxNTYzLCA0Mjc5NiwgMCwgNjk3NDIsIDQxNTQ0LCA2NTE0NiwgMCwgMCwgMCwgMCwgMTk5NDIsIDAsIAotICAgIDExODkwOCwgNzk4OCwgMTA0MzYsIDc0MjczLCAzMjcxLCA3MzgwNCwgNjQ3MTEsIDAsIDAsIDAsIDAsIDM4MDQsIDEzMDcwLCAKLSAgICAxMTU1NywgNDIwNDQsIDAsIDEwOTUsIDAsIDM1OTksIDEyNzc3NCwgMCwgMTI4ODYxLCA4NTE0LCAwLCAwLCAwLCA3NDM0NiwgCi0gICAgNjY2OTcsIDAsIDExNjg0LCAwLCA5MjQ4NiwgMCwgMCwgNDIwNDMsIDQzMjMyLCA2NjY3NywgMCwgNDIwNDYsIDc4MjQxLCAKLSAgICA0MDM2LCAwLCAwLCAxMjgyMTMsIDE5NDg2MSwgMCwgMTE5NTQsIDAsIDE0NTAsIDEyOTg2LCAxMzQwLCAwLCA2NTQ0MSwgCi0gICAgOTI3MjIsIDAsIDAsIDEyNzc3MiwgMCwgOTE3NTQyLCAwLCAwLCA2NTM5LCAwLCAwLCAwLCAxOTQ4NTYsIDAsIDEyMDQ5MiwgCi0gICAgNDExOTAsIDM5NzMsIDExOTM2NSwgNDU3NSwgNDExOTMsIDc5ODIsIDQyOSwgMCwgMTI3MTk0LCAwLCAxOTQ4NTQsIDY1NzkyLCAKLSAgICAwLCAxMTg5NjgsIDY0MTcsIDExODkxOCwgNzgxNzgsIDAsIDE5NDg1MCwgMCwgMCwgNDkxOSwgMTA1OTAsIDAsIDc3NTUsIDAsIAotICAgIDAsIDY0NTQ4LCAxMjA1MDYsIDE2MjEsIDEwMjE0LCA2NTEyNiwgMCwgMTI3MDA0LCAwLCAxMjE4OCwgMCwgMTYxNywgODA1MCwgCi0gICAgMCwgNTAxNSwgMCwgMTE5MTc0LCA0MjU5MCwgMTk0ODcxLCAxNzU2LCA3ODE4MSwgMCwgNjU3NjgsIDYzNTIsIDQxODkyLCAwLCAKLSAgICA3NTU1LCAxMzEwMywgNTQwOCwgMjgxNywgMTIxNCwgMCwgOTIzMzUsIDAsIDAsIDAsIDAsIDEyNzE5NSwgNzk1NywgODY4OSwgCi0gICAgNjQ3MjMsIDEwNTYsIDQyODk2LCA3NDE0NywgMTk0ODEzLCAwLCA1NTI4NiwgNzA3MywgNjU4NTAsIDEyMzI3LCAwLCAKLSAgICAxMTkwMjgsIDAsIDAsIDAsIDIzNDEsIDg0NTAsIDg0ODQsIDg0NzQsIDAsIDAsIDAsIDg0NjEsIDEyODEwMiwgMTIxNTMsIAotICAgIDEyNzk5LCAwLCA0MzcwOSwgNDM3MDgsIDk0NTEsIDc1NzEsIDEzMDczLCAwLCAwLCA2ODEsIDAsIDcwMywgMCwgMzI3MiwgCi0gICAgODc4MSwgMTI4OTQsIDAsIDExNzA5LCA5MjI4OCwgNzQ0NDYsIDAsIDkyNTMyLCAwLCAxMTMzOCwgMTIwNzY4LCAzMjc2LCAwLCAKLSAgICAwLCA2NTkyOCwgMCwgMCwgNjUwMjEsIDY0Nzk1LCA3NDU3NCwgMCwgMTAwNDcsIDc4ODE0LCAzMjYyLCA3ODgxMSwgNDI3MTEsIAotICAgIDAsIDAsIDY4NDc4LCAxNjMsIDU3NiwgOTg5NSwgMTY1NSwgNzg4MTcsIDc0NTkxLCA3ODgxNSwgNzg4MTYsIDAsIDAsIDAsIAotICAgIDAsIDEwMDM5LCAwLCAwLCA1NjIzLCA1NzE3LCA1Nzc2LCAwLCAwLCAwLCA0MTU5MSwgMTEwMzYsIDY1MjUyLCA5MjM4MiwgMCwgCi0gICAgMCwgMCwgNjc4NDgsIDAsIDAsIDAsIDg4ODcsIDAsIDcyOTUsIDExMDMxLCAwLCA0MzE1NywgMCwgODk0NiwgMTAzNDgsIAotICAgIDEwNDEyLCA4NzU1LCAwLCAwLCA1NzE4LCAxMzIyMSwgMCwgMCwgNzgxMzUsIDAsIDAsIDg4MTAsIDc0NDk5LCA2ODYsIDAsIAotICAgIDAsIDQ2MTksIDExODk1NCwgNjY1NCwgNzM3NjksIDc0NDI2LCAwLCAxMjA0MCwgNjU2ODksIDEwMTI4LCA2NTExOCwgMCwgCi0gICAgMTE5MTUxLCA3NDIwNSwgOTI2NTEsIDAsIDI0MDEsIDY4MTQ0LCA4NzkyLCAwLCAwLCA2NTQ1NSwgMCwgOTIyNDYsIDAsIAotICAgIDExOTEyOSwgMCwgMTI4ODYsIDEyNzkyMCwgNjY2MjQsIDAsIDQzNTU3LCAxMDMwMCwgMTAxNjEsIDEwMzk2LCA3NDEzNSwgMCwgCi0gICAgMTE4OTQ1LCA3ODExOCwgNzM4NTEsIDMwMTAsIDY0NDEsIDc4MTIyLCAxNDU4LCA0MTQ3NSwgMTI4NjcyLCAwLCAwLCAKLSAgICAxMTQ3OSwgMCwgMCwgNjM1MCwgMTI4NjQsIDY5Njc0LCA3ODExNCwgMTA2MSwgNjQ3ODAsIDIwMDEsIDQzMTExLCA1NTIzMCwgCi0gICAgMTI4Njg2LCA0MDUyLCAwLCA3NjI2LCAwLCAwLCAxMDQ1LCAwLCA1NjMxLCA0MTExMywgMCwgMCwgNDM3MDcsIDc0MTI3LCAwLCAKLSAgICAwLCA4NDg2LCAwLCA3Mzc1OCwgMjMzNSwgNDM2MiwgMCwgMCwgNjkyMjEsIDEwMjUsIDAsIDQyNjI1LCA5MTc2MjcsIAotICAgIDc4MDg0LCA0MTQ0MywgMCwgMTI4MjA2LCAwLCAxNzc0LCAxNTIzLCAwLCAwLCA0MTQ0NSwgNzgyMzYsIDAsIDg1NjcsIAotICAgIDQxNDQyLCAzOTg4LCAwLCA3ODIzNywgMTE4OTEwLCAwLCA2NTI3NCwgODU2NCwgNzgxOTksIDc4MjM4LCAxMjc1MTUsIDAsIAotICAgIDAsIDQzNDQ2LCAwLCA2NjUxMywgNjI1NiwgMCwgNTc5LCA1NTIxOCwgMTAyMDYsIDAsIDYzNzUsIDI2NzMsIDAsIDExODE0LCAKLSAgICAwLCA0NDg4LCAwLCAxMjczMzYsIDY4NDUxLCAxMDQ0NCwgMTE4ODQ2LCAxMjczMzQsIDExNzk5LCA3NDQwNywgNjg0NjYsIAotICAgIDQ0ODcsIDEyNzg0OSwgNDI4MzIsIDEwMzIsIDEyMDI2NywgNDM0NTAsIDc4MjU3LCA3MjAzLCAwLCA2MTQsIDc4MTkxLCAKLSAgICAxMjczMjUsIDEyMDYxNSwgMCwgNzgyNjIsIDEyODY2OSwgMTI3MzIzLCAwLCA0MzEyMSwgMCwgMCwgOTI1MTMsIDEwNTAsIAotICAgIDc1NDksIDAsIDAsIDkzMTQsIDAsIDAsIDEyMDYxNiwgMCwgMTAwNTcsIDAsIDEyNzMxMywgMCwgNjY1MDQsIDAsIDAsIAotICAgIDIzMDcsIDAsIDY0MzMzLCAxMjczMTIsIDEyODU0NywgNzM4NzMsIDAsIDAsIDAsIDEyNzk3MywgMTI4NzA4LCAwLCAxMDM2MCwgCi0gICAgNjc0NiwgMCwgOTIyNDUsIDQ0MCwgMCwgMTMwODUsIDkyMzMsIDc0MjE2LCAwLCAwLCA5OTU3LCAwLCA2NjQ0NywgODA0NiwgCi0gICAgNjQ5NjMsIDY1Nzc3LCAxMDEyNSwgNzQyMTIsIDQyODE5LCAxMDkxMCwgMCwgMTUyMSwgOTg5NiwgMCwgMTA0ODcsIDAsIAotICAgIDEyNTI3LCAwLCA3OTcwLCAwLCAxMjg2NjAsIDAsIDY1NzY5LCA1MjQzLCA5ODQ5LCA1MjM5LCA2NTc3MSwgMCwgMCwgNTIzNywgCi0gICAgNjk3MTQsIDAsIDEwMTAzLCA1MjQ3LCA0NzY5LCAwLCAxMTg5NzcsIDEyODczLCA1NzY0LCAwLCAwLCAzMDA4LCA0ODk2LCAwLCAKLSAgICAxMjA4NywgMCwgNTUyMzEsIDQxMTAzLCAwLCA2NDU2NSwgNDc3MywgMCwgOTI3MTcsIDAsIDQ3NzAsIDAsIDkxNzU2NywgCi0gICAgODczMSwgNjUzNzgsIDEyNzM2MiwgMTIwNjE5LCA5MTIyLCAxMjgwMzMsIDAsIDQ3NzQsIDMwMTksIDk5OTcsIDEyODM0LCAwLCAKLSAgICA5NDU2LCAxMDIxNSwgMTIwNTQ3LCAwLCAwLCAwLCAwLCA3NDc3NiwgNDI4MSwgNDc2OCwgMCwgNDE1MzUsIDQwOTksIDkwMTcsIAotICAgIDAsIDAsIDc4MDk1LCAwLCA3ODA5NiwgMCwgMCwgMCwgNzgwOTgsIDAsIDQyODE0LCA4ODAsIDAsIDAsIDEyODAyMSwgMjEzNCwgCi0gICAgMCwgMTAxMTYsIDk4NzcsIDkyMzI5LCAwLCAwLCA3MDk1LCAwLCA3NDExNiwgNjc3OCwgMCwgNzgwOTAsIDgyNDMsIDI0MjcsIAotICAgIDEyODE0MSwgNzA5MywgMCwgMTE1ODUsIDE5NTAwMywgOTk2MiwgMCwgMTIyMjMsIDAsIDAsIDE0MzQsIDEyMDI1NCwgNTYzNywgCi0gICAgMTE1NzMsIDAsIDAsIDAsIDE5OTUxLCAwLCA3ODEyMSwgMCwgMCwgNTUyODMsIDAsIDAsIDc0NDM3LCAxMTU2LCA4NzQwLCAKLSAgICA5MjQxNSwgMzc4MiwgNjQzMzEsIDAsIDQxMzcwLCAxMDE0LCA4MjYxLCAwLCAwLCAxMDgzNSwgMCwgNjU1MzYsIDAsIAotICAgIDEyMDQ2MywgMCwgNzcwMiwgMTE4ODI0LCAwLCA0MzAxMCwgNjU3NzksIDY1NzgzLCAxMTUwLCAxMDU0NywgNTcwMCwgMCwgCi0gICAgMTIwNjAzLCA2NTM4MywgMjMzOSwgNDI1OTQsIDU2OTcsIDExODc4OCwgMCwgMTI4NTc2LCAwLCA0MjI1NywgNTY5NiwgCi0gICAgOTI2NzcsIDEyMDQ2NSwgMzg2MiwgOTY0MywgMCwgMCwgNzYzNCwgNjUxNjcsIDk4NDUsIDAsIDAsIDU3MDEsIDk3MjIsIAotICAgIDQxNDkwLCAwLCAxNDI2LCA2ODIxNywgMCwgNjg0NDcsIDQyMjA0LCA1NTI3MCwgODU3MSwgMTk0OTkxLCA3ODA2NywgMCwgCi0gICAgNzg4MTgsIDkyNzE5LCA0MzE4MiwgMTIxODQsIDAsIDQyMDIyLCAwLCAxMDI4MSwgMCwgNTY1MCwgNDMxOTQsIDY0NzEyLCAKLSAgICAxMDc0NCwgMCwgOTkwLCA1NjQ3LCAwLCA3Mzg3LCA3ODczNCwgNDExMTQsIDExNDc3LCA1NjQ2LCAxMjg3OSwgMTEwMTgsIDAsIAotICAgIDM5NDUsIDkyNTg5LCAwLCAwLCAwLCAwLCA3ODIxMiwgMTI3NzQ2LCAxMDIwLCA3Mzc2MywgMCwgNzg3MzEsIDU2NDgsIAotICAgIDY0NzQ4LCAxOTQ5MTAsIDAsIDEwMjA1LCAzNTQ1LCAwLCA2OTg0LCAwLCA3NDA1MSwgMCwgNDMyNDIsIDEyMDQ1OCwgMjY2NywgCi0gICAgMCwgMCwgMCwgOTkxMSwgMCwgNjUwMjAsIDEwMDk3LCAxMTkxNjYsIDEyNzE0NSwgMCwgMTE4ODM2LCAwLCA3ODQyNywgCi0gICAgMTE0MCwgNzg0MjYsIDAsIDEwMTU5LCAwLCAwLCA4MTI4LCAwLCAwLCA5MTc5NjUsIDE4MTUsIDE5OTEwLCA4OTAsIDAsIAotICAgIDMyNjcsIDkyMjkxLCAwLCAxMDEyMywgMCwgNDQxMCwgMTA0MSwgMTA1NzYsIDYzNTQsIDkyNTgxLCA1ODAsIDc0MjMyLCAwLCAKKyAgICA3OTI4LCAxMjAzNTQsIDk4MzA5NSwgNDE1OTUsIDczNzMwLCAwLCA0MjExOCwgNzM4MzAsIDY2MDQyLCAxMDM1NSwgCisgICAgOTgzMTEwLCA3ODc1LCAwLCA0MTU5OCwgMzk5MywgMCwgMTU0NSwgNDA5NzEsIDUzNiwgMTI4NTIxLCA0MzAyOSwgMCwgMCwgCisgICAgNjUxNzMsIDY1Mjg2LCAwLCAwLCAwLCAwLCAwLCAwLCA0MTM3NSwgNTQwMiwgMCwgMCwgMTY4NywgMTIwNTAzLCA5MTc4MTcsIAorICAgIDAsIDc4MTk0LCA2NDMyNiwgNDA5NjksIDEwNTI2LCA3ODc1MywgODMyMywgNDA5NjgsIDEzMzksIDExNzMxLCA3ODc1NiwgMCwgCisgICAgNjU0NjAsIDEyMjQyLCAxMjg1MTMsIDgwMjAsIDEwODQzLCAxMTU1NCwgMCwgMCwgODI2NiwgNDEwMDYsIDY1NzIyLCAwLCAKKyAgICAxMDcxMCwgMCwgMTE4OTQyLCA2NzY2NywgNjQ1NjcsIDExOTE1NSwgMTk1MDkxLCAwLCAxMTk2MzYsIDY3ODU3LCAxMjA2ODcsIAorICAgIDAsIDk4MzA2NiwgMTE3NTUsIDY2MzA1LCAwLCAwLCAxMDkxNywgOTM5NzksIDAsIDExMjcyLCAyMDQwLCA0MTI0NywgCisgICAgNDEzMjYsIDE5NTA2MCwgMTc0MSwgNDIzNzAsIDEyMjcsIDAsIDAsIDExNDEzLCAwLCAwLCA1MjgzLCAxNTg2LCA0OTc4LCAwLCAKKyAgICAxOTg0LCAxMTgzMCwgMCwgOTIyOTMsIDQwOTg0LCAxMjgzMDYsIDkzNzMsIDAsIDEyOTE2LCA2Mjg0LCAwLCA0MTY2MywgMCwgCisgICAgMCwgMCwgOTIzNywgOTM4NSwgNDE2NDgsIDAsIDE5NDU4MCwgMjI5OSwgNDE2NjYsIDE4MzAsIDczNzgzLCAyMDU2LCAKKyAgICA0MTI4NywgOTI2MTAsIDAsIDAsIDQyMjE5LCAxMjgyNTcsIDAsIDQxOTg3LCA0MTY3NiwgOTgzMDU5LCAxMjA4MjMsIAorICAgIDk4MzE0NCwgNDE2NzAsIDAsIDkyNTkwLCAyNzk2LCA1NTI5MSwgMTE2ODMsIDk5MDIsIDc0NTIxLCA2Nzk4OCwgMTE0NTEsIAorICAgIDk4MzExMSwgMTI4ODIyLCA0MjYzMSwgMjM1OSwgMCwgNjc4NDQsIDc0MTY0LCA0MTIzOCwgNTQ4LCAxMTQwNSwgMTMxMzMsIAorICAgIDY0MzY4LCA5ODMyMzMsIDEyODc5NSwgMCwgMzk3LCA0MzYyMiwgNDIxMzksIDk1NDcsIDk1OTAsIDEyODIzOCwgMTYxNCwgCisgICAgNDM2NjEsIDY0MzU2LCA2NjMwNywgNjY1MSwgMTM1OCwgMCwgNDI4LCA5NjIwLCAxNDY2LCA3ODExMiwgMTA5ODIsIAorICAgIDExODgzMSwgMTMzMywgNzEwNCwgNDA3LCA2NDI1LCAxMjg4MzQsIDc0MjUzLCAwLCAwLCAwLCA1ODA0LCAxMTk3NiwgODU1NCwgCisgICAgOTI3MjEsIDAsIDAsIDkwNTcsIDQyMjk0LCA0MTIxOCwgMCwgMCwgNzgxMzcsIDE4ODMsIDEwOTUyLCA4MDQ4LCA3ODE0MiwgCisgICAgNDEyMjUsIDkyNjIxLCA0MjkxNSwgOTgzNjY3LCAxMjg2ODQsIDAsIDQ0MDcsIDAsIDY1ODA5LCAxMTkwNzQsIDE5NDgyMSwgCisgICAgODQ0OCwgNzE0MSwgNzQxODMsIDAsIDEyNjc1LCAxMjY1OSwgMCwgNDIzNjMsIDEyMDYyNCwgMTk0ODI0LCA1NTI3MywgCisgICAgMTA3NjYsIDEyMDEyLCAyMzg2LCA2NDczMiwgOTE3MCwgOTE3ODIxLCA5MTIzLCA2NDU4NSwgMTIwNTAwLCAxMTkxNTgsIAorICAgIDcxNDAsIDEwOTc3LCAxMjczNzgsIDQxNjQsIDkwODEsIDAsIDEyMDU2OSwgNDIwNDksIDQyMDQyLCA4NzA5LCAxMjgyODMsIAorICAgIDEyNjQ3NywgMTIwNjM3LCA0MjQxOSwgNjQ3OTksIDQyMDQ3LCAwLCAwLCA4NDcwLCAxMTgwNywgNjU4OTcsIDU3NywgMCwgCisgICAgOTgzNzUxLCA3NDMwMCwgMCwgMTI3MzA4LCA3NDg0MCwgMCwgMCwgMTI4NzkxLCA5MjIyNCwgODczNiwgMTQxNCwgNDI2NDMsIAorICAgIDk2ODMsIDQzNDg2LCA3NDM0NCwgMCwgMjUzNiwgMCwgNjYzMzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDY2MzE3LCA2OTk0NSwgCisgICAgNjYzMTUsIDIxMDYsIDEyMDIyMiwgMTEyNzMsIDAsIDQzMDA0LCA3NTQxLCAwLCAwLCA5NjEsIDY0MzA3LCA2NjMyNCwgCisgICAgNjQ5MDYsIDEyODU5MSwgMzEwNiwgNjU5MTcsIDQxMjg0LCAxNjk2LCAwLCA4OTEsIDEyMTA1LCAwLCA0MjYyNCwgMTI4MDIsIAorICAgIDMyNjQsIDg4MjQsIDEzMjY4LCA0MzAwMywgMTA5MzYsIDAsIDAsIDAsIDE5NDgyNiwgOTI2ODgsIDAsIDIzMjIsIDEyMDM3MSwgCisgICAgOTgzNTg0LCAxMTQ0OSwgMTI4MTg3LCA0Mjg2OCwgNDEyODUsIDM1NDcsIDAsIDAsIDEyODc5MywgOTgzMzkwLCA0MzIxNiwgCisgICAgNjA4OSwgNzg2ODIsIDAsIDEyMDU3OCwgNDE3MCwgMTAyOSwgMTI3NzYxLCAxMjcwMzYsIDExOTIyNCwgNDIzNzQsIDAsIAorICAgIDc0NCwgMCwgMCwgMCwgNjU4MjMsIDEyNzgyNiwgMCwgMzU1MSwgMCwgMCwgNDYyMywgNTUyNjgsIDAsIDQ1OTgsIDk4MzE2MiwgCisgICAgNjUxMzYsIDEyNzEzNiwgMCwgMCwgMTA4NTEsIDAsIDYxNzksIDkyNjAyLCA2MTgwLCAwLCAxMTk1MiwgMTIwNzc4LCAKKyAgICA3ODY0OCwgMTE5NzIsIDc4NjQ2LCA3ODY0NywgNzg2NDQsIDc4NjQ1LCAxNzcsIDc4NjQzLCA2MTc2LCAxMjA1ODAsIDAsIDAsIAorICAgIDYxNzcsIDkwMjAsIDc4NjUyLCA3ODY1MywgNjE3OCwgMTIwMjQ5LCAxMjAyNDIsIDEyODAyNywgNjc2NzMsIDIyMTQsIAorICAgIDg3NTQsIDAsIDEyMDIzNywgMjEzNywgNDMwODEsIDAsIDAsIDkxMzYsIDEyMDI0MCwgNDQwMSwgNDEyODAsIDAsIDg5NzQsIAorICAgIDIzMDgsIDAsIDc0MTQ5LCAwLCAyMzE4LCA5ODMxODMsIDY2MzYxLCA4MTk4LCAwLCA2NDM2MCwgMTI2MDEsIDQyNTM2LCAKKyAgICA2NTI2NiwgMTIwODI3LCA3NDMwNywgOTI0NjIsIDY5NzAsIDU0MDQsIDQzMzMyLCAzNjY3LCA3OTM2LCAxMjkyNSwgCisgICAgMTI2OTg5LCA2Mzg1LCAwLCAwLCAxMTg5NDksIDEwODc0LCA2NTUwNSwgMTI4MDgzLCAwLCA0MjA1MywgMjA3NSwgNDIwNTcsIAorICAgIDExMDgzLCA0MjA1MiwgMCwgMCwgNjc2NTEsIDAsIDk2NjUsIDkyMzAwLCA5ODM2NTcsIDEzMTgxLCAwLCAwLCAwLCA3MDA4OCwgCisgICAgNzQxNDgsIDAsIDAsIDEyMDIyNSwgMTIwMjI5LCAxMjAyMjQsIDc0MTcyLCA0MTE0NSwgMCwgOTQwOTYsIDk4MzkzNywgCisgICAgNDExNDgsIDg2ODMsIDc1OTQsIDEyNzUxOSwgMCwgMTE5MDkwLCAxMDg2OSwgNDM0NTgsIDQxMTQ2LCA5MjQwNywgMTE0NDEsIAorICAgIDAsIDM1MTIsIDExOTYzMywgOTgzNzAwLCA4MTAzLCAwLCAwLCA2NTE4NCwgMTE3ODAsIDQxNTYzLCA0Mjc5NiwgMCwgCisgICAgNjk3NDIsIDQxNTQ0LCA2NTE0NiwgMCwgMCwgMCwgMCwgMTk5NDIsIDAsIDExODkwOCwgNzk4OCwgMTA0MzYsIDc0MjczLCAKKyAgICAzMjcxLCA3MzgwNCwgNjQ3MTEsIDAsIDk0MDY0LCAwLCAwLCAzODA0LCAxMzA3MCwgMTE1NTcsIDQyMDQ0LCAwLCAxMDk1LCAKKyAgICAwLCAzNTk5LCAxMjc3NzQsIDAsIDEyODg2MSwgODUxNCwgMCwgMCwgMCwgNzQzNDYsIDY2Njk3LCAwLCAxMTY4NCwgMCwgCisgICAgOTI0ODYsIDkxNzYwMywgMCwgNDIwNDMsIDQzMjMyLCA2NjY3NywgMCwgNDIwNDYsIDc4MjQxLCA0MDM2LCAxMjY0ODEsIDAsIAorICAgIDEyODIxMywgMTk0ODYxLCAwLCAxMTk1NCwgOTM5NzgsIDE0NTAsIDEyOTg2LCAxMzQwLCAwLCA2NTQ0MSwgOTI3MjIsIDAsIAorICAgIDAsIDEyNzc3MiwgMCwgOTE3NTQyLCAwLCAwLCA2NTM5LCAwLCAwLCAwLCAxOTQ4NTYsIDAsIDEyMDQ5MiwgNDExOTAsIAorICAgIDM5NzMsIDExOTM2NSwgNDU3NSwgNDExOTMsIDc5ODIsIDQyOSwgMCwgMTI3MTk0LCAwLCAxOTQ4NTQsIDY1NzkyLCAwLCAKKyAgICAxMTg5NjgsIDY0MTcsIDExODkxOCwgNzgxNzgsIDAsIDE5NDg1MCwgMCwgMCwgNDkxOSwgMTA1OTAsIDEyODU1NiwgNzc1NSwgCisgICAgMCwgMCwgNjQ1NDgsIDEyMDUwNiwgMTYyMSwgMTAyMTQsIDY1MTI2LCAwLCAxMjcwMDQsIDAsIDEyMTg4LCA5ODM2NTksIAorICAgIDE2MTcsIDgwNTAsIDAsIDUwMTUsIDAsIDExOTE3NCwgNDI1OTAsIDE5NDg3MSwgMTc1NiwgNzgxODEsIDAsIDY1NzY4LCAKKyAgICA2MzUyLCA0MTg5MiwgMCwgNzU1NSwgMTMxMDMsIDU0MDgsIDI4MTcsIDEyMTQsIDY5OTE5LCA5MjMzNSwgOTgzMTI1LCAwLCAKKyAgICAwLCAwLCAxMjcxOTUsIDc5NTcsIDg2ODksIDY0NzIzLCAxMDU2LCA0Mjg5NiwgNzQxNDcsIDE5NDgxMywgMCwgNTUyODYsIAorICAgIDcwNzMsIDY1ODUwLCAxMjMyNywgOTgzOTM5LCAxMTkwMjgsIDAsIDAsIDAsIDIzNDEsIDg0NTAsIDg0ODQsIDg0NzQsIAorICAgIDk4MzI1MiwgMCwgNzAwNzksIDg0NjEsIDEyODEwMiwgMTIxNTMsIDEyNzk5LCAwLCA0MzcwOSwgNDM3MDgsIDk0NTEsIAorICAgIDc1NzEsIDEzMDczLCAwLCAwLCA2ODEsIDk4MzI0NiwgNzAzLCAwLCAzMjcyLCA4NzgxLCAxMjg5NCwgNzAwNzcsIDExNzA5LCAKKyAgICA5MjI4OCwgNzQ0NDYsIDAsIDkyNTMyLCAwLCAxMTMzOCwgMTIwNzY4LCAzMjc2LCAwLCAwLCA2NTkyOCwgMCwgMCwgNjUwMjEsIAorICAgIDY0Nzk1LCA3NDU3NCwgMCwgMTAwNDcsIDc4ODE0LCAzMjYyLCA3ODgxMSwgNDI3MTEsIDAsIDAsIDY4NDc4LCAxNjMsIDU3NiwgCisgICAgOTg5NSwgMTY1NSwgNzg4MTcsIDc0NTkxLCA3ODgxNSwgNzg4MTYsIDk4MzEyMiwgMCwgMCwgMCwgMTAwMzksIDAsIAorICAgIDk4MzkzNiwgNTYyMywgNTcxNywgNTc3NiwgMCwgMCwgMCwgNDE1OTEsIDExMDM2LCA2NTI1MiwgOTIzODIsIDAsIDAsIDAsIAorICAgIDY3ODQ4LCAwLCAwLCAwLCA4ODg3LCAxMjc1MjEsIDcyOTUsIDExMDMxLCAwLCA0MzE1NywgMCwgODk0NiwgMTAzNDgsIAorICAgIDEwNDEyLCA4NzU1LCAwLCAwLCA1NzE4LCAxMzIyMSwgMCwgMCwgNzgxMzUsIDAsIDk4MzcwMiwgODgxMCwgNzQ0OTksIDY4NiwgCisgICAgMCwgNzEzNjIsIDQ2MTksIDExODk1NCwgNjY1NCwgNzM3NjksIDc0NDI2LCAwLCAxMjA0MCwgNjU2ODksIDEwMTI4LCAKKyAgICA2NTExOCwgMCwgMTE5MTUxLCA3NDIwNSwgOTI2NTEsIDAsIDI0MDEsIDY4MTQ0LCA4NzkyLCA5ODM2MzksIDAsIDY1NDU1LCAKKyAgICAwLCA5MjI0NiwgMCwgMTE5MTI5LCAwLCAxMjg4NiwgMTI3OTIwLCA2NjYyNCwgMCwgNDM1NTcsIDEwMzAwLCAxMDE2MSwgCisgICAgMTAzOTYsIDc0MTM1LCA5ODM0NDUsIDExODk0NSwgNzgxMTgsIDczODUxLCAzMDEwLCA2NDQxLCA3ODEyMiwgMTQ1OCwgCisgICAgNDE0NzUsIDEyODY3MiwgOTM5NzUsIDAsIDExNDc5LCAwLCAxMjAzNTYsIDYzNTAsIDEyODY0LCA2OTY3NCwgNzgxMTQsIAorICAgIDEwNjEsIDY0NzgwLCAyMDAxLCA0MzExMSwgNTUyMzAsIDEyODY4NiwgNDA1MiwgMCwgNzYyNiwgMCwgMCwgMTA0NSwgMCwgCisgICAgNTYzMSwgNDExMTMsIDAsIDAsIDQzNzA3LCA3NDEyNywgMCwgMCwgODQ4NiwgMCwgNzM3NTgsIDIzMzUsIDQzNjIsIAorICAgIDk4MzE5NSwgMTI2NTYxLCA2OTIyMSwgMTAyNSwgMCwgNDI2MjUsIDkxNzYyNywgNzgwODQsIDQxNDQzLCAwLCAxMjgyMDYsIAorICAgIDAsIDE3NzQsIDE1MjMsIDAsIDAsIDQxNDQ1LCA3ODIzNiwgMCwgODU2NywgNDE0NDIsIDM5ODgsIDAsIDc4MjM3LCAKKyAgICAxMTg5MTAsIDAsIDY1Mjc0LCA4NTY0LCA3ODE5OSwgNzgyMzgsIDEyNzUxNSwgMCwgMCwgNDM0NDYsIDAsIDY2NTEzLCAKKyAgICA2MjU2LCAwLCA1NzksIDU1MjE4LCAxMDIwNiwgOTgzMDc1LCA2Mzc1LCAyNjczLCAwLCAxMTgxNCwgMCwgNDQ4OCwgMCwgCisgICAgMTI3MzM2LCA2ODQ1MSwgMTA0NDQsIDExODg0NiwgMTI3MzM0LCAxMTc5OSwgNzQ0MDcsIDY4NDY2LCA0NDg3LCAxMjc4NDksIAorICAgIDQyODMyLCAxMDMyLCAxMjAyNjcsIDQzNDUwLCA3ODI1NywgNzIwMywgMCwgNjE0LCA3ODE5MSwgMTI3MzI1LCAxMjA2MTUsIAorICAgIDAsIDc4MjYyLCAxMjg2NjksIDEyNzMyMywgMCwgNDMxMjEsIDAsIDAsIDkyNTEzLCAxMDUwLCA3NTQ5LCAwLCAwLCA5MzE0LCAKKyAgICAwLCAwLCAxMjA2MTYsIDAsIDEwMDU3LCAwLCAxMjczMTMsIDAsIDY2NTA0LCA5ODMxNzEsIDAsIDIzMDcsIDAsIDY0MzMzLCAKKyAgICAxMjczMTIsIDEyODU0NywgNzM4NzMsIDAsIDk0MDM1LCAwLCAxMjc5NzMsIDEyODcwOCwgMCwgMTAzNjAsIDY3NDYsIDAsIAorICAgIDkyMjQ1LCA0NDAsIDAsIDEzMDg1LCA5MjMzLCA3NDIxNiwgMCwgMCwgOTk1NywgMTI4Mjg1LCA2NjQ0NywgODA0NiwgCisgICAgNjQ5NjMsIDY1Nzc3LCAxMDEyNSwgNzQyMTIsIDQyODE5LCAxMDkxMCwgMCwgMTUyMSwgOTg5NiwgOTM5NjUsIDEwNDg3LCAKKyAgICA2OTg3OCwgMTI1MjcsIDAsIDc5NzAsIDAsIDEyODY2MCwgMCwgNjU3NjksIDUyNDMsIDk4NDksIDUyMzksIDY1NzcxLCAKKyAgICA5ODMyMjksIDAsIDUyMzcsIDY5NzE0LCAwLCAxMDEwMywgNTI0NywgNDc2OSwgMCwgMTE4OTc3LCAxMjg3MywgMjI4MywgCisgICAgOTgzMjMxLCAwLCAzMDA4LCA0ODk2LCAwLCAxMjA4NywgMCwgNTUyMzEsIDQxMTAzLCAwLCA2NDU2NSwgNDc3MywgMCwgCisgICAgOTI3MTcsIDcwMDc0LCA0NzcwLCAwLCA5MTc1NjcsIDg3MzEsIDY1Mzc4LCAxMjczNjIsIDEyMDYxOSwgOTEyMiwgMTI4MDMzLCAKKyAgICAxMjY2MDAsIDQ3NzQsIDMwMTksIDk5OTcsIDEyODM0LCAwLCA5NDU2LCAxMDIxNSwgMTIwNTQ3LCAwLCAwLCAwLCAwLCAKKyAgICA3NDc3NiwgNDI4MSwgNDc2OCwgMCwgNDE1MzUsIDQwOTksIDkwMTcsIDAsIDAsIDc4MDk1LCAwLCA3ODA5NiwgMCwgMCwgMCwgCisgICAgNzgwOTgsIDAsIDQyODE0LCA4ODAsIDAsIDAsIDEyODAyMSwgMjEzNCwgMCwgMTAxMTYsIDk4NzcsIDkyMzI5LCAwLCAwLCAKKyAgICA3MDk1LCAwLCA3NDExNiwgNjc3OCwgMCwgNzgwOTAsIDgyNDMsIDI0MjcsIDEyODE0MSwgNzA5MywgMCwgMTE1ODUsIAorICAgIDE5NTAwMywgOTk2MiwgMCwgMTIyMjMsIDAsIDAsIDE0MzQsIDEyMDI1NCwgNTYzNywgMTE1NzMsIDAsIDAsIDAsIDE5OTUxLCAKKyAgICAwLCA3ODEyMSwgMCwgMCwgNTUyODMsIDAsIDAsIDc0NDM3LCAxMTU2LCA4NzQwLCA5MjQxNSwgMzc4MiwgNjQzMzEsIDAsIAorICAgIDQxMzcwLCAxMDE0LCA4MjYxLCAwLCAwLCAxMDgzNSwgMCwgNjU1MzYsIDAsIDEyMDQ2MywgMCwgNzcwMiwgMTE4ODI0LCAwLCAKKyAgICA0MzAxMCwgNjU3NzksIDY1NzgzLCAxMTUwLCAxMDU0NywgNTcwMCwgMCwgMTIwNjAzLCA2NTM4MywgMjMzOSwgNDI1OTQsIAorICAgIDU2OTcsIDExODc4OCwgMCwgMTI4NTc2LCAwLCA0MjI1NywgNTY5NiwgOTI2NzcsIDEyMDQ2NSwgMzg2MiwgOTY0MywgMCwgMCwgCisgICAgNzYzNCwgNjUxNjcsIDk4NDUsIDAsIDAsIDU3MDEsIDk3MjIsIDQxNDkwLCA5ODMxNTMsIDE0MjYsIDY4MjE3LCAwLCAKKyAgICA2ODQ0NywgNDIyMDQsIDU1MjcwLCA4NTcxLCAxOTQ5OTEsIDc4MDY3LCAwLCA3ODgxOCwgOTI3MTksIDQzMTgyLCAxMjE4NCwgCisgICAgMCwgNDIwMjIsIDAsIDEwMjgxLCAwLCA1NjUwLCA0MzE5NCwgNjQ3MTIsIDEwNzQ0LCAwLCA5OTAsIDU2NDcsIDAsIDczODcsIAorICAgIDc4NzM0LCA0MTExNCwgMTE0NzcsIDU2NDYsIDEyODc5LCAxMTAxOCwgOTgzOTIxLCAzOTQ1LCA5MjU4OSwgMCwgMCwgMCwgMCwgCisgICAgNzgyMTIsIDEyNzc0NiwgMTAyMCwgNzM3NjMsIDAsIDc4NzMxLCA1NjQ4LCA2NDc0OCwgMTk0OTEwLCA3ODczMywgMTAyMDUsIAorICAgIDM1NDUsIDk4MzU4NSwgNjk4NCwgMCwgNzQwNTEsIDk4MzY0NiwgNDMyNDIsIDEyMDQ1OCwgMjY2NywgMCwgMCwgMCwgOTkxMSwgCisgICAgMCwgNjUwMjAsIDEwMDk3LCAxMTkxNjYsIDEyNzE0NSwgOTgzNjUzLCAxMTg4MzYsIDk4MzczOSwgNzg0MjcsIDExNDAsIAorICAgIDc4NDI2LCAwLCAxMDE1OSwgMCwgMCwgODEyOCwgMCwgMCwgOTE3OTY1LCAxODE1LCAxOTkxMCwgODkwLCAwLCAzMjY3LCAKKyAgICA5MjI5MSwgMCwgMTAxMjMsIDAsIDQ0MTAsIDEwNDEsIDEwNTc2LCA2MzU0LCA5MjU4MSwgNTgwLCA3NDIzMiwgMCwgCiAgICAgMTI4MzQ3LCAwLCAwLCAwLCAxOTkzOCwgNjU5MDYsIDEyNzgxOSwgMCwgMCwgMzI5OCwgNTM3NSwgMTAxNDIsIDAsIDgyMTUsIAotICAgIDAsIDYxMzQsIDQxMjQ2LCA2NDQwMiwgMCwgMTI4MjE1LCAwLCAwLCAwLCA0MTM4MiwgMCwgMTI4NjUzLCA1MTczLCA2NTM0OCwgCisgICAgMCwgNjEzNCwgNDEyNDYsIDY0NDAyLCAwLCA2OTg5OSwgMCwgMCwgMCwgNDEzODIsIDAsIDEyODY1MywgNTE3MywgNjUzNDgsIAogICAgIDUyNywgMCwgMCwgOTI2MTIsIDEyODI1MCwgNzg3OTcsIDExOTE1LCAwLCAwLCAxMDA3MiwgMCwgNDI2OTUsIDIzMjksIAotICAgIDQyMjUwLCAwLCAxMjg4NjQsIDY5NjY3LCAxMjI0NSwgMTU2OCwgMCwgMCwgMCwgMTI4MTIwLCAwLCA3NDMyOCwgOTI3MDgsIAotICAgIDc0NzY5LCAwLCAxMTkwODcsIDkwNjksIDYxNDQsIDAsIDAsIDczODIyLCAwLCAxMjgwMTAsIDY0OTE3LCA0MTUyMSwgCi0gICAgMTE4OTM0LCA0OTQsIDEzMjUwLCAwLCA2NTA5OCwgNjM2NCwgOTU2LCAwLCAxMjgzMCwgMTA0NjIsIDczNzQwLCAwLCAwLCAwLCAKLSAgICAwLCA2NjQ0OSwgMTMyNjMsIDc0MjgxLCA2OTIxNywgMTMxNzEsIDEyNzc5NiwgMCwgMCwgOTIyOTQsIDAsIDEwNDQsIAotICAgIDQxMjc2LCAwLCAwLCAwLCA0MjA2OCwgMTE3OTUsIDAsIDAsIDAsIDAsIDQyNDUwLCAzOTA3LCAwLCA2NDUyNiwgOTE3ODQ3LCAKLSAgICA2ODE5NywgMTIyOTUsIDAsIDExNDc1LCAwLCAzMDIwLCAxMTUzNywgMCwgNjY0NDEsIDAsIDAsIDAsIDAsIDEwNTcsIDU2NiwgCi0gICAgNDI2OTYsIDAsIDMwMTYsIDQyMjc0LCA0MzQ2NCwgNjY0OTAsIDEyOTIxLCA2NjU3MSwgNzg0NzIsIDkyNTEwLCAzMDA2LCAKLSAgICA0NjIwLCAxMjcyMzcsIDAsIDAsIDAsIDY0NjU5LCAwLCAxMjc3NDksIDU1MjUzLCA2MzU3LCA2MzYyLCA4NjI2LCAwLCAwLCAKLSAgICA5MDkwLCA2NTM3NywgNDE1OTYsIDAsIDQyOTIwLCAxNjk4LCAwLCA2NDQ3NywgMCwgNDM4MTMsIDEwNTMsIDAsIDc4MjY5LCAKLSAgICAwLCAwLCAxMDUyLCAxMDUxLCA0NTksIDEwNjAsIDc0MzQ5LCA2NjQ3OSwgMCwgMCwgMCwgMCwgNDI0OTAsIDY4OSwgNjUwOCwgCi0gICAgNDE2MywgNDIyOTgsIDg2MzksIDY2NjQxLCA0MjQ2LCAwLCAwLCAxMjEzMCwgMCwgNDIzMzcsIDY0NTk2LCA2NDM3NSwgCi0gICAgNjY0ODEsIDEyNzg1MCwgMCwgMCwgNjM1OSwgMCwgNDM0NzEsIDAsIDAsIDAsIDEyNzI3NCwgMCwgNjM1OCwgNjM2MSwgCi0gICAgMTkyNiwgNjM1NiwgOTI2MjcsIDc4OTgsIDgxMTAsIDEwOTM1LCAwLCAxMDA2OSwgNTgzMCwgMCwgNDM2ODUsIDAsIDAsIDAsIAotICAgIDAsIDg2OTMsIDc4NjExLCAxMTk1NjUsIDAsIDEyMDQxMywgMCwgMTI3MjU3LCA2NTg5NCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTE5MTg3LCAyMTM1LCA3ODg2OCwgMCwgMCwgNzg4NjksIDQyMzEzLCA1NTc5LCA5MjQxMiwgMCwgMCwgMCwgMCwgNTU3OCwgCi0gICAgNDE3NzQsIDEyODExNSwgNDIwMjMsIDYyMzQsIDU2NjksIDkyMjc1LCAwLCAwLCAwLCAxMjc1MDYsIDY4MjAyLCA1NTgzLCAwLCAKLSAgICAwLCA0MjQyNiwgNTU4MCwgNDIyNzYsIDI5MjMsIDg5MiwgNTU4MiwgNDI0NjUsIDQxMzMwLCAxOTQ5ODcsIDU3OTUsIAotICAgIDY1NTEyLCAxMTkwMDYsIDY1NzAyLCAwLCAxMjA4MDEsIDY1MjUxLCAwLCA2NTcxMCwgMCwgMCwgNjc2NzIsIDAsIDUzNzAsIAotICAgIDAsIDI5MzEsIDE2MzgsIDEwOTY2LCAxMDE4OCwgNjU4NzgsIDExODg0OCwgMCwgNjk2OTQsIDAsIDEyODgzMCwgODE3MiwgCi0gICAgNDIwMTcsIDAsIDEwODQ0LCAwLCAxMjgxOTUsIDkyNDI0LCA2Mzc0LCAwLCAwLCAyODYsIDc4MDIzLCAxMDYyLCAwLCAKLSAgICAxMTk5OTksIDAsIDczOTUsIDAsIDEwNzAsIDY0OTAwLCA3MTUzLCA2MDk1LCA0MTg2NSwgMCwgMzAxNSwgMTI4MDIzLCAKLSAgICA5MTc3NjMsIDUyMTEsIDAsIDY0MDAsIDAsIDE5NDk4MywgMCwgODE4OSwgMTEyNzYsIDAsIDAsIDM3MiwgMTI4ODI5LCAwLCAKLSAgICAxMTg4NzQsIDQyMTAyLCA0MTU4NSwgMTI4MjAyLCAwLCA0MjEwMSwgMjc2LCA3ODQwMiwgMCwgMzMsIDc0MjI2LCAxMjczMDMsIAotICAgIDkwMDcsIDExODc5NiwgNDE1ODgsIDY2MDMzLCA0MjcsIDEwNzYzLCAxMTg4MTksIDAsIDEyNzg4NCwgMCwgMTAzMSwgNjI1NywgCi0gICAgMCwgNDIxMDQsIDAsIDAsIDIzMjgsIDkyNDA5LCAxMDcxLCAwLCAwLCA3NDg0OCwgMCwgMCwgMCwgMTA0NywgMCwgMCwgCi0gICAgNjQ3OTAsIDAsIDY5NzIzLCAxMDY1MSwgMCwgMCwgMCwgMCwgOTIyMDYsIDExOTE4MSwgNTcxMSwgNDE2MzMsIDEyMDk4LCAKLSAgICA2NTU3MSwgOTE2NiwgMCwgNTcxMCwgMCwgNjc5MCwgNjUxNjgsIDEzMjE2LCAwLCA2OTcxNiwgNjk3MjYsIDAsIDY0NjExLCAKLSAgICA0MTYyMywgMTk1MDAxLCA1NzE1LCA2OTY1NCwgMCwgMCwgNTcxMiwgMjc2MSwgNDE2MjAsIDY4MTI0LCAzMDc0LCA1NzIyLCAKLSAgICAwLCA4NjQzLCA3Mzc2OCwgMCwgMTE4OTA2LCAyNzU3LCAxMTA2NywgOTcxOCwgNzQ0OTgsIDg5MTAsIDEwNjg5LCA2NDc5LCAKLSAgICAwLCAwLCAwLCA3ODYwNywgOTE5NiwgNjk2NzAsIDAsIDAsIDAsIDAsIDExODkxMSwgMCwgMCwgMCwgMCwgMCwgMTIwMDEwLCAKLSAgICAwLCA4NzAxLCA2ODEzMCwgMTE5NjE2LCAxMjA1MjIsIDAsIDQyNDc3LCAwLCAxMjEyMywgNDQ5NSwgNDM1NjksIDAsIDAsIDAsIAotICAgIDY0OTQ2LCAxMDk5MiwgMCwgMTIwMDA5LCAwLCAwLCA5MzE4LCAxMjA2NjEsIDEzMjQ5LCA2NTY3OSwgNzM4MDgsIDAsIAotICAgIDY1NDU3LCA0MjI0OSwgNzYzOSwgNDM5OTUsIDY3ODQ1LCA0MjY0MSwgNTQ1NCwgMCwgMCwgMTk0OTk3LCAxMjAwMDUsIDAsIAotICAgIDAsIDUwODQsIDAsIDAsIDExODg2MSwgMCwgNzMzLCA5MTc4NzYsIDc4MDE0LCA3ODQzNiwgNzg0MzUsIDQxNjc3LCAwLCAKLSAgICA5MjE4LCAxNzMxLCAwLCAwLCAwLCAxOTUwMTAsIDAsIDAsIDAsIDEyMDAwMSwgMTI3MDE4LCA5MjQ5MiwgNTE1NSwgMCwgCi0gICAgNTM1OCwgMCwgMCwgOTE3NzY3LCA2NDQyNCwgMCwgMzg0MCwgNjQzMTQsIDQxNDMyLCAwLCAwLCA2ODQzMCwgMTE5MTE2LCAKLSAgICA0MzI1MywgNjU5NDMsIDAsIDMzNzEsIDEwOTg4LCAwLCA4NzcxLCAxNDc5LCAwLCAwLCAxMTA5LCAxMTU4MCwgMCwgNjQ2MDEsIAotICAgIDEyMjA1LCAwLCAwLCA2NDUwNywgODg2OCwgMzk5LCAwLCA3NDg0MiwgMCwgMCwgMTIxNDksIDEzMDg4LCA1NTEsIDAsIAotICAgIDEwMTU2LCAxMjExOSwgOTI1NzIsIDAsIDI1NDQsIDY1MDc0LCAxMTkyMTEsIDAsIDAsIDc4MDExLCAzNTEsIDExOTE0OSwgMCwgCi0gICAgMCwgNTUyMjksIDAsIDc0MjY4LCAwLCAwLCAwLCA0MjM3NywgMCwgMCwgMCwgMCwgMCwgOTAxMywgNDA1NCwgMCwgMCwgMCwgCi0gICAgMCwgNzM5NjAsIDU1ODUsIDY1ODgxLCAyNTQ5LCA3NDQ2OSwgMCwgMCwgNTU4NCwgODM1OCwgMCwgNzQ0MTEsIDkyMjE5LCAKLSAgICAxMDkxOSwgMCwgNzk4MCwgMCwgMCwgMCwgNDE4MDAsIDU1ODksIDAsIDI2NjQsIDQxNjEzLCA1NTg2LCAxMTg4OTAsIDAsIAotICAgIDExMzU2LCAwLCAwLCA0MzQ1MiwgNzg2MDksIDAsIDQyNTczLCA2Nzg1NiwgMCwgNzgxMjksIDAsIDAsIDkyNTM1LCA4MTM1LCAKLSAgICA2NDUwLCAxMDA1NSwgNzc5OTYsIDAsIDAsIDAsIDU2NTcsIDAsIDk2MjYsIDAsIDc3OTk0LCAxMDE3OSwgNTY1NCwgMTI5MzksIAotICAgIDkyNTczLCAxMjA3OTksIDAsIDAsIDU2NTIsIDEwOTQ1LCAwLCA2NjQ4NiwgMCwgMzY2MSwgNzg2MywgMCwgMCwgMCwgCi0gICAgNzQ1MDksIDAsIDU2NTksIDAsIDEyNzUxMCwgNjY3MjksIDU2NTUsIDAsIDQyMTY4LCAwLCAxMDU1LCA5MTc2MjgsIAotICAgIDEyNzc5MiwgNjYzMTAsIDc0MDMwLCAwLCAxMjE0NiwgNzM5NTUsIDczOTU2LCAxMTYxOCwgMCwgMTI2OTkwLCAwLCAxMDI3MiwgCi0gICAgMTAzMDQsIDEwMzY4LCA0MjUxOCwgNTk0LCAxMDI0NCwgMTAyNDgsIDc0MDcsIDAsIDY0ODcwLCAwLCAzNDY3LCAwLCAwLCAKLSAgICAzMzMxLCA5NDYsIDEwMjMxLCAxNDk1LCA4MTMxLCA3NDMzMCwgMCwgOTU2MiwgNjkyMjIsIDY1OTI3LCAwLCAwLCA2OTY5NiwgCi0gICAgNjk3NjksIDY0NjU2LCAwLCAwLCAxOTQ4MzcsIDAsIDU2NjYsIDY1MjI3LCA1MzE4LCA2Mzk5NCwgMCwgOTA5MSwgMTA3OTgsIAotICAgIDAsIDEyODE2NiwgMTAxODYsIDAsIDc3MzIsIDAsIDY0NTU2LCAwLCAwLCA1NjY4LCA3NDQ0NSwgMCwgMCwgNTY3MCwgMCwgCi0gICAgMTI3Mjk3LCAxMTgyMCwgMjk5MiwgNzgyNiwgNTY2NywgMTk5NTIsIDEyMDgwNywgMCwgMTI3NDksIDc0NTUxLCAwLCAwLCAKLSAgICA2NjQ5NiwgNDM2MSwgMTE5MjYwLCAxMzA2LCA5Mjg2LCAxNDk3LCAwLCAwLCAwLCAwLCAzNTcxLCAxMzI0NywgMCwgNzk3MywgCi0gICAgNjYzNTMsIDY4NDM1LCA3ODI3OCwgNjc4OTYsIDQzMTkyLCAwLCA3ODI2NSwgNTUzLCAxMjA2NTMsIDAsIDEyODU1NCwgCi0gICAgNTgyOSwgMCwgNDU4NywgNzgyODUsIDY1OTEyLCAwLCAxMjc0NiwgMCwgMCwgMTE5OTI0LCA1NjMzLCAxMTk5MjcsIDAsIDAsIAotICAgIDAsIDY0OTA1LCAwLCA5NTEyLCAxMjA2NzEsIDEyNzQyLCA2NDQzLCAwLCAwLCA5MTM1LCAwLCA0MTU2NCwgMCwgNTUyMTksIAotICAgIDEyODgzMiwgMCwgMCwgMTIxNDgsIDAsIDc4Mjk3LCAwLCA2NDI1NiwgMCwgMTE2NjksIDAsIDU2MzQsIDQ1MjQsIDAsIAotICAgIDEyNzI3MCwgMCwgMTE4ODgwLCAyNDI1LCA2NTE4MiwgMTI4NzY5LCA0MzYzNiwgNTIyMSwgNzg0MTAsIDMyOCwgMCwgMCwgCi0gICAgNjk4MTUsIDU2MzYsIDAsIDUzMjksIDAsIDU2MzgsIDExOTkxOCwgNzk0MCwgNjQ5MzgsIDQzMjIzLCAwLCA1NjM1LCAzMzczLCAKLSAgICAyOTg2LCA3ODI5MiwgNzQyMjMsIDM0MzcsIDc4MjkxLCA2MjAzLCA0MjQ3LCAwLCAxMTkyMCwgODI3NCwgMCwgMCwgMTY1NywgCi0gICAgNDE1NjEsIDc4Mjk5LCA3ODI5NSwgNTYzOSwgMjk1NCwgNTY2MCwgNTY0MCwgNzgzMDMsIDAsIDc4MzAwLCA0MjIyNywgMCwgCi0gICAgMCwgNDE2MzcsIDY3ODcyLCAwLCA3ODMxMCwgNDE2MjUsIDQzMzYyLCA3ODMwOSwgMTIwNzEzLCAxMTcwNSwgNTY0MiwgMCwgCi0gICAgNTQ4NiwgMCwgNDM1NiwgMTE3MTAsIDAsIDEyMDUxLCAwLCAwLCA1NjQxLCA4MjU5LCAwLCAxMDU4LCAwLCA2NzYzMCwgMCwgCi0gICAgMCwgMTE0NCwgNzg3NTAsIDAsIDQyMjI4LCAwLCA3Mzg5MCwgMTE4OTcyLCAwLCA2NTMyMiwgMCwgNTY0NSwgNjQ5NjQsIAotICAgIDg2NTIsIDI1NDcsIDY2NDg0LCA0MzYzNCwgMCwgNTYwOCwgNjU4OTAsIDQzODA4LCAwLCA2NzYyMSwgMTE5OTM0LCA5MDAwLCAKLSAgICAwLCAwLCA5MjY3MywgMTg2NSwgMCwgNTYxMywgNzQyNjcsIDAsIDAsIDU2MTAsIDAsIDAsIDY1ODI2LCAyMDY5LCAwLCAKLSAgICAxMDc4NywgNDM5OTksIDI5OTcsIDAsIDU2MDksIDc4MzE2LCA2NTMxOSwgNzgzMTMsIDEyMzE2LCA2NTM3NiwgMjQxMiwgMCwgCi0gICAgODE4NiwgOTgwNywgNzQyNjksIDAsIDEzMTMwLCA2NTg3NCwgMCwgNTgwNywgMCwgMTAwMzAsIDUzMDYsIDEyOTM2LCAwLCAwLCAKLSAgICAxMTcwNCwgMCwgOTI1ODMsIDEwMjExLCAwLCAwLCAwLCAwLCAxMTcwNiwgOTcxMCwgMCwgMCwgMCwgNDEzLCA2NTYyMywgCi0gICAgNzExOCwgMCwgOTEzMywgNzQyNjIsIDAsIDEwNDIsIDAsIDY0Nzc5LCAxMjE3MSwgMTE5MjQwLCA2MTg1LCA2NDc3NiwgCi0gICAgNDk4NCwgMCwgNzA4LCAxMTM5MSwgMCwgMTIyNDEsIDkyNzIwLCAwLCAxMzA4LCAwLCAyNTM0LCA4MTAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDE5MTcsIDMwMDAsIDAsIDAsIDEyMDczOSwgMjM2NCwgOTI0NDMsIDc0NDcwLCA2NjYxOCwgNjU2ODAsIDAsIDEwMDI3LCAKLSAgICAwLCAxMjgxNTQsIDEyMzM3LCAxMjA3MjIsIDEyNzM2OCwgMCwgMjk4MCwgNzU1LCA2OTc3NCwgOTMxLCAxMzEyNCwgNjgxODIsIAotICAgIDYzNjMsIDI3NDgsIDAsIDAsIDY1MDQxLCAwLCA0NDAxMSwgODczMCwgMCwgMTI3ODU0LCA3ODMxMiwgNzI3NCwgMTE5MjUwLCAKLSAgICAwLCA3Mjc1LCA3ODMwNCwgOTM1LCAwLCA2NTg0MCwgMzc3LCA0MjMyNSwgMTE2NDksIDEyNzM2MywgNjUyNTMsIDY0MzAxLCAKLSAgICAxMjg4MzUsIDc4MzA4LCA0MjM0MSwgNjUyODQsIDI0MTcsIDAsIDEyODg0LCAxOTkxMiwgNzkwNywgMTA3NjgsIDAsIAotICAgIDE5NDk5OCwgMCwgMTA2NzMsIDExOTIxNywgNzI0OCwgMCwgMTI4MzQ2LCAxNzgxLCA1NDk2LCAzNjI3LCA2MiwgMTY0OSwgMCwgCi0gICAgOTY0LCAwLCAxMjc4NzYsIDc4MjI2LCAxMjg3NzUsIDEyNzUxMiwgMCwgMCwgMCwgMCwgNDM2ODksIDEyNzkxMSwgMTMxNDIsIAotICAgIDc4ODEyLCA0MjQxNSwgNjY1NzUsIDQ1NDIsIDc0MDM3LCA0MzU0NywgMCwgMCwgNzY3NywgMjk5MSwgNDk0NiwgNDI0NTQsIAotICAgIDAsIDc5NDksIDAsIDAsIDExMzQxLCA0MjQ5NCwgMzA3MywgNjU2MjUsIDk3MTQsIDExNjkyLCA0NjU3LCAwLCA5MjcyNCwgCi0gICAgNjQ3OCwgOTg5OCwgNDM2NzMsIDY1MjM3LCA2MjQxLCA3MTA2LCA0ODc3LCAwLCA2MjM4LCAwLCAxMDU0OCwgMTI3MDQ5LCAKLSAgICA0NDA5LCAwLCAwLCA2NDc5OCwgMCwgNTM0NiwgMCwgMTIwNTI4LCA2MjM3LCA0ODc0LCAwLCA5MTc2LCAwLCAwLCA2NTIzMSwgCisgICAgNDIyNTAsIDAsIDEyODg2NCwgNjk2NjcsIDEyMjQ1LCAxNTY4LCA5NDAzMywgMCwgMCwgMTI4MTIwLCAwLCA3NDMyOCwgCisgICAgOTI3MDgsIDc0NzY5LCAwLCAxMTkwODcsIDkwNjksIDYxNDQsIDAsIDAsIDczODIyLCAwLCAxMjgwMTAsIDY0OTE3LCAKKyAgICA0MTUyMSwgMTE4OTM0LCA0OTQsIDEzMjUwLCAwLCA2NTA5OCwgNjM2NCwgOTU2LCAwLCAxMjgzMCwgMTA0NjIsIDczNzQwLCAKKyAgICA3MzczNCwgMCwgMCwgMCwgNjY0NDksIDEzMjYzLCA3NDI4MSwgNjkyMTcsIDEzMTcxLCAxMjc3OTYsIDAsIDAsIDkyMjk0LCAKKyAgICAwLCAxMDQ0LCA0MTI3NiwgMCwgMCwgMCwgNDIwNjgsIDExNzk1LCAwLCAwLCAwLCAwLCA0MjQ1MCwgMzkwNywgMCwgNjQ1MjYsIAorICAgIDExODI5LCA2ODE5NywgMTIyOTUsIDAsIDExNDc1LCAwLCAzMDIwLCAxMTUzNywgMCwgNjY0NDEsIDk4MzQ0NiwgNzA5OCwgMCwgCisgICAgMCwgMTA1NywgNTY2LCA0MjY5NiwgMCwgMzAxNiwgNDIyNzQsIDQzNDY0LCA2NjQ5MCwgMTI5MjEsIDY2NTcxLCA3ODQ3MiwgCisgICAgOTI1MTAsIDMwMDYsIDQ2MjAsIDEyNzIzNywgOTgzNTc4LCAwLCAwLCA2NDY1OSwgMCwgMTI3NzQ5LCA1NTI1MywgNjM1NywgCisgICAgNjM2MiwgODYyNiwgNzEzMzcsIDIyMTYsIDkwOTAsIDY1Mzc3LCA0MTU5NiwgMCwgNDI5MjAsIDE2OTgsIDAsIDY0NDc3LCAwLCAKKyAgICA0MzgxMywgMTA1MywgMCwgNzgyNjksIDAsIDEyNjU4NiwgMTA1MiwgMTA1MSwgNDU5LCAxMDYwLCA3NDM0OSwgNjY0NzksIDAsIAorICAgIDAsIDAsIDAsIDQyNDkwLCA2ODksIDY1MDgsIDQxNjMsIDQyMjk4LCA4NjM5LCA2NjY0MSwgNDI0NiwgMCwgMCwgMTIxMzAsIAorICAgIDAsIDQyMzM3LCA2NDU5NiwgNjQzNzUsIDY2NDgxLCAxMjc4NTAsIDAsIDAsIDYzNTksIDAsIDQzNDcxLCA5ODM3NTksIDAsIAorICAgIDAsIDEyNzI3NCwgMCwgNjM1OCwgNjM2MSwgMTkyNiwgNjM1NiwgOTI2MjcsIDc4OTgsIDgxMTAsIDEwOTM1LCAwLCAxMDA2OSwgCisgICAgNTgzMCwgMCwgNDM2ODUsIDAsIDAsIDAsIDAsIDg2OTMsIDc4NjExLCAxMTk1NjUsIDk4Mzc5OSwgMTIwNDEzLCAwLCAKKyAgICAxMjcyNTcsIDY1ODk0LCAwLCAwLCAwLCA5ODM5MTQsIDAsIDAsIDExOTE4NywgMjEzNSwgNzg4NjgsIDAsIDAsIDc4ODY5LCAKKyAgICA0MjMxMywgNTU3OSwgOTI0MTIsIDAsIDk4MzA4MiwgOTQwMDIsIDAsIDU1NzgsIDQxNzc0LCAxMjgxMTUsIDQyMDIzLCAKKyAgICA2MjM0LCA1NjY5LCA5MjI3NSwgMCwgMCwgMCwgMTI3NTA2LCA2ODIwMiwgNTU4MywgMCwgMCwgNDI0MjYsIDU1ODAsIAorICAgIDQyMjc2LCAyOTIzLCA4OTIsIDIyMjAsIDQyNDY1LCA0MTMzMCwgMTk0OTg3LCA1Nzk1LCA2NTUxMiwgMTE5MDA2LCA2NTcwMiwgCisgICAgMCwgMTIwODAxLCA2NTI1MSwgMCwgNjU3MTAsIDAsIDAsIDY3NjcyLCAwLCA1MzcwLCAwLCAyOTMxLCAxNjM4LCAxMDk2NiwgCisgICAgMTAxODgsIDY1ODc4LCAxMTg4NDgsIDAsIDY5Njk0LCA2OTg3OSwgMTI4ODMwLCA4MTcyLCA0MjAxNywgMCwgMTA4NDQsIDAsIAorICAgIDEyODE5NSwgOTI0MjQsIDYzNzQsIDAsIDAsIDI4NiwgNzgwMjMsIDEwNjIsIDAsIDExOTk5OSwgMCwgNzM5NSwgMCwgMTA3MCwgCisgICAgNjQ5MDAsIDcxNTMsIDYwOTUsIDQxODY1LCAwLCAzMDE1LCAxMjgwMjMsIDEyNjQ2NSwgNTIxMSwgOTgzMDgzLCA2NDAwLCAwLCAKKyAgICAxOTQ5ODMsIDcwMDU0LCA4MTg5LCAxMTI3NiwgMCwgMCwgMzcyLCAxMjg4MjksIDAsIDExODg3NCwgNDIxMDIsIDQxNTg1LCAKKyAgICAxMjgyMDIsIDAsIDQyMTAxLCAyNzYsIDc4NDAyLCAwLCAzMywgNzQyMjYsIDEyNzMwMywgOTAwNywgMTE4Nzk2LCA0MTU4OCwgCisgICAgNjYwMzMsIDQyNywgMTA3NjMsIDExODgxOSwgMCwgMTI3ODg0LCAwLCAxMDMxLCA2MjU3LCAwLCA0MjEwNCwgMCwgOTgzOTcxLCAKKyAgICAyMzI4LCA5MjQwOSwgMTA3MSwgNDI4OTksIDAsIDc0ODQ4LCAwLCA5ODM1ODAsIDAsIDEwNDcsIDAsIDAsIDY0NzkwLCAwLCAKKyAgICA2OTcyMywgMTA2NTEsIDAsIDAsIDAsIDAsIDkyMjA2LCAxMTkxODEsIDU3MTEsIDQxNjMzLCAxMjA5OCwgNjU1NzEsIDkxNjYsIAorICAgIDAsIDU3MTAsIDAsIDY3OTAsIDY1MTY4LCAxMzIxNiwgMCwgNjk3MTYsIDY5NzI2LCAwLCA2NDYxMSwgNDE2MjMsIDE5NTAwMSwgCisgICAgNTcxNSwgNjk2NTQsIDAsIDAsIDU3MTIsIDI3NjEsIDQxNjIwLCA2ODEyNCwgMzA3NCwgNTcyMiwgMCwgODY0MywgNzM3NjgsIAorICAgIDAsIDExODkwNiwgMjc1NywgMTEwNjcsIDk3MTgsIDc0NDk4LCA4OTEwLCAxMDY4OSwgNjQ3OSwgMCwgMCwgMCwgNzg2MDcsIAorICAgIDkxOTYsIDY5NjcwLCAwLCAwLCAwLCAwLCAxMTg5MTEsIDAsIDAsIDAsIDAsIDAsIDEyMDAxMCwgMCwgODcwMSwgNjgxMzAsIAorICAgIDExOTYxNiwgMTIwNTIyLCAwLCA0MjQ3NywgMTk0OTk0LCAxMjEyMywgNDQ5NSwgNDM1NjksIDAsIDAsIDAsIDY0OTQ2LCAKKyAgICAxMDk5MiwgMCwgMTIwMDA5LCAwLCAwLCA5MzE4LCA5Mzk4NiwgMTMyNDksIDY1Njc5LCA3MzgwOCwgMCwgNjU0NTcsIAorICAgIDQyMjQ5LCA3NjM5LCA0Mzk5NSwgNjc4NDUsIDQyNjQxLCA1NDU0LCAwLCAwLCAxOTQ5OTcsIDEyMDAwNSwgMCwgOTgzOTU3LCAKKyAgICA1MDg0LCAwLCAwLCAxMTg4NjEsIDAsIDczMywgOTE3ODc2LCA3ODAxNCwgNzg0MzYsIDc4NDM1LCA0MTY3NywgMCwgOTIxOCwgCisgICAgMTczMSwgMCwgOTgzNzM3LCAwLCA2Nzk5MCwgMCwgMCwgMCwgMTIwMDAxLCAxMjcwMTgsIDkyNDkyLCA1MTU1LCAxMjAwMDAsIAorICAgIDUzNTgsIDk4MzczNSwgMCwgOTE3NzY3LCA2NDQyNCwgOTgzMjI1LCAzODQwLCA2NDMxNCwgNDE0MzIsIDAsIDc4MzE1LCAKKyAgICA2ODQzMCwgNjc5ODAsIDQzMjUzLCA2NTk0MywgMCwgMzM3MSwgMTA5ODgsIDAsIDg3NzEsIDE0NzksIDAsIDAsIDExMDksIAorICAgIDExNTgwLCAwLCA2NDYwMSwgMTIyMDUsIDAsIDAsIDY0NTA3LCA4ODY4LCAzOTksIDY3OTc4LCA3NDg0MiwgOTgzMjc2LCAKKyAgICA5ODM3MTIsIDEyMTQ5LCAxMzA4OCwgNTUxLCAwLCAxMDE1NiwgMTIxMTksIDkyNTcyLCAwLCAyNTQ0LCA2NTA3NCwgCisgICAgMTE5MjExLCAwLCAwLCA3ODAxMSwgMzUxLCAxMTkxNDksIDAsIDAsIDU1MjI5LCAwLCA3NDI2OCwgMCwgMCwgMCwgNDIzNzcsIAorICAgIDAsIDAsIDAsIDk4MzkxNSwgMCwgOTAxMywgNDA1NCwgMCwgOTgzNTcwLCAwLCAwLCA3Mzk2MCwgNTU4NSwgNjU4ODEsIAorICAgIDI1NDksIDc0NDY5LCAwLCAwLCA1NTg0LCA4MzU4LCAwLCA2NDIxNSwgOTIyMTksIDEwOTE5LCAwLCA3OTgwLCAxMjY2MDEsIAorICAgIDk4Mzc3NSwgMjIxOCwgNDE4MDAsIDU1ODksIDAsIDI2NjQsIDQxNjEzLCA1NTg2LCAxMTg4OTAsIDAsIDExMzU2LCAwLCAwLCAKKyAgICA0MzQ1MiwgNzg2MDksIDAsIDQyNTczLCA2Nzg1NiwgMCwgNzgxMjksIDAsIDAsIDc0MzkyLCA4MTM1LCA2NDUwLCAxMDA1NSwgCisgICAgNzc5OTYsIDAsIDAsIDExOTIyNSwgNTY1NywgMCwgOTYyNiwgMCwgNzc5OTQsIDEwMTc5LCA1NjU0LCAxMjkzOSwgOTI1NzMsIAorICAgIDEyMDc5OSwgMCwgMCwgNTY1MiwgMTA5NDUsIDAsIDY2NDg2LCAwLCAzNjYxLCA3ODYzLCAwLCAwLCAwLCA3NDUwOSwgCisgICAgOTgzODQzLCA1NjU5LCAwLCA3ODY5MiwgNjY3MjksIDU2NTUsIDAsIDQyMTY4LCAwLCAxMDU1LCA5MTc2MjgsIDEyNzc5MiwgCisgICAgNjYzMTAsIDc0MDMwLCAwLCAxMjE0NiwgNzM5NTUsIDczOTU2LCAxMTYxOCwgMCwgMTI2OTkwLCAwLCAxMDI3MiwgMTAzMDQsIAorICAgIDEwMzY4LCA0MjUxOCwgNTk0LCAxMDI0NCwgMTAyNDgsIDc0MDcsIDk4Mzg3OCwgNjQ4NzAsIDAsIDM0NjcsIDk4Mzg4MiwgMCwgCisgICAgMzMzMSwgOTQ2LCAxMDIzMSwgMTQ5NSwgODEzMSwgNzQzMzAsIDAsIDk1NjIsIDY5MjIyLCA2NTkyNywgMCwgNzAwMzYsIAorICAgIDY5Njk2LCA2OTc2OSwgNjQ2NTYsIDk4MzcxNywgMCwgOTQwMjAsIDcwMDU2LCA1NjY2LCA2NTIyNywgNTMxOCwgNjM5OTQsIAorICAgIDAsIDkwOTEsIDEwNzk4LCAwLCAxMjgxNjYsIDEwMTg2LCAwLCA3NzMyLCA5ODM3MTUsIDY0NTU2LCAwLCAwLCA1NjY4LCAKKyAgICA3NDQ0NSwgMCwgMTI4NjYzLCA1NjcwLCAxMjY2MTAsIDEyNzI5NywgMTE4MjAsIDI5OTIsIDc4MjYsIDU2NjcsIDE5OTUyLCAKKyAgICAxMjA4MDcsIDAsIDEyNzQ5LCA3NDU1MSwgMCwgMCwgNjY0OTYsIDQzNjEsIDExOTI2MCwgMTMwNiwgOTI4NiwgMTQ5NywgCisgICAgMTI4Mjg2LCA5NDAwNCwgMCwgMCwgMzU3MSwgMTMyNDcsIDAsIDc5NzMsIDY2MzUzLCA2ODQzNSwgNzgyNzgsIDY3ODk2LCAKKyAgICA0MzE5MiwgMCwgNzgyNjUsIDU1MywgMTIwNjUzLCAwLCAxMjg1NTQsIDU4MjksIDAsIDQ1ODcsIDc4Mjg1LCA2NTkxMiwgMCwgCisgICAgMTI3NDYsIDAsIDAsIDExOTkyNCwgNTYzMywgMTE5OTI3LCA5NDEwMSwgOTQxMDIsIDk0MDk5LCA2NDkwNSwgOTQxMDUsIAorICAgIDk1MTIsIDk0MTAzLCAxMjc0MiwgNjQ0MywgOTgzNzk3LCAwLCA5MTM1LCAwLCA0MTU2NCwgMCwgNTUyMTksIDEyODgzMiwgCisgICAgOTgzODQyLCAwLCAxMjE0OCwgMCwgNzgyOTcsIDAsIDY0MjU2LCAwLCAxMTY2OSwgMCwgNTYzNCwgNDUyNCwgMCwgMTI3MjcwLCAKKyAgICAwLCAxMTg4ODAsIDI0MjUsIDY1MTgyLCAxMjg3NjksIDQzNjM2LCA1MjIxLCA3ODQxMCwgMzI4LCAwLCA5ODM4MDAsIAorICAgIDY5ODE1LCA1NjM2LCAwLCA1MzI5LCAwLCA1NjM4LCAxMTk5MTgsIDc5NDAsIDY0OTM4LCA0MzIyMywgNDM3NjAsIDU2MzUsIAorICAgIDMzNzMsIDI5ODYsIDc4MjkyLCA3NDIyMywgMzQzNywgNzgyOTEsIDYyMDMsIDQyNDcsIDAsIDExOTIwLCA4Mjc0LCAwLCAwLCAKKyAgICAxNjU3LCA0MTU2MSwgNzgyOTksIDc4Mjk1LCA1NjM5LCAyOTU0LCA1NjYwLCA1NjQwLCA3ODMwMywgOTgzNjc2LCA3ODMwMCwgCisgICAgNDIyMjcsIDAsIDAsIDQxNjM3LCA2Nzg3MiwgMCwgNzgzMTAsIDQxNjI1LCA0MzM2MiwgNzgzMDksIDEyMDcxMywgMTE3MDUsIAorICAgIDU2NDIsIDAsIDU0ODYsIDAsIDQzNTYsIDExNzEwLCAwLCAxMjA1MSwgNjk5MzgsIDAsIDU2NDEsIDgyNTksIDAsIDEwNTgsIAorICAgIDAsIDY3NjMwLCAwLCAwLCAxMTQ0LCA3ODc1MCwgMCwgNDIyMjgsIDAsIDczODkwLCAxMTg5NzIsIDAsIDI4MDAsIDAsIAorICAgIDU2NDUsIDY0OTY0LCA4NjUyLCAyNTQ3LCA2NjQ4NCwgNDM2MzQsIDAsIDU2MDgsIDY1ODkwLCA0MzgwOCwgMCwgNjc2MjEsIAorICAgIDExOTkzNCwgOTAwMCwgMCwgMCwgOTI2NzMsIDE4NjUsIDAsIDU2MTMsIDY5OTUwLCAwLCAwLCA1NjEwLCAwLCAwLCA2NTgyNiwgCisgICAgMjA2OSwgMCwgMTA3ODcsIDQzOTk5LCAyOTk3LCAwLCA1NjA5LCA3ODMxNiwgNjUzMTksIDc4MzEzLCAxMjMxNiwgNjUzNzYsIAorICAgIDI0MTIsIDAsIDgxODYsIDk4MDcsIDc0MjY5LCA5MjU0NywgMTMxMzAsIDY1ODc0LCAwLCA1ODA3LCAwLCAxMDAzMCwgNTMwNiwgCisgICAgMTIzNjQsIDEyODA2NCwgMCwgMTE3MDQsIDAsIDkyNTgzLCAxMDIxMSwgMCwgMCwgMCwgMCwgMTE3MDYsIDk3MTAsIDAsIDAsIAorICAgIDAsIDQxMywgNjU2MjMsIDcxMTgsIDAsIDkxMzMsIDc0MjYyLCAwLCAxMDQyLCAwLCA2NDc3OSwgMTIxNzEsIDExOTI0MCwgCisgICAgNjE4NSwgNjQ3NzYsIDQ5ODQsIDAsIDcwOCwgMTEzOTEsIDAsIDEyMjQxLCA5MjcyMCwgOTgzODkwLCAxMzA4LCAwLCAyNTM0LCAKKyAgICA4MTAsIDAsIDAsIDAsIDAsIDAsIDE5MTcsIDMwMDAsIDAsIDAsIDEyMDczOSwgMjM2NCwgOTI0NDMsIDc0NDcwLCA2NjYxOCwgCisgICAgNjU2ODAsIDEyMDc3OSwgMTAwMjcsIDAsIDEyODE1NCwgMTIzMzcsIDEyMDcyMiwgMTI3MzY4LCA5ODMxNjcsIDI5ODAsIAorICAgIDc1NSwgNjk3NzQsIDkzMSwgMTMxMjQsIDY4MTgyLCA2MzYzLCAyNzQ4LCAwLCAwLCA2NTA0MSwgOTIyNzYsIDQ0MDExLCAKKyAgICA4NzMwLCA5ODMwNjcsIDEyNzg1NCwgNzgzMTIsIDcyNzQsIDExOTI1MCwgMCwgNzI3NSwgNzgzMDQsIDkzNSwgMCwgNjU4NDAsIAorICAgIDM3NywgNDIzMjUsIDExNjQ5LCAxMjczNjMsIDY1MjUzLCA2NDMwMSwgMTI4ODM1LCA3ODMwOCwgNDIzNDEsIDY1Mjg0LCAKKyAgICAyNDE3LCAwLCAxMjg4NCwgMTk5MTIsIDc5MDcsIDEwNzY4LCAwLCAxOTQ5OTgsIDAsIDEwNjczLCAxMTkyMTcsIDcyNDgsIDAsIAorICAgIDEyODM0NiwgMTc4MSwgNTQ5NiwgMzYyNywgNjIsIDE2NDksIDAsIDk2NCwgMCwgMTI3ODc2LCA3ODIyNiwgMTI4Nzc1LCAKKyAgICAxMjc1MTIsIDAsIDAsIDAsIDAsIDQzNjg5LCAxMjc5MTEsIDEzMTQyLCA3ODgxMiwgNDI0MTUsIDY2NTc1LCA0NTQyLCAKKyAgICA2OTkwOSwgNDM1NDcsIDAsIDAsIDc2NzcsIDI5OTEsIDQ5NDYsIDQyNDU0LCAxMTU2NSwgNzk0OSwgMCwgOTgzOTA5LCAKKyAgICAxMTM0MSwgNDI0OTQsIDMwNzMsIDY1NjI1LCA5NzE0LCAxMTY5MiwgNDY1NywgMCwgOTI3MjQsIDY0NzgsIDk4OTgsIAorICAgIDQzNjczLCA2NTIzNywgNjI0MSwgNzEwNiwgNDg3NywgOTgzNzg2LCA2MjM4LCAwLCAxMDU0OCwgMTI3MDQ5LCA0NDA5LCAwLCAKKyAgICAwLCA2NDc5OCwgMCwgNTM0NiwgMCwgOTQwNDcsIDYyMzcsIDQ4NzQsIDAsIDkxNzYsIDAsIDEyNjU1MywgNjUyMzEsIAogICAgIDY1ODg0LCAxMjY3OCwgNzg3NDgsIDExODkxMiwgMTEzNzgsIDQ0MDE4LCA0Mjc4NSwgMjQwOCwgMzI1MSwgMCwgMCwgNTY4NSwgCiAgICAgMCwgMjQ2MSwgMTEwNTIsIDcwOTEsIDUzNDIsIDgzMTcsIDAsIDY4MTYzLCA1MzQwLCAwLCAxMjc4MjAsIDQzNjM1LCAKLSAgICA3MzkyOCwgMTI3NTI5LCAwLCAwLCAwLCAxMjg1MTAsIDY1NDgyLCAwLCA5MTQyLCAwLCAwLCAwLCAxMDkzOCwgMCwgCisgICAgNzM5MjgsIDEyNzUyOSwgMCwgMCwgMCwgMTI4NTEwLCA2NTQ4MiwgMCwgOTE0MiwgMCwgMTI2NDcwLCAwLCAxMDkzOCwgMCwgCiAgICAgMTE4NzkwLCAxMTgyLCAyNTQyLCA0ODI2LCAwLCAwLCAxMjgxNzYsIDUyOSwgODU4MCwgMCwgMCwgMTA1ODYsIDEwNzkwLCAKLSAgICAxMDgzOSwgNjYwMjMsIDQxNTkzLCA0MTIwNywgMCwgMCwgNDE1OTQsIDIyNSwgNDI4MjgsIDAsIDAsIDAsIDExMzc2LCAKKyAgICAxMDgzOSwgNjYwMjMsIDQxNTkzLCA0MTIwNywgMCwgMCwgNDE1OTQsIDIyNSwgNDI4MjgsIDAsIDAsIDk4MzkyOSwgMTEzNzYsIAogICAgIDc0Mzc5LCAxMDcyMSwgNjc2NjQsIDM0MzgsIDQyMDk3LCAxMjcyNjcsIDExMDg0LCAzMTk0LCA0MTg3MCwgMjY2LCA3ODMwNSwgCi0gICAgMCwgNDE4NzMsIDEyMDU3NSwgMTEzMjQsIDEyMDUzMSwgMCwgODQyMCwgNjQ5MTgsIDEyODg0NCwgNDE4NzEsIDQxMzM4LCAKLSAgICAzNzM0LCA3NzM0LCA0MzY4MywgODc1MCwgNjY2MDUsIDY2MDExLCAwLCA0MDk2NSwgMTI3OTM3LCAwLCA1MTYxLCAxMDU3MiwgCi0gICAgMCwgMCwgMCwgNjQzNDksIDcyODcsIDQyMTYyLCAxMjc1NTIsIDAsIDAsIDExOTQ4LCA2OTIyMCwgMTIzNTksIDQzNDI5LCAKLSAgICA0MTM2OSwgMTY5NywgMTIxOTEsIDAsIDY4NjMzLCA3Mjg2LCAwLCA2ODYzNSwgMTAwMzEsIDAsIDk4NzAsIDY4NjQ1LCAKLSAgICA4NjIwLCA2NTgyNCwgMCwgMTE5MzgsIDAsIDcyODUsIDAsIDExOTU3NywgNDI2NzgsIDAsIDQzNjc3LCA0MTU4MywgMCwgCi0gICAgNjU3OTksIDkyNjIzLCAwLCAwLCAwLCA3ODE2OSwgNjYxOTksIDAsIDM2MDksIDY4NjI0LCAwLCA4MzIsIDEyMDY5MywgCi0gICAgMTIwNzcwLCA3ODQ3MywgNjYwMDcsIDc4NDcxLCA2NTcwMywgMCwgMCwgNDI3MzIsIDUxODAsIDkyNjk5LCA0MTM5NSwgCi0gICAgNDE1MzAsIDExNjkxLCA2NDc3MywgOTIyMTQsIDc0MDAyLCAwLCAwLCAxMjg2NDUsIDYzNDgsIDI0MywgMTMyMDAsIDAsIAotICAgIDYwMjQsIDkyMzA5LCA5OTc5LCAxMDAzNywgNDE1MjksIDEwNjQ4LCA4NTM4LCA0MzY4NywgMCwgMCwgNDI4NSwgNjYxOTUsIAotICAgIDAsIDQyMzAsIDAsIDEzMzA3LCA0MzI1NiwgOTIzNTMsIDc1NjMsIDQyMzc2LCAwLCA2ODQ0MiwgMTIwNTEyLCAwLCAwLCAKLSAgICAyMTQsIDAsIDAsIDc4NDY2LCA2NTg5MywgMTIyMDgsIDk5NzMsIDAsIDY2MzExLCA2NTU4OSwgMTI4Mjc3LCAyNjAzLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA2MDIyLCAwLCAyODg0LCAwLCAxMTYyMCwgMCwgNDMsIDAsIDY2NDUzLCAxMDE2LCA0MTEwNywgMCwgCi0gICAgNDExMjEsIDM4ODUsIDkyLCA2NTQ1NiwgNjQ2MDgsIDAsIDc0ODAxLCAwLCAyMDc0LCAwLCA3ODI4MywgMCwgMTI0NTMsIAotICAgIDEyODEyOCwgMCwgNzQyNDEsIDAsIDY3OTEsIDEyNDU3LCA3ODI2OCwgMCwgMCwgMCwgNzgyNzksIDAsIDAsIDkyMzU4LCAKLSAgICA2NjYzNywgNzk5NSwgODc1OSwgNDM0MjEsIDc4Mjc3LCAxMjQ0OSwgMTI4NTUyLCAwLCAwLCA4NzUyLCAzMTk3LCA0NzIwLCAKLSAgICAxMDE2NSwgMCwgMTE5MjQ5LCAwLCAxMTU5NSwgNjQ4OTMsIDAsIDQzNDM1LCAwLCAwLCA0OTkzLCAwLCA2MTY4LCAxMDkzNCwgCi0gICAgMTk0NiwgNzQxLCAwLCA1NDk0LCA0NjM5LCAwLCAxOTkwLCA2NjU4OSwgNDQ5OCwgNzg2NjQsIDExOTE4MywgMCwgMCwgCi0gICAgNjk3MzQsIDI5NjAsIDczNzc5LCAwLCA4OTY5LCAxMjgxMTcsIDQzNDI0LCAxMjcwNTksIDAsIDI5NTAsIDExOTU3OSwgCi0gICAgNjIxMCwgNjU3NTMsIDM3MCwgMCwgMCwgMCwgNDk1MywgMCwgMCwgMCwgMCwgNjkyMzAsIDAsIDAsIDY1Njg4LCAwLCA1MDYzLCAKLSAgICAzNTE3LCAyOTY0LCA0MzY2MywgOTE3NzYyLCA2MzQ0LCA3NDc5MSwgMTA1NjYsIDEwMTQ0LCA2NjMzMywgODI1MiwgNzI5LCAKLSAgICA2NjAxNiwgNzgyNTMsIDAsIDAsIDY0OTIzLCAxMjgwNDAsIDQzNjY5LCA5MDMyLCA3ODI2MywgNzgyNjQsIDAsIDQxMjE1LCAKLSAgICAwLCA2NTg4MywgMCwgOTE3Nzc0LCAxMjA2MDIsIDM3NjEsIDAsIDAsIDAsIDAsIDEyOTEyLCAxMTkwMTIsIDM4NTAsIAotICAgIDEyODE5MSwgMCwgMCwgMCwgMCwgOTA4LCAwLCA4NjExLCAwLCAwLCAxMjc1NTUsIDQzNjkxLCA0MTE5NywgMCwgODk3OCwgCi0gICAgMTIwNTQwLCAxMTkxMzUsIDQxNTg2LCAxMDUyNywgMCwgOTE3ODQ4LCAzODQ4LCA3ODczOSwgMTk0OTM3LCAxMjc1MzYsIAotICAgIDY1MjQxLCA1MzM2LCAwLCAxMjg3ODYsIDY2MywgMCwgMTA3ODAsIDAsIDAsIDc4NzY3LCAwLCAxMjcxNjMsIDY4MTkzLCAKLSAgICAzNDcsIDAsIDAsIDc4Nzc1LCA2NDY3NSwgNDE1ODIsIDc4Nzc0LCA3ODc0NCwgNjU1NzksIDEyOTgwLCA3ODc2OSwgMTIxNDMsIAorICAgIDEyMDE4MywgNDE4NzMsIDEyMDU3NSwgMTEzMjQsIDEyMDUzMSwgMCwgODQyMCwgNjQ5MTgsIDEyODg0NCwgNDE4NzEsIAorICAgIDQxMzM4LCAzNzM0LCA3NzM0LCA0MzY4MywgODc1MCwgNjY2MDUsIDY2MDExLCA5MjUxNCwgNDA5NjUsIDEyNzkzNywgMCwgCisgICAgNTE2MSwgMTA1NzIsIDAsIDAsIDAsIDY0MzQ5LCA3Mjg3LCA0MjE2MiwgMTI3NTUyLCAwLCAxMjY2MDUsIDExOTQ4LCAKKyAgICA2OTIyMCwgMTIzNTksIDQzNDI5LCA0MTM2OSwgMTY5NywgMTIxOTEsIDAsIDY4NjMzLCA3Mjg2LCAwLCA2ODYzNSwgMTAwMzEsIAorICAgIDAsIDk4NzAsIDY4NjQ1LCA4NjIwLCA2NTgyNCwgMCwgMTE5MzgsIDAsIDcyODUsIDAsIDExOTU3NywgNDI2NzgsIDAsIAorICAgIDQzNjc3LCA0MTU4MywgMCwgNjU3OTksIDkyNjIzLCAwLCAwLCA5ODM5MjcsIDc4MTY5LCA2NjE5OSwgMCwgMzYwOSwgCisgICAgNjg2MjQsIDAsIDgzMiwgMTIwNjkzLCAxMjA3NzAsIDc4NDczLCA2NjAwNywgNzg0NzEsIDY1NzAzLCAwLCAwLCA0MjczMiwgCisgICAgNTE4MCwgOTI2OTksIDQxMzk1LCA0MTUzMCwgMTE2OTEsIDY0NzczLCA5MjIxNCwgNzQwMDIsIDAsIDAsIDEyODY0NSwgCisgICAgNjM0OCwgMjQzLCAxMzIwMCwgOTgzODA0LCA2MDI0LCA5MjMwOSwgOTk3OSwgMTAwMzcsIDQxNTI5LCAxMDY0OCwgODUzOCwgCisgICAgNDM2ODcsIDAsIDAsIDQyODUsIDY2MTk1LCAwLCA0MjMwLCAwLCA3MzY3LCA0MzI1NiwgOTIzNTMsIDc1NjMsIDQyMzc2LCAwLCAKKyAgICA2ODQ0MiwgMTIwNTEyLCAwLCAwLCAyMTQsIDAsIDAsIDc4NDY2LCA2NTg5MywgMTIyMDgsIDk5NzMsIDAsIDY2MzExLCAKKyAgICA2NTU4OSwgMTI4Mjc3LCAyNjAzLCAwLCAwLCAwLCA3MDA0NywgMCwgNjAyMiwgMCwgMjg4NCwgMCwgMTE2MjAsIDAsIDQzLCAKKyAgICAwLCA2NjQ1MywgMTAxNiwgNDExMDcsIDAsIDQxMTIxLCAzODg1LCA5MiwgNjU0NTYsIDY0NjA4LCAwLCA3NDgwMSwgMCwgCisgICAgMjA3NCwgMCwgNzgyODMsIDAsIDEyNDUzLCAxMjgxMjgsIDk4MzgxNywgNzQyNDEsIDEyNjU2OCwgNjc5MSwgMTI0NTcsIAorICAgIDc4MjY4LCAwLCAwLCAwLCA3ODI3OSwgMCwgMCwgOTIzNTgsIDY2NjM3LCA3OTk1LCA4NzU5LCA0MzQyMSwgNzgyNzcsIAorICAgIDEyNDQ5LCAxMjg1NTIsIDAsIDAsIDg3NTIsIDMxOTcsIDQ3MjAsIDEwMTY1LCAwLCAxMTkyNDksIDAsIDExNTk1LCA2NDg5MywgCisgICAgMCwgNDM0MzUsIDAsIDAsIDQ5OTMsIDAsIDYxNjgsIDEwOTM0LCAxOTQ2LCA3NDEsIDAsIDU0OTQsIDQ2MzksIDk4MzE0NywgCisgICAgMTk5MCwgNjY1ODksIDQ0OTgsIDc4NjY0LCAxMTkxODMsIDAsIDAsIDY5NzM0LCAyOTYwLCA3Mzc3OSwgMCwgODk2OSwgCisgICAgMTI4MTE3LCA0MzQyNCwgMTI3MDU5LCAwLCAyOTUwLCAxMTk1NzksIDYyMTAsIDY1NzUzLCAzNzAsIDAsIDAsIDAsIDQ5NTMsIAorICAgIDk4MzY3MywgMCwgMCwgMCwgNjkyMzAsIDAsIDAsIDY1Njg4LCA5ODMyNDAsIDUwNjMsIDM1MTcsIDI5NjQsIDQzNjYzLCAKKyAgICA5MTc3NjIsIDYzNDQsIDc0NzkxLCAxMDU2NiwgMTAxNDQsIDY2MzMzLCA4MjUyLCA3MjksIDY2MDE2LCA3ODI1MywgMCwgCisgICAgNzEzMTcsIDY0OTIzLCAxMjgwNDAsIDQzNjY5LCA5MDMyLCA3ODI2MywgNzgyNjQsIDAsIDQxMjE1LCAwLCA2NTg4MywgMCwgCisgICAgOTE3Nzc0LCAxMjA2MDIsIDM3NjEsIDAsIDAsIDcwMDY4LCAwLCAxMjkxMiwgMTE5MDEyLCAzODUwLCAxMjgxOTEsIDAsIDAsIAorICAgIDAsIDAsIDkwOCwgMCwgODYxMSwgMCwgMCwgMTI3NTU1LCA0MzY5MSwgNDExOTcsIDAsIDg5NzgsIDEyMDU0MCwgMTE5MTM1LCAKKyAgICA0MTU4NiwgMTA1MjcsIDAsIDkxNzg0OCwgMzg0OCwgNzg3MzksIDE5NDkzNywgMTI3NTM2LCA2NTI0MSwgNTMzNiwgCisgICAgOTgzMjUxLCAxMjg3ODYsIDY2MywgMCwgMTA3ODAsIDAsIDAsIDc4NzY3LCA5ODMyNDksIDEyNzE2MywgNjgxOTMsIDM0NywgCisgICAgMCwgMCwgNzg3NzUsIDY0Njc1LCA0MTU4MiwgNzg3NzQsIDc4NzQ0LCA2NTU3OSwgMTI5ODAsIDc4NzY5LCAxMjE0MywgCiAgICAgNjk2NTcsIDc4NTEyLCAwLCA0MzQ0MSwgNDE4MDQsIDc4NTIzLCAwLCA3ODUyNSwgMCwgMTI4ODU5LCA0MTU4NCwgMTA2ODEsIAotICAgIDAsIDAsIDczOTM4LCAwLCAxMjgwMjIsIDQ4MDAsIDY2NjYxLCAwLCA2NjMwNiwgNjQ3MTUsIDc4NTM0LCA5NTE4LCA2NjA5LCAKLSAgICAxMDQzNCwgMCwgMTEzMTksIDEwOTcsIDAsIDkxNzg1MCwgNDE3MzAsIDAsIDAsIDczODQ3LCA3ODc2MSwgNjUxNzIsIAotICAgIDQxNzI4LCA0MTcyMSwgMCwgMCwgMCwgNDEyMDMsIDAsIDEzMTEwLCA0MTcyNiwgMCwgMCwgMTAwMCwgNjk2NTEsIDAsIAotICAgIDQxMTQwLCAxMjA5LCA3Mzk3OCwgMCwgNzM3NTAsIDEwNzMsIDYzMjEsIDc3ODc4LCA0MTEzOCwgMCwgNjgyMTMsIDAsIAotICAgIDEyMTY3LCAxMTE1LCA0MTYwNSwgOTc5NCwgMTI3MDYyLCA2NzY3MSwgNTUyNDgsIDEyMjM3LCA3ODc4NywgNjYzMTQsIAotICAgIDY1ODcsIDkyOTAsIDc4NzgyLCA3ODc4MywgOTIzMSwgNzg3ODEsIDI5NTksIDc5MjYsIDAsIDAsIDAsIDY0Mzk4LCAwLCAKLSAgICAxMTk5NzAsIDEyMzExLCAwLCA3ODc5NiwgNzg3OTgsIDc4Nzk0LCA3ODc5NSwgNjg0MzQsIDc4NzkzLCA2NjY3MCwgMCwgMCwgCi0gICAgMTIyOTAsIDEyMDE2OSwgMCwgMTE5ODczLCA0MjE0MiwgOTk2OCwgODIwNSwgMCwgNTEzMSwgMCwgOTYyNywgNzg1MzYsIAotICAgIDc4NTQyLCA3ODUzNSwgMCwgMTk0NCwgMTI0OCwgMTAxNDgsIDEyNzc1NSwgMTE5OTkwLCAxMTk5OTEsIDEyNzAxLCA3ODM3NiwgCi0gICAgMTEzMDgsIDExOTk5NSwgMCwgMTE5OTk3LCAxMTk5OTgsIDY1MzA1LCA2NTEwMCwgNDAzMSwgNDI3OTQsIDEyMDAwMywgCi0gICAgNzA3NSwgODE1NCwgMTE5OTg1LCAxMjAwMDcsIDQxODE3LCA3MzkzNCwgNDIyNzUsIDEyMDAxMSwgMTIwMDEyLCA3ODUyNiwgCi0gICAgMTIwMDE0LCAxMjAwMTUsIDYwNDEsIDAsIDQxODk5LCAwLCA4MDAyLCAwLCA0MzY0LCAwLCAwLCA2NDMzMiwgMCwgNzgxMywgCi0gICAgOTA2NCwgMTE5OTg2LCAxMDEyNCwgNzUyNiwgODYwMSwgNzI4MSwgNzg0NTUsIDcyNzksIDEyMDQxLCAxNDE4LCAxMDg4NSwgCi0gICAgMTI2NzMsIDAsIDAsIDk2NjAsIDAsIDEzMDEyLCA0NTcxLCAwLCAwLCAwLCAxMjA3OCwgMjk3MCwgMCwgMTA5MzMsIDAsIAotICAgIDc3ODcwLCAwLCAwLCAwLCA0MTU5OSwgMCwgMTI4ODMxLCAwLCAxMjk1MCwgOTIxNjAsIDM0ODYsIDAsIDc4MzExLCA0MjM5LCAKLSAgICAwLCAxMjc3OTksIDY2NTExLCAwLCAyNjM3LCA2NDYyOSwgODQ2MCwgMTI3MDUzLCA4NDc2LCAwLCAwLCAwLCAwLCA2NTY3MywgCi0gICAgMTAxOSwgNzg0OTUsIDQxNDgsIDAsIDEyMjg5LCAwLCA0MzE2LCAwLCAxMzExOSwgMCwgNTQxMiwgNjYyNDMsIDk5MzUsIDAsIAotICAgIDczODY0LCAwLCA0MTczNCwgODIwNiwgNzQwODEsIDkxNjMsIDMyODYsIDkwNzIsIDU4NjcsIDEzMzAyLCA3NjIyLCA3MTIwLCAKLSAgICA0MTczNiwgOTI1NDYsIDQxNzMxLCAwLCA3NDAwLCA1NDE2LCA2ODY2MywgMTE4OTI0LCAxMDgxNywgMCwgNDE1MzksIAotICAgIDEyNzI4NCwgMCwgNzM5NjMsIDQxODU1LCA0MTg2NywgNjU1NjQsIDExMjc3LCA2NTg5MiwgMTE1MzYsIDEwNjIwLCA5MjI3MiwgCi0gICAgNzExNSwgNjYwMzAsIDczOTMyLCA1NDk4LCA3Mzk0MiwgNDE1MzYsIDAsIDY4MjA0LCA5MjU4NywgMzQ1OSwgODk5NywgMCwgCi0gICAgMCwgMCwgMCwgOTI1MTIsIDAsIDY2Mzc3LCA2OTc4MSwgMCwgMCwgNzg1MTEsIDMxNjEsIDI5NSwgMTIwMjA3LCAwLCAKLSAgICA5MjIyMywgMTI3ODU2LCA3ODc0MiwgOTAxNiwgNDM0NTQsIDYzOTAzLCA2MzkwMiwgNDM2NDEsIDAsIDM5NzEsIDAsIAotICAgIDczOTcyLCAyOTUyLCA3ODc2NSwgMTEwMzgsIDEwOTAxLCA2MzkwMCwgNjM4OTksIDYzODk4LCAwLCA2NjcsIDEyMzMyLCAKLSAgICA2Mzg4NywgNjA4NiwgNDE3MjIsIDAsIDUxNzIsIDAsIDAsIDQxNTksIDAsIDAsIDk4MTUsIDYzODg0LCAxOTkzNCwgNjM4ODIsIAotICAgIDQxMTk4LCA4NTU1LCA2Mzg3OCwgNjM4NzcsIDQyNDYwLCA2MDUwLCA0MjcwOCwgNjM4ODEsIDYzODcyLCAwLCA0MjQyMSwgMCwgCi0gICAgNDE3MjMsIDYzODc1LCA2Mzg3NCwgMTE0NjAsIDc0MzIsIDE5MTMsIDQxOTEzLCA2Mzg1MiwgMCwgMCwgNDIzNDgsIDAsIAorICAgIDAsIDk4MzY4NiwgNzM5MzgsIDAsIDEyODAyMiwgNDgwMCwgNjY2NjEsIDAsIDY2MzA2LCA2NDcxNSwgNzg1MzQsIDk1MTgsIAorICAgIDY2MDksIDEwNDM0LCAwLCAxMTMxOSwgMTA5NywgMCwgOTE3ODUwLCA0MTczMCwgOTgzMjEyLCAwLCA3Mzg0NywgNzg3NjEsIAorICAgIDY1MTcyLCA0MTcyOCwgNDE3MjEsIDAsIDAsIDAsIDQxMjAzLCA5MTc2MTIsIDEzMTEwLCA0MTcyNiwgOTgzODQ2LCAwLCAKKyAgICAxMDAwLCA2OTY1MSwgMCwgNDExNDAsIDEyMDksIDczOTc4LCAwLCA3Mzc1MCwgMTA3MywgNjMyMSwgNzc4NzgsIDQxMTM4LCAKKyAgICAwLCA2ODIxMywgMCwgMTIxNjcsIDExMTUsIDQxNjA1LCA5Nzk0LCAxMjcwNjIsIDY3NjcxLCA1NTI0OCwgMTIyMzcsIAorICAgIDc4Nzg3LCA2NjMxNCwgNjU4NywgOTI5MCwgNzg3ODIsIDc4NzgzLCA5MjMxLCA3ODc4MSwgMjk1OSwgNzkyNiwgMCwgMCwgMCwgCisgICAgNjQzOTgsIDAsIDExOTk3MCwgMTIzMTEsIDk4MzcxOCwgNzg3OTYsIDc4Nzk4LCA3ODc5NCwgNzg3OTUsIDY4NDM0LCAKKyAgICA3ODc5MywgNjY2NzAsIDAsIDAsIDEyMjkwLCAxMjAxNjksIDAsIDExOTg3MywgNDIxNDIsIDk5NjgsIDgyMDUsIDAsIDUxMzEsIAorICAgIDAsIDk2MjcsIDc4NTM2LCA3ODU0MiwgNzg1MzUsIDk4MzIxMCwgMTk0NCwgMTI0OCwgMTAxNDgsIDEyNzc1NSwgMTE5OTkwLCAKKyAgICAxMTk5OTEsIDEyNzAxLCA3ODM3NiwgMTEzMDgsIDExOTk5NSwgMCwgMTE5OTk3LCAxMTk5OTgsIDY1MzA1LCA2NTEwMCwgCisgICAgNDAzMSwgNDI3OTQsIDEyMDAwMywgNzA3NSwgODE1NCwgMTE5OTg1LCAxMjAwMDcsIDQxODE3LCA3MzkzNCwgNDIyNzUsIAorICAgIDEyMDAxMSwgMTIwMDEyLCA3ODUyNiwgMTIwMDE0LCAxMjAwMTUsIDYwNDEsIDAsIDQxODk5LCAwLCA4MDAyLCAwLCA0MzY0LCAKKyAgICAwLCAwLCA2NDMzMiwgMCwgNzgxMywgOTA2NCwgMTE5OTg2LCAxMDEyNCwgNzUyNiwgODYwMSwgNzI4MSwgNzg0NTUsIDcyNzksIAorICAgIDEyMDQxLCAxNDE4LCAxMDg4NSwgMTI2NzMsIDAsIDAsIDk2NjAsIDk4MzI3MiwgMTMwMTIsIDQ1NzEsIDAsIDAsIDEyMDE2NCwgCisgICAgMTIwNzgsIDI5NzAsIDAsIDEwOTMzLCAwLCA3Nzg3MCwgMCwgMTI3MDE1LCAwLCA0MTU5OSwgMCwgMTI4ODMxLCAwLCAKKyAgICAxMjk1MCwgOTIxNjAsIDM0ODYsIDAsIDc4MzExLCA0MjM5LCAwLCAxMjc3OTksIDY2NTExLCAwLCAyNjM3LCA2NDYyOSwgCisgICAgODQ2MCwgMTI3MDUzLCA4NDc2LCA5ODM5NjYsIDAsIDAsIDAsIDY1NjczLCAxMDE5LCA3ODQ5NSwgNDE0OCwgMCwgMTIyODksIAorICAgIDAsIDQzMTYsIDAsIDEzMTE5LCA4NDg4LCA1NDEyLCA2NjI0MywgOTkzNSwgMCwgNzM4NjQsIDk4MzIwMSwgNDE3MzQsIAorICAgIDgyMDYsIDc0MDgxLCA5MTYzLCAzMjg2LCA5MDcyLCA1ODY3LCAxMzMwMiwgNzYyMiwgNzEyMCwgNDE3MzYsIDkyNTQ2LCAKKyAgICA0MTczMSwgMCwgNzQwMCwgNTQxNiwgNjg2NjMsIDExODkyNCwgMTA4MTcsIDAsIDQxNTM5LCAxMjcyODQsIDAsIDczOTYzLCAKKyAgICA0MTg1NSwgNDE4NjcsIDY1NTY0LCAxMTI3NywgNjU4OTIsIDExNTM2LCAxMDYyMCwgOTIyNzIsIDcxMTUsIDY2MDMwLCAKKyAgICA3MzkzMiwgNTQ5OCwgNzM5NDIsIDQxNTM2LCAwLCA2ODIwNCwgOTI1ODcsIDM0NTksIDg5OTcsIDAsIDAsIDAsIDAsIAorICAgIDkyNTEyLCAwLCA2NjM3NywgNjk3ODEsIDAsIDk4MzY5MCwgNzg1MTEsIDMxNjEsIDI5NSwgMTIwMjA3LCAwLCA5MjIyMywgCisgICAgMTI3ODU2LCA3ODc0MiwgOTAxNiwgNDM0NTQsIDYzOTAzLCA2MzkwMiwgNDM2NDEsIDAsIDM5NzEsIDAsIDcwMDYzLCAyOTUyLCAKKyAgICA3ODc2NSwgMTEwMzgsIDEwOTAxLCA2MzkwMCwgNjM4OTksIDYzODk4LCA5NDA0MywgNjY3LCAxMjMzMiwgNjM4ODcsIDYwODYsIAorICAgIDQxNzIyLCAwLCA1MTcyLCAwLCAwLCA0MTU5LCAwLCAwLCA5ODE1LCA2Mzg4NCwgMTk5MzQsIDYzODgyLCA0MTE5OCwgODU1NSwgCisgICAgNjM4NzgsIDYzODc3LCA0MjQ2MCwgNjA1MCwgNDI3MDgsIDYzODgxLCA2Mzg3MiwgMCwgNDI0MjEsIDAsIDQxNzIzLCAKKyAgICA2Mzg3NSwgNjM4NzQsIDExNDYwLCA3NDMyLCAxOTEzLCA0MTkxMywgNjM4NTIsIDEyNjYzNiwgMCwgNDIzNDgsIDczODkyLCAKICAgICA2NzUyLCA0NDYsIDQxOTExLCAxMjc5MDYsIDYzODUxLCA2Mzg1MCwgNDE5MTAsIDAsIDYzODQ2LCAyOTcyLCAxMjkzMiwgCiAgICAgNzI2MiwgMCwgNjM4NDksIDYzODQ4LCA2Mzg0NywgMTI4MDcwLCA2NTcwLCA4MzAyLCA3MjU5LCA2Mzg0MiwgNDE3OCwgCiAgICAgMTA3NDYsIDcyNTAsIDEzMjE0LCAxMDA0MSwgODEwNSwgNjM4OTIsIDAsIDExODk4MywgMTEwNSwgNDE4MCwgMCwgMTIwOTQsIAogICAgIDk0OTcsIDAsIDYzODkxLCA2Mzg5MCwgNjM4ODksIDYzODg4LCA1NTM4LCA5OTg3LCAwLCAxMTg5MzIsIDE2NzgsIDEzMjc0LCAKICAgICA1NTIsIDEyMDY1NCwgNDQwMTAsIDEwNzg1LCAwLCAxMTkxNzAsIDQ1NTcsIDc0NDU5LCA5MTU5LCAxMDE3MSwgMTMxMjUsIAogICAgIDYzODYwLCA1NTQwLCA2Mzg1OCwgNjM4NjUsIDI4MSwgMTMyNDIsIDYzODYyLCA3NDE1NCwgMCwgNTUzNiwgNjU1NjgsIAotICAgIDYzODU3LCAxMzg4LCA3NDE2OSwgMCwgMTA3NywgMCwgNjUwOTksIDExNTMxLCA1ODM0LCAwLCAwLCAwLCAwLCA0Mjc3MywgMCwgCi0gICAgMCwgMCwgMTE5MjIwLCAwLCAzNjYzLCAwLCAxMTEyLCAxMTkxMjIsIDg2ODYsIDAsIDUzMzQsIDY1MDgxLCA0MzI0OSwgCi0gICAgNzQ3NzgsIDEyNzk2OCwgMTEwNzcsIDAsIDY1MDksIDAsIDUzMjcsIDAsIDE5OTA3LCA2Mzg2OSwgMzQ3OCwgNzU4MywgCi0gICAgNzY3OSwgMjkwMywgMCwgMzAwMSwgMTE1OCwgODc0NSwgMCwgNzM3NDgsIDYzODY2LCAwLCAxOTE1LCA0ODQ2LCAwLCAKLSAgICA2NjM3MSwgMTE4OTg0LCA0MjEwNSwgMjk5MCwgMTIwMTI4LCA4MDUsIDY5MjM4LCA2NDQzOCwgMTIwNzAsIDg3NjAsIDExMTcsIAotICAgIDExODk4NywgMTIyMTIsIDEyMDEyMywgNjUxNzQsIDQyMzU3LCA2MzgzNSwgNjM4MzQsIDAsIDc4MjQwLCAxMjIyNSwgCi0gICAgNjM4MzgsIDYzODM3LCAwLCAwLCA2MzgzMywgNjA0MiwgNjYzNjAsIDgwODMsIDAsIDAsIDYzODIxLCA2MzgyMCwgNjM4MTksIAotICAgIDYzODE4LCAwLCA1MjI3LCA5MDQ3LCA2MzgyMiwgMTI3MTYyLCA2MDkxLCAwLCAxMDY5MSwgNTYwLCA1NjQzLCA4MjI2LCAKLSAgICAxMTk1NzgsIDYzODEyLCA2MzgxMSwgNjM4MTAsIDYzODA5LCA1NTQyLCA2MzgxNSwgNjM4MTQsIDYzODEzLCA2MDQ3LCAKLSAgICAxNTk3LCAxMjAxNDMsIDc4MCwgMjA2LCA3NzkyNSwgNDkzNiwgNjUxNDcsIDgxNjgsIDYzOTMwLCAyMDc2LCAxMDkzLCAKLSAgICA5ODgyLCA2MzkzNCwgMjA4MiwgNjM5MzIsIDEyODE1MCwgNjM5MjksIDM1NDYsIDE2MDUsIDc3OTM0LCA5ODA2LCA0MzQ3MiwgCi0gICAgNzc5MzMsIDg0MDAsIDExMzQzLCAyMDg2LCAwLCA2MzkyNiwgMjk4NCwgNTk2OCwgOTI4NywgMCwgNDYxOCwgNDIyMDksIAotICAgIDQzNDMxLCAxMzE2OSwgNTI5MCwgMjA4OSwgMTY5NSwgMTA3NDMsIDEwODgsIDYzODI1LCA3MjY4LCAxMDg0LCAxMDg1LCAKLSAgICA2MzgyOSwgMTA4MywgMTAxMzEsIDcyODMsIDAsIDYzOTcwLCAxMjgzNTgsIDEwOTIsIDQ3NTQsIDcyNzMsIDUyNTIsIAotICAgIDQ0MDE2LCA0MzYyNywgMTI3OTIxLCAwLCA3NDA4LCAxMTgwOSwgMCwgMCwgMCwgMjk2NSwgNzI1OCwgODgwOCwgMCwgMTA4OSwgCi0gICAgNDE4NywgNjM5MzcsIDQyMTE5LCA0MjEyMCwgMCwgOTQwLCA1Nzg3LCAxMDA5OSwgNjM5MzgsIDAsIDc0NDk0LCAxMjQ2MywgCi0gICAgMjk5NCwgMCwgMTE4ODI3LCAwLCA5NjY0LCA3NzkzOSwgNzc5NDAsIDY3ODkyLCA3NzkzOCwgNzQzNDMsIDAsIDAsIDY2MCwgCi0gICAgMTAxMjcsIDY2NiwgOTAyMiwgNTUzMiwgNDM2NjcsIDU1MzMsIDc3OTQxLCA3ODUwNywgNjExOCwgMjIyLCA5NzksIDM4ODQsIAotICAgIDAsIDc0MTUxLCA5MjY1MiwgNjUwMiwgMCwgMTI3MTE4LCAxMjg2OTUsIDYzOTUxLCAxMjQ2NSwgMCwgMCwgMTI4NzgyLCAKLSAgICA2Mzk0NiwgMTcwNywgNjM5MjQsIDEyNDYxLCA2Mzk1MCwgNjM4OTcsIDYzOTQ4LCA2Mzk0NywgNjM5NDUsIDYwMzgsIAotICAgIDYzOTQzLCA2Mzk0MiwgNjQ2ODUsIDYzODk1LCA2NTgzOCwgMCwgNzc3NiwgMCwgMCwgMTI3NzczLCAxMjA0NDQsIDY5NzMwLCAKLSAgICA4MDEsIDQzMTY1LCAxNjkwLCA2MzkxOSwgNjM5MTgsIDYzOTE3LCAxMzI3NywgNDM2NTksIDEyOTUxLCAxMjA2MzgsIDk5MDYsIAotICAgIDIwNTQsIDIzMzQsIDc4NTE1LCA2MzkxNiwgNTQ4MywgNjM5MTQsIDY5NzM3LCA2MzkxMSwgNTQ4NCwgNjM5MDksIDYzOTA4LCAKLSAgICAyNTM5LCAwLCA0Mzk4MCwgNTQ4NSwgMCwgNDI2OTcsIDkwNjEsIDU1MzQsIDEwNjcyLCA0NTAyLCAwLCAyNTMsIDAsIAotICAgIDY4MjA4LCAwLCA5MjAzLCA3NDIzMSwgMCwgMTE1MzAsIDkyNTQyLCA2ODY2OCwgMCwgMTI4ODE2LCAwLCAxMDQ3NCwgCi0gICAgNDM0MjYsIDEzMjU3LCA0MjM1NCwgMCwgMCwgMCwgMTk1MDY1LCAwLCA4NDEzLCAwLCAwLCA1NjkzLCA3MjcyLCAwLCAKLSAgICAxMzIwOSwgNjQ0NzAsIDY1ODMxLCA3ODQ2MCwgMTk1MDYzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjgxMzMsIDEyNzc2NywgCi0gICAgNjY2MDgsIDMxMTEsIDQxODYzLCA4ODA0LCA0MjkxMywgOTIxODcsIDcyNzAsIDAsIDY2NjA2LCA2NjI4LCAxMDc2LCA3NDMzLCAKLSAgICAxNDM2LCA3Mzg0NCwgNTUyMjYsIDEyODM1MywgNjM5ODIsIDczOTMsIDEyODA3LCA0MzQxMywgNjM5MDYsIDE1OTgsIAotICAgIDYzOTA0LCAwLCAwLCA0MTcyOSwgNDQyMywgMTMwNywgMCwgMTA1MTUsIDQxNTg5LCAxMjg2OTgsIDAsIDYyMTgsIDAsIAotICAgIDE0MzAsIDAsIDAsIDEyMDYwNiwgNzg3NTQsIDU0MTMsIDc2MTksIDMyNTUsIDM0OTMsIDc0MDMyLCAxMTU0OSwgMTA3MzUsIAotICAgIDQxNzQzLCA3MzkzNywgNjgwMSwgMCwgNDUxOCwgMTA5OTAsIDY1MDczLCA1MTY3LCA0NDgxLCAzNzcxLCAwLCAyNzEwLCAwLCAKLSAgICA2OTI0MywgNDE3MjQsIDAsIDQzMDczLCA0MTY5MCwgMTI0NzksIDAsIDAsIDAsIDAsIDExOTY1OSwgMTYyOCwgMTI3MTQ5LCAKLSAgICAwLCAwLCA2NTI2MiwgNjMzMywgMTA3ODMsIDQyMzE1LCAwLCA2Mzg1NSwgMTIwNjgzLCAwLCAwLCA1MzM5LCA3NDMyMywgMCwgCi0gICAgMTMwMDQsIDAsIDQ0NTcsIDAsIDAsIDAsIDAsIDU2ODQsIDg2NzgsIDEwOTE0LCAwLCA1Njg5LCA2NTgwNywgMCwgNjg0NjQsIAotICAgIDEyNjMzLCAxMjg3MCwgNjk3MDUsIDY1MTgzLCA1Njg4LCAxMTkyNiwgNjAzMywgNjMxMCwgNTY4NiwgMCwgNzQyNTEsIDAsIAotICAgIDEyMDY0NywgMCwgNTAsIDEwNTU4LCA5ODcxLCAwLCA0MzY1NSwgMCwgMCwgMCwgNjY0NjgsIDAsIDEzMjU5LCA0NDQ4LCAwLCAKLSAgICAwLCAwLCAwLCA2Nzg1MywgMCwgMTA2NDAsIDExNTM5LCAxMTUxLCAwLCA5MTc2MDcsIDEyNzU0NCwgMTI3MDc5LCAxOTUwNTAsIAotICAgIDEyNzg1MiwgMCwgMCwgMCwgMTI1MDEsIDY0NjA0LCAwLCAxMTUyNywgMTE4ODcwLCA4ODEyLCAwLCAxMTUzOCwgODY3MywgCi0gICAgMTI2NTAsIDExMDIwLCAwLCA2NjQ2NywgMjEwNSwgODA4NywgNzgxNjMsIDY5NjMyLCA5ODk0LCAwLCAwLCAwLCA0NjM2LCAKLSAgICA1NTI2MiwgNzg1MTMsIDQ1MTUsIDIzODIsIDAsIDEyNzA1NSwgMCwgMTIwNDk1LCAwLCAxMjgyODQsIDEyMjc3LCAxOTQ2MjcsIAotICAgIDExOTk1LCA5MjU1MywgMCwgMTIxNTgsIDAsIDg3NDEsIDEwMTk3LCAwLCA5MjQyNiwgMCwgNjUzMSwgMCwgMTI3ODQ2LCAKLSAgICA0NzMsIDQzNDE1LCAwLCAwLCAxODczLCAxMDg3LCAwLCAwLCAwLCA3ODUyNywgNjY0MzksIDQzMjE4LCAwLCAxOTQ3MTYsIAotICAgIDcyMzcsIDEyNTA0LCA3NDI4MiwgMCwgMCwgMCwgOTQ4OSwgMCwgMCwgNDM4NCwgNzQyMjAsIDE5NTA1NSwgMjA1OCwgCi0gICAgMTI4ODYzLCAxMzI5NSwgNDMxOTEsIDEyODAzMCwgMCwgMTE1NCwgMzg1NywgMTIwNSwgMCwgMCwgMTMxMDAsIDEyOTU4LCAKLSAgICAxMjA3MDYsIDc0MTY4LCAwLCAwLCA0NDIxLCAxMDU5MiwgMCwgNDk1LCAwLCA0MTcxMiwgNzk4MywgMCwgMTIwNzc5LCAwLCAKLSAgICA2MzQ3LCAwLCA3NjU0LCA0MTcxMCwgNDE5NiwgMCwgNDM3LCA0MTcwOSwgNzM3NzIsIDAsIDAsIDk0NjUsIDEzMjkwLCAKLSAgICAxMTkxODAsIDQ5OTcsIDY0MzA2LCAwLCAwLCA0OTk5LCAxOTQ2NDIsIDAsIDAsIDQ3MTEsIDEyMDc2OSwgMCwgMjczOSwgMCwgCi0gICAgODA0NCwgNzQ4MzQsIDE5NDY0MywgNDE3ODksIDEyODE0MiwgMTA4MDksIDAsIDAsIDAsIDE3NzksIDY2MDAsIDY2MDEsIAotICAgIDQxNTQzLCA1MzI1LCA2NDIsIDY0MTg3LCAxMzA1OCwgMTIwNDQ5LCAxMjg3NSwgMCwgOTIxODYsIDEzMjI5LCAwLCAxMDU3NSwgCi0gICAgNDMzOTksIDAsIDAsIDQxNzkxLCAxMTA0LCAwLCAwLCAxMDY1NSwgMCwgMCwgMCwgMCwgMTA4MiwgMTk1MDQ5LCA4NDI4LCAKLSAgICA2NTY5LCAwLCAwLCAwLCAwLCA2NzgzLCAwLCAxMjk5MywgODA0OSwgNDE1NDgsIDQ0MDIxLCA2NDU4LCAwLCAxMjg4ODIsIAotICAgIDQ3NjEsIDYzODI4LCA0NzY2LCA2NDYyMywgMTI3MywgNDM0MDcsIDAsIDExODg3NiwgMTk1MDQ1LCA2OTEyLCAxMzEzLCAKLSAgICA2MzIyLCAxMDQ4MywgMCwgNDE1NDUsIDAsIDkyNDQ5LCAwLCAwLCAwLCAwLCA3ODYyNCwgMzQ4NCwgNzQzMzcsIDAsIDAsIAotICAgIDg1MDMsIDUxMjIsIDQxNTI3LCAwLCA2NjMyMCwgMCwgMCwgMCwgMCwgNDE1MzcsIDY5NjgzLCA4MzAzLCA4MjgyLCAxMTgxNywgCi0gICAgNzM4NTcsIDEwMDAzLCA3Mzg1OSwgNjU5MDQsIDE5NDY2MywgMTY4NiwgMCwgNzg0MDYsIDExNDY3LCAzNjY0LCA2NTkyMSwgCi0gICAgNjQyOTksIDE5NDY2NCwgMCwgMCwgNDMyNCwgMTI2LCA0MjI0NiwgMTE5MTUyLCAwLCA3NDM3OCwgNjU5MjYsIDc3NDQsIAotICAgIDE5NDYzNiwgNzQyNzcsIDc0MzAyLCA3ODA1MiwgNDM4MTcsIDY5NjYsIDQzODIyLCA4MTM2LCAwLCA2NTYwMCwgMTYzMywgMCwgCi0gICAgMCwgNDc2MiwgMTEwMywgMCwgMCwgNDc2NSwgMCwgMTMwNzgsIDAsIDQ3NjAsIDYzODI3LCAyMDUwLCAxMDg3MSwgNDMxOTksIAotICAgIDExMDIsIDAsIDQyMjM2LCAxMjg4NjcsIDE5NDY2NywgMTE1NDYsIDc0Nzk0LCAzMzcsIDAsIDQyNTkxLCA4NjI3LCAxMjI3OSwgCi0gICAgMTExMSwgMCwgOTIxNjEsIDQ3MDcsIDY4MjA2LCAxMDE0MywgNzg4MywgMTI3MDgxLCA3ODgwLCA0NTIyLCA4NjQ1LCA1NzA0LCAKLSAgICAxMzAxMCwgMCwgODMwNCwgOTE3NTYxLCAwLCAxMTk1NzUsIDAsIDAsIDY2NjU0LCAwLCA5MjY3NiwgMCwgMTMwMDgsIDAsIAotICAgIDQzODUsIDAsIDEzMDExLCAwLCA5MjU2OSwgMTE5MTYxLCAxMzAwOSwgMTYwLCAyNjc3LCAwLCAwLCA0MTc5MywgNjU3NjMsIAotICAgIDc0MjIxLCAxMjAxNDEsIDQxNzkyLCA0Mjc3MCwgMCwgNjU3NjIsIDExODgyOSwgNDM4MjEsIDU3MDksIDAsIDEyNzE3NywgCi0gICAgNDM4MTYsIDAsIDAsIDEwNzksIDM4NjcsIDU3MDgsIDAsIDAsIDQzNzk3LCA1NzA2LCA2NDc2OCwgNTcwNSwgODc5MSwgCi0gICAgNDAwNSwgMCwgMTAyMzcsIDEwOTkxLCAwLCA0MzQ1OSwgOTE3MywgOTE3NTgxLCA5MTc1ODAsIDEzMTcwLCAxMjU0MCwgCi0gICAgOTE3NTc3LCA0MjYwNSwgMTIwNzY1LCA5MTc1NzAsIDY4NjQ3LCA5MTc1NzIsIDEwMDU4LCAwLCA3NDg2NywgMTk0NjU0LCAKLSAgICAxMjcwNzgsIDMzMzksIDExNDQ4LCAxMTA2LCA5MTc1OTEsIDkxNzU5MCwgOTE3NTkzLCAzMzQwLCA5MTc1ODcsIDkxNzU4NiwgCi0gICAgOTE3NTg5LCA5MTc1ODgsIDEyMDU0MSwgMTA2MDUsIDEzMDksIDYzOTY2LCAxMjA3NDMsIDE3NTQsIDkyMjI2LCAxMzI0NiwgCi0gICAgODY0LCAwLCAxMTg5MjYsIDg5NzIsIDAsIDc4NDksIDEyMDA5MiwgOTI1MzMsIDEzMjQwLCAxOTUwNjgsIDUxOTIsIDQzMzgsIAotICAgIDAsIDEwOTQ4LCA5MTc2MDEsIDEzMTk5LCA5MjU3NSwgMTIzNiwgMTMyMDgsIDEzMjYxLCAxMzE4OSwgMTMxODgsIDEyMDE2NCwgCi0gICAgMCwgNzQ0MCwgMCwgMTIwMTUzLCA5NTUzLCAxNTkwLCA2Mzc3NywgNjM3NzYsIDEzMTc4LCA2Mzc4MiwgNjM3ODEsIDYzNzgwLCAKLSAgICA2Mzc3OSwgMTU4MywgMCwgMTMyNjAsIDQ1NTAsIDAsIDY0MjA1LCAwLCAwLCA0MTUyMiwgMCwgOTIxNjgsIDAsIDkxNzg1OCwgCi0gICAgMTEzNTQsIDAsIDAsIDQyNzk1LCAwLCAxMTkxOTUsIDExMzk0LCAxOTQ2NDYsIDEzMjM2LCAxMzI3MiwgMTMxOTQsIDEzMzQsIAotICAgIDAsIDQ0NzksIDExNzgsIDY1NTg2LCAxMjA2NjMsIDY2NjgxLCAxMTkxOTMsIDQ2MDEsIDAsIDAsIDAsIDAsIDAsIDE5NDY1OCwgCi0gICAgMCwgNjgwOSwgNjM3ODYsIDYwMzEsIDAsIDYzNzkxLCA2Mzc5MCwgMTE0NSwgNjM3ODgsIDc5MTAsIDYzNzg1LCA0MzE1MywgCi0gICAgNzU0LCAxMDE5MiwgMTMxMDUsIDgxODMsIDEyMDc0MSwgMjAzNywgMCwgMCwgMTA3NDcsIDEyNSwgMCwgNjQ4OTAsIDAsIDAsIAotICAgIDAsIDQxNzE5LCA2Mzc1OCwgMzUyMywgMTA3NCwgMTMyNTgsIDk1MzYsIDc0MDc3LCAwLCA0NDI3LCA3NDI0MiwgNjM3NTcsIAotICAgIDQzMTQ1LCAxMjIxNywgNjM3NTQsIDQxNTMyLCAxMzQ5LCA2Mzc1MCwgNjM3NDksIDAsIDAsIDAsIDYzNzUzLCA2MzgwMiwgCi0gICAgNDEwODQsIDEyMDYyMiwgNjgxMzMsIDQxOTMwLCA2MzgwNSwgNjM4MDQsIDQzNjMyLCA2MzgwMSwgNDEwODIsIDgxNDAsIAotICAgIDYzNzk4LCA2MjYwLCAwLCAwLCAxMTkyMjUsIDYzNzkzLCAxMTk4OCwgMzg5OCwgMTI4MjQxLCAxMDIwMSwgMTIyMzgsIAotICAgIDYzNzk1LCA0MjE5NCwgMTAzNjcsIDEyNTIxLCAxMDQzMSwgNDIxMTQsIDQxOTMyLCAxMDY4LCAwLCAxMjUyMywgMTI5NDUsIAotICAgIDAsIDQyMjAzLCA3OTUwLCAxMDgwNCwgNjM3NzEsIDQyNzg3LCA0Mzg2LCAxMjIyNCwgNjk3MywgMjc5MywgMTI0NzUsIDAsIAotICAgIDAsIDYzNzY5LCA5NTMwLCAwLCAxMjIzMiwgMTMxMzUsIDg1OTYsIDU2ODEsIDYzNzYyLCA0NTk1LCA2Mzc2MCwgNzkyLCAwLCAKLSAgICA2NDgwMywgMCwgODc0MiwgMCwgMTEwNTMsIDEyODc5NiwgNjM3NDQsIDEyODEwNywgMCwgNzU4OCwgNjM3NDgsIDE2OTMsIAotICAgIDYzNzQ2LCA0MzIwNCwgNTA1NSwgNjg0MjYsIDkxNzg1MywgMTA5MCwgMTIwNjc5LCAxMjgzNTYsIDExNjY1LCA3NDEzMywgCi0gICAgNDU1OCwgNjU2ODUsIDk1MjMsIDAsIDAsIDc4NjgxLCAxMTUxMywgMCwgNjE1NywgNjM3NzUsIDYzNzc0LCA2Mzc3MywgCi0gICAgMTMxOTEsIDEyMTcwLCAzNTAwLCAzMTM5LCAwLCAzMTcwLCAxMjQ4NSwgMCwgMTA4NzIsIDc4MjcxLCAxMzAwNiwgNjQ0MzMsIAotICAgIDAsIDAsIDk0MSwgMCwgMCwgMCwgNjU1NDEsIDExMDYzLCAwLCA4MjI4LCAwLCA0MjA2NSwgMCwgMCwgMCwgMCwgOTI0NTUsIAotICAgIDczODYsIDAsIDY0NDQ0LCAwLCAxMTk4NjMsIDQzNjAzLCAwLCA2NTM5NywgMjg4LCAwLCAwLCAwLCAxMDAyNSwgOTE3OTE2LCAKLSAgICAyOTE4LCAwLCA2NTMwMCwgMTE5ODcxLCA5ODgzLCA2NDcyNiwgMjc5MCwgNjUzOTUsIDM3OTMsIDAsIDEyNzgyOSwgNjUzOTMsIAotICAgIDAsIDc0MTM4LCAwLCAwLCAwLCA3NDEzOSwgOTI3MTIsIDY1Mzk0LCAxMTU0OCwgNTI3MCwgMCwgNjUzOTYsIDAsIDY1ODEzLCAKLSAgICAxMzI1NiwgMTI4MiwgMTIwNzcxLCAwLCAwLCAxMDg4OCwgMCwgNjUyNDIsIDAsIDMzMzAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDc0MjU5LCAzMzA0LCA0Mjc1MywgMCwgMCwgMCwgMTYyNywgMCwgMCwgMCwgNTM3MSwgMTMxMTYsIDAsIDE4MjYsIDExODc5NCwgCi0gICAgMCwgNDMwOTQsIDAsIDQzNjUwLCAwLCAwLCA5MDM1LCAwLCAwLCAxMjgwMDUsIDAsIDkyMjA3LCA2ODEyNSwgMCwgMTY0LCAwLCAKLSAgICAwLCAwLCA2OTU4LCAwLCA0MzExNiwgMCwgMCwgMTMyNDUsIDAsIDAsIDEyNzM3NiwgMCwgNzM4OTMsIDEyNzc1NiwgMTI2NjYsIAotICAgIDEzMTc1LCAxMzIwNywgMTIwNDE0LCA2NjAxNCwgMTIwNDI4LCA3NDQ3LCA1OTI5LCAwLCA2NTUwOSwgMCwgNzQ0OSwgCi0gICAgMTEzMDYsIDAsIDczOTIwLCAzMTgwLCAwLCA2MzgwOCwgOTA1NCwgOTcxLCAxMzA2MiwgMCwgMCwgNjUxOTUsIDEwMTY0LCAKLSAgICA5MjI1MiwgNzQ0MjgsIDAsIDc4MTQ2LCA5MjYxMSwgMCwgMCwgMCwgMTAwNDUsIDEyODgyLCAxMzI3NSwgMTI4MTYxLCAKLSAgICAxMTA1NywgMCwgMTMyNzYsIDAsIDQxNTI1LCA3ODE1MCwgNzI3MSwgMTE0NDQsIDAsIDAsIDAsIDEyMjI5LCA0MTUyMywgMCwgCi0gICAgNDM0MTEsIDczNzUxLCAwLCA2NDgxMywgMCwgMCwgMTA0NzYsIDM4NTgsIDAsIDM5MzIsIDY0OTU4LCAwLCAwLCA3Mzk4OSwgCi0gICAgNjgxOTIsIDAsIDAsIDM2OSwgMCwgNDE3ODQsIDAsIDY0MTYzLCAwLCAwLCAwLCA2NTQ3NCwgNDc5NiwgMTIyOTIsIDAsIAotICAgIDY1NDc5LCAwLCA0MTc4MSwgMTA0ODYsIDQxNDgwLCA0MzAwMiwgOTg5OSwgMCwgMCwgNDA0LCAxMjgyMSwgMzc0MSwgMCwgCi0gICAgNTc4OCwgODA5MiwgNjgyMTIsIDQxMjIyLCAxODMxLCA2NjAyMCwgMzk4MiwgMCwgNDM4OCwgMCwgNzQ2LCAxMjA3ODQsIDAsIAotICAgIDAsIDEyMDE4LCA2NTI5NCwgMCwgMCwgMCwgMCwgNDQyMiwgNDcwOCwgMzc5OSwgNzQyOTIsIDExOTM1NywgMCwgNzQ0MzAsIAotICAgIDAsIDExNzAwLCA0Mzc0LCAwLCAxMjgxNzksIDEzNjQsIDAsIDgwMzgsIDAsIDkxNzU5NywgMTI4NjgsIDY5ODE0LCAwLCAKLSAgICA2NzM1LCA3Mzk3OSwgMTMxNzQsIDczOTY4LCAxMzIyNSwgMCwgNjk4MDgsIDY1ODM1LCAwLCAyMzY1LCA3ODQxLCAwLCAKLSAgICA0Mjg1NSwgMTE4ODU2LCA0Mjg2NiwgMCwgMCwgMCwgNjY0MzgsIDQxNzg1LCAxMjYxNywgNjQxNzIsIDEzMTczLCA0MzcyLCAKLSAgICAxMTkzNTQsIDAsIDAsIDAsIDAsIDkyNDAyLCAxMjgwNjIsIDEyOTY1LCAzODQsIDY0NTEyLCAxMDQwNCwgMTAzNDAsIAotICAgIDExOTM1MiwgMTU1NiwgNTI3NCwgMTMyMTAsIDEyMDEyNSwgMTAwMTcsIDk3MzMsIDQxNzg3LCAwLCAxMjY5OTQsIDQxMzczLCAKLSAgICA3ODAzOSwgMTIzMDMsIDAsIDEzMjMyLCAxMzIzMywgMzQ5LCA0ODYzLCA0MTM3MSwgMTE2NTYsIDAsIDEyMDcwMywgCi0gICAgMTE5ODgzLCAxMjg2MSwgNDM5OCwgODU0MywgNjU2MTgsIDEyODAxOCwgMTA5NiwgMCwgMCwgNDI2ODgsIDEyNDQxLCAKLSAgICAxMjM1NSwgMTE5MzQ4LCAxMTkzNDcsIDQzMTgsIDEwNDUyLCAwLCA4MDMyLCAxMzI0MywgMTMyMzcsIDEyNzE5LCAwLCAKLSAgICAxMTkxMDEsIDAsIDY0ODg0LCAxMTk4NzIsIDExOTM0NSwgODU5NywgMCwgMCwgOTg2NCwgMCwgMTIwNzg1LCAxMTk4NzQsIDAsIAotICAgIDEzMTk1LCA0MTQ1MiwgNjQ5NjEsIDc3MjIsIDAsIDEwNDU5LCAxMTk4NzgsIDAsIDExOTg3OSwgNjY1OTAsIDEyODEyMywgCi0gICAgNDE1MzMsIDY2MzM3LCAwLCA5MjE4NCwgMCwgNDk2NSwgNDM0NDUsIDkxNzUzNiwgNzM4NDksIDAsIDQzNjM4LCA3ODUzNywgCi0gICAgMTI4Mjg3LCA2MjYxLCAxMTkzNDIsIDQzMTQ3LCA2NjU3MCwgMTk1NywgMTA0MjAsIDk4MiwgMjc1NiwgMTMyOTIsIDEzMjA2LCAKLSAgICAxMjg4MjgsIDAsIDI5MjUsIDczODA5LCAxMzA1NiwgMTI3NTU5LCAxMzIxMiwgNDMyMzgsIDAsIDEzMTkwLCAxMzE4NywgCi0gICAgOTI1NDEsIDEzMTk4LCAxMTg3OTMsIDAsIDUyNDIsIDExOTE3OSwgNjQ0NzYsIDE2OTQsIDgyMTYsIDAsIDY3NzAsIDQzMzMxLCAKLSAgICAwLCA2NTYyMCwgMCwgNDM1NDQsIDAsIDAsIDQxNDQ0LCA2NTYyMSwgMTIwMzI1LCA5MTk3LCA1MjQ2LCAxMTkxMDYsIAotICAgIDEzMTg1LCA5NzA5LCAxMjAzMjMsIDEyMDMyMiwgMTIzMTQsIDY1NjE2LCA1MjM4LCAxMTkzMzMsIDAsIDExOTMzNywgNTIzNiwgCi0gICAgNDA5NzksIDAsIDc0MjAxLCA4Mjg2LCAwLCAzOTM2LCAxMTkzMzEsIDExNjk5LCA0MTM0NywgMTI3MjQ5LCAxMzIzNSwgCi0gICAgODg0MiwgNDEyNDgsIDAsIDQzNzksIDEzMjM5LCAxMjY5MiwgNzk2OSwgMTI3MjY2LCA3MjE5LCAxMjcyNTAsIDAsIAotICAgIDEyMDUwOSwgMCwgNjYyMjQsIDczNCwgMjk3OSwgMTIwMzAzLCA2NTYxOSwgOTg3MiwgOTU3LCA2NDkyMSwgMTg0NiwgCi0gICAgNjY2MzEsIDQxNDc3LCAxMTkyNTYsIDEyMDMxMCwgNzQ1MTEsIDQxNzcwLCAxNjcwLCA2NDQyLCAxMjAzMTcsIDQyNDQ2LCAKLSAgICA1Mzc5LCAxMjAzMTgsIDQxMTYzLCA3NDgzMiwgMTIwMzE1LCAxMjAzMTQsIDEyODAyNSwgMCwgNDI4NDEsIDEzMjY3LCAwLCAKLSAgICAwLCA0MTc3NSwgMCwgNzEzMCwgNDE3NzMsIDAsIDEwNjYzLCAwLCAwLCAwLCA2MTUxLCAxMjExMCwgNDI2NzMsIDY1NTcyLCAKLSAgICA2NTI5MywgNjUyNTAsIDEzMjY1LCAxMzI2NCwgNjQ1MTgsIDAsIDYxMDAsIDAsIDkyNjQ3LCA1ODA4LCA2NTkyMiwgMCwgCi0gICAgMTI5NjcsIDY2MDQxLCA1NjEyLCA0NTgzLCAwLCAwLCA2ODA5NywgNjQ1NzUsIDEyODUyNCwgMTE5NjUsIDAsIDY4MzU4LCAwLCAKLSAgICA2OTc4OSwgMCwgOTIyNjAsIDY4MTAyLCA5Njk4LCA3ODE0LCA3NDQ3NiwgMTE5NjUxLCAxMjg1MTQsIDAsIDQxOTIxLCAKLSAgICAxMTg4NTgsIDk3NTYsIDY5ODUsIDExOTI1OCwgNzg0OTAsIDc0MjE5LCAwLCAwLCAxMTg5OTcsIDgwMTIsIDU2NzQsIAotICAgIDEyMzUzLCAwLCAxMjM2MSwgNTY3NywgNTU4OCwgMCwgNDE5MjUsIDEyODEyNCwgNDE5MjAsIDU2NzMsIDEyMDUzNCwgNTY3NiwgCi0gICAgNDE5MjMsIDEyNjk0LCAxMTg5NzgsIDU2NzIsIDEyOTQsIDAsIDc4MDU5LCAwLCA0MjUxMSwgMTcyNywgMTIwNzI1LCAKLSAgICA0MjQzNiwgMCwgMCwgMCwgNzQyMjIsIDg3MTgsIDM1NTAsIDczNiwgMTAyNjgsIDQ1MDUsIDEwMzE2LCA3NDA5MCwgNTgyNiwgCi0gICAgNTUyMzIsIDU4MTMsIDAsIDEyMDcxMiwgNTg0MSwgNTgzNywgNTUyMzQsIDAsIDMxMDUsIDEyODI5LCA1ODM4LCA1Nzk2LCAwLCAKLSAgICAxMTk1OTIsIDU3OTMsIDAsIDU4NjYsIDU3OTcsIDQxMDExLCA1ODY1LCAxMjAwOTEsIDc5NTYsIDU5OCwgMCwgNjQ2NDksIAotICAgIDU4MDYsIDQyMzk4LCAwLCA5MDM3LCA1NjcxLCAxMjAwNDEsIDAsIDAsIDAsIDEyODg1NSwgMCwgODQ3LCAxMjgyNDIsIAotICAgIDk1MjksIDAsIDY2NjU3LCA2OTgwLCAwLCAxMjAwMzUsIDc4NDg0LCAwLCAwLCAxMjAwMzMsIDc4NDg2LCAwLCAwLCAKLSAgICAxMjAwMzksIDQyNjgzLCAwLCAwLCA3MTE0LCAwLCAwLCA0MzE5MCwgNjU0NjMsIDE1NTQsIDAsIDQyNjExLCA0MjU2MywgMCwgCi0gICAgNTY1MSwgMjkyOSwgNjc5MiwgNDMyMDEsIDAsIDE5OTYzLCA1Njk4LCAwLCAwLCAwLCAwLCA1NjQ0LCAxMDI5MiwgNjU1NDYsIAotICAgIDY5NzI3LCA2ODE0MSwgODM3MiwgMCwgNjUxMTYsIDAsIDEyMDAyMiwgMTAxNzUsIDEwMzg4LCA0Mjc5OSwgMCwgNDEwMTMsIAotICAgIDEwNTY4LCAwLCAwLCAyODY5LCAwLCA0MTAxNSwgMTk0NjkyLCAyNzg1LCA0MzY2LCAwLCAxMDk1NCwgNDE4MDIsIDAsIAorICAgIDYzODU3LCAxMzg4LCA3NDE2OSwgMCwgMTA3NywgOTgzNTc3LCA2NTA5OSwgMTE1MzEsIDU4MzQsIDAsIDAsIDAsIDAsIAorICAgIDQyNzczLCAwLCAwLCAwLCAxMTkyMjAsIDAsIDM2NjMsIDAsIDExMTIsIDExOTEyMiwgODY4NiwgMCwgNTMzNCwgNjUwODEsIAorICAgIDQzMjQ5LCA3NDc3OCwgMTI3OTY4LCAxMTA3NywgMCwgNjUwOSwgMCwgNTMyNywgMCwgMTk5MDcsIDYzODY5LCAzNDc4LCAKKyAgICA3NTgzLCA3Njc5LCAyOTAzLCAwLCAzMDAxLCAxMTU4LCA4NzQ1LCA0Mzc0NiwgNzM3NDgsIDYzODY2LCA3ODYyNiwgMTkxNSwgCisgICAgNDg0NiwgMCwgNjYzNzEsIDExODk4NCwgNDIxMDUsIDI5OTAsIDEyMDEyOCwgODA1LCA2OTIzOCwgNjQ0MzgsIDEyMDcwLCAKKyAgICA4NzYwLCAxMTE3LCAxMTg5ODcsIDEyMjEyLCAxMjAxMjMsIDY1MTc0LCA0MjM1NywgNjM4MzUsIDYzODM0LCAwLCA3ODI0MCwgCisgICAgMTIyMjUsIDYzODM4LCA2MzgzNywgOTgzODQ0LCA5ODM3OTUsIDYzODMzLCA2MDQyLCA2NjM2MCwgODA4MywgMCwgMCwgCisgICAgNjM4MjEsIDYzODIwLCA2MzgxOSwgNjM4MTgsIDk4Mzg5NSwgNTIyNywgOTA0NywgNjM4MjIsIDEyNzE2MiwgNjA5MSwgMCwgCisgICAgMTA2OTEsIDU2MCwgNTY0MywgODIyNiwgMTE5NTc4LCA2MzgxMiwgNjM4MTEsIDYzODEwLCA2MzgwOSwgMjI4OSwgNjM4MTUsIAorICAgIDYzODE0LCA2MzgxMywgNjA0NywgMTU5NywgMTIwMTQzLCA3ODAsIDIwNiwgNzc5MjUsIDQ5MzYsIDY1MTQ3LCA4MTY4LCAKKyAgICA2MzkzMCwgMjA3NiwgMTA5MywgOTg4MiwgNjM5MzQsIDIwODIsIDYzOTMyLCAxMjgxNTAsIDYzOTI5LCAzNTQ2LCAxNjA1LCAKKyAgICA3NzkzNCwgOTgwNiwgNDM0NzIsIDc3OTMzLCA4NDAwLCAxMTM0MywgMjA4NiwgMCwgNjM5MjYsIDI5ODQsIDU5NjgsIDkyODcsIAorICAgIDAsIDQ2MTgsIDQyMjA5LCA0MzQzMSwgMTMxNjksIDUyOTAsIDIwODksIDE2OTUsIDEwNzQzLCAxMDg4LCA2MzgyNSwgNzI2OCwgCisgICAgMTA4NCwgMTA4NSwgNjM4MjksIDEwODMsIDEwMTMxLCA3MjgzLCAwLCA2Mzk3MCwgMTI4MzU4LCAxMDkyLCA0NzU0LCA3MjczLCAKKyAgICA1MjUyLCA0NDAxNiwgNDM2MjcsIDEyNzkyMSwgMCwgNzQwOCwgMTE4MDksIDkxNzYxOCwgMCwgMCwgMjk2NSwgNzI1OCwgCisgICAgODgwOCwgMCwgMTA4OSwgNDE4NywgNjM5MzcsIDQyMTE5LCA0MjEyMCwgMCwgOTQwLCA1Nzg3LCAxMDA5OSwgNjM5MzgsIDAsIAorICAgIDc0NDk0LCAxMjQ2MywgMjk5NCwgMCwgMTE4ODI3LCAwLCA5NjY0LCA3NzkzOSwgNzc5NDAsIDY3ODkyLCA3NzkzOCwgCisgICAgNzQzNDMsIDAsIDAsIDY2MCwgMTAxMjcsIDY2NiwgOTAyMiwgNTUzMiwgNDM2NjcsIDU1MzMsIDc3OTQxLCA3ODUwNywgCisgICAgNjExOCwgMjIyLCA5NzksIDM4ODQsIDAsIDc0MTUxLCA5MjY1MiwgNjUwMiwgMCwgMTI3MTE4LCAxMjg2OTUsIDYzOTUxLCAKKyAgICAxMjQ2NSwgMCwgMCwgMTI4NzgyLCA2Mzk0NiwgMTcwNywgNjM5MjQsIDEyNDYxLCA2Mzk1MCwgNjM4OTcsIDYzOTQ4LCAKKyAgICA2Mzk0NywgNjM5NDUsIDYwMzgsIDYzOTQzLCA2Mzk0MiwgNjQ2ODUsIDYzODk1LCA2NTgzOCwgMjI3NiwgNzc3NiwgOTQwNzYsIAorICAgIDAsIDEyNzc3MywgMTIwNDQ0LCA2OTczMCwgODAxLCA0MzE2NSwgMTY5MCwgNjM5MTksIDYzOTE4LCA2MzkxNywgMTMyNzcsIAorICAgIDQzNjU5LCAxMjk1MSwgMTIwNjM4LCA5OTA2LCAyMDU0LCAyMzM0LCA3ODUxNSwgNjM5MTYsIDU0ODMsIDYzOTE0LCA2OTczNywgCisgICAgNjM5MTEsIDU0ODQsIDYzOTA5LCA2MzkwOCwgMjUzOSwgMCwgNDM5ODAsIDU0ODUsIDAsIDQyNjk3LCA5MDYxLCA1NTM0LCAKKyAgICAxMDY3MiwgNDUwMiwgMCwgMjUzLCAwLCA2ODIwOCwgMCwgOTIwMywgNzQyMzEsIDAsIDExNTMwLCA5MjU0MiwgNjg2NjgsIDAsIAorICAgIDExODkwNywgMCwgMTA0NzQsIDQzNDI2LCAxMzI1NywgNDIzNTQsIDEyODA5OSwgOTgzNjg5LCA3MDA0NCwgMTk1MDY1LCAwLCAKKyAgICA4NDEzLCA5ODM4MDcsIDAsIDU2OTMsIDcyNzIsIDAsIDEzMjA5LCA2NDQ3MCwgNjU4MzEsIDc0MzUwLCAxOTUwNjMsIDAsIDAsIAorICAgIDAsIDEyNjYzOSwgMCwgMCwgOTQwNzgsIDEyODEzMywgMTI3NzY3LCA2NjYwOCwgMzExMSwgNDE4NjMsIDg4MDQsIDQyOTEzLCAKKyAgICA5MjE4NywgNzI3MCwgMCwgNjY2MDYsIDY2MjgsIDEwNzYsIDc0MzMsIDE0MzYsIDczODQ0LCA1NTIyNiwgMTI4MzUzLCAKKyAgICA2Mzk4MiwgNzM5MywgMTI4MDcsIDQzNDEzLCA2MzkwNiwgMTU5OCwgNjM5MDQsIDAsIDAsIDQxNzI5LCA0NDIzLCAxMzA3LCAKKyAgICAwLCAxMDUxNSwgNDE1ODksIDEyODY5OCwgMCwgNjIxOCwgMCwgMTQzMCwgMCwgMCwgMTIwNjA2LCA3ODc1NCwgNTQxMywgCisgICAgNzYxOSwgMzI1NSwgMzQ5MywgNzQwMzIsIDExNTQ5LCAxMDczNSwgNDE3NDMsIDczOTM3LCA2ODAxLCA5ODM2MjQsIDQ1MTgsIAorICAgIDEwOTkwLCA2NTA3MywgNTE2NywgNDQ4MSwgMzc3MSwgMTIwMTU4LCAyNzEwLCAwLCA2OTI0MywgNDE3MjQsIDAsIDQzMDczLCAKKyAgICA0MTY5MCwgMTI0NzksIDk4MzYyNiwgMCwgMCwgOTgzODA5LCA3MDA0NiwgMTYyOCwgMTI3MTQ5LCA5ODM0NzksIDk4MzcyMiwgCisgICAgNjUyNjIsIDYzMzMsIDEwNzgzLCA0MjMxNSwgMCwgNjM4NTUsIDk0MDU2LCAwLCAwLCA1MzM5LCA3NDMyMywgMCwgMTMwMDQsIAorICAgIDAsIDQ0NTcsIDAsIDAsIDAsIDAsIDU2ODQsIDg2NzgsIDEwOTE0LCAwLCA1Njg5LCA2NTgwNywgMCwgNjg0NjQsIDEyNjMzLCAKKyAgICAxMjg3MCwgNjk3MDUsIDY1MTgzLCA1Njg4LCAxMTkyNiwgNjAzMywgNjMxMCwgNTY4NiwgMCwgNzQyNTEsIDAsIDEyMDY0NywgCisgICAgMCwgNTAsIDEwNTU4LCA5ODcxLCA0MjYxMiwgNDM2NTUsIDAsIDAsIDAsIDY2NDY4LCAwLCAxMzI1OSwgNDQ0OCwgMCwgCisgICAgOTgzODM2LCAwLCA3MDA0MywgNjc4NTMsIDAsIDEwNjQwLCAxMTUzOSwgMTE1MSwgMCwgOTE3NjA3LCAxMjc1NDQsIAorICAgIDEyNzA3OSwgMTk1MDUwLCAxMjc4NTIsIDAsIDAsIDAsIDEyNTAxLCA2NDYwNCwgMCwgMTE1MjcsIDExODg3MCwgODgxMiwgMCwgCisgICAgMTE1MzgsIDg2NzMsIDEyNjUwLCAxMTAyMCwgMCwgNjY0NjcsIDIxMDUsIDgwODcsIDc4MTYzLCA2OTYzMiwgOTg5NCwgMCwgCisgICAgMCwgMCwgNDYzNiwgNTUyNjIsIDc4NTEzLCA0NTE1LCAyMzgyLCAwLCAxMjcwNTUsIDAsIDEyMDQ5NSwgMCwgMTI4Mjg0LCAKKyAgICAxMjI3NywgMTk0NjI3LCAxMTk5NSwgOTI1NTMsIDAsIDEyMTU4LCAwLCA4NzQxLCAxMDE5NywgMCwgOTI0MjYsIDAsIDY1MzEsIAorICAgIDAsIDEyNzg0NiwgNDczLCA0MzQxNSwgMCwgOTgzNjQxLCAxODczLCAxMDg3LCAwLCAwLCAwLCA3ODUyNywgNjY0MzksIAorICAgIDQzMjE4LCA5ODMxMjMsIDE5NDcxNiwgNzIzNywgMTI1MDQsIDc0MjgyLCAwLCA5ODM1NzEsIDAsIDk0ODksIDAsIDAsIAorICAgIDQzODQsIDc0MjIwLCA2Mzg0NSwgMjA1OCwgMTI4ODYzLCAxMzI5NSwgNDMxOTEsIDEyODAzMCwgMCwgMTE1NCwgMzg1NywgCisgICAgMTIwNSwgMCwgMCwgMTMxMDAsIDEyOTU4LCAxMjA3MDYsIDc0MTY4LCAwLCAwLCA0NDIxLCAxMDU5MiwgMCwgNDk1LCAKKyAgICAxMTkwMDcsIDQxNzEyLCA3OTgzLCAwLCA5Mzk5NywgMCwgNjM0NywgMTIwMTY1LCA3NjU0LCA0MTcxMCwgNDE5NiwgMCwgCisgICAgNDM3LCA0MTcwOSwgNzM3NzIsIDAsIDAsIDk0NjUsIDEzMjkwLCAxMTkxODAsIDQ5OTcsIDY0MzA2LCAwLCAwLCA0OTk5LCAKKyAgICAxOTQ2NDIsIDAsIDEyNjU4MiwgNDcxMSwgMTIwNzY5LCAwLCAyNzM5LCAwLCA4MDQ0LCA3NDgzNCwgMTk0NjQzLCA0MTc4OSwgCisgICAgMTI4MTQyLCAxMDgwOSwgMCwgMCwgMCwgMTc3OSwgNjYwMCwgNjYwMSwgNDE1NDMsIDUzMjUsIDY0MiwgNjQxODcsIDEzMDU4LCAKKyAgICAxMjA0NDksIDEyODc1LCAwLCA5MjE4NiwgMTMyMjksIDAsIDEwNTc1LCA0MzM5OSwgMCwgMCwgNDE3OTEsIDExMDQsIDAsIDAsIAorICAgIDEwNjU1LCAwLCAwLCAwLCAwLCAxMDgyLCAxOTUwNDksIDg0MjgsIDY1NjksIDAsIDAsIDAsIDY5ODQ5LCA2NzgzLCAwLCAKKyAgICAxMjk5MywgODA0OSwgNDE1NDgsIDQ0MDIxLCA2NDU4LCA5ODM3OTgsIDEyODg4MiwgNDc2MSwgNjM4MjgsIDQ3NjYsIAorICAgIDY0NjIzLCAxMjczLCA0MzQwNywgMCwgMTE4ODc2LCAxOTUwNDUsIDY5MTIsIDEzMTMsIDYzMjIsIDEwNDgzLCA5ODM2MDMsIAorICAgIDQxNTQ1LCAwLCA5MjQ0OSwgMCwgMCwgMCwgMCwgNzg2MjQsIDM0ODQsIDc0MzM3LCAwLCAwLCA4NTAzLCA1MTIyLCA0MTUyNywgCisgICAgMCwgNjYzMjAsIDk4MzgwMiwgMCwgMCwgMCwgNDE1MzcsIDY5NjgzLCA4MzAzLCA4MjgyLCAxMTgxNywgNzM4NTcsIDEwMDAzLCAKKyAgICA3Mzg1OSwgNjU5MDQsIDczNjMsIDE2ODYsIDAsIDc4NDA2LCAxMTQ2NywgMzY2NCwgNjU5MjEsIDY0Mjk5LCAxOTQ2NjQsIDAsIAorICAgIDAsIDQzMjQsIDEyNiwgNDIyNDYsIDExOTE1MiwgMCwgNzQzNzgsIDY1OTI2LCA3NzQ0LCAxOTQ2MzYsIDc0Mjc3LCA3NDMwMiwgCisgICAgNzgwNTIsIDQzODE3LCA2OTY2LCA0MzgyMiwgODEzNiwgMCwgNjU2MDAsIDE2MzMsIDAsIDAsIDQ3NjIsIDExMDMsIDAsIDAsIAorICAgIDQ3NjUsIDk4MzQ4NCwgMTMwNzgsIDAsIDQ3NjAsIDYzODI3LCAyMDUwLCAxMDg3MSwgNDMxOTksIDExMDIsIDAsIDQyMjM2LCAKKyAgICAxMjg4NjcsIDE5NDY2NywgMTE1NDYsIDc0Nzk0LCAzMzcsIDAsIDQyNTkxLCA4NjI3LCAxMjI3OSwgMTExMSwgMCwgOTIxNjEsIAorICAgIDQ3MDcsIDY4MjA2LCAxMDE0MywgNzg4MywgMTI3MDgxLCA3ODgwLCA0NTIyLCA4NjQ1LCA1NzA0LCAxMzAxMCwgMCwgODMwNCwgCisgICAgOTE3NTYxLCAwLCAxMTk1NzUsIDIyOTMsIDAsIDY2NjU0LCAwLCA5MjY3NiwgMCwgMTMwMDgsIDAsIDQzODUsIDAsIDEzMDExLCAKKyAgICAwLCA5MjU2OSwgMTE5MTYxLCAxMzAwOSwgMTYwLCAyNjc3LCAwLCAwLCA0MTc5MywgNjU3NjMsIDc0MjIxLCAxMjAxNDEsIAorICAgIDQxNzkyLCA0Mjc3MCwgOTQwNTQsIDY1NzYyLCAxMTg4MjksIDQzODIxLCA1NzA5LCAwLCA5NDA1MywgNDM4MTYsIDAsIDAsIAorICAgIDEwNzksIDM4NjcsIDU3MDgsIDAsIDAsIDQzNzk3LCA1NzA2LCA2NDc2OCwgNTcwNSwgODc5MSwgNDAwNSwgMCwgMTAyMzcsIAorICAgIDEwOTkxLCAxMjg4MTYsIDQzNDU5LCA5MTczLCA5MTc1ODEsIDkxNzU4MCwgMTMxNzAsIDEyNTQwLCA5MTc1NzcsIDQyNjA1LCAKKyAgICAxMjA3NjUsIDEyNjYxNywgNjg2NDcsIDkxNzU3MiwgMTAwNTgsIDAsIDc0ODY3LCAxOTQ2NTQsIDEyNzA3OCwgMzMzOSwgCisgICAgMTE0NDgsIDExMDYsIDkxNzU5MSwgOTE3NTkwLCA5MTc1OTMsIDMzNDAsIDkxNzU4NywgOTE3NTg2LCA5MTc1ODksIAorICAgIDkxNzU4OCwgMTIwNTQxLCAxMDYwNSwgMTMwOSwgNjM5NjYsIDEyMDc0MywgMTc1NCwgOTIyMjYsIDEzMjQ2LCA4NjQsIDAsIAorICAgIDExODkyNiwgODk3MiwgMCwgNzg0OSwgMTIwMDkyLCA5MjUzMywgMTMyNDAsIDE5NTA2OCwgNTE5MiwgNDMzOCwgNjc5ODIsIAorICAgIDEwOTQ4LCA5MTc2MDEsIDEzMTk5LCA5MjU3NSwgMTIzNiwgMTMyMDgsIDEzMjYxLCAxMzE4OSwgMTMxODgsIDkzOTkzLCAwLCAKKyAgICA3NDQwLCAwLCAxMjAxNTMsIDk1NTMsIDE1OTAsIDYzNzc3LCA2Mzc3NiwgMTMxNzgsIDYzNzgyLCA2Mzc4MSwgNjM3ODAsIAorICAgIDYzNzc5LCAxNTgzLCAwLCAxMzI2MCwgNDU1MCwgMCwgNjQyMDUsIDAsIDAsIDQxNTIyLCA5ODM5MDYsIDkyMTY4LCAKKyAgICA5ODM3NjMsIDkxNzg1OCwgMTEzNTQsIDk0MDcxLCAwLCA0Mjc5NSwgMCwgMTE5MTk1LCAxMTM5NCwgMTk0NjQ2LCAxMzIzNiwgCisgICAgMTMyNzIsIDEzMTk0LCAxMzM0LCA2OTkyNiwgNDQ3OSwgMTE3OCwgNjU1ODYsIDEyMDY2MywgNjY2ODEsIDExOTE5MywgCisgICAgNDYwMSwgMCwgMCwgOTgzNzU2LCAwLCAwLCAxOTQ2NTgsIDAsIDY4MDksIDYzNzg2LCA2MDMxLCAwLCA2Mzc5MSwgNjM3OTAsIAorICAgIDExNDUsIDYzNzg4LCA3OTEwLCA2Mzc4NSwgNDMxNTMsIDc1NCwgMTAxOTIsIDEzMTA1LCA4MTgzLCAxMjA3NDEsIDIwMzcsIAorICAgIDAsIDAsIDEwNzQ3LCAxMjUsIDAsIDY0ODkwLCAwLCA5ODMxMzEsIDAsIDQxNzE5LCA2Mzc1OCwgMzUyMywgMTA3NCwgCisgICAgMTMyNTgsIDk1MzYsIDc0MDc3LCAwLCA0NDI3LCA3NDI0MiwgNjM3NTcsIDQzMTQ1LCAxMjIxNywgNjM3NTQsIDQxNTMyLCAKKyAgICAxMzQ5LCA2Mzc1MCwgNjM3NDksIDAsIDAsIDAsIDYzNzUzLCA2MzgwMiwgNDEwODQsIDEyMDYyMiwgNjgxMzMsIDQxOTMwLCAKKyAgICA2MzgwNSwgNjM4MDQsIDQzNjMyLCA2MzgwMSwgNDEwODIsIDgxNDAsIDYzNzk4LCA2MjYwLCAwLCAwLCA5NDA3NCwgNjM3OTMsIAorICAgIDExOTg4LCAzODk4LCAxMjgyNDEsIDEwMjAxLCAxMjIzOCwgNjM3OTUsIDQyMTk0LCAxMDM2NywgMTI1MjEsIDEwNDMxLCAKKyAgICA0MjExNCwgNDE5MzIsIDEwNjgsIDAsIDEyNTIzLCAxMjk0NSwgOTgzMzIxLCA0MjIwMywgNzk1MCwgMTA4MDQsIDYzNzcxLCAKKyAgICA0Mjc4NywgNDM4NiwgMTIyMjQsIDY5NzMsIDI3OTMsIDEyNDc1LCAwLCAwLCA2Mzc2OSwgOTUzMCwgOTgzMTE5LCAxMjIzMiwgCisgICAgMTMxMzUsIDg1OTYsIDU2ODEsIDYzNzYyLCA0NTk1LCA2Mzc2MCwgNzkyLCAwLCA2NDgwMywgMCwgODc0MiwgMCwgMTEwNTMsIAorICAgIDEyODc5NiwgNjM3NDQsIDEyODEwNywgMCwgNzU4OCwgNjM3NDgsIDE2OTMsIDYzNzQ2LCA0MzIwNCwgNTA1NSwgNjg0MjYsIAorICAgIDkxNzg1MywgMTA5MCwgMTIwNjc5LCAxMjgzNTYsIDExNjY1LCA3NDEzMywgNDU1OCwgNjU2ODUsIDk1MjMsIDAsIDAsIAorICAgIDc4NjgxLCAxMTUxMywgMCwgNjE1NywgNjM3NzUsIDYzNzc0LCA2Mzc3MywgMTMxOTEsIDEyMTcwLCAzNTAwLCAzMTM5LCAwLCAKKyAgICAzMTcwLCAxMjQ4NSwgMCwgMTA4NzIsIDc4MjcxLCAxMzAwNiwgNjQ0MzMsIDAsIDAsIDk0MSwgMCwgMCwgMCwgNjU1NDEsIAorICAgIDExMDYzLCAwLCA4MjI4LCAwLCA0MjA2NSwgMCwgMCwgOTQwMzksIDAsIDkyNDU1LCA3Mzg2LCAwLCA2NDQ0NCwgMCwgCisgICAgMTE5ODYzLCA0MzYwMywgOTQwNzUsIDY1Mzk3LCAyODgsIDAsIDAsIDAsIDEwMDI1LCA2OTkxNSwgMjkxOCwgMCwgNjUzMDAsIAorICAgIDExOTg3MSwgOTg4MywgNjQ3MjYsIDI3OTAsIDY1Mzk1LCAzNzkzLCAwLCAxMjc4MjksIDY1MzkzLCAwLCA3NDEzOCwgMCwgMCwgCisgICAgMCwgNzQxMzksIDkyNzEyLCA2NTM5NCwgMTE1NDgsIDUyNzAsIDAsIDY1Mzk2LCAwLCA2NTgxMywgMTMyNTYsIDEyODIsIAorICAgIDEyMDc3MSwgMCwgMCwgMTA4ODgsIDk4MzYwNCwgNjUyNDIsIDAsIDMzMzAsIDAsIDAsIDk4Mzk2NSwgMCwgMCwgNzQyNTksIAorICAgIDMzMDQsIDQyNzUzLCAwLCAwLCAwLCAxNjI3LCAwLCAwLCAwLCA1MzcxLCAxMzExNiwgMCwgMTgyNiwgMTE4Nzk0LCAwLCAKKyAgICA0MzA5NCwgNzAwMjMsIDQzNjUwLCA5NDAzNywgMCwgOTAzNSwgMCwgMCwgMTI4MDA1LCAwLCA5MjIwNywgNjgxMjUsIDAsIAorICAgIDE2NCwgMCwgOTQwNjcsIDk0MDAwLCA2OTU4LCAwLCA0MzExNiwgMCwgNzAwMTksIDEzMjQ1LCAwLCAwLCAxMjczNzYsIDAsIAorICAgIDcwMDMxLCAxMjc3NTYsIDEyNjY2LCAxMzE3NSwgMTMyMDcsIDEyMDQxNCwgNjYwMTQsIDEyMDQyOCwgNzQ0NywgNTkyOSwgMCwgCisgICAgNjU1MDksIDAsIDc0NDksIDExMzA2LCAwLCA3MzkyMCwgMzE4MCwgMCwgNjM4MDgsIDkwNTQsIDk3MSwgMTMwNjIsIDAsIDAsIAorICAgIDY1MTk1LCAxMDE2NCwgOTIyNTIsIDc0NDI4LCAwLCA3ODE0NiwgOTI2MTEsIDAsIDAsIDAsIDEwMDQ1LCAxMjg4MiwgCisgICAgMTMyNzUsIDEyODE2MSwgMTEwNTcsIDAsIDEzMjc2LCAwLCA0MTUyNSwgNzgxNTAsIDcyNzEsIDExNDQ0LCAwLCAwLCAwLCAKKyAgICAxMjIyOSwgNDE1MjMsIDAsIDQzNDExLCA3Mzc1MSwgMCwgNjQ4MTMsIDAsIDAsIDEwNDc2LCAzODU4LCAwLCAzOTMyLCAKKyAgICA2NDk1OCwgMCwgMCwgNzM5ODksIDY4MTkyLCAwLCA2OTg0NywgMzY5LCAwLCA0MTc4NCwgMCwgNjQxNjMsIDAsIDAsIDAsIAorICAgIDY1NDc0LCA0Nzk2LCAxMjI5MiwgMTI2NTk1LCA2NTQ3OSwgMCwgNDE3ODEsIDEwNDg2LCA0MTQ4MCwgNDMwMDIsIDk4OTksIAorICAgIDAsIDAsIDQwNCwgMTI4MjEsIDM3NDEsIDAsIDU3ODgsIDgwOTIsIDY4MjEyLCA0MTIyMiwgMTgzMSwgNjYwMjAsIDM5ODIsIAorICAgIDAsIDQzODgsIDAsIDc0NiwgMTIwNzg0LCAwLCAwLCAxMjAxOCwgNjUyOTQsIDAsIDAsIDAsIDAsIDQ0MjIsIDQ3MDgsIAorICAgIDM3OTksIDc0MjkyLCAxMTkzNTcsIDAsIDc0NDMwLCAwLCAxMTcwMCwgNDM3NCwgMCwgMTI4MTc5LCAxMzY0LCAwLCA4MDM4LCAKKyAgICAwLCA5MTc1OTcsIDEyODY4LCA2OTgxNCwgMCwgNjczNSwgNzM5NzksIDEzMTc0LCA3Mzk2OCwgMTMyMjUsIDAsIDY5ODA4LCAKKyAgICA2NTgzNSwgMCwgMjM2NSwgNzg0MSwgMCwgNDI4NTUsIDExODg1NiwgNDI4NjYsIDAsIDAsIDAsIDY2NDM4LCA0MTc4NSwgCisgICAgMTI2MTcsIDY0MTcyLCAxMzE3MywgNDM3MiwgMTE5MzU0LCAwLCA5ODM1NjgsIDAsIDAsIDkyNDAyLCAxMjgwNjIsIDEyOTY1LCAKKyAgICAzODQsIDY0NTEyLCAxMDQwNCwgMTAzNDAsIDExOTM1MiwgMTU1NiwgNTI3NCwgMTMyMTAsIDEyMDEyNSwgMTAwMTcsIDk3MzMsIAorICAgIDQxNzg3LCA5ODMyMzcsIDEyNjk5NCwgNDEzNzMsIDc4MDM5LCAxMjMwMywgMCwgMTMyMzIsIDEzMjMzLCAzNDksIDQ4NjMsIAorICAgIDQxMzcxLCAxMTY1NiwgMCwgMTIwNzAzLCAxMTk4ODMsIDEyODYxLCA0Mzk4LCA4NTQzLCA2NTYxOCwgMTI4MDE4LCAxMDk2LCAKKyAgICAwLCAwLCA0MjY4OCwgMTI0NDEsIDEyMzU1LCAxMTkzNDgsIDExOTM0NywgNDMxOCwgMTA0NTIsIDAsIDgwMzIsIDEzMjQzLCAKKyAgICAxMzIzNywgMTI3MTksIDEyNjY0NiwgMTE5MTAxLCAwLCA2NDg4NCwgMTE5ODcyLCAxMTkzNDUsIDg1OTcsIDAsIDAsIDk4NjQsIAorICAgIDAsIDEyMDc4NSwgMTE5ODc0LCA5NDEwNywgMTMxOTUsIDQxNDUyLCA2NDk2MSwgNzcyMiwgMCwgMTA0NTksIDExOTg3OCwgMCwgCisgICAgMTE5ODc5LCA2NjU5MCwgMTI4MTIzLCA0MTUzMywgNjYzMzcsIDAsIDkyMTg0LCAwLCA0OTY1LCA0MzQ0NSwgOTE3NTM2LCAKKyAgICA3Mzg0OSwgMCwgNDM2MzgsIDc4NTM3LCAxMjgyODcsIDYyNjEsIDExOTM0MiwgNDMxNDcsIDY2NTcwLCAxOTU3LCAxMDQyMCwgCisgICAgOTgyLCAyNzU2LCAxMzI5MiwgMTMyMDYsIDEyODgyOCwgMCwgMjkyNSwgNzM4MDksIDEzMDU2LCAxMjc1NTksIDEzMjEyLCAKKyAgICA0MzIzOCwgMCwgMTMxOTAsIDEzMTg3LCA5MjU0MSwgMTMxOTgsIDExODc5MywgMCwgNTI0MiwgMTE5MTc5LCA2NDQ3NiwgCisgICAgMTY5NCwgODIxNiwgNzEzNjksIDY3NzAsIDQzMzMxLCAwLCA2NTYyMCwgOTgzNzE5LCA0MzU0NCwgMTI2NDY2LCAwLCAKKyAgICA0MTQ0NCwgNjU2MjEsIDY5OTU1LCA5MTk3LCA1MjQ2LCAxMTkxMDYsIDEzMTg1LCA5NzA5LCAxMjAzMjMsIDEyMDMyMiwgCisgICAgMTIzMTQsIDY1NjE2LCA1MjM4LCAxMTkzMzMsIDAsIDExOTMzNywgNTIzNiwgNDA5NzksIDAsIDc0MjAxLCA4Mjg2LCAKKyAgICAxMjg1MzcsIDM5MzYsIDExOTMzMSwgMTE2OTksIDQxMzQ3LCAxMjcyNDksIDEzMjM1LCA4ODQyLCA0MTI0OCwgMCwgNDM3OSwgCisgICAgMTMyMzksIDEyNjkyLCA3OTY5LCAxMjcyNjYsIDcyMTksIDEyNzI1MCwgMTI4MjUxLCAxMjA1MDksIDAsIDY2MjI0LCA3MzQsIAorICAgIDI5NzksIDEyMDMwMywgNjU2MTksIDk4NzIsIDk1NywgNjQ5MjEsIDE4NDYsIDY2NjMxLCA0MTQ3NywgMTE5MjU2LCAKKyAgICAxMjAzMTAsIDc0NTExLCA0MTc3MCwgMTY3MCwgNjQ0MiwgMTIwMzE3LCA0MjQ0NiwgNTM3OSwgMTIwMzE4LCA0MTE2MywgCisgICAgNzQ4MzIsIDEyMDMxNSwgMTIwMzE0LCAxMTUwNiwgMCwgNDI4NDEsIDEzMjY3LCAwLCAwLCA0MTc3NSwgMCwgNzEzMCwgCisgICAgNDE3NzMsIDAsIDEwNjYzLCAwLCAwLCAwLCA2MTUxLCAxMjExMCwgNDI2NzMsIDY1NTcyLCA2NTI5MywgNjUyNTAsIDEzMjY1LCAKKyAgICAxMzI2NCwgNjQ1MTgsIDAsIDYxMDAsIDAsIDkyNjQ3LCA1ODA4LCA2NTkyMiwgMCwgMTI5NjcsIDY2MDQxLCA1NjEyLCAKKyAgICA0NTgzLCAwLCAwLCA2ODA5NywgNjQ1NzUsIDEyNjYzNywgMTE5NjUsIDAsIDY4MzU4LCAwLCA2OTc4OSwgMCwgOTIyNjAsIAorICAgIDY4MTAyLCA5Njk4LCA3ODE0LCA3NDQ3NiwgMTE5NjUxLCAxMjg1MTQsIDAsIDQxOTIxLCAxMTg4NTgsIDk3NTYsIDY5ODUsIAorICAgIDExOTI1OCwgNzg0OTAsIDc0MjE5LCAwLCAwLCAxMTg5OTcsIDgwMTIsIDU2NzQsIDEyMzUzLCAwLCAxMjM2MSwgNTY3NywgCisgICAgNTU4OCwgMCwgNDE5MjUsIDEyODEyNCwgNDE5MjAsIDU2NzMsIDEyMDUzNCwgNTY3NiwgNDE5MjMsIDEyNjk0LCAxMTg5NzgsIAorICAgIDU2NzIsIDEyOTQsIDAsIDc4MDU5LCAwLCA0MjUxMSwgMTcyNywgMTIwNzI1LCA0MjQzNiwgMCwgMCwgMCwgNzQyMjIsIAorICAgIDg3MTgsIDM1NTAsIDczNiwgMTAyNjgsIDQ1MDUsIDEwMzE2LCA3NDA5MCwgNTgyNiwgNTUyMzIsIDU4MTMsIDAsIDEyMDcxMiwgCisgICAgNTg0MSwgNTgzNywgNTUyMzQsIDAsIDMxMDUsIDEyODI5LCA1ODM4LCA1Nzk2LCAwLCAxMTk1OTIsIDU3OTMsIDAsIDU4NjYsIAorICAgIDU3OTcsIDQxMDExLCA1ODY1LCAxMjAwOTEsIDc5NTYsIDU5OCwgMCwgNjQ2NDksIDU4MDYsIDQyMzk4LCAwLCA5MDM3LCAKKyAgICA1NjcxLCAxMjAwNDEsIDAsIDAsIDAsIDEyODg1NSwgMCwgODQ3LCAxMjgyNDIsIDk1MjksIDAsIDY2NjU3LCA2OTgwLCAKKyAgICA3ODQ4MywgMTIwMDM1LCA3ODQ4NCwgOTgzNDgzLCAwLCAxMjAwMzMsIDc4NDg2LCAwLCAwLCAxMjAwMzksIDQyNjgzLCAwLCAKKyAgICA5ODMwNTUsIDcxMTQsIDAsIDAsIDQzMTkwLCA2NTQ2MywgMTU1NCwgMCwgNDI2MTEsIDQyNTYzLCAwLCA1NjUxLCAyOTI5LCAKKyAgICA2NzkyLCA0MzIwMSwgMCwgMTk5NjMsIDU2OTgsIDAsIDAsIDAsIDAsIDU2NDQsIDEwMjkyLCA2NTU0NiwgNjk3MjcsIAorICAgIDY4MTQxLCA4MzcyLCAwLCA2NTExNiwgMCwgMTIwMDIyLCAxMDE3NSwgMTAzODgsIDQyNzk5LCA5NDEwMCwgNDEwMTMsIAorICAgIDEwNTY4LCAwLCA5ODM2MTgsIDI4NjksIDAsIDQxMDE1LCAxOTQ2OTIsIDI3ODUsIDQzNjYsIDAsIDEwOTU0LCA0MTgwMiwgMCwgCiAgICAgNDI2MDgsIDc4NDY5LCA5ODg0LCA0NzU5LCAwLCAwLCAxMDI2NiwgNDEzNTksIDExNzAsIDQzMzY1LCA2OTgxMCwgNzM5MDgsIAogICAgIDE2MDksIDkwMiwgMCwgNjM5MzYsIDEyODg3NSwgMTE2NjEsIDgxMjIsIDU4MTgsIDAsIDAsIDM4NjEsIDk1NDAsIDExMDI4LCAKLSAgICAyNTU0LCA1MTU4LCA1NzE0LCAxMjcwMTUsIDAsIDAsIDgwNywgNDMwNzksIDAsIDc4NDc1LCA5NzYsIDU1MTEsIDY0NTUzLCAKLSAgICAwLCA0MjE1NSwgMCwgNDEzNTYsIDc0MTEwLCAxMTg4MDEsIDAsIDAsIDg2NzYsIDAsIDAsIDExMDY2LCA0NTEsIDYzOTQxLCAKLSAgICA1Nzk4LCA5MzQ5LCA0MjAxOCwgMTI3ODU4LCAwLCAwLCA0MzYwOSwgNTkwNiwgMTIwNTUzLCAxNDQwLCAwLCAxMjg4NTMsIAotICAgIDEyMDAxNiwgNzQyODMsIDExMDA1LCAwLCA2NjY1NiwgNjYwNDQsIDAsIDE5NDY5OCwgMCwgMCwgNDMzOTMsIDEwMDk0LCAwLCAKLSAgICAxMTUyOSwgMTA4NTcsIDEyMDY0MywgNjY0MzYsIDY1NDYsIDkzLCA4MTAyLCAwLCA2ODQwNSwgMCwgMCwgODE3MSwgMCwgCi0gICAgMTE5MDk3LCAxMjcwNjQsIDkxNzU0MywgMzgzLCA3MTU0LCA0MTY1NiwgOTI2MzQsIDAsIDAsIDUxODcsIDAsIDEyNzI3NywgCi0gICAgMTEyODYsIDY4NjIwLCA2NDIxNywgMCwgNTIzMiwgMCwgNDEwMDksIDAsIDQxMDA1LCAwLCAwLCAwLCA4MjkyLCAxOTUwNzQsIAotICAgIDQ5ODAsIDg4NjAsIDczOTQ3LCAxMDAyOCwgNjUyOTEsIDcwNzYsIDEzMTgyLCAxOTQ3MDUsIDAsIDAsIDEwNjMxLCA2NjAzMSwgCi0gICAgNzk3MiwgMCwgNzg3ODUsIDAsIDc5MDAsIDAsIDExMzA5LCA3ODMxOSwgNDE5OCwgNDI3MjUsIDAsIDY3NjU2LCA5OTk1LCAwLCAKLSAgICA5MjU1MiwgMCwgMTI5MzEsIDAsIDQyNjg0LCA3NDI4NSwgMjA4OCwgMCwgNjQzNjYsIDY1MTU2LCA4ODE0LCA0MjIzOCwgCi0gICAgNzQ3NzEsIDAsIDAsIDEyODM2LCAwLCAwLCA3NDM0MiwgODU5MywgMCwgMCwgNjg0NDUsIDEzMjU1LCAwLCAwLCA3NDY0LCAwLCAKLSAgICA2NTg2NSwgMCwgMTk0NjUwLCAxMjcxNDQsIDAsIDkzNDIsIDEyMDQ2NCwgMCwgNjQ1MTYsIDAsIDc4NzkyLCAxMDEyOSwgCi0gICAgNDEwMDcsIDc0Mzc1LCAwLCA0MDk5NSwgMTIyMDksIDQxMDEyLCAxMTkxMzYsIDAsIDAsIDY5NzI0LCA0MDk5MiwgOTIyNjQsIAotICAgIDEyNzE1MywgNjg2NTMsIDQzNTU4LCA1NTIyLCAwLCA2MSwgMCwgNzQxMDUsIDM2MzMsIDAsIDY1MTYyLCA0MTIzNCwgCi0gICAgMTIwODksIDc4MjgxLCA5NzcxLCAwLCAxMzI1MSwgMTI4NzAxLCAwLCA2MjYyLCAyNzg0LCA0Mjc0MywgMCwgODEyNiwgCi0gICAgNjY0ODMsIDAsIDAsIDQ0MSwgNDI2MjEsIDAsIDAsIDQxMDAyLCA0MDk5OSwgMTE5NjIzLCA0MzI2NiwgNzEwOCwgMTk0Nzc5LCAKLSAgICAxMDg5MCwgNzQ0ODEsIDY1ODM0LCA4MzI0LCAxMTkxMDMsIDY0NDE3LCA3NDgxNywgMTI3NDY1LCA2NDczNywgMCwgMCwgCi0gICAgODkzMCwgNjY2NzgsIDc0MjQ5LCAxMTkzLCAxMDA1NiwgMTgwMCwgMTMyNTMsIDEzMjUyLCA3ODI5LCAwLCAwLCA3NzQzLCAwLCAKLSAgICAwLCA3NzkwNCwgOTI2NDAsIDc3OTA1LCA5MDM0LCA2MDM5LCAwLCAxMDA3NSwgMCwgNDEwMTgsIDY1NjgzLCAxMDMzOCwgCi0gICAgNjY0NjksIDAsIDAsIDAsIDQyODE1LCAwLCA0MTk2NiwgMCwgMCwgMCwgMTE3OTIsIDQzMDY0LCA0MTAyNSwgOTExLCA3NTM5LCAKLSAgICAwLCAwLCAxMjAzMzksIDY1MTU5LCA2NDM5MCwgMCwgMCwgNTUyMCwgMTE2NjIsIDAsIDY1MzMwLCA0MjgxMiwgMCwgMCwgCi0gICAgMTIzMjYsIDAsIDAsIDQyODA4LCAxMjgzMzcsIDkzNDgsIDY0OTAxLCAwLCAwLCAwLCAwLCAwLCAwLCA5MTc1ODQsIDQzNzAyLCAKLSAgICAwLCA1ODU3LCA2NTM0MiwgOTI3MjcsIDExOTEyMCwgMTIwMDc5LCA4NjQ0LCAwLCAwLCAwLCA3NDI5NiwgNDE5MDksIDAsIAotICAgIDEyMDMzMiwgMjc5MSwgNjk2NjMsIDE4OTEsIDY5ODI0LCAwLCA0MTkwNywgNjY2NDcsIDExODkzOSwgODc2MSwgMTI5NDIsIAotICAgIDU3NDgsIDAsIDEwNzczLCAwLCAwLCA4Nzk2LCA3ODE0OSwgNjQxMiwgMjA2MSwgODUyMCwgMTMxNDYsIDEyNzE4NSwgCi0gICAgNjM5MzEsIDAsIDY1OTAyLCAyODgyLCAwLCAwLCAxMjg0MywgNDUyMCwgMTIwMzQ1LCA5MjQ1OSwgMCwgMCwgMCwgNzM4NjAsIAotICAgIDAsIDAsIDY0MzQ1LCAwLCA5MjAxLCAxMjgzMTQsIDE5NDk0MCwgMCwgMCwgNDM2NzksIDkxNzU4NSwgNjUxMTcsIDkyMjcwLCAKLSAgICAwLCAxMDQyNywgMCwgMzg0NCwgMTIwNjc1LCA5NzU1LCAxMTEwLCA2NjEyLCAxMjIyMiwgMCwgMTI4Nzg5LCAwLCAwLCA3ODMsIAotICAgIDE5NDkzNSwgMCwgMCwgMCwgMTk0NzIwLCA2NTA1NiwgMzYyMCwgMCwgNjgzNzgsIDQ1NTYsIDAsIDAsIDE5NDkzMywgCi0gICAgNzQyNTAsIDAsIDY3NjU3LCAxMDUxMCwgNDM4MiwgNjY0ODIsIDAsIDAsIDEyNzUyNywgOTE3NywgODkwMiwgMCwgOTgzOSwgCi0gICAgMCwgMTI4OTEsIDAsIDAsIDYzOTk5LCAyMDE2LCA0MTkxNywgOTc4OCwgNjM5MjgsIDAsIDE4NjIsIDY1ODAwLCA5MTU1LCAKLSAgICA2NjYyMywgOTc4NiwgNjUwODIsIDQxOTE5LCA4NTc5LCA0MTkxNCwgNzk4MSwgMCwgNjYwMTcsIDQ1MDgsIDY0ODgzLCAKLSAgICA5MjQ1NiwgOTI1MjIsIDEyNzgxNCwgMCwgNjQ1OTIsIDc0Mjc2LCAxMjAwODAsIDY3ODQsIDc4Nzg4LCA2ODE4MSwgMCwgMCwgCi0gICAgMCwgMTI3NTM0LCAxMjE0NywgOTAyNCwgNjYzNzgsIDY2NDcyLCAwLCA2NDI4OSwgNjUyODksIDc4MTUxLCA2NjY1OCwgCi0gICAgMTk0OTI5LCA2NDUwOSwgNzgxNTIsIDAsIDAsIDExMDUxLCAwLCAwLCAxMTM1NSwgNjU4ODUsIDAsIDEyODMxMCwgNDEyMTQsIAotICAgIDAsIDEyMjk5LCAwLCA3NTAwLCA0NTA2LCA3NzczLCAwLCAwLCA5OTYzLCA2ODY0OSwgMCwgNDA0MCwgMTIwNTcwLCA2MTY3LCAKLSAgICAwLCA2MzkyMiwgNjU5NCwgMCwgMCwgMCwgMzYyNCwgNDMwMzYsIDAsIDYzODcsIDYzOTkwLCAxOTk0NywgNjM5ODgsIAotICAgIDQxOTU1LCAwLCA2Mzk5MywgMTA0NDAsIDk2MTEsIDAsIDY4MDMsIDAsIDc3MzgsIDYzOTg2LCAxMTQ0NiwgNjM5ODQsIAotICAgIDkyNjQxLCAzNDM1LCA3ODE2NCwgNDM4MTQsIDQzODEwLCA3MDI5LCA2NDI1OCwgNDEyOTIsIDExODg5OCwgMTI3NDgsIAotICAgIDQyNzQyLCA5NTE3LCAxMTUxOCwgMCwgNzg3OTAsIDAsIDE5NDc3NywgNjM5NTYsIDQyNDU4LCA2Mzk1NCwgNjM5NTMsIAotICAgIDYzOTYwLCA5NTkxLCA0NTE2LCAxMDIxNywgNjgzNzAsIDExNDY5LCA2OTY5NywgNDIzMDYsIDI3MjMsIDExODk0NywgMCwgMCwgCi0gICAgMCwgMCwgMCwgMTEzOTcsIDI4ODAsIDAsIDAsIDI4NzIsIDAsIDAsIDM0OTgsIDQzNzgsIDkxNzUzOSwgNDI3MCwgMCwgCi0gICAgNjU1NTEsIDY4MjA1LCA2NjMzLCA0MzM4NywgMCwgNTIzMCwgMCwgMCwgMCwgMCwgMCwgODE2MSwgMzkzLCAxMjAxMywgMCwgCi0gICAgMCwgMCwgNDE1LCA2Mzk2NCwgNjM5NjMsIDQyMzQ1LCAwLCA1MTgzLCAxODc3LCA0MjQ5OCwgMCwgMjkyNywgMCwgNjM5NjEsIAotICAgIDQ0NzIsIDAsIDAsIDc4MTU5LCA2OTY5OSwgOTE3OTM2LCA0MjM0MCwgNDc1NiwgMTI4MDc4LCA3MDgxLCAxMDczMCwgNzY5MSwgCi0gICAgMTAzMzEsIDYzODMwLCAxMTk2MjUsIDE5NDk0NSwgNDIxMDMsIDg2MjgsIDk4MTMsIDAsIDQyNDUzLCAxNjA0LCA5NTY1LCAKLSAgICAxMDUzOSwgNjk3MDEsIDY1NzY0LCA0MTQxNSwgNjU3NjcsIDAsIDg0NTcsIDQyMzAxLCAxMTM3MiwgNjQ4NzMsIDExOTkyLCAKLSAgICAwLCAwLCA2Mzk4MCwgMTE4MDEsIDM2MjIsIDAsIDY0MzM2LCAxMjAxNywgMTA0NjMsIDYzOTgxLCA0OTY3LCA2NDE4OSwgCi0gICAgMTk2NiwgNDM2MjgsIDAsIDAsIDAsIDAsIDYzOTcxLCA0MzQ3LCA0NDE2LCA0MjA5OCwgMTEwMDksIDEwNjk0LCA2Mzk3MywgCi0gICAgNDAyLCAwLCAxMzE0NywgMCwgNDIxMDAsIDY0NjQ2LCAxMzIyOCwgMCwgNDE4NzUsIDM1MTUsIDc0MjUyLCAxMTgwNSwgMCwgCi0gICAgMTEzMDIsIDYyNTksIDQzMzk1LCAwLCAwLCAxOTQ2NzAsIDAsIDkyMzUxLCAwLCA3NDQyNSwgMTEyOTksIDE1NjEsIDAsIAotICAgIDkyMzU5LCA2NDk0MiwgMCwgMTk0NzMzLCAwLCAxOTQ3MzIsIDAsIDc0MzAxLCAwLCAxMTI4MCwgMCwgNjk3ODQsIDc0MDYwLCAKLSAgICAwLCAwLCAxMTk2NjQsIDUxNDUsIDEyNDg2LCA2NTAxOCwgNjY1MTYsIDU0MDksIDEyNzM3OSwgMTk0NjY5LCA3NDAyLCAKLSAgICA1Mzk5LCA5Njg1LCA3NDA4OSwgNzk1MiwgNTQwMSwgMCwgNjY2MTYsIDY4NDIxLCAwLCAwLCA1NDA1LCAxMjc4NzUsIAotICAgIDY0ODY2LCAwLCAxMTk1ODMsIDEyODM0NSwgNzg3ODQsIDc0MjQ4LCAxMTMzMCwgMTk0NzIzLCA2NDY5MCwgMzI1NCwgMCwgMCwgCi0gICAgMCwgNDIzOTAsIDQzNjc4LCAxOTQ3MjUsIDAsIDY1MDc3LCAwLCA2Mzg4LCAzMzU1LCA5NTA4LCA5ODY3LCA1NzIzLCAKLSAgICAxMTUyMCwgNTYxMSwgMCwgMzM3NywgMCwgMCwgMCwgMCwgNzgyMjgsIDAsIDAsIDQyNjkxLCA5MTc4ODYsIDEyNzE5OCwgCi0gICAgNzQ3NjcsIDAsIDEyNzA3NSwgMTM3OSwgMjQ2LCAwLCAwLCAzNzg4LCAwLCAxMTA0MSwgOTI1NDksIDY2MzA0LCAwLCAwLCAKLSAgICA4OTE3LCA0MjQwMywgMzAxLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDY1NiwgMCwgNjUyMTQsIDExOTI0MiwgNDI1NjcsIAotICAgIDkyMjE3LCAxMzE2MywgMCwgMTIwODMxLCA3NDU5NywgMzE4MiwgMCwgMCwgMCwgNjUwMzQsIDY1ODg5LCA0MjE2OSwgNDc1NSwgCi0gICAgNzQyNDQsIDAsIDExNDQzLCAwLCA2NjMxOSwgNzQ1OTgsIDYwOCwgNjAwLCAwLCAxMjE5LCAzOTM0LCA2NDIwNiwgMTE0ODMsIAotICAgIDc0NTEwLCAwLCA3NDQ4NSwgNDI0NDIsIDY1NDcwLCAwLCA2NDIwMiwgMTMxNjAsIDc3NTksIDQyNDgyLCA0ODUsIDEyODAwNiwgCi0gICAgMCwgOTgyOCwgMCwgMCwgNDIyODAsIDAsIDkzNTEsIDc3NzgsIDY0Mzc5LCA3NDk2LCA0MjQzMSwgNjkxNiwgMTIwOCwgMCwgCi0gICAgMTE5NjMxLCAxMTAwMiwgNDI0NzAsIDAsIDExODk0NiwgMCwgMCwgNzQwNDEsIDAsIDEyMDYzMywgNDM1MzksIDU0MTEsIAotICAgIDQyMTk2LCAwLCAwLCAwLCA5MTUwLCAwLCA0MjM5MywgMTMwODYsIDEzMTAsIDE5NDY4NywgOTMzNywgMTIwNTIsIDEwNjQzLCAKLSAgICA1NTI3MSwgMCwgMTIxNjYsIDI1NDYsIDE5NDY4MywgMjEzLCAxMTg4NTIsIDY1NjExLCAwLCAwLCAxOTQ3NTYsIDc0MzEwLCAKKyAgICAyNTU0LCA1MTU4LCA1NzE0LCAyMjEzLCAwLCAwLCA4MDcsIDQzMDc5LCAwLCA3ODQ3NSwgOTc2LCA1NTExLCA2NDU1MywgMCwgCisgICAgNDIxNTUsIDAsIDQxMzU2LCA3NDExMCwgMTE4ODAxLCAxMjY2MTQsIDAsIDg2NzYsIDk4MzI4MywgMCwgNTU4MiwgNDUxLCAKKyAgICA2Mzk0MSwgNTc5OCwgOTM0OSwgNDIwMTgsIDEyNzg1OCwgMCwgMCwgNDM2MDksIDU5MDYsIDEyMDU1MywgMTQ0MCwgMCwgCisgICAgMTI4ODUzLCAxMjAwMTYsIDc0MjgzLCAxMTAwNSwgMCwgNjY2NTYsIDY2MDQ0LCAwLCAxOTQ2OTgsIDAsIDAsIDQzMzkzLCAKKyAgICAxMDA5NCwgMCwgMTE1MjksIDEwODU3LCAxMjA2NDMsIDY2NDM2LCA2NTQ2LCA5MywgODEwMiwgMCwgNjg0MDUsIDAsIDAsIAorICAgIDgxNzEsIDAsIDExOTA5NywgMTI3MDY0LCA5MTc1NDMsIDM4MywgNzE1NCwgNDE2NTYsIDkyNjM0LCA5NDA0MCwgMCwgNTE4NywgCisgICAgNzEyOTYsIDEyNzI3NywgMTEyODYsIDY4NjIwLCA2NDIxNywgMCwgNTIzMiwgMCwgNDEwMDksIDAsIDQxMDA1LCAwLCAwLCAKKyAgICA5ODM4MTgsIDgyOTIsIDE5NTA3NCwgNDk4MCwgODg2MCwgNzM5NDcsIDEwMDI4LCA2NTI5MSwgNzA3NiwgMTMxODIsIAorICAgIDE5NDcwNSwgMCwgMCwgMTA2MzEsIDY2MDMxLCA3OTcyLCAwLCA3ODc4NSwgMCwgNzkwMCwgMCwgMTEzMDksIDM4MDYsIAorICAgIDQxOTgsIDQyNzI1LCAwLCA2NzY1NiwgOTk5NSwgMCwgOTI1NTIsIDAsIDEyOTMxLCAwLCA0MjY4NCwgNzQyODUsIDIwODgsIAorICAgIDY0MjEzLCA2NDM2NiwgNjUxNTYsIDg4MTQsIDQyMjM4LCA3NDc3MSwgMCwgMCwgMTI4MzYsIDAsIDAsIDc0MzQyLCA4NTkzLCAKKyAgICAwLCAwLCA2ODQ0NSwgMTMyNTUsIDAsIDAsIDc0NjQsIDAsIDY1ODY1LCAwLCAxOTQ2NTAsIDEyNzE0NCwgMCwgOTM0MiwgCisgICAgMTIwNDY0LCAwLCA2NDUxNiwgMCwgNzg3OTIsIDEwMTI5LCA0MTAwNywgNzQzNzUsIDAsIDQwOTk1LCAxMjIwOSwgNDEwMTIsIAorICAgIDExOTEzNiwgMCwgMCwgNjk3MjQsIDQwOTkyLCA5MjI2NCwgMTI3MTUzLCA2ODY1MywgNDM1NTgsIDU1MjIsIDAsIDYxLCAwLCAKKyAgICA3NDEwNSwgMzYzMywgOTgzODkxLCA2NTE2MiwgNDEyMzQsIDEyMDg5LCA3ODI4MSwgOTc3MSwgOTgzODk2LCAxMzI1MSwgCisgICAgMTI4NzAxLCAwLCA2MjYyLCAyNzg0LCA0Mjc0MywgMCwgODEyNiwgNjY0ODMsIDAsIDAsIDQ0MSwgNDI2MjEsIDAsIDAsIAorICAgIDQxMDAyLCA0MDk5OSwgMTE5NjIzLCA0MzI2NiwgNzEwOCwgMTk0Nzc5LCAxMDg5MCwgNzQ0ODEsIDY1ODM0LCA4MzI0LCAKKyAgICAxMTkxMDMsIDY0NDE3LCA3NDgxNywgMTI3NDY1LCA2NDczNywgMCwgOTgzNjUwLCA4OTMwLCA2NjY3OCwgNzQyNDksIDExOTMsIAorICAgIDEwMDU2LCAxODAwLCAxMzI1MywgMTMyNTIsIDc4MjksIDAsIDAsIDc3NDMsIDAsIDAsIDc3OTA0LCA5MjY0MCwgNzc5MDUsIAorICAgIDkwMzQsIDYwMzksIDAsIDEwMDc1LCAwLCA0MTAxOCwgNjU2ODMsIDEwMzM4LCA2NjQ2OSwgMCwgMCwgMCwgNDI4MTUsIDAsIAorICAgIDQxOTY2LCAwLCAxMjc0NzEsIDAsIDExNzkyLCA0MzA2NCwgNDEwMjUsIDkxMSwgNzUzOSwgMCwgMCwgMTIwMzM5LCA2NTE1OSwgCisgICAgNjQzOTAsIDAsIDAsIDU1MjAsIDExNjYyLCAwLCA2NTMzMCwgNDI4MTIsIDAsIDAsIDEyMzI2LCA5ODM4NDcsIDAsIDQyODA4LCAKKyAgICAxMjgzMzcsIDkzNDgsIDY0OTAxLCA5ODM4NTIsIDAsIDAsIDAsIDAsIDAsIDkxNzU4NCwgNDM3MDIsIDk4MzU3NiwgNTg1NywgCisgICAgNjUzNDIsIDkyNzI3LCAxMTkxMjAsIDEyMDA3OSwgODY0NCwgMCwgMCwgMCwgNzQyOTYsIDQxOTA5LCAwLCAxMjAzMzIsIAorICAgIDI3OTEsIDY5NjYzLCAxODkxLCA2OTgyNCwgMCwgNDE5MDcsIDY2NjQ3LCAxMTg5MzksIDg3NjEsIDEyOTQyLCA1NzQ4LCAwLCAKKyAgICAxMDc3MywgMCwgMCwgODc5NiwgNzgxNDksIDY0MTIsIDIwNjEsIDg1MjAsIDEzMTQ2LCAxMjcxODUsIDYzOTMxLCAwLCAKKyAgICA2NTkwMiwgMjg4MiwgMCwgMCwgMTI4NDMsIDQ1MjAsIDEyMDM0NSwgOTI0NTksIDAsIDk4MzY1MSwgMCwgNzM4NjAsIDAsIDAsIAorICAgIDY0MzQ1LCAwLCA5MjAxLCAxMjgzMTQsIDE5NDk0MCwgMCwgMCwgNDM2NzksIDkxNzU4NSwgNjUxMTcsIDkyMjcwLCAwLCAKKyAgICAxMDQyNywgMCwgMzg0NCwgMTIwNjc1LCA5NzU1LCAxMTEwLCA2NjEyLCAxMjIyMiwgMCwgMTI4Nzg5LCAwLCAwLCA3ODMsIAorICAgIDE5NDkzNSwgMCwgMCwgOTgzMDY0LCAxOTQ3MjAsIDY1MDU2LCAzNjIwLCA0MTE4MCwgNjgzNzgsIDQ1NTYsIDAsIDAsIAorICAgIDE5NDkzMywgNzQyNTAsIDAsIDY3NjU3LCAxMDUxMCwgNDM4MiwgNjY0ODIsIDAsIDAsIDEyNzUyNywgOTE3NywgODkwMiwgCisgICAgOTM5NTgsIDk4MzksIDAsIDEyODkxLCA5ODM3NDYsIDk4MzYyNywgNjM5OTksIDIwMTYsIDQxOTE3LCA5Nzg4LCA2MzkyOCwgCisgICAgMCwgMTg2MiwgNjU4MDAsIDkxNTUsIDY2NjIzLCA5Nzg2LCA2NTA4MiwgNDE5MTksIDg1NzksIDQxOTE0LCA3OTgxLCAwLCAKKyAgICA2NjAxNywgNDUwOCwgNjQ4ODMsIDkyNDU2LCA5MjUyMiwgMTI3ODE0LCAwLCA2NDU5MiwgNzQyNzYsIDEyMDA4MCwgNjc4NCwgCisgICAgNzg3ODgsIDY4MTgxLCAwLCAwLCAwLCAxMjc1MzQsIDEyMTQ3LCA5MDI0LCA2NjM3OCwgNjY0NzIsIDk4MzkyMCwgNjQyODksIAorICAgIDY1Mjg5LCA3ODE1MSwgNjY2NTgsIDE5NDkyOSwgNjQ1MDksIDc4MTUyLCAwLCAxMjY1MDUsIDExMDUxLCA5ODMyODgsIDAsIAorICAgIDExMzU1LCA2NTg4NSwgMCwgMTI4MzEwLCA0MTIxNCwgMCwgMTIyOTksIDAsIDc1MDAsIDQ1MDYsIDc3NzMsIDAsIDAsIAorICAgIDk5NjMsIDY4NjQ5LCAxMjY2MDksIDQwNDAsIDEyMDU3MCwgNjE2NywgMCwgNjM5MjIsIDY1OTQsIDk4MzczMSwgMCwgMCwgCisgICAgMzYyNCwgNDMwMzYsIDAsIDYzODcsIDYzOTkwLCAxOTk0NywgNjM5ODgsIDQxOTU1LCAwLCA2Mzk5MywgMTA0NDAsIDk2MTEsIAorICAgIDY1NjA1LCA2ODAzLCAwLCA3NzM4LCA2Mzk4NiwgMTE0NDYsIDYzOTg0LCA5MjY0MSwgMzQzNSwgNzgxNjQsIDQzODE0LCAKKyAgICA0MzgxMCwgNzAyOSwgNjQyNTgsIDQxMjkyLCAxMTg4OTgsIDEyNzQ4LCA0Mjc0MiwgOTUxNywgMTE1MTgsIDAsIDc4NzkwLCAKKyAgICAwLCA2Nzk5MywgNjM5NTYsIDQyNDU4LCA2Mzk1NCwgNjM5NTMsIDYzOTYwLCA5NTkxLCA0NTE2LCAxMDIxNywgNjgzNzAsIAorICAgIDExNDY5LCA2OTY5NywgNDIzMDYsIDI3MjMsIDExODk0NywgMCwgMCwgMCwgMCwgMCwgMTEzOTcsIDI4ODAsIDAsIDAsIAorICAgIDI4NzIsIDAsIDAsIDM0OTgsIDQzNzgsIDkxNzUzOSwgNDI3MCwgMCwgNjU1NTEsIDY4MjA1LCA2NjMzLCA0MzM4NywgMCwgCisgICAgNTIzMCwgMCwgMCwgMCwgMCwgMCwgODE2MSwgMzkzLCAxMjAxMywgMCwgMCwgMTI2NDc5LCA0MTUsIDYzOTY0LCA2Mzk2MywgCisgICAgNDIzNDUsIDkyMzEwLCA1MTgzLCAxODc3LCA0MjQ5OCwgMCwgMjkyNywgMCwgNjM5NjEsIDQ0NzIsIDAsIDAsIDc4MTU5LCAKKyAgICA2OTY5OSwgOTE3OTM2LCA0MjM0MCwgNDc1NiwgMTI4MDc4LCA3MDgxLCAxMDczMCwgNzY5MSwgMTAzMzEsIDYzODMwLCAKKyAgICAxMTk2MjUsIDQyOTIyLCA0MjEwMywgODYyOCwgOTgxMywgMCwgNDI0NTMsIDE2MDQsIDk1NjUsIDEwNTM5LCA2OTcwMSwgCisgICAgNjU3NjQsIDQxNDE1LCA2NTc2NywgMCwgODQ1NywgNDIzMDEsIDExMzcyLCA2NDg3MywgMTE5OTIsIDAsIDAsIDYzOTgwLCAKKyAgICAxMTgwMSwgMzYyMiwgOTgzMTI0LCA2NDMzNiwgMTIwMTcsIDEwNDYzLCA2Mzk4MSwgNDk2NywgNjQxODksIDE5NjYsIAorICAgIDQzNjI4LCAwLCA5ODMyODQsIDAsIDAsIDYzOTcxLCA0MzQ3LCA0NDE2LCA0MjA5OCwgMTEwMDksIDEwNjk0LCA2Mzk3MywgCisgICAgNDAyLCAwLCAxMzE0NywgMTI4NjkyLCA0MjEwMCwgNjQ2NDYsIDEzMjI4LCAwLCA0MTg3NSwgMzUxNSwgNzQyNTIsIDExODA1LCAKKyAgICAwLCAxMTMwMiwgNjI1OSwgNDMzOTUsIDAsIDAsIDE5NDY3MCwgMCwgOTIzNTEsIDAsIDc0NDI1LCAxMTI5OSwgMTU2MSwgMCwgCisgICAgOTIzNTksIDY0OTQyLCA5ODM1NTksIDE5NDczMywgOTgzNjc3LCAxOTQ3MzIsIDAsIDc0MzAxLCAwLCAxMTI4MCwgMCwgCisgICAgNjk3ODQsIDc0MDYwLCAwLCAwLCAxMTk2NjQsIDUxNDUsIDEyNDg2LCA2NTAxOCwgNjY1MTYsIDU0MDksIDEyNzM3OSwgCisgICAgMTk0NjY5LCA3NDAyLCA1Mzk5LCA5Njg1LCA3NDA4OSwgNzk1MiwgNTQwMSwgMCwgNjY2MTYsIDY4NDIxLCA5ODM5MTAsIDAsIAorICAgIDU0MDUsIDEyNzg3NSwgNjQ4NjYsIDAsIDExOTU4MywgMTI4MzQ1LCA3ODc4NCwgNzQyNDgsIDExMzMwLCAxOTQ3MjMsIAorICAgIDY0NjkwLCAzMjU0LCAwLCAwLCAxMjgyMDcsIDQyMzkwLCA0MzY3OCwgMTk0NzI1LCA5ODM5MDAsIDY1MDc3LCAwLCA2Mzg4LCAKKyAgICAzMzU1LCA5NTA4LCA5ODY3LCA1NzIzLCAxMTUyMCwgNTYxMSwgMCwgMzM3NywgMCwgMCwgMCwgMCwgNzgyMjgsIDAsIAorICAgIDk4Mzc1MywgNDI2OTEsIDkxNzg4NiwgMTI3MTk4LCA3NDc2NywgMCwgMTI3MDc1LCAxMzc5LCAyNDYsIDAsIDk4Mzc1MiwgCisgICAgMzc4OCwgOTgzMTA2LCAxMTA0MSwgOTI1NDksIDY2MzA0LCAwLCAwLCA4OTE3LCA0MjQwMywgMzAxLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA5ODM2ODgsIDEwNjU2LCAwLCA2NTIxNCwgMTE5MjQyLCA0MjU2NywgOTIyMTcsIDEzMTYzLCA5ODMyMDIsIDEyMDgzMSwgCisgICAgNzQ1OTcsIDMxODIsIDAsIDAsIDAsIDY1MDM0LCA2NTg4OSwgNDIxNjksIDQ3NTUsIDc0MjQ0LCAxOTQ2MjEsIDExNDQzLCAwLCAKKyAgICA2NjMxOSwgNzQ1OTgsIDYwOCwgNjAwLCAwLCAxMjE5LCAzOTM0LCA2NDIwNiwgMTE0ODMsIDc0NTEwLCAwLCA3NDQ4NSwgCisgICAgNDI0NDIsIDY1NDcwLCA5ODM4OTgsIDY0MjAyLCAxMzE2MCwgNzc1OSwgNDI0ODIsIDQ4NSwgMTI4MDA2LCAwLCA5ODI4LCAwLCAKKyAgICAwLCA0MjI4MCwgMCwgOTM1MSwgNzc3OCwgNjQzNzksIDc0OTYsIDQyNDMxLCA2OTE2LCAxMjA4LCAwLCAxMTk2MzEsIAorICAgIDExMDAyLCA0MjQ3MCwgMCwgMTE4OTQ2LCAwLCAwLCA3NDA0MSwgMCwgNzAwNDUsIDQzNTM5LCA1NDExLCA0MjE5NiwgMCwgMCwgCisgICAgMCwgOTE1MCwgMCwgNDIzOTMsIDEzMDg2LCAxMzEwLCAxOTQ2ODcsIDkzMzcsIDEyMDUyLCAxMDY0MywgNTUyNzEsIAorICAgIDk4MzE3OSwgMTIxNjYsIDI1NDYsIDE5NDY4MywgMjEzLCAxMTg4NTIsIDY1NjExLCAwLCAwLCAxOTQ3NTYsIDc0MzEwLCAKICAgICA2NTU0LCAwLCAxMTkxNCwgNTQ1MiwgMCwgMCwgMCwgMCwgMCwgMTk0NjgxLCA5MjU2MCwgMjcxMywgMCwgOTY1MCwgNDMzMzAsIAogICAgIDAsIDE5NDY3NSwgMTQwNiwgMCwgMCwgOTI2NTksIDAsIDY4MjIzLCA0MTQzLCAxOTQ2NzcsIDAsIDY1NzQ4LCA0MTQxLCAKICAgICA5NjgyLCA2NTI4NywgMTUwOCwgMTI3MDEzLCA4Nzc5LCAxMDU2OSwgODcyNSwgMTMyOTksIDY2NjM4LCA2NTc1MCwgNDIyNjMsIAogICAgIDQxNDUsIDYzODAsIDY1NzUxLCA2NjYxMywgNDM5OTQsIDY1NzM4LCA1NTI1MCwgOTE4NSwgOTU1MCwgMCwgNDM0MDMsIDAsIAotICAgIDAsIDAsIDY1NzM2LCA0MTk1MSwgNjQ4MTYsIDY1NzU2LCAwLCAxMjk1NSwgMTA1OTYsIDI4ODgsIDAsIDAsIDAsIDk2NTcsIAotICAgIDkwMTksIDE5NDc2NiwgMCwgMjg3OCwgNTM5MCwgMCwgMTk0OTYxLCAwLCA2ODY3OSwgNDM1NTIsIDc1MDEsIDYzMjgsIDAsIAotICAgIDEwNDI5LCAxMDM2NSwgMCwgMCwgNDE5NDYsIDc1MDMsIDUyMzUsIDgwMywgNjgzODEsIDAsIDAsIDg5ODYsIDAsIDEwNjMyLCAKLSAgICAxMTkzNCwgMTE0NTIsIDEzMzIsIDAsIDAsIDAsIDAsIDExODg4NywgMTc5MSwgNTE5MSwgOTI4OCwgNjQ4MjIsIDI4OTIsIDAsIAotICAgIDQzMzk0LCA1NTUsIDAsIDAsIDY2NjQ2LCAwLCAxMTkwMDIsIDEzMTUxLCA3NDUxMiwgNzI4OSwgNzQwNTUsIDAsIDg4NTQsIAotICAgIDY0MTYyLCA1ODU4LCA0MTkyNywgMTA1ODIsIDAsIDE3ODQsIDEzNjEsIDE5NTA0NywgMCwgNzkwNSwgMCwgNjQ4NjgsIAotICAgIDEyODgxMywgMTMxNTgsIDkyMTY2LCA3MjExLCAwLCA5MzcxLCA3Mzk3MywgMCwgNjgyOCwgMTYyNSwgOTIzMDIsIDAsIAotICAgIDEzNDIsIDY4NDQwLCA2NDE3MSwgMCwgMTA5MDMsIDAsIDAsIDAsIDAsIDAsIDQ0ODIsIDQxNjA2LCAwLCAxMjg1NjksIDAsIAotICAgIDAsIDY0MzgxLCAwLCAwLCAwLCA0MjI0NSwgMCwgNDE5NzIsIDAsIDQ0NCwgMCwgOTEyNywgNjY2ODcsIDY2NjE5LCAwLCAKLSAgICA3ODAyNSwgMCwgMTEzNDksIDQwOTkxLCAwLCAwLCAxMTk1OTksIDEyMDgzMCwgMCwgMTE5NywgMTI4MjgyLCAxMTQ5LCAKLSAgICAxOTQ5NzAsIDAsIDAsIDQwOTkwLCAwLCAwLCAzNDkyLCAwLCAxMjc5NDIsIDAsIDAsIDAsIDEyODM4LCAwLCAxOTk0OCwgMCwgCi0gICAgMzA5OSwgMCwgMCwgNDEwODcsIDAsIDAsIDAsIDExOTA1OSwgMTIwMzYsIDQxMzA5LCAwLCAwLCA4MTUyLCAwLCA2NDQyOCwgCi0gICAgMTIyMjcsIDAsIDAsIDEyODI4LCAxMjc1MTEsIDAsIDAsIDEyMDcwOCwgMCwgMCwgMTAzODYsIDExOTU3NCwgMCwgMCwgCi0gICAgOTI2ODAsIDAsIDY4MTU0LCAwLCAxNzQzLCAwLCAwLCA5MjIzOSwgNjUxODYsIDAsIDAsIDk2MDYsIDAsIDAsIDY0NDM5LCAwLCAKLSAgICAwLCA5MjY4NiwgMCwgMCwgMTk0OTY3LCAwLCAwLCAzMzk1LCA5MzYyLCAxMDg3OCwgMCwgMCwgNzgzNjIsIDY0ODMwLCAwLCAKLSAgICAwLCA0MTA5MSwgMzQyNiwgMTM0NCwgODg3MCwgMCwgMCwgNDczNSwgMTI3MDE3LCA2MTE5LCAxMjgyMiwgNDI2OTksIDAsIDAsIAotICAgIDc0ODE4LCA1Mzk2LCAwLCA0MjYzNywgNDEwODAsIDAsIDEyMDM5LCAxMDU1OSwgMCwgMTE4ODkyLCAwLCA5NDcyLCAwLCAKLSAgICAxMTkyOSwgMCwgNzE3MCwgOTU5NiwgNjEzMCwgMTI4ODI2LCA0MzYyOSwgMTE1NzksIDE5NDc0MSwgMCwgMTk0NzQwLCAKLSAgICAxMjg2OTEsIDkyMTg1LCA2NjY5OSwgNjQ0NDAsIDEwMDQsIDkyNTg0LCAxOTQ3MzcsIDQzMjM0LCA2NjAwOCwgMTI2MjcsIDAsIAotICAgIDY4NDE0LCAwLCA0MzYxOSwgNDMzODIsIDExMzAwLCA0MzMwNCwgOTY4NiwgNTg5MCwgMTE3NzYsIDc1NTgsIDEyNzE1OCwgCi0gICAgNjU2MjcsIDAsIDEwNzE4LCAxMzE1NCwgMzQ2MSwgOTEzOSwgMCwgMCwgMCwgMCwgNjUzNjUsIDczODc3LCA2NTYyOCwgCi0gICAgNzgwMTksIDAsIDAsIDQxNzA4LCAxMjg2MCwgMjY0MSwgMTIwNjksIDEwODM4LCA1NDAzLCAxMDM1MiwgNzM5MTcsIDEwMDYxLCAKLSAgICA0MzIzNywgMCwgNTE0MCwgMjA5LCAxMjg4NDcsIDQxNzA0LCA0MTA1NiwgNDMwNzgsIDEyODEyNSwgMTE4ODA5LCAwLCAKLSAgICAxMDg5OSwgNjU0NjksIDAsIDAsIDAsIDI0MTAsIDk5MywgMCwgMTIwNTg5LCAxMjA2ODksIDc4NjkzLCAwLCAwLCA3MjMyLCAKLSAgICAwLCAxMTkyNTMsIDAsIDcxMTAsIDc0NDYyLCAyMDY2LCAxMDQ4OSwgNDIxNjYsIDQzNDYzLCAxMDY1OSwgMzYwMCwgMCwgCi0gICAgNDIyNCwgMTMzNiwgNDE1MTgsIDAsIDAsIDAsIDAsIDQxMTM5LCA2NDgyMCwgOTI1MzgsIDEyOTY2LCA0MTEzNCwgMCwgMCwgCi0gICAgMCwgMCwgMjcyLCA0MjYzLCA4NzkzLCAwLCAwLCA0MTUwMiwgMCwgOTgzLCAxMjU0OSwgMCwgMCwgMTE5MCwgNDEwOSwgCi0gICAgMTMzNSwgODQxLCA1ODg4LCA0MTM1OCwgNjQ4NjMsIDk1NDQsIDQzNDgxLCAwLCAwLCAwLCAyMDk5LCA1MTIwLCAyNDA5LCAKLSAgICA3Nzk5LCAwLCA3NDQyNCwgMCwgMCwgNDczMSwgMCwgNjY2MjksIDAsIDAsIDEyNTUsIDQxNDksIDkyNDcsIDAsIDk5MTMsIDAsIAotICAgIDAsIDY0OTE0LCA5MTc3ODcsIDY1MTAxLCAwLCAxMTY5NCwgOTI0NzUsIDExNjkwLCA1ODM1LCAxMjcxNjQsIDY2NjI1LCAKLSAgICAxMDg0MiwgNDEzNTQsIDQyMTIzLCA0MzA5NywgMTE2ODgsIDY2NjM0LCAxMDk0LCAxOTQsIDY0NjkyLCAwLCA4MTgwLCAwLCAKLSAgICAwLCA5OTcyLCA3Mzg2NSwgNDUxOSwgNjExNCwgMTA4OTgsIDQzMDcyLCAwLCAwLCAxMjg4NTgsIDAsIDAsIDEwNjk1LCAwLCAKLSAgICA3NTQwLCAwLCA4ODEsIDc4NTcsIDYwNjcsIDY1MTY0LCAwLCAwLCAwLCAxMzMxMSwgNjg0MDMsIDQxODU3LCA2NDMyMSwgCi0gICAgODM1OSwgMCwgMTI2ODksIDAsIDE5NDU5NCwgMCwgMCwgMCwgNjgxODMsIDAsIDAsIDEyODcsIDU0MzYsIDAsIDAsIDc0MTQyLCAKLSAgICA5MjMyOCwgNzQxNTIsIDExOTA3OCwgNjA1MSwgMTA0OTcsIDY5NjY4LCA4OTg1LCAxMjEwOSwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMzY1MiwgMTA1MzcsIDAsIDEyNzYsIDEyMDQ0MCwgNjU0OSwgMjc5LCA3Mzc0NSwgMCwgMCwgMCwgMTQ4OSwgMCwgMCwgMCwgCi0gICAgMzg5OSwgMTAwNywgNDIxMjQsIDAsIDQyMTIyLCA5MjMzNywgMCwgMCwgMTE5ODUsIDEzNDUsIDc4NjAwLCAwLCAwLCA4OTU2LCAKLSAgICA0MzA4MywgMTE5ODMwLCA0MjEzOCwgNzg2MTAsIDAsIDEyMTUxLCA3ODYwOCwgNzg2MDQsIDc4NjA1LCA2Mjg1LCA3ODYwMywgCi0gICAgNzg2MTIsIDc4NjEzLCA2NTk0MiwgNDkyLCA4Njg1LCAwLCAwLCAwLCA3ODYyMiwgNDM3MTIsIDI1ODIsIDExNDcwLCAKLSAgICA2NDUzOCwgNzQ0NCwgNzg2MTUsIDc4NjE2LCA0MTU1MCwgMCwgNzM4MzcsIDExOTgyMywgMjUyNywgMTE5ODI0LCAxOTcsIAotICAgIDI3OTksIDkyNTk0LCA0MTk0NCwgMTIwMjc2LCA5OTMzLCAwLCA2NjUxNSwgNzY3LCA1NTI0LCA3MDI4LCAwLCAwLCAKLSAgICAxMTk4MjcsIDExOTgxNywgMTE5ODI4LCA3ODYzMywgMTA4OTYsIDAsIDE3OTksIDEyMDQ5NywgNjk3MSwgNzQzMzYsIAotICAgIDEyODM0MiwgMCwgNjUzNDAsIDExODk3OSwgNDE1NTEsIDI0MzQsIDAsIDAsIDEyMDU3OSwgMCwgNDYzMSwgMCwgMCwgNjQwNywgCi0gICAgMCwgNjMzOCwgNDMyMTQsIDAsIDc1NzAsIDAsIDMxOTIsIDAsIDg0MTQsIDAsIDAsIDAsIDAsIDAsIDkxNjQsIDY2NjEyLCAwLCAKLSAgICAzMTcxLCA2NjIzLCA0OTYxLCA2ODM5NiwgODg2LCA1NTIxNiwgODY1NCwgNzg4MzIsIDk5OTMsIDc0MzkwLCA2NDYwMywgMCwgCi0gICAgNjkyNDEsIDk1OTksIDc4NjI5LCA0MzA4NCwgNzg2MjcsIDc4NjI4LCA3ODYyNSwgMjM5OSwgNjk2OTMsIDg5OTQsIDEwOTQ0LCAKLSAgICA0MTIwOCwgMCwgNDExNjgsIDgxNzgsIDAsIDMzNjcsIDkyMzM0LCA0MjUxMCwgNzg2NDEsIDc4NjM2LCA2ODA0LCA3ODYzNCwgCi0gICAgMTk0NywgMCwgMCwgOTI2ODEsIDQyNzU5LCAxMTA2OCwgMTcwNSwgOTMzMSwgMCwgNzQ3OTgsIDkxODEsIDY1MzU5LCAwLCAKLSAgICA4MDE3LCAwLCA2NTA5NiwgNjY3MjAsIDAsIDQzNDc1LCAwLCA0OTA5LCAxMjEyNiwgMTI4NjczLCAxMjA2OTYsIDQ5MDQsIDAsIAorICAgIDAsIDAsIDY1NzM2LCA0MTk1MSwgNjQ4MTYsIDY1NzU2LCA5ODMyMDMsIDEyOTU1LCAxMDU5NiwgMjg4OCwgMTk0NjQ1LCAwLCAKKyAgICAwLCA5NjU3LCA5MDE5LCAxOTQ3NjYsIDAsIDI4NzgsIDUzOTAsIDAsIDE5NDk2MSwgMCwgNjg2NzksIDQzNTUyLCA3NTAxLCAKKyAgICA2MzI4LCAwLCAxMDQyOSwgMTAzNjUsIDAsIDAsIDQxOTQ2LCA3NTAzLCA1MjM1LCA4MDMsIDY4MzgxLCAwLCAwLCA4OTg2LCAKKyAgICAxMjY1NDIsIDEwNjMyLCAxMTkzNCwgMTE0NTIsIDEzMzIsIDAsIDAsIDEyNjY0NywgMCwgMTE4ODg3LCAxNzkxLCA1MTkxLCAKKyAgICA5Mjg4LCA2NDgyMiwgMjg5MiwgMCwgNDMzOTQsIDU1NSwgMCwgMCwgNjY2NDYsIDAsIDExOTAwMiwgMTMxNTEsIDc0NTEyLCAKKyAgICA3Mjg5LCA3NDA1NSwgNjQxNjEsIDg4NTQsIDY0MTYyLCA1ODU4LCA0MTkyNywgMTA1ODIsIDAsIDE3ODQsIDEzNjEsIAorICAgIDE5NTA0NywgMCwgNzkwNSwgMCwgNjQ4NjgsIDEyODgxMywgMTMxNTgsIDkyMTY2LCA3MjExLCAwLCA5MzcxLCA3Mzk3MywgCisgICAgOTE3NTUzLCA2ODI4LCAxNjI1LCA5MjMwMiwgMCwgMTM0MiwgNjg0NDAsIDY0MTcxLCAxMjY3MDQsIDEwOTAzLCA5ODM0ODYsIAorICAgIDAsIDAsIDAsIDAsIDQ0ODIsIDQxNjA2LCAwLCAxMjg1NjksIDk4MzExMiwgMCwgNjQzODEsIDAsIDAsIDE5NTA5MCwgCisgICAgNDIyNDUsIDEyNjQ2NywgNDE5NzIsIDAsIDQ0NCwgMCwgOTEyNywgNjY2ODcsIDY2NjE5LCAxMjY0ODksIDc4MDI1LCAwLCAKKyAgICAxMTM0OSwgNDA5OTEsIDkxNzU3MCwgMCwgMTE5NTk5LCAxMjA4MzAsIDAsIDExOTcsIDEyODI4MiwgMTE0OSwgMTk0OTcwLCAKKyAgICAwLCAwLCA0MDk5MCwgNDM3NjUsIDAsIDM0OTIsIDAsIDEyNzk0MiwgMCwgMCwgMCwgMTI4MzgsIDk4Mzk2OSwgMTk5NDgsIDAsIAorICAgIDMwOTksIDAsIDAsIDQxMDg3LCAwLCAwLCAwLCAxMTkwNTksIDEyMDM2LCA0MTMwOSwgMCwgMCwgODE1MiwgMCwgNDE1NTAsIAorICAgIDEyMjI3LCA5ODM2MTMsIDAsIDEyODI4LCAxMjc1MTEsIDAsIDAsIDEyMDcwOCwgMCwgMCwgMTAzODYsIDExOTU3NCwgMCwgMCwgCisgICAgOTI2ODAsIDk4Mzc4MCwgNjgxNTQsIDAsIDE3NDMsIDAsIDAsIDkyMjM5LCA2NTE4NiwgOTE3NTcxLCAwLCA5NjA2LCAwLCAwLCAKKyAgICA2NDQzOSwgMCwgMCwgOTI2ODYsIDAsIDAsIDE5NDk2NywgMCwgMCwgMzM5NSwgOTM2MiwgMTA4NzgsIDAsIDAsIDc4MzYyLCAKKyAgICA2NDgzMCwgMCwgMTI2NTU3LCA0MTA5MSwgMzQyNiwgMTM0NCwgODg3MCwgMCwgMCwgNDczNSwgMTI3MDE3LCA2MTE5LCAKKyAgICAxMjgyMiwgNDI2OTksIDAsIDk4MzgxNSwgNzQ4MTgsIDE0MjMsIDAsIDQyNjM3LCA0MTA4MCwgMCwgMTIwMzksIDEwNTU5LCAKKyAgICAwLCAxMTg4OTIsIDAsIDk0NzIsIDAsIDExOTI5LCAwLCA3MTcwLCA5NTk2LCA2MTMwLCAxMjg4MjYsIDQzNjI5LCAxMTU3OSwgCisgICAgNzg3MTMsIDAsIDE5NDc0MCwgMTI4NjkxLCA5MjE4NSwgNjY2OTksIDY0NDQwLCAxMDA0LCA5MjU4NCwgMTk0NzM3LCAKKyAgICA0MzIzNCwgNjYwMDgsIDEyNjI3LCAwLCA2ODQxNCwgMCwgNDM2MTksIDQzMzAzLCAxMTMwMCwgNDMzMDQsIDk2ODYsIDU4OTAsIAorICAgIDExNzc2LCA3NTU4LCAxMjcxNTgsIDY1NjI3LCAwLCAxMDcxOCwgMTMxNTQsIDM0NjEsIDkxMzksIDAsIDAsIDAsIDAsIAorICAgIDY1MzY1LCA3Mzg3NywgNjU2MjgsIDc4MDE5LCAxMjAzMTksIDAsIDQxNzA4LCAxMjg2MCwgMjY0MSwgMTIwNjksIDEwODM4LCAKKyAgICA1NDAzLCAxMDM1MiwgNzAwODUsIDEwMDYxLCA0MzIzNywgMCwgNTE0MCwgMjA5LCAxMjg4NDcsIDQxNzA0LCA0MTA1NiwgCisgICAgNDMwNzgsIDEyODEyNSwgMTE4ODA5LCAwLCAxMDg5OSwgNjU0NjksIDkyMzYyLCAwLCAwLCAyNDEwLCA5OTMsIDAsIAorICAgIDEyMDU4OSwgMTIwNjg5LCA3ODY5MywgMCwgMCwgNzIzMiwgMCwgMTE5MjUzLCAwLCA3MTEwLCA3NDQ2MiwgMjA2NiwgCisgICAgMTA0ODksIDQyMTY2LCA0MzQ2MywgMTA2NTksIDM2MDAsIDAsIDQyMjQsIDEzMzYsIDQxNTE4LCAwLCAwLCAwLCAwLCAKKyAgICA0MTEzOSwgNjQ4MjAsIDkyNTM4LCAxMjk2NiwgNDExMzQsIDAsIDAsIDAsIDAsIDI3MiwgNDI2MywgODc5MywgMCwgMCwgCisgICAgNDE1MDIsIDAsIDk4MywgMTI1NDksIDAsIDAsIDExOTAsIDQxMDksIDEzMzUsIDg0MSwgNTg4OCwgNDEzNTgsIDY0ODYzLCAKKyAgICA5NTQ0LCA0MzQ4MSwgMCwgMTk0ODA2LCA3MDAyNywgMjA5OSwgNTEyMCwgMjQwOSwgNzc5OSwgMCwgNzQ0MjQsIDAsIDAsIAorICAgIDQ3MzEsIDAsIDY2NjI5LCAwLCAwLCAxMjU1LCA0MTQ5LCA5MjQ3LCAwLCA5OTEzLCAwLCAwLCA2NDkxNCwgOTE3Nzg3LCAKKyAgICA2NTEwMSwgMCwgMTE2OTQsIDkyNDc1LCAxMTY5MCwgNTgzNSwgMTI3MTY0LCA2NjYyNSwgMTA4NDIsIDQxMzU0LCA0MjEyMywgCisgICAgNDMwOTcsIDExNjg4LCA2NjYzNCwgMTA5NCwgMTk0LCA2NDY5MiwgMCwgODE4MCwgMCwgMCwgOTk3MiwgNzM4NjUsIDQ1MTksIAorICAgIDYxMTQsIDEwODk4LCA0MzA3MiwgMCwgMCwgOTM5NjAsIDk4MzMxNCwgMTI2NTgxLCAxMDY5NSwgMCwgNzU0MCwgMCwgODgxLCAKKyAgICA3ODU3LCA2MDY3LCA2NTE2NCwgMCwgMCwgMCwgMTMzMTEsIDY4NDAzLCA0MTg1NywgNjQzMjEsIDgzNTksIDAsIDEyNjg5LCAKKyAgICAwLCAxOTQ1OTQsIDAsIDk4MzMwNCwgOTgzODcyLCA2ODE4MywgMCwgOTgzMzA2LCAxMjg3LCA1NDM2LCAwLCA5ODMzMDksIAorICAgIDc0MTQyLCA5MjMyOCwgNzQxNTIsIDExOTA3OCwgNjA1MSwgMTA0OTcsIDY5NjY4LCA4OTg1LCAxMjEwOSwgOTgzMzE1LCAwLCAKKyAgICAxMjcyNDIsIDAsIDAsIDM2NTIsIDEwNTM3LCAwLCAxMjc2LCAxMjA0NDAsIDY1NDksIDI3OSwgNzM3NDUsIDAsIDAsIDAsIAorICAgIDE0ODksIDAsIDAsIDAsIDM4OTksIDEwMDcsIDQyMTI0LCA5ODM1NTcsIDQyMTIyLCA5MjMzNywgOTIzNjcsIDAsIDExOTg1LCAKKyAgICAxMzQ1LCA3ODYwMCwgMCwgMCwgODk1NiwgNDMwODMsIDk0MDU3LCA0MjEzOCwgNzg2MTAsIDAsIDEyMTUxLCA3ODYwOCwgCisgICAgNzg2MDQsIDc4NjA1LCA2Mjg1LCA3ODYwMywgNzg2MTIsIDc4NjEzLCA2NTk0MiwgNDkyLCA4Njg1LCAwLCA5ODM3NTAsIDAsIAorICAgIDc4NjIyLCA0MzcxMiwgMjU4MiwgMTE0NzAsIDY0NTM4LCA3NDQ0LCA3ODYxNSwgNzg2MTYsIDIyOTcsIDAsIDczODM3LCAKKyAgICAxMTk4MjMsIDI1MjcsIDExOTgyNCwgMTk3LCAyNzk5LCA5MjU5NCwgNDE5NDQsIDEyMDI3NiwgOTkzMywgMCwgNjY1MTUsIAorICAgIDc2NywgNTUyNCwgNzAyOCwgMCwgMCwgMTE5ODI3LCAxMTk4MTcsIDExOTgyOCwgNzg2MzMsIDEwODk2LCAwLCAxNzk5LCAKKyAgICAxMjA0OTcsIDY5NzEsIDc0MzM2LCAxMjgzNDIsIDAsIDY1MzQwLCAxMTg5NzksIDQxNTUxLCAyNDM0LCA5NDAxOCwgMCwgCisgICAgMTIwNTc5LCAwLCA0NjMxLCAwLCAwLCA2NDA3LCAwLCA2MzM4LCA0MzIxNCwgMCwgNzU3MCwgMCwgMzE5MiwgMCwgODQxNCwgCisgICAgMCwgOTM5ODMsIDAsIDAsIDAsIDkxNjQsIDY2NjEyLCA5Mzk1OSwgMzE3MSwgNjYyMywgNDk2MSwgNjgzOTYsIDg4NiwgCisgICAgNTUyMTYsIDg2NTQsIDc4ODMyLCA5OTkzLCA3NDM5MCwgNjQ2MDMsIDcwMDY2LCA2OTI0MSwgOTU5OSwgNzg2MjksIDQzMDg0LCAKKyAgICA3ODYyNywgNzg2MjgsIDc4NjI1LCAyMzk5LCA2OTY5MywgODk5NCwgMTA5NDQsIDQxMjA4LCA5ODM3MDQsIDQxMTY4LCAKKyAgICA4MTc4LCAwLCAzMzY3LCA5MjMzNCwgNDI1MTAsIDc4NjQxLCA3ODYzNiwgNjgwNCwgNzg2MzQsIDE5NDcsIDAsIDAsIAorICAgIDkyNjgxLCA0Mjc1OSwgMTEwNjgsIDE3MDUsIDkzMzEsIDAsIDc0Nzk4LCA5MTgxLCA2NTM1OSwgMCwgODAxNywgMTE5ODMxLCAKKyAgICA2NTA5NiwgNjY3MjAsIDAsIDQzNDc1LCAwLCA0OTA5LCAxMjEyNiwgMTI4NjczLCAxMjA2OTYsIDQ5MDQsIDk4MzMyNSwgCiAgICAgNjk2NTAsIDEzNjUsIDkyNTMsIDQyNzU3LCA0MzQzNiwgNzQ2MiwgMCwgMCwgMCwgMCwgMTE5NTg3LCA2NDQxNSwgMCwgMCwgCi0gICAgNTM5OCwgMCwgMTI3Mzg2LCAwLCAwLCAwLCAxMTkwMTUsIDAsIDAsIDk0NzYsIDAsIDAsIDEyNzYzLCAwLCAzNjI5LCAwLCAKLSAgICAxMzAwNSwgMCwgMzYyOCwgMCwgMCwgOTI1MDIsIDM0NjksIDQyMTA3LCA0MjExNiwgOTE3NTc4LCA2NDgwOSwgMjkyOCwgCi0gICAgNDkwNSwgOTg1MywgODUxLCA5MDQwLCAwLCA2NDY2NSwgNDMwODYsIDkxMTQsIDAsIDQyNTgzLCA5MzE1LCA0ODIyLCA0OTA2LCAKLSAgICAzODUyLCAyODQ3LCAxMTk4MjEsIDMyMzYsIDExMzE3LCAxMjUxLCA3Nzc3LCA0MTg1MiwgMTE0MTAsIDEwOTY0LCAwLCAKLSAgICA0MzIyMiwgMTI2NDYsIDEyMDI2OSwgMTAyNTksIDk4NjUsIDY1ODIxLCAwLCA2MDE4LCA5MjI5MCwgMCwgMTIyNzYsIDAsIAotICAgIDY4MzcyLCAwLCA5MjI1OSwgMTE5MjQ0LCAwLCAwLCAxMDQ2NywgMCwgMjQ0MywgMTA5MTgsIDc4MjE3LCAxMTk4MjUsIAotICAgIDEwMDEsIDkyNDEsIDE5MjcsIDAsIDAsIDczOTg3LCAxMjc4ODUsIDAsIDAsIDExODgyOCwgMTIwMjcxLCA2NTY3OCwgCi0gICAgMTI4NjcsIDAsIDgyNjAsIDc3OTQ1LCA3NTE5LCAxMTUwNSwgMTIyNzQsIDg5MDQsIDUxOCwgNjU4NTcsIDAsIDEyODY3NCwgCi0gICAgMTMyMDQsIDQzODcsIDg1NywgMCwgNjUzNjksIDAsIDkyMzM2LCA0MzEyNSwgMTIwNTkyLCAwLCAwLCAwLCAwLCA1MTM2LCAKLSAgICAxOTY4LCAwLCAxOTUwMjMsIDEzMzcsIDY0OTY3LCAxNjI5LCAwLCA3OTYsIDY2NTA2LCAwLCA3NDEyMywgMTI4NzcsIDAsIAotICAgIDQyMzE0LCA0MzM4OCwgMCwgNzQ0MDMsIDYxMjAsIDQ3OCwgNjUxNTEsIDY4MTI4LCAxMjgxNDcsIDQzMDgyLCA2MDE2LCAwLCAKLSAgICA0MjI4NCwgMTI4NTA3LCA0Mjc2LCAxMjA2LCAzNjE5LCA0MTYzOCwgNjk2OTEsIDM4NDMsIDEyMDExLCA4ODUzLCAzMzYxLCAKLSAgICAwLCA0OTAsIDEwNzE1LCA3NTc4LCA2ODM4NCwgMCwgNjUzNTAsIDEwNTMwLCAxMjM0OCwgODY1MywgNzQzMTQsIDQyNDM1LCAKLSAgICA2MTU0LCA5NTUxLCA2NTM1NCwgNzg1MjIsIDc4NCwgNDIzOTcsIDMzNCwgMCwgNDI0MTYsIDY1MzU2LCA2NTI3MywgNzc5ODcsIAotICAgIDY5NjY2LCA0NDQyLCAxMDM2NCwgMCwgNzc4LCA0MTYyNiwgNDI0NTUsIDc5ODksIDc0MDYzLCAzMjI3LCAwLCAxMjcyNzUsIAotICAgIDczOTgzLCAyOTE1LCAxMTUwMiwgNDEwMjIsIDQxNzAyLCAxMDMwOSwgMTI3MDM1LCA3ODMyMCwgMCwgNjk3NSwgMCwgNTQxNSwgCi0gICAgMTIxNzYsIDAsIDc0MTkzLCAzNDYyLCA2NTIxNSwgNDI2MjksIDc4NjkxLCA3Mzc4NCwgMCwgMCwgOTc1OSwgMCwgNzgzMjQsIAotICAgIDEyNzI1NCwgODExNCwgNzg2OTgsIDc4Njk3LCA3ODY5NiwgNzg2OTUsIDg3MTAsIDQyNDk1LCAxMTg5NTYsIDAsIDQwNTEsIAotICAgIDEwNDYwLCA0MzM2NCwgMTE4OTE3LCAxMzU2LCAxMjE2MSwgNDI3MTMsIDEyODg1NywgMTI3MjY4LCAxNjE5LCA5NzAzLCAKLSAgICA0MzE1MiwgNDI0ODksIDQyMTEyLCAwLCAxODc1LCAxMDgwOCwgNDIxMDksIDEyMDI4NCwgNDE4NjAsIDY0ODYyLCAxMzMwNSwgCi0gICAgNjQ5MDcsIDUyODksIDEzMTQ0LCAxMjg2NTgsIDAsIDU1NzUsIDk2NzUsIDAsIDU5NDAsIDIyNiwgMjY0OSwgNjMzNiwgMCwgCi0gICAgMCwgNDMyMzYsIDMzODIsIDQyNDQ5LCA2NDk4LCAxNjU4LCAxMTkzNiwgNzgyMzIsIDAsIDExMjY5LCAxMDE1MSwgNzM3NTksIAotICAgIDQzMTAwLCA3NDQ0OSwgNjU1MDgsIDAsIDAsIDAsIDg5MzUsIDkxNzk4NSwgMCwgMCwgMCwgNjE2LCA3NDc1MywgNjUxNzgsIAotICAgIDQ2ODQsIDc4NzAxLCAxMTk2NTMsIDAsIDAsIDAsIDYwNDgsIDc0NDYwLCA0MjExMCwgNzM5NjUsIDEwODcwLCA4NTU3LCAKLSAgICAxMTA1NCwgNjg2NjQsIDExOTA0OSwgOTY4MSwgNDQ3NSwgMCwgNDExNDIsIDIxMDAsIDAsIDEyMDczMSwgNjAzNSwgMCwgCi0gICAgNzY1MSwgMTAyOTYsIDY0NDQzLCAwLCAwLCA5MTc5ODcsIDAsIDExODk2NiwgNzQxNDQsIDQwOTk3LCAwLCAxMDM5MiwgCi0gICAgMTAzMjgsIDQwOTk4LCA0MzQ2MiwgNzQ0ODgsIDAsIDk4MDAsIDg5NzksIDAsIDExOTEzMSwgNDEwMDAsIDAsIDExOTIzOSwgCi0gICAgNjQ4NywgMzM4NiwgMCwgMTAzNDQsIDAsIDY1Mjk5LCA1Mzk0LCA0MzI0NiwgNzgyNDMsIDEwMjIwLCA2NjUwNSwgNDEyMDAsIAotICAgIDEyODU4MywgNDQyNSwgMCwgMCwgMCwgNDMwNzQsIDczNzk5LCAwLCA3ODE0NywgMCwgMTIxNzMsIDc4NTQ1LCAwLCAwLCAKLSAgICA2NTMzOCwgMCwgMCwgMTE5NTgyLCA0NDc0LCAwLCA0MzA5MywgMCwgMTU4NywgMCwgMTI3MzcyLCA2NDQ3NSwgMTI4MDk4LCAKLSAgICAxMzY5LCAwLCA5OTU5LCA3OTI3LCAwLCA0NTYwLCAwLCAwLCA5MjI3NywgMCwgNjQ5NDgsIDQ0MzAsIDc0MzQ3LCA0MjYwMSwgCi0gICAgNDUxNCwgNjY0MzQsIDAsIDgxOTQsIDY1NDYyLCAxMDYyNiwgMTA5NjUsIDAsIDg4OTMsIDAsIDEyNTQyLCAwLCA2NTM0MSwgCi0gICAgMCwgNjU4MjksIDc5MjUsIDExOTgyMiwgMTA0NzUsIDAsIDAsIDEzNTIsIDExMDY5LCA3NzA3LCAxMjc1NjAsIDAsIDY1Mjc5LCAKLSAgICAxMjcxMDIsIDY4MjA3LCAxMjcxMDAsIDY1NjA1LCA2MDQwLCAxMjcwOTcsIDEwMDcxLCAwLCA5MzM2LCAxMjg4MjQsIDAsIAotICAgIDg4OTksIDc3OTgsIDY0NDc0LCA2NDI1OSwgMCwgNjUxODgsIDc4MjAsIDQzMDE4LCAwLCAwLCA3NzQ2LCAxNDkyLCA3ODU1MSwgCi0gICAgMTA4ODQsIDc3OTgyLCAwLCA1MTI3LCAxMTI4NSwgNDI1MDEsIDU0OTUsIDQyNzMsIDQzMDk1LCA0MTQyNiwgMTA4NDksIAotICAgIDU3MzAsIDI5OTksIDYzNDIsIDY4NjM2LCA3NDMwNCwgMzcxLCA2NDM3MywgNjAyMywgMTY5LCA1NDk3LCAxMTcwOCwgMCwgMCwgCi0gICAgNjMyMywgMTk0Njg0LCA4MjI0LCAwLCA4OTM4LCA2MDQzLCAxMjczOCwgMCwgMCwgNTMyMSwgMCwgMTk0Nzk4LCAwLCAyNTg5LCAKLSAgICA3NDMzMiwgMTY4OSwgNzgwMiwgNDY4MywgNzQzMTgsIDQyNzA0LCAxMjAyOTYsIDExOTA1LCAwLCAwLCAxMjg1MTYsIAotICAgIDEyODE2MywgNzQ1MTMsIDYwNDksIDAsIDQwMjcsIDgzNCwgMTE4OTYyLCAxODAzLCAwLCAxNTAzLCAwLCAwLCAwLCA1NzMxLCAKLSAgICAxMzgxLCAyMzg3LCAwLCAwLCA4Mjg5LCA2NDUyNSwgNjU4MTcsIDI4ODEsIDQzMTQyLCAwLCA5NjAxLCAyODc5LCA5NjY4LCAKLSAgICA5NzY2LCAwLCA1NzI5LCA5MTc4MzMsIDc0NDEwLCA2MDM2LCA2NDg4MSwgNDAyNiwgOTM2MSwgMTI3MDkxLCAyODg3LCAwLCAKLSAgICAzNTI2LCA2Mjk4LCAwLCA3Nzg5NywgMTIwMDk1LCA3ODUxOSwgMCwgODU3MiwgNjAyMSwgNzc4OTYsIDEyODI4OCwgNzc4OTUsIAorICAgIDUzOTgsIDAsIDEyNzM4NiwgOTM5NTMsIDAsIDAsIDExOTAxNSwgMCwgMCwgOTQ3NiwgMCwgOTgzNzY4LCAxMjc2MywgCisgICAgMTI2NjAzLCAzNjI5LCAwLCAxMzAwNSwgMCwgMzYyOCwgMCwgMCwgOTI1MDIsIDM0NjksIDQyMTA3LCA0MjExNiwgOTE3NTc4LCAKKyAgICA2NDgwOSwgMjkyOCwgNDkwNSwgOTg1MywgODUxLCA5MDQwLCAwLCA2NDY2NSwgNDMwODYsIDkxMTQsIDAsIDQyNTgzLCAKKyAgICA5MzE1LCA0ODIyLCA0OTA2LCAzODUyLCAyODQ3LCAxMTk4MjEsIDMyMzYsIDExMzE3LCAxMjUxLCA3Nzc3LCA0MTg1MiwgCisgICAgMTE0MTAsIDEwOTY0LCAwLCA0MzIyMiwgMTI2NDYsIDEyMDI2OSwgMTAyNTksIDk4NjUsIDY1ODIxLCAwLCA2MDE4LCAKKyAgICA5MjI5MCwgMCwgMTIyNzYsIDAsIDY4MzcyLCAwLCA5MjI1OSwgMTE5MjQ0LCAwLCA5ODMyMjQsIDEwNDY3LCAwLCAyNDQzLCAKKyAgICAxMDkxOCwgNzgyMTcsIDExOTgyNSwgMTAwMSwgOTI0MSwgMTkyNywgMCwgMCwgNzM5ODcsIDEyNzg4NSwgMCwgMCwgCisgICAgMTE4ODI4LCAxMjAyNzEsIDY1Njc4LCAxMjg2NywgMCwgODI2MCwgNzc5NDUsIDc1MTksIDExNTA1LCAxMjI3NCwgODkwNCwgCisgICAgNTE4LCA2NTg1NywgMCwgMTI4Njc0LCAxMzIwNCwgNDM4NywgODU3LCAwLCA2NTM2OSwgMCwgOTIzMzYsIDQzMTI1LCAKKyAgICAxMjA1OTIsIDAsIDAsIDAsIDAsIDUxMzYsIDE5NjgsIDk4MzA0MSwgMTI2NjI3LCAxMzM3LCA2NDk2NywgMTYyOSwgMCwgCisgICAgNzk2LCA2NjUwNiwgMCwgNzQxMjMsIDEyODc3LCAxMjA2NDksIDQyMzE0LCA0MzM4OCwgMCwgNzQ0MDMsIDYxMjAsIDQ3OCwgCisgICAgNjUxNTEsIDY4MTI4LCAxMjgxNDcsIDQzMDgyLCA2MDE2LCAwLCA0MjI4NCwgMTI4NTA3LCA0Mjc2LCAxMjA2LCAzNjE5LCAKKyAgICA0MTYzOCwgNjk2OTEsIDM4NDMsIDEyMDExLCA4ODUzLCAzMzYxLCAwLCA0OTAsIDEwNzE1LCA3NTc4LCA2ODM4NCwgMCwgCisgICAgNjUzNTAsIDEwNTMwLCAxMjM0OCwgODY1MywgNzQzMTQsIDQyNDM1LCA2MTU0LCA5NTUxLCA2NTM1NCwgNzg1MjIsIDc4NCwgCisgICAgNDIzOTcsIDMzNCwgMCwgNDI0MTYsIDY1MzU2LCA2NTI3MywgNzc5ODcsIDY5NjY2LCA0NDQyLCAxMDM2NCwgMCwgNzc4LCAKKyAgICA0MTYyNiwgNDI0NTUsIDc5ODksIDc0MDYzLCAzMjI3LCA2OTkwNywgMTI3Mjc1LCA3Mzk4MywgMjkxNSwgMTE1MDIsIAorICAgIDQxMDIyLCA0MTcwMiwgMTAzMDksIDEyNzAzNSwgNzgzMjAsIDAsIDY5NzUsIDAsIDU0MTUsIDEyMTc2LCAwLCA3NDE5MywgCisgICAgMzQ2MiwgNjUyMTUsIDQyNjI5LCA3ODY5MSwgNzM3ODQsIDAsIDAsIDk3NTksIDAsIDcwMDU3LCAxMjcyNTQsIDgxMTQsIAorICAgIDc4Njk4LCA3ODY5NywgNzg2OTYsIDc4Njk1LCA4NzEwLCA0MjQ5NSwgMTE4OTU2LCAwLCA0MDUxLCAxMDQ2MCwgNDMzNjQsIAorICAgIDExODkxNywgMTM1NiwgMTIxNjEsIDQyNzEzLCAxMjg4NTcsIDEyNzI2OCwgMTYxOSwgOTcwMywgNDMxNTIsIDQyNDg5LCAKKyAgICA0MjExMiwgMTI3OTc4LCAxODc1LCAxMDgwOCwgNDIxMDksIDEyMDI4NCwgNDE4NjAsIDY0ODYyLCAxMzMwNSwgNjQ5MDcsIAorICAgIDUyODksIDEzMTQ0LCAxMjg2NTgsIDAsIDU1NzUsIDk2NzUsIDAsIDU5NDAsIDIyNiwgMjY0OSwgNjMzNiwgOTgzMjY5LCAKKyAgICAxMTk4MzAsIDQzMjM2LCAzMzgyLCA0MjQ0OSwgNjQ5OCwgMTY1OCwgMTE5MzYsIDc4MjMyLCAwLCAxMTI2OSwgMTAxNTEsIAorICAgIDczNzU5LCA0MzEwMCwgNjk4ODgsIDY1NTA4LCAwLCAwLCAwLCA4OTM1LCA5MTc5ODUsIDAsIDAsIDAsIDYxNiwgNzQ3NTMsIAorICAgIDY1MTc4LCA0Njg0LCA3ODcwMSwgMTE5NjUzLCAwLCAxMjY1NTEsIDAsIDYwNDgsIDc0NDYwLCA0MjExMCwgNzM5NjUsIAorICAgIDEwODcwLCA4NTU3LCAxMTA1NCwgNjg2NjQsIDExOTA0OSwgOTY4MSwgNDQ3NSwgMCwgNDExNDIsIDIxMDAsIDAsIDEyMDczMSwgCisgICAgNjAzNSwgMCwgNzY1MSwgMTAyOTYsIDY0NDQzLCAwLCA5ODMyODcsIDkxNzk4NywgMCwgMTE4OTY2LCA3NDE0NCwgNDA5OTcsIAorICAgIDAsIDEwMzkyLCAxMDMyOCwgNDA5OTgsIDQzNDYyLCA3NDQ4OCwgMCwgOTgwMCwgODk3OSwgMCwgMTMzMDcsIDQxMDAwLCAwLCAKKyAgICAxMTkyMzksIDY0ODcsIDMzODYsIDAsIDEwMzQ0LCAwLCA2NTI5OSwgNTM5NCwgNDMyNDYsIDc4MjQzLCAxMDIyMCwgNjY1MDUsIAorICAgIDQxMjAwLCAxMjg1ODMsIDQ0MjUsIDAsIDAsIDAsIDQzMDc0LCA3Mzc5OSwgOTgzMjAwLCA3ODE0NywgMCwgMTIxNzMsIAorICAgIDc4NTQ1LCAwLCAxMjcwMTEsIDY1MzM4LCAwLCAwLCAxMTk1ODIsIDQ0NzQsIDAsIDQzMDkzLCAxMjg2NDQsIDE1ODcsIDAsIAorICAgIDEyNzM3MiwgNjQ0NzUsIDEyODA5OCwgMTM2OSwgOTgzNjYzLCA5OTU5LCA3OTI3LCAwLCA0NTYwLCAwLCAwLCA5MjI3NywgMCwgCisgICAgNjQ5NDgsIDQ0MzAsIDc0MzQ3LCA0MjYwMSwgNDUxNCwgNjY0MzQsIDkzOTU1LCA4MTk0LCA2NTQ2MiwgMTA2MjYsIDEwOTY1LCAKKyAgICAwLCA4ODkzLCA5ODMyOTMsIDEyNTQyLCAwLCA2NTM0MSwgMCwgNjU4MjksIDc5MjUsIDExOTgyMiwgMTA0NzUsIDAsIDAsIAorICAgIDEzNTIsIDExMDY5LCA3NzA3LCAxMjc1NjAsIDEyNjQ4NiwgNjUyNzksIDEyNzEwMiwgNjgyMDcsIDEyNzEwMCwgNzA5OSwgCisgICAgNjA0MCwgMTI3MDk3LCAxMDA3MSwgMCwgOTMzNiwgNDM3NTAsIDAsIDg4OTksIDc3OTgsIDY0NDc0LCA2NDI1OSwgNjk4NzMsIAorICAgIDY1MTg4LCA3ODIwLCA0MzAxOCwgMTI3MDgyLCAwLCA3NzQ2LCAxNDkyLCA3ODU1MSwgMTA4ODQsIDc3OTgyLCAwLCA1MTI3LCAKKyAgICAxMTI4NSwgNDI1MDEsIDU0OTUsIDQyNzMsIDQzMDk1LCA0MTQyNiwgMTA4NDksIDU3MzAsIDI5OTksIDYzNDIsIDY4NjM2LCAKKyAgICA3NDMwNCwgMzcxLCA2NDM3MywgNjAyMywgMTY5LCA1NDk3LCAxMTcwOCwgMCwgMCwgNjMyMywgMTk0Njg0LCA4MjI0LCAwLCAKKyAgICA4OTM4LCA2MDQzLCAxMjczOCwgMCwgOTgzMDc2LCA1MzIxLCAwLCAxOTQ3OTgsIDAsIDI1ODksIDc0MzMyLCAxNjg5LCAKKyAgICA3ODAyLCA0NjgzLCA3NDMxOCwgNDI3MDQsIDEyMDI5NiwgMTE5MDUsIDAsIDAsIDEyODUxNiwgMTI4MTYzLCA3NDUxMywgCisgICAgNjA0OSwgMCwgNDAyNywgODM0LCAxMTg5NjIsIDE4MDMsIDAsIDE1MDMsIDAsIDAsIDcxMzEyLCA1NzMxLCAxMzgxLCAyMzg3LCAKKyAgICAwLCAwLCA4Mjg5LCA2NDUyNSwgNjU4MTcsIDI4ODEsIDQzMTQyLCAwLCA5NjAxLCAyODc5LCA5NjY4LCA5NzY2LCAwLCAKKyAgICA1NzI5LCA5MTc4MzMsIDc0NDEwLCA2MDM2LCA2NDg4MSwgNDAyNiwgOTM2MSwgMTI3MDkxLCAyODg3LCAwLCAzNTI2LCAKKyAgICA2Mjk4LCAwLCA3Nzg5NywgMTIwMDk1LCA3ODUxOSwgMCwgODU3MiwgNjAyMSwgNzc4OTYsIDEyODI4OCwgNzc4OTUsIAogICAgIDQzMTU1LCAwLCAxMTk4NDksIDMxNDYsIDEwOTU5LCA5NDgzLCAwLCA3Nzg5MywgMTA5ODEsIDE2NiwgOTE3ODQxLCA4NjM1LCAKLSAgICAwLCAxMDYyMywgNDA4LCAxMTkwNTgsIDEyNzUwNywgMTMyOTgsIDAsIDc0MjYsIDQxNjQxLCAxMjcxNywgMCwgNzYwNywgCi0gICAgMTA2MzksIDY2NzEzLCAwLCAwLCA0MTY0MywgNzQxMzQsIDAsIDg3MTMsIDQxNjQwLCAxMDIyMSwgNDE2NDUsIDY2NzEyLCAKLSAgICA2NjQ1LCA2NDYsIDY2NzI2LCA2NjcxMSwgNDIxMjksIDAsIDc3OTAxLCAzNDcyLCA4Njk3LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA1ODA5LCAxOTUwLCAxMTkzNTYsIDkyNDMyLCA3NDU3MiwgMCwgNDIxMzYsIDAsIDAsIDAsIDAsIDMyNDcsIDExOTg1NCwgCi0gICAgNjUwMTcsIDAsIDY4NDI4LCA2NjY2OCwgMCwgMCwgMTA5ODMsIDAsIDAsIDAsIDQxNTY3LCAwLCAwLCAwLCAxOTQ2MjQsIDAsIAotICAgIDAsIDAsIDgyODUsIDAsIDQ1MDksIDAsIDY2NDcxLCAxMjIxNiwgMCwgNDA5ODgsIDkyNTkyLCAwLCA0MTcyNywgMCwgCi0gICAgNDI4NDgsIDIzOTYsIDkxNzc2NiwgMCwgNzQwMTgsIDkxNzUzOCwgNjQ5NDAsIDcwMjcsIDM4ODYsIDAsIDQyNDU3LCAKLSAgICAxMTkwMDgsIDAsIDk5NiwgNjgxMjMsIDkxNzU3MSwgNDI0OSwgMCwgOTE3NTk0LCAxMTcwNywgODIyMiwgMCwgNzkzOSwgCi0gICAgOTI0NTQsIDkyNDYwLCAxMjc4MDEsIDkxNzU5MiwgMTI4MzU5LCA4NTM0LCAxMjcxNTQsIDQwOTgzLCAwLCAwLCAwLCA3MjAxLCAKLSAgICAxMjU2MSwgMCwgNDIzNzEsIDEyNTU4LCAwLCA5MTc1NDksIDEwMDUyLCA0MDk4MiwgMCwgMCwgMTQ4OCwgMCwgMCwgMCwgCi0gICAgOTE3NTU5LCAwLCAwLCAxNTYzLCAxMjgwMzQsIDk2MTksIDAsIDAsIDAsIDEyNzg3MiwgMCwgNTgwMywgNzc5NywgNjA3MCwgCi0gICAgMTAwMDYsIDAsIDI5MjIsIDYwODIsIDAsIDY1MDA5LCAwLCAxMjU2NywgMTI4NzAzLCAwLCA0MTQxMiwgMCwgMCwgMzYwNywgCi0gICAgOTIwMCwgMTAwNDYsIDk2MTIsIDQyMTUzLCA4MjE4LCA5NDg1LCAwLCAyMDMyLCA3ODM1NCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNDMwODUsIDYwNTcsIDUwOCwgMTI4NTg1LCAxMjgwMTUsIDEyMDI2NSwgMCwgOTI0MDUsIDAsIDAsIDYzOCwgNjA4MywgCi0gICAgMTE5MDcyLCAwLCAwLCAyMzA1LCA3ODM0OCwgMCwgMCwgNjA1NiwgNjY1OSwgMCwgMCwgNjA4NSwgMCwgMCwgMzkxNSwgCi0gICAgNDE2MzQsIDAsIDQxNjM5LCA2MzkxMiwgMTE5NDEsIDAsIDQwMjgsIDE3ODcsIDQyMTgwLCA0MzA5NiwgOTI2OTAsIDMyNDksIAotICAgIDE3NjgsIDAsIDEyMzI4LCA1MDEsIDEyNzA3NCwgMTA2MDEsIDAsIDU4MywgMCwgNDE5NzcsIDAsIDY2MDA0LCAxMTkzNTAsIAotICAgIDY1MDUsIDc0MDEwLCAwLCAxMzA2NCwgNTUyNjcsIDEyMDgxMCwgNjUwMCwgNTUyNiwgNjUwNDksIDAsIDczNzY0LCAwLCAKLSAgICA5MjM3NiwgMTI3NDUsIDk2NzgsIDAsIDEyMDU4NywgOTg2OSwgMTI4ODE1LCAxNzcxLCAwLCA4OTM2LCAwLCAwLCA0MjA4LCAKLSAgICA3ODM0MSwgMTE5MTE1LCA3ODM0MiwgMCwgMCwgNzQxMDEsIDAsIDExNzYyLCAwLCA5MjQyMiwgNzc5OTcsIDEyODc4OCwgCi0gICAgNjY0NzUsIDAsIDUwMjcsIDc4MTcyLCAxMjg4NzgsIDAsIDUwNjksIDczODYyLCA1MDI4LCA5ODk3LCAwLCA3MzczOSwgCi0gICAgNTAyNiwgMCwgNjg2MzksIDYzMzEsIDEwMDc5LCA4OTMxLCAwLCAxNDE1LCA4ODY2LCA0MTkwMSwgNzQ3OTAsIDc4MTM4LCAKLSAgICAxMTkzNjEsIDAsIDQzMTA2LCA1MDI5LCA2NTMwOSwgMTU4MCwgMzU5OCwgNjg0MjQsIDQxMDcwLCA3NzkwMywgMCwgMzQ0MCwgCi0gICAgNzgyMTUsIDE1NjIsIDEyODY1NiwgMTI3MTc1LCAxMTkzNTgsIDE3MTYsIDAsIDEwNjAwLCA5MTc4NjcsIDYyMCwgNDEwMDEsIAotICAgIDYwMjgsIDAsIDQyODkyLCAwLCA3NDgyMiwgNTAyNCwgMTIwODI5LCA0MTAwMywgMCwgNTAyNSwgMTI4MjY5LCAwLCAwLCAKLSAgICAxMTkzMjgsIDAsIDY1NTU3LCAwLCA3NDU0MSwgMCwgMTE1OTksIDEyODIwOSwgMTE2MDIsIDYyNDMsIDExNTc0LCAxMTU4MSwgCi0gICAgMTE1OTcsIDExNTk4LCA2MjUzLCA2MTA1LCAxMTU4NCwgNzQxOTUsIDExNTY5LCA2NTI3NSwgODkwNiwgMTI3MDk2LCA1NzU1LCAKLSAgICAyNjM2LCAwLCAxMDgxNSwgMTE2MTksIDc4NzE3LCA0MTU0MCwgNzgxNSwgMTE2MTYsIDY5NzksIDEyMDgwLCA3NzIxLCAKLSAgICAxMTYwNCwgNzg2OSwgMTU5MiwgMCwgNDIxNTIsIDc4NDk4LCA0MTA0OCwgMCwgODI5LCAwLCA5MjQwNiwgMTk5NTAsIDAsIAotICAgIDEyODIxNywgNjYxNiwgMCwgMTE4ODc1LCAxMDk1MywgMzkxLCAwLCA2OTc4NSwgNDgyLCA0MjI5NiwgMTE1ODgsIDAsIAotICAgIDQzNjA2LCAwLCA2ODM5NywgNjYzNzAsIDc0NTA2LCA0MjMzNSwgMCwgMCwgMCwgNzUzOCwgNTMxNSwgMTIwNjQ0LCA0MjQ5MSwgCi0gICAgMCwgNDIwNjEsIDEyODA4OCwgNDU3NiwgMCwgNjg0MTcsIDQzODA5LCA0Mjc3LCAwLCA0MDM5LCA2NDQ3MiwgNDIzMzgsIAotICAgIDM2OCwgNDIwNTgsIDM5NjAsIDExMDQzLCAxMTMzNywgNzgyMDksIDkxNzgyMCwgNjM5ODksIDM5NTgsIDEyMTMyLCAxODQ5LCAKLSAgICAwLCA5OTIxLCA0MjQ1MSwgNDI1MywgNDExNDcsIDQyMDY0LCAxMTk1OSwgNDI0MDQsIDQxMTYwLCAwLCAzNjE4LCA3ODMzOCwgCi0gICAgMCwgNDMzMDAsIDUxNTYsIDkyNjI5LCAwLCA5MjksIDY4MjcsIDQyMDM1LCA0MjQzNywgMTU1NSwgMCwgODY5MSwgNjY0MzUsIAotICAgIDAsIDQxNjYyLCAwLCAwLCAwLCAwLCAwLCA0NTc4LCA2NDUxMywgNDE2NjQsIDAsIDQyNTc4LCAxMjg3OTQsIDQxNjYxLCAKLSAgICA3ODcxNSwgNDMyNjcsIDkzNTYsIDAsIDAsIDAsIDEyODYsIDEwMTY2LCAwLCAwLCA2NDcwNywgMCwgNDI0NzYsIDc3MzAsIDAsIAotICAgIDEyODUyMiwgNDI0ODMsIDAsIDAsIDQyMzI0LCA0MjI5MSwgMTAwMjAsIDQzMzU5LCAwLCA2NjQxLCA1MjUsIDQxNjI3LCAKLSAgICA5MTc5MjMsIDg3NjMsIDEyODMwNCwgNDE2MjgsIDUzMywgMTE5MzEsIDY1MjI1LCA4MzIxLCA0MjUwNCwgNDI1ODEsIDAsIAotICAgIDY5MTUsIDQyMzEwLCA0Mzc3LCA4NTU5LCAwLCAxMjAyMzQsIDAsIDEzMTkzLCA2NDM1MCwgMTE2NjYsIDg2NzksIDQxOTI0LCAKLSAgICAxNTc2LCA3NzM1LCA5MjM5OCwgMCwgNzM4NDAsIDAsIDExMzc0LCA3ODA0MywgMTA4ODksIDQzNDYxLCA3NzU3LCA0MjQ2MiwgCi0gICAgMTIwMjI2LCAxMDAyOSwgNjY0OTMsIDI3MTgsIDQxNjgsIDczODQyLCAxMzMwOCwgMTIwMTEyLCAwLCAxMTc5LCA0NDQwLCAwLCAKLSAgICA3Nzk0OCwgMzYzLCAxMTAxNSwgNzc5NDcsIDc3OTQ0LCA2NDI5NiwgMTI3MDkwLCA2NjY5MiwgMTIwODI2LCAwLCA2NjQ5MiwgCi0gICAgNjU5MywgNjQ2MjUsIDQxOTYzLCA5MjE3NywgMTE5MzI5LCAwLCAxMDAxMywgNjQ0MzQsIDkyNTIwLCAxMjcwOTUsIDk0OTIsIAotICAgIDExNzgyLCA2NDM4MiwgMTI4MzMsIDc3ODMwLCAwLCAxMjk3LCA0MTYzMCwgNjMwLCAxMjcwOTQsIDAsIDEyMDc3NCwgCi0gICAgOTI0NjUsIDEwNDMsIDQzNjUyLCA2NjIyMywgMTAwOTAsIDAsIDEyODY2NCwgMzEzLCA5MTc1NjMsIDQxODgxLCAwLCAKLSAgICA0MjMxMSwgNzQ0NSwgMCwgNTc1MCwgMTA3NTksIDk0MTksIDU1MjIyLCA5NDA1LCAxMTI2OCwgNDI5MTksIDkzOTgsIDg1MjYsIAotICAgIDkzOTksIDk0MjIsIDAsIDY2NDk1LCAwLCAwLCAxMjcyMzksIDQxNzE4LCAxMDcwNywgMTYwMywgMCwgMTE5MDAzLCAwLCAKLSAgICA2MzEsIDc3OTUyLCA2OTcwMywgMTMxNjEsIDY1MjcyLCAwLCAxMDU0NiwgNzQyMTAsIDc4MTAxLCAxMTYwMCwgNzc5NjEsIAotICAgIDI3OTcsIDczODIxLCA0MjQyNywgMzA2LCA3MTQsIDMwNTgsIDQyMzgxLCA3Nzk2MiwgMTI3MDgwLCAxMjM1MSwgNDIzOTUsIAotICAgIDAsIDExNjA3LCAwLCA0MjI4MiwgNzc5NzEsIDc3OTY3LCA5MTU3LCA3Mzc2NSwgNjYzNjQsIDQyNDMzLCA3Nzk2NCwgNzYwMywgCi0gICAgMTI4MDMsIDE4MCwgNDIxNDEsIDAsIDEyMDYxMiwgNjY0OTQsIDEyNjc0LCA4MjQ0LCAzNjIsIDkyNDM5LCAwLCA4MDM3LCAKLSAgICA0Mzc3NywgMTE1MzUsIDAsIDc0ODQ1LCA1MTg1LCA3MTY1LCA1NTIxLCAxMDMzNCwgMjA5MywgNzc5ODMsIDEwMzAyLCAKLSAgICAxMjgxMTIsIDEwMTA0LCAxMDI3LCA1MTgxLCAwLCAwLCAxMDUyMywgMTQ0NiwgNDIzMjAsIDQxNjQ2LCA5OTEsIDUxODksIAotICAgIDQyNDcyLCA0MTY0NywgMTIwMTA1LCAxNzIyLCA1NTgxLCA3Nzk3OSwgMzQwNSwgMCwgMTk0NjQ0LCA1NTIzLCAwLCA0MjYyMCwgCi0gICAgOTI0NDcsIDAsIDk1NDksIDAsIDEwNTQ5LCA1NTI4MiwgOTY2MSwgNDM2ODIsIDAsIDc3OTEwLCAxMjAwMjYsIDc4NzA4LCAwLCAKLSAgICA3NzkxMSwgMCwgNDE5OTEsIDAsIDAsIDc2MzAsIDk4NDYsIDc2ODQsIDEwMzUwLCAwLCAxMTc0LCA3Nzk4MSwgNDI3MzMsIAotICAgIDc3OTc4LCA3Nzk4MCwgNjY0ODUsIDc3OTc3LCA0MjI3NywgNzc5NzQsIDQyNDU2LCA2NTY2NywgMTI3MDM3LCAxMjMzMCwgCi0gICAgMTI4MjcyLCAwLCA0MjQxNywgNDIzODMsIDAsIDQxMzQ0LCA2MjkzLCAwLCA2NjI1MiwgNzc5ODQsIDc0NDQzLCAwLCAKLSAgICAxMDIwOSwgODMxMywgNDE5NSwgNzQ0MzUsIDEzMTYsIDY2NjkwLCAxMjAwMzIsIDYzMzIsIDY0ODk0LCAwLCA2NTg3MSwgCi0gICAgNzgwNjAsIDE3MzYsIDAsIDM5MDEsIDEyMjI4LCAxMjAxNTEsIDY1MjAwLCAzMzgzLCAxMDQ0NiwgNzg4NDEsIDY5MywgCi0gICAgOTEzMCwgMzE0LCA2NDE0OSwgNDI0MjAsIDExOTQ5LCAwLCAxMjAxNTIsIDExMDI2LCAwLCA1MzMyLCA2OTQwLCA2NDE1NCwgCi0gICAgMTI2MzUsIDEyNzAwNywgNDI3MDYsIDE3NTEsIDI3MywgODE2NSwgMTMxNjYsIDEyMDc2MywgNzg4NDAsIDAsIDEyODI0LCAwLCAKLSAgICA0NTI4LCA1MzIwLCA2MzAxLCA0MzY2MiwgNjEzMywgOTMzOSwgOTQ2MywgNDIzNDYsIDEwOTIyLCA2NDU2MCwgMzc1NywgMCwgCi0gICAgMCwgMCwgNjU4NjksIDczNzYwLCAyNTY5LCAwLCAyMzI2LCA2NTc0MCwgMjU2NSwgNDI0NTksIDc1OTYsIDc5MjEsIDAsIAotICAgIDc0MDk1LCAxMjc5ODEsIDQxODQ4LCAyNTY3LCA2NjAwNiwgMCwgNDA0NCwgOTI2NDYsIDAsIDEyMjMzLCAwLCAxMDIzLCAKLSAgICA0NzQsIDAsIDExOTgxOCwgMCwgMCwgNDI0ODcsIDY1NTU2LCAwLCAwLCA0MjI5NSwgMCwgMCwgMCwgOTI1MTgsIDk4MzUsIAotICAgIDY2NDk5LCAwLCA1NDE3LCAxMjI3NSwgMTA4OTUsIDAsIDI3NCwgMCwgMTg1OCwgMCwgMCwgNTUyNTEsIDEwMTE4LCAzMTMzLCAKLSAgICAxMjgwMDgsIDczNzk1LCAwLCA5NjEwLCA4MDY4LCA4MTk3LCAwLCA2OTksIDAsIDQxNjY1LCA1ODY4LCAwLCA5MjY5NSwgCi0gICAgNDIxODIsIDc1ODEsIDE5OTQwLCA0MzY2OCwgNDE2NjcsIDEyODA1NywgMCwgMTkyMywgNjU1ODMsIDY1ODAyLCAwLCAKLSAgICA2NDU5NywgNDM0NDQsIDExOTE4NCwgOTIxOTcsIDAsIDY0NjQsIDcwMzYsIDI5OTYsIDE5MzcsIDAsIDAsIDQxODM1LCAKLSAgICA0MDQ3LCA0MTg0MiwgMCwgNjQxMDcsIDAsIDAsIDExMDE3LCAwLCAwLCAyOTMsIDc3OTY2LCA5MjE2OSwgNjQ3OTEsIAotICAgIDQxODI3LCA0MjQ2NiwgNDM0MjIsIDEwNTc5LCA4NTYwLCAwLCA2NTQxMywgNzc5NjMsIDQ4MDMsIDEyOTY0LCAxNzM5LCAKLSAgICAxOTQxLCAzOTAwLCAwLCAxNzEzLCA3Nzk2OSwgMCwgNzM5NTcsIDExNDA3LCA0MjQ0MSwgNDE5NzEsIDYyOTcsIDEyMDA5OCwgCi0gICAgNjQxMDUsIDEyODA4MCwgNDI0ODEsIDExNzE2LCA2NjQ3MywgNzE3OSwgNDIyODksIDAsIDY0MTAzLCA5NjksIDAsIDkzNTIsIAotICAgIDAsIDYxNjUsIDY0MTAwLCAwLCA2NjMyLCA3Mzg2MSwgNDI0MDIsIDc0MzI3LCA3ODA2LCAwLCA4OTE0LCAwLCAwLCAzMTgzLCAKLSAgICAxNDM1LCA2NDg3NiwgMjk2OSwgNjA0NiwgNjQ0NDEsIDYyMDgsIDY3ODQ5LCA1NzQ2LCA3Mzc0OSwgMCwgNjQ0MTYsIAotICAgIDQyNDIyLCAwLCAwLCA3MDgyLCA3Mzc3NSwgMzM4LCA1MDU5LCAxOTQ3MTksIDAsIDQyMzI4LCAxMDc2NywgMCwgODExNSwgMCwgCi0gICAgNzQ3NTgsIDAsIDgyMjcsIDIwNzMsIDEyMTgsIDAsIDAsIDY1ODQ4LCAwLCAwLCAwLCAwLCAxMjY5ODcsIDQ0ODYsIDAsIDAsIAotICAgIDAsIDEwOTI1LCAwLCAwLCAwLCAwLCA0MjMwOSwgMTAyNTcsIDY1MTkxLCAxMDI3MywgMCwgMTAzMDUsIDQyNDYxLCAwLCAKLSAgICA0MjM0OSwgODgzMiwgNzgwNTEsIDY0MTI3LCAxMDY0NCwgNDI2NjIsIDc4ODI4LCA0MjI3OCwgNzQ0NTEsIDEyNjk4OCwgCi0gICAgOTE3ODU3LCA3Nzk0LCAwLCA0MjQyOSwgNjM3NywgNDIzMTYsIDExOTAyNiwgMzY2OSwgMzk2OCwgNDI0NjgsIDAsIDY5NjU4LCAKLSAgICAwLCA2NTQwMiwgMTE5NTgxLCAwLCAwLCA2NDkzMywgMCwgNDE5NjAsIDY2OTksIDAsIDAsIDEyODM1NCwgNjgyMywgNDIzOTEsIAotICAgIDE1ODgsIDY1NDAwLCA4NDA5LCA3ODIyMywgMTk5NjcsIDY1Mzk4LCA3ODcsIDAsIDkxNzkzOSwgMTI3NzQ0LCA2MTE1LCAKLSAgICAyMDc4LCA0MTY1NCwgNDI0ODAsIDAsIDkyNjUwLCA0MTY1NSwgNjU0MDEsIDQzOTc1LCAwLCAwLCAwLCA2NDQsIDY1NTAwLCAKLSAgICA0MTY1NywgMTA3NzgsIDM2NTksIDk1MzMsIDE4NCwgMTU1MywgMTMxMDcsIDY1NDg0LCA2OTY0OCwgMTA1MDIsIDc0NDU3LCAKLSAgICAwLCAwLCA0MTU1NCwgMCwgODIyMCwgOTE3OTQzLCA0MTU1NywgMCwgMCwgMTEwNzAsIDExOTIyMSwgNTE1NywgNDAyMCwgCi0gICAgNzM4NTgsIDQxNTU1LCA5NTE0LCA2NDgxOCwgNjUxMDMsIDY0NjQxLCA2NDMwMywgNzgxMzEsIDc1MjAsIDAsIDc0Mzc3LCAKLSAgICAxMTAyOSwgNjY2NTEsIDAsIDAsIDExODkzMCwgNjQ1MjcsIDAsIDc4NzcsIDczODAzLCAwLCAxMjczNDgsIDEyMDA5NiwgCi0gICAgNzQ2MDIsIDk5NTUsIDExOTU1NywgNDA1NSwgNDI4MTcsIDAsIDY1MjEyLCAxMTcxNSwgMTIxOTAsIDEyMzE5LCA3ODYzMCwgCi0gICAgMCwgNzg2MzEsIDk1MDIsIDY1NDI3LCAwLCA2NTQyNCwgMTI2MDcsIDAsIDk3MzQsIDY1NDI1LCAwLCAwLCAxMjczNTcsIAotICAgIDc4ODM1LCA5MjQxMCwgMTAxMTIsIDEwODI3LCAwLCA5ODY2LCA3NDUyNywgNjY2NzUsIDAsIDg2MjUsIDY0MzQ2LCAxMTI5MCwgCi0gICAgMTA0NzcsIDAsIDg2MzYsIDAsIDgzMTUsIDY1NDQ0LCAwLCAwLCA3NDU5NSwgNjE1MiwgMCwgMCwgNjYyOSwgMTI4MjUxLCAKKyAgICA5ODM2MDYsIDEwNjIzLCA0MDgsIDExOTA1OCwgMTI3NTA3LCAxMzI5OCwgMCwgNzQyNiwgNDE2NDEsIDEyNzE3LCAwLCAKKyAgICA3NjA3LCAxMDYzOSwgNDMzOTYsIDAsIDAsIDQxNjQzLCA3NDEzNCwgOTgzMDU0LCA4NzEzLCA0MTY0MCwgMTAyMjEsIAorICAgIDQxNjQ1LCA2NjcxMiwgNjY0NSwgNjQ2LCA2NjcyNiwgNjY3MTEsIDQyMTI5LCA5Mzk5NCwgNzc5MDEsIDM0NzIsIDg2OTcsIAorICAgIDAsIDAsIDk4MzgwNiwgMCwgMCwgMCwgNTgwOSwgMTk1MCwgMTE5MzU2LCA5MjQzMiwgNzQ1NzIsIDAsIDQyMTM2LCAwLCAwLCAKKyAgICAwLCAwLCAzMjQ3LCAxMTk4NTQsIDY1MDE3LCA5ODM5NDQsIDY4NDI4LCA2NjY2OCwgMCwgMCwgMTA5ODMsIDAsIDAsIDAsIAorICAgIDQxNTY3LCAwLCAwLCAwLCAxOTQ2MjQsIDExOTg1MywgMCwgMCwgODI4NSwgMCwgNDUwOSwgMCwgNjY0NzEsIDEyMjE2LCAwLCAKKyAgICA0MDk4OCwgOTI1OTIsIDc0ODA5LCA0MTcyNywgMCwgNDI4NDgsIDIzOTYsIDkxNzc2NiwgMCwgNzQwMTgsIDkxNzUzOCwgCisgICAgNjQ5NDAsIDcwMjcsIDM4ODYsIDAsIDQyNDU3LCAxMTkwMDgsIDAsIDk5NiwgNjgxMjMsIDk0MDU4LCA0MjQ5LCAwLCAKKyAgICA5MTc1OTQsIDExNzA3LCA4MjIyLCAwLCA3OTM5LCA5MjQ1NCwgOTI0NjAsIDEyNzgwMSwgOTE3NTkyLCAxMjgzNTksIDg1MzQsIAorICAgIDEyNzE1NCwgNDA5ODMsIDAsIDk4MzIzNCwgMCwgNzIwMSwgMTI1NjEsIDAsIDQyMzcxLCAxMjU1OCwgMTU0MCwgOTE3NTQ5LCAKKyAgICAxMDA1MiwgNDA5ODIsIDAsIDAsIDE0ODgsIDAsIDAsIDAsIDkxNzU1OSwgMCwgMCwgMTU2MywgMTI4MDM0LCA5NjE5LCAKKyAgICA5ODM5MzEsIDAsIDAsIDEyNzg3MiwgNzEzNjMsIDU4MDMsIDc3OTcsIDYwNzAsIDEwMDA2LCAwLCAyOTIyLCA2MDgyLCAwLCAKKyAgICA2NTAwOSwgOTgzOTMzLCAxMjU2NywgMTI4NzAzLCAwLCA0MTQxMiwgMCwgMCwgMzYwNywgOTIwMCwgMTAwNDYsIDk2MTIsIAorICAgIDQyMTUzLCA4MjE4LCA5NDg1LCAwLCAyMDMyLCA3ODM1NCwgMCwgMCwgMCwgMCwgMCwgNDMwODUsIDYwNTcsIDUwOCwgCisgICAgOTM5NjgsIDEyODAxNSwgNjc5NjgsIDAsIDkyNDA1LCAwLCAwLCA2MzgsIDYwODMsIDExOTA3MiwgMCwgMCwgMjMwNSwgCisgICAgNzgzNDgsIDY4MDk2LCAwLCA2MDU2LCA2NjU5LCA2Nzk2OSwgMCwgNjA4NSwgMCwgMCwgMzkxNSwgNDE2MzQsIDAsIDQxNjM5LCAKKyAgICA2MzkxMiwgMTE5NDEsIDAsIDQwMjgsIDE3ODcsIDQyMTgwLCA0MzA5NiwgNDM3NTMsIDMyNDksIDE3NjgsIDkzOTgyLCAKKyAgICAxMjMyOCwgNTAxLCA5Mzk4NSwgMTA2MDEsIDAsIDU4MywgMCwgNDE5NzcsIDAsIDY2MDA0LCAxMTkzNTAsIDY1MDUsIAorICAgIDc0MDEwLCAwLCAxMzA2NCwgNTUyNjcsIDEyMDgxMCwgNjUwMCwgNTUyNiwgNjUwNDksIDAsIDczNzY0LCAwLCA5MjM3NiwgCisgICAgMTI3NDUsIDk2NzgsIDAsIDEyMDU4NywgOTg2OSwgMTI4ODE1LCAxNzcxLCAwLCA4OTM2LCAwLCAwLCA0MjA4LCA3ODM0MSwgCisgICAgNzg1NjcsIDc4MzQyLCAwLCA5ODM0NDgsIDc0MTAxLCAwLCAxMTc2MiwgMCwgOTI0MjIsIDc3OTk3LCA2ODAxMCwgNjY0NzUsIAorICAgIDAsIDUwMjcsIDc4MTcyLCAxMjg4NzgsIDAsIDUwNjksIDczODYyLCA1MDI4LCA5ODk3LCAwLCA3MzczOSwgNTAyNiwgCisgICAgOTgzMjQ3LCA2ODYzOSwgNjMzMSwgMTAwNzksIDg5MzEsIDAsIDE0MTUsIDg4NjYsIDQxOTAxLCA3NDc5MCwgNzgxMzgsIAorICAgIDExOTM2MSwgOTgzNTY0LCA0MzEwNiwgNTAyOSwgNjUzMDksIDE1ODAsIDM1OTgsIDY4NDI0LCA0MTA3MCwgNzc5MDMsIDAsIAorICAgIDM0NDAsIDc4MjE1LCAxNTYyLCAxMjg2NTYsIDEyNzE3NSwgMTE5MzU4LCAxNzE2LCA5ODM2NzAsIDEwNjAwLCA5MTc4NjcsIAorICAgIDYyMCwgNDEwMDEsIDYwMjgsIDAsIDQyODkyLCAwLCA3NDgyMiwgNTAyNCwgMTIwODI5LCA0MTAwMywgMCwgNTAyNSwgCisgICAgNjk4OTIsIDk4MzIwNywgMCwgMTE4ODg1LCAwLCA2NTU1NywgMCwgNzQ1NDEsIDk4MzU4NywgMTE1OTksIDEyODIwOSwgCisgICAgMTE2MDIsIDYyNDMsIDExNTc0LCAxMTU4MSwgMTE1OTcsIDExNTk4LCA2MjUzLCA2MTA1LCAxMTU4NCwgNzQxOTUsIDExNTY5LCAKKyAgICA2NTI3NSwgODkwNiwgMTI3MDk2LCA1NzU1LCAyNjM2LCAwLCAxMDgxNSwgMTE2MTksIDIzMDEsIDQxNTQwLCA3ODE1LCAKKyAgICAxMTYxNiwgNjk3OSwgMTIwODAsIDc3MjEsIDExNjA0LCA3ODY5LCAxNTkyLCAwLCA0MjE1MiwgNzg0OTgsIDQxMDQ4LCAKKyAgICA5MTc3NjMsIDgyOSwgMCwgOTI0MDYsIDE5OTUwLCAwLCAxMjY0ODIsIDY2MTYsIDAsIDExODg3NSwgMTA5NTMsIDM5MSwgMCwgCisgICAgNjk3ODUsIDQ4MiwgNDIyOTYsIDExNTg4LCAwLCA0MzYwNiwgMCwgNjgzOTcsIDY2MzcwLCA3NDUwNiwgNDIzMzUsIAorICAgIDk4MzE4OCwgMCwgMCwgNzUzOCwgNTMxNSwgMTIwNjQ0LCA0MjQ5MSwgMCwgNDIwNjEsIDEyODA4OCwgNDU3NiwgMCwgCisgICAgNjg0MTcsIDQzODA5LCA0Mjc3LCAwLCA0MDM5LCA2NDQ3MiwgNDIzMzgsIDM2OCwgNDIwNTgsIDM5NjAsIDExMDQzLCAKKyAgICAxMTMzNywgNzgyMDksIDkxNzgyMCwgNjM5ODksIDM5NTgsIDEyMTMyLCAxODQ5LCAwLCA5OTIxLCA0MjQ1MSwgNDI1MywgCisgICAgNDExNDcsIDQyMDY0LCAxMTk1OSwgNDI0MDQsIDQxMTYwLCAwLCAzNjE4LCA3ODMzOCwgMCwgNDMzMDAsIDUxNTYsIDkyNjI5LCAKKyAgICAwLCA5MjksIDY4MjcsIDQyMDM1LCA0MjQzNywgMTU1NSwgMCwgODY5MSwgNjY0MzUsIDIyMTUsIDQxNjYyLCA5NDAxMCwgMCwgCisgICAgMCwgMCwgOTM5NTIsIDQ1NzgsIDY0NTEzLCA0MTY2NCwgOTgzNzI1LCA0MjU3OCwgMTI4Nzk0LCA0MTY2MSwgNzg3MTUsIAorICAgIDQzMjY3LCA5MzU2LCAwLCAwLCAwLCAxMjg2LCAxMDE2NiwgMCwgMCwgNjQ3MDcsIDk4MzEyNywgNDI0NzYsIDc3MzAsIAorICAgIDk4Mzg1MCwgMTI4NTIyLCA0MjQ4MywgMCwgMCwgNDIzMjQsIDQyMjkxLCAxMDAyMCwgNDMzNTksIDAsIDY2NDEsIDUyNSwgCisgICAgNDE2MjcsIDkxNzkyMywgODc2MywgMTI4MzA0LCA0MTYyOCwgNTMzLCAxMTkzMSwgNjUyMjUsIDgzMjEsIDQyNTA0LCAKKyAgICA0MjU4MSwgMCwgNjkxNSwgNDIzMTAsIDQzNzcsIDg1NTksIDAsIDc0MzYwLCAwLCAxMzE5MywgNjQzNTAsIDExNjY2LCAKKyAgICA4Njc5LCA0MTkyNCwgMTU3NiwgNzczNSwgOTIzOTgsIDAsIDczODQwLCA5ODMwOTIsIDExMzc0LCA3ODA0MywgMTA4ODksIAorICAgIDQzNDYxLCA3NzU3LCA0MjQ2MiwgMTIwMjI2LCAxMDAyOSwgNjY0OTMsIDI3MTgsIDQxNjgsIDczODQyLCAxMzMwOCwgCisgICAgMTIwMTEyLCAwLCAxMTc5LCA0NDQwLCAwLCA3Nzk0OCwgMzYzLCAxMTAxNSwgNzc5NDcsIDc3OTQ0LCA2NDI5NiwgMTI3MDkwLCAKKyAgICA2NjY5MiwgMTIwODI2LCAwLCA2NjQ5MiwgNjU5MywgNjQ2MjUsIDQxOTYzLCA5MjE3NywgMTE5MzI5LCAwLCAxMDAxMywgCisgICAgNjQ0MzQsIDkyNTIwLCAxMjcwOTUsIDk0OTIsIDExNzgyLCA2NDM4MiwgMTI4MzMsIDc3ODMwLCAwLCAxMjk3LCA0MTYzMCwgCisgICAgNjMwLCAxMjcwOTQsIDAsIDEyMDc3NCwgOTI0NjUsIDEwNDMsIDQzNjUyLCA2NjIyMywgMTAwOTAsIDAsIDEyODY2NCwgMzEzLCAKKyAgICA5MTc1NjMsIDQxODgxLCAwLCA0MjMxMSwgNzQ0NSwgMCwgNTc1MCwgMTA3NTksIDk0MTksIDU1MjIyLCA5NDA1LCAxMTI2OCwgCisgICAgNDI5MTksIDkzOTgsIDg1MjYsIDkzOTksIDk0MjIsIDAsIDY2NDk1LCAwLCAwLCAxMjcyMzksIDQxNzE4LCAxMDcwNywgCisgICAgMTYwMywgMCwgMTE5MDAzLCAwLCA2MzEsIDc3OTUyLCA2OTcwMywgMTMxNjEsIDY1MjcyLCAwLCAxMDU0NiwgNzQyMTAsIAorICAgIDc4MTAxLCAxMTYwMCwgNzc5NjEsIDI3OTcsIDczODIxLCA0MjQyNywgMzA2LCA3MTQsIDMwNTgsIDQyMzgxLCA3Nzk2MiwgCisgICAgMTI3MDgwLCAxMjM1MSwgNDIzOTUsIDAsIDExNjA3LCAwLCA0MjI4MiwgNzc5NzEsIDc3OTY3LCA5MTU3LCA3Mzc2NSwgCisgICAgNjYzNjQsIDQyNDMzLCA3Nzk2NCwgNzYwMywgMTI4MDMsIDE4MCwgNDIxNDEsIDAsIDEyMDYxMiwgNjY0OTQsIDEyNjc0LCAKKyAgICA4MjQ0LCAzNjIsIDkyNDM5LCAwLCA4MDM3LCA0Mzc3NywgMTE1MzUsIDAsIDc0ODQ1LCA1MTg1LCA3MTY1LCA1NTIxLCAKKyAgICAxMDMzNCwgMjA5MywgNzEzMjksIDEwMzAyLCAxMjgxMTIsIDEwMTA0LCAxMDI3LCA1MTgxLCAwLCAwLCAxMDUyMywgMTQ0NiwgCisgICAgNDIzMjAsIDQxNjQ2LCA5OTEsIDUxODksIDQyNDcyLCA0MTY0NywgMTIwMTA1LCAxNzIyLCA1NTgxLCA0Mjg5OCwgMzQwNSwgCisgICAgMCwgMTk0NjQ0LCA1NTIzLCAwLCA0MjYyMCwgOTI0NDcsIDk4MzgxMCwgOTU0OSwgMCwgMTA1NDksIDU1MjgyLCA5NjYxLCAKKyAgICA0MzY4MiwgMCwgNzc5MTAsIDEyMDAyNiwgNzg3MDgsIDAsIDc3OTExLCAwLCA0MTk5MSwgOTgzODg0LCAwLCA3NjMwLCAKKyAgICA5ODQ2LCA3Njg0LCAxMDM1MCwgMCwgMTE3NCwgNzc5ODEsIDQyNzMzLCA3Nzk3OCwgNzc5ODAsIDY2NDg1LCA3Nzk3NywgCisgICAgNDIyNzcsIDc3OTc0LCA0MjQ1NiwgNjU2NjcsIDEyNzAzNywgMTIzMzAsIDEyODI3MiwgMCwgNDI0MTcsIDQyMzgzLCAKKyAgICA2NjYzMCwgNDEzNDQsIDYyOTMsIDAsIDY2MjUyLCA3Nzk4NCwgNzQ0NDMsIDAsIDEwMjA5LCA4MzEzLCA0MTk1LCA3NDQzNSwgCisgICAgMTMxNiwgNjY2OTAsIDEyMDAzMiwgNjMzMiwgNjQ4OTQsIDAsIDY1ODcxLCA3ODA2MCwgMTczNiwgOTgzNjc1LCAzOTAxLCAKKyAgICAxMjIyOCwgMTIwMTUxLCA2NTIwMCwgMzM4MywgMTA0NDYsIDc4ODQxLCA2OTMsIDkxMzAsIDMxNCwgNjQxNDksIDQyNDIwLCAKKyAgICAxMTk0OSwgOTgzNjYwLCAxMjAxNTIsIDExMDI2LCAxMjg3ODgsIDUzMzIsIDY5NDAsIDY0MTU0LCAxMjYzNSwgMTI3MDA3LCAKKyAgICA0MjcwNiwgMTc1MSwgMjczLCA4MTY1LCAxMzE2NiwgMTIwNzYzLCA3ODg0MCwgNzEzNjgsIDEyODI0LCAwLCA0NTI4LCAKKyAgICA1MzIwLCA2MzAxLCA0MzY2MiwgNjEzMywgOTMzOSwgOTQ2MywgNDIzNDYsIDEwOTIyLCA2NDU2MCwgMzc1NywgMCwgMCwgMCwgCisgICAgNjU4NjksIDczNzYwLCAyNTY5LCAwLCAyMzI2LCA2NTc0MCwgMjU2NSwgNDI0NTksIDc1OTYsIDc5MjEsIDk4Mzg1OSwgCisgICAgNzQwOTUsIDEyNzk4MSwgNDE4NDgsIDI1NjcsIDY2MDA2LCAwLCA0MDQ0LCA5MjY0NiwgMCwgMTIyMzMsIDk4Mzg2MiwgCisgICAgMTAyMywgNDc0LCAwLCAxMTk4MTgsIDAsIDAsIDQyNDg3LCA2NTU1NiwgMCwgMTI3ODY2LCA0MjI5NSwgMCwgMCwgNzEzMjIsIAorICAgIDkyNTE4LCA5ODM1LCA2NjQ5OSwgMCwgNTQxNywgMTIyNzUsIDEwODk1LCAwLCAyNzQsIDAsIDE4NTgsIDAsIDAsIDU1MjUxLCAKKyAgICAxMDExOCwgMzEzMywgMTI4MDA4LCA3Mzc5NSwgMCwgOTYxMCwgODA2OCwgODE5NywgMCwgNjk5LCAwLCA0MTY2NSwgNTg2OCwgCisgICAgMCwgOTI2OTUsIDQyMTgyLCA3NTgxLCAxOTk0MCwgNDM2NjgsIDQxNjY3LCAxMjgwNTcsIDAsIDE5MjMsIDY1NTgzLCAKKyAgICA2NTgwMiwgOTM5NzAsIDY0NTk3LCA0MzQ0NCwgMTE5MTg0LCA5MjE5NywgMCwgNjQ2NCwgNzAzNiwgMjk5NiwgMTkzNywgCisgICAgOTgzNzQyLCAwLCA0MTgzNSwgNDA0NywgNDE4NDIsIDAsIDY0MTA3LCAwLCAwLCAxMTAxNywgMTIwNjAxLCAwLCAyOTMsIAorICAgIDc3OTY2LCA5MjE2OSwgNjQ3OTEsIDQxODI3LCA0MjQ2NiwgNDM0MjIsIDEwNTc5LCA4NTYwLCA3MTM1MCwgNjU0MTMsIAorICAgIDc3OTYzLCA0ODAzLCAxMjk2NCwgMTczOSwgMTk0MSwgMzkwMCwgMCwgMTcxMywgNzc5NjksIDAsIDczOTU3LCAxMTQwNywgCisgICAgNDI0NDEsIDQxOTcxLCA2Mjk3LCAxMjAwOTgsIDY0MTA1LCAxMjgwODAsIDQyNDgxLCAxMTcxNiwgNjY0NzMsIDcxNzksIAorICAgIDQyMjg5LCAwLCA2NDEwMywgOTY5LCAwLCA5MzUyLCAwLCA2MTY1LCA2NDEwMCwgMCwgNjYzMiwgNzM4NjEsIDQyNDAyLCAKKyAgICA3NDMyNywgNzgwNiwgMCwgODkxNCwgMCwgMCwgMzE4MywgMTQzNSwgNjQ4NzYsIDI5NjksIDYwNDYsIDY0NDQxLCA2MjA4LCAKKyAgICA2Nzg0OSwgNTc0NiwgNzM3NDksIDAsIDY0NDE2LCA0MjQyMiwgMCwgOTgzMDQ2LCA3MDgyLCA3Mzc3NSwgMzM4LCA1MDU5LCAKKyAgICAxOTQ3MTksIDAsIDQyMzI4LCAxMDc2NywgMCwgODExNSwgMCwgNzQ3NTgsIDAsIDgyMjcsIDIwNzMsIDEyMTgsIDkxNzc5MCwgCisgICAgMCwgNjU4NDgsIDAsIDAsIDY5ODYzLCAwLCAxMjY5ODcsIDQ0ODYsIDAsIDAsIDAsIDEwOTI1LCAwLCAwLCAwLCA5ODM1ODYsIAorICAgIDQyMzA5LCAxMDI1NywgNjUxOTEsIDEwMjczLCAwLCAxMDMwNSwgNDI0NjEsIDAsIDQyMzQ5LCA4ODMyLCA3ODA1MSwgCisgICAgNjQxMjcsIDEwNjQ0LCA0MjY2MiwgNzg4MjgsIDQyMjc4LCA3NDQ1MSwgMTI2OTg4LCA2OTg3NCwgNzc5NCwgMCwgNDI0MjksIAorICAgIDYzNzcsIDQyMzE2LCAxMTkwMjYsIDM2NjksIDM5NjgsIDQyNDY4LCA3MTMxOSwgNjk2NTgsIDAsIDY1NDAyLCAxMTk1ODEsIAorICAgIDAsIDAsIDY0OTMzLCAwLCA0MTk2MCwgNjY5OSwgMCwgMCwgMTI4MzU0LCA2ODIzLCA0MjM5MSwgMTU4OCwgNjU0MDAsIAorICAgIDg0MDksIDc4MjIzLCAxOTk2NywgNjUzOTgsIDc4NywgNzEzMTUsIDkxNzkzOSwgMTI3NzQ0LCA2MTE1LCAyMDc4LCA0MTY1NCwgCisgICAgNDI0ODAsIDAsIDkyNjUwLCA0MTY1NSwgNjU0MDEsIDQzOTc1LCAwLCAwLCAwLCA2NDQsIDY1NTAwLCA0MTY1NywgMTA3NzgsIAorICAgIDM2NTksIDk1MzMsIDE4NCwgMTU1MywgMTMxMDcsIDY1NDg0LCA2OTY0OCwgMTA1MDIsIDc0NDU3LCAwLCAwLCA0MTU1NCwgMCwgCisgICAgODIyMCwgOTE3OTQzLCA0MTU1NywgMCwgMCwgMTEwNzAsIDExOTIyMSwgNTE1NywgNDAyMCwgNzM4NTgsIDQxNTU1LCA5NTE0LCAKKyAgICA2NDgxOCwgNjUxMDMsIDY0NjQxLCA2NDMwMywgNzgxMzEsIDc1MjAsIDAsIDc0Mzc3LCAxMTAyOSwgNjY2NTEsIDk4MzA2OCwgCisgICAgMCwgMTE4OTMwLCA2NDUyNywgMCwgNzg3NywgNzM4MDMsIDk4Mzc4OSwgMTI3MzQ4LCAxMjAwOTYsIDc0NjAyLCA5OTU1LCAKKyAgICAxMTk1NTcsIDQwNTUsIDQyODE3LCAwLCA2NTIxMiwgMTE3MTUsIDEyMTkwLCAxMjMxOSwgNzg2MzAsIDAsIDc4NjMxLCAKKyAgICA5NTAyLCA2NTQyNywgMCwgNjU0MjQsIDEyNjA3LCAwLCA5NzM0LCA2NTQyNSwgMCwgMCwgMTI3MzU3LCA3ODgzNSwgOTI0MTAsIAorICAgIDEwMTEyLCAxMDgyNywgMCwgOTg2NiwgNzQ1MjcsIDY2Njc1LCAwLCA4NjI1LCA2NDM0NiwgMTEyOTAsIDEwNDc3LCAwLCAKKyAgICA4NjM2LCA5ODM5MTgsIDgzMTUsIDY1NDQ0LCA5ODM3ODQsIDAsIDc0NTk1LCA2MTUyLCAwLCAwLCA2NjI5LCAxMjcxMDgsIAogICAgIDEyMDE3MSwgMCwgNzQ1ODksIDQzOTkzLCAwLCA2OTc5MCwgNjQ0MzUsIDAsIDQzNjkwLCAxMTA0NiwgMTE0OTAsIDQyNzMwLCAKICAgICA0NDg1LCAxMjcxMDcsIDAsIDY0OTI2LCAwLCAwLCAwLCA1ODY5LCAxMjQzNywgNDI3MjgsIDAsIDcwNDAsIDM1ODgsIDAsIAogICAgIDEyODI1LCAwLCAwLCAxMjcyNSwgMCwgMCwgNzg2NDIsIDIyMywgMCwgNjk2NzUsIDEyMDE2NiwgNDI0NDQsIDAsIDY0NDk5LCAKICAgICA2NTI0NSwgMCwgMTE3MSwgMCwgNjk3MTcsIDAsIDE4MDUsIDg3NzIsIDQzODIwLCAwLCA5OTMwLCA2NTI0NywgNzg2MTksIAogICAgIDEyMDExMSwgMjMzOCwgMCwgMTE4ODUzLCAwLCA0MjY3NiwgMCwgNjQ4MDAsIDY1MjM2LCA2NzY0NCwgNjgxMjYsIDEyMTMsIAotICAgIDAsIDY0MDc1LCA3OTcsIDY0MDc0LCA4NzM0LCA0MjEyLCAwLCA2NDM4NywgNDExNSwgMCwgNTAwNSwgNjQwNzAsIDY0MDczLCAKLSAgICAxMDY3OSwgMCwgNzc5NTQsIDk0MDIsIDY0Mjc2LCA0MjYsIDAsIDAsIDgyNTEsIDEwMTM2LCA2NTQzNiwgMCwgMjEyMCwgCi0gICAgNDMzMDIsIDEyMjQsIDAsIDY1NTc2LCAxMjAxNTgsIDEwNzAxLCAxNzY0LCAzMTAxLCAxMjc4MTUsIDEyODU4LCAxMjAxNTksIAotICAgIDAsIDExMzczLCA2Mzc4LCAxMjc4NTksIDEyMDEwMywgODY2MywgOTMxMiwgNDE2NDQsIDQ1MzksIDIxMjksIDAsIDkyMjIsIAotICAgIDAsIDAsIDQyNTksIDkwOTIsIDc0NTY3LCA0MTk2MSwgMCwgMTI3MjQsIDY2MzU3LCA0MjMzMSwgNjQ5MzUsIDAsIDAsIAotICAgIDEyOTMsIDc5NDcsIDIxMzIsIDAsIDc0NTkzLCAxMjAzMDgsIDI0NTQsIDQyNzE3LCAzNjEzLCAxMjg4MzcsIDAsIDAsIAotICAgIDY1ODg4LCA4ODE2LCAxMDk3OCwgMTA4NDAsIDAsIDEwNjY4LCAwLCA0MzA4NywgMTI1OTUsIDEyMDMwNCwgMCwgODgyMiwgMCwgCi0gICAgMTE1NywgNjQ5MDMsIDg2MzgsIDAsIDAsIDAsIDAsIDEyMDMxOSwgODIzNSwgMTIwMzE2LCA0NDA1LCAxMDA4NiwgMTIwMjQ3LCAKLSAgICAwLCA2OTIxNiwgMCwgNjU0MzAsIDc0MDEzLCA2MDc5LCA2ODE3LCAxMDc2NCwgMTI3OTEwLCA2NDI5MSwgMTI4MDUxLCA5OTgsIAotICAgIDEyMDMxMiwgMTEwNjIsIDEzMTcsIDY0MzI3LCAxNTU4LCAwLCAxOTkxLCA3ODgyLCA0MjI1NCwgMCwgNDE3MDAsIDUzMCwgMCwgCi0gICAgMTA0MjgsIDExOTMzNSwgMTIwMDIsIDExOTMzNiwgNTc0MiwgNDMwNzYsIDQ2OTIsIDY0NjMwLCA0MTgyMywgNDAwNywgCi0gICAgNTAwNCwgMTE5MzM0LCA3ODk2LCA3NTEsIDY1OTUsIDY1OTYsIDAsIDY2MzczLCAwLCAwLCA2NDkwOCwgOTI2OTEsIDYzMTEsIAotICAgIDAsIDEyMDA0LCAxMTkxOTIsIDEyMDQ5LCA0MzEwOCwgMTIwMzI2LCAwLCA0MTcwNSwgOTIxODgsIDY1OTgsIDAsIDY1OTksIAotICAgIDEyMDMzNCwgMCwgNDIxNDgsIDExODgyNSwgNjYwMjcsIDAsIDY1OTcsIDk0MTIsIDgzNDAsIDExODI0LCA2NDc0NSwgMCwgMCwgCi0gICAgMCwgMTk4OCwgNTQwNywgNjc4NjUsIDI0MzAsIDQxNjc4LCAwLCAxMjAyNDMsIDIzMzYsIDAsIDAsIDc4ODcxLCAxMjA0NDIsIAotICAgIDAsIDE5MjEsIDEwOTQ3LCAxOTkyNywgMCwgNjU0MDYsIDAsIDE5OTEzLCA0Mjg0LCAxMzIxNywgMCwgNDM3ODksIDEyODQxLCAKLSAgICA5MjI5LCAxMDk1NiwgNDIyODUsIDQxNjc0LCAxOTk2NCwgNDE2NzksIDY1MDg0LCAzNTIxLCAwLCA1Nzc0LCA4MzI1LCAwLCAKLSAgICA2NTQwMywgMCwgMTg1NCwgMTA3OTQsIDAsIDY3NjYwLCAwLCAwLCA3ODM1OSwgNTI4MCwgMCwgNDM0NCwgMTI5MDUsIAotICAgIDY1NDMzLCA2MDc2LCA2NDc5MywgNDE2MTAsIDc2OCwgMTIwNzQsIDQ0MiwgMCwgNjgxNjIsIDY0MDgxLCAxMjkzNCwgCi0gICAgNDE2ODIsIDY1NDMyLCA0MTY5MywgMCwgNjA3MSwgNjU0MzQsIDEyNzQ2NywgNDgwNCwgNDA1MywgMCwgMTI3NDY5LCAKLSAgICAxOTQ2NTMsIDQxNjk2LCA0NjcsIDY5ODIzLCAxMjc0NjMsIDY5Nzk3LCAwLCAwLCA4NDIxLCAxMjc0NzIsIDY5NjgyLCAKLSAgICA0MzcwNSwgNTAyLCAwLCA2NTQzMSwgMTE5MDU2LCAwLCAxMjA0MywgMTMwMywgMzE2LCA5MjQ2MiwgMjAyOSwgMjEzNiwgCi0gICAgMTE5MjQ2LCAxMTUzMywgNjQzNjUsIDQzNDgwLCA5MjYzOSwgNDg2MCwgMTk0NjQ1LCAxMjc4NzcsIDQyNDg4LCAwLCA5NTgzLCAKLSAgICAxMjg4NDksIDU1NDYsIDgwMTksIDczODU2LCAwLCAwLCAwLCA1NTQ0LCAyMzU1LCAxMjE1MCwgNjU3MjUsIDU1NDMsIAotICAgIDc3OTg5LCA2Mzc1MSwgMTIxMzcsIDU1NDgsIDc3OTg1LCAwLCA2NTcyNywgNjgzODgsIDY1NzI2LCA2MDc3LCAxMjgzNTIsIAotICAgIDY1NDUyLCAwLCAxMTMwMSwgNzgwMTMsIDc4MDA4LCA3ODAxMCwgOTg3NCwgNzgwMDcsIDAsIDEzMTksIDMwNTAsIDY1NDEwLCAKLSAgICAwLCAwLCA3ODAxNiwgNzgwMTcsIDQyODMwLCA0Mzk5NiwgNjY3MTYsIDEyODEzNywgNDY5MSwgOTIyNDIsIDkzNDUsIDYyMSwgCi0gICAgOTI3MDksIDEyODIyMiwgMCwgNjU0MTEsIDAsIDQxMTgyLCA3Mzg4MSwgNjU0MDgsIDczODk5LCA3ODAyNCwgOTQ3NCwgCi0gICAgMTA1NDUsIDExOTExOCwgMTA4ODcsIDM3ODYsIDY1NDA5LCA4ODk0LCA0MzE3OSwgMTE5NjExLCA3OTIzLCAzNzE2LCAKLSAgICA5MjM2MywgOTk5NiwgODUwOCwgMCwgNzAxMiwgODE5NSwgMTI3ODM0LCA5NTY2LCAwLCAzNzIyLCAwLCA0MTcwNywgODQ5MywgCi0gICAgNTQ1LCA5NTc1LCA0MTM3OSwgMTAwNTAsIDEyNzE4LCAwLCA4ODU5LCA2ODIwLCA3NDM0NSwgNjUxMTAsIDEyMDc0MCwgMCwgCi0gICAgMCwgOTExOSwgMjc4NywgNzkyMCwgMTE4ODIzLCA0MDIxLCAyMDEyLCA3OTg1LCAwLCAxMTk2NjMsIDAsIDAsIDc4MDIxLCAKLSAgICA3ODAyMiwgNDEwLCA3ODAyMCwgMTgwMiwgNzgwMTgsIDc0MTA3LCAwLCA0MTY1OSwgNDE2NzEsIDE4MjcsIDAsIDY0Mzk2LCAKLSAgICAxMDEyNiwgMTIxMTYsIDQxNjczLCAxMjAzNzAsIDExNDIyLCA3ODE0MSwgMTIwMzczLCAzODYwLCAxMjAzNjcsIDY4NDEyLCAKLSAgICA0MTM0NSwgMTIwMzYyLCAxMjAzNjMsIDExNzQ4LCA0MjE1OCwgNzk0MSwgMTEwNzYsIDg3NDksIDEyMDM2MSwgMjEwNCwgCi0gICAgNjQ4NTgsIDM2MSwgMTIwMzU3LCA4NDUsIDAsIDQxNTYwLCAxMTk3MCwgNDU2MiwgOTE3OTIwLCAyOTI2LCA5MTc5MTksIAotICAgIDQ1NjksIDc0MTMwLCAwLCA0MzQ4NywgMTk0NjMwLCA2MTEsIDc0MTI5LCA2NDg3MSwgMTE4ODkxLCA2NTYyOSwgMCwgCi0gICAgMTk0ODU4LCAwLCAwLCAxMjc1NDUsIDEyMDU0MywgMCwgMCwgNjI5MSwgMCwgNzg2MzksIDQxNjY5LCA3MDk0LCA5MTc5MjEsIAotICAgIDAsIDAsIDc0MDU0LCAxMjc3NTQsIDE5NTAyOSwgMCwgODM5LCAwLCA3Njk1LCA4NzY5LCA2NTI0NiwgNDgyOSwgMCwgNDg1OSwgCi0gICAgNjQ0NjcsIDAsIDAsIDExODk5OCwgNzIwNiwgMCwgNjY0NywgNDM5ODYsIDAsIDY5NzY2LCAwLCA2NDc2NCwgNDIxMCwgMCwgCi0gICAgMTI3OTM2LCA4MDQsIDAsIDAsIDEyMjk4LCAwLCA2NjY1MywgMCwgNjQ5MjQsIDEwMDkxLCA3MzkzMSwgOTQ2OCwgNzQyNDUsIAotICAgIDAsIDAsIDc0MjQ2LCA5MjUwMywgMTI4MzksIDY0NjY5LCA5MjIwMiwgMCwgMTI3OSwgMTQyNSwgNjIyNCwgMTE5MjI5LCAKLSAgICAxMTA0OSwgMCwgOTI2OTcsIDQzMjM5LCA4NDgyLCA5MjQ0MCwgMCwgNTAzMiwgNjk2NzcsIDExOTQwLCA2Nzg4OCwgNjY0LCAKLSAgICAxMjA0MzcsIDUwMzQsIDAsIDAsIDEyNzUyNSwgNDI3MDIsIDczODg4LCAwLCAxMzI5NCwgNjc4NzMsIDY0ODY5LCA2MDMyLCAKLSAgICAwLCA5MTE1LCA3NDMwLCAxMjAzNzcsIDAsIDEyMDgxOSwgNjgzODcsIDEyMDE2OCwgNzM5MTMsIDEyMDE3MCwgNDExNjEsIAotICAgIDU1MTgsIDQxNzQsIDEwOTkzLCA0MTE2MiwgMTIwMTYwLCA2NDUyOCwgMTE2OSwgNDM0LCA0MTQzNywgMTkwNSwgNjAzNCwgCi0gICAgNDExNjQsIDY0NzQ0LCA5NTI4LCAxMTg4NjcsIDEyODgwMCwgNTI0LCAwLCA3NDAyOSwgNzg4LCA3NDAyNywgMCwgMTk0NjM4LCAKLSAgICAwLCAxNjYzLCAxMDQxOSwgNzQwMjUsIDQyNjM2LCAwLCA2OTcyNSwgMCwgMTIwNjU2LCAwLCA2Nzg3NiwgMCwgMCwgMCwgCi0gICAgNjc4OTcsIDc0MDM5LCAwLCAwLCAxMTM5NSwgMCwgMTE5MTA3LCA0MzYxMiwgNjQzNDQsIDAsIDAsIDEwODU1LCA1NDQ1LCAKLSAgICA5MzU1LCAwLCA2NTE5OCwgNzM5MSwgODk4OSwgMjIxLCA2NTY4NiwgMCwgMCwgODAxMCwgNzE5MSwgNDk2MiwgNjk3NzIsIAotICAgIDg4NTUsIDAsIDAsIDY0NDY5LCAxMjA0MjYsIDEwNTU1LCAwLCA0MzMzMywgOTIyOTksIDAsIDEyMDQyNywgMTA0NTEsIDAsIAotICAgIDY3NjUzLCA3MjQ1LCAxMjQ0MywgNzQ0MDUsIDk5NDcsIDEyMDE0OSwgNzgzMTcsIDM4NzMsIDgzNjcsIDAsIDEyMDE0NiwgCi0gICAgNDM0MzMsIDQzNjQ5LCAxMTk4NywgMCwgMCwgMTEwMTAsIDEyNzIzLCA3NDA1OSwgNzQwNjIsIDYyMTcsIDU4OTYsIDAsIAotICAgIDc2ODIsIDc0MDQ5LCAxNDYyLCAxMDIzNSwgMCwgMCwgMCwgMCwgMCwgMCwgNDI1OTUsIDAsIDc0NDAyLCAxMTg4NjAsIDAsIAotICAgIDEyMDQxOSwgOTI0OTcsIDc0MDUyLCAwLCAwLCAxMjA1NDksIDExOTA4MiwgNjQyOTUsIDEyMDQxOCwgMCwgNjQ3NjUsIAotICAgIDczOTIzLCAxMjA0MTcsIDEyMDY2MiwgMTIwNzMwLCAxOTQ3MDIsIDYyMTYsIDAsIDEwNzU1LCA5NDU1LCAwLCA4MTI0LCAKLSAgICAxMjcwNDIsIDk0NzAsIDY5NDQsIDEyNzU0MCwgMCwgNjk2ODAsIDI4MjgsIDAsIDUzMSwgNDI2MzgsIDAsIDAsIDAsIAotICAgIDQzNDI4LCA4MjA0LCAzNjE0LCAyODI3LCA5Njk2LCAwLCAwLCA4NzI4LCA0MzU0LCAxMDkwNCwgNzg1NjIsIDE5OTM2LCAKLSAgICA3ODMzLCAxMjA2OTEsIDAsIDQyNTk5LCA0MjU5NywgNDI3MDksIDEyMDQwOSwgMTI3MDQ0LCAwLCA4NTM3LCAwLCAwLCAwLCAKLSAgICAwLCAwLCA0MTE5OSwgMTAxMjEsIDIwMjgsIDAsIDAsIDY5NzE1LCAwLCAzMDYyLCAwLCA3NDQ0NywgMTI2MDgsIDAsIAotICAgIDY2NDQwLCA3NTQ1LCA5NzAwLCAxMjU4MCwgMCwgMTIwNzc3LCAxMjA1MDIsIDQxMTU1LCAwLCA3NDA3MSwgMCwgMCwgCi0gICAgMTI3MTMsIDAsIDAsIDAsIDc4NzcyLCAwLCAxNzM0LCAwLCAwLCAxMjcwNDAsIDY0NTk0LCAyNDU2LCAyMzEsIDAsIDc0MTY3LCAKLSAgICA1NDIsIDAsIDExODc4NiwgMCwgMCwgMTIzMCwgMCwgMCwgMzU5NywgNDQ0NiwgMTA1ODQsIDc0MjM1LCA5MjIxNSwgNDAzNywgCi0gICAgMTI3OTM4LCA4MzUyLCAwLCA1Njg3LCAwLCA2NDUxNSwgMCwgMTk0ODAxLCA1NTI2NSwgNjc4NDYsIDc4NDM0LCA5NzA0LCAwLCAKLSAgICAwLCA3NDI4NCwgMTI4Mjg1LCAwLCA4NjYwLCAwLCAwLCAwLCA3ODc3MywgNzQ0ODIsIDQ0ODMsIDE3MDksIDY5NzIxLCAKLSAgICA5OTA5LCA2MDgwLCAwLCAxMjAzNTgsIDE3NDYsIDEzMTUsIDg2NjcsIDAsIDAsIDEzMTQwLCA2NTg5OSwgMTA2MDQsIDAsIAotICAgIDQ0ODAsIDExMjY2LCAxMjgxNTIsIDEyMjYsIDY5MzAsIDAsIDAsIDYzNjAsIDEwODk3LCA0MTIzMCwgNjA1LCAwLCA3NDc4NSwgCi0gICAgMTIwMzU2LCAwLCAwLCA0MTUwMCwgMCwgMzExLCAxMTQ1MywgNjIyMSwgMTA2MDgsIDY0OTQzLCA3NDI4MCwgMTA4NzcsIAotICAgIDExODg2OCwgNjQ4ODUsIDc0MjcyLCAwLCAwLCAwLCAxMjA3MzYsIDc0MzEyLCAzNDUsIDAsIDc0NDU2LCA2NDYwNiwgOTkxNywgCi0gICAgMCwgOTIyMzEsIDUwMzcsIDAsIDE3NzYsIDg0MjIsIDAsIDExODgxNCwgNDE1MDgsIDQxMjAxLCAzMjMsIDQzMzI4LCAwLCAKLSAgICA0MjY5OCwgMTI5NSwgMCwgNDYyNSwgMCwgNDYzMCwgMTMxMTcsIDAsIDEyODc3MiwgNjUxMjMsIDExMjkzLCAyNjY4LCAKLSAgICAxMTI4OCwgMCwgNDI2NDAsIDY1NjY2LCAyNTE5LCA5MjM2OSwgNjU0MjAsIDkyNDc5LCAwLCA0MjUyLCA1MDQ5LCA0MjY1OSwgCi0gICAgMTE5MDExLCA3MDYsIDc3NTQsIDEwODU0LCA4NzM4LCAwLCA2NTQxOSwgMCwgMCwgNjQ5LCA2NTQyMSwgMCwgNjY3MDIsIDAsIAotICAgIDEyNjcwLCAxMDEzLCAwLCA2NDkxOSwgNzA1LCAwLCA2NTQyMiwgMTI3ODAzLCAxMTgzLCAwLCA3MDE3LCA0Mjg1MiwgMCwgCi0gICAgODE1NywgOTczNiwgNjQ1MDMsIDY1NDE4LCAwLCAwLCA3NDAzNSwgMCwgMTE5MTMsIDczODc0LCA2Njk2LCAwLCA4OTIwLCAwLCAKLSAgICAwLCA3OTYyLCAxMjIxMSwgOTgzNywgMjA1MSwgNjYyMjcsIDAsIDQxODQsIDAsIDAsIDEwMTc3LCA3Mzc3NywgMTg1NywgMCwgCi0gICAgNDYyNiwgODQ2NCwgODQ3MiwgMCwgNDYyOSwgODQ5OSwgNzgzMjEsIDc4MzIyLCA0NjI0LCA3ODE4LCAxMTkxNzMsIDAsIDAsIAotICAgIDc4MDUsIDAsIDAsIDY5MzUsIDkyMjkyLCA3ODMyNSwgNzgzMjYsIDc4MzIzLCA0MzMyNywgNDM5ODksIDExOTA0NiwgODQ5MiwgCi0gICAgODI1MCwgODQ1OSwgMCwgODQ5NywgODQ5NiwgMCwgMCwgNzgzMzYsIDc4MzM5LCA5NTQzLCA3ODMzNSwgNzgzMzIsIDc3ODMyLCAKLSAgICA2NTg0OSwgNzc4MzEsIDAsIDAsIDEyNDUxLCAwLCA4Njg0LCAwLCA2MTAyLCAwLCA1Mjk4LCAwLCA1Mjk0LCAwLCAwLCAwLCAKLSAgICAxOTUwNjIsIDk5NDksIDExOTgyNiwgNDM2MTcsIDExOTIxNSwgMCwgMTIwNzMsIDAsIDAsIDc3ODYzLCAxMzEwOCwgCi0gICAgMTIwNjE3LCA3NDM5NywgNDE0NjgsIDAsIDAsIDUyOTIsIDU1MjcyLCAwLCAxOTM5LCA1MzAyLCAzOTcwLCA5MTc4NzksIAotICAgIDEyNDU1LCAxNzkzLCAwLCAwLCAwLCA2NjQzLCA5MjQ3NywgNjUyNjMsIDAsIDc4MzMwLCA0MTI5MywgNzgzMjgsIDY1OTIzLCAKLSAgICAwLCAxMzIxOSwgOTU2OSwgMCwgNzQzODMsIDAsIDAsIDAsIDU1MDAsIDg4MTMsIDAsIDAsIDc0NTY2LCA1MzIyLCAwLCAKLSAgICA3ODM0MCwgNDM2MzEsIDUzMjQsIDY2NDQzLCAzNzg0LCA0MTYxNCwgNjUyNjksIDYyMzAsIDc4MzQ5LCA3ODM0NSwgNDMzMjQsIAotICAgIDMzNjAsIDc4MzQ0LCAxMTUyMywgMCwgOTI0ODgsIDk5MjYsIDcxOTcsIDAsIDY4NDI5LCA0Mjg5NCwgNDE4MjEsIDEyNDksIAotICAgIDc4MzYwLCA3ODM2MSwgNzgzNTYsIDc4MzU4LCA3ODM1MywgNjQ4OTksIDY0NzYzLCA0MTE0OSwgNDE4MDcsIDQzMTYyLCAKLSAgICA0MTgxNSwgNDExNTAsIDAsIDEwNTcxLCAxMDA5NiwgMCwgMCwgNzgwNzQsIDY5NDcsIDQxMTUyLCA4ODcsIDkyNDksIDY1NjUsIAotICAgIDc4NTEwLCA0MTk5MCwgNzg1MDksIDQxODExLCA3NDQ2NiwgMCwgNjY3MCwgNzc4ODIsIDAsIDAsIDQzMDkyLCA0MzMyNSwgMCwgCi0gICAgMTAxNjgsIDAsIDk3ODEsIDEyODY1NSwgOTE5MCwgMCwgOTY2NiwgODI2OSwgNjU5NDQsIDc0MDA1LCAxMzAxOSwgMTE2NzAsIAotICAgIDEyNzM4MywgMzE1LCAxMjgxMywgMCwgNzg0MzIsIDc4MjU2LCA3ODM1MSwgNzgzNTIsIDAsIDAsIDAsIDAsIDEzNzgsIAotICAgIDk1MDksIDAsIDAsIDc0NDc1LCAzMDY2LCA5MjIyMCwgNjc4NDcsIDAsIDkyMzU1LCAwLCA3ODM2NSwgODc4NywgMTIwMzc5LCAKLSAgICAxOTQ2MTYsIDQxNjE4LCAxOTQ2MTUsIDc4MjYxLCAxOTQ2MTQsIDAsIDY0NjUyLCAwLCAxOTQ2MTIsIDAsIDc4MzY2LCAKLSAgICA0MjA4OCwgMCwgMTk1MDYxLCA3MTc2LCAxMjg4MzMsIDEwMTM3LCA2MTIxLCAxMDk5NSwgNzgyNTksIDc0NTM0LCA4MTE5LCAKLSAgICA2NDg3NCwgOTE3ODE2LCAxMjcxOTksIDE5NDkzOSwgMCwgNzQ1MjUsIDAsIDAsIDEyOTMwLCAxMzk0LCA3NDUxNCwgMCwgCi0gICAgNzQ1MTUsIDAsIDExODgwNCwgMjk5OCwgOTUyNywgMTIwNjU5LCA2NTE5MCwgMTI5NzcsIDQyMDkwLCAxMTkxNjUsIDAsIAotICAgIDExOTEwMCwgNDEyMzYsIDkyMjM1LCA0MjAwNSwgNDIwMDMsIDQxMjM3LCA1ODQ4LCAwLCAwLCAzNjcwLCAxMjg2NTcsIAotICAgIDE5NDYwMCwgMCwgMCwgNzg5MCwgMCwgMTEyOTgsIDQzMzE1LCAwLCA2MjI5LCAxNTkzLCAwLCAwLCA2MTksIDQ2MzUsIAotICAgIDY1MDgwLCAwLCAxMjgwMDIsIDQxMjAsIDY1MzM3LCA2NTMzNiwgMCwgMTE4MDgsIDExOTIxNCwgNzQxMTUsIDkzNjYsIAotICAgIDQyNzkwLCA0MjAwNiwgMCwgNjUzMjcsIDY1MzI2LCA2NTMyNSwgMTA3NTcsIDE1MDcsIDQyMjE2LCA2NTMyMSwgNjUzMjAsIAotICAgIDY1MzM1LCA2NTMzNCwgNjUzMzMsIDY1MzMyLCA2NTMzMSwgNDIwNTksIDY1MzI5LCA0MjY4OSwgOTI0MjcsIDkxMjgsIAotICAgIDExODg4NSwgNDIwNzMsIDY3ODUsIDY0NTkwLCAwLCA0MzcxLCA3MTk2LCA2NTMxOCwgMjAzNSwgNjUzMTYsIDQxMDYsIAotICAgIDY1MzE0LCA2NTMxMywgNDIwNzQsIDEyNzg0NywgNDEyMjgsIDAsIDY1NjA5LCA0MTI0MSwgNzkwMywgNDEyMzksIDQzNTMzLCAKLSAgICA3ODQ1OSwgNzE4OSwgMCwgMCwgMCwgMTIzNTcsIDQyODAyLCA3ODQ1MCwgODQ4NywgOTEzMSwgMCwgNDYxNSwgMTI2OTUsIAotICAgIDEyNzc1MiwgMCwgMTIxNzUsIDAsIDY0NTM1LCAwLCA3ODA5LCAwLCAwLCA1NjIsIDEyMTY5LCA2NTkwLCA2OTc2MiwgCi0gICAgNjY0NTUsIDY0NzM4LCAzMjE5LCA2ODY1NCwgMCwgMCwgMTAzNywgMCwgMjAyNSwgMTI4MjYzLCAxMzA5OCwgNzg0NDIsIAotICAgIDEwNjM3LCA0NTY4LCA1NDksIDE1NzAsIDAsIDI4MzUsIDAsIDEwNjI0LCA0MzYyMywgMTEwNzIsIDEyNzE5MSwgMCwgMCwgCi0gICAgMTI2MDYsIDc4NDMzLCAyODI1LCAwLCAxMDgyNSwgODA3OSwgMjgyMSwgNDEwNDYsIDkyMzI3LCAwLCAwLCAxMjA1OTMsIAotICAgIDEzMDcxLCAwLCA0NTIsIDQxMDQ5LCA0Mjg0MCwgNjM0NiwgMjgzMSwgNTQ2MSwgNzQ1OTYsIDExNDY1LCA1MjEyLCAwLCAKLSAgICA2NDcwMywgMTE5MTkxLCA0MjMwOCwgNzE4MSwgMCwgNDEzMzIsIDAsIDEyMzMzLCAwLCAxNjY4LCAwLCAwLCAwLCAxMTg3LCAKLSAgICAwLCA0MjYyOCwgNzg1NzUsIDAsIDEyODc3NywgMCwgMzI0MCwgMTI4NTE4LCAxMjE5NCwgMCwgMTE1OTEsIDQxMDY1LCAKLSAgICA1MzIzLCA4MTY2LCAwLCAwLCAwLCA3NDUzNSwgMTYyMywgNjUyOTcsIDEyODg1NiwgNTcxLCAwLCA0OTE4LCAwLCA1Mjg4LCAKLSAgICAxMjcyOTUsIDg5MTYsIDY1MDQ4LCAxOTA5LCA4ODY0LCAwLCAwLCAxMDczNiwgOTI1MDgsIDExNTcxLCA3NjE1LCAxMjczMDAsIAotICAgIDkyMjk2LCA0MjM3LCA5MjU3NiwgMTAzNSwgNjU4MTUsIDAsIDc4ODEsIDcwMSwgNjU5MzYsIDM0ODksIDAsIDAsIDEyMDc1MSwgCi0gICAgMTE0MDMsIDAsIDAsIDEyNzE0NiwgMzc5NiwgNjgwMCwgMCwgMzk5NCwgMTE0MjEsIDAsIDE5NTA3NiwgMCwgMCwgMCwgMCwgCisgICAgMCwgNjQwNzUsIDc5NywgNjQwNzQsIDg3MzQsIDQyMTIsIDEyNzM2OSwgNjQzODcsIDQxMTUsIDAsIDUwMDUsIDY0MDcwLCAKKyAgICA2NDA3MywgMTA2NzksIDAsIDc3OTU0LCA5NDAyLCA2NDI3NiwgNDI2LCAwLCAwLCA4MjUxLCAxMDEzNiwgNjU0MzYsIDAsIAorICAgIDIxMjAsIDQzMzAyLCAxMjI0LCAwLCA2NTU3NiwgNzQxOTIsIDEwNzAxLCAxNzY0LCAzMTAxLCAxMjc4MTUsIDEyODU4LCAKKyAgICAxMjAxNTksIDAsIDExMzczLCA2Mzc4LCAxMjc4NTksIDEyMDEwMywgODY2MywgOTMxMiwgNDE2NDQsIDQ1MzksIDIxMjksIDAsIAorICAgIDkyMjIsIDk4MzcyOSwgMCwgNDI1OSwgOTA5MiwgNzQ1NjcsIDQxOTYxLCAwLCAxMjcyNCwgNjYzNTcsIDQyMzMxLCA2NDkzNSwgCisgICAgMCwgMCwgMTI5MywgNzk0NywgMjEzMiwgOTgzNzU4LCA3NDU5MywgMTIwMzA4LCAyNDU0LCA0MjcxNywgMzYxMywgMTI4ODM3LCAKKyAgICAwLCAwLCA2NTg4OCwgODgxNiwgMTA5NzgsIDEwODQwLCAwLCAxMDY2OCwgMCwgNDMwODcsIDEyNTk1LCAxMjAzMDQsIAorICAgIDk4MzExNCwgODgyMiwgMCwgMTE1NywgNjQ5MDMsIDg2MzgsIDAsIDAsIDAsIDAsIDY5ODQ4LCA4MjM1LCAxMjAzMTYsIAorICAgIDQ0MDUsIDEwMDg2LCAxMjAyNDcsIDAsIDY5MjE2LCAwLCA2NTQzMCwgNzEzMjEsIDYwNzksIDY4MTcsIDEwNzY0LCAKKyAgICAxMjc5MTAsIDY0MjkxLCAxMjgwNTEsIDk5OCwgMTIwMzEyLCAxMTA2MiwgMTMxNywgNjQzMjcsIDE1NTgsIDAsIDE5OTEsIAorICAgIDc4ODIsIDQyMjU0LCAwLCA0MTcwMCwgNTMwLCAwLCAxMDQyOCwgMTE5MzM1LCAxMjAwMiwgMTE5MzM2LCA1NzQyLCA0MzA3NiwgCisgICAgNDY5MiwgNjQ2MzAsIDQxODIzLCA0MDA3LCA1MDA0LCAxMTkzMzQsIDc4OTYsIDc1MSwgNjU5NSwgNjU5NiwgMTIwMzI1LCAKKyAgICA2NjM3MywgMCwgMCwgNjQ5MDgsIDkyNjkxLCA2MzExLCAwLCAxMjAwNCwgMTE5MTkyLCAxMjA0OSwgNDMxMDgsIDEyMDMyNiwgCisgICAgMCwgNDE3MDUsIDkyMTg4LCA2NTk4LCAwLCA2NTk5LCAxMjAzMzQsIDAsIDQyMTQ4LCAxMTg4MjUsIDY2MDI3LCAwLCA2NTk3LCAKKyAgICA5NDEyLCA4MzQwLCAxMTgyNCwgNjQ3NDUsIDIyODEsIDY5OTA0LCAwLCAxOTg4LCA1NDA3LCA2Nzg2NSwgMjQzMCwgNDE2NzgsIAorICAgIDAsIDEyMDI0MywgMjMzNiwgOTgzODk0LCAwLCA3ODg3MSwgMTIwNDQyLCA5ODM3NjAsIDE5MjEsIDEwOTQ3LCAxOTkyNywgMCwgCisgICAgNjU0MDYsIDAsIDE5OTEzLCA0Mjg0LCAxMzIxNywgMCwgNDM3ODksIDEyODQxLCA5MjI5LCAxMDk1NiwgNDIyODUsIDQxNjc0LCAKKyAgICAxOTk2NCwgNDE2NzksIDY1MDg0LCAzNTIxLCAwLCA1Nzc0LCA4MzI1LCAwLCA2NTQwMywgOTgzMDg5LCAxODU0LCAxMDc5NCwgCisgICAgMCwgNjc2NjAsIDY5ODQ2LCAwLCA3ODM1OSwgNTI4MCwgMCwgNDM0NCwgMTI5MDUsIDY1NDMzLCA2MDc2LCA2NDc5MywgCisgICAgNDE2MTAsIDc2OCwgMTIwNzQsIDQ0MiwgMCwgNjgxNjIsIDY0MDgxLCAxMjkzNCwgNDE2ODIsIDY1NDMyLCA0MTY5MywgMCwgCisgICAgNjA3MSwgNjU0MzQsIDEyNzQ2NywgNDgwNCwgNDA1MywgMCwgMTI3NDY5LCAxOTQ2NTMsIDQxNjk2LCA0NjcsIDY5ODIzLCAKKyAgICAxMjc0NjMsIDY5Nzk3LCAxOTQ2NTIsIDEyNzQ3MywgODQyMSwgMTI3NDcyLCA2OTY4MiwgNDM3MDUsIDUwMiwgMCwgNjU0MzEsIAorICAgIDExOTA1NiwgNjk5NTQsIDEyMDQzLCAxMzAzLCAzMTYsIDczNjQsIDIwMjksIDIxMzYsIDExOTI0NiwgMTE1MzMsIDY0MzY1LCAKKyAgICA0MzQ4MCwgOTI2MzksIDQ4NjAsIDEyNjY0OCwgMTI3ODc3LCA0MjQ4OCwgMCwgOTU4MywgMTI4ODQ5LCA1NTQ2LCA4MDE5LCAKKyAgICA3Mzg1NiwgMCwgMCwgMCwgNTU0NCwgMjM1NSwgMTIxNTAsIDY1NzI1LCA1NTQzLCA3Nzk4OSwgNjM3NTEsIDEyMTM3LCAKKyAgICA1NTQ4LCA3Nzk4NSwgMCwgNjU3MjcsIDY4Mzg4LCA2NTcyNiwgNjA3NywgMTI4MzUyLCA2NTQ1MiwgMCwgMTEzMDEsIAorICAgIDc4MDEzLCA3ODAwOCwgNzgwMTAsIDk4NzQsIDc4MDA3LCAwLCAxMzE5LCAzMDUwLCA2NTQxMCwgMCwgMCwgNzgwMTYsIAorICAgIDc4MDE3LCA0MjgzMCwgNDM5OTYsIDY2NzE2LCAxMjgxMzcsIDQ2OTEsIDkyMjQyLCA5MzQ1LCA2MjEsIDkyNzA5LCAKKyAgICAxMjgyMjIsIDAsIDY1NDExLCAwLCA0MTE4MiwgNzM4ODEsIDY1NDA4LCA3Mzg5OSwgNzgwMjQsIDk0NzQsIDEwNTQ1LCAKKyAgICAxMTkxMTgsIDEwODg3LCAzNzg2LCA2NTQwOSwgODg5NCwgNDMxNzksIDExOTYxMSwgNzkyMywgMzcxNiwgOTIzNjMsIDk5OTYsIAorICAgIDg1MDgsIDAsIDcwMTIsIDgxOTUsIDEyNzgzNCwgOTU2NiwgMCwgMzcyMiwgMCwgNDE3MDcsIDg0OTMsIDU0NSwgOTU3NSwgCisgICAgNDEzNzksIDEwMDUwLCAxMjcxOCwgNjk4NTQsIDg4NTksIDY4MjAsIDc0MzQ1LCA2NTExMCwgMTIwNzQwLCAwLCAwLCA5MTE5LCAKKyAgICAyNzg3LCA3OTIwLCAxMTg4MjMsIDQwMjEsIDIwMTIsIDc5ODUsIDAsIDExOTY2MywgMCwgMCwgNzgwMjEsIDc4MDIyLCA0MTAsIAorICAgIDc4MDIwLCAxODAyLCA3ODAxOCwgNzQxMDcsIDAsIDQxNjU5LCA0MTY3MSwgMTgyNywgMCwgNjQzOTYsIDEwMTI2LCAxMjExNiwgCisgICAgNDE2NzMsIDEyMDM3MCwgMTE0MjIsIDc4MTQxLCAxMjAzNzMsIDM4NjAsIDEyMDM2NywgNjg0MTIsIDQxMzQ1LCAxMjAzNjIsIAorICAgIDEyMDM2MywgMTE3NDgsIDQyMTU4LCA3OTQxLCAxMTA3NiwgODc0OSwgMTIwMzYxLCAyMTA0LCA2NDg1OCwgMzYxLCAKKyAgICAxMjAzNTcsIDg0NSwgMCwgNDE1NjAsIDExOTcwLCA0NTYyLCA5MTc5MjAsIDI5MjYsIDkxNzkxOSwgNDU2OSwgNzQxMzAsIDAsIAorICAgIDQzNDg3LCAxOTQ2MzAsIDYxMSwgNzQxMjksIDY0ODcxLCAxMTg4OTEsIDY1NjI5LCAwLCAxOTQ4NTgsIDAsIDAsIDEyNzU0NSwgCisgICAgMTIwNTQzLCAwLCAwLCA2MjkxLCAwLCA3ODYzOSwgNDE2NjksIDcwOTQsIDkxNzkyMSwgMCwgOTgzNTgxLCA3NDA1NCwgCisgICAgMTI3NzU0LCAxOTUwMjksIDAsIDgzOSwgOTgzMzExLCA3Njk1LCA4NzY5LCA2NTI0NiwgNDgyOSwgMTk0NjYzLCA0ODU5LCAKKyAgICA2NDQ2NywgMCwgOTgzOTU0LCAxMTg5OTgsIDcyMDYsIDAsIDY2NDcsIDQzOTg2LCAwLCA2OTc2NiwgMCwgNjQ3NjQsIDQyMTAsIAorICAgIDk4Mzg1NCwgMTI3OTM2LCA4MDQsIDAsIDAsIDEyMjk4LCAwLCA2NjY1MywgMCwgNjQ5MjQsIDEwMDkxLCA3MzkzMSwgOTQ2OCwgCisgICAgNzQyNDUsIDAsIDAsIDc0MjQ2LCA5MjUwMywgMTI4MzksIDY0NjY5LCA5MjIwMiwgMCwgMTI3OSwgMTQyNSwgNjIyNCwgCisgICAgMTE5MjI5LCAxMTA0OSwgMCwgOTI2OTcsIDQzMjM5LCA4NDgyLCA5MjQ0MCwgMCwgNTAzMiwgNjk2NzcsIDExOTQwLCAKKyAgICA2Nzg4OCwgNjY0LCAxMjA0MzcsIDUwMzQsIDAsIDAsIDEyNzUyNSwgNDI3MDIsIDczODg4LCA5ODMxNDksIDEzMjk0LCAKKyAgICA2Nzg3MywgNjQ4NjksIDYwMzIsIDAsIDkxMTUsIDc0MzAsIDEyMDM3NywgMCwgMTIwODE5LCA2ODM4NywgMTIwMTY4LCAKKyAgICA3MzkxMywgMTIwMTcwLCA0MTE2MSwgNTUxOCwgNDE3NCwgMTA5OTMsIDQxMTYyLCAxMjAxNjAsIDY0NTI4LCAxMTY5LCA0MzQsIAorICAgIDQxNDM3LCAxOTA1LCA2MDM0LCA0MTE2NCwgNjQ3NDQsIDk1MjgsIDExODg2NywgMTI4ODAwLCA1MjQsIDAsIDc0MDI5LCAKKyAgICA3ODgsIDc0MDI3LCAwLCAxOTQ2MzgsIDAsIDE2NjMsIDEwNDE5LCA3NDAyNSwgNDI2MzYsIDAsIDY5NzI1LCAwLCAxMjA2NTYsIAorICAgIDAsIDY3ODc2LCAwLCAwLCAwLCA2Nzg5NywgNzQwMzksIDAsIDAsIDExMzk1LCAwLCAxMTkxMDcsIDQzNjEyLCA2NDM0NCwgMCwgCisgICAgMCwgMTA4NTUsIDU0NDUsIDkzNTUsIDAsIDY1MTk4LCA3MzkxLCA4OTg5LCAyMjEsIDY1Njg2LCAwLCAwLCA4MDEwLCA3MTkxLCAKKyAgICA0OTYyLCA2OTc3MiwgODg1NSwgMCwgMCwgNjQ0NjksIDEyMDQyNiwgMTA1NTUsIDAsIDQzMzMzLCA5MjI5OSwgMCwgCisgICAgMTIwNDI3LCAxMDQ1MSwgMCwgNjc2NTMsIDcyNDUsIDEyNDQzLCA3NDQwNSwgOTk0NywgMTIwMTQ5LCA3ODMxNywgMzg3MywgCisgICAgODM2NywgMCwgMTIwMTQ2LCA0MzQzMywgNDM2NDksIDExOTg3LCAwLCAwLCAxMTAxMCwgMTI3MjMsIDc0MDU5LCA3NDA2MiwgCisgICAgNjIxNywgNTg5NiwgMCwgNzY4MiwgNzQwNDksIDE0NjIsIDEwMjM1LCAwLCAwLCAwLCAwLCAwLCAwLCA0MjU5NSwgMCwgCisgICAgNzQ0MDIsIDExODg2MCwgMCwgMTIwNDE5LCA5MjQ5NywgNzQwNTIsIDAsIDkyMzc4LCAxMjA1NDksIDExOTA4MiwgNjQyOTUsIAorICAgIDEyMDQxOCwgMCwgNjQ3NjUsIDczOTIzLCAxMjA0MTcsIDEyMDY2MiwgNjk5MjAsIDE5NDcwMiwgNjIxNiwgMCwgMTA3NTUsIAorICAgIDk0NTUsIDAsIDgxMjQsIDEyNzA0MiwgOTQ3MCwgNjk0NCwgMTI3NTQwLCAwLCA2OTY4MCwgMjgyOCwgMCwgNTMxLCA0MjYzOCwgCisgICAgMCwgMCwgMCwgNDM0MjgsIDgyMDQsIDM2MTQsIDI4MjcsIDk2OTYsIDAsIDAsIDg3MjgsIDQzNTQsIDEwOTA0LCA3ODU2MiwgCisgICAgMTk5MzYsIDc4MzMsIDEyMDY5MSwgMCwgNDI1OTksIDQyNTk3LCA0MjcwOSwgMTIwNDA5LCAxMjcwNDQsIDAsIDg1MzcsIDAsIAorICAgIDAsIDkzNTQsIDk4MzE2NCwgMTI4ODMzLCA0MTE5OSwgMTAxMjEsIDIwMjgsIDAsIDk4MzE5NCwgNjk3MTUsIDAsIDMwNjIsIAorICAgIDAsIDc0NDQ3LCAxMjYwOCwgMCwgNjY0NDAsIDc1NDUsIDk3MDAsIDEyNTgwLCA5MjIwNSwgMTIwNzc3LCAxMjA1MDIsIAorICAgIDQxMTU1LCAwLCA3NDA3MSwgMCwgOTgzNDQ5LCAxMjcxMywgMCwgMCwgMCwgNzg3NzIsIDAsIDE3MzQsIDAsIDAsIDEyNzA0MCwgCisgICAgNjQ1OTQsIDI0NTYsIDIzMSwgMCwgNzQxNjcsIDU0MiwgMCwgMTE4Nzg2LCAwLCA5ODM5NzAsIDEyMzAsIDAsIDAsIDM1OTcsIAorICAgIDQ0NDYsIDEwNTg0LCA3NDIzNSwgOTIyMTUsIDQwMzcsIDEyNzkzOCwgODM1MiwgMCwgNTY4NywgMCwgNjQ1MTUsIDAsIAorICAgIDE5NDgwMSwgNTUyNjUsIDY3ODQ2LCA3ODQzNCwgOTcwNCwgMCwgMCwgNzAwODAsIDcxMzM4LCAwLCA4NjYwLCAxMjY0OTUsIAorICAgIDAsIDAsIDc4NzczLCA3NDQ4MiwgNDQ4MywgMTcwOSwgNjk3MjEsIDk5MDksIDYwODAsIDAsIDEyMDM1OCwgMTc0NiwgMTMxNSwgCisgICAgODY2NywgMCwgMCwgMTMxNDAsIDY1ODk5LCAxMDYwNCwgMCwgNDQ4MCwgMTEyNjYsIDEyODE1MiwgMTIyNiwgNjkzMCwgCisgICAgNjc5NzksIDk4MzY4MSwgNjM2MCwgMTA4OTcsIDQxMjMwLCA2MDUsIDAsIDc0Nzg1LCA2OTg3NSwgMCwgMCwgNDE1MDAsIDAsIAorICAgIDMxMSwgMTE0NTMsIDYyMjEsIDEwNjA4LCA2NDk0MywgNzQyODAsIDEwODc3LCAxMTg4NjgsIDY0ODg1LCA3NDI3MiwgMCwgMCwgCisgICAgMTI4NTU5LCAxMjA3MzYsIDc0MzEyLCAzNDUsIDAsIDc0NDU2LCA2NDYwNiwgOTkxNywgMCwgOTIyMzEsIDUwMzcsIDAsIAorICAgIDE3NzYsIDg0MjIsIDAsIDExODgxNCwgNDE1MDgsIDQxMjAxLCAzMjMsIDQzMzI4LCAwLCA0MjY5OCwgMTI5NSwgMTk0ODUzLCAKKyAgICA0NjI1LCAwLCA0NjMwLCAxMzExNywgMCwgMTI4NzcyLCA2NTEyMywgMTEyOTMsIDI2NjgsIDExMjg4LCAwLCA0MjY0MCwgCisgICAgNjU2NjYsIDI1MTksIDkyMzY5LCA2NTQyMCwgOTI0NzksIDAsIDQyNTIsIDUwNDksIDQyNjU5LCAxMTkwMTEsIDcwNiwgCisgICAgNzc1NCwgMTA4NTQsIDg3MzgsIDAsIDY1NDE5LCAwLCAwLCA2NDksIDY1NDIxLCAwLCA2NjcwMiwgMCwgMTI2NzAsIDEwMTMsIAorICAgIDAsIDY0OTE5LCA3MDUsIDAsIDY1NDIyLCAxMjc4MDMsIDExODMsIDEyNjUxOSwgNzAxNywgNDI4NTIsIDAsIDgxNTcsIAorICAgIDk3MzYsIDY0NTAzLCA2NTQxOCwgMCwgOTgzODY5LCA3NDAzNSwgMCwgMTE5MTMsIDczODc0LCA2Njk2LCAwLCA4OTIwLCAKKyAgICAxMTkyOTgsIDAsIDc5NjIsIDEyMjExLCA5ODM3LCAyMDUxLCA2NjIyNywgMCwgNDE4NCwgMCwgMCwgMTAxNzcsIDczNzc3LCAKKyAgICAxODU3LCAxOTQ2NTcsIDQ2MjYsIDg0NjQsIDg0NzIsIDAsIDQ2MjksIDg0OTksIDc4MzIxLCA3ODMyMiwgNDYyNCwgNzgxOCwgCisgICAgMTE5MTczLCAwLCAwLCA3ODA1LCAwLCA5NDAwNywgNjkzNSwgOTIyOTIsIDc4MzI1LCA3ODMyNiwgNzgzMjMsIDQzMzI3LCAKKyAgICA0Mzk4OSwgMTE5MDQ2LCA4NDkyLCA4MjUwLCA4NDU5LCAwLCA4NDk3LCA4NDk2LCAwLCAwLCA3ODMzNiwgNzgzMzksIDk1NDMsIAorICAgIDc4MzM1LCA3ODMzMiwgNzc4MzIsIDY1ODQ5LCA3NzgzMSwgOTgzOTUyLCAwLCAxMjQ1MSwgMCwgODY4NCwgMCwgNjEwMiwgMCwgCisgICAgNTI5OCwgMCwgNTI5NCwgMCwgMCwgOTgzNDUxLCAxOTUwNjIsIDk5NDksIDExOTgyNiwgNDM2MTcsIDExOTIxNSwgMCwgCisgICAgMTIwNzMsIDAsIDAsIDc3ODYzLCAxMzEwOCwgMTIwNjE3LCAxMTQzOSwgNDE0NjgsIDk4Mzc0OCwgMCwgNTI5MiwgNTUyNzIsIAorICAgIDk4Mzg3NCwgMTkzOSwgNTMwMiwgMzk3MCwgOTE3ODc5LCAxMjQ1NSwgMTc5MywgMCwgMCwgMCwgNjY0MywgOTI0NzcsIAorICAgIDY1MjYzLCAwLCA3ODMzMCwgNDEyOTMsIDc4MzI4LCA2NTkyMywgMCwgMTMyMTksIDk1NjksIDAsIDc0MzgzLCAwLCA3NDE5NywgCisgICAgMCwgNTUwMCwgODgxMywgMCwgMCwgNzQ1NjYsIDUzMjIsIDAsIDc4MzQwLCA0MzYzMSwgNTMyNCwgNjY0NDMsIDM3ODQsIAorICAgIDQxNjE0LCA2NTI2OSwgNjIzMCwgNzgzNDksIDc4MzQ1LCA0MzMyNCwgMzM2MCwgNzgzNDQsIDExNTIzLCAwLCA5MjQ4OCwgCisgICAgOTkyNiwgNzE5NywgMCwgNjg0MjksIDQyODk0LCA0MTgyMSwgMTI0OSwgNzgzNjAsIDc4MzYxLCA3ODM1NiwgNzgzNTgsIAorICAgIDc4MzUzLCA2NDg5OSwgNjQ3NjMsIDQxMTQ5LCA0MTgwNywgNDMxNjIsIDQxODE1LCA0MTE1MCwgMCwgMTA1NzEsIDEwMDk2LCAKKyAgICAwLCAwLCA3ODA3NCwgNjk0NywgNDExNTIsIDg4NywgOTI0OSwgNjU2NSwgNzg1MTAsIDQxOTkwLCA3ODUwOSwgNDE4MTEsIAorICAgIDc0NDY2LCA5Mzk2NiwgNjY3MCwgNzc4ODIsIDAsIDAsIDQzMDkyLCA0MzMyNSwgMCwgMTAxNjgsIDAsIDk3ODEsIDEyODY1NSwgCisgICAgOTE5MCwgMCwgOTY2NiwgODI2OSwgNjU5NDQsIDc0MDA1LCAxMzAxOSwgMTE2NzAsIDY5ODYwLCAzMTUsIDEyODEzLCAKKyAgICA5ODM0NTAsIDc4NDMyLCA3ODI1NiwgNzgzNTEsIDc4MzUyLCAwLCA5ODM2NDgsIDAsIDAsIDEzNzgsIDk1MDksIDAsIDAsIAorICAgIDc0NDc1LCAzMDY2LCA5MjIyMCwgNjc4NDcsIDAsIDkyMzU1LCAwLCA3ODM2NSwgODc4NywgMTIwMzc5LCAxOTQ2MTYsIAorICAgIDQxNjE4LCAxOTQ2MTUsIDc4MjYxLCAxOTQ2MTQsIDAsIDY0NjUyLCAwLCAxOTQ2MTIsIDAsIDc4MzY2LCA0MjA4OCwgMCwgCisgICAgMTk1MDYxLCA3MTc2LCA0Mzc1NiwgMTAxMzcsIDYxMjEsIDEwOTk1LCA3ODI1OSwgNzQ1MzQsIDgxMTksIDY0ODc0LCAKKyAgICA5MTc4MTYsIDEyNzE5OSwgMTk0OTM5LCAwLCA3NDUyNSwgMCwgMCwgMTI5MzAsIDEzOTQsIDc0NTE0LCAwLCA3NDUxNSwgMCwgCisgICAgMTE4ODA0LCAyOTk4LCA5NTI3LCAxMjA2NTksIDY1MTkwLCAxMjk3NywgNDIwOTAsIDExOTE2NSwgMCwgMTE5MTAwLCAKKyAgICA0MTIzNiwgOTIyMzUsIDQyMDA1LCA0MjAwMywgNDEyMzcsIDU4NDgsIDAsIDAsIDM2NzAsIDEyODY1NywgMTk0NjAwLCAwLCAKKyAgICAwLCA3ODkwLCAwLCAxMTI5OCwgNDMzMTUsIDAsIDYyMjksIDE1OTMsIDAsIDAsIDYxOSwgNDYzNSwgNjUwODAsIDAsIAorICAgIDEyODAwMiwgNDEyMCwgNjUzMzcsIDY1MzM2LCAwLCAxMTgwOCwgMTE5MjE0LCA3NDExNSwgOTM2NiwgNDI3OTAsIDQyMDA2LCAKKyAgICAxMTkxMTUsIDY1MzI3LCA2NTMyNiwgNjUzMjUsIDEwNzU3LCAxNTA3LCA0MjIxNiwgNjUzMjEsIDY1MzIwLCA2NTMzNSwgCisgICAgNjUzMzQsIDY1MzMzLCA2NTMzMiwgNjUzMzEsIDQyMDU5LCA2NTMyOSwgNDI2ODksIDkyNDI3LCA5MTI4LCA5NDA0NSwgCisgICAgNDIwNzMsIDY3ODUsIDY0NTkwLCA5ODM4MjEsIDQzNzEsIDcxOTYsIDY1MzE4LCAyMDM1LCA2NTMxNiwgNDEwNiwgNjUzMTQsIAorICAgIDY1MzEzLCA0MjA3NCwgMTI3ODQ3LCA0MTIyOCwgMCwgNjU2MDksIDQxMjQxLCA3OTAzLCA0MTIzOSwgNDM1MzMsIDc4NDU5LCAKKyAgICA3MTg5LCAwLCAwLCAwLCAxMjM1NywgNDI4MDIsIDc4NDUwLCA4NDg3LCA5MTMxLCAwLCA0NjE1LCAxMjY5NSwgMTI3NzUyLCAKKyAgICAwLCAxMjE3NSwgMCwgNjQ1MzUsIDAsIDc4MDksIDAsIDAsIDU2MiwgMTIxNjksIDY1OTAsIDY5NzYyLCA2NjQ1NSwgNjQ3MzgsIAorICAgIDMyMTksIDY4NjU0LCA5ODM3NzgsIDAsIDEwMzcsIDAsIDIwMjUsIDEyODI2MywgMTMwOTgsIDc4NDQyLCAxMDYzNywgNDU2OCwgCisgICAgNTQ5LCAxNTcwLCAwLCAyODM1LCAwLCAxMDYyNCwgNDM2MjMsIDExMDcyLCAxMjcxOTEsIDAsIDAsIDEyNjA2LCA3ODQzMywgCisgICAgMjgyNSwgMCwgMTA4MjUsIDgwNzksIDI4MjEsIDQxMDQ2LCA5MjMyNywgNzM2NSwgOTgzNzQ0LCAxMjA1OTMsIDEzMDcxLCAwLCAKKyAgICA0NTIsIDQxMDQ5LCA0Mjg0MCwgNjM0NiwgMjgzMSwgNTQ2MSwgNzQ1OTYsIDExNDY1LCA1MjEyLCAwLCA2NDcwMywgCisgICAgMTE5MTkxLCA0MjMwOCwgNzE4MSwgMCwgNDEzMzIsIDAsIDEyMzMzLCAwLCAxNjY4LCAwLCAwLCAwLCAxMTg3LCA5ODMzNzcsIAorICAgIDQyNjI4LCA3ODU3NSwgMCwgMTI4Nzc3LCAwLCAzMjQwLCAxMjg1MTgsIDEyMTk0LCAwLCAxMTU5MSwgNDEwNjUsIDUzMjMsIAorICAgIDgxNjYsIDAsIDAsIDAsIDc0NTM1LCAxNjIzLCA2NTI5NywgMTI4ODU2LCA1NzEsIDAsIDQ5MTgsIDAsIDUyODgsIDEyNzI5NSwgCisgICAgODkxNiwgNjUwNDgsIDE5MDksIDg4NjQsIDAsIDAsIDEwNzM2LCA5MjUwOCwgMTE1NzEsIDc2MTUsIDEyNzMwMCwgOTIyOTYsIAorICAgIDQyMzcsIDkyNTc2LCAxMDM1LCA2NTgxNSwgMCwgNzg4MSwgNzAxLCA2NTkzNiwgMzQ4OSwgMCwgMCwgMTIwNzUxLCAxMTQwMywgCisgICAgMCwgMCwgMTI3MTQ2LCAzNzk2LCA2ODAwLCAwLCAzOTk0LCAxMTQyMSwgMCwgMTk1MDc2LCAwLCA5ODM5MTMsIDAsIDAsIAogICAgIDY0ODU3LCAxMjgxMDUsIDI4NTUsIDEyNzgyOCwgNjYzMDgsIDQxNjIxLCA2ODIxNCwgMTI3MjgzLCAxMjc4MTcsIDEwNjU0LCAKICAgICAwLCAxMTkyMjYsIDEyMTY0LCAzMjQ2LCA3OTA2LCA0Mzk3MiwgNjU4NDcsIDcxODIsIDAsIDEzMDI0LCAxOTQ4MjIsIAotICAgIDc0MjcwLCAxMjgyODksIDAsIDAsIDAsIDE0OTYsIDc0NywgMCwgOTQyLCAyMzc4LCA0MzEzNiwgMTI3OTA1LCA4NDY2LCAwLCAKLSAgICA5MzIwLCA4MDAxLCAxMjMyLCA4MTM5LCAxMTYxNywgMCwgMCwgMTE0MDksIDY4MzczLCA2MzgyLCAwLCA2NDYzNCwgCi0gICAgMTI4Mjc5LCAwLCAxMTYxMiwgMCwgNjc2MDAsIDIzNzQsIDAsIDg0NzUsIDExNjA5LCA2NjMxMywgMCwgMCwgNTI4NiwgCi0gICAgMTE5Mjk3LCAwLCAwLCA2NDkyNSwgMTIwMjgzLCAxOTQ1ODQsIDExODk4MiwgMTk0NTgzLCA3NzA1LCAxMTk0MiwgMTEzMDUsIAotICAgIDE5NDU4MSwgMzMwOSwgMCwgMCwgMCwgMCwgNjgwMiwgMCwgNDE2NTMsIDEyODAsIDEyNDEsIDcxNjgsIDEyMDk2LCAwLCAKLSAgICA2NjYxNSwgNDI1NjUsIDQxNjUxLCAwLCAwLCAwLCA0MTY1MCwgNjY1MDcsIDY2NDcwLCAwLCAxMjkxNCwgNDE0OTEsIAotICAgIDY2MDEwLCAxMTk1NTIsIDYwNzgsIDk5NTQsIDAsIDE0NzUsIDAsIDk5MzgsIDYwODQsIDkxNzU0NiwgNDEwNjQsIDQxMDYyLCAKLSAgICAwLCAwLCAzMjU2LCAxMjg2NDAsIDQyMDc2LCA0MzI1MiwgNzg4MjMsIDkxNzkwNiwgODcyNywgMCwgNjU4NzUsIDAsIDAsIAotICAgIDEyNzc2MiwgMTA1NjIsIDc0MjE1LCA0MzA2NSwgMCwgMCwgMzI0OCwgNzQyOTcsIDMyNjEsIDkwMTUsIDAsIDAsIDM2MzUsIAotICAgIDY0MzM3LCAwLCAwLCAwLCA3MTk1LCAwLCAyMDA3LCA2NDQzMSwgMCwgMCwgMCwgMCwgNjM1LCAwLCAwLCA2NTYxMywgCi0gICAgNzc5MDksIDkyNDIwLCA3Mzk5NywgMCwgMCwgMTE5MjE4LCA3OTg0LCA4NjAwLCA3NDQzNCwgMTI3NzcwLCA0MTc2LCAwLCAKLSAgICAyMDM0LCA5MjU1MSwgMTIwODA1LCA2NTg5MSwgMTI3MDM4LCAwLCAzMTgsIDIwMzgsIDEyODg2MCwgNzg1OTYsIDAsIDM2NDksIAotICAgIDEzMTQ5LCA0MjE0NSwgNDI3OTgsIDM2MzQsIDEyMDI5MSwgMTE4OTI3LCA2NzY3NywgMTIwMTI0LCA3ODY2LCAwLCAxMTQwMiwgCi0gICAgNDIxNDYsIDEyMDEzNCwgNzQyMzgsIDQyNjY0LCAyODQ5LCAxMjcwMzQsIDAsIDc5MzgsIDEyOTYwLCAxNzYxLCAxMTgxMiwgCi0gICAgNjUzNzksIDY4Mzg2LCAxMjgxODUsIDExNTksIDAsIDY5NzI5LCAwLCAwLCA3MTc4LCAxOTQ2MzIsIDAsIDQxNjgwLCAwLCAKLSAgICAxMjgyMDMsIDExNTM0LCAxNTE0LCAxMTY2OCwgNjc4OTEsIDkzMTMsIDcwMTUsIDAsIDY3ODc3LCAwLCAxMjk4OSwgNjY0NzQsIAotICAgIDkzNjgsIDEyODQ4LCAxNjI0LCA0MzI3MCwgMCwgMTk0NTYzLCAxMDgxOCwgMTI4MjA3LCA5OTUzLCAwLCA3ODQyMSwgMTE5NCwgCi0gICAgMzI0MiwgOTc2MSwgOTU1NSwgODU5OCwgMTIwMjk5LCA2MTY5LCAxMjg3MSwgMTU1MSwgMjc5OCwgNjUxNzYsIDQ5NTgsIAotICAgIDQyNzUyLCAxMTkwMjUsIDAsIDY3ODc1LCAxMjAzMDEsIDM0OTUsIDY2NjQ4LCAxOTQ3NjgsIDAsIDY4MzY0LCAwLCA0ODkxLCAKLSAgICAwLCAxMDY0MSwgMCwgNzM3NDYsIDAsIDY4MzUyLCAwLCA3Mzc4NywgMCwgMTk0NjMzLCA3MTk5LCA2NDk1NSwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNDI2ODUsIDQyNjc5LCAxOTMsIDAsIDAsIDAsIDQyNjY3LCAwLCA1MjcxLCA5MjMxOCwgOTI1MTcsIDExODg4MiwgCi0gICAgMTM2MiwgMTMyOTcsIDAsIDEyODA5NCwgMCwgMCwgNzM3ODksIDAsIDY2NTgsIDQ0MjYsIDAsIDkyNjI4LCAwLCA5MjMxOSwgCi0gICAgNzI3NiwgNDIxNjMsIDUyMjAsIDAsIDAsIDAsIDI0MTYsIDMzMTAsIDQyNzAzLCAwLCAzNzksIDAsIDEyNzk3NywgMCwgMCwgCi0gICAgMzIyMywgNjU0OTIsIDEyODQsIDE5NDc3MSwgNDU0OSwgMCwgMCwgMCwgMTI3NzYzLCAxMDgwNywgOTU1OCwgMTk0NjEzLCAwLCAKLSAgICA4NTE1LCA4Njg4LCAxMjg2NiwgMCwgMzI5NCwgMCwgODUyOSwgMTI4MTAxLCA0MzM4NSwgNzU2NCwgMCwgNDMzMjksIDAsIAotICAgIDkyNDU4LCA3Mzc1NywgNjY0NTYsIDQyMzU5LCAwLCAyMDMxLCAwLCA3MjAyLCAwLCAxMjY3NiwgNDI3MjksIDkyMTk4LCAKLSAgICAzMjE1LCAwLCA3NzEwLCAxNjEwLCA3MzgwMSwgMCwgMCwgNjU2ODIsIDAsIDEyMDUzNywgNjU5MjQsIDk5NzQsIDIyOCwgCi0gICAgNjYzNTQsIDE1MDEsIDAsIDY0Mzk1LCA1MTc5LCA3MjAwLCA2MjI1LCAwLCA2NTc5NCwgMTcyNSwgNjU1MzMsIDgxOTYsIAotICAgIDc0NzYsIDc0Mzk5LCAwLCAwLCA3MTUyLCA4NTAyLCA1NzYyLCAxOTY3LCA3NDgzLCAwLCAwLCA4MTA0LCAwLCA3NDc0LCAKLSAgICA5MjU3MSwgMCwgMCwgMTA0MTQsIDEzMDAxLCA4MTQxLCAwLCA0MjUzNywgMTU1NywgNDM1OTQsIDEyODY0MiwgNjMzMCwgCi0gICAgNjgwNSwgODYzMSwgMjU0NSwgMTIwNjcyLCAxMjcxNjYsIDAsIDc0MTkwLCAwLCAwLCAwLCA0Mjc2MiwgMCwgNDI5MTQsIAotICAgIDE2NTAsIDI2MiwgMTYzNywgMCwgNzkwMSwgMzIzOCwgMTI4MTczLCA0MTg2MSwgMCwgMCwgNjUxNTgsIDEwODYwLCAwLCAKLSAgICA0MzY1OCwgNzUyNywgMCwgNDMzMTksIDY0MTksIDAsIDQ1LCAwLCA2NDU4OCwgMCwgMCwgMTE5ODEwLCA3MTk0LCA1MjkxLCAKLSAgICAwLCA0MzY2NiwgMTMxMjksIDAsIDkwODQsIDAsIDg3MzcsIDAsIDEyODgxLCAwLCAxMjkwNiwgOTYzOSwgNzkxMiwgMjYyMCwgCi0gICAgMCwgMCwgMCwgMCwgMTc5LCA2NTg5NiwgMCwgNjQ3NTYsIDI4NTMsIDc4NDQzLCAxMTg4MTMsIDAsIDExODk5NiwgMTE5MDA5LCAKLSAgICAyODUwLCA4MDg0LCAwLCA3Mzg1MCwgMjgwMSwgOTIyODQsIDQyMDY5LCAxMTk4MzksIDc0NzU0LCAxMTk4NDEsIDQyMDcyLCAKLSAgICAxMTk4NDMsIDExOTg0MiwgMTAzOTgsIDAsIDAsIDgzNzcsIDEyNzExNiwgODI0NSwgNjg0MDEsIDMxNTgsIDkyMzk2LCAKLSAgICAzOTgzLCA0MzY1NiwgOTIzLCAxMTk4NTcsIDExOTg1NiwgMjkyLCAxMzAwMiwgMTE5ODQ1LCAxMTk4NDQsIDMyMjEsIDE3NjMsIAotICAgIDkyNDYzLCA0NjEyLCAxMTk4NTEsIDExOTg1MCwgNzI1MywgMTI3MTEwLCA2ODM5MSwgMCwgMTA3ODIsIDM2MzcsIDEyOTk2LCAKLSAgICA0MzU0MiwgMCwgNjQ1NzgsIDAsIDMyMjgsIDY5NjM2LCA4NzgzLCAwLCAxMTk2MTQsIDI3MzEsIDAsIDAsIDc4NTg1LCAKLSAgICA0MTAyLCA3Njk2LCA3Mzg3OCwgMCwgMCwgNzg1ODYsIDQzMzE2LCA0MTc3LCAxMTI4MywgOTA4OSwgMCwgNzM5OTYsIDAsIAotICAgIDY0NTAwLCA0MzY3NCwgMCwgNjQ5NDcsIDE4NTYsIDAsIDAsIDYzNzksIDAsIDAsIDAsIDMyMDgsIDEyOTc1LCA3NDc3NSwgMCwgCi0gICAgMCwgOTIzODksIDc0MDcyLCA1NTI2OSwgMCwgMCwgMCwgMjAzMywgNzg1NzcsIDc4NTc2LCAxOTUwMjYsIDU1MjU0LCA3NzQwLCAKLSAgICAwLCAwLCAwLCA3Mzk2NCwgMCwgMCwgNjc2MTIsIDY1Njc0LCAwLCAwLCA0MTY4OSwgMCwgNzQwMDYsIDY0OTA5LCA2NjQ2LCAKLSAgICAxMTc5MCwgNzQwMTksIDAsIDEyODA2NiwgMTI4MDMxLCA4NTYxLCA0NTczLCAwLCA1MzI2LCAwLCAxMjA2MDUsIDcyMzAsIAotICAgIDgyNTcsIDAsIDg3NzgsIDQxNjg4LCAwLCA2NTc3NiwgMjA3MSwgODMxNCwgNjQ1OSwgMCwgNzYyOCwgNjUwOTIsIDczOTAzLCAKLSAgICA2NjcyMSwgMTEzNDIsIDEyODU2MSwgMCwgMCwgMTI4MjI2LCAxMjcwMDEsIDAsIDExODEwLCAxMzE2NCwgMTA3MjMsIDk2NywgCi0gICAgMCwgMCwgMTE5NDYsIDAsIDMyNTcsIDAsIDEyMzA3LCAxODQ1LCAwLCA0MzUyNiwgMCwgMCwgMTg4NiwgNDIzNDIsIDEwMDg5LCAKLSAgICA4NzAsIDc2NDgsIDM0OTksIDg2MDksIDc2NTIsIDg3NiwgODcxLCA4NzcsIDAsIDg3OCwgNDIwMTUsIDg3OSwgNDM2OTIsIAotICAgIDQ1NjMsIDAsIDAsIDc1OTEsIDY1ODg3LCA4NjcsIDk1MjAsIDg3MiwgMCwgODY4LCA4NzMsIDc2NDIsIDAsIDg2OSwgODc0LCAKLSAgICA3NjQ0LCAwLCA4NzUsIDc5MCwgMTI4MzAzLCAwLCAwLCAwLCA2NjE4MiwgMCwgNTQyOSwgMCwgNjYxODAsIDAsIDY2MTgxLCAKLSAgICA2ODQ1MiwgMCwgMCwgNDIwNjcsIDAsIDU0MzMsIDEwNjU3LCA3OTExLCAxOTQ2MjIsIDE1NDcsIDY2MTc2LCA0MjAxMiwgCi0gICAgMTIwNTc2LCA1NDI1LCA0OTc3LCA5OTk5LCA1MzE3LCA1NDIzLCA0NjExLCAwLCA2NzYzNywgMCwgOTY3OSwgNzQxMjIsIDAsIAotICAgIDAsIDAsIDY2MTk0LCA0NDE4LCA2NjE4NCwgNDYyOCwgNDI0NSwgMTE5NjQ4LCAwLCAwLCAxODUxLCAwLCAxMjcxODksIAotICAgIDExOTA4LCAwLCA5MzYwLCAxMTg4OTcsIDAsIDQyNzc2LCA2NjE4NywgMTI4MzcsIDg4MjksIDc3MTEsIDkyNzE0LCAwLCAKLSAgICA5MjMyMSwgNDMzMTgsIDAsIDg4MDksIDExOTk3NCwgMCwgMCwgMTIwNjA0LCAwLCAwLCAwLCAwLCAwLCAwLCA3NDI3LCAKLSAgICA5OTU4LCA0NTg4LCA0MzY4MCwgMCwgNzQ0ODQsIDAsIDI0MzMsIDAsIDExOTYyMiwgMzM1MiwgNzQzNjMsIDAsIDAsIDc5MywgCi0gICAgNzQ0MDQsIDAsIDMwNSwgNTY3LCA2NzY2MiwgODQyLCAxMjg1MTksIDgyMDgsIDAsIDQxNjk1LCAxNjQ3LCAxMTg4NzcsIDAsIAotICAgIDc4MzcsIDkxNzYyNSwgODE4LCA1MzM3LCA5MTc2MjIsIDkxNzYyMSwgNDEzNzYsIDExOTk3OCwgOTE3NjE4LCAxMjA1OTQsIAotICAgIDc0MDg2LCA5MTc2MTUsIDkxNzYxNCwgOTE3NjEzLCAxMDk3MywgNjYzNTksIDEzNzIsIDEyNzE3MiwgOTE3NjA4LCA0OTY5LCAKLSAgICAxMjU0LCA5MTc2MDUsIDkxNzYwNCwgOTE3NjAzLCA5MTc2MDIsIDY1MjI4LCA3ODIyMSwgMCwgMCwgMjg0MCwgMCwgCi0gICAgMTE5OTgyLCAwLCAwLCAzMjQ1LCA5MDY4LCA2ODE5NCwgNjQ3MjUsIDAsIDAsIDEyOTkxLCAwLCAyNjUxLCAxMjg1MjgsIDAsIAotICAgIDkxNzYxMSwgMTI3MDI2LCAxMjg4ODMsIDAsIDAsIDQzNjQ4LCAxMjA4MTIsIDAsIDQzMzIyLCA5MjY2MiwgMCwgMCwgCi0gICAgNjQzNzIsIDkyNjk4LCAzMjI2LCA2NTUsIDc1MiwgNzQ1NywgNzQ1NiwgNzQ1MiwgMzI4NSwgMTI4Nzc5LCAxMjc4MjEsIAotICAgIDExOTk4OCwgNjU2MTAsIDIzOTEsIDAsIDkyMjQ4LCA2NzEsIDI1MCwgNzQzNCwgNjE4LCA2NjgsIDYxMCwgNDI4MDAsIAotICAgIDc0MzEsIDExNTIsIDQyODAxLCA2NDAsIDEyMDY2NiwgNzQ0OCwgNzQzOSwgNjI4LCAzOTA1LCA3MzgxMCwgMCwgMTI4MjY2LCAKLSAgICA2NDc0OSwgNjc4NTAsIDIxMDcsIDAsIDAsIDQ2MDUsIDEyODE3NCwgMCwgNDMzNzIsIDY1OTQ1LCAxMjg4MzgsIDAsIAotICAgIDExOTU5MCwgMCwgMCwgMCwgOTg3LCA2OTI3LCAxMTU3MiwgNDIyNjEsIDExNDY0LCAzMzY1LCA5OTcxLCAwLCAwLCAKLSAgICAxMjgyOTcsIDAsIDAsIDAsIDAsIDExMzM0LCA0MzMyNiwgMTI2MDksIDExNTE5LCAxMTUwMywgNTUzMCwgNTIxMCwgMCwgCi0gICAgNDYyNywgMCwgNTIwOCwgMCwgMTI4ODQyLCAxMDMzMiwgNTIxOCwgNzk3NiwgOTE1NiwgMCwgMzI0NCwgNTUyOSwgNjk2NDcsIAotICAgIDczODk0LCAxMjg4NTIsIDU0MzIsIDY0OTY1LCA1NTI3LCA3NDAzMywgMTA1MTYsIDc3OTAsIDU1MjgsIDAsIDQyMTQwLCAKLSAgICAxMjAyODEsIDAsIDAsIDQzNTQ1LCA5ODg3LCAwLCA0MDAwLCA3NDI5LCA3NDI4LCA2NjUsIDc0MjQsIDMyMDYsIDEyMDI3OCwgCi0gICAgNzg4NCwgMCwgMTI4NTY2LCA5MTc5ODksIDEyODY2NiwgMjExLCAyNTA5LCAwLCAxMjA1NzMsIDY4NjcyLCAzMjIwLCAKLSAgICA0MjIzNSwgMCwgMTA2OTAsIDg5NTEsIDUyMTQsIDQyNDc0LCA4MTE4LCAwLCA3MDQ4LCA0NTkwLCAxMjcyNTgsIDU4NTIsIDAsIAotICAgIDAsIDEyNzI1OSwgMTcwOCwgMCwgMCwgMjYyMywgMTE5NDMsIDAsIDY5MjI2LCAwLCA0Njk4LCA2NjUwOSwgMTA2NiwgCi0gICAgMTE5OTIxLCA0NzAxLCAwLCAxMjAyODUsIDc0MjI1LCAxMTkxMTQsIDgyNjcsIDAsIDEyNzI2NSwgMCwgNzUxNiwgMCwgCi0gICAgMjYyNSwgMCwgODAzNCwgNzQzMDksIDAsIDM2MzEsIDEwOTU1LCA3ODUwLCAxMjAyOTMsIDg0MTYsIDAsIDAsIDAsIDQzMzg0LCAKLSAgICAxMjY2MCwgMCwgMCwgMCwgNzQ4NTAsIDQxMDY5LCAwLCAxMjgxNTYsIDEyMDk5LCA0MzEwLCAxMDAzMiwgNjI1MiwgNzEzLCAKLSAgICA3OTkwLCAwLCAzOTkwLCAwLCAwLCA2NjM2OCwgNTAxNywgNjQ5NTYsIDcwNzEsIDAsIDExOTE0NCwgMTAzMCwgMTE4ODAwLCAKLSAgICAwLCA5NTEzLCA0MTA1OSwgOTM1NywgMCwgMTc3MywgMCwgMTIwMzUwLCAwLCA2MzM5LCA3NzQ1LCA5ODQ0LCAwLCA2NDY1MCwgCi0gICAgOTQsIDE4ODAsIDc0NzY2LCAwLCA4OTA4LCAwLCAxMjg3MDcsIDY1OTEzLCA3ODQ3MCwgMTA3NTIsIDEzMDAzLCAwLCAwLCAKLSAgICA0MTMwNywgODczMiwgMTIwMzM4LCAwLCAxNzU3LCA2OTY0LCA0Njk2LCAwLCAwLCA2NDc4NSwgNzM5NCwgMzY0MSwgNTQxOSwgCi0gICAgMTI4MDU1LCAwLCAxMjc4ODMsIDAsIDEyMDM0NCwgNDM5ODgsIDAsIDg2MTAsIDQzMDYyLCA3NTkyLCA4NTYsIDc0Mjk5LCAKLSAgICA5MzYsIDEzMjg5LCAxMjc1MjEsIDQzMTcxLCAxNDU5LCAwLCA2NTI0MywgNzg2MzgsIDE5OTUzLCAwLCAxNTA0LCAxMTkxMDgsIAotICAgIDAsIDEyOTEzLCA3NDIwNiwgNzUyOSwgMCwgMCwgMCwgMTIwNzgyLCA0MTEzLCAwLCAyMzcyLCAzMzYsIDAsIDc1MDksIAotICAgIDEyMTUyLCAwLCA2ODIsIDY2NDU4LCA0MTUwNSwgMCwgNjQ3NDMsIDEwNTkzLCAxNzAzLCAwLCAwLCA4MDMzLCAwLCAwLCAKLSAgICA5ODEwLCAxMjcyNjksIDAsIDEyOTcwLCAwLCA0MjM1MSwgMTAxMDksIDAsIDAsIDE5NDY5MywgMCwgMTE5MjQ3LCAwLCAwLCAKLSAgICA3NDI5MSwgMTk2NSwgNzA2OSwgNDMzMTIsIDAsIDczODg3LCAwLCAyMDg3LCA2NDM3MCwgNjMxNCwgNDE3MTQsIDg1MDEsIDAsIAotICAgIDAsIDc0MjM5LCA0MTMxNywgOTI2MTQsIDIwOTEsIDc0NTQ1LCAyMDkwLCAwLCA5MzUzLCA3MTE3LCAyMDc3LCA3Nzg4NiwgMCwgCi0gICAgMTA0OTgsIDIwODMsIDc3ODg4LCAwLCAwLCAxMTkyMzYsIDYzNCwgMCwgMCwgMCwgNjk3NzksIDQxNjUsIDg3NDYsIDAsIAotICAgIDk2NTQsIDEyODU2LCA2OTI0LCAwLCA3MDY2LCAwLCAwLCAxMjgxMzUsIDQxMDM3LCA0MjY5MiwgNzc4NiwgMTI5NTksIAotICAgIDQxMDM5LCAwLCAwLCA2ODAsIDYyNzQsIDEyODIwMCwgMTE4MSwgNzA1NiwgMzE3NCwgMCwgMCwgOTI2NjgsIDY1NjY1LCAKLSAgICAxMjczNzUsIDAsIDY5MjAsIDAsIDkyMjk1LCAwLCAxMTg5NjUsIDAsIDY0NjQ0LCAxMjY5ODEsIDAsIDAsIDQxMDI4LCAwLCAKLSAgICA2MjMxLCAyNjEzLCA2NTMwMiwgNDA5ODksIDAsIDE5NDY5NiwgMCwgNDI3NjAsIDAsIDAsIDAsIDQwOTg3LCA0NjY3LCAwLCAKLSAgICAwLCA4ODI4LCAwLCAwLCAxMjQ2LCA0NzQ2LCAwLCAwLCAxMTAyMSwgNDc0OSwgOTI2NzUsIDAsIDkyMSwgNDc0NCwgMCwgCi0gICAgMTI3MDIsIDI0MiwgMCwgMTU2NiwgODIxNywgMCwgNjQ2NTMsIDc4Mzg2LCAxMjgxMjEsIDc0MDM2LCA3NDUwNSwgNDMyNzQsIAotICAgIDUzMTMsIDk1MSwgMCwgMCwgMCwgNzYwNCwgMCwgNDAwOSwgMTI3ODE2LCAwLCAxMjA1NjIsIDAsIDAsIDY0ODYwLCAKLSAgICAxMTkxMzgsIDExOTA2OSwgMCwgMTI3MzcwLCA0MDQ4LCAwLCAwLCAxMjA1OTYsIDE2NDYsIDc3ODkwLCA2NDUzNCwgNzM5OTUsIAotICAgIDEyMDcwNSwgMCwgMTE5ODkwLCAyNTc5LCAxMTk5MDUsIDMxNzcsIDExMzU3LCA5MDk5LCA0MTA3LCAzNDQxLCAxMTk4OTQsIAotICAgIDI5NzUsIDc0NDQyLCA5ODIyLCAwLCA1NTIyMCwgMTAwODQsIDczOTQzLCAxMTg4NDAsIDAsIDkxNzU2MiwgMCwgMzM5OSwgCi0gICAgOTg1MSwgMCwgMTE5MDksIDkwNTksIDAsIDc2ODcsIDAsIDY3ODksIDAsIDAsIDAsIDAsIDAsIDAsIDE3NzcsIDkxNTEsIAotICAgIDExMzcsIDY5NzY3LCA3NDksIDQyMzY2LCAwLCA1Mzg1LCAxMjg1NzQsIDEyODIxOCwgMCwgMCwgNTk4OSwgMCwgMCwgCi0gICAgMTI4MDkxLCAwLCA0MTY4NSwgNjkyMjMsIDAsIDk3NjksIDQxNjg0LCAwLCA1MTksIDAsIDExNzQwLCA1NzY2LCAwLCAwLCAKLSAgICAyNjAwLCA4ODQ4LCAxMjAxMzgsIDQxMjk3LCAwLCAzNjY2LCA3NDQ3MywgNDEzMDAsIDc0NDY4LCA2NTE2MCwgMCwgNjk2ODgsIAotICAgIDY5NzcxLCA3NDQ3OSwgMCwgNjU1OCwgMCwgMCwgNjk3NjUsIDEyMDc1MCwgMjUyLCAwLCA0MTMwMiwgMCwgMCwgMCwgCi0gICAgNjk3NjMsIDAsIDExNzI5LCA4NzE5LCA5MDYwLCAwLCAxMjAxMzksIDEwNzYxLCAwLCAwLCAwLCAxMTg3OTIsIDExNzM0LCAwLCAKLSAgICAxMTczMCwgMCwgOTU5MywgNTc1NywgMjQwMywgNjQ4MDgsIDU1Mjc1LCAwLCAxMTcyOCwgNDM1NzIsIDAsIDAsIDc3NjQsIDAsIAotICAgIDExMDk0LCAxMjA4MjUsIDAsIDAsIDQyODIsIDgyOTgsIDAsIDAsIDAsIDAsIDAsIDY0NDQ5LCAwLCAxMjc1MDksIDYzODU0LCAKLSAgICA4NDU2LCAwLCA3NDc4MywgNjU2NzAsIDAsIDc4MjUwLCAwLCA3Nzc0LCAxMDYwNywgOTc5MiwgMCwgMCwgMCwgMCwgCi0gICAgMTIwNzY0LCAwLCAxMDAxOSwgNzQ3NjIsIDAsIDM0NTgsIDQzNjUsIDAsIDAsIDM2NDcsIDAsIDI2MDIsIDEyODM0MSwgMCwgCi0gICAgMTk0NzA3LCA0MTEzNSwgMCwgMCwgMCwgNjQ2MzEsIDE3MiwgNDk3MSwgNDEyMTksIDQxMTM3LCAxODg5LCA3MjM4LCA2NTQ1LCAKLSAgICAwLCA5MjE5MywgNzU5NywgMTA1MjgsIDAsIDAsIDM3MzIsIDczOTEwLCAxOTQ1ODgsIDUzNDQsIDAsIDQzMzY2LCA0MzM2MywgCi0gICAgOTA2MiwgMTE5MjUyLCAwLCAwLCAwLCA2NDQ3OSwgOTIzMiwgOTI1OTYsIDAsIDAsIDE5NDcxMiwgMTA5MDAsIDQxNTMxLCAKLSAgICAxMjYzLCAzNzIwLCAxMjA0OCwgMCwgNjQyOTIsIDQxNTI0LCA3MjI3LCAxMTk2MzUsIDYwOTksIDQxNTM0LCAwLCAxMjczNTQsIAotICAgIDEyNzM0NSwgMjk5LCAwLCA4NTI1LCAxMjczNDcsIDM1MjQsIDkxNzU2NSwgODgzMSwgMTI3MzQ5LCA5MjU2NCwgMzA3NSwgCi0gICAgNjc4NjcsIDEyNzM1MiwgMCwgNjYzNjIsIDAsIDY0MzUzLCAwLCAwLCA1ODQ1LCAwLCAwLCAwLCAyNTgxLCA4MjAwLCAKLSAgICA2NTExNCwgNjg0NjAsIDAsIDQzMjgzLCA1NTUxLCAwLCAxMjA3MzUsIDAsIDYzNDAsIDExODg1NSwgMCwgNzgxMzQsIDg2ODAsIAotICAgIDcyMDQsIDAsIDI1ODgsIDI5MTQsIDcwMTEsIDU1MjgxLCAwLCAyNDcxLCAxOTQ2MzEsIDI4ODMsIDI3NDksIDExOTU2MywgCisgICAgNzQyNzAsIDEyODI4OSwgMCwgMCwgMCwgMTQ5NiwgNzQ3LCAwLCA5NDIsIDIzNzgsIDQzMTM2LCAxMjc5MDUsIDg0NjYsIAorICAgIDk4MzU3NSwgOTMyMCwgODAwMSwgMTIzMiwgODEzOSwgMTE2MTcsIDAsIDAsIDExNDA5LCA2ODM3MywgNjM4MiwgMCwgCisgICAgNjQ2MzQsIDEyODI3OSwgMCwgMTE2MTIsIDAsIDY3NjAwLCAyMzc0LCA5NDA2NiwgODQ3NSwgMTE2MDksIDY2MzEzLCAwLCAwLCAKKyAgICA1Mjg2LCAxMTkyOTcsIDAsIDAsIDY0OTI1LCAxMjAyODMsIDE5NDU4NCwgMTE4OTgyLCAxOTQ1ODMsIDc3MDUsIDExOTQyLCAKKyAgICAxMTMwNSwgMTk0NTgxLCAzMzA5LCAwLCAwLCAwLCAwLCA2ODAyLCAwLCA0MTY1MywgMTI4MCwgMTI0MSwgNzE2OCwgMTIwOTYsIAorICAgIDAsIDY2NjE1LCA0MjU2NSwgNDE2NTEsIDAsIDAsIDAsIDQxNjUwLCA2NjUwNywgNjY0NzAsIDAsIDEyOTE0LCA0MTQ5MSwgCisgICAgNjYwMTAsIDExOTU1MiwgNjA3OCwgOTk1NCwgMCwgMTQ3NSwgMTE5MjQ3LCA5OTM4LCA2MDg0LCA5MTc1NDYsIDQxMDY0LCAKKyAgICA0MTA2MiwgMCwgMCwgMzI1NiwgMTAxODksIDQyMDc2LCA0MzI1MiwgNzg4MjMsIDkxNzkwNiwgODcyNywgMCwgNjU4NzUsIDAsIAorICAgIDAsIDEyNzc2MiwgMTA1NjIsIDc0MjE1LCA0MzA2NSwgMCwgMCwgMzI0OCwgNzQyOTcsIDMyNjEsIDkwMTUsIDcxMzUxLCAwLCAKKyAgICAzNjM1LCA2NDMzNywgOTgzMjczLCAwLCAwLCA3MTk1LCAwLCAyMDA3LCA2NDQzMSwgMCwgMCwgMCwgMCwgNjM1LCAwLCAwLCAKKyAgICA2NTYxMywgNzc5MDksIDkyNDIwLCA3Mzk5NywgMCwgMCwgMTE5MjE4LCA3OTg0LCA4NjAwLCA3NDQzNCwgMTI3NzcwLCAKKyAgICA0MTc2LCA3MDA1MCwgMjAzNCwgOTI1NTEsIDEyMDgwNSwgNjU4OTEsIDEyNzAzOCwgMCwgMzE4LCAyMDM4LCAxMjg4NjAsIAorICAgIDc4NTk2LCAwLCAzNjQ5LCAxMzE0OSwgNDIxNDUsIDQyNzk4LCAzNjM0LCAxMjAyOTEsIDExODkyNywgNjc2NzcsIDEyMDEyNCwgCisgICAgNzg2NiwgMCwgMTE0MDIsIDQyMTQ2LCA5NDAzMiwgNzQyMzgsIDQyNjY0LCAyODQ5LCAxMjcwMzQsIDAsIDc5MzgsIDEyOTYwLCAKKyAgICAxNzYxLCAxMTgxMiwgNjUzNzksIDY4Mzg2LCAxMjgxODUsIDExNTksIDAsIDY5NzI5LCAwLCAwLCA3MTc4LCAxOTQ2MzIsIDAsIAorICAgIDQxNjgwLCAwLCAxMjgyMDMsIDExNTM0LCAxNTE0LCAxMTY2OCwgNjc4OTEsIDkzMTMsIDcwMTUsIDAsIDY3ODc3LCAKKyAgICAxOTQ1NjcsIDEyOTg5LCA2NjQ3NCwgOTM2OCwgMTI4NDgsIDE2MjQsIDQzMjcwLCAwLCA3NDI3OCwgMTA4MTgsIDEyNjY0NCwgCisgICAgOTk1MywgMCwgNzg0MjEsIDExOTQsIDMyNDIsIDk3NjEsIDk1NTUsIDg1OTgsIDEyMDI5OSwgNjE2OSwgMTI4NzEsIDE1NTEsIAorICAgIDI3OTgsIDY1MTc2LCA0OTU4LCA0Mjc1MiwgMTE5MDI1LCAwLCA2Nzg3NSwgMTIwMzAxLCAzNDk1LCA2NjY0OCwgMTk0NzY4LCAKKyAgICAwLCA2ODM2NCwgOTgzMjIyLCA0ODkxLCAwLCAxMDY0MSwgMCwgNzM3NDYsIDAsIDY4MzUyLCAwLCA3Mzc4NywgMTk0ODI5LCAKKyAgICAxOTQ2MzMsIDcxOTksIDY0OTU1LCAwLCAwLCAwLCAwLCAwLCA0MjY4NSwgNDI2NzksIDE5MywgMCwgMCwgMCwgNDI2NjcsIDAsIAorICAgIDUyNzEsIDkyMzE4LCA5MjUxNywgMTE4ODgyLCAxMzYyLCAxMzI5NywgMCwgMTI4MDk0LCAwLCA5ODMzMjMsIDczNzg5LCAwLCAKKyAgICA2NjU4LCA0NDI2LCAwLCA5MjYyOCwgOTgzODMzLCA5MjMxOSwgNzI3NiwgNDIxNjMsIDUyMjAsIDAsIDAsIDk4MzMyMiwgCisgICAgMjQxNiwgMzMxMCwgNDI3MDMsIDAsIDM3OSwgMCwgNDM3NTUsIDAsIDAsIDMyMjMsIDY1NDkyLCAxMjg0LCAxOTQ3NzEsIAorICAgIDQ1NDksIDAsIDAsIDk4MzE1NCwgMTI3NzYzLCAxMDgwNywgOTU1OCwgMTk0NjEzLCAwLCA4NTE1LCA4Njg4LCAxMjg2NiwgCisgICAgNjUzMDgsIDMyOTQsIDk4MzMyNCwgODUyOSwgMTI4MTAxLCA0MzM4NSwgNzU2NCwgMCwgNDMzMjksIDAsIDkyNDU4LCAKKyAgICA3Mzc1NywgNjY0NTYsIDQyMzU5LCAwLCAyMDMxLCAwLCA3MjAyLCAwLCAxMjY3NiwgNDI3MjksIDkyMTk4LCAzMjE1LCAwLCAKKyAgICA3NzEwLCAxNjEwLCA3MzgwMSwgMCwgMCwgNjU2ODIsIDAsIDEyMDUzNywgNjU5MjQsIDk5NzQsIDIyOCwgNjYzNTQsIDE1MDEsIAorICAgIDAsIDY0Mzk1LCA1MTc5LCA3MjAwLCA2MjI1LCAwLCA2NTc5NCwgMTcyNSwgNjU1MzMsIDgxOTYsIDc0NzYsIDc0Mzk5LCAwLCAKKyAgICAwLCA3MTUyLCA4NTAyLCA1NzYyLCAxOTY3LCA3NDgzLCAwLCAwLCA4MTA0LCAwLCA3NDc0LCA3Nzk3OSwgMCwgMTI2NTA3LCAKKyAgICAxMDQxNCwgMTMwMDEsIDgxNDEsIDAsIDQyNTM3LCAxNTU3LCA0MzU5NCwgMTI4NjQyLCA2MzMwLCA2ODA1LCA4NjMxLCAKKyAgICAyNTQ1LCA3MDA1MiwgMTI3MTY2LCAwLCA3NDE5MCwgMCwgMCwgOTgzNzc3LCA0Mjc2MiwgMCwgNDI5MTQsIDE2NTAsIDI2MiwgCisgICAgMTYzNywgMCwgNzkwMSwgMzIzOCwgMTI4MTczLCA0MTg2MSwgMCwgMTI4NTg1LCA2NTE1OCwgMTA4NjAsIDk0MDU5LCAKKyAgICA0MzY1OCwgNzUyNywgMCwgNDMzMTksIDY0MTksIDAsIDQ1LCAwLCA2NDU4OCwgOTM5ODksIDAsIDExOTgxMCwgNzE5NCwgCisgICAgNTI5MSwgMCwgNDM2NjYsIDEzMTI5LCAwLCA5MDg0LCAwLCA4NzM3LCAwLCAxMjg4MSwgMCwgMTI5MDYsIDk2MzksIDc5MTIsIAorICAgIDI2MjAsIDAsIDAsIDAsIDk4Mzg2NiwgMTc5LCA2NTg5NiwgMCwgNjQ3NTYsIDI4NTMsIDc4NDQzLCAxMTg4MTMsIDk4Mzg4MSwgCisgICAgMTE4OTk2LCAxMTkwMDksIDI4NTAsIDgwODQsIDk4MzA4NSwgNzM4NTAsIDI4MDEsIDkyMjg0LCA0MjA2OSwgMTE5ODM5LCAKKyAgICA3NDc1NCwgMTE5ODQxLCA0MjA3MiwgMTE5ODQzLCAxMTk4NDIsIDEwMzk4LCA5ODMwNTYsIDAsIDgzNzcsIDEyNzExNiwgCisgICAgODI0NSwgNjg0MDEsIDMxNTgsIDkyMzk2LCAzOTgzLCA0MzY1NiwgOTIzLCAxMTk4NTcsIDExOTg1NiwgMjkyLCAxMzAwMiwgCisgICAgMTE5ODQ1LCAxMTk4NDQsIDMyMjEsIDE3NjMsIDkyNDYzLCA0NjEyLCAxMTk4NTEsIDExOTg1MCwgNzI1MywgMTI3MTEwLCAKKyAgICA2ODM5MSwgMCwgMTA3ODIsIDM2MzcsIDEyOTk2LCA0MzU0MiwgMCwgNjQ1NzgsIDk4MzY2NiwgMzIyOCwgNjk2MzYsIDg3ODMsIAorICAgIDAsIDExOTYxNCwgMjczMSwgMCwgMCwgNzg1ODUsIDQxMDIsIDc2OTYsIDczODc4LCAwLCAwLCA3ODU4NiwgNDMzMTYsIAorICAgIDQxNzcsIDExMjgzLCA5MDg5LCAwLCA3Mzk5NiwgOTgzMTczLCA2NDUwMCwgNDM2NzQsIDAsIDY0OTQ3LCAxODU2LCAwLCAwLCAKKyAgICA2Mzc5LCAwLCAwLCAwLCAzMjA4LCAxMjk3NSwgNzQ3NzUsIDEyNzM4MCwgOTgzOTIyLCA5MjM4OSwgNzQwNzIsIDU1MjY5LCAKKyAgICAwLCAwLCA5ODM2NzQsIDIwMzMsIDc4NTc3LCA3ODU3NiwgMTk1MDI2LCA1NTI1NCwgNzc0MCwgMCwgMCwgMCwgNzM5NjQsIDAsIAorICAgIDkzOTg4LCA2NzYxMiwgNjU2NzQsIDEyODI0NCwgOTQxMTAsIDQxNjg5LCAwLCA3NDAwNiwgNjQ5MDksIDY2NDYsIDExNzkwLCAKKyAgICA3NDAxOSwgMCwgMTI4MDY2LCAxMjgwMzEsIDg1NjEsIDQ1NzMsIDAsIDUzMjYsIDAsIDEyMDYwNSwgNzIzMCwgODI1NywgMCwgCisgICAgODc3OCwgNDE2ODgsIDAsIDY1Nzc2LCAyMDcxLCA4MzE0LCA2NDU5LCAwLCA3NjI4LCA2NTA5MiwgNzM5MDMsIDY2NzIxLCAKKyAgICAxMTM0MiwgMTI4NTYxLCAwLCAwLCAxMjgyMjYsIDEyNzAwMSwgMCwgMTE4MTAsIDEzMTY0LCAxMDcyMywgOTY3LCA5ODM5NDIsIAorICAgIDEyNjQ2OSwgMTE5NDYsIDAsIDMyNTcsIDAsIDEyMzA3LCAxODQ1LCA5ODMxNTcsIDQzNTI2LCAwLCAwLCAxODg2LCA0MjM0MiwgCisgICAgMTAwODksIDg3MCwgNzY0OCwgMzQ5OSwgODYwOSwgNzY1MiwgODc2LCA4NzEsIDg3NywgMCwgODc4LCA0MjAxNSwgODc5LCAKKyAgICA0MzY5MiwgNDU2MywgMCwgMCwgNzU5MSwgNjU4ODcsIDg2NywgOTUyMCwgODcyLCAxMjY2MDcsIDg2OCwgODczLCA3NjQyLCAKKyAgICAwLCA4NjksIDg3NCwgNzY0NCwgMTIwNjc0LCA4NzUsIDc5MCwgMTI4MzAzLCAwLCAwLCAwLCA2NjE4MiwgOTgzMjUwLCAKKyAgICA1NDI5LCAxOTUwNTUsIDY2MTgwLCAxMjY0ODAsIDY2MTgxLCA2ODQ1MiwgOTgzMjgxLCA5ODMyNDIsIDQyMDY3LCAwLCAKKyAgICA1NDMzLCAxMDY1NywgNzkxMSwgMTk0NjIyLCAxNTQ3LCA2NjE3NiwgNDIwMTIsIDEyMDU3NiwgNTQyNSwgNDk3NywgOTk5OSwgCisgICAgNTMxNywgNTQyMywgNDYxMSwgMCwgNjc2MzcsIDAsIDk2NzksIDc0MTIyLCAwLCAwLCAwLCA2NjE5NCwgNDQxOCwgNjYxODQsIAorICAgIDQ2MjgsIDQyNDUsIDExOTY0OCwgMCwgMCwgMTg1MSwgMCwgMTI3MTg5LCAxMTkwOCwgMCwgOTM2MCwgMTE4ODk3LCAKKyAgICA5ODMyNzAsIDQyNzc2LCA2NjE4NywgMTI4MzcsIDg4MjksIDc3MTEsIDkyNzE0LCAwLCA5MjMyMSwgNDMzMTgsIDAsIDg4MDksIAorICAgIDY5ODgxLCAwLCA5ODMxNDIsIDEyMDYwNCwgOTgzMDUyLCA5ODM4NzMsIDAsIDk4MzI2MiwgMCwgMCwgNzQyNywgOTk1OCwgCisgICAgNDU4OCwgNDM2ODAsIDAsIDc0NDg0LCAxOTQ5NjgsIDI0MzMsIDAsIDExOTYyMiwgMzM1MiwgNzQzNjMsIDk4Mzg3NiwgMCwgCisgICAgNzkzLCA3NDQwNCwgMCwgMzA1LCA1NjcsIDY3NjYyLCA4NDIsIDEyODUxOSwgODIwOCwgMCwgNDE2OTUsIDE2NDcsIAorICAgIDExODg3NywgMCwgNzgzNywgOTE3NjI1LCA4MTgsIDUzMzcsIDE5NDYyOCwgOTE3NjIxLCA0MTM3NiwgMTE5OTc4LCAKKyAgICAxMjY1NzYsIDEyMDU5NCwgNzQwODYsIDkxNzYxNSwgOTE3NjE0LCA5MTc2MTMsIDEwOTczLCA2NjM1OSwgMTM3MiwgCisgICAgMTI3MTcyLCA5MTc2MDgsIDQ5NjksIDEyNTQsIDkxNzYwNSwgOTE3NjA0LCA5Mzk2NywgOTE3NjAyLCA2NTIyOCwgNzgyMjEsIAorICAgIDEyNjYxMiwgMCwgMjg0MCwgMCwgMTE5OTgyLCA5ODM5MzAsIDAsIDMyNDUsIDkwNjgsIDY4MTk0LCA2NDcyNSwgMCwgMCwgCisgICAgMTI5OTEsIDAsIDI2NTEsIDY4MDE2LCA5ODMyNTcsIDkxNzYxMSwgMTI3MDI2LCAxMjg4ODMsIDAsIDAsIDQzNjQ4LCAKKyAgICAxMjA4MTIsIDAsIDQzMzIyLCA5MjY2MiwgMCwgMCwgNjQzNzIsIDkyNjk4LCAzMjI2LCA2NTUsIDc1MiwgNzQ1NywgNzQ1NiwgCisgICAgNzQ1MiwgMzI4NSwgMTI4Nzc5LCAxMjc4MjEsIDExOTk4OCwgNjU2MTAsIDIzOTEsIDAsIDkyMjQ4LCA2NzEsIDI1MCwgCisgICAgNzQzNCwgNjE4LCA2NjgsIDYxMCwgNDI4MDAsIDc0MzEsIDExNTIsIDQyODAxLCA2NDAsIDEyMDY2NiwgNzQ0OCwgNzQzOSwgCisgICAgNjI4LCAzOTA1LCA3MzgxMCwgMCwgMTI4MjY2LCA2NDc0OSwgNjc4NTAsIDIxMDcsIDAsIDAsIDQ2MDUsIDEyODE3NCwgCisgICAgOTgzMTkyLCA0MzM3MiwgNjU5NDUsIDEyODgzOCwgMCwgMTE5NTkwLCAwLCAwLCAwLCA5ODcsIDY5MjcsIDExNTcyLCAKKyAgICA0MjI2MSwgMTE0NjQsIDMzNjUsIDk5NzEsIDAsIDAsIDEyODI5NywgMCwgMCwgMCwgMCwgMTEzMzQsIDQzMzI2LCAxMjYwOSwgCisgICAgMTE1MTksIDExNTAzLCA1NTMwLCA1MjEwLCAwLCA0NjI3LCA5ODM4ODMsIDUyMDgsIDAsIDEyODg0MiwgMTAzMzIsIDUyMTgsIAorICAgIDc5NzYsIDkxNTYsIDAsIDMyNDQsIDU1MjksIDY5NjQ3LCA3Mzg5NCwgMTI4ODUyLCA1NDMyLCA2NDk2NSwgNTUyNywgCisgICAgNzQwMzMsIDEwNTE2LCA3NzkwLCA1NTI4LCAwLCA0MjE0MCwgMTIwMjgxLCAwLCAwLCA0MzU0NSwgOTg4NywgMCwgNDAwMCwgCisgICAgNzQyOSwgNzQyOCwgNjY1LCA3NDI0LCAzMjA2LCAxMjAyNzgsIDc4ODQsIDAsIDEyODU2NiwgOTE3OTg5LCAxMjg2NjYsIAorICAgIDIxMSwgMjUwOSwgMTI4ODU4LCAxMjA1NzMsIDY4NjcyLCAzMjIwLCA0MjIzNSwgMCwgMTA2OTAsIDg5NTEsIDUyMTQsIAorICAgIDQyNDc0LCA4MTE4LCAwLCA3MDQ4LCA0NTkwLCAxMjcyNTgsIDU4NTIsIDAsIDAsIDEyNzI1OSwgMTcwOCwgMCwgOTgzMTY1LCAKKyAgICAyNjIzLCAxMTk0MywgMCwgNjkyMjYsIDAsIDQ2OTgsIDY2NTA5LCAxMDY2LCAxMTk5MjEsIDQ3MDEsIDk4Mzg2NywgCisgICAgMTIwMjg1LCA3NDIyNSwgOTQxMTEsIDgyNjcsIDAsIDEyNzI2NSwgMCwgNzUxNiwgMCwgMjYyNSwgOTgzOTY4LCA4MDM0LCAKKyAgICA3NDMwOSwgMCwgMzYzMSwgMTA5NTUsIDc4NTAsIDEyMDI5MywgODQxNiwgMCwgMCwgMCwgNDMzODQsIDEyNjYwLCAwLCAwLCAKKyAgICAwLCA3NDg1MCwgNDEwNjksIDAsIDEyODE1NiwgMTIwOTksIDQzMTAsIDEwMDMyLCA2MjUyLCA3MTMsIDc5OTAsIDAsIDM5OTAsIAorICAgIDAsIDk4MzI1NCwgNjYzNjgsIDUwMTcsIDY0OTU2LCA3MDcxLCAwLCAxMTkxNDQsIDEwMzAsIDExODgwMCwgOTgzMTIwLCAKKyAgICA5NTEzLCA0MTA1OSwgOTM1NywgMCwgMTc3MywgMCwgMTIwMzUwLCAwLCA2MzM5LCA3NzQ1LCA5ODQ0LCAwLCA2NDY1MCwgOTQsIAorICAgIDE4ODAsIDc0NzY2LCA5ODM4MjksIDg5MDgsIDAsIDEyODcwNywgNjU5MTMsIDc4NDcwLCAxMDc1MiwgMTMwMDMsIDAsIAorICAgIDEyNjU3MiwgNDEzMDcsIDg3MzIsIDEyMDMzOCwgMCwgMTc1NywgNjk2NCwgNDY5NiwgMCwgMTIwMzM1LCA2NDc4NSwgNzM5NCwgCisgICAgMzY0MSwgNTQxOSwgMTI4MDU1LCAwLCAxMjc4ODMsIDAsIDEyMDM0NCwgNDM5ODgsIDAsIDg2MTAsIDQzMDYyLCA3NTkyLCAKKyAgICA4NTYsIDc0Mjk5LCA5MzYsIDEzMjg5LCA2OTg5NCwgNDMxNzEsIDE0NTksIDAsIDY1MjQzLCA3ODYzOCwgMTk5NTMsIDAsIAorICAgIDE1MDQsIDcwMDY0LCAwLCAxMjkxMywgNzQyMDYsIDc1MjksIDAsIDEyODY5OSwgOTgzOTQ4LCAxMjA3ODIsIDQxMTMsIDAsIAorICAgIDIzNzIsIDMzNiwgMCwgNzUwOSwgMTIxNTIsIDAsIDY4MiwgNjY0NTgsIDQxNTA1LCAwLCA2NDc0MywgMTA1OTMsIDE3MDMsIAorICAgIDAsIDk4Mzk0NiwgODAzMywgNjk5NTMsIDAsIDk4MTAsIDEyNzI2OSwgMCwgMTI5NzAsIDAsIDQyMzUxLCAxMDEwOSwgCisgICAgOTE3NjIzLCAwLCAxOTQ2OTMsIDAsIDkyNjkwLCAwLCAwLCA3NDI5MSwgMTk2NSwgNzA2OSwgNDMzMTIsIDAsIDczODg3LCAwLCAKKyAgICAyMDg3LCA2NDM3MCwgNjMxNCwgNDE3MTQsIDg1MDEsIDAsIDAsIDc0MjM5LCA0MTMxNywgOTI2MTQsIDIwOTEsIDc0NTQ1LCAKKyAgICAyMDkwLCAwLCA5MzUzLCA3MTE3LCAyMDc3LCA3Nzg4NiwgMCwgMTA0OTgsIDIwODMsIDc3ODg4LCAwLCAwLCAxMTkyMzYsIAorICAgIDYzNCwgMCwgMCwgMCwgNjk3NzksIDQxNjUsIDg3NDYsIDAsIDk2NTQsIDEyODU2LCA2OTI0LCAwLCA3MDY2LCA5ODM3MTAsIAorICAgIDAsIDEyODEzNSwgNDEwMzcsIDQyNjkyLCA3Nzg2LCAxMjk1OSwgNDEwMzksIDEyNzQ4MywgMCwgNjgwLCAyMzAyLCAKKyAgICAxMjgyMDAsIDExODEsIDcwNTYsIDMxNzQsIDEyNjUxNiwgMCwgOTI2NjgsIDY1NjY1LCAxMjczNzUsIDEyNjUwNiwgNjkyMCwgCisgICAgMCwgOTIyOTUsIDAsIDExODk2NSwgMCwgNjQ2NDQsIDEyNjk4MSwgNzQxMTksIDAsIDQxMDI4LCAwLCA2MjMxLCAyNjEzLCAKKyAgICA2NTMwMiwgNDA5ODksIDAsIDE5NDY5NiwgMCwgNDI3NjAsIDAsIDk4MzU2NiwgMCwgNDA5ODcsIDQ2NjcsIDAsIDk4MzkyMywgCisgICAgODgyOCwgMCwgMCwgMTI0NiwgNDc0NiwgMCwgMCwgMTEwMjEsIDQ3NDksIDkyNjc1LCAwLCA5MjEsIDQ3NDQsIDAsIDEyNzAyLCAKKyAgICAyNDIsIDAsIDE1NjYsIDgyMTcsIDAsIDY0NjUzLCA3ODM4NiwgMTI4MTIxLCA3NDAzNiwgNzQ1MDUsIDQzMjc0LCA1MzEzLCAKKyAgICA5NTEsIDAsIDAsIDk4Mzg1OCwgNzYwNCwgOTgzMjgyLCA0MDA5LCAxMjc4MTYsIDk4MzcwMSwgMTIwNTYyLCAwLCA5ODM3MTEsIAorICAgIDY0ODYwLCAxMTkxMzgsIDExOTA2OSwgMCwgMTI3MzcwLCA0MDQ4LCA5ODM1OTgsIDAsIDcwMDI0LCAxNjQ2LCA3Nzg5MCwgCisgICAgNjQ1MzQsIDczOTk1LCAxMjA3MDUsIDAsIDExOTg5MCwgMjU3OSwgMTE5OTA1LCAzMTc3LCAxMTM1NywgOTA5OSwgNDEwNywgCisgICAgMzQ0MSwgMTE5ODk0LCAyOTc1LCA3NDQ0MiwgOTgyMiwgOTgzOTI2LCA1NTIyMCwgMTAwODQsIDczOTQzLCAxMTg4NDAsIDAsIAorICAgIDkxNzU2MiwgMTk0NjEwLCAzMzk5LCA5ODUxLCA5ODM3MDgsIDExOTA5LCA5MDU5LCAwLCA3Njg3LCAwLCA2Nzg5LCAwLCAwLCAKKyAgICAwLCA3MTM2NywgMCwgMCwgMTc3NywgOTE1MSwgMTEzNywgNjk3NjcsIDc0OSwgNDIzNjYsIDAsIDUzODUsIDEyODU3NCwgCisgICAgMTI4MjE4LCAwLCAwLCA1OTg5LCAwLCAwLCAxMjgwOTEsIDAsIDQxNjg1LCA2OTIyMywgMCwgOTc2OSwgNDE2ODQsIAorICAgIDk4MzIxNCwgNTE5LCAwLCAxMTc0MCwgNTc2NiwgMCwgMCwgMjYwMCwgODg0OCwgMTIwMTM4LCA0MTI5NywgMCwgMzY2NiwgCisgICAgNzQ0NzMsIDQxMzAwLCA3NDQ2OCwgNjUxNjAsIDAsIDY5Njg4LCA2OTc3MSwgNzQ0NzksIDAsIDY1NTgsIDAsIDAsIDY5NzY1LCAKKyAgICAxMjA3NTAsIDI1MiwgMCwgNDEzMDIsIDAsIDAsIDAsIDY5NzYzLCAwLCAxMTcyOSwgODcxOSwgOTA2MCwgMCwgMTIwMTM5LCAKKyAgICAxMDc2MSwgMCwgMCwgMCwgMTE4NzkyLCAxMTczNCwgOTgzMjIxLCAxMTczMCwgMCwgOTU5MywgNTc1NywgMjQwMywgNjQ4MDgsIAorICAgIDU1Mjc1LCAwLCAxMTcyOCwgNDM1NzIsIDAsIDAsIDc3NjQsIDk4MzcwNSwgMTEwOTQsIDEyMDgyNSwgMCwgMCwgNDI4MiwgCisgICAgODI5OCwgMCwgMCwgMCwgMCwgMCwgNjQ0NDksIDAsIDEyNjY1MCwgNjM4NTQsIDg0NTYsIDAsIDc0NzgzLCA2NTY3MCwgMCwgCisgICAgNzgyNTAsIDAsIDc3NzQsIDEwNjA3LCA5NzkyLCAwLCAwLCAwLCAwLCAxMjA3NjQsIDAsIDEwMDE5LCA3NDc2MiwgMCwgCisgICAgMzQ1OCwgNDM2NSwgNzAwNTMsIDk4MzcwMywgMzY0NywgMCwgMjYwMiwgMTI4MzQxLCAwLCAxOTQ3MDcsIDQxMTM1LCAwLCAwLCAKKyAgICAwLCA2NDYzMSwgMTcyLCA0OTcxLCA0MTIxOSwgNDExMzcsIDE4ODksIDcyMzgsIDY1NDUsIDEyNjQ3NiwgOTIxOTMsIDc1OTcsIAorICAgIDEwNTI4LCAwLCAwLCAzNzMyLCA3MzkxMCwgMTk0NTg4LCA1MzQ0LCAwLCA0MzM2NiwgNDMzNjMsIDkwNjIsIDExOTI1MiwgMCwgCisgICAgMCwgMCwgNjQ0NzksIDkyMzIsIDkyNTk2LCAwLCAwLCAxOTQ3MTIsIDEwOTAwLCA0MTUzMSwgMTI2MywgMzcyMCwgMTIwNDgsIAorICAgIDAsIDY0MjkyLCA0MTUyNCwgNzIyNywgMTE5NjM1LCA2MDk5LCA0MTUzNCwgMCwgMTI3MzU0LCAxMjczNDUsIDI5OSwgCisgICAgOTE3OTU3LCA4NTI1LCAxMjczNDcsIDM1MjQsIDkxNzU2NSwgODgzMSwgMTI3MzQ5LCA5MjU2NCwgMzA3NSwgNjc4NjcsIAorICAgIDEyNzM1MiwgMCwgNjYzNjIsIDAsIDY0MzUzLCAwLCAwLCA1ODQ1LCAwLCAwLCAwLCAyNTgxLCA4MjAwLCA2NTExNCwgCisgICAgNjg0NjAsIDAsIDQzMjgzLCA1NTUxLCAwLCAxMjA3MzUsIDAsIDYzNDAsIDExODg1NSwgMCwgNzgxMzQsIDg2ODAsIDcyMDQsIAorICAgIDcwMDY1LCAyNTg4LCAyOTE0LCA3MDExLCA1NTI4MSwgMCwgMjQ3MSwgMTk0NjMxLCAyODgzLCAyNzQ5LCAxMTk1NjMsIAogICAgIDczNzc0LCAxMDkxMywgMCwgMCwgODY2NiwgNjc1LCA0MjQ5MywgMCwgNDM1NzEsIDAsIDYyMTksIDAsIDk5ODAsIDQxMjMyLCAKLSAgICAxMDkyOCwgMCwgNDExNTMsIDQxMjI5LCAxMTg5NjcsIDAsIDM3MzgsIDEyNzM2OSwgMCwgMTI3MTEsIDMxODEsIDY2MjEyLCAKLSAgICA3NDI4OSwgNjg0NzIsIDQyODU3LCA4MjYyLCAwLCAwLCAwLCAwLCA0MjM0NywgMTIwOTIsIDk2MTUsIDcyMzQsIDc0MDQ3LCAKLSAgICAwLCAwLCA2NDY3NCwgMCwgMCwgNzM4NDYsIDI5MzQsIDEyNzIyLCAxMjA3NjIsIDkyMiwgNDM5ODMsIDc0NTA3LCAwLCAKLSAgICA3NDQ2MSwgMzIxOCwgMTIwNDcxLCA3NDI5MCwgMTIwNDY5LCA2NDU2MiwgMTIwNDc1LCA4NTY5LCAxMTQwNCwgMTE5MzIsIAotICAgIDczNzI4LCAzMjE0LCAxMjA0NjEsIDEyMDQ2OCwgMTIxMjgsIDMyMDcsIDY1NDg2LCA3ODcyOSwgMTkwMSwgNzg3MjcsIAotICAgIDEyNzMyNiwgMTIwNDYwLCA3NDI1LCAzMjA1LCAwLCA3ODczNywgNzg3MzYsIDc4NzM1LCA0MzM4MywgNzg3MzMsIDY1NDU5LCAKLSAgICAyNjA2LCA3ODczMCwgNzM4OTcsIDAsIDExNDk2LCAxMTczLCAwLCA0MTI3MiwgMTE5NjYxLCAwLCAwLCAwLCAxMjA3MzcsIDAsIAotICAgIDAsIDAsIDM3OCwgMjYxMCwgMCwgNjUwNzksIDAsIDY1Njk1LCAwLCAzNywgNzA2OCwgMCwgMTIwNDgwLCAxMjA0NzksIAotICAgIDMyMDksIDEyMDQ3NywgMCwgMTA2MzgsIDk3NjgsIDEyMDQ4MSwgMCwgMCwgMCwgMCwgMCwgMCwgNjU1MTAsIDAsIDAsIAotICAgIDUyMzMsIDAsIDY0NzkyLCAwLCAwLCAwLCAwLCA3MDYwLCA5ODQ3LCAxMjAxNDQsIDE2ODUsIDU5NSwgMCwgNzM5NzEsIAotICAgIDEyOTIsIDg5NDAsIDczODAsIDExMDg4LCAwLCAxMDAwNCwgMTI2OTk3LCAwLCA2NTQxLCAwLCAwLCAwLCAzMjQzLCA5MDE0LCAKLSAgICA1NjA2LCAwLCA1MzgsIDY0NjIwLCA1NjAyLCA4NDY3LCA3NDM5MSwgNjU0NywgMCwgODIwMywgNzg0ODgsIDAsIDg0NTgsIAotICAgIDY1MjExLCA4NDk1LCAxMTk5MDQsIDAsIDkxNzU1MiwgNzc5LCA3ODMxNCwgNjQzNjcsIDI0NjUsIDAsIDgxOTMsIDU1Mjc5LCAKLSAgICA5NzMwLCA5MjgwLCAwLCA3MDY1LCA3NDE1NSwgNDM0NiwgMCwgNzM3OTgsIDUwNCwgMCwgOTI0MTQsIDg5ODIsIDAsIDAsIDAsIAotICAgIDc4MiwgMCwgMTA4ODMsIDAsIDE5NDg1MiwgNzMyLCAzNzM3LCAxMjcyNTMsIDE1NDgsIDY4NjUwLCAwLCAxODMyLCA1NjA0LCAKLSAgICA1NzM1LCA0MTE0MSwgMTE5MDIwLCA0Mzc2LCAwLCAxMTc4NywgMzc0NSwgMCwgMCwgNDI4ODgsIDY1NzEyLCAwLCAzODY5LCAKLSAgICAxMTkzNywgNTcyNSwgMTI3NTM5LCAxNzgzLCA2ODY0OCwgNTcyOCwgMCwgMCwgMCwgMTE5MTgsIDY2NTY3LCA1NzI0LCAwLCAKLSAgICA1NzI3LCA3ODUyMSwgMCwgMCwgNzY0LCAwLCAxMjgxMTYsIDQzNTMxLCAwLCA5MDMzLCAwLCA0MjUzMiwgNjIyMywgMTEwNDIsIAotICAgIDEyMDc0OSwgMTE0MjMsIDAsIDExOTg2MSwgMCwgNDM0NjUsIDAsIDEyODI2NywgNjU1OSwgNjQ1NTcsIDAsIDAsIDEyMDY0OCwgCi0gICAgNDMwMTksIDQzNDc3LCAxMDIzOCwgMCwgMCwgNDMzNzcsIDkyMjgyLCAwLCAxNDc4LCA5NzgzLCAxMTgyNSwgMjYwNywgCi0gICAgNjQ3NDAsIDAsIDc3MzksIDc0NTQzLCAwLCAwLCAwLCA2MTMyLCAwLCA2Mzc2NSwgMCwgMCwgNDExNDQsIDAsIDkyNDM4LCAKLSAgICA0MzUzNywgNjc2MSwgMTAwOTMsIDQzNjksIDkxNzc5MSwgMCwgMCwgODgyMCwgMzk0NywgMCwgMCwgMTE1MTUsIDUyNiwgMCwgCi0gICAgNDEyOTUsIDE5NDYwMywgOTE3Nzg1LCAxOTQ5MzIsIDAsIDc2ODgsIDkxNzc4NiwgNzY4NiwgODI4OCwgMTE4MTUsIDAsIDAsIAotICAgIDAsIDE1NDMsIDM3MTMsIDQxMjIxLCAxMjQyMywgNDIyODEsIDkxNzc4OCwgNzQwMjQsIDEyMjkzLCAwLCA2NDM1NywgCi0gICAgMTE3OTQsIDQyMDgyLCAwLCAxNzM3LCA4OTg3LCA0MjA4MSwgMCwgNzIwNSwgMCwgOTMzNSwgMTI4NTAsIDExOTg3MCwgCi0gICAgNjU1MywgNzA1NSwgMCwgODI3NywgMCwgMCwgNTQ3NSwgNzQ3OTUsIDY3ODAsIDAsIDAsIDEyOTkwLCAxMTYwLCA0MjA4NCwgCi0gICAgMTE5NjUwLCA0MTIxNywgMTE5NjYwLCAxMDAxOCwgMzYwLCAwLCAwLCA2ODE3NiwgNTg2MywgMzEzNywgMCwgNDE0NywgMCwgCi0gICAgNDEyMTYsIDc4NDQsIDI2MTYsIDExOTE5MCwgNjg0NjEsIDY1MjM0LCAwLCAxMzA3NiwgMzEzNSwgMCwgNzgxNDMsIAotICAgIDExOTEzOSwgMzE0MiwgOTI0NTEsIDAsIDEwODE5LCAxMTk1ODAsIDEwMTgzLCAwLCAyNjA4LCAxNDcwLCA3Mzk2NywgMCwgCi0gICAgNjIyNywgMCwgMCwgNjk3NDEsIDAsIDYxNjMsIDAsIDAsIDEyNzMxNCwgMCwgMCwgODYwMywgMCwgMTE5ODY2LCAzMzA2LCAKLSAgICAxMDg3NiwgNDMzOTIsIDExOTU3MywgMTI3OTMxLCA1NzUxLCAwLCA2MjIyLCAwLCAwLCAxMjA4NiwgNzQwMywgMTYwMCwgCi0gICAgNjQzMDksIDY0OTM5LCAwLCA2NDc4MywgOTI2NTgsIDExMzEwLCAwLCA4ODgyLCAwLCAwLCAyNTcwLCA3MDIxLCAwLCAwLCAKLSAgICA0MzExMCwgMCwgMTIzNCwgNjU0MCwgNjk3NCwgMCwgMCwgMCwgNTAwMiwgMCwgNDEyODYsIDAsIDEyNzAxOSwgMCwgNDM1ODUsIAotICAgIDAsIDY1NTEsIDAsIDEyODIyOSwgMCwgNDEyODksIDAsIDE5NDYwMiwgMCwgODk3NywgNjAyLCAxMjA4MTQsIDAsIDEyODc3OCwgCi0gICAgMTI4NjYxLCAwLCAwLCA0MTI3OSwgMCwgMCwgMCwgMTEwODEsIDQzNjE1LCAwLCAwLCAwLCAwLCAxMjcyNywgMCwgMCwgCi0gICAgNzgzOTcsIDk0NzUsIDcxMTIsIDY1MTA1LCAwLCA5NjMzLCAxMDg4NiwgNDM1OTIsIDc4MzEsIDAsIDE5NDU3MSwgMCwgCi0gICAgNzM5MTUsIDgwNzYsIDQzMDQ4LCA4MjkwLCA4MjkxLCA0MzA1MSwgOTI1NzAsIDAsIDI1OTYsIDQzNTg0LCAwLCAxMzExMywgCi0gICAgMCwgMTI3NzU3LCAyMzkzLCA3MDU4LCA5MDg3LCA3NDA2NywgNjg2NzMsIDQxNTc0LCA3ODMzNywgMCwgNzQwNTgsIDYzNzYsIAotICAgIDAsIDAsIDAsIDAsIDk4NTQsIDEyNzc0OCwgNjQ2OTYsIDAsIDEyODIyMCwgMCwgNjk5NCwgMCwgMTcyMCwgMCwgMCwgMCwgCi0gICAgNjUyOSwgNzA2MywgMCwgMzc1MSwgOTEyMCwgMCwgMCwgMTc5OCwgNzA5LCAwLCAxMzU0LCAxODc2LCAxMzE1MiwgNjU1NywgCi0gICAgMTI0MzAsIDgxMzcsIDAsIDkyNjQyLCAwLCAwLCAyNDUsIDEyODA5NywgMTE0NTYsIDQxMjMzLCA3MDcwLCAwLCAwLCA2MTM2LCAKLSAgICA5MTc2MDksIDY1Njc3LCA4NjgyLCA0MTIzNSwgOTI1OTUsIDQyMDQ1LCA5ODA0LCAwLCA0MzIsIDM1OTUsIDAsIDY1NDM3LCAKLSAgICAwLCA3NDQ1NSwgNDIzOTksIDAsIDAsIDEyODI3NCwgMCwgMTE5NjU4LCAwLCAwLCAwLCA3Nzg5NCwgODc5NywgMCwgOTA1MiwgCi0gICAgNjQ4ODgsIDcxNjcsIDIzNTYsIDk1LCA3NDc4NCwgMTA1ODAsIDAsIDQyMjg2LCAwLCA2NDY0MCwgMCwgMTE5MTA0LCAwLCAKLSAgICA3NDEzNywgMCwgMTAwNjMsIDEyNjUyLCAxMjE5OSwgOTI0ODAsIDAsIDI1NjYsIDExOTcxLCAwLCAwLCAxMDY1LCAwLCAwLCAKLSAgICA0MzQwMCwgMjU3NiwgNjY2OTYsIDAsIDAsIDQzNjA0LCAwLCAwLCA3NDA4MiwgNTE0LCA3NDUwMiwgMCwgMjkyMSwgNDMyMTUsIAotICAgIDY0NDkzLCA1NzcyLCAxMjk2OCwgMCwgMTk0OTQ0LCA3NDU4MCwgNDMzOTgsIDI1ODAsIDAsIDQxMzQxLCA0MTIyMywgNjU2NCwgCi0gICAgMTQ2MywgNDEzNDIsIDAsIDUyOTMsIDAsIDAsIDM3MzMsIDExMzQ2LCAwLCAxMjA1NCwgMCwgNzQwOTgsIDQyODI3LCAwLCAKLSAgICAxMzA5MSwgMCwgMCwgMCwgOTE3OTE1LCAwLCAxMjcwMjUsIDAsIDc0ODIxLCAwLCAwLCAxMTkwNDIsIDAsIDEyNzg2NSwgCi0gICAgMTMwOTAsIDY2NjQzLCAwLCAxMjcwLCAxMTMyLCA0MjM2MCwgMCwgNzQwOTYsIDY2NjU1LCA0MjU2OSwgMTI3ODI0LCAwLCAKLSAgICA2NDc2MSwgMCwgNDEwMjEsIDg1MTAsIDQyNDMyLCAwLCAwLCAwLCAwLCA2NDQ5NiwgNzQxMDksIDAsIDk5MTUsIDAsIDAsIAotICAgIDcwNjEsIDQxMzM2LCAzODU0LCA2OTcwMCwgMTMxNDEsIDY4NDEzLCA0MzQwMSwgNDIzMTksIDEzMDgyLCAwLCA3MDY3LCAKLSAgICA2ODIyMSwgMCwgMCwgMTI3MTcxLCAwLCAwLCAxMjc3OTcsIDkwMjksIDQzNTQzLCAxMTkzMTUsIDIzNTMsIDYzMDgsIDAsIAotICAgIDc0NzkyLCAyNjExLCAxMTkxODYsIDAsIDAsIDAsIDQzNjY0LCA5MjM5OSwgNjY2MjcsIDAsIDQ0ODQsIDg1MDksIDExODk3NiwgCi0gICAgNzgxMTYsIDY1MjMzLCAwLCA0MTIyNCwgNDEwMTcsIDAsIDM3NDcsIDEwNTIyLCAwLCAwLCAxNjkxLCA0MTIyNiwgMCwgCi0gICAgMTIxMDcsIDQ0MDAyLCAxMDkwNSwgNjUwMTAsIDE5NDk4NiwgNjk3LCA2NjAxOCwgOTI4NCwgNDI0NCwgMCwgMCwgOTI2NDQsIAotICAgIDEzMTIxLCAxMjAwMzYsIDAsIDEyMDEwLCAxMjg1NzMsIDEyODIyMSwgMCwgMCwgMCwgMTI3MTkzLCA2NTgxNiwgNjgxMTEsIAotICAgIDAsIDEyNzkzMywgNjU2NjgsIDkyMjU3LCA2NjE4LCAxMTg3ODQsIDY2MzY1LCAwLCA0MjIzNCwgMTI2NDgsIDEyODAzOSwgCi0gICAgNzEyMywgMCwgNTc4NSwgOTE5OCwgOTc2NCwgNDEzMTYsIDY1ODc3LCA3MzgzLCAxMzIzMCwgNDEyOTksIDAsIDAsIDY4MzY1LCAKLSAgICAxMjgyNTgsIDAsIDAsIDAsIDEzMTIyLCAwLCAxOTEsIDc0MTE5LCA4NTg1LCA4MDAwLCA2NDQxMSwgMTIwNjUyLCA0Mjg4OSwgCisgICAgMTA5MjgsIDAsIDQxMTUzLCA0MTIyOSwgMTE4OTY3LCAwLCAzNzM4LCA5NDAxNiwgMCwgMTI3MTEsIDMxODEsIDY2MjEyLCAKKyAgICA3NDI4OSwgNjg0NzIsIDQyODU3LCA4MjYyLCA5ODMzNzEsIDAsIDk4MzIyMCwgMCwgNDIzNDcsIDEyMDkyLCA5NjE1LCAKKyAgICA3MjM0LCA3NDA0NywgOTgzMDg4LCAwLCA0Mzc0NCwgMCwgMCwgNzM4NDYsIDI5MzQsIDEyNzIyLCAxMjA3NjIsIDkyMiwgCisgICAgNDM5ODMsIDc0NTA3LCA5ODMxMjYsIDc0NDYxLCAzMjE4LCAxMjA0NzEsIDc0MjkwLCAxMjA0NjksIDY0NTYyLCAxMjA0NzUsIAorICAgIDg1NjksIDExNDA0LCAxMTkzMiwgNzM3MjgsIDMyMTQsIDEyMDQ2MSwgMTIwNDY4LCAxMjEyOCwgMzIwNywgNjU0ODYsIAorICAgIDc4NzI5LCAxOTAxLCA3ODcyNywgMTI3MzI2LCAxMjA0NjAsIDc0MjUsIDMyMDUsIDY4MDAzLCA3ODczNywgNzg3MzYsIAorICAgIDc4NzM1LCA0MzM4MywgNjk5NDAsIDY1NDU5LCAyNjA2LCA3ODczMCwgNzM4OTcsIDAsIDExNDk2LCAxMTczLCAwLCA0MTI3MiwgCisgICAgMTE5NjYxLCAwLCAwLCA5ODMzMTMsIDEyMDczNywgMCwgOTgzOTYyLCA5ODMzMTIsIDM3OCwgMjYxMCwgMCwgNjUwNzksIAorICAgIDk4MzMxNywgNjU2OTUsIDEyNjU1OSwgMzcsIDcwNjgsIDAsIDEyMDQ4MCwgMTIwNDc5LCAzMjA5LCAxMjA0NzcsIDAsIAorICAgIDEwNjM4LCA5NzY4LCA2OTk1MiwgMTE5OTA5LCA5ODMzOTEsIDAsIDAsIDAsIDAsIDY1NTEwLCAwLCAwLCA1MjMzLCAKKyAgICA5ODMzMjcsIDY0NzkyLCA5ODMzMjYsIDAsIDEyNjYzMywgMCwgNzA2MCwgOTg0NywgMTIwMTQ0LCAxNjg1LCA1OTUsIDAsIAorICAgIDczOTcxLCAxMjkyLCA4OTQwLCA3MzgwLCAxMTA4OCwgMCwgMTAwMDQsIDEyNjk5NywgMCwgNjU0MSwgMCwgMCwgMCwgMzI0MywgCisgICAgOTAxNCwgNTYwNiwgMCwgNTM4LCA2NDYyMCwgNTYwMiwgODQ2NywgNzQzOTEsIDY1NDcsIDEyODEzMiwgODIwMywgNzg0ODgsIAorICAgIDk4MzA5MCwgODQ1OCwgNjUyMTEsIDg0OTUsIDExOTkwNCwgMCwgOTE3NTUyLCA3NzksIDc4MzE0LCA2NDM2NywgMjQ2NSwgCisgICAgNjk5MDEsIDgxOTMsIDU1Mjc5LCA5NzMwLCA5MjgwLCAwLCA3MDY1LCA3NDE1NSwgNDM0NiwgMCwgNzM3OTgsIDUwNCwgMCwgCisgICAgOTI0MTQsIDg5ODIsIDAsIDAsIDAsIDc4MiwgMCwgMTA4ODMsIDAsIDE5NDg1MiwgNzMyLCAzNzM3LCAxMjcyNTMsIDE1NDgsIAorICAgIDY4NjUwLCA5MjUwNywgMTgzMiwgNTYwNCwgNTczNSwgNDExNDEsIDExOTAyMCwgNDM3NiwgMCwgMTE3ODcsIDM3NDUsIDAsIAorICAgIDAsIDQyODg4LCA2NTcxMiwgOTgzMjk2LCAzODY5LCAxMTkzNywgNTcyNSwgMTI3NTM5LCAxNzgzLCA2ODY0OCwgNTcyOCwgMCwgCisgICAgMCwgMCwgMTE5MTgsIDY2NTY3LCA1NzI0LCAwLCA1NzI3LCA3ODUyMSwgMCwgMCwgNzY0LCAwLCAxMjgxMTYsIDQzNTMxLCAwLCAKKyAgICA5MDMzLCAwLCA0MjUzMiwgNjIyMywgMTEwNDIsIDEyMDc0OSwgMTE0MjMsIDAsIDExOTg2MSwgNzEzNDQsIDQzNDY1LCAwLCAKKyAgICAxMjgyNjcsIDY1NTksIDY0NTU3LCA3MTM0OCwgOTI2NDksIDEyMDY0OCwgNDMwMTksIDQzNDc3LCAxMDIzOCwgNzQ0OTEsIDAsIAorICAgIDQzMzc3LCA5MjI4MiwgNzEzNDYsIDE0NzgsIDk3ODMsIDExODI1LCAyNjA3LCA2NDc0MCwgMCwgNzczOSwgNzQ1NDMsIDAsIAorICAgIDAsIDAsIDYxMzIsIDAsIDYzNzY1LCAwLCA3MDA1OCwgNDExNDQsIDAsIDkyNDM4LCA0MzUzNywgNjc2MSwgMTAwOTMsIAorICAgIDQzNjksIDkxNzc5MSwgMCwgOTgzMTQ4LCA4ODIwLCAzOTQ3LCAwLCAwLCAxMTUxNSwgNTI2LCAxMjgxMDMsIDQxMjk1LCAKKyAgICAxOTQ2MDMsIDkxNzc4NSwgMTk0OTMyLCAwLCA3Njg4LCA5MTc3ODYsIDc2ODYsIDgyODgsIDExODE1LCAwLCAwLCA5ODMzNzQsIAorICAgIDE1NDMsIDM3MTMsIDQxMjIxLCAxMjQyMywgNDIyODEsIDkxNzc4OCwgNzQwMjQsIDEyMjkzLCAwLCA2NDM1NywgMTE3OTQsIAorICAgIDQyMDgyLCAwLCAxNzM3LCA4OTg3LCA0MjA4MSwgMCwgNzIwNSwgMCwgOTMzNSwgMTI4NTAsIDExOTg3MCwgNjU1MywgNzA1NSwgCisgICAgMCwgODI3NywgMCwgMCwgNTQ3NSwgNzQ3OTUsIDY3ODAsIDAsIDAsIDEyOTkwLCAxMTYwLCA0MjA4NCwgMTE5NjUwLCAKKyAgICA0MTIxNywgMTE5NjYwLCAxMDAxOCwgMzYwLCAwLCAwLCA2ODE3NiwgNTg2MywgMzEzNywgMCwgNDE0NywgOTgzMTcwLCAKKyAgICA0MTIxNiwgNzg0NCwgMjYxNiwgMTE5MTkwLCA2ODQ2MSwgNjUyMzQsIDk4MzI4NiwgMTMwNzYsIDMxMzUsIDk4MzI3OSwgCisgICAgNzgxNDMsIDExOTEzOSwgMzE0MiwgOTI0NTEsIDk0MDY4LCAxMDgxOSwgMTE5NTgwLCAxMDE4MywgMCwgMjYwOCwgMTQ3MCwgCisgICAgNzM5NjcsIDk0MDA4LCA2MjI3LCAwLCAxMjcxNzMsIDY5NzQxLCA5ODM1ODIsIDYxNjMsIDk4MzU1OCwgMCwgMTI3MzE0LCAwLCAKKyAgICAwLCA4NjAzLCAwLCAxMTk4NjYsIDMzMDYsIDEwODc2LCA0MzM5MiwgMTE5NTczLCAxMjc5MzEsIDU3NTEsIDAsIDYyMjIsIDAsIAorICAgIDAsIDEyMDg2LCA3NDAzLCAxNjAwLCA2NDMwOSwgNjQ5MzksIDAsIDY0NzgzLCA5MjY1OCwgMTEzMTAsIDAsIDg4ODIsIDAsIAorICAgIDAsIDI1NzAsIDcwMjEsIDAsIDAsIDQzMTEwLCAwLCAxMjM0LCA2NTQwLCA2OTc0LCAwLCAwLCA5ODMyMDksIDUwMDIsIDAsIAorICAgIDQxMjg2LCA2OTk0NiwgMTI3MDE5LCAwLCA0MzU4NSwgMCwgNjU1MSwgOTgzOTUzLCAxMjgyMjksIDAsIDQxMjg5LCAwLCAKKyAgICAxOTQ2MDIsIDAsIDg5NzcsIDYwMiwgMTIwODE0LCAwLCAxMjg3NzgsIDEyODY2MSwgMCwgOTgzMzY3LCA0MTI3OSwgMCwgMCwgCisgICAgMCwgMTEwODEsIDQzNjE1LCAwLCAwLCAwLCA5ODM2MTIsIDEyNzI3LCAwLCAwLCA3ODM5NywgOTQ3NSwgNzExMiwgNjUxMDUsIAorICAgIDAsIDk2MzMsIDEwODg2LCA0MzU5MiwgNzgzMSwgOTgzODIwLCAxOTQ1NzEsIDAsIDczOTE1LCA4MDc2LCA0MzA0OCwgODI5MCwgCisgICAgODI5MSwgNDMwNTEsIDkyNTcwLCAwLCAyNTk2LCA0MzU4NCwgMCwgMTMxMTMsIDAsIDEyNzc1NywgMjM5MywgNzA1OCwgCisgICAgOTA4NywgNzQwNjcsIDY4NjczLCA0MTU3NCwgNzgzMzcsIDAsIDc0MDU4LCA2Mzc2LCAwLCAwLCAwLCAwLCA5ODU0LCAKKyAgICAxMjc3NDgsIDY0Njk2LCAwLCAxMjgyMjAsIDAsIDY5OTQsIDAsIDE3MjAsIDAsIDAsIDAsIDY1MjksIDcwNjMsIDk4MzE4MiwgCisgICAgMzc1MSwgOTEyMCwgOTgzNDc3LCAwLCAxNzk4LCA3MDksIDAsIDEzNTQsIDE4NzYsIDEzMTUyLCA2NTU3LCAxMjQzMCwgCisgICAgODEzNywgOTQwOTgsIDkyNjQyLCAwLCAwLCAyNDUsIDEyODA5NywgMTE0NTYsIDQxMjMzLCA3MDcwLCAwLCA5NDA0NiwgCisgICAgNjEzNiwgOTE3NjA5LCA2NTY3NywgODY4MiwgNDEyMzUsIDkyNTk1LCA0MjA0NSwgOTgwNCwgMTE4OTYzLCA0MzIsIDM1OTUsIAorICAgIDE5NDk0NSwgNjU0MzcsIDAsIDc0NDU1LCA0MjM5OSwgMCwgMCwgMTI4Mjc0LCAwLCAxMTk2NTgsIDAsIDAsIDAsIDc3ODk0LCAKKyAgICA4Nzk3LCAwLCA5MDUyLCA2NDg4OCwgNzE2NywgMjM1NiwgOTUsIDc0Nzg0LCAxMDU4MCwgMCwgNDIyODYsIDAsIDY0NjQwLCAKKyAgICAwLCA5NDEwOSwgMCwgNzQxMzcsIDcwMDM1LCAxMDA2MywgMTI2NTIsIDEyMTk5LCA5MjQ4MCwgMCwgMjU2NiwgMTE5NzEsIAorICAgIDk4MzcyOCwgMCwgMTA2NSwgMCwgMCwgNDM0MDAsIDI1NzYsIDY2Njk2LCA5Mzk5OSwgMCwgNDM2MDQsIDAsIDAsIDc0MDgyLCAKKyAgICA1MTQsIDc0NTAyLCA3MDAzMiwgMjkyMSwgNDMyMTUsIDY0NDkzLCA1NzcyLCAxMjk2OCwgNzAwNTUsIDE5NDk0NCwgNzQ1ODAsIAorICAgIDQzMzk4LCAyNTgwLCA5ODM4MDEsIDQxMzQxLCA0MTIyMywgNjU2NCwgMTQ2MywgNDEzNDIsIDAsIDUyOTMsIDcwMDIwLCAwLCAKKyAgICAzNzMzLCAxMTM0NiwgMCwgMTIwNTQsIDAsIDc0MDk4LCA0MjgyNywgMCwgMTMwOTEsIDAsIDAsIDAsIDkxNzkxNSwgMCwgCisgICAgMTI3MDI1LCAwLCA3NDgyMSwgMCwgOTgzNzI0LCAxMTkwNDIsIDAsIDEyNzg2NSwgMTMwOTAsIDY2NjQzLCAwLCAxMjcwLCAKKyAgICAxMTMyLCA0MjM2MCwgMCwgNzQwOTYsIDY2NjU1LCA0MjU2OSwgMTI3ODI0LCAwLCA2NDc2MSwgMCwgNDEwMjEsIDg1MTAsIAorICAgIDQyNDMyLCAwLCAwLCAxOTQ3ODIsIDAsIDY0NDk2LCA3NDEwOSwgNzAwMzAsIDk5MTUsIDAsIDk4MzIxNiwgNzA2MSwgCisgICAgNDEzMzYsIDM4NTQsIDY5NzAwLCAxMzE0MSwgNjg0MTMsIDQzNDAxLCA0MjMxOSwgMTMwODIsIDAsIDcwNjcsIDY4MjIxLCAwLCAKKyAgICAxMjczODMsIDEyNzE3MSwgMCwgMCwgMTI3Nzk3LCA5MDI5LCA0MzU0MywgMTE5MzE1LCAyMzUzLCA2MzA4LCAwLCA3NDc5MiwgCisgICAgMjYxMSwgMTE5MTg2LCAwLCAwLCAwLCA0MzY2NCwgOTIzOTksIDY2NjI3LCAwLCA0NDg0LCA4NTA5LCAxMTg5NzYsIDExMDY2LCAKKyAgICA2NTIzMywgMCwgNDEyMjQsIDQxMDE3LCAwLCAzNzQ3LCAxMDUyMiwgMCwgMCwgMTY5MSwgNDEyMjYsIDAsIDEyMTA3LCAKKyAgICA3MTAwLCAxMDkwNSwgNjUwMTAsIDE5NDk4NiwgNjk3LCA2NjAxOCwgOTI4NCwgNDI0NCwgMCwgMCwgOTI2NDQsIDEzMTIxLCAKKyAgICAxMjAwMzYsIDAsIDEyMDEwLCAxMjg1NzMsIDEyODIyMSwgMCwgMCwgMCwgMTI3MTkzLCA2NTgxNiwgNjgxMTEsIDAsIAorICAgIDEyNzkzMywgNjU2NjgsIDkyMjU3LCA2NjE4LCAxMTg3ODQsIDY2MzY1LCAwLCA0MjIzNCwgMTI2NDgsIDc4MTEwLCA3MTIzLCAKKyAgICA3MDAzOCwgNTc4NSwgOTE5OCwgOTc2NCwgNDEzMTYsIDY1ODc3LCA3MzgzLCAxMzIzMCwgNDEyOTksIDAsIDAsIDY4MzY1LCAKKyAgICAxMjgyNTgsIDAsIDAsIDAsIDEzMTIyLCAwLCAxOTEsIDcwMDYwLCA4NTg1LCA4MDAwLCA2NDQxMSwgMTIwNjUyLCA0Mjg4OSwgCiAgICAgNjQ4NTAsIDQxMDcyLCA0MTU3OCwgMCwgNDE1NzcsIDAsIDEwMDAyLCAwLCA2NTMzLCA3MzgwMiwgNDE1NzAsIDAsIDY4MywgCiAgICAgMzk2LCA0MTU4MCwgNjgxNDYsIDAsIDEyOTAxLCA0MzA1OCwgMCwgMzQzLCA3MTI5LCA0MjY4MCwgNDEzNjAsIDc4MTU0LCAwLCAKLSAgICA0NzQzLCAwLCAwLCA3NDA0MCwgNzQxMDgsIDg3NDMsIDE3MjQsIDE0MzMsIDExOTMyMiwgMCwgMzczOSwgNjI2MywgOTI1MTQsIAotICAgIDAsIDM5NjQsIDY1OTIsIDAsIDEyODY5MywgNjYwNDAsIDAsIDQyNTY4LCA2OTgwNiwgMCwgMTc3OCwgMzk1NiwgMCwgCi0gICAgNDIwNzAsIDY1NjMsIDQzMDc1LCA5MDE4LCAwLCAwLCAxMjA2NywgNDEzMTIsIDAsIDU1NDcsIDc0NTMxLCAxMjc5NjksIDAsIAotICAgIDgxNzUsIDAsIDI4NCwgODEwOCwgOTM0LCAwLCA3NDAwMSwgMTczLCA2NjQ2MCwgNzE3NCwgOTI3MDMsIDExODgyMiwgMTc1MCwgCi0gICAgMCwgNDM5NCwgNjgzNjgsIDE4MDcsIDAsIDkyMjk4LCAwLCA1ODg5LCAwLCA3MTgwLCAwLCAxMTkxNDUsIDAsIDkxNzU1OCwgCi0gICAgNDI0NzEsIDY5ODIsIDE3MjEsIDQ0MDIyLCA3ODkxLCA0MjI0MywgNDIxNjAsIDI1ODMsIDQ1MTIsIDExOTM2MCwgNjUyMzAsIAotICAgIDEyODEwOSwgMCwgMCwgMzg1NSwgMCwgMCwgMCwgMCwgNzQyOTUsIDAsIDAsIDkyNDE2LCAzOTc1LCAwLCA3NDA4NywgMCwgCi0gICAgMTI2NzIsIDM3OTgsIDI3MDMsIDAsIDAsIDIxMDksIDk3NzQsIDEyNzUsIDAsIDAsIDQxMDk1LCAzOTYyLCAwLCAyOTMyLCAKLSAgICA0MTEwMSwgMzk1NCwgNjQ1NywgNDUxMywgMCwgMCwgNzM5OTQsIDczOTkyLCAxNDY4LCAwLCAwLCA0MTg1MSwgMTI4MjMwLCAKLSAgICA0MTg0NiwgMCwgNTUyMzgsIDc2MzMsIDQxODQ5LCA2ODM4NSwgNDMyMCwgMzIyNCwgMCwgMTI4MDMyLCAwLCA0MjUzMSwgMCwgCi0gICAgMTUxMCwgMCwgODI1NiwgMCwgMTEzOTMsIDAsIDg4NzksIDEyODA3NSwgOTI0NzQsIDg3NzAsIDAsIDAsIDc4Mzc3LCAxOTEwLCAKLSAgICA4NjcxLCA3ODM3NCwgNDI4MywgMCwgMTI3MTE3LCA2ODM2MSwgNzgzMTgsIDI2NTQsIDc4OTMsIDE5NTAwNywgMCwgMCwgMCwgCi0gICAgNjUxMDYsIDQyNzYxLCAxMjg1NywgNDU4MSwgODQxMSwgNzgzNzIsIDc4MzcxLCA3ODM3MCwgNzgzNjksIDc4MzY4LCAwLCAwLCAKLSAgICAwLCAxNzMzLCA0MzkyLCAyNTY4LCAxMDc4NiwgNjk2NjEsIDAsIDgxODQsIDQxNDg2LCAwLCA3Mzk2LCA3MTE2LCAwLCAKLSAgICA2OTc4OCwgMCwgNzE4NSwgNzk2NSwgMCwgMCwgOTIzNDcsIDAsIDQxMzUwLCA5MTI5LCAwLCAwLCAwLCAwLCA5MjQ4OSwgMCwgCi0gICAgMTA0ODEsIDAsIDEyNzQ4NiwgNzE3MSwgMCwgMzQwLCA5MjQ5OCwgMCwgMCwgMCwgOTIyMDAsIDAsIDAsIDY3NjQsIAotICAgIDEyNzQ4NywgMCwgMCwgMCwgMCwgNjUyMDMsIDExMzkyLCAxMTkwOTgsIDExOTM1OSwgMCwgMzIxMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTI3OTcwLCA5MTc2MTksIDAsIDAsIDEwMDQzLCAwLCAxMTg2LCA0MTU3MSwgNjk5OSwgNjE3LCA5NDY0LCAxMjgyNDQsIAotICAgIDM2NzUsIDUyMDcsIDY1MDYyLCA1MjEzLCAxOTQ3NjksIDI2MTcsIDQxMzQ4LCA0MTU2OCwgMTI4ODAzLCAzMjUzLCAKLSAgICAxMjA1MzUsIDAsIDg2MzAsIDEyODU0NCwgMCwgNTU5NiwgNTU0NSwgNzI4OCwgMjU4NiwgNjQ4ODcsIDAsIDUyMTcsIDAsIDAsIAotICAgIDAsIDAsIDY0MjkzLCA2ODA5OCwgMjYzNSwgMCwgMCwgMCwgMCwgMCwgNzgzNSwgMCwgMCwgMTk0OTg4LCA5MjI4NSwgCi0gICAgNjQ1NTgsIDEyNzEyMiwgMCwgMTI3MTIxLCAwLCAxMjc5MTMsIDAsIDU3ODQsIDAsIDAsIDAsIDAsIDQwMTEsIDkxNzYxNiwgCi0gICAgNjgxMDEsIDAsIDc4NjQsIDQyNTQsIDY1MDk1LCAwLCA1NjAwLCAzOTAzLCAxMjcwODMsIDEwNDQ3LCA1NTk4LCAxMjA3LCAKLSAgICAxMjA1MjEsIDY2Njg5LCAzNTAxLCA0MjU4MiwgNDM2MDAsIDE5NDc4MCwgMCwgMTEyNCwgNTU5NywgMTk0Nzc4LCAxOTQ3NzIsIAotICAgIDkzMjEsIDAsIDAsIDAsIDAsIDE3MTksIDY4MzU2LCA2ODM1NCwgOTY3MSwgMTEyNSwgNDM5OSwgMTI3NDc5LCA5MTc2MTAsIAotICAgIDAsIDc2MzEsIDU0ODgsIDcxMjgsIDEyMDUzMiwgMCwgNTQ5MSwgMCwgODkzNywgNDMwNDQsIDI2MDQsIDc0MTg3LCA1NDkwLCAKLSAgICA0MzA0NiwgNTQ4OSwgNzIxMiwgMTE3NjgsIDQzMDQzLCA2MzAwLCAwLCA3MTIyLCAwLCA0MzkwLCA0NTQsIDQxMzk3LCAwLCAKLSAgICA5ODc1LCA3NTkzLCAxOTQ3OTIsIDkyMjc0LCAxMTg5MTMsIDcyMDcsIDAsIDY1OTAxLCAyMzk0LCAyNTc1LCAwLCAzNzQ2LCAKLSAgICAxMTAxNiwgNjU3NTIsIDEyMDAzNywgMCwgNDM0MjMsIDEyODY4MywgMTE5ODksIDAsIDAsIDAsIDAsIDAsIDgyNDksIAotICAgIDEyODE3MiwgMCwgNzg1MzEsIDY2NDAsIDc0ODA2LCAyNTk4LCA1MTMsIDAsIDY1ODYsIDg2NTYsIDAsIDEyNzAwMiwgCi0gICAgNjUwMDgsIDAsIDE5NDc4NCwgMTk0OTg5LCAxOTQ3OTUsIDAsIDkyNTE1LCA2ODQ3NSwgMCwgMCwgMCwgNzg2MzcsIDEyNjQ3LCAKLSAgICAwLCAxMjgwNDMsIDAsIDEwMzYsIDAsIDkyNDE5LCAxNzIzLCAxMjgwNTYsIDAsIDAsIDQxNTc5LCAyNDQ0LCAwLCAxMDcwNSwgCi0gICAgNzM4NzYsIDAsIDc0NDg2LCAwLCA3NDAsIDExOTIyMiwgMTk0OTc4LCAxOTQ5ODQsIDAsIDQyMzgsIDExMDcxLCA5NDU5LCAKLSAgICA2ODQzNywgNzgxNDAsIDc4MTM5LCAxOTQ5ODUsIDgxMjEsIDEwNDM4LCA3NDQ4NywgNDI1NzQsIDEzMjg1LCA1NTI2MywgCi0gICAgMTE5MDcsIDE5NTAwMCwgNTY5MCwgOTIyNTUsIDAsIDAsIDQzMTgxLCAxMzA5NSwgMCwgMTI3ODU3LCA2NDQ5OCwgMCwgCi0gICAgOTUwNiwgNjk3OCwgMTk0OTkzLCA3Nzk5MiwgMCwgMCwgMTk0OTkyLCAwLCAxMjc4NDUsIDExMjIsIDMxNywgMCwgMCwgMCwgCi0gICAgMCwgMTkyMCwgMCwgMTAxNzMsIDgyNywgMCwgMCwgNzgzNzgsIDEyMDEyNiwgNTIyMywgMTMwNCwgMCwgMTE5NTY0LCA1MjI2LCAKLSAgICAxMjYwMiwgMCwgMCwgOTMyOSwgNzc1OCwgOTIzOSwgNDExNzMsIDUyMjQsIDU0ODcsIDEyMjIsIDU2OTIsIDQxNzI1LCAKKyAgICA0NzQzLCAwLCAwLCA3NDA0MCwgNzQxMDgsIDg3NDMsIDE3MjQsIDE0MzMsIDExOTMyMiwgMCwgMzczOSwgNjI2MywgNzEzNDksIAorICAgIDAsIDM5NjQsIDY1OTIsIDAsIDEyODY5MywgNjYwNDAsIDAsIDQyNTY4LCA2OTgwNiwgMTI4MTEzLCAxNzc4LCAzOTU2LCAwLCAKKyAgICA0MjA3MCwgNjU2MywgNDMwNzUsIDkwMTgsIDk0MDA2LCA5ODMzODgsIDEyMDY3LCA0MTMxMiwgMCwgNTU0NywgNzQ1MzEsIAorICAgIDEyNzk2OSwgMCwgODE3NSwgMCwgMjg0LCA4MTA4LCA5MzQsIDAsIDc0MDAxLCAxNzMsIDY2NDYwLCA3MTc0LCA5MjcwMywgCisgICAgMTE4ODIyLCAxNzUwLCAwLCA0Mzk0LCA2ODM2OCwgMTgwNywgOTgzODc5LCA5MjI5OCwgMCwgNTg4OSwgMCwgNzE4MCwgMCwgCisgICAgMTE5MTQ1LCAwLCA5MTc1NTgsIDQyNDcxLCA2OTgyLCAxNzIxLCA0NDAyMiwgNzg5MSwgNDIyNDMsIDQyMTYwLCAyNTgzLCAKKyAgICA0NTEyLCAxMTkzNjAsIDY1MjMwLCAxMjgxMDksIDAsIDAsIDM4NTUsIDAsIDAsIDAsIDAsIDc0Mjk1LCAwLCAwLCA5MjQxNiwgCisgICAgMzk3NSwgMCwgNzQwODcsIDAsIDEyNjcyLCAzNzk4LCAyNzAzLCA5ODM1OTksIDAsIDIxMDksIDk3NzQsIDEyNzUsIDAsIDAsIAorICAgIDQxMDk1LCAzOTYyLCAwLCAyOTMyLCA0MTEwMSwgMzk1NCwgNjQ1NywgNDUxMywgMCwgMCwgNzM5OTQsIDczOTkyLCAxNDY4LCAKKyAgICAwLCAwLCA0MTg1MSwgMTI4MjMwLCA0MTg0NiwgMCwgNTUyMzgsIDc2MzMsIDQxODQ5LCA2ODM4NSwgNDMyMCwgMzIyNCwgMCwgCisgICAgMTI4MDMyLCAwLCA0MjUzMSwgMTE5MTA4LCAxNTEwLCAwLCA4MjU2LCAwLCAxMTM5MywgMCwgODg3OSwgMTI4MDc1LCAKKyAgICA5MjQ3NCwgODc3MCwgMCwgMCwgNzgzNzcsIDE5MTAsIDg2NzEsIDc4Mzc0LCA0MjgzLCAwLCAxMjcxMTcsIDY4MzYxLCAKKyAgICA3ODMxOCwgMjY1NCwgNzg5MywgMTk1MDA3LCAwLCAwLCAwLCA2NTEwNiwgNDI3NjEsIDEyODU3LCA0NTgxLCA4NDExLCAKKyAgICA3ODM3MiwgNzgzNzEsIDc4MzcwLCA3ODM2OSwgNzgzNjgsIDAsIDAsIDAsIDE3MzMsIDQzOTIsIDI1NjgsIDEwNzg2LCAKKyAgICA2OTY2MSwgMCwgODE4NCwgNDE0ODYsIDAsIDczOTYsIDcxMTYsIDAsIDY5Nzg4LCAwLCA3MTg1LCA3OTY1LCAwLCAwLCAKKyAgICA5MjM0NywgOTgzMDg3LCA0MTM1MCwgOTEyOSwgMCwgMCwgMjI5NCwgMCwgOTI0ODksIDAsIDEwNDgxLCAwLCA3MDAyMiwgCisgICAgNzE3MSwgMCwgMzQwLCA5MjQ5OCwgOTM5NzIsIDAsIDAsIDkyMjAwLCAwLCAwLCA2NzY0LCAxMjc0ODcsIDAsIDAsIDAsIDAsIAorICAgIDY1MjAzLCAxMTM5MiwgMTE5MDk4LCAxMTkzNTksIDAsIDMyMTAsIDAsIDAsIDExODc5NSwgMCwgMCwgMTI3OTcwLCAKKyAgICA5MTc2MTksIDAsIDAsIDEwMDQzLCAwLCAxMTg2LCA0MTU3MSwgNjk5OSwgNjE3LCA5NDY0LCAxMjY2NDIsIDM2NzUsIDUyMDcsIAorICAgIDY1MDYyLCA1MjEzLCAxOTQ3NjksIDI2MTcsIDQxMzQ4LCA0MTU2OCwgMTI4ODAzLCAzMjUzLCAxMjA1MzUsIDAsIDg2MzAsIAorICAgIDEyODU0NCwgMCwgNTU5NiwgNTU0NSwgNzI4OCwgMjU4NiwgNjQ4ODcsIDAsIDUyMTcsIDcxMzM2LCAwLCAwLCAwLCA2NDI5MywgCisgICAgNjgwOTgsIDI2MzUsIDAsIDAsIDk4MzgzNywgMCwgOTgzNjMyLCA3ODM1LCA3MDA0MCwgMCwgMTk0OTg4LCA5MjI4NSwgCisgICAgNjQ1NTgsIDEyNzEyMiwgMCwgMTI3MTIxLCAwLCAxMjc5MTMsIDAsIDU3ODQsIDk4MzEwMiwgMCwgMCwgNzAwMzMsIDQwMTEsIAorICAgIDkxNzYxNiwgNjgxMDEsIDAsIDc4NjQsIDQyNTQsIDY1MDk1LCA5ODM0ODgsIDU2MDAsIDM5MDMsIDEyNzA4MywgMTA0NDcsIAorICAgIDU1OTgsIDEyMDcsIDEyMDUyMSwgNjY2ODksIDM1MDEsIDQyNTgyLCA0MzYwMCwgMTk0NzgwLCAwLCAxMTI0LCA1NTk3LCAKKyAgICAxOTQ3NzgsIDE5NDc3MiwgOTMyMSwgOTgzNDc2LCA5ODM0NzMsIDk4MzQ3NCwgMCwgMTcxOSwgNjgzNTYsIDY4MzU0LCAKKyAgICA5NjcxLCAxMTI1LCA0Mzk5LCAxMjc0NzksIDkxNzYxMCwgOTgzNDgwLCA3NjMxLCA1NDg4LCA3MTI4LCAxMjA1MzIsIDAsIAorICAgIDU0OTEsIDAsIDg5MzcsIDQzMDQ0LCAyNjA0LCA3NDE4NywgNTQ5MCwgNDMwNDYsIDU0ODksIDcyMTIsIDExNzY4LCA0MzA0MywgCisgICAgNjMwMCwgMCwgNzEyMiwgMCwgNDM5MCwgNDU0LCA0MTM5NywgMCwgOTg3NSwgNzU5MywgMTk0NzkxLCA5MjI3NCwgMTE4OTEzLCAKKyAgICA3MjA3LCAwLCA2NTkwMSwgMjM5NCwgMjU3NSwgMCwgMzc0NiwgMTEwMTYsIDY1NzUyLCAxMjAwMzcsIDAsIDQzNDIzLCAKKyAgICAxMjg2ODMsIDExOTg5LCAwLCAwLCAwLCAwLCAwLCA4MjQ5LCAxMjgxNzIsIDAsIDc4NTMxLCA2NjQwLCA3NDgwNiwgMjU5OCwgCisgICAgNTEzLCAwLCA2NTg2LCA4NjU2LCAwLCAxMjA3MTAsIDY1MDA4LCAwLCAxOTQ3ODQsIDE5NDk4OSwgMTk0Nzk1LCA5ODM0NjUsIAorICAgIDkyNTE1LCA2ODQ3NSwgOTM5NzMsIDAsIDAsIDc4NjM3LCAxMjY0NywgMCwgMTI4MDQzLCA2OTg5MywgMTAzNiwgOTgzNDY5LCAKKyAgICA5MjQxOSwgMTcyMywgMTI4MDU2LCA3NDIxNywgMCwgNDE1NzksIDI0NDQsIDAsIDEwNzA1LCA3Mzg3NiwgOTgzNDYxLCAKKyAgICA3NDQ4NiwgOTgzNDU5LCA3NDAsIDExOTIyMiwgMTk0OTc4LCAxOTQ5ODQsIDAsIDQyMzgsIDExMDcxLCA5NDU5LCA2ODQzNywgCisgICAgNzgxNDAsIDc4MTM5LCAxOTQ5ODUsIDgxMjEsIDEwNDM4LCA3NDQ4NywgNDI1NzQsIDEzMjg1LCA1NTI2MywgMTE5MDcsIAorICAgIDE5NTAwMCwgNTY5MCwgOTIyNTUsIDkzOTkyLCAwLCA0MzE4MSwgMTMwOTUsIDAsIDEyNzg1NywgNjQ0OTgsIDAsIDk1MDYsIAorICAgIDY5NzgsIDE5NDk5MywgNzc5OTIsIDAsIDAsIDE5NDk5MiwgMCwgMTI3ODQ1LCAxMTIyLCAzMTcsIDAsIDAsIDAsIDAsIAorICAgIDE5MjAsIDAsIDEwMTczLCA4MjcsIDAsIDAsIDc4Mzc4LCAxMjAxMjYsIDUyMjMsIDEzMDQsIDAsIDExOTU2NCwgNTIyNiwgCisgICAgMTI2MDIsIDk0MDQ0LCAwLCA5MzI5LCA3NzU4LCA5MjM5LCA0MTE3MywgNTIyNCwgNTQ4NywgMTIyMiwgNTY5MiwgNDE3MjUsIAogICAgIDY5MjI5LCA5Njc0LCA1Njk1LCA0MTcxMSwgNjQ2MjcsIDE5OTA5LCAwLCA3NDYwNCwgNTY5MSwgMjg3LCA4NjYsIDIzMywgCi0gICAgMTI3NDkwLCAwLCA0MjgxNiwgMCwgNjUxNDAsIDc0Nzk3LCAwLCA4ODMwLCA2NTY4LCA0MjMwMCwgMTA1MjQsIDQxMTc1LCAwLCAKLSAgICAwLCAwLCA1Mjk2LCAwLCA0MjQ5MiwgNDM0MDIsIDkyNDY2LCAzMzAyLCAwLCAwLCA2NTE2LCA2NTE1LCA2NTE0LCA2NTEzLCAKLSAgICA2NTEyLCAwLCA3ODU2LCA4NjkwLCAwLCAwLCAxMjEyMiwgMTE5NjAyLCA0Mzk3NiwgMCwgMTc4NSwgOTI1MDcsIDY4NjIyLCAKLSAgICA2NTE1MywgMTk0ODEwLCA1MTM4LCAwLCAwLCAwLCAwLCA0NTQwLCA0MTE4MSwgMCwgNjIwMCwgMCwgNTEzNCwgMCwgMzIyLCAKLSAgICA0NjQzLCA1MTMyLCAwLCA2Mzg5LCAwLCA1MTQzLCAwLCA4NzkwLCAxMjg2OTQsIDAsIDE5NDgwMiwgMCwgODg2OSwgCi0gICAgMTIwNjAxLCAwLCA0MjA2MCwgMCwgMCwgMTk0ODA0LCAxMjcwMTIsIDEwMjcwLCAxMDI4NiwgMTAzMTgsIDEwMzgyLCAKLSAgICA0MzUyOSwgNjY0NzcsIDAsIDAsIDc0MTcwLCAwLCAzMjM0LCAwLCAwLCA3NDM3NiwgNDMxMzksIDExODgxNSwgMTI3MDg0LCAKLSAgICAxMjA2MjcsIDg3NjcsIDAsIDc0NDg5LCA5Njk1LCAxMjA3NDYsIDUyMDEsIDAsIDYyMTUsIDEyNzE0LCA2MjE0LCAxMzEwMSwgCi0gICAgMCwgMTk0OTk5LCA2NTI2OCwgMCwgMCwgMCwgMTEwMjcsIDAsIDEwMDU5LCAxMDUxMSwgNDIwNzUsIDk3NjcsIDc4OSwgCi0gICAgMTc0OSwgNzg4OTAsIDEyNzA3MSwgMCwgMzIwLCAwLCA4NjQ3LCAwLCAzMDQ5LCAwLCA2NDcxLCA0MjA3MSwgNDMxNTYsIAotICAgIDk5MjUsIDEyNzM1NiwgMTI3MzU1LCA2NjQ3OCwgNDk2MCwgNTU0OSwgMTI3MzU5LCAxMjczNDYsIDg0ODUsIDQ2NzEsIAotICAgIDU0MTgsIDEyNzM1MCwgMzM1MSwgMTI3MDA2LCAxMjczNTEsIDEwNjEwLCA1NDE0LCAzMDY0LCA2MjEyLCA0Mjg2LCA1NDIxLCAKLSAgICAxMjczNDQsIDk1NTQsIDAsIDEyNzc5NCwgMTI3MTA5LCA2NjUzLCAxMjg4MTEsIDAsIDY0NTEwLCA2MjEzLCAxMjg4NSwgMCwgCi0gICAgMTE5MDQ1LCA2NDcyMCwgMCwgMTIwNzU5LCA3Mzc0MSwgMTI2MDMsIDcxMzEsIDExNDMwLCA0NTY2LCA3ODQzLCA5MzE3LCAKLSAgICAzODAxLCAxMDM0MiwgMTA0MDYsIDAsIDExOTI1OSwgNDI1NzYsIDAsIDUyMDAsIDAsIDkxNzk0OCwgMCwgOTE4MywgCi0gICAgMTI3MzYxLCA3NDQ1OCwgNzM4MjUsIDM5NSwgNTQ4MiwgNTE5OCwgODc4NiwgMTAzOTAsIDc0MjAyLCA1MTk2LCA0MzIyNCwgCi0gICAgNjExMywgNDIwMDksIDUyMDUsIDAsIDQzMzA3LCAwLCAxMTg5NzMsIDAsIDEyMTM0LCAwLCAwLCAxMTg4NDMsIDkxMjYsIAotICAgIDQzNSwgMCwgMTIwMTQsIDEwMzc3LCA4MDkzLCA5MDc5LCAzMjAzLCAxOTIsIDY1MTA5LCAzMzg1LCAwLCA2NDQzMCwgNTM4MywgCi0gICAgMTAyOTQsIDEwMzI2LCAxMjgxNzgsIDU3MzgsIDAsIDMzMzYsIDc4MzU1LCA1MzYxLCAzNjIzLCA0MTE1OSwgMCwgNjgxMTIsIAotICAgIDc4NzIsIDg1ODEsIDAsIDEyNjAsIDMxNDksIDUzNTksIDAsIDAsIDc5MTQsIDUzNTcsIDkyMTcwLCAxMjg2NTksIDI2MjQsIAotICAgIDUzNjQsIDAsIDExNDMxLCAxMjAwMzAsIDkxMDEsIDExMDU4LCA3ODI4OCwgMCwgNzgyOTMsIDQyMjcxLCA3ODI4OSwgCi0gICAgNDI5MTcsIDEyMDc5MywgMCwgNjU1NjYsIDY3MTcsIDEwNjE5LCA0MzM2MCwgNzgzODUsIDc4Mzg0LCA3ODM4MywgNzgzODIsIAotICAgIDc4MzgxLCA3ODM4MCwgNzgzNzksIDkzMTksIDcwOTcsIDExOTA1NSwgNzc5MDYsIDMyMzIsIDczODI0LCA3NDU4MSwgCi0gICAgMTIwNjMyLCAwLCAwLCA0MTg4OSwgOTI0NTMsIDAsIDExNjEsIDQxODk1LCA3NDEwMywgOTcwMSwgODYyMiwgMCwgMCwgCi0gICAgNzM4MTksIDEyMDU4OCwgNTAxMiwgNzc5MTIsIDQxMzYyLCAwLCA3ODI5NiwgMTE5MjEsIDAsIDExNzY5LCAwLCA2ODYwOSwgCi0gICAgNDEzNjQsIDAsIDc0MjI4LCA0MTM1MiwgNDEzNjEsIDAsIDQxMzY2LCAwLCAzMzU2LCAwLCA5MTcsIDY4NDIyLCAxMTk5MTUsIAotICAgIDcxMzQsIDgxOTksIDc4Mzg5LCAxMTk5MTcsIDY3NywgMTE5OTE2LCAwLCAxMTk5MzIsIDEyNzE2OSwgMCwgMCwgMCwgMzM0OSwgCi0gICAgNzQxMjUsIDcwMjIsIDg5MjcsIDQ3MzksIDAsIDU4MDIsIDAsIDg2MTUsIDAsIDAsIDQ5MSwgMCwgMTAxOTAsIDEyMDY5OCwgCi0gICAgNjU4MzcsIDEyODgyMCwgODQyNiwgMTEwOTIsIDk4OTEsIDAsIDQyNDk3LCA3MTEzLCA3NTg2LCA0MjMwNSwgMTA4NTIsIDAsIAotICAgIDAsIDQ2MDYsIDY4NDQ4LCA5MDk1LCA3NzQxLCAxMjY4NCwgNDE4ODUsIDEwNDYsIDcxMjQsIDAsIDAsIDU4MTUsIDUxNzEsIAotICAgIDY1NTM5LCA2ODYxMiwgNjkzMiwgNzgzMTUsIDQyMzk0LCA0MTg3OCwgNzQ4NDksIDEyMDYyMSwgMCwgNTE2OSwgMTE5MzUsIAotICAgIDAsIDAsIDMxNzUsIDEyMDgyMiwgMTUzNywgMTIwODA0LCA1MTc2LCA4OTA1LCA0MTM2LCA0ODcxLCA3ODI4NywgMCwgOTgzMywgCi0gICAgMCwgMCwgMTEyOCwgNjU5MjAsIDAsIDk3MTEsIDcwNTcsIDk0MDgsIDk0MDksIDk0MTAsIDk0MTEsIDM2NjIsIDk0MTMsIAotICAgIDMzNzgsIDk0MTUsIDk0MTYsIDk0MTcsIDk0MTgsIDYzMjAsIDk0MjAsIDk0MjEsIDU4OTcsIDk0MjMsIDUxNjUsIDUxMjYsIAotICAgIDQxMzg1LCAwLCA0MTM4OSwgOTE3OTM4LCA4OTU1LCAzMzc0LCA5NDAwLCA5NDAxLCA3MTE5LCA5NDAzLCA5NDA0LCAzNTA3LCAKLSAgICA5NDA2LCA3NjI5LCAwLCAxOTkyNSwgNDI2NjksIDY4NDYzLCAxODMsIDQzOTg1LCAyNjMxLCAwLCAxMDYyNywgNDExMzAsIAotICAgIDc4MjYwLCAzOTk2LCAwLCA3ODc3MSwgMCwgMTE5MzEzLCAxMTkzMDcsIDc4NzY4LCA2NTgwLCA0MzMyLCA2NDgyNSwgCi0gICAgNjYzMjksIDEwNzI2LCA2NjY4NiwgNDExMjUsIDU4OTksIDQxMzY1LCA5MTc5MTgsIDEyMDg1LCAwLCA1NzQsIDkxNzkyMiwgCi0gICAgNzc4MjUsIDczODI4LCA1NDQ4LCA0MTA1OCwgNTQ0NiwgNjk3MDksIDQxMzIyLCA0MjIxMSwgNTQ0MiwgNDE5MCwgNzc4MzQsIAotICAgIDc3ODM1LCA1NDUxLCA3NzgzMywgMzYxNiwgNzc4MjgsIDc3ODM3LCA3NzgzOCwgNzcwOCwgNzc4MzYsIDEwODU5LCA2NTg2NywgCi0gICAgMTAzNDUsIDEwNDA5LCA0MTkxLCAwLCA3Nzg0NCwgNzM4MDAsIDQyMTgxLCA3Nzg0MywgNzc4MzksIDIwNjAsIDAsIDcxMTEsIAotICAgIDExNzg4LCA2NTU4NywgNjgxMjksIDEwNDE1LCA3NDEwMiwgMCwgMjA1LCAwLCAxMDM1MSwgMTE5MDc2LCAwLCA5ODYyLCAKLSAgICA2NTg4LCA0MzI1NywgNjQ2OTcsIDczOTk4LCA0MTM1NSwgNTUwNSwgMTE5MTU0LCA1NTAzLCA4MDIxLCAwLCA3MTI1LCAKLSAgICA5ODE5LCA0MTM1NywgODAxMSwgNDI4ODUsIDU1MDcsIDEyMDQ0LCA5MjYzNiwgMCwgMTAwMjYsIDU0NzIsIDcxMDksIDExOTEsIAotICAgIDEzMTA2LCA1NDcwLCAxMDMyOSwgNTQ3NiwgODk5MSwgNjYzMjIsIDY5Nzc4LCA3ODI2NywgNDI4NzQsIDg1NTAsIDQyODc2LCAKLSAgICA1NTkyLCAyOTE5LCAwLCAyNjc1LCA1NTk1LCA3ODQxMSwgMCwgNDM2NywgMCwgMCwgNTQ3OCwgNTkwNCwgNTU5NCwgMCwgCi0gICAgNzQxNTAsIDcyOTEsIDU1OTAsIDc3ODQ5LCAxMzA2NywgMTE4OTA5LCAxMjAzNzIsIDAsIDk3MzEsIDY5NzMxLCA2NDYzMywgCi0gICAgNzc4NTcsIDc3ODU0LCA3Nzg1NSwgNzc4NTIsIDc3ODUzLCA3Nzg1MCwgMTA3NTAsIDQzNzE0LCA3Nzg1OCwgNzEzNywgMCwgCi0gICAgMTI4Mjk2LCAxMjg4NywgMTA1NTEsIDE5NDU2NCwgNzc4NjYsIDc3ODY3LCA3Nzg2NCwgNzc4NjUsIDk5MjksIDUxOTksIAotICAgIDk5MzYsIDExMjAsIDQyMzg3LCAwLCAxNDQ0LCA5NDg2LCA3NTU0LCA2NTgzOSwgNTUyNTIsIDAsIDE0NDIsIDAsIDU4OTQsIAotICAgIDAsIDAsIDQxMTcxLCA5MjUxMSwgNzQzMTMsIDAsIDEzMTYyLCAwLCAzMzM0LCAwLCAxMTg4MDMsIDc3ODgxLCA2NjAyMiwgMCwgCi0gICAgMCwgMTY1MSwgMCwgODg2MSwgMCwgMCwgMTE0MiwgMCwgODI3MSwgMCwgMCwgMCwgMTI5MDMsIDAsIDQwMDIsIDQzNjI2LCAKLSAgICAxMDQ0MiwgMTA2NzYsIDMzNDQsIDAsIDAsIDEyOTIwLCAxOTQ1NjAsIDAsIDAsIDY2NjQyLCAxMjc3LCAwLCA3ODcxLCAwLCAKLSAgICAwLCA3ODg1MywgMCwgNzg4NTQsIDEyMDM2MCwgMCwgMTE3ODQsIDAsIDc4MDEyLCA0NzAwLCA2NjM2NiwgNzg4NTgsIAotICAgIDEyMDM1OSwgMTEwMTIsIDAsIDc4ODU2LCA5MjQwMCwgNzc4NzksIDQ5NzMsIDg3ODQsIDc3ODc3LCA3NDgwNCwgNzc4NzQsIAotICAgIDc3ODY5LCA3Nzg3MSwgNDI0NDAsIDAsIDQzMTE4LCAwLCA0MjM2NCwgNjc3NCwgNjc3MywgOTE3NTYwLCAxMjAzNjksIAotICAgIDEwMzQ2LCAxMDQxMCwgNzg4NTksIDkyNDMsIDI0NjQsIDc0MjYzLCA2MTA4LCAzMzcyLCAwLCA2MjQ3LCA0MzExNywgCi0gICAgNzQ1MjYsIDcxMjEsIDc0MTY2LCAwLCAxMjAzNTUsIDkyNTM3LCAwLCAwLCAxOTUwMzQsIDAsIDAsIDAsIDc0MjE3LCAzMzU0LCAKLSAgICAxOTUwMzcsIDQxOTIsIDkyODksIDExODk5OSwgNDExOTEsIDM4NzYsIDAsIDEyNzk4MywgMTIwNjYwLCA0MzY5NiwgNDMzODAsIAotICAgIDAsIDAsIDAsIDAsIDExNjAzLCAwLCAwLCA2NTg5LCAxMjg1ODgsIDE5NDY3OSwgMCwgMCwgMCwgMCwgMCwgNDI1NzIsIAotICAgIDEyODI2NCwgMTA2MzAsIDc0ODI3LCAxOTYzLCAxMTg4ODksIDEyNzk3OCwgMTE2NTQsIDAsIDc1NTAsIDEwNjg2LCA1OTAzLCAKLSAgICAwLCA3ODAwOSwgNDEzMjksIDk2NjIsIDkxNzkzNywgNjQ2OTgsIDMzNjYsIDEwMzk5LCAwLCAwLCAxMTAxMywgMTI3OTI3LCAKLSAgICAxMjgzMDAsIDAsIDc4NjIxLCAxOTQ2NzIsIDY5MjUsIDAsIDAsIDkxNzkyOSwgMCwgMTE1NjgsIDAsIDQzMzY3LCA2NDU3OSwgCisgICAgMTI3NDkwLCA5ODM0MzMsIDQyODE2LCA5NDAzNiwgNjUxNDAsIDc0Nzk3LCAwLCA4ODMwLCA2NTY4LCA0MjMwMCwgMTA1MjQsIAorICAgIDQxMTc1LCA5ODM0NDAsIDk4MzQzNywgOTgzNDM4LCA1Mjk2LCA5ODM0MzYsIDQyNDkyLCA0MzQwMiwgOTI0NjYsIDMzMDIsIAorICAgIDAsIDAsIDY1MTYsIDY1MTUsIDY1MTQsIDY1MTMsIDY1MTIsIDAsIDc4NTYsIDg2OTAsIDAsIDAsIDEyMTIyLCAxMTk2MDIsIAorICAgIDQzOTc2LCAwLCAxNzg1LCA2OTkyNSwgNjg2MjIsIDY1MTUzLCAxOTQ4MTAsIDUxMzgsIDAsIDAsIDExODg2OSwgMCwgNDU0MCwgCisgICAgNDExODEsIDAsIDYyMDAsIDAsIDUxMzQsIDAsIDMyMiwgNDY0MywgNTEzMiwgMCwgNjM4OSwgMTI4NTMzLCA1MTQzLCAwLCAKKyAgICA4NzkwLCAxMjg2OTQsIDAsIDE5NDgwMiwgMCwgODg2OSwgNjk5MTYsIDAsIDQyMDYwLCA3MTMyNiwgOTY0OCwgMTk0ODA0LCAKKyAgICAxMjcwMTIsIDEwMjcwLCAxMDI4NiwgMTAzMTgsIDEwMzgyLCA0MzUyOSwgNjY0NzcsIDAsIDAsIDc0MTcwLCAwLCAzMjM0LCAKKyAgICAwLCAwLCA3NDM3NiwgNDMxMzksIDExODgxNSwgMTI3MDg0LCAxMjA2MjcsIDg3NjcsIDAsIDc0NDg5LCA5Njk1LCAxMjA3NDYsIAorICAgIDUyMDEsIDAsIDYyMTUsIDEyNzE0LCA2MjE0LCAxMzEwMSwgMCwgMTk0OTk5LCA2NTI2OCwgMCwgMCwgMCwgMTEwMjcsIDAsIAorICAgIDEwMDU5LCAxMDUxMSwgNDIwNzUsIDk3NjcsIDc4OSwgMTc0OSwgNzg4OTAsIDEyNzA3MSwgOTgzNjYxLCAzMjAsIDAsIAorICAgIDg2NDcsIDAsIDMwNDksIDAsIDY0NzEsIDQyMDcxLCA0MzE1NiwgOTkyNSwgMTI3MzU2LCAxMjczNTUsIDY2NDc4LCA0OTYwLCAKKyAgICA1NTQ5LCAxMjczNTksIDEyNzM0NiwgODQ4NSwgNDY3MSwgNTQxOCwgMTI3MzUwLCAzMzUxLCAxMjcwMDYsIDEyNzM1MSwgCisgICAgMTA2MTAsIDU0MTQsIDMwNjQsIDYyMTIsIDQyODYsIDU0MjEsIDEyNzM0NCwgOTU1NCwgMCwgOTQwNDgsIDEyNzEwOSwgCisgICAgNjY1MywgMTI4ODExLCAwLCA2NDUxMCwgNjIxMywgMTI4ODUsIDAsIDExOTA0NSwgNjQ3MjAsIDAsIDEyMDc1OSwgNzM3NDEsIAorICAgIDEyNjAzLCA3MTMxLCAxMTQzMCwgNDU2NiwgNzUxOCwgOTMxNywgMzgwMSwgMTAzNDIsIDEwNDA2LCAwLCAxMTkyNTksIAorICAgIDQyNTc2LCAwLCA1MjAwLCAxMjY2MTEsIDkxNzk0OCwgMCwgOTE4MywgMTI3MzYxLCA3NDQ1OCwgNzM4MjUsIDM5NSwgNTQ4MiwgCisgICAgNTE5OCwgNDM0OSwgMTAzOTAsIDc0MjAyLCA1MTk2LCA0MzIyNCwgNjExMywgNDIwMDksIDUyMDUsIDAsIDQzMzA3LCAwLCAKKyAgICAxMTg5NzMsIDAsIDEyMTM0LCAwLCAwLCAxMTg4NDMsIDkxMjYsIDQzNSwgMCwgMTIwMTQsIDEwMzc3LCA4MDkzLCA5MDc5LCAKKyAgICAzMjAzLCAxOTIsIDY1MTA5LCAzMzg1LCAwLCA2NDQzMCwgNTM4MywgMTAyOTQsIDEwMzI2LCAxMjgxNzgsIDU3MzgsIAorICAgIDk4MzIxMywgMzMzNiwgNzgzNTUsIDUzNjEsIDM2MjMsIDQxMTU5LCAwLCA2ODExMiwgNzg3MiwgODU4MSwgMCwgMTI2MCwgCisgICAgMzE0OSwgNTM1OSwgMTIwMTM0LCAwLCA3OTE0LCA1MzU3LCA5MjE3MCwgMTI4NjU5LCAyNjI0LCA1MzY0LCAwLCAxMTQzMSwgCisgICAgMTIwMDMwLCA5MTAxLCAxMTA1OCwgNzgyODgsIDAsIDc4MjkzLCA0MjI3MSwgNzgyODksIDQyOTE3LCAxMjA3OTMsIDAsIAorICAgIDY1NTY2LCA2NzE3LCAxMDYxOSwgNDMzNjAsIDc4Mzg1LCA3ODM4NCwgMTE4MzIsIDc4MzgyLCA3ODM4MSwgNzgzODAsIAorICAgIDc4Mzc5LCA5MzE5LCA3MDk3LCAxMTkwNTUsIDc3OTA2LCAzMjMyLCA3MzgyNCwgNzQ1ODEsIDEyMDYzMiwgMCwgMCwgCisgICAgNDE4ODksIDkyNDUzLCAwLCAxMTYxLCA0MTg5NSwgNzQxMDMsIDk3MDEsIDg2MjIsIDAsIDAsIDczODE5LCAxMjA1ODgsIAorICAgIDUwMTIsIDc3OTEyLCA0MTM2MiwgNjk4NjIsIDc4Mjk2LCAxMTkyMSwgMCwgMTE3NjksIDAsIDY4NjA5LCA0MTM2NCwgMCwgCisgICAgNzQyMjgsIDQxMzUyLCA0MTM2MSwgMCwgNDEzNjYsIDAsIDMzNTYsIDAsIDkxNywgNjg0MjIsIDExOTkxNSwgNzEzNCwgCisgICAgODE5OSwgNzgzODksIDExOTkxNywgNjc3LCAxMTk5MTYsIDAsIDExOTkzMiwgMTI3MTY5LCAwLCAwLCAwLCAzMzQ5LCAKKyAgICA3NDEyNSwgNzAyMiwgODkyNywgNDczOSwgMCwgNTgwMiwgMCwgODYxNSwgMCwgMCwgNDkxLCAxMjg4MTksIDEwMTkwLCAKKyAgICAxMjA2OTgsIDY1ODM3LCAxMjg4MjAsIDg0MjYsIDExMDkyLCA5ODkxLCAwLCA0MjQ5NywgNzExMywgNzU4NiwgNDIzMDUsIAorICAgIDEwODUyLCAwLCAwLCA0NjA2LCA2ODQ0OCwgOTA5NSwgNzc0MSwgMTI2ODQsIDQxODg1LCAxMDQ2LCA3MTI0LCAwLCAwLCAKKyAgICA1ODE1LCA1MTcxLCA2NTUzOSwgNjg2MTIsIDY5MzIsIDc0MjY3LCA0MjM5NCwgNDE4NzgsIDc0ODQ5LCAxMjA2MjEsIDAsIAorICAgIDUxNjksIDExOTM1LCAwLCAwLCAzMTc1LCAxMjA4MjIsIDE1MzcsIDEyMDgwNCwgNTE3NiwgODkwNSwgNDEzNiwgNDg3MSwgCisgICAgNzgyODcsIDAsIDk4MzMsIDAsIDAsIDExMjgsIDY1OTIwLCAwLCA5NzExLCA3MDU3LCA5NDA4LCA5NDA5LCA5NDEwLCA5NDExLCAKKyAgICAzNjYyLCA5NDEzLCAzMzc4LCA5NDE1LCA5NDE2LCA5NDE3LCA5NDE4LCA2MzIwLCA5NDIwLCA5NDIxLCA1ODk3LCA5NDIzLCAKKyAgICA1MTY1LCA1MTI2LCA0MTM4NSwgMCwgNDEzODksIDkxNzkzOCwgODk1NSwgMzM3NCwgOTQwMCwgOTQwMSwgNzExOSwgOTQwMywgCisgICAgOTQwNCwgMzUwNywgOTQwNiwgNzYyOSwgOTgzNjE3LCAxOTkyNSwgNDI2NjksIDY4NDYzLCAxODMsIDQzOTg1LCAyNjMxLCAwLCAKKyAgICAxMDYyNywgNDExMzAsIDc4MjYwLCAzOTk2LCAwLCA3ODc3MSwgMCwgMTE5MzEzLCAxMTkzMDcsIDc4NzY4LCA2NTgwLCAKKyAgICA0MzMyLCA2NDgyNSwgNjYzMjksIDEwNzI2LCA2NjY4NiwgNDExMjUsIDU4OTksIDQxMzY1LCA5MTc5MTgsIDEyMDg1LCAwLCAKKyAgICA1NzQsIDkxNzkyMiwgNzc4MjUsIDczODI4LCA1NDQ4LCA0MTA1OCwgNTQ0NiwgNjk3MDksIDQxMzIyLCA0MjIxMSwgNTQ0MiwgCisgICAgNDE5MCwgNzc4MzQsIDc3ODM1LCA1NDUxLCA3NzgzMywgMzYxNiwgNzc4MjgsIDc3ODM3LCA3NzgzOCwgNzcwOCwgNzc4MzYsIAorICAgIDEwODU5LCA2NTg2NywgMTAzNDUsIDEwNDA5LCA0MTkxLCAwLCA3Nzg0NCwgNzM4MDAsIDQyMTgxLCA3Nzg0MywgNzc4MzksIAorICAgIDIwNjAsIDAsIDcxMTEsIDExNzg4LCA2NTU4NywgNjgxMjksIDEwNDE1LCA3NDEwMiwgMCwgMjA1LCAwLCAxMDM1MSwgCisgICAgMTE5MDc2LCAwLCA5ODYyLCA2NTg4LCA0MzI1NywgNjQ2OTcsIDczOTk4LCA0MTM1NSwgNTUwNSwgMTE5MTU0LCA1NTAzLCAKKyAgICA4MDIxLCAwLCA3MTI1LCA5ODE5LCA0MTM1NywgODAxMSwgNDI4ODUsIDU1MDcsIDEyMDQ0LCA5MjYzNiwgMCwgMTAwMjYsIAorICAgIDU0NzIsIDcxMDksIDExOTEsIDEzMTA2LCA1NDcwLCAxMDMyOSwgNTQ3NiwgODk5MSwgNjYzMjIsIDY5Nzc4LCA3ODI2NywgCisgICAgNDI4NzQsIDg1NTAsIDQyODc2LCA1NTkyLCAyOTE5LCAwLCAyNjc1LCA1NTk1LCA3ODQxMSwgNDM3NjIsIDQzNjcsIDAsIDAsIAorICAgIDU0NzgsIDU5MDQsIDU1OTQsIDAsIDc0MTUwLCA3MjkxLCA1NTkwLCA0Mzc2MSwgMTMwNjcsIDExODkwOSwgMTIwMzcyLCAKKyAgICA5ODMxMDgsIDk3MzEsIDY5NzMxLCA2NDYzMywgNzc4NTcsIDc3ODU0LCA3Nzg1NSwgNzc4NTIsIDc3ODUzLCA3Nzg1MCwgCisgICAgMTA3NTAsIDQzNzE0LCA3Nzg1OCwgNzEzNywgMCwgMTI4Mjk2LCAxMjg4NywgMTA1NTEsIDE5NDU2NCwgNzc4NjYsIDc3ODY3LCAKKyAgICA3Nzg2NCwgNzc4NjUsIDk5MjksIDUxOTksIDk5MzYsIDExMjAsIDQyMzg3LCAwLCAxNDQ0LCA5NDg2LCA3NTU0LCA2NTgzOSwgCisgICAgNTUyNTIsIDczOTcyLCAxNDQyLCAwLCA1ODk0LCA3MDA2OSwgMCwgNDExNzEsIDkyNTExLCA3NDMxMywgMCwgMTMxNjIsIDAsIAorICAgIDMzMzQsIDE5NTAxMCwgMTE4ODAzLCA3Nzg4MSwgNjYwMjIsIDAsIDAsIDE2NTEsIDEyODc3MSwgODg2MSwgMCwgMCwgMTE0MiwgCisgICAgMCwgODI3MSwgMCwgOTgzMDU4LCAxMjY2NDUsIDEyOTAzLCAwLCA0MDAyLCA0MzYyNiwgMTA0NDIsIDEwNjc2LCAzMzQ0LCAwLCAKKyAgICAwLCAxMjkyMCwgMTk0NTYwLCAwLCAwLCA2NjY0MiwgMTI3NywgMCwgNzg3MSwgMCwgMCwgNzg4NTMsIDAsIDc4ODU0LCAKKyAgICAxMjAzNjAsIDAsIDExNzg0LCAwLCA3ODAxMiwgNDcwMCwgNjYzNjYsIDc4ODU4LCAxMjAzNTksIDExMDEyLCAwLCA3ODg1NiwgCisgICAgOTI0MDAsIDc3ODc5LCA0OTczLCA4Nzg0LCA3Nzg3NywgNzQ4MDQsIDc3ODc0LCA3Nzg2OSwgNzc4NzEsIDQyNDQwLCAwLCAKKyAgICA0MzExOCwgMCwgNDIzNjQsIDY3NzQsIDY3NzMsIDkxNzU2MCwgMTIwMzY5LCAxMDM0NiwgMTA0MTAsIDc4ODU5LCA5MjQzLCAKKyAgICAyNDY0LCA3NDI2MywgNjEwOCwgMzM3MiwgMCwgNjI0NywgNDMxMTcsIDc0NTI2LCA3MTIxLCA3NDE2NiwgMCwgMTIwMzU1LCAKKyAgICA5MjUzNywgMCwgMCwgMTk1MDM0LCAwLCAwLCAwLCA3MDA4MywgMzM1NCwgMTk1MDM3LCA0MTkyLCA5Mjg5LCAxMTg5OTksIAorICAgIDQxMTkxLCAzODc2LCAwLCA3MDA2NywgMTIwNjYwLCA0MzY5NiwgNDMzODAsIDAsIDk4MzA5MSwgMCwgMCwgMTE2MDMsIAorICAgIDk4Mzk0NSwgMCwgNjU4OSwgMTI4NTg4LCAxOTQ2NzksIDAsIDAsIDk4MzY5MSwgMCwgMCwgNDI1NzIsIDEyODI2NCwgCisgICAgMTA2MzAsIDc0ODI3LCAxOTYzLCAxMTYyMiwgMTI3MDk4LCAxMTY1NCwgMCwgNzU1MCwgMTA2ODYsIDU5MDMsIDAsIDc4MDA5LCAKKyAgICA0MTMyOSwgOTY2MiwgOTE3OTM3LCA2NDY5OCwgMzM2NiwgMTAzOTksIDAsIDU1NDIsIDExMDEzLCAxMjc5MjcsIDEyODMwMCwgCisgICAgMCwgNzg2MjEsIDE5NDY3MiwgNjkyNSwgMCwgMCwgOTE3OTI5LCAwLCAxMTU2OCwgOTgzNjY0LCA0MzM2NywgNjQ1NzksIAogICAgIDkxNzkzMCwgNzg1MiwgMCwgMCwgNjc1NCwgNjMxMiwgMCwgNjQ2NzIsIDY1Mjk2LCAwLCAxMTg5NTcsIDAsIDQxNiwgCi0gICAgMTIyOTYsIDY4NDU3LCA3MzgzNCwgNjgxNzcsIDExMDUwLCAxMDk4NCwgOTIyMDgsIDAsIDAsIDkyMTgyLCAwLCAwLCA5NTMyLCAKLSAgICA2NjM1NSwgMCwgMCwgOTE3OTI1LCA2NDM0MywgMTk1MDMyLCAxMjgyODEsIDE5NTAzMSwgMCwgMCwgMTk1MDU3LCAxMTQ0NSwgCi0gICAgMCwgMjExMiwgMTk1MDU2LCAxMjg4MTQsIDEwMTg1LCAxMDIxLCAxMjgxMzAsIDk1MDcsIDEwMjEwLCA3NDU0NCwgODAyMywgCi0gICAgMTIwMCwgMTIyNDMsIDc4MDAxLCA1MjgyLCA3ODAwMywgOTYyNCwgMTE1NDUsIDAsIDEyMDQ5MywgMzM0MywgNDQyNCwgCi0gICAgMTEwNDcsIDE4ODUsIDQzMjY4LCAzODk2LCA3ODYyNiwgNjY0OTcsIDI5NDcsIDM5MiwgNzg5NCwgNDM5MSwgNjgxMzksIDAsIAotICAgIDEzMDU5LCA3NDgxNiwgNzc5OTgsIDMzODEsIDc5NDIsIDAsIDY5MjE5LCAwLCA2NDc1NywgMCwgMzkxMywgMCwgMCwgCi0gICAgNzgyMzUsIDcwNDQsIDEyNjUsIDAsIDYzMDksIDcwNDUsIDcxNzUsIDcwNDcsIDc4MjM5LCAxMTc5MSwgMCwgMCwgODIyMSwgCi0gICAgNzgzMDcsIDQxODY0LCAwLCAwLCAwLCAwLCAxNjcsIDAsIDc4MzAxLCAwLCA3NDIxMSwgNDE4OTcsIDY4NDc3LCAwLCAKLSAgICA5MTc1ODMsIDAsIDAsIDI0OTMsIDAsIDExODgxMSwgMCwgMCwgNjQzNTQsIDAsIDg3NzcsIDAsIDQwNiwgODg4NCwgMjM4NSwgCi0gICAgMCwgOTI0NTAsIDAsIDkxNzU3MywgNDMwMzAsIDQyMDI3LCAxMjExNCwgMCwgOTE3NTc5LCA2NDkzNiwgMTk0Njk1LCAwLCAKLSAgICAxMjA2MjksIDEwNTYxLCAwLCA4MzY1LCAxMjA1MzksIDAsIDY1ODQxLCAxMjA3ODcsIDExNjAxLCAwLCA3NDEyMSwgMCwgCi0gICAgOTE3NTc1LCA3ODM0LCA3NDE1OSwgMCwgOTE3NTc0LCAxMDI5OCwgNjYyNCwgNDkwOCwgOTE3NTk2LCAxNjM5LCAwLCAwLCAKLSAgICA3NDE1NywgNjMyNywgNjcyNCwgMCwgMTI4MDg2LCA5MjU2NiwgMCwgNDgxNywgNzg0NDYsIDE5NDc1OSwgOTI1MzYsIDcwNDMsIAotICAgIDk2MDAsIDExMDIyLCAwLCAwLCAwLCAwLCAwLCAwLCA3NTQ4LCA2NDc5NCwgNDIwNTAsIDEyMjkxLCA1NTI4OSwgMTk0NzYxLCAKLSAgICAxMjM0MywgNjU3LCAxOTUwNTQsIDQyNzA1LCA0NDYxLCAxMTM0LCAxODM4LCA3ODQzOCwgMjA1NywgMCwgNDQ2OCwgMCwgMCwgCi0gICAgMCwgNDQ1NiwgNTIwNiwgMTA3MjAsIDAsIDQyNTIzLCAxMjc1MjAsIDAsIDAsIDkxNzU5NSwgNjU1NTAsIDI2MCwgNDgxNiwgCi0gICAgNjc2NTgsIDEwNjg3LCAwLCA0ODIxLCA0NDY2LCAwLCAxOTUwNDMsIDQ4MTgsIDE5NTA0OCwgNDE0MDMsIDExOTk3NywgMCwgCi0gICAgMCwgNDE0MDYsIDQzMjczLCA3NDE2MCwgMTE5OTgzLCA3MzkzOSwgOTI2MzgsIDExOTk4NCwgMTE5OTc5LCA0MTQwNCwgCi0gICAgMTE2NSwgMTE5OTgwLCA0NDUxLCAxMzA4NywgMCwgMTEyODQsIDExOTk4NywgNzM4NTUsIDY1MTU1LCA0MzAxNCwgNTQzOSwgCi0gICAgOTM2MywgMTI3NTU4LCAzMzc1LCAxMjg4NjksIDU5MDAsIDAsIDc4ODksIDI3MjIsIDQyMjYyLCAwLCAwLCAxMjg3NzQsIDAsIAotICAgIDAsIDAsIDEyNzgxMCwgMTE0MDEsIDAsIDAsIDY4NDU5LCAwLCAwLCAwLCAwLCA2NTQzOCwgMCwgNzI4MCwgMTI3ODg3LCAwLCAKLSAgICAxMjczODEsIDQ4NjgsIDExOTk2NywgMTE5OTY2LCAxMTg3OTgsIDAsIDAsIDQzMTYxLCAwLCA5MjM2MCwgMCwgNTE4MiwgMCwgCi0gICAgMTIwNTQyLCAwLCAwLCA0MjI2LCAxMjA3OTgsIDEyMTM1LCA1NzMyLCA0NDY0LCAwLCAwLCA5NzcsIDQ0NTgsIDAsIDAsIAotICAgIDY0NzcwLCA3NDgzOCwgMCwgMzQ0LCAwLCAxOTQ3OTAsIDEzOTUsIDY0Mjc5LCAwLCA5MjI0MCwgMCwgNzg2LCAwLCA0MzE3NCwgCi0gICAgNjQzNDAsIDAsIDAsIDEyMDcyMywgNDMwMjYsIDc2MTIsIDEwMTMyLCA2NDQxMywgNjUwMjUsIDAsIDAsIDAsIDAsIDAsIAotICAgIDY4NDQ0LCAwLCA5MjQzNywgMCwgMTE5MTYwLCAxMDIwNCwgOTI2NTYsIDAsIDEyNzgwOSwgMCwgMTM5OSwgMCwgNjUyMTcsIAotICAgIDAsIDg4NTIsIDAsIDI0MSwgMTI4NzgwLCA0OTA3LCAwLCAwLCA3OTMyLCA5NzI3LCAxMjg4NzMsIDc0MjU1LCA4NzQ4LCAwLCAKLSAgICAwLCAwLCAwLCA0Mjc4MCwgMCwgMCwgMCwgNDIxNywgMCwgODY1MCwgMCwgMCwgMCwgMCwgMTE4ODcyLCA0MzA5OSwgMzk2NSwgCi0gICAgMTE5MTE5LCA2NzE5LCAwLCAxMzMwMCwgNzg0MzksIDEyODI2MSwgNDMwNTcsIDY2NTg4LCAxMTg5OTEsIDAsIDAsIDczODE1LCAKLSAgICA0NDIwLCAwLCA2NDEwLCA3NzYwLCAwLCAwLCAwLCAwLCAwLCA3Mjk0LCAwLCAwLCAwLCA5MDY2LCAwLCAxMTk5MywgNDMxODgsIAotICAgIDI2MjYsIDc3NjIsIDAsIDAsIDAsIDkyNjAxLCA0MjgyNSwgNDE4NTQsIDUzMDQsIDAsIDc4NTE2LCA2OTE5LCA4NjE5LCAKLSAgICAxMTk2NTUsIDEwMDM4LCA2NjQ1NCwgOTU5MiwgNDI4NTEsIDEyNjk5MywgMTU0MiwgOTIzMDMsIDAsIDAsIDAsIDAsIAotICAgIDc0MzExLCA3ODQ5NywgMCwgMTAxODEsIDAsIDQzNjI0LCAwLCA3Nzc5LCAwLCAxMDE5NSwgOTQ3OSwgNjAyOSwgMCwgCi0gICAgOTIyNjgsIDk2ODksIDAsIDAsIDg5OTMsIDY2MzU4LCAwLCA0MjM3OCwgMzM2OCwgNjA2LCAxMjcwMzAsIDc2OTcsIDY5MjM3LCAKLSAgICA2OTc4NywgMjAzMCwgMCwgNjAyNywgODM3MCwgNDMyMiwgMCwgNjUyMDcsIDAsIDAsIDAsIDAsIDAsIDI3MzUsIDQyODMxLCAKLSAgICA3NzkzNSwgMTI3MTIwLCA3NDg2NiwgODg4MSwgMTE5MDQ3LCAwLCAwLCA3Mzk0NiwgMCwgMCwgMCwgNjgxNDAsIDAsIDk1NzYsIAotICAgIDEyODg3MiwgMzM0NywgNDE2MCwgNTE1NCwgNTUyODgsIDM3OTQsIDY2NTY0LCA4NTMwLCAxMjcwNjMsIDc3MDksIDQxMTEyLCAKLSAgICAwLCA2NjU2MCwgNDIwNDEsIDQ1NzIsIDEyODc2LCA2NjU2MSwgMCwgNjc1OCwgMCwgMTYxNSwgNTg1NSwgODA5LCAwLCAKLSAgICA5MjI4MywgMTI4MzE2LCAxMjgwMDQsIDU3OTksIDAsIDAsIDAsIDcyNjAsIDAsIDQzMDMxLCA2NDQyNSwgNjUxMjgsIAotICAgIDc4ODE5LCA2NDM4NiwgNjUyNTcsIDAsIDY4NjE2LCAxMjA2MDcsIDkzNDcsIDEyODA2NywgNjUzMiwgMCwgMCwgMCwgCi0gICAgMTI3MDYwLCA2NTgyOCwgMCwgMjgzLCA2ODY2NSwgNzg4MTMsIDUzMiwgNzg2NjMsIDAsIDAsIDEyMDYwOSwgMCwgMzM3MCwgCi0gICAgMCwgMTEzNjEsIDU0NDMsIDc4Nzc4LCA4MTUzLCA3Mzc2NywgMCwgMTA3NDEsIDAsIDAsIDAsIDAsIDY1NDk1LCA2NDcwNiwgCi0gICAgMCwgNDMzNDQsIDAsIDcxNDQsIDk0NjYsIDc4ODY2LCA5ODI0LCAwLCAwLCAwLCAwLCA5MTUsIDQzNDI1LCAwLCAwLCAwLCAwLCAKLSAgICAxMjcxNzgsIDQzMjY0LCAwLCAwLCAwLCAwLCA3ODg2NCwgNjczMCwgNzg4NjIsIDY4MTYxLCA2NDU1MCwgNTE4NiwgMTI4OTAsIAotICAgIDEyNzgzNywgMCwgMTIxMDgsIDAsIDY1MTI0LCA0MzEyNywgNjYwNDMsIDAsIDYzMjYsIDQzMTA3LCA3NzgyNiwgMCwgCi0gICAgNDI1NjIsIDAsIDAsIDAsIDEyODUyMCwgMTE0ODUsIDYxMDMsIDEyNzEyMywgMCwgMTE3MTgsIDAsIDEyODg5LCA5MjY1NywgCi0gICAgMTI3MTM3LCAwLCAwLCAwLCA1NTI0NSwgMCwgMTYzMCwgMTI4MjMyLCA2NTQ4MywgMCwgMTI1NjUsIDAsIDY1NDc2LCAKLSAgICAxMjAwMTMsIDAsIDExOTU1NCwgOTI4MywgNzcwMCwgOTE3NTM3LCA5NjkwLCA2NTQ5OSwgMCwgNjQ1OTMsIDUxMiwgMzM3NiwgCi0gICAgNjgyMTAsIDAsIDAsIDc3ODkyLCA2MzIsIDEyOTQwLCA3Nzg5MSwgNDI1MjksIDc4NTg3LCAwLCA1OTU3LCAxMTA1OTMsIAotICAgIDg5MjYsIDAsIDAsIDEyODI3MywgMTA3NDUsIDEwMTc0LCA3Mzc5LCA2NDU4MSwgNTM4NiwgMTIwNjg2LCAxMTcxMywgCi0gICAgMTA2MzMsIDY5NzA4LCA1MDU2LCAwLCAwLCAwLCAxMjA3NzMsIDAsIDk4MTIsIDAsIDQ0NjAsIDAsIDAsIDAsIDEyODAzOCwgCi0gICAgMCwgMCwgMTI3MTc0LCA2NDI3OCwgOTIzNzAsIDQzNDY2LCAwLCAwLCA2NDM4OSwgMjk1MywgNzM4NzksIDE4MDEsIDEyODM1LCAKLSAgICAxMTkwMjksIDAsIDczODIzLCAwLCA2NjM3NSwgMjA4NSwgNzAyLCA0MjU3OSwgNzc4ODQsIDc3ODg1LCAxMzA3NCwgNzc4ODMsIAotICAgIDAsIDAsIDEyODU3MCwgMTIxMDYsIDAsIDc0MjA3LCAxNzU1LCAxMDQ4MiwgMTI4NjMsIDc3ODk4LCAxMTYzLCAyOTUxLCAKLSAgICA5NTIyLCA3NDA3OSwgNzgyNjYsIDEyMDY3NCwgMCwgMzM4NCwgNjkyMjcsIDEwNzAyLCA4MzAsIDc3OTAyLCA3Nzg5OSwgCisgICAgMTIyOTYsIDY4NDU3LCA3MzgzNCwgNjgxNzcsIDExMDUwLCAxMDk4NCwgOTIyMDgsIDAsIDAsIDkyMTgyLCAwLCA5ODM2MDUsIAorICAgIDk1MzIsIDY2MzU1LCAwLCA5ODMyMjgsIDkxNzkyNSwgNjQzNDMsIDE5NTAzMiwgMTI4MjgxLCAxOTUwMzEsIDAsIDE5NTAzMCwgCisgICAgMTk1MDU3LCAxMTQ0NSwgMCwgMjExMiwgMTk1MDU2LCAxMjg4MTQsIDEwMTg1LCAxMDIxLCAxMjgxMzAsIDk1MDcsIDEwMjEwLCAKKyAgICA3NDU0NCwgODAyMywgMTIwMCwgMTIyNDMsIDc4MDAxLCA1MjgyLCA3ODAwMywgOTYyNCwgMTE1NDUsIDAsIDEyMDQ5MywgCisgICAgMzM0MywgNDQyNCwgMTEwNDcsIDE4ODUsIDQzMjY4LCAzODk2LCA3ODQ0NCwgNjY0OTcsIDI5NDcsIDM5MiwgNzg5NCwgCisgICAgNDM5MSwgNjgxMzksIDk4MzA2MiwgMTMwNTksIDc0ODE2LCA3Nzk5OCwgMzM4MSwgNzk0MiwgMCwgNjkyMTksIDAsIDY0NzU3LCAKKyAgICAwLCAzOTEzLCAwLCAwLCA3ODIzNSwgNzA0NCwgMTI2NSwgMCwgNjMwOSwgNzA0NSwgNzE3NSwgNzA0NywgNzgyMzksIAorICAgIDExNzkxLCAwLCAwLCA4MjIxLCA3ODMwNywgNDE4NjQsIDAsIDAsIDAsIDAsIDE2NywgOTgzODk3LCA3ODMwMSwgOTgzNjQ0LCAKKyAgICA3NDIxMSwgNDE4OTcsIDY4NDc3LCAwLCA5MTc1ODMsIDk4MzYyNSwgOTQwNjUsIDI0OTMsIDAsIDExODgxMSwgMCwgMCwgCisgICAgNjQzNTQsIDAsIDg3NzcsIDAsIDQwNiwgODg4NCwgMjM4NSwgMCwgOTI0NTAsIDAsIDkxNzU3MywgNDMwMzAsIDQyMDI3LCAKKyAgICAxMjExNCwgMCwgOTE3NTc5LCA2NDkzNiwgMTk0Njk1LCAwLCAxMjA2MjksIDEwNTYxLCAwLCA4MzY1LCAxMjA1MzksIAorICAgIDk4Mzc2NSwgNjU4NDEsIDEyMDc4NywgMTE2MDEsIDAsIDc0MTIxLCAwLCA5MTc1NzUsIDc4MzQsIDc0MTU5LCAwLCAKKyAgICA5MTc1NzQsIDEwMjk4LCA2NjI0LCA0OTA4LCA5MTc1OTYsIDE2MzksIDAsIDAsIDc0MTU3LCA2MzI3LCA2NzI0LCAwLCAKKyAgICAxMjgwODYsIDkyNTY2LCA2OTkxMCwgNDgxNywgNzg0NDYsIDE5NDc1OSwgOTI1MzYsIDcwNDMsIDk2MDAsIDExMDIyLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA3NTQ4LCA2NDc5NCwgNDIwNTAsIDEyMjkxLCA1NTI4OSwgMTk0NzYxLCAxMjM0MywgNjU3LCAKKyAgICAxOTUwNTQsIDQyNzA1LCA0NDYxLCAxMTM0LCAxODM4LCA3ODQzOCwgMjA1NywgMCwgNDQ2OCwgMCwgMCwgMCwgNDQ1NiwgCisgICAgNTIwNiwgMTA3MjAsIDAsIDQyNTIzLCAxMjc1MjAsIDAsIDAsIDkxNzU5NSwgNjU1NTAsIDI2MCwgNDgxNiwgNjc2NTgsIAorICAgIDEwNjg3LCAwLCA0ODIxLCA0NDY2LCAwLCAxOTUwNDMsIDQ4MTgsIDE5NTA0OCwgNDE0MDMsIDExOTk3NywgMCwgMCwgCisgICAgNDE0MDYsIDQzMjczLCA3NDE2MCwgMTE5OTgzLCA3MzkzOSwgOTI2MzgsIDExOTk4NCwgMTE5OTc5LCA0MTQwNCwgMTE2NSwgCisgICAgMTE5OTgwLCA0NDUxLCAxMzA4NywgMCwgMTEyODQsIDExOTk4NywgNzAwOTcsIDY1MTU1LCA0MzAxNCwgNTQzOSwgOTM2MywgCisgICAgNzAwNzAsIDMzNzUsIDEyODg2OSwgNTkwMCwgOTM5OTAsIDc4ODksIDI3MjIsIDQyMjYyLCAwLCAwLCAxMjg3NzQsIDAsIAorICAgIDIyODIsIDAsIDEyNzgxMCwgMTE0MDEsIDk4MzgxMywgMCwgNjg0NTksIDAsIDAsIDAsIDAsIDY1NDM4LCAwLCA3MjgwLCAKKyAgICAxMjc4ODcsIDAsIDEyNzM4MSwgNDg2OCwgMTE5OTY3LCAxMTk5NjYsIDExODc5OCwgMCwgMCwgNDMxNjEsIDAsIDkyMzYwLCAKKyAgICAwLCA1MTgyLCAwLCAxMjA1NDIsIDAsIDAsIDQyMjYsIDExOTI0MywgMTIxMzUsIDU3MzIsIDQ0NjQsIDAsIDcxMzMwLCA5NzcsIAorICAgIDQ0NTgsIDAsIDAsIDY0NzcwLCA3NDgzOCwgMCwgMzQ0LCAwLCAxOTQ3OTAsIDEzOTUsIDY0Mjc5LCAwLCA5MjI0MCwgMCwgCisgICAgNzg2LCAwLCA0MzE3NCwgNjQzNDAsIDAsIDE5NDc2NywgMTIwNzIzLCA0MzAyNiwgNzYxMiwgMTAxMzIsIDY0NDEzLCAKKyAgICA2NTAyNSwgMCwgMCwgMCwgOTM5NTYsIDAsIDY4NDQ0LCAwLCA5MjQzNywgMCwgMTE5MTYwLCAxMDIwNCwgOTI2NTYsIDAsIAorICAgIDEyNzgwOSwgOTgzNjM1LCAxMzk5LCA5ODM2NDMsIDY1MjE3LCAwLCA4ODUyLCAxMjg1NzEsIDI0MSwgMTI4NzgwLCA0OTA3LCAKKyAgICAwLCA5ODM2MzAsIDc5MzIsIDk3MjcsIDEyODg3MywgNzQyNTUsIDg3NDgsIDAsIDAsIDk4MzYzNCwgMCwgNDI3ODAsIDAsIDAsIAorICAgIDAsIDQyMTcsIDAsIDg2NTAsIDAsIDAsIDAsIDY5OTAwLCAxMTg4NzIsIDQzMDk5LCAzOTY1LCAxMTkxMTksIDY3MTksIDAsIAorICAgIDEzMzAwLCA3ODQzOSwgOTM5NzEsIDQzMDU3LCA2NjU4OCwgMTE4OTkxLCAwLCAwLCA3MzgxNSwgNDQyMCwgMCwgNjQxMCwgCisgICAgNzc2MCwgMCwgMCwgMCwgMCwgMCwgNzI5NCwgMCwgMCwgMCwgOTA2NiwgMCwgMTE5OTMsIDQzMTg4LCAyNjI2LCA3NzYyLCAwLCAKKyAgICAwLCAwLCA5MjYwMSwgNDI4MjUsIDQxODU0LCA1MzA0LCAwLCA3ODUxNiwgNjkxOSwgODYxOSwgMTE5NjU1LCAxMDAzOCwgCisgICAgNjY0NTQsIDk1OTIsIDQyODUxLCAxMjY5OTMsIDE1NDIsIDkyMzAzLCAwLCAwLCAwLCAwLCA3NDMxMSwgNzg0OTcsIDAsIAorICAgIDEwMTgxLCAwLCA0MzYyNCwgMCwgNzc3OSwgMCwgMTAxOTUsIDk0NzksIDYwMjksIDAsIDkyMjY4LCA5Njg5LCAwLCA2NTU3NywgCisgICAgODk5MywgNjYzNTgsIDAsIDQyMzc4LCAzMzY4LCA2MDYsIDEyNzAzMCwgNzY5NywgNjkyMzcsIDY5Nzg3LCAyMDMwLCAwLCAKKyAgICA2MDI3LCA4MzcwLCA0MzIyLCAwLCA2NTIwNywgMCwgOTgzMzMxLCA5ODMzMzAsIDk4MzMyOSwgOTgzMzI4LCAyNzM1LCAKKyAgICA0MjgzMSwgNzc5MzUsIDEyNzEyMCwgNzQ4NjYsIDg4ODEsIDExOTA0NywgMCwgMCwgNzM5NDYsIDAsIDAsIDAsIDY4MTQwLCAKKyAgICA5ODM5MTksIDk1NzYsIDEyODg3MiwgMzM0NywgNDE2MCwgNTE1NCwgNTUyODgsIDM3OTQsIDY2NTY0LCA4NTMwLCAxMjcwNjMsIAorICAgIDc3MDksIDQxMTEyLCA5ODMxMzIsIDY2NTYwLCA0MjA0MSwgNDU3MiwgMTI4NzYsIDY2NTYxLCA5ODM3NDksIDY3NTgsIAorICAgIDk4MzkxNywgMTYxNSwgNTg1NSwgODA5LCAwLCA5MjI4MywgMTI4MzE2LCAxMjgwMDQsIDU3OTksIDk4MzMyMCwgNzAxMDAsIAorICAgIDk4MzMxOCwgNzI2MCwgOTgzMzE2LCA0MzAzMSwgNjQ0MjUsIDY1MTI4LCA3ODgxOSwgNjQzODYsIDY1MjU3LCAwLCA2ODYxNiwgCisgICAgMTIwNjA3LCA5MzQ3LCAxMjgwNjcsIDY1MzIsIDAsIDAsIDAsIDEyNzA2MCwgNjU4MjgsIDAsIDI4MywgNjg2NjUsIDc4ODEzLCAKKyAgICA1MzIsIDc4NjYzLCAwLCA5ODM3ODcsIDEyMDYwOSwgMCwgMzM3MCwgMCwgMTEzNjEsIDU0NDMsIDc4Nzc4LCA4MTUzLCAKKyAgICA3Mzc2NywgMCwgMTA3NDEsIDAsIDIyOTgsIDAsIDk4MzkwOCwgNjU0OTUsIDY0NzA2LCA5ODMzMTAsIDQzMzQ0LCA5ODMzMDgsIAorICAgIDcxNDQsIDk0NjYsIDc4ODY2LCA5ODI0LCA5ODMzMDMsIDk4MzMwMiwgMCwgMCwgOTE1LCA0MzQyNSwgMCwgMCwgMCwgMCwgCisgICAgMTI3MTc4LCA0MzI2NCwgNzAwOTYsIDAsIDAsIDQzMDM4LCA3ODg2NCwgNjczMCwgNzg4NjIsIDY4MTYxLCA2NDU1MCwgCisgICAgNTE4NiwgNzM2MCwgMTI3ODM3LCAwLCAxMjEwOCwgMCwgNjUxMjQsIDQzMTI3LCA2NjA0MywgMCwgNjMyNiwgNDMxMDcsIAorICAgIDc3ODI2LCAwLCA0MjU2MiwgMCwgMTI4ODIxLCAwLCAxMjg1MjAsIDExNDg1LCA2MTAzLCAxMjcxMjMsIDk4MzI5NywgCisgICAgMTE3MTgsIDk4MzI5NSwgMTI4ODksIDkyNjU3LCAxMjcxMzcsIDAsIDAsIDAsIDU1MjQ1LCAwLCAxNjMwLCAxMjgyMzIsIAorICAgIDY1NDgzLCAwLCAxMjU2NSwgMCwgNjU0NzYsIDEyMDAxMywgMCwgMTE5NTU0LCA5MjgzLCA3NzAwLCA5MTc1MzcsIDk2OTAsIAorICAgIDY1NDk5LCAwLCA2NDU5MywgNTEyLCAzMzc2LCA2ODIxMCwgMCwgMTI4Njc3LCA3Nzg5MiwgNjMyLCAxMjk0MCwgNzc4OTEsIAorICAgIDQyNTI5LCA3ODU4NywgMCwgNTk1NywgMTEwNTkzLCA4OTI2LCA5ODMyOTEsIDk4MzI5MCwgMTI4MjczLCAxMDc0NSwgCisgICAgMTAxNzQsIDczNzksIDY0NTgxLCA1Mzg2LCAxMjA2ODYsIDExNzEzLCAxMDYzMywgNjk3MDgsIDUwNTYsIDAsIDAsIDAsIAorICAgIDEyMDc3MywgMCwgOTgxMiwgMCwgNDQ2MCwgMCwgMCwgNzEzMDcsIDEyODAzOCwgMCwgMCwgMTI3MTc0LCA2NDI3OCwgCisgICAgOTIzNzAsIDQzNDY2LCAwLCAwLCA2NDM4OSwgMjk1MywgNzM4NzksIDE4MDEsIDEyODM1LCAxMTkwMjksIDAsIDczODIzLCAwLCAKKyAgICA2NjM3NSwgMjA4NSwgNzAyLCA0MjU3OSwgNzc4ODQsIDc3ODg1LCAxMzA3NCwgNzc4ODMsIDk4MzI3OCwgOTgzMjc3LCAKKyAgICAxMjg1NzAsIDEyMTA2LCA5ODMyNzQsIDc0MjA3LCAxNzU1LCAxMDQ4MiwgMTI4NjMsIDc3ODk4LCAxMTYzLCAyOTUxLCAKKyAgICA5NTIyLCA3NDA3OSwgNzgyNjYsIDY2NjA0LCAwLCAzMzg0LCA2OTIyNywgMTA3MDIsIDgzMCwgNzc5MDIsIDc3ODk5LCAKICAgICA3NzkwMCwgODQ1MSwgMCwgMCwgMCwgNjk3MzksIDAsIDAsIDAsIDAsIDI5MDgsIDAsIDQzMzg2LCA2NDkwMiwgNDI0MywgMCwgCi0gICAgMTIyMzksIDAsIDAsIDQ0NDEsIDAsIDAsIDczOTQwLCA2NDM1MiwgMTI3NTEzLCAwLCA0MTEsIDAsIDkxOTksIDAsIDQwNTYsIAotICAgIDExODk5MiwgNDE4OTAsIDAsIDI3MzAsIDQxNjA0LCAwLCA1NDI4LCAxOTQ3NDMsIDMzNjQsIDQyMjY1LCA2NDQzNywgCi0gICAgMTI3OTM1LCAxMTg4MTYsIDE5NDc0MiwgOTY4NCwgMjE2LCAwLCAxNDAxLCAxMjgwNTMsIDQ0MDEyLCAwLCAwLCA5MjU4NSwgCi0gICAgOTE1OCwgNzc4NDIsIDEyMDY2NCwgNTc2OCwgMCwgMCwgMCwgNDg0LCAxOTQ3MzksIDAsIDAsIDY1ODk1LCAwLCAwLCAzMzM4LCAKLSAgICA3MzkzNSwgNTcyLCA3MDQxLCAyNzM2LCA2NzYwNSwgMCwgMTI4NjgwLCAyNzk0LCA4ODA3LCA2NDQ5MSwgNzc4NDcsIDU0MzgsIAotICAgIDUyMjIsIDUzODEsIDQzMTE0LCAwLCA1MTkzLCA1MTI1LCA1NDU2LCA1NTA5LCA3Nzg0NiwgMTk0NzQ3LCA5NTM0LCAwLCAwLCAKLSAgICAwLCAzNDMwLCAwLCAwLCAwLCAwLCA5ODEsIDAsIDQzMzAsIDczOTI5LCAxMjA1MzYsIDE4MjQsIDEwOTA4LCAwLCA3MDM0LCAKLSAgICA0MTY4MywgNjQ2MTcsIDAsIDczNzU0LCAzOTU3LCA2NDM1OCwgNjQ1NDcsIDEyODI1OSwgNjc0LCA2Mzk5MSwgMCwgMjk0NiwgCi0gICAgNTM1NCwgNTI1MSwgNTMyOCwgNTMwNywgMzc1OSwgMTE0MTEsIDgzNjQsIDUxMjMsIDExOTYyOCwgNTI4MSwgNTQ2OSwgCi0gICAgNTEyMSwgMTE5MjQ1LCAxMTg5OTMsIDAsIDUxMzAsIDAsIDAsIDc3OTkwLCAwLCAxMjA3MjYsIDEyMjEsIDI3MzMsIDExNzQ2LCAKLSAgICA3Nzk5MSwgNTIxNiwgMCwgMCwgMCwgMCwgMzQ2OCwgNzAzMywgOTIzMCwgNTkzOSwgMTk1MDUyLCAwLCAwLCAxMjA2NzcsIAotICAgIDY4NDAwLCA3Mjc4LCAxMDMyMSwgMTAyODksIDY0NjEzLCAxMDM4NSwgNDE3MDYsIDAsIDAsIDAsIDAsIDExNzM5LCAwLCAKLSAgICA0MTk4MSwgMCwgNTkzOCwgMCwgMCwgMTI0NDgsIDc1NzYsIDEwNDAxLCAxMDMzNywgNzM4NTIsIDAsIDEzMDU3LCAwLCAKLSAgICAxMjY5NzYsIDAsIDEwMDA5LCAwLCA0MTcwMywgMCwgMTIxNjUsIDAsIDAsIDk4ODUsIDAsIDgwNzcsIDAsIDEyNzkwOCwgMCwgCi0gICAgMCwgMCwgOTI0NTcsIDAsIDQyMjAsIDEwNzI1LCAxMDQzMywgMCwgNjgzOTUsIDQ5ODcsIDY0NTE5LCAwLCAxMjgzNDAsIDAsIAotICAgIDAsIDAsIDEwOTcwLCAxMTczMywgMCwgMTIwNzkyLCAwLCAxOTk0NCwgMCwgOTAwOSwgODU1MSwgOTIzNDUsIDExNDY4LCAKLSAgICA2NDYzNiwgNzU3NSwgMCwgMjcyNCwgMCwgMCwgMTIzMTMsIDExMDU5MiwgNTE1LCAxMTk5NDcsIDQyNzkxLCA2Mzk4NywgCi0gICAgNzgyODYsIDExOTk0MywgMTE5OTQwLCAxMTk5NDEsIDExOTkzOCwgOTc3NSwgNDA0NiwgNDU4OSwgNDUyMSwgNjg2MjksIAotICAgIDkxNDEsIDAsIDc4ODUwLCAyNzQxLCA2NDM5OSwgNjE5NywgMTM3MCwgMCwgMCwgMCwgMCwgMCwgMCwgNjE4NCwgODYwNiwgCi0gICAgMzMwMywgNDEzNzIsIDExNzg2LCA5NDczLCA2NjIwMywgNjYxNzcsIDkyNDQ2LCAxMTU5MywgNDMwMDcsIDQ0NzgsIDY2MTc4LCAKLSAgICAwLCAwLCAyNzQ0LCAwLCA0NDc3LCAxMTg5NjQsIDgxNCwgNDIwNjYsIDY2MTgzLCA2NjIwNCwgNDM3ODYsIDExOTk2MSwgCi0gICAgNjYxOTgsIDQxODgwLCA2NjE4OCwgNjYxOTcsIDc4MTQ4LCAxMTk1NSwgNjYxOTAsIDY2MTkxLCA0MTExMSwgNjYxODksIAotICAgIDczNzg4LCA3Nzg4LCA0ODQ3LCAwLCAxMjc3NTksIDAsIDAsIDAsIDE1ODEsIDY1MzUsIDc4MTYxLCAxMjk1NCwgNDMwLCAKLSAgICA3ODE2MCwgNTUyNTksIDc4MTU4LCAxMjgwMzYsIDUyNzgsIDQ5NDUsIDQyODgzLCA0OTUwLCAwLCA2ODYyNSwgMCwgNzI2OSwgCi0gICAgMCwgNTk2NCwgMTI5MDgsIDAsIDAsIDc0NzY0LCA3NDQ3NywgMTE5MTQ2LCAxOTQ5MzYsIDQ5NDksIDAsIDQ0MywgMCwgCi0gICAgNDk0NCwgNTQ2NywgMTE5NjAzLCAwLCA2NTEzNywgNjA0NCwgNjUzOTIsIDAsIDQyMTMsIDAsIDQxMzAzLCAwLCAxOTQ5MzEsIAotICAgIDExOTk2MiwgNDEzMDYsIDczOTg0LCAyNjk4LCAxMjcxNTksIDAsIDEyMDcyLCAzMTkzLCAwLCA0MTMwNCwgODI0LCAKLSAgICAxMjg2NzYsIDEyMDkxLCA3ODg5MywgNzg4OTQsIDExOTgxNiwgNDY3MywgNjQ4MDQsIDQ2NzgsIDExOTgyMCwgMTE5ODE5LCAKLSAgICA2NTA1OSwgMCwgNjczOSwgMCwgNTQ4MSwgMzQ5MCwgMTE5OSwgMTE5ODExLCA4MzU2LCAxMTk4MjksIDExOTgzMiwgNDY3NywgCi0gICAgMTI2ODgsIDMxMDIsIDAsIDQ2NzIsIDc4MTczLCA3ODE3NSwgNTUzMSwgNjgzNjcsIDQyNTc1LCA3ODE3MCwgNzgxNjYsIAotICAgIDQ2NzQsIDQ1NDgsIDQ0MDA1LCAxMTk5NDksIDY4NjU4LCAxMTk5NDYsIDgwMjUsIDY4NjMwLCAxMjcwMjQsIDE4NTUsIDAsIAotICAgIDY4NjY5LCAwLCA5MjQ0NSwgMTI3NTU0LCAwLCAwLCAxMTk2NTIsIDI3NDUsIDExNzk3LCAwLCAxMjgxNTksIDkyMDIsIAotICAgIDQ2NTQsIDAsIDAsIDY4NjM4LCA3Mzk5MywgMTA1MjUsIDQ2NDksIDY1MjA5LCAwLCAwLCA0NjQ4LCA0MzA4MCwgMCwgMCwgMCwgCi0gICAgNjI0NiwgNjQ5NTAsIDc4MjgsIDQ2NTAsIDY3NzcsIDY3NzYsIDY3NzUsIDQ2NTMsIDc4MjIsIDc4MDA1LCA5MjM4NCwgCi0gICAgNDMxODcsIDg2NjksIDAsIDY4MjEsIDY1MDkzLCAwLCA3ODg4MSwgMjcxNiwgMCwgMCwgMCwgMCwgNjgzNjksIDEyMDA1NCwgCisgICAgMTIyMzksIDAsIDAsIDQ0NDEsIDAsIDk4MzI3MSwgNzM5NDAsIDY0MzUyLCAxMjc1MTMsIDk4MzI2NywgNDExLCA5ODMyNjUsIAorICAgIDkxOTksIDk4MzI2MywgNDA1NiwgMTE4OTkyLCA0MTg5MCwgMCwgMjczMCwgNDE2MDQsIDk4MzkyOCwgNTQyOCwgMTk0NzQzLCAKKyAgICAzMzY0LCA0MjI2NSwgNjQ0MzcsIDEyNzkzNSwgMTE4ODE2LCAxOTQ3NDIsIDk2ODQsIDIxNiwgMCwgMTQwMSwgMTI4MDUzLCAKKyAgICA0NDAxMiwgMCwgMCwgOTI1ODUsIDkxNTgsIDc3ODQyLCA2OTkwNSwgNTc2OCwgMCwgMCwgMCwgNDg0LCAxOTQ3MzksIDAsIDAsIAorICAgIDY1ODk1LCAwLCAwLCAzMzM4LCA3MzkzNSwgNTcyLCA3MDQxLCAyNzM2LCA2NzYwNSwgOTgzMjU1LCA5Mzk2MiwgMjc5NCwgCisgICAgODgwNywgNjQ0OTEsIDc3ODQ3LCA1NDM4LCA1MjIyLCA1MzgxLCA0MzExNCwgMCwgNTE5MywgNTEyNSwgNTQ1NiwgNTUwOSwgCisgICAgNzc4NDYsIDE5NDc0NywgOTUzNCwgMCwgMCwgMCwgMzQzMCwgMCwgMCwgNzg3MTcsIDAsIDk4MSwgMCwgNDMzMCwgNzM5MjksIAorICAgIDEyMDUzNiwgMTgyNCwgMTA5MDgsIDAsIDcwMzQsIDQxNjgzLCA2NDYxNywgMCwgNzM3NTQsIDM5NTcsIDY0MzU4LCA2NDU0NywgCisgICAgMTI4MjU5LCA2NzQsIDYzOTkxLCA5ODMyNDMsIDI5NDYsIDUzNTQsIDUyNTEsIDUzMjgsIDUzMDcsIDM3NTksIDExNDExLCAKKyAgICA4MzY0LCA1MTIzLCAxMTk2MjgsIDUyODEsIDU0NjksIDUxMjEsIDExOTI0NSwgMTE4OTkzLCAwLCA1MTMwLCAwLCAwLCAKKyAgICA3Nzk5MCwgMCwgMTIwNzI2LCAxMjIxLCAyNzMzLCAxMTc0NiwgNzc5OTEsIDUyMTYsIDAsIDAsIDAsIDAsIDM0NjgsIDcwMzMsIAorICAgIDkyMzAsIDU5MzksIDE5NTA1MiwgMCwgMCwgMTIwNjc3LCA2ODQwMCwgNzI3OCwgMTAzMjEsIDEwMjg5LCA2NDYxMywgCisgICAgMTAzODUsIDQxNzA2LCAwLCAwLCA5ODM0MDUsIDAsIDExNzM5LCA5ODM0MTgsIDQxOTgxLCAwLCA1OTM4LCAwLCA0Mzc2NiwgCisgICAgMTI0NDgsIDc1NzYsIDEwNDAxLCAxMDMzNywgNzM4NTIsIDAsIDEzMDU3LCAwLCAxMjY5NzYsIDAsIDEwMDA5LCAwLCAKKyAgICA0MTcwMywgOTgzNjI5LCAxMjE2NSwgMCwgMCwgOTg4NSwgMCwgODA3NywgMCwgMTI3OTA4LCAwLCAwLCAwLCA5MjQ1NywgMCwgCisgICAgNDIyMCwgMTA3MjUsIDEwNDMzLCAwLCA2ODM5NSwgNDk4NywgNjQ1MTksIDAsIDEyODM0MCwgMCwgMCwgMCwgMTA5NzAsIAorICAgIDExNzMzLCAwLCAxMjA3OTIsIDAsIDE5OTQ0LCAwLCA5MDA5LCA4NTUxLCA5MjM0NSwgMTE0NjgsIDY0NjM2LCA3NTc1LCAwLCAKKyAgICAyNzI0LCAwLCAwLCAxMjMxMywgMTEwNTkyLCA1MTUsIDExOTk0NywgNDI3OTEsIDYzOTg3LCA3ODI4NiwgMTE5OTQzLCAKKyAgICAxMTk5NDAsIDExOTk0MSwgMTE5OTM4LCA5Nzc1LCA0MDQ2LCA0NTg5LCA0NTIxLCA2ODYyOSwgOTE0MSwgMCwgNzg4NTAsIAorICAgIDI3NDEsIDY0Mzk5LCA2MTk3LCAxMzcwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MTg0LCA4NjA2LCAzMzAzLCA0MTM3MiwgCisgICAgMTE3ODYsIDk0NzMsIDY2MjAzLCA2NjE3NywgOTI0NDYsIDExNTkzLCA0MzAwNywgNDQ3OCwgNjYxNzgsIDAsIDAsIDI3NDQsIAorICAgIDAsIDQ0NzcsIDExODk2NCwgODE0LCA0MjA2NiwgNjYxODMsIDY2MjA0LCA0Mzc4NiwgMTE5OTYxLCA2NjE5OCwgNDE4ODAsIAorICAgIDY2MTg4LCAxMTYyMywgNzgxNDgsIDExOTU1LCA2NjE5MCwgNjYxOTEsIDQxMTExLCA2NjE4OSwgNzM3ODgsIDc3ODgsIAorICAgIDQ4NDcsIDAsIDEyNzc1OSwgMCwgMCwgMCwgMTU4MSwgNjUzNSwgNzgxNjEsIDEyOTU0LCA0MzAsIDc4MTYwLCA1NTI1OSwgCisgICAgNzgxNTgsIDEyODAzNiwgNTI3OCwgNDk0NSwgNDI4ODMsIDQ5NTAsIDk4MzQzMCwgNjg2MjUsIDk4MzQyOCwgNzI2OSwgMCwgCisgICAgNTk2NCwgMTI5MDgsIDk4MzU1NSwgMCwgNzQ3NjQsIDc0NDc3LCAxMTkxNDYsIDE5NDkzNiwgNDk0OSwgOTgzNDIxLCA0NDMsIAorICAgIDk4MzQxOSwgNDk0NCwgNTQ2NywgMTE5NjAzLCAwLCA2NTEzNywgNjA0NCwgNjUzOTIsIDAsIDQyMTMsIDAsIDQxMzAzLCAwLCAKKyAgICAxOTQ5MzEsIDExOTk2MiwgNDEzMDYsIDczOTg0LCAyNjk4LCAxMjcxNTksIDAsIDEyMDcyLCAzMTkzLCAwLCA0MTMwNCwgCisgICAgODI0LCAxMjg2NzYsIDEyMDkxLCA3ODg5MywgNzg4OTQsIDExOTgxNiwgNDY3MywgNjQ4MDQsIDQ2NzgsIDExOTgyMCwgCisgICAgMTE5ODE5LCA2NTA1OSwgMCwgNjczOSwgMCwgNTQ4MSwgMzQ5MCwgMTE5OSwgMTE5ODExLCA4MzU2LCA2OTk0NywgMTE5ODMyLCAKKyAgICA0Njc3LCAxMjY4OCwgMzEwMiwgMCwgNDY3MiwgNzgxNzMsIDc4MTc1LCA1NTMxLCA2ODM2NywgNDI1NzUsIDc4MTcwLCAKKyAgICA3ODE2NiwgNDY3NCwgNDU0OCwgNDQwMDUsIDExOTk0OSwgNjg2NTgsIDExOTk0NiwgODAyNSwgNjg2MzAsIDEyNzAyNCwgCisgICAgMTg1NSwgOTgzNDA0LCA2ODY2OSwgOTgzNDAyLCA5MjQ0NSwgMTI3NTU0LCAwLCAxMjczMzksIDExOTY1MiwgMjc0NSwgCisgICAgMTE3OTcsIDk4MzQxMCwgMTI4MTU5LCA5MjAyLCA0NjU0LCA5ODM0MDYsIDk4MzQwOCwgNjg2MzgsIDczOTkzLCAxMDUyNSwgCisgICAgNDY0OSwgNjUyMDksIDk4MzQwOSwgMCwgNDY0OCwgNDMwODAsIDk4MzM5OCwgOTgzMzk5LCA5ODMzOTYsIDYyNDYsIDY0OTUwLCAKKyAgICA3ODI4LCA0NjUwLCA2Nzc3LCA2Nzc2LCA2Nzc1LCA0NjUzLCA3ODIyLCA3ODAwNSwgOTIzODQsIDQzMTg3LCA4NjY5LCAKKyAgICA5ODM0MDcsIDY4MjEsIDY1MDkzLCAwLCA3ODg4MSwgMjcxNiwgMCwgOTgzMDYwLCA5ODM0MTEsIDAsIDY4MzY5LCAxMjAwNTQsIAogICAgIDExMDYwLCA4NTQ3LCAyNzExLCA0MjE2NSwgNzgwMjcsIDc4MDI2LCA3OTkyLCAwLCAwLCA0NjYyLCA3ODAzMywgNzgwMzIsIAogICAgIDkxNDksIDkxNDYsIDU5OSwgMjA4MSwgNzgwMzEsIDc4MDMwLCAxOTQ5NjIsIDQ2NTYsIDEwMTMwLCA2ODQ1MCwgNzgxMSwgCi0gICAgNDA5OTQsIDE5NDk2NSwgNjQxNCwgNTk2NywgNDY1OCwgMzcyNSwgNTcxMywgNTgxNCwgNDY2MSwgNDI0MzQsIDAsIDAsIDAsIAotICAgIDY0OTA0LCA5MDI2LCAxMDgzMywgNzQ4NjQsIDc1NDcsIDQ4NjcsIDAsIDEwMDA4LCAxMDIyMiwgMzA1NCwgMTk0OTU2LCAKLSAgICA5NzQ0LCA3ODg2MCwgNzYwNSwgNDYyMiwgMTE5NjU2LCAwLCAwLCAwLCAwLCAwLCA5MDQ1LCA3ODg4OCwgNDIyNSwgMTk5MjYsIAotICAgIDc4ODg3LCAxMjg4MCwgNjUzMDcsIDQ2MTcsIDc4ODgzLCAwLCA0MTczMiwgNDYxNiwgMTA1MTgsIDEwNDIzLCAxMDM1OSwgMCwgCi0gICAgNTk1OCwgMCwgMCwgNDIxNSwgOTc4OSwgOTE3OTQxLCA0MzIxLCA0NjIxLCAwLCA0MTMxMywgNTIyLCA1MzY4LCAwLCAKLSAgICA2NTgwMywgMCwgNTM2NiwgMTIyMDEsIDUzNzIsIDAsIDAsIDAsIDc3MjAsIDczOTAsIDI2OTYsIDAsIDAsIDQ2MzgsIDAsIAotICAgIDE3OTAsIDc4MjQyLCA1OTY1LCA2NDM2MywgNjY1NjksIDY4NjQ2LCAxOTQ5NjgsIDUzNzYsIDE4MzUsIDUzMzUsIDE5NDk2NiwgCisgICAgNDA5OTQsIDE5NDk2NSwgNjQxNCwgNTk2NywgNDY1OCwgMzcyNSwgNTcxMywgNTgxNCwgNDY2MSwgNDI0MzQsIDk4MzQwMywgCisgICAgMCwgMCwgNjQ5MDQsIDkwMjYsIDEwODMzLCA3NDg2NCwgNzU0NywgNDg2NywgMCwgMTAwMDgsIDEwMjIyLCAzMDU0LCAKKyAgICAxOTQ5NTYsIDk3NDQsIDc4ODYwLCA3NjA1LCA0NjIyLCAxMTk2NTYsIDk4MzM4NywgOTQwNzAsIDk4MzM4NSwgOTgzMzg2LCAKKyAgICA5ODMzODMsIDkwNDUsIDc4ODg4LCA0MjI1LCAxOTkyNiwgNzg4ODcsIDEyODgwLCA2NTMwNywgNDYxNywgNzg4ODMsIAorICAgIDk4MzM3OCwgNDE3MzIsIDQ2MTYsIDEwNTE4LCAxMDQyMywgMTAzNTksIDk4MzM3MiwgNTk1OCwgMCwgOTgzNDI1LCA0MjE1LCAKKyAgICA5Nzg5LCA5MTc5NDEsIDQzMjEsIDQ2MjEsIDk4MzM4MSwgNDEzMTMsIDUyMiwgNTM2OCwgMCwgNjU4MDMsIDAsIDUzNjYsIAorICAgIDEyMjAxLCA1MzcyLCAwLCA5ODM0MDEsIDAsIDc3MjAsIDczOTAsIDI2OTYsIDk4MzM5MiwgMCwgNDYzOCwgOTgzMzk3LCAKKyAgICAxNzkwLCA3ODI0MiwgNTk2NSwgNjQzNjMsIDY2NTY5LCA2ODY0NiwgMTI3ODMzLCA1Mzc2LCAxODM1LCA1MzM1LCAxOTQ5NjYsIAogICAgIDEyODA4OSwgNDYzMywgMCwgNjgxMTksIDExODAsIDQ2MzIsIDEyODA5MywgNTM4NywgNTMzMywgMCwgMCwgNDIwOTQsIAotICAgIDUzMzEsIDQ2MzQsIDExOTI4LCAwLCA1MzM4LCA0NjM3LCAxMjgxNzAsIDU5NzEsIDQyNDE0LCAwLCAxMjY4LCA2NTA5NywgCi0gICAgNDIzNjEsIDAsIDAsIDczODUzLCAxNDI3LCAwLCAwLCA1OTcwLCAzNDMxLCAwLCAxMDM1OCwgMTA0MjIsIDQ3NTgsIDAsIAotICAgIDE2MDgsIDI3MzgsIDAsIDEwNDU1LCA0NzUzLCA3NDAyNiwgMTEzNDQsIDQyMjIsIDYyNDAsIDUyMzEsIDc0Mzg0LCAwLCAKLSAgICA2ODM3NywgNjI0OCwgMCwgMCwgMCwgNDIzMTgsIDkyNTgyLCA1MjI5LCA0NzU3LCAwLCAwLCAyNzI4LCA0NzUyLCA2NDU2MywgCi0gICAgNjUyMzUsIDUyMzQsIDAsIDEyODE0NSwgMCwgMTA3MTMsIDcxNjYsIDAsIDI2MjIsIDc0NjAsIDEyNzMwMiwgMCwgMCwgCi0gICAgODk1NCwgNzQ3NjAsIDY1MTg5LCAyNjMyLCA5MjIzMCwgMTAxMDgsIDEwMTEsIDU1NzQsIDE4NTMsIDI3MDksIDY1MTM5LCAKLSAgICA1NTc3LCAwLCAwLCAxMTg4NzEsIDY4NjQxLCA4OTY1LCA3NjM1LCA0MjE3NywgNTMxNiwgMCwgNTMxNCwgNjQ1MSwgNTU3MiwgCi0gICAgMCwgNTMxMiwgMCwgNTUyNSwgNTMzMCwgNTMxOSwgMCwgMCwgMTk0OTA3LCA0NDAwMywgMCwgMCwgMCwgMTIwNDk4LCAKLSAgICAxMjc4NTEsIDE5NTAwOSwgMCwgNzQwMjIsIDAsIDY0NjA5LCA2ODY0MywgMTIwNjM0LCAwLCA1NzIxLCAwLCA1NTE5LCAKLSAgICA4NjMyLCA2NjQ2NSwgMTEyNjcsIDczOTYxLCA5MjI3OCwgNTcyMCwgMCwgMTY5MiwgNDIxOSwgNDYxMCwgODY5NiwgNDMwNSwgCi0gICAgMCwgNDYwOSwgNDM0NzgsIDQ2MTQsIDU0MSwgMCwgNTI4NywgNTMwOSwgNTI4NSwgNjgzODksIDU5NjEsIDQ2NDcsIDU2LCAKLSAgICA0MjE2LCAxMDU3NywgNDEzODEsIDYwMSwgNDYxMywgMCwgMCwgOTIyNzYsIDQ2MDgsIDY0MjYwLCA0MTEyNCwgNTE5MCwgCi0gICAgNjc2MjgsIDAsIDY4MTQ1LCA3MDg2LCAwLCAxMTkyNDMsIDY3NjIwLCAwLCAyNzM0LCAxMTA3NCwgMCwgNjc2MjcsIDQzNTkzLCAKLSAgICAwLCA2NzYyNSwgNTk2MCwgMCwgODk5MiwgNDI1OTMsIDEyODI2MCwgMTc4MiwgNjc2MjIsIDY4MTE0LCAxMTk5MzksIDAsIAotICAgIDY4MTgwLCA1NTAxLCAxMTk5NTIsIDQyNTA4LCA3NDQyLCA0MzY2NSwgMzU5LCA0MTI1MywgNjgzOTIsIDYyMzksIDExOTk1NiwgCi0gICAgNDEyNTYsIDAsIDY4MTM0LCAwLCA3NDIwOSwgOTE3NTUwLCA5MzQ2LCA2OTY2MCwgNDEyNTQsIDEyODA0NywgNDMyOTEsIAotICAgIDM3NjcsIDU3MzcsIDAsIDQ4NjUsIDAsIDU3NDAsIDkxNzk5NywgNTczNiwgNDM2OCwgNjQ3MjQsIDcxOTMsIDY4MTM3LCAwLCAKLSAgICA1NzM5LCA0MTAyNCwgNDg2NiwgMCwgNzM5MDQsIDAsIDQ4NjksIDEyMDU2MywgMCwgNDIyMywgMTI4MjAxLCA2NjUwLCAwLCAKLSAgICAwLCAwLCAxMjc4OTAsIDQ4NzAsIDEyMDQ0NSwgNjg2NjEsIDY3MTYsIDc4MTc2LCA2ODY2NywgNjgzODIsIDY4Njc2LCAKLSAgICAxMjc5MjUsIDEwMTIyLCA0ODY0LCA2NjU2OCwgNDE0NCwgNzkzNywgMCwgNjI0NSwgNjg2NTIsIDI3MzIsIDQyNzM0LCA3NDUsIAotICAgIDAsIDE5NTA5NywgOTIxOTUsIDQ3NzcsIDc4MjEsIDAsIDY4NjMxLCA0Mjc3NSwgMCwgMTk0OTU0LCAwLCAzMDk3LCAwLCAKLSAgICA1OTY2LCAwLCA0Nzc4LCAwLCAxMDg2MywgMCwgNDc4MSwgMCwgNjQ0MDcsIDAsIDAsIDg1NzcsIDEyODU2MiwgNjgxOTYsIAotICAgIDQzMjg1LCAxMDIxNiwgNDc4MiwgMCwgMCwgMTIwNzU3LCA2ODYxOCwgMTIzMjUsIDQzMDU2LCA4NzE3LCAwLCAwLCA0Nzc2LCAKLSAgICA3MzgxOCwgMTE0OTIsIDg3MDAsIDAsIDEzMTc2LCA2ODM2MywgMTA0MjYsIDAsIDkxNzU5OSwgMTAzNjIsIDE5NDcwNiwgCi0gICAgMTcxNSwgNDg0OSwgODI0MiwgOTU2MSwgNzM5MjIsIDQzMjc4LCA0MjYzNSwgMCwgMCwgNTk2MywgOTE3OTI2LCAwLCAwLCAKLSAgICA0ODUwLCAwLCAxNjA3LCA0NjYsIDQ4NTMsIDExODk5NSwgNDg1NCwgMTI3OTE4LCA1MTY0LCAwLCAxMzUwLCA1MTI0LCAKLSAgICA2NDQyMCwgMTk5MywgNTM2MiwgODQ3MSwgMjcwOCwgOTI0NzEsIDEyNDQ1LCAzNzg1LCAyMzQsIDMxOTksIDAsIDQxMjY4LCAKLSAgICA0ODQ4LCAyNTMwLCA5MTc5MDksIDIwNjgsIDE5NjQsIDAsIDczNzYyLCAxMDQ1OCwgMCwgODU3NiwgNzg1NDMsIDAsIDI3MDQsIAotICAgIDQ3OTQsIDAsIDY4MjExLCA4MzIyLCA0Nzk3LCA1NzUzLCAwLCAyNjk0LCA0NzkyLCAwLCAyNDM5LCA2NTEwNCwgNjk4MDQsIAotICAgIDAsIDMwMywgMCwgOTI2MjIsIDAsIDI0MzcsIDAsIDQyMjEsIDQ4NDQsIDExODg2OSwgMCwgMCwgMCwgMCwgMCwgNDMyOTIsIAotICAgIDAsIDI0NDEsIDEwNzM5LCA2NTA5MCwgMCwgMTE5MzI3LCAwLCAyNDUxLCAyNzE0LCAxMTkzMjYsIDAsIDQzMzc5LCA0OTM3LCAKKyAgICA1MzMxLCA0NjM0LCAxMTkyOCwgOTgzNTk0LCA1MzM4LCA0NjM3LCAxMjgxNzAsIDU5NzEsIDQyNDE0LCAwLCAxMjY4LCAKKyAgICA2NTA5NywgNDIzNjEsIDAsIDAsIDczODUzLCAxNDI3LCAwLCAwLCA1OTcwLCAzNDMxLCAwLCAxMDM1OCwgMTA0MjIsIDQ3NTgsIAorICAgIDk4MzM2NiwgMTYwOCwgMjczOCwgMCwgMTA0NTUsIDQ3NTMsIDc0MDI2LCAxMTM0NCwgNDIyMiwgNjI0MCwgNTIzMSwgCisgICAgNzQzODQsIDk4MzM3MCwgNjgzNzcsIDYyNDgsIDk4MzM1NCwgOTgzMzU1LCA5ODMzNTIsIDQyMzE4LCA5MjU4MiwgNTIyOSwgCisgICAgNDc1NywgMCwgMCwgMjcyOCwgNDc1MiwgNjQ1NjMsIDY1MjM1LCA1MjM0LCAwLCAxMjgxNDUsIDAsIDEwNzEzLCA3MTY2LCAwLCAKKyAgICAyNjIyLCA3NDYwLCAxMjczMDIsIDAsIDAsIDg5NTQsIDc0NzYwLCA2NTE4OSwgMjYzMiwgNDI2MTcsIDEwMTA4LCAxMDExLCAKKyAgICA1NTc0LCAxODUzLCAyNzA5LCA2NTEzOSwgNTU3NywgMCwgMCwgMTE4ODcxLCA2ODY0MSwgODk2NSwgNzYzNSwgNDIxNzcsIAorICAgIDUzMTYsIDAsIDUzMTQsIDY0NTEsIDU1NzIsIDY2NDY0LCA1MzEyLCAwLCA1NTI1LCA1MzMwLCA1MzE5LCA5ODM0MTIsIAorICAgIDk4Mzg2MywgMTk0OTA3LCA0NDAwMywgMCwgOTgzNDcyLCA5ODM0MTUsIDEyMDQ5OCwgMTI3ODUxLCAxOTUwMDksIDk4Mzg1NiwgCisgICAgNzQwMjIsIDk4MzQxNCwgNjQ2MDksIDY4NjQzLCAxMjA2MzQsIDk4MzQ4MSwgNTcyMSwgOTgzMzkzLCA1NTE5LCA4NjMyLCAKKyAgICA2NjQ2NSwgMTEyNjcsIDczOTYxLCA5MjI3OCwgNTcyMCwgOTgzMzQ0LCAxNjkyLCA0MjE5LCA0NjEwLCA4Njk2LCA0MzA1LCAKKyAgICAwLCA0NjA5LCA0MzQ3OCwgNDYxNCwgNTQxLCA5ODMzNDcsIDUyODcsIDUzMDksIDUyODUsIDY4Mzg5LCA1OTYxLCA0NjQ3LCAKKyAgICA1NiwgNDIxNiwgMTA1NzcsIDQxMzgxLCA2MDEsIDQ2MTMsIDk4MzM0MSwgOTgzMzM4LCA3Nzg0OSwgNDYwOCwgNjQyNjAsIAorICAgIDQxMTI0LCA1MTkwLCA2NzYyOCwgMCwgNjgxNDUsIDcwODYsIDAsIDY3OTk4LCA2NzYyMCwgMCwgMjczNCwgMTEwNzQsIDAsIAorICAgIDY3NjI3LCA0MzU5MywgMCwgNjc2MjUsIDU5NjAsIDAsIDg5OTIsIDQyNTkzLCAxMjgyNjAsIDE3ODIsIDY3NjIyLCA2ODExNCwgCisgICAgMTE5OTM5LCAwLCA2ODE4MCwgNTUwMSwgMTE5OTUyLCA0MjUwOCwgNzQ0MiwgNDM2NjUsIDM1OSwgNDEyNTMsIDY4MzkyLCAKKyAgICA2MjM5LCAxMTk5NTYsIDQxMjU2LCAwLCA2ODEzNCwgMCwgNzQyMDksIDkxNzU1MCwgOTM0NiwgNjk2NjAsIDQxMjU0LCAKKyAgICAxMjgwNDcsIDQzMjkxLCAzNzY3LCA1NzM3LCAwLCA0ODY1LCAwLCA1NzQwLCA5MTc5OTcsIDU3MzYsIDQzNjgsIDY0NzI0LCAKKyAgICA3MTkzLCA2ODEzNywgMCwgNTczOSwgNDEwMjQsIDQ4NjYsIDAsIDczOTA0LCA5ODM4MzEsIDQ4NjksIDEyMDU2MywgMCwgCisgICAgNDIyMywgMTI4MjAxLCA2NjUwLCAxMjY1MDksIDAsIDk4MzQ1NSwgMTI3ODkwLCA0ODcwLCAxMjA0NDUsIDY4NjYxLCA2NzE2LCAKKyAgICA3ODE3NiwgNjg2NjcsIDY4MzgyLCA2ODY3NiwgMTI3OTI1LCAxMDEyMiwgNDg2NCwgNjY1NjgsIDQxNDQsIDc5MzcsIDAsIAorICAgIDYyNDUsIDY4NjUyLCAyNzMyLCA0MjczNCwgNzQ1LCAwLCAxOTUwOTcsIDkyMTk1LCA0Nzc3LCA3ODIxLCAwLCA2ODYzMSwgCisgICAgNDI3NzUsIDAsIDE5NDk1NCwgMCwgMzA5NywgMCwgNTk2NiwgOTgzNDc4LCA0Nzc4LCAwLCAxMDg2MywgMCwgNDc4MSwgMCwgCisgICAgNjQ0MDcsIDAsIDEyODMyMywgODU3NywgMTI4NTYyLCA2ODE5NiwgNDMyODUsIDEwMjE2LCA0NzgyLCAwLCAwLCAxMjA3NTcsIAorICAgIDY4NjE4LCAxMjMyNSwgNDMwNTYsIDg3MTcsIDAsIDAsIDQ3NzYsIDczODE4LCAxMTQ5MiwgODcwMCwgMCwgMTMxNzYsIAorICAgIDY4MzYzLCAxMDQyNiwgMCwgOTE3NTk5LCAxMDM2MiwgMTk0NzA2LCAxNzE1LCA0ODQ5LCA4MjQyLCA5NTYxLCA3MzkyMiwgCisgICAgNDMyNzgsIDQyNjM1LCAwLCAwLCA1OTYzLCA5MTc5MjYsIDAsIDAsIDQ4NTAsIDAsIDE2MDcsIDQ2NiwgNDg1MywgMTE4OTk1LCAKKyAgICA0ODU0LCAxMjc5MTgsIDUxNjQsIDk4Mzg2MSwgMTM1MCwgNTEyNCwgNjQ0MjAsIDE5OTMsIDUzNjIsIDg0NzEsIDI3MDgsIAorICAgIDkyNDcxLCAxMjQ0NSwgMzc4NSwgMjM0LCAzMTk5LCAwLCA0MTI2OCwgNDg0OCwgMjUzMCwgOTE3OTA5LCAyMDY4LCAxOTY0LCAKKyAgICAwLCA3Mzc2MiwgMTA0NTgsIDAsIDg1NzYsIDc4NTQzLCAwLCAyNzA0LCA0Nzk0LCAwLCA2ODIxMSwgODMyMiwgNDc5NywgCisgICAgNTc1MywgMCwgMjY5NCwgNDc5MiwgMCwgMjQzOSwgNjUxMDQsIDY5ODA0LCA5ODM0MTYsIDMwMywgOTgzMTAxLCA5MjYyMiwgCisgICAgOTgzNDE3LCAyNDM3LCAwLCA0MjIxLCA0ODQ0LCA5MjIxNiwgMCwgMCwgMCwgNzAwNDIsIDAsIDQzMjkyLCAwLCAyNDQxLCAKKyAgICAxMDczOSwgNjUwOTAsIDAsIDExOTMyNywgMTI2NTQxLCAyNDUxLCAyNzE0LCAxMTkzMjYsIDAsIDQzMzc5LCA0OTM3LCAKICAgICA0MzM3NiwgNzUzLCA1ODQ5LCAxMDU5NywgNDMwODksIDExNzIyLCA5MjQ4LCA5MjU1NSwgNDI4NzksIDExNzI1LCAwLCAwLCAKICAgICAyNzI2LCAzMTA3LCA3Mzk1OCwgNDk0MSwgNjQ5MzcsIDExOTIzMywgOTE0MCwgMTQwOCwgNTI2MSwgNDYwNywgMCwgMTgxLCAKLSAgICAwLCA0OTQyLCA5NTM5LCA0OTM4LCAwLCA2NTIwMSwgNTI1OSwgOTM2OSwgNjQxODUsIDQxNDIsIDUyNTcsIDAsIDAsIDQ5NjQsIAotICAgIDUyNjQsIDY0MTc4LCA2NDE3NywgMTI5NzksIDQxNDExLCA2NDE4MiwgNjQxODEsIDY0MTgwLCA2NDE3OSwgOTQ4MiwgNDg3MywgCi0gICAgNDEyMzEsIDE4MjIsIDQyNTI2LCAxMjg1ODEsIDEyNzU4LCAzODY1LCAwLCAwLCAxMDUwMCwgMCwgMCwgNzgwMjgsIDAsIAotICAgIDk4MzAsIDQzNjQyLCAzODksIDEwODkzLCA3NTIxLCAxMjc4NzksIDQ4NzIsIDU0NjMsIDAsIDMxMjUsIDk1NjcsIDAsIAotICAgIDQ4NzgsIDU0NTksIDQ2MDQsIDkxNzkzMSwgOTU1NywgNTQ2NSwgNjg2MTcsIDAsIDExNDk0LCAwLCA5NTYzLCAxMDg2NSwgCi0gICAgNzQ1NzAsIDQzMjc5LCA2NDE4NiwgMCwgNzg3MTQsIDY0MTkxLCA2NDE5MCwgODg5OCwgNjQxODgsIDAsIDQxMDMwLCAKLSAgICA3ODgzNiwgMCwgOTE3ODM1LCA3ODgyMCwgOTE3ODM0LCAwLCA3ODgwNSwgNDEwMzEsIDc4ODAxLCAxMTk2MCwgNjc0NSwgCi0gICAgMzA4MiwgMCwgNzg1MzksIDczOTE5LCAxMDU3MywgNDE3NDQsIDcwNzksIDU4NTYsIDEyNzA0MywgNTE2MywgNzg4MDksIAotICAgIDEyODE2MiwgMTgxNywgNjY3MjQsIDc4NTM4LCAwLCAxMDU2NCwgNzc2MywgMTMwNzcsIDQxODEzLCA0NDAwLCA0MTc0NSwgCi0gICAgNjQyMDcsIDEwMjc1LCA4OTI1LCAxMDM3MSwgMTAzMDcsIDQxODE0LCA0MjQ4LCAwLCAwLCA0NTQxLCA2Mjk5LCA2NDIwNCwgCi0gICAgNjQyMDMsIDY0MjAxLCA2NDIwMCwgNjQxOTksIDY0MTk4LCAwLCA0MjE1NiwgNzg2ODgsIDAsIDY0MTkzLCA2NDE5MiwgCi0gICAgNjUyMjMsIDk5NDMsIDY0MTk3LCA2NDE5NiwgNjQxOTUsIDY0MTk0LCAxMzI4MiwgNjQxNzUsIDY0MTc0LCA2NDE3MywgCi0gICAgNzgxODksIDg0NiwgNzgxODYsIDk5NjUsIDAsIDAsIDAsIDAsIDI1NDMsIDEyMTYzLCAzMTA4LCA5NzQ1LCA2NDE2NywgCi0gICAgNjQxNjYsIDY0MTY1LCA2NDE2NCwgMjExMCwgOTIxNzYsIDY0MTY5LCA2NDE2OCwgNjQ5NDksIDEwOTcyLCAxMDI1MSwgCi0gICAgMTAyNDcsIDQyNzY4LCA3MTUsIDY0MTYxLCA0MzI5OSwgOTQ1MywgNTM0OCwgMTA5NDMsIDEyMDM3OCwgMCwgMTEzNTIsIAotICAgIDU1MCwgOTkxMCwgMCwgMCwgNjY1NzksIDExNTUxLCAwLCAxOTUwODAsIDk1MDQsIDcxODcsIDAsIDEwMzczLCAwLCAKLSAgICAxMjA3OTEsIDEwMjYxLCAxMDI1MywgNjQwNCwgMTAyNzcsIDc4MTgzLCAxMTk4NCwgMTU1MiwgNjUyMjIsIDY5OTgsIAotICAgIDc4MTgwLCAwLCAzMTI4LCA0Nzg5LCA1MDY3LCA1MDY2LCAxMTg4NDksIDQ3ODQsIDAsIDg4MjcsIDExNDYsIDUwNjUsIAotICAgIDc4MTk2LCA3ODE5MiwgNjgxMzYsIDc4MTkwLCA0MzQxMiwgNTA2NCwgMjQzMSwgMCwgOTQ1MCwgMTgwOSwgMCwgNzgyMDAsIAotICAgIDc4MjAxLCA1MDYyLCAxMjY0LCA2NDgxNywgMTMyNTQsIDExNjk3LCAwLCA5Nzg1LCA2NDcxNiwgMCwgMzkzMywgNzQ1NTksIAotICAgIDQ3NDAsIDc5NTQsIDAsIDAsIDQyNjA5LCAwLCA3NDE3NSwgMCwgMTI3MDE2LCAwLCAwLCA0MjEzMCwgMCwgNTE1MSwgCi0gICAgOTE3ODI5LCA5MTc4MjMsIDAsIDAsIDAsIDc2MjAsIDM4MDAsIDY1MTIyLCAwLCAwLCA4MzU1LCA3ODU0LCAwLCA5NTQsIAotICAgIDY0OTI3LCA0MTg1LCA0MTA0NSwgMTI3MTQxLCA0MTQzOCwgNDE0MzksIDY4NjY2LCAxMDcxMSwgNDU5MywgMTI3NzQ1LCAKLSAgICAxMjA1ODQsIDAsIDY0Nzc0LCA4MDUzLCAxMDUzMiwgNjY3MjcsIDAsIDAsIDAsIDY0NzU5LCA2MzgxLCA1MTY2LCA5ODg4LCAKLSAgICAxMjc4MDAsIDUxNDgsIDQyODM0LCAwLCA3ODIwNSwgNzgyMDYsIDQzNzg3LCA3ODIwNCwgNjQxMzEsIDMxMTksIDkxNzgxNCwgCi0gICAgMCwgMzA2MCwgNjQxMzUsIDk5ODYsIDAsIDc3ODc2LCA2MzYsIDExNjk4LCAwLCAwLCA5OTE2LCAxMTcwMSwgNzgzNiwgCi0gICAgNDI3NDEsIDY0MTM3LCA4MzIwLCA3ODY0MCwgODg2MywgOTI0MzEsIDExOTk2MCwgMTQ3NywgNDMyODksIDAsIDc0MzU4LCAKLSAgICA4NjE4LCAwLCA5OTA4LCAwLCAwLCAwLCAzOTM3LCAxMjMxMiwgMCwgMCwgMCwgNjQ3ODEsIDkxMiwgNjM0OSwgNDUzNiwgCi0gICAgMTE5OTYzLCA3NDUzMiwgMCwgNjI0NCwgMCwgMTk0NTgwLCAzOTM1LCAxMjA2NjUsIDAsIDAsIDExOTUwLCA1MzkyLCAKLSAgICA0MjI0OCwgNjUxMjksIDY4NjU2LCA1Mzk3LCAwLCAxMjA0NiwgMTI1OTksIDAsIDAsIDUzOTUsIDAsIDUzOTMsIDM1NCwgCi0gICAgNjg2MTUsIDExOTk0OCwgNzg1MDMsIDAsIDAsIDQyMDM5LCAwLCAwLCA2NDE0MiwgNjI2LCAwLCA1ODk1LCAwLCAwLCA1NzgwLCAKLSAgICAwLCAwLCAxMjg4NzQsIDAsIDAsIDQzMjk3LCAwLCA0MzExLCA0NjQ0LCA4ODE4LCAwLCAxMjgxODYsIDAsIDcxNDUsIDM5MTgsIAotICAgIDY2NDUyLCAzNzk3LCAxNjQ0LCA5MjM0NiwgOTY1OCwgNDE0MCwgMTEzODUsIDY1OTQ3LCA2NDU1LCA5MDMwLCA4MTMsIAotICAgIDExOTk0NSwgNjgxMzEsIDQxNDYsIDExOTk1NywgNTM2MCwgMjQ2NiwgMCwgNjc2NjksIDExOTk0MiwgNjI0OSwgNDIxMTcsIAotICAgIDkyMjg3LCAxMjgyMjQsIDAsIDAsIDc0MDQ2LCAxMjA1ODMsIDQ5MTEsIDk4OCwgOTE3ODA3LCAwLCAwLCA0MzA2MSwgNzA1NCwgCisgICAgOTgzNDIyLCA0OTQyLCA5NTM5LCA0OTM4LCAwLCA2NTIwMSwgNTI1OSwgOTM2OSwgNjQxODUsIDQxNDIsIDUyNTcsIAorICAgIDk4MzYwMSwgMCwgNDk2NCwgNTI2NCwgNjQxNzgsIDY0MTc3LCAxMjk3OSwgNDE0MTEsIDY0MTgyLCA2NDE4MSwgNjQxODAsIAorICAgIDY0MTc5LCA5NDgyLCA0ODczLCA0MTIzMSwgMTgyMiwgNDI1MjYsIDEyODU4MSwgMTI3NTgsIDM4NjUsIDAsIDAsIDEwNTAwLCAKKyAgICAwLCAxMTkwMjQsIDc4MDI4LCA5MjQwOCwgOTgzMCwgNDM2NDIsIDM4OSwgMTA4OTMsIDc1MjEsIDEyNzg3OSwgNDg3MiwgCisgICAgNTQ2MywgMCwgMzEyNSwgOTU2NywgMCwgNDg3OCwgNTQ1OSwgNDYwNCwgOTE3OTMxLCA5NTU3LCA1NDY1LCA2ODYxNywgMCwgCisgICAgMTE0OTQsIDEyNjQ5MiwgOTU2MywgMTA4NjUsIDc0NTcwLCA0MzI3OSwgNjQxODYsIDk4MzQzMSwgNzg3MTQsIDY0MTkxLCAKKyAgICA2NDE5MCwgODg5OCwgNjQxODgsIDAsIDQxMDMwLCA3ODgzNiwgMCwgOTE3ODM1LCA3ODgyMCwgOTE3ODM0LCAwLCA3ODgwNSwgCisgICAgNDEwMzEsIDc4ODAxLCAxMTk2MCwgNjc0NSwgMzA4MiwgOTgzNDI5LCA3ODUzOSwgNzM5MTksIDEwNTczLCA0MTc0NCwgCisgICAgNzA3OSwgNTg1NiwgMTI3MDQzLCA1MTYzLCA3ODgwOSwgMTI4MTYyLCAxODE3LCA2NjcyNCwgNzg1MzgsIDAsIDEwNTY0LCAKKyAgICA3NzYzLCAxMzA3NywgNDE4MTMsIDQ0MDAsIDQxNzQ1LCA2NDIwNywgMTAyNzUsIDg5MjUsIDEwMzcxLCAxMDMwNywgNDE4MTQsIAorICAgIDQyNDgsIDAsIDAsIDQ1NDEsIDYyOTksIDY0MjA0LCA2NDIwMywgNjQyMDEsIDY0MjAwLCA2NDE5OSwgNjQxOTgsIDEyNjQ3MSwgCisgICAgNDIxNTYsIDc4Njg4LCAwLCA2NDE5MywgNjQxOTIsIDY1MjIzLCA5OTQzLCA2NDE5NywgNjQxOTYsIDY0MTk1LCA2NDE5NCwgCisgICAgMTMyODIsIDY0MTc1LCA2NDE3NCwgNjQxNzMsIDc4MTg5LCA4NDYsIDc4MTg2LCA5OTY1LCAwLCAwLCAwLCAwLCAyNTQzLCAKKyAgICAxMjE2MywgMzEwOCwgOTc0NSwgNjQxNjcsIDY0MTY2LCA2NDE2NSwgNjQxNjQsIDIxMTAsIDkyMTc2LCA2NDE2OSwgNjQxNjgsIAorICAgIDY0OTQ5LCAxMDk3MiwgMTAyNTEsIDEwMjQ3LCA0Mjc2OCwgNzE1LCAyMjk1LCA0MzI5OSwgOTQ1MywgNTM0OCwgMTA5NDMsIAorICAgIDEyMDM3OCwgMCwgMTEzNTIsIDU1MCwgOTkxMCwgMTI2NzA1LCAwLCA2NjU3OSwgMTE1NTEsIDAsIDE5NTA4MCwgOTUwNCwgCisgICAgNzE4NywgMCwgMTAzNzMsIDAsIDEyMDc5MSwgMTAyNjEsIDEwMjUzLCA2NDA0LCAxMDI3NywgNzgxODMsIDExOTg0LCAxNTUyLCAKKyAgICA2NTIyMiwgNjk5OCwgNzgxODAsIDAsIDMxMjgsIDQ3ODksIDUwNjcsIDUwNjYsIDExODg0OSwgNDc4NCwgMCwgODgyNywgCisgICAgMTE0NiwgNTA2NSwgNjk4OTAsIDc4MTkyLCA2ODEzNiwgNzgxOTAsIDQzNDEyLCA1MDY0LCAyNDMxLCAwLCA5NDUwLCAxODA5LCAKKyAgICAwLCA3ODIwMCwgNzgyMDEsIDUwNjIsIDEyNjQsIDY0ODE3LCAxMzI1NCwgMTE2OTcsIDEyNjU5OCwgOTc4NSwgNjQ3MTYsIDAsIAorICAgIDM5MzMsIDc0NTU5LCA0NzQwLCA3OTU0LCAwLCAwLCA0MjYwOSwgMCwgNzQxNzUsIDAsIDEyNzAxNiwgMCwgOTgzODY0LCAKKyAgICA0MjEzMCwgMCwgNTE1MSwgOTE3ODI5LCA5MTc4MjMsIDAsIDkzOTgwLCAwLCA3NjIwLCAzODAwLCA2NTEyMiwgMCwgMCwgCisgICAgODM1NSwgNzg1NCwgMCwgOTU0LCA2NDkyNywgNDE4NSwgNDEwNDUsIDEyNzE0MSwgNDE0MzgsIDQxNDM5LCA2ODY2NiwgCisgICAgMTA3MTEsIDQ1OTMsIDEyNzc0NSwgMTIwNTg0LCA5ODM0MDAsIDY0Nzc0LCA4MDUzLCAxMDUzMiwgNjY3MjcsIDAsIDAsIDAsIAorICAgIDY0NzU5LCA2MzgxLCA1MTY2LCA5ODg4LCAxMjc4MDAsIDUxNDgsIDQyODM0LCAwLCA3ODIwNSwgNzgyMDYsIDQzNzg3LCAKKyAgICA3ODIwNCwgNjQxMzEsIDMxMTksIDkxNzgxNCwgMCwgMzA2MCwgNjQxMzUsIDk5ODYsIDAsIDc3ODc2LCA2MzYsIDExNjk4LCAKKyAgICAwLCA5ODM0NDMsIDk5MTYsIDExNzAxLCA3ODM2LCA0Mjc0MSwgNjQxMzcsIDgzMjAsIDc4NjQwLCA4ODYzLCA5MjQzMSwgCisgICAgMTE5OTYwLCAxNDc3LCA0MzI4OSwgMCwgNzQzNTgsIDg2MTgsIDk4MzM5NCwgOTkwOCwgOTgzOTcyLCAwLCAwLCAzOTM3LCAKKyAgICAxMjMxMiwgMCwgOTgzMzk1LCAwLCA2NDc4MSwgOTEyLCA2MzQ5LCA0NTM2LCA5Mzk1NCwgNzQ1MzIsIDEyNjU5NCwgNjI0NCwgCisgICAgOTIyMDksIDcxMzQxLCAzOTM1LCAxMjA2NjUsIDk4MzQ2OCwgMCwgMTE5NTAsIDUzOTIsIDQyMjQ4LCA2NTEyOSwgNjg2NTYsIAorICAgIDUzOTcsIDAsIDEyMDQ2LCAxMjU5OSwgMCwgMTI4MjYxLCA1Mzk1LCAwLCA1MzkzLCAzNTQsIDY4NjE1LCAxMTk5NDgsIAorICAgIDc4NTAzLCAwLCAwLCA0MjAzOSwgMCwgMCwgNjQxNDIsIDYyNiwgMCwgNTg5NSwgMCwgMCwgNTc4MCwgMCwgMCwgMTI4ODc0LCAKKyAgICAwLCAwLCA0MzI5NywgOTgzMDc5LCA0MzExLCA0NjQ0LCA4ODE4LCAwLCAxMjgxODYsIDAsIDcxNDUsIDM5MTgsIDY2NDUyLCAKKyAgICAzNzk3LCAxNjQ0LCA5MjM0NiwgOTY1OCwgNDE0MCwgMTEzODUsIDY1OTQ3LCA2NDU1LCA5MDMwLCA4MTMsIDExOTk0NSwgCisgICAgNjgxMzEsIDQxNDYsIDExOTk1NywgNTM2MCwgMjQ2NiwgMCwgNjc2NjksIDExOTk0MiwgNjI0OSwgNDIxMTcsIDkyMjg3LCAKKyAgICAxMjgyMjQsIDAsIDAsIDc0MDQ2LCA0Mzc0NSwgNDkxMSwgOTg4LCA5MTc4MDcsIDAsIDk4MzQ2MCwgNDMwNjEsIDcwNTQsIAogICAgIDY0MTQ3LCAwLCA2NDkyMCwgNjgxOTUsIDY2OTgsIDExODkzMywgOTI1MDYsIDAsIDEyMDAwNiwgMTE5ODEsIDEyMjAyLCAwLCAKICAgICAxMTAzMiwgNjc2NTQsIDYwOTMsIDExNjA4LCA5NzUsIDY4NjYyLCA2NTg0MywgMTcwLCAwLCAwLCA0MTY5LCAwLCA0MTg1OSwgCiAgICAgNjA1OCwgMTIwNDAxLCAxMzIwMywgMTIwNjU3LCAwLCAwLCA2ODY1NywgOTgxOCwgMTAxNzgsIDEwMzI0LCA0MjEwNiwgCiAgICAgNTg5OCwgNzQ1NDAsIDQ3MzgsIDQxODU2LCA3MDYyLCA5MTc4NjUsIDQ3MzcsIDExNzc5LCA0NzQyLCAxMjA1NjQsIDkyMzkxLCAKLSAgICA3MzczNiwgMCwgOTgyNSwgNjQ0OCwgNjcxNSwgMTI3MDA4LCA0ODMxLCAwLCA5MjUyNSwgMCwgNTMwMCwgNDc0MSwgNDIxMDgsIAotICAgIDAsIDY0MTU5LCA0NzM2LCA2NDE0OCwgMCwgODQ5LCA5MjE5MSwgNzg0OTEsIDQzMjg4LCAwLCA2NjYyMCwgMCwgMTI3MzMxLCAKLSAgICA2NTU0OSwgOTQ5NiwgNjQ1OTgsIDExODg2NiwgMCwgNzg3NiwgNjgxMzIsIDkxNzg3MiwgMzkyOCwgOTE3ODcwLCA0MzM3OCwgCi0gICAgMTA3MDYsIDcxOTgsIDAsIDQ4NDIsIDEyMDUzLCAxMjgxMjksIDAsIDQ4NDEsIDAsIDQxNzEsIDEyMDA4LCA2MjUxLCAzOTIzLCAKLSAgICAxNDkwLCAwLCAxMTk1OTEsIDAsIDQwOTcyLCA1MjQ1LCAwLCAxMDExNCwgNDIwMDEsIDQxODg4LCA0ODQ1LCA4MzMyLCAKLSAgICA0MDk3NCwgNjQzNDcsIDQ4NDAsIDkwNzcsIDc4MzQ2LCAxNzQ3LCA5MTc4NDksIDQ4MjUsIDY5MjQwLCA5MTc4NTIsIAotICAgIDY4NjU1LCAwLCAwLCAwLCAwLCA2ODYyOCwgMCwgOTg1MCwgMTE4OTM3LCAzNjcsIDE0NzIsIDkxNzg1OSwgNjY4NywgMTI3NCwgCi0gICAgMCwgNTkwNSwgMTIzMzksIDg5MTksIDczOTUzLCAxMDkwNywgNjUyNjEsIDExMDIzLCAxMTk1NTksIDQ4MzAsIDkxMzQsIAotICAgIDc4NjY2LCA2NDEyNiwgNDMwMTEsIDAsIDAsIDY0MTAxLCAwLCAwLCA0ODI0LCAxMDYxNCwgMTIwMzkwLCAwLCAxODg4LCAKLSAgICAxOTYwLCA3ODYxLCA5MTc4NTYsIDc4NTI0LCA0MTgzNiwgNDMwMTIsIDYwNTIsIDYwNjQsIDU0LCA0MzAwOSwgMTIyMTQsIDAsIAotICAgIDYyMTEsIDAsIDM1OCwgNDE5OTcsIDQxODMzLCAxMTQ0MiwgMTA3NTgsIDY1Nzc0LCAwLCAxMjAzODQsIDY0MTE1LCA5MjIyMSwgCi0gICAgMCwgMCwgMCwgMTE5MDUzLCAwLCAxMjc2NSwgNjQxMTgsIDEyNjk5OCwgMTI5NjIsIDAsIDAsIDQwMTcsIDEyODI3LCA1MjQxLCAKLSAgICAxMjAzOTIsIDAsIDQxMTE4LCAzOTI0LCAwLCAxMTM2NiwgOTE3ODQzLCAwLCAwLCA5MTc4NDYsIDQxMTE2LCA5MTc4NDQsIAotICAgIDkxNzU2NCwgMCwgMTEzNjMsIDEyMDU3LCAxMTkxNywgMTU2NywgNzQwMDAsIDQ3MjEsIDAsIDY2MjAyLCA4OTU3LCA0MTM5LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxMjc0MCwgMTI4NzAyLCA0NzIyLCA2ODE2LCAxMjc3OTMsIDEyNzU5LCA0NzI1LCAwLCA0NzI2LCAKLSAgICAwLCAwLCAwLCA5MTc5MDQsIDkxNzkwNSwgMCwgMTI3NTUsIDEyNzYyLCA0MDE1LCAwLCA4MDUyLCA0NzYsIDAsIDAsIAotICAgIDEyODI5NCwgNjQyMTIsIDQxMDIwLCAxMzgyLCA2NDIwOSwgNjQyMTYsIDY0MjE1LCA2NDIxNCwgMTY1NiwgNDE4MzEsIDAsIAorICAgIDczNzM2LCA5ODMzNTYsIDk4MjUsIDY0NDgsIDY3MTUsIDEyNzAwOCwgNDgzMSwgMCwgOTI1MjUsIDAsIDUzMDAsIDQ3NDEsIAorICAgIDQyMTA4LCA5ODMzNDYsIDY0MTU5LCA0NzM2LCA2NDE0OCwgMCwgODQ5LCA5MjE5MSwgNzg0OTEsIDQzMjg4LCAwLCA2NjYyMCwgCisgICAgOTE3OTE2LCAxMjczMzEsIDY1NTQ5LCA5NDk2LCA2NDU5OCwgMTE4ODY2LCA5ODMzNTgsIDc4NzYsIDY4MTMyLCA5MTc4NzIsIAorICAgIDM5MjgsIDkxNzg3MCwgNDMzNzgsIDEwNzA2LCA3MTk4LCAwLCA0ODQyLCAxMjA1MywgMTI4MTI5LCAwLCA0ODQxLCAwLCAKKyAgICA0MTcxLCAxMjAwOCwgNjI1MSwgMzkyMywgMTQ5MCwgMCwgMTE5NTkxLCAxMjY1MTIsIDQwOTcyLCA1MjQ1LCAwLCAxMDExNCwgCisgICAgNDIwMDEsIDQxODg4LCA0ODQ1LCA4MzMyLCA0MDk3NCwgNjQzNDcsIDQ4NDAsIDkwNzcsIDc4MzQ2LCAxNzQ3LCA5MTc4NDksIAorICAgIDQ4MjUsIDY5MjQwLCA5MTc4NTIsIDY4NjU1LCAwLCA5ODMzODAsIDAsIDAsIDY4NjI4LCA5ODMzMzksIDk4NTAsIDExODkzNywgCisgICAgMzY3LCAxNDcyLCA5MTc4NTksIDY2ODcsIDEyNzQsIDAsIDU5MDUsIDEyMzM5LCA4OTE5LCA3Mzk1MywgMTA5MDcsIDY1MjYxLCAKKyAgICAxMTAyMywgMTE5NTU5LCA0ODMwLCA5MTM0LCA3ODY2NiwgNjQxMjYsIDQzMDExLCAwLCAxMjY2MjYsIDY0MTAxLCAwLCAwLCAKKyAgICA0ODI0LCAxMDYxNCwgMTE5NjU5LCAwLCAxODg4LCAxOTYwLCA3ODYxLCA5MTc4NTYsIDc4NTI0LCA0MTgzNiwgNDMwMTIsIAorICAgIDYwNTIsIDYwNjQsIDU0LCA0MzAwOSwgMTIyMTQsIDAsIDYyMTEsIDAsIDM1OCwgNDE5OTcsIDQxODMzLCAxMTQ0MiwgCisgICAgMTA3NTgsIDY1Nzc0LCAwLCAxMjAzODQsIDY0MTE1LCA5MjIyMSwgNzAwMTgsIDAsIDAsIDExOTA1MywgMCwgMTI3NjUsIAorICAgIDY0MTE4LCAxMjY5OTgsIDEyOTYyLCAwLCAxMjY1ODAsIDQwMTcsIDEyODI3LCA1MjQxLCAxMjAzOTIsIDAsIDQxMTE4LCAKKyAgICAzOTI0LCAwLCAxMTM2NiwgOTE3ODQzLCAwLCAwLCA5MTc4NDYsIDQxMTE2LCA5MTc4NDQsIDkxNzU2NCwgMCwgMTEzNjMsIAorICAgIDEyMDU3LCAxMTkxNywgMTU2NywgNzQwMDAsIDQ3MjEsIDEyNjY0MSwgNjYyMDIsIDg5NTcsIDQxMzksIDAsIDAsIDAsIDAsIAorICAgIDAsIDEyNzQwLCAxMjg3MDIsIDQ3MjIsIDY4MTYsIDEyNzc5MywgMTI3NTksIDQ3MjUsIDk4MzM3NSwgNDcyNiwgMCwgCisgICAgMTk0ODkyLCAwLCAxMjgzMjEsIDkxNzkwNSwgMCwgMTI3NTUsIDEyNzYyLCA0MDE1LCAwLCA4MDUyLCA0NzYsIDAsIDAsIAorICAgIDEyODI5NCwgNjQyMTIsIDQxMDIwLCAxMzgyLCA2NDIwOSwgNjQyMTYsIDQ0MDAyLCA2NDIxNCwgMTY1NiwgNDE4MzEsIDAsIAogICAgIDAsIDQxODQzLCA4NzIwLCAzOTA4LCAxNDUyLCAxMzExMSwgMCwgNjQwNjcsIDEyNzMyOCwgODU1MiwgNjQxMTMsIDQxODQ1LCAKICAgICAzODQ5LCA3ODczMiwgNjYyMzIsIDk3NzgsIDEyMDA2NiwgNTg5MSwgNzA2NCwgNTUsIDk5NDgsIDExOTA4NSwgMCwgMCwgCi0gICAgNzkzNSwgMjQyMCwgMCwgMTExNCwgOTI1OTksIDY3NTg1LCA3ODY3NSwgMTIwMDUzLCA5MjM1MCwgMTIwMDUxLCAzOTM4LCAKKyAgICA3OTM1LCAyNDIwLCAwLCAxMTE0LCA5MjU5OSwgNjc1ODUsIDcwMTA0LCAxMjAwNTMsIDkyMzUwLCAxMjAwNTEsIDM5MzgsIAogICAgIDEyMDA1NywgNjU0MTcsIDY0NzE3LCAxMjAwNjAsIDEyMDA2MSwgNjU0MTUsIDEyMDA1OSwgNjI5MiwgNjUzMDMsIDc5NTUsIAogICAgIDY0NTIsIDQ3MTMsIDEyODE5NiwgNjYyNDksIDkxNzg4NSwgOTE3ODkwLCA5MTc4OTEsIDY1MTUyLCA3MTksIDEyMDA0NCwgCiAgICAgNzg2MjMsIDEyMDA0MiwgNjcxMywgNDUzMiwgNjU0MTIsIDY5ODIyLCAxMDg2OCwgNDcxNywgMjM0OSwgNTkwMiwgNjY0NTAsIAogICAgIDQ3MTIsIDkxNzkwMiwgOTE3ODk5LCA5MTc5MDAsIDY1NDE2LCA4MTU1LCA0NzE4LCAzOTQyLCA0NzE0LCA5NjI1LCAwLCAKLSAgICA2MzgzLCAxOTQ3NDQsIDEyMDA2LCAxMjg1NjUsIDAsIDAsIDAsIDAsIDY1NDE0LCA2NDU0LCAxMjI5LCAwLCA2NjQzNywgCi0gICAgNjYwMjUsIDc4Njk5LCAwLCA0MjUwMCwgMTIwNTA4LCA0ODA5LCA5NjIzLCA5MTc4NzQsIDc4Njk0LCA5MTc4ODAsIAorICAgIDYzODMsIDE5NDc0NCwgMTIwMDYsIDEyODU2NSwgMCwgMCwgMCwgMCwgNjU0MTQsIDY0NTQsIDEyMjksIDEyNjYwNiwgCisgICAgNjY0MzcsIDY2MDI1LCA3ODY5OSwgMCwgNDI1MDAsIDEyMDUwOCwgNDgwOSwgOTYyMywgOTE3ODc0LCA3ODY5NCwgOTE3ODgwLCAKICAgICA5MTc4NzcsIDkxNzg3OCwgNjU0MDUsIDY4MTU5LCAxMjg5MywgOTE3ODgyLCA1MzY1LCA0NTQ1LCA4OTAxLCA5MjQyMSwgCiAgICAgMTE5NTU1LCA0ODEzLCAxMjgyNjIsIDAsIDU5MjUsIDQ4MDgsIDY0MzMwLCAwLCA2NTQ3NSwgMTE4OTQwLCAxOTUwMjgsIAotICAgIDQ4MTQsIDAsIDQ4MTAsIDAsIDAsIDY0OTI4LCAxMDU0MywgMCwgMzUyMiwgMCwgNDE0LCA2NTQwNCwgMCwgMTk1MDI3LCAKKyAgICA0ODE0LCAwLCA0ODEwLCAwLCAwLCA2NDkyOCwgMTA1NDMsIDAsIDM1MjIsIDcxMzM1LCA0MTQsIDY1NDA0LCAwLCAxOTUwMjcsIAogICAgIDY0NTYsIDczODIwLCAwLCA2NjkxLCA0MjE5MywgOTIyMjUsIDEyODE3MSwgMCwgNzQ0OTUsIDAsIDAsIDAsIDExODgyMCwgCiAgICAgOTc1MSwgNjU0MDcsIDEyODA4NSwgMTE3NzAsIDM5MTksIDAsIDAsIDY1MDYxLCAwLCAwLCAwLCAxMjIzNSwgMCwgMCwgCi0gICAgMTI3MjMzLCA2NDA5MiwgMCwgNjQwODAsIDAsIDY0MDkwLCAwLCAwLCAxMDE2MiwgMTAzMTAsIDAsIDg0NTQsIDEyNzg4OCwgCi0gICAgNDIwMzgsIDM4NywgNDEzNjMsIDEyNzM3LCAwLCA0NzgwLCA0MzM2OCwgMCwgNjQzMTAsIDY0NjIxLCA2NzMyLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA4ODk2LCAwLCAzNzUsIDY5NzYsIDY2NTgyLCAxMTkwMDUsIDAsIDAsIDAsIDExOTIwMiwgMTE5MjAzLCAxMjUyNiwgCi0gICAgNDMxMjAsIDIzMTUsIDAsIDE5MzgsIDExOTE5NywgMCwgNDUyOSwgMTE5MjAwLCAxMTkyMDEsIDExOTE5OCwgMTE5MTk5LCAKLSAgICA2OTY5MiwgMCwgNjk2OTgsIDEzMTUwLCA2NDQ5MiwgMCwgMCwgMCwgMTI5MDIsIDAsIDQyODkxLCA2NjMyNywgNzQyOTgsIDAsIAotICAgIDEwNzk5LCA2OTY5MCwgMjU4NywgNjYzNzIsIDAsIDQxOTMsIDkyMjUwLCA0MjQxLCAwLCA3OTk4LCAwLCAwLCAwLCAwLCAKLSAgICAyMzE2LCAxMTg4MjEsIDAsIDAsIDAsIDY0Mjk3LCA3NDc5OSwgOTI0NDIsIDc0MTQwLCAwLCA1MzczLCAwLCAwLCAzNzYyLCAKLSAgICAxMDAxNSwgMTI3MzM1LCAxMTkyMzIsIDAsIDQxNTkwLCAwLCA5MjM3OCwgMzc4MCwgNzQ4NSwgNTc3OSwgMCwgNDIwMzcsIDAsIAotICAgIDM5MDYsIDEyMzQ5LCAwLCA4MzI2LCAwLCA2NTQ5OCwgMzc2MywgNjk4MywgNTYxOCwgMCwgMzc3OSwgMCwgNDM2MTMsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDI4MCwgNzQ1NTgsIDEyNzMzMiwgNjgxMzgsIDEzMDcyLCAxODk0LCAwLCAwLCA2NTQ3OCwgCi0gICAgNDMzMTAsIDcyMzEsIDAsIDExNzczLCAwLCAwLCAwLCAwLCAyNTUxLCAwLCA2NDUzLCAxMDIwMCwgNjIzNSwgMCwgMTE5MjM3LCAKLSAgICAwLCAxMjg4MDUsIDQ0NzAsIDExOTYxMywgOTE3NTU3LCA3NzgwLCA1MzY5LCAxMTg5NTgsIDUyNDksIDAsIDUzNjcsIDg3NTYsIAotICAgIDEyNzE0MywgMCwgNTM3NywgMTIwNTg1LCA2ODE0MywgMTY4OCwgNzgyNDUsIDAsIDY5Njg1LCAwLCAwLCAwLCA0NDAyMCwgCi0gICAgNjgwOCwgNDEzMTksIDEzMDAsIDEwNjUwLCA0MTY5MiwgNjQ1MDUsIDQ2NjgsIDAsIDExOTYyNCwgMTQ2NSwgMTA4NTAsIAorICAgIDEyNzIzMywgNjQwOTIsIDk4MzQ2MiwgNjQwODAsIDAsIDY0MDkwLCAwLCA2OTkxMywgMTAxNjIsIDEwMzEwLCAwLCA4NDU0LCAKKyAgICAxMjc4ODgsIDQyMDM4LCAzODcsIDQxMzYzLCAxMjczNywgMCwgNDc4MCwgNDMzNjgsIDAsIDY0MzEwLCA2NDYyMSwgNjczMiwgCisgICAgNzgxMTYsIDAsIDk4MzEzOSwgMCwgOTgzMDc0LCA4ODk2LCAwLCAzNzUsIDY5NzYsIDY2NTgyLCAxMTkwMDUsIDk4Mzg2NSwgCisgICAgMCwgOTgzNDI2LCAxMTkyMDIsIDExOTIwMywgMTI1MjYsIDQzMTIwLCAyMzE1LCAwLCAxOTM4LCAxMTkxOTcsIDAsIDQ1MjksIAorICAgIDExOTIwMCwgMTE5MjAxLCAxMTkxOTgsIDExOTE5OSwgNjk2OTIsIDk4MzQyNCwgNjk2OTgsIDEzMTUwLCA2NDQ5MiwgMCwgMCwgCisgICAgMjI5MSwgMTI5MDIsIDAsIDQyODkxLCA2NjMyNywgNzQyOTgsIDkxNzg1NywgMTA3OTksIDY5NjkwLCAyNTg3LCA2NjM3MiwgCisgICAgMCwgNDE5MywgOTIyNTAsIDQyNDEsIDk4MzA1NywgNzk5OCwgMCwgMCwgMCwgMTI2NjQwLCAyMzE2LCAxMTg4MjEsIDAsIDAsIAorICAgIDAsIDY0Mjk3LCA3NDc5OSwgOTI0NDIsIDc0MTQwLCAwLCA1MzczLCAwLCA5ODM4NzcsIDM3NjIsIDEwMDE1LCAxMjA2NzIsIAorICAgIDExOTIzMiwgMCwgNDE1OTAsIDAsIDcwMDk4LCAzNzgwLCA3NDg1LCA1Nzc5LCAwLCA0MjAzNywgMCwgMzkwNiwgMTIzNDksIAorICAgIDAsIDgzMjYsIDAsIDY1NDk4LCAzNzYzLCA2OTgzLCA1NjE4LCAwLCAzNzc5LCAwLCA0MzYxMywgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMjgwLCA3NDU1OCwgMTI3MzMyLCA2ODEzOCwgMTMwNzIsIDE4OTQsIDAsIDAsIDY1NDc4LCA0MzMxMCwgNzIzMSwgMCwgCisgICAgMTE3NzMsIDAsIDAsIDAsIDAsIDI1NTEsIDAsIDY0NTMsIDEwMjAwLCA2MjM1LCA5ODM3NDMsIDExOTIzNywgMCwgMTI4ODA1LCAKKyAgICA0NDcwLCAxMTgyNiwgOTE3NTU3LCA3NzgwLCA1MzY5LCAxMTg5NTgsIDUyNDksIDAsIDUzNjcsIDg3NTYsIDEyNzE0MywgMCwgCisgICAgNTM3NywgMTIwNTg1LCA2ODE0MywgMTY4OCwgNzgyNDUsIDk4MzM0OCwgNjk2ODUsIDk4Mzc0NywgMCwgMCwgNDQwMjAsIAorICAgIDY4MDgsIDQxMzE5LCAxMzAwLCAxMDY1MCwgNDE2OTIsIDY0NTA1LCAyMjkwLCAwLCAxMTk2MjQsIDE0NjUsIDEwODUwLCAKICAgICAzOTQzLCAwLCA0MTIwNSwgNDEzMTUsIDExODk2MSwgMCwgMCwgNTM1MiwgMCwgMCwgODgzOSwgNDEzMTQsIDczODQsIDc3ODUsIAogICAgIDQxMjA0LCAxMjczMjIsIDQxMjA5LCA2OTYzNywgOTIyNDEsIDQzNjA3LCAwLCAwLCA1NDIwLCAzODk3LCAxMDEzNCwgMCwgCiAgICAgNzQ0MTcsIDQwMTgsIDcxNTAsIDY4MTI3LCAwLCAwLCAwLCAwLCAxMjc1MjYsIDI1NjEsIDY4NjIxLCAzNTQyLCA3MTQ4LCAKICAgICAxMjA3NiwgNzk1MSwgNjgxNTIsIDExODg1NywgNTMwMywgNjI3NiwgMTcwNiwgMCwgNzg3NTEsIDcxNDYsIDAsIDY1MTUwLCAKLSAgICA0MTgxOSwgMCwgNzM5NTEsIDEwODQ3LCA0MTgyMiwgOTk4NSwgODYwLCAwLCAxMDUwNiwgMCwgNjk2NDEsIDEwNzUzLCAKKyAgICA0MTgxOSwgMCwgNzM5NTEsIDEwODQ3LCA0MTgyMiwgOTk4NSwgODYwLCAwLCAxMDUwNiwgOTgzNDI3LCA2OTY0MSwgMTA3NTMsIAogICAgIDEwODMwLCAwLCA2MTUsIDY0NDkwLCA3NTc0LCA5MjYxNywgNzc5MjIsIDAsIDEyOTA5LCA0MzAxNiwgNjQ1NTksIDEyNzAyOCwgCi0gICAgMCwgMCwgMCwgMjAyMCwgMCwgNDAyMiwgMTI4NzgzLCAwLCA3NzkyMywgMCwgNDE2OTEsIDAsIDAsIDc0MzI5LCAwLCAKLSAgICA2NDYyMiwgOTA3MCwgMCwgNjg0MTEsIDM5MTEsIDQyODI5LCA0MzEyMiwgMTAzMywgNzQ0NDAsIDAsIDcwMDAsIDM5MDQsIDAsIAotICAgIDEyODE5OCwgMCwgMTE4OTMxLCAxMTk2MzAsIDEzMTIzLCAxMDg0NiwgMzQ1MCwgMTI3MzYwLCA3Mzk3LCAxMTg4MDcsIDAsIAotICAgIDQyNzc4LCAxMDAwMCwgNDEwODgsIDQ0OSwgMCwgMzc3NywgNjg0NTgsIDAsIDk2MzYsIDAsIDEwNzM4LCA2OTYzNCwgOTM2NywgCi0gICAgNTkzLCA0MTA4NSwgMzk5OSwgNjUyMjYsIDQxNzEzLCAxMjc2NCwgMCwgNjQ0MDksIDM1OTYsIDAsIDAsIDk3NjMsIAorICAgIDAsIDAsIDY3OTk2LCAyMDIwLCAwLCA0MDIyLCAxMjg3ODMsIDAsIDc3OTIzLCAxMjY1OTMsIDQxNjkxLCAwLCAwLCA3NDMyOSwgCisgICAgMCwgNjQ2MjIsIDkwNzAsIDAsIDY4NDExLCAzOTExLCA0MjgyOSwgNDMxMjIsIDEwMzMsIDc0NDQwLCAwLCA3MDAwLCAzOTA0LCAKKyAgICAwLCAxMjgxOTgsIDAsIDExODkzMSwgMTE5NjMwLCAxMzEyMywgMTA4NDYsIDM0NTAsIDEyNzM2MCwgNzM5NywgMTE4ODA3LCAKKyAgICAwLCA0Mjc3OCwgMTAwMDAsIDQxMDg4LCA0NDksIDAsIDM3NzcsIDY4NDU4LCAwLCA5NjM2LCAwLCAxMDczOCwgNjk2MzQsIAorICAgIDkzNjcsIDU5MywgNDEwODUsIDM5OTksIDY1MjI2LCA0MTcxMywgMTI3NjQsIDAsIDY0NDA5LCAzNTk2LCAwLCAwLCA5NzYzLCAKICAgICAxMjAyODAsIDkyMTkyLCAxMjM0NywgMTI0LCAxMjk4MSwgNDExMjcsIDIwOTIsIDkyNjg3LCAwLCAwLCAwLCAxMDgyMCwgCi0gICAgNDM5ODcsIDAsIDAsIDE3NjksIDQxNzE1LCAyNDYzLCA3ODQ4OSwgMCwgMTI3NzAsIDAsIDE1MzgsIDAsIDQzMTI0LCAwLCAKLSAgICAxOTUwNTgsIDc3OTUsIDEyMDMwMCwgMCwgNDgyOCwgMTI1OCwgMTI3ODAyLCAyMDA2LCAwLCAwLCA5NDk4LCAxMjcwMzIsIAorICAgIDQzOTg3LCAwLCAwLCAxNzY5LCA0MTcxNSwgMjQ2MywgNzg0ODksIDAsIDEyNzcwLCAxMjY1MDAsIDE1MzgsIDAsIDQzMTI0LCAKKyAgICAwLCAxOTUwNTgsIDc3OTUsIDEyMDMwMCwgMCwgNDgyOCwgMTI1OCwgMTI3ODAyLCAyMDA2LCAwLCAwLCA5NDk4LCAxMjcwMzIsIAogICAgIDEyNzAzMywgMTIwMjg5LCAxMjAyODgsIDM5MzksIDEyMDI5MCwgODg0NiwgODk0MywgMTIwMjg3LCAxMjAyODYsIDI2NTAsIAogICAgIDQ0OTEsIDE5NjEsIDQyNjAyLCAxMTUyNSwgMTIwMjkyLCAxOTU5LCAxMjAyOTQsIDU1MjI4LCAxMTc3NCwgNDEwMTYsIDAsIAogICAgIDY4Njc1LCAxMjgwNTQsIDE1MTEsIDkzMjQsIDc4MjExLCAxMDUxOSwgNjYzMzEsIDM0NTQsIDE5OTMwLCAwLCA0MTAxOSwgMCwgCiAgICAgMCwgNjUyOTIsIDY4MjIsIDEyODYyLCAwLCAwLCA0MjE0MywgNDE4MjgsIDc4MjA3LCA2NTUzMSwgNzgyMDgsIDExODg3OSwgCi0gICAgNTUyMjMsIDAsIDAsIDQxODI2LCA4ODY1LCA2NDAyLCAwLCAxMzI3OSwgNzkxNywgMTIwMzQwLCAwLCA3NzMzLCAwLCA0OTk4LCAKLSAgICAwLCA5MjMzMiwgNDE5NTAsIDAsIDQyNjgsIDAsIDAsIDAsIDQwMTMsIDAsIDEwODgxLCAwLCAwLCAwLCA3NDc4OCwgMjAxNCwgCi0gICAgMCwgMCwgOTc2NSwgMCwgMCwgMCwgMTk1MDU5LCA3ODM1NywgNjUyODEsIDEyNzgyNSwgMTA5NDksIDAsIDAsIDAsIDIwMTUsIAotICAgIDAsIDAsIDAsIDY2MzE4LCA0MzIzMywgMCwgNDI1MTcsIDAsIDAsIDAsIDEyNjk4LCA4MDk0LCAxMDEzNSwgNjU5MDksIAotICAgIDY0NzQsIDc5NCwgMCwgMTI2NTYsIDEyODEyMiwgMTE5MzUzLCAxMjgyNzAsIDE2NjUsIDAsIDQ4MzMsIDAsIDExOTM1MSwgCi0gICAgMTI3MzY3LCAwLCAxODksIDEyNjExLCAwLCAwLCAyODU5LCA0ODM4LCAwLCA0ODM0LCA2NTA3OCwgMCwgMCwgNDgzNywgCi0gICAgMTI3MDYxLCA3NzAsIDAsIDgxMSwgMCwgNDEwNDIsIDkxNzU1MSwgNDEzMTgsIDY0NDI3LCAwLCAwLCA3ODg0OCwgMzg5NSwgCi0gICAgMCwgNzQzNDEsIDM5NzYsIDAsIDQyODU5LCAxMDE5MywgMzExNiwgNzc0NywgMCwgMCwgMCwgMCwgMCwgNDM2ODYsIDc4ODQ2LCAKLSAgICA0MTg3NywgMCwgMjg3MSwgNjQ2MTQsIDEyODc4NSwgOTk5LCAwLCA2MzQ1LCA0MTg3NiwgMjY2MywgMjAxNywgMCwgMCwgCi0gICAgMTEwNDAsIDEwMTUwLCAwLCA2NDMwOCwgMTUyMiwgNTk3LCA0Nzc1LCAxMjU1NSwgMTI1NzEsIDEyNTUwLCAxMjU4MywgCi0gICAgMTI1NjAsIDIwMTksIDEyNTU2LCAxMjU4NCwgMzA5MiwgMCwgMTI1NjIsIDQ3ODMsIDEyNTY2LCAxMjU2OSwgMTI1NTQsIDAsIAotICAgIDEwODEyLCA3ODg1MSwgMCwgMCwgMzA3OCwgMTQwMiwgMCwgMTI4Mjc1LCAwLCAwLCAxMTkyNDgsIDM5NCwgMzA4OCwgMCwgCi0gICAgOTIxNzIsIDAsIDM5OTEsIDY0MzkxLCAwLCAwLCA0MjQsIDY2MzI4LCAxOTk5LCA2OTY1OSwgNzM5MTQsIDAsIDAsIDAsIDAsIAotICAgIDQyMjMxLCA4MjQ2LCAwLCAwLCAwLCA0MTg0MCwgMCwgMjM3NywgMTI5OCwgNjQwMTEsIDEyNTcyLCAxMTMxOCwgMTI1NTcsIAotICAgIDEyNTU5LCAxMjU3MCwgODQ4OCwgMTAwMywgMjM3MywgOTQ0NiwgNzQ4MSwgOTQ0OCwgNDgsIDAsIDk0ODAsIDQ4MSwgMCwgCi0gICAgOTQzOCwgOTQzOSwgOTQ0MCwgOTQ0MSwgODQ2NSwgOTQ0MywgOTQ0NCwgOTQ0NSwgOTQzMCwgOTQzMSwgOTQzMiwgOTQzMywgCi0gICAgOTQzNCwgOTQzNSwgMzk4NCwgOTQzNywgMCwgMCwgOTQyNCwgOTQyNSwgOTQyNiwgOTQyNywgOTQyOCwgOTQyOSwgNjQ3NTgsIAotICAgIDIzNjIsIDk2NTUsIDAsIDIwMDQsIDkwOTYsIDk3ODIsIDEyODg0OCwgOTE3MiwgMTI4NTQ1LCAxOTk2NSwgMCwgNTk1NSwgCi0gICAgNjc2NjYsIDExMDgsIDAsIDc0NzczLCAwLCAwLCA2NDc4MiwgMzkyNiwgOTI0NDgsIDY1MjEwLCA4Nzk4LCAwLCA5MjE2NSwgCi0gICAgMTM5MiwgMCwgMCwgMTI3MzY0LCAxMDYwNiwgODA2NSwgMTE4ODA1LCAxMDM1MywgMTA0MTcsIDAsIDAsIDY0NTI0LCAKLSAgICA5MjQxOCwgNDAxOSwgMCwgMCwgNDMyODAsIDgyMTksIDY4NDAyLCAxODEyLCAwLCAwLCAwLCAwLCA0MjQxMCwgNzQ0NDgsIAotICAgIDExOTEzMiwgNjA1NCwgMTA2OTcsIDMxNjksIDQyMjk3LCA0MjMyMiwgMTA2NDIsIDM5MDksIDk5NTAsIDAsIDEyODEzOSwgMCwgCi0gICAgNjg2NzgsIDAsIDAsIDEwNDksIDAsIDY1NzA3LCAyMzA0LCA0MTgwNiwgOTIzMjYsIDQyMzM2LCAzOTIxLCAwLCAxMTc3NSwgCi0gICAgNjQ3NjAsIDExNzY2LCAxMDM4LCA0MjMwMywgOTgyMywgMTI3Mjc4LCA2OTIzNiwgNDAwOCwgNjQwMDQsIDg3NzMsIDEwNzMzLCAKLSAgICAzNiwgMCwgNTE1MywgNDE4MDUsIDAsIDczNzM1LCA3NjMsIDQxODA4LCA2NDkxMCwgMCwgMjAwOSwgMCwgMCwgMTI3MTQyLCAKLSAgICA5NjQwLCAxMTk5NTEsIDAsIDEyMDY5NSwgODYyMSwgMCwgMTI4NTIsIDMwMzEsIDAsIDY0MzYxLCAwLCAxODIsIDE5NDcxOCwgCi0gICAgOTI3MTYsIDkyNTk4LCAxMTk5NTAsIDAsIDkwNTgsIDM2NiwgMCwgOTg5MiwgNTk2OSwgMTE3NTQsIDEwODQ4LCA0NTcwLCAKLSAgICA2NTMwMSwgNDQwMTMsIDQyNTUsIDAsIDEwMTAyLCA0MTE4OSwgNDAwMywgNDEwMjYsIDY4MTA5LCAxMzI5MywgNDExOTIsIAotICAgIDY5NjM1LCAwLCA0MjI1MSwgMCwgNDI1MzQsIDY1MTc5LCAxMTI4NywgNjEyOCwgMCwgMTEwMzQsIDEwOTIzLCA2NDQyMywgMCwgCi0gICAgNjU1MDYsIDAsIDY1ODYxLCA3NDA4MywgOTI2MDAsIDk5MzIsIDAsIDkyNDIzLCAxMTk5NTUsIDAsIDk4MTcsIDAsIAotICAgIDEyMDE0MCwgMCwgMTIxMTcsIDY2NTg2LCA0MTgzLCAxMDU0MCwgNjYyNTAsIDkwNjMsIDEyNzA0NSwgMCwgMTE5OTU0LCAwLCAKLSAgICAxMjg5NywgMzc5MiwgMjAxMSwgMCwgNjA2NSwgNDMxNjAsIDAsIDE5NDcxNSwgODY5MiwgNDExODYsIDQxODE2LCA0MTAyMywgCi0gICAgNDE4MTgsIDQxMTg3LCAxMTY1OSwgNzkyMiwgMTI2MTQsIDIwMDUsIDg1MjMsIDc4MDAyLCAwLCA3NTEzLCAxODYzLCA0NzEwLCAKLSAgICAwLCA1OTU2LCA3NjIxLCA3ODAwNiwgOTI2MjQsIDQ3MDUsIDcxNiwgNzgwMDQsIDAsIDQ3MDQsIDEyMDA0MCwgMTIwMjcwLCAKLSAgICA0MjI0MSwgMTYxLCA0Mzk3NywgNzQ1NDYsIDY2MjE0LCA0NzA2LCAwLCAwLCA0MjY3MiwgNDcwOSwgMTA2ODAsIDAsIAotICAgIDQzMjkzLCAxMTk5NDQsIDAsIDExOTE2NCwgMTIwMzI4LCA5MjQ2NywgMCwgMTcwMCwgMTE5MjIzLCAwLCAwLCAxMjgxMTksIAotICAgIDQwMDQsIDAsIDEwOTY4LCA0MzI5NiwgMCwgODUwNiwgMCwgMCwgMTI2OTk2LCAxMDA1LCA5MzcsIDc4MjE2LCA0NzM0LCAKLSAgICAyODcwLCAwLCA3ODIxOCwgMCwgNzQ2MywgNDcyOSwgMCwgMjM1LCAxMzg0LCA0NzI4LCAwLCAxMjA0MjAsIDkyNDkwLCAKLSAgICAxMjAzMzEsIDgxMDksIDQzMTA1LCAwLCA0NzMwLCA0NDcsIDEzMTg2LCAxNTEzLCA0NzMzLCAxMjA0MTUsIDAsIDAsIAotICAgIDQyNTI3LCAxMjkxMSwgNDM0MjcsIDEzODMsIDg1NjUsIDI0NjksIDEyMDAyNCwgNjY5MCwgNjE1NiwgNjgxMTcsIDQzNDM5LCAKLSAgICA3OTkzLCA0Mjg4LCAxMjA0MTYsIDI2NzQsIDEzMjM4LCAxMTkyMiwgMCwgMTIwMzMwLCAzNTEwLCAxMzIzNCwgMCwgCi0gICAgMTIwNDA3LCA1NjA1LCA0MjA5NSwgMTEzNjQsIDAsIDEzODAsIDY1NjE3LCAxMjAyNTMsIDEyMDI2MSwgMTMxOTYsIDEzMTk3LCAKLSAgICAxMjAzMDksIDEyMDY4MiwgOTQ5NSwgMTE5MzQ2LCAwLCA1OTU5LCAwLCA3Mzk3NiwgMTIwMzA1LCA0MzM3MSwgNjk0MSwgCi0gICAgMTE5MzQ5LCAxMzIwNSwgMTMyMTEsIDU4MDEsIDEyNzY5LCA2NTkwNSwgNDE2OTcsIDEyODMsIDEyMDMwMiwgNDc3OSwgMCwgCi0gICAgMzcxOSwgNDAwNiwgMCwgMTk5NTcsIDEyODc3MywgMjAyMSwgMTE5MzMyLCAxMjA2OTksIDExOTE1MCwgNDMwMjgsIDY1NDkzLCAKLSAgICA0MTgzOCwgMzg3NSwgNTk2MiwgNjQzNDEsIDkyNjE2LCA5ODE0LCA0MzQ1NywgNTgyNywgMzMxNCwgNzc4NywgNzgyMzQsIAotICAgIDY1NDk0LCA2ODE1MywgMCwgMCwgMTIwNjM2LCA2NDUzMSwgMTIwNjkyLCAxOTQ2MjYsIDAsIDAsIDY2MzE2LCA2NTQ2NywgCi0gICAgNTc3MSwgNDEyOTgsIDAsIDk3NDIsIDUyMSwgMCwgMTA4MDAsIDAsIDg0MDQsIDE5NDYyNSwgNDgzLCA3MDk2LCA3MDg5LCAKLSAgICA2NjMyMywgOTI4LCAwLCAwLCAxMTkwMTgsIDEwNTk5LCAxMTU4NiwgMzk4OSwgMTA5NzEsIDAsIDY1NzgyLCA5ODQxLCAKLSAgICA4ODQzLCAxMjE0NSwgOTI0NzAsIDEwMDc0LCA3ODU0OCwgMCwgMzc2OSwgMCwgMCwgMCwgMCwgOTU3MywgMCwgNjUyOTAsIAotICAgIDg4NDksIDAsIDY1ODU1LCA2NTExMiwgMTc5NiwgMTIwNTA1LCAwLCA2OTY2NSwgODE2NCwgNDEzMDEsIDM1MDIsIDAsIAotICAgIDczODgsIDEwNjIxLCA3MzgzOCwgNzg1NTMsIDU4MjUsIDEzMDA3LCA2ODE2NSwgMCwgMTIwNDU3LCAxMjY2MSwgNzYwOCwgCi0gICAgMTAzNTQsIDEwNDE4LCA0MjQxMSwgMjAyMiwgMCwgMTQwOSwgMTIxOTUsIDQwMDEsIDMxMTIsIDEwODI0LCAxMjA2MzksIAotICAgIDEzOTAsIDAsIDAsIDQyMSwgNDM1MzYsIDU4NDYsIDEyMDEyMCwgNDEzMCwgMTI3Nzc1LCA3NTk1LCA0MjU4OCwgNzYwMCwgCi0gICAgMTIwMTIxLCA2NjAzNSwgMCwgMCwgNjU4NTEsIDQyNjA3LCAxMjgxOTAsIDkyNDAzLCAzMTY4LCAwLCA0MjEzNCwgMCwgCi0gICAgMjM3MCwgMjg0NiwgOTI2MDUsIDAsIDAsIDEyMDEzMiwgMCwgMTgzNiwgMCwgMCwgOTI1NTgsIDM3NDAsIDkyNTQ3LCA2MjkwLCAKKyAgICA1NTIyMywgMCwgMTI4MDcxLCA0MTgyNiwgODg2NSwgNjQwMiwgMCwgMTMyNzksIDc5MTcsIDc0NzU1LCAwLCA3NzMzLCAwLCAKKyAgICA0OTk4LCA5ODM4ODcsIDkyMzMyLCA0MTk1MCwgMCwgNDI2OCwgMCwgMCwgNzAwNjEsIDQwMTMsIDAsIDEwODgxLCAwLCAwLCAKKyAgICAwLCA3NDc4OCwgMjAxNCwgMCwgMCwgOTc2NSwgMCwgMCwgMCwgMTk1MDU5LCA3ODM1NywgNjUyODEsIDEyNzgyNSwgMTA5NDksIAorICAgIDAsIDAsIDAsIDIwMTUsIDAsIDAsIDAsIDY2MzE4LCA0MzIzMywgMCwgNDI1MTcsIDAsIDAsIDAsIDEyNjk4LCA4MDk0LCAKKyAgICAxMDEzNSwgNjU5MDksIDY0NzQsIDc5NCwgMCwgMTI2NTYsIDEyODEyMiwgMTE5MzUzLCAxMjgyNzAsIDE2NjUsIDAsIDQ4MzMsIAorICAgIDk4MzA1MywgMTE5MzUxLCAxMjczNjcsIDAsIDE4OSwgMTI2MTEsIDAsIDAsIDI4NTksIDQ4MzgsIDAsIDQ4MzQsIDY1MDc4LCAKKyAgICAwLCAwLCA0ODM3LCAxMjcwNjEsIDc3MCwgMCwgODExLCAwLCA0MTA0MiwgOTE3NTUxLCA0MTMxOCwgNjQ0MjcsIDAsIAorICAgIDEyODIwOCwgNzg4NDgsIDM4OTUsIDAsIDc0MzQxLCAzOTc2LCAwLCA0Mjg1OSwgMTAxOTMsIDMxMTYsIDc3NDcsIDAsIDAsIAorICAgIDAsIDAsIDAsIDQzNjg2LCA3ODg0NiwgNDE4NzcsIDAsIDI4NzEsIDY0NjE0LCAxMjg3ODUsIDk5OSwgMCwgNjM0NSwgCisgICAgNDE4NzYsIDI2NjMsIDIwMTcsIDAsIDAsIDExMDQwLCAxMDE1MCwgMCwgNjQzMDgsIDE1MjIsIDU5NywgNDc3NSwgMTI1NTUsIAorICAgIDEyNTcxLCAxMjU1MCwgMTI1ODMsIDEyNTYwLCAyMDE5LCAxMjU1NiwgMTI1ODQsIDMwOTIsIDAsIDEyNTYyLCA0NzgzLCAKKyAgICAxMjU2NiwgMTI1NjksIDEyNTU0LCAwLCAxMDgxMiwgNzg4NTEsIDAsIDAsIDMwNzgsIDE0MDIsIDAsIDEyODI3NSwgMCwgMCwgCisgICAgMTE5MjQ4LCAzOTQsIDMwODgsIDAsIDkyMTcyLCAwLCAzOTkxLCA2NDM5MSwgMCwgMTI4NTI0LCA0MjQsIDY2MzI4LCAxOTk5LCAKKyAgICA2OTY1OSwgNzM5MTQsIDAsIDAsIDAsIDAsIDQyMjMxLCA4MjQ2LCAwLCAwLCAwLCA0MTg0MCwgOTgzNjA5LCAyMzc3LCAKKyAgICAxMjk4LCA2NDAxMSwgMTI1NzIsIDExMzE4LCAxMjU1NywgMTI1NTksIDEyNTcwLCA3NDc5LCAxMDAzLCAyMzczLCA5NDQ2LCAKKyAgICA3NDgxLCA5NDQ4LCA0OCwgMCwgOTQ4MCwgNDgxLCAwLCA5NDM4LCA5NDM5LCA5NDQwLCA5NDQxLCA4NDY1LCA5NDQzLCAKKyAgICA5NDQ0LCA5NDQ1LCA5NDMwLCA5NDMxLCA5NDMyLCA5NDMzLCA5NDM0LCA5NDM1LCAzOTg0LCA5NDM3LCAwLCAwLCA5NDI0LCAKKyAgICA5NDI1LCA5NDI2LCA5NDI3LCA5NDI4LCA5NDI5LCA2NDc1OCwgMjM2MiwgOTY1NSwgMCwgMjAwNCwgOTA5NiwgOTc4MiwgCisgICAgMTI4ODQ4LCA5MTcyLCAxMjg1NDUsIDE5OTY1LCAwLCA1OTU1LCA2NzY2NiwgMTEwOCwgMCwgNzQ3NzMsIDAsIDAsIDY0NzgyLCAKKyAgICAzOTI2LCA5MjQ0OCwgNjUyMTAsIDg3OTgsIDAsIDkyMTY1LCAxMzkyLCAwLCAwLCAxMjczNjQsIDEwNjA2LCA4MDY1LCAKKyAgICAxMTg4MDUsIDEwMzUzLCAxMDQxNywgMCwgMCwgNjQ1MjQsIDkyNDE4LCA0MDE5LCAwLCA5ODMyODAsIDQzMjgwLCA4MjE5LCAKKyAgICA2ODQwMiwgMTgxMiwgMTE5OTYzLCA5ODM2ODMsIDAsIDEyNjQ4OCwgNDI0MTAsIDc0NDQ4LCAxMTkxMzIsIDYwNTQsIAorICAgIDEwNjk3LCAzMTY5LCA0MjI5NywgNDIzMjIsIDEwNjQyLCAzOTA5LCA5OTUwLCAwLCAxMjgxMzksIDk4MzI1MywgNjg2NzgsIAorICAgIDAsIDAsIDEwNDksIDAsIDY1NzA3LCAyMzA0LCA0MTgwNiwgOTIzMjYsIDQyMzM2LCAzOTIxLCAwLCAxMTc3NSwgNjQ3NjAsIAorICAgIDExNzY2LCAxMDM4LCA0MjMwMywgOTgyMywgMTI3Mjc4LCA2OTIzNiwgNDAwOCwgNjQwMDQsIDg3NzMsIDEwNzMzLCAzNiwgMCwgCisgICAgNTE1MywgNDE4MDUsIDAsIDczNzM1LCA3NjMsIDQxODA4LCA2NDkxMCwgOTgzMTMwLCAyMDA5LCAwLCAwLCAxMjcxNDIsIAorICAgIDk2NDAsIDExOTk1MSwgMCwgMTIwNjk1LCA4NjIxLCAxMjA1MjMsIDEyODUyLCAzMDMxLCA5ODMwNTAsIDY0MzYxLCAwLCAKKyAgICAxODIsIDE5NDcxOCwgOTI3MTYsIDkyNTk4LCAxMTk5NTAsIDQyNjEzLCA5MDU4LCAzNjYsIDAsIDk4OTIsIDU5NjksIAorICAgIDExNzU0LCAxMDg0OCwgNDU3MCwgNjUzMDEsIDQ0MDEzLCA0MjU1LCAxMjc4ODksIDEwMTAyLCA0MTE4OSwgNDAwMywgCisgICAgNDEwMjYsIDY4MTA5LCAxMzI5MywgNDExOTIsIDY5NjM1LCAwLCA0MjI1MSwgMCwgNDI1MzQsIDY1MTc5LCAxMTI4NywgCisgICAgNjEyOCwgMCwgMTEwMzQsIDEwOTIzLCA2NDQyMywgMCwgNjU1MDYsIDAsIDY1ODYxLCA3NDA4MywgOTI2MDAsIDk5MzIsIDAsIAorICAgIDkyNDIzLCAxMTk5NTUsIDAsIDk4MTcsIDAsIDEyMDE0MCwgMCwgMTIxMTcsIDY2NTg2LCA0MTgzLCAxMDU0MCwgNjYyNTAsIAorICAgIDkwNjMsIDEyNzA0NSwgMCwgMTE5OTU0LCAwLCAxMjg5NywgMzc5MiwgMjAxMSwgMCwgNjA2NSwgNDMxNjAsIDAsIDE5NDcxNSwgCisgICAgODY5MiwgNDExODYsIDQxODE2LCA0MTAyMywgNDE4MTgsIDQxMTg3LCAxMTY1OSwgNzkyMiwgMTI2MTQsIDIwMDUsIDg1MjMsIAorICAgIDc4MDAyLCAwLCA3NTEzLCAxODYzLCA0NzEwLCAwLCA1OTU2LCA3NjIxLCA3ODAwNiwgOTI2MjQsIDQ3MDUsIDcxNiwgCisgICAgNzgwMDQsIDAsIDQ3MDQsIDEyMDA0MCwgMTIwMjcwLCA0MjI0MSwgMTYxLCA0Mzk3NywgNzQ1NDYsIDY2MjE0LCA0NzA2LCAwLCAKKyAgICA2OTkxNCwgNDI2NzIsIDQ3MDksIDEwNjgwLCAxMTkwNjUsIDQzMjkzLCAxMTk5NDQsIDAsIDExOTE2NCwgMTIwMzI4LCAKKyAgICA5MjQ2NywgMTAxODcsIDE3MDAsIDExOTIyMywgMCwgMCwgMTI4MTE5LCA0MDA0LCAwLCAxMDk2OCwgNDMyOTYsIDk4MzYzMywgCisgICAgODUwNiwgMCwgMCwgMTI2OTk2LCAxMDA1LCA5MzcsIDc4MjE2LCA0NzM0LCAyODcwLCAwLCA3ODIxOCwgOTgzMTA5LCA3NDYzLCAKKyAgICA0NzI5LCAwLCAyMzUsIDEzODQsIDQ3MjgsIDAsIDEyMDQyMCwgOTI0OTAsIDc0NDQ5LCA4MTA5LCA0MzEwNSwgOTgzMTc0LCAKKyAgICA0NzMwLCA0NDcsIDEzMTg2LCAxNTEzLCA0NzMzLCAxMjA0MTUsIDAsIDAsIDQyNTI3LCAxMjkxMSwgNDM0MjcsIDEzODMsIAorICAgIDg1NjUsIDI0NjksIDEyMDAyNCwgNjY5MCwgNjE1NiwgNjgxMTcsIDQzNDM5LCA3OTkzLCA0Mjg4LCAxMjA0MTYsIDI2NzQsIAorICAgIDEzMjM4LCAxMTkyMiwgMCwgMTIwMzMwLCAzNTEwLCAxMzIzNCwgMCwgMTIwNDA3LCA1NjA1LCA0MjA5NSwgMTEzNjQsIDAsIAorICAgIDEzODAsIDY1NjE3LCAxMjAyNTMsIDEyMDI2MSwgMTMxOTYsIDEzMTk3LCAxMjAzMDksIDEyMDY4MiwgOTQ5NSwgMTE5MzQ2LCAKKyAgICAwLCA1OTU5LCA2Nzk4NCwgNzM5NzYsIDEyMDMwNSwgNDMzNzEsIDY5NDEsIDExOTM0OSwgMTMyMDUsIDEzMjExLCA1ODAxLCAKKyAgICAxMjc2OSwgNjU5MDUsIDQxNjk3LCAxMjgzLCAxMjAzMDIsIDQ3NzksIDAsIDM3MTksIDQwMDYsIDk4MzU2OSwgMTk5NTcsIAorICAgIDEyODc3MywgMjAyMSwgMTE5MzMyLCAxMjA2OTksIDExOTE1MCwgNDMwMjgsIDY1NDkzLCA0MTgzOCwgMzg3NSwgNTk2MiwgCisgICAgNjQzNDEsIDkyNjE2LCA5ODE0LCA0MzQ1NywgNTgyNywgMzMxNCwgNzc4NywgNzgyMzQsIDY1NDk0LCA2ODE1MywgMCwgMCwgCisgICAgMTIwNjM2LCA2NDUzMSwgMTIwNjkyLCAxOTQ2MjYsIDAsIDAsIDY2MzE2LCA2NTQ2NywgNTc3MSwgNDEyOTgsIDk4Mzc4NSwgCisgICAgOTc0MiwgNTIxLCAwLCAxMDgwMCwgOTIyMjIsIDg0MDQsIDE5NDYyNSwgNDgzLCA3MDk2LCA3MDg5LCA2NjMyMywgOTI4LCAwLCAKKyAgICAwLCAxMTkwMTgsIDEwNTk5LCAxMTU4NiwgMzk4OSwgMTA5NzEsIDQzNzQ4LCA2NTc4MiwgOTg0MSwgODg0MywgMTIxNDUsIAorICAgIDkyNDcwLCAxMDA3NCwgNzg1NDgsIDAsIDM3NjksIDAsIDAsIDAsIDk4MzEwNywgOTU3MywgMCwgNjUyOTAsIDg4NDksIDAsIAorICAgIDY1ODU1LCA2NTExMiwgMTc5NiwgMTIwNTA1LCAwLCA2OTY2NSwgODE2NCwgNDEzMDEsIDM1MDIsIDAsIDczODgsIDEwNjIxLCAKKyAgICA3MzgzOCwgNzg1NTMsIDU4MjUsIDEzMDA3LCA2ODE2NSwgMCwgMTIwNDU3LCAxMjY2MSwgNzYwOCwgMTAzNTQsIDEwNDE4LCAKKyAgICA0MjQxMSwgMjAyMiwgMCwgMTQwOSwgMTIxOTUsIDQwMDEsIDMxMTIsIDEwODI0LCAxMjA2MzksIDEzOTAsIDAsIDAsIDQyMSwgCisgICAgNDM1MzYsIDU4NDYsIDEyMDEyMCwgNDEzMCwgMTI3Nzc1LCA3NTk1LCA0MjU4OCwgNzYwMCwgMTIwMTIxLCA2NjAzNSwgCisgICAgOTgzOTA0LCAwLCA2NTg1MSwgNDI2MDcsIDEyODE5MCwgOTI0MDMsIDMxNjgsIDAsIDQyMTM0LCAxMTgzMSwgMjM3MCwgCisgICAgMjg0NiwgOTI2MDUsIDAsIDAsIDEyMDEzMiwgMCwgMTgzNiwgMCwgMCwgOTI1NTgsIDM3NDAsIDY5ODQzLCA2MjkwLCAKICAgICA2NTM3NCwgMTIwNDUxLCAyMzkwLCAzOTQ0LCA2NjYyOCwgMTIwNDM0LCAwLCA2MTM1LCAzMTE4LCA3NDI2NSwgMTE5MDkzLCAKLSAgICAxMjA0NDYsIDAsIDAsIDgxMjcsIDg5NzUsIDY0NzM5LCA3OTQzLCAwLCAwLCAxMDYxOCwgMjU4NCwgMCwgMCwgMCwgOTk5OCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNjIwNCwgMCwgMCwgODI3OSwgODc3NiwgNjQ5NTQsIDQ5NzUsIDc0ODA5LCAxMjAxMzAsIDQyNjcsIAotICAgIDE2MzEsIDQyMjA2LCAxMjc4NjYsIDAsIDE5NTA0NiwgNjU3MDAsIDY2NTYyLCAwLCA2NDY0NSwgMCwgMCwgMCwgMTI1ODYsIAotICAgIDAsIDkyNDIsIDEyNzkyMiwgMCwgNDUyMywgNTg0MiwgMTA0OTUsIDMxMjIsIDAsIDc3OTMsIDc4Mjc1LCA5MzI4LCAwLCAKLSAgICA3ODM5MywgMTI2MDQsIDAsIDY2MTUsIDY3NjUwLCA5MjM0NCwgMzk4NiwgNDQwMjUsIDAsIDg5MTIsIDY0NTU1LCA3NDA5LCAKLSAgICAwLCAwLCA5NTQxLCA3ODI3NiwgMCwgMTEyNzUsIDg1NDAsIDExNDk4LCAwLCAwLCA0MTA0MCwgMjQ1OSwgMCwgMTMwNjAsIAotICAgIDQxMDQxLCA3NDQxMywgMCwgMCwgMCwgNjg0MjcsIDEwNDUwLCAxMjU1MSwgNDEwNDMsIDcwMjAsIDEyMDM1MywgMzc2NSwgMCwgCi0gICAgMCwgMTYwNiwgMTIwMzQ4LCAxMjAzNTEsIDMwOTMsIDY4NDM2LCAwLCAwLCAxMjA2NDksIDAsIDAsIDQzMTIsIDc0MDkxLCAKLSAgICAxMjAzMzcsIDEyMDMzNiwgMTE5MjMsIDQwMjMsIDEyMDMzMywgNTc2MywgMTIwMzM1LCA0ODI3LCAxMDg5NCwgMTI4MTAsIAotICAgIDY0NDA2LCAxMTg3ODUsIDQ0NTUsIDc0MzIxLCA0MzMsIDExOTYyMCwgNjY2NjAsIDI0OTksIDAsIDAsIDAsIDExOTczLCAKKyAgICAxMjA0NDYsIDAsIDAsIDgxMjcsIDg5NzUsIDY0NzM5LCA3OTQzLCA5ODM3MzQsIDAsIDEwNjE4LCAyNTg0LCAwLCAwLCAwLCAKKyAgICA5OTk4LCAxMjg1NjQsIDAsIDAsIDAsIDAsIDYyMDQsIDAsIDAsIDgyNzksIDg3NzYsIDY0OTU0LCA0OTc1LCA3MDA3NSwgCisgICAgMTIwMTMwLCA0MjY3LCAxNjMxLCA0MjIwNiwgNzc5ODMsIDAsIDE5NTA0NiwgNjU3MDAsIDY2NTYyLCAwLCA2NDY0NSwgMCwgCisgICAgMCwgMTI2NTg4LCAxMjU4NiwgMCwgOTI0MiwgMTI3OTIyLCAwLCA0NTIzLCA1ODQyLCAxMDQ5NSwgMzEyMiwgOTgzNzg4LCAKKyAgICA3NzkzLCA3ODI3NSwgOTMyOCwgMTE5MTA0LCA3ODM5MywgMTI2MDQsIDAsIDY2MTUsIDIyODUsIDkyMzQ0LCAzOTg2LCAKKyAgICA0NDAyNSwgMCwgODkxMiwgNjQ1NTUsIDc0MDksIDAsIDk4MzM1MCwgOTU0MSwgNzgyNzYsIDAsIDExMjc1LCA4NTQwLCAKKyAgICAxMTQ5OCwgMCwgOTgzMzQ5LCA0MTA0MCwgMjQ1OSwgMCwgMTMwNjAsIDQxMDQxLCA3NDQxMywgOTgzMTM4LCAwLCAwLCAKKyAgICA2ODQyNywgMTA0NTAsIDEyNTUxLCA0MTA0MywgNzAyMCwgMTIwMzUzLCAzNzY1LCA5ODMzNDIsIDAsIDE2MDYsIDEyMDM0OCwgCisgICAgMTIwMzUxLCAzMDkzLCA2ODQzNiwgMCwgOTgzMDYxLCAxMTk2MTMsIDAsIDAsIDQzMTIsIDc0MDkxLCAxMjAzMzcsIAorICAgIDEyMDMzNiwgMTE5MjMsIDQwMjMsIDEyMDMzMywgNTc2MywgOTQwMTUsIDQ4MjcsIDEwODk0LCAxMjgxMCwgNjQ0MDYsIAorICAgIDExODc4NSwgNDQ1NSwgNzQzMjEsIDQzMywgMTE5NjIwLCA2NjY2MCwgMjQ5OSwgMCwgMCwgMTE4ODM3LCAxMTk3MywgCiAgICAgMTMwODksIDQyOTMsIDEyMDMyOSwgNDIyMjQsIDQyNzU4LCAxMjE5NiwgNDI4MzcsIDQyMjI2LCAxMTkzMTksIDAsIAotICAgIDExOTEyNiwgNTgxNywgMTI3ODA2LCA1NTI3NywgMzEyMCwgOTc5NywgMCwgMCwgMCwgMTAzODksIDAsIDAsIDQ4OTUsIAotICAgIDY1MzU4LCAwLCA0MzU5LCA1ODUsIDIzODMsIDM1MDksIDE5NDkyMCwgNDg2LCA0MjkwLCA1NzU4LCAxMjc1NDYsIDAsIDAsIAotICAgIDcwMDQsIDAsIDY1ODgwLCAxMjc4ODYsIDExOTA0OCwgMjM4MCwgMTEzODAsIDAsIDAsIDIzNzYsIDAsIDExOTMyMCwgMCwgCi0gICAgNTE5NywgMTI3MDQ2LCAxMjcwNDcsIDEyNzA0OCwgMjM2NiwgMTI3MDUwLCAxMjcwNTEsIDEyMDU1NCwgMTIwMDQ1LCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA3NDE4OCwgMTIwMjQxLCAwLCAwLCAxMjAwNDcsIDEyODU3NSwgMCwgMCwgMTIwMDQ5LCAwLCAKLSAgICAxODQ3LCAwLCAxMDMzOSwgMCwgNDIzODQsIDAsIDQyMjcsIDc0MTU4LCAwLCA5MjUwMSwgNDMwMzIsIDAsIDQyMzY1LCAwLCAKLSAgICAxMjY3MSwgMTEzODQsIDAsIDAsIDAsIDY0Nzk3LCAwLCA1ODIwLCAwLCAxMjAwNTIsIDEyMDA2NSwgMCwgMTIwMDY0LCAKLSAgICAxMjA2NTAsIDQyMTM3LCA5ODkzLCAyNzU0LCAxMjY2NCwgMTIwMDYzLCAwLCA3Mzc3LCAxMjc4NjcsIDQxNzk5LCA2NTUzMCwgCi0gICAgMTcxMSwgMTI5ODQsIDQzMDM5LCAzMTE0LCA2MjU1LCAwLCAxMTg5MzgsIDAsIDEwODUzLCA5MjYsIDAsIDc0MTg0LCAwLCAKLSAgICAxMjAwNTUsIDAsIDQzMTc1LCAwLCA0MzAzNywgNDE3OTgsIDQxMDM1LCAxMTU4MywgMTI3NzY5LCA0MTgwMSwgMTE5MDg4LCAKLSAgICAwLCA1MjAsIDQyMDAsIDEyNjk5LCA4MzMxLCAwLCAzMDkxLCA0MTAzNCwgMTI3MzUzLCAwLCA4MzYwLCAwLCA3ODA0NCwgCi0gICAgMzIxLCA0MjI5LCA2NDU0MywgOTE3OTQ2LCA2NTU2MywgMCwgOTE3OTc0LCAyODYxLCA0Mzc5MywgMTAwOTUsIDAsIDkxOTUsIAotICAgIDkyMzg2LCAxODYxLCAwLCA3MzczMywgMCwgMCwgNDMwNDEsIDAsIDQzNzk0LCAxMjg1MzAsIDM4NTksIDEyMTgxLCA0MTY2MCwgCi0gICAgODIwOSwgMCwgNzM4NjcsIDEyOTczLCAwLCA3NDc1NywgMTI3NTE0LCA0MTY1OCwgMCwgMCwgNTc2MCwgMCwgNzQzLCA0NDE0LCAKKyAgICAxMTkxMjYsIDU4MTcsIDEyNzgwNiwgNTUyNzcsIDMxMjAsIDk3OTcsIDAsIDAsIDAsIDEwMzg5LCAxMjY0ODUsIDAsIDQ4OTUsIAorICAgIDY1MzU4LCAwLCA0MzU5LCA1ODUsIDIzODMsIDM1MDksIDcwMDM3LCA0ODYsIDQyOTAsIDU3NTgsIDEyNzU0NiwgMCwgMCwgCisgICAgNzAwNCwgMCwgNjU4ODAsIDEyNzg4NiwgMTE5MDQ4LCAyMzgwLCAxMTM4MCwgMCwgOTM5OTYsIDIzNzYsIDAsIDExOTMyMCwgCisgICAgMCwgNTE5NywgMTI3MDQ2LCAxMjcwNDcsIDEyNzA0OCwgMjM2NiwgMTI3MDUwLCAxMjcwNTEsIDEyMDU1NCwgMTIwMDQ1LCAwLCAKKyAgICAwLCAwLCA5ODMwODQsIDAsIDAsIDAsIDc0MTg4LCA3MTM0MiwgOTgzMDg2LCA5ODM1NzMsIDEyMDA0NywgMTI4NTc1LCAwLCAKKyAgICAwLCAxMjAwNDksIDAsIDE4NDcsIDAsIDEwMzM5LCA5ODMzNTcsIDQyMzg0LCAwLCA0MjI3LCA3NDE1OCwgMCwgOTI1MDEsIAorICAgIDQzMDMyLCAwLCA0MjM2NSwgMCwgMTI2NzEsIDExMzg0LCAwLCA5ODM0NTcsIDAsIDY0Nzk3LCA5ODMzMzcsIDU4MjAsIAorICAgIDk4MzMzNiwgMTIwMDUyLCAxMjAwNjUsIDAsIDEyMDA2NCwgMTIwNjUwLCA0MjEzNywgOTg5MywgMjc1NCwgMTI2NjQsIAorICAgIDEyMDA2MywgMCwgNzM3NywgMTI3ODY3LCA0MTc5OSwgNjU1MzAsIDE3MTEsIDEyOTg0LCA0MzAzOSwgMzExNCwgNjI1NSwgCisgICAgOTgzMzMyLCAxMTg5MzgsIDAsIDEwODUzLCA5MjYsIDk4MzM2MSwgNzQxODQsIDk4MzM2MCwgMTIwMDU1LCAwLCA0MzE3NSwgCisgICAgMCwgNDMwMzcsIDQxNzk4LCA0MTAzNSwgMTE1ODMsIDEyNzc2OSwgNDE4MDEsIDExOTA4OCwgMTE5NjA1LCA1MjAsIDQyMDAsIAorICAgIDEyNjk5LCA4MzMxLCAwLCAzMDkxLCA0MTAzNCwgMTI3MzUzLCA5ODM2NzIsIDgzNjAsIDAsIDc4MDQ0LCAzMjEsIDQyMjksIAorICAgIDY0NTQzLCA5MTc5NDYsIDY1NTYzLCAwLCA5MTc5NzQsIDI4NjEsIDQzNzkzLCAxMDA5NSwgMCwgOTE5NSwgOTIzODYsIAorICAgIDE4NjEsIDAsIDczNzMzLCAwLCAwLCA0MzA0MSwgMCwgNDM3OTQsIDEyODUzMCwgMzg1OSwgMTIxODEsIDQxNjYwLCA4MjA5LCAKKyAgICAwLCA3Mzg2NywgMTI5NzMsIDAsIDc0NzU3LCAxMjc1MTQsIDQxNjU4LCAwLCAwLCA1NzYwLCAwLCA3NDMsIDQ0MTQsIAogICAgIDEyMDc2NiwgMCwgNDI2MzIsIDkxNzk3MywgNjUxNjEsIDczODk2LCAxMjg1ODksIDAsIDE0MDUsIDExOTA2MywgNDMyMjAsIAogICAgIDQzMzQxLCAwLCAxOTkxOSwgMCwgNjQ1MzIsIDY1MzY3LCA0MzcxMCwgMCwgMCwgMzUxMywgMCwgMTE4ODgzLCA0MzM0MiwgCiAgICAgMTE5MDY0LCA2NTUyOSwgNjUzNjQsIDEyODE5NywgMCwgNjQ4NSwgMTM5NywgMCwgNDE5ODYsIDkyNjc4LCAwLCAwLCAKLSAgICA3NDA5NywgMCwgNzQ3MSwgMTIwNzksIDAsIDEyNjgyLCA0MzI4NywgOTIzMTcsIDAsIDAsIDAsIDAsIDAsIDEwOTksIAotICAgIDEwNDkwLCAwLCAxMDUwMSwgNjUxODEsIDc0NDYzLCAwLCA0NjQsIDQxNjI0LCA2NTI4MywgNjc2NjMsIDc4MjIyLCAxMzQ2LCAKLSAgICAwLCA5MTc2MzEsIDY0NTczLCA2NDg5NywgNDIzLCAxODE4LCA2NTE0NCwgMCwgODI3MiwgMTI3ODEyLCAxOTkxMSwgNDIxOCwgCi0gICAgMzA4NywgNjQ5NjAsIDEyNzIzNCwgNDM1NjQsIDAsIDAsIDk1ODQsIDEwNDY1LCAwLCA3NDM1OSwgMTI2MjYsIDkxMDYsIDAsIAotICAgIDQyNjQyLCAxMjAyMzAsIDY0NzUwLCA5MzkwLCAwLCA0MTc5NywgMCwgMCwgMjY1LCA0MTc5NSwgNjQ2NjYsIDAsIDQzNTMwLCAKLSAgICAyNzUyLCAwLCAwLCAwLCA1OSwgMCwgMCwgMCwgOTIzNzEsIDc3ODczLCA0MTgxMCwgMCwgNzAxMCwgMCwgNDE4MDksIAotICAgIDQxNDk1LCAxMTkzNjQsIDAsIDQyMjUyLCA0MjIxMywgODAwOSwgMzMwNSwgNDMwMzMsIDUxMSwgOTI3MDAsIDY2MjU1LCAKLSAgICAxMzEyNywgMTIwMDY3LCAwLCAwLCAwLCA5MTc5NzcsIDY1OTE1LCAxNDAwLCA0MTgxMiwgMTA2ODUsIDE5NDg3MCwgMjEwMywgCi0gICAgMTAzODcsIDQ0NTMsIDQzMjc2LCA5MTc3ODMsIDEzMTU5LCAwLCA2NDgxLCA0MTIxMywgMCwgMCwgMCwgMCwgNDE5ODMsIAotICAgIDc0MTk4LCA2NjE3LCA5MTE2LCAxMTk2NTQsIDAsIDQ2MiwgNjgxMTAsIDEwNDkzLCAwLCA4MTI5LCAwLCAwLCA3NDQ3MSwgCi0gICAgNjY0NCwgMTE2NTgsIDAsIDEyODI0NSwgMzQ1MiwgMTE5MDYsIDk1ODEsIDEzODUsIDMwOTgsIDAsIDExOTAxMywgNDMzNDAsIAotICAgIDAsIDQxMDMzLCA2NDkzLCA0MjYyNiwgMCwgMCwgMTE0MjYsIDc3ODg3LCAxNjgxLCAxMTg3ODksIDEyMDQsIDM3NTUsIAotICAgIDY0NjYxLCA3MjM1LCAxMDE3MCwgMzk2NiwgODkxMSwgMCwgNDE4NDEsIDQzMzM4LCAwLCAwLCA1NzI2LCA2NDkxNSwgCi0gICAgNDIxNzUsIDAsIDAsIDQxNDk3LCA2NTA0NCwgMTIwMTA5LCAyODUxLCA0MzAxNywgMCwgMCwgNDM3MywgNzgwNTgsIDAsIAotICAgIDk1ODcsIDE3ODksIDY2NzEsIDEyODg0MCwgMzEwMCwgMCwgNjUzNjAsIDAsIDkyMzY1LCAwLCA2NDkyMiwgMCwgODE5MCwgCi0gICAgMTIwODMsIDAsIDAsIDY1MDYsIDY0MzEyLCA3NDM3NCwgMjM2OCwgMCwgNDQxOSwgMCwgMTE5MTI1LCAzNDM5LCAxODI1LCAKLSAgICAxMTkyLCAxMjAxMDYsIDg4OTEsIDMwODAsIDEyMDIyOCwgMjM0NywgNTQzMCwgMCwgODk5MCwgMjg0OCwgMCwgMTI4MjIzLCAKLSAgICA5MjUyOCwgMjQ5LCAwLCAwLCAwLCAxMjA2NTgsIDAsIDAsIDg4ODMsIDkxNzgwMiwgNzI4LCA2ODE3OCwgOTk1LCAwLCAwLCAKLSAgICA2NDgyNiwgMCwgOTE3Nzk4LCAxMjgzNDgsIDAsIDE5OTQ1LCA4MDkxLCA1NTgsIDAsIDEyMjczLCAxOTQ4MTQsIDAsIAotICAgIDEyMTEyLCAwLCAwLCAwLCA3NDQxOSwgMTIzMzUsIDEyMDEwNCwgOTE3Nzk1LCAzNDQzLCAzMTI5LCAwLCAyMTAyLCA2NTQ0NSwgCi0gICAgNzgyNTgsIDY0ODkxLCAwLCA3NzI1LCA2NTEwOCwgNzgyNTUsIDAsIDg2MjQsIDY5MjQ2LCAxMjQ0NiwgNDMyOTUsIDAsIAotICAgIDQxODk0LCAwLCA2Mjc3LCA0MTY3MiwgNDE4OTMsIDEwMDEwLCAxMjg2NzgsIDM1NDAsIDEyODY0OSwgODM1LCAwLCA2OTgxNiwgCisgICAgNzQwOTcsIDAsIDc0NzEsIDEyMDc5LCA2Nzk5NywgMTI2ODIsIDQzMjg3LCA5MjMxNywgMCwgOTgzMTQzLCA5ODM2OTgsIDAsIAorICAgIDAsIDEwOTksIDEwNDkwLCAwLCAxMDUwMSwgNjUxODEsIDc0NDYzLCAwLCA0NjQsIDQxNjI0LCA2NTI4MywgNjc2NjMsIAorICAgIDc4MjIyLCAxMzQ2LCAwLCA5MTc2MzEsIDY0NTczLCA2NDg5NywgNDIzLCAxODE4LCA2NTE0NCwgMCwgODI3MiwgMTI3ODEyLCAKKyAgICAxOTkxMSwgNDIxOCwgMzA4NywgNjQ5NjAsIDEyNzIzNCwgNDM1NjQsIDAsIDAsIDk1ODQsIDEwNDY1LCA5ODM4OTMsIAorICAgIDc0MzU5LCAxMjYyNiwgOTEwNiwgMCwgNDI2NDIsIDEyMDIzMCwgNjQ3NTAsIDkzOTAsIDAsIDQxNzk3LCAwLCAwLCAyNjUsIAorICAgIDQxNzk1LCA2NDY2NiwgMTI2NTA4LCA0MzUzMCwgMjc1MiwgMCwgMCwgOTgzNDg1LCA1OSwgMCwgOTgzNTkzLCAwLCA5MjM3MSwgCisgICAgNzc4NzMsIDQxODEwLCAwLCA3MDEwLCAwLCA0MTgwOSwgNDE0OTUsIDExOTM2NCwgMCwgNDIyNTIsIDQyMjEzLCA4MDA5LCAKKyAgICAzMzA1LCA0MzAzMywgNTExLCA5MjcwMCwgNjYyNTUsIDEzMTI3LCAxMjAwNjcsIDAsIDc0Mzk3LCAxMjAyMzUsIDkxNzk3NywgCisgICAgNjU5MTUsIDE0MDAsIDQxODEyLCAxMDY4NSwgMTk0ODcwLCAyMTAzLCAxMDM4NywgNDQ1MywgNDMyNzYsIDkxNzc4MywgCisgICAgMTMxNTksIDAsIDY0ODEsIDQxMjEzLCAwLCAwLCAwLCAwLCA0MTk4MywgNzQxOTgsIDY2MTcsIDkxMTYsIDExOTY1NCwgMCwgCisgICAgNDYyLCA2ODExMCwgMTA0OTMsIDAsIDgxMjksIDAsIDAsIDc0NDcxLCA2NjQ0LCAxMTY1OCwgMCwgMTI4MjQ1LCAzNDUyLCAKKyAgICAxMTkwNiwgOTU4MSwgMTM4NSwgMzA5OCwgMCwgMTE5MDEzLCA0MzM0MCwgMCwgNDEwMzMsIDY0OTMsIDQyNjI2LCAwLCAwLCAKKyAgICAxMTQyNiwgNzc4ODcsIDE2ODEsIDExODc4OSwgMTIwNCwgMzc1NSwgNjQ2NjEsIDcyMzUsIDEwMTcwLCAzOTY2LCA4OTExLCAKKyAgICAwLCA0MTg0MSwgNDMzMzgsIDAsIDAsIDU3MjYsIDY0OTE1LCA0MjE3NSwgMCwgMCwgNDE0OTcsIDY1MDQ0LCAxMjAxMDksIAorICAgIDI4NTEsIDQzMDE3LCA5ODM1ODksIDAsIDQzNzMsIDc4MDU4LCAwLCA5NTg3LCAxNzg5LCA2NjcxLCAxMjg4NDAsIDMxMDAsIAorICAgIDAsIDY1MzYwLCAwLCA5MjM2NSwgOTE3Nzg5LCA2NDkyMiwgMCwgODE5MCwgMTIwODMsIDAsIDAsIDY1MDYsIDY0MzEyLCAKKyAgICA3NDM3NCwgMjM2OCwgMCwgNDQxOSwgOTgzODM4LCAxMTkxMjUsIDM0MzksIDE4MjUsIDExOTIsIDEyMDEwNiwgODg5MSwgCisgICAgMzA4MCwgMTIwMjI4LCAyMzQ3LCA1NDMwLCAwLCA4OTkwLCAyODQ4LCAwLCAxMjgyMjMsIDkyNTI4LCAyNDksIDAsIDAsIDAsIAorICAgIDEyMDY1OCwgMCwgMCwgODg4MywgOTE3ODAyLCA3MjgsIDY4MTc4LCA5OTUsIDAsIDAsIDY0ODI2LCAwLCA5MTc3OTgsIAorICAgIDEyODM0OCwgMCwgMTk5NDUsIDgwOTEsIDU1OCwgMCwgMTIyNzMsIDE5NDgxNCwgOTgzODQxLCAxMjExMiwgNjk5MTIsIDAsIAorICAgIDAsIDc0NDE5LCAxMjMzNSwgMTIwMTA0LCA5MTc3OTUsIDM0NDMsIDMxMjksIDAsIDIxMDIsIDY1NDQ1LCA3ODI1OCwgCisgICAgNjQ4OTEsIDAsIDc3MjUsIDY1MTA4LCA3ODI1NSwgMCwgODYyNCwgNjkyNDYsIDEyNDQ2LCA0MzI5NSwgMCwgNDE4OTQsIDAsIAorICAgIDYyNzcsIDQxNjcyLCA0MTg5MywgMTAwMTAsIDEyODY3OCwgMzU0MCwgMTI4NjQ5LCA4MzUsIDcxMzQwLCA2OTgxNiwgCiAgICAgMTE5ODY4LCA3NDQwOCwgMCwgNzM5NTksIDU0MjYsIDQyNTgsIDAsIDAsIDU0MjQsIDEyODEyNywgODI4MywgMCwgNTQzNCwgCi0gICAgMCwgMCwgMTk5MTcsIDExNDA4LCAwLCAxMTk0NywgMCwgMTQwNCwgMzA5NSwgMTE0MzIsIDEyODMwNywgMzQ2NCwgNjQ4NiwgCi0gICAgNDgxOSwgMTI4MjMzLCAwLCA1NzAsIDgwOTUsIDM2NzIsIDExOTg2NCwgMTQ5OCwgNjc4NjYsIDAsIDAsIDQzMSwgMCwgMCwgCi0gICAgMTI4MTgyLCAxMjgwOTYsIDY4MTY3LCAwLCAxMzA5NiwgMTI4NjQzLCAwLCA0MzQwOCwgOTUxNiwgMTI4NTM4LCA1MjY4LCAKLSAgICA0MjIzMCwgNDIyMjAsIDAsIDQ0NTAsIDEyMDUxMSwgMTE1NDcsIDQzNDE3LCAxMjg1NDIsIDM1NiwgMzQ3NywgMjI3LCAKLSAgICAxMDQ4OCwgNjgyMDMsIDM4MiwgMTE0MTgsIDAsIDAsIDAsIDAsIDAsIDAsIDY0ODQsIDI1NDEsIDY2MDM5LCAwLCA3ODcxOCwgCi0gICAgOTI3MjMsIDM1NDksIDAsIDkxMTAsIDExOTY2NSwgMjc0MywgMCwgNDMyOTAsIDE5NDgxMiwgOTA5NywgMCwgNDMwMTUsIAotICAgIDg3ODIsIDAsIDc3NiwgMjUyNCwgNDI3MDcsIDg1NzMsIDAsIDAsIDAsIDAsIDQyNjk0LCA2NDk0NCwgODk1MiwgMzg1NiwgCi0gICAgMTE4ODE4LCAwLCA1ODcyLCA2NDk1LCAwLCAwLCAwLCA5MjU0MywgMCwgMTIwNzMzLCAxMjg0OSwgMzk1MywgMTg5NywgMCwgCi0gICAgNjUwOTQsIDExOTk0LCA0MzM5LCA3NDU1NiwgOTI2NTQsIDY3ODQzLCAwLCAwLCAwLCA2ODQ3MywgNzQxMDQsIDUyMjgsIAotICAgIDEyODgwNCwgNzg2OCwgNDMxODQsIDAsIDAsIDczOTg2LCA0MzQzOCwgMCwgNDMwMjIsIDAsIDExNjIsIDAsIDI2NzEsIDAsIAotICAgIDAsIDkyNjMyLCA5MjYzMSwgMTE4ODY1LCA0NTUzLCA3MzgxMSwgMCwgMTk1MDA1LCAwLCAwLCAxOTkyMSwgNzQzMzEsIAotICAgIDExNDI0LCAxOTUwMDYsIDQ1NjcsIDQxODkxLCAwLCAwLCA1NTI0OSwgNDgyMCwgNjUyMzksIDE5NDY2MiwgMCwgMCwgCi0gICAgNDMwNDIsIDExOTIxMiwgMTM3NywgMTI4NjksIDQ4OTcsIDQyODIxLCA5MjUwLCAwLCA0NDM4LCA2NDM4NSwgMCwgMTc1MywgCi0gICAgMTEzMzEsIDYxNDcsIDE5NDk0MSwgNDMyODIsIDg4MzMsIDAsIDAsIDY1MDQsIDc4NDA4LCAxMjY5NzksIDEwNzE5LCAwLCAKLSAgICAxODk4LCAxNDEzLCA0MjQ0MywgMCwgODAyLCAxMjE0MSwgMCwgMTk0NjcxLCA2NjQ4LCAxMDY3MSwgMjUyOCwgMCwgNjQ3ODksIAotICAgIDkxNjksIDgzOCwgMTI3MDkyLCAxMjA2OTcsIDg0NCwgNTAxNCwgMCwgMjU2LCAwLCA5OTkwLCAwLCA0MjczOSwgOTE3ODUxLCAKLSAgICA3NTQyLCA2NTQ2NCwgOTcyNiwgMCwgNjQ4OSwgMTAwNDgsIDc0MzI2LCA3ODcxOSwgNjY1NzMsIDAsIDc4NzI0LCA3ODcxMiwgCi0gICAgMTE3NjEsIDE5NDY1NSwgMCwgNDEwOTQsIDAsIDAsIDAsIDAsIDkyNjg5LCA2MTk2LCA2OTQ1LCAxOTQ2MjgsIDE5NDg5MCwgCi0gICAgMTI4MTg0LCAxMjA0OTEsIDExODE2LCAxOTQ5NDMsIDU3MzMsIDI5MzAsIDAsIDAsIDQxMDk4LCAwLCA0MTA5MywgMCwgCi0gICAgNjY2MjYsIDU4OCwgOTc2MCwgMCwgMTk0NzE3LCAxMjM4LCAyMDAsIDAsIDE2NjAsIDczOTE2LCAwLCAxMTg5MDUsIDc0MzYyLCAKLSAgICAwLCA5MjQ4NSwgMTk0NjUxLCAwLCAwLCAzMzk0LCAxOTQ4OTQsIDEyMDY2OCwgMCwgMCwgMTI3MzU4LCA2NjIxOSwgCi0gICAgMTI3MTgzLCA0MzI4NCwgMTk0NjU3LCA3ODE3LCAxODQxLCAxMTA1NSwgMTIwNTMzLCAxOTQ5NzksIDE5NDk4MiwgMTY2OSwgCi0gICAgMTA3NzYsIDE5NDk4MSwgNzcwMSwgMTk0OTgwLCAwLCAxOTQ5OTUsIDE3MzIsIDQwMzAsIDAsIDM5NjMsIDY2NjExLCAKLSAgICAxMjc1MzAsIDQxNzY4LCA2NDkxLCAwLCA2NTMyNCwgOTE0LCA2NTMyMywgODA3MSwgMzUzOCwgMCwgNzg3MTMsIDY1MzI4LCAKLSAgICA5MjQ0MSwgNzQzNjcsIDc2MTQsIDAsIDExODE5LCAwLCAxMjAwOSwgMTIzOTksIDAsIDY3ODUyLCA2NTUzNywgMCwgMTA4NDEsIAotICAgIDQzNDMwLCA1MzAxLCAwLCA5MjYxOCwgNTczNCwgODk2MCwgMCwgOTI1MjcsIDY1MzE3LCA3Nzg4MCwgMCwgMCwgMCwgCi0gICAgMTIzMDQsIDAsIDAsIDY1MzE1LCA5MjY3MCwgMTI4NTExLCAwLCAwLCAwLCAxMTk2MjEsIDkyNTI5LCA3NDUzNiwgMTI0NDcsIAotICAgIDY0NDg2LCAxMjczNzQsIDAsIDAsIDAsIDAsIDAsIDQyNzY3LCAxMDkxNSwgMCwgMTIwMDcsIDQzNjk1LCAxMjA1MjAsIAotICAgIDExOTc1LCAxOTQ4NzgsIDAsIDkyNjA0LCAyNTU1LCA4NjI5LCAwLCA0MzE2OCwgNDE4NzIsIDQzNzA2LCA0NDk2LCAKLSAgICAxOTQ4NzksIDEyODE0OCwgMCwgMCwgMCwgMCwgMCwgNjQ3MzAsIDAsIDY2NzE0LCA2ODIyMiwgMCwgMCwgNjU1OTYsIAotICAgIDkyMzA2LCAxMTQxNiwgNDI4MCwgNjc2NTUsIDg3NjUsIDEyNzg0LCA3NzkyLCAxMzkzLCAxMjcyNDIsIDY3ODcxLCA3NDM4NiwgCi0gICAgMCwgODIzMywgMTI4MjAsIDAsIDY2ODMsIDE5NDg3NiwgMzQ0MiwgMTIxNDQsIDI4NDEsIDEyNTQzLCAwLCAxNDczLCAKLSAgICA0MjgyMCwgNjQzMjksIDEyNzgzMiwgMCwgNjg2NDIsIDY0ODgsIDM1NywgMTA0OCwgNDExMDAsIDAsIDQxMTA0LCAwLCAKLSAgICAzNDA2LCAxMDU0LCAxMTkwNjUsIDEwNDAsIDY1NDUwLCAwLCA0NDM0LCAxMDY5LCAwLCAxMTg4NjIsIDY1NzM3LCA5MTc3NjUsIAotICAgIDEyODcwNSwgMCwgMCwgOTY5MywgNDE5NDMsIDAsIDQxOTMxLCA0MTc1OSwgMTI3NTcsIDQzNTMsIDAsIDEwNTksIDk3OTAsIAotICAgIDg5OTUsIDEyODI4NiwgMCwgNjU5MzcsIDAsIDQxNzY0LCAxMDY0NiwgMCwgMTE4ODMzLCA5MjM3MiwgMCwgNzQ4MzAsIAotICAgIDc4NTY5LCAxMjc0MywgMCwgNjQ4MCwgOTE3NzYxLCA0MTc3OSwgNDI1ODAsIDY2NjAxLCAxMjIwNywgMTE5NjE5LCA2MzM1LCAKLSAgICA2NjYwMiwgMTEzMTIsIDY0ODA3LCAwLCAwLCA0MTc2NywgMCwgMCwgNDMwMjAsIDEyODI3MSwgMzk1NSwgNzQyNTQsIDAsIDAsIAotICAgIDkxNzg2MSwgMCwgNzc5MjYsIDk3NzAsIDkyNDYsIDEyMjMwLCAwLCAwLCAwLCAxMDQ0OCwgNDE3ODMsIDQxNzg2LCAKLSAgICAxMjcwOTMsIDEyNzk3LCAyNzU1LCA2NDU3MSwgNzg1NzgsIDE5NDkyNywgNDg1NywgMCwgNDQyOCwgMTI3OTQsIDczNzU1LCAKLSAgICAxMjgwNjEsIDc4NTc0LCAwLCAwLCAwLCA1NzQ3LCA3ODgyNSwgMCwgNzk3OCwgNDEwOTIsIDc0NTcxLCAwLCAxMTkyNCwgCi0gICAgNDM4MTIsIDQyMTQ0LCA2NTAxNSwgMCwgNTYzLCAwLCAwLCAxMjc5OCwgMTEyNzEsIDU3LCAwLCAwLCA5MTc4NjAsIAotICAgIDExOTA0MywgMCwgMTE5MTM0LCA0MzEzNywgNjk0LCAwLCA5ODc2LCAwLCAxMTkxNjgsIDAsIDc4ODIyLCA2NDUzNywgMCwgCi0gICAgMjc3LCA3NDM4NSwgNzIyOSwgMTI3NjEsIDAsIDAsIDEzMDI1LCA2NDgxMSwgODc1NywgNzg4MjQsIDAsIDE1NzQsIDczODEsIAotICAgIDAsIDI1MjUsIDQ4NTIsIDU3NDksIDY4NDY1LCAxMzAyNywgNDI4MjQsIDEyMDU3NCwgMTAzOSwgNzE1MSwgMTAxNTUsIAotICAgIDU3NDUsIDE4OCwgNDE4NTgsIDExNTkyLCAwLCA3NDAxNSwgOTA1NSwgNDE4NTMsIDQ4NTgsIDkxNzc4MCwgMCwgNDM2LCAKLSAgICA0NzcxLCAwLCAyNzg2LCAwLCA0ODU2LCA4MDUxLCAwLCAxMTk2MDksIDAsIDk2NDQsIDAsIDAsIDAsIDE5NDkxNiwgCi0gICAgMTIwNzMyLCA2NjcxMCwgMTE4ODM0LCAwLCA3MzkwNiwgMCwgMTI3MTE0LCAwLCAxMDIzNCwgNTg0MywgMTE5MzksIDAsIAotICAgIDQyMTU3LCAwLCAzMTU3LCAxOTQ5MTgsIDY4MzkzLCAwLCAzNTA0LCAxMTkxNzgsIDAsIDEwODIyLCA1MTQ5LCA2NjAyOSwgCi0gICAgMTAyMjYsIDY1MTQyLCAwLCAzNTk0LCA0MjQyNCwgMTk0OTU5LCA0MCwgMTI2NTcsIDAsIDAsIDM4NiwgMCwgODgzNCwgMCwgCi0gICAgMTI4MTUsIDQzNTc0LCAwLCA3MzkwNywgMCwgNzQxOTYsIDcyMjAsIDc0NTA0LCAwLCA3NDMxNiwgMCwgNzc5MzIsIDQzMDQsIAotICAgIDc0NTAzLCA4MTYwLCA3ODcwNywgMTk0NzUzLCAwLCAwLCAwLCAxMzQ4LCA5MjM0OSwgNzg1OTcsIDAsIDEzMzAzLCAwLCAKLSAgICA5MjM5MiwgMTk0NzU1LCA3NTk5LCAxMjc4LCA0MzYxNiwgMTMyNjksIDAsIDAsIDc0Mzg3LCA3ODE3OSwgNzg1OTgsIAotICAgIDc0NDkyLCA2MDk3LCA3NTY4LCA4NzgwLCA0OTgyLCAxMjc0NjQsIDc0NTAxLCAxOTQ3NjMsIDc4NTkyLCAxOTQ3NjIsIAotICAgIDI2NzIsIDM3MzUsIDEyNzQ3MSwgMTMxMzgsIDQyMjY2LCA5NDg0LCAxMDcyNCwgNDEyMDIsIDExOTAyNCwgMCwgNDM3NDIsIAotICAgIDAsIDk0ODcsIDExOTk1OSwgMTE5MTE3LCAzODQyLCAxMjg3NjgsIDc4NjY4LCAxMjQ0MiwgNjE5MywgOTc5MSwgMTI3OTc2LCAKLSAgICAwLCA0MjUxNiwgNzIyOCwgNzU1OSwgNzQ4MDMsIDc4NDY4LCA3ODczLCAxMTM5OSwgMTE5MjE5LCAxOTQ2OTEsIDE5NDg1NSwgCi0gICAgMTk0NjkwLCAxOTQ4NTcsIDM2MDQsIDAsIDExOTE4OCwgMTI4ODc3LCA3ODU0MCwgNzg1NDEsIDQyNTA3LCAxOTYyLCAKLSAgICA0MzMwNSwgNzg0NzYsIDQyNTA1LCAxMTY2MCwgMCwgMjA3MiwgOTIzMTIsIDY5OTUsIDc0MTczLCA1NDM3LCA3NDE3NCwgCi0gICAgMTA2NjksIDg3MDIsIDc5NjQsIDkyMzUyLCAwLCAxOTksIDE5NDg0MywgNDEwNSwgMTk0ODQ1LCAxOTQ2OTksIDE5NDg0NywgCi0gICAgMTk0NzEwLCAxMTk4NzUsIDEzMTQ4LCA3NTYwLCA3ODQ3OSwgOTIyNiwgNzg0ODAsIDE5NTA3MCwgNjQ3MiwgNjU4MTQsIAotICAgIDczOTU0LCAwLCA0NzI0LCAwLCAwLCA5MTkxLCAwLCA2NDQzMiwgMCwgMCwgMTk1MDI0LCAxMDE5NiwgNzg4NiwgMCwgNjU4NSwgCi0gICAgMCwgNjY4MCwgMTk1MDQyLCAwLCAxOTUwNTEsIDY2NzksIDc0NDEyLCA5MjI1MSwgMTk0ODY2LCA3NDQyMSwgMTEzODIsIDAsIAotICAgIDAsIDEyNzg5MSwgMTI3NDg0LCAxOTQ4MzMsIDE5NDgzMiwgNjY4MSwgMTI3NDgyLCAxMjY5MywgMTk0ODM2LCA0MjcyNywgCi0gICAgMTk0ODM4LCAxMjgyNTIsIDc4MTk1LCA2NTQ0MiwgMTE5NjEwLCA2OTczMywgOTk4OSwgNDMyNDgsIDY2MjQ4LCAxOTQ4MTYsIAotICAgIDAsIDE5NDgxOCwgMTI4ODQ1LCAxOTQ4MjAsIDE5NDgxOSwgNTI5NywgNzA0MiwgMTMyODQsIDYxMTIsIDc5NjgsIDE5NDgyNSwgCi0gICAgNzM5MjcsIDkyNDQ0LCAxOTQ3MzYsIDY1NzQ2LCAxMjc0NzYsIDc0NDA5LCA3NDM4OSwgMTI4Njk2LCA0MzQyLCA0MjgzOSwgCi0gICAgMTk0ODMxLCAxNjc3LCAwLCAwLCAxOTQ4MDYsIDkxNzg1NSwgMTEwOTEsIDExMDExLCAyNzE5LCAwLCAwLCAxMTk1OTUsIAotICAgIDEwMTYwLCAwLCAwLCA3NTg1LCA2NTE2OSwgMjA1MiwgNDMwOCwgOTIxNzQsIDc0MTc3LCA3NTA1LCA1NDMsIDY0OTE2LCAKLSAgICA2NDczNiwgMCwgMCwgNjQ2NTUsIDAsIDExODkyMiwgMjA2NCwgMCwgNDMxNTgsIDc5MDIsIDAsIDY1MjY1LCAxOTQ2MzksIDAsIAotICAgIDEyNzE3MCwgMCwgMCwgMCwgMCwgMTI5OTQsIDkyNzI4LCAxMDgyOCwgMCwgNjIyOCwgNDMwNywgMzQ4MiwgMTI4NTI3LCAwLCAKLSAgICAwLCAwLCA1MDYsIDc0NTczLCA0MTE5NCwgNjU3MzUsIDIwNTUsIDQzMjU1LCA0MTE5NSwgMCwgODE2OSwgMCwgODg0MSwgMCwgCi0gICAgNTE2LCAwLCAyMDYzLCAxMTkwNTEsIDM0LCAxMjg4NTAsIDEyMDE4NiwgMTE1MDQsIDE2MTIsIDc0MzMzLCAxMjAxODIsIAotICAgIDc0NTIwLCA3NDMwOCwgMTIwMDEsIDEyMDE3OCwgMTAyNDIsIDY0NTY0LCAxMjAxNzksIDEyMDE3NCwgNjU4NCwgNzc0OSwgCi0gICAgMTEwMzcsIDAsIDE3NTgsIDAsIDEwNjY3LCAxMDU2MCwgMTIwMTk3LCA5MjU5MywgMTkzNSwgMTE1MTcsIDEyMDE5MywgCisgICAgOTgzNTkwLCAwLCAxOTkxNywgMTE0MDgsIDAsIDExOTQ3LCAwLCAxNDA0LCAzMDk1LCAxMTQzMiwgMTI4MzA3LCAzNDY0LCAKKyAgICA2NDg2LCA0ODE5LCAxMjgyMzMsIDAsIDU3MCwgODA5NSwgMzY3MiwgMTE5ODY0LCAxNDk4LCA2Nzg2NiwgMCwgMTI4NTM5LCAKKyAgICA0MzEsIDAsIDAsIDEyODE4MiwgMTI4MDk2LCA2ODE2NywgOTgzNjU0LCAxMzA5NiwgMTI4NjQzLCAwLCA0MzQwOCwgOTUxNiwgCisgICAgMTI4NTM4LCA1MjY4LCA0MjIzMCwgNDIyMjAsIDAsIDQ0NTAsIDEyMDUxMSwgMTE1NDcsIDQzNDE3LCAxMjg1NDIsIDM1NiwgCisgICAgMzQ3NywgMjI3LCAxMDQ4OCwgNjgyMDMsIDM4MiwgMTE0MTgsIDAsIDE5NTA2NiwgMCwgMCwgMCwgMCwgNjQ4NCwgMjU0MSwgCisgICAgNjYwMzksIDAsIDc4NzE4LCA5MjcyMywgMzU0OSwgMCwgOTExMCwgMTE5NjY1LCAyNzQzLCAwLCA0MzI5MCwgMTk0ODEyLCAKKyAgICA5MDk3LCAwLCA0MzAxNSwgODc4MiwgMCwgNzc2LCAyNTI0LCA0MjcwNywgODU3MywgMCwgMTI2NDk0LCAwLCAwLCA0MjY5NCwgCisgICAgNjQ5NDQsIDg5NTIsIDM4NTYsIDExODgxOCwgMCwgNTg3MiwgNjQ5NSwgMCwgMCwgMCwgOTI1NDMsIDAsIDEyMDczMywgCisgICAgMTI4NDksIDM5NTMsIDE4OTcsIDAsIDY1MDk0LCAxMTk5NCwgNDMzOSwgNzQ1NTYsIDkyNjU0LCA2Nzg0MywgMCwgMCwgMCwgCisgICAgNjg0NzMsIDc0MTA0LCA1MjI4LCAxMjg4MDQsIDc4NjgsIDQzMTg0LCAwLCAwLCA3Mzk4NiwgNDM0MzgsIDAsIDQzMDIyLCAwLCAKKyAgICAxMTYyLCA5MTc4NDcsIDI2NzEsIDAsIDAsIDkyNjMyLCA5MjYzMSwgMTE4ODY1LCA0NTUzLCA3MzgxMSwgMCwgMTk1MDA1LCAKKyAgICAwLCAwLCAxOTkyMSwgNzQzMzEsIDExNDI0LCAxOTUwMDYsIDQ1NjcsIDQxODkxLCAwLCA5ODM3NzksIDU1MjQ5LCA0ODIwLCAKKyAgICA2NTIzOSwgMTk0NjYyLCAwLCAxOTQ2NjUsIDQzMDQyLCAxMTkyMTIsIDEzNzcsIDEyODY5LCA0ODk3LCA0MjgyMSwgOTI1MCwgCisgICAgMCwgNDQzOCwgNjQzODUsIDAsIDE3NTMsIDExMzMxLCA2MTQ3LCAxOTQ5NDEsIDQzMjgyLCA4ODMzLCAwLCAwLCA2NTA0LCAKKyAgICA3ODQwOCwgMTI2OTc5LCAxMDcxOSwgMCwgMTg5OCwgMTQxMywgNDI0NDMsIDAsIDgwMiwgMTIxNDEsIDAsIDE5NDY3MSwgCisgICAgNjY0OCwgMTA2NzEsIDI1MjgsIDAsIDY0Nzg5LCA5MTY5LCA4MzgsIDEyMDA4NywgMTIwNjk3LCA4NDQsIDUwMTQsIDAsIAorICAgIDI1NiwgMCwgOTk5MCwgMCwgNDI3MzksIDkxNzg1MSwgNzU0MiwgNjU0NjQsIDk3MjYsIDAsIDY0ODksIDEwMDQ4LCA3NDMyNiwgCisgICAgNzg3MTksIDY2NTczLCAwLCA3ODcyNCwgNzg3MTIsIDExNzYxLCAxOTQ2NTUsIDAsIDQxMDk0LCAwLCAwLCAxOTQ4OTMsIDAsIAorICAgIDkyNjg5LCA2MTk2LCA2OTQ1LCA5Mzk2OSwgMTk0ODkwLCAxMjgxODQsIDEyMDQ5MSwgMTE4MTYsIDE5NDk0MywgNTczMywgCisgICAgMjkzMCwgMCwgMCwgNDEwOTgsIDAsIDQxMDkzLCAwLCA2NjYyNiwgNTg4LCA5NzYwLCAwLCAxOTQ3MTcsIDEyMzgsIDIwMCwgCisgICAgOTgzMjA1LCAxNjYwLCA3MzkxNiwgMCwgMTE4OTA1LCA3NDM2MiwgMCwgOTI0ODUsIDE5NDY1MSwgMCwgOTgzNjk3LCAzMzk0LCAKKyAgICAxOTQ4OTQsIDEyMDY2OCwgMCwgMCwgMTI3MzU4LCA2NjIxOSwgMTI3MTgzLCA0MzI4NCwgMTk0NjU2LCA3ODE3LCAxODQxLCAKKyAgICAxMTA1NSwgMTIwNTMzLCAxOTQ5NzksIDE5NDk4MiwgMTY2OSwgMTA3NzYsIDE5NDk4MSwgNzcwMSwgMTk0OTgwLCAwLCAKKyAgICAxOTQ5OTUsIDE3MzIsIDQwMzAsIDAsIDM5NjMsIDY2NjExLCAxMjc1MzAsIDQxNzY4LCA2NDkxLCAwLCA2NTMyNCwgOTE0LCAKKyAgICA2NTMyMywgODA3MSwgMzUzOCwgMCwgMjI4NywgNjUzMjgsIDkyNDQxLCA3NDM2NywgNzYxNCwgMCwgMTE4MTksIDAsIAorICAgIDEyMDA5LCAxMjM5OSwgMCwgNjc4NTIsIDY1NTM3LCAwLCAxMDg0MSwgNDM0MzAsIDUzMDEsIDAsIDkyNjE4LCA1NzM0LCAKKyAgICA4OTYwLCAwLCA5MjUyNywgNjUzMTcsIDc3ODgwLCAwLCAwLCAwLCAxMjMwNCwgMCwgMCwgNjUzMTUsIDkyNjcwLCAxMjg1MTEsIAorICAgIDAsIDAsIDAsIDExOTYyMSwgOTI1MjksIDc0NTM2LCAxMjQ0NywgNjQ0ODYsIDEyNzM3NCwgMTI2NTYyLCA5ODMxMjksIDAsIAorICAgIDAsIDk4Mzc5MywgNDI3NjcsIDEwOTE1LCAwLCAxMjAwNywgNDM2OTUsIDEyMDUyMCwgMTE5NzUsIDE5NDg3OCwgMCwgCisgICAgOTI2MDQsIDI1NTUsIDg2MjksIDEyODY0MCwgNDMxNjgsIDQxODcyLCA0MzcwNiwgNDQ5NiwgMTk0ODc5LCAxMjgxNDgsIAorICAgIDEyMDI0MSwgMCwgMCwgMCwgMCwgNjQ3MzAsIDcwMDQxLCA2NjcxNCwgNjgyMjIsIDAsIDcwMDc2LCA2NTU5NiwgOTIzMDYsIAorICAgIDExNDE2LCA0MjgwLCA2NzY1NSwgODc2NSwgMTI3ODQsIDc3OTIsIDEzOTMsIDEyNjQ3MywgNjc4NzEsIDc0Mzg2LCAwLCAKKyAgICA4MjMzLCAxMjgyMCwgMCwgNjY4MywgMTk0ODc2LCAzNDQyLCAxMjE0NCwgMjg0MSwgMTI1NDMsIDAsIDE0NzMsIDQyODIwLCAKKyAgICA2NDMyOSwgMTI3ODMyLCAwLCA2ODY0MiwgNjQ4OCwgMzU3LCAxMDQ4LCA0MTEwMCwgMCwgNDExMDQsIDk0MDAzLCAzNDA2LCAKKyAgICAxMDU0LCA3MTMyMCwgMTA0MCwgNjU0NTAsIDAsIDQ0MzQsIDEwNjksIDAsIDExODg2MiwgNjU3MzcsIDkxNzc2NSwgCisgICAgMTI4NzA1LCAwLCA5ODM2ODQsIDk2OTMsIDQxOTQzLCAxMjY1NjQsIDQxOTMxLCA0MTc1OSwgMTI3NTcsIDQzNTMsIDAsIAorICAgIDEwNTksIDk3OTAsIDg5OTUsIDExOTk3NCwgOTgzNjg3LCA2NTkzNywgMCwgNDE3NjQsIDEwNjQ2LCAwLCAxMTg4MzMsIAorICAgIDkyMzcyLCAwLCA3NDgzMCwgNzg1NjksIDEyNzQzLCA5ODM2ODAsIDY0ODAsIDkxNzc2MSwgNDE3NzksIDQyNTgwLCA2NjYwMSwgCisgICAgMTIyMDcsIDExOTYxOSwgNjMzNSwgNjY2MDIsIDExMzEyLCA2NDgwNywgMCwgMCwgNDE3NjcsIDExOTYyOSwgOTgzNzU1LCAKKyAgICA0MzAyMCwgMTI4MjcxLCAzOTU1LCA3NDI1NCwgMCwgOTgzNzQ1LCA5MTc4NjEsIDAsIDc3OTI2LCA5NzcwLCA5MjQ2LCAKKyAgICAxMjIzMCwgMCwgMCwgMCwgMTA0NDgsIDQxNzgzLCA0MTc4NiwgMTI3MDkzLCAxMjc5NywgMjc1NSwgNjQ1NzEsIDc4NTc4LCAKKyAgICAxOTQ5MjcsIDQ4NTcsIDAsIDQ0MjgsIDEyNzk0LCA3Mzc1NSwgMTI4MDYxLCA3ODU3NCwgMCwgNzQyODQsIDAsIDU3NDcsIAorICAgIDc4ODI1LCAwLCA3OTc4LCA0MTA5MiwgNzQ1NzEsIDAsIDExOTI0LCA0MzgxMiwgNDIxNDQsIDY1MDE1LCAwLCA1NjMsIDAsIAorICAgIDk4MzY4MiwgMTI3OTgsIDExMjcxLCA1NywgMCwgMCwgOTE3ODYwLCAxMTkwNDMsIDAsIDk0MDUxLCA0MzEzNywgNjk0LCAwLCAKKyAgICA5ODc2LCAwLCAxMTkxNjgsIDAsIDc4ODIyLCA2NDUzNywgMCwgMjc3LCA3NDM4NSwgNzIyOSwgMTI3NjEsIDAsIDAsIAorICAgIDEzMDI1LCA2NDgxMSwgODc1NywgNzg4MjQsIDEyNjQ3OCwgMTU3NCwgNzM4MSwgMCwgMjUyNSwgNDg1MiwgNTc0OSwgCisgICAgNjg0NjUsIDEzMDI3LCA0MjgyNCwgMTIwNTc0LCAxMDM5LCA3MTUxLCAxMDE1NSwgNTc0NSwgMTg4LCA0MTg1OCwgMTE1OTIsIAorICAgIDAsIDc0MDE1LCA5MDU1LCA0MTg1MywgNDg1OCwgOTE3NzgwLCAwLCA0MzYsIDQ3NzEsIDAsIDI3ODYsIDAsIDQ4NTYsIAorICAgIDgwNTEsIDAsIDExOTYwOSwgNzEzMjcsIDk2NDQsIDAsIDAsIDAsIDE5NDkxNiwgMTIwNzMyLCA2NjcxMCwgMTE4ODM0LCAKKyAgICA5ODMzNTEsIDczOTA2LCAxMjg2ODAsIDEyNzExNCwgMCwgMTAyMzQsIDU4NDMsIDExOTM5LCAwLCA0MjE1NywgMCwgMzE1NywgCisgICAgMTk0OTE4LCA2ODM5MywgMCwgMzUwNCwgMTE5MTc4LCAwLCAxMDgyMiwgNTE0OSwgNjYwMjksIDEwMjI2LCA2NTE0MiwgCisgICAgMTI4MDI1LCAzNTk0LCA0MjQyNCwgMTk0OTU5LCA0MCwgMTI2NTcsIDk4MzY1NiwgMCwgMzg2LCAwLCA4ODM0LCAwLCAKKyAgICAxMjgxNSwgNDM1NzQsIDAsIDczOTA3LCAwLCA3NDE5NiwgNzIyMCwgNzQ1MDQsIDAsIDc0MzE2LCAwLCA2NTMyMiwgNDMwNCwgCisgICAgNzQ1MDMsIDgxNjAsIDc4NzA3LCAxOTQ3NTMsIDAsIDAsIDEyODUyNiwgMTM0OCwgOTIzNDksIDc4NTk3LCAxMjY1MzksIAorICAgIDEzMzAzLCAwLCA5MjM5MiwgMTk0NzU1LCA3NTk5LCAxMjc4LCA0MzYxNiwgMTMyNjksIDAsIDAsIDc0Mzg3LCA3ODE3OSwgCisgICAgNzg1OTgsIDc0NDkyLCA2MDk3LCA3NTY4LCA4NzgwLCA0OTgyLCAxMjc0NjQsIDc0NTAxLCAxOTQ3NjMsIDc4NTkyLCAKKyAgICAxOTQ3NjIsIDI2NzIsIDM3MzUsIDEyNzQ3MCwgMTMxMzgsIDQyMjY2LCA5NDg0LCAxMDcyNCwgNDEyMDIsIDcxMzY0LCAwLCAKKyAgICA0Mzc0MiwgMCwgOTQ4NywgMTE5OTU5LCAxMTkxMTcsIDM4NDIsIDEyODc2OCwgNzg2NjgsIDEyNDQyLCA2MTkzLCA5NzkxLCAKKyAgICAxMjc5NzYsIDAsIDQyNTE2LCA3MjI4LCA3NTU5LCA3NDgwMywgNzg0NjgsIDc4NzMsIDExMzk5LCAxMTkyMTksIDE5NDY5MSwgCisgICAgMTk0ODU1LCAxOTQ2OTAsIDE5NDg1NywgMzYwNCwgMTIwNjgzLCAxMTkxODgsIDEyODg3NywgNzg1NDAsIDc4NTQxLCAKKyAgICA0MjUwNywgMTk2MiwgNDMzMDUsIDc4NDc2LCA0MjUwNSwgMTE2NjAsIDAsIDIwNzIsIDkyMzEyLCA2OTk1LCA3NDE3MywgCisgICAgNTQzNywgNzQxNzQsIDEwNjY5LCA4NzAyLCA3OTY0LCA5MjM1MiwgMCwgMTk5LCAxOTQ4NDMsIDQxMDUsIDE5NDg0NSwgCisgICAgMTk0Njk5LCAxOTQ4NDcsIDE5NDcxMCwgMTE5ODc1LCAxMzE0OCwgNzU2MCwgNzg0NzksIDkyMjYsIDc4NDgwLCAxOTUwNzAsIAorICAgIDY0NzIsIDY1ODE0LCA3Mzk1NCwgMCwgNDcyNCwgMCwgMCwgOTE5MSwgMCwgNjQ0MzIsIDk4MzgwOCwgOTgzMjQxLCAKKyAgICAxOTUwMjQsIDEwMTk2LCA3ODg2LCAwLCA2NTg1LCAwLCA2NjgwLCAxOTUwNDIsIDAsIDE5NTA1MSwgNjY3OSwgNzQ0MTIsIAorICAgIDkyMjUxLCAxOTQ4NjYsIDc0NDIxLCAxMTM4MiwgOTgzNjIyLCA5ODM2MjgsIDEyNzg5MSwgMTI3NDg0LCAxOTQ4MzMsIAorICAgIDE5NDgzMiwgNjY4MSwgMTI3NDgyLCAxMjY5MywgMTk0ODM2LCA0MjcyNywgNzgxOTYsIDEyODI1MiwgNzgxOTUsIDY1NDQyLCAKKyAgICAxMTk2MTAsIDY5NzMzLCA5OTg5LCA0MzI0OCwgNjYyNDgsIDE5NDgxNiwgMCwgMTk0ODE4LCAxMjg4NDUsIDE5NDgyMCwgCisgICAgMTk0ODE5LCA1Mjk3LCA3MDQyLCAxMzI4NCwgNjExMiwgNzk2OCwgMTk0ODI1LCA3MzkyNywgOTI0NDQsIDE5NDczNiwgCisgICAgNjU3NDYsIDEyNzQ3NiwgNjk4ODksIDc0Mzg5LCAxMjg2OTYsIDQzNDIsIDQyODM5LCAxOTQ4MzEsIDE2NzcsIDAsIDAsIAorICAgIDEyNjU5MCwgOTE3ODU1LCAxMTA5MSwgMTEwMTEsIDI3MTksIDAsIDAsIDExOTU5NSwgMTAxNjAsIDAsIDAsIDc1ODUsIAorICAgIDY1MTY5LCAyMDUyLCA0MzA4LCA5MjE3NCwgNDMwMDAsIDc1MDUsIDU0MywgNjQ5MTYsIDY0NzM2LCAwLCAwLCA2NDY1NSwgMCwgCisgICAgMTE4OTIyLCAyMDY0LCAwLCA0MzE1OCwgNzkwMiwgMCwgNjUyNjUsIDE5NDYzOSwgMCwgMTI3MTcwLCAwLCAwLCAwLCAwLCAKKyAgICAxMjk5NCwgOTI3MjgsIDEwODI4LCA5ODM5MzQsIDYyMjgsIDQzMDcsIDM0ODIsIDEyODUyNywgMCwgMCwgMCwgNTA2LCAKKyAgICA3NDU3MywgNDExOTQsIDY1NzM1LCAyMDU1LCA0MzI1NSwgNDExOTUsIDAsIDgxNjksIDk4MzY3MSwgODg0MSwgMCwgNTE2LCAKKyAgICA5Mzk3NCwgMjA2MywgMTE5MDUxLCAzNCwgMTI4ODUwLCAxMjAxODYsIDExNTA0LCAxNjEyLCA3NDMzMywgMTIwMTgyLCAKKyAgICAxMTgyNywgNzQzMDgsIDEyMDAxLCAxMjAxNzgsIDEwMjQyLCA2NDU2NCwgMTIwMTc5LCA2Nzk4NiwgNjU4NCwgNzc0OSwgCisgICAgMTEwMzcsIDAsIDE3NTgsIDEyNzA5MiwgMTA2NjcsIDEwNTYwLCAxMjAxOTcsIDkyNTkzLCAxOTM1LCAxMTUxNywgMTIwMTkzLCAKICAgICAxMjAxOTYsIDEyMDE5NSwgMTkzMSwgMTIwMTg5LCA3NDgzOSwgMTIwMTkxLCAxMjE3LCA2NDcwMiwgMTI2NDMsIDgyNSwgCiAgICAgMTI3ODM4LCAxOTQ5MDUsIDEyMjk0LCA5MjQyOCwgNzg4MzQsIDkxMzgsIDc4ODMxLCA3ODgzMywgMTI2MzEsIDc4ODI5LCAKICAgICAxMTA4MCwgNzQ1NTQsIDY0MDAwLCA1NTkxLCAxMjM5LCAwLCAxMTMxMywgMCwgMzQwMywgMCwgMCwgNjQzNjQsIDkyMjY5LCAKLSAgICAwLCA3NDU4MiwgODk5OCwgMTI5ODgsIDAsIDkxNTIsIDAsIDAsIDE5NDg5OCwgNjc1ODksIDQxODUwLCA2NDI5MCwgMzQzMywgCi0gICAgOTIzOTMsIDEyNjE1LCAxNTk0LCA0MjE5MiwgNjkxNCwgNjc2MDMsIDAsIDExOTU2OSwgNzQ1NjUsIDQxMzUzLCA2NzYwMiwgCi0gICAgNjc2MTEsIDQzMzcsIDAsIDEyNzI5NiwgOTE4LCA2NTAzNSwgNDEzNTEsIDc2ODEsIDE5NDkwMCwgNDI1NzcsIDQxMzkzLCAKLSAgICAxMjY2OCwgMTk0OTA0LCAyNDc3LCAxMjcyODUsIDAsIDEyNzMwMSwgMCwgNjc2MDQsIDE5NDg4MCwgMTI3MjM1LCA1NzMsIAotICAgIDEyNzI4MiwgMTk0ODg0LCAxMTQxNywgMTk0ODg2LCAxMTk4MTQsIDE5NDg4OCwgNjc1OTksIDAsIDE5NDg4OSwgNjc2MDcsIAotICAgIDExNDgyLCAwLCAzOTgxLCAzMzU3LCAwLCA0MjIyMywgNDIwNywgMTI4OCwgNzg4NDIsIDc4ODM5LCA2ODQxOSwgNzg4MzcsIAotICAgIDExNTg5LCA0MjE5NSwgMTk0ODcyLCAxOTQ1OTksIDEyNzI2MywgNjQ2MDIsIDY3NjE4LCA5MjUzOSwgMCwgNDI3ODgsIAotICAgIDY4NDE2LCA2NDQ4MCwgMTk0ODc1LCA4NDIzLCAzMzQ4LCA0NDgsIDY4NDc2LCA5NzE3LCAwLCAwLCA5OTcsIDAsIDAsIAotICAgIDkyNTc3LCAwLCAxMTQ0MCwgMTEzNzksIDQyMDAwLCAxMzEzOSwgNDIyMjEsIDY1MDEzLCAxMjY5OTksIDEyNzc2MCwgCi0gICAgNzM3OTYsIDAsIDExOTIyOCwgMTIwMzUsIDAsIDI4MTgsIDAsIDAsIDczNzkzLCAwLCA0MTcyLCAwLCAwLCA4MzczLCAKKyAgICAwLCA3NDU4MiwgODk5OCwgMTI5ODgsIDAsIDkxNTIsIDk4Mzg0MCwgMCwgMTI2NDg0LCA2NzU4OSwgNDE4NTAsIDY0MjkwLCAKKyAgICAzNDMzLCA5MjM5MywgMTI2MTUsIDE1OTQsIDQyMTkyLCA2OTE0LCA2NzYwMywgMCwgMTE5NTY5LCA3NDU2NSwgNDEzNTMsIAorICAgIDY3NjAyLCA2NzYxMSwgNDMzNywgMCwgMTI3Mjk2LCA5MTgsIDY1MDM1LCA0MTM1MSwgNzY4MSwgMTk0OTAwLCA0MjU3NywgCisgICAgNDEzOTMsIDEyNjY4LCAxOTQ5MDQsIDI0NzcsIDEyNzI4NSwgMCwgMTI3MzAxLCAwLCA2NzYwNCwgMTk0ODgwLCAxMjcyMzUsIAorICAgIDU3MywgMTI3MjgyLCAxOTQ4ODQsIDExNDE3LCAxOTQ4ODYsIDExOTgxNCwgMTk0ODg4LCA2NzU5OSwgMCwgMTk0ODg5LCAKKyAgICA2NzYwNywgMTE0ODIsIDAsIDM5ODEsIDMzNTcsIDAsIDQyMjIzLCA0MjA3LCAxMjg4LCA3ODg0MiwgNzg4MzksIDY4NDE5LCAKKyAgICA3ODgzNywgMTE1ODksIDQyMTk1LCAxOTQ4NzIsIDE5NDU5OSwgMTI3MjYzLCA2NDYwMiwgNjc2MTgsIDkyNTM5LCAwLCAKKyAgICA0Mjc4OCwgNjg0MTYsIDY0NDgwLCAxOTQ4NzUsIDg0MjMsIDMzNDgsIDQ0OCwgNjg0NzYsIDk3MTcsIDAsIDAsIDk5NywgMCwgCisgICAgMCwgOTI1NzcsIDAsIDExNDQwLCAxMTM3OSwgNDIwMDAsIDEzMTM5LCA0MjIyMSwgNjUwMTMsIDEyNjk5OSwgMTI3NzYwLCAKKyAgICA3Mzc5NiwgMCwgMTE5MjI4LCAxMjAzNSwgMCwgMjgxOCwgMCwgNzQ0MTEsIDczNzkzLCAwLCA0MTcyLCAwLCAwLCA4MzczLCAKICAgICAxMDg3MywgMTIxOTcsIDAsIDAsIDkyMjY1LCA2OTcwNiwgMCwgNzgyMTAsIDAsIDEyODExMCwgMTk0ODY1LCAxMjY5ODIsIAogICAgIDc0NTYzLCA2NDgyOCwgMTE0MTksIDE5NDg2OCwgNzY2LCAxMjU3LCAwLCAxMTg4NDUsIDExMzgxLCAzMjY1LCA2NjYxNywgCi0gICAgMzI3NCwgMTI3MzY1LCAwLCAwLCAwLCA3NDUyMiwgNDE5ODksIDAsIDAsIDEyODc5OCwgMzI2MywgMCwgNjU2NzIsIDAsIAotICAgIDMyNzAsIDY0NTM5LCAxMTQ4OSwgMCwgMCwgMCwgMCwgOTUwNSwgNjU1MTgsIDE5NDc3NiwgNzU2LCAxOTQ2MDUsIDAsIDAsIAotICAgIDAsIDcyNjEsIDAsIDE4NiwgMCwgMTE5MTU2LCA1NzcwLCAxMzE3OSwgNjU4MzAsIDEyNjEyLCAxMjk0OSwgNjQ4NTYsIAotICAgIDEyODAwLCAwLCA3NDIwMywgNjQ3MTgsIDAsIDAsIDkyNDM0LCAxMTg5MjksIDAsIDExNTc4LCAwLCAxMTkyOTYsIDAsIDAsIAotICAgIDAsIDAsIDc0NTY4LCA5MjU0LCAwLCAxNzk0LCAxMjAyMTcsIDY0NTIxLCA1NjI0LCAxMjAyMjAsIDEyMDIyMSwgMTE5OTU4LCAKLSAgICAxMjAyMjMsIDM2MTcsIDY2NjM2LCA2NDg4NiwgMTIwMjExLCAxMjAyMTIsIDEyMDIxMywgMTIwMjE0LCAxODcyLCA2NjUwOCwgCi0gICAgMTIwNDY3LCA0MTA3OSwgMTA3NDgsIDU1MDIsIDExOTMzMCwgNDQ1MiwgMCwgMCwgOTI1MjYsIDQ1MTEsIDAsIDAsIDY0Njc4LCAKLSAgICAxMTQyNSwgMCwgNDMyNDUsIDEyMzEsIDE5NDc4MywgMCwgMCwgOTAwMywgODE5MiwgMCwgNTMwNSwgOTY1MywgMTA2MTYsIAotICAgIDg2OTQsIDk1NDYsIDAsIDAsIDEyMDQ3OCwgMTIwMjAwLCA2NTIwNSwgMTIwMjAyLCA2NDA2MywgOTg3OCwgNzQ3ODAsIAotICAgIDExOTYyNiwgNzgyMDIsIDY0MDU4LCA4Nzk5LCA0MjEzMSwgMCwgNjQwNjIsIDEwMjgsIDY0MDYwLCA2NDA1OSwgODM3LCAKLSAgICAxMDU2NywgMCwgNDMxMDMsIDAsIDEyMDc1NCwgMTE0MjcsIDI5MDIsIDY0MDQzLCA2NDA0MiwgNjY0NjQsIDEwNzU2LCAwLCAKLSAgICA0MjYwNiwgNjQwNDUsIDY0MDQ0LCA0Mzk3OSwgMTAwNzYsIDY0MDQwLCA0MzA2MCwgMTk0OTQyLCAxMDM0LCAzMzkyLCAKLSAgICAxMjc3NzEsIDQzMDkxLCA2NDAzMywgNjQwMzIsIDQyNzM1LCA2NDAzOCwgNjQwMzcsIDY0MDM2LCA2NDAzNSwgNDI5MSwgCi0gICAgMTk0OTI4LCA2NDAxNSwgNjQwMTQsIDY0NjgxLCAxOTQ5MzAsIDAsIDc4MTQ1LCAwLCA0MzA5MCwgMCwgMzQ3NiwgODk3MywgCi0gICAgNjQwMTIsIDQyNDczLCA2NDAxMCwgNjQwMDgsIDY0MDA3LCAyMDAzLCA3NzA2LCA2NDUxNywgNzgxNTMsIDI1MzgsIDY0MDA5LCAKLSAgICAyMDQsIDAsIDQ4MDIsIDQxMTEsIDgyMzksIDkwOTgsIDQ4MDUsIDY0MDAxLCA2NDA1NywgNzg4NSwgNzI0NywgNjQwNTQsIDAsIAotICAgIDAsIDQ3NjcsIDkzNDMsIDY0MDQ5LCA2NDA0OCwgMTIwMDM0LCAxMTMzLCA2NDA1MywgNjQwNTIsIDQzNDUzLCA2NDA1MCwgCi0gICAgNDEzNDAsIDExODk3NSwgMTk0ODM1LCAxMDAwNSwgMTIzMjksIDQxMzMzLCAwLCA4NDg5LCAxOTQyLCAwLCAxOTQ4MzQsIAotICAgIDQyNTIwLCAxMjgyNDksIDAsIDAsIDEwNzYwLCA2NDAyMywgNjQwMjIsIDY0MDIxLCA2NTgyLCA0MzY3MCwgMCwgNjQwMjUsIAotICAgIDkxNjcsIDQyMTUxLCA3ODI0NCwgMCwgMjAyNiwgNjQwMTksIDY0MDE4LCA2NDAxNywgNjQwMTYsIDEyNzY4LCAwLCA3NTgyLCAKLSAgICA3ODI1MiwgNzgyNDgsIDc3OTE0LCA3ODI0NiwgNzgyNDcsIDAsIDc3OTE1LCA3ODc2NiwgNjc4OCwgMTMwOTQsIDc3OTIwLCAKLSAgICA3NTMyLCA0MTQxNCwgNzg1MjAsIDMxNzksIDc4NTE4LCA2NDc2OSwgNzg1MTQsIDc4NTE3LCAxMTQ2MSwgNzQ0NTQsIAotICAgIDEwNzUxLCA5MDUxLCAxMjA3MjAsIDY3MDgsIDEwNTM1LCAwLCA2ODIxOCwgNTUyNzQsIDIwMDgsIDY0MDMxLCA2NDAzMCwgCi0gICAgMjk0LCA0MTg3NCwgMCwgMTI2OTkxLCA2NTkyOSwgMCwgMCwgMCwgMCwgNjQwMjgsIDgxNDYsIDY0MDI2LCA0MTc4OCwgCi0gICAgMTk0ODQ0LCAwLCAxMTg3OTUsIDYzNDMsIDQzMjQ3LCAxMTk4ODgsIDAsIDExOTg4NiwgMTE5ODkxLCAxMTk4OTIsIAotICAgIDExOTg4OSwgMTE0MzMsIDExOTg5NSwgMTE5ODk2LCAwLCA3ODAxLCA2NTU3OCwgMTk0ODM5LCAxMjkxNSwgNDM5NjgsIAotICAgIDMyOTcsIDk2OTksIDE5NDk1NSwgMTEzNSwgMCwgMCwgMTI4NTI1LCAxOTk1LCA2NzIyLCAwLCAwLCAyNTUyLCA0MTU0NiwgCi0gICAgNjAsIDY4Mzk0LCA4NjQ5LCA0MTU0OSwgNzg0OTYsIDAsIDAsIDY2ODIsIDAsIDc4Njc5LCA2NDcxMCwgNDE1NDcsIDAsIAotICAgIDIwMTMsIDEyODI5MSwgNzg1MzAsIDc4NTMyLCA3ODUyOCwgNzg1MjksIDEyODMyLCA3ODQ5MywgODA4MSwgODM2MiwgMzUzNywgCi0gICAgMTE5OTA4LCA5MTM3LCA3MTU1LCA4OTk5LCAwLCA3ODUzMywgMzQ2NiwgMCwgMCwgMTk5NiwgMCwgMzQ1MywgNjI4MiwgMCwgCi0gICAgMjAwMiwgMjAwMCwgMTIwMTc1LCA1MzcsIDAsIDQxNzksIDY1MTE5LCAxOTk4LCAwLCAxODQyLCAwLCA5MjY3NCwgOTYyOCwgCi0gICAgNjg0NDYsIDEyMDgxLCA5ODI2LCA2NDUwMiwgMTc2NywgMCwgMCwgMCwgMTIwMjAxLCAwLCAwLCAwLCAzMDU5LCA0NDAyNCwgCi0gICAgMTIwMjA0LCAxMTk5NTMsIDkyNjkzLCAwLCAwLCA5MjQ1MiwgNDEwMCwgOTIwLCAxODExLCAxMzU1LCAwLCAwLCAzNTkyLCAKLSAgICAxMDA3OCwgMCwgMCwgMCwgODU5MiwgNjU4NzAsIDY4MTY0LCAxMjg3OTIsIDEwNzQyLCAwLCA0MjkxOCwgMTk5NCwgOTI4MSwgCi0gICAgMzI5NiwgMTI4NjUsIDE5OTcsIDE4OTUsIAorICAgIDMyNzQsIDEyNzM2NSwgMTI2NTIzLCA5NDA0MiwgOTgzOTQxLCA3NDUyMiwgNDE5ODksIDAsIDAsIDEyODc5OCwgMzI2MywgMCwgCisgICAgNjU2NzIsIDAsIDMyNzAsIDY0NTM5LCAxMTQ4OSwgMCwgMCwgMCwgMCwgOTUwNSwgNjU1MTgsIDE5NDc3NiwgNzU2LCAKKyAgICAxOTQ2MDUsIDAsIDAsIDAsIDcyNjEsIDAsIDE4NiwgMCwgMTE5MTU2LCA1NzcwLCAxMzE3OSwgNjU4MzAsIDEyNjEyLCAKKyAgICAxMjk0OSwgNjQ4NTYsIDEyODAwLCA5ODM4OTIsIDc0MjAzLCA2NDcxOCwgMTE1MDcsIDAsIDkyNDM0LCAxMTg5MjksIDAsIAorICAgIDExNTc4LCAwLCAxMTkyOTYsIDAsIDAsIDAsIDAsIDc0NTY4LCA5MjU0LCAwLCAxNzk0LCAxMjAyMTcsIDY0NTIxLCA1NjI0LCAKKyAgICAxMjAyMjAsIDEyMDIyMSwgMTE5OTU4LCAxMjAyMjMsIDM2MTcsIDY2NjM2LCA2NDg4NiwgOTQwNjEsIDEyMDIxMiwgCisgICAgMTIwMjEzLCAxMjAyMTQsIDE4NzIsIDY2NTA4LCAxMjA0NjcsIDQxMDc5LCAxMDc0OCwgNTUwMiwgMTE5MzMwLCA0NDUyLCAwLCAKKyAgICA5ODM3NjIsIDkyNTI2LCA0NTExLCAwLCA5ODM4NjgsIDY0Njc4LCAxMTQyNSwgMCwgNDMyNDUsIDEyMzEsIDE5NDc4MywgCisgICAgNjk5MDMsIDAsIDkwMDMsIDgxOTIsIDAsIDUzMDUsIDk2NTMsIDEwNjE2LCA4Njk0LCA5NTQ2LCAwLCAwLCAxMjA0NzgsIAorICAgIDEyMDIwMCwgNjUyMDUsIDEyMDIwMiwgNjQwNjMsIDk4NzgsIDc0NzgwLCAxMTk2MjYsIDc4MjAyLCA2NDA1OCwgODc5OSwgCisgICAgNDIxMzEsIDAsIDY0MDYyLCAxMDI4LCA2NDA2MCwgNjQwNTksIDgzNywgMTA1NjcsIDAsIDQzMTAzLCAwLCAxMjA3NTQsIAorICAgIDExNDI3LCAyOTAyLCA2NDA0MywgNjQwNDIsIDQzNzQ5LCAxMDc1NiwgNjQwNDcsIDQyNjA2LCA2NDA0NSwgNjQwNDQsIAorICAgIDQzOTc5LCAxMDA3NiwgNjQwNDAsIDQzMDYwLCAxOTQ5NDIsIDEwMzQsIDMzOTIsIDEyNzc3MSwgNDMwOTEsIDY0MDMzLCAKKyAgICA2NDAzMiwgNDI3MzUsIDY0MDM4LCA2NDAzNywgNjQwMzYsIDY0MDM1LCA0MjkxLCAxOTQ5MjgsIDY0MDE1LCA2NDAxNCwgCisgICAgNjQ2ODEsIDE5NDkzMCwgMCwgNzgxNDUsIDAsIDQzMDkwLCAwLCAzNDc2LCA4OTczLCA2NDAxMiwgNDI0NzMsIDY0MDEwLCAKKyAgICA2NDAwOCwgNjQwMDcsIDIwMDMsIDc3MDYsIDY0NTE3LCA3ODE1MywgMjUzOCwgNjQwMDksIDIwNCwgMCwgNDgwMiwgNDExMSwgCisgICAgODIzOSwgOTA5OCwgNDgwNSwgNjQwMDEsIDY0MDU3LCA3ODg1LCA3MjQ3LCA2NDA1NCwgOTgzMjU4LCAwLCA0NzY3LCA5MzQzLCAKKyAgICA2NDA0OSwgNjQwNDgsIDEyMDAzNCwgMTEzMywgNjQwNTMsIDY0MDUyLCA0MzQ1MywgNjQwNTAsIDQxMzQwLCAxMTg5NzUsIAorICAgIDE5NDgzNSwgMTAwMDUsIDEyMzI5LCA0MTMzMywgMCwgODQ4OSwgMTk0MiwgMCwgMTk0ODM0LCA0MjUyMCwgMTI4MjQ5LCAwLCAKKyAgICAwLCAxMDc2MCwgNjQwMjMsIDY0MDIyLCA2NDAyMSwgNjU4MiwgNDM2NzAsIDAsIDY0MDI1LCA5MTY3LCA0MjE1MSwgNzgyNDQsIAorICAgIDk4MzIyNiwgMjAyNiwgNjQwMTksIDY0MDE4LCA2NDAxNywgNjQwMTYsIDEyNzY4LCAwLCA3NTgyLCA3ODI1MiwgNzgyNDgsIAorICAgIDc3OTE0LCA3ODI0NiwgNzgyNDcsIDAsIDc3OTE1LCA3ODc2NiwgNjc4OCwgMTMwOTQsIDc3OTIwLCA3NTMyLCA0MTQxNCwgCisgICAgNzg1MjAsIDMxNzksIDc4NTE4LCA2NDc2OSwgNzg1MTQsIDc4NTE3LCAxMTQ2MSwgNzQ0NTQsIDEwNzUxLCA5MDUxLCAKKyAgICAxMjA3MjAsIDY3MDgsIDEwNTM1LCAwLCA2ODIxOCwgNTUyNzQsIDIwMDgsIDY0MDMxLCA2NDAzMCwgMjk0LCA0MTg3NCwgMCwgCisgICAgMTI2OTkxLCA2NTkyOSwgMCwgMCwgMCwgMCwgNjQwMjgsIDgxNDYsIDY0MDI2LCA0MTc4OCwgMTk0ODQ0LCAwLCA0MzUxLCAKKyAgICA2MzQzLCA0MzI0NywgMTE5ODg4LCAwLCAxMTk4ODYsIDExOTg5MSwgMTE5ODkyLCAxMTk4ODksIDExNDMzLCAxMTk4OTUsIAorICAgIDExOTg5NiwgMCwgNzgwMSwgNjU1NzgsIDE5NDgzOSwgMTI5MTUsIDQzOTY4LCAzMjk3LCA5Njk5LCAxOTQ5NTUsIDExMzUsIAorICAgIDAsIDAsIDEyODUyNSwgMTk5NSwgNjcyMiwgOTgzOTE2LCAwLCAyNTUyLCA0MTU0NiwgNjAsIDY4Mzk0LCA4NjQ5LCA0MTU0OSwgCisgICAgNzg0OTYsIDk4MzMxOSwgMCwgNjY4MiwgMCwgNzg2NzksIDY0NzEwLCA0MTU0NywgOTgzNjIxLCAyMDEzLCAxMjgyOTEsIAorICAgIDc4NTMwLCA3ODUzMiwgNzg1MjgsIDc4NTI5LCAxMjgzMiwgNzg0OTMsIDgwODEsIDgzNjIsIDM1MzcsIDExOTkwOCwgOTEzNywgCisgICAgNzE1NSwgODk5OSwgMCwgNzg1MzMsIDM0NjYsIDAsIDAsIDE5OTYsIDAsIDM0NTMsIDYyODIsIDAsIDIwMDIsIDIwMDAsIAorICAgIDEyMDE3NSwgNTM3LCAwLCA0MTc5LCA2NTExOSwgMTk5OCwgMCwgMTg0MiwgMCwgOTI2NzQsIDk2MjgsIDY4NDQ2LCAxMjA4MSwgCisgICAgOTgyNiwgNjQ1MDIsIDE3NjcsIDAsIDAsIDAsIDEyMDIwMSwgOTgzNjM3LCAwLCAwLCAzMDU5LCA0NDAyNCwgMTIwMjA0LCAKKyAgICAxMTk5NTMsIDkyNjkzLCAwLCAwLCA5MjQ1MiwgNDEwMCwgOTIwLCAxODExLCAxMzU1LCAwLCAwLCAzNTkyLCAxMDA3OCwgMCwgCisgICAgMCwgMCwgODU5MiwgNjU4NzAsIDY4MTY0LCAxMjg3OTIsIDEwNzQyLCAwLCA0MjkxOCwgMTk5NCwgOTI4MSwgMzI5NiwgCisgICAgMTI4NjUsIDE5OTcsIDE4OTUsIAogfTsKIAogI2RlZmluZSBjb2RlX21hZ2ljIDQ3CiAjZGVmaW5lIGNvZGVfc2l6ZSAzMjc2OAogI2RlZmluZSBjb2RlX3BvbHkgMzI3NzEKKworc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBhbGlhc2VzX3N0YXJ0ID0gMHhmMDAwMDsKK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgYWxpYXNlc19lbmQgPSAweGYwMWMxOworc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBuYW1lX2FsaWFzZXNbXSA9IHsKKyAgICAweDAwMDAsCisgICAgMHgwMDAwLAorICAgIDB4MDAwMSwKKyAgICAweDAwMDEsCisgICAgMHgwMDAyLAorICAgIDB4MDAwMiwKKyAgICAweDAwMDMsCisgICAgMHgwMDAzLAorICAgIDB4MDAwNCwKKyAgICAweDAwMDQsCisgICAgMHgwMDA1LAorICAgIDB4MDAwNSwKKyAgICAweDAwMDYsCisgICAgMHgwMDA2LAorICAgIDB4MDAwNywKKyAgICAweDAwMDcsCisgICAgMHgwMDA4LAorICAgIDB4MDAwOCwKKyAgICAweDAwMDksCisgICAgMHgwMDA5LAorICAgIDB4MDAwOSwKKyAgICAweDAwMDksCisgICAgMHgwMDBBLAorICAgIDB4MDAwQSwKKyAgICAweDAwMEEsCisgICAgMHgwMDBBLAorICAgIDB4MDAwQSwKKyAgICAweDAwMEEsCisgICAgMHgwMDBCLAorICAgIDB4MDAwQiwKKyAgICAweDAwMEIsCisgICAgMHgwMDBDLAorICAgIDB4MDAwQywKKyAgICAweDAwMEQsCisgICAgMHgwMDBELAorICAgIDB4MDAwRSwKKyAgICAweDAwMEUsCisgICAgMHgwMDBFLAorICAgIDB4MDAwRiwKKyAgICAweDAwMEYsCisgICAgMHgwMDBGLAorICAgIDB4MDAxMCwKKyAgICAweDAwMTAsCisgICAgMHgwMDExLAorICAgIDB4MDAxMSwKKyAgICAweDAwMTIsCisgICAgMHgwMDEyLAorICAgIDB4MDAxMywKKyAgICAweDAwMTMsCisgICAgMHgwMDE0LAorICAgIDB4MDAxNCwKKyAgICAweDAwMTUsCisgICAgMHgwMDE1LAorICAgIDB4MDAxNiwKKyAgICAweDAwMTYsCisgICAgMHgwMDE3LAorICAgIDB4MDAxNywKKyAgICAweDAwMTgsCisgICAgMHgwMDE4LAorICAgIDB4MDAxOSwKKyAgICAweDAwMTksCisgICAgMHgwMDFBLAorICAgIDB4MDAxQSwKKyAgICAweDAwMUIsCisgICAgMHgwMDFCLAorICAgIDB4MDAxQywKKyAgICAweDAwMUMsCisgICAgMHgwMDFDLAorICAgIDB4MDAxRCwKKyAgICAweDAwMUQsCisgICAgMHgwMDFELAorICAgIDB4MDAxRSwKKyAgICAweDAwMUUsCisgICAgMHgwMDFFLAorICAgIDB4MDAxRiwKKyAgICAweDAwMUYsCisgICAgMHgwMDFGLAorICAgIDB4MDAyMCwKKyAgICAweDAwN0YsCisgICAgMHgwMDdGLAorICAgIDB4MDA4MCwKKyAgICAweDAwODAsCisgICAgMHgwMDgxLAorICAgIDB4MDA4MSwKKyAgICAweDAwODIsCisgICAgMHgwMDgyLAorICAgIDB4MDA4MywKKyAgICAweDAwODMsCisgICAgMHgwMDg0LAorICAgIDB4MDA4NCwKKyAgICAweDAwODUsCisgICAgMHgwMDg1LAorICAgIDB4MDA4NiwKKyAgICAweDAwODYsCisgICAgMHgwMDg3LAorICAgIDB4MDA4NywKKyAgICAweDAwODgsCisgICAgMHgwMDg4LAorICAgIDB4MDA4OCwKKyAgICAweDAwODksCisgICAgMHgwMDg5LAorICAgIDB4MDA4OSwKKyAgICAweDAwOEEsCisgICAgMHgwMDhBLAorICAgIDB4MDA4QSwKKyAgICAweDAwOEIsCisgICAgMHgwMDhCLAorICAgIDB4MDA4QiwKKyAgICAweDAwOEMsCisgICAgMHgwMDhDLAorICAgIDB4MDA4QywKKyAgICAweDAwOEQsCisgICAgMHgwMDhELAorICAgIDB4MDA4RCwKKyAgICAweDAwOEUsCisgICAgMHgwMDhFLAorICAgIDB4MDA4RSwKKyAgICAweDAwOEYsCisgICAgMHgwMDhGLAorICAgIDB4MDA4RiwKKyAgICAweDAwOTAsCisgICAgMHgwMDkwLAorICAgIDB4MDA5MSwKKyAgICAweDAwOTEsCisgICAgMHgwMDkxLAorICAgIDB4MDA5MiwKKyAgICAweDAwOTIsCisgICAgMHgwMDkyLAorICAgIDB4MDA5MywKKyAgICAweDAwOTMsCisgICAgMHgwMDk0LAorICAgIDB4MDA5NCwKKyAgICAweDAwOTUsCisgICAgMHgwMDk1LAorICAgIDB4MDA5NiwKKyAgICAweDAwOTYsCisgICAgMHgwMDk2LAorICAgIDB4MDA5NywKKyAgICAweDAwOTcsCisgICAgMHgwMDk3LAorICAgIDB4MDA5OCwKKyAgICAweDAwOTgsCisgICAgMHgwMDk5LAorICAgIDB4MDA5OSwKKyAgICAweDAwOUEsCisgICAgMHgwMDlBLAorICAgIDB4MDA5QiwKKyAgICAweDAwOUIsCisgICAgMHgwMDlDLAorICAgIDB4MDA5QywKKyAgICAweDAwOUQsCisgICAgMHgwMDlELAorICAgIDB4MDA5RSwKKyAgICAweDAwOUUsCisgICAgMHgwMDlGLAorICAgIDB4MDA5RiwKKyAgICAweDAwQTAsCisgICAgMHgwMEFELAorICAgIDB4MDFBMiwKKyAgICAweDAxQTMsCisgICAgMHgwMzRGLAorICAgIDB4MENERSwKKyAgICAweDBFOUQsCisgICAgMHgwRTlGLAorICAgIDB4MEVBMywKKyAgICAweDBFQTUsCisgICAgMHgwRkQwLAorICAgIDB4MTgwQiwKKyAgICAweDE4MEMsCisgICAgMHgxODBELAorICAgIDB4MTgwRSwKKyAgICAweDIwMEIsCisgICAgMHgyMDBDLAorICAgIDB4MjAwRCwKKyAgICAweDIwMEUsCisgICAgMHgyMDBGLAorICAgIDB4MjAyQSwKKyAgICAweDIwMkIsCisgICAgMHgyMDJDLAorICAgIDB4MjAyRCwKKyAgICAweDIwMkUsCisgICAgMHgyMDJGLAorICAgIDB4MjA1RiwKKyAgICAweDIwNjAsCisgICAgMHgyMTE4LAorICAgIDB4MjQ0OCwKKyAgICAweDI0NDksCisgICAgMHhBMDE1LAorICAgIDB4RkUxOCwKKyAgICAweEZFMDAsCisgICAgMHhGRTAxLAorICAgIDB4RkUwMiwKKyAgICAweEZFMDMsCisgICAgMHhGRTA0LAorICAgIDB4RkUwNSwKKyAgICAweEZFMDYsCisgICAgMHhGRTA3LAorICAgIDB4RkUwOCwKKyAgICAweEZFMDksCisgICAgMHhGRTBBLAorICAgIDB4RkUwQiwKKyAgICAweEZFMEMsCisgICAgMHhGRTBELAorICAgIDB4RkUwRSwKKyAgICAweEZFMEYsCisgICAgMHhGRUZGLAorICAgIDB4RkVGRiwKKyAgICAweEZFRkYsCisgICAgMHgxRDBDNSwKKyAgICAweEUwMTAwLAorICAgIDB4RTAxMDEsCisgICAgMHhFMDEwMiwKKyAgICAweEUwMTAzLAorICAgIDB4RTAxMDQsCisgICAgMHhFMDEwNSwKKyAgICAweEUwMTA2LAorICAgIDB4RTAxMDcsCisgICAgMHhFMDEwOCwKKyAgICAweEUwMTA5LAorICAgIDB4RTAxMEEsCisgICAgMHhFMDEwQiwKKyAgICAweEUwMTBDLAorICAgIDB4RTAxMEQsCisgICAgMHhFMDEwRSwKKyAgICAweEUwMTBGLAorICAgIDB4RTAxMTAsCisgICAgMHhFMDExMSwKKyAgICAweEUwMTEyLAorICAgIDB4RTAxMTMsCisgICAgMHhFMDExNCwKKyAgICAweEUwMTE1LAorICAgIDB4RTAxMTYsCisgICAgMHhFMDExNywKKyAgICAweEUwMTE4LAorICAgIDB4RTAxMTksCisgICAgMHhFMDExQSwKKyAgICAweEUwMTFCLAorICAgIDB4RTAxMUMsCisgICAgMHhFMDExRCwKKyAgICAweEUwMTFFLAorICAgIDB4RTAxMUYsCisgICAgMHhFMDEyMCwKKyAgICAweEUwMTIxLAorICAgIDB4RTAxMjIsCisgICAgMHhFMDEyMywKKyAgICAweEUwMTI0LAorICAgIDB4RTAxMjUsCisgICAgMHhFMDEyNiwKKyAgICAweEUwMTI3LAorICAgIDB4RTAxMjgsCisgICAgMHhFMDEyOSwKKyAgICAweEUwMTJBLAorICAgIDB4RTAxMkIsCisgICAgMHhFMDEyQywKKyAgICAweEUwMTJELAorICAgIDB4RTAxMkUsCisgICAgMHhFMDEyRiwKKyAgICAweEUwMTMwLAorICAgIDB4RTAxMzEsCisgICAgMHhFMDEzMiwKKyAgICAweEUwMTMzLAorICAgIDB4RTAxMzQsCisgICAgMHhFMDEzNSwKKyAgICAweEUwMTM2LAorICAgIDB4RTAxMzcsCisgICAgMHhFMDEzOCwKKyAgICAweEUwMTM5LAorICAgIDB4RTAxM0EsCisgICAgMHhFMDEzQiwKKyAgICAweEUwMTNDLAorICAgIDB4RTAxM0QsCisgICAgMHhFMDEzRSwKKyAgICAweEUwMTNGLAorICAgIDB4RTAxNDAsCisgICAgMHhFMDE0MSwKKyAgICAweEUwMTQyLAorICAgIDB4RTAxNDMsCisgICAgMHhFMDE0NCwKKyAgICAweEUwMTQ1LAorICAgIDB4RTAxNDYsCisgICAgMHhFMDE0NywKKyAgICAweEUwMTQ4LAorICAgIDB4RTAxNDksCisgICAgMHhFMDE0QSwKKyAgICAweEUwMTRCLAorICAgIDB4RTAxNEMsCisgICAgMHhFMDE0RCwKKyAgICAweEUwMTRFLAorICAgIDB4RTAxNEYsCisgICAgMHhFMDE1MCwKKyAgICAweEUwMTUxLAorICAgIDB4RTAxNTIsCisgICAgMHhFMDE1MywKKyAgICAweEUwMTU0LAorICAgIDB4RTAxNTUsCisgICAgMHhFMDE1NiwKKyAgICAweEUwMTU3LAorICAgIDB4RTAxNTgsCisgICAgMHhFMDE1OSwKKyAgICAweEUwMTVBLAorICAgIDB4RTAxNUIsCisgICAgMHhFMDE1QywKKyAgICAweEUwMTVELAorICAgIDB4RTAxNUUsCisgICAgMHhFMDE1RiwKKyAgICAweEUwMTYwLAorICAgIDB4RTAxNjEsCisgICAgMHhFMDE2MiwKKyAgICAweEUwMTYzLAorICAgIDB4RTAxNjQsCisgICAgMHhFMDE2NSwKKyAgICAweEUwMTY2LAorICAgIDB4RTAxNjcsCisgICAgMHhFMDE2OCwKKyAgICAweEUwMTY5LAorICAgIDB4RTAxNkEsCisgICAgMHhFMDE2QiwKKyAgICAweEUwMTZDLAorICAgIDB4RTAxNkQsCisgICAgMHhFMDE2RSwKKyAgICAweEUwMTZGLAorICAgIDB4RTAxNzAsCisgICAgMHhFMDE3MSwKKyAgICAweEUwMTcyLAorICAgIDB4RTAxNzMsCisgICAgMHhFMDE3NCwKKyAgICAweEUwMTc1LAorICAgIDB4RTAxNzYsCisgICAgMHhFMDE3NywKKyAgICAweEUwMTc4LAorICAgIDB4RTAxNzksCisgICAgMHhFMDE3QSwKKyAgICAweEUwMTdCLAorICAgIDB4RTAxN0MsCisgICAgMHhFMDE3RCwKKyAgICAweEUwMTdFLAorICAgIDB4RTAxN0YsCisgICAgMHhFMDE4MCwKKyAgICAweEUwMTgxLAorICAgIDB4RTAxODIsCisgICAgMHhFMDE4MywKKyAgICAweEUwMTg0LAorICAgIDB4RTAxODUsCisgICAgMHhFMDE4NiwKKyAgICAweEUwMTg3LAorICAgIDB4RTAxODgsCisgICAgMHhFMDE4OSwKKyAgICAweEUwMThBLAorICAgIDB4RTAxOEIsCisgICAgMHhFMDE4QywKKyAgICAweEUwMThELAorICAgIDB4RTAxOEUsCisgICAgMHhFMDE4RiwKKyAgICAweEUwMTkwLAorICAgIDB4RTAxOTEsCisgICAgMHhFMDE5MiwKKyAgICAweEUwMTkzLAorICAgIDB4RTAxOTQsCisgICAgMHhFMDE5NSwKKyAgICAweEUwMTk2LAorICAgIDB4RTAxOTcsCisgICAgMHhFMDE5OCwKKyAgICAweEUwMTk5LAorICAgIDB4RTAxOUEsCisgICAgMHhFMDE5QiwKKyAgICAweEUwMTlDLAorICAgIDB4RTAxOUQsCisgICAgMHhFMDE5RSwKKyAgICAweEUwMTlGLAorICAgIDB4RTAxQTAsCisgICAgMHhFMDFBMSwKKyAgICAweEUwMUEyLAorICAgIDB4RTAxQTMsCisgICAgMHhFMDFBNCwKKyAgICAweEUwMUE1LAorICAgIDB4RTAxQTYsCisgICAgMHhFMDFBNywKKyAgICAweEUwMUE4LAorICAgIDB4RTAxQTksCisgICAgMHhFMDFBQSwKKyAgICAweEUwMUFCLAorICAgIDB4RTAxQUMsCisgICAgMHhFMDFBRCwKKyAgICAweEUwMUFFLAorICAgIDB4RTAxQUYsCisgICAgMHhFMDFCMCwKKyAgICAweEUwMUIxLAorICAgIDB4RTAxQjIsCisgICAgMHhFMDFCMywKKyAgICAweEUwMUI0LAorICAgIDB4RTAxQjUsCisgICAgMHhFMDFCNiwKKyAgICAweEUwMUI3LAorICAgIDB4RTAxQjgsCisgICAgMHhFMDFCOSwKKyAgICAweEUwMUJBLAorICAgIDB4RTAxQkIsCisgICAgMHhFMDFCQywKKyAgICAweEUwMUJELAorICAgIDB4RTAxQkUsCisgICAgMHhFMDFCRiwKKyAgICAweEUwMUMwLAorICAgIDB4RTAxQzEsCisgICAgMHhFMDFDMiwKKyAgICAweEUwMUMzLAorICAgIDB4RTAxQzQsCisgICAgMHhFMDFDNSwKKyAgICAweEUwMUM2LAorICAgIDB4RTAxQzcsCisgICAgMHhFMDFDOCwKKyAgICAweEUwMUM5LAorICAgIDB4RTAxQ0EsCisgICAgMHhFMDFDQiwKKyAgICAweEUwMUNDLAorICAgIDB4RTAxQ0QsCisgICAgMHhFMDFDRSwKKyAgICAweEUwMUNGLAorICAgIDB4RTAxRDAsCisgICAgMHhFMDFEMSwKKyAgICAweEUwMUQyLAorICAgIDB4RTAxRDMsCisgICAgMHhFMDFENCwKKyAgICAweEUwMUQ1LAorICAgIDB4RTAxRDYsCisgICAgMHhFMDFENywKKyAgICAweEUwMUQ4LAorICAgIDB4RTAxRDksCisgICAgMHhFMDFEQSwKKyAgICAweEUwMURCLAorICAgIDB4RTAxREMsCisgICAgMHhFMDFERCwKKyAgICAweEUwMURFLAorICAgIDB4RTAxREYsCisgICAgMHhFMDFFMCwKKyAgICAweEUwMUUxLAorICAgIDB4RTAxRTIsCisgICAgMHhFMDFFMywKKyAgICAweEUwMUU0LAorICAgIDB4RTAxRTUsCisgICAgMHhFMDFFNiwKKyAgICAweEUwMUU3LAorICAgIDB4RTAxRTgsCisgICAgMHhFMDFFOSwKKyAgICAweEUwMUVBLAorICAgIDB4RTAxRUIsCisgICAgMHhFMDFFQywKKyAgICAweEUwMUVELAorICAgIDB4RTAxRUUsCisgICAgMHhFMDFFRiwKK307CisKK3R5cGVkZWYgc3RydWN0IE5hbWVkU2VxdWVuY2UgeworICAgIGludCBzZXFsZW47CisgICAgUHlfVUNTMiBzZXFbNF07Cit9IG5hbWVkX3NlcXVlbmNlOworCitzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IG5hbWVkX3NlcXVlbmNlc19zdGFydCA9IDB4ZjAyMDA7CitzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IG5hbWVkX3NlcXVlbmNlc19lbmQgPSAweGYwM2E1Oworc3RhdGljIGNvbnN0IG5hbWVkX3NlcXVlbmNlIG5hbWVkX3NlcXVlbmNlc1tdID0geworICAgIHsyLCB7MHgwMTAwLCAweDAzMDB9fSwKKyAgICB7MiwgezB4MDEwMSwgMHgwMzAwfX0sCisgICAgezIsIHsweDAwNDUsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMDY1LCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDBDOCwgMHgwMzI5fX0sCisgICAgezIsIHsweDAwRTgsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMEM5LCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDBFOSwgMHgwMzI5fX0sCisgICAgezIsIHsweDAwQ0EsIDB4MDMwNH19LAorICAgIHsyLCB7MHgwMEVBLCAweDAzMDR9fSwKKyAgICB7MiwgezB4MDBDQSwgMHgwMzBDfX0sCisgICAgezIsIHsweDAwRUEsIDB4MDMwQ319LAorICAgIHsyLCB7MHgwMTJBLCAweDAzMDB9fSwKKyAgICB7MiwgezB4MDEyQiwgMHgwMzAwfX0sCisgICAgezMsIHsweDAwNjksIDB4MDMwNywgMHgwMzAxfX0sCisgICAgezMsIHsweDAwNkUsIDB4MDM2MCwgMHgwMDY3fX0sCisgICAgezIsIHsweDAwNEYsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMDZGLCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDBEMiwgMHgwMzI5fX0sCisgICAgezIsIHsweDAwRjIsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMEQzLCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDBGMywgMHgwMzI5fX0sCisgICAgezIsIHsweDAwNTMsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMDczLCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDE2QSwgMHgwMzAwfX0sCisgICAgezIsIHsweDAxNkIsIDB4MDMwMH19LAorICAgIHsyLCB7MHgwMTA0LCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDEwNSwgMHgwMzAxfX0sCisgICAgezIsIHsweDAxMDQsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMTA1LCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDExOCwgMHgwMzAxfX0sCisgICAgezIsIHsweDAxMTksIDB4MDMwMX19LAorICAgIHsyLCB7MHgwMTE4LCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDExOSwgMHgwMzAzfX0sCisgICAgezIsIHsweDAxMTYsIDB4MDMwMX19LAorICAgIHsyLCB7MHgwMTE3LCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDExNiwgMHgwMzAzfX0sCisgICAgezIsIHsweDAxMTcsIDB4MDMwM319LAorICAgIHszLCB7MHgwMDY5LCAweDAzMDcsIDB4MDMwMH19LAorICAgIHszLCB7MHgwMDY5LCAweDAzMDcsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMTJFLCAweDAzMDF9fSwKKyAgICB7MywgezB4MDEyRiwgMHgwMzA3LCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDEyRSwgMHgwMzAzfX0sCisgICAgezMsIHsweDAxMkYsIDB4MDMwNywgMHgwMzAzfX0sCisgICAgezIsIHsweDAwNEEsIDB4MDMwM319LAorICAgIHszLCB7MHgwMDZBLCAweDAzMDcsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMDRDLCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDA2QywgMHgwMzAzfX0sCisgICAgezIsIHsweDAwNEQsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMDZELCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDA1MiwgMHgwMzAzfX0sCisgICAgezIsIHsweDAwNzIsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMTcyLCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDE3MywgMHgwMzAxfX0sCisgICAgezIsIHsweDAxNzIsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMTczLCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDE2QSwgMHgwMzAxfX0sCisgICAgezIsIHsweDAxNkIsIDB4MDMwMX19LAorICAgIHsyLCB7MHgwMTZBLCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDE2QiwgMHgwMzAzfX0sCisgICAgezIsIHsweDAwRTYsIDB4MDMwMH19LAorICAgIHsyLCB7MHgwMjU0LCAweDAzMDB9fSwKKyAgICB7MiwgezB4MDI1NCwgMHgwMzAxfX0sCisgICAgezIsIHsweDAyOEMsIDB4MDMwMH19LAorICAgIHsyLCB7MHgwMjhDLCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDI1OSwgMHgwMzAwfX0sCisgICAgezIsIHsweDAyNTksIDB4MDMwMX19LAorICAgIHsyLCB7MHgwMjVBLCAweDAzMDB9fSwKKyAgICB7MiwgezB4MDI1QSwgMHgwMzAxfX0sCisgICAgezMsIHsweDA5OTUsIDB4MDlDRCwgMHgwOUI3fX0sCisgICAgezIsIHsweDBCOTUsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCOUUsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQTQsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQUUsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQjIsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQjMsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCOUMsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQjgsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQ0R9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQjk1LCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEI5NSwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCOTUsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQjk1LCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEI5NSwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCOTUsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQjk1LCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEI5NSwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCOTUsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQjk1LCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEI5NSwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCOTksIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEI5OSwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCOTksIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEI5OSwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCOTksIDB4MEJDN319LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEI5OSwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCOTksIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCOUEsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQjlBLCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCOUEsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQjlBLCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCOUEsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQjlBLCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCOUEsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQjlFLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEI5RSwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCOUUsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQjlFLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEI5RSwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCOUUsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQjlFLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEI5RSwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCOUUsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQjlFLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEI5RSwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCOUYsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEI5RiwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCOUYsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEI5RiwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCOUYsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEI5RiwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCOUYsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQTMsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkEzLCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQTMsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkEzLCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQTMsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkEzLCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQTMsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkE0LCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJBNCwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQTQsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkE0LCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJBNCwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQTQsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkE0LCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJBNCwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQTQsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkE0LCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJBNCwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQTgsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJBOCwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQTgsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJBOCwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQTgsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJBOCwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQTgsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQUEsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkFBLCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQUEsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkFBLCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQUEsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkFBLCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQUEsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkFFLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJBRSwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQUUsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkFFLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJBRSwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQUUsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkFFLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJBRSwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQUUsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkFFLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJBRSwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQUYsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJBRiwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQUYsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJBRiwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQUYsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJBRiwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQUYsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQjAsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkIwLCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQjAsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkIwLCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQjAsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkIwLCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQjAsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkIyLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJCMiwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQjIsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkIyLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJCMiwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQjIsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkIyLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJCMiwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQjIsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkIyLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJCMiwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQjUsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJCNSwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQjUsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJCNSwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQjUsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJCNSwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQjUsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQjQsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkI0LCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQjQsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkI0LCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQjQsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkI0LCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQjQsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkIzLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJCMywgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQjMsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkIzLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJCMywgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQjMsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkIzLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJCMywgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQjMsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkIzLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJCMywgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQjEsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJCMSwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQjEsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJCMSwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQjEsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJCMSwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQjEsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQTksIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkE5LCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQTksIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkE5LCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQTksIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkE5LCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQTksIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQjlDLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEI5QywgMHgwQkJGfX0sCisgICAgezIsIHsweDBCOUMsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQjlDLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEI5QywgMHgwQkMyfX0sCisgICAgezIsIHsweDBCOUMsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQjlDLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEI5QywgMHgwQkM4fX0sCisgICAgezIsIHsweDBCOUMsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQjlDLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEI5QywgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQjYsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJCNiwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQjYsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJCNiwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQjYsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJCNiwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQjYsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQjcsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkI3LCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQjcsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkI3LCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQjcsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkI3LCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQjcsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkI4LCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJCOCwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQjgsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkI4LCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJCOCwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQjgsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkI4LCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJCOCwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQjgsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkI4LCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJCOCwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQjksIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJCOSwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQjksIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJCOSwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQjksIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJCOSwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQjksIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQ0N9fSwKKyAgICB7MywgezB4MEI5NSwgMHgwQkNELCAweDBCQjd9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJCRX19LAorICAgIHs0LCB7MHgwQjk1LCAweDBCQ0QsIDB4MEJCNywgMHgwQkJGfX0sCisgICAgezQsIHsweDBCOTUsIDB4MEJDRCwgMHgwQkI3LCAweDBCQzB9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJDMX19LAorICAgIHs0LCB7MHgwQjk1LCAweDBCQ0QsIDB4MEJCNywgMHgwQkMyfX0sCisgICAgezQsIHsweDBCOTUsIDB4MEJDRCwgMHgwQkI3LCAweDBCQzZ9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJDN319LAorICAgIHs0LCB7MHgwQjk1LCAweDBCQ0QsIDB4MEJCNywgMHgwQkM4fX0sCisgICAgezQsIHsweDBCOTUsIDB4MEJDRCwgMHgwQkI3LCAweDBCQ0F9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJDQn19LAorICAgIHs0LCB7MHgwQjk1LCAweDBCQ0QsIDB4MEJCNywgMHgwQkNDfX0sCisgICAgezQsIHsweDBCQjYsIDB4MEJDRCwgMHgwQkIwLCAweDBCQzB9fSwKKyAgICB7MywgezB4MERDQSwgMHgyMDBELCAweDBEQkF9fSwKKyAgICB7MywgezB4MERDQSwgMHgyMDBELCAweDBEQkJ9fSwKKyAgICB7MywgezB4MERCQiwgMHgwRENBLCAweDIwMER9fSwKKyAgICB7MiwgezB4MTBFMywgMHgwMzAyfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4MH19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3ODF9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzgyfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4M319LAorICAgIHsyLCB7MHgxN0QyLCAweDE3ODR9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzg1fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4Nn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3ODd9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzg4fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4OX19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OEF9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzhCfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4Q319LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OER9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzhFfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4Rn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OTB9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzkxfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5Mn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OTN9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzk0fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5NX19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OTZ9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzk3fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5OH19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OTl9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzlBfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5Qn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OUN9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzlEfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5RX19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OUZ9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxN0EwfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTdBMX19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3QTJ9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxN0E3fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTdBQn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3QUN9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxN0FGfX0sCisgICAgezIsIHsweDE3QkIsIDB4MTdDNn19LAorICAgIHsyLCB7MHgxN0I2LCAweDE3QzZ9fSwKKyAgICB7MiwgezB4MzA0QiwgMHgzMDlBfX0sCisgICAgezIsIHsweDMwNEQsIDB4MzA5QX19LAorICAgIHsyLCB7MHgzMDRGLCAweDMwOUF9fSwKKyAgICB7MiwgezB4MzA1MSwgMHgzMDlBfX0sCisgICAgezIsIHsweDMwNTMsIDB4MzA5QX19LAorICAgIHsyLCB7MHgzMEFCLCAweDMwOUF9fSwKKyAgICB7MiwgezB4MzBBRCwgMHgzMDlBfX0sCisgICAgezIsIHsweDMwQUYsIDB4MzA5QX19LAorICAgIHsyLCB7MHgzMEIxLCAweDMwOUF9fSwKKyAgICB7MiwgezB4MzBCMywgMHgzMDlBfX0sCisgICAgezIsIHsweDMwQkIsIDB4MzA5QX19LAorICAgIHsyLCB7MHgzMEM0LCAweDMwOUF9fSwKKyAgICB7MiwgezB4MzBDOCwgMHgzMDlBfX0sCisgICAgezIsIHsweDMxRjcsIDB4MzA5QX19LAorICAgIHsyLCB7MHgwMkU1LCAweDAyRTl9fSwKKyAgICB7MiwgezB4MDJFOSwgMHgwMkU1fX0sCit9OwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy94eGxpbWl0ZWQuYyBiL01vZHVsZXMveHhsaW1pdGVkLmMKaW5kZXggZWM5MjRmMi4uNjYxYjZlMiAxMDA2NDQKLS0tIGEvTW9kdWxlcy94eGxpbWl0ZWQuYworKysgYi9Nb2R1bGVzL3h4bGltaXRlZC5jCkBAIC0xODcsOCArMTg3LDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBudWxsX3JpY2hjb21wYXJlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqb3RoZXIsIGludCBvcCkKIHsKLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIHN0YXRpYyBQeVR5cGVfU2xvdCBOdWxsX1R5cGVfc2xvdHNbXSA9IHsKZGlmZiAtLWdpdCBhL01vZHVsZXMvemlwaW1wb3J0LmMgYi9Nb2R1bGVzL3ppcGltcG9ydC5jCmluZGV4IGQ4YzNkOGEuLmY4MjJmOTIgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvemlwaW1wb3J0LmMKKysrIGIvTW9kdWxlcy96aXBpbXBvcnQuYwpAQCAtNDksNyArNDksNyBAQAogLyogZm9yd2FyZCBkZWNscyAqLwogc3RhdGljIFB5T2JqZWN0ICpyZWFkX2RpcmVjdG9yeShQeU9iamVjdCAqYXJjaGl2ZSk7CiBzdGF0aWMgUHlPYmplY3QgKmdldF9kYXRhKFB5T2JqZWN0ICphcmNoaXZlLCBQeU9iamVjdCAqdG9jX2VudHJ5KTsKLXN0YXRpYyBQeU9iamVjdCAqZ2V0X21vZHVsZV9jb2RlKFppcEltcG9ydGVyICpzZWxmLCBjaGFyICpmdWxsbmFtZSwKK3N0YXRpYyBQeU9iamVjdCAqZ2V0X21vZHVsZV9jb2RlKFppcEltcG9ydGVyICpzZWxmLCBQeU9iamVjdCAqZnVsbG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBfaXNwYWNrYWdlLCBQeU9iamVjdCAqKnBfbW9kcGF0aCk7CiAKIApAQCAtNjMsMTA5ICs2MywxMDkgQEAKIHN0YXRpYyBpbnQKIHppcGltcG9ydGVyX2luaXQoWmlwSW1wb3J0ZXIgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKLSAgICBQeU9iamVjdCAqcGF0aG9iaiwgKmZpbGVzOwotICAgIFB5X1VOSUNPREUgKnBhdGgsICpwLCAqcHJlZml4LCBidWZbTUFYUEFUSExFTisyXTsKLSAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBQeU9iamVjdCAqcGF0aCwgKmZpbGVzLCAqdG1wOworICAgIFB5T2JqZWN0ICpmaWxlbmFtZSA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBsZW4sIGZsZW47CisjaWZkZWYgQUxUU0VQCisgICAgX1B5X0lERU5USUZJRVIocmVwbGFjZSk7CisjZW5kaWYKIAogICAgIGlmICghX1B5QXJnX05vS2V5d29yZHMoInppcGltcG9ydGVyKCkiLCBrd2RzKSkKICAgICAgICAgcmV0dXJuIC0xOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJjp6aXBpbXBvcnRlciIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0RlY29kZXIsICZwYXRob2JqKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTRGVjb2RlciwgJnBhdGgpKQogICAgICAgICByZXR1cm4gLTE7CiAKLSAgICAvKiBjb3B5IHBhdGggdG8gYnVmICovCi0gICAgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHBhdGhvYmopOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocGF0aCkgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHBhdGgpOwogICAgIGlmIChsZW4gPT0gMCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoWmlwSW1wb3J0RXJyb3IsICJhcmNoaXZlIHBhdGggaXMgZW1wdHkiKTsKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9Ci0gICAgaWYgKGxlbiA+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+enN0LCBlcnIsICJ3aGlsZSBmaW5pc2hpbmcgZGVjb21wcmVzc2lvbiIpOwogICAgICAgICAgICAgUHlfREVDUkVGKHJldHZhbCk7CiAgICAgICAgICAgICByZXR2YWwgPSBOVUxMOwogICAgICAgICAgICAgZ290byBlcnJvcjsKQEAgLTk0Miw2ICs5NDYsNyBAQAogc3RhdGljIFB5TWVtYmVyRGVmIERlY29tcF9tZW1iZXJzW10gPSB7CiAgICAgeyJ1bnVzZWRfZGF0YSIsICAgICBUX09CSkVDVCwgQ09NUF9PRkYodW51c2VkX2RhdGEpLCBSRUFET05MWX0sCiAgICAgeyJ1bmNvbnN1bWVkX3RhaWwiLCBUX09CSkVDVCwgQ09NUF9PRkYodW5jb25zdW1lZF90YWlsKSwgUkVBRE9OTFl9LAorICAgIHsiZW9mIiwgICAgICAgICAgICAgVF9CT09MLCAgIENPTVBfT0ZGKGVvZiksIFJFQURPTkxZfSwKICAgICB7TlVMTH0sCiB9OwogCkBAIC0xMTY0LDYgKzExNjksMTAgQEAKICAgICBpZiAodmVyICE9IE5VTEwpCiAgICAgICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiWkxJQl9WRVJTSU9OIiwgdmVyKTsKIAorICAgIHZlciA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKHpsaWJWZXJzaW9uKCkpOworICAgIGlmICh2ZXIgIT0gTlVMTCkKKyAgICAgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJaTElCX1JVTlRJTUVfVkVSU0lPTiIsIHZlcik7CisKICAgICBQeU1vZHVsZV9BZGRTdHJpbmdDb25zdGFudChtLCAiX192ZXJzaW9uX18iLCAiMS4wIik7CiAKICAgICByZXR1cm4gbTsKZGlmZiAtLWdpdCBhL09iamVjdHMvYWJzdHJhY3QuYyBiL09iamVjdHMvYWJzdHJhY3QuYwppbmRleCAyZjg4N2FhLi4zOWRmZmFjIDEwMDY0NAotLS0gYS9PYmplY3RzL2Fic3RyYWN0LmMKKysrIGIvT2JqZWN0cy9hYnN0cmFjdC5jCkBAIC03NCw3ICs3NCw3IEBACiBQeV9zc2l6ZV90CiBfUHlPYmplY3RfTGVuZ3RoSGludChQeU9iamVjdCAqbywgUHlfc3NpemVfdCBkZWZhdWx0dmFsdWUpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpoaW50c3Ryb2JqID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2xlbmd0aF9oaW50X18pOwogICAgIFB5T2JqZWN0ICpybywgKmhpbnRtZXRoOwogICAgIFB5X3NzaXplX3QgcnY7CiAKQEAgLTg5LDcgKzg5LDcgQEAKICAgICB9CiAKICAgICAvKiB0cnkgby5fX2xlbmd0aF9oaW50X18oKSAqLwotICAgIGhpbnRtZXRoID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobywgIl9fbGVuZ3RoX2hpbnRfXyIsICZoaW50c3Ryb2JqKTsKKyAgICBoaW50bWV0aCA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKG8sICZQeUlkX19fbGVuZ3RoX2hpbnRfXyk7CiAgICAgaWYgKGhpbnRtZXRoID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC0yMzcsNyArMjM3LDggQEAKICAgICBwYiA9IG9iai0+b2JfdHlwZS0+dHBfYXNfYnVmZmVyOwogICAgIGlmIChwYiA9PSBOVUxMIHx8IHBiLT5iZl9nZXRidWZmZXIgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgImV4cGVjdGVkIGFuIG9iamVjdCB3aXRoIHRoZSBidWZmZXIgaW50ZXJmYWNlIik7CisgICAgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0ZWQgYnl0ZXMsIGJ5dGVhcnJheSAiCisgICAgICAgICAgICAgICAgICAgICAgICAib3IgYnVmZmVyIGNvbXBhdGlibGUgb2JqZWN0Iik7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgaWYgKCgqcGItPmJmX2dldGJ1ZmZlcikob2JqLCAmdmlldywgUHlCVUZfU0lNUExFKSkgcmV0dXJuIC0xOwpAQCAtMzMxLDcgKzMzMiw3IEBACiB7CiAgICAgaWYgKCFQeU9iamVjdF9DaGVja0J1ZmZlcihvYmopKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiJyUxMDBzJyBkb2VzIG5vdCBzdXBwb3J0IHRoZSBidWZmZXIgaW50ZXJmYWNlIiwKKyAgICAgICAgICAgICAgICAgICAgICInJS4xMDBzJyBkb2VzIG5vdCBzdXBwb3J0IHRoZSBidWZmZXIgaW50ZXJmYWNlIiwKICAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUob2JqKS0+dHBfbmFtZSk7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CkBAIC0zMzksNyArMzQwLDcgQEAKIH0KIAogc3RhdGljIGludAotX0lzRm9ydHJhbkNvbnRpZ3VvdXMoUHlfYnVmZmVyICp2aWV3KQorX0lzRm9ydHJhbkNvbnRpZ3VvdXMoY29uc3QgUHlfYnVmZmVyICp2aWV3KQogewogICAgIFB5X3NzaXplX3Qgc2QsIGRpbTsKICAgICBpbnQgaTsKQEAgLTM2MCw3ICszNjEsNyBAQAogfQogCiBzdGF0aWMgaW50Ci1fSXNDQ29udGlndW91cyhQeV9idWZmZXIgKnZpZXcpCitfSXNDQ29udGlndW91cyhjb25zdCBQeV9idWZmZXIgKnZpZXcpCiB7CiAgICAgUHlfc3NpemVfdCBzZCwgZGltOwogICAgIGludCBpOwpAQCAtMzgxLDE2ICszODIsMTYgQEAKIH0KIAogaW50Ci1QeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoUHlfYnVmZmVyICp2aWV3LCBjaGFyIGZvcnQpCitQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXMoY29uc3QgUHlfYnVmZmVyICp2aWV3LCBjaGFyIG9yZGVyKQogewogCiAgICAgaWYgKHZpZXctPnN1Ym9mZnNldHMgIT0gTlVMTCkgcmV0dXJuIDA7CiAKLSAgICBpZiAoZm9ydCA9PSAnQycpCisgICAgaWYgKG9yZGVyID09ICdDJykKICAgICAgICAgcmV0dXJuIF9Jc0NDb250aWd1b3VzKHZpZXcpOwotICAgIGVsc2UgaWYgKGZvcnQgPT0gJ0YnKQorICAgIGVsc2UgaWYgKG9yZGVyID09ICdGJykKICAgICAgICAgcmV0dXJuIF9Jc0ZvcnRyYW5Db250aWd1b3VzKHZpZXcpOwotICAgIGVsc2UgaWYgKGZvcnQgPT0gJ0EnKQorICAgIGVsc2UgaWYgKG9yZGVyID09ICdBJykKICAgICAgICAgcmV0dXJuIChfSXNDQ29udGlndW91cyh2aWV3KSB8fCBfSXNGb3J0cmFuQ29udGlndW91cyh2aWV3KSk7CiAgICAgcmV0dXJuIDA7CiB9CkBAIC02NDgsOSArNjQ5LDkgQEAKIAogaW50CiBQeUJ1ZmZlcl9GaWxsSW5mbyhQeV9idWZmZXIgKnZpZXcsIFB5T2JqZWN0ICpvYmosIHZvaWQgKmJ1ZiwgUHlfc3NpemVfdCBsZW4sCi0gICAgICAgICAgICAgIGludCByZWFkb25seSwgaW50IGZsYWdzKQorICAgICAgICAgICAgICAgICAgaW50IHJlYWRvbmx5LCBpbnQgZmxhZ3MpCiB7Ci0gICAgaWYgKHZpZXcgPT0gTlVMTCkgcmV0dXJuIDA7CisgICAgaWYgKHZpZXcgPT0gTlVMTCkgcmV0dXJuIDA7IC8qIFhYWCB3aHkgbm90IC0xPyAqLwogICAgIGlmICgoKGZsYWdzICYgUHlCVUZfV1JJVEFCTEUpID09IFB5QlVGX1dSSVRBQkxFKSAmJgogICAgICAgICAocmVhZG9ubHkgPT0gMSkpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0J1ZmZlckVycm9yLApAQCAtNjk2LDE2ICs2OTcsMTYgQEAKICAgICBQeU9iamVjdCAqbWV0aDsKICAgICBQeU9iamVjdCAqZW1wdHkgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotICAgIHN0YXRpYyBQeU9iamVjdCAqZm9ybWF0X2NhY2hlID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2Zvcm1hdF9fKTsKIAogICAgIC8qIElmIG5vIGZvcm1hdF9zcGVjIGlzIHByb3ZpZGVkLCB1c2UgYW4gZW1wdHkgc3RyaW5nICovCiAgICAgaWYgKGZvcm1hdF9zcGVjID09IE5VTEwpIHsKLSAgICAgICAgZW1wdHkgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgMCk7CisgICAgICAgIGVtcHR5ID0gUHlVbmljb2RlX05ldygwLCAwKTsKICAgICAgICAgZm9ybWF0X3NwZWMgPSBlbXB0eTsKICAgICB9CiAKICAgICAvKiBGaW5kIHRoZSAodW5ib3VuZCEpIF9fZm9ybWF0X18gbWV0aG9kIChhIGJvcnJvd2VkIHJlZmVyZW5jZSkgKi8KLSAgICBtZXRoID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwob2JqLCAiX19mb3JtYXRfXyIsICZmb3JtYXRfY2FjaGUpOworICAgIG1ldGggPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChvYmosICZQeUlkX19fZm9ybWF0X18pOwogICAgIGlmIChtZXRoID09IE5VTEwpIHsKICAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKQEAgLTc5Miw4ICs3OTMsNyBAQAogICAgICAgICAgICAgcmV0dXJuIHg7CiAgICAgICAgIFB5X0RFQ1JFRih4KTsgLyogY2FuJ3QgZG8gaXQgKi8KICAgICB9Ci0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMTM3OSw5ICsxMzc5LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19HRVRfU0laRShvKSk7CiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhvKSkKICAgICAgICAgLyogVGhlIGFib3ZlIGNoZWNrIGlzIGRvbmUgaW4gUHlMb25nX0Zyb21Vbmljb2RlKCkuICovCi0gICAgICAgIHJldHVybiBQeUxvbmdfRnJvbVVuaWNvZGUoUHlVbmljb2RlX0FTX1VOSUNPREUobyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKG8pLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwKTsKKyAgICAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tVW5pY29kZU9iamVjdChvLCAxMCk7CiAgICAgaWYgKCFQeU9iamVjdF9Bc0NoYXJCdWZmZXIobywgJmJ1ZmZlciwgJmJ1ZmZlcl9sZW4pKQogICAgICAgICByZXR1cm4gbG9uZ19mcm9tX3N0cmluZyhidWZmZXIsIGJ1ZmZlcl9sZW4pOwogCkBAIC0xOTg2LDcgKzE5ODQsNyBAQAogaW50CiBQeU1hcHBpbmdfQ2hlY2soUHlPYmplY3QgKm8pCiB7Ci0gICAgcmV0dXJuICAgICAgbyAmJiBvLT5vYl90eXBlLT50cF9hc19tYXBwaW5nICYmCisgICAgcmV0dXJuIG8gJiYgby0+b2JfdHlwZS0+dHBfYXNfbWFwcGluZyAmJgogICAgICAgICBvLT5vYl90eXBlLT50cF9hc19tYXBwaW5nLT5tcF9zdWJzY3JpcHQ7CiB9CiAKQEAgLTIwODQsMTAgKzIwODIsMTEgQEAKIHsKICAgICBQeU9iamVjdCAqa2V5czsKICAgICBQeU9iamVjdCAqZmFzdDsKKyAgICBfUHlfSURFTlRJRklFUihrZXlzKTsKIAogICAgIGlmIChQeURpY3RfQ2hlY2tFeGFjdChvKSkKICAgICAgICAgcmV0dXJuIFB5RGljdF9LZXlzKG8pOwotICAgIGtleXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKG8sICJrZXlzIiwgTlVMTCk7CisgICAga2V5cyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQobywgJlB5SWRfa2V5cywgTlVMTCk7CiAgICAgaWYgKGtleXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgZmFzdCA9IFB5U2VxdWVuY2VfRmFzdChrZXlzLCAiby5rZXlzKCkgYXJlIG5vdCBpdGVyYWJsZSIpOwpAQCAtMjEwMCwxMCArMjA5OSwxMSBAQAogewogICAgIFB5T2JqZWN0ICppdGVtczsKICAgICBQeU9iamVjdCAqZmFzdDsKKyAgICBfUHlfSURFTlRJRklFUihpdGVtcyk7CiAKICAgICBpZiAoUHlEaWN0X0NoZWNrRXhhY3QobykpCiAgICAgICAgIHJldHVybiBQeURpY3RfSXRlbXMobyk7Ci0gICAgaXRlbXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKG8sICJpdGVtcyIsIE5VTEwpOworICAgIGl0ZW1zID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChvLCAmUHlJZF9pdGVtcywgTlVMTCk7CiAgICAgaWYgKGl0ZW1zID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGZhc3QgPSBQeVNlcXVlbmNlX0Zhc3QoaXRlbXMsICJvLml0ZW1zKCkgYXJlIG5vdCBpdGVyYWJsZSIpOwpAQCAtMjExNiwxMCArMjExNiwxMSBAQAogewogICAgIFB5T2JqZWN0ICp2YWx1ZXM7CiAgICAgUHlPYmplY3QgKmZhc3Q7CisgICAgX1B5X0lERU5USUZJRVIodmFsdWVzKTsKIAogICAgIGlmIChQeURpY3RfQ2hlY2tFeGFjdChvKSkKICAgICAgICAgcmV0dXJuIFB5RGljdF9WYWx1ZXMobyk7Ci0gICAgdmFsdWVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChvLCAidmFsdWVzIiwgTlVMTCk7CisgICAgdmFsdWVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChvLCAmUHlJZF92YWx1ZXMsIE5VTEwpOwogICAgIGlmICh2YWx1ZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgZmFzdCA9IFB5U2VxdWVuY2VfRmFzdCh2YWx1ZXMsICJvLnZhbHVlcygpIGFyZSBub3QgaXRlcmFibGUiKTsKQEAgLTIyMjUsMjIgKzIyMjYsMTEgQEAKICAgICByZXR1cm4gY2FsbF9mdW5jdGlvbl90YWlsKGNhbGxhYmxlLCBhcmdzKTsKIH0KIAotUHlPYmplY3QgKgotUHlPYmplY3RfQ2FsbE1ldGhvZChQeU9iamVjdCAqbywgY2hhciAqbmFtZSwgY2hhciAqZm9ybWF0LCAuLi4pCitzdGF0aWMgUHlPYmplY3QqCitjYWxsbWV0aG9kKFB5T2JqZWN0KiBmdW5jLCBjaGFyICpmb3JtYXQsIHZhX2xpc3QgdmEsIGludCBpc19zaXplX3QpCiB7Ci0gICAgdmFfbGlzdCB2YTsKLSAgICBQeU9iamVjdCAqYXJnczsKLSAgICBQeU9iamVjdCAqZnVuYyA9IE5VTEw7CiAgICAgUHlPYmplY3QgKnJldHZhbCA9IE5VTEw7Ci0KLSAgICBpZiAobyA9PSBOVUxMIHx8IG5hbWUgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIG51bGxfZXJyb3IoKTsKLQotICAgIGZ1bmMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG8sIG5hbWUpOwotICAgIGlmIChmdW5jID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0F0dHJpYnV0ZUVycm9yLCBuYW1lKTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQorICAgIFB5T2JqZWN0ICphcmdzOwogCiAgICAgaWYgKCFQeUNhbGxhYmxlX0NoZWNrKGZ1bmMpKSB7CiAgICAgICAgIHR5cGVfZXJyb3IoImF0dHJpYnV0ZSBvZiB0eXBlICclLjIwMHMnIGlzIG5vdCBjYWxsYWJsZSIsIGZ1bmMpOwpAQCAtMjI0OCw5ICsyMjM4LDEwIEBACiAgICAgfQogCiAgICAgaWYgKGZvcm1hdCAmJiAqZm9ybWF0KSB7Ci0gICAgICAgIHZhX3N0YXJ0KHZhLCBmb3JtYXQpOwotICAgICAgICBhcmdzID0gUHlfVmFCdWlsZFZhbHVlKGZvcm1hdCwgdmEpOwotICAgICAgICB2YV9lbmQodmEpOworICAgICAgICBpZiAoaXNfc2l6ZV90KQorICAgICAgICAgICAgYXJncyA9IF9QeV9WYUJ1aWxkVmFsdWVfU2l6ZVQoZm9ybWF0LCB2YSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGFyZ3MgPSBQeV9WYUJ1aWxkVmFsdWUoZm9ybWF0LCB2YSk7CiAgICAgfQogICAgIGVsc2UKICAgICAgICAgYXJncyA9IFB5VHVwbGVfTmV3KDApOwpAQCAtMjI2NSw0NCArMjI1Niw4NiBAQAogfQogCiBQeU9iamVjdCAqCitQeU9iamVjdF9DYWxsTWV0aG9kKFB5T2JqZWN0ICpvLCBjaGFyICpuYW1lLCBjaGFyICpmb3JtYXQsIC4uLikKK3sKKyAgICB2YV9saXN0IHZhOworICAgIFB5T2JqZWN0ICpmdW5jID0gTlVMTDsKKyAgICBQeU9iamVjdCAqcmV0dmFsID0gTlVMTDsKKworICAgIGlmIChvID09IE5VTEwgfHwgbmFtZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gbnVsbF9lcnJvcigpOworCisgICAgZnVuYyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcobywgbmFtZSk7CisgICAgaWYgKGZ1bmMgPT0gTlVMTCkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICB2YV9zdGFydCh2YSwgZm9ybWF0KTsKKyAgICByZXR2YWwgPSBjYWxsbWV0aG9kKGZ1bmMsIGZvcm1hdCwgdmEsIDApOworICAgIHZhX2VuZCh2YSk7CisgICAgcmV0dXJuIHJldHZhbDsKK30KKworUHlPYmplY3QgKgorX1B5T2JqZWN0X0NhbGxNZXRob2RJZChQeU9iamVjdCAqbywgX1B5X0lkZW50aWZpZXIgKm5hbWUsIGNoYXIgKmZvcm1hdCwgLi4uKQoreworICAgIHZhX2xpc3QgdmE7CisgICAgUHlPYmplY3QgKmZ1bmMgPSBOVUxMOworICAgIFB5T2JqZWN0ICpyZXR2YWwgPSBOVUxMOworCisgICAgaWYgKG8gPT0gTlVMTCB8fCBuYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiBudWxsX2Vycm9yKCk7CisKKyAgICBmdW5jID0gX1B5T2JqZWN0X0dldEF0dHJJZChvLCBuYW1lKTsKKyAgICBpZiAoZnVuYyA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIHZhX3N0YXJ0KHZhLCBmb3JtYXQpOworICAgIHJldHZhbCA9IGNhbGxtZXRob2QoZnVuYywgZm9ybWF0LCB2YSwgMCk7CisgICAgdmFfZW5kKHZhKTsKKyAgICByZXR1cm4gcmV0dmFsOworfQorCitQeU9iamVjdCAqCiBfUHlPYmplY3RfQ2FsbE1ldGhvZF9TaXplVChQeU9iamVjdCAqbywgY2hhciAqbmFtZSwgY2hhciAqZm9ybWF0LCAuLi4pCiB7CiAgICAgdmFfbGlzdCB2YTsKLSAgICBQeU9iamVjdCAqYXJnczsKICAgICBQeU9iamVjdCAqZnVuYyA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKnJldHZhbCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnJldHZhbDsKIAogICAgIGlmIChvID09IE5VTEwgfHwgbmFtZSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gbnVsbF9lcnJvcigpOwogCiAgICAgZnVuYyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcobywgbmFtZSk7CiAgICAgaWYgKGZ1bmMgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsIG5hbWUpOwogICAgICAgICByZXR1cm4gMDsKICAgICB9Ci0KLSAgICBpZiAoIVB5Q2FsbGFibGVfQ2hlY2soZnVuYykpIHsKLSAgICAgICAgdHlwZV9lcnJvcigiYXR0cmlidXRlIG9mIHR5cGUgJyUuMjAwcycgaXMgbm90IGNhbGxhYmxlIiwgZnVuYyk7Ci0gICAgICAgIGdvdG8gZXhpdDsKLSAgICB9Ci0KLSAgICBpZiAoZm9ybWF0ICYmICpmb3JtYXQpIHsKLSAgICAgICAgdmFfc3RhcnQodmEsIGZvcm1hdCk7Ci0gICAgICAgIGFyZ3MgPSBfUHlfVmFCdWlsZFZhbHVlX1NpemVUKGZvcm1hdCwgdmEpOwotICAgICAgICB2YV9lbmQodmEpOwotICAgIH0KLSAgICBlbHNlCi0gICAgICAgIGFyZ3MgPSBQeVR1cGxlX05ldygwKTsKLQotICAgIHJldHZhbCA9IGNhbGxfZnVuY3Rpb25fdGFpbChmdW5jLCBhcmdzKTsKLQotICBleGl0OgotICAgIC8qIGFyZ3MgZ2V0cyBjb25zdW1lZCBpbiBjYWxsX2Z1bmN0aW9uX3RhaWwgKi8KLSAgICBQeV9YREVDUkVGKGZ1bmMpOwotCisgICAgdmFfc3RhcnQodmEsIGZvcm1hdCk7CisgICAgcmV0dmFsID0gY2FsbG1ldGhvZChmdW5jLCBmb3JtYXQsIHZhLCAxKTsKKyAgICB2YV9lbmQodmEpOwogICAgIHJldHVybiByZXR2YWw7CiB9CiAKK1B5T2JqZWN0ICoKK19QeU9iamVjdF9DYWxsTWV0aG9kSWRfU2l6ZVQoUHlPYmplY3QgKm8sIF9QeV9JZGVudGlmaWVyICpuYW1lLCBjaGFyICpmb3JtYXQsIC4uLikKK3sKKyAgICB2YV9saXN0IHZhOworICAgIFB5T2JqZWN0ICpmdW5jID0gTlVMTDsKKyAgICBQeU9iamVjdCAqcmV0dmFsOworCisgICAgaWYgKG8gPT0gTlVMTCB8fCBuYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiBudWxsX2Vycm9yKCk7CisKKyAgICBmdW5jID0gX1B5T2JqZWN0X0dldEF0dHJJZChvLCBuYW1lKTsKKyAgICBpZiAoZnVuYyA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICB2YV9zdGFydCh2YSwgZm9ybWF0KTsKKyAgICByZXR2YWwgPSBjYWxsbWV0aG9kKGZ1bmMsIGZvcm1hdCwgdmEsIDEpOworICAgIHZhX2VuZCh2YSk7CisgICAgcmV0dXJuIHJldHZhbDsKK30KIAogc3RhdGljIFB5T2JqZWN0ICoKIG9iamFyZ3NfbWt0dXBsZSh2YV9saXN0IHZhKQpAQCAtMjUzOCw3ICsyNTcxLDcgQEAKIGludAogUHlPYmplY3RfSXNJbnN0YW5jZShQeU9iamVjdCAqaW5zdCwgUHlPYmplY3QgKmNscykKIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKm5hbWUgPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKF9faW5zdGFuY2VjaGVja19fKTsKICAgICBQeU9iamVjdCAqY2hlY2tlcjsKIAogICAgIC8qIFF1aWNrIHRlc3QgZm9yIGFuIGV4YWN0IG1hdGNoICovCkBAIC0yNTY0LDcgKzI1OTcsNyBAQAogICAgICAgICByZXR1cm4gcjsKICAgICB9CiAKLSAgICBjaGVja2VyID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoY2xzLCAiX19pbnN0YW5jZWNoZWNrX18iLCAmbmFtZSk7CisgICAgY2hlY2tlciA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKGNscywgJlB5SWRfX19pbnN0YW5jZWNoZWNrX18pOwogICAgIGlmIChjaGVja2VyICE9IE5VTEwpIHsKICAgICAgICAgUHlPYmplY3QgKnJlczsKICAgICAgICAgaW50IG9rID0gLTE7CkBAIC0yNjA3LDcgKzI2NDAsNyBAQAogaW50CiBQeU9iamVjdF9Jc1N1YmNsYXNzKFB5T2JqZWN0ICpkZXJpdmVkLCBQeU9iamVjdCAqY2xzKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqbmFtZSA9IE5VTEw7CisgICAgX1B5X0lERU5USUZJRVIoX19zdWJjbGFzc2NoZWNrX18pOwogICAgIFB5T2JqZWN0ICpjaGVja2VyOwogCiAgICAgaWYgKFB5VHVwbGVfQ2hlY2soY2xzKSkgewpAQCAtMjYyOSw3ICsyNjYyLDcgQEAKICAgICAgICAgcmV0dXJuIHI7CiAgICAgfQogCi0gICAgY2hlY2tlciA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKGNscywgIl9fc3ViY2xhc3NjaGVja19fIiwgJm5hbWUpOworICAgIGNoZWNrZXIgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChjbHMsICZQeUlkX19fc3ViY2xhc3NjaGVja19fKTsKICAgICBpZiAoY2hlY2tlciAhPSBOVUxMKSB7CiAgICAgICAgIFB5T2JqZWN0ICpyZXM7CiAgICAgICAgIGludCBvayA9IC0xOwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9ieXRlYXJyYXlvYmplY3QuYyBiL09iamVjdHMvYnl0ZWFycmF5b2JqZWN0LmMKaW5kZXggNDIwMmZmMi4uMWI4OGYxMiAxMDA2NDQKLS0tIGEvT2JqZWN0cy9ieXRlYXJyYXlvYmplY3QuYworKysgYi9PYmplY3RzL2J5dGVhcnJheW9iamVjdC5jCkBAIC0xMzksNyArMTM5LDcgQEAKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIGFsbG9jID0gc2l6ZSArIDE7Ci0gICAgICAgIG5ldy0+b2JfYnl0ZXMgPSBQeU1lbV9NYWxsb2MoYWxsb2MpOworICAgICAgICBuZXctPm9iX2J5dGVzID0gUHlPYmplY3RfTWFsbG9jKGFsbG9jKTsKICAgICAgICAgaWYgKG5ldy0+b2JfYnl0ZXMgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKG5ldyk7CiAgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKQEAgLTIwOSw3ICsyMDksNyBAQAogICAgICAgICBhbGxvYyA9IHNpemUgKyAxOwogICAgIH0KIAotICAgIHN2YWwgPSBQeU1lbV9SZWFsbG9jKCgoUHlCeXRlQXJyYXlPYmplY3QgKilzZWxmKS0+b2JfYnl0ZXMsIGFsbG9jKTsKKyAgICBzdmFsID0gUHlPYmplY3RfUmVhbGxvYygoKFB5Qnl0ZUFycmF5T2JqZWN0ICopc2VsZiktPm9iX2J5dGVzLCBhbGxvYyk7CiAgICAgaWYgKHN2YWwgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICByZXR1cm4gLTE7CkBAIC04NTAsODcgKzg1MCw4MiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGJ5dGVhcnJheV9yZXByKFB5Qnl0ZUFycmF5T2JqZWN0ICpzZWxmKQogewotICAgIHN0YXRpYyBjb25zdCBjaGFyICpoZXhkaWdpdHMgPSAiMDEyMzQ1Njc4OWFiY2RlZiI7CiAgICAgY29uc3QgY2hhciAqcXVvdGVfcHJlZml4ID0gImJ5dGVhcnJheShiIjsKICAgICBjb25zdCBjaGFyICpxdW90ZV9wb3N0Zml4ID0gIikiOwogICAgIFB5X3NzaXplX3QgbGVuZ3RoID0gUHlfU0laRShzZWxmKTsKLSAgICAvKiAxNCA9PSBzdHJsZW4ocXVvdGVfcHJlZml4KSArIDIgKyBzdHJsZW4ocXVvdGVfcG9zdGZpeCkgKi8KKyAgICAvKiAxNSA9PSBzdHJsZW4ocXVvdGVfcHJlZml4KSArIDIgKyBzdHJsZW4ocXVvdGVfcG9zdGZpeCkgKyAxICovCiAgICAgc2l6ZV90IG5ld3NpemU7CiAgICAgUHlPYmplY3QgKnY7Ci0gICAgaWYgKGxlbmd0aCA+IChQWV9TU0laRV9UX01BWCAtIDE0KSAvIDQpIHsKKyAgICByZWdpc3RlciBQeV9zc2l6ZV90IGk7CisgICAgcmVnaXN0ZXIgY2hhciBjOworICAgIHJlZ2lzdGVyIGNoYXIgKnA7CisgICAgaW50IHF1b3RlOworICAgIGNoYXIgKnRlc3QsICpzdGFydDsKKyAgICBjaGFyICpidWZmZXI7CisKKyAgICBpZiAobGVuZ3RoID4gKFBZX1NTSVpFX1RfTUFYIC0gMTUpIC8gNCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKICAgICAgICAgICAgICJieXRlYXJyYXkgb2JqZWN0IGlzIHRvbyBsYXJnZSB0byBtYWtlIHJlcHIiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIG5ld3NpemUgPSAxNCArIDQgKiBsZW5ndGg7Ci0gICAgdiA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBuZXdzaXplKTsKLSAgICBpZiAodiA9PSBOVUxMKSB7CisKKyAgICBuZXdzaXplID0gMTUgKyBsZW5ndGggKiA0OworICAgIGJ1ZmZlciA9IFB5T2JqZWN0X01hbGxvYyhuZXdzaXplKTsKKyAgICBpZiAoYnVmZmVyID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIGVsc2UgewotICAgICAgICByZWdpc3RlciBQeV9zc2l6ZV90IGk7Ci0gICAgICAgIHJlZ2lzdGVyIFB5X1VOSUNPREUgYzsKLSAgICAgICAgcmVnaXN0ZXIgUHlfVU5JQ09ERSAqcDsKLSAgICAgICAgaW50IHF1b3RlOwogCi0gICAgICAgIC8qIEZpZ3VyZSBvdXQgd2hpY2ggcXVvdGUgdG8gdXNlOyBzaW5nbGUgaXMgcHJlZmVycmVkICovCi0gICAgICAgIHF1b3RlID0gJ1wnJzsKLSAgICAgICAgewotICAgICAgICAgICAgY2hhciAqdGVzdCwgKnN0YXJ0OwotICAgICAgICAgICAgc3RhcnQgPSBQeUJ5dGVBcnJheV9BU19TVFJJTkcoc2VsZik7Ci0gICAgICAgICAgICBmb3IgKHRlc3QgPSBzdGFydDsgdGVzdCA8IHN0YXJ0K2xlbmd0aDsgKyt0ZXN0KSB7Ci0gICAgICAgICAgICAgICAgaWYgKCp0ZXN0ID09ICciJykgewotICAgICAgICAgICAgICAgICAgICBxdW90ZSA9ICdcJyc7IC8qIGJhY2sgdG8gc2luZ2xlICovCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZGVjaWRlZDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAoKnRlc3QgPT0gJ1wnJykKLSAgICAgICAgICAgICAgICAgICAgcXVvdGUgPSAnIic7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgZGVjaWRlZDoKLSAgICAgICAgICAgIDsKKyAgICAvKiBGaWd1cmUgb3V0IHdoaWNoIHF1b3RlIHRvIHVzZTsgc2luZ2xlIGlzIHByZWZlcnJlZCAqLworICAgIHF1b3RlID0gJ1wnJzsKKyAgICBzdGFydCA9IFB5Qnl0ZUFycmF5X0FTX1NUUklORyhzZWxmKTsKKyAgICBmb3IgKHRlc3QgPSBzdGFydDsgdGVzdCA8IHN0YXJ0K2xlbmd0aDsgKyt0ZXN0KSB7CisgICAgICAgIGlmICgqdGVzdCA9PSAnIicpIHsKKyAgICAgICAgICAgIHF1b3RlID0gJ1wnJzsgLyogYmFjayB0byBzaW5nbGUgKi8KKyAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0KLSAgICAgICAgcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHYpOwotICAgICAgICB3aGlsZSAoKnF1b3RlX3ByZWZpeCkKLSAgICAgICAgICAgICpwKysgPSAqcXVvdGVfcHJlZml4Kys7Ci0gICAgICAgICpwKysgPSBxdW90ZTsKLQotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgIC8qIFRoZXJlJ3MgYXQgbGVhc3QgZW5vdWdoIHJvb20gZm9yIGEgaGV4IGVzY2FwZQotICAgICAgICAgICAgICAgYW5kIGEgY2xvc2luZyBxdW90ZS4gKi8KLSAgICAgICAgICAgIGFzc2VydChuZXdzaXplIC0gKHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSkgPj0gNSk7Ci0gICAgICAgICAgICBjID0gc2VsZi0+b2JfYnl0ZXNbaV07Ci0gICAgICAgICAgICBpZiAoYyA9PSAnXCcnIHx8IGMgPT0gJ1xcJykKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9IGM7Ci0gICAgICAgICAgICBlbHNlIGlmIChjID09ICdcdCcpCi0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAndCc7Ci0gICAgICAgICAgICBlbHNlIGlmIChjID09ICdcbicpCi0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAnbic7Ci0gICAgICAgICAgICBlbHNlIGlmIChjID09ICdccicpCi0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAncic7Ci0gICAgICAgICAgICBlbHNlIGlmIChjID09IDApCi0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAneCcsICpwKysgPSAnMCcsICpwKysgPSAnMCc7Ci0gICAgICAgICAgICBlbHNlIGlmIChjIDwgJyAnIHx8IGMgPj0gMHg3ZikgewotICAgICAgICAgICAgICAgICpwKysgPSAnXFwnOwotICAgICAgICAgICAgICAgICpwKysgPSAneCc7Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soYyAmIDB4ZjApID4+IDRdOwotICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbYyAmIDB4Zl07Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgKnArKyA9IGM7Ci0gICAgICAgIH0KLSAgICAgICAgYXNzZXJ0KG5ld3NpemUgLSAocCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA+PSAxKTsKLSAgICAgICAgKnArKyA9IHF1b3RlOwotICAgICAgICB3aGlsZSAoKnF1b3RlX3Bvc3RmaXgpIHsKLSAgICAgICAgICAgKnArKyA9ICpxdW90ZV9wb3N0Zml4Kys7Ci0gICAgICAgIH0KLSAgICAgICAgKnAgPSAnXDAnOwotICAgICAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmdiwgKHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSkpKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYodik7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdjsKKyAgICAgICAgZWxzZSBpZiAoKnRlc3QgPT0gJ1wnJykKKyAgICAgICAgICAgIHF1b3RlID0gJyInOwogICAgIH0KKworICAgIHAgPSBidWZmZXI7CisgICAgd2hpbGUgKCpxdW90ZV9wcmVmaXgpCisgICAgICAgICpwKysgPSAqcXVvdGVfcHJlZml4Kys7CisgICAgKnArKyA9IHF1b3RlOworCisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIC8qIFRoZXJlJ3MgYXQgbGVhc3QgZW5vdWdoIHJvb20gZm9yIGEgaGV4IGVzY2FwZQorICAgICAgICAgICBhbmQgYSBjbG9zaW5nIHF1b3RlLiAqLworICAgICAgICBhc3NlcnQobmV3c2l6ZSAtIChwIC0gYnVmZmVyKSA+PSA1KTsKKyAgICAgICAgYyA9IHNlbGYtPm9iX2J5dGVzW2ldOworICAgICAgICBpZiAoYyA9PSAnXCcnIHx8IGMgPT0gJ1xcJykKKyAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gYzsKKyAgICAgICAgZWxzZSBpZiAoYyA9PSAnXHQnKQorICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAndCc7CisgICAgICAgIGVsc2UgaWYgKGMgPT0gJ1xuJykKKyAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gJ24nOworICAgICAgICBlbHNlIGlmIChjID09ICdccicpCisgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9ICdyJzsKKyAgICAgICAgZWxzZSBpZiAoYyA9PSAwKQorICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAneCcsICpwKysgPSAnMCcsICpwKysgPSAnMCc7CisgICAgICAgIGVsc2UgaWYgKGMgPCAnICcgfHwgYyA+PSAweDdmKSB7CisgICAgICAgICAgICAqcCsrID0gJ1xcJzsKKyAgICAgICAgICAgICpwKysgPSAneCc7CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjICYgMHhmMCkgPj4gNF07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2MgJiAweGZdOworICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICpwKysgPSBjOworICAgIH0KKyAgICBhc3NlcnQobmV3c2l6ZSAtIChwIC0gYnVmZmVyKSA+PSAxKTsKKyAgICAqcCsrID0gcXVvdGU7CisgICAgd2hpbGUgKCpxdW90ZV9wb3N0Zml4KSB7CisgICAgICAgKnArKyA9ICpxdW90ZV9wb3N0Zml4Kys7CisgICAgfQorCisgICAgdiA9IFB5VW5pY29kZV9EZWNvZGVBU0NJSShidWZmZXIsIHAgLSBidWZmZXIsIE5VTEwpOworICAgIFB5T2JqZWN0X0ZyZWUoYnVmZmVyKTsKKyAgICByZXR1cm4gdjsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTk2NCwyMyArOTU5LDIwIEBACiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KIAotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiAKICAgICBzZWxmX3NpemUgPSBfZ2V0YnVmZmVyKHNlbGYsICZzZWxmX2J5dGVzKTsKICAgICBpZiAoc2VsZl9zaXplIDwgMCkgewogICAgICAgICBQeUVycl9DbGVhcigpOwotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiAKICAgICBvdGhlcl9zaXplID0gX2dldGJ1ZmZlcihvdGhlciwgJm90aGVyX2J5dGVzKTsKICAgICBpZiAob3RoZXJfc2l6ZSA8IDApIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmc2VsZl9ieXRlcyk7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KIAogICAgIGlmIChzZWxmX3NpemUgIT0gb3RoZXJfc2l6ZSAmJiAob3AgPT0gUHlfRVEgfHwgb3AgPT0gUHlfTkUpKSB7CkBAIC0xMDI4LDcgKzEwMjAsNyBAQAogICAgICAgICBQeUVycl9QcmludCgpOwogICAgIH0KICAgICBpZiAoc2VsZi0+b2JfYnl0ZXMgIT0gMCkgewotICAgICAgICBQeU1lbV9GcmVlKHNlbGYtPm9iX2J5dGVzKTsKKyAgICAgICAgUHlPYmplY3RfRnJlZShzZWxmLT5vYl9ieXRlcyk7CiAgICAgfQogICAgIFB5X1RZUEUoc2VsZiktPnRwX2ZyZWUoKFB5T2JqZWN0ICopc2VsZik7CiB9CkBAIC0xMDM3LDYgKzEwMjksOCBAQAogLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIC8qIE1ldGhvZHMgKi8KIAorI2RlZmluZSBGQVNUU0VBUkNIIGZhc3RzZWFyY2gKKyNkZWZpbmUgU1RSSU5HTElCKEYpIHN0cmluZ2xpYl8jI0YKICNkZWZpbmUgU1RSSU5HTElCX0NIQVIgY2hhcgogI2RlZmluZSBTVFJJTkdMSUJfTEVOIFB5Qnl0ZUFycmF5X0dFVF9TSVpFCiAjZGVmaW5lIFNUUklOR0xJQl9TVFIgUHlCeXRlQXJyYXlfQVNfU1RSSU5HCkBAIC0xMDc3LDI0ICsxMDcxLDQxIEBACiBieXRlYXJyYXlfZmluZF9pbnRlcm5hbChQeUJ5dGVBcnJheU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIGludCBkaXIpCiB7CiAgICAgUHlPYmplY3QgKnN1Ym9iajsKKyAgICBjaGFyIGJ5dGU7CiAgICAgUHlfYnVmZmVyIHN1YmJ1ZjsKKyAgICBjb25zdCBjaGFyICpzdWI7CisgICAgUHlfc3NpemVfdCBzdWJfbGVuOwogICAgIFB5X3NzaXplX3Qgc3RhcnQ9MCwgZW5kPVBZX1NTSVpFX1RfTUFYOwogICAgIFB5X3NzaXplX3QgcmVzOwogCi0gICAgaWYgKCFzdHJpbmdsaWJfcGFyc2VfYXJnc19maW5kcygiZmluZC9yZmluZC9pbmRleC9yaW5kZXgiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncywgJnN1Ym9iaiwgJnN0YXJ0LCAmZW5kKSkKKyAgICBpZiAoIXN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzX2J5dGUoImZpbmQvcmZpbmQvaW5kZXgvcmluZGV4IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncywgJnN1Ym9iaiwgJmJ5dGUsICZzdGFydCwgJmVuZCkpCiAgICAgICAgIHJldHVybiAtMjsKLSAgICBpZiAoX2dldGJ1ZmZlcihzdWJvYmosICZzdWJidWYpIDwgMCkKLSAgICAgICAgcmV0dXJuIC0yOworCisgICAgaWYgKHN1Ym9iaikgeworICAgICAgICBpZiAoX2dldGJ1ZmZlcihzdWJvYmosICZzdWJidWYpIDwgMCkKKyAgICAgICAgICAgIHJldHVybiAtMjsKKworICAgICAgICBzdWIgPSBzdWJidWYuYnVmOworICAgICAgICBzdWJfbGVuID0gc3ViYnVmLmxlbjsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHN1YiA9ICZieXRlOworICAgICAgICBzdWJfbGVuID0gMTsKKyAgICB9CisKICAgICBpZiAoZGlyID4gMCkKICAgICAgICAgcmVzID0gc3RyaW5nbGliX2ZpbmRfc2xpY2UoCiAgICAgICAgICAgICBQeUJ5dGVBcnJheV9BU19TVFJJTkcoc2VsZiksIFB5Qnl0ZUFycmF5X0dFVF9TSVpFKHNlbGYpLAotICAgICAgICAgICAgc3ViYnVmLmJ1Ziwgc3ViYnVmLmxlbiwgc3RhcnQsIGVuZCk7CisgICAgICAgICAgICBzdWIsIHN1Yl9sZW4sIHN0YXJ0LCBlbmQpOwogICAgIGVsc2UKICAgICAgICAgcmVzID0gc3RyaW5nbGliX3JmaW5kX3NsaWNlKAogICAgICAgICAgICAgUHlCeXRlQXJyYXlfQVNfU1RSSU5HKHNlbGYpLCBQeUJ5dGVBcnJheV9HRVRfU0laRShzZWxmKSwKLSAgICAgICAgICAgIHN1YmJ1Zi5idWYsIHN1YmJ1Zi5sZW4sIHN0YXJ0LCBlbmQpOwotICAgIFB5QnVmZmVyX1JlbGVhc2UoJnN1YmJ1Zik7CisgICAgICAgICAgICBzdWIsIHN1Yl9sZW4sIHN0YXJ0LCBlbmQpOworCisgICAgaWYgKHN1Ym9iaikKKyAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmc3ViYnVmKTsKKwogICAgIHJldHVybiByZXM7CiB9CiAKQEAgLTExMjcsMjYgKzExMzgsNjYgQEAKIGJ5dGVhcnJheV9jb3VudChQeUJ5dGVBcnJheU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKnN1Yl9vYmo7Ci0gICAgY29uc3QgY2hhciAqc3RyID0gUHlCeXRlQXJyYXlfQVNfU1RSSU5HKHNlbGYpOworICAgIGNvbnN0IGNoYXIgKnN0ciA9IFB5Qnl0ZUFycmF5X0FTX1NUUklORyhzZWxmKSwgKnN1YjsKKyAgICBQeV9zc2l6ZV90IHN1Yl9sZW47CisgICAgY2hhciBieXRlOwogICAgIFB5X3NzaXplX3Qgc3RhcnQgPSAwLCBlbmQgPSBQWV9TU0laRV9UX01BWDsKKwogICAgIFB5X2J1ZmZlciB2c3ViOwogICAgIFB5T2JqZWN0ICpjb3VudF9vYmo7CiAKLSAgICBpZiAoIXN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzKCJjb3VudCIsIGFyZ3MsICZzdWJfb2JqLCAmc3RhcnQsICZlbmQpKQorICAgIGlmICghc3RyaW5nbGliX3BhcnNlX2FyZ3NfZmluZHNfYnl0ZSgiY291bnQiLCBhcmdzLCAmc3ViX29iaiwgJmJ5dGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFydCwgJmVuZCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKF9nZXRidWZmZXIoc3ViX29iaiwgJnZzdWIpIDwgMCkKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKHN1Yl9vYmopIHsKKyAgICAgICAgaWYgKF9nZXRidWZmZXIoc3ViX29iaiwgJnZzdWIpIDwgMCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCisgICAgICAgIHN1YiA9IHZzdWIuYnVmOworICAgICAgICBzdWJfbGVuID0gdnN1Yi5sZW47CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBzdWIgPSAmYnl0ZTsKKyAgICAgICAgc3ViX2xlbiA9IDE7CisgICAgfQogCiAgICAgQURKVVNUX0lORElDRVMoc3RhcnQsIGVuZCwgUHlCeXRlQXJyYXlfR0VUX1NJWkUoc2VsZikpOwogCiAgICAgY291bnRfb2JqID0gUHlMb25nX0Zyb21Tc2l6ZV90KAotICAgICAgICBzdHJpbmdsaWJfY291bnQoc3RyICsgc3RhcnQsIGVuZCAtIHN0YXJ0LCB2c3ViLmJ1ZiwgdnN1Yi5sZW4sIFBZX1NTSVpFX1RfTUFYKQorICAgICAgICBzdHJpbmdsaWJfY291bnQoc3RyICsgc3RhcnQsIGVuZCAtIHN0YXJ0LCBzdWIsIHN1Yl9sZW4sIFBZX1NTSVpFX1RfTUFYKQogICAgICAgICApOwotICAgIFB5QnVmZmVyX1JlbGVhc2UoJnZzdWIpOworCisgICAgaWYgKHN1Yl9vYmopCisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnZzdWIpOworCiAgICAgcmV0dXJuIGNvdW50X29iajsKIH0KIAorUHlEb2NfU1RSVkFSKGNsZWFyX19kb2NfXywKKyJCLmNsZWFyKCkgLT4gTm9uZVxuXAorXG5cCitSZW1vdmUgYWxsIGl0ZW1zIGZyb20gQi4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2J5dGVhcnJheV9jbGVhcihQeUJ5dGVBcnJheU9iamVjdCAqc2VsZikKK3sKKyAgICBpZiAoUHlCeXRlQXJyYXlfUmVzaXplKChQeU9iamVjdCAqKXNlbGYsIDApIDwgMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihjb3B5X19kb2NfXywKKyJCLmNvcHkoKSAtPiBieXRlYXJyYXlcblwKK1xuXAorUmV0dXJuIGEgY29weSBvZiBCLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorYnl0ZWFycmF5X2NvcHkoUHlCeXRlQXJyYXlPYmplY3QgKnNlbGYpCit7CisgICAgcmV0dXJuIFB5Qnl0ZUFycmF5X0Zyb21TdHJpbmdBbmRTaXplKFB5Qnl0ZUFycmF5X0FTX1NUUklORygoUHlPYmplY3QgKilzZWxmKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlQXJyYXlfR0VUX1NJWkUoc2VsZikpOworfQogCiBQeURvY19TVFJWQVIoaW5kZXhfX2RvY19fLAogIkIuaW5kZXgoc3ViWywgc3RhcnRbLCBlbmRdXSkgLT4gaW50XG5cCkBAIC0xOTg4LDcgKzIwMzksNyBAQAogfQogCiBQeURvY19TVFJWQVIoc3BsaXRfX2RvY19fLAotIkIuc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pIC0+IGxpc3Qgb2YgYnl0ZWFycmF5c1xuXAorIkIuc3BsaXQoc2VwPU5vbmUsIG1heHNwbGl0PS0xKSAtPiBsaXN0IG9mIGJ5dGVhcnJheXNcblwKIFxuXAogUmV0dXJuIGEgbGlzdCBvZiB0aGUgc2VjdGlvbnMgaW4gQiwgdXNpbmcgc2VwIGFzIHRoZSBkZWxpbWl0ZXIuXG5cCiBJZiBzZXAgaXMgbm90IGdpdmVuLCBCIGlzIHNwbGl0IG9uIEFTQ0lJIHdoaXRlc3BhY2UgY2hhcmFjdGVyc1xuXApAQCAtMTk5NiwxNSArMjA0NywxNyBAQAogSWYgbWF4c3BsaXQgaXMgZ2l2ZW4sIGF0IG1vc3QgbWF4c3BsaXQgc3BsaXRzIGFyZSBkb25lLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotYnl0ZWFycmF5X3NwbGl0KFB5Qnl0ZUFycmF5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK2J5dGVhcnJheV9zcGxpdChQeUJ5dGVBcnJheU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogeworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsic2VwIiwgIm1heHNwbGl0IiwgMH07CiAgICAgUHlfc3NpemVfdCBsZW4gPSBQeUJ5dGVBcnJheV9HRVRfU0laRShzZWxmKSwgbjsKICAgICBQeV9zc2l6ZV90IG1heHNwbGl0ID0gLTE7CiAgICAgY29uc3QgY2hhciAqcyA9IFB5Qnl0ZUFycmF5X0FTX1NUUklORyhzZWxmKSwgKnN1YjsKICAgICBQeU9iamVjdCAqbGlzdCwgKnN1Ym9iaiA9IFB5X05vbmU7CiAgICAgUHlfYnVmZmVyIHZzdWI7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxPbjpzcGxpdCIsICZzdWJvYmosICZtYXhzcGxpdCkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxPbjpzcGxpdCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmc3Vib2JqLCAmbWF4c3BsaXQpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAobWF4c3BsaXQgPCAwKQogICAgICAgICBtYXhzcGxpdCA9IFBZX1NTSVpFX1RfTUFYOwpAQCAtMjA4MCw3ICsyMTMzLDcgQEAKIH0KIAogUHlEb2NfU1RSVkFSKHJzcGxpdF9fZG9jX18sCi0iQi5yc3BsaXQoc2VwWywgbWF4c3BsaXRdKSAtPiBsaXN0IG9mIGJ5dGVhcnJheXNcblwKKyJCLnJzcGxpdChzZXA9Tm9uZSwgbWF4c3BsaXQ9LTEpIC0+IGxpc3Qgb2YgYnl0ZWFycmF5c1xuXAogXG5cCiBSZXR1cm4gYSBsaXN0IG9mIHRoZSBzZWN0aW9ucyBpbiBCLCB1c2luZyBzZXAgYXMgdGhlIGRlbGltaXRlcixcblwKIHN0YXJ0aW5nIGF0IHRoZSBlbmQgb2YgQiBhbmQgd29ya2luZyB0byB0aGUgZnJvbnQuXG5cCkBAIC0yMDg5LDE1ICsyMTQyLDE3IEBACiBJZiBtYXhzcGxpdCBpcyBnaXZlbiwgYXQgbW9zdCBtYXhzcGxpdCBzcGxpdHMgYXJlIGRvbmUuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi1ieXRlYXJyYXlfcnNwbGl0KFB5Qnl0ZUFycmF5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK2J5dGVhcnJheV9yc3BsaXQoUHlCeXRlQXJyYXlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InNlcCIsICJtYXhzcGxpdCIsIDB9OwogICAgIFB5X3NzaXplX3QgbGVuID0gUHlCeXRlQXJyYXlfR0VUX1NJWkUoc2VsZiksIG47CiAgICAgUHlfc3NpemVfdCBtYXhzcGxpdCA9IC0xOwogICAgIGNvbnN0IGNoYXIgKnMgPSBQeUJ5dGVBcnJheV9BU19TVFJJTkcoc2VsZiksICpzdWI7CiAgICAgUHlPYmplY3QgKmxpc3QsICpzdWJvYmogPSBQeV9Ob25lOwogICAgIFB5X2J1ZmZlciB2c3ViOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8T246cnNwbGl0IiwgJnN1Ym9iaiwgJm1heHNwbGl0KSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAifE9uOnJzcGxpdCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmc3Vib2JqLCAmbWF4c3BsaXQpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAobWF4c3BsaXQgPCAwKQogICAgICAgICBtYXhzcGxpdCA9IFBZX1NTSVpFX1RfTUFYOwpAQCAtMjQ0NCw3ICsyNDk5LDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBieXRlYXJyYXlfcnN0cmlwKFB5Qnl0ZUFycmF5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeV9zc2l6ZV90IGxlZnQsIHJpZ2h0LCBteXNpemUsIGFyZ3NpemU7CisgICAgUHlfc3NpemVfdCByaWdodCwgbXlzaXplLCBhcmdzaXplOwogICAgIHZvaWQgKm15cHRyLCAqYXJncHRyOwogICAgIFB5T2JqZWN0ICphcmcgPSBQeV9Ob25lOwogICAgIFB5X2J1ZmZlciB2YXJnOwpAQCAtMjQ2MiwxMSArMjUxNywxMCBAQAogICAgIH0KICAgICBteXB0ciA9IHNlbGYtPm9iX2J5dGVzOwogICAgIG15c2l6ZSA9IFB5X1NJWkUoc2VsZik7Ci0gICAgbGVmdCA9IDA7CiAgICAgcmlnaHQgPSByc3RyaXBfaGVscGVyKG15cHRyLCBteXNpemUsIGFyZ3B0ciwgYXJnc2l6ZSk7CiAgICAgaWYgKGFyZyAhPSBQeV9Ob25lKQogICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZ2YXJnKTsKLSAgICByZXR1cm4gUHlCeXRlQXJyYXlfRnJvbVN0cmluZ0FuZFNpemUoc2VsZi0+b2JfYnl0ZXMgKyBsZWZ0LCByaWdodCAtIGxlZnQpOworICAgIHJldHVybiBQeUJ5dGVBcnJheV9Gcm9tU3RyaW5nQW5kU2l6ZShzZWxmLT5vYl9ieXRlcywgcmlnaHQpOwogfQogCiBQeURvY19TVFJWQVIoZGVjb2RlX2RvYywKQEAgLTI1ODgsMTEgKzI2NDIsMTMgQEAKIGlzIGdpdmVuIGFuZCB0cnVlLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi1ieXRlYXJyYXlfc3BsaXRsaW5lcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCitieXRlYXJyYXlfc3BsaXRsaW5lcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogeworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsia2VlcGVuZHMiLCAwfTsKICAgICBpbnQga2VlcGVuZHMgPSAwOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8aTpzcGxpdGxpbmVzIiwgJmtlZXBlbmRzKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAifGk6c3BsaXRsaW5lcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAma2VlcGVuZHMpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHJldHVybiBzdHJpbmdsaWJfc3BsaXRsaW5lcygKQEAgLTI2MDksNyArMjY2NSw3IEBACiBFeGFtcGxlOiBieXRlYXJyYXkuZnJvbWhleCgnQjkgMDFFRicpIC0+IGJ5dGVhcnJheShiJ1xceGI5XFx4MDFcXHhlZicpLiIpOwogCiBzdGF0aWMgaW50Ci1oZXhfZGlnaXRfdG9faW50KFB5X1VOSUNPREUgYykKK2hleF9kaWdpdF90b19pbnQoUHlfVUNTNCBjKQogewogICAgIGlmIChjID49IDEyOCkKICAgICAgICAgcmV0dXJuIC0xOwpAQCAtMjYyOSwxNSArMjY4NSwyMCBAQAogewogICAgIFB5T2JqZWN0ICpuZXdieXRlcywgKmhleG9iajsKICAgICBjaGFyICpidWY7Ci0gICAgUHlfVU5JQ09ERSAqaGV4OwogICAgIFB5X3NzaXplX3QgaGV4bGVuLCBieXRlc2xlbiwgaSwgajsKICAgICBpbnQgdG9wLCBib3Q7CisgICAgdm9pZCAqZGF0YTsKKyAgICB1bnNpZ25lZCBpbnQga2luZDsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTpmcm9taGV4IiwgJmhleG9iaikpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2soaGV4b2JqKSk7Ci0gICAgaGV4bGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGhleG9iaik7Ci0gICAgaGV4ID0gUHlVbmljb2RlX0FTX1VOSUNPREUoaGV4b2JqKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGhleG9iaikpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChoZXhvYmopOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShoZXhvYmopOworICAgIGhleGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGhleG9iaik7CisKICAgICBieXRlc2xlbiA9IGhleGxlbi8yOyAvKiBUaGlzIG92ZXJlc3RpbWF0ZXMgaWYgdGhlcmUgYXJlIHNwYWNlcyAqLwogICAgIG5ld2J5dGVzID0gUHlCeXRlQXJyYXlfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgYnl0ZXNsZW4pOwogICAgIGlmICghbmV3Ynl0ZXMpCkBAIC0yNjQ1LDEyICsyNzA2LDEyIEBACiAgICAgYnVmID0gUHlCeXRlQXJyYXlfQVNfU1RSSU5HKG5ld2J5dGVzKTsKICAgICBmb3IgKGkgPSBqID0gMDsgaSA8IGhleGxlbjsgaSArPSAyKSB7CiAgICAgICAgIC8qIHNraXAgb3ZlciBzcGFjZXMgaW4gdGhlIGlucHV0ICovCi0gICAgICAgIHdoaWxlIChoZXhbaV0gPT0gJyAnKQorICAgICAgICB3aGlsZSAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkgPT0gJyAnKQogICAgICAgICAgICAgaSsrOwogICAgICAgICBpZiAoaSA+PSBoZXhsZW4pCiAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgdG9wID0gaGV4X2RpZ2l0X3RvX2ludChoZXhbaV0pOwotICAgICAgICBib3QgPSBoZXhfZGlnaXRfdG9faW50KGhleFtpKzFdKTsKKyAgICAgICAgdG9wID0gaGV4X2RpZ2l0X3RvX2ludChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSk7CisgICAgICAgIGJvdCA9IGhleF9kaWdpdF90b19pbnQoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSsxKSk7CiAgICAgICAgIGlmICh0b3AgPT0gLTEgfHwgYm90ID09IC0xKSB7CiAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAibm9uLWhleGFkZWNpbWFsIG51bWJlciBmb3VuZCBpbiAiCkBAIC0yNjY4LDI2ICsyNzI5LDU5IEBACiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLVB5RG9jX1NUUlZBUihyZWR1Y2VfZG9jLCAiUmV0dXJuIHN0YXRlIGluZm9ybWF0aW9uIGZvciBwaWNrbGluZy4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLWJ5dGVhcnJheV9yZWR1Y2UoUHlCeXRlQXJyYXlPYmplY3QgKnNlbGYpCitfY29tbW9uX3JlZHVjZShQeUJ5dGVBcnJheU9iamVjdCAqc2VsZiwgaW50IHByb3RvKQogewotICAgIFB5T2JqZWN0ICpsYXRpbjEsICpkaWN0OwotICAgIGlmIChzZWxmLT5vYl9ieXRlcykKLSAgICAgICAgbGF0aW4xID0gUHlVbmljb2RlX0RlY29kZUxhdGluMShzZWxmLT5vYl9ieXRlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9TSVpFKHNlbGYpLCBOVUxMKTsKLSAgICBlbHNlCi0gICAgICAgIGxhdGluMSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIiKTsKKyAgICBQeU9iamVjdCAqZGljdDsKKyAgICBfUHlfSURFTlRJRklFUihfX2RpY3RfXyk7CiAKLSAgICBkaWN0ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZygoUHlPYmplY3QgKilzZWxmLCAiX19kaWN0X18iKTsKKyAgICBkaWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF9fX2RpY3RfXyk7CiAgICAgaWYgKGRpY3QgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICBkaWN0ID0gUHlfTm9uZTsKICAgICAgICAgUHlfSU5DUkVGKGRpY3QpOwogICAgIH0KIAotICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTyhOcylOKSIsIFB5X1RZUEUoc2VsZiksIGxhdGluMSwgImxhdGluLTEiLCBkaWN0KTsKKyAgICBpZiAocHJvdG8gPCAzKSB7CisgICAgICAgIC8qIHVzZSBzdHIgYmFzZWQgcmVkdWN0aW9uIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIFB5dGhvbiAyLnggKi8KKyAgICAgICAgUHlPYmplY3QgKmxhdGluMTsKKyAgICAgICAgaWYgKHNlbGYtPm9iX2J5dGVzKQorICAgICAgICAgICAgbGF0aW4xID0gUHlVbmljb2RlX0RlY29kZUxhdGluMShzZWxmLT5vYl9ieXRlcywgUHlfU0laRShzZWxmKSwgTlVMTCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGxhdGluMSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIiKTsKKyAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihPKE5zKU4pIiwgUHlfVFlQRShzZWxmKSwgbGF0aW4xLCAibGF0aW4tMSIsIGRpY3QpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgLyogdXNlIG1vcmUgZWZmaWNpZW50IGJ5dGUgYmFzZWQgcmVkdWN0aW9uICovCisgICAgICAgIGlmIChzZWxmLT5vYl9ieXRlcykgeworICAgICAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihPKHkjKU4pIiwgUHlfVFlQRShzZWxmKSwgc2VsZi0+b2JfYnl0ZXMsIFB5X1NJWkUoc2VsZiksIGRpY3QpOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihPKClOKSIsIFB5X1RZUEUoc2VsZiksIGRpY3QpOworICAgICAgICB9CisgICAgfQorfQorCitQeURvY19TVFJWQVIocmVkdWNlX2RvYywgIlJldHVybiBzdGF0ZSBpbmZvcm1hdGlvbiBmb3IgcGlja2xpbmcuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitieXRlYXJyYXlfcmVkdWNlKFB5Qnl0ZUFycmF5T2JqZWN0ICpzZWxmKQoreworICAgIHJldHVybiBfY29tbW9uX3JlZHVjZShzZWxmLCAyKTsKK30KKworUHlEb2NfU1RSVkFSKHJlZHVjZV9leF9kb2MsICJSZXR1cm4gc3RhdGUgaW5mb3JtYXRpb24gZm9yIHBpY2tsaW5nLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorYnl0ZWFycmF5X3JlZHVjZV9leChQeUJ5dGVBcnJheU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IHByb3RvID0gMDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifGk6X19yZWR1Y2VfZXhfXyIsICZwcm90bykpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcmV0dXJuIF9jb21tb25fcmVkdWNlKHNlbGYsIHByb3RvKTsKIH0KIAogUHlEb2NfU1RSVkFSKHNpemVvZl9kb2MsCkBAIC0yNzMxLDExICsyODI1LDE0IEBACiBieXRlYXJyYXlfbWV0aG9kc1tdID0gewogICAgIHsiX19hbGxvY19fIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9hbGxvYywgTUVUSF9OT0FSR1MsIGFsbG9jX2RvY30sCiAgICAgeyJfX3JlZHVjZV9fIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9yZWR1Y2UsIE1FVEhfTk9BUkdTLCByZWR1Y2VfZG9jfSwKKyAgICB7Il9fcmVkdWNlX2V4X18iLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X3JlZHVjZV9leCwgTUVUSF9WQVJBUkdTLCByZWR1Y2VfZXhfZG9jfSwKICAgICB7Il9fc2l6ZW9mX18iLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X3NpemVvZiwgTUVUSF9OT0FSR1MsIHNpemVvZl9kb2N9LAogICAgIHsiYXBwZW5kIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9hcHBlbmQsIE1FVEhfTywgYXBwZW5kX19kb2NfX30sCiAgICAgeyJjYXBpdGFsaXplIiwgKFB5Q0Z1bmN0aW9uKXN0cmluZ2xpYl9jYXBpdGFsaXplLCBNRVRIX05PQVJHUywKICAgICAgX1B5X2NhcGl0YWxpemVfX2RvY19ffSwKICAgICB7ImNlbnRlciIsIChQeUNGdW5jdGlvbilzdHJpbmdsaWJfY2VudGVyLCBNRVRIX1ZBUkFSR1MsIGNlbnRlcl9fZG9jX199LAorICAgIHsiY2xlYXIiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X2NsZWFyLCBNRVRIX05PQVJHUywgY2xlYXJfX2RvY19ffSwKKyAgICB7ImNvcHkiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X2NvcHksIE1FVEhfTk9BUkdTLCBjb3B5X19kb2NfX30sCiAgICAgeyJjb3VudCIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfY291bnQsIE1FVEhfVkFSQVJHUywgY291bnRfX2RvY19ffSwKICAgICB7ImRlY29kZSIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfZGVjb2RlLCBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLCBkZWNvZGVfZG9jfSwKICAgICB7ImVuZHN3aXRoIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9lbmRzd2l0aCwgTUVUSF9WQVJBUkdTLCBlbmRzd2l0aF9fZG9jX199LApAQCAtMjc3NiwxMSArMjg3MywxMSBAQAogICAgIHsicmluZGV4IiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9yaW5kZXgsIE1FVEhfVkFSQVJHUywgcmluZGV4X19kb2NfX30sCiAgICAgeyJyanVzdCIsIChQeUNGdW5jdGlvbilzdHJpbmdsaWJfcmp1c3QsIE1FVEhfVkFSQVJHUywgcmp1c3RfX2RvY19ffSwKICAgICB7InJwYXJ0aXRpb24iLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X3JwYXJ0aXRpb24sIE1FVEhfTywgcnBhcnRpdGlvbl9fZG9jX199LAotICAgIHsicnNwbGl0IiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9yc3BsaXQsIE1FVEhfVkFSQVJHUywgcnNwbGl0X19kb2NfX30sCisgICAgeyJyc3BsaXQiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X3JzcGxpdCwgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUywgcnNwbGl0X19kb2NfX30sCiAgICAgeyJyc3RyaXAiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X3JzdHJpcCwgTUVUSF9WQVJBUkdTLCByc3RyaXBfX2RvY19ffSwKLSAgICB7InNwbGl0IiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9zcGxpdCwgTUVUSF9WQVJBUkdTLCBzcGxpdF9fZG9jX199LAotICAgIHsic3BsaXRsaW5lcyIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfc3BsaXRsaW5lcywgTUVUSF9WQVJBUkdTLAotICAgICBzcGxpdGxpbmVzX19kb2NfX30sCisgICAgeyJzcGxpdCIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfc3BsaXQsIE1FVEhfVkFSQVJHUyB8IE1FVEhfS0VZV09SRFMsIHNwbGl0X19kb2NfX30sCisgICAgeyJzcGxpdGxpbmVzIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9zcGxpdGxpbmVzLAorICAgICBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLCBzcGxpdGxpbmVzX19kb2NfX30sCiAgICAgeyJzdGFydHN3aXRoIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9zdGFydHN3aXRoLCBNRVRIX1ZBUkFSR1MgLAogICAgICBzdGFydHN3aXRoX19kb2NfX30sCiAgICAgeyJzdHJpcCIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfc3RyaXAsIE1FVEhfVkFSQVJHUywgc3RyaXBfX2RvY19ffSwKZGlmZiAtLWdpdCBhL09iamVjdHMvYnl0ZXNfbWV0aG9kcy5jIGIvT2JqZWN0cy9ieXRlc19tZXRob2RzLmMKaW5kZXggNzIzM2NlYS4uZWYzYzJmNyAxMDA2NDQKLS0tIGEvT2JqZWN0cy9ieXRlc19tZXRob2RzLmMKKysrIGIvT2JqZWN0cy9ieXRlc19tZXRob2RzLmMKQEAgLTI0OCwxMiArMjQ4LDggQEAKIHsKICAgICBQeV9zc2l6ZV90IGk7CiAKLSAgICBQeV9NRU1DUFkocmVzdWx0LCBjcHRyLCBsZW4pOwotCiAgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7Ci0gICAgICAgIGludCBjID0gUHlfQ0hBUk1BU0socmVzdWx0W2ldKTsKLSAgICAgICAgaWYgKFB5X0lTVVBQRVIoYykpCi0gICAgICAgICAgICByZXN1bHRbaV0gPSBQeV9UT0xPV0VSKGMpOworICAgICAgICByZXN1bHRbaV0gPSBQeV9UT0xPV0VSKCh1bnNpZ25lZCBjaGFyKSBjcHRyW2ldKTsKICAgICB9CiB9CiAKQEAgLTI2OCwxMiArMjY0LDggQEAKIHsKICAgICBQeV9zc2l6ZV90IGk7CiAKLSAgICBQeV9NRU1DUFkocmVzdWx0LCBjcHRyLCBsZW4pOwotCiAgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7Ci0gICAgICAgIGludCBjID0gUHlfQ0hBUk1BU0socmVzdWx0W2ldKTsKLSAgICAgICAgaWYgKFB5X0lTTE9XRVIoYykpCi0gICAgICAgICAgICByZXN1bHRbaV0gPSBQeV9UT1VQUEVSKGMpOworICAgICAgICByZXN1bHRbaV0gPSBQeV9UT1VQUEVSKCh1bnNpZ25lZCBjaGFyKSBjcHRyW2ldKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL09iamVjdHMvYnl0ZXNvYmplY3QuYyBiL09iamVjdHMvYnl0ZXNvYmplY3QuYwppbmRleCA2MmRkZjIxLi4xZDJmZWQ3IDEwMDY0NAotLS0gYS9PYmplY3RzL2J5dGVzb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9ieXRlc29iamVjdC5jCkBAIC00MSwxMCArNDEsNiBAQAogI2RlZmluZSBQeUJ5dGVzT2JqZWN0X1NJWkUgKG9mZnNldG9mKFB5Qnl0ZXNPYmplY3QsIG9iX3N2YWwpICsgMSkKIAogLyoKLSAgIEZvciBib3RoIFB5Qnl0ZXNfRnJvbVN0cmluZygpIGFuZCBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKCksIHRoZQotICAgcGFyYW1ldGVyIGBzaXplJyBkZW5vdGVzIG51bWJlciBvZiBjaGFyYWN0ZXJzIHRvIGFsbG9jYXRlLCBub3QgY291bnRpbmcgYW55Ci0gICBudWxsIHRlcm1pbmF0aW5nIGNoYXJhY3Rlci4KLQogICAgRm9yIFB5Qnl0ZXNfRnJvbVN0cmluZygpLCB0aGUgcGFyYW1ldGVyIGBzdHInIHBvaW50cyB0byBhIG51bGwtdGVybWluYXRlZAogICAgc3RyaW5nIGNvbnRhaW5pbmcgZXhhY3RseSBgc2l6ZScgYnl0ZXMuCiAKQEAgLTYxLDggKzU3LDggQEAKIAogICAgVGhlIFB5T2JqZWN0IG1lbWJlciBgb3AtPm9iX3NpemUnLCB3aGljaCBkZW5vdGVzIHRoZSBudW1iZXIgb2YgImV4dHJhCiAgICBpdGVtcyIgaW4gYSB2YXJpYWJsZS1zaXplIG9iamVjdCwgd2lsbCBjb250YWluIHRoZSBudW1iZXIgb2YgYnl0ZXMKLSAgIGFsbG9jYXRlZCBmb3Igc3RyaW5nIGRhdGEsIG5vdCBjb3VudGluZyB0aGUgbnVsbCB0ZXJtaW5hdGluZyBjaGFyYWN0ZXIuICBJdAotICAgaXMgdGhlcmVmb3JlIGVxdWFsIHRvIHRoZSBlcXVhbCB0byB0aGUgYHNpemUnIHBhcmFtZXRlciAoZm9yCisgICBhbGxvY2F0ZWQgZm9yIHN0cmluZyBkYXRhLCBub3QgY291bnRpbmcgdGhlIG51bGwgdGVybWluYXRpbmcgY2hhcmFjdGVyLgorICAgSXQgaXMgdGhlcmVmb3JlIGVxdWFsIHRvIHRoZSBgc2l6ZScgcGFyYW1ldGVyIChmb3IKICAgIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoKSkgb3IgdGhlIGxlbmd0aCBvZiB0aGUgc3RyaW5nIGluIHRoZSBgc3RyJwogICAgcGFyYW1ldGVyIChmb3IgUHlCeXRlc19Gcm9tU3RyaW5nKCkpLgogKi8KQEAgLTU2OCw3NiArNTY0LDY5IEBACiBQeU9iamVjdCAqCiBQeUJ5dGVzX1JlcHIoUHlPYmplY3QgKm9iaiwgaW50IHNtYXJ0cXVvdGVzKQogewotICAgIHN0YXRpYyBjb25zdCBjaGFyICpoZXhkaWdpdHMgPSAiMDEyMzQ1Njc4OWFiY2RlZiI7CiAgICAgcmVnaXN0ZXIgUHlCeXRlc09iamVjdCogb3AgPSAoUHlCeXRlc09iamVjdCopIG9iajsKLSAgICBQeV9zc2l6ZV90IGxlbmd0aCA9IFB5X1NJWkUob3ApOwotICAgIHNpemVfdCBuZXdzaXplOworICAgIFB5X3NzaXplX3QgaSwgbGVuZ3RoID0gUHlfU0laRShvcCk7CisgICAgc2l6ZV90IG5ld3NpemUsIHNxdW90ZXMsIGRxdW90ZXM7CiAgICAgUHlPYmplY3QgKnY7Ci0gICAgaWYgKGxlbmd0aCA+IChQWV9TU0laRV9UX01BWCAtIDMpIC8gNCkgeworICAgIHVuc2lnbmVkIGNoYXIgcXVvdGUsICpzLCAqcDsKKworICAgIC8qIENvbXB1dGUgc2l6ZSBvZiBvdXRwdXQgc3RyaW5nICovCisgICAgc3F1b3RlcyA9IGRxdW90ZXMgPSAwOworICAgIG5ld3NpemUgPSAzOyAvKiBiJycgKi8KKyAgICBzID0gKHVuc2lnbmVkIGNoYXIqKW9wLT5vYl9zdmFsOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBzd2l0Y2goc1tpXSkgeworICAgICAgICBjYXNlICdcJyc6IHNxdW90ZXMrKzsgbmV3c2l6ZSsrOyBicmVhazsKKyAgICAgICAgY2FzZSAnIic6ICBkcXVvdGVzKys7IG5ld3NpemUrKzsgYnJlYWs7CisgICAgICAgIGNhc2UgJ1xcJzogY2FzZSAnXHQnOiBjYXNlICdcbic6IGNhc2UgJ1xyJzoKKyAgICAgICAgICAgIG5ld3NpemUgKz0gMjsgYnJlYWs7IC8qIFxDICovCisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBpZiAoc1tpXSA8ICcgJyB8fCBzW2ldID49IDB4N2YpCisgICAgICAgICAgICAgICAgbmV3c2l6ZSArPSA0OyAvKiBceEhIICovCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgbmV3c2l6ZSsrOworICAgICAgICB9CisgICAgfQorICAgIHF1b3RlID0gJ1wnJzsKKyAgICBpZiAoc21hcnRxdW90ZXMgJiYgc3F1b3RlcyAmJiAhZHF1b3RlcykKKyAgICAgICAgcXVvdGUgPSAnIic7CisgICAgaWYgKHNxdW90ZXMgJiYgcXVvdGUgPT0gJ1wnJykKKyAgICAgICAgbmV3c2l6ZSArPSBzcXVvdGVzOworCisgICAgaWYgKG5ld3NpemUgPiAoUFlfU1NJWkVfVF9NQVggLSBzaXplb2YoUHlVbmljb2RlT2JqZWN0KSAtIDEpKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAogICAgICAgICAgICAgImJ5dGVzIG9iamVjdCBpcyB0b28gbGFyZ2UgdG8gbWFrZSByZXByIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBuZXdzaXplID0gMyArIDQgKiBsZW5ndGg7Ci0gICAgdiA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBuZXdzaXplKTsKKworICAgIHYgPSBQeVVuaWNvZGVfTmV3KG5ld3NpemUsIDEyNyk7CiAgICAgaWYgKHYgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIHJlZ2lzdGVyIFB5X3NzaXplX3QgaTsKLSAgICAgICAgcmVnaXN0ZXIgUHlfVU5JQ09ERSBjOwotICAgICAgICByZWdpc3RlciBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7Ci0gICAgICAgIGludCBxdW90ZTsKKyAgICBwID0gUHlVbmljb2RlXzFCWVRFX0RBVEEodik7CiAKLSAgICAgICAgLyogRmlndXJlIG91dCB3aGljaCBxdW90ZSB0byB1c2U7IHNpbmdsZSBpcyBwcmVmZXJyZWQgKi8KLSAgICAgICAgcXVvdGUgPSAnXCcnOwotICAgICAgICBpZiAoc21hcnRxdW90ZXMpIHsKLSAgICAgICAgICAgIGNoYXIgKnRlc3QsICpzdGFydDsKLSAgICAgICAgICAgIHN0YXJ0ID0gUHlCeXRlc19BU19TVFJJTkcob3ApOwotICAgICAgICAgICAgZm9yICh0ZXN0ID0gc3RhcnQ7IHRlc3QgPCBzdGFydCtsZW5ndGg7ICsrdGVzdCkgewotICAgICAgICAgICAgICAgIGlmICgqdGVzdCA9PSAnIicpIHsKLSAgICAgICAgICAgICAgICAgICAgcXVvdGUgPSAnXCcnOyAvKiBiYWNrIHRvIHNpbmdsZSAqLwotICAgICAgICAgICAgICAgICAgICBnb3RvIGRlY2lkZWQ7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGVsc2UgaWYgKCp0ZXN0ID09ICdcJycpCi0gICAgICAgICAgICAgICAgICAgIHF1b3RlID0gJyInOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZGVjaWRlZDoKLSAgICAgICAgICAgIDsKKyAgICAqcCsrID0gJ2InLCAqcCsrID0gcXVvdGU7CisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIHVuc2lnbmVkIGNoYXIgYyA9IG9wLT5vYl9zdmFsW2ldOworICAgICAgICBpZiAoYyA9PSBxdW90ZSB8fCBjID09ICdcXCcpCisgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9IGM7CisgICAgICAgIGVsc2UgaWYgKGMgPT0gJ1x0JykKKyAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gJ3QnOworICAgICAgICBlbHNlIGlmIChjID09ICdcbicpCisgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9ICduJzsKKyAgICAgICAgZWxzZSBpZiAoYyA9PSAnXHInKQorICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAncic7CisgICAgICAgIGVsc2UgaWYgKGMgPCAnICcgfHwgYyA+PSAweDdmKSB7CisgICAgICAgICAgICAqcCsrID0gJ1xcJzsKKyAgICAgICAgICAgICpwKysgPSAneCc7CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjICYgMHhmMCkgPj4gNF07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2MgJiAweGZdOwogICAgICAgICB9Ci0KLSAgICAgICAgKnArKyA9ICdiJywgKnArKyA9IHF1b3RlOwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKLSAgICAgICAgICAgIC8qIFRoZXJlJ3MgYXQgbGVhc3QgZW5vdWdoIHJvb20gZm9yIGEgaGV4IGVzY2FwZQotICAgICAgICAgICAgICAgYW5kIGEgY2xvc2luZyBxdW90ZS4gKi8KLSAgICAgICAgICAgIGFzc2VydChuZXdzaXplIC0gKHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSkgPj0gNSk7Ci0gICAgICAgICAgICBjID0gb3AtPm9iX3N2YWxbaV07Ci0gICAgICAgICAgICBpZiAoYyA9PSBxdW90ZSB8fCBjID09ICdcXCcpCi0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSBjOwotICAgICAgICAgICAgZWxzZSBpZiAoYyA9PSAnXHQnKQotICAgICAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gJ3QnOwotICAgICAgICAgICAgZWxzZSBpZiAoYyA9PSAnXG4nKQotICAgICAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gJ24nOwotICAgICAgICAgICAgZWxzZSBpZiAoYyA9PSAnXHInKQotICAgICAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gJ3InOwotICAgICAgICAgICAgZWxzZSBpZiAoYyA8ICcgJyB8fCBjID49IDB4N2YpIHsKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICAgICAqcCsrID0gJ3gnOwotICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGMgJiAweGYwKSA+PiA0XTsKLSAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW2MgJiAweGZdOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICpwKysgPSBjOwotICAgICAgICB9Ci0gICAgICAgIGFzc2VydChuZXdzaXplIC0gKHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSkgPj0gMSk7Ci0gICAgICAgICpwKysgPSBxdW90ZTsKLSAgICAgICAgKnAgPSAnXDAnOwotICAgICAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmdiwgKHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSkpKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYodik7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdjsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgKnArKyA9IGM7CiAgICAgfQorICAgICpwKysgPSBxdW90ZTsKKyAgICByZXR1cm4gdjsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTg3MSwzMyArODYwLDExIEBACiBzdGF0aWMgUHlfaGFzaF90CiBieXRlc19oYXNoKFB5Qnl0ZXNPYmplY3QgKmEpCiB7Ci0gICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBsZW47Ci0gICAgcmVnaXN0ZXIgdW5zaWduZWQgY2hhciAqcDsKLSAgICByZWdpc3RlciBQeV9oYXNoX3QgeDsKLQotICAgIGFzc2VydChfUHlfSGFzaFNlY3JldF9Jbml0aWFsaXplZCk7Ci0gICAgaWYgKGEtPm9iX3NoYXNoICE9IC0xKQotICAgICAgICByZXR1cm4gYS0+b2Jfc2hhc2g7Ci0gICAgbGVuID0gUHlfU0laRShhKTsKLSAgICAvKgotICAgICAgV2UgbWFrZSB0aGUgaGFzaCBvZiB0aGUgZW1wdHkgc3RyaW5nIGJlIDAsIHJhdGhlciB0aGFuIHVzaW5nCi0gICAgICAocHJlZml4IF4gc3VmZml4KSwgc2luY2UgdGhpcyBzbGlnaHRseSBvYmZ1c2NhdGVzIHRoZSBoYXNoIHNlY3JldAotICAgICovCi0gICAgaWYgKGxlbiA9PSAwKSB7Ci0gICAgICAgIGEtPm9iX3NoYXNoID0gMDsKLSAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKGEtPm9iX3NoYXNoID09IC0xKSB7CisgICAgICAgIC8qIENhbid0IGZhaWwgKi8KKyAgICAgICAgYS0+b2Jfc2hhc2ggPSBfUHlfSGFzaEJ5dGVzKCh1bnNpZ25lZCBjaGFyICopIGEtPm9iX3N2YWwsIFB5X1NJWkUoYSkpOwogICAgIH0KLSAgICBwID0gKHVuc2lnbmVkIGNoYXIgKikgYS0+b2Jfc3ZhbDsKLSAgICB4ID0gX1B5X0hhc2hTZWNyZXQucHJlZml4OwotICAgIHggXj0gKnAgPDwgNzsKLSAgICB3aGlsZSAoLS1sZW4gPj0gMCkKLSAgICAgICAgeCA9IChfUHlIQVNIX01VTFRJUExJRVIqeCkgXiAqcCsrOwotICAgIHggXj0gUHlfU0laRShhKTsKLSAgICB4IF49IF9QeV9IYXNoU2VjcmV0LnN1ZmZpeDsKLSAgICBpZiAoeCA9PSAtMSkKLSAgICAgICAgeCA9IC0yOwotICAgIGEtPm9iX3NoYXNoID0geDsKLSAgICByZXR1cm4geDsKKyAgICByZXR1cm4gYS0+b2Jfc2hhc2g7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCoKQEAgLTEwMDUsNyArOTcyLDcgQEAKICNkZWZpbmUgU1RSSVBOQU1FKGkpIChzdHJpcGZvcm1hdFtpXSszKQogCiBQeURvY19TVFJWQVIoc3BsaXRfX2RvY19fLAotIkIuc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pIC0+IGxpc3Qgb2YgYnl0ZXNcblwKKyJCLnNwbGl0KHNlcD1Ob25lLCBtYXhzcGxpdD0tMSkgLT4gbGlzdCBvZiBieXRlc1xuXAogXG5cCiBSZXR1cm4gYSBsaXN0IG9mIHRoZSBzZWN0aW9ucyBpbiBCLCB1c2luZyBzZXAgYXMgdGhlIGRlbGltaXRlci5cblwKIElmIHNlcCBpcyBub3Qgc3BlY2lmaWVkIG9yIGlzIE5vbmUsIEIgaXMgc3BsaXQgb24gQVNDSUkgd2hpdGVzcGFjZVxuXApAQCAtMTAxMywxNSArOTgwLDE3IEBACiBJZiBtYXhzcGxpdCBpcyBnaXZlbiwgYXQgbW9zdCBtYXhzcGxpdCBzcGxpdHMgYXJlIGRvbmUuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi1ieXRlc19zcGxpdChQeUJ5dGVzT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK2J5dGVzX3NwbGl0KFB5Qnl0ZXNPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InNlcCIsICJtYXhzcGxpdCIsIDB9OwogICAgIFB5X3NzaXplX3QgbGVuID0gUHlCeXRlc19HRVRfU0laRShzZWxmKSwgbjsKICAgICBQeV9zc2l6ZV90IG1heHNwbGl0ID0gLTE7CiAgICAgY29uc3QgY2hhciAqcyA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYpLCAqc3ViOwogICAgIFB5X2J1ZmZlciB2c3ViOwogICAgIFB5T2JqZWN0ICpsaXN0LCAqc3Vib2JqID0gUHlfTm9uZTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifE9uOnNwbGl0IiwgJnN1Ym9iaiwgJm1heHNwbGl0KSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAifE9uOnNwbGl0IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZzdWJvYmosICZtYXhzcGxpdCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChtYXhzcGxpdCA8IDApCiAgICAgICAgIG1heHNwbGl0ID0gUFlfU1NJWkVfVF9NQVg7CkBAIC0xMDkzLDcgKzEwNjIsNyBAQAogfQogCiBQeURvY19TVFJWQVIocnNwbGl0X19kb2NfXywKLSJCLnJzcGxpdChbc2VwWywgbWF4c3BsaXRdXSkgLT4gbGlzdCBvZiBieXRlc1xuXAorIkIucnNwbGl0KHNlcD1Ob25lLCBtYXhzcGxpdD0tMSkgLT4gbGlzdCBvZiBieXRlc1xuXAogXG5cCiBSZXR1cm4gYSBsaXN0IG9mIHRoZSBzZWN0aW9ucyBpbiBCLCB1c2luZyBzZXAgYXMgdGhlIGRlbGltaXRlcixcblwKIHN0YXJ0aW5nIGF0IHRoZSBlbmQgb2YgQiBhbmQgd29ya2luZyB0byB0aGUgZnJvbnQuXG5cCkBAIC0xMTAzLDE1ICsxMDcyLDE3IEBACiAKIAogc3RhdGljIFB5T2JqZWN0ICoKLWJ5dGVzX3JzcGxpdChQeUJ5dGVzT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK2J5dGVzX3JzcGxpdChQeUJ5dGVzT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiB7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJzZXAiLCAibWF4c3BsaXQiLCAwfTsKICAgICBQeV9zc2l6ZV90IGxlbiA9IFB5Qnl0ZXNfR0VUX1NJWkUoc2VsZiksIG47CiAgICAgUHlfc3NpemVfdCBtYXhzcGxpdCA9IC0xOwogICAgIGNvbnN0IGNoYXIgKnMgPSBQeUJ5dGVzX0FTX1NUUklORyhzZWxmKSwgKnN1YjsKICAgICBQeV9idWZmZXIgdnN1YjsKICAgICBQeU9iamVjdCAqbGlzdCwgKnN1Ym9iaiA9IFB5X05vbmU7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxPbjpyc3BsaXQiLCAmc3Vib2JqLCAmbWF4c3BsaXQpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8T246cnNwbGl0IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZzdWJvYmosICZtYXhzcGxpdCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChtYXhzcGxpdCA8IDApCiAgICAgICAgIG1heHNwbGl0ID0gUFlfU1NJWkVfVF9NQVg7CkBAIC0xMjUyLDMxICsxMjIzLDQyIEBACiBieXRlc19maW5kX2ludGVybmFsKFB5Qnl0ZXNPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBpbnQgZGlyKQogewogICAgIFB5T2JqZWN0ICpzdWJvYmo7CisgICAgY2hhciBieXRlOworICAgIFB5X2J1ZmZlciBzdWJidWY7CiAgICAgY29uc3QgY2hhciAqc3ViOwogICAgIFB5X3NzaXplX3Qgc3ViX2xlbjsKICAgICBQeV9zc2l6ZV90IHN0YXJ0PTAsIGVuZD1QWV9TU0laRV9UX01BWDsKKyAgICBQeV9zc2l6ZV90IHJlczsKIAotICAgIGlmICghc3RyaW5nbGliX3BhcnNlX2FyZ3NfZmluZHMoImZpbmQvcmZpbmQvaW5kZXgvcmluZGV4IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MsICZzdWJvYmosICZzdGFydCwgJmVuZCkpCisgICAgaWYgKCFzdHJpbmdsaWJfcGFyc2VfYXJnc19maW5kc19ieXRlKCJmaW5kL3JmaW5kL2luZGV4L3JpbmRleCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MsICZzdWJvYmosICZieXRlLCAmc3RhcnQsICZlbmQpKQogICAgICAgICByZXR1cm4gLTI7CiAKLSAgICBpZiAoUHlCeXRlc19DaGVjayhzdWJvYmopKSB7Ci0gICAgICAgIHN1YiA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHN1Ym9iaik7Ci0gICAgICAgIHN1Yl9sZW4gPSBQeUJ5dGVzX0dFVF9TSVpFKHN1Ym9iaik7CisgICAgaWYgKHN1Ym9iaikgeworICAgICAgICBpZiAoX2dldGJ1ZmZlcihzdWJvYmosICZzdWJidWYpIDwgMCkKKyAgICAgICAgICAgIHJldHVybiAtMjsKKworICAgICAgICBzdWIgPSBzdWJidWYuYnVmOworICAgICAgICBzdWJfbGVuID0gc3ViYnVmLmxlbjsKICAgICB9Ci0gICAgZWxzZSBpZiAoUHlPYmplY3RfQXNDaGFyQnVmZmVyKHN1Ym9iaiwgJnN1YiwgJnN1Yl9sZW4pKQotICAgICAgICAvKiBYWFggLSB0aGUgImV4cGVjdGVkIGEgY2hhcmFjdGVyIGJ1ZmZlciBvYmplY3QiIGlzIHByZXR0eQotICAgICAgICAgICBjb25mdXNpbmcgZm9yIGEgbm9uLWV4cGVydC4gIHJlbWFwIHRvIHNvbWV0aGluZyBlbHNlID8gKi8KLSAgICAgICAgcmV0dXJuIC0yOworICAgIGVsc2UgeworICAgICAgICBzdWIgPSAmYnl0ZTsKKyAgICAgICAgc3ViX2xlbiA9IDE7CisgICAgfQogCiAgICAgaWYgKGRpciA+IDApCi0gICAgICAgIHJldHVybiBzdHJpbmdsaWJfZmluZF9zbGljZSgKKyAgICAgICAgcmVzID0gc3RyaW5nbGliX2ZpbmRfc2xpY2UoCiAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmKSwgUHlCeXRlc19HRVRfU0laRShzZWxmKSwKICAgICAgICAgICAgIHN1Yiwgc3ViX2xlbiwgc3RhcnQsIGVuZCk7CiAgICAgZWxzZQotICAgICAgICByZXR1cm4gc3RyaW5nbGliX3JmaW5kX3NsaWNlKAorICAgICAgICByZXMgPSBzdHJpbmdsaWJfcmZpbmRfc2xpY2UoCiAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmKSwgUHlCeXRlc19HRVRfU0laRShzZWxmKSwKICAgICAgICAgICAgIHN1Yiwgc3ViX2xlbiwgc3RhcnQsIGVuZCk7CisKKyAgICBpZiAoc3Vib2JqKQorICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZzdWJidWYpOworCisgICAgcmV0dXJuIHJlczsKIH0KIAogCkBAIC0xNTAyLDIzICsxNDg0LDM4IEBACiAgICAgUHlPYmplY3QgKnN1Yl9vYmo7CiAgICAgY29uc3QgY2hhciAqc3RyID0gUHlCeXRlc19BU19TVFJJTkcoc2VsZiksICpzdWI7CiAgICAgUHlfc3NpemVfdCBzdWJfbGVuOworICAgIGNoYXIgYnl0ZTsKICAgICBQeV9zc2l6ZV90IHN0YXJ0ID0gMCwgZW5kID0gUFlfU1NJWkVfVF9NQVg7CiAKLSAgICBpZiAoIXN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzKCJjb3VudCIsIGFyZ3MsICZzdWJfb2JqLCAmc3RhcnQsICZlbmQpKQorICAgIFB5X2J1ZmZlciB2c3ViOworICAgIFB5T2JqZWN0ICpjb3VudF9vYmo7CisKKyAgICBpZiAoIXN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzX2J5dGUoImNvdW50IiwgYXJncywgJnN1Yl9vYmosICZieXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnQsICZlbmQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGlmIChQeUJ5dGVzX0NoZWNrKHN1Yl9vYmopKSB7Ci0gICAgICAgIHN1YiA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHN1Yl9vYmopOwotICAgICAgICBzdWJfbGVuID0gUHlCeXRlc19HRVRfU0laRShzdWJfb2JqKTsKKyAgICBpZiAoc3ViX29iaikgeworICAgICAgICBpZiAoX2dldGJ1ZmZlcihzdWJfb2JqLCAmdnN1YikgPCAwKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAgICAgc3ViID0gdnN1Yi5idWY7CisgICAgICAgIHN1Yl9sZW4gPSB2c3ViLmxlbjsKICAgICB9Ci0gICAgZWxzZSBpZiAoUHlPYmplY3RfQXNDaGFyQnVmZmVyKHN1Yl9vYmosICZzdWIsICZzdWJfbGVuKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgZWxzZSB7CisgICAgICAgIHN1YiA9ICZieXRlOworICAgICAgICBzdWJfbGVuID0gMTsKKyAgICB9CiAKICAgICBBREpVU1RfSU5ESUNFUyhzdGFydCwgZW5kLCBQeUJ5dGVzX0dFVF9TSVpFKHNlbGYpKTsKIAotICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3QoCisgICAgY291bnRfb2JqID0gUHlMb25nX0Zyb21Tc2l6ZV90KAogICAgICAgICBzdHJpbmdsaWJfY291bnQoc3RyICsgc3RhcnQsIGVuZCAtIHN0YXJ0LCBzdWIsIHN1Yl9sZW4sIFBZX1NTSVpFX1RfTUFYKQogICAgICAgICApOworCisgICAgaWYgKHN1Yl9vYmopCisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnZzdWIpOworCisgICAgcmV0dXJuIGNvdW50X29iajsKIH0KIAogCkBAIC0yMzI3LDExICsyMzI0LDEzIEBACiBpcyBnaXZlbiBhbmQgdHJ1ZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotYnl0ZXNfc3BsaXRsaW5lcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCitieXRlc19zcGxpdGxpbmVzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiB7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJrZWVwZW5kcyIsIDB9OwogICAgIGludCBrZWVwZW5kcyA9IDA7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxpOnNwbGl0bGluZXMiLCAma2VlcGVuZHMpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8aTpzcGxpdGxpbmVzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZrZWVwZW5kcykpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgcmV0dXJuIHN0cmluZ2xpYl9zcGxpdGxpbmVzKApAQCAtMjM0OSw3ICsyMzQ4LDcgQEAKIEV4YW1wbGU6IGJ5dGVzLmZyb21oZXgoJ0I5IDAxRUYnKSAtPiBiJ1xceGI5XFx4MDFcXHhlZicuIik7CiAKIHN0YXRpYyBpbnQKLWhleF9kaWdpdF90b19pbnQoUHlfVU5JQ09ERSBjKQoraGV4X2RpZ2l0X3RvX2ludChQeV9VQ1M0IGMpCiB7CiAgICAgaWYgKGMgPj0gMTI4KQogICAgICAgICByZXR1cm4gLTE7CkBAIC0yMzY5LDE1ICsyMzY4LDIwIEBACiB7CiAgICAgUHlPYmplY3QgKm5ld3N0cmluZywgKmhleG9iajsKICAgICBjaGFyICpidWY7Ci0gICAgUHlfVU5JQ09ERSAqaGV4OwogICAgIFB5X3NzaXplX3QgaGV4bGVuLCBieXRlc2xlbiwgaSwgajsKICAgICBpbnQgdG9wLCBib3Q7CisgICAgdm9pZCAqZGF0YTsKKyAgICB1bnNpZ25lZCBpbnQga2luZDsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTpmcm9taGV4IiwgJmhleG9iaikpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2soaGV4b2JqKSk7Ci0gICAgaGV4bGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGhleG9iaik7Ci0gICAgaGV4ID0gUHlVbmljb2RlX0FTX1VOSUNPREUoaGV4b2JqKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGhleG9iaikpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChoZXhvYmopOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShoZXhvYmopOworICAgIGhleGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGhleG9iaik7CisKICAgICBieXRlc2xlbiA9IGhleGxlbi8yOyAvKiBUaGlzIG92ZXJlc3RpbWF0ZXMgaWYgdGhlcmUgYXJlIHNwYWNlcyAqLwogICAgIG5ld3N0cmluZyA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgYnl0ZXNsZW4pOwogICAgIGlmICghbmV3c3RyaW5nKQpAQCAtMjM4NSwxMiArMjM4OSwxMiBAQAogICAgIGJ1ZiA9IFB5Qnl0ZXNfQVNfU1RSSU5HKG5ld3N0cmluZyk7CiAgICAgZm9yIChpID0gaiA9IDA7IGkgPCBoZXhsZW47IGkgKz0gMikgewogICAgICAgICAvKiBza2lwIG92ZXIgc3BhY2VzIGluIHRoZSBpbnB1dCAqLwotICAgICAgICB3aGlsZSAoaGV4W2ldID09ICcgJykKKyAgICAgICAgd2hpbGUgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpID09ICcgJykKICAgICAgICAgICAgIGkrKzsKICAgICAgICAgaWYgKGkgPj0gaGV4bGVuKQogICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIHRvcCA9IGhleF9kaWdpdF90b19pbnQoaGV4W2ldKTsKLSAgICAgICAgYm90ID0gaGV4X2RpZ2l0X3RvX2ludChoZXhbaSsxXSk7CisgICAgICAgIHRvcCA9IGhleF9kaWdpdF90b19pbnQoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpOworICAgICAgICBib3QgPSBoZXhfZGlnaXRfdG9faW50KFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkrMSkpOwogICAgICAgICBpZiAodG9wID09IC0xIHx8IGJvdCA9PSAtMSkgewogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vbi1oZXhhZGVjaW1hbCBudW1iZXIgZm91bmQgaW4gIgpAQCAtMjQ3MCwxMCArMjQ3NCwxMCBAQAogICAgIHsicmp1c3QiLCAoUHlDRnVuY3Rpb24pc3RyaW5nbGliX3JqdXN0LCBNRVRIX1ZBUkFSR1MsIHJqdXN0X19kb2NfX30sCiAgICAgeyJycGFydGl0aW9uIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3JwYXJ0aXRpb24sIE1FVEhfTywKICAgICAgcnBhcnRpdGlvbl9fZG9jX199LAotICAgIHsicnNwbGl0IiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3JzcGxpdCwgTUVUSF9WQVJBUkdTLCByc3BsaXRfX2RvY19ffSwKKyAgICB7InJzcGxpdCIsIChQeUNGdW5jdGlvbilieXRlc19yc3BsaXQsIE1FVEhfVkFSQVJHUyB8IE1FVEhfS0VZV09SRFMsIHJzcGxpdF9fZG9jX199LAogICAgIHsicnN0cmlwIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3JzdHJpcCwgTUVUSF9WQVJBUkdTLCByc3RyaXBfX2RvY19ffSwKLSAgICB7InNwbGl0IiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3NwbGl0LCBNRVRIX1ZBUkFSR1MsIHNwbGl0X19kb2NfX30sCi0gICAgeyJzcGxpdGxpbmVzIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3NwbGl0bGluZXMsIE1FVEhfVkFSQVJHUywKKyAgICB7InNwbGl0IiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3NwbGl0LCBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLCBzcGxpdF9fZG9jX199LAorICAgIHsic3BsaXRsaW5lcyIsIChQeUNGdW5jdGlvbilieXRlc19zcGxpdGxpbmVzLCBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLAogICAgICBzcGxpdGxpbmVzX19kb2NfX30sCiAgICAgeyJzdGFydHN3aXRoIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3N0YXJ0c3dpdGgsIE1FVEhfVkFSQVJHUywKICAgICAgc3RhcnRzd2l0aF9fZG9jX199LApAQCAtMjkzMSw3ICsyOTM1LDcgQEAKICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBsbGVuID0gUHlVbmljb2RlX0dldFNpemUocmVzdWx0KTsKKyAgICBsbGVuID0gUHlVbmljb2RlX0dldExlbmd0aChyZXN1bHQpOwogICAgIGlmIChsbGVuID4gSU5UX01BWCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpbmcgdG9vIGxhcmdlIGluIF9QeUJ5dGVzX0Zvcm1hdExvbmciKTsKZGlmZiAtLWdpdCBhL09iamVjdHMvY2xhc3NvYmplY3QuYyBiL09iamVjdHMvY2xhc3NvYmplY3QuYwppbmRleCA2ZGY5MzBmLi4wOWI5NWJmIDEwMDY0NAotLS0gYS9PYmplY3RzL2NsYXNzb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9jbGFzc29iamVjdC5jCkBAIC0xNCw2ICsxNCw4IEBACiAjZGVmaW5lIFB5TWV0aG9kX01BWEZSRUVMSVNUIDI1NgogI2VuZGlmCiAKK19QeV9JREVOVElGSUVSKF9fbmFtZV9fKTsKKwogUHlPYmplY3QgKgogUHlNZXRob2RfRnVuY3Rpb24oUHlPYmplY3QgKmltKQogewpAQCAtMTkwLDggKzE5Miw3IEBACiAgICAgICAgICFQeU1ldGhvZF9DaGVjayhzZWxmKSB8fAogICAgICAgICAhUHlNZXRob2RfQ2hlY2sob3RoZXIpKQogICAgIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgfQogICAgIGEgPSAoUHlNZXRob2RPYmplY3QgKilzZWxmOwogICAgIGIgPSAoUHlNZXRob2RPYmplY3QgKilvdGhlcjsKQEAgLTIyNyw3ICsyMjgsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBmdW5jbmFtZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZnVuYywgIl9fbmFtZV9fIik7CisgICAgZnVuY25hbWUgPSBfUHlPYmplY3RfR2V0QXR0cklkKGZ1bmMsICZQeUlkX19fbmFtZV9fKTsKICAgICBpZiAoZnVuY25hbWUgPT0gTlVMTCkgewogICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yNDEsNyArMjQyLDcgQEAKICAgICBpZiAoa2xhc3MgPT0gTlVMTCkKICAgICAgICAga2xhc3NuYW1lID0gTlVMTDsKICAgICBlbHNlIHsKLSAgICAgICAga2xhc3NuYW1lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhrbGFzcywgIl9fbmFtZV9fIik7CisgICAgICAgIGtsYXNzbmFtZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoa2xhc3MsICZQeUlkX19fbmFtZV9fKTsKICAgICAgICAgaWYgKGtsYXNzbmFtZSA9PSBOVUxMKSB7CiAgICAgICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNTE2LDggKzUxNyw3IEBACiAgICAgICAgICFQeUluc3RhbmNlTWV0aG9kX0NoZWNrKHNlbGYpIHx8CiAgICAgICAgICFQeUluc3RhbmNlTWV0aG9kX0NoZWNrKG90aGVyKSkKICAgICB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KICAgICBhID0gKFB5SW5zdGFuY2VNZXRob2RPYmplY3QgKilzZWxmOwogICAgIGIgPSAoUHlJbnN0YW5jZU1ldGhvZE9iamVjdCAqKW90aGVyOwpAQCAtNTQ0LDcgKzU0NCw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGZ1bmNuYW1lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmdW5jLCAiX19uYW1lX18iKTsKKyAgICBmdW5jbmFtZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoZnVuYywgJlB5SWRfX19uYW1lX18pOwogICAgIGlmIChmdW5jbmFtZSA9PSBOVUxMKSB7CiAgICAgICAgIGlmICghUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKZGlmZiAtLWdpdCBhL09iamVjdHMvY29kZW9iamVjdC5jIGIvT2JqZWN0cy9jb2Rlb2JqZWN0LmMKaW5kZXggYmI5MzhlYS4uNTUwZTI4NCAxMDA2NDQKLS0tIGEvT2JqZWN0cy9jb2Rlb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9jb2Rlb2JqZWN0LmMKQEAgLTgsMTkgKzgsMjQgQEAKIC8qIGFsbF9uYW1lX2NoYXJzKHMpOiB0cnVlIGlmZiBhbGwgY2hhcnMgaW4gcyBhcmUgdmFsaWQgTkFNRV9DSEFSUyAqLwogCiBzdGF0aWMgaW50Ci1hbGxfbmFtZV9jaGFycyhQeV9VTklDT0RFICpzKQorYWxsX25hbWVfY2hhcnMoUHlPYmplY3QgKm8pCiB7CiAgICAgc3RhdGljIGNoYXIgb2tfbmFtZV9jaGFyWzI1Nl07CiAgICAgc3RhdGljIHVuc2lnbmVkIGNoYXIgKm5hbWVfY2hhcnMgPSAodW5zaWduZWQgY2hhciAqKU5BTUVfQ0hBUlM7CisgICAgUHlVbmljb2RlT2JqZWN0ICp1ID0gKFB5VW5pY29kZU9iamVjdCAqKW87CisgICAgY29uc3QgdW5zaWduZWQgY2hhciAqczsKKworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKG8pIHx8IFB5VW5pY29kZV9SRUFEWSh1KSA9PSAtMSB8fAorICAgICAgICBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUodSkgPj0gMTI4KQorICAgICAgICByZXR1cm4gMDsKIAogICAgIGlmIChva19uYW1lX2NoYXJbKm5hbWVfY2hhcnNdID09IDApIHsKICAgICAgICAgdW5zaWduZWQgY2hhciAqcDsKICAgICAgICAgZm9yIChwID0gbmFtZV9jaGFyczsgKnA7IHArKykKICAgICAgICAgICAgIG9rX25hbWVfY2hhclsqcF0gPSAxOwogICAgIH0KKyAgICBzID0gUHlVbmljb2RlXzFCWVRFX0RBVEEodSk7CiAgICAgd2hpbGUgKCpzKSB7Ci0gICAgICAgIGlmICgqcyA+PSAxMjgpCi0gICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgaWYgKG9rX25hbWVfY2hhclsqcysrXSA9PSAwKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQpAQCAtNTEsNyArNTYsOCBAQAogICAgICAgICAgICBQeU9iamVjdCAqbG5vdGFiKQogewogICAgIFB5Q29kZU9iamVjdCAqY287Ci0gICAgUHlfc3NpemVfdCBpOworICAgIHVuc2lnbmVkIGNoYXIgKmNlbGwyYXJnID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGksIG5fY2VsbHZhcnM7CiAKICAgICAvKiBDaGVjayBhcmd1bWVudCB0eXBlcyAqLwogICAgIGlmIChhcmdjb3VudCA8IDAgfHwga3dvbmx5YXJnY291bnQgPCAwIHx8IG5sb2NhbHMgPCAwIHx8CkBAIC02OCw0OCArNzQsNzkgQEAKICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KKyAgICBuX2NlbGx2YXJzID0gUHlUdXBsZV9HRVRfU0laRShjZWxsdmFycyk7CiAgICAgaW50ZXJuX3N0cmluZ3MobmFtZXMpOwogICAgIGludGVybl9zdHJpbmdzKHZhcm5hbWVzKTsKICAgICBpbnRlcm5fc3RyaW5ncyhmcmVldmFycyk7CiAgICAgaW50ZXJuX3N0cmluZ3MoY2VsbHZhcnMpOwogICAgIC8qIEludGVybiBzZWxlY3RlZCBzdHJpbmcgY29uc3RhbnRzICovCi0gICAgZm9yIChpID0gUHlUdXBsZV9TaXplKGNvbnN0cyk7IC0taSA+PSAwOyApIHsKKyAgICBmb3IgKGkgPSBQeVR1cGxlX0dFVF9TSVpFKGNvbnN0cyk7IC0taSA+PSAwOyApIHsKICAgICAgICAgUHlPYmplY3QgKnYgPSBQeVR1cGxlX0dldEl0ZW0oY29uc3RzLCBpKTsKLSAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodikpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaWYgKCFhbGxfbmFtZV9jaGFycyhQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSkpCisgICAgICAgIGlmICghYWxsX25hbWVfY2hhcnModikpCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgUHlVbmljb2RlX0ludGVybkluUGxhY2UoJlB5VHVwbGVfR0VUX0lURU0oY29uc3RzLCBpKSk7CiAgICAgfQotICAgIGNvID0gUHlPYmplY3RfTkVXKFB5Q29kZU9iamVjdCwgJlB5Q29kZV9UeXBlKTsKLSAgICBpZiAoY28gIT0gTlVMTCkgewotICAgICAgICBjby0+Y29fYXJnY291bnQgPSBhcmdjb3VudDsKLSAgICAgICAgY28tPmNvX2t3b25seWFyZ2NvdW50ID0ga3dvbmx5YXJnY291bnQ7Ci0gICAgICAgIGNvLT5jb19ubG9jYWxzID0gbmxvY2FsczsKLSAgICAgICAgY28tPmNvX3N0YWNrc2l6ZSA9IHN0YWNrc2l6ZTsKLSAgICAgICAgY28tPmNvX2ZsYWdzID0gZmxhZ3M7Ci0gICAgICAgIFB5X0lOQ1JFRihjb2RlKTsKLSAgICAgICAgY28tPmNvX2NvZGUgPSBjb2RlOwotICAgICAgICBQeV9JTkNSRUYoY29uc3RzKTsKLSAgICAgICAgY28tPmNvX2NvbnN0cyA9IGNvbnN0czsKLSAgICAgICAgUHlfSU5DUkVGKG5hbWVzKTsKLSAgICAgICAgY28tPmNvX25hbWVzID0gbmFtZXM7Ci0gICAgICAgIFB5X0lOQ1JFRih2YXJuYW1lcyk7Ci0gICAgICAgIGNvLT5jb192YXJuYW1lcyA9IHZhcm5hbWVzOwotICAgICAgICBQeV9JTkNSRUYoZnJlZXZhcnMpOwotICAgICAgICBjby0+Y29fZnJlZXZhcnMgPSBmcmVldmFyczsKLSAgICAgICAgUHlfSU5DUkVGKGNlbGx2YXJzKTsKLSAgICAgICAgY28tPmNvX2NlbGx2YXJzID0gY2VsbHZhcnM7Ci0gICAgICAgIFB5X0lOQ1JFRihmaWxlbmFtZSk7Ci0gICAgICAgIGNvLT5jb19maWxlbmFtZSA9IGZpbGVuYW1lOwotICAgICAgICBQeV9JTkNSRUYobmFtZSk7Ci0gICAgICAgIGNvLT5jb19uYW1lID0gbmFtZTsKLSAgICAgICAgY28tPmNvX2ZpcnN0bGluZW5vID0gZmlyc3RsaW5lbm87Ci0gICAgICAgIFB5X0lOQ1JFRihsbm90YWIpOwotICAgICAgICBjby0+Y29fbG5vdGFiID0gbG5vdGFiOwotICAgICAgICBjby0+Y29fem9tYmllZnJhbWUgPSBOVUxMOwotICAgICAgICBjby0+Y29fd2Vha3JlZmxpc3QgPSBOVUxMOworICAgIC8qIENyZWF0ZSBtYXBwaW5nIGJldHdlZW4gY2VsbHMgYW5kIGFyZ3VtZW50cyBpZiBuZWVkZWQuICovCisgICAgaWYgKG5fY2VsbHZhcnMpIHsKKyAgICAgICAgUHlfc3NpemVfdCB0b3RhbF9hcmdzID0gYXJnY291bnQgKyBrd29ubHlhcmdjb3VudCArCisgICAgICAgICAgICAoKGZsYWdzICYgQ09fVkFSQVJHUykgIT0gMCkgKyAoKGZsYWdzICYgQ09fVkFSS0VZV09SRFMpICE9IDApOworICAgICAgICBQeV9zc2l6ZV90IGFsbG9jX3NpemUgPSBzaXplb2YodW5zaWduZWQgY2hhcikgKiBuX2NlbGx2YXJzOworICAgICAgICBpbnQgdXNlZF9jZWxsMmFyZyA9IDA7CisgICAgICAgIGNlbGwyYXJnID0gUHlNZW1fTUFMTE9DKGFsbG9jX3NpemUpOworICAgICAgICBpZiAoY2VsbDJhcmcgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBtZW1zZXQoY2VsbDJhcmcsIENPX0NFTExfTk9UX0FOX0FSRywgYWxsb2Nfc2l6ZSk7CisgICAgICAgIC8qIEZpbmQgY2VsbHMgd2hpY2ggYXJlIGFsc28gYXJndW1lbnRzLiAqLworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbl9jZWxsdmFyczsgaSsrKSB7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGo7CisgICAgICAgICAgICBQeU9iamVjdCAqY2VsbCA9IFB5VHVwbGVfR0VUX0lURU0oY2VsbHZhcnMsIGkpOworICAgICAgICAgICAgZm9yIChqID0gMDsgaiA8IHRvdGFsX2FyZ3M7IGorKykgeworICAgICAgICAgICAgICAgIFB5T2JqZWN0ICphcmcgPSBQeVR1cGxlX0dFVF9JVEVNKHZhcm5hbWVzLCBqKTsKKyAgICAgICAgICAgICAgICBpZiAoIVB5VW5pY29kZV9Db21wYXJlKGNlbGwsIGFyZykpIHsKKyAgICAgICAgICAgICAgICAgICAgY2VsbDJhcmdbaV0gPSBqOworICAgICAgICAgICAgICAgICAgICB1c2VkX2NlbGwyYXJnID0gMTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmICghdXNlZF9jZWxsMmFyZykgeworICAgICAgICAgICAgUHlNZW1fRlJFRShjZWxsMmFyZyk7CisgICAgICAgICAgICBjZWxsMmFyZyA9IE5VTEw7CisgICAgICAgIH0KICAgICB9CisgICAgY28gPSBQeU9iamVjdF9ORVcoUHlDb2RlT2JqZWN0LCAmUHlDb2RlX1R5cGUpOworICAgIGlmIChjbyA9PSBOVUxMKSB7CisgICAgICAgIGlmIChjZWxsMmFyZykKKyAgICAgICAgICAgIFB5TWVtX0ZSRUUoY2VsbDJhcmcpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgY28tPmNvX2FyZ2NvdW50ID0gYXJnY291bnQ7CisgICAgY28tPmNvX2t3b25seWFyZ2NvdW50ID0ga3dvbmx5YXJnY291bnQ7CisgICAgY28tPmNvX25sb2NhbHMgPSBubG9jYWxzOworICAgIGNvLT5jb19zdGFja3NpemUgPSBzdGFja3NpemU7CisgICAgY28tPmNvX2ZsYWdzID0gZmxhZ3M7CisgICAgUHlfSU5DUkVGKGNvZGUpOworICAgIGNvLT5jb19jb2RlID0gY29kZTsKKyAgICBQeV9JTkNSRUYoY29uc3RzKTsKKyAgICBjby0+Y29fY29uc3RzID0gY29uc3RzOworICAgIFB5X0lOQ1JFRihuYW1lcyk7CisgICAgY28tPmNvX25hbWVzID0gbmFtZXM7CisgICAgUHlfSU5DUkVGKHZhcm5hbWVzKTsKKyAgICBjby0+Y29fdmFybmFtZXMgPSB2YXJuYW1lczsKKyAgICBQeV9JTkNSRUYoZnJlZXZhcnMpOworICAgIGNvLT5jb19mcmVldmFycyA9IGZyZWV2YXJzOworICAgIFB5X0lOQ1JFRihjZWxsdmFycyk7CisgICAgY28tPmNvX2NlbGx2YXJzID0gY2VsbHZhcnM7CisgICAgY28tPmNvX2NlbGwyYXJnID0gY2VsbDJhcmc7CisgICAgUHlfSU5DUkVGKGZpbGVuYW1lKTsKKyAgICBjby0+Y29fZmlsZW5hbWUgPSBmaWxlbmFtZTsKKyAgICBQeV9JTkNSRUYobmFtZSk7CisgICAgY28tPmNvX25hbWUgPSBuYW1lOworICAgIGNvLT5jb19maXJzdGxpbmVubyA9IGZpcnN0bGluZW5vOworICAgIFB5X0lOQ1JFRihsbm90YWIpOworICAgIGNvLT5jb19sbm90YWIgPSBsbm90YWI7CisgICAgY28tPmNvX3pvbWJpZWZyYW1lID0gTlVMTDsKKyAgICBjby0+Y29fd2Vha3JlZmxpc3QgPSBOVUxMOwogICAgIHJldHVybiBjbzsKIH0KIApAQCAtMjEyLDkgKzI0OSw3IEBACiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGl0ZW0gPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoCi0gICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoaXRlbSksCi0gICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKGl0ZW0pKTsKKyAgICAgICAgICAgIGl0ZW0gPSBfUHlVbmljb2RlX0NvcHkoaXRlbSk7CiAgICAgICAgICAgICBpZiAoaXRlbSA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKG5ld3R1cGxlKTsKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTMzMCw2ICszNjUsOCBAQAogICAgIFB5X1hERUNSRUYoY28tPmNvX2ZpbGVuYW1lKTsKICAgICBQeV9YREVDUkVGKGNvLT5jb19uYW1lKTsKICAgICBQeV9YREVDUkVGKGNvLT5jb19sbm90YWIpOworICAgIGlmIChjby0+Y29fY2VsbDJhcmcgIT0gTlVMTCkKKyAgICAgICAgUHlNZW1fRlJFRShjby0+Y29fY2VsbDJhcmcpOwogICAgIGlmIChjby0+Y29fem9tYmllZnJhbWUgIT0gTlVMTCkKICAgICAgICAgUHlPYmplY3RfR0NfRGVsKGNvLT5jb196b21iaWVmcmFtZSk7CiAgICAgaWYgKGNvLT5jb193ZWFrcmVmbGlzdCAhPSBOVUxMKQpAQCAtMzY2LDggKzQwMyw3IEBACiAgICAgaWYgKChvcCAhPSBQeV9FUSAmJiBvcCAhPSBQeV9ORSkgfHwKICAgICAgICAgIVB5Q29kZV9DaGVjayhzZWxmKSB8fAogICAgICAgICAhUHlDb2RlX0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiAKICAgICBjbyA9IChQeUNvZGVPYmplY3QgKilzZWxmOwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9jb21wbGV4b2JqZWN0LmMgYi9PYmplY3RzL2NvbXBsZXhvYmplY3QuYwppbmRleCBlMjQ3YmE5Li5iNzNkYzRiIDEwMDY0NAotLS0gYS9PYmplY3RzL2NvbXBsZXhvYmplY3QuYworKysgYi9PYmplY3RzL2NvbXBsZXhvYmplY3QuYwpAQCAtMjY1LDkgKzI2NSw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogdHJ5X2NvbXBsZXhfc3BlY2lhbF9tZXRob2QoUHlPYmplY3QgKm9wKSB7CiAgICAgUHlPYmplY3QgKmY7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpjb21wbGV4c3RyOworICAgIF9QeV9JREVOVElGSUVSKF9fY29tcGxleF9fKTsKIAotICAgIGYgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChvcCwgIl9fY29tcGxleF9fIiwgJmNvbXBsZXhzdHIpOworICAgIGYgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChvcCwgJlB5SWRfX19jb21wbGV4X18pOwogICAgIGlmIChmKSB7CiAgICAgICAgIFB5T2JqZWN0ICpyZXMgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKGYsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYoZik7CkBAIC0zMzAsMTIgKzMzMCwxMCBAQAogICAgIGludCBwcmVjaXNpb24gPSAwOwogICAgIGNoYXIgZm9ybWF0X2NvZGUgPSAncic7CiAgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7Ci0gICAgUHlfc3NpemVfdCBsZW47CiAKICAgICAvKiBJZiB0aGVzZSBhcmUgbm9uLU5VTEwsIHRoZXknbGwgbmVlZCB0byBiZSBmcmVlZC4gKi8KICAgICBjaGFyICpwcmUgPSBOVUxMOwogICAgIGNoYXIgKmltID0gTlVMTDsKLSAgICBjaGFyICpidWYgPSBOVUxMOwogCiAgICAgLyogVGhlc2UgZG8gbm90IG5lZWQgdG8gYmUgZnJlZWQuIHJlIGlzIGVpdGhlciBhbiBhbGlhcwogICAgICAgIGZvciBwcmUgb3IgYSBwb2ludGVyIHRvIGEgY29uc3RhbnQuICBsZWFkIGFuZCB0YWlsCkBAIC0zNzQsMjAgKzM3MiwxMCBAQAogICAgICAgICBsZWFkID0gIigiOwogICAgICAgICB0YWlsID0gIikiOwogICAgIH0KLSAgICAvKiBBbGxvYyB0aGUgZmluYWwgYnVmZmVyLiBBZGQgb25lIGZvciB0aGUgImoiIGluIHRoZSBmb3JtYXQgc3RyaW5nLAotICAgICAgIGFuZCBvbmUgZm9yIHRoZSB0cmFpbGluZyB6ZXJvIGJ5dGUuICovCi0gICAgbGVuID0gc3RybGVuKGxlYWQpICsgc3RybGVuKHJlKSArIHN0cmxlbihpbSkgKyBzdHJsZW4odGFpbCkgKyAyOwotICAgIGJ1ZiA9IFB5TWVtX01hbGxvYyhsZW4pOwotICAgIGlmICghYnVmKSB7Ci0gICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0gICAgUHlPU19zbnByaW50ZihidWYsIGxlbiwgIiVzJXMlc2olcyIsIGxlYWQsIHJlLCBpbSwgdGFpbCk7Ci0gICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoYnVmKTsKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJXMlcyVzaiVzIiwgbGVhZCwgcmUsIGltLCB0YWlsKTsKICAgZG9uZToKICAgICBQeU1lbV9GcmVlKGltKTsKICAgICBQeU1lbV9GcmVlKHByZSk7Ci0gICAgUHlNZW1fRnJlZShidWYpOwogCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTY2Miw4ICs2NTAsNyBAQAogICAgIHJldHVybiByZXM7CiAKIFVuaW1wbGVtZW50ZWQ6Ci0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtNzE1LDkgKzcwMiw4IEBACiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6X19mb3JtYXRfXyIsICZmb3JtYXRfc3BlYykpCiAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmV0dXJuIF9QeUNvbXBsZXhfRm9ybWF0QWR2YW5jZWQoc2VsZiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShmb3JtYXRfc3BlYyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKGZvcm1hdF9zcGVjKSk7CisgICAgcmV0dXJuIF9QeUNvbXBsZXhfRm9ybWF0QWR2YW5jZWQoc2VsZiwgZm9ybWF0X3NwZWMsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoZm9ybWF0X3NwZWMpKTsKIH0KIAogI2lmIDAKQEAgLTc2OCwyMCArNzU0LDEwIEBACiAgICAgUHlfc3NpemVfdCBsZW47CiAKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHYpKSB7Ci0gICAgICAgIFB5X3NzaXplX3QgaSwgYnVmbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHYpOwotICAgICAgICBQeV9VTklDT0RFICpidWZwdHI7Ci0gICAgICAgIHNfYnVmZmVyID0gUHlVbmljb2RlX1RyYW5zZm9ybURlY2ltYWxUb0FTQ0lJKAotICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUodiksIGJ1Zmxlbik7CisgICAgICAgIHNfYnVmZmVyID0gX1B5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsQW5kU3BhY2VUb0FTQ0lJKHYpOwogICAgICAgICBpZiAoc19idWZmZXIgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAvKiBSZXBsYWNlIG5vbi1BU0NJSSB3aGl0ZXNwYWNlIHdpdGggJyAnICovCi0gICAgICAgIGJ1ZnB0ciA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNfYnVmZmVyKTsKLSAgICAgICAgZm9yIChpID0gMDsgaSA8IGJ1ZmxlbjsgaSsrKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIGNoID0gYnVmcHRyW2ldOwotICAgICAgICAgICAgaWYgKGNoID4gMTI3ICYmIFB5X1VOSUNPREVfSVNTUEFDRShjaCkpCi0gICAgICAgICAgICAgICAgYnVmcHRyW2ldID0gJyAnOwotICAgICAgICB9Ci0gICAgICAgIHMgPSBfUHlVbmljb2RlX0FzU3RyaW5nQW5kU2l6ZShzX2J1ZmZlciwgJmxlbik7CisgICAgICAgIHMgPSBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZShzX2J1ZmZlciwgJmxlbik7CiAgICAgICAgIGlmIChzID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KZGlmZiAtLWdpdCBhL09iamVjdHMvZGVzY3JvYmplY3QuYyBiL09iamVjdHMvZGVzY3JvYmplY3QuYwppbmRleCBhNzg2YmFlLi5lY2YzNzJhIDEwMDY0NAotLS0gYS9PYmplY3RzL2Rlc2Nyb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9kZXNjcm9iamVjdC5jCkBAIC05LDYgKzksNyBAQAogICAgIF9QeU9iamVjdF9HQ19VTlRSQUNLKGRlc2NyKTsKICAgICBQeV9YREVDUkVGKGRlc2NyLT5kX3R5cGUpOwogICAgIFB5X1hERUNSRUYoZGVzY3ItPmRfbmFtZSk7CisgICAgUHlfWERFQ1JFRihkZXNjci0+ZF9xdWFsbmFtZSk7CiAgICAgUHlPYmplY3RfR0NfRGVsKGRlc2NyKTsKIH0KIApAQCAtMzIxLDYgKzMyMiw0NCBAQAogICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhkZXNjci0+ZF9tZXRob2QtPm1sX2RvYyk7CiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCitjYWxjdWxhdGVfcXVhbG5hbWUoUHlEZXNjck9iamVjdCAqZGVzY3IpCit7CisgICAgUHlPYmplY3QgKnR5cGVfcXVhbG5hbWUsICpyZXM7CisgICAgX1B5X0lERU5USUZJRVIoX19xdWFsbmFtZV9fKTsKKworICAgIGlmIChkZXNjci0+ZF9uYW1lID09IE5VTEwgfHwgIVB5VW5pY29kZV9DaGVjayhkZXNjci0+ZF9uYW1lKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIjxkZXNjcmlwdG9yPi5fX25hbWVfXyBpcyBub3QgYSB1bmljb2RlIG9iamVjdCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICB0eXBlX3F1YWxuYW1lID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKilkZXNjci0+ZF90eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZQeUlkX19fcXVhbG5hbWVfXyk7CisgICAgaWYgKHR5cGVfcXVhbG5hbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh0eXBlX3F1YWxuYW1lKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiPGRlc2NyaXB0b3I+Ll9fb2JqY2xhc3NfXy4iCisgICAgICAgICAgICAgICAgICAgICAgICAiX19xdWFsbmFtZV9fIGlzIG5vdCBhIHVuaWNvZGUgb2JqZWN0Iik7CisgICAgICAgIFB5X1hERUNSRUYodHlwZV9xdWFsbmFtZSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJlcyA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlUy4lUyIsIHR5cGVfcXVhbG5hbWUsIGRlc2NyLT5kX25hbWUpOworICAgIFB5X0RFQ1JFRih0eXBlX3F1YWxuYW1lKTsKKyAgICByZXR1cm4gcmVzOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorZGVzY3JfZ2V0X3F1YWxuYW1lKFB5RGVzY3JPYmplY3QgKmRlc2NyKQoreworICAgIGlmIChkZXNjci0+ZF9xdWFsbmFtZSA9PSBOVUxMKQorICAgICAgICBkZXNjci0+ZF9xdWFsbmFtZSA9IGNhbGN1bGF0ZV9xdWFsbmFtZShkZXNjcik7CisgICAgUHlfWElOQ1JFRihkZXNjci0+ZF9xdWFsbmFtZSk7CisgICAgcmV0dXJuIGRlc2NyLT5kX3F1YWxuYW1lOworfQorCiBzdGF0aWMgUHlNZW1iZXJEZWYgZGVzY3JfbWVtYmVyc1tdID0gewogICAgIHsiX19vYmpjbGFzc19fIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5RGVzY3JPYmplY3QsIGRfdHlwZSksIFJFQURPTkxZfSwKICAgICB7Il9fbmFtZV9fIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5RGVzY3JPYmplY3QsIGRfbmFtZSksIFJFQURPTkxZfSwKQEAgLTMyOSw2ICszNjgsNyBAQAogCiBzdGF0aWMgUHlHZXRTZXREZWYgbWV0aG9kX2dldHNldFtdID0gewogICAgIHsiX19kb2NfXyIsIChnZXR0ZXIpbWV0aG9kX2dldF9kb2N9LAorICAgIHsiX19xdWFsbmFtZV9fIiwgKGdldHRlcilkZXNjcl9nZXRfcXVhbG5hbWV9LAogICAgIHswfQogfTsKIApAQCAtMzQ0LDYgKzM4NCw3IEBACiAKIHN0YXRpYyBQeUdldFNldERlZiBtZW1iZXJfZ2V0c2V0W10gPSB7CiAgICAgeyJfX2RvY19fIiwgKGdldHRlciltZW1iZXJfZ2V0X2RvY30sCisgICAgeyJfX3F1YWxuYW1lX18iLCAoZ2V0dGVyKWRlc2NyX2dldF9xdWFsbmFtZX0sCiAgICAgezB9CiB9OwogCkBAIC0zNTksNiArNDAwLDcgQEAKIAogc3RhdGljIFB5R2V0U2V0RGVmIGdldHNldF9nZXRzZXRbXSA9IHsKICAgICB7Il9fZG9jX18iLCAoZ2V0dGVyKWdldHNldF9nZXRfZG9jfSwKKyAgICB7Il9fcXVhbG5hbWVfXyIsIChnZXR0ZXIpZGVzY3JfZ2V0X3F1YWxuYW1lfSwKICAgICB7MH0KIH07CiAKQEAgLTM3NCw2ICs0MTYsNyBAQAogCiBzdGF0aWMgUHlHZXRTZXREZWYgd3JhcHBlcmRlc2NyX2dldHNldFtdID0gewogICAgIHsiX19kb2NfXyIsIChnZXR0ZXIpd3JhcHBlcmRlc2NyX2dldF9kb2N9LAorICAgIHsiX19xdWFsbmFtZV9fIiwgKGdldHRlcilkZXNjcl9nZXRfcXVhbG5hbWV9LAogICAgIHswfQogfTsKIApAQCAtNTg1LDYgKzYyOCw5IEBACiAgICAgICAgICAgICBQeV9ERUNSRUYoZGVzY3IpOwogICAgICAgICAgICAgZGVzY3IgPSBOVUxMOwogICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgZGVzY3ItPmRfcXVhbG5hbWUgPSBOVUxMOworICAgICAgICB9CiAgICAgfQogICAgIHJldHVybiBkZXNjcjsKIH0KQEAgLTcwMywzNCArNzQ5LDM5IEBACiBwcm94eV9nZXQocHJveHlvYmplY3QgKnBwLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBQeU9iamVjdCAqa2V5LCAqZGVmID0gUHlfTm9uZTsKKyAgICBfUHlfSURFTlRJRklFUihnZXQpOwogCiAgICAgaWYgKCFQeUFyZ19VbnBhY2tUdXBsZShhcmdzLCAiZ2V0IiwgMSwgMiwgJmtleSwgJmRlZikpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKHBwLT5kaWN0LCAiZ2V0IiwgIihPTykiLCBrZXksIGRlZik7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocHAtPmRpY3QsICZQeUlkX2dldCwgIihPTykiLCBrZXksIGRlZik7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBwcm94eV9rZXlzKHByb3h5b2JqZWN0ICpwcCkKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChwcC0+ZGljdCwgImtleXMiLCBOVUxMKTsKKyAgICBfUHlfSURFTlRJRklFUihrZXlzKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChwcC0+ZGljdCwgJlB5SWRfa2V5cywgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBwcm94eV92YWx1ZXMocHJveHlvYmplY3QgKnBwKQogewotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKHBwLT5kaWN0LCAidmFsdWVzIiwgTlVMTCk7CisgICAgX1B5X0lERU5USUZJRVIodmFsdWVzKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChwcC0+ZGljdCwgJlB5SWRfdmFsdWVzLCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIHByb3h5X2l0ZW1zKHByb3h5b2JqZWN0ICpwcCkKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChwcC0+ZGljdCwgIml0ZW1zIiwgTlVMTCk7CisgICAgX1B5X0lERU5USUZJRVIoaXRlbXMpOworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHBwLT5kaWN0LCAmUHlJZF9pdGVtcywgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBwcm94eV9jb3B5KHByb3h5b2JqZWN0ICpwcCkKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChwcC0+ZGljdCwgImNvcHkiLCBOVUxMKTsKKyAgICBfUHlfSURFTlRJRklFUihjb3B5KTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChwcC0+ZGljdCwgJlB5SWRfY29weSwgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU1ldGhvZERlZiBwcm94eV9tZXRob2RzW10gPSB7CkBAIC05ODIsOSArMTAzMywxNiBAQAogICAgIH0KIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK3dyYXBwZXJfcXVhbG5hbWUod3JhcHBlcm9iamVjdCAqd3ApCit7CisgICAgcmV0dXJuIGRlc2NyX2dldF9xdWFsbmFtZSgoUHlEZXNjck9iamVjdCAqKXdwLT5kZXNjcik7Cit9CisKIHN0YXRpYyBQeUdldFNldERlZiB3cmFwcGVyX2dldHNldHNbXSA9IHsKICAgICB7Il9fb2JqY2xhc3NfXyIsIChnZXR0ZXIpd3JhcHBlcl9vYmpjbGFzc30sCiAgICAgeyJfX25hbWVfXyIsIChnZXR0ZXIpd3JhcHBlcl9uYW1lfSwKKyAgICB7Il9fcXVhbG5hbWVfXyIsIChnZXR0ZXIpd3JhcHBlcl9xdWFsbmFtZX0sCiAgICAgeyJfX2RvY19fIiwgKGdldHRlcil3cmFwcGVyX2RvY30sCiAgICAgezB9CiB9OwpAQCAtMTI5NCw3ICsxMzUyLDggQEAKIAogICAgIC8qIGlmIG5vIGRvY3N0cmluZyBnaXZlbiBhbmQgdGhlIGdldHRlciBoYXMgb25lLCB1c2UgdGhhdCBvbmUgKi8KICAgICBpZiAoKGRvYyA9PSBOVUxMIHx8IGRvYyA9PSBQeV9Ob25lKSAmJiBnZXQgIT0gTlVMTCkgewotICAgICAgICBQeU9iamVjdCAqZ2V0X2RvYyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZ2V0LCAiX19kb2NfXyIpOworICAgICAgICBfUHlfSURFTlRJRklFUihfX2RvY19fKTsKKyAgICAgICAgUHlPYmplY3QgKmdldF9kb2MgPSBfUHlPYmplY3RfR2V0QXR0cklkKGdldCwgJlB5SWRfX19kb2NfXyk7CiAgICAgICAgIGlmIChnZXRfZG9jKSB7CiAgICAgICAgICAgICBpZiAoUHlfVFlQRShzZWxmKSA9PSAmUHlQcm9wZXJ0eV9UeXBlKSB7CiAgICAgICAgICAgICAgICAgUHlfWERFQ1JFRihwcm9wLT5wcm9wX2RvYyk7CkBAIC0xMzA1LDcgKzEzNjQsNyBAQAogICAgICAgICAgICAgICAgIGluIGRpY3Qgb2YgdGhlIHN1YmNsYXNzIGluc3RhbmNlIGluc3RlYWQsCiAgICAgICAgICAgICAgICAgb3RoZXJ3aXNlIGl0IGdldHMgc2hhZG93ZWQgYnkgX19kb2NfXyBpbiB0aGUKICAgICAgICAgICAgICAgICBjbGFzcydzIGRpY3QuICovCi0gICAgICAgICAgICAgICAgaW50IGVyciA9IFB5T2JqZWN0X1NldEF0dHJTdHJpbmcoc2VsZiwgIl9fZG9jX18iLCBnZXRfZG9jKTsKKyAgICAgICAgICAgICAgICBpbnQgZXJyID0gX1B5T2JqZWN0X1NldEF0dHJJZChzZWxmLCAmUHlJZF9fX2RvY19fLCBnZXRfZG9jKTsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoZ2V0X2RvYyk7CiAgICAgICAgICAgICAgICAgaWYgKGVyciA8IDApCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTsKQEAgLTEzMjMsNiArMTM4Miw0MyBAQAogICAgIHJldHVybiAwOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorcHJvcGVydHlfZ2V0X19faXNhYnN0cmFjdG1ldGhvZF9fKHByb3BlcnR5b2JqZWN0ICpwcm9wLCB2b2lkICpjbG9zdXJlKQoreworICAgIGludCByZXMgPSBfUHlPYmplY3RfSXNBYnN0cmFjdChwcm9wLT5wcm9wX2dldCk7CisgICAgaWYgKHJlcyA9PSAtMSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZSBpZiAocmVzKSB7CisgICAgICAgIFB5X1JFVFVSTl9UUlVFOworICAgIH0KKworICAgIHJlcyA9IF9QeU9iamVjdF9Jc0Fic3RyYWN0KHByb3AtPnByb3Bfc2V0KTsKKyAgICBpZiAocmVzID09IC0xKSB7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIGlmIChyZXMpIHsKKyAgICAgICAgUHlfUkVUVVJOX1RSVUU7CisgICAgfQorCisgICAgcmVzID0gX1B5T2JqZWN0X0lzQWJzdHJhY3QocHJvcC0+cHJvcF9kZWwpOworICAgIGlmIChyZXMgPT0gLTEpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGVsc2UgaWYgKHJlcykgeworICAgICAgICBQeV9SRVRVUk5fVFJVRTsKKyAgICB9CisgICAgUHlfUkVUVVJOX0ZBTFNFOworfQorCitzdGF0aWMgUHlHZXRTZXREZWYgcHJvcGVydHlfZ2V0c2V0bGlzdFtdID0geworICAgIHsiX19pc2Fic3RyYWN0bWV0aG9kX18iLAorICAgICAoZ2V0dGVyKXByb3BlcnR5X2dldF9fX2lzYWJzdHJhY3RtZXRob2RfXywgTlVMTCwKKyAgICAgTlVMTCwKKyAgICAgTlVMTH0sCisgICAge05VTEx9IC8qIFNlbnRpbmVsICovCit9OworCiBQeURvY19TVFJWQVIocHJvcGVydHlfZG9jLAogInByb3BlcnR5KGZnZXQ9Tm9uZSwgZnNldD1Ob25lLCBmZGVsPU5vbmUsIGRvYz1Ob25lKSAtPiBwcm9wZXJ0eSBhdHRyaWJ1dGVcbiIKICJcbiIKQEAgLTEzODgsNyArMTQ4NCw3IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLwogICAgIHByb3BlcnR5X21ldGhvZHMsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLwogICAgIHByb3BlcnR5X21lbWJlcnMsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCisgICAgcHJvcGVydHlfZ2V0c2V0bGlzdCwgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Jhc2UgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3QgKi8KICAgICBwcm9wZXJ0eV9kZXNjcl9nZXQsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX2dldCAqLwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9kaWN0b2JqZWN0LmMgYi9PYmplY3RzL2RpY3RvYmplY3QuYwppbmRleCAyN2RlMTBkLi4yM2NhNDQyIDEwMDY0NAotLS0gYS9PYmplY3RzL2RpY3RvYmplY3QuYworKysgYi9PYmplY3RzL2RpY3RvYmplY3QuYwpAQCAtMjE3LDE2ICsyMTcsMjMgQEAKIHN0YXRpYyBQeURpY3RPYmplY3QgKmZyZWVfbGlzdFtQeURpY3RfTUFYRlJFRUxJU1RdOwogc3RhdGljIGludCBudW1mcmVlID0gMDsKIAotdm9pZAotUHlEaWN0X0Zpbmkodm9pZCkKK2ludAorUHlEaWN0X0NsZWFyRnJlZUxpc3Qodm9pZCkKIHsKICAgICBQeURpY3RPYmplY3QgKm9wOwotCisgICAgaW50IHJldCA9IG51bWZyZWU7CiAgICAgd2hpbGUgKG51bWZyZWUpIHsKICAgICAgICAgb3AgPSBmcmVlX2xpc3RbLS1udW1mcmVlXTsKICAgICAgICAgYXNzZXJ0KFB5RGljdF9DaGVja0V4YWN0KG9wKSk7CiAgICAgICAgIFB5T2JqZWN0X0dDX0RlbChvcCk7CiAgICAgfQorICAgIHJldHVybiByZXQ7Cit9CisKK3ZvaWQKK1B5RGljdF9GaW5pKHZvaWQpCit7CisgICAgUHlEaWN0X0NsZWFyRnJlZUxpc3QoKTsKIH0KIAogUHlPYmplY3QgKgpAQCAtMzQwLDEyICszNDcsOSBAQAogICAgICAgICAgICAgICAgICAgICByZXR1cm4gZXA7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAvKiBUaGUgY29tcGFyZSBkaWQgbWFqb3IgbmFzdHkgc3R1ZmYgdG8gdGhlCi0gICAgICAgICAgICAgICAgICogZGljdDogIHN0YXJ0IG92ZXIuCi0gICAgICAgICAgICAgICAgICogWFhYIEEgY2xldmVyIGFkdmVyc2FyeSBjb3VsZCBwcmV2ZW50IHRoaXMKLSAgICAgICAgICAgICAgICAgKiBYWFggZnJvbSB0ZXJtaW5hdGluZy4KLSAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAgICByZXR1cm4gbG9va2RpY3QobXAsIGtleSwgaGFzaCk7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRpY3Rpb25hcnkgY2hhbmdlZCBzaXplIGR1cmluZyBsb29rdXAiKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBmcmVlc2xvdCA9IE5VTEw7CkBAIC0zNzIsMTIgKzM3Niw5IEBACiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlcDsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIC8qIFRoZSBjb21wYXJlIGRpZCBtYWpvciBuYXN0eSBzdHVmZiB0byB0aGUKLSAgICAgICAgICAgICAgICAgKiBkaWN0OiAgc3RhcnQgb3Zlci4KLSAgICAgICAgICAgICAgICAgKiBYWFggQSBjbGV2ZXIgYWR2ZXJzYXJ5IGNvdWxkIHByZXZlbnQgdGhpcwotICAgICAgICAgICAgICAgICAqIFhYWCBmcm9tIHRlcm1pbmF0aW5nLgotICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgICAgIHJldHVybiBsb29rZGljdChtcCwga2V5LCBoYXNoKTsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGljdGlvbmFyeSBjaGFuZ2VkIHNpemUgZHVyaW5nIGxvb2t1cCIpOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKGVwLT5tZV9rZXkgPT0gZHVtbXkgJiYgZnJlZXNsb3QgPT0gTlVMTCkKQEAgLTQxOCw3ICs0MTksNyBAQAogICAgICAgICBtcC0+bWFfbG9va3VwID0gbG9va2RpY3Q7CiAgICAgICAgIHJldHVybiBsb29rZGljdChtcCwga2V5LCBoYXNoKTsKICAgICB9Ci0gICAgaSA9IGhhc2ggJiBtYXNrOworICAgIGkgPSAoc2l6ZV90KWhhc2ggJiBtYXNrOwogICAgIGVwID0gJmVwMFtpXTsKICAgICBpZiAoZXAtPm1lX2tleSA9PSBOVUxMIHx8IGVwLT5tZV9rZXkgPT0ga2V5KQogICAgICAgICByZXR1cm4gZXA7CkBAIC01ODMsNyArNTg0LDcgQEAKICAgICByZWdpc3RlciBQeURpY3RFbnRyeSAqZXA7CiAKICAgICBNQUlOVEFJTl9UUkFDS0lORyhtcCwga2V5LCB2YWx1ZSk7Ci0gICAgaSA9IGhhc2ggJiBtYXNrOworICAgIGkgPSAoc2l6ZV90KWhhc2ggJiBtYXNrOwogICAgIGVwID0gJmVwMFtpXTsKICAgICBmb3IgKHBlcnR1cmIgPSBoYXNoOyBlcC0+bWVfa2V5ICE9IE5VTEw7IHBlcnR1cmIgPj49IFBFUlRVUkJfU0hJRlQpIHsKICAgICAgICAgaSA9IChpIDw8IDIpICsgaSArIHBlcnR1cmIgKyAxOwpAQCAtNzIxLDcgKzcyMiw3IEBACiAgICAgaWYgKCFQeURpY3RfQ2hlY2sob3ApKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkKKyAgICAgICAgKGhhc2ggPSAoKFB5QVNDSUlPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpCiAgICAgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkgewpAQCAtNzczLDcgKzc3NCw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkKKyAgICAgICAgKGhhc2ggPSAoKFB5QVNDSUlPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpCiAgICAgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkgewpAQCAtODQ0LDcgKzg0NSw3IEBACiAgICAgYXNzZXJ0KGtleSk7CiAgICAgYXNzZXJ0KHZhbHVlKTsKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3Qoa2V5KSkgewotICAgICAgICBoYXNoID0gKChQeVVuaWNvZGVPYmplY3QgKikga2V5KS0+aGFzaDsKKyAgICAgICAgaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIGhhc2ggPSBQeU9iamVjdF9IYXNoKGtleSk7CiAgICAgfQpAQCAtODcwLDcgKzg3MSw3IEBACiAgICAgfQogICAgIGFzc2VydChrZXkpOwogICAgIGlmICghUHlVbmljb2RlX0NoZWNrRXhhY3Qoa2V5KSB8fAotICAgICAgICAoaGFzaCA9ICgoUHlVbmljb2RlT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CisgICAgICAgIChoYXNoID0gKChQeUFTQ0lJT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CiAgICAgICAgIGhhc2ggPSBQeU9iamVjdF9IYXNoKGtleSk7CiAgICAgICAgIGlmIChoYXNoID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIC0xOwpAQCAtMTE1MCw3ICsxMTUxLDcgQEAKICAgICBQeURpY3RFbnRyeSAqZXA7CiAgICAgYXNzZXJ0KG1wLT5tYV90YWJsZSAhPSBOVUxMKTsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgeworICAgICAgICAoaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTE2MywxMCArMTE2NCw4IEBACiAgICAgICAgIGlmICghUHlEaWN0X0NoZWNrRXhhY3QobXApKSB7CiAgICAgICAgICAgICAvKiBMb29rIHVwIF9fbWlzc2luZ19fIG1ldGhvZCBpZiB3ZSdyZSBhIHN1YmNsYXNzLiAqLwogICAgICAgICAgICAgUHlPYmplY3QgKm1pc3NpbmcsICpyZXM7Ci0gICAgICAgICAgICBzdGF0aWMgUHlPYmplY3QgKm1pc3Npbmdfc3RyID0gTlVMTDsKLSAgICAgICAgICAgIG1pc3NpbmcgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbCgoUHlPYmplY3QgKiltcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19taXNzaW5nX18iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtaXNzaW5nX3N0cik7CisgICAgICAgICAgICBfUHlfSURFTlRJRklFUihfX21pc3NpbmdfXyk7CisgICAgICAgICAgICBtaXNzaW5nID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoKFB5T2JqZWN0ICopbXAsICZQeUlkX19fbWlzc2luZ19fKTsKICAgICAgICAgICAgIGlmIChtaXNzaW5nICE9IE5VTEwpIHsKICAgICAgICAgICAgICAgICByZXMgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKG1pc3NpbmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXksIE5VTEwpOwpAQCAtMTQyMyw3ICsxNDIyLDggQEAKICAgICAgICAgcmVzdWx0ID0gLTE7CiAKICAgICBlbHNlIGlmIChhcmcgIT0gTlVMTCkgewotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhhcmcsICJrZXlzIikpCisgICAgICAgIF9QeV9JREVOVElGSUVSKGtleXMpOworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChhcmcsICZQeUlkX2tleXMpKQogICAgICAgICAgICAgcmVzdWx0ID0gUHlEaWN0X01lcmdlKHNlbGYsIGFyZywgMSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHJlc3VsdCA9IFB5RGljdF9NZXJnZUZyb21TZXEyKHNlbGYsIGFyZywgMSk7CkBAIC0xNzYyLDcgKzE3NjIsNyBAQAogICAgIFB5RGljdEVudHJ5ICplcDsKIAogICAgIGlmICghUHlVbmljb2RlX0NoZWNrRXhhY3Qoa2V5KSB8fAotICAgICAgICAoaGFzaCA9ICgoUHlVbmljb2RlT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CisgICAgICAgIChoYXNoID0gKChQeUFTQ0lJT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CiAgICAgICAgIGhhc2ggPSBQeU9iamVjdF9IYXNoKGtleSk7CiAgICAgICAgIGlmIChoYXNoID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xNzg2LDcgKzE3ODYsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmICghUHlVbmljb2RlX0NoZWNrRXhhY3Qoa2V5KSB8fAotICAgICAgICAoaGFzaCA9ICgoUHlVbmljb2RlT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CisgICAgICAgIChoYXNoID0gKChQeUFTQ0lJT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CiAgICAgICAgIGhhc2ggPSBQeU9iamVjdF9IYXNoKGtleSk7CiAgICAgICAgIGlmIChoYXNoID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xODE1LDcgKzE4MTUsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmICghUHlVbmljb2RlX0NoZWNrRXhhY3Qoa2V5KSB8fAotICAgICAgICAoaGFzaCA9ICgoUHlVbmljb2RlT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CisgICAgICAgIChoYXNoID0gKChQeUFTQ0lJT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CiAgICAgICAgIGhhc2ggPSBQeU9iamVjdF9IYXNoKGtleSk7CiAgICAgICAgIGlmIChoYXNoID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xODYwLDcgKzE4NjAsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2tFeGFjdChrZXkpIHx8Ci0gICAgICAgIChoYXNoID0gKChQeVVuaWNvZGVPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpIHsKKyAgICAgICAgKGhhc2ggPSAoKFB5QVNDSUlPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpIHsKICAgICAgICAgaGFzaCA9IFB5T2JqZWN0X0hhc2goa2V5KTsKICAgICAgICAgaWYgKGhhc2ggPT0gLTEpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTIwNjksNyArMjA2OSw3IEBACiAgICAgUHlEaWN0RW50cnkgKmVwOwogCiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2tFeGFjdChrZXkpIHx8Ci0gICAgICAgIChoYXNoID0gKChQeVVuaWNvZGVPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpIHsKKyAgICAgICAgKGhhc2ggPSAoKFB5QVNDSUlPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpIHsKICAgICAgICAgaGFzaCA9IFB5T2JqZWN0X0hhc2goa2V5KTsKICAgICAgICAgaWYgKGhhc2ggPT0gLTEpCiAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC0yNjQ0LDEwICsyNjQ0LDggQEAKICAgICBhc3NlcnQoUHlEaWN0Vmlld1NldF9DaGVjayhzZWxmKSk7CiAgICAgYXNzZXJ0KG90aGVyICE9IE5VTEwpOwogCi0gICAgaWYgKCFQeUFueVNldF9DaGVjayhvdGhlcikgJiYgIVB5RGljdFZpZXdTZXRfQ2hlY2sob3RoZXIpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFQeUFueVNldF9DaGVjayhvdGhlcikgJiYgIVB5RGljdFZpZXdTZXRfQ2hlY2sob3RoZXIpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAKICAgICBsZW5fc2VsZiA9IFB5T2JqZWN0X1NpemUoc2VsZik7CiAgICAgaWYgKGxlbl9zZWxmIDwgMCkKQEAgLTI3NDUsMTAgKzI3NDMsMTIgQEAKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gUHlTZXRfTmV3KHNlbGYpOwogICAgIFB5T2JqZWN0ICp0bXA7CisgICAgX1B5X0lERU5USUZJRVIoZGlmZmVyZW5jZV91cGRhdGUpOworCiAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QocmVzdWx0LCAiZGlmZmVyZW5jZV91cGRhdGUiLCAiTyIsIG90aGVyKTsKKyAgICB0bXAgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHJlc3VsdCwgJlB5SWRfZGlmZmVyZW5jZV91cGRhdGUsICJPIiwgb3RoZXIpOwogICAgIGlmICh0bXAgPT0gTlVMTCkgewogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yNzYzLDEwICsyNzYzLDEyIEBACiB7CiAgICAgUHlPYmplY3QgKnJlc3VsdCA9IFB5U2V0X05ldyhzZWxmKTsKICAgICBQeU9iamVjdCAqdG1wOworICAgIF9QeV9JREVOVElGSUVSKGludGVyc2VjdGlvbl91cGRhdGUpOworCiAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QocmVzdWx0LCAiaW50ZXJzZWN0aW9uX3VwZGF0ZSIsICJPIiwgb3RoZXIpOworICAgIHRtcCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocmVzdWx0LCAmUHlJZF9pbnRlcnNlY3Rpb25fdXBkYXRlLCAiTyIsIG90aGVyKTsKICAgICBpZiAodG1wID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjc4MSwxMCArMjc4MywxMiBAQAogewogICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBQeVNldF9OZXcoc2VsZik7CiAgICAgUHlPYmplY3QgKnRtcDsKKyAgICBfUHlfSURFTlRJRklFUih1cGRhdGUpOworCiAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QocmVzdWx0LCAidXBkYXRlIiwgIk8iLCBvdGhlcik7CisgICAgdG1wID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChyZXN1bHQsICZQeUlkX3VwZGF0ZSwgIk8iLCBvdGhlcik7CiAgICAgaWYgKHRtcCA9PSBOVUxMKSB7CiAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTI3OTksMTAgKzI4MDMsMTIgQEAKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gUHlTZXRfTmV3KHNlbGYpOwogICAgIFB5T2JqZWN0ICp0bXA7CisgICAgX1B5X0lERU5USUZJRVIoc3ltbWV0cmljX2RpZmZlcmVuY2VfdXBkYXRlKTsKKwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICB0bXAgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHJlc3VsdCwgInN5bW1ldHJpY19kaWZmZXJlbmNlX3VwZGF0ZSIsICJPIiwKKyAgICB0bXAgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHJlc3VsdCwgJlB5SWRfc3ltbWV0cmljX2RpZmZlcmVuY2VfdXBkYXRlLCAiTyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdGhlcik7CiAgICAgaWYgKHRtcCA9PSBOVUxMKSB7CiAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9lbnVtb2JqZWN0LmMgYi9PYmplY3RzL2VudW1vYmplY3QuYwppbmRleCAwMGEzMzQ2Li4yM2IzODA4IDEwMDY0NAotLS0gYS9PYmplY3RzL2VudW1vYmplY3QuYworKysgYi9PYmplY3RzL2VudW1vYmplY3QuYwpAQCAtMjI0LDggKzIyNCw4IEBACiB7CiAgICAgUHlfc3NpemVfdCBuOwogICAgIFB5T2JqZWN0ICpzZXEsICpyZXZlcnNlZF9tZXRoOwotICAgIHN0YXRpYyBQeU9iamVjdCAqcmV2ZXJzZWRfY2FjaGUgPSBOVUxMOwogICAgIHJldmVyc2Vkb2JqZWN0ICpybzsKKyAgICBfUHlfSURFTlRJRklFUihfX3JldmVyc2VkX18pOwogCiAgICAgaWYgKHR5cGUgPT0gJlB5UmV2ZXJzZWRfVHlwZSAmJiAhX1B5QXJnX05vS2V5d29yZHMoInJldmVyc2VkKCkiLCBrd2RzKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yMzMsNyArMjMzLDcgQEAKICAgICBpZiAoIVB5QXJnX1VucGFja1R1cGxlKGFyZ3MsICJyZXZlcnNlZCIsIDEsIDEsICZzZXEpICkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXZlcnNlZF9tZXRoID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoc2VxLCAiX19yZXZlcnNlZF9fIiwgJnJldmVyc2VkX2NhY2hlKTsKKyAgICByZXZlcnNlZF9tZXRoID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoc2VxLCAmUHlJZF9fX3JldmVyc2VkX18pOwogICAgIGlmIChyZXZlcnNlZF9tZXRoICE9IE5VTEwpIHsKICAgICAgICAgUHlPYmplY3QgKnJlcyA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MocmV2ZXJzZWRfbWV0aCwgTlVMTCk7CiAgICAgICAgIFB5X0RFQ1JFRihyZXZlcnNlZF9tZXRoKTsKZGlmZiAtLWdpdCBhL09iamVjdHMvZXhjZXB0aW9ucy5jIGIvT2JqZWN0cy9leGNlcHRpb25zLmMKaW5kZXggOWRhYTEyYS4uYmM0Mzc5OSAxMDA2NDQKLS0tIGEvT2JqZWN0cy9leGNlcHRpb25zLmMKKysrIGIvT2JqZWN0cy9leGNlcHRpb25zLmMKQEAgLTEwLDYgKzEwLDIwIEBACiAjaW5jbHVkZSAib3NkZWZzLmgiCiAKIAorLyogQ29tcGF0aWJpbGl0eSBhbGlhc2VzICovCitQeU9iamVjdCAqUHlFeGNfRW52aXJvbm1lbnRFcnJvciA9IE5VTEw7CitQeU9iamVjdCAqUHlFeGNfSU9FcnJvciA9IE5VTEw7CisjaWZkZWYgTVNfV0lORE9XUworUHlPYmplY3QgKlB5RXhjX1dpbmRvd3NFcnJvciA9IE5VTEw7CisjZW5kaWYKKyNpZmRlZiBfX1ZNUworUHlPYmplY3QgKlB5RXhjX1ZNU0Vycm9yID0gTlVMTDsKKyNlbmRpZgorCisvKiBUaGUgZGljdCBtYXAgZnJvbSBlcnJubyBjb2RlcyB0byBPU0Vycm9yIHN1YmNsYXNzZXMgKi8KK3N0YXRpYyBQeU9iamVjdCAqZXJybm9tYXAgPSBOVUxMOworCisKIC8qIE5PVEU6IElmIHRoZSBleGNlcHRpb24gY2xhc3MgaGllcmFyY2h5IGNoYW5nZXMsIGRvbid0IGZvcmdldCB0byB1cGRhdGUKICAqIExpYi90ZXN0L2V4Y2VwdGlvbl9oaWVyYXJjaHkudHh0CiAgKi8KQEAgLTQ0LDcgKzU4LDcgQEAKICAgICBpZiAoIV9QeUFyZ19Ob0tleXdvcmRzKFB5X1RZUEUoc2VsZiktPnRwX25hbWUsIGt3ZHMpKQogICAgICAgICByZXR1cm4gLTE7CiAKLSAgICBQeV9ERUNSRUYoc2VsZi0+YXJncyk7CisgICAgUHlfWERFQ1JFRihzZWxmLT5hcmdzKTsKICAgICBzZWxmLT5hcmdzID0gYXJnczsKICAgICBQeV9JTkNSRUYoc2VsZi0+YXJncyk7CiAKQEAgLTE2MywzNiArMTc3LDYgQEAKICAgIHtOVUxMLCBOVUxMLCAwLCBOVUxMfSwKIH07CiAKLQotc3RhdGljIFB5T2JqZWN0ICoKLUJhc2VFeGNlcHRpb25fZ2V0X2RpY3QoUHlCYXNlRXhjZXB0aW9uT2JqZWN0ICpzZWxmKQotewotICAgIGlmIChzZWxmLT5kaWN0ID09IE5VTEwpIHsKLSAgICAgICAgc2VsZi0+ZGljdCA9IFB5RGljdF9OZXcoKTsKLSAgICAgICAgaWYgKCFzZWxmLT5kaWN0KQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIFB5X0lOQ1JFRihzZWxmLT5kaWN0KTsKLSAgICByZXR1cm4gc2VsZi0+ZGljdDsKLX0KLQotc3RhdGljIGludAotQmFzZUV4Y2VwdGlvbl9zZXRfZGljdChQeUJhc2VFeGNlcHRpb25PYmplY3QgKnNlbGYsIFB5T2JqZWN0ICp2YWwpCi17Ci0gICAgaWYgKHZhbCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJfX2RpY3RfXyBtYXkgbm90IGJlIGRlbGV0ZWQiKTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBpZiAoIVB5RGljdF9DaGVjayh2YWwpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJfX2RpY3RfXyBtdXN0IGJlIGEgZGljdGlvbmFyeSIpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIFB5X0NMRUFSKHNlbGYtPmRpY3QpOwotICAgIFB5X0lOQ1JFRih2YWwpOwotICAgIHNlbGYtPmRpY3QgPSB2YWw7Ci0gICAgcmV0dXJuIDA7Ci19Ci0KIHN0YXRpYyBQeU9iamVjdCAqCiBCYXNlRXhjZXB0aW9uX2dldF9hcmdzKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqc2VsZikKIHsKQEAgLTI4Miw3ICsyNjYsMjQgQEAKICAgICBQeU9iamVjdCAqcmVzID0gUHlFeGNlcHRpb25fR2V0Q2F1c2Uoc2VsZik7CiAgICAgaWYgKHJlcykKICAgICAgICAgcmV0dXJuIHJlczsgIC8qIG5ldyByZWZlcmVuY2UgYWxyZWFkeSByZXR1cm5lZCBhYm92ZSAqLwotICAgIFB5X1JFVFVSTl9OT05FOworICAgIFB5X0lOQ1JFRihQeV9FbGxpcHNpcyk7CisgICAgcmV0dXJuIFB5X0VsbGlwc2lzOworfQorCitpbnQKK19QeUV4Y2VwdGlvbl9TZXRDYXVzZUNoZWNrZWQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmcpIHsKKyAgICBpZiAoYXJnID09IFB5X0VsbGlwc2lzKSB7CisgICAgICAgIGFyZyA9IE5VTEw7CisgICAgfSBlbHNlIGlmIChhcmcgIT0gUHlfTm9uZSAmJiAhUHlFeGNlcHRpb25JbnN0YW5jZV9DaGVjayhhcmcpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJleGNlcHRpb24gY2F1c2UgbXVzdCBiZSBOb25lLCAiCisgICAgICAgICAgICAgICAgICAgICAgICAiRWxsaXBzaXMgb3IgZGVyaXZlIGZyb20gQmFzZUV4Y2VwdGlvbiIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfSBlbHNlIHsKKyAgICAgICAgLyogUHlFeGNlcHRpb25fU2V0Q2F1c2Ugc3RlYWxzIGEgcmVmZXJlbmNlICovCisgICAgICAgIFB5X0lOQ1JFRihhcmcpOworICAgIH0KKyAgICBQeUV4Y2VwdGlvbl9TZXRDYXVzZShzZWxmLCBhcmcpOworICAgIHJldHVybiAwOwogfQogCiBzdGF0aWMgaW50CkBAIC0yOTAsMjMgKzI5MSwxMyBAQAogICAgIGlmIChhcmcgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiX19jYXVzZV9fIG1heSBub3QgYmUgZGVsZXRlZCIpOwogICAgICAgICByZXR1cm4gLTE7Ci0gICAgfSBlbHNlIGlmIChhcmcgPT0gUHlfTm9uZSkgewotICAgICAgICBhcmcgPSBOVUxMOwotICAgIH0gZWxzZSBpZiAoIVB5RXhjZXB0aW9uSW5zdGFuY2VfQ2hlY2soYXJnKSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiZXhjZXB0aW9uIGNhdXNlIG11c3QgYmUgTm9uZSAiCi0gICAgICAgICAgICAgICAgICAgICAgICAib3IgZGVyaXZlIGZyb20gQmFzZUV4Y2VwdGlvbiIpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLyogUHlFeGNlcHRpb25fU2V0Q2F1c2Ugc3RlYWxzIHRoaXMgcmVmZXJlbmNlICovCi0gICAgICAgIFB5X0lOQ1JFRihhcmcpOwogICAgIH0KLSAgICBQeUV4Y2VwdGlvbl9TZXRDYXVzZShzZWxmLCBhcmcpOwotICAgIHJldHVybiAwOworICAgIHJldHVybiBfUHlFeGNlcHRpb25fU2V0Q2F1c2VDaGVja2VkKHNlbGYsIGFyZyk7CiB9CiAKIAogc3RhdGljIFB5R2V0U2V0RGVmIEJhc2VFeGNlcHRpb25fZ2V0c2V0W10gPSB7Ci0gICAgeyJfX2RpY3RfXyIsIChnZXR0ZXIpQmFzZUV4Y2VwdGlvbl9nZXRfZGljdCwgKHNldHRlcilCYXNlRXhjZXB0aW9uX3NldF9kaWN0fSwKKyAgICB7Il9fZGljdF9fIiwgUHlPYmplY3RfR2VuZXJpY0dldERpY3QsIFB5T2JqZWN0X0dlbmVyaWNTZXREaWN0fSwKICAgICB7ImFyZ3MiLCAoZ2V0dGVyKUJhc2VFeGNlcHRpb25fZ2V0X2FyZ3MsIChzZXR0ZXIpQmFzZUV4Y2VwdGlvbl9zZXRfYXJnc30sCiAgICAgeyJfX3RyYWNlYmFja19fIiwgKGdldHRlcilCYXNlRXhjZXB0aW9uX2dldF90YiwgKHNldHRlcilCYXNlRXhjZXB0aW9uX3NldF90Yn0sCiAgICAgeyJfX2NvbnRleHRfXyIsIChnZXR0ZXIpQmFzZUV4Y2VwdGlvbl9nZXRfY29udGV4dCwKQEAgLTQzNiwxMSArNDI3LDEzIEBACiAgICAgUHlEb2NfU1RSKEVYQ0RPQyksICh0cmF2ZXJzZXByb2MpRVhDU1RPUkUgIyMgX3RyYXZlcnNlLCBcCiAgICAgKGlucXVpcnkpRVhDU1RPUkUgIyMgX2NsZWFyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAmXyAjIyBFWENCQVNFLCBcCiAgICAgMCwgMCwgMCwgb2Zmc2V0b2YoUHkgIyMgRVhDU1RPUkUgIyMgT2JqZWN0LCBkaWN0KSwgXAotICAgIChpbml0cHJvYylFWENTVE9SRSAjIyBfaW5pdCwgMCwgQmFzZUV4Y2VwdGlvbl9uZXcsXAorICAgIChpbml0cHJvYylFWENTVE9SRSAjIyBfaW5pdCwgMCwgMCwgXAogfTsgXAogUHlPYmplY3QgKlB5RXhjXyAjIyBFWENOQU1FID0gKFB5T2JqZWN0ICopJl9QeUV4Y18gIyMgRVhDTkFNRQogCi0jZGVmaW5lIENvbXBsZXhFeHRlbmRzRXhjZXB0aW9uKEVYQ0JBU0UsIEVYQ05BTUUsIEVYQ1NUT1JFLCBFWENERUFMTE9DLCBFWENNRVRIT0RTLCBFWENNRU1CRVJTLCBFWENTVFIsIEVYQ0RPQykgXAorI2RlZmluZSBDb21wbGV4RXh0ZW5kc0V4Y2VwdGlvbihFWENCQVNFLCBFWENOQU1FLCBFWENTVE9SRSwgRVhDTkVXLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVYQ01FVEhPRFMsIEVYQ01FTUJFUlMsIEVYQ0dFVFNFVCwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFWENTVFIsIEVYQ0RPQykgXAogc3RhdGljIFB5VHlwZU9iamVjdCBfUHlFeGNfICMjIEVYQ05BTUUgPSB7IFwKICAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoTlVMTCwgMCkgXAogICAgICMgRVhDTkFNRSwgXApAQCAtNDUwLDkgKzQ0Myw5IEBACiAgICAgUHlfVFBGTEFHU19ERUZBVUxUIHwgUHlfVFBGTEFHU19CQVNFVFlQRSB8IFB5X1RQRkxBR1NfSEFWRV9HQywgXAogICAgIFB5RG9jX1NUUihFWENET0MpLCAodHJhdmVyc2Vwcm9jKUVYQ1NUT1JFICMjIF90cmF2ZXJzZSwgXAogICAgIChpbnF1aXJ5KUVYQ1NUT1JFICMjIF9jbGVhciwgMCwgMCwgMCwgMCwgRVhDTUVUSE9EUywgXAotICAgIEVYQ01FTUJFUlMsIDAsICZfICMjIEVYQ0JBU0UsIFwKKyAgICBFWENNRU1CRVJTLCBFWENHRVRTRVQsICZfICMjIEVYQ0JBU0UsIFwKICAgICAwLCAwLCAwLCBvZmZzZXRvZihQeSAjIyBFWENTVE9SRSAjIyBPYmplY3QsIGRpY3QpLCBcCi0gICAgKGluaXRwcm9jKUVYQ1NUT1JFICMjIF9pbml0LCAwLCBCYXNlRXhjZXB0aW9uX25ldyxcCisgICAgKGluaXRwcm9jKUVYQ1NUT1JFICMjIF9pbml0LCAwLCBFWENORVcsXAogfTsgXAogUHlPYmplY3QgKlB5RXhjXyAjIyBFWENOQU1FID0gKFB5T2JqZWN0ICopJl9QeUV4Y18gIyMgRVhDTkFNRQogCkBAIC00NzQsOCArNDY3LDcwIEBACiAvKgogICogICAgU3RvcEl0ZXJhdGlvbiBleHRlbmRzIEV4Y2VwdGlvbgogICovCi1TaW1wbGVFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX0V4Y2VwdGlvbiwgU3RvcEl0ZXJhdGlvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgIlNpZ25hbCB0aGUgZW5kIGZyb20gaXRlcmF0b3IuX19uZXh0X18oKS4iKTsKKworc3RhdGljIFB5TWVtYmVyRGVmIFN0b3BJdGVyYXRpb25fbWVtYmVyc1tdID0geworICAgIHsidmFsdWUiLCBUX09CSkVDVCwgb2Zmc2V0b2YoUHlTdG9wSXRlcmF0aW9uT2JqZWN0LCB2YWx1ZSksIDAsCisgICAgICAgIFB5RG9jX1NUUigiZ2VuZXJhdG9yIHJldHVybiB2YWx1ZSIpfSwKKyAgICB7TlVMTH0gIC8qIFNlbnRpbmVsICovCit9OworCitzdGF0aWMgaW50CitTdG9wSXRlcmF0aW9uX2luaXQoUHlTdG9wSXRlcmF0aW9uT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCit7CisgICAgUHlfc3NpemVfdCBzaXplID0gUHlUdXBsZV9HRVRfU0laRShhcmdzKTsKKyAgICBQeU9iamVjdCAqdmFsdWU7CisKKyAgICBpZiAoQmFzZUV4Y2VwdGlvbl9pbml0KChQeUJhc2VFeGNlcHRpb25PYmplY3QgKilzZWxmLCBhcmdzLCBrd2RzKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIFB5X0NMRUFSKHNlbGYtPnZhbHVlKTsKKyAgICBpZiAoc2l6ZSA+IDApCisgICAgICAgIHZhbHVlID0gUHlUdXBsZV9HRVRfSVRFTShhcmdzLCAwKTsKKyAgICBlbHNlCisgICAgICAgIHZhbHVlID0gUHlfTm9uZTsKKyAgICBQeV9JTkNSRUYodmFsdWUpOworICAgIHNlbGYtPnZhbHVlID0gdmFsdWU7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQKK1N0b3BJdGVyYXRpb25fY2xlYXIoUHlTdG9wSXRlcmF0aW9uT2JqZWN0ICpzZWxmKQoreworICAgIFB5X0NMRUFSKHNlbGYtPnZhbHVlKTsKKyAgICByZXR1cm4gQmFzZUV4Y2VwdGlvbl9jbGVhcigoUHlCYXNlRXhjZXB0aW9uT2JqZWN0ICopc2VsZik7Cit9CisKK3N0YXRpYyB2b2lkCitTdG9wSXRlcmF0aW9uX2RlYWxsb2MoUHlTdG9wSXRlcmF0aW9uT2JqZWN0ICpzZWxmKQoreworICAgIF9QeU9iamVjdF9HQ19VTlRSQUNLKHNlbGYpOworICAgIFN0b3BJdGVyYXRpb25fY2xlYXIoc2VsZik7CisgICAgUHlfVFlQRShzZWxmKS0+dHBfZnJlZSgoUHlPYmplY3QgKilzZWxmKTsKK30KKworc3RhdGljIGludAorU3RvcEl0ZXJhdGlvbl90cmF2ZXJzZShQeVN0b3BJdGVyYXRpb25PYmplY3QgKnNlbGYsIHZpc2l0cHJvYyB2aXNpdCwgdm9pZCAqYXJnKQoreworICAgIFB5X1ZJU0lUKHNlbGYtPnZhbHVlKTsKKyAgICByZXR1cm4gQmFzZUV4Y2VwdGlvbl90cmF2ZXJzZSgoUHlCYXNlRXhjZXB0aW9uT2JqZWN0ICopc2VsZiwgdmlzaXQsIGFyZyk7Cit9CisKK1B5T2JqZWN0ICoKK1B5U3RvcEl0ZXJhdGlvbl9DcmVhdGUoUHlPYmplY3QgKnZhbHVlKQoreworICAgIHJldHVybiBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKFB5RXhjX1N0b3BJdGVyYXRpb24sIHZhbHVlLCBOVUxMKTsKK30KKworQ29tcGxleEV4dGVuZHNFeGNlcHRpb24oCisgICAgUHlFeGNfRXhjZXB0aW9uLCAgICAgICAvKiBiYXNlICovCisgICAgU3RvcEl0ZXJhdGlvbiwgICAgICAgICAvKiBuYW1lICovCisgICAgU3RvcEl0ZXJhdGlvbiwgICAgICAgICAvKiBwcmVmaXggZm9yICpfaW5pdCwgZXRjICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAvKiBuZXcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgIC8qIG1ldGhvZHMgKi8KKyAgICBTdG9wSXRlcmF0aW9uX21lbWJlcnMsIC8qIG1lbWJlcnMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgIC8qIGdldHNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgLyogc3RyICovCisgICAgIlNpZ25hbCB0aGUgZW5kIGZyb20gaXRlcmF0b3IuX19uZXh0X18oKS4iCispOwogCiAKIC8qCkBAIC01MDIsNyArNTU3LDcgQEAKICAgICBQeV9DTEVBUihzZWxmLT5jb2RlKTsKICAgICBpZiAoc2l6ZSA9PSAxKQogICAgICAgICBzZWxmLT5jb2RlID0gUHlUdXBsZV9HRVRfSVRFTShhcmdzLCAwKTsKLSAgICBlbHNlIGlmIChzaXplID4gMSkKKyAgICBlbHNlIC8qIHNpemUgPiAxICovCiAgICAgICAgIHNlbGYtPmNvZGUgPSBhcmdzOwogICAgIFB5X0lOQ1JFRihzZWxmLT5jb2RlKTsKICAgICByZXR1cm4gMDsKQEAgLTUzNyw3ICs1OTIsNyBAQAogfTsKIAogQ29tcGxleEV4dGVuZHNFeGNlcHRpb24oUHlFeGNfQmFzZUV4Y2VwdGlvbiwgU3lzdGVtRXhpdCwgU3lzdGVtRXhpdCwKLSAgICAgICAgICAgICAgICAgICAgICAgIFN5c3RlbUV4aXRfZGVhbGxvYywgMCwgU3lzdGVtRXhpdF9tZW1iZXJzLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwgU3lzdGVtRXhpdF9tZW1iZXJzLCAwLCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgIlJlcXVlc3QgdG8gZXhpdCBmcm9tIHRoZSBpbnRlcnByZXRlci4iKTsKIAogLyoKQEAgLTU1NSwxMjQgKzYxMCwzMzUgQEAKIAogCiAvKgotICogICAgRW52aXJvbm1lbnRFcnJvciBleHRlbmRzIEV4Y2VwdGlvbgorICogICAgT1NFcnJvciBleHRlbmRzIEV4Y2VwdGlvbgogICovCiAKKyNpZmRlZiBNU19XSU5ET1dTCisjaW5jbHVkZSAiZXJybWFwLmgiCisjZW5kaWYKKwogLyogV2hlcmUgYSBmdW5jdGlvbiBoYXMgYSBzaW5nbGUgZmlsZW5hbWUsIHN1Y2ggYXMgb3BlbigpIG9yIHNvbWUKICAqIG9mIHRoZSBvcyBtb2R1bGUgZnVuY3Rpb25zLCBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWUoKSBpcwogICogY2FsbGVkLCBnaXZpbmcgYSB0aGlyZCBhcmd1bWVudCB3aGljaCBpcyB0aGUgZmlsZW5hbWUuICBCdXQsIHNvCiAgKiB0aGF0IG9sZCBjb2RlIHVzaW5nIGluLXBsYWNlIHVucGFja2luZyBkb2Vzbid0IGJyZWFrLCBlLmcuOgogICoKLSAqIGV4Y2VwdCBJT0Vycm9yLCAoZXJybm8sIHN0cmVycm9yKToKKyAqIGV4Y2VwdCBPU0Vycm9yLCAoZXJybm8sIHN0cmVycm9yKToKICAqCiAgKiB3ZSBoYWNrIGFyZ3Mgc28gdGhhdCBpdCBvbmx5IGNvbnRhaW5zIHR3byBpdGVtcy4gIFRoaXMgYWxzbwogICogbWVhbnMgd2UgbmVlZCBvdXIgb3duIF9fc3RyX18oKSB3aGljaCBwcmludHMgb3V0IHRoZSBmaWxlbmFtZQogICogd2hlbiBpdCB3YXMgc3VwcGxpZWQuCiAgKi8KKworLyogVGhpcyBmdW5jdGlvbiBkb2Vzbid0IGNsZWFudXAgb24gZXJyb3IsIHRoZSBjYWxsZXIgc2hvdWxkICovCiBzdGF0aWMgaW50Ci1FbnZpcm9ubWVudEVycm9yX2luaXQoUHlFbnZpcm9ubWVudEVycm9yT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywKLSAgICBQeU9iamVjdCAqa3dkcykKK29zZXJyb3JfcGFyc2VfYXJncyhQeU9iamVjdCAqKnBfYXJncywKKyAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKm15ZXJybm8sIFB5T2JqZWN0ICoqc3RyZXJyb3IsCisgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipmaWxlbmFtZQorI2lmZGVmIE1TX1dJTkRPV1MKKyAgICAgICAgICAgICAgICAgICAsIFB5T2JqZWN0ICoqd2luZXJyb3IKKyNlbmRpZgorICAgICAgICAgICAgICAgICAgKQogewotICAgIFB5T2JqZWN0ICpteWVycm5vID0gTlVMTCwgKnN0cmVycm9yID0gTlVMTCwgKmZpbGVuYW1lID0gTlVMTDsKLSAgICBQeU9iamVjdCAqc3Vic2xpY2UgPSBOVUxMOworICAgIFB5X3NzaXplX3QgbmFyZ3M7CisgICAgUHlPYmplY3QgKmFyZ3MgPSAqcF9hcmdzOwogCi0gICAgaWYgKEJhc2VFeGNlcHRpb25faW5pdCgoUHlCYXNlRXhjZXB0aW9uT2JqZWN0ICopc2VsZiwgYXJncywga3dkcykgPT0gLTEpCi0gICAgICAgIHJldHVybiAtMTsKKyAgICBuYXJncyA9IFB5VHVwbGVfR0VUX1NJWkUoYXJncyk7CiAKLSAgICBpZiAoUHlUdXBsZV9HRVRfU0laRShhcmdzKSA8PSAxIHx8IFB5VHVwbGVfR0VUX1NJWkUoYXJncykgPiAzKSB7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLQotICAgIGlmICghUHlBcmdfVW5wYWNrVHVwbGUoYXJncywgIkVudmlyb25tZW50RXJyb3IiLCAyLCAzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgJm15ZXJybm8sICZzdHJlcnJvciwgJmZpbGVuYW1lKSkgewotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIFB5X0NMRUFSKHNlbGYtPm15ZXJybm8pOyAgICAgICAvKiByZXBsYWNpbmcgKi8KLSAgICBzZWxmLT5teWVycm5vID0gbXllcnJubzsKLSAgICBQeV9JTkNSRUYoc2VsZi0+bXllcnJubyk7Ci0KLSAgICBQeV9DTEVBUihzZWxmLT5zdHJlcnJvcik7ICAgICAgLyogcmVwbGFjaW5nICovCi0gICAgc2VsZi0+c3RyZXJyb3IgPSBzdHJlcnJvcjsKLSAgICBQeV9JTkNSRUYoc2VsZi0+c3RyZXJyb3IpOwotCi0gICAgLyogc2VsZi0+ZmlsZW5hbWUgd2lsbCByZW1haW4gUHlfTm9uZSBvdGhlcndpc2UgKi8KLSAgICBpZiAoZmlsZW5hbWUgIT0gTlVMTCkgewotICAgICAgICBQeV9DTEVBUihzZWxmLT5maWxlbmFtZSk7ICAgICAgLyogcmVwbGFjaW5nICovCi0gICAgICAgIHNlbGYtPmZpbGVuYW1lID0gZmlsZW5hbWU7Ci0gICAgICAgIFB5X0lOQ1JFRihzZWxmLT5maWxlbmFtZSk7Ci0KLSAgICAgICAgc3Vic2xpY2UgPSBQeVR1cGxlX0dldFNsaWNlKGFyZ3MsIDAsIDIpOwotICAgICAgICBpZiAoIXN1YnNsaWNlKQorI2lmZGVmIE1TX1dJTkRPV1MKKyAgICBpZiAobmFyZ3MgPj0gMiAmJiBuYXJncyA8PSA0KSB7CisgICAgICAgIGlmICghUHlBcmdfVW5wYWNrVHVwbGUoYXJncywgIk9TRXJyb3IiLCAyLCA0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG15ZXJybm8sIHN0cmVycm9yLCBmaWxlbmFtZSwgd2luZXJyb3IpKQogICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBpZiAoKndpbmVycm9yICYmIFB5TG9uZ19DaGVjaygqd2luZXJyb3IpKSB7CisgICAgICAgICAgICBsb25nIGVycmNvZGUsIHdpbmVycmNvZGU7CisgICAgICAgICAgICBQeU9iamVjdCAqbmV3YXJnczsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKIAotICAgICAgICBQeV9ERUNSRUYoc2VsZi0+YXJncyk7ICAvKiByZXBsYWNpbmcgYXJncyAqLwotICAgICAgICBzZWxmLT5hcmdzID0gc3Vic2xpY2U7CisgICAgICAgICAgICB3aW5lcnJjb2RlID0gUHlMb25nX0FzTG9uZygqd2luZXJyb3IpOworICAgICAgICAgICAgaWYgKHdpbmVycmNvZGUgPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgICAgICAvKiBTZXQgZXJybm8gdG8gdGhlIGNvcnJlc3BvbmRpbmcgUE9TSVggZXJybm8gKG92ZXJyaWRpbmcKKyAgICAgICAgICAgICAgIGZpcnN0IGFyZ3VtZW50KS4gIFdpbmRvd3MgU29ja2V0IGVycm9yIGNvZGVzICg+PSAxMDAwMCkKKyAgICAgICAgICAgICAgIGhhdmUgdGhlIHNhbWUgdmFsdWUgYXMgdGhlaXIgUE9TSVggY291bnRlcnBhcnRzLgorICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGlmICh3aW5lcnJjb2RlIDwgMTAwMDApCisgICAgICAgICAgICAgICAgZXJyY29kZSA9IHdpbmVycm9yX3RvX2Vycm5vKHdpbmVycmNvZGUpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGVycmNvZGUgPSB3aW5lcnJjb2RlOworICAgICAgICAgICAgKm15ZXJybm8gPSBQeUxvbmdfRnJvbUxvbmcoZXJyY29kZSk7CisgICAgICAgICAgICBpZiAoISpteWVycm5vKQorICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIG5ld2FyZ3MgPSBQeVR1cGxlX05ldyhuYXJncyk7CisgICAgICAgICAgICBpZiAoIW5ld2FyZ3MpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgUHlUdXBsZV9TRVRfSVRFTShuZXdhcmdzLCAwLCAqbXllcnJubyk7CisgICAgICAgICAgICBmb3IgKGkgPSAxOyBpIDwgbmFyZ3M7IGkrKykgeworICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp2YWwgPSBQeVR1cGxlX0dFVF9JVEVNKGFyZ3MsIGkpOworICAgICAgICAgICAgICAgIFB5X0lOQ1JFRih2YWwpOworICAgICAgICAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0obmV3YXJncywgaSwgdmFsKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIFB5X0RFQ1JFRihhcmdzKTsKKyAgICAgICAgICAgIGFyZ3MgPSAqcF9hcmdzID0gbmV3YXJnczsKKyAgICAgICAgfQogICAgIH0KKyNlbHNlCisgICAgaWYgKG5hcmdzID49IDIgJiYgbmFyZ3MgPD0gMykgeworICAgICAgICBpZiAoIVB5QXJnX1VucGFja1R1cGxlKGFyZ3MsICJPU0Vycm9yIiwgMiwgMywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBteWVycm5vLCBzdHJlcnJvciwgZmlsZW5hbWUpKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyNlbmRpZgorCiAgICAgcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBpbnQKLUVudmlyb25tZW50RXJyb3JfY2xlYXIoUHlFbnZpcm9ubWVudEVycm9yT2JqZWN0ICpzZWxmKQorb3NlcnJvcl9pbml0KFB5T1NFcnJvck9iamVjdCAqc2VsZiwgUHlPYmplY3QgKipwX2FyZ3MsCisgICAgICAgICAgICAgUHlPYmplY3QgKm15ZXJybm8sIFB5T2JqZWN0ICpzdHJlcnJvciwKKyAgICAgICAgICAgICBQeU9iamVjdCAqZmlsZW5hbWUKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgICAgICAgICAgLCBQeU9iamVjdCAqd2luZXJyb3IKKyNlbmRpZgorICAgICAgICAgICAgICkKK3sKKyAgICBQeU9iamVjdCAqYXJncyA9ICpwX2FyZ3M7CisgICAgUHlfc3NpemVfdCBuYXJncyA9IFB5VHVwbGVfR0VUX1NJWkUoYXJncyk7CisKKyAgICAvKiBzZWxmLT5maWxlbmFtZSB3aWxsIHJlbWFpbiBQeV9Ob25lIG90aGVyd2lzZSAqLworICAgIGlmIChmaWxlbmFtZSAmJiBmaWxlbmFtZSAhPSBQeV9Ob25lKSB7CisgICAgICAgIGlmIChQeV9UWVBFKHNlbGYpID09IChQeVR5cGVPYmplY3QgKikgUHlFeGNfQmxvY2tpbmdJT0Vycm9yICYmCisgICAgICAgICAgICBQeU51bWJlcl9DaGVjayhmaWxlbmFtZSkpIHsKKyAgICAgICAgICAgIC8qIEJsb2NraW5nSU9FcnJvcidzIDNyZCBhcmd1bWVudCBjYW4gYmUgdGhlIG51bWJlciBvZgorICAgICAgICAgICAgICogY2hhcmFjdGVycyB3cml0dGVuLgorICAgICAgICAgICAgICovCisgICAgICAgICAgICBzZWxmLT53cml0dGVuID0gUHlOdW1iZXJfQXNTc2l6ZV90KGZpbGVuYW1lLCBQeUV4Y19WYWx1ZUVycm9yKTsKKyAgICAgICAgICAgIGlmIChzZWxmLT53cml0dGVuID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUHlfSU5DUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgICAgIHNlbGYtPmZpbGVuYW1lID0gZmlsZW5hbWU7CisKKyAgICAgICAgICAgIGlmIChuYXJncyA+PSAyICYmIG5hcmdzIDw9IDMpIHsKKyAgICAgICAgICAgICAgICAvKiBmaWxlbmFtZSBpcyByZW1vdmVkIGZyb20gdGhlIGFyZ3MgdHVwbGUgKGZvciBjb21wYXRpYmlsaXR5CisgICAgICAgICAgICAgICAgICAgcHVycG9zZXMsIHNlZSB0ZXN0X2V4Y2VwdGlvbnMucHkpICovCisgICAgICAgICAgICAgICAgUHlPYmplY3QgKnN1YnNsaWNlID0gUHlUdXBsZV9HZXRTbGljZShhcmdzLCAwLCAyKTsKKyAgICAgICAgICAgICAgICBpZiAoIXN1YnNsaWNlKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYoYXJncyk7ICAvKiByZXBsYWNpbmcgYXJncyAqLworICAgICAgICAgICAgICAgICpwX2FyZ3MgPSBhcmdzID0gc3Vic2xpY2U7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisgICAgUHlfWElOQ1JFRihteWVycm5vKTsKKyAgICBzZWxmLT5teWVycm5vID0gbXllcnJubzsKKworICAgIFB5X1hJTkNSRUYoc3RyZXJyb3IpOworICAgIHNlbGYtPnN0cmVycm9yID0gc3RyZXJyb3I7CisKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgUHlfWElOQ1JFRih3aW5lcnJvcik7CisgICAgc2VsZi0+d2luZXJyb3IgPSB3aW5lcnJvcjsKKyNlbmRpZgorCisgICAgLyogU3RlYWxzIHRoZSByZWZlcmVuY2UgdG8gYXJncyAqLworICAgIHNlbGYtPmFyZ3MgPSBhcmdzOworICAgIGFyZ3MgPSBOVUxMOworCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitPU0Vycm9yX25ldyhQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcyk7CitzdGF0aWMgaW50CitPU0Vycm9yX2luaXQoUHlPU0Vycm9yT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpOworCitzdGF0aWMgaW50Citvc2Vycm9yX3VzZV9pbml0KFB5VHlwZU9iamVjdCAqdHlwZSkKK3sKKyAgICAvKiBXaGVuIF9faW5pdF9fIGlzIGRlZmluZWQgaW4gYSBPU0Vycm9yIHN1YmNsYXNzLCB3ZSB3YW50IGFueQorICAgICAgIGV4dHJhbmVvdXMgYXJndW1lbnQgdG8gX19uZXdfXyB0byBiZSBpZ25vcmVkLiAgVGhlIG9ubHkgcmVhc29uYWJsZQorICAgICAgIHNvbHV0aW9uLCBnaXZlbiBfX25ld19fIHRha2VzIGEgdmFyaWFibGUgbnVtYmVyIG9mIGFyZ3VtZW50cywKKyAgICAgICBpcyB0byBkZWZlciBhcmcgcGFyc2luZyBhbmQgaW5pdGlhbGl6YXRpb24gdG8gX19pbml0X18uCisKKyAgICAgICBCdXQgd2hlbiBfX25ld19fIGlzIG92ZXJyaWRlbiBhcyB3ZWxsLCBpdCBzaG91bGQgY2FsbCBvdXIgX19uZXdfXworICAgICAgIHdpdGggdGhlIHJpZ2h0IGFyZ3VtZW50cy4KKworICAgICAgIChzZWUgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTEyNTU1I21zZzE0ODgyOSApCisgICAgKi8KKyAgICBpZiAodHlwZS0+dHBfaW5pdCAhPSAoaW5pdHByb2MpIE9TRXJyb3JfaW5pdCAmJgorICAgICAgICB0eXBlLT50cF9uZXcgPT0gKG5ld2Z1bmMpIE9TRXJyb3JfbmV3KSB7CisgICAgICAgIGFzc2VydCgoUHlPYmplY3QgKikgdHlwZSAhPSBQeUV4Y19PU0Vycm9yKTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIHJldHVybiAwOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorT1NFcnJvcl9uZXcoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCit7CisgICAgUHlPU0Vycm9yT2JqZWN0ICpzZWxmID0gTlVMTDsKKyAgICBQeU9iamVjdCAqbXllcnJubyA9IE5VTEwsICpzdHJlcnJvciA9IE5VTEwsICpmaWxlbmFtZSA9IE5VTEw7CisjaWZkZWYgTVNfV0lORE9XUworICAgIFB5T2JqZWN0ICp3aW5lcnJvciA9IE5VTEw7CisjZW5kaWYKKworICAgIGlmICghb3NlcnJvcl91c2VfaW5pdCh0eXBlKSkgeworICAgICAgICBpZiAoIV9QeUFyZ19Ob0tleXdvcmRzKHR5cGUtPnRwX25hbWUsIGt3ZHMpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAgICAgUHlfSU5DUkVGKGFyZ3MpOworICAgICAgICBpZiAob3NlcnJvcl9wYXJzZV9hcmdzKCZhcmdzLCAmbXllcnJubywgJnN0cmVycm9yLCAmZmlsZW5hbWUKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLCAmd2luZXJyb3IKKyNlbmRpZgorICAgICAgICAgICAgKSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICAgICAgaWYgKG15ZXJybm8gJiYgUHlMb25nX0NoZWNrKG15ZXJybm8pICYmCisgICAgICAgICAgICBlcnJub21hcCAmJiAoUHlPYmplY3QgKikgdHlwZSA9PSBQeUV4Y19PU0Vycm9yKSB7CisgICAgICAgICAgICBQeU9iamVjdCAqbmV3dHlwZTsKKyAgICAgICAgICAgIG5ld3R5cGUgPSBQeURpY3RfR2V0SXRlbShlcnJub21hcCwgbXllcnJubyk7CisgICAgICAgICAgICBpZiAobmV3dHlwZSkgeworICAgICAgICAgICAgICAgIGFzc2VydChQeVR5cGVfQ2hlY2sobmV3dHlwZSkpOworICAgICAgICAgICAgICAgIHR5cGUgPSAoUHlUeXBlT2JqZWN0ICopIG5ld3R5cGU7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIGlmIChQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBzZWxmID0gKFB5T1NFcnJvck9iamVjdCAqKSB0eXBlLT50cF9hbGxvYyh0eXBlLCAwKTsKKyAgICBpZiAoIXNlbGYpCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICBzZWxmLT5kaWN0ID0gTlVMTDsKKyAgICBzZWxmLT50cmFjZWJhY2sgPSBzZWxmLT5jYXVzZSA9IHNlbGYtPmNvbnRleHQgPSBOVUxMOworICAgIHNlbGYtPndyaXR0ZW4gPSAtMTsKKworICAgIGlmICghb3NlcnJvcl91c2VfaW5pdCh0eXBlKSkgeworICAgICAgICBpZiAob3NlcnJvcl9pbml0KHNlbGYsICZhcmdzLCBteWVycm5vLCBzdHJlcnJvciwgZmlsZW5hbWUKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgICAgICAgICAgICAgICAgICAgICAgLCB3aW5lcnJvcgorI2VuZGlmCisgICAgICAgICAgICApKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICB9CisKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopIHNlbGY7CisKK2Vycm9yOgorICAgIFB5X1hERUNSRUYoYXJncyk7CisgICAgUHlfWERFQ1JFRihzZWxmKTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworc3RhdGljIGludAorT1NFcnJvcl9pbml0KFB5T1NFcnJvck9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQoreworICAgIFB5T2JqZWN0ICpteWVycm5vID0gTlVMTCwgKnN0cmVycm9yID0gTlVMTCwgKmZpbGVuYW1lID0gTlVMTDsKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgUHlPYmplY3QgKndpbmVycm9yID0gTlVMTDsKKyNlbmRpZgorCisgICAgaWYgKCFvc2Vycm9yX3VzZV9pbml0KFB5X1RZUEUoc2VsZikpKQorICAgICAgICAvKiBFdmVyeXRoaW5nIGFscmVhZHkgZG9uZSBpbiBPU0Vycm9yX25ldyAqLworICAgICAgICByZXR1cm4gMDsKKworICAgIGlmICghX1B5QXJnX05vS2V5d29yZHMoUHlfVFlQRShzZWxmKS0+dHBfbmFtZSwga3dkcykpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIFB5X0lOQ1JFRihhcmdzKTsKKyAgICBpZiAob3NlcnJvcl9wYXJzZV9hcmdzKCZhcmdzLCAmbXllcnJubywgJnN0cmVycm9yLCAmZmlsZW5hbWUKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgICAgICAgICAgICAgICAgICAgICAgICAsICZ3aW5lcnJvcgorI2VuZGlmCisgICAgICAgICkpCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICBpZiAob3NlcnJvcl9pbml0KHNlbGYsICZhcmdzLCBteWVycm5vLCBzdHJlcnJvciwgZmlsZW5hbWUKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgICAgICAgICAgICAgICAgICAsIHdpbmVycm9yCisjZW5kaWYKKyAgICAgICAgKSkKKyAgICAgICAgZ290byBlcnJvcjsKKworICAgIHJldHVybiAwOworCitlcnJvcjoKKyAgICBQeV9YREVDUkVGKGFyZ3MpOworICAgIHJldHVybiAtMTsKK30KKworc3RhdGljIGludAorT1NFcnJvcl9jbGVhcihQeU9TRXJyb3JPYmplY3QgKnNlbGYpCiB7CiAgICAgUHlfQ0xFQVIoc2VsZi0+bXllcnJubyk7CiAgICAgUHlfQ0xFQVIoc2VsZi0+c3RyZXJyb3IpOwogICAgIFB5X0NMRUFSKHNlbGYtPmZpbGVuYW1lKTsKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgUHlfQ0xFQVIoc2VsZi0+d2luZXJyb3IpOworI2VuZGlmCiAgICAgcmV0dXJuIEJhc2VFeGNlcHRpb25fY2xlYXIoKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqKXNlbGYpOwogfQogCiBzdGF0aWMgdm9pZAotRW52aXJvbm1lbnRFcnJvcl9kZWFsbG9jKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCAqc2VsZikKK09TRXJyb3JfZGVhbGxvYyhQeU9TRXJyb3JPYmplY3QgKnNlbGYpCiB7CiAgICAgX1B5T2JqZWN0X0dDX1VOVFJBQ0soc2VsZik7Ci0gICAgRW52aXJvbm1lbnRFcnJvcl9jbGVhcihzZWxmKTsKKyAgICBPU0Vycm9yX2NsZWFyKHNlbGYpOwogICAgIFB5X1RZUEUoc2VsZiktPnRwX2ZyZWUoKFB5T2JqZWN0ICopc2VsZik7CiB9CiAKIHN0YXRpYyBpbnQKLUVudmlyb25tZW50RXJyb3JfdHJhdmVyc2UoUHlFbnZpcm9ubWVudEVycm9yT2JqZWN0ICpzZWxmLCB2aXNpdHByb2MgdmlzaXQsCitPU0Vycm9yX3RyYXZlcnNlKFB5T1NFcnJvck9iamVjdCAqc2VsZiwgdmlzaXRwcm9jIHZpc2l0LAogICAgICAgICB2b2lkICphcmcpCiB7CiAgICAgUHlfVklTSVQoc2VsZi0+bXllcnJubyk7CiAgICAgUHlfVklTSVQoc2VsZi0+c3RyZXJyb3IpOwogICAgIFB5X1ZJU0lUKHNlbGYtPmZpbGVuYW1lKTsKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgUHlfVklTSVQoc2VsZi0+d2luZXJyb3IpOworI2VuZGlmCiAgICAgcmV0dXJuIEJhc2VFeGNlcHRpb25fdHJhdmVyc2UoKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqKXNlbGYsIHZpc2l0LCBhcmcpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotRW52aXJvbm1lbnRFcnJvcl9zdHIoUHlFbnZpcm9ubWVudEVycm9yT2JqZWN0ICpzZWxmKQorT1NFcnJvcl9zdHIoUHlPU0Vycm9yT2JqZWN0ICpzZWxmKQogeworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICAvKiBJZiBhdmFpbGFibGUsIHdpbmVycm9yIGhhcyB0aGUgcHJpb3JpdHkgb3ZlciBteWVycm5vICovCisgICAgaWYgKHNlbGYtPndpbmVycm9yICYmIHNlbGYtPmZpbGVuYW1lKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIltFcnJvciAlU10gJVM6ICVSIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPndpbmVycm9yID8gc2VsZi0+d2luZXJyb3I6IFB5X05vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5zdHJlcnJvciA/IHNlbGYtPnN0cmVycm9yOiBQeV9Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+ZmlsZW5hbWUpOworICAgIGlmIChzZWxmLT53aW5lcnJvciAmJiBzZWxmLT5zdHJlcnJvcikKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCJbRXJyb3IgJVNdICVTIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPndpbmVycm9yID8gc2VsZi0+d2luZXJyb3I6IFB5X05vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5zdHJlcnJvciA/IHNlbGYtPnN0cmVycm9yOiBQeV9Ob25lKTsKKyNlbmRpZgogICAgIGlmIChzZWxmLT5maWxlbmFtZSkKICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCJbRXJybm8gJVNdICVTOiAlUiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5teWVycm5vID8gc2VsZi0+bXllcnJubzogUHlfTm9uZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPnN0cmVycm9yID8gc2VsZi0+c3RyZXJyb3I6IFB5X05vbmUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5maWxlbmFtZSk7Ci0gICAgZWxzZSBpZiAoc2VsZi0+bXllcnJubyAmJiBzZWxmLT5zdHJlcnJvcikKKyAgICBpZiAoc2VsZi0+bXllcnJubyAmJiBzZWxmLT5zdHJlcnJvcikKICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCJbRXJybm8gJVNdICVTIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPm15ZXJybm8gPyBzZWxmLT5teWVycm5vOiBQeV9Ob25lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+c3RyZXJyb3IgPyBzZWxmLT5zdHJlcnJvcjogUHlfTm9uZSk7Ci0gICAgZWxzZQotICAgICAgICByZXR1cm4gQmFzZUV4Y2VwdGlvbl9zdHIoKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqKXNlbGYpOworICAgIHJldHVybiBCYXNlRXhjZXB0aW9uX3N0cigoUHlCYXNlRXhjZXB0aW9uT2JqZWN0ICopc2VsZik7CiB9CiAKLXN0YXRpYyBQeU1lbWJlckRlZiBFbnZpcm9ubWVudEVycm9yX21lbWJlcnNbXSA9IHsKLSAgICB7ImVycm5vIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCwgbXllcnJubyksIDAsCi0gICAgICAgIFB5RG9jX1NUUigiZXhjZXB0aW9uIGVycm5vIil9LAotICAgIHsic3RyZXJyb3IiLCBUX09CSkVDVCwgb2Zmc2V0b2YoUHlFbnZpcm9ubWVudEVycm9yT2JqZWN0LCBzdHJlcnJvciksIDAsCi0gICAgICAgIFB5RG9jX1NUUigiZXhjZXB0aW9uIHN0cmVycm9yIil9LAotICAgIHsiZmlsZW5hbWUiLCBUX09CSkVDVCwgb2Zmc2V0b2YoUHlFbnZpcm9ubWVudEVycm9yT2JqZWN0LCBmaWxlbmFtZSksIDAsCi0gICAgICAgIFB5RG9jX1NUUigiZXhjZXB0aW9uIGZpbGVuYW1lIil9LAotICAgIHtOVUxMfSAgLyogU2VudGluZWwgKi8KLX07Ci0KLQogc3RhdGljIFB5T2JqZWN0ICoKLUVudmlyb25tZW50RXJyb3JfcmVkdWNlKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCAqc2VsZikKK09TRXJyb3JfcmVkdWNlKFB5T1NFcnJvck9iamVjdCAqc2VsZikKIHsKICAgICBQeU9iamVjdCAqYXJncyA9IHNlbGYtPmFyZ3M7CiAgICAgUHlPYmplY3QgKnJlcyA9IE5VTEwsICp0bXA7CiAKICAgICAvKiBzZWxmLT5hcmdzIGlzIG9ubHkgdGhlIGZpcnN0IHR3byByZWFsIGFyZ3VtZW50cyBpZiB0aGVyZSB3YXMgYQotICAgICAqIGZpbGUgbmFtZSBnaXZlbiB0byBFbnZpcm9ubWVudEVycm9yLiAqLworICAgICAqIGZpbGUgbmFtZSBnaXZlbiB0byBPU0Vycm9yLiAqLwogICAgIGlmIChQeVR1cGxlX0dFVF9TSVpFKGFyZ3MpID09IDIgJiYgc2VsZi0+ZmlsZW5hbWUpIHsKICAgICAgICAgYXJncyA9IFB5VHVwbGVfTmV3KDMpOwogICAgICAgICBpZiAoIWFyZ3MpCkBAIC02OTksMTQ0ICs5NjUsOTMgQEAKICAgICByZXR1cm4gcmVzOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorT1NFcnJvcl93cml0dGVuX2dldChQeU9TRXJyb3JPYmplY3QgKnNlbGYsIHZvaWQgKmNvbnRleHQpCit7CisgICAgaWYgKHNlbGYtPndyaXR0ZW4gPT0gLTEpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0F0dHJpYnV0ZUVycm9yLCAiY2hhcmFjdGVyc193cml0dGVuIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KHNlbGYtPndyaXR0ZW4pOworfQogCi1zdGF0aWMgUHlNZXRob2REZWYgRW52aXJvbm1lbnRFcnJvcl9tZXRob2RzW10gPSB7Ci0gICAgeyJfX3JlZHVjZV9fIiwgKFB5Q0Z1bmN0aW9uKUVudmlyb25tZW50RXJyb3JfcmVkdWNlLCBNRVRIX05PQVJHU30sCitzdGF0aWMgaW50CitPU0Vycm9yX3dyaXR0ZW5fc2V0KFB5T1NFcnJvck9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZywgdm9pZCAqY29udGV4dCkKK3sKKyAgICBQeV9zc2l6ZV90IG47CisgICAgbiA9IFB5TnVtYmVyX0FzU3NpemVfdChhcmcsIFB5RXhjX1ZhbHVlRXJyb3IpOworICAgIGlmIChuID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBzZWxmLT53cml0dGVuID0gbjsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIFB5TWVtYmVyRGVmIE9TRXJyb3JfbWVtYmVyc1tdID0geworICAgIHsiZXJybm8iLCBUX09CSkVDVCwgb2Zmc2V0b2YoUHlPU0Vycm9yT2JqZWN0LCBteWVycm5vKSwgMCwKKyAgICAgICAgUHlEb2NfU1RSKCJQT1NJWCBleGNlcHRpb24gY29kZSIpfSwKKyAgICB7InN0cmVycm9yIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5T1NFcnJvck9iamVjdCwgc3RyZXJyb3IpLCAwLAorICAgICAgICBQeURvY19TVFIoImV4Y2VwdGlvbiBzdHJlcnJvciIpfSwKKyAgICB7ImZpbGVuYW1lIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5T1NFcnJvck9iamVjdCwgZmlsZW5hbWUpLCAwLAorICAgICAgICBQeURvY19TVFIoImV4Y2VwdGlvbiBmaWxlbmFtZSIpfSwKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgeyJ3aW5lcnJvciIsIFRfT0JKRUNULCBvZmZzZXRvZihQeU9TRXJyb3JPYmplY3QsIHdpbmVycm9yKSwgMCwKKyAgICAgICAgUHlEb2NfU1RSKCJXaW4zMiBleGNlcHRpb24gY29kZSIpfSwKKyNlbmRpZgorICAgIHtOVUxMfSAgLyogU2VudGluZWwgKi8KK307CisKK3N0YXRpYyBQeU1ldGhvZERlZiBPU0Vycm9yX21ldGhvZHNbXSA9IHsKKyAgICB7Il9fcmVkdWNlX18iLCAoUHlDRnVuY3Rpb24pT1NFcnJvcl9yZWR1Y2UsIE1FVEhfTk9BUkdTfSwKICAgICB7TlVMTH0KIH07CiAKLUNvbXBsZXhFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX0V4Y2VwdGlvbiwgRW52aXJvbm1lbnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgIEVudmlyb25tZW50RXJyb3IsIEVudmlyb25tZW50RXJyb3JfZGVhbGxvYywKLSAgICAgICAgICAgICAgICAgICAgICAgIEVudmlyb25tZW50RXJyb3JfbWV0aG9kcywgRW52aXJvbm1lbnRFcnJvcl9tZW1iZXJzLAotICAgICAgICAgICAgICAgICAgICAgICAgRW52aXJvbm1lbnRFcnJvcl9zdHIsCitzdGF0aWMgUHlHZXRTZXREZWYgT1NFcnJvcl9nZXRzZXRbXSA9IHsKKyAgICB7ImNoYXJhY3RlcnNfd3JpdHRlbiIsIChnZXR0ZXIpIE9TRXJyb3Jfd3JpdHRlbl9nZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0dGVyKSBPU0Vycm9yX3dyaXR0ZW5fc2V0LCBOVUxMfSwKKyAgICB7TlVMTH0KK307CisKKworQ29tcGxleEV4dGVuZHNFeGNlcHRpb24oUHlFeGNfRXhjZXB0aW9uLCBPU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgT1NFcnJvciwgT1NFcnJvcl9uZXcsCisgICAgICAgICAgICAgICAgICAgICAgICBPU0Vycm9yX21ldGhvZHMsIE9TRXJyb3JfbWVtYmVycywgT1NFcnJvcl9nZXRzZXQsCisgICAgICAgICAgICAgICAgICAgICAgICBPU0Vycm9yX3N0ciwKICAgICAgICAgICAgICAgICAgICAgICAgICJCYXNlIGNsYXNzIGZvciBJL08gcmVsYXRlZCBlcnJvcnMuIik7CiAKIAogLyoKLSAqICAgIElPRXJyb3IgZXh0ZW5kcyBFbnZpcm9ubWVudEVycm9yCisgKiAgICBWYXJpb3VzIE9TRXJyb3Igc3ViY2xhc3NlcwogICovCi1NaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfRW52aXJvbm1lbnRFcnJvciwgSU9FcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICBFbnZpcm9ubWVudEVycm9yLCAiSS9PIG9wZXJhdGlvbiBmYWlsZWQuIik7Ci0KLQotLyoKLSAqICAgIE9TRXJyb3IgZXh0ZW5kcyBFbnZpcm9ubWVudEVycm9yCi0gKi8KLU1pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19FbnZpcm9ubWVudEVycm9yLCBPU0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIEVudmlyb25tZW50RXJyb3IsICJPUyBzeXN0ZW0gY2FsbCBmYWlsZWQuIik7Ci0KLQotLyoKLSAqICAgIFdpbmRvd3NFcnJvciBleHRlbmRzIE9TRXJyb3IKLSAqLwotI2lmZGVmIE1TX1dJTkRPV1MKLSNpbmNsdWRlICJlcnJtYXAuaCIKLQotc3RhdGljIGludAotV2luZG93c0Vycm9yX2NsZWFyKFB5V2luZG93c0Vycm9yT2JqZWN0ICpzZWxmKQotewotICAgIFB5X0NMRUFSKHNlbGYtPm15ZXJybm8pOwotICAgIFB5X0NMRUFSKHNlbGYtPnN0cmVycm9yKTsKLSAgICBQeV9DTEVBUihzZWxmLT5maWxlbmFtZSk7Ci0gICAgUHlfQ0xFQVIoc2VsZi0+d2luZXJyb3IpOwotICAgIHJldHVybiBCYXNlRXhjZXB0aW9uX2NsZWFyKChQeUJhc2VFeGNlcHRpb25PYmplY3QgKilzZWxmKTsKLX0KLQotc3RhdGljIHZvaWQKLVdpbmRvd3NFcnJvcl9kZWFsbG9jKFB5V2luZG93c0Vycm9yT2JqZWN0ICpzZWxmKQotewotICAgIF9QeU9iamVjdF9HQ19VTlRSQUNLKHNlbGYpOwotICAgIFdpbmRvd3NFcnJvcl9jbGVhcihzZWxmKTsKLSAgICBQeV9UWVBFKHNlbGYpLT50cF9mcmVlKChQeU9iamVjdCAqKXNlbGYpOwotfQotCi1zdGF0aWMgaW50Ci1XaW5kb3dzRXJyb3JfdHJhdmVyc2UoUHlXaW5kb3dzRXJyb3JPYmplY3QgKnNlbGYsIHZpc2l0cHJvYyB2aXNpdCwgdm9pZCAqYXJnKQotewotICAgIFB5X1ZJU0lUKHNlbGYtPm15ZXJybm8pOwotICAgIFB5X1ZJU0lUKHNlbGYtPnN0cmVycm9yKTsKLSAgICBQeV9WSVNJVChzZWxmLT5maWxlbmFtZSk7Ci0gICAgUHlfVklTSVQoc2VsZi0+d2luZXJyb3IpOwotICAgIHJldHVybiBCYXNlRXhjZXB0aW9uX3RyYXZlcnNlKChQeUJhc2VFeGNlcHRpb25PYmplY3QgKilzZWxmLCB2aXNpdCwgYXJnKTsKLX0KLQotc3RhdGljIGludAotV2luZG93c0Vycm9yX2luaXQoUHlXaW5kb3dzRXJyb3JPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKLXsKLSAgICBQeU9iamVjdCAqb19lcnJjb2RlID0gTlVMTDsKLSAgICBsb25nIGVycmNvZGU7Ci0gICAgbG9uZyBwb3NpeF9lcnJubzsKLQotICAgIGlmIChFbnZpcm9ubWVudEVycm9yX2luaXQoKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCAqKXNlbGYsIGFyZ3MsIGt3ZHMpCi0gICAgICAgICAgICA9PSAtMSkKLSAgICAgICAgcmV0dXJuIC0xOwotCi0gICAgaWYgKHNlbGYtPm15ZXJybm8gPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAvKiBTZXQgZXJybm8gdG8gdGhlIFBPU0lYIGVycm5vLCBhbmQgd2luZXJyb3IgdG8gdGhlIFdpbjMyCi0gICAgICAgZXJyb3IgY29kZS4gKi8KLSAgICBlcnJjb2RlID0gUHlMb25nX0FzTG9uZyhzZWxmLT5teWVycm5vKTsKLSAgICBpZiAoZXJyY29kZSA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICByZXR1cm4gLTE7Ci0gICAgcG9zaXhfZXJybm8gPSB3aW5lcnJvcl90b19lcnJubyhlcnJjb2RlKTsKLQotICAgIFB5X0NMRUFSKHNlbGYtPndpbmVycm9yKTsKLSAgICBzZWxmLT53aW5lcnJvciA9IHNlbGYtPm15ZXJybm87Ci0KLSAgICBvX2VycmNvZGUgPSBQeUxvbmdfRnJvbUxvbmcocG9zaXhfZXJybm8pOwotICAgIGlmICghb19lcnJjb2RlKQotICAgICAgICByZXR1cm4gLTE7Ci0KLSAgICBzZWxmLT5teWVycm5vID0gb19lcnJjb2RlOwotCi0gICAgcmV0dXJuIDA7Ci19Ci0KLQotc3RhdGljIFB5T2JqZWN0ICoKLVdpbmRvd3NFcnJvcl9zdHIoUHlXaW5kb3dzRXJyb3JPYmplY3QgKnNlbGYpCi17Ci0gICAgaWYgKHNlbGYtPmZpbGVuYW1lKQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIltFcnJvciAlU10gJVM6ICVSIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPndpbmVycm9yID8gc2VsZi0+d2luZXJyb3I6IFB5X05vbmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5zdHJlcnJvciA/IHNlbGYtPnN0cmVycm9yOiBQeV9Ob25lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+ZmlsZW5hbWUpOwotICAgIGVsc2UgaWYgKHNlbGYtPndpbmVycm9yICYmIHNlbGYtPnN0cmVycm9yKQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIltFcnJvciAlU10gJVMiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+d2luZXJyb3IgPyBzZWxmLT53aW5lcnJvcjogUHlfTm9uZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPnN0cmVycm9yID8gc2VsZi0+c3RyZXJyb3I6IFB5X05vbmUpOwotICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIEVudmlyb25tZW50RXJyb3Jfc3RyKChQeUVudmlyb25tZW50RXJyb3JPYmplY3QgKilzZWxmKTsKLX0KLQotc3RhdGljIFB5TWVtYmVyRGVmIFdpbmRvd3NFcnJvcl9tZW1iZXJzW10gPSB7Ci0gICAgeyJlcnJubyIsIFRfT0JKRUNULCBvZmZzZXRvZihQeVdpbmRvd3NFcnJvck9iamVjdCwgbXllcnJubyksIDAsCi0gICAgICAgIFB5RG9jX1NUUigiUE9TSVggZXhjZXB0aW9uIGNvZGUiKX0sCi0gICAgeyJzdHJlcnJvciIsIFRfT0JKRUNULCBvZmZzZXRvZihQeVdpbmRvd3NFcnJvck9iamVjdCwgc3RyZXJyb3IpLCAwLAotICAgICAgICBQeURvY19TVFIoImV4Y2VwdGlvbiBzdHJlcnJvciIpfSwKLSAgICB7ImZpbGVuYW1lIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5V2luZG93c0Vycm9yT2JqZWN0LCBmaWxlbmFtZSksIDAsCi0gICAgICAgIFB5RG9jX1NUUigiZXhjZXB0aW9uIGZpbGVuYW1lIil9LAotICAgIHsid2luZXJyb3IiLCBUX09CSkVDVCwgb2Zmc2V0b2YoUHlXaW5kb3dzRXJyb3JPYmplY3QsIHdpbmVycm9yKSwgMCwKLSAgICAgICAgUHlEb2NfU1RSKCJXaW4zMiBleGNlcHRpb24gY29kZSIpfSwKLSAgICB7TlVMTH0gIC8qIFNlbnRpbmVsICovCi19OwotCi1Db21wbGV4RXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBXaW5kb3dzRXJyb3IsIFdpbmRvd3NFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgIFdpbmRvd3NFcnJvcl9kZWFsbG9jLCAwLCBXaW5kb3dzRXJyb3JfbWVtYmVycywKLSAgICAgICAgICAgICAgICAgICAgICAgIFdpbmRvd3NFcnJvcl9zdHIsICJNUy1XaW5kb3dzIE9TIHN5c3RlbSBjYWxsIGZhaWxlZC4iKTsKLQotI2VuZGlmIC8qIE1TX1dJTkRPV1MgKi8KLQotCi0vKgotICogICAgVk1TRXJyb3IgZXh0ZW5kcyBPU0Vycm9yIChJIHRoaW5rKQotICovCi0jaWZkZWYgX19WTVMKLU1pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBWTVNFcnJvciwgRW52aXJvbm1lbnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAiT3BlblZNUyBPUyBzeXN0ZW0gY2FsbCBmYWlsZWQuIik7Ci0jZW5kaWYKLQorTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIEJsb2NraW5nSU9FcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiSS9PIG9wZXJhdGlvbiB3b3VsZCBibG9jay4iKTsKK01pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBDb25uZWN0aW9uRXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkNvbm5lY3Rpb24gZXJyb3IuIik7CitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfT1NFcnJvciwgQ2hpbGRQcm9jZXNzRXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkNoaWxkIHByb2Nlc3MgZXJyb3IuIik7CitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfQ29ubmVjdGlvbkVycm9yLCBCcm9rZW5QaXBlRXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkJyb2tlbiBwaXBlLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX0Nvbm5lY3Rpb25FcnJvciwgQ29ubmVjdGlvbkFib3J0ZWRFcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiQ29ubmVjdGlvbiBhYm9ydGVkLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX0Nvbm5lY3Rpb25FcnJvciwgQ29ubmVjdGlvblJlZnVzZWRFcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiQ29ubmVjdGlvbiByZWZ1c2VkLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX0Nvbm5lY3Rpb25FcnJvciwgQ29ubmVjdGlvblJlc2V0RXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkNvbm5lY3Rpb24gcmVzZXQuIik7CitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfT1NFcnJvciwgRmlsZUV4aXN0c0Vycm9yLCBPU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJGaWxlIGFscmVhZHkgZXhpc3RzLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIEZpbGVOb3RGb3VuZEVycm9yLCBPU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJGaWxlIG5vdCBmb3VuZC4iKTsKK01pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBJc0FEaXJlY3RvcnlFcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiT3BlcmF0aW9uIGRvZXNuJ3Qgd29yayBvbiBkaXJlY3Rvcmllcy4iKTsKK01pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBOb3RBRGlyZWN0b3J5RXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIk9wZXJhdGlvbiBvbmx5IHdvcmtzIG9uIGRpcmVjdG9yaWVzLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIEludGVycnVwdGVkRXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkludGVycnVwdGVkIGJ5IHNpZ25hbC4iKTsKK01pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBQZXJtaXNzaW9uRXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIk5vdCBlbm91Z2ggcGVybWlzc2lvbnMuIik7CitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfT1NFcnJvciwgUHJvY2Vzc0xvb2t1cEVycm9yLCBPU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJQcm9jZXNzIG5vdCBmb3VuZC4iKTsKK01pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBUaW1lb3V0RXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIlRpbWVvdXQgZXhwaXJlZC4iKTsKIAogLyoKICAqICAgIEVPRkVycm9yIGV4dGVuZHMgRXhjZXB0aW9uCkBAIC05NjcsMjEgKzExODIsMjMgQEAKIHN0YXRpYyBQeU9iamVjdCoKIG15X2Jhc2VuYW1lKFB5T2JqZWN0ICpuYW1lKQogewotICAgIFB5X1VOSUNPREUgKnVuaWNvZGU7CiAgICAgUHlfc3NpemVfdCBpLCBzaXplLCBvZmZzZXQ7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKIAotICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShuYW1lKTsKLSAgICBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKG5hbWUpOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkobmFtZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChuYW1lKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEobmFtZSk7CisgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpOwogICAgIG9mZnNldCA9IDA7CiAgICAgZm9yKGk9MDsgaSA8IHNpemU7IGkrKykgewotICAgICAgICBpZiAodW5pY29kZVtpXSA9PSBTRVApCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSA9PSBTRVApCiAgICAgICAgICAgICBvZmZzZXQgPSBpICsgMTsKICAgICB9Ci0gICAgaWYgKG9mZnNldCAhPSAwKSB7Ci0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoCi0gICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShuYW1lKSArIG9mZnNldCwKLSAgICAgICAgICAgIHNpemUgLSBvZmZzZXQpOwotICAgIH0gZWxzZSB7CisgICAgaWYgKG9mZnNldCAhPSAwKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX1N1YnN0cmluZyhuYW1lLCBvZmZzZXQsIHNpemUpOworICAgIGVsc2UgewogICAgICAgICBQeV9JTkNSRUYobmFtZSk7CiAgICAgICAgIHJldHVybiBuYW1lOwogICAgIH0KQEAgLTEwNDksNyArMTI2Niw3IEBACiB9OwogCiBDb21wbGV4RXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19FeGNlcHRpb24sIFN5bnRheEVycm9yLCBTeW50YXhFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgIFN5bnRheEVycm9yX2RlYWxsb2MsIDAsIFN5bnRheEVycm9yX21lbWJlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCBTeW50YXhFcnJvcl9tZW1iZXJzLCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgU3ludGF4RXJyb3Jfc3RyLCAiSW52YWxpZCBzeW50YXguIik7CiAKIApAQCAtMTEwMyw3ICsxMzIwLDcgQEAKIH0KIAogQ29tcGxleEV4dGVuZHNFeGNlcHRpb24oUHlFeGNfTG9va3VwRXJyb3IsIEtleUVycm9yLCBCYXNlRXhjZXB0aW9uLAotICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwgMCwgS2V5RXJyb3Jfc3RyLCAiTWFwcGluZyBrZXkgbm90IGZvdW5kLiIpOworICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwgMCwgMCwgS2V5RXJyb3Jfc3RyLCAiTWFwcGluZyBrZXkgbm90IGZvdW5kLiIpOwogCiAKIC8qCkBAIC0xMjAyLDcgKzE0MTksNyBAQAogICAgIGlmICghb2JqKQogICAgICAgICByZXR1cm4gLTE7CiAgICAgKnN0YXJ0ID0gKChQeVVuaWNvZGVFcnJvck9iamVjdCAqKWV4YyktPnN0YXJ0OwotICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUob2JqKTsKKyAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKTsKICAgICBpZiAoKnN0YXJ0PDApCiAgICAgICAgICpzdGFydCA9IDA7IC8qWFhYIGNoZWNrIGZvciB2YWx1ZXMgPDAqLwogICAgIGlmICgqc3RhcnQ+PXNpemUpCkBAIC0xMjcwLDcgKzE0ODcsNyBAQAogICAgIGlmICghb2JqKQogICAgICAgICByZXR1cm4gLTE7CiAgICAgKmVuZCA9ICgoUHlVbmljb2RlRXJyb3JPYmplY3QgKilleGMpLT5lbmQ7Ci0gICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShvYmopOworICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopOwogICAgIGlmICgqZW5kPDEpCiAgICAgICAgICplbmQgPSAxOwogICAgIGlmICgqZW5kPnNpemUpCkBAIC0xNDQyLDYgKzE2NTksMTEgQEAKICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShlcnItPm9iamVjdCkgPCAtMSkgeworICAgICAgICBlcnItPmVuY29kaW5nID0gTlVMTDsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKwogICAgIFB5X0lOQ1JFRihlcnItPmVuY29kaW5nKTsKICAgICBQeV9JTkNSRUYoZXJyLT5vYmplY3QpOwogICAgIFB5X0lOQ1JFRihlcnItPnJlYXNvbik7CkBAIC0xNDY2LDggKzE2ODgsOCBAQAogICAgIGlmIChlbmNvZGluZ19zdHIgPT0gTlVMTCkKICAgICAgICAgZ290byBkb25lOwogCi0gICAgaWYgKHVzZWxmLT5zdGFydCA8IFB5VW5pY29kZV9HRVRfU0laRSh1c2VsZi0+b2JqZWN0KSAmJiB1c2VsZi0+ZW5kID09IHVzZWxmLT5zdGFydCsxKSB7Ci0gICAgICAgIGludCBiYWRjaGFyID0gKGludClQeVVuaWNvZGVfQVNfVU5JQ09ERSh1c2VsZi0+b2JqZWN0KVt1c2VsZi0+c3RhcnRdOworICAgIGlmICh1c2VsZi0+c3RhcnQgPCBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1c2VsZi0+b2JqZWN0KSAmJiB1c2VsZi0+ZW5kID09IHVzZWxmLT5zdGFydCsxKSB7CisgICAgICAgIFB5X1VDUzQgYmFkY2hhciA9IFB5VW5pY29kZV9SZWFkQ2hhcih1c2VsZi0+b2JqZWN0LCB1c2VsZi0+c3RhcnQpOwogICAgICAgICBjb25zdCBjaGFyICpmbXQ7CiAgICAgICAgIGlmIChiYWRjaGFyIDw9IDB4ZmYpCiAgICAgICAgICAgICBmbXQgPSAiJyVVJyBjb2RlYyBjYW4ndCBlbmNvZGUgY2hhcmFjdGVyICdcXHglMDJ4JyBpbiBwb3NpdGlvbiAlemQ6ICVVIjsKQEAgLTE0NzgsNyArMTcwMCw3IEBACiAgICAgICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KAogICAgICAgICAgICAgZm10LAogICAgICAgICAgICAgZW5jb2Rpbmdfc3RyLAotICAgICAgICAgICAgYmFkY2hhciwKKyAgICAgICAgICAgIChpbnQpYmFkY2hhciwKICAgICAgICAgICAgIHVzZWxmLT5zdGFydCwKICAgICAgICAgICAgIHJlYXNvbl9zdHIpOwogICAgIH0KQEAgLTE2NzUsOCArMTg5Nyw4IEBACiAgICAgaWYgKHJlYXNvbl9zdHIgPT0gTlVMTCkKICAgICAgICAgZ290byBkb25lOwogCi0gICAgaWYgKHVzZWxmLT5zdGFydCA8IFB5VW5pY29kZV9HRVRfU0laRSh1c2VsZi0+b2JqZWN0KSAmJiB1c2VsZi0+ZW5kID09IHVzZWxmLT5zdGFydCsxKSB7Ci0gICAgICAgIGludCBiYWRjaGFyID0gKGludClQeVVuaWNvZGVfQVNfVU5JQ09ERSh1c2VsZi0+b2JqZWN0KVt1c2VsZi0+c3RhcnRdOworICAgIGlmICh1c2VsZi0+c3RhcnQgPCBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1c2VsZi0+b2JqZWN0KSAmJiB1c2VsZi0+ZW5kID09IHVzZWxmLT5zdGFydCsxKSB7CisgICAgICAgIFB5X1VDUzQgYmFkY2hhciA9IFB5VW5pY29kZV9SZWFkQ2hhcih1c2VsZi0+b2JqZWN0LCB1c2VsZi0+c3RhcnQpOwogICAgICAgICBjb25zdCBjaGFyICpmbXQ7CiAgICAgICAgIGlmIChiYWRjaGFyIDw9IDB4ZmYpCiAgICAgICAgICAgICBmbXQgPSAiY2FuJ3QgdHJhbnNsYXRlIGNoYXJhY3RlciAnXFx4JTAyeCcgaW4gcG9zaXRpb24gJXpkOiAlVSI7CkBAIC0xNjg2LDcgKzE5MDgsNyBAQAogICAgICAgICAgICAgZm10ID0gImNhbid0IHRyYW5zbGF0ZSBjaGFyYWN0ZXIgJ1xcVSUwOHgnIGluIHBvc2l0aW9uICV6ZDogJVUiOwogICAgICAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgKICAgICAgICAgICAgIGZtdCwKLSAgICAgICAgICAgIGJhZGNoYXIsCisgICAgICAgICAgICAoaW50KWJhZGNoYXIsCiAgICAgICAgICAgICB1c2VsZi0+c3RhcnQsCiAgICAgICAgICAgICByZWFzb25fc3RyCiAgICAgICAgICk7CkBAIC0xNzE3LDYgKzE5MzksNyBAQAogfTsKIFB5T2JqZWN0ICpQeUV4Y19Vbmljb2RlVHJhbnNsYXRlRXJyb3IgPSAoUHlPYmplY3QgKikmX1B5RXhjX1VuaWNvZGVUcmFuc2xhdGVFcnJvcjsKIAorLyogRGVwcmVjYXRlZC4gKi8KIFB5T2JqZWN0ICoKIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0NyZWF0ZSgKICAgICBjb25zdCBQeV9VTklDT0RFICpvYmplY3QsIFB5X3NzaXplX3QgbGVuZ3RoLApAQCAtMTcyNiw2ICsxOTQ5LDE0IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QsIGxlbmd0aCwgc3RhcnQsIGVuZCwgcmVhc29uKTsKIH0KIAorUHlPYmplY3QgKgorX1B5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0NyZWF0ZSgKKyAgICBQeU9iamVjdCAqb2JqZWN0LAorICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kLCBjb25zdCBjaGFyICpyZWFzb24pCit7CisgICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxGdW5jdGlvbihQeUV4Y19Vbmljb2RlVHJhbnNsYXRlRXJyb3IsICJPbnMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LCBzdGFydCwgZW5kLCByZWFzb24pOworfQogCiAvKgogICogICAgQXNzZXJ0aW9uRXJyb3IgZXh0ZW5kcyBFeGNlcHRpb24KQEAgLTE5NzUsNiArMjIwNiw0NyBAQAogICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhiZGljdCwgIyBUWVBFLCBQeUV4Y18gIyMgVFlQRSkpIFwKICAgICAgICAgUHlfRmF0YWxFcnJvcigiTW9kdWxlIGRpY3Rpb25hcnkgaW5zZXJ0aW9uIHByb2JsZW0uIik7CiAKKyNkZWZpbmUgSU5JVF9BTElBUyhOQU1FLCBUWVBFKSBQeV9JTkNSRUYoUHlFeGNfICMjIFRZUEUpOyBcCisgICAgUHlfWERFQ1JFRihQeUV4Y18gIyMgTkFNRSk7IFwKKyAgICBQeUV4Y18gIyMgTkFNRSA9IFB5RXhjXyAjIyBUWVBFOyBcCisgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGJkaWN0LCAjIE5BTUUsIFB5RXhjXyAjIyBOQU1FKSkgXAorICAgICAgICBQeV9GYXRhbEVycm9yKCJNb2R1bGUgZGljdGlvbmFyeSBpbnNlcnRpb24gcHJvYmxlbS4iKTsKKworI2RlZmluZSBBRERfRVJSTk8oVFlQRSwgQ09ERSkgeyBcCisgICAgUHlPYmplY3QgKl9jb2RlID0gUHlMb25nX0Zyb21Mb25nKENPREUpOyBcCisgICAgYXNzZXJ0KF9QeU9iamVjdF9SZWFsSXNTdWJjbGFzcyhQeUV4Y18gIyMgVFlQRSwgUHlFeGNfT1NFcnJvcikpOyBcCisgICAgaWYgKCFfY29kZSB8fCBQeURpY3RfU2V0SXRlbShlcnJub21hcCwgX2NvZGUsIFB5RXhjXyAjIyBUWVBFKSkgXAorICAgICAgICBQeV9GYXRhbEVycm9yKCJlcnJtYXAgaW5zZXJ0aW9uIHByb2JsZW0uIik7IFwKKyAgICBQeV9ERUNSRUYoX2NvZGUpOyBcCisgICAgfQorCisjaWZkZWYgTVNfV0lORE9XUworI2luY2x1ZGUgPFdpbnNvY2syLmg+CisjaWYgZGVmaW5lZChXU0FFQUxSRUFEWSkgJiYgIWRlZmluZWQoRUFMUkVBRFkpCisjZGVmaW5lIEVBTFJFQURZIFdTQUVBTFJFQURZCisjZW5kaWYKKyNpZiBkZWZpbmVkKFdTQUVDT05OQUJPUlRFRCkgJiYgIWRlZmluZWQoRUNPTk5BQk9SVEVEKQorI2RlZmluZSBFQ09OTkFCT1JURUQgV1NBRUNPTk5BQk9SVEVECisjZW5kaWYKKyNpZiBkZWZpbmVkKFdTQUVDT05OUkVGVVNFRCkgJiYgIWRlZmluZWQoRUNPTk5SRUZVU0VEKQorI2RlZmluZSBFQ09OTlJFRlVTRUQgV1NBRUNPTk5SRUZVU0VECisjZW5kaWYKKyNpZiBkZWZpbmVkKFdTQUVDT05OUkVTRVQpICYmICFkZWZpbmVkKEVDT05OUkVTRVQpCisjZGVmaW5lIEVDT05OUkVTRVQgV1NBRUNPTk5SRVNFVAorI2VuZGlmCisjaWYgZGVmaW5lZChXU0FFSU5QUk9HUkVTUykgJiYgIWRlZmluZWQoRUlOUFJPR1JFU1MpCisjZGVmaW5lIEVJTlBST0dSRVNTIFdTQUVJTlBST0dSRVNTCisjZW5kaWYKKyNpZiBkZWZpbmVkKFdTQUVTSFVURE9XTikgJiYgIWRlZmluZWQoRVNIVVRET1dOKQorI2RlZmluZSBFU0hVVERPV04gV1NBRVNIVVRET1dOCisjZW5kaWYKKyNpZiBkZWZpbmVkKFdTQUVUSU1FRE9VVCkgJiYgIWRlZmluZWQoRVRJTUVET1VUKQorI2RlZmluZSBFVElNRURPVVQgV1NBRVRJTUVET1VUCisjZW5kaWYKKyNpZiBkZWZpbmVkKFdTQUVXT1VMREJMT0NLKSAmJiAhZGVmaW5lZChFV09VTERCTE9DSykKKyNkZWZpbmUgRVdPVUxEQkxPQ0sgV1NBRVdPVUxEQkxPQ0sKKyNlbmRpZgorI2VuZGlmIC8qIE1TX1dJTkRPV1MgKi8KIAogdm9pZAogX1B5RXhjX0luaXQodm9pZCkKQEAgLTE5ODksMTUgKzIyNjEsNyBAQAogICAgIFBSRV9JTklUKFN5c3RlbUV4aXQpCiAgICAgUFJFX0lOSVQoS2V5Ym9hcmRJbnRlcnJ1cHQpCiAgICAgUFJFX0lOSVQoSW1wb3J0RXJyb3IpCi0gICAgUFJFX0lOSVQoRW52aXJvbm1lbnRFcnJvcikKLSAgICBQUkVfSU5JVChJT0Vycm9yKQogICAgIFBSRV9JTklUKE9TRXJyb3IpCi0jaWZkZWYgTVNfV0lORE9XUwotICAgIFBSRV9JTklUKFdpbmRvd3NFcnJvcikKLSNlbmRpZgotI2lmZGVmIF9fVk1TCi0gICAgUFJFX0lOSVQoVk1TRXJyb3IpCi0jZW5kaWYKICAgICBQUkVfSU5JVChFT0ZFcnJvcikKICAgICBQUkVfSU5JVChSdW50aW1lRXJyb3IpCiAgICAgUFJFX0lOSVQoTm90SW1wbGVtZW50ZWRFcnJvcikKQEAgLTIwMzcsNiArMjMwMSwyNCBAQAogICAgIFBSRV9JTklUKEJ5dGVzV2FybmluZykKICAgICBQUkVfSU5JVChSZXNvdXJjZVdhcm5pbmcpCiAKKyAgICAvKiBPU0Vycm9yIHN1YmNsYXNzZXMgKi8KKyAgICBQUkVfSU5JVChDb25uZWN0aW9uRXJyb3IpOworCisgICAgUFJFX0lOSVQoQmxvY2tpbmdJT0Vycm9yKTsKKyAgICBQUkVfSU5JVChCcm9rZW5QaXBlRXJyb3IpOworICAgIFBSRV9JTklUKENoaWxkUHJvY2Vzc0Vycm9yKTsKKyAgICBQUkVfSU5JVChDb25uZWN0aW9uQWJvcnRlZEVycm9yKTsKKyAgICBQUkVfSU5JVChDb25uZWN0aW9uUmVmdXNlZEVycm9yKTsKKyAgICBQUkVfSU5JVChDb25uZWN0aW9uUmVzZXRFcnJvcik7CisgICAgUFJFX0lOSVQoRmlsZUV4aXN0c0Vycm9yKTsKKyAgICBQUkVfSU5JVChGaWxlTm90Rm91bmRFcnJvcik7CisgICAgUFJFX0lOSVQoSXNBRGlyZWN0b3J5RXJyb3IpOworICAgIFBSRV9JTklUKE5vdEFEaXJlY3RvcnlFcnJvcik7CisgICAgUFJFX0lOSVQoSW50ZXJydXB0ZWRFcnJvcik7CisgICAgUFJFX0lOSVQoUGVybWlzc2lvbkVycm9yKTsKKyAgICBQUkVfSU5JVChQcm9jZXNzTG9va3VwRXJyb3IpOworICAgIFBSRV9JTklUKFRpbWVvdXRFcnJvcik7CisKICAgICBibHRpbm1vZCA9IFB5SW1wb3J0X0ltcG9ydE1vZHVsZSgiYnVpbHRpbnMiKTsKICAgICBpZiAoYmx0aW5tb2QgPT0gTlVMTCkKICAgICAgICAgUHlfRmF0YWxFcnJvcigiZXhjZXB0aW9ucyBib290c3RyYXBwaW5nIGVycm9yLiIpOwpAQCAtMjA1MiwxNCArMjMzNCwxNCBAQAogICAgIFBPU1RfSU5JVChTeXN0ZW1FeGl0KQogICAgIFBPU1RfSU5JVChLZXlib2FyZEludGVycnVwdCkKICAgICBQT1NUX0lOSVQoSW1wb3J0RXJyb3IpCi0gICAgUE9TVF9JTklUKEVudmlyb25tZW50RXJyb3IpCi0gICAgUE9TVF9JTklUKElPRXJyb3IpCiAgICAgUE9TVF9JTklUKE9TRXJyb3IpCisgICAgSU5JVF9BTElBUyhFbnZpcm9ubWVudEVycm9yLCBPU0Vycm9yKQorICAgIElOSVRfQUxJQVMoSU9FcnJvciwgT1NFcnJvcikKICNpZmRlZiBNU19XSU5ET1dTCi0gICAgUE9TVF9JTklUKFdpbmRvd3NFcnJvcikKKyAgICBJTklUX0FMSUFTKFdpbmRvd3NFcnJvciwgT1NFcnJvcikKICNlbmRpZgogI2lmZGVmIF9fVk1TCi0gICAgUE9TVF9JTklUKFZNU0Vycm9yKQorICAgIElOSVRfQUxJQVMoVk1TRXJyb3IsIE9TRXJyb3IpCiAjZW5kaWYKICAgICBQT1NUX0lOSVQoRU9GRXJyb3IpCiAgICAgUE9TVF9JTklUKFJ1bnRpbWVFcnJvcikKQEAgLTIxMDAsNiArMjM4Miw0OSBAQAogICAgIFBPU1RfSU5JVChCeXRlc1dhcm5pbmcpCiAgICAgUE9TVF9JTklUKFJlc291cmNlV2FybmluZykKIAorICAgIGlmICghZXJybm9tYXApIHsKKyAgICAgICAgZXJybm9tYXAgPSBQeURpY3RfTmV3KCk7CisgICAgICAgIGlmICghZXJybm9tYXApCisgICAgICAgICAgICBQeV9GYXRhbEVycm9yKCJDYW5ub3QgYWxsb2NhdGUgbWFwIGZyb20gZXJybm9zIHRvIE9TRXJyb3Igc3ViY2xhc3NlcyIpOworICAgIH0KKworICAgIC8qIE9TRXJyb3Igc3ViY2xhc3NlcyAqLworICAgIFBPU1RfSU5JVChDb25uZWN0aW9uRXJyb3IpOworCisgICAgUE9TVF9JTklUKEJsb2NraW5nSU9FcnJvcik7CisgICAgQUREX0VSUk5PKEJsb2NraW5nSU9FcnJvciwgRUFHQUlOKTsKKyAgICBBRERfRVJSTk8oQmxvY2tpbmdJT0Vycm9yLCBFQUxSRUFEWSk7CisgICAgQUREX0VSUk5PKEJsb2NraW5nSU9FcnJvciwgRUlOUFJPR1JFU1MpOworICAgIEFERF9FUlJOTyhCbG9ja2luZ0lPRXJyb3IsIEVXT1VMREJMT0NLKTsKKyAgICBQT1NUX0lOSVQoQnJva2VuUGlwZUVycm9yKTsKKyAgICBBRERfRVJSTk8oQnJva2VuUGlwZUVycm9yLCBFUElQRSk7CisgICAgQUREX0VSUk5PKEJyb2tlblBpcGVFcnJvciwgRVNIVVRET1dOKTsKKyAgICBQT1NUX0lOSVQoQ2hpbGRQcm9jZXNzRXJyb3IpOworICAgIEFERF9FUlJOTyhDaGlsZFByb2Nlc3NFcnJvciwgRUNISUxEKTsKKyAgICBQT1NUX0lOSVQoQ29ubmVjdGlvbkFib3J0ZWRFcnJvcik7CisgICAgQUREX0VSUk5PKENvbm5lY3Rpb25BYm9ydGVkRXJyb3IsIEVDT05OQUJPUlRFRCk7CisgICAgUE9TVF9JTklUKENvbm5lY3Rpb25SZWZ1c2VkRXJyb3IpOworICAgIEFERF9FUlJOTyhDb25uZWN0aW9uUmVmdXNlZEVycm9yLCBFQ09OTlJFRlVTRUQpOworICAgIFBPU1RfSU5JVChDb25uZWN0aW9uUmVzZXRFcnJvcik7CisgICAgQUREX0VSUk5PKENvbm5lY3Rpb25SZXNldEVycm9yLCBFQ09OTlJFU0VUKTsKKyAgICBQT1NUX0lOSVQoRmlsZUV4aXN0c0Vycm9yKTsKKyAgICBBRERfRVJSTk8oRmlsZUV4aXN0c0Vycm9yLCBFRVhJU1QpOworICAgIFBPU1RfSU5JVChGaWxlTm90Rm91bmRFcnJvcik7CisgICAgQUREX0VSUk5PKEZpbGVOb3RGb3VuZEVycm9yLCBFTk9FTlQpOworICAgIFBPU1RfSU5JVChJc0FEaXJlY3RvcnlFcnJvcik7CisgICAgQUREX0VSUk5PKElzQURpcmVjdG9yeUVycm9yLCBFSVNESVIpOworICAgIFBPU1RfSU5JVChOb3RBRGlyZWN0b3J5RXJyb3IpOworICAgIEFERF9FUlJOTyhOb3RBRGlyZWN0b3J5RXJyb3IsIEVOT1RESVIpOworICAgIFBPU1RfSU5JVChJbnRlcnJ1cHRlZEVycm9yKTsKKyAgICBBRERfRVJSTk8oSW50ZXJydXB0ZWRFcnJvciwgRUlOVFIpOworICAgIFBPU1RfSU5JVChQZXJtaXNzaW9uRXJyb3IpOworICAgIEFERF9FUlJOTyhQZXJtaXNzaW9uRXJyb3IsIEVBQ0NFUyk7CisgICAgQUREX0VSUk5PKFBlcm1pc3Npb25FcnJvciwgRVBFUk0pOworICAgIFBPU1RfSU5JVChQcm9jZXNzTG9va3VwRXJyb3IpOworICAgIEFERF9FUlJOTyhQcm9jZXNzTG9va3VwRXJyb3IsIEVTUkNIKTsKKyAgICBQT1NUX0lOSVQoVGltZW91dEVycm9yKTsKKyAgICBBRERfRVJSTk8oVGltZW91dEVycm9yLCBFVElNRURPVVQpOworCiAgICAgcHJlYWxsb2NhdGVfbWVtZXJyb3JzKCk7CiAKICAgICBpZiAoIVB5RXhjX1JlY3Vyc2lvbkVycm9ySW5zdCkgewpAQCAtMjEzNCw0ICsyNDU5LDUgQEAKIHsKICAgICBQeV9DTEVBUihQeUV4Y19SZWN1cnNpb25FcnJvckluc3QpOwogICAgIGZyZWVfcHJlYWxsb2NhdGVkX21lbWVycm9ycygpOworICAgIFB5X0NMRUFSKGVycm5vbWFwKTsKIH0KZGlmZiAtLWdpdCBhL09iamVjdHMvZmlsZW9iamVjdC5jIGIvT2JqZWN0cy9maWxlb2JqZWN0LmMKaW5kZXggZDIwZjE5Ni4uZTFjNDdjZSAxMDA2NDQKLS0tIGEvT2JqZWN0cy9maWxlb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9maWxlb2JqZWN0LmMKQEAgLTMwLDExICszMCwxMiBAQAogICAgICAgICAgICAgICBjaGFyICplcnJvcnMsIGNoYXIgKm5ld2xpbmUsIGludCBjbG9zZWZkKQogewogICAgIFB5T2JqZWN0ICppbywgKnN0cmVhbTsKKyAgICBfUHlfSURFTlRJRklFUihvcGVuKTsKIAogICAgIGlvID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlKCJpbyIpOwogICAgIGlmIChpbyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBzdHJlYW0gPSBQeU9iamVjdF9DYWxsTWV0aG9kKGlvLCAib3BlbiIsICJpc2lzc3NpIiwgZmQsIG1vZGUsCisgICAgc3RyZWFtID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChpbywgJlB5SWRfb3BlbiwgImlzaXNzc2kiLCBmZCwgbW9kZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlcmluZywgZW5jb2RpbmcsIGVycm9ycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld2xpbmUsIGNsb3NlZmQpOwogICAgIFB5X0RFQ1JFRihpbyk7CkBAIC01OCw4ICs1OSw5IEBACiAgICAgewogICAgICAgICBQeU9iamVjdCAqcmVhZGVyOwogICAgICAgICBQeU9iamVjdCAqYXJnczsKKyAgICAgICAgX1B5X0lERU5USUZJRVIocmVhZGxpbmUpOwogCi0gICAgICAgIHJlYWRlciA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZiwgInJlYWRsaW5lIik7CisgICAgICAgIHJlYWRlciA9IF9QeU9iamVjdF9HZXRBdHRySWQoZiwgJlB5SWRfcmVhZGxpbmUpOwogICAgICAgICBpZiAocmVhZGVyID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgaWYgKG4gPD0gMCkKQEAgLTEwMywyMyArMTA1LDE4IEBACiAgICAgICAgIH0KICAgICB9CiAgICAgaWYgKG4gPCAwICYmIHJlc3VsdCAhPSBOVUxMICYmIFB5VW5pY29kZV9DaGVjayhyZXN1bHQpKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgKnMgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpOwotICAgICAgICBQeV9zc2l6ZV90IGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShyZXN1bHQpOworICAgICAgICBQeV9zc2l6ZV90IGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlc3VsdCk7CiAgICAgICAgIGlmIChsZW4gPT0gMCkgewogICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CiAgICAgICAgICAgICByZXN1bHQgPSBOVUxMOwogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0VPRkVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJFT0Ygd2hlbiByZWFkaW5nIGEgbGluZSIpOwogICAgICAgICB9Ci0gICAgICAgIGVsc2UgaWYgKHNbbGVuLTFdID09ICdcbicpIHsKLSAgICAgICAgICAgIGlmIChyZXN1bHQtPm9iX3JlZmNudCA9PSAxKQotICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SZXNpemUoJnJlc3VsdCwgbGVuLTEpOwotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgUHlPYmplY3QgKnY7Ci0gICAgICAgICAgICAgICAgdiA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzLCBsZW4tMSk7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7Ci0gICAgICAgICAgICAgICAgcmVzdWx0ID0gdjsKLSAgICAgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX1JFQURfQ0hBUihyZXN1bHQsIGxlbi0xKSA9PSAnXG4nKSB7CisgICAgICAgICAgICBQeU9iamVjdCAqdjsKKyAgICAgICAgICAgIHYgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKHJlc3VsdCwgMCwgbGVuLTEpOworICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgICAgICAgICByZXN1bHQgPSB2OwogICAgICAgICB9CiAgICAgfQogICAgIHJldHVybiByZXN1bHQ7CkBAIC0xMzEsMTEgKzEyOCwxMyBAQAogUHlGaWxlX1dyaXRlT2JqZWN0KFB5T2JqZWN0ICp2LCBQeU9iamVjdCAqZiwgaW50IGZsYWdzKQogewogICAgIFB5T2JqZWN0ICp3cml0ZXIsICp2YWx1ZSwgKmFyZ3MsICpyZXN1bHQ7CisgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOworCiAgICAgaWYgKGYgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAid3JpdGVvYmplY3Qgd2l0aCBOVUxMIGZpbGUiKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgICB3cml0ZXIgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGYsICJ3cml0ZSIpOworICAgIHdyaXRlciA9IF9QeU9iamVjdF9HZXRBdHRySWQoZiwgJlB5SWRfd3JpdGUpOwogICAgIGlmICh3cml0ZXIgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwogICAgIGlmIChmbGFncyAmIFB5X1BSSU5UX1JBVykgewpAQCAtMTk4LDExICsxOTcsMTIgQEAKIHsKICAgICBpbnQgZmQ7CiAgICAgUHlPYmplY3QgKm1ldGg7CisgICAgX1B5X0lERU5USUZJRVIoZmlsZW5vKTsKIAogICAgIGlmIChQeUxvbmdfQ2hlY2sobykpIHsKICAgICAgICAgZmQgPSBQeUxvbmdfQXNMb25nKG8pOwogICAgIH0KLSAgICBlbHNlIGlmICgobWV0aCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcobywgImZpbGVubyIpKSAhPSBOVUxMKQorICAgIGVsc2UgaWYgKChtZXRoID0gX1B5T2JqZWN0X0dldEF0dHJJZChvLCAmUHlJZF9maWxlbm8pKSAhPSBOVUxMKQogICAgIHsKICAgICAgICAgUHlPYmplY3QgKmZubyA9IFB5RXZhbF9DYWxsT2JqZWN0KG1ldGgsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYobWV0aCk7CkBAIC0yOTcsOCArMjk3LDggQEAKICAgICAgICAgKnArKyA9IGM7CiAgICAgICAgIGlmIChjID09ICdcbicpIGJyZWFrOwogICAgIH0KLSAgICBpZiAoIGMgPT0gRU9GICYmIHNraXBuZXh0bGYgKQotICAgICAgICBuZXdsaW5ldHlwZXMgfD0gTkVXTElORV9DUjsKKyAgICAvKiBpZiAoIGMgPT0gRU9GICYmIHNraXBuZXh0bGYgKQorICAgICAgICBuZXdsaW5ldHlwZXMgfD0gTkVXTElORV9DUjsgKi8KICAgICBGVU5MT0NLRklMRShzdHJlYW0pOwogICAgICpwID0gJ1wwJzsKICAgICBpZiAoIHNraXBuZXh0bGYgKSB7CmRpZmYgLS1naXQgYS9PYmplY3RzL2Zsb2F0b2JqZWN0LmMgYi9PYmplY3RzL2Zsb2F0b2JqZWN0LmMKaW5kZXggZTE0NmE0Zi4uYTczODI0OSAxMDA2NDQKLS0tIGEvT2JqZWN0cy9mbG9hdG9iamVjdC5jCisrKyBiL09iamVjdHMvZmxvYXRvYmplY3QuYwpAQCAtMTUsMTEgKzE1LDYgQEAKICNkZWZpbmUgTUlOKHgsIHkpICgoeCkgPCAoeSkgPyAoeCkgOiAoeSkpCiAKIAotI2lmZGVmIF9PU0ZfU09VUkNFCi0vKiBPU0YxIDUuMSBkb2Vzbid0IG1ha2UgdGhpcyBhdmFpbGFibGUgd2l0aCBYT1BFTl9TT1VSQ0VfRVhURU5ERUQgZGVmaW5lZCAqLwotZXh0ZXJuIGludCBmaW5pdGUoZG91YmxlKTsKLSNlbmRpZgotCiAvKiBTcGVjaWFsIGZyZWUgbGlzdAogCiAgICBTaW5jZSBzb21lIFB5dGhvbiBwcm9ncmFtcyBjYW4gc3BlbmQgbXVjaCBvZiB0aGVpciB0aW1lIGFsbG9jYXRpbmcKQEAgLTE3OSwyNSArMTc0LDE0IEBACiAgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CiAKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHYpKSB7Ci0gICAgICAgIFB5X3NzaXplX3QgaSwgYnVmbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHYpOwotICAgICAgICBQeV9VTklDT0RFICpidWZwdHI7Ci0gICAgICAgIHNfYnVmZmVyID0gUHlVbmljb2RlX1RyYW5zZm9ybURlY2ltYWxUb0FTQ0lJKAotICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUodiksIGJ1Zmxlbik7CisgICAgICAgIHNfYnVmZmVyID0gX1B5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsQW5kU3BhY2VUb0FTQ0lJKHYpOwogICAgICAgICBpZiAoc19idWZmZXIgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAvKiBSZXBsYWNlIG5vbi1BU0NJSSB3aGl0ZXNwYWNlIHdpdGggJyAnICovCi0gICAgICAgIGJ1ZnB0ciA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNfYnVmZmVyKTsKLSAgICAgICAgZm9yIChpID0gMDsgaSA8IGJ1ZmxlbjsgaSsrKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIGNoID0gYnVmcHRyW2ldOwotICAgICAgICAgICAgaWYgKGNoID4gMTI3ICYmIFB5X1VOSUNPREVfSVNTUEFDRShjaCkpCi0gICAgICAgICAgICAgICAgYnVmcHRyW2ldID0gJyAnOwotICAgICAgICB9Ci0gICAgICAgIHMgPSBfUHlVbmljb2RlX0FzU3RyaW5nQW5kU2l6ZShzX2J1ZmZlciwgJmxlbik7CisgICAgICAgIHMgPSBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZShzX2J1ZmZlciwgJmxlbik7CiAgICAgICAgIGlmIChzID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihzX2J1ZmZlcik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICBsYXN0ID0gcyArIGxlbjsKICAgICB9CiAgICAgZWxzZSBpZiAoUHlPYmplY3RfQXNDaGFyQnVmZmVyKHYsICZzLCAmbGVuKSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLApAQCAtNTIzLDggKzUwNyw3IEBACiAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZyhyKTsKIAogIFVuaW1wbGVtZW50ZWQ6Ci0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogfQogCiBzdGF0aWMgUHlfaGFzaF90CkBAIC0xMDgwLDcgKzEwNjMsNyBAQAogY2hhcl9mcm9tX2hleChpbnQgeCkKIHsKICAgICBhc3NlcnQoMCA8PSB4ICYmIHggPCAxNik7Ci0gICAgcmV0dXJuICIwMTIzNDU2Nzg5YWJjZGVmIlt4XTsKKyAgICByZXR1cm4gUHlfaGV4ZGlnaXRzW3hdOwogfQogCiBzdGF0aWMgaW50CkBAIC0xNzUzLDkgKzE3MzYsOCBAQAogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOl9fZm9ybWF0X18iLCAmZm9ybWF0X3NwZWMpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXR1cm4gX1B5RmxvYXRfRm9ybWF0QWR2YW5jZWQoc2VsZiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoZm9ybWF0X3NwZWMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoZm9ybWF0X3NwZWMpKTsKKyAgICByZXR1cm4gX1B5RmxvYXRfRm9ybWF0QWR2YW5jZWQoc2VsZiwgZm9ybWF0X3NwZWMsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKGZvcm1hdF9zcGVjKSk7CiB9CiAKIFB5RG9jX1NUUlZBUihmbG9hdF9fZm9ybWF0X19kb2MsCkBAIC0yMjUxLDcgKzIyMzMsNyBAQAogCiAgICAgICAgIC8qIEVpZ2h0aCBieXRlICovCiAgICAgICAgICpwID0gZmxvICYgMHhGRjsKLSAgICAgICAgcCArPSBpbmNyOworICAgICAgICAvKiBwICs9IGluY3I7ICovCiAKICAgICAgICAgLyogRG9uZSAqLwogICAgICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL09iamVjdHMvZnJhbWVvYmplY3QuYyBiL09iamVjdHMvZnJhbWVvYmplY3QuYwppbmRleCAxMGZiOGIzLi5jMWVjODExIDEwMDY0NAotLS0gYS9PYmplY3RzL2ZyYW1lb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9mcmFtZW9iamVjdC5jCkBAIC0xNSwxMSArMTUsMTEgQEAKICNkZWZpbmUgT0ZGKHgpIG9mZnNldG9mKFB5RnJhbWVPYmplY3QsIHgpCiAKIHN0YXRpYyBQeU1lbWJlckRlZiBmcmFtZV9tZW1iZXJsaXN0W10gPSB7Ci0gICAgeyJmX2JhY2siLCAgICAgICAgICBUX09CSkVDVCwgICAgICAgT0ZGKGZfYmFjayksICAgIFJFQURPTkxZfSwKLSAgICB7ImZfY29kZSIsICAgICAgICAgIFRfT0JKRUNULCAgICAgICBPRkYoZl9jb2RlKSwgICAgUkVBRE9OTFl9LAotICAgIHsiZl9idWlsdGlucyIsICAgICAgVF9PQkpFQ1QsICAgICAgIE9GRihmX2J1aWx0aW5zKSxSRUFET05MWX0sCi0gICAgeyJmX2dsb2JhbHMiLCAgICAgICBUX09CSkVDVCwgICAgICAgT0ZGKGZfZ2xvYmFscyksIFJFQURPTkxZfSwKLSAgICB7ImZfbGFzdGkiLCAgICAgICAgIFRfSU5ULCAgICAgICAgICBPRkYoZl9sYXN0aSksICAgUkVBRE9OTFl9LAorICAgIHsiZl9iYWNrIiwgICAgICAgICAgVF9PQkpFQ1QsICAgICAgIE9GRihmX2JhY2spLCAgICAgIFJFQURPTkxZfSwKKyAgICB7ImZfY29kZSIsICAgICAgICAgIFRfT0JKRUNULCAgICAgICBPRkYoZl9jb2RlKSwgICAgICBSRUFET05MWX0sCisgICAgeyJmX2J1aWx0aW5zIiwgICAgICBUX09CSkVDVCwgICAgICAgT0ZGKGZfYnVpbHRpbnMpLCAgUkVBRE9OTFl9LAorICAgIHsiZl9nbG9iYWxzIiwgICAgICAgVF9PQkpFQ1QsICAgICAgIE9GRihmX2dsb2JhbHMpLCAgIFJFQURPTkxZfSwKKyAgICB7ImZfbGFzdGkiLCAgICAgICAgIFRfSU5ULCAgICAgICAgICBPRkYoZl9sYXN0aSksICAgICBSRUFET05MWX0sCiAgICAge05VTEx9ICAgICAgLyogU2VudGluZWwgKi8KIH07CiAKQEAgLTQ0NCw2ICs0NDQsNyBAQAogICAgIFB5X0NMRUFSKGYtPmZfZXhjX3R5cGUpOwogICAgIFB5X0NMRUFSKGYtPmZfZXhjX3ZhbHVlKTsKICAgICBQeV9DTEVBUihmLT5mX2V4Y190cmFjZWJhY2spOworICAgIFB5X0NMRUFSKGYtPmZfeWllbGRmcm9tKTsKIAogICAgIGNvID0gZi0+Zl9jb2RlOwogICAgIGlmIChjby0+Y29fem9tYmllZnJhbWUgPT0gTlVMTCkKQEAgLTQ3NSw2ICs0NzYsNyBAQAogICAgIFB5X1ZJU0lUKGYtPmZfZXhjX3R5cGUpOwogICAgIFB5X1ZJU0lUKGYtPmZfZXhjX3ZhbHVlKTsKICAgICBQeV9WSVNJVChmLT5mX2V4Y190cmFjZWJhY2spOworICAgIFB5X1ZJU0lUKGYtPmZfeWllbGRmcm9tKTsKIAogICAgIC8qIGxvY2FscyAqLwogICAgIHNsb3RzID0gZi0+Zl9jb2RlLT5jb19ubG9jYWxzICsgUHlUdXBsZV9HRVRfU0laRShmLT5mX2NvZGUtPmNvX2NlbGx2YXJzKSArIFB5VHVwbGVfR0VUX1NJWkUoZi0+Zl9jb2RlLT5jb19mcmVldmFycyk7CkBAIC01MDgsNiArNTEwLDcgQEAKICAgICBQeV9DTEVBUihmLT5mX2V4Y192YWx1ZSk7CiAgICAgUHlfQ0xFQVIoZi0+Zl9leGNfdHJhY2ViYWNrKTsKICAgICBQeV9DTEVBUihmLT5mX3RyYWNlKTsKKyAgICBQeV9DTEVBUihmLT5mX3lpZWxkZnJvbSk7CiAKICAgICAvKiBsb2NhbHMgKi8KICAgICBzbG90cyA9IGYtPmZfY29kZS0+Y29fbmxvY2FscyArIFB5VHVwbGVfR0VUX1NJWkUoZi0+Zl9jb2RlLT5jb19jZWxsdmFycykgKyBQeVR1cGxlX0dFVF9TSVpFKGYtPmZfY29kZS0+Y29fZnJlZXZhcnMpOwpAQCAtNzExLDYgKzcxNCw3IEBACiAgICAgZi0+Zl9sYXN0aSA9IC0xOwogICAgIGYtPmZfbGluZW5vID0gY29kZS0+Y29fZmlyc3RsaW5lbm87CiAgICAgZi0+Zl9pYmxvY2sgPSAwOworICAgIGYtPmZfeWllbGRmcm9tID0gTlVMTDsKIAogICAgIF9QeU9iamVjdF9HQ19UUkFDSyhmKTsKICAgICByZXR1cm4gZjsKZGlmZiAtLWdpdCBhL09iamVjdHMvZnVuY29iamVjdC5jIGIvT2JqZWN0cy9mdW5jb2JqZWN0LmMKaW5kZXggMjI5MmE5ZS4uNDk0MTViOSAxMDA2NDQKLS0tIGEvT2JqZWN0cy9mdW5jb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9mdW5jb2JqZWN0LmMKQEAgLTYsNyArNiw3IEBACiAjaW5jbHVkZSAic3RydWN0bWVtYmVyLmgiCiAKIFB5T2JqZWN0ICoKLVB5RnVuY3Rpb25fTmV3KFB5T2JqZWN0ICpjb2RlLCBQeU9iamVjdCAqZ2xvYmFscykKK1B5RnVuY3Rpb25fTmV3V2l0aFF1YWxOYW1lKFB5T2JqZWN0ICpjb2RlLCBQeU9iamVjdCAqZ2xvYmFscywgUHlPYmplY3QgKnF1YWxuYW1lKQogewogICAgIFB5RnVuY3Rpb25PYmplY3QgKm9wID0gUHlPYmplY3RfR0NfTmV3KFB5RnVuY3Rpb25PYmplY3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlB5RnVuY3Rpb25fVHlwZSk7CkBAIC01NCw2ICs1NCwxMSBAQAogICAgICAgICAgICAgUHlfSU5DUkVGKG1vZHVsZSk7CiAgICAgICAgICAgICBvcC0+ZnVuY19tb2R1bGUgPSBtb2R1bGU7CiAgICAgICAgIH0KKyAgICAgICAgaWYgKHF1YWxuYW1lKQorICAgICAgICAgICAgb3AtPmZ1bmNfcXVhbG5hbWUgPSBxdWFsbmFtZTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgb3AtPmZ1bmNfcXVhbG5hbWUgPSBvcC0+ZnVuY19uYW1lOworICAgICAgICBQeV9JTkNSRUYob3AtPmZ1bmNfcXVhbG5hbWUpOwogICAgIH0KICAgICBlbHNlCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNjIsNiArNjcsMTIgQEAKIH0KIAogUHlPYmplY3QgKgorUHlGdW5jdGlvbl9OZXcoUHlPYmplY3QgKmNvZGUsIFB5T2JqZWN0ICpnbG9iYWxzKQoreworICAgIHJldHVybiBQeUZ1bmN0aW9uX05ld1dpdGhRdWFsTmFtZShjb2RlLCBnbG9iYWxzLCBOVUxMKTsKK30KKworUHlPYmplY3QgKgogUHlGdW5jdGlvbl9HZXRDb2RlKFB5T2JqZWN0ICpvcCkKIHsKICAgICBpZiAoIVB5RnVuY3Rpb25fQ2hlY2sob3ApKSB7CkBAIC0yMzQsNDIgKzI0NSw2IEBACiB9OwogCiBzdGF0aWMgUHlPYmplY3QgKgotZnVuY19nZXRfZGljdChQeUZ1bmN0aW9uT2JqZWN0ICpvcCkKLXsKLSAgICBpZiAob3AtPmZ1bmNfZGljdCA9PSBOVUxMKSB7Ci0gICAgICAgIG9wLT5mdW5jX2RpY3QgPSBQeURpY3RfTmV3KCk7Ci0gICAgICAgIGlmIChvcC0+ZnVuY19kaWN0ID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgUHlfSU5DUkVGKG9wLT5mdW5jX2RpY3QpOwotICAgIHJldHVybiBvcC0+ZnVuY19kaWN0OwotfQotCi1zdGF0aWMgaW50Ci1mdW5jX3NldF9kaWN0KFB5RnVuY3Rpb25PYmplY3QgKm9wLCBQeU9iamVjdCAqdmFsdWUpCi17Ci0gICAgUHlPYmplY3QgKnRtcDsKLQotICAgIC8qIEl0IGlzIGlsbGVnYWwgdG8gZGVsIGYuZnVuY19kaWN0ICovCi0gICAgaWYgKHZhbHVlID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJmdW5jdGlvbidzIGRpY3Rpb25hcnkgbWF5IG5vdCBiZSBkZWxldGVkIik7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgLyogQ2FuIG9ubHkgc2V0IGZ1bmNfZGljdCB0byBhIGRpY3Rpb25hcnkgKi8KLSAgICBpZiAoIVB5RGljdF9DaGVjayh2YWx1ZSkpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJzZXR0aW5nIGZ1bmN0aW9uJ3MgZGljdGlvbmFyeSB0byBhIG5vbi1kaWN0Iik7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgdG1wID0gb3AtPmZ1bmNfZGljdDsKLSAgICBQeV9JTkNSRUYodmFsdWUpOwotICAgIG9wLT5mdW5jX2RpY3QgPSB2YWx1ZTsKLSAgICBQeV9YREVDUkVGKHRtcCk7Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyBQeU9iamVjdCAqCiBmdW5jX2dldF9jb2RlKFB5RnVuY3Rpb25PYmplY3QgKm9wKQogewogICAgIFB5X0lOQ1JFRihvcC0+ZnVuY19jb2RlKTsKQEAgLTMzNCw2ICszMDksMzIgQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKK2Z1bmNfZ2V0X3F1YWxuYW1lKFB5RnVuY3Rpb25PYmplY3QgKm9wKQoreworICAgIFB5X0lOQ1JFRihvcC0+ZnVuY19xdWFsbmFtZSk7CisgICAgcmV0dXJuIG9wLT5mdW5jX3F1YWxuYW1lOworfQorCitzdGF0aWMgaW50CitmdW5jX3NldF9xdWFsbmFtZShQeUZ1bmN0aW9uT2JqZWN0ICpvcCwgUHlPYmplY3QgKnZhbHVlKQoreworICAgIFB5T2JqZWN0ICp0bXA7CisKKyAgICAvKiBOb3QgbGVnYWwgdG8gZGVsIGYuX19xdWFsbmFtZV9fIG9yIHRvIHNldCBpdCB0byBhbnl0aGluZworICAgICAqIG90aGVyIHRoYW4gYSBzdHJpbmcgb2JqZWN0LiAqLworICAgIGlmICh2YWx1ZSA9PSBOVUxMIHx8ICFQeVVuaWNvZGVfQ2hlY2sodmFsdWUpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiX19xdWFsbmFtZV9fIG11c3QgYmUgc2V0IHRvIGEgc3RyaW5nIG9iamVjdCIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHRtcCA9IG9wLT5mdW5jX3F1YWxuYW1lOworICAgIFB5X0lOQ1JFRih2YWx1ZSk7CisgICAgb3AtPmZ1bmNfcXVhbG5hbWUgPSB2YWx1ZTsKKyAgICBQeV9ERUNSRUYodG1wKTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKIGZ1bmNfZ2V0X2RlZmF1bHRzKFB5RnVuY3Rpb25PYmplY3QgKm9wKQogewogICAgIGlmIChvcC0+ZnVuY19kZWZhdWx0cyA9PSBOVUxMKSB7CkBAIC00MzksOCArNDQwLDkgQEAKICAgICAgKHNldHRlcilmdW5jX3NldF9rd2RlZmF1bHRzfSwKICAgICB7Il9fYW5ub3RhdGlvbnNfXyIsIChnZXR0ZXIpZnVuY19nZXRfYW5ub3RhdGlvbnMsCiAgICAgIChzZXR0ZXIpZnVuY19zZXRfYW5ub3RhdGlvbnN9LAotICAgIHsiX19kaWN0X18iLCAoZ2V0dGVyKWZ1bmNfZ2V0X2RpY3QsIChzZXR0ZXIpZnVuY19zZXRfZGljdH0sCisgICAgeyJfX2RpY3RfXyIsIFB5T2JqZWN0X0dlbmVyaWNHZXREaWN0LCBQeU9iamVjdF9HZW5lcmljU2V0RGljdH0sCiAgICAgeyJfX25hbWVfXyIsIChnZXR0ZXIpZnVuY19nZXRfbmFtZSwgKHNldHRlcilmdW5jX3NldF9uYW1lfSwKKyAgICB7Il9fcXVhbG5hbWVfXyIsIChnZXR0ZXIpZnVuY19nZXRfcXVhbG5hbWUsIChzZXR0ZXIpZnVuY19zZXRfcXVhbG5hbWV9LAogICAgIHtOVUxMfSAvKiBTZW50aW5lbCAqLwogfTsKIApAQCAtNTYxLDYgKzU2Myw3IEBACiAgICAgUHlfWERFQ1JFRihvcC0+ZnVuY19kaWN0KTsKICAgICBQeV9YREVDUkVGKG9wLT5mdW5jX2Nsb3N1cmUpOwogICAgIFB5X1hERUNSRUYob3AtPmZ1bmNfYW5ub3RhdGlvbnMpOworICAgIFB5X1hERUNSRUYob3AtPmZ1bmNfcXVhbG5hbWUpOwogICAgIFB5T2JqZWN0X0dDX0RlbChvcCk7CiB9CiAKQEAgLTU2OCw3ICs1NzEsNyBAQAogZnVuY19yZXByKFB5RnVuY3Rpb25PYmplY3QgKm9wKQogewogICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPGZ1bmN0aW9uICVVIGF0ICVwPiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3AtPmZ1bmNfbmFtZSwgb3ApOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wLT5mdW5jX3F1YWxuYW1lLCBvcCk7CiB9CiAKIHN0YXRpYyBpbnQKQEAgLTU4NCw2ICs1ODcsNyBAQAogICAgIFB5X1ZJU0lUKGYtPmZ1bmNfZGljdCk7CiAgICAgUHlfVklTSVQoZi0+ZnVuY19jbG9zdXJlKTsKICAgICBQeV9WSVNJVChmLT5mdW5jX2Fubm90YXRpb25zKTsKKyAgICBQeV9WSVNJVChmLT5mdW5jX3F1YWxuYW1lKTsKICAgICByZXR1cm4gMDsKIH0KIApAQCAtNjY3LDggKzY3MSw4IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCiAgICAgZnVuY3Rpb25fY2FsbCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jYWxsICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KLSAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHJvICovCi0gICAgUHlPYmplY3RfR2VuZXJpY1NldEF0dHIsICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHJvICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KICAgICBQeV9UUEZMQUdTX0RFRkFVTFQgfCBQeV9UUEZMQUdTX0hBVkVfR0MsLyogdHBfZmxhZ3MgKi8KICAgICBmdW5jX2RvYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RvYyAqLwpAQCAtNzE0LDYgKzcxOCw3IEBACiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgUHlPYmplY3RfSEVBRAogICAgIFB5T2JqZWN0ICpjbV9jYWxsYWJsZTsKKyAgICBQeU9iamVjdCAqY21fZGljdDsKIH0gY2xhc3NtZXRob2Q7CiAKIHN0YXRpYyB2b2lkCkBAIC03MjEsNiArNzI2LDcgQEAKIHsKICAgICBfUHlPYmplY3RfR0NfVU5UUkFDSygoUHlPYmplY3QgKiljbSk7CiAgICAgUHlfWERFQ1JFRihjbS0+Y21fY2FsbGFibGUpOworICAgIFB5X1hERUNSRUYoY20tPmNtX2RpY3QpOwogICAgIFB5X1RZUEUoY20pLT50cF9mcmVlKChQeU9iamVjdCAqKWNtKTsKIH0KIApAQCAtNzI4LDYgKzczNCw3IEBACiBjbV90cmF2ZXJzZShjbGFzc21ldGhvZCAqY20sIHZpc2l0cHJvYyB2aXNpdCwgdm9pZCAqYXJnKQogewogICAgIFB5X1ZJU0lUKGNtLT5jbV9jYWxsYWJsZSk7CisgICAgUHlfVklTSVQoY20tPmNtX2RpY3QpOwogICAgIHJldHVybiAwOwogfQogCkBAIC03MzUsNiArNzQyLDcgQEAKIGNtX2NsZWFyKGNsYXNzbWV0aG9kICpjbSkKIHsKICAgICBQeV9DTEVBUihjbS0+Y21fY2FsbGFibGUpOworICAgIFB5X0NMRUFSKGNtLT5jbV9kaWN0KTsKICAgICByZXR1cm4gMDsKIH0KIApAQCAtNzc0LDYgKzc4MiwyOCBAQAogICAgIHtOVUxMfSAgLyogU2VudGluZWwgKi8KIH07CiAKK3N0YXRpYyBQeU9iamVjdCAqCitjbV9nZXRfX19pc2Fic3RyYWN0bWV0aG9kX18oY2xhc3NtZXRob2QgKmNtLCB2b2lkICpjbG9zdXJlKQoreworICAgIGludCByZXMgPSBfUHlPYmplY3RfSXNBYnN0cmFjdChjbS0+Y21fY2FsbGFibGUpOworICAgIGlmIChyZXMgPT0gLTEpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGVsc2UgaWYgKHJlcykgeworICAgICAgICBQeV9SRVRVUk5fVFJVRTsKKyAgICB9CisgICAgUHlfUkVUVVJOX0ZBTFNFOworfQorCitzdGF0aWMgUHlHZXRTZXREZWYgY21fZ2V0c2V0bGlzdFtdID0geworICAgIHsiX19pc2Fic3RyYWN0bWV0aG9kX18iLAorICAgICAoZ2V0dGVyKWNtX2dldF9fX2lzYWJzdHJhY3RtZXRob2RfXywgTlVMTCwKKyAgICAgTlVMTCwKKyAgICAgTlVMTH0sCisgICAgeyJfX2RpY3RfXyIsIFB5T2JqZWN0X0dlbmVyaWNHZXREaWN0LCBQeU9iamVjdF9HZW5lcmljU2V0RGljdCwgTlVMTCwgTlVMTH0sCisgICAge05VTEx9IC8qIFNlbnRpbmVsICovCit9OworCiBQeURvY19TVFJWQVIoY2xhc3NtZXRob2RfZG9jLAogImNsYXNzbWV0aG9kKGZ1bmN0aW9uKSAtPiBtZXRob2RcblwKIFxuXApAQCAtODEyLDcgKzg0Miw3IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jYWxsICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KLSAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRybyAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX2J1ZmZlciAqLwogICAgIFB5X1RQRkxBR1NfREVGQVVMVCB8IFB5X1RQRkxBR1NfQkFTRVRZUEUgfCBQeV9UUEZMQUdTX0hBVkVfR0MsCkBAIC04MjUsMTIgKzg1NSwxMiBAQAogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KICAgICBjbV9tZW1iZXJsaXN0LCAgICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCisgICAgY21fZ2V0c2V0bGlzdCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Jhc2UgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3QgKi8KICAgICBjbV9kZXNjcl9nZXQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX2dldCAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3Jfc2V0ICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0b2Zmc2V0ICovCisgICAgb2Zmc2V0b2YoY2xhc3NtZXRob2QsIGNtX2RpY3QpLCAgICAgICAgICAgICAvKiB0cF9kaWN0b2Zmc2V0ICovCiAgICAgY21faW5pdCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pbml0ICovCiAgICAgUHlUeXBlX0dlbmVyaWNBbGxvYywgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hbGxvYyAqLwogICAgIFB5VHlwZV9HZW5lcmljTmV3LCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbmV3ICovCkBAIC04NjksNiArODk5LDcgQEAKIHR5cGVkZWYgc3RydWN0IHsKICAgICBQeU9iamVjdF9IRUFECiAgICAgUHlPYmplY3QgKnNtX2NhbGxhYmxlOworICAgIFB5T2JqZWN0ICpzbV9kaWN0OwogfSBzdGF0aWNtZXRob2Q7CiAKIHN0YXRpYyB2b2lkCkBAIC04NzYsNiArOTA3LDcgQEAKIHsKICAgICBfUHlPYmplY3RfR0NfVU5UUkFDSygoUHlPYmplY3QgKilzbSk7CiAgICAgUHlfWERFQ1JFRihzbS0+c21fY2FsbGFibGUpOworICAgIFB5X1hERUNSRUYoc20tPnNtX2RpY3QpOwogICAgIFB5X1RZUEUoc20pLT50cF9mcmVlKChQeU9iamVjdCAqKXNtKTsKIH0KIApAQCAtODgzLDYgKzkxNSw3IEBACiBzbV90cmF2ZXJzZShzdGF0aWNtZXRob2QgKnNtLCB2aXNpdHByb2MgdmlzaXQsIHZvaWQgKmFyZykKIHsKICAgICBQeV9WSVNJVChzbS0+c21fY2FsbGFibGUpOworICAgIFB5X1ZJU0lUKHNtLT5zbV9kaWN0KTsKICAgICByZXR1cm4gMDsKIH0KIApAQCAtODkwLDYgKzkyMyw3IEBACiBzbV9jbGVhcihzdGF0aWNtZXRob2QgKnNtKQogewogICAgIFB5X0NMRUFSKHNtLT5zbV9jYWxsYWJsZSk7CisgICAgUHlfQ0xFQVIoc20tPnNtX2RpY3QpOwogICAgIHJldHVybiAwOwogfQogCkBAIC05MjcsNiArOTYxLDI4IEBACiAgICAge05VTEx9ICAvKiBTZW50aW5lbCAqLwogfTsKIAorc3RhdGljIFB5T2JqZWN0ICoKK3NtX2dldF9fX2lzYWJzdHJhY3RtZXRob2RfXyhzdGF0aWNtZXRob2QgKnNtLCB2b2lkICpjbG9zdXJlKQoreworICAgIGludCByZXMgPSBfUHlPYmplY3RfSXNBYnN0cmFjdChzbS0+c21fY2FsbGFibGUpOworICAgIGlmIChyZXMgPT0gLTEpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGVsc2UgaWYgKHJlcykgeworICAgICAgICBQeV9SRVRVUk5fVFJVRTsKKyAgICB9CisgICAgUHlfUkVUVVJOX0ZBTFNFOworfQorCitzdGF0aWMgUHlHZXRTZXREZWYgc21fZ2V0c2V0bGlzdFtdID0geworICAgIHsiX19pc2Fic3RyYWN0bWV0aG9kX18iLAorICAgICAoZ2V0dGVyKXNtX2dldF9fX2lzYWJzdHJhY3RtZXRob2RfXywgTlVMTCwKKyAgICAgTlVMTCwKKyAgICAgTlVMTH0sCisgICAgeyJfX2RpY3RfXyIsIFB5T2JqZWN0X0dlbmVyaWNHZXREaWN0LCBQeU9iamVjdF9HZW5lcmljU2V0RGljdCwgTlVMTCwgTlVMTH0sCisgICAge05VTEx9IC8qIFNlbnRpbmVsICovCit9OworCiBQeURvY19TVFJWQVIoc3RhdGljbWV0aG9kX2RvYywKICJzdGF0aWNtZXRob2QoZnVuY3Rpb24pIC0+IG1ldGhvZFxuXAogXG5cCkBAIC05NjIsNyArMTAxOCw3IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jYWxsICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KLSAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRybyAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX2J1ZmZlciAqLwogICAgIFB5X1RQRkxBR1NfREVGQVVMVCB8IFB5X1RQRkxBR1NfQkFTRVRZUEUgfCBQeV9UUEZMQUdTX0hBVkVfR0MsCkBAIC05NzUsMTIgKzEwMzEsMTIgQEAKICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCiAgICAgc21fbWVtYmVybGlzdCwgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLworICAgIHNtX2dldHNldGxpc3QsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0ICovCiAgICAgc21fZGVzY3JfZ2V0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9nZXQgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX3NldCAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdG9mZnNldCAqLworICAgIG9mZnNldG9mKHN0YXRpY21ldGhvZCwgc21fZGljdCksICAgICAgICAgICAgLyogdHBfZGljdG9mZnNldCAqLwogICAgIHNtX2luaXQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaW5pdCAqLwogICAgIFB5VHlwZV9HZW5lcmljQWxsb2MsICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYWxsb2MgKi8KICAgICBQeVR5cGVfR2VuZXJpY05ldywgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX25ldyAqLwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9nZW5vYmplY3QuYyBiL09iamVjdHMvZ2Vub2JqZWN0LmMKaW5kZXggNDI2MDhlZi4uYjMyZDliNiAxMDA2NDQKLS0tIGEvT2JqZWN0cy9nZW5vYmplY3QuYworKysgYi9PYmplY3RzL2dlbm9iamVjdC5jCkBAIC01LDYgKzUsOSBAQAogI2luY2x1ZGUgInN0cnVjdG1lbWJlci5oIgogI2luY2x1ZGUgIm9wY29kZS5oIgogCitzdGF0aWMgUHlPYmplY3QgKmdlbl9jbG9zZShQeUdlbk9iamVjdCAqZ2VuLCBQeU9iamVjdCAqYXJncyk7CitzdGF0aWMgdm9pZCBnZW5fdW5kZWxlZ2F0ZShQeUdlbk9iamVjdCAqZ2VuKTsKKwogc3RhdGljIGludAogZ2VuX3RyYXZlcnNlKFB5R2VuT2JqZWN0ICpnZW4sIHZpc2l0cHJvYyB2aXNpdCwgdm9pZCAqYXJnKQogewpAQCAtOTAsMTIgKzkzLDE4IEBACiAKICAgICAvKiBJZiB0aGUgZ2VuZXJhdG9yIGp1c3QgcmV0dXJuZWQgKGFzIG9wcG9zZWQgdG8geWllbGRpbmcpLCBzaWduYWwKICAgICAgKiB0aGF0IHRoZSBnZW5lcmF0b3IgaXMgZXhoYXVzdGVkLiAqLwotICAgIGlmIChyZXN1bHQgPT0gUHlfTm9uZSAmJiBmLT5mX3N0YWNrdG9wID09IE5VTEwpIHsKLSAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7Ci0gICAgICAgIHJlc3VsdCA9IE5VTEw7Ci0gICAgICAgIC8qIFNldCBleGNlcHRpb24gaWYgbm90IGNhbGxlZCBieSBnZW5faXRlcm5leHQoKSAqLwotICAgICAgICBpZiAoYXJnKQorICAgIGlmIChyZXN1bHQgJiYgZi0+Zl9zdGFja3RvcCA9PSBOVUxMKSB7CisgICAgICAgIGlmIChyZXN1bHQgPT0gUHlfTm9uZSkgeworICAgICAgICAgICAgLyogRGVsYXkgZXhjZXB0aW9uIGluc3RhbnRpYXRpb24gaWYgd2UgY2FuICovCiAgICAgICAgICAgICBQeUVycl9TZXROb25lKFB5RXhjX1N0b3BJdGVyYXRpb24pOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgUHlPYmplY3QgKmUgPSBQeVN0b3BJdGVyYXRpb25fQ3JlYXRlKHJlc3VsdCk7CisgICAgICAgICAgICBpZiAoZSAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjX1N0b3BJdGVyYXRpb24sIGUpOworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihlKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBQeV9DTEVBUihyZXN1bHQpOwogICAgIH0KIAogICAgIGlmICghcmVzdWx0IHx8IGYtPmZfc3RhY2t0b3AgPT0gTlVMTCkgewpAQCAtMTExLDggKzEyMCw4IEBACiAgICAgICAgIFB5X1hERUNSRUYodCk7CiAgICAgICAgIFB5X1hERUNSRUYodik7CiAgICAgICAgIFB5X1hERUNSRUYodGIpOwotICAgICAgICBQeV9ERUNSRUYoZik7CiAgICAgICAgIGdlbi0+Z2lfZnJhbWUgPSBOVUxMOworICAgICAgICBQeV9ERUNSRUYoZik7CiAgICAgfQogCiAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTEyNSwxNyArMTM0LDkxIEBACiBzdGF0aWMgUHlPYmplY3QgKgogZ2VuX3NlbmQoUHlHZW5PYmplY3QgKmdlbiwgUHlPYmplY3QgKmFyZykKIHsKLSAgICByZXR1cm4gZ2VuX3NlbmRfZXgoZ2VuLCBhcmcsIDApOworICAgIGludCBleGMgPSAwOworICAgIFB5T2JqZWN0ICpyZXQ7CisgICAgUHlPYmplY3QgKnlmID0gZ2VuLT5naV9mcmFtZSA/IGdlbi0+Z2lfZnJhbWUtPmZfeWllbGRmcm9tIDogTlVMTDsKKyAgICAvKiBYWFggKG5jb2dobGFuKTogQXJlIHRoZSBpbmNyZWYvZGVjcmVmIG9uIGFyZyBhbmQgeWYgc3RyaWN0bHkgbmVlZGVkPworICAgICAqICAgICAgICAgICAgICAgICBPciB3b3VsZCBpdCBiZSB2YWxpZCB0byByZWx5IG9uIGJvcnJvd2VkIHJlZmVyZW5jZXM/CisgICAgICovCisgICAgUHlfSU5DUkVGKGFyZyk7CisgICAgaWYgKHlmKSB7CisgICAgICAgIFB5X0lOQ1JFRih5Zik7CisgICAgICAgIGlmIChQeUdlbl9DaGVja0V4YWN0KHlmKSkgeworICAgICAgICAgICAgcmV0ID0gZ2VuX3NlbmQoKFB5R2VuT2JqZWN0ICopeWYsIGFyZyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBpZiAoYXJnID09IFB5X05vbmUpCisgICAgICAgICAgICAgICAgcmV0ID0gUHlJdGVyX05leHQoeWYpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJldCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoeWYsICJzZW5kIiwgIk8iLCBhcmcpOworICAgICAgICB9CisgICAgICAgIGlmIChyZXQpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRih5Zik7CisgICAgICAgICAgICBnb3RvIGRvbmU7CisgICAgICAgIH0KKyAgICAgICAgZ2VuX3VuZGVsZWdhdGUoZ2VuKTsKKyAgICAgICAgUHlfQ0xFQVIoYXJnKTsKKyAgICAgICAgaWYgKFB5R2VuX0ZldGNoU3RvcEl0ZXJhdGlvblZhbHVlKCZhcmcpIDwgMCkgeworICAgICAgICAgICAgZXhjID0gMTsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYoeWYpOworICAgIH0KKyAgICByZXQgPSBnZW5fc2VuZF9leChnZW4sIGFyZywgZXhjKTsKK2RvbmU6CisgICAgUHlfWERFQ1JFRihhcmcpOworICAgIHJldHVybiByZXQ7CiB9CiAKIFB5RG9jX1NUUlZBUihjbG9zZV9kb2MsCiAiY2xvc2UoYXJnKSAtPiByYWlzZSBHZW5lcmF0b3JFeGl0IGluc2lkZSBnZW5lcmF0b3IuIik7CiAKKy8qCisgKiAgIFRoaXMgaGVscGVyIGZ1bmN0aW9uIGlzIHVzZWQgYnkgZ2VuX2Nsb3NlIGFuZCBnZW5fdGhyb3cgdG8KKyAqICAgY2xvc2UgYSBzdWJpdGVyYXRvciBiZWluZyBkZWxlZ2F0ZWQgdG8gYnkgeWllbGQtZnJvbS4KKyAqLworCitzdGF0aWMgaW50CitnZW5fY2xvc2VfaXRlcihQeU9iamVjdCAqeWYpCit7CisgICAgUHlPYmplY3QgKnJldHZhbCA9IE5VTEw7CisgICAgCisgICAgaWYgKFB5R2VuX0NoZWNrRXhhY3QoeWYpKSB7CisgICAgICAgIHJldHZhbCA9IGdlbl9jbG9zZSgoUHlHZW5PYmplY3QgKil5ZiwgTlVMTCk7CisgICAgICAgIGlmIChyZXR2YWwgPT0gTlVMTCkgeworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgUHlPYmplY3QgKm1ldGggPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHlmLCAiY2xvc2UiKTsKKyAgICAgICAgaWYgKG1ldGggPT0gTlVMTCkgeworICAgICAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkgeworICAgICAgICAgICAgICAgIFB5RXJyX1dyaXRlVW5yYWlzYWJsZSh5Zik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgcmV0dmFsID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uKG1ldGgsICIiKTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihtZXRoKTsKKyAgICAgICAgICAgIGlmICghcmV0dmFsKQorICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgIH0KKyAgICBQeV9YREVDUkVGKHJldHZhbCk7CisgICAgcmV0dXJuIDA7Cit9ICAgICAgIAorCiBzdGF0aWMgUHlPYmplY3QgKgogZ2VuX2Nsb3NlKFB5R2VuT2JqZWN0ICpnZW4sIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5T2JqZWN0ICpyZXR2YWw7Ci0gICAgUHlFcnJfU2V0Tm9uZShQeUV4Y19HZW5lcmF0b3JFeGl0KTsKKyAgICBQeU9iamVjdCAqeWYgPSBnZW4tPmdpX2ZyYW1lID8gZ2VuLT5naV9mcmFtZS0+Zl95aWVsZGZyb20gOiBOVUxMOworICAgIGludCBlcnIgPSAwOworCisgICAgaWYgKHlmKSB7CisgICAgICAgIFB5X0lOQ1JFRih5Zik7CisgICAgICAgIGVyciA9IGdlbl9jbG9zZV9pdGVyKHlmKTsKKyAgICAgICAgZ2VuX3VuZGVsZWdhdGUoZ2VuKTsKKyAgICAgICAgUHlfREVDUkVGKHlmKTsKKyAgICB9CisgICAgaWYgKGVyciA9PSAwKQorICAgICAgICBQeUVycl9TZXROb25lKFB5RXhjX0dlbmVyYXRvckV4aXQpOwogICAgIHJldHZhbCA9IGdlbl9zZW5kX2V4KGdlbiwgUHlfTm9uZSwgMSk7CiAgICAgaWYgKHJldHZhbCkgewogICAgICAgICBQeV9ERUNSRUYocmV0dmFsKTsKQEAgLTE5Niw3ICsyNzksNyBAQAogICAgICAgICBfUHlfTmV3UmVmZXJlbmNlKHNlbGYpOwogICAgICAgICBzZWxmLT5vYl9yZWZjbnQgPSByZWZjbnQ7CiAgICAgfQotICAgIGFzc2VydChQeVR5cGVfSVNfR0Moc2VsZi0+b2JfdHlwZSkgJiYKKyAgICBhc3NlcnQoUHlUeXBlX0lTX0dDKFB5X1RZUEUoc2VsZikpICYmCiAgICAgICAgICAgIF9QeV9BU19HQyhzZWxmKS0+Z2MuZ2NfcmVmcyAhPSBfUHlHQ19SRUZTX1VOVFJBQ0tFRCk7CiAKICAgICAvKiBJZiBQeV9SRUZfREVCVUcsIF9QeV9OZXdSZWZlcmVuY2UgYnVtcGVkIF9QeV9SZWZUb3RhbCwgc28KQEAgLTIwOSw4ICsyOTIsOCBAQAogICAgICAqIHVuZG9uZS4KICAgICAgKi8KICNpZmRlZiBDT1VOVF9BTExPQ1MKLSAgICAtLXNlbGYtPm9iX3R5cGUtPnRwX2ZyZWVzOwotICAgIC0tc2VsZi0+b2JfdHlwZS0+dHBfYWxsb2NzOworICAgIC0tKFB5X1RZUEUoc2VsZiktPnRwX2ZyZWVzKTsKKyAgICAtLShQeV9UWVBFKHNlbGYpLT50cF9hbGxvY3MpOwogI2VuZGlmCiB9CiAKQEAgLTIyNiwxMCArMzA5LDU1IEBACiAgICAgUHlPYmplY3QgKnR5cDsKICAgICBQeU9iamVjdCAqdGIgPSBOVUxMOwogICAgIFB5T2JqZWN0ICp2YWwgPSBOVUxMOworICAgIFB5T2JqZWN0ICp5ZiA9IGdlbi0+Z2lfZnJhbWUgPyBnZW4tPmdpX2ZyYW1lLT5mX3lpZWxkZnJvbSA6IE5VTEw7CiAKICAgICBpZiAoIVB5QXJnX1VucGFja1R1cGxlKGFyZ3MsICJ0aHJvdyIsIDEsIDMsICZ0eXAsICZ2YWwsICZ0YikpCiAgICAgICAgIHJldHVybiBOVUxMOwogCisgICAgaWYgKHlmKSB7CisgICAgICAgIFB5T2JqZWN0ICpyZXQ7CisgICAgICAgIGludCBlcnI7CisgICAgICAgIFB5X0lOQ1JFRih5Zik7CisgICAgICAgIGlmIChQeUVycl9HaXZlbkV4Y2VwdGlvbk1hdGNoZXModHlwLCBQeUV4Y19HZW5lcmF0b3JFeGl0KSkgeworICAgICAgICAgICAgZXJyID0gZ2VuX2Nsb3NlX2l0ZXIoeWYpOworICAgICAgICAgICAgUHlfREVDUkVGKHlmKTsKKyAgICAgICAgICAgIGdlbl91bmRlbGVnYXRlKGdlbik7CisgICAgICAgICAgICBpZiAoZXJyIDwgMCkKKyAgICAgICAgICAgICAgICByZXR1cm4gZ2VuX3NlbmRfZXgoZ2VuLCBQeV9Ob25lLCAxKTsKKyAgICAgICAgICAgIGdvdG8gdGhyb3dfaGVyZTsKKyAgICAgICAgfQorICAgICAgICBpZiAoUHlHZW5fQ2hlY2tFeGFjdCh5ZikpIHsKKyAgICAgICAgICAgIHJldCA9IGdlbl90aHJvdygoUHlHZW5PYmplY3QgKil5ZiwgYXJncyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBQeU9iamVjdCAqbWV0aCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoeWYsICJ0aHJvdyIpOworICAgICAgICAgICAgaWYgKG1ldGggPT0gTlVMTCkgeworICAgICAgICAgICAgICAgIGlmICghUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHlmKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHlmKTsKKyAgICAgICAgICAgICAgICBnZW5fdW5kZWxlZ2F0ZShnZW4pOworICAgICAgICAgICAgICAgIGdvdG8gdGhyb3dfaGVyZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldCA9IFB5T2JqZWN0X0NhbGxPYmplY3QobWV0aCwgYXJncyk7CisgICAgICAgICAgICBQeV9ERUNSRUYobWV0aCk7CisgICAgICAgIH0KKyAgICAgICAgUHlfREVDUkVGKHlmKTsKKyAgICAgICAgaWYgKCFyZXQpIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICp2YWw7CisgICAgICAgICAgICBnZW5fdW5kZWxlZ2F0ZShnZW4pOworICAgICAgICAgICAgaWYgKFB5R2VuX0ZldGNoU3RvcEl0ZXJhdGlvblZhbHVlKCZ2YWwpID09IDApIHsKKyAgICAgICAgICAgICAgICByZXQgPSBnZW5fc2VuZF9leChnZW4sIHZhbCwgMCk7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbCk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHJldCA9IGdlbl9zZW5kX2V4KGdlbiwgUHlfTm9uZSwgMSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHJldDsKKyAgICB9CisKK3Rocm93X2hlcmU6CiAgICAgLyogRmlyc3QsIGNoZWNrIHRoZSB0cmFjZWJhY2sgYXJndW1lbnQsIHJlcGxhY2luZyBOb25lIHdpdGgKICAgICAgICBOVUxMLiAqLwogICAgIGlmICh0YiA9PSBQeV9Ob25lKSB7CkBAIC0yNzIsNyArNDAwLDcgQEAKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICJleGNlcHRpb25zIG11c3QgYmUgY2xhc3NlcyBvciBpbnN0YW5jZXMgIgogICAgICAgICAgICAgICAgICAgICAgImRlcml2aW5nIGZyb20gQmFzZUV4Y2VwdGlvbiwgbm90ICVzIiwKLSAgICAgICAgICAgICAgICAgICAgIHR5cC0+b2JfdHlwZS0+dHBfbmFtZSk7CisgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKHR5cCktPnRwX25hbWUpOwogICAgICAgICAgICAgZ290byBmYWlsZWRfdGhyb3c7CiAgICAgfQogCkBAIC0yOTEsOSArNDE5LDc1IEBACiBzdGF0aWMgUHlPYmplY3QgKgogZ2VuX2l0ZXJuZXh0KFB5R2VuT2JqZWN0ICpnZW4pCiB7Ci0gICAgcmV0dXJuIGdlbl9zZW5kX2V4KGdlbiwgTlVMTCwgMCk7CisgICAgUHlPYmplY3QgKnZhbCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnJldDsKKyAgICBpbnQgZXhjID0gMDsKKyAgICBQeU9iamVjdCAqeWYgPSBnZW4tPmdpX2ZyYW1lID8gZ2VuLT5naV9mcmFtZS0+Zl95aWVsZGZyb20gOiBOVUxMOworICAgIGlmICh5ZikgeworICAgICAgICBQeV9JTkNSRUYoeWYpOworICAgICAgICAvKiBjZXZhbC5jIGVuc3VyZXMgdGhhdCB5ZiBpcyBhbiBpdGVyYXRvciAqLworICAgICAgICByZXQgPSBQeV9UWVBFKHlmKS0+dHBfaXRlcm5leHQoeWYpOworICAgICAgICBpZiAocmV0KSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoeWYpOworICAgICAgICAgICAgcmV0dXJuIHJldDsKKyAgICAgICAgfQorICAgICAgICBnZW5fdW5kZWxlZ2F0ZShnZW4pOworICAgICAgICBpZiAoUHlHZW5fRmV0Y2hTdG9wSXRlcmF0aW9uVmFsdWUoJnZhbCkgPCAwKQorICAgICAgICAgICAgZXhjID0gMTsKKyAgICAgICAgUHlfREVDUkVGKHlmKTsKKyAgICB9CisgICAgcmV0ID0gZ2VuX3NlbmRfZXgoZ2VuLCB2YWwsIGV4Yyk7CisgICAgUHlfWERFQ1JFRih2YWwpOworICAgIHJldHVybiByZXQ7CiB9CiAKKy8qCisgKiAgIEluIGNlcnRhaW4gcmVjdXJzaXZlIHNpdHVhdGlvbnMsIGEgZ2VuZXJhdG9yIG1heSBsb3NlIGl0cyBmcmFtZQorICogICBiZWZvcmUgd2UgZ2V0IGEgY2hhbmNlIHRvIGNsZWFyIGZfeWllbGRmcm9tLCBzbyB3ZSB1c2UgdGhpcworICogICBoZWxwZXIgZnVuY3Rpb24uCisgKi8KKworc3RhdGljIHZvaWQKK2dlbl91bmRlbGVnYXRlKFB5R2VuT2JqZWN0ICpnZW4pIHsKKyAgICBpZiAoZ2VuLT5naV9mcmFtZSkgeworICAgICAgICBQeV9YREVDUkVGKGdlbi0+Z2lfZnJhbWUtPmZfeWllbGRmcm9tKTsKKyAgICAgICAgZ2VuLT5naV9mcmFtZS0+Zl95aWVsZGZyb20gPSBOVUxMOworICAgIH0KK30KKworLyoKKyAqICAgSWYgU3RvcEl0ZXJhdGlvbiBleGNlcHRpb24gaXMgc2V0LCBmZXRjaGVzIGl0cyAndmFsdWUnCisgKiAgIGF0dHJpYnV0ZSBpZiBhbnksIG90aGVyd2lzZSBzZXRzIHB2YWx1ZSB0byBOb25lLgorICoKKyAqICAgUmV0dXJucyAwIGlmIG5vIGV4Y2VwdGlvbiBvciBTdG9wSXRlcmF0aW9uIGlzIHNldC4KKyAqICAgSWYgYW55IG90aGVyIGV4Y2VwdGlvbiBpcyBzZXQsIHJldHVybnMgLTEgYW5kIGxlYXZlcworICogICBwdmFsdWUgdW5jaGFuZ2VkLgorICovCisKK2ludAorUHlHZW5fRmV0Y2hTdG9wSXRlcmF0aW9uVmFsdWUoUHlPYmplY3QgKipwdmFsdWUpIHsKKyAgICBQeU9iamVjdCAqZXQsICpldiwgKnRiOworICAgIFB5T2JqZWN0ICp2YWx1ZSA9IE5VTEw7CisgICAgCisgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfU3RvcEl0ZXJhdGlvbikpIHsKKyAgICAgICAgUHlFcnJfRmV0Y2goJmV0LCAmZXYsICZ0Yik7CisgICAgICAgIFB5X1hERUNSRUYoZXQpOworICAgICAgICBQeV9YREVDUkVGKHRiKTsKKyAgICAgICAgaWYgKGV2KSB7CisgICAgICAgICAgICB2YWx1ZSA9ICgoUHlTdG9wSXRlcmF0aW9uT2JqZWN0ICopZXYpLT52YWx1ZTsKKyAgICAgICAgICAgIFB5X0lOQ1JFRih2YWx1ZSk7CisgICAgICAgICAgICBQeV9ERUNSRUYoZXYpOworICAgICAgICB9CisgICAgfSBlbHNlIGlmIChQeUVycl9PY2N1cnJlZCgpKSB7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgaWYgKHZhbHVlID09IE5VTEwpIHsKKyAgICAgICAgdmFsdWUgPSBQeV9Ob25lOworICAgICAgICBQeV9JTkNSRUYodmFsdWUpOworICAgIH0KKyAgICAqcHZhbHVlID0gdmFsdWU7CisgICAgcmV0dXJuIDA7Cit9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBnZW5fcmVwcihQeUdlbk9iamVjdCAqZ2VuKQpAQCAtNDEwLDE1ICs2MDQsMTMgQEAKICAgICBpbnQgaTsKICAgICBQeUZyYW1lT2JqZWN0ICpmID0gZ2VuLT5naV9mcmFtZTsKIAotICAgIGlmIChmID09IE5VTEwgfHwgZi0+Zl9zdGFja3RvcCA9PSBOVUxMIHx8IGYtPmZfaWJsb2NrIDw9IDApCisgICAgaWYgKGYgPT0gTlVMTCB8fCBmLT5mX3N0YWNrdG9wID09IE5VTEwpCiAgICAgICAgIHJldHVybiAwOyAvKiBubyBmcmFtZSBvciBlbXB0eSBibG9ja3N0YWNrID09IG5vIGZpbmFsaXphdGlvbiAqLwogCiAgICAgLyogQW55IGJsb2NrIHR5cGUgYmVzaWRlcyBhIGxvb3AgcmVxdWlyZXMgY2xlYW51cC4gKi8KLSAgICBpID0gZi0+Zl9pYmxvY2s7Ci0gICAgd2hpbGUgKC0taSA+PSAwKSB7CisgICAgZm9yIChpID0gMDsgaSA8IGYtPmZfaWJsb2NrOyBpKyspCiAgICAgICAgIGlmIChmLT5mX2Jsb2Nrc3RhY2tbaV0uYl90eXBlICE9IFNFVFVQX0xPT1ApCiAgICAgICAgICAgICByZXR1cm4gMTsKLSAgICB9CiAKICAgICAvKiBObyBibG9ja3MgZXhjZXB0IGxvb3BzLCBpdCdzIHNhZmUgdG8gc2tpcCBmaW5hbGl6YXRpb24uICovCiAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9PYmplY3RzL2xpc3RvYmplY3QuYyBiL09iamVjdHMvbGlzdG9iamVjdC5jCmluZGV4IDAwZGU1OTcuLjZmMWVkYzUgMTAwNjQ0Ci0tLSBhL09iamVjdHMvbGlzdG9iamVjdC5jCisrKyBiL09iamVjdHMvbGlzdG9iamVjdC5jCkBAIC05NywxNiArOTcsMjMgQEAKIHN0YXRpYyBQeUxpc3RPYmplY3QgKmZyZWVfbGlzdFtQeUxpc3RfTUFYRlJFRUxJU1RdOwogc3RhdGljIGludCBudW1mcmVlID0gMDsKIAotdm9pZAotUHlMaXN0X0Zpbmkodm9pZCkKK2ludAorUHlMaXN0X0NsZWFyRnJlZUxpc3Qodm9pZCkKIHsKICAgICBQeUxpc3RPYmplY3QgKm9wOwotCisgICAgaW50IHJldCA9IG51bWZyZWU7CiAgICAgd2hpbGUgKG51bWZyZWUpIHsKICAgICAgICAgb3AgPSBmcmVlX2xpc3RbLS1udW1mcmVlXTsKICAgICAgICAgYXNzZXJ0KFB5TGlzdF9DaGVja0V4YWN0KG9wKSk7CiAgICAgICAgIFB5T2JqZWN0X0dDX0RlbChvcCk7CiAgICAgfQorICAgIHJldHVybiByZXQ7Cit9CisKK3ZvaWQKK1B5TGlzdF9GaW5pKHZvaWQpCit7CisgICAgUHlMaXN0X0NsZWFyRnJlZUxpc3QoKTsKIH0KIAogUHlPYmplY3QgKgpAQCAtNzM2LDYgKzc0MywxOSBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgorbGlzdGNsZWFyKFB5TGlzdE9iamVjdCAqc2VsZikKK3sKKyAgICBsaXN0X2NsZWFyKHNlbGYpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbGlzdGNvcHkoUHlMaXN0T2JqZWN0ICpzZWxmKQoreworICAgIHJldHVybiBsaXN0X3NsaWNlKHNlbGYsIDAsIFB5X1NJWkUoc2VsZikpOworfQorCitzdGF0aWMgUHlPYmplY3QgKgogbGlzdGFwcGVuZChQeUxpc3RPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICp2KQogewogICAgIGlmIChhcHAxKHNlbGYsIHYpID09IDApCkBAIC0yMTA4LDggKzIxMjgsNyBAQAogbGlzdGluZGV4KFB5TGlzdE9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlfc3NpemVfdCBpLCBzdGFydD0wLCBzdG9wPVB5X1NJWkUoc2VsZik7Ci0gICAgUHlPYmplY3QgKnYsICpmb3JtYXRfdHVwbGUsICplcnJfc3RyaW5nOwotICAgIHN0YXRpYyBQeU9iamVjdCAqZXJyX2Zvcm1hdCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnY7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98TyZPJjppbmRleCIsICZ2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfUHlFdmFsX1NsaWNlSW5kZXgsICZzdGFydCwKQEAgLTIxMzIsMjAgKzIxNTEsNyBAQAogICAgICAgICBlbHNlIGlmIChjbXAgPCAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIGlmIChlcnJfZm9ybWF0ID09IE5VTEwpIHsKLSAgICAgICAgZXJyX2Zvcm1hdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIlciBpcyBub3QgaW4gbGlzdCIpOwotICAgICAgICBpZiAoZXJyX2Zvcm1hdCA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIGZvcm1hdF90dXBsZSA9IFB5VHVwbGVfUGFjaygxLCB2KTsKLSAgICBpZiAoZm9ybWF0X3R1cGxlID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGVycl9zdHJpbmcgPSBQeVVuaWNvZGVfRm9ybWF0KGVycl9mb3JtYXQsIGZvcm1hdF90dXBsZSk7Ci0gICAgUHlfREVDUkVGKGZvcm1hdF90dXBsZSk7Ci0gICAgaWYgKGVycl9zdHJpbmcgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjX1ZhbHVlRXJyb3IsIGVycl9zdHJpbmcpOwotICAgIFB5X0RFQ1JFRihlcnJfc3RyaW5nKTsKKyAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwgIiVSIGlzIG5vdCBpbiBsaXN0Iiwgdik7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKQEAgLTIyMDEsMTAgKzIyMDcsOCBAQAogICAgIFB5TGlzdE9iamVjdCAqdmwsICp3bDsKICAgICBQeV9zc2l6ZV90IGk7CiAKLSAgICBpZiAoIVB5TGlzdF9DaGVjayh2KSB8fCAhUHlMaXN0X0NoZWNrKHcpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFQeUxpc3RfQ2hlY2sodikgfHwgIVB5TGlzdF9DaGVjayh3KSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogCiAgICAgdmwgPSAoUHlMaXN0T2JqZWN0ICopdjsKICAgICB3bCA9IChQeUxpc3RPYmplY3QgKil3OwpAQCAtMjMxMywxNyArMjMxNywyMSBAQAogIkwuX19yZXZlcnNlZF9fKCkgLS0gcmV0dXJuIGEgcmV2ZXJzZSBpdGVyYXRvciBvdmVyIHRoZSBsaXN0Iik7CiBQeURvY19TVFJWQVIoc2l6ZW9mX2RvYywKICJMLl9fc2l6ZW9mX18oKSAtLSBzaXplIG9mIEwgaW4gbWVtb3J5LCBpbiBieXRlcyIpOworUHlEb2NfU1RSVkFSKGNsZWFyX2RvYywKKyJMLmNsZWFyKCkgLT4gTm9uZSAtLSByZW1vdmUgYWxsIGl0ZW1zIGZyb20gTCIpOworUHlEb2NfU1RSVkFSKGNvcHlfZG9jLAorIkwuY29weSgpIC0+IGxpc3QgLS0gYSBzaGFsbG93IGNvcHkgb2YgTCIpOwogUHlEb2NfU1RSVkFSKGFwcGVuZF9kb2MsCi0iTC5hcHBlbmQob2JqZWN0KSAtLSBhcHBlbmQgb2JqZWN0IHRvIGVuZCIpOworIkwuYXBwZW5kKG9iamVjdCkgLT4gTm9uZSAtLSBhcHBlbmQgb2JqZWN0IHRvIGVuZCIpOwogUHlEb2NfU1RSVkFSKGV4dGVuZF9kb2MsCi0iTC5leHRlbmQoaXRlcmFibGUpIC0tIGV4dGVuZCBsaXN0IGJ5IGFwcGVuZGluZyBlbGVtZW50cyBmcm9tIHRoZSBpdGVyYWJsZSIpOworIkwuZXh0ZW5kKGl0ZXJhYmxlKSAtPiBOb25lIC0tIGV4dGVuZCBsaXN0IGJ5IGFwcGVuZGluZyBlbGVtZW50cyBmcm9tIHRoZSBpdGVyYWJsZSIpOwogUHlEb2NfU1RSVkFSKGluc2VydF9kb2MsCiAiTC5pbnNlcnQoaW5kZXgsIG9iamVjdCkgLS0gaW5zZXJ0IG9iamVjdCBiZWZvcmUgaW5kZXgiKTsKIFB5RG9jX1NUUlZBUihwb3BfZG9jLAogIkwucG9wKFtpbmRleF0pIC0+IGl0ZW0gLS0gcmVtb3ZlIGFuZCByZXR1cm4gaXRlbSBhdCBpbmRleCAoZGVmYXVsdCBsYXN0KS5cbiIKICJSYWlzZXMgSW5kZXhFcnJvciBpZiBsaXN0IGlzIGVtcHR5IG9yIGluZGV4IGlzIG91dCBvZiByYW5nZS4iKTsKIFB5RG9jX1NUUlZBUihyZW1vdmVfZG9jLAotIkwucmVtb3ZlKHZhbHVlKSAtLSByZW1vdmUgZmlyc3Qgb2NjdXJyZW5jZSBvZiB2YWx1ZS5cbiIKKyJMLnJlbW92ZSh2YWx1ZSkgLT4gTm9uZSAtLSByZW1vdmUgZmlyc3Qgb2NjdXJyZW5jZSBvZiB2YWx1ZS5cbiIKICJSYWlzZXMgVmFsdWVFcnJvciBpZiB0aGUgdmFsdWUgaXMgbm90IHByZXNlbnQuIik7CiBQeURvY19TVFJWQVIoaW5kZXhfZG9jLAogIkwuaW5kZXgodmFsdWUsIFtzdGFydCwgW3N0b3BdXSkgLT4gaW50ZWdlciAtLSByZXR1cm4gZmlyc3QgaW5kZXggb2YgdmFsdWUuXG4iCkBAIC0yMzMzLDcgKzIzNDEsNyBAQAogUHlEb2NfU1RSVkFSKHJldmVyc2VfZG9jLAogIkwucmV2ZXJzZSgpIC0tIHJldmVyc2UgKklOIFBMQUNFKiIpOwogUHlEb2NfU1RSVkFSKHNvcnRfZG9jLAotIkwuc29ydChrZXk9Tm9uZSwgcmV2ZXJzZT1GYWxzZSkgLS0gc3RhYmxlIHNvcnQgKklOIFBMQUNFKiIpOworIkwuc29ydChrZXk9Tm9uZSwgcmV2ZXJzZT1GYWxzZSkgLT4gTm9uZSAtLSBzdGFibGUgc29ydCAqSU4gUExBQ0UqIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqbGlzdF9zdWJzY3JpcHQoUHlMaXN0T2JqZWN0KiwgUHlPYmplY3QqKTsKIApAQCAtMjM0MSw5ICsyMzQ5LDExIEBACiAgICAgeyJfX2dldGl0ZW1fXyIsIChQeUNGdW5jdGlvbilsaXN0X3N1YnNjcmlwdCwgTUVUSF9PfE1FVEhfQ09FWElTVCwgZ2V0aXRlbV9kb2N9LAogICAgIHsiX19yZXZlcnNlZF9fIiwoUHlDRnVuY3Rpb24pbGlzdF9yZXZlcnNlZCwgTUVUSF9OT0FSR1MsIHJldmVyc2VkX2RvY30sCiAgICAgeyJfX3NpemVvZl9fIiwgIChQeUNGdW5jdGlvbilsaXN0X3NpemVvZiwgTUVUSF9OT0FSR1MsIHNpemVvZl9kb2N9LAorICAgIHsiY2xlYXIiLCAgICAgICAgICAgKFB5Q0Z1bmN0aW9uKWxpc3RjbGVhciwgICBNRVRIX05PQVJHUywgY2xlYXJfZG9jfSwKKyAgICB7ImNvcHkiLCAgICAgICAgICAgIChQeUNGdW5jdGlvbilsaXN0Y29weSwgICBNRVRIX05PQVJHUywgY29weV9kb2N9LAogICAgIHsiYXBwZW5kIiwgICAgICAgICAgKFB5Q0Z1bmN0aW9uKWxpc3RhcHBlbmQsICBNRVRIX08sIGFwcGVuZF9kb2N9LAogICAgIHsiaW5zZXJ0IiwgICAgICAgICAgKFB5Q0Z1bmN0aW9uKWxpc3RpbnNlcnQsICBNRVRIX1ZBUkFSR1MsIGluc2VydF9kb2N9LAotICAgIHsiZXh0ZW5kIiwgICAgICAoUHlDRnVuY3Rpb24pbGlzdGV4dGVuZCwgIE1FVEhfTywgZXh0ZW5kX2RvY30sCisgICAgeyJleHRlbmQiLCAgICAgICAgICAoUHlDRnVuY3Rpb24pbGlzdGV4dGVuZCwgIE1FVEhfTywgZXh0ZW5kX2RvY30sCiAgICAgeyJwb3AiLCAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pbGlzdHBvcCwgICAgIE1FVEhfVkFSQVJHUywgcG9wX2RvY30sCiAgICAgeyJyZW1vdmUiLCAgICAgICAgICAoUHlDRnVuY3Rpb24pbGlzdHJlbW92ZSwgIE1FVEhfTywgcmVtb3ZlX2RvY30sCiAgICAgeyJpbmRleCIsICAgICAgICAgICAoUHlDRnVuY3Rpb24pbGlzdGluZGV4LCAgIE1FVEhfVkFSQVJHUywgaW5kZXhfZG9jfSwKQEAgLTI0MDYsNyArMjQxNiw3IEBACiAgICAgICAgICAgICBzcmMgPSBzZWxmLT5vYl9pdGVtOwogICAgICAgICAgICAgZGVzdCA9ICgoUHlMaXN0T2JqZWN0ICopcmVzdWx0KS0+b2JfaXRlbTsKICAgICAgICAgICAgIGZvciAoY3VyID0gc3RhcnQsIGkgPSAwOyBpIDwgc2xpY2VsZW5ndGg7Ci0gICAgICAgICAgICAgICAgIGN1ciArPSBzdGVwLCBpKyspIHsKKyAgICAgICAgICAgICAgICAgY3VyICs9IChzaXplX3Qpc3RlcCwgaSsrKSB7CiAgICAgICAgICAgICAgICAgaXQgPSBzcmNbY3VyXTsKICAgICAgICAgICAgICAgICBQeV9JTkNSRUYoaXQpOwogICAgICAgICAgICAgICAgIGRlc3RbaV0gPSBpdDsKQEAgLTI0OTcsNyArMjUwNyw3IEBACiAgICAgICAgICAgICAgICAgICAgIHNlbGYtPm9iX2l0ZW0gKyBjdXIgKyAxLAogICAgICAgICAgICAgICAgICAgICBsaW0gKiBzaXplb2YoUHlPYmplY3QgKikpOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgY3VyID0gc3RhcnQgKyBzbGljZWxlbmd0aCpzdGVwOworICAgICAgICAgICAgY3VyID0gc3RhcnQgKyAoc2l6ZV90KXNsaWNlbGVuZ3RoICogc3RlcDsKICAgICAgICAgICAgIGlmIChjdXIgPCAoc2l6ZV90KVB5X1NJWkUoc2VsZikpIHsKICAgICAgICAgICAgICAgICBtZW1tb3ZlKHNlbGYtPm9iX2l0ZW0gKyBjdXIgLSBzbGljZWxlbmd0aCwKICAgICAgICAgICAgICAgICAgICAgc2VsZi0+b2JfaXRlbSArIGN1ciwKQEAgLTI1NjEsNyArMjU3MSw3IEBACiAgICAgICAgICAgICBzZWxmaXRlbXMgPSBzZWxmLT5vYl9pdGVtOwogICAgICAgICAgICAgc2VxaXRlbXMgPSBQeVNlcXVlbmNlX0Zhc3RfSVRFTVMoc2VxKTsKICAgICAgICAgICAgIGZvciAoY3VyID0gc3RhcnQsIGkgPSAwOyBpIDwgc2xpY2VsZW5ndGg7Ci0gICAgICAgICAgICAgICAgIGN1ciArPSBzdGVwLCBpKyspIHsKKyAgICAgICAgICAgICAgICAgY3VyICs9IChzaXplX3Qpc3RlcCwgaSsrKSB7CiAgICAgICAgICAgICAgICAgZ2FyYmFnZVtpXSA9IHNlbGZpdGVtc1tjdXJdOwogICAgICAgICAgICAgICAgIGlucyA9IHNlcWl0ZW1zW2ldOwogICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihpbnMpOwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9sb25nb2JqZWN0LmMgYi9PYmplY3RzL2xvbmdvYmplY3QuYwppbmRleCBhMGIxNmE2Li5hYjQ5ZjI4IDEwMDY0NAotLS0gYS9PYmplY3RzL2xvbmdvYmplY3QuYworKysgYi9PYmplY3RzL2xvbmdvYmplY3QuYwpAQCAtMzIyLDggKzMyMiwxNSBAQAogI2RlZmluZSBQWV9BQlNfTE9OR19NSU4gICAgICAgICAoMC0odW5zaWduZWQgbG9uZylMT05HX01JTikKICNkZWZpbmUgUFlfQUJTX1NTSVpFX1RfTUlOICAgICAgKDAtKHNpemVfdClQWV9TU0laRV9UX01JTikKIAotLyogR2V0IGEgQyBsb25nIGludCBmcm9tIGEgbG9uZyBpbnQgb2JqZWN0LgotICAgUmV0dXJucyAtMSBhbmQgc2V0cyBhbiBlcnJvciBjb25kaXRpb24gaWYgb3ZlcmZsb3cgb2NjdXJzLiAqLworLyogR2V0IGEgQyBsb25nIGludCBmcm9tIGEgbG9uZyBpbnQgb2JqZWN0IG9yIGFueSBvYmplY3QgdGhhdCBoYXMgYW4gX19pbnRfXworICAgbWV0aG9kLgorCisgICBPbiBvdmVyZmxvdywgcmV0dXJuIC0xIGFuZCBzZXQgKm92ZXJmbG93IHRvIDEgb3IgLTEgZGVwZW5kaW5nIG9uIHRoZSBzaWduIG9mCisgICB0aGUgcmVzdWx0LiAgT3RoZXJ3aXNlICpvdmVyZmxvdyBpcyAwLgorCisgICBGb3Igb3RoZXIgZXJyb3JzIChlLmcuLCBUeXBlRXJyb3IpLCByZXR1cm4gLTEgYW5kIHNldCBhbiBlcnJvciBjb25kaXRpb24uCisgICBJbiB0aGlzIGNhc2UgKm92ZXJmbG93IHdpbGwgYmUgMC4KKyovCiAKIGxvbmcKIFB5TG9uZ19Bc0xvbmdBbmRPdmVyZmxvdyhQeU9iamVjdCAqdnYsIGludCAqb3ZlcmZsb3cpCkBAIC00MTIsNiArNDE5LDkgQEAKICAgICByZXR1cm4gcmVzOwogfQogCisvKiBHZXQgYSBDIGxvbmcgaW50IGZyb20gYSBsb25nIGludCBvYmplY3Qgb3IgYW55IG9iamVjdCB0aGF0IGhhcyBhbiBfX2ludF9fCisgICBtZXRob2QuICBSZXR1cm4gLTEgYW5kIHNldCBhbiBlcnJvciBpZiBvdmVyZmxvdyBvY2N1cnMuICovCisKIGxvbmcKIFB5TG9uZ19Bc0xvbmcoUHlPYmplY3QgKm9iaikKIHsKQEAgLTkyMyw3ICs5MzMsNyBAQAogCiB9CiAKLS8qIENyZWF0ZSBhIG5ldyBsb25nIChvciBpbnQpIG9iamVjdCBmcm9tIGEgQyBwb2ludGVyICovCisvKiBDcmVhdGUgYSBuZXcgbG9uZyBpbnQgb2JqZWN0IGZyb20gYSBDIHBvaW50ZXIgKi8KIAogUHlPYmplY3QgKgogUHlMb25nX0Zyb21Wb2lkUHRyKHZvaWQgKnApCkBAIC05NDEsMTUgKzk1MSwxMSBAQAogCiB9CiAKLS8qIEdldCBhIEMgcG9pbnRlciBmcm9tIGEgbG9uZyBvYmplY3QgKG9yIGFuIGludCBvYmplY3QgaW4gc29tZSBjYXNlcykgKi8KKy8qIEdldCBhIEMgcG9pbnRlciBmcm9tIGEgbG9uZyBpbnQgb2JqZWN0LiAqLwogCiB2b2lkICoKIFB5TG9uZ19Bc1ZvaWRQdHIoUHlPYmplY3QgKnZ2KQogewotICAgIC8qIFRoaXMgZnVuY3Rpb24gd2lsbCBhbGxvdyBpbnQgb3IgbG9uZyBvYmplY3RzLiBJZiB2diBpcyBuZWl0aGVyLAotICAgICAgIHRoZW4gdGhlIFB5TG9uZ19Bc0xvbmcqKCkgZnVuY3Rpb25zIHdpbGwgcmFpc2UgdGhlIGV4Y2VwdGlvbjoKLSAgICAgICBQeUV4Y19TeXN0ZW1FcnJvciwgImJhZCBhcmd1bWVudCB0byBpbnRlcm5hbCBmdW5jdGlvbiIKLSAgICAqLwogI2lmIFNJWkVPRl9WT0lEX1AgPD0gU0laRU9GX0xPTkcKICAgICBsb25nIHg7CiAKQEAgLTExMzAsOCArMTEzNiw4IEBACiAgICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CiB9CiAKLS8qIEdldCBhIEMgUFlfTE9OR19MT05HIGludCBmcm9tIGEgbG9uZyBpbnQgb2JqZWN0LgotICAgUmV0dXJuIC0xIGFuZCBzZXQgYW4gZXJyb3IgaWYgb3ZlcmZsb3cgb2NjdXJzLiAqLworLyogR2V0IGEgQyBsb25nIGxvbmcgaW50IGZyb20gYSBsb25nIGludCBvYmplY3Qgb3IgYW55IG9iamVjdCB0aGF0IGhhcyBhbgorICAgX19pbnRfXyBtZXRob2QuICBSZXR1cm4gLTEgYW5kIHNldCBhbiBlcnJvciBpZiBvdmVyZmxvdyBvY2N1cnMuICovCiAKIFBZX0xPTkdfTE9ORwogUHlMb25nX0FzTG9uZ0xvbmcoUHlPYmplY3QgKnZ2KQpAQCAtMTE5MywxMCArMTE5OSwxNCBAQAogICAgIGludCBvbmUgPSAxOwogICAgIGludCByZXM7CiAKLSAgICBpZiAodnYgPT0gTlVMTCB8fCAhUHlMb25nX0NoZWNrKHZ2KSkgeworICAgIGlmICh2diA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwogICAgICAgICByZXR1cm4gKHVuc2lnbmVkIFBZX0xPTkdfTE9ORyktMTsKICAgICB9CisgICAgaWYgKCFQeUxvbmdfQ2hlY2sodnYpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJhbiBpbnRlZ2VyIGlzIHJlcXVpcmVkIik7CisgICAgICAgIHJldHVybiAodW5zaWduZWQgUFlfTE9OR19MT05HKS0xOworICAgIH0KIAogICAgIHYgPSAoUHlMb25nT2JqZWN0Kil2djsKICAgICBzd2l0Y2goUHlfU0laRSh2KSkgewpAQCAtMTI4MywxMiArMTI5MywxNCBAQAogfQogI3VuZGVmIElTX0xJVFRMRV9FTkRJQU4KIAotLyogR2V0IGEgQyBsb25nIGxvbmcgaW50IGZyb20gYSBQeXRob24gbG9uZyBvciBQeXRob24gaW50IG9iamVjdC4KLSAgIE9uIG92ZXJmbG93LCByZXR1cm5zIC0xIGFuZCBzZXRzICpvdmVyZmxvdyB0byAxIG9yIC0xIGRlcGVuZGluZwotICAgb24gdGhlIHNpZ24gb2YgdGhlIHJlc3VsdC4gIE90aGVyd2lzZSAqb3ZlcmZsb3cgaXMgMC4KKy8qIEdldCBhIEMgbG9uZyBsb25nIGludCBmcm9tIGEgbG9uZyBpbnQgb2JqZWN0IG9yIGFueSBvYmplY3QgdGhhdCBoYXMgYW4KKyAgIF9faW50X18gbWV0aG9kLgogCi0gICBGb3Igb3RoZXIgZXJyb3JzIChlLmcuLCB0eXBlIGVycm9yKSwgcmV0dXJucyAtMSBhbmQgc2V0cyBhbiBlcnJvcgotICAgY29uZGl0aW9uLgorICAgT24gb3ZlcmZsb3csIHJldHVybiAtMSBhbmQgc2V0ICpvdmVyZmxvdyB0byAxIG9yIC0xIGRlcGVuZGluZyBvbiB0aGUgc2lnbiBvZgorICAgdGhlIHJlc3VsdC4gIE90aGVyd2lzZSAqb3ZlcmZsb3cgaXMgMC4KKworICAgRm9yIG90aGVyIGVycm9ycyAoZS5nLiwgVHlwZUVycm9yKSwgcmV0dXJuIC0xIGFuZCBzZXQgYW4gZXJyb3IgY29uZGl0aW9uLgorICAgSW4gdGhpcyBjYXNlICpvdmVyZmxvdyB3aWxsIGJlIDAuCiAqLwogCiBQWV9MT05HX0xPTkcKQEAgLTEzODIsMTAgKzEzOTQsOCBAQAogCiAjZGVmaW5lIENIRUNLX0JJTk9QKHYsdykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICBpZiAoIVB5TG9uZ19DaGVjayh2KSB8fCAhUHlMb25nX0NoZWNrKHcpKSB7ICAgICBcCi0gICAgICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOyAgICAgICAgICAgICAgIFwKLSAgICAgICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsgICAgICAgICAgICAgICAgICAgXAotICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGlmICghUHlMb25nX0NoZWNrKHYpIHx8ICFQeUxvbmdfQ2hlY2sodykpICAgICAgIFwKKyAgICAgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsgICAgICAgICAgICAgICAgICAgXAogICAgIH0gd2hpbGUoMCkKIAogLyogYml0c19pbl9kaWdpdChkKSByZXR1cm5zIHRoZSB1bmlxdWUgaW50ZWdlciBrIHN1Y2ggdGhhdCAyKiooay0xKSA8PSBkIDwKQEAgLTE1NDksNyArMTU1OSw3IEBACiAgICAgUHlPYmplY3QgKnN0cjsKICAgICBQeV9zc2l6ZV90IHNpemUsIHN0cmxlbiwgc2l6ZV9hLCBpLCBqOwogICAgIGRpZ2l0ICpwb3V0LCAqcGluLCByZW0sIHRlbnBvdzsKLSAgICBQeV9VTklDT0RFICpwOworICAgIHVuc2lnbmVkIGNoYXIgKnA7CiAgICAgaW50IG5lZ2F0aXZlOwogCiAgICAgYSA9IChQeUxvbmdPYmplY3QgKilhYTsKQEAgLTE2MTcsMTQgKzE2MjcsMTUgQEAKICAgICAgICAgdGVucG93ICo9IDEwOwogICAgICAgICBzdHJsZW4rKzsKICAgICB9Ci0gICAgc3RyID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHN0cmxlbik7CisgICAgc3RyID0gUHlVbmljb2RlX05ldyhzdHJsZW4sICc5Jyk7CiAgICAgaWYgKHN0ciA9PSBOVUxMKSB7CiAgICAgICAgIFB5X0RFQ1JFRihzY3JhdGNoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCiAgICAgLyogZmlsbCB0aGUgc3RyaW5nIHJpZ2h0LXRvLWxlZnQgKi8KLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSArIHN0cmxlbjsKKyAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQoc3RyKSA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCk7CisgICAgcCA9IFB5VW5pY29kZV8xQllURV9EQVRBKHN0cikgKyBzdHJsZW47CiAgICAgKnAgPSAnXDAnOwogICAgIC8qIHBvdXRbMF0gdGhyb3VnaCBwb3V0W3NpemUtMl0gY29udHJpYnV0ZSBleGFjdGx5CiAgICAgICAgX1B5TG9uZ19ERUNJTUFMX1NISUZUIGRpZ2l0cyBlYWNoICovCkBAIC0xNjQ3LDcgKzE2NTgsNyBAQAogICAgICAgICAqLS1wID0gJy0nOwogCiAgICAgLyogY2hlY2sgd2UndmUgY291bnRlZCBjb3JyZWN0bHkgKi8KLSAgICBhc3NlcnQocCA9PSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpKTsKKyAgICBhc3NlcnQocCA9PSBQeVVuaWNvZGVfMUJZVEVfREFUQShzdHIpKTsKICAgICBQeV9ERUNSRUYoc2NyYXRjaCk7CiAgICAgcmV0dXJuIChQeU9iamVjdCAqKXN0cjsKIH0KQEAgLTE2NjAsMTAgKzE2NzEsMTIgQEAKIF9QeUxvbmdfRm9ybWF0KFB5T2JqZWN0ICphYSwgaW50IGJhc2UpCiB7CiAgICAgcmVnaXN0ZXIgUHlMb25nT2JqZWN0ICphID0gKFB5TG9uZ09iamVjdCAqKWFhOwotICAgIFB5T2JqZWN0ICpzdHI7CisgICAgUHlPYmplY3QgKnY7CiAgICAgUHlfc3NpemVfdCBpLCBzejsKICAgICBQeV9zc2l6ZV90IHNpemVfYTsKLSAgICBQeV9VTklDT0RFICpwLCBzaWduID0gJ1wwJzsKKyAgICBjaGFyICpwOworICAgIGNoYXIgc2lnbiA9ICdcMCc7CisgICAgY2hhciAqYnVmZmVyOwogICAgIGludCBiaXRzOwogCiAgICAgYXNzZXJ0KGJhc2UgPT0gMiB8fCBiYXNlID09IDggfHwgYmFzZSA9PSAxMCB8fCBiYXNlID09IDE2KTsKQEAgLTE2OTMsNyArMTcwNiw3IEBACiAgICAgfQogICAgIC8qIGNvbXB1dGUgbGVuZ3RoIG9mIG91dHB1dCBzdHJpbmc6IGFsbG93IDIgY2hhcmFjdGVycyBmb3IgcHJlZml4IGFuZAogICAgICAgIDEgZm9yIHBvc3NpYmxlICctJyBzaWduLiAqLwotICAgIGlmIChzaXplX2EgPiAoUFlfU1NJWkVfVF9NQVggLSAzKSAvIFB5TG9uZ19TSElGVCkgeworICAgIGlmIChzaXplX2EgPiAoUFlfU1NJWkVfVF9NQVggLSAzKSAvIFB5TG9uZ19TSElGVCAvIHNpemVvZihQeV9VQ1M0KSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJpbnQgaXMgdG9vIGxhcmdlIHRvIGZvcm1hdCIpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTE3MDIsMTEgKzE3MTUsMTIgQEAKICAgICAgICBpcyBzYWZlIGZyb20gb3ZlcmZsb3cgKi8KICAgICBzeiA9IDMgKyAoc2l6ZV9hICogUHlMb25nX1NISUZUICsgKGJpdHMgLSAxKSkgLyBiaXRzOwogICAgIGFzc2VydChzeiA+PSAwKTsKLSAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgc3opOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBidWZmZXIgPSBQeU1lbV9NYWxsb2Moc3opOworICAgIGlmIChidWZmZXIgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSArIHN6OwotICAgICpwID0gJ1wwJzsKKyAgICB9CisgICAgcCA9ICZidWZmZXJbc3pdOwogICAgIGlmIChQeV9TSVpFKGEpIDwgMCkKICAgICAgICAgc2lnbiA9ICctJzsKIApAQCAtMTcyMiwxMCArMTczNiwxMCBAQAogICAgICAgICAgICAgYWNjdW1iaXRzICs9IFB5TG9uZ19TSElGVDsKICAgICAgICAgICAgIGFzc2VydChhY2N1bWJpdHMgPj0gYml0cyk7CiAgICAgICAgICAgICBkbyB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjZGlnaXQ7Ci0gICAgICAgICAgICAgICAgY2RpZ2l0ID0gKFB5X1VOSUNPREUpKGFjY3VtICYgKGJhc2UgLSAxKSk7CisgICAgICAgICAgICAgICAgY2hhciBjZGlnaXQ7CisgICAgICAgICAgICAgICAgY2RpZ2l0ID0gKGNoYXIpKGFjY3VtICYgKGJhc2UgLSAxKSk7CiAgICAgICAgICAgICAgICAgY2RpZ2l0ICs9IChjZGlnaXQgPCAxMCkgPyAnMCcgOiAnYSctMTA7Ci0gICAgICAgICAgICAgICAgYXNzZXJ0KHAgPiBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQocCA+IGJ1ZmZlcik7CiAgICAgICAgICAgICAgICAgKi0tcCA9IGNkaWdpdDsKICAgICAgICAgICAgICAgICBhY2N1bWJpdHMgLT0gYml0czsKICAgICAgICAgICAgICAgICBhY2N1bSA+Pj0gYml0czsKQEAgLTE3NDIsMTkgKzE3NTYsOSBAQAogICAgICotLXAgPSAnMCc7CiAgICAgaWYgKHNpZ24pCiAgICAgICAgICotLXAgPSBzaWduOwotICAgIGlmIChwICE9IFB5VW5pY29kZV9BU19VTklDT0RFKHN0cikpIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqcSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHN0cik7Ci0gICAgICAgIGFzc2VydChwID4gcSk7Ci0gICAgICAgIGRvIHsKLSAgICAgICAgfSB3aGlsZSAoKCpxKysgPSAqcCsrKSAhPSAnXDAnKTsKLSAgICAgICAgcS0tOwotICAgICAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmc3RyLChQeV9zc2l6ZV90KSAocSAtCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSkpKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYoc3RyKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgfQotICAgIHJldHVybiAoUHlPYmplY3QgKilzdHI7CisgICAgdiA9IFB5VW5pY29kZV9EZWNvZGVBU0NJSShwLCAmYnVmZmVyW3N6XSAtIHAsIE5VTEwpOworICAgIFB5TWVtX0ZyZWUoYnVmZmVyKTsKKyAgICByZXR1cm4gdjsKIH0KIAogLyogVGFibGUgb2YgZGlnaXQgdmFsdWVzIGZvciA4LWJpdCBzdHJpbmcgLT4gaW50ZWdlciBjb252ZXJzaW9uLgpAQCAtMjEzMiwyMyArMjEzNiwyNiBAQAogUHlPYmplY3QgKgogUHlMb25nX0Zyb21Vbmljb2RlKFB5X1VOSUNPREUgKnUsIFB5X3NzaXplX3QgbGVuZ3RoLCBpbnQgYmFzZSkKIHsKKyAgICBQeU9iamVjdCAqdiwgKnVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUodSwgbGVuZ3RoKTsKKyAgICBpZiAodW5pY29kZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB2ID0gUHlMb25nX0Zyb21Vbmljb2RlT2JqZWN0KHVuaWNvZGUsIGJhc2UpOworICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICByZXR1cm4gdjsKK30KKworUHlPYmplY3QgKgorUHlMb25nX0Zyb21Vbmljb2RlT2JqZWN0KFB5T2JqZWN0ICp1LCBpbnQgYmFzZSkKK3sKICAgICBQeU9iamVjdCAqcmVzdWx0OwogICAgIFB5T2JqZWN0ICphc2NpaWRpZzsKICAgICBjaGFyICpidWZmZXIsICplbmQ7Ci0gICAgUHlfc3NpemVfdCBpLCBidWZsZW47Ci0gICAgUHlfVU5JQ09ERSAqcHRyOworICAgIFB5X3NzaXplX3QgYnVmbGVuOwogCi0gICAgYXNjaWlkaWcgPSBQeVVuaWNvZGVfVHJhbnNmb3JtRGVjaW1hbFRvQVNDSUkodSwgbGVuZ3RoKTsKKyAgICBhc2NpaWRpZyA9IF9QeVVuaWNvZGVfVHJhbnNmb3JtRGVjaW1hbEFuZFNwYWNlVG9BU0NJSSh1KTsKICAgICBpZiAoYXNjaWlkaWcgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgLyogUmVwbGFjZSBub24tQVNDSUkgd2hpdGVzcGFjZSB3aXRoICcgJyAqLwotICAgIHB0ciA9IFB5VW5pY29kZV9BU19VTklDT0RFKGFzY2lpZGlnKTsKLSAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKLSAgICAgICAgUHlfVU5JQ09ERSBjaCA9IHB0cltpXTsKLSAgICAgICAgaWYgKGNoID4gMTI3ICYmIFB5X1VOSUNPREVfSVNTUEFDRShjaCkpCi0gICAgICAgICAgICBwdHJbaV0gPSAnICc7Ci0gICAgfQotICAgIGJ1ZmZlciA9IF9QeVVuaWNvZGVfQXNTdHJpbmdBbmRTaXplKGFzY2lpZGlnLCAmYnVmbGVuKTsKKyAgICBidWZmZXIgPSBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZShhc2NpaWRpZywgJmJ1Zmxlbik7CiAgICAgaWYgKGJ1ZmZlciA9PSBOVUxMKSB7CiAgICAgICAgIFB5X0RFQ1JFRihhc2NpaWRpZyk7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjQ0NSw4ICsyNDUyLDcgQEAKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgIH0KLSAgICBhc3NlcnQoMSA8PSB4X3NpemUgJiYKLSAgICAgICAgICAgeF9zaXplIDw9IChQeV9zc2l6ZV90KShzaXplb2YoeF9kaWdpdHMpL3NpemVvZihkaWdpdCkpKTsKKyAgICBhc3NlcnQoMSA8PSB4X3NpemUgJiYgeF9zaXplIDw9IChQeV9zc2l6ZV90KVB5X0FSUkFZX0xFTkdUSCh4X2RpZ2l0cykpOwogCiAgICAgLyogUm91bmQsIGFuZCBjb252ZXJ0IHRvIGRvdWJsZS4gKi8KICAgICB4X2RpZ2l0c1swXSArPSBoYWxmX2V2ZW5fY29ycmVjdGlvblt4X2RpZ2l0c1swXSAmIDddOwpAQCAtMjQ4MywxMCArMjQ4OSwxNCBAQAogICAgIFB5X3NzaXplX3QgZXhwb25lbnQ7CiAgICAgZG91YmxlIHg7CiAKLSAgICBpZiAodiA9PSBOVUxMIHx8ICFQeUxvbmdfQ2hlY2sodikpIHsKKyAgICBpZiAodiA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwogICAgICAgICByZXR1cm4gLTEuMDsKICAgICB9CisgICAgaWYgKCFQeUxvbmdfQ2hlY2sodikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImFuIGludGVnZXIgaXMgcmVxdWlyZWQiKTsKKyAgICAgICAgcmV0dXJuIC0xLjA7CisgICAgfQogICAgIHggPSBfUHlMb25nX0ZyZXhwKChQeUxvbmdPYmplY3QgKil2LCAmZXhwb25lbnQpOwogICAgIGlmICgoeCA9PSAtMS4wICYmIFB5RXJyX09jY3VycmVkKCkpIHx8IGV4cG9uZW50ID4gREJMX01BWF9FWFApIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCkBAIC0zNjExLDggKzM2MjEsNyBAQAogICAgIGVsc2UgewogICAgICAgICBQeV9ERUNSRUYoYSk7CiAgICAgICAgIFB5X0RFQ1JFRihiKTsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgfQogCiAgICAgaWYgKFB5X1NJWkUoYikgPCAwKSB7ICAvKiBpZiBleHBvbmVudCBpcyBuZWdhdGl2ZSAqLwpAQCAtNDEzOSw5ICs0MTQ4LDcgQEAKICAgICB9CiAKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHgpKQotICAgICAgICByZXR1cm4gUHlMb25nX0Zyb21Vbmljb2RlKFB5VW5pY29kZV9BU19VTklDT0RFKHgpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh4KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW50KWJhc2UpOworICAgICAgICByZXR1cm4gUHlMb25nX0Zyb21Vbmljb2RlT2JqZWN0KHgsIChpbnQpYmFzZSk7CiAgICAgZWxzZSBpZiAoUHlCeXRlQXJyYXlfQ2hlY2soeCkgfHwgUHlCeXRlc19DaGVjayh4KSkgewogICAgICAgICAvKiBTaW5jZSBQeUxvbmdfRnJvbVN0cmluZyBkb2Vzbid0IGhhdmUgYSBsZW5ndGggcGFyYW1ldGVyLAogICAgICAgICAgKiBjaGVjayBoZXJlIGZvciBwb3NzaWJsZSBOVUxzIGluIHRoZSBzdHJpbmcuICovCkBAIC00MjIzLDkgKzQyMzAsOCBAQAogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOl9fZm9ybWF0X18iLCAmZm9ybWF0X3NwZWMpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXR1cm4gX1B5TG9uZ19Gb3JtYXRBZHZhbmNlZChzZWxmLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKGZvcm1hdF9zcGVjKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoZm9ybWF0X3NwZWMpKTsKKyAgICByZXR1cm4gX1B5TG9uZ19Gb3JtYXRBZHZhbmNlZChzZWxmLCBmb3JtYXRfc3BlYywgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChmb3JtYXRfc3BlYykpOwogfQogCiAvKiBSZXR1cm4gYSBwYWlyIChxLCByKSBzdWNoIHRoYXQgYSA9IGIgKiBxICsgciwgYW5kCmRpZmYgLS1naXQgYS9PYmplY3RzL21lbW9yeW9iamVjdC5jIGIvT2JqZWN0cy9tZW1vcnlvYmplY3QuYwppbmRleCAyZTMyYjJhLi42N2Y3ZTAxIDEwMDY0NAotLS0gYS9PYmplY3RzL21lbW9yeW9iamVjdC5jCisrKyBiL09iamVjdHMvbWVtb3J5b2JqZWN0LmMKQEAgLTEsMTI2ICsxLDkxNSBAQAotCiAvKiBNZW1vcnl2aWV3IG9iamVjdCBpbXBsZW1lbnRhdGlvbiAqLwogCiAjaW5jbHVkZSAiUHl0aG9uLmgiCisjaW5jbHVkZSA8c3RkZGVmLmg+CiAKLSNkZWZpbmUgSVNfUkVMRUFTRUQobWVtb2JqKSBcCi0gICAgKCgoUHlNZW1vcnlWaWV3T2JqZWN0ICopIG1lbW9iaiktPnZpZXcuYnVmID09IE5VTEwpCiAKLSNkZWZpbmUgQ0hFQ0tfUkVMRUFTRUQobWVtb2JqKSBcCi0gICAgaWYgKElTX1JFTEVBU0VEKG1lbW9iaikpIHsgXAotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgXAotICAgICAgICAgICAgICAgICAgICAgICAgIm9wZXJhdGlvbiBmb3JiaWRkZW4gb24gcmVsZWFzZWQgbWVtb3J5dmlldyBvYmplY3QiKTsgXAotICAgICAgICByZXR1cm4gTlVMTDsgXAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgIE1hbmFnZWRCdWZmZXIgT2JqZWN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisvKgorICAgTWFuYWdlZEJ1ZmZlciBPYmplY3Q6CisgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgICBUaGUgcHVycG9zZSBvZiB0aGlzIG9iamVjdCBpcyB0byBmYWNpbGl0YXRlIHRoZSBoYW5kbGluZyBvZiBjaGFpbmVkCisgICAgIG1lbW9yeXZpZXdzIHRoYXQgaGF2ZSB0aGUgc2FtZSB1bmRlcmx5aW5nIGV4cG9ydGluZyBvYmplY3QuIFBFUC0zMTE4CisgICAgIGFsbG93cyB0aGUgdW5kZXJseWluZyBvYmplY3QgdG8gY2hhbmdlIHdoaWxlIGEgdmlldyBpcyBleHBvcnRlZC4gVGhpcworICAgICBjb3VsZCBsZWFkIHRvIHVuZXhwZWN0ZWQgcmVzdWx0cyB3aGVuIGNvbnN0cnVjdGluZyBhIG5ldyBtZW1vcnl2aWV3CisgICAgIGZyb20gYW4gZXhpc3RpbmcgbWVtb3J5dmlldy4KKworICAgICBSYXRoZXIgdGhhbiByZXBlYXRlZGx5IHJlZGlyZWN0aW5nIGJ1ZmZlciByZXF1ZXN0cyB0byB0aGUgb3JpZ2luYWwgYmFzZQorICAgICBvYmplY3QsIGFsbCBjaGFpbmVkIG1lbW9yeXZpZXdzIHVzZSBhIHNpbmdsZSBidWZmZXIgc25hcHNob3QuIFRoaXMKKyAgICAgc25hcHNob3QgaXMgZ2VuZXJhdGVkIGJ5IHRoZSBjb25zdHJ1Y3RvciBfUHlNYW5hZ2VkQnVmZmVyX0Zyb21PYmplY3QoKS4KKworICAgT3duZXJzaGlwIHJ1bGVzOgorICAgLS0tLS0tLS0tLS0tLS0tLQorCisgICAgIFRoZSBtYXN0ZXIgYnVmZmVyIGluc2lkZSBhIG1hbmFnZWQgYnVmZmVyIGlzIGZpbGxlZCBpbiBieSB0aGUgb3JpZ2luYWwKKyAgICAgYmFzZSBvYmplY3QuIHNoYXBlLCBzdHJpZGVzLCBzdWJvZmZzZXRzIGFuZCBmb3JtYXQgYXJlIHJlYWQtb25seSBmb3IKKyAgICAgYWxsIGNvbnN1bWVycy4KKworICAgICBBIG1lbW9yeXZpZXcncyBidWZmZXIgaXMgYSBwcml2YXRlIGNvcHkgb2YgdGhlIGV4cG9ydGVyJ3MgYnVmZmVyLiBzaGFwZSwKKyAgICAgc3RyaWRlcyBhbmQgc3Vib2Zmc2V0cyBiZWxvbmcgdG8gdGhlIG1lbW9yeXZpZXcgYW5kIGFyZSB0aHVzIHdyaXRhYmxlLgorCisgICAgIElmIGEgbWVtb3J5dmlldyBpdHNlbGYgZXhwb3J0cyBzZXZlcmFsIGJ1ZmZlcnMgdmlhIG1lbW9yeV9nZXRidWYoKSwgYWxsCisgICAgIGJ1ZmZlciBjb3BpZXMgc2hhcmUgc2hhcGUsIHN0cmlkZXMgYW5kIHN1Ym9mZnNldHMuIEluIHRoaXMgY2FzZSwgdGhlCisgICAgIGFycmF5cyBhcmUgTk9UIHdyaXRhYmxlLgorCisgICBSZWZlcmVuY2UgY291bnQgYXNzdW1wdGlvbnM6CisgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICAgVGhlICdvYmonIG1lbWJlciBvZiBhIFB5X2J1ZmZlciBtdXN0IGVpdGhlciBiZSBOVUxMIG9yIHJlZmVyIHRvIHRoZQorICAgICBleHBvcnRpbmcgYmFzZSBvYmplY3QuIEluIHRoZSBQeXRob24gY29kZWJhc2UsIGFsbCBnZXRidWZmZXJwcm9jcworICAgICByZXR1cm4gYSBuZXcgcmVmZXJlbmNlIHRvIHZpZXcub2JqIChleGFtcGxlOiBieXRlc19idWZmZXJfZ2V0YnVmZmVyKCkpLgorCisgICAgIFB5QnVmZmVyX1JlbGVhc2UoKSBkZWNyZW1lbnRzIHZpZXcub2JqIChpZiBub24tTlVMTCksIHNvIHRoZQorICAgICByZWxlYXNlYnVmZmVycHJvY3MgbXVzdCBOT1QgZGVjcmVtZW50IHZpZXcub2JqLgorKi8KKworCisjZGVmaW5lIFhTVFJJTkdJWkUodikgI3YKKyNkZWZpbmUgU1RSSU5HSVpFKHYpIFhTVFJJTkdJWkUodikKKworI2RlZmluZSBDSEVDS19NQlVGX1JFTEVBU0VEKG1idWYpIFwKKyAgICBpZiAoKChfUHlNYW5hZ2VkQnVmZmVyT2JqZWN0ICopbWJ1ZiktPmZsYWdzJl9QeV9NQU5BR0VEX0JVRkZFUl9SRUxFQVNFRCkgeyBcCisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgIm9wZXJhdGlvbiBmb3JiaWRkZW4gb24gcmVsZWFzZWQgbWVtb3J5dmlldyBvYmplY3QiKTsgICAgICAgICAgICAgIFwKKyAgICAgICAgcmV0dXJuIE5VTEw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgfQogCi0jZGVmaW5lIENIRUNLX1JFTEVBU0VEX0lOVChtZW1vYmopIFwKLSAgICBpZiAoSVNfUkVMRUFTRUQobWVtb2JqKSkgeyBcCi0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAib3BlcmF0aW9uIGZvcmJpZGRlbiBvbiByZWxlYXNlZCBtZW1vcnl2aWV3IG9iamVjdCIpOyBcCi0gICAgICAgIHJldHVybiAtMTsgXAotICAgIH0KIAotc3RhdGljIFB5X3NzaXplX3QKLWdldF9zaGFwZTAoUHlfYnVmZmVyICpidWYpCitQeV9MT0NBTF9JTkxJTkUoX1B5TWFuYWdlZEJ1ZmZlck9iamVjdCAqKQorbWJ1Zl9hbGxvYyh2b2lkKQogewotICAgIGlmIChidWYtPnNoYXBlICE9IE5VTEwpCi0gICAgICAgIHJldHVybiBidWYtPnNoYXBlWzBdOwotICAgIGlmIChidWYtPm5kaW0gPT0gMCkKLSAgICAgICAgcmV0dXJuIDE7Ci0gICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgImV4cG9ydGVkIGJ1ZmZlciBkb2VzIG5vdCBoYXZlIGFueSBzaGFwZSBpbmZvcm1hdGlvbiBhc3NvY2lhdGVkICIKLSAgICAgICAgInRvIGl0Iik7Ci0gICAgcmV0dXJuIC0xOworICAgIF9QeU1hbmFnZWRCdWZmZXJPYmplY3QgKm1idWY7CisKKyAgICBtYnVmID0gKF9QeU1hbmFnZWRCdWZmZXJPYmplY3QgKikKKyAgICAgICAgUHlPYmplY3RfR0NfTmV3KF9QeU1hbmFnZWRCdWZmZXJPYmplY3QsICZfUHlNYW5hZ2VkQnVmZmVyX1R5cGUpOworICAgIGlmIChtYnVmID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIG1idWYtPmZsYWdzID0gMDsKKyAgICBtYnVmLT5leHBvcnRzID0gMDsKKyAgICBtYnVmLT5tYXN0ZXIub2JqID0gTlVMTDsKKyAgICBfUHlPYmplY3RfR0NfVFJBQ0sobWJ1Zik7CisKKyAgICByZXR1cm4gbWJ1ZjsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK19QeU1hbmFnZWRCdWZmZXJfRnJvbU9iamVjdChQeU9iamVjdCAqYmFzZSkKK3sKKyAgICBfUHlNYW5hZ2VkQnVmZmVyT2JqZWN0ICptYnVmOworCisgICAgbWJ1ZiA9IG1idWZfYWxsb2MoKTsKKyAgICBpZiAobWJ1ZiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChQeU9iamVjdF9HZXRCdWZmZXIoYmFzZSwgJm1idWYtPm1hc3RlciwgUHlCVUZfRlVMTF9STykgPCAwKSB7CisgICAgICAgIG1idWYtPm1hc3Rlci5vYmogPSBOVUxMOworICAgICAgICBQeV9ERUNSRUYobWJ1Zik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiAoUHlPYmplY3QgKiltYnVmOwogfQogCiBzdGF0aWMgdm9pZAotZHVwX2J1ZmZlcihQeV9idWZmZXIgKmRlc3QsIFB5X2J1ZmZlciAqc3JjKQorbWJ1Zl9yZWxlYXNlKF9QeU1hbmFnZWRCdWZmZXJPYmplY3QgKnNlbGYpCiB7Ci0gICAgKmRlc3QgPSAqc3JjOwotICAgIGlmIChzcmMtPm5kaW0gPT0gMSAmJiBzcmMtPnNoYXBlICE9IE5VTEwpIHsKLSAgICAgICAgZGVzdC0+c2hhcGUgPSAmKGRlc3QtPnNtYWxsdGFibGVbMF0pOwotICAgICAgICBkZXN0LT5zaGFwZVswXSA9IGdldF9zaGFwZTAoc3JjKTsKLSAgICB9Ci0gICAgaWYgKHNyYy0+bmRpbSA9PSAxICYmIHNyYy0+c3RyaWRlcyAhPSBOVUxMKSB7Ci0gICAgICAgIGRlc3QtPnN0cmlkZXMgPSAmKGRlc3QtPnNtYWxsdGFibGVbMV0pOwotICAgICAgICBkZXN0LT5zdHJpZGVzWzBdID0gc3JjLT5zdHJpZGVzWzBdOwotICAgIH0KKyAgICBpZiAoc2VsZi0+ZmxhZ3MmX1B5X01BTkFHRURfQlVGRkVSX1JFTEVBU0VEKQorICAgICAgICByZXR1cm47CisKKyAgICAvKiBOT1RFOiBhdCB0aGlzIHBvaW50IHNlbGYtPmV4cG9ydHMgY2FuIHN0aWxsIGJlID4gMCBpZiB0aGlzIGZ1bmN0aW9uCisgICAgICAgaXMgY2FsbGVkIGZyb20gbWJ1Zl9jbGVhcigpIHRvIGJyZWFrIHVwIGEgcmVmZXJlbmNlIGN5Y2xlLiAqLworICAgIHNlbGYtPmZsYWdzIHw9IF9QeV9NQU5BR0VEX0JVRkZFUl9SRUxFQVNFRDsKKworICAgIC8qIFB5QnVmZmVyX1JlbGVhc2UoKSBkZWNyZW1lbnRzIG1hc3Rlci0+b2JqIGFuZCBzZXRzIGl0IHRvIE5VTEwuICovCisgICAgX1B5T2JqZWN0X0dDX1VOVFJBQ0soc2VsZik7CisgICAgUHlCdWZmZXJfUmVsZWFzZSgmc2VsZi0+bWFzdGVyKTsKK30KKworc3RhdGljIHZvaWQKK21idWZfZGVhbGxvYyhfUHlNYW5hZ2VkQnVmZmVyT2JqZWN0ICpzZWxmKQoreworICAgIGFzc2VydChzZWxmLT5leHBvcnRzID09IDApOworICAgIG1idWZfcmVsZWFzZShzZWxmKTsKKyAgICBpZiAoc2VsZi0+ZmxhZ3MmX1B5X01BTkFHRURfQlVGRkVSX0ZSRUVfRk9STUFUKQorICAgICAgICBQeU1lbV9GcmVlKHNlbGYtPm1hc3Rlci5mb3JtYXQpOworICAgIFB5T2JqZWN0X0dDX0RlbChzZWxmKTsKIH0KIAogc3RhdGljIGludAotbWVtb3J5X2dldGJ1ZihQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYsIFB5X2J1ZmZlciAqdmlldywgaW50IGZsYWdzKQorbWJ1Zl90cmF2ZXJzZShfUHlNYW5hZ2VkQnVmZmVyT2JqZWN0ICpzZWxmLCB2aXNpdHByb2MgdmlzaXQsIHZvaWQgKmFyZykKIHsKLSAgICBpbnQgcmVzID0gMDsKLSAgICBDSEVDS19SRUxFQVNFRF9JTlQoc2VsZik7Ci0gICAgaWYgKHNlbGYtPnZpZXcub2JqICE9IE5VTEwpCi0gICAgICAgIHJlcyA9IFB5T2JqZWN0X0dldEJ1ZmZlcihzZWxmLT52aWV3Lm9iaiwgdmlldywgZmxhZ3MpOwotICAgIGlmICh2aWV3KQotICAgICAgICBkdXBfYnVmZmVyKHZpZXcsICZzZWxmLT52aWV3KTsKLSAgICByZXR1cm4gcmVzOworICAgIFB5X1ZJU0lUKHNlbGYtPm1hc3Rlci5vYmopOworICAgIHJldHVybiAwOwogfQogCi1zdGF0aWMgdm9pZAotbWVtb3J5X3JlbGVhc2VidWYoUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmLCBQeV9idWZmZXIgKnZpZXcpCitzdGF0aWMgaW50CittYnVmX2NsZWFyKF9QeU1hbmFnZWRCdWZmZXJPYmplY3QgKnNlbGYpCiB7Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSh2aWV3KTsKKyAgICBhc3NlcnQoc2VsZi0+ZXhwb3J0cyA+PSAwKTsKKyAgICBtYnVmX3JlbGVhc2Uoc2VsZik7CisgICAgcmV0dXJuIDA7CiB9CiAKK1B5VHlwZU9iamVjdCBfUHlNYW5hZ2VkQnVmZmVyX1R5cGUgPSB7CisgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKCZQeVR5cGVfVHlwZSwgMCkKKyAgICAibWFuYWdlZGJ1ZmZlciIsCisgICAgc2l6ZW9mKF9QeU1hbmFnZWRCdWZmZXJPYmplY3QpLAorICAgIDAsCisgICAgKGRlc3RydWN0b3IpbWJ1Zl9kZWFsbG9jLCAgICAgICAgICAgICAgICAvKiB0cF9kZWFsbG9jICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9wcmludCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVzZXJ2ZWQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JlcHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX251bWJlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfc2VxdWVuY2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX21hcHBpbmcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2hhc2ggKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3N0ciAqLworICAgIFB5T2JqZWN0X0dlbmVyaWNHZXRBdHRyLCAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KKyAgICBQeV9UUEZMQUdTX0RFRkFVTFQgfCBQeV9UUEZMQUdTX0hBVkVfR0MsIC8qIHRwX2ZsYWdzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KKyAgICAodHJhdmVyc2Vwcm9jKW1idWZfdHJhdmVyc2UsICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgKGlucXVpcnkpbWJ1Zl9jbGVhciAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jbGVhciAqLworfTsKKworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNZW1vcnlWaWV3IE9iamVjdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKy8qIEluIHRoZSBwcm9jZXNzIG9mIGJyZWFraW5nIHJlZmVyZW5jZSBjeWNsZXMgbWJ1Zl9yZWxlYXNlKCkgY2FuIGJlCisgICBjYWxsZWQgYmVmb3JlIG1lbW9yeV9yZWxlYXNlKCkuICovCisjZGVmaW5lIEJBU0VfSU5BQ0NFU1NJQkxFKG12KSBcCisgICAgKCgoUHlNZW1vcnlWaWV3T2JqZWN0ICopbXYpLT5mbGFncyZfUHlfTUVNT1JZVklFV19SRUxFQVNFRCB8fCBcCisgICAgICgoUHlNZW1vcnlWaWV3T2JqZWN0ICopbXYpLT5tYnVmLT5mbGFncyZfUHlfTUFOQUdFRF9CVUZGRVJfUkVMRUFTRUQpCisKKyNkZWZpbmUgQ0hFQ0tfUkVMRUFTRUQobXYpIFwKKyAgICBpZiAoQkFTRV9JTkFDQ0VTU0lCTEUobXYpKSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICJvcGVyYXRpb24gZm9yYmlkZGVuIG9uIHJlbGVhc2VkIG1lbW9yeXZpZXcgb2JqZWN0Iik7IFwKKyAgICAgICAgcmV0dXJuIE5VTEw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9CisKKyNkZWZpbmUgQ0hFQ0tfUkVMRUFTRURfSU5UKG12KSBcCisgICAgaWYgKEJBU0VfSU5BQ0NFU1NJQkxFKG12KSkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAib3BlcmF0aW9uIGZvcmJpZGRlbiBvbiByZWxlYXNlZCBtZW1vcnl2aWV3IG9iamVjdCIpOyBcCisgICAgICAgIHJldHVybiAtMTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfQorCisjZGVmaW5lIENIRUNLX0xJU1RfT1JfVFVQTEUodikgXAorICAgIGlmICghUHlMaXN0X0NoZWNrKHYpICYmICFQeVR1cGxlX0NoZWNrKHYpKSB7IFwKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgICAgICAgICBcCisgICAgICAgICAgICAjdiAiIG11c3QgYmUgYSBsaXN0IG9yIGEgdHVwbGUiKTsgICAgXAorICAgICAgICByZXR1cm4gTlVMTDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9CisKKyNkZWZpbmUgVklFV19BRERSKG12KSAoJigoUHlNZW1vcnlWaWV3T2JqZWN0ICopbXYpLT52aWV3KQorCisvKiBDaGVjayBmb3IgdGhlIHByZXNlbmNlIG9mIHN1Ym9mZnNldHMgaW4gdGhlIGZpcnN0IGRpbWVuc2lvbi4gKi8KKyNkZWZpbmUgSEFWRV9QVFIoc3Vib2Zmc2V0cykgKHN1Ym9mZnNldHMgJiYgc3Vib2Zmc2V0c1swXSA+PSAwKQorLyogQWRqdXN0IHB0ciBpZiBzdWJvZmZzZXRzIGFyZSBwcmVzZW50LiAqLworI2RlZmluZSBBREpVU1RfUFRSKHB0ciwgc3Vib2Zmc2V0cykgXAorICAgIChIQVZFX1BUUihzdWJvZmZzZXRzKSA/ICooKGNoYXIqKilwdHIpICsgc3Vib2Zmc2V0c1swXSA6IHB0cikKKworLyogTWVtb3J5dmlldyBidWZmZXIgcHJvcGVydGllcyAqLworI2RlZmluZSBNVl9DX0NPTlRJR1VPVVMoZmxhZ3MpIChmbGFncyYoX1B5X01FTU9SWVZJRVdfU0NBTEFSfF9QeV9NRU1PUllWSUVXX0MpKQorI2RlZmluZSBNVl9GX0NPTlRJR1VPVVMoZmxhZ3MpIFwKKyAgICAoZmxhZ3MmKF9QeV9NRU1PUllWSUVXX1NDQUxBUnxfUHlfTUVNT1JZVklFV19GT1JUUkFOKSkKKyNkZWZpbmUgTVZfQU5ZX0NPTlRJR1VPVVMoZmxhZ3MpIFwKKyAgICAoZmxhZ3MmKF9QeV9NRU1PUllWSUVXX1NDQUxBUnxfUHlfTUVNT1JZVklFV19DfF9QeV9NRU1PUllWSUVXX0ZPUlRSQU4pKQorCisvKiBGYXN0IGNvbnRpZ3VpdHkgdGVzdC4gQ2FsbGVyIG11c3QgZW5zdXJlIHN1Ym9mZnNldHM9PU5VTEwgYW5kIG5kaW09PTEuICovCisjZGVmaW5lIE1WX0NPTlRJR1VPVVNfTkRJTTEodmlldykgXAorICAgICgodmlldyktPnNoYXBlWzBdID09IDEgfHwgKHZpZXcpLT5zdHJpZGVzWzBdID09ICh2aWV3KS0+aXRlbXNpemUpCisKKy8qIGdldGJ1ZmZlcigpIHJlcXVlc3RzICovCisjZGVmaW5lIFJFUV9JTkRJUkVDVChmbGFncykgKChmbGFncyZQeUJVRl9JTkRJUkVDVCkgPT0gUHlCVUZfSU5ESVJFQ1QpCisjZGVmaW5lIFJFUV9DX0NPTlRJR1VPVVMoZmxhZ3MpICgoZmxhZ3MmUHlCVUZfQ19DT05USUdVT1VTKSA9PSBQeUJVRl9DX0NPTlRJR1VPVVMpCisjZGVmaW5lIFJFUV9GX0NPTlRJR1VPVVMoZmxhZ3MpICgoZmxhZ3MmUHlCVUZfRl9DT05USUdVT1VTKSA9PSBQeUJVRl9GX0NPTlRJR1VPVVMpCisjZGVmaW5lIFJFUV9BTllfQ09OVElHVU9VUyhmbGFncykgKChmbGFncyZQeUJVRl9BTllfQ09OVElHVU9VUykgPT0gUHlCVUZfQU5ZX0NPTlRJR1VPVVMpCisjZGVmaW5lIFJFUV9TVFJJREVTKGZsYWdzKSAoKGZsYWdzJlB5QlVGX1NUUklERVMpID09IFB5QlVGX1NUUklERVMpCisjZGVmaW5lIFJFUV9TSEFQRShmbGFncykgKChmbGFncyZQeUJVRl9ORCkgPT0gUHlCVUZfTkQpCisjZGVmaW5lIFJFUV9XUklUQUJMRShmbGFncykgKGZsYWdzJlB5QlVGX1dSSVRBQkxFKQorI2RlZmluZSBSRVFfRk9STUFUKGZsYWdzKSAoZmxhZ3MmUHlCVUZfRk9STUFUKQorCisKIFB5RG9jX1NUUlZBUihtZW1vcnlfZG9jLAogIm1lbW9yeXZpZXcob2JqZWN0KVxuXAogXG5cCiBDcmVhdGUgYSBuZXcgbWVtb3J5dmlldyBvYmplY3Qgd2hpY2ggcmVmZXJlbmNlcyB0aGUgZ2l2ZW4gb2JqZWN0LiIpOwogCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICBDb3B5IG1lbW9yeXZpZXcgYnVmZmVycyAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyogVGhlIGZ1bmN0aW9ucyBpbiB0aGlzIHNlY3Rpb24gdGFrZSBhIHNvdXJjZSBhbmQgYSBkZXN0aW5hdGlvbiBidWZmZXIKKyAgIHdpdGggdGhlIHNhbWUgbG9naWNhbCBzdHJ1Y3R1cmU6IGZvcm1hdCwgaXRlbXNpemUsIG5kaW0gYW5kIHNoYXBlCisgICBhcmUgaWRlbnRpY2FsLCB3aXRoIG5kaW0gPiAwLgorCisgICBOT1RFOiBBbGwgYnVmZmVycyBhcmUgYXNzdW1lZCB0byBoYXZlIFB5QlVGX0ZVTEwgaW5mb3JtYXRpb24sIHdoaWNoCisgICBpcyB0aGUgY2FzZSBmb3IgbWVtb3J5dmlld3MhICovCisKKworLyogQXNzdW1wdGlvbnM6IG5kaW0gPj0gMS4gVGhlIG1hY3JvIHRlc3RzIGZvciBhIGNvcm5lciBjYXNlIHRoYXQgc2hvdWxkCisgICBwZXJoYXBzIGJlIGV4cGxpY2l0bHkgZm9yYmlkZGVuIGluIHRoZSBQRVAuICovCisjZGVmaW5lIEhBVkVfU1VCT0ZGU0VUU19JTl9MQVNUX0RJTSh2aWV3KSBcCisgICAgKHZpZXctPnN1Ym9mZnNldHMgJiYgdmlldy0+c3Vib2Zmc2V0c1tkZXN0LT5uZGltLTFdID49IDApCisKK1B5X0xPQ0FMX0lOTElORShpbnQpCitsYXN0X2RpbV9pc19jb250aWd1b3VzKFB5X2J1ZmZlciAqZGVzdCwgUHlfYnVmZmVyICpzcmMpCit7CisgICAgYXNzZXJ0KGRlc3QtPm5kaW0gPiAwICYmIHNyYy0+bmRpbSA+IDApOworICAgIHJldHVybiAoIUhBVkVfU1VCT0ZGU0VUU19JTl9MQVNUX0RJTShkZXN0KSAmJgorICAgICAgICAgICAgIUhBVkVfU1VCT0ZGU0VUU19JTl9MQVNUX0RJTShzcmMpICYmCisgICAgICAgICAgICBkZXN0LT5zdHJpZGVzW2Rlc3QtPm5kaW0tMV0gPT0gZGVzdC0+aXRlbXNpemUgJiYKKyAgICAgICAgICAgIHNyYy0+c3RyaWRlc1tzcmMtPm5kaW0tMV0gPT0gc3JjLT5pdGVtc2l6ZSk7Cit9CisKKy8qIENoZWNrIHRoYXQgdGhlIGxvZ2ljYWwgc3RydWN0dXJlIG9mIHRoZSBkZXN0aW5hdGlvbiBhbmQgc291cmNlIGJ1ZmZlcnMKKyAgIGlzIGlkZW50aWNhbC4gKi8KK3N0YXRpYyBpbnQKK2NtcF9zdHJ1Y3R1cmUoUHlfYnVmZmVyICpkZXN0LCBQeV9idWZmZXIgKnNyYykKK3sKKyAgICBjb25zdCBjaGFyICpkZm10LCAqc2ZtdDsKKyAgICBpbnQgaTsKKworICAgIGFzc2VydChkZXN0LT5mb3JtYXQgJiYgc3JjLT5mb3JtYXQpOworICAgIGRmbXQgPSBkZXN0LT5mb3JtYXRbMF0gPT0gJ0AnID8gZGVzdC0+Zm9ybWF0KzEgOiBkZXN0LT5mb3JtYXQ7CisgICAgc2ZtdCA9IHNyYy0+Zm9ybWF0WzBdID09ICdAJyA/IHNyYy0+Zm9ybWF0KzEgOiBzcmMtPmZvcm1hdDsKKworICAgIGlmIChzdHJjbXAoZGZtdCwgc2ZtdCkgIT0gMCB8fAorICAgICAgICBkZXN0LT5pdGVtc2l6ZSAhPSBzcmMtPml0ZW1zaXplIHx8CisgICAgICAgIGRlc3QtPm5kaW0gIT0gc3JjLT5uZGltKSB7CisgICAgICAgIGdvdG8gdmFsdWVfZXJyb3I7CisgICAgfQorCisgICAgZm9yIChpID0gMDsgaSA8IGRlc3QtPm5kaW07IGkrKykgeworICAgICAgICBpZiAoZGVzdC0+c2hhcGVbaV0gIT0gc3JjLT5zaGFwZVtpXSkKKyAgICAgICAgICAgIGdvdG8gdmFsdWVfZXJyb3I7CisgICAgICAgIGlmIChkZXN0LT5zaGFwZVtpXSA9PSAwKQorICAgICAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgcmV0dXJuIDA7CisKK3ZhbHVlX2Vycm9yOgorICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAibmRhcnJheSBhc3NpZ25tZW50OiBsdmFsdWUgYW5kIHJ2YWx1ZSBoYXZlIGRpZmZlcmVudCBzdHJ1Y3R1cmVzIik7CisgICAgcmV0dXJuIC0xOworfQorCisvKiBCYXNlIGNhc2UgZm9yIHJlY3Vyc2l2ZSBtdWx0aS1kaW1lbnNpb25hbCBjb3B5aW5nLiBDb250aWd1b3VzIGFycmF5cyBhcmUKKyAgIGNvcGllZCB3aXRoIHZlcnkgbGl0dGxlIG92ZXJoZWFkLiBBc3N1bXB0aW9uczogbmRpbSA9PSAxLCBtZW0gPT0gTlVMTCBvcgorICAgc2l6ZW9mKG1lbSkgPT0gc2hhcGVbMF0gKiBpdGVtc2l6ZS4gKi8KK3N0YXRpYyB2b2lkCitjb3B5X2Jhc2UoY29uc3QgUHlfc3NpemVfdCAqc2hhcGUsIFB5X3NzaXplX3QgaXRlbXNpemUsCisgICAgICAgICAgY2hhciAqZHB0ciwgY29uc3QgUHlfc3NpemVfdCAqZHN0cmlkZXMsIGNvbnN0IFB5X3NzaXplX3QgKmRzdWJvZmZzZXRzLAorICAgICAgICAgIGNoYXIgKnNwdHIsIGNvbnN0IFB5X3NzaXplX3QgKnNzdHJpZGVzLCBjb25zdCBQeV9zc2l6ZV90ICpzc3Vib2Zmc2V0cywKKyAgICAgICAgICBjaGFyICptZW0pCit7CisgICAgaWYgKG1lbSA9PSBOVUxMKSB7IC8qIGNvbnRpZ3VvdXMgKi8KKyAgICAgICAgUHlfc3NpemVfdCBzaXplID0gc2hhcGVbMF0gKiBpdGVtc2l6ZTsKKyAgICAgICAgaWYgKGRwdHIgKyBzaXplIDwgc3B0ciB8fCBzcHRyICsgc2l6ZSA8IGRwdHIpCisgICAgICAgICAgICBtZW1jcHkoZHB0ciwgc3B0ciwgc2l6ZSk7IC8qIG5vIG92ZXJsYXBwaW5nICovCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1lbW1vdmUoZHB0ciwgc3B0ciwgc2l6ZSk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBjaGFyICpwOworICAgICAgICBQeV9zc2l6ZV90IGk7CisgICAgICAgIGZvciAoaT0wLCBwPW1lbTsgaSA8IHNoYXBlWzBdOyBwKz1pdGVtc2l6ZSwgc3B0cis9c3N0cmlkZXNbMF0sIGkrKykgeworICAgICAgICAgICAgY2hhciAqeHNwdHIgPSBBREpVU1RfUFRSKHNwdHIsIHNzdWJvZmZzZXRzKTsKKyAgICAgICAgICAgIG1lbWNweShwLCB4c3B0ciwgaXRlbXNpemUpOworICAgICAgICB9CisgICAgICAgIGZvciAoaT0wLCBwPW1lbTsgaSA8IHNoYXBlWzBdOyBwKz1pdGVtc2l6ZSwgZHB0cis9ZHN0cmlkZXNbMF0sIGkrKykgeworICAgICAgICAgICAgY2hhciAqeGRwdHIgPSBBREpVU1RfUFRSKGRwdHIsIGRzdWJvZmZzZXRzKTsKKyAgICAgICAgICAgIG1lbWNweSh4ZHB0ciwgcCwgaXRlbXNpemUpOworICAgICAgICB9CisgICAgfQorCit9CisKKy8qIFJlY3Vyc2l2ZWx5IGNvcHkgYSBzb3VyY2UgYnVmZmVyIHRvIGEgZGVzdGluYXRpb24gYnVmZmVyLiBUaGUgdHdvIGJ1ZmZlcnMKKyAgIGhhdmUgdGhlIHNhbWUgbmRpbSwgc2hhcGUgYW5kIGl0ZW1zaXplLiAqLworc3RhdGljIHZvaWQKK2NvcHlfcmVjKGNvbnN0IFB5X3NzaXplX3QgKnNoYXBlLCBQeV9zc2l6ZV90IG5kaW0sIFB5X3NzaXplX3QgaXRlbXNpemUsCisgICAgICAgICBjaGFyICpkcHRyLCBjb25zdCBQeV9zc2l6ZV90ICpkc3RyaWRlcywgY29uc3QgUHlfc3NpemVfdCAqZHN1Ym9mZnNldHMsCisgICAgICAgICBjaGFyICpzcHRyLCBjb25zdCBQeV9zc2l6ZV90ICpzc3RyaWRlcywgY29uc3QgUHlfc3NpemVfdCAqc3N1Ym9mZnNldHMsCisgICAgICAgICBjaGFyICptZW0pCit7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgYXNzZXJ0KG5kaW0gPj0gMSk7CisKKyAgICBpZiAobmRpbSA9PSAxKSB7CisgICAgICAgIGNvcHlfYmFzZShzaGFwZSwgaXRlbXNpemUsCisgICAgICAgICAgICAgICAgICBkcHRyLCBkc3RyaWRlcywgZHN1Ym9mZnNldHMsCisgICAgICAgICAgICAgICAgICBzcHRyLCBzc3RyaWRlcywgc3N1Ym9mZnNldHMsCisgICAgICAgICAgICAgICAgICBtZW0pOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgZm9yIChpID0gMDsgaSA8IHNoYXBlWzBdOyBkcHRyKz1kc3RyaWRlc1swXSwgc3B0cis9c3N0cmlkZXNbMF0sIGkrKykgeworICAgICAgICBjaGFyICp4ZHB0ciA9IEFESlVTVF9QVFIoZHB0ciwgZHN1Ym9mZnNldHMpOworICAgICAgICBjaGFyICp4c3B0ciA9IEFESlVTVF9QVFIoc3B0ciwgc3N1Ym9mZnNldHMpOworCisgICAgICAgIGNvcHlfcmVjKHNoYXBlKzEsIG5kaW0tMSwgaXRlbXNpemUsCisgICAgICAgICAgICAgICAgIHhkcHRyLCBkc3RyaWRlcysxLCBkc3Vib2Zmc2V0cyA/IGRzdWJvZmZzZXRzKzEgOiBOVUxMLAorICAgICAgICAgICAgICAgICB4c3B0ciwgc3N0cmlkZXMrMSwgc3N1Ym9mZnNldHMgPyBzc3Vib2Zmc2V0cysxIDogTlVMTCwKKyAgICAgICAgICAgICAgICAgbWVtKTsKKyAgICB9Cit9CisKKy8qIEZhc3RlciBjb3B5aW5nIG9mIG9uZS1kaW1lbnNpb25hbCBhcnJheXMuICovCitzdGF0aWMgaW50Citjb3B5X3NpbmdsZShQeV9idWZmZXIgKmRlc3QsIFB5X2J1ZmZlciAqc3JjKQoreworICAgIGNoYXIgKm1lbSA9IE5VTEw7CisKKyAgICBhc3NlcnQoZGVzdC0+bmRpbSA9PSAxKTsKKworICAgIGlmIChjbXBfc3RydWN0dXJlKGRlc3QsIHNyYykgPCAwKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBpZiAoIWxhc3RfZGltX2lzX2NvbnRpZ3VvdXMoZGVzdCwgc3JjKSkgeworICAgICAgICBtZW0gPSBQeU1lbV9NYWxsb2MoZGVzdC0+c2hhcGVbMF0gKiBkZXN0LT5pdGVtc2l6ZSk7CisgICAgICAgIGlmIChtZW0gPT0gTlVMTCkgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGNvcHlfYmFzZShkZXN0LT5zaGFwZSwgZGVzdC0+aXRlbXNpemUsCisgICAgICAgICAgICAgIGRlc3QtPmJ1ZiwgZGVzdC0+c3RyaWRlcywgZGVzdC0+c3Vib2Zmc2V0cywKKyAgICAgICAgICAgICAgc3JjLT5idWYsIHNyYy0+c3RyaWRlcywgc3JjLT5zdWJvZmZzZXRzLAorICAgICAgICAgICAgICBtZW0pOworCisgICAgaWYgKG1lbSkKKyAgICAgICAgUHlNZW1fRnJlZShtZW0pOworCisgICAgcmV0dXJuIDA7Cit9CisKKy8qIFJlY3Vyc2l2ZWx5IGNvcHkgc3JjIHRvIGRlc3QuIEJvdGggYnVmZmVycyBtdXN0IGhhdmUgdGhlIHNhbWUgYmFzaWMKKyAgIHN0cnVjdHVyZS4gQ29weWluZyBpcyBhdG9taWMsIHRoZSBmdW5jdGlvbiBuZXZlciBmYWlscyB3aXRoIGEgcGFydGlhbAorICAgY29weS4gKi8KK3N0YXRpYyBpbnQKK2NvcHlfYnVmZmVyKFB5X2J1ZmZlciAqZGVzdCwgUHlfYnVmZmVyICpzcmMpCit7CisgICAgY2hhciAqbWVtID0gTlVMTDsKKworICAgIGFzc2VydChkZXN0LT5uZGltID4gMCk7CisKKyAgICBpZiAoY21wX3N0cnVjdHVyZShkZXN0LCBzcmMpIDwgMCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgaWYgKCFsYXN0X2RpbV9pc19jb250aWd1b3VzKGRlc3QsIHNyYykpIHsKKyAgICAgICAgbWVtID0gUHlNZW1fTWFsbG9jKGRlc3QtPnNoYXBlW2Rlc3QtPm5kaW0tMV0gKiBkZXN0LT5pdGVtc2l6ZSk7CisgICAgICAgIGlmIChtZW0gPT0gTlVMTCkgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGNvcHlfcmVjKGRlc3QtPnNoYXBlLCBkZXN0LT5uZGltLCBkZXN0LT5pdGVtc2l6ZSwKKyAgICAgICAgICAgICBkZXN0LT5idWYsIGRlc3QtPnN0cmlkZXMsIGRlc3QtPnN1Ym9mZnNldHMsCisgICAgICAgICAgICAgc3JjLT5idWYsIHNyYy0+c3RyaWRlcywgc3JjLT5zdWJvZmZzZXRzLAorICAgICAgICAgICAgIG1lbSk7CisKKyAgICBpZiAobWVtKQorICAgICAgICBQeU1lbV9GcmVlKG1lbSk7CisKKyAgICByZXR1cm4gMDsKK30KKworLyogSW5pdGlhbGl6ZSBzdHJpZGVzIGZvciBhIEMtY29udGlndW91cyBhcnJheS4gKi8KK1B5X0xPQ0FMX0lOTElORSh2b2lkKQoraW5pdF9zdHJpZGVzX2Zyb21fc2hhcGUoUHlfYnVmZmVyICp2aWV3KQoreworICAgIFB5X3NzaXplX3QgaTsKKworICAgIGFzc2VydCh2aWV3LT5uZGltID4gMCk7CisKKyAgICB2aWV3LT5zdHJpZGVzW3ZpZXctPm5kaW0tMV0gPSB2aWV3LT5pdGVtc2l6ZTsKKyAgICBmb3IgKGkgPSB2aWV3LT5uZGltLTI7IGkgPj0gMDsgaS0tKQorICAgICAgICB2aWV3LT5zdHJpZGVzW2ldID0gdmlldy0+c3RyaWRlc1tpKzFdICogdmlldy0+c2hhcGVbaSsxXTsKK30KKworLyogSW5pdGlhbGl6ZSBzdHJpZGVzIGZvciBhIEZvcnRyYW4tY29udGlndW91cyBhcnJheS4gKi8KK1B5X0xPQ0FMX0lOTElORSh2b2lkKQoraW5pdF9mb3J0cmFuX3N0cmlkZXNfZnJvbV9zaGFwZShQeV9idWZmZXIgKnZpZXcpCit7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgYXNzZXJ0KHZpZXctPm5kaW0gPiAwKTsKKworICAgIHZpZXctPnN0cmlkZXNbMF0gPSB2aWV3LT5pdGVtc2l6ZTsKKyAgICBmb3IgKGkgPSAxOyBpIDwgdmlldy0+bmRpbTsgaSsrKQorICAgICAgICB2aWV3LT5zdHJpZGVzW2ldID0gdmlldy0+c3RyaWRlc1tpLTFdICogdmlldy0+c2hhcGVbaS0xXTsKK30KKworLyogQ29weSBzcmMgdG8gYSBDLWNvbnRpZ3VvdXMgcmVwcmVzZW50YXRpb24uIEFzc3VtcHRpb25zOgorICAgbGVuKG1lbSkgPT0gc3JjLT5sZW4uICovCitzdGF0aWMgaW50CitidWZmZXJfdG9fY19jb250aWd1b3VzKGNoYXIgKm1lbSwgUHlfYnVmZmVyICpzcmMpCit7CisgICAgUHlfYnVmZmVyIGRlc3Q7CisgICAgUHlfc3NpemVfdCAqc3RyaWRlczsKKyAgICBpbnQgcmV0OworCisgICAgYXNzZXJ0KHNyYy0+c2hhcGUgIT0gTlVMTCk7CisgICAgYXNzZXJ0KHNyYy0+c3RyaWRlcyAhPSBOVUxMKTsKKworICAgIHN0cmlkZXMgPSBQeU1lbV9NYWxsb2Moc3JjLT5uZGltICogKHNpemVvZiAqc3JjLT5zdHJpZGVzKSk7CisgICAgaWYgKHN0cmlkZXMgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgLyogaW5pdGlhbGl6ZSBkZXN0IGFzIGEgQy1jb250aWd1b3VzIGJ1ZmZlciAqLworICAgIGRlc3QgPSAqc3JjOworICAgIGRlc3QuYnVmID0gbWVtOworICAgIC8qIHNoYXBlIGlzIGNvbnN0YW50IGFuZCBzaGFyZWQgKi8KKyAgICBkZXN0LnN0cmlkZXMgPSBzdHJpZGVzOworICAgIGluaXRfc3RyaWRlc19mcm9tX3NoYXBlKCZkZXN0KTsKKyAgICBkZXN0LnN1Ym9mZnNldHMgPSBOVUxMOworCisgICAgcmV0ID0gY29weV9idWZmZXIoJmRlc3QsIHNyYyk7CisKKyAgICBQeU1lbV9GcmVlKHN0cmlkZXMpOworICAgIHJldHVybiByZXQ7Cit9CisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25zdHJ1Y3RvcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisvKiBJbml0aWFsaXplIHZhbHVlcyB0aGF0IGFyZSBzaGFyZWQgd2l0aCB0aGUgbWFuYWdlZCBidWZmZXIuICovCitQeV9MT0NBTF9JTkxJTkUodm9pZCkKK2luaXRfc2hhcmVkX3ZhbHVlcyhQeV9idWZmZXIgKmRlc3QsIGNvbnN0IFB5X2J1ZmZlciAqc3JjKQoreworICAgIGRlc3QtPm9iaiA9IHNyYy0+b2JqOworICAgIGRlc3QtPmJ1ZiA9IHNyYy0+YnVmOworICAgIGRlc3QtPmxlbiA9IHNyYy0+bGVuOworICAgIGRlc3QtPml0ZW1zaXplID0gc3JjLT5pdGVtc2l6ZTsKKyAgICBkZXN0LT5yZWFkb25seSA9IHNyYy0+cmVhZG9ubHk7CisgICAgZGVzdC0+Zm9ybWF0ID0gc3JjLT5mb3JtYXQgPyBzcmMtPmZvcm1hdCA6ICJCIjsKKyAgICBkZXN0LT5pbnRlcm5hbCA9IHNyYy0+aW50ZXJuYWw7Cit9CisKKy8qIENvcHkgc2hhcGUgYW5kIHN0cmlkZXMuIFJlY29uc3RydWN0IG1pc3NpbmcgdmFsdWVzLiAqLworc3RhdGljIHZvaWQKK2luaXRfc2hhcGVfc3RyaWRlcyhQeV9idWZmZXIgKmRlc3QsIGNvbnN0IFB5X2J1ZmZlciAqc3JjKQoreworICAgIFB5X3NzaXplX3QgaTsKKworICAgIGlmIChzcmMtPm5kaW0gPT0gMCkgeworICAgICAgICBkZXN0LT5zaGFwZSA9IE5VTEw7CisgICAgICAgIGRlc3QtPnN0cmlkZXMgPSBOVUxMOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGlmIChzcmMtPm5kaW0gPT0gMSkgeworICAgICAgICBkZXN0LT5zaGFwZVswXSA9IHNyYy0+c2hhcGUgPyBzcmMtPnNoYXBlWzBdIDogc3JjLT5sZW4gLyBzcmMtPml0ZW1zaXplOworICAgICAgICBkZXN0LT5zdHJpZGVzWzBdID0gc3JjLT5zdHJpZGVzID8gc3JjLT5zdHJpZGVzWzBdIDogc3JjLT5pdGVtc2l6ZTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGZvciAoaSA9IDA7IGkgPCBzcmMtPm5kaW07IGkrKykKKyAgICAgICAgZGVzdC0+c2hhcGVbaV0gPSBzcmMtPnNoYXBlW2ldOworICAgIGlmIChzcmMtPnN0cmlkZXMpIHsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IHNyYy0+bmRpbTsgaSsrKQorICAgICAgICAgICAgZGVzdC0+c3RyaWRlc1tpXSA9IHNyYy0+c3RyaWRlc1tpXTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGluaXRfc3RyaWRlc19mcm9tX3NoYXBlKGRlc3QpOworICAgIH0KK30KKworUHlfTE9DQUxfSU5MSU5FKHZvaWQpCitpbml0X3N1Ym9mZnNldHMoUHlfYnVmZmVyICpkZXN0LCBjb25zdCBQeV9idWZmZXIgKnNyYykKK3sKKyAgICBQeV9zc2l6ZV90IGk7CisKKyAgICBpZiAoc3JjLT5zdWJvZmZzZXRzID09IE5VTEwpIHsKKyAgICAgICAgZGVzdC0+c3Vib2Zmc2V0cyA9IE5VTEw7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgZm9yIChpID0gMDsgaSA8IHNyYy0+bmRpbTsgaSsrKQorICAgICAgICBkZXN0LT5zdWJvZmZzZXRzW2ldID0gc3JjLT5zdWJvZmZzZXRzW2ldOworfQorCisvKiBsZW4gPSBwcm9kdWN0KHNoYXBlKSAqIGl0ZW1zaXplICovCitQeV9MT0NBTF9JTkxJTkUodm9pZCkKK2luaXRfbGVuKFB5X2J1ZmZlciAqdmlldykKK3sKKyAgICBQeV9zc2l6ZV90IGksIGxlbjsKKworICAgIGxlbiA9IDE7CisgICAgZm9yIChpID0gMDsgaSA8IHZpZXctPm5kaW07IGkrKykKKyAgICAgICAgbGVuICo9IHZpZXctPnNoYXBlW2ldOworICAgIGxlbiAqPSB2aWV3LT5pdGVtc2l6ZTsKKworICAgIHZpZXctPmxlbiA9IGxlbjsKK30KKworLyogSW5pdGlhbGl6ZSBtZW1vcnl2aWV3IGJ1ZmZlciBwcm9wZXJ0aWVzLiAqLworc3RhdGljIHZvaWQKK2luaXRfZmxhZ3MoUHlNZW1vcnlWaWV3T2JqZWN0ICptdikKK3sKKyAgICBjb25zdCBQeV9idWZmZXIgKnZpZXcgPSAmbXYtPnZpZXc7CisgICAgaW50IGZsYWdzID0gMDsKKworICAgIHN3aXRjaCAodmlldy0+bmRpbSkgeworICAgIGNhc2UgMDoKKyAgICAgICAgZmxhZ3MgfD0gKF9QeV9NRU1PUllWSUVXX1NDQUxBUnxfUHlfTUVNT1JZVklFV19DfAorICAgICAgICAgICAgICAgICAgX1B5X01FTU9SWVZJRVdfRk9SVFJBTik7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgMToKKyAgICAgICAgaWYgKE1WX0NPTlRJR1VPVVNfTkRJTTEodmlldykpCisgICAgICAgICAgICBmbGFncyB8PSAoX1B5X01FTU9SWVZJRVdfQ3xfUHlfTUVNT1JZVklFV19GT1JUUkFOKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgaWYgKFB5QnVmZmVyX0lzQ29udGlndW91cyh2aWV3LCAnQycpKQorICAgICAgICAgICAgZmxhZ3MgfD0gX1B5X01FTU9SWVZJRVdfQzsKKyAgICAgICAgaWYgKFB5QnVmZmVyX0lzQ29udGlndW91cyh2aWV3LCAnRicpKQorICAgICAgICAgICAgZmxhZ3MgfD0gX1B5X01FTU9SWVZJRVdfRk9SVFJBTjsKKyAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgaWYgKHZpZXctPnN1Ym9mZnNldHMpIHsKKyAgICAgICAgZmxhZ3MgfD0gX1B5X01FTU9SWVZJRVdfUElMOworICAgICAgICBmbGFncyAmPSB+KF9QeV9NRU1PUllWSUVXX0N8X1B5X01FTU9SWVZJRVdfRk9SVFJBTik7CisgICAgfQorCisgICAgbXYtPmZsYWdzID0gZmxhZ3M7Cit9CisKKy8qIEFsbG9jYXRlIGEgbmV3IG1lbW9yeXZpZXcgYW5kIHBlcmZvcm0gYmFzaWMgaW5pdGlhbGl6YXRpb24uIE5ldyBtZW1vcnl2aWV3cworICAgYXJlIGV4Y2x1c2l2ZWx5IGNyZWF0ZWQgdGhyb3VnaCB0aGUgbWJ1Zl9hZGQgZnVuY3Rpb25zLiAqLworUHlfTE9DQUxfSU5MSU5FKFB5TWVtb3J5Vmlld09iamVjdCAqKQorbWVtb3J5X2FsbG9jKGludCBuZGltKQoreworICAgIFB5TWVtb3J5Vmlld09iamVjdCAqbXY7CisKKyAgICBtdiA9IChQeU1lbW9yeVZpZXdPYmplY3QgKikKKyAgICAgICAgUHlPYmplY3RfR0NfTmV3VmFyKFB5TWVtb3J5Vmlld09iamVjdCwgJlB5TWVtb3J5Vmlld19UeXBlLCAzKm5kaW0pOworICAgIGlmIChtdiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIG12LT5tYnVmID0gTlVMTDsKKyAgICBtdi0+aGFzaCA9IC0xOworICAgIG12LT5mbGFncyA9IDA7CisgICAgbXYtPmV4cG9ydHMgPSAwOworICAgIG12LT52aWV3Lm5kaW0gPSBuZGltOworICAgIG12LT52aWV3LnNoYXBlID0gbXYtPm9iX2FycmF5OworICAgIG12LT52aWV3LnN0cmlkZXMgPSBtdi0+b2JfYXJyYXkgKyBuZGltOworICAgIG12LT52aWV3LnN1Ym9mZnNldHMgPSBtdi0+b2JfYXJyYXkgKyAyICogbmRpbTsKKworICAgIF9QeU9iamVjdF9HQ19UUkFDSyhtdik7CisgICAgcmV0dXJuIG12OworfQorCisvKgorICAgUmV0dXJuIGEgbmV3IG1lbW9yeXZpZXcgdGhhdCBpcyByZWdpc3RlcmVkIHdpdGggbWJ1Zi4gSWYgc3JjIGlzIE5VTEwsCisgICB1c2UgbWJ1Zi0+bWFzdGVyIGFzIHRoZSB1bmRlcmx5aW5nIGJ1ZmZlci4gT3RoZXJ3aXNlLCB1c2Ugc3JjLgorCisgICBUaGUgbmV3IG1lbW9yeXZpZXcgaGFzIGZ1bGwgYnVmZmVyIGluZm9ybWF0aW9uOiBzaGFwZSBhbmQgc3RyaWRlcworICAgYXJlIGFsd2F5cyBwcmVzZW50LCBzdWJvZmZzZXRzIGFzIG5lZWRlZC4gQXJyYXlzIGFyZSBjb3BpZWQgdG8KKyAgIHRoZSBtZW1vcnl2aWV3J3Mgb2JfYXJyYXkgZmllbGQuCisgKi8KK3N0YXRpYyBQeU9iamVjdCAqCittYnVmX2FkZF92aWV3KF9QeU1hbmFnZWRCdWZmZXJPYmplY3QgKm1idWYsIGNvbnN0IFB5X2J1ZmZlciAqc3JjKQoreworICAgIFB5TWVtb3J5Vmlld09iamVjdCAqbXY7CisgICAgUHlfYnVmZmVyICpkZXN0OworCisgICAgaWYgKHNyYyA9PSBOVUxMKQorICAgICAgICBzcmMgPSAmbWJ1Zi0+bWFzdGVyOworCisgICAgaWYgKHNyYy0+bmRpbSA+IFB5QlVGX01BWF9ORElNKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgIm1lbW9yeXZpZXc6IG51bWJlciBvZiBkaW1lbnNpb25zIG11c3Qgbm90IGV4Y2VlZCAiCisgICAgICAgICAgICBTVFJJTkdJWkUoUHlCVUZfTUFYX05ESU0pKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgbXYgPSBtZW1vcnlfYWxsb2Moc3JjLT5uZGltKTsKKyAgICBpZiAobXYgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBkZXN0ID0gJm12LT52aWV3OworICAgIGluaXRfc2hhcmVkX3ZhbHVlcyhkZXN0LCBzcmMpOworICAgIGluaXRfc2hhcGVfc3RyaWRlcyhkZXN0LCBzcmMpOworICAgIGluaXRfc3Vib2Zmc2V0cyhkZXN0LCBzcmMpOworICAgIGluaXRfZmxhZ3MobXYpOworCisgICAgbXYtPm1idWYgPSBtYnVmOworICAgIFB5X0lOQ1JFRihtYnVmKTsKKyAgICBtYnVmLT5leHBvcnRzKys7CisKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopbXY7Cit9CisKKy8qIFJlZ2lzdGVyIGFuIGluY29tcGxldGUgdmlldzogc2hhcGUsIHN0cmlkZXMsIHN1Ym9mZnNldHMgYW5kIGZsYWdzIHN0aWxsCisgICBuZWVkIHRvIGJlIGluaXRpYWxpemVkLiBVc2UgJ25kaW0nIGluc3RlYWQgb2Ygc3JjLT5uZGltIHRvIGRldGVybWluZSB0aGUKKyAgIHNpemUgb2YgdGhlIG1lbW9yeXZpZXcncyBvYl9hcnJheS4KKworICAgQXNzdW1wdGlvbjogbmRpbSA8PSBQeUJVRl9NQVhfTkRJTS4gKi8KK3N0YXRpYyBQeU9iamVjdCAqCittYnVmX2FkZF9pbmNvbXBsZXRlX3ZpZXcoX1B5TWFuYWdlZEJ1ZmZlck9iamVjdCAqbWJ1ZiwgY29uc3QgUHlfYnVmZmVyICpzcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG5kaW0pCit7CisgICAgUHlNZW1vcnlWaWV3T2JqZWN0ICptdjsKKyAgICBQeV9idWZmZXIgKmRlc3Q7CisKKyAgICBpZiAoc3JjID09IE5VTEwpCisgICAgICAgIHNyYyA9ICZtYnVmLT5tYXN0ZXI7CisKKyAgICBhc3NlcnQobmRpbSA8PSBQeUJVRl9NQVhfTkRJTSk7CisKKyAgICBtdiA9IG1lbW9yeV9hbGxvYyhuZGltKTsKKyAgICBpZiAobXYgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBkZXN0ID0gJm12LT52aWV3OworICAgIGluaXRfc2hhcmVkX3ZhbHVlcyhkZXN0LCBzcmMpOworCisgICAgbXYtPm1idWYgPSBtYnVmOworICAgIFB5X0lOQ1JFRihtYnVmKTsKKyAgICBtYnVmLT5leHBvcnRzKys7CisKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopbXY7Cit9CisKKy8qIEV4cG9zZSBhIHJhdyBtZW1vcnkgYXJlYSBhcyBhIHZpZXcgb2YgY29udGlndW91cyBieXRlcy4gZmxhZ3MgY2FuIGJlCisgICBQeUJVRl9SRUFEIG9yIFB5QlVGX1dSSVRFLiB2aWV3LT5mb3JtYXQgaXMgc2V0IHRvICJCIiAodW5zaWduZWQgYnl0ZXMpLgorICAgVGhlIG1lbW9yeXZpZXcgaGFzIGNvbXBsZXRlIGJ1ZmZlciBpbmZvcm1hdGlvbi4gKi8KK1B5T2JqZWN0ICoKK1B5TWVtb3J5Vmlld19Gcm9tTWVtb3J5KGNoYXIgKm1lbSwgUHlfc3NpemVfdCBzaXplLCBpbnQgZmxhZ3MpCit7CisgICAgX1B5TWFuYWdlZEJ1ZmZlck9iamVjdCAqbWJ1ZjsKKyAgICBQeU9iamVjdCAqbXY7CisgICAgaW50IHJlYWRvbmx5OworCisgICAgYXNzZXJ0KG1lbSAhPSBOVUxMKTsKKyAgICBhc3NlcnQoZmxhZ3MgPT0gUHlCVUZfUkVBRCB8fCBmbGFncyA9PSBQeUJVRl9XUklURSk7CisKKyAgICBtYnVmID0gbWJ1Zl9hbGxvYygpOworICAgIGlmIChtYnVmID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcmVhZG9ubHkgPSAoZmxhZ3MgPT0gUHlCVUZfV1JJVEUpID8gMCA6IDE7CisgICAgKHZvaWQpUHlCdWZmZXJfRmlsbEluZm8oJm1idWYtPm1hc3RlciwgTlVMTCwgbWVtLCBzaXplLCByZWFkb25seSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJVRl9GVUxMX1JPKTsKKworICAgIG12ID0gbWJ1Zl9hZGRfdmlldyhtYnVmLCBOVUxMKTsKKyAgICBQeV9ERUNSRUYobWJ1Zik7CisKKyAgICByZXR1cm4gbXY7Cit9CisKKy8qIENyZWF0ZSBhIG1lbW9yeXZpZXcgZnJvbSBhIGdpdmVuIFB5X2J1ZmZlci4gRm9yIHNpbXBsZSBieXRlIHZpZXdzLAorICAgUHlNZW1vcnlWaWV3X0Zyb21NZW1vcnkoKSBzaG91bGQgYmUgdXNlZCBpbnN0ZWFkLgorICAgVGhpcyBmdW5jdGlvbiBpcyB0aGUgb25seSBlbnRyeSBwb2ludCB0aGF0IGNhbiBjcmVhdGUgYSBtYXN0ZXIgYnVmZmVyCisgICB3aXRob3V0IGZ1bGwgaW5mb3JtYXRpb24uIEJlY2F1c2Ugb2YgdGhpcyBmYWN0IGluaXRfc2hhcGVfc3RyaWRlcygpCisgICBtdXN0IGJlIGFibGUgdG8gcmVjb25zdHJ1Y3QgbWlzc2luZyB2YWx1ZXMuICAqLwogUHlPYmplY3QgKgogUHlNZW1vcnlWaWV3X0Zyb21CdWZmZXIoUHlfYnVmZmVyICppbmZvKQogewotICAgIFB5TWVtb3J5Vmlld09iamVjdCAqbXZpZXc7CisgICAgX1B5TWFuYWdlZEJ1ZmZlck9iamVjdCAqbWJ1ZjsKKyAgICBQeU9iamVjdCAqbXY7CiAKICAgICBpZiAoaW5mby0+YnVmID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAiY2Fubm90IG1ha2UgbWVtb3J5IHZpZXcgZnJvbSBhIGJ1ZmZlciB3aXRoIGEgTlVMTCBkYXRhIHBvaW50ZXIiKTsKKyAgICAgICAgICAgICJQeU1lbW9yeVZpZXdfRnJvbUJ1ZmZlcigpOiBpbmZvLT5idWYgbXVzdCBub3QgYmUgTlVMTCIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgbXZpZXcgPSAoUHlNZW1vcnlWaWV3T2JqZWN0ICopCi0gICAgICAgIFB5T2JqZWN0X0dDX05ldyhQeU1lbW9yeVZpZXdPYmplY3QsICZQeU1lbW9yeVZpZXdfVHlwZSk7Ci0gICAgaWYgKG12aWV3ID09IE5VTEwpCisKKyAgICBtYnVmID0gbWJ1Zl9hbGxvYygpOworICAgIGlmIChtYnVmID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGR1cF9idWZmZXIoJm12aWV3LT52aWV3LCBpbmZvKTsKLSAgICAvKiBOT1RFOiBtdmlldy0+dmlldy5vYmogc2hvdWxkIGFscmVhZHkgaGF2ZSBiZWVuIGluY3JlZidlZCBhcwotICAgICAgIHBhcnQgb2YgUHlCdWZmZXJfRmlsbEluZm8oKS4gKi8KLSAgICBfUHlPYmplY3RfR0NfVFJBQ0sobXZpZXcpOwotICAgIHJldHVybiAoUHlPYmplY3QgKiltdmlldzsKKworICAgIC8qIGluZm8tPm9iaiBpcyBlaXRoZXIgTlVMTCBvciBhIGJvcnJvd2VkIHJlZmVyZW5jZS4gVGhpcyByZWZlcmVuY2UKKyAgICAgICBzaG91bGQgbm90IGJlIGRlY3JlbWVudGVkIGluIFB5QnVmZmVyX1JlbGVhc2UoKS4gKi8KKyAgICBtYnVmLT5tYXN0ZXIgPSAqaW5mbzsKKyAgICBtYnVmLT5tYXN0ZXIub2JqID0gTlVMTDsKKworICAgIG12ID0gbWJ1Zl9hZGRfdmlldyhtYnVmLCBOVUxMKTsKKyAgICBQeV9ERUNSRUYobWJ1Zik7CisKKyAgICByZXR1cm4gbXY7CiB9CiAKKy8qIENyZWF0ZSBhIG1lbW9yeXZpZXcgZnJvbSBhbiBvYmplY3QgdGhhdCBpbXBsZW1lbnRzIHRoZSBidWZmZXIgcHJvdG9jb2wuCisgICBJZiB0aGUgb2JqZWN0IGlzIGEgbWVtb3J5dmlldywgdGhlIG5ldyBtZW1vcnl2aWV3IG11c3QgYmUgcmVnaXN0ZXJlZAorICAgd2l0aCB0aGUgc2FtZSBtYW5hZ2VkIGJ1ZmZlci4gT3RoZXJ3aXNlLCBhIG5ldyBtYW5hZ2VkIGJ1ZmZlciBpcyBjcmVhdGVkLiAqLwogUHlPYmplY3QgKgotUHlNZW1vcnlWaWV3X0Zyb21PYmplY3QoUHlPYmplY3QgKmJhc2UpCitQeU1lbW9yeVZpZXdfRnJvbU9iamVjdChQeU9iamVjdCAqdikKIHsKLSAgICBQeU1lbW9yeVZpZXdPYmplY3QgKm12aWV3OwotICAgIFB5X2J1ZmZlciB2aWV3OworICAgIF9QeU1hbmFnZWRCdWZmZXJPYmplY3QgKm1idWY7CiAKLSAgICBpZiAoIVB5T2JqZWN0X0NoZWNrQnVmZmVyKGJhc2UpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAiY2Fubm90IG1ha2UgbWVtb3J5IHZpZXcgYmVjYXVzZSBvYmplY3QgZG9lcyAiCi0gICAgICAgICAgICAibm90IGhhdmUgdGhlIGJ1ZmZlciBpbnRlcmZhY2UiKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKFB5TWVtb3J5Vmlld19DaGVjayh2KSkgeworICAgICAgICBQeU1lbW9yeVZpZXdPYmplY3QgKm12ID0gKFB5TWVtb3J5Vmlld09iamVjdCAqKXY7CisgICAgICAgIENIRUNLX1JFTEVBU0VEKG12KTsKKyAgICAgICAgcmV0dXJuIG1idWZfYWRkX3ZpZXcobXYtPm1idWYsICZtdi0+dmlldyk7CisgICAgfQorICAgIGVsc2UgaWYgKFB5T2JqZWN0X0NoZWNrQnVmZmVyKHYpKSB7CisgICAgICAgIFB5T2JqZWN0ICpyZXQ7CisgICAgICAgIG1idWYgPSAoX1B5TWFuYWdlZEJ1ZmZlck9iamVjdCAqKV9QeU1hbmFnZWRCdWZmZXJfRnJvbU9iamVjdCh2KTsKKyAgICAgICAgaWYgKG1idWYgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICByZXQgPSBtYnVmX2FkZF92aWV3KG1idWYsIE5VTEwpOworICAgICAgICBQeV9ERUNSRUYobWJ1Zik7CisgICAgICAgIHJldHVybiByZXQ7CiAgICAgfQogCi0gICAgaWYgKFB5T2JqZWN0X0dldEJ1ZmZlcihiYXNlLCAmdmlldywgUHlCVUZfRlVMTF9STykgPCAwKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIG12aWV3ID0gKFB5TWVtb3J5Vmlld09iamVjdCAqKVB5TWVtb3J5Vmlld19Gcm9tQnVmZmVyKCZ2aWV3KTsKLSAgICBpZiAobXZpZXcgPT0gTlVMTCkgewotICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZ2aWV3KTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgcmV0dXJuIChQeU9iamVjdCAqKW12aWV3OworICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICJtZW1vcnl2aWV3OiAlLjIwMHMgb2JqZWN0IGRvZXMgbm90IGhhdmUgdGhlIGJ1ZmZlciBpbnRlcmZhY2UiLAorICAgICAgICBQeV9UWVBFKHYpLT50cF9uYW1lKTsKKyAgICByZXR1cm4gTlVMTDsKIH0KIAorLyogQ29weSB0aGUgZm9ybWF0IHN0cmluZyBmcm9tIGEgYmFzZSBvYmplY3QgdGhhdCBtaWdodCB2YW5pc2guICovCitzdGF0aWMgaW50CittYnVmX2NvcHlfZm9ybWF0KF9QeU1hbmFnZWRCdWZmZXJPYmplY3QgKm1idWYsIGNvbnN0IGNoYXIgKmZtdCkKK3sKKyAgICBpZiAoZm10ICE9IE5VTEwpIHsKKyAgICAgICAgY2hhciAqY3AgPSBQeU1lbV9NYWxsb2Moc3RybGVuKGZtdCkrMSk7CisgICAgICAgIGlmIChjcCA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIG1idWYtPm1hc3Rlci5mb3JtYXQgPSBzdHJjcHkoY3AsIGZtdCk7CisgICAgICAgIG1idWYtPmZsYWdzIHw9IF9QeV9NQU5BR0VEX0JVRkZFUl9GUkVFX0ZPUk1BVDsKKyAgICB9CisKKyAgICByZXR1cm4gMDsKK30KKworLyoKKyAgIFJldHVybiBhIG1lbW9yeXZpZXcgdGhhdCBpcyBiYXNlZCBvbiBhIGNvbnRpZ3VvdXMgY29weSBvZiBzcmMuCisgICBBc3N1bXB0aW9uczogc3JjIGhhcyBQeUJVRl9GVUxMX1JPIGluZm9ybWF0aW9uLCBzcmMtPm5kaW0gPiAwLgorCisgICBPd25lcnNoaXAgcnVsZXM6CisgICAgIDEpIEFzIHVzdWFsLCB0aGUgcmV0dXJuZWQgbWVtb3J5dmlldyBoYXMgYSBwcml2YXRlIGNvcHkKKyAgICAgICAgb2Ygc3JjLT5zaGFwZSwgc3JjLT5zdHJpZGVzIGFuZCBzcmMtPnN1Ym9mZnNldHMuCisgICAgIDIpIHNyYy0+Zm9ybWF0IGlzIGNvcGllZCB0byB0aGUgbWFzdGVyIGJ1ZmZlciBhbmQgcmVsZWFzZWQKKyAgICAgICAgaW4gbWJ1Zl9kZWFsbG9jKCkuIFRoZSByZWxlYXNlYnVmZmVycHJvYyBvZiB0aGUgYnl0ZXMKKyAgICAgICAgb2JqZWN0IGlzIE5VTEwsIHNvIGl0IGRvZXMgbm90IG1hdHRlciB0aGF0IG1idWZfcmVsZWFzZSgpCisgICAgICAgIHBhc3NlcyB0aGUgYWx0ZXJlZCBmb3JtYXQgcG9pbnRlciB0byBQeUJ1ZmZlcl9SZWxlYXNlKCkuCisqLworc3RhdGljIFB5T2JqZWN0ICoKK21lbW9yeV9mcm9tX2NvbnRpZ3VvdXNfY29weShQeV9idWZmZXIgKnNyYywgY2hhciBvcmRlcikKK3sKKyAgICBfUHlNYW5hZ2VkQnVmZmVyT2JqZWN0ICptYnVmOworICAgIFB5TWVtb3J5Vmlld09iamVjdCAqbXY7CisgICAgUHlPYmplY3QgKmJ5dGVzOworICAgIFB5X2J1ZmZlciAqZGVzdDsKKyAgICBpbnQgaTsKKworICAgIGFzc2VydChzcmMtPm5kaW0gPiAwKTsKKyAgICBhc3NlcnQoc3JjLT5zaGFwZSAhPSBOVUxMKTsKKworICAgIGJ5dGVzID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBzcmMtPmxlbik7CisgICAgaWYgKGJ5dGVzID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgbWJ1ZiA9IChfUHlNYW5hZ2VkQnVmZmVyT2JqZWN0ICopX1B5TWFuYWdlZEJ1ZmZlcl9Gcm9tT2JqZWN0KGJ5dGVzKTsKKyAgICBQeV9ERUNSRUYoYnl0ZXMpOworICAgIGlmIChtYnVmID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKG1idWZfY29weV9mb3JtYXQobWJ1Ziwgc3JjLT5mb3JtYXQpIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYobWJ1Zik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIG12ID0gKFB5TWVtb3J5Vmlld09iamVjdCAqKW1idWZfYWRkX2luY29tcGxldGVfdmlldyhtYnVmLCBOVUxMLCBzcmMtPm5kaW0pOworICAgIFB5X0RFQ1JFRihtYnVmKTsKKyAgICBpZiAobXYgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBkZXN0ID0gJm12LT52aWV3OworCisgICAgLyogc2hhcmVkIHZhbHVlcyBhcmUgaW5pdGlhbGl6ZWQgY29ycmVjdGx5IGV4Y2VwdCBmb3IgaXRlbXNpemUgKi8KKyAgICBkZXN0LT5pdGVtc2l6ZSA9IHNyYy0+aXRlbXNpemU7CisKKyAgICAvKiBzaGFwZSBhbmQgc3RyaWRlcyAqLworICAgIGZvciAoaSA9IDA7IGkgPCBzcmMtPm5kaW07IGkrKykgeworICAgICAgICBkZXN0LT5zaGFwZVtpXSA9IHNyYy0+c2hhcGVbaV07CisgICAgfQorICAgIGlmIChvcmRlciA9PSAnQycgfHwgb3JkZXIgPT0gJ0EnKSB7CisgICAgICAgIGluaXRfc3RyaWRlc19mcm9tX3NoYXBlKGRlc3QpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaW5pdF9mb3J0cmFuX3N0cmlkZXNfZnJvbV9zaGFwZShkZXN0KTsKKyAgICB9CisgICAgLyogc3Vib2Zmc2V0cyAqLworICAgIGRlc3QtPnN1Ym9mZnNldHMgPSBOVUxMOworCisgICAgLyogZmxhZ3MgKi8KKyAgICBpbml0X2ZsYWdzKG12KTsKKworICAgIGlmIChjb3B5X2J1ZmZlcihkZXN0LCBzcmMpIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYobXYpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopbXY7Cit9CisKKy8qCisgICBSZXR1cm4gYSBuZXcgbWVtb3J5dmlldyBvYmplY3QgYmFzZWQgb24gYSBjb250aWd1b3VzIGV4cG9ydGVyIHdpdGgKKyAgIGJ1ZmZlcnR5cGU9e1B5QlVGX1JFQUQsIFB5QlVGX1dSSVRFfSBhbmQgb3JkZXI9eydDJywgJ0Ynb3J0cmFuLCBvciAnQSdueX0uCisgICBUaGUgbG9naWNhbCBzdHJ1Y3R1cmUgb2YgdGhlIGlucHV0IGFuZCBvdXRwdXQgYnVmZmVycyBpcyB0aGUgc2FtZQorICAgKGkuZS4gdG9saXN0KGlucHV0KSA9PSB0b2xpc3Qob3V0cHV0KSksIGJ1dCB0aGUgcGh5c2ljYWwgbGF5b3V0IGluCisgICBtZW1vcnkgY2FuIGJlIGV4cGxpY2l0bHkgY2hvc2VuLgorIAorICAgQXMgdXN1YWwsIGlmIGJ1ZmZlcnR5cGU9UHlCVUZfV1JJVEUsIHRoZSBleHBvcnRlcidzIGJ1ZmZlciBtdXN0IGJlIHdyaXRhYmxlLAorICAgb3RoZXJ3aXNlIGl0IG1heSBiZSB3cml0YWJsZSBvciByZWFkLW9ubHkuCisKKyAgIElmIHRoZSBleHBvcnRlciBpcyBhbHJlYWR5IGNvbnRpZ3VvdXMgd2l0aCB0aGUgZGVzaXJlZCB0YXJnZXQgb3JkZXIsCisgICB0aGUgbWVtb3J5dmlldyB3aWxsIGJlIGRpcmVjdGx5IGJhc2VkIG9uIHRoZSBleHBvcnRlci4KKworICAgT3RoZXJ3aXNlLCBpZiB0aGUgYnVmZmVydHlwZSBpcyBQeUJVRl9SRUFELCB0aGUgbWVtb3J5dmlldyB3aWxsIGJlCisgICBiYXNlZCBvbiBhIG5ldyBieXRlcyBvYmplY3QuIElmIG9yZGVyPXsnQycsICdBJ255fSwgdXNlICdDJyBvcmRlciwKKyAgICdGJ29ydHJhbiBvcmRlciBvdGhlcndpc2UuCisqLworUHlPYmplY3QgKgorUHlNZW1vcnlWaWV3X0dldENvbnRpZ3VvdXMoUHlPYmplY3QgKm9iaiwgaW50IGJ1ZmZlcnR5cGUsIGNoYXIgb3JkZXIpCit7CisgICAgUHlNZW1vcnlWaWV3T2JqZWN0ICptdjsKKyAgICBQeU9iamVjdCAqcmV0OworICAgIFB5X2J1ZmZlciAqdmlldzsKKworICAgIGFzc2VydChidWZmZXJ0eXBlID09IFB5QlVGX1JFQUQgfHwgYnVmZmVydHlwZSA9PSBQeUJVRl9XUklURSk7CisgICAgYXNzZXJ0KG9yZGVyID09ICdDJyB8fCBvcmRlciA9PSAnRicgfHwgb3JkZXIgPT0gJ0EnKTsKKworICAgIG12ID0gKFB5TWVtb3J5Vmlld09iamVjdCAqKVB5TWVtb3J5Vmlld19Gcm9tT2JqZWN0KG9iaik7CisgICAgaWYgKG12ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgdmlldyA9ICZtdi0+dmlldzsKKyAgICBpZiAoYnVmZmVydHlwZSA9PSBQeUJVRl9XUklURSAmJiB2aWV3LT5yZWFkb25seSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAidW5kZXJseWluZyBidWZmZXIgaXMgbm90IHdyaXRhYmxlIik7CisgICAgICAgIFB5X0RFQ1JFRihtdik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGlmIChQeUJ1ZmZlcl9Jc0NvbnRpZ3VvdXModmlldywgb3JkZXIpKQorICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopbXY7CisKKyAgICBpZiAoYnVmZmVydHlwZSA9PSBQeUJVRl9XUklURSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAid3JpdGFibGUgY29udGlndW91cyBidWZmZXIgcmVxdWVzdGVkICIKKyAgICAgICAgICAgICJmb3IgYSBub24tY29udGlndW91cyBvYmplY3QuIik7CisgICAgICAgIFB5X0RFQ1JFRihtdik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldCA9IG1lbW9yeV9mcm9tX2NvbnRpZ3VvdXNfY29weSh2aWV3LCBvcmRlcik7CisgICAgUHlfREVDUkVGKG12KTsKKyAgICByZXR1cm4gcmV0OworfQorCisKIHN0YXRpYyBQeU9iamVjdCAqCiBtZW1vcnlfbmV3KFB5VHlwZU9iamVjdCAqc3VidHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewogICAgIFB5T2JqZWN0ICpvYmo7Ci0gICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJvYmplY3QiLCAwfTsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7Im9iamVjdCIsIE5VTEx9OwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIk86bWVtb3J5dmlldyIsIGt3bGlzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmb2JqKSkgewpAQCAtMTMxLDIwMyArOTIwLDE1NzEgQEAKIH0KIAogCi1zdGF0aWMgdm9pZAotX3N0cmlkZWRfY29weV9uZChjaGFyICpkZXN0LCBjaGFyICpzcmMsIGludCBuZCwgUHlfc3NpemVfdCAqc2hhcGUsCi0gICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKnN0cmlkZXMsIFB5X3NzaXplX3QgaXRlbXNpemUsIGNoYXIgZm9ydCkKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICBSZWxlYXNlL0dDIG1hbmFnZW1lbnQgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyogSW5mb3JtIHRoZSBtYW5hZ2VkIGJ1ZmZlciB0aGF0IHRoaXMgcGFydGljdWxhciBtZW1vcnl2aWV3IHdpbGwgbm90IGFjY2VzcworICAgdGhlIHVuZGVybHlpbmcgYnVmZmVyIGFnYWluLiBJZiBubyBvdGhlciBtZW1vcnl2aWV3cyBhcmUgcmVnaXN0ZXJlZCB3aXRoCisgICB0aGUgbWFuYWdlZCBidWZmZXIsIHRoZSB1bmRlcmx5aW5nIGJ1ZmZlciBpcyByZWxlYXNlZCBpbnN0YW50bHkgYW5kCisgICBtYXJrZWQgYXMgaW5hY2Nlc3NpYmxlIGZvciBib3RoIHRoZSBtZW1vcnl2aWV3IGFuZCB0aGUgbWFuYWdlZCBidWZmZXIuCisKKyAgIFRoaXMgZnVuY3Rpb24gZmFpbHMgaWYgdGhlIG1lbW9yeXZpZXcgaXRzZWxmIGhhcyBleHBvcnRlZCBidWZmZXJzLiAqLworc3RhdGljIGludAorX21lbW9yeV9yZWxlYXNlKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZikKIHsKLSAgICBpbnQgazsKLSAgICBQeV9zc2l6ZV90IG91dHN0cmlkZTsKKyAgICBpZiAoc2VsZi0+ZmxhZ3MgJiBfUHlfTUVNT1JZVklFV19SRUxFQVNFRCkKKyAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBpZiAobmQ9PTApIHsKLSAgICAgICAgbWVtY3B5KGRlc3QsIHNyYywgaXRlbXNpemUpOworICAgIGlmIChzZWxmLT5leHBvcnRzID09IDApIHsKKyAgICAgICAgc2VsZi0+ZmxhZ3MgfD0gX1B5X01FTU9SWVZJRVdfUkVMRUFTRUQ7CisgICAgICAgIGFzc2VydChzZWxmLT5tYnVmLT5leHBvcnRzID4gMCk7CisgICAgICAgIGlmICgtLXNlbGYtPm1idWYtPmV4cG9ydHMgPT0gMCkKKyAgICAgICAgICAgIG1idWZfcmVsZWFzZShzZWxmLT5tYnVmKTsKKyAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIGVsc2UgaWYgKG5kID09IDEpIHsKLSAgICAgICAgZm9yIChrID0gMDsgazxzaGFwZVswXTsgaysrKSB7Ci0gICAgICAgICAgICBtZW1jcHkoZGVzdCwgc3JjLCBpdGVtc2l6ZSk7Ci0gICAgICAgICAgICBkZXN0ICs9IGl0ZW1zaXplOwotICAgICAgICAgICAgc3JjICs9IHN0cmlkZXNbMF07Ci0gICAgICAgIH0KKyAgICBpZiAoc2VsZi0+ZXhwb3J0cyA+IDApIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0J1ZmZlckVycm9yLAorICAgICAgICAgICAgIm1lbW9yeXZpZXcgaGFzICV6ZCBleHBvcnRlZCBidWZmZXIlcyIsIHNlbGYtPmV4cG9ydHMsCisgICAgICAgICAgICBzZWxmLT5leHBvcnRzPT0xID8gIiIgOiAicyIpOworICAgICAgICByZXR1cm4gLTE7CiAgICAgfQotICAgIGVsc2UgewotICAgICAgICBpZiAoZm9ydCA9PSAnRicpIHsKLSAgICAgICAgICAgIC8qIENvcHkgZmlyc3QgZGltZW5zaW9uIGZpcnN0LAotICAgICAgICAgICAgICAgc2Vjb25kIGRpbWVuc2lvbiBzZWNvbmQsIGV0Yy4uLgotICAgICAgICAgICAgICAgU2V0IHVwIHRoZSByZWN1cnNpdmUgbG9vcCBiYWNrd2FyZHMgc28gdGhhdCBmaW5hbAotICAgICAgICAgICAgICAgZGltZW5zaW9uIGlzIGFjdHVhbGx5IGNvcGllZCBsYXN0LgotICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIG91dHN0cmlkZSA9IGl0ZW1zaXplOwotICAgICAgICAgICAgZm9yIChrPTE7IGs8bmQtMTtrKyspIHsKLSAgICAgICAgICAgICAgICBvdXRzdHJpZGUgKj0gc2hhcGVba107Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBmb3IgKGs9MDsgazxzaGFwZVtuZC0xXTsgaysrKSB7Ci0gICAgICAgICAgICAgICAgX3N0cmlkZWRfY29weV9uZChkZXN0LCBzcmMsIG5kLTEsIHNoYXBlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaWRlcywgaXRlbXNpemUsIGZvcnQpOwotICAgICAgICAgICAgICAgIGRlc3QgKz0gb3V0c3RyaWRlOwotICAgICAgICAgICAgICAgIHNyYyArPSBzdHJpZGVzW25kLTFdOwotICAgICAgICAgICAgfQotICAgICAgICB9CiAKLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAvKiBDb3B5IGxhc3QgZGltZW5zaW9uIGZpcnN0LAotICAgICAgICAgICAgICAgc2Vjb25kLXRvLWxhc3QgZGltZW5zaW9uIHNlY29uZCwgZXRjLgotICAgICAgICAgICAgICAgU2V0IHVwIHRoZSByZWN1cnNpb24gc28gdGhhdCB0aGUKLSAgICAgICAgICAgICAgIGZpcnN0IGRpbWVuc2lvbiBpcyBjb3BpZWQgbGFzdAotICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIG91dHN0cmlkZSA9IGl0ZW1zaXplOwotICAgICAgICAgICAgZm9yIChrPTE7IGsgPCBuZDsgaysrKSB7Ci0gICAgICAgICAgICAgICAgb3V0c3RyaWRlICo9IHNoYXBlW2tdOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZm9yIChrPTA7IGs8c2hhcGVbMF07IGsrKykgewotICAgICAgICAgICAgICAgIF9zdHJpZGVkX2NvcHlfbmQoZGVzdCwgc3JjLCBuZC0xLCBzaGFwZSsxLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaWRlcysxLCBpdGVtc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcnQpOwotICAgICAgICAgICAgICAgIGRlc3QgKz0gb3V0c3RyaWRlOwotICAgICAgICAgICAgICAgIHNyYyArPSBzdHJpZGVzWzBdOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotICAgIHJldHVybjsKKyAgICBQeV9GYXRhbEVycm9yKCJfbWVtb3J5X3JlbGVhc2UoKTogbmVnYXRpdmUgZXhwb3J0IGNvdW50Iik7CisgICAgcmV0dXJuIC0xOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbWVtb3J5X3JlbGVhc2UoUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmKQoreworICAgIGlmIChfbWVtb3J5X3JlbGVhc2Uoc2VsZikgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworc3RhdGljIHZvaWQKK21lbW9yeV9kZWFsbG9jKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZikKK3sKKyAgICBhc3NlcnQoc2VsZi0+ZXhwb3J0cyA9PSAwKTsKKyAgICBfUHlPYmplY3RfR0NfVU5UUkFDSyhzZWxmKTsKKyAgICAodm9pZClfbWVtb3J5X3JlbGVhc2Uoc2VsZik7CisgICAgUHlfQ0xFQVIoc2VsZi0+bWJ1Zik7CisgICAgUHlPYmplY3RfR0NfRGVsKHNlbGYpOwogfQogCiBzdGF0aWMgaW50Ci1faW5kaXJlY3RfY29weV9uZChjaGFyICpkZXN0LCBQeV9idWZmZXIgKnZpZXcsIGNoYXIgZm9ydCkKK21lbW9yeV90cmF2ZXJzZShQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYsIHZpc2l0cHJvYyB2aXNpdCwgdm9pZCAqYXJnKQogewotICAgIFB5X3NzaXplX3QgKmluZGljZXM7Ci0gICAgaW50IGs7Ci0gICAgUHlfc3NpemVfdCBlbGVtZW50czsKLSAgICBjaGFyICpwdHI7Ci0gICAgdm9pZCAoKmZ1bmMpKGludCwgUHlfc3NpemVfdCAqLCBjb25zdCBQeV9zc2l6ZV90ICopOworICAgIFB5X1ZJU0lUKHNlbGYtPm1idWYpOworICAgIHJldHVybiAwOworfQogCi0gICAgaWYgKHZpZXctPm5kaW0gPiBQWV9TU0laRV9UX01BWCAvIHNpemVvZihQeV9zc2l6ZV90KSkgewotICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICByZXR1cm4gLTE7CitzdGF0aWMgaW50CittZW1vcnlfY2xlYXIoUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmKQoreworICAgICh2b2lkKV9tZW1vcnlfcmVsZWFzZShzZWxmKTsKKyAgICBQeV9DTEVBUihzZWxmLT5tYnVmKTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK21lbW9yeV9lbnRlcihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgQ0hFQ0tfUkVMRUFTRUQoc2VsZik7CisgICAgUHlfSU5DUkVGKHNlbGYpOworICAgIHJldHVybiBzZWxmOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbWVtb3J5X2V4aXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIHJldHVybiBtZW1vcnlfcmVsZWFzZSgoUHlNZW1vcnlWaWV3T2JqZWN0ICopc2VsZik7Cit9CisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKiAgICAgICAgICAgICAgICAgICAgICAgICBDYXN0aW5nIGZvcm1hdCBhbmQgc2hhcGUgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjZGVmaW5lIElTX0JZVEVfRk9STUFUKGYpIChmID09ICdiJyB8fCBmID09ICdCJyB8fCBmID09ICdjJykKKworUHlfTE9DQUxfSU5MSU5FKFB5X3NzaXplX3QpCitnZXRfbmF0aXZlX2ZtdGNoYXIoY2hhciAqcmVzdWx0LCBjb25zdCBjaGFyICpmbXQpCit7CisgICAgUHlfc3NpemVfdCBzaXplID0gLTE7CisKKyAgICBpZiAoZm10WzBdID09ICdAJykgZm10Kys7CisKKyAgICBzd2l0Y2ggKGZtdFswXSkgeworICAgIGNhc2UgJ2MnOiBjYXNlICdiJzogY2FzZSAnQic6IHNpemUgPSBzaXplb2YoY2hhcik7IGJyZWFrOworICAgIGNhc2UgJ2gnOiBjYXNlICdIJzogc2l6ZSA9IHNpemVvZihzaG9ydCk7IGJyZWFrOworICAgIGNhc2UgJ2knOiBjYXNlICdJJzogc2l6ZSA9IHNpemVvZihpbnQpOyBicmVhazsKKyAgICBjYXNlICdsJzogY2FzZSAnTCc6IHNpemUgPSBzaXplb2YobG9uZyk7IGJyZWFrOworICAgICNpZmRlZiBIQVZFX0xPTkdfTE9ORworICAgIGNhc2UgJ3EnOiBjYXNlICdRJzogc2l6ZSA9IHNpemVvZihQWV9MT05HX0xPTkcpOyBicmVhazsKKyAgICAjZW5kaWYKKyAgICBjYXNlICduJzogY2FzZSAnTic6IHNpemUgPSBzaXplb2YoUHlfc3NpemVfdCk7IGJyZWFrOworICAgIGNhc2UgJ2YnOiBzaXplID0gc2l6ZW9mKGZsb2F0KTsgYnJlYWs7CisgICAgY2FzZSAnZCc6IHNpemUgPSBzaXplb2YoZG91YmxlKTsgYnJlYWs7CisgICAgI2lmZGVmIEhBVkVfQzk5X0JPT0wKKyAgICBjYXNlICc/Jzogc2l6ZSA9IHNpemVvZihfQm9vbCk7IGJyZWFrOworICAgICNlbHNlCisgICAgY2FzZSAnPyc6IHNpemUgPSBzaXplb2YoY2hhcik7IGJyZWFrOworICAgICNlbmRpZgorICAgIGNhc2UgJ1AnOiBzaXplID0gc2l6ZW9mKHZvaWQgKik7IGJyZWFrOwogICAgIH0KIAotICAgIGluZGljZXMgPSAoUHlfc3NpemVfdCAqKVB5TWVtX01hbGxvYyhzaXplb2YoUHlfc3NpemVfdCkqdmlldy0+bmRpbSk7Ci0gICAgaWYgKGluZGljZXMgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIGZvciAoaz0wOyBrPHZpZXctPm5kaW07aysrKSB7Ci0gICAgICAgIGluZGljZXNba10gPSAwOworICAgIGlmIChzaXplID4gMCAmJiBmbXRbMV0gPT0gJ1wwJykgeworICAgICAgICAqcmVzdWx0ID0gZm10WzBdOworICAgICAgICByZXR1cm4gc2l6ZTsKICAgICB9CiAKLSAgICBlbGVtZW50cyA9IDE7Ci0gICAgZm9yIChrPTA7IGs8dmlldy0+bmRpbTsgaysrKSB7Ci0gICAgICAgIGVsZW1lbnRzICo9IHZpZXctPnNoYXBlW2tdOworICAgIHJldHVybiAtMTsKK30KKworLyogQ2FzdCBhIG1lbW9yeXZpZXcncyBkYXRhIHR5cGUgdG8gJ2Zvcm1hdCcuIFRoZSBpbnB1dCBhcnJheSBtdXN0IGJlCisgICBDLWNvbnRpZ3VvdXMuIEF0IGxlYXN0IG9uZSBvZiBpbnB1dC1mb3JtYXQsIG91dHB1dC1mb3JtYXQgbXVzdCBoYXZlCisgICBieXRlIHNpemUuIFRoZSBvdXRwdXQgYXJyYXkgaXMgMS1ELCB3aXRoIHRoZSBzYW1lIGJ5dGUgbGVuZ3RoIGFzIHRoZQorICAgaW5wdXQgYXJyYXkuIFRodXMsIHZpZXctPmxlbiBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgdGhlIG5ldyBpdGVtc2l6ZS4gKi8KK3N0YXRpYyBpbnQKK2Nhc3RfdG9fMUQoUHlNZW1vcnlWaWV3T2JqZWN0ICptdiwgUHlPYmplY3QgKmZvcm1hdCkKK3sKKyAgICBQeV9idWZmZXIgKnZpZXcgPSAmbXYtPnZpZXc7CisgICAgUHlPYmplY3QgKmFzY2lpZm10OworICAgIGNoYXIgc3JjY2hhciwgZGVzdGNoYXI7CisgICAgUHlfc3NpemVfdCBpdGVtc2l6ZTsKKyAgICBpbnQgcmV0ID0gLTE7CisKKyAgICBhc3NlcnQodmlldy0+bmRpbSA+PSAxKTsKKyAgICBhc3NlcnQoUHlfU0laRShtdikgPT0gMyp2aWV3LT5uZGltKTsKKyAgICBhc3NlcnQodmlldy0+c2hhcGUgPT0gbXYtPm9iX2FycmF5KTsKKyAgICBhc3NlcnQodmlldy0+c3RyaWRlcyA9PSBtdi0+b2JfYXJyYXkgKyB2aWV3LT5uZGltKTsKKyAgICBhc3NlcnQodmlldy0+c3Vib2Zmc2V0cyA9PSBtdi0+b2JfYXJyYXkgKyAyKnZpZXctPm5kaW0pOworCisgICAgaWYgKGdldF9uYXRpdmVfZm10Y2hhcigmc3JjY2hhciwgdmlldy0+Zm9ybWF0KSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAibWVtb3J5dmlldzogc291cmNlIGZvcm1hdCBtdXN0IGJlIGEgbmF0aXZlIHNpbmdsZSBjaGFyYWN0ZXIgIgorICAgICAgICAgICAgImZvcm1hdCBwcmVmaXhlZCB3aXRoIGFuIG9wdGlvbmFsICdAJyIpOworICAgICAgICByZXR1cm4gcmV0OwogICAgIH0KLSAgICBpZiAoZm9ydCA9PSAnRicpIHsKLSAgICAgICAgZnVuYyA9IF9QeV9hZGRfb25lX3RvX2luZGV4X0Y7CisKKyAgICBhc2NpaWZtdCA9IFB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKGZvcm1hdCk7CisgICAgaWYgKGFzY2lpZm10ID09IE5VTEwpCisgICAgICAgIHJldHVybiByZXQ7CisKKyAgICBpdGVtc2l6ZSA9IGdldF9uYXRpdmVfZm10Y2hhcigmZGVzdGNoYXIsIFB5Qnl0ZXNfQVNfU1RSSU5HKGFzY2lpZm10KSk7CisgICAgaWYgKGl0ZW1zaXplIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICJtZW1vcnl2aWV3OiBkZXN0aW5hdGlvbiBmb3JtYXQgbXVzdCBiZSBhIG5hdGl2ZSBzaW5nbGUgIgorICAgICAgICAgICAgImNoYXJhY3RlciBmb3JtYXQgcHJlZml4ZWQgd2l0aCBhbiBvcHRpb25hbCAnQCciKTsKKyAgICAgICAgZ290byBvdXQ7CisgICAgfQorCisgICAgaWYgKCFJU19CWVRFX0ZPUk1BVChzcmNjaGFyKSAmJiAhSVNfQllURV9GT1JNQVQoZGVzdGNoYXIpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAibWVtb3J5dmlldzogY2Fubm90IGNhc3QgYmV0d2VlbiB0d28gbm9uLWJ5dGUgZm9ybWF0cyIpOworICAgICAgICBnb3RvIG91dDsKKyAgICB9CisgICAgaWYgKHZpZXctPmxlbiAlIGl0ZW1zaXplKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAibWVtb3J5dmlldzogbGVuZ3RoIGlzIG5vdCBhIG11bHRpcGxlIG9mIGl0ZW1zaXplIik7CisgICAgICAgIGdvdG8gb3V0OworICAgIH0KKworICAgIHN0cm5jcHkobXYtPmZvcm1hdCwgUHlCeXRlc19BU19TVFJJTkcoYXNjaWlmbXQpLAorICAgICAgICAgICAgX1B5X01FTU9SWVZJRVdfTUFYX0ZPUk1BVCk7CisgICAgbXYtPmZvcm1hdFtfUHlfTUVNT1JZVklFV19NQVhfRk9STUFULTFdID0gJ1wwJzsKKyAgICB2aWV3LT5mb3JtYXQgPSBtdi0+Zm9ybWF0OworICAgIHZpZXctPml0ZW1zaXplID0gaXRlbXNpemU7CisKKyAgICB2aWV3LT5uZGltID0gMTsKKyAgICB2aWV3LT5zaGFwZVswXSA9IHZpZXctPmxlbiAvIHZpZXctPml0ZW1zaXplOworICAgIHZpZXctPnN0cmlkZXNbMF0gPSB2aWV3LT5pdGVtc2l6ZTsKKyAgICB2aWV3LT5zdWJvZmZzZXRzID0gTlVMTDsKKworICAgIGluaXRfZmxhZ3MobXYpOworIAorICAgIHJldCA9IDA7CisKK291dDoKKyAgICBQeV9ERUNSRUYoYXNjaWlmbXQpOworICAgIHJldHVybiByZXQ7Cit9CisKKy8qIFRoZSBtZW1vcnl2aWV3IG11c3QgaGF2ZSBzcGFjZSBmb3IgMypsZW4oc2VxKSBlbGVtZW50cy4gKi8KK3N0YXRpYyBQeV9zc2l6ZV90Citjb3B5X3NoYXBlKFB5X3NzaXplX3QgKnNoYXBlLCBjb25zdCBQeU9iamVjdCAqc2VxLCBQeV9zc2l6ZV90IG5kaW0sCisgICAgICAgICAgIFB5X3NzaXplX3QgaXRlbXNpemUpCit7CisgICAgUHlfc3NpemVfdCB4LCBpOworICAgIFB5X3NzaXplX3QgbGVuID0gaXRlbXNpemU7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgbmRpbTsgaSsrKSB7CisgICAgICAgIFB5T2JqZWN0ICp0bXAgPSBQeVNlcXVlbmNlX0Zhc3RfR0VUX0lURU0oc2VxLCBpKTsKKyAgICAgICAgaWYgKCFQeUxvbmdfQ2hlY2sodG1wKSkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAibWVtb3J5dmlldy5jYXN0KCk6IGVsZW1lbnRzIG9mIHNoYXBlIG11c3QgYmUgaW50ZWdlcnMiKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICB4ID0gUHlMb25nX0FzU3NpemVfdCh0bXApOworICAgICAgICBpZiAoeCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKSB7CisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHggPD0gMCkgeworICAgICAgICAgICAgLyogSW4gZ2VuZXJhbCBlbGVtZW50cyBvZiBzaGFwZSBtYXkgYmUgMCwgYnV0IG5vdCBmb3IgY2FzdGluZy4gKi8KKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICJtZW1vcnl2aWV3LmNhc3QoKTogZWxlbWVudHMgb2Ygc2hhcGUgbXVzdCBiZSBpbnRlZ2VycyA+IDAiKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBpZiAoeCA+IFBZX1NTSVpFX1RfTUFYIC8gbGVuKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAibWVtb3J5dmlldy5jYXN0KCk6IHByb2R1Y3Qoc2hhcGUpID4gU1NJWkVfTUFYIik7CisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgbGVuICo9IHg7CisgICAgICAgIHNoYXBlW2ldID0geDsKKyAgICB9CisKKyAgICByZXR1cm4gbGVuOworfQorCisvKiBDYXN0IGEgMS1EIGFycmF5IHRvIGEgbmV3IHNoYXBlLiBUaGUgcmVzdWx0IGFycmF5IHdpbGwgYmUgQy1jb250aWd1b3VzLgorICAgSWYgdGhlIHJlc3VsdCBhcnJheSBkb2VzIG5vdCBoYXZlIGV4YWN0bHkgdGhlIHNhbWUgYnl0ZSBsZW5ndGggYXMgdGhlCisgICBpbnB1dCBhcnJheSwgcmFpc2UgVmFsdWVFcnJvci4gKi8KK3N0YXRpYyBpbnQKK2Nhc3RfdG9fTkQoUHlNZW1vcnlWaWV3T2JqZWN0ICptdiwgY29uc3QgUHlPYmplY3QgKnNoYXBlLCBpbnQgbmRpbSkKK3sKKyAgICBQeV9idWZmZXIgKnZpZXcgPSAmbXYtPnZpZXc7CisgICAgUHlfc3NpemVfdCBsZW47CisKKyAgICBhc3NlcnQodmlldy0+bmRpbSA9PSAxKTsgLyogbmRpbSBmcm9tIGNhc3RfdG9fMUQoKSAqLworICAgIGFzc2VydChQeV9TSVpFKG12KSA9PSAzKihuZGltPT0wPzE6bmRpbSkpOyAvKiBuZGltIG9mIHJlc3VsdCBhcnJheSAqLworICAgIGFzc2VydCh2aWV3LT5zaGFwZSA9PSBtdi0+b2JfYXJyYXkpOworICAgIGFzc2VydCh2aWV3LT5zdHJpZGVzID09IG12LT5vYl9hcnJheSArIChuZGltPT0wPzE6bmRpbSkpOworICAgIGFzc2VydCh2aWV3LT5zdWJvZmZzZXRzID09IE5VTEwpOworCisgICAgdmlldy0+bmRpbSA9IG5kaW07CisgICAgaWYgKHZpZXctPm5kaW0gPT0gMCkgeworICAgICAgICB2aWV3LT5zaGFwZSA9IE5VTEw7CisgICAgICAgIHZpZXctPnN0cmlkZXMgPSBOVUxMOworICAgICAgICBsZW4gPSB2aWV3LT5pdGVtc2l6ZTsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIGZ1bmMgPSBfUHlfYWRkX29uZV90b19pbmRleF9DOwotICAgIH0KLSAgICB3aGlsZSAoZWxlbWVudHMtLSkgewotICAgICAgICBmdW5jKHZpZXctPm5kaW0sIGluZGljZXMsIHZpZXctPnNoYXBlKTsKLSAgICAgICAgcHRyID0gUHlCdWZmZXJfR2V0UG9pbnRlcih2aWV3LCBpbmRpY2VzKTsKLSAgICAgICAgbWVtY3B5KGRlc3QsIHB0ciwgdmlldy0+aXRlbXNpemUpOwotICAgICAgICBkZXN0ICs9IHZpZXctPml0ZW1zaXplOworICAgICAgICBsZW4gPSBjb3B5X3NoYXBlKHZpZXctPnNoYXBlLCBzaGFwZSwgbmRpbSwgdmlldy0+aXRlbXNpemUpOworICAgICAgICBpZiAobGVuIDwgMCkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgaW5pdF9zdHJpZGVzX2Zyb21fc2hhcGUodmlldyk7CiAgICAgfQogCi0gICAgUHlNZW1fRnJlZShpbmRpY2VzKTsKKyAgICBpZiAodmlldy0+bGVuICE9IGxlbikgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgIm1lbW9yeXZpZXc6IHByb2R1Y3Qoc2hhcGUpICogaXRlbXNpemUgIT0gYnVmZmVyIHNpemUiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGluaXRfZmxhZ3MobXYpOworCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQKK3plcm9faW5fc2hhcGUoUHlNZW1vcnlWaWV3T2JqZWN0ICptdikKK3sKKyAgICBQeV9idWZmZXIgKnZpZXcgPSAmbXYtPnZpZXc7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgZm9yIChpID0gMDsgaSA8IHZpZXctPm5kaW07IGkrKykKKyAgICAgICAgaWYgKHZpZXctPnNoYXBlW2ldID09IDApCisgICAgICAgICAgICByZXR1cm4gMTsKKwogICAgIHJldHVybiAwOwogfQogCiAvKgotICAgR2V0IGEgdGhlIGRhdGEgZnJvbSBhbiBvYmplY3QgYXMgYSBjb250aWd1b3VzIGNodW5rIG9mIG1lbW9yeSAoaW4KLSAgIGVpdGhlciAnQycgb3IgJ0Ynb3J0cmFuIG9yZGVyKSBldmVuIGlmIGl0IG1lYW5zIGNvcHlpbmcgaXQgaW50byBhCi0gICBzZXBhcmF0ZSBtZW1vcnkgYXJlYS4KKyAgIENhc3QgYSBjb3B5IG9mICdzZWxmJyB0byBhIGRpZmZlcmVudCB2aWV3LiBUaGUgaW5wdXQgdmlldyBtdXN0CisgICBiZSBDLWNvbnRpZ3VvdXMuIFRoZSBmdW5jdGlvbiBhbHdheXMgY2FzdHMgdGhlIGlucHV0IHZpZXcgdG8gYQorICAgMS1EIG91dHB1dCBhY2NvcmRpbmcgdG8gJ2Zvcm1hdCcuIEF0IGxlYXN0IG9uZSBvZiBpbnB1dC1mb3JtYXQsCisgICBvdXRwdXQtZm9ybWF0IG11c3QgaGF2ZSBieXRlIHNpemUuCiAKLSAgIFJldHVybnMgYSBuZXcgcmVmZXJlbmNlIHRvIGEgTWVtb3J5IHZpZXcgb2JqZWN0LiAgSWYgbm8gY29weSBpcyBuZWVkZWQsCi0gICB0aGUgbWVtb3J5IHZpZXcgb2JqZWN0IHBvaW50cyB0byB0aGUgb3JpZ2luYWwgbWVtb3J5IGFuZCBob2xkcyBhCi0gICBsb2NrIG9uIHRoZSBvcmlnaW5hbC4gIElmIGEgY29weSBpcyBuZWVkZWQsIHRoZW4gdGhlIG1lbW9yeSB2aWV3IG9iamVjdAotICAgcG9pbnRzIHRvIGEgYnJhbmQtbmV3IEJ5dGVzIG9iamVjdCAoYW5kIGhvbGRzIGEgbWVtb3J5IGxvY2sgb24gaXQpLgorICAgSWYgJ3NoYXBlJyBpcyBnaXZlbiwgdGhlIDEtRCB2aWV3IGZyb20gdGhlIHByZXZpb3VzIHN0ZXAgd2lsbAorICAgYmUgY2FzdCB0byBhIEMtY29udGlndW91cyB2aWV3IHdpdGggbmV3IHNoYXBlIGFuZCBzdHJpZGVzLgogCi0gICBidWZmZXJ0eXBlCi0KLSAgIFB5QlVGX1JFQUQgIGJ1ZmZlciBvbmx5IG5lZWRzIHRvIGJlIHJlYWQtb25seQotICAgUHlCVUZfV1JJVEUgYnVmZmVyIG5lZWRzIHRvIGJlIHdyaXRhYmxlIChnaXZlIGVycm9yIGlmIG5vdCBjb250aWd1b3VzKQotICAgUHlCVUZfU0hBRE9XIGJ1ZmZlciBuZWVkcyB0byBiZSB3cml0YWJsZSBzbyBzaGFkb3cgaXQgd2l0aAotICAgICAgICAgICAgICAgIGEgY29udGlndW91cyBidWZmZXIgaWYgaXQgaXMgbm90LiBUaGUgdmlldyB3aWxsIHBvaW50IHRvCi0gICAgICAgICAgICAgICAgdGhlIHNoYWRvdyBidWZmZXIgd2hpY2ggY2FuIGJlIHdyaXR0ZW4gdG8gYW5kIHRoZW4KLSAgICAgICAgICAgICAgICB3aWxsIGJlIGNvcGllZCBiYWNrIGludG8gdGhlIG90aGVyIGJ1ZmZlciB3aGVuIHRoZSBtZW1vcnkKLSAgICAgICAgICAgICAgICB2aWV3IGlzIGRlLWFsbG9jYXRlZC4gIFdoaWxlIHRoZSBzaGFkb3cgYnVmZmVyIGlzCi0gICAgICAgICAgICAgICAgYmVpbmcgdXNlZCwgaXQgd2lsbCBoYXZlIGFuIGV4Y2x1c2l2ZSB3cml0ZSBsb2NrIG9uCi0gICAgICAgICAgICAgICAgdGhlIG9yaWdpbmFsIGJ1ZmZlci4KLSAqLwotCi1QeU9iamVjdCAqCi1QeU1lbW9yeVZpZXdfR2V0Q29udGlndW91cyhQeU9iamVjdCAqb2JqLCBpbnQgYnVmZmVydHlwZSwgY2hhciBmb3J0KQorICAgQWxsIGNhc3RzIG11c3QgcmVzdWx0IGluIHZpZXdzIHRoYXQgd2lsbCBoYXZlIHRoZSBleGFjdCBieXRlCisgICBzaXplIG9mIHRoZSBvcmlnaW5hbCBpbnB1dC4gT3RoZXJ3aXNlLCBhbiBlcnJvciBpcyByYWlzZWQuCisqLworc3RhdGljIFB5T2JqZWN0ICoKK21lbW9yeV9jYXN0KFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewotICAgIFB5TWVtb3J5Vmlld09iamVjdCAqbWVtOwotICAgIFB5T2JqZWN0ICpieXRlczsKLSAgICBQeV9idWZmZXIgKnZpZXc7Ci0gICAgaW50IGZsYWdzOwotICAgIGNoYXIgKmRlc3Q7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJmb3JtYXQiLCAic2hhcGUiLCBOVUxMfTsKKyAgICBQeU1lbW9yeVZpZXdPYmplY3QgKm12ID0gTlVMTDsKKyAgICBQeU9iamVjdCAqc2hhcGUgPSBOVUxMOworICAgIFB5T2JqZWN0ICpmb3JtYXQ7CisgICAgUHlfc3NpemVfdCBuZGltID0gMTsKIAotICAgIGlmICghUHlPYmplY3RfQ2hlY2tCdWZmZXIob2JqKSkgeworICAgIENIRUNLX1JFTEVBU0VEKHNlbGYpOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIk98TyIsIGt3bGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0LCAmc2hhcGUpKSB7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhmb3JtYXQpKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAib2JqZWN0IGRvZXMgbm90IHN1cHBvcnQgdGhlIGJ1ZmZlciBpbnRlcmZhY2UiKTsKKyAgICAgICAgICAgICJtZW1vcnl2aWV3OiBmb3JtYXQgYXJndW1lbnQgbXVzdCBiZSBhIHN0cmluZyIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0KLSAgICBtZW0gPSBQeU9iamVjdF9HQ19OZXcoUHlNZW1vcnlWaWV3T2JqZWN0LCAmUHlNZW1vcnlWaWV3X1R5cGUpOwotICAgIGlmIChtZW0gPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICB2aWV3ID0gJm1lbS0+dmlldzsKLSAgICBmbGFncyA9IFB5QlVGX0ZVTExfUk87Ci0gICAgc3dpdGNoKGJ1ZmZlcnR5cGUpIHsKLSAgICBjYXNlIFB5QlVGX1dSSVRFOgotICAgICAgICBmbGFncyA9IFB5QlVGX0ZVTEw7Ci0gICAgICAgIGJyZWFrOwotICAgIH0KLQotICAgIGlmIChQeU9iamVjdF9HZXRCdWZmZXIob2JqLCB2aWV3LCBmbGFncykgIT0gMCkgewotICAgICAgICBQeV9ERUNSRUYobWVtKTsKKyAgICBpZiAoIU1WX0NfQ09OVElHVU9VUyhzZWxmLT5mbGFncykpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJtZW1vcnl2aWV3OiBjYXN0cyBhcmUgcmVzdHJpY3RlZCB0byBDLWNvbnRpZ3VvdXMgdmlld3MiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotCi0gICAgaWYgKFB5QnVmZmVyX0lzQ29udGlndW91cyh2aWV3LCBmb3J0KSkgewotICAgICAgICAvKiBubyBjb3B5IG5lZWRlZCAqLwotICAgICAgICBfUHlPYmplY3RfR0NfVFJBQ0sobWVtKTsKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKW1lbTsKLSAgICB9Ci0gICAgLyogb3RoZXJ3aXNlIGEgY29weSBpcyBuZWVkZWQgKi8KLSAgICBpZiAoYnVmZmVydHlwZSA9PSBQeUJVRl9XUklURSkgewotICAgICAgICBQeV9ERUNSRUYobWVtKTsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0J1ZmZlckVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIndyaXRhYmxlIGNvbnRpZ3VvdXMgYnVmZmVyIHJlcXVlc3RlZCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAiZm9yIGEgbm9uLWNvbnRpZ3VvdXNvYmplY3QuIik7CisgICAgaWYgKHplcm9faW5fc2hhcGUoc2VsZikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJtZW1vcnl2aWV3OiBjYW5ub3QgY2FzdCB2aWV3IHdpdGggemVyb3MgaW4gc2hhcGUgb3Igc3RyaWRlcyIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgYnl0ZXMgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIHZpZXctPmxlbik7Ci0gICAgaWYgKGJ5dGVzID09IE5VTEwpIHsKLSAgICAgICAgUHlfREVDUkVGKG1lbSk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBkZXN0ID0gUHlCeXRlc19BU19TVFJJTkcoYnl0ZXMpOwotICAgIC8qIGRpZmZlcmVudCBjb3B5aW5nIHN0cmF0ZWd5IGRlcGVuZGluZyBvbiB3aGV0aGVyCi0gICAgICAgb3Igbm90IGFueSBwb2ludGVyIGRlLXJlZmVyZW5jaW5nIGlzIG5lZWRlZAotICAgICovCi0gICAgLyogc3RyaWRlZCBvciBpbi1kaXJlY3QgY29weSAqLwotICAgIGlmICh2aWV3LT5zdWJvZmZzZXRzPT1OVUxMKSB7Ci0gICAgICAgIF9zdHJpZGVkX2NvcHlfbmQoZGVzdCwgdmlldy0+YnVmLCB2aWV3LT5uZGltLCB2aWV3LT5zaGFwZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3LT5zdHJpZGVzLCB2aWV3LT5pdGVtc2l6ZSwgZm9ydCk7Ci0gICAgfQotICAgIGVsc2UgewotICAgICAgICBpZiAoX2luZGlyZWN0X2NvcHlfbmQoZGVzdCwgdmlldywgZm9ydCkgPCAwKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYoYnl0ZXMpOwotICAgICAgICAgICAgUHlfREVDUkVGKG1lbSk7CisgICAgaWYgKHNoYXBlKSB7CisgICAgICAgIENIRUNLX0xJU1RfT1JfVFVQTEUoc2hhcGUpCisgICAgICAgIG5kaW0gPSBQeVNlcXVlbmNlX0Zhc3RfR0VUX1NJWkUoc2hhcGUpOworICAgICAgICBpZiAobmRpbSA+IFB5QlVGX01BWF9ORElNKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAibWVtb3J5dmlldzogbnVtYmVyIG9mIGRpbWVuc2lvbnMgbXVzdCBub3QgZXhjZWVkICIKKyAgICAgICAgICAgICAgICBTVFJJTkdJWkUoUHlCVUZfTUFYX05ESU0pKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIFB5QnVmZmVyX1JlbGVhc2Uodmlldyk7ICAvKiBYWFggPyAqLworICAgICAgICBpZiAoc2VsZi0+dmlldy5uZGltICE9IDEgJiYgbmRpbSAhPSAxKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICJtZW1vcnl2aWV3OiBjYXN0IG11c3QgYmUgMUQgLT4gTkQgb3IgTkQgLT4gMUQiKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CiAgICAgfQotICAgIF9QeU9iamVjdF9HQ19UUkFDSyhtZW0pOwotICAgIHJldHVybiAoUHlPYmplY3QgKiltZW07CisKKyAgICBtdiA9IChQeU1lbW9yeVZpZXdPYmplY3QgKikKKyAgICAgICAgbWJ1Zl9hZGRfaW5jb21wbGV0ZV92aWV3KHNlbGYtPm1idWYsICZzZWxmLT52aWV3LCBuZGltPT0wID8gMSA6IChpbnQpbmRpbSk7CisgICAgaWYgKG12ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKGNhc3RfdG9fMUQobXYsIGZvcm1hdCkgPCAwKQorICAgICAgICBnb3RvIGVycm9yOworICAgIGlmIChzaGFwZSAmJiBjYXN0X3RvX05EKG12LCBzaGFwZSwgKGludCluZGltKSA8IDApCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopbXY7CisKK2Vycm9yOgorICAgIFB5X0RFQ1JFRihtdik7CisgICAgcmV0dXJuIE5VTEw7CiB9CiAKIAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0YnVmZmVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitzdGF0aWMgaW50CittZW1vcnlfZ2V0YnVmKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZiwgUHlfYnVmZmVyICp2aWV3LCBpbnQgZmxhZ3MpCit7CisgICAgUHlfYnVmZmVyICpiYXNlID0gJnNlbGYtPnZpZXc7CisgICAgaW50IGJhc2VmbGFncyA9IHNlbGYtPmZsYWdzOworCisgICAgQ0hFQ0tfUkVMRUFTRURfSU5UKHNlbGYpOworCisgICAgLyogc3RhcnQgd2l0aCBjb21wbGV0ZSBpbmZvcm1hdGlvbiAqLworICAgICp2aWV3ID0gKmJhc2U7CisgICAgdmlldy0+b2JqID0gTlVMTDsKKworICAgIGlmIChSRVFfV1JJVEFCTEUoZmxhZ3MpICYmIGJhc2UtPnJlYWRvbmx5KSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICJtZW1vcnl2aWV3OiB1bmRlcmx5aW5nIGJ1ZmZlciBpcyBub3Qgd3JpdGFibGUiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAoIVJFUV9GT1JNQVQoZmxhZ3MpKSB7CisgICAgICAgIC8qIE5VTEwgaW5kaWNhdGVzIHRoYXQgdGhlIGJ1ZmZlcidzIGRhdGEgdHlwZSBoYXMgYmVlbiBjYXN0IHRvICdCJy4KKyAgICAgICAgICAgdmlldy0+aXRlbXNpemUgaXMgdGhlIF9wcmV2aW91c18gaXRlbXNpemUuIElmIHNoYXBlIGlzIHByZXNlbnQsCisgICAgICAgICAgIHRoZSBlcXVhbGl0eSBwcm9kdWN0KHNoYXBlKSAqIGl0ZW1zaXplID0gbGVuIHN0aWxsIGhvbGRzIGF0IHRoaXMKKyAgICAgICAgICAgcG9pbnQuIFRoZSBlcXVhbGl0eSBjYWxjc2l6ZShmb3JtYXQpID0gaXRlbXNpemUgZG9lcyBfbm90XyBob2xkCisgICAgICAgICAgIGZyb20gaGVyZSBvbiEgKi8KKyAgICAgICAgdmlldy0+Zm9ybWF0ID0gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoUkVRX0NfQ09OVElHVU9VUyhmbGFncykgJiYgIU1WX0NfQ09OVElHVU9VUyhiYXNlZmxhZ3MpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICJtZW1vcnl2aWV3OiB1bmRlcmx5aW5nIGJ1ZmZlciBpcyBub3QgQy1jb250aWd1b3VzIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgaWYgKFJFUV9GX0NPTlRJR1VPVVMoZmxhZ3MpICYmICFNVl9GX0NPTlRJR1VPVVMoYmFzZWZsYWdzKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAibWVtb3J5dmlldzogdW5kZXJseWluZyBidWZmZXIgaXMgbm90IEZvcnRyYW4gY29udGlndW91cyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmIChSRVFfQU5ZX0NPTlRJR1VPVVMoZmxhZ3MpICYmICFNVl9BTllfQ09OVElHVU9VUyhiYXNlZmxhZ3MpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICJtZW1vcnl2aWV3OiB1bmRlcmx5aW5nIGJ1ZmZlciBpcyBub3QgY29udGlndW91cyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICghUkVRX0lORElSRUNUKGZsYWdzKSAmJiAoYmFzZWZsYWdzICYgX1B5X01FTU9SWVZJRVdfUElMKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAibWVtb3J5dmlldzogdW5kZXJseWluZyBidWZmZXIgcmVxdWlyZXMgc3Vib2Zmc2V0cyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICghUkVRX1NUUklERVMoZmxhZ3MpKSB7CisgICAgICAgIGlmICghTVZfQ19DT05USUdVT1VTKGJhc2VmbGFncykpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19CdWZmZXJFcnJvciwKKyAgICAgICAgICAgICAgICAibWVtb3J5dmlldzogdW5kZXJseWluZyBidWZmZXIgaXMgbm90IEMtY29udGlndW91cyIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIHZpZXctPnN0cmlkZXMgPSBOVUxMOworICAgIH0KKyAgICBpZiAoIVJFUV9TSEFQRShmbGFncykpIHsKKyAgICAgICAgLyogUHlCVUZfU0lNUExFIG9yIFB5QlVGX1dSSVRBQkxFOiBhdCB0aGlzIHBvaW50IGJ1ZiBpcyBDLWNvbnRpZ3VvdXMsCisgICAgICAgICAgIHNvIGJhc2UtPmJ1ZiA9IG5kYnVmLT5kYXRhLiAqLworICAgICAgICBpZiAodmlldy0+Zm9ybWF0ICE9IE5VTEwpIHsKKyAgICAgICAgICAgIC8qIFB5QlVGX1NJTVBMRXxQeUJVRl9GT1JNQVQgYW5kIFB5QlVGX1dSSVRBQkxFfFB5QlVGX0ZPUk1BVCBkbworICAgICAgICAgICAgICAgbm90IG1ha2Ugc2Vuc2UuICovCisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfQnVmZmVyRXJyb3IsCisgICAgICAgICAgICAgICAgIm5kYXJyYXk6IGNhbm5vdCBjYXN0IHRvIHVuc2lnbmVkIGJ5dGVzIGlmIHRoZSBmb3JtYXQgZmxhZyAiCisgICAgICAgICAgICAgICAgImlzIHByZXNlbnQiKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICAvKiBwcm9kdWN0KHNoYXBlKSAqIGl0ZW1zaXplID0gbGVuIGFuZCBjYWxjc2l6ZShmb3JtYXQpID0gaXRlbXNpemUKKyAgICAgICAgICAgZG8gX25vdF8gaG9sZCBmcm9tIGhlcmUgb24hICovCisgICAgICAgIHZpZXctPm5kaW0gPSAxOworICAgICAgICB2aWV3LT5zaGFwZSA9IE5VTEw7CisgICAgfQorCisKKyAgICB2aWV3LT5vYmogPSAoUHlPYmplY3QgKilzZWxmOworICAgIFB5X0lOQ1JFRih2aWV3LT5vYmopOworICAgIHNlbGYtPmV4cG9ydHMrKzsKKworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgdm9pZAorbWVtb3J5X3JlbGVhc2VidWYoUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmLCBQeV9idWZmZXIgKnZpZXcpCit7CisgICAgc2VsZi0+ZXhwb3J0cy0tOworICAgIHJldHVybjsKKyAgICAvKiBQeUJ1ZmZlcl9SZWxlYXNlKCkgZGVjcmVtZW50cyB2aWV3LT5vYmogYWZ0ZXIgdGhpcyBmdW5jdGlvbiByZXR1cm5zLiAqLworfQorCisvKiBCdWZmZXIgbWV0aG9kcyAqLworc3RhdGljIFB5QnVmZmVyUHJvY3MgbWVtb3J5X2FzX2J1ZmZlciA9IHsKKyAgICAoZ2V0YnVmZmVycHJvYyltZW1vcnlfZ2V0YnVmLCAgICAgICAgIC8qIGJmX2dldGJ1ZmZlciAqLworICAgIChyZWxlYXNlYnVmZmVycHJvYyltZW1vcnlfcmVsZWFzZWJ1ZiwgLyogYmZfcmVsZWFzZWJ1ZmZlciAqLworfTsKKworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICBPcHRpbWl6ZWQgcGFjay91bnBhY2sgZm9yIGFsbCBuYXRpdmUgZm9ybWF0IHNwZWNpZmllcnMgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKy8qCisgIEZpeCBleGNlcHRpb25zOgorICAgICAxKSBJbmNsdWRlIGZvcm1hdCBzdHJpbmcgaW4gdGhlIGVycm9yIG1lc3NhZ2UuCisgICAgIDIpIE92ZXJmbG93RXJyb3IgLT4gVmFsdWVFcnJvci4KKyAgICAgMykgVGhlIGVycm9yIG1lc3NhZ2UgZnJvbSBQeU51bWJlcl9JbmRleCgpIGlzIG5vdCBpZGVhbC4KKyovCitzdGF0aWMgaW50Cit0eXBlX2Vycm9yX2ludChjb25zdCBjaGFyICpmbXQpCit7CisgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgIm1lbW9yeXZpZXc6IGludmFsaWQgdHlwZSBmb3IgZm9ybWF0ICclcyciLCBmbXQpOworICAgIHJldHVybiAtMTsKK30KKworc3RhdGljIGludAordmFsdWVfZXJyb3JfaW50KGNvbnN0IGNoYXIgKmZtdCkKK3sKKyAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgIm1lbW9yeXZpZXc6IGludmFsaWQgdmFsdWUgZm9yIGZvcm1hdCAnJXMnIiwgZm10KTsKKyAgICByZXR1cm4gLTE7Cit9CisKK3N0YXRpYyBpbnQKK2ZpeF9lcnJvcl9pbnQoY29uc3QgY2hhciAqZm10KQoreworICAgIGFzc2VydChQeUVycl9PY2N1cnJlZCgpKTsKKyAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19UeXBlRXJyb3IpKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIHJldHVybiB0eXBlX2Vycm9yX2ludChmbXQpOworICAgIH0KKyAgICBlbHNlIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX092ZXJmbG93RXJyb3IpIHx8CisgICAgICAgICAgICAgUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19WYWx1ZUVycm9yKSkgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICByZXR1cm4gdmFsdWVfZXJyb3JfaW50KGZtdCk7CisgICAgfQorCisgICAgcmV0dXJuIC0xOworfQorCisvKiBBY2NlcHQgaW50ZWdlciBvYmplY3RzIG9yIG9iamVjdHMgd2l0aCBhbiBfX2luZGV4X18oKSBtZXRob2QuICovCitzdGF0aWMgbG9uZworcHlsb25nX2FzX2xkKFB5T2JqZWN0ICppdGVtKQoreworICAgIFB5T2JqZWN0ICp0bXA7CisgICAgbG9uZyBsZDsKKworICAgIHRtcCA9IFB5TnVtYmVyX0luZGV4KGl0ZW0pOworICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgbGQgPSBQeUxvbmdfQXNMb25nKHRtcCk7CisgICAgUHlfREVDUkVGKHRtcCk7CisgICAgcmV0dXJuIGxkOworfQorCitzdGF0aWMgdW5zaWduZWQgbG9uZworcHlsb25nX2FzX2x1KFB5T2JqZWN0ICppdGVtKQoreworICAgIFB5T2JqZWN0ICp0bXA7CisgICAgdW5zaWduZWQgbG9uZyBsdTsKKworICAgIHRtcCA9IFB5TnVtYmVyX0luZGV4KGl0ZW0pOworICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuICh1bnNpZ25lZCBsb25nKS0xOworCisgICAgbHUgPSBQeUxvbmdfQXNVbnNpZ25lZExvbmcodG1wKTsKKyAgICBQeV9ERUNSRUYodG1wKTsKKyAgICByZXR1cm4gbHU7Cit9CisKKyNpZmRlZiBIQVZFX0xPTkdfTE9ORworc3RhdGljIFBZX0xPTkdfTE9ORworcHlsb25nX2FzX2xsZChQeU9iamVjdCAqaXRlbSkKK3sKKyAgICBQeU9iamVjdCAqdG1wOworICAgIFBZX0xPTkdfTE9ORyBsbGQ7CisKKyAgICB0bXAgPSBQeU51bWJlcl9JbmRleChpdGVtKTsKKyAgICBpZiAodG1wID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGxsZCA9IFB5TG9uZ19Bc0xvbmdMb25nKHRtcCk7CisgICAgUHlfREVDUkVGKHRtcCk7CisgICAgcmV0dXJuIGxsZDsKK30KKworc3RhdGljIHVuc2lnbmVkIFBZX0xPTkdfTE9ORworcHlsb25nX2FzX2xsdShQeU9iamVjdCAqaXRlbSkKK3sKKyAgICBQeU9iamVjdCAqdG1wOworICAgIHVuc2lnbmVkIFBZX0xPTkdfTE9ORyBsbHU7CisKKyAgICB0bXAgPSBQeU51bWJlcl9JbmRleChpdGVtKTsKKyAgICBpZiAodG1wID09IE5VTEwpCisgICAgICAgIHJldHVybiAodW5zaWduZWQgUFlfTE9OR19MT05HKS0xOworCisgICAgbGx1ID0gUHlMb25nX0FzVW5zaWduZWRMb25nTG9uZyh0bXApOworICAgIFB5X0RFQ1JFRih0bXApOworICAgIHJldHVybiBsbHU7Cit9CisjZW5kaWYKKworc3RhdGljIFB5X3NzaXplX3QKK3B5bG9uZ19hc196ZChQeU9iamVjdCAqaXRlbSkKK3sKKyAgICBQeU9iamVjdCAqdG1wOworICAgIFB5X3NzaXplX3QgemQ7CisKKyAgICB0bXAgPSBQeU51bWJlcl9JbmRleChpdGVtKTsKKyAgICBpZiAodG1wID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIHpkID0gUHlMb25nX0FzU3NpemVfdCh0bXApOworICAgIFB5X0RFQ1JFRih0bXApOworICAgIHJldHVybiB6ZDsKK30KKworc3RhdGljIHNpemVfdAorcHlsb25nX2FzX3p1KFB5T2JqZWN0ICppdGVtKQoreworICAgIFB5T2JqZWN0ICp0bXA7CisgICAgc2l6ZV90IHp1OworCisgICAgdG1wID0gUHlOdW1iZXJfSW5kZXgoaXRlbSk7CisgICAgaWYgKHRtcCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gKHNpemVfdCktMTsKKworICAgIHp1ID0gUHlMb25nX0FzU2l6ZV90KHRtcCk7CisgICAgUHlfREVDUkVGKHRtcCk7CisgICAgcmV0dXJuIHp1OworfQorCisvKiBUaW1pbmdzIHdpdGggdGhlIG5kYXJyYXkgZnJvbSBfdGVzdGJ1ZmZlci5jIGluZGljYXRlIHRoYXQgdXNpbmcgdGhlCisgICBzdHJ1Y3QgbW9kdWxlIGlzIGFyb3VuZCAxNXggc2xvd2VyIHRoYW4gdGhlIHR3byBmdW5jdGlvbnMgYmVsb3cuICovCisKKyNkZWZpbmUgVU5QQUNLX1NJTkdMRShkZXN0LCBwdHIsIHR5cGUpIFwKKyAgICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHR5cGUgeDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBtZW1jcHkoKGNoYXIgKikmeCwgcHRyLCBzaXplb2YgeCk7IFwKKyAgICAgICAgZGVzdCA9IHg7ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfSB3aGlsZSAoMCkKKworLyogVW5wYWNrIGEgc2luZ2xlIGl0ZW0uICdmbXQnIGNhbiBiZSBhbnkgbmF0aXZlIGZvcm1hdCBjaGFyYWN0ZXIgaW4gc3RydWN0CisgICBtb2R1bGUgc3ludGF4LiBUaGlzIGZ1bmN0aW9uIGlzIHZlcnkgc2Vuc2l0aXZlIHRvIHNtYWxsIGNoYW5nZXMuIFdpdGggdGhpcworICAgbGF5b3V0IGdjYyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlcyBhIGZhc3QganVtcCB0YWJsZS4gKi8KK1B5X0xPQ0FMX0lOTElORShQeU9iamVjdCAqKQordW5wYWNrX3NpbmdsZShjb25zdCBjaGFyICpwdHIsIGNvbnN0IGNoYXIgKmZtdCkKK3sKKyAgICB1bnNpZ25lZCBQWV9MT05HX0xPTkcgbGx1OworICAgIHVuc2lnbmVkIGxvbmcgbHU7CisgICAgc2l6ZV90IHp1OworICAgIFBZX0xPTkdfTE9ORyBsbGQ7CisgICAgbG9uZyBsZDsKKyAgICBQeV9zc2l6ZV90IHpkOworICAgIGRvdWJsZSBkOworICAgIHVuc2lnbmVkIGNoYXIgdWM7CisgICAgdm9pZCAqcDsKKworICAgIHN3aXRjaCAoZm10WzBdKSB7CisKKyAgICAvKiBzaWduZWQgaW50ZWdlcnMgYW5kIGZhc3QgcGF0aCBmb3IgJ0InICovCisgICAgY2FzZSAnQic6IHVjID0gKigodW5zaWduZWQgY2hhciAqKXB0cik7IGdvdG8gY29udmVydF91YzsKKyAgICBjYXNlICdiJzogbGQgPSAgICooKHNpZ25lZCBjaGFyICopcHRyKTsgZ290byBjb252ZXJ0X2xkOworICAgIGNhc2UgJ2gnOiBVTlBBQ0tfU0lOR0xFKGxkLCBwdHIsIHNob3J0KTsgZ290byBjb252ZXJ0X2xkOworICAgIGNhc2UgJ2knOiBVTlBBQ0tfU0lOR0xFKGxkLCBwdHIsIGludCk7IGdvdG8gY29udmVydF9sZDsKKyAgICBjYXNlICdsJzogVU5QQUNLX1NJTkdMRShsZCwgcHRyLCBsb25nKTsgZ290byBjb252ZXJ0X2xkOworCisgICAgLyogYm9vbGVhbiAqLworICAgICNpZmRlZiBIQVZFX0M5OV9CT09MCisgICAgY2FzZSAnPyc6IFVOUEFDS19TSU5HTEUobGQsIHB0ciwgX0Jvb2wpOyBnb3RvIGNvbnZlcnRfYm9vbDsKKyAgICAjZWxzZQorICAgIGNhc2UgJz8nOiBVTlBBQ0tfU0lOR0xFKGxkLCBwdHIsIGNoYXIpOyBnb3RvIGNvbnZlcnRfYm9vbDsKKyAgICAjZW5kaWYKKworICAgIC8qIHVuc2lnbmVkIGludGVnZXJzICovCisgICAgY2FzZSAnSCc6IFVOUEFDS19TSU5HTEUobHUsIHB0ciwgdW5zaWduZWQgc2hvcnQpOyBnb3RvIGNvbnZlcnRfbHU7CisgICAgY2FzZSAnSSc6IFVOUEFDS19TSU5HTEUobHUsIHB0ciwgdW5zaWduZWQgaW50KTsgZ290byBjb252ZXJ0X2x1OworICAgIGNhc2UgJ0wnOiBVTlBBQ0tfU0lOR0xFKGx1LCBwdHIsIHVuc2lnbmVkIGxvbmcpOyBnb3RvIGNvbnZlcnRfbHU7CisKKyAgICAvKiBuYXRpdmUgNjQtYml0ICovCisgICAgI2lmZGVmIEhBVkVfTE9OR19MT05HCisgICAgY2FzZSAncSc6IFVOUEFDS19TSU5HTEUobGxkLCBwdHIsIFBZX0xPTkdfTE9ORyk7IGdvdG8gY29udmVydF9sbGQ7CisgICAgY2FzZSAnUSc6IFVOUEFDS19TSU5HTEUobGx1LCBwdHIsIHVuc2lnbmVkIFBZX0xPTkdfTE9ORyk7IGdvdG8gY29udmVydF9sbHU7CisgICAgI2VuZGlmCisKKyAgICAvKiBzc2l6ZV90IGFuZCBzaXplX3QgKi8KKyAgICBjYXNlICduJzogVU5QQUNLX1NJTkdMRSh6ZCwgcHRyLCBQeV9zc2l6ZV90KTsgZ290byBjb252ZXJ0X3pkOworICAgIGNhc2UgJ04nOiBVTlBBQ0tfU0lOR0xFKHp1LCBwdHIsIHNpemVfdCk7IGdvdG8gY29udmVydF96dTsKKworICAgIC8qIGZsb2F0cyAqLworICAgIGNhc2UgJ2YnOiBVTlBBQ0tfU0lOR0xFKGQsIHB0ciwgZmxvYXQpOyBnb3RvIGNvbnZlcnRfZG91YmxlOworICAgIGNhc2UgJ2QnOiBVTlBBQ0tfU0lOR0xFKGQsIHB0ciwgZG91YmxlKTsgZ290byBjb252ZXJ0X2RvdWJsZTsKKworICAgIC8qIGJ5dGVzIG9iamVjdCAqLworICAgIGNhc2UgJ2MnOiBnb3RvIGNvbnZlcnRfYnl0ZXM7CisKKyAgICAvKiBwb2ludGVyICovCisgICAgY2FzZSAnUCc6IFVOUEFDS19TSU5HTEUocCwgcHRyLCB2b2lkICopOyBnb3RvIGNvbnZlcnRfcG9pbnRlcjsKKworICAgIC8qIGRlZmF1bHQgKi8KKyAgICBkZWZhdWx0OiBnb3RvIGVycl9mb3JtYXQ7CisgICAgfQorCitjb252ZXJ0X3VjOgorICAgIC8qIFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nKCkgaXMgc2xvd2VyICovCisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyh1Yyk7Citjb252ZXJ0X2xkOgorICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcobGQpOworY29udmVydF9sdToKKyAgICByZXR1cm4gUHlMb25nX0Zyb21VbnNpZ25lZExvbmcobHUpOworY29udmVydF9sbGQ6CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZ0xvbmcobGxkKTsKK2NvbnZlcnRfbGx1OgorICAgIHJldHVybiBQeUxvbmdfRnJvbVVuc2lnbmVkTG9uZ0xvbmcobGx1KTsKK2NvbnZlcnRfemQ6CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdCh6ZCk7Citjb252ZXJ0X3p1OgorICAgIHJldHVybiBQeUxvbmdfRnJvbVNpemVfdCh6dSk7Citjb252ZXJ0X2RvdWJsZToKKyAgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKGQpOworY29udmVydF9ib29sOgorICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcobGQpOworY29udmVydF9ieXRlczoKKyAgICByZXR1cm4gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShwdHIsIDEpOworY29udmVydF9wb2ludGVyOgorICAgIHJldHVybiBQeUxvbmdfRnJvbVZvaWRQdHIocCk7CitlcnJfZm9ybWF0OgorICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yLAorICAgICAgICAibWVtb3J5dmlldzogZm9ybWF0ICVzIG5vdCBzdXBwb3J0ZWQiLCBmbXQpOworICAgIHJldHVybiBOVUxMOworfQorCisjZGVmaW5lIFBBQ0tfU0lOR0xFKHB0ciwgc3JjLCB0eXBlKSBcCisgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHR5cGUgeDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHggPSAodHlwZSlzcmM7ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIG1lbWNweShwdHIsIChjaGFyICopJngsIHNpemVvZiB4KTsgICBcCisgICAgfSB3aGlsZSAoMCkKKworLyogUGFjayBhIHNpbmdsZSBpdGVtLiAnZm10JyBjYW4gYmUgYW55IG5hdGl2ZSBmb3JtYXQgY2hhcmFjdGVyIGluCisgICBzdHJ1Y3QgbW9kdWxlIHN5bnRheC4gKi8KK3N0YXRpYyBpbnQKK3BhY2tfc2luZ2xlKGNoYXIgKnB0ciwgUHlPYmplY3QgKml0ZW0sIGNvbnN0IGNoYXIgKmZtdCkKK3sKKyAgICB1bnNpZ25lZCBQWV9MT05HX0xPTkcgbGx1OworICAgIHVuc2lnbmVkIGxvbmcgbHU7CisgICAgc2l6ZV90IHp1OworICAgIFBZX0xPTkdfTE9ORyBsbGQ7CisgICAgbG9uZyBsZDsKKyAgICBQeV9zc2l6ZV90IHpkOworICAgIGRvdWJsZSBkOworICAgIHZvaWQgKnA7CisKKyAgICBzd2l0Y2ggKGZtdFswXSkgeworICAgIC8qIHNpZ25lZCBpbnRlZ2VycyAqLworICAgIGNhc2UgJ2InOiBjYXNlICdoJzogY2FzZSAnaSc6IGNhc2UgJ2wnOgorICAgICAgICBsZCA9IHB5bG9uZ19hc19sZChpdGVtKTsKKyAgICAgICAgaWYgKGxkID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBnb3RvIGVycl9vY2N1cnJlZDsKKyAgICAgICAgc3dpdGNoIChmbXRbMF0pIHsKKyAgICAgICAgY2FzZSAnYic6CisgICAgICAgICAgICBpZiAobGQgPCBTQ0hBUl9NSU4gfHwgbGQgPiBTQ0hBUl9NQVgpIGdvdG8gZXJyX3JhbmdlOworICAgICAgICAgICAgKigoc2lnbmVkIGNoYXIgKilwdHIpID0gKHNpZ25lZCBjaGFyKWxkOyBicmVhazsKKyAgICAgICAgY2FzZSAnaCc6CisgICAgICAgICAgICBpZiAobGQgPCBTSFJUX01JTiB8fCBsZCA+IFNIUlRfTUFYKSBnb3RvIGVycl9yYW5nZTsKKyAgICAgICAgICAgIFBBQ0tfU0lOR0xFKHB0ciwgbGQsIHNob3J0KTsgYnJlYWs7CisgICAgICAgIGNhc2UgJ2knOgorICAgICAgICAgICAgaWYgKGxkIDwgSU5UX01JTiB8fCBsZCA+IElOVF9NQVgpIGdvdG8gZXJyX3JhbmdlOworICAgICAgICAgICAgUEFDS19TSU5HTEUocHRyLCBsZCwgaW50KTsgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6IC8qICdsJyAqLworICAgICAgICAgICAgUEFDS19TSU5HTEUocHRyLCBsZCwgbG9uZyk7IGJyZWFrOworICAgICAgICB9CisgICAgICAgIGJyZWFrOworCisgICAgLyogdW5zaWduZWQgaW50ZWdlcnMgKi8KKyAgICBjYXNlICdCJzogY2FzZSAnSCc6IGNhc2UgJ0knOiBjYXNlICdMJzoKKyAgICAgICAgbHUgPSBweWxvbmdfYXNfbHUoaXRlbSk7CisgICAgICAgIGlmIChsdSA9PSAodW5zaWduZWQgbG9uZyktMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgZ290byBlcnJfb2NjdXJyZWQ7CisgICAgICAgIHN3aXRjaCAoZm10WzBdKSB7CisgICAgICAgIGNhc2UgJ0InOgorICAgICAgICAgICAgaWYgKGx1ID4gVUNIQVJfTUFYKSBnb3RvIGVycl9yYW5nZTsKKyAgICAgICAgICAgICooKHVuc2lnbmVkIGNoYXIgKilwdHIpID0gKHVuc2lnbmVkIGNoYXIpbHU7IGJyZWFrOworICAgICAgICBjYXNlICdIJzoKKyAgICAgICAgICAgIGlmIChsdSA+IFVTSFJUX01BWCkgZ290byBlcnJfcmFuZ2U7CisgICAgICAgICAgICBQQUNLX1NJTkdMRShwdHIsIGx1LCB1bnNpZ25lZCBzaG9ydCk7IGJyZWFrOworICAgICAgICBjYXNlICdJJzoKKyAgICAgICAgICAgIGlmIChsdSA+IFVJTlRfTUFYKSBnb3RvIGVycl9yYW5nZTsKKyAgICAgICAgICAgIFBBQ0tfU0lOR0xFKHB0ciwgbHUsIHVuc2lnbmVkIGludCk7IGJyZWFrOworICAgICAgICBkZWZhdWx0OiAvKiAnTCcgKi8KKyAgICAgICAgICAgIFBBQ0tfU0lOR0xFKHB0ciwgbHUsIHVuc2lnbmVkIGxvbmcpOyBicmVhazsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKworICAgIC8qIG5hdGl2ZSA2NC1iaXQgKi8KKyAgICAjaWZkZWYgSEFWRV9MT05HX0xPTkcKKyAgICBjYXNlICdxJzoKKyAgICAgICAgbGxkID0gcHlsb25nX2FzX2xsZChpdGVtKTsKKyAgICAgICAgaWYgKGxsZCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgZ290byBlcnJfb2NjdXJyZWQ7CisgICAgICAgIFBBQ0tfU0lOR0xFKHB0ciwgbGxkLCBQWV9MT05HX0xPTkcpOworICAgICAgICBicmVhazsKKyAgICBjYXNlICdRJzoKKyAgICAgICAgbGx1ID0gcHlsb25nX2FzX2xsdShpdGVtKTsKKyAgICAgICAgaWYgKGxsdSA9PSAodW5zaWduZWQgUFlfTE9OR19MT05HKS0xICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBnb3RvIGVycl9vY2N1cnJlZDsKKyAgICAgICAgUEFDS19TSU5HTEUocHRyLCBsbHUsIHVuc2lnbmVkIFBZX0xPTkdfTE9ORyk7CisgICAgICAgIGJyZWFrOworICAgICNlbmRpZgorCisgICAgLyogc3NpemVfdCBhbmQgc2l6ZV90ICovCisgICAgY2FzZSAnbic6CisgICAgICAgIHpkID0gcHlsb25nX2FzX3pkKGl0ZW0pOworICAgICAgICBpZiAoemQgPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIGdvdG8gZXJyX29jY3VycmVkOworICAgICAgICBQQUNLX1NJTkdMRShwdHIsIHpkLCBQeV9zc2l6ZV90KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSAnTic6CisgICAgICAgIHp1ID0gcHlsb25nX2FzX3p1KGl0ZW0pOworICAgICAgICBpZiAoenUgPT0gKHNpemVfdCktMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgZ290byBlcnJfb2NjdXJyZWQ7CisgICAgICAgIFBBQ0tfU0lOR0xFKHB0ciwgenUsIHNpemVfdCk7CisgICAgICAgIGJyZWFrOworCisgICAgLyogZmxvYXRzICovCisgICAgY2FzZSAnZic6IGNhc2UgJ2QnOgorICAgICAgICBkID0gUHlGbG9hdF9Bc0RvdWJsZShpdGVtKTsKKyAgICAgICAgaWYgKGQgPT0gLTEuMCAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgZ290byBlcnJfb2NjdXJyZWQ7CisgICAgICAgIGlmIChmbXRbMF0gPT0gJ2YnKSB7CisgICAgICAgICAgICBQQUNLX1NJTkdMRShwdHIsIGQsIGZsb2F0KTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIFBBQ0tfU0lOR0xFKHB0ciwgZCwgZG91YmxlKTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKworICAgIC8qIGJvb2wgKi8KKyAgICBjYXNlICc/JzoKKyAgICAgICAgbGQgPSBQeU9iamVjdF9Jc1RydWUoaXRlbSk7CisgICAgICAgIGlmIChsZCA8IDApCisgICAgICAgICAgICByZXR1cm4gLTE7IC8qIHByZXNlcnZlIG9yaWdpbmFsIGVycm9yICovCisgICAgI2lmZGVmIEhBVkVfQzk5X0JPT0wKKyAgICAgICAgUEFDS19TSU5HTEUocHRyLCBsZCwgX0Jvb2wpOworICAgICNlbHNlCisgICAgICAgIFBBQ0tfU0lOR0xFKHB0ciwgbGQsIGNoYXIpOworICAgICNlbmRpZgorICAgICAgICAgYnJlYWs7CisKKyAgICAvKiBieXRlcyBvYmplY3QgKi8KKyAgICBjYXNlICdjJzoKKyAgICAgICAgaWYgKCFQeUJ5dGVzX0NoZWNrKGl0ZW0pKQorICAgICAgICAgICAgcmV0dXJuIHR5cGVfZXJyb3JfaW50KGZtdCk7CisgICAgICAgIGlmIChQeUJ5dGVzX0dFVF9TSVpFKGl0ZW0pICE9IDEpCisgICAgICAgICAgICByZXR1cm4gdmFsdWVfZXJyb3JfaW50KGZtdCk7CisgICAgICAgICpwdHIgPSBQeUJ5dGVzX0FTX1NUUklORyhpdGVtKVswXTsKKyAgICAgICAgYnJlYWs7CisKKyAgICAvKiBwb2ludGVyICovCisgICAgY2FzZSAnUCc6CisgICAgICAgIHAgPSBQeUxvbmdfQXNWb2lkUHRyKGl0ZW0pOworICAgICAgICBpZiAocCA9PSBOVUxMICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBnb3RvIGVycl9vY2N1cnJlZDsKKyAgICAgICAgUEFDS19TSU5HTEUocHRyLCBwLCB2b2lkICopOworICAgICAgICBicmVhazsKKworICAgIC8qIGRlZmF1bHQgKi8KKyAgICBkZWZhdWx0OiBnb3RvIGVycl9mb3JtYXQ7CisgICAgfQorCisgICAgcmV0dXJuIDA7CisKK2Vycl9vY2N1cnJlZDoKKyAgICByZXR1cm4gZml4X2Vycm9yX2ludChmbXQpOworZXJyX3JhbmdlOgorICAgIHJldHVybiB2YWx1ZV9lcnJvcl9pbnQoZm10KTsKK2Vycl9mb3JtYXQ6CisgICAgUHlFcnJfRm9ybWF0KFB5RXhjX05vdEltcGxlbWVudGVkRXJyb3IsCisgICAgICAgICJtZW1vcnl2aWV3OiBmb3JtYXQgJXMgbm90IHN1cHBvcnRlZCIsIGZtdCk7CisgICAgcmV0dXJuIC0xOworfQorCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXByZXNlbnRhdGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyogYWxsb3cgZXhwbGljaXQgZm9ybSBvZiBuYXRpdmUgZm9ybWF0ICovCitQeV9MT0NBTF9JTkxJTkUoY29uc3QgY2hhciAqKQorYWRqdXN0X2ZtdChjb25zdCBQeV9idWZmZXIgKnZpZXcpCit7CisgICAgY29uc3QgY2hhciAqZm10OworCisgICAgZm10ID0gKHZpZXctPmZvcm1hdFswXSA9PSAnQCcpID8gdmlldy0+Zm9ybWF0KzEgOiB2aWV3LT5mb3JtYXQ7CisgICAgaWYgKGZtdFswXSAmJiBmbXRbMV0gPT0gJ1wwJykKKyAgICAgICAgcmV0dXJuIGZtdDsKKworICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yLAorICAgICAgICAibWVtb3J5dmlldzogdW5zdXBwb3J0ZWQgZm9ybWF0ICVzIiwgdmlldy0+Zm9ybWF0KTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworLyogQmFzZSBjYXNlIGZvciBtdWx0aS1kaW1lbnNpb25hbCB1bnBhY2tpbmcuIEFzc3VtcHRpb246IG5kaW0gPT0gMS4gKi8KK3N0YXRpYyBQeU9iamVjdCAqCit0b2xpc3RfYmFzZShjb25zdCBjaGFyICpwdHIsIGNvbnN0IFB5X3NzaXplX3QgKnNoYXBlLAorICAgICAgICAgICAgY29uc3QgUHlfc3NpemVfdCAqc3RyaWRlcywgY29uc3QgUHlfc3NpemVfdCAqc3Vib2Zmc2V0cywKKyAgICAgICAgICAgIGNvbnN0IGNoYXIgKmZtdCkKK3sKKyAgICBQeU9iamVjdCAqbHN0LCAqaXRlbTsKKyAgICBQeV9zc2l6ZV90IGk7CisKKyAgICBsc3QgPSBQeUxpc3RfTmV3KHNoYXBlWzBdKTsKKyAgICBpZiAobHN0ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgZm9yIChpID0gMDsgaSA8IHNoYXBlWzBdOyBwdHIrPXN0cmlkZXNbMF0sIGkrKykgeworICAgICAgICBjb25zdCBjaGFyICp4cHRyID0gQURKVVNUX1BUUihwdHIsIHN1Ym9mZnNldHMpOworICAgICAgICBpdGVtID0gdW5wYWNrX3NpbmdsZSh4cHRyLCBmbXQpOworICAgICAgICBpZiAoaXRlbSA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYobHN0KTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIFB5TGlzdF9TRVRfSVRFTShsc3QsIGksIGl0ZW0pOworICAgIH0KKworICAgIHJldHVybiBsc3Q7Cit9CisKKy8qIFVucGFjayBhIG11bHRpLWRpbWVuc2lvbmFsIGFycmF5IGludG8gYSBuZXN0ZWQgbGlzdC4KKyAgIEFzc3VtcHRpb246IG5kaW0gPj0gMS4gKi8KK3N0YXRpYyBQeU9iamVjdCAqCit0b2xpc3RfcmVjKGNvbnN0IGNoYXIgKnB0ciwgUHlfc3NpemVfdCBuZGltLCBjb25zdCBQeV9zc2l6ZV90ICpzaGFwZSwKKyAgICAgICAgICAgY29uc3QgUHlfc3NpemVfdCAqc3RyaWRlcywgY29uc3QgUHlfc3NpemVfdCAqc3Vib2Zmc2V0cywKKyAgICAgICAgICAgY29uc3QgY2hhciAqZm10KQoreworICAgIFB5T2JqZWN0ICpsc3QsICppdGVtOworICAgIFB5X3NzaXplX3QgaTsKKworICAgIGFzc2VydChuZGltID49IDEpOworICAgIGFzc2VydChzaGFwZSAhPSBOVUxMKTsKKyAgICBhc3NlcnQoc3RyaWRlcyAhPSBOVUxMKTsKKworICAgIGlmIChuZGltID09IDEpCisgICAgICAgIHJldHVybiB0b2xpc3RfYmFzZShwdHIsIHNoYXBlLCBzdHJpZGVzLCBzdWJvZmZzZXRzLCBmbXQpOworCisgICAgbHN0ID0gUHlMaXN0X05ldyhzaGFwZVswXSk7CisgICAgaWYgKGxzdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGZvciAoaSA9IDA7IGkgPCBzaGFwZVswXTsgcHRyKz1zdHJpZGVzWzBdLCBpKyspIHsKKyAgICAgICAgY29uc3QgY2hhciAqeHB0ciA9IEFESlVTVF9QVFIocHRyLCBzdWJvZmZzZXRzKTsKKyAgICAgICAgaXRlbSA9IHRvbGlzdF9yZWMoeHB0ciwgbmRpbS0xLCBzaGFwZSsxLAorICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpZGVzKzEsIHN1Ym9mZnNldHMgPyBzdWJvZmZzZXRzKzEgOiBOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgICBmbXQpOworICAgICAgICBpZiAoaXRlbSA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYobHN0KTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIFB5TGlzdF9TRVRfSVRFTShsc3QsIGksIGl0ZW0pOworICAgIH0KKworICAgIHJldHVybiBsc3Q7Cit9CisKKy8qIFJldHVybiBhIGxpc3QgcmVwcmVzZW50YXRpb24gb2YgdGhlIG1lbW9yeXZpZXcuIEN1cnJlbnRseSBvbmx5IGJ1ZmZlcnMKKyAgIHdpdGggbmF0aXZlIGZvcm1hdCBzdHJpbmdzIGFyZSBzdXBwb3J0ZWQuICovCitzdGF0aWMgUHlPYmplY3QgKgorbWVtb3J5X3RvbGlzdChQeU1lbW9yeVZpZXdPYmplY3QgKm12LCBQeU9iamVjdCAqbm9hcmdzKQoreworICAgIGNvbnN0IFB5X2J1ZmZlciAqdmlldyA9ICYobXYtPnZpZXcpOworICAgIGNvbnN0IGNoYXIgKmZtdDsKKworICAgIENIRUNLX1JFTEVBU0VEKG12KTsKKworICAgIGZtdCA9IGFkanVzdF9mbXQodmlldyk7CisgICAgaWYgKGZtdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAodmlldy0+bmRpbSA9PSAwKSB7CisgICAgICAgIHJldHVybiB1bnBhY2tfc2luZ2xlKHZpZXctPmJ1ZiwgZm10KTsKKyAgICB9CisgICAgZWxzZSBpZiAodmlldy0+bmRpbSA9PSAxKSB7CisgICAgICAgIHJldHVybiB0b2xpc3RfYmFzZSh2aWV3LT5idWYsIHZpZXctPnNoYXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlldy0+c3RyaWRlcywgdmlldy0+c3Vib2Zmc2V0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGZtdCk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICByZXR1cm4gdG9saXN0X3JlYyh2aWV3LT5idWYsIHZpZXctPm5kaW0sIHZpZXctPnNoYXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3LT5zdHJpZGVzLCB2aWV3LT5zdWJvZmZzZXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICBmbXQpOworICAgIH0KK30KKworc3RhdGljIFB5T2JqZWN0ICoKK21lbW9yeV90b2J5dGVzKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZiwgUHlPYmplY3QgKmR1bW15KQoreworICAgIFB5X2J1ZmZlciAqc3JjID0gVklFV19BRERSKHNlbGYpOworICAgIFB5T2JqZWN0ICpieXRlcyA9IE5VTEw7CisKKyAgICBDSEVDS19SRUxFQVNFRChzZWxmKTsKKworICAgIGlmIChNVl9DX0NPTlRJR1VPVVMoc2VsZi0+ZmxhZ3MpKSB7CisgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKHNyYy0+YnVmLCBzcmMtPmxlbik7CisgICAgfQorCisgICAgYnl0ZXMgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIHNyYy0+bGVuKTsKKyAgICBpZiAoYnl0ZXMgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoYnVmZmVyX3RvX2NfY29udGlndW91cyhQeUJ5dGVzX0FTX1NUUklORyhieXRlcyksIHNyYykgPCAwKSB7CisgICAgICAgIFB5X0RFQ1JFRihieXRlcyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiBieXRlczsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK21lbW9yeV9yZXByKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZikKK3sKKyAgICBpZiAoc2VsZi0+ZmxhZ3MgJiBfUHlfTUVNT1JZVklFV19SRUxFQVNFRCkKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8cmVsZWFzZWQgbWVtb3J5IGF0ICVwPiIsIHNlbGYpOworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8bWVtb3J5IGF0ICVwPiIsIHNlbGYpOworfQorCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICBJbmRleGluZyBhbmQgc2xpY2luZyAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyogR2V0IHRoZSBwb2ludGVyIHRvIHRoZSBpdGVtIGF0IGluZGV4LiAqLworc3RhdGljIGNoYXIgKgorcHRyX2Zyb21faW5kZXgoUHlfYnVmZmVyICp2aWV3LCBQeV9zc2l6ZV90IGluZGV4KQoreworICAgIGNoYXIgKnB0cjsKKyAgICBQeV9zc2l6ZV90IG5pdGVtczsgLyogaXRlbXMgaW4gdGhlIGZpcnN0IGRpbWVuc2lvbiAqLworCisgICAgYXNzZXJ0KHZpZXctPnNoYXBlKTsKKyAgICBhc3NlcnQodmlldy0+c3RyaWRlcyk7CisKKyAgICBuaXRlbXMgPSB2aWV3LT5zaGFwZVswXTsKKyAgICBpZiAoaW5kZXggPCAwKSB7CisgICAgICAgIGluZGV4ICs9IG5pdGVtczsKKyAgICB9CisgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+PSBuaXRlbXMpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0luZGV4RXJyb3IsICJpbmRleCBvdXQgb2YgYm91bmRzIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHB0ciA9IChjaGFyICopdmlldy0+YnVmOworICAgIHB0ciArPSB2aWV3LT5zdHJpZGVzWzBdICogaW5kZXg7CisKKyAgICBwdHIgPSBBREpVU1RfUFRSKHB0ciwgdmlldy0+c3Vib2Zmc2V0cyk7CisKKyAgICByZXR1cm4gcHRyOworfQorCisvKiBSZXR1cm4gdGhlIGl0ZW0gYXQgaW5kZXguIEluIGEgb25lLWRpbWVuc2lvbmFsIHZpZXcsIHRoaXMgaXMgYW4gb2JqZWN0CisgICB3aXRoIHRoZSB0eXBlIHNwZWNpZmllZCBieSB2aWV3LT5mb3JtYXQuIE90aGVyd2lzZSwgdGhlIGl0ZW0gaXMgYSBzdWItdmlldy4KKyAgIFRoZSBmdW5jdGlvbiBpcyB1c2VkIGluIG1lbW9yeV9zdWJzY3JpcHQoKSBhbmQgbWVtb3J5X2FzX3NlcXVlbmNlLiAqLworc3RhdGljIFB5T2JqZWN0ICoKK21lbW9yeV9pdGVtKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZiwgUHlfc3NpemVfdCBpbmRleCkKK3sKKyAgICBQeV9idWZmZXIgKnZpZXcgPSAmKHNlbGYtPnZpZXcpOworICAgIGNvbnN0IGNoYXIgKmZtdDsKKworICAgIENIRUNLX1JFTEVBU0VEKHNlbGYpOworCisgICAgZm10ID0gYWRqdXN0X2ZtdCh2aWV3KTsKKyAgICBpZiAoZm10ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKHZpZXctPm5kaW0gPT0gMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiaW52YWxpZCBpbmRleGluZyBvZiAwLWRpbSBtZW1vcnkiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmICh2aWV3LT5uZGltID09IDEpIHsKKyAgICAgICAgY2hhciAqcHRyID0gcHRyX2Zyb21faW5kZXgodmlldywgaW5kZXgpOworICAgICAgICBpZiAocHRyID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgcmV0dXJuIHVucGFja19zaW5nbGUocHRyLCBmbXQpOworICAgIH0KKworICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yLAorICAgICAgICAibXVsdGktZGltZW5zaW9uYWwgc3ViLXZpZXdzIGFyZSBub3QgaW1wbGVtZW50ZWQiKTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworUHlfTE9DQUxfSU5MSU5FKGludCkKK2luaXRfc2xpY2UoUHlfYnVmZmVyICpiYXNlLCBQeU9iamVjdCAqa2V5LCBpbnQgZGltKQoreworICAgIFB5X3NzaXplX3Qgc3RhcnQsIHN0b3AsIHN0ZXAsIHNsaWNlbGVuZ3RoOworCisgICAgaWYgKFB5U2xpY2VfR2V0SW5kaWNlc0V4KGtleSwgYmFzZS0+c2hhcGVbZGltXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0LCAmc3RvcCwgJnN0ZXAsICZzbGljZWxlbmd0aCkgPCAwKSB7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKworICAgIGlmIChiYXNlLT5zdWJvZmZzZXRzID09IE5VTEwgfHwgZGltID09IDApIHsKKyAgICBhZGp1c3RfYnVmOgorICAgICAgICBiYXNlLT5idWYgPSAoY2hhciAqKWJhc2UtPmJ1ZiArIGJhc2UtPnN0cmlkZXNbZGltXSAqIHN0YXJ0OworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgUHlfc3NpemVfdCBuID0gZGltLTE7CisgICAgICAgIHdoaWxlIChuID49IDAgJiYgYmFzZS0+c3Vib2Zmc2V0c1tuXSA8IDApCisgICAgICAgICAgICBuLS07CisgICAgICAgIGlmIChuIDwgMCkKKyAgICAgICAgICAgIGdvdG8gYWRqdXN0X2J1ZjsgLyogYWxsIHN1Ym9mZnNldHMgYXJlIG5lZ2F0aXZlICovCisgICAgICAgIGJhc2UtPnN1Ym9mZnNldHNbbl0gPSBiYXNlLT5zdWJvZmZzZXRzW25dICsgYmFzZS0+c3RyaWRlc1tkaW1dICogc3RhcnQ7CisgICAgfQorICAgIGJhc2UtPnNoYXBlW2RpbV0gPSBzbGljZWxlbmd0aDsKKyAgICBiYXNlLT5zdHJpZGVzW2RpbV0gPSBiYXNlLT5zdHJpZGVzW2RpbV0gKiBzdGVwOworCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQKK2lzX211bHRpc2xpY2UoUHlPYmplY3QgKmtleSkKK3sKKyAgICBQeV9zc2l6ZV90IHNpemUsIGk7CisKKyAgICBpZiAoIVB5VHVwbGVfQ2hlY2soa2V5KSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgc2l6ZSA9IFB5VHVwbGVfR0VUX1NJWkUoa2V5KTsKKyAgICBpZiAoc2l6ZSA9PSAwKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGZvciAoaSA9IDA7IGkgPCBzaXplOyBpKyspIHsKKyAgICAgICAgUHlPYmplY3QgKnggPSBQeVR1cGxlX0dFVF9JVEVNKGtleSwgaSk7CisgICAgICAgIGlmICghUHlTbGljZV9DaGVjayh4KSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICByZXR1cm4gMTsKK30KKworLyogbXZbb2JqXSByZXR1cm5zIGFuIG9iamVjdCBob2xkaW5nIHRoZSBkYXRhIGZvciBvbmUgZWxlbWVudCBpZiBvYmoKKyAgIGZ1bGx5IGluZGV4ZXMgdGhlIG1lbW9yeXZpZXcgb3IgYW5vdGhlciBtZW1vcnl2aWV3IG9iamVjdCBpZiBpdAorICAgZG9lcyBub3QuCisKKyAgIDAtZCBtZW1vcnl2aWV3IG9iamVjdHMgY2FuIGJlIHJlZmVyZW5jZWQgdXNpbmcgbXZbLi4uXSBvciBtdlsoKV0KKyAgIGJ1dCBub3Qgd2l0aCBhbnl0aGluZyBlbHNlLiAqLworc3RhdGljIFB5T2JqZWN0ICoKK21lbW9yeV9zdWJzY3JpcHQoUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqa2V5KQoreworICAgIFB5X2J1ZmZlciAqdmlldzsKKyAgICB2aWV3ID0gJihzZWxmLT52aWV3KTsKKyAgICAKKyAgICBDSEVDS19SRUxFQVNFRChzZWxmKTsKKworICAgIGlmICh2aWV3LT5uZGltID09IDApIHsKKyAgICAgICAgaWYgKFB5VHVwbGVfQ2hlY2soa2V5KSAmJiBQeVR1cGxlX0dFVF9TSVpFKGtleSkgPT0gMCkgeworICAgICAgICAgICAgY29uc3QgY2hhciAqZm10ID0gYWRqdXN0X2ZtdCh2aWV3KTsKKyAgICAgICAgICAgIGlmIChmbXQgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIHJldHVybiB1bnBhY2tfc2luZ2xlKHZpZXctPmJ1ZiwgZm10KTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChrZXkgPT0gUHlfRWxsaXBzaXMpIHsKKyAgICAgICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKKyAgICAgICAgICAgIHJldHVybiAoUHlPYmplY3QgKilzZWxmOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAiaW52YWxpZCBpbmRleGluZyBvZiAwLWRpbSBtZW1vcnkiKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKFB5SW5kZXhfQ2hlY2soa2V5KSkgeworICAgICAgICBQeV9zc2l6ZV90IGluZGV4OworICAgICAgICBpbmRleCA9IFB5TnVtYmVyX0FzU3NpemVfdChrZXksIFB5RXhjX0luZGV4RXJyb3IpOworICAgICAgICBpZiAoaW5kZXggPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICByZXR1cm4gbWVtb3J5X2l0ZW0oc2VsZiwgaW5kZXgpOworICAgIH0KKyAgICBlbHNlIGlmIChQeVNsaWNlX0NoZWNrKGtleSkpIHsKKyAgICAgICAgUHlNZW1vcnlWaWV3T2JqZWN0ICpzbGljZWQ7CisKKyAgICAgICAgc2xpY2VkID0gKFB5TWVtb3J5Vmlld09iamVjdCAqKW1idWZfYWRkX3ZpZXcoc2VsZi0+bWJ1Ziwgdmlldyk7CisgICAgICAgIGlmIChzbGljZWQgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCisgICAgICAgIGlmIChpbml0X3NsaWNlKCZzbGljZWQtPnZpZXcsIGtleSwgMCkgPCAwKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoc2xpY2VkKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIGluaXRfbGVuKCZzbGljZWQtPnZpZXcpOworICAgICAgICBpbml0X2ZsYWdzKHNsaWNlZCk7CisKKyAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXNsaWNlZDsKKyAgICB9CisgICAgZWxzZSBpZiAoaXNfbXVsdGlzbGljZShrZXkpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yLAorICAgICAgICAgICAgIm11bHRpLWRpbWVuc2lvbmFsIHNsaWNpbmcgaXMgbm90IGltcGxlbWVudGVkIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJtZW1vcnl2aWV3OiBpbnZhbGlkIHNsaWNlIGtleSIpOworICAgIHJldHVybiBOVUxMOworfQorCitzdGF0aWMgaW50CittZW1vcnlfYXNzX3N1YihQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICprZXksIFB5T2JqZWN0ICp2YWx1ZSkKK3sKKyAgICBQeV9idWZmZXIgKnZpZXcgPSAmKHNlbGYtPnZpZXcpOworICAgIFB5X2J1ZmZlciBzcmM7CisgICAgY29uc3QgY2hhciAqZm10OworICAgIGNoYXIgKnB0cjsKKworICAgIENIRUNLX1JFTEVBU0VEX0lOVChzZWxmKTsKKworICAgIGZtdCA9IGFkanVzdF9mbXQodmlldyk7CisgICAgaWYgKGZtdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBpZiAodmlldy0+cmVhZG9ubHkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImNhbm5vdCBtb2RpZnkgcmVhZC1vbmx5IG1lbW9yeSIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJjYW5ub3QgZGVsZXRlIG1lbW9yeSIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICh2aWV3LT5uZGltID09IDApIHsKKyAgICAgICAgaWYgKGtleSA9PSBQeV9FbGxpcHNpcyB8fAorICAgICAgICAgICAgKFB5VHVwbGVfQ2hlY2soa2V5KSAmJiBQeVR1cGxlX0dFVF9TSVpFKGtleSk9PTApKSB7CisgICAgICAgICAgICBwdHIgPSAoY2hhciAqKXZpZXctPmJ1ZjsKKyAgICAgICAgICAgIHJldHVybiBwYWNrX3NpbmdsZShwdHIsIHZhbHVlLCBmbXQpOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAiaW52YWxpZCBpbmRleGluZyBvZiAwLWRpbSBtZW1vcnkiKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAodmlldy0+bmRpbSAhPSAxKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yLAorICAgICAgICAgICAgIm1lbW9yeXZpZXcgYXNzaWdubWVudHMgYXJlIGN1cnJlbnRseSByZXN0cmljdGVkIHRvIG5kaW0gPSAxIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBpZiAoUHlJbmRleF9DaGVjayhrZXkpKSB7CisgICAgICAgIFB5X3NzaXplX3QgaW5kZXggPSBQeU51bWJlcl9Bc1NzaXplX3Qoa2V5LCBQeUV4Y19JbmRleEVycm9yKTsKKyAgICAgICAgaWYgKGluZGV4ID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIHB0ciA9IHB0cl9mcm9tX2luZGV4KHZpZXcsIGluZGV4KTsKKyAgICAgICAgaWYgKHB0ciA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICByZXR1cm4gcGFja19zaW5nbGUocHRyLCB2YWx1ZSwgZm10KTsKKyAgICB9CisgICAgLyogb25lLWRpbWVuc2lvbmFsOiBmYXN0IHBhdGggKi8KKyAgICBpZiAoUHlTbGljZV9DaGVjayhrZXkpICYmIHZpZXctPm5kaW0gPT0gMSkgeworICAgICAgICBQeV9idWZmZXIgZGVzdDsgLyogc2xpY2VkIHZpZXcgKi8KKyAgICAgICAgUHlfc3NpemVfdCBhcnJheXNbM107CisgICAgICAgIGludCByZXQgPSAtMTsKKworICAgICAgICAvKiBydmFsdWUgbXVzdCBiZSBhbiBleHBvcnRlciAqLworICAgICAgICBpZiAoUHlPYmplY3RfR2V0QnVmZmVyKHZhbHVlLCAmc3JjLCBQeUJVRl9GVUxMX1JPKSA8IDApCisgICAgICAgICAgICByZXR1cm4gcmV0OworCisgICAgICAgIGRlc3QgPSAqdmlldzsKKyAgICAgICAgZGVzdC5zaGFwZSA9ICZhcnJheXNbMF07IGRlc3Quc2hhcGVbMF0gPSB2aWV3LT5zaGFwZVswXTsKKyAgICAgICAgZGVzdC5zdHJpZGVzID0gJmFycmF5c1sxXTsgZGVzdC5zdHJpZGVzWzBdID0gdmlldy0+c3RyaWRlc1swXTsKKyAgICAgICAgaWYgKHZpZXctPnN1Ym9mZnNldHMpIHsKKyAgICAgICAgICAgIGRlc3Quc3Vib2Zmc2V0cyA9ICZhcnJheXNbMl07IGRlc3Quc3Vib2Zmc2V0c1swXSA9IHZpZXctPnN1Ym9mZnNldHNbMF07CisgICAgICAgIH0KKworICAgICAgICBpZiAoaW5pdF9zbGljZSgmZGVzdCwga2V5LCAwKSA8IDApCisgICAgICAgICAgICBnb3RvIGVuZF9ibG9jazsKKyAgICAgICAgZGVzdC5sZW4gPSBkZXN0LnNoYXBlWzBdICogZGVzdC5pdGVtc2l6ZTsKKworICAgICAgICByZXQgPSBjb3B5X3NpbmdsZSgmZGVzdCwgJnNyYyk7CisKKyAgICBlbmRfYmxvY2s6CisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnNyYyk7CisgICAgICAgIHJldHVybiByZXQ7CisgICAgfQorICAgIGVsc2UgaWYgKFB5U2xpY2VfQ2hlY2soa2V5KSB8fCBpc19tdWx0aXNsaWNlKGtleSkpIHsKKyAgICAgICAgLyogQ2FsbCBtZW1vcnlfc3Vic2NyaXB0KCkgdG8gcHJvZHVjZSBhIHNsaWNlZCBsdmFsdWUsIHRoZW4gY29weQorICAgICAgICAgICBydmFsdWUgaW50byBsdmFsdWUuIFRoaXMgaXMgYWxyZWFkeSBpbXBsZW1lbnRlZCBpbiBfdGVzdGJ1ZmZlci5jLiAqLworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvciwKKyAgICAgICAgICAgICJtZW1vcnl2aWV3IHNsaWNlIGFzc2lnbm1lbnRzIGFyZSBjdXJyZW50bHkgcmVzdHJpY3RlZCAiCisgICAgICAgICAgICAidG8gbmRpbSA9IDEiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJtZW1vcnl2aWV3OiBpbnZhbGlkIHNsaWNlIGtleSIpOworICAgIHJldHVybiAtMTsKK30KKworc3RhdGljIFB5X3NzaXplX3QKK21lbW9yeV9sZW5ndGgoUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmKQoreworICAgIENIRUNLX1JFTEVBU0VEX0lOVChzZWxmKTsKKyAgICByZXR1cm4gc2VsZi0+dmlldy5uZGltID09IDAgPyAxIDogc2VsZi0+dmlldy5zaGFwZVswXTsKK30KKworLyogQXMgbWFwcGluZyAqLworc3RhdGljIFB5TWFwcGluZ01ldGhvZHMgbWVtb3J5X2FzX21hcHBpbmcgPSB7CisgICAgKGxlbmZ1bmMpbWVtb3J5X2xlbmd0aCwgICAgICAgICAgICAgICAvKiBtcF9sZW5ndGggKi8KKyAgICAoYmluYXJ5ZnVuYyltZW1vcnlfc3Vic2NyaXB0LCAgICAgICAgIC8qIG1wX3N1YnNjcmlwdCAqLworICAgIChvYmpvYmphcmdwcm9jKW1lbW9yeV9hc3Nfc3ViLCAgICAgICAgLyogbXBfYXNzX3N1YnNjcmlwdCAqLworfTsKKworLyogQXMgc2VxdWVuY2UgKi8KK3N0YXRpYyBQeVNlcXVlbmNlTWV0aG9kcyBtZW1vcnlfYXNfc2VxdWVuY2UgPSB7CisgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzcV9sZW5ndGggKi8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNxX2NvbmNhdCAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc3FfcmVwZWF0ICovCisgICAgICAgIChzc2l6ZWFyZ2Z1bmMpbWVtb3J5X2l0ZW0sICAgICAgICAvKiBzcV9pdGVtICovCit9OworCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb21wYXJpc29ucyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2RlZmluZSBDTVBfU0lOR0xFKHAsIHEsIHR5cGUpIFwKKyAgICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB0eXBlIHg7ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHR5cGUgeTsgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgbWVtY3B5KChjaGFyICopJngsIHAsIHNpemVvZiB4KTsgXAorICAgICAgICBtZW1jcHkoKGNoYXIgKikmeSwgcSwgc2l6ZW9mIHkpOyBcCisgICAgICAgIGVxdWFsID0gKHggPT0geSk7ICAgICAgICAgICAgICAgIFwKKyAgICB9IHdoaWxlICgwKQorCitQeV9MT0NBTF9JTkxJTkUoaW50KQordW5wYWNrX2NtcChjb25zdCBjaGFyICpwLCBjb25zdCBjaGFyICpxLCBjb25zdCBjaGFyICpmbXQpCit7CisgICAgaW50IGVxdWFsOworCisgICAgc3dpdGNoIChmbXRbMF0pIHsKKworICAgIC8qIHNpZ25lZCBpbnRlZ2VycyBhbmQgZmFzdCBwYXRoIGZvciAnQicgKi8KKyAgICBjYXNlICdCJzogcmV0dXJuICooKHVuc2lnbmVkIGNoYXIgKilwKSA9PSAqKCh1bnNpZ25lZCBjaGFyICopcSk7CisgICAgY2FzZSAnYic6IHJldHVybiAqKChzaWduZWQgY2hhciAqKXApID09ICooKHNpZ25lZCBjaGFyICopcSk7CisgICAgY2FzZSAnaCc6IENNUF9TSU5HTEUocCwgcSwgc2hvcnQpOyByZXR1cm4gZXF1YWw7CisgICAgY2FzZSAnaSc6IENNUF9TSU5HTEUocCwgcSwgaW50KTsgcmV0dXJuIGVxdWFsOworICAgIGNhc2UgJ2wnOiBDTVBfU0lOR0xFKHAsIHEsIGxvbmcpOyByZXR1cm4gZXF1YWw7CisKKyAgICAvKiBib29sZWFuICovCisgICAgI2lmZGVmIEhBVkVfQzk5X0JPT0wKKyAgICBjYXNlICc/JzogQ01QX1NJTkdMRShwLCBxLCBfQm9vbCk7IHJldHVybiBlcXVhbDsKKyAgICAjZWxzZQorICAgIGNhc2UgJz8nOiBDTVBfU0lOR0xFKHAsIHEsIGNoYXIpOyByZXR1cm4gZXF1YWw7CisgICAgI2VuZGlmCisKKyAgICAvKiB1bnNpZ25lZCBpbnRlZ2VycyAqLworICAgIGNhc2UgJ0gnOiBDTVBfU0lOR0xFKHAsIHEsIHVuc2lnbmVkIHNob3J0KTsgcmV0dXJuIGVxdWFsOworICAgIGNhc2UgJ0knOiBDTVBfU0lOR0xFKHAsIHEsIHVuc2lnbmVkIGludCk7IHJldHVybiBlcXVhbDsKKyAgICBjYXNlICdMJzogQ01QX1NJTkdMRShwLCBxLCB1bnNpZ25lZCBsb25nKTsgcmV0dXJuIGVxdWFsOworCisgICAgLyogbmF0aXZlIDY0LWJpdCAqLworICAgICNpZmRlZiBIQVZFX0xPTkdfTE9ORworICAgIGNhc2UgJ3EnOiBDTVBfU0lOR0xFKHAsIHEsIFBZX0xPTkdfTE9ORyk7IHJldHVybiBlcXVhbDsKKyAgICBjYXNlICdRJzogQ01QX1NJTkdMRShwLCBxLCB1bnNpZ25lZCBQWV9MT05HX0xPTkcpOyByZXR1cm4gZXF1YWw7CisgICAgI2VuZGlmCisKKyAgICAvKiBzc2l6ZV90IGFuZCBzaXplX3QgKi8KKyAgICBjYXNlICduJzogQ01QX1NJTkdMRShwLCBxLCBQeV9zc2l6ZV90KTsgcmV0dXJuIGVxdWFsOworICAgIGNhc2UgJ04nOiBDTVBfU0lOR0xFKHAsIHEsIHNpemVfdCk7IHJldHVybiBlcXVhbDsKKworICAgIC8qIGZsb2F0cyAqLworICAgIC8qIFhYWCBEQkxfRVBTSUxPTj8gKi8KKyAgICBjYXNlICdmJzogQ01QX1NJTkdMRShwLCBxLCBmbG9hdCk7IHJldHVybiBlcXVhbDsKKyAgICBjYXNlICdkJzogQ01QX1NJTkdMRShwLCBxLCBkb3VibGUpOyByZXR1cm4gZXF1YWw7CisKKyAgICAvKiBieXRlcyBvYmplY3QgKi8KKyAgICBjYXNlICdjJzogcmV0dXJuICpwID09ICpxOworCisgICAgLyogcG9pbnRlciAqLworICAgIGNhc2UgJ1AnOiBDTVBfU0lOR0xFKHAsIHEsIHZvaWQgKik7IHJldHVybiBlcXVhbDsKKworICAgIC8qIFB5X05vdEltcGxlbWVudGVkICovCisgICAgZGVmYXVsdDogcmV0dXJuIC0xOworICAgIH0KK30KKworLyogQmFzZSBjYXNlIGZvciByZWN1cnNpdmUgYXJyYXkgY29tcGFyaXNvbnMuIEFzc3VtcHRpb246IG5kaW0gPT0gMS4gKi8KK3N0YXRpYyBpbnQKK2NtcF9iYXNlKGNvbnN0IGNoYXIgKnAsIGNvbnN0IGNoYXIgKnEsIGNvbnN0IFB5X3NzaXplX3QgKnNoYXBlLAorICAgICAgICAgY29uc3QgUHlfc3NpemVfdCAqcHN0cmlkZXMsIGNvbnN0IFB5X3NzaXplX3QgKnBzdWJvZmZzZXRzLAorICAgICAgICAgY29uc3QgUHlfc3NpemVfdCAqcXN0cmlkZXMsIGNvbnN0IFB5X3NzaXplX3QgKnFzdWJvZmZzZXRzLAorICAgICAgICAgY29uc3QgY2hhciAqZm10KQoreworICAgIFB5X3NzaXplX3QgaTsKKyAgICBpbnQgZXF1YWw7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgc2hhcGVbMF07IHArPXBzdHJpZGVzWzBdLCBxKz1xc3RyaWRlc1swXSwgaSsrKSB7CisgICAgICAgIGNvbnN0IGNoYXIgKnhwID0gQURKVVNUX1BUUihwLCBwc3Vib2Zmc2V0cyk7CisgICAgICAgIGNvbnN0IGNoYXIgKnhxID0gQURKVVNUX1BUUihxLCBxc3Vib2Zmc2V0cyk7CisgICAgICAgIGVxdWFsID0gdW5wYWNrX2NtcCh4cCwgeHEsIGZtdCk7CisgICAgICAgIGlmIChlcXVhbCA8PSAwKQorICAgICAgICAgICAgcmV0dXJuIGVxdWFsOworICAgIH0KKworICAgIHJldHVybiAxOworfQorCisvKiBSZWN1cnNpdmVseSBjb21wYXJlIHR3byBtdWx0aS1kaW1lbnNpb25hbCBhcnJheXMgdGhhdCBoYXZlIHRoZSBzYW1lCisgICBsb2dpY2FsIHN0cnVjdHVyZS4gQXNzdW1wdGlvbjogbmRpbSA+PSAxLiAqLworc3RhdGljIGludAorY21wX3JlYyhjb25zdCBjaGFyICpwLCBjb25zdCBjaGFyICpxLAorICAgICAgICBQeV9zc2l6ZV90IG5kaW0sIGNvbnN0IFB5X3NzaXplX3QgKnNoYXBlLAorICAgICAgICBjb25zdCBQeV9zc2l6ZV90ICpwc3RyaWRlcywgY29uc3QgUHlfc3NpemVfdCAqcHN1Ym9mZnNldHMsCisgICAgICAgIGNvbnN0IFB5X3NzaXplX3QgKnFzdHJpZGVzLCBjb25zdCBQeV9zc2l6ZV90ICpxc3Vib2Zmc2V0cywKKyAgICAgICAgY29uc3QgY2hhciAqZm10KQoreworICAgIFB5X3NzaXplX3QgaTsKKyAgICBpbnQgZXF1YWw7CisKKyAgICBhc3NlcnQobmRpbSA+PSAxKTsKKyAgICBhc3NlcnQoc2hhcGUgIT0gTlVMTCk7CisgICAgYXNzZXJ0KHBzdHJpZGVzICE9IE5VTEwpOworICAgIGFzc2VydChxc3RyaWRlcyAhPSBOVUxMKTsKKworICAgIGlmIChuZGltID09IDEpIHsKKyAgICAgICAgcmV0dXJuIGNtcF9iYXNlKHAsIHEsIHNoYXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgcHN0cmlkZXMsIHBzdWJvZmZzZXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgcXN0cmlkZXMsIHFzdWJvZmZzZXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgZm10KTsKKyAgICB9CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgc2hhcGVbMF07IHArPXBzdHJpZGVzWzBdLCBxKz1xc3RyaWRlc1swXSwgaSsrKSB7CisgICAgICAgIGNvbnN0IGNoYXIgKnhwID0gQURKVVNUX1BUUihwLCBwc3Vib2Zmc2V0cyk7CisgICAgICAgIGNvbnN0IGNoYXIgKnhxID0gQURKVVNUX1BUUihxLCBxc3Vib2Zmc2V0cyk7CisgICAgICAgIGVxdWFsID0gY21wX3JlYyh4cCwgeHEsIG5kaW0tMSwgc2hhcGUrMSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHBzdHJpZGVzKzEsIHBzdWJvZmZzZXRzID8gcHN1Ym9mZnNldHMrMSA6IE5VTEwsCisgICAgICAgICAgICAgICAgICAgICAgICBxc3RyaWRlcysxLCBxc3Vib2Zmc2V0cyA/IHFzdWJvZmZzZXRzKzEgOiBOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgZm10KTsKKyAgICAgICAgaWYgKGVxdWFsIDw9IDApCisgICAgICAgICAgICByZXR1cm4gZXF1YWw7CisgICAgfQorCisgICAgcmV0dXJuIDE7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCittZW1vcnlfcmljaGNvbXBhcmUoUHlPYmplY3QgKnYsIFB5T2JqZWN0ICp3LCBpbnQgb3ApCit7CisgICAgUHlPYmplY3QgKnJlczsKKyAgICBQeV9idWZmZXIgd2J1ZiwgKnZ2LCAqd3cgPSBOVUxMOworICAgIGNvbnN0IGNoYXIgKnZmbXQsICp3Zm10OworICAgIGludCBlcXVhbCA9IC0xOyAvKiBQeV9Ob3RJbXBsZW1lbnRlZCAqLworCisgICAgaWYgKG9wICE9IFB5X0VRICYmIG9wICE9IFB5X05FKQorICAgICAgICBnb3RvIHJlc3VsdDsgLyogUHlfTm90SW1wbGVtZW50ZWQgKi8KKworICAgIGFzc2VydChQeU1lbW9yeVZpZXdfQ2hlY2sodikpOworICAgIGlmIChCQVNFX0lOQUNDRVNTSUJMRSh2KSkgeworICAgICAgICBlcXVhbCA9ICh2ID09IHcpOworICAgICAgICBnb3RvIHJlc3VsdDsKKyAgICB9CisgICAgdnYgPSBWSUVXX0FERFIodik7CisKKyAgICBpZiAoUHlNZW1vcnlWaWV3X0NoZWNrKHcpKSB7CisgICAgICAgIGlmIChCQVNFX0lOQUNDRVNTSUJMRSh3KSkgeworICAgICAgICAgICAgZXF1YWwgPSAodiA9PSB3KTsKKyAgICAgICAgICAgIGdvdG8gcmVzdWx0OworICAgICAgICB9CisgICAgICAgIHd3ID0gVklFV19BRERSKHcpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKFB5T2JqZWN0X0dldEJ1ZmZlcih3LCAmd2J1ZiwgUHlCVUZfRlVMTF9STykgPCAwKSB7CisgICAgICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICAgICAgZ290byByZXN1bHQ7IC8qIFB5X05vdEltcGxlbWVudGVkICovCisgICAgICAgIH0KKyAgICAgICAgd3cgPSAmd2J1ZjsKKyAgICB9CisKKyAgICB2Zm10ID0gYWRqdXN0X2ZtdCh2dik7CisgICAgd2ZtdCA9IGFkanVzdF9mbXQod3cpOworICAgIGlmICh2Zm10ID09IE5VTEwgfHwgd2ZtdCA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIGdvdG8gcmVzdWx0OyAvKiBQeV9Ob3RJbXBsZW1lbnRlZCAqLworICAgIH0KKworICAgIGlmIChjbXBfc3RydWN0dXJlKHZ2LCB3dykgPCAwKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIGVxdWFsID0gMDsKKyAgICAgICAgZ290byByZXN1bHQ7CisgICAgfQorCisgICAgaWYgKHZ2LT5uZGltID09IDApIHsKKyAgICAgICAgZXF1YWwgPSB1bnBhY2tfY21wKHZ2LT5idWYsIHd3LT5idWYsIHZmbXQpOworICAgIH0KKyAgICBlbHNlIGlmICh2di0+bmRpbSA9PSAxKSB7CisgICAgICAgIGVxdWFsID0gY21wX2Jhc2UodnYtPmJ1Ziwgd3ctPmJ1ZiwgdnYtPnNoYXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgIHZ2LT5zdHJpZGVzLCB2di0+c3Vib2Zmc2V0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICB3dy0+c3RyaWRlcywgd3ctPnN1Ym9mZnNldHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgdmZtdCk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBlcXVhbCA9IGNtcF9yZWModnYtPmJ1Ziwgd3ctPmJ1ZiwgdnYtPm5kaW0sIHZ2LT5zaGFwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHZ2LT5zdHJpZGVzLCB2di0+c3Vib2Zmc2V0cywKKyAgICAgICAgICAgICAgICAgICAgICAgIHd3LT5zdHJpZGVzLCB3dy0+c3Vib2Zmc2V0cywKKyAgICAgICAgICAgICAgICAgICAgICAgIHZmbXQpOworICAgIH0KKworcmVzdWx0OgorICAgIGlmIChlcXVhbCA8IDApCisgICAgICAgIHJlcyA9IFB5X05vdEltcGxlbWVudGVkOyAKKyAgICBlbHNlIGlmICgoZXF1YWwgJiYgb3AgPT0gUHlfRVEpIHx8ICghZXF1YWwgJiYgb3AgPT0gUHlfTkUpKQorICAgICAgICByZXMgPSBQeV9UcnVlOworICAgIGVsc2UKKyAgICAgICAgcmVzID0gUHlfRmFsc2U7CisKKyAgICBpZiAod3cgPT0gJndidWYpCisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2Uod3cpOworICAgIFB5X0lOQ1JFRihyZXMpOworICAgIHJldHVybiByZXM7Cit9CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIYXNoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworc3RhdGljIFB5X2hhc2hfdAorbWVtb3J5X2hhc2goUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmKQoreworICAgIGlmIChzZWxmLT5oYXNoID09IC0xKSB7CisgICAgICAgIFB5X2J1ZmZlciAqdmlldyA9ICZzZWxmLT52aWV3OworICAgICAgICBjaGFyICptZW0gPSB2aWV3LT5idWY7CisKKyAgICAgICAgQ0hFQ0tfUkVMRUFTRURfSU5UKHNlbGYpOworCisgICAgICAgIGlmICghdmlldy0+cmVhZG9ubHkpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICJjYW5ub3QgaGFzaCB3cml0YWJsZSBtZW1vcnl2aWV3IG9iamVjdCIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGlmICh2aWV3LT5vYmogIT0gTlVMTCAmJiBQeU9iamVjdF9IYXNoKHZpZXctPm9iaikgPT0gLTEpIHsKKyAgICAgICAgICAgIC8qIEtlZXAgdGhlIG9yaWdpbmFsIGVycm9yIG1lc3NhZ2UgKi8KKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorCisgICAgICAgIGlmICghTVZfQ19DT05USUdVT1VTKHNlbGYtPmZsYWdzKSkgeworICAgICAgICAgICAgbWVtID0gUHlNZW1fTWFsbG9jKHZpZXctPmxlbik7CisgICAgICAgICAgICBpZiAobWVtID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChidWZmZXJfdG9fY19jb250aWd1b3VzKG1lbSwgdmlldykgPCAwKSB7CisgICAgICAgICAgICAgICAgUHlNZW1fRnJlZShtZW0pOworICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIC8qIENhbid0IGZhaWwgKi8KKyAgICAgICAgc2VsZi0+aGFzaCA9IF9QeV9IYXNoQnl0ZXMoKHVuc2lnbmVkIGNoYXIgKiltZW0sIHZpZXctPmxlbik7CisKKyAgICAgICAgaWYgKG1lbSAhPSB2aWV3LT5idWYpCisgICAgICAgICAgICBQeU1lbV9GcmVlKG1lbSk7CisgICAgfQorCisgICAgcmV0dXJuIHNlbGYtPmhhc2g7Cit9CisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXR0ZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitzdGF0aWMgUHlPYmplY3QgKgorX0ludFR1cGxlRnJvbVNzaXpldChpbnQgbGVuLCBQeV9zc2l6ZV90ICp2YWxzKQoreworICAgIGludCBpOworICAgIFB5T2JqZWN0ICpvOworICAgIFB5T2JqZWN0ICppbnRUdXBsZTsKKworICAgIGlmICh2YWxzID09IE5VTEwpCisgICAgICAgIHJldHVybiBQeVR1cGxlX05ldygwKTsKKworICAgIGludFR1cGxlID0gUHlUdXBsZV9OZXcobGVuKTsKKyAgICBpZiAoIWludFR1cGxlKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBmb3IgKGk9MDsgaTxsZW47IGkrKykgeworICAgICAgICBvID0gUHlMb25nX0Zyb21Tc2l6ZV90KHZhbHNbaV0pOworICAgICAgICBpZiAoIW8pIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihpbnRUdXBsZSk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKGludFR1cGxlLCBpLCBvKTsKKyAgICB9CisgICAgcmV0dXJuIGludFR1cGxlOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbWVtb3J5X29ial9nZXQoUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmKQoreworICAgIFB5X2J1ZmZlciAqdmlldyA9ICZzZWxmLT52aWV3OworCisgICAgQ0hFQ0tfUkVMRUFTRUQoc2VsZik7CisgICAgaWYgKHZpZXctPm9iaiA9PSBOVUxMKSB7CisgICAgICAgIFB5X1JFVFVSTl9OT05FOworICAgIH0KKyAgICBQeV9JTkNSRUYodmlldy0+b2JqKTsKKyAgICByZXR1cm4gdmlldy0+b2JqOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorbWVtb3J5X25ieXRlc19nZXQoUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmKQoreworICAgIENIRUNLX1JFTEVBU0VEKHNlbGYpOworICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3Qoc2VsZi0+dmlldy5sZW4pOworfQorCiBzdGF0aWMgUHlPYmplY3QgKgogbWVtb3J5X2Zvcm1hdF9nZXQoUHlNZW1vcnlWaWV3T2JqZWN0ICpzZWxmKQogewpAQCAtMzQzLDMxICsyNTAwLDYgQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKLV9JbnRUdXBsZUZyb21Tc2l6ZXQoaW50IGxlbiwgUHlfc3NpemVfdCAqdmFscykKLXsKLSAgICBpbnQgaTsKLSAgICBQeU9iamVjdCAqbzsKLSAgICBQeU9iamVjdCAqaW50VHVwbGU7Ci0KLSAgICBpZiAodmFscyA9PSBOVUxMKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKLSAgICAgICAgcmV0dXJuIFB5X05vbmU7Ci0gICAgfQotICAgIGludFR1cGxlID0gUHlUdXBsZV9OZXcobGVuKTsKLSAgICBpZiAoIWludFR1cGxlKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBmb3IgKGk9MDsgaTxsZW47IGkrKykgewotICAgICAgICBvID0gUHlMb25nX0Zyb21Tc2l6ZV90KHZhbHNbaV0pOwotICAgICAgICBpZiAoIW8pIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihpbnRUdXBsZSk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKGludFR1cGxlLCBpLCBvKTsKLSAgICB9Ci0gICAgcmV0dXJuIGludFR1cGxlOwotfQotCi1zdGF0aWMgUHlPYmplY3QgKgogbWVtb3J5X3NoYXBlX2dldChQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYpCiB7CiAgICAgQ0hFQ0tfUkVMRUFTRUQoc2VsZik7CkBAIC00MDIsNDI1ICsyNTM0LDYwIEBACiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhzZWxmLT52aWV3Lm5kaW0pOwogfQogCi1zdGF0aWMgUHlHZXRTZXREZWYgbWVtb3J5X2dldHNldGxpc3RbXSA9ewotICAgIHsiZm9ybWF0IiwgICAgICAgICAgICAgICAgKGdldHRlciltZW1vcnlfZm9ybWF0X2dldCwgICAgICBOVUxMLCBOVUxMfSwKLSAgICB7Iml0ZW1zaXplIiwgICAgICAgIChnZXR0ZXIpbWVtb3J5X2l0ZW1zaXplX2dldCwgICAgTlVMTCwgTlVMTH0sCi0gICAgeyJzaGFwZSIsICAgICAgICAgICAoZ2V0dGVyKW1lbW9yeV9zaGFwZV9nZXQsICAgICAgIE5VTEwsIE5VTEx9LAotICAgIHsic3RyaWRlcyIsICAgICAgICAgKGdldHRlciltZW1vcnlfc3RyaWRlc19nZXQsICAgICBOVUxMLCBOVUxMfSwKLSAgICB7InN1Ym9mZnNldHMiLCAgICAgIChnZXR0ZXIpbWVtb3J5X3N1Ym9mZnNldHNfZ2V0LCAgTlVMTCwgTlVMTH0sCi0gICAgeyJyZWFkb25seSIsICAgICAgICAoZ2V0dGVyKW1lbW9yeV9yZWFkb25seV9nZXQsICAgIE5VTEwsIE5VTEx9LAotICAgIHsibmRpbSIsICAgICAgICAgICAgKGdldHRlciltZW1vcnlfbmRpbV9nZXQsICAgICAgICBOVUxMLCBOVUxMfSwKK3N0YXRpYyBQeU9iamVjdCAqCittZW1vcnlfY19jb250aWd1b3VzKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZiwgUHlPYmplY3QgKmR1bW15KQoreworICAgIENIRUNLX1JFTEVBU0VEKHNlbGYpOworICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoTVZfQ19DT05USUdVT1VTKHNlbGYtPmZsYWdzKSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCittZW1vcnlfZl9jb250aWd1b3VzKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZiwgUHlPYmplY3QgKmR1bW15KQoreworICAgIENIRUNLX1JFTEVBU0VEKHNlbGYpOworICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoTVZfRl9DT05USUdVT1VTKHNlbGYtPmZsYWdzKSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCittZW1vcnlfY29udGlndW91cyhQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpkdW1teSkKK3sKKyAgICBDSEVDS19SRUxFQVNFRChzZWxmKTsKKyAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKE1WX0FOWV9DT05USUdVT1VTKHNlbGYtPmZsYWdzKSk7Cit9CisKK3N0YXRpYyBQeUdldFNldERlZiBtZW1vcnlfZ2V0c2V0bGlzdFtdID0geworICAgIHsib2JqIiwgICAgICAgICAgICAgKGdldHRlciltZW1vcnlfb2JqX2dldCwgICAgICAgIE5VTEwsIE5VTEx9LAorICAgIHsibmJ5dGVzIiwgICAgICAgICAgKGdldHRlciltZW1vcnlfbmJ5dGVzX2dldCwgICAgIE5VTEwsIE5VTEx9LAorICAgIHsicmVhZG9ubHkiLCAgICAgICAgKGdldHRlciltZW1vcnlfcmVhZG9ubHlfZ2V0LCAgIE5VTEwsIE5VTEx9LAorICAgIHsiaXRlbXNpemUiLCAgICAgICAgKGdldHRlciltZW1vcnlfaXRlbXNpemVfZ2V0LCAgIE5VTEwsIE5VTEx9LAorICAgIHsiZm9ybWF0IiwgICAgICAgICAgKGdldHRlciltZW1vcnlfZm9ybWF0X2dldCwgICAgIE5VTEwsIE5VTEx9LAorICAgIHsibmRpbSIsICAgICAgICAgICAgKGdldHRlciltZW1vcnlfbmRpbV9nZXQsICAgICAgIE5VTEwsIE5VTEx9LAorICAgIHsic2hhcGUiLCAgICAgICAgICAgKGdldHRlciltZW1vcnlfc2hhcGVfZ2V0LCAgICAgIE5VTEwsIE5VTEx9LAorICAgIHsic3RyaWRlcyIsICAgICAgICAgKGdldHRlciltZW1vcnlfc3RyaWRlc19nZXQsICAgIE5VTEwsIE5VTEx9LAorICAgIHsic3Vib2Zmc2V0cyIsICAgICAgKGdldHRlciltZW1vcnlfc3Vib2Zmc2V0c19nZXQsIE5VTEwsIE5VTEx9LAorICAgIHsiY19jb250aWd1b3VzIiwgICAgKGdldHRlciltZW1vcnlfY19jb250aWd1b3VzLCAgIE5VTEwsIE5VTEx9LAorICAgIHsiZl9jb250aWd1b3VzIiwgICAgKGdldHRlciltZW1vcnlfZl9jb250aWd1b3VzLCAgIE5VTEwsIE5VTEx9LAorICAgIHsiY29udGlndW91cyIsICAgICAgKGdldHRlciltZW1vcnlfY29udGlndW91cywgICAgIE5VTEwsIE5VTEx9LAogICAgIHtOVUxMLCBOVUxMLCBOVUxMLCBOVUxMfSwKIH07CiAKIAotc3RhdGljIFB5T2JqZWN0ICoKLW1lbW9yeV90b2J5dGVzKFB5TWVtb3J5Vmlld09iamVjdCAqbWVtLCBQeU9iamVjdCAqbm9hcmdzKQotewotICAgIENIRUNLX1JFTEVBU0VEKG1lbSk7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MoCi0gICAgICAgICAgICAoUHlPYmplY3QgKikgJlB5Qnl0ZXNfVHlwZSwgbWVtLCBOVUxMKTsKLX0KLQotLyogVE9ETzogcmV3cml0ZSB0aGlzIGZ1bmN0aW9uIHVzaW5nIHRoZSBzdHJ1Y3QgbW9kdWxlIHRvIHVucGFjawotICAgZWFjaCBidWZmZXIgaXRlbSAqLwotCi1zdGF0aWMgUHlPYmplY3QgKgotbWVtb3J5X3RvbGlzdChQeU1lbW9yeVZpZXdPYmplY3QgKm1lbSwgUHlPYmplY3QgKm5vYXJncykKLXsKLSAgICBQeV9idWZmZXIgKnZpZXcgPSAmKG1lbS0+dmlldyk7Ci0gICAgUHlfc3NpemVfdCBpOwotICAgIFB5T2JqZWN0ICpyZXMsICppdGVtOwotICAgIGNoYXIgKmJ1ZjsKLQotICAgIENIRUNLX1JFTEVBU0VEKG1lbSk7Ci0gICAgaWYgKHN0cmNtcCh2aWV3LT5mb3JtYXQsICJCIikgfHwgdmlldy0+aXRlbXNpemUgIT0gMSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvciwgCi0gICAgICAgICAgICAgICAgInRvbGlzdCgpIG9ubHkgc3VwcG9ydHMgYnl0ZSB2aWV3cyIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgaWYgKHZpZXctPm5kaW0gIT0gMSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvciwgCi0gICAgICAgICAgICAgICAgInRvbGlzdCgpIG9ubHkgc3VwcG9ydHMgb25lLWRpbWVuc2lvbmFsIG9iamVjdHMiKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIHJlcyA9IFB5TGlzdF9OZXcodmlldy0+bGVuKTsKLSAgICBpZiAocmVzID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGJ1ZiA9IHZpZXctPmJ1ZjsKLSAgICBmb3IgKGkgPSAwOyBpIDwgdmlldy0+bGVuOyBpKyspIHsKLSAgICAgICAgaXRlbSA9IFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nKCh1bnNpZ25lZCBjaGFyKSAqYnVmKTsKLSAgICAgICAgaWYgKGl0ZW0gPT0gTlVMTCkgewotICAgICAgICAgICAgUHlfREVDUkVGKHJlcyk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBQeUxpc3RfU0VUX0lURU0ocmVzLCBpLCBpdGVtKTsKLSAgICAgICAgYnVmKys7Ci0gICAgfQotICAgIHJldHVybiByZXM7Ci19Ci0KLXN0YXRpYyB2b2lkCi1kb19yZWxlYXNlKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZikKLXsKLSAgICBpZiAoc2VsZi0+dmlldy5vYmogIT0gTlVMTCkgewotICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCYoc2VsZi0+dmlldykpOwotICAgIH0KLSAgICBzZWxmLT52aWV3Lm9iaiA9IE5VTEw7Ci0gICAgc2VsZi0+dmlldy5idWYgPSBOVUxMOwotfQotCi1zdGF0aWMgUHlPYmplY3QgKgotbWVtb3J5X2VudGVyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBDSEVDS19SRUxFQVNFRChzZWxmKTsKLSAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgcmV0dXJuIHNlbGY7Ci19Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1tZW1vcnlfZXhpdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgZG9fcmVsZWFzZSgoUHlNZW1vcnlWaWV3T2JqZWN0ICopIHNlbGYpOwotICAgIFB5X1JFVFVSTl9OT05FOwotfQotCiBzdGF0aWMgUHlNZXRob2REZWYgbWVtb3J5X21ldGhvZHNbXSA9IHsKLSAgICB7InJlbGVhc2UiLCBtZW1vcnlfZXhpdCwgTUVUSF9OT0FSR1N9LAotICAgIHsidG9ieXRlcyIsIChQeUNGdW5jdGlvbiltZW1vcnlfdG9ieXRlcywgTUVUSF9OT0FSR1MsIE5VTEx9LAotICAgIHsidG9saXN0IiwgKFB5Q0Z1bmN0aW9uKW1lbW9yeV90b2xpc3QsIE1FVEhfTk9BUkdTLCBOVUxMfSwKLSAgICB7Il9fZW50ZXJfXyIsIG1lbW9yeV9lbnRlciwgTUVUSF9OT0FSR1N9LAotICAgIHsiX19leGl0X18iLCBtZW1vcnlfZXhpdCwgTUVUSF9WQVJBUkdTfSwKLSAgICB7TlVMTCwgICAgICAgICAgTlVMTH0gICAgICAgICAgIC8qIHNlbnRpbmVsICovCi19OwotCi0KLXN0YXRpYyB2b2lkCi1tZW1vcnlfZGVhbGxvYyhQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYpCi17Ci0gICAgX1B5T2JqZWN0X0dDX1VOVFJBQ0soc2VsZik7Ci0gICAgZG9fcmVsZWFzZShzZWxmKTsKLSAgICBQeU9iamVjdF9HQ19EZWwoc2VsZik7Ci19Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1tZW1vcnlfcmVwcihQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYpCi17Ci0gICAgaWYgKElTX1JFTEVBU0VEKHNlbGYpKQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjxyZWxlYXNlZCBtZW1vcnkgYXQgJXA+Iiwgc2VsZik7Ci0gICAgZWxzZQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjxtZW1vcnkgYXQgJXA+Iiwgc2VsZik7Ci19Ci0KLS8qIFNlcXVlbmNlIG1ldGhvZHMgKi8KLXN0YXRpYyBQeV9zc2l6ZV90Ci1tZW1vcnlfbGVuZ3RoKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZikKLXsKLSAgICBDSEVDS19SRUxFQVNFRF9JTlQoc2VsZik7Ci0gICAgcmV0dXJuIGdldF9zaGFwZTAoJnNlbGYtPnZpZXcpOwotfQotCi0vKiBBbHRlcm5hdGUgdmVyc2lvbiBvZiBtZW1vcnlfc3ViY3JpcHQgdGhhdCBvbmx5IGFjY2VwdHMgaW5kaWNlcy4KLSAgIFVzZWQgYnkgUHlTZXFJdGVyX05ldygpLgotKi8KLXN0YXRpYyBQeU9iamVjdCAqCi1tZW1vcnlfaXRlbShQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYsIFB5X3NzaXplX3QgcmVzdWx0KQotewotICAgIFB5X2J1ZmZlciAqdmlldyA9ICYoc2VsZi0+dmlldyk7Ci0KLSAgICBDSEVDS19SRUxFQVNFRChzZWxmKTsKLSAgICBpZiAodmlldy0+bmRpbSA9PSAwKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JbmRleEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgImludmFsaWQgaW5kZXhpbmcgb2YgMC1kaW0gbWVtb3J5Iik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBpZiAodmlldy0+bmRpbSA9PSAxKSB7Ci0gICAgICAgIC8qIFJldHVybiBhIGJ5dGVzIG9iamVjdCAqLwotICAgICAgICBjaGFyICpwdHI7Ci0gICAgICAgIHB0ciA9IChjaGFyICopdmlldy0+YnVmOwotICAgICAgICBpZiAocmVzdWx0IDwgMCkgewotICAgICAgICAgICAgcmVzdWx0ICs9IGdldF9zaGFwZTAodmlldyk7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKChyZXN1bHQgPCAwKSB8fCAocmVzdWx0ID49IGdldF9zaGFwZTAodmlldykpKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSW5kZXhFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImluZGV4IG91dCBvZiBib3VuZHMiKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIGlmICh2aWV3LT5zdHJpZGVzID09IE5VTEwpCi0gICAgICAgICAgICBwdHIgKz0gdmlldy0+aXRlbXNpemUgKiByZXN1bHQ7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHB0ciArPSB2aWV3LT5zdHJpZGVzWzBdICogcmVzdWx0OwotICAgICAgICBpZiAodmlldy0+c3Vib2Zmc2V0cyAhPSBOVUxMICYmCi0gICAgICAgICAgICB2aWV3LT5zdWJvZmZzZXRzWzBdID49IDApIHsKLSAgICAgICAgICAgIHB0ciA9ICooKGNoYXIgKiopcHRyKSArIHZpZXctPnN1Ym9mZnNldHNbMF07Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUocHRyLCB2aWV3LT5pdGVtc2l6ZSk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLyogUmV0dXJuIGEgbmV3IG1lbW9yeS12aWV3IG9iamVjdCAqLwotICAgICAgICBQeV9idWZmZXIgbmV3dmlldzsKLSAgICAgICAgbWVtc2V0KCZuZXd2aWV3LCAwLCBzaXplb2YobmV3dmlldykpOwotICAgICAgICAvKiBYWFg6ICBUaGlzIG5lZWRzIHRvIGJlIGZpeGVkIHNvIGl0IGFjdHVhbGx5IHJldHVybnMgYSBzdWItdmlldyAqLwotICAgICAgICByZXR1cm4gUHlNZW1vcnlWaWV3X0Zyb21CdWZmZXIoJm5ld3ZpZXcpOwotICAgIH0KLX0KLQotLyoKLSAgbWVtW29ial0gcmV0dXJucyBhIGJ5dGVzIG9iamVjdCBob2xkaW5nIHRoZSBkYXRhIGZvciBvbmUgZWxlbWVudCBpZgotICAgICAgICAgICBvYmogZnVsbHkgaW5kZXhlcyB0aGUgbWVtb3J5IHZpZXcgb3IgYW5vdGhlciBtZW1vcnktdmlldyBvYmplY3QKLSAgICAgICAgICAgaWYgaXQgZG9lcyBub3QuCi0KLSAgICAgICAgICAgMC1kIG1lbW9yeS12aWV3IG9iamVjdHMgY2FuIGJlIHJlZmVyZW5jZWQgdXNpbmcgLi4uIG9yICgpIGJ1dAotICAgICAgICAgICBub3Qgd2l0aCBhbnl0aGluZyBlbHNlLgotICovCi1zdGF0aWMgUHlPYmplY3QgKgotbWVtb3J5X3N1YnNjcmlwdChQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICprZXkpCi17Ci0gICAgUHlfYnVmZmVyICp2aWV3OwotICAgIHZpZXcgPSAmKHNlbGYtPnZpZXcpOwotICAgIAotICAgIENIRUNLX1JFTEVBU0VEKHNlbGYpOwotICAgIGlmICh2aWV3LT5uZGltID09IDApIHsKLSAgICAgICAgaWYgKGtleSA9PSBQeV9FbGxpcHNpcyB8fAotICAgICAgICAgICAgKFB5VHVwbGVfQ2hlY2soa2V5KSAmJiBQeVR1cGxlX0dFVF9TSVpFKGtleSk9PTApKSB7Ci0gICAgICAgICAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopc2VsZjsKLSAgICAgICAgfQotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JbmRleEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW52YWxpZCBpbmRleGluZyBvZiAwLWRpbSBtZW1vcnkiKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgfQotICAgIGlmIChQeUluZGV4X0NoZWNrKGtleSkpIHsKLSAgICAgICAgUHlfc3NpemVfdCByZXN1bHQ7Ci0gICAgICAgIHJlc3VsdCA9IFB5TnVtYmVyX0FzU3NpemVfdChrZXksIE5VTEwpOwotICAgICAgICBpZiAocmVzdWx0ID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIHJldHVybiBtZW1vcnlfaXRlbShzZWxmLCByZXN1bHQpOwotICAgIH0KLSAgICBlbHNlIGlmIChQeVNsaWNlX0NoZWNrKGtleSkpIHsKLSAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgc3RvcCwgc3RlcCwgc2xpY2VsZW5ndGg7Ci0KLSAgICAgICAgaWYgKFB5U2xpY2VfR2V0SW5kaWNlc0V4KGtleSwgZ2V0X3NoYXBlMCh2aWV3KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFydCwgJnN0b3AsICZzdGVwLCAmc2xpY2VsZW5ndGgpIDwgMCkgewotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAKLSAgICAgICAgaWYgKHN0ZXAgPT0gMSAmJiB2aWV3LT5uZGltID09IDEpIHsKLSAgICAgICAgICAgIFB5X2J1ZmZlciBuZXd2aWV3OwotICAgICAgICAgICAgdm9pZCAqbmV3YnVmID0gKGNoYXIgKikgdmlldy0+YnVmCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIHN0YXJ0ICogdmlldy0+aXRlbXNpemU7Ci0gICAgICAgICAgICBpbnQgbmV3ZmxhZ3MgPSB2aWV3LT5yZWFkb25seQotICAgICAgICAgICAgICAgICAgICA/IFB5QlVGX0NPTlRJR19STyA6IFB5QlVGX0NPTlRJRzsKLSAgICAKLSAgICAgICAgICAgIC8qIFhYWCBUaGVyZSBzaG91bGQgYmUgYW4gQVBJIHRvIGNyZWF0ZSBhIHN1YmJ1ZmZlciAqLwotICAgICAgICAgICAgaWYgKHZpZXctPm9iaiAhPSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0dldEJ1ZmZlcih2aWV3LT5vYmosICZuZXd2aWV3LCBuZXdmbGFncykgPT0gLTEpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgbmV3dmlldyA9ICp2aWV3OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgbmV3dmlldy5idWYgPSBuZXdidWY7Ci0gICAgICAgICAgICBuZXd2aWV3LmxlbiA9IHNsaWNlbGVuZ3RoICogbmV3dmlldy5pdGVtc2l6ZTsKLSAgICAgICAgICAgIG5ld3ZpZXcuZm9ybWF0ID0gdmlldy0+Zm9ybWF0OwotICAgICAgICAgICAgbmV3dmlldy5zaGFwZSA9ICYobmV3dmlldy5zbWFsbHRhYmxlWzBdKTsKLSAgICAgICAgICAgIG5ld3ZpZXcuc2hhcGVbMF0gPSBzbGljZWxlbmd0aDsKLSAgICAgICAgICAgIG5ld3ZpZXcuc3RyaWRlcyA9ICYobmV3dmlldy5pdGVtc2l6ZSk7Ci0gICAgICAgICAgICByZXR1cm4gUHlNZW1vcnlWaWV3X0Zyb21CdWZmZXIoJm5ld3ZpZXcpOwotICAgICAgICB9Ci0gICAgICAgIFB5RXJyX1NldE5vbmUoUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvcik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAiY2Fubm90IGluZGV4IG1lbW9yeSB1c2luZyBcIiUuMjAwc1wiIiwgCi0gICAgICAgIGtleS0+b2JfdHlwZS0+dHBfbmFtZSk7Ci0gICAgcmV0dXJuIE5VTEw7Ci19Ci0KLQotLyogTmVlZCB0byBzdXBwb3J0IGFzc2lnbmluZyBtZW1vcnkgaWYgd2UgY2FuICovCi1zdGF0aWMgaW50Ci1tZW1vcnlfYXNzX3N1YihQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICprZXksIFB5T2JqZWN0ICp2YWx1ZSkKLXsKLSAgICBQeV9zc2l6ZV90IHN0YXJ0LCBsZW4sIGJ5dGVsZW47Ci0gICAgUHlfYnVmZmVyIHNyY3ZpZXc7Ci0gICAgUHlfYnVmZmVyICp2aWV3ID0gJihzZWxmLT52aWV3KTsKLSAgICBjaGFyICpzcmNidWYsICpkZXN0YnVmOwotCi0gICAgQ0hFQ0tfUkVMRUFTRURfSU5UKHNlbGYpOwotICAgIGlmICh2aWV3LT5yZWFkb25seSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgImNhbm5vdCBtb2RpZnkgcmVhZC1vbmx5IG1lbW9yeSIpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiY2Fubm90IGRlbGV0ZSBtZW1vcnkiKTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBpZiAodmlldy0+bmRpbSAhPSAxKSB7Ci0gICAgICAgIFB5RXJyX1NldE5vbmUoUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvcik7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgaWYgKFB5SW5kZXhfQ2hlY2soa2V5KSkgewotICAgICAgICBzdGFydCA9IFB5TnVtYmVyX0FzU3NpemVfdChrZXksIE5VTEwpOwotICAgICAgICBpZiAoc3RhcnQgPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgaWYgKHN0YXJ0IDwgMCkgewotICAgICAgICAgICAgc3RhcnQgKz0gZ2V0X3NoYXBlMCh2aWV3KTsKLSAgICAgICAgfQotICAgICAgICBpZiAoKHN0YXJ0IDwgMCkgfHwgKHN0YXJ0ID49IGdldF9zaGFwZTAodmlldykpKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSW5kZXhFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW5kZXggb3V0IG9mIGJvdW5kcyIpOwotICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICB9Ci0gICAgICAgIGxlbiA9IDE7Ci0gICAgfQotICAgIGVsc2UgaWYgKFB5U2xpY2VfQ2hlY2soa2V5KSkgewotICAgICAgICBQeV9zc2l6ZV90IHN0b3AsIHN0ZXA7Ci0KLSAgICAgICAgaWYgKFB5U2xpY2VfR2V0SW5kaWNlc0V4KGtleSwgZ2V0X3NoYXBlMCh2aWV3KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnQsICZzdG9wLCAmc3RlcCwgJmxlbikgPCAwKSB7Ci0gICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKHN0ZXAgIT0gMSkgewotICAgICAgICAgICAgUHlFcnJfU2V0Tm9uZShQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yKTsKLSAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICJjYW5ub3QgaW5kZXggbWVtb3J5IHVzaW5nIFwiJS4yMDBzXCIiLCAKLSAgICAgICAgICAgIGtleS0+b2JfdHlwZS0+dHBfbmFtZSk7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgaWYgKFB5T2JqZWN0X0dldEJ1ZmZlcih2YWx1ZSwgJnNyY3ZpZXcsIFB5QlVGX0NPTlRJR19STykgPT0gLTEpIHsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICAvKiBYWFggc2hvdWxkIHdlIGFsbG93IGFzc2lnbm1lbnQgb2YgZGlmZmVyZW50IGl0ZW0gc2l6ZXMKLSAgICAgICBhcyBsb25nIGFzIHRoZSBieXRlIGxlbmd0aCBpcyB0aGUgc2FtZT8KLSAgICAgICAoZS5nLiBhc3NpZ24gMiBzaG9ydHMgdG8gYSA0LWJ5dGUgc2xpY2UpICovCi0gICAgaWYgKHNyY3ZpZXcuaXRlbXNpemUgIT0gdmlldy0+aXRlbXNpemUpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICJtaXNtYXRjaGluZyBpdGVtIHNpemVzIGZvciBcIiUuMjAwc1wiIGFuZCBcIiUuMjAwc1wiIiwgCi0gICAgICAgICAgICB2aWV3LT5vYmotPm9iX3R5cGUtPnRwX25hbWUsIHNyY3ZpZXcub2JqLT5vYl90eXBlLT50cF9uYW1lKTsKLSAgICAgICAgZ290byBfZXJyb3I7Ci0gICAgfQotICAgIGJ5dGVsZW4gPSBsZW4gKiB2aWV3LT5pdGVtc2l6ZTsKLSAgICBpZiAoYnl0ZWxlbiAhPSBzcmN2aWV3LmxlbikgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICJjYW5ub3QgbW9kaWZ5IHNpemUgb2YgbWVtb3J5dmlldyBvYmplY3QiKTsKLSAgICAgICAgZ290byBfZXJyb3I7Ci0gICAgfQotICAgIC8qIERvIHRoZSBhY3R1YWwgY29weSAqLwotICAgIGRlc3RidWYgPSAoY2hhciAqKSB2aWV3LT5idWYgKyBzdGFydCAqIHZpZXctPml0ZW1zaXplOwotICAgIHNyY2J1ZiA9IChjaGFyICopIHNyY3ZpZXcuYnVmOwotICAgIGlmIChkZXN0YnVmICsgYnl0ZWxlbiA8IHNyY2J1ZiB8fCBzcmNidWYgKyBieXRlbGVuIDwgZGVzdGJ1ZikKLSAgICAgICAgLyogTm8gb3ZlcmxhcHBpbmcgKi8KLSAgICAgICAgbWVtY3B5KGRlc3RidWYsIHNyY2J1ZiwgYnl0ZWxlbik7Ci0gICAgZWxzZQotICAgICAgICBtZW1tb3ZlKGRlc3RidWYsIHNyY2J1ZiwgYnl0ZWxlbik7Ci0KLSAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZzcmN2aWV3KTsKLSAgICByZXR1cm4gMDsKLQotX2Vycm9yOgotICAgIFB5QnVmZmVyX1JlbGVhc2UoJnNyY3ZpZXcpOwotICAgIHJldHVybiAtMTsKLX0KLQotc3RhdGljIFB5T2JqZWN0ICoKLW1lbW9yeV9yaWNoY29tcGFyZShQeU9iamVjdCAqdiwgUHlPYmplY3QgKncsIGludCBvcCkKLXsKLSAgICBQeV9idWZmZXIgdnYsIHd3OwotICAgIGludCBlcXVhbCA9IDA7Ci0gICAgUHlPYmplY3QgKnJlczsKLQotICAgIHZ2Lm9iaiA9IE5VTEw7Ci0gICAgd3cub2JqID0gTlVMTDsKLSAgICBpZiAob3AgIT0gUHlfRVEgJiYgb3AgIT0gUHlfTkUpCi0gICAgICAgIGdvdG8gX25vdGltcGw7Ci0gICAgaWYgKChQeU1lbW9yeVZpZXdfQ2hlY2sodikgJiYgSVNfUkVMRUFTRUQodikpIHx8Ci0gICAgICAgIChQeU1lbW9yeVZpZXdfQ2hlY2sodykgJiYgSVNfUkVMRUFTRUQodykpKSB7Ci0gICAgICAgIGVxdWFsID0gKHYgPT0gdyk7Ci0gICAgICAgIGdvdG8gX2VuZDsKLSAgICB9Ci0gICAgaWYgKFB5T2JqZWN0X0dldEJ1ZmZlcih2LCAmdnYsIFB5QlVGX0NPTlRJR19STykgPT0gLTEpIHsKLSAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgZ290byBfbm90aW1wbDsKLSAgICB9Ci0gICAgaWYgKFB5T2JqZWN0X0dldEJ1ZmZlcih3LCAmd3csIFB5QlVGX0NPTlRJR19STykgPT0gLTEpIHsKLSAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgZ290byBfbm90aW1wbDsKLSAgICB9Ci0KLSAgICBpZiAodnYuaXRlbXNpemUgIT0gd3cuaXRlbXNpemUgfHwgdnYubGVuICE9IHd3LmxlbikKLSAgICAgICAgZ290byBfZW5kOwotCi0gICAgZXF1YWwgPSAhbWVtY21wKHZ2LmJ1Ziwgd3cuYnVmLCB2di5sZW4pOwotCi1fZW5kOgotICAgIFB5QnVmZmVyX1JlbGVhc2UoJnZ2KTsKLSAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZ3dyk7Ci0gICAgaWYgKChlcXVhbCAmJiBvcCA9PSBQeV9FUSkgfHwgKCFlcXVhbCAmJiBvcCA9PSBQeV9ORSkpCi0gICAgICAgIHJlcyA9IFB5X1RydWU7Ci0gICAgZWxzZQotICAgICAgICByZXMgPSBQeV9GYWxzZTsKLSAgICBQeV9JTkNSRUYocmVzKTsKLSAgICByZXR1cm4gcmVzOwotCi1fbm90aW1wbDoKLSAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZ2dik7Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmd3cpOwotICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotfQotCi0KLXN0YXRpYyBpbnQKLW1lbW9yeV90cmF2ZXJzZShQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYsIHZpc2l0cHJvYyB2aXNpdCwgdm9pZCAqYXJnKQotewotICAgIGlmIChzZWxmLT52aWV3Lm9iaiAhPSBOVUxMKQotICAgICAgICBQeV9WSVNJVChzZWxmLT52aWV3Lm9iaik7Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyBpbnQKLW1lbW9yeV9jbGVhcihQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYpCi17Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmc2VsZi0+dmlldyk7Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLQotLyogQXMgbWFwcGluZyAqLwotc3RhdGljIFB5TWFwcGluZ01ldGhvZHMgbWVtb3J5X2FzX21hcHBpbmcgPSB7Ci0gICAgKGxlbmZ1bmMpbWVtb3J5X2xlbmd0aCwgICAgICAgICAgICAgICAvKiBtcF9sZW5ndGggKi8KLSAgICAoYmluYXJ5ZnVuYyltZW1vcnlfc3Vic2NyaXB0LCAgICAgICAgIC8qIG1wX3N1YnNjcmlwdCAqLwotICAgIChvYmpvYmphcmdwcm9jKW1lbW9yeV9hc3Nfc3ViLCAgICAgICAgLyogbXBfYXNzX3N1YnNjcmlwdCAqLwotfTsKLQotc3RhdGljIFB5U2VxdWVuY2VNZXRob2RzIG1lbW9yeV9hc19zZXF1ZW5jZSA9IHsKLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc3FfbGVuZ3RoICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNxX2NvbmNhdCAqLwotICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzcV9yZXBlYXQgKi8KLSAgICAgICAgKHNzaXplYXJnZnVuYyltZW1vcnlfaXRlbSwgICAgICAgICAgLyogc3FfaXRlbSAqLwotfTsKLQotLyogQnVmZmVyIG1ldGhvZHMgKi8KLQotc3RhdGljIFB5QnVmZmVyUHJvY3MgbWVtb3J5X2FzX2J1ZmZlciA9IHsKLSAgICAoZ2V0YnVmZmVycHJvYyltZW1vcnlfZ2V0YnVmLCAgICAgICAgIC8qIGJmX2dldGJ1ZmZlciAqLwotICAgIChyZWxlYXNlYnVmZmVycHJvYyltZW1vcnlfcmVsZWFzZWJ1ZiwgLyogYmZfcmVsZWFzZWJ1ZmZlciAqLworICAgIHsicmVsZWFzZSIsICAgICAoUHlDRnVuY3Rpb24pbWVtb3J5X3JlbGVhc2UsIE1FVEhfTk9BUkdTfSwKKyAgICB7InRvYnl0ZXMiLCAgICAgKFB5Q0Z1bmN0aW9uKW1lbW9yeV90b2J5dGVzLCBNRVRIX05PQVJHUywgTlVMTH0sCisgICAgeyJ0b2xpc3QiLCAgICAgIChQeUNGdW5jdGlvbiltZW1vcnlfdG9saXN0LCBNRVRIX05PQVJHUywgTlVMTH0sCisgICAgeyJjYXN0IiwgICAgICAgIChQeUNGdW5jdGlvbiltZW1vcnlfY2FzdCwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsIE5VTEx9LAorICAgIHsiX19lbnRlcl9fIiwgICBtZW1vcnlfZW50ZXIsIE1FVEhfTk9BUkdTfSwKKyAgICB7Il9fZXhpdF9fIiwgICAgbWVtb3J5X2V4aXQsIE1FVEhfVkFSQVJHU30sCisgICAge05VTEwsICAgICAgICAgIE5VTEx9CiB9OwogCiAKIFB5VHlwZU9iamVjdCBQeU1lbW9yeVZpZXdfVHlwZSA9IHsKICAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoJlB5VHlwZV9UeXBlLCAwKQotICAgICJtZW1vcnl2aWV3IiwKLSAgICBzaXplb2YoUHlNZW1vcnlWaWV3T2JqZWN0KSwKLSAgICAwLAorICAgICJtZW1vcnl2aWV3IiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX25hbWUgKi8KKyAgICBvZmZzZXRvZihQeU1lbW9yeVZpZXdPYmplY3QsIG9iX2FycmF5KSwgICAvKiB0cF9iYXNpY3NpemUgKi8KKyAgICBzaXplb2YoUHlfc3NpemVfdCksICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVtc2l6ZSAqLwogICAgIChkZXN0cnVjdG9yKW1lbW9yeV9kZWFsbG9jLCAgICAgICAgICAgICAgIC8qIHRwX2RlYWxsb2MgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9wcmludCAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHIgKi8KQEAgLTgzMCw3ICsyNTk3LDcgQEAKICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KICAgICAmbWVtb3J5X2FzX3NlcXVlbmNlLCAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLwogICAgICZtZW1vcnlfYXNfbWFwcGluZywgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX21hcHBpbmcgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCisgICAgKGhhc2hmdW5jKW1lbW9yeV9oYXNoLCAgICAgICAgICAgICAgICAgICAgLyogdHBfaGFzaCAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KICAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRybyAqLwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9tZXRob2RvYmplY3QuYyBiL09iamVjdHMvbWV0aG9kb2JqZWN0LmMKaW5kZXggZjFhOWY0Yi4uYzNhNjQwOSAxMDA2NDQKLS0tIGEvT2JqZWN0cy9tZXRob2RvYmplY3QuYworKysgYi9PYmplY3RzL21ldGhvZG9iamVjdC5jCkBAIC00NCw3ICs0NCw3IEBACiAgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuICgoUHlDRnVuY3Rpb25PYmplY3QgKilvcCkgLT4gbV9tbCAtPiBtbF9tZXRoOworICAgIHJldHVybiBQeUNGdW5jdGlvbl9HRVRfRlVOQ1RJT04ob3ApOwogfQogCiBQeU9iamVjdCAqCkBAIC01NCw3ICs1NCw3IEBACiAgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuICgoUHlDRnVuY3Rpb25PYmplY3QgKilvcCkgLT4gbV9zZWxmOworICAgIHJldHVybiBQeUNGdW5jdGlvbl9HRVRfU0VMRihvcCk7CiB9CiAKIGludApAQCAtNjQsNyArNjQsNyBAQAogICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgICByZXR1cm4gKChQeUNGdW5jdGlvbk9iamVjdCAqKW9wKSAtPiBtX21sIC0+IG1sX2ZsYWdzOworICAgIHJldHVybiBQeUNGdW5jdGlvbl9HRVRfRkxBR1Mob3ApOwogfQogCiBQeU9iamVjdCAqCkBAIC0xNTEsNiArMTUxLDQxIEBACiAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKG0tPm1fbWwtPm1sX25hbWUpOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorbWV0aF9nZXRfX3F1YWxuYW1lX18oUHlDRnVuY3Rpb25PYmplY3QgKm0sIHZvaWQgKmNsb3N1cmUpCit7CisgICAgLyogSWYgX19zZWxmX18gaXMgYSBtb2R1bGUgb3IgTlVMTCwgcmV0dXJuIG0uX19uYW1lX18KKyAgICAgICAoZS5nLiBsZW4uX19xdWFsbmFtZV9fID09ICdsZW4nKQorCisgICAgICAgSWYgX19zZWxmX18gaXMgYSB0eXBlLCByZXR1cm4gbS5fX3NlbGZfXy5fX3F1YWxuYW1lX18gKyAnLicgKyBtLl9fbmFtZV9fCisgICAgICAgKGUuZy4gZGljdC5mcm9ta2V5cy5fX3F1YWxuYW1lX18gPT0gJ2RpY3QuZnJvbWtleXMnKQorCisgICAgICAgT3RoZXJ3aXNlIHJldHVybiB0eXBlKG0uX19zZWxmX18pLl9fcXVhbG5hbWVfXyArICcuJyArIG0uX19uYW1lX18KKyAgICAgICAoZS5nLiBbXS5hcHBlbmQuX19xdWFsbmFtZV9fID09ICdsaXN0LmFwcGVuZCcpICovCisgICAgUHlPYmplY3QgKnR5cGUsICp0eXBlX3F1YWxuYW1lLCAqcmVzOworICAgIF9QeV9JREVOVElGSUVSKF9fcXVhbG5hbWVfXyk7CisKKyAgICBpZiAobS0+bV9zZWxmID09IE5VTEwgfHwgUHlNb2R1bGVfQ2hlY2sobS0+bV9zZWxmKSkKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKG0tPm1fbWwtPm1sX25hbWUpOworCisgICAgdHlwZSA9IFB5VHlwZV9DaGVjayhtLT5tX3NlbGYpID8gbS0+bV9zZWxmIDogKFB5T2JqZWN0KilQeV9UWVBFKG0tPm1fc2VsZik7CisKKyAgICB0eXBlX3F1YWxuYW1lID0gX1B5T2JqZWN0X0dldEF0dHJJZCh0eXBlLCAmUHlJZF9fX3F1YWxuYW1lX18pOworICAgIGlmICh0eXBlX3F1YWxuYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodHlwZV9xdWFsbmFtZSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIjxtZXRob2Q+Ll9fY2xhc3NfXy4iCisgICAgICAgICAgICAgICAgICAgICAgICAiX19xdWFsbmFtZV9fIGlzIG5vdCBhIHVuaWNvZGUgb2JqZWN0Iik7CisgICAgICAgIFB5X1hERUNSRUYodHlwZV9xdWFsbmFtZSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJlcyA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlUy4lcyIsIHR5cGVfcXVhbG5hbWUsIG0tPm1fbWwtPm1sX25hbWUpOworICAgIFB5X0RFQ1JFRih0eXBlX3F1YWxuYW1lKTsKKyAgICByZXR1cm4gcmVzOworfQorCiBzdGF0aWMgaW50CiBtZXRoX3RyYXZlcnNlKFB5Q0Z1bmN0aW9uT2JqZWN0ICptLCB2aXNpdHByb2MgdmlzaXQsIHZvaWQgKmFyZykKIHsKQEAgLTE2NCw3ICsxOTksNyBAQAogewogICAgIFB5T2JqZWN0ICpzZWxmOwogCi0gICAgc2VsZiA9IG0tPm1fc2VsZjsKKyAgICBzZWxmID0gUHlDRnVuY3Rpb25fR0VUX1NFTEYobSk7CiAgICAgaWYgKHNlbGYgPT0gTlVMTCkKICAgICAgICAgc2VsZiA9IFB5X05vbmU7CiAgICAgUHlfSU5DUkVGKHNlbGYpOwpAQCAtMTc0LDYgKzIwOSw3IEBACiBzdGF0aWMgUHlHZXRTZXREZWYgbWV0aF9nZXRzZXRzIFtdID0gewogICAgIHsiX19kb2NfXyIsICAoZ2V0dGVyKW1ldGhfZ2V0X19kb2NfXywgIE5VTEwsIE5VTEx9LAogICAgIHsiX19uYW1lX18iLCAoZ2V0dGVyKW1ldGhfZ2V0X19uYW1lX18sIE5VTEwsIE5VTEx9LAorICAgIHsiX19xdWFsbmFtZV9fIiwgKGdldHRlciltZXRoX2dldF9fcXVhbG5hbWVfXywgTlVMTCwgTlVMTH0sCiAgICAgeyJfX3NlbGZfXyIsIChnZXR0ZXIpbWV0aF9nZXRfX3NlbGZfXywgTlVMTCwgTlVMTH0sCiAgICAgezB9CiB9OwpAQCAtMjA4LDggKzI0NCw3IEBACiAgICAgICAgICFQeUNGdW5jdGlvbl9DaGVjayhzZWxmKSB8fAogICAgICAgICAhUHlDRnVuY3Rpb25fQ2hlY2sob3RoZXIpKQogICAgIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgfQogICAgIGEgPSAoUHlDRnVuY3Rpb25PYmplY3QgKilzZWxmOwogICAgIGIgPSAoUHlDRnVuY3Rpb25PYmplY3QgKilvdGhlcjsKZGlmZiAtLWdpdCBhL09iamVjdHMvbW9kdWxlb2JqZWN0LmMgYi9PYmplY3RzL21vZHVsZW9iamVjdC5jCmluZGV4IGYzMWI1ZGEuLmI2OWJjZTYgMTAwNjQ0Ci0tLSBhL09iamVjdHMvbW9kdWxlb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9tb2R1bGVvYmplY3QuYwpAQCAtMjcsMzYgKzI3LDQ1IEBACiAKIAogUHlPYmplY3QgKgotUHlNb2R1bGVfTmV3KGNvbnN0IGNoYXIgKm5hbWUpCitQeU1vZHVsZV9OZXdPYmplY3QoUHlPYmplY3QgKm5hbWUpCiB7CiAgICAgUHlNb2R1bGVPYmplY3QgKm07Ci0gICAgUHlPYmplY3QgKm5hbWVvYmo7CiAgICAgbSA9IFB5T2JqZWN0X0dDX05ldyhQeU1vZHVsZU9iamVjdCwgJlB5TW9kdWxlX1R5cGUpOwogICAgIGlmIChtID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIG0tPm1kX2RlZiA9IE5VTEw7CiAgICAgbS0+bWRfc3RhdGUgPSBOVUxMOwotICAgIG5hbWVvYmogPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhuYW1lKTsKICAgICBtLT5tZF9kaWN0ID0gUHlEaWN0X05ldygpOwotICAgIGlmIChtLT5tZF9kaWN0ID09IE5VTEwgfHwgbmFtZW9iaiA9PSBOVUxMKQorICAgIGlmIChtLT5tZF9kaWN0ID09IE5VTEwpCiAgICAgICAgIGdvdG8gZmFpbDsKLSAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcobS0+bWRfZGljdCwgIl9fbmFtZV9fIiwgbmFtZW9iaikgIT0gMCkKKyAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcobS0+bWRfZGljdCwgIl9fbmFtZV9fIiwgbmFtZSkgIT0gMCkKICAgICAgICAgZ290byBmYWlsOwogICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhtLT5tZF9kaWN0LCAiX19kb2NfXyIsIFB5X05vbmUpICE9IDApCiAgICAgICAgIGdvdG8gZmFpbDsKICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcobS0+bWRfZGljdCwgIl9fcGFja2FnZV9fIiwgUHlfTm9uZSkgIT0gMCkKICAgICAgICAgZ290byBmYWlsOwotICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKICAgICBQeU9iamVjdF9HQ19UcmFjayhtKTsKICAgICByZXR1cm4gKFB5T2JqZWN0ICopbTsKIAogIGZhaWw6Ci0gICAgUHlfWERFQ1JFRihuYW1lb2JqKTsKICAgICBQeV9ERUNSRUYobSk7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKIFB5T2JqZWN0ICoKK1B5TW9kdWxlX05ldyhjb25zdCBjaGFyICpuYW1lKQoreworICAgIFB5T2JqZWN0ICpuYW1lb2JqLCAqbW9kdWxlOworICAgIG5hbWVvYmogPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhuYW1lKTsKKyAgICBpZiAobmFtZW9iaiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBtb2R1bGUgPSBQeU1vZHVsZV9OZXdPYmplY3QobmFtZW9iaik7CisgICAgUHlfREVDUkVGKG5hbWVvYmopOworICAgIHJldHVybiBtb2R1bGU7Cit9CisKKworUHlPYmplY3QgKgogUHlNb2R1bGVfQ3JlYXRlMihzdHJ1Y3QgUHlNb2R1bGVEZWYqIG1vZHVsZSwgaW50IG1vZHVsZV9hcGlfdmVyc2lvbikKIHsKICAgICBQeU9iamVjdCAqZCwgKnYsICpuOwpAQCAtMTY5LDI0ICsxNzgsMzUgQEAKICAgICByZXR1cm4gZDsKIH0KIAotY29uc3QgY2hhciAqCi1QeU1vZHVsZV9HZXROYW1lKFB5T2JqZWN0ICptKQorUHlPYmplY3QqCitQeU1vZHVsZV9HZXROYW1lT2JqZWN0KFB5T2JqZWN0ICptKQogewogICAgIFB5T2JqZWN0ICpkOwotICAgIFB5T2JqZWN0ICpuYW1lb2JqOworICAgIFB5T2JqZWN0ICpuYW1lOwogICAgIGlmICghUHlNb2R1bGVfQ2hlY2sobSkpIHsKICAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIGQgPSAoKFB5TW9kdWxlT2JqZWN0ICopbSktPm1kX2RpY3Q7CiAgICAgaWYgKGQgPT0gTlVMTCB8fAotICAgICAgICAobmFtZW9iaiA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKGQsICJfX25hbWVfXyIpKSA9PSBOVUxMIHx8Ci0gICAgICAgICFQeVVuaWNvZGVfQ2hlY2sobmFtZW9iaikpCisgICAgICAgIChuYW1lID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcoZCwgIl9fbmFtZV9fIikpID09IE5VTEwgfHwKKyAgICAgICAgIVB5VW5pY29kZV9DaGVjayhuYW1lKSkKICAgICB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwgIm5hbWVsZXNzIG1vZHVsZSIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIF9QeVVuaWNvZGVfQXNTdHJpbmcobmFtZW9iaik7CisgICAgUHlfSU5DUkVGKG5hbWUpOworICAgIHJldHVybiBuYW1lOworfQorCitjb25zdCBjaGFyICoKK1B5TW9kdWxlX0dldE5hbWUoUHlPYmplY3QgKm0pCit7CisgICAgUHlPYmplY3QgKm5hbWUgPSBQeU1vZHVsZV9HZXROYW1lT2JqZWN0KG0pOworICAgIGlmIChuYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIFB5X0RFQ1JFRihuYW1lKTsgICAvKiBtb2R1bGUgZGljdCBoYXMgc3RpbGwgYSByZWZlcmVuY2UgKi8KKyAgICByZXR1cm4gX1B5VW5pY29kZV9Bc1N0cmluZyhuYW1lKTsKIH0KIAogUHlPYmplY3QqCkBAIC0yMTksNyArMjM5LDcgQEAKICAgICBpZiAoZmlsZW9iaiA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB1dGY4ID0gX1B5VW5pY29kZV9Bc1N0cmluZyhmaWxlb2JqKTsKLSAgICBQeV9ERUNSRUYoZmlsZW9iaik7CisgICAgUHlfREVDUkVGKGZpbGVvYmopOyAgIC8qIG1vZHVsZSBkaWN0IGhhcyBzdGlsbCBhIHJlZmVyZW5jZSAqLwogICAgIHJldHVybiB1dGY4OwogfQogCkBAIC0yNjUsOCArMjg1LDggQEAKICAgICBwb3MgPSAwOwogICAgIHdoaWxlIChQeURpY3RfTmV4dChkLCAmcG9zLCAma2V5LCAmdmFsdWUpKSB7CiAgICAgICAgIGlmICh2YWx1ZSAhPSBQeV9Ob25lICYmIFB5VW5pY29kZV9DaGVjayhrZXkpKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFICp1ID0gUHlVbmljb2RlX0FTX1VOSUNPREUoa2V5KTsKLSAgICAgICAgICAgIGlmICh1WzBdID09ICdfJyAmJiB1WzFdICE9ICdfJykgeworICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEX0NIQVIoa2V5LCAwKSA9PSAnXycgJiYgCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQURfQ0hBUihrZXksIDEpICE9ICdfJykgewogICAgICAgICAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZyA+IDEpIHsKICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcyA9IF9QeVVuaWNvZGVfQXNTdHJpbmcoa2V5KTsKICAgICAgICAgICAgICAgICAgICAgaWYgKHMgIT0gTlVMTCkKQEAgLTI4Myw5ICszMDMsOCBAQAogICAgIHBvcyA9IDA7CiAgICAgd2hpbGUgKFB5RGljdF9OZXh0KGQsICZwb3MsICZrZXksICZ2YWx1ZSkpIHsKICAgICAgICAgaWYgKHZhbHVlICE9IFB5X05vbmUgJiYgUHlVbmljb2RlX0NoZWNrKGtleSkpIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKnUgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShrZXkpOwotICAgICAgICAgICAgaWYgKHVbMF0gIT0gJ18nCi0gICAgICAgICAgICAgICAgfHwgUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcoa2V5LCAiX19idWlsdGluc19fIikgIT0gMCkKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRF9DSEFSKGtleSwgMCkgIT0gJ18nIHx8CisgICAgICAgICAgICAgICAgUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcoa2V5LCAiX19idWlsdGluc19fIikgIT0gMCkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcgPiAxKSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnMgPSBfUHlVbmljb2RlX0FzU3RyaW5nKGtleSk7CkBAIC0zNDcsMjEgKzM2NiwyNSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIG1vZHVsZV9yZXByKFB5TW9kdWxlT2JqZWN0ICptKQogewotICAgIGNvbnN0IGNoYXIgKm5hbWU7Ci0gICAgUHlPYmplY3QgKmZpbGVuYW1lLCAqcmVwcjsKKyAgICBQeU9iamVjdCAqbmFtZSwgKmZpbGVuYW1lLCAqcmVwcjsKIAotICAgIG5hbWUgPSBQeU1vZHVsZV9HZXROYW1lKChQeU9iamVjdCAqKW0pOworICAgIG5hbWUgPSBQeU1vZHVsZV9HZXROYW1lT2JqZWN0KChQeU9iamVjdCAqKW0pOwogICAgIGlmIChuYW1lID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgbmFtZSA9ICI/IjsKKyAgICAgICAgbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZSgiPyIsIDEpOworICAgICAgICBpZiAobmFtZSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIGZpbGVuYW1lID0gUHlNb2R1bGVfR2V0RmlsZW5hbWVPYmplY3QoKFB5T2JqZWN0ICopbSk7CiAgICAgaWYgKGZpbGVuYW1lID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8bW9kdWxlICclcycgKGJ1aWx0LWluKT4iLCBuYW1lKTsKKyAgICAgICAgcmVwciA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8bW9kdWxlICVSIChidWlsdC1pbik+IiwgbmFtZSk7CiAgICAgfQotICAgIHJlcHIgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPG1vZHVsZSAnJXMnIGZyb20gJyVVJz4iLCBuYW1lLCBmaWxlbmFtZSk7Ci0gICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICBlbHNlIHsKKyAgICAgICAgcmVwciA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8bW9kdWxlICVSIGZyb20gJVI+IiwgbmFtZSwgZmlsZW5hbWUpOworICAgICAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOworICAgIH0KKyAgICBQeV9ERUNSRUYobmFtZSk7CiAgICAgcmV0dXJuIHJlcHI7CiB9CiAKQEAgLTM4OSw2ICs0MTIsMzUgQEAKICAgICByZXR1cm4gMDsKIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK21vZHVsZV9kaXIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIF9QeV9JREVOVElGSUVSKF9fZGljdF9fKTsKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKyAgICBQeU9iamVjdCAqZGljdCA9IF9QeU9iamVjdF9HZXRBdHRySWQoc2VsZiwgJlB5SWRfX19kaWN0X18pOworCisgICAgaWYgKGRpY3QgIT0gTlVMTCkgeworICAgICAgICBpZiAoUHlEaWN0X0NoZWNrKGRpY3QpKQorICAgICAgICAgICAgcmVzdWx0ID0gUHlEaWN0X0tleXMoZGljdCk7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgY29uc3QgY2hhciAqbmFtZSA9IFB5TW9kdWxlX0dldE5hbWUoc2VsZik7CisgICAgICAgICAgICBpZiAobmFtZSkKKyAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJS4yMDBzLl9fZGljdF9fIGlzIG5vdCBhIGRpY3Rpb25hcnkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIFB5X1hERUNSRUYoZGljdCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIFB5TWV0aG9kRGVmIG1vZHVsZV9tZXRob2RzW10gPSB7CisgICAgeyJfX2Rpcl9fIiwgbW9kdWxlX2RpciwgTUVUSF9OT0FSR1MsCisgICAgIFB5RG9jX1NUUigiX19kaXJfXygpIC0+IGxpc3RcbnNwZWNpYWxpemVkIGRpcigpIGltcGxlbWVudGF0aW9uIil9LAorICAgIHswfQorfTsKKwogCiBQeURvY19TVFJWQVIobW9kdWxlX2RvYywKICJtb2R1bGUobmFtZVssIGRvY10pXG5cCkBAIC00MjUsNyArNDc3LDcgQEAKICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLworICAgIG1vZHVsZV9tZXRob2RzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLwogICAgIG1vZHVsZV9tZW1iZXJzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCmRpZmYgLS1naXQgYS9PYmplY3RzL29iamVjdC5jIGIvT2JqZWN0cy9vYmplY3QuYwppbmRleCA4NGVjMmYzLi43MGQzMjBjIDEwMDY0NAotLS0gYS9PYmplY3RzL29iamVjdC5jCisrKyBiL09iamVjdHMvb2JqZWN0LmMKQEAgLTEsNSArMSw1IEBACiAKLS8qIEdlbmVyaWMgb2JqZWN0IG9wZXJhdGlvbnM7IGFuZCBpbXBsZW1lbnRhdGlvbiBvZiBOb25lIChOb09iamVjdCkgKi8KKy8qIEdlbmVyaWMgb2JqZWN0IG9wZXJhdGlvbnM7IGFuZCBpbXBsZW1lbnRhdGlvbiBvZiBOb25lICovCiAKICNpbmNsdWRlICJQeXRob24uaCIKICNpbmNsdWRlICJmcmFtZW9iamVjdC5oIgpAQCAtMjksOCArMjksNiBAQAogfQogI2VuZGlmIC8qIFB5X1JFRl9ERUJVRyAqLwogCi1pbnQgUHlfRGl2aXNpb25XYXJuaW5nRmxhZzsKLQogLyogT2JqZWN0IGFsbG9jYXRpb24gcm91dGluZXMgdXNlZCBieSBORVdPQkogYW5kIE5FV1ZBUk9CSiBtYWNyb3MuCiAgICBUaGVzZSBhcmUgdXNlZCBieSB0aGUgaW5kaXZpZHVhbCByb3V0aW5lcyBmb3Igb2JqZWN0IGNyZWF0aW9uLgogICAgRG8gbm90IGNhbGwgdGhlbSBvdGhlcndpc2UsIHRoZXkgZG8gbm90IGluaXRpYWxpemUgdGhlIG9iamVjdCEgKi8KQEAgLTI5Nyw5ICsyOTUsNyBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKHMpKSB7CiAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnQ7Ci0gICAgICAgICAgICAgICAgdCA9IFB5VW5pY29kZV9FbmNvZGVVVEY4KFB5VW5pY29kZV9BU19VTklDT0RFKHMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUocyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJiYWNrc2xhc2hyZXBsYWNlIik7CisgICAgICAgICAgICAgICAgdCA9IFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcocywgInV0Zi04IiwgImJhY2tzbGFzaHJlcGxhY2UiKTsKICAgICAgICAgICAgICAgICBpZiAodCA9PSBOVUxMKQogICAgICAgICAgICAgICAgICAgICByZXQgPSAwOwogICAgICAgICAgICAgICAgIGVsc2UgewpAQCAtMzgyLDEzICszNzgsMTkgQEAKICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8JXMgb2JqZWN0IGF0ICVwPiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2LT5vYl90eXBlLT50cF9uYW1lLCB2KTsKICAgICByZXMgPSAoKnYtPm9iX3R5cGUtPnRwX3JlcHIpKHYpOwotICAgIGlmIChyZXMgIT0gTlVMTCAmJiAhUHlVbmljb2RlX0NoZWNrKHJlcykpIHsKKyAgICBpZiAocmVzID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHJlcykpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICJfX3JlcHJfXyByZXR1cm5lZCBub24tc3RyaW5nICh0eXBlICUuMjAwcykiLAogICAgICAgICAgICAgICAgICAgICAgcmVzLT5vYl90eXBlLT50cF9uYW1lKTsKICAgICAgICAgUHlfREVDUkVGKHJlcyk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KKyNpZm5kZWYgUHlfREVCVUcKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHJlcykgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKyNlbmRpZgogICAgIHJldHVybiByZXM7CiB9CiAKQEAgLTQwNyw2ICs0MDksMTAgQEAKICAgICBpZiAodiA9PSBOVUxMKQogICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoIjxOVUxMPiIpOwogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2tFeGFjdCh2KSkgeworI2lmbmRlZiBQeV9ERUJVRworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHYpIDwgMCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworI2VuZGlmCiAgICAgICAgIFB5X0lOQ1JFRih2KTsKICAgICAgICAgcmV0dXJuIHY7CiAgICAgfQpAQCAtNDI4LDYgKzQzNCwxMSBAQAogICAgICAgICBQeV9ERUNSRUYocmVzKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorI2lmbmRlZiBQeV9ERUJVRworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocmVzKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworI2VuZGlmCisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShyZXMsIDEpKTsKICAgICByZXR1cm4gcmVzOwogfQogCkBAIC00NDEsMTEgKzQ1Miw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgLyogcmVwciBpcyBndWFyYW50ZWVkIHRvIGJlIGEgUHlVbmljb2RlIG9iamVjdCBieSBQeU9iamVjdF9SZXByICovCi0gICAgYXNjaWkgPSBQeVVuaWNvZGVfRW5jb2RlQVNDSUkoCi0gICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHJlcHIpLAotICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUocmVwciksCi0gICAgICAgICJiYWNrc2xhc2hyZXBsYWNlIik7Ci0KKyAgICBhc2NpaSA9IF9QeVVuaWNvZGVfQXNBU0NJSVN0cmluZyhyZXByLCAiYmFja3NsYXNocmVwbGFjZSIpOwogICAgIFB5X0RFQ1JFRihyZXByKTsKICAgICBpZiAoYXNjaWkgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC00NjMsNyArNDcwLDcgQEAKIFB5T2JqZWN0X0J5dGVzKFB5T2JqZWN0ICp2KQogewogICAgIFB5T2JqZWN0ICpyZXN1bHQsICpmdW5jOwotICAgIHN0YXRpYyBQeU9iamVjdCAqYnl0ZXNzdHJpbmcgPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKF9fYnl0ZXNfXyk7CiAKICAgICBpZiAodiA9PSBOVUxMKQogICAgICAgICByZXR1cm4gUHlCeXRlc19Gcm9tU3RyaW5nKCI8TlVMTD4iKTsKQEAgLTQ3Myw3ICs0ODAsNyBAQAogICAgICAgICByZXR1cm4gdjsKICAgICB9CiAKLSAgICBmdW5jID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwodiwgIl9fYnl0ZXNfXyIsICZieXRlc3N0cmluZyk7CisgICAgZnVuYyA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKHYsICZQeUlkX19fYnl0ZXNfXyk7CiAgICAgaWYgKGZ1bmMgIT0gTlVMTCkgewogICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKGZ1bmMsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYoZnVuYyk7CkBAIC03NDcsNiArNzU0LDMxIEBACiB9CiAKIFB5X2hhc2hfdAorX1B5X0hhc2hCeXRlcyh1bnNpZ25lZCBjaGFyICpwLCBQeV9zc2l6ZV90IGxlbikKK3sKKyAgICBQeV91aGFzaF90IHg7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgLyoKKyAgICAgIFdlIG1ha2UgdGhlIGhhc2ggb2YgdGhlIGVtcHR5IHN0cmluZyBiZSAwLCByYXRoZXIgdGhhbiB1c2luZworICAgICAgKHByZWZpeCBeIHN1ZmZpeCksIHNpbmNlIHRoaXMgc2xpZ2h0bHkgb2JmdXNjYXRlcyB0aGUgaGFzaCBzZWNyZXQKKyAgICAqLworICAgIGFzc2VydChfUHlfSGFzaFNlY3JldF9Jbml0aWFsaXplZCk7CisgICAgaWYgKGxlbiA9PSAwKSB7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICB4ID0gKFB5X3VoYXNoX3QpIF9QeV9IYXNoU2VjcmV0LnByZWZpeDsKKyAgICB4IF49IChQeV91aGFzaF90KSAqcCA8PCA3OworICAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykKKyAgICAgICAgeCA9IChfUHlIQVNIX01VTFRJUExJRVIgKiB4KSBeIChQeV91aGFzaF90KSAqcCsrOworICAgIHggXj0gKFB5X3VoYXNoX3QpIGxlbjsKKyAgICB4IF49IChQeV91aGFzaF90KSBfUHlfSGFzaFNlY3JldC5zdWZmaXg7CisgICAgaWYgKHggPT0gLTEpCisgICAgICAgIHggPSAtMjsKKyAgICByZXR1cm4geDsKK30KKworUHlfaGFzaF90CiBQeU9iamVjdF9IYXNoTm90SW1wbGVtZW50ZWQoUHlPYmplY3QgKnYpCiB7CiAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgInVuaGFzaGFibGUgdHlwZTogJyUuMjAwcyciLApAQCAtODIwLDYgKzg1Miw2MiBAQAogICAgIHJldHVybiByZXM7CiB9CiAKK2ludAorX1B5T2JqZWN0X0lzQWJzdHJhY3QoUHlPYmplY3QgKm9iaikKK3sKKyAgICBpbnQgcmVzOworICAgIFB5T2JqZWN0KiBpc2Fic3RyYWN0OworICAgIF9QeV9JREVOVElGSUVSKF9faXNhYnN0cmFjdG1ldGhvZF9fKTsKKworICAgIGlmIChvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpc2Fic3RyYWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX19faXNhYnN0cmFjdG1ldGhvZF9fKTsKKyAgICBpZiAoaXNhYnN0cmFjdCA9PSBOVUxMKSB7CisgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkgeworICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgcmVzID0gUHlPYmplY3RfSXNUcnVlKGlzYWJzdHJhY3QpOworICAgIFB5X0RFQ1JFRihpc2Fic3RyYWN0KTsKKyAgICByZXR1cm4gcmVzOworfQorCitQeU9iamVjdCAqCitfUHlPYmplY3RfR2V0QXR0cklkKFB5T2JqZWN0ICp2LCBfUHlfSWRlbnRpZmllciAqbmFtZSkKK3sKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICpvbmFtZSA9IF9QeVVuaWNvZGVfRnJvbUlkKG5hbWUpOyAvKiBib3Jyb3dlZCAqLworICAgIGlmICghb25hbWUpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlc3VsdCA9IFB5T2JqZWN0X0dldEF0dHIodiwgb25hbWUpOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2ludAorX1B5T2JqZWN0X0hhc0F0dHJJZChQeU9iamVjdCAqdiwgX1B5X0lkZW50aWZpZXIgKm5hbWUpCit7CisgICAgaW50IHJlc3VsdDsKKyAgICBQeU9iamVjdCAqb25hbWUgPSBfUHlVbmljb2RlX0Zyb21JZChuYW1lKTsgLyogYm9ycm93ZWQgKi8KKyAgICBpZiAoIW9uYW1lKQorICAgICAgICByZXR1cm4gLTE7CisgICAgcmVzdWx0ID0gUHlPYmplY3RfSGFzQXR0cih2LCBvbmFtZSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworaW50CitfUHlPYmplY3RfU2V0QXR0cklkKFB5T2JqZWN0ICp2LCBfUHlfSWRlbnRpZmllciAqbmFtZSwgUHlPYmplY3QgKncpCit7CisgICAgaW50IHJlc3VsdDsKKyAgICBQeU9iamVjdCAqb25hbWUgPSBfUHlVbmljb2RlX0Zyb21JZChuYW1lKTsgLyogYm9ycm93ZWQgKi8KKyAgICBpZiAoIW9uYW1lKQorICAgICAgICByZXR1cm4gLTE7CisgICAgcmVzdWx0ID0gUHlPYmplY3RfU2V0QXR0cih2LCBvbmFtZSwgdyk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogUHlPYmplY3QgKgogUHlPYmplY3RfR2V0QXR0cihQeU9iamVjdCAqdiwgUHlPYmplY3QgKm5hbWUpCiB7CkBAIC0xMTM0LDYgKzEyMjIsNDggQEAKICAgICByZXR1cm4gX1B5T2JqZWN0X0dlbmVyaWNTZXRBdHRyV2l0aERpY3Qob2JqLCBuYW1lLCB2YWx1ZSwgTlVMTCk7CiB9CiAKK1B5T2JqZWN0ICoKK1B5T2JqZWN0X0dlbmVyaWNHZXREaWN0KFB5T2JqZWN0ICpvYmosIHZvaWQgKmNvbnRleHQpCit7CisgICAgUHlPYmplY3QgKmRpY3QsICoqZGljdHB0ciA9IF9QeU9iamVjdF9HZXREaWN0UHRyKG9iaik7CisgICAgaWYgKGRpY3RwdHIgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiVGhpcyBvYmplY3QgaGFzIG5vIF9fZGljdF9fIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBkaWN0ID0gKmRpY3RwdHI7CisgICAgaWYgKGRpY3QgPT0gTlVMTCkKKyAgICAgICAgKmRpY3RwdHIgPSBkaWN0ID0gUHlEaWN0X05ldygpOworICAgIFB5X1hJTkNSRUYoZGljdCk7CisgICAgcmV0dXJuIGRpY3Q7Cit9CisKK2ludAorUHlPYmplY3RfR2VuZXJpY1NldERpY3QoUHlPYmplY3QgKm9iaiwgUHlPYmplY3QgKnZhbHVlLCB2b2lkICpjb250ZXh0KQoreworICAgIFB5T2JqZWN0ICpkaWN0LCAqKmRpY3RwdHIgPSBfUHlPYmplY3RfR2V0RGljdFB0cihvYmopOworICAgIGlmIChkaWN0cHRyID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0F0dHJpYnV0ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIlRoaXMgb2JqZWN0IGhhcyBubyBfX2RpY3RfXyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJjYW5ub3QgZGVsZXRlIF9fZGljdF9fIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgaWYgKCFQeURpY3RfQ2hlY2sodmFsdWUpKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiX19kaWN0X18gbXVzdCBiZSBzZXQgdG8gYSBkaWN0aW9uYXJ5LCAiCisgICAgICAgICAgICAgICAgICAgICAibm90IGEgJyUuMjAwcyciLCBQeV9UWVBFKHZhbHVlKS0+dHBfbmFtZSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgZGljdCA9ICpkaWN0cHRyOworICAgIFB5X1hJTkNSRUYodmFsdWUpOworICAgICpkaWN0cHRyID0gdmFsdWU7CisgICAgUHlfWERFQ1JFRihkaWN0KTsKKyAgICByZXR1cm4gMDsKK30KKwogCiAvKiBUZXN0IGEgdmFsdWUgdXNlZCBhcyBjb25kaXRpb24sIGUuZy4sIGluIGEgZm9yIG9yIGlmIHN0YXRlbWVudC4KICAgIFJldHVybiAtMSBpZiBhbiBlcnJvciBvY2N1cnJlZCAqLwpAQCAtMTE4Niw2NiArMTMxNiw2IEBACiAgICAgcmV0dXJuIHgtPm9iX3R5cGUtPnRwX2NhbGwgIT0gTlVMTDsKIH0KIAotLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBQeU9iamVjdF9EaXIoKSBoZWxwZXJzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KLQotLyogSGVscGVyIGZvciBQeU9iamVjdF9EaXIuCi0gICBNZXJnZSB0aGUgX19kaWN0X18gb2YgYWNsYXNzIGludG8gZGljdCwgYW5kIHJlY3Vyc2l2ZWx5IGFsc28gYWxsCi0gICB0aGUgX19kaWN0X19zIG9mIGFjbGFzcydzIGJhc2UgY2xhc3Nlcy4gIFRoZSBvcmRlciBvZiBtZXJnaW5nIGlzbid0Ci0gICBkZWZpbmVkLCBhcyBpdCdzIGV4cGVjdGVkIHRoYXQgb25seSB0aGUgZmluYWwgc2V0IG9mIGRpY3Qga2V5cyBpcwotICAgaW50ZXJlc3RpbmcuCi0gICBSZXR1cm4gMCBvbiBzdWNjZXNzLCAtMSBvbiBlcnJvci4KLSovCi0KLXN0YXRpYyBpbnQKLW1lcmdlX2NsYXNzX2RpY3QoUHlPYmplY3QqIGRpY3QsIFB5T2JqZWN0KiBhY2xhc3MpCi17Ci0gICAgUHlPYmplY3QgKmNsYXNzZGljdDsKLSAgICBQeU9iamVjdCAqYmFzZXM7Ci0KLSAgICBhc3NlcnQoUHlEaWN0X0NoZWNrKGRpY3QpKTsKLSAgICBhc3NlcnQoYWNsYXNzKTsKLQotICAgIC8qIE1lcmdlIGluIHRoZSB0eXBlJ3MgZGljdCAoaWYgYW55KS4gKi8KLSAgICBjbGFzc2RpY3QgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGFjbGFzcywgIl9fZGljdF9fIik7Ci0gICAgaWYgKGNsYXNzZGljdCA9PSBOVUxMKQotICAgICAgICBQeUVycl9DbGVhcigpOwotICAgIGVsc2UgewotICAgICAgICBpbnQgc3RhdHVzID0gUHlEaWN0X1VwZGF0ZShkaWN0LCBjbGFzc2RpY3QpOwotICAgICAgICBQeV9ERUNSRUYoY2xhc3NkaWN0KTsKLSAgICAgICAgaWYgKHN0YXR1cyA8IDApCi0gICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotCi0gICAgLyogUmVjdXJzaXZlbHkgbWVyZ2UgaW4gdGhlIGJhc2UgdHlwZXMnIChpZiBhbnkpIGRpY3RzLiAqLwotICAgIGJhc2VzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhhY2xhc3MsICJfX2Jhc2VzX18iKTsKLSAgICBpZiAoYmFzZXMgPT0gTlVMTCkKLSAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICBlbHNlIHsKLSAgICAgICAgLyogV2UgaGF2ZSBubyBndWFyYW50ZWUgdGhhdCBiYXNlcyBpcyBhIHJlYWwgdHVwbGUgKi8KLSAgICAgICAgUHlfc3NpemVfdCBpLCBuOwotICAgICAgICBuID0gUHlTZXF1ZW5jZV9TaXplKGJhc2VzKTsgLyogVGhpcyBiZXR0ZXIgYmUgcmlnaHQgKi8KLSAgICAgICAgaWYgKG4gPCAwKQotICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgaW50IHN0YXR1czsKLSAgICAgICAgICAgICAgICBQeU9iamVjdCAqYmFzZSA9IFB5U2VxdWVuY2VfR2V0SXRlbShiYXNlcywgaSk7Ci0gICAgICAgICAgICAgICAgaWYgKGJhc2UgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoYmFzZXMpOwotICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHN0YXR1cyA9IG1lcmdlX2NsYXNzX2RpY3QoZGljdCwgYmFzZSk7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKGJhc2UpOwotICAgICAgICAgICAgICAgIGlmIChzdGF0dXMgPCAwKSB7Ci0gICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihiYXNlcyk7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgUHlfREVDUkVGKGJhc2VzKTsKLSAgICB9Ci0gICAgcmV0dXJuIDA7Ci19CiAKIC8qIEhlbHBlciBmb3IgUHlPYmplY3RfRGlyIHdpdGhvdXQgYXJndW1lbnRzOiByZXR1cm5zIHRoZSBsb2NhbCBzY29wZS4gKi8KIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xMjY5LDE0MCArMTMzOSw0MyBAQAogICAgICAgICBQeV9ERUNSRUYobmFtZXMpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisgICAgaWYgKFB5TGlzdF9Tb3J0KG5hbWVzKSkgeworICAgICAgICBQeV9ERUNSRUYobmFtZXMpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAgICAgLyogdGhlIGxvY2FscyBkb24ndCBuZWVkIHRvIGJlIERFQ1JFRidkICovCiAgICAgcmV0dXJuIG5hbWVzOwogfQogCi0vKiBIZWxwZXIgZm9yIFB5T2JqZWN0X0RpciBvZiB0eXBlIG9iamVjdHM6IHJldHVybnMgX19kaWN0X18gYW5kIF9fYmFzZXNfXy4KLSAgIFdlIGRlbGliZXJhdGVseSBkb24ndCBzdWNrIHVwIGl0cyBfX2NsYXNzX18sIGFzIG1ldGhvZHMgYmVsb25naW5nIHRvIHRoZQotICAgbWV0YWNsYXNzIHdvdWxkIHByb2JhYmx5IGJlIG1vcmUgY29uZnVzaW5nIHRoYW4gaGVscGZ1bC4KLSovCi1zdGF0aWMgUHlPYmplY3QgKgotX3NwZWNpYWxpemVkX2Rpcl90eXBlKFB5T2JqZWN0ICpvYmopCi17Ci0gICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmRpY3QgPSBQeURpY3RfTmV3KCk7Ci0KLSAgICBpZiAoZGljdCAhPSBOVUxMICYmIG1lcmdlX2NsYXNzX2RpY3QoZGljdCwgb2JqKSA9PSAwKQotICAgICAgICByZXN1bHQgPSBQeURpY3RfS2V5cyhkaWN0KTsKLQotICAgIFB5X1hERUNSRUYoZGljdCk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotLyogSGVscGVyIGZvciBQeU9iamVjdF9EaXIgb2YgbW9kdWxlIG9iamVjdHM6IHJldHVybnMgdGhlIG1vZHVsZSdzIF9fZGljdF9fLiAqLwotc3RhdGljIFB5T2JqZWN0ICoKLV9zcGVjaWFsaXplZF9kaXJfbW9kdWxlKFB5T2JqZWN0ICpvYmopCi17Ci0gICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmRpY3QgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIl9fZGljdF9fIik7Ci0KLSAgICBpZiAoZGljdCAhPSBOVUxMKSB7Ci0gICAgICAgIGlmIChQeURpY3RfQ2hlY2soZGljdCkpCi0gICAgICAgICAgICByZXN1bHQgPSBQeURpY3RfS2V5cyhkaWN0KTsKLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBjb25zdCBjaGFyICpuYW1lID0gUHlNb2R1bGVfR2V0TmFtZShvYmopOwotICAgICAgICAgICAgaWYgKG5hbWUpCi0gICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiUuMjAwcy5fX2RpY3RfXyBpcyBub3QgYSBkaWN0aW9uYXJ5IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBQeV9YREVDUkVGKGRpY3QpOwotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0KLS8qIEhlbHBlciBmb3IgUHlPYmplY3RfRGlyIG9mIGdlbmVyaWMgb2JqZWN0czogcmV0dXJucyBfX2RpY3RfXywgX19jbGFzc19fLAotICAgYW5kIHJlY3Vyc2l2ZWx5IHVwIHRoZSBfX2NsYXNzX18uX19iYXNlc19fIGNoYWluLgotKi8KLXN0YXRpYyBQeU9iamVjdCAqCi1fZ2VuZXJpY19kaXIoUHlPYmplY3QgKm9iaikKLXsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqZGljdCA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKml0c2NsYXNzID0gTlVMTDsKLQotICAgIC8qIEdldCBfX2RpY3RfXyAod2hpY2ggbWF5IG9yIG1heSBub3QgYmUgYSByZWFsIGRpY3QuLi4pICovCi0gICAgZGljdCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiX19kaWN0X18iKTsKLSAgICBpZiAoZGljdCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgICAgIGRpY3QgPSBQeURpY3RfTmV3KCk7Ci0gICAgfQotICAgIGVsc2UgaWYgKCFQeURpY3RfQ2hlY2soZGljdCkpIHsKLSAgICAgICAgUHlfREVDUkVGKGRpY3QpOwotICAgICAgICBkaWN0ID0gUHlEaWN0X05ldygpOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgLyogQ29weSBfX2RpY3RfXyB0byBhdm9pZCBtdXRhdGluZyBpdC4gKi8KLSAgICAgICAgUHlPYmplY3QgKnRlbXAgPSBQeURpY3RfQ29weShkaWN0KTsKLSAgICAgICAgUHlfREVDUkVGKGRpY3QpOwotICAgICAgICBkaWN0ID0gdGVtcDsKLSAgICB9Ci0KLSAgICBpZiAoZGljdCA9PSBOVUxMKQotICAgICAgICBnb3RvIGVycm9yOwotCi0gICAgLyogTWVyZ2UgaW4gYXR0cnMgcmVhY2hhYmxlIGZyb20gaXRzIGNsYXNzLiAqLwotICAgIGl0c2NsYXNzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJfX2NsYXNzX18iKTsKLSAgICBpZiAoaXRzY2xhc3MgPT0gTlVMTCkKLSAgICAgICAgLyogWFhYKHRvbWVyKTogUGVyaGFwcyBmYWxsIGJhY2sgdG8gb2JqLT5vYl90eXBlIGlmIG5vCi0gICAgICAgICAgICAgICAgICAgICAgIF9fY2xhc3NfXyBleGlzdHM/ICovCi0gICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIGlmIChtZXJnZV9jbGFzc19kaWN0KGRpY3QsIGl0c2NsYXNzKSAhPSAwKQotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICByZXN1bHQgPSBQeURpY3RfS2V5cyhkaWN0KTsKLSAgICAvKiBmYWxsIHRocm91Z2ggKi8KLWVycm9yOgotICAgIFB5X1hERUNSRUYoaXRzY2xhc3MpOwotICAgIFB5X1hERUNSRUYoZGljdCk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotLyogSGVscGVyIGZvciBQeU9iamVjdF9EaXI6IG9iamVjdCBpbnRyb3NwZWN0aW9uLgotICAgVGhpcyBjYWxscyBvbmUgb2YgdGhlIGFib3ZlIHNwZWNpYWxpemVkIHZlcnNpb25zIGlmIG5vIF9fZGlyX18gbWV0aG9kCi0gICBleGlzdHMuICovCisvKiBIZWxwZXIgZm9yIFB5T2JqZWN0X0Rpcjogb2JqZWN0IGludHJvc3BlY3Rpb24uICovCiBzdGF0aWMgUHlPYmplY3QgKgogX2Rpcl9vYmplY3QoUHlPYmplY3QgKm9iaikKIHsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmRpcl9zdHIgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpkaXJmdW5jID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwob2JqLCAiX19kaXJfXyIsICZkaXJfc3RyKTsKKyAgICBQeU9iamVjdCAqcmVzdWx0LCAqc29ydGVkOworICAgIF9QeV9JREVOVElGSUVSKF9fZGlyX18pOworICAgIFB5T2JqZWN0ICpkaXJmdW5jID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwob2JqLCAmUHlJZF9fX2Rpcl9fKTsKIAogICAgIGFzc2VydChvYmopOwogICAgIGlmIChkaXJmdW5jID09IE5VTEwpIHsKLSAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgLyogdXNlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gKi8KLSAgICAgICAgaWYgKFB5TW9kdWxlX0NoZWNrKG9iaikpCi0gICAgICAgICAgICByZXN1bHQgPSBfc3BlY2lhbGl6ZWRfZGlyX21vZHVsZShvYmopOwotICAgICAgICBlbHNlIGlmIChQeVR5cGVfQ2hlY2sob2JqKSkKLSAgICAgICAgICAgIHJlc3VsdCA9IF9zcGVjaWFsaXplZF9kaXJfdHlwZShvYmopOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXN1bHQgPSBfZ2VuZXJpY19kaXIob2JqKTsKKyAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIm9iamVjdCBkb2VzIG5vdCBwcm92aWRlIF9fZGlyX18iKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIGVsc2UgewotICAgICAgICAvKiB1c2UgX19kaXJfXyAqLwotICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKGRpcmZ1bmMsIE5VTEwpOwotICAgICAgICBQeV9ERUNSRUYoZGlyZnVuYyk7Ci0gICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgICAgIC8qIHJlc3VsdCBtdXN0IGJlIGEgbGlzdCAqLwotICAgICAgICAvKiBYWFgoZ2JyYW5kbCk6IGNvdWxkIGFsc28gY2hlY2sgaWYgYWxsIGl0ZW1zIGFyZSBzdHJpbmdzICovCi0gICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHJlc3VsdCkpIHsKLSAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIl9fZGlyX18oKSBtdXN0IHJldHVybiBhIGxpc3QsIG5vdCAlLjIwMHMiLAotICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUocmVzdWx0KS0+dHBfbmFtZSk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKLSAgICAgICAgICAgIHJlc3VsdCA9IE5VTEw7Ci0gICAgICAgIH0KKyAgICAvKiB1c2UgX19kaXJfXyAqLworICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MoZGlyZnVuYywgTlVMTCk7CisgICAgUHlfREVDUkVGKGRpcmZ1bmMpOworICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgLyogcmV0dXJuIHNvcnRlZChyZXN1bHQpICovCisgICAgc29ydGVkID0gUHlTZXF1ZW5jZV9MaXN0KHJlc3VsdCk7CisgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgaWYgKHNvcnRlZCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlMaXN0X1NvcnQoc29ydGVkKSkgeworICAgICAgICBQeV9ERUNSRUYoc29ydGVkKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotCi0gICAgcmV0dXJuIHJlc3VsdDsKKyAgICByZXR1cm4gc29ydGVkOwogfQogCiAvKiBJbXBsZW1lbnRhdGlvbiBvZiBkaXIoKSAtLSBpZiBvYmogaXMgTlVMTCwgcmV0dXJucyB0aGUgbmFtZXMgaW4gdGhlIGN1cnJlbnQKQEAgLTE0MTIsMzEgKzEzODUsMTMgQEAKIFB5T2JqZWN0ICoKIFB5T2JqZWN0X0RpcihQeU9iamVjdCAqb2JqKQogewotICAgIFB5T2JqZWN0ICogcmVzdWx0OwotCi0gICAgaWYgKG9iaiA9PSBOVUxMKQotICAgICAgICAvKiBubyBvYmplY3QgLS0gaW50cm9zcGVjdCB0aGUgbG9jYWxzICovCi0gICAgICAgIHJlc3VsdCA9IF9kaXJfbG9jYWxzKCk7Ci0gICAgZWxzZQotICAgICAgICAvKiBvYmplY3QgLS0gaW50cm9zcGVjdCB0aGUgb2JqZWN0ICovCi0gICAgICAgIHJlc3VsdCA9IF9kaXJfb2JqZWN0KG9iaik7Ci0KLSAgICBhc3NlcnQocmVzdWx0ID09IE5VTEwgfHwgUHlMaXN0X0NoZWNrKHJlc3VsdCkpOwotCi0gICAgaWYgKHJlc3VsdCAhPSBOVUxMICYmIFB5TGlzdF9Tb3J0KHJlc3VsdCkgIT0gMCkgewotICAgICAgICAvKiBzb3J0aW5nIHRoZSBsaXN0IGZhaWxlZCAqLwotICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKLSAgICAgICAgcmVzdWx0ID0gTlVMTDsKLSAgICB9Ci0KLSAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiAob2JqID09IE5VTEwpID8gX2Rpcl9sb2NhbHMoKSA6IF9kaXJfb2JqZWN0KG9iaik7CiB9CiAKIC8qCi1Ob09iamVjdCBpcyB1c2FibGUgYXMgYSBub24tTlVMTCB1bmRlZmluZWQgdmFsdWUsIHVzZWQgYnkgdGhlIG1hY3JvIE5vbmUuCitOb25lIGlzIGEgbm9uLU5VTEwgdW5kZWZpbmVkIHZhbHVlLgogVGhlcmUgaXMgKGFuZCBzaG91bGQgYmUhKSBubyB3YXkgdG8gY3JlYXRlIG90aGVyIG9iamVjdHMgb2YgdGhpcyB0eXBlLAogc28gdGhlcmUgaXMgZXhhY3RseSBvbmUgKHdoaWNoIGlzIGluZGVzdHJ1Y3RpYmxlLCBieSB0aGUgd2F5KS4KLShYWFggVGhpcyB0eXBlIGFuZCB0aGUgdHlwZSBvZiBOb3RJbXBsZW1lbnRlZCBiZWxvdyBzaG91bGQgYmUgdW5pZmllZC4pCiAqLwogCiAvKiBBUkdTVVNFRCAqLwpAQCAtMTQ1Niw2ICsxNDExLDU4IEBACiAgICAgUHlfRmF0YWxFcnJvcigiZGVhbGxvY2F0aW5nIE5vbmUiKTsKIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK25vbmVfbmV3KFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCit7CisgICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoYXJncykgfHwgKGt3YXJncyAmJiBQeURpY3RfU2l6ZShrd2FyZ3MpKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiTm9uZVR5cGUgdGFrZXMgbm8gYXJndW1lbnRzIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworc3RhdGljIGludAorbm9uZV9ib29sKFB5T2JqZWN0ICp2KQoreworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgUHlOdW1iZXJNZXRob2RzIG5vbmVfYXNfbnVtYmVyID0geworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9hZGQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfc3VidHJhY3QgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfbXVsdGlwbHkgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfcmVtYWluZGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2Rpdm1vZCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9wb3dlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9uZWdhdGl2ZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9wb3NpdGl2ZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9hYnNvbHV0ZSAqLworICAgIChpbnF1aXJ5KW5vbmVfYm9vbCwgICAgICAgICAvKiBuYl9ib29sICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2ludmVydCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9sc2hpZnQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfcnNoaWZ0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2FuZCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl94b3IgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfb3IgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW50ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX3Jlc2VydmVkICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2Zsb2F0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2VfYWRkICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2Vfc3VidHJhY3QgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV9tdWx0aXBseSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9pbnBsYWNlX3JlbWFpbmRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9pbnBsYWNlX3Bvd2VyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2VfbHNoaWZ0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2VfcnNoaWZ0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2VfYW5kICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2VfeG9yICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2Vfb3IgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfZmxvb3JfZGl2aWRlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX3RydWVfZGl2aWRlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2VfZmxvb3JfZGl2aWRlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2VfdHJ1ZV9kaXZpZGUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5kZXggKi8KK307CiAKIHN0YXRpYyBQeVR5cGVPYmplY3QgUHlOb25lX1R5cGUgPSB7CiAgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKCZQeVR5cGVfVHlwZSwgMCkKQEAgLTE0NjgsMTAgKzE0NzUsMzQgQEAKICAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfc2V0YXR0ciovCiAgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3Jlc2VydmVkKi8KICAgICBub25lX3JlcHIsICAgICAgICAgIC8qdHBfcmVwciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2FzX251bWJlciovCisgICAgJm5vbmVfYXNfbnVtYmVyLCAgICAvKnRwX2FzX251bWJlciovCiAgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2FzX3NlcXVlbmNlKi8KICAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfYXNfbWFwcGluZyovCiAgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2hhc2ggKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfY2FsbCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9zdHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfc2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfYXNfYnVmZmVyICovCisgICAgUHlfVFBGTEFHU19ERUZBVUxULCAvKnRwX2ZsYWdzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2RvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF90cmF2ZXJzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9jbGVhciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF93ZWFrbGlzdG9mZnNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9pdGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2l0ZXJuZXh0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX21ldGhvZHMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfbWVtYmVycyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9nZXRzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfYmFzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9kaWN0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2Rlc2NyX2dldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9kZXNjcl9zZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfZGljdG9mZnNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9pbml0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2FsbG9jICovCisgICAgbm9uZV9uZXcsICAgICAgICAgICAvKnRwX25ldyAqLwogfTsKIAogUHlPYmplY3QgX1B5X05vbmVTdHJ1Y3QgPSB7CkBAIC0xNDg4LDYgKzE1MTksMTYgQEAKICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoIk5vdEltcGxlbWVudGVkIik7CiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCitub3RpbXBsZW1lbnRlZF9uZXcoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBpZiAoUHlUdXBsZV9HRVRfU0laRShhcmdzKSB8fCAoa3dhcmdzICYmIFB5RGljdF9TaXplKGt3YXJncykpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJOb3RJbXBsZW1lbnRlZFR5cGUgdGFrZXMgbm8gYXJndW1lbnRzIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7Cit9CisKIHN0YXRpYyBQeVR5cGVPYmplY3QgUHlOb3RJbXBsZW1lbnRlZF9UeXBlID0gewogICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVCgmUHlUeXBlX1R5cGUsIDApCiAgICAgIk5vdEltcGxlbWVudGVkVHlwZSIsCkBAIC0xNTAzLDYgKzE1NDQsMzAgQEAKICAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfYXNfc2VxdWVuY2UqLwogICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9hc19tYXBwaW5nKi8KICAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfaGFzaCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9jYWxsICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3N0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9nZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9zZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9hc19idWZmZXIgKi8KKyAgICBQeV9UUEZMQUdTX0RFRkFVTFQsIC8qdHBfZmxhZ3MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfZG9jICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2NsZWFyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3JpY2hjb21wYXJlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2l0ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfaXRlcm5leHQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfbWV0aG9kcyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9tZW1iZXJzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2dldHNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9iYXNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2RpY3QgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfZGVzY3JfZ2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2Rlc2NyX3NldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9kaWN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2luaXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfYWxsb2MgKi8KKyAgICBub3RpbXBsZW1lbnRlZF9uZXcsIC8qdHBfbmV3ICovCiB9OwogCiBQeU9iamVjdCBfUHlfTm90SW1wbGVtZW50ZWRTdHJ1Y3QgPSB7CkBAIC0xNTg1LDYgKzE2NTAsOSBAQAogICAgIGlmIChQeVR5cGVfUmVhZHkoJlB5UHJvcGVydHlfVHlwZSkgPCAwKQogICAgICAgICBQeV9GYXRhbEVycm9yKCJDYW4ndCBpbml0aWFsaXplIHByb3BlcnR5IHR5cGUiKTsKIAorICAgIGlmIChQeVR5cGVfUmVhZHkoJl9QeU1hbmFnZWRCdWZmZXJfVHlwZSkgPCAwKQorICAgICAgICBQeV9GYXRhbEVycm9yKCJDYW4ndCBpbml0aWFsaXplIG1hbmFnZWQgYnVmZmVyIHR5cGUiKTsKKwogICAgIGlmIChQeVR5cGVfUmVhZHkoJlB5TWVtb3J5Vmlld19UeXBlKSA8IDApCiAgICAgICAgIFB5X0ZhdGFsRXJyb3IoIkNhbid0IGluaXRpYWxpemUgbWVtb3J5dmlldyB0eXBlIik7CiAKZGlmZiAtLWdpdCBhL09iamVjdHMvb2JtYWxsb2MuYyBiL09iamVjdHMvb2JtYWxsb2MuYwppbmRleCAzOTE2MjYyLi4zZDc4MmEyIDEwMDY0NAotLS0gYS9PYmplY3RzL29ibWFsbG9jLmMKKysrIGIvT2JqZWN0cy9vYm1hbGxvYy5jCkBAIC0yLDYgKzIsMTMgQEAKIAogI2lmZGVmIFdJVEhfUFlNQUxMT0MKIAorI2lmZGVmIEhBVkVfTU1BUAorICNpbmNsdWRlIDxzeXMvbW1hbi5oPgorICNpZmRlZiBNQVBfQU5PTllNT1VTCisgICNkZWZpbmUgQVJFTkFTX1VTRV9NTUFQCisgI2VuZGlmCisjZW5kaWYKKwogI2lmZGVmIFdJVEhfVkFMR1JJTkQKICNpbmNsdWRlIDx2YWxncmluZC92YWxncmluZC5oPgogCkBAIC03NSw3ICs4Miw4IEBACiAgKiBBbGxvY2F0aW9uIHN0cmF0ZWd5IGFic3RyYWN0OgogICoKICAqIEZvciBzbWFsbCByZXF1ZXN0cywgdGhlIGFsbG9jYXRvciBzdWItYWxsb2NhdGVzIDxCaWc+IGJsb2NrcyBvZiBtZW1vcnkuCi0gKiBSZXF1ZXN0cyBncmVhdGVyIHRoYW4gMjU2IGJ5dGVzIGFyZSByb3V0ZWQgdG8gdGhlIHN5c3RlbSdzIGFsbG9jYXRvci4KKyAqIFJlcXVlc3RzIGdyZWF0ZXIgdGhhbiBTTUFMTF9SRVFVRVNUX1RIUkVTSE9MRCBieXRlcyBhcmUgcm91dGVkIHRvIHRoZQorICogc3lzdGVtJ3MgYWxsb2NhdG9yLgogICoKICAqIFNtYWxsIHJlcXVlc3RzIGFyZSBncm91cGVkIGluIHNpemUgY2xhc3NlcyBzcGFjZWQgOCBieXRlcyBhcGFydCwgZHVlCiAgKiB0byB0aGUgcmVxdWlyZWQgdmFsaWQgYWxpZ25tZW50IG9mIHRoZSByZXR1cm5lZCBhZGRyZXNzLiBSZXF1ZXN0cyBvZgpAQCAtMTA3LDEwICsxMTUsMTEgQEAKICAqICAgICAgIDU3LTY0ICAgICAgICAgICAgICAgICAgIDY0ICAgICAgICAgICAgICAgICAgICAgICA3CiAgKiAgICAgICA2NS03MiAgICAgICAgICAgICAgICAgICA3MiAgICAgICAgICAgICAgICAgICAgICAgOAogICogICAgICAgIC4uLiAgICAgICAgICAgICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAuLi4KLSAqICAgICAgMjQxLTI0OCAgICAgICAgICAgICAgICAgMjQ4ICAgICAgICAgICAgICAgICAgICAgIDMwCi0gKiAgICAgIDI0OS0yNTYgICAgICAgICAgICAgICAgIDI1NiAgICAgICAgICAgICAgICAgICAgICAzMQorICogICAgICA0OTctNTA0ICAgICAgICAgICAgICAgICA1MDQgICAgICAgICAgICAgICAgICAgICAgNjIKKyAqICAgICAgNTA1LTUxMiAgICAgICAgICAgICAgICAgNTEyICAgICAgICAgICAgICAgICAgICAgIDYzCiAgKgotICogICAgICAwLCAyNTcgYW5kIHVwOiByb3V0ZWQgdG8gdGhlIHVuZGVybHlpbmcgYWxsb2NhdG9yLgorICogICAgICAwLCBTTUFMTF9SRVFVRVNUX1RIUkVTSE9MRCArIDEgYW5kIHVwOiByb3V0ZWQgdG8gdGhlIHVuZGVybHlpbmcKKyAqICAgICAgYWxsb2NhdG9yLgogICovCiAKIC8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwpAQCAtMTM5LDE0ICsxNDgsMTcgQEAKICAqIHNtYWxsIGVub3VnaCBpbiBvcmRlciB0byB1c2UgcHJlYWxsb2NhdGVkIG1lbW9yeSBwb29scy4gWW91IGNhbiB0dW5lCiAgKiB0aGlzIHZhbHVlIGFjY29yZGluZyB0byB5b3VyIGFwcGxpY2F0aW9uIGJlaGF2aW91ciBhbmQgbWVtb3J5IG5lZWRzLgogICoKKyAqIE5vdGU6IGEgc2l6ZSB0aHJlc2hvbGQgb2YgNTEyIGd1YXJhbnRlZXMgdGhhdCBuZXdseSBjcmVhdGVkIGRpY3Rpb25hcmllcworICogd2lsbCBiZSBhbGxvY2F0ZWQgZnJvbSBwcmVhbGxvY2F0ZWQgbWVtb3J5IHBvb2xzIG9uIDY0LWJpdC4KKyAqCiAgKiBUaGUgZm9sbG93aW5nIGludmFyaWFudHMgbXVzdCBob2xkOgotICogICAgICAxKSBBTElHTk1FTlQgPD0gU01BTExfUkVRVUVTVF9USFJFU0hPTEQgPD0gMjU2CisgKiAgICAgIDEpIEFMSUdOTUVOVCA8PSBTTUFMTF9SRVFVRVNUX1RIUkVTSE9MRCA8PSA1MTIKICAqICAgICAgMikgU01BTExfUkVRVUVTVF9USFJFU0hPTEQgaXMgZXZlbmx5IGRpdmlzaWJsZSBieSBBTElHTk1FTlQKICAqCiAgKiBBbHRob3VnaCBub3QgcmVxdWlyZWQsIGZvciBiZXR0ZXIgcGVyZm9ybWFuY2UgYW5kIHNwYWNlIGVmZmljaWVuY3ksCiAgKiBpdCBpcyByZWNvbW1lbmRlZCB0aGF0IFNNQUxMX1JFUVVFU1RfVEhSRVNIT0xEIGlzIHNldCB0byBhIHBvd2VyIG9mIDIuCiAgKi8KLSNkZWZpbmUgU01BTExfUkVRVUVTVF9USFJFU0hPTEQgMjU2CisjZGVmaW5lIFNNQUxMX1JFUVVFU1RfVEhSRVNIT0xEIDUxMgogI2RlZmluZSBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgICAoU01BTExfUkVRVUVTVF9USFJFU0hPTEQgLyBBTElHTk1FTlQpCiAKIC8qCkBAIC0xNzQsMTUgKzE4NiwxNSBAQAogLyoKICAqIFRoZSBhbGxvY2F0b3Igc3ViLWFsbG9jYXRlcyA8QmlnPiBibG9ja3Mgb2YgbWVtb3J5IChjYWxsZWQgYXJlbmFzKSBhbGlnbmVkCiAgKiBvbiBhIHBhZ2UgYm91bmRhcnkuIFRoaXMgaXMgYSByZXNlcnZlZCB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgZm9yIHRoZQotICogY3VycmVudCBwcm9jZXNzIChvYnRhaW5lZCB0aHJvdWdoIGEgbWFsbG9jIGNhbGwpLiBJbiBubyB3YXkgdGhpcyBtZWFucwotICogdGhhdCB0aGUgbWVtb3J5IGFyZW5hcyB3aWxsIGJlIHVzZWQgZW50aXJlbHkuIEEgbWFsbG9jKDxCaWc+KSBpcyB1c3VhbGx5Ci0gKiBhbiBhZGRyZXNzIHJhbmdlIHJlc2VydmF0aW9uIGZvciA8QmlnPiBieXRlcywgdW5sZXNzIGFsbCBwYWdlcyB3aXRoaW4gdGhpcwotICogc3BhY2UgYXJlIHJlZmVyZW5jZWQgc3Vic2VxdWVudGx5LiBTbyBtYWxsb2MnaW5nIGJpZyBibG9ja3MgYW5kIG5vdCB1c2luZwotICogdGhlbSBkb2VzIG5vdCBtZWFuICJ3YXN0aW5nIG1lbW9yeSIuIEl0J3MgYW4gYWRkcmVzc2FibGUgcmFuZ2Ugd2FzdGFnZS4uLgorICogY3VycmVudCBwcm9jZXNzIChvYnRhaW5lZCB0aHJvdWdoIGEgbWFsbG9jKCkvbW1hcCgpIGNhbGwpLiBJbiBubyB3YXkgdGhpcworICogbWVhbnMgdGhhdCB0aGUgbWVtb3J5IGFyZW5hcyB3aWxsIGJlIHVzZWQgZW50aXJlbHkuIEEgbWFsbG9jKDxCaWc+KSBpcworICogdXN1YWxseSBhbiBhZGRyZXNzIHJhbmdlIHJlc2VydmF0aW9uIGZvciA8QmlnPiBieXRlcywgdW5sZXNzIGFsbCBwYWdlcyB3aXRoaW4KKyAqIHRoaXMgc3BhY2UgYXJlIHJlZmVyZW5jZWQgc3Vic2VxdWVudGx5LiBTbyBtYWxsb2MnaW5nIGJpZyBibG9ja3MgYW5kIG5vdAorICogdXNpbmcgdGhlbSBkb2VzIG5vdCBtZWFuICJ3YXN0aW5nIG1lbW9yeSIuIEl0J3MgYW4gYWRkcmVzc2FibGUgcmFuZ2UKKyAqIHdhc3RhZ2UuLi4KICAqCi0gKiBUaGVyZWZvcmUsIGFsbG9jYXRpbmcgYXJlbmFzIHdpdGggbWFsbG9jIGlzIG5vdCBvcHRpbWFsLCBiZWNhdXNlIHRoZXJlIGlzCi0gKiBzb21lIGFkZHJlc3Mgc3BhY2Ugd2FzdGFnZSwgYnV0IHRoaXMgaXMgdGhlIG1vc3QgcG9ydGFibGUgd2F5IHRvIHJlcXVlc3QKLSAqIG1lbW9yeSBmcm9tIHRoZSBzeXN0ZW0gYWNyb3NzIHZhcmlvdXMgcGxhdGZvcm1zLgorICogQXJlbmFzIGFyZSBhbGxvY2F0ZWQgd2l0aCBtbWFwKCkgb24gc3lzdGVtcyBzdXBwb3J0aW5nIGFub255bW91cyBtZW1vcnkKKyAqIG1hcHBpbmdzIHRvIHJlZHVjZSBoZWFwIGZyYWdtZW50YXRpb24uCiAgKi8KICNkZWZpbmUgQVJFTkFfU0laRSAgICAgICAgICAgICAgKDI1NiA8PCAxMCkgICAgIC8qIDI1NktCICovCiAKQEAgLTQ0MCw2ICs0NTIsOSBAQAogICAgICwgUFQoNDgpLCBQVCg0OSksIFBUKDUwKSwgUFQoNTEpLCBQVCg1MiksIFBUKDUzKSwgUFQoNTQpLCBQVCg1NSkKICNpZiBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgPiA1NgogICAgICwgUFQoNTYpLCBQVCg1NyksIFBUKDU4KSwgUFQoNTkpLCBQVCg2MCksIFBUKDYxKSwgUFQoNjIpLCBQVCg2MykKKyNpZiBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgPiA2NAorI2Vycm9yICJOQl9TTUFMTF9TSVpFX0NMQVNTRVMgc2hvdWxkIGJlIGxlc3MgdGhhbiA2NCIKKyNlbmRpZiAvKiBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgPiA2NCAqLwogI2VuZGlmIC8qIE5CX1NNQUxMX1NJWkVfQ0xBU1NFUyA+IDU2ICovCiAjZW5kaWYgLyogTkJfU01BTExfU0laRV9DTEFTU0VTID4gNDggKi8KICNlbmRpZiAvKiBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgPiA0MCAqLwpAQCAtNTc3LDcgKzU5MiwxMiBAQAogICAgIGFyZW5hb2JqID0gdW51c2VkX2FyZW5hX29iamVjdHM7CiAgICAgdW51c2VkX2FyZW5hX29iamVjdHMgPSBhcmVuYW9iai0+bmV4dGFyZW5hOwogICAgIGFzc2VydChhcmVuYW9iai0+YWRkcmVzcyA9PSAwKTsKKyNpZmRlZiBBUkVOQVNfVVNFX01NQVAKKyAgICBhcmVuYW9iai0+YWRkcmVzcyA9ICh1cHRyKW1tYXAoTlVMTCwgQVJFTkFfU0laRSwgUFJPVF9SRUFEfFBST1RfV1JJVEUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1BUF9QUklWQVRFfE1BUF9BTk9OWU1PVVMsIC0xLCAwKTsKKyNlbHNlCiAgICAgYXJlbmFvYmotPmFkZHJlc3MgPSAodXB0ciltYWxsb2MoQVJFTkFfU0laRSk7CisjZW5kaWYKICAgICBpZiAoYXJlbmFvYmotPmFkZHJlc3MgPT0gMCkgewogICAgICAgICAvKiBUaGUgYWxsb2NhdGlvbiBmYWlsZWQ6IHJldHVybiBOVUxMIGFmdGVyIHB1dHRpbmcgdGhlCiAgICAgICAgICAqIGFyZW5hb2JqIGJhY2suCkBAIC0xMDU0LDcgKzEwNzQsMTEgQEAKICAgICAgICAgICAgICAgICB1bnVzZWRfYXJlbmFfb2JqZWN0cyA9IGFvOwogCiAgICAgICAgICAgICAgICAgLyogRnJlZSB0aGUgZW50aXJlIGFyZW5hLiAqLworI2lmZGVmIEFSRU5BU19VU0VfTU1BUAorICAgICAgICAgICAgICAgIG11bm1hcCgodm9pZCAqKWFvLT5hZGRyZXNzLCBBUkVOQV9TSVpFKTsKKyNlbHNlCiAgICAgICAgICAgICAgICAgZnJlZSgodm9pZCAqKWFvLT5hZGRyZXNzKTsKKyNlbmRpZgogICAgICAgICAgICAgICAgIGFvLT5hZGRyZXNzID0gMDsgICAgICAgICAgICAgICAgICAgICAgICAvKiBtYXJrIHVuYXNzb2NpYXRlZCAqLwogICAgICAgICAgICAgICAgIC0tbmFyZW5hc19jdXJyZW50bHlfYWxsb2NhdGVkOwogCkBAIC0xNzc1LDcgKzE3OTksNiBAQAogICAgICAqIHdpbGwgYmUgbGl2aW5nIGluIGZ1bGwgcG9vbHMgLS0gd291bGQgYmUgYSBzaGFtZSB0byBtaXNzIHRoZW0uCiAgICAgICovCiAgICAgZm9yIChpID0gMDsgaSA8IG1heGFyZW5hczsgKytpKSB7Ci0gICAgICAgIHVpbnQgcG9vbHNpbmFyZW5hOwogICAgICAgICB1aW50IGo7CiAgICAgICAgIHVwdHIgYmFzZSA9IGFyZW5hc1tpXS5hZGRyZXNzOwogCkBAIC0xNzg0LDcgKzE4MDcsNiBAQAogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIG5hcmVuYXMgKz0gMTsKIAotICAgICAgICBwb29sc2luYXJlbmEgPSBhcmVuYXNbaV0ubnRvdGFscG9vbHM7CiAgICAgICAgIG51bWZyZWVwb29scyArPSBhcmVuYXNbaV0ubmZyZWVwb29sczsKIAogICAgICAgICAvKiByb3VuZCB1cCB0byBwb29sIGFsaWdubWVudCAqLwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9yYW5nZW9iamVjdC5jIGIvT2JqZWN0cy9yYW5nZW9iamVjdC5jCmluZGV4IDU4ZDM3M2MuLmZiNmE1ZmUgMTAwNjQ0Ci0tLSBhL09iamVjdHMvcmFuZ2VvYmplY3QuYworKysgYi9PYmplY3RzL3Jhbmdlb2JqZWN0LmMKQEAgLTEsNiArMSw3IEBACiAvKiBSYW5nZSBvYmplY3QgaW1wbGVtZW50YXRpb24gKi8KIAogI2luY2x1ZGUgIlB5dGhvbi5oIgorI2luY2x1ZGUgInN0cnVjdG1lbWJlci5oIgogCiAvKiBTdXBwb3J0IG9iamVjdHMgd2hvc2UgbGVuZ3RoIGlzID4gUFlfU1NJWkVfVF9NQVguCiAKQEAgLTYwOSw2ICs2MTAsMTM3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQWV9JVEVSU0VBUkNIX0NPTlRBSU5TKTsKIH0KIAorLyogQ29tcGFyZSB0d28gcmFuZ2Ugb2JqZWN0cy4gIFJldHVybiAxIGZvciBlcXVhbCwgMCBmb3Igbm90IGVxdWFsCisgICBhbmQgLTEgb24gZXJyb3IuICBUaGUgYWxnb3JpdGhtIGlzIHJvdWdobHkgdGhlIEMgZXF1aXZhbGVudCBvZgorCisgICBpZiByMCBpcyByMToKKyAgICAgICByZXR1cm4gVHJ1ZQorICAgaWYgbGVuKHIwKSAhPSBsZW4ocjEpOgorICAgICAgIHJldHVybiBGYWxzZQorICAgaWYgbm90IGxlbihyMCk6CisgICAgICAgcmV0dXJuIFRydWUKKyAgIGlmIHIwLnN0YXJ0ICE9IHIxLnN0YXJ0OgorICAgICAgIHJldHVybiBGYWxzZQorICAgaWYgbGVuKHIwKSA9PSAxOgorICAgICAgIHJldHVybiBUcnVlCisgICByZXR1cm4gcjAuc3RlcCA9PSByMS5zdGVwCisqLworc3RhdGljIGludAorcmFuZ2VfZXF1YWxzKHJhbmdlb2JqZWN0ICpyMCwgcmFuZ2VvYmplY3QgKnIxKQoreworICAgIGludCBjbXBfcmVzdWx0OworICAgIFB5T2JqZWN0ICpvbmU7CisKKyAgICBpZiAocjAgPT0gcjEpCisgICAgICAgIHJldHVybiAxOworICAgIGNtcF9yZXN1bHQgPSBQeU9iamVjdF9SaWNoQ29tcGFyZUJvb2wocjAtPmxlbmd0aCwgcjEtPmxlbmd0aCwgUHlfRVEpOworICAgIC8qIFJldHVybiBGYWxzZSBvciBlcnJvciB0byB0aGUgY2FsbGVyLiAqLworICAgIGlmIChjbXBfcmVzdWx0ICE9IDEpCisgICAgICAgIHJldHVybiBjbXBfcmVzdWx0OworICAgIGNtcF9yZXN1bHQgPSBQeU9iamVjdF9Ob3QocjAtPmxlbmd0aCk7CisgICAgLyogUmV0dXJuIFRydWUgb3IgZXJyb3IgdG8gdGhlIGNhbGxlci4gKi8KKyAgICBpZiAoY21wX3Jlc3VsdCAhPSAwKQorICAgICAgICByZXR1cm4gY21wX3Jlc3VsdDsKKyAgICBjbXBfcmVzdWx0ID0gUHlPYmplY3RfUmljaENvbXBhcmVCb29sKHIwLT5zdGFydCwgcjEtPnN0YXJ0LCBQeV9FUSk7CisgICAgLyogUmV0dXJuIEZhbHNlIG9yIGVycm9yIHRvIHRoZSBjYWxsZXIuICovCisgICAgaWYgKGNtcF9yZXN1bHQgIT0gMSkKKyAgICAgICAgcmV0dXJuIGNtcF9yZXN1bHQ7CisgICAgb25lID0gUHlMb25nX0Zyb21Mb25nKDEpOworICAgIGlmICghb25lKQorICAgICAgICByZXR1cm4gLTE7CisgICAgY21wX3Jlc3VsdCA9IFB5T2JqZWN0X1JpY2hDb21wYXJlQm9vbChyMC0+bGVuZ3RoLCBvbmUsIFB5X0VRKTsKKyAgICBQeV9ERUNSRUYob25lKTsKKyAgICAvKiBSZXR1cm4gVHJ1ZSBvciBlcnJvciB0byB0aGUgY2FsbGVyLiAqLworICAgIGlmIChjbXBfcmVzdWx0ICE9IDApCisgICAgICAgIHJldHVybiBjbXBfcmVzdWx0OworICAgIHJldHVybiBQeU9iamVjdF9SaWNoQ29tcGFyZUJvb2wocjAtPnN0ZXAsIHIxLT5zdGVwLCBQeV9FUSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCityYW5nZV9yaWNoY29tcGFyZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm90aGVyLCBpbnQgb3ApCit7CisgICAgaW50IHJlc3VsdDsKKworICAgIGlmICghUHlSYW5nZV9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKKyAgICBzd2l0Y2ggKG9wKSB7CisgICAgY2FzZSBQeV9ORToKKyAgICBjYXNlIFB5X0VROgorICAgICAgICByZXN1bHQgPSByYW5nZV9lcXVhbHMoKHJhbmdlb2JqZWN0KilzZWxmLCAocmFuZ2VvYmplY3QqKW90aGVyKTsKKyAgICAgICAgaWYgKHJlc3VsdCA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBpZiAob3AgPT0gUHlfTkUpCisgICAgICAgICAgICByZXN1bHQgPSAhcmVzdWx0OworICAgICAgICBpZiAocmVzdWx0KQorICAgICAgICAgICAgUHlfUkVUVVJOX1RSVUU7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIFB5X1JFVFVSTl9GQUxTRTsKKyAgICBjYXNlIFB5X0xFOgorICAgIGNhc2UgUHlfR0U6CisgICAgY2FzZSBQeV9MVDoKKyAgICBjYXNlIFB5X0dUOgorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorfQorCisvKiBIYXNoIGZ1bmN0aW9uIGZvciByYW5nZSBvYmplY3RzLiAgUm91Z2ggQyBlcXVpdmFsZW50IG9mCisKKyAgIGlmIG5vdCBsZW4ocik6CisgICAgICAgcmV0dXJuIGhhc2goKGxlbihyKSwgTm9uZSwgTm9uZSkpCisgICBpZiBsZW4ocikgPT0gMToKKyAgICAgICByZXR1cm4gaGFzaCgobGVuKHIpLCByLnN0YXJ0LCBOb25lKSkKKyAgIHJldHVybiBoYXNoKChsZW4ociksIHIuc3RhcnQsIHIuc3RlcCkpCisqLworc3RhdGljIFB5X2hhc2hfdAorcmFuZ2VfaGFzaChyYW5nZW9iamVjdCAqcikKK3sKKyAgICBQeU9iamVjdCAqdDsKKyAgICBQeV9oYXNoX3QgcmVzdWx0ID0gLTE7CisgICAgaW50IGNtcF9yZXN1bHQ7CisKKyAgICB0ID0gUHlUdXBsZV9OZXcoMyk7CisgICAgaWYgKCF0KQorICAgICAgICByZXR1cm4gLTE7CisgICAgUHlfSU5DUkVGKHItPmxlbmd0aCk7CisgICAgUHlUdXBsZV9TRVRfSVRFTSh0LCAwLCByLT5sZW5ndGgpOworICAgIGNtcF9yZXN1bHQgPSBQeU9iamVjdF9Ob3Qoci0+bGVuZ3RoKTsKKyAgICBpZiAoY21wX3Jlc3VsdCA9PSAtMSkKKyAgICAgICAgZ290byBlbmQ7CisgICAgaWYgKGNtcF9yZXN1bHQgPT0gMSkgeworICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CisgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgUHlUdXBsZV9TRVRfSVRFTSh0LCAxLCBQeV9Ob25lKTsKKyAgICAgICAgUHlUdXBsZV9TRVRfSVRFTSh0LCAyLCBQeV9Ob25lKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5T2JqZWN0ICpvbmU7CisgICAgICAgIFB5X0lOQ1JFRihyLT5zdGFydCk7CisgICAgICAgIFB5VHVwbGVfU0VUX0lURU0odCwgMSwgci0+c3RhcnQpOworICAgICAgICBvbmUgPSBQeUxvbmdfRnJvbUxvbmcoMSk7CisgICAgICAgIGlmICghb25lKQorICAgICAgICAgICAgZ290byBlbmQ7CisgICAgICAgIGNtcF9yZXN1bHQgPSBQeU9iamVjdF9SaWNoQ29tcGFyZUJvb2woci0+bGVuZ3RoLCBvbmUsIFB5X0VRKTsKKyAgICAgICAgUHlfREVDUkVGKG9uZSk7CisgICAgICAgIGlmIChjbXBfcmVzdWx0ID09IC0xKQorICAgICAgICAgICAgZ290byBlbmQ7CisgICAgICAgIGlmIChjbXBfcmVzdWx0ID09IDEpIHsKKyAgICAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0odCwgMiwgUHlfTm9uZSk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBQeV9JTkNSRUYoci0+c3RlcCk7CisgICAgICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKHQsIDIsIHItPnN0ZXApOworICAgICAgICB9CisgICAgfQorICAgIHJlc3VsdCA9IFB5T2JqZWN0X0hhc2godCk7CisgIGVuZDoKKyAgICBQeV9ERUNSRUYodCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogc3RhdGljIFB5T2JqZWN0ICoKIHJhbmdlX2NvdW50KHJhbmdlb2JqZWN0ICpyLCBQeU9iamVjdCAqb2IpCiB7CkBAIC03NDksNiArODgxLDEzIEBACiAgICAge05VTEwsICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KIH07CiAKK3N0YXRpYyBQeU1lbWJlckRlZiByYW5nZV9tZW1iZXJzW10gPSB7CisgICAgeyJzdGFydCIsICAgVF9PQkpFQ1RfRVgsICAgIG9mZnNldG9mKHJhbmdlb2JqZWN0LCBzdGFydCksICAgUkVBRE9OTFl9LAorICAgIHsic3RvcCIsICAgIFRfT0JKRUNUX0VYLCAgICBvZmZzZXRvZihyYW5nZW9iamVjdCwgc3RvcCksICAgIFJFQURPTkxZfSwKKyAgICB7InN0ZXAiLCAgICBUX09CSkVDVF9FWCwgICAgb2Zmc2V0b2YocmFuZ2VvYmplY3QsIHN0ZXApLCAgICBSRUFET05MWX0sCisgICAgezB9Cit9OworCiBQeVR5cGVPYmplY3QgUHlSYW5nZV9UeXBlID0gewogICAgICAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoJlB5VHlwZV9UeXBlLCAwKQogICAgICAgICAicmFuZ2UiLCAgICAgICAgICAgICAgICAvKiBOYW1lIG9mIHRoaXMgdHlwZSAqLwpAQCAtNzYzLDcgKzkwMiw3IEBACiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX251bWJlciAqLwogICAgICAgICAmcmFuZ2VfYXNfc2VxdWVuY2UsICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLwogICAgICAgICAmcmFuZ2VfYXNfbWFwcGluZywgICAgICAvKiB0cF9hc19tYXBwaW5nICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2hhc2ggKi8KKyAgICAgICAgKGhhc2hmdW5jKXJhbmdlX2hhc2gsICAgLyogdHBfaGFzaCAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jYWxsICovCiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3N0ciAqLwogICAgICAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwgIC8qIHRwX2dldGF0dHJvICovCkBAIC03NzMsMTIgKzkxMiwxMiBAQAogICAgICAgICByYW5nZV9kb2MsICAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICAgICAgcmFuZ2VfcmljaGNvbXBhcmUsICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KICAgICAgICAgcmFuZ2VfaXRlciwgICAgICAgICAgICAgLyogdHBfaXRlciAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLwogICAgICAgICByYW5nZV9tZXRob2RzLCAgICAgICAgICAvKiB0cF9tZXRob2RzICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KKyAgICAgICAgcmFuZ2VfbWVtYmVycywgICAgICAgICAgLyogdHBfbWVtYmVycyAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYmFzZSAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0ICovCmRpZmYgLS1naXQgYS9PYmplY3RzL3NldG9iamVjdC5jIGIvT2JqZWN0cy9zZXRvYmplY3QuYwppbmRleCAzYWJlZWZiLi5hMDVhOTdiIDEwMDY0NAotLS0gYS9PYmplY3RzL3NldG9iamVjdC5jCisrKyBiL09iamVjdHMvc2V0b2JqZWN0LmMKQEAgLTc3LDcgKzc3LDcgQEAKIHN0YXRpYyBzZXRlbnRyeSAqCiBzZXRfbG9va2tleShQeVNldE9iamVjdCAqc28sIFB5T2JqZWN0ICprZXksIHJlZ2lzdGVyIFB5X2hhc2hfdCBoYXNoKQogewotICAgIHJlZ2lzdGVyIFB5X3NzaXplX3QgaTsKKyAgICByZWdpc3RlciBzaXplX3QgaTsKICAgICByZWdpc3RlciBzaXplX3QgcGVydHVyYjsKICAgICByZWdpc3RlciBzZXRlbnRyeSAqZnJlZXNsb3Q7CiAgICAgcmVnaXN0ZXIgc2l6ZV90IG1hc2sgPSBzby0+bWFzazsKQEAgLTg2LDcgKzg2LDcgQEAKICAgICByZWdpc3RlciBpbnQgY21wOwogICAgIFB5T2JqZWN0ICpzdGFydGtleTsKIAotICAgIGkgPSBoYXNoICYgbWFzazsKKyAgICBpID0gKHNpemVfdCloYXNoICYgbWFzazsKICAgICBlbnRyeSA9ICZ0YWJsZVtpXTsKICAgICBpZiAoZW50cnktPmtleSA9PSBOVUxMIHx8IGVudHJ5LT5rZXkgPT0ga2V5KQogICAgICAgICByZXR1cm4gZW50cnk7CkBAIC0xNTksNyArMTU5LDcgQEAKIHN0YXRpYyBzZXRlbnRyeSAqCiBzZXRfbG9va2tleV91bmljb2RlKFB5U2V0T2JqZWN0ICpzbywgUHlPYmplY3QgKmtleSwgcmVnaXN0ZXIgUHlfaGFzaF90IGhhc2gpCiB7Ci0gICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBpOworICAgIHJlZ2lzdGVyIHNpemVfdCBpOwogICAgIHJlZ2lzdGVyIHNpemVfdCBwZXJ0dXJiOwogICAgIHJlZ2lzdGVyIHNldGVudHJ5ICpmcmVlc2xvdDsKICAgICByZWdpc3RlciBzaXplX3QgbWFzayA9IHNvLT5tYXNrOwpAQCAtMTc0LDcgKzE3NCw3IEBACiAgICAgICAgIHNvLT5sb29rdXAgPSBzZXRfbG9va2tleTsKICAgICAgICAgcmV0dXJuIHNldF9sb29ra2V5KHNvLCBrZXksIGhhc2gpOwogICAgIH0KLSAgICBpID0gaGFzaCAmIG1hc2s7CisgICAgaSA9IChzaXplX3QpaGFzaCAmIG1hc2s7CiAgICAgZW50cnkgPSAmdGFibGVbaV07CiAgICAgaWYgKGVudHJ5LT5rZXkgPT0gTlVMTCB8fCBlbnRyeS0+a2V5ID09IGtleSkKICAgICAgICAgcmV0dXJuIGVudHJ5OwpAQCAtMjU2LDcgKzI1Niw3IEBACiAgICAgc2V0ZW50cnkgKnRhYmxlID0gc28tPnRhYmxlOwogICAgIHJlZ2lzdGVyIHNldGVudHJ5ICplbnRyeTsKIAotICAgIGkgPSBoYXNoICYgbWFzazsKKyAgICBpID0gKHNpemVfdCloYXNoICYgbWFzazsKICAgICBlbnRyeSA9ICZ0YWJsZVtpXTsKICAgICBmb3IgKHBlcnR1cmIgPSBoYXNoOyBlbnRyeS0+a2V5ICE9IE5VTEw7IHBlcnR1cmIgPj49IFBFUlRVUkJfU0hJRlQpIHsKICAgICAgICAgaSA9IChpIDw8IDIpICsgaSArIHBlcnR1cmIgKyAxOwpAQCAtMzg2LDcgKzM4Niw3IEBACiAgICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBuX3VzZWQ7CiAKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgeworICAgICAgICAoaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiAtMTsKQEAgLTQzNCw3ICs0MzQsNyBAQAogICAgIGFzc2VydCAoUHlBbnlTZXRfQ2hlY2soc28pKTsKIAogICAgIGlmICghUHlVbmljb2RlX0NoZWNrRXhhY3Qoa2V5KSB8fAotICAgICAgICAoaGFzaCA9ICgoUHlVbmljb2RlT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CisgICAgICAgIChoYXNoID0gKChQeUFTQ0lJT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CiAgICAgICAgIGhhc2ggPSBQeU9iamVjdF9IYXNoKGtleSk7CiAgICAgICAgIGlmIChoYXNoID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIC0xOwpAQCAtNTc5LDExICs1NzksOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHNldF9yZXByKFB5U2V0T2JqZWN0ICpzbykKIHsKLSAgICBQeU9iamVjdCAqa2V5cywgKnJlc3VsdD1OVUxMOwotICAgIFB5X1VOSUNPREUgKnU7CisgICAgUHlPYmplY3QgKnJlc3VsdD1OVUxMLCAqa2V5cywgKmxpc3RyZXByLCAqdG1wOwogICAgIGludCBzdGF0dXMgPSBQeV9SZXByRW50ZXIoKFB5T2JqZWN0Kilzbyk7Ci0gICAgUHlPYmplY3QgKmxpc3RyZXByOwotICAgIFB5X3NzaXplX3QgbmV3c2l6ZTsKIAogICAgIGlmIChzdGF0dXMgIT0gMCkgewogICAgICAgICBpZiAoc3RhdHVzIDwgMCkKQEAgLTYwMSwyOSArNTk4LDI0IEBACiAgICAgaWYgKGtleXMgPT0gTlVMTCkKICAgICAgICAgZ290byBkb25lOwogCisgICAgLyogcmVwcihrZXlzKVsxOi0xXSAqLwogICAgIGxpc3RyZXByID0gUHlPYmplY3RfUmVwcihrZXlzKTsKICAgICBQeV9ERUNSRUYoa2V5cyk7CiAgICAgaWYgKGxpc3RyZXByID09IE5VTEwpCiAgICAgICAgIGdvdG8gZG9uZTsKLSAgICBuZXdzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKGxpc3RyZXByKTsKLSAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgbmV3c2l6ZSk7Ci0gICAgaWYgKHJlc3VsdCkgewotICAgICAgICB1ID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KTsKLSAgICAgICAgKnUrKyA9ICd7JzsKLSAgICAgICAgLyogT21pdCB0aGUgYnJhY2tldHMgZnJvbSB0aGUgbGlzdHJlcHIgKi8KLSAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHUsIFB5VW5pY29kZV9BU19VTklDT0RFKGxpc3RyZXByKSsxLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKGxpc3RyZXByKS0yKTsKLSAgICAgICAgdSArPSBuZXdzaXplLTI7Ci0gICAgICAgICp1KysgPSAnfSc7Ci0gICAgfQorICAgIHRtcCA9IFB5VW5pY29kZV9TdWJzdHJpbmcobGlzdHJlcHIsIDEsIFB5VW5pY29kZV9HRVRfTEVOR1RIKGxpc3RyZXByKS0xKTsKICAgICBQeV9ERUNSRUYobGlzdHJlcHIpOwotICAgIGlmIChQeV9UWVBFKHNvKSAhPSAmUHlTZXRfVHlwZSkgewotICAgICAgICBQeU9iamVjdCAqdG1wID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVzKCVVKSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKHNvKS0+dHBfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCk7Ci0gICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwotICAgICAgICByZXN1bHQgPSB0bXA7Ci0gICAgfQorICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgZ290byBkb25lOworICAgIGxpc3RyZXByID0gdG1wOworCisgICAgaWYgKFB5X1RZUEUoc28pICE9ICZQeVNldF9UeXBlKQorICAgICAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJXMoeyVVfSkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKHNvKS0+dHBfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdHJlcHIpOworICAgIGVsc2UKKyAgICAgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoInslVX0iLCBsaXN0cmVwcik7CisgICAgUHlfREVDUkVGKGxpc3RyZXByKTsKIGRvbmU6CiAgICAgUHlfUmVwckxlYXZlKChQeU9iamVjdCopc28pOwogICAgIHJldHVybiByZXN1bHQ7CkBAIC02ODIsNyArNjc0LDcgQEAKICAgICBzZXRlbnRyeSAqZW50cnk7CiAKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgeworICAgICAgICAoaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiAtMTsKQEAgLTc2OCwxNCArNzYwLDE0IEBACiBmcm96ZW5zZXRfaGFzaChQeU9iamVjdCAqc2VsZikKIHsKICAgICBQeVNldE9iamVjdCAqc28gPSAoUHlTZXRPYmplY3QgKilzZWxmOwotICAgIFB5X2hhc2hfdCBoLCBoYXNoID0gMTkyNzg2ODIzN0w7CisgICAgUHlfdWhhc2hfdCBoLCBoYXNoID0gMTkyNzg2ODIzN1U7CiAgICAgc2V0ZW50cnkgKmVudHJ5OwogICAgIFB5X3NzaXplX3QgcG9zID0gMDsKIAogICAgIGlmIChzby0+aGFzaCAhPSAtMSkKICAgICAgICAgcmV0dXJuIHNvLT5oYXNoOwogCi0gICAgaGFzaCAqPSBQeVNldF9HRVRfU0laRShzZWxmKSArIDE7CisgICAgaGFzaCAqPSAoUHlfdWhhc2hfdClQeVNldF9HRVRfU0laRShzZWxmKSArIDE7CiAgICAgd2hpbGUgKHNldF9uZXh0KHNvLCAmcG9zLCAmZW50cnkpKSB7CiAgICAgICAgIC8qIFdvcmsgdG8gaW5jcmVhc2UgdGhlIGJpdCBkaXNwZXJzaW9uIGZvciBjbG9zZWx5IHNwYWNlZCBoYXNoCiAgICAgICAgICAgIHZhbHVlcy4gIFRoZSBpcyBpbXBvcnRhbnQgYmVjYXVzZSBzb21lIHVzZSBjYXNlcyBoYXZlIG1hbnkKQEAgLTc4MywxMSArNzc1LDExIEBACiAgICAgICAgICAgIGhhc2hlcyBzbyB0aGF0IG1hbnkgZGlzdGluY3QgY29tYmluYXRpb25zIGNvbGxhcHNlIHRvIG9ubHkKICAgICAgICAgICAgYSBoYW5kZnVsIG9mIGRpc3RpbmN0IGhhc2ggdmFsdWVzLiAqLwogICAgICAgICBoID0gZW50cnktPmhhc2g7Ci0gICAgICAgIGhhc2ggXj0gKGggXiAoaCA8PCAxNikgXiA4OTg2OTc0N0wpICAqIDM2NDQ3OTgxNjd1OworICAgICAgICBoYXNoIF49IChoIF4gKGggPDwgMTYpIF4gODk4Njk3NDdVKSAgKiAzNjQ0Nzk4MTY3VTsKICAgICB9Ci0gICAgaGFzaCA9IGhhc2ggKiA2OTA2OUwgKyA5MDcxMzM5MjNMOworICAgIGhhc2ggPSBoYXNoICogNjkwNjlVICsgOTA3MTMzOTIzVTsKICAgICBpZiAoaGFzaCA9PSAtMSkKLSAgICAgICAgaGFzaCA9IDU5MDkyMzcxM0w7CisgICAgICAgIGhhc2ggPSA1OTA5MjM3MTNVOwogICAgIHNvLT5oYXNoID0gaGFzaDsKICAgICByZXR1cm4gaGFzaDsKIH0KQEAgLTEwNzYsOSArMTA2OCwxMCBAQAogICAgIHJldHVybiBlbXB0eWZyb3plbnNldDsKIH0KIAotdm9pZAotUHlTZXRfRmluaSh2b2lkKQoraW50CitQeVNldF9DbGVhckZyZWVMaXN0KHZvaWQpCiB7CisgICAgaW50IGZyZWVsaXN0X3NpemUgPSBudW1mcmVlOwogICAgIFB5U2V0T2JqZWN0ICpzbzsKIAogICAgIHdoaWxlIChudW1mcmVlKSB7CkBAIC0xMDg2LDYgKzEwNzksMTMgQEAKICAgICAgICAgc28gPSBmcmVlX2xpc3RbbnVtZnJlZV07CiAgICAgICAgIFB5T2JqZWN0X0dDX0RlbChzbyk7CiAgICAgfQorICAgIHJldHVybiBmcmVlbGlzdF9zaXplOworfQorCit2b2lkCitQeVNldF9GaW5pKHZvaWQpCit7CisgICAgUHlTZXRfQ2xlYXJGcmVlTGlzdCgpOwogICAgIFB5X0NMRUFSKGR1bW15KTsKICAgICBQeV9DTEVBUihlbXB0eWZyb3plbnNldCk7CiB9CkBAIC0xMjEwLDEwICsxMjEwLDggQEAKIHsKICAgICBQeVNldE9iamVjdCAqcmVzdWx0OwogCi0gICAgaWYgKCFQeUFueVNldF9DaGVjayhzbykgfHwgIVB5QW55U2V0X0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlBbnlTZXRfQ2hlY2soc28pIHx8ICFQeUFueVNldF9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIAogICAgIHJlc3VsdCA9IChQeVNldE9iamVjdCAqKXNldF9jb3B5KHNvKTsKICAgICBpZiAocmVzdWx0ID09IE5VTEwpCkBAIC0xMjMwLDEwICsxMjI4LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzZXRfaW9yKFB5U2V0T2JqZWN0ICpzbywgUHlPYmplY3QgKm90aGVyKQogewotICAgIGlmICghUHlBbnlTZXRfQ2hlY2sob3RoZXIpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFQeUFueVNldF9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKKwogICAgIGlmIChzZXRfdXBkYXRlX2ludGVybmFsKHNvLCBvdGhlcikgPT0gLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0lOQ1JFRihzbyk7CkBAIC0xMzgzLDEwICsxMzgwLDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzZXRfYW5kKFB5U2V0T2JqZWN0ICpzbywgUHlPYmplY3QgKm90aGVyKQogewotICAgIGlmICghUHlBbnlTZXRfQ2hlY2soc28pIHx8ICFQeUFueVNldF9DaGVjayhvdGhlcikpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBpZiAoIVB5QW55U2V0X0NoZWNrKHNvKSB8fCAhUHlBbnlTZXRfQ2hlY2sob3RoZXIpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgcmV0dXJuIHNldF9pbnRlcnNlY3Rpb24oc28sIG90aGVyKTsKIH0KIApAQCAtMTM5NSwxMCArMTM5MCw4IEBACiB7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKIAotICAgIGlmICghUHlBbnlTZXRfQ2hlY2sob3RoZXIpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFQeUFueVNldF9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICByZXN1bHQgPSBzZXRfaW50ZXJzZWN0aW9uX3VwZGF0ZShzbywgb3RoZXIpOwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xNjI1LDIwICsxNjE4LDE2IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc2V0X3N1YihQeVNldE9iamVjdCAqc28sIFB5T2JqZWN0ICpvdGhlcikKIHsKLSAgICBpZiAoIVB5QW55U2V0X0NoZWNrKHNvKSB8fCAhUHlBbnlTZXRfQ2hlY2sob3RoZXIpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFQeUFueVNldF9DaGVjayhzbykgfHwgIVB5QW55U2V0X0NoZWNrKG90aGVyKSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIHJldHVybiBzZXRfZGlmZmVyZW5jZShzbywgb3RoZXIpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogc2V0X2lzdWIoUHlTZXRPYmplY3QgKnNvLCBQeU9iamVjdCAqb3RoZXIpCiB7Ci0gICAgaWYgKCFQeUFueVNldF9DaGVjayhvdGhlcikpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBpZiAoIVB5QW55U2V0X0NoZWNrKG90aGVyKSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIGlmIChzZXRfZGlmZmVyZW5jZV91cGRhdGVfaW50ZXJuYWwoc28sIG90aGVyKSA9PSAtMSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgUHlfSU5DUkVGKHNvKTsKQEAgLTE3MzYsMTAgKzE3MjUsOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHNldF94b3IoUHlTZXRPYmplY3QgKnNvLCBQeU9iamVjdCAqb3RoZXIpCiB7Ci0gICAgaWYgKCFQeUFueVNldF9DaGVjayhzbykgfHwgIVB5QW55U2V0X0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlBbnlTZXRfQ2hlY2soc28pIHx8ICFQeUFueVNldF9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICByZXR1cm4gc2V0X3N5bW1ldHJpY19kaWZmZXJlbmNlKHNvLCBvdGhlcik7CiB9CiAKQEAgLTE3NDgsMTAgKzE3MzUsOCBAQAogewogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAKLSAgICBpZiAoIVB5QW55U2V0X0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlBbnlTZXRfQ2hlY2sob3RoZXIpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgcmVzdWx0ID0gc2V0X3N5bW1ldHJpY19kaWZmZXJlbmNlX3VwZGF0ZShzbywgb3RoZXIpOwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xODEzLDEwICsxNzk4LDkgQEAKIHsKICAgICBQeU9iamVjdCAqcjEsICpyMjsKIAotICAgIGlmKCFQeUFueVNldF9DaGVjayh3KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmKCFQeUFueVNldF9DaGVjayh3KSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOworCiAgICAgc3dpdGNoIChvcCkgewogICAgIGNhc2UgUHlfRVE6CiAgICAgICAgIGlmIChQeVNldF9HRVRfU0laRSh2KSAhPSBQeVNldF9HRVRfU0laRSh3KSkKQEAgLTE4NDYsOCArMTgzMCw3IEBACiAgICAgICAgICAgICBQeV9SRVRVUk5fRkFMU0U7CiAgICAgICAgIHJldHVybiBzZXRfaXNzdXBlcnNldCh2LCB3KTsKICAgICB9Ci0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMTk1OSw2ICsxOTQyLDcgQEAKIHNldF9yZWR1Y2UoUHlTZXRPYmplY3QgKnNvKQogewogICAgIFB5T2JqZWN0ICprZXlzPU5VTEwsICphcmdzPU5VTEwsICpyZXN1bHQ9TlVMTCwgKmRpY3Q9TlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2RpY3RfXyk7CiAKICAgICBrZXlzID0gUHlTZXF1ZW5jZV9MaXN0KChQeU9iamVjdCAqKXNvKTsKICAgICBpZiAoa2V5cyA9PSBOVUxMKQpAQCAtMTk2Niw3ICsxOTUwLDcgQEAKICAgICBhcmdzID0gUHlUdXBsZV9QYWNrKDEsIGtleXMpOwogICAgIGlmIChhcmdzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZG9uZTsKLSAgICBkaWN0ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZygoUHlPYmplY3QgKilzbywgIl9fZGljdF9fIik7CisgICAgZGljdCA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0ICopc28sICZQeUlkX19fZGljdF9fKTsKICAgICBpZiAoZGljdCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIGRpY3QgPSBQeV9Ob25lOwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zbGljZW9iamVjdC5jIGIvT2JqZWN0cy9zbGljZW9iamVjdC5jCmluZGV4IGQ3Yjk3YzkuLmM0YTE5MDcgMTAwNjQ0Ci0tLSBhL09iamVjdHMvc2xpY2VvYmplY3QuYworKysgYi9PYmplY3RzL3NsaWNlb2JqZWN0LmMKQEAgLTE3LDYgKzE3LDE3IEBACiAjaW5jbHVkZSAic3RydWN0bWVtYmVyLmgiCiAKIHN0YXRpYyBQeU9iamVjdCAqCitlbGxpcHNpc19uZXcoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBpZiAoUHlUdXBsZV9HRVRfU0laRShhcmdzKSB8fCAoa3dhcmdzICYmIFB5RGljdF9TaXplKGt3YXJncykpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJFbGxpcHNpc1R5cGUgdGFrZXMgbm8gYXJndW1lbnRzIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBQeV9JTkNSRUYoUHlfRWxsaXBzaXMpOworICAgIHJldHVybiBQeV9FbGxpcHNpczsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKIGVsbGlwc2lzX3JlcHIoUHlPYmplY3QgKm9wKQogewogICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZygiRWxsaXBzaXMiKTsKQEAgLTQzLDYgKzU0LDI0IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KICAgICBQeV9UUEZMQUdTX0RFRkFVTFQsICAgICAgICAgICAgICAgICAvKiB0cF9mbGFncyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX2dldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX3NldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pbml0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYWxsb2MgKi8KKyAgICBlbGxpcHNpc19uZXcsICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9uZXcgKi8KIH07CiAKIFB5T2JqZWN0IF9QeV9FbGxpcHNpc09iamVjdCA9IHsKQEAgLTUxLDE5ICs4MCwzOCBAQAogfTsKIAogCi0vKiBTbGljZSBvYmplY3QgaW1wbGVtZW50YXRpb24KKy8qIFNsaWNlIG9iamVjdCBpbXBsZW1lbnRhdGlvbiAqLwogCi0gICBzdGFydCwgc3RvcCwgYW5kIHN0ZXAgYXJlIHB5dGhvbiBvYmplY3RzIHdpdGggTm9uZSBpbmRpY2F0aW5nIG5vCisvKiBVc2luZyBhIGNhY2hlIGlzIHZlcnkgZWZmZWN0aXZlIHNpbmNlIHR5cGljYWxseSBvbmx5IGEgc2luZ2xlIHNsaWNlIGlzCisgKiBjcmVhdGVkIGFuZCB0aGVuIGRlbGV0ZWQgYWdhaW4KKyAqLworc3RhdGljIFB5U2xpY2VPYmplY3QgKnNsaWNlX2NhY2hlID0gTlVMTDsKK3ZvaWQgUHlTbGljZV9GaW5pKHZvaWQpCit7CisgICAgUHlTbGljZU9iamVjdCAqb2JqID0gc2xpY2VfY2FjaGU7CisgICAgaWYgKG9iaiAhPSBOVUxMKSB7CisgICAgICAgIHNsaWNlX2NhY2hlID0gTlVMTDsKKyAgICAgICAgUHlPYmplY3RfRGVsKG9iaik7CisgICAgfQorfQorCisvKiBzdGFydCwgc3RvcCwgYW5kIHN0ZXAgYXJlIHB5dGhvbiBvYmplY3RzIHdpdGggTm9uZSBpbmRpY2F0aW5nIG5vCiAgICBpbmRleCBpcyBwcmVzZW50LgogKi8KIAogUHlPYmplY3QgKgogUHlTbGljZV9OZXcoUHlPYmplY3QgKnN0YXJ0LCBQeU9iamVjdCAqc3RvcCwgUHlPYmplY3QgKnN0ZXApCiB7Ci0gICAgUHlTbGljZU9iamVjdCAqb2JqID0gUHlPYmplY3RfTmV3KFB5U2xpY2VPYmplY3QsICZQeVNsaWNlX1R5cGUpOwotCi0gICAgaWYgKG9iaiA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeVNsaWNlT2JqZWN0ICpvYmo7CisgICAgaWYgKHNsaWNlX2NhY2hlICE9IE5VTEwpIHsKKyAgICAgICAgb2JqID0gc2xpY2VfY2FjaGU7CisgICAgICAgIHNsaWNlX2NhY2hlID0gTlVMTDsKKyAgICAgICAgX1B5X05ld1JlZmVyZW5jZSgoUHlPYmplY3QgKilvYmopOworICAgIH0gZWxzZSB7CisgICAgICAgIG9iaiA9IFB5T2JqZWN0X05ldyhQeVNsaWNlT2JqZWN0LCAmUHlTbGljZV9UeXBlKTsKKyAgICAgICAgaWYgKG9iaiA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogCiAgICAgaWYgKHN0ZXAgPT0gTlVMTCkgc3RlcCA9IFB5X05vbmU7CiAgICAgUHlfSU5DUkVGKHN0ZXApOwpAQCAtMjMxLDcgKzI3OSwxMCBAQAogICAgIFB5X0RFQ1JFRihyLT5zdGVwKTsKICAgICBQeV9ERUNSRUYoci0+c3RhcnQpOwogICAgIFB5X0RFQ1JFRihyLT5zdG9wKTsKLSAgICBQeU9iamVjdF9EZWwocik7CisgICAgaWYgKHNsaWNlX2NhY2hlID09IE5VTEwpCisgICAgICAgIHNsaWNlX2NhY2hlID0gcjsKKyAgICBlbHNlCisgICAgICAgIFB5T2JqZWN0X0RlbChyKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI5NywxMCArMzQ4LDggQEAKICAgICBQeU9iamVjdCAqdDI7CiAgICAgUHlPYmplY3QgKnJlczsKIAotICAgIGlmICghUHlTbGljZV9DaGVjayh2KSB8fCAhUHlTbGljZV9DaGVjayh3KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlTbGljZV9DaGVjayh2KSB8fCAhUHlTbGljZV9DaGVjayh3KSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogCiAgICAgaWYgKHYgPT0gdykgewogICAgICAgICAvKiBYWFggRG8gd2UgcmVhbGx5IG5lZWQgdGhpcyBzaG9ydGN1dD8KZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL2FzY2lpbGliLmggYi9PYmplY3RzL3N0cmluZ2xpYi9hc2NpaWxpYi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZhNDgxYzAKLS0tIC9kZXYvbnVsbAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi9hc2NpaWxpYi5oCkBAIC0wLDAgKzEsMjkgQEAKKy8qIHRoaXMgaXMgc29ydCBvZiBhIGhhY2suICB0aGVyZSdzIGF0IGxlYXN0IG9uZSBwbGFjZSAoZm9ybWF0dGluZworICAgZmxvYXRzKSB3aGVyZSBzb21lIHN0cmluZ2xpYiBjb2RlIHRha2VzIGEgZGlmZmVyZW50IHBhdGggaWYgaXQncworICAgY29tcGlsZWQgYXMgdW5pY29kZS4gKi8KKyNkZWZpbmUgU1RSSU5HTElCX0lTX1VOSUNPREUgICAgIDEKKworI2RlZmluZSBGQVNUU0VBUkNIICAgICAgICAgICAgICAgYXNjaWlsaWJfZmFzdHNlYXJjaAorI2RlZmluZSBTVFJJTkdMSUIoRikgICAgICAgICAgICAgYXNjaWlsaWJfIyNGCisjZGVmaW5lIFNUUklOR0xJQl9PQkpFQ1QgICAgICAgICBQeVVuaWNvZGVPYmplY3QKKyNkZWZpbmUgU1RSSU5HTElCX1NJWkVPRl9DSEFSICAgIDEKKyNkZWZpbmUgU1RSSU5HTElCX0NIQVIgICAgICAgICAgIFB5X1VDUzEKKyNkZWZpbmUgU1RSSU5HTElCX1RZUEVfTkFNRSAgICAgICJ1bmljb2RlIgorI2RlZmluZSBTVFJJTkdMSUJfUEFSU0VfQ09ERSAgICAgIlUiCisjZGVmaW5lIFNUUklOR0xJQl9FTVBUWSAgICAgICAgICB1bmljb2RlX2VtcHR5CisjZGVmaW5lIFNUUklOR0xJQl9JU1NQQUNFICAgICAgICBQeV9VTklDT0RFX0lTU1BBQ0UKKyNkZWZpbmUgU1RSSU5HTElCX0lTTElORUJSRUFLICAgIEJMT09NX0xJTkVCUkVBSworI2RlZmluZSBTVFJJTkdMSUJfSVNERUNJTUFMICAgICAgUHlfVU5JQ09ERV9JU0RFQ0lNQUwKKyNkZWZpbmUgU1RSSU5HTElCX1RPREVDSU1BTCAgICAgIFB5X1VOSUNPREVfVE9ERUNJTUFMCisjZGVmaW5lIFNUUklOR0xJQl9TVFIgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQQorI2RlZmluZSBTVFJJTkdMSUJfTEVOICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgKKyNkZWZpbmUgU1RSSU5HTElCX05FVyAgICAgICAgICAgIHVuaWNvZGVfZnJvbWFzY2lpCisjZGVmaW5lIFNUUklOR0xJQl9SRVNJWkUgICAgICAgICBub3Rfc3VwcG9ydGVkCisjZGVmaW5lIFNUUklOR0xJQl9DSEVDSyAgICAgICAgICBQeVVuaWNvZGVfQ2hlY2sKKyNkZWZpbmUgU1RSSU5HTElCX0NIRUNLX0VYQUNUICAgIFB5VW5pY29kZV9DaGVja0V4YWN0CisKKyNkZWZpbmUgU1RSSU5HTElCX1RPU1RSICAgICAgICAgIFB5T2JqZWN0X1N0cgorI2RlZmluZSBTVFJJTkdMSUJfVE9BU0NJSSAgICAgICAgUHlPYmplY3RfQVNDSUkKKworI2RlZmluZSBfUHlfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcgX1B5VW5pY29kZV9hc2NpaV9JbnNlcnRUaG91c2FuZHNHcm91cGluZworCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi9jb2RlY3MuaCBiL09iamVjdHMvc3RyaW5nbGliL2NvZGVjcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUzOTk0OGIKLS0tIC9kZXYvbnVsbAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi9jb2RlY3MuaApAQCAtMCwwICsxLDM1MyBAQAorLyogc3RyaW5nbGliOiBjb2RlYyBpbXBsZW1lbnRhdGlvbnMgKi8KKworI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCisKKy8qIE1hc2sgdG8gY2hlY2sgb3IgZm9yY2UgYWxpZ25tZW50IG9mIGEgcG9pbnRlciB0byBDICdsb25nJyBib3VuZGFyaWVzICovCisjZGVmaW5lIExPTkdfUFRSX01BU0sgKHNpemVfdCkgKFNJWkVPRl9MT05HIC0gMSkKKworLyogTWFzayB0byBxdWlja2x5IGNoZWNrIHdoZXRoZXIgYSBDICdsb25nJyBjb250YWlucyBhCisgICBub24tQVNDSUksIFVURjgtZW5jb2RlZCBjaGFyLiAqLworI2lmIChTSVpFT0ZfTE9ORyA9PSA4KQorIyBkZWZpbmUgQVNDSUlfQ0hBUl9NQVNLIDB4ODA4MDgwODA4MDgwODA4MEwKKyNlbGlmIChTSVpFT0ZfTE9ORyA9PSA0KQorIyBkZWZpbmUgQVNDSUlfQ0hBUl9NQVNLIDB4ODA4MDgwODBMCisjZWxzZQorIyBlcnJvciBDICdsb25nJyBzaXplIHNob3VsZCBiZSBlaXRoZXIgNCBvciA4IQorI2VuZGlmCisKK1B5X0xPQ0FMX0lOTElORShpbnQpCitTVFJJTkdMSUIodXRmOF90cnlfZGVjb2RlKShjb25zdCBjaGFyICpzdGFydCwgY29uc3QgY2hhciAqZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgU1RSSU5HTElCX0NIQVIgKmRlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICoqc3JjX3BvcywgUHlfc3NpemVfdCAqZGVzdF9pbmRleCkKK3sKKyAgICBpbnQgcmV0OworICAgIFB5X3NzaXplX3QgbjsKKyAgICBjb25zdCBjaGFyICpzID0gc3RhcnQ7CisgICAgY29uc3QgY2hhciAqYWxpZ25lZF9lbmQgPSAoY29uc3QgY2hhciAqKSAoKHNpemVfdCkgZW5kICYgfkxPTkdfUFRSX01BU0spOworICAgIFNUUklOR0xJQl9DSEFSICpwID0gZGVzdDsKKworICAgIHdoaWxlIChzIDwgZW5kKSB7CisgICAgICAgIFB5X1VDUzQgY2ggPSAodW5zaWduZWQgY2hhcikqczsKKworICAgICAgICBpZiAoY2ggPCAweDgwKSB7CisgICAgICAgICAgICAvKiBGYXN0IHBhdGggZm9yIHJ1bnMgb2YgQVNDSUkgY2hhcmFjdGVycy4gR2l2ZW4gdGhhdCBjb21tb24gVVRGLTgKKyAgICAgICAgICAgICAgIGlucHV0IHdpbGwgY29uc2lzdCBvZiBhbiBvdmVyd2hlbG1pbmcgbWFqb3JpdHkgb2YgQVNDSUkKKyAgICAgICAgICAgICAgIGNoYXJhY3RlcnMsIHdlIHRyeSB0byBvcHRpbWl6ZSBmb3IgdGhpcyBjYXNlIGJ5IGNoZWNraW5nCisgICAgICAgICAgICAgICBhcyBtYW55IGNoYXJhY3RlcnMgYXMgYSBDICdsb25nJyBjYW4gY29udGFpbi4KKyAgICAgICAgICAgICAgIEZpcnN0LCBjaGVjayBpZiB3ZSBjYW4gZG8gYW4gYWxpZ25lZCByZWFkLCBhcyBtb3N0IENQVXMgaGF2ZQorICAgICAgICAgICAgICAgYSBwZW5hbHR5IGZvciB1bmFsaWduZWQgcmVhZHMuCisgICAgICAgICAgICAqLworICAgICAgICAgICAgaWYgKCEoKHNpemVfdCkgcyAmIExPTkdfUFRSX01BU0spKSB7CisgICAgICAgICAgICAgICAgLyogSGVscCByZWdpc3RlciBhbGxvY2F0aW9uICovCisgICAgICAgICAgICAgICAgcmVnaXN0ZXIgY29uc3QgY2hhciAqX3MgPSBzOworICAgICAgICAgICAgICAgIHJlZ2lzdGVyIFNUUklOR0xJQl9DSEFSICpfcCA9IHA7CisgICAgICAgICAgICAgICAgd2hpbGUgKF9zIDwgYWxpZ25lZF9lbmQpIHsKKyAgICAgICAgICAgICAgICAgICAgLyogUmVhZCBhIHdob2xlIGxvbmcgYXQgYSB0aW1lIChlaXRoZXIgNCBvciA4IGJ5dGVzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgYW5kIGRvIGEgZmFzdCB1bnJvbGxlZCBjb3B5IGlmIGl0IG9ubHkgY29udGFpbnMgQVNDSUkKKyAgICAgICAgICAgICAgICAgICAgICAgY2hhcmFjdGVycy4gKi8KKyAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyB2YWx1ZSA9ICoodW5zaWduZWQgbG9uZyAqKSBfczsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlICYgQVNDSUlfQ0hBUl9NQVNLKQorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgICAgIF9wWzBdID0gX3NbMF07CisgICAgICAgICAgICAgICAgICAgIF9wWzFdID0gX3NbMV07CisgICAgICAgICAgICAgICAgICAgIF9wWzJdID0gX3NbMl07CisgICAgICAgICAgICAgICAgICAgIF9wWzNdID0gX3NbM107CisjaWYgKFNJWkVPRl9MT05HID09IDgpCisgICAgICAgICAgICAgICAgICAgIF9wWzRdID0gX3NbNF07CisgICAgICAgICAgICAgICAgICAgIF9wWzVdID0gX3NbNV07CisgICAgICAgICAgICAgICAgICAgIF9wWzZdID0gX3NbNl07CisgICAgICAgICAgICAgICAgICAgIF9wWzddID0gX3NbN107CisjZW5kaWYKKyAgICAgICAgICAgICAgICAgICAgX3MgKz0gU0laRU9GX0xPTkc7CisgICAgICAgICAgICAgICAgICAgIF9wICs9IFNJWkVPRl9MT05HOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBzID0gX3M7CisgICAgICAgICAgICAgICAgcCA9IF9wOworICAgICAgICAgICAgICAgIGlmIChzID09IGVuZCkKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2ggPSAodW5zaWduZWQgY2hhcikqczsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGlmIChjaCA8IDB4ODApIHsKKyAgICAgICAgICAgIHMrKzsKKyAgICAgICAgICAgICpwKysgPSBjaDsKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisKKyAgICAgICAgbiA9IHV0ZjhfY29kZV9sZW5ndGhbY2hdOworCisgICAgICAgIGlmIChzICsgbiA+IGVuZCkgeworICAgICAgICAgICAgLyogdW5leHBlY3RlZCBlbmQgb2YgZGF0YTogdGhlIGNhbGxlciB3aWxsIGRlY2lkZSB3aGV0aGVyCisgICAgICAgICAgICAgICBpdCdzIGFuIGVycm9yIG9yIG5vdCAqLworICAgICAgICAgICAgZ290byBfZXJyb3I7CisgICAgICAgIH0KKworICAgICAgICBzd2l0Y2ggKG4pIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgLyogaW52YWxpZCBzdGFydCBieXRlICovCisgICAgICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgLyogaW50ZXJuYWwgZXJyb3IgKi8KKyAgICAgICAgICAgIGdvdG8gX2Vycm9yOworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICBpZiAoKHNbMV0gJiAweGMwKSAhPSAweDgwKQorICAgICAgICAgICAgICAgIC8qIGludmFsaWQgY29udGludWF0aW9uIGJ5dGUgKi8KKyAgICAgICAgICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICAgICAgICAgIGNoID0gKChzWzBdICYgMHgxZikgPDwgNikgKyAoc1sxXSAmIDB4M2YpOworICAgICAgICAgICAgYXNzZXJ0ICgoY2ggPiAweDAwN0YpICYmIChjaCA8PSAweDA3RkYpKTsKKyAgICAgICAgICAgIHMgKz0gMjsKKyAgICAgICAgICAgICpwKysgPSBjaDsKKyAgICAgICAgICAgIGJyZWFrOworCisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIC8qIERlY29kaW5nIFVURi04IHNlcXVlbmNlcyBpbiByYW5nZSBceGVkXHhhMFx4ODAtXHhlZFx4YmZceGJmCisgICAgICAgICAgICAgICB3aWxsIHJlc3VsdCBpbiBzdXJyb2dhdGVzIGluIHJhbmdlIGQ4MDAtZGZmZi4gU3Vycm9nYXRlcyBhcmUKKyAgICAgICAgICAgICAgIG5vdCB2YWxpZCBVVEYtOCBzbyB0aGV5IGFyZSByZWplY3RlZC4KKyAgICAgICAgICAgICAgIFNlZSBodHRwOi8vd3d3LnVuaWNvZGUub3JnL3ZlcnNpb25zL1VuaWNvZGU1LjIuMC9jaDAzLnBkZgorICAgICAgICAgICAgICAgKHRhYmxlIDMtNykgYW5kIGh0dHA6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzM2MjkudHh0ICovCisgICAgICAgICAgICBpZiAoKHNbMV0gJiAweGMwKSAhPSAweDgwIHx8CisgICAgICAgICAgICAgICAgKHNbMl0gJiAweGMwKSAhPSAweDgwIHx8CisgICAgICAgICAgICAgICAgKCh1bnNpZ25lZCBjaGFyKXNbMF0gPT0gMHhFMCAmJgorICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hhcilzWzFdIDwgMHhBMCkgfHwKKyAgICAgICAgICAgICAgICAoKHVuc2lnbmVkIGNoYXIpc1swXSA9PSAweEVEICYmCisgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyKXNbMV0gPiAweDlGKSkgeworICAgICAgICAgICAgICAgIC8qIGludmFsaWQgY29udGludWF0aW9uIGJ5dGUgKi8KKyAgICAgICAgICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNoID0gKChzWzBdICYgMHgwZikgPDwgMTIpICsgKChzWzFdICYgMHgzZikgPDwgNikgKyAoc1syXSAmIDB4M2YpOworICAgICAgICAgICAgYXNzZXJ0ICgoY2ggPiAweDA3RkYpICYmIChjaCA8PSAweEZGRkYpKTsKKyAgICAgICAgICAgIHMgKz0gMzsKKyAgICAgICAgICAgICpwKysgPSBjaDsKKyAgICAgICAgICAgIGJyZWFrOworCisgICAgICAgIGNhc2UgNDoKKyAgICAgICAgICAgIGlmICgoc1sxXSAmIDB4YzApICE9IDB4ODAgfHwKKyAgICAgICAgICAgICAgICAoc1syXSAmIDB4YzApICE9IDB4ODAgfHwKKyAgICAgICAgICAgICAgICAoc1szXSAmIDB4YzApICE9IDB4ODAgfHwKKyAgICAgICAgICAgICAgICAoKHVuc2lnbmVkIGNoYXIpc1swXSA9PSAweEYwICYmCisgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyKXNbMV0gPCAweDkwKSB8fAorICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhcilzWzBdID09IDB4RjQgJiYKKyAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIpc1sxXSA+IDB4OEYpKSB7CisgICAgICAgICAgICAgICAgLyogaW52YWxpZCBjb250aW51YXRpb24gYnl0ZSAqLworICAgICAgICAgICAgICAgIGdvdG8gX2Vycm9yOworICAgICAgICAgICAgfQorICAgICAgICAgICAgY2ggPSAoKHNbMF0gJiAweDcpIDw8IDE4KSArICgoc1sxXSAmIDB4M2YpIDw8IDEyKSArCisgICAgICAgICAgICAgICAgICgoc1syXSAmIDB4M2YpIDw8IDYpICsgKHNbM10gJiAweDNmKTsKKyAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHhGRkZGKSAmJiAoY2ggPD0gMHgxMGZmZmYpKTsKKyAgICAgICAgICAgIHMgKz0gNDsKKyAgICAgICAgICAgICpwKysgPSBjaDsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQorICAgIHJldCA9IDA7CisgICAgZ290byBfb2s7CitfZXJyb3I6CisgICAgcmV0ID0gLTE7Citfb2s6CisgICAgKnNyY19wb3MgPSBzOworICAgICpkZXN0X2luZGV4ID0gcCAtIGRlc3Q7CisgICAgcmV0dXJuIHJldDsKK30KKworI3VuZGVmIExPTkdfUFRSX01BU0sKKyN1bmRlZiBBU0NJSV9DSEFSX01BU0sKKworCisvKiBVVEYtOCBlbmNvZGVyIHNwZWNpYWxpemVkIGZvciBhIFVuaWNvZGUga2luZCB0byBhdm9pZCB0aGUgc2xvdworICAgUHlVbmljb2RlX1JFQUQoKSBtYWNyby4gRGVsZXRlIHNvbWUgcGFydHMgb2YgdGhlIGNvZGUgZGVwZW5kaW5nIG9uIHRoZSBraW5kOgorICAgVUNTLTEgc3RyaW5ncyBkb24ndCBuZWVkIHRvIGhhbmRsZSBzdXJyb2dhdGVzIGZvciBleGFtcGxlLiAqLworUHlfTE9DQUxfSU5MSU5FKFB5T2JqZWN0ICopCitTVFJJTkdMSUIodXRmOF9lbmNvZGVyKShQeU9iamVjdCAqdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFNUUklOR0xJQl9DSEFSICpkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQoreworI2RlZmluZSBNQVhfU0hPUlRfVU5JQ0hBUlMgMzAwICAvKiBsYXJnZXN0IHNpemUgd2UnbGwgZG8gb24gdGhlIHN0YWNrICovCisKKyAgICBQeV9zc2l6ZV90IGk7ICAgICAgICAgICAgICAgIC8qIGluZGV4IGludG8gcyBvZiBuZXh0IGlucHV0IGJ5dGUgKi8KKyAgICBQeU9iamVjdCAqcmVzdWx0OyAgICAgICAgICAgIC8qIHJlc3VsdCBzdHJpbmcgb2JqZWN0ICovCisgICAgY2hhciAqcDsgICAgICAgICAgICAgICAgICAgICAvKiBuZXh0IGZyZWUgYnl0ZSBpbiBvdXRwdXQgYnVmZmVyICovCisgICAgUHlfc3NpemVfdCBuYWxsb2NhdGVkOyAgICAgIC8qIG51bWJlciBvZiByZXN1bHQgYnl0ZXMgYWxsb2NhdGVkICovCisgICAgUHlfc3NpemVfdCBubmVlZGVkOyAgICAgICAgICAgIC8qIG51bWJlciBvZiByZXN1bHQgYnl0ZXMgbmVlZGVkICovCisjaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID4gMQorICAgIFB5T2JqZWN0ICplcnJvckhhbmRsZXIgPSBOVUxMOworICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOworICAgIFB5T2JqZWN0ICpyZXAgPSBOVUxMOworI2VuZGlmCisjaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID09IDEKKyAgICBjb25zdCBQeV9zc2l6ZV90IG1heF9jaGFyX3NpemUgPSAyOworICAgIGNoYXIgc3RhY2tidWZbTUFYX1NIT1JUX1VOSUNIQVJTICogMl07CisjZWxpZiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPT0gMgorICAgIGNvbnN0IFB5X3NzaXplX3QgbWF4X2NoYXJfc2l6ZSA9IDM7CisgICAgY2hhciBzdGFja2J1ZltNQVhfU0hPUlRfVU5JQ0hBUlMgKiAzXTsKKyNlbHNlIC8qICBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPT0gNCAqLworICAgIGNvbnN0IFB5X3NzaXplX3QgbWF4X2NoYXJfc2l6ZSA9IDQ7CisgICAgY2hhciBzdGFja2J1ZltNQVhfU0hPUlRfVU5JQ0hBUlMgKiA0XTsKKyNlbmRpZgorCisgICAgYXNzZXJ0KHNpemUgPj0gMCk7CisKKyAgICBpZiAoc2l6ZSA8PSBNQVhfU0hPUlRfVU5JQ0hBUlMpIHsKKyAgICAgICAgLyogV3JpdGUgaW50byB0aGUgc3RhY2sgYnVmZmVyOyBuYWxsb2NhdGVkIGNhbid0IG92ZXJmbG93LgorICAgICAgICAgKiBBdCB0aGUgZW5kLCB3ZSdsbCBhbGxvY2F0ZSBleGFjdGx5IGFzIG11Y2ggaGVhcCBzcGFjZSBhcyBpdAorICAgICAgICAgKiB0dXJucyBvdXQgd2UgbmVlZC4KKyAgICAgICAgICovCisgICAgICAgIG5hbGxvY2F0ZWQgPSBQeV9TQUZFX0RPV05DQVNUKHNpemVvZihzdGFja2J1ZiksIHNpemVfdCwgaW50KTsKKyAgICAgICAgcmVzdWx0ID0gTlVMTDsgICAvKiB3aWxsIGFsbG9jYXRlIGFmdGVyIHdlJ3JlIGRvbmUgKi8KKyAgICAgICAgcCA9IHN0YWNrYnVmOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKHNpemUgPiBQWV9TU0laRV9UX01BWCAvIG1heF9jaGFyX3NpemUpIHsKKyAgICAgICAgICAgIC8qIGludGVnZXIgb3ZlcmZsb3cgKi8KKyAgICAgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICB9CisgICAgICAgIC8qIE92ZXJhbGxvY2F0ZSBvbiB0aGUgaGVhcCwgYW5kIGdpdmUgdGhlIGV4Y2VzcyBiYWNrIGF0IHRoZSBlbmQuICovCisgICAgICAgIG5hbGxvY2F0ZWQgPSBzaXplICogbWF4X2NoYXJfc2l6ZTsKKyAgICAgICAgcmVzdWx0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBuYWxsb2NhdGVkKTsKKyAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHAgPSBQeUJ5dGVzX0FTX1NUUklORyhyZXN1bHQpOworICAgIH0KKworICAgIGZvciAoaSA9IDA7IGkgPCBzaXplOykgeworICAgICAgICBQeV9VQ1M0IGNoID0gZGF0YVtpKytdOworCisgICAgICAgIGlmIChjaCA8IDB4ODApIHsKKyAgICAgICAgICAgIC8qIEVuY29kZSBBU0NJSSAqLworICAgICAgICAgICAgKnArKyA9IChjaGFyKSBjaDsKKworICAgICAgICB9CisgICAgICAgIGVsc2UKKyNpZiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPiAxCisgICAgICAgIGlmIChjaCA8IDB4MDgwMCkKKyNlbmRpZgorICAgICAgICB7CisgICAgICAgICAgICAvKiBFbmNvZGUgTGF0aW4tMSAqLworICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweGMwIHwgKGNoID4+IDYpKTsKKyAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8IChjaCAmIDB4M2YpKTsKKyAgICAgICAgfQorI2lmIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA+IDEKKyAgICAgICAgZWxzZSBpZiAoUHlfVU5JQ09ERV9JU19TVVJST0dBVEUoY2gpKSB7CisgICAgICAgICAgICBQeV9zc2l6ZV90IG5ld3BvczsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgcmVwc2l6ZSwgaywgc3RhcnRwb3M7CisgICAgICAgICAgICBzdGFydHBvcyA9IGktMTsKKyAgICAgICAgICAgIHJlcCA9IHVuaWNvZGVfZW5jb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAorICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLCAidXRmLTgiLCAic3Vycm9nYXRlcyBub3QgYWxsb3dlZCIsCisgICAgICAgICAgICAgICAgICB1bmljb2RlLCAmZXhjLCBzdGFydHBvcywgc3RhcnRwb3MrMSwgJm5ld3Bvcyk7CisgICAgICAgICAgICBpZiAoIXJlcCkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworCisgICAgICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhyZXApKQorICAgICAgICAgICAgICAgIHJlcHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKHJlcCk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmVwc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcCk7CisKKyAgICAgICAgICAgIGlmIChyZXBzaXplID4gbWF4X2NoYXJfc2l6ZSkgeworICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgb2Zmc2V0OworCisgICAgICAgICAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICAgICAgICAgICAgICBvZmZzZXQgPSBwIC0gc3RhY2tidWY7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICBvZmZzZXQgPSBwIC0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKKworICAgICAgICAgICAgICAgIGlmIChuYWxsb2NhdGVkID4gUFlfU1NJWkVfVF9NQVggLSByZXBzaXplICsgbWF4X2NoYXJfc2l6ZSkgeworICAgICAgICAgICAgICAgICAgICAvKiBpbnRlZ2VyIG92ZXJmbG93ICovCisgICAgICAgICAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIG5hbGxvY2F0ZWQgKz0gcmVwc2l6ZSAtIG1heF9jaGFyX3NpemU7CisgICAgICAgICAgICAgICAgaWYgKHJlc3VsdCAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJlc3VsdCwgbmFsbG9jYXRlZCkgPCAwKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIG5hbGxvY2F0ZWQpOworICAgICAgICAgICAgICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpCisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgICAgICAgICBQeV9NRU1DUFkoUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KSwgc3RhY2tidWYsIG9mZnNldCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHAgPSBQeUJ5dGVzX0FTX1NUUklORyhyZXN1bHQpICsgb2Zmc2V0OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhyZXApKSB7CisgICAgICAgICAgICAgICAgY2hhciAqcHJlcCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHJlcCk7CisgICAgICAgICAgICAgICAgZm9yKGsgPSByZXBzaXplOyBrID4gMDsgay0tKQorICAgICAgICAgICAgICAgICAgICAqcCsrID0gKnByZXArKzsKKyAgICAgICAgICAgIH0gZWxzZSAvKiByZXAgaXMgdW5pY29kZSAqLyB7CisgICAgICAgICAgICAgICAgZW51bSBQeVVuaWNvZGVfS2luZCByZXBraW5kOworICAgICAgICAgICAgICAgIHZvaWQgKnJlcGRhdGE7CisKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHJlcCkgPCAwKQorICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgICAgIHJlcGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXApOworICAgICAgICAgICAgICAgIHJlcGRhdGEgPSBQeVVuaWNvZGVfREFUQShyZXApOworCisgICAgICAgICAgICAgICAgZm9yKGs9MDsgazxyZXBzaXplOyBrKyspIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfVUNTNCBjID0gUHlVbmljb2RlX1JFQUQocmVwa2luZCwgcmVwZGF0YSwgayk7CisgICAgICAgICAgICAgICAgICAgIGlmICgweDgwIDw9IGMpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oJmV4YywgInV0Zi04IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaS0xLCBpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3Vycm9nYXRlcyBub3QgYWxsb3dlZCIpOworICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAqcCsrID0gKGNoYXIpYzsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICBQeV9DTEVBUihyZXApOworICAgICAgICB9CisgICAgICAgIGVsc2UKKyNpZiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPiAyCisgICAgICAgIGlmIChjaCA8IDB4MTAwMDApCisjZW5kaWYKKyAgICAgICAgeworICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweGUwIHwgKGNoID4+IDEyKSk7CisgICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ODAgfCAoKGNoID4+IDYpICYgMHgzZikpOworICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKGNoICYgMHgzZikpOworICAgICAgICB9CisjaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID4gMgorICAgICAgICBlbHNlIC8qIGNoID49IDB4MTAwMDAgKi8KKyAgICAgICAgeworICAgICAgICAgICAgYXNzZXJ0KGNoIDw9IE1BWF9VTklDT0RFKTsKKyAgICAgICAgICAgIC8qIEVuY29kZSBVQ1M0IFVuaWNvZGUgb3JkaW5hbHMgKi8KKyAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHhmMCB8IChjaCA+PiAxOCkpOworICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKChjaCA+PiAxMikgJiAweDNmKSk7CisgICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ODAgfCAoKGNoID4+IDYpICYgMHgzZikpOworICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKGNoICYgMHgzZikpOworICAgICAgICB9CisjZW5kaWYgLyogU1RSSU5HTElCX1NJWkVPRl9DSEFSID4gMiAqLworI2VuZGlmIC8qIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA+IDEgKi8KKyAgICB9CisKKyAgICBpZiAocmVzdWx0ID09IE5VTEwpIHsKKyAgICAgICAgLyogVGhpcyB3YXMgc3RhY2sgYWxsb2NhdGVkLiAqLworICAgICAgICBubmVlZGVkID0gcCAtIHN0YWNrYnVmOworICAgICAgICBhc3NlcnQobm5lZWRlZCA8PSBuYWxsb2NhdGVkKTsKKyAgICAgICAgcmVzdWx0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShzdGFja2J1Ziwgbm5lZWRlZCk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICAvKiBDdXQgYmFjayB0byBzaXplIGFjdHVhbGx5IG5lZWRlZC4gKi8KKyAgICAgICAgbm5lZWRlZCA9IHAgLSBQeUJ5dGVzX0FTX1NUUklORyhyZXN1bHQpOworICAgICAgICBhc3NlcnQobm5lZWRlZCA8PSBuYWxsb2NhdGVkKTsKKyAgICAgICAgX1B5Qnl0ZXNfUmVzaXplKCZyZXN1bHQsIG5uZWVkZWQpOworICAgIH0KKworI2lmIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA+IDEKKyAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7CisgICAgUHlfWERFQ1JFRihleGMpOworI2VuZGlmCisgICAgcmV0dXJuIHJlc3VsdDsKKworI2lmIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA+IDEKKyBlcnJvcjoKKyAgICBQeV9YREVDUkVGKHJlcCk7CisgICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOworICAgIFB5X1hERUNSRUYoZXhjKTsKKyAgICBQeV9YREVDUkVGKHJlc3VsdCk7CisgICAgcmV0dXJuIE5VTEw7CisjZW5kaWYKKworI3VuZGVmIE1BWF9TSE9SVF9VTklDSEFSUworfQorCisjZW5kaWYgLyogU1RSSU5HTElCX0lTX1VOSUNPREUgKi8KZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL2NvdW50LmggYi9PYmplY3RzL3N0cmluZ2xpYi9jb3VudC5oCmluZGV4IGRlMzRmOTYuLmY0ODUwMGIgMTAwNjQ0Ci0tLSBhL09iamVjdHMvc3RyaW5nbGliL2NvdW50LmgKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvY291bnQuaApAQCAtMSwxNCArMSwxMSBAQAogLyogc3RyaW5nbGliOiBjb3VudCBpbXBsZW1lbnRhdGlvbiAqLwogCi0jaWZuZGVmIFNUUklOR0xJQl9DT1VOVF9ICi0jZGVmaW5lIFNUUklOR0xJQl9DT1VOVF9ICi0KICNpZm5kZWYgU1RSSU5HTElCX0ZBU1RTRUFSQ0hfSAogI2Vycm9yIG11c3QgaW5jbHVkZSAic3RyaW5nbGliL2Zhc3RzZWFyY2guaCIgYmVmb3JlIGluY2x1ZGluZyB0aGlzIG1vZHVsZQogI2VuZGlmCiAKIFB5X0xPQ0FMX0lOTElORShQeV9zc2l6ZV90KQotc3RyaW5nbGliX2NvdW50KGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKK1NUUklOR0xJQihjb3VudCkoY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAogICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdWIsIFB5X3NzaXplX3Qgc3ViX2xlbiwKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQogewpAQCAtMTksNyArMTYsNyBAQAogICAgIGlmIChzdWJfbGVuID09IDApCiAgICAgICAgIHJldHVybiAoc3RyX2xlbiA8IG1heGNvdW50KSA/IHN0cl9sZW4gKyAxIDogbWF4Y291bnQ7CiAKLSAgICBjb3VudCA9IGZhc3RzZWFyY2goc3RyLCBzdHJfbGVuLCBzdWIsIHN1Yl9sZW4sIG1heGNvdW50LCBGQVNUX0NPVU5UKTsKKyAgICBjb3VudCA9IEZBU1RTRUFSQ0goc3RyLCBzdHJfbGVuLCBzdWIsIHN1Yl9sZW4sIG1heGNvdW50LCBGQVNUX0NPVU5UKTsKIAogICAgIGlmIChjb3VudCA8IDApCiAgICAgICAgIHJldHVybiAwOyAvKiBubyBtYXRjaCAqLwpAQCAtMjcsNCArMjQsNCBAQAogICAgIHJldHVybiBjb3VudDsKIH0KIAotI2VuZGlmCisKZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL2VxLmggYi9PYmplY3RzL3N0cmluZ2xpYi9lcS5oCmluZGV4IDNlN2Y1ZTguLjhlNzlhNDMgMTAwNjQ0Ci0tLSBhL09iamVjdHMvc3RyaW5nbGliL2VxLmgKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvZXEuaApAQCAtOSwxMyArOSwyNiBAQAogICAgIHJlZ2lzdGVyIFB5VW5pY29kZU9iamVjdCAqYSA9IChQeVVuaWNvZGVPYmplY3QgKilhYTsKICAgICByZWdpc3RlciBQeVVuaWNvZGVPYmplY3QgKmIgPSAoUHlVbmljb2RlT2JqZWN0ICopYmI7CiAKLSAgICBpZiAoYS0+bGVuZ3RoICE9IGItPmxlbmd0aCkKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGEpID09IC0xIHx8IFB5VW5pY29kZV9SRUFEWShiKSA9PSAtMSkgeworICAgICAgICBhc3NlcnQoMCAmJiAidW5pY29kZV9lcSByZWFkeSBmYWlsIik7CiAgICAgICAgIHJldHVybiAwOwotICAgIGlmIChhLT5sZW5ndGggPT0gMCkKLSAgICAgICAgcmV0dXJuIDE7Ci0gICAgaWYgKGEtPnN0clswXSAhPSBiLT5zdHJbMF0pCisgICAgfQorCisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGEpICE9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGIpKQogICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAoYS0+bGVuZ3RoID09IDEpCisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGEpID09IDApCiAgICAgICAgIHJldHVybiAxOwotICAgIHJldHVybiBtZW1jbXAoYS0+c3RyLCBiLT5zdHIsIGEtPmxlbmd0aCAqIHNpemVvZihQeV9VTklDT0RFKSkgPT0gMDsKKyAgICBpZiAoUHlVbmljb2RlX0tJTkQoYSkgIT0gUHlVbmljb2RlX0tJTkQoYikpCisgICAgICAgIHJldHVybiAwOworICAgIC8qIEp1c3QgY29tcGFyaW5nIHRoZSBmaXJzdCBieXRlIGlzIGVub3VnaCB0byBzZWUgaWYgYSBhbmQgYiBkaWZmZXIuCisgICAgICogSWYgdGhleSBhcmUgMiBieXRlIG9yIDQgYnl0ZSBjaGFyYWN0ZXIgbW9zdCBkaWZmZXJlbmNlcyB3aWxsIGhhcHBlbiBpbgorICAgICAqIHRoZSBsb3dlciBieXRlcyBhbnl3YXlzLgorICAgICAqLworICAgIGlmIChQeVVuaWNvZGVfMUJZVEVfREFUQShhKVswXSAhPSBQeVVuaWNvZGVfMUJZVEVfREFUQShiKVswXSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKFB5VW5pY29kZV9LSU5EKGEpID09IFB5VW5pY29kZV8xQllURV9LSU5EICYmCisgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKGEpID09IDEpCisgICAgICAgIHJldHVybiAxOworICAgIHJldHVybiBtZW1jbXAoUHlVbmljb2RlXzFCWVRFX0RBVEEoYSksIFB5VW5pY29kZV8xQllURV9EQVRBKGIpLAorICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoYSkgKiBQeVVuaWNvZGVfS0lORChhKSkgPT0gMDsKIH0KZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL2Zhc3RzZWFyY2guaCBiL09iamVjdHMvc3RyaW5nbGliL2Zhc3RzZWFyY2guaAppbmRleCBlMjMxYzU4Li5mM2UwNDYxIDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9mYXN0c2VhcmNoLmgKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvZmFzdHNlYXJjaC5oCkBAIC0xLDYgKzEsNSBAQAogLyogc3RyaW5nbGliOiBmYXN0c2VhcmNoIGltcGxlbWVudGF0aW9uICovCiAKLSNpZm5kZWYgU1RSSU5HTElCX0ZBU1RTRUFSQ0hfSAogI2RlZmluZSBTVFJJTkdMSUJfRkFTVFNFQVJDSF9ICiAKIC8qIGZhc3Qgc2VhcmNoL2NvdW50IGltcGxlbWVudGF0aW9uLCBiYXNlZCBvbiBhIG1peCBiZXR3ZWVuIGJveWVyLQpAQCAtMzMsOCArMzIsNjIgQEAKICNkZWZpbmUgU1RSSU5HTElCX0JMT09NKG1hc2ssIGNoKSAgICAgXAogICAgICgobWFzayAmICAoMVVMIDw8ICgoY2gpICYgKFNUUklOR0xJQl9CTE9PTV9XSURUSCAtMSkpKSkpCiAKKwogUHlfTE9DQUxfSU5MSU5FKFB5X3NzaXplX3QpCi1mYXN0c2VhcmNoKGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzLCBQeV9zc2l6ZV90IG4sCitTVFJJTkdMSUIoZmFzdHNlYXJjaF9tZW1jaHJfMWNoYXIpKGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzLCBQeV9zc2l6ZV90IG4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNUUklOR0xJQl9DSEFSIGNoLCB1bnNpZ25lZCBjaGFyIG5lZWRsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCwgaW50IG1vZGUpCit7CisgICAgdm9pZCAqY2FuZGlkYXRlOworICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSICpmb3VuZDsKKworI2RlZmluZSBET19NRU1DSFIobWVtY2hyLCBzLCBuZWVkbGUsIG5jaGFycykgZG8geyBcCisgICAgY2FuZGlkYXRlID0gbWVtY2hyKChjb25zdCB2b2lkICopIChzKSwgKG5lZWRsZSksIChuY2hhcnMpICogc2l6ZW9mKFNUUklOR0xJQl9DSEFSKSk7IFwKKyAgICBmb3VuZCA9IChjb25zdCBTVFJJTkdMSUJfQ0hBUiAqKSBcCisgICAgICAgICgoUHlfc3NpemVfdCkgY2FuZGlkYXRlICYgKH4gKChQeV9zc2l6ZV90KSBzaXplb2YoU1RSSU5HTElCX0NIQVIpIC0gMSkpKTsgXAorICAgIH0gd2hpbGUgKDApCisKKyAgICBpZiAobW9kZSA9PSBGQVNUX1NFQVJDSCkgeworICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiAqX3MgPSBzOworICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiAqZSA9IHMgKyBuOworICAgICAgICB3aGlsZSAoX3MgPCBlKSB7CisgICAgICAgICAgICBET19NRU1DSFIobWVtY2hyLCBfcywgbmVlZGxlLCBlIC0gX3MpOworICAgICAgICAgICAgaWYgKGZvdW5kID09IE5VTEwpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgaWYgKHNpemVvZihTVFJJTkdMSUJfQ0hBUikgPT0gMSB8fCAqZm91bmQgPT0gY2gpCisgICAgICAgICAgICAgICAgcmV0dXJuIChmb3VuZCAtIF9zKTsKKyAgICAgICAgICAgIC8qIEZhbHNlIHBvc2l0aXZlICovCisgICAgICAgICAgICBfcyA9IGZvdW5kICsgMTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gLTE7CisgICAgfQorI2lmZGVmIEhBVkVfTUVNUkNIUgorICAgIC8qIG1lbXJjaHIoKSBpcyBhIEdOVSBleHRlbnNpb24sIGF2YWlsYWJsZSBzaW5jZSBnbGliYyAyLjEuOTEuCisgICAgICAgaXQgZG9lc24ndCBzZWVtIGFzIG9wdGltaXplZCBhcyBtZW1jaHIoKSwgYnV0IGlzIHN0aWxsIHF1aXRlCisgICAgICAgZmFzdGVyIHRoYW4gb3VyIGhhbmQtd3JpdHRlbiBsb29wIGluIEZBU1RTRUFSQ0ggYmVsb3cgKi8KKyAgICBlbHNlIGlmIChtb2RlID09IEZBU1RfUlNFQVJDSCkgeworICAgICAgICB3aGlsZSAobiA+IDApIHsKKyAgICAgICAgICAgIERPX01FTUNIUihtZW1yY2hyLCBzLCBuZWVkbGUsIG4pOworICAgICAgICAgICAgaWYgKGZvdW5kID09IE5VTEwpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgbiA9IGZvdW5kIC0gczsKKyAgICAgICAgICAgIGlmIChzaXplb2YoU1RSSU5HTElCX0NIQVIpID09IDEgfHwgKmZvdW5kID09IGNoKQorICAgICAgICAgICAgICAgIHJldHVybiBuOworICAgICAgICAgICAgLyogRmFsc2UgcG9zaXRpdmUgKi8KKyAgICAgICAgfQorICAgICAgICByZXR1cm4gLTE7CisgICAgfQorI2VuZGlmCisgICAgZWxzZSB7CisgICAgICAgIGFzc2VydCgwKTsgLyogU2hvdWxkIG5ldmVyIGdldCBoZXJlICovCisgICAgICAgIHJldHVybiAwOworICAgIH0KKworI3VuZGVmIERPX01FTUNIUgorfQorCitQeV9MT0NBTF9JTkxJTkUoUHlfc3NpemVfdCkKK0ZBU1RTRUFSQ0goY29uc3QgU1RSSU5HTElCX0NIQVIqIHMsIFB5X3NzaXplX3QgbiwKICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHAsIFB5X3NzaXplX3QgbSwKICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCwgaW50IG1vZGUpCiB7CkBAIC01Miw2ICsxMDUsMjQgQEAKICAgICAgICAgaWYgKG0gPD0gMCkKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgLyogdXNlIHNwZWNpYWwgY2FzZSBmb3IgMS1jaGFyYWN0ZXIgc3RyaW5ncyAqLworICAgICAgICBpZiAobiA+IDEwICYmIChtb2RlID09IEZBU1RfU0VBUkNICisjaWZkZWYgSEFWRV9NRU1SQ0hSCisgICAgICAgICAgICAgICAgICAgIHx8IG1vZGUgPT0gRkFTVF9SU0VBUkNICisjZW5kaWYKKyAgICAgICAgICAgICAgICAgICAgKSkgeworICAgICAgICAgICAgLyogdXNlIG1lbWNociBpZiB3ZSBjYW4gY2hvb3NlIGEgbmVlZGxlIHdpdGhvdXQgdHdvIG1hbnkgbGlrZWx5CisgICAgICAgICAgICAgICBmYWxzZSBwb3NpdGl2ZXMgKi8KKyAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgbmVlZGxlOworICAgICAgICAgICAgbmVlZGxlID0gcFswXSAmIDB4ZmY7CisjaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID4gMQorICAgICAgICAgICAgLyogSWYgbG9va2luZyBmb3IgYSBtdWx0aXBsZSBvZiAyNTYsIHdlJ2QgaGF2ZSB0b28KKyAgICAgICAgICAgICAgIG1hbnkgZmFsc2UgcG9zaXRpdmVzIGxvb2tpbmcgZm9yIHRoZSAnXDAnIGJ5dGUgaW4gVUNTMgorICAgICAgICAgICAgICAgYW5kIFVDUzQgcmVwcmVzZW50YXRpb25zLiAqLworICAgICAgICAgICAgaWYgKG5lZWRsZSAhPSAwKQorI2VuZGlmCisgICAgICAgICAgICAgICAgcmV0dXJuIFNUUklOR0xJQihmYXN0c2VhcmNoX21lbWNocl8xY2hhcikKKyAgICAgICAgICAgICAgICAgICAgICAgKHMsIG4sIHBbMF0sIG5lZWRsZSwgbWF4Y291bnQsIG1vZGUpOworICAgICAgICB9CiAgICAgICAgIGlmIChtb2RlID09IEZBU1RfQ09VTlQpIHsKICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspCiAgICAgICAgICAgICAgICAgaWYgKHNbaV0gPT0gcFswXSkgewpAQCAtMTU3LDQgKzIyOCwzIEBACiAgICAgcmV0dXJuIGNvdW50OwogfQogCi0jZW5kaWYKZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL2ZpbmQuaCBiL09iamVjdHMvc3RyaW5nbGliL2ZpbmQuaAppbmRleCBjZTYxNWRjLi41MThlMDEyIDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9maW5kLmgKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvZmluZC5oCkBAIC0xLDE0ICsxLDExIEBACiAvKiBzdHJpbmdsaWI6IGZpbmQvaW5kZXggaW1wbGVtZW50YXRpb24gKi8KIAotI2lmbmRlZiBTVFJJTkdMSUJfRklORF9ICi0jZGVmaW5lIFNUUklOR0xJQl9GSU5EX0gKLQogI2lmbmRlZiBTVFJJTkdMSUJfRkFTVFNFQVJDSF9ICiAjZXJyb3IgbXVzdCBpbmNsdWRlICJzdHJpbmdsaWIvZmFzdHNlYXJjaC5oIiBiZWZvcmUgaW5jbHVkaW5nIHRoaXMgbW9kdWxlCiAjZW5kaWYKIAogUHlfTE9DQUxfSU5MSU5FKFB5X3NzaXplX3QpCi1zdHJpbmdsaWJfZmluZChjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCitTVFJJTkdMSUIoZmluZCkoY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAogICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHN1YiwgUHlfc3NpemVfdCBzdWJfbGVuLAogICAgICAgICAgICAgICAgUHlfc3NpemVfdCBvZmZzZXQpCiB7CkBAIC0xOSw3ICsxNiw3IEBACiAgICAgaWYgKHN1Yl9sZW4gPT0gMCkKICAgICAgICAgcmV0dXJuIG9mZnNldDsKIAotICAgIHBvcyA9IGZhc3RzZWFyY2goc3RyLCBzdHJfbGVuLCBzdWIsIHN1Yl9sZW4sIC0xLCBGQVNUX1NFQVJDSCk7CisgICAgcG9zID0gRkFTVFNFQVJDSChzdHIsIHN0cl9sZW4sIHN1Yiwgc3ViX2xlbiwgLTEsIEZBU1RfU0VBUkNIKTsKIAogICAgIGlmIChwb3MgPj0gMCkKICAgICAgICAgcG9zICs9IG9mZnNldDsKQEAgLTI4LDcgKzI1LDcgQEAKIH0KIAogUHlfTE9DQUxfSU5MSU5FKFB5X3NzaXplX3QpCi1zdHJpbmdsaWJfcmZpbmQoY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAorU1RSSU5HTElCKHJmaW5kKShjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCiAgICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHN1YiwgUHlfc3NpemVfdCBzdWJfbGVuLAogICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgb2Zmc2V0KQogewpAQCAtMzksNyArMzYsNyBAQAogICAgIGlmIChzdWJfbGVuID09IDApCiAgICAgICAgIHJldHVybiBzdHJfbGVuICsgb2Zmc2V0OwogCi0gICAgcG9zID0gZmFzdHNlYXJjaChzdHIsIHN0cl9sZW4sIHN1Yiwgc3ViX2xlbiwgLTEsIEZBU1RfUlNFQVJDSCk7CisgICAgcG9zID0gRkFTVFNFQVJDSChzdHIsIHN0cl9sZW4sIHN1Yiwgc3ViX2xlbiwgLTEsIEZBU1RfUlNFQVJDSCk7CiAKICAgICBpZiAocG9zID49IDApCiAgICAgICAgIHBvcyArPSBvZmZzZXQ7CkBAIC02MywyOSArNjAsMjkgQEAKICAgICB9CiAKIFB5X0xPQ0FMX0lOTElORShQeV9zc2l6ZV90KQotc3RyaW5nbGliX2ZpbmRfc2xpY2UoY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAorU1RSSU5HTElCKGZpbmRfc2xpY2UpKGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdWIsIFB5X3NzaXplX3Qgc3ViX2xlbiwKICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQogewogICAgIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIHN0cl9sZW4pOwotICAgIHJldHVybiBzdHJpbmdsaWJfZmluZChzdHIgKyBzdGFydCwgZW5kIC0gc3RhcnQsIHN1Yiwgc3ViX2xlbiwgc3RhcnQpOworICAgIHJldHVybiBTVFJJTkdMSUIoZmluZCkoc3RyICsgc3RhcnQsIGVuZCAtIHN0YXJ0LCBzdWIsIHN1Yl9sZW4sIHN0YXJ0KTsKIH0KIAogUHlfTE9DQUxfSU5MSU5FKFB5X3NzaXplX3QpCi1zdHJpbmdsaWJfcmZpbmRfc2xpY2UoY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAorU1RSSU5HTElCKHJmaW5kX3NsaWNlKShjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCiAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHN1YiwgUHlfc3NpemVfdCBzdWJfbGVuLAogICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQogewogICAgIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIHN0cl9sZW4pOwotICAgIHJldHVybiBzdHJpbmdsaWJfcmZpbmQoc3RyICsgc3RhcnQsIGVuZCAtIHN0YXJ0LCBzdWIsIHN1Yl9sZW4sIHN0YXJ0KTsKKyAgICByZXR1cm4gU1RSSU5HTElCKHJmaW5kKShzdHIgKyBzdGFydCwgZW5kIC0gc3RhcnQsIHN1Yiwgc3ViX2xlbiwgc3RhcnQpOwogfQogCiAjaWZkZWYgU1RSSU5HTElCX1dBTlRfQ09OVEFJTlNfT0JKCiAKIFB5X0xPQ0FMX0lOTElORShpbnQpCi1zdHJpbmdsaWJfY29udGFpbnNfb2JqKFB5T2JqZWN0KiBzdHIsIFB5T2JqZWN0KiBzdWIpCitTVFJJTkdMSUIoY29udGFpbnNfb2JqKShQeU9iamVjdCogc3RyLCBQeU9iamVjdCogc3ViKQogewotICAgIHJldHVybiBzdHJpbmdsaWJfZmluZCgKKyAgICByZXR1cm4gU1RSSU5HTElCKGZpbmQpKAogICAgICAgICBTVFJJTkdMSUJfU1RSKHN0ciksIFNUUklOR0xJQl9MRU4oc3RyKSwKICAgICAgICAgU1RSSU5HTElCX1NUUihzdWIpLCBTVFJJTkdMSUJfTEVOKHN1YiksIDAKICAgICAgICAgKSAhPSAtMTsKQEAgLTk4LDE0ICs5NSwxNCBAQAogcmluZGV4KSBhbmQgZm9yIGNvdW50LCBzdGFydHN3aXRoIGFuZCBlbmRzd2l0aCwgYmVjYXVzZSB0aGV5IGFsbCBoYXZlCiB0aGUgc2FtZSBiZWhhdmlvdXIgZm9yIHRoZSBhcmd1bWVudHMuCiAKLUl0IGRvZXMgbm90IHRvdWNoIHRoZSB2YXJpYWJsZXMgcmVjZWl2ZWQgdW50aWwgaXQga25vd3MgZXZlcnl0aGluZyAKK0l0IGRvZXMgbm90IHRvdWNoIHRoZSB2YXJpYWJsZXMgcmVjZWl2ZWQgdW50aWwgaXQga25vd3MgZXZlcnl0aGluZwogaXMgb2suCiAqLwogCiAjZGVmaW5lIEZPUk1BVF9CVUZGRVJfU0laRSA1MAogCiBQeV9MT0NBTF9JTkxJTkUoaW50KQotc3RyaW5nbGliX3BhcnNlX2FyZ3NfZmluZHMoY29uc3QgY2hhciAqIGZ1bmN0aW9uX25hbWUsIFB5T2JqZWN0ICphcmdzLAorU1RSSU5HTElCKHBhcnNlX2FyZ3NfZmluZHMpKGNvbnN0IGNoYXIgKiBmdW5jdGlvbl9uYW1lLCBQeU9iamVjdCAqYXJncywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqc3Vib2JqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqc3RhcnQsIFB5X3NzaXplX3QgKmVuZCkKIHsKQEAgLTE0OCwyOCArMTQ1LDc2IEBACiAKIE5vdGUgdGhhdCB3ZSByZWNlaXZlIGEgcG9pbnRlciB0byB0aGUgcG9pbnRlciBvZiB0aGUgc3Vic3RyaW5nIG9iamVjdCwKIHNvIHdoZW4gd2UgY3JlYXRlIHRoYXQgb2JqZWN0IGluIHRoaXMgZnVuY3Rpb24gd2UgZG9uJ3QgREVDUkVGIGl0LAotYmVjYXVzZSBpdCBjb250aW51ZXMgbGl2aW5nIGluIHRoZSBjYWxsZXIgZnVuY3Rpb25zICh0aG9zZSBmdW5jdGlvbnMsIAorYmVjYXVzZSBpdCBjb250aW51ZXMgbGl2aW5nIGluIHRoZSBjYWxsZXIgZnVuY3Rpb25zICh0aG9zZSBmdW5jdGlvbnMsCiBhZnRlciBmaW5pc2hpbmcgdXNpbmcgdGhlIHN1YnN0cmluZywgbXVzdCBERUNSRUYgaXQpLgogKi8KIAogUHlfTE9DQUxfSU5MSU5FKGludCkKLXN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzX3VuaWNvZGUoY29uc3QgY2hhciAqIGZ1bmN0aW9uX25hbWUsIFB5T2JqZWN0ICphcmdzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVPYmplY3QgKipzdWJzdHJpbmcsCitTVFJJTkdMSUIocGFyc2VfYXJnc19maW5kc191bmljb2RlKShjb25zdCBjaGFyICogZnVuY3Rpb25fbmFtZSwgUHlPYmplY3QgKmFyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqc3Vic3RyaW5nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpzdGFydCwgUHlfc3NpemVfdCAqZW5kKQogewogICAgIFB5T2JqZWN0ICp0bXBfc3Vic3RyaW5nOwogCi0gICAgaWYoc3RyaW5nbGliX3BhcnNlX2FyZ3NfZmluZHMoZnVuY3Rpb25fbmFtZSwgYXJncywgJnRtcF9zdWJzdHJpbmcsCisgICAgaWYoU1RSSU5HTElCKHBhcnNlX2FyZ3NfZmluZHMpKGZ1bmN0aW9uX25hbWUsIGFyZ3MsICZ0bXBfc3Vic3RyaW5nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0LCBlbmQpKSB7CiAgICAgICAgIHRtcF9zdWJzdHJpbmcgPSBQeVVuaWNvZGVfRnJvbU9iamVjdCh0bXBfc3Vic3RyaW5nKTsKICAgICAgICAgaWYgKCF0bXBfc3Vic3RyaW5nKQogICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICpzdWJzdHJpbmcgPSAoUHlVbmljb2RlT2JqZWN0ICopdG1wX3N1YnN0cmluZzsKKyAgICAgICAgKnN1YnN0cmluZyA9IHRtcF9zdWJzdHJpbmc7CiAgICAgICAgIHJldHVybiAxOwogICAgIH0KICAgICByZXR1cm4gMDsKIH0KIAotI2VuZGlmIC8qIFNUUklOR0xJQl9JU19VTklDT0RFICovCisjZWxzZSAvKiAhU1RSSU5HTElCX0lTX1VOSUNPREUgKi8KIAotI2VuZGlmIC8qIFNUUklOR0xJQl9GSU5EX0ggKi8KKy8qCitXcmFwcyBzdHJpbmdsaWJfcGFyc2VfYXJnc19maW5kcygpIGFuZCBhZGRpdGlvbmFsbHkgY2hlY2tzIHdoZXRoZXIgdGhlCitmaXJzdCBhcmd1bWVudCBpcyBhbiBpbnRlZ2VyIGluIHJhbmdlKDAsIDI1NikuCisKK0lmIHRoaXMgaXMgdGhlIGNhc2UsIHdyaXRlcyB0aGUgaW50ZWdlciB2YWx1ZSB0byB0aGUgYnl0ZSBwYXJhbWV0ZXIKK2FuZCBzZXRzIHN1Ym9iaiB0byBOVUxMLiBPdGhlcndpc2UsIHNldHMgdGhlIGZpcnN0IGFyZ3VtZW50IHRvIHN1Ym9iagorYW5kIGRvZXNuJ3QgdG91Y2ggYnl0ZS4gVGhlIG90aGVyIHBhcmFtZXRlcnMgYXJlIHNpbWlsYXIgdG8gdGhvc2Ugb2YKK3N0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzKCkuCisqLworCitQeV9MT0NBTF9JTkxJTkUoaW50KQorU1RSSU5HTElCKHBhcnNlX2FyZ3NfZmluZHNfYnl0ZSkoY29uc3QgY2hhciAqZnVuY3Rpb25fbmFtZSwgUHlPYmplY3QgKmFyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnN1Ym9iaiwgY2hhciAqYnl0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKnN0YXJ0LCBQeV9zc2l6ZV90ICplbmQpCit7CisgICAgUHlPYmplY3QgKnRtcF9zdWJvYmo7CisgICAgUHlfc3NpemVfdCBpdmFsOworICAgIFB5T2JqZWN0ICplcnI7CisKKyAgICBpZighU1RSSU5HTElCKHBhcnNlX2FyZ3NfZmluZHMpKGZ1bmN0aW9uX25hbWUsIGFyZ3MsICZ0bXBfc3Vib2JqLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQsIGVuZCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgaWYgKCFQeU51bWJlcl9DaGVjayh0bXBfc3Vib2JqKSkgeworICAgICAgICAqc3Vib2JqID0gdG1wX3N1Ym9iajsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorCisgICAgaXZhbCA9IFB5TnVtYmVyX0FzU3NpemVfdCh0bXBfc3Vib2JqLCBQeUV4Y19PdmVyZmxvd0Vycm9yKTsKKyAgICBpZiAoaXZhbCA9PSAtMSkgeworICAgICAgICBlcnIgPSBQeUVycl9PY2N1cnJlZCgpOworICAgICAgICBpZiAoZXJyICYmICFQeUVycl9HaXZlbkV4Y2VwdGlvbk1hdGNoZXMoZXJyLCBQeUV4Y19PdmVyZmxvd0Vycm9yKSkgeworICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgICAgICpzdWJvYmogPSB0bXBfc3Vib2JqOworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoaXZhbCA8IDAgfHwgaXZhbCA+IDI1NSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgImJ5dGUgbXVzdCBiZSBpbiByYW5nZSgwLCAyNTYpIik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgICpzdWJvYmogPSBOVUxMOworICAgICpieXRlID0gKGNoYXIpaXZhbDsKKyAgICByZXR1cm4gMTsKK30KKworI2VuZGlmIC8qIFNUUklOR0xJQl9JU19VTklDT0RFICovCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi9maW5kX21heF9jaGFyLmggYi9PYmplY3RzL3N0cmluZ2xpYi9maW5kX21heF9jaGFyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDk4YWVlYwotLS0gL2Rldi9udWxsCisrKyBiL09iamVjdHMvc3RyaW5nbGliL2ZpbmRfbWF4X2NoYXIuaApAQCAtMCwwICsxLDEzNiBAQAorLyogRmluZGluZyB0aGUgb3B0aW1hbCB3aWR0aCBvZiB1bmljb2RlIGNoYXJhY3RlcnMgaW4gYSBidWZmZXIgKi8KKworI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCisKKy8qIE1hc2sgdG8gY2hlY2sgb3IgZm9yY2UgYWxpZ25tZW50IG9mIGEgcG9pbnRlciB0byBDICdsb25nJyBib3VuZGFyaWVzICovCisjZGVmaW5lIExPTkdfUFRSX01BU0sgKHNpemVfdCkgKFNJWkVPRl9MT05HIC0gMSkKKworLyogTWFzayB0byBxdWlja2x5IGNoZWNrIHdoZXRoZXIgYSBDICdsb25nJyBjb250YWlucyBhCisgICBub24tQVNDSUksIFVURjgtZW5jb2RlZCBjaGFyLiAqLworI2lmIChTSVpFT0ZfTE9ORyA9PSA4KQorIyBkZWZpbmUgVUNTMV9BU0NJSV9DSEFSX01BU0sgMHg4MDgwODA4MDgwODA4MDgwTAorI2VsaWYgKFNJWkVPRl9MT05HID09IDQpCisjIGRlZmluZSBVQ1MxX0FTQ0lJX0NIQVJfTUFTSyAweDgwODA4MDgwTAorI2Vsc2UKKyMgZXJyb3IgQyAnbG9uZycgc2l6ZSBzaG91bGQgYmUgZWl0aGVyIDQgb3IgOCEKKyNlbmRpZgorCisjaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID09IDEKKworUHlfTE9DQUxfSU5MSU5FKFB5X1VDUzQpCitTVFJJTkdMSUIoZmluZF9tYXhfY2hhcikoY29uc3QgU1RSSU5HTElCX0NIQVIgKmJlZ2luLCBjb25zdCBTVFJJTkdMSUJfQ0hBUiAqZW5kKQoreworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnAgPSAoY29uc3QgdW5zaWduZWQgY2hhciAqKSBiZWdpbjsKKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICphbGlnbmVkX2VuZCA9IChjb25zdCB1bnNpZ25lZCBjaGFyICopICgoc2l6ZV90KSBlbmQgJiB+TE9OR19QVFJfTUFTSyk7CisKKyAgICB3aGlsZSAocCA8IGVuZCkgeworICAgICAgICBpZiAoISgoc2l6ZV90KSBwICYgTE9OR19QVFJfTUFTSykpIHsKKyAgICAgICAgICAgIC8qIEhlbHAgcmVnaXN0ZXIgYWxsb2NhdGlvbiAqLworICAgICAgICAgICAgcmVnaXN0ZXIgY29uc3QgdW5zaWduZWQgY2hhciAqX3AgPSBwOworICAgICAgICAgICAgd2hpbGUgKF9wIDwgYWxpZ25lZF9lbmQpIHsKKyAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHZhbHVlID0gKih1bnNpZ25lZCBsb25nICopIF9wOworICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAmIFVDUzFfQVNDSUlfQ0hBUl9NQVNLKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gMjU1OworICAgICAgICAgICAgICAgIF9wICs9IFNJWkVPRl9MT05HOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcCA9IF9wOworICAgICAgICAgICAgaWYgKHAgPT0gZW5kKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIGlmICgqcCsrICYgMHg4MCkKKyAgICAgICAgICAgIHJldHVybiAyNTU7CisgICAgfQorICAgIHJldHVybiAxMjc7Cit9CisKKyN1bmRlZiBMT05HX1BUUl9NQVNLCisjdW5kZWYgQVNDSUlfQ0hBUl9NQVNLCisKKyNlbHNlIC8qIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA9PSAxICovCisKKyNkZWZpbmUgTUFTS19BU0NJSSAweEZGRkZGRjgwCisjZGVmaW5lIE1BU0tfVUNTMSAweEZGRkZGRjAwCisjZGVmaW5lIE1BU0tfVUNTMiAweEZGRkYwMDAwCisKKyNkZWZpbmUgTUFYX0NIQVJfQVNDSUkgMHg3ZgorI2RlZmluZSBNQVhfQ0hBUl9VQ1MxICAweGZmCisjZGVmaW5lIE1BWF9DSEFSX1VDUzIgIDB4ZmZmZgorI2RlZmluZSBNQVhfQ0hBUl9VQ1M0ICAweDEwZmZmZgorCitQeV9MT0NBTF9JTkxJTkUoUHlfVUNTNCkKK1NUUklOR0xJQihmaW5kX21heF9jaGFyKShjb25zdCBTVFJJTkdMSUJfQ0hBUiAqYmVnaW4sIGNvbnN0IFNUUklOR0xJQl9DSEFSICplbmQpCit7CisjaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID09IDIKKyAgICBjb25zdCBQeV9VQ1M0IG1hc2tfbGltaXQgPSBNQVNLX1VDUzE7CisgICAgY29uc3QgUHlfVUNTNCBtYXhfY2hhcl9saW1pdCA9IE1BWF9DSEFSX1VDUzI7CisjZWxpZiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPT0gNAorICAgIGNvbnN0IFB5X1VDUzQgbWFza19saW1pdCA9IE1BU0tfVUNTMjsKKyAgICBjb25zdCBQeV9VQ1M0IG1heF9jaGFyX2xpbWl0ID0gTUFYX0NIQVJfVUNTNDsKKyNlbHNlCisjZXJyb3IgSW52YWxpZCBTVFJJTkdMSUJfU0laRU9GX0NIQVIgKG11c3QgYmUgMSwgMiBvciA0KQorI2VuZGlmCisgICAgcmVnaXN0ZXIgUHlfVUNTNCBtYXNrOworICAgIFB5X3NzaXplX3QgbiA9IGVuZCAtIGJlZ2luOworICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSICpwID0gYmVnaW47CisgICAgY29uc3QgU1RSSU5HTElCX0NIQVIgKnVucm9sbGVkX2VuZCA9IGJlZ2luICsgKG4gJiB+IChQeV9zc2l6ZV90KSAzKTsKKyAgICBQeV9VQ1M0IG1heF9jaGFyOworCisgICAgbWF4X2NoYXIgPSBNQVhfQ0hBUl9BU0NJSTsKKyAgICBtYXNrID0gTUFTS19BU0NJSTsKKyAgICB3aGlsZSAocCA8IHVucm9sbGVkX2VuZCkgeworICAgICAgICBTVFJJTkdMSUJfQ0hBUiBiaXRzID0gcFswXSB8IHBbMV0gfCBwWzJdIHwgcFszXTsKKyAgICAgICAgaWYgKGJpdHMgJiBtYXNrKSB7CisgICAgICAgICAgICBpZiAobWFzayA9PSBtYXNrX2xpbWl0KSB7CisgICAgICAgICAgICAgICAgLyogTGltaXQgcmVhY2hlZCAqLworICAgICAgICAgICAgICAgIHJldHVybiBtYXhfY2hhcl9saW1pdDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChtYXNrID09IE1BU0tfQVNDSUkpIHsKKyAgICAgICAgICAgICAgICBtYXhfY2hhciA9IE1BWF9DSEFSX1VDUzE7CisgICAgICAgICAgICAgICAgbWFzayA9IE1BU0tfVUNTMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIC8qIG1hc2sgY2FuJ3QgYmUgTUFTS19VQ1MyIGJlY2F1c2Ugb2YgbWFza19saW1pdCBhYm92ZSAqLworICAgICAgICAgICAgICAgIGFzc2VydChtYXNrID09IE1BU0tfVUNTMSk7CisgICAgICAgICAgICAgICAgbWF4X2NoYXIgPSBNQVhfQ0hBUl9VQ1MyOworICAgICAgICAgICAgICAgIG1hc2sgPSBNQVNLX1VDUzI7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAvKiBXZSBjaGVjayB0aGUgbmV3IG1hc2sgb24gdGhlIHNhbWUgY2hhcnMgaW4gdGhlIG5leHQgaXRlcmF0aW9uICovCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorICAgICAgICBwICs9IDQ7CisgICAgfQorICAgIHdoaWxlIChwIDwgZW5kKSB7CisgICAgICAgIGlmIChwWzBdICYgbWFzaykgeworICAgICAgICAgICAgaWYgKG1hc2sgPT0gbWFza19saW1pdCkgeworICAgICAgICAgICAgICAgIC8qIExpbWl0IHJlYWNoZWQgKi8KKyAgICAgICAgICAgICAgICByZXR1cm4gbWF4X2NoYXJfbGltaXQ7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAobWFzayA9PSBNQVNLX0FTQ0lJKSB7CisgICAgICAgICAgICAgICAgbWF4X2NoYXIgPSBNQVhfQ0hBUl9VQ1MxOworICAgICAgICAgICAgICAgIG1hc2sgPSBNQVNLX1VDUzE7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAvKiBtYXNrIGNhbid0IGJlIE1BU0tfVUNTMiBiZWNhdXNlIG9mIG1hc2tfbGltaXQgYWJvdmUgKi8KKyAgICAgICAgICAgICAgICBhc3NlcnQobWFzayA9PSBNQVNLX1VDUzEpOworICAgICAgICAgICAgICAgIG1heF9jaGFyID0gTUFYX0NIQVJfVUNTMjsKKyAgICAgICAgICAgICAgICBtYXNrID0gTUFTS19VQ1MyOworICAgICAgICAgICAgfQorICAgICAgICAgICAgLyogV2UgY2hlY2sgdGhlIG5ldyBtYXNrIG9uIHRoZSBzYW1lIGNoYXJzIGluIHRoZSBuZXh0IGl0ZXJhdGlvbiAqLworICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KKyAgICAgICAgcCsrOworICAgIH0KKyAgICByZXR1cm4gbWF4X2NoYXI7Cit9CisKKyN1bmRlZiBNQVNLX0FTQ0lJCisjdW5kZWYgTUFTS19VQ1MxCisjdW5kZWYgTUFTS19VQ1MyCisjdW5kZWYgTUFYX0NIQVJfQVNDSUkKKyN1bmRlZiBNQVhfQ0hBUl9VQ1MxCisjdW5kZWYgTUFYX0NIQVJfVUNTMgorI3VuZGVmIE1BWF9DSEFSX1VDUzQKKworI2VuZGlmIC8qIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA9PSAxICovCisjZW5kaWYgLyogU1RSSU5HTElCX0lTX1VOSUNPREUgKi8KKwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvZm9ybWF0dGVyLmggYi9PYmplY3RzL3N0cmluZ2xpYi9mb3JtYXR0ZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGZkYzYyZC4uMDAwMDAwMAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9mb3JtYXR0ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDE1MTggKzAsMCBAQAotLyogaW1wbGVtZW50cyB0aGUgc3RyaW5nLCBsb25nLCBhbmQgZmxvYXQgZm9ybWF0dGVycy4gIHRoYXQgaXMsCi0gICBzdHJpbmcuX19mb3JtYXRfXywgZXRjLiAqLwotCi0jaW5jbHVkZSA8bG9jYWxlLmg+Ci0KLS8qIEJlZm9yZSBpbmNsdWRpbmcgdGhpcywgeW91IG11c3QgaW5jbHVkZSBlaXRoZXI6Ci0gICBzdHJpbmdsaWIvdW5pY29kZWRlZnMuaAotICAgc3RyaW5nbGliL3N0cmluZ2RlZnMuaAotCi0gICBBbHNvLCB5b3Ugc2hvdWxkIGRlZmluZSB0aGUgbmFtZXM6Ci0gICBGT1JNQVRfU1RSSU5HCi0gICBGT1JNQVRfTE9ORwotICAgRk9STUFUX0ZMT0FUCi0gICBGT1JNQVRfQ09NUExFWAotICAgdG8gYmUgd2hhdGV2ZXIgeW91IHdhbnQgdGhlIHB1YmxpYyBuYW1lcyBvZiB0aGVzZSBmdW5jdGlvbnMgdG8KLSAgIGJlLiAgVGhlc2UgYXJlIHRoZSBvbmx5IG5vbi1zdGF0aWMgZnVuY3Rpb25zIGRlZmluZWQgaGVyZS4KLSovCi0KLS8qIFJhaXNlcyBhbiBleGNlcHRpb24gYWJvdXQgYW4gdW5rbm93biBwcmVzZW50YXRpb24gdHlwZSBmb3IgdGhpcwotICogdHlwZS4gKi8KLQotc3RhdGljIHZvaWQKLXVua25vd25fcHJlc2VudGF0aW9uX3R5cGUoU1RSSU5HTElCX0NIQVIgcHJlc2VudGF0aW9uX3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIHR5cGVfbmFtZSkKLXsKLSNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQotICAgIC8qIElmIFNUUklOR0xJQl9DSEFSIGlzIFB5X1VOSUNPREUsICVjIG1pZ2h0IGJlIG91dC1vZi1yYW5nZSwKLSAgICAgICBoZW5jZSB0aGUgdHdvIGNhc2VzLiBJZiBpdCBpcyBjaGFyLCBnY2MgY29tcGxhaW5zIHRoYXQgdGhlCi0gICAgICAgY29uZGl0aW9uIGJlbG93IGlzIGFsd2F5cyB0cnVlLCBoZW5jZSB0aGUgaWZkZWYuICovCi0gICAgaWYgKHByZXNlbnRhdGlvbl90eXBlID4gMzIgJiYgcHJlc2VudGF0aW9uX3R5cGUgPCAxMjgpCi0jZW5kaWYKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiVW5rbm93biBmb3JtYXQgY29kZSAnJWMnICIKLSAgICAgICAgICAgICAgICAgICAgICJmb3Igb2JqZWN0IG9mIHR5cGUgJyUuMjAwcyciLAotICAgICAgICAgICAgICAgICAgICAgKGNoYXIpcHJlc2VudGF0aW9uX3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICB0eXBlX25hbWUpOwotI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCi0gICAgZWxzZQotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIGZvcm1hdCBjb2RlICdcXHgleCcgIgotICAgICAgICAgICAgICAgICAgICAgImZvciBvYmplY3Qgb2YgdHlwZSAnJS4yMDBzJyIsCi0gICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgaW50KXByZXNlbnRhdGlvbl90eXBlLAotICAgICAgICAgICAgICAgICAgICAgdHlwZV9uYW1lKTsKLSNlbmRpZgotfQotCi1zdGF0aWMgdm9pZAotaW52YWxpZF9jb21tYV90eXBlKFNUUklOR0xJQl9DSEFSIHByZXNlbnRhdGlvbl90eXBlKQotewotI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCi0gICAgLyogU2VlIGNvbW1lbnQgaW4gdW5rbm93bl9wcmVzZW50YXRpb25fdHlwZSAqLwotICAgIGlmIChwcmVzZW50YXRpb25fdHlwZSA+IDMyICYmIHByZXNlbnRhdGlvbl90eXBlIDwgMTI4KQotI2VuZGlmCi0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBzcGVjaWZ5ICcsJyB3aXRoICclYycuIiwKLSAgICAgICAgICAgICAgICAgICAgIChjaGFyKXByZXNlbnRhdGlvbl90eXBlKTsKLSNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQotICAgIGVsc2UKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiQ2Fubm90IHNwZWNpZnkgJywnIHdpdGggJ1xceCV4Jy4iLAotICAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGludClwcmVzZW50YXRpb25fdHlwZSk7Ci0jZW5kaWYKLX0KLQotLyoKLSAgICBnZXRfaW50ZWdlciBjb25zdW1lcyAwIG9yIG1vcmUgZGVjaW1hbCBkaWdpdCBjaGFyYWN0ZXJzIGZyb20gYW4KLSAgICBpbnB1dCBzdHJpbmcsIHVwZGF0ZXMgKnJlc3VsdCB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHBvc2l0aXZlCi0gICAgaW50ZWdlciwgYW5kIHJldHVybnMgdGhlIG51bWJlciBvZiBkaWdpdHMgY29uc3VtZWQuCi0KLSAgICByZXR1cm5zIC0xIG9uIGVycm9yLgotKi8KLXN0YXRpYyBpbnQKLWdldF9pbnRlZ2VyKFNUUklOR0xJQl9DSEFSICoqcHRyLCBTVFJJTkdMSUJfQ0hBUiAqZW5kLAotICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqcmVzdWx0KQotewotICAgIFB5X3NzaXplX3QgYWNjdW11bGF0b3IsIGRpZ2l0dmFsLCBvbGRhY2N1bXVsYXRvcjsKLSAgICBpbnQgbnVtZGlnaXRzOwotICAgIGFjY3VtdWxhdG9yID0gbnVtZGlnaXRzID0gMDsKLSAgICBmb3IgKDs7KCpwdHIpKyssIG51bWRpZ2l0cysrKSB7Ci0gICAgICAgIGlmICgqcHRyID49IGVuZCkKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBkaWdpdHZhbCA9IFNUUklOR0xJQl9UT0RFQ0lNQUwoKipwdHIpOwotICAgICAgICBpZiAoZGlnaXR2YWwgPCAwKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIC8qCi0gICAgICAgICAgIFRoaXMgdHJpY2sgd2FzIGNvcGllZCBmcm9tIG9sZCBVbmljb2RlIGZvcm1hdCBjb2RlLiAgSXQncyBjdXRlLAotICAgICAgICAgICBidXQgd291bGQgcmVhbGx5IHN1Y2sgb24gYW4gb2xkIG1hY2hpbmUgd2l0aCBhIHNsb3cgZGl2aWRlCi0gICAgICAgICAgIGltcGxlbWVudGF0aW9uLiAgRm9ydHVuYXRlbHksIGluIHRoZSBub3JtYWwgY2FzZSB3ZSBkbyBub3QKLSAgICAgICAgICAgZXhwZWN0IHRvbyBtYW55IGRpZ2l0cy4KLSAgICAgICAgKi8KLSAgICAgICAgb2xkYWNjdW11bGF0b3IgPSBhY2N1bXVsYXRvcjsKLSAgICAgICAgYWNjdW11bGF0b3IgKj0gMTA7Ci0gICAgICAgIGlmICgoYWNjdW11bGF0b3IrMTApLzEwICE9IG9sZGFjY3VtdWxhdG9yKzEpIHsKLSAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICJUb28gbWFueSBkZWNpbWFsIGRpZ2l0cyBpbiBmb3JtYXQgc3RyaW5nIik7Ci0gICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KLSAgICAgICAgYWNjdW11bGF0b3IgKz0gZGlnaXR2YWw7Ci0gICAgfQotICAgICpyZXN1bHQgPSBhY2N1bXVsYXRvcjsKLSAgICByZXR1cm4gbnVtZGlnaXRzOwotfQotCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyoqKioqKioqKioqIHN0YW5kYXJkIGZvcm1hdCBzcGVjaWZpZXIgcGFyc2luZyAqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0KLS8qIHJldHVybnMgdHJ1ZSBpZiB0aGlzIGNoYXJhY3RlciBpcyBhIHNwZWNpZmllciBhbGlnbm1lbnQgdG9rZW4gKi8KLVB5X0xPQ0FMX0lOTElORShpbnQpCi1pc19hbGlnbm1lbnRfdG9rZW4oU1RSSU5HTElCX0NIQVIgYykKLXsKLSAgICBzd2l0Y2ggKGMpIHsKLSAgICBjYXNlICc8JzogY2FzZSAnPic6IGNhc2UgJz0nOiBjYXNlICdeJzoKLSAgICAgICAgcmV0dXJuIDE7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotfQotCi0vKiByZXR1cm5zIHRydWUgaWYgdGhpcyBjaGFyYWN0ZXIgaXMgYSBzaWduIGVsZW1lbnQgKi8KLVB5X0xPQ0FMX0lOTElORShpbnQpCi1pc19zaWduX2VsZW1lbnQoU1RSSU5HTElCX0NIQVIgYykKLXsKLSAgICBzd2l0Y2ggKGMpIHsKLSAgICBjYXNlICcgJzogY2FzZSAnKyc6IGNhc2UgJy0nOgotICAgICAgICByZXR1cm4gMTsKLSAgICBkZWZhdWx0OgotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci19Ci0KLQotdHlwZWRlZiBzdHJ1Y3QgewotICAgIFNUUklOR0xJQl9DSEFSIGZpbGxfY2hhcjsKLSAgICBTVFJJTkdMSUJfQ0hBUiBhbGlnbjsKLSAgICBpbnQgYWx0ZXJuYXRlOwotICAgIFNUUklOR0xJQl9DSEFSIHNpZ247Ci0gICAgUHlfc3NpemVfdCB3aWR0aDsKLSAgICBpbnQgdGhvdXNhbmRzX3NlcGFyYXRvcnM7Ci0gICAgUHlfc3NpemVfdCBwcmVjaXNpb247Ci0gICAgU1RSSU5HTElCX0NIQVIgdHlwZTsKLX0gSW50ZXJuYWxGb3JtYXRTcGVjOwotCi0KLSNpZiAwCi0vKiBPY2Nhc3Npb25hbGx5IHVzZWZ1bCBmb3IgZGVidWdnaW5nLiBTaG91bGQgbm9ybWFsbHkgYmUgY29tbWVudGVkIG91dC4gKi8KLXN0YXRpYyB2b2lkCi1ERUJVR19QUklOVF9GT1JNQVRfU1BFQyhJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKLXsKLSAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiBmaWxsX2NoYXIgJWRcbiIsIGZvcm1hdC0+ZmlsbF9jaGFyKTsKLSAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiBhbGlnbiAlZFxuIiwgZm9ybWF0LT5hbGlnbik7Ci0gICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogYWx0ZXJuYXRlICVkXG4iLCBmb3JtYXQtPmFsdGVybmF0ZSk7Ci0gICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogc2lnbiAlZFxuIiwgZm9ybWF0LT5zaWduKTsKLSAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiB3aWR0aCAlemRcbiIsIGZvcm1hdC0+d2lkdGgpOwotICAgIHByaW50ZigiaW50ZXJuYWwgZm9ybWF0IHNwZWM6IHRob3VzYW5kc19zZXBhcmF0b3JzICVkXG4iLAotICAgICAgICAgICBmb3JtYXQtPnRob3VzYW5kc19zZXBhcmF0b3JzKTsKLSAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiBwcmVjaXNpb24gJXpkXG4iLCBmb3JtYXQtPnByZWNpc2lvbik7Ci0gICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogdHlwZSAlY1xuIiwgZm9ybWF0LT50eXBlKTsKLSAgICBwcmludGYoIlxuIik7Ci19Ci0jZW5kaWYKLQotCi0vKgotICBwdHIgcG9pbnRzIHRvIHRoZSBzdGFydCBvZiB0aGUgZm9ybWF0X3NwZWMsIGVuZCBwb2ludHMganVzdCBwYXN0IGl0cyBlbmQuCi0gIGZpbGxzIGluIGZvcm1hdCB3aXRoIHRoZSBwYXJzZWQgaW5mb3JtYXRpb24uCi0gIHJldHVybnMgMSBvbiBzdWNjZXNzLCAwIG9uIGZhaWx1cmUuCi0gIGlmIGZhaWx1cmUsIHNldHMgdGhlIGV4Y2VwdGlvbgotKi8KLXN0YXRpYyBpbnQKLXBhcnNlX2ludGVybmFsX3JlbmRlcl9mb3JtYXRfc3BlYyhTVFJJTkdMSUJfQ0hBUiAqZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBmb3JtYXRfc3BlY19sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW50ZXJuYWxGb3JtYXRTcGVjICpmb3JtYXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciBkZWZhdWx0X3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciBkZWZhdWx0X2FsaWduKQotewotICAgIFNUUklOR0xJQl9DSEFSICpwdHIgPSBmb3JtYXRfc3BlYzsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqZW5kID0gZm9ybWF0X3NwZWMgKyBmb3JtYXRfc3BlY19sZW47Ci0KLSAgICAvKiBlbmQtcHRyIGlzIHVzZWQgdGhyb3VnaG91dCB0aGlzIGNvZGUgdG8gc3BlY2lmeSB0aGUgbGVuZ3RoIG9mCi0gICAgICAgdGhlIGlucHV0IHN0cmluZyAqLwotCi0gICAgUHlfc3NpemVfdCBjb25zdW1lZDsKLSAgICBpbnQgYWxpZ25fc3BlY2lmaWVkID0gMDsKLQotICAgIGZvcm1hdC0+ZmlsbF9jaGFyID0gJ1wwJzsKLSAgICBmb3JtYXQtPmFsaWduID0gZGVmYXVsdF9hbGlnbjsKLSAgICBmb3JtYXQtPmFsdGVybmF0ZSA9IDA7Ci0gICAgZm9ybWF0LT5zaWduID0gJ1wwJzsKLSAgICBmb3JtYXQtPndpZHRoID0gLTE7Ci0gICAgZm9ybWF0LT50aG91c2FuZHNfc2VwYXJhdG9ycyA9IDA7Ci0gICAgZm9ybWF0LT5wcmVjaXNpb24gPSAtMTsKLSAgICBmb3JtYXQtPnR5cGUgPSBkZWZhdWx0X3R5cGU7Ci0KLSAgICAvKiBJZiB0aGUgc2Vjb25kIGNoYXIgaXMgYW4gYWxpZ25tZW50IHRva2VuLAotICAgICAgIHRoZW4gcGFyc2UgdGhlIGZpbGwgY2hhciAqLwotICAgIGlmIChlbmQtcHRyID49IDIgJiYgaXNfYWxpZ25tZW50X3Rva2VuKHB0clsxXSkpIHsKLSAgICAgICAgZm9ybWF0LT5hbGlnbiA9IHB0clsxXTsKLSAgICAgICAgZm9ybWF0LT5maWxsX2NoYXIgPSBwdHJbMF07Ci0gICAgICAgIGFsaWduX3NwZWNpZmllZCA9IDE7Ci0gICAgICAgIHB0ciArPSAyOwotICAgIH0KLSAgICBlbHNlIGlmIChlbmQtcHRyID49IDEgJiYgaXNfYWxpZ25tZW50X3Rva2VuKHB0clswXSkpIHsKLSAgICAgICAgZm9ybWF0LT5hbGlnbiA9IHB0clswXTsKLSAgICAgICAgYWxpZ25fc3BlY2lmaWVkID0gMTsKLSAgICAgICAgKytwdHI7Ci0gICAgfQotCi0gICAgLyogUGFyc2UgdGhlIHZhcmlvdXMgc2lnbiBvcHRpb25zICovCi0gICAgaWYgKGVuZC1wdHIgPj0gMSAmJiBpc19zaWduX2VsZW1lbnQocHRyWzBdKSkgewotICAgICAgICBmb3JtYXQtPnNpZ24gPSBwdHJbMF07Ci0gICAgICAgICsrcHRyOwotICAgIH0KLQotICAgIC8qIElmIHRoZSBuZXh0IGNoYXJhY3RlciBpcyAjLCB3ZSdyZSBpbiBhbHRlcm5hdGUgbW9kZS4gIFRoaXMgb25seQotICAgICAgIGFwcGxpZXMgdG8gaW50ZWdlcnMuICovCi0gICAgaWYgKGVuZC1wdHIgPj0gMSAmJiBwdHJbMF0gPT0gJyMnKSB7Ci0gICAgICAgIGZvcm1hdC0+YWx0ZXJuYXRlID0gMTsKLSAgICAgICAgKytwdHI7Ci0gICAgfQotCi0gICAgLyogVGhlIHNwZWNpYWwgY2FzZSBmb3IgMC1wYWRkaW5nIChiYWNrd2FyZHMgY29tcGF0KSAqLwotICAgIGlmIChmb3JtYXQtPmZpbGxfY2hhciA9PSAnXDAnICYmIGVuZC1wdHIgPj0gMSAmJiBwdHJbMF0gPT0gJzAnKSB7Ci0gICAgICAgIGZvcm1hdC0+ZmlsbF9jaGFyID0gJzAnOwotICAgICAgICBpZiAoIWFsaWduX3NwZWNpZmllZCkgewotICAgICAgICAgICAgZm9ybWF0LT5hbGlnbiA9ICc9JzsKLSAgICAgICAgfQotICAgICAgICArK3B0cjsKLSAgICB9Ci0KLSAgICBjb25zdW1lZCA9IGdldF9pbnRlZ2VyKCZwdHIsIGVuZCwgJmZvcm1hdC0+d2lkdGgpOwotICAgIGlmIChjb25zdW1lZCA9PSAtMSkKLSAgICAgICAgLyogT3ZlcmZsb3cgZXJyb3IuIEV4Y2VwdGlvbiBhbHJlYWR5IHNldC4gKi8KLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICAvKiBJZiBjb25zdW1lZCBpcyAwLCB3ZSBkaWRuJ3QgY29uc3VtZSBhbnkgY2hhcmFjdGVycyBmb3IgdGhlCi0gICAgICAgd2lkdGguIEluIHRoYXQgY2FzZSwgcmVzZXQgdGhlIHdpZHRoIHRvIC0xLCBiZWNhdXNlCi0gICAgICAgZ2V0X2ludGVnZXIoKSB3aWxsIGhhdmUgc2V0IGl0IHRvIHplcm8uIC0xIGlzIGhvdyB3ZSByZWNvcmQKLSAgICAgICB0aGF0IHRoZSB3aWR0aCB3YXNuJ3Qgc3BlY2lmaWVkLiAqLwotICAgIGlmIChjb25zdW1lZCA9PSAwKQotICAgICAgICBmb3JtYXQtPndpZHRoID0gLTE7Ci0KLSAgICAvKiBDb21tYSBzaWduaWZpZXMgYWRkIHRob3VzYW5kcyBzZXBhcmF0b3JzICovCi0gICAgaWYgKGVuZC1wdHIgJiYgcHRyWzBdID09ICcsJykgewotICAgICAgICBmb3JtYXQtPnRob3VzYW5kc19zZXBhcmF0b3JzID0gMTsKLSAgICAgICAgKytwdHI7Ci0gICAgfQotCi0gICAgLyogUGFyc2UgZmllbGQgcHJlY2lzaW9uICovCi0gICAgaWYgKGVuZC1wdHIgJiYgcHRyWzBdID09ICcuJykgewotICAgICAgICArK3B0cjsKLQotICAgICAgICBjb25zdW1lZCA9IGdldF9pbnRlZ2VyKCZwdHIsIGVuZCwgJmZvcm1hdC0+cHJlY2lzaW9uKTsKLSAgICAgICAgaWYgKGNvbnN1bWVkID09IC0xKQotICAgICAgICAgICAgLyogT3ZlcmZsb3cgZXJyb3IuIEV4Y2VwdGlvbiBhbHJlYWR5IHNldC4gKi8KLSAgICAgICAgICAgIHJldHVybiAwOwotCi0gICAgICAgIC8qIE5vdCBoYXZpbmcgYSBwcmVjaXNpb24gYWZ0ZXIgYSBkb3QgaXMgYW4gZXJyb3IuICovCi0gICAgICAgIGlmIChjb25zdW1lZCA9PSAwKSB7Ci0gICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAiRm9ybWF0IHNwZWNpZmllciBtaXNzaW5nIHByZWNpc2lvbiIpOwotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIH0KLQotICAgIH0KLQotICAgIC8qIEZpbmFsbHksIHBhcnNlIHRoZSB0eXBlIGZpZWxkLiAqLwotCi0gICAgaWYgKGVuZC1wdHIgPiAxKSB7Ci0gICAgICAgIC8qIE1vcmUgdGhhbiBvbmUgY2hhciByZW1haW4sIGludmFsaWQgY29udmVyc2lvbiBzcGVjLiAqLwotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwgIkludmFsaWQgY29udmVyc2lvbiBzcGVjaWZpY2F0aW9uIik7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLQotICAgIGlmIChlbmQtcHRyID09IDEpIHsKLSAgICAgICAgZm9ybWF0LT50eXBlID0gcHRyWzBdOwotICAgICAgICArK3B0cjsKLSAgICB9Ci0KLSAgICAvKiBEbyBhcyBtdWNoIHZhbGlkYXRpbmcgYXMgd2UgY2FuLCBqdXN0IGJ5IGxvb2tpbmcgYXQgdGhlIGZvcm1hdAotICAgICAgIHNwZWNpZmllci4gIERvIG5vdCB0YWtlIGludG8gYWNjb3VudCB3aGF0IHR5cGUgb2YgZm9ybWF0dGluZwotICAgICAgIHdlJ3JlIGRvaW5nIChpbnQsIGZsb2F0LCBzdHJpbmcpLiAqLwotCi0gICAgaWYgKGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMpIHsKLSAgICAgICAgc3dpdGNoIChmb3JtYXQtPnR5cGUpIHsKLSAgICAgICAgY2FzZSAnZCc6Ci0gICAgICAgIGNhc2UgJ2UnOgotICAgICAgICBjYXNlICdmJzoKLSAgICAgICAgY2FzZSAnZyc6Ci0gICAgICAgIGNhc2UgJ0UnOgotICAgICAgICBjYXNlICdHJzoKLSAgICAgICAgY2FzZSAnJSc6Ci0gICAgICAgIGNhc2UgJ0YnOgotICAgICAgICBjYXNlICdcMCc6Ci0gICAgICAgICAgICAvKiBUaGVzZSBhcmUgYWxsb3dlZC4gU2VlIFBFUCAzNzguKi8KLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgaW52YWxpZF9jb21tYV90eXBlKGZvcm1hdC0+dHlwZSk7Ci0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgfQotICAgIH0KLQotICAgIHJldHVybiAxOwotfQotCi0vKiBDYWxjdWxhdGUgdGhlIHBhZGRpbmcgbmVlZGVkLiAqLwotc3RhdGljIHZvaWQKLWNhbGNfcGFkZGluZyhQeV9zc2l6ZV90IG5jaGFycywgUHlfc3NpemVfdCB3aWR0aCwgU1RSSU5HTElCX0NIQVIgYWxpZ24sCi0gICAgICAgICAgICAgUHlfc3NpemVfdCAqbl9scGFkZGluZywgUHlfc3NpemVfdCAqbl9ycGFkZGluZywKLSAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuX3RvdGFsKQotewotICAgIGlmICh3aWR0aCA+PSAwKSB7Ci0gICAgICAgIGlmIChuY2hhcnMgPiB3aWR0aCkKLSAgICAgICAgICAgICpuX3RvdGFsID0gbmNoYXJzOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICAqbl90b3RhbCA9IHdpZHRoOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgLyogbm90IHNwZWNpZmllZCwgdXNlIGFsbCBvZiB0aGUgY2hhcnMgYW5kIG5vIG1vcmUgKi8KLSAgICAgICAgKm5fdG90YWwgPSBuY2hhcnM7Ci0gICAgfQotCi0gICAgLyogRmlndXJlIG91dCBob3cgbXVjaCBsZWFkaW5nIHNwYWNlIHdlIG5lZWQsIGJhc2VkIG9uIHRoZQotICAgICAgIGFsaWduaW5nICovCi0gICAgaWYgKGFsaWduID09ICc+JykKLSAgICAgICAgKm5fbHBhZGRpbmcgPSAqbl90b3RhbCAtIG5jaGFyczsKLSAgICBlbHNlIGlmIChhbGlnbiA9PSAnXicpCi0gICAgICAgICpuX2xwYWRkaW5nID0gKCpuX3RvdGFsIC0gbmNoYXJzKSAvIDI7Ci0gICAgZWxzZSBpZiAoYWxpZ24gPT0gJzwnIHx8IGFsaWduID09ICc9JykKLSAgICAgICAgKm5fbHBhZGRpbmcgPSAwOwotICAgIGVsc2UgewotICAgICAgICAvKiBXZSBzaG91bGQgbmV2ZXIgaGF2ZSBhbiB1bnNwZWNpZmllZCBhbGlnbm1lbnQuICovCi0gICAgICAgICpuX2xwYWRkaW5nID0gMDsKLSAgICAgICAgYXNzZXJ0KDApOwotICAgIH0KLQotICAgICpuX3JwYWRkaW5nID0gKm5fdG90YWwgLSBuY2hhcnMgLSAqbl9scGFkZGluZzsKLX0KLQotLyogRG8gdGhlIHBhZGRpbmcsIGFuZCByZXR1cm4gYSBwb2ludGVyIHRvIHdoZXJlIHRoZSBjYWxsZXItc3VwcGxpZWQKLSAgIGNvbnRlbnQgZ29lcy4gKi8KLXN0YXRpYyBTVFJJTkdMSUJfQ0hBUiAqCi1maWxsX3BhZGRpbmcoU1RSSU5HTElCX0NIQVIgKnAsIFB5X3NzaXplX3QgbmNoYXJzLCBTVFJJTkdMSUJfQ0hBUiBmaWxsX2NoYXIsCi0gICAgICAgICAgICAgUHlfc3NpemVfdCBuX2xwYWRkaW5nLCBQeV9zc2l6ZV90IG5fcnBhZGRpbmcpCi17Ci0gICAgLyogUGFkIG9uIGxlZnQuICovCi0gICAgaWYgKG5fbHBhZGRpbmcpCi0gICAgICAgIFNUUklOR0xJQl9GSUxMKHAsIGZpbGxfY2hhciwgbl9scGFkZGluZyk7Ci0KLSAgICAvKiBQYWQgb24gcmlnaHQuICovCi0gICAgaWYgKG5fcnBhZGRpbmcpCi0gICAgICAgIFNUUklOR0xJQl9GSUxMKHAgKyBuY2hhcnMgKyBuX2xwYWRkaW5nLCBmaWxsX2NoYXIsIG5fcnBhZGRpbmcpOwotCi0gICAgLyogUG9pbnRlciB0byB0aGUgdXNlciBjb250ZW50LiAqLwotICAgIHJldHVybiBwICsgbl9scGFkZGluZzsKLX0KLQotI2lmIGRlZmluZWQgRk9STUFUX0ZMT0FUIHx8IGRlZmluZWQgRk9STUFUX0xPTkcgfHwgZGVmaW5lZCBGT1JNQVRfQ09NUExFWAotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qKioqKioqKioqKiBjb21tb24gcm91dGluZXMgZm9yIG51bWVyaWMgZm9ybWF0dGluZyAqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0vKiBMb2NhbGUgdHlwZSBjb2Rlcy4gKi8KLSNkZWZpbmUgTFRfQ1VSUkVOVF9MT0NBTEUgMAotI2RlZmluZSBMVF9ERUZBVUxUX0xPQ0FMRSAxCi0jZGVmaW5lIExUX05PX0xPQ0FMRSAyCi0KLS8qIExvY2FsZSBpbmZvIG5lZWRlZCBmb3IgZm9ybWF0dGluZyBpbnRlZ2VycyBhbmQgdGhlIHBhcnQgb2YgZmxvYXRzCi0gICBiZWZvcmUgYW5kIGluY2x1ZGluZyB0aGUgZGVjaW1hbC4gTm90ZSB0aGF0IGxvY2FsZXMgb25seSBzdXBwb3J0Ci0gICA4LWJpdCBjaGFycywgbm90IHVuaWNvZGUuICovCi10eXBlZGVmIHN0cnVjdCB7Ci0gICAgY2hhciAqZGVjaW1hbF9wb2ludDsKLSAgICBjaGFyICp0aG91c2FuZHNfc2VwOwotICAgIGNoYXIgKmdyb3VwaW5nOwotfSBMb2NhbGVJbmZvOwotCi0vKiBkZXNjcmliZXMgdGhlIGxheW91dCBmb3IgYW4gaW50ZWdlciwgc2VlIHRoZSBjb21tZW50IGluCi0gICBjYWxjX251bWJlcl93aWR0aHMoKSBmb3IgZGV0YWlscyAqLwotdHlwZWRlZiBzdHJ1Y3QgewotICAgIFB5X3NzaXplX3Qgbl9scGFkZGluZzsKLSAgICBQeV9zc2l6ZV90IG5fcHJlZml4OwotICAgIFB5X3NzaXplX3Qgbl9zcGFkZGluZzsKLSAgICBQeV9zc2l6ZV90IG5fcnBhZGRpbmc7Ci0gICAgY2hhciBzaWduOwotICAgIFB5X3NzaXplX3Qgbl9zaWduOyAgICAgIC8qIG51bWJlciBvZiBkaWdpdHMgbmVlZGVkIGZvciBzaWduICgwLzEpICovCi0gICAgUHlfc3NpemVfdCBuX2dyb3VwZWRfZGlnaXRzOyAvKiBTcGFjZSB0YWtlbiB1cCBieSB0aGUgZGlnaXRzLCBpbmNsdWRpbmcKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFueSBncm91cGluZyBjaGFycy4gKi8KLSAgICBQeV9zc2l6ZV90IG5fZGVjaW1hbDsgICAvKiAwIGlmIG9ubHkgYW4gaW50ZWdlciAqLwotICAgIFB5X3NzaXplX3Qgbl9yZW1haW5kZXI7IC8qIERpZ2l0cyBpbiBkZWNpbWFsIGFuZC9vciBleHBvbmVudCBwYXJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2x1ZGluZyB0aGUgZGVjaW1hbCBpdHNlbGYsIGlmCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc2VudC4gKi8KLQotICAgIC8qIFRoZXNlIDIgYXJlIG5vdCB0aGUgd2lkdGhzIG9mIGZpZWxkcywgYnV0IGFyZSBuZWVkZWQgYnkKLSAgICAgICBTVFJJTkdMSUJfR1JPVVBJTkcuICovCi0gICAgUHlfc3NpemVfdCBuX2RpZ2l0czsgICAgLyogVGhlIG51bWJlciBvZiBkaWdpdHMgYmVmb3JlIGEgZGVjaW1hbAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yIGV4cG9uZW50LiAqLwotICAgIFB5X3NzaXplX3Qgbl9taW5fd2lkdGg7IC8qIFRoZSBtaW5fd2lkdGggd2UgdXNlZCB3aGVuIHdlIGNvbXB1dGVkCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIG5fZ3JvdXBlZF9kaWdpdHMgd2lkdGguICovCi19IE51bWJlckZpZWxkV2lkdGhzOwotCi0KLS8qIEdpdmVuIGEgbnVtYmVyIG9mIHRoZSBmb3JtOgotICAgZGlnaXRzW3JlbWFpbmRlcl0KLSAgIHdoZXJlIHB0ciBwb2ludHMgdG8gdGhlIHN0YXJ0IGFuZCBlbmQgcG9pbnRzIHRvIHRoZSBlbmQsIGZpbmQgd2hlcmUKLSAgICB0aGUgaW50ZWdlciBwYXJ0IGVuZHMuIFRoaXMgY291bGQgYmUgYSBkZWNpbWFsLCBhbiBleHBvbmVudCwgYm90aCwKLSAgICBvciBuZWl0aGVyLgotICAgSWYgYSBkZWNpbWFsIHBvaW50IGlzIHByZXNlbnQsIHNldCAqaGFzX2RlY2ltYWwgYW5kIGluY3JlbWVudAotICAgIHJlbWFpbmRlciBiZXlvbmQgaXQuCi0gICBSZXN1bHRzIGFyZSB1bmRlZmluZWQgKGJ1dCBzaG91bGRuJ3QgY3Jhc2gpIGZvciBpbXByb3Blcmx5Ci0gICAgZm9ybWF0dGVkIHN0cmluZ3MuCi0qLwotc3RhdGljIHZvaWQKLXBhcnNlX251bWJlcihTVFJJTkdMSUJfQ0hBUiAqcHRyLCBQeV9zc2l6ZV90IGxlbiwKLSAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuX3JlbWFpbmRlciwgaW50ICpoYXNfZGVjaW1hbCkKLXsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqZW5kID0gcHRyICsgbGVuOwotICAgIFNUUklOR0xJQl9DSEFSICpyZW1haW5kZXI7Ci0KLSAgICB3aGlsZSAocHRyPGVuZCAmJiBpc2RpZ2l0KCpwdHIpKQotICAgICAgICArK3B0cjsKLSAgICByZW1haW5kZXIgPSBwdHI7Ci0KLSAgICAvKiBEb2VzIHJlbWFpbmRlciBzdGFydCB3aXRoIGEgZGVjaW1hbCBwb2ludD8gKi8KLSAgICAqaGFzX2RlY2ltYWwgPSBwdHI8ZW5kICYmICpyZW1haW5kZXIgPT0gJy4nOwotCi0gICAgLyogU2tpcCB0aGUgZGVjaW1hbCBwb2ludC4gKi8KLSAgICBpZiAoKmhhc19kZWNpbWFsKQotICAgICAgICByZW1haW5kZXIrKzsKLQotICAgICpuX3JlbWFpbmRlciA9IGVuZCAtIHJlbWFpbmRlcjsKLX0KLQotLyogbm90IGFsbCBmaWVsZHMgb2YgZm9ybWF0IGFyZSB1c2VkLiAgZm9yIGV4YW1wbGUsIHByZWNpc2lvbiBpcwotICAgdW51c2VkLiAgc2hvdWxkIHRoaXMgdGFrZSBkaXNjcmV0ZSBwYXJhbXMgaW4gb3JkZXIgdG8gYmUgbW9yZSBjbGVhcgotICAgYWJvdXQgd2hhdCBpdCBkb2VzPyAgb3IgaXMgcGFzc2luZyBhIHNpbmdsZSBmb3JtYXQgcGFyYW1ldGVyIGVhc2llcgotICAgYW5kIG1vcmUgZWZmaWNpZW50IGVub3VnaCB0byBqdXN0aWZ5IGEgbGl0dGxlIG9iZnVzY2F0aW9uPyAqLwotc3RhdGljIFB5X3NzaXplX3QKLWNhbGNfbnVtYmVyX3dpZHRocyhOdW1iZXJGaWVsZFdpZHRocyAqc3BlYywgUHlfc3NpemVfdCBuX3ByZWZpeCwKLSAgICAgICAgICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiBzaWduX2NoYXIsIFNUUklOR0xJQl9DSEFSICpudW1iZXIsCi0gICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuX251bWJlciwgUHlfc3NpemVfdCBuX3JlbWFpbmRlciwKLSAgICAgICAgICAgICAgICAgICBpbnQgaGFzX2RlY2ltYWwsIGNvbnN0IExvY2FsZUluZm8gKmxvY2FsZSwKLSAgICAgICAgICAgICAgICAgICBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKLXsKLSAgICBQeV9zc2l6ZV90IG5fbm9uX2RpZ2l0X25vbl9wYWRkaW5nOwotICAgIFB5X3NzaXplX3Qgbl9wYWRkaW5nOwotCi0gICAgc3BlYy0+bl9kaWdpdHMgPSBuX251bWJlciAtIG5fcmVtYWluZGVyIC0gKGhhc19kZWNpbWFsPzE6MCk7Ci0gICAgc3BlYy0+bl9scGFkZGluZyA9IDA7Ci0gICAgc3BlYy0+bl9wcmVmaXggPSBuX3ByZWZpeDsKLSAgICBzcGVjLT5uX2RlY2ltYWwgPSBoYXNfZGVjaW1hbCA/IHN0cmxlbihsb2NhbGUtPmRlY2ltYWxfcG9pbnQpIDogMDsKLSAgICBzcGVjLT5uX3JlbWFpbmRlciA9IG5fcmVtYWluZGVyOwotICAgIHNwZWMtPm5fc3BhZGRpbmcgPSAwOwotICAgIHNwZWMtPm5fcnBhZGRpbmcgPSAwOwotICAgIHNwZWMtPnNpZ24gPSAnXDAnOwotICAgIHNwZWMtPm5fc2lnbiA9IDA7Ci0KLSAgICAvKiB0aGUgb3V0cHV0IHdpbGwgbG9vayBsaWtlOgotICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLSAgICAgICB8IDxscGFkZGluZz4gPHNpZ24+IDxwcmVmaXg+IDxzcGFkZGluZz4gPGdyb3VwZWRfZGlnaXRzPiA8ZGVjaW1hbD4gPHJlbWFpbmRlcj4gPHJwYWRkaW5nPiB8Ci0gICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAotCi0gICAgICAgc2lnbiBpcyBjb21wdXRlZCBmcm9tIGZvcm1hdC0+c2lnbiBhbmQgdGhlIGFjdHVhbAotICAgICAgIHNpZ24gb2YgdGhlIG51bWJlcgotCi0gICAgICAgcHJlZml4IGlzIGdpdmVuIChpdCdzIGZvciB0aGUgJzB4JyBwcmVmaXgpCi0KLSAgICAgICBkaWdpdHMgaXMgYWxyZWFkeSBrbm93bgotCi0gICAgICAgdGhlIHRvdGFsIHdpZHRoIGlzIGVpdGhlciBnaXZlbiwgb3IgY29tcHV0ZWQgZnJvbSB0aGUKLSAgICAgICBhY3R1YWwgZGlnaXRzCi0KLSAgICAgICBvbmx5IG9uZSBvZiBscGFkZGluZywgc3BhZGRpbmcsIGFuZCBycGFkZGluZyBjYW4gYmUgbm9uLXplcm8sCi0gICAgICAgYW5kIGl0J3MgY2FsY3VsYXRlZCBmcm9tIHRoZSB3aWR0aCBhbmQgb3RoZXIgZmllbGRzCi0gICAgKi8KLQotICAgIC8qIGNvbXB1dGUgdGhlIHZhcmlvdXMgcGFydHMgd2UncmUgZ29pbmcgdG8gd3JpdGUgKi8KLSAgICBzd2l0Y2ggKGZvcm1hdC0+c2lnbikgewotICAgIGNhc2UgJysnOgotICAgICAgICAvKiBhbHdheXMgcHV0IGEgKyBvciAtICovCi0gICAgICAgIHNwZWMtPm5fc2lnbiA9IDE7Ci0gICAgICAgIHNwZWMtPnNpZ24gPSAoc2lnbl9jaGFyID09ICctJyA/ICctJyA6ICcrJyk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgJyAnOgotICAgICAgICBzcGVjLT5uX3NpZ24gPSAxOwotICAgICAgICBzcGVjLT5zaWduID0gKHNpZ25fY2hhciA9PSAnLScgPyAnLScgOiAnICcpOwotICAgICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICAvKiBOb3Qgc3BlY2lmaWVkLCBvciB0aGUgZGVmYXVsdCAoLSkgKi8KLSAgICAgICAgaWYgKHNpZ25fY2hhciA9PSAnLScpIHsKLSAgICAgICAgICAgIHNwZWMtPm5fc2lnbiA9IDE7Ci0gICAgICAgICAgICBzcGVjLT5zaWduID0gJy0nOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgLyogVGhlIG51bWJlciBvZiBjaGFycyB1c2VkIGZvciBub24tZGlnaXRzIGFuZCBub24tcGFkZGluZy4gKi8KLSAgICBuX25vbl9kaWdpdF9ub25fcGFkZGluZyA9IHNwZWMtPm5fc2lnbiArIHNwZWMtPm5fcHJlZml4ICsgc3BlYy0+bl9kZWNpbWFsICsKLSAgICAgICAgc3BlYy0+bl9yZW1haW5kZXI7Ci0KLSAgICAvKiBtaW5fd2lkdGggY2FuIGdvIG5lZ2F0aXZlLCB0aGF0J3Mgb2theS4gZm9ybWF0LT53aWR0aCA9PSAtMSBtZWFucwotICAgICAgIHdlIGRvbid0IGNhcmUuICovCi0gICAgaWYgKGZvcm1hdC0+ZmlsbF9jaGFyID09ICcwJyAmJiBmb3JtYXQtPmFsaWduID09ICc9JykKLSAgICAgICAgc3BlYy0+bl9taW5fd2lkdGggPSBmb3JtYXQtPndpZHRoIC0gbl9ub25fZGlnaXRfbm9uX3BhZGRpbmc7Ci0gICAgZWxzZQotICAgICAgICBzcGVjLT5uX21pbl93aWR0aCA9IDA7Ci0KLSAgICBpZiAoc3BlYy0+bl9kaWdpdHMgPT0gMCkKLSAgICAgICAgLyogVGhpcyBjYXNlIG9ubHkgb2NjdXJzIHdoZW4gdXNpbmcgJ2MnIGZvcm1hdHRpbmcsIHdlIG5lZWQKLSAgICAgICAgICAgdG8gc3BlY2lhbCBjYXNlIGl0IGJlY2F1c2UgdGhlIGdyb3VwaW5nIGNvZGUgYWx3YXlzIHdhbnRzCi0gICAgICAgICAgIHRvIGhhdmUgYXQgbGVhc3Qgb25lIGNoYXJhY3Rlci4gKi8KLSAgICAgICAgc3BlYy0+bl9ncm91cGVkX2RpZ2l0cyA9IDA7Ci0gICAgZWxzZQotICAgICAgICBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzID0gU1RSSU5HTElCX0dST1VQSU5HKE5VTEwsIDAsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlYy0+bl9kaWdpdHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlYy0+bl9taW5fd2lkdGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlLT5ncm91cGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGUtPnRob3VzYW5kc19zZXApOwotCi0gICAgLyogR2l2ZW4gdGhlIGRlc2lyZWQgd2lkdGggYW5kIHRoZSB0b3RhbCBvZiBkaWdpdCBhbmQgbm9uLWRpZ2l0Ci0gICAgICAgc3BhY2Ugd2UgY29uc3VtZSwgc2VlIGlmIHdlIG5lZWQgYW55IHBhZGRpbmcuIGZvcm1hdC0+d2lkdGggY2FuCi0gICAgICAgYmUgbmVnYXRpdmUgKG1lYW5pbmcgbm8gcGFkZGluZyksIGJ1dCB0aGlzIGNvZGUgc3RpbGwgd29ya3MgaW4KLSAgICAgICB0aGF0IGNhc2UuICovCi0gICAgbl9wYWRkaW5nID0gZm9ybWF0LT53aWR0aCAtCi0gICAgICAgICAgICAgICAgICAgICAgICAobl9ub25fZGlnaXRfbm9uX3BhZGRpbmcgKyBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzKTsKLSAgICBpZiAobl9wYWRkaW5nID4gMCkgewotICAgICAgICAvKiBTb21lIHBhZGRpbmcgaXMgbmVlZGVkLiBEZXRlcm1pbmUgaWYgaXQncyBsZWZ0LCBzcGFjZSwgb3IgcmlnaHQuICovCi0gICAgICAgIHN3aXRjaCAoZm9ybWF0LT5hbGlnbikgewotICAgICAgICBjYXNlICc8JzoKLSAgICAgICAgICAgIHNwZWMtPm5fcnBhZGRpbmcgPSBuX3BhZGRpbmc7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSAnXic6Ci0gICAgICAgICAgICBzcGVjLT5uX2xwYWRkaW5nID0gbl9wYWRkaW5nIC8gMjsKLSAgICAgICAgICAgIHNwZWMtPm5fcnBhZGRpbmcgPSBuX3BhZGRpbmcgLSBzcGVjLT5uX2xwYWRkaW5nOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgJz0nOgotICAgICAgICAgICAgc3BlYy0+bl9zcGFkZGluZyA9IG5fcGFkZGluZzsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlICc+JzoKLSAgICAgICAgICAgIHNwZWMtPm5fbHBhZGRpbmcgPSBuX3BhZGRpbmc7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIC8qIFNob3VsZG4ndCBnZXQgaGVyZSwgYnV0IHRyZWF0IGl0IGFzICc+JyAqLwotICAgICAgICAgICAgc3BlYy0+bl9scGFkZGluZyA9IG5fcGFkZGluZzsKLSAgICAgICAgICAgIGFzc2VydCgwKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgfQotICAgIHJldHVybiBzcGVjLT5uX2xwYWRkaW5nICsgc3BlYy0+bl9zaWduICsgc3BlYy0+bl9wcmVmaXggKwotICAgICAgICBzcGVjLT5uX3NwYWRkaW5nICsgc3BlYy0+bl9ncm91cGVkX2RpZ2l0cyArIHNwZWMtPm5fZGVjaW1hbCArCi0gICAgICAgIHNwZWMtPm5fcmVtYWluZGVyICsgc3BlYy0+bl9ycGFkZGluZzsKLX0KLQotLyogRmlsbCBpbiB0aGUgZGlnaXQgcGFydHMgb2YgYSBudW1iZXJzJ3Mgc3RyaW5nIHJlcHJlc2VudGF0aW9uLAotICAgYXMgZGV0ZXJtaW5lZCBpbiBjYWxjX251bWJlcl93aWR0aHMoKS4KLSAgIE5vIGVycm9yIGNoZWNraW5nLCBzaW5jZSB3ZSBrbm93IHRoZSBidWZmZXIgaXMgdGhlIGNvcnJlY3Qgc2l6ZS4gKi8KLXN0YXRpYyB2b2lkCi1maWxsX251bWJlcihTVFJJTkdMSUJfQ0hBUiAqYnVmLCBjb25zdCBOdW1iZXJGaWVsZFdpZHRocyAqc3BlYywKLSAgICAgICAgICAgIFNUUklOR0xJQl9DSEFSICpkaWdpdHMsIFB5X3NzaXplX3Qgbl9kaWdpdHMsCi0gICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiAqcHJlZml4LCBTVFJJTkdMSUJfQ0hBUiBmaWxsX2NoYXIsCi0gICAgICAgICAgICBMb2NhbGVJbmZvICpsb2NhbGUsIGludCB0b3VwcGVyKQotewotICAgIC8qIFVzZWQgdG8ga2VlcCB0cmFjayBvZiBkaWdpdHMsIGRlY2ltYWwsIGFuZCByZW1haW5kZXIuICovCi0gICAgU1RSSU5HTElCX0NIQVIgKnAgPSBkaWdpdHM7Ci0KLSNpZm5kZWYgTkRFQlVHCi0gICAgUHlfc3NpemVfdCByOwotI2VuZGlmCi0KLSAgICBpZiAoc3BlYy0+bl9scGFkZGluZykgewotICAgICAgICBTVFJJTkdMSUJfRklMTChidWYsIGZpbGxfY2hhciwgc3BlYy0+bl9scGFkZGluZyk7Ci0gICAgICAgIGJ1ZiArPSBzcGVjLT5uX2xwYWRkaW5nOwotICAgIH0KLSAgICBpZiAoc3BlYy0+bl9zaWduID09IDEpIHsKLSAgICAgICAgKmJ1ZisrID0gc3BlYy0+c2lnbjsKLSAgICB9Ci0gICAgaWYgKHNwZWMtPm5fcHJlZml4KSB7Ci0gICAgICAgIG1lbW1vdmUoYnVmLAotICAgICAgICAgICAgICAgIHByZWZpeCwKLSAgICAgICAgICAgICAgICBzcGVjLT5uX3ByZWZpeCAqIHNpemVvZihTVFJJTkdMSUJfQ0hBUikpOwotICAgICAgICBpZiAodG91cHBlcikgewotICAgICAgICAgICAgUHlfc3NpemVfdCB0OwotICAgICAgICAgICAgZm9yICh0ID0gMDsgdCA8IHNwZWMtPm5fcHJlZml4OyArK3QpCi0gICAgICAgICAgICAgICAgYnVmW3RdID0gU1RSSU5HTElCX1RPVVBQRVIoYnVmW3RdKTsKLSAgICAgICAgfQotICAgICAgICBidWYgKz0gc3BlYy0+bl9wcmVmaXg7Ci0gICAgfQotICAgIGlmIChzcGVjLT5uX3NwYWRkaW5nKSB7Ci0gICAgICAgIFNUUklOR0xJQl9GSUxMKGJ1ZiwgZmlsbF9jaGFyLCBzcGVjLT5uX3NwYWRkaW5nKTsKLSAgICAgICAgYnVmICs9IHNwZWMtPm5fc3BhZGRpbmc7Ci0gICAgfQotCi0gICAgLyogT25seSBmb3IgdHlwZSAnYycgc3BlY2lhbCBjYXNlLCBpdCBoYXMgbm8gZGlnaXRzLiAqLwotICAgIGlmIChzcGVjLT5uX2RpZ2l0cyAhPSAwKSB7Ci0gICAgICAgIC8qIEZpbGwgdGhlIGRpZ2l0cyB3aXRoIEluc2VydFRob3VzYW5kc0dyb3VwaW5nLiAqLwotI2lmbmRlZiBOREVCVUcKLSAgICAgICAgciA9Ci0jZW5kaWYKLSAgICAgICAgICAgIFNUUklOR0xJQl9HUk9VUElORyhidWYsIHNwZWMtPm5fZ3JvdXBlZF9kaWdpdHMsIGRpZ2l0cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVjLT5uX2RpZ2l0cywgc3BlYy0+bl9taW5fd2lkdGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlLT5ncm91cGluZywgbG9jYWxlLT50aG91c2FuZHNfc2VwKTsKLSNpZm5kZWYgTkRFQlVHCi0gICAgICAgIGFzc2VydChyID09IHNwZWMtPm5fZ3JvdXBlZF9kaWdpdHMpOwotI2VuZGlmCi0gICAgICAgIHAgKz0gc3BlYy0+bl9kaWdpdHM7Ci0gICAgfQotICAgIGlmICh0b3VwcGVyKSB7Ci0gICAgICAgIFB5X3NzaXplX3QgdDsKLSAgICAgICAgZm9yICh0ID0gMDsgdCA8IHNwZWMtPm5fZ3JvdXBlZF9kaWdpdHM7ICsrdCkKLSAgICAgICAgICAgIGJ1Zlt0XSA9IFNUUklOR0xJQl9UT1VQUEVSKGJ1Zlt0XSk7Ci0gICAgfQotICAgIGJ1ZiArPSBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzOwotCi0gICAgaWYgKHNwZWMtPm5fZGVjaW1hbCkgewotICAgICAgICBQeV9zc2l6ZV90IHQ7Ci0gICAgICAgIGZvciAodCA9IDA7IHQgPCBzcGVjLT5uX2RlY2ltYWw7ICsrdCkKLSAgICAgICAgICAgIGJ1Zlt0XSA9IGxvY2FsZS0+ZGVjaW1hbF9wb2ludFt0XTsKLSAgICAgICAgYnVmICs9IHNwZWMtPm5fZGVjaW1hbDsKLSAgICAgICAgcCArPSAxOwotICAgIH0KLQotICAgIGlmIChzcGVjLT5uX3JlbWFpbmRlcikgewotICAgICAgICBtZW1jcHkoYnVmLCBwLCBzcGVjLT5uX3JlbWFpbmRlciAqIHNpemVvZihTVFJJTkdMSUJfQ0hBUikpOwotICAgICAgICBidWYgKz0gc3BlYy0+bl9yZW1haW5kZXI7Ci0gICAgICAgIHAgKz0gc3BlYy0+bl9yZW1haW5kZXI7Ci0gICAgfQotCi0gICAgaWYgKHNwZWMtPm5fcnBhZGRpbmcpIHsKLSAgICAgICAgU1RSSU5HTElCX0ZJTEwoYnVmLCBmaWxsX2NoYXIsIHNwZWMtPm5fcnBhZGRpbmcpOwotICAgICAgICBidWYgKz0gc3BlYy0+bl9ycGFkZGluZzsKLSAgICB9Ci19Ci0KLXN0YXRpYyBjaGFyIG5vX2dyb3VwaW5nWzFdID0ge0NIQVJfTUFYfTsKLQotLyogRmluZCB0aGUgZGVjaW1hbCBwb2ludCBjaGFyYWN0ZXIocz8pLCB0aG91c2FuZHNfc2VwYXJhdG9yKHM/KSwgYW5kCi0gICBncm91cGluZyBkZXNjcmlwdGlvbiwgZWl0aGVyIGZvciB0aGUgY3VycmVudCBsb2NhbGUgaWYgdHlwZSBpcwotICAgTFRfQ1VSUkVOVF9MT0NBTEUsIGEgaGFyZC1jb2RlZCBsb2NhbGUgaWYgTFRfREVGQVVMVF9MT0NBTEUsIG9yCi0gICBub25lIGlmIExUX05PX0xPQ0FMRS4gKi8KLXN0YXRpYyB2b2lkCi1nZXRfbG9jYWxlX2luZm8oaW50IHR5cGUsIExvY2FsZUluZm8gKmxvY2FsZV9pbmZvKQotewotICAgIHN3aXRjaCAodHlwZSkgewotICAgIGNhc2UgTFRfQ1VSUkVOVF9MT0NBTEU6IHsKLSAgICAgICAgc3RydWN0IGxjb252ICpsb2NhbGVfZGF0YSA9IGxvY2FsZWNvbnYoKTsKLSAgICAgICAgbG9jYWxlX2luZm8tPmRlY2ltYWxfcG9pbnQgPSBsb2NhbGVfZGF0YS0+ZGVjaW1hbF9wb2ludDsKLSAgICAgICAgbG9jYWxlX2luZm8tPnRob3VzYW5kc19zZXAgPSBsb2NhbGVfZGF0YS0+dGhvdXNhbmRzX3NlcDsKLSAgICAgICAgbG9jYWxlX2luZm8tPmdyb3VwaW5nID0gbG9jYWxlX2RhdGEtPmdyb3VwaW5nOwotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgY2FzZSBMVF9ERUZBVUxUX0xPQ0FMRToKLSAgICAgICAgbG9jYWxlX2luZm8tPmRlY2ltYWxfcG9pbnQgPSAiLiI7Ci0gICAgICAgIGxvY2FsZV9pbmZvLT50aG91c2FuZHNfc2VwID0gIiwiOwotICAgICAgICBsb2NhbGVfaW5mby0+Z3JvdXBpbmcgPSAiXDMiOyAvKiBHcm91cCBldmVyeSAzIGNoYXJhY3RlcnMuICBUaGUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGltcGxpY2l0KSB0cmFpbGluZyAwIG1lYW5zIHJlcGVhdAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmZpbml0ZWx5LiAqLwotICAgICAgICBicmVhazsKLSAgICBjYXNlIExUX05PX0xPQ0FMRToKLSAgICAgICAgbG9jYWxlX2luZm8tPmRlY2ltYWxfcG9pbnQgPSAiLiI7Ci0gICAgICAgIGxvY2FsZV9pbmZvLT50aG91c2FuZHNfc2VwID0gIiI7Ci0gICAgICAgIGxvY2FsZV9pbmZvLT5ncm91cGluZyA9IG5vX2dyb3VwaW5nOwotICAgICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICBhc3NlcnQoMCk7Ci0gICAgfQotfQotCi0jZW5kaWYgLyogRk9STUFUX0ZMT0FUIHx8IEZPUk1BVF9MT05HIHx8IEZPUk1BVF9DT01QTEVYICovCi0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKiogc3RyaW5nIGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotc3RhdGljIFB5T2JqZWN0ICoKLWZvcm1hdF9zdHJpbmdfaW50ZXJuYWwoUHlPYmplY3QgKnZhbHVlLCBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKLXsKLSAgICBQeV9zc2l6ZV90IGxwYWQ7Ci0gICAgUHlfc3NpemVfdCBycGFkOwotICAgIFB5X3NzaXplX3QgdG90YWw7Ci0gICAgU1RSSU5HTElCX0NIQVIgKnA7Ci0gICAgUHlfc3NpemVfdCBsZW4gPSBTVFJJTkdMSUJfTEVOKHZhbHVlKTsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLQotICAgIC8qIHNpZ24gaXMgbm90IGFsbG93ZWQgb24gc3RyaW5ncyAqLwotICAgIGlmIChmb3JtYXQtPnNpZ24gIT0gJ1wwJykgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJTaWduIG5vdCBhbGxvd2VkIGluIHN0cmluZyBmb3JtYXQgc3BlY2lmaWVyIik7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLSAgICAvKiBhbHRlcm5hdGUgaXMgbm90IGFsbG93ZWQgb24gc3RyaW5ncyAqLwotICAgIGlmIChmb3JtYXQtPmFsdGVybmF0ZSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJBbHRlcm5hdGUgZm9ybSAoIykgbm90IGFsbG93ZWQgaW4gc3RyaW5nIGZvcm1hdCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAic3BlY2lmaWVyIik7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLSAgICAvKiAnPScgYWxpZ25tZW50IG5vdCBhbGxvd2VkIG9uIHN0cmluZ3MgKi8KLSAgICBpZiAoZm9ybWF0LT5hbGlnbiA9PSAnPScpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiJz0nIGFsaWdubWVudCBub3QgYWxsb3dlZCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAiaW4gc3RyaW5nIGZvcm1hdCBzcGVjaWZpZXIiKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotICAgIC8qIGlmIHByZWNpc2lvbiBpcyBzcGVjaWZpZWQsIG91dHB1dCBubyBtb3JlIHRoYXQgZm9ybWF0LnByZWNpc2lvbgotICAgICAgIGNoYXJhY3RlcnMgKi8KLSAgICBpZiAoZm9ybWF0LT5wcmVjaXNpb24gPj0gMCAmJiBsZW4gPj0gZm9ybWF0LT5wcmVjaXNpb24pIHsKLSAgICAgICAgbGVuID0gZm9ybWF0LT5wcmVjaXNpb247Ci0gICAgfQotCi0gICAgY2FsY19wYWRkaW5nKGxlbiwgZm9ybWF0LT53aWR0aCwgZm9ybWF0LT5hbGlnbiwgJmxwYWQsICZycGFkLCAmdG90YWwpOwotCi0gICAgLyogYWxsb2NhdGUgdGhlIHJlc3VsdGluZyBzdHJpbmcgKi8KLSAgICByZXN1bHQgPSBTVFJJTkdMSUJfTkVXKE5VTEwsIHRvdGFsKTsKLSAgICBpZiAocmVzdWx0ID09IE5VTEwpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIC8qIFdyaXRlIGludG8gdGhhdCBzcGFjZS4gRmlyc3QgdGhlIHBhZGRpbmcuICovCi0gICAgcCA9IGZpbGxfcGFkZGluZyhTVFJJTkdMSUJfU1RSKHJlc3VsdCksIGxlbiwKLSAgICAgICAgICAgICAgICAgICAgIGZvcm1hdC0+ZmlsbF9jaGFyPT0nXDAnPycgJzpmb3JtYXQtPmZpbGxfY2hhciwKLSAgICAgICAgICAgICAgICAgICAgIGxwYWQsIHJwYWQpOwotCi0gICAgLyogVGhlbiB0aGUgc291cmNlIHN0cmluZy4gKi8KLSAgICBtZW1jcHkocCwgU1RSSU5HTElCX1NUUih2YWx1ZSksIGxlbiAqIHNpemVvZihTVFJJTkdMSUJfQ0hBUikpOwotCi1kb25lOgotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0KLQotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qKioqKioqKioqKiBsb25nIGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0jaWYgZGVmaW5lZCBGT1JNQVRfTE9ORyB8fCBkZWZpbmVkIEZPUk1BVF9JTlQKLXR5cGVkZWYgUHlPYmplY3QqCi0oKkludE9yTG9uZ1RvU3RyaW5nKShQeU9iamVjdCAqdmFsdWUsIGludCBiYXNlKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLWZvcm1hdF9pbnRfb3JfbG9uZ19pbnRlcm5hbChQeU9iamVjdCAqdmFsdWUsIGNvbnN0IEludGVybmFsRm9ybWF0U3BlYyAqZm9ybWF0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIEludE9yTG9uZ1RvU3RyaW5nIHRvc3RyaW5nKQotewotICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotICAgIFB5T2JqZWN0ICp0bXAgPSBOVUxMOwotICAgIFNUUklOR0xJQl9DSEFSICpwbnVtZXJpY19jaGFyczsKLSAgICBTVFJJTkdMSUJfQ0hBUiBudW1lcmljX2NoYXI7Ci0gICAgU1RSSU5HTElCX0NIQVIgc2lnbl9jaGFyID0gJ1wwJzsKLSAgICBQeV9zc2l6ZV90IG5fZGlnaXRzOyAgICAgICAvKiBjb3VudCBvZiBkaWdpdHMgbmVlZCBmcm9tIHRoZSBjb21wdXRlZAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZyAqLwotICAgIFB5X3NzaXplX3Qgbl9yZW1haW5kZXIgPSAwOyAvKiBVc2VkIG9ubHkgZm9yICdjJyBmb3JtYXR0aW5nLCB3aGljaAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWNlcyBub24tZGlnaXRzICovCi0gICAgUHlfc3NpemVfdCBuX3ByZWZpeCA9IDA7ICAgLyogQ291bnQgb2YgcHJlZml4IGNoYXJzLCAoZS5nLiwgJzB4JykgKi8KLSAgICBQeV9zc2l6ZV90IG5fdG90YWw7Ci0gICAgU1RSSU5HTElCX0NIQVIgKnByZWZpeCA9IE5VTEw7Ci0gICAgTnVtYmVyRmllbGRXaWR0aHMgc3BlYzsKLSAgICBsb25nIHg7Ci0KLSAgICAvKiBMb2NhbGUgc2V0dGluZ3MsIGVpdGhlciBmcm9tIHRoZSBhY3R1YWwgbG9jYWxlIG9yCi0gICAgICAgZnJvbSBhIGhhcmQtY29kZSBwc2V1ZG8tbG9jYWxlICovCi0gICAgTG9jYWxlSW5mbyBsb2NhbGU7Ci0KLSAgICAvKiBubyBwcmVjaXNpb24gYWxsb3dlZCBvbiBpbnRlZ2VycyAqLwotICAgIGlmIChmb3JtYXQtPnByZWNpc2lvbiAhPSAtMSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJQcmVjaXNpb24gbm90IGFsbG93ZWQgaW4gaW50ZWdlciBmb3JtYXQgc3BlY2lmaWVyIik7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLSAgICAvKiBzcGVjaWFsIGNhc2UgZm9yIGNoYXJhY3RlciBmb3JtYXR0aW5nICovCi0gICAgaWYgKGZvcm1hdC0+dHlwZSA9PSAnYycpIHsKLSAgICAgICAgLyogZXJyb3IgdG8gc3BlY2lmeSBhIHNpZ24gKi8KLSAgICAgICAgaWYgKGZvcm1hdC0+c2lnbiAhPSAnXDAnKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU2lnbiBub3QgYWxsb3dlZCB3aXRoIGludGVnZXIiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIiBmb3JtYXQgc3BlY2lmaWVyICdjJyIpOwotICAgICAgICAgICAgZ290byBkb25lOwotICAgICAgICB9Ci0KLSAgICAgICAgLyogdGFrZW4gZnJvbSB1bmljb2Rlb2JqZWN0LmMgZm9ybWF0Y2hhcigpICovCi0gICAgICAgIC8qIEludGVnZXIgaW5wdXQgdHJ1bmNhdGVkIHRvIGEgY2hhcmFjdGVyICovCi0vKiBYWFg6IHdvbid0IHdvcmsgZm9yIGludCAqLwotICAgICAgICB4ID0gUHlMb25nX0FzTG9uZyh2YWx1ZSk7Ci0gICAgICAgIGlmICh4ID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgICAgICBnb3RvIGRvbmU7Ci0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgICAgIGlmICh4IDwgMCB8fCB4ID4gMHgxMGZmZmYpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlYyBhcmcgbm90IGluIHJhbmdlKDB4MTEwMDAwKSAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIih3aWRlIFB5dGhvbiBidWlsZCkiKTsKLSAgICAgICAgICAgIGdvdG8gZG9uZTsKLSAgICAgICAgfQotI2Vsc2UKLSAgICAgICAgaWYgKHggPCAwIHx8IHggPiAweGZmZmYpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlYyBhcmcgbm90IGluIHJhbmdlKDB4MTAwMDApICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKG5hcnJvdyBQeXRob24gYnVpbGQpIik7Ci0gICAgICAgICAgICBnb3RvIGRvbmU7Ci0gICAgICAgIH0KLSNlbmRpZgotICAgICAgICBudW1lcmljX2NoYXIgPSAoU1RSSU5HTElCX0NIQVIpeDsKLSAgICAgICAgcG51bWVyaWNfY2hhcnMgPSAmbnVtZXJpY19jaGFyOwotICAgICAgICBuX2RpZ2l0cyA9IDE7Ci0KLSAgICAgICAgLyogQXMgYSBzb3J0LW9mIGhhY2ssIHdlIHRlbGwgY2FsY19udW1iZXJfd2lkdGhzIHRoYXQgd2Ugb25seQotICAgICAgICAgICBoYXZlICJyZW1haW5kZXIiIGNoYXJhY3RlcnMuIGNhbGNfbnVtYmVyX3dpZHRocyB0aGlua3MKLSAgICAgICAgICAgdGhlc2UgYXJlIGNoYXJhY3RlcnMgdGhhdCBkb24ndCBnZXQgZm9ybWF0dGVkLCBvbmx5IGNvcGllZAotICAgICAgICAgICBpbnRvIHRoZSBvdXRwdXQgc3RyaW5nLiBXZSBkbyB0aGlzIGZvciAnYycgZm9ybWF0dGluZywKLSAgICAgICAgICAgYmVjYXVzZSB0aGUgY2hhcmFjdGVycyBhcmUgbGlrZWx5IHRvIGJlIG5vbi1kaWdpdHMuICovCi0gICAgICAgIG5fcmVtYWluZGVyID0gMTsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIGludCBiYXNlOwotICAgICAgICBpbnQgbGVhZGluZ19jaGFyc190b19za2lwID0gMDsgIC8qIE51bWJlciBvZiBjaGFyYWN0ZXJzIGFkZGVkIGJ5Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlOdW1iZXJfVG9CYXNlIHRoYXQgd2Ugd2FudCB0bwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNraXAgb3Zlci4gKi8KLQotICAgICAgICAvKiBDb21wdXRlIHRoZSBiYXNlIGFuZCBob3cgbWFueSBjaGFyYWN0ZXJzIHdpbGwgYmUgYWRkZWQgYnkKLSAgICAgICAgICAgUHlOdW1iZXJfVG9CYXNlICovCi0gICAgICAgIHN3aXRjaCAoZm9ybWF0LT50eXBlKSB7Ci0gICAgICAgIGNhc2UgJ2InOgotICAgICAgICAgICAgYmFzZSA9IDI7Ci0gICAgICAgICAgICBsZWFkaW5nX2NoYXJzX3RvX3NraXAgPSAyOyAvKiAwYiAqLwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgJ28nOgotICAgICAgICAgICAgYmFzZSA9IDg7Ci0gICAgICAgICAgICBsZWFkaW5nX2NoYXJzX3RvX3NraXAgPSAyOyAvKiAwbyAqLwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgJ3gnOgotICAgICAgICBjYXNlICdYJzoKLSAgICAgICAgICAgIGJhc2UgPSAxNjsKLSAgICAgICAgICAgIGxlYWRpbmdfY2hhcnNfdG9fc2tpcCA9IDI7IC8qIDB4ICovCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgZGVmYXVsdDogIC8qIHNob3VsZG4ndCBiZSBuZWVkZWQsIGJ1dCBzdG9wcyBhIGNvbXBpbGVyIHdhcm5pbmcgKi8KLSAgICAgICAgY2FzZSAnZCc6Ci0gICAgICAgIGNhc2UgJ24nOgotICAgICAgICAgICAgYmFzZSA9IDEwOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBUaGUgbnVtYmVyIG9mIHByZWZpeCBjaGFycyBpcyB0aGUgc2FtZSBhcyB0aGUgbGVhZGluZwotICAgICAgICAgICBjaGFycyB0byBza2lwICovCi0gICAgICAgIGlmIChmb3JtYXQtPmFsdGVybmF0ZSkKLSAgICAgICAgICAgIG5fcHJlZml4ID0gbGVhZGluZ19jaGFyc190b19za2lwOwotCi0gICAgICAgIC8qIERvIHRoZSBoYXJkIHBhcnQsIGNvbnZlcnRpbmcgdG8gYSBzdHJpbmcgaW4gYSBnaXZlbiBiYXNlICovCi0gICAgICAgIHRtcCA9IHRvc3RyaW5nKHZhbHVlLCBiYXNlKTsKLSAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQotICAgICAgICAgICAgZ290byBkb25lOwotCi0gICAgICAgIHBudW1lcmljX2NoYXJzID0gU1RSSU5HTElCX1NUUih0bXApOwotICAgICAgICBuX2RpZ2l0cyA9IFNUUklOR0xJQl9MRU4odG1wKTsKLQotICAgICAgICBwcmVmaXggPSBwbnVtZXJpY19jaGFyczsKLQotICAgICAgICAvKiBSZW1lbWJlciBub3QgdG8gbW9kaWZ5IHdoYXQgcG51bWVyaWNfY2hhcnMgcG9pbnRzIHRvLiAgaXQKLSAgICAgICAgICAgbWlnaHQgYmUgaW50ZXJuZWQuICBPbmx5IG1vZGlmeSBpdCBhZnRlciB3ZSBjb3B5IGl0IGludG8gYQotICAgICAgICAgICBuZXdseSBhbGxvY2F0ZWQgb3V0cHV0IGJ1ZmZlci4gKi8KLQotICAgICAgICAvKiBJcyBhIHNpZ24gY2hhcmFjdGVyIHByZXNlbnQgaW4gdGhlIG91dHB1dD8gIElmIHNvLCByZW1lbWJlciBpdAotICAgICAgICAgICBhbmQgc2tpcCBpdCAqLwotICAgICAgICBpZiAocG51bWVyaWNfY2hhcnNbMF0gPT0gJy0nKSB7Ci0gICAgICAgICAgICBzaWduX2NoYXIgPSBwbnVtZXJpY19jaGFyc1swXTsKLSAgICAgICAgICAgICsrcHJlZml4OwotICAgICAgICAgICAgKytsZWFkaW5nX2NoYXJzX3RvX3NraXA7Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBTa2lwIG92ZXIgdGhlIGxlYWRpbmcgY2hhcnMgKDB4LCAwYiwgZXRjLikgKi8KLSAgICAgICAgbl9kaWdpdHMgLT0gbGVhZGluZ19jaGFyc190b19za2lwOwotICAgICAgICBwbnVtZXJpY19jaGFycyArPSBsZWFkaW5nX2NoYXJzX3RvX3NraXA7Ci0gICAgfQotCi0gICAgLyogRGV0ZXJtaW5lIHRoZSBncm91cGluZywgc2VwYXJhdG9yLCBhbmQgZGVjaW1hbCBwb2ludCwgaWYgYW55LiAqLwotICAgIGdldF9sb2NhbGVfaW5mbyhmb3JtYXQtPnR5cGUgPT0gJ24nID8gTFRfQ1VSUkVOVF9MT0NBTEUgOgotICAgICAgICAgICAgICAgICAgICAoZm9ybWF0LT50aG91c2FuZHNfc2VwYXJhdG9ycyA/Ci0gICAgICAgICAgICAgICAgICAgICBMVF9ERUZBVUxUX0xPQ0FMRSA6Ci0gICAgICAgICAgICAgICAgICAgICBMVF9OT19MT0NBTEUpLAotICAgICAgICAgICAgICAgICAgICAmbG9jYWxlKTsKLQotICAgIC8qIENhbGN1bGF0ZSBob3cgbXVjaCBtZW1vcnkgd2UnbGwgbmVlZC4gKi8KLSAgICBuX3RvdGFsID0gY2FsY19udW1iZXJfd2lkdGhzKCZzcGVjLCBuX3ByZWZpeCwgc2lnbl9jaGFyLCBwbnVtZXJpY19jaGFycywKLSAgICAgICAgICAgICAgICAgICAgICAgbl9kaWdpdHMsIG5fcmVtYWluZGVyLCAwLCAmbG9jYWxlLCBmb3JtYXQpOwotCi0gICAgLyogQWxsb2NhdGUgdGhlIG1lbW9yeS4gKi8KLSAgICByZXN1bHQgPSBTVFJJTkdMSUJfTkVXKE5VTEwsIG5fdG90YWwpOwotICAgIGlmICghcmVzdWx0KQotICAgICAgICBnb3RvIGRvbmU7Ci0KLSAgICAvKiBQb3B1bGF0ZSB0aGUgbWVtb3J5LiAqLwotICAgIGZpbGxfbnVtYmVyKFNUUklOR0xJQl9TVFIocmVzdWx0KSwgJnNwZWMsIHBudW1lcmljX2NoYXJzLCBuX2RpZ2l0cywKLSAgICAgICAgICAgICAgICBwcmVmaXgsIGZvcm1hdC0+ZmlsbF9jaGFyID09ICdcMCcgPyAnICcgOiBmb3JtYXQtPmZpbGxfY2hhciwKLSAgICAgICAgICAgICAgICAmbG9jYWxlLCBmb3JtYXQtPnR5cGUgPT0gJ1gnKTsKLQotZG9uZToKLSAgICBQeV9YREVDUkVGKHRtcCk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLSNlbmRpZiAvKiBkZWZpbmVkIEZPUk1BVF9MT05HIHx8IGRlZmluZWQgRk9STUFUX0lOVCAqLwotCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyoqKioqKioqKioqIGZsb2F0IGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0KLSNpZmRlZiBGT1JNQVRfRkxPQVQKLSNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQotc3RhdGljIHZvaWQKLXN0cnRvdW5pY29kZShQeV9VTklDT0RFICpidWZmZXIsIGNvbnN0IGNoYXIgKmNoYXJidWZmZXIsIFB5X3NzaXplX3QgbGVuKQotewotICAgIFB5X3NzaXplX3QgaTsKLSAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyArK2kpCi0gICAgICAgIGJ1ZmZlcltpXSA9IChQeV9VTklDT0RFKWNoYXJidWZmZXJbaV07Ci19Ci0jZW5kaWYKLQotLyogbXVjaCBvZiB0aGlzIGlzIHRha2VuIGZyb20gdW5pY29kZW9iamVjdC5jICovCi1zdGF0aWMgUHlPYmplY3QgKgotZm9ybWF0X2Zsb2F0X2ludGVybmFsKFB5T2JqZWN0ICp2YWx1ZSwKLSAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKLXsKLSAgICBjaGFyICpidWYgPSBOVUxMOyAgICAgICAvKiBidWZmZXIgcmV0dXJuZWQgZnJvbSBQeU9TX2RvdWJsZV90b19zdHJpbmcgKi8KLSAgICBQeV9zc2l6ZV90IG5fZGlnaXRzOwotICAgIFB5X3NzaXplX3Qgbl9yZW1haW5kZXI7Ci0gICAgUHlfc3NpemVfdCBuX3RvdGFsOwotICAgIGludCBoYXNfZGVjaW1hbDsKLSAgICBkb3VibGUgdmFsOwotICAgIFB5X3NzaXplX3QgcHJlY2lzaW9uID0gZm9ybWF0LT5wcmVjaXNpb247Ci0gICAgUHlfc3NpemVfdCBkZWZhdWx0X3ByZWNpc2lvbiA9IDY7Ci0gICAgU1RSSU5HTElCX0NIQVIgdHlwZSA9IGZvcm1hdC0+dHlwZTsKLSAgICBpbnQgYWRkX3BjdCA9IDA7Ci0gICAgU1RSSU5HTElCX0NIQVIgKnA7Ci0gICAgTnVtYmVyRmllbGRXaWR0aHMgc3BlYzsKLSAgICBpbnQgZmxhZ3MgPSAwOwotICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotICAgIFNUUklOR0xJQl9DSEFSIHNpZ25fY2hhciA9ICdcMCc7Ci0gICAgaW50IGZsb2F0X3R5cGU7IC8qIFVzZWQgdG8gc2VlIGlmIHdlIGhhdmUgYSBuYW4sIGluZiwgb3IgcmVndWxhciBmbG9hdC4gKi8KLQotI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCi0gICAgUHlfVU5JQ09ERSAqdW5pY29kZV90bXAgPSBOVUxMOwotI2VuZGlmCi0KLSAgICAvKiBMb2NhbGUgc2V0dGluZ3MsIGVpdGhlciBmcm9tIHRoZSBhY3R1YWwgbG9jYWxlIG9yCi0gICAgICAgZnJvbSBhIGhhcmQtY29kZSBwc2V1ZG8tbG9jYWxlICovCi0gICAgTG9jYWxlSW5mbyBsb2NhbGU7Ci0KLSAgICBpZiAoZm9ybWF0LT5hbHRlcm5hdGUpCi0gICAgICAgIGZsYWdzIHw9IFB5X0RUU0ZfQUxUOwotCi0gICAgaWYgKHR5cGUgPT0gJ1wwJykgewotICAgICAgICAvKiBPbWl0dGVkIHR5cGUgc3BlY2lmaWVyLiAgQmVoYXZlcyBpbiB0aGUgc2FtZSB3YXkgYXMgcmVwcih4KQotICAgICAgICAgICBhbmQgc3RyKHgpIGlmIG5vIHByZWNpc2lvbiBpcyBnaXZlbiwgZWxzZSBsaWtlICdnJywgYnV0IHdpdGgKLSAgICAgICAgICAgYXQgbGVhc3Qgb25lIGRpZ2l0IGFmdGVyIHRoZSBkZWNpbWFsIHBvaW50LiAqLwotICAgICAgICBmbGFncyB8PSBQeV9EVFNGX0FERF9ET1RfMDsKLSAgICAgICAgdHlwZSA9ICdyJzsKLSAgICAgICAgZGVmYXVsdF9wcmVjaXNpb24gPSAwOwotICAgIH0KLQotICAgIGlmICh0eXBlID09ICduJykKLSAgICAgICAgLyogJ24nIGlzIHRoZSBzYW1lIGFzICdnJywgZXhjZXB0IGZvciB0aGUgbG9jYWxlIHVzZWQgdG8KLSAgICAgICAgICAgZm9ybWF0IHRoZSByZXN1bHQuIFdlIHRha2UgY2FyZSBvZiB0aGF0IGxhdGVyLiAqLwotICAgICAgICB0eXBlID0gJ2cnOwotCi0gICAgdmFsID0gUHlGbG9hdF9Bc0RvdWJsZSh2YWx1ZSk7Ci0gICAgaWYgKHZhbCA9PSAtMS4wICYmIFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIGlmICh0eXBlID09ICclJykgewotICAgICAgICB0eXBlID0gJ2YnOwotICAgICAgICB2YWwgKj0gMTAwOwotICAgICAgICBhZGRfcGN0ID0gMTsKLSAgICB9Ci0KLSAgICBpZiAocHJlY2lzaW9uIDwgMCkKLSAgICAgICAgcHJlY2lzaW9uID0gZGVmYXVsdF9wcmVjaXNpb247Ci0gICAgZWxzZSBpZiAodHlwZSA9PSAncicpCi0gICAgICAgIHR5cGUgPSAnZyc7Ci0KLSAgICAvKiBDYXN0ICJ0eXBlIiwgYmVjYXVzZSBpZiB3ZSdyZSBpbiB1bmljb2RlIHdlIG5lZWQgdG8gcGFzcyBhCi0gICAgICAgOC1iaXQgY2hhci4gVGhpcyBpcyBzYWZlLCBiZWNhdXNlIHdlJ3ZlIHJlc3RyaWN0ZWQgd2hhdCAidHlwZSIKLSAgICAgICBjYW4gYmUuICovCi0gICAgYnVmID0gUHlPU19kb3VibGVfdG9fc3RyaW5nKHZhbCwgKGNoYXIpdHlwZSwgcHJlY2lzaW9uLCBmbGFncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZsb2F0X3R5cGUpOwotICAgIGlmIChidWYgPT0gTlVMTCkKLSAgICAgICAgZ290byBkb25lOwotICAgIG5fZGlnaXRzID0gc3RybGVuKGJ1Zik7Ci0KLSAgICBpZiAoYWRkX3BjdCkgewotICAgICAgICAvKiBXZSBrbm93IHRoYXQgYnVmIGhhcyBhIHRyYWlsaW5nIHplcm8gKHNpbmNlIHdlIGp1c3QgY2FsbGVkCi0gICAgICAgICAgIHN0cmxlbigpIG9uIGl0KSwgYW5kIHdlIGRvbid0IHVzZSB0aGF0IGZhY3QgYW55IG1vcmUuIFNvIHdlCi0gICAgICAgICAgIGNhbiBqdXN0IHdyaXRlIG92ZXIgdGhlIHRyYWlsaW5nIHplcm8uICovCi0gICAgICAgIGJ1ZltuX2RpZ2l0c10gPSAnJSc7Ci0gICAgICAgIG5fZGlnaXRzICs9IDE7Ci0gICAgfQotCi0gICAgLyogU2luY2UgdGhlcmUgaXMgbm8gdW5pY29kZSB2ZXJzaW9uIG9mIFB5T1NfZG91YmxlX3RvX3N0cmluZywKLSAgICAgICBqdXN0IHVzZSB0aGUgOCBiaXQgdmVyc2lvbiBhbmQgdGhlbiBjb252ZXJ0IHRvIHVuaWNvZGUuICovCi0jaWYgU1RSSU5HTElCX0lTX1VOSUNPREUKLSAgICB1bmljb2RlX3RtcCA9IChQeV9VTklDT0RFKilQeU1lbV9NYWxsb2MoKG5fZGlnaXRzKSpzaXplb2YoUHlfVU5JQ09ERSkpOwotICAgIGlmICh1bmljb2RlX3RtcCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0gICAgc3RydG91bmljb2RlKHVuaWNvZGVfdG1wLCBidWYsIG5fZGlnaXRzKTsKLSAgICBwID0gdW5pY29kZV90bXA7Ci0jZWxzZQotICAgIHAgPSBidWY7Ci0jZW5kaWYKLQotICAgIC8qIElzIGEgc2lnbiBjaGFyYWN0ZXIgcHJlc2VudCBpbiB0aGUgb3V0cHV0PyAgSWYgc28sIHJlbWVtYmVyIGl0Ci0gICAgICAgYW5kIHNraXAgaXQgKi8KLSAgICBpZiAoKnAgPT0gJy0nKSB7Ci0gICAgICAgIHNpZ25fY2hhciA9ICpwOwotICAgICAgICArK3A7Ci0gICAgICAgIC0tbl9kaWdpdHM7Ci0gICAgfQotCi0gICAgLyogRGV0ZXJtaW5lIGlmIHdlIGhhdmUgYW55ICJyZW1haW5kZXIiIChhZnRlciB0aGUgZGlnaXRzLCBtaWdodCBpbmNsdWRlCi0gICAgICAgZGVjaW1hbCBvciBleHBvbmVudCBvciBib3RoIChvciBuZWl0aGVyKSkgKi8KLSAgICBwYXJzZV9udW1iZXIocCwgbl9kaWdpdHMsICZuX3JlbWFpbmRlciwgJmhhc19kZWNpbWFsKTsKLQotICAgIC8qIERldGVybWluZSB0aGUgZ3JvdXBpbmcsIHNlcGFyYXRvciwgYW5kIGRlY2ltYWwgcG9pbnQsIGlmIGFueS4gKi8KLSAgICBnZXRfbG9jYWxlX2luZm8oZm9ybWF0LT50eXBlID09ICduJyA/IExUX0NVUlJFTlRfTE9DQUxFIDoKLSAgICAgICAgICAgICAgICAgICAgKGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMgPwotICAgICAgICAgICAgICAgICAgICAgTFRfREVGQVVMVF9MT0NBTEUgOgotICAgICAgICAgICAgICAgICAgICAgTFRfTk9fTE9DQUxFKSwKLSAgICAgICAgICAgICAgICAgICAgJmxvY2FsZSk7Ci0KLSAgICAvKiBDYWxjdWxhdGUgaG93IG11Y2ggbWVtb3J5IHdlJ2xsIG5lZWQuICovCi0gICAgbl90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmc3BlYywgMCwgc2lnbl9jaGFyLCBwLCBuX2RpZ2l0cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5fcmVtYWluZGVyLCBoYXNfZGVjaW1hbCwgJmxvY2FsZSwgZm9ybWF0KTsKLQotICAgIC8qIEFsbG9jYXRlIHRoZSBtZW1vcnkuICovCi0gICAgcmVzdWx0ID0gU1RSSU5HTElCX05FVyhOVUxMLCBuX3RvdGFsKTsKLSAgICBpZiAocmVzdWx0ID09IE5VTEwpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIC8qIFBvcHVsYXRlIHRoZSBtZW1vcnkuICovCi0gICAgZmlsbF9udW1iZXIoU1RSSU5HTElCX1NUUihyZXN1bHQpLCAmc3BlYywgcCwgbl9kaWdpdHMsIE5VTEwsCi0gICAgICAgICAgICAgICAgZm9ybWF0LT5maWxsX2NoYXIgPT0gJ1wwJyA/ICcgJyA6IGZvcm1hdC0+ZmlsbF9jaGFyLCAmbG9jYWxlLAotICAgICAgICAgICAgICAgIDApOwotCi1kb25lOgotICAgIFB5TWVtX0ZyZWUoYnVmKTsKLSNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQotICAgIFB5TWVtX0ZyZWUodW5pY29kZV90bXApOwotI2VuZGlmCi0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLSNlbmRpZiAvKiBGT1JNQVRfRkxPQVQgKi8KLQotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qKioqKioqKioqKiBjb21wbGV4IGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0jaWZkZWYgRk9STUFUX0NPTVBMRVgKLQotc3RhdGljIFB5T2JqZWN0ICoKLWZvcm1hdF9jb21wbGV4X2ludGVybmFsKFB5T2JqZWN0ICp2YWx1ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEludGVybmFsRm9ybWF0U3BlYyAqZm9ybWF0KQotewotICAgIGRvdWJsZSByZTsKLSAgICBkb3VibGUgaW07Ci0gICAgY2hhciAqcmVfYnVmID0gTlVMTDsgICAgICAgLyogYnVmZmVyIHJldHVybmVkIGZyb20gUHlPU19kb3VibGVfdG9fc3RyaW5nICovCi0gICAgY2hhciAqaW1fYnVmID0gTlVMTDsgICAgICAgLyogYnVmZmVyIHJldHVybmVkIGZyb20gUHlPU19kb3VibGVfdG9fc3RyaW5nICovCi0KLSAgICBJbnRlcm5hbEZvcm1hdFNwZWMgdG1wX2Zvcm1hdCA9ICpmb3JtYXQ7Ci0gICAgUHlfc3NpemVfdCBuX3JlX2RpZ2l0czsKLSAgICBQeV9zc2l6ZV90IG5faW1fZGlnaXRzOwotICAgIFB5X3NzaXplX3Qgbl9yZV9yZW1haW5kZXI7Ci0gICAgUHlfc3NpemVfdCBuX2ltX3JlbWFpbmRlcjsKLSAgICBQeV9zc2l6ZV90IG5fcmVfdG90YWw7Ci0gICAgUHlfc3NpemVfdCBuX2ltX3RvdGFsOwotICAgIGludCByZV9oYXNfZGVjaW1hbDsKLSAgICBpbnQgaW1faGFzX2RlY2ltYWw7Ci0gICAgUHlfc3NpemVfdCBwcmVjaXNpb24gPSBmb3JtYXQtPnByZWNpc2lvbjsKLSAgICBQeV9zc2l6ZV90IGRlZmF1bHRfcHJlY2lzaW9uID0gNjsKLSAgICBTVFJJTkdMSUJfQ0hBUiB0eXBlID0gZm9ybWF0LT50eXBlOwotICAgIFNUUklOR0xJQl9DSEFSICpwX3JlOwotICAgIFNUUklOR0xJQl9DSEFSICpwX2ltOwotICAgIE51bWJlckZpZWxkV2lkdGhzIHJlX3NwZWM7Ci0gICAgTnVtYmVyRmllbGRXaWR0aHMgaW1fc3BlYzsKLSAgICBpbnQgZmxhZ3MgPSAwOwotICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotICAgIFNUUklOR0xJQl9DSEFSICpwOwotICAgIFNUUklOR0xJQl9DSEFSIHJlX3NpZ25fY2hhciA9ICdcMCc7Ci0gICAgU1RSSU5HTElCX0NIQVIgaW1fc2lnbl9jaGFyID0gJ1wwJzsKLSAgICBpbnQgcmVfZmxvYXRfdHlwZTsgLyogVXNlZCB0byBzZWUgaWYgd2UgaGF2ZSBhIG5hbiwgaW5mLCBvciByZWd1bGFyIGZsb2F0LiAqLwotICAgIGludCBpbV9mbG9hdF90eXBlOwotICAgIGludCBhZGRfcGFyZW5zID0gMDsKLSAgICBpbnQgc2tpcF9yZSA9IDA7Ci0gICAgUHlfc3NpemVfdCBscGFkOwotICAgIFB5X3NzaXplX3QgcnBhZDsKLSAgICBQeV9zc2l6ZV90IHRvdGFsOwotCi0jaWYgU1RSSU5HTElCX0lTX1VOSUNPREUKLSAgICBQeV9VTklDT0RFICpyZV91bmljb2RlX3RtcCA9IE5VTEw7Ci0gICAgUHlfVU5JQ09ERSAqaW1fdW5pY29kZV90bXAgPSBOVUxMOwotI2VuZGlmCi0KLSAgICAvKiBMb2NhbGUgc2V0dGluZ3MsIGVpdGhlciBmcm9tIHRoZSBhY3R1YWwgbG9jYWxlIG9yCi0gICAgICAgZnJvbSBhIGhhcmQtY29kZSBwc2V1ZG8tbG9jYWxlICovCi0gICAgTG9jYWxlSW5mbyBsb2NhbGU7Ci0KLSAgICAvKiBaZXJvIHBhZGRpbmcgaXMgbm90IGFsbG93ZWQuICovCi0gICAgaWYgKGZvcm1hdC0+ZmlsbF9jaGFyID09ICcwJykgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJaZXJvIHBhZGRpbmcgaXMgbm90IGFsbG93ZWQgaW4gY29tcGxleCBmb3JtYXQgIgotICAgICAgICAgICAgICAgICAgICAgICAgInNwZWNpZmllciIpOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi0gICAgLyogTmVpdGhlciBpcyAnPScgYWxpZ25tZW50IC4gKi8KLSAgICBpZiAoZm9ybWF0LT5hbGlnbiA9PSAnPScpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiJz0nIGFsaWdubWVudCBmbGFnIGlzIG5vdCBhbGxvd2VkIGluIGNvbXBsZXggZm9ybWF0ICIKLSAgICAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZXIiKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotICAgIHJlID0gUHlDb21wbGV4X1JlYWxBc0RvdWJsZSh2YWx1ZSk7Ci0gICAgaWYgKHJlID09IC0xLjAgJiYgUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgZ290byBkb25lOwotICAgIGltID0gUHlDb21wbGV4X0ltYWdBc0RvdWJsZSh2YWx1ZSk7Ci0gICAgaWYgKGltID09IC0xLjAgJiYgUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgZ290byBkb25lOwotCi0gICAgaWYgKGZvcm1hdC0+YWx0ZXJuYXRlKQotICAgICAgICBmbGFncyB8PSBQeV9EVFNGX0FMVDsKLQotICAgIGlmICh0eXBlID09ICdcMCcpIHsKLSAgICAgICAgLyogT21pdHRlZCB0eXBlIHNwZWNpZmllci4gU2hvdWxkIGJlIGxpa2Ugc3RyKHNlbGYpLiAqLwotICAgICAgICB0eXBlID0gJ3InOwotICAgICAgICBkZWZhdWx0X3ByZWNpc2lvbiA9IDA7Ci0gICAgICAgIGlmIChyZSA9PSAwLjAgJiYgY29weXNpZ24oMS4wLCByZSkgPT0gMS4wKQotICAgICAgICAgICAgc2tpcF9yZSA9IDE7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIGFkZF9wYXJlbnMgPSAxOwotICAgIH0KLQotICAgIGlmICh0eXBlID09ICduJykKLSAgICAgICAgLyogJ24nIGlzIHRoZSBzYW1lIGFzICdnJywgZXhjZXB0IGZvciB0aGUgbG9jYWxlIHVzZWQgdG8KLSAgICAgICAgICAgZm9ybWF0IHRoZSByZXN1bHQuIFdlIHRha2UgY2FyZSBvZiB0aGF0IGxhdGVyLiAqLwotICAgICAgICB0eXBlID0gJ2cnOwotCi0gICAgaWYgKHByZWNpc2lvbiA8IDApCi0gICAgICAgIHByZWNpc2lvbiA9IGRlZmF1bHRfcHJlY2lzaW9uOwotICAgIGVsc2UgaWYgKHR5cGUgPT0gJ3InKQotICAgICAgICB0eXBlID0gJ2cnOwotCi0gICAgLyogQ2FzdCAidHlwZSIsIGJlY2F1c2UgaWYgd2UncmUgaW4gdW5pY29kZSB3ZSBuZWVkIHRvIHBhc3MgYQotICAgICAgIDgtYml0IGNoYXIuIFRoaXMgaXMgc2FmZSwgYmVjYXVzZSB3ZSd2ZSByZXN0cmljdGVkIHdoYXQgInR5cGUiCi0gICAgICAgY2FuIGJlLiAqLwotICAgIHJlX2J1ZiA9IFB5T1NfZG91YmxlX3RvX3N0cmluZyhyZSwgKGNoYXIpdHlwZSwgcHJlY2lzaW9uLCBmbGFncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlX2Zsb2F0X3R5cGUpOwotICAgIGlmIChyZV9idWYgPT0gTlVMTCkKLSAgICAgICAgZ290byBkb25lOwotICAgIGltX2J1ZiA9IFB5T1NfZG91YmxlX3RvX3N0cmluZyhpbSwgKGNoYXIpdHlwZSwgcHJlY2lzaW9uLCBmbGFncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmltX2Zsb2F0X3R5cGUpOwotICAgIGlmIChpbV9idWYgPT0gTlVMTCkKLSAgICAgICAgZ290byBkb25lOwotCi0gICAgbl9yZV9kaWdpdHMgPSBzdHJsZW4ocmVfYnVmKTsKLSAgICBuX2ltX2RpZ2l0cyA9IHN0cmxlbihpbV9idWYpOwotCi0gICAgLyogU2luY2UgdGhlcmUgaXMgbm8gdW5pY29kZSB2ZXJzaW9uIG9mIFB5T1NfZG91YmxlX3RvX3N0cmluZywKLSAgICAgICBqdXN0IHVzZSB0aGUgOCBiaXQgdmVyc2lvbiBhbmQgdGhlbiBjb252ZXJ0IHRvIHVuaWNvZGUuICovCi0jaWYgU1RSSU5HTElCX0lTX1VOSUNPREUKLSAgICByZV91bmljb2RlX3RtcCA9IChQeV9VTklDT0RFKilQeU1lbV9NYWxsb2MoKG5fcmVfZGlnaXRzKSpzaXplb2YoUHlfVU5JQ09ERSkpOwotICAgIGlmIChyZV91bmljb2RlX3RtcCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0gICAgc3RydG91bmljb2RlKHJlX3VuaWNvZGVfdG1wLCByZV9idWYsIG5fcmVfZGlnaXRzKTsKLSAgICBwX3JlID0gcmVfdW5pY29kZV90bXA7Ci0KLSAgICBpbV91bmljb2RlX3RtcCA9IChQeV9VTklDT0RFKilQeU1lbV9NYWxsb2MoKG5faW1fZGlnaXRzKSpzaXplb2YoUHlfVU5JQ09ERSkpOwotICAgIGlmIChpbV91bmljb2RlX3RtcCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0gICAgc3RydG91bmljb2RlKGltX3VuaWNvZGVfdG1wLCBpbV9idWYsIG5faW1fZGlnaXRzKTsKLSAgICBwX2ltID0gaW1fdW5pY29kZV90bXA7Ci0jZWxzZQotICAgIHBfcmUgPSByZV9idWY7Ci0gICAgcF9pbSA9IGltX2J1ZjsKLSNlbmRpZgotCi0gICAgLyogSXMgYSBzaWduIGNoYXJhY3RlciBwcmVzZW50IGluIHRoZSBvdXRwdXQ/ICBJZiBzbywgcmVtZW1iZXIgaXQKLSAgICAgICBhbmQgc2tpcCBpdCAqLwotICAgIGlmICgqcF9yZSA9PSAnLScpIHsKLSAgICAgICAgcmVfc2lnbl9jaGFyID0gKnBfcmU7Ci0gICAgICAgICsrcF9yZTsKLSAgICAgICAgLS1uX3JlX2RpZ2l0czsKLSAgICB9Ci0gICAgaWYgKCpwX2ltID09ICctJykgewotICAgICAgICBpbV9zaWduX2NoYXIgPSAqcF9pbTsKLSAgICAgICAgKytwX2ltOwotICAgICAgICAtLW5faW1fZGlnaXRzOwotICAgIH0KLQotICAgIC8qIERldGVybWluZSBpZiB3ZSBoYXZlIGFueSAicmVtYWluZGVyIiAoYWZ0ZXIgdGhlIGRpZ2l0cywgbWlnaHQgaW5jbHVkZQotICAgICAgIGRlY2ltYWwgb3IgZXhwb25lbnQgb3IgYm90aCAob3IgbmVpdGhlcikpICovCi0gICAgcGFyc2VfbnVtYmVyKHBfcmUsIG5fcmVfZGlnaXRzLCAmbl9yZV9yZW1haW5kZXIsICZyZV9oYXNfZGVjaW1hbCk7Ci0gICAgcGFyc2VfbnVtYmVyKHBfaW0sIG5faW1fZGlnaXRzLCAmbl9pbV9yZW1haW5kZXIsICZpbV9oYXNfZGVjaW1hbCk7Ci0KLSAgICAvKiBEZXRlcm1pbmUgdGhlIGdyb3VwaW5nLCBzZXBhcmF0b3IsIGFuZCBkZWNpbWFsIHBvaW50LCBpZiBhbnkuICovCi0gICAgZ2V0X2xvY2FsZV9pbmZvKGZvcm1hdC0+dHlwZSA9PSAnbicgPyBMVF9DVVJSRU5UX0xPQ0FMRSA6Ci0gICAgICAgICAgICAgICAgICAgIChmb3JtYXQtPnRob3VzYW5kc19zZXBhcmF0b3JzID8KLSAgICAgICAgICAgICAgICAgICAgIExUX0RFRkFVTFRfTE9DQUxFIDoKLSAgICAgICAgICAgICAgICAgICAgIExUX05PX0xPQ0FMRSksCi0gICAgICAgICAgICAgICAgICAgICZsb2NhbGUpOwotCi0gICAgLyogVHVybiBvZmYgYW55IHBhZGRpbmcuIFdlJ2xsIGRvIGl0IGxhdGVyIGFmdGVyIHdlJ3ZlIGNvbXBvc2VkCi0gICAgICAgdGhlIG51bWJlcnMgd2l0aG91dCBwYWRkaW5nLiAqLwotICAgIHRtcF9mb3JtYXQuZmlsbF9jaGFyID0gJ1wwJzsKLSAgICB0bXBfZm9ybWF0LmFsaWduID0gJzwnOwotICAgIHRtcF9mb3JtYXQud2lkdGggPSAtMTsKLQotICAgIC8qIENhbGN1bGF0ZSBob3cgbXVjaCBtZW1vcnkgd2UnbGwgbmVlZC4gKi8KLSAgICBuX3JlX3RvdGFsID0gY2FsY19udW1iZXJfd2lkdGhzKCZyZV9zcGVjLCAwLCByZV9zaWduX2NoYXIsIHBfcmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuX3JlX2RpZ2l0cywgbl9yZV9yZW1haW5kZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZV9oYXNfZGVjaW1hbCwgJmxvY2FsZSwgJnRtcF9mb3JtYXQpOwotCi0gICAgLyogU2FtZSBmb3JtYXR0aW5nLCBidXQgYWx3YXlzIGluY2x1ZGUgYSBzaWduLCB1bmxlc3MgdGhlIHJlYWwgcGFydCBpcwotICAgICAqIGdvaW5nIHRvIGJlIG9taXR0ZWQsIGluIHdoaWNoIGNhc2Ugd2UgdXNlIHdoYXRldmVyIHNpZ24gY29udmVudGlvbiB3YXMKLSAgICAgKiByZXF1ZXN0ZWQgYnkgdGhlIG9yaWdpbmFsIGZvcm1hdC4gKi8KLSAgICBpZiAoIXNraXBfcmUpCi0gICAgICAgIHRtcF9mb3JtYXQuc2lnbiA9ICcrJzsKLSAgICBuX2ltX3RvdGFsID0gY2FsY19udW1iZXJfd2lkdGhzKCZpbV9zcGVjLCAwLCBpbV9zaWduX2NoYXIsIHBfaW0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuX2ltX2RpZ2l0cywgbl9pbV9yZW1haW5kZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbV9oYXNfZGVjaW1hbCwgJmxvY2FsZSwgJnRtcF9mb3JtYXQpOwotCi0gICAgaWYgKHNraXBfcmUpCi0gICAgICAgIG5fcmVfdG90YWwgPSAwOwotCi0gICAgLyogQWRkIDEgZm9yIHRoZSAnaicsIGFuZCBvcHRpb25hbGx5IDIgZm9yIHBhcmVucy4gKi8KLSAgICBjYWxjX3BhZGRpbmcobl9yZV90b3RhbCArIG5faW1fdG90YWwgKyAxICsgYWRkX3BhcmVucyAqIDIsCi0gICAgICAgICAgICAgICAgIGZvcm1hdC0+d2lkdGgsIGZvcm1hdC0+YWxpZ24sICZscGFkLCAmcnBhZCwgJnRvdGFsKTsKLQotICAgIHJlc3VsdCA9IFNUUklOR0xJQl9ORVcoTlVMTCwgdG90YWwpOwotICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKLSAgICAgICAgZ290byBkb25lOwotCi0gICAgLyogUG9wdWxhdGUgdGhlIG1lbW9yeS4gRmlyc3QsIHRoZSBwYWRkaW5nLiAqLwotICAgIHAgPSBmaWxsX3BhZGRpbmcoU1RSSU5HTElCX1NUUihyZXN1bHQpLAotICAgICAgICAgICAgICAgICAgICAgbl9yZV90b3RhbCArIG5faW1fdG90YWwgKyAxICsgYWRkX3BhcmVucyAqIDIsCi0gICAgICAgICAgICAgICAgICAgICBmb3JtYXQtPmZpbGxfY2hhcj09J1wwJyA/ICcgJyA6IGZvcm1hdC0+ZmlsbF9jaGFyLAotICAgICAgICAgICAgICAgICAgICAgbHBhZCwgcnBhZCk7Ci0KLSAgICBpZiAoYWRkX3BhcmVucykKLSAgICAgICAgKnArKyA9ICcoJzsKLQotICAgIGlmICghc2tpcF9yZSkgewotICAgICAgICBmaWxsX251bWJlcihwLCAmcmVfc3BlYywgcF9yZSwgbl9yZV9kaWdpdHMsIE5VTEwsIDAsICZsb2NhbGUsIDApOwotICAgICAgICBwICs9IG5fcmVfdG90YWw7Ci0gICAgfQotICAgIGZpbGxfbnVtYmVyKHAsICZpbV9zcGVjLCBwX2ltLCBuX2ltX2RpZ2l0cywgTlVMTCwgMCwgJmxvY2FsZSwgMCk7Ci0gICAgcCArPSBuX2ltX3RvdGFsOwotICAgICpwKysgPSAnaic7Ci0KLSAgICBpZiAoYWRkX3BhcmVucykKLSAgICAgICAgKnArKyA9ICcpJzsKLQotZG9uZToKLSAgICBQeU1lbV9GcmVlKHJlX2J1Zik7Ci0gICAgUHlNZW1fRnJlZShpbV9idWYpOwotI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCi0gICAgUHlNZW1fRnJlZShyZV91bmljb2RlX3RtcCk7Ci0gICAgUHlNZW1fRnJlZShpbV91bmljb2RlX3RtcCk7Ci0jZW5kaWYKLSAgICByZXR1cm4gcmVzdWx0OwotfQotI2VuZGlmIC8qIEZPUk1BVF9DT01QTEVYICovCi0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKiogYnVpbHQgaW4gZm9ybWF0dGVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLVB5T2JqZWN0ICoKLUZPUk1BVF9TVFJJTkcoUHlPYmplY3QgKm9iaiwKLSAgICAgICAgICAgICAgU1RSSU5HTElCX0NIQVIgKmZvcm1hdF9zcGVjLAotICAgICAgICAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbikKLXsKLSAgICBJbnRlcm5hbEZvcm1hdFNwZWMgZm9ybWF0OwotICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotCi0gICAgLyogY2hlY2sgZm9yIHRoZSBzcGVjaWFsIGNhc2Ugb2YgemVybyBsZW5ndGggZm9ybWF0IHNwZWMsIG1ha2UKLSAgICAgICBpdCBlcXVpdmFsZW50IHRvIHN0cihvYmopICovCi0gICAgaWYgKGZvcm1hdF9zcGVjX2xlbiA9PSAwKSB7Ci0gICAgICAgIHJlc3VsdCA9IFNUUklOR0xJQl9UT1NUUihvYmopOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi0gICAgLyogcGFyc2UgdGhlIGZvcm1hdF9zcGVjICovCi0gICAgaWYgKCFwYXJzZV9pbnRlcm5hbF9yZW5kZXJfZm9ybWF0X3NwZWMoZm9ybWF0X3NwZWMsIGZvcm1hdF9zcGVjX2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0LCAncycsICc8JykpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIC8qIHR5cGUgY29udmVyc2lvbj8gKi8KLSAgICBzd2l0Y2ggKGZvcm1hdC50eXBlKSB7Ci0gICAgY2FzZSAncyc6Ci0gICAgICAgIC8qIG5vIHR5cGUgY29udmVyc2lvbiBuZWVkZWQsIGFscmVhZHkgYSBzdHJpbmcuICBkbyB0aGUgZm9ybWF0dGluZyAqLwotICAgICAgICByZXN1bHQgPSBmb3JtYXRfc3RyaW5nX2ludGVybmFsKG9iaiwgJmZvcm1hdCk7Ci0gICAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIC8qIHVua25vd24gKi8KLSAgICAgICAgdW5rbm93bl9wcmVzZW50YXRpb25fdHlwZShmb3JtYXQudHlwZSwgb2JqLT5vYl90eXBlLT50cF9uYW1lKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotZG9uZToKLSAgICByZXR1cm4gcmVzdWx0OwotfQotCi0jaWYgZGVmaW5lZCBGT1JNQVRfTE9ORyB8fCBkZWZpbmVkIEZPUk1BVF9JTlQKLXN0YXRpYyBQeU9iamVjdCoKLWZvcm1hdF9pbnRfb3JfbG9uZyhQeU9iamVjdCogb2JqLAotICAgICAgICAgICAgICAgICAgIFNUUklOR0xJQl9DSEFSICpmb3JtYXRfc3BlYywKLSAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbiwKLSAgICAgICAgICAgICAgICAgICBJbnRPckxvbmdUb1N0cmluZyB0b3N0cmluZykKLXsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqdG1wID0gTlVMTDsKLSAgICBJbnRlcm5hbEZvcm1hdFNwZWMgZm9ybWF0OwotCi0gICAgLyogY2hlY2sgZm9yIHRoZSBzcGVjaWFsIGNhc2Ugb2YgemVybyBsZW5ndGggZm9ybWF0IHNwZWMsIG1ha2UKLSAgICAgICBpdCBlcXVpdmFsZW50IHRvIHN0cihvYmopICovCi0gICAgaWYgKGZvcm1hdF9zcGVjX2xlbiA9PSAwKSB7Ci0gICAgICAgIHJlc3VsdCA9IFNUUklOR0xJQl9UT1NUUihvYmopOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi0gICAgLyogcGFyc2UgdGhlIGZvcm1hdF9zcGVjICovCi0gICAgaWYgKCFwYXJzZV9pbnRlcm5hbF9yZW5kZXJfZm9ybWF0X3NwZWMoZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0X3NwZWNfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmb3JtYXQsICdkJywgJz4nKSkKLSAgICAgICAgZ290byBkb25lOwotCi0gICAgLyogdHlwZSBjb252ZXJzaW9uPyAqLwotICAgIHN3aXRjaCAoZm9ybWF0LnR5cGUpIHsKLSAgICBjYXNlICdiJzoKLSAgICBjYXNlICdjJzoKLSAgICBjYXNlICdkJzoKLSAgICBjYXNlICdvJzoKLSAgICBjYXNlICd4JzoKLSAgICBjYXNlICdYJzoKLSAgICBjYXNlICduJzoKLSAgICAgICAgLyogbm8gdHlwZSBjb252ZXJzaW9uIG5lZWRlZCwgYWxyZWFkeSBhbiBpbnQgKG9yIGxvbmcpLiAgZG8KLSAgICAgICAgICAgdGhlIGZvcm1hdHRpbmcgKi8KLSAgICAgICAgICAgIHJlc3VsdCA9IGZvcm1hdF9pbnRfb3JfbG9uZ19pbnRlcm5hbChvYmosICZmb3JtYXQsIHRvc3RyaW5nKTsKLSAgICAgICAgYnJlYWs7Ci0KLSAgICBjYXNlICdlJzoKLSAgICBjYXNlICdFJzoKLSAgICBjYXNlICdmJzoKLSAgICBjYXNlICdGJzoKLSAgICBjYXNlICdnJzoKLSAgICBjYXNlICdHJzoKLSAgICBjYXNlICclJzoKLSAgICAgICAgLyogY29udmVydCB0byBmbG9hdCAqLwotICAgICAgICB0bXAgPSBQeU51bWJlcl9GbG9hdChvYmopOwotICAgICAgICBpZiAodG1wID09IE5VTEwpCi0gICAgICAgICAgICBnb3RvIGRvbmU7Ci0gICAgICAgIHJlc3VsdCA9IGZvcm1hdF9mbG9hdF9pbnRlcm5hbCh0bXAsICZmb3JtYXQpOwotICAgICAgICBicmVhazsKLQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIC8qIHVua25vd24gKi8KLSAgICAgICAgdW5rbm93bl9wcmVzZW50YXRpb25fdHlwZShmb3JtYXQudHlwZSwgb2JqLT5vYl90eXBlLT50cF9uYW1lKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotZG9uZToKLSAgICBQeV9YREVDUkVGKHRtcCk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLSNlbmRpZiAvKiBGT1JNQVRfTE9ORyB8fCBkZWZpbmVkIEZPUk1BVF9JTlQgKi8KLQotI2lmZGVmIEZPUk1BVF9MT05HCi0vKiBOZWVkIHRvIGRlZmluZSBsb25nX2Zvcm1hdCBhcyBhIGZ1bmN0aW9uIHRoYXQgd2lsbCBjb252ZXJ0IGEgbG9uZwotICAgdG8gYSBzdHJpbmcuICBJbiAzLjAsIF9QeUxvbmdfRm9ybWF0IGhhcyB0aGUgY29ycmVjdCBzaWduYXR1cmUuICBJbgotICAgMi54LCB3ZSBuZWVkIHRvIGZ1ZGdlIGEgZmV3IHBhcmFtZXRlcnMgKi8KLSNpZiBQWV9WRVJTSU9OX0hFWCA+PSAweDAzMDAwMDAwCi0jZGVmaW5lIGxvbmdfZm9ybWF0IF9QeUxvbmdfRm9ybWF0Ci0jZWxzZQotc3RhdGljIFB5T2JqZWN0KgotbG9uZ19mb3JtYXQoUHlPYmplY3QqIHZhbHVlLCBpbnQgYmFzZSkKLXsKLSAgICAvKiBDb252ZXJ0IHRvIGJhc2UsIGRvbid0IGFkZCB0cmFpbGluZyAnTCcsIGFuZCB1c2UgdGhlIG5ldyBvY3RhbAotICAgICAgIGZvcm1hdC4gV2UgYWxyZWFkeSBrbm93IHRoaXMgaXMgYSBsb25nIG9iamVjdCAqLwotICAgIGFzc2VydChQeUxvbmdfQ2hlY2sodmFsdWUpKTsKLSAgICAvKiBjb252ZXJ0IHRvIGJhc2UsIGRvbid0IGFkZCAnTCcsIGFuZCB1c2UgdGhlIG5ldyBvY3RhbCBmb3JtYXQgKi8KLSAgICByZXR1cm4gX1B5TG9uZ19Gb3JtYXQodmFsdWUsIGJhc2UsIDAsIDEpOwotfQotI2VuZGlmCi0KLVB5T2JqZWN0ICoKLUZPUk1BVF9MT05HKFB5T2JqZWN0ICpvYmosCi0gICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiAqZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbikKLXsKLSAgICByZXR1cm4gZm9ybWF0X2ludF9vcl9sb25nKG9iaiwgZm9ybWF0X3NwZWMsIGZvcm1hdF9zcGVjX2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvbmdfZm9ybWF0KTsKLX0KLSNlbmRpZiAvKiBGT1JNQVRfTE9ORyAqLwotCi0jaWZkZWYgRk9STUFUX0lOVAotLyogdGhpcyBpcyBvbmx5IHVzZWQgZm9yIDIueCwgbm90IDMuMCAqLwotc3RhdGljIFB5T2JqZWN0KgotaW50X2Zvcm1hdChQeU9iamVjdCogdmFsdWUsIGludCBiYXNlKQotewotICAgIC8qIENvbnZlcnQgdG8gYmFzZSwgYW5kIHVzZSB0aGUgbmV3IG9jdGFsIGZvcm1hdC4gV2UgYWxyZWFkeQotICAgICAgIGtub3cgdGhpcyBpcyBhbiBpbnQgb2JqZWN0ICovCi0gICAgYXNzZXJ0KFB5SW50X0NoZWNrKHZhbHVlKSk7Ci0gICAgcmV0dXJuIF9QeUludF9Gb3JtYXQoKFB5SW50T2JqZWN0Kil2YWx1ZSwgYmFzZSwgMSk7Ci19Ci0KLVB5T2JqZWN0ICoKLUZPUk1BVF9JTlQoUHlPYmplY3QgKm9iaiwKLSAgICAgICAgICAgU1RSSU5HTElCX0NIQVIgKmZvcm1hdF9zcGVjLAotICAgICAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbikKLXsKLSAgICByZXR1cm4gZm9ybWF0X2ludF9vcl9sb25nKG9iaiwgZm9ybWF0X3NwZWMsIGZvcm1hdF9zcGVjX2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludF9mb3JtYXQpOwotfQotI2VuZGlmIC8qIEZPUk1BVF9JTlQgKi8KLQotI2lmZGVmIEZPUk1BVF9GTE9BVAotUHlPYmplY3QgKgotRk9STUFUX0ZMT0FUKFB5T2JqZWN0ICpvYmosCi0gICAgICAgICAgICAgU1RSSU5HTElCX0NIQVIgKmZvcm1hdF9zcGVjLAotICAgICAgICAgICAgIFB5X3NzaXplX3QgZm9ybWF0X3NwZWNfbGVuKQotewotICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotICAgIEludGVybmFsRm9ybWF0U3BlYyBmb3JtYXQ7Ci0KLSAgICAvKiBjaGVjayBmb3IgdGhlIHNwZWNpYWwgY2FzZSBvZiB6ZXJvIGxlbmd0aCBmb3JtYXQgc3BlYywgbWFrZQotICAgICAgIGl0IGVxdWl2YWxlbnQgdG8gc3RyKG9iaikgKi8KLSAgICBpZiAoZm9ybWF0X3NwZWNfbGVuID09IDApIHsKLSAgICAgICAgcmVzdWx0ID0gU1RSSU5HTElCX1RPU1RSKG9iaik7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLSAgICAvKiBwYXJzZSB0aGUgZm9ybWF0X3NwZWMgKi8KLSAgICBpZiAoIXBhcnNlX2ludGVybmFsX3JlbmRlcl9mb3JtYXRfc3BlYyhmb3JtYXRfc3BlYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXRfc3BlY19sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZvcm1hdCwgJ1wwJywgJz4nKSkKLSAgICAgICAgZ290byBkb25lOwotCi0gICAgLyogdHlwZSBjb252ZXJzaW9uPyAqLwotICAgIHN3aXRjaCAoZm9ybWF0LnR5cGUpIHsKLSAgICBjYXNlICdcMCc6IC8qIE5vIGZvcm1hdCBjb2RlOiBsaWtlICdnJywgYnV0IHdpdGggYXQgbGVhc3Qgb25lIGRlY2ltYWwuICovCi0gICAgY2FzZSAnZSc6Ci0gICAgY2FzZSAnRSc6Ci0gICAgY2FzZSAnZic6Ci0gICAgY2FzZSAnRic6Ci0gICAgY2FzZSAnZyc6Ci0gICAgY2FzZSAnRyc6Ci0gICAgY2FzZSAnbic6Ci0gICAgY2FzZSAnJSc6Ci0gICAgICAgIC8qIG5vIGNvbnZlcnNpb24sIGFscmVhZHkgYSBmbG9hdC4gIGRvIHRoZSBmb3JtYXR0aW5nICovCi0gICAgICAgIHJlc3VsdCA9IGZvcm1hdF9mbG9hdF9pbnRlcm5hbChvYmosICZmb3JtYXQpOwotICAgICAgICBicmVhazsKLQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIC8qIHVua25vd24gKi8KLSAgICAgICAgdW5rbm93bl9wcmVzZW50YXRpb25fdHlwZShmb3JtYXQudHlwZSwgb2JqLT5vYl90eXBlLT50cF9uYW1lKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotZG9uZToKLSAgICByZXR1cm4gcmVzdWx0OwotfQotI2VuZGlmIC8qIEZPUk1BVF9GTE9BVCAqLwotCi0jaWZkZWYgRk9STUFUX0NPTVBMRVgKLVB5T2JqZWN0ICoKLUZPUk1BVF9DT01QTEVYKFB5T2JqZWN0ICpvYmosCi0gICAgICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiAqZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbikKLXsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBJbnRlcm5hbEZvcm1hdFNwZWMgZm9ybWF0OwotCi0gICAgLyogY2hlY2sgZm9yIHRoZSBzcGVjaWFsIGNhc2Ugb2YgemVybyBsZW5ndGggZm9ybWF0IHNwZWMsIG1ha2UKLSAgICAgICBpdCBlcXVpdmFsZW50IHRvIHN0cihvYmopICovCi0gICAgaWYgKGZvcm1hdF9zcGVjX2xlbiA9PSAwKSB7Ci0gICAgICAgIHJlc3VsdCA9IFNUUklOR0xJQl9UT1NUUihvYmopOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi0gICAgLyogcGFyc2UgdGhlIGZvcm1hdF9zcGVjICovCi0gICAgaWYgKCFwYXJzZV9pbnRlcm5hbF9yZW5kZXJfZm9ybWF0X3NwZWMoZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0X3NwZWNfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmb3JtYXQsICdcMCcsICc+JykpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIC8qIHR5cGUgY29udmVyc2lvbj8gKi8KLSAgICBzd2l0Y2ggKGZvcm1hdC50eXBlKSB7Ci0gICAgY2FzZSAnXDAnOiAvKiBObyBmb3JtYXQgY29kZTogbGlrZSAnZycsIGJ1dCB3aXRoIGF0IGxlYXN0IG9uZSBkZWNpbWFsLiAqLwotICAgIGNhc2UgJ2UnOgotICAgIGNhc2UgJ0UnOgotICAgIGNhc2UgJ2YnOgotICAgIGNhc2UgJ0YnOgotICAgIGNhc2UgJ2cnOgotICAgIGNhc2UgJ0cnOgotICAgIGNhc2UgJ24nOgotICAgICAgICAvKiBubyBjb252ZXJzaW9uLCBhbHJlYWR5IGEgY29tcGxleC4gIGRvIHRoZSBmb3JtYXR0aW5nICovCi0gICAgICAgIHJlc3VsdCA9IGZvcm1hdF9jb21wbGV4X2ludGVybmFsKG9iaiwgJmZvcm1hdCk7Ci0gICAgICAgIGJyZWFrOwotCi0gICAgZGVmYXVsdDoKLSAgICAgICAgLyogdW5rbm93biAqLwotICAgICAgICB1bmtub3duX3ByZXNlbnRhdGlvbl90eXBlKGZvcm1hdC50eXBlLCBvYmotPm9iX3R5cGUtPnRwX25hbWUpOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi1kb25lOgotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0jZW5kaWYgLyogRk9STUFUX0NPTVBMRVggKi8KZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL2xvY2FsZXV0aWwuaCBiL09iamVjdHMvc3RyaW5nbGliL2xvY2FsZXV0aWwuaAppbmRleCBmNTQ4MTMzLi4yOGM4N2M4IDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9sb2NhbGV1dGlsLmgKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvbG9jYWxldXRpbC5oCkBAIC0xLDIxICsxLDE5IEBACiAvKiBzdHJpbmdsaWI6IGxvY2FsZSByZWxhdGVkIGhlbHBlcnMgaW1wbGVtZW50YXRpb24gKi8KIAotI2lmbmRlZiBTVFJJTkdMSUJfTE9DQUxFVVRJTF9ICi0jZGVmaW5lIFNUUklOR0xJQl9MT0NBTEVVVElMX0gKLQogI2luY2x1ZGUgPGxvY2FsZS5oPgogCi0jZGVmaW5lIE1BWCh4LCB5KSAoKHgpIDwgKHkpID8gKHkpIDogKHgpKQotI2RlZmluZSBNSU4oeCwgeSkgKCh4KSA8ICh5KSA/ICh4KSA6ICh5KSkKKyNpZm5kZWYgU1RSSU5HTElCX0lTX1VOSUNPREUKKyMgICBlcnJvciAibG9jYWxldXRpbCBpcyBzcGVjaWZpYyB0byBVbmljb2RlIgorI2VuZGlmCiAKIHR5cGVkZWYgc3RydWN0IHsKICAgICBjb25zdCBjaGFyICpncm91cGluZzsKICAgICBjaGFyIHByZXZpb3VzOwogICAgIFB5X3NzaXplX3QgaTsgLyogV2hlcmUgd2UncmUgY3VycmVudGx5IHBvaW50aW5nIGluIGdyb3VwaW5nLiAqLwotfSBHcm91cEdlbmVyYXRvcjsKK30gU1RSSU5HTElCKEdyb3VwR2VuZXJhdG9yKTsKIAogc3RhdGljIHZvaWQKLV9Hcm91cEdlbmVyYXRvcl9pbml0KEdyb3VwR2VuZXJhdG9yICpzZWxmLCBjb25zdCBjaGFyICpncm91cGluZykKK1NUUklOR0xJQihHcm91cEdlbmVyYXRvcl9pbml0KShTVFJJTkdMSUIoR3JvdXBHZW5lcmF0b3IpICpzZWxmLCBjb25zdCBjaGFyICpncm91cGluZykKIHsKICAgICBzZWxmLT5ncm91cGluZyA9IGdyb3VwaW5nOwogICAgIHNlbGYtPmkgPSAwOwpAQCAtMjQsNyArMjIsNyBAQAogCiAvKiBSZXR1cm5zIHRoZSBuZXh0IGdyb3VwaW5nLCBvciAwIHRvIHNpZ25pZnkgZW5kLiAqLwogc3RhdGljIFB5X3NzaXplX3QKLV9Hcm91cEdlbmVyYXRvcl9uZXh0KEdyb3VwR2VuZXJhdG9yICpzZWxmKQorU1RSSU5HTElCKEdyb3VwR2VuZXJhdG9yX25leHQpKFNUUklOR0xJQihHcm91cEdlbmVyYXRvcikgKnNlbGYpCiB7CiAgICAgLyogTm90ZSB0aGF0IHdlIGRvbid0IHJlYWxseSBkbyBtdWNoIGVycm9yIGNoZWNraW5nIGhlcmUuIElmIGEKICAgICAgICBncm91cGluZyBzdHJpbmcgY29udGFpbnMganVzdCBDSEFSX01BWCwgZm9yIGV4YW1wbGUsIHRoZW4ganVzdApAQCAtNDgsMjcgKzQ2LDE4IEBACiAvKiBGaWxsIGluIHNvbWUgZGlnaXRzLCBsZWFkaW5nIHplcm9zLCBhbmQgdGhvdXNhbmRzIHNlcGFyYXRvci4gQWxsCiAgICBhcmUgb3B0aW9uYWwsIGRlcGVuZGluZyBvbiB3aGVuIHdlJ3JlIGNhbGxlZC4gKi8KIHN0YXRpYyB2b2lkCi1maWxsKFNUUklOR0xJQl9DSEFSICoqZGlnaXRzX2VuZCwgU1RSSU5HTElCX0NIQVIgKipidWZmZXJfZW5kLAotICAgICBQeV9zc2l6ZV90IG5fY2hhcnMsIFB5X3NzaXplX3Qgbl96ZXJvcywgY29uc3QgY2hhciogdGhvdXNhbmRzX3NlcCwKK1NUUklOR0xJQihmaWxsKShTVFJJTkdMSUJfQ0hBUiAqKmRpZ2l0c19lbmQsIFNUUklOR0xJQl9DSEFSICoqYnVmZmVyX2VuZCwKKyAgICAgUHlfc3NpemVfdCBuX2NoYXJzLCBQeV9zc2l6ZV90IG5femVyb3MsIFNUUklOR0xJQl9DSEFSKiB0aG91c2FuZHNfc2VwLAogICAgICBQeV9zc2l6ZV90IHRob3VzYW5kc19zZXBfbGVuKQogewotI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCiAgICAgUHlfc3NpemVfdCBpOwotI2VuZGlmCiAKICAgICBpZiAodGhvdXNhbmRzX3NlcCkgewogICAgICAgICAqYnVmZmVyX2VuZCAtPSB0aG91c2FuZHNfc2VwX2xlbjsKIAogICAgICAgICAvKiBDb3B5IHRoZSB0aG91c2FuZHNfc2VwIGNoYXJzIGludG8gdGhlIGJ1ZmZlci4gKi8KLSNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQotICAgICAgICAvKiBDb252ZXJ0IGZyb20gdGhlIGNoYXIncyBvZiB0aGUgdGhvdXNhbmRzX3NlcCBmcm9tCi0gICAgICAgICAgIHRoZSBsb2NhbGUgaW50byB1bmljb2RlLiAqLwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgdGhvdXNhbmRzX3NlcF9sZW47ICsraSkKLSAgICAgICAgICAgICgqYnVmZmVyX2VuZClbaV0gPSB0aG91c2FuZHNfc2VwW2ldOwotI2Vsc2UKLSAgICAgICAgLyogTm8gY29udmVyc2lvbiwganVzdCBtZW1jcHkgdGhlIHRob3VzYW5kc19zZXAuICovCi0gICAgICAgIG1lbWNweSgqYnVmZmVyX2VuZCwgdGhvdXNhbmRzX3NlcCwgdGhvdXNhbmRzX3NlcF9sZW4pOwotI2VuZGlmCisgICAgICAgIG1lbWNweSgqYnVmZmVyX2VuZCwgdGhvdXNhbmRzX3NlcCwKKyAgICAgICAgICAgICAgIHRob3VzYW5kc19zZXBfbGVuICogU1RSSU5HTElCX1NJWkVPRl9DSEFSKTsKICAgICB9CiAKICAgICAqYnVmZmVyX2VuZCAtPSBuX2NoYXJzOwpAQCAtNzYsMTEgKzY1LDEyIEBACiAgICAgbWVtY3B5KCpidWZmZXJfZW5kLCAqZGlnaXRzX2VuZCwgbl9jaGFycyAqIHNpemVvZihTVFJJTkdMSUJfQ0hBUikpOwogCiAgICAgKmJ1ZmZlcl9lbmQgLT0gbl96ZXJvczsKLSAgICBTVFJJTkdMSUJfRklMTCgqYnVmZmVyX2VuZCwgJzAnLCBuX3plcm9zKTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbl96ZXJvczsgaSsrKQorICAgICAgICAoKmJ1ZmZlcl9lbmQpW2ldID0gJzAnOwogfQogCiAvKioKLSAqIF9QeV9JbnNlcnRUaG91c2FuZHNHcm91cGluZzoKKyAqIEluc2VydFRob3VzYW5kc0dyb3VwaW5nOgogICogQGJ1ZmZlcjogQSBwb2ludGVyIHRvIHRoZSBzdGFydCBvZiBhIHN0cmluZy4KICAqIEBuX2J1ZmZlcjogTnVtYmVyIG9mIGNoYXJhY3RlcnMgaW4gQGJ1ZmZlci4KICAqIEBkaWdpdHM6IEEgcG9pbnRlciB0byB0aGUgZGlnaXRzIHdlJ3JlIHJlYWRpbmcgZnJvbS4gSWYgY291bnQKQEAgLTExMCwxMyArMTAwLDE1IEBACiAgICAgX2luc2VydF90aG91c2FuZHNfc2VwKCkuCiAgKiovCiBQeV9zc2l6ZV90Ci1fUHlfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcoU1RSSU5HTElCX0NIQVIgKmJ1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG5fYnVmZmVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNUUklOR0xJQl9DSEFSICpkaWdpdHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuX2RpZ2l0cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1pbl93aWR0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpncm91cGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp0aG91c2FuZHNfc2VwKQorU1RSSU5HTElCKEluc2VydFRob3VzYW5kc0dyb3VwaW5nKSgKKyAgICBTVFJJTkdMSUJfQ0hBUiAqYnVmZmVyLAorICAgIFB5X3NzaXplX3Qgbl9idWZmZXIsCisgICAgU1RSSU5HTElCX0NIQVIgKmRpZ2l0cywKKyAgICBQeV9zc2l6ZV90IG5fZGlnaXRzLAorICAgIFB5X3NzaXplX3QgbWluX3dpZHRoLAorICAgIGNvbnN0IGNoYXIgKmdyb3VwaW5nLAorICAgIFNUUklOR0xJQl9DSEFSICp0aG91c2FuZHNfc2VwLAorICAgIFB5X3NzaXplX3QgdGhvdXNhbmRzX3NlcF9sZW4pCiB7CiAgICAgUHlfc3NpemVfdCBjb3VudCA9IDA7CiAgICAgUHlfc3NpemVfdCBuX3plcm9zOwpAQCAtMTI4LDIzICsxMjAsMjIgQEAKICAgICBTVFJJTkdMSUJfQ0hBUiAqZGlnaXRzX2VuZCA9IE5VTEw7CiAgICAgUHlfc3NpemVfdCBsOwogICAgIFB5X3NzaXplX3Qgbl9jaGFyczsKLSAgICBQeV9zc2l6ZV90IHRob3VzYW5kc19zZXBfbGVuID0gc3RybGVuKHRob3VzYW5kc19zZXApOwogICAgIFB5X3NzaXplX3QgcmVtYWluaW5nID0gbl9kaWdpdHM7IC8qIE51bWJlciBvZiBjaGFycyByZW1haW5pbmcgdG8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBsb29rZWQgYXQgKi8KICAgICAvKiBBIGdlbmVyYXRvciB0aGF0IHJldHVybnMgYWxsIG9mIHRoZSBncm91cGluZyB3aWR0aHMsIHVudGlsIGl0CiAgICAgICAgcmV0dXJucyAwLiAqLwotICAgIEdyb3VwR2VuZXJhdG9yIGdyb3VwZ2VuOwotICAgIF9Hcm91cEdlbmVyYXRvcl9pbml0KCZncm91cGdlbiwgZ3JvdXBpbmcpOworICAgIFNUUklOR0xJQihHcm91cEdlbmVyYXRvcikgZ3JvdXBnZW47CisgICAgU1RSSU5HTElCKEdyb3VwR2VuZXJhdG9yX2luaXQpKCZncm91cGdlbiwgZ3JvdXBpbmcpOwogCiAgICAgaWYgKGJ1ZmZlcikgewogICAgICAgICBidWZmZXJfZW5kID0gYnVmZmVyICsgbl9idWZmZXI7CiAgICAgICAgIGRpZ2l0c19lbmQgPSBkaWdpdHMgKyBuX2RpZ2l0czsKICAgICB9CiAKLSAgICB3aGlsZSAoKGwgPSBfR3JvdXBHZW5lcmF0b3JfbmV4dCgmZ3JvdXBnZW4pKSA+IDApIHsKLSAgICAgICAgbCA9IE1JTihsLCBNQVgoTUFYKHJlbWFpbmluZywgbWluX3dpZHRoKSwgMSkpOwotICAgICAgICBuX3plcm9zID0gTUFYKDAsIGwgLSByZW1haW5pbmcpOwotICAgICAgICBuX2NoYXJzID0gTUFYKDAsIE1JTihyZW1haW5pbmcsIGwpKTsKKyAgICB3aGlsZSAoKGwgPSBTVFJJTkdMSUIoR3JvdXBHZW5lcmF0b3JfbmV4dCkoJmdyb3VwZ2VuKSkgPiAwKSB7CisgICAgICAgIGwgPSBQeV9NSU4obCwgUHlfTUFYKFB5X01BWChyZW1haW5pbmcsIG1pbl93aWR0aCksIDEpKTsKKyAgICAgICAgbl96ZXJvcyA9IFB5X01BWCgwLCBsIC0gcmVtYWluaW5nKTsKKyAgICAgICAgbl9jaGFycyA9IFB5X01BWCgwLCBQeV9NSU4ocmVtYWluaW5nLCBsKSk7CiAKICAgICAgICAgLyogVXNlIG5femVybyB6ZXJvJ3MgYW5kIG5fY2hhcnMgY2hhcnMgKi8KIApAQCAtMTUzLDcgKzE0NCw3IEBACiAKICAgICAgICAgaWYgKGJ1ZmZlcikgewogICAgICAgICAgICAgLyogQ29weSBpbnRvIHRoZSBvdXRwdXQgYnVmZmVyLiAqLwotICAgICAgICAgICAgZmlsbCgmZGlnaXRzX2VuZCwgJmJ1ZmZlcl9lbmQsIG5fY2hhcnMsIG5femVyb3MsCisgICAgICAgICAgICBTVFJJTkdMSUIoZmlsbCkoJmRpZ2l0c19lbmQsICZidWZmZXJfZW5kLCBuX2NoYXJzLCBuX3plcm9zLAogICAgICAgICAgICAgICAgICB1c2Vfc2VwYXJhdG9yID8gdGhvdXNhbmRzX3NlcCA6IE5VTEwsIHRob3VzYW5kc19zZXBfbGVuKTsKICAgICAgICAgfQogCkBAIC0xNzIsNDEgKzE2MywxOCBAQAogICAgIGlmICghbG9vcF9icm9rZW4pIHsKICAgICAgICAgLyogV2UgbGVmdCB0aGUgbG9vcCB3aXRob3V0IHVzaW5nIGEgYnJlYWsgc3RhdGVtZW50LiAqLwogCi0gICAgICAgIGwgPSBNQVgoTUFYKHJlbWFpbmluZywgbWluX3dpZHRoKSwgMSk7Ci0gICAgICAgIG5femVyb3MgPSBNQVgoMCwgbCAtIHJlbWFpbmluZyk7Ci0gICAgICAgIG5fY2hhcnMgPSBNQVgoMCwgTUlOKHJlbWFpbmluZywgbCkpOworICAgICAgICBsID0gUHlfTUFYKFB5X01BWChyZW1haW5pbmcsIG1pbl93aWR0aCksIDEpOworICAgICAgICBuX3plcm9zID0gUHlfTUFYKDAsIGwgLSByZW1haW5pbmcpOworICAgICAgICBuX2NoYXJzID0gUHlfTUFYKDAsIFB5X01JTihyZW1haW5pbmcsIGwpKTsKIAogICAgICAgICAvKiBVc2Ugbl96ZXJvIHplcm8ncyBhbmQgbl9jaGFycyBjaGFycyAqLwogICAgICAgICBjb3VudCArPSAodXNlX3NlcGFyYXRvciA/IHRob3VzYW5kc19zZXBfbGVuIDogMCkgKyBuX3plcm9zICsgbl9jaGFyczsKICAgICAgICAgaWYgKGJ1ZmZlcikgewogICAgICAgICAgICAgLyogQ29weSBpbnRvIHRoZSBvdXRwdXQgYnVmZmVyLiAqLwotICAgICAgICAgICAgZmlsbCgmZGlnaXRzX2VuZCwgJmJ1ZmZlcl9lbmQsIG5fY2hhcnMsIG5femVyb3MsCisgICAgICAgICAgICBTVFJJTkdMSUIoZmlsbCkoJmRpZ2l0c19lbmQsICZidWZmZXJfZW5kLCBuX2NoYXJzLCBuX3plcm9zLAogICAgICAgICAgICAgICAgICB1c2Vfc2VwYXJhdG9yID8gdGhvdXNhbmRzX3NlcCA6IE5VTEwsIHRob3VzYW5kc19zZXBfbGVuKTsKICAgICAgICAgfQogICAgIH0KICAgICByZXR1cm4gY291bnQ7CiB9CiAKLS8qKgotICogX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nTG9jYWxlOgotICogQGJ1ZmZlcjogQSBwb2ludGVyIHRvIHRoZSBzdGFydCBvZiBhIHN0cmluZy4KLSAqIEBuX2RpZ2l0czogVGhlIG51bWJlciBvZiBkaWdpdHMgaW4gdGhlIHN0cmluZywgaW4gd2hpY2ggd2Ugd2FudAotICogICAgICAgICAgICB0byBwdXQgdGhlIGdyb3VwaW5nIGNoYXJzLgotICoKLSAqIFJlYWRzIHRoZWUgY3VycmVudCBsb2NhbGUgYW5kIGNhbGxzIF9QeV9JbnNlcnRUaG91c2FuZHNHcm91cGluZygpLgotICoqLwotUHlfc3NpemVfdAotX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nTG9jYWxlKFNUUklOR0xJQl9DSEFSICpidWZmZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuX2J1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiAqZGlnaXRzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgbl9kaWdpdHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtaW5fd2lkdGgpCi17Ci0gICAgICAgIHN0cnVjdCBsY29udiAqbG9jYWxlX2RhdGEgPSBsb2NhbGVjb252KCk7Ci0gICAgICAgIGNvbnN0IGNoYXIgKmdyb3VwaW5nID0gbG9jYWxlX2RhdGEtPmdyb3VwaW5nOwotICAgICAgICBjb25zdCBjaGFyICp0aG91c2FuZHNfc2VwID0gbG9jYWxlX2RhdGEtPnRob3VzYW5kc19zZXA7Ci0KLSAgICAgICAgcmV0dXJuIF9QeV9JbnNlcnRUaG91c2FuZHNHcm91cGluZyhidWZmZXIsIG5fYnVmZmVyLCBkaWdpdHMsIG5fZGlnaXRzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbl93aWR0aCwgZ3JvdXBpbmcsIHRob3VzYW5kc19zZXApOwotfQotI2VuZGlmIC8qIFNUUklOR0xJQl9MT0NBTEVVVElMX0ggKi8KZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL3BhcnRpdGlvbi5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvcGFydGl0aW9uLmgKaW5kZXggMDE3MGJkZC4uNDBjYjUxMiAxMDA2NDQKLS0tIGEvT2JqZWN0cy9zdHJpbmdsaWIvcGFydGl0aW9uLmgKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvcGFydGl0aW9uLmgKQEAgLTEsMTQgKzEsMTEgQEAKIC8qIHN0cmluZ2xpYjogcGFydGl0aW9uIGltcGxlbWVudGF0aW9uICovCiAKLSNpZm5kZWYgU1RSSU5HTElCX1BBUlRJVElPTl9ICi0jZGVmaW5lIFNUUklOR0xJQl9QQVJUSVRJT05fSAotCiAjaWZuZGVmIFNUUklOR0xJQl9GQVNUU0VBUkNIX0gKICNlcnJvciBtdXN0IGluY2x1ZGUgInN0cmluZ2xpYi9mYXN0c2VhcmNoLmgiIGJlZm9yZSBpbmNsdWRpbmcgdGhpcyBtb2R1bGUKICNlbmRpZgogCiBQeV9MT0NBTF9JTkxJTkUoUHlPYmplY3QqKQotc3RyaW5nbGliX3BhcnRpdGlvbihQeU9iamVjdCogc3RyX29iaiwKK1NUUklOR0xJQihwYXJ0aXRpb24pKFB5T2JqZWN0KiBzdHJfb2JqLAogICAgICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCiAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0KiBzZXBfb2JqLAogICAgICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc2VwLCBQeV9zc2l6ZV90IHNlcF9sZW4pCkBAIC0yNSw3ICsyMiw3IEBACiAgICAgaWYgKCFvdXQpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgcG9zID0gZmFzdHNlYXJjaChzdHIsIHN0cl9sZW4sIHNlcCwgc2VwX2xlbiwgLTEsIEZBU1RfU0VBUkNIKTsKKyAgICBwb3MgPSBGQVNUU0VBUkNIKHN0ciwgc3RyX2xlbiwgc2VwLCBzZXBfbGVuLCAtMSwgRkFTVF9TRUFSQ0gpOwogCiAgICAgaWYgKHBvcyA8IDApIHsKICNpZiBTVFJJTkdMSUJfTVVUQUJMRQpAQCAtNTgsNyArNTUsNyBAQAogfQogCiBQeV9MT0NBTF9JTkxJTkUoUHlPYmplY3QqKQotc3RyaW5nbGliX3JwYXJ0aXRpb24oUHlPYmplY3QqIHN0cl9vYmosCitTVFJJTkdMSUIocnBhcnRpdGlvbikoUHlPYmplY3QqIHN0cl9vYmosCiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCiAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCogc2VwX29iaiwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzZXAsIFB5X3NzaXplX3Qgc2VwX2xlbikKQEAgLTc1LDcgKzcyLDcgQEAKICAgICBpZiAoIW91dCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBwb3MgPSBmYXN0c2VhcmNoKHN0ciwgc3RyX2xlbiwgc2VwLCBzZXBfbGVuLCAtMSwgRkFTVF9SU0VBUkNIKTsKKyAgICBwb3MgPSBGQVNUU0VBUkNIKHN0ciwgc3RyX2xlbiwgc2VwLCBzZXBfbGVuLCAtMSwgRkFTVF9SU0VBUkNIKTsKIAogICAgIGlmIChwb3MgPCAwKSB7CiAjaWYgU1RSSU5HTElCX01VVEFCTEUKQEAgLTEwNyw0ICsxMDQsMyBAQAogICAgIHJldHVybiBvdXQ7CiB9CiAKLSNlbmRpZgpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvc3BsaXQuaCBiL09iamVjdHMvc3RyaW5nbGliL3NwbGl0LmgKaW5kZXggNjBlNzc2Ny4uOTQ3ZGQyOCAxMDA2NDQKLS0tIGEvT2JqZWN0cy9zdHJpbmdsaWIvc3BsaXQuaAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi9zcGxpdC5oCkBAIC0xLDggKzEsNSBAQAogLyogc3RyaW5nbGliOiBzcGxpdCBpbXBsZW1lbnRhdGlvbiAqLwogCi0jaWZuZGVmIFNUUklOR0xJQl9TUExJVF9ICi0jZGVmaW5lIFNUUklOR0xJQl9TUExJVF9ICi0KICNpZm5kZWYgU1RSSU5HTElCX0ZBU1RTRUFSQ0hfSAogI2Vycm9yIG11c3QgaW5jbHVkZSAic3RyaW5nbGliL2Zhc3RzZWFyY2guaCIgYmVmb3JlIGluY2x1ZGluZyB0aGlzIG1vZHVsZQogI2VuZGlmCkBAIC01NCw3ICs1MSw3IEBACiAjZGVmaW5lIEZJWF9QUkVBTExPQ19TSVpFKGxpc3QpIFB5X1NJWkUobGlzdCkgPSBjb3VudAogCiBQeV9MT0NBTF9JTkxJTkUoUHlPYmplY3QgKikKLXN0cmluZ2xpYl9zcGxpdF93aGl0ZXNwYWNlKFB5T2JqZWN0KiBzdHJfb2JqLAorU1RSSU5HTElCKHNwbGl0X3doaXRlc3BhY2UpKFB5T2JqZWN0KiBzdHJfb2JqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCkKIHsKQEAgLTEwMiw3ICs5OSw3IEBACiB9CiAKIFB5X0xPQ0FMX0lOTElORShQeU9iamVjdCAqKQotc3RyaW5nbGliX3NwbGl0X2NoYXIoUHlPYmplY3QqIHN0cl9vYmosCitTVFJJTkdMSUIoc3BsaXRfY2hhcikoUHlPYmplY3QqIHN0cl9vYmosCiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiBjaCwKICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQpCkBAIC0xNDUsNyArMTQyLDcgQEAKIH0KIAogUHlfTE9DQUxfSU5MSU5FKFB5T2JqZWN0ICopCi1zdHJpbmdsaWJfc3BsaXQoUHlPYmplY3QqIHN0cl9vYmosCitTVFJJTkdMSUIoc3BsaXQpKFB5T2JqZWN0KiBzdHJfb2JqLAogICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc2VwLCBQeV9zc2l6ZV90IHNlcF9sZW4sCiAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCkKQEAgLTE1OCw3ICsxNTUsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgZWxzZSBpZiAoc2VwX2xlbiA9PSAxKQotICAgICAgICByZXR1cm4gc3RyaW5nbGliX3NwbGl0X2NoYXIoc3RyX29iaiwgc3RyLCBzdHJfbGVuLCBzZXBbMF0sIG1heGNvdW50KTsKKyAgICAgICAgcmV0dXJuIFNUUklOR0xJQihzcGxpdF9jaGFyKShzdHJfb2JqLCBzdHIsIHN0cl9sZW4sIHNlcFswXSwgbWF4Y291bnQpOwogCiAgICAgbGlzdCA9IFB5TGlzdF9OZXcoUFJFQUxMT0NfU0laRShtYXhjb3VudCkpOwogICAgIGlmIChsaXN0ID09IE5VTEwpCkBAIC0xNjYsNyArMTYzLDcgQEAKIAogICAgIGkgPSBqID0gMDsKICAgICB3aGlsZSAobWF4Y291bnQtLSA+IDApIHsKLSAgICAgICAgcG9zID0gZmFzdHNlYXJjaChzdHIraSwgc3RyX2xlbi1pLCBzZXAsIHNlcF9sZW4sIC0xLCBGQVNUX1NFQVJDSCk7CisgICAgICAgIHBvcyA9IEZBU1RTRUFSQ0goc3RyK2ksIHN0cl9sZW4taSwgc2VwLCBzZXBfbGVuLCAtMSwgRkFTVF9TRUFSQ0gpOwogICAgICAgICBpZiAocG9zIDwgMCkKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBqID0gaSArIHBvczsKQEAgLTE5Myw3ICsxOTAsNyBAQAogfQogCiBQeV9MT0NBTF9JTkxJTkUoUHlPYmplY3QgKikKLXN0cmluZ2xpYl9yc3BsaXRfd2hpdGVzcGFjZShQeU9iamVjdCogc3RyX29iaiwKK1NUUklOR0xJQihyc3BsaXRfd2hpdGVzcGFjZSkoUHlPYmplY3QqIHN0cl9vYmosCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQpCiB7CkBAIC0yNDMsNyArMjQwLDcgQEAKIH0KIAogUHlfTE9DQUxfSU5MSU5FKFB5T2JqZWN0ICopCi1zdHJpbmdsaWJfcnNwbGl0X2NoYXIoUHlPYmplY3QqIHN0cl9vYmosCitTVFJJTkdMSUIocnNwbGl0X2NoYXIpKFB5T2JqZWN0KiBzdHJfb2JqLAogICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiBjaCwKICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQpAQCAtMjg3LDcgKzI4NCw3IEBACiB9CiAKIFB5X0xPQ0FMX0lOTElORShQeU9iamVjdCAqKQotc3RyaW5nbGliX3JzcGxpdChQeU9iamVjdCogc3RyX29iaiwKK1NUUklOR0xJQihyc3BsaXQpKFB5T2JqZWN0KiBzdHJfb2JqLAogICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCiAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzZXAsIFB5X3NzaXplX3Qgc2VwX2xlbiwKICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCkKQEAgLTMwMCw3ICsyOTcsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgZWxzZSBpZiAoc2VwX2xlbiA9PSAxKQotICAgICAgICByZXR1cm4gc3RyaW5nbGliX3JzcGxpdF9jaGFyKHN0cl9vYmosIHN0ciwgc3RyX2xlbiwgc2VwWzBdLCBtYXhjb3VudCk7CisgICAgICAgIHJldHVybiBTVFJJTkdMSUIocnNwbGl0X2NoYXIpKHN0cl9vYmosIHN0ciwgc3RyX2xlbiwgc2VwWzBdLCBtYXhjb3VudCk7CiAKICAgICBsaXN0ID0gUHlMaXN0X05ldyhQUkVBTExPQ19TSVpFKG1heGNvdW50KSk7CiAgICAgaWYgKGxpc3QgPT0gTlVMTCkKQEAgLTMwOCw3ICszMDUsNyBAQAogCiAgICAgaiA9IHN0cl9sZW47CiAgICAgd2hpbGUgKG1heGNvdW50LS0gPiAwKSB7Ci0gICAgICAgIHBvcyA9IGZhc3RzZWFyY2goc3RyLCBqLCBzZXAsIHNlcF9sZW4sIC0xLCBGQVNUX1JTRUFSQ0gpOworICAgICAgICBwb3MgPSBGQVNUU0VBUkNIKHN0ciwgaiwgc2VwLCBzZXBfbGVuLCAtMSwgRkFTVF9SU0VBUkNIKTsKICAgICAgICAgaWYgKHBvcyA8IDApCiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgU1BMSVRfQUREKHN0ciwgcG9zICsgc2VwX2xlbiwgaik7CkBAIC0zMzYsNyArMzMzLDcgQEAKIH0KIAogUHlfTE9DQUxfSU5MSU5FKFB5T2JqZWN0ICopCi1zdHJpbmdsaWJfc3BsaXRsaW5lcyhQeU9iamVjdCogc3RyX29iaiwKK1NUUklOR0xJQihzcGxpdGxpbmVzKShQeU9iamVjdCogc3RyX29iaiwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgICAgICAgIGludCBrZWVwZW5kcykKIHsKQEAgLTM5MSw0ICszODgsMyBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi0jZW5kaWYKZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL3N0cmluZ2RlZnMuaCBiL09iamVjdHMvc3RyaW5nbGliL3N0cmluZ2RlZnMuaAppbmRleCAxYzQ5NDI2Li43YmI5MWE3IDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9zdHJpbmdkZWZzLmgKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvc3RyaW5nZGVmcy5oCkBAIC02LDcgKzYsMTAgQEAKICAgIGNvbXBpbGVkIGFzIHVuaWNvZGUuICovCiAjZGVmaW5lIFNUUklOR0xJQl9JU19VTklDT0RFICAgICAwCiAKKyNkZWZpbmUgRkFTVFNFQVJDSCBmYXN0c2VhcmNoCisjZGVmaW5lIFNUUklOR0xJQihGKSBzdHJpbmdsaWJfIyNGCiAjZGVmaW5lIFNUUklOR0xJQl9PQkpFQ1QgICAgICAgICBQeUJ5dGVzT2JqZWN0CisjZGVmaW5lIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiAgICAxCiAjZGVmaW5lIFNUUklOR0xJQl9DSEFSICAgICAgICAgICBjaGFyCiAjZGVmaW5lIFNUUklOR0xJQl9UWVBFX05BTUUgICAgICAic3RyaW5nIgogI2RlZmluZSBTVFJJTkdMSUJfUEFSU0VfQ09ERSAgICAgIlMiCkBAIC0xNSw5ICsxOCw2IEBACiAjZGVmaW5lIFNUUklOR0xJQl9JU0xJTkVCUkVBSyh4KSAoKHggPT0gJ1xuJykgfHwgKHggPT0gJ1xyJykpCiAjZGVmaW5lIFNUUklOR0xJQl9JU0RFQ0lNQUwoeCkgICAoKHggPj0gJzAnKSAmJiAoeCA8PSAnOScpKQogI2RlZmluZSBTVFJJTkdMSUJfVE9ERUNJTUFMKHgpICAgKFNUUklOR0xJQl9JU0RFQ0lNQUwoeCkgPyAoeCAtICcwJykgOiAtMSkKLSNkZWZpbmUgU1RSSU5HTElCX1RPVVBQRVIgICAgICAgIFB5X1RPVVBQRVIKLSNkZWZpbmUgU1RSSU5HTElCX1RPTE9XRVIgICAgICAgIFB5X1RPTE9XRVIKLSNkZWZpbmUgU1RSSU5HTElCX0ZJTEwgICAgICAgICAgIG1lbXNldAogI2RlZmluZSBTVFJJTkdMSUJfU1RSICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcKICNkZWZpbmUgU1RSSU5HTElCX0xFTiAgICAgICAgICAgIFB5Qnl0ZXNfR0VUX1NJWkUKICNkZWZpbmUgU1RSSU5HTElCX05FVyAgICAgICAgICAgIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUKQEAgLTI1LDcgKzI1LDUgQEAKICNkZWZpbmUgU1RSSU5HTElCX0NIRUNLICAgICAgICAgIFB5Qnl0ZXNfQ2hlY2sKICNkZWZpbmUgU1RSSU5HTElCX0NIRUNLX0VYQUNUICAgIFB5Qnl0ZXNfQ2hlY2tFeGFjdAogI2RlZmluZSBTVFJJTkdMSUJfVE9TVFIgICAgICAgICAgUHlPYmplY3RfU3RyCi0jZGVmaW5lIFNUUklOR0xJQl9HUk9VUElORyAgICAgICBfUHlCeXRlc19JbnNlcnRUaG91c2FuZHNHcm91cGluZwotI2RlZmluZSBTVFJJTkdMSUJfR1JPVVBJTkdfTE9DQUxFIF9QeUJ5dGVzX0luc2VydFRob3VzYW5kc0dyb3VwaW5nTG9jYWxlCiAjZGVmaW5lIFNUUklOR0xJQl9UT0FTQ0lJICAgICAgICBQeU9iamVjdF9SZXByCiAjZW5kaWYgLyogIVNUUklOR0xJQl9TVFJJTkdERUZTX0ggKi8KZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL3VjczFsaWIuaCBiL09iamVjdHMvc3RyaW5nbGliL3VjczFsaWIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZDJiMGEzCi0tLSAvZGV2L251bGwKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvdWNzMWxpYi5oCkBAIC0wLDAgKzEsMzAgQEAKKy8qIHRoaXMgaXMgc29ydCBvZiBhIGhhY2suICB0aGVyZSdzIGF0IGxlYXN0IG9uZSBwbGFjZSAoZm9ybWF0dGluZworICAgZmxvYXRzKSB3aGVyZSBzb21lIHN0cmluZ2xpYiBjb2RlIHRha2VzIGEgZGlmZmVyZW50IHBhdGggaWYgaXQncworICAgY29tcGlsZWQgYXMgdW5pY29kZS4gKi8KKyNkZWZpbmUgU1RSSU5HTElCX0lTX1VOSUNPREUgICAgIDEKKworI2RlZmluZSBGQVNUU0VBUkNIICAgICAgICAgICAgICAgdWNzMWxpYl9mYXN0c2VhcmNoCisjZGVmaW5lIFNUUklOR0xJQihGKSAgICAgICAgICAgICB1Y3MxbGliXyMjRgorI2RlZmluZSBTVFJJTkdMSUJfT0JKRUNUICAgICAgICAgUHlVbmljb2RlT2JqZWN0CisjZGVmaW5lIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiAgICAxCisjZGVmaW5lIFNUUklOR0xJQl9DSEFSICAgICAgICAgICBQeV9VQ1MxCisjZGVmaW5lIFNUUklOR0xJQl9UWVBFX05BTUUgICAgICAidW5pY29kZSIKKyNkZWZpbmUgU1RSSU5HTElCX1BBUlNFX0NPREUgICAgICJVIgorI2RlZmluZSBTVFJJTkdMSUJfRU1QVFkgICAgICAgICAgdW5pY29kZV9lbXB0eQorI2RlZmluZSBTVFJJTkdMSUJfSVNTUEFDRSAgICAgICAgUHlfVU5JQ09ERV9JU1NQQUNFCisjZGVmaW5lIFNUUklOR0xJQl9JU0xJTkVCUkVBSyAgICBCTE9PTV9MSU5FQlJFQUsKKyNkZWZpbmUgU1RSSU5HTElCX0lTREVDSU1BTCAgICAgIFB5X1VOSUNPREVfSVNERUNJTUFMCisjZGVmaW5lIFNUUklOR0xJQl9UT0RFQ0lNQUwgICAgICBQeV9VTklDT0RFX1RPREVDSU1BTAorI2RlZmluZSBTVFJJTkdMSUJfU1RSICAgICAgICAgICAgUHlVbmljb2RlXzFCWVRFX0RBVEEKKyNkZWZpbmUgU1RSSU5HTElCX0xFTiAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RICisjZGVmaW5lIFNUUklOR0xJQl9ORVcgICAgICAgICAgICBfUHlVbmljb2RlX0Zyb21VQ1MxCisjZGVmaW5lIFNUUklOR0xJQl9SRVNJWkUgICAgICAgICBub3Rfc3VwcG9ydGVkCisjZGVmaW5lIFNUUklOR0xJQl9DSEVDSyAgICAgICAgICBQeVVuaWNvZGVfQ2hlY2sKKyNkZWZpbmUgU1RSSU5HTElCX0NIRUNLX0VYQUNUICAgIFB5VW5pY29kZV9DaGVja0V4YWN0CisKKyNkZWZpbmUgU1RSSU5HTElCX1RPU1RSICAgICAgICAgIFB5T2JqZWN0X1N0cgorI2RlZmluZSBTVFJJTkdMSUJfVE9BU0NJSSAgICAgICAgUHlPYmplY3RfQVNDSUkKKworI2RlZmluZSBfUHlfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcgX1B5VW5pY29kZV91Y3MxX0luc2VydFRob3VzYW5kc0dyb3VwaW5nCisKKwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvdWNzMmxpYi5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvdWNzMmxpYi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE1MDg5MDUKLS0tIC9kZXYvbnVsbAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi91Y3MybGliLmgKQEAgLTAsMCArMSwyOSBAQAorLyogdGhpcyBpcyBzb3J0IG9mIGEgaGFjay4gIHRoZXJlJ3MgYXQgbGVhc3Qgb25lIHBsYWNlIChmb3JtYXR0aW5nCisgICBmbG9hdHMpIHdoZXJlIHNvbWUgc3RyaW5nbGliIGNvZGUgdGFrZXMgYSBkaWZmZXJlbnQgcGF0aCBpZiBpdCdzCisgICBjb21waWxlZCBhcyB1bmljb2RlLiAqLworI2RlZmluZSBTVFJJTkdMSUJfSVNfVU5JQ09ERSAgICAgMQorCisjZGVmaW5lIEZBU1RTRUFSQ0ggICAgICAgICAgICAgICB1Y3MybGliX2Zhc3RzZWFyY2gKKyNkZWZpbmUgU1RSSU5HTElCKEYpICAgICAgICAgICAgIHVjczJsaWJfIyNGCisjZGVmaW5lIFNUUklOR0xJQl9PQkpFQ1QgICAgICAgICBQeVVuaWNvZGVPYmplY3QKKyNkZWZpbmUgU1RSSU5HTElCX1NJWkVPRl9DSEFSICAgIDIKKyNkZWZpbmUgU1RSSU5HTElCX0NIQVIgICAgICAgICAgIFB5X1VDUzIKKyNkZWZpbmUgU1RSSU5HTElCX1RZUEVfTkFNRSAgICAgICJ1bmljb2RlIgorI2RlZmluZSBTVFJJTkdMSUJfUEFSU0VfQ09ERSAgICAgIlUiCisjZGVmaW5lIFNUUklOR0xJQl9FTVBUWSAgICAgICAgICB1bmljb2RlX2VtcHR5CisjZGVmaW5lIFNUUklOR0xJQl9JU1NQQUNFICAgICAgICBQeV9VTklDT0RFX0lTU1BBQ0UKKyNkZWZpbmUgU1RSSU5HTElCX0lTTElORUJSRUFLICAgIEJMT09NX0xJTkVCUkVBSworI2RlZmluZSBTVFJJTkdMSUJfSVNERUNJTUFMICAgICAgUHlfVU5JQ09ERV9JU0RFQ0lNQUwKKyNkZWZpbmUgU1RSSU5HTElCX1RPREVDSU1BTCAgICAgIFB5X1VOSUNPREVfVE9ERUNJTUFMCisjZGVmaW5lIFNUUklOR0xJQl9TVFIgICAgICAgICAgICBQeVVuaWNvZGVfMkJZVEVfREFUQQorI2RlZmluZSBTVFJJTkdMSUJfTEVOICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgKKyNkZWZpbmUgU1RSSU5HTElCX05FVyAgICAgICAgICAgIF9QeVVuaWNvZGVfRnJvbVVDUzIKKyNkZWZpbmUgU1RSSU5HTElCX1JFU0laRSAgICAgICAgIG5vdF9zdXBwb3J0ZWQKKyNkZWZpbmUgU1RSSU5HTElCX0NIRUNLICAgICAgICAgIFB5VW5pY29kZV9DaGVjaworI2RlZmluZSBTVFJJTkdMSUJfQ0hFQ0tfRVhBQ1QgICAgUHlVbmljb2RlX0NoZWNrRXhhY3QKKworI2RlZmluZSBTVFJJTkdMSUJfVE9TVFIgICAgICAgICAgUHlPYmplY3RfU3RyCisjZGVmaW5lIFNUUklOR0xJQl9UT0FTQ0lJICAgICAgICBQeU9iamVjdF9BU0NJSQorCisjZGVmaW5lIF9QeV9JbnNlcnRUaG91c2FuZHNHcm91cGluZyBfUHlVbmljb2RlX3VjczJfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcKKwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvdWNzNGxpYi5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvdWNzNGxpYi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVkYTBmZWIKLS0tIC9kZXYvbnVsbAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi91Y3M0bGliLmgKQEAgLTAsMCArMSwyOSBAQAorLyogdGhpcyBpcyBzb3J0IG9mIGEgaGFjay4gIHRoZXJlJ3MgYXQgbGVhc3Qgb25lIHBsYWNlIChmb3JtYXR0aW5nCisgICBmbG9hdHMpIHdoZXJlIHNvbWUgc3RyaW5nbGliIGNvZGUgdGFrZXMgYSBkaWZmZXJlbnQgcGF0aCBpZiBpdCdzCisgICBjb21waWxlZCBhcyB1bmljb2RlLiAqLworI2RlZmluZSBTVFJJTkdMSUJfSVNfVU5JQ09ERSAgICAgMQorCisjZGVmaW5lIEZBU1RTRUFSQ0ggICAgICAgICAgICAgICB1Y3M0bGliX2Zhc3RzZWFyY2gKKyNkZWZpbmUgU1RSSU5HTElCKEYpICAgICAgICAgICAgIHVjczRsaWJfIyNGCisjZGVmaW5lIFNUUklOR0xJQl9PQkpFQ1QgICAgICAgICBQeVVuaWNvZGVPYmplY3QKKyNkZWZpbmUgU1RSSU5HTElCX1NJWkVPRl9DSEFSICAgIDQKKyNkZWZpbmUgU1RSSU5HTElCX0NIQVIgICAgICAgICAgIFB5X1VDUzQKKyNkZWZpbmUgU1RSSU5HTElCX1RZUEVfTkFNRSAgICAgICJ1bmljb2RlIgorI2RlZmluZSBTVFJJTkdMSUJfUEFSU0VfQ09ERSAgICAgIlUiCisjZGVmaW5lIFNUUklOR0xJQl9FTVBUWSAgICAgICAgICB1bmljb2RlX2VtcHR5CisjZGVmaW5lIFNUUklOR0xJQl9JU1NQQUNFICAgICAgICBQeV9VTklDT0RFX0lTU1BBQ0UKKyNkZWZpbmUgU1RSSU5HTElCX0lTTElORUJSRUFLICAgIEJMT09NX0xJTkVCUkVBSworI2RlZmluZSBTVFJJTkdMSUJfSVNERUNJTUFMICAgICAgUHlfVU5JQ09ERV9JU0RFQ0lNQUwKKyNkZWZpbmUgU1RSSU5HTElCX1RPREVDSU1BTCAgICAgIFB5X1VOSUNPREVfVE9ERUNJTUFMCisjZGVmaW5lIFNUUklOR0xJQl9TVFIgICAgICAgICAgICBQeVVuaWNvZGVfNEJZVEVfREFUQQorI2RlZmluZSBTVFJJTkdMSUJfTEVOICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgKKyNkZWZpbmUgU1RSSU5HTElCX05FVyAgICAgICAgICAgIF9QeVVuaWNvZGVfRnJvbVVDUzQKKyNkZWZpbmUgU1RSSU5HTElCX1JFU0laRSAgICAgICAgIG5vdF9zdXBwb3J0ZWQKKyNkZWZpbmUgU1RSSU5HTElCX0NIRUNLICAgICAgICAgIFB5VW5pY29kZV9DaGVjaworI2RlZmluZSBTVFJJTkdMSUJfQ0hFQ0tfRVhBQ1QgICAgUHlVbmljb2RlX0NoZWNrRXhhY3QKKworI2RlZmluZSBTVFJJTkdMSUJfVE9TVFIgICAgICAgICAgUHlPYmplY3RfU3RyCisjZGVmaW5lIFNUUklOR0xJQl9UT0FTQ0lJICAgICAgICBQeU9iamVjdF9BU0NJSQorCisjZGVmaW5lIF9QeV9JbnNlcnRUaG91c2FuZHNHcm91cGluZyBfUHlVbmljb2RlX3VjczRfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcKKwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvdW5kZWYuaCBiL09iamVjdHMvc3RyaW5nbGliL3VuZGVmLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTMxMDIwNAotLS0gL2Rldi9udWxsCisrKyBiL09iamVjdHMvc3RyaW5nbGliL3VuZGVmLmgKQEAgLTAsMCArMSwxMSBAQAorI3VuZGVmICBGQVNUU0VBUkNICisjdW5kZWYgIFNUUklOR0xJQgorI3VuZGVmICBTVFJJTkdMSUJfU0laRU9GX0NIQVIKKyN1bmRlZiAgU1RSSU5HTElCX0NIQVIKKyN1bmRlZiAgU1RSSU5HTElCX1NUUgorI3VuZGVmICBTVFJJTkdMSUJfTEVOCisjdW5kZWYgIFNUUklOR0xJQl9ORVcKKyN1bmRlZiAgU1RSSU5HTElCX1JFU0laRQorI3VuZGVmICBfUHlfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcKKyN1bmRlZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQorCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi9zdHJpbmdfZm9ybWF0LmggYi9PYmplY3RzL3N0cmluZ2xpYi91bmljb2RlX2Zvcm1hdC5oCnNpbWlsYXJpdHkgaW5kZXggNzklCnJlbmFtZSBmcm9tIE9iamVjdHMvc3RyaW5nbGliL3N0cmluZ19mb3JtYXQuaApyZW5hbWUgdG8gT2JqZWN0cy9zdHJpbmdsaWIvdW5pY29kZV9mb3JtYXQuaAppbmRleCA2YzdhZGNiLi5mMDU4NDdhIDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9zdHJpbmdfZm9ybWF0LmgKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvdW5pY29kZV9mb3JtYXQuaApAQCAtMSwxNiArMSw4IEBACiAvKgotICAgIHN0cmluZ19mb3JtYXQuaCAtLSBpbXBsZW1lbnRhdGlvbiBvZiBzdHJpbmcuZm9ybWF0KCkuCi0KLSAgICBJdCB1c2VzIHRoZSBPYmplY3RzL3N0cmluZ2xpYiBjb252ZW50aW9ucywgc28gdGhhdCBpdCBjYW4gYmUKLSAgICBjb21waWxlZCBmb3IgYm90aCB1bmljb2RlIGFuZCBzdHJpbmcgb2JqZWN0cy4KKyAgICB1bmljb2RlX2Zvcm1hdC5oIC0tIGltcGxlbWVudGF0aW9uIG9mIHN0ci5mb3JtYXQoKS4KICovCiAKIAotLyogRGVmaW5lcyBmb3IgUHl0aG9uIDIuNiBjb21wYXRpYmlsaXR5ICovCi0jaWYgUFlfVkVSU0lPTl9IRVggPCAweDAzMDAwMDAwCi0jZGVmaW5lIFB5TG9uZ19Gcm9tU3NpemVfdCBfUHlMb25nX0Zyb21Tc2l6ZV90Ci0jZW5kaWYKLQogLyogRGVmaW5lcyBmb3IgbW9yZSBlZmZpY2llbnRseSByZWFsbG9jYXRpbmcgdGhlIHN0cmluZyBidWZmZXIgKi8KICNkZWZpbmUgSU5JVElBTF9TSVpFX0lOQ1JFTUVOVCAxMDAKICNkZWZpbmUgU0laRV9NVUxUSVBMSUVSIDIKQEAgLTI2LDggKzE4LDggQEAKICAgIHVuaWNvZGUgcG9pbnRlcnMuCiAqLwogdHlwZWRlZiBzdHJ1Y3QgewotICAgIFNUUklOR0xJQl9DSEFSICpwdHI7Ci0gICAgU1RSSU5HTElCX0NIQVIgKmVuZDsKKyAgICBQeU9iamVjdCAqc3RyOyAvKiBib3Jyb3dlZCByZWZlcmVuY2UgKi8KKyAgICBQeV9zc2l6ZV90IHN0YXJ0LCBlbmQ7CiB9IFN1YlN0cmluZzsKIAogCkBAIC02NCwzNCArNTYsMzIgQEAKIAogLyogZmlsbCBpbiBhIFN1YlN0cmluZyBmcm9tIGEgcG9pbnRlciBhbmQgbGVuZ3RoICovCiBQeV9MT0NBTF9JTkxJTkUodm9pZCkKLVN1YlN0cmluZ19pbml0KFN1YlN0cmluZyAqc3RyLCBTVFJJTkdMSUJfQ0hBUiAqcCwgUHlfc3NpemVfdCBsZW4pCitTdWJTdHJpbmdfaW5pdChTdWJTdHJpbmcgKnN0ciwgUHlPYmplY3QgKnMsIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQogewotICAgIHN0ci0+cHRyID0gcDsKLSAgICBpZiAocCA9PSBOVUxMKQotICAgICAgICBzdHItPmVuZCA9IE5VTEw7Ci0gICAgZWxzZQotICAgICAgICBzdHItPmVuZCA9IHN0ci0+cHRyICsgbGVuOworICAgIHN0ci0+c3RyID0gczsKKyAgICBzdHItPnN0YXJ0ID0gc3RhcnQ7CisgICAgc3RyLT5lbmQgPSBlbmQ7CiB9CiAKLS8qIHJldHVybiBhIG5ldyBzdHJpbmcuICBpZiBzdHItPnB0ciBpcyBOVUxMLCByZXR1cm4gTm9uZSAqLworLyogcmV0dXJuIGEgbmV3IHN0cmluZy4gIGlmIHN0ci0+c3RyIGlzIE5VTEwsIHJldHVybiBOb25lICovCiBQeV9MT0NBTF9JTkxJTkUoUHlPYmplY3QgKikKIFN1YlN0cmluZ19uZXdfb2JqZWN0KFN1YlN0cmluZyAqc3RyKQogewotICAgIGlmIChzdHItPnB0ciA9PSBOVUxMKSB7CisgICAgaWYgKHN0ci0+c3RyID09IE5VTEwpIHsKICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgICAgICByZXR1cm4gUHlfTm9uZTsKICAgICB9Ci0gICAgcmV0dXJuIFNUUklOR0xJQl9ORVcoc3RyLT5wdHIsIHN0ci0+ZW5kIC0gc3RyLT5wdHIpOworICAgIHJldHVybiBQeVVuaWNvZGVfU3Vic3RyaW5nKHN0ci0+c3RyLCBzdHItPnN0YXJ0LCBzdHItPmVuZCk7CiB9CiAKLS8qIHJldHVybiBhIG5ldyBzdHJpbmcuICBpZiBzdHItPnB0ciBpcyBOVUxMLCByZXR1cm4gTm9uZSAqLworLyogcmV0dXJuIGEgbmV3IHN0cmluZy4gIGlmIHN0ci0+c3RyIGlzIE5VTEwsIHJldHVybiBOb25lICovCiBQeV9MT0NBTF9JTkxJTkUoUHlPYmplY3QgKikKIFN1YlN0cmluZ19uZXdfb2JqZWN0X29yX2VtcHR5KFN1YlN0cmluZyAqc3RyKQogewotICAgIGlmIChzdHItPnB0ciA9PSBOVUxMKSB7Ci0gICAgICAgIHJldHVybiBTVFJJTkdMSUJfTkVXKE5VTEwsIDApOworICAgIGlmIChzdHItPnN0ciA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfTmV3KDAsIDApOwogICAgIH0KLSAgICByZXR1cm4gU1RSSU5HTElCX05FVyhzdHItPnB0ciwgc3RyLT5lbmQgLSBzdHItPnB0cik7CisgICAgcmV0dXJuIFN1YlN0cmluZ19uZXdfb2JqZWN0KHN0cik7CiB9CiAKIC8qIFJldHVybiAxIGlmIGFuIGVycm9yIGhhcyBiZWVuIGRldGVjdGVkIHN3aXRjaGluZyBiZXR3ZWVuIGF1dG9tYXRpYwpAQCAtMTI0LDUxICsxMTQsNiBAQAogLyoqKioqKioqKioqICAgIE91dHB1dCBzdHJpbmcgbWFuYWdlbWVudCBmdW5jdGlvbnMgICAgICAgKioqKioqKioqKioqKioqKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAKLXR5cGVkZWYgc3RydWN0IHsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcHRyOwotICAgIFNUUklOR0xJQl9DSEFSICplbmQ7Ci0gICAgUHlPYmplY3QgKm9iajsKLSAgICBQeV9zc2l6ZV90IHNpemVfaW5jcmVtZW50OwotfSBPdXRwdXRTdHJpbmc7Ci0KLS8qIGluaXRpYWxpemUgYW4gT3V0cHV0U3RyaW5nIG9iamVjdCwgcmVzZXJ2aW5nIHNpemUgY2hhcmFjdGVycyAqLwotc3RhdGljIGludAotb3V0cHV0X2luaXRpYWxpemUoT3V0cHV0U3RyaW5nICpvdXRwdXQsIFB5X3NzaXplX3Qgc2l6ZSkKLXsKLSAgICBvdXRwdXQtPm9iaiA9IFNUUklOR0xJQl9ORVcoTlVMTCwgc2l6ZSk7Ci0gICAgaWYgKG91dHB1dC0+b2JqID09IE5VTEwpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgb3V0cHV0LT5wdHIgPSBTVFJJTkdMSUJfU1RSKG91dHB1dC0+b2JqKTsKLSAgICBvdXRwdXQtPmVuZCA9IFNUUklOR0xJQl9MRU4ob3V0cHV0LT5vYmopICsgb3V0cHV0LT5wdHI7Ci0gICAgb3V0cHV0LT5zaXplX2luY3JlbWVudCA9IElOSVRJQUxfU0laRV9JTkNSRU1FTlQ7Ci0KLSAgICByZXR1cm4gMTsKLX0KLQotLyoKLSAgICBvdXRwdXRfZXh0ZW5kIHJlYWxsb2NhdGVzIHRoZSBvdXRwdXQgc3RyaW5nIGJ1ZmZlci4KLSAgICBJdCByZXR1cm5zIGEgc3RhdHVzOiAgMCBmb3IgYSBmYWlsZWQgcmVhbGxvY2F0aW9uLAotICAgIDEgZm9yIHN1Y2Nlc3MuCi0qLwotCi1zdGF0aWMgaW50Ci1vdXRwdXRfZXh0ZW5kKE91dHB1dFN0cmluZyAqb3V0cHV0LCBQeV9zc2l6ZV90IGNvdW50KQotewotICAgIFNUUklOR0xJQl9DSEFSICpzdGFydHB0ciA9IFNUUklOR0xJQl9TVFIob3V0cHV0LT5vYmopOwotICAgIFB5X3NzaXplX3QgY3VybGVuID0gb3V0cHV0LT5wdHIgLSBzdGFydHB0cjsKLSAgICBQeV9zc2l6ZV90IG1heGxlbiA9IGN1cmxlbiArIGNvdW50ICsgb3V0cHV0LT5zaXplX2luY3JlbWVudDsKLQotICAgIGlmIChTVFJJTkdMSUJfUkVTSVpFKCZvdXRwdXQtPm9iaiwgbWF4bGVuKSA8IDApCi0gICAgICAgIHJldHVybiAwOwotICAgIHN0YXJ0cHRyID0gU1RSSU5HTElCX1NUUihvdXRwdXQtPm9iaik7Ci0gICAgb3V0cHV0LT5wdHIgPSBzdGFydHB0ciArIGN1cmxlbjsKLSAgICBvdXRwdXQtPmVuZCA9IHN0YXJ0cHRyICsgbWF4bGVuOwotICAgIGlmIChvdXRwdXQtPnNpemVfaW5jcmVtZW50IDwgTUFYX1NJWkVfSU5DUkVNRU5UKQotICAgICAgICBvdXRwdXQtPnNpemVfaW5jcmVtZW50ICo9IFNJWkVfTVVMVElQTElFUjsKLSAgICByZXR1cm4gMTsKLX0KLQogLyoKICAgICBvdXRwdXRfZGF0YSBkdW1wcyBjaGFyYWN0ZXJzIGludG8gb3VyIG91dHB1dCBzdHJpbmcKICAgICBidWZmZXIuCkBAIC0xNzksMTMgKzEyNCwxNyBAQAogICAgIDEgZm9yIHN1Y2Nlc3MuCiAqLwogc3RhdGljIGludAotb3V0cHV0X2RhdGEoT3V0cHV0U3RyaW5nICpvdXRwdXQsIGNvbnN0IFNUUklOR0xJQl9DSEFSICpzLCBQeV9zc2l6ZV90IGNvdW50KQorb3V0cHV0X2RhdGEoX1B5QWNjdSAqYWNjLCBQeU9iamVjdCAqcywgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQpCiB7Ci0gICAgaWYgKChjb3VudCA+IG91dHB1dC0+ZW5kIC0gb3V0cHV0LT5wdHIpICYmICFvdXRwdXRfZXh0ZW5kKG91dHB1dCwgY291bnQpKQorICAgIFB5T2JqZWN0ICpzdWJzdHJpbmc7CisgICAgaW50IHI7CisKKyAgICBzdWJzdHJpbmcgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKHMsIHN0YXJ0LCBlbmQpOworICAgIGlmIChzdWJzdHJpbmcgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgbWVtY3B5KG91dHB1dC0+cHRyLCBzLCBjb3VudCAqIHNpemVvZihTVFJJTkdMSUJfQ0hBUikpOwotICAgIG91dHB1dC0+cHRyICs9IGNvdW50OwotICAgIHJldHVybiAxOworICAgIHIgPSBfUHlBY2N1X0FjY3VtdWxhdGUoYWNjLCBzdWJzdHJpbmcpOworICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOworICAgIHJldHVybiByID09IDA7CiB9CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC0xOTcsMzEgKzE0NiwyOCBAQAogewogICAgIFB5X3NzaXplX3QgYWNjdW11bGF0b3IgPSAwOwogICAgIFB5X3NzaXplX3QgZGlnaXR2YWw7Ci0gICAgUHlfc3NpemVfdCBvbGRhY2N1bXVsYXRvcjsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcDsKKyAgICBQeV9zc2l6ZV90IGk7CiAKICAgICAvKiBlbXB0eSBzdHJpbmcgaXMgYW4gZXJyb3IgKi8KLSAgICBpZiAoc3RyLT5wdHIgPj0gc3RyLT5lbmQpCisgICAgaWYgKHN0ci0+c3RhcnQgPj0gc3RyLT5lbmQpCiAgICAgICAgIHJldHVybiAtMTsKIAotICAgIGZvciAocCA9IHN0ci0+cHRyOyBwIDwgc3RyLT5lbmQ7IHArKykgewotICAgICAgICBkaWdpdHZhbCA9IFNUUklOR0xJQl9UT0RFQ0lNQUwoKnApOworICAgIGZvciAoaSA9IHN0ci0+c3RhcnQ7IGkgPCBzdHItPmVuZDsgaSsrKSB7CisgICAgICAgIGRpZ2l0dmFsID0gUHlfVU5JQ09ERV9UT0RFQ0lNQUwoUHlVbmljb2RlX1JFQURfQ0hBUihzdHItPnN0ciwgaSkpOwogICAgICAgICBpZiAoZGlnaXR2YWwgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAvKgotICAgICAgICAgICBUaGlzIHRyaWNrIHdhcyBjb3BpZWQgZnJvbSBvbGQgVW5pY29kZSBmb3JtYXQgY29kZS4gIEl0J3MgY3V0ZSwKLSAgICAgICAgICAgYnV0IHdvdWxkIHJlYWxseSBzdWNrIG9uIGFuIG9sZCBtYWNoaW5lIHdpdGggYSBzbG93IGRpdmlkZQotICAgICAgICAgICBpbXBsZW1lbnRhdGlvbi4gIEZvcnR1bmF0ZWx5LCBpbiB0aGUgbm9ybWFsIGNhc2Ugd2UgZG8gbm90Ci0gICAgICAgICAgIGV4cGVjdCB0b28gbWFueSBkaWdpdHMuCisgICAgICAgICAgIERldGVjdCBwb3NzaWJsZSBvdmVyZmxvdyBiZWZvcmUgaXQgaGFwcGVuczoKKworICAgICAgICAgICAgICBhY2N1bXVsYXRvciAqIDEwICsgZGlnaXR2YWwgPiBQWV9TU0laRV9UX01BWCBpZiBhbmQgb25seSBpZgorICAgICAgICAgICAgICBhY2N1bXVsYXRvciA+IChQWV9TU0laRV9UX01BWCAtIGRpZ2l0dmFsKSAvIDEwLgogICAgICAgICAqLwotICAgICAgICBvbGRhY2N1bXVsYXRvciA9IGFjY3VtdWxhdG9yOwotICAgICAgICBhY2N1bXVsYXRvciAqPSAxMDsKLSAgICAgICAgaWYgKChhY2N1bXVsYXRvcisxMCkvMTAgIT0gb2xkYWNjdW11bGF0b3IrMSkgeworICAgICAgICBpZiAoYWNjdW11bGF0b3IgPiAoUFlfU1NJWkVfVF9NQVggLSBkaWdpdHZhbCkgLyAxMCkgewogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlRvbyBtYW55IGRlY2ltYWwgZGlnaXRzIGluIGZvcm1hdCBzdHJpbmciKTsKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgfQotICAgICAgICBhY2N1bXVsYXRvciArPSBkaWdpdHZhbDsKKyAgICAgICAgYWNjdW11bGF0b3IgPSBhY2N1bXVsYXRvciAqIDEwICsgZGlnaXR2YWw7CiAgICAgfQogICAgIHJldHVybiBhY2N1bXVsYXRvcjsKIH0KQEAgLTI4MiwzNCArMjI4LDM2IEBACiAgICAgICAgbGlmZXRpbWUgb2YgdGhlIGl0ZXJhdG9yLiAgY2FuIGJlIGVtcHR5ICovCiAgICAgU3ViU3RyaW5nIHN0cjsKIAotICAgIC8qIHBvaW50ZXIgdG8gd2hlcmUgd2UgYXJlIGluc2lkZSBmaWVsZF9uYW1lICovCi0gICAgU1RSSU5HTElCX0NIQVIgKnB0cjsKKyAgICAvKiBpbmRleCB0byB3aGVyZSB3ZSBhcmUgaW5zaWRlIGZpZWxkX25hbWUgKi8KKyAgICBQeV9zc2l6ZV90IGluZGV4OwogfSBGaWVsZE5hbWVJdGVyYXRvcjsKIAogCiBzdGF0aWMgaW50Ci1GaWVsZE5hbWVJdGVyYXRvcl9pbml0KEZpZWxkTmFtZUl0ZXJhdG9yICpzZWxmLCBTVFJJTkdMSUJfQ0hBUiAqcHRyLAotICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbikKK0ZpZWxkTmFtZUl0ZXJhdG9yX2luaXQoRmllbGROYW1lSXRlcmF0b3IgKnNlbGYsIFB5T2JqZWN0ICpzLAorICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKIHsKLSAgICBTdWJTdHJpbmdfaW5pdCgmc2VsZi0+c3RyLCBwdHIsIGxlbik7Ci0gICAgc2VsZi0+cHRyID0gc2VsZi0+c3RyLnB0cjsKKyAgICBTdWJTdHJpbmdfaW5pdCgmc2VsZi0+c3RyLCBzLCBzdGFydCwgZW5kKTsKKyAgICBzZWxmLT5pbmRleCA9IHN0YXJ0OwogICAgIHJldHVybiAxOwogfQogCiBzdGF0aWMgaW50CiBfRmllbGROYW1lSXRlcmF0b3JfYXR0cihGaWVsZE5hbWVJdGVyYXRvciAqc2VsZiwgU3ViU3RyaW5nICpuYW1lKQogewotICAgIFNUUklOR0xJQl9DSEFSIGM7CisgICAgUHlfVUNTNCBjOwogCi0gICAgbmFtZS0+cHRyID0gc2VsZi0+cHRyOworICAgIG5hbWUtPnN0ciA9IHNlbGYtPnN0ci5zdHI7CisgICAgbmFtZS0+c3RhcnQgPSBzZWxmLT5pbmRleDsKIAogICAgIC8qIHJldHVybiBldmVyeXRoaW5nIHVudGlsICcuJyBvciAnWycgKi8KLSAgICB3aGlsZSAoc2VsZi0+cHRyIDwgc2VsZi0+c3RyLmVuZCkgewotICAgICAgICBzd2l0Y2ggKGMgPSAqc2VsZi0+cHRyKyspIHsKKyAgICB3aGlsZSAoc2VsZi0+aW5kZXggPCBzZWxmLT5zdHIuZW5kKSB7CisgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHNlbGYtPnN0ci5zdHIsIHNlbGYtPmluZGV4KyspOworICAgICAgICBzd2l0Y2ggKGMpIHsKICAgICAgICAgY2FzZSAnWyc6CiAgICAgICAgIGNhc2UgJy4nOgogICAgICAgICAgICAgLyogYmFja3VwIHNvIHRoYXQgd2UgdGhpcyBjaGFyYWN0ZXIgd2lsbCBiZSBzZWVuIG5leHQgdGltZSAqLwotICAgICAgICAgICAgc2VsZi0+cHRyLS07CisgICAgICAgICAgICBzZWxmLT5pbmRleC0tOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBjb250aW51ZTsKQEAgLTMxNyw3ICsyNjUsNyBAQAogICAgICAgICBicmVhazsKICAgICB9CiAgICAgLyogZW5kIG9mIHN0cmluZyBpcyBva2F5ICovCi0gICAgbmFtZS0+ZW5kID0gc2VsZi0+cHRyOworICAgIG5hbWUtPmVuZCA9IHNlbGYtPmluZGV4OwogICAgIHJldHVybiAxOwogfQogCkBAIC0zMjUsMTMgKzI3MywxNSBAQAogX0ZpZWxkTmFtZUl0ZXJhdG9yX2l0ZW0oRmllbGROYW1lSXRlcmF0b3IgKnNlbGYsIFN1YlN0cmluZyAqbmFtZSkKIHsKICAgICBpbnQgYnJhY2tldF9zZWVuID0gMDsKLSAgICBTVFJJTkdMSUJfQ0hBUiBjOworICAgIFB5X1VDUzQgYzsKIAotICAgIG5hbWUtPnB0ciA9IHNlbGYtPnB0cjsKKyAgICBuYW1lLT5zdHIgPSBzZWxmLT5zdHIuc3RyOworICAgIG5hbWUtPnN0YXJ0ID0gc2VsZi0+aW5kZXg7CiAKICAgICAvKiByZXR1cm4gZXZlcnl0aGluZyB1bnRpbCAnXScgKi8KLSAgICB3aGlsZSAoc2VsZi0+cHRyIDwgc2VsZi0+c3RyLmVuZCkgewotICAgICAgICBzd2l0Y2ggKGMgPSAqc2VsZi0+cHRyKyspIHsKKyAgICB3aGlsZSAoc2VsZi0+aW5kZXggPCBzZWxmLT5zdHIuZW5kKSB7CisgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHNlbGYtPnN0ci5zdHIsIHNlbGYtPmluZGV4KyspOworICAgICAgICBzd2l0Y2ggKGMpIHsKICAgICAgICAgY2FzZSAnXSc6CiAgICAgICAgICAgICBicmFja2V0X3NlZW4gPSAxOwogICAgICAgICAgICAgYnJlYWs7CkBAIC0zNDgsNyArMjk4LDcgQEAKIAogICAgIC8qIGVuZCBvZiBzdHJpbmcgaXMgb2theSAqLwogICAgIC8qIGRvbid0IGluY2x1ZGUgdGhlICddJyAqLwotICAgIG5hbWUtPmVuZCA9IHNlbGYtPnB0ci0xOworICAgIG5hbWUtPmVuZCA9IHNlbGYtPmluZGV4LTE7CiAgICAgcmV0dXJuIDE7CiB9CiAKQEAgLTM1OCwxMCArMzA4LDEwIEBACiAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKm5hbWVfaWR4LCBTdWJTdHJpbmcgKm5hbWUpCiB7CiAgICAgLyogY2hlY2sgYXQgZW5kIG9mIGlucHV0ICovCi0gICAgaWYgKHNlbGYtPnB0ciA+PSBzZWxmLT5zdHIuZW5kKQorICAgIGlmIChzZWxmLT5pbmRleCA+PSBzZWxmLT5zdHIuZW5kKQogICAgICAgICByZXR1cm4gMTsKIAotICAgIHN3aXRjaCAoKnNlbGYtPnB0cisrKSB7CisgICAgc3dpdGNoIChQeVVuaWNvZGVfUkVBRF9DSEFSKHNlbGYtPnN0ci5zdHIsIHNlbGYtPmluZGV4KyspKSB7CiAgICAgY2FzZSAnLic6CiAgICAgICAgICppc19hdHRyaWJ1dGUgPSAxOwogICAgICAgICBpZiAoX0ZpZWxkTmFtZUl0ZXJhdG9yX2F0dHIoc2VsZiwgbmFtZSkgPT0gMCkKQEAgLTM4NCw3ICszMzQsNyBAQAogICAgIH0KIAogICAgIC8qIGVtcHR5IHN0cmluZyBpcyBhbiBlcnJvciAqLwotICAgIGlmIChuYW1lLT5wdHIgPT0gbmFtZS0+ZW5kKSB7CisgICAgaWYgKG5hbWUtPnN0YXJ0ID09IG5hbWUtPmVuZCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIkVtcHR5IGF0dHJpYnV0ZSBpbiBmb3JtYXQgc3RyaW5nIik7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KQEAgLTQwMCwyNCArMzUwLDIzIEBACiAgICAgICAgICAgICdyZXN0JyBpcyBhbiBpdGVyYXRvciB0byByZXR1cm4gdGhlIHJlc3QKICovCiBzdGF0aWMgaW50Ci1maWVsZF9uYW1lX3NwbGl0KFNUUklOR0xJQl9DSEFSICpwdHIsIFB5X3NzaXplX3QgbGVuLCBTdWJTdHJpbmcgKmZpcnN0LAorZmllbGRfbmFtZV9zcGxpdChQeU9iamVjdCAqc3RyLCBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCwgU3ViU3RyaW5nICpmaXJzdCwKICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqZmlyc3RfaWR4LCBGaWVsZE5hbWVJdGVyYXRvciAqcmVzdCwKICAgICAgICAgICAgICAgICAgQXV0b051bWJlciAqYXV0b19udW1iZXIpCiB7Ci0gICAgU1RSSU5HTElCX0NIQVIgYzsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcCA9IHB0cjsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqZW5kID0gcHRyICsgbGVuOworICAgIFB5X1VDUzQgYzsKKyAgICBQeV9zc2l6ZV90IGkgPSBzdGFydDsKICAgICBpbnQgZmllbGRfbmFtZV9pc19lbXB0eTsKICAgICBpbnQgdXNpbmdfbnVtZXJpY19pbmRleDsKIAogICAgIC8qIGZpbmQgdGhlIHBhcnQgdXAgdW50aWwgdGhlIGZpcnN0ICcuJyBvciAnWycgKi8KLSAgICB3aGlsZSAocCA8IGVuZCkgewotICAgICAgICBzd2l0Y2ggKGMgPSAqcCsrKSB7CisgICAgd2hpbGUgKGkgPCBlbmQpIHsKKyAgICAgICAgc3dpdGNoIChjID0gUHlVbmljb2RlX1JFQURfQ0hBUihzdHIsIGkrKykpIHsKICAgICAgICAgY2FzZSAnWyc6CiAgICAgICAgIGNhc2UgJy4nOgogICAgICAgICAgICAgLyogYmFja3VwIHNvIHRoYXQgd2UgdGhpcyBjaGFyYWN0ZXIgaXMgYXZhaWxhYmxlIHRvIHRoZQogICAgICAgICAgICAgICAgInJlc3QiIGl0ZXJhdG9yICovCi0gICAgICAgICAgICBwLS07CisgICAgICAgICAgICBpLS07CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtNDI2LDE1ICszNzUsMTUgQEAKICAgICB9CiAKICAgICAvKiBzZXQgdXAgdGhlIHJldHVybiB2YWx1ZXMgKi8KLSAgICBTdWJTdHJpbmdfaW5pdChmaXJzdCwgcHRyLCBwIC0gcHRyKTsKLSAgICBGaWVsZE5hbWVJdGVyYXRvcl9pbml0KHJlc3QsIHAsIGVuZCAtIHApOworICAgIFN1YlN0cmluZ19pbml0KGZpcnN0LCBzdHIsIHN0YXJ0LCBpKTsKKyAgICBGaWVsZE5hbWVJdGVyYXRvcl9pbml0KHJlc3QsIHN0ciwgaSwgZW5kKTsKIAogICAgIC8qIHNlZSBpZiAiZmlyc3QiIGlzIGFuIGludGVnZXIsIGluIHdoaWNoIGNhc2UgaXQncyB1c2VkIGFzIGFuIGluZGV4ICovCiAgICAgKmZpcnN0X2lkeCA9IGdldF9pbnRlZ2VyKGZpcnN0KTsKICAgICBpZiAoKmZpcnN0X2lkeCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIGZpZWxkX25hbWVfaXNfZW1wdHkgPSBmaXJzdC0+cHRyID49IGZpcnN0LT5lbmQ7CisgICAgZmllbGRfbmFtZV9pc19lbXB0eSA9IGZpcnN0LT5zdGFydCA+PSBmaXJzdC0+ZW5kOwogCiAgICAgLyogSWYgdGhlIGZpZWxkIG5hbWUgaXMgb21pdHRlZCBvciBpZiB3ZSBoYXZlIGEgbnVtZXJpYyBpbmRleAogICAgICAgIHNwZWNpZmllZCwgdGhlbiB3ZSdyZSBkb2luZyBudW1lcmljIGluZGV4aW5nIGludG8gYXJncy4gKi8KQEAgLTQ4OSw3ICs0MzgsNyBAQAogICAgIFB5X3NzaXplX3QgaW5kZXg7CiAgICAgRmllbGROYW1lSXRlcmF0b3IgcmVzdDsKIAotICAgIGlmICghZmllbGRfbmFtZV9zcGxpdChpbnB1dC0+cHRyLCBpbnB1dC0+ZW5kIC0gaW5wdXQtPnB0ciwgJmZpcnN0LAorICAgIGlmICghZmllbGRfbmFtZV9zcGxpdChpbnB1dC0+c3RyLCBpbnB1dC0+c3RhcnQsIGlucHV0LT5lbmQsICZmaXJzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJmluZGV4LCAmcmVzdCwgYXV0b19udW1iZXIpKSB7CiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQpAQCAtNTczLDE2ICs1MjIsMTIgQEAKICAgICBhcHBlbmRzIHRvIHRoZSBvdXRwdXQuCiAqLwogc3RhdGljIGludAotcmVuZGVyX2ZpZWxkKFB5T2JqZWN0ICpmaWVsZG9iaiwgU3ViU3RyaW5nICpmb3JtYXRfc3BlYywgT3V0cHV0U3RyaW5nICpvdXRwdXQpCityZW5kZXJfZmllbGQoUHlPYmplY3QgKmZpZWxkb2JqLCBTdWJTdHJpbmcgKmZvcm1hdF9zcGVjLCBfUHlBY2N1ICphY2MpCiB7CiAgICAgaW50IG9rID0gMDsKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKICAgICBQeU9iamVjdCAqZm9ybWF0X3NwZWNfb2JqZWN0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqKCpmb3JtYXR0ZXIpKFB5T2JqZWN0ICosIFNUUklOR0xJQl9DSEFSICosIFB5X3NzaXplX3QpID0gTlVMTDsKLSAgICBTVFJJTkdMSUJfQ0hBUiogZm9ybWF0X3NwZWNfc3RhcnQgPSBmb3JtYXRfc3BlYy0+cHRyID8KLSAgICAgICAgICAgIGZvcm1hdF9zcGVjLT5wdHIgOiBOVUxMOwotICAgIFB5X3NzaXplX3QgZm9ybWF0X3NwZWNfbGVuID0gZm9ybWF0X3NwZWMtPnB0ciA/Ci0gICAgICAgICAgICBmb3JtYXRfc3BlYy0+ZW5kIC0gZm9ybWF0X3NwZWMtPnB0ciA6IDA7CisgICAgUHlPYmplY3QgKigqZm9ybWF0dGVyKShQeU9iamVjdCAqLCBQeU9iamVjdCAqLCBQeV9zc2l6ZV90LCBQeV9zc2l6ZV90KSA9IE5VTEw7CiAKICAgICAvKiBJZiB3ZSBrbm93IHRoZSB0eXBlIGV4YWN0bHksIHNraXAgdGhlIGxvb2t1cCBvZiBfX2Zvcm1hdF9fIGFuZCBqdXN0CiAgICAgICAgY2FsbCB0aGUgZm9ybWF0dGVyIGRpcmVjdGx5LiAqLwpAQCAtNTk5LDM5ICs1NDQsMjggQEAKICAgICBpZiAoZm9ybWF0dGVyKSB7CiAgICAgICAgIC8qIHdlIGtub3cgZXhhY3RseSB3aGljaCBmb3JtYXR0ZXIgd2lsbCBiZSBjYWxsZWQgd2hlbiBfX2Zvcm1hdF9fIGlzCiAgICAgICAgICAgIGxvb2tlZCB1cCwgc28gY2FsbCBpdCBkaXJlY3RseSwgaW5zdGVhZC4gKi8KLSAgICAgICAgcmVzdWx0ID0gZm9ybWF0dGVyKGZpZWxkb2JqLCBmb3JtYXRfc3BlY19zdGFydCwgZm9ybWF0X3NwZWNfbGVuKTsKKyAgICAgICAgcmVzdWx0ID0gZm9ybWF0dGVyKGZpZWxkb2JqLCBmb3JtYXRfc3BlYy0+c3RyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0X3NwZWMtPnN0YXJ0LCBmb3JtYXRfc3BlYy0+ZW5kKTsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIC8qIFdlIG5lZWQgdG8gY3JlYXRlIGFuIG9iamVjdCBvdXQgb2YgdGhlIHBvaW50ZXJzIHdlIGhhdmUsIGJlY2F1c2UKICAgICAgICAgICAgX19mb3JtYXRfXyB0YWtlcyBhIHN0cmluZy91bmljb2RlIG9iamVjdCBmb3IgZm9ybWF0X3NwZWMuICovCi0gICAgICAgIGZvcm1hdF9zcGVjX29iamVjdCA9IFNUUklOR0xJQl9ORVcoZm9ybWF0X3NwZWNfc3RhcnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0X3NwZWNfbGVuKTsKKyAgICAgICAgaWYgKGZvcm1hdF9zcGVjLT5zdHIpCisgICAgICAgICAgICBmb3JtYXRfc3BlY19vYmplY3QgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKGZvcm1hdF9zcGVjLT5zdHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdF9zcGVjLT5zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0X3NwZWMtPmVuZCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGZvcm1hdF9zcGVjX29iamVjdCA9IFB5VW5pY29kZV9OZXcoMCwgMCk7CiAgICAgICAgIGlmIChmb3JtYXRfc3BlY19vYmplY3QgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZG9uZTsKIAogICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9Gb3JtYXQoZmllbGRvYmosIGZvcm1hdF9zcGVjX29iamVjdCk7CiAgICAgfQotICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICBpZiAocmVzdWx0ID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHJlc3VsdCkgPT0gLTEpCiAgICAgICAgIGdvdG8gZG9uZTsKIAotI2lmIFBZX1ZFUlNJT05fSEVYID49IDB4MDMwMDAwMDAKICAgICBhc3NlcnQoUHlVbmljb2RlX0NoZWNrKHJlc3VsdCkpOwotI2Vsc2UKLSAgICBhc3NlcnQoUHlCeXRlc19DaGVjayhyZXN1bHQpIHx8IFB5VW5pY29kZV9DaGVjayhyZXN1bHQpKTsKLQotICAgIC8qIENvbnZlcnQgcmVzdWx0IHRvIG91ciB0eXBlLiAgV2UgY291bGQgYmUgc3RyLCBhbmQgcmVzdWx0IGNvdWxkCi0gICAgICAgYmUgdW5pY29kZSAqLwotICAgIHsKLSAgICAgICAgUHlPYmplY3QgKnRtcCA9IFNUUklOR0xJQl9UT1NUUihyZXN1bHQpOwotICAgICAgICBpZiAodG1wID09IE5VTEwpCi0gICAgICAgICAgICBnb3RvIGRvbmU7Ci0gICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwotICAgICAgICByZXN1bHQgPSB0bXA7Ci0gICAgfQotI2VuZGlmCi0KLSAgICBvayA9IG91dHB1dF9kYXRhKG91dHB1dCwKLSAgICAgICAgICAgICAgICAgICAgIFNUUklOR0xJQl9TVFIocmVzdWx0KSwgU1RSSU5HTElCX0xFTihyZXN1bHQpKTsKKyAgICBvayA9IG91dHB1dF9kYXRhKGFjYywgcmVzdWx0LCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXN1bHQpKTsKIGRvbmU6CiAgICAgUHlfWERFQ1JFRihmb3JtYXRfc3BlY19vYmplY3QpOwogICAgIFB5X1hERUNSRUYocmVzdWx0KTsKQEAgLTY0MCwyMyArNTc0LDI0IEBACiAKIHN0YXRpYyBpbnQKIHBhcnNlX2ZpZWxkKFN1YlN0cmluZyAqc3RyLCBTdWJTdHJpbmcgKmZpZWxkX25hbWUsIFN1YlN0cmluZyAqZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiAqY29udmVyc2lvbikKKyAgICAgICAgICAgIFB5X1VDUzQgKmNvbnZlcnNpb24pCiB7CiAgICAgLyogTm90ZSB0aGlzIGZ1bmN0aW9uIHdvcmtzIGlmIHRoZSBmaWVsZCBuYW1lIGlzIHplcm8gbGVuZ3RoLAogICAgICAgIHdoaWNoIGlzIGdvb2QuICBaZXJvIGxlbmd0aCBmaWVsZCBuYW1lcyBhcmUgaGFuZGxlZCBsYXRlciwgaW4KICAgICAgICBmaWVsZF9uYW1lX3NwbGl0LiAqLwogCi0gICAgU1RSSU5HTElCX0NIQVIgYyA9IDA7CisgICAgUHlfVUNTNCBjID0gMDsKIAogICAgIC8qIGluaXRpYWxpemUgdGhlc2UsIGFzIHRoZXkgbWF5IGJlIGVtcHR5ICovCiAgICAgKmNvbnZlcnNpb24gPSAnXDAnOwotICAgIFN1YlN0cmluZ19pbml0KGZvcm1hdF9zcGVjLCBOVUxMLCAwKTsKKyAgICBTdWJTdHJpbmdfaW5pdChmb3JtYXRfc3BlYywgTlVMTCwgMCwgMCk7CiAKICAgICAvKiBTZWFyY2ggZm9yIHRoZSBmaWVsZCBuYW1lLiAgaXQncyB0ZXJtaW5hdGVkIGJ5IHRoZSBlbmQgb2YKICAgICAgICB0aGUgc3RyaW5nLCBvciBhICc6JyBvciAnIScgKi8KLSAgICBmaWVsZF9uYW1lLT5wdHIgPSBzdHItPnB0cjsKLSAgICB3aGlsZSAoc3RyLT5wdHIgPCBzdHItPmVuZCkgewotICAgICAgICBzd2l0Y2ggKGMgPSAqKHN0ci0+cHRyKyspKSB7CisgICAgZmllbGRfbmFtZS0+c3RyID0gc3RyLT5zdHI7CisgICAgZmllbGRfbmFtZS0+c3RhcnQgPSBzdHItPnN0YXJ0OworICAgIHdoaWxlIChzdHItPnN0YXJ0IDwgc3RyLT5lbmQpIHsKKyAgICAgICAgc3dpdGNoICgoYyA9IFB5VW5pY29kZV9SRUFEX0NIQVIoc3RyLT5zdHIsIHN0ci0+c3RhcnQrKykpKSB7CiAgICAgICAgIGNhc2UgJzonOgogICAgICAgICBjYXNlICchJzoKICAgICAgICAgICAgIGJyZWFrOwpAQCAtNjY5LDI2ICs2MDQsMjcgQEAKICAgICBpZiAoYyA9PSAnIScgfHwgYyA9PSAnOicpIHsKICAgICAgICAgLyogd2UgaGF2ZSBhIGZvcm1hdCBzcGVjaWZpZXIgYW5kL29yIGEgY29udmVyc2lvbiAqLwogICAgICAgICAvKiBkb24ndCBpbmNsdWRlIHRoZSBsYXN0IGNoYXJhY3RlciAqLwotICAgICAgICBmaWVsZF9uYW1lLT5lbmQgPSBzdHItPnB0ci0xOworICAgICAgICBmaWVsZF9uYW1lLT5lbmQgPSBzdHItPnN0YXJ0LTE7CiAKICAgICAgICAgLyogdGhlIGZvcm1hdCBzcGVjaWZpZXIgaXMgdGhlIHJlc3Qgb2YgdGhlIHN0cmluZyAqLwotICAgICAgICBmb3JtYXRfc3BlYy0+cHRyID0gc3RyLT5wdHI7CisgICAgICAgIGZvcm1hdF9zcGVjLT5zdHIgPSBzdHItPnN0cjsKKyAgICAgICAgZm9ybWF0X3NwZWMtPnN0YXJ0ID0gc3RyLT5zdGFydDsKICAgICAgICAgZm9ybWF0X3NwZWMtPmVuZCA9IHN0ci0+ZW5kOwogCiAgICAgICAgIC8qIHNlZSBpZiB0aGVyZSdzIGEgY29udmVyc2lvbiBzcGVjaWZpZXIgKi8KICAgICAgICAgaWYgKGMgPT0gJyEnKSB7CiAgICAgICAgICAgICAvKiB0aGVyZSBtdXN0IGJlIGFub3RoZXIgY2hhcmFjdGVyIHByZXNlbnQgKi8KLSAgICAgICAgICAgIGlmIChmb3JtYXRfc3BlYy0+cHRyID49IGZvcm1hdF9zcGVjLT5lbmQpIHsKKyAgICAgICAgICAgIGlmIChmb3JtYXRfc3BlYy0+c3RhcnQgPj0gZm9ybWF0X3NwZWMtPmVuZCkgewogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZW5kIG9mIGZvcm1hdCB3aGlsZSBsb29raW5nIGZvciBjb252ZXJzaW9uICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNwZWNpZmllciIpOwogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgKmNvbnZlcnNpb24gPSAqKGZvcm1hdF9zcGVjLT5wdHIrKyk7CisgICAgICAgICAgICAqY29udmVyc2lvbiA9IFB5VW5pY29kZV9SRUFEX0NIQVIoZm9ybWF0X3NwZWMtPnN0ciwgZm9ybWF0X3NwZWMtPnN0YXJ0KyspOwogCiAgICAgICAgICAgICAvKiBpZiB0aGVyZSBpcyBhbm90aGVyIGNoYXJhY3RlciwgaXQgbXVzdCBiZSBhIGNvbG9uICovCi0gICAgICAgICAgICBpZiAoZm9ybWF0X3NwZWMtPnB0ciA8IGZvcm1hdF9zcGVjLT5lbmQpIHsKLSAgICAgICAgICAgICAgICBjID0gKihmb3JtYXRfc3BlYy0+cHRyKyspOworICAgICAgICAgICAgaWYgKGZvcm1hdF9zcGVjLT5zdGFydCA8IGZvcm1hdF9zcGVjLT5lbmQpIHsKKyAgICAgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQURfQ0hBUihmb3JtYXRfc3BlYy0+c3RyLCBmb3JtYXRfc3BlYy0+c3RhcnQrKyk7CiAgICAgICAgICAgICAgICAgaWYgKGMgIT0gJzonKSB7CiAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cGVjdGVkICc6JyBhZnRlciBmb3JtYXQgc3BlY2lmaWVyIik7CkBAIC02OTksNyArNjM1LDcgQEAKICAgICB9CiAgICAgZWxzZQogICAgICAgICAvKiBlbmQgb2Ygc3RyaW5nLCB0aGVyZSdzIG5vIGZvcm1hdF9zcGVjIG9yIGNvbnZlcnNpb24gKi8KLSAgICAgICAgZmllbGRfbmFtZS0+ZW5kID0gc3RyLT5wdHI7CisgICAgICAgIGZpZWxkX25hbWUtPmVuZCA9IHN0ci0+c3RhcnQ7CiAKICAgICByZXR1cm4gMTsKIH0KQEAgLTcxOCw5ICs2NTQsMTAgQEAKIH0gTWFya3VwSXRlcmF0b3I7CiAKIHN0YXRpYyBpbnQKLU1hcmt1cEl0ZXJhdG9yX2luaXQoTWFya3VwSXRlcmF0b3IgKnNlbGYsIFNUUklOR0xJQl9DSEFSICpwdHIsIFB5X3NzaXplX3QgbGVuKQorTWFya3VwSXRlcmF0b3JfaW5pdChNYXJrdXBJdGVyYXRvciAqc2VsZiwgUHlPYmplY3QgKnN0ciwKKyAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQpCiB7Ci0gICAgU3ViU3RyaW5nX2luaXQoJnNlbGYtPnN0ciwgcHRyLCBsZW4pOworICAgIFN1YlN0cmluZ19pbml0KCZzZWxmLT5zdHIsIHN0ciwgc3RhcnQsIGVuZCk7CiAgICAgcmV0dXJuIDE7CiB9CiAKQEAgLTcyOSwzMCArNjY2LDMwIEBACiBzdGF0aWMgaW50CiBNYXJrdXBJdGVyYXRvcl9uZXh0KE1hcmt1cEl0ZXJhdG9yICpzZWxmLCBTdWJTdHJpbmcgKmxpdGVyYWwsCiAgICAgICAgICAgICAgICAgICAgIGludCAqZmllbGRfcHJlc2VudCwgU3ViU3RyaW5nICpmaWVsZF9uYW1lLAotICAgICAgICAgICAgICAgICAgICBTdWJTdHJpbmcgKmZvcm1hdF9zcGVjLCBTVFJJTkdMSUJfQ0hBUiAqY29udmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgU3ViU3RyaW5nICpmb3JtYXRfc3BlYywgUHlfVUNTNCAqY29udmVyc2lvbiwKICAgICAgICAgICAgICAgICAgICAgaW50ICpmb3JtYXRfc3BlY19uZWVkc19leHBhbmRpbmcpCiB7CiAgICAgaW50IGF0X2VuZDsKLSAgICBTVFJJTkdMSUJfQ0hBUiBjID0gMDsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqc3RhcnQ7CisgICAgUHlfVUNTNCBjID0gMDsKKyAgICBQeV9zc2l6ZV90IHN0YXJ0OwogICAgIGludCBjb3VudDsKICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICBpbnQgbWFya3VwX2ZvbGxvd3MgPSAwOwogCiAgICAgLyogaW5pdGlhbGl6ZSBhbGwgb2YgdGhlIG91dHB1dCB2YXJpYWJsZXMgKi8KLSAgICBTdWJTdHJpbmdfaW5pdChsaXRlcmFsLCBOVUxMLCAwKTsKLSAgICBTdWJTdHJpbmdfaW5pdChmaWVsZF9uYW1lLCBOVUxMLCAwKTsKLSAgICBTdWJTdHJpbmdfaW5pdChmb3JtYXRfc3BlYywgTlVMTCwgMCk7CisgICAgU3ViU3RyaW5nX2luaXQobGl0ZXJhbCwgTlVMTCwgMCwgMCk7CisgICAgU3ViU3RyaW5nX2luaXQoZmllbGRfbmFtZSwgTlVMTCwgMCwgMCk7CisgICAgU3ViU3RyaW5nX2luaXQoZm9ybWF0X3NwZWMsIE5VTEwsIDAsIDApOwogICAgICpjb252ZXJzaW9uID0gJ1wwJzsKICAgICAqZm9ybWF0X3NwZWNfbmVlZHNfZXhwYW5kaW5nID0gMDsKICAgICAqZmllbGRfcHJlc2VudCA9IDA7CiAKICAgICAvKiBObyBtb3JlIGlucHV0LCBlbmQgb2YgaXRlcmF0b3IuICBUaGlzIGlzIHRoZSBub3JtYWwgZXhpdAogICAgICAgIHBhdGguICovCi0gICAgaWYgKHNlbGYtPnN0ci5wdHIgPj0gc2VsZi0+c3RyLmVuZCkKKyAgICBpZiAoc2VsZi0+c3RyLnN0YXJ0ID49IHNlbGYtPnN0ci5lbmQpCiAgICAgICAgIHJldHVybiAxOwogCi0gICAgc3RhcnQgPSBzZWxmLT5zdHIucHRyOworICAgIHN0YXJ0ID0gc2VsZi0+c3RyLnN0YXJ0OwogCiAgICAgLyogRmlyc3QgcmVhZCBhbnkgbGl0ZXJhbCB0ZXh0LiBSZWFkIHVudGlsIHRoZSBlbmQgb2Ygc3RyaW5nLCBhbgogICAgICAgIGVzY2FwZWQgJ3snIG9yICd9Jywgb3IgYW4gdW5lc2NhcGVkICd7Jy4gIEluIG9yZGVyIHRvIG5ldmVyCkBAIC03NjEsOCArNjk4LDggQEAKICAgICAgICBpbmNsdWRpbmcgdGhlIGJyYWNlLCBidXQgbm8gZm9ybWF0IG9iamVjdC4gIFRoZSBuZXh0IHRpbWUKICAgICAgICB0aHJvdWdoLCB3ZSdsbCByZXR1cm4gdGhlIHJlc3Qgb2YgdGhlIGxpdGVyYWwsIHNraXBwaW5nIHBhc3QKICAgICAgICB0aGUgc2Vjb25kIGNvbnNlY3V0aXZlIGJyYWNlLiAqLwotICAgIHdoaWxlIChzZWxmLT5zdHIucHRyIDwgc2VsZi0+c3RyLmVuZCkgewotICAgICAgICBzd2l0Y2ggKGMgPSAqKHNlbGYtPnN0ci5wdHIrKykpIHsKKyAgICB3aGlsZSAoc2VsZi0+c3RyLnN0YXJ0IDwgc2VsZi0+c3RyLmVuZCkgeworICAgICAgICBzd2l0Y2ggKGMgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHNlbGYtPnN0ci5zdHIsIHNlbGYtPnN0ci5zdGFydCsrKSkgewogICAgICAgICBjYXNlICd7JzoKICAgICAgICAgY2FzZSAnfSc6CiAgICAgICAgICAgICBtYXJrdXBfZm9sbG93cyA9IDE7CkBAIC03NzMsMTAgKzcxMCwxMiBAQAogICAgICAgICBicmVhazsKICAgICB9CiAKLSAgICBhdF9lbmQgPSBzZWxmLT5zdHIucHRyID49IHNlbGYtPnN0ci5lbmQ7Ci0gICAgbGVuID0gc2VsZi0+c3RyLnB0ciAtIHN0YXJ0OworICAgIGF0X2VuZCA9IHNlbGYtPnN0ci5zdGFydCA+PSBzZWxmLT5zdHIuZW5kOworICAgIGxlbiA9IHNlbGYtPnN0ci5zdGFydCAtIHN0YXJ0OwogCi0gICAgaWYgKChjID09ICd9JykgJiYgKGF0X2VuZCB8fCAoYyAhPSAqc2VsZi0+c3RyLnB0cikpKSB7CisgICAgaWYgKChjID09ICd9JykgJiYgKGF0X2VuZCB8fAorICAgICAgICAgICAgICAgICAgICAgICAoYyAhPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHNlbGYtPnN0ci5zdHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+c3RyLnN0YXJ0KSkpKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiU2luZ2xlICd9JyBlbmNvdW50ZXJlZCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAiaW4gZm9ybWF0IHN0cmluZyIpOwogICAgICAgICByZXR1cm4gMDsKQEAgLTc4NywxMCArNzI2LDEwIEBACiAgICAgICAgIHJldHVybiAwOwogICAgIH0KICAgICBpZiAoIWF0X2VuZCkgewotICAgICAgICBpZiAoYyA9PSAqc2VsZi0+c3RyLnB0cikgeworICAgICAgICBpZiAoYyA9PSBQeVVuaWNvZGVfUkVBRF9DSEFSKHNlbGYtPnN0ci5zdHIsIHNlbGYtPnN0ci5zdGFydCkpIHsKICAgICAgICAgICAgIC8qIGVzY2FwZWQgfSBvciB7LCBza2lwIGl0IGluIHRoZSBpbnB1dC4gIHRoZXJlIGlzIG5vCiAgICAgICAgICAgICAgICBtYXJrdXAgb2JqZWN0IGZvbGxvd2luZyB1cywganVzdCB0aGlzIGxpdGVyYWwgdGV4dCAqLwotICAgICAgICAgICAgc2VsZi0+c3RyLnB0cisrOworICAgICAgICAgICAgc2VsZi0+c3RyLnN0YXJ0Kys7CiAgICAgICAgICAgICBtYXJrdXBfZm9sbG93cyA9IDA7CiAgICAgICAgIH0KICAgICAgICAgZWxzZQpAQCAtNzk4LDcgKzczNyw4IEBACiAgICAgfQogCiAgICAgLyogcmVjb3JkIHRoZSBsaXRlcmFsIHRleHQgKi8KLSAgICBsaXRlcmFsLT5wdHIgPSBzdGFydDsKKyAgICBsaXRlcmFsLT5zdHIgPSBzZWxmLT5zdHIuc3RyOworICAgIGxpdGVyYWwtPnN0YXJ0ID0gc3RhcnQ7CiAgICAgbGl0ZXJhbC0+ZW5kID0gc3RhcnQgKyBsZW47CiAKICAgICBpZiAoIW1hcmt1cF9mb2xsb3dzKQpAQCAtODEwLDEyICs3NTAsMTIgQEAKICAgICAqZmllbGRfcHJlc2VudCA9IDE7CiAgICAgY291bnQgPSAxOwogCi0gICAgc3RhcnQgPSBzZWxmLT5zdHIucHRyOworICAgIHN0YXJ0ID0gc2VsZi0+c3RyLnN0YXJ0OwogCiAgICAgLyogd2Uga25vdyB3ZSBjYW4ndCBoYXZlIGEgemVybyBsZW5ndGggc3RyaW5nLCBzbyBkb24ndCB3b3JyeQogICAgICAgIGFib3V0IHRoYXQgY2FzZSAqLwotICAgIHdoaWxlIChzZWxmLT5zdHIucHRyIDwgc2VsZi0+c3RyLmVuZCkgewotICAgICAgICBzd2l0Y2ggKGMgPSAqKHNlbGYtPnN0ci5wdHIrKykpIHsKKyAgICB3aGlsZSAoc2VsZi0+c3RyLnN0YXJ0IDwgc2VsZi0+c3RyLmVuZCkgeworICAgICAgICBzd2l0Y2ggKGMgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHNlbGYtPnN0ci5zdHIsIHNlbGYtPnN0ci5zdGFydCsrKSkgewogICAgICAgICBjYXNlICd7JzoKICAgICAgICAgICAgIC8qIHRoZSBmb3JtYXQgc3BlYyBuZWVkcyB0byBiZSByZWN1cnNpdmVseSBleHBhbmRlZC4KICAgICAgICAgICAgICAgIHRoaXMgaXMgYW4gb3B0aW1pemF0aW9uLCBhbmQgbm90IHN0cmljdGx5IG5lZWRlZCAqLwpAQCAtODI4LDcgKzc2OCw3IEBACiAgICAgICAgICAgICAgICAgLyogd2UncmUgZG9uZS4gIHBhcnNlIGFuZCBnZXQgb3V0ICovCiAgICAgICAgICAgICAgICAgU3ViU3RyaW5nIHM7CiAKLSAgICAgICAgICAgICAgICBTdWJTdHJpbmdfaW5pdCgmcywgc3RhcnQsIHNlbGYtPnN0ci5wdHIgLSAxIC0gc3RhcnQpOworICAgICAgICAgICAgICAgIFN1YlN0cmluZ19pbml0KCZzLCBzZWxmLT5zdHIuc3RyLCBzdGFydCwgc2VsZi0+c3RyLnN0YXJ0IC0gMSk7CiAgICAgICAgICAgICAgICAgaWYgKHBhcnNlX2ZpZWxkKCZzLCBmaWVsZF9uYW1lLCBmb3JtYXRfc3BlYywgY29udmVyc2lvbikgPT0gMCkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAKQEAgLTg0Nyw3ICs3ODcsNyBAQAogCiAvKiBkbyB0aGUgIXIgb3IgIXMgY29udmVyc2lvbiBvbiBvYmogKi8KIHN0YXRpYyBQeU9iamVjdCAqCi1kb19jb252ZXJzaW9uKFB5T2JqZWN0ICpvYmosIFNUUklOR0xJQl9DSEFSIGNvbnZlcnNpb24pCitkb19jb252ZXJzaW9uKFB5T2JqZWN0ICpvYmosIFB5X1VDUzQgY29udmVyc2lvbikKIHsKICAgICAvKiBYWFggaW4gcHJlLTMuMCwgZG8gd2UgbmVlZCB0byBjb252ZXJ0IHRoaXMgdG8gdW5pY29kZSwgc2luY2UgaXQKICAgICAgICBtaWdodCBoYXZlIHJldHVybmVkIGEgc3RyaW5nPyAqLwpAQCAtODU1LDExICs3OTUsOSBAQAogICAgIGNhc2UgJ3InOgogICAgICAgICByZXR1cm4gUHlPYmplY3RfUmVwcihvYmopOwogICAgIGNhc2UgJ3MnOgotICAgICAgICByZXR1cm4gU1RSSU5HTElCX1RPU1RSKG9iaik7Ci0jaWYgUFlfVkVSU0lPTl9IRVggPj0gMHgwMzAwMDAwMAorICAgICAgICByZXR1cm4gUHlPYmplY3RfU3RyKG9iaik7CiAgICAgY2FzZSAnYSc6Ci0gICAgICAgIHJldHVybiBTVFJJTkdMSUJfVE9BU0NJSShvYmopOwotI2VuZGlmCisgICAgICAgIHJldHVybiBQeU9iamVjdF9BU0NJSShvYmopOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIGlmIChjb252ZXJzaW9uID4gMzIgJiYgY29udmVyc2lvbiA8IDEyNykgewogICAgICAgICAgICAgICAgIC8qIEl0J3MgdGhlIEFTQ0lJIHN1YnJhbmdlOyBjYXN0aW5nIHRvIGNoYXIgaXMgc2FmZQpAQCAtODkxLDggKzgyOSw4IEBACiAKIHN0YXRpYyBpbnQKIG91dHB1dF9tYXJrdXAoU3ViU3RyaW5nICpmaWVsZF9uYW1lLCBTdWJTdHJpbmcgKmZvcm1hdF9zcGVjLAotICAgICAgICAgICAgICBpbnQgZm9ybWF0X3NwZWNfbmVlZHNfZXhwYW5kaW5nLCBTVFJJTkdMSUJfQ0hBUiBjb252ZXJzaW9uLAotICAgICAgICAgICAgICBPdXRwdXRTdHJpbmcgKm91dHB1dCwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MsCisgICAgICAgICAgICAgIGludCBmb3JtYXRfc3BlY19uZWVkc19leHBhbmRpbmcsIFB5X1VDUzQgY29udmVyc2lvbiwKKyAgICAgICAgICAgICAgX1B5QWNjdSAqYWNjLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncywKICAgICAgICAgICAgICAgaW50IHJlY3Vyc2lvbl9kZXB0aCwgQXV0b051bWJlciAqYXV0b19udW1iZXIpCiB7CiAgICAgUHlPYmplY3QgKnRtcCA9IE5VTEw7CkBAIC05MDgsNyArODQ2LDcgQEAKIAogICAgIGlmIChjb252ZXJzaW9uICE9ICdcMCcpIHsKICAgICAgICAgdG1wID0gZG9fY29udmVyc2lvbihmaWVsZG9iaiwgY29udmVyc2lvbik7Ci0gICAgICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgaWYgKHRtcCA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWSh0bXApID09IC0xKQogICAgICAgICAgICAgZ290byBkb25lOwogCiAgICAgICAgIC8qIGRvIHRoZSBhc3NpZ25tZW50LCB0cmFuc2ZlcnJpbmcgb3duZXJzaGlwOiBmaWVsZG9iaiA9IHRtcCAqLwpAQCAtOTIxLDIwICs4NTksMTkgQEAKICAgICBpZiAoZm9ybWF0X3NwZWNfbmVlZHNfZXhwYW5kaW5nKSB7CiAgICAgICAgIHRtcCA9IGJ1aWxkX3N0cmluZyhmb3JtYXRfc3BlYywgYXJncywga3dhcmdzLCByZWN1cnNpb25fZGVwdGgtMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG9fbnVtYmVyKTsKLSAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQorICAgICAgICBpZiAodG1wID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHRtcCkgPT0gLTEpCiAgICAgICAgICAgICBnb3RvIGRvbmU7CiAKICAgICAgICAgLyogbm90ZSB0aGF0IGluIHRoZSBjYXNlIHdlJ3JlIGV4cGFuZGluZyB0aGUgZm9ybWF0IHN0cmluZywKICAgICAgICAgICAgdG1wIG11c3QgYmUga2VwdCBhcm91bmQgdW50aWwgYWZ0ZXIgdGhlIGNhbGwgdG8KICAgICAgICAgICAgcmVuZGVyX2ZpZWxkLiAqLwotICAgICAgICBTdWJTdHJpbmdfaW5pdCgmZXhwYW5kZWRfZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICAgICAgICAgICAgIFNUUklOR0xJQl9TVFIodG1wKSwgU1RSSU5HTElCX0xFTih0bXApKTsKKyAgICAgICAgU3ViU3RyaW5nX2luaXQoJmV4cGFuZGVkX2Zvcm1hdF9zcGVjLCB0bXAsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHRtcCkpOwogICAgICAgICBhY3R1YWxfZm9ybWF0X3NwZWMgPSAmZXhwYW5kZWRfZm9ybWF0X3NwZWM7CiAgICAgfQogICAgIGVsc2UKICAgICAgICAgYWN0dWFsX2Zvcm1hdF9zcGVjID0gZm9ybWF0X3NwZWM7CiAKLSAgICBpZiAocmVuZGVyX2ZpZWxkKGZpZWxkb2JqLCBhY3R1YWxfZm9ybWF0X3NwZWMsIG91dHB1dCkgPT0gMCkKKyAgICBpZiAocmVuZGVyX2ZpZWxkKGZpZWxkb2JqLCBhY3R1YWxfZm9ybWF0X3NwZWMsIGFjYykgPT0gMCkKICAgICAgICAgZ290byBkb25lOwogCiAgICAgcmVzdWx0ID0gMTsKQEAgLTk1NCw3ICs4OTEsNyBAQAogKi8KIHN0YXRpYyBpbnQKIGRvX21hcmt1cChTdWJTdHJpbmcgKmlucHV0LCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncywKLSAgICAgICAgICBPdXRwdXRTdHJpbmcgKm91dHB1dCwgaW50IHJlY3Vyc2lvbl9kZXB0aCwgQXV0b051bWJlciAqYXV0b19udW1iZXIpCisgICAgICAgICAgX1B5QWNjdSAqYWNjLCBpbnQgcmVjdXJzaW9uX2RlcHRoLCBBdXRvTnVtYmVyICphdXRvX251bWJlcikKIHsKICAgICBNYXJrdXBJdGVyYXRvciBpdGVyOwogICAgIGludCBmb3JtYXRfc3BlY19uZWVkc19leHBhbmRpbmc7CkBAIC05NjMsMTggKzkwMCwxOCBAQAogICAgIFN1YlN0cmluZyBsaXRlcmFsOwogICAgIFN1YlN0cmluZyBmaWVsZF9uYW1lOwogICAgIFN1YlN0cmluZyBmb3JtYXRfc3BlYzsKLSAgICBTVFJJTkdMSUJfQ0hBUiBjb252ZXJzaW9uOworICAgIFB5X1VDUzQgY29udmVyc2lvbjsKIAotICAgIE1hcmt1cEl0ZXJhdG9yX2luaXQoJml0ZXIsIGlucHV0LT5wdHIsIGlucHV0LT5lbmQgLSBpbnB1dC0+cHRyKTsKKyAgICBNYXJrdXBJdGVyYXRvcl9pbml0KCZpdGVyLCBpbnB1dC0+c3RyLCBpbnB1dC0+c3RhcnQsIGlucHV0LT5lbmQpOwogICAgIHdoaWxlICgocmVzdWx0ID0gTWFya3VwSXRlcmF0b3JfbmV4dCgmaXRlciwgJmxpdGVyYWwsICZmaWVsZF9wcmVzZW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmllbGRfbmFtZSwgJmZvcm1hdF9zcGVjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY29udmVyc2lvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZvcm1hdF9zcGVjX25lZWRzX2V4cGFuZGluZykpID09IDIpIHsKLSAgICAgICAgaWYgKCFvdXRwdXRfZGF0YShvdXRwdXQsIGxpdGVyYWwucHRyLCBsaXRlcmFsLmVuZCAtIGxpdGVyYWwucHRyKSkKKyAgICAgICAgaWYgKCFvdXRwdXRfZGF0YShhY2MsIGxpdGVyYWwuc3RyLCBsaXRlcmFsLnN0YXJ0LCBsaXRlcmFsLmVuZCkpCiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgaWYgKGZpZWxkX3ByZXNlbnQpCiAgICAgICAgICAgICBpZiAoIW91dHB1dF9tYXJrdXAoJmZpZWxkX25hbWUsICZmb3JtYXRfc3BlYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXRfc3BlY19uZWVkc19leHBhbmRpbmcsIGNvbnZlcnNpb24sIG91dHB1dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXRfc3BlY19uZWVkc19leHBhbmRpbmcsIGNvbnZlcnNpb24sIGFjYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLCBrd2FyZ3MsIHJlY3Vyc2lvbl9kZXB0aCwgYXV0b19udW1iZXIpKQogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KQEAgLTk5MCw0MyArOTI3LDI1IEBACiBidWlsZF9zdHJpbmcoU3ViU3RyaW5nICppbnB1dCwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MsCiAgICAgICAgICAgICAgaW50IHJlY3Vyc2lvbl9kZXB0aCwgQXV0b051bWJlciAqYXV0b19udW1iZXIpCiB7Ci0gICAgT3V0cHV0U3RyaW5nIG91dHB1dDsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBQeV9zc2l6ZV90IGNvdW50OwotCi0gICAgb3V0cHV0Lm9iaiA9IE5VTEw7IC8qIG5lZWRlZCBzbyBjbGVhbnVwIGNvZGUgYWx3YXlzIHdvcmtzICovCisgICAgX1B5QWNjdSBhY2M7CiAKICAgICAvKiBjaGVjayB0aGUgcmVjdXJzaW9uIGxldmVsICovCiAgICAgaWYgKHJlY3Vyc2lvbl9kZXB0aCA8PSAwKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgIk1heCBzdHJpbmcgcmVjdXJzaW9uIGV4Y2VlZGVkIik7Ci0gICAgICAgIGdvdG8gZG9uZTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgLyogaW5pdGlhbCBzaXplIGlzIHRoZSBsZW5ndGggb2YgdGhlIGZvcm1hdCBzdHJpbmcsIHBsdXMgdGhlIHNpemUKLSAgICAgICBpbmNyZW1lbnQuICBzZWVtcyBsaWtlIGEgcmVhc29uYWJsZSBkZWZhdWx0ICovCi0gICAgaWYgKCFvdXRwdXRfaW5pdGlhbGl6ZSgmb3V0cHV0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQtPmVuZCAtIGlucHV0LT5wdHIgKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5JVElBTF9TSVpFX0lOQ1JFTUVOVCkpCi0gICAgICAgIGdvdG8gZG9uZTsKKyAgICBpZiAoX1B5QWNjdV9Jbml0KCZhY2MpKQorICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGlmICghZG9fbWFya3VwKGlucHV0LCBhcmdzLCBrd2FyZ3MsICZvdXRwdXQsIHJlY3Vyc2lvbl9kZXB0aCwKKyAgICBpZiAoIWRvX21hcmt1cChpbnB1dCwgYXJncywga3dhcmdzLCAmYWNjLCByZWN1cnNpb25fZGVwdGgsCiAgICAgICAgICAgICAgICAgICAgYXV0b19udW1iZXIpKSB7Ci0gICAgICAgIGdvdG8gZG9uZTsKKyAgICAgICAgX1B5QWNjdV9EZXN0cm95KCZhY2MpOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBjb3VudCA9IG91dHB1dC5wdHIgLSBTVFJJTkdMSUJfU1RSKG91dHB1dC5vYmopOwotICAgIGlmIChTVFJJTkdMSUJfUkVTSVpFKCZvdXRwdXQub2JqLCBjb3VudCkgPCAwKSB7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLSAgICAvKiB0cmFuc2ZlciBvd25lcnNoaXAgdG8gcmVzdWx0ICovCi0gICAgcmVzdWx0ID0gb3V0cHV0Lm9iajsKLSAgICBvdXRwdXQub2JqID0gTlVMTDsKLQotZG9uZToKLSAgICBQeV9YREVDUkVGKG91dHB1dC5vYmopOwotICAgIHJldHVybiByZXN1bHQ7CisgICAgcmV0dXJuIF9QeUFjY3VfRmluaXNoKCZhY2MpOwogfQogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtMTA0Nyw4ICs5NjYsMTEgQEAKIAogICAgIEF1dG9OdW1iZXIgYXV0b19udW1iZXI7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIEF1dG9OdW1iZXJfSW5pdCgmYXV0b19udW1iZXIpOwotICAgIFN1YlN0cmluZ19pbml0KCZpbnB1dCwgU1RSSU5HTElCX1NUUihzZWxmKSwgU1RSSU5HTElCX0xFTihzZWxmKSk7CisgICAgU3ViU3RyaW5nX2luaXQoJmlucHV0LCBzZWxmLCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSk7CiAgICAgcmV0dXJuIGJ1aWxkX3N0cmluZygmaW5wdXQsIGFyZ3MsIGt3YXJncywgcmVjdXJzaW9uX2RlcHRoLCAmYXV0b19udW1iZXIpOwogfQogCkBAIC0xMDcwLDkgKzk5Miw3IEBACiAKIHR5cGVkZWYgc3RydWN0IHsKICAgICBQeU9iamVjdF9IRUFECi0KLSAgICBTVFJJTkdMSUJfT0JKRUNUICpzdHI7Ci0KKyAgICBQeU9iamVjdCAqc3RyOwogICAgIE1hcmt1cEl0ZXJhdG9yIGl0X21hcmt1cDsKIH0gZm9ybWF0dGVyaXRlcm9iamVjdDsKIApAQCAtMTA5Nyw3ICsxMDE3LDcgQEAKICAgICBTdWJTdHJpbmcgbGl0ZXJhbDsKICAgICBTdWJTdHJpbmcgZmllbGRfbmFtZTsKICAgICBTdWJTdHJpbmcgZm9ybWF0X3NwZWM7Ci0gICAgU1RSSU5HTElCX0NIQVIgY29udmVyc2lvbjsKKyAgICBQeV9VQ1M0IGNvbnZlcnNpb247CiAgICAgaW50IGZvcm1hdF9zcGVjX25lZWRzX2V4cGFuZGluZzsKICAgICBpbnQgZmllbGRfcHJlc2VudDsKICAgICBpbnQgcmVzdWx0ID0gTWFya3VwSXRlcmF0b3JfbmV4dCgmaXQtPml0X21hcmt1cCwgJmxpdGVyYWwsICZmaWVsZF9wcmVzZW50LApAQCAtMTE0MSw3ICsxMDYxLDggQEAKICAgICAgICAgICAgIFB5X0lOQ1JFRihjb252ZXJzaW9uX3N0cik7CiAgICAgICAgIH0KICAgICAgICAgZWxzZQotICAgICAgICAgICAgY29udmVyc2lvbl9zdHIgPSBTVFJJTkdMSUJfTkVXKCZjb252ZXJzaW9uLCAxKTsKKyAgICAgICAgICAgIGNvbnZlcnNpb25fc3RyID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY29udmVyc2lvbiwgMSk7CiAgICAgICAgIGlmIChjb252ZXJzaW9uX3N0ciA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBkb25lOwogCkBAIC0xMTk4LDcgKzExMTksNyBAQAogICAgZGVzY3JpYmluZyB0aGUgcGFyc2VkIGVsZW1lbnRzLiAgSXQncyBhIHdyYXBwZXIgYXJvdW5kCiAgICBzdHJpbmdsaWIvc3RyaW5nX2Zvcm1hdC5oJ3MgTWFya3VwSXRlcmF0b3IgKi8KIHN0YXRpYyBQeU9iamVjdCAqCi1mb3JtYXR0ZXJfcGFyc2VyKFB5T2JqZWN0ICppZ25vcmVkLCBTVFJJTkdMSUJfT0JKRUNUICpzZWxmKQorZm9ybWF0dGVyX3BhcnNlcihQeU9iamVjdCAqaWdub3JlZCwgUHlPYmplY3QgKnNlbGYpCiB7CiAgICAgZm9ybWF0dGVyaXRlcm9iamVjdCAqaXQ7CiAKQEAgLTEyMDcsNiArMTEyOCw5IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgaXQgPSBQeU9iamVjdF9OZXcoZm9ybWF0dGVyaXRlcm9iamVjdCwgJlB5Rm9ybWF0dGVySXRlcl9UeXBlKTsKICAgICBpZiAoaXQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xMjE2LDEwICsxMTQwLDcgQEAKICAgICBpdC0+c3RyID0gc2VsZjsKIAogICAgIC8qIGluaXRpYWxpemUgdGhlIGNvbnRhaW5lZCBNYXJrdXBJdGVyYXRvciAqLwotICAgIE1hcmt1cEl0ZXJhdG9yX2luaXQoJml0LT5pdF9tYXJrdXAsCi0gICAgICAgICAgICAgICAgICAgICAgICBTVFJJTkdMSUJfU1RSKHNlbGYpLAotICAgICAgICAgICAgICAgICAgICAgICAgU1RSSU5HTElCX0xFTihzZWxmKSk7Ci0KKyAgICBNYXJrdXBJdGVyYXRvcl9pbml0KCZpdC0+aXRfbWFya3VwLCAoUHlPYmplY3QqKXNlbGYsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpKTsKICAgICByZXR1cm4gKFB5T2JqZWN0ICopaXQ7CiB9CiAKQEAgLTEyMzUsOSArMTE1Niw3IEBACiAKIHR5cGVkZWYgc3RydWN0IHsKICAgICBQeU9iamVjdF9IRUFECi0KLSAgICBTVFJJTkdMSUJfT0JKRUNUICpzdHI7Ci0KKyAgICBQeU9iamVjdCAqc3RyOwogICAgIEZpZWxkTmFtZUl0ZXJhdG9yIGl0X2ZpZWxkOwogfSBmaWVsZG5hbWVpdGVyb2JqZWN0OwogCkBAIC0xMzM4LDcgKzEyNTcsNyBAQAogICAgZmllbGRfbmFtZV9zcGxpdC4gIFRoZSBpdGVyYXRvciBpdCByZXR1cm5zIGlzIGEKICAgIEZpZWxkTmFtZUl0ZXJhdG9yICovCiBzdGF0aWMgUHlPYmplY3QgKgotZm9ybWF0dGVyX2ZpZWxkX25hbWVfc3BsaXQoUHlPYmplY3QgKmlnbm9yZWQsIFNUUklOR0xJQl9PQkpFQ1QgKnNlbGYpCitmb3JtYXR0ZXJfZmllbGRfbmFtZV9zcGxpdChQeU9iamVjdCAqaWdub3JlZCwgUHlPYmplY3QgKnNlbGYpCiB7CiAgICAgU3ViU3RyaW5nIGZpcnN0OwogICAgIFB5X3NzaXplX3QgZmlyc3RfaWR4OwpAQCAtMTM1Miw2ICsxMjcxLDkgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpdCA9IFB5T2JqZWN0X05ldyhmaWVsZG5hbWVpdGVyb2JqZWN0LCAmUHlGaWVsZE5hbWVJdGVyX1R5cGUpOwogICAgIGlmIChpdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTEzNjMsOCArMTI4NSw3IEBACiAKICAgICAvKiBQYXNzIGluIGF1dG9fbnVtYmVyID0gTlVMTC4gV2UnbGwgcmV0dXJuIGFuIGVtcHR5IHN0cmluZyBmb3IKICAgICAgICBmaXJzdF9vYmogaW4gdGhhdCBjYXNlLiAqLwotICAgIGlmICghZmllbGRfbmFtZV9zcGxpdChTVFJJTkdMSUJfU1RSKHNlbGYpLAotICAgICAgICAgICAgICAgICAgICAgICAgICBTVFJJTkdMSUJfTEVOKHNlbGYpLAorICAgIGlmICghZmllbGRfbmFtZV9zcGxpdCgoUHlPYmplY3QqKXNlbGYsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmZmlyc3QsICZmaXJzdF9pZHgsICZpdC0+aXRfZmllbGQsIE5VTEwpKQogICAgICAgICBnb3RvIGRvbmU7CiAKZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL3VuaWNvZGVkZWZzLmggYi9PYmplY3RzL3N0cmluZ2xpYi91bmljb2RlZGVmcy5oCmluZGV4IDA5ZGFlNmQuLmYxNmYyMWUgMTAwNjQ0Ci0tLSBhL09iamVjdHMvc3RyaW5nbGliL3VuaWNvZGVkZWZzLmgKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvdW5pY29kZWRlZnMuaApAQCAtNiw3ICs2LDEwIEBACiAgICBjb21waWxlZCBhcyB1bmljb2RlLiAqLwogI2RlZmluZSBTVFJJTkdMSUJfSVNfVU5JQ09ERSAgICAgMQogCisjZGVmaW5lIEZBU1RTRUFSQ0ggICAgICAgICAgICAgICBmYXN0c2VhcmNoCisjZGVmaW5lIFNUUklOR0xJQihGKSAgICAgICAgICAgICBzdHJpbmdsaWJfIyNGCiAjZGVmaW5lIFNUUklOR0xJQl9PQkpFQ1QgICAgICAgICBQeVVuaWNvZGVPYmplY3QKKyNkZWZpbmUgU1RSSU5HTElCX1NJWkVPRl9DSEFSICAgIFB5X1VOSUNPREVfU0laRQogI2RlZmluZSBTVFJJTkdMSUJfQ0hBUiAgICAgICAgICAgUHlfVU5JQ09ERQogI2RlZmluZSBTVFJJTkdMSUJfVFlQRV9OQU1FICAgICAgInVuaWNvZGUiCiAjZGVmaW5lIFNUUklOR0xJQl9QQVJTRV9DT0RFICAgICAiVSIKQEAgLTE1LDE3ICsxOCwxMiBAQAogI2RlZmluZSBTVFJJTkdMSUJfSVNMSU5FQlJFQUsgICAgQkxPT01fTElORUJSRUFLCiAjZGVmaW5lIFNUUklOR0xJQl9JU0RFQ0lNQUwgICAgICBQeV9VTklDT0RFX0lTREVDSU1BTAogI2RlZmluZSBTVFJJTkdMSUJfVE9ERUNJTUFMICAgICAgUHlfVU5JQ09ERV9UT0RFQ0lNQUwKLSNkZWZpbmUgU1RSSU5HTElCX1RPVVBQRVIgICAgICAgIFB5X1VOSUNPREVfVE9VUFBFUgotI2RlZmluZSBTVFJJTkdMSUJfVE9MT1dFUiAgICAgICAgUHlfVU5JQ09ERV9UT0xPV0VSCi0jZGVmaW5lIFNUUklOR0xJQl9GSUxMICAgICAgICAgICBQeV9VTklDT0RFX0ZJTEwKICNkZWZpbmUgU1RSSU5HTElCX1NUUiAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFCiAjZGVmaW5lIFNUUklOR0xJQl9MRU4gICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUKICNkZWZpbmUgU1RSSU5HTElCX05FVyAgICAgICAgICAgIFB5VW5pY29kZV9Gcm9tVW5pY29kZQogI2RlZmluZSBTVFJJTkdMSUJfUkVTSVpFICAgICAgICAgUHlVbmljb2RlX1Jlc2l6ZQogI2RlZmluZSBTVFJJTkdMSUJfQ0hFQ0sgICAgICAgICAgUHlVbmljb2RlX0NoZWNrCiAjZGVmaW5lIFNUUklOR0xJQl9DSEVDS19FWEFDVCAgICBQeVVuaWNvZGVfQ2hlY2tFeGFjdAotI2RlZmluZSBTVFJJTkdMSUJfR1JPVVBJTkcgICAgICAgX1B5VW5pY29kZV9JbnNlcnRUaG91c2FuZHNHcm91cGluZwotI2RlZmluZSBTVFJJTkdMSUJfR1JPVVBJTkdfTE9DQUxFIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmdMb2NhbGUKIAogI2lmIFBZX1ZFUlNJT05fSEVYIDwgMHgwMzAwMDAwMAogI2RlZmluZSBTVFJJTkdMSUJfVE9TVFIgICAgICAgICAgUHlPYmplY3RfVW5pY29kZQpkaWZmIC0tZ2l0IGEvT2JqZWN0cy90dXBsZW9iamVjdC5jIGIvT2JqZWN0cy90dXBsZW9iamVjdC5jCmluZGV4IGY2ZGJjMzEuLmQ1ODgzOWUgMTAwNjQ0Ci0tLSBhL09iamVjdHMvdHVwbGVvYmplY3QuYworKysgYi9PYmplY3RzL3R1cGxlb2JqZWN0LmMKQEAgLTg2LDcgKzg2LDcgQEAKICAgICAgICAgewogICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIH0KLSAgICAgICAgbmJ5dGVzICs9IHNpemVvZihQeVR1cGxlT2JqZWN0KSAtIHNpemVvZihQeU9iamVjdCAqKTsKKyAgICAgICAgLyogbmJ5dGVzICs9IHNpemVvZihQeVR1cGxlT2JqZWN0KSAtIHNpemVvZihQeU9iamVjdCAqKTsgKi8KIAogICAgICAgICBvcCA9IFB5T2JqZWN0X0dDX05ld1ZhcihQeVR1cGxlT2JqZWN0LCAmUHlUdXBsZV9UeXBlLCBzaXplKTsKICAgICAgICAgaWYgKG9wID09IE5VTEwpCkBAIC0zMTIsMTEgKzMxMiwxMiBAQAogc3RhdGljIFB5X2hhc2hfdAogdHVwbGVoYXNoKFB5VHVwbGVPYmplY3QgKnYpCiB7Ci0gICAgcmVnaXN0ZXIgUHlfaGFzaF90IHgsIHk7CisgICAgcmVnaXN0ZXIgUHlfdWhhc2hfdCB4OworICAgIHJlZ2lzdGVyIFB5X2hhc2hfdCB5OwogICAgIHJlZ2lzdGVyIFB5X3NzaXplX3QgbGVuID0gUHlfU0laRSh2KTsKICAgICByZWdpc3RlciBQeU9iamVjdCAqKnA7Ci0gICAgUHlfaGFzaF90IG11bHQgPSBfUHlIQVNIX01VTFRJUExJRVI7Ci0gICAgeCA9IDB4MzQ1Njc4TDsKKyAgICBQeV91aGFzaF90IG11bHQgPSBfUHlIQVNIX01VTFRJUExJRVI7CisgICAgeCA9IDB4MzQ1Njc4OwogICAgIHAgPSB2LT5vYl9pdGVtOwogICAgIHdoaWxlICgtLWxlbiA+PSAwKSB7CiAgICAgICAgIHkgPSBQeU9iamVjdF9IYXNoKCpwKyspOwpAQCAtMzI3LDcgKzMyOCw3IEBACiAgICAgICAgIG11bHQgKz0gKFB5X2hhc2hfdCkoODI1MjBMICsgbGVuICsgbGVuKTsKICAgICB9CiAgICAgeCArPSA5NzUzMUw7Ci0gICAgaWYgKHggPT0gLTEpCisgICAgaWYgKHggPT0gKFB5X3VoYXNoX3QpLTEpCiAgICAgICAgIHggPSAtMjsKICAgICByZXR1cm4geDsKIH0KQEAgLTU0MywxMCArNTQ0LDggQEAKICAgICBQeV9zc2l6ZV90IGk7CiAgICAgUHlfc3NpemVfdCB2bGVuLCB3bGVuOwogCi0gICAgaWYgKCFQeVR1cGxlX0NoZWNrKHYpIHx8ICFQeVR1cGxlX0NoZWNrKHcpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFQeVR1cGxlX0NoZWNrKHYpIHx8ICFQeVR1cGxlX0NoZWNrKHcpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAKICAgICB2dCA9IChQeVR1cGxlT2JqZWN0ICopdjsKICAgICB3dCA9IChQeVR1cGxlT2JqZWN0ICopdzsKZGlmZiAtLWdpdCBhL09iamVjdHMvdHlwZW9iamVjdC5jIGIvT2JqZWN0cy90eXBlb2JqZWN0LmMKaW5kZXggYzM4MjJhYi4uNTBiOTcyMyAxMDA2NDQKLS0tIGEvT2JqZWN0cy90eXBlb2JqZWN0LmMKKysrIGIvT2JqZWN0cy90eXBlb2JqZWN0LmMKQEAgLTIwLDEwICsyMCwxMSBAQAogICAgICAgICAgPj4gKDgqc2l6ZW9mKHVuc2lnbmVkIGludCkgLSBNQ0FDSEVfU0laRV9FWFApKQogI2RlZmluZSBNQ0FDSEVfSEFTSF9NRVRIT0QodHlwZSwgbmFtZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBNQ0FDSEVfSEFTSCgodHlwZSktPnRwX3ZlcnNpb25fdGFnLCAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgICAgICAgICAgICAgKChQeVVuaWNvZGVPYmplY3QgKikobmFtZSkpLT5oYXNoKQorICAgICAgICAgICAgICAgICAgICAoKFB5QVNDSUlPYmplY3QgKikobmFtZSkpLT5oYXNoKQogI2RlZmluZSBNQ0FDSEVfQ0FDSEVBQkxFX05BTUUobmFtZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBQeVVuaWNvZGVfQ2hlY2tFeGFjdChuYW1lKSAmJiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShuYW1lKSA8PSBNQ0FDSEVfTUFYX0FUVFJfU0laRQorICAgICAgICBQeVVuaWNvZGVfUkVBRFkobmFtZSkgIT0gLTEgJiYgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSA8PSBNQ0FDSEVfTUFYX0FUVFJfU0laRQogCiBzdHJ1Y3QgbWV0aG9kX2NhY2hlX2VudHJ5IHsKICAgICB1bnNpZ25lZCBpbnQgdmVyc2lvbjsKQEAgLTM0LDYgKzM1LDkgQEAKIHN0YXRpYyBzdHJ1Y3QgbWV0aG9kX2NhY2hlX2VudHJ5IG1ldGhvZF9jYWNoZVsxIDw8IE1DQUNIRV9TSVpFX0VYUF07CiBzdGF0aWMgdW5zaWduZWQgaW50IG5leHRfdmVyc2lvbl90YWcgPSAwOwogCitfUHlfSURFTlRJRklFUihfX2RpY3RfXyk7CitfUHlfSURFTlRJRklFUihfX2NsYXNzX18pOworCiB1bnNpZ25lZCBpbnQKIFB5VHlwZV9DbGVhckNhY2hlKHZvaWQpCiB7CkBAIC05NiwxNSArMTAwLDEzIEBACiBzdGF0aWMgdm9pZAogdHlwZV9tcm9fbW9kaWZpZWQoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqYmFzZXMpIHsKICAgICAvKgotICAgICAgIENoZWNrIHRoYXQgYWxsIGJhc2UgY2xhc3NlcyBvciBlbGVtZW50cyBvZiB0aGUgbXJvIG9mIHR5cGUgYXJlCisgICAgICAgQ2hlY2sgdGhhdCBhbGwgYmFzZSBjbGFzc2VzIG9yIGVsZW1lbnRzIG9mIHRoZSBNUk8gb2YgdHlwZSBhcmUKICAgICAgICBhYmxlIHRvIGJlIGNhY2hlZC4gIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGFmdGVyIHRoZSBiYXNlCiAgICAgICAgY2xhc3NlcyBvciBtcm8gb2YgdGhlIHR5cGUgYXJlIGFsdGVyZWQuCiAKICAgICAgICBVbnNldCBIQVZFX1ZFUlNJT05fVEFHIGFuZCBWQUxJRF9WRVJTSU9OX1RBRyBpZiB0aGUgdHlwZQotICAgICAgIGluaGVyaXRzIGZyb20gYW4gb2xkLXN0eWxlIGNsYXNzLCBlaXRoZXIgZGlyZWN0bHkgb3IgaWYgaXQKLSAgICAgICBhcHBlYXJzIGluIHRoZSBNUk8gb2YgYSBuZXctc3R5bGUgY2xhc3MuICBObyBzdXBwb3J0IGVpdGhlciBmb3IKLSAgICAgICBjdXN0b20gTVJPcyB0aGF0IGluY2x1ZGUgdHlwZXMgdGhhdCBhcmUgbm90IG9mZmljaWFsbHkgc3VwZXIKLSAgICAgICB0eXBlcy4KKyAgICAgICBoYXMgYSBjdXN0b20gTVJPIHRoYXQgaW5jbHVkZXMgYSB0eXBlIHdoaWNoIGlzIG5vdCBvZmZpY2lhbGx5CisgICAgICAgc3VwZXIgdHlwZS4KIAogICAgICAgIENhbGxlZCBmcm9tIG1yb19pbnRlcm5hbCwgd2hpY2ggd2lsbCBzdWJzZXF1ZW50bHkgYmUgY2FsbGVkIG9uCiAgICAgICAgZWFjaCBzdWJjbGFzcyB3aGVuIHRoZWlyIG1ybyBpcyByZWN1cnNpdmVseSB1cGRhdGVkLgpAQCAtMTIwLDExICsxMjIsNyBAQAogICAgICAgICBQeU9iamVjdCAqYiA9IFB5VHVwbGVfR0VUX0lURU0oYmFzZXMsIGkpOwogICAgICAgICBQeVR5cGVPYmplY3QgKmNsczsKIAotICAgICAgICBpZiAoIVB5VHlwZV9DaGVjayhiKSApIHsKLSAgICAgICAgICAgIGNsZWFyID0gMTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0KKyAgICAgICAgYXNzZXJ0KFB5VHlwZV9DaGVjayhiKSk7CiAgICAgICAgIGNscyA9IChQeVR5cGVPYmplY3QgKiliOwogCiAgICAgICAgIGlmICghUHlUeXBlX0hhc0ZlYXR1cmUoY2xzLCBQeV9UUEZMQUdTX0hBVkVfVkVSU0lPTl9UQUcpIHx8CkBAIC0yMDEsNiArMTk5LDIyIEBACiAgICAgezB9CiB9OwogCitzdGF0aWMgaW50CitjaGVja19zZXRfc3BlY2lhbF90eXBlX2F0dHIoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqdmFsdWUsIGNvbnN0IGNoYXIgKm5hbWUpCit7CisgICAgaWYgKCEodHlwZS0+dHBfZmxhZ3MgJiBQeV9UUEZMQUdTX0hFQVBUWVBFKSkgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgImNhbid0IHNldCAlcy4lcyIsIHR5cGUtPnRwX25hbWUsIG5hbWUpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgaWYgKCF2YWx1ZSkgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgImNhbid0IGRlbGV0ZSAlcy4lcyIsIHR5cGUtPnRwX25hbWUsIG5hbWUpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgcmV0dXJuIDE7Cit9CisKIHN0YXRpYyBQeU9iamVjdCAqCiB0eXBlX25hbWUoUHlUeXBlT2JqZWN0ICp0eXBlLCB2b2lkICpjb250ZXh0KQogewpAQCAtMjIyLDYgKzIzNiwxOSBAQAogICAgIH0KIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK3R5cGVfcXVhbG5hbWUoUHlUeXBlT2JqZWN0ICp0eXBlLCB2b2lkICpjb250ZXh0KQoreworICAgIGlmICh0eXBlLT50cF9mbGFncyAmIFB5X1RQRkxBR1NfSEVBUFRZUEUpIHsKKyAgICAgICAgUHlIZWFwVHlwZU9iamVjdCogZXQgPSAoUHlIZWFwVHlwZU9iamVjdCopdHlwZTsKKyAgICAgICAgUHlfSU5DUkVGKGV0LT5odF9xdWFsbmFtZSk7CisgICAgICAgIHJldHVybiBldC0+aHRfcXVhbG5hbWU7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICByZXR1cm4gdHlwZV9uYW1lKHR5cGUsIGNvbnRleHQpOworICAgIH0KK30KKwogc3RhdGljIGludAogdHlwZV9zZXRfbmFtZShQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICp2YWx1ZSwgdm9pZCAqY29udGV4dCkKIHsKQEAgLTIyOSwxNiArMjU2LDggQEAKICAgICBjaGFyICp0cF9uYW1lOwogICAgIFB5T2JqZWN0ICp0bXA7CiAKLSAgICBpZiAoISh0eXBlLT50cF9mbGFncyAmIFB5X1RQRkxBR1NfSEVBUFRZUEUpKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiY2FuJ3Qgc2V0ICVzLl9fbmFtZV9fIiwgdHlwZS0+dHBfbmFtZSk7CisgICAgaWYgKCFjaGVja19zZXRfc3BlY2lhbF90eXBlX2F0dHIodHlwZSwgdmFsdWUsICJfX25hbWVfXyIpKQogICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIGlmICghdmFsdWUpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJjYW4ndCBkZWxldGUgJXMuX19uYW1lX18iLCB0eXBlLT50cF9uYW1lKTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh2YWx1ZSkpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICJjYW4gb25seSBhc3NpZ24gc3RyaW5nIHRvICVzLl9fbmFtZV9fLCBub3QgJyVzJyIsCkBAIC0yNzQsNiArMjkzLDI1IEBACiAgICAgcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBpbnQKK3R5cGVfc2V0X3F1YWxuYW1lKFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKnZhbHVlLCB2b2lkICpjb250ZXh0KQoreworICAgIFB5SGVhcFR5cGVPYmplY3QqIGV0OworCisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodmFsdWUpKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiY2FuIG9ubHkgYXNzaWduIHN0cmluZyB0byAlcy5fX3F1YWxuYW1lX18sIG5vdCAnJXMnIiwKKyAgICAgICAgICAgICAgICAgICAgIHR5cGUtPnRwX25hbWUsIFB5X1RZUEUodmFsdWUpLT50cF9uYW1lKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGV0ID0gKFB5SGVhcFR5cGVPYmplY3QqKXR5cGU7CisgICAgUHlfSU5DUkVGKHZhbHVlKTsKKyAgICBQeV9ERUNSRUYoZXQtPmh0X3F1YWxuYW1lKTsKKyAgICBldC0+aHRfcXVhbG5hbWUgPSB2YWx1ZTsKKyAgICByZXR1cm4gMDsKK30KKwogc3RhdGljIFB5T2JqZWN0ICoKIHR5cGVfbW9kdWxlKFB5VHlwZU9iamVjdCAqdHlwZSwgdm9pZCAqY29udGV4dCkKIHsKQEAgLTMwMSwxNiArMzM5LDggQEAKIHN0YXRpYyBpbnQKIHR5cGVfc2V0X21vZHVsZShQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICp2YWx1ZSwgdm9pZCAqY29udGV4dCkKIHsKLSAgICBpZiAoISh0eXBlLT50cF9mbGFncyAmIFB5X1RQRkxBR1NfSEVBUFRZUEUpKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiY2FuJ3Qgc2V0ICVzLl9fbW9kdWxlX18iLCB0eXBlLT50cF9uYW1lKTsKKyAgICBpZiAoIWNoZWNrX3NldF9zcGVjaWFsX3R5cGVfYXR0cih0eXBlLCB2YWx1ZSwgIl9fbW9kdWxlX18iKSkKICAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBpZiAoIXZhbHVlKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiY2FuJ3QgZGVsZXRlICVzLl9fbW9kdWxlX18iLCB0eXBlLT50cF9uYW1lKTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KIAogICAgIFB5VHlwZV9Nb2RpZmllZCh0eXBlKTsKIApAQCAtNDMzLDE2ICs0NjMsOCBAQAogICAgIFB5VHlwZU9iamVjdCAqbmV3X2Jhc2UsICpvbGRfYmFzZTsKICAgICBQeU9iamVjdCAqb2xkX2Jhc2VzLCAqb2xkX21ybzsKIAotICAgIGlmICghKHR5cGUtPnRwX2ZsYWdzICYgUHlfVFBGTEFHU19IRUFQVFlQRSkpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJjYW4ndCBzZXQgJXMuX19iYXNlc19fIiwgdHlwZS0+dHBfbmFtZSk7CisgICAgaWYgKCFjaGVja19zZXRfc3BlY2lhbF90eXBlX2F0dHIodHlwZSwgdmFsdWUsICJfX2Jhc2VzX18iKSkKICAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBpZiAoIXZhbHVlKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiY2FuJ3QgZGVsZXRlICVzLl9fYmFzZXNfXyIsIHR5cGUtPnRwX25hbWUpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQogICAgIGlmICghUHlUdXBsZV9DaGVjayh2YWx1ZSkpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAiY2FuIG9ubHkgYXNzaWduIHR1cGxlIHRvICVzLl9fYmFzZXNfXywgbm90ICVzIiwKQEAgLTQ2MCw3ICs0ODIsNyBAQAogICAgICAgICBpZiAoIVB5VHlwZV9DaGVjayhvYikpIHsKICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdCgKICAgICAgICAgICAgICAgICBQeUV4Y19UeXBlRXJyb3IsCi0gICAgIiVzLl9fYmFzZXNfXyBtdXN0IGJlIHR1cGxlIG9mIG9sZC0gb3IgbmV3LXN0eWxlIGNsYXNzZXMsIG5vdCAnJXMnIiwKKyAgICAiJXMuX19iYXNlc19fIG11c3QgYmUgdHVwbGUgb2YgY2xhc3Nlcywgbm90ICclcyciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGUtPnRwX25hbWUsIFB5X1RZUEUob2IpLT50cF9uYW1lKTsKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICB9CkBAIC01OTYsNiArNjE4LDE1IEBACiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorc3RhdGljIGludAordHlwZV9zZXRfZG9jKFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKnZhbHVlLCB2b2lkICpjb250ZXh0KQoreworICAgIGlmICghY2hlY2tfc2V0X3NwZWNpYWxfdHlwZV9hdHRyKHR5cGUsIHZhbHVlLCAiX19kb2NfXyIpKQorICAgICAgICByZXR1cm4gLTE7CisgICAgUHlUeXBlX01vZGlmaWVkKHR5cGUpOworICAgIHJldHVybiBQeURpY3RfU2V0SXRlbVN0cmluZyh0eXBlLT50cF9kaWN0LCAiX19kb2NfXyIsIHZhbHVlKTsKK30KKwogc3RhdGljIFB5T2JqZWN0ICoKIHR5cGVfX19pbnN0YW5jZWNoZWNrX18oUHlPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICppbnN0KQogewpAQCAtNjI2LDEyICs2NTcsMTMgQEAKIAogc3RhdGljIFB5R2V0U2V0RGVmIHR5cGVfZ2V0c2V0c1tdID0gewogICAgIHsiX19uYW1lX18iLCAoZ2V0dGVyKXR5cGVfbmFtZSwgKHNldHRlcil0eXBlX3NldF9uYW1lLCBOVUxMfSwKKyAgICB7Il9fcXVhbG5hbWVfXyIsIChnZXR0ZXIpdHlwZV9xdWFsbmFtZSwgKHNldHRlcil0eXBlX3NldF9xdWFsbmFtZSwgTlVMTH0sCiAgICAgeyJfX2Jhc2VzX18iLCAoZ2V0dGVyKXR5cGVfZ2V0X2Jhc2VzLCAoc2V0dGVyKXR5cGVfc2V0X2Jhc2VzLCBOVUxMfSwKICAgICB7Il9fbW9kdWxlX18iLCAoZ2V0dGVyKXR5cGVfbW9kdWxlLCAoc2V0dGVyKXR5cGVfc2V0X21vZHVsZSwgTlVMTH0sCiAgICAgeyJfX2Fic3RyYWN0bWV0aG9kc19fIiwgKGdldHRlcil0eXBlX2Fic3RyYWN0bWV0aG9kcywKICAgICAgKHNldHRlcil0eXBlX3NldF9hYnN0cmFjdG1ldGhvZHMsIE5VTEx9LAogICAgIHsiX19kaWN0X18iLCAgKGdldHRlcil0eXBlX2RpY3QsICBOVUxMLCBOVUxMfSwKLSAgICB7Il9fZG9jX18iLCAoZ2V0dGVyKXR5cGVfZ2V0X2RvYywgTlVMTCwgTlVMTH0sCisgICAgeyJfX2RvY19fIiwgKGdldHRlcil0eXBlX2dldF9kb2MsIChzZXR0ZXIpdHlwZV9zZXRfZG9jLCBOVUxMfSwKICAgICB7MH0KIH07CiAKQEAgLTY0Nyw3ICs2NzksNyBAQAogICAgICAgICBQeV9ERUNSRUYobW9kKTsKICAgICAgICAgbW9kID0gTlVMTDsKICAgICB9Ci0gICAgbmFtZSA9IHR5cGVfbmFtZSh0eXBlLCBOVUxMKTsKKyAgICBuYW1lID0gdHlwZV9xdWFsbmFtZSh0eXBlLCBOVUxMKTsKICAgICBpZiAobmFtZSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIApAQCAtOTAyLDcgKzkzNCw3IEBACiAKICAgICAvKiBGaW5kIHRoZSBuZWFyZXN0IGJhc2Ugd2l0aCBhIGRpZmZlcmVudCB0cF9kZWFsbG9jICovCiAgICAgYmFzZSA9IHR5cGU7Ci0gICAgd2hpbGUgKChiYXNlZGVhbGxvYyA9IGJhc2UtPnRwX2RlYWxsb2MpID09IHN1YnR5cGVfZGVhbGxvYykgeworICAgIHdoaWxlICgoLypiYXNlZGVhbGxvYyA9Ki8gYmFzZS0+dHBfZGVhbGxvYykgPT0gc3VidHlwZV9kZWFsbG9jKSB7CiAgICAgICAgIGJhc2UgPSBiYXNlLT50cF9iYXNlOwogICAgICAgICBhc3NlcnQoYmFzZSk7CiAgICAgfQpAQCAtMTEyNSwxNiArMTE1NywxNCBAQAogKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKLWxvb2t1cF9tYXliZShQeU9iamVjdCAqc2VsZiwgY2hhciAqYXR0cnN0ciwgUHlPYmplY3QgKiphdHRyb2JqKQorbG9va3VwX21heWJlKFB5T2JqZWN0ICpzZWxmLCBfUHlfSWRlbnRpZmllciAqYXR0cmlkKQogewotICAgIFB5T2JqZWN0ICpyZXM7CisgICAgUHlPYmplY3QgKmF0dHIsICpyZXM7CiAKLSAgICBpZiAoKmF0dHJvYmogPT0gTlVMTCkgewotICAgICAgICAqYXR0cm9iaiA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKGF0dHJzdHIpOwotICAgICAgICBpZiAoKmF0dHJvYmogPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICByZXMgPSBfUHlUeXBlX0xvb2t1cChQeV9UWVBFKHNlbGYpLCAqYXR0cm9iaik7CisgICAgYXR0ciA9IF9QeVVuaWNvZGVfRnJvbUlkKGF0dHJpZCk7CisgICAgaWYgKGF0dHIgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzID0gX1B5VHlwZV9Mb29rdXAoUHlfVFlQRShzZWxmKSwgYXR0cik7CiAgICAgaWYgKHJlcyAhPSBOVUxMKSB7CiAgICAgICAgIGRlc2NyZ2V0ZnVuYyBmOwogICAgICAgICBpZiAoKGYgPSBQeV9UWVBFKHJlcyktPnRwX2Rlc2NyX2dldCkgPT0gTlVMTCkKQEAgLTExNDYsMTggKzExNzYsMTggQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKLWxvb2t1cF9tZXRob2QoUHlPYmplY3QgKnNlbGYsIGNoYXIgKmF0dHJzdHIsIFB5T2JqZWN0ICoqYXR0cm9iaikKK2xvb2t1cF9tZXRob2QoUHlPYmplY3QgKnNlbGYsIF9QeV9JZGVudGlmaWVyICphdHRyaWQpCiB7Ci0gICAgUHlPYmplY3QgKnJlcyA9IGxvb2t1cF9tYXliZShzZWxmLCBhdHRyc3RyLCBhdHRyb2JqKTsKKyAgICBQeU9iamVjdCAqcmVzID0gbG9va3VwX21heWJlKHNlbGYsIGF0dHJpZCk7CiAgICAgaWYgKHJlcyA9PSBOVUxMICYmICFQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNfQXR0cmlidXRlRXJyb3IsICphdHRyb2JqKTsKKyAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjX0F0dHJpYnV0ZUVycm9yLCBhdHRyaWQtPm9iamVjdCk7CiAgICAgcmV0dXJuIHJlczsKIH0KIAogUHlPYmplY3QgKgotX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoUHlPYmplY3QgKnNlbGYsIGNoYXIgKmF0dHJzdHIsIFB5T2JqZWN0ICoqYXR0cm9iaikKK19QeU9iamVjdF9Mb29rdXBTcGVjaWFsKFB5T2JqZWN0ICpzZWxmLCBfUHlfSWRlbnRpZmllciAqYXR0cmlkKQogewotICAgIHJldHVybiBsb29rdXBfbWF5YmUoc2VsZiwgYXR0cnN0ciwgYXR0cm9iaik7CisgICAgcmV0dXJuIGxvb2t1cF9tYXliZShzZWxmLCBhdHRyaWQpOwogfQogCiAvKiBBIHZhcmlhdGlvbiBvZiBQeU9iamVjdF9DYWxsTWV0aG9kIHRoYXQgdXNlcyBsb29rdXBfbWV0aG9kKCkKQEAgLTExNjUsMTcgKzExOTUsMTcgQEAKICAgIGFzIGxvb2t1cF9tZXRob2QgdG8gY2FjaGUgdGhlIGludGVybmVkIG5hbWUgc3RyaW5nIG9iamVjdC4gKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKLWNhbGxfbWV0aG9kKFB5T2JqZWN0ICpvLCBjaGFyICpuYW1lLCBQeU9iamVjdCAqKm5hbWVvYmosIGNoYXIgKmZvcm1hdCwgLi4uKQorY2FsbF9tZXRob2QoUHlPYmplY3QgKm8sIF9QeV9JZGVudGlmaWVyICpuYW1laWQsIGNoYXIgKmZvcm1hdCwgLi4uKQogewogICAgIHZhX2xpc3QgdmE7CiAgICAgUHlPYmplY3QgKmFyZ3MsICpmdW5jID0gMCwgKnJldHZhbDsKICAgICB2YV9zdGFydCh2YSwgZm9ybWF0KTsKIAotICAgIGZ1bmMgPSBsb29rdXBfbWF5YmUobywgbmFtZSwgbmFtZW9iaik7CisgICAgZnVuYyA9IGxvb2t1cF9tYXliZShvLCBuYW1laWQpOwogICAgIGlmIChmdW5jID09IE5VTEwpIHsKICAgICAgICAgdmFfZW5kKHZhKTsKICAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjX0F0dHJpYnV0ZUVycm9yLCAqbmFtZW9iaik7CisgICAgICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNfQXR0cmlidXRlRXJyb3IsIG5hbWVpZC0+b2JqZWN0KTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCkBAIC0xMjAxLDE5ICsxMjMxLDE3IEBACiAvKiBDbG9uZSBvZiBjYWxsX21ldGhvZCgpIHRoYXQgcmV0dXJucyBOb3RJbXBsZW1lbnRlZCB3aGVuIHRoZSBsb29rdXAgZmFpbHMuICovCiAKIHN0YXRpYyBQeU9iamVjdCAqCi1jYWxsX21heWJlKFB5T2JqZWN0ICpvLCBjaGFyICpuYW1lLCBQeU9iamVjdCAqKm5hbWVvYmosIGNoYXIgKmZvcm1hdCwgLi4uKQorY2FsbF9tYXliZShQeU9iamVjdCAqbywgX1B5X0lkZW50aWZpZXIgKm5hbWVpZCwgY2hhciAqZm9ybWF0LCAuLi4pCiB7CiAgICAgdmFfbGlzdCB2YTsKICAgICBQeU9iamVjdCAqYXJncywgKmZ1bmMgPSAwLCAqcmV0dmFsOwogICAgIHZhX3N0YXJ0KHZhLCBmb3JtYXQpOwogCi0gICAgZnVuYyA9IGxvb2t1cF9tYXliZShvLCBuYW1lLCBuYW1lb2JqKTsKKyAgICBmdW5jID0gbG9va3VwX21heWJlKG8sIG5hbWVpZCk7CiAgICAgaWYgKGZ1bmMgPT0gTlVMTCkgewogICAgICAgICB2YV9lbmQodmEpOwotICAgICAgICBpZiAoIVB5RXJyX09jY3VycmVkKCkpIHsKLSAgICAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgICAgIH0KKyAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKQEAgLTEyNzksNyArMTMwNyw4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogY2xhc3NfbmFtZShQeU9iamVjdCAqY2xzKQogewotICAgIFB5T2JqZWN0ICpuYW1lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhjbHMsICJfX25hbWVfXyIpOworICAgIF9QeV9JREVOVElGSUVSKF9fbmFtZV9fKTsKKyAgICBQeU9iamVjdCAqbmFtZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoY2xzLCAmUHlJZF9fX25hbWVfXyk7CiAgICAgaWYgKG5hbWUgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICBQeV9YREVDUkVGKG5hbWUpOwpAQCAtMTUzNCw5ICsxNTYzLDkgQEAKICAgICAgICAgcmVzdWx0ID0gbXJvX2ltcGxlbWVudGF0aW9uKHR5cGUpOwogICAgIH0KICAgICBlbHNlIHsKLSAgICAgICAgc3RhdGljIFB5T2JqZWN0ICptcm9fc3RyOworICAgICAgICBfUHlfSURFTlRJRklFUihtcm8pOwogICAgICAgICBjaGVja2l0ID0gMTsKLSAgICAgICAgbXJvID0gbG9va3VwX21ldGhvZCgoUHlPYmplY3QgKil0eXBlLCAibXJvIiwgJm1yb19zdHIpOworICAgICAgICBtcm8gPSBsb29rdXBfbWV0aG9kKChQeU9iamVjdCAqKXR5cGUsICZQeUlkX21ybyk7CiAgICAgICAgIGlmIChtcm8gPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE9iamVjdChtcm8sIE5VTEwpOwpAQCAtMTU4MCw3ICsxNjA5LDcgQEAKICAgICB0eXBlLT50cF9tcm8gPSB0dXBsZTsKIAogICAgIHR5cGVfbXJvX21vZGlmaWVkKHR5cGUsIHR5cGUtPnRwX21ybyk7Ci0gICAgLyogY29ybmVyIGNhc2U6IHRoZSBvbGQtc3R5bGUgc3VwZXIgY2xhc3MgbWlnaHQgaGF2ZSBiZWVuIGhpZGRlbgorICAgIC8qIGNvcm5lciBjYXNlOiB0aGUgc3VwZXIgY2xhc3MgbWlnaHQgaGF2ZSBiZWVuIGhpZGRlbgogICAgICAgIGZyb20gdGhlIGN1c3RvbSBNUk8gKi8KICAgICB0eXBlX21yb19tb2RpZmllZCh0eXBlLCB0eXBlLT50cF9iYXNlcyk7CiAKQEAgLTE2MzcsOSArMTY2Niw4IEBACiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgIH0KLSAgICBpZiAoYmFzZSA9PSBOVUxMKQotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgImEgbmV3LXN0eWxlIGNsYXNzIGNhbid0IGhhdmUgb25seSBjbGFzc2ljIGJhc2VzIik7CisgICAgYXNzZXJ0IChiYXNlICE9IE5VTEwpOworCiAgICAgcmV0dXJuIGJhc2U7CiB9CiAKQEAgLTE3MDcsMTQgKzE3MzUsMTIgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBnZXRfZGljdF9kZXNjcmlwdG9yKFB5VHlwZU9iamVjdCAqdHlwZSkKIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmRpY3Rfc3RyOworICAgIFB5T2JqZWN0ICpkaWN0X3N0cjsKICAgICBQeU9iamVjdCAqZGVzY3I7CiAKLSAgICBpZiAoZGljdF9zdHIgPT0gTlVMTCkgewotICAgICAgICBkaWN0X3N0ciA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX2RpY3RfXyIpOwotICAgICAgICBpZiAoZGljdF9zdHIgPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKyAgICBkaWN0X3N0ciA9IF9QeVVuaWNvZGVfRnJvbUlkKCZQeUlkX19fZGljdF9fKTsgLyogYm9ycm93ZWQgKi8KKyAgICBpZiAoZGljdF9zdHIgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgZGVzY3IgPSBfUHlUeXBlX0xvb2t1cCh0eXBlLCBkaWN0X3N0cik7CiAgICAgaWYgKGRlc2NyID09IE5VTEwgfHwgIVB5RGVzY3JfSXNEYXRhKGRlc2NyKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xNzMzLDggKzE3NTksNiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHN1YnR5cGVfZGljdChQeU9iamVjdCAqb2JqLCB2b2lkICpjb250ZXh0KQogewotICAgIFB5T2JqZWN0ICoqZGljdHB0cjsKLSAgICBQeU9iamVjdCAqZGljdDsKICAgICBQeVR5cGVPYmplY3QgKmJhc2U7CiAKICAgICBiYXNlID0gZ2V0X2J1aWx0aW5fYmFzZV93aXRoX2RpY3QoUHlfVFlQRShvYmopKTsKQEAgLTE3NTIsMjUgKzE3NzYsMTMgQEAKICAgICAgICAgfQogICAgICAgICByZXR1cm4gZnVuYyhkZXNjciwgb2JqLCAoUHlPYmplY3QgKikoUHlfVFlQRShvYmopKSk7CiAgICAgfQotCi0gICAgZGljdHB0ciA9IF9QeU9iamVjdF9HZXREaWN0UHRyKG9iaik7Ci0gICAgaWYgKGRpY3RwdHIgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiVGhpcyBvYmplY3QgaGFzIG5vIF9fZGljdF9fIik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBkaWN0ID0gKmRpY3RwdHI7Ci0gICAgaWYgKGRpY3QgPT0gTlVMTCkKLSAgICAgICAgKmRpY3RwdHIgPSBkaWN0ID0gUHlEaWN0X05ldygpOwotICAgIFB5X1hJTkNSRUYoZGljdCk7Ci0gICAgcmV0dXJuIGRpY3Q7CisgICAgcmV0dXJuIFB5T2JqZWN0X0dlbmVyaWNHZXREaWN0KG9iaiwgY29udGV4dCk7CiB9CiAKIHN0YXRpYyBpbnQKIHN1YnR5cGVfc2V0ZGljdChQeU9iamVjdCAqb2JqLCBQeU9iamVjdCAqdmFsdWUsIHZvaWQgKmNvbnRleHQpCiB7Ci0gICAgUHlPYmplY3QgKipkaWN0cHRyOwotICAgIFB5T2JqZWN0ICpkaWN0OworICAgIFB5T2JqZWN0ICpkaWN0LCAqKmRpY3RwdHI7CiAgICAgUHlUeXBlT2JqZWN0ICpiYXNlOwogCiAgICAgYmFzZSA9IGdldF9idWlsdGluX2Jhc2Vfd2l0aF9kaWN0KFB5X1RZUEUob2JqKSk7CkBAIC0xNzg4LDcgKzE4MDAsNyBAQAogICAgICAgICB9CiAgICAgICAgIHJldHVybiBmdW5jKGRlc2NyLCBvYmosIHZhbHVlKTsKICAgICB9Ci0KKyAgICAvKiBBbG1vc3QgbGlrZSBQeU9iamVjdF9HZW5lcmljU2V0RGljdCwgYnV0IGFsbG93IF9fZGljdF9fIHRvIGJlIGRlbGV0ZWQuICovCiAgICAgZGljdHB0ciA9IF9QeU9iamVjdF9HZXREaWN0UHRyKG9iaik7CiAgICAgaWYgKGRpY3RwdHIgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsCkBAIC0xOTQ5LDEwICsxOTYxLDEwIEBACiBzdGF0aWMgUHlPYmplY3QgKgogdHlwZV9uZXcoUHlUeXBlT2JqZWN0ICptZXRhdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewotICAgIFB5T2JqZWN0ICpuYW1lLCAqYmFzZXMsICpkaWN0OworICAgIFB5T2JqZWN0ICpuYW1lLCAqYmFzZXMgPSBOVUxMLCAqb3JpZ19kaWN0LCAqZGljdCA9IE5VTEw7CiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJuYW1lIiwgImJhc2VzIiwgImRpY3QiLCAwfTsKLSAgICBQeU9iamVjdCAqc2xvdHMsICp0bXAsICpuZXdzbG90czsKLSAgICBQeVR5cGVPYmplY3QgKnR5cGUsICpiYXNlLCAqdG1wdHlwZSwgKndpbm5lcjsKKyAgICBQeU9iamVjdCAqcXVhbG5hbWUsICpzbG90cyA9IE5VTEwsICp0bXAsICpuZXdzbG90czsKKyAgICBQeVR5cGVPYmplY3QgKnR5cGUgPSBOVUxMLCAqYmFzZSwgKnRtcHR5cGUsICp3aW5uZXI7CiAgICAgUHlIZWFwVHlwZU9iamVjdCAqZXQ7CiAgICAgUHlNZW1iZXJEZWYgKm1wOwogICAgIFB5X3NzaXplX3QgaSwgbmJhc2VzLCBuc2xvdHMsIHNsb3RvZmZzZXQsIGFkZF9kaWN0LCBhZGRfd2VhazsKQEAgLTE5ODYsNyArMTk5OCw3IEBACiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIlVPIU8hOnR5cGUiLCBrd2xpc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlB5VHVwbGVfVHlwZSwgJmJhc2VzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZQeURpY3RfVHlwZSwgJmRpY3QpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZQeURpY3RfVHlwZSwgJm9yaWdfZGljdCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgLyogRGV0ZXJtaW5lIHRoZSBwcm9wZXIgbWV0YXR5cGUgdG8gZGVhbCB3aXRoIHRoaXM6ICovCkBAIC0yMDA2LDI4ICsyMDE4LDI4IEBACiAgICAgaWYgKG5iYXNlcyA9PSAwKSB7CiAgICAgICAgIGJhc2VzID0gUHlUdXBsZV9QYWNrKDEsICZQeUJhc2VPYmplY3RfVHlwZSk7CiAgICAgICAgIGlmIChiYXNlcyA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICBuYmFzZXMgPSAxOwogICAgIH0KICAgICBlbHNlCiAgICAgICAgIFB5X0lOQ1JFRihiYXNlcyk7CiAKLSAgICAvKiBYWFggRnJvbSBoZXJlIHVudGlsIHR5cGUgaXMgYWxsb2NhdGVkLCAicmV0dXJuIE5VTEwiIGxlYWtzIGJhc2VzISAqLwotCiAgICAgLyogQ2FsY3VsYXRlIGJlc3QgYmFzZSwgYW5kIGNoZWNrIHRoYXQgYWxsIGJhc2VzIGFyZSB0eXBlIG9iamVjdHMgKi8KICAgICBiYXNlID0gYmVzdF9iYXNlKGJhc2VzKTsKICAgICBpZiAoYmFzZSA9PSBOVUxMKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihiYXNlcyk7Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KICAgICBpZiAoIVB5VHlwZV9IYXNGZWF0dXJlKGJhc2UsIFB5X1RQRkxBR1NfQkFTRVRZUEUpKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAidHlwZSAnJS4xMDBzJyBpcyBub3QgYW4gYWNjZXB0YWJsZSBiYXNlIHR5cGUiLAogICAgICAgICAgICAgICAgICAgICAgYmFzZS0+dHBfbmFtZSk7Ci0gICAgICAgIFB5X0RFQ1JFRihiYXNlcyk7Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KIAorICAgIGRpY3QgPSBQeURpY3RfQ29weShvcmlnX2RpY3QpOworICAgIGlmIChkaWN0ID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CisKICAgICAvKiBDaGVjayBmb3IgYSBfX3Nsb3RzX18gc2VxdWVuY2UgdmFyaWFibGUgaW4gZGljdCwgYW5kIGNvdW50IGl0ICovCiAgICAgc2xvdHMgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhkaWN0LCAiX19zbG90c19fIik7CiAgICAgbnNsb3RzID0gMDsKQEAgLTIwNTEsMTAgKzIwNjMsOCBAQAogICAgICAgICAgICAgc2xvdHMgPSBQeVR1cGxlX1BhY2soMSwgc2xvdHMpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBzbG90cyA9IFB5U2VxdWVuY2VfVHVwbGUoc2xvdHMpOwotICAgICAgICBpZiAoc2xvdHMgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlfREVDUkVGKGJhc2VzKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9CisgICAgICAgIGlmIChzbG90cyA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgYXNzZXJ0KFB5VHVwbGVfQ2hlY2soc2xvdHMpKTsKIAogICAgICAgICAvKiBBcmUgc2xvdHMgYWxsb3dlZD8gKi8KQEAgLTIwNjQsMjQgKzIwNzQsMjEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAibm9uZW1wdHkgX19zbG90c19fICIKICAgICAgICAgICAgICAgICAgICAgICAgICAibm90IHN1cHBvcnRlZCBmb3Igc3VidHlwZSBvZiAnJXMnIiwKICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlLT50cF9uYW1lKTsKLSAgICAgICAgICBiYWRfc2xvdHM6Ci0gICAgICAgICAgICBQeV9ERUNSRUYoYmFzZXMpOwotICAgICAgICAgICAgUHlfREVDUkVGKHNsb3RzKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQogCiAgICAgICAgIC8qIENoZWNrIGZvciB2YWxpZCBzbG90IG5hbWVzIGFuZCB0d28gc3BlY2lhbCBjYXNlcyAqLwogICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbnNsb3RzOyBpKyspIHsKICAgICAgICAgICAgIFB5T2JqZWN0ICp0bXAgPSBQeVR1cGxlX0dFVF9JVEVNKHNsb3RzLCBpKTsKICAgICAgICAgICAgIGlmICghdmFsaWRfaWRlbnRpZmllcih0bXApKQotICAgICAgICAgICAgICAgIGdvdG8gYmFkX3Nsb3RzOworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0NoZWNrKHRtcCkpOwogICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKHRtcCwgIl9fZGljdF9fIikgPT0gMCkgewogICAgICAgICAgICAgICAgIGlmICghbWF5X2FkZF9kaWN0IHx8IGFkZF9kaWN0KSB7CiAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAiX19kaWN0X18gc2xvdCBkaXNhbGxvd2VkOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAid2UgYWxyZWFkeSBnb3Qgb25lIik7Ci0gICAgICAgICAgICAgICAgICAgIGdvdG8gYmFkX3Nsb3RzOworICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBhZGRfZGljdCsrOwogICAgICAgICAgICAgfQpAQCAtMjA5MSw3ICsyMDk4LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICJfX3dlYWtyZWZfXyBzbG90IGRpc2FsbG93ZWQ6ICIKICAgICAgICAgICAgICAgICAgICAgICAgICJlaXRoZXIgd2UgYWxyZWFkeSBnb3Qgb25lLCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAib3IgX19pdGVtc2l6ZV9fICE9IDAiKTsKLSAgICAgICAgICAgICAgICAgICAgZ290byBiYWRfc2xvdHM7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGFkZF93ZWFrKys7CiAgICAgICAgICAgICB9CkBAIC0yMTAzLDcgKzIxMTAsNyBAQAogICAgICAgICAqLwogICAgICAgICBuZXdzbG90cyA9IFB5TGlzdF9OZXcobnNsb3RzIC0gYWRkX2RpY3QgLSBhZGRfd2Vhayk7CiAgICAgICAgIGlmIChuZXdzbG90cyA9PSBOVUxMKQotICAgICAgICAgICAgZ290byBiYWRfc2xvdHM7CisgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICBmb3IgKGkgPSBqID0gMDsgaSA8IG5zbG90czsgaSsrKSB7CiAgICAgICAgICAgICB0bXAgPSBQeVR1cGxlX0dFVF9JVEVNKHNsb3RzLCBpKTsKICAgICAgICAgICAgIGlmICgoYWRkX2RpY3QgJiYKQEAgLTIxMTQsMjUgKzIxMjEsMjkgQEAKICAgICAgICAgICAgIHRtcCA9X1B5X01hbmdsZShuYW1lLCB0bXApOwogICAgICAgICAgICAgaWYgKCF0bXApIHsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYobmV3c2xvdHMpOwotICAgICAgICAgICAgICAgIGdvdG8gYmFkX3Nsb3RzOworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBQeUxpc3RfU0VUX0lURU0obmV3c2xvdHMsIGosIHRtcCk7CisgICAgICAgICAgICBpZiAoUHlEaWN0X0dldEl0ZW0oZGljdCwgdG1wKSkgeworICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJVIgaW4gX19zbG90c19fIGNvbmZsaWN0cyB3aXRoIGNsYXNzIHZhcmlhYmxlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG1wKTsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYobmV3c2xvdHMpOworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBqKys7CiAgICAgICAgIH0KICAgICAgICAgYXNzZXJ0KGogPT0gbnNsb3RzIC0gYWRkX2RpY3QgLSBhZGRfd2Vhayk7CiAgICAgICAgIG5zbG90cyA9IGo7Ci0gICAgICAgIFB5X0RFQ1JFRihzbG90cyk7CisgICAgICAgIFB5X0NMRUFSKHNsb3RzKTsKICAgICAgICAgaWYgKFB5TGlzdF9Tb3J0KG5ld3Nsb3RzKSA9PSAtMSkgewotICAgICAgICAgICAgUHlfREVDUkVGKGJhc2VzKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRihuZXdzbG90cyk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIH0KICAgICAgICAgc2xvdHMgPSBQeUxpc3RfQXNUdXBsZShuZXdzbG90cyk7CiAgICAgICAgIFB5X0RFQ1JFRihuZXdzbG90cyk7Ci0gICAgICAgIGlmIChzbG90cyA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYoYmFzZXMpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KKyAgICAgICAgaWYgKHNsb3RzID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGVycm9yOwogCiAgICAgICAgIC8qIFNlY29uZGFyeSBiYXNlcyBtYXkgcHJvdmlkZSB3ZWFrcmVmcyBvciBkaWN0ICovCiAgICAgICAgIGlmIChuYmFzZXMgPiAxICYmCkBAIC0yMTYwLDIyICsyMTcxLDE3IEBACiAgICAgICAgIH0KICAgICB9CiAKLSAgICAvKiBYWFggRnJvbSBoZXJlIHVudGlsIHR5cGUgaXMgc2FmZWx5IGFsbG9jYXRlZCwKLSAgICAgICAicmV0dXJuIE5VTEwiIG1heSBsZWFrIHNsb3RzISAqLwotCiAgICAgLyogQWxsb2NhdGUgdGhlIHR5cGUgb2JqZWN0ICovCiAgICAgdHlwZSA9IChQeVR5cGVPYmplY3QgKiltZXRhdHlwZS0+dHBfYWxsb2MobWV0YXR5cGUsIG5zbG90cyk7Ci0gICAgaWYgKHR5cGUgPT0gTlVMTCkgewotICAgICAgICBQeV9YREVDUkVGKHNsb3RzKTsKLSAgICAgICAgUHlfREVDUkVGKGJhc2VzKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQorICAgIGlmICh0eXBlID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICAvKiBLZWVwIG5hbWUgYW5kIHNsb3RzIGFsaXZlIGluIHRoZSBleHRlbmRlZCB0eXBlIG9iamVjdCAqLwogICAgIGV0ID0gKFB5SGVhcFR5cGVPYmplY3QgKil0eXBlOwogICAgIFB5X0lOQ1JFRihuYW1lKTsKICAgICBldC0+aHRfbmFtZSA9IG5hbWU7CiAgICAgZXQtPmh0X3Nsb3RzID0gc2xvdHM7CisgICAgc2xvdHMgPSBOVUxMOwogCiAgICAgLyogSW5pdGlhbGl6ZSB0cF9mbGFncyAqLwogICAgIHR5cGUtPnRwX2ZsYWdzID0gUHlfVFBGTEFHU19ERUZBVUxUIHwgUHlfVFBGTEFHU19IRUFQVFlQRSB8CkBAIC0yMTg5LDIyICsyMTk1LDE4IEBACiAgICAgdHlwZS0+dHBfYXNfbWFwcGluZyA9ICZldC0+YXNfbWFwcGluZzsKICAgICB0eXBlLT50cF9hc19idWZmZXIgPSAmZXQtPmFzX2J1ZmZlcjsKICAgICB0eXBlLT50cF9uYW1lID0gX1B5VW5pY29kZV9Bc1N0cmluZyhuYW1lKTsKLSAgICBpZiAoIXR5cGUtPnRwX25hbWUpIHsKLSAgICAgICAgUHlfREVDUkVGKHR5cGUpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CisgICAgaWYgKCF0eXBlLT50cF9uYW1lKQorICAgICAgICBnb3RvIGVycm9yOwogCiAgICAgLyogU2V0IHRwX2Jhc2UgYW5kIHRwX2Jhc2VzICovCiAgICAgdHlwZS0+dHBfYmFzZXMgPSBiYXNlczsKKyAgICBiYXNlcyA9IE5VTEw7CiAgICAgUHlfSU5DUkVGKGJhc2UpOwogICAgIHR5cGUtPnRwX2Jhc2UgPSBiYXNlOwogCiAgICAgLyogSW5pdGlhbGl6ZSB0cF9kaWN0IGZyb20gcGFzc2VkLWluIGRpY3QgKi8KLSAgICB0eXBlLT50cF9kaWN0ID0gZGljdCA9IFB5RGljdF9Db3B5KGRpY3QpOwotICAgIGlmIChkaWN0ID09IE5VTEwpIHsKLSAgICAgICAgUHlfREVDUkVGKHR5cGUpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CisgICAgUHlfSU5DUkVGKGRpY3QpOworICAgIHR5cGUtPnRwX2RpY3QgPSBkaWN0OwogCiAgICAgLyogU2V0IF9fbW9kdWxlX18gaW4gdGhlIGRpY3QgKi8KICAgICBpZiAoUHlEaWN0X0dldEl0ZW1TdHJpbmcoZGljdCwgIl9fbW9kdWxlX18iKSA9PSBOVUxMKSB7CkBAIC0yMjE0LDExICsyMjE2LDI5IEBACiAgICAgICAgICAgICBpZiAodG1wICE9IE5VTEwpIHsKICAgICAgICAgICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZGljdCwgIl9fbW9kdWxlX18iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bXApIDwgMCkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CiAKKyAgICAvKiBTZXQgaHRfcXVhbG5hbWUgdG8gZGljdFsnX19xdWFsbmFtZV9fJ10gaWYgYXZhaWxhYmxlLCBlbHNlIHRvCisgICAgICAgX19uYW1lX18uICBUaGUgX19xdWFsbmFtZV9fIGFjY2Vzc29yIHdpbGwgbG9vayBmb3IgaHRfcXVhbG5hbWUuCisgICAgKi8KKyAgICBxdWFsbmFtZSA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKGRpY3QsICJfX3F1YWxuYW1lX18iKTsKKyAgICBpZiAocXVhbG5hbWUgIT0gTlVMTCkgeworICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhxdWFsbmFtZSkpIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUgX19xdWFsbmFtZV9fIG11c3QgYmUgYSBzdHIsIG5vdCAlcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShxdWFsbmFtZSktPnRwX25hbWUpOworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgcXVhbG5hbWUgPSBldC0+aHRfbmFtZTsKKyAgICB9CisgICAgUHlfSU5DUkVGKHF1YWxuYW1lKTsKKyAgICBldC0+aHRfcXVhbG5hbWUgPSBxdWFsbmFtZTsKKwogICAgIC8qIFNldCB0cF9kb2MgdG8gYSBjb3B5IG9mIGRpY3RbJ19fZG9jX18nXSwgaWYgdGhlIGxhdHRlciBpcyB0aGVyZQogICAgICAgIGFuZCBpcyBhIHN0cmluZy4gIFRoZSBfX2RvY19fIGFjY2Vzc29yIHdpbGwgZmlyc3QgbG9vayBmb3IgdHBfZG9jOwogICAgICAgIGlmIHRoYXQgZmFpbHMsIGl0IHdpbGwgc3RpbGwgbG9vayBpbnRvIF9fZGljdF9fLgpAQCAtMjIzMSwxNyArMjI1MSwxMyBAQAogICAgICAgICAgICAgY2hhciAqdHBfZG9jOwogCiAgICAgICAgICAgICBkb2Nfc3RyID0gX1B5VW5pY29kZV9Bc1N0cmluZyhkb2MpOwotICAgICAgICAgICAgaWYgKGRvY19zdHIgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih0eXBlKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChkb2Nfc3RyID09IE5VTEwpCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgICAgIC8qIFNpbGVudGx5IHRydW5jYXRlIHRoZSBkb2NzdHJpbmcgaWYgaXQgY29udGFpbnMgbnVsbCBieXRlcy4gKi8KICAgICAgICAgICAgIGxlbiA9IHN0cmxlbihkb2Nfc3RyKTsKICAgICAgICAgICAgIHRwX2RvYyA9IChjaGFyICopUHlPYmplY3RfTUFMTE9DKGxlbiArIDEpOwotICAgICAgICAgICAgaWYgKHRwX2RvYyA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKHR5cGUpOwotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKHRwX2RvYyA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICBtZW1jcHkodHBfZG9jLCBkb2Nfc3RyLCBsZW4gKyAxKTsKICAgICAgICAgICAgIHR5cGUtPnRwX2RvYyA9IHRwX2RvYzsKICAgICAgICAgfQpAQCAtMjI1MiwxMCArMjI2OCw4IEBACiAgICAgdG1wID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcoZGljdCwgIl9fbmV3X18iKTsKICAgICBpZiAodG1wICE9IE5VTEwgJiYgUHlGdW5jdGlvbl9DaGVjayh0bXApKSB7CiAgICAgICAgIHRtcCA9IFB5U3RhdGljTWV0aG9kX05ldyh0bXApOwotICAgICAgICBpZiAodG1wID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRih0eXBlKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9CisgICAgICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIFB5RGljdF9TZXRJdGVtU3RyaW5nKGRpY3QsICJfX25ld19fIiwgdG1wKTsKICAgICAgICAgUHlfREVDUkVGKHRtcCk7CiAgICAgfQpAQCAtMjI2MywxNCArMjI3NywxMiBAQAogICAgIC8qIEFkZCBkZXNjcmlwdG9ycyBmb3IgY3VzdG9tIHNsb3RzIGZyb20gX19zbG90c19fLCBvciBmb3IgX19kaWN0X18gKi8KICAgICBtcCA9IFB5SGVhcFR5cGVfR0VUX01FTUJFUlMoZXQpOwogICAgIHNsb3RvZmZzZXQgPSBiYXNlLT50cF9iYXNpY3NpemU7Ci0gICAgaWYgKHNsb3RzICE9IE5VTEwpIHsKKyAgICBpZiAoZXQtPmh0X3Nsb3RzICE9IE5VTEwpIHsKICAgICAgICAgZm9yIChpID0gMDsgaSA8IG5zbG90czsgaSsrLCBtcCsrKSB7CiAgICAgICAgICAgICBtcC0+bmFtZSA9IF9QeVVuaWNvZGVfQXNTdHJpbmcoCi0gICAgICAgICAgICAgICAgUHlUdXBsZV9HRVRfSVRFTShzbG90cywgaSkpOwotICAgICAgICAgICAgaWYgKG1wLT5uYW1lID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBQeV9ERUNSRUYodHlwZSk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgUHlUdXBsZV9HRVRfSVRFTShldC0+aHRfc2xvdHMsIGkpKTsKKyAgICAgICAgICAgIGlmIChtcC0+bmFtZSA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICBtcC0+dHlwZSA9IFRfT0JKRUNUX0VYOwogICAgICAgICAgICAgbXAtPm9mZnNldCA9IHNsb3RvZmZzZXQ7CiAKQEAgLTIzMzEsMTUgKzIzNDMsMjEgQEAKICAgICAgICAgdHlwZS0+dHBfZnJlZSA9IFB5T2JqZWN0X0RlbDsKIAogICAgIC8qIEluaXRpYWxpemUgdGhlIHJlc3QgKi8KLSAgICBpZiAoUHlUeXBlX1JlYWR5KHR5cGUpIDwgMCkgewotICAgICAgICBQeV9ERUNSRUYodHlwZSk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKyAgICBpZiAoUHlUeXBlX1JlYWR5KHR5cGUpIDwgMCkKKyAgICAgICAgZ290byBlcnJvcjsKIAogICAgIC8qIFB1dCB0aGUgcHJvcGVyIHNsb3RzIGluIHBsYWNlICovCiAgICAgZml4dXBfc2xvdF9kaXNwYXRjaGVycyh0eXBlKTsKIAorICAgIFB5X0RFQ1JFRihkaWN0KTsKICAgICByZXR1cm4gKFB5T2JqZWN0ICopdHlwZTsKKworZXJyb3I6CisgICAgUHlfWERFQ1JFRihkaWN0KTsKKyAgICBQeV9YREVDUkVGKGJhc2VzKTsKKyAgICBQeV9YREVDUkVGKHNsb3RzKTsKKyAgICBQeV9YREVDUkVGKHR5cGUpOworICAgIHJldHVybiBOVUxMOwogfQogCiBzdGF0aWMgc2hvcnQgc2xvdG9mZnNldHNbXSA9IHsKQEAgLTIzNTgsMjEgKzIzNzYsMjMgQEAKICAgICAgIHJldHVybiBOVUxMOwogICAgIHJlcy0+aHRfbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKHNwZWMtPm5hbWUpOwogICAgIGlmICghcmVzLT5odF9uYW1lKQotCWdvdG8gZmFpbDsKKyAgICAgICAgZ290byBmYWlsOworICAgIHJlcy0+aHRfcXVhbG5hbWUgPSByZXMtPmh0X25hbWU7CisgICAgUHlfSU5DUkVGKHJlcy0+aHRfcXVhbG5hbWUpOwogICAgIHJlcy0+aHRfdHlwZS50cF9uYW1lID0gX1B5VW5pY29kZV9Bc1N0cmluZyhyZXMtPmh0X25hbWUpOwogICAgIGlmICghcmVzLT5odF90eXBlLnRwX25hbWUpCi0JZ290byBmYWlsOworICAgICAgICBnb3RvIGZhaWw7CiAKICAgICByZXMtPmh0X3R5cGUudHBfYmFzaWNzaXplID0gc3BlYy0+YmFzaWNzaXplOwogICAgIHJlcy0+aHRfdHlwZS50cF9pdGVtc2l6ZSA9IHNwZWMtPml0ZW1zaXplOwogICAgIHJlcy0+aHRfdHlwZS50cF9mbGFncyA9IHNwZWMtPmZsYWdzIHwgUHlfVFBGTEFHU19IRUFQVFlQRTsKIAogICAgIGZvciAoc2xvdCA9IHNwZWMtPnNsb3RzOyBzbG90LT5zbG90OyBzbG90KyspIHsKLQlpZiAoc2xvdC0+c2xvdCA+PSBzaXplb2Yoc2xvdG9mZnNldHMpL3NpemVvZihzbG90b2Zmc2V0c1swXSkpIHsKLQkgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwgImludmFsaWQgc2xvdCBvZmZzZXQiKTsKLQkgICAgZ290byBmYWlsOwotCX0KLQkqKHZvaWQqKikocmVzX3N0YXJ0ICsgc2xvdG9mZnNldHNbc2xvdC0+c2xvdF0pID0gc2xvdC0+cGZ1bmM7CisgICAgICAgIGlmIChzbG90LT5zbG90ID49IFB5X0FSUkFZX0xFTkdUSChzbG90b2Zmc2V0cykpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsICJpbnZhbGlkIHNsb3Qgb2Zmc2V0Iik7CisgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgIH0KKyAgICAgICAgKih2b2lkKiopKHJlc19zdGFydCArIHNsb3RvZmZzZXRzW3Nsb3QtPnNsb3RdKSA9IHNsb3QtPnBmdW5jOwogCiAgICAgICAgIC8qIG5lZWQgdG8gbWFrZSBhIGNvcHkgb2YgdGhlIGRvY3N0cmluZyBzbG90LCB3aGljaCB1c3VhbGx5CiAgICAgICAgICAgIHBvaW50cyB0byBhIHN0YXRpYyBzdHJpbmcgbGl0ZXJhbCAqLwpAQCAtMjM4MCw3ICsyNDAwLDcgQEAKICAgICAgICAgICAgIHNzaXplX3QgbGVuID0gc3RybGVuKHNsb3QtPnBmdW5jKSsxOwogICAgICAgICAgICAgY2hhciAqdHBfZG9jID0gUHlPYmplY3RfTUFMTE9DKGxlbik7CiAgICAgICAgICAgICBpZiAodHBfZG9jID09IE5VTEwpCi0JICAgIAlnb3RvIGZhaWw7CisgICAgICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICAgICAgbWVtY3B5KHRwX2RvYywgc2xvdC0+cGZ1bmMsIGxlbik7CiAgICAgICAgICAgICByZXMtPmh0X3R5cGUudHBfZG9jID0gdHBfZG9jOwogICAgICAgICB9CkBAIC0yNTYxLDYgKzI1ODEsNyBAQAogICAgICAqLwogICAgIFB5T2JqZWN0X0ZyZWUoKGNoYXIgKil0eXBlLT50cF9kb2MpOwogICAgIFB5X1hERUNSRUYoZXQtPmh0X25hbWUpOworICAgIFB5X1hERUNSRUYoZXQtPmh0X3F1YWxuYW1lKTsKICAgICBQeV9YREVDUkVGKGV0LT5odF9zbG90cyk7CiAgICAgUHlfVFlQRSh0eXBlKS0+dHBfZnJlZSgoUHlPYmplY3QgKil0eXBlKTsKIH0KQEAgLTI1OTksNiArMjYyMCw4MyBAQAogICAgIHJldHVybiBQeURpY3RfTmV3KCk7CiB9CiAKKy8qCisgICBNZXJnZSB0aGUgX19kaWN0X18gb2YgYWNsYXNzIGludG8gZGljdCwgYW5kIHJlY3Vyc2l2ZWx5IGFsc28gYWxsCisgICB0aGUgX19kaWN0X19zIG9mIGFjbGFzcydzIGJhc2UgY2xhc3Nlcy4gIFRoZSBvcmRlciBvZiBtZXJnaW5nIGlzbid0CisgICBkZWZpbmVkLCBhcyBpdCdzIGV4cGVjdGVkIHRoYXQgb25seSB0aGUgZmluYWwgc2V0IG9mIGRpY3Qga2V5cyBpcworICAgaW50ZXJlc3RpbmcuCisgICBSZXR1cm4gMCBvbiBzdWNjZXNzLCAtMSBvbiBlcnJvci4KKyovCisKK3N0YXRpYyBpbnQKK21lcmdlX2NsYXNzX2RpY3QoUHlPYmplY3QgKmRpY3QsIFB5T2JqZWN0ICphY2xhc3MpCit7CisgICAgUHlPYmplY3QgKmNsYXNzZGljdDsKKyAgICBQeU9iamVjdCAqYmFzZXM7CisgICAgX1B5X0lERU5USUZJRVIoX19iYXNlc19fKTsKKworICAgIGFzc2VydChQeURpY3RfQ2hlY2soZGljdCkpOworICAgIGFzc2VydChhY2xhc3MpOworCisgICAgLyogTWVyZ2UgaW4gdGhlIHR5cGUncyBkaWN0IChpZiBhbnkpLiAqLworICAgIGNsYXNzZGljdCA9IF9QeU9iamVjdF9HZXRBdHRySWQoYWNsYXNzLCAmUHlJZF9fX2RpY3RfXyk7CisgICAgaWYgKGNsYXNzZGljdCA9PSBOVUxMKQorICAgICAgICBQeUVycl9DbGVhcigpOworICAgIGVsc2UgeworICAgICAgICBpbnQgc3RhdHVzID0gUHlEaWN0X1VwZGF0ZShkaWN0LCBjbGFzc2RpY3QpOworICAgICAgICBQeV9ERUNSRUYoY2xhc3NkaWN0KTsKKyAgICAgICAgaWYgKHN0YXR1cyA8IDApCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgLyogUmVjdXJzaXZlbHkgbWVyZ2UgaW4gdGhlIGJhc2UgdHlwZXMnIChpZiBhbnkpIGRpY3RzLiAqLworICAgIGJhc2VzID0gX1B5T2JqZWN0X0dldEF0dHJJZChhY2xhc3MsICZQeUlkX19fYmFzZXNfXyk7CisgICAgaWYgKGJhc2VzID09IE5VTEwpCisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgZWxzZSB7CisgICAgICAgIC8qIFdlIGhhdmUgbm8gZ3VhcmFudGVlIHRoYXQgYmFzZXMgaXMgYSByZWFsIHR1cGxlICovCisgICAgICAgIFB5X3NzaXplX3QgaSwgbjsKKyAgICAgICAgbiA9IFB5U2VxdWVuY2VfU2l6ZShiYXNlcyk7IC8qIFRoaXMgYmV0dGVyIGJlIHJpZ2h0ICovCisgICAgICAgIGlmIChuIDwgMCkKKyAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IG47IGkrKykgeworICAgICAgICAgICAgICAgIGludCBzdGF0dXM7CisgICAgICAgICAgICAgICAgUHlPYmplY3QgKmJhc2UgPSBQeVNlcXVlbmNlX0dldEl0ZW0oYmFzZXMsIGkpOworICAgICAgICAgICAgICAgIGlmIChiYXNlID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGJhc2VzKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBzdGF0dXMgPSBtZXJnZV9jbGFzc19kaWN0KGRpY3QsIGJhc2UpOworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihiYXNlKTsKKyAgICAgICAgICAgICAgICBpZiAoc3RhdHVzIDwgMCkgeworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoYmFzZXMpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRihiYXNlcyk7CisgICAgfQorICAgIHJldHVybiAwOworfQorCisvKiBfX2Rpcl9fIGZvciB0eXBlIG9iamVjdHM6IHJldHVybnMgX19kaWN0X18gYW5kIF9fYmFzZXNfXy4KKyAgIFdlIGRlbGliZXJhdGVseSBkb24ndCBzdWNrIHVwIGl0cyBfX2NsYXNzX18sIGFzIG1ldGhvZHMgYmVsb25naW5nIHRvIHRoZQorICAgbWV0YWNsYXNzIHdvdWxkIHByb2JhYmx5IGJlIG1vcmUgY29uZnVzaW5nIHRoYW4gaGVscGZ1bC4KKyovCitzdGF0aWMgUHlPYmplY3QgKgordHlwZV9kaXIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOworICAgIFB5T2JqZWN0ICpkaWN0ID0gUHlEaWN0X05ldygpOworCisgICAgaWYgKGRpY3QgIT0gTlVMTCAmJiBtZXJnZV9jbGFzc19kaWN0KGRpY3QsIHNlbGYpID09IDApCisgICAgICAgIHJlc3VsdCA9IFB5RGljdF9LZXlzKGRpY3QpOworCisgICAgUHlfWERFQ1JFRihkaWN0KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCiBzdGF0aWMgUHlNZXRob2REZWYgdHlwZV9tZXRob2RzW10gPSB7CiAgICAgeyJtcm8iLCAoUHlDRnVuY3Rpb24pbXJvX2V4dGVybmFsLCBNRVRIX05PQVJHUywKICAgICAgUHlEb2NfU1RSKCJtcm8oKSAtPiBsaXN0XG5yZXR1cm4gYSB0eXBlJ3MgbWV0aG9kIHJlc29sdXRpb24gb3JkZXIiKX0sCkBAIC0yNjEyLDYgKzI3MTAsOCBAQAogICAgICBQeURvY19TVFIoIl9faW5zdGFuY2VjaGVja19fKCkgLT4gYm9vbFxuY2hlY2sgaWYgYW4gb2JqZWN0IGlzIGFuIGluc3RhbmNlIil9LAogICAgIHsiX19zdWJjbGFzc2NoZWNrX18iLCB0eXBlX19fc3ViY2xhc3NjaGVja19fLCBNRVRIX08sCiAgICAgIFB5RG9jX1NUUigiX19zdWJjbGFzc2NoZWNrX18oKSAtPiBib29sXG5jaGVjayBpZiBhIGNsYXNzIGlzIGEgc3ViY2xhc3MiKX0sCisgICAgeyJfX2Rpcl9fIiwgdHlwZV9kaXIsIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoIl9fZGlyX18oKSAtPiBsaXN0XG5zcGVjaWFsaXplZCBfX2Rpcl9fIGltcGxlbWVudGF0aW9uIGZvciB0eXBlcyIpfSwKICAgICB7MH0KIH07CiAKQEAgLTI4MzksNiArMjkzOSw3IEBACiAgICAgICAgIFB5T2JqZWN0ICpzb3J0ZWQ7CiAgICAgICAgIFB5T2JqZWN0ICpzb3J0ZWRfbWV0aG9kcyA9IE5VTEw7CiAgICAgICAgIFB5T2JqZWN0ICpqb2luZWQgPSBOVUxMOworICAgICAgICBfUHlfSURFTlRJRklFUihqb2luKTsKIAogICAgICAgICAvKiBDb21wdXRlICIsICIuam9pbihzb3J0ZWQodHlwZS5fX2Fic3RyYWN0bWV0aG9kc19fKSkKICAgICAgICAgICAgaW50byBqb2luZWQuICovCkBAIC0yODYxLDcgKzI5NjIsNyBAQAogICAgICAgICAgICAgaWYgKGNvbW1hID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQotICAgICAgICBqb2luZWQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGNvbW1hLCAiam9pbiIsCisgICAgICAgIGpvaW5lZCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoY29tbWEsICZQeUlkX2pvaW4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk8iLCAgc29ydGVkX21ldGhvZHMpOwogICAgICAgICBpZiAoam9pbmVkID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycm9yOwpAQCAtMjkwMCw3ICszMDAxLDcgQEAKICAgICAgICAgUHlfREVDUkVGKG1vZCk7CiAgICAgICAgIG1vZCA9IE5VTEw7CiAgICAgfQotICAgIG5hbWUgPSB0eXBlX25hbWUodHlwZSwgTlVMTCk7CisgICAgbmFtZSA9IHR5cGVfcXVhbG5hbWUodHlwZSwgTlVMTCk7CiAgICAgaWYgKG5hbWUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKG1vZCAhPSBOVUxMICYmIFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG1vZCwgImJ1aWx0aW5zIikpCkBAIC0zMDYzLDcgKzMxNjQsNyBAQAogICAgIH0KICAgICBpZiAoIVB5VHlwZV9DaGVjayh2YWx1ZSkpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAiX19jbGFzc19fIG11c3QgYmUgc2V0IHRvIG5ldy1zdHlsZSBjbGFzcywgbm90ICclcycgb2JqZWN0IiwKKyAgICAgICAgICAiX19jbGFzc19fIG11c3QgYmUgc2V0IHRvIGEgY2xhc3MsIG5vdCAnJXMnIG9iamVjdCIsCiAgICAgICAgICAgUHlfVFlQRSh2YWx1ZSktPnRwX25hbWUpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQpAQCAtMzEwNCwxNCArMzIwNSwxOSBAQAogaW1wb3J0X2NvcHlyZWcodm9pZCkKIHsKICAgICBzdGF0aWMgUHlPYmplY3QgKmNvcHlyZWdfc3RyOworICAgIHN0YXRpYyBQeU9iamVjdCAqbW9kX2NvcHlyZWcgPSBOVUxMOwogCiAgICAgaWYgKCFjb3B5cmVnX3N0cikgewogICAgICAgICBjb3B5cmVnX3N0ciA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJjb3B5cmVnIik7CiAgICAgICAgIGlmIChjb3B5cmVnX3N0ciA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorICAgIGlmICghbW9kX2NvcHlyZWcpIHsKKyAgICAgICAgbW9kX2NvcHlyZWcgPSBQeUltcG9ydF9JbXBvcnQoY29weXJlZ19zdHIpOworICAgIH0KIAotICAgIHJldHVybiBQeUltcG9ydF9JbXBvcnQoY29weXJlZ19zdHIpOworICAgIFB5X1hJTkNSRUYobW9kX2NvcHlyZWcpOworICAgIHJldHVybiBtb2RfY29weXJlZzsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTMxMjAsMTQgKzMyMjYsMTcgQEAKICAgICBQeU9iamVjdCAqY2xzZGljdDsKICAgICBQeU9iamVjdCAqY29weXJlZzsKICAgICBQeU9iamVjdCAqc2xvdG5hbWVzOworICAgIHN0YXRpYyBQeU9iamVjdCAqc3RyX3Nsb3RuYW1lczsKKyAgICBfUHlfSURFTlRJRklFUihfc2xvdG5hbWVzKTsKIAotICAgIGlmICghUHlUeXBlX0NoZWNrKGNscykpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwotICAgICAgICByZXR1cm4gUHlfTm9uZTsKKyAgICBpZiAoc3RyX3Nsb3RuYW1lcyA9PSBOVUxMKSB7CisgICAgICAgIHN0cl9zbG90bmFtZXMgPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiX19zbG90bmFtZXNfXyIpOworICAgICAgICBpZiAoc3RyX3Nsb3RuYW1lcyA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCiAgICAgY2xzZGljdCA9ICgoUHlUeXBlT2JqZWN0ICopY2xzKS0+dHBfZGljdDsKLSAgICBzbG90bmFtZXMgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhjbHNkaWN0LCAiX19zbG90bmFtZXNfXyIpOworICAgIHNsb3RuYW1lcyA9IFB5RGljdF9HZXRJdGVtKGNsc2RpY3QsIHN0cl9zbG90bmFtZXMpOwogICAgIGlmIChzbG90bmFtZXMgIT0gTlVMTCAmJiBQeUxpc3RfQ2hlY2soc2xvdG5hbWVzKSkgewogICAgICAgICBQeV9JTkNSRUYoc2xvdG5hbWVzKTsKICAgICAgICAgcmV0dXJuIHNsb3RuYW1lczsKQEAgLTMxMzcsNyArMzI0Niw3IEBACiAgICAgaWYgKGNvcHlyZWcgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBzbG90bmFtZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGNvcHlyZWcsICJfc2xvdG5hbWVzIiwgIk8iLCBjbHMpOworICAgIHNsb3RuYW1lcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoY29weXJlZywgJlB5SWRfX3Nsb3RuYW1lcywgIk8iLCBjbHMpOwogICAgIFB5X0RFQ1JFRihjb3B5cmVnKTsKICAgICBpZiAoc2xvdG5hbWVzICE9IE5VTEwgJiYKICAgICAgICAgc2xvdG5hbWVzICE9IFB5X05vbmUgJiYKQEAgLTMxNjEsMTIgKzMyNzAsMjAgQEAKICAgICBQeU9iamVjdCAqc2xvdHMgPSBOVUxMLCAqbGlzdGl0ZW1zID0gTlVMTCwgKmRpY3RpdGVtcyA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmNvcHlyZWcgPSBOVUxMLCAqbmV3b2JqID0gTlVMTCwgKnJlcyA9IE5VTEw7CiAgICAgUHlfc3NpemVfdCBpLCBuOworICAgIHN0YXRpYyBQeU9iamVjdCAqc3RyX2dldG5ld2FyZ3MgPSBOVUxMLCAqc3RyX2dldHN0YXRlID0gTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgKnN0cl9uZXdvYmogPSBOVUxMOwogCi0gICAgY2xzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJfX2NsYXNzX18iKTsKLSAgICBpZiAoY2xzID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzdHJfZ2V0bmV3YXJncyA9PSBOVUxMKSB7CisgICAgICAgIHN0cl9nZXRuZXdhcmdzID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcoIl9fZ2V0bmV3YXJnc19fIik7CisgICAgICAgIHN0cl9nZXRzdGF0ZSA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX2dldHN0YXRlX18iKTsKKyAgICAgICAgc3RyX25ld29iaiA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX25ld29ial9fIik7CisgICAgICAgIGlmICghc3RyX2dldG5ld2FyZ3MgfHwgIXN0cl9nZXRzdGF0ZSB8fCAhc3RyX25ld29iaikKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KIAotICAgIGdldG5ld2FyZ3MgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIl9fZ2V0bmV3YXJnc19fIik7CisgICAgY2xzID0gKFB5T2JqZWN0ICopIFB5X1RZUEUob2JqKTsKKworICAgIGdldG5ld2FyZ3MgPSBQeU9iamVjdF9HZXRBdHRyKG9iaiwgc3RyX2dldG5ld2FyZ3MpOwogICAgIGlmIChnZXRuZXdhcmdzICE9IE5VTEwpIHsKICAgICAgICAgYXJncyA9IFB5T2JqZWN0X0NhbGxPYmplY3QoZ2V0bmV3YXJncywgTlVMTCk7CiAgICAgICAgIFB5X0RFQ1JFRihnZXRuZXdhcmdzKTsKQEAgLTMxODQsNyArMzMwMSw3IEBACiAgICAgaWYgKGFyZ3MgPT0gTlVMTCkKICAgICAgICAgZ290byBlbmQ7CiAKLSAgICBnZXRzdGF0ZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiX19nZXRzdGF0ZV9fIik7CisgICAgZ2V0c3RhdGUgPSBQeU9iamVjdF9HZXRBdHRyKG9iaiwgc3RyX2dldHN0YXRlKTsKICAgICBpZiAoZ2V0c3RhdGUgIT0gTlVMTCkgewogICAgICAgICBzdGF0ZSA9IFB5T2JqZWN0X0NhbGxPYmplY3QoZ2V0c3RhdGUsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYoZ2V0c3RhdGUpOwpAQCAtMzE5MiwxNyArMzMwOSwxOCBAQAogICAgICAgICAgICAgZ290byBlbmQ7CiAgICAgfQogICAgIGVsc2UgeworICAgICAgICBQeU9iamVjdCAqKmRpY3Q7CiAgICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgICAgIHN0YXRlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJfX2RpY3RfXyIpOwotICAgICAgICBpZiAoc3RhdGUgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgZGljdCA9IF9QeU9iamVjdF9HZXREaWN0UHRyKG9iaik7CisgICAgICAgIGlmIChkaWN0ICYmICpkaWN0KQorICAgICAgICAgICAgc3RhdGUgPSAqZGljdDsKKyAgICAgICAgZWxzZQogICAgICAgICAgICAgc3RhdGUgPSBQeV9Ob25lOwotICAgICAgICAgICAgUHlfSU5DUkVGKHN0YXRlKTsKLSAgICAgICAgfQorICAgICAgICBQeV9JTkNSRUYoc3RhdGUpOwogICAgICAgICBuYW1lcyA9IHNsb3RuYW1lcyhjbHMpOwogICAgICAgICBpZiAobmFtZXMgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZW5kOwotICAgICAgICBpZiAobmFtZXMgIT0gUHlfTm9uZSkgeworICAgICAgICBpZiAobmFtZXMgIT0gUHlfTm9uZSAmJiBQeUxpc3RfR0VUX1NJWkUobmFtZXMpID4gMCkgewogICAgICAgICAgICAgYXNzZXJ0KFB5TGlzdF9DaGVjayhuYW1lcykpOwogICAgICAgICAgICAgc2xvdHMgPSBQeURpY3RfTmV3KCk7CiAgICAgICAgICAgICBpZiAoc2xvdHMgPT0gTlVMTCkKQEAgLTMyNDksNyArMzM2Nyw4IEBACiAgICAgICAgIFB5X0lOQ1JFRihkaWN0aXRlbXMpOwogICAgIH0KICAgICBlbHNlIHsKLSAgICAgICAgUHlPYmplY3QgKml0ZW1zID0gUHlPYmplY3RfQ2FsbE1ldGhvZChvYmosICJpdGVtcyIsICIiKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoaXRlbXMpOworICAgICAgICBQeU9iamVjdCAqaXRlbXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKG9iaiwgJlB5SWRfaXRlbXMsICIiKTsKICAgICAgICAgaWYgKGl0ZW1zID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVuZDsKICAgICAgICAgZGljdGl0ZW1zID0gUHlPYmplY3RfR2V0SXRlcihpdGVtcyk7CkBAIC0zMjYxLDcgKzMzODAsNyBAQAogICAgIGNvcHlyZWcgPSBpbXBvcnRfY29weXJlZygpOwogICAgIGlmIChjb3B5cmVnID09IE5VTEwpCiAgICAgICAgIGdvdG8gZW5kOwotICAgIG5ld29iaiA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoY29weXJlZywgIl9fbmV3b2JqX18iKTsKKyAgICBuZXdvYmogPSBQeU9iamVjdF9HZXRBdHRyKGNvcHlyZWcsIHN0cl9uZXdvYmopOwogICAgIGlmIChuZXdvYmogPT0gTlVMTCkKICAgICAgICAgZ290byBlbmQ7CiAKQEAgLTMyNjksOCArMzM4OCw4IEBACiAgICAgYXJnczIgPSBQeVR1cGxlX05ldyhuKzEpOwogICAgIGlmIChhcmdzMiA9PSBOVUxMKQogICAgICAgICBnb3RvIGVuZDsKKyAgICBQeV9JTkNSRUYoY2xzKTsKICAgICBQeVR1cGxlX1NFVF9JVEVNKGFyZ3MyLCAwLCBjbHMpOwotICAgIGNscyA9IE5VTEw7CiAgICAgZm9yIChpID0gMDsgaSA8IG47IGkrKykgewogICAgICAgICBQeU9iamVjdCAqdiA9IFB5VHVwbGVfR0VUX0lURU0oYXJncywgaSk7CiAgICAgICAgIFB5X0lOQ1JFRih2KTsKQEAgLTMyODAsNyArMzM5OSw2IEBACiAgICAgcmVzID0gUHlUdXBsZV9QYWNrKDUsIG5ld29iaiwgYXJnczIsIHN0YXRlLCBsaXN0aXRlbXMsIGRpY3RpdGVtcyk7CiAKICAgZW5kOgotICAgIFB5X1hERUNSRUYoY2xzKTsKICAgICBQeV9YREVDUkVGKGFyZ3MpOwogICAgIFB5X1hERUNSRUYoYXJnczIpOwogICAgIFB5X1hERUNSRUYoc2xvdHMpOwpAQCAtMzM0MCwzMSArMzQ1OCwzNCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIG9iamVjdF9yZWR1Y2VfZXgoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogeworICAgIHN0YXRpYyBQeU9iamVjdCAqc3RyX3JlZHVjZSA9IE5VTEwsICpvYmpyZWR1Y2U7CiAgICAgUHlPYmplY3QgKnJlZHVjZSwgKnJlczsKICAgICBpbnQgcHJvdG8gPSAwOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8aTpfX3JlZHVjZV9leF9fIiwgJnByb3RvKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZWR1Y2UgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHNlbGYsICJfX3JlZHVjZV9fIik7CisgICAgaWYgKHN0cl9yZWR1Y2UgPT0gTlVMTCkgeworICAgICAgICBzdHJfcmVkdWNlID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcoIl9fcmVkdWNlX18iKTsKKyAgICAgICAgb2JqcmVkdWNlID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcoUHlCYXNlT2JqZWN0X1R5cGUudHBfZGljdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9fcmVkdWNlX18iKTsKKyAgICAgICAgaWYgKHN0cl9yZWR1Y2UgPT0gTlVMTCB8fCBvYmpyZWR1Y2UgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJlZHVjZSA9IFB5T2JqZWN0X0dldEF0dHIoc2VsZiwgc3RyX3JlZHVjZSk7CiAgICAgaWYgKHJlZHVjZSA9PSBOVUxMKQogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgIGVsc2UgewotICAgICAgICBQeU9iamVjdCAqY2xzLCAqY2xzcmVkdWNlLCAqb2JqcmVkdWNlOworICAgICAgICBQeU9iamVjdCAqY2xzLCAqY2xzcmVkdWNlOwogICAgICAgICBpbnQgb3ZlcnJpZGU7Ci0gICAgICAgIGNscyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoc2VsZiwgIl9fY2xhc3NfXyIpOwotICAgICAgICBpZiAoY2xzID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZWR1Y2UpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgY2xzcmVkdWNlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhjbHMsICJfX3JlZHVjZV9fIik7Ci0gICAgICAgIFB5X0RFQ1JFRihjbHMpOworCisgICAgICAgIGNscyA9IChQeU9iamVjdCAqKSBQeV9UWVBFKHNlbGYpOworICAgICAgICBjbHNyZWR1Y2UgPSBQeU9iamVjdF9HZXRBdHRyKGNscywgc3RyX3JlZHVjZSk7CiAgICAgICAgIGlmIChjbHNyZWR1Y2UgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKHJlZHVjZSk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICBvYmpyZWR1Y2UgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhQeUJhc2VPYmplY3RfVHlwZS50cF9kaWN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19yZWR1Y2VfXyIpOwogICAgICAgICBvdmVycmlkZSA9IChjbHNyZWR1Y2UgIT0gb2JqcmVkdWNlKTsKICAgICAgICAgUHlfREVDUkVGKGNsc3JlZHVjZSk7CiAgICAgICAgIGlmIChvdmVycmlkZSkgewpAQCAtMzM4Miw4ICszNTAzLDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvYmplY3Rfc3ViY2xhc3Nob29rKFB5T2JqZWN0ICpjbHMsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIH0KIAogUHlEb2NfU1RSVkFSKG9iamVjdF9zdWJjbGFzc2hvb2tfZG9jLApAQCAtMzQxNCwyMSArMzUzNCwyMSBAQAogICAgIHNlbGZfYXNfc3RyID0gUHlPYmplY3RfU3RyKHNlbGYpOwogICAgIGlmIChzZWxmX2FzX3N0ciAhPSBOVUxMKSB7CiAgICAgICAgIC8qIElzc3VlIDc5OTQ6IElmIHdlJ3JlIGNvbnZlcnRpbmcgdG8gYSBzdHJpbmcsIHdlCi0JICAgc2hvdWxkIHJlamVjdCBmb3JtYXQgc3BlY2lmaWNhdGlvbnMgKi8KLSAgICAgICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShmb3JtYXRfc3BlYykgPiAwKSB7Ci0JICAgIGlmIChQeUVycl9XYXJuRXgoUHlFeGNfUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywKLQkJCSAgICAgIm9iamVjdC5fX2Zvcm1hdF9fIHdpdGggYSBub24tZW1wdHkgZm9ybWF0ICIKLQkJCSAgICAgInN0cmluZyBpcyBkZXByZWNhdGVkIiwgMSkgPCAwKSB7Ci0JICAgICAgZ290byBkb25lOwotCSAgICB9Ci0JICAgIC8qIEV2ZW50dWFsbHkgdGhpcyB3aWxsIGJlY29tZSBhbiBlcnJvcjoKLQkgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLQkgICAgICAgIm5vbi1lbXB0eSBmb3JtYXQgc3RyaW5nIHBhc3NlZCB0byBvYmplY3QuX19mb3JtYXRfXyIpOwotCSAgICAgICBnb3RvIGRvbmU7Ci0JICAgICovCi0JfQorICAgICAgICAgICBzaG91bGQgcmVqZWN0IGZvcm1hdCBzcGVjaWZpY2F0aW9ucyAqLworICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoZm9ybWF0X3NwZWMpID4gMCkgeworICAgICAgICAgICAgaWYgKFB5RXJyX1dhcm5FeChQeUV4Y19EZXByZWNhdGlvbldhcm5pbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvYmplY3QuX19mb3JtYXRfXyB3aXRoIGEgbm9uLWVtcHR5IGZvcm1hdCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpbmcgaXMgZGVwcmVjYXRlZCIsIDEpIDwgMCkgeworICAgICAgICAgICAgICBnb3RvIGRvbmU7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAvKiBFdmVudHVhbGx5IHRoaXMgd2lsbCBiZWNvbWUgYW4gZXJyb3I6CisgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgIm5vbi1lbXB0eSBmb3JtYXQgc3RyaW5nIHBhc3NlZCB0byBvYmplY3QuX19mb3JtYXRfXyIpOworICAgICAgICAgICAgICAgZ290byBkb25lOworICAgICAgICAgICAgKi8KKyAgICAgICAgfQogCi0JcmVzdWx0ID0gUHlPYmplY3RfRm9ybWF0KHNlbGZfYXNfc3RyLCBmb3JtYXRfc3BlYyk7CisgICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0Zvcm1hdChzZWxmX2FzX3N0ciwgZm9ybWF0X3NwZWMpOwogICAgIH0KIAogZG9uZToKQEAgLTM0NTEsNiArMzU3MSw1MyBAQAogICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3QocmVzKTsKIH0KIAorLyogX19kaXJfXyBmb3IgZ2VuZXJpYyBvYmplY3RzOiByZXR1cm5zIF9fZGljdF9fLCBfX2NsYXNzX18sCisgICBhbmQgcmVjdXJzaXZlbHkgdXAgdGhlIF9fY2xhc3NfXy5fX2Jhc2VzX18gY2hhaW4uCisqLworc3RhdGljIFB5T2JqZWN0ICoKK29iamVjdF9kaXIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOworICAgIFB5T2JqZWN0ICpkaWN0ID0gTlVMTDsKKyAgICBQeU9iamVjdCAqaXRzY2xhc3MgPSBOVUxMOworCisgICAgLyogR2V0IF9fZGljdF9fICh3aGljaCBtYXkgb3IgbWF5IG5vdCBiZSBhIHJlYWwgZGljdC4uLikgKi8KKyAgICBkaWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZChzZWxmLCAmUHlJZF9fX2RpY3RfXyk7CisgICAgaWYgKGRpY3QgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICBkaWN0ID0gUHlEaWN0X05ldygpOworICAgIH0KKyAgICBlbHNlIGlmICghUHlEaWN0X0NoZWNrKGRpY3QpKSB7CisgICAgICAgIFB5X0RFQ1JFRihkaWN0KTsKKyAgICAgICAgZGljdCA9IFB5RGljdF9OZXcoKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8qIENvcHkgX19kaWN0X18gdG8gYXZvaWQgbXV0YXRpbmcgaXQuICovCisgICAgICAgIFB5T2JqZWN0ICp0ZW1wID0gUHlEaWN0X0NvcHkoZGljdCk7CisgICAgICAgIFB5X0RFQ1JFRihkaWN0KTsKKyAgICAgICAgZGljdCA9IHRlbXA7CisgICAgfQorCisgICAgaWYgKGRpY3QgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcjsKKworICAgIC8qIE1lcmdlIGluIGF0dHJzIHJlYWNoYWJsZSBmcm9tIGl0cyBjbGFzcy4gKi8KKyAgICBpdHNjbGFzcyA9IF9QeU9iamVjdF9HZXRBdHRySWQoc2VsZiwgJlB5SWRfX19jbGFzc19fKTsKKyAgICBpZiAoaXRzY2xhc3MgPT0gTlVMTCkKKyAgICAgICAgLyogWFhYKHRvbWVyKTogUGVyaGFwcyBmYWxsIGJhY2sgdG8gb2JqLT5vYl90eXBlIGlmIG5vCisgICAgICAgICAgICAgICAgICAgICAgIF9fY2xhc3NfXyBleGlzdHM/ICovCisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgZWxzZSBpZiAobWVyZ2VfY2xhc3NfZGljdChkaWN0LCBpdHNjbGFzcykgIT0gMCkKKyAgICAgICAgZ290byBlcnJvcjsKKworICAgIHJlc3VsdCA9IFB5RGljdF9LZXlzKGRpY3QpOworICAgIC8qIGZhbGwgdGhyb3VnaCAqLworZXJyb3I6CisgICAgUHlfWERFQ1JFRihpdHNjbGFzcyk7CisgICAgUHlfWERFQ1JFRihkaWN0KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCiBzdGF0aWMgUHlNZXRob2REZWYgb2JqZWN0X21ldGhvZHNbXSA9IHsKICAgICB7Il9fcmVkdWNlX2V4X18iLCBvYmplY3RfcmVkdWNlX2V4LCBNRVRIX1ZBUkFSR1MsCiAgICAgIFB5RG9jX1NUUigiaGVscGVyIGZvciBwaWNrbGUiKX0sCkBAIC0zNDYyLDYgKzM2MjksOCBAQAogICAgICBQeURvY19TVFIoImRlZmF1bHQgb2JqZWN0IGZvcm1hdHRlciIpfSwKICAgICB7Il9fc2l6ZW9mX18iLCBvYmplY3Rfc2l6ZW9mLCBNRVRIX05PQVJHUywKICAgICAgUHlEb2NfU1RSKCJfX3NpemVvZl9fKCkgLT4gaW50XG5zaXplIG9mIG9iamVjdCBpbiBtZW1vcnksIGluIGJ5dGVzIil9LAorICAgIHsiX19kaXJfXyIsIG9iamVjdF9kaXIsIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoIl9fZGlyX18oKSAtPiBsaXN0XG5kZWZhdWx0IGRpcigpIGltcGxlbWVudGF0aW9uIil9LAogICAgIHswfQogfTsKIApAQCAtMzUzMCw3ICszNjk5LDcgQEAKICAgICAgICAgICAgIGRlc2NyID0gUHlEZXNjcl9OZXdDbGFzc01ldGhvZCh0eXBlLCBtZXRoKTsKICAgICAgICAgfQogICAgICAgICBlbHNlIGlmIChtZXRoLT5tbF9mbGFncyAmIE1FVEhfU1RBVElDKSB7Ci0gICAgICAgICAgICBQeU9iamVjdCAqY2Z1bmMgPSBQeUNGdW5jdGlvbl9OZXcobWV0aCwgTlVMTCk7CisgICAgICAgICAgICBQeU9iamVjdCAqY2Z1bmMgPSBQeUNGdW5jdGlvbl9OZXcobWV0aCwgKFB5T2JqZWN0Kil0eXBlKTsKICAgICAgICAgICAgIGlmIChjZnVuYyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIGRlc2NyID0gUHlTdGF0aWNNZXRob2RfTmV3KGNmdW5jKTsKQEAgLTM2MTAsOCArMzc3OSw4IEBACiAgICAgICAgICAgIHRoYXQgdGhlIGV4dGVuc2lvbiB0eXBlJ3Mgb3duIGZhY3RvcnkgZnVuY3Rpb24gZW5zdXJlcykuCiAgICAgICAgICAgIEhlYXAgdHlwZXMsIG9mIGNvdXJzZSwgYXJlIHVuZGVyIG91ciBjb250cm9sLCBzbyB0aGV5IGRvCiAgICAgICAgICAgIGluaGVyaXQgdHBfbmV3OyBzdGF0aWMgZXh0ZW5zaW9uIHR5cGVzIHRoYXQgc3BlY2lmeSBzb21lCi0gICAgICAgICAgIG90aGVyIGJ1aWx0LWluIHR5cGUgYXMgdGhlIGRlZmF1bHQgYXJlIGNvbnNpZGVyZWQKLSAgICAgICAgICAgbmV3LXN0eWxlLWF3YXJlIHNvIHRoZXkgYWxzbyBpbmhlcml0IG9iamVjdC5fX25ld19fLiAqLworICAgICAgICAgICBvdGhlciBidWlsdC1pbiB0eXBlIGFzIHRoZSBkZWZhdWx0IGFsc28KKyAgICAgICAgICAgaW5oZXJpdCBvYmplY3QuX19uZXdfXy4gKi8KICAgICAgICAgaWYgKGJhc2UgIT0gJlB5QmFzZU9iamVjdF9UeXBlIHx8CiAgICAgICAgICAgICAodHlwZS0+dHBfZmxhZ3MgJiBQeV9UUEZMQUdTX0hFQVBUWVBFKSkgewogICAgICAgICAgICAgaWYgKHR5cGUtPnRwX25ldyA9PSBOVUxMKQpAQCAtNDYyMywxNiArNDc5MiwxNiBAQAogc3RhdGljIFB5T2JqZWN0ICogXAogRlVOQ05BTUUoUHlPYmplY3QgKnNlbGYpIFwKIHsgXAotICAgIHN0YXRpYyBQeU9iamVjdCAqY2FjaGVfc3RyOyBcCi0gICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsIE9QU1RSLCAmY2FjaGVfc3RyLCAiKCkiKTsgXAorICAgIF9QeV9zdGF0aWNfc3RyaW5nKGlkLCBPUFNUUik7IFwKKyAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgJmlkLCAiKCkiKTsgXAogfQogCiAjZGVmaW5lIFNMT1QxKEZVTkNOQU1FLCBPUFNUUiwgQVJHMVRZUEUsIEFSR0NPREVTKSBcCiBzdGF0aWMgUHlPYmplY3QgKiBcCiBGVU5DTkFNRShQeU9iamVjdCAqc2VsZiwgQVJHMVRZUEUgYXJnMSkgXAogeyBcCi0gICAgc3RhdGljIFB5T2JqZWN0ICpjYWNoZV9zdHI7IFwKLSAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgT1BTVFIsICZjYWNoZV9zdHIsICIoIiBBUkdDT0RFUyAiKSIsIGFyZzEpOyBcCisgICAgX1B5X3N0YXRpY19zdHJpbmcoaWQsIE9QU1RSKTsgXAorICAgIHJldHVybiBjYWxsX21ldGhvZChzZWxmLCAmaWQsICIoIiBBUkdDT0RFUyAiKSIsIGFyZzEpOyBcCiB9CiAKIC8qIEJvb2xlYW4gaGVscGVyIGZvciBTTE9UMUJJTkZVTEwoKS4KQEAgLTQ2NzQsNyArNDg0Myw4IEBACiBzdGF0aWMgUHlPYmplY3QgKiBcCiBGVU5DTkFNRShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm90aGVyKSBcCiB7IFwKLSAgICBzdGF0aWMgUHlPYmplY3QgKmNhY2hlX3N0ciwgKnJjYWNoZV9zdHI7IFwKKyAgICBfUHlfc3RhdGljX3N0cmluZyhvcF9pZCwgT1BTVFIpOyBcCisgICAgX1B5X3N0YXRpY19zdHJpbmcocm9wX2lkLCBST1BTVFIpOyBcCiAgICAgaW50IGRvX290aGVyID0gUHlfVFlQRShzZWxmKSAhPSBQeV9UWVBFKG90aGVyKSAmJiBcCiAgICAgICAgIFB5X1RZUEUob3RoZXIpLT50cF9hc19udW1iZXIgIT0gTlVMTCAmJiBcCiAgICAgICAgIFB5X1RZUEUob3RoZXIpLT50cF9hc19udW1iZXItPlNMT1ROQU1FID09IFRFU1RGVU5DOyBcCkBAIC00Njg0LDI2ICs0ODU0LDIyIEBACiAgICAgICAgIGlmIChkb19vdGhlciAmJiBcCiAgICAgICAgICAgICBQeVR5cGVfSXNTdWJ0eXBlKFB5X1RZUEUob3RoZXIpLCBQeV9UWVBFKHNlbGYpKSAmJiBcCiAgICAgICAgICAgICBtZXRob2RfaXNfb3ZlcmxvYWRlZChzZWxmLCBvdGhlciwgUk9QU1RSKSkgeyBcCi0gICAgICAgICAgICByID0gY2FsbF9tYXliZSggXAotICAgICAgICAgICAgICAgIG90aGVyLCBST1BTVFIsICZyY2FjaGVfc3RyLCAiKE8pIiwgc2VsZik7IFwKKyAgICAgICAgICAgIHIgPSBjYWxsX21heWJlKG90aGVyLCAmcm9wX2lkLCAiKE8pIiwgc2VsZik7IFwKICAgICAgICAgICAgIGlmIChyICE9IFB5X05vdEltcGxlbWVudGVkKSBcCiAgICAgICAgICAgICAgICAgcmV0dXJuIHI7IFwKICAgICAgICAgICAgIFB5X0RFQ1JFRihyKTsgXAogICAgICAgICAgICAgZG9fb3RoZXIgPSAwOyBcCiAgICAgICAgIH0gXAotICAgICAgICByID0gY2FsbF9tYXliZSggXAotICAgICAgICAgICAgc2VsZiwgT1BTVFIsICZjYWNoZV9zdHIsICIoTykiLCBvdGhlcik7IFwKKyAgICAgICAgciA9IGNhbGxfbWF5YmUoc2VsZiwgJm9wX2lkLCAiKE8pIiwgb3RoZXIpOyBcCiAgICAgICAgIGlmIChyICE9IFB5X05vdEltcGxlbWVudGVkIHx8IFwKICAgICAgICAgICAgIFB5X1RZUEUob3RoZXIpID09IFB5X1RZUEUoc2VsZikpIFwKICAgICAgICAgICAgIHJldHVybiByOyBcCiAgICAgICAgIFB5X0RFQ1JFRihyKTsgXAogICAgIH0gXAogICAgIGlmIChkb19vdGhlcikgeyBcCi0gICAgICAgIHJldHVybiBjYWxsX21heWJlKCBcCi0gICAgICAgICAgICBvdGhlciwgUk9QU1RSLCAmcmNhY2hlX3N0ciwgIihPKSIsIHNlbGYpOyBcCisgICAgICAgIHJldHVybiBjYWxsX21heWJlKG90aGVyLCAmcm9wX2lkLCAiKE8pIiwgc2VsZik7IFwKICAgICB9IFwKLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOyBcCi0gICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOyBcCisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOyBcCiB9CiAKICNkZWZpbmUgU0xPVDFCSU4oRlVOQ05BTUUsIFNMT1ROQU1FLCBPUFNUUiwgUk9QU1RSKSBcCkBAIC00NzEzLDE2ICs0ODc5LDE1IEBACiBzdGF0aWMgUHlPYmplY3QgKiBcCiBGVU5DTkFNRShQeU9iamVjdCAqc2VsZiwgQVJHMVRZUEUgYXJnMSwgQVJHMlRZUEUgYXJnMikgXAogeyBcCi0gICAgc3RhdGljIFB5T2JqZWN0ICpjYWNoZV9zdHI7IFwKLSAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgT1BTVFIsICZjYWNoZV9zdHIsIFwKLSAgICAgICAgICAgICAgICAgICAgICAgIigiIEFSR0NPREVTICIpIiwgYXJnMSwgYXJnMik7IFwKKyAgICBfUHlfc3RhdGljX3N0cmluZyhpZCwgI09QU1RSKTsgXAorICAgIHJldHVybiBjYWxsX21ldGhvZChzZWxmLCAmaWQsICIoIiBBUkdDT0RFUyAiKSIsIGFyZzEsIGFyZzIpOyBcCiB9CiAKIHN0YXRpYyBQeV9zc2l6ZV90CiBzbG90X3NxX2xlbmd0aChQeU9iamVjdCAqc2VsZikKIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmxlbl9zdHI7Ci0gICAgUHlPYmplY3QgKnJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICJfX2xlbl9fIiwgJmxlbl9zdHIsICIoKSIpOworICAgIF9QeV9JREVOVElGSUVSKF9fbGVuX18pOworICAgIFB5T2JqZWN0ICpyZXMgPSBjYWxsX21ldGhvZChzZWxmLCAmUHlJZF9fX2xlbl9fLCAiKCkiKTsKICAgICBQeV9zc2l6ZV90IGxlbjsKIAogICAgIGlmIChyZXMgPT0gTlVMTCkKQEAgLTQ3ODcsMTQgKzQ5NTIsMTMgQEAKIHNsb3Rfc3FfYXNzX2l0ZW0oUHlPYmplY3QgKnNlbGYsIFB5X3NzaXplX3QgaW5kZXgsIFB5T2JqZWN0ICp2YWx1ZSkKIHsKICAgICBQeU9iamVjdCAqcmVzOwotICAgIHN0YXRpYyBQeU9iamVjdCAqZGVsaXRlbV9zdHIsICpzZXRpdGVtX3N0cjsKKyAgICBfUHlfSURFTlRJRklFUihfX2RlbGl0ZW1fXyk7CisgICAgX1B5X0lERU5USUZJRVIoX19zZXRpdGVtX18pOwogCiAgICAgaWYgKHZhbHVlID09IE5VTEwpCi0gICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICJfX2RlbGl0ZW1fXyIsICZkZWxpdGVtX3N0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIihuKSIsIGluZGV4KTsKKyAgICAgICAgcmVzID0gY2FsbF9tZXRob2Qoc2VsZiwgJlB5SWRfX19kZWxpdGVtX18sICIobikiLCBpbmRleCk7CiAgICAgZWxzZQotICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAiX19zZXRpdGVtX18iLCAmc2V0aXRlbV9zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICIobk8pIiwgaW5kZXgsIHZhbHVlKTsKKyAgICAgICAgcmVzID0gY2FsbF9tZXRob2Qoc2VsZiwgJlB5SWRfX19zZXRpdGVtX18sICIobk8pIiwgaW5kZXgsIHZhbHVlKTsKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIHJldHVybiAtMTsKICAgICBQeV9ERUNSRUYocmVzKTsKQEAgLTQ4MDYsMTAgKzQ5NzAsOSBAQAogewogICAgIFB5T2JqZWN0ICpmdW5jLCAqcmVzLCAqYXJnczsKICAgICBpbnQgcmVzdWx0ID0gLTE7CisgICAgX1B5X0lERU5USUZJRVIoX19jb250YWluc19fKTsKIAotICAgIHN0YXRpYyBQeU9iamVjdCAqY29udGFpbnNfc3RyOwotCi0gICAgZnVuYyA9IGxvb2t1cF9tYXliZShzZWxmLCAiX19jb250YWluc19fIiwgJmNvbnRhaW5zX3N0cik7CisgICAgZnVuYyA9IGxvb2t1cF9tYXliZShzZWxmLCAmUHlJZF9fX2NvbnRhaW5zX18pOwogICAgIGlmIChmdW5jICE9IE5VTEwpIHsKICAgICAgICAgYXJncyA9IFB5VHVwbGVfUGFjaygxLCB2YWx1ZSk7CiAgICAgICAgIGlmIChhcmdzID09IE5VTEwpCkBAIC00ODQwLDE0ICs1MDAzLDE0IEBACiBzbG90X21wX2Fzc19zdWJzY3JpcHQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICprZXksIFB5T2JqZWN0ICp2YWx1ZSkKIHsKICAgICBQeU9iamVjdCAqcmVzOwotICAgIHN0YXRpYyBQeU9iamVjdCAqZGVsaXRlbV9zdHIsICpzZXRpdGVtX3N0cjsKKyAgICBfUHlfSURFTlRJRklFUihfX2RlbGl0ZW1fXyk7CisgICAgX1B5X0lERU5USUZJRVIoX19zZXRpdGVtX18pOwogCiAgICAgaWYgKHZhbHVlID09IE5VTEwpCi0gICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICJfX2RlbGl0ZW1fXyIsICZkZWxpdGVtX3N0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIihPKSIsIGtleSk7CisgICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19fZGVsaXRlbV9fLCAiKE8pIiwga2V5KTsKICAgICBlbHNlCi0gICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICJfX3NldGl0ZW1fXyIsICZzZXRpdGVtX3N0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAiKE9PKSIsIGtleSwgdmFsdWUpOworICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAmUHlJZF9fX3NldGl0ZW1fXywgIihPTykiLCBrZXksIHZhbHVlKTsKKwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwogICAgIFB5X0RFQ1JFRihyZXMpOwpAQCAtNDg2OCw3ICs1MDMxLDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzbG90X25iX3Bvd2VyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqb3RoZXIsIFB5T2JqZWN0ICptb2R1bHVzKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqcG93X3N0cjsKKyAgICBfUHlfSURFTlRJRklFUihfX3Bvd19fKTsKIAogICAgIGlmIChtb2R1bHVzID09IFB5X05vbmUpCiAgICAgICAgIHJldHVybiBzbG90X25iX3Bvd2VyX2JpbmFyeShzZWxmLCBvdGhlcik7CkBAIC00ODc3LDExICs1MDQwLDkgQEAKICAgICAgICBzbG90X25iX3Bvd2VyLCBzbyBjaGVjayBiZWZvcmUgY2FsbGluZyBzZWxmLl9fcG93X18uICovCiAgICAgaWYgKFB5X1RZUEUoc2VsZiktPnRwX2FzX251bWJlciAhPSBOVUxMICYmCiAgICAgICAgIFB5X1RZUEUoc2VsZiktPnRwX2FzX251bWJlci0+bmJfcG93ZXIgPT0gc2xvdF9uYl9wb3dlcikgewotICAgICAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgIl9fcG93X18iLCAmcG93X3N0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICIoT08pIiwgb3RoZXIsIG1vZHVsdXMpOworICAgICAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgJlB5SWRfX19wb3dfXywgIihPTykiLCBvdGhlciwgbW9kdWx1cyk7CiAgICAgfQotICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIH0KIAogU0xPVDAoc2xvdF9uYl9uZWdhdGl2ZSwgIl9fbmVnX18iKQpAQCAtNDg5MiwxNSArNTA1MywxNiBAQAogc2xvdF9uYl9ib29sKFB5T2JqZWN0ICpzZWxmKQogewogICAgIFB5T2JqZWN0ICpmdW5jLCAqYXJnczsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmJvb2xfc3RyLCAqbGVuX3N0cjsKICAgICBpbnQgcmVzdWx0ID0gLTE7CiAgICAgaW50IHVzaW5nX2xlbiA9IDA7CisgICAgX1B5X0lERU5USUZJRVIoX19sZW5fXyk7CisgICAgX1B5X0lERU5USUZJRVIoX19ib29sX18pOwogCi0gICAgZnVuYyA9IGxvb2t1cF9tYXliZShzZWxmLCAiX19ib29sX18iLCAmYm9vbF9zdHIpOworICAgIGZ1bmMgPSBsb29rdXBfbWF5YmUoc2VsZiwgJlB5SWRfX19ib29sX18pOwogICAgIGlmIChmdW5jID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIGZ1bmMgPSBsb29rdXBfbWF5YmUoc2VsZiwgIl9fbGVuX18iLCAmbGVuX3N0cik7CisgICAgICAgIGZ1bmMgPSBsb29rdXBfbWF5YmUoc2VsZiwgJlB5SWRfX19sZW5fXyk7CiAgICAgICAgIGlmIChmdW5jID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gUHlFcnJfT2NjdXJyZWQoKSA/IC0xIDogMTsKICAgICAgICAgdXNpbmdfbGVuID0gMTsKQEAgLTQ5MzUsOCArNTA5Nyw4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc2xvdF9uYl9pbmRleChQeU9iamVjdCAqc2VsZikKIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmluZGV4X3N0cjsKLSAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgIl9faW5kZXhfXyIsICZpbmRleF9zdHIsICIoKSIpOworICAgIF9QeV9JREVOVElGSUVSKF9faW5kZXhfXyk7CisgICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19faW5kZXhfXywgIigpIik7CiB9CiAKIApAQCAtNDk1Nyw4ICs1MTE5LDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzbG90X25iX2lucGxhY2VfcG93ZXIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICogYXJnMSwgUHlPYmplY3QgKmFyZzIpCiB7Ci0gIHN0YXRpYyBQeU9iamVjdCAqY2FjaGVfc3RyOwotICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgIl9faXBvd19fIiwgJmNhY2hlX3N0ciwgIigiICJPIiAiKSIsIGFyZzEpOworICAgIF9QeV9JREVOVElGSUVSKF9faXBvd19fKTsKKyAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgJlB5SWRfX19pcG93X18sICIoIiAiTyIgIikiLCBhcmcxKTsKIH0KIFNMT1QxKHNsb3RfbmJfaW5wbGFjZV9sc2hpZnQsICJfX2lsc2hpZnRfXyIsIFB5T2JqZWN0ICosICJPIikKIFNMT1QxKHNsb3RfbmJfaW5wbGFjZV9yc2hpZnQsICJfX2lyc2hpZnRfXyIsIFB5T2JqZWN0ICosICJPIikKQEAgLTQ5NzUsOSArNTEzNyw5IEBACiBzbG90X3RwX3JlcHIoUHlPYmplY3QgKnNlbGYpCiB7CiAgICAgUHlPYmplY3QgKmZ1bmMsICpyZXM7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpyZXByX3N0cjsKKyAgICBfUHlfSURFTlRJRklFUihfX3JlcHJfXyk7CiAKLSAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAiX19yZXByX18iLCAmcmVwcl9zdHIpOworICAgIGZ1bmMgPSBsb29rdXBfbWV0aG9kKHNlbGYsICZQeUlkX19fcmVwcl9fKTsKICAgICBpZiAoZnVuYyAhPSBOVUxMKSB7CiAgICAgICAgIHJlcyA9IFB5RXZhbF9DYWxsT2JqZWN0KGZ1bmMsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYoZnVuYyk7CkBAIC00OTkyLDIzICs1MTU0LDMwIEBACiBzbG90X3RwX3N0cihQeU9iamVjdCAqc2VsZikKIHsKICAgICBQeU9iamVjdCAqZnVuYywgKnJlczsKLSAgICBzdGF0aWMgUHlPYmplY3QgKnN0cl9zdHI7CisgICAgX1B5X0lERU5USUZJRVIoX19zdHJfXyk7CiAKLSAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAiX19zdHJfXyIsICZzdHJfc3RyKTsKKyAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAmUHlJZF9fX3N0cl9fKTsKICAgICBpZiAoZnVuYyAhPSBOVUxMKSB7CiAgICAgICAgIHJlcyA9IFB5RXZhbF9DYWxsT2JqZWN0KGZ1bmMsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYoZnVuYyk7CiAgICAgICAgIHJldHVybiByZXM7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBQeU9iamVjdCAqcmVzczsKKyAgICAgICAgLyogUHlPYmplY3QgKnJlc3M7ICovCiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIHJlcyA9IHNsb3RfdHBfcmVwcihzZWxmKTsKICAgICAgICAgaWYgKCFyZXMpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgcmVzcyA9IF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyhyZXMsIE5VTEwpOworICAgICAgICAvKiBYWFggdGhpcyBpcyBub24tc2Vuc2ljYWwuIFdoeSBzaG91bGQgd2UgcmV0dXJuCisgICAgICAgICAgIGEgYnl0ZXMgb2JqZWN0IGZyb20gX19zdHJfXy4gSXMgdGhpcyBjb2RlIGV2ZW4KKyAgICAgICAgICAgdXNlZD8gLSBtdmwgKi8KKyAgICAgICAgYXNzZXJ0KDApOworICAgICAgICByZXR1cm4gcmVzOworICAgICAgICAvKgorICAgICAgICByZXNzID0gX1B5VW5pY29kZV9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nKHJlcyk7CiAgICAgICAgIFB5X0RFQ1JFRihyZXMpOwogICAgICAgICByZXR1cm4gcmVzczsKKyAgICAgICAgKi8KICAgICB9CiB9CiAKQEAgLTUwMTYsMTAgKzUxODUsMTAgQEAKIHNsb3RfdHBfaGFzaChQeU9iamVjdCAqc2VsZikKIHsKICAgICBQeU9iamVjdCAqZnVuYywgKnJlczsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmhhc2hfc3RyOwogICAgIFB5X3NzaXplX3QgaDsKKyAgICBfUHlfSURFTlRJRklFUihfX2hhc2hfXyk7CiAKLSAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAiX19oYXNoX18iLCAmaGFzaF9zdHIpOworICAgIGZ1bmMgPSBsb29rdXBfbWV0aG9kKHNlbGYsICZQeUlkX19faGFzaF9fKTsKIAogICAgIGlmIChmdW5jID09IFB5X05vbmUpIHsKICAgICAgICAgUHlfREVDUkVGKGZ1bmMpOwpAQCAtNTA2Myw4ICs1MjMyLDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzbG90X3RwX2NhbGwoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmNhbGxfc3RyOwotICAgIFB5T2JqZWN0ICptZXRoID0gbG9va3VwX21ldGhvZChzZWxmLCAiX19jYWxsX18iLCAmY2FsbF9zdHIpOworICAgIF9QeV9JREVOVElGSUVSKF9fY2FsbF9fKTsKKyAgICBQeU9iamVjdCAqbWV0aCA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgJlB5SWRfX19jYWxsX18pOwogICAgIFB5T2JqZWN0ICpyZXM7CiAKICAgICBpZiAobWV0aCA9PSBOVUxMKQpAQCAtNTA5MCw5ICs1MjU5LDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzbG90X3RwX2dldGF0dHJvKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqbmFtZSkKIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmdldGF0dHJpYnV0ZV9zdHIgPSBOVUxMOwotICAgIHJldHVybiBjYWxsX21ldGhvZChzZWxmLCAiX19nZXRhdHRyaWJ1dGVfXyIsICZnZXRhdHRyaWJ1dGVfc3RyLAotICAgICAgICAgICAgICAgICAgICAgICAiKE8pIiwgbmFtZSk7CisgICAgX1B5X0lERU5USUZJRVIoX19nZXRhdHRyaWJ1dGVfXyk7CisgICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19fZ2V0YXR0cmlidXRlX18sICIoTykiLCBuYW1lKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTUxNzIsNDAgKzUzNDAsMzcgQEAKIHNsb3RfdHBfc2V0YXR0cm8oUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqdmFsdWUpCiB7CiAgICAgUHlPYmplY3QgKnJlczsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmRlbGF0dHJfc3RyLCAqc2V0YXR0cl9zdHI7CisgICAgX1B5X0lERU5USUZJRVIoX19kZWxhdHRyX18pOworICAgIF9QeV9JREVOVElGSUVSKF9fc2V0YXR0cl9fKTsKIAogICAgIGlmICh2YWx1ZSA9PSBOVUxMKQotICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAiX19kZWxhdHRyX18iLCAmZGVsYXR0cl9zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICIoTykiLCBuYW1lKTsKKyAgICAgICAgcmVzID0gY2FsbF9tZXRob2Qoc2VsZiwgJlB5SWRfX19kZWxhdHRyX18sICIoTykiLCBuYW1lKTsKICAgICBlbHNlCi0gICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICJfX3NldGF0dHJfXyIsICZzZXRhdHRyX3N0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIihPTykiLCBuYW1lLCB2YWx1ZSk7CisgICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19fc2V0YXR0cl9fLCAiKE9PKSIsIG5hbWUsIHZhbHVlKTsKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIHJldHVybiAtMTsKICAgICBQeV9ERUNSRUYocmVzKTsKICAgICByZXR1cm4gMDsKIH0KIAotc3RhdGljIGNoYXIgKm5hbWVfb3BbXSA9IHsKLSAgICAiX19sdF9fIiwKLSAgICAiX19sZV9fIiwKLSAgICAiX19lcV9fIiwKLSAgICAiX19uZV9fIiwKLSAgICAiX19ndF9fIiwKLSAgICAiX19nZV9fIiwKK3N0YXRpYyBfUHlfSWRlbnRpZmllciBuYW1lX29wW10gPSB7CisgICAgezAsICJfX2x0X18iLCAwfSwKKyAgICB7MCwgIl9fbGVfXyIsIDB9LAorICAgIHswLCAiX19lcV9fIiwgMH0sCisgICAgezAsICJfX25lX18iLCAwfSwKKyAgICB7MCwgIl9fZ3RfXyIsIDB9LAorICAgIHswLCAiX19nZV9fIiwgMH0KIH07CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBzbG90X3RwX3JpY2hjb21wYXJlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqb3RoZXIsIGludCBvcCkKIHsKICAgICBQeU9iamVjdCAqZnVuYywgKmFyZ3MsICpyZXM7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpvcF9zdHJbNl07CiAKLSAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCBuYW1lX29wW29wXSwgJm9wX3N0cltvcF0pOworICAgIGZ1bmMgPSBsb29rdXBfbWV0aG9kKHNlbGYsICZuYW1lX29wW29wXSk7CiAgICAgaWYgKGZ1bmMgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9DbGVhcigpOwotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiAgICAgYXJncyA9IFB5VHVwbGVfUGFjaygxLCBvdGhlcik7CiAgICAgaWYgKGFyZ3MgPT0gTlVMTCkKQEAgLTUyMjIsOSArNTM4NywxMCBAQAogc2xvdF90cF9pdGVyKFB5T2JqZWN0ICpzZWxmKQogewogICAgIFB5T2JqZWN0ICpmdW5jLCAqcmVzOwotICAgIHN0YXRpYyBQeU9iamVjdCAqaXRlcl9zdHIsICpnZXRpdGVtX3N0cjsKKyAgICBfUHlfSURFTlRJRklFUihfX2l0ZXJfXyk7CisgICAgX1B5X0lERU5USUZJRVIoX19nZXRpdGVtX18pOwogCi0gICAgZnVuYyA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgIl9faXRlcl9fIiwgJml0ZXJfc3RyKTsKKyAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAmUHlJZF9fX2l0ZXJfXyk7CiAgICAgaWYgKGZ1bmMgIT0gTlVMTCkgewogICAgICAgICBQeU9iamVjdCAqYXJnczsKICAgICAgICAgYXJncyA9IHJlcyA9IFB5VHVwbGVfTmV3KDApOwpAQCAtNTIzNiw3ICs1NDAyLDcgQEAKICAgICAgICAgcmV0dXJuIHJlczsKICAgICB9CiAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAiX19nZXRpdGVtX18iLCAmZ2V0aXRlbV9zdHIpOworICAgIGZ1bmMgPSBsb29rdXBfbWV0aG9kKHNlbGYsICZQeUlkX19fZ2V0aXRlbV9fKTsKICAgICBpZiAoZnVuYyA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAiJyUuMjAwcycgb2JqZWN0IGlzIG5vdCBpdGVyYWJsZSIsCkBAIC01MjUwLDggKzU0MTYsOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHNsb3RfdHBfaXRlcm5leHQoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpuZXh0X3N0cjsKLSAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgIl9fbmV4dF9fIiwgJm5leHRfc3RyLCAiKCkiKTsKKyAgICBfUHlfSURFTlRJRklFUihfX25leHRfXyk7CisgICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19fbmV4dF9fLCAiKCkiKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTUyODUsMTQgKzU0NTEsMTMgQEAKIHNsb3RfdHBfZGVzY3Jfc2V0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdGFyZ2V0LCBQeU9iamVjdCAqdmFsdWUpCiB7CiAgICAgUHlPYmplY3QgKnJlczsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmRlbF9zdHIsICpzZXRfc3RyOworICAgIF9QeV9JREVOVElGSUVSKF9fZGVsZXRlX18pOworICAgIF9QeV9JREVOVElGSUVSKF9fc2V0X18pOwogCiAgICAgaWYgKHZhbHVlID09IE5VTEwpCi0gICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICJfX2RlbGV0ZV9fIiwgJmRlbF9zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICIoTykiLCB0YXJnZXQpOworICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAmUHlJZF9fX2RlbGV0ZV9fLCAiKE8pIiwgdGFyZ2V0KTsKICAgICBlbHNlCi0gICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICJfX3NldF9fIiwgJnNldF9zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICIoT08pIiwgdGFyZ2V0LCB2YWx1ZSk7CisgICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19fc2V0X18sICIoT08pIiwgdGFyZ2V0LCB2YWx1ZSk7CiAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7CiAgICAgUHlfREVDUkVGKHJlcyk7CkBAIC01MzAyLDggKzU0NjcsOCBAQAogc3RhdGljIGludAogc2xvdF90cF9pbml0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICppbml0X3N0cjsKLSAgICBQeU9iamVjdCAqbWV0aCA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgIl9faW5pdF9fIiwgJmluaXRfc3RyKTsKKyAgICBfUHlfSURFTlRJRklFUihfX2luaXRfXyk7CisgICAgUHlPYmplY3QgKm1ldGggPSBsb29rdXBfbWV0aG9kKHNlbGYsICZQeUlkX19faW5pdF9fKTsKICAgICBQeU9iamVjdCAqcmVzOwogCiAgICAgaWYgKG1ldGggPT0gTlVMTCkKQEAgLTUzNjAsNyArNTUyNSw3IEBACiBzdGF0aWMgdm9pZAogc2xvdF90cF9kZWwoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpkZWxfc3RyID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2RlbF9fKTsKICAgICBQeU9iamVjdCAqZGVsLCAqcmVzOwogICAgIFB5T2JqZWN0ICplcnJvcl90eXBlLCAqZXJyb3JfdmFsdWUsICplcnJvcl90cmFjZWJhY2s7CiAKQEAgLTUzNzIsNyArNTUzNyw3IEBACiAgICAgUHlFcnJfRmV0Y2goJmVycm9yX3R5cGUsICZlcnJvcl92YWx1ZSwgJmVycm9yX3RyYWNlYmFjayk7CiAKICAgICAvKiBFeGVjdXRlIF9fZGVsX18gbWV0aG9kLCBpZiBhbnkuICovCi0gICAgZGVsID0gbG9va3VwX21heWJlKHNlbGYsICJfX2RlbF9fIiwgJmRlbF9zdHIpOworICAgIGRlbCA9IGxvb2t1cF9tYXliZShzZWxmLCAmUHlJZF9fX2RlbF9fKTsKICAgICBpZiAoZGVsICE9IE5VTEwpIHsKICAgICAgICAgcmVzID0gUHlFdmFsX0NhbGxPYmplY3QoZGVsLCBOVUxMKTsKICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQpAQCAtNjA4Niw3ICs2MjUxLDcgQEAKICAgICAgICAgLyogV2Ugd2FudCBfX2NsYXNzX18gdG8gcmV0dXJuIHRoZSBjbGFzcyBvZiB0aGUgc3VwZXIgb2JqZWN0CiAgICAgICAgICAgIChpLmUuIHN1cGVyLCBvciBhIHN1YmNsYXNzKSwgbm90IHRoZSBjbGFzcyBvZiBzdS0+b2JqLiAqLwogICAgICAgICBza2lwID0gKFB5VW5pY29kZV9DaGVjayhuYW1lKSAmJgotICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKG5hbWUpID09IDkgJiYKKyAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpID09IDkgJiYKICAgICAgICAgICAgIFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG5hbWUsICJfX2NsYXNzX18iKSA9PSAwKTsKICAgICB9CiAKQEAgLTYxNDcsNyArNjMxMiw3IEBACiB7CiAgICAgLyogQ2hlY2sgdGhhdCBhIHN1cGVyKCkgY2FsbCBtYWtlcyBzZW5zZS4gIFJldHVybiBhIHR5cGUgb2JqZWN0LgogCi0gICAgICAgb2JqIGNhbiBiZSBhIG5ldy1zdHlsZSBjbGFzcywgb3IgYW4gaW5zdGFuY2Ugb2Ygb25lOgorICAgICAgIG9iaiBjYW4gYmUgYSBjbGFzcywgb3IgYW4gaW5zdGFuY2Ugb2Ygb25lOgogCiAgICAgICAgLSBJZiBpdCBpcyBhIGNsYXNzLCBpdCBtdXN0IGJlIGEgc3ViY2xhc3Mgb2YgJ3R5cGUnLiAgICAgIFRoaXMgY2FzZSBpcwogICAgICAgICAgdXNlZCBmb3IgY2xhc3MgbWV0aG9kczsgdGhlIHJldHVybiB2YWx1ZSBpcyBvYmouCkBAIC02MTczLDE3ICs2MzM4LDkgQEAKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIC8qIFRyeSB0aGUgc2xvdyB3YXkgKi8KLSAgICAgICAgc3RhdGljIFB5T2JqZWN0ICpjbGFzc19zdHIgPSBOVUxMOwogICAgICAgICBQeU9iamVjdCAqY2xhc3NfYXR0cjsKIAotICAgICAgICBpZiAoY2xhc3Nfc3RyID09IE5VTEwpIHsKLSAgICAgICAgICAgIGNsYXNzX3N0ciA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCJfX2NsYXNzX18iKTsKLSAgICAgICAgICAgIGlmIChjbGFzc19zdHIgPT0gTlVMTCkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotCi0gICAgICAgIGNsYXNzX2F0dHIgPSBQeU9iamVjdF9HZXRBdHRyKG9iaiwgY2xhc3Nfc3RyKTsKLQorICAgICAgICBjbGFzc19hdHRyID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX19fY2xhc3NfXyk7CiAgICAgICAgIGlmIChjbGFzc19hdHRyICE9IE5VTEwgJiYKICAgICAgICAgICAgIFB5VHlwZV9DaGVjayhjbGFzc19hdHRyKSAmJgogICAgICAgICAgICAgKFB5VHlwZU9iamVjdCAqKWNsYXNzX2F0dHIgIT0gUHlfVFlQRShvYmopKQpAQCAtNjI4NSw3ICs2NDQyLDcgQEAKICAgICAgICAgICAgIFB5T2JqZWN0ICpuYW1lID0gUHlUdXBsZV9HRVRfSVRFTShjby0+Y29fZnJlZXZhcnMsIGkpOwogICAgICAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhuYW1lKSk7CiAgICAgICAgICAgICBpZiAoIVB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJfX2NsYXNzX18iKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQF9fY2xhc3NfXyIpKSB7CiAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpbmRleCA9IGNvLT5jb19ubG9jYWxzICsKICAgICAgICAgICAgICAgICAgICAgUHlUdXBsZV9HRVRfU0laRShjby0+Y29fY2VsbHZhcnMpICsgaTsKICAgICAgICAgICAgICAgICBQeU9iamVjdCAqY2VsbCA9IGYtPmZfbG9jYWxzcGx1c1tpbmRleF07CmRpZmYgLS1naXQgYS9PYmplY3RzL3R5cGVzbG90cy5pbmMgYi9PYmplY3RzL3R5cGVzbG90cy5pbmMKaW5kZXggNTE4NmRjZi4uY2FhMWUwMyAxMDA2NDQKLS0tIGEvT2JqZWN0cy90eXBlc2xvdHMuaW5jCisrKyBiL09iamVjdHMvdHlwZXNsb3RzLmluYwpAQCAtMSw0ICsxLDQgQEAKLS8qIEdlbmVyYXRlZCBieSB0eXBlc2xvdHMucHkgJFJldmlzaW9uJCAqLworLyogR2VuZXJhdGVkIGJ5IHR5cGVzbG90cy5weSAqLwogMCwKIDAsCiBvZmZzZXRvZihQeUhlYXBUeXBlT2JqZWN0LCBhc19tYXBwaW5nLm1wX2Fzc19zdWJzY3JpcHQpLApkaWZmIC0tZ2l0IGEvT2JqZWN0cy90eXBlc2xvdHMucHkgYi9PYmplY3RzL3R5cGVzbG90cy5weQppbmRleCAyZTAwYzgwLi5iMjRjN2Y0IDEwMDY0NAotLS0gYS9PYmplY3RzL3R5cGVzbG90cy5weQorKysgYi9PYmplY3RzL3R5cGVzbG90cy5weQpAQCAtMyw3ICszLDcgQEAKIAogaW1wb3J0IHN5cywgcmUKIAotcHJpbnQoIi8qIEdlbmVyYXRlZCBieSB0eXBlc2xvdHMucHkgJFJldmlzaW9uJCAqLyIpCitwcmludCgiLyogR2VuZXJhdGVkIGJ5IHR5cGVzbG90cy5weSAqLyIpCiByZXMgPSB7fQogZm9yIGxpbmUgaW4gc3lzLnN0ZGluOgogICAgIG0gPSByZS5tYXRjaCgiI2RlZmluZSBQeV8oW2Etel9dKykgKFswLTldKykiLCBsaW5lKQpkaWZmIC0tZ2l0IGEvT2JqZWN0cy91bmljb2RlY3R5cGUuYyBiL09iamVjdHMvdW5pY29kZWN0eXBlLmMKaW5kZXggOWY2YWM4OS4uYTU3MmMxMiAxMDA2NDQKLS0tIGEvT2JqZWN0cy91bmljb2RlY3R5cGUuYworKysgYi9PYmplY3RzL3VuaWNvZGVjdHlwZS5jCkBAIC0yMSwxMyArMjEsMjAgQEAKICNkZWZpbmUgWElEX1NUQVJUX01BU0sgMHgxMDAKICNkZWZpbmUgWElEX0NPTlRJTlVFX01BU0sgMHgyMDAKICNkZWZpbmUgUFJJTlRBQkxFX01BU0sgMHg0MDAKLSNkZWZpbmUgTk9ERUxUQV9NQVNLIDB4ODAwCi0jZGVmaW5lIE5VTUVSSUNfTUFTSyAweDEwMDAKKyNkZWZpbmUgTlVNRVJJQ19NQVNLIDB4ODAwCisjZGVmaW5lIENBU0VfSUdOT1JBQkxFX01BU0sgMHgxMDAwCisjZGVmaW5lIENBU0VEX01BU0sgMHgyMDAwCisjZGVmaW5lIEVYVEVOREVEX0NBU0VfTUFTSyAweDQwMDAKIAogdHlwZWRlZiBzdHJ1Y3QgewotICAgIGNvbnN0IFB5X1VDUzQgdXBwZXI7Ci0gICAgY29uc3QgUHlfVUNTNCBsb3dlcjsKLSAgICBjb25zdCBQeV9VQ1M0IHRpdGxlOworICAgIC8qIAorICAgICAgIFRoZXNlIGFyZSBlaXRoZXIgZGVsdGFzIHRvIHRoZSBjaGFyYWN0ZXIgb3Igb2Zmc2V0cyBpbgorICAgICAgIF9QeVVuaWNvZGVfRXh0ZW5kZWRDYXNlLgorICAgICovCisgICAgY29uc3QgaW50IHVwcGVyOworICAgIGNvbnN0IGludCBsb3dlcjsKKyAgICBjb25zdCBpbnQgdGl0bGU7CisgICAgLyogTm90ZSBpZiBtb3JlIGZsYWcgc3BhY2UgaXMgbmVlZGVkLCBkZWNpbWFsIGFuZCBkaWdpdCBjb3VsZCBiZSB1bmlmaWVkLiAqLwogICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgZGVjaW1hbDsKICAgICBjb25zdCB1bnNpZ25lZCBjaGFyIGRpZ2l0OwogICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IGZsYWdzOwpAQCAtNTcsMTUgKzY0LDEwIEBACiBQeV9VQ1M0IF9QeVVuaWNvZGVfVG9UaXRsZWNhc2UocmVnaXN0ZXIgUHlfVUNTNCBjaCkKIHsKICAgICBjb25zdCBfUHlVbmljb2RlX1R5cGVSZWNvcmQgKmN0eXBlID0gZ2V0dHlwZXJlY29yZChjaCk7Ci0gICAgaW50IGRlbHRhID0gY3R5cGUtPnRpdGxlOwogCi0gICAgaWYgKGN0eXBlLT5mbGFncyAmIE5PREVMVEFfTUFTSykKLSAgICAgICAgcmV0dXJuIGRlbHRhOwotCi0gICAgaWYgKGRlbHRhID49IDMyNzY4KQotICAgICAgICAgICAgZGVsdGEgLT0gNjU1MzY7Ci0KLSAgICByZXR1cm4gY2ggKyBkZWx0YTsKKyAgICBpZiAoY3R5cGUtPmZsYWdzICYgRVhURU5ERURfQ0FTRV9NQVNLKQorICAgICAgICByZXR1cm4gX1B5VW5pY29kZV9FeHRlbmRlZENhc2VbY3R5cGUtPnRpdGxlICYgMHhGRkZGXTsKKyAgICByZXR1cm4gY2ggKyBjdHlwZS0+dGl0bGU7CiB9CiAKIC8qIFJldHVybnMgMSBmb3IgVW5pY29kZSBjaGFyYWN0ZXJzIGhhdmluZyB0aGUgY2F0ZWdvcnkgJ0x0JywgMApAQCAtMTg4LDEyICsxOTAsMTAgQEAKIFB5X1VDUzQgX1B5VW5pY29kZV9Ub1VwcGVyY2FzZShQeV9VQ1M0IGNoKQogewogICAgIGNvbnN0IF9QeVVuaWNvZGVfVHlwZVJlY29yZCAqY3R5cGUgPSBnZXR0eXBlcmVjb3JkKGNoKTsKLSAgICBpbnQgZGVsdGEgPSBjdHlwZS0+dXBwZXI7Ci0gICAgaWYgKGN0eXBlLT5mbGFncyAmIE5PREVMVEFfTUFTSykKLSAgICAgICAgcmV0dXJuIGRlbHRhOwotICAgIGlmIChkZWx0YSA+PSAzMjc2OCkKLSAgICAgICAgICAgIGRlbHRhIC09IDY1NTM2OwotICAgIHJldHVybiBjaCArIGRlbHRhOworCisgICAgaWYgKGN0eXBlLT5mbGFncyAmIEVYVEVOREVEX0NBU0VfTUFTSykKKyAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfRXh0ZW5kZWRDYXNlW2N0eXBlLT51cHBlciAmIDB4RkZGRl07CisgICAgcmV0dXJuIGNoICsgY3R5cGUtPnVwcGVyOwogfQogCiAvKiBSZXR1cm5zIHRoZSBsb3dlcmNhc2UgVW5pY29kZSBjaGFyYWN0ZXJzIGNvcnJlc3BvbmRpbmcgdG8gY2ggb3IganVzdApAQCAtMjAyLDEyICsyMDIsODcgQEAKIFB5X1VDUzQgX1B5VW5pY29kZV9Ub0xvd2VyY2FzZShQeV9VQ1M0IGNoKQogewogICAgIGNvbnN0IF9QeVVuaWNvZGVfVHlwZVJlY29yZCAqY3R5cGUgPSBnZXR0eXBlcmVjb3JkKGNoKTsKLSAgICBpbnQgZGVsdGEgPSBjdHlwZS0+bG93ZXI7Ci0gICAgaWYgKGN0eXBlLT5mbGFncyAmIE5PREVMVEFfTUFTSykKLSAgICAgICAgcmV0dXJuIGRlbHRhOwotICAgIGlmIChkZWx0YSA+PSAzMjc2OCkKLSAgICAgICAgICAgIGRlbHRhIC09IDY1NTM2OwotICAgIHJldHVybiBjaCArIGRlbHRhOworCisgICAgaWYgKGN0eXBlLT5mbGFncyAmIEVYVEVOREVEX0NBU0VfTUFTSykKKyAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfRXh0ZW5kZWRDYXNlW2N0eXBlLT5sb3dlciAmIDB4RkZGRl07CisgICAgcmV0dXJuIGNoICsgY3R5cGUtPmxvd2VyOworfQorCitpbnQgX1B5VW5pY29kZV9Ub0xvd2VyRnVsbChQeV9VQ1M0IGNoLCBQeV9VQ1M0ICpyZXMpCit7CisgICAgY29uc3QgX1B5VW5pY29kZV9UeXBlUmVjb3JkICpjdHlwZSA9IGdldHR5cGVyZWNvcmQoY2gpOworCisgICAgaWYgKGN0eXBlLT5mbGFncyAmIEVYVEVOREVEX0NBU0VfTUFTSykgeworICAgICAgICBpbnQgaW5kZXggPSBjdHlwZS0+bG93ZXIgJiAweEZGRkY7CisgICAgICAgIGludCBuID0gY3R5cGUtPmxvd2VyID4+IDI0OworICAgICAgICBpbnQgaTsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IG47IGkrKykKKyAgICAgICAgICAgIHJlc1tpXSA9IF9QeVVuaWNvZGVfRXh0ZW5kZWRDYXNlW2luZGV4ICsgaV07CisgICAgICAgIHJldHVybiBuOworICAgIH0KKyAgICByZXNbMF0gPSBjaCArIGN0eXBlLT5sb3dlcjsKKyAgICByZXR1cm4gMTsKK30KKworaW50IF9QeVVuaWNvZGVfVG9UaXRsZUZ1bGwoUHlfVUNTNCBjaCwgUHlfVUNTNCAqcmVzKQoreworICAgIGNvbnN0IF9QeVVuaWNvZGVfVHlwZVJlY29yZCAqY3R5cGUgPSBnZXR0eXBlcmVjb3JkKGNoKTsKKworICAgIGlmIChjdHlwZS0+ZmxhZ3MgJiBFWFRFTkRFRF9DQVNFX01BU0spIHsKKyAgICAgICAgaW50IGluZGV4ID0gY3R5cGUtPnRpdGxlICYgMHhGRkZGOworICAgICAgICBpbnQgbiA9IGN0eXBlLT50aXRsZSA+PiAyNDsKKyAgICAgICAgaW50IGk7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspCisgICAgICAgICAgICByZXNbaV0gPSBfUHlVbmljb2RlX0V4dGVuZGVkQ2FzZVtpbmRleCArIGldOworICAgICAgICByZXR1cm4gbjsKKyAgICB9CisgICAgcmVzWzBdID0gY2ggKyBjdHlwZS0+dGl0bGU7CisgICAgcmV0dXJuIDE7Cit9CisKK2ludCBfUHlVbmljb2RlX1RvVXBwZXJGdWxsKFB5X1VDUzQgY2gsIFB5X1VDUzQgKnJlcykKK3sKKyAgICBjb25zdCBfUHlVbmljb2RlX1R5cGVSZWNvcmQgKmN0eXBlID0gZ2V0dHlwZXJlY29yZChjaCk7CisKKyAgICBpZiAoY3R5cGUtPmZsYWdzICYgRVhURU5ERURfQ0FTRV9NQVNLKSB7CisgICAgICAgIGludCBpbmRleCA9IGN0eXBlLT51cHBlciAmIDB4RkZGRjsKKyAgICAgICAgaW50IG4gPSBjdHlwZS0+dXBwZXIgPj4gMjQ7CisgICAgICAgIGludCBpOworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKQorICAgICAgICAgICAgcmVzW2ldID0gX1B5VW5pY29kZV9FeHRlbmRlZENhc2VbaW5kZXggKyBpXTsKKyAgICAgICAgcmV0dXJuIG47CisgICAgfQorICAgIHJlc1swXSA9IGNoICsgY3R5cGUtPnVwcGVyOworICAgIHJldHVybiAxOworfQorCitpbnQgX1B5VW5pY29kZV9Ub0ZvbGRlZEZ1bGwoUHlfVUNTNCBjaCwgUHlfVUNTNCAqcmVzKQoreworICAgIGNvbnN0IF9QeVVuaWNvZGVfVHlwZVJlY29yZCAqY3R5cGUgPSBnZXR0eXBlcmVjb3JkKGNoKTsKKworICAgIGlmIChjdHlwZS0+ZmxhZ3MgJiBFWFRFTkRFRF9DQVNFX01BU0sgJiYgKGN0eXBlLT5sb3dlciA+PiAyMCkgJiA3KSB7CisgICAgICAgIGludCBpbmRleCA9IChjdHlwZS0+bG93ZXIgJiAweEZGRkYpICsgKGN0eXBlLT5sb3dlciA+PiAyNCk7CisgICAgICAgIGludCBuID0gKGN0eXBlLT5sb3dlciA+PiAyMCkgJiA3OworICAgICAgICBpbnQgaTsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IG47IGkrKykKKyAgICAgICAgICAgIHJlc1tpXSA9IF9QeVVuaWNvZGVfRXh0ZW5kZWRDYXNlW2luZGV4ICsgaV07CisgICAgICAgIHJldHVybiBuOworICAgIH0KKyAgICByZXR1cm4gX1B5VW5pY29kZV9Ub0xvd2VyRnVsbChjaCwgcmVzKTsKK30KKworaW50IF9QeVVuaWNvZGVfSXNDYXNlZChQeV9VQ1M0IGNoKQoreworICAgIGNvbnN0IF9QeVVuaWNvZGVfVHlwZVJlY29yZCAqY3R5cGUgPSBnZXR0eXBlcmVjb3JkKGNoKTsKKworICAgIHJldHVybiAoY3R5cGUtPmZsYWdzICYgQ0FTRURfTUFTSykgIT0gMDsKK30KKworaW50IF9QeVVuaWNvZGVfSXNDYXNlSWdub3JhYmxlKFB5X1VDUzQgY2gpCit7CisgICAgY29uc3QgX1B5VW5pY29kZV9UeXBlUmVjb3JkICpjdHlwZSA9IGdldHR5cGVyZWNvcmQoY2gpOworCisgICAgcmV0dXJuIChjdHlwZS0+ZmxhZ3MgJiBDQVNFX0lHTk9SQUJMRV9NQVNLKSAhPSAwOwogfQogCiAvKiBSZXR1cm5zIDEgZm9yIFVuaWNvZGUgY2hhcmFjdGVycyBoYXZpbmcgdGhlIGNhdGVnb3J5ICdMbCcsICdMdScsICdMdCcsCmRpZmYgLS1naXQgYS9PYmplY3RzL3VuaWNvZGVvYmplY3QuYyBiL09iamVjdHMvdW5pY29kZW9iamVjdC5jCmluZGV4IGI3MDY2NjEuLjVjMTA3MTMgMTAwNjQ0Ci0tLSBhL09iamVjdHMvdW5pY29kZW9iamVjdC5jCisrKyBiL09iamVjdHMvdW5pY29kZW9iamVjdC5jCkBAIC0xLDggKzEsNyBAQAogLyoKIAogVW5pY29kZSBpbXBsZW1lbnRhdGlvbiBiYXNlZCBvbiBvcmlnaW5hbCBjb2RlIGJ5IEZyZWRyaWsgTHVuZGgsCi1tb2RpZmllZCBieSBNYXJjLUFuZHJlIExlbWJ1cmcgPG1hbEBsZW1idXJnLmNvbT4gYWNjb3JkaW5nIHRvIHRoZQotVW5pY29kZSBJbnRlZ3JhdGlvbiBQcm9wb3NhbCAoc2VlIGZpbGUgTWlzYy91bmljb2RlLnR4dCkuCittb2RpZmllZCBieSBNYXJjLUFuZHJlIExlbWJ1cmcgPG1hbEBsZW1idXJnLmNvbT4uCiAKIE1ham9yIHNwZWVkIHVwZ3JhZGVzIHRvIHRoZSBtZXRob2QgaW1wbGVtZW50YXRpb25zIGF0IHRoZSBSZXlramF2aWsKIE5lZWRGb3JTcGVlZCBzcHJpbnQsIGJ5IEZyZWRyaWsgTHVuZGggYW5kIEFuZHJldyBEYWxrZS4KQEAgLTQyLDM0ICs0MSwxMiBAQAogI2RlZmluZSBQWV9TU0laRV9UX0NMRUFOCiAjaW5jbHVkZSAiUHl0aG9uLmgiCiAjaW5jbHVkZSAidWNuaGFzaC5oIgorI2luY2x1ZGUgImJ5dGVzX21ldGhvZHMuaCIKIAogI2lmZGVmIE1TX1dJTkRPV1MKICNpbmNsdWRlIDx3aW5kb3dzLmg+CiAjZW5kaWYKIAotLyogTGltaXQgZm9yIHRoZSBVbmljb2RlIG9iamVjdCBmcmVlIGxpc3QgKi8KLQotI2RlZmluZSBQeVVuaWNvZGVfTUFYRlJFRUxJU1QgICAgICAgMTAyNAotCi0vKiBMaW1pdCBmb3IgdGhlIFVuaWNvZGUgb2JqZWN0IGZyZWUgbGlzdCBzdGF5IGFsaXZlIG9wdGltaXphdGlvbi4KLQotICAgVGhlIGltcGxlbWVudGF0aW9uIHdpbGwga2VlcCBhbGxvY2F0ZWQgVW5pY29kZSBtZW1vcnkgaW50YWN0IGZvcgotICAgYWxsIG9iamVjdHMgb24gdGhlIGZyZWUgbGlzdCBoYXZpbmcgYSBzaXplIGxlc3MgdGhhbiB0aGlzCi0gICBsaW1pdC4gVGhpcyByZWR1Y2VzIG1hbGxvYygpIG92ZXJoZWFkIGZvciBzbWFsbCBVbmljb2RlIG9iamVjdHMuCi0KLSAgIEF0IHdvcnN0IHRoaXMgd2lsbCByZXN1bHQgaW4gUHlVbmljb2RlX01BWEZSRUVMSVNUICoKLSAgIChzaXplb2YoUHlVbmljb2RlT2JqZWN0KSArIEtFRVBBTElWRV9TSVpFX0xJTUlUICsKLSAgIG1hbGxvYygpLW92ZXJoZWFkKSBieXRlcyBvZiB1bnVzZWQgZ2FyYmFnZS4KLQotICAgU2V0dGluZyB0aGUgbGltaXQgdG8gMCBlZmZlY3RpdmVseSB0dXJucyB0aGUgZmVhdHVyZSBvZmYuCi0KLSAgIE5vdGU6IFRoaXMgaXMgYW4gZXhwZXJpbWVudGFsIGZlYXR1cmUgISBJZiB5b3UgZ2V0IGNvcmUgZHVtcHMgd2hlbgotICAgdXNpbmcgVW5pY29kZSBvYmplY3RzLCB0dXJuIHRoaXMgZmVhdHVyZSBvZmYuCi0KLSovCi0KLSNkZWZpbmUgS0VFUEFMSVZFX1NJWkVfTElNSVQgICAgICAgOQotCiAvKiBFbmRpYW5uZXNzIHN3aXRjaGVzOyBkZWZhdWx0cyB0byBsaXR0bGUgZW5kaWFuICovCiAKICNpZmRlZiBXT1JEU19CSUdFTkRJQU4KQEAgLTkwLDYgKzY3LDEwNSBAQAogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAorLyogTWF4aW11bSBjb2RlIHBvaW50IG9mIFVuaWNvZGUgNi4wOiAweDEwZmZmZiAoMSwxMTQsMTExKSAqLworI2RlZmluZSBNQVhfVU5JQ09ERSAweDEwZmZmZgorCisjaWZkZWYgUHlfREVCVUcKKyMgIGRlZmluZSBfUHlVbmljb2RlX0NIRUNLKG9wKSBfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kob3AsIDApCisjZWxzZQorIyAgZGVmaW5lIF9QeVVuaWNvZGVfQ0hFQ0sob3ApIFB5VW5pY29kZV9DaGVjayhvcCkKKyNlbmRpZgorCisjZGVmaW5lIF9QeVVuaWNvZGVfVVRGOChvcCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKChQeUNvbXBhY3RVbmljb2RlT2JqZWN0Kikob3ApKS0+dXRmOCkKKyNkZWZpbmUgUHlVbmljb2RlX1VURjgob3ApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyhvcCkpLCAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkob3ApKSwgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgUHlVbmljb2RlX0lTX0NPTVBBQ1RfQVNDSUkob3ApID8gICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgKChjaGFyKikoKFB5QVNDSUlPYmplY3QqKShvcCkgKyAxKSkgOiAgICAgICAgICBcCisgICAgICAgICBfUHlVbmljb2RlX1VURjgob3ApKQorI2RlZmluZSBfUHlVbmljb2RlX1VURjhfTEVOR1RIKG9wKSAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoUHlDb21wYWN0VW5pY29kZU9iamVjdCopKG9wKSktPnV0ZjhfbGVuZ3RoKQorI2RlZmluZSBQeVVuaWNvZGVfVVRGOF9MRU5HVEgob3ApICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKGFzc2VydChfUHlVbmljb2RlX0NIRUNLKG9wKSksICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgYXNzZXJ0KFB5VW5pY29kZV9JU19SRUFEWShvcCkpLCAgICAgICAgICAgICAgICAgICAgXAorICAgICBQeVVuaWNvZGVfSVNfQ09NUEFDVF9BU0NJSShvcCkgPyAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAoKFB5QVNDSUlPYmplY3QqKShvcCkpLT5sZW5ndGggOiAgICAgICAgICAgICAgIFwKKyAgICAgICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgob3ApKQorI2RlZmluZSBfUHlVbmljb2RlX1dTVFIob3ApICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoUHlBU0NJSU9iamVjdCopKG9wKSktPndzdHIpCisjZGVmaW5lIF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgob3ApICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKChQeUNvbXBhY3RVbmljb2RlT2JqZWN0Kikob3ApKS0+d3N0cl9sZW5ndGgpCisjZGVmaW5lIF9QeVVuaWNvZGVfTEVOR1RIKG9wKSAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKChQeUFTQ0lJT2JqZWN0ICopKG9wKSktPmxlbmd0aCkKKyNkZWZpbmUgX1B5VW5pY29kZV9TVEFURShvcCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoKFB5QVNDSUlPYmplY3QgKikob3ApKS0+c3RhdGUpCisjZGVmaW5lIF9QeVVuaWNvZGVfSEFTSChvcCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKChQeUFTQ0lJT2JqZWN0ICopKG9wKSktPmhhc2gpCisjZGVmaW5lIF9QeVVuaWNvZGVfS0lORChvcCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sob3ApKSwgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoKFB5QVNDSUlPYmplY3QgKikob3ApKS0+c3RhdGUua2luZCkKKyNkZWZpbmUgX1B5VW5pY29kZV9HRVRfTEVOR1RIKG9wKSAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyhvcCkpLCAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICgoUHlBU0NJSU9iamVjdCAqKShvcCkpLT5sZW5ndGgpCisjZGVmaW5lIF9QeVVuaWNvZGVfREFUQV9BTlkob3ApICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKChQeVVuaWNvZGVPYmplY3QqKShvcCkpLT5kYXRhLmFueSkKKworI3VuZGVmIFB5VW5pY29kZV9SRUFEWQorI2RlZmluZSBQeVVuaWNvZGVfUkVBRFkob3ApICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKGFzc2VydChfUHlVbmljb2RlX0NIRUNLKG9wKSksICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKFB5VW5pY29kZV9JU19SRUFEWShvcCkgPyAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgMCA6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICBfUHlVbmljb2RlX1JlYWR5KG9wKSkpCisKKyNkZWZpbmUgX1B5VW5pY29kZV9TSEFSRV9VVEY4KG9wKSAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyhvcCkpLCAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIGFzc2VydCghUHlVbmljb2RlX0lTX0NPTVBBQ1RfQVNDSUkob3ApKSwgICAgICAgICAgIFwKKyAgICAgKF9QeVVuaWNvZGVfVVRGOChvcCkgPT0gUHlVbmljb2RlX0RBVEEob3ApKSkKKyNkZWZpbmUgX1B5VW5pY29kZV9TSEFSRV9XU1RSKG9wKSAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyhvcCkpLCAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIChfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPT0gUHlVbmljb2RlX0RBVEEob3ApKSkKKworLyogdHJ1ZSBpZiB0aGUgVW5pY29kZSBvYmplY3QgaGFzIGFuIGFsbG9jYXRlZCBVVEYtOCBtZW1vcnkgYmxvY2sKKyAgIChub3Qgc2hhcmVkIHdpdGggb3RoZXIgZGF0YSkgKi8KKyNkZWZpbmUgX1B5VW5pY29kZV9IQVNfVVRGOF9NRU1PUlkob3ApICAgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyhvcCkpLCAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICghUHlVbmljb2RlX0lTX0NPTVBBQ1RfQVNDSUkob3ApICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICYmIF9QeVVuaWNvZGVfVVRGOChvcCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgJiYgX1B5VW5pY29kZV9VVEY4KG9wKSAhPSBQeVVuaWNvZGVfREFUQShvcCkpKQorCisvKiB0cnVlIGlmIHRoZSBVbmljb2RlIG9iamVjdCBoYXMgYW4gYWxsb2NhdGVkIHdzdHIgbWVtb3J5IGJsb2NrCisgICAobm90IHNoYXJlZCB3aXRoIG90aGVyIGRhdGEpICovCisjZGVmaW5lIF9QeVVuaWNvZGVfSEFTX1dTVFJfTUVNT1JZKG9wKSAgICAgICAgICAgICAgICAgIFwKKyAgICAoYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sob3ApKSwgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoX1B5VW5pY29kZV9XU1RSKG9wKSAmJiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAoIVB5VW5pY29kZV9JU19SRUFEWShvcCkgfHwgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICBfUHlVbmljb2RlX1dTVFIob3ApICE9IFB5VW5pY29kZV9EQVRBKG9wKSkpKQorCisvKiBHZW5lcmljIGhlbHBlciBtYWNybyB0byBjb252ZXJ0IGNoYXJhY3RlcnMgb2YgZGlmZmVyZW50IHR5cGVzLgorICAgZnJvbV90eXBlIGFuZCB0b190eXBlIGhhdmUgdG8gYmUgdmFsaWQgdHlwZSBuYW1lcywgYmVnaW4gYW5kIGVuZAorICAgYXJlIHBvaW50ZXJzIHRvIHRoZSBzb3VyY2UgY2hhcmFjdGVycyB3aGljaCBzaG91bGQgYmUgb2YgdHlwZQorICAgImZyb21fdHlwZSAqIi4gIHRvIGlzIGEgcG9pbnRlciBvZiB0eXBlICJ0b190eXBlICoiIGFuZCBwb2ludHMgdG8gdGhlCisgICBidWZmZXIgd2hlcmUgdGhlIHJlc3VsdCBjaGFyYWN0ZXJzIGFyZSB3cml0dGVuIHRvLiAqLworI2RlZmluZSBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoZnJvbV90eXBlLCB0b190eXBlLCBiZWdpbiwgZW5kLCB0bykgXAorICAgIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHRvX3R5cGUgKl90byA9ICh0b190eXBlICopIHRvOyAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgY29uc3QgZnJvbV90eXBlICpfaXRlciA9IChiZWdpbik7ICAgICAgICAgICAgICAgXAorICAgICAgICBjb25zdCBmcm9tX3R5cGUgKl9lbmQgPSAoZW5kKTsgICAgICAgICAgICAgICAgICBcCisgICAgICAgIFB5X3NzaXplX3QgbiA9IChfZW5kKSAtIChfaXRlcik7ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgY29uc3QgZnJvbV90eXBlICpfdW5yb2xsZWRfZW5kID0gICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgX2l0ZXIgKyAobiAmIH4gKFB5X3NzaXplX3QpIDMpOyAgICAgICAgICAgICBcCisgICAgICAgIHdoaWxlIChfaXRlciA8IChfdW5yb2xsZWRfZW5kKSkgeyAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIF90b1swXSA9ICh0b190eXBlKSBfaXRlclswXTsgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgX3RvWzFdID0gKHRvX3R5cGUpIF9pdGVyWzFdOyAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBfdG9bMl0gPSAodG9fdHlwZSkgX2l0ZXJbMl07ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIF90b1szXSA9ICh0b190eXBlKSBfaXRlclszXTsgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgX2l0ZXIgKz0gNDsgX3RvICs9IDQ7ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgd2hpbGUgKF9pdGVyIDwgKF9lbmQpKSAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgKl90bysrID0gKHRvX3R5cGUpICpfaXRlcisrOyAgICAgICAgICAgICAgICBcCisgICAgfSB3aGlsZSAoMCkKKwogLyogVGhpcyBkaWN0aW9uYXJ5IGhvbGRzIGFsbCBpbnRlcm5lZCB1bmljb2RlIHN0cmluZ3MuICBOb3RlIHRoYXQgcmVmZXJlbmNlcwogICAgdG8gc3RyaW5ncyBpbiB0aGlzIGRpY3Rpb25hcnkgYXJlICpub3QqIGNvdW50ZWQgaW4gdGhlIHN0cmluZydzIG9iX3JlZmNudC4KICAgIFdoZW4gdGhlIGludGVybmVkIHN0cmluZyByZWFjaGVzIGEgcmVmY250IG9mIDAgdGhlIHN0cmluZyBkZWFsbG9jYXRpb24KQEAgLTEwMCwxNiArMTc2LDE1IEBACiAqLwogc3RhdGljIFB5T2JqZWN0ICppbnRlcm5lZDsKIAotLyogRnJlZSBsaXN0IGZvciBVbmljb2RlIG9iamVjdHMgKi8KLXN0YXRpYyBQeVVuaWNvZGVPYmplY3QgKmZyZWVfbGlzdDsKLXN0YXRpYyBpbnQgbnVtZnJlZTsKLQogLyogVGhlIGVtcHR5IFVuaWNvZGUgb2JqZWN0IGlzIHNoYXJlZCB0byBpbXByb3ZlIHBlcmZvcm1hbmNlLiAqLwotc3RhdGljIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZV9lbXB0eTsKK3N0YXRpYyBQeU9iamVjdCAqdW5pY29kZV9lbXB0eTsKKworLyogTGlzdCBvZiBzdGF0aWMgc3RyaW5ncy4gKi8KK3N0YXRpYyBfUHlfSWRlbnRpZmllciAqc3RhdGljX3N0cmluZ3M7CiAKIC8qIFNpbmdsZSBjaGFyYWN0ZXIgVW5pY29kZSBzdHJpbmdzIGluIHRoZSBMYXRpbi0xIHJhbmdlIGFyZSBiZWluZwogICAgc2hhcmVkIGFzIHdlbGwuICovCi1zdGF0aWMgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlX2xhdGluMVsyNTZdOworc3RhdGljIFB5T2JqZWN0ICp1bmljb2RlX2xhdGluMVsyNTZdOwogCiAvKiBGYXN0IGRldGVjdGlvbiBvZiB0aGUgbW9zdCBmcmVxdWVudCB3aGl0ZXNwYWNlIGNoYXJhY3RlcnMgKi8KIGNvbnN0IHVuc2lnbmVkIGNoYXIgX1B5X2FzY2lpX3doaXRlc3BhY2VbXSA9IHsKQEAgLTE0MiwxNiArMjE3LDM3IEBACiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMAogfTsKIAotc3RhdGljIFB5T2JqZWN0ICp1bmljb2RlX2VuY29kZV9jYWxsX2Vycm9yaGFuZGxlcihjb25zdCBjaGFyICplcnJvcnMsCisvKiBmb3J3YXJkICovCitzdGF0aWMgUHlVbmljb2RlT2JqZWN0ICpfUHlVbmljb2RlX05ldyhQeV9zc2l6ZV90IGxlbmd0aCk7CitzdGF0aWMgUHlPYmplY3QqIGdldF9sYXRpbjFfY2hhcih1bnNpZ25lZCBjaGFyIGNoKTsKK3N0YXRpYyB2b2lkIGNvcHlfY2hhcmFjdGVycygKKyAgICBQeU9iamVjdCAqdG8sIFB5X3NzaXplX3QgdG9fc3RhcnQsCisgICAgUHlPYmplY3QgKmZyb20sIFB5X3NzaXplX3QgZnJvbV9zdGFydCwKKyAgICBQeV9zc2l6ZV90IGhvd19tYW55KTsKK3N0YXRpYyBpbnQgdW5pY29kZV9tb2RpZmlhYmxlKFB5T2JqZWN0ICp1bmljb2RlKTsKKworCitzdGF0aWMgUHlPYmplY3QgKgordW5pY29kZV9mcm9tYXNjaWkoY29uc3QgdW5zaWduZWQgY2hhciAqcywgUHlfc3NpemVfdCBzaXplKTsKK3N0YXRpYyBQeU9iamVjdCAqCitfUHlVbmljb2RlX0Zyb21VQ1MxKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSk7CitzdGF0aWMgUHlPYmplY3QgKgorX1B5VW5pY29kZV9Gcm9tVUNTMihjb25zdCBQeV9VQ1MyICpzLCBQeV9zc2l6ZV90IHNpemUpOworc3RhdGljIFB5T2JqZWN0ICoKK19QeVVuaWNvZGVfRnJvbVVDUzQoY29uc3QgUHlfVUNTNCAqcywgUHlfc3NpemVfdCBzaXplKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3VuaWNvZGVfZW5jb2RlX2NhbGxfZXJyb3JoYW5kbGVyKGNvbnN0IGNoYXIgKmVycm9ycywKICAgICAgICBQeU9iamVjdCAqKmVycm9ySGFuZGxlcixjb25zdCBjaGFyICplbmNvZGluZywgY29uc3QgY2hhciAqcmVhc29uLAotICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKnVuaWNvZGUsIFB5X3NzaXplX3Qgc2l6ZSwgUHlPYmplY3QgKipleGNlcHRpb25PYmplY3QsCisgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsIFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAogICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLCBQeV9zc2l6ZV90ICpuZXdwb3MpOwogCi1zdGF0aWMgdm9pZCByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUHlfVU5JQ09ERSAqdW5pY29kZSwgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0cG9zLCBQeV9zc2l6ZV90IGVuZHBvcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcmVhc29uKTsKK3N0YXRpYyB2b2lkCityYWlzZV9lbmNvZGVfZXhjZXB0aW9uKFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pOwogCiAvKiBTYW1lIGZvciBsaW5lYnJlYWtzICovCiBzdGF0aWMgdW5zaWduZWQgY2hhciBhc2NpaV9saW5lYnJlYWtbXSA9IHsKQEAgLTE4MSw3ICsyNzcsOCBAQAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAKIH07CiAKLQorLyogVGhlIG1heCB1bmljb2RlIHZhbHVlIGlzIGFsd2F5cyAweDEwRkZGRiB3aGlsZSB1c2luZyB0aGUgUEVQLTM5MyBBUEkuCisgICBUaGlzIGZ1bmN0aW9uIGlzIGtlcHQgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2l0aCB0aGUgb2xkIEFQSS4gKi8KIFB5X1VOSUNPREUKIFB5VW5pY29kZV9HZXRNYXgodm9pZCkKIHsKQEAgLTE5NCw2ICsyOTEsMjIwIEBACiAjZW5kaWYKIH0KIAorI2lmZGVmIFB5X0RFQlVHCitpbnQKK19QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShQeU9iamVjdCAqb3AsIGludCBjaGVja19jb250ZW50KQoreworICAgIFB5QVNDSUlPYmplY3QgKmFzY2lpOworICAgIHVuc2lnbmVkIGludCBraW5kOworCisgICAgYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhvcCkpOworCisgICAgYXNjaWkgPSAoUHlBU0NJSU9iamVjdCAqKW9wOworICAgIGtpbmQgPSBhc2NpaS0+c3RhdGUua2luZDsKKworICAgIGlmIChhc2NpaS0+c3RhdGUuYXNjaWkgPT0gMSAmJiBhc2NpaS0+c3RhdGUuY29tcGFjdCA9PSAxKSB7CisgICAgICAgIGFzc2VydChraW5kID09IFB5VW5pY29kZV8xQllURV9LSU5EKTsKKyAgICAgICAgYXNzZXJ0KGFzY2lpLT5zdGF0ZS5yZWFkeSA9PSAxKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5Q29tcGFjdFVuaWNvZGVPYmplY3QgKmNvbXBhY3QgPSAoUHlDb21wYWN0VW5pY29kZU9iamVjdCAqKW9wOworICAgICAgICB2b2lkICpkYXRhOworCisgICAgICAgIGlmIChhc2NpaS0+c3RhdGUuY29tcGFjdCA9PSAxKSB7CisgICAgICAgICAgICBkYXRhID0gY29tcGFjdCArIDE7CisgICAgICAgICAgICBhc3NlcnQoa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORAorICAgICAgICAgICAgICAgICAgIHx8IGtpbmQgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQKKyAgICAgICAgICAgICAgICAgICB8fCBraW5kID09IFB5VW5pY29kZV80QllURV9LSU5EKTsKKyAgICAgICAgICAgIGFzc2VydChhc2NpaS0+c3RhdGUuYXNjaWkgPT0gMCk7CisgICAgICAgICAgICBhc3NlcnQoYXNjaWktPnN0YXRlLnJlYWR5ID09IDEpOworICAgICAgICAgICAgYXNzZXJ0IChjb21wYWN0LT51dGY4ICE9IGRhdGEpOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlID0gKFB5VW5pY29kZU9iamVjdCAqKW9wOworCisgICAgICAgICAgICBkYXRhID0gdW5pY29kZS0+ZGF0YS5hbnk7CisgICAgICAgICAgICBpZiAoa2luZCA9PSBQeVVuaWNvZGVfV0NIQVJfS0lORCkgeworICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+bGVuZ3RoID09IDApOworICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+aGFzaCA9PSAtMSk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGFzY2lpLT5zdGF0ZS5jb21wYWN0ID09IDApOworICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+c3RhdGUuYXNjaWkgPT0gMCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGFzY2lpLT5zdGF0ZS5yZWFkeSA9PSAwKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoYXNjaWktPnN0YXRlLmludGVybmVkID09IFNTVEFURV9OT1RfSU5URVJORUQpOworICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+d3N0ciAhPSBOVUxMKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoZGF0YSA9PSBOVUxMKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoY29tcGFjdC0+dXRmOCA9PSBOVUxMKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGFzc2VydChraW5kID09IFB5VW5pY29kZV8xQllURV9LSU5ECisgICAgICAgICAgICAgICAgICAgICAgIHx8IGtpbmQgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQKKyAgICAgICAgICAgICAgICAgICAgICAgfHwga2luZCA9PSBQeVVuaWNvZGVfNEJZVEVfS0lORCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGFzY2lpLT5zdGF0ZS5jb21wYWN0ID09IDApOworICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+c3RhdGUucmVhZHkgPT0gMSk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGRhdGEgIT0gTlVMTCk7CisgICAgICAgICAgICAgICAgaWYgKGFzY2lpLT5zdGF0ZS5hc2NpaSkgeworICAgICAgICAgICAgICAgICAgICBhc3NlcnQgKGNvbXBhY3QtPnV0ZjggPT0gZGF0YSk7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydCAoY29tcGFjdC0+dXRmOF9sZW5ndGggPT0gYXNjaWktPmxlbmd0aCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IChjb21wYWN0LT51dGY4ICE9IGRhdGEpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmIChraW5kICE9IFB5VW5pY29kZV9XQ0hBUl9LSU5EKSB7CisgICAgICAgICAgICBpZiAoCisjaWYgU0laRU9GX1dDSEFSX1QgPT0gMgorICAgICAgICAgICAgICAgIGtpbmQgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQKKyNlbHNlCisgICAgICAgICAgICAgICAga2luZCA9PSBQeVVuaWNvZGVfNEJZVEVfS0lORAorI2VuZGlmCisgICAgICAgICAgICAgICApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGFzY2lpLT53c3RyID09IGRhdGEpOworICAgICAgICAgICAgICAgIGFzc2VydChjb21wYWN0LT53c3RyX2xlbmd0aCA9PSBhc2NpaS0+bGVuZ3RoKTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+d3N0ciAhPSBkYXRhKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChjb21wYWN0LT51dGY4ID09IE5VTEwpCisgICAgICAgICAgICBhc3NlcnQoY29tcGFjdC0+dXRmOF9sZW5ndGggPT0gMCk7CisgICAgICAgIGlmIChhc2NpaS0+d3N0ciA9PSBOVUxMKQorICAgICAgICAgICAgYXNzZXJ0KGNvbXBhY3QtPndzdHJfbGVuZ3RoID09IDApOworICAgIH0KKyAgICAvKiBjaGVjayB0aGF0IHRoZSBiZXN0IGtpbmQgaXMgdXNlZCAqLworICAgIGlmIChjaGVja19jb250ZW50ICYmIGtpbmQgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpCisgICAgeworICAgICAgICBQeV9zc2l6ZV90IGk7CisgICAgICAgIFB5X1VDUzQgbWF4Y2hhciA9IDA7CisgICAgICAgIHZvaWQgKmRhdGEgPSBQeVVuaWNvZGVfREFUQShhc2NpaSk7CisgICAgICAgIGZvciAoaT0wOyBpIDwgYXNjaWktPmxlbmd0aDsgaSsrKQorICAgICAgICB7CisgICAgICAgICAgICBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICAgICAgICBpZiAoY2ggPiBtYXhjaGFyKQorICAgICAgICAgICAgICAgIG1heGNoYXIgPSBjaDsKKyAgICAgICAgfQorICAgICAgICBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCkgeworICAgICAgICAgICAgaWYgKGFzY2lpLT5zdGF0ZS5hc2NpaSA9PSAwKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0KG1heGNoYXIgPj0gMTI4KTsKKyAgICAgICAgICAgICAgICBhc3NlcnQobWF4Y2hhciA8PSAyNTUpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGFzc2VydChtYXhjaGFyIDwgMTI4KTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChraW5kID09IFB5VW5pY29kZV8yQllURV9LSU5EKSB7CisgICAgICAgICAgICBhc3NlcnQobWF4Y2hhciA+PSAweDEwMCk7CisgICAgICAgICAgICBhc3NlcnQobWF4Y2hhciA8PSAweEZGRkYpOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgYXNzZXJ0KG1heGNoYXIgPj0gMHgxMDAwMCk7CisgICAgICAgICAgICBhc3NlcnQobWF4Y2hhciA8PSBNQVhfVU5JQ09ERSk7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIDE7Cit9CisjZW5kaWYKKworc3RhdGljIFB5T2JqZWN0KgordW5pY29kZV9yZXN1bHRfd2NoYXIoUHlPYmplY3QgKnVuaWNvZGUpCit7CisjaWZuZGVmIFB5X0RFQlVHCisgICAgUHlfc3NpemVfdCBsZW47CisKKyAgICBhc3NlcnQoUHlfUkVGQ05UKHVuaWNvZGUpID09IDEpOworCisgICAgbGVuID0gX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKTsKKyAgICBpZiAobGVuID09IDApIHsKKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgIH0KKworICAgIGlmIChsZW4gPT0gMSkgeworICAgICAgICB3Y2hhcl90IGNoID0gX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpWzBdOworICAgICAgICBpZiAoY2ggPCAyNTYpIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpsYXRpbjFfY2hhciA9IGdldF9sYXRpbjFfY2hhcigodW5zaWduZWQgY2hhciljaCk7CisgICAgICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgICAgICAgICByZXR1cm4gbGF0aW4xX2NoYXI7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoX1B5VW5pY29kZV9SZWFkeSh1bmljb2RlKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRih1bmljb2RlKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorI2Vsc2UKKyAgICAvKiBkb24ndCBtYWtlIHRoZSByZXN1bHQgcmVhZHkgaW4gZGVidWcgbW9kZSB0byBlbnN1cmUgdGhhdCB0aGUgY2FsbGVyCisgICAgICAgbWFrZXMgdGhlIHN0cmluZyByZWFkeSBiZWZvcmUgdXNpbmcgaXQgKi8KKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHVuaWNvZGUsIDEpKTsKKyNlbmRpZgorICAgIHJldHVybiB1bmljb2RlOworfQorCitzdGF0aWMgUHlPYmplY3QqCit1bmljb2RlX3Jlc3VsdF9yZWFkeShQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICBQeV9zc2l6ZV90IGxlbmd0aDsKKworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworICAgIGlmIChsZW5ndGggPT0gMCkgeworICAgICAgICBpZiAodW5pY29kZSAhPSB1bmljb2RlX2VtcHR5KSB7CisgICAgICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW1wdHk7CisgICAgfQorCisgICAgaWYgKGxlbmd0aCA9PSAxKSB7CisgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIDApOworICAgICAgICBpZiAoY2ggPCAyNTYpIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpsYXRpbjFfY2hhciA9IHVuaWNvZGVfbGF0aW4xW2NoXTsKKyAgICAgICAgICAgIGlmIChsYXRpbjFfY2hhciAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGUgIT0gbGF0aW4xX2NoYXIpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfSU5DUkVGKGxhdGluMV9jaGFyKTsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICByZXR1cm4gbGF0aW4xX2NoYXI7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHVuaWNvZGUsIDEpKTsKKyAgICAgICAgICAgICAgICBQeV9JTkNSRUYodW5pY29kZSk7CisgICAgICAgICAgICAgICAgdW5pY29kZV9sYXRpbjFbY2hdID0gdW5pY29kZTsKKyAgICAgICAgICAgICAgICByZXR1cm4gdW5pY29kZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kodW5pY29kZSwgMSkpOworICAgIHJldHVybiB1bmljb2RlOworfQorCitzdGF0aWMgUHlPYmplY3QqCit1bmljb2RlX3Jlc3VsdChQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyh1bmljb2RlKSk7CisgICAgaWYgKFB5VW5pY29kZV9JU19SRUFEWSh1bmljb2RlKSkKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0X3JlYWR5KHVuaWNvZGUpOworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0X3djaGFyKHVuaWNvZGUpOworfQorCitzdGF0aWMgUHlPYmplY3QqCit1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KHVuaWNvZGUpKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodW5pY29kZSkgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGUpOworICAgICAgICByZXR1cm4gdW5pY29kZTsKKyAgICB9CisgICAgZWxzZQorICAgICAgICAvKiBTdWJ0eXBlIC0tIHJldHVybiBnZW51aW5lIHVuaWNvZGUgc3RyaW5nIHdpdGggdGhlIHNhbWUgdmFsdWUuICovCisgICAgICAgIHJldHVybiBfUHlVbmljb2RlX0NvcHkodW5pY29kZSk7Cit9CisKKyNpZmRlZiBIQVZFX01CQ1MKK3N0YXRpYyBPU1ZFUlNJT05JTkZPRVggd2ludmVyOworI2VuZGlmCisKIC8qIC0tLSBCbG9vbSBGaWx0ZXJzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKIC8qIHN0dWZmIHRvIGltcGxlbWVudCBzaW1wbGUgImJsb29tIGZpbHRlcnMiIGZvciBVbmljb2RlIGNoYXJhY3RlcnMuCkBAIC0yMjMsNyArNTM0LDggQEAKICAgICAoKGNoKSA8IDEyOFUgPyBhc2NpaV9saW5lYnJlYWtbKGNoKV0gOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgKEJMT09NKGJsb29tX2xpbmVicmVhaywgKGNoKSkgJiYgUHlfVU5JQ09ERV9JU0xJTkVCUkVBSyhjaCkpKQogCi1QeV9MT0NBTF9JTkxJTkUoQkxPT01fTUFTSykgbWFrZV9ibG9vbV9tYXNrKFB5X1VOSUNPREUqIHB0ciwgUHlfc3NpemVfdCBsZW4pCitQeV9MT0NBTF9JTkxJTkUoQkxPT01fTUFTSykKK21ha2VfYmxvb21fbWFzayhpbnQga2luZCwgdm9pZCogcHRyLCBQeV9zc2l6ZV90IGxlbikKIHsKICAgICAvKiBjYWxjdWxhdGUgc2ltcGxlIGJsb29tLXN0eWxlIGJpdG1hc2sgZm9yIGEgZ2l2ZW4gdW5pY29kZSBzdHJpbmcgKi8KIApAQCAtMjMyLDc2ICs1NDQsMjUxIEBACiAKICAgICBtYXNrID0gMDsKICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspCi0gICAgICAgIEJMT09NX0FERChtYXNrLCBwdHJbaV0pOworICAgICAgICBCTE9PTV9BREQobWFzaywgUHlVbmljb2RlX1JFQUQoa2luZCwgcHRyLCBpKSk7CiAKICAgICByZXR1cm4gbWFzazsKIH0KIAotUHlfTE9DQUxfSU5MSU5FKGludCkgdW5pY29kZV9tZW1iZXIoUHlfVU5JQ09ERSBjaHIsIFB5X1VOSUNPREUqIHNldCwgUHlfc3NpemVfdCBzZXRsZW4pCi17Ci0gICAgUHlfc3NpemVfdCBpOworI2RlZmluZSBCTE9PTV9NRU1CRVIobWFzaywgY2hyLCBzdHIpIFwKKyAgICAoQkxPT00obWFzaywgY2hyKSBcCisgICAgICYmIChQeVVuaWNvZGVfRmluZENoYXIoc3RyLCBjaHIsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0ciksIDEpID49IDApKQogCi0gICAgZm9yIChpID0gMDsgaSA8IHNldGxlbjsgaSsrKQotICAgICAgICBpZiAoc2V0W2ldID09IGNocikKLSAgICAgICAgICAgIHJldHVybiAxOworLyogQ29tcGlsYXRpb24gb2YgdGVtcGxhdGVkIHJvdXRpbmVzICovCiAKLSAgICByZXR1cm4gMDsKLX0KKyNpbmNsdWRlICJzdHJpbmdsaWIvYXNjaWlsaWIuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmFzdHNlYXJjaC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9wYXJ0aXRpb24uaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvc3BsaXQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvY291bnQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmluZC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9maW5kX21heF9jaGFyLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2xvY2FsZXV0aWwuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvdW5kZWYuaCIKIAotI2RlZmluZSBCTE9PTV9NRU1CRVIobWFzaywgY2hyLCBzZXQsIHNldGxlbikgICAgICAgICAgICAgICAgICAgIFwKLSAgICBCTE9PTShtYXNrLCBjaHIpICYmIHVuaWNvZGVfbWVtYmVyKGNociwgc2V0LCBzZXRsZW4pCisjaW5jbHVkZSAic3RyaW5nbGliL3VjczFsaWIuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmFzdHNlYXJjaC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9wYXJ0aXRpb24uaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvc3BsaXQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvY291bnQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmluZC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9maW5kX21heF9jaGFyLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2xvY2FsZXV0aWwuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvdW5kZWYuaCIKKworI2luY2x1ZGUgInN0cmluZ2xpYi91Y3MybGliLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2Zhc3RzZWFyY2guaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvcGFydGl0aW9uLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3NwbGl0LmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2NvdW50LmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2ZpbmQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmluZF9tYXhfY2hhci5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9sb2NhbGV1dGlsLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3VuZGVmLmgiCisKKyNpbmNsdWRlICJzdHJpbmdsaWIvdWNzNGxpYi5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9mYXN0c2VhcmNoLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3BhcnRpdGlvbi5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9zcGxpdC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9jb3VudC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9maW5kLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2ZpbmRfbWF4X2NoYXIuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvbG9jYWxldXRpbC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi91bmRlZi5oIgorCisjaW5jbHVkZSAic3RyaW5nbGliL3VuaWNvZGVkZWZzLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2Zhc3RzZWFyY2guaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvY291bnQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmluZC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi91bmRlZi5oIgogCiAvKiAtLS0gVW5pY29kZSBPYmplY3QgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAotc3RhdGljCi1pbnQgdW5pY29kZV9yZXNpemUocmVnaXN0ZXIgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlLAotICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuZ3RoKQorc3RhdGljIFB5T2JqZWN0ICoKK2ZpeHVwKFB5T2JqZWN0ICpzZWxmLCBQeV9VQ1M0ICgqZml4ZmN0KShQeU9iamVjdCAqcykpOworCitQeV9MT0NBTF9JTkxJTkUoUHlfc3NpemVfdCkgZmluZGNoYXIodm9pZCAqcywgaW50IGtpbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLCBQeV9VQ1M0IGNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBkaXJlY3Rpb24pCiB7Ci0gICAgdm9pZCAqb2xkc3RyOworICAgIGludCBtb2RlID0gKGRpcmVjdGlvbiA9PSAxKSA/IEZBU1RfU0VBUkNIIDogRkFTVF9SU0VBUkNIOwogCi0gICAgLyogU2hvcnRjdXQgaWYgdGhlcmUncyBub3RoaW5nIG11Y2ggdG8gZG8uICovCi0gICAgaWYgKHVuaWNvZGUtPmxlbmd0aCA9PSBsZW5ndGgpCi0gICAgICAgIGdvdG8gcmVzZXQ7Ci0KLSAgICAvKiBSZXNpemluZyBzaGFyZWQgb2JqZWN0ICh1bmljb2RlX2VtcHR5IG9yIHNpbmdsZSBjaGFyYWN0ZXIKLSAgICAgICBvYmplY3RzKSBpbi1wbGFjZSBpcyBub3QgYWxsb3dlZC4gVXNlIFB5VW5pY29kZV9SZXNpemUoKQotICAgICAgIGluc3RlYWQgISAqLwotCi0gICAgaWYgKHVuaWNvZGUgPT0gdW5pY29kZV9lbXB0eSB8fAotICAgICAgICAodW5pY29kZS0+bGVuZ3RoID09IDEgJiYKLSAgICAgICAgIHVuaWNvZGUtPnN0clswXSA8IDI1NlUgJiYKLSAgICAgICAgIHVuaWNvZGVfbGF0aW4xW3VuaWNvZGUtPnN0clswXV0gPT0gdW5pY29kZSkpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5c3RlbUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgImNhbid0IHJlc2l6ZSBzaGFyZWQgc3RyIG9iamVjdHMiKTsKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICB7CisgICAgICAgICAgICBQeV9VQ1MxIGNoMSA9IChQeV9VQ1MxKSBjaDsKKyAgICAgICAgICAgIGlmIChjaDEgPT0gY2gpCisgICAgICAgICAgICAgICAgcmV0dXJuIHVjczFsaWJfZmFzdHNlYXJjaCgoUHlfVUNTMSAqKSBzLCBzaXplLCAmY2gxLCAxLCAwLCBtb2RlKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICB7CisgICAgICAgICAgICBQeV9VQ1MyIGNoMiA9IChQeV9VQ1MyKSBjaDsKKyAgICAgICAgICAgIGlmIChjaDIgPT0gY2gpCisgICAgICAgICAgICAgICAgcmV0dXJuIHVjczJsaWJfZmFzdHNlYXJjaCgoUHlfVUNTMiAqKSBzLCBzaXplLCAmY2gyLCAxLCAwLCBtb2RlKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICByZXR1cm4gdWNzNGxpYl9mYXN0c2VhcmNoKChQeV9VQ1M0ICopIHMsIHNpemUsICZjaCwgMSwgMCwgbW9kZSk7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDApOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQorfQogCi0gICAgLyogV2UgYWxsb2NhdGUgb25lIG1vcmUgYnl0ZSB0byBtYWtlIHN1cmUgdGhlIHN0cmluZyBpcyBVeDAwMDAgdGVybWluYXRlZC4KLSAgICAgICBUaGUgb3ZlcmFsbG9jYXRpb24gaXMgYWxzbyB1c2VkIGJ5IGZhc3RzZWFyY2gsIHdoaWNoIGFzc3VtZXMgdGhhdCBpdCdzCi0gICAgICAgc2FmZSB0byBsb29rIGF0IHN0cltsZW5ndGhdICh3aXRob3V0IG1ha2luZyBhbnkgYXNzdW1wdGlvbnMgYWJvdXQgd2hhdAotICAgICAgIGl0IGNvbnRhaW5zKS4gKi8KK3N0YXRpYyBQeU9iamVjdCoKK3Jlc2l6ZV9jb21wYWN0KFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90IGxlbmd0aCkKK3sKKyAgICBQeV9zc2l6ZV90IGNoYXJfc2l6ZTsKKyAgICBQeV9zc2l6ZV90IHN0cnVjdF9zaXplOworICAgIFB5X3NzaXplX3QgbmV3X3NpemU7CisgICAgaW50IHNoYXJlX3dzdHI7CisgICAgUHlPYmplY3QgKm5ld191bmljb2RlOworICAgIGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkodW5pY29kZSkpOworICAgIGFzc2VydChQeVVuaWNvZGVfSVNfQ09NUEFDVCh1bmljb2RlKSk7CiAKLSAgICBvbGRzdHIgPSB1bmljb2RlLT5zdHI7Ci0gICAgdW5pY29kZS0+c3RyID0gUHlPYmplY3RfUkVBTExPQyh1bmljb2RlLT5zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YoUHlfVU5JQ09ERSkgKiAobGVuZ3RoICsgMSkpOwotICAgIGlmICghdW5pY29kZS0+c3RyKSB7Ci0gICAgICAgIHVuaWNvZGUtPnN0ciA9IChQeV9VTklDT0RFICopb2xkc3RyOworICAgIGNoYXJfc2l6ZSA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIGlmIChQeVVuaWNvZGVfSVNfQVNDSUkodW5pY29kZSkpCisgICAgICAgIHN0cnVjdF9zaXplID0gc2l6ZW9mKFB5QVNDSUlPYmplY3QpOworICAgIGVsc2UKKyAgICAgICAgc3RydWN0X3NpemUgPSBzaXplb2YoUHlDb21wYWN0VW5pY29kZU9iamVjdCk7CisgICAgc2hhcmVfd3N0ciA9IF9QeVVuaWNvZGVfU0hBUkVfV1NUUih1bmljb2RlKTsKKworICAgIGlmIChsZW5ndGggPiAoKFBZX1NTSVpFX1RfTUFYIC0gc3RydWN0X3NpemUpIC8gY2hhcl9zaXplIC0gMSkpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIG5ld19zaXplID0gKHN0cnVjdF9zaXplICsgKGxlbmd0aCArIDEpICogY2hhcl9zaXplKTsKKworICAgIF9QeV9ERUNfUkVGVE9UQUw7CisgICAgX1B5X0ZvcmdldFJlZmVyZW5jZSh1bmljb2RlKTsKKworICAgIG5ld191bmljb2RlID0gKFB5T2JqZWN0ICopUHlPYmplY3RfUkVBTExPQygoY2hhciAqKXVuaWNvZGUsIG5ld19zaXplKTsKKyAgICBpZiAobmV3X3VuaWNvZGUgPT0gTlVMTCkgeworICAgICAgICBfUHlfTmV3UmVmZXJlbmNlKHVuaWNvZGUpOworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgdW5pY29kZSA9IG5ld191bmljb2RlOworICAgIF9QeV9OZXdSZWZlcmVuY2UodW5pY29kZSk7CisKKyAgICBfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKSA9IGxlbmd0aDsKKyAgICBpZiAoc2hhcmVfd3N0cikgeworICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSBQeVVuaWNvZGVfREFUQSh1bmljb2RlKTsKKyAgICAgICAgaWYgKCFQeVVuaWNvZGVfSVNfQVNDSUkodW5pY29kZSkpCisgICAgICAgICAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpID0gbGVuZ3RoOworICAgIH0KKyAgICBQeVVuaWNvZGVfV1JJVEUoUHlVbmljb2RlX0tJTkQodW5pY29kZSksIFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpLAorICAgICAgICAgICAgICAgICAgICBsZW5ndGgsIDApOworICAgIHJldHVybiB1bmljb2RlOworfQorCitzdGF0aWMgaW50CityZXNpemVfaW5wbGFjZShQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCBsZW5ndGgpCit7CisgICAgd2NoYXJfdCAqd3N0cjsKKyAgICBQeV9zc2l6ZV90IG5ld19zaXplOworICAgIGFzc2VydCghUHlVbmljb2RlX0lTX0NPTVBBQ1QodW5pY29kZSkpOworICAgIGFzc2VydChQeV9SRUZDTlQodW5pY29kZSkgPT0gMSk7CisKKyAgICBpZiAoUHlVbmljb2RlX0lTX1JFQURZKHVuaWNvZGUpKSB7CisgICAgICAgIFB5X3NzaXplX3QgY2hhcl9zaXplOworICAgICAgICBpbnQgc2hhcmVfd3N0ciwgc2hhcmVfdXRmODsKKyAgICAgICAgdm9pZCAqZGF0YTsKKworICAgICAgICBkYXRhID0gX1B5VW5pY29kZV9EQVRBX0FOWSh1bmljb2RlKTsKKyAgICAgICAgY2hhcl9zaXplID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgICAgIHNoYXJlX3dzdHIgPSBfUHlVbmljb2RlX1NIQVJFX1dTVFIodW5pY29kZSk7CisgICAgICAgIHNoYXJlX3V0ZjggPSBfUHlVbmljb2RlX1NIQVJFX1VURjgodW5pY29kZSk7CisKKyAgICAgICAgaWYgKGxlbmd0aCA+IChQWV9TU0laRV9UX01BWCAvIGNoYXJfc2l6ZSAtIDEpKSB7CisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIG5ld19zaXplID0gKGxlbmd0aCArIDEpICogY2hhcl9zaXplOworCisgICAgICAgIGlmICghc2hhcmVfdXRmOCAmJiBfUHlVbmljb2RlX0hBU19VVEY4X01FTU9SWSh1bmljb2RlKSkKKyAgICAgICAgeworICAgICAgICAgICAgUHlPYmplY3RfREVMKF9QeVVuaWNvZGVfVVRGOCh1bmljb2RlKSk7CisgICAgICAgICAgICBfUHlVbmljb2RlX1VURjgodW5pY29kZSkgPSBOVUxMOworICAgICAgICAgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgICAgIH0KKworICAgICAgICBkYXRhID0gKFB5T2JqZWN0ICopUHlPYmplY3RfUkVBTExPQyhkYXRhLCBuZXdfc2l6ZSk7CisgICAgICAgIGlmIChkYXRhID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgX1B5VW5pY29kZV9EQVRBX0FOWSh1bmljb2RlKSA9IGRhdGE7CisgICAgICAgIGlmIChzaGFyZV93c3RyKSB7CisgICAgICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSBkYXRhOworICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IGxlbmd0aDsKKyAgICAgICAgfQorICAgICAgICBpZiAoc2hhcmVfdXRmOCkgeworICAgICAgICAgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gZGF0YTsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgodW5pY29kZSkgPSBsZW5ndGg7CisgICAgICAgIH0KKyAgICAgICAgX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSkgPSBsZW5ndGg7CisgICAgICAgIFB5VW5pY29kZV9XUklURShQeVVuaWNvZGVfS0lORCh1bmljb2RlKSwgZGF0YSwgbGVuZ3RoLCAwKTsKKyAgICAgICAgaWYgKHNoYXJlX3dzdHIgfHwgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID09IE5VTEwpIHsKKyAgICAgICAgICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kodW5pY29kZSwgMCkpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICB9CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSAhPSBOVUxMKTsKKworICAgIC8qIGNoZWNrIGZvciBpbnRlZ2VyIG92ZXJmbG93ICovCisgICAgaWYgKGxlbmd0aCA+IFBZX1NTSVpFX1RfTUFYIC8gc2l6ZW9mKHdjaGFyX3QpIC0gMSkgewogICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQotICAgIHVuaWNvZGUtPnN0cltsZW5ndGhdID0gMDsKLSAgICB1bmljb2RlLT5sZW5ndGggPSBsZW5ndGg7Ci0KLSAgcmVzZXQ6Ci0gICAgLyogUmVzZXQgdGhlIG9iamVjdCBjYWNoZXMgKi8KLSAgICBpZiAodW5pY29kZS0+ZGVmZW5jKSB7Ci0gICAgICAgIFB5X0NMRUFSKHVuaWNvZGUtPmRlZmVuYyk7CisgICAgbmV3X3NpemUgPSBzaXplb2Yod2NoYXJfdCkgKiAobGVuZ3RoICsgMSk7CisgICAgd3N0ciA9ICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSk7CisgICAgd3N0ciA9IFB5T2JqZWN0X1JFQUxMT0Mod3N0ciwgbmV3X3NpemUpOworICAgIGlmICghd3N0cikgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gLTE7CiAgICAgfQotICAgIHVuaWNvZGUtPmhhc2ggPSAtMTsKLQorICAgIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSA9IHdzdHI7CisgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpW2xlbmd0aF0gPSAwOworICAgIF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSkgPSBsZW5ndGg7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1bmljb2RlLCAwKSk7CiAgICAgcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBQeU9iamVjdCoKK3Jlc2l6ZV9jb3B5KFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90IGxlbmd0aCkKK3sKKyAgICBQeV9zc2l6ZV90IGNvcHlfbGVuZ3RoOworICAgIGlmIChfUHlVbmljb2RlX0tJTkQodW5pY29kZSkgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpIHsKKyAgICAgICAgUHlPYmplY3QgKmNvcHk7CisKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCisgICAgICAgIGNvcHkgPSBQeVVuaWNvZGVfTmV3KGxlbmd0aCwgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHVuaWNvZGUpKTsKKyAgICAgICAgaWYgKGNvcHkgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCisgICAgICAgIGNvcHlfbGVuZ3RoID0gUHlfTUlOKGxlbmd0aCwgUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpOworICAgICAgICBjb3B5X2NoYXJhY3RlcnMoY29weSwgMCwgdW5pY29kZSwgMCwgY29weV9sZW5ndGgpOworICAgICAgICByZXR1cm4gY29weTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5T2JqZWN0ICp3OworCisgICAgICAgIHcgPSAoUHlPYmplY3QqKV9QeVVuaWNvZGVfTmV3KGxlbmd0aCk7CisgICAgICAgIGlmICh3ID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgY29weV9sZW5ndGggPSBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpOworICAgICAgICBjb3B5X2xlbmd0aCA9IFB5X01JTihjb3B5X2xlbmd0aCwgbGVuZ3RoKTsKKyAgICAgICAgUHlfVU5JQ09ERV9DT1BZKF9QeVVuaWNvZGVfV1NUUih3KSwgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpLAorICAgICAgICAgICAgICAgICAgICAgICAgY29weV9sZW5ndGgpOworICAgICAgICByZXR1cm4gdzsKKyAgICB9Cit9CisKIC8qIFdlIGFsbG9jYXRlIG9uZSBtb3JlIGJ5dGUgdG8gbWFrZSBzdXJlIHRoZSBzdHJpbmcgaXMKICAgIFV4MDAwMCB0ZXJtaW5hdGVkOyBzb21lIGNvZGUgKGUuZy4gbmV3X2lkZW50aWZpZXIpCiAgICByZWxpZXMgb24gdGhhdC4KQEAgLTMxMSw1NSArNzk4LDQ3IEBACiAKICovCiAKLXN0YXRpYwotUHlVbmljb2RlT2JqZWN0ICpfUHlVbmljb2RlX05ldyhQeV9zc2l6ZV90IGxlbmd0aCkKKyNpZmRlZiBQeV9ERUJVRworc3RhdGljIGludCB1bmljb2RlX29sZF9uZXdfY2FsbHMgPSAwOworI2VuZGlmCisKK3N0YXRpYyBQeVVuaWNvZGVPYmplY3QgKgorX1B5VW5pY29kZV9OZXcoUHlfc3NpemVfdCBsZW5ndGgpCiB7CiAgICAgcmVnaXN0ZXIgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlOworICAgIHNpemVfdCBuZXdfc2l6ZTsKIAogICAgIC8qIE9wdGltaXphdGlvbiBmb3IgZW1wdHkgc3RyaW5ncyAqLwogICAgIGlmIChsZW5ndGggPT0gMCAmJiB1bmljb2RlX2VtcHR5ICE9IE5VTEwpIHsKICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOwotICAgICAgICByZXR1cm4gdW5pY29kZV9lbXB0eTsKKyAgICAgICAgcmV0dXJuIChQeVVuaWNvZGVPYmplY3QqKXVuaWNvZGVfZW1wdHk7CiAgICAgfQogCiAgICAgLyogRW5zdXJlIHdlIHdvbid0IG92ZXJmbG93IHRoZSBzaXplLiAqLwogICAgIGlmIChsZW5ndGggPiAoKFBZX1NTSVpFX1RfTUFYIC8gc2l6ZW9mKFB5X1VOSUNPREUpKSAtIDEpKSB7CiAgICAgICAgIHJldHVybiAoUHlVbmljb2RlT2JqZWN0ICopUHlFcnJfTm9NZW1vcnkoKTsKICAgICB9Ci0KLSAgICAvKiBVbmljb2RlIGZyZWVsaXN0ICYgbWVtb3J5IGFsbG9jYXRpb24gKi8KLSAgICBpZiAoZnJlZV9saXN0KSB7Ci0gICAgICAgIHVuaWNvZGUgPSBmcmVlX2xpc3Q7Ci0gICAgICAgIGZyZWVfbGlzdCA9ICooUHlVbmljb2RlT2JqZWN0ICoqKXVuaWNvZGU7Ci0gICAgICAgIG51bWZyZWUtLTsKLSAgICAgICAgaWYgKHVuaWNvZGUtPnN0cikgewotICAgICAgICAgICAgLyogS2VlcC1BbGl2ZSBvcHRpbWl6YXRpb246IHdlIG9ubHkgdXBzaXplIHRoZSBidWZmZXIsCi0gICAgICAgICAgICAgICBuZXZlciBkb3duc2l6ZSBpdC4gKi8KLSAgICAgICAgICAgIGlmICgodW5pY29kZS0+bGVuZ3RoIDwgbGVuZ3RoKSAmJgotICAgICAgICAgICAgICAgIHVuaWNvZGVfcmVzaXplKHVuaWNvZGUsIGxlbmd0aCkgPCAwKSB7Ci0gICAgICAgICAgICAgICAgUHlPYmplY3RfREVMKHVuaWNvZGUtPnN0cik7Ci0gICAgICAgICAgICAgICAgdW5pY29kZS0+c3RyID0gTlVMTDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIHNpemVfdCBuZXdfc2l6ZSA9IHNpemVvZihQeV9VTklDT0RFKSAqICgoc2l6ZV90KWxlbmd0aCArIDEpOwotICAgICAgICAgICAgdW5pY29kZS0+c3RyID0gKFB5X1VOSUNPREUqKSBQeU9iamVjdF9NQUxMT0MobmV3X3NpemUpOwotICAgICAgICB9Ci0gICAgICAgIFB5T2JqZWN0X0lOSVQodW5pY29kZSwgJlB5VW5pY29kZV9UeXBlKTsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIHNpemVfdCBuZXdfc2l6ZTsKLSAgICAgICAgdW5pY29kZSA9IFB5T2JqZWN0X05ldyhQeVVuaWNvZGVPYmplY3QsICZQeVVuaWNvZGVfVHlwZSk7Ci0gICAgICAgIGlmICh1bmljb2RlID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgbmV3X3NpemUgPSBzaXplb2YoUHlfVU5JQ09ERSkgKiAoKHNpemVfdClsZW5ndGggKyAxKTsKLSAgICAgICAgdW5pY29kZS0+c3RyID0gKFB5X1VOSUNPREUqKSBQeU9iamVjdF9NQUxMT0MobmV3X3NpemUpOworICAgIGlmIChsZW5ndGggPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJOZWdhdGl2ZSBzaXplIHBhc3NlZCB0byBfUHlVbmljb2RlX05ldyIpOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBpZiAoIXVuaWNvZGUtPnN0cikgeworI2lmZGVmIFB5X0RFQlVHCisgICAgKyt1bmljb2RlX29sZF9uZXdfY2FsbHM7CisjZW5kaWYKKworICAgIHVuaWNvZGUgPSBQeU9iamVjdF9OZXcoUHlVbmljb2RlT2JqZWN0LCAmUHlVbmljb2RlX1R5cGUpOworICAgIGlmICh1bmljb2RlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIG5ld19zaXplID0gc2l6ZW9mKFB5X1VOSUNPREUpICogKChzaXplX3QpbGVuZ3RoICsgMSk7CisgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gKFB5X1VOSUNPREUqKSBQeU9iamVjdF9NQUxMT0MobmV3X3NpemUpOworICAgIGlmICghX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpKSB7CisgICAgICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKLSAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisKICAgICAvKiBJbml0aWFsaXplIHRoZSBmaXJzdCBlbGVtZW50IHRvIGd1YXJkIGFnYWluc3QgY2FzZXMgd2hlcmUKICAgICAgKiB0aGUgY2FsbGVyIGZhaWxzIGJlZm9yZSBpbml0aWFsaXppbmcgc3RyIC0tIHVuaWNvZGVfcmVzaXplKCkKICAgICAgKiByZWFkcyBzdHJbMF0sIGFuZCB0aGUgS2VlcC1BbGl2ZSBvcHRpbWl6YXRpb24gY2FuIGtlZXAgbWVtb3J5CkBAIC0zNjcsMjQgKzg0Niw2NDAgQEAKICAgICAgKiBXZSBkb24ndCB3YW50IHVuaWNvZGVfcmVzaXplIHRvIHJlYWQgdW5pbml0aWFsaXplZCBtZW1vcnkgaW4KICAgICAgKiB0aGF0IGNhc2UuCiAgICAgICovCi0gICAgdW5pY29kZS0+c3RyWzBdID0gMDsKLSAgICB1bmljb2RlLT5zdHJbbGVuZ3RoXSA9IDA7Ci0gICAgdW5pY29kZS0+bGVuZ3RoID0gbGVuZ3RoOwotICAgIHVuaWNvZGUtPmhhc2ggPSAtMTsKLSAgICB1bmljb2RlLT5zdGF0ZSA9IDA7Ci0gICAgdW5pY29kZS0+ZGVmZW5jID0gTlVMTDsKKyAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSlbMF0gPSAwOworICAgIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKVtsZW5ndGhdID0gMDsKKyAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpID0gbGVuZ3RoOworICAgIF9QeVVuaWNvZGVfSEFTSCh1bmljb2RlKSA9IC0xOworICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkuaW50ZXJuZWQgPSAwOworICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkua2luZCA9IDA7CisgICAgX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5jb21wYWN0ID0gMDsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLnJlYWR5ID0gMDsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmFzY2lpID0gMDsKKyAgICBfUHlVbmljb2RlX0RBVEFfQU5ZKHVuaWNvZGUpID0gTlVMTDsKKyAgICBfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gTlVMTDsKKyAgICBfUHlVbmljb2RlX1VURjhfTEVOR1RIKHVuaWNvZGUpID0gMDsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KChQeU9iamVjdCAqKXVuaWNvZGUsIDApKTsKICAgICByZXR1cm4gdW5pY29kZTsKLQotICBvbkVycm9yOgotICAgIC8qIFhYWCBVTlJFRi9ORVdSRUYgaW50ZXJmYWNlIHNob3VsZCBiZSBtb3JlIHN5bW1ldHJpY2FsICovCi0gICAgX1B5X0RFQ19SRUZUT1RBTDsKLSAgICBfUHlfRm9yZ2V0UmVmZXJlbmNlKChQeU9iamVjdCAqKXVuaWNvZGUpOwotICAgIFB5T2JqZWN0X0RlbCh1bmljb2RlKTsKLSAgICByZXR1cm4gTlVMTDsKIH0KIAotc3RhdGljCi12b2lkIHVuaWNvZGVfZGVhbGxvYyhyZWdpc3RlciBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGUpCitzdGF0aWMgY29uc3QgY2hhcioKK3VuaWNvZGVfa2luZF9uYW1lKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIC8qIGRvbid0IGNoZWNrIGNvbnNpc3RlbmN5OiB1bmljb2RlX2tpbmRfbmFtZSgpIGlzIGNhbGxlZCBmcm9tCisgICAgICAgX1B5VW5pY29kZV9EdW1wKCkgKi8KKyAgICBpZiAoIVB5VW5pY29kZV9JU19DT01QQUNUKHVuaWNvZGUpKQorICAgIHsKKyAgICAgICAgaWYgKCFQeVVuaWNvZGVfSVNfUkVBRFkodW5pY29kZSkpCisgICAgICAgICAgICByZXR1cm4gIndzdHIiOworICAgICAgICBzd2l0Y2ggKFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpKQorICAgICAgICB7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHVuaWNvZGUpKQorICAgICAgICAgICAgICAgIHJldHVybiAibGVnYWN5IGFzY2lpIjsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXR1cm4gImxlZ2FjeSBsYXRpbjEiOworICAgICAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICAgICAgcmV0dXJuICJsZWdhY3kgVUNTMiI7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgICAgICByZXR1cm4gImxlZ2FjeSBVQ1M0IjsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHJldHVybiAiPGxlZ2FjeSBpbnZhbGlkIGtpbmQ+IjsKKyAgICAgICAgfQorICAgIH0KKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKHVuaWNvZGUpKTsKKyAgICBzd2l0Y2ggKFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSSh1bmljb2RlKSkKKyAgICAgICAgICAgIHJldHVybiAiYXNjaWkiOworICAgICAgICBlbHNlCisgICAgICAgICAgICByZXR1cm4gImxhdGluMSI7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuICJVQ1MyIjsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICByZXR1cm4gIlVDUzQiOworICAgIGRlZmF1bHQ6CisgICAgICAgIHJldHVybiAiPGludmFsaWQgY29tcGFjdCBraW5kPiI7CisgICAgfQorfQorCisjaWZkZWYgUHlfREVCVUcKK3N0YXRpYyBpbnQgdW5pY29kZV9uZXdfbmV3X2NhbGxzID0gMDsKKworLyogRnVuY3Rpb25zIHdyYXBwaW5nIG1hY3JvcyBmb3IgdXNlIGluIGRlYnVnZ2VyICovCitjaGFyICpfUHlVbmljb2RlX3V0Zjgodm9pZCAqdW5pY29kZSl7CisgICAgcmV0dXJuIFB5VW5pY29kZV9VVEY4KHVuaWNvZGUpOworfQorCit2b2lkICpfUHlVbmljb2RlX2NvbXBhY3RfZGF0YSh2b2lkICp1bmljb2RlKSB7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfQ09NUEFDVF9EQVRBKHVuaWNvZGUpOworfQordm9pZCAqX1B5VW5pY29kZV9kYXRhKHZvaWQgKnVuaWNvZGUpeworICAgIHByaW50Zigib2JqICVwXG4iLCB1bmljb2RlKTsKKyAgICBwcmludGYoImNvbXBhY3QgJWRcbiIsIFB5VW5pY29kZV9JU19DT01QQUNUKHVuaWNvZGUpKTsKKyAgICBwcmludGYoImNvbXBhY3QgYXNjaWkgJWRcbiIsIFB5VW5pY29kZV9JU19DT01QQUNUX0FTQ0lJKHVuaWNvZGUpKTsKKyAgICBwcmludGYoImFzY2lpIG9wICVwXG4iLCAoKHZvaWQqKSgoUHlBU0NJSU9iamVjdCopKHVuaWNvZGUpICsgMSkpKTsKKyAgICBwcmludGYoImNvbXBhY3Qgb3AgJXBcbiIsICgodm9pZCopKChQeUNvbXBhY3RVbmljb2RlT2JqZWN0KikodW5pY29kZSkgKyAxKSkpOworICAgIHByaW50ZigiY29tcGFjdCBkYXRhICVwXG4iLCBfUHlVbmljb2RlX0NPTVBBQ1RfREFUQSh1bmljb2RlKSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpOworfQorCit2b2lkCitfUHlVbmljb2RlX0R1bXAoUHlPYmplY3QgKm9wKQoreworICAgIFB5QVNDSUlPYmplY3QgKmFzY2lpID0gKFB5QVNDSUlPYmplY3QgKilvcDsKKyAgICBQeUNvbXBhY3RVbmljb2RlT2JqZWN0ICpjb21wYWN0ID0gKFB5Q29tcGFjdFVuaWNvZGVPYmplY3QgKilvcDsKKyAgICBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGUgPSAoUHlVbmljb2RlT2JqZWN0ICopb3A7CisgICAgdm9pZCAqZGF0YTsKKworICAgIGlmIChhc2NpaS0+c3RhdGUuY29tcGFjdCkKKyAgICB7CisgICAgICAgIGlmIChhc2NpaS0+c3RhdGUuYXNjaWkpCisgICAgICAgICAgICBkYXRhID0gKGFzY2lpICsgMSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGRhdGEgPSAoY29tcGFjdCArIDEpOworICAgIH0KKyAgICBlbHNlCisgICAgICAgIGRhdGEgPSB1bmljb2RlLT5kYXRhLmFueTsKKyAgICBwcmludGYoIiVzOiBsZW49JXp1LCAiLHVuaWNvZGVfa2luZF9uYW1lKG9wKSwgYXNjaWktPmxlbmd0aCk7CisKKyAgICBpZiAoYXNjaWktPndzdHIgPT0gZGF0YSkKKyAgICAgICAgcHJpbnRmKCJzaGFyZWQgIik7CisgICAgcHJpbnRmKCJ3c3RyPSVwIiwgYXNjaWktPndzdHIpOworCisgICAgaWYgKCEoYXNjaWktPnN0YXRlLmFzY2lpID09IDEgJiYgYXNjaWktPnN0YXRlLmNvbXBhY3QgPT0gMSkpIHsKKyAgICAgICAgcHJpbnRmKCIgKCV6dSksICIsIGNvbXBhY3QtPndzdHJfbGVuZ3RoKTsKKyAgICAgICAgaWYgKCFhc2NpaS0+c3RhdGUuY29tcGFjdCAmJiBjb21wYWN0LT51dGY4ID09IHVuaWNvZGUtPmRhdGEuYW55KQorICAgICAgICAgICAgcHJpbnRmKCJzaGFyZWQgIik7CisgICAgICAgIHByaW50ZigidXRmOD0lcCAoJXp1KSIsIGNvbXBhY3QtPnV0ZjgsIGNvbXBhY3QtPnV0ZjhfbGVuZ3RoKTsKKyAgICB9CisgICAgcHJpbnRmKCIsIGRhdGE9JXBcbiIsIGRhdGEpOworfQorI2VuZGlmCisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9OZXcoUHlfc3NpemVfdCBzaXplLCBQeV9VQ1M0IG1heGNoYXIpCit7CisgICAgUHlPYmplY3QgKm9iajsKKyAgICBQeUNvbXBhY3RVbmljb2RlT2JqZWN0ICp1bmljb2RlOworICAgIHZvaWQgKmRhdGE7CisgICAgaW50IGtpbmRfc3RhdGU7CisgICAgaW50IGlzX3NoYXJpbmcsIGlzX2FzY2lpOworICAgIFB5X3NzaXplX3QgY2hhcl9zaXplOworICAgIFB5X3NzaXplX3Qgc3RydWN0X3NpemU7CisKKyAgICAvKiBPcHRpbWl6YXRpb24gZm9yIGVtcHR5IHN0cmluZ3MgKi8KKyAgICBpZiAoc2l6ZSA9PSAwICYmIHVuaWNvZGVfZW1wdHkgIT0gTlVMTCkgeworICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgIH0KKworI2lmZGVmIFB5X0RFQlVHCisgICAgKyt1bmljb2RlX25ld19uZXdfY2FsbHM7CisjZW5kaWYKKworICAgIGlzX2FzY2lpID0gMDsKKyAgICBpc19zaGFyaW5nID0gMDsKKyAgICBzdHJ1Y3Rfc2l6ZSA9IHNpemVvZihQeUNvbXBhY3RVbmljb2RlT2JqZWN0KTsKKyAgICBpZiAobWF4Y2hhciA8IDEyOCkgeworICAgICAgICBraW5kX3N0YXRlID0gUHlVbmljb2RlXzFCWVRFX0tJTkQ7CisgICAgICAgIGNoYXJfc2l6ZSA9IDE7CisgICAgICAgIGlzX2FzY2lpID0gMTsKKyAgICAgICAgc3RydWN0X3NpemUgPSBzaXplb2YoUHlBU0NJSU9iamVjdCk7CisgICAgfQorICAgIGVsc2UgaWYgKG1heGNoYXIgPCAyNTYpIHsKKyAgICAgICAga2luZF9zdGF0ZSA9IFB5VW5pY29kZV8xQllURV9LSU5EOworICAgICAgICBjaGFyX3NpemUgPSAxOworICAgIH0KKyAgICBlbHNlIGlmIChtYXhjaGFyIDwgNjU1MzYpIHsKKyAgICAgICAga2luZF9zdGF0ZSA9IFB5VW5pY29kZV8yQllURV9LSU5EOworICAgICAgICBjaGFyX3NpemUgPSAyOworICAgICAgICBpZiAoc2l6ZW9mKHdjaGFyX3QpID09IDIpCisgICAgICAgICAgICBpc19zaGFyaW5nID0gMTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGlmIChtYXhjaGFyID4gTUFYX1VOSUNPREUpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW52YWxpZCBtYXhpbXVtIGNoYXJhY3RlciBwYXNzZWQgdG8gUHlVbmljb2RlX05ldyIpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAga2luZF9zdGF0ZSA9IFB5VW5pY29kZV80QllURV9LSU5EOworICAgICAgICBjaGFyX3NpemUgPSA0OworICAgICAgICBpZiAoc2l6ZW9mKHdjaGFyX3QpID09IDQpCisgICAgICAgICAgICBpc19zaGFyaW5nID0gMTsKKyAgICB9CisKKyAgICAvKiBFbnN1cmUgd2Ugd29uJ3Qgb3ZlcmZsb3cgdGhlIHNpemUuICovCisgICAgaWYgKHNpemUgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJOZWdhdGl2ZSBzaXplIHBhc3NlZCB0byBQeVVuaWNvZGVfTmV3Iik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoc2l6ZSA+ICgoUFlfU1NJWkVfVF9NQVggLSBzdHJ1Y3Rfc2l6ZSkgLyBjaGFyX3NpemUgLSAxKSkKKyAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisKKyAgICAvKiBEdXBsaWNhdGVkIGFsbG9jYXRpb24gY29kZSBmcm9tIF9QeU9iamVjdF9OZXcoKSBpbnN0ZWFkIG9mIGEgY2FsbCB0bworICAgICAqIFB5T2JqZWN0X05ldygpIHNvIHdlIGFyZSBhYmxlIHRvIGFsbG9jYXRlIHNwYWNlIGZvciB0aGUgb2JqZWN0IGFuZAorICAgICAqIGl0J3MgZGF0YSBidWZmZXIuCisgICAgICovCisgICAgb2JqID0gKFB5T2JqZWN0ICopIFB5T2JqZWN0X01BTExPQyhzdHJ1Y3Rfc2l6ZSArIChzaXplICsgMSkgKiBjaGFyX3NpemUpOworICAgIGlmIChvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisgICAgb2JqID0gUHlPYmplY3RfSU5JVChvYmosICZQeVVuaWNvZGVfVHlwZSk7CisgICAgaWYgKG9iaiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHVuaWNvZGUgPSAoUHlDb21wYWN0VW5pY29kZU9iamVjdCAqKW9iajsKKyAgICBpZiAoaXNfYXNjaWkpCisgICAgICAgIGRhdGEgPSAoKFB5QVNDSUlPYmplY3QqKW9iaikgKyAxOworICAgIGVsc2UKKyAgICAgICAgZGF0YSA9IHVuaWNvZGUgKyAxOworICAgIF9QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpID0gc2l6ZTsKKyAgICBfUHlVbmljb2RlX0hBU0godW5pY29kZSkgPSAtMTsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmludGVybmVkID0gMDsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmtpbmQgPSBraW5kX3N0YXRlOworICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkuY29tcGFjdCA9IDE7CisgICAgX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5yZWFkeSA9IDE7CisgICAgX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5hc2NpaSA9IGlzX2FzY2lpOworICAgIGlmIChpc19hc2NpaSkgeworICAgICAgICAoKGNoYXIqKWRhdGEpW3NpemVdID0gMDsKKyAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gTlVMTDsKKyAgICB9CisgICAgZWxzZSBpZiAoa2luZF9zdGF0ZSA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCkgeworICAgICAgICAoKGNoYXIqKWRhdGEpW3NpemVdID0gMDsKKyAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgICAgIHVuaWNvZGUtPnV0ZjggPSBOVUxMOworICAgICAgICB1bmljb2RlLT51dGY4X2xlbmd0aCA9IDA7CisgICAgICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgdW5pY29kZS0+dXRmOCA9IE5VTEw7CisgICAgICAgIHVuaWNvZGUtPnV0ZjhfbGVuZ3RoID0gMDsKKyAgICAgICAgaWYgKGtpbmRfc3RhdGUgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQpCisgICAgICAgICAgICAoKFB5X1VDUzIqKWRhdGEpW3NpemVdID0gMDsKKyAgICAgICAgZWxzZSAvKiBraW5kX3N0YXRlID09IFB5VW5pY29kZV80QllURV9LSU5EICovCisgICAgICAgICAgICAoKFB5X1VDUzQqKWRhdGEpW3NpemVdID0gMDsKKyAgICAgICAgaWYgKGlzX3NoYXJpbmcpIHsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSkgPSBzaXplOworICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gKHdjaGFyX3QgKilkYXRhOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSBOVUxMOworICAgICAgICB9CisgICAgfQorICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3koKFB5T2JqZWN0Kil1bmljb2RlLCAwKSk7CisgICAgcmV0dXJuIG9iajsKK30KKworI2lmIFNJWkVPRl9XQ0hBUl9UID09IDIKKy8qIEhlbHBlciBmdW5jdGlvbiB0byBjb252ZXJ0IGEgMTYtYml0cyB3Y2hhcl90IHJlcHJlc2VudGF0aW9uIHRvIFVDUzQsIHRoaXMKKyAgIHdpbGwgZGVjb2RlIHN1cnJvZ2F0ZSBwYWlycywgdGhlIG90aGVyIGNvbnZlcnNpb25zIGFyZSBpbXBsZW1lbnRlZCBhcyBtYWNyb3MKKyAgIGZvciBlZmZpY2llbmN5LgorCisgICBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCB1bmljb2RlIGNhbiBob2xkIG9uZSBtb3JlIGNvZGUgcG9pbnQgdGhhbiB3c3RyCisgICBjaGFyYWN0ZXJzIGZvciBhIHRlcm1pbmF0aW5nIG51bGwgY2hhcmFjdGVyLiAqLworc3RhdGljIHZvaWQKK3VuaWNvZGVfY29udmVydF93Y2hhcl90b191Y3M0KGNvbnN0IHdjaGFyX3QgKmJlZ2luLCBjb25zdCB3Y2hhcl90ICplbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICBjb25zdCB3Y2hhcl90ICppdGVyOworICAgIFB5X1VDUzQgKnVjczRfb3V0OworCisgICAgYXNzZXJ0KHVuaWNvZGUgIT0gTlVMTCk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sodW5pY29kZSkpOworICAgIGFzc2VydChfUHlVbmljb2RlX0tJTkQodW5pY29kZSkgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpOworICAgIHVjczRfb3V0ID0gUHlVbmljb2RlXzRCWVRFX0RBVEEodW5pY29kZSk7CisKKyAgICBmb3IgKGl0ZXIgPSBiZWdpbjsgaXRlciA8IGVuZDsgKSB7CisgICAgICAgIGFzc2VydCh1Y3M0X291dCA8IChQeVVuaWNvZGVfNEJZVEVfREFUQSh1bmljb2RlKSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICBfUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpKTsKKyAgICAgICAgaWYgKFB5X1VOSUNPREVfSVNfSElHSF9TVVJST0dBVEUoaXRlclswXSkKKyAgICAgICAgICAgICYmIChpdGVyKzEpIDwgZW5kCisgICAgICAgICAgICAmJiBQeV9VTklDT0RFX0lTX0xPV19TVVJST0dBVEUoaXRlclsxXSkpCisgICAgICAgIHsKKyAgICAgICAgICAgICp1Y3M0X291dCsrID0gUHlfVU5JQ09ERV9KT0lOX1NVUlJPR0FURVMoaXRlclswXSwgaXRlclsxXSk7CisgICAgICAgICAgICBpdGVyICs9IDI7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAqdWNzNF9vdXQrKyA9ICppdGVyOworICAgICAgICAgICAgaXRlcisrOworICAgICAgICB9CisgICAgfQorICAgIGFzc2VydCh1Y3M0X291dCA9PSAoUHlVbmljb2RlXzRCWVRFX0RBVEEodW5pY29kZSkgKworICAgICAgICAgICAgICAgICAgICAgICAgX1B5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpKSk7CisKK30KKyNlbmRpZgorCitzdGF0aWMgaW50Cit1bmljb2RlX2NoZWNrX21vZGlmaWFibGUoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgaWYgKCF1bmljb2RlX21vZGlmaWFibGUodW5pY29kZSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5c3RlbUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBtb2RpZnkgYSBzdHJpbmcgY3VycmVudGx5IHVzZWQiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAorX2NvcHlfY2hhcmFjdGVycyhQeU9iamVjdCAqdG8sIFB5X3NzaXplX3QgdG9fc3RhcnQsCisgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmcm9tLCBQeV9zc2l6ZV90IGZyb21fc3RhcnQsCisgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaG93X21hbnksIGludCBjaGVja19tYXhjaGFyKQoreworICAgIHVuc2lnbmVkIGludCBmcm9tX2tpbmQsIHRvX2tpbmQ7CisgICAgdm9pZCAqZnJvbV9kYXRhLCAqdG9fZGF0YTsKKyAgICBpbnQgZmFzdDsKKworICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2soZnJvbSkpOworICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2sodG8pKTsKKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKGZyb20pKTsKKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKHRvKSk7CisKKyAgICBhc3NlcnQoUHlVbmljb2RlX0dFVF9MRU5HVEgoZnJvbSkgPj0gaG93X21hbnkpOworICAgIGFzc2VydCh0b19zdGFydCArIGhvd19tYW55IDw9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHRvKSk7CisgICAgYXNzZXJ0KDAgPD0gaG93X21hbnkpOworCisgICAgaWYgKGhvd19tYW55ID09IDApCisgICAgICAgIHJldHVybiAwOworCisgICAgZnJvbV9raW5kID0gUHlVbmljb2RlX0tJTkQoZnJvbSk7CisgICAgZnJvbV9kYXRhID0gUHlVbmljb2RlX0RBVEEoZnJvbSk7CisgICAgdG9fa2luZCA9IFB5VW5pY29kZV9LSU5EKHRvKTsKKyAgICB0b19kYXRhID0gUHlVbmljb2RlX0RBVEEodG8pOworCisjaWZkZWYgUHlfREVCVUcKKyAgICBpZiAoIWNoZWNrX21heGNoYXIKKyAgICAgICAgJiYgKGZyb21fa2luZCA+IHRvX2tpbmQKKyAgICAgICAgICAgIHx8ICghUHlVbmljb2RlX0lTX0FTQ0lJKGZyb20pICYmIFB5VW5pY29kZV9JU19BU0NJSSh0bykpKSkKKyAgICB7CisgICAgICAgIGNvbnN0IFB5X1VDUzQgdG9fbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSh0byk7CisgICAgICAgIFB5X1VDUzQgY2g7CisgICAgICAgIFB5X3NzaXplX3QgaTsKKyAgICAgICAgZm9yIChpPTA7IGkgPCBob3dfbWFueTsgaSsrKSB7CisgICAgICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEKGZyb21fa2luZCwgZnJvbV9kYXRhLCBmcm9tX3N0YXJ0ICsgaSk7CisgICAgICAgICAgICBhc3NlcnQoY2ggPD0gdG9fbWF4Y2hhcik7CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYKKyAgICBmYXN0ID0gKGZyb21fa2luZCA9PSB0b19raW5kKTsKKyAgICBpZiAoY2hlY2tfbWF4Y2hhcgorICAgICAgICAmJiAoIVB5VW5pY29kZV9JU19BU0NJSShmcm9tKSAmJiBQeVVuaWNvZGVfSVNfQVNDSUkodG8pKSkKKyAgICB7CisgICAgICAgIC8qIGRlbnkgbGF0aW4xID0+IGFzY2lpICovCisgICAgICAgIGZhc3QgPSAwOworICAgIH0KKworICAgIGlmIChmYXN0KSB7CisgICAgICAgIFB5X01FTUNQWSgoY2hhciopdG9fZGF0YSArIHRvX2tpbmQgKiB0b19zdGFydCwKKyAgICAgICAgICAgICAgICAgIChjaGFyKilmcm9tX2RhdGEgKyBmcm9tX2tpbmQgKiBmcm9tX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgdG9fa2luZCAqIGhvd19tYW55KTsKKyAgICB9CisgICAgZWxzZSBpZiAoZnJvbV9raW5kID09IFB5VW5pY29kZV8xQllURV9LSU5ECisgICAgICAgICAgICAgJiYgdG9fa2luZCA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORCkKKyAgICB7CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUygKKyAgICAgICAgICAgIFB5X1VDUzEsIFB5X1VDUzIsCisgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQShmcm9tKSArIGZyb21fc3RhcnQsCisgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQShmcm9tKSArIGZyb21fc3RhcnQgKyBob3dfbWFueSwKKyAgICAgICAgICAgIFB5VW5pY29kZV8yQllURV9EQVRBKHRvKSArIHRvX3N0YXJ0CisgICAgICAgICAgICApOworICAgIH0KKyAgICBlbHNlIGlmIChmcm9tX2tpbmQgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQKKyAgICAgICAgICAgICAmJiB0b19raW5kID09IFB5VW5pY29kZV80QllURV9LSU5EKQorICAgIHsKKyAgICAgICAgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKAorICAgICAgICAgICAgUHlfVUNTMSwgUHlfVUNTNCwKKyAgICAgICAgICAgIFB5VW5pY29kZV8xQllURV9EQVRBKGZyb20pICsgZnJvbV9zdGFydCwKKyAgICAgICAgICAgIFB5VW5pY29kZV8xQllURV9EQVRBKGZyb20pICsgZnJvbV9zdGFydCArIGhvd19tYW55LAorICAgICAgICAgICAgUHlVbmljb2RlXzRCWVRFX0RBVEEodG8pICsgdG9fc3RhcnQKKyAgICAgICAgICAgICk7CisgICAgfQorICAgIGVsc2UgaWYgKGZyb21fa2luZCA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORAorICAgICAgICAgICAgICYmIHRvX2tpbmQgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpCisgICAgeworICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoCisgICAgICAgICAgICBQeV9VQ1MyLCBQeV9VQ1M0LAorICAgICAgICAgICAgUHlVbmljb2RlXzJCWVRFX0RBVEEoZnJvbSkgKyBmcm9tX3N0YXJ0LAorICAgICAgICAgICAgUHlVbmljb2RlXzJCWVRFX0RBVEEoZnJvbSkgKyBmcm9tX3N0YXJ0ICsgaG93X21hbnksCisgICAgICAgICAgICBQeVVuaWNvZGVfNEJZVEVfREFUQSh0bykgKyB0b19zdGFydAorICAgICAgICAgICAgKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8qIGNoZWNrIGlmIG1heF9jaGFyKGZyb20gc3Vic3RyaW5nKSA8PSBtYXhfY2hhcih0bykgKi8KKyAgICAgICAgaWYgKGZyb21fa2luZCA+IHRvX2tpbmQKKyAgICAgICAgICAgICAgICAvKiBsYXRpbjEgPT4gYXNjaWkgKi8KKyAgICAgICAgICAgIHx8ICghUHlVbmljb2RlX0lTX0FTQ0lJKGZyb20pICYmIFB5VW5pY29kZV9JU19BU0NJSSh0bykpKQorICAgICAgICB7CisgICAgICAgICAgICAvKiBzbG93IHBhdGggdG8gY2hlY2sgZm9yIGNoYXJhY3RlciBvdmVyZmxvdyAqLworICAgICAgICAgICAgY29uc3QgUHlfVUNTNCB0b19tYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHRvKTsKKyAgICAgICAgICAgIFB5X1VDUzQgY2g7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGk7CisKKyNpZmRlZiBQeV9ERUJVRworICAgICAgICAgICAgZm9yIChpPTA7IGkgPCBob3dfbWFueTsgaSsrKSB7CisgICAgICAgICAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRChmcm9tX2tpbmQsIGZyb21fZGF0YSwgZnJvbV9zdGFydCArIGkpOworICAgICAgICAgICAgICAgIGFzc2VydChjaCA8PSB0b19tYXhjaGFyKTsKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUodG9fa2luZCwgdG9fZGF0YSwgdG9fc3RhcnQgKyBpLCBjaCk7CisgICAgICAgICAgICB9CisjZWxzZQorICAgICAgICAgICAgaWYgKCFjaGVja19tYXhjaGFyKSB7CisgICAgICAgICAgICAgICAgZm9yIChpPTA7IGkgPCBob3dfbWFueTsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQUQoZnJvbV9raW5kLCBmcm9tX2RhdGEsIGZyb21fc3RhcnQgKyBpKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKHRvX2tpbmQsIHRvX2RhdGEsIHRvX3N0YXJ0ICsgaSwgY2gpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGZvciAoaT0wOyBpIDwgaG93X21hbnk7IGkrKykgeworICAgICAgICAgICAgICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEKGZyb21fa2luZCwgZnJvbV9kYXRhLCBmcm9tX3N0YXJ0ICsgaSk7CisgICAgICAgICAgICAgICAgICAgIGlmIChjaCA+IHRvX21heGNoYXIpCisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKHRvX2tpbmQsIHRvX2RhdGEsIHRvX3N0YXJ0ICsgaSwgY2gpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyNlbmRpZgorICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgYXNzZXJ0KDAgJiYgImluY29uc2lzdGVudCBzdGF0ZSIpOworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lkCitjb3B5X2NoYXJhY3RlcnMoUHlPYmplY3QgKnRvLCBQeV9zc2l6ZV90IHRvX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZnJvbSwgUHlfc3NpemVfdCBmcm9tX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGhvd19tYW55KQoreworICAgICh2b2lkKV9jb3B5X2NoYXJhY3RlcnModG8sIHRvX3N0YXJ0LCBmcm9tLCBmcm9tX3N0YXJ0LCBob3dfbWFueSwgMCk7Cit9CisKK1B5X3NzaXplX3QKK1B5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyhQeU9iamVjdCAqdG8sIFB5X3NzaXplX3QgdG9fc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmZyb20sIFB5X3NzaXplX3QgZnJvbV9zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGhvd19tYW55KQoreworICAgIGludCBlcnI7CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhmcm9tKSB8fCAhUHlVbmljb2RlX0NoZWNrKHRvKSkgeworICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoZnJvbSkgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHRvKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgaG93X21hbnkgPSBQeV9NSU4oUHlVbmljb2RlX0dFVF9MRU5HVEgoZnJvbSksIGhvd19tYW55KTsKKyAgICBpZiAodG9fc3RhcnQgKyBob3dfbWFueSA+IFB5VW5pY29kZV9HRVRfTEVOR1RIKHRvKSkgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfU3lzdGVtRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiQ2Fubm90IHdyaXRlICV6aSBjaGFyYWN0ZXJzIGF0ICV6aSAiCisgICAgICAgICAgICAgICAgICAgICAiaW4gYSBzdHJpbmcgb2YgJXppIGNoYXJhY3RlcnMiLAorICAgICAgICAgICAgICAgICAgICAgaG93X21hbnksIHRvX3N0YXJ0LCBQeVVuaWNvZGVfR0VUX0xFTkdUSCh0bykpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgaWYgKGhvd19tYW55ID09IDApCisgICAgICAgIHJldHVybiAwOworCisgICAgaWYgKHVuaWNvZGVfY2hlY2tfbW9kaWZpYWJsZSh0bykpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGVyciA9IF9jb3B5X2NoYXJhY3RlcnModG8sIHRvX3N0YXJ0LCBmcm9tLCBmcm9tX3N0YXJ0LCBob3dfbWFueSwgMSk7CisgICAgaWYgKGVycikgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfU3lzdGVtRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiQ2Fubm90IGNvcHkgJXMgY2hhcmFjdGVycyAiCisgICAgICAgICAgICAgICAgICAgICAiaW50byBhIHN0cmluZyBvZiAlcyBjaGFyYWN0ZXJzIiwKKyAgICAgICAgICAgICAgICAgICAgIHVuaWNvZGVfa2luZF9uYW1lKGZyb20pLAorICAgICAgICAgICAgICAgICAgICAgdW5pY29kZV9raW5kX25hbWUodG8pKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICByZXR1cm4gaG93X21hbnk7Cit9CisKKy8qIEZpbmQgdGhlIG1heGltdW0gY29kZSBwb2ludCBhbmQgY291bnQgdGhlIG51bWJlciBvZiBzdXJyb2dhdGUgcGFpcnMgc28gYQorICAgY29ycmVjdCBzdHJpbmcgbGVuZ3RoIGNhbiBiZSBjb21wdXRlZCBiZWZvcmUgY29udmVydGluZyBhIHN0cmluZyB0byBVQ1M0LgorICAgVGhpcyBmdW5jdGlvbiBjb3VudHMgc2luZ2xlIHN1cnJvZ2F0ZXMgYXMgYSBjaGFyYWN0ZXIgYW5kIG5vdCBhcyBhIHBhaXIuCisKKyAgIFJldHVybiAwIG9uIHN1Y2Nlc3MsIG9yIC0xIG9uIGVycm9yLiAqLworc3RhdGljIGludAorZmluZF9tYXhjaGFyX3N1cnJvZ2F0ZXMoY29uc3Qgd2NoYXJfdCAqYmVnaW4sIGNvbnN0IHdjaGFyX3QgKmVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgKm1heGNoYXIsIFB5X3NzaXplX3QgKm51bV9zdXJyb2dhdGVzKQoreworICAgIGNvbnN0IHdjaGFyX3QgKml0ZXI7CisgICAgUHlfVUNTNCBjaDsKKworICAgIGFzc2VydChudW1fc3Vycm9nYXRlcyAhPSBOVUxMICYmIG1heGNoYXIgIT0gTlVMTCk7CisgICAgKm51bV9zdXJyb2dhdGVzID0gMDsKKyAgICAqbWF4Y2hhciA9IDA7CisKKyAgICBmb3IgKGl0ZXIgPSBiZWdpbjsgaXRlciA8IGVuZDsgKSB7CisjaWYgU0laRU9GX1dDSEFSX1QgPT0gMgorICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU19ISUdIX1NVUlJPR0FURShpdGVyWzBdKQorICAgICAgICAgICAgJiYgKGl0ZXIrMSkgPCBlbmQKKyAgICAgICAgICAgICYmIFB5X1VOSUNPREVfSVNfTE9XX1NVUlJPR0FURShpdGVyWzFdKSkKKyAgICAgICAgeworICAgICAgICAgICAgY2ggPSBQeV9VTklDT0RFX0pPSU5fU1VSUk9HQVRFUyhpdGVyWzBdLCBpdGVyWzFdKTsKKyAgICAgICAgICAgICsrKCpudW1fc3Vycm9nYXRlcyk7CisgICAgICAgICAgICBpdGVyICs9IDI7CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorI2VuZGlmCisgICAgICAgIHsKKyAgICAgICAgICAgIGNoID0gKml0ZXI7CisgICAgICAgICAgICBpdGVyKys7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGNoID4gKm1heGNoYXIpIHsKKyAgICAgICAgICAgICptYXhjaGFyID0gY2g7CisgICAgICAgICAgICBpZiAoKm1heGNoYXIgPiBNQVhfVU5JQ09ERSkgeworICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY2hhcmFjdGVyIFUrJXggaXMgbm90IGluIHJhbmdlIFtVKzAwMDA7IFUrMTBmZmZmXSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKKyNpZmRlZiBQeV9ERUJVRworc3RhdGljIGludCB1bmljb2RlX3JlYWR5X2NhbGxzID0gMDsKKyNlbmRpZgorCitpbnQKK19QeVVuaWNvZGVfUmVhZHkoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgd2NoYXJfdCAqZW5kOworICAgIFB5X1VDUzQgbWF4Y2hhciA9IDA7CisgICAgUHlfc3NpemVfdCBudW1fc3Vycm9nYXRlczsKKyNpZiBTSVpFT0ZfV0NIQVJfVCA9PSAyCisgICAgUHlfc3NpemVfdCBsZW5ndGhfd29fc3Vycm9nYXRlczsKKyNlbmRpZgorCisgICAgLyogX1B5VW5pY29kZV9SZWFkeSgpIGlzIG9ubHkgaW50ZW5kZWQgZm9yIG9sZC1zdHlsZSBBUEkgdXNhZ2Ugd2hlcmUKKyAgICAgICBzdHJpbmdzIHdlcmUgY3JlYXRlZCB1c2luZyBfUHlPYmplY3RfTmV3KCkgYW5kIHdoZXJlIG5vIGNhbm9uaWNhbAorICAgICAgIHJlcHJlc2VudGF0aW9uICh0aGUgc3RyIGZpZWxkKSBoYXMgYmVlbiBzZXQgeWV0IGFrYSBzdHJpbmdzCisgICAgICAgd2hpY2ggYXJlIG5vdCB5ZXQgcmVhZHkuICovCisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sodW5pY29kZSkpOworICAgIGFzc2VydChfUHlVbmljb2RlX0tJTkQodW5pY29kZSkgPT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpOworICAgIGFzc2VydChfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgIT0gTlVMTCk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkgPT0gTlVMTCk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfVVRGOCh1bmljb2RlKSA9PSBOVUxMKTsKKyAgICAvKiBBY3R1YWxseSwgaXQgc2hvdWxkIG5laXRoZXIgYmUgaW50ZXJuZWQgbm9yIGJlIGFueXRoaW5nIGVsc2U6ICovCisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkuaW50ZXJuZWQgPT0gU1NUQVRFX05PVF9JTlRFUk5FRCk7CisKKyNpZmRlZiBQeV9ERUJVRworICAgICsrdW5pY29kZV9yZWFkeV9jYWxsczsKKyNlbmRpZgorCisgICAgZW5kID0gX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpICsgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKTsKKyAgICBpZiAoZmluZF9tYXhjaGFyX3N1cnJvZ2F0ZXMoX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpLCBlbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtYXhjaGFyLCAmbnVtX3N1cnJvZ2F0ZXMpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBpZiAobWF4Y2hhciA8IDI1NikgeworICAgICAgICBfUHlVbmljb2RlX0RBVEFfQU5ZKHVuaWNvZGUpID0gUHlPYmplY3RfTUFMTE9DKF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSkgKyAxKTsKKyAgICAgICAgaWYgKCFfUHlVbmljb2RlX0RBVEFfQU5ZKHVuaWNvZGUpKSB7CisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUyh3Y2hhcl90LCB1bnNpZ25lZCBjaGFyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSksIGVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlXzFCWVRFX0RBVEEodW5pY29kZSkpOworICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQSh1bmljb2RlKVtfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpXSA9ICdcMCc7CisgICAgICAgIF9QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpID0gX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKTsKKyAgICAgICAgX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5raW5kID0gUHlVbmljb2RlXzFCWVRFX0tJTkQ7CisgICAgICAgIGlmIChtYXhjaGFyIDwgMTI4KSB7CisgICAgICAgICAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmFzY2lpID0gMTsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfVVRGOCh1bmljb2RlKSA9IF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSk7CisgICAgICAgICAgICBfUHlVbmljb2RlX1VURjhfTEVOR1RIKHVuaWNvZGUpID0gX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkuYXNjaWkgPSAwOworICAgICAgICAgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgodW5pY29kZSkgPSAwOworICAgICAgICB9CisgICAgICAgIFB5T2JqZWN0X0ZSRUUoX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpKTsKKyAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgfQorICAgIC8qIEluIHRoaXMgY2FzZSB3ZSBtaWdodCBoYXZlIHRvIGNvbnZlcnQgZG93biBmcm9tIDQtYnl0ZSBuYXRpdmUKKyAgICAgICB3Y2hhcl90IHRvIDItYnl0ZSB1bmljb2RlLiAqLworICAgIGVsc2UgaWYgKG1heGNoYXIgPCA2NTUzNikgeworICAgICAgICBhc3NlcnQobnVtX3N1cnJvZ2F0ZXMgPT0gMCAmJgorICAgICAgICAgICAgICAgIkZpbmRNYXhDaGFyQW5kTnVtU3Vycm9nYXRlUGFpcnMoKSBtZXNzZWQgdXAiKTsKKworI2lmIFNJWkVPRl9XQ0hBUl9UID09IDIKKyAgICAgICAgLyogV2UgY2FuIHNoYXJlIHJlcHJlc2VudGF0aW9ucyBhbmQgYXJlIGRvbmUuICovCisgICAgICAgIF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkgPSBfUHlVbmljb2RlX1dTVFIodW5pY29kZSk7CisgICAgICAgIFB5VW5pY29kZV8yQllURV9EQVRBKHVuaWNvZGUpW19QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSldID0gJ1wwJzsKKyAgICAgICAgX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSkgPSBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpOworICAgICAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmtpbmQgPSBQeVVuaWNvZGVfMkJZVEVfS0lORDsKKyAgICAgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKSA9IDA7CisjZWxzZQorICAgICAgICAvKiBzaXplb2Yod2NoYXJfdCkgPT0gNCAqLworICAgICAgICBfUHlVbmljb2RlX0RBVEFfQU5ZKHVuaWNvZGUpID0gUHlPYmplY3RfTUFMTE9DKAorICAgICAgICAgICAgMiAqIChfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpICsgMSkpOworICAgICAgICBpZiAoIV9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKHdjaGFyX3QsIFB5X1VDUzIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSwgZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfMkJZVEVfREFUQSh1bmljb2RlKSk7CisgICAgICAgIFB5VW5pY29kZV8yQllURV9EQVRBKHVuaWNvZGUpW19QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSldID0gJ1wwJzsKKyAgICAgICAgX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSkgPSBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpOworICAgICAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmtpbmQgPSBQeVVuaWNvZGVfMkJZVEVfS0lORDsKKyAgICAgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgICAgIFB5T2JqZWN0X0ZSRUUoX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpKTsKKyAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IDA7CisjZW5kaWYKKyAgICB9CisgICAgLyogbWF4Y2hhciBleGVlZHMgMTYgYml0LCB3ZWUgbmVlZCA0IGJ5dGVzIGZvciB1bmljb2RlIGNoYXJhY3RlcnMgKi8KKyAgICBlbHNlIHsKKyNpZiBTSVpFT0ZfV0NIQVJfVCA9PSAyCisgICAgICAgIC8qIGluIGNhc2UgdGhlIG5hdGl2ZSByZXByZXNlbnRhdGlvbiBpcyAyLWJ5dGVzLCB3ZSBuZWVkIHRvIGFsbG9jYXRlIGEKKyAgICAgICAgICAgbmV3IG5vcm1hbGl6ZWQgNC1ieXRlIHZlcnNpb24uICovCisgICAgICAgIGxlbmd0aF93b19zdXJyb2dhdGVzID0gX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSAtIG51bV9zdXJyb2dhdGVzOworICAgICAgICBfUHlVbmljb2RlX0RBVEFfQU5ZKHVuaWNvZGUpID0gUHlPYmplY3RfTUFMTE9DKDQgKiAobGVuZ3RoX3dvX3N1cnJvZ2F0ZXMgKyAxKSk7CisgICAgICAgIGlmICghX1B5VW5pY29kZV9EQVRBX0FOWSh1bmljb2RlKSkgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKSA9IGxlbmd0aF93b19zdXJyb2dhdGVzOworICAgICAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmtpbmQgPSBQeVVuaWNvZGVfNEJZVEVfS0lORDsKKyAgICAgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgICAgIC8qIHVuaWNvZGVfY29udmVydF93Y2hhcl90b191Y3M0KCkgcmVxdWlyZXMgYSByZWFkeSBzdHJpbmcgKi8KKyAgICAgICAgX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5yZWFkeSA9IDE7CisgICAgICAgIHVuaWNvZGVfY29udmVydF93Y2hhcl90b191Y3M0KF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSwgZW5kLCB1bmljb2RlKTsKKyAgICAgICAgUHlPYmplY3RfRlJFRShfUHlVbmljb2RlX1dTVFIodW5pY29kZSkpOworICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSBOVUxMOworICAgICAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpID0gMDsKKyNlbHNlCisgICAgICAgIGFzc2VydChudW1fc3Vycm9nYXRlcyA9PSAwKTsKKworICAgICAgICBfUHlVbmljb2RlX0RBVEFfQU5ZKHVuaWNvZGUpID0gX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpOworICAgICAgICBfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKSA9IF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSk7CisgICAgICAgIF9QeVVuaWNvZGVfVVRGOCh1bmljb2RlKSA9IE5VTEw7CisgICAgICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgodW5pY29kZSkgPSAwOworICAgICAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmtpbmQgPSBQeVVuaWNvZGVfNEJZVEVfS0lORDsKKyNlbmRpZgorICAgICAgICBQeVVuaWNvZGVfNEJZVEVfREFUQSh1bmljb2RlKVtfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKV0gPSAnXDAnOworICAgIH0KKyAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLnJlYWR5ID0gMTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHVuaWNvZGUsIDEpKTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQKK3VuaWNvZGVfZGVhbGxvYyhyZWdpc3RlciBQeU9iamVjdCAqdW5pY29kZSkKIHsKICAgICBzd2l0Y2ggKFB5VW5pY29kZV9DSEVDS19JTlRFUk5FRCh1bmljb2RlKSkgewogICAgIGNhc2UgU1NUQVRFX05PVF9JTlRFUk5FRDoKQEAgLTM5Myw3ICsxNDg4LDcgQEAKICAgICBjYXNlIFNTVEFURV9JTlRFUk5FRF9NT1JUQUw6CiAgICAgICAgIC8qIHJldml2ZSBkZWFkIG9iamVjdCB0ZW1wb3JhcmlseSBmb3IgRGVsSXRlbSAqLwogICAgICAgICBQeV9SRUZDTlQodW5pY29kZSkgPSAzOwotICAgICAgICBpZiAoUHlEaWN0X0RlbEl0ZW0oaW50ZXJuZWQsIChQeU9iamVjdCAqKXVuaWNvZGUpICE9IDApCisgICAgICAgIGlmIChQeURpY3RfRGVsSXRlbShpbnRlcm5lZCwgdW5pY29kZSkgIT0gMCkKICAgICAgICAgICAgIFB5X0ZhdGFsRXJyb3IoCiAgICAgICAgICAgICAgICAgImRlbGV0aW9uIG9mIGludGVybmVkIHN0cmluZyBmYWlsZWQiKTsKICAgICAgICAgYnJlYWs7CkBAIC00MDUsMjQwICsxNTAwLDY3MCBAQAogICAgICAgICBQeV9GYXRhbEVycm9yKCJJbmNvbnNpc3RlbnQgaW50ZXJuZWQgc3RyaW5nIHN0YXRlLiIpOwogICAgIH0KIAotICAgIGlmIChQeVVuaWNvZGVfQ2hlY2tFeGFjdCh1bmljb2RlKSAmJgotICAgICAgICBudW1mcmVlIDwgUHlVbmljb2RlX01BWEZSRUVMSVNUKSB7Ci0gICAgICAgIC8qIEtlZXAtQWxpdmUgb3B0aW1pemF0aW9uICovCi0gICAgICAgIGlmICh1bmljb2RlLT5sZW5ndGggPj0gS0VFUEFMSVZFX1NJWkVfTElNSVQpIHsKLSAgICAgICAgICAgIFB5T2JqZWN0X0RFTCh1bmljb2RlLT5zdHIpOwotICAgICAgICAgICAgdW5pY29kZS0+c3RyID0gTlVMTDsKLSAgICAgICAgICAgIHVuaWNvZGUtPmxlbmd0aCA9IDA7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKHVuaWNvZGUtPmRlZmVuYykgewotICAgICAgICAgICAgUHlfQ0xFQVIodW5pY29kZS0+ZGVmZW5jKTsKLSAgICAgICAgfQotICAgICAgICAvKiBBZGQgdG8gZnJlZSBsaXN0ICovCi0gICAgICAgICooUHlVbmljb2RlT2JqZWN0ICoqKXVuaWNvZGUgPSBmcmVlX2xpc3Q7Ci0gICAgICAgIGZyZWVfbGlzdCA9IHVuaWNvZGU7Ci0gICAgICAgIG51bWZyZWUrKzsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIFB5T2JqZWN0X0RFTCh1bmljb2RlLT5zdHIpOwotICAgICAgICBQeV9YREVDUkVGKHVuaWNvZGUtPmRlZmVuYyk7Ci0gICAgICAgIFB5X1RZUEUodW5pY29kZSktPnRwX2ZyZWUoKFB5T2JqZWN0ICopdW5pY29kZSk7Ci0gICAgfQorICAgIGlmIChfUHlVbmljb2RlX0hBU19XU1RSX01FTU9SWSh1bmljb2RlKSkKKyAgICAgICAgUHlPYmplY3RfREVMKF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSk7CisgICAgaWYgKF9QeVVuaWNvZGVfSEFTX1VURjhfTUVNT1JZKHVuaWNvZGUpKQorICAgICAgICBQeU9iamVjdF9ERUwoX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpKTsKKyAgICBpZiAoIVB5VW5pY29kZV9JU19DT01QQUNUKHVuaWNvZGUpICYmIF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkpCisgICAgICAgIFB5T2JqZWN0X0RFTChfUHlVbmljb2RlX0RBVEFfQU5ZKHVuaWNvZGUpKTsKKworICAgIFB5X1RZUEUodW5pY29kZSktPnRwX2ZyZWUodW5pY29kZSk7CiB9CiAKLXN0YXRpYwotaW50IF9QeVVuaWNvZGVfUmVzaXplKFB5VW5pY29kZU9iamVjdCAqKnVuaWNvZGUsIFB5X3NzaXplX3QgbGVuZ3RoKQorI2lmZGVmIFB5X0RFQlVHCitzdGF0aWMgaW50Cit1bmljb2RlX2lzX3NpbmdsZXRvbihQeU9iamVjdCAqdW5pY29kZSkKIHsKLSAgICByZWdpc3RlciBQeVVuaWNvZGVPYmplY3QgKnY7Ci0KLSAgICAvKiBBcmd1bWVudCBjaGVja3MgKi8KLSAgICBpZiAodW5pY29kZSA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwotICAgICAgICByZXR1cm4gLTE7CisgICAgUHlBU0NJSU9iamVjdCAqYXNjaWkgPSAoUHlBU0NJSU9iamVjdCAqKXVuaWNvZGU7CisgICAgaWYgKHVuaWNvZGUgPT0gdW5pY29kZV9lbXB0eSkKKyAgICAgICAgcmV0dXJuIDE7CisgICAgaWYgKGFzY2lpLT5zdGF0ZS5raW5kICE9IFB5VW5pY29kZV9XQ0hBUl9LSU5EICYmIGFzY2lpLT5sZW5ndGggPT0gMSkKKyAgICB7CisgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIDApOworICAgICAgICBpZiAoY2ggPCAyNTYgJiYgdW5pY29kZV9sYXRpbjFbY2hdID09IHVuaWNvZGUpCisgICAgICAgICAgICByZXR1cm4gMTsKICAgICB9Ci0gICAgdiA9ICp1bmljb2RlOwotICAgIGlmICh2ID09IE5VTEwgfHwgIVB5VW5pY29kZV9DaGVjayh2KSB8fCBQeV9SRUZDTlQodikgIT0gMSB8fCBsZW5ndGggPCAwKSB7Ci0gICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQorICAgIHJldHVybiAwOworfQorI2VuZGlmCiAKLSAgICAvKiBSZXNpemluZyB1bmljb2RlX2VtcHR5IGFuZCBzaW5nbGUgY2hhcmFjdGVyIG9iamVjdHMgaXMgbm90Ci0gICAgICAgcG9zc2libGUgc2luY2UgdGhlc2UgYXJlIGJlaW5nIHNoYXJlZC4gV2Ugc2ltcGx5IHJldHVybiBhIGZyZXNoCi0gICAgICAgY29weSB3aXRoIHRoZSBzYW1lIFVuaWNvZGUgY29udGVudC4gKi8KLSAgICBpZiAodi0+bGVuZ3RoICE9IGxlbmd0aCAmJgotICAgICAgICAodiA9PSB1bmljb2RlX2VtcHR5IHx8IHYtPmxlbmd0aCA9PSAxKSkgewotICAgICAgICBQeVVuaWNvZGVPYmplY3QgKncgPSBfUHlVbmljb2RlX05ldyhsZW5ndGgpOwotICAgICAgICBpZiAodyA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICBQeV9VTklDT0RFX0NPUFkody0+c3RyLCB2LT5zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICBsZW5ndGggPCB2LT5sZW5ndGggPyBsZW5ndGggOiB2LT5sZW5ndGgpOwotICAgICAgICBQeV9ERUNSRUYoKnVuaWNvZGUpOwotICAgICAgICAqdW5pY29kZSA9IHc7CitzdGF0aWMgaW50Cit1bmljb2RlX21vZGlmaWFibGUoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sodW5pY29kZSkpOworICAgIGlmIChQeV9SRUZDTlQodW5pY29kZSkgIT0gMSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKF9QeVVuaWNvZGVfSEFTSCh1bmljb2RlKSAhPSAtMSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKFB5VW5pY29kZV9DSEVDS19JTlRFUk5FRCh1bmljb2RlKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2tFeGFjdCh1bmljb2RlKSkKKyAgICAgICAgcmV0dXJuIDA7CisjaWZkZWYgUHlfREVCVUcKKyAgICAvKiBzaW5nbGV0b24gcmVmY291bnQgaXMgZ3JlYXRlciB0aGFuIDEgKi8KKyAgICBhc3NlcnQoIXVuaWNvZGVfaXNfc2luZ2xldG9uKHVuaWNvZGUpKTsKKyNlbmRpZgorICAgIHJldHVybiAxOworfQorCitzdGF0aWMgaW50Cit1bmljb2RlX3Jlc2l6ZShQeU9iamVjdCAqKnBfdW5pY29kZSwgUHlfc3NpemVfdCBsZW5ndGgpCit7CisgICAgUHlPYmplY3QgKnVuaWNvZGU7CisgICAgUHlfc3NpemVfdCBvbGRfbGVuZ3RoOworCisgICAgYXNzZXJ0KHBfdW5pY29kZSAhPSBOVUxMKTsKKyAgICB1bmljb2RlID0gKnBfdW5pY29kZTsKKworICAgIGFzc2VydCh1bmljb2RlICE9IE5VTEwpOworICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkpOworICAgIGFzc2VydCgwIDw9IGxlbmd0aCk7CisKKyAgICBpZiAoX1B5VW5pY29kZV9LSU5EKHVuaWNvZGUpID09IFB5VW5pY29kZV9XQ0hBUl9LSU5EKQorICAgICAgICBvbGRfbGVuZ3RoID0gUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpOworICAgIGVsc2UKKyAgICAgICAgb2xkX2xlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworICAgIGlmIChvbGRfbGVuZ3RoID09IGxlbmd0aCkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAobGVuZ3RoID09IDApIHsKKyAgICAgICAgUHlfREVDUkVGKCpwX3VuaWNvZGUpOworICAgICAgICAqcF91bmljb2RlID0gdW5pY29kZV9lbXB0eTsKKyAgICAgICAgUHlfSU5DUkVGKCpwX3VuaWNvZGUpOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKLSAgICAvKiBOb3RlIHRoYXQgd2UgZG9uJ3QgaGF2ZSB0byBtb2RpZnkgKnVuaWNvZGUgZm9yIHVuc2hhcmVkIFVuaWNvZGUKLSAgICAgICBvYmplY3RzLCBzaW5jZSB3ZSBjYW4gbW9kaWZ5IHRoZW0gaW4tcGxhY2UuICovCi0gICAgcmV0dXJuIHVuaWNvZGVfcmVzaXplKHYsIGxlbmd0aCk7CisgICAgaWYgKCF1bmljb2RlX21vZGlmaWFibGUodW5pY29kZSkpIHsKKyAgICAgICAgUHlPYmplY3QgKmNvcHkgPSByZXNpemVfY29weSh1bmljb2RlLCBsZW5ndGgpOworICAgICAgICBpZiAoY29weSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBQeV9ERUNSRUYoKnBfdW5pY29kZSk7CisgICAgICAgICpwX3VuaWNvZGUgPSBjb3B5OworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBpZiAoUHlVbmljb2RlX0lTX0NPTVBBQ1QodW5pY29kZSkpIHsKKyAgICAgICAgUHlPYmplY3QgKm5ld191bmljb2RlID0gcmVzaXplX2NvbXBhY3QodW5pY29kZSwgbGVuZ3RoKTsKKyAgICAgICAgaWYgKG5ld191bmljb2RlID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgICpwX3VuaWNvZGUgPSBuZXdfdW5pY29kZTsKKyAgICAgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSgqcF91bmljb2RlLCAwKSk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICByZXR1cm4gcmVzaXplX2lucGxhY2UodW5pY29kZSwgbGVuZ3RoKTsKIH0KIAotaW50IFB5VW5pY29kZV9SZXNpemUoUHlPYmplY3QgKip1bmljb2RlLCBQeV9zc2l6ZV90IGxlbmd0aCkKK2ludAorUHlVbmljb2RlX1Jlc2l6ZShQeU9iamVjdCAqKnBfdW5pY29kZSwgUHlfc3NpemVfdCBsZW5ndGgpCiB7Ci0gICAgcmV0dXJuIF9QeVVuaWNvZGVfUmVzaXplKChQeVVuaWNvZGVPYmplY3QgKiopdW5pY29kZSwgbGVuZ3RoKTsKKyAgICBQeU9iamVjdCAqdW5pY29kZTsKKyAgICBpZiAocF91bmljb2RlID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgdW5pY29kZSA9ICpwX3VuaWNvZGU7CisgICAgaWYgKHVuaWNvZGUgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpIHx8IGxlbmd0aCA8IDApCisgICAgeworICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICByZXR1cm4gdW5pY29kZV9yZXNpemUocF91bmljb2RlLCBsZW5ndGgpOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0Zyb21Vbmljb2RlKGNvbnN0IFB5X1VOSUNPREUgKnUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSkKK3N0YXRpYyBpbnQKK3VuaWNvZGVfd2lkZW4oUHlPYmplY3QgKipwX3VuaWNvZGUsIHVuc2lnbmVkIGludCBtYXhjaGFyKQogewotICAgIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZTsKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkoKnBfdW5pY29kZSkpOworICAgIGlmIChtYXhjaGFyIDw9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSgqcF91bmljb2RlKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX05ldyhQeVVuaWNvZGVfR0VUX0xFTkdUSCgqcF91bmljb2RlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGNoYXIpOworICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyhyZXN1bHQsIDAsICpwX3VuaWNvZGUsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKCpwX3VuaWNvZGUpKTsKKyAgICBQeV9ERUNSRUYoKnBfdW5pY29kZSk7CisgICAgKnBfdW5pY29kZSA9IHJlc3VsdDsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAordW5pY29kZV9wdXRjaGFyKFB5T2JqZWN0ICoqcF91bmljb2RlLCBQeV9zc2l6ZV90ICpwb3MsCisgICAgICAgICAgICAgICAgUHlfVUNTNCBjaCkKK3sKKyAgICBhc3NlcnQoY2ggPD0gTUFYX1VOSUNPREUpOworICAgIGlmICh1bmljb2RlX3dpZGVuKHBfdW5pY29kZSwgY2gpIDwgMCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIFB5VW5pY29kZV9XUklURShQeVVuaWNvZGVfS0lORCgqcF91bmljb2RlKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0RBVEEoKnBfdW5pY29kZSksCisgICAgICAgICAgICAgICAgICAgICgqcG9zKSsrLCBjaCk7CisgICAgcmV0dXJuIDA7Cit9CisKKy8qIENvcHkgYSBBU0NJSSBvciBsYXRpbjEgY2hhciogc3RyaW5nIGludG8gYSBQeXRob24gVW5pY29kZSBzdHJpbmcuCisgICBSZXR1cm4gdGhlIGxlbmd0aCBvZiB0aGUgaW5wdXQgc3RyaW5nLgorCisgICBXQVJOSU5HOiBUaGUgZnVuY3Rpb24gZG9lc24ndCBjb3B5IHRoZSB0ZXJtaW5hdGluZyBudWxsIGNoYXJhY3RlciBhbmQKKyAgIGRvZXNuJ3QgY2hlY2sgdGhlIG1heGltdW0gY2hhcmFjdGVyIChtYXkgd3JpdGUgYSBsYXRpbjEgY2hhcmFjdGVyIGluIGFuCisgICBBU0NJSSBzdHJpbmcpLiAqLworc3RhdGljIFB5X3NzaXplX3QKK3VuaWNvZGVfd3JpdGVfY3N0cihQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCBpbmRleCwgY29uc3QgY2hhciAqc3RyKQoreworICAgIGVudW0gUHlVbmljb2RlX0tpbmQga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIHZvaWQgKmRhdGEgPSBQeVVuaWNvZGVfREFUQSh1bmljb2RlKTsKKworICAgIHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6IHsKKyAgICAgICAgUHlfc3NpemVfdCBsZW4gPSBzdHJsZW4oc3RyKTsKKyAgICAgICAgYXNzZXJ0KGluZGV4ICsgbGVuIDw9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpKTsKKyAgICAgICAgbWVtY3B5KChjaGFyICopIGRhdGEgKyBpbmRleCwgc3RyLCBsZW4pOworICAgICAgICByZXR1cm4gbGVuOworICAgIH0KKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOiB7CisgICAgICAgIFB5X1VDUzIgKnN0YXJ0ID0gKFB5X1VDUzIgKilkYXRhICsgaW5kZXg7CisgICAgICAgIFB5X1VDUzIgKnVjczIgPSBzdGFydDsKKyAgICAgICAgYXNzZXJ0KGluZGV4IDw9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpKTsKKworICAgICAgICBmb3IgKDsgKnN0cjsgKyt1Y3MyLCArK3N0cikKKyAgICAgICAgICAgICp1Y3MyID0gKFB5X1VDUzIpKnN0cjsKKworICAgICAgICBhc3NlcnQoKHVjczIgLSBzdGFydCkgPD0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpOworICAgICAgICByZXR1cm4gdWNzMiAtIHN0YXJ0OworICAgIH0KKyAgICBkZWZhdWx0OiB7CisgICAgICAgIFB5X1VDUzQgKnN0YXJ0ID0gKFB5X1VDUzQgKilkYXRhICsgaW5kZXg7CisgICAgICAgIFB5X1VDUzQgKnVjczQgPSBzdGFydDsKKyAgICAgICAgYXNzZXJ0KGtpbmQgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpOworICAgICAgICBhc3NlcnQoaW5kZXggPD0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpOworCisgICAgICAgIGZvciAoOyAqc3RyOyArK3VjczQsICsrc3RyKQorICAgICAgICAgICAgKnVjczQgPSAoUHlfVUNTNCkqc3RyOworCisgICAgICAgIGFzc2VydCgodWNzNCAtIHN0YXJ0KSA8PSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKSk7CisgICAgICAgIHJldHVybiB1Y3M0IC0gc3RhcnQ7CisgICAgfQorICAgIH0KK30KKworCitzdGF0aWMgUHlPYmplY3QqCitnZXRfbGF0aW4xX2NoYXIodW5zaWduZWQgY2hhciBjaCkKK3sKKyAgICBQeU9iamVjdCAqdW5pY29kZSA9IHVuaWNvZGVfbGF0aW4xW2NoXTsKKyAgICBpZiAoIXVuaWNvZGUpIHsKKyAgICAgICAgdW5pY29kZSA9IFB5VW5pY29kZV9OZXcoMSwgY2gpOworICAgICAgICBpZiAoIXVuaWNvZGUpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgUHlVbmljb2RlXzFCWVRFX0RBVEEodW5pY29kZSlbMF0gPSBjaDsKKyAgICAgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1bmljb2RlLCAxKSk7CisgICAgICAgIHVuaWNvZGVfbGF0aW4xW2NoXSA9IHVuaWNvZGU7CisgICAgfQorICAgIFB5X0lOQ1JFRih1bmljb2RlKTsKKyAgICByZXR1cm4gdW5pY29kZTsKK30KKworUHlPYmplY3QgKgorUHlVbmljb2RlX0Zyb21Vbmljb2RlKGNvbnN0IFB5X1VOSUNPREUgKnUsIFB5X3NzaXplX3Qgc2l6ZSkKK3sKKyAgICBQeU9iamVjdCAqdW5pY29kZTsKKyAgICBQeV9VQ1M0IG1heGNoYXIgPSAwOworICAgIFB5X3NzaXplX3QgbnVtX3N1cnJvZ2F0ZXM7CisKKyAgICBpZiAodSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gKFB5T2JqZWN0KilfUHlVbmljb2RlX05ldyhzaXplKTsKIAogICAgIC8qIElmIHRoZSBVbmljb2RlIGRhdGEgaXMga25vd24gYXQgY29uc3RydWN0aW9uIHRpbWUsIHdlIGNhbiBhcHBseQogICAgICAgIHNvbWUgb3B0aW1pemF0aW9ucyB3aGljaCBzaGFyZSBjb21tb25seSB1c2VkIG9iamVjdHMuICovCi0gICAgaWYgKHUgIT0gTlVMTCkgewogCi0gICAgICAgIC8qIE9wdGltaXphdGlvbiBmb3IgZW1wdHkgc3RyaW5ncyAqLwotICAgICAgICBpZiAoc2l6ZSA9PSAwICYmIHVuaWNvZGVfZW1wdHkgIT0gTlVMTCkgewotICAgICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOwotICAgICAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGVfZW1wdHk7Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBTaW5nbGUgY2hhcmFjdGVyIFVuaWNvZGUgb2JqZWN0cyBpbiB0aGUgTGF0aW4tMSByYW5nZSBhcmUKLSAgICAgICAgICAgc2hhcmVkIHdoZW4gdXNpbmcgdGhpcyBjb25zdHJ1Y3RvciAqLwotICAgICAgICBpZiAoc2l6ZSA9PSAxICYmICp1IDwgMjU2KSB7Ci0gICAgICAgICAgICB1bmljb2RlID0gdW5pY29kZV9sYXRpbjFbKnVdOwotICAgICAgICAgICAgaWYgKCF1bmljb2RlKSB7Ci0gICAgICAgICAgICAgICAgdW5pY29kZSA9IF9QeVVuaWNvZGVfTmV3KDEpOwotICAgICAgICAgICAgICAgIGlmICghdW5pY29kZSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICAgICAgdW5pY29kZS0+c3RyWzBdID0gKnU7Ci0gICAgICAgICAgICAgICAgdW5pY29kZV9sYXRpbjFbKnVdID0gdW5pY29kZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlKTsKLSAgICAgICAgICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlOwotICAgICAgICB9CisgICAgLyogT3B0aW1pemF0aW9uIGZvciBlbXB0eSBzdHJpbmdzICovCisgICAgaWYgKHNpemUgPT0gMCAmJiB1bmljb2RlX2VtcHR5ICE9IE5VTEwpIHsKKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICByZXR1cm4gdW5pY29kZV9lbXB0eTsKICAgICB9CiAKLSAgICB1bmljb2RlID0gX1B5VW5pY29kZV9OZXcoc2l6ZSk7CisgICAgLyogU2luZ2xlIGNoYXJhY3RlciBVbmljb2RlIG9iamVjdHMgaW4gdGhlIExhdGluLTEgcmFuZ2UgYXJlCisgICAgICAgc2hhcmVkIHdoZW4gdXNpbmcgdGhpcyBjb25zdHJ1Y3RvciAqLworICAgIGlmIChzaXplID09IDEgJiYgKnUgPCAyNTYpCisgICAgICAgIHJldHVybiBnZXRfbGF0aW4xX2NoYXIoKHVuc2lnbmVkIGNoYXIpKnUpOworCisgICAgLyogSWYgbm90IGVtcHR5IGFuZCBub3Qgc2luZ2xlIGNoYXJhY3RlciwgY29weSB0aGUgVW5pY29kZSBkYXRhCisgICAgICAgaW50byB0aGUgbmV3IG9iamVjdCAqLworICAgIGlmIChmaW5kX21heGNoYXJfc3Vycm9nYXRlcyh1LCB1ICsgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1heGNoYXIsICZudW1fc3Vycm9nYXRlcykgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgdW5pY29kZSA9IFB5VW5pY29kZV9OZXcoc2l6ZSAtIG51bV9zdXJyb2dhdGVzLCBtYXhjaGFyKTsKICAgICBpZiAoIXVuaWNvZGUpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgLyogQ29weSB0aGUgVW5pY29kZSBkYXRhIGludG8gdGhlIG5ldyBvYmplY3QgKi8KLSAgICBpZiAodSAhPSBOVUxMKQotICAgICAgICBQeV9VTklDT0RFX0NPUFkodW5pY29kZS0+c3RyLCB1LCBzaXplKTsKKyAgICBzd2l0Y2ggKFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKFB5X1VOSUNPREUsIHVuc2lnbmVkIGNoYXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUsIHUgKyBzaXplLCBQeVVuaWNvZGVfMUJZVEVfREFUQSh1bmljb2RlKSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisjaWYgUHlfVU5JQ09ERV9TSVpFID09IDIKKyAgICAgICAgUHlfTUVNQ1BZKFB5VW5pY29kZV8yQllURV9EQVRBKHVuaWNvZGUpLCB1LCBzaXplICogMik7CisjZWxzZQorICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoUHlfVU5JQ09ERSwgUHlfVUNTMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdSwgdSArIHNpemUsIFB5VW5pY29kZV8yQllURV9EQVRBKHVuaWNvZGUpKTsKKyNlbmRpZgorICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorI2lmIFNJWkVPRl9XQ0hBUl9UID09IDIKKyAgICAgICAgLyogVGhpcyBpcyB0aGUgb25seSBjYXNlIHdoaWNoIGhhcyB0byBwcm9jZXNzIHN1cnJvZ2F0ZXMsIHRodXMKKyAgICAgICAgICAgYSBzaW1wbGUgY29weSBsb29wIGlzIG5vdCBlbm91Z2ggYW5kIHdlIG5lZWQgYSBmdW5jdGlvbi4gKi8KKyAgICAgICAgdW5pY29kZV9jb252ZXJ0X3djaGFyX3RvX3VjczQodSwgdSArIHNpemUsIHVuaWNvZGUpOworI2Vsc2UKKyAgICAgICAgYXNzZXJ0KG51bV9zdXJyb2dhdGVzID09IDApOworICAgICAgICBQeV9NRU1DUFkoUHlVbmljb2RlXzRCWVRFX0RBVEEodW5pY29kZSksIHUsIHNpemUgKiA0KTsKKyNlbmRpZgorICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICBhc3NlcnQoMCAmJiAiSW1wb3NzaWJsZSBzdGF0ZSIpOworICAgIH0KIAotICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlOworICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdCh1bmljb2RlKTsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShjb25zdCBjaGFyICp1LCBQeV9zc2l6ZV90IHNpemUpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoY29uc3QgY2hhciAqdSwgUHlfc3NpemVfdCBzaXplKQogewotICAgIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZTsKLQogICAgIGlmIChzaXplIDwgMCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAiTmVnYXRpdmUgc2l6ZSBwYXNzZWQgdG8gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLQotICAgIC8qIElmIHRoZSBVbmljb2RlIGRhdGEgaXMga25vd24gYXQgY29uc3RydWN0aW9uIHRpbWUsIHdlIGNhbiBhcHBseQotICAgICAgIHNvbWUgb3B0aW1pemF0aW9ucyB3aGljaCBzaGFyZSBjb21tb25seSB1c2VkIG9iamVjdHMuCi0gICAgICAgQWxzbywgdGhpcyBtZWFucyB0aGUgaW5wdXQgbXVzdCBiZSBVVEYtOCwgc28gZmFsbCBiYWNrIHRvIHRoZQotICAgICAgIFVURi04IGRlY29kZXIgYXQgdGhlIGVuZC4gKi8KLSAgICBpZiAodSAhPSBOVUxMKSB7Ci0KLSAgICAgICAgLyogT3B0aW1pemF0aW9uIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgICAgIGlmIChzaXplID09IDAgJiYgdW5pY29kZV9lbXB0eSAhPSBOVUxMKSB7Ci0gICAgICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7Ci0gICAgICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZV9lbXB0eTsKLSAgICAgICAgfQotCi0gICAgICAgIC8qIFNpbmdsZSBjaGFyYWN0ZXJzIGFyZSBzaGFyZWQgd2hlbiB1c2luZyB0aGlzIGNvbnN0cnVjdG9yLgotICAgICAgICAgICBSZXN0cmljdCB0byBBU0NJSSwgc2luY2UgdGhlIGlucHV0IG11c3QgYmUgVVRGLTguICovCi0gICAgICAgIGlmIChzaXplID09IDEgJiYgUHlfQ0hBUk1BU0soKnUpIDwgMTI4KSB7Ci0gICAgICAgICAgICB1bmljb2RlID0gdW5pY29kZV9sYXRpbjFbUHlfQ0hBUk1BU0soKnUpXTsKLSAgICAgICAgICAgIGlmICghdW5pY29kZSkgewotICAgICAgICAgICAgICAgIHVuaWNvZGUgPSBfUHlVbmljb2RlX05ldygxKTsKLSAgICAgICAgICAgICAgICBpZiAoIXVuaWNvZGUpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgICAgIHVuaWNvZGUtPnN0clswXSA9IFB5X0NIQVJNQVNLKCp1KTsKLSAgICAgICAgICAgICAgICB1bmljb2RlX2xhdGluMVtQeV9DSEFSTUFTSygqdSldID0gdW5pY29kZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlKTsKLSAgICAgICAgICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlOwotICAgICAgICB9Ci0KLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVVVEY4KHUsIHNpemUsIE5VTEwpOwotICAgIH0KLQotICAgIHVuaWNvZGUgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKLSAgICBpZiAoIXVuaWNvZGUpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7CisgICAgaWYgKHUgIT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWwodSwgc2l6ZSwgTlVMTCwgTlVMTCk7CisgICAgZWxzZQorICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopX1B5VW5pY29kZV9OZXcoc2l6ZSk7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRnJvbVN0cmluZyhjb25zdCBjaGFyICp1KQorUHlPYmplY3QgKgorUHlVbmljb2RlX0Zyb21TdHJpbmcoY29uc3QgY2hhciAqdSkKIHsKICAgICBzaXplX3Qgc2l6ZSA9IHN0cmxlbih1KTsKICAgICBpZiAoc2l6ZSA+IFBZX1NTSVpFX1RfTUFYKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLCAiaW5wdXQgdG9vIGxvbmciKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsKHUsIChQeV9zc2l6ZV90KXNpemUsIE5VTEwsIE5VTEwpOworfQogCi0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZSh1LCBzaXplKTsKK1B5T2JqZWN0ICoKK19QeVVuaWNvZGVfRnJvbUlkKF9QeV9JZGVudGlmaWVyICppZCkKK3sKKyAgICBpZiAoIWlkLT5vYmplY3QpIHsKKyAgICAgICAgaWQtPm9iamVjdCA9IFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWwoaWQtPnN0cmluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RybGVuKGlkLT5zdHJpbmcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMKTsKKyAgICAgICAgaWYgKCFpZC0+b2JqZWN0KQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIFB5VW5pY29kZV9JbnRlcm5JblBsYWNlKCZpZC0+b2JqZWN0KTsKKyAgICAgICAgYXNzZXJ0KCFpZC0+bmV4dCk7CisgICAgICAgIGlkLT5uZXh0ID0gc3RhdGljX3N0cmluZ3M7CisgICAgICAgIHN0YXRpY19zdHJpbmdzID0gaWQ7CisgICAgfQorICAgIHJldHVybiBpZC0+b2JqZWN0OworfQorCit2b2lkCitfUHlVbmljb2RlX0NsZWFyU3RhdGljU3RyaW5ncygpCit7CisgICAgX1B5X0lkZW50aWZpZXIgKmk7CisgICAgZm9yIChpID0gc3RhdGljX3N0cmluZ3M7IGk7IGkgPSBpLT5uZXh0KSB7CisgICAgICAgIFB5X0RFQ1JFRihpLT5vYmplY3QpOworICAgICAgICBpLT5vYmplY3QgPSBOVUxMOworICAgICAgICBpLT5uZXh0ID0gTlVMTDsKKyAgICB9Cit9CisKKy8qIEludGVybmFsIGZ1bmN0aW9uLCBkb24ndCBjaGVjayBtYXhpbXVtIGNoYXJhY3RlciAqLworCitzdGF0aWMgUHlPYmplY3QqCit1bmljb2RlX2Zyb21hc2NpaShjb25zdCB1bnNpZ25lZCBjaGFyKiBzLCBQeV9zc2l6ZV90IHNpemUpCit7CisgICAgUHlPYmplY3QgKnVuaWNvZGU7CisgICAgaWYgKHNpemUgPT0gMSkgeworI2lmZGVmIFB5X0RFQlVHCisgICAgICAgIGFzc2VydChzWzBdIDwgMTI4KTsKKyNlbmRpZgorICAgICAgICByZXR1cm4gZ2V0X2xhdGluMV9jaGFyKHNbMF0pOworICAgIH0KKyAgICB1bmljb2RlID0gUHlVbmljb2RlX05ldyhzaXplLCAxMjcpOworICAgIGlmICghdW5pY29kZSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbWVtY3B5KFB5VW5pY29kZV8xQllURV9EQVRBKHVuaWNvZGUpLCBzLCBzaXplKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHVuaWNvZGUsIDEpKTsKKyAgICByZXR1cm4gdW5pY29kZTsKK30KKworc3RhdGljIFB5X1VDUzQKK2tpbmRfbWF4Y2hhcl9saW1pdCh1bnNpZ25lZCBpbnQga2luZCkKK3sKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICByZXR1cm4gMHg4MDsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICByZXR1cm4gMHgxMDA7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIDB4MTAwMDA7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDAgJiYgImludmFsaWQga2luZCIpOworICAgICAgICByZXR1cm4gTUFYX1VOSUNPREU7CisgICAgfQorfQorCitzdGF0aWMgUHlPYmplY3QqCitfUHlVbmljb2RlX0Zyb21VQ1MxKGNvbnN0IHVuc2lnbmVkIGNoYXIqIHUsIFB5X3NzaXplX3Qgc2l6ZSkKK3sKKyAgICBQeU9iamVjdCAqcmVzOworICAgIHVuc2lnbmVkIGNoYXIgbWF4X2NoYXI7CisKKyAgICBpZiAoc2l6ZSA9PSAwKSB7CisgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW1wdHk7CisgICAgfQorICAgIGFzc2VydChzaXplID4gMCk7CisgICAgaWYgKHNpemUgPT0gMSkKKyAgICAgICAgcmV0dXJuIGdldF9sYXRpbjFfY2hhcih1WzBdKTsKKworICAgIG1heF9jaGFyID0gdWNzMWxpYl9maW5kX21heF9jaGFyKHUsIHUgKyBzaXplKTsKKyAgICByZXMgPSBQeVVuaWNvZGVfTmV3KHNpemUsIG1heF9jaGFyKTsKKyAgICBpZiAoIXJlcykKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbWVtY3B5KFB5VW5pY29kZV8xQllURV9EQVRBKHJlcyksIHUsIHNpemUpOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzLCAxKSk7CisgICAgcmV0dXJuIHJlczsKK30KKworc3RhdGljIFB5T2JqZWN0KgorX1B5VW5pY29kZV9Gcm9tVUNTMihjb25zdCBQeV9VQ1MyICp1LCBQeV9zc2l6ZV90IHNpemUpCit7CisgICAgUHlPYmplY3QgKnJlczsKKyAgICBQeV9VQ1MyIG1heF9jaGFyOworCisgICAgaWYgKHNpemUgPT0gMCkgeworICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgIH0KKyAgICBhc3NlcnQoc2l6ZSA+IDApOworICAgIGlmIChzaXplID09IDEgJiYgdVswXSA8IDI1NikKKyAgICAgICAgcmV0dXJuIGdldF9sYXRpbjFfY2hhcigodW5zaWduZWQgY2hhcil1WzBdKTsKKworICAgIG1heF9jaGFyID0gdWNzMmxpYl9maW5kX21heF9jaGFyKHUsIHUgKyBzaXplKTsKKyAgICByZXMgPSBQeVVuaWNvZGVfTmV3KHNpemUsIG1heF9jaGFyKTsKKyAgICBpZiAoIXJlcykKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKG1heF9jaGFyID49IDI1NikKKyAgICAgICAgbWVtY3B5KFB5VW5pY29kZV8yQllURV9EQVRBKHJlcyksIHUsIHNpemVvZihQeV9VQ1MyKSpzaXplKTsKKyAgICBlbHNlIHsKKyAgICAgICAgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKAorICAgICAgICAgICAgUHlfVUNTMiwgUHlfVUNTMSwgdSwgdSArIHNpemUsIFB5VW5pY29kZV8xQllURV9EQVRBKHJlcykpOworICAgIH0KKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHJlcywgMSkpOworICAgIHJldHVybiByZXM7Cit9CisKK3N0YXRpYyBQeU9iamVjdCoKK19QeVVuaWNvZGVfRnJvbVVDUzQoY29uc3QgUHlfVUNTNCAqdSwgUHlfc3NpemVfdCBzaXplKQoreworICAgIFB5T2JqZWN0ICpyZXM7CisgICAgUHlfVUNTNCBtYXhfY2hhcjsKKworICAgIGlmIChzaXplID09IDApIHsKKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICByZXR1cm4gdW5pY29kZV9lbXB0eTsKKyAgICB9CisgICAgYXNzZXJ0KHNpemUgPiAwKTsKKyAgICBpZiAoc2l6ZSA9PSAxICYmIHVbMF0gPCAyNTYpCisgICAgICAgIHJldHVybiBnZXRfbGF0aW4xX2NoYXIoKHVuc2lnbmVkIGNoYXIpdVswXSk7CisKKyAgICBtYXhfY2hhciA9IHVjczRsaWJfZmluZF9tYXhfY2hhcih1LCB1ICsgc2l6ZSk7CisgICAgcmVzID0gUHlVbmljb2RlX05ldyhzaXplLCBtYXhfY2hhcik7CisgICAgaWYgKCFyZXMpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChtYXhfY2hhciA8IDI1NikKKyAgICAgICAgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKFB5X1VDUzQsIFB5X1VDUzEsIHUsIHUgKyBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlXzFCWVRFX0RBVEEocmVzKSk7CisgICAgZWxzZSBpZiAobWF4X2NoYXIgPCAweDEwMDAwKQorICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoUHlfVUNTNCwgUHlfVUNTMiwgdSwgdSArIHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfMkJZVEVfREFUQShyZXMpKTsKKyAgICBlbHNlCisgICAgICAgIG1lbWNweShQeVVuaWNvZGVfNEJZVEVfREFUQShyZXMpLCB1LCBzaXplb2YoUHlfVUNTNCkqc2l6ZSk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShyZXMsIDEpKTsKKyAgICByZXR1cm4gcmVzOworfQorCitQeU9iamVjdCoKK1B5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoaW50IGtpbmQsIGNvbnN0IHZvaWQgKmJ1ZmZlciwgUHlfc3NpemVfdCBzaXplKQoreworICAgIGlmIChzaXplIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInNpemUgbXVzdCBiZSBwb3NpdGl2ZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfRnJvbVVDUzEoYnVmZmVyLCBzaXplKTsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICByZXR1cm4gX1B5VW5pY29kZV9Gcm9tVUNTMihidWZmZXIsIHNpemUpOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIHJldHVybiBfUHlVbmljb2RlX0Zyb21VQ1M0KGJ1ZmZlciwgc2l6ZSk7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5c3RlbUVycm9yLCAiaW52YWxpZCBraW5kIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KK30KKworLyogRW5zdXJlIHRoYXQgYSBzdHJpbmcgdXNlcyB0aGUgbW9zdCBlZmZpY2llbnQgc3RvcmFnZSwgaWYgaXQgaXMgbm90IHRoZQorICAgY2FzZTogY3JlYXRlIGEgbmV3IHN0cmluZyB3aXRoIG9mIHRoZSByaWdodCBraW5kLiBXcml0ZSBOVUxMIGludG8gKnBfdW5pY29kZQorICAgb24gZXJyb3IuICovCitzdGF0aWMgdm9pZAordW5pY29kZV9hZGp1c3RfbWF4Y2hhcihQeU9iamVjdCAqKnBfdW5pY29kZSkKK3sKKyAgICBQeU9iamVjdCAqdW5pY29kZSwgKmNvcHk7CisgICAgUHlfVUNTNCBtYXhfY2hhcjsKKyAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICB1bnNpZ25lZCBpbnQga2luZDsKKworICAgIGFzc2VydChwX3VuaWNvZGUgIT0gTlVMTCk7CisgICAgdW5pY29kZSA9ICpwX3VuaWNvZGU7CisgICAgYXNzZXJ0KFB5VW5pY29kZV9JU19SRUFEWSh1bmljb2RlKSk7CisgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSSh1bmljb2RlKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSk7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIGlmIChraW5kID09IFB5VW5pY29kZV8xQllURV9LSU5EKSB7CisgICAgICAgIGNvbnN0IFB5X1VDUzEgKnUgPSBQeVVuaWNvZGVfMUJZVEVfREFUQSh1bmljb2RlKTsKKyAgICAgICAgbWF4X2NoYXIgPSB1Y3MxbGliX2ZpbmRfbWF4X2NoYXIodSwgdSArIGxlbik7CisgICAgICAgIGlmIChtYXhfY2hhciA+PSAxMjgpCisgICAgICAgICAgICByZXR1cm47CisgICAgfQorICAgIGVsc2UgaWYgKGtpbmQgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQpIHsKKyAgICAgICAgY29uc3QgUHlfVUNTMiAqdSA9IFB5VW5pY29kZV8yQllURV9EQVRBKHVuaWNvZGUpOworICAgICAgICBtYXhfY2hhciA9IHVjczJsaWJfZmluZF9tYXhfY2hhcih1LCB1ICsgbGVuKTsKKyAgICAgICAgaWYgKG1heF9jaGFyID49IDI1NikKKyAgICAgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGNvbnN0IFB5X1VDUzQgKnUgPSBQeVVuaWNvZGVfNEJZVEVfREFUQSh1bmljb2RlKTsKKyAgICAgICAgYXNzZXJ0KGtpbmQgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpOworICAgICAgICBtYXhfY2hhciA9IHVjczRsaWJfZmluZF9tYXhfY2hhcih1LCB1ICsgbGVuKTsKKyAgICAgICAgaWYgKG1heF9jaGFyID49IDB4MTAwMDApCisgICAgICAgICAgICByZXR1cm47CisgICAgfQorICAgIGNvcHkgPSBQeVVuaWNvZGVfTmV3KGxlbiwgbWF4X2NoYXIpOworICAgIGNvcHlfY2hhcmFjdGVycyhjb3B5LCAwLCB1bmljb2RlLCAwLCBsZW4pOworICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICAqcF91bmljb2RlID0gY29weTsKK30KKworUHlPYmplY3QqCitfUHlVbmljb2RlX0NvcHkoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgUHlfc3NpemVfdCBsZW5ndGg7CisgICAgUHlPYmplY3QgKmNvcHk7CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgeworICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodW5pY29kZSkgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSk7CisgICAgY29weSA9IFB5VW5pY29kZV9OZXcobGVuZ3RoLCBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUodW5pY29kZSkpOworICAgIGlmICghY29weSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKGNvcHkpID09IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpKTsKKworICAgIFB5X01FTUNQWShQeVVuaWNvZGVfREFUQShjb3B5KSwgUHlVbmljb2RlX0RBVEEodW5pY29kZSksCisgICAgICAgICAgICAgIGxlbmd0aCAqIFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KGNvcHksIDEpKTsKKyAgICByZXR1cm4gY29weTsKK30KKworCisvKiBXaWRlbiBVbmljb2RlIG9iamVjdHMgdG8gbGFyZ2VyIGJ1ZmZlcnMuIERvbid0IHdyaXRlIHRlcm1pbmF0aW5nIG51bGwKKyAgIGNoYXJhY3Rlci4gUmV0dXJuIE5VTEwgb24gZXJyb3IuICovCisKK3ZvaWQqCitfUHlVbmljb2RlX0FzS2luZChQeU9iamVjdCAqcywgdW5zaWduZWQgaW50IGtpbmQpCit7CisgICAgUHlfc3NpemVfdCBsZW47CisgICAgdm9pZCAqcmVzdWx0OworICAgIHVuc2lnbmVkIGludCBza2luZDsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocykgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocyk7CisgICAgc2tpbmQgPSBQeVVuaWNvZGVfS0lORChzKTsKKyAgICBpZiAoc2tpbmQgPj0ga2luZCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsICJpbnZhbGlkIHdpZGVuaW5nIGF0dGVtcHQiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIHJlc3VsdCA9IFB5TWVtX01hbGxvYyhsZW4gKiBzaXplb2YoUHlfVUNTMikpOworICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICBhc3NlcnQoc2tpbmQgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQpOworICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoCisgICAgICAgICAgICBQeV9VQ1MxLCBQeV9VQ1MyLAorICAgICAgICAgICAgUHlVbmljb2RlXzFCWVRFX0RBVEEocyksCisgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQShzKSArIGxlbiwKKyAgICAgICAgICAgIHJlc3VsdCk7CisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmVzdWx0ID0gUHlNZW1fTWFsbG9jKGxlbiAqIHNpemVvZihQeV9VQ1M0KSk7CisgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIGlmIChza2luZCA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORCkgeworICAgICAgICAgICAgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKAorICAgICAgICAgICAgICAgIFB5X1VDUzIsIFB5X1VDUzQsCisgICAgICAgICAgICAgICAgUHlVbmljb2RlXzJCWVRFX0RBVEEocyksCisgICAgICAgICAgICAgICAgUHlVbmljb2RlXzJCWVRFX0RBVEEocykgKyBsZW4sCisgICAgICAgICAgICAgICAgcmVzdWx0KTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGFzc2VydChza2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCk7CisgICAgICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoCisgICAgICAgICAgICAgICAgUHlfVUNTMSwgUHlfVUNTNCwKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQShzKSwKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQShzKSArIGxlbiwKKyAgICAgICAgICAgICAgICByZXN1bHQpOworICAgICAgICB9CisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwgImludmFsaWQga2luZCIpOworICAgIHJldHVybiBOVUxMOworfQorCitzdGF0aWMgUHlfVUNTNCoKK2FzX3VjczQoUHlPYmplY3QgKnN0cmluZywgUHlfVUNTNCAqdGFyZ2V0LCBQeV9zc2l6ZV90IHRhcmdldHNpemUsCisgICAgICAgIGludCBjb3B5X251bGwpCit7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKyAgICBQeV9zc2l6ZV90IGxlbiwgdGFyZ2V0bGVuOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3RyaW5nKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHN0cmluZyk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHN0cmluZyk7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyaW5nKTsKKyAgICB0YXJnZXRsZW4gPSBsZW47CisgICAgaWYgKGNvcHlfbnVsbCkKKyAgICAgICAgdGFyZ2V0bGVuKys7CisgICAgaWYgKCF0YXJnZXQpIHsKKyAgICAgICAgaWYgKFBZX1NTSVpFX1RfTUFYIC8gc2l6ZW9mKFB5X1VDUzQpIDwgdGFyZ2V0bGVuKSB7CisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgdGFyZ2V0ID0gUHlNZW1fTWFsbG9jKHRhcmdldGxlbiAqIHNpemVvZihQeV9VQ1M0KSk7CisgICAgICAgIGlmICghdGFyZ2V0KSB7CisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGlmICh0YXJnZXRzaXplIDwgdGFyZ2V0bGVuKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfU3lzdGVtRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmluZyBpcyBsb25nZXIgdGhhbiB0aGUgYnVmZmVyIik7CisgICAgICAgICAgICBpZiAoY29weV9udWxsICYmIDAgPCB0YXJnZXRzaXplKQorICAgICAgICAgICAgICAgIHRhcmdldFswXSA9IDA7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCkgeworICAgICAgICBQeV9VQ1MxICpzdGFydCA9IChQeV9VQ1MxICopIGRhdGE7CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUyhQeV9VQ1MxLCBQeV9VQ1M0LCBzdGFydCwgc3RhcnQgKyBsZW4sIHRhcmdldCk7CisgICAgfQorICAgIGVsc2UgaWYgKGtpbmQgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQpIHsKKyAgICAgICAgUHlfVUNTMiAqc3RhcnQgPSAoUHlfVUNTMiAqKSBkYXRhOworICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoUHlfVUNTMiwgUHlfVUNTNCwgc3RhcnQsIHN0YXJ0ICsgbGVuLCB0YXJnZXQpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgYXNzZXJ0KGtpbmQgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpOworICAgICAgICBQeV9NRU1DUFkodGFyZ2V0LCBkYXRhLCBsZW4gKiBzaXplb2YoUHlfVUNTNCkpOworICAgIH0KKyAgICBpZiAoY29weV9udWxsKQorICAgICAgICB0YXJnZXRbbGVuXSA9IDA7CisgICAgcmV0dXJuIHRhcmdldDsKK30KKworUHlfVUNTNCoKK1B5VW5pY29kZV9Bc1VDUzQoUHlPYmplY3QgKnN0cmluZywgUHlfVUNTNCAqdGFyZ2V0LCBQeV9zc2l6ZV90IHRhcmdldHNpemUsCisgICAgICAgICAgICAgICAgIGludCBjb3B5X251bGwpCit7CisgICAgaWYgKHRhcmdldCA9PSBOVUxMIHx8IHRhcmdldHNpemUgPCAwKSB7CisgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmV0dXJuIGFzX3VjczQoc3RyaW5nLCB0YXJnZXQsIHRhcmdldHNpemUsIGNvcHlfbnVsbCk7Cit9CisKK1B5X1VDUzQqCitQeVVuaWNvZGVfQXNVQ1M0Q29weShQeU9iamVjdCAqc3RyaW5nKQoreworICAgIHJldHVybiBhc191Y3M0KHN0cmluZywgTlVMTCwgMCwgMSk7CiB9CiAKICNpZmRlZiBIQVZFX1dDSEFSX0gKIAotI2lmIChQeV9VTklDT0RFX1NJWkUgPT0gMikgJiYgZGVmaW5lZChTSVpFT0ZfV0NIQVJfVCkgJiYgKFNJWkVPRl9XQ0hBUl9UID09IDQpCi0jIGRlZmluZSBDT05WRVJUX1dDSEFSX1RPX1NVUlJPR0FURVMKLSNlbmRpZgotCi0jaWZkZWYgQ09OVkVSVF9XQ0hBUl9UT19TVVJST0dBVEVTCi0KLS8qIEhlcmUgc2l6ZW9mKHdjaGFyX3QpIGlzIDQgYnV0IFB5X1VOSUNPREVfU0laRSA9PSAyLCBzbyB3ZSBuZWVkCi0gICB0byBjb252ZXJ0IGZyb20gVVRGMzIgdG8gVVRGMTYuICovCi0KLVB5T2JqZWN0ICpQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHJlZ2lzdGVyIGNvbnN0IHdjaGFyX3QgKncsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHJlZ2lzdGVyIGNvbnN0IHdjaGFyX3QgKncsIFB5X3NzaXplX3Qgc2l6ZSkKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGU7Ci0gICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBpOwotICAgIFB5X3NzaXplX3QgYWxsb2M7Ci0gICAgY29uc3Qgd2NoYXJfdCAqb3JpZ193OwotCiAgICAgaWYgKHcgPT0gTlVMTCkgewotICAgICAgICBpZiAoc2l6ZSA9PSAwKQotICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCAwKTsKLSAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQotICAgIGlmIChzaXplID09IC0xKSB7Ci0gICAgICAgIHNpemUgPSB3Y3NsZW4odyk7Ci0gICAgfQotCi0gICAgYWxsb2MgPSBzaXplOwotICAgIG9yaWdfdyA9IHc7Ci0gICAgZm9yIChpID0gc2l6ZTsgaSA+IDA7IGktLSkgewotICAgICAgICBpZiAoKncgPiAweEZGRkYpCi0gICAgICAgICAgICBhbGxvYysrOwotICAgICAgICB3Kys7Ci0gICAgfQotICAgIHcgPSBvcmlnX3c7Ci0gICAgdW5pY29kZSA9IF9QeVVuaWNvZGVfTmV3KGFsbG9jKTsKLSAgICBpZiAoIXVuaWNvZGUpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgLyogQ29weSB0aGUgd2NoYXJfdCBkYXRhIGludG8gdGhlIG5ldyBvYmplY3QgKi8KLSAgICB7Ci0gICAgICAgIHJlZ2lzdGVyIFB5X1VOSUNPREUgKnU7Ci0gICAgICAgIHUgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKTsKLSAgICAgICAgZm9yIChpID0gc2l6ZTsgaSA+IDA7IGktLSkgewotICAgICAgICAgICAgaWYgKCp3ID4gMHhGRkZGKSB7Ci0gICAgICAgICAgICAgICAgd2NoYXJfdCBvcmRpbmFsID0gKncrKzsKLSAgICAgICAgICAgICAgICBvcmRpbmFsIC09IDB4MTAwMDA7Ci0gICAgICAgICAgICAgICAgKnUrKyA9IDB4RDgwMCB8IChvcmRpbmFsID4+IDEwKTsKLSAgICAgICAgICAgICAgICAqdSsrID0gMHhEQzAwIHwgKG9yZGluYWwgJiAweDNGRik7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgKnUrKyA9ICp3Kys7CisgICAgICAgIGlmIChzaXplID09IDApIHsKKyAgICAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKKyAgICAgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OwogICAgICAgICB9Ci0gICAgfQotICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlOwotfQotCi0jZWxzZQotCi1QeU9iamVjdCAqUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihyZWdpc3RlciBjb25zdCB3Y2hhcl90ICp3LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplKQotewotICAgIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZTsKLQotICAgIGlmICh3ID09IE5VTEwpIHsKLSAgICAgICAgaWYgKHNpemUgPT0gMCkKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgMCk7CiAgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC02NDcsMjkgKzIxNzIsMTAgQEAKICAgICAgICAgc2l6ZSA9IHdjc2xlbih3KTsKICAgICB9CiAKLSAgICB1bmljb2RlID0gX1B5VW5pY29kZV9OZXcoc2l6ZSk7Ci0gICAgaWYgKCF1bmljb2RlKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIC8qIENvcHkgdGhlIHdjaGFyX3QgZGF0YSBpbnRvIHRoZSBuZXcgb2JqZWN0ICovCi0jaWYgUHlfVU5JQ09ERV9TSVpFID09IFNJWkVPRl9XQ0hBUl9UCi0gICAgbWVtY3B5KHVuaWNvZGUtPnN0ciwgdywgc2l6ZSAqIHNpemVvZih3Y2hhcl90KSk7Ci0jZWxzZQotICAgIHsKLSAgICAgICAgcmVnaXN0ZXIgUHlfVU5JQ09ERSAqdTsKLSAgICAgICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBpOwotICAgICAgICB1ID0gUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSk7Ci0gICAgICAgIGZvciAoaSA9IHNpemU7IGkgPiAwOyBpLS0pCi0gICAgICAgICAgICAqdSsrID0gKncrKzsKLSAgICB9Ci0jZW5kaWYKLQotICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlOworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUodywgc2l6ZSk7CiB9CiAKLSNlbmRpZiAvKiBDT05WRVJUX1dDSEFSX1RPX1NVUlJPR0FURVMgKi8KLQotI3VuZGVmIENPTlZFUlRfV0NIQVJfVE9fU1VSUk9HQVRFUworI2VuZGlmIC8qIEhBVkVfV0NIQVJfSCAqLwogCiBzdGF0aWMgdm9pZAogbWFrZWZtdChjaGFyICpmbXQsIGludCBsb25nZmxhZywgaW50IGxvbmdsb25nZmxhZywgaW50IHNpemVfdGZsYWcsCkBAIC03MDcsMTAgKzIyMTMsNzEgQEAKICAgICAqZm10ID0gJ1wwJzsKIH0KIAotI2RlZmluZSBhcHBlbmRzdHJpbmcoc3RyaW5nKSB7Zm9yIChjb3B5ID0gc3RyaW5nOypjb3B5OykgKnMrKyA9ICpjb3B5Kys7fQorLyogaGVscGVyIGZvciBQeVVuaWNvZGVfRnJvbUZvcm1hdFYoKSAqLwogCi0vKiBzaXplIG9mIGZpeGVkLXNpemUgYnVmZmVyIGZvciBmb3JtYXR0aW5nIHNpbmdsZSBhcmd1bWVudHMgKi8KLSNkZWZpbmUgSVRFTV9CVUZGRVJfTEVOIDIxCitzdGF0aWMgY29uc3QgY2hhcioKK3BhcnNlX2Zvcm1hdF9mbGFncyhjb25zdCBjaGFyICpmLAorICAgICAgICAgICAgICAgICAgIGludCAqcF93aWR0aCwgaW50ICpwX3ByZWNpc2lvbiwKKyAgICAgICAgICAgICAgICAgICBpbnQgKnBfbG9uZ2ZsYWcsIGludCAqcF9sb25nbG9uZ2ZsYWcsIGludCAqcF9zaXplX3RmbGFnKQoreworICAgIGludCB3aWR0aCwgcHJlY2lzaW9uLCBsb25nZmxhZywgbG9uZ2xvbmdmbGFnLCBzaXplX3RmbGFnOworCisgICAgLyogcGFyc2UgdGhlIHdpZHRoLnByZWNpc2lvbiBwYXJ0LCBlLmcuICIlMi41cyIgPT4gd2lkdGg9MiwgcHJlY2lzaW9uPTUgKi8KKyAgICBmKys7CisgICAgd2lkdGggPSAwOworICAgIHdoaWxlIChQeV9JU0RJR0lUKCh1bnNpZ25lZCkqZikpCisgICAgICAgIHdpZHRoID0gKHdpZHRoKjEwKSArICpmKysgLSAnMCc7CisgICAgcHJlY2lzaW9uID0gMDsKKyAgICBpZiAoKmYgPT0gJy4nKSB7CisgICAgICAgIGYrKzsKKyAgICAgICAgd2hpbGUgKFB5X0lTRElHSVQoKHVuc2lnbmVkKSpmKSkKKyAgICAgICAgICAgIHByZWNpc2lvbiA9IChwcmVjaXNpb24qMTApICsgKmYrKyAtICcwJzsKKyAgICAgICAgaWYgKCpmID09ICclJykgeworICAgICAgICAgICAgLyogIiUuMyVzIiA9PiBmIHBvaW50cyB0byAiMyIgKi8KKyAgICAgICAgICAgIGYtLTsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoKmYgPT0gJ1wwJykgeworICAgICAgICAvKiBib2d1cyBmb3JtYXQgIiUuMSIgPT4gZ28gYmFja3dhcmQsIGYgcG9pbnRzIHRvICIxIiAqLworICAgICAgICBmLS07CisgICAgfQorICAgIGlmIChwX3dpZHRoICE9IE5VTEwpCisgICAgICAgICpwX3dpZHRoID0gd2lkdGg7CisgICAgaWYgKHBfcHJlY2lzaW9uICE9IE5VTEwpCisgICAgICAgICpwX3ByZWNpc2lvbiA9IHByZWNpc2lvbjsKKworICAgIC8qIEhhbmRsZSAlbGQsICVsdSwgJWxsZCBhbmQgJWxsdS4gKi8KKyAgICBsb25nZmxhZyA9IDA7CisgICAgbG9uZ2xvbmdmbGFnID0gMDsKKyAgICBzaXplX3RmbGFnID0gMDsKKworICAgIGlmICgqZiA9PSAnbCcpIHsKKyAgICAgICAgaWYgKGZbMV0gPT0gJ2QnIHx8IGZbMV0gPT0gJ3UnIHx8IGZbMV0gPT0gJ2knKSB7CisgICAgICAgICAgICBsb25nZmxhZyA9IDE7CisgICAgICAgICAgICArK2Y7CisgICAgICAgIH0KKyNpZmRlZiBIQVZFX0xPTkdfTE9ORworICAgICAgICBlbHNlIGlmIChmWzFdID09ICdsJyAmJgorICAgICAgICAgICAgICAgICAoZlsyXSA9PSAnZCcgfHwgZlsyXSA9PSAndScgfHwgZlsyXSA9PSAnaScpKSB7CisgICAgICAgICAgICBsb25nbG9uZ2ZsYWcgPSAxOworICAgICAgICAgICAgZiArPSAyOworICAgICAgICB9CisjZW5kaWYKKyAgICB9CisgICAgLyogaGFuZGxlIHRoZSBzaXplX3QgZmxhZy4gKi8KKyAgICBlbHNlIGlmICgqZiA9PSAneicgJiYgKGZbMV0gPT0gJ2QnIHx8IGZbMV0gPT0gJ3UnIHx8IGZbMV0gPT0gJ2knKSkgeworICAgICAgICBzaXplX3RmbGFnID0gMTsKKyAgICAgICAgKytmOworICAgIH0KKyAgICBpZiAocF9sb25nZmxhZyAhPSBOVUxMKQorICAgICAgICAqcF9sb25nZmxhZyA9IGxvbmdmbGFnOworICAgIGlmIChwX2xvbmdsb25nZmxhZyAhPSBOVUxMKQorICAgICAgICAqcF9sb25nbG9uZ2ZsYWcgPSBsb25nbG9uZ2ZsYWc7CisgICAgaWYgKHBfc2l6ZV90ZmxhZyAhPSBOVUxMKQorICAgICAgICAqcF9zaXplX3RmbGFnID0gc2l6ZV90ZmxhZzsKKyAgICByZXR1cm4gZjsKK30KKwogLyogbWF4aW11bSBudW1iZXIgb2YgY2hhcmFjdGVycyByZXF1aXJlZCBmb3Igb3V0cHV0IG9mICVsZC4gIDIxIGNoYXJhY3RlcnMKICAgIGFsbG93cyBmb3IgNjQtYml0IGludGVnZXJzIChpbiBkZWNpbWFsKSBhbmQgYW4gb3B0aW9uYWwgc2lnbi4gKi8KICNkZWZpbmUgTUFYX0xPTkdfQ0hBUlMgMjEKQEAgLTczMSwxMDYgKzIyOTgsMzUgQEAKICAgICBpbnQgcHJlY2lzaW9uID0gMDsKICAgICBpbnQgemVyb3BhZDsKICAgICBjb25zdCBjaGFyKiBmOwotICAgIFB5X1VOSUNPREUgKnM7CiAgICAgUHlPYmplY3QgKnN0cmluZzsKICAgICAvKiB1c2VkIGJ5IHNwcmludGYgKi8KLSAgICBjaGFyIGJ1ZmZlcltJVEVNX0JVRkZFUl9MRU4rMV07Ci0gICAgLyogdXNlIGFidWZmZXIgaW5zdGVhZCBvZiBidWZmZXIsIGlmIHdlIG5lZWQgbW9yZSBzcGFjZQotICAgICAqICh3aGljaCBjYW4gaGFwcGVuIGlmIHRoZXJlJ3MgYSBmb3JtYXQgc3BlY2lmaWVyIHdpdGggd2lkdGgpLiAqLwotICAgIGNoYXIgKmFidWZmZXIgPSBOVUxMOwotICAgIGNoYXIgKnJlYWxidWZmZXI7Ci0gICAgUHlfc3NpemVfdCBhYnVmZmVyc2l6ZSA9IDA7CiAgICAgY2hhciBmbXRbNjFdOyAvKiBzaG91bGQgYmUgZW5vdWdoIGZvciAlMHdpZHRoLnByZWNpc2lvbmxsZCAqLwotICAgIGNvbnN0IGNoYXIgKmNvcHk7CisgICAgUHlfVUNTNCBtYXhjaGFyID0gMTI3OyAvKiByZXN1bHQgaXMgQVNDSUkgYnkgZGVmYXVsdCAqLworICAgIFB5X1VDUzQgYXJnbWF4Y2hhcjsKKyAgICBQeV9zc2l6ZV90IG51bWJlcnNpemUgPSAwOworICAgIGNoYXIgKm51bWJlcnJlc3VsdHMgPSBOVUxMOworICAgIGNoYXIgKm51bWJlcnJlc3VsdCA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBpOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CiAKICAgICBQeV9WQV9DT1BZKGNvdW50LCB2YXJncyk7CiAgICAgLyogc3RlcCAxOiBjb3VudCB0aGUgbnVtYmVyIG9mICVTLyVSLyVBLyVzIGZvcm1hdCBzcGVjaWZpY2F0aW9ucwogICAgICAqICh3ZSBjYWxsIFB5T2JqZWN0X1N0cigpL1B5T2JqZWN0X1JlcHIoKS9QeU9iamVjdF9BU0NJSSgpLwogICAgICAqIFB5VW5pY29kZV9EZWNvZGVVVEY4KCkgZm9yIHRoZXNlIG9iamVjdHMgb25jZSBkdXJpbmcgc3RlcCAzIGFuZCBwdXQgdGhlCi0gICAgICogcmVzdWx0IGluIGFuIGFycmF5KSAqLwotICAgIGZvciAoZiA9IGZvcm1hdDsgKmY7IGYrKykgewotICAgICAgICAgaWYgKCpmID09ICclJykgewotICAgICAgICAgICAgIGlmICgqKGYrMSk9PSclJykKLSAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgaWYgKCooZisxKT09J1MnIHx8ICooZisxKT09J1InIHx8ICooZisxKT09J0EnIHx8ICooZisxKSA9PSAnVicpCi0gICAgICAgICAgICAgICAgICsrY2FsbGNvdW50OwotICAgICAgICAgICAgIHdoaWxlIChQeV9JU0RJR0lUKCh1bnNpZ25lZCkqZikpCi0gICAgICAgICAgICAgICAgIHdpZHRoID0gKHdpZHRoKjEwKSArICpmKysgLSAnMCc7Ci0gICAgICAgICAgICAgd2hpbGUgKCorK2YgJiYgKmYgIT0gJyUnICYmICFQeV9JU0FMUEhBKCh1bnNpZ25lZCkqZikpCi0gICAgICAgICAgICAgICAgIDsKLSAgICAgICAgICAgICBpZiAoKmYgPT0gJ3MnKQotICAgICAgICAgICAgICAgICArK2NhbGxjb3VudDsKLSAgICAgICAgIH0KLSAgICAgICAgIGVsc2UgaWYgKDEyOCA8PSAodW5zaWduZWQgY2hhcikqZikgewotICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICJQeVVuaWNvZGVfRnJvbUZvcm1hdFYoKSBleHBlY3RzIGFuIEFTQ0lJLWVuY29kZWQgZm9ybWF0ICIKLSAgICAgICAgICAgICAgICAic3RyaW5nLCBnb3QgYSBub24tQVNDSUkgYnl0ZTogMHglMDJ4IiwKLSAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hhcikqZik7Ci0gICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICB9Ci0gICAgfQotICAgIC8qIHN0ZXAgMjogYWxsb2NhdGUgbWVtb3J5IGZvciB0aGUgcmVzdWx0cyBvZgotICAgICAqIFB5T2JqZWN0X1N0cigpL1B5T2JqZWN0X1JlcHIoKS9QeVVuaWNvZGVfRGVjb2RlVVRGOCgpIGNhbGxzICovCi0gICAgaWYgKGNhbGxjb3VudCkgewotICAgICAgICBjYWxscmVzdWx0cyA9IFB5T2JqZWN0X01hbGxvYyhzaXplb2YoUHlPYmplY3QgKikqY2FsbGNvdW50KTsKLSAgICAgICAgaWYgKCFjYWxscmVzdWx0cykgewotICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIGNhbGxyZXN1bHQgPSBjYWxscmVzdWx0czsKLSAgICB9Ci0gICAgLyogc3RlcCAzOiBmaWd1cmUgb3V0IGhvdyBsYXJnZSBhIGJ1ZmZlciB3ZSBuZWVkICovCisgICAgICogcmVzdWx0IGluIGFuIGFycmF5KQorICAgICAqIGFsc28gZXN0aW1hdGUgYSB1cHBlciBib3VuZCBmb3IgYWxsIHRoZSBudW1iZXIgZm9ybWF0cyBpbiB0aGUgc3RyaW5nLAorICAgICAqIG51bWJlcnMgd2lsbCBiZSBmb3JtYXR0ZWQgaW4gc3RlcCAzIGFuZCBiZSBrZXB0IGluIGEgJ1wwJy1zZXBhcmF0ZWQKKyAgICAgKiBidWZmZXIgYmVmb3JlIHB1dHRpbmcgZXZlcnl0aGluZyB0b2dldGhlci4gKi8KICAgICBmb3IgKGYgPSBmb3JtYXQ7ICpmOyBmKyspIHsKICAgICAgICAgaWYgKCpmID09ICclJykgewotI2lmZGVmIEhBVkVfTE9OR19MT05HCi0gICAgICAgICAgICBpbnQgbG9uZ2xvbmdmbGFnID0gMDsKLSNlbmRpZgotICAgICAgICAgICAgY29uc3QgY2hhciogcCA9IGY7Ci0gICAgICAgICAgICB3aWR0aCA9IDA7Ci0gICAgICAgICAgICB3aGlsZSAoUHlfSVNESUdJVCgodW5zaWduZWQpKmYpKQotICAgICAgICAgICAgICAgIHdpZHRoID0gKHdpZHRoKjEwKSArICpmKysgLSAnMCc7Ci0gICAgICAgICAgICB3aGlsZSAoKisrZiAmJiAqZiAhPSAnJScgJiYgIVB5X0lTQUxQSEEoKHVuc2lnbmVkKSpmKSkKLSAgICAgICAgICAgICAgICA7CisgICAgICAgICAgICBpbnQgbG9uZ2xvbmdmbGFnOworICAgICAgICAgICAgLyogc2tpcCB3aWR0aCBvciB3aWR0aC5wcmVjaXNpb24gKGVnLiAiMS4yIiBvZiAiJTEuMmYiKSAqLworICAgICAgICAgICAgZiA9IHBhcnNlX2Zvcm1hdF9mbGFncyhmLCAmd2lkdGgsIE5VTEwsIE5VTEwsICZsb25nbG9uZ2ZsYWcsIE5VTEwpOworICAgICAgICAgICAgaWYgKCpmID09ICdzJyB8fCAqZj09J1MnIHx8ICpmPT0nUicgfHwgKmY9PSdBJyB8fCAqZj09J1YnKQorICAgICAgICAgICAgICAgICsrY2FsbGNvdW50OwogCi0gICAgICAgICAgICAvKiBza2lwIHRoZSAnbCcgb3IgJ3onIGluIHslbGQsICV6ZCwgJWx1LCAlenV9IHNpbmNlCi0gICAgICAgICAgICAgKiB0aGV5IGRvbid0IGFmZmVjdCB0aGUgYW1vdW50IG9mIHNwYWNlIHdlIHJlc2VydmUuCi0gICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIGlmICgqZiA9PSAnbCcpIHsKLSAgICAgICAgICAgICAgICBpZiAoZlsxXSA9PSAnZCcgfHwgZlsxXSA9PSAndScpIHsKLSAgICAgICAgICAgICAgICAgICAgKytmOwotICAgICAgICAgICAgICAgIH0KLSNpZmRlZiBIQVZFX0xPTkdfTE9ORwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZbMV0gPT0gJ2wnICYmCi0gICAgICAgICAgICAgICAgICAgICAgICAgKGZbMl0gPT0gJ2QnIHx8IGZbMl0gPT0gJ3UnKSkgewotICAgICAgICAgICAgICAgICAgICBsb25nbG9uZ2ZsYWcgPSAxOwotICAgICAgICAgICAgICAgICAgICBmICs9IDI7Ci0gICAgICAgICAgICAgICAgfQotI2VuZGlmCi0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIGlmICgqZiA9PSAneicgJiYgKGZbMV0gPT0gJ2QnIHx8IGZbMV0gPT0gJ3UnKSkgewotICAgICAgICAgICAgICAgICsrZjsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgc3dpdGNoICgqZikgewotICAgICAgICAgICAgY2FzZSAnYyc6Ci0gICAgICAgICAgICB7Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgICAgIGludCBvcmRpbmFsID0gdmFfYXJnKGNvdW50LCBpbnQpOwotICAgICAgICAgICAgICAgIGlmIChvcmRpbmFsID4gMHhmZmZmKQotICAgICAgICAgICAgICAgICAgICBuICs9IDI7Ci0gICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICBuKys7Ci0jZWxzZQotICAgICAgICAgICAgICAgICh2b2lkKXZhX2FyZyhjb3VudCwgaW50KTsKLSAgICAgICAgICAgICAgICBuKys7Ci0jZW5kaWYKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGNhc2UgJyUnOgotICAgICAgICAgICAgICAgIG4rKzsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIGNhc2UgJ2QnOiBjYXNlICd1JzogY2FzZSAnaSc6IGNhc2UgJ3gnOgotICAgICAgICAgICAgICAgICh2b2lkKSB2YV9hcmcoY291bnQsIGludCk7CisgICAgICAgICAgICBlbHNlIGlmICgqZiA9PSAnZCcgfHwgKmY9PSd1JyB8fCAqZj09J2knIHx8ICpmPT0neCcgfHwgKmY9PSdwJykgewogI2lmZGVmIEhBVkVfTE9OR19MT05HCiAgICAgICAgICAgICAgICAgaWYgKGxvbmdsb25nZmxhZykgewogICAgICAgICAgICAgICAgICAgICBpZiAod2lkdGggPCBNQVhfTE9OR19MT05HX0NIQVJTKQpAQCAtODQ0LDE5ICsyMzQwLDE1NSBAQAogICAgICAgICAgICAgICAgICAgICAgICBuZWVkIG1vcmUgKHdoaWNoIHdlIGFsbG9jYXRlIGxhdGVyKS4gKi8KICAgICAgICAgICAgICAgICAgICAgaWYgKHdpZHRoIDwgTUFYX0xPTkdfQ0hBUlMpCiAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCA9IE1BWF9MT05HX0NIQVJTOwotICAgICAgICAgICAgICAgIG4gKz0gd2lkdGg7Ci0gICAgICAgICAgICAgICAgLyogWFhYIHNob3VsZCBhbGxvdyBmb3IgbGFyZ2UgcHJlY2lzaW9uIGhlcmUgdG9vLiAqLwotICAgICAgICAgICAgICAgIGlmIChhYnVmZmVyc2l6ZSA8IHdpZHRoKQotICAgICAgICAgICAgICAgICAgICBhYnVmZmVyc2l6ZSA9IHdpZHRoOworCisgICAgICAgICAgICAgICAgLyogYWNjb3VudCBmb3IgdGhlIHNpemUgKyAnXDAnIHRvIHNlcGFyYXRlIG51bWJlcnMKKyAgICAgICAgICAgICAgICAgICBpbnNpZGUgb2YgdGhlIG51bWJlcnJlc3VsdHMgYnVmZmVyICovCisgICAgICAgICAgICAgICAgbnVtYmVyc2l6ZSArPSAod2lkdGggKyAxKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmICgodW5zaWduZWQgY2hhcikqZiA+IDEyNykgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgIlB5VW5pY29kZV9Gcm9tRm9ybWF0VigpIGV4cGVjdHMgYW4gQVNDSUktZW5jb2RlZCBmb3JtYXQgIgorICAgICAgICAgICAgICAgICJzdHJpbmcsIGdvdCBhIG5vbi1BU0NJSSBieXRlOiAweCUwMngiLAorICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyKSpmKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgfQorICAgIC8qIHN0ZXAgMjogYWxsb2NhdGUgbWVtb3J5IGZvciB0aGUgcmVzdWx0cyBvZgorICAgICAqIFB5T2JqZWN0X1N0cigpL1B5T2JqZWN0X1JlcHIoKS9QeVVuaWNvZGVfRGVjb2RlVVRGOCgpIGNhbGxzICovCisgICAgaWYgKGNhbGxjb3VudCkgeworICAgICAgICBjYWxscmVzdWx0cyA9IFB5T2JqZWN0X01hbGxvYyhzaXplb2YoUHlPYmplY3QgKikgKiBjYWxsY291bnQpOworICAgICAgICBpZiAoIWNhbGxyZXN1bHRzKSB7CisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgY2FsbHJlc3VsdCA9IGNhbGxyZXN1bHRzOworICAgIH0KKyAgICAvKiBzdGVwIDIuNTogYWxsb2NhdGUgbWVtb3J5IGZvciB0aGUgcmVzdWx0cyBvZiBmb3JtYXRpbmcgbnVtYmVycyAqLworICAgIGlmIChudW1iZXJzaXplKSB7CisgICAgICAgIG51bWJlcnJlc3VsdHMgPSBQeU9iamVjdF9NYWxsb2MobnVtYmVyc2l6ZSk7CisgICAgICAgIGlmICghbnVtYmVycmVzdWx0cykgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgfQorICAgICAgICBudW1iZXJyZXN1bHQgPSBudW1iZXJyZXN1bHRzOworICAgIH0KKworICAgIC8qIHN0ZXAgMzogZm9ybWF0IG51bWJlcnMgYW5kIGZpZ3VyZSBvdXQgaG93IGxhcmdlIGEgYnVmZmVyIHdlIG5lZWQgKi8KKyAgICBmb3IgKGYgPSBmb3JtYXQ7ICpmOyBmKyspIHsKKyAgICAgICAgaWYgKCpmID09ICclJykgeworICAgICAgICAgICAgY29uc3QgY2hhciogcDsKKyAgICAgICAgICAgIGludCBsb25nZmxhZzsKKyAgICAgICAgICAgIGludCBsb25nbG9uZ2ZsYWc7CisgICAgICAgICAgICBpbnQgc2l6ZV90ZmxhZzsKKyAgICAgICAgICAgIGludCBudW1wcmludGVkOworCisgICAgICAgICAgICBwID0gZjsKKyAgICAgICAgICAgIHplcm9wYWQgPSAoZlsxXSA9PSAnMCcpOworICAgICAgICAgICAgZiA9IHBhcnNlX2Zvcm1hdF9mbGFncyhmLCAmd2lkdGgsICZwcmVjaXNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZsb25nZmxhZywgJmxvbmdsb25nZmxhZywgJnNpemVfdGZsYWcpOworICAgICAgICAgICAgc3dpdGNoICgqZikgeworICAgICAgICAgICAgY2FzZSAnYyc6CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgUHlfVUNTNCBvcmRpbmFsID0gdmFfYXJnKGNvdW50LCBpbnQpOworICAgICAgICAgICAgICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgb3JkaW5hbCk7CisgICAgICAgICAgICAgICAgbisrOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICAgICAgY2FzZSAnJSc6CisgICAgICAgICAgICAgICAgbisrOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSAnaSc6CisgICAgICAgICAgICBjYXNlICdkJzoKKyAgICAgICAgICAgICAgICBtYWtlZm10KGZtdCwgbG9uZ2ZsYWcsIGxvbmdsb25nZmxhZywgc2l6ZV90ZmxhZywgemVyb3BhZCwKKyAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoLCBwcmVjaXNpb24sICpmKTsKKyAgICAgICAgICAgICAgICBpZiAobG9uZ2ZsYWcpCisgICAgICAgICAgICAgICAgICAgIG51bXByaW50ZWQgPSBzcHJpbnRmKG51bWJlcnJlc3VsdCwgZm10LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YV9hcmcoY291bnQsIGxvbmcpKTsKKyNpZmRlZiBIQVZFX0xPTkdfTE9ORworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGxvbmdsb25nZmxhZykKKyAgICAgICAgICAgICAgICAgICAgbnVtcHJpbnRlZCA9IHNwcmludGYobnVtYmVycmVzdWx0LCBmbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhX2FyZyhjb3VudCwgUFlfTE9OR19MT05HKSk7CisjZW5kaWYKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChzaXplX3RmbGFnKQorICAgICAgICAgICAgICAgICAgICBudW1wcmludGVkID0gc3ByaW50ZihudW1iZXJyZXN1bHQsIGZtdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFfYXJnKGNvdW50LCBQeV9zc2l6ZV90KSk7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICBudW1wcmludGVkID0gc3ByaW50ZihudW1iZXJyZXN1bHQsIGZtdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFfYXJnKGNvdW50LCBpbnQpKTsKKyAgICAgICAgICAgICAgICBuICs9IG51bXByaW50ZWQ7CisgICAgICAgICAgICAgICAgLyogYWR2YW5jZSBieSArMSB0byBza2lwIG92ZXIgdGhlICdcMCcgKi8KKyAgICAgICAgICAgICAgICBudW1iZXJyZXN1bHQgKz0gKG51bXByaW50ZWQgKyAxKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKihudW1iZXJyZXN1bHQgLSAxKSA9PSAnXDAnKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKihudW1iZXJyZXN1bHQgLSAyKSAhPSAnXDAnKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQobnVtcHJpbnRlZCA+PSAwKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQobnVtYmVycmVzdWx0IDw9IG51bWJlcnJlc3VsdHMgKyBudW1iZXJzaXplKTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgJ3UnOgorICAgICAgICAgICAgICAgIG1ha2VmbXQoZm10LCBsb25nZmxhZywgbG9uZ2xvbmdmbGFnLCBzaXplX3RmbGFnLCB6ZXJvcGFkLAorICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGgsIHByZWNpc2lvbiwgJ3UnKTsKKyAgICAgICAgICAgICAgICBpZiAobG9uZ2ZsYWcpCisgICAgICAgICAgICAgICAgICAgIG51bXByaW50ZWQgPSBzcHJpbnRmKG51bWJlcnJlc3VsdCwgZm10LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YV9hcmcoY291bnQsIHVuc2lnbmVkIGxvbmcpKTsKKyNpZmRlZiBIQVZFX0xPTkdfTE9ORworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGxvbmdsb25nZmxhZykKKyAgICAgICAgICAgICAgICAgICAgbnVtcHJpbnRlZCA9IHNwcmludGYobnVtYmVycmVzdWx0LCBmbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhX2FyZyhjb3VudCwgdW5zaWduZWQgUFlfTE9OR19MT05HKSk7CisjZW5kaWYKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChzaXplX3RmbGFnKQorICAgICAgICAgICAgICAgICAgICBudW1wcmludGVkID0gc3ByaW50ZihudW1iZXJyZXN1bHQsIGZtdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFfYXJnKGNvdW50LCBzaXplX3QpKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIG51bXByaW50ZWQgPSBzcHJpbnRmKG51bWJlcnJlc3VsdCwgZm10LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YV9hcmcoY291bnQsIHVuc2lnbmVkIGludCkpOworICAgICAgICAgICAgICAgIG4gKz0gbnVtcHJpbnRlZDsKKyAgICAgICAgICAgICAgICBudW1iZXJyZXN1bHQgKz0gKG51bXByaW50ZWQgKyAxKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKihudW1iZXJyZXN1bHQgLSAxKSA9PSAnXDAnKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKihudW1iZXJyZXN1bHQgLSAyKSAhPSAnXDAnKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQobnVtcHJpbnRlZCA+PSAwKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQobnVtYmVycmVzdWx0IDw9IG51bWJlcnJlc3VsdHMgKyBudW1iZXJzaXplKTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgJ3gnOgorICAgICAgICAgICAgICAgIG1ha2VmbXQoZm10LCAwLCAwLCAwLCB6ZXJvcGFkLCB3aWR0aCwgcHJlY2lzaW9uLCAneCcpOworICAgICAgICAgICAgICAgIG51bXByaW50ZWQgPSBzcHJpbnRmKG51bWJlcnJlc3VsdCwgZm10LCB2YV9hcmcoY291bnQsIGludCkpOworICAgICAgICAgICAgICAgIG4gKz0gbnVtcHJpbnRlZDsKKyAgICAgICAgICAgICAgICBudW1iZXJyZXN1bHQgKz0gKG51bXByaW50ZWQgKyAxKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKihudW1iZXJyZXN1bHQgLSAxKSA9PSAnXDAnKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKihudW1iZXJyZXN1bHQgLSAyKSAhPSAnXDAnKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQobnVtcHJpbnRlZCA+PSAwKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQobnVtYmVycmVzdWx0IDw9IG51bWJlcnJlc3VsdHMgKyBudW1iZXJzaXplKTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgJ3AnOgorICAgICAgICAgICAgICAgIG51bXByaW50ZWQgPSBzcHJpbnRmKG51bWJlcnJlc3VsdCwgIiVwIiwgdmFfYXJnKGNvdW50LCB2b2lkKikpOworICAgICAgICAgICAgICAgIC8qICVwIGlzIGlsbC1kZWZpbmVkOiAgZW5zdXJlIGxlYWRpbmcgMHguICovCisgICAgICAgICAgICAgICAgaWYgKG51bWJlcnJlc3VsdFsxXSA9PSAnWCcpCisgICAgICAgICAgICAgICAgICAgIG51bWJlcnJlc3VsdFsxXSA9ICd4JzsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChudW1iZXJyZXN1bHRbMV0gIT0gJ3gnKSB7CisgICAgICAgICAgICAgICAgICAgIG1lbW1vdmUobnVtYmVycmVzdWx0ICsgMiwgbnVtYmVycmVzdWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmxlbihudW1iZXJyZXN1bHQpICsgMSk7CisgICAgICAgICAgICAgICAgICAgIG51bWJlcnJlc3VsdFswXSA9ICcwJzsKKyAgICAgICAgICAgICAgICAgICAgbnVtYmVycmVzdWx0WzFdID0gJ3gnOworICAgICAgICAgICAgICAgICAgICBudW1wcmludGVkICs9IDI7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIG4gKz0gbnVtcHJpbnRlZDsKKyAgICAgICAgICAgICAgICBudW1iZXJyZXN1bHQgKz0gKG51bXByaW50ZWQgKyAxKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKihudW1iZXJyZXN1bHQgLSAxKSA9PSAnXDAnKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKihudW1iZXJyZXN1bHQgLSAyKSAhPSAnXDAnKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQobnVtcHJpbnRlZCA+PSAwKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQobnVtYmVycmVzdWx0IDw9IG51bWJlcnJlc3VsdHMgKyBudW1iZXJzaXplKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgJ3MnOgogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIC8qIFVURi04ICovCiAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcyA9IHZhX2FyZyhjb3VudCwgY29uc3QgY2hhciopOwotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdHIgPSBQeVVuaWNvZGVfRGVjb2RlVVRGOChzLCBzdHJsZW4ocyksICJyZXBsYWNlIik7CisgICAgICAgICAgICAgICAgUHlPYmplY3QgKnN0ciA9IFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWwocywgc3RybGVuKHMpLCAicmVwbGFjZSIsIE5VTEwpOwogICAgICAgICAgICAgICAgIGlmICghc3RyKQogICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKTsKKyAgICAgICAgICAgICAgICAvKiBzaW5jZSBQeVVuaWNvZGVfRGVjb2RlVVRGOCByZXR1cm5zIGFscmVhZHkgZmxleGlibGUKKyAgICAgICAgICAgICAgICAgICB1bmljb2RlIG9iamVjdHMsIHRoZXJlIGlzIG5vIG5lZWQgdG8gY2FsbCByZWFkeSBvbiB0aGVtICovCisgICAgICAgICAgICAgICAgYXJnbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShzdHIpOworICAgICAgICAgICAgICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgYXJnbWF4Y2hhcik7CisgICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpOwogICAgICAgICAgICAgICAgIC8qIFJlbWVtYmVyIHRoZSBzdHIgYW5kIHN3aXRjaCB0byB0aGUgbmV4dCBzbG90ICovCiAgICAgICAgICAgICAgICAgKmNhbGxyZXN1bHQrKyA9IHN0cjsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTg2NCw4ICsyNDk2LDEyIEBACiAgICAgICAgICAgICBjYXNlICdVJzoKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBQeU9iamVjdCAqb2JqID0gdmFfYXJnKGNvdW50LCBQeU9iamVjdCAqKTsKLSAgICAgICAgICAgICAgICBhc3NlcnQob2JqICYmIFB5VW5pY29kZV9DaGVjayhvYmopKTsKLSAgICAgICAgICAgICAgICBuICs9IFB5VW5pY29kZV9HRVRfU0laRShvYmopOworICAgICAgICAgICAgICAgIGFzc2VydChvYmogJiYgX1B5VW5pY29kZV9DSEVDSyhvYmopKTsKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKG9iaikgPT0gLTEpCisgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgICAgICAgICBhcmdtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKG9iaik7CisgICAgICAgICAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBhcmdtYXhjaGFyKTsKKyAgICAgICAgICAgICAgICBuICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKG9iaik7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjYXNlICdWJzoKQEAgLTg3NCwxNiArMjUxMCwyNiBAQAogICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnN0ciA9IHZhX2FyZyhjb3VudCwgY29uc3QgY2hhciAqKTsKICAgICAgICAgICAgICAgICBQeU9iamVjdCAqc3RyX29iajsKICAgICAgICAgICAgICAgICBhc3NlcnQob2JqIHx8IHN0cik7Ci0gICAgICAgICAgICAgICAgYXNzZXJ0KCFvYmogfHwgUHlVbmljb2RlX0NoZWNrKG9iaikpOworICAgICAgICAgICAgICAgIGFzc2VydCghb2JqIHx8IF9QeVVuaWNvZGVfQ0hFQ0sob2JqKSk7CiAgICAgICAgICAgICAgICAgaWYgKG9iaikgewotICAgICAgICAgICAgICAgICAgICBuICs9IFB5VW5pY29kZV9HRVRfU0laRShvYmopOworICAgICAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKG9iaikgPT0gLTEpCisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgICAgICAgICAgICAgIGFyZ21heGNoYXIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUob2JqKTsKKyAgICAgICAgICAgICAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBhcmdtYXhjaGFyKTsKKyAgICAgICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopOwogICAgICAgICAgICAgICAgICAgICAqY2FsbHJlc3VsdCsrID0gTlVMTDsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgIHN0cl9vYmogPSBQeVVuaWNvZGVfRGVjb2RlVVRGOChzdHIsIHN0cmxlbihzdHIpLCAicmVwbGFjZSIpOworICAgICAgICAgICAgICAgICAgICBzdHJfb2JqID0gUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChzdHIsIHN0cmxlbihzdHIpLCAicmVwbGFjZSIsIE5VTEwpOwogICAgICAgICAgICAgICAgICAgICBpZiAoIXN0cl9vYmopCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICAgICAgICAgIG4gKz0gUHlVbmljb2RlX0dFVF9TSVpFKHN0cl9vYmopOworICAgICAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cl9vYmopID09IC0xKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoc3RyX29iaik7CisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgYXJnbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShzdHJfb2JqKTsKKyAgICAgICAgICAgICAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBhcmdtYXhjaGFyKTsKKyAgICAgICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJfb2JqKTsKICAgICAgICAgICAgICAgICAgICAgKmNhbGxyZXN1bHQrKyA9IHN0cl9vYmo7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtODk2LDcgKzI1NDIsMTMgQEAKICAgICAgICAgICAgICAgICBzdHIgPSBQeU9iamVjdF9TdHIob2JqKTsKICAgICAgICAgICAgICAgICBpZiAoIXN0cikKICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgICAgIG4gKz0gUHlVbmljb2RlX0dFVF9TSVpFKHN0cik7CisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzdHIpID09IC0xKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihzdHIpOworICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGFyZ21heGNoYXIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUoc3RyKTsKKyAgICAgICAgICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIGFyZ21heGNoYXIpOworICAgICAgICAgICAgICAgIG4gKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKTsKICAgICAgICAgICAgICAgICAvKiBSZW1lbWJlciB0aGUgc3RyIGFuZCBzd2l0Y2ggdG8gdGhlIG5leHQgc2xvdCAqLwogICAgICAgICAgICAgICAgICpjYWxscmVzdWx0KysgPSBzdHI7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC05MDksNyArMjU2MSwxMyBAQAogICAgICAgICAgICAgICAgIHJlcHIgPSBQeU9iamVjdF9SZXByKG9iaik7CiAgICAgICAgICAgICAgICAgaWYgKCFyZXByKQogICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX1NJWkUocmVwcik7CisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShyZXByKSA9PSAtMSkgeworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwcik7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgYXJnbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShyZXByKTsKKyAgICAgICAgICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIGFyZ21heGNoYXIpOworICAgICAgICAgICAgICAgIG4gKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgocmVwcik7CiAgICAgICAgICAgICAgICAgLyogUmVtZW1iZXIgdGhlIHJlcHIgYW5kIHN3aXRjaCB0byB0aGUgbmV4dCBzbG90ICovCiAgICAgICAgICAgICAgICAgKmNhbGxyZXN1bHQrKyA9IHJlcHI7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC05MjIsMjAgKzI1ODAsMTcgQEAKICAgICAgICAgICAgICAgICBhc2NpaSA9IFB5T2JqZWN0X0FTQ0lJKG9iaik7CiAgICAgICAgICAgICAgICAgaWYgKCFhc2NpaSkKICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgICAgIG4gKz0gUHlVbmljb2RlX0dFVF9TSVpFKGFzY2lpKTsKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKGFzY2lpKSA9PSAtMSkgeworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoYXNjaWkpOworICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGFyZ21heGNoYXIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUoYXNjaWkpOworICAgICAgICAgICAgICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgYXJnbWF4Y2hhcik7CisgICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChhc2NpaSk7CiAgICAgICAgICAgICAgICAgLyogUmVtZW1iZXIgdGhlIHJlcHIgYW5kIHN3aXRjaCB0byB0aGUgbmV4dCBzbG90ICovCiAgICAgICAgICAgICAgICAgKmNhbGxyZXN1bHQrKyA9IGFzY2lpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgY2FzZSAncCc6Ci0gICAgICAgICAgICAgICAgKHZvaWQpIHZhX2FyZyhjb3VudCwgaW50KTsKLSAgICAgICAgICAgICAgICAvKiBtYXhpbXVtIDY0LWJpdCBwb2ludGVyIHJlcHJlc2VudGF0aW9uOgotICAgICAgICAgICAgICAgICAqIDB4ZmZmZmZmZmZmZmZmZmZmZgotICAgICAgICAgICAgICAgICAqIHNvIDE5IGNoYXJhY3RlcnMgaXMgZW5vdWdoLgotICAgICAgICAgICAgICAgICAqIFhYWCBJIGNvdW50IDE4IC0tIHdoYXQncyB0aGUgZXh0cmEgZm9yPwotICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgICAgIG4gKz0gMTk7Ci0gICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgIC8qIGlmIHdlIHN0dW1ibGUgdXBvbiBhbiB1bmtub3duCiAgICAgICAgICAgICAgICAgICAgZm9ybWF0dGluZyBjb2RlLCBjb3B5IHRoZSByZXN0IG9mCkBAIC05NTAsMTI3ICsyNjA1LDY3IEBACiAgICAgICAgICAgICBuKys7CiAgICAgfQogICBleHBhbmQ6Ci0gICAgaWYgKGFidWZmZXJzaXplID4gSVRFTV9CVUZGRVJfTEVOKSB7Ci0gICAgICAgIC8qIGFkZCAxIGZvciBzcHJpbnRmJ3MgdHJhaWxpbmcgbnVsbCBieXRlICovCi0gICAgICAgIGFidWZmZXIgPSBQeU9iamVjdF9NYWxsb2MoYWJ1ZmZlcnNpemUgKyAxKTsKLSAgICAgICAgaWYgKCFhYnVmZmVyKSB7Ci0gICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICB9Ci0gICAgICAgIHJlYWxidWZmZXIgPSBhYnVmZmVyOwotICAgIH0KLSAgICBlbHNlCi0gICAgICAgIHJlYWxidWZmZXIgPSBidWZmZXI7CiAgICAgLyogc3RlcCA0OiBmaWxsIHRoZSBidWZmZXIgKi8KLSAgICAvKiBTaW5jZSB3ZSd2ZSBhbmFseXplZCBob3cgbXVjaCBzcGFjZSB3ZSBuZWVkIGZvciB0aGUgd29yc3QgY2FzZSwKKyAgICAvKiBTaW5jZSB3ZSd2ZSBhbmFseXplZCBob3cgbXVjaCBzcGFjZSB3ZSBuZWVkLAogICAgICAgIHdlIGRvbid0IGhhdmUgdG8gcmVzaXplIHRoZSBzdHJpbmcuCiAgICAgICAgVGhlcmUgY2FuIGJlIG5vIGVycm9ycyBiZXlvbmQgdGhpcyBwb2ludC4gKi8KLSAgICBzdHJpbmcgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgbik7CisgICAgc3RyaW5nID0gUHlVbmljb2RlX05ldyhuLCBtYXhjaGFyKTsKICAgICBpZiAoIXN0cmluZykKICAgICAgICAgZ290byBmYWlsOwotCi0gICAgcyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHN0cmluZyk7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHN0cmluZyk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHN0cmluZyk7CiAgICAgY2FsbHJlc3VsdCA9IGNhbGxyZXN1bHRzOworICAgIG51bWJlcnJlc3VsdCA9IG51bWJlcnJlc3VsdHM7CiAKLSAgICBmb3IgKGYgPSBmb3JtYXQ7ICpmOyBmKyspIHsKKyAgICBmb3IgKGkgPSAwLCBmID0gZm9ybWF0OyAqZjsgZisrKSB7CiAgICAgICAgIGlmICgqZiA9PSAnJScpIHsKLSAgICAgICAgICAgIGNvbnN0IGNoYXIqIHAgPSBmKys7Ci0gICAgICAgICAgICBpbnQgbG9uZ2ZsYWcgPSAwOwotICAgICAgICAgICAgaW50IGxvbmdsb25nZmxhZyA9IDA7Ci0gICAgICAgICAgICBpbnQgc2l6ZV90ZmxhZyA9IDA7Ci0gICAgICAgICAgICB6ZXJvcGFkID0gKCpmID09ICcwJyk7Ci0gICAgICAgICAgICAvKiBwYXJzZSB0aGUgd2lkdGgucHJlY2lzaW9uIHBhcnQgKi8KLSAgICAgICAgICAgIHdpZHRoID0gMDsKLSAgICAgICAgICAgIHdoaWxlIChQeV9JU0RJR0lUKCh1bnNpZ25lZCkqZikpCi0gICAgICAgICAgICAgICAgd2lkdGggPSAod2lkdGgqMTApICsgKmYrKyAtICcwJzsKLSAgICAgICAgICAgIHByZWNpc2lvbiA9IDA7Ci0gICAgICAgICAgICBpZiAoKmYgPT0gJy4nKSB7Ci0gICAgICAgICAgICAgICAgZisrOwotICAgICAgICAgICAgICAgIHdoaWxlIChQeV9JU0RJR0lUKCh1bnNpZ25lZCkqZikpCi0gICAgICAgICAgICAgICAgICAgIHByZWNpc2lvbiA9IChwcmVjaXNpb24qMTApICsgKmYrKyAtICcwJzsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIEhhbmRsZSAlbGQsICVsdSwgJWxsZCBhbmQgJWxsdS4gKi8KLSAgICAgICAgICAgIGlmICgqZiA9PSAnbCcpIHsKLSAgICAgICAgICAgICAgICBpZiAoZlsxXSA9PSAnZCcgfHwgZlsxXSA9PSAndScpIHsKLSAgICAgICAgICAgICAgICAgICAgbG9uZ2ZsYWcgPSAxOwotICAgICAgICAgICAgICAgICAgICArK2Y7Ci0gICAgICAgICAgICAgICAgfQotI2lmZGVmIEhBVkVfTE9OR19MT05HCi0gICAgICAgICAgICAgICAgZWxzZSBpZiAoZlsxXSA9PSAnbCcgJiYKLSAgICAgICAgICAgICAgICAgICAgICAgICAoZlsyXSA9PSAnZCcgfHwgZlsyXSA9PSAndScpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGxvbmdsb25nZmxhZyA9IDE7Ci0gICAgICAgICAgICAgICAgICAgIGYgKz0gMjsKLSAgICAgICAgICAgICAgICB9Ci0jZW5kaWYKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIGhhbmRsZSB0aGUgc2l6ZV90IGZsYWcuICovCi0gICAgICAgICAgICBpZiAoKmYgPT0gJ3onICYmIChmWzFdID09ICdkJyB8fCBmWzFdID09ICd1JykpIHsKLSAgICAgICAgICAgICAgICBzaXplX3RmbGFnID0gMTsKLSAgICAgICAgICAgICAgICArK2Y7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBjb25zdCBjaGFyKiBwOworCisgICAgICAgICAgICBwID0gZjsKKyAgICAgICAgICAgIGYgPSBwYXJzZV9mb3JtYXRfZmxhZ3MoZiwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCk7CisgICAgICAgICAgICAvKiBjaGVja2luZyBmb3IgPT0gYmVjYXVzZSB0aGUgbGFzdCBhcmd1bWVudCBjb3VsZCBiZSBhIGVtcHR5CisgICAgICAgICAgICAgICBzdHJpbmcsIHdoaWNoIGNhdXNlcyBpIHRvIHBvaW50IHRvIGVuZCwgdGhlIGFzc2VydCBhdCB0aGUgZW5kIG9mCisgICAgICAgICAgICAgICB0aGUgbG9vcCAqLworICAgICAgICAgICAgYXNzZXJ0KGkgPD0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyaW5nKSk7CiAKICAgICAgICAgICAgIHN3aXRjaCAoKmYpIHsKICAgICAgICAgICAgIGNhc2UgJ2MnOgogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGludCBvcmRpbmFsID0gdmFfYXJnKHZhcmdzLCBpbnQpOwotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICAgICBpZiAob3JkaW5hbCA+IDB4ZmZmZikgewotICAgICAgICAgICAgICAgICAgICBvcmRpbmFsIC09IDB4MTAwMDA7Ci0gICAgICAgICAgICAgICAgICAgICpzKysgPSAweEQ4MDAgfCAob3JkaW5hbCA+PiAxMCk7Ci0gICAgICAgICAgICAgICAgICAgICpzKysgPSAweERDMDAgfCAob3JkaW5hbCAmIDB4M0ZGKTsKLSAgICAgICAgICAgICAgICB9IGVsc2UKLSNlbmRpZgotICAgICAgICAgICAgICAgICpzKysgPSBvcmRpbmFsOworICAgICAgICAgICAgICAgIGNvbnN0IGludCBvcmRpbmFsID0gdmFfYXJnKHZhcmdzLCBpbnQpOworICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBpKyssIG9yZGluYWwpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgY2FzZSAnZCc6Ci0gICAgICAgICAgICAgICAgbWFrZWZtdChmbXQsIGxvbmdmbGFnLCBsb25nbG9uZ2ZsYWcsIHNpemVfdGZsYWcsIHplcm9wYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCwgcHJlY2lzaW9uLCAnZCcpOwotICAgICAgICAgICAgICAgIGlmIChsb25nZmxhZykKLSAgICAgICAgICAgICAgICAgICAgc3ByaW50ZihyZWFsYnVmZmVyLCBmbXQsIHZhX2FyZyh2YXJncywgbG9uZykpOwotI2lmZGVmIEhBVkVfTE9OR19MT05HCi0gICAgICAgICAgICAgICAgZWxzZSBpZiAobG9uZ2xvbmdmbGFnKQotICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKHJlYWxidWZmZXIsIGZtdCwgdmFfYXJnKHZhcmdzLCBQWV9MT05HX0xPTkcpKTsKLSNlbmRpZgotICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNpemVfdGZsYWcpCi0gICAgICAgICAgICAgICAgICAgIHNwcmludGYocmVhbGJ1ZmZlciwgZm10LCB2YV9hcmcodmFyZ3MsIFB5X3NzaXplX3QpKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIHNwcmludGYocmVhbGJ1ZmZlciwgZm10LCB2YV9hcmcodmFyZ3MsIGludCkpOwotICAgICAgICAgICAgICAgIGFwcGVuZHN0cmluZyhyZWFsYnVmZmVyKTsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIGNhc2UgJ3UnOgotICAgICAgICAgICAgICAgIG1ha2VmbXQoZm10LCBsb25nZmxhZywgbG9uZ2xvbmdmbGFnLCBzaXplX3RmbGFnLCB6ZXJvcGFkLAotICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGgsIHByZWNpc2lvbiwgJ3UnKTsKLSAgICAgICAgICAgICAgICBpZiAobG9uZ2ZsYWcpCi0gICAgICAgICAgICAgICAgICAgIHNwcmludGYocmVhbGJ1ZmZlciwgZm10LCB2YV9hcmcodmFyZ3MsIHVuc2lnbmVkIGxvbmcpKTsKLSNpZmRlZiBIQVZFX0xPTkdfTE9ORwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKGxvbmdsb25nZmxhZykKLSAgICAgICAgICAgICAgICAgICAgc3ByaW50ZihyZWFsYnVmZmVyLCBmbXQsIHZhX2FyZyh2YXJncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBQWV9MT05HX0xPTkcpKTsKLSNlbmRpZgotICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNpemVfdGZsYWcpCi0gICAgICAgICAgICAgICAgICAgIHNwcmludGYocmVhbGJ1ZmZlciwgZm10LCB2YV9hcmcodmFyZ3MsIHNpemVfdCkpOwotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgc3ByaW50ZihyZWFsYnVmZmVyLCBmbXQsIHZhX2FyZyh2YXJncywgdW5zaWduZWQgaW50KSk7Ci0gICAgICAgICAgICAgICAgYXBwZW5kc3RyaW5nKHJlYWxidWZmZXIpOwotICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgY2FzZSAnaSc6Ci0gICAgICAgICAgICAgICAgbWFrZWZtdChmbXQsIDAsIDAsIDAsIHplcm9wYWQsIHdpZHRoLCBwcmVjaXNpb24sICdpJyk7Ci0gICAgICAgICAgICAgICAgc3ByaW50ZihyZWFsYnVmZmVyLCBmbXQsIHZhX2FyZyh2YXJncywgaW50KSk7Ci0gICAgICAgICAgICAgICAgYXBwZW5kc3RyaW5nKHJlYWxidWZmZXIpOwotICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSAnZCc6CisgICAgICAgICAgICBjYXNlICd1JzoKICAgICAgICAgICAgIGNhc2UgJ3gnOgotICAgICAgICAgICAgICAgIG1ha2VmbXQoZm10LCAwLCAwLCAwLCB6ZXJvcGFkLCB3aWR0aCwgcHJlY2lzaW9uLCAneCcpOwotICAgICAgICAgICAgICAgIHNwcmludGYocmVhbGJ1ZmZlciwgZm10LCB2YV9hcmcodmFyZ3MsIGludCkpOwotICAgICAgICAgICAgICAgIGFwcGVuZHN0cmluZyhyZWFsYnVmZmVyKTsKKyAgICAgICAgICAgIGNhc2UgJ3AnOgorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgd3JpdHRlbjsKKyAgICAgICAgICAgICAgICAvKiB1bnVzZWQsIHNpbmNlIHdlIGFscmVhZHkgaGF2ZSB0aGUgcmVzdWx0ICovCisgICAgICAgICAgICAgICAgaWYgKCpmID09ICdwJykKKyAgICAgICAgICAgICAgICAgICAgKHZvaWQpIHZhX2FyZyh2YXJncywgdm9pZCAqKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICh2b2lkKSB2YV9hcmcodmFyZ3MsIGludCk7CisgICAgICAgICAgICAgICAgLyogZXh0cmFjdCB0aGUgcmVzdWx0IGZyb20gbnVtYmVycmVzdWx0cyBhbmQgYXBwZW5kLiAqLworICAgICAgICAgICAgICAgIHdyaXR0ZW4gPSB1bmljb2RlX3dyaXRlX2NzdHIoc3RyaW5nLCBpLCBudW1iZXJyZXN1bHQpOworICAgICAgICAgICAgICAgIC8qIHNraXAgb3ZlciB0aGUgc2VwYXJhdGluZyAnXDAnICovCisgICAgICAgICAgICAgICAgaSArPSB3cml0dGVuOworICAgICAgICAgICAgICAgIG51bWJlcnJlc3VsdCArPSB3cml0dGVuOworICAgICAgICAgICAgICAgIGFzc2VydCgqbnVtYmVycmVzdWx0ID09ICdcMCcpOworICAgICAgICAgICAgICAgIG51bWJlcnJlc3VsdCsrOworICAgICAgICAgICAgICAgIGFzc2VydChudW1iZXJyZXN1bHQgPD0gbnVtYmVycmVzdWx0cyArIG51bWJlcnNpemUpOwogICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQogICAgICAgICAgICAgY2FzZSAncyc6CiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgLyogdW51c2VkLCBzaW5jZSB3ZSBhbHJlYWR5IGhhdmUgdGhlIHJlc3VsdCAqLworICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZTsKICAgICAgICAgICAgICAgICAodm9pZCkgdmFfYXJnKHZhcmdzLCBjaGFyICopOwotICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWShzLCBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqY2FsbHJlc3VsdCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSgqY2FsbHJlc3VsdCkpOwotICAgICAgICAgICAgICAgIHMgKz0gUHlVbmljb2RlX0dFVF9TSVpFKCpjYWxscmVzdWx0KTsKKyAgICAgICAgICAgICAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoKmNhbGxyZXN1bHQpOworICAgICAgICAgICAgICAgIGFzc2VydChQeVVuaWNvZGVfS0lORCgqY2FsbHJlc3VsdCkgPD0gUHlVbmljb2RlX0tJTkQoc3RyaW5nKSk7CisgICAgICAgICAgICAgICAgY29weV9jaGFyYWN0ZXJzKHN0cmluZywgaSwgKmNhbGxyZXN1bHQsIDAsIHNpemUpOworICAgICAgICAgICAgICAgIGkgKz0gc2l6ZTsKICAgICAgICAgICAgICAgICAvKiBXZSdyZSBkb25lIHdpdGggdGhlIHVuaWNvZGUoKS9yZXByKCkgPT4gZm9yZ2V0IGl0ICovCiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKCpjYWxscmVzdWx0KTsKICAgICAgICAgICAgICAgICAvKiBzd2l0Y2ggdG8gbmV4dCB1bmljb2RlKCkvcmVwcigpIHJlc3VsdCAqLwpAQCAtMTA4MCwyMyArMjY3NSwyOSBAQAogICAgICAgICAgICAgY2FzZSAnVSc6CiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm9iaiA9IHZhX2FyZyh2YXJncywgUHlPYmplY3QgKik7Ci0gICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKG9iaik7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHMsIFB5VW5pY29kZV9BU19VTklDT0RFKG9iaiksIHNpemUpOwotICAgICAgICAgICAgICAgIHMgKz0gc2l6ZTsKKyAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemU7CisgICAgICAgICAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKG9iaikgPD0gUHlVbmljb2RlX0tJTkQoc3RyaW5nKSk7CisgICAgICAgICAgICAgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKG9iaik7CisgICAgICAgICAgICAgICAgY29weV9jaGFyYWN0ZXJzKHN0cmluZywgaSwgb2JqLCAwLCBzaXplKTsKKyAgICAgICAgICAgICAgICBpICs9IHNpemU7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjYXNlICdWJzoKICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemU7CiAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm9iaiA9IHZhX2FyZyh2YXJncywgUHlPYmplY3QgKik7CiAgICAgICAgICAgICAgICAgdmFfYXJnKHZhcmdzLCBjb25zdCBjaGFyICopOwogICAgICAgICAgICAgICAgIGlmIChvYmopIHsKLSAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKG9iaik7Ci0gICAgICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWShzLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShvYmopLCBzaXplKTsKLSAgICAgICAgICAgICAgICAgICAgcyArPSBzaXplOworICAgICAgICAgICAgICAgICAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKG9iaikgPD0gUHlVbmljb2RlX0tJTkQoc3RyaW5nKSk7CisgICAgICAgICAgICAgICAgICAgIGNvcHlfY2hhcmFjdGVycyhzdHJpbmcsIGksIG9iaiwgMCwgc2l6ZSk7CisgICAgICAgICAgICAgICAgICAgIGkgKz0gc2l6ZTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkocywgUHlVbmljb2RlX0FTX1VOSUNPREUoKmNhbGxyZXN1bHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKCpjYWxscmVzdWx0KSk7Ci0gICAgICAgICAgICAgICAgICAgIHMgKz0gUHlVbmljb2RlX0dFVF9TSVpFKCpjYWxscmVzdWx0KTsKKyAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKCpjYWxscmVzdWx0KTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKCpjYWxscmVzdWx0KSA8PQorICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0tJTkQoc3RyaW5nKSk7CisgICAgICAgICAgICAgICAgICAgIGNvcHlfY2hhcmFjdGVycyhzdHJpbmcsIGksICpjYWxscmVzdWx0LCAwLCBzaXplKTsKKyAgICAgICAgICAgICAgICAgICAgaSArPSBzaXplOwogICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoKmNhbGxyZXN1bHQpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICArK2NhbGxyZXN1bHQ7CkBAIC0xMTA2LDUyICsyNzA3LDQwIEBACiAgICAgICAgICAgICBjYXNlICdSJzoKICAgICAgICAgICAgIGNhc2UgJ0EnOgogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgKnVjb3B5OwotICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgdXNpemU7Ci0gICAgICAgICAgICAgICAgUHlfc3NpemVfdCB1cG9zOworICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKCpjYWxscmVzdWx0KTsKICAgICAgICAgICAgICAgICAvKiB1bnVzZWQsIHNpbmNlIHdlIGFscmVhZHkgaGF2ZSB0aGUgcmVzdWx0ICovCiAgICAgICAgICAgICAgICAgKHZvaWQpIHZhX2FyZyh2YXJncywgUHlPYmplY3QgKik7Ci0gICAgICAgICAgICAgICAgdWNvcHkgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqY2FsbHJlc3VsdCk7Ci0gICAgICAgICAgICAgICAgdXNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUoKmNhbGxyZXN1bHQpOwotICAgICAgICAgICAgICAgIGZvciAodXBvcyA9IDA7IHVwb3M8dXNpemU7KQotICAgICAgICAgICAgICAgICAgICAqcysrID0gdWNvcHlbdXBvcysrXTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQoKmNhbGxyZXN1bHQpIDw9IFB5VW5pY29kZV9LSU5EKHN0cmluZykpOworICAgICAgICAgICAgICAgIGNvcHlfY2hhcmFjdGVycyhzdHJpbmcsIGksICpjYWxscmVzdWx0LCAwLCAgc2l6ZSk7CisgICAgICAgICAgICAgICAgaSArPSBzaXplOwogICAgICAgICAgICAgICAgIC8qIFdlJ3JlIGRvbmUgd2l0aCB0aGUgdW5pY29kZSgpL3JlcHIoKSA9PiBmb3JnZXQgaXQgKi8KICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoKmNhbGxyZXN1bHQpOwogICAgICAgICAgICAgICAgIC8qIHN3aXRjaCB0byBuZXh0IHVuaWNvZGUoKS9yZXByKCkgcmVzdWx0ICovCiAgICAgICAgICAgICAgICAgKytjYWxscmVzdWx0OwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgY2FzZSAncCc6Ci0gICAgICAgICAgICAgICAgc3ByaW50ZihidWZmZXIsICIlcCIsIHZhX2FyZyh2YXJncywgdm9pZCopKTsKLSAgICAgICAgICAgICAgICAvKiAlcCBpcyBpbGwtZGVmaW5lZDogIGVuc3VyZSBsZWFkaW5nIDB4LiAqLwotICAgICAgICAgICAgICAgIGlmIChidWZmZXJbMV0gPT0gJ1gnKQotICAgICAgICAgICAgICAgICAgICBidWZmZXJbMV0gPSAneCc7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAoYnVmZmVyWzFdICE9ICd4JykgewotICAgICAgICAgICAgICAgICAgICBtZW1tb3ZlKGJ1ZmZlcisyLCBidWZmZXIsIHN0cmxlbihidWZmZXIpKzEpOwotICAgICAgICAgICAgICAgICAgICBidWZmZXJbMF0gPSAnMCc7Ci0gICAgICAgICAgICAgICAgICAgIGJ1ZmZlclsxXSA9ICd4JzsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgYXBwZW5kc3RyaW5nKGJ1ZmZlcik7Ci0gICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlICclJzoKLSAgICAgICAgICAgICAgICAqcysrID0gJyUnOworICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBpKyssICclJyk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgICAgIGFwcGVuZHN0cmluZyhwKTsKKyAgICAgICAgICAgICAgICBpICs9IHVuaWNvZGVfd3JpdGVfY3N0cihzdHJpbmcsIGksIHApOworICAgICAgICAgICAgICAgIGFzc2VydChpID09IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cmluZykpOwogICAgICAgICAgICAgICAgIGdvdG8gZW5kOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgICpzKysgPSAqZjsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBhc3NlcnQoaSA8IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cmluZykpOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGkrKywgKmYpOworICAgICAgICB9CiAgICAgfQorICAgIGFzc2VydChpID09IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cmluZykpOwogCiAgIGVuZDoKICAgICBpZiAoY2FsbHJlc3VsdHMpCiAgICAgICAgIFB5T2JqZWN0X0ZyZWUoY2FsbHJlc3VsdHMpOwotICAgIGlmIChhYnVmZmVyKQotICAgICAgICBQeU9iamVjdF9GcmVlKGFidWZmZXIpOwotICAgIFB5VW5pY29kZV9SZXNpemUoJnN0cmluZywgcyAtIFB5VW5pY29kZV9BU19VTklDT0RFKHN0cmluZykpOwotICAgIHJldHVybiBzdHJpbmc7CisgICAgaWYgKG51bWJlcnJlc3VsdHMpCisgICAgICAgIFB5T2JqZWN0X0ZyZWUobnVtYmVycmVzdWx0cyk7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHN0cmluZyk7CiAgIGZhaWw6CiAgICAgaWYgKGNhbGxyZXN1bHRzKSB7CiAgICAgICAgIFB5T2JqZWN0ICoqY2FsbHJlc3VsdDIgPSBjYWxscmVzdWx0czsKQEAgLTExNjEsMTMgKzI3NTAsMTEgQEAKICAgICAgICAgfQogICAgICAgICBQeU9iamVjdF9GcmVlKGNhbGxyZXN1bHRzKTsKICAgICB9Ci0gICAgaWYgKGFidWZmZXIpCi0gICAgICAgIFB5T2JqZWN0X0ZyZWUoYWJ1ZmZlcik7CisgICAgaWYgKG51bWJlcnJlc3VsdHMpCisgICAgICAgIFB5T2JqZWN0X0ZyZWUobnVtYmVycmVzdWx0cyk7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLSN1bmRlZiBhcHBlbmRzdHJpbmcKLQogUHlPYmplY3QgKgogUHlVbmljb2RlX0Zyb21Gb3JtYXQoY29uc3QgY2hhciAqZm9ybWF0LCAuLi4pCiB7CkBAIC0xMTg0LDYgKzI3NzEsOCBAQAogICAgIHJldHVybiByZXQ7CiB9CiAKKyNpZmRlZiBIQVZFX1dDSEFSX0gKKwogLyogSGVscGVyIGZ1bmN0aW9uIGZvciBQeVVuaWNvZGVfQXNXaWRlQ2hhcigpIGFuZCBQeVVuaWNvZGVfQXNXaWRlQ2hhclN0cmluZygpOgogICAgY29udmVydCBhIFVuaWNvZGUgb2JqZWN0IHRvIGEgd2lkZSBjaGFyYWN0ZXIgc3RyaW5nLgogCkBAIC0xMTk0LDEwMyArMjc4MywyNyBAQAogICAgICBjaGFyYWN0ZXIpIHdyaXR0ZW4gaW50byB3LiBXcml0ZSBhdCBtb3N0IHNpemUgd2lkZSBjaGFyYWN0ZXJzIChpbmNsdWRpbmcKICAgICAgdGhlIG51bGwgY2hhcmFjdGVyKS4gKi8KIHN0YXRpYyBQeV9zc2l6ZV90Ci11bmljb2RlX2Fzd2lkZWNoYXIoUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlLAordW5pY29kZV9hc3dpZGVjaGFyKFB5T2JqZWN0ICp1bmljb2RlLAogICAgICAgICAgICAgICAgICAgIHdjaGFyX3QgKncsCiAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplKQogewotI2lmIFB5X1VOSUNPREVfU0laRSA9PSBTSVpFT0ZfV0NIQVJfVAogICAgIFB5X3NzaXplX3QgcmVzOworICAgIGNvbnN0IHdjaGFyX3QgKndzdHI7CisKKyAgICB3c3RyID0gUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUodW5pY29kZSwgJnJlcyk7CisgICAgaWYgKHdzdHIgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCiAgICAgaWYgKHcgIT0gTlVMTCkgewotICAgICAgICByZXMgPSBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSk7CiAgICAgICAgIGlmIChzaXplID4gcmVzKQogICAgICAgICAgICAgc2l6ZSA9IHJlcyArIDE7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHJlcyA9IHNpemU7Ci0gICAgICAgIG1lbWNweSh3LCB1bmljb2RlLT5zdHIsIHNpemUgKiBzaXplb2Yod2NoYXJfdCkpOworICAgICAgICBQeV9NRU1DUFkodywgd3N0ciwgc2l6ZSAqIHNpemVvZih3Y2hhcl90KSk7CiAgICAgICAgIHJldHVybiByZXM7CiAgICAgfQogICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSArIDE7Ci0jZWxpZiBQeV9VTklDT0RFX1NJWkUgPT0gMiAmJiBTSVpFT0ZfV0NIQVJfVCA9PSA0Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqdTsKLSAgICBjb25zdCBQeV9VTklDT0RFICp1ZW5kOwotICAgIGNvbnN0IHdjaGFyX3QgKndvcmlnLCAqd2VuZDsKLSAgICBQeV9zc2l6ZV90IG5jaGFyOwotCi0gICAgdSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwotICAgIHVlbmQgPSB1ICsgUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpOwotICAgIGlmICh3ICE9IE5VTEwpIHsKLSAgICAgICAgd29yaWcgPSB3OwotICAgICAgICB3ZW5kID0gdyArIHNpemU7Ci0gICAgICAgIHdoaWxlICh1ICE9IHVlbmQgJiYgdyAhPSB3ZW5kKSB7Ci0gICAgICAgICAgICBpZiAoMHhEODAwIDw9IHVbMF0gJiYgdVswXSA8PSAweERCRkYKLSAgICAgICAgICAgICAgICAmJiAweERDMDAgPD0gdVsxXSAmJiB1WzFdIDw9IDB4REZGRikKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAqdyA9ICgoKHVbMF0gJiAweDNGRikgPDwgMTApIHwgKHVbMV0gJiAweDNGRikpICsgMHgxMDAwMDsKLSAgICAgICAgICAgICAgICB1ICs9IDI7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAqdyA9ICp1OwotICAgICAgICAgICAgICAgIHUrKzsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHcrKzsKLSAgICAgICAgfQotICAgICAgICBpZiAodyAhPSB3ZW5kKQotICAgICAgICAgICAgKncgPSBMJ1wwJzsKLSAgICAgICAgcmV0dXJuIHcgLSB3b3JpZzsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIG5jaGFyID0gMTsgLyogbnVsbCBjaGFyYWN0ZXIgYXQgdGhlIGVuZCAqLwotICAgICAgICB3aGlsZSAodSAhPSB1ZW5kKSB7Ci0gICAgICAgICAgICBpZiAoMHhEODAwIDw9IHVbMF0gJiYgdVswXSA8PSAweERCRkYKLSAgICAgICAgICAgICAgICAmJiAweERDMDAgPD0gdVsxXSAmJiB1WzFdIDw9IDB4REZGRikKLSAgICAgICAgICAgICAgICB1ICs9IDI7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgdSsrOwotICAgICAgICAgICAgbmNoYXIrKzsKLSAgICAgICAgfQotICAgIH0KLSAgICByZXR1cm4gbmNoYXI7Ci0jZWxpZiBQeV9VTklDT0RFX1NJWkUgPT0gNCAmJiBTSVpFT0ZfV0NIQVJfVCA9PSAyCi0gICAgcmVnaXN0ZXIgUHlfVU5JQ09ERSAqdSwgKnVlbmQsIG9yZGluYWw7Ci0gICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBpOwotICAgIHdjaGFyX3QgKndvcmlnLCAqd2VuZDsKLSAgICBQeV9zc2l6ZV90IG5jaGFyOwotCi0gICAgdSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwotICAgIHVlbmQgPSB1ICsgUHlVbmljb2RlX0dFVF9TSVpFKHUpOwotICAgIGlmICh3ICE9IE5VTEwpIHsKLSAgICAgICAgd29yaWcgPSB3OwotICAgICAgICB3ZW5kID0gdyArIHNpemU7Ci0gICAgICAgIHdoaWxlICh1ICE9IHVlbmQgJiYgdyAhPSB3ZW5kKSB7Ci0gICAgICAgICAgICBvcmRpbmFsID0gKnU7Ci0gICAgICAgICAgICBpZiAob3JkaW5hbCA+IDB4ZmZmZikgewotICAgICAgICAgICAgICAgIG9yZGluYWwgLT0gMHgxMDAwMDsKLSAgICAgICAgICAgICAgICAqdysrID0gMHhEODAwIHwgKG9yZGluYWwgPj4gMTApOwotICAgICAgICAgICAgICAgICp3KysgPSAweERDMDAgfCAob3JkaW5hbCAmIDB4M0ZGKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAqdysrID0gb3JkaW5hbDsKLSAgICAgICAgICAgIHUrKzsKLSAgICAgICAgfQotICAgICAgICBpZiAodyAhPSB3ZW5kKQotICAgICAgICAgICAgKncgPSAwOwotICAgICAgICByZXR1cm4gdyAtIHdvcmlnOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgbmNoYXIgPSAxOyAvKiBudWxsIGNoYXJhY3RlciAqLwotICAgICAgICB3aGlsZSAodSAhPSB1ZW5kKSB7Ci0gICAgICAgICAgICBpZiAoKnUgPiAweGZmZmYpCi0gICAgICAgICAgICAgICAgbmNoYXIgKz0gMjsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBuY2hhcisrOwotICAgICAgICAgICAgdSsrOwotICAgICAgICB9Ci0gICAgICAgIHJldHVybiBuY2hhcjsKLSAgICB9Ci0jZWxzZQotIyAgZXJyb3IgInVuc3VwcG9ydGVkIHdjaGFyX3QgYW5kIFB5X1VOSUNPREUgc2l6ZXMsIHNlZSBpc3N1ZSAjODY3MCIKLSNlbmRpZgorICAgICAgICByZXR1cm4gcmVzICsgMTsKIH0KIAogUHlfc3NpemVfdApAQCAtMTMwMiw3ICsyODE1LDcgQEAKICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9Ci0gICAgcmV0dXJuIHVuaWNvZGVfYXN3aWRlY2hhcigoUHlVbmljb2RlT2JqZWN0Kil1bmljb2RlLCB3LCBzaXplKTsKKyAgICByZXR1cm4gdW5pY29kZV9hc3dpZGVjaGFyKHVuaWNvZGUsIHcsIHNpemUpOwogfQogCiB3Y2hhcl90KgpAQCAtMTMxNyw3ICsyODMwLDkgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgYnVmbGVuID0gdW5pY29kZV9hc3dpZGVjaGFyKChQeVVuaWNvZGVPYmplY3QgKil1bmljb2RlLCBOVUxMLCAwKTsKKyAgICBidWZsZW4gPSB1bmljb2RlX2Fzd2lkZWNoYXIodW5pY29kZSwgTlVMTCwgMCk7CisgICAgaWYgKGJ1ZmxlbiA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKFBZX1NTSVpFX1RfTUFYIC8gc2l6ZW9mKHdjaGFyX3QpIDwgYnVmbGVuKSB7CiAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTMyOCw1MCArMjg0Myw1MiBAQAogICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgYnVmbGVuID0gdW5pY29kZV9hc3dpZGVjaGFyKChQeVVuaWNvZGVPYmplY3QgKil1bmljb2RlLCBidWZmZXIsIGJ1Zmxlbik7CisgICAgYnVmbGVuID0gdW5pY29kZV9hc3dpZGVjaGFyKHVuaWNvZGUsIGJ1ZmZlciwgYnVmbGVuKTsKKyAgICBpZiAoYnVmbGVuID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoc2l6ZSAhPSBOVUxMKQogICAgICAgICAqc2l6ZSA9IGJ1ZmxlbjsKICAgICByZXR1cm4gYnVmZmVyOwogfQogCi0jZW5kaWYKKyNlbmRpZiAvKiBIQVZFX1dDSEFSX0ggKi8KIAotUHlPYmplY3QgKlB5VW5pY29kZV9Gcm9tT3JkaW5hbChpbnQgb3JkaW5hbCkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Gcm9tT3JkaW5hbChpbnQgb3JkaW5hbCkKIHsKLSAgICBQeV9VTklDT0RFIHNbMl07Ci0KLSAgICBpZiAob3JkaW5hbCA8IDAgfHwgb3JkaW5hbCA+IDB4MTBmZmZmKSB7CisgICAgUHlPYmplY3QgKnY7CisgICAgaWYgKG9yZGluYWwgPCAwIHx8IG9yZGluYWwgPiBNQVhfVU5JQ09ERSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJjaHIoKSBhcmcgbm90IGluIHJhbmdlKDB4MTEwMDAwKSIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgaWYgKG9yZGluYWwgPiAweGZmZmYpIHsKLSAgICAgICAgb3JkaW5hbCAtPSAweDEwMDAwOwotICAgICAgICBzWzBdID0gMHhEODAwIHwgKG9yZGluYWwgPj4gMTApOwotICAgICAgICBzWzFdID0gMHhEQzAwIHwgKG9yZGluYWwgJiAweDNGRik7Ci0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocywgMik7Ci0gICAgfQotI2VuZGlmCisgICAgaWYgKG9yZGluYWwgPCAyNTYpCisgICAgICAgIHJldHVybiBnZXRfbGF0aW4xX2NoYXIob3JkaW5hbCk7CiAKLSAgICBzWzBdID0gKFB5X1VOSUNPREUpb3JkaW5hbDsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHMsIDEpOworICAgIHYgPSBQeVVuaWNvZGVfTmV3KDEsIG9yZGluYWwpOworICAgIGlmICh2ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIFB5VW5pY29kZV9XUklURShQeVVuaWNvZGVfS0lORCh2KSwgUHlVbmljb2RlX0RBVEEodiksIDAsIG9yZGluYWwpOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kodiwgMSkpOworICAgIHJldHVybiB2OwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0Zyb21PYmplY3QocmVnaXN0ZXIgUHlPYmplY3QgKm9iaikKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Gcm9tT2JqZWN0KHJlZ2lzdGVyIFB5T2JqZWN0ICpvYmopCiB7CiAgICAgLyogWFhYIFBlcmhhcHMgd2Ugc2hvdWxkIG1ha2UgdGhpcyBBUEkgYW4gYWxpYXMgb2YKICAgICAgICBQeU9iamVjdF9TdHIoKSBpbnN0ZWFkID8hICovCiAgICAgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KG9iaikpIHsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShvYmopID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIFB5X0lOQ1JFRihvYmopOwogICAgICAgICByZXR1cm4gb2JqOwogICAgIH0KICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKG9iaikpIHsKICAgICAgICAgLyogRm9yIGEgVW5pY29kZSBzdWJ0eXBlIHRoYXQncyBub3QgYSBVbmljb2RlIG9iamVjdCwKICAgICAgICAgICAgcmV0dXJuIGEgdHJ1ZSBVbmljb2RlIG9iamVjdCB3aXRoIHRoZSBzYW1lIGRhdGEuICovCi0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoUHlVbmljb2RlX0FTX1VOSUNPREUob2JqKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUob2JqKSk7CisgICAgICAgIHJldHVybiBfUHlVbmljb2RlX0NvcHkob2JqKTsKICAgICB9CiAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgIkNhbid0IGNvbnZlcnQgJyUuMTAwcycgb2JqZWN0IHRvIHN0ciBpbXBsaWNpdGx5IiwKQEAgLTEzNzksOSArMjg5NiwxMCBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0Zyb21FbmNvZGVkT2JqZWN0KHJlZ2lzdGVyIFB5T2JqZWN0ICpvYmosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRnJvbUVuY29kZWRPYmplY3QocmVnaXN0ZXIgUHlPYmplY3QgKm9iaiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgUHlfYnVmZmVyIGJ1ZmZlcjsKICAgICBQeU9iamVjdCAqdjsKQEAgLTEzOTUsNyArMjkxMyw3IEBACiAgICAgaWYgKFB5Qnl0ZXNfQ2hlY2sob2JqKSkgewogICAgICAgICBpZiAoUHlCeXRlc19HRVRfU0laRShvYmopID09IDApIHsKICAgICAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKLSAgICAgICAgICAgIHYgPSAoUHlPYmplY3QgKikgdW5pY29kZV9lbXB0eTsKKyAgICAgICAgICAgIHYgPSB1bmljb2RlX2VtcHR5OwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgdiA9IFB5VW5pY29kZV9EZWNvZGUoCkBAIC0xNDIyLDcgKzI5NDAsNyBAQAogCiAgICAgaWYgKGJ1ZmZlci5sZW4gPT0gMCkgewogICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7Ci0gICAgICAgIHYgPSAoUHlPYmplY3QgKikgdW5pY29kZV9lbXB0eTsKKyAgICAgICAgdiA9IHVuaWNvZGVfZW1wdHk7CiAgICAgfQogICAgIGVsc2UKICAgICAgICAgdiA9IFB5VW5pY29kZV9EZWNvZGUoKGNoYXIqKSBidWZmZXIuYnVmLCBidWZmZXIubGVuLCBlbmNvZGluZywgZXJyb3JzKTsKQEAgLTE0NDMsNiArMjk2MSwxMCBAQAogICAgIGNoYXIgKmw7CiAgICAgY2hhciAqbF9lbmQ7CiAKKyAgICBpZiAoZW5jb2RpbmcgPT0gTlVMTCkgeworICAgICAgICBzdHJjcHkobG93ZXIsICJ1dGYtOCIpOworICAgICAgICByZXR1cm4gMTsKKyAgICB9CiAgICAgZSA9IGVuY29kaW5nOwogICAgIGwgPSBsb3dlcjsKICAgICBsX2VuZCA9ICZsb3dlcltsb3dlcl9sZW4gLSAxXTsKQEAgLTE0NjQsMjYgKzI5ODYsMjYgQEAKICAgICByZXR1cm4gMTsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9EZWNvZGUoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0RlY29kZShjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLAorICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgUHlPYmplY3QgKmJ1ZmZlciA9IE5VTEwsICp1bmljb2RlOwogICAgIFB5X2J1ZmZlciBpbmZvOwogICAgIGNoYXIgbG93ZXJbMTFdOyAgLyogRW5vdWdoIGZvciBhbnkgZW5jb2Rpbmcgc2hvcnRjdXQgKi8KIAotICAgIGlmIChlbmNvZGluZyA9PSBOVUxMKQotICAgICAgICBlbmNvZGluZyA9IFB5VW5pY29kZV9HZXREZWZhdWx0RW5jb2RpbmcoKTsKLQogICAgIC8qIFNob3J0Y3V0cyBmb3IgY29tbW9uIGRlZmF1bHQgZW5jb2RpbmdzICovCiAgICAgaWYgKG5vcm1hbGl6ZV9lbmNvZGluZyhlbmNvZGluZywgbG93ZXIsIHNpemVvZihsb3dlcikpKSB7Ci0gICAgICAgIGlmIChzdHJjbXAobG93ZXIsICJ1dGYtOCIpID09IDApCi0gICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZVVURjgocywgc2l6ZSwgZXJyb3JzKTsKKyAgICAgICAgaWYgKChzdHJjbXAobG93ZXIsICJ1dGYtOCIpID09IDApIHx8CisgICAgICAgICAgICAoc3RyY21wKGxvd2VyLCAidXRmOCIpID09IDApKQorICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWwocywgc2l6ZSwgZXJyb3JzLCBOVUxMKTsKICAgICAgICAgZWxzZSBpZiAoKHN0cmNtcChsb3dlciwgImxhdGluLTEiKSA9PSAwKSB8fAorICAgICAgICAgICAgICAgICAoc3RyY21wKGxvd2VyLCAibGF0aW4xIikgPT0gMCkgfHwKICAgICAgICAgICAgICAgICAgKHN0cmNtcChsb3dlciwgImlzby04ODU5LTEiKSA9PSAwKSkKICAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTGF0aW4xKHMsIHNpemUsIGVycm9ycyk7Ci0jaWYgZGVmaW5lZChNU19XSU5ET1dTKSAmJiBkZWZpbmVkKEhBVkVfVVNBQkxFX1dDSEFSX1QpCisjaWZkZWYgSEFWRV9NQkNTCiAgICAgICAgIGVsc2UgaWYgKHN0cmNtcChsb3dlciwgIm1iY3MiKSA9PSAwKQogICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVNQkNTKHMsIHNpemUsIGVycm9ycyk7CiAjZW5kaWYKQEAgLTE1MTMsMTYgKzMwMzUsMTcgQEAKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIH0KICAgICBQeV9ERUNSRUYoYnVmZmVyKTsKLSAgICByZXR1cm4gdW5pY29kZTsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQodW5pY29kZSk7CiAKICAgb25FcnJvcjoKICAgICBQeV9YREVDUkVGKGJ1ZmZlcik7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNEZWNvZGVkT2JqZWN0KFB5T2JqZWN0ICp1bmljb2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfQXNEZWNvZGVkT2JqZWN0KFB5T2JqZWN0ICp1bmljb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIFB5T2JqZWN0ICp2OwogCkBAIC0xNTM4LDE1ICszMDYxLDE2IEBACiAgICAgdiA9IFB5Q29kZWNfRGVjb2RlKHVuaWNvZGUsIGVuY29kaW5nLCBlcnJvcnMpOwogICAgIGlmICh2ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICByZXR1cm4gdjsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQodik7CiAKICAgb25FcnJvcjoKICAgICByZXR1cm4gTlVMTDsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9Bc0RlY29kZWRVbmljb2RlKFB5T2JqZWN0ICp1bmljb2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Bc0RlY29kZWRVbmljb2RlKFB5T2JqZWN0ICp1bmljb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgUHlPYmplY3QgKnY7CiAKQEAgLTE1NjksMTYgKzMwOTMsMTcgQEAKICAgICAgICAgUHlfREVDUkVGKHYpOwogICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgfQotICAgIHJldHVybiB2OworICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdCh2KTsKIAogICBvbkVycm9yOgogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0VuY29kZShjb25zdCBQeV9VTklDT0RFICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRW5jb2RlKGNvbnN0IFB5X1VOSUNPREUgKnMsCisgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCisgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBQeU9iamVjdCAqdiwgKnVuaWNvZGU7CiAKQEAgLTE1OTAsOSArMzExNSwxMCBAQAogICAgIHJldHVybiB2OwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzRW5jb2RlZE9iamVjdChQeU9iamVjdCAqdW5pY29kZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0FzRW5jb2RlZE9iamVjdChQeU9iamVjdCAqdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBQeU9iamVjdCAqdjsKIApAQCAtMTYxNCwxNyArMzE0MCwxOTIgQEAKICAgICByZXR1cm4gTlVMTDsKIH0KIAorc3RhdGljIHNpemVfdAord2NzdG9tYnNfZXJyb3Jwb3MoY29uc3Qgd2NoYXJfdCAqd3N0cikKK3sKKyAgICBzaXplX3QgbGVuOworI2lmIFNJWkVPRl9XQ0hBUl9UID09IDIKKyAgICB3Y2hhcl90IGJ1ZlszXTsKKyNlbHNlCisgICAgd2NoYXJfdCBidWZbMl07CisjZW5kaWYKKyAgICBjaGFyIG91dGJ1ZltNQl9MRU5fTUFYXTsKKyAgICBjb25zdCB3Y2hhcl90ICpzdGFydCwgKnByZXZpb3VzOworCisjaWYgU0laRU9GX1dDSEFSX1QgPT0gMgorICAgIGJ1ZlsyXSA9IDA7CisjZWxzZQorICAgIGJ1ZlsxXSA9IDA7CisjZW5kaWYKKyAgICBzdGFydCA9IHdzdHI7CisgICAgd2hpbGUgKCp3c3RyICE9IEwnXDAnKQorICAgIHsKKyAgICAgICAgcHJldmlvdXMgPSB3c3RyOworI2lmIFNJWkVPRl9XQ0hBUl9UID09IDIKKyAgICAgICAgaWYgKFB5X1VOSUNPREVfSVNfSElHSF9TVVJST0dBVEUod3N0clswXSkKKyAgICAgICAgICAgICYmIFB5X1VOSUNPREVfSVNfTE9XX1NVUlJPR0FURSh3c3RyWzFdKSkKKyAgICAgICAgeworICAgICAgICAgICAgYnVmWzBdID0gd3N0clswXTsKKyAgICAgICAgICAgIGJ1ZlsxXSA9IHdzdHJbMV07CisgICAgICAgICAgICB3c3RyICs9IDI7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBidWZbMF0gPSAqd3N0cjsKKyAgICAgICAgICAgIGJ1ZlsxXSA9IDA7CisgICAgICAgICAgICB3c3RyKys7CisgICAgICAgIH0KKyNlbHNlCisgICAgICAgIGJ1ZlswXSA9ICp3c3RyOworICAgICAgICB3c3RyKys7CisjZW5kaWYKKyAgICAgICAgbGVuID0gd2NzdG9tYnMob3V0YnVmLCBidWYsIHNpemVvZihvdXRidWYpKTsKKyAgICAgICAgaWYgKGxlbiA9PSAoc2l6ZV90KS0xKQorICAgICAgICAgICAgcmV0dXJuIHByZXZpb3VzIC0gc3RhcnQ7CisgICAgfQorCisgICAgLyogZmFpbGVkIHRvIGZpbmQgdGhlIHVuZW5jb2RhYmxlIGNoYXJhY3RlciAqLworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50Citsb2NhbGVfZXJyb3JfaGFuZGxlcihjb25zdCBjaGFyICplcnJvcnMsIGludCAqc3Vycm9nYXRlZXNjYXBlKQoreworICAgIGlmIChlcnJvcnMgPT0gTlVMTCkgeworICAgICAgICAqc3Vycm9nYXRlZXNjYXBlID0gMDsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgaWYgKHN0cmNtcChlcnJvcnMsICJzdHJpY3QiKSA9PSAwKSB7CisgICAgICAgICpzdXJyb2dhdGVlc2NhcGUgPSAwOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgaWYgKHN0cmNtcChlcnJvcnMsICJzdXJyb2dhdGVlc2NhcGUiKSA9PSAwKSB7CisgICAgICAgICpzdXJyb2dhdGVlc2NhcGUgPSAxOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICJvbmx5ICdzdHJpY3QnIGFuZCAnc3Vycm9nYXRlZXNjYXBlJyBlcnJvciBoYW5kbGVycyAiCisgICAgICAgICAgICAgICAgICJhcmUgc3VwcG9ydGVkLCBub3QgJyVzJyIsCisgICAgICAgICAgICAgICAgIGVycm9ycyk7CisgICAgcmV0dXJuIC0xOworfQorCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRW5jb2RlTG9jYWxlKFB5T2JqZWN0ICp1bmljb2RlLCBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgUHlfc3NpemVfdCB3bGVuLCB3bGVuMjsKKyAgICB3Y2hhcl90ICp3c3RyOworICAgIFB5T2JqZWN0ICpieXRlcyA9IE5VTEw7CisgICAgY2hhciAqZXJybXNnOworICAgIFB5T2JqZWN0ICpyZWFzb247CisgICAgUHlPYmplY3QgKmV4YzsKKyAgICBzaXplX3QgZXJyb3JfcG9zOworICAgIGludCBzdXJyb2dhdGVlc2NhcGU7CisKKyAgICBpZiAobG9jYWxlX2Vycm9yX2hhbmRsZXIoZXJyb3JzLCAmc3Vycm9nYXRlZXNjYXBlKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgd3N0ciA9IFB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nKHVuaWNvZGUsICZ3bGVuKTsKKyAgICBpZiAod3N0ciA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHdsZW4yID0gd2NzbGVuKHdzdHIpOworICAgIGlmICh3bGVuMiAhPSB3bGVuKSB7CisgICAgICAgIFB5TWVtX0ZyZWUod3N0cik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJlbWJlZGRlZCBudWxsIGNoYXJhY3RlciIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoc3Vycm9nYXRlZXNjYXBlKSB7CisgICAgICAgIC8qIGxvY2FsZSBlbmNvZGluZyB3aXRoIHN1cnJvZ2F0ZWVzY2FwZSAqLworICAgICAgICBjaGFyICpzdHI7CisKKyAgICAgICAgc3RyID0gX1B5X3djaGFyMmNoYXIod3N0ciwgJmVycm9yX3Bvcyk7CisgICAgICAgIGlmIChzdHIgPT0gTlVMTCkgeworICAgICAgICAgICAgaWYgKGVycm9yX3BvcyA9PSAoc2l6ZV90KS0xKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgICAgICBQeU1lbV9GcmVlKHdzdHIpOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgZ290byBlbmNvZGVfZXJyb3I7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgUHlNZW1fRnJlZSh3c3RyKTsKKworICAgICAgICBieXRlcyA9IFB5Qnl0ZXNfRnJvbVN0cmluZyhzdHIpOworICAgICAgICBQeU1lbV9GcmVlKHN0cik7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBzaXplX3QgbGVuLCBsZW4yOworCisgICAgICAgIGxlbiA9IHdjc3RvbWJzKE5VTEwsIHdzdHIsIDApOworICAgICAgICBpZiAobGVuID09IChzaXplX3QpLTEpIHsKKyAgICAgICAgICAgIGVycm9yX3BvcyA9IChzaXplX3QpLTE7CisgICAgICAgICAgICBnb3RvIGVuY29kZV9lcnJvcjsKKyAgICAgICAgfQorCisgICAgICAgIGJ5dGVzID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBsZW4pOworICAgICAgICBpZiAoYnl0ZXMgPT0gTlVMTCkgeworICAgICAgICAgICAgUHlNZW1fRnJlZSh3c3RyKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisKKyAgICAgICAgbGVuMiA9IHdjc3RvbWJzKFB5Qnl0ZXNfQVNfU1RSSU5HKGJ5dGVzKSwgd3N0ciwgbGVuKzEpOworICAgICAgICBpZiAobGVuMiA9PSAoc2l6ZV90KS0xIHx8IGxlbjIgPiBsZW4pIHsKKyAgICAgICAgICAgIGVycm9yX3BvcyA9IChzaXplX3QpLTE7CisgICAgICAgICAgICBnb3RvIGVuY29kZV9lcnJvcjsKKyAgICAgICAgfQorICAgICAgICBQeU1lbV9GcmVlKHdzdHIpOworICAgIH0KKyAgICByZXR1cm4gYnl0ZXM7CisKK2VuY29kZV9lcnJvcjoKKyAgICBlcnJtc2cgPSBzdHJlcnJvcihlcnJubyk7CisgICAgYXNzZXJ0KGVycm1zZyAhPSBOVUxMKTsKKworICAgIGlmIChlcnJvcl9wb3MgPT0gKHNpemVfdCktMSkKKyAgICAgICAgZXJyb3JfcG9zID0gd2NzdG9tYnNfZXJyb3Jwb3Mod3N0cik7CisKKyAgICBQeU1lbV9GcmVlKHdzdHIpOworICAgIFB5X1hERUNSRUYoYnl0ZXMpOworCisgICAgaWYgKGVycm1zZyAhPSBOVUxMKSB7CisgICAgICAgIHNpemVfdCBlcnJsZW47CisgICAgICAgIHdzdHIgPSBfUHlfY2hhcjJ3Y2hhcihlcnJtc2csICZlcnJsZW4pOworICAgICAgICBpZiAod3N0ciAhPSBOVUxMKSB7CisgICAgICAgICAgICByZWFzb24gPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHdzdHIsIGVycmxlbik7CisgICAgICAgICAgICBQeU1lbV9GcmVlKHdzdHIpOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIGVycm1zZyA9IE5VTEw7CisgICAgfQorICAgIGlmIChlcnJtc2cgPT0gTlVMTCkKKyAgICAgICAgcmVhc29uID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoCisgICAgICAgICAgICAid2NzdG9tYnMoKSBlbmNvdW50ZXJlZCBhbiB1bmVuY29kYWJsZSAiCisgICAgICAgICAgICAid2lkZSBjaGFyYWN0ZXIiKTsKKyAgICBpZiAocmVhc29uID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgZXhjID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uKFB5RXhjX1VuaWNvZGVFbmNvZGVFcnJvciwgInNPbm5PIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxvY2FsZSIsIHVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeV9zc2l6ZV90KWVycm9yX3BvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5X3NzaXplX3QpKGVycm9yX3BvcysxKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhc29uKTsKKyAgICBQeV9ERUNSRUYocmVhc29uKTsKKyAgICBpZiAoZXhjICE9IE5VTEwpIHsKKyAgICAgICAgUHlDb2RlY19TdHJpY3RFcnJvcnMoZXhjKTsKKyAgICAgICAgUHlfWERFQ1JFRihleGMpOworICAgIH0KKyAgICByZXR1cm4gTlVMTDsKK30KKwogUHlPYmplY3QgKgogUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChQeU9iamVjdCAqdW5pY29kZSkKIHsKLSNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpICYmIGRlZmluZWQoSEFWRV9VU0FCTEVfV0NIQVJfVCkKLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZU1CQ1MoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisjaWZkZWYgSEFWRV9NQkNTCisgICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVDb2RlUGFnZShDUF9BQ1AsIHVuaWNvZGUsIE5VTEwpOwogI2VsaWYgZGVmaW5lZChfX0FQUExFX18pCi0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEY4KFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdXJyb2dhdGVlc2NhcGUiKTsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9Bc1VURjhTdHJpbmcodW5pY29kZSwgInN1cnJvZ2F0ZWVzY2FwZSIpOwogI2Vsc2UKICAgICBQeUludGVycHJldGVyU3RhdGUgKmludGVycCA9IFB5VGhyZWFkU3RhdGVfR0VUKCktPmludGVycDsKICAgICAvKiBCb290c3RyYXAgY2hlY2s6IGlmIHRoZSBmaWxlc3lzdGVtIGNvZGVjIGlzIGltcGxlbWVudGVkIGluIFB5dGhvbiwgd2UKQEAgLTE2NDIsNDYgKzMzNDMsMTUgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN1cnJvZ2F0ZWVzY2FwZSIpOwogICAgIH0KICAgICBlbHNlIHsKLSAgICAgICAgLyogbG9jYWxlIGVuY29kaW5nIHdpdGggc3Vycm9nYXRlZXNjYXBlICovCi0gICAgICAgIHdjaGFyX3QgKndjaGFyOwotICAgICAgICBjaGFyICpieXRlczsKLSAgICAgICAgUHlPYmplY3QgKmJ5dGVzX29iajsKLSAgICAgICAgc2l6ZV90IGVycm9yX3BvczsKLQotICAgICAgICB3Y2hhciA9IFB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nKHVuaWNvZGUsIE5VTEwpOwotICAgICAgICBpZiAod2NoYXIgPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBieXRlcyA9IF9QeV93Y2hhcjJjaGFyKHdjaGFyLCAmZXJyb3JfcG9zKTsKLSAgICAgICAgaWYgKGJ5dGVzID09IE5VTEwpIHsKLSAgICAgICAgICAgIGlmIChlcnJvcl9wb3MgIT0gKHNpemVfdCktMSkgewotICAgICAgICAgICAgICAgIGNoYXIgKmVycm1zZyA9IHN0cmVycm9yKGVycm5vKTsKLSAgICAgICAgICAgICAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKLSAgICAgICAgICAgICAgICBpZiAoZXJybXNnID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgIGVycm1zZyA9ICJQeV93Y2hhcjJjaGFyKCkgZmFpbGVkIjsKLSAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsCi0gICAgICAgICAgICAgICAgICAgICJmaWxlc3lzdGVtZW5jb2RpbmciLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwgUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICBlcnJvcl9wb3MsIGVycm9yX3BvcysxLAotICAgICAgICAgICAgICAgICAgICBlcnJtc2cpOwotICAgICAgICAgICAgICAgIFB5X1hERUNSRUYoZXhjKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICAgICAgUHlNZW1fRnJlZSh3Y2hhcik7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBQeU1lbV9GcmVlKHdjaGFyKTsKLQotICAgICAgICBieXRlc19vYmogPSBQeUJ5dGVzX0Zyb21TdHJpbmcoYnl0ZXMpOwotICAgICAgICBQeU1lbV9GcmVlKGJ5dGVzKTsKLSAgICAgICAgcmV0dXJuIGJ5dGVzX29iajsKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVMb2NhbGUodW5pY29kZSwgInN1cnJvZ2F0ZWVzY2FwZSIpOwogICAgIH0KICNlbmRpZgogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBQeU9iamVjdCAqdjsKICAgICBjaGFyIGxvd2VyWzExXTsgIC8qIEVub3VnaCBmb3IgYW55IGVuY29kaW5nIHNob3J0Y3V0ICovCkBAIC0xNjkxLDQ2ICszMzYxLDI3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGlmIChlbmNvZGluZyA9PSBOVUxMKQotICAgICAgICBlbmNvZGluZyA9IFB5VW5pY29kZV9HZXREZWZhdWx0RW5jb2RpbmcoKTsKLQogICAgIC8qIFNob3J0Y3V0cyBmb3IgY29tbW9uIGRlZmF1bHQgZW5jb2RpbmdzICovCiAgICAgaWYgKG5vcm1hbGl6ZV9lbmNvZGluZyhlbmNvZGluZywgbG93ZXIsIHNpemVvZihsb3dlcikpKSB7Ci0gICAgICAgIGlmIChzdHJjbXAobG93ZXIsICJ1dGYtOCIpID09IDApCi0gICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZVVURjgoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyk7CisgICAgICAgIGlmICgoc3RyY21wKGxvd2VyLCAidXRmLTgiKSA9PSAwKSB8fAorICAgICAgICAgICAgKHN0cmNtcChsb3dlciwgInV0ZjgiKSA9PSAwKSkKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKGVycm9ycyA9PSBOVUxMIHx8IHN0cmNtcChlcnJvcnMsICJzdHJpY3QiKSA9PSAwKQorICAgICAgICAgICAgICAgIHJldHVybiBfUHlVbmljb2RlX0FzVVRGOFN0cmluZyh1bmljb2RlLCBOVUxMKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXR1cm4gX1B5VW5pY29kZV9Bc1VURjhTdHJpbmcodW5pY29kZSwgZXJyb3JzKTsKKyAgICAgICAgfQogICAgICAgICBlbHNlIGlmICgoc3RyY21wKGxvd2VyLCAibGF0aW4tMSIpID09IDApIHx8CisgICAgICAgICAgICAgICAgIChzdHJjbXAobG93ZXIsICJsYXRpbjEiKSA9PSAwKSB8fAogICAgICAgICAgICAgICAgICAoc3RyY21wKGxvd2VyLCAiaXNvLTg4NTktMSIpID09IDApKQotICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVMYXRpbjEoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMpOwotI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgZGVmaW5lZChIQVZFX1VTQUJMRV9XQ0hBUl9UKQorICAgICAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfQXNMYXRpbjFTdHJpbmcodW5pY29kZSwgZXJyb3JzKTsKKyNpZmRlZiBIQVZFX01CQ1MKICAgICAgICAgZWxzZSBpZiAoc3RyY21wKGxvd2VyLCAibWJjcyIpID09IDApCi0gICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZU1CQ1MoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyk7CisgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZUNvZGVQYWdlKENQX0FDUCwgdW5pY29kZSwgZXJyb3JzKTsKICNlbmRpZgogICAgICAgICBlbHNlIGlmIChzdHJjbXAobG93ZXIsICJhc2NpaSIpID09IDApCi0gICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZUFTQ0lJKFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyk7CisgICAgICAgICAgICByZXR1cm4gX1B5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKHVuaWNvZGUsIGVycm9ycyk7CiAgICAgfQotICAgIC8qIER1cmluZyBib290c3RyYXAsIHdlIG1heSBuZWVkIHRvIGZpbmQgdGhlIGVuY29kaW5ncwotICAgICAgIHBhY2thZ2UsIHRvIGxvYWQgdGhlIGZpbGUgc3lzdGVtIGVuY29kaW5nLCBhbmQgcmVxdWlyZSB0aGUKLSAgICAgICBmaWxlIHN5c3RlbSBlbmNvZGluZyBpbiBvcmRlciB0byBsb2FkIHRoZSBlbmNvZGluZ3MKLSAgICAgICBwYWNrYWdlLgotCi0gICAgICAgQnJlYWsgb3V0IG9mIHRoaXMgZGVwZW5kZW5jeSBieSBhc3N1bWluZyB0aGF0IHRoZSBwYXRoIHRvCi0gICAgICAgdGhlIGVuY29kaW5ncyBtb2R1bGUgaXMgQVNDSUktb25seS4gIFhYWCBjb3VsZCB0cnkgd2NzdG9tYnMKLSAgICAgICBpbnN0ZWFkLCBpZiB0aGUgZmlsZSBzeXN0ZW0gZW5jb2RpbmcgaXMgdGhlIGxvY2FsZSdzCi0gICAgICAgZW5jb2RpbmcuICovCi0gICAgaWYgKFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgJiYKLSAgICAgICAgICAgICBzdHJjbXAoZW5jb2RpbmcsIFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcpID09IDAgJiYKLSAgICAgICAgICAgICAhUHlUaHJlYWRTdGF0ZV9HRVQoKS0+aW50ZXJwLT5jb2RlY3NfaW5pdGlhbGl6ZWQpCi0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlQVNDSUkoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyk7CiAKICAgICAvKiBFbmNvZGUgdmlhIHRoZSBjb2RlYyByZWdpc3RyeSAqLwogICAgIHYgPSBQeUNvZGVjX0VuY29kZSh1bmljb2RlLCBlbmNvZGluZywgZXJyb3JzKTsKQEAgLTE3NjYsOSArMzQxNywxMCBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzRW5jb2RlZFVuaWNvZGUoUHlPYmplY3QgKnVuaWNvZGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0FzRW5jb2RlZFVuaWNvZGUoUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBQeU9iamVjdCAqdjsKIApAQCAtMTc5NywyNCArMzQ0OSwxNTEgQEAKICAgICByZXR1cm4gTlVMTDsKIH0KIAotUHlPYmplY3QgKl9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorc3RhdGljIHNpemVfdAorbWJzdG93Y3NfZXJyb3Jwb3MoY29uc3QgY2hhciAqc3RyLCBzaXplX3QgbGVuKQogewotICAgIFB5T2JqZWN0ICp2ID0gKChQeVVuaWNvZGVPYmplY3QgKil1bmljb2RlKS0+ZGVmZW5jOwotICAgIGlmICh2KQotICAgICAgICByZXR1cm4gdjsKLSAgICBpZiAoZXJyb3JzICE9IE5VTEwpCi0gICAgICAgIFB5X0ZhdGFsRXJyb3IoIm5vbi1OVUxMIGVuY29kaW5nIGluIF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyIpOwotICAgIHYgPSBQeVVuaWNvZGVfRW5jb2RlVVRGOChQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKLSAgICBpZiAoIXYpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgICgoUHlVbmljb2RlT2JqZWN0ICopdW5pY29kZSktPmRlZmVuYyA9IHY7Ci0gICAgcmV0dXJuIHY7CisjaWZkZWYgSEFWRV9NQlJUT1dDCisgICAgY29uc3QgY2hhciAqc3RhcnQgPSBzdHI7CisgICAgbWJzdGF0ZV90IG1iczsKKyAgICBzaXplX3QgY29udmVydGVkOworICAgIHdjaGFyX3QgY2g7CisKKyAgICBtZW1zZXQoJm1icywgMCwgc2l6ZW9mIG1icyk7CisgICAgd2hpbGUgKGxlbikKKyAgICB7CisgICAgICAgIGNvbnZlcnRlZCA9IG1icnRvd2MoJmNoLCAoY2hhciopc3RyLCBsZW4sICZtYnMpOworICAgICAgICBpZiAoY29udmVydGVkID09IDApCisgICAgICAgICAgICAvKiBSZWFjaGVkIGVuZCBvZiBzdHJpbmcgKi8KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBpZiAoY29udmVydGVkID09IChzaXplX3QpLTEgfHwgY29udmVydGVkID09IChzaXplX3QpLTIpIHsKKyAgICAgICAgICAgIC8qIENvbnZlcnNpb24gZXJyb3Igb3IgaW5jb21wbGV0ZSBjaGFyYWN0ZXIgKi8KKyAgICAgICAgICAgIHJldHVybiBzdHIgLSBzdGFydDsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIHN0ciArPSBjb252ZXJ0ZWQ7CisgICAgICAgICAgICBsZW4gLT0gY29udmVydGVkOworICAgICAgICB9CisgICAgfQorICAgIC8qIGZhaWxlZCB0byBmaW5kIHRoZSB1bmRlY29kYWJsZSBieXRlIHNlcXVlbmNlICovCisgICAgcmV0dXJuIDA7CisjZW5kaWYKKyAgICByZXR1cm4gMDsKIH0KIAogUHlPYmplY3QqCitQeVVuaWNvZGVfRGVjb2RlTG9jYWxlQW5kU2l6ZShjb25zdCBjaGFyICpzdHIsIFB5X3NzaXplX3QgbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQoreworICAgIHdjaGFyX3Qgc21hbGxidWZbMjU2XTsKKyAgICBzaXplX3Qgc21hbGxidWZfbGVuID0gUHlfQVJSQVlfTEVOR1RIKHNtYWxsYnVmKTsKKyAgICB3Y2hhcl90ICp3c3RyOworICAgIHNpemVfdCB3bGVuLCB3bGVuMjsKKyAgICBQeU9iamVjdCAqdW5pY29kZTsKKyAgICBpbnQgc3Vycm9nYXRlZXNjYXBlOworICAgIHNpemVfdCBlcnJvcl9wb3M7CisgICAgY2hhciAqZXJybXNnOworICAgIFB5T2JqZWN0ICpyZWFzb24sICpleGM7CisKKyAgICBpZiAobG9jYWxlX2Vycm9yX2hhbmRsZXIoZXJyb3JzLCAmc3Vycm9nYXRlZXNjYXBlKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKHN0cltsZW5dICE9ICdcMCcgfHwgbGVuICE9IHN0cmxlbihzdHIpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJlbWJlZGRlZCBudWxsIGNoYXJhY3RlciIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoc3Vycm9nYXRlZXNjYXBlKQorICAgIHsKKyAgICAgICAgd3N0ciA9IF9QeV9jaGFyMndjaGFyKHN0ciwgJndsZW4pOworICAgICAgICBpZiAod3N0ciA9PSBOVUxMKSB7CisgICAgICAgICAgICBpZiAod2xlbiA9PSAoc2l6ZV90KS0xKQorICAgICAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKworICAgICAgICB1bmljb2RlID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcih3c3RyLCB3bGVuKTsKKyAgICAgICAgUHlNZW1fRnJlZSh3c3RyKTsKKyAgICB9CisgICAgZWxzZSB7CisjaWZuZGVmIEhBVkVfQlJPS0VOX01CU1RPV0NTCisgICAgICAgIHdsZW4gPSBtYnN0b3djcyhOVUxMLCBzdHIsIDApOworI2Vsc2UKKyAgICAgICAgd2xlbiA9IGxlbjsKKyNlbmRpZgorICAgICAgICBpZiAod2xlbiA9PSAoc2l6ZV90KS0xKQorICAgICAgICAgICAgZ290byBkZWNvZGVfZXJyb3I7CisgICAgICAgIGlmICh3bGVuKzEgPD0gc21hbGxidWZfbGVuKSB7CisgICAgICAgICAgICB3c3RyID0gc21hbGxidWY7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBpZiAod2xlbiA+IFBZX1NTSVpFX1RfTUFYIC8gc2l6ZW9mKHdjaGFyX3QpIC0gMSkKKyAgICAgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKworICAgICAgICAgICAgd3N0ciA9IFB5TWVtX01hbGxvYygod2xlbisxKSAqIHNpemVvZih3Y2hhcl90KSk7CisgICAgICAgICAgICBpZiAoIXdzdHIpCisgICAgICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIH0KKworICAgICAgICAvKiBUaGlzIHNob3VsZG4ndCBmYWlsIG5vdyAqLworICAgICAgICB3bGVuMiA9IG1ic3Rvd2NzKHdzdHIsIHN0ciwgd2xlbisxKTsKKyAgICAgICAgaWYgKHdsZW4yID09IChzaXplX3QpLTEpIHsKKyAgICAgICAgICAgIGlmICh3c3RyICE9IHNtYWxsYnVmKQorICAgICAgICAgICAgICAgIFB5TWVtX0ZyZWUod3N0cik7CisgICAgICAgICAgICBnb3RvIGRlY29kZV9lcnJvcjsKKyAgICAgICAgfQorI2lmZGVmIEhBVkVfQlJPS0VOX01CU1RPV0NTCisgICAgICAgIGFzc2VydCh3bGVuMiA9PSB3bGVuKTsKKyNlbmRpZgorICAgICAgICB1bmljb2RlID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcih3c3RyLCB3bGVuMik7CisgICAgICAgIGlmICh3c3RyICE9IHNtYWxsYnVmKQorICAgICAgICAgICAgUHlNZW1fRnJlZSh3c3RyKTsKKyAgICB9CisgICAgcmV0dXJuIHVuaWNvZGU7CisKK2RlY29kZV9lcnJvcjoKKyAgICBlcnJtc2cgPSBzdHJlcnJvcihlcnJubyk7CisgICAgYXNzZXJ0KGVycm1zZyAhPSBOVUxMKTsKKworICAgIGVycm9yX3BvcyA9IG1ic3Rvd2NzX2Vycm9ycG9zKHN0ciwgbGVuKTsKKyAgICBpZiAoZXJybXNnICE9IE5VTEwpIHsKKyAgICAgICAgc2l6ZV90IGVycmxlbjsKKyAgICAgICAgd3N0ciA9IF9QeV9jaGFyMndjaGFyKGVycm1zZywgJmVycmxlbik7CisgICAgICAgIGlmICh3c3RyICE9IE5VTEwpIHsKKyAgICAgICAgICAgIHJlYXNvbiA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIod3N0ciwgZXJybGVuKTsKKyAgICAgICAgICAgIFB5TWVtX0ZyZWUod3N0cik7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgZXJybXNnID0gTlVMTDsKKyAgICB9CisgICAgaWYgKGVycm1zZyA9PSBOVUxMKQorICAgICAgICByZWFzb24gPSBQeVVuaWNvZGVfRnJvbVN0cmluZygKKyAgICAgICAgICAgICJtYnN0b3djcygpIGVuY291bnRlcmVkIGFuIGludmFsaWQgbXVsdGlieXRlIHNlcXVlbmNlIik7CisgICAgaWYgKHJlYXNvbiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGV4YyA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbihQeUV4Y19Vbmljb2RlRGVjb2RlRXJyb3IsICJzeSNubk8iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxlIiwgc3RyLCBsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeV9zc2l6ZV90KWVycm9yX3BvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5X3NzaXplX3QpKGVycm9yX3BvcysxKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhc29uKTsKKyAgICBQeV9ERUNSRUYocmVhc29uKTsKKyAgICBpZiAoZXhjICE9IE5VTEwpIHsKKyAgICAgICAgUHlDb2RlY19TdHJpY3RFcnJvcnMoZXhjKTsKKyAgICAgICAgUHlfWERFQ1JFRihleGMpOworICAgIH0KKyAgICByZXR1cm4gTlVMTDsKK30KKworUHlPYmplY3QqCitQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGNvbnN0IGNoYXIgKnN0ciwgY29uc3QgY2hhciAqZXJyb3JzKQoreworICAgIFB5X3NzaXplX3Qgc2l6ZSA9IChQeV9zc2l6ZV90KXN0cmxlbihzdHIpOworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlQW5kU2l6ZShzdHIsIHNpemUsIGVycm9ycyk7Cit9CisKKworUHlPYmplY3QqCiBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGNvbnN0IGNoYXIgKnMpIHsKICAgICBQeV9zc2l6ZV90IHNpemUgPSAoUHlfc3NpemVfdClzdHJsZW4ocyk7CiAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHRBbmRTaXplKHMsIHNpemUpOwpAQCAtMTgyMywxMCArMzYwMiwxMCBAQAogUHlPYmplY3QqCiBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZShjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUpCiB7Ci0jaWYgZGVmaW5lZChNU19XSU5ET1dTKSAmJiBkZWZpbmVkKEhBVkVfVVNBQkxFX1dDSEFSX1QpCisjaWZkZWYgSEFWRV9NQkNTCiAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVNQkNTKHMsIHNpemUsIE5VTEwpOwogI2VsaWYgZGVmaW5lZChfX0FQUExFX18pCi0gICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVVVEY4KHMsIHNpemUsICJzdXJyb2dhdGVlc2NhcGUiKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChzLCBzaXplLCAic3Vycm9nYXRlZXNjYXBlIiwgTlVMTCk7CiAjZWxzZQogICAgIFB5SW50ZXJwcmV0ZXJTdGF0ZSAqaW50ZXJwID0gUHlUaHJlYWRTdGF0ZV9HRVQoKS0+aW50ZXJwOwogICAgIC8qIEJvb3RzdHJhcCBjaGVjazogaWYgdGhlIGZpbGVzeXN0ZW0gY29kZWMgaXMgaW1wbGVtZW50ZWQgaW4gUHl0aG9uLCB3ZQpAQCAtMTg0NCwyMyArMzYyMyw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdXJyb2dhdGVlc2NhcGUiKTsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIC8qIGxvY2FsZSBlbmNvZGluZyB3aXRoIHN1cnJvZ2F0ZWVzY2FwZSAqLwotICAgICAgICB3Y2hhcl90ICp3Y2hhcjsKLSAgICAgICAgUHlPYmplY3QgKnVuaWNvZGU7Ci0gICAgICAgIHNpemVfdCBsZW47Ci0KLSAgICAgICAgaWYgKHNbc2l6ZV0gIT0gJ1wwJyB8fCBzaXplICE9IHN0cmxlbihzKSkgewotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImVtYmVkZGVkIE5VTCBjaGFyYWN0ZXIiKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0KLSAgICAgICAgd2NoYXIgPSBfUHlfY2hhcjJ3Y2hhcihzLCAmbGVuKTsKLSAgICAgICAgaWYgKHdjaGFyID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKLQotICAgICAgICB1bmljb2RlID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcih3Y2hhciwgbGVuKTsKLSAgICAgICAgUHlNZW1fRnJlZSh3Y2hhcik7Ci0gICAgICAgIHJldHVybiB1bmljb2RlOworICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUxvY2FsZUFuZFNpemUocywgc2l6ZSwgInN1cnJvZ2F0ZWVzY2FwZSIpOwogICAgIH0KICNlbmRpZgogfQpAQCAtMTkyMywxMyArMzY4NiwxMyBAQAogUHlVbmljb2RlX0ZTRGVjb2RlcihQeU9iamVjdCogYXJnLCB2b2lkKiBhZGRyKQogewogICAgIFB5T2JqZWN0ICpvdXRwdXQgPSBOVUxMOwotICAgIFB5X3NzaXplX3Qgc2l6ZTsKLSAgICB2b2lkICpkYXRhOwogICAgIGlmIChhcmcgPT0gTlVMTCkgewogICAgICAgICBQeV9ERUNSRUYoKihQeU9iamVjdCoqKWFkZHIpOwogICAgICAgICByZXR1cm4gMTsKICAgICB9CiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhhcmcpKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoYXJnKSA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICBvdXRwdXQgPSBhcmc7CiAgICAgICAgIFB5X0lOQ1JFRihvdXRwdXQpOwogICAgIH0KQEAgLTE5NDgsOSArMzcxMSwxMiBAQAogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KICAgICB9Ci0gICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShvdXRwdXQpOwotICAgIGRhdGEgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvdXRwdXQpOwotICAgIGlmIChzaXplICE9IFB5X1VOSUNPREVfc3RybGVuKGRhdGEpKSB7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShvdXRwdXQpID09IC0xKSB7CisgICAgICAgIFB5X0RFQ1JFRihvdXRwdXQpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgaWYgKGZpbmRjaGFyKFB5VW5pY29kZV9EQVRBKG91dHB1dCksIFB5VW5pY29kZV9LSU5EKG91dHB1dCksCisgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKG91dHB1dCksIDAsIDEpID49IDApIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImVtYmVkZGVkIE5VTCBjaGFyYWN0ZXIiKTsKICAgICAgICAgUHlfREVDUkVGKG91dHB1dCk7CiAgICAgICAgIHJldHVybiAwOwpAQCAtMTk2MSw0MCArMzcyNywxNzUgQEAKIAogCiBjaGFyKgotX1B5VW5pY29kZV9Bc1N0cmluZ0FuZFNpemUoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgKnBzaXplKQorUHlVbmljb2RlX0FzVVRGOEFuZFNpemUoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgKnBzaXplKQogewogICAgIFB5T2JqZWN0ICpieXRlczsKKwogICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CiAgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBieXRlcyA9IF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyh1bmljb2RlLCBOVUxMKTsKLSAgICBpZiAoYnl0ZXMgPT0gTlVMTCkKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAocHNpemUgIT0gTlVMTCkKLSAgICAgICAgKnBzaXplID0gUHlCeXRlc19HRVRfU0laRShieXRlcyk7Ci0gICAgcmV0dXJuIFB5Qnl0ZXNfQVNfU1RSSU5HKGJ5dGVzKTsKKworICAgIGlmIChQeVVuaWNvZGVfVVRGOCh1bmljb2RlKSA9PSBOVUxMKSB7CisgICAgICAgIGFzc2VydCghUHlVbmljb2RlX0lTX0NPTVBBQ1RfQVNDSUkodW5pY29kZSkpOworICAgICAgICBieXRlcyA9IF9QeVVuaWNvZGVfQXNVVEY4U3RyaW5nKHVuaWNvZGUsICJzdHJpY3QiKTsKKyAgICAgICAgaWYgKGJ5dGVzID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gUHlPYmplY3RfTUFMTE9DKFB5Qnl0ZXNfR0VUX1NJWkUoYnl0ZXMpICsgMSk7CisgICAgICAgIGlmIChfUHlVbmljb2RlX1VURjgodW5pY29kZSkgPT0gTlVMTCkgeworICAgICAgICAgICAgUHlfREVDUkVGKGJ5dGVzKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgodW5pY29kZSkgPSBQeUJ5dGVzX0dFVF9TSVpFKGJ5dGVzKTsKKyAgICAgICAgUHlfTUVNQ1BZKF9QeVVuaWNvZGVfVVRGOCh1bmljb2RlKSwKKyAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKGJ5dGVzKSwKKyAgICAgICAgICAgICAgICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgodW5pY29kZSkgKyAxKTsKKyAgICAgICAgUHlfREVDUkVGKGJ5dGVzKTsKKyAgICB9CisKKyAgICBpZiAocHNpemUpCisgICAgICAgICpwc2l6ZSA9IFB5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX1VURjgodW5pY29kZSk7CiB9CiAKIGNoYXIqCi1fUHlVbmljb2RlX0FzU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorUHlVbmljb2RlX0FzVVRGOChQeU9iamVjdCAqdW5pY29kZSkKIHsKLSAgICByZXR1cm4gX1B5VW5pY29kZV9Bc1N0cmluZ0FuZFNpemUodW5pY29kZSwgTlVMTCk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Bc1VURjhBbmRTaXplKHVuaWNvZGUsIE5VTEwpOwogfQogCi1QeV9VTklDT0RFICpQeVVuaWNvZGVfQXNVbmljb2RlKFB5T2JqZWN0ICp1bmljb2RlKQorI2lmZGVmIFB5X0RFQlVHCitzdGF0aWMgaW50IHVuaWNvZGVfYXNfdW5pY29kZV9jYWxscyA9IDA7CisjZW5kaWYKKworCitQeV9VTklDT0RFICoKK1B5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90ICpzaXplKQogeworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKm9uZV9ieXRlOworI2lmIFNJWkVPRl9XQ0hBUl9UID09IDQKKyAgICBjb25zdCBQeV9VQ1MyICp0d29fYnl0ZXM7CisjZWxzZQorICAgIGNvbnN0IFB5X1VDUzQgKmZvdXJfYnl0ZXM7CisgICAgY29uc3QgUHlfVUNTNCAqdWNzNF9lbmQ7CisgICAgUHlfc3NpemVfdCBudW1fc3Vycm9nYXRlczsKKyNlbmRpZgorICAgIHdjaGFyX3QgKnc7CisgICAgd2NoYXJfdCAqd2NoYXJfZW5kOworCiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkpIHsKICAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKLSAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOworICAgIGlmIChfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPT0gTlVMTCkgeworICAgICAgICAvKiBOb24tQVNDSUkgY29tcGFjdCB1bmljb2RlIG9iamVjdCAqLworICAgICAgICBhc3NlcnQoX1B5VW5pY29kZV9LSU5EKHVuaWNvZGUpICE9IDApOworICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKHVuaWNvZGUpKTsKIAotICBvbkVycm9yOgotICAgIHJldHVybiBOVUxMOworI2lmZGVmIFB5X0RFQlVHCisgICAgICAgICsrdW5pY29kZV9hc191bmljb2RlX2NhbGxzOworI2VuZGlmCisKKyAgICAgICAgaWYgKFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpID09IFB5VW5pY29kZV80QllURV9LSU5EKSB7CisjaWYgU0laRU9GX1dDSEFSX1QgPT0gMgorICAgICAgICAgICAgZm91cl9ieXRlcyA9IFB5VW5pY29kZV80QllURV9EQVRBKHVuaWNvZGUpOworICAgICAgICAgICAgdWNzNF9lbmQgPSBmb3VyX2J5dGVzICsgX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSk7CisgICAgICAgICAgICBudW1fc3Vycm9nYXRlcyA9IDA7CisKKyAgICAgICAgICAgIGZvciAoOyBmb3VyX2J5dGVzIDwgdWNzNF9lbmQ7ICsrZm91cl9ieXRlcykgeworICAgICAgICAgICAgICAgIGlmICgqZm91cl9ieXRlcyA+IDB4RkZGRikKKyAgICAgICAgICAgICAgICAgICAgKytudW1fc3Vycm9nYXRlczsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gKHdjaGFyX3QgKikgUHlPYmplY3RfTUFMTE9DKAorICAgICAgICAgICAgICAgICAgICBzaXplb2Yod2NoYXJfdCkgKiAoX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSkgKyAxICsgbnVtX3N1cnJvZ2F0ZXMpKTsKKyAgICAgICAgICAgIGlmICghX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSkgPSBfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKSArIG51bV9zdXJyb2dhdGVzOworCisgICAgICAgICAgICB3ID0gX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpOworICAgICAgICAgICAgd2NoYXJfZW5kID0gdyArIF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSk7CisgICAgICAgICAgICBmb3VyX2J5dGVzID0gUHlVbmljb2RlXzRCWVRFX0RBVEEodW5pY29kZSk7CisgICAgICAgICAgICBmb3IgKDsgZm91cl9ieXRlcyA8IHVjczRfZW5kOyArK2ZvdXJfYnl0ZXMsICsrdykgeworICAgICAgICAgICAgICAgIGlmICgqZm91cl9ieXRlcyA+IDB4RkZGRikgeworICAgICAgICAgICAgICAgICAgICBhc3NlcnQoKmZvdXJfYnl0ZXMgPD0gTUFYX1VOSUNPREUpOworICAgICAgICAgICAgICAgICAgICAvKiBlbmNvZGUgc3Vycm9nYXRlIHBhaXIgaW4gdGhpcyBjYXNlICovCisgICAgICAgICAgICAgICAgICAgICp3KysgPSBQeV9VTklDT0RFX0hJR0hfU1VSUk9HQVRFKCpmb3VyX2J5dGVzKTsKKyAgICAgICAgICAgICAgICAgICAgKncgICA9IFB5X1VOSUNPREVfTE9XX1NVUlJPR0FURSgqZm91cl9ieXRlcyk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgKncgPSAqZm91cl9ieXRlczsKKworICAgICAgICAgICAgICAgIGlmICh3ID4gd2NoYXJfZW5kKSB7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydCgwICYmICJNaXNjYWxjdWxhdGVkIHN0cmluZyBlbmQiKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICAqdyA9IDA7CisjZWxzZQorICAgICAgICAgICAgLyogc2l6ZW9mKHdjaGFyX3QpID09IDQgKi8KKyAgICAgICAgICAgIFB5X0ZhdGFsRXJyb3IoIkltcG9zc2libGUgdW5pY29kZSBvYmplY3Qgc3RhdGUsIHdzdHIgYW5kIHN0ciAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICJzaG91bGQgc2hhcmUgbWVtb3J5IGFscmVhZHkuIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyNlbmRpZgorICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gKHdjaGFyX3QgKikgUHlPYmplY3RfTUFMTE9DKHNpemVvZih3Y2hhcl90KSAqCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKSArIDEpKTsKKyAgICAgICAgICAgIGlmICghX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmICghUHlVbmljb2RlX0lTX0NPTVBBQ1RfQVNDSUkodW5pY29kZSkpCisgICAgICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IF9QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpOworICAgICAgICAgICAgdyA9IF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKTsKKyAgICAgICAgICAgIHdjaGFyX2VuZCA9IHcgKyBfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKTsKKworICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpID09IFB5VW5pY29kZV8xQllURV9LSU5EKSB7CisgICAgICAgICAgICAgICAgb25lX2J5dGUgPSBQeVVuaWNvZGVfMUJZVEVfREFUQSh1bmljb2RlKTsKKyAgICAgICAgICAgICAgICBmb3IgKDsgdyA8IHdjaGFyX2VuZDsgKytvbmVfYnl0ZSwgKyt3KQorICAgICAgICAgICAgICAgICAgICAqdyA9ICpvbmVfYnl0ZTsKKyAgICAgICAgICAgICAgICAvKiBudWxsLXRlcm1pbmF0ZSB0aGUgd3N0ciAqLworICAgICAgICAgICAgICAgICp3ID0gMDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgaWYgKFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpID09IFB5VW5pY29kZV8yQllURV9LSU5EKSB7CisjaWYgU0laRU9GX1dDSEFSX1QgPT0gNAorICAgICAgICAgICAgICAgIHR3b19ieXRlcyA9IFB5VW5pY29kZV8yQllURV9EQVRBKHVuaWNvZGUpOworICAgICAgICAgICAgICAgIGZvciAoOyB3IDwgd2NoYXJfZW5kOyArK3R3b19ieXRlcywgKyt3KQorICAgICAgICAgICAgICAgICAgICAqdyA9ICp0d29fYnl0ZXM7CisgICAgICAgICAgICAgICAgLyogbnVsbC10ZXJtaW5hdGUgdGhlIHdzdHIgKi8KKyAgICAgICAgICAgICAgICAqdyA9IDA7CisjZWxzZQorICAgICAgICAgICAgICAgIC8qIHNpemVvZih3Y2hhcl90KSA9PSAyICovCisgICAgICAgICAgICAgICAgUHlPYmplY3RfRlJFRShfUHlVbmljb2RlX1dTVFIodW5pY29kZSkpOworICAgICAgICAgICAgICAgIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSA9IE5VTEw7CisgICAgICAgICAgICAgICAgUHlfRmF0YWxFcnJvcigiSW1wb3NzaWJsZSB1bmljb2RlIG9iamVjdCBzdGF0ZSwgd3N0ciAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5kIHN0ciBzaG91bGQgc2hhcmUgbWVtb3J5IGFscmVhZHkuIik7CisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisjZW5kaWYKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGFzc2VydCgwICYmICJUaGlzIHNob3VsZCBuZXZlciBoYXBwZW4uIik7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKHNpemUgIT0gTlVMTCkKKyAgICAgICAgKnNpemUgPSBQeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSk7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKTsKIH0KIAotUHlfc3NpemVfdCBQeVVuaWNvZGVfR2V0U2l6ZShQeU9iamVjdCAqdW5pY29kZSkKK1B5X1VOSUNPREUgKgorUHlVbmljb2RlX0FzVW5pY29kZShQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICByZXR1cm4gUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUodW5pY29kZSwgTlVMTCk7Cit9CisKKworUHlfc3NpemVfdAorUHlVbmljb2RlX0dldFNpemUoUHlPYmplY3QgKnVuaWNvZGUpCiB7CiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkpIHsKICAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKQEAgLTIwMDYsNyArMzkwNyw1NiBAQAogICAgIHJldHVybiAtMTsKIH0KIAotY29uc3QgY2hhciAqUHlVbmljb2RlX0dldERlZmF1bHRFbmNvZGluZyh2b2lkKQorUHlfc3NpemVfdAorUHlVbmljb2RlX0dldExlbmd0aChQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSB8fCBQeVVuaWNvZGVfUkVBRFkodW5pY29kZSkgPT0gLTEpIHsKKyAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIHJldHVybiBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKTsKK30KKworUHlfVUNTNAorUHlVbmljb2RlX1JlYWRDaGFyKFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90IGluZGV4KQoreworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpIHx8IFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkgeworICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgICAgICByZXR1cm4gKFB5X1VDUzQpLTE7CisgICAgfQorICAgIGlmIChpbmRleCA8IDAgfHwgaW5kZXggPj0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0luZGV4RXJyb3IsICJzdHJpbmcgaW5kZXggb3V0IG9mIHJhbmdlIik7CisgICAgICAgIHJldHVybiAoUHlfVUNTNCktMTsKKyAgICB9CisgICAgcmV0dXJuIFB5VW5pY29kZV9SRUFEX0NIQVIodW5pY29kZSwgaW5kZXgpOworfQorCitpbnQKK1B5VW5pY29kZV9Xcml0ZUNoYXIoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgaW5kZXgsIFB5X1VDUzQgY2gpCit7CisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkgfHwgIVB5VW5pY29kZV9JU19DT01QQUNUKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgYXNzZXJ0KFB5VW5pY29kZV9JU19SRUFEWSh1bmljb2RlKSk7CisgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+PSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSW5kZXhFcnJvciwgInN0cmluZyBpbmRleCBvdXQgb2YgcmFuZ2UiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAodW5pY29kZV9jaGVja19tb2RpZmlhYmxlKHVuaWNvZGUpKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKGNoID4gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiY2hhcmFjdGVyIG91dCBvZiByYW5nZSIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIFB5VW5pY29kZV9XUklURShQeVVuaWNvZGVfS0lORCh1bmljb2RlKSwgUHlVbmljb2RlX0RBVEEodW5pY29kZSksCisgICAgICAgICAgICAgICAgICAgIGluZGV4LCBjaCk7CisgICAgcmV0dXJuIDA7Cit9CisKK2NvbnN0IGNoYXIgKgorUHlVbmljb2RlX0dldERlZmF1bHRFbmNvZGluZyh2b2lkKQogewogICAgIHJldHVybiAidXRmLTgiOwogfQpAQCAtMjA0NSwyNiArMzk5NSwyOSBAQAogICAgcmV0dXJuIDAgb24gc3VjY2VzcywgLTEgb24gZXJyb3IKICovCiAKLXN0YXRpYwotaW50IHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKGNvbnN0IGNoYXIgKmVycm9ycywgUHlPYmplY3QgKiplcnJvckhhbmRsZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKnJlYXNvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICoqaW5wdXQsIGNvbnN0IGNoYXIgKippbmVuZCwgUHlfc3NpemVfdCAqc3RhcnRpbnBvcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICplbmRpbnBvcywgUHlPYmplY3QgKipleGNlcHRpb25PYmplY3QsIGNvbnN0IGNoYXIgKippbnB0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVPYmplY3QgKipvdXRwdXQsIFB5X3NzaXplX3QgKm91dHBvcywgUHlfVU5JQ09ERSAqKm91dHB0cikKK3N0YXRpYyBpbnQKK3VuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKGNvbnN0IGNoYXIgKmVycm9ycywgUHlPYmplY3QgKiplcnJvckhhbmRsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywgY29uc3QgY2hhciAqcmVhc29uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqKmlucHV0LCBjb25zdCBjaGFyICoqaW5lbmQsIFB5X3NzaXplX3QgKnN0YXJ0aW5wb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICplbmRpbnBvcywgUHlPYmplY3QgKipleGNlcHRpb25PYmplY3QsIGNvbnN0IGNoYXIgKippbnB0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqb3V0cHV0LCBQeV9zc2l6ZV90ICpvdXRwb3MpCiB7CiAgICAgc3RhdGljIGNoYXIgKmFyZ3BhcnNlID0gIk8hbjtkZWNvZGluZyBlcnJvciBoYW5kbGVyIG11c3QgcmV0dXJuIChzdHIsIGludCkgdHVwbGUiOwogCiAgICAgUHlPYmplY3QgKnJlc3R1cGxlID0gTlVMTDsKICAgICBQeU9iamVjdCAqcmVwdW5pY29kZSA9IE5VTEw7Ci0gICAgUHlfc3NpemVfdCBvdXRzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKCpvdXRwdXQpOworICAgIFB5X3NzaXplX3Qgb3V0c2l6ZTsKICAgICBQeV9zc2l6ZV90IGluc2l6ZTsKICAgICBQeV9zc2l6ZV90IHJlcXVpcmVkc2l6ZTsKICAgICBQeV9zc2l6ZV90IG5ld3BvczsKLSAgICBQeV9VTklDT0RFICpyZXBwdHI7CiAgICAgUHlPYmplY3QgKmlucHV0b2JqID0gTlVMTDsKLSAgICBQeV9zc2l6ZV90IHJlcHNpemU7CiAgICAgaW50IHJlcyA9IC0xOwogCisgICAgaWYgKF9QeVVuaWNvZGVfS0lORCgqb3V0cHV0KSAhPSBQeVVuaWNvZGVfV0NIQVJfS0lORCkKKyAgICAgICAgb3V0c2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKCpvdXRwdXQpOworICAgIGVsc2UKKyAgICAgICAgb3V0c2l6ZSA9IF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgoKm91dHB1dCk7CisKICAgICBpZiAoKmVycm9ySGFuZGxlciA9PSBOVUxMKSB7CiAgICAgICAgICplcnJvckhhbmRsZXIgPSBQeUNvZGVjX0xvb2t1cEVycm9yKGVycm9ycyk7CiAgICAgICAgIGlmICgqZXJyb3JIYW5kbGVyID09IE5VTEwpCkBAIC0yMDg4LDYgKzQwNDEsOCBAQAogICAgIH0KICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUocmVzdHVwbGUsIGFyZ3BhcnNlLCAmUHlVbmljb2RlX1R5cGUsICZyZXB1bmljb2RlLCAmbmV3cG9zKSkKICAgICAgICAgZ290byBvbkVycm9yOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocmVwdW5pY29kZSkgPT0gLTEpCisgICAgICAgIGdvdG8gb25FcnJvcjsKIAogICAgIC8qIENvcHkgYmFjayB0aGUgYnl0ZXMgdmFyaWFibGVzLCB3aGljaCBtaWdodCBoYXZlIGJlZW4gbW9kaWZpZWQgYnkgdGhlCiAgICAgICAgY2FsbGJhY2sgKi8KQEAgLTIxMTEsMjUgKzQwNjYsNDYgQEAKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIH0KIAotICAgIC8qIG5lZWQgbW9yZSBzcGFjZT8gKGF0IGxlYXN0IGVub3VnaCBmb3Igd2hhdCB3ZQotICAgICAgIGhhdmUrdGhlIHJlcGxhY2VtZW50K3RoZSByZXN0IG9mIHRoZSBzdHJpbmcgKHN0YXJ0aW5nCi0gICAgICAgYXQgdGhlIG5ldyBpbnB1dCBwb3NpdGlvbiksIHNvIHdlIHdvbid0IGhhdmUgdG8gY2hlY2sgc3BhY2UKLSAgICAgICB3aGVuIHRoZXJlIGFyZSBubyBlcnJvcnMgaW4gdGhlIHJlc3Qgb2YgdGhlIHN0cmluZykgKi8KLSAgICByZXBwdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXB1bmljb2RlKTsKLSAgICByZXBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKHJlcHVuaWNvZGUpOwotICAgIHJlcXVpcmVkc2l6ZSA9ICpvdXRwb3MgKyByZXBzaXplICsgaW5zaXplLW5ld3BvczsKLSAgICBpZiAocmVxdWlyZWRzaXplID4gb3V0c2l6ZSkgewotICAgICAgICBpZiAocmVxdWlyZWRzaXplPDIqb3V0c2l6ZSkKLSAgICAgICAgICAgIHJlcXVpcmVkc2l6ZSA9IDIqb3V0c2l6ZTsKLSAgICAgICAgaWYgKF9QeVVuaWNvZGVfUmVzaXplKG91dHB1dCwgcmVxdWlyZWRzaXplKSA8IDApCisgICAgaWYgKF9QeVVuaWNvZGVfS0lORCgqb3V0cHV0KSAhPSBQeVVuaWNvZGVfV0NIQVJfS0lORCkgeworICAgICAgICAvKiBuZWVkIG1vcmUgc3BhY2U/IChhdCBsZWFzdCBlbm91Z2ggZm9yIHdoYXQgd2UKKyAgICAgICAgICAgaGF2ZSt0aGUgcmVwbGFjZW1lbnQrdGhlIHJlc3Qgb2YgdGhlIHN0cmluZyAoc3RhcnRpbmcKKyAgICAgICAgICAgYXQgdGhlIG5ldyBpbnB1dCBwb3NpdGlvbiksIHNvIHdlIHdvbid0IGhhdmUgdG8gY2hlY2sgc3BhY2UKKyAgICAgICAgICAgd2hlbiB0aGVyZSBhcmUgbm8gZXJyb3JzIGluIHRoZSByZXN0IG9mIHRoZSBzdHJpbmcpICovCisgICAgICAgIFB5X3NzaXplX3QgcmVwbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocmVwdW5pY29kZSk7CisgICAgICAgIHJlcXVpcmVkc2l6ZSA9ICpvdXRwb3MgKyByZXBsZW4gKyBpbnNpemUtbmV3cG9zOworICAgICAgICBpZiAocmVxdWlyZWRzaXplID4gb3V0c2l6ZSkgeworICAgICAgICAgICAgaWYgKHJlcXVpcmVkc2l6ZTwyKm91dHNpemUpCisgICAgICAgICAgICAgICAgcmVxdWlyZWRzaXplID0gMipvdXRzaXplOworICAgICAgICAgICAgaWYgKHVuaWNvZGVfcmVzaXplKG91dHB1dCwgcmVxdWlyZWRzaXplKSA8IDApCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICB9CisgICAgICAgIGlmICh1bmljb2RlX3dpZGVuKG91dHB1dCwgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHJlcHVuaWNvZGUpKSA8IDApCiAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7Ci0gICAgICAgICpvdXRwdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqb3V0cHV0KSArICpvdXRwb3M7CisgICAgICAgIGNvcHlfY2hhcmFjdGVycygqb3V0cHV0LCAqb3V0cG9zLCByZXB1bmljb2RlLCAwLCByZXBsZW4pOworICAgICAgICAqb3V0cG9zICs9IHJlcGxlbjsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHdjaGFyX3QgKnJlcHdzdHI7CisgICAgICAgIFB5X3NzaXplX3QgcmVwd2xlbjsKKyAgICAgICAgcmVwd3N0ciA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKHJlcHVuaWNvZGUsICZyZXB3bGVuKTsKKyAgICAgICAgaWYgKHJlcHdzdHIgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgLyogbmVlZCBtb3JlIHNwYWNlPyAoYXQgbGVhc3QgZW5vdWdoIGZvciB3aGF0IHdlCisgICAgICAgICAgIGhhdmUrdGhlIHJlcGxhY2VtZW50K3RoZSByZXN0IG9mIHRoZSBzdHJpbmcgKHN0YXJ0aW5nCisgICAgICAgICAgIGF0IHRoZSBuZXcgaW5wdXQgcG9zaXRpb24pLCBzbyB3ZSB3b24ndCBoYXZlIHRvIGNoZWNrIHNwYWNlCisgICAgICAgICAgIHdoZW4gdGhlcmUgYXJlIG5vIGVycm9ycyBpbiB0aGUgcmVzdCBvZiB0aGUgc3RyaW5nKSAqLworICAgICAgICByZXF1aXJlZHNpemUgPSAqb3V0cG9zICsgcmVwd2xlbiArIGluc2l6ZS1uZXdwb3M7CisgICAgICAgIGlmIChyZXF1aXJlZHNpemUgPiBvdXRzaXplKSB7CisgICAgICAgICAgICBpZiAocmVxdWlyZWRzaXplIDwgMipvdXRzaXplKQorICAgICAgICAgICAgICAgIHJlcXVpcmVkc2l6ZSA9IDIqb3V0c2l6ZTsKKyAgICAgICAgICAgIGlmICh1bmljb2RlX3Jlc2l6ZShvdXRwdXQsIHJlcXVpcmVkc2l6ZSkgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgfQorICAgICAgICB3Y3NuY3B5KF9QeVVuaWNvZGVfV1NUUigqb3V0cHV0KSArICpvdXRwb3MsIHJlcHdzdHIsIHJlcHdsZW4pOworICAgICAgICAqb3V0cG9zICs9IHJlcHdsZW47CiAgICAgfQogICAgICplbmRpbnBvcyA9IG5ld3BvczsKICAgICAqaW5wdHIgPSAqaW5wdXQgKyBuZXdwb3M7Ci0gICAgUHlfVU5JQ09ERV9DT1BZKCpvdXRwdHIsIHJlcHB0ciwgcmVwc2l6ZSk7Ci0gICAgKm91dHB0ciArPSByZXBzaXplOwotICAgICpvdXRwb3MgKz0gcmVwc2l6ZTsKIAogICAgIC8qIHdlIG1hZGUgaXQhICovCiAgICAgcmVzID0gMDsKQEAgLTIyMjAsOSArNDE5NiwxMCBAQAogICAgICAgKGRpcmVjdFdTICYmICh1dGY3X2NhdGVnb3J5WyhjKV0gPT0gMikpIHx8ICAgICAgICBcCiAgICAgICAoZGlyZWN0TyAmJiAodXRmN19jYXRlZ29yeVsoYyldID09IDEpKSkpCiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlVVRGNyhjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlVVRGNyhjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlVVRGN1N0YXRlZnVsKHMsIHNpemUsIGVycm9ycywgTlVMTCk7CiB9CkBAIC0yMjM0LDQyICs0MjExLDQyIEBACiAgKiBhbGwgdGhlIHNoaWZ0IHN0YXRlIChzZWVuIGJpdHMsIG51bWJlciBvZiBiaXRzIHNlZW4sIGhpZ2gKICAqIHN1cnJvZ2F0ZSkuICovCiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlVVRGN1N0YXRlZnVsKGNvbnN0IGNoYXIgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpjb25zdW1lZCkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9EZWNvZGVVVEY3U3RhdGVmdWwoY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkKQogewogICAgIGNvbnN0IGNoYXIgKnN0YXJ0cyA9IHM7CiAgICAgUHlfc3NpemVfdCBzdGFydGlucG9zOwogICAgIFB5X3NzaXplX3QgZW5kaW5wb3M7CiAgICAgUHlfc3NpemVfdCBvdXRwb3M7CiAgICAgY29uc3QgY2hhciAqZTsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGU7Ci0gICAgUHlfVU5JQ09ERSAqcDsKKyAgICBQeU9iamVjdCAqdW5pY29kZTsKICAgICBjb25zdCBjaGFyICplcnJtc2cgPSAiIjsKICAgICBpbnQgaW5TaGlmdCA9IDA7Ci0gICAgUHlfVU5JQ09ERSAqc2hpZnRPdXRTdGFydDsKKyAgICBQeV9zc2l6ZV90IHNoaWZ0T3V0U3RhcnQ7CiAgICAgdW5zaWduZWQgaW50IGJhc2U2NGJpdHMgPSAwOwogICAgIHVuc2lnbmVkIGxvbmcgYmFzZTY0YnVmZmVyID0gMDsKLSAgICBQeV9VTklDT0RFIHN1cnJvZ2F0ZSA9IDA7CisgICAgUHlfVUNTNCBzdXJyb2dhdGUgPSAwOwogICAgIFB5T2JqZWN0ICplcnJvckhhbmRsZXIgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwogCi0gICAgdW5pY29kZSA9IF9QeVVuaWNvZGVfTmV3KHNpemUpOworICAgIC8qIFN0YXJ0IG9mZiBhc3N1bWluZyBpdCdzIGFsbCBBU0NJSS4gV2lkZW4gbGF0ZXIgYXMgbmVjZXNzYXJ5LiAqLworICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfTmV3KHNpemUsIDEyNyk7CiAgICAgaWYgKCF1bmljb2RlKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoc2l6ZSA9PSAwKSB7CiAgICAgICAgIGlmIChjb25zdW1lZCkKICAgICAgICAgICAgICpjb25zdW1lZCA9IDA7Ci0gICAgICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlOworICAgICAgICByZXR1cm4gdW5pY29kZTsKICAgICB9CiAKLSAgICBwID0gdW5pY29kZS0+c3RyOwotICAgIHNoaWZ0T3V0U3RhcnQgPSBwOworICAgIHNoaWZ0T3V0U3RhcnQgPSBvdXRwb3MgPSAwOwogICAgIGUgPSBzICsgc2l6ZTsKIAogICAgIHdoaWxlIChzIDwgZSkgewotICAgICAgICBQeV9VTklDT0RFIGNoOworICAgICAgICBQeV9VQ1M0IGNoOwogICAgICAgcmVzdGFydDoKICAgICAgICAgY2ggPSAodW5zaWduZWQgY2hhcikgKnM7CiAKQEAgLTIyODAsMzQgKzQyNTcsMzEgQEAKICAgICAgICAgICAgICAgICBzKys7CiAgICAgICAgICAgICAgICAgaWYgKGJhc2U2NGJpdHMgPj0gMTYpIHsKICAgICAgICAgICAgICAgICAgICAgLyogd2UgaGF2ZSBlbm91Z2ggYml0cyBmb3IgYSBVVEYtMTYgdmFsdWUgKi8KLSAgICAgICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBvdXRDaCA9IChQeV9VTklDT0RFKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGJhc2U2NGJ1ZmZlciA+PiAoYmFzZTY0Yml0cy0xNikpOworICAgICAgICAgICAgICAgICAgICBQeV9VQ1M0IG91dENoID0gKFB5X1VDUzQpKGJhc2U2NGJ1ZmZlciA+PiAoYmFzZTY0Yml0cy0xNikpOwogICAgICAgICAgICAgICAgICAgICBiYXNlNjRiaXRzIC09IDE2OwogICAgICAgICAgICAgICAgICAgICBiYXNlNjRidWZmZXIgJj0gKDEgPDwgYmFzZTY0Yml0cykgLSAxOyAvKiBjbGVhciBoaWdoIGJpdHMgKi8KICAgICAgICAgICAgICAgICAgICAgaWYgKHN1cnJvZ2F0ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgLyogZXhwZWN0aW5nIGEgc2Vjb25kIHN1cnJvZ2F0ZSAqLwotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG91dENoID49IDB4REMwMCAmJiBvdXRDaCA8PSAweERGRkYpIHsKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqcCsrID0gKCgoc3Vycm9nYXRlICYgMHgzRkYpPDwxMCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKG91dENoICYgMHgzRkYpKSArIDB4MTAwMDA7Ci0jZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICpwKysgPSBzdXJyb2dhdGU7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgKnArKyA9IG91dENoOwotI2VuZGlmCisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU19MT1dfU1VSUk9HQVRFKG91dENoKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgY2gyID0gUHlfVU5JQ09ERV9KT0lOX1NVUlJPR0FURVMoc3Vycm9nYXRlLCBvdXRDaCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdW5pY29kZSwgJm91dHBvcywgY2gyKSA8IDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXJyb2dhdGUgPSAwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgKnArKyA9IHN1cnJvZ2F0ZTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ1bmljb2RlLCAmb3V0cG9zLCBzdXJyb2dhdGUpIDwgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cnJvZ2F0ZSA9IDA7CiAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgaWYgKG91dENoID49IDB4RDgwMCAmJiBvdXRDaCA8PSAweERCRkYpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKFB5X1VOSUNPREVfSVNfSElHSF9TVVJST0dBVEUob3V0Q2gpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAvKiBmaXJzdCBzdXJyb2dhdGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgIHN1cnJvZ2F0ZSA9IG91dENoOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgICAgICAgICAgKnArKyA9IG91dENoOworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdW5pY29kZSwgJm91dHBvcywgb3V0Q2gpIDwgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CkBAIC0yMzE1LDcgKzQyODksOCBAQAogICAgICAgICAgICAgICAgIGluU2hpZnQgPSAwOwogICAgICAgICAgICAgICAgIHMrKzsKICAgICAgICAgICAgICAgICBpZiAoc3Vycm9nYXRlKSB7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBzdXJyb2dhdGU7CisgICAgICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnVuaWNvZGUsICZvdXRwb3MsIHN1cnJvZ2F0ZSkgPCAwKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgICAgICBzdXJyb2dhdGUgPSAwOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBpZiAoYmFzZTY0Yml0cyA+IDApIHsgLyogbGVmdC1vdmVyIGJpdHMgKi8KQEAgLTIzMzUsNyArNDMxMCw4IEBACiAgICAgICAgICAgICAgICAgaWYgKGNoICE9ICctJykgewogICAgICAgICAgICAgICAgICAgICAvKiAnLScgaXMgYWJzb3JiZWQ7IG90aGVyIHRlcm1pbmF0aW5nCiAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJhY3RlcnMgYXJlIHByZXNlcnZlZCAqLwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnVuaWNvZGUsICZvdXRwb3MsIGNoKSA8IDApCisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICB9CkBAIC0yMzQ0LDE2ICs0MzIwLDE4IEBACiAgICAgICAgICAgICBzKys7IC8qIGNvbnN1bWUgJysnICovCiAgICAgICAgICAgICBpZiAocyA8IGUgJiYgKnMgPT0gJy0nKSB7IC8qICcrLScgZW5jb2RlcyAnKycgKi8KICAgICAgICAgICAgICAgICBzKys7Ci0gICAgICAgICAgICAgICAgKnArKyA9ICcrJzsKKyAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ1bmljb2RlLCAmb3V0cG9zLCAnKycpIDwgMCkKKyAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSB7IC8qIGJlZ2luIGJhc2U2NC1lbmNvZGVkIHNlY3Rpb24gKi8KICAgICAgICAgICAgICAgICBpblNoaWZ0ID0gMTsKLSAgICAgICAgICAgICAgICBzaGlmdE91dFN0YXJ0ID0gcDsKKyAgICAgICAgICAgICAgICBzaGlmdE91dFN0YXJ0ID0gb3V0cG9zOwogICAgICAgICAgICAgICAgIGJhc2U2NGJpdHMgPSAwOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKERFQ09ERV9ESVJFQ1QoY2gpKSB7IC8qIGNoYXJhY3RlciBkZWNvZGVzIGFzIGl0c2VsZiAqLwotICAgICAgICAgICAgKnArKyA9IGNoOworICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdW5pY29kZSwgJm91dHBvcywgY2gpIDwgMCkKKyAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICBzKys7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CkBAIC0yMzY0LDEzICs0MzQyLDEyIEBACiAgICAgICAgIH0KICAgICAgICAgY29udGludWU7CiB1dGY3RXJyb3I6Ci0gICAgICAgIG91dHBvcyA9IHAtUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSk7CiAgICAgICAgIGVuZGlucG9zID0gcy1zdGFydHM7CiAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgInV0ZjciLCBlcnJtc2csCiAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmUsICZzdGFydGlucG9zLCAmZW5kaW5wb3MsICZleGMsICZzLAotICAgICAgICAgICAgICAgICZ1bmljb2RlLCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgJnVuaWNvZGUsICZvdXRwb3MpKQogICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgIH0KIApAQCAtMjM4MSwxMyArNDM1OCwxMiBAQAogICAgICAgICBpZiAoc3Vycm9nYXRlIHx8CiAgICAgICAgICAgICAgICAgKGJhc2U2NGJpdHMgPj0gNikgfHwKICAgICAgICAgICAgICAgICAoYmFzZTY0Yml0cyA+IDAgJiYgYmFzZTY0YnVmZmVyICE9IDApKSB7Ci0gICAgICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwogICAgICAgICAgICAgZW5kaW5wb3MgPSBzaXplOwogICAgICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICJ1dGY3IiwgInVudGVybWluYXRlZCBzaGlmdCBzZXF1ZW5jZSIsCiAgICAgICAgICAgICAgICAgICAgICZzdGFydHMsICZlLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAgICAgJnVuaWNvZGUsICZvdXRwb3MsICZwKSkKKyAgICAgICAgICAgICAgICAgICAgJnVuaWNvZGUsICZvdXRwb3MpKQogICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGlmIChzIDwgZSkKICAgICAgICAgICAgICAgICBnb3RvIHJlc3RhcnQ7CkBAIC0yMzk3LDcgKzQzNzMsNyBAQAogICAgIC8qIHJldHVybiBzdGF0ZSAqLwogICAgIGlmIChjb25zdW1lZCkgewogICAgICAgICBpZiAoaW5TaGlmdCkgewotICAgICAgICAgICAgcCA9IHNoaWZ0T3V0U3RhcnQ7IC8qIGJhY2sgb2ZmIG91dHB1dCAqLworICAgICAgICAgICAgb3V0cG9zID0gc2hpZnRPdXRTdGFydDsgLyogYmFjayBvZmYgb3V0cHV0ICovCiAgICAgICAgICAgICAqY29uc3VtZWQgPSBzdGFydGlucG9zOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewpAQCAtMjQwNSwxMiArNDM4MSwxMiBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKF9QeVVuaWNvZGVfUmVzaXplKCZ1bmljb2RlLCBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSkpIDwgMCkKKyAgICBpZiAodW5pY29kZV9yZXNpemUoJnVuaWNvZGUsIG91dHBvcykgPCAwKQogICAgICAgICBnb3RvIG9uRXJyb3I7CiAKICAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7CiAgICAgUHlfWERFQ1JFRihleGMpOwotICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlOworICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdCh1bmljb2RlKTsKIAogICBvbkVycm9yOgogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKQEAgLTI0MjAsMjYgKzQzOTYsMzYgQEAKIH0KIAogCi1QeU9iamVjdCAqUHlVbmljb2RlX0VuY29kZVVURjcoY29uc3QgUHlfVU5JQ09ERSAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGJhc2U2NFNldE8sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGJhc2U2NFdoaXRlU3BhY2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorX1B5VW5pY29kZV9FbmNvZGVVVEY3KFB5T2JqZWN0ICpzdHIsCisgICAgICAgICAgICAgICAgICAgICAgaW50IGJhc2U2NFNldE8sCisgICAgICAgICAgICAgICAgICAgICAgaW50IGJhc2U2NFdoaXRlU3BhY2UsCisgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogeworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBsZW47CiAgICAgUHlPYmplY3QgKnY7Ci0gICAgLyogSXQgbWlnaHQgYmUgcG9zc2libGUgdG8gdGlnaHRlbiB0aGlzIHdvcnN0IGNhc2UgKi8KLSAgICBQeV9zc2l6ZV90IGFsbG9jYXRlZCA9IDggKiBzaXplOworICAgIFB5X3NzaXplX3QgYWxsb2NhdGVkOwogICAgIGludCBpblNoaWZ0ID0gMDsKLSAgICBQeV9zc2l6ZV90IGkgPSAwOworICAgIFB5X3NzaXplX3QgaTsKICAgICB1bnNpZ25lZCBpbnQgYmFzZTY0Yml0cyA9IDA7CiAgICAgdW5zaWduZWQgbG9uZyBiYXNlNjRidWZmZXIgPSAwOwogICAgIGNoYXIgKiBvdXQ7CiAgICAgY2hhciAqIHN0YXJ0OwogCi0gICAgaWYgKHNpemUgPT0gMCkKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzdHIpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShzdHIpOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cik7CisKKyAgICBpZiAobGVuID09IDApCiAgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOwogCi0gICAgaWYgKGFsbG9jYXRlZCAvIDggIT0gc2l6ZSkKKyAgICAvKiBJdCBtaWdodCBiZSBwb3NzaWJsZSB0byB0aWdodGVuIHRoaXMgd29yc3QgY2FzZSAqLworICAgIGFsbG9jYXRlZCA9IDggKiBsZW47CisgICAgaWYgKGFsbG9jYXRlZCAvIDggIT0gbGVuKQogICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKIAogICAgIHYgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGFsbG9jYXRlZCk7CkBAIC0yNDQ3LDggKzQ0MzMsOCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHN0YXJ0ID0gb3V0ID0gUHlCeXRlc19BU19TVFJJTkcodik7Ci0gICAgZm9yICg7aSA8IHNpemU7ICsraSkgewotICAgICAgICBQeV9VTklDT0RFIGNoID0gc1tpXTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyArK2kpIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOwogCiAgICAgICAgIGlmIChpblNoaWZ0KSB7CiAgICAgICAgICAgICBpZiAoRU5DT0RFX0RJUkVDVChjaCwgIWJhc2U2NFNldE8sICFiYXNlNjRXaGl0ZVNwYWNlKSkgewpAQCAtMjQ4Niw4ICs0NDcyLDkgQEAKICAgICAgICAgfQogICAgICAgICBjb250aW51ZTsKIGVuY29kZV9jaGFyOgotI2lmZGVmIFB5X1VOSUNPREVfV0lERQogICAgICAgICBpZiAoY2ggPj0gMHgxMDAwMCkgeworICAgICAgICAgICAgYXNzZXJ0KGNoIDw9IE1BWF9VTklDT0RFKTsKKwogICAgICAgICAgICAgLyogY29kZSBmaXJzdCBzdXJyb2dhdGUgKi8KICAgICAgICAgICAgIGJhc2U2NGJpdHMgKz0gMTY7CiAgICAgICAgICAgICBiYXNlNjRidWZmZXIgPSAoYmFzZTY0YnVmZmVyIDw8IDE2KSB8IDB4ZDgwMCB8ICgoY2gtMHgxMDAwMCkgPj4gMTApOwpAQCAtMjQ5Niw5ICs0NDgzLDggQEAKICAgICAgICAgICAgICAgICBiYXNlNjRiaXRzIC09IDY7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAvKiBwcmVwYXJlIHNlY29uZCBzdXJyb2dhdGUgKi8KLSAgICAgICAgICAgIGNoID0gIDB4REMwMCB8ICgoY2gtMHgxMDAwMCkgJiAweDNGRik7CisgICAgICAgICAgICBjaCA9IFB5X1VOSUNPREVfTE9XX1NVUlJPR0FURShjaCk7CiAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICBiYXNlNjRiaXRzICs9IDE2OwogICAgICAgICBiYXNlNjRidWZmZXIgPSAoYmFzZTY0YnVmZmVyIDw8IDE2KSB8IGNoOwogICAgICAgICB3aGlsZSAoYmFzZTY0Yml0cyA+PSA2KSB7CkBAIC0yNTE0LDYgKzQ1MDAsMjIgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcmV0dXJuIHY7CiB9CitQeU9iamVjdCAqCitQeVVuaWNvZGVfRW5jb2RlVVRGNyhjb25zdCBQeV9VTklDT0RFICpzLAorICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgaW50IGJhc2U2NFNldE8sCisgICAgICAgICAgICAgICAgICAgICBpbnQgYmFzZTY0V2hpdGVTcGFjZSwKKyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK3sKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICp0bXAgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocywgc2l6ZSk7CisgICAgaWYgKHRtcCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXN1bHQgPSBfUHlVbmljb2RlX0VuY29kZVVURjcodG1wLCBiYXNlNjRTZXRPLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlNjRXaGl0ZVNwYWNlLCBlcnJvcnMpOworICAgIFB5X0RFQ1JFRih0bXApOworICAgIHJldHVybiByZXN1bHQ7Cit9CiAKICN1bmRlZiBJU19CQVNFNjQKICN1bmRlZiBGUk9NX0JBU0U2NApAQCAtMjU0NSwxMyArNDU0NywyNiBAQAogICAgIDQsIDQsIDQsIDQsIDQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAgIC8qIEYwLUY0ICsgRjUtRkYgKi8KIH07CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlVVRGOChjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlVVRGOChjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsKHMsIHNpemUsIGVycm9ycywgTlVMTCk7CiB9CiAKKyNpbmNsdWRlICJzdHJpbmdsaWIvdWNzMWxpYi5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9jb2RlY3MuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvdW5kZWYuaCIKKworI2luY2x1ZGUgInN0cmluZ2xpYi91Y3MybGliLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2NvZGVjcy5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi91bmRlZi5oIgorCisjaW5jbHVkZSAic3RyaW5nbGliL3VjczRsaWIuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvY29kZWNzLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3VuZGVmLmgiCisKIC8qIE1hc2sgdG8gY2hlY2sgb3IgZm9yY2UgYWxpZ25tZW50IG9mIGEgcG9pbnRlciB0byBDICdsb25nJyBib3VuZGFyaWVzICovCiAjZGVmaW5lIExPTkdfUFRSX01BU0sgKHNpemVfdCkgKFNJWkVPRl9MT05HIC0gMSkKIApAQCAtMjU2NSwzOCArNDU4MCwxMjcgQEAKICMgZXJyb3IgQyAnbG9uZycgc2l6ZSBzaG91bGQgYmUgZWl0aGVyIDQgb3IgOCEKICNlbmRpZgogCi1QeU9iamVjdCAqUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqY29uc3VtZWQpCisvKiBTY2FucyBhIFVURi04IHN0cmluZyBhbmQgcmV0dXJucyB0aGUgbWF4aW11bSBjaGFyYWN0ZXIgdG8gYmUgZXhwZWN0ZWQKKyAgIGFuZCB0aGUgc2l6ZSBvZiB0aGUgZGVjb2RlZCB1bmljb2RlIHN0cmluZy4KKworICAgVGhpcyBmdW5jdGlvbiBkb2Vzbid0IGNoZWNrIGZvciBlcnJvcnMsIHRoZXNlIGNoZWNrcyBhcmUgcGVyZm9ybWVkIGluCisgICBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsLgorICAgKi8KK3N0YXRpYyBQeV9VQ1M0Cit1dGY4X3NjYW5uZXIoY29uc3QgdW5zaWduZWQgY2hhciAqcCwgUHlfc3NpemVfdCBzdHJpbmdfc2l6ZSwgUHlfc3NpemVfdCAqdW5pY29kZV9zaXplKQogewotICAgIGNvbnN0IGNoYXIgKnN0YXJ0cyA9IHM7CisgICAgUHlfc3NpemVfdCBjaGFyX2NvdW50ID0gMDsKKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICplbmQgPSBwICsgc3RyaW5nX3NpemU7CisgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWxpZ25lZF9lbmQgPSAoY29uc3QgdW5zaWduZWQgY2hhciAqKSAoKHNpemVfdCkgZW5kICYgfkxPTkdfUFRSX01BU0spOworCisgICAgYXNzZXJ0KHVuaWNvZGVfc2l6ZSAhPSBOVUxMKTsKKworICAgIC8qIEJ5IGhhdmluZyBhIGNhc2NhZGUgb2YgaW5kZXBlbmRlbnQgbG9vcHMgd2hpY2ggZmFsbGJhY2sgb250byBlYWNoCisgICAgICAgb3RoZXIsIHdlIG1pbmltaXplIHRoZSBhbW91bnQgb2Ygd29yayBkb25lIGluIHRoZSBhdmVyYWdlIGxvb3AKKyAgICAgICBpdGVyYXRpb24sIGFuZCB3ZSBhbHNvIG1heGltaXplIHRoZSBDUFUncyBhYmlsaXR5IHRvIHByZWRpY3QKKyAgICAgICBicmFuY2hlcyBjb3JyZWN0bHkgKGJlY2F1c2UgYSBnaXZlbiBjb25kaXRpb24gd2lsbCBoYXZlIGFsd2F5cyB0aGUKKyAgICAgICBzYW1lIGJvb2xlYW4gb3V0Y29tZSBleGNlcHQgcGVyaGFwcyBpbiB0aGUgbGFzdCBpdGVyYXRpb24gb2YgdGhlCisgICAgICAgY29ycmVzcG9uZGluZyBsb29wKS4KKyAgICAgICBJbiB0aGUgZ2VuZXJhbCBjYXNlIHRoaXMgYnJpbmdzIHVzIHJhdGhlciBjbG9zZSB0byBkZWNvZGluZworICAgICAgIHBlcmZvcm1hbmNlIHByZS1QRVAgMzkzLCBkZXNwaXRlIHRoZSB0d28tcGFzcyBkZWNvZGluZy4KKworICAgICAgIE5vdGUgdGhhdCB0aGUgcHVyZSBBU0NJSSBsb29wIGlzIG5vdCBkdXBsaWNhdGVkIG9uY2UgYSBub24tQVNDSUkKKyAgICAgICBjaGFyYWN0ZXIgaGFzIGJlZW4gZW5jb3VudGVyZWQuIEl0IGlzIGFjdHVhbGx5IGEgcGVzc2ltaXphdGlvbiAoYnkKKyAgICAgICBhIHNpZ25pZmljYW50IGZhY3RvcikgdG8gdXNlIHRoaXMgbG9vcCBvbiB0ZXh0IHdpdGggbWFueSBub24tQVNDSUkKKyAgICAgICBjaGFyYWN0ZXJzLCBhbmQgaXQgaXMgaW1wb3J0YW50IHRvIGF2b2lkIGJhZCBwZXJmb3JtYW5jZSBvbiB2YWxpZAorICAgICAgIHV0Zi04IGRhdGEgKGludmFsaWQgdXRmLTggYmVpbmcgYSBkaWZmZXJlbnQgY2FuIG9mIHdvcm1zKS4KKyAgICAqLworCisgICAgLyogQVNDSUkgKi8KKyAgICBmb3IgKDsgcCA8IGVuZDsgKytwKSB7CisgICAgICAgIC8qIE9ubHkgY2hlY2sgdmFsdWUgaWYgaXQncyBub3QgYSBBU0NJSSBjaGFyLi4uICovCisgICAgICAgIGlmICgqcCA8IDB4ODApIHsKKyAgICAgICAgICAgIC8qIEZhc3QgcGF0aCwgc2VlIGJlbG93IGluIFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWwgZm9yCisgICAgICAgICAgICAgICBhbiBleHBsYW5hdGlvbi4gKi8KKyAgICAgICAgICAgIGlmICghKChzaXplX3QpIHAgJiBMT05HX1BUUl9NQVNLKSkgeworICAgICAgICAgICAgICAgIC8qIEhlbHAgcmVnaXN0ZXIgYWxsb2NhdGlvbiAqLworICAgICAgICAgICAgICAgIHJlZ2lzdGVyIGNvbnN0IHVuc2lnbmVkIGNoYXIgKl9wID0gcDsKKyAgICAgICAgICAgICAgICB3aGlsZSAoX3AgPCBhbGlnbmVkX2VuZCkgeworICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHZhbHVlID0gKih1bnNpZ25lZCBsb25nICopIF9wOworICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWUgJiBBU0NJSV9DSEFSX01BU0spCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICAgICAgX3AgKz0gU0laRU9GX0xPTkc7CisgICAgICAgICAgICAgICAgICAgIGNoYXJfY291bnQgKz0gU0laRU9GX0xPTkc7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHAgPSBfcDsKKyAgICAgICAgICAgICAgICBpZiAocCA9PSBlbmQpCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmICgqcCA8IDB4ODApCisgICAgICAgICAgICArK2NoYXJfY291bnQ7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGdvdG8gX3VjczFsb29wOworICAgIH0KKyAgICAqdW5pY29kZV9zaXplID0gY2hhcl9jb3VudDsKKyAgICByZXR1cm4gMTI3OworCitfdWNzMWxvb3A6CisgICAgZm9yICg7IHAgPCBlbmQ7ICsrcCkgeworICAgICAgICBpZiAoKnAgPCAweGM0KQorICAgICAgICAgICAgY2hhcl9jb3VudCArPSAoKCpwICYgMHhjMCkgIT0gMHg4MCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGdvdG8gX3VjczJsb29wOworICAgIH0KKyAgICAqdW5pY29kZV9zaXplID0gY2hhcl9jb3VudDsKKyAgICByZXR1cm4gMjU1OworCitfdWNzMmxvb3A6CisgICAgZm9yICg7IHAgPCBlbmQ7ICsrcCkgeworICAgICAgICBpZiAoKnAgPCAweGYwKQorICAgICAgICAgICAgY2hhcl9jb3VudCArPSAoKCpwICYgMHhjMCkgIT0gMHg4MCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGdvdG8gX3VjczRsb29wOworICAgIH0KKyAgICAqdW5pY29kZV9zaXplID0gY2hhcl9jb3VudDsKKyAgICByZXR1cm4gNjU1MzU7CisKK191Y3M0bG9vcDoKKyAgICBmb3IgKDsgcCA8IGVuZDsgKytwKSB7CisgICAgICAgIGNoYXJfY291bnQgKz0gKCgqcCAmIDB4YzApICE9IDB4ODApOworICAgIH0KKyAgICAqdW5pY29kZV9zaXplID0gY2hhcl9jb3VudDsKKyAgICByZXR1cm4gNjU1Mzc7Cit9CisKKy8qIFNpbWlsYXIgdG8gUHlVbmljb2RlX1dSSVRFIGJ1dCBtYXkgYXR0ZW1wdCB0byB3aWRlbiBhbmQgcmVzaXplIHRoZSBzdHJpbmcKKyAgIGluIGNhc2Ugb2YgZXJyb3JzLiBJbXBsaWNpdCBwYXJhbWV0ZXJzOiB1bmljb2RlLCBraW5kLCBkYXRhLCBvbkVycm9yLgorICAgUG90ZW50aWFsIHJlc2l6aW5nIG92ZXJhbGxvY2F0ZXMsIHNvIHRoZSByZXN1bHQgbmVlZHMgdG8gc2hyaW5rIGF0IHRoZSBlbmQuCisqLworI2RlZmluZSBXUklURV9NQVlCRV9GQUlMKGluZGV4LCB2YWx1ZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgUHlfc3NpemVfdCBwb3MgPSBpbmRleDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBpZiAocG9zID4gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkgJiYgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICB1bmljb2RlX3Jlc2l6ZSgmdW5pY29kZSwgcG9zICsgcG9zLzgpIDwgMCkgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIGdvdG8gb25FcnJvcjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ1bmljb2RlLCAmcG9zLCB2YWx1ZSkgPCAwKSAgICAgICAgICAgICBcCisgICAgICAgICAgICBnb3RvIG9uRXJyb3I7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB9IHdoaWxlICgwKQorCitzdGF0aWMgUHlPYmplY3QgKgorZGVjb2RlX3V0ZjhfZXJyb3JzKGNvbnN0IGNoYXIgKnN0YXJ0cywKKyAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkLAorICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnMsCisgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpKQorewogICAgIGludCBuOwogICAgIGludCBrOwogICAgIFB5X3NzaXplX3Qgc3RhcnRpbnBvczsKICAgICBQeV9zc2l6ZV90IGVuZGlucG9zOwotICAgIFB5X3NzaXplX3Qgb3V0cG9zOwotICAgIGNvbnN0IGNoYXIgKmUsICphbGlnbmVkX2VuZDsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGU7Ci0gICAgUHlfVU5JQ09ERSAqcDsKKyAgICBjb25zdCBjaGFyICplID0gc3RhcnRzICsgc2l6ZTsKKyAgICBjb25zdCBjaGFyICphbGlnbmVkX2VuZDsKICAgICBjb25zdCBjaGFyICplcnJtc2cgPSAiIjsKICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKICAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKIAotICAgIC8qIE5vdGU6IHNpemUgd2lsbCBhbHdheXMgYmUgbG9uZ2VyIHRoYW4gdGhlIHJlc3VsdGluZyBVbmljb2RlCi0gICAgICAgY2hhcmFjdGVyIGNvdW50ICovCi0gICAgdW5pY29kZSA9IF9QeVVuaWNvZGVfTmV3KHNpemUpOwotICAgIGlmICghdW5pY29kZSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaWYgKHNpemUgPT0gMCkgewotICAgICAgICBpZiAoY29uc3VtZWQpCi0gICAgICAgICAgICAqY29uc3VtZWQgPSAwOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZTsKLSAgICB9Ci0KLSAgICAvKiBVbnBhY2sgVVRGLTggZW5jb2RlZCBkYXRhICovCi0gICAgcCA9IHVuaWNvZGUtPnN0cjsKLSAgICBlID0gcyArIHNpemU7CiAgICAgYWxpZ25lZF9lbmQgPSAoY29uc3QgY2hhciAqKSAoKHNpemVfdCkgZSAmIH5MT05HX1BUUl9NQVNLKTsKIAogICAgIHdoaWxlIChzIDwgZSkgewpAQCAtMjYxMywyOSArNDcxNywyOSBAQAogICAgICAgICAgICAgaWYgKCEoKHNpemVfdCkgcyAmIExPTkdfUFRSX01BU0spKSB7CiAgICAgICAgICAgICAgICAgLyogSGVscCByZWdpc3RlciBhbGxvY2F0aW9uICovCiAgICAgICAgICAgICAgICAgcmVnaXN0ZXIgY29uc3QgY2hhciAqX3MgPSBzOwotICAgICAgICAgICAgICAgIHJlZ2lzdGVyIFB5X1VOSUNPREUgKl9wID0gcDsKKyAgICAgICAgICAgICAgICByZWdpc3RlciBQeV9zc2l6ZV90IF9pID0gaTsKICAgICAgICAgICAgICAgICB3aGlsZSAoX3MgPCBhbGlnbmVkX2VuZCkgewogICAgICAgICAgICAgICAgICAgICAvKiBSZWFkIGEgd2hvbGUgbG9uZyBhdCBhIHRpbWUgKGVpdGhlciA0IG9yIDggYnl0ZXMpLAogICAgICAgICAgICAgICAgICAgICAgICBhbmQgZG8gYSBmYXN0IHVucm9sbGVkIGNvcHkgaWYgaXQgb25seSBjb250YWlucyBBU0NJSQogICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzLiAqLwotICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIGRhdGEgPSAqKHVuc2lnbmVkIGxvbmcgKikgX3M7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChkYXRhICYgQVNDSUlfQ0hBUl9NQVNLKQorICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHZhbHVlID0gKih1bnNpZ25lZCBsb25nICopIF9zOworICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWUgJiBBU0NJSV9DSEFSX01BU0spCiAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgX3BbMF0gPSAodW5zaWduZWQgY2hhcikgX3NbMF07Ci0gICAgICAgICAgICAgICAgICAgIF9wWzFdID0gKHVuc2lnbmVkIGNoYXIpIF9zWzFdOwotICAgICAgICAgICAgICAgICAgICBfcFsyXSA9ICh1bnNpZ25lZCBjaGFyKSBfc1syXTsKLSAgICAgICAgICAgICAgICAgICAgX3BbM10gPSAodW5zaWduZWQgY2hhcikgX3NbM107CisgICAgICAgICAgICAgICAgICAgIFdSSVRFX01BWUJFX0ZBSUwoX2krMCwgX3NbMF0pOworICAgICAgICAgICAgICAgICAgICBXUklURV9NQVlCRV9GQUlMKF9pKzEsIF9zWzFdKTsKKyAgICAgICAgICAgICAgICAgICAgV1JJVEVfTUFZQkVfRkFJTChfaSsyLCBfc1syXSk7CisgICAgICAgICAgICAgICAgICAgIFdSSVRFX01BWUJFX0ZBSUwoX2krMywgX3NbM10pOwogI2lmIChTSVpFT0ZfTE9ORyA9PSA4KQotICAgICAgICAgICAgICAgICAgICBfcFs0XSA9ICh1bnNpZ25lZCBjaGFyKSBfc1s0XTsKLSAgICAgICAgICAgICAgICAgICAgX3BbNV0gPSAodW5zaWduZWQgY2hhcikgX3NbNV07Ci0gICAgICAgICAgICAgICAgICAgIF9wWzZdID0gKHVuc2lnbmVkIGNoYXIpIF9zWzZdOwotICAgICAgICAgICAgICAgICAgICBfcFs3XSA9ICh1bnNpZ25lZCBjaGFyKSBfc1s3XTsKKyAgICAgICAgICAgICAgICAgICAgV1JJVEVfTUFZQkVfRkFJTChfaSs0LCBfc1s0XSk7CisgICAgICAgICAgICAgICAgICAgIFdSSVRFX01BWUJFX0ZBSUwoX2krNSwgX3NbNV0pOworICAgICAgICAgICAgICAgICAgICBXUklURV9NQVlCRV9GQUlMKF9pKzYsIF9zWzZdKTsKKyAgICAgICAgICAgICAgICAgICAgV1JJVEVfTUFZQkVfRkFJTChfaSs3LCBfc1s3XSk7CiAjZW5kaWYKICAgICAgICAgICAgICAgICAgICAgX3MgKz0gU0laRU9GX0xPTkc7Ci0gICAgICAgICAgICAgICAgICAgIF9wICs9IFNJWkVPRl9MT05HOworICAgICAgICAgICAgICAgICAgICBfaSArPSBTSVpFT0ZfTE9ORzsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgcyA9IF9zOwotICAgICAgICAgICAgICAgIHAgPSBfcDsKKyAgICAgICAgICAgICAgICBpID0gX2k7CiAgICAgICAgICAgICAgICAgaWYgKHMgPT0gZSkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgY2ggPSAodW5zaWduZWQgY2hhcikqczsKQEAgLTI2NDMsNyArNDc0Nyw3IEBACiAgICAgICAgIH0KIAogICAgICAgICBpZiAoY2ggPCAweDgwKSB7Ci0gICAgICAgICAgICAqcCsrID0gKFB5X1VOSUNPREUpY2g7CisgICAgICAgICAgICBXUklURV9NQVlCRV9GQUlMKGkrKywgY2gpOwogICAgICAgICAgICAgcysrOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KQEAgLTI2ODYsNyArNDc5MCw3IEBACiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjaCA9ICgoc1swXSAmIDB4MWYpIDw8IDYpICsgKHNbMV0gJiAweDNmKTsKICAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHgwMDdGKSAmJiAoY2ggPD0gMHgwN0ZGKSk7Ci0gICAgICAgICAgICAqcCsrID0gKFB5X1VOSUNPREUpY2g7CisgICAgICAgICAgICBXUklURV9NQVlCRV9GQUlMKGkrKywgY2gpOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSAzOgpAQCAtMjcxNSw3ICs0ODE5LDcgQEAKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGNoID0gKChzWzBdICYgMHgwZikgPDwgMTIpICsgKChzWzFdICYgMHgzZikgPDwgNikgKyAoc1syXSAmIDB4M2YpOwogICAgICAgICAgICAgYXNzZXJ0ICgoY2ggPiAweDA3RkYpICYmIChjaCA8PSAweEZGRkYpKTsKLSAgICAgICAgICAgICpwKysgPSAoUHlfVU5JQ09ERSljaDsKKyAgICAgICAgICAgIFdSSVRFX01BWUJFX0ZBSUwoaSsrLCBjaCk7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIDQ6CkBAIC0yNzM4LDU2ICs0ODQyLDExNiBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgY2ggPSAoKHNbMF0gJiAweDcpIDw8IDE4KSArICgoc1sxXSAmIDB4M2YpIDw8IDEyKSArCiAgICAgICAgICAgICAgICAgICgoc1syXSAmIDB4M2YpIDw8IDYpICsgKHNbM10gJiAweDNmKTsKLSAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHhGRkZGKSAmJiAoY2ggPD0gMHgxMGZmZmYpKTsKKyAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHhGRkZGKSAmJiAoY2ggPD0gTUFYX1VOSUNPREUpKTsKIAotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKWNoOwotI2Vsc2UKLSAgICAgICAgICAgIC8qICBjb21wdXRlIGFuZCBhcHBlbmQgdGhlIHR3byBzdXJyb2dhdGVzOiAqLwotCi0gICAgICAgICAgICAvKiAgdHJhbnNsYXRlIGZyb20gMTAwMDAuLjEwRkZGRiB0byAwLi5GRkZGICovCi0gICAgICAgICAgICBjaCAtPSAweDEwMDAwOwotCi0gICAgICAgICAgICAvKiAgaGlnaCBzdXJyb2dhdGUgPSB0b3AgMTAgYml0cyBhZGRlZCB0byBEODAwICovCi0gICAgICAgICAgICAqcCsrID0gKFB5X1VOSUNPREUpKDB4RDgwMCArIChjaCA+PiAxMCkpOwotCi0gICAgICAgICAgICAvKiAgbG93IHN1cnJvZ2F0ZSA9IGJvdHRvbSAxMCBiaXRzIGFkZGVkIHRvIERDMDAgKi8KLSAgICAgICAgICAgICpwKysgPSAoUHlfVU5JQ09ERSkoMHhEQzAwICsgKGNoICYgMHgwM0ZGKSk7Ci0jZW5kaWYKKyAgICAgICAgICAgIFdSSVRFX01BWUJFX0ZBSUwoaSsrLCBjaCk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICBzICs9IG47CiAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICB1dGY4RXJyb3I6Ci0gICAgICAgIG91dHBvcyA9IHAtUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSk7CiAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgInV0Zi04IiwgZXJybXNnLAogICAgICAgICAgICAgICAgICZzdGFydHMsICZlLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAmdW5pY29kZSwgJm91dHBvcywgJnApKQorICAgICAgICAgICAgICAgICZ1bmljb2RlLCAmaSkpCiAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgIC8qIFVwZGF0ZSBkYXRhIGJlY2F1c2UgdW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIgbWlnaHQgaGF2ZQorICAgICAgICAgICByZS1jcmVhdGVkIG9yIHJlc2l6ZWQgdGhlIHVuaWNvZGUgb2JqZWN0LiAqLwogICAgICAgICBhbGlnbmVkX2VuZCA9IChjb25zdCBjaGFyICopICgoc2l6ZV90KSBlICYgfkxPTkdfUFRSX01BU0spOwogICAgIH0KICAgICBpZiAoY29uc3VtZWQpCiAgICAgICAgICpjb25zdW1lZCA9IHMtc3RhcnRzOwogCi0gICAgLyogQWRqdXN0IGxlbmd0aCAqLwotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdW5pY29kZSwgcCAtIHVuaWNvZGUtPnN0cikgPCAwKQorICAgIC8qIEFkanVzdCBsZW5ndGggYW5kIHJlYWR5IHN0cmluZyB3aGVuIGl0IGNvbnRhaW5lZCBlcnJvcnMgYW5kCisgICAgICAgaXMgb2YgdGhlIG9sZCByZXNpemFibGUga2luZC4gKi8KKyAgICBpZiAodW5pY29kZV9yZXNpemUoJnVuaWNvZGUsIGkpIDwgMCkKKyAgICAgICAgZ290byBvbkVycm9yOworICAgIHVuaWNvZGVfYWRqdXN0X21heGNoYXIoJnVuaWNvZGUpOworICAgIGlmICh1bmljb2RlID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKIAogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1bmljb2RlLCAxKSk7CisgICAgcmV0dXJuIHVuaWNvZGU7CiAKICAgb25FcnJvcjoKICAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7CiAgICAgUHlfWERFQ1JFRihleGMpOwotICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICBQeV9YREVDUkVGKHVuaWNvZGUpOwogICAgIHJldHVybiBOVUxMOwogfQorI3VuZGVmIFdSSVRFX01BWUJFX0ZBSUwKIAotI3VuZGVmIEFTQ0lJX0NIQVJfTUFTSworUHlPYmplY3QgKgorUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqY29uc3VtZWQpCit7CisgICAgUHlfVUNTNCBtYXhjaGFyID0gMDsKKyAgICBQeV9zc2l6ZV90IHVuaWNvZGVfc2l6ZTsKKyAgICBpbnQgaGFzX2Vycm9ycyA9IDA7CisgICAgUHlPYmplY3QgKnVuaWNvZGU7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKyAgICBjb25zdCBjaGFyICpzdGFydHMgPSBzOworICAgIGNvbnN0IGNoYXIgKmU7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgaWYgKHNpemUgPT0gMCkgeworICAgICAgICBpZiAoY29uc3VtZWQpCisgICAgICAgICAgICAqY29uc3VtZWQgPSAwOworICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgIH0KKworICAgIG1heGNoYXIgPSB1dGY4X3NjYW5uZXIoKGNvbnN0IHVuc2lnbmVkIGNoYXIgKilzLCBzaXplLCAmdW5pY29kZV9zaXplKTsKKworICAgIC8qIFdoZW4gdGhlIHN0cmluZyBpcyBBU0NJSSBvbmx5LCBqdXN0IHVzZSBtZW1jcHkgYW5kIHJldHVybi4KKyAgICAgICB1bmljb2RlX3NpemUgbWF5IGJlICE9IHNpemUgaWYgdGhlcmUgaXMgYW4gaW5jb21wbGV0ZSBVVEYtOAorICAgICAgIHNlcXVlbmNlIGF0IHRoZSBlbmQgb2YgdGhlIEFTQ0lJIGJsb2NrLiAgKi8KKyAgICBpZiAobWF4Y2hhciA8IDEyOCAmJiBzaXplID09IHVuaWNvZGVfc2l6ZSkgeworICAgICAgICBpZiAoY29uc3VtZWQpCisgICAgICAgICAgICAqY29uc3VtZWQgPSBzaXplOworICAgICAgICByZXR1cm4gdW5pY29kZV9mcm9tYXNjaWkoKGNvbnN0IHVuc2lnbmVkIGNoYXIgKilzLCBzaXplKTsKKyAgICB9CisKKyAgICB1bmljb2RlID0gUHlVbmljb2RlX05ldyh1bmljb2RlX3NpemUsIG1heGNoYXIpOworICAgIGlmICghdW5pY29kZSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1bmljb2RlKTsKKworICAgIC8qIFVucGFjayBVVEYtOCBlbmNvZGVkIGRhdGEgKi8KKyAgICBpID0gMDsKKyAgICBlID0gc3RhcnRzICsgc2l6ZTsKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICBoYXNfZXJyb3JzID0gdWNzMWxpYl91dGY4X3RyeV9kZWNvZGUocywgZSwgKFB5X1VDUzEgKikgZGF0YSwgJnMsICZpKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgaGFzX2Vycm9ycyA9IHVjczJsaWJfdXRmOF90cnlfZGVjb2RlKHMsIGUsIChQeV9VQ1MyICopIGRhdGEsICZzLCAmaSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIGhhc19lcnJvcnMgPSB1Y3M0bGliX3V0ZjhfdHJ5X2RlY29kZShzLCBlLCAoUHlfVUNTNCAqKSBkYXRhLCAmcywgJmkpOworICAgICAgICBicmVhazsKKyAgICB9CisgICAgaWYgKCFoYXNfZXJyb3JzKSB7CisgICAgICAgIC8qIEVuc3VyZSB0aGUgdW5pY29kZSBzaXplIGNhbGN1bGF0aW9uIHdhcyBjb3JyZWN0ICovCisgICAgICAgIGFzc2VydChpID09IHVuaWNvZGVfc2l6ZSk7CisgICAgICAgIGFzc2VydChzID09IGUpOworICAgICAgICBpZiAoY29uc3VtZWQpCisgICAgICAgICAgICAqY29uc3VtZWQgPSBzaXplOworICAgICAgICByZXR1cm4gdW5pY29kZTsKKyAgICB9CisKKyAgICAvKiBJbiBjYXNlIG9mIGVycm9ycywgbWF4Y2hhciBhbmQgc2l6ZSBjb21wdXRhdGlvbiBtaWdodCBiZSBpbmNvcnJlY3Q7CisgICAgICAgY29kZSBiZWxvdyByZWZpdHMgYW5kIHJlc2l6ZXMgYXMgbmVjZXNzYXJ5LiAqLworICAgIHJldHVybiBkZWNvZGVfdXRmOF9lcnJvcnMoc3RhcnRzLCBzaXplLCBlcnJvcnMsIGNvbnN1bWVkLCBzLCB1bmljb2RlLCBpKTsKK30KIAogI2lmZGVmIF9fQVBQTEVfXwogCkBAIC0yODU4LDcgKzUwMjIsNyBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgY2ggPSAoKHNbMF0gJiAweDBmKSA8PCAxMikgKyAoKHNbMV0gJiAweDNmKSA8PCA2KSArIChzWzJdICYgMHgzZik7CiAgICAgICAgICAgICBhc3NlcnQgKChjaCA+IDB4MDdGRikgJiYgKGNoIDw9IDB4RkZGRikpOwotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKWNoOworICAgICAgICAgICAgKnArKyA9ICh3Y2hhcl90KWNoOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSA0OgpAQCAtMjg3MywyMSArNTAzNywxNCBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgY2ggPSAoKHNbMF0gJiAweDcpIDw8IDE4KSArICgoc1sxXSAmIDB4M2YpIDw8IDEyKSArCiAgICAgICAgICAgICAgICAgICgoc1syXSAmIDB4M2YpIDw8IDYpICsgKHNbM10gJiAweDNmKTsKLSAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHhGRkZGKSAmJiAoY2ggPD0gMHgxMGZmZmYpKTsKKyAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHhGRkZGKSAmJiAoY2ggPD0gTUFYX1VOSUNPREUpKTsKIAogI2lmIFNJWkVPRl9XQ0hBUl9UID09IDQKICAgICAgICAgICAgICpwKysgPSAod2NoYXJfdCljaDsKICNlbHNlCiAgICAgICAgICAgICAvKiAgY29tcHV0ZSBhbmQgYXBwZW5kIHRoZSB0d28gc3Vycm9nYXRlczogKi8KLQotICAgICAgICAgICAgLyogIHRyYW5zbGF0ZSBmcm9tIDEwMDAwLi4xMEZGRkYgdG8gMC4uRkZGRiAqLwotICAgICAgICAgICAgY2ggLT0gMHgxMDAwMDsKLQotICAgICAgICAgICAgLyogIGhpZ2ggc3Vycm9nYXRlID0gdG9wIDEwIGJpdHMgYWRkZWQgdG8gRDgwMCAqLwotICAgICAgICAgICAgKnArKyA9ICh3Y2hhcl90KSgweEQ4MDAgKyAoY2ggPj4gMTApKTsKLQotICAgICAgICAgICAgLyogIGxvdyBzdXJyb2dhdGUgPSBib3R0b20gMTAgYml0cyBhZGRlZCB0byBEQzAwICovCi0gICAgICAgICAgICAqcCsrID0gKHdjaGFyX3QpKDB4REMwMCArIChjaCAmIDB4MDNGRikpOworICAgICAgICAgICAgKnArKyA9ICh3Y2hhcl90KVB5X1VOSUNPREVfSElHSF9TVVJST0dBVEUoY2gpOworICAgICAgICAgICAgKnArKyA9ICh3Y2hhcl90KVB5X1VOSUNPREVfTE9XX1NVUlJPR0FURShjaCk7CiAjZW5kaWYKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0yOTA0LDE4NSArNTA2MSw2OSBAQAogCiAjZW5kaWYgLyogX19BUFBMRV9fICovCiAKLS8qIEFsbG9jYXRpb24gc3RyYXRlZ3k6ICBpZiB0aGUgc3RyaW5nIGlzIHNob3J0LCBjb252ZXJ0IGludG8gYSBzdGFjayBidWZmZXIKKy8qIFByaW1hcnkgaW50ZXJuYWwgZnVuY3Rpb24gd2hpY2ggY3JlYXRlcyB1dGY4IGVuY29kZWQgYnl0ZXMgb2JqZWN0cy4KKworICAgQWxsb2NhdGlvbiBzdHJhdGVneTogIGlmIHRoZSBzdHJpbmcgaXMgc2hvcnQsIGNvbnZlcnQgaW50byBhIHN0YWNrIGJ1ZmZlcgogICAgYW5kIGFsbG9jYXRlIGV4YWN0bHkgYXMgbXVjaCBzcGFjZSBuZWVkZWQgYXQgdGhlIGVuZC4gIEVsc2UgYWxsb2NhdGUgdGhlCiAgICBtYXhpbXVtIHBvc3NpYmxlIG5lZWRlZCAoNCByZXN1bHQgYnl0ZXMgcGVyIFVuaWNvZGUgY2hhcmFjdGVyKSwgYW5kIHJldHVybgogICAgdGhlIGV4Y2VzcyBtZW1vcnkgYXQgdGhlIGVuZC4KICovCiBQeU9iamVjdCAqCi1QeVVuaWNvZGVfRW5jb2RlVVRGOChjb25zdCBQeV9VTklDT0RFICpzLAotICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorX1B5VW5pY29kZV9Bc1VURjhTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUsIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKLSNkZWZpbmUgTUFYX1NIT1JUX1VOSUNIQVJTIDMwMCAgLyogbGFyZ2VzdCBzaXplIHdlJ2xsIGRvIG9uIHRoZSBzdGFjayAqLworICAgIGVudW0gUHlVbmljb2RlX0tpbmQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X3NzaXplX3Qgc2l6ZTsKIAotICAgIFB5X3NzaXplX3QgaTsgICAgICAgICAgICAgICAgLyogaW5kZXggaW50byBzIG9mIG5leHQgaW5wdXQgYnl0ZSAqLwotICAgIFB5T2JqZWN0ICpyZXN1bHQ7ICAgICAgICAgICAgLyogcmVzdWx0IHN0cmluZyBvYmplY3QgKi8KLSAgICBjaGFyICpwOyAgICAgICAgICAgICAgICAgICAgIC8qIG5leHQgZnJlZSBieXRlIGluIG91dHB1dCBidWZmZXIgKi8KLSAgICBQeV9zc2l6ZV90IG5hbGxvY2F0ZWQ7ICAgICAgLyogbnVtYmVyIG9mIHJlc3VsdCBieXRlcyBhbGxvY2F0ZWQgKi8KLSAgICBQeV9zc2l6ZV90IG5uZWVkZWQ7ICAgICAgICAgICAgLyogbnVtYmVyIG9mIHJlc3VsdCBieXRlcyBuZWVkZWQgKi8KLSAgICBjaGFyIHN0YWNrYnVmW01BWF9TSE9SVF9VTklDSEFSUyAqIDRdOwotICAgIFB5T2JqZWN0ICplcnJvckhhbmRsZXIgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwotCi0gICAgYXNzZXJ0KHMgIT0gTlVMTCk7Ci0gICAgYXNzZXJ0KHNpemUgPj0gMCk7Ci0KLSAgICBpZiAoc2l6ZSA8PSBNQVhfU0hPUlRfVU5JQ0hBUlMpIHsKLSAgICAgICAgLyogV3JpdGUgaW50byB0aGUgc3RhY2sgYnVmZmVyOyBuYWxsb2NhdGVkIGNhbid0IG92ZXJmbG93LgotICAgICAgICAgKiBBdCB0aGUgZW5kLCB3ZSdsbCBhbGxvY2F0ZSBleGFjdGx5IGFzIG11Y2ggaGVhcCBzcGFjZSBhcyBpdAotICAgICAgICAgKiB0dXJucyBvdXQgd2UgbmVlZC4KLSAgICAgICAgICovCi0gICAgICAgIG5hbGxvY2F0ZWQgPSBQeV9TQUZFX0RPV05DQVNUKHNpemVvZihzdGFja2J1ZiksIHNpemVfdCwgaW50KTsKLSAgICAgICAgcmVzdWx0ID0gTlVMTDsgICAvKiB3aWxsIGFsbG9jYXRlIGFmdGVyIHdlJ3JlIGRvbmUgKi8KLSAgICAgICAgcCA9IHN0YWNrYnVmOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgLyogT3ZlcmFsbG9jYXRlIG9uIHRoZSBoZWFwLCBhbmQgZ2l2ZSB0aGUgZXhjZXNzIGJhY2sgYXQgdGhlIGVuZC4gKi8KLSAgICAgICAgbmFsbG9jYXRlZCA9IHNpemUgKiA0OwotICAgICAgICBpZiAobmFsbG9jYXRlZCAvIDQgIT0gc2l6ZSkgIC8qIG92ZXJmbG93ISAqLwotICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgbmFsbG9jYXRlZCk7Ci0gICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBwID0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKLSAgICB9Ci0KLSAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZTspIHsKLSAgICAgICAgUHlfVUNTNCBjaCA9IHNbaSsrXTsKLQotICAgICAgICBpZiAoY2ggPCAweDgwKQotICAgICAgICAgICAgLyogRW5jb2RlIEFTQ0lJICovCi0gICAgICAgICAgICAqcCsrID0gKGNoYXIpIGNoOwotCi0gICAgICAgIGVsc2UgaWYgKGNoIDwgMHgwODAwKSB7Ci0gICAgICAgICAgICAvKiBFbmNvZGUgTGF0aW4tMSAqLwotICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweGMwIHwgKGNoID4+IDYpKTsKLSAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8IChjaCAmIDB4M2YpKTsKLSAgICAgICAgfSBlbHNlIGlmICgweEQ4MDAgPD0gY2ggJiYgY2ggPD0gMHhERkZGKSB7Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgLyogU3BlY2lhbCBjYXNlOiBjaGVjayBmb3IgaGlnaCBhbmQgbG93IHN1cnJvZ2F0ZSAqLwotICAgICAgICAgICAgaWYgKGNoIDw9IDB4REJGRiAmJiBpICE9IHNpemUgJiYgMHhEQzAwIDw9IHNbaV0gJiYgc1tpXSA8PSAweERGRkYpIHsKLSAgICAgICAgICAgICAgICBQeV9VQ1M0IGNoMiA9IHNbaV07Ci0gICAgICAgICAgICAgICAgLyogQ29tYmluZSB0aGUgdHdvIHN1cnJvZ2F0ZXMgdG8gZm9ybSBhIFVDUzQgdmFsdWUgKi8KLSAgICAgICAgICAgICAgICBjaCA9ICgoY2ggLSAweEQ4MDApIDw8IDEwIHwgKGNoMiAtIDB4REMwMCkpICsgMHgxMDAwMDsKLSAgICAgICAgICAgICAgICBpKys7Ci0KLSAgICAgICAgICAgICAgICAvKiBFbmNvZGUgVUNTNCBVbmljb2RlIG9yZGluYWxzICovCi0gICAgICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweGYwIHwgKGNoID4+IDE4KSk7Ci0gICAgICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKChjaCA+PiAxMikgJiAweDNmKSk7Ci0gICAgICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKChjaCA+PiA2KSAmIDB4M2YpKTsKLSAgICAgICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ODAgfCAoY2ggJiAweDNmKSk7Ci0gICAgICAgICAgICB9IGVsc2UgewotI2VuZGlmCi0gICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuZXdwb3M7Ci0gICAgICAgICAgICAgICAgUHlPYmplY3QgKnJlcDsKLSAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHJlcHNpemUsIGs7Ci0gICAgICAgICAgICAgICAgcmVwID0gdW5pY29kZV9lbmNvZGVfY2FsbF9lcnJvcmhhbmRsZXIKLSAgICAgICAgICAgICAgICAgICAgKGVycm9ycywgJmVycm9ySGFuZGxlciwgInV0Zi04IiwgInN1cnJvZ2F0ZXMgbm90IGFsbG93ZWQiLAotICAgICAgICAgICAgICAgICAgICAgcywgc2l6ZSwgJmV4YywgaS0xLCBpLCAmbmV3cG9zKTsKLSAgICAgICAgICAgICAgICBpZiAoIXJlcCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLQotICAgICAgICAgICAgICAgIGlmIChQeUJ5dGVzX0NoZWNrKHJlcCkpCi0gICAgICAgICAgICAgICAgICAgIHJlcHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKHJlcCk7Ci0gICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICByZXBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKHJlcCk7Ci0KLSAgICAgICAgICAgICAgICBpZiAocmVwc2l6ZSA+IDQpIHsKLSAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBvZmZzZXQ7Ci0KLSAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQotICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0ID0gcCAtIHN0YWNrYnVmOwotICAgICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQgPSBwIC0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKLQotICAgICAgICAgICAgICAgICAgICBpZiAobmFsbG9jYXRlZCA+IFBZX1NTSVpFX1RfTUFYIC0gcmVwc2l6ZSArIDQpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIC8qIGludGVnZXIgb3ZlcmZsb3cgKi8KLSAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIG5hbGxvY2F0ZWQgKz0gcmVwc2l6ZSAtIDQ7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgIT0gTlVMTCkgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmVzdWx0LCBuYWxsb2NhdGVkKSA8IDApCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgbmFsbG9jYXRlZCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5X01FTUNQWShQeUJ5dGVzX0FTX1NUUklORyhyZXN1bHQpLCBzdGFja2J1Ziwgb2Zmc2V0KTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICBwID0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KSArIG9mZnNldDsKLSAgICAgICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhyZXApKSB7Ci0gICAgICAgICAgICAgICAgICAgIGNoYXIgKnByZXAgPSBQeUJ5dGVzX0FTX1NUUklORyhyZXApOwotICAgICAgICAgICAgICAgICAgICBmb3IoayA9IHJlcHNpemU7IGsgPiAwOyBrLS0pCi0gICAgICAgICAgICAgICAgICAgICAgICAqcCsrID0gKnByZXArKzsKLSAgICAgICAgICAgICAgICB9IGVsc2UgLyogcmVwIGlzIHVuaWNvZGUgKi8gewotICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFICpwcmVwID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVwKTsKLSAgICAgICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjOwotCi0gICAgICAgICAgICAgICAgICAgIGZvcihrPTA7IGs8cmVwc2l6ZTsgaysrKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBjID0gcHJlcFtrXTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmICgweDgwIDw9IGMpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsICJ1dGYtOCIsIHMsIHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLTEsIGksICJzdXJyb2dhdGVzIG5vdCBhbGxvd2VkIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgICpwKysgPSAoY2hhcilwcmVwW2tdOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXApOwotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgIH0KLSNlbmRpZgotICAgICAgICB9IGVsc2UgaWYgKGNoIDwgMHgxMDAwMCkgewotICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweGUwIHwgKGNoID4+IDEyKSk7Ci0gICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ODAgfCAoKGNoID4+IDYpICYgMHgzZikpOwotICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKGNoICYgMHgzZikpOwotICAgICAgICB9IGVsc2UgLyogY2ggPj0gMHgxMDAwMCAqLyB7Ci0gICAgICAgICAgICAvKiBFbmNvZGUgVUNTNCBVbmljb2RlIG9yZGluYWxzICovCi0gICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ZjAgfCAoY2ggPj4gMTgpKTsKLSAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8ICgoY2ggPj4gMTIpICYgMHgzZikpOwotICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKChjaCA+PiA2KSAmIDB4M2YpKTsKLSAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8IChjaCAmIDB4M2YpKTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChyZXN1bHQgPT0gTlVMTCkgewotICAgICAgICAvKiBUaGlzIHdhcyBzdGFjayBhbGxvY2F0ZWQuICovCi0gICAgICAgIG5uZWVkZWQgPSBwIC0gc3RhY2tidWY7Ci0gICAgICAgIGFzc2VydChubmVlZGVkIDw9IG5hbGxvY2F0ZWQpOwotICAgICAgICByZXN1bHQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKHN0YWNrYnVmLCBubmVlZGVkKTsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8qIEN1dCBiYWNrIHRvIHNpemUgYWN0dWFsbHkgbmVlZGVkLiAqLwotICAgICAgICBubmVlZGVkID0gcCAtIFB5Qnl0ZXNfQVNfU1RSSU5HKHJlc3VsdCk7Ci0gICAgICAgIGFzc2VydChubmVlZGVkIDw9IG5hbGxvY2F0ZWQpOwotICAgICAgICBfUHlCeXRlc19SZXNpemUoJnJlc3VsdCwgbm5lZWRlZCk7Ci0gICAgfQotICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKLSAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLSBlcnJvcjoKLSAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7Ci0gICAgUHlfWERFQ1JFRihleGMpOwotICAgIFB5X1hERUNSRUYocmVzdWx0KTsKLSAgICByZXR1cm4gTlVMTDsKLQotI3VuZGVmIE1BWF9TSE9SVF9VTklDSEFSUwotfQotCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzVVRGOFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKLXsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEY4KFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoUHlVbmljb2RlX1VURjgodW5pY29kZSkpCisgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKFB5VW5pY29kZV9VVEY4KHVuaWNvZGUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfVVRGOF9MRU5HVEgodW5pY29kZSkpOworCisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1bmljb2RlKTsKKyAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSk7CisKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBkZWZhdWx0OgorICAgICAgICBhc3NlcnQoMCk7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgLyogdGhlIHN0cmluZyBjYW5ub3QgYmUgQVNDSUksIG9yIFB5VW5pY29kZV9VVEY4KCkgd291bGQgYmUgc2V0ICovCisgICAgICAgIGFzc2VydCghUHlVbmljb2RlX0lTX0FTQ0lJKHVuaWNvZGUpKTsKKyAgICAgICAgcmV0dXJuIHVjczFsaWJfdXRmOF9lbmNvZGVyKHVuaWNvZGUsIGRhdGEsIHNpemUsIGVycm9ycyk7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIHVjczJsaWJfdXRmOF9lbmNvZGVyKHVuaWNvZGUsIGRhdGEsIHNpemUsIGVycm9ycyk7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIHVjczRsaWJfdXRmOF9lbmNvZGVyKHVuaWNvZGUsIGRhdGEsIHNpemUsIGVycm9ycyk7CisgICAgfQorfQorCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRW5jb2RlVVRGOChjb25zdCBQeV9VTklDT0RFICpzLAorICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQoreworICAgIFB5T2JqZWN0ICp2LCAqdW5pY29kZTsKKworICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocywgc2l6ZSk7CisgICAgaWYgKHVuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgdiA9IF9QeVVuaWNvZGVfQXNVVEY4U3RyaW5nKHVuaWNvZGUsIGVycm9ycyk7CisgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgIHJldHVybiB2OworfQorCitQeU9iamVjdCAqCitQeVVuaWNvZGVfQXNVVEY4U3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIHJldHVybiBfUHlVbmljb2RlX0FzVVRGOFN0cmluZyh1bmljb2RlLCBOVUxMKTsKIH0KIAogLyogLS0tIFVURi0zMiBDb2RlYyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCkBAIC0zMTA3LDE0ICs1MTQ4LDcgQEAKICAgICBQeV9zc2l6ZV90IHN0YXJ0aW5wb3M7CiAgICAgUHlfc3NpemVfdCBlbmRpbnBvczsKICAgICBQeV9zc2l6ZV90IG91dHBvczsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGU7Ci0gICAgUHlfVU5JQ09ERSAqcDsKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgaW50IHBhaXJzID0gMDsKLSAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpxcTsKLSNlbHNlCi0gICAgY29uc3QgaW50IHBhaXJzID0gMDsKLSNlbmRpZgorICAgIFB5T2JqZWN0ICp1bmljb2RlOwogICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnEsICplOwogICAgIGludCBibyA9IDA7ICAgICAgIC8qIGFzc3VtZSBuYXRpdmUgb3JkZXJpbmcgYnkgZGVmYXVsdCAqLwogICAgIGNvbnN0IGNoYXIgKmVycm1zZyA9ICIiOwpAQCAtMzE3OCwyMyArNTIxMiwxMyBAQAogICAgICAgICBpb3JkZXJbM10gPSAwOwogICAgIH0KIAotICAgIC8qIE9uIG5hcnJvdyBidWlsZHMgd2Ugc3BsaXQgY2hhcmFjdGVycyBvdXRzaWRlIHRoZSBCTVAgaW50byB0d28KLSAgICAgICBjb2RlcG9pbnRzID0+IGNvdW50IGhvdyBtdWNoIGV4dHJhIHNwYWNlIHdlIG5lZWQuICovCi0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgIGZvciAocXEgPSBxOyBxcSA8IGU7IHFxICs9IDQpCi0gICAgICAgIGlmIChxcVtpb3JkZXJbMl1dICE9IDAgfHwgcXFbaW9yZGVyWzNdXSAhPSAwKQotICAgICAgICAgICAgcGFpcnMrKzsKLSNlbmRpZgotCiAgICAgLyogVGhpcyBtaWdodCBiZSBvbmUgdG8gbXVjaCwgYmVjYXVzZSBvZiBhIEJPTSAqLwotICAgIHVuaWNvZGUgPSBfUHlVbmljb2RlX05ldygoc2l6ZSszKS80K3BhaXJzKTsKKyAgICB1bmljb2RlID0gUHlVbmljb2RlX05ldygoc2l6ZSszKS80LCAxMjcpOwogICAgIGlmICghdW5pY29kZSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKHNpemUgPT0gMCkKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7Ci0KLSAgICAvKiBVbnBhY2sgVVRGLTMyIGVuY29kZWQgZGF0YSAqLwotICAgIHAgPSB1bmljb2RlLT5zdHI7CisgICAgICAgIHJldHVybiB1bmljb2RlOworICAgIG91dHBvcyA9IDA7CiAKICAgICB3aGlsZSAocSA8IGUpIHsKICAgICAgICAgUHlfVUNTNCBjaDsKQEAgLTMyMTksMjQgKzUyNDMsMTYgQEAKICAgICAgICAgICAgIGVuZGlucG9zID0gc3RhcnRpbnBvcys0OwogICAgICAgICAgICAgZ290byB1dGYzMkVycm9yOwogICAgICAgICB9Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICBpZiAoY2ggPj0gMHgxMDAwMCkKLSAgICAgICAgewotICAgICAgICAgICAgKnArKyA9IDB4RDgwMCB8ICgoY2gtMHgxMDAwMCkgPj4gMTApOwotICAgICAgICAgICAgKnArKyA9IDB4REMwMCB8ICgoY2gtMHgxMDAwMCkgJiAweDNGRik7Ci0gICAgICAgIH0KLSAgICAgICAgZWxzZQotI2VuZGlmCi0gICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnVuaWNvZGUsICZvdXRwb3MsIGNoKSA8IDApCisgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgIHEgKz0gNDsKICAgICAgICAgY29udGludWU7CiAgICAgICB1dGYzMkVycm9yOgotICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwogICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAogICAgICAgICAgICAgICAgICJ1dGYzMiIsIGVycm1zZywKICAgICAgICAgICAgICAgICAmc3RhcnRzLCAoY29uc3QgY2hhciAqKikmZSwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgKGNvbnN0IGNoYXIgKiopJnEsCi0gICAgICAgICAgICAgICAgJnVuaWNvZGUsICZvdXRwb3MsICZwKSkKKyAgICAgICAgICAgICAgICAmdW5pY29kZSwgJm91dHBvcykpCiAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgfQogCkBAIC0zMjQ3LDEyICs1MjYzLDEyIEBACiAgICAgICAgICpjb25zdW1lZCA9IChjb25zdCBjaGFyICopcS1zdGFydHM7CiAKICAgICAvKiBBZGp1c3QgbGVuZ3RoICovCi0gICAgaWYgKF9QeVVuaWNvZGVfUmVzaXplKCZ1bmljb2RlLCBwIC0gdW5pY29kZS0+c3RyKSA8IDApCisgICAgaWYgKHVuaWNvZGVfcmVzaXplKCZ1bmljb2RlLCBvdXRwb3MpIDwgMCkKICAgICAgICAgZ290byBvbkVycm9yOwogCiAgICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOwogICAgIFB5X1hERUNSRUYoZXhjKTsKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZTsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQodW5pY29kZSk7CiAKICAgb25FcnJvcjoKICAgICBQeV9ERUNSRUYodW5pY29kZSk7CkBAIC0zMjYyLDE5ICs1Mjc4LDE2IEBACiB9CiAKIFB5T2JqZWN0ICoKLVB5VW5pY29kZV9FbmNvZGVVVEYzMihjb25zdCBQeV9VTklDT0RFICpzLAotICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgaW50IGJ5dGVvcmRlcikKK19QeVVuaWNvZGVfRW5jb2RlVVRGMzIoUHlPYmplY3QgKnN0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgICBpbnQgYnl0ZW9yZGVyKQogeworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBsZW47CiAgICAgUHlPYmplY3QgKnY7CiAgICAgdW5zaWduZWQgY2hhciAqcDsKLSAgICBQeV9zc2l6ZV90IG5zaXplLCBieXRlc2l6ZTsKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgUHlfc3NpemVfdCBpLCBwYWlyczsKLSNlbHNlCi0gICAgY29uc3QgaW50IHBhaXJzID0gMDsKLSNlbmRpZgorICAgIFB5X3NzaXplX3QgbnNpemUsIGJ5dGVzaXplLCBpOwogICAgIC8qIE9mZnNldHMgZnJvbSBwIGZvciBzdG9yaW5nIGJ5dGUgcGFpcnMgaW4gdGhlIHJpZ2h0IG9yZGVyLiAqLwogI2lmZGVmIEJZVEVPUkRFUl9JU19MSVRUTEVfRU5ESUFOCiAgICAgaW50IGlvcmRlcltdID0gezAsIDEsIDIsIDN9OwpAQCAtMzI5MSwxNSArNTMwNCwxNyBAQAogICAgICAgICBwICs9IDQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0gd2hpbGUoMCkKIAotICAgIC8qIEluIG5hcnJvdyBidWlsZHMgd2UgY2FuIG91dHB1dCBzdXJyb2dhdGUgcGFpcnMgYXMgb25lIGNvZGVwb2ludCwKLSAgICAgICBzbyB3ZSBuZWVkIGxlc3Mgc3BhY2UuICovCi0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgIGZvciAoaSA9IHBhaXJzID0gMDsgaSA8IHNpemUtMTsgaSsrKQotICAgICAgICBpZiAoMHhEODAwIDw9IHNbaV0gJiYgc1tpXSA8PSAweERCRkYgJiYKLSAgICAgICAgICAgIDB4REMwMCA8PSBzW2krMV0gJiYgc1tpKzFdIDw9IDB4REZGRikKLSAgICAgICAgICAgIHBhaXJzKys7Ci0jZW5kaWYKLSAgICBuc2l6ZSA9IChzaXplIC0gcGFpcnMgKyAoYnl0ZW9yZGVyID09IDApKTsKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhzdHIpKSB7CisgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzdHIpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShzdHIpOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cik7CisKKyAgICBuc2l6ZSA9IGxlbiArIChieXRlb3JkZXIgPT0gMCk7CiAgICAgYnl0ZXNpemUgPSBuc2l6ZSAqIDQ7CiAgICAgaWYgKGJ5dGVzaXplIC8gNCAhPSBuc2l6ZSkKICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CkBAIC0zMzEwLDcgKzUzMjUsNyBAQAogICAgIHAgPSAodW5zaWduZWQgY2hhciAqKVB5Qnl0ZXNfQVNfU1RSSU5HKHYpOwogICAgIGlmIChieXRlb3JkZXIgPT0gMCkKICAgICAgICAgU1RPUkVDSEFSKDB4RkVGRik7Ci0gICAgaWYgKHNpemUgPT0gMCkKKyAgICBpZiAobGVuID09IDApCiAgICAgICAgIGdvdG8gZG9uZTsKIAogICAgIGlmIChieXRlb3JkZXIgPT0gLTEpIHsKQEAgLTMzMjgsMzYgKzUzNDMsMzMgQEAKICAgICAgICAgaW9yZGVyWzNdID0gMDsKICAgICB9CiAKLSAgICB3aGlsZSAoc2l6ZS0tID4gMCkgewotICAgICAgICBQeV9VQ1M0IGNoID0gKnMrKzsKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgICAgIGlmICgweEQ4MDAgPD0gY2ggJiYgY2ggPD0gMHhEQkZGICYmIHNpemUgPiAwKSB7Ci0gICAgICAgICAgICBQeV9VQ1M0IGNoMiA9ICpzOwotICAgICAgICAgICAgaWYgKDB4REMwMCA8PSBjaDIgJiYgY2gyIDw9IDB4REZGRikgewotICAgICAgICAgICAgICAgIGNoID0gKCgoY2ggJiAweDNGRik8PDEwKSB8IChjaDIgJiAweDNGRikpICsgMHgxMDAwMDsKLSAgICAgICAgICAgICAgICBzKys7Ci0gICAgICAgICAgICAgICAgc2l6ZS0tOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0jZW5kaWYKLSAgICAgICAgU1RPUkVDSEFSKGNoKTsKLSAgICB9CisgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKQorICAgICAgICBTVE9SRUNIQVIoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpOwogCiAgIGRvbmU6CiAgICAgcmV0dXJuIHY7CiAjdW5kZWYgU1RPUkVDSEFSCiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNVVEYzMlN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9FbmNvZGVVVEYzMihjb25zdCBQeV9VTklDT0RFICpzLAorICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCisgICAgICAgICAgICAgICAgICAgICAgaW50IGJ5dGVvcmRlcikKIHsKLSAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewotICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlPYmplY3QgKnRtcCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzLCBzaXplKTsKKyAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZVVURjMyKFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOworICAgIHJlc3VsdCA9IF9QeVVuaWNvZGVfRW5jb2RlVVRGMzIodG1wLCBlcnJvcnMsIGJ5dGVvcmRlcik7CisgICAgUHlfREVDUkVGKHRtcCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworUHlPYmplY3QgKgorUHlVbmljb2RlX0FzVVRGMzJTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfRW5jb2RlVVRGMzIodW5pY29kZSwgTlVMTCwgMCk7CiB9CiAKIC8qIC0tLSBVVEYtMTYgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwpAQCAtMzM5OSw4ICs1NDExLDcgQEAKICAgICBQeV9zc2l6ZV90IHN0YXJ0aW5wb3M7CiAgICAgUHlfc3NpemVfdCBlbmRpbnBvczsKICAgICBQeV9zc2l6ZV90IG91dHBvczsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGU7Ci0gICAgUHlfVU5JQ09ERSAqcDsKKyAgICBQeU9iamVjdCAqdW5pY29kZTsKICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpxLCAqZSwgKmFsaWduZWRfZW5kOwogICAgIGludCBibyA9IDA7ICAgICAgIC8qIGFzc3VtZSBuYXRpdmUgb3JkZXJpbmcgYnkgZGVmYXVsdCAqLwogICAgIGludCBuYXRpdmVfb3JkZXJpbmcgPSAwOwpAQCAtMzQxNiwxNCArNTQyNywxMyBAQAogCiAgICAgLyogTm90ZTogc2l6ZSB3aWxsIGFsd2F5cyBiZSBsb25nZXIgdGhhbiB0aGUgcmVzdWx0aW5nIFVuaWNvZGUKICAgICAgICBjaGFyYWN0ZXIgY291bnQgKi8KLSAgICB1bmljb2RlID0gX1B5VW5pY29kZV9OZXcoc2l6ZSk7CisgICAgdW5pY29kZSA9IFB5VW5pY29kZV9OZXcoc2l6ZSwgMTI3KTsKICAgICBpZiAoIXVuaWNvZGUpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChzaXplID09IDApCi0gICAgICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlOworICAgICAgICByZXR1cm4gdW5pY29kZTsKKyAgICBvdXRwb3MgPSAwOwogCi0gICAgLyogVW5wYWNrIFVURi0xNiBlbmNvZGVkIGRhdGEgKi8KLSAgICBwID0gdW5pY29kZS0+c3RyOwogICAgIHEgPSAodW5zaWduZWQgY2hhciAqKXM7CiAgICAgZSA9IHEgKyBzaXplIC0gMTsKIApAQCAtMzQzNiw3ICs1NDQ2LDcgQEAKICAgICAgICBzdHJlYW0gYXMtaXMgKGdpdmluZyBhIFpXTkJTUCBjaGFyYWN0ZXIpLiAqLwogICAgIGlmIChibyA9PSAwKSB7CiAgICAgICAgIGlmIChzaXplID49IDIpIHsKLSAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgYm9tID0gKHFbaWhpXSA8PCA4KSB8IHFbaWxvXTsKKyAgICAgICAgICAgIGNvbnN0IFB5X1VDUzQgYm9tID0gKHFbaWhpXSA8PCA4KSB8IHFbaWxvXTsKICNpZmRlZiBCWVRFT1JERVJfSVNfTElUVExFX0VORElBTgogICAgICAgICAgICAgaWYgKGJvbSA9PSAweEZFRkYpIHsKICAgICAgICAgICAgICAgICBxICs9IDI7CkBAIC0zNDc3LDc0ICs1NDg3LDU3IEBACiAKICAgICBhbGlnbmVkX2VuZCA9IChjb25zdCB1bnNpZ25lZCBjaGFyICopICgoc2l6ZV90KSBlICYgfkxPTkdfUFRSX01BU0spOwogICAgIHdoaWxlIChxIDwgZSkgewotICAgICAgICBQeV9VTklDT0RFIGNoOworICAgICAgICBQeV9VQ1M0IGNoOwogICAgICAgICAvKiBGaXJzdCBjaGVjayBmb3IgcG9zc2libGUgYWxpZ25lZCByZWFkIG9mIGEgQyAnbG9uZycuIFVuYWxpZ25lZAogICAgICAgICAgICByZWFkcyBhcmUgbW9yZSBleHBlbnNpdmUsIGJldHRlciB0byBkZWZlciB0byBhbm90aGVyIGl0ZXJhdGlvbi4gKi8KICAgICAgICAgaWYgKCEoKHNpemVfdCkgcSAmIExPTkdfUFRSX01BU0spKSB7CiAgICAgICAgICAgICAvKiBGYXN0IHBhdGggZm9yIHJ1bnMgb2Ygbm9uLXN1cnJvZ2F0ZSBjaGFycy4gKi8KICAgICAgICAgICAgIHJlZ2lzdGVyIGNvbnN0IHVuc2lnbmVkIGNoYXIgKl9xID0gcTsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKl9wID0gcDsKLSAgICAgICAgICAgIGlmIChuYXRpdmVfb3JkZXJpbmcpIHsKLSAgICAgICAgICAgICAgICAvKiBOYXRpdmUgb3JkZXJpbmcgaXMgc2ltcGxlOiBhcyBsb25nIGFzIHRoZSBpbnB1dCBjYW5ub3QKLSAgICAgICAgICAgICAgICAgICBwb3NzaWJseSBjb250YWluIGEgc3Vycm9nYXRlIGNoYXIsIGRvIGFuIHVucm9sbGVkIGNvcHkKLSAgICAgICAgICAgICAgICAgICBvZiBzZXZlcmFsIDE2LWJpdCBjb2RlIHBvaW50cyB0byB0aGUgdGFyZ2V0IG9iamVjdC4KLSAgICAgICAgICAgICAgICAgICBUaGUgbm9uLXN1cnJvZ2F0ZSBjaGVjayBpcyBkb25lIG9uIHNldmVyYWwgaW5wdXQgYnl0ZXMKLSAgICAgICAgICAgICAgICAgICBhdCBhIHRpbWUgKGFzIG1hbnkgYXMgYSBDICdsb25nJyBjYW4gY29udGFpbikuICovCi0gICAgICAgICAgICAgICAgd2hpbGUgKF9xIDwgYWxpZ25lZF9lbmQpIHsKLSAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBkYXRhID0gKiAodW5zaWduZWQgbG9uZyAqKSBfcTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEgJiBGQVNUX0NIQVJfTUFTSykKKyAgICAgICAgICAgIGludCBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgICAgICAgICB2b2lkICpkYXRhID0gUHlVbmljb2RlX0RBVEEodW5pY29kZSk7CisgICAgICAgICAgICB3aGlsZSAoX3EgPCBhbGlnbmVkX2VuZCkgeworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgYmxvY2sgPSAqICh1bnNpZ25lZCBsb25nICopIF9xOworICAgICAgICAgICAgICAgIHVuc2lnbmVkIHNob3J0ICpwYmxvY2sgPSAodW5zaWduZWQgc2hvcnQqKSZibG9jazsKKyAgICAgICAgICAgICAgICBQeV9VQ1M0IG1heGNoOworICAgICAgICAgICAgICAgIGlmIChuYXRpdmVfb3JkZXJpbmcpIHsKKyAgICAgICAgICAgICAgICAgICAgLyogQ2FuIHVzZSBidWZmZXIgZGlyZWN0bHkgKi8KKyAgICAgICAgICAgICAgICAgICAgaWYgKGJsb2NrICYgRkFTVF9DSEFSX01BU0spCiAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgX3BbMF0gPSAoKHVuc2lnbmVkIHNob3J0ICopIF9xKVswXTsKLSAgICAgICAgICAgICAgICAgICAgX3BbMV0gPSAoKHVuc2lnbmVkIHNob3J0ICopIF9xKVsxXTsKLSNpZiAoU0laRU9GX0xPTkcgPT0gOCkKLSAgICAgICAgICAgICAgICAgICAgX3BbMl0gPSAoKHVuc2lnbmVkIHNob3J0ICopIF9xKVsyXTsKLSAgICAgICAgICAgICAgICAgICAgX3BbM10gPSAoKHVuc2lnbmVkIHNob3J0ICopIF9xKVszXTsKLSNlbmRpZgotICAgICAgICAgICAgICAgICAgICBfcSArPSBTSVpFT0ZfTE9ORzsKLSAgICAgICAgICAgICAgICAgICAgX3AgKz0gU0laRU9GX0xPTkcgLyAyOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIC8qIEJ5dGVzd2FwcGVkIG9yZGVyaW5nIGlzIHNpbWlsYXIsIGJ1dCB3ZSBtdXN0IGRlY29tcG9zZQotICAgICAgICAgICAgICAgICAgIHRoZSBjb3B5IGJ5dGV3aXNlLCBhbmQgdGFrZSBjYXJlIG9mIHplcm8naW5nIG91dCB0aGUKLSAgICAgICAgICAgICAgICAgICB1cHBlciBieXRlcyBpZiB0aGUgdGFyZ2V0IG9iamVjdCBpcyBpbiAzMi1iaXQgdW5pdHMKLSAgICAgICAgICAgICAgICAgICAodGhhdCBpcywgaW4gVUNTLTQgYnVpbGRzKS4gKi8KLSAgICAgICAgICAgICAgICB3aGlsZSAoX3EgPCBhbGlnbmVkX2VuZCkgewotICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIGRhdGEgPSAqICh1bnNpZ25lZCBsb25nICopIF9xOwotICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YSAmIFNXQVBQRURfRkFTVF9DSEFSX01BU0spCisgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIC8qIE5lZWQgdG8gYnl0ZS1zd2FwICovCisgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKl9wID0gKHVuc2lnbmVkIGNoYXIqKXBibG9jazsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGJsb2NrICYgU1dBUFBFRF9GQVNUX0NIQVJfTUFTSykKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAgICAvKiBaZXJvIHVwcGVyIGJ5dGVzIGluIFVDUy00IGJ1aWxkcyAqLwotI2lmIChQeV9VTklDT0RFX1NJWkUgPiAyKQotICAgICAgICAgICAgICAgICAgICBfcFswXSA9IDA7Ci0gICAgICAgICAgICAgICAgICAgIF9wWzFdID0gMDsKKyAgICAgICAgICAgICAgICAgICAgX3BbMF0gPSBfcVsxXTsKKyAgICAgICAgICAgICAgICAgICAgX3BbMV0gPSBfcVswXTsKKyAgICAgICAgICAgICAgICAgICAgX3BbMl0gPSBfcVszXTsKKyAgICAgICAgICAgICAgICAgICAgX3BbM10gPSBfcVsyXTsKICNpZiAoU0laRU9GX0xPTkcgPT0gOCkKLSAgICAgICAgICAgICAgICAgICAgX3BbMl0gPSAwOwotICAgICAgICAgICAgICAgICAgICBfcFszXSA9IDA7CisgICAgICAgICAgICAgICAgICAgIF9wWzRdID0gX3FbNV07CisgICAgICAgICAgICAgICAgICAgIF9wWzVdID0gX3FbNF07CisgICAgICAgICAgICAgICAgICAgIF9wWzZdID0gX3FbN107CisgICAgICAgICAgICAgICAgICAgIF9wWzddID0gX3FbNl07CiAjZW5kaWYKLSNlbmRpZgotICAgICAgICAgICAgICAgICAgICAvKiBJc3N1ZSAjNDkxNjsgVUNTLTQgYnVpbGRzIG9uIGJpZyBlbmRpYW4gbWFjaGluZXMgbXVzdAotICAgICAgICAgICAgICAgICAgICAgICBmaWxsIHRoZSB0d28gbGFzdCBieXRlcyBvZiBlYWNoIDQtYnl0ZSB1bml0LiAqLwotI2lmICghZGVmaW5lZChCWVRFT1JERVJfSVNfTElUVExFX0VORElBTikgJiYgUHlfVU5JQ09ERV9TSVpFID4gMikKLSMgZGVmaW5lIE9GRiAyCi0jZWxzZQotIyBkZWZpbmUgT0ZGIDAKLSNlbmRpZgotICAgICAgICAgICAgICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikgX3ApW09GRiArIDFdID0gX3FbMF07Ci0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMF0gPSBfcVsxXTsKLSAgICAgICAgICAgICAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopIF9wKVtPRkYgKyAxICsgUHlfVU5JQ09ERV9TSVpFXSA9IF9xWzJdOwotICAgICAgICAgICAgICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikgX3ApW09GRiArIDAgKyBQeV9VTklDT0RFX1NJWkVdID0gX3FbM107Ci0jaWYgKFNJWkVPRl9MT05HID09IDgpCi0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMSArIDIgKiBQeV9VTklDT0RFX1NJWkVdID0gX3FbNF07Ci0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMCArIDIgKiBQeV9VTklDT0RFX1NJWkVdID0gX3FbNV07Ci0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMSArIDMgKiBQeV9VTklDT0RFX1NJWkVdID0gX3FbNl07Ci0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMCArIDMgKiBQeV9VTklDT0RFX1NJWkVdID0gX3FbN107Ci0jZW5kaWYKLSN1bmRlZiBPRkYKLSAgICAgICAgICAgICAgICAgICAgX3EgKz0gU0laRU9GX0xPTkc7Ci0gICAgICAgICAgICAgICAgICAgIF9wICs9IFNJWkVPRl9MT05HIC8gMjsKICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgbWF4Y2ggPSBQeV9NQVgocGJsb2NrWzBdLCBwYmxvY2tbMV0pOworI2lmIFNJWkVPRl9MT05HID09IDgKKyAgICAgICAgICAgICAgICBtYXhjaCA9IFB5X01BWChtYXhjaCwgUHlfTUFYKHBibG9ja1syXSwgcGJsb2NrWzNdKSk7CisjZW5kaWYKKyAgICAgICAgICAgICAgICBpZiAobWF4Y2ggPiBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUodW5pY29kZSkpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfd2lkZW4oJnVuaWNvZGUsIG1heGNoKSA8IDApCisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1bmljb2RlKTsKKyAgICAgICAgICAgICAgICAgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgb3V0cG9zKyssIHBibG9ja1swXSk7CisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIG91dHBvcysrLCBwYmxvY2tbMV0pOworI2lmIFNJWkVPRl9MT05HID09IDgKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgb3V0cG9zKyssIHBibG9ja1syXSk7CisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIG91dHBvcysrLCBwYmxvY2tbM10pOworI2VuZGlmCisgICAgICAgICAgICAgICAgX3EgKz0gU0laRU9GX0xPTkc7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBwID0gX3A7CiAgICAgICAgICAgICBxID0gX3E7CiAgICAgICAgICAgICBpZiAocSA+PSBlKQogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMzU1Myw4ICs1NTQ2LDkgQEAKIAogICAgICAgICBxICs9IDI7CiAKLSAgICAgICAgaWYgKGNoIDwgMHhEODAwIHx8IGNoID4gMHhERkZGKSB7Ci0gICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU19TVVJST0dBVEUoY2gpKSB7CisgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ1bmljb2RlLCAmb3V0cG9zLCBjaCkgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAKQEAgLTM1NjUsMTYgKzU1NTksMTMgQEAKICAgICAgICAgICAgIGVuZGlucG9zID0gKChjb25zdCBjaGFyICopZSkgKyAxIC0gc3RhcnRzOwogICAgICAgICAgICAgZ290byB1dGYxNkVycm9yOwogICAgICAgICB9Ci0gICAgICAgIGlmICgweEQ4MDAgPD0gY2ggJiYgY2ggPD0gMHhEQkZGKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIGNoMiA9IChxW2loaV0gPDwgOCkgfCBxW2lsb107CisgICAgICAgIGlmIChQeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKGNoKSkgeworICAgICAgICAgICAgUHlfVUNTNCBjaDIgPSAocVtpaGldIDw8IDgpIHwgcVtpbG9dOwogICAgICAgICAgICAgcSArPSAyOwotICAgICAgICAgICAgaWYgKDB4REMwMCA8PSBjaDIgJiYgY2gyIDw9IDB4REZGRikgewotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICAgICAqcCsrID0gY2g7Ci0gICAgICAgICAgICAgICAgKnArKyA9IGNoMjsKLSNlbHNlCi0gICAgICAgICAgICAgICAgKnArKyA9ICgoKGNoICYgMHgzRkYpPDwxMCkgfCAoY2gyICYgMHgzRkYpKSArIDB4MTAwMDA7Ci0jZW5kaWYKKyAgICAgICAgICAgIGlmIChQeV9VTklDT0RFX0lTX0xPV19TVVJST0dBVEUoY2gyKSkgeworICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnVuaWNvZGUsICZvdXRwb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFX0pPSU5fU1VSUk9HQVRFUyhjaCwgY2gyKSkgPCAwKQorICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIHsKQEAgLTM1OTEsNyArNTU4Miw2IEBACiAgICAgICAgIC8qIEZhbGwgdGhyb3VnaCB0byByZXBvcnQgdGhlIGVycm9yICovCiAKICAgICAgIHV0ZjE2RXJyb3I6Ci0gICAgICAgIG91dHBvcyA9IHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKTsKICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgIGVycm9ycywKICAgICAgICAgICAgICAgICAmZXJyb3JIYW5kbGVyLApAQCAtMzYwMyw4ICs1NTkzLDcgQEAKICAgICAgICAgICAgICAgICAmZXhjLAogICAgICAgICAgICAgICAgIChjb25zdCBjaGFyICoqKSZxLAogICAgICAgICAgICAgICAgICZ1bmljb2RlLAotICAgICAgICAgICAgICAgICZvdXRwb3MsCi0gICAgICAgICAgICAgICAgJnApKQorICAgICAgICAgICAgICAgICZvdXRwb3MpKQogICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgIH0KICAgICAvKiByZW1haW5pbmcgYnl0ZSBhdCB0aGUgZW5kPyAoc2l6ZSBzaG91bGQgYmUgZXZlbikgKi8KQEAgLTM2MTMsNyArNTYwMiw2IEBACiAgICAgICAgICAgICBlcnJtc2cgPSAidHJ1bmNhdGVkIGRhdGEiOwogICAgICAgICAgICAgc3RhcnRpbnBvcyA9ICgoY29uc3QgY2hhciAqKXEpIC0gc3RhcnRzOwogICAgICAgICAgICAgZW5kaW5wb3MgPSAoKGNvbnN0IGNoYXIgKillKSArIDEgLSBzdGFydHM7Ci0gICAgICAgICAgICBvdXRwb3MgPSBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSk7CiAgICAgICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgICAgIGVycm9ycywKICAgICAgICAgICAgICAgICAgICAgJmVycm9ySGFuZGxlciwKQEAgLTM2MjUsOCArNTYxMyw3IEBACiAgICAgICAgICAgICAgICAgICAgICZleGMsCiAgICAgICAgICAgICAgICAgICAgIChjb25zdCBjaGFyICoqKSZxLAogICAgICAgICAgICAgICAgICAgICAmdW5pY29kZSwKLSAgICAgICAgICAgICAgICAgICAgJm91dHBvcywKLSAgICAgICAgICAgICAgICAgICAgJnApKQorICAgICAgICAgICAgICAgICAgICAmb3V0cG9zKSkKICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAvKiBUaGUgcmVtYWluaW5nIGlucHV0IGNoYXJzIGFyZSBpZ25vcmVkIGlmIHRoZSBjYWxsYmFjawogICAgICAgICAgICAgICAgY2hvb3NlcyB0byBza2lwIHRoZSBpbnB1dCAqLwpAQCAtMzY0MCwxMiArNTYyNywxMiBAQAogICAgICAgICAqY29uc3VtZWQgPSAoY29uc3QgY2hhciAqKXEtc3RhcnRzOwogCiAgICAgLyogQWRqdXN0IGxlbmd0aCAqLwotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdW5pY29kZSwgcCAtIHVuaWNvZGUtPnN0cikgPCAwKQorICAgIGlmICh1bmljb2RlX3Jlc2l6ZSgmdW5pY29kZSwgb3V0cG9zKSA8IDApCiAgICAgICAgIGdvdG8gb25FcnJvcjsKIAogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHVuaWNvZGUpOwogCiAgIG9uRXJyb3I6CiAgICAgUHlfREVDUkVGKHVuaWNvZGUpOwpAQCAtMzY1OCwxOSArNTY0NSwxNyBAQAogI3VuZGVmIFNXQVBQRURfRkFTVF9DSEFSX01BU0sKIAogUHlPYmplY3QgKgotUHlVbmljb2RlX0VuY29kZVVURjE2KGNvbnN0IFB5X1VOSUNPREUgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICBpbnQgYnl0ZW9yZGVyKQorX1B5VW5pY29kZV9FbmNvZGVVVEYxNihQeU9iamVjdCAqc3RyLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCisgICAgICAgICAgICAgICAgICAgICAgIGludCBieXRlb3JkZXIpCiB7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKyAgICBQeV9zc2l6ZV90IGxlbjsKICAgICBQeU9iamVjdCAqdjsKICAgICB1bnNpZ25lZCBjaGFyICpwOwogICAgIFB5X3NzaXplX3QgbnNpemUsIGJ5dGVzaXplOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQogICAgIFB5X3NzaXplX3QgaSwgcGFpcnM7Ci0jZWxzZQotICAgIGNvbnN0IGludCBwYWlycyA9IDA7Ci0jZW5kaWYKICAgICAvKiBPZmZzZXRzIGZyb20gcCBmb3Igc3RvcmluZyBieXRlIHBhaXJzIGluIHRoZSByaWdodCBvcmRlci4gKi8KICNpZmRlZiBCWVRFT1JERVJfSVNfTElUVExFX0VORElBTgogICAgIGludCBpaGkgPSAxLCBpbG8gPSAwOwpAQCAtMzY4NSwxNiArNTY3MCwyNSBAQAogICAgICAgICBwICs9IDI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0gd2hpbGUoMCkKIAotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgIGZvciAoaSA9IHBhaXJzID0gMDsgaSA8IHNpemU7IGkrKykKLSAgICAgICAgaWYgKHNbaV0gPj0gMHgxMDAwMCkKLSAgICAgICAgICAgIHBhaXJzKys7Ci0jZW5kaWYKLSAgICAvKiAyICogKHNpemUgKyBwYWlycyArIChieXRlb3JkZXIgPT0gMCkpICovCi0gICAgaWYgKHNpemUgPiBQWV9TU0laRV9UX01BWCB8fAotICAgICAgICBzaXplID4gUFlfU1NJWkVfVF9NQVggLSBwYWlycyAtIChieXRlb3JkZXIgPT0gMCkpCisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soc3RyKSkgeworICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzdHIpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc3RyKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc3RyKTsKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpOworCisgICAgcGFpcnMgPSAwOworICAgIGlmIChraW5kID09IFB5VW5pY29kZV80QllURV9LSU5EKQorICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkgPj0gMHgxMDAwMCkKKyAgICAgICAgICAgICAgICBwYWlycysrOworICAgIC8qIDIgKiAobGVuICsgcGFpcnMgKyAoYnl0ZW9yZGVyID09IDApKSAqLworICAgIGlmIChsZW4gPiBQWV9TU0laRV9UX01BWCAtIHBhaXJzIC0gKGJ5dGVvcmRlciA9PSAwKSkKICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgbnNpemUgPSBzaXplICsgcGFpcnMgKyAoYnl0ZW9yZGVyID09IDApOworICAgIG5zaXplID0gbGVuICsgcGFpcnMgKyAoYnl0ZW9yZGVyID09IDApOwogICAgIGJ5dGVzaXplID0gbnNpemUgKiAyOwogICAgIGlmIChieXRlc2l6ZSAvIDIgIT0gbnNpemUpCiAgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOwpAQCAtMzcwNSw3ICs1Njk5LDcgQEAKICAgICBwID0gKHVuc2lnbmVkIGNoYXIgKilQeUJ5dGVzX0FTX1NUUklORyh2KTsKICAgICBpZiAoYnl0ZW9yZGVyID09IDApCiAgICAgICAgIFNUT1JFQ0hBUigweEZFRkYpOwotICAgIGlmIChzaXplID09IDApCisgICAgaWYgKGxlbiA9PSAwKQogICAgICAgICBnb3RvIGRvbmU7CiAKICAgICBpZiAoYnl0ZW9yZGVyID09IC0xKSB7CkBAIC0zNzE5LDE1ICs1NzEzLDEzIEBACiAgICAgICAgIGlsbyA9IDE7CiAgICAgfQogCi0gICAgd2hpbGUgKHNpemUtLSA+IDApIHsKLSAgICAgICAgUHlfVU5JQ09ERSBjaCA9ICpzKys7Ci0gICAgICAgIFB5X1VOSUNPREUgY2gyID0gMDsKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICBQeV9VQ1M0IGNoMiA9IDA7CiAgICAgICAgIGlmIChjaCA+PSAweDEwMDAwKSB7Ci0gICAgICAgICAgICBjaDIgPSAweERDMDAgfCAoKGNoLTB4MTAwMDApICYgMHgzRkYpOwotICAgICAgICAgICAgY2ggID0gMHhEODAwIHwgKChjaC0weDEwMDAwKSA+PiAxMCk7CisgICAgICAgICAgICBjaDIgPSBQeV9VTklDT0RFX0xPV19TVVJST0dBVEUoY2gpOworICAgICAgICAgICAgY2ggID0gUHlfVU5JQ09ERV9ISUdIX1NVUlJPR0FURShjaCk7CiAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICBTVE9SRUNIQVIoY2gpOwogICAgICAgICBpZiAoY2gyKQogICAgICAgICAgICAgU1RPUkVDSEFSKGNoMik7CkBAIC0zNzM4LDYxICs1NzMwLDE0NyBAQAogI3VuZGVmIFNUT1JFQ0hBUgogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzVVRGMTZTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRW5jb2RlVVRGMTYoY29uc3QgUHlfVU5JQ09ERSAqcywKKyAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgIGludCBieXRlb3JkZXIpCiB7Ci0gICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkpIHsKLSAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICp0bXAgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocywgc2l6ZSk7CisgICAgaWYgKHRtcCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEYxNihQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsKKyAgICByZXN1bHQgPSBfUHlVbmljb2RlX0VuY29kZVVURjE2KHRtcCwgZXJyb3JzLCBieXRlb3JkZXIpOworICAgIFB5X0RFQ1JFRih0bXApOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Bc1VURjE2U3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIHJldHVybiBfUHlVbmljb2RlX0VuY29kZVVURjE2KHVuaWNvZGUsIE5VTEwsIDApOwogfQogCiAvKiAtLS0gVW5pY29kZSBFc2NhcGUgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAorLyogSGVscGVyIGZ1bmN0aW9uIGZvciBQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZSwgZGV0ZXJtaW5lcworICAgaWYgYWxsIHRoZSBlc2NhcGVzIGluIHRoZSBzdHJpbmcgbWFrZSBpdCBzdGlsbCBhIHZhbGlkIEFTQ0lJIHN0cmluZy4KKyAgIFJldHVybnMgLTEgaWYgYW55IGVzY2FwZXMgd2VyZSBmb3VuZCB3aGljaCBjYXVzZSB0aGUgc3RyaW5nIHRvCisgICBwb3Agb3V0IG9mIEFTQ0lJIHJhbmdlLiAgT3RoZXJ3aXNlIHJldHVybnMgdGhlIGxlbmd0aCBvZiB0aGUKKyAgIHJlcXVpcmVkIGJ1ZmZlciB0byBob2xkIHRoZSBzdHJpbmcuCisgICAqLworc3RhdGljIFB5X3NzaXplX3QKK2xlbmd0aF9vZl9lc2NhcGVkX2FzY2lpX3N0cmluZyhjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUpCit7CisgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcCA9IChjb25zdCB1bnNpZ25lZCBjaGFyICopczsKKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICplbmQgPSBwICsgc2l6ZTsKKyAgICBQeV9zc2l6ZV90IGxlbmd0aCA9IDA7CisKKyAgICBpZiAoc2l6ZSA8IDApCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGZvciAoOyBwIDwgZW5kOyArK3ApIHsKKyAgICAgICAgaWYgKCpwID4gMTI3KSB7CisgICAgICAgICAgICAvKiBOb24tQVNDSUkgKi8KKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmICgqcCAhPSAnXFwnKSB7CisgICAgICAgICAgICAvKiBOb3JtYWwgY2hhcmFjdGVyICovCisgICAgICAgICAgICArK2xlbmd0aDsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIC8qIEJhY2tzbGFzaC1lc2NhcGUsIGNoZWNrIG5leHQgY2hhciAqLworICAgICAgICAgICAgKytwOworICAgICAgICAgICAgLyogRXNjYXBlIHNlcXVlbmNlIHJlYWNoZXMgdGlsbCBlbmQgb2Ygc3RyaW5nIG9yCisgICAgICAgICAgICAgICBub24tQVNDSUkgZm9sbG93LXVwLiAqLworICAgICAgICAgICAgaWYgKHAgPj0gZW5kIHx8ICpwID4gMTI3KQorICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIHN3aXRjaCAoKnApIHsKKyAgICAgICAgICAgIGNhc2UgJ1xuJzoKKyAgICAgICAgICAgICAgICAvKiBiYWNrc2xhc2ggKyBcbiByZXN1bHQgaW4gemVybyBjaGFyYWN0ZXJzICovCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlICdcXCc6IGNhc2UgJ1wnJzogY2FzZSAnXCInOgorICAgICAgICAgICAgY2FzZSAnYic6IGNhc2UgJ2YnOiBjYXNlICd0JzoKKyAgICAgICAgICAgIGNhc2UgJ24nOiBjYXNlICdyJzogY2FzZSAndic6IGNhc2UgJ2EnOgorICAgICAgICAgICAgICAgICsrbGVuZ3RoOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSAnMCc6IGNhc2UgJzEnOiBjYXNlICcyJzogY2FzZSAnMyc6CisgICAgICAgICAgICBjYXNlICc0JzogY2FzZSAnNSc6IGNhc2UgJzYnOiBjYXNlICc3JzoKKyAgICAgICAgICAgIGNhc2UgJ3gnOiBjYXNlICd1JzogY2FzZSAnVSc6IGNhc2UgJ04nOgorICAgICAgICAgICAgICAgIC8qIHRoZXNlIGRvIG5vdCBndWFyYW50ZWUgQVNDSUkgY2hhcmFjdGVycyAqLworICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICAgICAgLyogY291bnQgdGhlIGJhY2tzbGFzaCArIHRoZSBvdGhlciBjaGFyYWN0ZXIgKi8KKyAgICAgICAgICAgICAgICBsZW5ndGggKz0gMjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gbGVuZ3RoOworfQorCiBzdGF0aWMgX1B5VW5pY29kZV9OYW1lX0NBUEkgKnVjbmhhc2hfQ0FQSSA9IE5VTEw7CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZShjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZShjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIGNvbnN0IGNoYXIgKnN0YXJ0cyA9IHM7CiAgICAgUHlfc3NpemVfdCBzdGFydGlucG9zOwogICAgIFB5X3NzaXplX3QgZW5kaW5wb3M7Ci0gICAgUHlfc3NpemVfdCBvdXRwb3M7Ci0gICAgaW50IGk7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp2OwotICAgIFB5X1VOSUNPREUgKnA7CisgICAgaW50IGo7CisgICAgUHlPYmplY3QgKnY7CiAgICAgY29uc3QgY2hhciAqZW5kOwogICAgIGNoYXIqIG1lc3NhZ2U7CiAgICAgUHlfVUNTNCBjaHIgPSAweGZmZmZmZmZmOyAvKiBpbiBjYXNlICdnZXRjb2RlJyBtZXNzZXMgdXAgKi8KICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKICAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBQeV9zc2l6ZV90IGk7CiAKLSAgICAvKiBFc2NhcGVkIHN0cmluZ3Mgd2lsbCBhbHdheXMgYmUgbG9uZ2VyIHRoYW4gdGhlIHJlc3VsdGluZwotICAgICAgIFVuaWNvZGUgc3RyaW5nLCBzbyB3ZSBzdGFydCB3aXRoIHNpemUgaGVyZSBhbmQgdGhlbiByZWR1Y2UgdGhlCi0gICAgICAgbGVuZ3RoIGFmdGVyIGNvbnZlcnNpb24gdG8gdGhlIHRydWUgdmFsdWUuCi0gICAgICAgKGJ1dCBpZiB0aGUgZXJyb3IgY2FsbGJhY2sgcmV0dXJucyBhIGxvbmcgcmVwbGFjZW1lbnQgc3RyaW5nCi0gICAgICAgd2UnbGwgaGF2ZSB0byBhbGxvY2F0ZSBtb3JlIHNwYWNlKSAqLwotICAgIHYgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKLSAgICBpZiAodiA9PSBOVUxMKQotICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgbGVuID0gbGVuZ3RoX29mX2VzY2FwZWRfYXNjaWlfc3RyaW5nKHMsIHNpemUpOworCisgICAgLyogQWZ0ZXIgbGVuZ3RoX29mX2VzY2FwZWRfYXNjaWlfc3RyaW5nKCkgdGhlcmUgYXJlIHR3byBhbHRlcm5hdGl2ZXMsCisgICAgICAgZWl0aGVyIHRoZSBzdHJpbmcgaXMgcHVyZSBBU0NJSSB3aXRoIG5hbWVkIGVzY2FwZXMgbGlrZSBcbiwgZXRjLgorICAgICAgIGFuZCB3ZSBkZXRlcm1pbmVkIGl0J3MgZXhhY3Qgc2l6ZSAoY29tbW9uIGNhc2UpCisgICAgICAgb3IgaXQgY29udGFpbnMgXHgsIFx1LCAuLi4gZXNjYXBlIHNlcXVlbmNlcy4gIHRoZW4gd2UgY3JlYXRlIGEKKyAgICAgICBsZWdhY3kgd2NoYXIgc3RyaW5nIGFuZCByZXNpemUgaXQgYXQgdGhlIGVuZCBvZiB0aGlzIGZ1bmN0aW9uLiAqLworICAgIGlmIChsZW4gPj0gMCkgeworICAgICAgICB2ID0gUHlVbmljb2RlX05ldyhsZW4sIDEyNyk7CisgICAgICAgIGlmICghdikKKyAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKHYpID09IFB5VW5pY29kZV8xQllURV9LSU5EKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8qIEVzY2FwZWQgc3RyaW5ncyB3aWxsIGFsd2F5cyBiZSBsb25nZXIgdGhhbiB0aGUgcmVzdWx0aW5nCisgICAgICAgICAgIFVuaWNvZGUgc3RyaW5nLCBzbyB3ZSBzdGFydCB3aXRoIHNpemUgaGVyZSBhbmQgdGhlbiByZWR1Y2UgdGhlCisgICAgICAgICAgIGxlbmd0aCBhZnRlciBjb252ZXJzaW9uIHRvIHRoZSB0cnVlIHZhbHVlLgorICAgICAgICAgICAoYnV0IGlmIHRoZSBlcnJvciBjYWxsYmFjayByZXR1cm5zIGEgbG9uZyByZXBsYWNlbWVudCBzdHJpbmcKKyAgICAgICAgICAgd2UnbGwgaGF2ZSB0byBhbGxvY2F0ZSBtb3JlIHNwYWNlKSAqLworICAgICAgICB2ID0gUHlVbmljb2RlX05ldyhzaXplLCAxMjcpOworICAgICAgICBpZiAoIXYpCisgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgIGxlbiA9IHNpemU7CisgICAgfQorCiAgICAgaWYgKHNpemUgPT0gMCkKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXY7Ci0KLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CisgICAgICAgIHJldHVybiB2OworICAgIGkgPSAwOwogICAgIGVuZCA9IHMgKyBzaXplOwogCiAgICAgd2hpbGUgKHMgPCBlbmQpIHsKICAgICAgICAgdW5zaWduZWQgY2hhciBjOwotICAgICAgICBQeV9VTklDT0RFIHg7CisgICAgICAgIFB5X1VDUzQgeDsKICAgICAgICAgaW50IGRpZ2l0czsKIAorICAgICAgICAvKiBUaGUgb25seSBjYXNlIGluIHdoaWNoIGkgPT0gYXNjaWlfbGVuZ3RoIGlzIGEgYmFja3NsYXNoCisgICAgICAgICAgIGZvbGxvd2VkIGJ5IGEgbmV3bGluZS4gKi8KKyAgICAgICAgYXNzZXJ0KGkgPD0gbGVuKTsKKwogICAgICAgICAvKiBOb24tZXNjYXBlIGNoYXJhY3RlcnMgYXJlIGludGVycHJldGVkIGFzIFVuaWNvZGUgb3JkaW5hbHMgKi8KICAgICAgICAgaWYgKCpzICE9ICdcXCcpIHsKLSAgICAgICAgICAgICpwKysgPSAodW5zaWduZWQgY2hhcikgKnMrKzsKKyAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnYsICZpLCAodW5zaWduZWQgY2hhcikgKnMrKykgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAKQEAgLTM4MDIsMjAgKzU4ODAsMzQgQEAKICAgICAgICAgYyA9ICpzKys7CiAgICAgICAgIGlmIChzID4gZW5kKQogICAgICAgICAgICAgYyA9ICdcMCc7IC8qIEludmFsaWQgYWZ0ZXIgXCAqLworCisgICAgICAgIC8qIFRoZSBvbmx5IGNhc2UgaW4gd2hpY2ggaSA9PSBhc2NpaV9sZW5ndGggaXMgYSBiYWNrc2xhc2gKKyAgICAgICAgICAgZm9sbG93ZWQgYnkgYSBuZXdsaW5lLiAqLworICAgICAgICBhc3NlcnQoaSA8IGxlbiB8fCAoaSA9PSBsZW4gJiYgYyA9PSAnXG4nKSk7CisKICAgICAgICAgc3dpdGNoIChjKSB7CiAKICAgICAgICAgICAgIC8qIFx4IGVzY2FwZXMgKi8KKyNkZWZpbmUgV1JJVEVDSEFSKGNoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdiwgJmksIGNoKSA8IDApICAgIFwKKyAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOyAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgfXdoaWxlKDApCisKICAgICAgICAgY2FzZSAnXG4nOiBicmVhazsKLSAgICAgICAgY2FzZSAnXFwnOiAqcCsrID0gJ1xcJzsgYnJlYWs7Ci0gICAgICAgIGNhc2UgJ1wnJzogKnArKyA9ICdcJyc7IGJyZWFrOwotICAgICAgICBjYXNlICdcIic6ICpwKysgPSAnXCInOyBicmVhazsKLSAgICAgICAgY2FzZSAnYic6ICpwKysgPSAnXGInOyBicmVhazsKLSAgICAgICAgY2FzZSAnZic6ICpwKysgPSAnXDAxNCc7IGJyZWFrOyAvKiBGRiAqLwotICAgICAgICBjYXNlICd0JzogKnArKyA9ICdcdCc7IGJyZWFrOwotICAgICAgICBjYXNlICduJzogKnArKyA9ICdcbic7IGJyZWFrOwotICAgICAgICBjYXNlICdyJzogKnArKyA9ICdccic7IGJyZWFrOwotICAgICAgICBjYXNlICd2JzogKnArKyA9ICdcMDEzJzsgYnJlYWs7IC8qIFZUICovCi0gICAgICAgIGNhc2UgJ2EnOiAqcCsrID0gJ1wwMDcnOyBicmVhazsgLyogQkVMLCBub3QgY2xhc3NpYyBDICovCisgICAgICAgIGNhc2UgJ1xcJzogV1JJVEVDSEFSKCdcXCcpOyBicmVhazsKKyAgICAgICAgY2FzZSAnXCcnOiBXUklURUNIQVIoJ1wnJyk7IGJyZWFrOworICAgICAgICBjYXNlICdcIic6IFdSSVRFQ0hBUignXCInKTsgYnJlYWs7CisgICAgICAgIGNhc2UgJ2InOiBXUklURUNIQVIoJ1xiJyk7IGJyZWFrOworICAgICAgICAvKiBGRiAqLworICAgICAgICBjYXNlICdmJzogV1JJVEVDSEFSKCdcMDE0Jyk7IGJyZWFrOworICAgICAgICBjYXNlICd0JzogV1JJVEVDSEFSKCdcdCcpOyBicmVhazsKKyAgICAgICAgY2FzZSAnbic6IFdSSVRFQ0hBUignXG4nKTsgYnJlYWs7CisgICAgICAgIGNhc2UgJ3InOiBXUklURUNIQVIoJ1xyJyk7IGJyZWFrOworICAgICAgICAvKiBWVCAqLworICAgICAgICBjYXNlICd2JzogV1JJVEVDSEFSKCdcMDEzJyk7IGJyZWFrOworICAgICAgICAvKiBCRUwsIG5vdCBjbGFzc2ljIEMgKi8KKyAgICAgICAgY2FzZSAnYSc6IFdSSVRFQ0hBUignXDAwNycpOyBicmVhazsKIAogICAgICAgICAgICAgLyogXE9PTyAob2N0YWwpIGVzY2FwZXMgKi8KICAgICAgICAgY2FzZSAnMCc6IGNhc2UgJzEnOiBjYXNlICcyJzogY2FzZSAnMyc6CkBAIC0zODI2LDcgKzU5MTgsNyBAQAogICAgICAgICAgICAgICAgIGlmIChzIDwgZW5kICYmICcwJyA8PSAqcyAmJiAqcyA8PSAnNycpCiAgICAgICAgICAgICAgICAgICAgIHggPSAoeDw8MykgKyAqcysrIC0gJzAnOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgKnArKyA9IHg7CisgICAgICAgICAgICBXUklURUNIQVIoeCk7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgLyogaGV4IGVzY2FwZXMgKi8KQEAgLTM4NDgsMjcgKzU5NDAsMjcgQEAKICAgICAgICAgICAgIG1lc3NhZ2UgPSAidHJ1bmNhdGVkIFxcVVhYWFhYWFhYIGVzY2FwZSI7CiAgICAgICAgIGhleGVzY2FwZToKICAgICAgICAgICAgIGNociA9IDA7Ci0gICAgICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHYpOwogICAgICAgICAgICAgaWYgKHMrZGlnaXRzPmVuZCkgewogICAgICAgICAgICAgICAgIGVuZGlucG9zID0gc2l6ZTsKICAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAidW5pY29kZWVzY2FwZSIsICJlbmQgb2Ygc3RyaW5nIGluIGVzY2FwZSBzZXF1ZW5jZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnRzLCAmZW5kLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICAgICAmdiwgJmkpKQogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgZ290byBuZXh0Qnl0ZTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBkaWdpdHM7ICsraSkgewotICAgICAgICAgICAgICAgIGMgPSAodW5zaWduZWQgY2hhcikgc1tpXTsKKyAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCBkaWdpdHM7ICsraikgeworICAgICAgICAgICAgICAgIGMgPSAodW5zaWduZWQgY2hhcikgc1tqXTsKICAgICAgICAgICAgICAgICBpZiAoIVB5X0lTWERJR0lUKGMpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGVuZGlucG9zID0gKHMraSsxKS1zdGFydHM7CisgICAgICAgICAgICAgICAgICAgIGVuZGlucG9zID0gKHMraisxKS1zdGFydHM7CiAgICAgICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVlc2NhcGUiLCBtZXNzYWdlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFydHMsICZlbmQsICZzdGFydGlucG9zLCAmZW5kaW5wb3MsICZleGMsICZzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZpKSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodik7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gbmV4dEJ5dGU7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGNociA9IChjaHI8PDQpICYgfjB4RjsKQEAgLTM4NzksMzQgKzU5NzEsMjIgQEAKICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgIGNociArPSAxMCArIGMgLSAnQSc7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBzICs9IGk7CisgICAgICAgICAgICBzICs9IGo7CiAgICAgICAgICAgICBpZiAoY2hyID09IDB4ZmZmZmZmZmYgJiYgUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgICAgICAgICAvKiBfZGVjb2RpbmdfZXJyb3Igd2lsbCBoYXZlIGFscmVhZHkgd3JpdHRlbiBpbnRvIHRoZQogICAgICAgICAgICAgICAgICAgIHRhcmdldCBidWZmZXIuICovCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIHN0b3JlOgogICAgICAgICAgICAgLyogd2hlbiB3ZSBnZXQgaGVyZSwgY2hyIGlzIGEgMzItYml0IHVuaWNvZGUgY2hhcmFjdGVyICovCi0gICAgICAgICAgICBpZiAoY2hyIDw9IDB4ZmZmZikKLSAgICAgICAgICAgICAgICAvKiBVQ1MtMiBjaGFyYWN0ZXIgKi8KLSAgICAgICAgICAgICAgICAqcCsrID0gKFB5X1VOSUNPREUpIGNocjsKLSAgICAgICAgICAgIGVsc2UgaWYgKGNociA8PSAweDEwZmZmZikgewotICAgICAgICAgICAgICAgIC8qIFVDUy00IGNoYXJhY3Rlci4gRWl0aGVyIHN0b3JlIGRpcmVjdGx5LCBvciBhcwotICAgICAgICAgICAgICAgICAgIHN1cnJvZ2F0ZSBwYWlyLiAqLwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgICAgICpwKysgPSBjaHI7Ci0jZWxzZQotICAgICAgICAgICAgICAgIGNociAtPSAweDEwMDAwTDsKLSAgICAgICAgICAgICAgICAqcCsrID0gMHhEODAwICsgKFB5X1VOSUNPREUpIChjaHIgPj4gMTApOwotICAgICAgICAgICAgICAgICpwKysgPSAweERDMDAgKyAoUHlfVU5JQ09ERSkgKGNociAmIDB4MDNGRik7Ci0jZW5kaWYKKyAgICAgICAgICAgIGlmIChjaHIgPD0gTUFYX1VOSUNPREUpIHsKKyAgICAgICAgICAgICAgICBXUklURUNIQVIoY2hyKTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgZW5kaW5wb3MgPSBzLXN0YXJ0czsKLSAgICAgICAgICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHYpOwogICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycywgJmVycm9ySGFuZGxlciwKICAgICAgICAgICAgICAgICAgICAgICAgICJ1bmljb2RlZXNjYXBlIiwgImlsbGVnYWwgVW5pY29kZSBjaGFyYWN0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmVuZCwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgJnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcywgJnApKQorICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZpKSkKICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgYnJlYWs7CkBAIC0zOTE2LDcgKzU5OTYsOCBAQAogICAgICAgICAgICAgbWVzc2FnZSA9ICJtYWxmb3JtZWQgXFxOIGNoYXJhY3RlciBlc2NhcGUiOwogICAgICAgICAgICAgaWYgKHVjbmhhc2hfQ0FQSSA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgLyogbG9hZCB0aGUgdW5pY29kZSBkYXRhIG1vZHVsZSAqLwotICAgICAgICAgICAgICAgIHVjbmhhc2hfQ0FQSSA9IChfUHlVbmljb2RlX05hbWVfQ0FQSSAqKVB5Q2Fwc3VsZV9JbXBvcnQoUHlVbmljb2RlRGF0YV9DQVBTVUxFX05BTUUsIDEpOworICAgICAgICAgICAgICAgIHVjbmhhc2hfQ0FQSSA9IChfUHlVbmljb2RlX05hbWVfQ0FQSSAqKVB5Q2Fwc3VsZV9JbXBvcnQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVEYXRhX0NBUFNVTEVfTkFNRSwgMSk7CiAgICAgICAgICAgICAgICAgaWYgKHVjbmhhc2hfQ0FQSSA9PSBOVUxMKQogICAgICAgICAgICAgICAgICAgICBnb3RvIHVjbmhhc2hFcnJvcjsKICAgICAgICAgICAgIH0KQEAgLTM5MjksMTcgKzYwMTAsMTcgQEAKICAgICAgICAgICAgICAgICAgICAgLyogZm91bmQgYSBuYW1lLiAgbG9vayBpdCB1cCBpbiB0aGUgdW5pY29kZSBkYXRhYmFzZSAqLwogICAgICAgICAgICAgICAgICAgICBtZXNzYWdlID0gInVua25vd24gVW5pY29kZSBjaGFyYWN0ZXIgbmFtZSI7CiAgICAgICAgICAgICAgICAgICAgIHMrKzsKLSAgICAgICAgICAgICAgICAgICAgaWYgKHVjbmhhc2hfQ0FQSS0+Z2V0Y29kZShOVUxMLCBzdGFydCwgKGludCkocy1zdGFydC0xKSwgJmNocikpCisgICAgICAgICAgICAgICAgICAgIGlmICh1Y25oYXNoX0NBUEktPmdldGNvZGUoTlVMTCwgc3RhcnQsIChpbnQpKHMtc3RhcnQtMSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNociwgMCkpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIHN0b3JlOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVuZGlucG9zID0gcy1zdGFydHM7Ci0gICAgICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHYpOwogICAgICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICJ1bmljb2RlZXNjYXBlIiwgbWVzc2FnZSwKICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmVuZCwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgJnMsCi0gICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICZ2LCAmaSkpCiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgYnJlYWs7CiAKQEAgLTM5NDgsMjggKzYwMjksMjkgQEAKICAgICAgICAgICAgICAgICBtZXNzYWdlID0gIlxcIGF0IGVuZCBvZiBzdHJpbmciOwogICAgICAgICAgICAgICAgIHMtLTsKICAgICAgICAgICAgICAgICBlbmRpbnBvcyA9IHMtc3RhcnRzOwotICAgICAgICAgICAgICAgIG91dHBvcyA9IHAtUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVlc2NhcGUiLCBtZXNzYWdlLAogICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmVuZCwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgJnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcywgJnApKQorICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZpKSkKICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAgICAgKnArKyA9ICh1bnNpZ25lZCBjaGFyKXNbLTFdOworICAgICAgICAgICAgICAgIFdSSVRFQ0hBUignXFwnKTsKKyAgICAgICAgICAgICAgICBXUklURUNIQVIoc1stMV0pOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgIG5leHRCeXRlOgogICAgICAgICA7CiAgICAgfQotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdiwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA8IDApCisjdW5kZWYgV1JJVEVDSEFSCisKKyAgICBpZiAodW5pY29kZV9yZXNpemUoJnYsIGkpIDwgMCkKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHYpOwogCiAgIHVjbmhhc2hFcnJvcjoKICAgICBQeUVycl9TZXRTdHJpbmcoCkBAIC0zOTk1LDM5ICs2MDc3LDE2IEBACiAKICovCiAKLVB5X0xPQ0FMX0lOTElORShjb25zdCBQeV9VTklDT0RFICopIGZpbmRjaGFyKGNvbnN0IFB5X1VOSUNPREUgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFIGNoKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0FzVW5pY29kZUVzY2FwZVN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKIHsKLSAgICAvKiBsaWtlIHdjc2NociwgYnV0IGRvZXNuJ3Qgc3RvcCBhdCBOVUxMIGNoYXJhY3RlcnMgKi8KLQotICAgIHdoaWxlIChzaXplLS0gPiAwKSB7Ci0gICAgICAgIGlmICgqcyA9PSBjaCkKLSAgICAgICAgICAgIHJldHVybiBzOwotICAgICAgICBzKys7Ci0gICAgfQotCi0gICAgcmV0dXJuIE5VTEw7Ci19Ci0KLXN0YXRpYyBjb25zdCBjaGFyICpoZXhkaWdpdHMgPSAiMDEyMzQ1Njc4OWFiY2RlZiI7Ci0KLVB5T2JqZWN0ICpQeVVuaWNvZGVfRW5jb2RlVW5pY29kZUVzY2FwZShjb25zdCBQeV9VTklDT0RFICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSkKLXsKKyAgICBQeV9zc2l6ZV90IGksIGxlbjsKICAgICBQeU9iamVjdCAqcmVwcjsKICAgICBjaGFyICpwOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBleHBhbmRzaXplID0gMDsKIAotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgIGNvbnN0IFB5X3NzaXplX3QgZXhwYW5kc2l6ZSA9IDEwOwotI2Vsc2UKLSAgICBjb25zdCBQeV9zc2l6ZV90IGV4cGFuZHNpemUgPSA2OwotI2VuZGlmCi0KLSAgICAvKiBYWFgobm5vcndpdHopOiByYXRoZXIgdGhhbiBvdmVyLWFsbG9jYXRpbmcsIGl0IHdvdWxkIGJlCi0gICAgICAgYmV0dGVyIHRvIGNob29zZSBhIGRpZmZlcmVudCBzY2hlbWUuICBQZXJoYXBzIHNjYW4gdGhlCi0gICAgICAgZmlyc3QgTi1jaGFycyBvZiB0aGUgc3RyaW5nIGFuZCBhbGxvY2F0ZSBiYXNlZCBvbiB0aGF0IHNpemUuCi0gICAgKi8KICAgICAvKiBJbml0aWFsIGFsbG9jYXRpb24gaXMgYmFzZWQgb24gdGhlIGxvbmdlc3QtcG9zc2libGUgdW5pY2hyCiAgICAgICAgZXNjYXBlLgogCkBAIC00MDQyLDIzICs2MTAxLDM4IEBACiAgICAgICAgZXNjYXBlLgogICAgICovCiAKLSAgICBpZiAoc2l6ZSA9PSAwKQorICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpOworICAgIHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6IGV4cGFuZHNpemUgPSA0OyBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOiBleHBhbmRzaXplID0gNjsgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDogZXhwYW5kc2l6ZSA9IDEwOyBicmVhazsKKyAgICB9CisKKyAgICBpZiAobGVuID09IDApCiAgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOwogCi0gICAgaWYgKHNpemUgPiAoUFlfU1NJWkVfVF9NQVggLSAyIC0gMSkgLyBleHBhbmRzaXplKQorICAgIGlmIChsZW4gPiAoUFlfU1NJWkVfVF9NQVggLSAyIC0gMSkgLyBleHBhbmRzaXplKQogICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKIAogICAgIHJlcHIgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgZXhwYW5kc2l6ZSpzaXplCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBleHBhbmRzaXplKmxlbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgMSk7CiAgICAgaWYgKHJlcHIgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBwID0gUHlCeXRlc19BU19TVFJJTkcocmVwcik7CiAKLSAgICB3aGlsZSAoc2l6ZS0tID4gMCkgewotICAgICAgICBQeV9VTklDT0RFIGNoID0gKnMrKzsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOwogCiAgICAgICAgIC8qIEVzY2FwZSBiYWNrc2xhc2hlcyAqLwogICAgICAgICBpZiAoY2ggPT0gJ1xcJykgewpAQCAtNDA2Nyw1NyArNjE0MSwzMCBAQAogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAotI2lmZGVmIFB5X1VOSUNPREVfV0lERQogICAgICAgICAvKiBNYXAgMjEtYml0IGNoYXJhY3RlcnMgdG8gJ1xVMDB4eHh4eHgnICovCiAgICAgICAgIGVsc2UgaWYgKGNoID49IDB4MTAwMDApIHsKKyAgICAgICAgICAgIGFzc2VydChjaCA8PSBNQVhfVU5JQ09ERSk7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAnVSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAyOCkgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDI0KSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gMjApICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxNikgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDQpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW2NoICYgMHgwMDAwMDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAyOCkgJiAweDAwMDAwMDBGXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDI0KSAmIDB4MDAwMDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gMjApICYgMHgwMDAwMDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAxNikgJiAweDAwMDAwMDBGXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4MDAwMDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gOCkgJiAweDAwMDAwMDBGXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDQpICYgMHgwMDAwMDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2NoICYgMHgwMDAwMDAwRl07CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQotI2Vsc2UKLSAgICAgICAgLyogTWFwIFVURi0xNiBzdXJyb2dhdGUgcGFpcnMgdG8gJ1xVMDB4eHh4eHgnICovCi0gICAgICAgIGVsc2UgaWYgKGNoID49IDB4RDgwMCAmJiBjaCA8IDB4REMwMCkgewotICAgICAgICAgICAgUHlfVU5JQ09ERSBjaDI7Ci0gICAgICAgICAgICBQeV9VQ1M0IHVjczsKLQotICAgICAgICAgICAgY2gyID0gKnMrKzsKLSAgICAgICAgICAgIHNpemUtLTsKLSAgICAgICAgICAgIGlmIChjaDIgPj0gMHhEQzAwICYmIGNoMiA8PSAweERGRkYpIHsKLSAgICAgICAgICAgICAgICB1Y3MgPSAoKChjaCAmIDB4MDNGRikgPDwgMTApIHwgKGNoMiAmIDB4MDNGRikpICsgMHgwMDAxMDAwMDsKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1UnOwotICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAyOCkgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMjQpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDIwKSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxNikgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMTIpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDgpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDQpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1t1Y3MgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIEZhbGwgdGhyb3VnaDogaXNvbGF0ZWQgc3Vycm9nYXRlcyBhcmUgY29waWVkIGFzLWlzICovCi0gICAgICAgICAgICBzLS07Ci0gICAgICAgICAgICBzaXplKys7Ci0gICAgICAgIH0KLSNlbmRpZgogCiAgICAgICAgIC8qIE1hcCAxNi1iaXQgY2hhcmFjdGVycyB0byAnXHV4eHh4JyAqLwogICAgICAgICBpZiAoY2ggPj0gMjU2KSB7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAndSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDB4MDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gOCkgJiAweDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1tjaCAmIDB4MDAwRl07CiAgICAgICAgIH0KIAogICAgICAgICAvKiBNYXAgc3BlY2lhbCB3aGl0ZXNwYWNlIHRvICdcdCcsIFxuJywgJ1xyJyAqLwpAQCAtNDEzOCw4ICs2MTg1LDggQEAKICAgICAgICAgZWxzZSBpZiAoY2ggPCAnICcgfHwgY2ggPj0gMHg3RikgewogICAgICAgICAgICAgKnArKyA9ICdcXCc7CiAgICAgICAgICAgICAqcCsrID0gJ3gnOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDB4MDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4MDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2NoICYgMHgwMDBGXTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIENvcHkgZXZlcnl0aGluZyBlbHNlIGFzLWlzICovCkBAIC00MTUzLDMwICs2MjAwLDMxIEBACiAgICAgcmV0dXJuIHJlcHI7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUoY29uc3QgUHlfVU5JQ09ERSAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSkKIHsKLSAgICBQeU9iamVjdCAqczsKLSAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewotICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlPYmplY3QgKnRtcCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzLCBzaXplKTsKKyAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBzID0gUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSk7Ci0gICAgcmV0dXJuIHM7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0FzVW5pY29kZUVzY2FwZVN0cmluZyh0bXApOworICAgIFB5X0RFQ1JFRih0bXApOworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIC8qIC0tLSBSYXcgVW5pY29kZSBFc2NhcGUgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCi1QeU9iamVjdCAqUHlVbmljb2RlX0RlY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0RlY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBjb25zdCBjaGFyICpzdGFydHMgPSBzOwogICAgIFB5X3NzaXplX3Qgc3RhcnRpbnBvczsKICAgICBQeV9zc2l6ZV90IGVuZGlucG9zOwogICAgIFB5X3NzaXplX3Qgb3V0cG9zOwotICAgIFB5VW5pY29kZU9iamVjdCAqdjsKLSAgICBQeV9VTklDT0RFICpwOworICAgIFB5T2JqZWN0ICp2OwogICAgIGNvbnN0IGNoYXIgKmVuZDsKICAgICBjb25zdCBjaGFyICpiczsKICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKQEAgLTQxODYsMTIgKzYyMzQsMTIgQEAKICAgICAgICBVbmljb2RlIHN0cmluZywgc28gd2Ugc3RhcnQgd2l0aCBzaXplIGhlcmUgYW5kIHRoZW4gcmVkdWNlIHRoZQogICAgICAgIGxlbmd0aCBhZnRlciBjb252ZXJzaW9uIHRvIHRoZSB0cnVlIHZhbHVlLiAoQnV0IGRlY29kaW5nIGVycm9yCiAgICAgICAgaGFuZGxlciBtaWdodCBoYXZlIHRvIHJlc2l6ZSB0aGUgc3RyaW5nKSAqLwotICAgIHYgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKKyAgICB2ID0gUHlVbmljb2RlX05ldyhzaXplLCAxMjcpOwogICAgIGlmICh2ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICBpZiAoc2l6ZSA9PSAwKQotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdjsKLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CisgICAgICAgIHJldHVybiB2OworICAgIG91dHBvcyA9IDA7CiAgICAgZW5kID0gcyArIHNpemU7CiAgICAgd2hpbGUgKHMgPCBlbmQpIHsKICAgICAgICAgdW5zaWduZWQgY2hhciBjOwpAQCAtNDIwMSw3ICs2MjQ5LDggQEAKIAogICAgICAgICAvKiBOb24tZXNjYXBlIGNoYXJhY3RlcnMgYXJlIGludGVycHJldGVkIGFzIFVuaWNvZGUgb3JkaW5hbHMgKi8KICAgICAgICAgaWYgKCpzICE9ICdcXCcpIHsKLSAgICAgICAgICAgICpwKysgPSAodW5zaWduZWQgY2hhcikqcysrOworICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdiwgJm91dHBvcywgKHVuc2lnbmVkIGNoYXIpKnMrKykgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAgIHN0YXJ0aW5wb3MgPSBzLXN0YXJ0czsKQEAgLTQyMTIsMTkgKzYyNjEsMTkgQEAKICAgICAgICAgZm9yICg7cyA8IGVuZDspIHsKICAgICAgICAgICAgIGlmICgqcyAhPSAnXFwnKQogICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgKnArKyA9ICh1bnNpZ25lZCBjaGFyKSpzKys7CisgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ2LCAmb3V0cG9zLCAodW5zaWduZWQgY2hhcikqcysrKSA8IDApCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICB9CiAgICAgICAgIGlmICgoKHMgLSBicykgJiAxKSA9PSAwIHx8CiAgICAgICAgICAgICBzID49IGVuZCB8fAogICAgICAgICAgICAgKCpzICE9ICd1JyAmJiAqcyAhPSAnVScpKSB7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQotICAgICAgICBwLS07CisgICAgICAgIG91dHBvcy0tOwogICAgICAgICBjb3VudCA9ICpzPT0ndScgPyA0IDogODsKICAgICAgICAgcysrOwogCiAgICAgICAgIC8qIFx1WFhYWCB3aXRoIDQgaGV4IGRpZ2l0cywgXFV4eHh4eHh4eCB3aXRoIDggKi8KLSAgICAgICAgb3V0cG9zID0gcC1QeVVuaWNvZGVfQVNfVU5JQ09ERSh2KTsKICAgICAgICAgZm9yICh4ID0gMCwgaSA9IDA7IGkgPCBjb3VudDsgKytpLCArK3MpIHsKICAgICAgICAgICAgIGMgPSAodW5zaWduZWQgY2hhcikqczsKICAgICAgICAgICAgIGlmICghUHlfSVNYRElHSVQoYykpIHsKQEAgLTQyMzMsNyArNjI4Miw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAicmF3dW5pY29kZWVzY2FwZSIsICJ0cnVuY2F0ZWQgXFx1WFhYWCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnRzLCAmZW5kLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcykpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICBnb3RvIG5leHRCeXRlOwogICAgICAgICAgICAgfQpAQCAtNDI0NSwzNyArNjI5NCwyNiBAQAogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIHggKz0gMTAgKyBjIC0gJ0EnOwogICAgICAgICB9Ci0gICAgICAgIGlmICh4IDw9IDB4ZmZmZikKLSAgICAgICAgICAgIC8qIFVDUy0yIGNoYXJhY3RlciAqLwotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKSB4OwotICAgICAgICBlbHNlIGlmICh4IDw9IDB4MTBmZmZmKSB7Ci0gICAgICAgICAgICAvKiBVQ1MtNCBjaGFyYWN0ZXIuIEVpdGhlciBzdG9yZSBkaXJlY3RseSwgb3IgYXMKLSAgICAgICAgICAgICAgIHN1cnJvZ2F0ZSBwYWlyLiAqLwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKSB4OwotI2Vsc2UKLSAgICAgICAgICAgIHggLT0gMHgxMDAwMEw7Ci0gICAgICAgICAgICAqcCsrID0gMHhEODAwICsgKFB5X1VOSUNPREUpICh4ID4+IDEwKTsKLSAgICAgICAgICAgICpwKysgPSAweERDMDAgKyAoUHlfVU5JQ09ERSkgKHggJiAweDAzRkYpOwotI2VuZGlmCisgICAgICAgIGlmICh4IDw9IE1BWF9VTklDT0RFKSB7CisgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ2LCAmb3V0cG9zLCB4KSA8IDApCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgZW5kaW5wb3MgPSBzLXN0YXJ0czsKLSAgICAgICAgICAgIG91dHBvcyA9IHAtUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgICAgIGVycm9ycywgJmVycm9ySGFuZGxlciwKICAgICAgICAgICAgICAgICAgICAgInJhd3VuaWNvZGVlc2NhcGUiLCAiXFxVeHh4eHh4eHggb3V0IG9mIHJhbmdlIiwKICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmVuZCwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgJnMsCi0gICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zKSkKICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgIH0KICAgICAgIG5leHRCeXRlOgogICAgICAgICA7CiAgICAgfQotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdiwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA8IDApCisgICAgaWYgKHVuaWNvZGVfcmVzaXplKCZ2LCBvdXRwb3MpIDwgMCkKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHYpOwogCiAgIG9uRXJyb3I6CiAgICAgUHlfWERFQ1JFRih2KTsKQEAgLTQyODQsMTQ0ICs2MzIyLDEzOSBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgUHlfVU5JQ09ERSAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUpCisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCiB7CiAgICAgUHlPYmplY3QgKnJlcHI7CiAgICAgY2hhciAqcDsKICAgICBjaGFyICpxOworICAgIFB5X3NzaXplX3QgZXhwYW5kc2l6ZSwgcG9zOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBsZW47CiAKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBjb25zdCBQeV9zc2l6ZV90IGV4cGFuZHNpemUgPSAxMDsKLSNlbHNlCi0gICAgY29uc3QgUHlfc3NpemVfdCBleHBhbmRzaXplID0gNjsKLSNlbmRpZgorICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworICAgIC8qIDQgYnl0ZSBjaGFyYWN0ZXJzIGNhbiB0YWtlIHVwIDEwIGJ5dGVzLCAyIGJ5dGUgY2hhcmFjdGVycyBjYW4gdGFrZSB1cCA2CisgICAgICAgYnl0ZXMsIGFuZCAxIGJ5dGUgY2hhcmFjdGVycyA0LiAqLworICAgIGV4cGFuZHNpemUgPSBraW5kICogMiArIDI7CiAKLSAgICBpZiAoc2l6ZSA+IFBZX1NTSVpFX1RfTUFYIC8gZXhwYW5kc2l6ZSkKKyAgICBpZiAobGVuID4gUFlfU1NJWkVfVF9NQVggLyBleHBhbmRzaXplKQogICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKIAotICAgIHJlcHIgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGV4cGFuZHNpemUgKiBzaXplKTsKKyAgICByZXByID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBleHBhbmRzaXplICogbGVuKTsKICAgICBpZiAocmVwciA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoc2l6ZSA9PSAwKQorICAgIGlmIChsZW4gPT0gMCkKICAgICAgICAgcmV0dXJuIHJlcHI7CiAKICAgICBwID0gcSA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHJlcHIpOwotICAgIHdoaWxlIChzaXplLS0gPiAwKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPSAqcysrOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQorICAgIGZvciAocG9zID0gMDsgcG9zIDwgbGVuOyBwb3MrKykgeworICAgICAgICBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgcG9zKTsKICAgICAgICAgLyogTWFwIDMyLWJpdCBjaGFyYWN0ZXJzIHRvICdcVXh4eHh4eHh4JyAqLwogICAgICAgICBpZiAoY2ggPj0gMHgxMDAwMCkgeworICAgICAgICAgICAgYXNzZXJ0KGNoIDw9IE1BWF9VTklDT0RFKTsKICAgICAgICAgICAgICpwKysgPSAnXFwnOwogICAgICAgICAgICAgKnArKyA9ICdVJzsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDI4KSAmIDB4Zl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAyNCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gMjApICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDE2KSAmIDB4Zl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDE1XTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDI4KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAyNCkgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gMjApICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDE2KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gOCkgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gNCkgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1tjaCAmIDE1XTsKICAgICAgICAgfQotICAgICAgICBlbHNlCi0jZWxzZQotICAgICAgICAgICAgLyogTWFwIFVURi0xNiBzdXJyb2dhdGUgcGFpcnMgdG8gJ1xVMDB4eHh4eHgnICovCi0gICAgICAgICAgICBpZiAoY2ggPj0gMHhEODAwICYmIGNoIDwgMHhEQzAwKSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjaDI7Ci0gICAgICAgICAgICAgICAgUHlfVUNTNCB1Y3M7Ci0KLSAgICAgICAgICAgICAgICBjaDIgPSAqcysrOwotICAgICAgICAgICAgICAgIHNpemUtLTsKLSAgICAgICAgICAgICAgICBpZiAoY2gyID49IDB4REMwMCAmJiBjaDIgPD0gMHhERkZGKSB7Ci0gICAgICAgICAgICAgICAgICAgIHVjcyA9ICgoKGNoICYgMHgwM0ZGKSA8PCAxMCkgfCAoY2gyICYgMHgwM0ZGKSkgKyAweDAwMDEwMDAwOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9ICdVJzsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDI4KSAmIDB4Zl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAyNCkgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMjApICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDE2KSAmIDB4Zl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gOCkgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gNCkgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW3VjcyAmIDB4Zl07Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAvKiBGYWxsIHRocm91Z2g6IGlzb2xhdGVkIHN1cnJvZ2F0ZXMgYXJlIGNvcGllZCBhcy1pcyAqLwotICAgICAgICAgICAgICAgIHMtLTsKLSAgICAgICAgICAgICAgICBzaXplKys7Ci0gICAgICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgLyogTWFwIDE2LWJpdCBjaGFyYWN0ZXJzIHRvICdcdXh4eHgnICovCi0gICAgICAgIGlmIChjaCA+PSAyNTYpIHsKKyAgICAgICAgZWxzZSBpZiAoY2ggPj0gMjU2KSB7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAndSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDE1XTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA4KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2NoICYgMTVdOwogICAgICAgICB9CiAgICAgICAgIC8qIENvcHkgZXZlcnl0aGluZyBlbHNlIGFzLWlzICovCiAgICAgICAgIGVsc2UKICAgICAgICAgICAgICpwKysgPSAoY2hhcikgY2g7CiAgICAgfQotICAgIHNpemUgPSBwIC0gcTsKIAotICAgIGFzc2VydChzaXplID4gMCk7Ci0gICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmVwciwgc2l6ZSkgPCAwKQorICAgIGFzc2VydChwID4gcSk7CisgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmVwciwgcCAtIHEpIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcmV0dXJuIHJlcHI7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgUHlfVU5JQ09ERSAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSkKIHsKLSAgICBQeU9iamVjdCAqczsKLSAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewotICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlPYmplY3QgKnRtcCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzLCBzaXplKTsKKyAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBzID0gUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGUoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSk7Ci0KLSAgICByZXR1cm4gczsKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nKHRtcCk7CisgICAgUHlfREVDUkVGKHRtcCk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogLyogLS0tIFVuaWNvZGUgSW50ZXJuYWwgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCi1QeU9iamVjdCAqX1B5VW5pY29kZV9EZWNvZGVVbmljb2RlSW50ZXJuYWwoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorX1B5VW5pY29kZV9EZWNvZGVVbmljb2RlSW50ZXJuYWwoY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBjb25zdCBjaGFyICpzdGFydHMgPSBzOwogICAgIFB5X3NzaXplX3Qgc3RhcnRpbnBvczsKICAgICBQeV9zc2l6ZV90IGVuZGlucG9zOwogICAgIFB5X3NzaXplX3Qgb3V0cG9zOwotICAgIFB5VW5pY29kZU9iamVjdCAqdjsKLSAgICBQeV9VTklDT0RFICpwOworICAgIFB5T2JqZWN0ICp2OwogICAgIGNvbnN0IGNoYXIgKmVuZDsKICAgICBjb25zdCBjaGFyICpyZWFzb247CiAgICAgUHlPYmplY3QgKmVycm9ySGFuZGxlciA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmV4YyA9IE5VTEw7CiAKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBQeV9VTklDT0RFIHVuaW1heCA9IFB5VW5pY29kZV9HZXRNYXgoKTsKLSNlbmRpZgorICAgIGlmIChQeUVycl9XYXJuRXgoUHlFeGNfRGVwcmVjYXRpb25XYXJuaW5nLAorICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVfaW50ZXJuYWwgY29kZWMgaGFzIGJlZW4gZGVwcmVjYXRlZCIsCisgICAgICAgICAgICAgICAgICAgICAxKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICAvKiBYWFggb3ZlcmZsb3cgZGV0ZWN0aW9uIG1pc3NpbmcgKi8KLSAgICB2ID0gX1B5VW5pY29kZV9OZXcoKHNpemUrUHlfVU5JQ09ERV9TSVpFLTEpLyBQeV9VTklDT0RFX1NJWkUpOworICAgIHYgPSBQeVVuaWNvZGVfTmV3KChzaXplK1B5X1VOSUNPREVfU0laRS0xKS8gUHlfVU5JQ09ERV9TSVpFLCAxMjcpOwogICAgIGlmICh2ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICBpZiAoUHlVbmljb2RlX0dldFNpemUoKFB5T2JqZWN0ICopdikgPT0gMCkKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXY7Ci0gICAgcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHYpOworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSCh2KSA9PSAwKQorICAgICAgICByZXR1cm4gdjsKKyAgICBvdXRwb3MgPSAwOwogICAgIGVuZCA9IHMgKyBzaXplOwogCiAgICAgd2hpbGUgKHMgPCBlbmQpIHsKLSAgICAgICAgbWVtY3B5KHAsIHMsIHNpemVvZihQeV9VTklDT0RFKSk7CisgICAgICAgIFB5X1VOSUNPREUgdWNoOworICAgICAgICBQeV9VQ1M0IGNoOworICAgICAgICAvKiBXZSBjb3B5IHRoZSByYXcgcmVwcmVzZW50YXRpb24gb25lIGJ5dGUgYXQgYSB0aW1lIGJlY2F1c2UgdGhlCisgICAgICAgICAgIHBvaW50ZXIgbWF5IGJlIHVuYWxpZ25lZCAoc2VlIHRlc3RfY29kZWNjYWxsYmFja3MpLiAqLworICAgICAgICAoKGNoYXIgKikgJnVjaClbMF0gPSBzWzBdOworICAgICAgICAoKGNoYXIgKikgJnVjaClbMV0gPSBzWzFdOworI2lmZGVmIFB5X1VOSUNPREVfV0lERQorICAgICAgICAoKGNoYXIgKikgJnVjaClbMl0gPSBzWzJdOworICAgICAgICAoKGNoYXIgKikgJnVjaClbM10gPSBzWzNdOworI2VuZGlmCisgICAgICAgIGNoID0gdWNoOworCiAgICAgICAgIC8qIFdlIGhhdmUgdG8gc2FuaXR5IGNoZWNrIHRoZSByYXcgZGF0YSwgb3RoZXJ3aXNlIGRvb20gbG9vbXMgZm9yCiAgICAgICAgICAgIHNvbWUgbWFsZm9ybWVkIFVDUy00IGRhdGEuICovCiAgICAgICAgIGlmICgKICNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICpwID4gdW5pbWF4IHx8ICpwIDwgMCB8fAorICAgICAgICAgICAgY2ggPiAweDEwZmZmZiB8fAogI2VuZGlmCiAgICAgICAgICAgICBlbmQtcyA8IFB5X1VOSUNPREVfU0laRQogICAgICAgICAgICAgKQpAQCAtNDQzNSwyNiArNjQ2OCwzOSBAQAogICAgICAgICAgICAgICAgIGVuZGlucG9zID0gcyAtIHN0YXJ0cyArIFB5X1VOSUNPREVfU0laRTsKICAgICAgICAgICAgICAgICByZWFzb24gPSAiaWxsZWdhbCBjb2RlIHBvaW50ICg+IDB4MTBGRkZGKSI7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBvdXRwb3MgPSBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgICAgIGVycm9ycywgJmVycm9ySGFuZGxlciwKICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVfaW50ZXJuYWwiLCByZWFzb24sCiAgICAgICAgICAgICAgICAgICAgICZzdGFydHMsICZlbmQsICZzdGFydGlucG9zLCAmZW5kaW5wb3MsICZleGMsICZzLAotICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcywgJnApKSB7CisgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zKSkKICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCisgICAgICAgIHMgKz0gUHlfVU5JQ09ERV9TSVpFOworI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKKyAgICAgICAgaWYgKFB5X1VOSUNPREVfSVNfSElHSF9TVVJST0dBVEUoY2gpICYmIHMgPCBlbmQpCisgICAgICAgIHsKKyAgICAgICAgICAgIFB5X1VOSUNPREUgdWNoMjsKKyAgICAgICAgICAgICgoY2hhciAqKSAmdWNoMilbMF0gPSBzWzBdOworICAgICAgICAgICAgKChjaGFyICopICZ1Y2gyKVsxXSA9IHNbMV07CisgICAgICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU19MT1dfU1VSUk9HQVRFKHVjaDIpKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGNoID0gUHlfVU5JQ09ERV9KT0lOX1NVUlJPR0FURVModWNoLCB1Y2gyKTsKKyAgICAgICAgICAgICAgICBzICs9IFB5X1VOSUNPREVfU0laRTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIHArKzsKLSAgICAgICAgICAgIHMgKz0gUHlfVU5JQ09ERV9TSVpFOwotICAgICAgICB9CisjZW5kaWYKKworICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ2LCAmb3V0cG9zLCBjaCkgPCAwKQorICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgIH0KIAotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdiwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA8IDApCisgICAgaWYgKHVuaWNvZGVfcmVzaXplKCZ2LCBvdXRwb3MpIDwgMCkKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHYpOwogCiAgIG9uRXJyb3I6CiAgICAgUHlfWERFQ1JFRih2KTsKQEAgLTQ0NjUsNTcgKzY1MTEsMjcgQEAKIAogLyogLS0tIExhdGluLTEgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlTGF0aW4xKGNvbnN0IGNoYXIgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlTGF0aW4xKGNvbnN0IGNoYXIgKnMsCisgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewotICAgIFB5VW5pY29kZU9iamVjdCAqdjsKLSAgICBQeV9VTklDT0RFICpwOwotICAgIGNvbnN0IGNoYXIgKmUsICp1bnJvbGxlZF9lbmQ7Ci0KICAgICAvKiBMYXRpbi0xIGlzIGVxdWl2YWxlbnQgdG8gdGhlIGZpcnN0IDI1NiBvcmRpbmFscyBpbiBVbmljb2RlLiAqLwotICAgIGlmIChzaXplID09IDEpIHsKLSAgICAgICAgUHlfVU5JQ09ERSByID0gKih1bnNpZ25lZCBjaGFyKilzOwotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKCZyLCAxKTsKLSAgICB9Ci0KLSAgICB2ID0gX1B5VW5pY29kZV9OZXcoc2l6ZSk7Ci0gICAgaWYgKHYgPT0gTlVMTCkKLSAgICAgICAgZ290byBvbkVycm9yOwotICAgIGlmIChzaXplID09IDApCi0gICAgICAgIHJldHVybiAoUHlPYmplY3QgKil2OwotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KTsKLSAgICBlID0gcyArIHNpemU7Ci0gICAgLyogVW5yb2xsaW5nIHRoZSBjb3B5IG1ha2VzIGl0IG11Y2ggZmFzdGVyIGJ5IHJlZHVjaW5nIHRoZSBsb29waW5nCi0gICAgICAgb3ZlcmhlYWQuIFRoaXMgaXMgc2ltaWxhciB0byB3aGF0IG1hbnkgbWVtY3B5KCkgaW1wbGVtZW50YXRpb25zIGRvLiAqLwotICAgIHVucm9sbGVkX2VuZCA9IGUgLSA0OwotICAgIHdoaWxlIChzIDwgdW5yb2xsZWRfZW5kKSB7Ci0gICAgICAgIHBbMF0gPSAodW5zaWduZWQgY2hhcikgc1swXTsKLSAgICAgICAgcFsxXSA9ICh1bnNpZ25lZCBjaGFyKSBzWzFdOwotICAgICAgICBwWzJdID0gKHVuc2lnbmVkIGNoYXIpIHNbMl07Ci0gICAgICAgIHBbM10gPSAodW5zaWduZWQgY2hhcikgc1szXTsKLSAgICAgICAgcyArPSA0OwotICAgICAgICBwICs9IDQ7Ci0gICAgfQotICAgIHdoaWxlIChzIDwgZSkKLSAgICAgICAgKnArKyA9ICh1bnNpZ25lZCBjaGFyKSAqcysrOwotICAgIHJldHVybiAoUHlPYmplY3QgKil2OwotCi0gIG9uRXJyb3I6Ci0gICAgUHlfWERFQ1JFRih2KTsKLSAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9Gcm9tVUNTMSgodW5zaWduZWQgY2hhciopcywgc2l6ZSk7CiB9CiAKIC8qIGNyZWF0ZSBvciBhZGp1c3QgYSBVbmljb2RlRW5jb2RlRXJyb3IgKi8KLXN0YXRpYyB2b2lkIG1ha2VfZW5jb2RlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICp1bmljb2RlLCBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydHBvcywgUHlfc3NpemVfdCBlbmRwb3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcmVhc29uKQorc3RhdGljIHZvaWQKK21ha2VfZW5jb2RlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0cG9zLCBQeV9zc2l6ZV90IGVuZHBvcywKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCiB7CiAgICAgaWYgKCpleGNlcHRpb25PYmplY3QgPT0gTlVMTCkgewotICAgICAgICAqZXhjZXB0aW9uT2JqZWN0ID0gUHlVbmljb2RlRW5jb2RlRXJyb3JfQ3JlYXRlKAotICAgICAgICAgICAgZW5jb2RpbmcsIHVuaWNvZGUsIHNpemUsIHN0YXJ0cG9zLCBlbmRwb3MsIHJlYXNvbik7CisgICAgICAgICpleGNlcHRpb25PYmplY3QgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb24oCisgICAgICAgICAgICBQeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3IsICJzT25ucyIsCisgICAgICAgICAgICBlbmNvZGluZywgdW5pY29kZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIGlmIChQeVVuaWNvZGVFbmNvZGVFcnJvcl9TZXRTdGFydCgqZXhjZXB0aW9uT2JqZWN0LCBzdGFydHBvcykpCkBAIC00NTMyLDE0ICs2NTQ4LDE1IEBACiB9CiAKIC8qIHJhaXNlcyBhIFVuaWNvZGVFbmNvZGVFcnJvciAqLwotc3RhdGljIHZvaWQgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKnVuaWNvZGUsIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydHBvcywgUHlfc3NpemVfdCBlbmRwb3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnJlYXNvbikKK3N0YXRpYyB2b2lkCityYWlzZV9lbmNvZGVfZXhjZXB0aW9uKFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCiB7CiAgICAgbWFrZV9lbmNvZGVfZXhjZXB0aW9uKGV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHVuaWNvZGUsIHNpemUsIHN0YXJ0cG9zLCBlbmRwb3MsIHJlYXNvbik7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nLCB1bmljb2RlLCBzdGFydHBvcywgZW5kcG9zLCByZWFzb24pOwogICAgIGlmICgqZXhjZXB0aW9uT2JqZWN0ICE9IE5VTEwpCiAgICAgICAgIFB5Q29kZWNfU3RyaWN0RXJyb3JzKCpleGNlcHRpb25PYmplY3QpOwogfQpAQCAtNDU0OCwxNSArNjU2NSwxNiBAQAogICAgYnVpbGQgYXJndW1lbnRzLCBjYWxsIHRoZSBjYWxsYmFjayBhbmQgY2hlY2sgdGhlIGFyZ3VtZW50cywKICAgIHB1dCB0aGUgcmVzdWx0IGludG8gbmV3cG9zIGFuZCByZXR1cm4gdGhlIHJlcGxhY2VtZW50IHN0cmluZywgd2hpY2gKICAgIGhhcyB0byBiZSBmcmVlZCBieSB0aGUgY2FsbGVyICovCi1zdGF0aWMgUHlPYmplY3QgKnVuaWNvZGVfZW5jb2RlX2NhbGxfZXJyb3JoYW5kbGVyKGNvbnN0IGNoYXIgKmVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKiplcnJvckhhbmRsZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLCBjb25zdCBjaGFyICpyZWFzb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKnVuaWNvZGUsIFB5X3NzaXplX3Qgc2l6ZSwgUHlPYmplY3QgKipleGNlcHRpb25PYmplY3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuZXdwb3MpCitzdGF0aWMgUHlPYmplY3QgKgordW5pY29kZV9lbmNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKiplcnJvckhhbmRsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywgY29uc3QgY2hhciAqcmVhc29uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsIFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydHBvcywgUHlfc3NpemVfdCBlbmRwb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuZXdwb3MpCiB7CiAgICAgc3RhdGljIGNoYXIgKmFyZ3BhcnNlID0gIk9uO2VuY29kaW5nIGVycm9yIGhhbmRsZXIgbXVzdCByZXR1cm4gKHN0ci9ieXRlcywgaW50KSB0dXBsZSI7Ci0KKyAgICBQeV9zc2l6ZV90IGxlbjsKICAgICBQeU9iamVjdCAqcmVzdHVwbGU7CiAgICAgUHlPYmplY3QgKnJlc3VuaWNvZGU7CiAKQEAgLTQ1NjYsOCArNjU4NCwxMiBAQAogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSk7CisKICAgICBtYWtlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGluZywgdW5pY29kZSwgc2l6ZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHVuaWNvZGUsIHN0YXJ0cG9zLCBlbmRwb3MsIHJlYXNvbik7CiAgICAgaWYgKCpleGNlcHRpb25PYmplY3QgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTQ1OTEsOCArNjYxMyw4IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBpZiAoKm5ld3BvczwwKQotICAgICAgICAqbmV3cG9zID0gc2l6ZSsqbmV3cG9zOwotICAgIGlmICgqbmV3cG9zPDAgfHwgKm5ld3Bvcz5zaXplKSB7CisgICAgICAgICpuZXdwb3MgPSBsZW4gKyAqbmV3cG9zOworICAgIGlmICgqbmV3cG9zPDAgfHwgKm5ld3Bvcz5sZW4pIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0luZGV4RXJyb3IsICJwb3NpdGlvbiAlemQgZnJvbSBlcnJvciBoYW5kbGVyIG91dCBvZiBib3VuZHMiLCAqbmV3cG9zKTsKICAgICAgICAgUHlfREVDUkVGKHJlc3R1cGxlKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC00NjAyLDE4ICs2NjI0LDE3IEBACiAgICAgcmV0dXJuIHJlc3VuaWNvZGU7CiB9CiAKLXN0YXRpYyBQeU9iamVjdCAqdW5pY29kZV9lbmNvZGVfdWNzMShjb25zdCBQeV9VTklDT0RFICpwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGxpbWl0KQorc3RhdGljIFB5T2JqZWN0ICoKK3VuaWNvZGVfZW5jb2RlX3VjczEoUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKKyAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGxpbWl0KQogeworICAgIC8qIGlucHV0IHN0YXRlICovCisgICAgUHlfc3NpemVfdCBwb3M9MCwgc2l6ZTsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIC8qIG91dHB1dCBvYmplY3QgKi8KICAgICBQeU9iamVjdCAqcmVzOwotICAgIC8qIHBvaW50ZXJzIHRvIHRoZSBiZWdpbm5pbmcgYW5kIGVuZCsxIG9mIGlucHV0ICovCi0gICAgY29uc3QgUHlfVU5JQ09ERSAqc3RhcnRwID0gcDsKLSAgICBjb25zdCBQeV9VTklDT0RFICplbmRwID0gcCArIHNpemU7Ci0gICAgLyogcG9pbnRlciB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSB1bmVuY29kYWJsZSBjaGFyYWN0ZXJzICovCi0gICAgLyogY29uc3QgUHlfVU5JQ09ERSAqYmFkcCA9IE5VTEw7ICovCiAgICAgLyogcG9pbnRlciBpbnRvIHRoZSBvdXRwdXQgKi8KICAgICBjaGFyICpzdHI7CiAgICAgLyogY3VycmVudCBvdXRwdXQgcG9zaXRpb24gKi8KQEAgLTQ2MjYsNiArNjY0NywxMSBAQAogICAgICAqIC0xPW5vdCBpbml0aWFsaXplZCwgMD11bmtub3duLCAxPXN0cmljdCwgMj1yZXBsYWNlLCAzPWlnbm9yZSwgND14bWxjaGFycmVmcmVwbGFjZSAqLwogICAgIGludCBrbm93bl9lcnJvckhhbmRsZXIgPSAtMTsKIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodW5pY29kZSkgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpOwogICAgIC8qIGFsbG9jYXRlIGVub3VnaCBmb3IgYSBzaW1wbGUgZW5jb2Rpbmcgd2l0aG91dAogICAgICAgIHJlcGxhY2VtZW50cywgaWYgd2UgbmVlZCBtb3JlLCB3ZSdsbCByZXNpemUgKi8KICAgICBpZiAoc2l6ZSA9PSAwKQpAQCAtNDYzNiwyOCArNjY2MiwyNCBAQAogICAgIHN0ciA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHJlcyk7CiAgICAgcmVzc2l6ZSA9IHNpemU7CiAKLSAgICB3aGlsZSAocDxlbmRwKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgYyA9ICpwOworICAgIHdoaWxlIChwb3MgPCBzaXplKSB7CisgICAgICAgIFB5X1VDUzQgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIHBvcyk7CiAKICAgICAgICAgLyogY2FuIHdlIGVuY29kZSB0aGlzPyAqLwogICAgICAgICBpZiAoYzxsaW1pdCkgewogICAgICAgICAgICAgLyogbm8gb3ZlcmZsb3cgY2hlY2ssIGJlY2F1c2Ugd2Uga25vdyB0aGF0IHRoZSBzcGFjZSBpcyBlbm91Z2ggKi8KICAgICAgICAgICAgICpzdHIrKyA9IChjaGFyKWM7Ci0gICAgICAgICAgICArK3A7CisgICAgICAgICAgICArK3BvczsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIFB5X3NzaXplX3QgdW5pY29kZXBvcyA9IHAtc3RhcnRwOwogICAgICAgICAgICAgUHlfc3NpemVfdCByZXF1aXJlZHNpemU7CiAgICAgICAgICAgICBQeU9iamVjdCAqcmVwdW5pY29kZTsKLSAgICAgICAgICAgIFB5X3NzaXplX3QgcmVwc2l6ZTsKLSAgICAgICAgICAgIFB5X3NzaXplX3QgbmV3cG9zOwotICAgICAgICAgICAgUHlfc3NpemVfdCByZXNwb3M7Ci0gICAgICAgICAgICBQeV9VTklDT0RFICp1bmkyOworICAgICAgICAgICAgUHlfc3NpemVfdCByZXBzaXplLCBuZXdwb3MsIHJlc3BvcywgaTsKICAgICAgICAgICAgIC8qIHN0YXJ0cG9zIGZvciBjb2xsZWN0aW5nIHVuZW5jb2RhYmxlIGNoYXJzICovCi0gICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICpjb2xsc3RhcnQgPSBwOwotICAgICAgICAgICAgY29uc3QgUHlfVU5JQ09ERSAqY29sbGVuZCA9IHA7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGNvbGxzdGFydCA9IHBvczsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgY29sbGVuZCA9IHBvczsKICAgICAgICAgICAgIC8qIGZpbmQgYWxsIHVuZWNvZGFibGUgY2hhcmFjdGVycyAqLwotICAgICAgICAgICAgd2hpbGUgKChjb2xsZW5kIDwgZW5kcCkgJiYgKCgqY29sbGVuZCk+PWxpbWl0KSkKKyAgICAgICAgICAgIHdoaWxlICgoY29sbGVuZCA8IHNpemUpICYmIChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBjb2xsZW5kKT49bGltaXQpKQogICAgICAgICAgICAgICAgICsrY29sbGVuZDsKICAgICAgICAgICAgIC8qIGNhY2hlIGNhbGxiYWNrIG5hbWUgbG9va3VwIChpZiBub3QgZG9uZSB5ZXQsIGkuZS4gaXQncyB0aGUgZmlyc3QgZXJyb3IpICovCiAgICAgICAgICAgICBpZiAoa25vd25fZXJyb3JIYW5kbGVyPT0tMSkgewpAQCAtNDY3NCwzOSArNjY5NiwzNyBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgc3dpdGNoIChrbm93bl9lcnJvckhhbmRsZXIpIHsKICAgICAgICAgICAgIGNhc2UgMTogLyogc3RyaWN0ICovCi0gICAgICAgICAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbigmZXhjLCBlbmNvZGluZywgc3RhcnRwLCBzaXplLCBjb2xsc3RhcnQtc3RhcnRwLCBjb2xsZW5kLXN0YXJ0cCwgcmVhc29uKTsKKyAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLCB1bmljb2RlLCBjb2xsc3RhcnQsIGNvbGxlbmQsIHJlYXNvbik7CiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgY2FzZSAyOiAvKiByZXBsYWNlICovCiAgICAgICAgICAgICAgICAgd2hpbGUgKGNvbGxzdGFydCsrPGNvbGxlbmQpCiAgICAgICAgICAgICAgICAgICAgICpzdHIrKyA9ICc/JzsgLyogZmFsbCB0aHJvdWdoICovCiAgICAgICAgICAgICBjYXNlIDM6IC8qIGlnbm9yZSAqLwotICAgICAgICAgICAgICAgIHAgPSBjb2xsZW5kOworICAgICAgICAgICAgICAgIHBvcyA9IGNvbGxlbmQ7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIDQ6IC8qIHhtbGNoYXJyZWZyZXBsYWNlICovCiAgICAgICAgICAgICAgICAgcmVzcG9zID0gc3RyIC0gUHlCeXRlc19BU19TVFJJTkcocmVzKTsKLSAgICAgICAgICAgICAgICAvKiBkZXRlcm1pbmUgcmVwbGFjZW1lbnQgc2l6ZSAodGVtcG9yYXJpbHkgKG1pcyl1c2VzIHApICovCi0gICAgICAgICAgICAgICAgZm9yIChwID0gY29sbHN0YXJ0LCByZXBzaXplID0gMDsgcCA8IGNvbGxlbmQ7ICsrcCkgewotICAgICAgICAgICAgICAgICAgICBpZiAoKnA8MTApCisgICAgICAgICAgICAgICAgLyogZGV0ZXJtaW5lIHJlcGxhY2VtZW50IHNpemUgKi8KKyAgICAgICAgICAgICAgICBmb3IgKGkgPSBjb2xsc3RhcnQsIHJlcHNpemUgPSAwOyBpIDwgY29sbGVuZDsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGNoIDwgMTApCiAgICAgICAgICAgICAgICAgICAgICAgICByZXBzaXplICs9IDIrMSsxOwotICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgqcDwxMDApCisgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoIDwgMTAwKQogICAgICAgICAgICAgICAgICAgICAgICAgcmVwc2l6ZSArPSAyKzIrMTsKLSAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwMCkKKyAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoY2ggPCAxMDAwKQogICAgICAgICAgICAgICAgICAgICAgICAgcmVwc2l6ZSArPSAyKzMrMTsKLSAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwMDApCisgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoIDwgMTAwMDApCiAgICAgICAgICAgICAgICAgICAgICAgICByZXBzaXplICs9IDIrNCsxOwotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChjaCA8IDEwMDAwMCkKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHNpemUgKz0gMis1KzE7Ci0jZWxzZQotICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwMDApCi0gICAgICAgICAgICAgICAgICAgICAgICByZXBzaXplICs9IDIrNSsxOwotICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwMDAwKQorICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChjaCA8IDEwMDAwMDApCiAgICAgICAgICAgICAgICAgICAgICAgICByZXBzaXplICs9IDIrNisxOwotICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KGNoIDw9IE1BWF9VTklDT0RFKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHNpemUgKz0gMis3KzE7Ci0jZW5kaWYKKyAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICByZXF1aXJlZHNpemUgPSByZXNwb3MrcmVwc2l6ZSsoZW5kcC1jb2xsZW5kKTsKKyAgICAgICAgICAgICAgICByZXF1aXJlZHNpemUgPSByZXNwb3MrcmVwc2l6ZSsoc2l6ZS1jb2xsZW5kKTsKICAgICAgICAgICAgICAgICBpZiAocmVxdWlyZWRzaXplID4gcmVzc2l6ZSkgewogICAgICAgICAgICAgICAgICAgICBpZiAocmVxdWlyZWRzaXplPDIqcmVzc2l6ZSkKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkc2l6ZSA9IDIqcmVzc2l6ZTsKQEAgLTQ3MTUsMTcgKzY3MzUsMTggQEAKICAgICAgICAgICAgICAgICAgICAgc3RyID0gUHlCeXRlc19BU19TVFJJTkcocmVzKSArIHJlc3BvczsKICAgICAgICAgICAgICAgICAgICAgcmVzc2l6ZSA9IHJlcXVpcmVkc2l6ZTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgLyogZ2VuZXJhdGUgcmVwbGFjZW1lbnQgKHRlbXBvcmFyaWx5IChtaXMpdXNlcyBwKSAqLwotICAgICAgICAgICAgICAgIGZvciAocCA9IGNvbGxzdGFydDsgcCA8IGNvbGxlbmQ7ICsrcCkgewotICAgICAgICAgICAgICAgICAgICBzdHIgKz0gc3ByaW50ZihzdHIsICImIyVkOyIsIChpbnQpKnApOworICAgICAgICAgICAgICAgIC8qIGdlbmVyYXRlIHJlcGxhY2VtZW50ICovCisgICAgICAgICAgICAgICAgZm9yIChpID0gY29sbHN0YXJ0OyBpIDwgY29sbGVuZDsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgIHN0ciArPSBzcHJpbnRmKHN0ciwgIiYjJWQ7IiwgUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBwID0gY29sbGVuZDsKKyAgICAgICAgICAgICAgICBwb3MgPSBjb2xsZW5kOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICByZXB1bmljb2RlID0gdW5pY29kZV9lbmNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGluZywgcmVhc29uLCBzdGFydHAsIHNpemUsICZleGMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbGxzdGFydC1zdGFydHAsIGNvbGxlbmQtc3RhcnRwLCAmbmV3cG9zKTsKLSAgICAgICAgICAgICAgICBpZiAocmVwdW5pY29kZSA9PSBOVUxMKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGluZywgcmVhc29uLCB1bmljb2RlLCAmZXhjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xsc3RhcnQsIGNvbGxlbmQsICZuZXdwb3MpOworICAgICAgICAgICAgICAgIGlmIChyZXB1bmljb2RlID09IE5VTEwgfHwgKFB5VW5pY29kZV9DaGVjayhyZXB1bmljb2RlKSAmJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEWShyZXB1bmljb2RlKSA9PSAtMSkpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhyZXB1bmljb2RlKSkgewogICAgICAgICAgICAgICAgICAgICAvKiBEaXJlY3RseSBjb3B5IGJ5dGVzIHJlc3VsdCB0byBvdXRwdXQuICovCkBAIC00NzQyLDcgKzY3NjMsNyBAQAogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIG1lbWNweShzdHIsIFB5Qnl0ZXNfQXNTdHJpbmcocmVwdW5pY29kZSksIHJlcHNpemUpOwogICAgICAgICAgICAgICAgICAgICBzdHIgKz0gcmVwc2l6ZTsKLSAgICAgICAgICAgICAgICAgICAgcCA9IHN0YXJ0cCArIG5ld3BvczsKKyAgICAgICAgICAgICAgICAgICAgcG9zID0gbmV3cG9zOwogICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwdW5pY29kZSk7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIH0KQEAgLTQ3NTAsOCArNjc3MSw4IEBACiAgICAgICAgICAgICAgICAgICAgaGF2ZSt0aGUgcmVwbGFjZW1lbnQrdGhlIHJlc3Qgb2YgdGhlIHN0cmluZywgc28KICAgICAgICAgICAgICAgICAgICB3ZSB3b24ndCBoYXZlIHRvIGNoZWNrIHNwYWNlIGZvciBlbmNvZGFibGUgY2hhcmFjdGVycykgKi8KICAgICAgICAgICAgICAgICByZXNwb3MgPSBzdHIgLSBQeUJ5dGVzX0FTX1NUUklORyhyZXMpOwotICAgICAgICAgICAgICAgIHJlcHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUocmVwdW5pY29kZSk7Ci0gICAgICAgICAgICAgICAgcmVxdWlyZWRzaXplID0gcmVzcG9zK3JlcHNpemUrKGVuZHAtY29sbGVuZCk7CisgICAgICAgICAgICAgICAgcmVwc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcHVuaWNvZGUpOworICAgICAgICAgICAgICAgIHJlcXVpcmVkc2l6ZSA9IHJlc3BvcytyZXBzaXplKyhzaXplLWNvbGxlbmQpOwogICAgICAgICAgICAgICAgIGlmIChyZXF1aXJlZHNpemUgPiByZXNzaXplKSB7CiAgICAgICAgICAgICAgICAgICAgIGlmIChyZXF1aXJlZHNpemU8MipyZXNzaXplKQogICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRzaXplID0gMipyZXNzaXplOwpAQCAtNDc2NCwxNyArNjc4NSwxNyBAQAogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiBjaGVjayBpZiB0aGVyZSBpcyBhbnl0aGluZyB1bmVuY29kYWJsZSBpbiB0aGUgcmVwbGFjZW1lbnQKICAgICAgICAgICAgICAgICAgICBhbmQgY29weSBpdCB0byB0aGUgb3V0cHV0ICovCi0gICAgICAgICAgICAgICAgZm9yICh1bmkyID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVwdW5pY29kZSk7cmVwc2l6ZS0tPjA7ICsrdW5pMiwgKytzdHIpIHsKLSAgICAgICAgICAgICAgICAgICAgYyA9ICp1bmkyOworICAgICAgICAgICAgICAgIGZvciAoaSA9IDA7IHJlcHNpemUtLT4wOyArK2ksICsrc3RyKSB7CisgICAgICAgICAgICAgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHJlcHVuaWNvZGUsIGkpOwogICAgICAgICAgICAgICAgICAgICBpZiAoYyA+PSBsaW1pdCkgewotICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbigmZXhjLCBlbmNvZGluZywgc3RhcnRwLCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmljb2RlcG9zLCB1bmljb2RlcG9zKzEsIHJlYXNvbik7CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLCB1bmljb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MsIHBvcysxLCByZWFzb24pOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcHVuaWNvZGUpOwogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICpzdHIgPSAoY2hhciljOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBwID0gc3RhcnRwICsgbmV3cG9zOworICAgICAgICAgICAgICAgIHBvcyA9IG5ld3BvczsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwdW5pY29kZSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KQEAgLTQ3OTgsNzcgKzY4MTksMTQzIEBACiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRW5jb2RlTGF0aW4xKGNvbnN0IFB5X1VOSUNPREUgKnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCisvKiBEZXByZWNhdGVkICovCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRW5jb2RlTGF0aW4xKGNvbnN0IFB5X1VOSUNPREUgKnAsCisgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewotICAgIHJldHVybiB1bmljb2RlX2VuY29kZV91Y3MxKHAsIHNpemUsIGVycm9ycywgMjU2KTsKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICp1bmljb2RlID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHAsIHNpemUpOworICAgIGlmICh1bmljb2RlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlc3VsdCA9IHVuaWNvZGVfZW5jb2RlX3VjczEodW5pY29kZSwgZXJyb3JzLCAyNTYpOworICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICByZXR1cm4gcmVzdWx0OwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorUHlPYmplY3QgKgorX1B5VW5pY29kZV9Bc0xhdGluMVN0cmluZyhQeU9iamVjdCAqdW5pY29kZSwgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CiAgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZUxhdGluMShQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgLyogRmFzdCBwYXRoOiBpZiBpdCBpcyBhIG9uZS1ieXRlIHN0cmluZywgY29uc3RydWN0CisgICAgICAgYnl0ZXMgb2JqZWN0IGRpcmVjdGx5LiAqLworICAgIGlmIChQeVVuaWNvZGVfS0lORCh1bmljb2RlKSA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCkKKyAgICAgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoUHlVbmljb2RlX0RBVEEodW5pY29kZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpKTsKKyAgICAvKiBOb24tTGF0aW4tMSBjaGFyYWN0ZXJzIHByZXNlbnQuIERlZmVyIHRvIGFib3ZlIGZ1bmN0aW9uIHRvCisgICAgICAgcmFpc2UgdGhlIGV4Y2VwdGlvbi4gKi8KKyAgICByZXR1cm4gdW5pY29kZV9lbmNvZGVfdWNzMSh1bmljb2RlLCBlcnJvcnMsIDI1Nik7Cit9CisKK1B5T2JqZWN0KgorUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIHJldHVybiBfUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKHVuaWNvZGUsIE5VTEwpOwogfQogCiAvKiAtLS0gNy1iaXQgQVNDSUkgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAotUHlPYmplY3QgKlB5VW5pY29kZV9EZWNvZGVBU0NJSShjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9EZWNvZGVBU0NJSShjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgY29uc3QgY2hhciAqc3RhcnRzID0gczsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnY7Ci0gICAgUHlfVU5JQ09ERSAqcDsKKyAgICBQeU9iamVjdCAqdjsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIFB5X3NzaXplX3Qgc3RhcnRpbnBvczsKICAgICBQeV9zc2l6ZV90IGVuZGlucG9zOwogICAgIFB5X3NzaXplX3Qgb3V0cG9zOwogICAgIGNvbnN0IGNoYXIgKmU7CisgICAgaW50IGhhc19lcnJvcjsKKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpwID0gKGNvbnN0IHVuc2lnbmVkIGNoYXIgKilzOworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmVuZCA9IHAgKyBzaXplOworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmFsaWduZWRfZW5kID0gKGNvbnN0IHVuc2lnbmVkIGNoYXIgKikgKChzaXplX3QpIGVuZCAmIH5MT05HX1BUUl9NQVNLKTsKICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKICAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKIAotICAgIC8qIEFTQ0lJIGlzIGVxdWl2YWxlbnQgdG8gdGhlIGZpcnN0IDEyOCBvcmRpbmFscyBpbiBVbmljb2RlLiAqLwotICAgIGlmIChzaXplID09IDEgJiYgKih1bnNpZ25lZCBjaGFyKilzIDwgMTI4KSB7Ci0gICAgICAgIFB5X1VOSUNPREUgciA9ICoodW5zaWduZWQgY2hhciopczsKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZSgmciwgMSk7CisgICAgaWYgKHNpemUgPT0gMCkgeworICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OwogICAgIH0KIAotICAgIHYgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKKyAgICAvKiBBU0NJSSBpcyBlcXVpdmFsZW50IHRvIHRoZSBmaXJzdCAxMjggb3JkaW5hbHMgaW4gVW5pY29kZS4gKi8KKyAgICBpZiAoc2l6ZSA9PSAxICYmICh1bnNpZ25lZCBjaGFyKXNbMF0gPCAxMjgpCisgICAgICAgIHJldHVybiBnZXRfbGF0aW4xX2NoYXIoKHVuc2lnbmVkIGNoYXIpc1swXSk7CisKKyAgICBoYXNfZXJyb3IgPSAwOworICAgIHdoaWxlIChwIDwgZW5kICYmICFoYXNfZXJyb3IpIHsKKyAgICAgICAgLyogRmFzdCBwYXRoLCBzZWUgYmVsb3cgaW4gUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bCBmb3IKKyAgICAgICAgICAgYW4gZXhwbGFuYXRpb24uICovCisgICAgICAgIGlmICghKChzaXplX3QpIHAgJiBMT05HX1BUUl9NQVNLKSkgeworICAgICAgICAgICAgLyogSGVscCByZWdpc3RlciBhbGxvY2F0aW9uICovCisgICAgICAgICAgICByZWdpc3RlciBjb25zdCB1bnNpZ25lZCBjaGFyICpfcCA9IHA7CisgICAgICAgICAgICB3aGlsZSAoX3AgPCBhbGlnbmVkX2VuZCkgeworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdmFsdWUgPSAqKHVuc2lnbmVkIGxvbmcgKikgX3A7CisgICAgICAgICAgICAgICAgaWYgKHZhbHVlICYgQVNDSUlfQ0hBUl9NQVNLKSB7CisgICAgICAgICAgICAgICAgICAgIGhhc19lcnJvciA9IDE7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBfcCArPSBTSVpFT0ZfTE9ORzsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChfcCA9PSBlbmQpCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBpZiAoaGFzX2Vycm9yKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgcCA9IF9wOworICAgICAgICB9CisgICAgICAgIGlmICgqcCAmIDB4ODApIHsKKyAgICAgICAgICAgIGhhc19lcnJvciA9IDE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICsrcDsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoIWhhc19lcnJvcikKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfZnJvbWFzY2lpKChjb25zdCB1bnNpZ25lZCBjaGFyICopcywgc2l6ZSk7CisKKyAgICB2ID0gUHlVbmljb2RlX05ldyhzaXplLCAxMjcpOwogICAgIGlmICh2ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICBpZiAoc2l6ZSA9PSAwKQotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdjsKLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CisgICAgICAgIHJldHVybiB2OworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh2KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodik7CisgICAgb3V0cG9zID0gMDsKICAgICBlID0gcyArIHNpemU7CiAgICAgd2hpbGUgKHMgPCBlKSB7CiAgICAgICAgIHJlZ2lzdGVyIHVuc2lnbmVkIGNoYXIgYyA9ICh1bnNpZ25lZCBjaGFyKSpzOwogICAgICAgICBpZiAoYyA8IDEyOCkgewotICAgICAgICAgICAgKnArKyA9IGM7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgb3V0cG9zKyssIGMpOwogICAgICAgICAgICAgKytzOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgc3RhcnRpbnBvcyA9IHMtc3RhcnRzOwogICAgICAgICAgICAgZW5kaW5wb3MgPSBzdGFydGlucG9zICsgMTsKLSAgICAgICAgICAgIG91dHBvcyA9IHAgLSAoUHlfVU5JQ09ERSAqKVB5VW5pY29kZV9BU19VTklDT0RFKHYpOwogICAgICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICJhc2NpaSIsICJvcmRpbmFsIG5vdCBpbiByYW5nZSgxMjgpIiwKICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmUsICZzdGFydGlucG9zLCAmZW5kaW5wb3MsICZleGMsICZzLAotICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcywgJnApKQorICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcykpCiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHYpOworICAgICAgICAgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHYpOwogICAgICAgICB9CiAgICAgfQotICAgIGlmIChwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodikgPCBQeVVuaWNvZGVfR0VUX1NJWkUodikpCi0gICAgICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdiwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA8IDApCi0gICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgaWYgKHVuaWNvZGVfcmVzaXplKCZ2LCBvdXRwb3MpIDwgMCkKKyAgICAgICAgZ290byBvbkVycm9yOwogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh2LCAxKSk7CisgICAgcmV0dXJuIHY7CiAKICAgb25FcnJvcjoKICAgICBQeV9YREVDUkVGKHYpOwpAQCAtNDg3NywyNSArNjk2NCw0NSBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0VuY29kZUFTQ0lJKGNvbnN0IFB5X1VOSUNPREUgKnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorLyogRGVwcmVjYXRlZCAqLworUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZUFTQ0lJKGNvbnN0IFB5X1VOSUNPREUgKnAsCisgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKLSAgICByZXR1cm4gdW5pY29kZV9lbmNvZGVfdWNzMShwLCBzaXplLCBlcnJvcnMsIDEyOCk7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBQeU9iamVjdCAqdW5pY29kZSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShwLCBzaXplKTsKKyAgICBpZiAodW5pY29kZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXN1bHQgPSB1bmljb2RlX2VuY29kZV91Y3MxKHVuaWNvZGUsIGVycm9ycywgMTI4KTsKKyAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorUHlPYmplY3QgKgorX1B5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlLCBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkpIHsKICAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlQVNDSUkoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAvKiBGYXN0IHBhdGg6IGlmIGl0IGlzIGFuIEFTQ0lJLW9ubHkgc3RyaW5nLCBjb25zdHJ1Y3QgYnl0ZXMgb2JqZWN0CisgICAgICAgZGlyZWN0bHkuIEVsc2UgZGVmZXIgdG8gYWJvdmUgZnVuY3Rpb24gdG8gcmFpc2UgdGhlIGV4Y2VwdGlvbi4gKi8KKyAgICBpZiAoUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHVuaWNvZGUpIDwgMTI4KQorICAgICAgICByZXR1cm4gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShQeVVuaWNvZGVfREFUQSh1bmljb2RlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpOworICAgIHJldHVybiB1bmljb2RlX2VuY29kZV91Y3MxKHVuaWNvZGUsIGVycm9ycywgMTI4KTsKIH0KIAotI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgZGVmaW5lZChIQVZFX1VTQUJMRV9XQ0hBUl9UKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0FzQVNDSUlTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfQXNBU0NJSVN0cmluZyh1bmljb2RlLCBOVUxMKTsKK30KKworI2lmZGVmIEhBVkVfTUJDUwogCiAvKiAtLS0gTUJDUyBjb2RlY3MgZm9yIFdpbmRvd3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIApAQCAtNDkwMywzMzYgKzcwMTAsODEzIEBACiAjZGVmaW5lIE5FRURfUkVUUlkKICNlbmRpZgogCi0vKiBYWFggVGhpcyBjb2RlIGlzIGxpbWl0ZWQgdG8gInRydWUiIGRvdWJsZS1ieXRlIGVuY29kaW5ncywgYXMKLSAgIGEpIGl0IGFzc3VtZXMgYW4gaW5jb21wbGV0ZSBjaGFyYWN0ZXIgY29uc2lzdHMgb2YgYSBzaW5nbGUgYnl0ZSwgYW5kCi0gICBiKSBJc0RCQ1NMZWFkQnl0ZSAocHJvYmFibHkpIGRvZXMgbm90IHdvcmsgZm9yIG5vbi1EQkNTIG11bHRpLWJ5dGUKLSAgIGVuY29kaW5ncywgc2VlIElzREJDU0xlYWRCeXRlRXggZG9jdW1lbnRhdGlvbi4gKi8KKyNpZm5kZWYgV0NfRVJSX0lOVkFMSURfQ0hBUlMKKyMgIGRlZmluZSBXQ19FUlJfSU5WQUxJRF9DSEFSUyAweDAwODAKKyNlbmRpZgogCi1zdGF0aWMgaW50IGlzX2RiY3NfbGVhZF9ieXRlKGNvbnN0IGNoYXIgKnMsIGludCBvZmZzZXQpCitzdGF0aWMgY2hhcioKK2NvZGVfcGFnZV9uYW1lKFVJTlQgY29kZV9wYWdlLCBQeU9iamVjdCAqKm9iaikKK3sKKyAgICAqb2JqID0gTlVMTDsKKyAgICBpZiAoY29kZV9wYWdlID09IENQX0FDUCkKKyAgICAgICAgcmV0dXJuICJtYmNzIjsKKyAgICBpZiAoY29kZV9wYWdlID09IENQX1VURjcpCisgICAgICAgIHJldHVybiAiQ1BfVVRGNyI7CisgICAgaWYgKGNvZGVfcGFnZSA9PSBDUF9VVEY4KQorICAgICAgICByZXR1cm4gIkNQX1VURjgiOworCisgICAgKm9iaiA9IFB5Qnl0ZXNfRnJvbUZvcm1hdCgiY3AldSIsIGNvZGVfcGFnZSk7CisgICAgaWYgKCpvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIFB5Qnl0ZXNfQVNfU1RSSU5HKCpvYmopOworfQorCitzdGF0aWMgaW50Citpc19kYmNzX2xlYWRfYnl0ZShVSU5UIGNvZGVfcGFnZSwgY29uc3QgY2hhciAqcywgaW50IG9mZnNldCkKIHsKICAgICBjb25zdCBjaGFyICpjdXJyID0gcyArIG9mZnNldDsKKyAgICBjb25zdCBjaGFyICpwcmV2OwogCi0gICAgaWYgKElzREJDU0xlYWRCeXRlKCpjdXJyKSkgewotICAgICAgICBjb25zdCBjaGFyICpwcmV2ID0gQ2hhclByZXYocywgY3Vycik7Ci0gICAgICAgIHJldHVybiAocHJldiA9PSBjdXJyKSB8fCAhSXNEQkNTTGVhZEJ5dGUoKnByZXYpIHx8IChjdXJyIC0gcHJldiA9PSAyKTsKLSAgICB9CisgICAgaWYgKCFJc0RCQ1NMZWFkQnl0ZUV4KGNvZGVfcGFnZSwgKmN1cnIpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHByZXYgPSBDaGFyUHJldkV4QShjb2RlX3BhZ2UsIHMsIGN1cnIsIDApOworICAgIGlmIChwcmV2ID09IGN1cnIpCisgICAgICAgIHJldHVybiAxOworICAgIC8qIEZJWE1FOiBUaGlzIGNvZGUgaXMgbGltaXRlZCB0byAidHJ1ZSIgZG91YmxlLWJ5dGUgZW5jb2RpbmdzLAorICAgICAgIGFzIGl0IGFzc3VtZXMgYW4gaW5jb21wbGV0ZSBjaGFyYWN0ZXIgY29uc2lzdHMgb2YgYSBzaW5nbGUKKyAgICAgICBieXRlLiAqLworICAgIGlmIChjdXJyIC0gcHJldiA9PSAyKQorICAgICAgICByZXR1cm4gMTsKKyAgICBpZiAoIUlzREJDU0xlYWRCeXRlRXgoY29kZV9wYWdlLCAqcHJldikpCisgICAgICAgIHJldHVybiAxOwogICAgIHJldHVybiAwOwogfQogCi0vKgotICogRGVjb2RlIE1CQ1Mgc3RyaW5nIGludG8gdW5pY29kZSBvYmplY3QuIElmICdmaW5hbCcgaXMgc2V0LCBjb252ZXJ0cwotICogdHJhaWxpbmcgbGVhZC1ieXRlIHRvby4gUmV0dXJucyBjb25zdW1lZCBzaXplIGlmIHN1Y2NlZWQsIC0xIG90aGVyd2lzZS4KLSAqLwotc3RhdGljIGludCBkZWNvZGVfbWJjcyhQeVVuaWNvZGVPYmplY3QgKip2LAotICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzLCAvKiBNQkNTIHN0cmluZyAqLwotICAgICAgICAgICAgICAgICAgICAgICBpbnQgc2l6ZSwgLyogc2l6ZW9mIE1CQ1Mgc3RyaW5nICovCi0gICAgICAgICAgICAgICAgICAgICAgIGludCBmaW5hbCwKLSAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorc3RhdGljIERXT1JECitkZWNvZGVfY29kZV9wYWdlX2ZsYWdzKFVJTlQgY29kZV9wYWdlKQogewotICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgUHlfc3NpemVfdCBuOwotICAgIERXT1JEIHVzaXplOwotICAgIERXT1JEIGZsYWdzOwotCi0gICAgYXNzZXJ0KHNpemUgPj0gMCk7Ci0KLSAgICAvKiBjaGVjayBhbmQgaGFuZGxlICdlcnJvcnMnIGFyZyAqLwotICAgIGlmIChlcnJvcnM9PU5VTEwgfHwgc3RyY21wKGVycm9ycywgInN0cmljdCIpPT0wKQotICAgICAgICBmbGFncyA9IE1CX0VSUl9JTlZBTElEX0NIQVJTOwotICAgIGVsc2UgaWYgKHN0cmNtcChlcnJvcnMsICJpZ25vcmUiKT09MCkKLSAgICAgICAgZmxhZ3MgPSAwOwotICAgIGVsc2UgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJtYmNzIGVuY29kaW5nIGRvZXMgbm90IHN1cHBvcnQgZXJyb3JzPSclcyciLAotICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKLSAgICAgICAgcmV0dXJuIC0xOworICAgIGlmIChjb2RlX3BhZ2UgPT0gQ1BfVVRGNykgeworICAgICAgICAvKiBUaGUgQ1BfVVRGNyBkZWNvZGVyIG9ubHkgc3VwcG9ydHMgZmxhZ3M9MCAqLworICAgICAgICByZXR1cm4gMDsKICAgICB9CisgICAgZWxzZQorICAgICAgICByZXR1cm4gTUJfRVJSX0lOVkFMSURfQ0hBUlM7Cit9CiAKLSAgICAvKiBTa2lwIHRyYWlsaW5nIGxlYWQtYnl0ZSB1bmxlc3MgJ2ZpbmFsJyBpcyBzZXQgKi8KLSAgICBpZiAoIWZpbmFsICYmIHNpemUgPj0gMSAmJiBpc19kYmNzX2xlYWRfYnl0ZShzLCBzaXplIC0gMSkpCi0gICAgICAgIC0tc2l6ZTsKKy8qCisgKiBEZWNvZGUgYSBieXRlIHN0cmluZyBmcm9tIGEgV2luZG93cyBjb2RlIHBhZ2UgaW50byB1bmljb2RlIG9iamVjdCBpbiBzdHJpY3QKKyAqIG1vZGUuCisgKgorICogUmV0dXJucyBjb25zdW1lZCBzaXplIGlmIHN1Y2NlZWQsIHJldHVybnMgLTIgb24gZGVjb2RlIGVycm9yLCBvciByYWlzZSBhCisgKiBXaW5kb3dzRXJyb3IgYW5kIHJldHVybnMgLTEgb24gb3RoZXIgZXJyb3IuCisgKi8KK3N0YXRpYyBpbnQKK2RlY29kZV9jb2RlX3BhZ2Vfc3RyaWN0KFVJTlQgY29kZV9wYWdlLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKip2LAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW4sCisgICAgICAgICAgICAgICAgICAgICAgICBpbnQgaW5zaXplKQoreworICAgIGNvbnN0IERXT1JEIGZsYWdzID0gZGVjb2RlX2NvZGVfcGFnZV9mbGFncyhjb2RlX3BhZ2UpOworICAgIHdjaGFyX3QgKm91dDsKKyAgICBEV09SRCBvdXRzaXplOwogCiAgICAgLyogRmlyc3QgZ2V0IHRoZSBzaXplIG9mIHRoZSByZXN1bHQgKi8KLSAgICBpZiAoc2l6ZSA+IDApIHsKLSAgICAgICAgdXNpemUgPSBNdWx0aUJ5dGVUb1dpZGVDaGFyKENQX0FDUCwgZmxhZ3MsIHMsIHNpemUsIE5VTEwsIDApOwotICAgICAgICBpZiAodXNpemU9PTApCi0gICAgICAgICAgICBnb3RvIG1iY3NfZGVjb2RlX2Vycm9yOwotICAgIH0gZWxzZQotICAgICAgICB1c2l6ZSA9IDA7CisgICAgYXNzZXJ0KGluc2l6ZSA+IDApOworICAgIG91dHNpemUgPSBNdWx0aUJ5dGVUb1dpZGVDaGFyKGNvZGVfcGFnZSwgZmxhZ3MsIGluLCBpbnNpemUsIE5VTEwsIDApOworICAgIGlmIChvdXRzaXplIDw9IDApCisgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICBpZiAoKnYgPT0gTlVMTCkgewogICAgICAgICAvKiBDcmVhdGUgdW5pY29kZSBvYmplY3QgKi8KLSAgICAgICAgKnYgPSBfUHlVbmljb2RlX05ldyh1c2l6ZSk7CisgICAgICAgIC8qIEZJWE1FOiBkb24ndCB1c2UgX1B5VW5pY29kZV9OZXcoKSwgYnV0IGFsbG9jYXRlIGEgd2NoYXJfdCogYnVmZmVyICovCisgICAgICAgICp2ID0gKFB5T2JqZWN0KilfUHlVbmljb2RlX05ldyhvdXRzaXplKTsKICAgICAgICAgaWYgKCp2ID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIG4gPSAwOworICAgICAgICBvdXQgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqdik7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICAvKiBFeHRlbmQgdW5pY29kZSBvYmplY3QgKi8KLSAgICAgICAgbiA9IFB5VW5pY29kZV9HRVRfU0laRSgqdik7Ci0gICAgICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSh2LCBuICsgdXNpemUpIDwgMCkKKyAgICAgICAgUHlfc3NpemVfdCBuID0gUHlVbmljb2RlX0dFVF9TSVpFKCp2KTsKKyAgICAgICAgaWYgKHVuaWNvZGVfcmVzaXplKHYsIG4gKyBvdXRzaXplKSA8IDApCiAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIG91dCA9IFB5VW5pY29kZV9BU19VTklDT0RFKCp2KSArIG47CiAgICAgfQogCiAgICAgLyogRG8gdGhlIGNvbnZlcnNpb24gKi8KLSAgICBpZiAodXNpemUgPiAwKSB7Ci0gICAgICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqdikgKyBuOwotICAgICAgICBpZiAoMCA9PSBNdWx0aUJ5dGVUb1dpZGVDaGFyKENQX0FDUCwgZmxhZ3MsIHMsIHNpemUsIHAsIHVzaXplKSkgewotICAgICAgICAgICAgZ290byBtYmNzX2RlY29kZV9lcnJvcjsKLSAgICAgICAgfQotICAgIH0KLSAgICByZXR1cm4gc2l6ZTsKKyAgICBvdXRzaXplID0gTXVsdGlCeXRlVG9XaWRlQ2hhcihjb2RlX3BhZ2UsIGZsYWdzLCBpbiwgaW5zaXplLCBvdXQsIG91dHNpemUpOworICAgIGlmIChvdXRzaXplIDw9IDApCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgcmV0dXJuIGluc2l6ZTsKIAotbWJjc19kZWNvZGVfZXJyb3I6Ci0gICAgLyogSWYgdGhlIGxhc3QgZXJyb3Igd2FzIEVSUk9SX05PX1VOSUNPREVfVFJBTlNMQVRJT04sIHRoZW4KLSAgICAgICB3ZSByYWlzZSBhIFVuaWNvZGVEZWNvZGVFcnJvciAtIGVsc2UgaXQgaXMgYSAnZ2VuZXJpYycKLSAgICAgICB3aW5kb3dzIGVycm9yCi0gICAgICovCi0gICAgaWYgKEdldExhc3RFcnJvcigpPT1FUlJPUl9OT19VTklDT0RFX1RSQU5TTEFUSU9OKSB7Ci0gICAgICAgIC8qIElkZWFsbHksIHdlIHNob3VsZCBnZXQgcmVhc29uIGZyb20gRm9ybWF0TWVzc2FnZSAtIHRoaXMKLSAgICAgICAgICAgaXMgdGhlIFdpbmRvd3MgMjAwMCBFbmdsaXNoIHZlcnNpb24gb2YgdGhlIG1lc3NhZ2UKLSAgICAgICAgKi8KLSAgICAgICAgUHlPYmplY3QgKmV4YyA9IE5VTEw7Ci0gICAgICAgIGNvbnN0IGNoYXIgKnJlYXNvbiA9ICJObyBtYXBwaW5nIGZvciB0aGUgVW5pY29kZSBjaGFyYWN0ZXIgZXhpc3RzICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImluIHRoZSB0YXJnZXQgbXVsdGktYnl0ZSBjb2RlIHBhZ2UuIjsKLSAgICAgICAgbWFrZV9kZWNvZGVfZXhjZXB0aW9uKCZleGMsICJtYmNzIiwgcywgc2l6ZSwgMCwgMCwgcmVhc29uKTsKLSAgICAgICAgaWYgKGV4YyAhPSBOVUxMKSB7Ci0gICAgICAgICAgICBQeUNvZGVjX1N0cmljdEVycm9ycyhleGMpOwotICAgICAgICAgICAgUHlfREVDUkVGKGV4Yyk7Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAgICBQeUVycl9TZXRGcm9tV2luZG93c0VycldpdGhGaWxlbmFtZSgwLCBOVUxMKTsKLSAgICB9CitlcnJvcjoKKyAgICBpZiAoR2V0TGFzdEVycm9yKCkgPT0gRVJST1JfTk9fVU5JQ09ERV9UUkFOU0xBVElPTikKKyAgICAgICAgcmV0dXJuIC0yOworICAgIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKDApOwogICAgIHJldHVybiAtMTsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9EZWNvZGVNQkNTU3RhdGVmdWwoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkKQorLyoKKyAqIERlY29kZSBhIGJ5dGUgc3RyaW5nIGZyb20gYSBjb2RlIHBhZ2UgaW50byB1bmljb2RlIG9iamVjdCB3aXRoIGFuIGVycm9yCisgKiBoYW5kbGVyLgorICoKKyAqIFJldHVybnMgY29uc3VtZWQgc2l6ZSBpZiBzdWNjZWVkLCBvciByYWlzZSBhIFdpbmRvd3NFcnJvciBvcgorICogVW5pY29kZURlY29kZUVycm9yIGV4Y2VwdGlvbiBhbmQgcmV0dXJucyAtMSBvbiBlcnJvci4KKyAqLworc3RhdGljIGludAorZGVjb2RlX2NvZGVfcGFnZV9lcnJvcnMoVUlOVCBjb2RlX3BhZ2UsCisgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnYsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICppbiwgY29uc3QgaW50IHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp2ID0gTlVMTDsKLSAgICBpbnQgZG9uZTsKKyAgICBjb25zdCBjaGFyICpzdGFydGluID0gaW47CisgICAgY29uc3QgY2hhciAqZW5kaW4gPSBpbiArIHNpemU7CisgICAgY29uc3QgRFdPUkQgZmxhZ3MgPSBkZWNvZGVfY29kZV9wYWdlX2ZsYWdzKGNvZGVfcGFnZSk7CisgICAgLyogSWRlYWxseSwgd2Ugc2hvdWxkIGdldCByZWFzb24gZnJvbSBGb3JtYXRNZXNzYWdlLiBUaGlzIGlzIHRoZSBXaW5kb3dzCisgICAgICAgMjAwMCBFbmdsaXNoIHZlcnNpb24gb2YgdGhlIG1lc3NhZ2UuICovCisgICAgY29uc3QgY2hhciAqcmVhc29uID0gIk5vIG1hcHBpbmcgZm9yIHRoZSBVbmljb2RlIGNoYXJhY3RlciBleGlzdHMgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJpbiB0aGUgdGFyZ2V0IGNvZGUgcGFnZS4iOworICAgIC8qIGVhY2ggc3RlcCBjYW5ub3QgZGVjb2RlIG1vcmUgdGhhbiAxIGNoYXJhY3RlciwgYnV0IGEgY2hhcmFjdGVyIGNhbiBiZQorICAgICAgIHJlcHJlc2VudGVkIGFzIGEgc3Vycm9nYXRlIHBhaXIgKi8KKyAgICB3Y2hhcl90IGJ1ZmZlclsyXSwgKnN0YXJ0b3V0LCAqb3V0OworICAgIGludCBpbnNpemUsIG91dHNpemU7CisgICAgUHlPYmplY3QgKmVycm9ySGFuZGxlciA9IE5VTEw7CisgICAgUHlPYmplY3QgKmV4YyA9IE5VTEw7CisgICAgUHlPYmplY3QgKmVuY29kaW5nX29iaiA9IE5VTEw7CisgICAgY2hhciAqZW5jb2Rpbmc7CisgICAgRFdPUkQgZXJyOworICAgIGludCByZXQgPSAtMTsKKworICAgIGFzc2VydChzaXplID4gMCk7CisKKyAgICBlbmNvZGluZyA9IGNvZGVfcGFnZV9uYW1lKGNvZGVfcGFnZSwgJmVuY29kaW5nX29iaik7CisgICAgaWYgKGVuY29kaW5nID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGlmIChlcnJvcnMgPT0gTlVMTCB8fCBzdHJjbXAoZXJyb3JzLCAic3RyaWN0IikgPT0gMCkgeworICAgICAgICAvKiBUaGUgbGFzdCBlcnJvciB3YXMgRVJST1JfTk9fVU5JQ09ERV9UUkFOU0xBVElPTiwgdGhlbiB3ZSByYWlzZSBhCisgICAgICAgICAgIFVuaWNvZGVEZWNvZGVFcnJvci4gKi8KKyAgICAgICAgbWFrZV9kZWNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLCBpbiwgc2l6ZSwgMCwgMCwgcmVhc29uKTsKKyAgICAgICAgaWYgKGV4YyAhPSBOVUxMKSB7CisgICAgICAgICAgICBQeUNvZGVjX1N0cmljdEVycm9ycyhleGMpOworICAgICAgICAgICAgUHlfQ0xFQVIoZXhjKTsKKyAgICAgICAgfQorICAgICAgICBnb3RvIGVycm9yOworICAgIH0KKworICAgIGlmICgqdiA9PSBOVUxMKSB7CisgICAgICAgIC8qIENyZWF0ZSB1bmljb2RlIG9iamVjdCAqLworICAgICAgICBpZiAoc2l6ZSA+IFBZX1NTSVpFX1RfTUFYIC8gKFB5X3NzaXplX3QpUHlfQVJSQVlfTEVOR1RIKGJ1ZmZlcikpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgICAgIC8qIEZJWE1FOiBkb24ndCB1c2UgX1B5VW5pY29kZV9OZXcoKSwgYnV0IGFsbG9jYXRlIGEgd2NoYXJfdCogYnVmZmVyICovCisgICAgICAgICp2ID0gKFB5T2JqZWN0KilfUHlVbmljb2RlX05ldyhzaXplICogUHlfQVJSQVlfTEVOR1RIKGJ1ZmZlcikpOworICAgICAgICBpZiAoKnYgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIHN0YXJ0b3V0ID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKnYpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgLyogRXh0ZW5kIHVuaWNvZGUgb2JqZWN0ICovCisgICAgICAgIFB5X3NzaXplX3QgbiA9IFB5VW5pY29kZV9HRVRfU0laRSgqdik7CisgICAgICAgIGlmIChzaXplID4gKFBZX1NTSVpFX1RfTUFYIC0gbikgLyAoUHlfc3NpemVfdClQeV9BUlJBWV9MRU5HVEgoYnVmZmVyKSkgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHVuaWNvZGVfcmVzaXplKHYsIG4gKyBzaXplICogUHlfQVJSQVlfTEVOR1RIKGJ1ZmZlcikpIDwgMCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIHN0YXJ0b3V0ID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKnYpICsgbjsKKyAgICB9CisKKyAgICAvKiBEZWNvZGUgdGhlIGJ5dGUgc3RyaW5nIGNoYXJhY3RlciBwZXIgY2hhcmFjdGVyICovCisgICAgb3V0ID0gc3RhcnRvdXQ7CisgICAgd2hpbGUgKGluIDwgZW5kaW4pCisgICAgeworICAgICAgICAvKiBEZWNvZGUgYSBjaGFyYWN0ZXIgKi8KKyAgICAgICAgaW5zaXplID0gMTsKKyAgICAgICAgZG8KKyAgICAgICAgeworICAgICAgICAgICAgb3V0c2l6ZSA9IE11bHRpQnl0ZVRvV2lkZUNoYXIoY29kZV9wYWdlLCBmbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluLCBpbnNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIsIFB5X0FSUkFZX0xFTkdUSChidWZmZXIpKTsKKyAgICAgICAgICAgIGlmIChvdXRzaXplID4gMCkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGVyciA9IEdldExhc3RFcnJvcigpOworICAgICAgICAgICAgaWYgKGVyciAhPSBFUlJPUl9OT19VTklDT0RFX1RSQU5TTEFUSU9OCisgICAgICAgICAgICAgICAgJiYgZXJyICE9IEVSUk9SX0lOU1VGRklDSUVOVF9CVUZGRVIpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoMCk7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGluc2l6ZSsrOworICAgICAgICB9CisgICAgICAgIC8qIDQ9bWF4aW11bSBsZW5ndGggb2YgYSBVVEYtOCBzZXF1ZW5jZSAqLworICAgICAgICB3aGlsZSAoaW5zaXplIDw9IDQgJiYgKGluICsgaW5zaXplKSA8PSBlbmRpbik7CisKKyAgICAgICAgaWYgKG91dHNpemUgPD0gMCkgeworICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydGlucG9zLCBlbmRpbnBvcywgb3V0cG9zOworCisgICAgICAgICAgICBzdGFydGlucG9zID0gaW4gLSBzdGFydGluOworICAgICAgICAgICAgZW5kaW5wb3MgPSBzdGFydGlucG9zICsgMTsKKyAgICAgICAgICAgIG91dHBvcyA9IG91dCAtIFB5VW5pY29kZV9BU19VTklDT0RFKCp2KTsKKyAgICAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKKyAgICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICBlbmNvZGluZywgcmVhc29uLAorICAgICAgICAgICAgICAgICAgICAmc3RhcnRpbiwgJmVuZGluLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmaW4sCisgICAgICAgICAgICAgICAgICAgIHYsICZvdXRwb3MpKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBvdXQgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqdikgKyBvdXRwb3M7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBpbiArPSBpbnNpemU7CisgICAgICAgICAgICBtZW1jcHkob3V0LCBidWZmZXIsIG91dHNpemUgKiBzaXplb2Yod2NoYXJfdCkpOworICAgICAgICAgICAgb3V0ICs9IG91dHNpemU7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvKiB3cml0ZSBhIE5VTCBjaGFyYWN0ZXIgYXQgdGhlIGVuZCAqLworICAgICpvdXQgPSAwOworCisgICAgLyogRXh0ZW5kIHVuaWNvZGUgb2JqZWN0ICovCisgICAgb3V0c2l6ZSA9IG91dCAtIHN0YXJ0b3V0OworICAgIGFzc2VydChvdXRzaXplIDw9IFB5VW5pY29kZV9XU1RSX0xFTkdUSCgqdikpOworICAgIGlmICh1bmljb2RlX3Jlc2l6ZSh2LCBvdXRzaXplKSA8IDApCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgcmV0ID0gc2l6ZTsKKworZXJyb3I6CisgICAgUHlfWERFQ1JFRihlbmNvZGluZ19vYmopOworICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKKyAgICBQeV9YREVDUkVGKGV4Yyk7CisgICAgcmV0dXJuIHJldDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2RlY29kZV9jb2RlX3BhZ2Vfc3RhdGVmdWwoaW50IGNvZGVfcGFnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIFB5X3NzaXplX3QgKmNvbnN1bWVkKQoreworICAgIFB5T2JqZWN0ICp2ID0gTlVMTDsKKyAgICBpbnQgY2h1bmtfc2l6ZSwgZmluYWwsIGNvbnZlcnRlZCwgZG9uZTsKKworICAgIGlmIChjb2RlX3BhZ2UgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiaW52YWxpZCBjb2RlIHBhZ2UgbnVtYmVyIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KIAogICAgIGlmIChjb25zdW1lZCkKICAgICAgICAgKmNvbnN1bWVkID0gMDsKIAorICAgIGRvCisgICAgewogI2lmZGVmIE5FRURfUkVUUlkKLSAgcmV0cnk6Ci0gICAgaWYgKHNpemUgPiBJTlRfTUFYKQotICAgICAgICBkb25lID0gZGVjb2RlX21iY3MoJnYsIHMsIElOVF9NQVgsIDAsIGVycm9ycyk7Ci0gICAgZWxzZQorICAgICAgICBpZiAoc2l6ZSA+IElOVF9NQVgpIHsKKyAgICAgICAgICAgIGNodW5rX3NpemUgPSBJTlRfTUFYOworICAgICAgICAgICAgZmluYWwgPSAwOworICAgICAgICAgICAgZG9uZSA9IDA7CisgICAgICAgIH0KKyAgICAgICAgZWxzZQogI2VuZGlmCi0gICAgICAgIGRvbmUgPSBkZWNvZGVfbWJjcygmdiwgcywgKGludClzaXplLCAhY29uc3VtZWQsIGVycm9ycyk7CisgICAgICAgIHsKKyAgICAgICAgICAgIGNodW5rX3NpemUgPSAoaW50KXNpemU7CisgICAgICAgICAgICBmaW5hbCA9IChjb25zdW1lZCA9PSBOVUxMKTsKKyAgICAgICAgICAgIGRvbmUgPSAxOworICAgICAgICB9CiAKLSAgICBpZiAoZG9uZSA8IDApIHsKLSAgICAgICAgUHlfWERFQ1JFRih2KTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQorICAgICAgICAvKiBTa2lwIHRyYWlsaW5nIGxlYWQtYnl0ZSB1bmxlc3MgJ2ZpbmFsJyBpcyBzZXQgKi8KKyAgICAgICAgaWYgKCFmaW5hbCAmJiBpc19kYmNzX2xlYWRfYnl0ZShjb2RlX3BhZ2UsIHMsIGNodW5rX3NpemUgLSAxKSkKKyAgICAgICAgICAgIC0tY2h1bmtfc2l6ZTsKIAotICAgIGlmIChjb25zdW1lZCkKLSAgICAgICAgKmNvbnN1bWVkICs9IGRvbmU7CisgICAgICAgIGlmIChjaHVua19zaXplID09IDAgJiYgZG9uZSkgeworICAgICAgICAgICAgaWYgKHYgIT0gTlVMTCkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKKyAgICAgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgICAgICB9CiAKLSNpZmRlZiBORUVEX1JFVFJZCi0gICAgaWYgKHNpemUgPiBJTlRfTUFYKSB7Ci0gICAgICAgIHMgKz0gZG9uZTsKLSAgICAgICAgc2l6ZSAtPSBkb25lOwotICAgICAgICBnb3RvIHJldHJ5OwotICAgIH0KLSNlbmRpZgogCi0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgICAgIGNvbnZlcnRlZCA9IGRlY29kZV9jb2RlX3BhZ2Vfc3RyaWN0KGNvZGVfcGFnZSwgJnYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMsIGNodW5rX3NpemUpOworICAgICAgICBpZiAoY29udmVydGVkID09IC0yKQorICAgICAgICAgICAgY29udmVydGVkID0gZGVjb2RlX2NvZGVfcGFnZV9lcnJvcnMoY29kZV9wYWdlLCAmdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMsIGNodW5rX3NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMpOworICAgICAgICBhc3NlcnQoY29udmVydGVkICE9IDApOworCisgICAgICAgIGlmIChjb252ZXJ0ZWQgPCAwKSB7CisgICAgICAgICAgICBQeV9YREVDUkVGKHYpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKworICAgICAgICBpZiAoY29uc3VtZWQpCisgICAgICAgICAgICAqY29uc3VtZWQgKz0gY29udmVydGVkOworCisgICAgICAgIHMgKz0gY29udmVydGVkOworICAgICAgICBzaXplIC09IGNvbnZlcnRlZDsKKyAgICB9IHdoaWxlICghZG9uZSk7CisKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQodik7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlTUJDUyhjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlQ29kZVBhZ2VTdGF0ZWZ1bChpbnQgY29kZV9wYWdlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkKQoreworICAgIHJldHVybiBkZWNvZGVfY29kZV9wYWdlX3N0YXRlZnVsKGNvZGVfcGFnZSwgcywgc2l6ZSwgZXJyb3JzLCBjb25zdW1lZCk7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9EZWNvZGVNQkNTU3RhdGVmdWwoY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkKQoreworICAgIHJldHVybiBkZWNvZGVfY29kZV9wYWdlX3N0YXRlZnVsKENQX0FDUCwgcywgc2l6ZSwgZXJyb3JzLCBjb25zdW1lZCk7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9EZWNvZGVNQkNTKGNvbnN0IGNoYXIgKnMsCisgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVNQkNTU3RhdGVmdWwocywgc2l6ZSwgZXJyb3JzLCBOVUxMKTsKIH0KIAorc3RhdGljIERXT1JECitlbmNvZGVfY29kZV9wYWdlX2ZsYWdzKFVJTlQgY29kZV9wYWdlLCBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgaWYgKGNvZGVfcGFnZSA9PSBDUF9VVEY4KSB7CisgICAgICAgIGlmICh3aW52ZXIuZHdNYWpvclZlcnNpb24gPj0gNikKKyAgICAgICAgICAgIC8qIENQX1VURjggc3VwcG9ydHMgV0NfRVJSX0lOVkFMSURfQ0hBUlMgb24gV2luZG93cyBWaXN0YQorICAgICAgICAgICAgICAgYW5kIGxhdGVyICovCisgICAgICAgICAgICByZXR1cm4gV0NfRVJSX0lOVkFMSURfQ0hBUlM7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIC8qIENQX1VURjggb25seSBzdXBwb3J0cyBmbGFncz0wIG9uIFdpbmRvd3Mgb2xkZXIgdGhhbiBWaXN0YSAqLworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIGVsc2UgaWYgKGNvZGVfcGFnZSA9PSBDUF9VVEY3KSB7CisgICAgICAgIC8qIENQX1VURjcgb25seSBzdXBwb3J0cyBmbGFncz0wICovCisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKGVycm9ycyAhPSBOVUxMICYmIHN0cmNtcChlcnJvcnMsICJyZXBsYWNlIikgPT0gMCkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBlbHNlCisgICAgICAgICAgICByZXR1cm4gV0NfTk9fQkVTVF9GSVRfQ0hBUlM7CisgICAgfQorfQorCiAvKgotICogQ29udmVydCB1bmljb2RlIGludG8gc3RyaW5nIG9iamVjdCAoTUJDUykuCi0gKiBSZXR1cm5zIDAgaWYgc3VjY2VlZCwgLTEgb3RoZXJ3aXNlLgorICogRW5jb2RlIGEgVW5pY29kZSBzdHJpbmcgdG8gYSBXaW5kb3dzIGNvZGUgcGFnZSBpbnRvIGEgYnl0ZSBzdHJpbmcgaW4gc3RyaWN0CisgKiBtb2RlLgorICoKKyAqIFJldHVybnMgY29uc3VtZWQgY2hhcmFjdGVycyBpZiBzdWNjZWVkLCByZXR1cm5zIC0yIG9uIGVuY29kZSBlcnJvciwgb3IgcmFpc2UKKyAqIGEgV2luZG93c0Vycm9yIGFuZCByZXR1cm5zIC0xIG9uIG90aGVyIGVycm9yLgogICovCi1zdGF0aWMgaW50IGVuY29kZV9tYmNzKFB5T2JqZWN0ICoqcmVwciwKLSAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUHlfVU5JQ09ERSAqcCwgLyogdW5pY29kZSAqLwotICAgICAgICAgICAgICAgICAgICAgICBpbnQgc2l6ZSwgLyogc2l6ZSBvZiB1bmljb2RlICovCi0gICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGVycm9ycykKK3N0YXRpYyBpbnQKK2VuY29kZV9jb2RlX3BhZ2Vfc3RyaWN0KFVJTlQgY29kZV9wYWdlLCBQeU9iamVjdCAqKm91dGJ5dGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3Qgb2Zmc2V0LCBpbnQgbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogZXJyb3JzKQogewogICAgIEJPT0wgdXNlZERlZmF1bHRDaGFyID0gRkFMU0U7Ci0gICAgQk9PTCAqcHVzZWREZWZhdWx0Q2hhcjsKLSAgICBpbnQgbWJjc3NpemU7Ci0gICAgUHlfc3NpemVfdCBuOworICAgIEJPT0wgKnB1c2VkRGVmYXVsdENoYXIgPSAmdXNlZERlZmF1bHRDaGFyOworICAgIGludCBvdXRzaXplOwogICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwotICAgIERXT1JEIGZsYWdzOworICAgIHdjaGFyX3QgKnA7CisgICAgUHlfc3NpemVfdCBzaXplOworICAgIGNvbnN0IERXT1JEIGZsYWdzID0gZW5jb2RlX2NvZGVfcGFnZV9mbGFncyhjb2RlX3BhZ2UsIE5VTEwpOworICAgIGNoYXIgKm91dDsKKyAgICAvKiBDcmVhdGUgYSBzdWJzdHJpbmcgc28gdGhhdCB3ZSBjYW4gZ2V0IHRoZSBVVEYtMTYgcmVwcmVzZW50YXRpb24KKyAgICAgICBvZiBqdXN0IHRoZSBzbGljZSB1bmRlciBjb25zaWRlcmF0aW9uLiAqLworICAgIFB5T2JqZWN0ICpzdWJzdHJpbmc7CiAKLSAgICBhc3NlcnQoc2l6ZSA+PSAwKTsKKyAgICBhc3NlcnQobGVuID4gMCk7CiAKLSAgICAvKiBjaGVjayBhbmQgaGFuZGxlICdlcnJvcnMnIGFyZyAqLwotICAgIGlmIChlcnJvcnM9PU5VTEwgfHwgc3RyY21wKGVycm9ycywgInN0cmljdCIpPT0wKSB7Ci0gICAgICAgIGZsYWdzID0gV0NfTk9fQkVTVF9GSVRfQ0hBUlM7CisgICAgaWYgKGNvZGVfcGFnZSAhPSBDUF9VVEY4ICYmIGNvZGVfcGFnZSAhPSBDUF9VVEY3KQogICAgICAgICBwdXNlZERlZmF1bHRDaGFyID0gJnVzZWREZWZhdWx0Q2hhcjsKLSAgICB9IGVsc2UgaWYgKHN0cmNtcChlcnJvcnMsICJyZXBsYWNlIik9PTApIHsKLSAgICAgICAgZmxhZ3MgPSAwOworICAgIGVsc2UKICAgICAgICAgcHVzZWREZWZhdWx0Q2hhciA9IE5VTEw7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICJtYmNzIGVuY29kaW5nIGRvZXMgbm90IHN1cHBvcnQgZXJyb3JzPSclcyciLAotICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyk7Ci0gICAgICAgICByZXR1cm4gLTE7CisKKyAgICBzdWJzdHJpbmcgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKHVuaWNvZGUsIG9mZnNldCwgb2Zmc2V0K2xlbik7CisgICAgaWYgKHN1YnN0cmluZyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgcCA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKHN1YnN0cmluZywgJnNpemUpOworICAgIGlmIChwID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKHN1YnN0cmluZyk7CisgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAKICAgICAvKiBGaXJzdCBnZXQgdGhlIHNpemUgb2YgdGhlIHJlc3VsdCAqLwotICAgIGlmIChzaXplID4gMCkgewotICAgICAgICBtYmNzc2l6ZSA9IFdpZGVDaGFyVG9NdWx0aUJ5dGUoQ1BfQUNQLCBmbGFncywgcCwgc2l6ZSwgTlVMTCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIHB1c2VkRGVmYXVsdENoYXIpOwotICAgICAgICBpZiAobWJjc3NpemUgPT0gMCkgewotICAgICAgICAgICAgUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnJXaXRoRmlsZW5hbWUoMCwgTlVMTCk7Ci0gICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KLSAgICAgICAgLyogSWYgd2UgdXNlZCBhIGRlZmF1bHQgY2hhciwgdGhlbiB3ZSBmYWlsZWQhICovCi0gICAgICAgIGlmIChwdXNlZERlZmF1bHRDaGFyICYmICpwdXNlZERlZmF1bHRDaGFyKQotICAgICAgICAgICAgZ290byBtYmNzX2VuY29kZV9lcnJvcjsKLSAgICB9IGVsc2UgewotICAgICAgICBtYmNzc2l6ZSA9IDA7CisgICAgb3V0c2l6ZSA9IFdpZGVDaGFyVG9NdWx0aUJ5dGUoY29kZV9wYWdlLCBmbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwLCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgcHVzZWREZWZhdWx0Q2hhcik7CisgICAgaWYgKG91dHNpemUgPD0gMCkKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICAvKiBJZiB3ZSB1c2VkIGEgZGVmYXVsdCBjaGFyLCB0aGVuIHdlIGZhaWxlZCEgKi8KKyAgICBpZiAocHVzZWREZWZhdWx0Q2hhciAmJiAqcHVzZWREZWZhdWx0Q2hhcikgeworICAgICAgICBQeV9ERUNSRUYoc3Vic3RyaW5nKTsKKyAgICAgICAgcmV0dXJuIC0yOwogICAgIH0KIAotICAgIGlmICgqcmVwciA9PSBOVUxMKSB7CisgICAgaWYgKCpvdXRieXRlcyA9PSBOVUxMKSB7CiAgICAgICAgIC8qIENyZWF0ZSBzdHJpbmcgb2JqZWN0ICovCi0gICAgICAgICpyZXByID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBtYmNzc2l6ZSk7Ci0gICAgICAgIGlmICgqcmVwciA9PSBOVUxMKQorICAgICAgICAqb3V0Ynl0ZXMgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIG91dHNpemUpOworICAgICAgICBpZiAoKm91dGJ5dGVzID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOwogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICBuID0gMDsKKyAgICAgICAgfQorICAgICAgICBvdXQgPSBQeUJ5dGVzX0FTX1NUUklORygqb3V0Ynl0ZXMpOwogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgLyogRXh0ZW5kIHN0cmluZyBvYmplY3QgKi8KLSAgICAgICAgbiA9IFB5Qnl0ZXNfU2l6ZSgqcmVwcik7Ci0gICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUocmVwciwgbiArIG1iY3NzaXplKSA8IDApCisgICAgICAgIGNvbnN0IFB5X3NzaXplX3QgbiA9IFB5Qnl0ZXNfU2l6ZSgqb3V0Ynl0ZXMpOworICAgICAgICBpZiAob3V0c2l6ZSA+IFBZX1NTSVpFX1RfTUFYIC0gbikgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOwogICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUob3V0Ynl0ZXMsIG4gKyBvdXRzaXplKSA8IDApIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIG91dCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKCpvdXRieXRlcykgKyBuOwogICAgIH0KIAogICAgIC8qIERvIHRoZSBjb252ZXJzaW9uICovCi0gICAgaWYgKHNpemUgPiAwKSB7Ci0gICAgICAgIGNoYXIgKnMgPSBQeUJ5dGVzX0FTX1NUUklORygqcmVwcikgKyBuOwotICAgICAgICBpZiAoMCA9PSBXaWRlQ2hhclRvTXVsdGlCeXRlKENQX0FDUCwgZmxhZ3MsIHAsIHNpemUsIHMsIG1iY3NzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIHB1c2VkRGVmYXVsdENoYXIpKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tV2luZG93c0VycldpdGhGaWxlbmFtZSgwLCBOVUxMKTsKLSAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQotICAgICAgICBpZiAocHVzZWREZWZhdWx0Q2hhciAmJiAqcHVzZWREZWZhdWx0Q2hhcikKLSAgICAgICAgICAgIGdvdG8gbWJjc19lbmNvZGVfZXJyb3I7Ci0gICAgfQorICAgIG91dHNpemUgPSBXaWRlQ2hhclRvTXVsdGlCeXRlKGNvZGVfcGFnZSwgZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcCwgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXQsIG91dHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgcHVzZWREZWZhdWx0Q2hhcik7CisgICAgUHlfQ0xFQVIoc3Vic3RyaW5nKTsKKyAgICBpZiAob3V0c2l6ZSA8PSAwKQorICAgICAgICBnb3RvIGVycm9yOworICAgIGlmIChwdXNlZERlZmF1bHRDaGFyICYmICpwdXNlZERlZmF1bHRDaGFyKQorICAgICAgICByZXR1cm4gLTI7CiAgICAgcmV0dXJuIDA7CiAKLW1iY3NfZW5jb2RlX2Vycm9yOgotICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oJmV4YywgIm1iY3MiLCBwLCBzaXplLCAwLCAwLCAiaW52YWxpZCBjaGFyYWN0ZXIiKTsKLSAgICBQeV9YREVDUkVGKGV4Yyk7CitlcnJvcjoKKyAgICBQeV9YREVDUkVGKHN1YnN0cmluZyk7CisgICAgaWYgKEdldExhc3RFcnJvcigpID09IEVSUk9SX05PX1VOSUNPREVfVFJBTlNMQVRJT04pCisgICAgICAgIHJldHVybiAtMjsKKyAgICBQeUVycl9TZXRGcm9tV2luZG93c0VycigwKTsKICAgICByZXR1cm4gLTE7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRW5jb2RlTUJDUyhjb25zdCBQeV9VTklDT0RFICpwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCisvKgorICogRW5jb2RlIGEgVW5pY29kZSBzdHJpbmcgdG8gYSBXaW5kb3dzIGNvZGUgcGFnZSBpbnRvIGEgYnl0ZSBzdHJpbmcgdXNpbmcgYQorICogZXJyb3IgaGFuZGxlci4KKyAqCisgKiBSZXR1cm5zIGNvbnN1bWVkIGNoYXJhY3RlcnMgaWYgc3VjY2VlZCwgb3IgcmFpc2UgYSBXaW5kb3dzRXJyb3IgYW5kIHJldHVybnMKKyAqIC0xIG9uIG90aGVyIGVycm9yLgorICovCitzdGF0aWMgaW50CitlbmNvZGVfY29kZV9wYWdlX2Vycm9ycyhVSU5UIGNvZGVfcGFnZSwgUHlPYmplY3QgKipvdXRieXRlcywKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90IHVuaWNvZGVfb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpbnNpemUsIGNvbnN0IGNoYXIqIGVycm9ycykKIHsKLSAgICBQeU9iamVjdCAqcmVwciA9IE5VTEw7Ci0gICAgaW50IHJldDsKKyAgICBjb25zdCBEV09SRCBmbGFncyA9IGVuY29kZV9jb2RlX3BhZ2VfZmxhZ3MoY29kZV9wYWdlLCBlcnJvcnMpOworICAgIFB5X3NzaXplX3QgcG9zID0gdW5pY29kZV9vZmZzZXQ7CisgICAgUHlfc3NpemVfdCBlbmRpbiA9IHVuaWNvZGVfb2Zmc2V0ICsgaW5zaXplOworICAgIC8qIElkZWFsbHksIHdlIHNob3VsZCBnZXQgcmVhc29uIGZyb20gRm9ybWF0TWVzc2FnZS4gVGhpcyBpcyB0aGUgV2luZG93cworICAgICAgIDIwMDAgRW5nbGlzaCB2ZXJzaW9uIG9mIHRoZSBtZXNzYWdlLiAqLworICAgIGNvbnN0IGNoYXIgKnJlYXNvbiA9ICJpbnZhbGlkIGNoYXJhY3RlciI7CisgICAgLyogND1tYXhpbXVtIGxlbmd0aCBvZiBhIFVURi04IHNlcXVlbmNlICovCisgICAgY2hhciBidWZmZXJbNF07CisgICAgQk9PTCB1c2VkRGVmYXVsdENoYXIgPSBGQUxTRSwgKnB1c2VkRGVmYXVsdENoYXI7CisgICAgUHlfc3NpemVfdCBvdXRzaXplOworICAgIGNoYXIgKm91dDsKKyAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKKyAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKKyAgICBQeU9iamVjdCAqZW5jb2Rpbmdfb2JqID0gTlVMTDsKKyAgICBjaGFyICplbmNvZGluZzsKKyAgICBQeV9zc2l6ZV90IG5ld3BvcywgbmV3b3V0c2l6ZTsKKyAgICBQeU9iamVjdCAqcmVwOworICAgIGludCByZXQgPSAtMTsKIAotI2lmZGVmIE5FRURfUkVUUlkKLSAgcmV0cnk6Ci0gICAgaWYgKHNpemUgPiBJTlRfTUFYKQotICAgICAgICByZXQgPSBlbmNvZGVfbWJjcygmcmVwciwgcCwgSU5UX01BWCwgZXJyb3JzKTsKKyAgICBhc3NlcnQoaW5zaXplID4gMCk7CisKKyAgICBlbmNvZGluZyA9IGNvZGVfcGFnZV9uYW1lKGNvZGVfcGFnZSwgJmVuY29kaW5nX29iaik7CisgICAgaWYgKGVuY29kaW5nID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGlmIChlcnJvcnMgPT0gTlVMTCB8fCBzdHJjbXAoZXJyb3JzLCAic3RyaWN0IikgPT0gMCkgeworICAgICAgICAvKiBUaGUgbGFzdCBlcnJvciB3YXMgRVJST1JfTk9fVU5JQ09ERV9UUkFOU0xBVElPTiwKKyAgICAgICAgICAgdGhlbiB3ZSByYWlzZSBhIFVuaWNvZGVFbmNvZGVFcnJvci4gKi8KKyAgICAgICAgbWFrZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLCB1bmljb2RlLCAwLCAwLCByZWFzb24pOworICAgICAgICBpZiAoZXhjICE9IE5VTEwpIHsKKyAgICAgICAgICAgIFB5Q29kZWNfU3RyaWN0RXJyb3JzKGV4Yyk7CisgICAgICAgICAgICBQeV9ERUNSRUYoZXhjKTsKKyAgICAgICAgfQorICAgICAgICBQeV9YREVDUkVGKGVuY29kaW5nX29iaik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBpZiAoY29kZV9wYWdlICE9IENQX1VURjggJiYgY29kZV9wYWdlICE9IENQX1VURjcpCisgICAgICAgIHB1c2VkRGVmYXVsdENoYXIgPSAmdXNlZERlZmF1bHRDaGFyOwogICAgIGVsc2UKLSNlbmRpZgotICAgICAgICByZXQgPSBlbmNvZGVfbWJjcygmcmVwciwgcCwgKGludClzaXplLCBlcnJvcnMpOworICAgICAgICBwdXNlZERlZmF1bHRDaGFyID0gTlVMTDsKIAotICAgIGlmIChyZXQgPCAwKSB7Ci0gICAgICAgIFB5X1hERUNSRUYocmVwcik7CisgICAgaWYgKFB5X0FSUkFZX0xFTkdUSChidWZmZXIpID4gUFlfU1NJWkVfVF9NQVggLyBpbnNpemUpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICB9CisgICAgb3V0c2l6ZSA9IGluc2l6ZSAqIFB5X0FSUkFZX0xFTkdUSChidWZmZXIpOworCisgICAgaWYgKCpvdXRieXRlcyA9PSBOVUxMKSB7CisgICAgICAgIC8qIENyZWF0ZSBzdHJpbmcgb2JqZWN0ICovCisgICAgICAgICpvdXRieXRlcyA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgb3V0c2l6ZSk7CisgICAgICAgIGlmICgqb3V0Ynl0ZXMgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIG91dCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKCpvdXRieXRlcyk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICAvKiBFeHRlbmQgc3RyaW5nIG9iamVjdCAqLworICAgICAgICBQeV9zc2l6ZV90IG4gPSBQeUJ5dGVzX1NpemUoKm91dGJ5dGVzKTsKKyAgICAgICAgaWYgKG4gPiBQWV9TU0laRV9UX01BWCAtIG91dHNpemUpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUob3V0Ynl0ZXMsIG4gKyBvdXRzaXplKSA8IDApCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICBvdXQgPSBQeUJ5dGVzX0FTX1NUUklORygqb3V0Ynl0ZXMpICsgbjsKKyAgICB9CisKKyAgICAvKiBFbmNvZGUgdGhlIHN0cmluZyBjaGFyYWN0ZXIgcGVyIGNoYXJhY3RlciAqLworICAgIHdoaWxlIChwb3MgPCBlbmRpbikKKyAgICB7CisgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIHBvcyk7CisgICAgICAgIHdjaGFyX3QgY2hhcnNbMl07CisgICAgICAgIGludCBjaGFyc2l6ZTsKKyAgICAgICAgaWYgKGNoIDwgMHgxMDAwMCkgeworICAgICAgICAgICAgY2hhcnNbMF0gPSAod2NoYXJfdCljaDsKKyAgICAgICAgICAgIGNoYXJzaXplID0gMTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGNoIC09IDB4MTAwMDA7CisgICAgICAgICAgICBjaGFyc1swXSA9IDB4ZDgwMCArIChjaCA+PiAxMCk7CisgICAgICAgICAgICBjaGFyc1sxXSA9IDB4ZGMwMCArIChjaCAmIDB4M2ZmKTsKKyAgICAgICAgICAgIGNoYXJzaXplID0gMjsKKyAgICAgICAgfQorCisgICAgICAgIG91dHNpemUgPSBXaWRlQ2hhclRvTXVsdGlCeXRlKGNvZGVfcGFnZSwgZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJzLCBjaGFyc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyLCBQeV9BUlJBWV9MRU5HVEgoYnVmZmVyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgcHVzZWREZWZhdWx0Q2hhcik7CisgICAgICAgIGlmIChvdXRzaXplID4gMCkgeworICAgICAgICAgICAgaWYgKHB1c2VkRGVmYXVsdENoYXIgPT0gTlVMTCB8fCAhKCpwdXNlZERlZmF1bHRDaGFyKSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBwb3MrKzsKKyAgICAgICAgICAgICAgICBtZW1jcHkob3V0LCBidWZmZXIsIG91dHNpemUpOworICAgICAgICAgICAgICAgIG91dCArPSBvdXRzaXplOworICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKEdldExhc3RFcnJvcigpICE9IEVSUk9SX05PX1VOSUNPREVfVFJBTlNMQVRJT04pIHsKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKDApOworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorCisgICAgICAgIHJlcCA9IHVuaWNvZGVfZW5jb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAorICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLCBlbmNvZGluZywgcmVhc29uLAorICAgICAgICAgICAgICAgICAgdW5pY29kZSwgJmV4YywKKyAgICAgICAgICAgICAgICAgIHBvcywgcG9zICsgMSwgJm5ld3Bvcyk7CisgICAgICAgIGlmIChyZXAgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIHBvcyA9IG5ld3BvczsKKworICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhyZXApKSB7CisgICAgICAgICAgICBvdXRzaXplID0gUHlCeXRlc19HRVRfU0laRShyZXApOworICAgICAgICAgICAgaWYgKG91dHNpemUgIT0gMSkgeworICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgb2Zmc2V0ID0gb3V0IC0gUHlCeXRlc19BU19TVFJJTkcoKm91dGJ5dGVzKTsKKyAgICAgICAgICAgICAgICBuZXdvdXRzaXplID0gUHlCeXRlc19HRVRfU0laRSgqb3V0Ynl0ZXMpICsgKG91dHNpemUgLSAxKTsKKyAgICAgICAgICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKG91dGJ5dGVzLCBuZXdvdXRzaXplKSA8IDApIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcCk7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIG91dCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKCpvdXRieXRlcykgKyBvZmZzZXQ7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBtZW1jcHkob3V0LCBQeUJ5dGVzX0FTX1NUUklORyhyZXApLCBvdXRzaXplKTsKKyAgICAgICAgICAgIG91dCArPSBvdXRzaXplOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUHlfc3NpemVfdCBpOworICAgICAgICAgICAgZW51bSBQeVVuaWNvZGVfS2luZCBraW5kOworICAgICAgICAgICAgdm9pZCAqZGF0YTsKKworICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShyZXApID09IC0xKSB7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcCk7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgb3V0c2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcCk7CisgICAgICAgICAgICBpZiAob3V0c2l6ZSAhPSAxKSB7CisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBvZmZzZXQgPSBvdXQgLSBQeUJ5dGVzX0FTX1NUUklORygqb3V0Ynl0ZXMpOworICAgICAgICAgICAgICAgIG5ld291dHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKCpvdXRieXRlcykgKyAob3V0c2l6ZSAtIDEpOworICAgICAgICAgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUob3V0Ynl0ZXMsIG5ld291dHNpemUpIDwgMCkgeworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwKTsKKyAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgb3V0ID0gUHlCeXRlc19BU19TVFJJTkcoKm91dGJ5dGVzKSArIG9mZnNldDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXApOworICAgICAgICAgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHJlcCk7CisgICAgICAgICAgICBmb3IgKGk9MDsgaSA8IG91dHNpemU7IGkrKykgeworICAgICAgICAgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgICAgICAgICAgICBpZiAoY2ggPiAxMjcpIHsKKyAgICAgICAgICAgICAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbigmZXhjLAorICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICBwb3MsIHBvcyArIDEsCisgICAgICAgICAgICAgICAgICAgICAgICAidW5hYmxlIHRvIGVuY29kZSBlcnJvciBoYW5kbGVyIHJlc3VsdCB0byBBU0NJSSIpOworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwKTsKKyAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgKm91dCA9ICh1bnNpZ25lZCBjaGFyKWNoOworICAgICAgICAgICAgICAgIG91dCsrOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRihyZXApOworICAgIH0KKyAgICAvKiB3cml0ZSBhIE5VTCBieXRlICovCisgICAgKm91dCA9IDA7CisgICAgb3V0c2l6ZSA9IG91dCAtIFB5Qnl0ZXNfQVNfU1RSSU5HKCpvdXRieXRlcyk7CisgICAgYXNzZXJ0KG91dHNpemUgPD0gUHlCeXRlc19HRVRfU0laRSgqb3V0Ynl0ZXMpKTsKKyAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKG91dGJ5dGVzLCBvdXRzaXplKSA8IDApCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgcmV0ID0gMDsKKworZXJyb3I6CisgICAgUHlfWERFQ1JFRihlbmNvZGluZ19vYmopOworICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKKyAgICBQeV9YREVDUkVGKGV4Yyk7CisgICAgcmV0dXJuIHJldDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2VuY29kZV9jb2RlX3BhZ2UoaW50IGNvZGVfcGFnZSwKKyAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK3sKKyAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBQeU9iamVjdCAqb3V0Ynl0ZXMgPSBOVUxMOworICAgIFB5X3NzaXplX3Qgb2Zmc2V0OworICAgIGludCBjaHVua19sZW4sIHJldCwgZG9uZTsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodW5pY29kZSkgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworCisgICAgaWYgKGNvZGVfcGFnZSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJpbnZhbGlkIGNvZGUgcGFnZSBudW1iZXIiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0jaWZkZWYgTkVFRF9SRVRSWQotICAgIGlmIChzaXplID4gSU5UX01BWCkgewotICAgICAgICBwICs9IElOVF9NQVg7Ci0gICAgICAgIHNpemUgLT0gSU5UX01BWDsKLSAgICAgICAgZ290byByZXRyeTsKLSAgICB9Ci0jZW5kaWYKKyAgICBpZiAobGVuID09IDApCisgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOwogCi0gICAgcmV0dXJuIHJlcHI7CisgICAgb2Zmc2V0ID0gMDsKKyAgICBkbworICAgIHsKKyNpZmRlZiBORUVEX1JFVFJZCisgICAgICAgIC8qIFVURi0xNiBlbmNvZGluZyBtYXkgZG91YmxlIHRoZSBzaXplLCBzbyB1c2Ugb25seSBJTlRfTUFYLzIKKyAgICAgICAgICAgY2h1bmtzLiAqLworICAgICAgICBpZiAobGVuID4gSU5UX01BWC8yKSB7CisgICAgICAgICAgICBjaHVua19sZW4gPSBJTlRfTUFYLzI7CisgICAgICAgICAgICBkb25lID0gMDsKKyAgICAgICAgfQorICAgICAgICBlbHNlCisjZW5kaWYKKyAgICAgICAgeworICAgICAgICAgICAgY2h1bmtfbGVuID0gKGludClsZW47CisgICAgICAgICAgICBkb25lID0gMTsKKyAgICAgICAgfQorCisgICAgICAgIHJldCA9IGVuY29kZV9jb2RlX3BhZ2Vfc3RyaWN0KGNvZGVfcGFnZSwgJm91dGJ5dGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmljb2RlLCBvZmZzZXQsIGNodW5rX2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKKyAgICAgICAgaWYgKHJldCA9PSAtMikKKyAgICAgICAgICAgIHJldCA9IGVuY29kZV9jb2RlX3BhZ2VfZXJyb3JzKGNvZGVfcGFnZSwgJm91dGJ5dGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2h1bmtfbGVuLCBlcnJvcnMpOworICAgICAgICBpZiAocmV0IDwgMCkgeworICAgICAgICAgICAgUHlfWERFQ1JFRihvdXRieXRlcyk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorCisgICAgICAgIG9mZnNldCArPSBjaHVua19sZW47CisgICAgICAgIGxlbiAtPSBjaHVua19sZW47CisgICAgfSB3aGlsZSAoIWRvbmUpOworCisgICAgcmV0dXJuIG91dGJ5dGVzOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzTUJDU1N0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9FbmNvZGVNQkNTKGNvbnN0IFB5X1VOSUNPREUgKnAsCisgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgUHlPYmplY3QgKnVuaWNvZGUsICpyZXM7CisgICAgdW5pY29kZSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShwLCBzaXplKTsKKyAgICBpZiAodW5pY29kZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXMgPSBlbmNvZGVfY29kZV9wYWdlKENQX0FDUCwgdW5pY29kZSwgZXJyb3JzKTsKKyAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgcmV0dXJuIHJlczsKK30KKworUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZUNvZGVQYWdlKGludCBjb2RlX3BhZ2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQoreworICAgIHJldHVybiBlbmNvZGVfY29kZV9wYWdlKGNvZGVfcGFnZSwgdW5pY29kZSwgZXJyb3JzKTsKK30KKworUHlPYmplY3QgKgorUHlVbmljb2RlX0FzTUJDU1N0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKIHsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVNQkNTKFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlQ29kZVBhZ2UoQ1BfQUNQLCB1bmljb2RlLCBOVUxMKTsKIH0KIAogI3VuZGVmIE5FRURfUkVUUlkKIAotI2VuZGlmIC8qIE1TX1dJTkRPV1MgKi8KKyNlbmRpZiAvKiBIQVZFX01CQ1MgKi8KIAogLyogLS0tIENoYXJhY3RlciBNYXBwaW5nIENvZGVjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlQ2hhcm1hcChjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqbWFwcGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlQ2hhcm1hcChjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm1hcHBpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgY29uc3QgY2hhciAqc3RhcnRzID0gczsKICAgICBQeV9zc2l6ZV90IHN0YXJ0aW5wb3M7CiAgICAgUHlfc3NpemVfdCBlbmRpbnBvczsKICAgICBQeV9zc2l6ZV90IG91dHBvczsKICAgICBjb25zdCBjaGFyICplOwotICAgIFB5VW5pY29kZU9iamVjdCAqdjsKLSAgICBQeV9VTklDT0RFICpwOworICAgIFB5T2JqZWN0ICp2OwogICAgIFB5X3NzaXplX3QgZXh0cmFjaGFycyA9IDA7CiAgICAgUHlPYmplY3QgKmVycm9ySGFuZGxlciA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmV4YyA9IE5VTEw7Ci0gICAgUHlfVU5JQ09ERSAqbWFwc3RyaW5nID0gTlVMTDsKLSAgICBQeV9zc2l6ZV90IG1hcGxlbiA9IDA7CiAKICAgICAvKiBEZWZhdWx0IHRvIExhdGluLTEgKi8KICAgICBpZiAobWFwcGluZyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUxhdGluMShzLCBzaXplLCBlcnJvcnMpOwogCi0gICAgdiA9IF9QeVVuaWNvZGVfTmV3KHNpemUpOworICAgIHYgPSBQeVVuaWNvZGVfTmV3KHNpemUsIDEyNyk7CiAgICAgaWYgKHYgPT0gTlVMTCkKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIGlmIChzaXplID09IDApCi0gICAgICAgIHJldHVybiAoUHlPYmplY3QgKil2OwotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KTsKKyAgICAgICAgcmV0dXJuIHY7CisgICAgb3V0cG9zID0gMDsKICAgICBlID0gcyArIHNpemU7CiAgICAgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KG1hcHBpbmcpKSB7Ci0gICAgICAgIG1hcHN0cmluZyA9IFB5VW5pY29kZV9BU19VTklDT0RFKG1hcHBpbmcpOwotICAgICAgICBtYXBsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUobWFwcGluZyk7CisgICAgICAgIFB5X3NzaXplX3QgbWFwbGVuOworICAgICAgICBlbnVtIFB5VW5pY29kZV9LaW5kIGtpbmQ7CisgICAgICAgIHZvaWQgKmRhdGE7CisgICAgICAgIFB5X1VDUzQgeDsKKworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKG1hcHBpbmcpID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAgICAgbWFwbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgobWFwcGluZyk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShtYXBwaW5nKTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKG1hcHBpbmcpOwogICAgICAgICB3aGlsZSAocyA8IGUpIHsKICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgY2ggPSAqczsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgeCA9IDB4ZmZmZTsgLyogaWxsZWdhbCB2YWx1ZSAqLwogCiAgICAgICAgICAgICBpZiAoY2ggPCBtYXBsZW4pCi0gICAgICAgICAgICAgICAgeCA9IG1hcHN0cmluZ1tjaF07CisgICAgICAgICAgICAgICAgeCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGNoKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICB4ID0gMHhmZmZlOyAvKiBpbnZhbGlkIHZhbHVlICovCiAKLSAgICAgICAgICAgIGlmICh4ID09IDB4ZmZmZSkgeworICAgICAgICAgICAgaWYgKHggPT0gMHhmZmZlKQorICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIC8qIHVuZGVmaW5lZCBtYXBwaW5nICovCi0gICAgICAgICAgICAgICAgb3V0cG9zID0gcC1QeVVuaWNvZGVfQVNfVU5JQ09ERSh2KTsKICAgICAgICAgICAgICAgICBzdGFydGlucG9zID0gcy1zdGFydHM7CiAgICAgICAgICAgICAgICAgZW5kaW5wb3MgPSBzdGFydGlucG9zKzE7CiAgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgImNoYXJtYXAiLCAiY2hhcmFjdGVyIG1hcHMgdG8gPHVuZGVmaW5lZD4iLAogICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmUsICZzdGFydGlucG9zLCAmZW5kaW5wb3MsICZleGMsICZzLAotICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZvdXRwb3MsICZwKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZvdXRwb3MpKSB7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAqcCsrID0geDsKKworICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdiwgJm91dHBvcywgeCkgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICsrczsKICAgICAgICAgfQogICAgIH0KQEAgLTUyNjYsMTggKzc4NTAsMTggQEAKICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHgpOwogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICpwKysgPSAoUHlfVU5JQ09ERSl2YWx1ZTsKKyAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ2LCAmb3V0cG9zLCB2YWx1ZSkgPCAwKQorICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmICh4ID09IFB5X05vbmUpIHsKICAgICAgICAgICAgICAgICAvKiB1bmRlZmluZWQgbWFwcGluZyAqLwotICAgICAgICAgICAgICAgIG91dHBvcyA9IHAtUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICAgICAgc3RhcnRpbnBvcyA9IHMtc3RhcnRzOwogICAgICAgICAgICAgICAgIGVuZGlucG9zID0gc3RhcnRpbnBvcysxOwogICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycywgJmVycm9ySGFuZGxlciwKICAgICAgICAgICAgICAgICAgICAgICAgICJjaGFybWFwIiwgImNoYXJhY3RlciBtYXBzIHRvIDx1bmRlZmluZWQ+IiwKICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFydHMsICZlLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zKSkgewogICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoeCk7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICB9CkBAIC01Mjg1LDMyICs3ODY5LDM3IEBACiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2soeCkpIHsKLSAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHRhcmdldHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUoeCk7CisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCB0YXJnZXRzaXplOwogCi0gICAgICAgICAgICAgICAgaWYgKHRhcmdldHNpemUgPT0gMSkKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHgpID09IC0xKQorICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgdGFyZ2V0c2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHgpOworCisgICAgICAgICAgICAgICAgaWYgKHRhcmdldHNpemUgPT0gMSkgewogICAgICAgICAgICAgICAgICAgICAvKiAxLTEgbWFwcGluZyAqLwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gKlB5VW5pY29kZV9BU19VTklDT0RFKHgpOwotCisgICAgICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnYsICZvdXRwb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQURfQ0hBUih4LCAwKSkgPCAwKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNlIGlmICh0YXJnZXRzaXplID4gMSkgewogICAgICAgICAgICAgICAgICAgICAvKiAxLW4gbWFwcGluZyAqLwogICAgICAgICAgICAgICAgICAgICBpZiAodGFyZ2V0c2l6ZSA+IGV4dHJhY2hhcnMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHJlc2l6ZSBmaXJzdCAqLwotICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBvbGRwb3MgPSBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG5lZWRlZCA9ICh0YXJnZXRzaXplIC0gZXh0cmFjaGFycykgKyBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHRhcmdldHNpemUgPDwgMik7CiAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYWNoYXJzICs9IG5lZWRlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFhYWCBvdmVyZmxvdyBkZXRlY3Rpb24gbWlzc2luZyAqLwotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9QeVVuaWNvZGVfUmVzaXplKCZ2LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh2KSArIG5lZWRlZCkgPCAwKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9yZXNpemUoJnYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgodikgKyBuZWVkZWQpIDwgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoeCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgICAgcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHYpICsgb2xkcG9zOwogICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWShwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoeCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRzaXplKTsKLSAgICAgICAgICAgICAgICAgICAgcCArPSB0YXJnZXRzaXplOworICAgICAgICAgICAgICAgICAgICBpZiAodW5pY29kZV93aWRlbigmdiwgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHgpKSA8IDApCisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyh2LCBvdXRwb3MsIHgsIDAsIHRhcmdldHNpemUpOworICAgICAgICAgICAgICAgICAgICBvdXRwb3MgKz0gdGFyZ2V0c2l6ZTsKICAgICAgICAgICAgICAgICAgICAgZXh0cmFjaGFycyAtPSB0YXJnZXRzaXplOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiAxLTAgbWFwcGluZzogc2tpcCB0aGUgY2hhcmFjdGVyICovCkBAIC01MzI2LDEyICs3OTE1LDExIEBACiAgICAgICAgICAgICArK3M7CiAgICAgICAgIH0KICAgICB9Ci0gICAgaWYgKHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSA8IFB5VW5pY29kZV9HRVRfU0laRSh2KSkKLSAgICAgICAgaWYgKF9QeVVuaWNvZGVfUmVzaXplKCZ2LCBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodikpIDwgMCkKLSAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICBpZiAodW5pY29kZV9yZXNpemUoJnYsIG91dHBvcykgPCAwKQorICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOwogICAgIFB5X1hERUNSRUYoZXhjKTsKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopdjsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQodik7CiAKICAgb25FcnJvcjoKICAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7CkBAIC01MzQyLDcgKzc5MzAsNyBAQAogCiAvKiBDaGFybWFwIGVuY29kaW5nOiB0aGUgbG9va3VwIHRhYmxlICovCiAKLXN0cnVjdCBlbmNvZGluZ19tYXB7CitzdHJ1Y3QgZW5jb2RpbmdfbWFwIHsKICAgICBQeU9iamVjdF9IRUFECiAgICAgdW5zaWduZWQgY2hhciBsZXZlbDFbMzJdOwogICAgIGludCBjb3VudDIsIGNvdW50MzsKQEAgLTU0MTYsNyArODAwNCw2IEBACiBQeU9iamVjdCoKIFB5VW5pY29kZV9CdWlsZEVuY29kaW5nTWFwKFB5T2JqZWN0KiBzdHJpbmcpCiB7Ci0gICAgUHlfVU5JQ09ERSAqZGVjb2RlOwogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAgICAgc3RydWN0IGVuY29kaW5nX21hcCAqbXJlc3VsdDsKICAgICBpbnQgaTsKQEAgLTU0MjUsMzUgKzgwMTIsMzYgQEAKICAgICB1bnNpZ25lZCBjaGFyIGxldmVsMls1MTJdOwogICAgIHVuc2lnbmVkIGNoYXIgKm1sZXZlbDEsICptbGV2ZWwyLCAqbWxldmVsMzsKICAgICBpbnQgY291bnQyID0gMCwgY291bnQzID0gMDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X1VDUzQgY2g7CiAKLSAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhzdHJpbmcpIHx8IFB5VW5pY29kZV9HZXRTaXplKHN0cmluZykgIT0gMjU2KSB7CisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soc3RyaW5nKSB8fCBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJpbmcpICE9IDI1NikgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgZGVjb2RlID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyaW5nKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc3RyaW5nKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc3RyaW5nKTsKICAgICBtZW1zZXQobGV2ZWwxLCAweEZGLCBzaXplb2YgbGV2ZWwxKTsKICAgICBtZW1zZXQobGV2ZWwyLCAweEZGLCBzaXplb2YgbGV2ZWwyKTsKIAogICAgIC8qIElmIHRoZXJlIGlzbid0IGEgb25lLXRvLW9uZSBtYXBwaW5nIG9mIE5VTEwgdG8gXDAsCiAgICAgICAgb3IgaWYgdGhlcmUgYXJlIG5vbi1CTVAgY2hhcmFjdGVycywgd2UgbmVlZCB0byB1c2UKICAgICAgICBhIG1hcHBpbmcgZGljdGlvbmFyeS4gKi8KLSAgICBpZiAoZGVjb2RlWzBdICE9IDApCisgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApICE9IDApCiAgICAgICAgIG5lZWRfZGljdCA9IDE7CiAgICAgZm9yIChpID0gMTsgaSA8IDI1NjsgaSsrKSB7CiAgICAgICAgIGludCBsMSwgbDI7Ci0gICAgICAgIGlmIChkZWNvZGVbaV0gPT0gMAotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgfHwgZGVjb2RlW2ldID4gMHhGRkZGCi0jZW5kaWYKLSAgICAgICAgICAgICkgeworICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICBpZiAoY2ggPT0gMCB8fCBjaCA+IDB4RkZGRikgewogICAgICAgICAgICAgbmVlZF9kaWN0ID0gMTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0gICAgICAgIGlmIChkZWNvZGVbaV0gPT0gMHhGRkZFKQorICAgICAgICBpZiAoY2ggPT0gMHhGRkZFKQogICAgICAgICAgICAgLyogdW5tYXBwZWQgY2hhcmFjdGVyICovCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgbDEgPSBkZWNvZGVbaV0gPj4gMTE7Ci0gICAgICAgIGwyID0gZGVjb2RlW2ldID4+IDc7CisgICAgICAgIGwxID0gY2ggPj4gMTE7CisgICAgICAgIGwyID0gY2ggPj4gNzsKICAgICAgICAgaWYgKGxldmVsMVtsMV0gPT0gMHhGRikKICAgICAgICAgICAgIGxldmVsMVtsMV0gPSBjb3VudDIrKzsKICAgICAgICAgaWYgKGxldmVsMltsMl0gPT0gMHhGRikKQEAgLTU0NjksOCArODA1Nyw3IEBACiAgICAgICAgIGlmICghcmVzdWx0KQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCAyNTY7IGkrKykgewotICAgICAgICAgICAga2V5ID0gdmFsdWUgPSBOVUxMOwotICAgICAgICAgICAga2V5ID0gUHlMb25nX0Zyb21Mb25nKGRlY29kZVtpXSk7CisgICAgICAgICAgICBrZXkgPSBQeUxvbmdfRnJvbUxvbmcoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpOwogICAgICAgICAgICAgdmFsdWUgPSBQeUxvbmdfRnJvbUxvbmcoaSk7CiAgICAgICAgICAgICBpZiAoIWtleSB8fCAhdmFsdWUpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQxOwpAQCAtNTUwNSwxNSArODA5MiwxNSBAQAogICAgIGNvdW50MyA9IDA7CiAgICAgZm9yIChpID0gMTsgaSA8IDI1NjsgaSsrKSB7CiAgICAgICAgIGludCBvMSwgbzIsIG8zLCBpMiwgaTM7Ci0gICAgICAgIGlmIChkZWNvZGVbaV0gPT0gMHhGRkZFKQorICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkgPT0gMHhGRkZFKQogICAgICAgICAgICAgLyogdW5tYXBwZWQgY2hhcmFjdGVyICovCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgbzEgPSBkZWNvZGVbaV0+PjExOwotICAgICAgICBvMiA9IChkZWNvZGVbaV0+PjcpICYgMHhGOworICAgICAgICBvMSA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpPj4xMTsKKyAgICAgICAgbzIgPSAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk+PjcpICYgMHhGOwogICAgICAgICBpMiA9IDE2Km1sZXZlbDFbbzFdICsgbzI7CiAgICAgICAgIGlmIChtbGV2ZWwyW2kyXSA9PSAweEZGKQogICAgICAgICAgICAgbWxldmVsMltpMl0gPSBjb3VudDMrKzsKLSAgICAgICAgbzMgPSBkZWNvZGVbaV0gJiAweDdGOworICAgICAgICBvMyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpICYgMHg3RjsKICAgICAgICAgaTMgPSAxMjgqbWxldmVsMltpMl0gKyBvMzsKICAgICAgICAgbWxldmVsM1tpM10gPSBpOwogICAgIH0KQEAgLTU1MjEsNyArODEwOCw3IEBACiB9CiAKIHN0YXRpYyBpbnQKLWVuY29kaW5nX21hcF9sb29rdXAoUHlfVU5JQ09ERSBjLCBQeU9iamVjdCAqbWFwcGluZykKK2VuY29kaW5nX21hcF9sb29rdXAoUHlfVUNTNCBjLCBQeU9iamVjdCAqbWFwcGluZykKIHsKICAgICBzdHJ1Y3QgZW5jb2RpbmdfbWFwICptYXAgPSAoc3RydWN0IGVuY29kaW5nX21hcCopbWFwcGluZzsKICAgICBpbnQgbDEgPSBjPj4xMTsKQEAgLTU1MjksMTEgKzgxMTYsOCBAQAogICAgIGludCBsMyA9IGMgJiAweDdGOwogICAgIGludCBpOwogCi0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgaWYgKGMgPiAweEZGRkYpIHsKKyAgICBpZiAoYyA+IDB4RkZGRikKICAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSNlbmRpZgogICAgIGlmIChjID09IDApCiAgICAgICAgIHJldHVybiAwOwogICAgIC8qIGxldmVsIDEqLwpAQCAtNTU1Nyw3ICs4MTQxLDggQEAKIC8qIExvb2t1cCB0aGUgY2hhcmFjdGVyIGNoIGluIHRoZSBtYXBwaW5nLiBJZiB0aGUgY2hhcmFjdGVyCiAgICBjYW4ndCBiZSBmb3VuZCwgUHlfTm9uZSBpcyByZXR1cm5lZCAob3IgTlVMTCwgaWYgYW5vdGhlcgogICAgZXJyb3Igb2NjdXJyZWQpLiAqLwotc3RhdGljIFB5T2JqZWN0ICpjaGFybWFwZW5jb2RlX2xvb2t1cChQeV9VTklDT0RFIGMsIFB5T2JqZWN0ICptYXBwaW5nKQorc3RhdGljIFB5T2JqZWN0ICoKK2NoYXJtYXBlbmNvZGVfbG9va3VwKFB5X1VDUzQgYywgUHlPYmplY3QgKm1hcHBpbmcpCiB7CiAgICAgUHlPYmplY3QgKncgPSBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpYyk7CiAgICAgUHlPYmplY3QgKng7CkBAIC01NjE0LDE2ICs4MTk5LDE2IEBACiAKIHR5cGVkZWYgZW51bSBjaGFybWFwZW5jb2RlX3Jlc3VsdCB7CiAgICAgZW5jX1NVQ0NFU1MsIGVuY19GQUlMRUQsIGVuY19FWENFUFRJT04KLX1jaGFybWFwZW5jb2RlX3Jlc3VsdDsKK30gY2hhcm1hcGVuY29kZV9yZXN1bHQ7CiAvKiBsb29rdXAgdGhlIGNoYXJhY3RlciwgcHV0IHRoZSByZXN1bHQgaW4gdGhlIG91dHB1dCBzdHJpbmcgYW5kIGFkanVzdAogICAgdmFyaW91cyBzdGF0ZSB2YXJpYWJsZXMuIFJlc2l6ZSB0aGUgb3V0cHV0IGJ5dGVzIG9iamVjdCBpZiBub3QgZW5vdWdoCiAgICBzcGFjZSBpcyBhdmFpbGFibGUuIFJldHVybiBhIG5ldyByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCB0aGF0CiAgICB3YXMgcHV0IGluIHRoZSBvdXRwdXQgYnVmZmVyLCBvciBQeV9Ob25lLCBpZiB0aGUgbWFwcGluZyB3YXMgdW5kZWZpbmVkCiAgICAoaW4gd2hpY2ggY2FzZSBubyBjaGFyYWN0ZXIgd2FzIHdyaXR0ZW4pIG9yIE5VTEwsIGlmIGEKICAgIHJlYWxsb2NhdGlvbiBlcnJvciBvY2N1cnJlZC4gVGhlIGNhbGxlciBtdXN0IGRlY3JlZiB0aGUgcmVzdWx0ICovCi1zdGF0aWMKLWNoYXJtYXBlbmNvZGVfcmVzdWx0IGNoYXJtYXBlbmNvZGVfb3V0cHV0KFB5X1VOSUNPREUgYywgUHlPYmplY3QgKm1hcHBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKm91dG9iaiwgUHlfc3NpemVfdCAqb3V0cG9zKQorc3RhdGljIGNoYXJtYXBlbmNvZGVfcmVzdWx0CitjaGFybWFwZW5jb2RlX291dHB1dChQeV9VQ1M0IGMsIFB5T2JqZWN0ICptYXBwaW5nLAorICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipvdXRvYmosIFB5X3NzaXplX3QgKm91dHBvcykKIHsKICAgICBQeU9iamVjdCAqcmVwOwogICAgIGNoYXIgKm91dHN0YXJ0OwpAQCAtNTY3OSwxNyArODI2NCwxOSBAQAogCiAvKiBoYW5kbGUgYW4gZXJyb3IgaW4gUHlVbmljb2RlX0VuY29kZUNoYXJtYXAKICAgIFJldHVybiAwIG9uIHN1Y2Nlc3MsIC0xIG9uIGVycm9yICovCi1zdGF0aWMKLWludCBjaGFybWFwX2VuY29kaW5nX2Vycm9yKAotICAgIGNvbnN0IFB5X1VOSUNPREUgKnAsIFB5X3NzaXplX3Qgc2l6ZSwgUHlfc3NpemVfdCAqaW5wb3MsIFB5T2JqZWN0ICptYXBwaW5nLAorc3RhdGljIGludAorY2hhcm1hcF9lbmNvZGluZ19lcnJvcigKKyAgICBQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCAqaW5wb3MsIFB5T2JqZWN0ICptYXBwaW5nLAogICAgIFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAogICAgIGludCAqa25vd25fZXJyb3JIYW5kbGVyLCBQeU9iamVjdCAqKmVycm9ySGFuZGxlciwgY29uc3QgY2hhciAqZXJyb3JzLAogICAgIFB5T2JqZWN0ICoqcmVzLCBQeV9zc2l6ZV90ICpyZXNwb3MpCiB7CiAgICAgUHlPYmplY3QgKnJlcHVuaWNvZGUgPSBOVUxMOyAvKiBpbml0aWFsaXplIHRvIHByZXZlbnQgZ2NjIHdhcm5pbmcgKi8KLSAgICBQeV9zc2l6ZV90IHJlcHNpemU7CisgICAgUHlfc3NpemVfdCBzaXplLCByZXBzaXplOwogICAgIFB5X3NzaXplX3QgbmV3cG9zOwotICAgIFB5X1VOSUNPREUgKnVuaTI7CisgICAgZW51bSBQeVVuaWNvZGVfS2luZCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBpbmRleDsKICAgICAvKiBzdGFydHBvcyBmb3IgY29sbGVjdGluZyB1bmVuY29kYWJsZSBjaGFycyAqLwogICAgIFB5X3NzaXplX3QgY29sbHN0YXJ0cG9zID0gKmlucG9zOwogICAgIFB5X3NzaXplX3QgY29sbGVuZHBvcyA9ICppbnBvcysxOwpAQCAtNTY5NywxOSArODI4NCwyNiBAQAogICAgIGNoYXIgKmVuY29kaW5nID0gImNoYXJtYXAiOwogICAgIGNoYXIgKnJlYXNvbiA9ICJjaGFyYWN0ZXIgbWFwcyB0byA8dW5kZWZpbmVkPiI7CiAgICAgY2hhcm1hcGVuY29kZV9yZXN1bHQgeDsKKyAgICBQeV9VQ1M0IGNoOworICAgIGludCB2YWw7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOwogICAgIC8qIGZpbmQgYWxsIHVuZW5jb2RhYmxlIGNoYXJhY3RlcnMgKi8KICAgICB3aGlsZSAoY29sbGVuZHBvcyA8IHNpemUpIHsKICAgICAgICAgUHlPYmplY3QgKnJlcDsKICAgICAgICAgaWYgKFB5X1RZUEUobWFwcGluZykgPT0gJkVuY29kaW5nTWFwVHlwZSkgewotICAgICAgICAgICAgaW50IHJlcyA9IGVuY29kaW5nX21hcF9sb29rdXAocFtjb2xsZW5kcG9zXSwgbWFwcGluZyk7Ci0gICAgICAgICAgICBpZiAocmVzICE9IC0xKQorICAgICAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIGNvbGxlbmRwb3MpOworICAgICAgICAgICAgdmFsID0gZW5jb2RpbmdfbWFwX2xvb2t1cChjaCwgbWFwcGluZyk7CisgICAgICAgICAgICBpZiAodmFsICE9IC0xKQogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgKytjb2xsZW5kcG9zOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAotICAgICAgICByZXAgPSBjaGFybWFwZW5jb2RlX2xvb2t1cChwW2NvbGxlbmRwb3NdLCBtYXBwaW5nKTsKKyAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIGNvbGxlbmRwb3MpOworICAgICAgICByZXAgPSBjaGFybWFwZW5jb2RlX2xvb2t1cChjaCwgbWFwcGluZyk7CiAgICAgICAgIGlmIChyZXA9PU5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIGVsc2UgaWYgKHJlcCE9UHlfTm9uZSkgewpAQCAtNTczNSw3ICs4MzI5LDcgQEAKICAgICB9CiAgICAgc3dpdGNoICgqa25vd25fZXJyb3JIYW5kbGVyKSB7CiAgICAgY2FzZSAxOiAvKiBzdHJpY3QgKi8KLSAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbihleGNlcHRpb25PYmplY3QsIGVuY29kaW5nLCBwLCBzaXplLCBjb2xsc3RhcnRwb3MsIGNvbGxlbmRwb3MsIHJlYXNvbik7CisgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgdW5pY29kZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgY2FzZSAyOiAvKiByZXBsYWNlICovCiAgICAgICAgIGZvciAoY29sbHBvcyA9IGNvbGxzdGFydHBvczsgY29sbHBvczxjb2xsZW5kcG9zOyArK2NvbGxwb3MpIHsKQEAgLTU3NDQsNyArODMzOCw3IEBACiAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBpZiAoeD09ZW5jX0ZBSUxFRCkgewotICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgcCwgc2l6ZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOworICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgdW5pY29kZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOwogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtNTc1NywxMyArODM1MSwxMyBAQAogICAgICAgICBmb3IgKGNvbGxwb3MgPSBjb2xsc3RhcnRwb3M7IGNvbGxwb3MgPCBjb2xsZW5kcG9zOyArK2NvbGxwb3MpIHsKICAgICAgICAgICAgIGNoYXIgYnVmZmVyWzIrMjkrMSsxXTsKICAgICAgICAgICAgIGNoYXIgKmNwOwotICAgICAgICAgICAgc3ByaW50ZihidWZmZXIsICImIyVkOyIsIChpbnQpcFtjb2xscG9zXSk7CisgICAgICAgICAgICBzcHJpbnRmKGJ1ZmZlciwgIiYjJWQ7IiwgKGludClQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIGNvbGxwb3MpKTsKICAgICAgICAgICAgIGZvciAoY3AgPSBidWZmZXI7ICpjcDsgKytjcCkgewogICAgICAgICAgICAgICAgIHggPSBjaGFybWFwZW5jb2RlX291dHB1dCgqY3AsIG1hcHBpbmcsIHJlcywgcmVzcG9zKTsKICAgICAgICAgICAgICAgICBpZiAoeD09ZW5jX0VYQ0VQVElPTikKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAgICAgICAgIGVsc2UgaWYgKHg9PWVuY19GQUlMRUQpIHsKLSAgICAgICAgICAgICAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbihleGNlcHRpb25PYmplY3QsIGVuY29kaW5nLCBwLCBzaXplLCBjb2xsc3RhcnRwb3MsIGNvbGxlbmRwb3MsIHJlYXNvbik7CisgICAgICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgdW5pY29kZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQpAQCAtNTc3Miw3ICs4MzY2LDcgQEAKICAgICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgcmVwdW5pY29kZSA9IHVuaWNvZGVfZW5jb2RlX2NhbGxfZXJyb3JoYW5kbGVyKGVycm9ycywgZXJyb3JIYW5kbGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHJlYXNvbiwgcCwgc2l6ZSwgZXhjZXB0aW9uT2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHJlYXNvbiwgdW5pY29kZSwgZXhjZXB0aW9uT2JqZWN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCAmbmV3cG9zKTsKICAgICAgICAgaWYgKHJlcHVuaWNvZGUgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKQEAgLTU3OTYsMTUgKzgzOTAsMjMgQEAKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIC8qIGdlbmVyYXRlIHJlcGxhY2VtZW50ICAqLwotICAgICAgICByZXBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKHJlcHVuaWNvZGUpOwotICAgICAgICBmb3IgKHVuaTIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXB1bmljb2RlKTsgcmVwc2l6ZS0tPjA7ICsrdW5pMikgewotICAgICAgICAgICAgeCA9IGNoYXJtYXBlbmNvZGVfb3V0cHV0KCp1bmkyLCBtYXBwaW5nLCByZXMsIHJlc3Bvcyk7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocmVwdW5pY29kZSkgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihyZXB1bmljb2RlKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICByZXBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocmVwdW5pY29kZSk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShyZXB1bmljb2RlKTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHJlcHVuaWNvZGUpOworICAgICAgICBmb3IgKGluZGV4ID0gMDsgaW5kZXggPCByZXBzaXplOyBpbmRleCsrKSB7CisgICAgICAgICAgICBQeV9VQ1M0IHJlcGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaW5kZXgpOworICAgICAgICAgICAgeCA9IGNoYXJtYXBlbmNvZGVfb3V0cHV0KHJlcGNoLCBtYXBwaW5nLCByZXMsIHJlc3Bvcyk7CiAgICAgICAgICAgICBpZiAoeD09ZW5jX0VYQ0VQVElPTikgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXB1bmljb2RlKTsKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmICh4PT1lbmNfRkFJTEVEKSB7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcHVuaWNvZGUpOwotICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgcCwgc2l6ZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOworICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgdW5pY29kZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOwogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtNTgxNCwxNSArODQxNiwxNiBAQAogICAgIHJldHVybiAwOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0VuY29kZUNoYXJtYXAoY29uc3QgUHlfVU5JQ09ERSAqcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm1hcHBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorX1B5VW5pY29kZV9FbmNvZGVDaGFybWFwKFB5T2JqZWN0ICp1bmljb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICAvKiBvdXRwdXQgb2JqZWN0ICovCiAgICAgUHlPYmplY3QgKnJlcyA9IE5VTEw7CiAgICAgLyogY3VycmVudCBpbnB1dCBwb3NpdGlvbiAqLwogICAgIFB5X3NzaXplX3QgaW5wb3MgPSAwOworICAgIFB5X3NzaXplX3Qgc2l6ZTsKICAgICAvKiBjdXJyZW50IG91dHB1dCBwb3NpdGlvbiAqLwogICAgIFB5X3NzaXplX3QgcmVzcG9zID0gMDsKICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKQEAgLTU4MzIsOSArODQzNSwxMyBAQAogICAgICAqIDM9aWdub3JlLCA0PXhtbGNoYXJyZWZyZXBsYWNlICovCiAgICAgaW50IGtub3duX2Vycm9ySGFuZGxlciA9IC0xOwogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworCiAgICAgLyogRGVmYXVsdCB0byBMYXRpbi0xICovCiAgICAgaWYgKG1hcHBpbmcgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVMYXRpbjEocCwgc2l6ZSwgZXJyb3JzKTsKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW5jb2RlX3VjczEodW5pY29kZSwgZXJyb3JzLCAyNTYpOwogCiAgICAgLyogYWxsb2NhdGUgZW5vdWdoIGZvciBhIHNpbXBsZSBlbmNvZGluZyB3aXRob3V0CiAgICAgICAgcmVwbGFjZW1lbnRzLCBpZiB3ZSBuZWVkIG1vcmUsIHdlJ2xsIHJlc2l6ZSAqLwpAQCAtNTg0NSwxMiArODQ1MiwxMyBAQAogICAgICAgICByZXR1cm4gcmVzOwogCiAgICAgd2hpbGUgKGlucG9zPHNpemUpIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEX0NIQVIodW5pY29kZSwgaW5wb3MpOwogICAgICAgICAvKiB0cnkgdG8gZW5jb2RlIGl0ICovCi0gICAgICAgIGNoYXJtYXBlbmNvZGVfcmVzdWx0IHggPSBjaGFybWFwZW5jb2RlX291dHB1dChwW2lucG9zXSwgbWFwcGluZywgJnJlcywgJnJlc3Bvcyk7CisgICAgICAgIGNoYXJtYXBlbmNvZGVfcmVzdWx0IHggPSBjaGFybWFwZW5jb2RlX291dHB1dChjaCwgbWFwcGluZywgJnJlcywgJnJlc3Bvcyk7CiAgICAgICAgIGlmICh4PT1lbmNfRVhDRVBUSU9OKSAvKiBlcnJvciAqLwogICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICBpZiAoeD09ZW5jX0ZBSUxFRCkgeyAvKiB1bmVuY29kYWJsZSBjaGFyYWN0ZXIgKi8KLSAgICAgICAgICAgIGlmIChjaGFybWFwX2VuY29kaW5nX2Vycm9yKHAsIHNpemUsICZpbnBvcywgbWFwcGluZywKKyAgICAgICAgICAgIGlmIChjaGFybWFwX2VuY29kaW5nX2Vycm9yKHVuaWNvZGUsICZpbnBvcywgbWFwcGluZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZleGMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAma25vd25fZXJyb3JIYW5kbGVyLCAmZXJyb3JIYW5kbGVyLCBlcnJvcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcmVzLCAmcmVzcG9zKSkgewpAQCAtNTg3OCwyOCArODQ4Niw0MyBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzQ2hhcm1hcFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nKQorLyogRGVwcmVjYXRlZCAqLworUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZUNoYXJtYXAoY29uc3QgUHlfVU5JQ09ERSAqcCwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQoreworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlPYmplY3QgKnVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocCwgc2l6ZSk7CisgICAgaWYgKHVuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzdWx0ID0gX1B5VW5pY29kZV9FbmNvZGVDaGFybWFwKHVuaWNvZGUsIG1hcHBpbmcsIGVycm9ycyk7CisgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Bc0NoYXJtYXBTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nKQogewogICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpIHx8IG1hcHBpbmcgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVDaGFybWFwKFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcHBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgIHJldHVybiBfUHlVbmljb2RlX0VuY29kZUNoYXJtYXAodW5pY29kZSwgbWFwcGluZywgTlVMTCk7CiB9CiAKIC8qIGNyZWF0ZSBvciBhZGp1c3QgYSBVbmljb2RlVHJhbnNsYXRlRXJyb3IgKi8KLXN0YXRpYyB2b2lkIG1ha2VfdHJhbnNsYXRlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICp1bmljb2RlLCBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydHBvcywgUHlfc3NpemVfdCBlbmRwb3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcmVhc29uKQorc3RhdGljIHZvaWQKK21ha2VfdHJhbnNsYXRlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0cG9zLCBQeV9zc2l6ZV90IGVuZHBvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCiB7CiAgICAgaWYgKCpleGNlcHRpb25PYmplY3QgPT0gTlVMTCkgewotICAgICAgICAqZXhjZXB0aW9uT2JqZWN0ID0gUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfQ3JlYXRlKAotICAgICAgICAgICAgdW5pY29kZSwgc2l6ZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKKyAgICAgICAgKmV4Y2VwdGlvbk9iamVjdCA9IF9QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9DcmVhdGUoCisgICAgICAgICAgICB1bmljb2RlLCBzdGFydHBvcywgZW5kcG9zLCByZWFzb24pOwogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgaWYgKFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX1NldFN0YXJ0KCpleGNlcHRpb25PYmplY3QsIHN0YXJ0cG9zKSkKQEAgLTU5MTYsMTMgKzg1MzksMTQgQEAKIH0KIAogLyogcmFpc2VzIGEgVW5pY29kZVRyYW5zbGF0ZUVycm9yICovCi1zdGF0aWMgdm9pZCByYWlzZV90cmFuc2xhdGVfZXhjZXB0aW9uKFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICp1bmljb2RlLCBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCitzdGF0aWMgdm9pZAorcmFpc2VfdHJhbnNsYXRlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCiB7CiAgICAgbWFrZV90cmFuc2xhdGVfZXhjZXB0aW9uKGV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgc2l6ZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKICAgICBpZiAoKmV4Y2VwdGlvbk9iamVjdCAhPSBOVUxMKQogICAgICAgICBQeUNvZGVjX1N0cmljdEVycm9ycygqZXhjZXB0aW9uT2JqZWN0KTsKIH0KQEAgLTU5MzEsMTIgKzg1NTUsMTMgQEAKICAgIGJ1aWxkIGFyZ3VtZW50cywgY2FsbCB0aGUgY2FsbGJhY2sgYW5kIGNoZWNrIHRoZSBhcmd1bWVudHMsCiAgICBwdXQgdGhlIHJlc3VsdCBpbnRvIG5ld3BvcyBhbmQgcmV0dXJuIHRoZSByZXBsYWNlbWVudCBzdHJpbmcsIHdoaWNoCiAgICBoYXMgdG8gYmUgZnJlZWQgYnkgdGhlIGNhbGxlciAqLwotc3RhdGljIFB5T2JqZWN0ICp1bmljb2RlX3RyYW5zbGF0ZV9jYWxsX2Vycm9yaGFuZGxlcihjb25zdCBjaGFyICplcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqZXJyb3JIYW5kbGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKnVuaWNvZGUsIFB5X3NzaXplX3Qgc2l6ZSwgUHlPYmplY3QgKipleGNlcHRpb25PYmplY3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuZXdwb3MpCitzdGF0aWMgUHlPYmplY3QgKgordW5pY29kZV90cmFuc2xhdGVfY2FsbF9lcnJvcmhhbmRsZXIoY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKiplcnJvckhhbmRsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdW5pY29kZSwgUHlPYmplY3QgKipleGNlcHRpb25PYmplY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0cG9zLCBQeV9zc2l6ZV90IGVuZHBvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKm5ld3BvcykKIHsKICAgICBzdGF0aWMgY2hhciAqYXJncGFyc2UgPSAiTyFuO3RyYW5zbGF0aW5nIGVycm9yIGhhbmRsZXIgbXVzdCByZXR1cm4gKHN0ciwgaW50KSB0dXBsZSI7CiAKQEAgLTU5NTEsNyArODU3Niw3IEBACiAgICAgfQogCiAgICAgbWFrZV90cmFuc2xhdGVfZXhjZXB0aW9uKGV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgc2l6ZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKICAgICBpZiAoKmV4Y2VwdGlvbk9iamVjdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIApAQCAtNTk3MCwxMCArODU5NSwxMCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgaWYgKGlfbmV3cG9zPDApCi0gICAgICAgICpuZXdwb3MgPSBzaXplK2lfbmV3cG9zOworICAgICAgICAqbmV3cG9zID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkraV9uZXdwb3M7CiAgICAgZWxzZQogICAgICAgICAqbmV3cG9zID0gaV9uZXdwb3M7Ci0gICAgaWYgKCpuZXdwb3M8MCB8fCAqbmV3cG9zPnNpemUpIHsKKyAgICBpZiAoKm5ld3BvczwwIHx8ICpuZXdwb3M+UHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0luZGV4RXJyb3IsICJwb3NpdGlvbiAlemQgZnJvbSBlcnJvciBoYW5kbGVyIG91dCBvZiBib3VuZHMiLCAqbmV3cG9zKTsKICAgICAgICAgUHlfREVDUkVGKHJlc3R1cGxlKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC01OTg2LDggKzg2MTEsOCBAQAogLyogTG9va3VwIHRoZSBjaGFyYWN0ZXIgY2ggaW4gdGhlIG1hcHBpbmcgYW5kIHB1dCB0aGUgcmVzdWx0IGluIHJlc3VsdCwKICAgIHdoaWNoIG11c3QgYmUgZGVjcmVmZWQgYnkgdGhlIGNhbGxlci4KICAgIFJldHVybiAwIG9uIHN1Y2Nlc3MsIC0xIG9uIGVycm9yICovCi1zdGF0aWMKLWludCBjaGFybWFwdHJhbnNsYXRlX2xvb2t1cChQeV9VTklDT0RFIGMsIFB5T2JqZWN0ICptYXBwaW5nLCBQeU9iamVjdCAqKnJlc3VsdCkKK3N0YXRpYyBpbnQKK2NoYXJtYXB0cmFuc2xhdGVfbG9va3VwKFB5X1VDUzQgYywgUHlPYmplY3QgKm1hcHBpbmcsIFB5T2JqZWN0ICoqcmVzdWx0KQogewogICAgIFB5T2JqZWN0ICp3ID0gUHlMb25nX0Zyb21Mb25nKChsb25nKWMpOwogICAgIFB5T2JqZWN0ICp4OwpAQCAtNjAzNiwyMCArODY2MSwxOSBAQAogLyogZW5zdXJlIHRoYXQgKm91dG9iaiBpcyBhdCBsZWFzdCByZXF1aXJlZHNpemUgY2hhcmFjdGVycyBsb25nLAogICAgaWYgbm90IHJlYWxsb2NhdGUgYW5kIGFkanVzdCB2YXJpb3VzIHN0YXRlIHZhcmlhYmxlcy4KICAgIFJldHVybiAwIG9uIHN1Y2Nlc3MsIC0xIG9uIGVycm9yICovCi1zdGF0aWMKLWludCBjaGFybWFwdHJhbnNsYXRlX21ha2VzcGFjZShQeU9iamVjdCAqKm91dG9iaiwgUHlfVU5JQ09ERSAqKm91dHAsCitzdGF0aWMgaW50CitjaGFybWFwdHJhbnNsYXRlX21ha2VzcGFjZShQeV9VQ1M0ICoqb3V0b2JqLCBQeV9zc2l6ZV90ICpwc2l6ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHJlcXVpcmVkc2l6ZSkKIHsKLSAgICBQeV9zc2l6ZV90IG9sZHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUoKm91dG9iaik7CisgICAgUHlfc3NpemVfdCBvbGRzaXplID0gKnBzaXplOwogICAgIGlmIChyZXF1aXJlZHNpemUgPiBvbGRzaXplKSB7Ci0gICAgICAgIC8qIHJlbWVtYmVyIG9sZCBvdXRwdXQgcG9zaXRpb24gKi8KLSAgICAgICAgUHlfc3NpemVfdCBvdXRwb3MgPSAqb3V0cC1QeVVuaWNvZGVfQVNfVU5JQ09ERSgqb3V0b2JqKTsKICAgICAgICAgLyogZXhwb25lbnRpYWxseSBvdmVyYWxsb2NhdGUgdG8gbWluaW1pemUgcmVhbGxvY2F0aW9ucyAqLwogICAgICAgICBpZiAocmVxdWlyZWRzaXplIDwgMiAqIG9sZHNpemUpCiAgICAgICAgICAgICByZXF1aXJlZHNpemUgPSAyICogb2xkc2l6ZTsKLSAgICAgICAgaWYgKFB5VW5pY29kZV9SZXNpemUob3V0b2JqLCByZXF1aXJlZHNpemUpIDwgMCkKKyAgICAgICAgKm91dG9iaiA9IFB5TWVtX1JlYWxsb2MoKm91dG9iaiwgcmVxdWlyZWRzaXplICogc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICAgICAgaWYgKCpvdXRvYmogPT0gMCkKICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgKm91dHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqb3V0b2JqKSArIG91dHBvczsKKyAgICAgICAgKnBzaXplID0gcmVxdWlyZWRzaXplOwogICAgIH0KICAgICByZXR1cm4gMDsKIH0KQEAgLTYwNTksMzggKzg2ODMsNDQgQEAKICAgIHVuZGVmaW5lZCAoaW4gd2hpY2ggY2FzZSBubyBjaGFyYWN0ZXIgd2FzIHdyaXR0ZW4pLgogICAgVGhlIGNhbGxlZCBtdXN0IGRlY3JlZiByZXN1bHQuCiAgICBSZXR1cm4gMCBvbiBzdWNjZXNzLCAtMSBvbiBlcnJvci4gKi8KLXN0YXRpYwotaW50IGNoYXJtYXB0cmFuc2xhdGVfb3V0cHV0KGNvbnN0IFB5X1VOSUNPREUgKnN0YXJ0aW5wLCBjb25zdCBQeV9VTklDT0RFICpjdXJpbnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpbnNpemUsIFB5T2JqZWN0ICptYXBwaW5nLCBQeU9iamVjdCAqKm91dG9iaiwgUHlfVU5JQ09ERSAqKm91dHAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipyZXMpCitzdGF0aWMgaW50CitjaGFybWFwdHJhbnNsYXRlX291dHB1dChQeU9iamVjdCAqaW5wdXQsIFB5X3NzaXplX3QgaXBvcywKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLCBQeV9VQ1M0ICoqb3V0cHV0LAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqb3NpemUsIFB5X3NzaXplX3QgKm9wb3MsCisgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnJlcykKIHsKLSAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9sb29rdXAoKmN1cmlucCwgbWFwcGluZywgcmVzKSkKKyAgICBQeV9VQ1M0IGN1cmlucCA9IFB5VW5pY29kZV9SRUFEX0NIQVIoaW5wdXQsIGlwb3MpOworICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX2xvb2t1cChjdXJpbnAsIG1hcHBpbmcsIHJlcykpCiAgICAgICAgIHJldHVybiAtMTsKICAgICBpZiAoKnJlcz09TlVMTCkgewogICAgICAgICAvKiBub3QgZm91bmQgPT4gZGVmYXVsdCB0byAxOjEgbWFwcGluZyAqLwotICAgICAgICAqKCpvdXRwKSsrID0gKmN1cmlucDsKKyAgICAgICAgKCpvdXRwdXQpWygqb3BvcykrK10gPSBjdXJpbnA7CiAgICAgfQogICAgIGVsc2UgaWYgKCpyZXM9PVB5X05vbmUpCiAgICAgICAgIDsKICAgICBlbHNlIGlmIChQeUxvbmdfQ2hlY2soKnJlcykpIHsKICAgICAgICAgLyogbm8gb3ZlcmZsb3cgY2hlY2ssIGJlY2F1c2Ugd2Uga25vdyB0aGF0IHRoZSBzcGFjZSBpcyBlbm91Z2ggKi8KLSAgICAgICAgKigqb3V0cCkrKyA9IChQeV9VTklDT0RFKVB5TG9uZ19BU19MT05HKCpyZXMpOworICAgICAgICAoKm91dHB1dClbKCpvcG9zKSsrXSA9IChQeV9VQ1M0KVB5TG9uZ19BU19MT05HKCpyZXMpOwogICAgIH0KICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2soKnJlcykpIHsKLSAgICAgICAgUHlfc3NpemVfdCByZXBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKCpyZXMpOworICAgICAgICBQeV9zc2l6ZV90IHJlcHNpemU7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoKnJlcykgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIHJlcHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCgqcmVzKTsKICAgICAgICAgaWYgKHJlcHNpemU9PTEpIHsKICAgICAgICAgICAgIC8qIG5vIG92ZXJmbG93IGNoZWNrLCBiZWNhdXNlIHdlIGtub3cgdGhhdCB0aGUgc3BhY2UgaXMgZW5vdWdoICovCi0gICAgICAgICAgICAqKCpvdXRwKSsrID0gKlB5VW5pY29kZV9BU19VTklDT0RFKCpyZXMpOworICAgICAgICAgICAgKCpvdXRwdXQpWygqb3BvcykrK10gPSBQeVVuaWNvZGVfUkVBRF9DSEFSKCpyZXMsIDApOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKHJlcHNpemUhPTApIHsKICAgICAgICAgICAgIC8qIG1vcmUgdGhhbiBvbmUgY2hhcmFjdGVyICovCi0gICAgICAgICAgICBQeV9zc2l6ZV90IHJlcXVpcmVkc2l6ZSA9ICgqb3V0cC1QeVVuaWNvZGVfQVNfVU5JQ09ERSgqb3V0b2JqKSkgKwotICAgICAgICAgICAgICAgIChpbnNpemUgLSAoY3VyaW5wLXN0YXJ0aW5wKSkgKworICAgICAgICAgICAgUHlfc3NpemVfdCByZXF1aXJlZHNpemUgPSAqb3BvcyArCisgICAgICAgICAgICAgICAgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGlucHV0KSAtIGlwb3MpICsKICAgICAgICAgICAgICAgICByZXBzaXplIC0gMTsKLSAgICAgICAgICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX21ha2VzcGFjZShvdXRvYmosIG91dHAsIHJlcXVpcmVkc2l6ZSkpCisgICAgICAgICAgICBQeV9zc2l6ZV90IGk7CisgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9tYWtlc3BhY2Uob3V0cHV0LCBvc2l6ZSwgcmVxdWlyZWRzaXplKSkKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgICAgICBtZW1jcHkoKm91dHAsIFB5VW5pY29kZV9BU19VTklDT0RFKCpyZXMpLCBzaXplb2YoUHlfVU5JQ09ERSkqcmVwc2l6ZSk7Ci0gICAgICAgICAgICAqb3V0cCArPSByZXBzaXplOworICAgICAgICAgICAgZm9yKGkgPSAwOyBpIDwgcmVwc2l6ZTsgaSsrKQorICAgICAgICAgICAgICAgICgqb3V0cHV0KVsoKm9wb3MpKytdID0gUHlVbmljb2RlX1JFQURfQ0hBUigqcmVzLCBpKTsKICAgICAgICAgfQogICAgIH0KICAgICBlbHNlCkBAIC02MDk4LDIwICs4NzI4LDIxIEBACiAgICAgcmV0dXJuIDA7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChjb25zdCBQeV9VTklDT0RFICpwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqbWFwcGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitfUHlVbmljb2RlX1RyYW5zbGF0ZUNoYXJtYXAoUHlPYmplY3QgKmlucHV0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKLSAgICAvKiBvdXRwdXQgb2JqZWN0ICovCi0gICAgUHlPYmplY3QgKnJlcyA9IE5VTEw7Ci0gICAgLyogcG9pbnRlcnMgdG8gdGhlIGJlZ2lubmluZyBhbmQgZW5kKzEgb2YgaW5wdXQgKi8KLSAgICBjb25zdCBQeV9VTklDT0RFICpzdGFydHAgPSBwOwotICAgIGNvbnN0IFB5X1VOSUNPREUgKmVuZHAgPSBwICsgc2l6ZTsKLSAgICAvKiBwb2ludGVyIGludG8gdGhlIG91dHB1dCAqLwotICAgIFB5X1VOSUNPREUgKnN0cjsKKyAgICAvKiBpbnB1dCBvYmplY3QgKi8KKyAgICBjaGFyICppZGF0YTsKKyAgICBQeV9zc2l6ZV90IHNpemUsIGk7CisgICAgaW50IGtpbmQ7CisgICAgLyogb3V0cHV0IGJ1ZmZlciAqLworICAgIFB5X1VDUzQgKm91dHB1dCA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBvc2l6ZTsKKyAgICBQeU9iamVjdCAqcmVzOwogICAgIC8qIGN1cnJlbnQgb3V0cHV0IHBvc2l0aW9uICovCi0gICAgUHlfc3NpemVfdCByZXNwb3MgPSAwOworICAgIFB5X3NzaXplX3Qgb3BvczsKICAgICBjaGFyICpyZWFzb24gPSAiY2hhcmFjdGVyIG1hcHMgdG8gPHVuZGVmaW5lZD4iOwogICAgIFB5T2JqZWN0ICplcnJvckhhbmRsZXIgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwpAQCAtNjEyNSwzOCArODc1Niw1MiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGlucHV0KSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWRhdGEgPSAoY2hhciopUHlVbmljb2RlX0RBVEEoaW5wdXQpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChpbnB1dCk7CisgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGlucHV0KTsKKyAgICBpID0gMDsKKworICAgIGlmIChzaXplID09IDApIHsKKyAgICAgICAgUHlfSU5DUkVGKGlucHV0KTsKKyAgICAgICAgcmV0dXJuIGlucHV0OworICAgIH0KKwogICAgIC8qIGFsbG9jYXRlIGVub3VnaCBmb3IgYSBzaW1wbGUgMToxIHRyYW5zbGF0aW9uIHdpdGhvdXQKICAgICAgICByZXBsYWNlbWVudHMsIGlmIHdlIG5lZWQgbW9yZSwgd2UnbGwgcmVzaXplICovCi0gICAgcmVzID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHNpemUpOwotICAgIGlmIChyZXMgPT0gTlVMTCkKKyAgICBvc2l6ZSA9IHNpemU7CisgICAgb3V0cHV0ID0gUHlNZW1fTWFsbG9jKG9zaXplICogc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICBvcG9zID0gMDsKKyAgICBpZiAob3V0cHV0ID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgZ290byBvbkVycm9yOwotICAgIGlmIChzaXplID09IDApCi0gICAgICAgIHJldHVybiByZXM7Ci0gICAgc3RyID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzKTsKKyAgICB9CiAKLSAgICB3aGlsZSAocDxlbmRwKSB7CisgICAgd2hpbGUgKGk8c2l6ZSkgewogICAgICAgICAvKiB0cnkgdG8gZW5jb2RlIGl0ICovCiAgICAgICAgIFB5T2JqZWN0ICp4ID0gTlVMTDsKLSAgICAgICAgaWYgKGNoYXJtYXB0cmFuc2xhdGVfb3V0cHV0KHN0YXJ0cCwgcCwgc2l6ZSwgbWFwcGluZywgJnJlcywgJnN0ciwgJngpKSB7CisgICAgICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX291dHB1dChpbnB1dCwgaSwgbWFwcGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZvdXRwdXQsICZvc2l6ZSwgJm9wb3MsICZ4KSkgewogICAgICAgICAgICAgUHlfWERFQ1JFRih4KTsKICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgfQogICAgICAgICBQeV9YREVDUkVGKHgpOwogICAgICAgICBpZiAoeCE9UHlfTm9uZSkgLyogaXQgd29ya2VkID0+IGFkanVzdCBpbnB1dCBwb2ludGVyICovCi0gICAgICAgICAgICArK3A7CisgICAgICAgICAgICArK2k7CiAgICAgICAgIGVsc2UgeyAvKiB1bnRyYW5zbGF0YWJsZSBjaGFyYWN0ZXIgKi8KICAgICAgICAgICAgIFB5T2JqZWN0ICpyZXB1bmljb2RlID0gTlVMTDsgLyogaW5pdGlhbGl6ZSB0byBwcmV2ZW50IGdjYyB3YXJuaW5nICovCiAgICAgICAgICAgICBQeV9zc2l6ZV90IHJlcHNpemU7CiAgICAgICAgICAgICBQeV9zc2l6ZV90IG5ld3BvczsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKnVuaTI7CisgICAgICAgICAgICBQeV9zc2l6ZV90IHVuaTI7CiAgICAgICAgICAgICAvKiBzdGFydHBvcyBmb3IgY29sbGVjdGluZyB1bnRyYW5zbGF0YWJsZSBjaGFycyAqLwotICAgICAgICAgICAgY29uc3QgUHlfVU5JQ09ERSAqY29sbHN0YXJ0ID0gcDsKLSAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKmNvbGxlbmQgPSBwKzE7Ci0gICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICpjb2xsOworICAgICAgICAgICAgUHlfc3NpemVfdCBjb2xsc3RhcnQgPSBpOworICAgICAgICAgICAgUHlfc3NpemVfdCBjb2xsZW5kID0gaSsxOworICAgICAgICAgICAgUHlfc3NpemVfdCBjb2xsOwogCiAgICAgICAgICAgICAvKiBmaW5kIGFsbCB1bnRyYW5zbGF0YWJsZSBjaGFyYWN0ZXJzICovCi0gICAgICAgICAgICB3aGlsZSAoY29sbGVuZCA8IGVuZHApIHsKLSAgICAgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9sb29rdXAoKmNvbGxlbmQsIG1hcHBpbmcsICZ4KSkKKyAgICAgICAgICAgIHdoaWxlIChjb2xsZW5kIDwgc2l6ZSkgeworICAgICAgICAgICAgICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX2xvb2t1cChQeVVuaWNvZGVfUkVBRChraW5kLGlkYXRhLCBjb2xsZW5kKSwgbWFwcGluZywgJngpKQogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgUHlfWERFQ1JFRih4KTsKICAgICAgICAgICAgICAgICBpZiAoeCE9UHlfTm9uZSkKQEAgLTYxNzksODAgKzg4MjQsOTQgQEAKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHN3aXRjaCAoa25vd25fZXJyb3JIYW5kbGVyKSB7CiAgICAgICAgICAgICBjYXNlIDE6IC8qIHN0cmljdCAqLwotICAgICAgICAgICAgICAgIHJhaXNlX3RyYW5zbGF0ZV9leGNlcHRpb24oJmV4Yywgc3RhcnRwLCBzaXplLCBjb2xsc3RhcnQtc3RhcnRwLCBjb2xsZW5kLXN0YXJ0cCwgcmVhc29uKTsKKyAgICAgICAgICAgICAgICByYWlzZV90cmFuc2xhdGVfZXhjZXB0aW9uKCZleGMsIGlucHV0LCBjb2xsc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xsZW5kLCByZWFzb24pOwogICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGNhc2UgMjogLyogcmVwbGFjZSAqLwogICAgICAgICAgICAgICAgIC8qIE5vIG5lZWQgdG8gY2hlY2sgZm9yIHNwYWNlLCB0aGlzIGlzIGEgMToxIHJlcGxhY2VtZW50ICovCi0gICAgICAgICAgICAgICAgZm9yIChjb2xsID0gY29sbHN0YXJ0OyBjb2xsPGNvbGxlbmQ7ICsrY29sbCkKLSAgICAgICAgICAgICAgICAgICAgKnN0cisrID0gJz8nOworICAgICAgICAgICAgICAgIGZvciAoY29sbCA9IGNvbGxzdGFydDsgY29sbDxjb2xsZW5kOyBjb2xsKyspCisgICAgICAgICAgICAgICAgICAgIG91dHB1dFtvcG9zKytdID0gJz8nOwogICAgICAgICAgICAgICAgIC8qIGZhbGwgdGhyb3VnaCAqLwogICAgICAgICAgICAgY2FzZSAzOiAvKiBpZ25vcmUgKi8KLSAgICAgICAgICAgICAgICBwID0gY29sbGVuZDsKKyAgICAgICAgICAgICAgICBpID0gY29sbGVuZDsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgNDogLyogeG1sY2hhcnJlZnJlcGxhY2UgKi8KLSAgICAgICAgICAgICAgICAvKiBnZW5lcmF0ZSByZXBsYWNlbWVudCAodGVtcG9yYXJpbHkgKG1pcyl1c2VzIHApICovCi0gICAgICAgICAgICAgICAgZm9yIChwID0gY29sbHN0YXJ0OyBwIDwgY29sbGVuZDsgKytwKSB7CisgICAgICAgICAgICAgICAgLyogZ2VuZXJhdGUgcmVwbGFjZW1lbnQgKHRlbXBvcmFyaWx5IChtaXMpdXNlcyBpKSAqLworICAgICAgICAgICAgICAgIGZvciAoaSA9IGNvbGxzdGFydDsgaSA8IGNvbGxlbmQ7ICsraSkgewogICAgICAgICAgICAgICAgICAgICBjaGFyIGJ1ZmZlclsyKzI5KzErMV07CiAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmNwOwotICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKGJ1ZmZlciwgIiYjJWQ7IiwgKGludCkqcCk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX21ha2VzcGFjZSgmcmVzLCAmc3RyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0ci1QeVVuaWNvZGVfQVNfVU5JQ09ERShyZXMpKStzdHJsZW4oYnVmZmVyKSsoZW5kcC1jb2xsZW5kKSkpCisgICAgICAgICAgICAgICAgICAgIHNwcmludGYoYnVmZmVyLCAiJiMlZDsiLCBQeVVuaWNvZGVfUkVBRChraW5kLCBpZGF0YSwgaSkpOworICAgICAgICAgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9tYWtlc3BhY2UoJm91dHB1dCwgJm9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BvcytzdHJsZW4oYnVmZmVyKSsoc2l6ZS1jb2xsZW5kKSkpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgICAgIGZvciAoY3AgPSBidWZmZXI7ICpjcDsgKytjcCkKLSAgICAgICAgICAgICAgICAgICAgICAgICpzdHIrKyA9ICpjcDsKKyAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dFtvcG9zKytdID0gKmNwOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBwID0gY29sbGVuZDsKKyAgICAgICAgICAgICAgICBpID0gY29sbGVuZDsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgcmVwdW5pY29kZSA9IHVuaWNvZGVfdHJhbnNsYXRlX2NhbGxfZXJyb3JoYW5kbGVyKGVycm9ycywgJmVycm9ySGFuZGxlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhc29uLCBzdGFydHAsIHNpemUsICZleGMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbGxzdGFydC1zdGFydHAsIGNvbGxlbmQtc3RhcnRwLCAmbmV3cG9zKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhc29uLCBpbnB1dCwgJmV4YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sbHN0YXJ0LCBjb2xsZW5kLCAmbmV3cG9zKTsKICAgICAgICAgICAgICAgICBpZiAocmVwdW5pY29kZSA9PSBOVUxMKQogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7Ci0gICAgICAgICAgICAgICAgLyogZ2VuZXJhdGUgcmVwbGFjZW1lbnQgICovCi0gICAgICAgICAgICAgICAgcmVwc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShyZXB1bmljb2RlKTsKLSAgICAgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9tYWtlc3BhY2UoJnJlcywgJnN0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0ci1QeVVuaWNvZGVfQVNfVU5JQ09ERShyZXMpKStyZXBzaXplKyhlbmRwLWNvbGxlbmQpKSkgeworICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocmVwdW5pY29kZSkgPT0gLTEpIHsKICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcHVuaWNvZGUpOwogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGZvciAodW5pMiA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlcHVuaWNvZGUpOyByZXBzaXplLS0+MDsgKyt1bmkyKQotICAgICAgICAgICAgICAgICAgICAqc3RyKysgPSAqdW5pMjsKLSAgICAgICAgICAgICAgICBwID0gc3RhcnRwICsgbmV3cG9zOworICAgICAgICAgICAgICAgIC8qIGdlbmVyYXRlIHJlcGxhY2VtZW50ICAqLworICAgICAgICAgICAgICAgIHJlcHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXB1bmljb2RlKTsKKyAgICAgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9tYWtlc3BhY2UoJm91dHB1dCwgJm9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcG9zK3JlcHNpemUrKHNpemUtY29sbGVuZCkpKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXB1bmljb2RlKTsKKyAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBmb3IgKHVuaTIgPSAwOyByZXBzaXplLS0+MDsgKyt1bmkyKQorICAgICAgICAgICAgICAgICAgICBvdXRwdXRbb3BvcysrXSA9IFB5VW5pY29kZV9SRUFEX0NIQVIocmVwdW5pY29kZSwgdW5pMik7CisgICAgICAgICAgICAgICAgaSA9IG5ld3BvczsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwdW5pY29kZSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9Ci0gICAgLyogUmVzaXplIGlmIHdlIGFsbG9jYXRlZCB0byBtdWNoICovCi0gICAgcmVzcG9zID0gc3RyLVB5VW5pY29kZV9BU19VTklDT0RFKHJlcyk7Ci0gICAgaWYgKHJlc3BvczxQeVVuaWNvZGVfR0VUX1NJWkUocmVzKSkgewotICAgICAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmcmVzLCByZXNwb3MpIDwgMCkKLSAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICB9CisgICAgcmVzID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwgb3V0cHV0LCBvcG9zKTsKKyAgICBpZiAoIXJlcykKKyAgICAgICAgZ290byBvbkVycm9yOworICAgIFB5TWVtX0ZyZWUob3V0cHV0KTsKICAgICBQeV9YREVDUkVGKGV4Yyk7CiAgICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOwogICAgIHJldHVybiByZXM7CiAKICAgb25FcnJvcjoKLSAgICBQeV9YREVDUkVGKHJlcyk7CisgICAgUHlNZW1fRnJlZShvdXRwdXQpOwogICAgIFB5X1hERUNSRUYoZXhjKTsKICAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfVHJhbnNsYXRlKFB5T2JqZWN0ICpzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqbWFwcGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKKy8qIERlcHJlY2F0ZWQuIFVzZSBQeVVuaWNvZGVfVHJhbnNsYXRlIGluc3RlYWQuICovCitQeU9iamVjdCAqCitQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChjb25zdCBQeV9VTklDT0RFICpwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm1hcHBpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgUHlPYmplY3QgKnVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocCwgc2l6ZSk7CisgICAgaWYgKCF1bmljb2RlKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9UcmFuc2xhdGVDaGFybWFwKHVuaWNvZGUsIG1hcHBpbmcsIGVycm9ycyk7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9UcmFuc2xhdGUoUHlPYmplY3QgKnN0ciwKKyAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm1hcHBpbmcsCisgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKICAgICBpZiAoc3RyID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICByZXN1bHQgPSBQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcHBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKKyAgICByZXN1bHQgPSBfUHlVbmljb2RlX1RyYW5zbGF0ZUNoYXJtYXAoc3RyLCBtYXBwaW5nLCBlcnJvcnMpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiByZXN1bHQ7CiAKQEAgLTYyNjEsMTc5ICs4OTIwLDMyNyBAQAogICAgIHJldHVybiBOVUxMOwogfQogCitzdGF0aWMgUHlfVUNTNAorZml4X2RlY2ltYWxfYW5kX3NwYWNlX3RvX2FzY2lpKFB5T2JqZWN0ICpzZWxmKQoreworICAgIC8qIE5vIG5lZWQgdG8gY2FsbCBQeVVuaWNvZGVfUkVBRFkoc2VsZikgYmVjYXVzZSB0aGlzIGZ1bmN0aW9uIGlzIG9ubHkKKyAgICAgICBjYWxsZWQgYXMgYSBjYWxsYmFjayBmcm9tIGZpeHVwKCkgd2hpY2ggZG9lcyBpdCBhbHJlYWR5LiAqLworICAgIGNvbnN0IFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgY29uc3QgaW50IGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICB2b2lkICpkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgUHlfVUNTNCBtYXhjaGFyID0gMCwgY2gsIGZpeGVkOworICAgIGludCBtb2RpZmllZCA9IDA7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgKytpKSB7CisgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICAgIGZpeGVkID0gMDsKKyAgICAgICAgaWYgKGNoID4gMTI3KSB7CisgICAgICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU1NQQUNFKGNoKSkKKyAgICAgICAgICAgICAgICBmaXhlZCA9ICcgJzsKKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGNvbnN0IGludCBkZWNpbWFsID0gUHlfVU5JQ09ERV9UT0RFQ0lNQUwoY2gpOworICAgICAgICAgICAgICAgIGlmIChkZWNpbWFsID49IDApCisgICAgICAgICAgICAgICAgICAgIGZpeGVkID0gJzAnICsgZGVjaW1hbDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChmaXhlZCAhPSAwKSB7CisgICAgICAgICAgICAgICAgbW9kaWZpZWQgPSAxOworICAgICAgICAgICAgICAgIGlmIChmaXhlZCA+IG1heGNoYXIpCisgICAgICAgICAgICAgICAgICAgIG1heGNoYXIgPSBmaXhlZDsKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgaSwgZml4ZWQpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSBpZiAoY2ggPiBtYXhjaGFyKQorICAgICAgICAgICAgICAgIG1heGNoYXIgPSBjaDsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChjaCA+IG1heGNoYXIpCisgICAgICAgICAgICBtYXhjaGFyID0gY2g7CisgICAgfQorCisgICAgcmV0dXJuIChtb2RpZmllZCkgPyBtYXhjaGFyIDogMDsKK30KKworUHlPYmplY3QgKgorX1B5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsQW5kU3BhY2VUb0FTQ0lJKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSh1bmljb2RlKSA8PSAxMjcpIHsKKyAgICAgICAgLyogSWYgdGhlIHN0cmluZyBpcyBhbHJlYWR5IEFTQ0lJLCBqdXN0IHJldHVybiB0aGUgc2FtZSBzdHJpbmcgKi8KKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGUpOworICAgICAgICByZXR1cm4gdW5pY29kZTsKKyAgICB9CisgICAgcmV0dXJuIGZpeHVwKHVuaWNvZGUsIGZpeF9kZWNpbWFsX2FuZF9zcGFjZV90b19hc2NpaSk7Cit9CisKIFB5T2JqZWN0ICoKIFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsVG9BU0NJSShQeV9VTklDT0RFICpzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuZ3RoKQogewotICAgIFB5T2JqZWN0ICpyZXN1bHQ7Ci0gICAgUHlfVU5JQ09ERSAqcDsgLyogd3JpdGUgcG9pbnRlciBpbnRvIHJlc3VsdCAqLworICAgIFB5T2JqZWN0ICpkZWNpbWFsOwogICAgIFB5X3NzaXplX3QgaTsKLSAgICAvKiBDb3B5IHRvIGEgbmV3IHN0cmluZyAqLwotICAgIHJlc3VsdCA9IChQeU9iamVjdCAqKV9QeVVuaWNvZGVfTmV3KGxlbmd0aCk7Ci0gICAgUHlfVU5JQ09ERV9DT1BZKFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCksIHMsIGxlbmd0aCk7Ci0gICAgaWYgKHJlc3VsdCA9PSBOVUxMKQotICAgICAgICByZXR1cm4gcmVzdWx0OwotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpOwotICAgIC8qIEl0ZXJhdGUgb3ZlciBjb2RlIHBvaW50cyAqLworICAgIFB5X1VDUzQgbWF4Y2hhcjsKKyAgICBlbnVtIFB5VW5pY29kZV9LaW5kIGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKworICAgIG1heGNoYXIgPSAxMjc7CiAgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPXNbaV07CisgICAgICAgIFB5X1VOSUNPREUgY2ggPSBzW2ldOwogICAgICAgICBpZiAoY2ggPiAxMjcpIHsKICAgICAgICAgICAgIGludCBkZWNpbWFsID0gUHlfVU5JQ09ERV9UT0RFQ0lNQUwoY2gpOwogICAgICAgICAgICAgaWYgKGRlY2ltYWwgPj0gMCkKLSAgICAgICAgICAgICAgICBwW2ldID0gJzAnICsgZGVjaW1hbDsKKyAgICAgICAgICAgICAgICBjaCA9ICcwJyArIGRlY2ltYWw7CisgICAgICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIGNoKTsKICAgICAgICAgfQogICAgIH0KLSAgICByZXR1cm4gcmVzdWx0OworCisgICAgLyogQ29weSB0byBhIG5ldyBzdHJpbmcgKi8KKyAgICBkZWNpbWFsID0gUHlVbmljb2RlX05ldyhsZW5ndGgsIG1heGNoYXIpOworICAgIGlmIChkZWNpbWFsID09IE5VTEwpCisgICAgICAgIHJldHVybiBkZWNpbWFsOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChkZWNpbWFsKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoZGVjaW1hbCk7CisgICAgLyogSXRlcmF0ZSBvdmVyIGNvZGUgcG9pbnRzICovCisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIFB5X1VOSUNPREUgY2ggPSBzW2ldOworICAgICAgICBpZiAoY2ggPiAxMjcpIHsKKyAgICAgICAgICAgIGludCBkZWNpbWFsID0gUHlfVU5JQ09ERV9UT0RFQ0lNQUwoY2gpOworICAgICAgICAgICAgaWYgKGRlY2ltYWwgPj0gMCkKKyAgICAgICAgICAgICAgICBjaCA9ICcwJyArIGRlY2ltYWw7CisgICAgICAgIH0KKyAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGksIGNoKTsKKyAgICB9CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KGRlY2ltYWwpOwogfQogLyogLS0tIERlY2ltYWwgRW5jb2RlciAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLWludCBQeVVuaWNvZGVfRW5jb2RlRGVjaW1hbChQeV9VTklDT0RFICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuZ3RoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKm91dHB1dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitpbnQKK1B5VW5pY29kZV9FbmNvZGVEZWNpbWFsKFB5X1VOSUNPREUgKnMsCisgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKm91dHB1dCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKLSAgICBQeV9VTklDT0RFICpwLCAqZW5kOwotICAgIFB5T2JqZWN0ICplcnJvckhhbmRsZXIgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwotICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nID0gImRlY2ltYWwiOwotICAgIGNvbnN0IGNoYXIgKnJlYXNvbiA9ICJpbnZhbGlkIGRlY2ltYWwgVW5pY29kZSBzdHJpbmciOwotICAgIC8qIHRoZSBmb2xsb3dpbmcgdmFyaWFibGUgaXMgdXNlZCBmb3IgY2FjaGluZyBzdHJpbmcgY29tcGFyaXNvbnMKLSAgICAgKiAtMT1ub3QgaW5pdGlhbGl6ZWQsIDA9dW5rbm93biwgMT1zdHJpY3QsIDI9cmVwbGFjZSwgMz1pZ25vcmUsIDQ9eG1sY2hhcnJlZnJlcGxhY2UgKi8KLSAgICBpbnQga25vd25fZXJyb3JIYW5kbGVyID0gLTE7CisgICAgUHlPYmplY3QgKnVuaWNvZGU7CisgICAgUHlfc3NpemVfdCBpOworICAgIGVudW0gUHlVbmljb2RlX0tpbmQga2luZDsKKyAgICB2b2lkICpkYXRhOwogCiAgICAgaWYgKG91dHB1dCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAKLSAgICBwID0gczsKLSAgICBlbmQgPSBzICsgbGVuZ3RoOwotICAgIHdoaWxlIChwIDwgZW5kKSB7Ci0gICAgICAgIHJlZ2lzdGVyIFB5X1VOSUNPREUgY2ggPSAqcDsKKyAgICB1bmljb2RlID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHMsIGxlbmd0aCk7CisgICAgaWYgKHVuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkgeworICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1bmljb2RlKTsKKworICAgIGZvciAoaT0wOyBpIDwgbGVuZ3RoOyApIHsKKyAgICAgICAgUHlPYmplY3QgKmV4YzsKKyAgICAgICAgUHlfVUNTNCBjaDsKICAgICAgICAgaW50IGRlY2ltYWw7Ci0gICAgICAgIFB5T2JqZWN0ICpyZXB1bmljb2RlOwotICAgICAgICBQeV9zc2l6ZV90IHJlcHNpemU7Ci0gICAgICAgIFB5X3NzaXplX3QgbmV3cG9zOwotICAgICAgICBQeV9VTklDT0RFICp1bmkyOwotICAgICAgICBQeV9VTklDT0RFICpjb2xsc3RhcnQ7Ci0gICAgICAgIFB5X1VOSUNPREUgKmNvbGxlbmQ7CisgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3M7CisKKyAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKIAogICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU1NQQUNFKGNoKSkgewogICAgICAgICAgICAgKm91dHB1dCsrID0gJyAnOwotICAgICAgICAgICAgKytwOworICAgICAgICAgICAgaSsrOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KICAgICAgICAgZGVjaW1hbCA9IFB5X1VOSUNPREVfVE9ERUNJTUFMKGNoKTsKICAgICAgICAgaWYgKGRlY2ltYWwgPj0gMCkgewogICAgICAgICAgICAgKm91dHB1dCsrID0gJzAnICsgZGVjaW1hbDsKLSAgICAgICAgICAgICsrcDsKKyAgICAgICAgICAgIGkrKzsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAgIGlmICgwIDwgY2ggJiYgY2ggPCAyNTYpIHsKICAgICAgICAgICAgICpvdXRwdXQrKyA9IChjaGFyKWNoOwotICAgICAgICAgICAgKytwOworICAgICAgICAgICAgaSsrOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KLSAgICAgICAgLyogQWxsIG90aGVyIGNoYXJhY3RlcnMgYXJlIGNvbnNpZGVyZWQgdW5lbmNvZGFibGUgKi8KLSAgICAgICAgY29sbHN0YXJ0ID0gcDsKLSAgICAgICAgZm9yIChjb2xsZW5kID0gcCsxOyBjb2xsZW5kIDwgZW5kOyBjb2xsZW5kKyspIHsKLSAgICAgICAgICAgIGlmICgoMCA8ICpjb2xsZW5kICYmICpjb2xsZW5kIDwgMjU2KSB8fAotICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfSVNTUEFDRSgqY29sbGVuZCkgfHwKLSAgICAgICAgICAgICAgICAwIDw9IFB5X1VOSUNPREVfVE9ERUNJTUFMKCpjb2xsZW5kKSkKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgICAgICAvKiBjYWNoZSBjYWxsYmFjayBuYW1lIGxvb2t1cAotICAgICAgICAgKiAoaWYgbm90IGRvbmUgeWV0LCBpLmUuIGl0J3MgdGhlIGZpcnN0IGVycm9yKSAqLwotICAgICAgICBpZiAoa25vd25fZXJyb3JIYW5kbGVyPT0tMSkgewotICAgICAgICAgICAgaWYgKChlcnJvcnM9PU5VTEwpIHx8ICghc3RyY21wKGVycm9ycywgInN0cmljdCIpKSkKLSAgICAgICAgICAgICAgICBrbm93bl9lcnJvckhhbmRsZXIgPSAxOwotICAgICAgICAgICAgZWxzZSBpZiAoIXN0cmNtcChlcnJvcnMsICJyZXBsYWNlIikpCi0gICAgICAgICAgICAgICAga25vd25fZXJyb3JIYW5kbGVyID0gMjsKLSAgICAgICAgICAgIGVsc2UgaWYgKCFzdHJjbXAoZXJyb3JzLCAiaWdub3JlIikpCi0gICAgICAgICAgICAgICAga25vd25fZXJyb3JIYW5kbGVyID0gMzsKLSAgICAgICAgICAgIGVsc2UgaWYgKCFzdHJjbXAoZXJyb3JzLCAieG1sY2hhcnJlZnJlcGxhY2UiKSkKLSAgICAgICAgICAgICAgICBrbm93bl9lcnJvckhhbmRsZXIgPSA0OwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIGtub3duX2Vycm9ySGFuZGxlciA9IDA7Ci0gICAgICAgIH0KLSAgICAgICAgc3dpdGNoIChrbm93bl9lcnJvckhhbmRsZXIpIHsKLSAgICAgICAgY2FzZSAxOiAvKiBzdHJpY3QgKi8KLSAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oJmV4YywgZW5jb2RpbmcsIHMsIGxlbmd0aCwgY29sbHN0YXJ0LXMsIGNvbGxlbmQtcywgcmVhc29uKTsKLSAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgY2FzZSAyOiAvKiByZXBsYWNlICovCi0gICAgICAgICAgICBmb3IgKHAgPSBjb2xsc3RhcnQ7IHAgPCBjb2xsZW5kOyArK3ApCi0gICAgICAgICAgICAgICAgKm91dHB1dCsrID0gJz8nOwotICAgICAgICAgICAgLyogZmFsbCB0aHJvdWdoICovCi0gICAgICAgIGNhc2UgMzogLyogaWdub3JlICovCi0gICAgICAgICAgICBwID0gY29sbGVuZDsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIDQ6IC8qIHhtbGNoYXJyZWZyZXBsYWNlICovCi0gICAgICAgICAgICAvKiBnZW5lcmF0ZSByZXBsYWNlbWVudCAodGVtcG9yYXJpbHkgKG1pcyl1c2VzIHApICovCi0gICAgICAgICAgICBmb3IgKHAgPSBjb2xsc3RhcnQ7IHAgPCBjb2xsZW5kOyArK3ApCi0gICAgICAgICAgICAgICAgb3V0cHV0ICs9IHNwcmludGYob3V0cHV0LCAiJiMlZDsiLCAoaW50KSpwKTsKLSAgICAgICAgICAgIHAgPSBjb2xsZW5kOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICByZXB1bmljb2RlID0gdW5pY29kZV9lbmNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nLCByZWFzb24sIHMsIGxlbmd0aCwgJmV4YywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xsc3RhcnQtcywgY29sbGVuZC1zLCAmbmV3cG9zKTsKLSAgICAgICAgICAgIGlmIChyZXB1bmljb2RlID09IE5VTEwpCi0gICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwotICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2socmVwdW5pY29kZSkpIHsKLSAgICAgICAgICAgICAgICAvKiBCeXRlIHJlc3VsdHMgbm90IHN1cHBvcnRlZCwgc2luY2UgdGhleSBoYXZlIG5vIGRlY2ltYWwgcHJvcGVydHkuICovCi0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImVycm9yIGhhbmRsZXIgc2hvdWxkIHJldHVybiB1bmljb2RlIik7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcHVuaWNvZGUpOwotICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIGdlbmVyYXRlIHJlcGxhY2VtZW50ICAqLwotICAgICAgICAgICAgcmVwc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShyZXB1bmljb2RlKTsKLSAgICAgICAgICAgIGZvciAodW5pMiA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlcHVuaWNvZGUpOyByZXBzaXplLS0+MDsgKyt1bmkyKSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjaCA9ICp1bmkyOwotICAgICAgICAgICAgICAgIGlmIChQeV9VTklDT0RFX0lTU1BBQ0UoY2gpKQotICAgICAgICAgICAgICAgICAgICAqb3V0cHV0KysgPSAnICc7Ci0gICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgIGRlY2ltYWwgPSBQeV9VTklDT0RFX1RPREVDSU1BTChjaCk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChkZWNpbWFsID49IDApCi0gICAgICAgICAgICAgICAgICAgICAgICAqb3V0cHV0KysgPSAnMCcgKyBkZWNpbWFsOwotICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgwIDwgY2ggJiYgY2ggPCAyNTYpCi0gICAgICAgICAgICAgICAgICAgICAgICAqb3V0cHV0KysgPSAoY2hhciljaDsKLSAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwdW5pY29kZSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLCBsZW5ndGgsIGNvbGxzdGFydC1zLCBjb2xsZW5kLXMsIHJlYXNvbik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBwID0gcyArIG5ld3BvczsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXB1bmljb2RlKTsKLSAgICAgICAgfQorCisgICAgICAgIHN0YXJ0cG9zID0gaTsKKyAgICAgICAgZXhjID0gTlVMTDsKKyAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbigmZXhjLCAiZGVjaW1hbCIsIHVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRwb3MsIHN0YXJ0cG9zKzEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImludmFsaWQgZGVjaW1hbCBVbmljb2RlIHN0cmluZyIpOworICAgICAgICBQeV9YREVDUkVGKGV4Yyk7CisgICAgICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KICAgICAvKiAwLXRlcm1pbmF0ZSB0aGUgb3V0cHV0IHN0cmluZyAqLwogICAgICpvdXRwdXQrKyA9ICdcMCc7Ci0gICAgUHlfWERFQ1JFRihleGMpOwotICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKKyAgICBQeV9ERUNSRUYodW5pY29kZSk7CiAgICAgcmV0dXJuIDA7Ci0KLSAgb25FcnJvcjoKLSAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOwotICAgIHJldHVybiAtMTsKIH0KIAogLyogLS0tIEhlbHBlcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLSNpbmNsdWRlICJzdHJpbmdsaWIvdW5pY29kZWRlZnMuaCIKLSNpbmNsdWRlICJzdHJpbmdsaWIvZmFzdHNlYXJjaC5oIgorc3RhdGljIFB5X3NzaXplX3QKK2FueV9maW5kX3NsaWNlKGludCBkaXJlY3Rpb24sIFB5T2JqZWN0KiBzMSwgUHlPYmplY3QqIHMyLAorICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwKKyAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kKQoreworICAgIGludCBraW5kMSwga2luZDIsIGtpbmQ7CisgICAgdm9pZCAqYnVmMSwgKmJ1ZjI7CisgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yLCByZXN1bHQ7CiAKLSNpbmNsdWRlICJzdHJpbmdsaWIvY291bnQuaCIKLSNpbmNsdWRlICJzdHJpbmdsaWIvZmluZC5oIgotI2luY2x1ZGUgInN0cmluZ2xpYi9wYXJ0aXRpb24uaCIKLSNpbmNsdWRlICJzdHJpbmdsaWIvc3BsaXQuaCIKKyAgICBraW5kMSA9IFB5VW5pY29kZV9LSU5EKHMxKTsKKyAgICBraW5kMiA9IFB5VW5pY29kZV9LSU5EKHMyKTsKKyAgICBraW5kID0ga2luZDEgPiBraW5kMiA/IGtpbmQxIDoga2luZDI7CisgICAgYnVmMSA9IFB5VW5pY29kZV9EQVRBKHMxKTsKKyAgICBidWYyID0gUHlVbmljb2RlX0RBVEEoczIpOworICAgIGlmIChraW5kMSAhPSBraW5kKQorICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoczEsIGtpbmQpOworICAgIGlmICghYnVmMSkKKyAgICAgICAgcmV0dXJuIC0yOworICAgIGlmIChraW5kMiAhPSBraW5kKQorICAgICAgICBidWYyID0gX1B5VW5pY29kZV9Bc0tpbmQoczIsIGtpbmQpOworICAgIGlmICghYnVmMikgeworICAgICAgICBpZiAoa2luZDEgIT0ga2luZCkgUHlNZW1fRnJlZShidWYxKTsKKyAgICAgICAgcmV0dXJuIC0yOworICAgIH0KKyAgICBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoczEpOworICAgIGxlbjIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzMik7CiAKLSNkZWZpbmUgX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcKLSNkZWZpbmUgX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nTG9jYWxlIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmdMb2NhbGUKLSNpbmNsdWRlICJzdHJpbmdsaWIvbG9jYWxldXRpbC5oIgorICAgIGlmIChkaXJlY3Rpb24gPiAwKSB7CisgICAgICAgIHN3aXRjaCAoa2luZCkgeworICAgICAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzMSkgJiYgUHlVbmljb2RlX0lTX0FTQ0lJKHMyKSkKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBhc2NpaWxpYl9maW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJlc3VsdCA9IHVjczFsaWJfZmluZF9zbGljZShidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBzdGFydCwgZW5kKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICAgICAgcmVzdWx0ID0gdWNzMmxpYl9maW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgICAgICByZXN1bHQgPSB1Y3M0bGliX2ZpbmRfc2xpY2UoYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgc3RhcnQsIGVuZCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIGFzc2VydCgwKTsgcmVzdWx0ID0gLTI7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHN3aXRjaCAoa2luZCkgeworICAgICAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzMSkgJiYgUHlVbmljb2RlX0lTX0FTQ0lJKHMyKSkKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBhc2NpaWxpYl9yZmluZF9zbGljZShidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBzdGFydCwgZW5kKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHQgPSB1Y3MxbGliX3JmaW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgICAgICByZXN1bHQgPSB1Y3MybGliX3JmaW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgICAgICByZXN1bHQgPSB1Y3M0bGliX3JmaW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBhc3NlcnQoMCk7IHJlc3VsdCA9IC0yOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CisKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitQeV9zc2l6ZV90CitfUHlVbmljb2RlX0luc2VydFRob3VzYW5kc0dyb3VwaW5nKAorICAgIFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90IGluZGV4LAorICAgIFB5X3NzaXplX3Qgbl9idWZmZXIsCisgICAgdm9pZCAqZGlnaXRzLCBQeV9zc2l6ZV90IG5fZGlnaXRzLAorICAgIFB5X3NzaXplX3QgbWluX3dpZHRoLAorICAgIGNvbnN0IGNoYXIgKmdyb3VwaW5nLCBQeU9iamVjdCAqdGhvdXNhbmRzX3NlcCwKKyAgICBQeV9VQ1M0ICptYXhjaGFyKQoreworICAgIHVuc2lnbmVkIGludCBraW5kLCB0aG91c2FuZHNfc2VwX2tpbmQ7CisgICAgY2hhciAqZGF0YSwgKnRob3VzYW5kc19zZXBfZGF0YTsKKyAgICBQeV9zc2l6ZV90IHRob3VzYW5kc19zZXBfbGVuOworICAgIFB5X3NzaXplX3QgbGVuOworCisgICAgaWYgKHVuaWNvZGUgIT0gTlVMTCkgeworICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgICAgIGRhdGEgPSAoY2hhciAqKSBQeVVuaWNvZGVfREFUQSh1bmljb2RlKSArIGluZGV4ICoga2luZDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfMUJZVEVfS0lORDsKKyAgICAgICAgZGF0YSA9IE5VTEw7CisgICAgfQorICAgIHRob3VzYW5kc19zZXBfa2luZCA9IFB5VW5pY29kZV9LSU5EKHRob3VzYW5kc19zZXApOworICAgIHRob3VzYW5kc19zZXBfZGF0YSA9IFB5VW5pY29kZV9EQVRBKHRob3VzYW5kc19zZXApOworICAgIHRob3VzYW5kc19zZXBfbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodGhvdXNhbmRzX3NlcCk7CisgICAgaWYgKHVuaWNvZGUgIT0gTlVMTCAmJiB0aG91c2FuZHNfc2VwX2tpbmQgIT0ga2luZCkgeworICAgICAgICBpZiAodGhvdXNhbmRzX3NlcF9raW5kIDwga2luZCkgeworICAgICAgICAgICAgdGhvdXNhbmRzX3NlcF9kYXRhID0gX1B5VW5pY29kZV9Bc0tpbmQodGhvdXNhbmRzX3NlcCwga2luZCk7CisgICAgICAgICAgICBpZiAoIXRob3VzYW5kc19zZXBfZGF0YSkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBkYXRhID0gX1B5VW5pY29kZV9Bc0tpbmQodW5pY29kZSwgdGhvdXNhbmRzX3NlcF9raW5kKTsKKyAgICAgICAgICAgIGlmICghZGF0YSkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICBpZiAodW5pY29kZSAhPSBOVUxMICYmIFB5VW5pY29kZV9JU19BU0NJSSh1bmljb2RlKSkKKyAgICAgICAgICAgIGxlbiA9IGFzY2lpbGliX0luc2VydFRob3VzYW5kc0dyb3VwaW5nKAorICAgICAgICAgICAgICAgIChQeV9VQ1MxICopIGRhdGEsIG5fYnVmZmVyLCAoUHlfVUNTMSAqKSBkaWdpdHMsIG5fZGlnaXRzLAorICAgICAgICAgICAgICAgIG1pbl93aWR0aCwgZ3JvdXBpbmcsCisgICAgICAgICAgICAgICAgKFB5X1VDUzEgKikgdGhvdXNhbmRzX3NlcF9kYXRhLCB0aG91c2FuZHNfc2VwX2xlbik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGxlbiA9IHVjczFsaWJfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcoCisgICAgICAgICAgICAgICAgKFB5X1VDUzEqKWRhdGEsIG5fYnVmZmVyLCAoUHlfVUNTMSopZGlnaXRzLCBuX2RpZ2l0cywKKyAgICAgICAgICAgICAgICBtaW5fd2lkdGgsIGdyb3VwaW5nLAorICAgICAgICAgICAgICAgIChQeV9VQ1MxICopIHRob3VzYW5kc19zZXBfZGF0YSwgdGhvdXNhbmRzX3NlcF9sZW4pOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICBsZW4gPSB1Y3MybGliX0luc2VydFRob3VzYW5kc0dyb3VwaW5nKAorICAgICAgICAgICAgKFB5X1VDUzIgKikgZGF0YSwgbl9idWZmZXIsIChQeV9VQ1MyICopIGRpZ2l0cywgbl9kaWdpdHMsCisgICAgICAgICAgICBtaW5fd2lkdGgsIGdyb3VwaW5nLAorICAgICAgICAgICAgKFB5X1VDUzIgKikgdGhvdXNhbmRzX3NlcF9kYXRhLCB0aG91c2FuZHNfc2VwX2xlbik7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIGxlbiA9IHVjczRsaWJfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcoCisgICAgICAgICAgICAoUHlfVUNTNCAqKSBkYXRhLCBuX2J1ZmZlciwgKFB5X1VDUzQgKikgZGlnaXRzLCBuX2RpZ2l0cywKKyAgICAgICAgICAgIG1pbl93aWR0aCwgZ3JvdXBpbmcsCisgICAgICAgICAgICAoUHlfVUNTNCAqKSB0aG91c2FuZHNfc2VwX2RhdGEsIHRob3VzYW5kc19zZXBfbGVuKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDApOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICh1bmljb2RlICE9IE5VTEwgJiYgdGhvdXNhbmRzX3NlcF9raW5kICE9IGtpbmQpIHsKKyAgICAgICAgaWYgKHRob3VzYW5kc19zZXBfa2luZCA8IGtpbmQpCisgICAgICAgICAgICBQeU1lbV9GcmVlKHRob3VzYW5kc19zZXBfZGF0YSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIFB5TWVtX0ZyZWUoZGF0YSk7CisgICAgfQorICAgIGlmICh1bmljb2RlID09IE5VTEwpIHsKKyAgICAgICAgKm1heGNoYXIgPSAxMjc7CisgICAgICAgIGlmIChsZW4gIT0gbl9kaWdpdHMpIHsKKyAgICAgICAgICAgICptYXhjaGFyID0gUHlfTUFYKCptYXhjaGFyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHRob3VzYW5kc19zZXApKTsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gbGVuOworfQorCiAKIC8qIGhlbHBlciBtYWNybyB0byBmaXh1cCBzdGFydC9lbmQgc2xpY2UgdmFsdWVzICovCiAjZGVmaW5lIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIGxlbikgICAgICAgICBcCkBAIC02NDUwLDcyICs5MjU3LDEwNCBAQAogICAgICAgICAgICAgc3RhcnQgPSAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0KIAotLyogX1B5X1VOSUNPREVfTkVYVCBpcyBhIHByaXZhdGUgbWFjcm8gdXNlZCB0byByZXRyaWV2ZSB0aGUgY2hhcmFjdGVyIHBvaW50ZWQKLSAqIGJ5ICdwdHInLCBwb3NzaWJseSBjb21iaW5pbmcgc3Vycm9nYXRlIHBhaXJzIG9uIG5hcnJvdyBidWlsZHMuCi0gKiAncHRyJyBhbmQgJ2VuZCcgbXVzdCBiZSBQeV9VTklDT0RFKiwgd2l0aCAncHRyJyBwb2ludGluZyBhdCB0aGUgY2hhcmFjdGVyCi0gKiB0aGF0IHNob3VsZCBiZSByZXR1cm5lZCBhbmQgJ2VuZCcgcG9pbnRpbmcgdG8gdGhlIGVuZCBvZiB0aGUgYnVmZmVyLgotICogKCdlbmQnIGlzIHVzZWQgb24gbmFycm93IGJ1aWxkcyB0byBkZXRlY3QgYSBsb25lIHN1cnJvZ2F0ZSBhdCB0aGUKLSAqIGVuZCBvZiB0aGUgYnVmZmVyIHRoYXQgc2hvdWxkIGJlIHJldHVybmVkIHVuY2hhbmdlZC4pCi0gKiBUaGUgcHRyIGFuZCBlbmQgYXJndW1lbnRzIHNob3VsZCBiZSBzaWRlLWVmZmVjdCBmcmVlIGFuZCBwdHIgbXVzdCBhbiBsdmFsdWUuCi0gKiBUaGUgdHlwZSBvZiB0aGUgcmV0dXJuZWQgY2hhciBpcyBhbHdheXMgUHlfVUNTNC4KLSAqCi0gKiBOb3RlOiB0aGUgbWFjcm8gYWR2YW5jZXMgcHRyIHRvIG5leHQgY2hhciwgc28gaXQgbWlnaHQgaGF2ZSBzaWRlLWVmZmVjdHMKLSAqICAgICAgIChlc3BlY2lhbGx5IGlmIHVzZWQgd2l0aCBvdGhlciBtYWNyb3MpLgotICovCi0KLS8qIGhlbHBlciBtYWNyb3MgdXNlZCBieSBfUHlfVU5JQ09ERV9ORVhUICovCi0jZGVmaW5lIF9QeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKGNoKSAoMHhEODAwIDw9IGNoICYmIGNoIDw9IDB4REJGRikKLSNkZWZpbmUgX1B5X1VOSUNPREVfSVNfTE9XX1NVUlJPR0FURShjaCkgKDB4REMwMCA8PSBjaCAmJiBjaCA8PSAweERGRkYpCi0vKiBKb2luIHR3byBzdXJyb2dhdGUgY2hhcmFjdGVycyBhbmQgcmV0dXJuIGEgc2luZ2xlIFB5X1VDUzQgdmFsdWUuICovCi0jZGVmaW5lIF9QeV9VTklDT0RFX0pPSU5fU1VSUk9HQVRFUyhoaWdoLCBsb3cpICBcCi0gICAgKCgoKChQeV9VQ1M0KShoaWdoKSAmIDB4MDNGRikgPDwgMTApIHwgICAgICBcCi0gICAgICAoKFB5X1VDUzQpKGxvdykgJiAweDAzRkYpKSArIDB4MTAwMDApCi0KLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSNkZWZpbmUgX1B5X1VOSUNPREVfTkVYVChwdHIsIGVuZCkgKihwdHIpKysKLSNlbHNlCi0jZGVmaW5lIF9QeV9VTklDT0RFX05FWFQocHRyLCBlbmQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICgoKF9QeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKCoocHRyKSkgJiYgKHB0cikgPCAoZW5kKSkgJiYgICAgICBcCi0gICAgICAgIF9QeV9VTklDT0RFX0lTX0xPV19TVVJST0dBVEUoKHB0cilbMV0pKSA/ICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgKChwdHIpICs9IDIsX1B5X1VOSUNPREVfSk9JTl9TVVJST0dBVEVTKChwdHIpWy0yXSwgKHB0cilbLTFdKSkgOiBcCi0gICAgICAgKFB5X1VDUzQpKihwdHIpKyspCi0jZW5kaWYKLQotUHlfc3NpemVfdCBQeVVuaWNvZGVfQ291bnQoUHlPYmplY3QgKnN0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWJzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQpCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfQ291bnQoUHlPYmplY3QgKnN0ciwKKyAgICAgICAgICAgICAgICBQeU9iamVjdCAqc3Vic3RyLAorICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQpCiB7CiAgICAgUHlfc3NpemVfdCByZXN1bHQ7Ci0gICAgUHlVbmljb2RlT2JqZWN0KiBzdHJfb2JqOwotICAgIFB5VW5pY29kZU9iamVjdCogc3ViX29iajsKKyAgICBQeU9iamVjdCogc3RyX29iajsKKyAgICBQeU9iamVjdCogc3ViX29iajsKKyAgICBpbnQga2luZDEsIGtpbmQyLCBraW5kOworICAgIHZvaWQgKmJ1ZjEgPSBOVUxMLCAqYnVmMiA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yOwogCi0gICAgc3RyX29iaiA9IChQeVVuaWNvZGVPYmplY3QqKSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOworICAgIHN0cl9vYmogPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwogICAgIGlmICghc3RyX29iaikKICAgICAgICAgcmV0dXJuIC0xOwotICAgIHN1Yl9vYmogPSAoUHlVbmljb2RlT2JqZWN0KikgUHlVbmljb2RlX0Zyb21PYmplY3Qoc3Vic3RyKTsKKyAgICBzdWJfb2JqID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3Vic3RyKTsKICAgICBpZiAoIXN1Yl9vYmopIHsKICAgICAgICAgUHlfREVDUkVGKHN0cl9vYmopOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3ViX29iaikgPT0gLTEgfHwgUHlVbmljb2RlX1JFQURZKHN0cl9vYmopID09IC0xKSB7CisgICAgICAgIFB5X0RFQ1JFRihzdWJfb2JqKTsKKyAgICAgICAgUHlfREVDUkVGKHN0cl9vYmopOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQogCi0gICAgQURKVVNUX0lORElDRVMoc3RhcnQsIGVuZCwgc3RyX29iai0+bGVuZ3RoKTsKLSAgICByZXN1bHQgPSBzdHJpbmdsaWJfY291bnQoCi0gICAgICAgIHN0cl9vYmotPnN0ciArIHN0YXJ0LCBlbmQgLSBzdGFydCwgc3ViX29iai0+c3RyLCBzdWJfb2JqLT5sZW5ndGgsCi0gICAgICAgIFBZX1NTSVpFX1RfTUFYCi0gICAgICAgICk7CisgICAga2luZDEgPSBQeVVuaWNvZGVfS0lORChzdHJfb2JqKTsKKyAgICBraW5kMiA9IFB5VW5pY29kZV9LSU5EKHN1Yl9vYmopOworICAgIGtpbmQgPSBraW5kMSA+IGtpbmQyID8ga2luZDEgOiBraW5kMjsKKyAgICBidWYxID0gUHlVbmljb2RlX0RBVEEoc3RyX29iaik7CisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIGJ1ZjEgPSBfUHlVbmljb2RlX0FzS2luZChzdHJfb2JqLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjEpCisgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICBidWYyID0gUHlVbmljb2RlX0RBVEEoc3ViX29iaik7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIGJ1ZjIgPSBfUHlVbmljb2RlX0FzS2luZChzdWJfb2JqLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjIpCisgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyX29iaik7CisgICAgbGVuMiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN1Yl9vYmopOworCisgICAgQURKVVNUX0lORElDRVMoc3RhcnQsIGVuZCwgbGVuMSk7CisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzdHJfb2JqKSAmJiBQeVVuaWNvZGVfSVNfQVNDSUkoc3ViX29iaikpCisgICAgICAgICAgICByZXN1bHQgPSBhc2NpaWxpYl9jb3VudCgKKyAgICAgICAgICAgICAgICAoKFB5X1VDUzEqKWJ1ZjEpICsgc3RhcnQsIGVuZCAtIHN0YXJ0LAorICAgICAgICAgICAgICAgIGJ1ZjIsIGxlbjIsIFBZX1NTSVpFX1RfTUFYCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmVzdWx0ID0gdWNzMWxpYl9jb3VudCgKKyAgICAgICAgICAgICAgICAoKFB5X1VDUzEqKWJ1ZjEpICsgc3RhcnQsIGVuZCAtIHN0YXJ0LAorICAgICAgICAgICAgICAgIGJ1ZjIsIGxlbjIsIFBZX1NTSVpFX1RfTUFYCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgcmVzdWx0ID0gdWNzMmxpYl9jb3VudCgKKyAgICAgICAgICAgICgoUHlfVUNTMiopYnVmMSkgKyBzdGFydCwgZW5kIC0gc3RhcnQsCisgICAgICAgICAgICBidWYyLCBsZW4yLCBQWV9TU0laRV9UX01BWAorICAgICAgICAgICAgKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmVzdWx0ID0gdWNzNGxpYl9jb3VudCgKKyAgICAgICAgICAgICgoUHlfVUNTNCopYnVmMSkgKyBzdGFydCwgZW5kIC0gc3RhcnQsCisgICAgICAgICAgICBidWYyLCBsZW4yLCBQWV9TU0laRV9UX01BWAorICAgICAgICAgICAgKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDApOyByZXN1bHQgPSAwOworICAgIH0KIAogICAgIFB5X0RFQ1JFRihzdWJfb2JqKTsKICAgICBQeV9ERUNSRUYoc3RyX29iaik7CiAKKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYxKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYyKTsKKwogICAgIHJldHVybiByZXN1bHQ7CisgIG9uRXJyb3I6CisgICAgUHlfREVDUkVGKHN1Yl9vYmopOworICAgIFB5X0RFQ1JFRihzdHJfb2JqKTsKKyAgICBpZiAoa2luZDEgIT0ga2luZCAmJiBidWYxKQorICAgICAgICBQeU1lbV9GcmVlKGJ1ZjEpOworICAgIGlmIChraW5kMiAhPSBraW5kICYmIGJ1ZjIpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CisgICAgcmV0dXJuIC0xOwogfQogCi1QeV9zc2l6ZV90IFB5VW5pY29kZV9GaW5kKFB5T2JqZWN0ICpzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kLAotICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZGlyZWN0aW9uKQorUHlfc3NpemVfdAorUHlVbmljb2RlX0ZpbmQoUHlPYmplY3QgKnN0ciwKKyAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWIsCisgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LAorICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQsCisgICAgICAgICAgICAgICBpbnQgZGlyZWN0aW9uKQogewogICAgIFB5X3NzaXplX3QgcmVzdWx0OwogCkBAIC02NTI3LDE5ICs5MzY2LDE1IEBACiAgICAgICAgIFB5X0RFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gLTI7CiAgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3ViKSA9PSAtMSB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA9PSAtMSkgeworICAgICAgICBQeV9ERUNSRUYoc3ViKTsKKyAgICAgICAgUHlfREVDUkVGKHN0cik7CisgICAgICAgIHJldHVybiAtMjsKKyAgICB9CiAKLSAgICBpZiAoZGlyZWN0aW9uID4gMCkKLSAgICAgICAgcmVzdWx0ID0gc3RyaW5nbGliX2ZpbmRfc2xpY2UoCi0gICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLCBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSwKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN1YiksIFB5VW5pY29kZV9HRVRfU0laRShzdWIpLAotICAgICAgICAgICAgc3RhcnQsIGVuZAotICAgICAgICAgICAgKTsKLSAgICBlbHNlCi0gICAgICAgIHJlc3VsdCA9IHN0cmluZ2xpYl9yZmluZF9zbGljZSgKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc3ViKSwgUHlVbmljb2RlX0dFVF9TSVpFKHN1YiksCi0gICAgICAgICAgICBzdGFydCwgZW5kCi0gICAgICAgICAgICApOworICAgIHJlc3VsdCA9IGFueV9maW5kX3NsaWNlKGRpcmVjdGlvbiwKKyAgICAgICAgc3RyLCBzdWIsIHN0YXJ0LCBlbmQKKyAgICAgICAgKTsKIAogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIFB5X0RFQ1JFRihzdWIpOwpAQCAtNjU0NywzNyArOTM4MiwxMDQgQEAKICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1zdGF0aWMKLWludCB0YWlsbWF0Y2goUHlVbmljb2RlT2JqZWN0ICpzZWxmLAotICAgICAgICAgICAgICBQeVVuaWNvZGVPYmplY3QgKnN1YnN0cmluZywKLSAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwKLSAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQsCi0gICAgICAgICAgICAgIGludCBkaXJlY3Rpb24pCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfRmluZENoYXIoUHlPYmplY3QgKnN0ciwgUHlfVUNTNCBjaCwKKyAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCwKKyAgICAgICAgICAgICAgICAgICBpbnQgZGlyZWN0aW9uKQogewotICAgIGlmIChzdWJzdHJpbmctPmxlbmd0aCA9PSAwKQorICAgIGludCBraW5kOworICAgIFB5X3NzaXplX3QgcmVzdWx0OworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3RyKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIC0yOworICAgIGlmIChzdGFydCA8IDAgfHwgZW5kIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSW5kZXhFcnJvciwgInN0cmluZyBpbmRleCBvdXQgb2YgcmFuZ2UiKTsKKyAgICAgICAgcmV0dXJuIC0yOworICAgIH0KKyAgICBpZiAoZW5kID4gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSkKKyAgICAgICAgZW5kID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc3RyKTsKKyAgICByZXN1bHQgPSBmaW5kY2hhcihQeVVuaWNvZGVfMUJZVEVfREFUQShzdHIpICsga2luZCpzdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICBraW5kLCBlbmQtc3RhcnQsIGNoLCBkaXJlY3Rpb24pOworICAgIGlmIChyZXN1bHQgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiBzdGFydCArIHJlc3VsdDsKK30KKworc3RhdGljIGludAordGFpbG1hdGNoKFB5T2JqZWN0ICpzZWxmLAorICAgICAgICAgIFB5T2JqZWN0ICpzdWJzdHJpbmcsCisgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwKKyAgICAgICAgICBQeV9zc2l6ZV90IGVuZCwKKyAgICAgICAgICBpbnQgZGlyZWN0aW9uKQoreworICAgIGludCBraW5kX3NlbGY7CisgICAgaW50IGtpbmRfc3ViOworICAgIHZvaWQgKmRhdGFfc2VsZjsKKyAgICB2b2lkICpkYXRhX3N1YjsKKyAgICBQeV9zc2l6ZV90IG9mZnNldDsKKyAgICBQeV9zc2l6ZV90IGk7CisgICAgUHlfc3NpemVfdCBlbmRfc3ViOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSB8fAorICAgICAgICBQeVVuaWNvZGVfUkVBRFkoc3Vic3RyaW5nKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoc3Vic3RyaW5nKSA9PSAwKQogICAgICAgICByZXR1cm4gMTsKIAotICAgIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIHNlbGYtPmxlbmd0aCk7Ci0gICAgZW5kIC09IHN1YnN0cmluZy0+bGVuZ3RoOworICAgIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpKTsKKyAgICBlbmQgLT0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3Vic3RyaW5nKTsKICAgICBpZiAoZW5kIDwgc3RhcnQpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgaWYgKGRpcmVjdGlvbiA+IDApIHsKLSAgICAgICAgaWYgKFB5X1VOSUNPREVfTUFUQ0goc2VsZiwgZW5kLCBzdWJzdHJpbmcpKQorICAgIGtpbmRfc2VsZiA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgIGRhdGFfc2VsZiA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOworICAgIGtpbmRfc3ViID0gUHlVbmljb2RlX0tJTkQoc3Vic3RyaW5nKTsKKyAgICBkYXRhX3N1YiA9IFB5VW5pY29kZV9EQVRBKHN1YnN0cmluZyk7CisgICAgZW5kX3N1YiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN1YnN0cmluZykgLSAxOworCisgICAgaWYgKGRpcmVjdGlvbiA+IDApCisgICAgICAgIG9mZnNldCA9IGVuZDsKKyAgICBlbHNlCisgICAgICAgIG9mZnNldCA9IHN0YXJ0OworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmRfc2VsZiwgZGF0YV9zZWxmLCBvZmZzZXQpID09CisgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmRfc3ViLCBkYXRhX3N1YiwgMCkgJiYKKyAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZF9zZWxmLCBkYXRhX3NlbGYsIG9mZnNldCArIGVuZF9zdWIpID09CisgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmRfc3ViLCBkYXRhX3N1YiwgZW5kX3N1YikpIHsKKyAgICAgICAgLyogSWYgYm90aCBhcmUgb2YgdGhlIHNhbWUga2luZCwgbWVtY21wIGlzIHN1ZmZpY2llbnQgKi8KKyAgICAgICAgaWYgKGtpbmRfc2VsZiA9PSBraW5kX3N1YikgeworICAgICAgICAgICAgcmV0dXJuICEgbWVtY21wKChjaGFyICopZGF0YV9zZWxmICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9mZnNldCAqIFB5VW5pY29kZV9LSU5EKHN1YnN0cmluZykpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFfc3ViLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN1YnN0cmluZykgKgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfS0lORChzdWJzdHJpbmcpKTsKKyAgICAgICAgfQorICAgICAgICAvKiBvdGhlcndpc2Ugd2UgaGF2ZSB0byBjb21wYXJlIGVhY2ggY2hhcmFjdGVyIGJ5IGZpcnN0IGFjY2VzaW5nIGl0ICovCisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgLyogV2UgZG8gbm90IG5lZWQgdG8gY29tcGFyZSAwIGFuZCBsZW4oc3Vic3RyaW5nKS0xIGJlY2F1c2UKKyAgICAgICAgICAgICAgIHRoZSBpZiBzdGF0ZW1lbnQgYWJvdmUgZW5zdXJlZCBhbHJlYWR5IHRoYXQgdGhleSBhcmUgZXF1YWwKKyAgICAgICAgICAgICAgIHdoZW4gd2UgZW5kIHVwIGhlcmUuICovCisgICAgICAgICAgICAvLyBUT0RPOiBob25vciBkaXJlY3Rpb24gYW5kIGRvIGEgZm9yd2FyZCBvciBiYWNrd2FyZHMgc2VhcmNoCisgICAgICAgICAgICBmb3IgKGkgPSAxOyBpIDwgZW5kX3N1YjsgKytpKSB7CisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmRfc2VsZiwgZGF0YV9zZWxmLCBvZmZzZXQgKyBpKSAhPQorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kX3N1YiwgZGF0YV9zdWIsIGkpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIHJldHVybiAxOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGlmIChQeV9VTklDT0RFX01BVENIKHNlbGYsIHN0YXJ0LCBzdWJzdHJpbmcpKQotICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIH0KICAgICB9CiAKICAgICByZXR1cm4gMDsKIH0KIAotUHlfc3NpemVfdCBQeVVuaWNvZGVfVGFpbG1hdGNoKFB5T2JqZWN0ICpzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnN1YnN0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBkaXJlY3Rpb24pCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfVGFpbG1hdGNoKFB5T2JqZWN0ICpzdHIsCisgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWJzdHIsCisgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kLAorICAgICAgICAgICAgICAgICAgICBpbnQgZGlyZWN0aW9uKQogewogICAgIFB5X3NzaXplX3QgcmVzdWx0OwogCkBAIC02NTkwLDggKzk0OTIsNyBAQAogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogCi0gICAgcmVzdWx0ID0gdGFpbG1hdGNoKChQeVVuaWNvZGVPYmplY3QgKilzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgIChQeVVuaWNvZGVPYmplY3QgKilzdWJzdHIsCisgICAgcmVzdWx0ID0gdGFpbG1hdGNoKHN0ciwgc3Vic3RyLAogICAgICAgICAgICAgICAgICAgICAgICBzdGFydCwgZW5kLCBkaXJlY3Rpb24pOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIFB5X0RFQ1JFRihzdWJzdHIpOwpAQCAtNjYwMSwxNjggKzk1MDIsMzIzIEBACiAvKiBBcHBseSBmaXhmY3QgZmlsdGVyIHRvIHRoZSBVbmljb2RlIG9iamVjdCBzZWxmIGFuZCByZXR1cm4gYQogICAgcmVmZXJlbmNlIHRvIHRoZSBtb2RpZmllZCBvYmplY3QgKi8KIAotc3RhdGljCi1QeU9iamVjdCAqZml4dXAoUHlVbmljb2RlT2JqZWN0ICpzZWxmLAotICAgICAgICAgICAgICAgIGludCAoKmZpeGZjdCkoUHlVbmljb2RlT2JqZWN0ICpzKSkKK3N0YXRpYyBQeU9iamVjdCAqCitmaXh1cChQeU9iamVjdCAqc2VsZiwKKyAgICAgIFB5X1VDUzQgKCpmaXhmY3QpKFB5T2JqZWN0ICpzKSkKIHsKKyAgICBQeU9iamVjdCAqdTsKKyAgICBQeV9VQ1M0IG1heGNoYXJfb2xkLCBtYXhjaGFyX25ldyA9IDA7CisgICAgUHlPYmplY3QgKnY7CiAKLSAgICBQeVVuaWNvZGVPYmplY3QgKnU7Ci0KLSAgICB1ID0gKFB5VW5pY29kZU9iamVjdCopIFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBzZWxmLT5sZW5ndGgpOworICAgIHUgPSBfUHlVbmljb2RlX0NvcHkoc2VsZik7CiAgICAgaWYgKHUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbWF4Y2hhcl9vbGQgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUodSk7CiAKLSAgICBQeV9VTklDT0RFX0NPUFkodS0+c3RyLCBzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCk7CisgICAgLyogZml4IGZ1bmN0aW9ucyByZXR1cm4gdGhlIG5ldyBtYXhpbXVtIGNoYXJhY3RlciBpbiBhIHN0cmluZywKKyAgICAgICBpZiB0aGUga2luZCBvZiB0aGUgcmVzdWx0aW5nIHVuaWNvZGUgb2JqZWN0IGRvZXMgbm90IGNoYW5nZSwKKyAgICAgICBldmVyeXRoaW5nIGlzIGZpbmUuICBPdGhlcndpc2Ugd2UgbmVlZCB0byBjaGFuZ2UgdGhlIHN0cmluZyBraW5kCisgICAgICAgYW5kIHJlLXJ1biB0aGUgZml4IGZ1bmN0aW9uLiAqLworICAgIG1heGNoYXJfbmV3ID0gZml4ZmN0KHUpOwogCi0gICAgaWYgKCFmaXhmY3QodSkgJiYgUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKLSAgICAgICAgLyogZml4ZmN0IHNob3VsZCByZXR1cm4gVFJVRSBpZiBpdCBtb2RpZmllZCB0aGUgYnVmZmVyLiBJZgotICAgICAgICAgICBGQUxTRSwgcmV0dXJuIGEgcmVmZXJlbmNlIHRvIHRoZSBvcmlnaW5hbCBidWZmZXIgaW5zdGVhZAotICAgICAgICAgICAodG8gc2F2ZSBzcGFjZSwgbm90IHRpbWUpICovCi0gICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKKyAgICBpZiAobWF4Y2hhcl9uZXcgPT0gMCkgeworICAgICAgICAvKiBubyBjaGFuZ2VzICovOworICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRih1KTsKKyAgICAgICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKKyAgICAgICAgICAgIHJldHVybiBzZWxmOworICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJldHVybiB1OworICAgIH0KKworICAgIGlmIChtYXhjaGFyX25ldyA8PSAxMjcpCisgICAgICAgIG1heGNoYXJfbmV3ID0gMTI3OworICAgIGVsc2UgaWYgKG1heGNoYXJfbmV3IDw9IDI1NSkKKyAgICAgICAgbWF4Y2hhcl9uZXcgPSAyNTU7CisgICAgZWxzZSBpZiAobWF4Y2hhcl9uZXcgPD0gNjU1MzUpCisgICAgICAgIG1heGNoYXJfbmV3ID0gNjU1MzU7CisgICAgZWxzZQorICAgICAgICBtYXhjaGFyX25ldyA9IE1BWF9VTklDT0RFOworCisgICAgaWYgKG1heGNoYXJfbmV3ID09IG1heGNoYXJfb2xkKQorICAgICAgICByZXR1cm4gdTsKKworICAgIC8qIEluIGNhc2UgdGhlIG1heGltdW0gY2hhcmFjdGVyIGNoYW5nZWQsIHdlIG5lZWQgdG8KKyAgICAgICBjb252ZXJ0IHRoZSBzdHJpbmcgdG8gdGhlIG5ldyBjYXRlZ29yeS4gKi8KKyAgICB2ID0gUHlVbmljb2RlX05ldyhQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSwgbWF4Y2hhcl9uZXcpOworICAgIGlmICh2ID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHUpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0Kikgc2VsZjsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiAoUHlPYmplY3QqKSB1OworICAgIGlmIChtYXhjaGFyX25ldyA+IG1heGNoYXJfb2xkKSB7CisgICAgICAgIC8qIElmIHRoZSBtYXhjaGFyIGluY3JlYXNlZCBzbyB0aGF0IHRoZSBraW5kIGNoYW5nZWQsIG5vdCBhbGwKKyAgICAgICAgICAgY2hhcmFjdGVycyBhcmUgcmVwcmVzZW50YWJsZSBhbnltb3JlIGFuZCB3ZSBuZWVkIHRvIGZpeCB0aGUKKyAgICAgICAgICAgc3RyaW5nIGFnYWluLiBUaGlzIG9ubHkgaGFwcGVucyBpbiB2ZXJ5IGZldyBjYXNlcy4gKi8KKyAgICAgICAgY29weV9jaGFyYWN0ZXJzKHYsIDAsIHNlbGYsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpKTsKKyAgICAgICAgbWF4Y2hhcl9vbGQgPSBmaXhmY3Qodik7CisgICAgICAgIGFzc2VydChtYXhjaGFyX29sZCA+IDAgJiYgbWF4Y2hhcl9vbGQgPD0gbWF4Y2hhcl9uZXcpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgY29weV9jaGFyYWN0ZXJzKHYsIDAsIHUsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpKTsKKyAgICB9CisgICAgUHlfREVDUkVGKHUpOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kodiwgMSkpOworICAgIHJldHVybiB2OwogfQogCi1zdGF0aWMKLWludCBmaXh1cHBlcihQeVVuaWNvZGVPYmplY3QgKnNlbGYpCitzdGF0aWMgUHlPYmplY3QgKgorYXNjaWlfdXBwZXJfb3JfbG93ZXIoUHlPYmplY3QgKnNlbGYsIGludCBsb3dlcikKIHsKLSAgICBQeV9zc2l6ZV90IGxlbiA9IHNlbGYtPmxlbmd0aDsKLSAgICBQeV9VTklDT0RFICpzID0gc2VsZi0+c3RyOwotICAgIGludCBzdGF0dXMgPSAwOworICAgIFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgY2hhciAqcmVzZGF0YSwgKmRhdGEgPSBQeVVuaWNvZGVfREFUQShzZWxmKTsKKyAgICBQeU9iamVjdCAqcmVzOwogCi0gICAgd2hpbGUgKGxlbi0tID4gMCkgewotICAgICAgICByZWdpc3RlciBQeV9VTklDT0RFIGNoOworICAgIHJlcyA9IFB5VW5pY29kZV9OZXcobGVuLCAxMjcpOworICAgIGlmIChyZXMgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzZGF0YSA9IFB5VW5pY29kZV9EQVRBKHJlcyk7CisgICAgaWYgKGxvd2VyKQorICAgICAgICBfUHlfYnl0ZXNfbG93ZXIocmVzZGF0YSwgZGF0YSwgbGVuKTsKKyAgICBlbHNlCisgICAgICAgIF9QeV9ieXRlc191cHBlcihyZXNkYXRhLCBkYXRhLCBsZW4pOworICAgIHJldHVybiByZXM7Cit9CiAKLSAgICAgICAgY2ggPSBQeV9VTklDT0RFX1RPVVBQRVIoKnMpOwotICAgICAgICBpZiAoY2ggIT0gKnMpIHsKLSAgICAgICAgICAgIHN0YXR1cyA9IDE7Ci0gICAgICAgICAgICAqcyA9IGNoOworc3RhdGljIFB5X1VDUzQKK2hhbmRsZV9jYXBpdGFsX3NpZ21hKGludCBraW5kLCB2b2lkICpkYXRhLCBQeV9zc2l6ZV90IGxlbmd0aCwgUHlfc3NpemVfdCBpKQoreworICAgIFB5X3NzaXplX3QgajsKKyAgICBpbnQgZmluYWxfc2lnbWE7CisgICAgUHlfVUNTNCBjOworICAgIC8qIFUrMDNBMyBpcyBpbiB0aGUgRmluYWxfU2lnbWEgY29udGV4dCB3aGVuLCBpdCBpcyBmb3VuZCBsaWtlIHRoaXM6CisKKyAgICAgXHB7Y2FzZWR9XHB7Y2FzZS1pZ25vcmFibGV9KlUrMDNBMyEoXHB7Y2FzZS1pZ25vcmFibGV9Klxwe2Nhc2VkfSkKKworICAgIHdoZXJlICEgaXMgYSBuZWdhdGlvbiBhbmQgXHB7eHh4fSBpcyBhIGNoYXJhY3RlciB3aXRoIHByb3BlcnR5IHh4eC4KKyAgICAqLworICAgIGZvciAoaiA9IGkgLSAxOyBqID49IDA7IGotLSkgeworICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaik7CisgICAgICAgIGlmICghX1B5VW5pY29kZV9Jc0Nhc2VJZ25vcmFibGUoYykpCisgICAgICAgICAgICBicmVhazsKKyAgICB9CisgICAgZmluYWxfc2lnbWEgPSBqID49IDAgJiYgX1B5VW5pY29kZV9Jc0Nhc2VkKGMpOworICAgIGlmIChmaW5hbF9zaWdtYSkgeworICAgICAgICBmb3IgKGogPSBpICsgMTsgaiA8IGxlbmd0aDsgaisrKSB7CisgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaik7CisgICAgICAgICAgICBpZiAoIV9QeVVuaWNvZGVfSXNDYXNlSWdub3JhYmxlKGMpKQorICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0gICAgICAgIHMrKzsKKyAgICAgICAgZmluYWxfc2lnbWEgPSBqID09IGxlbmd0aCB8fCAhX1B5VW5pY29kZV9Jc0Nhc2VkKGMpOwogICAgIH0KLQotICAgIHJldHVybiBzdGF0dXM7CisgICAgcmV0dXJuIChmaW5hbF9zaWdtYSkgPyAweDNDMiA6IDB4M0MzOwogfQogCi1zdGF0aWMKLWludCBmaXhsb3dlcihQeVVuaWNvZGVPYmplY3QgKnNlbGYpCitzdGF0aWMgaW50Citsb3dlcl91Y3M0KGludCBraW5kLCB2b2lkICpkYXRhLCBQeV9zc2l6ZV90IGxlbmd0aCwgUHlfc3NpemVfdCBpLAorICAgICAgICAgICBQeV9VQ1M0IGMsIFB5X1VDUzQgKm1hcHBlZCkKIHsKLSAgICBQeV9zc2l6ZV90IGxlbiA9IHNlbGYtPmxlbmd0aDsKLSAgICBQeV9VTklDT0RFICpzID0gc2VsZi0+c3RyOwotICAgIGludCBzdGF0dXMgPSAwOworICAgIC8qIE9ic2N1cmUgc3BlY2lhbCBjYXNlLiAqLworICAgIGlmIChjID09IDB4M0EzKSB7CisgICAgICAgIG1hcHBlZFswXSA9IGhhbmRsZV9jYXBpdGFsX3NpZ21hKGtpbmQsIGRhdGEsIGxlbmd0aCwgaSk7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICByZXR1cm4gX1B5VW5pY29kZV9Ub0xvd2VyRnVsbChjLCBtYXBwZWQpOworfQogCi0gICAgd2hpbGUgKGxlbi0tID4gMCkgewotICAgICAgICByZWdpc3RlciBQeV9VTklDT0RFIGNoOworc3RhdGljIFB5X3NzaXplX3QKK2RvX2NhcGl0YWxpemUoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgbGVuZ3RoLCBQeV9VQ1M0ICpyZXMsIFB5X1VDUzQgKm1heGNoYXIpCit7CisgICAgUHlfc3NpemVfdCBpLCBrID0gMDsKKyAgICBpbnQgbl9yZXMsIGo7CisgICAgUHlfVUNTNCBjLCBtYXBwZWRbM107CiAKLSAgICAgICAgY2ggPSBQeV9VTklDT0RFX1RPTE9XRVIoKnMpOwotICAgICAgICBpZiAoY2ggIT0gKnMpIHsKLSAgICAgICAgICAgIHN0YXR1cyA9IDE7Ci0gICAgICAgICAgICAqcyA9IGNoOworICAgIGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCAwKTsKKyAgICBuX3JlcyA9IF9QeVVuaWNvZGVfVG9VcHBlckZ1bGwoYywgbWFwcGVkKTsKKyAgICBmb3IgKGogPSAwOyBqIDwgbl9yZXM7IGorKykgeworICAgICAgICBpZiAobWFwcGVkW2pdID4gKm1heGNoYXIpCisgICAgICAgICAgICAqbWF4Y2hhciA9IG1hcHBlZFtqXTsKKyAgICAgICAgcmVzW2srK10gPSBtYXBwZWRbal07CisgICAgfQorICAgIGZvciAoaSA9IDE7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICAgIG5fcmVzID0gbG93ZXJfdWNzNChraW5kLCBkYXRhLCBsZW5ndGgsIGksIGMsIG1hcHBlZCk7CisgICAgICAgIGZvciAoaiA9IDA7IGogPCBuX3JlczsgaisrKSB7CisgICAgICAgICAgICBpZiAobWFwcGVkW2pdID4gKm1heGNoYXIpCisgICAgICAgICAgICAgICAgKm1heGNoYXIgPSBtYXBwZWRbal07CisgICAgICAgICAgICByZXNbaysrXSA9IG1hcHBlZFtqXTsKICAgICAgICAgfQotICAgICAgICBzKys7CiAgICAgfQotCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICByZXR1cm4gazsKIH0KIAotc3RhdGljCi1pbnQgZml4c3dhcGNhc2UoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQotewotICAgIFB5X3NzaXplX3QgbGVuID0gc2VsZi0+bGVuZ3RoOwotICAgIFB5X1VOSUNPREUgKnMgPSBzZWxmLT5zdHI7Ci0gICAgaW50IHN0YXR1cyA9IDA7CitzdGF0aWMgUHlfc3NpemVfdAorZG9fc3dhcGNhc2UoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgbGVuZ3RoLCBQeV9VQ1M0ICpyZXMsIFB5X1VDUzQgKm1heGNoYXIpIHsKKyAgICBQeV9zc2l6ZV90IGksIGsgPSAwOwogCi0gICAgd2hpbGUgKGxlbi0tID4gMCkgewotICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU1VQUEVSKCpzKSkgewotICAgICAgICAgICAgKnMgPSBQeV9VTklDT0RFX1RPTE9XRVIoKnMpOwotICAgICAgICAgICAgc3RhdHVzID0gMTsKLSAgICAgICAgfSBlbHNlIGlmIChQeV9VTklDT0RFX0lTTE9XRVIoKnMpKSB7Ci0gICAgICAgICAgICAqcyA9IFB5X1VOSUNPREVfVE9VUFBFUigqcyk7Ci0gICAgICAgICAgICBzdGF0dXMgPSAxOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBQeV9VQ1M0IGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSwgbWFwcGVkWzNdOworICAgICAgICBpbnQgbl9yZXMsIGo7CisgICAgICAgIGlmIChQeV9VTklDT0RFX0lTVVBQRVIoYykpIHsKKyAgICAgICAgICAgIG5fcmVzID0gbG93ZXJfdWNzNChraW5kLCBkYXRhLCBsZW5ndGgsIGksIGMsIG1hcHBlZCk7CiAgICAgICAgIH0KLSAgICAgICAgcysrOwotICAgIH0KLQotICAgIHJldHVybiBzdGF0dXM7Ci19Ci0KLXN0YXRpYwotaW50IGZpeGNhcGl0YWxpemUoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQotewotICAgIFB5X3NzaXplX3QgbGVuID0gc2VsZi0+bGVuZ3RoOwotICAgIFB5X1VOSUNPREUgKnMgPSBzZWxmLT5zdHI7Ci0gICAgaW50IHN0YXR1cyA9IDA7Ci0KLSAgICBpZiAobGVuID09IDApCi0gICAgICAgIHJldHVybiAwOwotICAgIGlmICghUHlfVU5JQ09ERV9JU1VQUEVSKCpzKSkgewotICAgICAgICAqcyA9IFB5X1VOSUNPREVfVE9VUFBFUigqcyk7Ci0gICAgICAgIHN0YXR1cyA9IDE7Ci0gICAgfQotICAgIHMrKzsKLSAgICB3aGlsZSAoLS1sZW4gPiAwKSB7Ci0gICAgICAgIGlmICghUHlfVU5JQ09ERV9JU0xPV0VSKCpzKSkgewotICAgICAgICAgICAgKnMgPSBQeV9VTklDT0RFX1RPTE9XRVIoKnMpOwotICAgICAgICAgICAgc3RhdHVzID0gMTsKKyAgICAgICAgZWxzZSBpZiAoUHlfVU5JQ09ERV9JU0xPV0VSKGMpKSB7CisgICAgICAgICAgICBuX3JlcyA9IF9QeVVuaWNvZGVfVG9VcHBlckZ1bGwoYywgbWFwcGVkKTsKICAgICAgICAgfQotICAgICAgICBzKys7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgbl9yZXMgPSAxOworICAgICAgICAgICAgbWFwcGVkWzBdID0gYzsKKyAgICAgICAgfQorICAgICAgICBmb3IgKGogPSAwOyBqIDwgbl9yZXM7IGorKykgeworICAgICAgICAgICAgaWYgKG1hcHBlZFtqXSA+ICptYXhjaGFyKQorICAgICAgICAgICAgICAgICptYXhjaGFyID0gbWFwcGVkW2pdOworICAgICAgICAgICAgcmVzW2srK10gPSBtYXBwZWRbal07CisgICAgICAgIH0KICAgICB9Ci0gICAgcmV0dXJuIHN0YXR1czsKKyAgICByZXR1cm4gazsKIH0KIAotc3RhdGljCi1pbnQgZml4dGl0bGUoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQorc3RhdGljIFB5X3NzaXplX3QKK2RvX3VwcGVyX29yX2xvd2VyKGludCBraW5kLCB2b2lkICpkYXRhLCBQeV9zc2l6ZV90IGxlbmd0aCwgUHlfVUNTNCAqcmVzLAorICAgICAgICAgICAgICAgICAgUHlfVUNTNCAqbWF4Y2hhciwgaW50IGxvd2VyKQogewotICAgIHJlZ2lzdGVyIFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICByZWdpc3RlciBQeV9VTklDT0RFICplOworICAgIFB5X3NzaXplX3QgaSwgayA9IDA7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSksIG1hcHBlZFszXTsKKyAgICAgICAgaW50IG5fcmVzLCBqOworICAgICAgICBpZiAobG93ZXIpCisgICAgICAgICAgICBuX3JlcyA9IGxvd2VyX3VjczQoa2luZCwgZGF0YSwgbGVuZ3RoLCBpLCBjLCBtYXBwZWQpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBuX3JlcyA9IF9QeVVuaWNvZGVfVG9VcHBlckZ1bGwoYywgbWFwcGVkKTsKKyAgICAgICAgZm9yIChqID0gMDsgaiA8IG5fcmVzOyBqKyspIHsKKyAgICAgICAgICAgIGlmIChtYXBwZWRbal0gPiAqbWF4Y2hhcikKKyAgICAgICAgICAgICAgICAqbWF4Y2hhciA9IG1hcHBlZFtqXTsKKyAgICAgICAgICAgIHJlc1trKytdID0gbWFwcGVkW2pdOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBrOworfQorCitzdGF0aWMgUHlfc3NpemVfdAorZG9fdXBwZXIoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgbGVuZ3RoLCBQeV9VQ1M0ICpyZXMsIFB5X1VDUzQgKm1heGNoYXIpCit7CisgICAgcmV0dXJuIGRvX3VwcGVyX29yX2xvd2VyKGtpbmQsIGRhdGEsIGxlbmd0aCwgcmVzLCBtYXhjaGFyLCAwKTsKK30KKworc3RhdGljIFB5X3NzaXplX3QKK2RvX2xvd2VyKGludCBraW5kLCB2b2lkICpkYXRhLCBQeV9zc2l6ZV90IGxlbmd0aCwgUHlfVUNTNCAqcmVzLCBQeV9VQ1M0ICptYXhjaGFyKQoreworICAgIHJldHVybiBkb191cHBlcl9vcl9sb3dlcihraW5kLCBkYXRhLCBsZW5ndGgsIHJlcywgbWF4Y2hhciwgMSk7Cit9CisKK3N0YXRpYyBQeV9zc2l6ZV90Citkb19jYXNlZm9sZChpbnQga2luZCwgdm9pZCAqZGF0YSwgUHlfc3NpemVfdCBsZW5ndGgsIFB5X1VDUzQgKnJlcywgUHlfVUNTNCAqbWF4Y2hhcikKK3sKKyAgICBQeV9zc2l6ZV90IGksIGsgPSAwOworCisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIFB5X1VDUzQgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICBQeV9VQ1M0IG1hcHBlZFszXTsKKyAgICAgICAgaW50IGosIG5fcmVzID0gX1B5VW5pY29kZV9Ub0ZvbGRlZEZ1bGwoYywgbWFwcGVkKTsKKyAgICAgICAgZm9yIChqID0gMDsgaiA8IG5fcmVzOyBqKyspIHsKKyAgICAgICAgICAgIGlmIChtYXBwZWRbal0gPiAqbWF4Y2hhcikKKyAgICAgICAgICAgICAgICAqbWF4Y2hhciA9IG1hcHBlZFtqXTsKKyAgICAgICAgICAgIHJlc1trKytdID0gbWFwcGVkW2pdOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBrOworfQorCitzdGF0aWMgUHlfc3NpemVfdAorZG9fdGl0bGUoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgbGVuZ3RoLCBQeV9VQ1M0ICpyZXMsIFB5X1VDUzQgKm1heGNoYXIpCit7CisgICAgUHlfc3NpemVfdCBpLCBrID0gMDsKICAgICBpbnQgcHJldmlvdXNfaXNfY2FzZWQ7CiAKLSAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPSBQeV9VTklDT0RFX1RPVElUTEUoKnApOwotICAgICAgICBpZiAoKnAgIT0gY2gpIHsKLSAgICAgICAgICAgICpwID0gY2g7Ci0gICAgICAgICAgICByZXR1cm4gMTsKLSAgICAgICAgfQotICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKICAgICBwcmV2aW91c19pc19jYXNlZCA9IDA7Ci0gICAgZm9yICg7IHAgPCBlOyBwKyspIHsKLSAgICAgICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSBjaCA9ICpwOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgICAgUHlfVUNTNCBtYXBwZWRbM107CisgICAgICAgIGludCBuX3JlcywgajsKIAogICAgICAgICBpZiAocHJldmlvdXNfaXNfY2FzZWQpCi0gICAgICAgICAgICAqcCA9IFB5X1VOSUNPREVfVE9MT1dFUihjaCk7CisgICAgICAgICAgICBuX3JlcyA9IGxvd2VyX3VjczQoa2luZCwgZGF0YSwgbGVuZ3RoLCBpLCBjLCBtYXBwZWQpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICAqcCA9IFB5X1VOSUNPREVfVE9USVRMRShjaCk7CisgICAgICAgICAgICBuX3JlcyA9IF9QeVVuaWNvZGVfVG9UaXRsZUZ1bGwoYywgbWFwcGVkKTsKIAotICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU0xPV0VSKGNoKSB8fAotICAgICAgICAgICAgUHlfVU5JQ09ERV9JU1VQUEVSKGNoKSB8fAotICAgICAgICAgICAgUHlfVU5JQ09ERV9JU1RJVExFKGNoKSkKLSAgICAgICAgICAgIHByZXZpb3VzX2lzX2Nhc2VkID0gMTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgcHJldmlvdXNfaXNfY2FzZWQgPSAwOworICAgICAgICBmb3IgKGogPSAwOyBqIDwgbl9yZXM7IGorKykgeworICAgICAgICAgICAgaWYgKG1hcHBlZFtqXSA+ICptYXhjaGFyKQorICAgICAgICAgICAgICAgICptYXhjaGFyID0gbWFwcGVkW2pdOworICAgICAgICAgICAgcmVzW2srK10gPSBtYXBwZWRbal07CisgICAgICAgIH0KKworICAgICAgICBwcmV2aW91c19pc19jYXNlZCA9IF9QeVVuaWNvZGVfSXNDYXNlZChjKTsKICAgICB9Ci0gICAgcmV0dXJuIDE7CisgICAgcmV0dXJuIGs7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitjYXNlX29wZXJhdGlvbihQeU9iamVjdCAqc2VsZiwKKyAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKCpwZXJmb3JtKShpbnQsIHZvaWQgKiwgUHlfc3NpemVfdCwgUHlfVUNTNCAqLCBQeV9VQ1M0ICopKQoreworICAgIFB5T2JqZWN0ICpyZXMgPSBOVUxMOworICAgIFB5X3NzaXplX3QgbGVuZ3RoLCBuZXdsZW5ndGggPSAwOworICAgIGludCBraW5kLCBvdXRraW5kOworICAgIHZvaWQgKmRhdGEsICpvdXRkYXRhOworICAgIFB5X1VDUzQgbWF4Y2hhciA9IDAsICp0bXAsICp0bXBlbmQ7CisKKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKHNlbGYpKTsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgdG1wID0gUHlNZW1fTUFMTE9DKHNpemVvZihQeV9VQ1M0KSAqIDMgKiBsZW5ndGgpOworICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisgICAgbmV3bGVuZ3RoID0gcGVyZm9ybShraW5kLCBkYXRhLCBsZW5ndGgsIHRtcCwgJm1heGNoYXIpOworICAgIHJlcyA9IFB5VW5pY29kZV9OZXcobmV3bGVuZ3RoLCBtYXhjaGFyKTsKKyAgICBpZiAocmVzID09IE5VTEwpCisgICAgICAgIGdvdG8gbGVhdmU7CisgICAgdG1wZW5kID0gdG1wICsgbmV3bGVuZ3RoOworICAgIG91dGRhdGEgPSBQeVVuaWNvZGVfREFUQShyZXMpOworICAgIG91dGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXMpOworICAgIHN3aXRjaCAob3V0a2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUyhQeV9VQ1M0LCBQeV9VQ1MxLCB0bXAsIHRtcGVuZCwgb3V0ZGF0YSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUyhQeV9VQ1M0LCBQeV9VQ1MyLCB0bXAsIHRtcGVuZCwgb3V0ZGF0YSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIG1lbWNweShvdXRkYXRhLCB0bXAsIHNpemVvZihQeV9VQ1M0KSAqIG5ld2xlbmd0aCk7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGFzc2VydCgwKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorICBsZWF2ZToKKyAgICBQeU1lbV9GUkVFKHRtcCk7CisgICAgcmV0dXJuIHJlczsKIH0KIAogUHlPYmplY3QgKgogUHlVbmljb2RlX0pvaW4oUHlPYmplY3QgKnNlcGFyYXRvciwgUHlPYmplY3QgKnNlcSkKIHsKLSAgICBjb25zdCBQeV9VTklDT0RFIGJsYW5rID0gJyAnOwotICAgIGNvbnN0IFB5X1VOSUNPREUgKnNlcCA9ICZibGFuazsKLSAgICBQeV9zc2l6ZV90IHNlcGxlbiA9IDE7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpyZXMgPSBOVUxMOyAvKiB0aGUgcmVzdWx0ICovCi0gICAgUHlfVU5JQ09ERSAqcmVzX3A7ICAgICAgIC8qIHBvaW50ZXIgdG8gZnJlZSBieXRlIGluIHJlcydzIHN0cmluZyBhcmVhICovCisgICAgUHlPYmplY3QgKnNlcCA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBzZXBsZW47CisgICAgUHlPYmplY3QgKnJlcyA9IE5VTEw7IC8qIHRoZSByZXN1bHQgKi8KICAgICBQeU9iamVjdCAqZnNlcTsgICAgICAgICAgLyogUHlTZXF1ZW5jZV9GYXN0KHNlcSkgKi8KICAgICBQeV9zc2l6ZV90IHNlcWxlbjsgICAgICAgLyogbGVuKGZzZXEpIC0tIG51bWJlciBvZiBpdGVtcyBpbiBzZXF1ZW5jZSAqLwogICAgIFB5T2JqZWN0ICoqaXRlbXM7CiAgICAgUHlPYmplY3QgKml0ZW07Ci0gICAgUHlfc3NpemVfdCBzeiwgaTsKKyAgICBQeV9zc2l6ZV90IHN6LCBpLCByZXNfb2Zmc2V0OworICAgIFB5X1VDUzQgbWF4Y2hhcjsKKyAgICBQeV9VQ1M0IGl0ZW1fbWF4Y2hhcjsKKyAgICBpbnQgdXNlX21lbWNweTsKKyAgICB1bnNpZ25lZCBjaGFyICpyZXNfZGF0YSA9IE5VTEwsICpzZXBfZGF0YSA9IE5VTEw7CisgICAgUHlPYmplY3QgKmxhc3Rfb2JqOworICAgIHVuc2lnbmVkIGludCBraW5kID0gMDsKIAogICAgIGZzZXEgPSBQeVNlcXVlbmNlX0Zhc3Qoc2VxLCAiIik7CiAgICAgaWYgKGZzZXEgPT0gTlVMTCkgewpAQCAtNjc3NiwyNCArOTgzMiwzNCBAQAogICAgIHNlcWxlbiA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfU0laRShmc2VxKTsKICAgICAvKiBJZiBlbXB0eSBzZXF1ZW5jZSwgcmV0dXJuIHUiIi4gKi8KICAgICBpZiAoc2VxbGVuID09IDApIHsKLSAgICAgICAgcmVzID0gX1B5VW5pY29kZV9OZXcoMCk7ICAvKiBlbXB0eSBzZXF1ZW5jZTsgcmV0dXJuIHUiIiAqLwotICAgICAgICBnb3RvIERvbmU7CisgICAgICAgIFB5X0RFQ1JFRihmc2VxKTsKKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICByZXMgPSB1bmljb2RlX2VtcHR5OworICAgICAgICByZXR1cm4gcmVzOwogICAgIH0KLSAgICBpdGVtcyA9IFB5U2VxdWVuY2VfRmFzdF9JVEVNUyhmc2VxKTsKKwogICAgIC8qIElmIHNpbmdsZXRvbiBzZXF1ZW5jZSB3aXRoIGFuIGV4YWN0IFVuaWNvZGUsIHJldHVybiB0aGF0LiAqLworICAgIGxhc3Rfb2JqID0gTlVMTDsKKyAgICBpdGVtcyA9IFB5U2VxdWVuY2VfRmFzdF9JVEVNUyhmc2VxKTsKICAgICBpZiAoc2VxbGVuID09IDEpIHsKLSAgICAgICAgaXRlbSA9IGl0ZW1zWzBdOwotICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3QoaXRlbSkpIHsKLSAgICAgICAgICAgIFB5X0lOQ1JFRihpdGVtKTsKLSAgICAgICAgICAgIHJlcyA9IChQeVVuaWNvZGVPYmplY3QgKilpdGVtOwotICAgICAgICAgICAgZ290byBEb25lOworICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3QoaXRlbXNbMF0pKSB7CisgICAgICAgICAgICByZXMgPSBpdGVtc1swXTsKKyAgICAgICAgICAgIFB5X0lOQ1JFRihyZXMpOworICAgICAgICAgICAgUHlfREVDUkVGKGZzZXEpOworICAgICAgICAgICAgcmV0dXJuIHJlczsKICAgICAgICAgfQorICAgICAgICBzZXBsZW4gPSAwOworICAgICAgICBtYXhjaGFyID0gMDsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIC8qIFNldCB1cCBzZXAgYW5kIHNlcGxlbiAqLwogICAgICAgICBpZiAoc2VwYXJhdG9yID09IE5VTEwpIHsKLSAgICAgICAgICAgIHNlcCA9ICZibGFuazsKKyAgICAgICAgICAgIC8qIGZhbGwgYmFjayB0byBhIGJsYW5rIHNwYWNlIHNlcGFyYXRvciAqLworICAgICAgICAgICAgc2VwID0gUHlVbmljb2RlX0Zyb21PcmRpbmFsKCcgJyk7CisgICAgICAgICAgICBpZiAoIXNlcCkKKyAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICBzZXBsZW4gPSAxOworICAgICAgICAgICAgbWF4Y2hhciA9IDMyOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soc2VwYXJhdG9yKSkgewpAQCAtNjgwMyw5ICs5ODY5LDE2IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUoc2VwYXJhdG9yKS0+dHBfbmFtZSk7CiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgc2VwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VwYXJhdG9yKTsKLSAgICAgICAgICAgIHNlcGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShzZXBhcmF0b3IpOworICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZXBhcmF0b3IpKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgIHNlcCA9IHNlcGFyYXRvcjsKKyAgICAgICAgICAgIHNlcGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlcGFyYXRvcik7CisgICAgICAgICAgICBtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHNlcGFyYXRvcik7CisgICAgICAgICAgICAvKiBpbmMgcmVmY291bnQgdG8ga2VlcCB0aGlzIGNvZGUgcGF0aCBzeW1tZXRyaWMgd2l0aCB0aGUKKyAgICAgICAgICAgICAgIGFib3ZlIGNhc2Ugb2YgYSBibGFuayBzZXBhcmF0b3IgKi8KKyAgICAgICAgICAgIFB5X0lOQ1JFRihzZXApOwogICAgICAgICB9CisgICAgICAgIGxhc3Rfb2JqID0gc2VwOwogICAgIH0KIAogICAgIC8qIFRoZXJlIGFyZSBhdCBsZWFzdCB0d28gdGhpbmdzIHRvIGpvaW4sIG9yIGVsc2Ugd2UgaGF2ZSBhIHN1YmNsYXNzCkBAIC02ODE0LDYgKzk4ODcsMTEgQEAKICAgICAgKiBuZWVkIChzeiksIGFuZCBzZWUgd2hldGhlciBhbGwgYXJndW1lbnQgYXJlIHN0cmluZ3MuCiAgICAgICovCiAgICAgc3ogPSAwOworI2lmZGVmIFB5X0RFQlVHCisgICAgdXNlX21lbWNweSA9IDA7CisjZWxzZQorICAgIHVzZV9tZW1jcHkgPSAxOworI2VuZGlmCiAgICAgZm9yIChpID0gMDsgaSA8IHNlcWxlbjsgaSsrKSB7CiAgICAgICAgIGNvbnN0IFB5X3NzaXplX3Qgb2xkX3N6ID0gc3o7CiAgICAgICAgIGl0ZW0gPSBpdGVtc1tpXTsKQEAgLTY4MjQsNyArOTkwMiwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgIGksIFB5X1RZUEUoaXRlbSktPnRwX25hbWUpOwogICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICB9Ci0gICAgICAgIHN6ICs9IFB5VW5pY29kZV9HRVRfU0laRShpdGVtKTsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShpdGVtKSA9PSAtMSkKKyAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgc3ogKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgoaXRlbSk7CisgICAgICAgIGl0ZW1fbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShpdGVtKTsKKyAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBpdGVtX21heGNoYXIpOwogICAgICAgICBpZiAoaSAhPSAwKQogICAgICAgICAgICAgc3ogKz0gc2VwbGVuOwogICAgICAgICBpZiAoc3ogPCBvbGRfc3ogfHwgc3ogPiBQWV9TU0laRV9UX01BWCkgewpAQCAtNjgzMiwyNjYgKzk5MTQsNzEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImpvaW4oKSByZXN1bHQgaXMgdG9vIGxvbmcgZm9yIGEgUHl0aG9uIHN0cmluZyIpOwogICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICB9CisgICAgICAgIGlmICh1c2VfbWVtY3B5ICYmIGxhc3Rfb2JqICE9IE5VTEwpIHsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfS0lORChsYXN0X29iaikgIT0gUHlVbmljb2RlX0tJTkQoaXRlbSkpCisgICAgICAgICAgICAgICAgdXNlX21lbWNweSA9IDA7CisgICAgICAgIH0KKyAgICAgICAgbGFzdF9vYmogPSBpdGVtOwogICAgIH0KIAotICAgIHJlcyA9IF9QeVVuaWNvZGVfTmV3KHN6KTsKKyAgICByZXMgPSBQeVVuaWNvZGVfTmV3KHN6LCBtYXhjaGFyKTsKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKIAogICAgIC8qIENhdGVuYXRlIGV2ZXJ5dGhpbmcuICovCi0gICAgcmVzX3AgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXMpOwotICAgIGZvciAoaSA9IDA7IGkgPCBzZXFsZW47ICsraSkgeworI2lmZGVmIFB5X0RFQlVHCisgICAgdXNlX21lbWNweSA9IDA7CisjZWxzZQorICAgIGlmICh1c2VfbWVtY3B5KSB7CisgICAgICAgIHJlc19kYXRhID0gUHlVbmljb2RlXzFCWVRFX0RBVEEocmVzKTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHJlcyk7CisgICAgICAgIGlmIChzZXBsZW4gIT0gMCkKKyAgICAgICAgICAgIHNlcF9kYXRhID0gUHlVbmljb2RlXzFCWVRFX0RBVEEoc2VwKTsKKyAgICB9CisjZW5kaWYKKyAgICBmb3IgKGkgPSAwLCByZXNfb2Zmc2V0ID0gMDsgaSA8IHNlcWxlbjsgKytpKSB7CiAgICAgICAgIFB5X3NzaXplX3QgaXRlbWxlbjsKICAgICAgICAgaXRlbSA9IGl0ZW1zW2ldOwotICAgICAgICBpdGVtbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGl0ZW0pOwogICAgICAgICAvKiBDb3B5IGl0ZW0sIGFuZCBtYXliZSB0aGUgc2VwYXJhdG9yLiAqLwotICAgICAgICBpZiAoaSkgewotICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHJlc19wLCBzZXAsIHNlcGxlbik7Ci0gICAgICAgICAgICByZXNfcCArPSBzZXBsZW47CisgICAgICAgIGlmIChpICYmIHNlcGxlbiAhPSAwKSB7CisgICAgICAgICAgICBpZiAodXNlX21lbWNweSkgeworICAgICAgICAgICAgICAgIFB5X01FTUNQWShyZXNfZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc2VwX2RhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGtpbmQgKiBzZXBsZW4pOworICAgICAgICAgICAgICAgIHJlc19kYXRhICs9IGtpbmQgKiBzZXBsZW47CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBjb3B5X2NoYXJhY3RlcnMocmVzLCByZXNfb2Zmc2V0LCBzZXAsIDAsIHNlcGxlbik7CisgICAgICAgICAgICAgICAgcmVzX29mZnNldCArPSBzZXBsZW47CisgICAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHJlc19wLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShpdGVtKSwgaXRlbWxlbik7Ci0gICAgICAgIHJlc19wICs9IGl0ZW1sZW47CisgICAgICAgIGl0ZW1sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChpdGVtKTsKKyAgICAgICAgaWYgKGl0ZW1sZW4gIT0gMCkgeworICAgICAgICAgICAgaWYgKHVzZV9tZW1jcHkpIHsKKyAgICAgICAgICAgICAgICBQeV9NRU1DUFkocmVzX2RhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9EQVRBKGl0ZW0pLAorICAgICAgICAgICAgICAgICAgICAgICAgICBraW5kICogaXRlbWxlbik7CisgICAgICAgICAgICAgICAgcmVzX2RhdGEgKz0ga2luZCAqIGl0ZW1sZW47CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBjb3B5X2NoYXJhY3RlcnMocmVzLCByZXNfb2Zmc2V0LCBpdGVtLCAwLCBpdGVtbGVuKTsKKyAgICAgICAgICAgICAgICByZXNfb2Zmc2V0ICs9IGl0ZW1sZW47CisgICAgICAgICAgICB9CisgICAgICAgIH0KICAgICB9CisgICAgaWYgKHVzZV9tZW1jcHkpCisgICAgICAgIGFzc2VydChyZXNfZGF0YSA9PSBQeVVuaWNvZGVfMUJZVEVfREFUQShyZXMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICArIGtpbmQgKiBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXMpKTsKKyAgICBlbHNlCisgICAgICAgIGFzc2VydChyZXNfb2Zmc2V0ID09IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcykpOwogCi0gIERvbmU6CiAgICAgUHlfREVDUkVGKGZzZXEpOwotICAgIHJldHVybiAoUHlPYmplY3QgKilyZXM7CisgICAgUHlfWERFQ1JFRihzZXApOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzLCAxKSk7CisgICAgcmV0dXJuIHJlczsKIAogICBvbkVycm9yOgogICAgIFB5X0RFQ1JFRihmc2VxKTsKKyAgICBQeV9YREVDUkVGKHNlcCk7CiAgICAgUHlfWERFQ1JFRihyZXMpOwogICAgIHJldHVybiBOVUxMOwogfQogCi1zdGF0aWMKLVB5VW5pY29kZU9iamVjdCAqcGFkKFB5VW5pY29kZU9iamVjdCAqc2VsZiwKLSAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVmdCwKLSAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgcmlnaHQsCi0gICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFIGZpbGwpCisjZGVmaW5lIEZJTEwoa2luZCwgZGF0YSwgdmFsdWUsIHN0YXJ0LCBsZW5ndGgpIFwKKyAgICBkbyB7IFwKKyAgICAgICAgUHlfc3NpemVfdCBpXyA9IDA7IFwKKyAgICAgICAgYXNzZXJ0KGtpbmQgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpOyBcCisgICAgICAgIHN3aXRjaCAoKGtpbmQpKSB7IFwKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDogeyBcCisgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICogdG9fID0gKHVuc2lnbmVkIGNoYXIgKikoKGRhdGEpKSArIChzdGFydCk7IFwKKyAgICAgICAgICAgIG1lbXNldCh0b18sICh1bnNpZ25lZCBjaGFyKXZhbHVlLCBsZW5ndGgpOyBcCisgICAgICAgICAgICBicmVhazsgXAorICAgICAgICB9IFwKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDogeyBcCisgICAgICAgICAgICBQeV9VQ1MyICogdG9fID0gKFB5X1VDUzIgKikoKGRhdGEpKSArIChzdGFydCk7IFwKKyAgICAgICAgICAgIGZvciAoOyBpXyA8IChsZW5ndGgpOyArK2lfLCArK3RvXykgKnRvXyA9ICh2YWx1ZSk7IFwKKyAgICAgICAgICAgIGJyZWFrOyBcCisgICAgICAgIH0gXAorICAgICAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOiB7IFwKKyAgICAgICAgICAgIFB5X1VDUzQgKiB0b18gPSAoUHlfVUNTNCAqKSgoZGF0YSkpICsgKHN0YXJ0KTsgXAorICAgICAgICAgICAgZm9yICg7IGlfIDwgKGxlbmd0aCk7ICsraV8sICsrdG9fKSAqdG9fID0gKHZhbHVlKTsgXAorICAgICAgICAgICAgYnJlYWs7IFwKKyAgICAgICAgZGVmYXVsdDogYXNzZXJ0KDApOyBcCisgICAgICAgIH0gXAorICAgICAgICB9IFwKKyAgICB9IHdoaWxlICgwKQorCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfRmlsbChQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBsZW5ndGgsCisgICAgICAgICAgICAgICBQeV9VQ1M0IGZpbGxfY2hhcikKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnU7CisgICAgUHlfc3NpemVfdCBtYXhsZW47CisgICAgZW51bSBQeVVuaWNvZGVfS2luZCBraW5kOworICAgIHZvaWQgKmRhdGE7CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgeworICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKHVuaWNvZGVfY2hlY2tfbW9kaWZpYWJsZSh1bmljb2RlKSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgaWYgKGZpbGxfY2hhciA+IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSh1bmljb2RlKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiZmlsbCBjaGFyYWN0ZXIgaXMgYmlnZ2VyIHRoYW4gIgorICAgICAgICAgICAgICAgICAgICAgICAgICJ0aGUgc3RyaW5nIG1heGltdW0gY2hhcmFjdGVyIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBtYXhsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKSAtIHN0YXJ0OworICAgIGxlbmd0aCA9IFB5X01JTihtYXhsZW4sIGxlbmd0aCk7CisgICAgaWYgKGxlbmd0aCA8PSAwKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1bmljb2RlKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodW5pY29kZSk7CisgICAgRklMTChraW5kLCBkYXRhLCBmaWxsX2NoYXIsIHN0YXJ0LCBsZW5ndGgpOworICAgIHJldHVybiBsZW5ndGg7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitwYWQoUHlPYmplY3QgKnNlbGYsCisgICAgUHlfc3NpemVfdCBsZWZ0LAorICAgIFB5X3NzaXplX3QgcmlnaHQsCisgICAgUHlfVUNTNCBmaWxsKQoreworICAgIFB5T2JqZWN0ICp1OworICAgIFB5X1VDUzQgbWF4Y2hhcjsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogCiAgICAgaWYgKGxlZnQgPCAwKQogICAgICAgICBsZWZ0ID0gMDsKICAgICBpZiAocmlnaHQgPCAwKQogICAgICAgICByaWdodCA9IDA7CiAKLSAgICBpZiAobGVmdCA9PSAwICYmIHJpZ2h0ID09IDAgJiYgUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKLSAgICAgICAgUHlfSU5DUkVGKHNlbGYpOwotICAgICAgICByZXR1cm4gc2VsZjsKLSAgICB9CisgICAgaWYgKGxlZnQgPT0gMCAmJiByaWdodCA9PSAwKQorICAgICAgICByZXR1cm4gdW5pY29kZV9yZXN1bHRfdW5jaGFuZ2VkKHNlbGYpOwogCi0gICAgaWYgKGxlZnQgPiBQWV9TU0laRV9UX01BWCAtIHNlbGYtPmxlbmd0aCB8fAotICAgICAgICByaWdodCA+IFBZX1NTSVpFX1RfTUFYIC0gKGxlZnQgKyBzZWxmLT5sZW5ndGgpKSB7CisgICAgaWYgKGxlZnQgPiBQWV9TU0laRV9UX01BWCAtIF9QeVVuaWNvZGVfTEVOR1RIKHNlbGYpIHx8CisgICAgICAgIHJpZ2h0ID4gUFlfU1NJWkVfVF9NQVggLSAobGVmdCArIF9QeVVuaWNvZGVfTEVOR1RIKHNlbGYpKSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwgInBhZGRlZCBzdHJpbmcgaXMgdG9vIGxvbmciKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHUgPSBfUHlVbmljb2RlX05ldyhsZWZ0ICsgc2VsZi0+bGVuZ3RoICsgcmlnaHQpOwotICAgIGlmICh1KSB7Ci0gICAgICAgIGlmIChsZWZ0KQotICAgICAgICAgICAgUHlfVU5JQ09ERV9GSUxMKHUtPnN0ciwgZmlsbCwgbGVmdCk7Ci0gICAgICAgIFB5X1VOSUNPREVfQ09QWSh1LT5zdHIgKyBsZWZ0LCBzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCk7Ci0gICAgICAgIGlmIChyaWdodCkKLSAgICAgICAgICAgIFB5X1VOSUNPREVfRklMTCh1LT5zdHIgKyBsZWZ0ICsgc2VsZi0+bGVuZ3RoLCBmaWxsLCByaWdodCk7Ci0gICAgfQorICAgIG1heGNoYXIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUoc2VsZik7CisgICAgaWYgKGZpbGwgPiBtYXhjaGFyKQorICAgICAgICBtYXhjaGFyID0gZmlsbDsKKyAgICB1ID0gUHlVbmljb2RlX05ldyhsZWZ0ICsgX1B5VW5pY29kZV9MRU5HVEgoc2VsZikgKyByaWdodCwgbWF4Y2hhcik7CisgICAgaWYgKCF1KQorICAgICAgICByZXR1cm4gTlVMTDsKIAorICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodSk7CisgICAgaWYgKGxlZnQpCisgICAgICAgIEZJTEwoa2luZCwgZGF0YSwgZmlsbCwgMCwgbGVmdCk7CisgICAgaWYgKHJpZ2h0KQorICAgICAgICBGSUxMKGtpbmQsIGRhdGEsIGZpbGwsIGxlZnQgKyBfUHlVbmljb2RlX0xFTkdUSChzZWxmKSwgcmlnaHQpOworICAgIGNvcHlfY2hhcmFjdGVycyh1LCBsZWZ0LCBzZWxmLCAwLCBfUHlVbmljb2RlX0xFTkdUSChzZWxmKSk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1LCAxKSk7CiAgICAgcmV0dXJuIHU7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfU3BsaXRsaW5lcyhQeU9iamVjdCAqc3RyaW5nLCBpbnQga2VlcGVuZHMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfU3BsaXRsaW5lcyhQeU9iamVjdCAqc3RyaW5nLCBpbnQga2VlcGVuZHMpCiB7CiAgICAgUHlPYmplY3QgKmxpc3Q7CiAKICAgICBzdHJpbmcgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHJpbmcpOwogICAgIGlmIChzdHJpbmcgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzdHJpbmcpID09IC0xKSB7CisgICAgICAgIFB5X0RFQ1JFRihzdHJpbmcpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAKLSAgICBsaXN0ID0gc3RyaW5nbGliX3NwbGl0bGluZXMoCi0gICAgICAgIChQeU9iamVjdCopIHN0cmluZywgUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyaW5nKSwKLSAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cmluZyksIGtlZXBlbmRzKTsKLQorICAgIHN3aXRjaCAoUHlVbmljb2RlX0tJTkQoc3RyaW5nKSkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIGlmIChQeVVuaWNvZGVfSVNfQVNDSUkoc3RyaW5nKSkKKyAgICAgICAgICAgIGxpc3QgPSBhc2NpaWxpYl9zcGxpdGxpbmVzKAorICAgICAgICAgICAgICAgIHN0cmluZywgUHlVbmljb2RlXzFCWVRFX0RBVEEoc3RyaW5nKSwKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJpbmcpLCBrZWVwZW5kcyk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGxpc3QgPSB1Y3MxbGliX3NwbGl0bGluZXMoCisgICAgICAgICAgICAgICAgc3RyaW5nLCBQeVVuaWNvZGVfMUJZVEVfREFUQShzdHJpbmcpLAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cmluZyksIGtlZXBlbmRzKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgbGlzdCA9IHVjczJsaWJfc3BsaXRsaW5lcygKKyAgICAgICAgICAgIHN0cmluZywgUHlVbmljb2RlXzJCWVRFX0RBVEEoc3RyaW5nKSwKKyAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cmluZyksIGtlZXBlbmRzKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgbGlzdCA9IHVjczRsaWJfc3BsaXRsaW5lcygKKyAgICAgICAgICAgIHN0cmluZywgUHlVbmljb2RlXzRCWVRFX0RBVEEoc3RyaW5nKSwKKyAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cmluZyksIGtlZXBlbmRzKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDApOworICAgICAgICBsaXN0ID0gMDsKKyAgICB9CiAgICAgUHlfREVDUkVGKHN0cmluZyk7CiAgICAgcmV0dXJuIGxpc3Q7CiB9CiAKLXN0YXRpYwotUHlPYmplY3QgKnNwbGl0KFB5VW5pY29kZU9iamVjdCAqc2VsZiwKLSAgICAgICAgICAgICAgICBQeVVuaWNvZGVPYmplY3QgKnN1YnN0cmluZywKLSAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQorc3RhdGljIFB5T2JqZWN0ICoKK3NwbGl0KFB5T2JqZWN0ICpzZWxmLAorICAgICAgUHlPYmplY3QgKnN1YnN0cmluZywKKyAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQpCiB7CisgICAgaW50IGtpbmQxLCBraW5kMiwga2luZDsKKyAgICB2b2lkICpidWYxLCAqYnVmMjsKKyAgICBQeV9zc2l6ZV90IGxlbjEsIGxlbjI7CisgICAgUHlPYmplY3QqIG91dDsKKwogICAgIGlmIChtYXhjb3VudCA8IDApCiAgICAgICAgIG1heGNvdW50ID0gUFlfU1NJWkVfVF9NQVg7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmIChzdWJzdHJpbmcgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIHN0cmluZ2xpYl9zcGxpdF93aGl0ZXNwYWNlKAotICAgICAgICAgICAgKFB5T2JqZWN0Kikgc2VsZiwgIHNlbGYtPnN0ciwgc2VsZi0+bGVuZ3RoLCBtYXhjb3VudAotICAgICAgICAgICAgKTsKKyAgICAgICAgc3dpdGNoIChQeVVuaWNvZGVfS0lORChzZWxmKSkgeworICAgICAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzZWxmKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gYXNjaWlsaWJfc3BsaXRfd2hpdGVzcGFjZSgKKyAgICAgICAgICAgICAgICAgICAgc2VsZiwgIFB5VW5pY29kZV8xQllURV9EQVRBKHNlbGYpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSwgbWF4Y291bnQKKyAgICAgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXR1cm4gdWNzMWxpYl9zcGxpdF93aGl0ZXNwYWNlKAorICAgICAgICAgICAgICAgICAgICBzZWxmLCAgUHlVbmljb2RlXzFCWVRFX0RBVEEoc2VsZiksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLCBtYXhjb3VudAorICAgICAgICAgICAgICAgICAgICApOworICAgICAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICAgICAgcmV0dXJuIHVjczJsaWJfc3BsaXRfd2hpdGVzcGFjZSgKKyAgICAgICAgICAgICAgICBzZWxmLCAgUHlVbmljb2RlXzJCWVRFX0RBVEEoc2VsZiksCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZiksIG1heGNvdW50CisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgICAgIHJldHVybiB1Y3M0bGliX3NwbGl0X3doaXRlc3BhY2UoCisgICAgICAgICAgICAgICAgc2VsZiwgIFB5VW5pY29kZV80QllURV9EQVRBKHNlbGYpLAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLCBtYXhjb3VudAorICAgICAgICAgICAgICAgICk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBhc3NlcnQoMCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQogCi0gICAgcmV0dXJuIHN0cmluZ2xpYl9zcGxpdCgKLSAgICAgICAgKFB5T2JqZWN0Kikgc2VsZiwgIHNlbGYtPnN0ciwgc2VsZi0+bGVuZ3RoLAotICAgICAgICBzdWJzdHJpbmctPnN0ciwgc3Vic3RyaW5nLT5sZW5ndGgsCi0gICAgICAgIG1heGNvdW50Ci0gICAgICAgICk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzdWJzdHJpbmcpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGtpbmQxID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAga2luZDIgPSBQeVVuaWNvZGVfS0lORChzdWJzdHJpbmcpOworICAgIGtpbmQgPSBraW5kMSA+IGtpbmQyID8ga2luZDEgOiBraW5kMjsKKyAgICBidWYxID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgYnVmMiA9IFB5VW5pY29kZV9EQVRBKHN1YnN0cmluZyk7CisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIGJ1ZjEgPSBfUHlVbmljb2RlX0FzS2luZChzZWxmLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChraW5kMiAhPSBraW5kKQorICAgICAgICBidWYyID0gX1B5VW5pY29kZV9Bc0tpbmQoc3Vic3RyaW5nLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjIpIHsKKyAgICAgICAgaWYgKGtpbmQxICE9IGtpbmQpIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgbGVuMiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN1YnN0cmluZyk7CisKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHNlbGYpICYmIFB5VW5pY29kZV9JU19BU0NJSShzdWJzdHJpbmcpKQorICAgICAgICAgICAgb3V0ID0gYXNjaWlsaWJfc3BsaXQoCisgICAgICAgICAgICAgICAgc2VsZiwgIGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIG1heGNvdW50KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgb3V0ID0gdWNzMWxpYl9zcGxpdCgKKyAgICAgICAgICAgICAgICBzZWxmLCAgYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgbWF4Y291bnQpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICBvdXQgPSB1Y3MybGliX3NwbGl0KAorICAgICAgICAgICAgc2VsZiwgIGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIG1heGNvdW50KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgb3V0ID0gdWNzNGxpYl9zcGxpdCgKKyAgICAgICAgICAgIHNlbGYsICBidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBtYXhjb3VudCk7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIG91dCA9IE5VTEw7CisgICAgfQorICAgIGlmIChraW5kMSAhPSBraW5kKQorICAgICAgICBQeU1lbV9GcmVlKGJ1ZjEpOworICAgIGlmIChraW5kMiAhPSBraW5kKQorICAgICAgICBQeU1lbV9GcmVlKGJ1ZjIpOworICAgIHJldHVybiBvdXQ7CiB9CiAKLXN0YXRpYwotUHlPYmplY3QgKnJzcGxpdChQeVVuaWNvZGVPYmplY3QgKnNlbGYsCi0gICAgICAgICAgICAgICAgIFB5VW5pY29kZU9iamVjdCAqc3Vic3RyaW5nLAotICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQorc3RhdGljIFB5T2JqZWN0ICoKK3JzcGxpdChQeU9iamVjdCAqc2VsZiwKKyAgICAgICBQeU9iamVjdCAqc3Vic3RyaW5nLAorICAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQpCiB7CisgICAgaW50IGtpbmQxLCBraW5kMiwga2luZDsKKyAgICB2b2lkICpidWYxLCAqYnVmMjsKKyAgICBQeV9zc2l6ZV90IGxlbjEsIGxlbjI7CisgICAgUHlPYmplY3QqIG91dDsKKwogICAgIGlmIChtYXhjb3VudCA8IDApCiAgICAgICAgIG1heGNvdW50ID0gUFlfU1NJWkVfVF9NQVg7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmIChzdWJzdHJpbmcgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIHN0cmluZ2xpYl9yc3BsaXRfd2hpdGVzcGFjZSgKLSAgICAgICAgICAgIChQeU9iamVjdCopIHNlbGYsICBzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCwgbWF4Y291bnQKLSAgICAgICAgICAgICk7CisgICAgICAgIHN3aXRjaCAoUHlVbmljb2RlX0tJTkQoc2VsZikpIHsKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfSVNfQVNDSUkoc2VsZikpCisgICAgICAgICAgICAgICAgcmV0dXJuIGFzY2lpbGliX3JzcGxpdF93aGl0ZXNwYWNlKAorICAgICAgICAgICAgICAgICAgICBzZWxmLCAgUHlVbmljb2RlXzFCWVRFX0RBVEEoc2VsZiksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLCBtYXhjb3VudAorICAgICAgICAgICAgICAgICAgICApOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJldHVybiB1Y3MxbGliX3JzcGxpdF93aGl0ZXNwYWNlKAorICAgICAgICAgICAgICAgICAgICBzZWxmLCAgUHlVbmljb2RlXzFCWVRFX0RBVEEoc2VsZiksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLCBtYXhjb3VudAorICAgICAgICAgICAgICAgICAgICApOworICAgICAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICAgICAgcmV0dXJuIHVjczJsaWJfcnNwbGl0X3doaXRlc3BhY2UoCisgICAgICAgICAgICAgICAgc2VsZiwgIFB5VW5pY29kZV8yQllURV9EQVRBKHNlbGYpLAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLCBtYXhjb3VudAorICAgICAgICAgICAgICAgICk7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgICAgICByZXR1cm4gdWNzNGxpYl9yc3BsaXRfd2hpdGVzcGFjZSgKKyAgICAgICAgICAgICAgICBzZWxmLCAgUHlVbmljb2RlXzRCWVRFX0RBVEEoc2VsZiksCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZiksIG1heGNvdW50CisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIGFzc2VydCgwKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CiAKLSAgICByZXR1cm4gc3RyaW5nbGliX3JzcGxpdCgKLSAgICAgICAgKFB5T2JqZWN0Kikgc2VsZiwgIHNlbGYtPnN0ciwgc2VsZi0+bGVuZ3RoLAotICAgICAgICBzdWJzdHJpbmctPnN0ciwgc3Vic3RyaW5nLT5sZW5ndGgsCi0gICAgICAgIG1heGNvdW50Ci0gICAgICAgICk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzdWJzdHJpbmcpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGtpbmQxID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAga2luZDIgPSBQeVVuaWNvZGVfS0lORChzdWJzdHJpbmcpOworICAgIGtpbmQgPSBraW5kMSA+IGtpbmQyID8ga2luZDEgOiBraW5kMjsKKyAgICBidWYxID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgYnVmMiA9IFB5VW5pY29kZV9EQVRBKHN1YnN0cmluZyk7CisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIGJ1ZjEgPSBfUHlVbmljb2RlX0FzS2luZChzZWxmLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChraW5kMiAhPSBraW5kKQorICAgICAgICBidWYyID0gX1B5VW5pY29kZV9Bc0tpbmQoc3Vic3RyaW5nLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjIpIHsKKyAgICAgICAgaWYgKGtpbmQxICE9IGtpbmQpIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgbGVuMiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN1YnN0cmluZyk7CisKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHNlbGYpICYmIFB5VW5pY29kZV9JU19BU0NJSShzdWJzdHJpbmcpKQorICAgICAgICAgICAgb3V0ID0gYXNjaWlsaWJfcnNwbGl0KAorICAgICAgICAgICAgICAgIHNlbGYsICBidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBtYXhjb3VudCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG91dCA9IHVjczFsaWJfcnNwbGl0KAorICAgICAgICAgICAgICAgIHNlbGYsICBidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBtYXhjb3VudCk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIG91dCA9IHVjczJsaWJfcnNwbGl0KAorICAgICAgICAgICAgc2VsZiwgIGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIG1heGNvdW50KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgb3V0ID0gdWNzNGxpYl9yc3BsaXQoCisgICAgICAgICAgICBzZWxmLCAgYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgbWF4Y291bnQpOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICBvdXQgPSBOVUxMOworICAgIH0KKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYxKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYyKTsKKyAgICByZXR1cm4gb3V0OwogfQogCi1zdGF0aWMKLVB5T2JqZWN0ICpyZXBsYWNlKFB5VW5pY29kZU9iamVjdCAqc2VsZiwKLSAgICAgICAgICAgICAgICAgIFB5VW5pY29kZU9iamVjdCAqc3RyMSwKLSAgICAgICAgICAgICAgICAgIFB5VW5pY29kZU9iamVjdCAqc3RyMiwKLSAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQpCitzdGF0aWMgUHlfc3NpemVfdAorYW55bGliX2ZpbmQoaW50IGtpbmQsIFB5T2JqZWN0ICpzdHIxLCB2b2lkICpidWYxLCBQeV9zc2l6ZV90IGxlbjEsCisgICAgICAgICAgICBQeU9iamVjdCAqc3RyMiwgdm9pZCAqYnVmMiwgUHlfc3NpemVfdCBsZW4yLCBQeV9zc2l6ZV90IG9mZnNldCkKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnU7CisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzdHIxKSAmJiBQeVVuaWNvZGVfSVNfQVNDSUkoc3RyMikpCisgICAgICAgICAgICByZXR1cm4gYXNjaWlsaWJfZmluZChidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBvZmZzZXQpOworICAgICAgICBlbHNlCisgICAgICAgICAgICByZXR1cm4gdWNzMWxpYl9maW5kKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIG9mZnNldCk7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIHVjczJsaWJfZmluZChidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBvZmZzZXQpOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIHJldHVybiB1Y3M0bGliX2ZpbmQoYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgb2Zmc2V0KTsKKyAgICB9CisgICAgYXNzZXJ0KDApOworICAgIHJldHVybiAtMTsKK30KKworc3RhdGljIFB5X3NzaXplX3QKK2FueWxpYl9jb3VudChpbnQga2luZCwgUHlPYmplY3QgKnNzdHIsIHZvaWQqIHNidWYsIFB5X3NzaXplX3Qgc2xlbiwKKyAgICAgICAgICAgICBQeU9iamVjdCAqc3RyMSwgdm9pZCAqYnVmMSwgUHlfc3NpemVfdCBsZW4xLCBQeV9zc2l6ZV90IG1heGNvdW50KQoreworICAgIHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIGlmIChQeVVuaWNvZGVfSVNfQVNDSUkoc3N0cikgJiYgUHlVbmljb2RlX0lTX0FTQ0lJKHN0cjEpKQorICAgICAgICAgICAgcmV0dXJuIGFzY2lpbGliX2NvdW50KHNidWYsIHNsZW4sIGJ1ZjEsIGxlbjEsIG1heGNvdW50KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmV0dXJuIHVjczFsaWJfY291bnQoc2J1Ziwgc2xlbiwgYnVmMSwgbGVuMSwgbWF4Y291bnQpOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIHJldHVybiB1Y3MybGliX2NvdW50KHNidWYsIHNsZW4sIGJ1ZjEsIGxlbjEsIG1heGNvdW50KTsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICByZXR1cm4gdWNzNGxpYl9jb3VudChzYnVmLCBzbGVuLCBidWYxLCBsZW4xLCBtYXhjb3VudCk7CisgICAgfQorICAgIGFzc2VydCgwKTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK3JlcGxhY2UoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpzdHIxLAorICAgICAgICBQeU9iamVjdCAqc3RyMiwgUHlfc3NpemVfdCBtYXhjb3VudCkKK3sKKyAgICBQeU9iamVjdCAqdTsKKyAgICBjaGFyICpzYnVmID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgY2hhciAqYnVmMSA9IFB5VW5pY29kZV9EQVRBKHN0cjEpOworICAgIGNoYXIgKmJ1ZjIgPSBQeVVuaWNvZGVfREFUQShzdHIyKTsKKyAgICBpbnQgc3JlbGVhc2UgPSAwLCByZWxlYXNlMSA9IDAsIHJlbGVhc2UyID0gMDsKKyAgICBpbnQgc2tpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBpbnQga2luZDEgPSBQeVVuaWNvZGVfS0lORChzdHIxKTsKKyAgICBpbnQga2luZDIgPSBQeVVuaWNvZGVfS0lORChzdHIyKTsKKyAgICBQeV9zc2l6ZV90IHNsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKyAgICBQeV9zc2l6ZV90IGxlbjEgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIxKTsKKyAgICBQeV9zc2l6ZV90IGxlbjIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIyKTsKKyAgICBpbnQgbWF5c2hyaW5rOworICAgIFB5X1VDUzQgbWF4Y2hhciwgbWF4Y2hhcl9zdHIyOwogCiAgICAgaWYgKG1heGNvdW50IDwgMCkKICAgICAgICAgbWF4Y291bnQgPSBQWV9TU0laRV9UX01BWDsKLSAgICBlbHNlIGlmIChtYXhjb3VudCA9PSAwIHx8IHNlbGYtPmxlbmd0aCA9PSAwKQorICAgIGVsc2UgaWYgKG1heGNvdW50ID09IDAgfHwgc2xlbiA9PSAwKQogICAgICAgICBnb3RvIG5vdGhpbmc7CiAKLSAgICBpZiAoc3RyMS0+bGVuZ3RoID09IHN0cjItPmxlbmd0aCkgewotICAgICAgICBQeV9zc2l6ZV90IGk7CisgICAgaWYgKHN0cjEgPT0gc3RyMikKKyAgICAgICAgZ290byBub3RoaW5nOworICAgIGlmIChza2luZCA8IGtpbmQxKQorICAgICAgICAvKiBzdWJzdHJpbmcgdG9vIHdpZGUgdG8gYmUgcHJlc2VudCAqLworICAgICAgICBnb3RvIG5vdGhpbmc7CisKKyAgICBtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHNlbGYpOworICAgIG1heGNoYXJfc3RyMiA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShzdHIyKTsKKyAgICAvKiBSZXBsYWNpbmcgc3RyMSB3aXRoIHN0cjIgbWF5IGNhdXNlIGEgbWF4Y2hhciByZWR1Y3Rpb24gaW4gdGhlCisgICAgICAgcmVzdWx0IHN0cmluZy4gKi8KKyAgICBtYXlzaHJpbmsgPSAobWF4Y2hhcl9zdHIyIDwgbWF4Y2hhcik7CisgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBtYXhjaGFyX3N0cjIpOworCisgICAgaWYgKGxlbjEgPT0gbGVuMikgewogICAgICAgICAvKiBzYW1lIGxlbmd0aCAqLwotICAgICAgICBpZiAoc3RyMS0+bGVuZ3RoID09IDApCisgICAgICAgIGlmIChsZW4xID09IDApCiAgICAgICAgICAgICBnb3RvIG5vdGhpbmc7Ci0gICAgICAgIGlmIChzdHIxLT5sZW5ndGggPT0gMSkgeworICAgICAgICBpZiAobGVuMSA9PSAxKSB7CiAgICAgICAgICAgICAvKiByZXBsYWNlIGNoYXJhY3RlcnMgKi8KLSAgICAgICAgICAgIFB5X1VOSUNPREUgdTEsIHUyOwotICAgICAgICAgICAgaWYgKCFmaW5kY2hhcihzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCwgc3RyMS0+c3RyWzBdKSkKKyAgICAgICAgICAgIFB5X1VDUzQgdTEsIHUyOworICAgICAgICAgICAgaW50IHJraW5kOworICAgICAgICAgICAgUHlfc3NpemVfdCBpbmRleCwgcG9zOworICAgICAgICAgICAgY2hhciAqc3JjOworCisgICAgICAgICAgICB1MSA9IFB5VW5pY29kZV9SRUFEX0NIQVIoc3RyMSwgMCk7CisgICAgICAgICAgICBwb3MgPSBmaW5kY2hhcihzYnVmLCBQeVVuaWNvZGVfS0lORChzZWxmKSwgc2xlbiwgdTEsIDEpOworICAgICAgICAgICAgaWYgKHBvcyA8IDApCiAgICAgICAgICAgICAgICAgZ290byBub3RoaW5nOwotICAgICAgICAgICAgdSA9IChQeVVuaWNvZGVPYmplY3QqKSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgc2VsZi0+bGVuZ3RoKTsKKyAgICAgICAgICAgIHUyID0gUHlVbmljb2RlX1JFQURfQ0hBUihzdHIyLCAwKTsKKyAgICAgICAgICAgIHUgPSBQeVVuaWNvZGVfTmV3KHNsZW4sIG1heGNoYXIpOwogICAgICAgICAgICAgaWYgKCF1KQotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHUtPnN0ciwgc2VsZi0+c3RyLCBzZWxmLT5sZW5ndGgpOwotICAgICAgICAgICAgdTEgPSBzdHIxLT5zdHJbMF07Ci0gICAgICAgICAgICB1MiA9IHN0cjItPnN0clswXTsKLSAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCB1LT5sZW5ndGg7IGkrKykKLSAgICAgICAgICAgICAgICBpZiAodS0+c3RyW2ldID09IHUxKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmICgtLW1heGNvdW50IDwgMCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAgICB1LT5zdHJbaV0gPSB1MjsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpID0gc3RyaW5nbGliX2ZpbmQoCi0gICAgICAgICAgICAgICAgc2VsZi0+c3RyLCBzZWxmLT5sZW5ndGgsIHN0cjEtPnN0ciwgc3RyMS0+bGVuZ3RoLCAwCi0gICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgY29weV9jaGFyYWN0ZXJzKHUsIDAsIHNlbGYsIDAsIHNsZW4pOworICAgICAgICAgICAgcmtpbmQgPSBQeVVuaWNvZGVfS0lORCh1KTsKKworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKHJraW5kLCBQeVVuaWNvZGVfREFUQSh1KSwgcG9zLCB1Mik7CisgICAgICAgICAgICBpbmRleCA9IDA7CisgICAgICAgICAgICBzcmMgPSBzYnVmOworICAgICAgICAgICAgd2hpbGUgKC0tbWF4Y291bnQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgcG9zKys7CisgICAgICAgICAgICAgICAgc3JjICs9IHBvcyAqIFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgICAgICAgICAgICAgIHNsZW4gLT0gcG9zOworICAgICAgICAgICAgICAgIGluZGV4ICs9IHBvczsKKyAgICAgICAgICAgICAgICBwb3MgPSBmaW5kY2hhcihzcmMsIFB5VW5pY29kZV9LSU5EKHNlbGYpLCBzbGVuLCB1MSwgMSk7CisgICAgICAgICAgICAgICAgaWYgKHBvcyA8IDApCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShya2luZCwgUHlVbmljb2RlX0RBVEEodSksIGluZGV4ICsgcG9zLCB1Mik7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBpbnQgcmtpbmQgPSBza2luZDsKKyAgICAgICAgICAgIGNoYXIgKnJlczsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKKworICAgICAgICAgICAgaWYgKGtpbmQxIDwgcmtpbmQpIHsKKyAgICAgICAgICAgICAgICAvKiB3aWRlbiBzdWJzdHJpbmcgKi8KKyAgICAgICAgICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoc3RyMSwgcmtpbmQpOworICAgICAgICAgICAgICAgIGlmICghYnVmMSkgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICByZWxlYXNlMSA9IDE7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpID0gYW55bGliX2ZpbmQocmtpbmQsIHNlbGYsIHNidWYsIHNsZW4sIHN0cjEsIGJ1ZjEsIGxlbjEsIDApOwogICAgICAgICAgICAgaWYgKGkgPCAwKQogICAgICAgICAgICAgICAgIGdvdG8gbm90aGluZzsKLSAgICAgICAgICAgIHUgPSAoUHlVbmljb2RlT2JqZWN0KikgUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHNlbGYtPmxlbmd0aCk7CisgICAgICAgICAgICBpZiAocmtpbmQgPiBraW5kMikgeworICAgICAgICAgICAgICAgIC8qIHdpZGVuIHJlcGxhY2VtZW50ICovCisgICAgICAgICAgICAgICAgYnVmMiA9IF9QeVVuaWNvZGVfQXNLaW5kKHN0cjIsIHJraW5kKTsKKyAgICAgICAgICAgICAgICBpZiAoIWJ1ZjIpIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgcmVsZWFzZTIgPSAxOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSBpZiAocmtpbmQgPCBraW5kMikgeworICAgICAgICAgICAgICAgIC8qIHdpZGVuIHNlbGYgYW5kIGJ1ZjEgKi8KKyAgICAgICAgICAgICAgICBya2luZCA9IGtpbmQyOworICAgICAgICAgICAgICAgIGlmIChyZWxlYXNlMSkgUHlNZW1fRnJlZShidWYxKTsKKyAgICAgICAgICAgICAgICBzYnVmID0gX1B5VW5pY29kZV9Bc0tpbmQoc2VsZiwgcmtpbmQpOworICAgICAgICAgICAgICAgIGlmICghc2J1ZikgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICBzcmVsZWFzZSA9IDE7CisgICAgICAgICAgICAgICAgYnVmMSA9IF9QeVVuaWNvZGVfQXNLaW5kKHN0cjEsIHJraW5kKTsKKyAgICAgICAgICAgICAgICBpZiAoIWJ1ZjEpIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgcmVsZWFzZTEgPSAxOworICAgICAgICAgICAgfQorICAgICAgICAgICAgdSA9IFB5VW5pY29kZV9OZXcoc2xlbiwgbWF4Y2hhcik7CiAgICAgICAgICAgICBpZiAoIXUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkodS0+c3RyLCBzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCk7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIGFzc2VydChQeVVuaWNvZGVfS0lORCh1KSA9PSBya2luZCk7CisgICAgICAgICAgICByZXMgPSBQeVVuaWNvZGVfREFUQSh1KTsKIAorICAgICAgICAgICAgbWVtY3B5KHJlcywgc2J1ZiwgcmtpbmQgKiBzbGVuKTsKICAgICAgICAgICAgIC8qIGNoYW5nZSBldmVyeXRoaW5nIGluLXBsYWNlLCBzdGFydGluZyB3aXRoIHRoaXMgb25lICovCi0gICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkodS0+c3RyK2ksIHN0cjItPnN0ciwgc3RyMi0+bGVuZ3RoKTsKLSAgICAgICAgICAgIGkgKz0gc3RyMS0+bGVuZ3RoOworICAgICAgICAgICAgbWVtY3B5KHJlcyArIHJraW5kICogaSwKKyAgICAgICAgICAgICAgICAgICBidWYyLAorICAgICAgICAgICAgICAgICAgIHJraW5kICogbGVuMik7CisgICAgICAgICAgICBpICs9IGxlbjE7CiAKICAgICAgICAgICAgIHdoaWxlICggLS1tYXhjb3VudCA+IDApIHsKLSAgICAgICAgICAgICAgICBpID0gc3RyaW5nbGliX2ZpbmQoc2VsZi0+c3RyK2ksIHNlbGYtPmxlbmd0aC1pLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIxLT5zdHIsIHN0cjEtPmxlbmd0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSk7CisgICAgICAgICAgICAgICAgaSA9IGFueWxpYl9maW5kKHJraW5kLCBzZWxmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYnVmK3JraW5kKmksIHNsZW4taSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyMSwgYnVmMSwgbGVuMSwgaSk7CiAgICAgICAgICAgICAgICAgaWYgKGkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWSh1LT5zdHIraSwgc3RyMi0+c3RyLCBzdHIyLT5sZW5ndGgpOwotICAgICAgICAgICAgICAgIGkgKz0gc3RyMS0+bGVuZ3RoOworICAgICAgICAgICAgICAgIG1lbWNweShyZXMgKyBya2luZCAqIGksCisgICAgICAgICAgICAgICAgICAgICAgIGJ1ZjIsCisgICAgICAgICAgICAgICAgICAgICAgIHJraW5kICogbGVuMik7CisgICAgICAgICAgICAgICAgaSArPSBsZW4xOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgfSBlbHNlIHsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5X3NzaXplX3QgbiwgaSwgaiwgaXJlczsKKyAgICAgICAgUHlfc3NpemVfdCBwcm9kdWN0LCBuZXdfc2l6ZTsKKyAgICAgICAgaW50IHJraW5kID0gc2tpbmQ7CisgICAgICAgIGNoYXIgKnJlczsKIAotICAgICAgICBQeV9zc2l6ZV90IG4sIGksIGo7Ci0gICAgICAgIFB5X3NzaXplX3QgcHJvZHVjdCwgbmV3X3NpemUsIGRlbHRhOwotICAgICAgICBQeV9VTklDT0RFICpwOwotCi0gICAgICAgIC8qIHJlcGxhY2Ugc3RyaW5ncyAqLwotICAgICAgICBuID0gc3RyaW5nbGliX2NvdW50KHNlbGYtPnN0ciwgc2VsZi0+bGVuZ3RoLCBzdHIxLT5zdHIsIHN0cjEtPmxlbmd0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhjb3VudCk7CisgICAgICAgIGlmIChraW5kMSA8IHJraW5kKSB7CisgICAgICAgICAgICAvKiB3aWRlbiBzdWJzdHJpbmcgKi8KKyAgICAgICAgICAgIGJ1ZjEgPSBfUHlVbmljb2RlX0FzS2luZChzdHIxLCBya2luZCk7CisgICAgICAgICAgICBpZiAoIWJ1ZjEpIGdvdG8gZXJyb3I7CisgICAgICAgICAgICByZWxlYXNlMSA9IDE7CisgICAgICAgIH0KKyAgICAgICAgbiA9IGFueWxpYl9jb3VudChya2luZCwgc2VsZiwgc2J1Ziwgc2xlbiwgc3RyMSwgYnVmMSwgbGVuMSwgbWF4Y291bnQpOwogICAgICAgICBpZiAobiA9PSAwKQogICAgICAgICAgICAgZ290byBub3RoaW5nOwotICAgICAgICAvKiBuZXdfc2l6ZSA9IHNlbGYtPmxlbmd0aCArIG4gKiAoc3RyMi0+bGVuZ3RoIC0gc3RyMS0+bGVuZ3RoKSk7ICovCi0gICAgICAgIGRlbHRhID0gKHN0cjItPmxlbmd0aCAtIHN0cjEtPmxlbmd0aCk7Ci0gICAgICAgIGlmIChkZWx0YSA9PSAwKSB7Ci0gICAgICAgICAgICBuZXdfc2l6ZSA9IHNlbGYtPmxlbmd0aDsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHByb2R1Y3QgPSBuICogKHN0cjItPmxlbmd0aCAtIHN0cjEtPmxlbmd0aCk7Ci0gICAgICAgICAgICBpZiAoKHByb2R1Y3QgLyAoc3RyMi0+bGVuZ3RoIC0gc3RyMS0+bGVuZ3RoKSkgIT0gbikgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVwbGFjZSBzdHJpbmcgaXMgdG9vIGxvbmciKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG5ld19zaXplID0gc2VsZi0+bGVuZ3RoICsgcHJvZHVjdDsKLSAgICAgICAgICAgIGlmIChuZXdfc2l6ZSA8IDApIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlcGxhY2Ugc3RyaW5nIGlzIHRvbyBsb25nIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICB9CisgICAgICAgIGlmIChraW5kMiA8IHJraW5kKSB7CisgICAgICAgICAgICAvKiB3aWRlbiByZXBsYWNlbWVudCAqLworICAgICAgICAgICAgYnVmMiA9IF9QeVVuaWNvZGVfQXNLaW5kKHN0cjIsIHJraW5kKTsKKyAgICAgICAgICAgIGlmICghYnVmMikgZ290byBlcnJvcjsKKyAgICAgICAgICAgIHJlbGVhc2UyID0gMTsKICAgICAgICAgfQotICAgICAgICB1ID0gX1B5VW5pY29kZV9OZXcobmV3X3NpemUpOworICAgICAgICBlbHNlIGlmIChraW5kMiA+IHJraW5kKSB7CisgICAgICAgICAgICAvKiB3aWRlbiBzZWxmIGFuZCBidWYxICovCisgICAgICAgICAgICBya2luZCA9IGtpbmQyOworICAgICAgICAgICAgc2J1ZiA9IF9QeVVuaWNvZGVfQXNLaW5kKHNlbGYsIHJraW5kKTsKKyAgICAgICAgICAgIGlmICghc2J1ZikgZ290byBlcnJvcjsKKyAgICAgICAgICAgIHNyZWxlYXNlID0gMTsKKyAgICAgICAgICAgIGlmIChyZWxlYXNlMSkgUHlNZW1fRnJlZShidWYxKTsKKyAgICAgICAgICAgIGJ1ZjEgPSBfUHlVbmljb2RlX0FzS2luZChzdHIxLCBya2luZCk7CisgICAgICAgICAgICBpZiAoIWJ1ZjEpIGdvdG8gZXJyb3I7CisgICAgICAgICAgICByZWxlYXNlMSA9IDE7CisgICAgICAgIH0KKyAgICAgICAgLyogbmV3X3NpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSArIG4gKiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyMikgLQorICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIxKSkpOyAqLworICAgICAgICBwcm9kdWN0ID0gbiAqIChsZW4yLWxlbjEpOworICAgICAgICBpZiAoKHByb2R1Y3QgLyAobGVuMi1sZW4xKSkgIT0gbikgeworICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVwbGFjZSBzdHJpbmcgaXMgdG9vIGxvbmciKTsKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgICAgIG5ld19zaXplID0gc2xlbiArIHByb2R1Y3Q7CisgICAgICAgIGlmIChuZXdfc2l6ZSA9PSAwKSB7CisgICAgICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgICAgICB1ID0gdW5pY29kZV9lbXB0eTsKKyAgICAgICAgICAgIGdvdG8gZG9uZTsKKyAgICAgICAgfQorICAgICAgICBpZiAobmV3X3NpemUgPCAwIHx8IG5ld19zaXplID4gKFBZX1NTSVpFX1RfTUFYID4+IChya2luZC0xKSkpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZXBsYWNlIHN0cmluZyBpcyB0b28gbG9uZyIpOworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorICAgICAgICB1ID0gUHlVbmljb2RlX05ldyhuZXdfc2l6ZSwgbWF4Y2hhcik7CiAgICAgICAgIGlmICghdSkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBpID0gMDsKLSAgICAgICAgcCA9IHUtPnN0cjsKLSAgICAgICAgaWYgKHN0cjEtPmxlbmd0aCA+IDApIHsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIGFzc2VydChQeVVuaWNvZGVfS0lORCh1KSA9PSBya2luZCk7CisgICAgICAgIHJlcyA9IFB5VW5pY29kZV9EQVRBKHUpOworICAgICAgICBpcmVzID0gaSA9IDA7CisgICAgICAgIGlmIChsZW4xID4gMCkgewogICAgICAgICAgICAgd2hpbGUgKG4tLSA+IDApIHsKICAgICAgICAgICAgICAgICAvKiBsb29rIGZvciBuZXh0IG1hdGNoICovCi0gICAgICAgICAgICAgICAgaiA9IHN0cmluZ2xpYl9maW5kKHNlbGYtPnN0citpLCBzZWxmLT5sZW5ndGgtaSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyMS0+c3RyLCBzdHIxLT5sZW5ndGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkpOworICAgICAgICAgICAgICAgIGogPSBhbnlsaWJfZmluZChya2luZCwgc2VsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2J1ZiArIHJraW5kICogaSwgc2xlbi1pLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIxLCBidWYxLCBsZW4xLCBpKTsKICAgICAgICAgICAgICAgICBpZiAoaiA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgZWxzZSBpZiAoaiA+IGkpIHsKICAgICAgICAgICAgICAgICAgICAgLyogY29weSB1bmNoYW5nZWQgcGFydCBbaTpqXSAqLwotICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkocCwgc2VsZi0+c3RyK2ksIGotaSk7Ci0gICAgICAgICAgICAgICAgICAgIHAgKz0gaiAtIGk7CisgICAgICAgICAgICAgICAgICAgIG1lbWNweShyZXMgKyBya2luZCAqIGlyZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzYnVmICsgcmtpbmQgKiBpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgcmtpbmQgKiAoai1pKSk7CisgICAgICAgICAgICAgICAgICAgIGlyZXMgKz0gaiAtIGk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIC8qIGNvcHkgc3Vic3RpdHV0aW9uIHN0cmluZyAqLwotICAgICAgICAgICAgICAgIGlmIChzdHIyLT5sZW5ndGggPiAwKSB7Ci0gICAgICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWShwLCBzdHIyLT5zdHIsIHN0cjItPmxlbmd0aCk7Ci0gICAgICAgICAgICAgICAgICAgIHAgKz0gc3RyMi0+bGVuZ3RoOworICAgICAgICAgICAgICAgIGlmIChsZW4yID4gMCkgeworICAgICAgICAgICAgICAgICAgICBtZW1jcHkocmVzICsgcmtpbmQgKiBpcmVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHJraW5kICogbGVuMik7CisgICAgICAgICAgICAgICAgICAgIGlyZXMgKz0gbGVuMjsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaSA9IGogKyBzdHIxLT5sZW5ndGg7CisgICAgICAgICAgICAgICAgaSA9IGogKyBsZW4xOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKGkgPCBzZWxmLT5sZW5ndGgpCisgICAgICAgICAgICBpZiAoaSA8IHNsZW4pCiAgICAgICAgICAgICAgICAgLyogY29weSB0YWlsIFtpOl0gKi8KLSAgICAgICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkocCwgc2VsZi0+c3RyK2ksIHNlbGYtPmxlbmd0aC1pKTsKLSAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBtZW1jcHkocmVzICsgcmtpbmQgKiBpcmVzLAorICAgICAgICAgICAgICAgICAgICAgICBzYnVmICsgcmtpbmQgKiBpLAorICAgICAgICAgICAgICAgICAgICAgICBya2luZCAqIChzbGVuLWkpKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIC8qIGludGVybGVhdmUgKi8KICAgICAgICAgICAgIHdoaWxlIChuID4gMCkgewotICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWShwLCBzdHIyLT5zdHIsIHN0cjItPmxlbmd0aCk7Ci0gICAgICAgICAgICAgICAgcCArPSBzdHIyLT5sZW5ndGg7CisgICAgICAgICAgICAgICAgbWVtY3B5KHJlcyArIHJraW5kICogaXJlcywKKyAgICAgICAgICAgICAgICAgICAgICAgYnVmMiwKKyAgICAgICAgICAgICAgICAgICAgICAgcmtpbmQgKiBsZW4yKTsKKyAgICAgICAgICAgICAgICBpcmVzICs9IGxlbjI7CiAgICAgICAgICAgICAgICAgaWYgKC0tbiA8PSAwKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAqcCsrID0gc2VsZi0+c3RyW2krK107CisgICAgICAgICAgICAgICAgbWVtY3B5KHJlcyArIHJraW5kICogaXJlcywKKyAgICAgICAgICAgICAgICAgICAgICAgc2J1ZiArIHJraW5kICogaSwKKyAgICAgICAgICAgICAgICAgICAgICAgcmtpbmQpOworICAgICAgICAgICAgICAgIGlyZXMrKzsKKyAgICAgICAgICAgICAgICBpKys7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkocCwgc2VsZi0+c3RyK2ksIHNlbGYtPmxlbmd0aC1pKTsKKyAgICAgICAgICAgIG1lbWNweShyZXMgKyBya2luZCAqIGlyZXMsCisgICAgICAgICAgICAgICAgICAgc2J1ZiArIHJraW5kICogaSwKKyAgICAgICAgICAgICAgICAgICBya2luZCAqIChzbGVuLWkpKTsKICAgICAgICAgfQogICAgIH0KLSAgICByZXR1cm4gKFB5T2JqZWN0ICopIHU7CisKKyAgICBpZiAobWF5c2hyaW5rKSB7CisgICAgICAgIHVuaWNvZGVfYWRqdXN0X21heGNoYXIoJnUpOworICAgICAgICBpZiAodSA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICB9CisKKyAgZG9uZToKKyAgICBpZiAoc3JlbGVhc2UpCisgICAgICAgIFB5TWVtX0ZSRUUoc2J1Zik7CisgICAgaWYgKHJlbGVhc2UxKQorICAgICAgICBQeU1lbV9GUkVFKGJ1ZjEpOworICAgIGlmIChyZWxlYXNlMikKKyAgICAgICAgUHlNZW1fRlJFRShidWYyKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHUsIDEpKTsKKyAgICByZXR1cm4gdTsKIAogICBub3RoaW5nOgogICAgIC8qIG5vdGhpbmcgdG8gcmVwbGFjZTsgcmV0dXJuIG9yaWdpbmFsIHN0cmluZyAod2hlbiBwb3NzaWJsZSkgKi8KLSAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKLSAgICAgICAgUHlfSU5DUkVGKHNlbGYpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopIHNlbGY7Ci0gICAgfQotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoc2VsZi0+c3RyLCBzZWxmLT5sZW5ndGgpOworICAgIGlmIChzcmVsZWFzZSkKKyAgICAgICAgUHlNZW1fRlJFRShzYnVmKTsKKyAgICBpZiAocmVsZWFzZTEpCisgICAgICAgIFB5TWVtX0ZSRUUoYnVmMSk7CisgICAgaWYgKHJlbGVhc2UyKQorICAgICAgICBQeU1lbV9GUkVFKGJ1ZjIpOworICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CisKKyAgZXJyb3I6CisgICAgaWYgKHNyZWxlYXNlICYmIHNidWYpCisgICAgICAgIFB5TWVtX0ZSRUUoc2J1Zik7CisgICAgaWYgKHJlbGVhc2UxICYmIGJ1ZjEpCisgICAgICAgIFB5TWVtX0ZSRUUoYnVmMSk7CisgICAgaWYgKHJlbGVhc2UyICYmIGJ1ZjIpCisgICAgICAgIFB5TWVtX0ZSRUUoYnVmMik7CisgICAgcmV0dXJuIE5VTEw7CiB9CiAKIC8qIC0tLSBVbmljb2RlIE9iamVjdCBNZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwpAQCAtNzEwMyw5ICsxMDYzMiwxMSBAQAogY2hhcmFjdGVycywgYWxsIHJlbWFpbmluZyBjYXNlZCBjaGFyYWN0ZXJzIGhhdmUgbG93ZXIgY2FzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV90aXRsZShQeVVuaWNvZGVPYmplY3QgKnNlbGYpCit1bmljb2RlX3RpdGxlKFB5T2JqZWN0ICpzZWxmKQogewotICAgIHJldHVybiBmaXh1cChzZWxmLCBmaXh0aXRsZSk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIGNhc2Vfb3BlcmF0aW9uKHNlbGYsIGRvX3RpdGxlKTsKIH0KIAogUHlEb2NfU1RSVkFSKGNhcGl0YWxpemVfX2RvY19fLApAQCAtNzExNSw1NyArMTA2NDYsMzggQEAKIGhhdmUgdXBwZXIgY2FzZSBhbmQgdGhlIHJlc3QgbG93ZXIgY2FzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9jYXBpdGFsaXplKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfY2FwaXRhbGl6ZShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZXR1cm4gZml4dXAoc2VsZiwgZml4Y2FwaXRhbGl6ZSk7Ci19Ci0KLSNpZiAwCi1QeURvY19TVFJWQVIoY2Fwd29yZHNfX2RvY19fLAotICAgICAgICAgICAgICJTLmNhcHdvcmRzKCkgLT4gc3RyXG5cCi1cblwKLUFwcGx5IC5jYXBpdGFsaXplKCkgdG8gYWxsIHdvcmRzIGluIFMgYW5kIHJldHVybiB0aGUgcmVzdWx0IHdpdGhcblwKLW5vcm1hbGl6ZWQgd2hpdGVzcGFjZSAoYWxsIHdoaXRlc3BhY2Ugc3RyaW5ncyBhcmUgcmVwbGFjZWQgYnkgJyAnKS4iKTsKLQotc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9jYXB3b3JkcyhQeVVuaWNvZGVPYmplY3QgKnNlbGYpCi17Ci0gICAgUHlPYmplY3QgKmxpc3Q7Ci0gICAgUHlPYmplY3QgKml0ZW07Ci0gICAgUHlfc3NpemVfdCBpOwotCi0gICAgLyogU3BsaXQgaW50byB3b3JkcyAqLwotICAgIGxpc3QgPSBzcGxpdChzZWxmLCBOVUxMLCAtMSk7Ci0gICAgaWYgKCFsaXN0KQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgLyogQ2FwaXRhbGl6ZSBlYWNoIHdvcmQgKi8KLSAgICBmb3IgKGkgPSAwOyBpIDwgUHlMaXN0X0dFVF9TSVpFKGxpc3QpOyBpKyspIHsKLSAgICAgICAgaXRlbSA9IGZpeHVwKChQeVVuaWNvZGVPYmplY3QgKilQeUxpc3RfR0VUX0lURU0obGlzdCwgaSksCi0gICAgICAgICAgICAgICAgICAgICBmaXhjYXBpdGFsaXplKTsKLSAgICAgICAgaWYgKGl0ZW0gPT0gTlVMTCkKLSAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgUHlfREVDUkVGKFB5TGlzdF9HRVRfSVRFTShsaXN0LCBpKSk7Ci0gICAgICAgIFB5TGlzdF9TRVRfSVRFTShsaXN0LCBpLCBpdGVtKTsKLSAgICB9Ci0KLSAgICAvKiBKb2luIHRoZSB3b3JkcyB0byBmb3JtIGEgbmV3IHN0cmluZyAqLwotICAgIGl0ZW0gPSBQeVVuaWNvZGVfSm9pbihOVUxMLCBsaXN0KTsKLQotICBvbkVycm9yOgotICAgIFB5X0RFQ1JFRihsaXN0KTsKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopaXRlbTsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikgPT0gMCkKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0X3VuY2hhbmdlZChzZWxmKTsKKyAgICByZXR1cm4gY2FzZV9vcGVyYXRpb24oc2VsZiwgZG9fY2FwaXRhbGl6ZSk7CiB9Ci0jZW5kaWYKKworUHlEb2NfU1RSVkFSKGNhc2Vmb2xkX19kb2NfXywKKyAgICAgICAgICAgICAiUy5jYXNlZm9sZCgpIC0+IHN0clxuXAorXG5cCitSZXR1cm4gYSB2ZXJzaW9uIG9mIFMgc3VpdGFibGUgZm9yIGNhc2VsZXNzIGNvbXBhcmlzb25zLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgordW5pY29kZV9jYXNlZm9sZChQeU9iamVjdCAqc2VsZikKK3sKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHNlbGYpKQorICAgICAgICByZXR1cm4gYXNjaWlfdXBwZXJfb3JfbG93ZXIoc2VsZiwgMSk7CisgICAgcmV0dXJuIGNhc2Vfb3BlcmF0aW9uKHNlbGYsIGRvX2Nhc2Vmb2xkKTsKK30KKwogCiAvKiBBcmd1bWVudCBjb252ZXJ0ZXIuICBDb2VyY2VzIHRvIGEgc2luZ2xlIHVuaWNvZGUgY2hhcmFjdGVyICovCiAKIHN0YXRpYyBpbnQKIGNvbnZlcnRfdWMoUHlPYmplY3QgKm9iaiwgdm9pZCAqYWRkcikKIHsKLSAgICBQeV9VTklDT0RFICpmaWxsY2hhcmxvYyA9IChQeV9VTklDT0RFICopYWRkcjsKKyAgICBQeV9VQ1M0ICpmaWxsY2hhcmxvYyA9IChQeV9VQ1M0ICopYWRkcjsKICAgICBQeU9iamVjdCAqdW5pb2JqOwotICAgIFB5X1VOSUNPREUgKnVuaXN0cjsKIAogICAgIHVuaW9iaiA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KG9iaik7CiAgICAgaWYgKHVuaW9iaiA9PSBOVUxMKSB7CkBAIC03MTczLDE0ICsxMDY4NSwxMyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgIlRoZSBmaWxsIGNoYXJhY3RlciBjYW5ub3QgYmUgY29udmVydGVkIHRvIFVuaWNvZGUiKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUodW5pb2JqKSAhPSAxKSB7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaW9iaikgIT0gMSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgIlRoZSBmaWxsIGNoYXJhY3RlciBtdXN0IGJlIGV4YWN0bHkgb25lIGNoYXJhY3RlciBsb25nIik7CiAgICAgICAgIFB5X0RFQ1JFRih1bmlvYmopOwogICAgICAgICByZXR1cm4gMDsKICAgICB9Ci0gICAgdW5pc3RyID0gUHlVbmljb2RlX0FTX1VOSUNPREUodW5pb2JqKTsKLSAgICAqZmlsbGNoYXJsb2MgPSB1bmlzdHJbMF07CisgICAgKmZpbGxjaGFybG9jID0gUHlVbmljb2RlX1JFQURfQ0hBUih1bmlvYmosIDApOwogICAgIFB5X0RFQ1JFRih1bmlvYmopOwogICAgIHJldHVybiAxOwogfQpAQCAtNzE5MiwxMTIgKzEwNzAzLDY0IEBACiBkb25lIHVzaW5nIHRoZSBzcGVjaWZpZWQgZmlsbCBjaGFyYWN0ZXIgKGRlZmF1bHQgaXMgYSBzcGFjZSkiKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfY2VudGVyKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX2NlbnRlcihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlfc3NpemVfdCBtYXJnLCBsZWZ0OwogICAgIFB5X3NzaXplX3Qgd2lkdGg7Ci0gICAgUHlfVU5JQ09ERSBmaWxsY2hhciA9ICcgJzsKKyAgICBQeV9VQ1M0IGZpbGxjaGFyID0gJyAnOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJufE8mOmNlbnRlciIsICZ3aWR0aCwgY29udmVydF91YywgJmZpbGxjaGFyKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoc2VsZi0+bGVuZ3RoID49IHdpZHRoICYmIFB5VW5pY29kZV9DaGVja0V4YWN0KHNlbGYpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCopIHNlbGY7Ci0gICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgbWFyZyA9IHdpZHRoIC0gc2VsZi0+bGVuZ3RoOworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSA+PSB3aWR0aCkKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0X3VuY2hhbmdlZChzZWxmKTsKKworICAgIG1hcmcgPSB3aWR0aCAtIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOwogICAgIGxlZnQgPSBtYXJnIC8gMiArIChtYXJnICYgd2lkdGggJiAxKTsKIAotICAgIHJldHVybiAoUHlPYmplY3QqKSBwYWQoc2VsZiwgbGVmdCwgbWFyZyAtIGxlZnQsIGZpbGxjaGFyKTsKKyAgICByZXR1cm4gcGFkKHNlbGYsIGxlZnQsIG1hcmcgLSBsZWZ0LCBmaWxsY2hhcik7CiB9CiAKLSNpZiAwCi0KLS8qIFRoaXMgY29kZSBzaG91bGQgZ28gaW50byBzb21lIGZ1dHVyZSBVbmljb2RlIGNvbGxhdGlvbiBzdXBwb3J0Ci0gICBtb2R1bGUuIFRoZSBiYXNpYyBjb21wYXJpc29uIHNob3VsZCBjb21wYXJlIG9yZGluYWxzIG9uIGEgbmFpdmUKLSAgIGJhc2lzICh0aGlzIGlzIHdoYXQgSmF2YSBkb2VzIGFuZCB0aHVzIEp5dGhvbiB0b28pLiAqLwotCi0vKiBzcGVlZHkgVVRGLTE2IGNvZGUgcG9pbnQgb3JkZXIgY29tcGFyaXNvbiAqLwotLyogZ2xlYW5lZCBmcm9tOiAqLwotLyogaHR0cDovL3d3dy00LmlibS5jb20vc29mdHdhcmUvZGV2ZWxvcGVyL2xpYnJhcnkvdXRmMTYuaHRtbD9kd3pvbmU9dW5pY29kZSAqLwotCi1zdGF0aWMgc2hvcnQgdXRmMTZGaXh1cFszMl0gPQotewotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAotICAgIDAsIDAsIDAsIDB4MjAwMCwgLTB4ODAwLCAtMHg4MDAsIC0weDgwMCwgLTB4ODAwCi19OworLyogVGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgc3RyMSBhbmQgc3RyMiBhcmUgcmVhZGllZCBieSB0aGUgY2FsbGVyLiAqLwogCiBzdGF0aWMgaW50Ci11bmljb2RlX2NvbXBhcmUoUHlVbmljb2RlT2JqZWN0ICpzdHIxLCBQeVVuaWNvZGVPYmplY3QgKnN0cjIpCit1bmljb2RlX2NvbXBhcmUoUHlPYmplY3QgKnN0cjEsIFB5T2JqZWN0ICpzdHIyKQogewotICAgIFB5X3NzaXplX3QgbGVuMSwgbGVuMjsKKyAgICBpbnQga2luZDEsIGtpbmQyOworICAgIHZvaWQgKmRhdGExLCAqZGF0YTI7CisgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yLCBpOwogCi0gICAgUHlfVU5JQ09ERSAqczEgPSBzdHIxLT5zdHI7Ci0gICAgUHlfVU5JQ09ERSAqczIgPSBzdHIyLT5zdHI7CisgICAga2luZDEgPSBQeVVuaWNvZGVfS0lORChzdHIxKTsKKyAgICBraW5kMiA9IFB5VW5pY29kZV9LSU5EKHN0cjIpOworICAgIGRhdGExID0gUHlVbmljb2RlX0RBVEEoc3RyMSk7CisgICAgZGF0YTIgPSBQeVVuaWNvZGVfREFUQShzdHIyKTsKKyAgICBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyMSk7CisgICAgbGVuMiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cjIpOwogCi0gICAgbGVuMSA9IHN0cjEtPmxlbmd0aDsKLSAgICBsZW4yID0gc3RyMi0+bGVuZ3RoOwotCi0gICAgd2hpbGUgKGxlbjEgPiAwICYmIGxlbjIgPiAwKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgYzEsIGMyOwotCi0gICAgICAgIGMxID0gKnMxKys7Ci0gICAgICAgIGMyID0gKnMyKys7Ci0KLSAgICAgICAgaWYgKGMxID4gKDE8PDExKSAqIDI2KQotICAgICAgICAgICAgYzEgKz0gdXRmMTZGaXh1cFtjMT4+MTFdOwotICAgICAgICBpZiAoYzIgPiAoMTw8MTEpICogMjYpCi0gICAgICAgICAgICBjMiArPSB1dGYxNkZpeHVwW2MyPj4xMV07Ci0gICAgICAgIC8qIG5vdyBjMSBhbmQgYzIgYXJlIGluIFVURi0zMi1jb21wYXRpYmxlIG9yZGVyICovCisgICAgZm9yIChpID0gMDsgaSA8IGxlbjEgJiYgaSA8IGxlbjI7ICsraSkgeworICAgICAgICBQeV9VQ1M0IGMxLCBjMjsKKyAgICAgICAgYzEgPSBQeVVuaWNvZGVfUkVBRChraW5kMSwgZGF0YTEsIGkpOworICAgICAgICBjMiA9IFB5VW5pY29kZV9SRUFEKGtpbmQyLCBkYXRhMiwgaSk7CiAKICAgICAgICAgaWYgKGMxICE9IGMyKQogICAgICAgICAgICAgcmV0dXJuIChjMSA8IGMyKSA/IC0xIDogMTsKLQotICAgICAgICBsZW4xLS07IGxlbjItLTsKICAgICB9CiAKICAgICByZXR1cm4gKGxlbjEgPCBsZW4yKSA/IC0xIDogKGxlbjEgIT0gbGVuMik7CiB9CiAKLSNlbHNlCi0KLXN0YXRpYyBpbnQKLXVuaWNvZGVfY29tcGFyZShQeVVuaWNvZGVPYmplY3QgKnN0cjEsIFB5VW5pY29kZU9iamVjdCAqc3RyMikKK2ludAorUHlVbmljb2RlX0NvbXBhcmUoUHlPYmplY3QgKmxlZnQsIFB5T2JqZWN0ICpyaWdodCkKIHsKLSAgICByZWdpc3RlciBQeV9zc2l6ZV90IGxlbjEsIGxlbjI7Ci0KLSAgICBQeV9VTklDT0RFICpzMSA9IHN0cjEtPnN0cjsKLSAgICBQeV9VTklDT0RFICpzMiA9IHN0cjItPnN0cjsKLQotICAgIGxlbjEgPSBzdHIxLT5sZW5ndGg7Ci0gICAgbGVuMiA9IHN0cjItPmxlbmd0aDsKLQotICAgIHdoaWxlIChsZW4xID4gMCAmJiBsZW4yID4gMCkgewotICAgICAgICBQeV9VTklDT0RFIGMxLCBjMjsKLQotICAgICAgICBjMSA9ICpzMSsrOwotICAgICAgICBjMiA9ICpzMisrOwotCi0gICAgICAgIGlmIChjMSAhPSBjMikKLSAgICAgICAgICAgIHJldHVybiAoYzEgPCBjMikgPyAtMSA6IDE7Ci0KLSAgICAgICAgbGVuMS0tOyBsZW4yLS07CisgICAgaWYgKFB5VW5pY29kZV9DaGVjayhsZWZ0KSAmJiBQeVVuaWNvZGVfQ2hlY2socmlnaHQpKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkobGVmdCkgPT0gLTEgfHwKKyAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEWShyaWdodCkgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIHJldHVybiB1bmljb2RlX2NvbXBhcmUobGVmdCwgcmlnaHQpOwogICAgIH0KLQotICAgIHJldHVybiAobGVuMSA8IGxlbjIpID8gLTEgOiAobGVuMSAhPSBsZW4yKTsKLX0KLQotI2VuZGlmCi0KLWludCBQeVVuaWNvZGVfQ29tcGFyZShQeU9iamVjdCAqbGVmdCwKLSAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcmlnaHQpCi17Ci0gICAgaWYgKFB5VW5pY29kZV9DaGVjayhsZWZ0KSAmJiBQeVVuaWNvZGVfQ2hlY2socmlnaHQpKQotICAgICAgICByZXR1cm4gdW5pY29kZV9jb21wYXJlKChQeVVuaWNvZGVPYmplY3QgKilsZWZ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeVVuaWNvZGVPYmplY3QgKilyaWdodCk7CiAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgIkNhbid0IGNvbXBhcmUgJS4xMDBzIGFuZCAlLjEwMHMiLAogICAgICAgICAgICAgICAgICBsZWZ0LT5vYl90eXBlLT50cF9uYW1lLApAQCAtNzMwOCwxNyArMTA3NzEsMjMgQEAKIGludAogUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcoUHlPYmplY3QqIHVuaSwgY29uc3QgY2hhciogc3RyKQogewotICAgIGludCBpOwotICAgIFB5X1VOSUNPREUgKmlkOwotICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2sodW5pKSk7Ci0gICAgaWQgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmkpOworICAgIFB5X3NzaXplX3QgaTsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X1VDUzQgY2hyOworCisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sodW5pKSk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmkpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaSk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHVuaSk7CiAgICAgLyogQ29tcGFyZSBVbmljb2RlIHN0cmluZyBhbmQgc291cmNlIGNoYXJhY3RlciBzZXQgc3RyaW5nICovCi0gICAgZm9yIChpID0gMDsgaWRbaV0gJiYgc3RyW2ldOyBpKyspCi0gICAgICAgIGlmIChpZFtpXSAhPSBzdHJbaV0pCi0gICAgICAgICAgICByZXR1cm4gKChpbnQpaWRbaV0gPCAoaW50KXN0cltpXSkgPyAtMSA6IDE7CisgICAgZm9yIChpID0gMDsgKGNociA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKSAmJiBzdHJbaV07IGkrKykKKyAgICAgICAgaWYgKGNociAhPSBzdHJbaV0pCisgICAgICAgICAgICByZXR1cm4gKGNociA8ICh1bnNpZ25lZCBjaGFyKShzdHJbaV0pKSA/IC0xIDogMTsKICAgICAvKiBUaGlzIGNoZWNrIGtlZXBzIFB5dGhvbiBzdHJpbmdzIHRoYXQgZW5kIGluICdcMCcgZnJvbSBjb21wYXJpbmcgZXF1YWwKICAgICAgdG8gQyBzdHJpbmdzIGlkZW50aWNhbCB1cCB0byB0aGF0IHBvaW50LiAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUodW5pKSAhPSBpIHx8IGlkW2ldKQorICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmkpICE9IGkgfHwgY2hyKQogICAgICAgICByZXR1cm4gMTsgLyogdW5pIGlzIGxvbmdlciAqLwogICAgIGlmIChzdHJbaV0pCiAgICAgICAgIHJldHVybiAtMTsgLyogc3RyIGlzIGxvbmdlciAqLwpAQCAtNzMyOSwxNiArMTA3OTgsMTggQEAKICNkZWZpbmUgVEVTVF9DT05EKGNvbmQpICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAoKGNvbmQpID8gUHlfVHJ1ZSA6IFB5X0ZhbHNlKQogCi1QeU9iamVjdCAqUHlVbmljb2RlX1JpY2hDb21wYXJlKFB5T2JqZWN0ICpsZWZ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcmlnaHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBvcCkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9SaWNoQ29tcGFyZShQeU9iamVjdCAqbGVmdCwgUHlPYmplY3QgKnJpZ2h0LCBpbnQgb3ApCiB7CiAgICAgaW50IHJlc3VsdDsKIAogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sobGVmdCkgJiYgUHlVbmljb2RlX0NoZWNrKHJpZ2h0KSkgewogICAgICAgICBQeU9iamVjdCAqdjsKLSAgICAgICAgaWYgKCgoUHlVbmljb2RlT2JqZWN0ICopIGxlZnQpLT5sZW5ndGggIT0KLSAgICAgICAgICAgICgoUHlVbmljb2RlT2JqZWN0ICopIHJpZ2h0KS0+bGVuZ3RoKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkobGVmdCkgPT0gLTEgfHwKKyAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEWShyaWdodCkgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGxlZnQpICE9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJpZ2h0KSB8fAorICAgICAgICAgICAgUHlVbmljb2RlX0tJTkQobGVmdCkgIT0gUHlVbmljb2RlX0tJTkQocmlnaHQpKSB7CiAgICAgICAgICAgICBpZiAob3AgPT0gUHlfRVEpIHsKICAgICAgICAgICAgICAgICBQeV9JTkNSRUYoUHlfRmFsc2UpOwogICAgICAgICAgICAgICAgIHJldHVybiBQeV9GYWxzZTsKQEAgLTczNTEsOCArMTA4MjIsNyBAQAogICAgICAgICBpZiAobGVmdCA9PSByaWdodCkKICAgICAgICAgICAgIHJlc3VsdCA9IDA7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJlc3VsdCA9IHVuaWNvZGVfY29tcGFyZSgoUHlVbmljb2RlT2JqZWN0ICopbGVmdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlVbmljb2RlT2JqZWN0ICopcmlnaHQpOworICAgICAgICAgICAgcmVzdWx0ID0gdW5pY29kZV9jb21wYXJlKGxlZnQsIHJpZ2h0KTsKIAogICAgICAgICAvKiBDb252ZXJ0IHRoZSByZXR1cm4gdmFsdWUgdG8gYSBCb29sZWFuICovCiAgICAgICAgIHN3aXRjaCAob3ApIHsKQEAgLTczODIsMTQgKzEwODUyLDE2IEBACiAgICAgICAgIHJldHVybiB2OwogICAgIH0KIAotICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIH0KIAotaW50IFB5VW5pY29kZV9Db250YWlucyhQeU9iamVjdCAqY29udGFpbmVyLAotICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZWxlbWVudCkKK2ludAorUHlVbmljb2RlX0NvbnRhaW5zKFB5T2JqZWN0ICpjb250YWluZXIsIFB5T2JqZWN0ICplbGVtZW50KQogewogICAgIFB5T2JqZWN0ICpzdHIsICpzdWI7CisgICAgaW50IGtpbmQxLCBraW5kMiwga2luZDsKKyAgICB2b2lkICpidWYxLCAqYnVmMjsKKyAgICBQeV9zc2l6ZV90IGxlbjEsIGxlbjI7CiAgICAgaW50IHJlc3VsdDsKIAogICAgIC8qIENvZXJjZSB0aGUgdHdvIGFyZ3VtZW50cyAqLwpAQCAtNzQwNiw1MCArMTA4NzgsMTA4IEBACiAgICAgICAgIFB5X0RFQ1JFRihzdWIpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3ViKSA9PSAtMSB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA9PSAtMSkgeworICAgICAgICBQeV9ERUNSRUYoc3ViKTsKKyAgICAgICAgUHlfREVDUkVGKHN0cik7CisgICAgfQogCi0gICAgcmVzdWx0ID0gc3RyaW5nbGliX2NvbnRhaW5zX29iaihzdHIsIHN1Yik7CisgICAga2luZDEgPSBQeVVuaWNvZGVfS0lORChzdHIpOworICAgIGtpbmQyID0gUHlVbmljb2RlX0tJTkQoc3ViKTsKKyAgICBraW5kID0ga2luZDEgPiBraW5kMiA/IGtpbmQxIDoga2luZDI7CisgICAgYnVmMSA9IFB5VW5pY29kZV9EQVRBKHN0cik7CisgICAgYnVmMiA9IFB5VW5pY29kZV9EQVRBKHN1Yik7CisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIGJ1ZjEgPSBfUHlVbmljb2RlX0FzS2luZChzdHIsIGtpbmQpOworICAgIGlmICghYnVmMSkgeworICAgICAgICBQeV9ERUNSRUYoc3ViKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgYnVmMiA9IF9QeVVuaWNvZGVfQXNLaW5kKHN1Yiwga2luZCk7CisgICAgaWYgKCFidWYyKSB7CisgICAgICAgIFB5X0RFQ1JFRihzdWIpOworICAgICAgICBpZiAoa2luZDEgIT0ga2luZCkgUHlNZW1fRnJlZShidWYxKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKTsKKyAgICBsZW4yID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3ViKTsKKworICAgIHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIHJlc3VsdCA9IHVjczFsaWJfZmluZChidWYxLCBsZW4xLCBidWYyLCBsZW4yLCAwKSAhPSAtMTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgcmVzdWx0ID0gdWNzMmxpYl9maW5kKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIDApICE9IC0xOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICByZXN1bHQgPSB1Y3M0bGliX2ZpbmQoYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgMCkgIT0gLTE7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIHJlc3VsdCA9IC0xOworICAgICAgICBhc3NlcnQoMCk7CisgICAgfQogCiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgUHlfREVDUkVGKHN1Yik7CiAKKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYxKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYyKTsKKwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIC8qIENvbmNhdCB0byBzdHJpbmcgb3IgVW5pY29kZSBvYmplY3QgZ2l2aW5nIGEgbmV3IFVuaWNvZGUgb2JqZWN0LiAqLwogCi1QeU9iamVjdCAqUHlVbmljb2RlX0NvbmNhdChQeU9iamVjdCAqbGVmdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpyaWdodCkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Db25jYXQoUHlPYmplY3QgKmxlZnQsIFB5T2JqZWN0ICpyaWdodCkKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnUgPSBOVUxMLCAqdiA9IE5VTEwsICp3OworICAgIFB5T2JqZWN0ICp1ID0gTlVMTCwgKnYgPSBOVUxMLCAqdzsKKyAgICBQeV9VQ1M0IG1heGNoYXIsIG1heGNoYXIyOworICAgIFB5X3NzaXplX3QgdV9sZW4sIHZfbGVuLCBuZXdfbGVuOwogCiAgICAgLyogQ29lcmNlIHRoZSB0d28gYXJndW1lbnRzICovCi0gICAgdSA9IChQeVVuaWNvZGVPYmplY3QgKilQeVVuaWNvZGVfRnJvbU9iamVjdChsZWZ0KTsKKyAgICB1ID0gUHlVbmljb2RlX0Zyb21PYmplY3QobGVmdCk7CiAgICAgaWYgKHUgPT0gTlVMTCkKICAgICAgICAgZ290byBvbkVycm9yOwotICAgIHYgPSAoUHlVbmljb2RlT2JqZWN0ICopUHlVbmljb2RlX0Zyb21PYmplY3QocmlnaHQpOworICAgIHYgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChyaWdodCk7CiAgICAgaWYgKHYgPT0gTlVMTCkKICAgICAgICAgZ290byBvbkVycm9yOwogCiAgICAgLyogU2hvcnRjdXRzICovCiAgICAgaWYgKHYgPT0gdW5pY29kZV9lbXB0eSkgewogICAgICAgICBQeV9ERUNSRUYodik7Ci0gICAgICAgIHJldHVybiAoUHlPYmplY3QgKil1OworICAgICAgICByZXR1cm4gdTsKICAgICB9CiAgICAgaWYgKHUgPT0gdW5pY29kZV9lbXB0eSkgewogICAgICAgICBQeV9ERUNSRUYodSk7Ci0gICAgICAgIHJldHVybiAoUHlPYmplY3QgKil2OworICAgICAgICByZXR1cm4gdjsKICAgICB9CiAKKyAgICB1X2xlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHUpOworICAgIHZfbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodik7CisgICAgaWYgKHVfbGVuID4gUFlfU1NJWkVfVF9NQVggLSB2X2xlbikgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpbmdzIGFyZSB0b28gbGFyZ2UgdG8gY29uY2F0Iik7CisgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICB9CisgICAgbmV3X2xlbiA9IHVfbGVuICsgdl9sZW47CisKKyAgICBtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHUpOworICAgIG1heGNoYXIyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHYpOworICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgbWF4Y2hhcjIpOworCiAgICAgLyogQ29uY2F0IHRoZSB0d28gVW5pY29kZSBzdHJpbmdzICovCi0gICAgdyA9IF9QeVVuaWNvZGVfTmV3KHUtPmxlbmd0aCArIHYtPmxlbmd0aCk7CisgICAgdyA9IFB5VW5pY29kZV9OZXcobmV3X2xlbiwgbWF4Y2hhcik7CiAgICAgaWYgKHcgPT0gTlVMTCkKICAgICAgICAgZ290byBvbkVycm9yOwotICAgIFB5X1VOSUNPREVfQ09QWSh3LT5zdHIsIHUtPnN0ciwgdS0+bGVuZ3RoKTsKLSAgICBQeV9VTklDT0RFX0NPUFkody0+c3RyICsgdS0+bGVuZ3RoLCB2LT5zdHIsIHYtPmxlbmd0aCk7Ci0KKyAgICBjb3B5X2NoYXJhY3RlcnModywgMCwgdSwgMCwgdV9sZW4pOworICAgIGNvcHlfY2hhcmFjdGVycyh3LCB1X2xlbiwgdiwgMCwgdl9sZW4pOwogICAgIFB5X0RFQ1JFRih1KTsKICAgICBQeV9ERUNSRUYodik7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXc7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh3LCAxKSk7CisgICAgcmV0dXJuIHc7CiAKICAgb25FcnJvcjoKICAgICBQeV9YREVDUkVGKHUpOwpAQCAtNzQ1OCwxOSArMTA5ODgsODkgQEAKIH0KIAogdm9pZAotUHlVbmljb2RlX0FwcGVuZChQeU9iamVjdCAqKnBsZWZ0LCBQeU9iamVjdCAqcmlnaHQpCitQeVVuaWNvZGVfQXBwZW5kKFB5T2JqZWN0ICoqcF9sZWZ0LCBQeU9iamVjdCAqcmlnaHQpCiB7Ci0gICAgUHlPYmplY3QgKm5ldzsKLSAgICBpZiAoKnBsZWZ0ID09IE5VTEwpCi0gICAgICAgIHJldHVybjsKLSAgICBpZiAocmlnaHQgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKCpwbGVmdCkpIHsKLSAgICAgICAgUHlfREVDUkVGKCpwbGVmdCk7Ci0gICAgICAgICpwbGVmdCA9IE5VTEw7CisgICAgUHlPYmplY3QgKmxlZnQsICpyZXM7CisgICAgUHlfVUNTNCBtYXhjaGFyLCBtYXhjaGFyMjsKKyAgICBQeV9zc2l6ZV90IGxlZnRfbGVuLCByaWdodF9sZW4sIG5ld19sZW47CisKKyAgICBpZiAocF9sZWZ0ID09IE5VTEwpIHsKKyAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgbmV3ID0gUHlVbmljb2RlX0NvbmNhdCgqcGxlZnQsIHJpZ2h0KTsKLSAgICBQeV9ERUNSRUYoKnBsZWZ0KTsKLSAgICAqcGxlZnQgPSBuZXc7CisgICAgbGVmdCA9ICpwX2xlZnQ7CisgICAgaWYgKHJpZ2h0ID09IE5VTEwgfHwgIVB5VW5pY29kZV9DaGVjayhsZWZ0KSkgeworICAgICAgICBpZiAoIVB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICB9CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGxlZnQpID09IC0xKQorICAgICAgICBnb3RvIGVycm9yOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocmlnaHQpID09IC0xKQorICAgICAgICBnb3RvIGVycm9yOworCisgICAgLyogU2hvcnRjdXRzICovCisgICAgaWYgKGxlZnQgPT0gdW5pY29kZV9lbXB0eSkgeworICAgICAgICBQeV9ERUNSRUYobGVmdCk7CisgICAgICAgIFB5X0lOQ1JFRihyaWdodCk7CisgICAgICAgICpwX2xlZnQgPSByaWdodDsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBpZiAocmlnaHQgPT0gdW5pY29kZV9lbXB0eSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbGVmdF9sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChsZWZ0KTsKKyAgICByaWdodF9sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChyaWdodCk7CisgICAgaWYgKGxlZnRfbGVuID4gUFlfU1NJWkVfVF9NQVggLSByaWdodF9sZW4pIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAic3RyaW5ncyBhcmUgdG9vIGxhcmdlIHRvIGNvbmNhdCIpOworICAgICAgICBnb3RvIGVycm9yOworICAgIH0KKyAgICBuZXdfbGVuID0gbGVmdF9sZW4gKyByaWdodF9sZW47CisKKyAgICBpZiAodW5pY29kZV9tb2RpZmlhYmxlKGxlZnQpCisgICAgICAgICYmIFB5VW5pY29kZV9DaGVja0V4YWN0KHJpZ2h0KQorICAgICAgICAmJiBQeVVuaWNvZGVfS0lORChyaWdodCkgPD0gUHlVbmljb2RlX0tJTkQobGVmdCkKKyAgICAgICAgLyogRG9uJ3QgcmVzaXplIGZvciBhc2NpaSArPSBsYXRpbjEuIENvbnZlcnQgYXNjaWkgdG8gbGF0aW4xIHJlcXVpcmVzCisgICAgICAgICAgIHRvIGNoYW5nZSB0aGUgc3RydWN0dXJlIHNpemUsIGJ1dCBjaGFyYWN0ZXJzIGFyZSBzdG9yZWQganVzdCBhZnRlcgorICAgICAgICAgICB0aGUgc3RydWN0dXJlLCBhbmQgc28gaXQgcmVxdWlyZXMgdG8gbW92ZSBhbGwgY2hhcmFjdGVycyB3aGljaCBpcworICAgICAgICAgICBub3Qgc28gZGlmZmVyZW50IHRoYW4gZHVwbGljYXRpbmcgdGhlIHN0cmluZy4gKi8KKyAgICAgICAgJiYgIShQeVVuaWNvZGVfSVNfQVNDSUkobGVmdCkgJiYgIVB5VW5pY29kZV9JU19BU0NJSShyaWdodCkpKQorICAgIHsKKyAgICAgICAgLyogYXBwZW5kIGlucGxhY2UgKi8KKyAgICAgICAgaWYgKHVuaWNvZGVfcmVzaXplKHBfbGVmdCwgbmV3X2xlbikgIT0gMCkgeworICAgICAgICAgICAgLyogWFhYIGlmIF9QeVVuaWNvZGVfUmVzaXplKCkgZmFpbHMsICdsZWZ0JyBoYXMgYmVlbgorICAgICAgICAgICAgICogZGVhbGxvY2F0ZWQgc28gaXQgY2Fubm90IGJlIHB1dCBiYWNrIGludG8KKyAgICAgICAgICAgICAqICd2YXJpYWJsZScuICBUaGUgTWVtb3J5RXJyb3IgaXMgcmFpc2VkIHdoZW4gdGhlcmUKKyAgICAgICAgICAgICAqIGlzIG5vIHZhbHVlIGluICd2YXJpYWJsZScsIHdoaWNoIG1pZ2h0ICh2ZXJ5CisgICAgICAgICAgICAgKiByZW1vdGVseSkgYmUgYSBjYXVzZSBvZiBpbmNvbXBhdGliaWxpdGllcy4KKyAgICAgICAgICAgICAqLworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorICAgICAgICAvKiBjb3B5ICdyaWdodCcgaW50byB0aGUgbmV3bHkgYWxsb2NhdGVkIGFyZWEgb2YgJ2xlZnQnICovCisgICAgICAgIGNvcHlfY2hhcmFjdGVycygqcF9sZWZ0LCBsZWZ0X2xlbiwgcmlnaHQsIDAsIHJpZ2h0X2xlbik7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKGxlZnQpOworICAgICAgICBtYXhjaGFyMiA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShyaWdodCk7CisgICAgICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgbWF4Y2hhcjIpOworCisgICAgICAgIC8qIENvbmNhdCB0aGUgdHdvIFVuaWNvZGUgc3RyaW5ncyAqLworICAgICAgICByZXMgPSBQeVVuaWNvZGVfTmV3KG5ld19sZW4sIG1heGNoYXIpOworICAgICAgICBpZiAocmVzID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICBjb3B5X2NoYXJhY3RlcnMocmVzLCAwLCBsZWZ0LCAwLCBsZWZ0X2xlbik7CisgICAgICAgIGNvcHlfY2hhcmFjdGVycyhyZXMsIGxlZnRfbGVuLCByaWdodCwgMCwgcmlnaHRfbGVuKTsKKyAgICAgICAgUHlfREVDUkVGKGxlZnQpOworICAgICAgICAqcF9sZWZ0ID0gcmVzOworICAgIH0KKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KCpwX2xlZnQsIDEpKTsKKyAgICByZXR1cm47CisKK2Vycm9yOgorICAgIFB5X0NMRUFSKCpwX2xlZnQpOwogfQogCiB2b2lkCkBAIC03NDg4LDIzICsxMTA4OCw3MSBAQAogaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2Ugbm90YXRpb24uIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX2NvdW50KFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX2NvdW50KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnN1YnN0cmluZzsKKyAgICBQeU9iamVjdCAqc3Vic3RyaW5nOwogICAgIFB5X3NzaXplX3Qgc3RhcnQgPSAwOwogICAgIFB5X3NzaXplX3QgZW5kID0gUFlfU1NJWkVfVF9NQVg7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBpbnQga2luZDEsIGtpbmQyLCBraW5kOworICAgIHZvaWQgKmJ1ZjEsICpidWYyOworICAgIFB5X3NzaXplX3QgbGVuMSwgbGVuMiwgaXJlc3VsdDsKIAogICAgIGlmICghc3RyaW5nbGliX3BhcnNlX2FyZ3NfZmluZHNfdW5pY29kZSgiY291bnQiLCBhcmdzLCAmc3Vic3RyaW5nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnQsICZlbmQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIHNlbGYtPmxlbmd0aCk7Ci0gICAgcmVzdWx0ID0gUHlMb25nX0Zyb21Tc2l6ZV90KAotICAgICAgICBzdHJpbmdsaWJfY291bnQoc2VsZi0+c3RyICsgc3RhcnQsIGVuZCAtIHN0YXJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgc3Vic3RyaW5nLT5zdHIsIHN1YnN0cmluZy0+bGVuZ3RoLAotICAgICAgICAgICAgICAgICAgICAgICAgUFlfU1NJWkVfVF9NQVgpCi0gICAgICAgICk7CisgICAga2luZDEgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBraW5kMiA9IFB5VW5pY29kZV9LSU5EKHN1YnN0cmluZyk7CisgICAga2luZCA9IGtpbmQxID4ga2luZDIgPyBraW5kMSA6IGtpbmQyOworICAgIGJ1ZjEgPSBQeVVuaWNvZGVfREFUQShzZWxmKTsKKyAgICBidWYyID0gUHlVbmljb2RlX0RBVEEoc3Vic3RyaW5nKTsKKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgYnVmMSA9IF9QeVVuaWNvZGVfQXNLaW5kKHNlbGYsIGtpbmQpOworICAgIGlmICghYnVmMSkgeworICAgICAgICBQeV9ERUNSRUYoc3Vic3RyaW5nKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmIChraW5kMiAhPSBraW5kKQorICAgICAgICBidWYyID0gX1B5VW5pY29kZV9Bc0tpbmQoc3Vic3RyaW5nLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjIpIHsKKyAgICAgICAgUHlfREVDUkVGKHN1YnN0cmluZyk7CisgICAgICAgIGlmIChraW5kMSAhPSBraW5kKSBQeU1lbV9GcmVlKGJ1ZjEpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgbGVuMSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGxlbjIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdWJzdHJpbmcpOworCisgICAgQURKVVNUX0lORElDRVMoc3RhcnQsIGVuZCwgbGVuMSk7CisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaXJlc3VsdCA9IHVjczFsaWJfY291bnQoCisgICAgICAgICAgICAoKFB5X1VDUzEqKWJ1ZjEpICsgc3RhcnQsIGVuZCAtIHN0YXJ0LAorICAgICAgICAgICAgYnVmMiwgbGVuMiwgUFlfU1NJWkVfVF9NQVgKKyAgICAgICAgICAgICk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIGlyZXN1bHQgPSB1Y3MybGliX2NvdW50KAorICAgICAgICAgICAgKChQeV9VQ1MyKilidWYxKSArIHN0YXJ0LCBlbmQgLSBzdGFydCwKKyAgICAgICAgICAgIGJ1ZjIsIGxlbjIsIFBZX1NTSVpFX1RfTUFYCisgICAgICAgICAgICApOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICBpcmVzdWx0ID0gdWNzNGxpYl9jb3VudCgKKyAgICAgICAgICAgICgoUHlfVUNTNCopYnVmMSkgKyBzdGFydCwgZW5kIC0gc3RhcnQsCisgICAgICAgICAgICBidWYyLCBsZW4yLCBQWV9TU0laRV9UX01BWAorICAgICAgICAgICAgKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDApOyBpcmVzdWx0ID0gMDsKKyAgICB9CisKKyAgICByZXN1bHQgPSBQeUxvbmdfRnJvbVNzaXplX3QoaXJlc3VsdCk7CisKKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYxKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYyKTsKIAogICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOwogCkBAIC03NTIyLDcgKzExMTcwLDcgQEAKIGNvZGVjcy5yZWdpc3Rlcl9lcnJvciB0aGF0IGNhbiBoYW5kbGUgVW5pY29kZUVuY29kZUVycm9ycy4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfZW5jb2RlKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCit1bmljb2RlX2VuY29kZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCiB7CiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJlbmNvZGluZyIsICJlcnJvcnMiLCAwfTsKICAgICBjaGFyICplbmNvZGluZyA9IE5VTEw7CkBAIC03NTMxLDcgKzExMTc5LDcgQEAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsICJ8c3M6ZW5jb2RlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZlbmNvZGluZywgJmVycm9ycykpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJldHVybiBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKChQeU9iamVjdCAqKXNlbGYsIGVuY29kaW5nLCBlcnJvcnMpOworICAgIHJldHVybiBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKHNlbGYsIGVuY29kaW5nLCBlcnJvcnMpOwogfQogCiBQeURvY19TVFJWQVIoZXhwYW5kdGFic19fZG9jX18sCkBAIC03NTQxLDgyICsxMTE4OSw4MiBAQAogSWYgdGFic2l6ZSBpcyBub3QgZ2l2ZW4sIGEgdGFiIHNpemUgb2YgOCBjaGFyYWN0ZXJzIGlzIGFzc3VtZWQuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfZXhwYW5kdGFicyhQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9leHBhbmR0YWJzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeV9VTklDT0RFICplOwotICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgUHlfVU5JQ09ERSAqcTsKLSAgICBQeV9VTklDT0RFICpxZTsKLSAgICBQeV9zc2l6ZV90IGksIGosIGluY3I7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1OworICAgIFB5X3NzaXplX3QgaSwgaiwgbGluZV9wb3MsIHNyY19sZW4sIGluY3I7CisgICAgUHlfVUNTNCBjaDsKKyAgICBQeU9iamVjdCAqdTsKKyAgICB2b2lkICpzcmNfZGF0YSwgKmRlc3RfZGF0YTsKICAgICBpbnQgdGFic2l6ZSA9IDg7CisgICAgaW50IGtpbmQ7CisgICAgaW50IGZvdW5kOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8aTpleHBhbmR0YWJzIiwgJnRhYnNpemUpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgLyogRmlyc3QgcGFzczogZGV0ZXJtaW5lIHNpemUgb2Ygb3V0cHV0IHN0cmluZyAqLwotICAgIGkgPSAwOyAvKiBjaGFycyB1cCB0byBhbmQgaW5jbHVkaW5nIG1vc3QgcmVjZW50IFxuIG9yIFxyICovCi0gICAgaiA9IDA7IC8qIGNoYXJzIHNpbmNlIG1vc3QgcmVjZW50IFxuIG9yIFxyICh1c2UgaW4gdGFiIGNhbGN1bGF0aW9ucykgKi8KLSAgICBlID0gc2VsZi0+c3RyICsgc2VsZi0+bGVuZ3RoOyAvKiBlbmQgb2YgaW5wdXQgKi8KLSAgICBmb3IgKHAgPSBzZWxmLT5zdHI7IHAgPCBlOyBwKyspCi0gICAgICAgIGlmICgqcCA9PSAnXHQnKSB7CisgICAgc3JjX2xlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGkgPSBqID0gbGluZV9wb3MgPSAwOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBzcmNfZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOworICAgIGZvdW5kID0gMDsKKyAgICBmb3IgKDsgaSA8IHNyY19sZW47IGkrKykgeworICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIHNyY19kYXRhLCBpKTsKKyAgICAgICAgaWYgKGNoID09ICdcdCcpIHsKKyAgICAgICAgICAgIGZvdW5kID0gMTsKICAgICAgICAgICAgIGlmICh0YWJzaXplID4gMCkgewotICAgICAgICAgICAgICAgIGluY3IgPSB0YWJzaXplIC0gKGogJSB0YWJzaXplKTsgLyogY2Fubm90IG92ZXJmbG93ICovCisgICAgICAgICAgICAgICAgaW5jciA9IHRhYnNpemUgLSAobGluZV9wb3MgJSB0YWJzaXplKTsgLyogY2Fubm90IG92ZXJmbG93ICovCiAgICAgICAgICAgICAgICAgaWYgKGogPiBQWV9TU0laRV9UX01BWCAtIGluY3IpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gb3ZlcmZsb3cxOworICAgICAgICAgICAgICAgICAgICBnb3RvIG92ZXJmbG93OworICAgICAgICAgICAgICAgIGxpbmVfcG9zICs9IGluY3I7CiAgICAgICAgICAgICAgICAgaiArPSBpbmNyOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgaWYgKGogPiBQWV9TU0laRV9UX01BWCAtIDEpCi0gICAgICAgICAgICAgICAgZ290byBvdmVyZmxvdzE7CisgICAgICAgICAgICAgICAgZ290byBvdmVyZmxvdzsKKyAgICAgICAgICAgIGxpbmVfcG9zKys7CiAgICAgICAgICAgICBqKys7Ci0gICAgICAgICAgICBpZiAoKnAgPT0gJ1xuJyB8fCAqcCA9PSAnXHInKSB7Ci0gICAgICAgICAgICAgICAgaWYgKGkgPiBQWV9TU0laRV9UX01BWCAtIGopCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gb3ZlcmZsb3cxOwotICAgICAgICAgICAgICAgIGkgKz0gajsKLSAgICAgICAgICAgICAgICBqID0gMDsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChjaCA9PSAnXG4nIHx8IGNoID09ICdccicpCisgICAgICAgICAgICAgICAgbGluZV9wb3MgPSAwOwogICAgICAgICB9Ci0KLSAgICBpZiAoaSA+IFBZX1NTSVpFX1RfTUFYIC0gaikKLSAgICAgICAgZ290byBvdmVyZmxvdzE7CisgICAgfQorICAgIGlmICghZm91bmQpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CiAKICAgICAvKiBTZWNvbmQgcGFzczogY3JlYXRlIG91dHB1dCBzdHJpbmcgYW5kIGZpbGwgaXQgKi8KLSAgICB1ID0gX1B5VW5pY29kZV9OZXcoaSArIGopOworICAgIHUgPSBQeVVuaWNvZGVfTmV3KGosIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShzZWxmKSk7CiAgICAgaWYgKCF1KQogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBkZXN0X2RhdGEgPSBQeVVuaWNvZGVfREFUQSh1KTsKIAotICAgIGogPSAwOyAvKiBzYW1lIGFzIGluIGZpcnN0IHBhc3MgKi8KLSAgICBxID0gdS0+c3RyOyAvKiBuZXh0IG91dHB1dCBjaGFyICovCi0gICAgcWUgPSB1LT5zdHIgKyB1LT5sZW5ndGg7IC8qIGVuZCBvZiBvdXRwdXQgKi8KKyAgICBpID0gaiA9IGxpbmVfcG9zID0gMDsKIAotICAgIGZvciAocCA9IHNlbGYtPnN0cjsgcCA8IGU7IHArKykKLSAgICAgICAgaWYgKCpwID09ICdcdCcpIHsKKyAgICBmb3IgKDsgaSA8IHNyY19sZW47IGkrKykgeworICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIHNyY19kYXRhLCBpKTsKKyAgICAgICAgaWYgKGNoID09ICdcdCcpIHsKICAgICAgICAgICAgIGlmICh0YWJzaXplID4gMCkgewotICAgICAgICAgICAgICAgIGkgPSB0YWJzaXplIC0gKGogJSB0YWJzaXplKTsKLSAgICAgICAgICAgICAgICBqICs9IGk7Ci0gICAgICAgICAgICAgICAgd2hpbGUgKGktLSkgewotICAgICAgICAgICAgICAgICAgICBpZiAocSA+PSBxZSkKLSAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb3ZlcmZsb3cyOwotICAgICAgICAgICAgICAgICAgICAqcSsrID0gJyAnOwotICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBpbmNyID0gdGFic2l6ZSAtIChsaW5lX3BvcyAlIHRhYnNpemUpOworICAgICAgICAgICAgICAgIGxpbmVfcG9zICs9IGluY3I7CisgICAgICAgICAgICAgICAgRklMTChraW5kLCBkZXN0X2RhdGEsICcgJywgaiwgaW5jcik7CisgICAgICAgICAgICAgICAgaiArPSBpbmNyOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgaWYgKHEgPj0gcWUpCi0gICAgICAgICAgICAgICAgZ290byBvdmVyZmxvdzI7Ci0gICAgICAgICAgICAqcSsrID0gKnA7CisgICAgICAgICAgICBsaW5lX3BvcysrOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRlc3RfZGF0YSwgaiwgY2gpOwogICAgICAgICAgICAgaisrOwotICAgICAgICAgICAgaWYgKCpwID09ICdcbicgfHwgKnAgPT0gJ1xyJykKLSAgICAgICAgICAgICAgICBqID0gMDsKKyAgICAgICAgICAgIGlmIChjaCA9PSAnXG4nIHx8IGNoID09ICdccicpCisgICAgICAgICAgICAgICAgbGluZV9wb3MgPSAwOwogICAgICAgICB9CisgICAgfQorICAgIGFzc2VydCAoaiA9PSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1KSk7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHUpOwogCi0gICAgcmV0dXJuIChQeU9iamVjdCopIHU7Ci0KLSAgb3ZlcmZsb3cyOgotICAgIFB5X0RFQ1JFRih1KTsKLSAgb3ZlcmZsb3cxOgorICBvdmVyZmxvdzoKICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwgIm5ldyBzdHJpbmcgaXMgdG9vIGxvbmciKTsKICAgICByZXR1cm4gTlVMTDsKIH0KQEAgLTc2MzEsOSArMTEyNzksOSBAQAogUmV0dXJuIC0xIG9uIGZhaWx1cmUuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX2ZpbmQoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3VuaWNvZGVfZmluZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpzdWJzdHJpbmc7CisgICAgUHlPYmplY3QgKnN1YnN0cmluZzsKICAgICBQeV9zc2l6ZV90IHN0YXJ0OwogICAgIFB5X3NzaXplX3QgZW5kOwogICAgIFB5X3NzaXplX3QgcmVzdWx0OwpAQCAtNzY0Miw2MSArMTEyOTAsODkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0LCAmZW5kKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXN1bHQgPSBzdHJpbmdsaWJfZmluZF9zbGljZSgKLSAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZiksIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSwKLSAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc3Vic3RyaW5nKSwgUHlVbmljb2RlX0dFVF9TSVpFKHN1YnN0cmluZyksCi0gICAgICAgIHN0YXJ0LCBlbmQKLSAgICAgICAgKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN1YnN0cmluZykgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcmVzdWx0ID0gYW55X2ZpbmRfc2xpY2UoMSwgc2VsZiwgc3Vic3RyaW5nLCBzdGFydCwgZW5kKTsKIAogICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOwogCisgICAgaWYgKHJlc3VsdCA9PSAtMikKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KHJlc3VsdCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX2dldGl0ZW0oUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeV9zc2l6ZV90IGluZGV4KQordW5pY29kZV9nZXRpdGVtKFB5T2JqZWN0ICpzZWxmLCBQeV9zc2l6ZV90IGluZGV4KQogewotICAgIGlmIChpbmRleCA8IDAgfHwgaW5kZXggPj0gc2VsZi0+bGVuZ3RoKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JbmRleEVycm9yLCAic3RyaW5nIGluZGV4IG91dCBvZiByYW5nZSIpOworICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUmVhZENoYXIoc2VsZiwgaW5kZXgpOworICAgIGlmIChjaCA9PSAoUHlfVUNTNCktMSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgcmV0dXJuIChQeU9iamVjdCopIFB5VW5pY29kZV9Gcm9tVW5pY29kZSgmc2VsZi0+c3RyW2luZGV4XSwgMSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tT3JkaW5hbChjaCk7CiB9CiAKIC8qIEJlbGlldmUgaXQgb3Igbm90LCB0aGlzIHByb2R1Y2VzIHRoZSBzYW1lIHZhbHVlIGZvciBBU0NJSSBzdHJpbmdzCi0gICBhcyBzdHJpbmdfaGFzaCgpLiAqLworICAgYXMgYnl0ZXNfaGFzaCgpLiAqLwogc3RhdGljIFB5X2hhc2hfdAotdW5pY29kZV9oYXNoKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaGFzaChQeU9iamVjdCAqc2VsZikKIHsKICAgICBQeV9zc2l6ZV90IGxlbjsKLSAgICBQeV9VTklDT0RFICpwOwotICAgIFB5X2hhc2hfdCB4OworICAgIFB5X3VoYXNoX3QgeDsKIAogICAgIGFzc2VydChfUHlfSGFzaFNlY3JldF9Jbml0aWFsaXplZCk7Ci0gICAgaWYgKHNlbGYtPmhhc2ggIT0gLTEpCi0gICAgICAgIHJldHVybiBzZWxmLT5oYXNoOwotICAgIGxlbiA9IFB5X1NJWkUoc2VsZik7CisgICAgaWYgKF9QeVVuaWNvZGVfSEFTSChzZWxmKSAhPSAtMSkKKyAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfSEFTSChzZWxmKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CiAgICAgLyoKICAgICAgIFdlIG1ha2UgdGhlIGhhc2ggb2YgdGhlIGVtcHR5IHN0cmluZyBiZSAwLCByYXRoZXIgdGhhbiB1c2luZwogICAgICAgKHByZWZpeCBeIHN1ZmZpeCksIHNpbmNlIHRoaXMgc2xpZ2h0bHkgb2JmdXNjYXRlcyB0aGUgaGFzaCBzZWNyZXQKICAgICAqLwogICAgIGlmIChsZW4gPT0gMCkgewotICAgICAgICBzZWxmLT5oYXNoID0gMDsKKyAgICAgICAgX1B5VW5pY29kZV9IQVNIKHNlbGYpID0gMDsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIHAgPSBzZWxmLT5zdHI7Ci0gICAgeCA9IF9QeV9IYXNoU2VjcmV0LnByZWZpeDsKLSAgICB4IF49ICpwIDw8IDc7Ci0gICAgd2hpbGUgKC0tbGVuID49IDApCi0gICAgICAgIHggPSAoX1B5SEFTSF9NVUxUSVBMSUVSKngpIF4gKnArKzsKLSAgICB4IF49IFB5X1NJWkUoc2VsZik7Ci0gICAgeCBePSBfUHlfSGFzaFNlY3JldC5zdWZmaXg7CisKKyAgICAvKiBUaGUgaGFzaCBmdW5jdGlvbiBhcyBhIG1hY3JvLCBnZXRzIGV4cGFuZGVkIHRocmVlIHRpbWVzIGJlbG93LiAqLworI2RlZmluZSBIQVNIKFApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgeCBePSAoUHlfdWhhc2hfdCkgKlAgPDwgNzsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB3aGlsZSAoLS1sZW4gPj0gMCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB4ID0gKF9QeUhBU0hfTVVMVElQTElFUiAqIHgpIF4gKFB5X3VoYXNoX3QpICpQKys7ICBcCisKKyAgICB4ID0gKFB5X3VoYXNoX3QpIF9QeV9IYXNoU2VjcmV0LnByZWZpeDsKKyAgICBzd2l0Y2ggKFB5VW5pY29kZV9LSU5EKHNlbGYpKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDogeworICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpjID0gUHlVbmljb2RlXzFCWVRFX0RBVEEoc2VsZik7CisgICAgICAgIEhBU0goYyk7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOiB7CisgICAgICAgIGNvbnN0IFB5X1VDUzIgKnMgPSBQeVVuaWNvZGVfMkJZVEVfREFUQShzZWxmKTsKKyAgICAgICAgSEFTSChzKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIGRlZmF1bHQ6IHsKKyAgICAgICAgUHlfVUNTNCAqbDsKKyAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKHNlbGYpID09IFB5VW5pY29kZV80QllURV9LSU5EICYmCisgICAgICAgICAgICAgICAiSW1wb3NzaWJsZSBzd2l0Y2ggY2FzZSBpbiB1bmljb2RlX2hhc2giKTsKKyAgICAgICAgbCA9IFB5VW5pY29kZV80QllURV9EQVRBKHNlbGYpOworICAgICAgICBIQVNIKGwpOworICAgICAgICBicmVhazsKKyAgICB9CisgICAgfQorICAgIHggXj0gKFB5X3VoYXNoX3QpIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIHggXj0gKFB5X3VoYXNoX3QpIF9QeV9IYXNoU2VjcmV0LnN1ZmZpeDsKKwogICAgIGlmICh4ID09IC0xKQogICAgICAgICB4ID0gLTI7Ci0gICAgc2VsZi0+aGFzaCA9IHg7CisgICAgX1B5VW5pY29kZV9IQVNIKHNlbGYpID0geDsKICAgICByZXR1cm4geDsKIH0KKyN1bmRlZiBIQVNICiAKIFB5RG9jX1NUUlZBUihpbmRleF9fZG9jX18sCiAgICAgICAgICAgICAgIlMuaW5kZXgoc3ViWywgc3RhcnRbLCBlbmRdXSkgLT4gaW50XG5cCkBAIC03NzA0LDEwICsxMTM4MCwxMCBAQAogTGlrZSBTLmZpbmQoKSBidXQgcmFpc2UgVmFsdWVFcnJvciB3aGVuIHRoZSBzdWJzdHJpbmcgaXMgbm90IGZvdW5kLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9pbmRleChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9pbmRleChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlfc3NpemVfdCByZXN1bHQ7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpzdWJzdHJpbmc7CisgICAgUHlPYmplY3QgKnN1YnN0cmluZzsKICAgICBQeV9zc2l6ZV90IHN0YXJ0OwogICAgIFB5X3NzaXplX3QgZW5kOwogCkBAIC03NzE1LDE0ICsxMTM5MSwxOCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnQsICZlbmQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJlc3VsdCA9IHN0cmluZ2xpYl9maW5kX3NsaWNlKAotICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKSwgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpLAotICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdWJzdHJpbmcpLCBQeVVuaWNvZGVfR0VUX1NJWkUoc3Vic3RyaW5nKSwKLSAgICAgICAgc3RhcnQsIGVuZAotICAgICAgICApOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3Vic3RyaW5nKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXN1bHQgPSBhbnlfZmluZF9zbGljZSgxLCBzZWxmLCBzdWJzdHJpbmcsIHN0YXJ0LCBlbmQpOwogCiAgICAgUHlfREVDUkVGKHN1YnN0cmluZyk7CiAKKyAgICBpZiAocmVzdWx0ID09IC0yKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmIChyZXN1bHQgPCAwKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAic3Vic3RyaW5nIG5vdCBmb3VuZCIpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTc3MzgsMjQgKzExNDE4LDMxIEBACiBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyIGluIFMsIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc2xvd2VyKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXNsb3dlcihQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIGludCBjYXNlZDsKIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxKQotICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKFB5X1VOSUNPREVfSVNMT1dFUigqcCkpOworICAgIGlmIChsZW5ndGggPT0gMSkKKyAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygKKyAgICAgICAgICAgIFB5X1VOSUNPREVfSVNMT1dFUihQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCAwKSkpOwogCiAgICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAwKQorICAgIGlmIChsZW5ndGggPT0gMCkKICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKIAotICAgIGUgPSBwICsgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpOwogICAgIGNhc2VkID0gMDsKLSAgICB3aGlsZSAocCA8IGUpIHsKLSAgICAgICAgY29uc3QgUHlfVUNTNCBjaCA9IF9QeV9VTklDT0RFX05FWFQocCwgZSk7CisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKIAogICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU1VQUEVSKGNoKSB8fCBQeV9VTklDT0RFX0lTVElUTEUoY2gpKQogICAgICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKQEAgLTc3NzIsMjQgKzExNDU5LDMxIEBACiBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyIGluIFMsIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc3VwcGVyKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXN1cHBlcihQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIGludCBjYXNlZDsKIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxKQotICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKFB5X1VOSUNPREVfSVNVUFBFUigqcCkgIT0gMCk7CisgICAgaWYgKGxlbmd0aCA9PSAxKQorICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKAorICAgICAgICAgICAgUHlfVU5JQ09ERV9JU1VQUEVSKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApKSAhPSAwKTsKIAogICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgZW1wdHkgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMCkKKyAgICBpZiAobGVuZ3RoID09IDApCiAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAKLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKICAgICBjYXNlZCA9IDA7Ci0gICAgd2hpbGUgKHAgPCBlKSB7Ci0gICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBfUHlfVU5JQ09ERV9ORVhUKHAsIGUpOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CiAKICAgICAgICAgaWYgKFB5X1VOSUNPREVfSVNMT1dFUihjaCkgfHwgUHlfVU5JQ09ERV9JU1RJVExFKGNoKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CkBAIC03ODA4LDI2ICsxMTUwMiwzNCBAQAogUmV0dXJuIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc3RpdGxlKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXN0aXRsZShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIGludCBjYXNlZCwgcHJldmlvdXNfaXNfY2FzZWQ7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOworCiAgICAgLyogU2hvcnRjdXQgZm9yIHNpbmdsZSBjaGFyYWN0ZXIgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMSkKLSAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygoUHlfVU5JQ09ERV9JU1RJVExFKCpwKSAhPSAwKSB8fAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeV9VTklDT0RFX0lTVVBQRVIoKnApICE9IDApKTsKKyAgICBpZiAobGVuZ3RoID09IDEpIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApOworICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKChQeV9VTklDT0RFX0lTVElUTEUoY2gpICE9IDApIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5X1VOSUNPREVfSVNVUFBFUihjaCkgIT0gMCkpOworICAgIH0KIAogICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgZW1wdHkgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMCkKKyAgICBpZiAobGVuZ3RoID09IDApCiAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAKLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKICAgICBjYXNlZCA9IDA7CiAgICAgcHJldmlvdXNfaXNfY2FzZWQgPSAwOwotICAgIHdoaWxlIChwIDwgZSkgewotICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gX1B5X1VOSUNPREVfTkVYVChwLCBlKTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgY29uc3QgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOwogCiAgICAgICAgIGlmIChQeV9VTklDT0RFX0lTVVBQRVIoY2gpIHx8IFB5X1VOSUNPREVfSVNUSVRMRShjaCkpIHsKICAgICAgICAgICAgIGlmIChwcmV2aW91c19pc19jYXNlZCkKQEAgLTc4NTQsMjMgKzExNTU2LDI5IEBACiBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciBpbiBTLCBGYWxzZSBvdGhlcndpc2UuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfaXNzcGFjZShQeVVuaWNvZGVPYmplY3QgKnNlbGYpCit1bmljb2RlX2lzc3BhY2UoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYpOwotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKmU7CisgICAgUHlfc3NpemVfdCBpLCBsZW5ndGg7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CiAKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxICYmCi0gICAgICAgIFB5X1VOSUNPREVfSVNTUEFDRSgqcCkpCi0gICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CisgICAgaWYgKGxlbmd0aCA9PSAxKQorICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKAorICAgICAgICAgICAgUHlfVU5JQ09ERV9JU1NQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApKSk7CiAKICAgICAvKiBTcGVjaWFsIGNhc2UgZm9yIGVtcHR5IHN0cmluZ3MgKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpID09IDApCisgICAgaWYgKGxlbmd0aCA9PSAwKQogICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDApOwogCi0gICAgZSA9IHAgKyBQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZik7Ci0gICAgd2hpbGUgKHAgPCBlKSB7Ci0gICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBfUHlfVU5JQ09ERV9ORVhUKHAsIGUpOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CiAgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU1NQQUNFKGNoKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAgICAgfQpAQCAtNzg4NCwyMyArMTE1OTIsMjkgQEAKIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyIGluIFMsIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc2FscGhhKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXNhbHBoYShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShzZWxmKTsKIAogICAgIC8qIFNob3J0Y3V0IGZvciBzaW5nbGUgY2hhcmFjdGVyIHN0cmluZ3MgKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpID09IDEgJiYKLSAgICAgICAgUHlfVU5JQ09ERV9JU0FMUEhBKCpwKSkKLSAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygxKTsKKyAgICBpZiAobGVuZ3RoID09IDEpCisgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoCisgICAgICAgICAgICBQeV9VTklDT0RFX0lTQUxQSEEoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCkpKTsKIAogICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgZW1wdHkgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMCkKKyAgICBpZiAobGVuZ3RoID09IDApCiAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAKLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKLSAgICB3aGlsZSAocCA8IGUpIHsKLSAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTQUxQSEEoX1B5X1VOSUNPREVfTkVYVChwLCBlKSkpCisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU0FMUEhBKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAgICAgfQogICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CkBAIC03OTEzLDIzICsxMTYyNywzMSBAQAogYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIgaW4gUywgRmFsc2Ugb3RoZXJ3aXNlLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX2lzYWxudW0oUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV9pc2FsbnVtKFB5T2JqZWN0ICpzZWxmKQogewotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICplOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBsZW4sIGk7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CiAKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxICYmCi0gICAgICAgIFB5X1VOSUNPREVfSVNBTE5VTSgqcCkpCi0gICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CisgICAgaWYgKGxlbiA9PSAxKSB7CisgICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCAwKTsKKyAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZyhQeV9VTklDT0RFX0lTQUxOVU0oY2gpKTsKKyAgICB9CiAKICAgICAvKiBTcGVjaWFsIGNhc2UgZm9yIGVtcHR5IHN0cmluZ3MgKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpID09IDApCisgICAgaWYgKGxlbiA9PSAwKQogICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDApOwogCi0gICAgZSA9IHAgKyBQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZik7Ci0gICAgd2hpbGUgKHAgPCBlKSB7Ci0gICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBfUHlfVU5JQ09ERV9ORVhUKHAsIGUpOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CiAgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU0FMTlVNKGNoKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAgICAgfQpAQCAtNzk0MywyMyArMTE2NjUsMjkgQEAKIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc2RlY2ltYWwoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV9pc2RlY2ltYWwoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYpOwotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKmU7CisgICAgUHlfc3NpemVfdCBpLCBsZW5ndGg7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CiAKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxICYmCi0gICAgICAgIFB5X1VOSUNPREVfSVNERUNJTUFMKCpwKSkKLSAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygxKTsKKyAgICBpZiAobGVuZ3RoID09IDEpCisgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoCisgICAgICAgICAgICBQeV9VTklDT0RFX0lTREVDSU1BTChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCAwKSkpOwogCiAgICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAwKQorICAgIGlmIChsZW5ndGggPT0gMCkKICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKIAotICAgIGUgPSBwICsgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpOwotICAgIHdoaWxlIChwIDwgZSkgewotICAgICAgICBpZiAoIVB5X1VOSUNPREVfSVNERUNJTUFMKF9QeV9VTklDT0RFX05FWFQocCwgZSkpKQorICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBpZiAoIVB5X1VOSUNPREVfSVNERUNJTUFMKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAgICAgfQogICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CkBAIC03OTcyLDIzICsxMTcwMCwzMCBAQAogYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIgaW4gUywgRmFsc2Ugb3RoZXJ3aXNlLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX2lzZGlnaXQoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV9pc2RpZ2l0KFB5T2JqZWN0ICpzZWxmKQogewotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICplOworICAgIFB5X3NzaXplX3QgaSwgbGVuZ3RoOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOwogCiAgICAgLyogU2hvcnRjdXQgZm9yIHNpbmdsZSBjaGFyYWN0ZXIgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMSAmJgotICAgICAgICBQeV9VTklDT0RFX0lTRElHSVQoKnApKQotICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDEpOworICAgIGlmIChsZW5ndGggPT0gMSkgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCk7CisgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoUHlfVU5JQ09ERV9JU0RJR0lUKGNoKSk7CisgICAgfQogCiAgICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAwKQorICAgIGlmIChsZW5ndGggPT0gMCkKICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKIAotICAgIGUgPSBwICsgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpOwotICAgIHdoaWxlIChwIDwgZSkgewotICAgICAgICBpZiAoIVB5X1VOSUNPREVfSVNESUdJVChfUHlfVU5JQ09ERV9ORVhUKHAsIGUpKSkKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTRElHSVQoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpKQogICAgICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKICAgICB9CiAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygxKTsKQEAgLTgwMDEsMjMgKzExNzM2LDI5IEBACiBGYWxzZSBvdGhlcndpc2UuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfaXNudW1lcmljKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXNudW1lcmljKFB5T2JqZWN0ICpzZWxmKQogewotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICplOworICAgIFB5X3NzaXplX3QgaSwgbGVuZ3RoOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOwogCiAgICAgLyogU2hvcnRjdXQgZm9yIHNpbmdsZSBjaGFyYWN0ZXIgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMSAmJgotICAgICAgICBQeV9VTklDT0RFX0lTTlVNRVJJQygqcCkpCi0gICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CisgICAgaWYgKGxlbmd0aCA9PSAxKQorICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKAorICAgICAgICAgICAgUHlfVU5JQ09ERV9JU05VTUVSSUMoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCkpKTsKIAogICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgZW1wdHkgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMCkKKyAgICBpZiAobGVuZ3RoID09IDApCiAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAKLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKLSAgICB3aGlsZSAocCA8IGUpIHsKLSAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTTlVNRVJJQyhfUHlfVU5JQ09ERV9ORVhUKHAsIGUpKSkKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTTlVNRVJJQyhQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSkpCiAgICAgICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDApOwogICAgIH0KICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDEpOwpAQCAtODAyNiwxMyArMTE3NjcsMjEgQEAKIGludAogUHlVbmljb2RlX0lzSWRlbnRpZmllcihQeU9iamVjdCAqc2VsZikKIHsKLSAgICBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKFB5VW5pY29kZU9iamVjdCopc2VsZik7Ci0gICAgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X3NzaXplX3QgaTsKICAgICBQeV9VQ1M0IGZpcnN0OwogCi0gICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAwKQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpIHsKKyAgICAgICAgUHlfRmF0YWxFcnJvcigiaWRlbnRpZmllciBub3QgcmVhZHkiKTsKICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpID09IDApCisgICAgICAgIHJldHVybiAwOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CiAKICAgICAvKiBQRVAgMzEzMSBzYXlzIHRoYXQgdGhlIGZpcnN0IGNoYXJhY3RlciBtdXN0IGJlIGluCiAgICAgICAgWElEX1N0YXJ0IGFuZCBzdWJzZXF1ZW50IGNoYXJhY3RlcnMgaW4gWElEX0NvbnRpbnVlLApAQCAtODA0MiwxMyArMTE3OTEsMTIgQEAKICAgICAgICBkZWZpbml0aW9uIG9mIFhJRF9TdGFydCBhbmQgWElEX0NvbnRpbnVlLCBpdCBpcyBzdWZmaWNpZW50CiAgICAgICAgdG8gY2hlY2sganVzdCBmb3IgdGhlc2UsIGV4Y2VwdCB0aGF0IF8gbXVzdCBiZSBhbGxvd2VkCiAgICAgICAgYXMgc3RhcnRpbmcgYW4gaWRlbnRpZmllci4gICovCi0gICAgZSA9IHAgKyBQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZik7Ci0gICAgZmlyc3QgPSBfUHlfVU5JQ09ERV9ORVhUKHAsIGUpOworICAgIGZpcnN0ID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCk7CiAgICAgaWYgKCFfUHlVbmljb2RlX0lzWGlkU3RhcnQoZmlyc3QpICYmIGZpcnN0ICE9IDB4NUYgLyogTE9XIExJTkUgKi8pCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgd2hpbGUgKHAgPCBlKQotICAgICAgICBpZiAoIV9QeVVuaWNvZGVfSXNYaWRDb250aW51ZShfUHlfVU5JQ09ERV9ORVhUKHAsIGUpKSkKKyAgICBmb3IgKGkgPSAxOyBpIDwgUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7IGkrKykKKyAgICAgICAgaWYgKCFfUHlVbmljb2RlX0lzWGlkQ29udGludWUoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuIDE7CiB9CkBAIC04MDc0LDE3ICsxMTgyMiwyMyBAQAogc3RhdGljIFB5T2JqZWN0KgogdW5pY29kZV9pc3ByaW50YWJsZShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShzZWxmKTsKIAogICAgIC8qIFNob3J0Y3V0IGZvciBzaW5nbGUgY2hhcmFjdGVyIHN0cmluZ3MgKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpID09IDEgJiYgUHlfVU5JQ09ERV9JU1BSSU5UQUJMRSgqcCkpIHsKLSAgICAgICAgUHlfUkVUVVJOX1RSVUU7Ci0gICAgfQorICAgIGlmIChsZW5ndGggPT0gMSkKKyAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygKKyAgICAgICAgICAgIFB5X1VOSUNPREVfSVNQUklOVEFCTEUoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCkpKTsKIAotICAgIGUgPSBwICsgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpOwotICAgIHdoaWxlIChwIDwgZSkgewotICAgICAgICBpZiAoIVB5X1VOSUNPREVfSVNQUklOVEFCTEUoX1B5X1VOSUNPREVfTkVYVChwLCBlKSkpIHsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTUFJJTlRBQkxFKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKSkgewogICAgICAgICAgICAgUHlfUkVUVVJOX0ZBTFNFOwogICAgICAgICB9CiAgICAgfQpAQCAtODEwNCw5ICsxMTg1OCwxMSBAQAogfQogCiBzdGF0aWMgUHlfc3NpemVfdAotdW5pY29kZV9sZW5ndGgoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV9sZW5ndGgoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIHNlbGYtPmxlbmd0aDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisgICAgcmV0dXJuIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOwogfQogCiBQeURvY19TVFJWQVIobGp1c3RfX2RvY19fLApAQCAtODExNiwyMCArMTE4NzIsMjEgQEAKIGRvbmUgdXNpbmcgdGhlIHNwZWNpZmllZCBmaWxsIGNoYXJhY3RlciAoZGVmYXVsdCBpcyBhIHNwYWNlKS4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfbGp1c3QoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3VuaWNvZGVfbGp1c3QoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5X3NzaXplX3Qgd2lkdGg7Ci0gICAgUHlfVU5JQ09ERSBmaWxsY2hhciA9ICcgJzsKKyAgICBQeV9VQ1M0IGZpbGxjaGFyID0gJyAnOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJufE8mOmxqdXN0IiwgJndpZHRoLCBjb252ZXJ0X3VjLCAmZmlsbGNoYXIpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGlmIChzZWxmLT5sZW5ndGggPj0gd2lkdGggJiYgUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKLSAgICAgICAgUHlfSU5DUkVGKHNlbGYpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0Kikgc2VsZjsKLSAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXR1cm4gKFB5T2JqZWN0KikgcGFkKHNlbGYsIDAsIHdpZHRoIC0gc2VsZi0+bGVuZ3RoLCBmaWxsY2hhcik7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpID49IHdpZHRoKQorICAgICAgICByZXR1cm4gdW5pY29kZV9yZXN1bHRfdW5jaGFuZ2VkKHNlbGYpOworCisgICAgcmV0dXJuIHBhZChzZWxmLCAwLCB3aWR0aCAtIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLCBmaWxsY2hhcik7CiB9CiAKIFB5RG9jX1NUUlZBUihsb3dlcl9fZG9jX18sCkBAIC04MTM4LDkgKzExODk1LDEzIEBACiBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgUyBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX2xvd2VyKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfbG93ZXIoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIGZpeHVwKHNlbGYsIGZpeGxvd2VyKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHNlbGYpKQorICAgICAgICByZXR1cm4gYXNjaWlfdXBwZXJfb3JfbG93ZXIoc2VsZiwgMSk7CisgICAgcmV0dXJuIGNhc2Vfb3BlcmF0aW9uKHNlbGYsIGRvX2xvd2VyKTsKIH0KIAogI2RlZmluZSBMRUZUU1RSSVAgMApAQCAtODE1NCwxOSArMTE5MTUsMjcgQEAKIAogLyogZXh0ZXJuYWxseSB2aXNpYmxlIGZvciBzdHIuc3RyaXAodW5pY29kZSkgKi8KIFB5T2JqZWN0ICoKLV9QeVVuaWNvZGVfWFN0cmlwKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgaW50IHN0cmlwdHlwZSwgUHlPYmplY3QgKnNlcG9iaikKK19QeVVuaWNvZGVfWFN0cmlwKFB5T2JqZWN0ICpzZWxmLCBpbnQgc3RyaXB0eXBlLCBQeU9iamVjdCAqc2Vwb2JqKQogewotICAgIFB5X1VOSUNPREUgKnMgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICBQeV9zc2l6ZV90IGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKLSAgICBQeV9VTklDT0RFICpzZXAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZXBvYmopOwotICAgIFB5X3NzaXplX3Qgc2VwbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHNlcG9iaik7Ci0gICAgUHlfc3NpemVfdCBpLCBqOworICAgIHZvaWQgKmRhdGE7CisgICAgaW50IGtpbmQ7CisgICAgUHlfc3NpemVfdCBpLCBqLCBsZW47CisgICAgQkxPT01fTUFTSyBzZXBtYXNrOwogCi0gICAgQkxPT01fTUFTSyBzZXBtYXNrID0gbWFrZV9ibG9vbV9tYXNrKHNlcCwgc2VwbGVuKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xIHx8IFB5VW5pY29kZV9SRUFEWShzZXBvYmopID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgc2VwbWFzayA9IG1ha2VfYmxvb21fbWFzayhQeVVuaWNvZGVfS0lORChzZXBvYmopLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0RBVEEoc2Vwb2JqKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlcG9iaikpOwogCiAgICAgaSA9IDA7CiAgICAgaWYgKHN0cmlwdHlwZSAhPSBSSUdIVFNUUklQKSB7Ci0gICAgICAgIHdoaWxlIChpIDwgbGVuICYmIEJMT09NX01FTUJFUihzZXBtYXNrLCBzW2ldLCBzZXAsIHNlcGxlbikpIHsKKyAgICAgICAgd2hpbGUgKGkgPCBsZW4gJiYKKyAgICAgICAgICAgICAgIEJMT09NX01FTUJFUihzZXBtYXNrLCBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSwgc2Vwb2JqKSkgewogICAgICAgICAgICAgaSsrOwogICAgICAgICB9CiAgICAgfQpAQCAtODE3NSwyOCArMTE5NDQsNjkgQEAKICAgICBpZiAoc3RyaXB0eXBlICE9IExFRlRTVFJJUCkgewogICAgICAgICBkbyB7CiAgICAgICAgICAgICBqLS07Ci0gICAgICAgIH0gd2hpbGUgKGogPj0gaSAmJiBCTE9PTV9NRU1CRVIoc2VwbWFzaywgc1tqXSwgc2VwLCBzZXBsZW4pKTsKKyAgICAgICAgfSB3aGlsZSAoaiA+PSBpICYmCisgICAgICAgICAgICAgICAgIEJMT09NX01FTUJFUihzZXBtYXNrLCBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBqKSwgc2Vwb2JqKSk7CiAgICAgICAgIGorKzsKICAgICB9CiAKLSAgICBpZiAoaSA9PSAwICYmIGogPT0gbGVuICYmIFB5VW5pY29kZV9DaGVja0V4YWN0KHNlbGYpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCopc2VsZjsKLSAgICB9Ci0gICAgZWxzZQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHMraSwgai1pKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX1N1YnN0cmluZyhzZWxmLCBpLCBqKTsKIH0KIAorUHlPYmplY3QqCitQeVVuaWNvZGVfU3Vic3RyaW5nKFB5T2JqZWN0ICpzZWxmLCBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKK3sKKyAgICB1bnNpZ25lZCBjaGFyICpkYXRhOworICAgIGludCBraW5kOworICAgIFB5X3NzaXplX3QgbGVuZ3RoOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBlbmQgPSBQeV9NSU4oZW5kLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSk7CisKKyAgICBpZiAoc3RhcnQgPT0gMCAmJiBlbmQgPT0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CisKKyAgICBsZW5ndGggPSBlbmQgLSBzdGFydDsKKyAgICBpZiAobGVuZ3RoID09IDEpCisgICAgICAgIHJldHVybiB1bmljb2RlX2dldGl0ZW0oc2VsZiwgc3RhcnQpOworCisgICAgaWYgKHN0YXJ0IDwgMCB8fCBlbmQgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JbmRleEVycm9yLCAic3RyaW5nIGluZGV4IG91dCBvZiByYW5nZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHNlbGYpKSB7CisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICAgICAgZGF0YSA9IFB5VW5pY29kZV8xQllURV9EQVRBKHNlbGYpOworICAgICAgICByZXR1cm4gdW5pY29kZV9mcm9tYXNjaWkoZGF0YSArIHN0YXJ0LCBsZW5ndGgpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgICAgICBkYXRhID0gUHlVbmljb2RlXzFCWVRFX0RBVEEoc2VsZik7CisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKGtpbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgKyBraW5kICogc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbmd0aCk7CisgICAgfQorfQogCiBzdGF0aWMgUHlPYmplY3QgKgotZG9fc3RyaXAoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBpbnQgc3RyaXB0eXBlKQorZG9fc3RyaXAoUHlPYmplY3QgKnNlbGYsIGludCBzdHJpcHR5cGUpCiB7Ci0gICAgUHlfVU5JQ09ERSAqcyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYpOwotICAgIFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpLCBpLCBqOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBsZW4sIGksIGo7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CiAKICAgICBpID0gMDsKICAgICBpZiAoc3RyaXB0eXBlICE9IFJJR0hUU1RSSVApIHsKLSAgICAgICAgd2hpbGUgKGkgPCBsZW4gJiYgUHlfVU5JQ09ERV9JU1NQQUNFKHNbaV0pKSB7CisgICAgICAgIHdoaWxlIChpIDwgbGVuICYmIFB5X1VOSUNPREVfSVNTUEFDRShQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSkpIHsKICAgICAgICAgICAgIGkrKzsKICAgICAgICAgfQogICAgIH0KQEAgLTgyMDUsMjEgKzEyMDE1LDE2IEBACiAgICAgaWYgKHN0cmlwdHlwZSAhPSBMRUZUU1RSSVApIHsKICAgICAgICAgZG8gewogICAgICAgICAgICAgai0tOwotICAgICAgICB9IHdoaWxlIChqID49IGkgJiYgUHlfVU5JQ09ERV9JU1NQQUNFKHNbal0pKTsKKyAgICAgICAgfSB3aGlsZSAoaiA+PSBpICYmIFB5X1VOSUNPREVfSVNTUEFDRShQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBqKSkpOwogICAgICAgICBqKys7CiAgICAgfQogCi0gICAgaWYgKGkgPT0gMCAmJiBqID09IGxlbiAmJiBQeVVuaWNvZGVfQ2hlY2tFeGFjdChzZWxmKSkgewotICAgICAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgICAgIHJldHVybiAoUHlPYmplY3QqKXNlbGY7Ci0gICAgfQotICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShzK2ksIGotaSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9TdWJzdHJpbmcoc2VsZiwgaSwgaik7CiB9CiAKIAogc3RhdGljIFB5T2JqZWN0ICoKLWRvX2FyZ3N0cmlwKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgaW50IHN0cmlwdHlwZSwgUHlPYmplY3QgKmFyZ3MpCitkb19hcmdzdHJpcChQeU9iamVjdCAqc2VsZiwgaW50IHN0cmlwdHlwZSwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKnNlcCA9IE5VTEw7CiAKQEAgLTgyNDksNyArMTIwNTQsNyBAQAogSWYgY2hhcnMgaXMgZ2l2ZW4gYW5kIG5vdCBOb25lLCByZW1vdmUgY2hhcmFjdGVycyBpbiBjaGFycyBpbnN0ZWFkLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9zdHJpcChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9zdHJpcChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoYXJncykgPT0gMCkKICAgICAgICAgcmV0dXJuIGRvX3N0cmlwKHNlbGYsIEJPVEhTVFJJUCk7IC8qIENvbW1vbiBjYXNlICovCkBAIC04MjY1LDcgKzEyMDcwLDcgQEAKIElmIGNoYXJzIGlzIGdpdmVuIGFuZCBub3QgTm9uZSwgcmVtb3ZlIGNoYXJhY3RlcnMgaW4gY2hhcnMgaW5zdGVhZC4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfbHN0cmlwKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX2xzdHJpcChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoYXJncykgPT0gMCkKICAgICAgICAgcmV0dXJuIGRvX3N0cmlwKHNlbGYsIExFRlRTVFJJUCk7IC8qIENvbW1vbiBjYXNlICovCkBAIC04MjgxLDcgKzEyMDg2LDcgQEAKIElmIGNoYXJzIGlzIGdpdmVuIGFuZCBub3QgTm9uZSwgcmVtb3ZlIGNoYXJhY3RlcnMgaW4gY2hhcnMgaW5zdGVhZC4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfcnN0cmlwKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX3JzdHJpcChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoYXJncykgPT0gMCkKICAgICAgICAgcmV0dXJuIGRvX3N0cmlwKHNlbGYsIFJJR0hUU1RSSVApOyAvKiBDb21tb24gY2FzZSAqLwpAQCAtODI5MSw2NCArMTIwOTYsNzYgQEAKIAogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX3JlcGVhdChQeVVuaWNvZGVPYmplY3QgKnN0ciwgUHlfc3NpemVfdCBsZW4pCit1bmljb2RlX3JlcGVhdChQeU9iamVjdCAqc3RyLCBQeV9zc2l6ZV90IGxlbikKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnU7Ci0gICAgUHlfVU5JQ09ERSAqcDsKLSAgICBQeV9zc2l6ZV90IG5jaGFyczsKLSAgICBzaXplX3QgbmJ5dGVzOworICAgIFB5T2JqZWN0ICp1OworICAgIFB5X3NzaXplX3QgbmNoYXJzLCBuOwogCiAgICAgaWYgKGxlbiA8IDEpIHsKICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZV9lbXB0eTsKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW1wdHk7CiAgICAgfQogCi0gICAgaWYgKGxlbiA9PSAxICYmIFB5VW5pY29kZV9DaGVja0V4YWN0KHN0cikpIHsKLSAgICAgICAgLyogbm8gcmVwZWF0LCByZXR1cm4gb3JpZ2luYWwgc3RyaW5nICovCi0gICAgICAgIFB5X0lOQ1JFRihzdHIpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0Kikgc3RyOwotICAgIH0KKyAgICAvKiBubyByZXBlYXQsIHJldHVybiBvcmlnaW5hbCBzdHJpbmcgKi8KKyAgICBpZiAobGVuID09IDEpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc3RyKTsKIAotICAgIC8qIGVuc3VyZSAjIG9mIGNoYXJzIG5lZWRlZCBkb2Vzbid0IG92ZXJmbG93IGludCBhbmQgIyBvZiBieXRlcwotICAgICAqIG5lZWRlZCBkb2Vzbid0IG92ZXJmbG93IHNpemVfdAotICAgICAqLwotICAgIG5jaGFycyA9IGxlbiAqIHN0ci0+bGVuZ3RoOwotICAgIGlmIChuY2hhcnMgLyBsZW4gIT0gc3RyLT5sZW5ndGgpIHsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikgPiBQWV9TU0laRV9UX01BWCAvIGxlbikgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJyZXBlYXRlZCBzdHJpbmcgaXMgdG9vIGxvbmciKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIG5ieXRlcyA9IChuY2hhcnMgKyAxKSAqIHNpemVvZihQeV9VTklDT0RFKTsKLSAgICBpZiAobmJ5dGVzIC8gc2l6ZW9mKFB5X1VOSUNPREUpICE9IChzaXplX3QpKG5jaGFycyArIDEpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgInJlcGVhdGVkIHN0cmluZyBpcyB0b28gbG9uZyIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgdSA9IF9QeVVuaWNvZGVfTmV3KG5jaGFycyk7CisgICAgbmNoYXJzID0gbGVuICogUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKTsKKworICAgIHUgPSBQeVVuaWNvZGVfTmV3KG5jaGFycywgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHN0cikpOwogICAgIGlmICghdSkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKHUpID09IFB5VW5pY29kZV9LSU5EKHN0cikpOwogCi0gICAgcCA9IHUtPnN0cjsKLQotICAgIGlmIChzdHItPmxlbmd0aCA9PSAxKSB7Ci0gICAgICAgIFB5X1VOSUNPREVfRklMTChwLCBzdHItPnN0clswXSwgbGVuKTsKLSAgICB9IGVsc2UgewotICAgICAgICBQeV9zc2l6ZV90IGRvbmUgPSBzdHItPmxlbmd0aDsgLyogbnVtYmVyIG9mIGNoYXJhY3RlcnMgY29waWVkIHRoaXMgZmFyICovCi0gICAgICAgIFB5X1VOSUNPREVfQ09QWShwLCBzdHItPnN0ciwgc3RyLT5sZW5ndGgpOworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpID09IDEpIHsKKyAgICAgICAgY29uc3QgaW50IGtpbmQgPSBQeVVuaWNvZGVfS0lORChzdHIpOworICAgICAgICBjb25zdCBQeV9VQ1M0IGZpbGxfY2hhciA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIFB5VW5pY29kZV9EQVRBKHN0ciksIDApOworICAgICAgICBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCkgeworICAgICAgICAgICAgdm9pZCAqdG8gPSBQeVVuaWNvZGVfREFUQSh1KTsKKyAgICAgICAgICAgIG1lbXNldCh0bywgKHVuc2lnbmVkIGNoYXIpZmlsbF9jaGFyLCBsZW4pOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKGtpbmQgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQpIHsKKyAgICAgICAgICAgIFB5X1VDUzIgKnVjczIgPSBQeVVuaWNvZGVfMkJZVEVfREFUQSh1KTsKKyAgICAgICAgICAgIGZvciAobiA9IDA7IG4gPCBsZW47ICsrbikKKyAgICAgICAgICAgICAgICB1Y3MyW25dID0gZmlsbF9jaGFyOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgUHlfVUNTNCAqdWNzNCA9IFB5VW5pY29kZV80QllURV9EQVRBKHUpOworICAgICAgICAgICAgYXNzZXJ0KGtpbmQgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpOworICAgICAgICAgICAgZm9yIChuID0gMDsgbiA8IGxlbjsgKytuKQorICAgICAgICAgICAgICAgIHVjczRbbl0gPSBmaWxsX2NoYXI7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8qIG51bWJlciBvZiBjaGFyYWN0ZXJzIGNvcGllZCB0aGlzIGZhciAqLworICAgICAgICBQeV9zc2l6ZV90IGRvbmUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpOworICAgICAgICBjb25zdCBQeV9zc2l6ZV90IGNoYXJfc2l6ZSA9IFB5VW5pY29kZV9LSU5EKHN0cik7CisgICAgICAgIGNoYXIgKnRvID0gKGNoYXIgKikgUHlVbmljb2RlX0RBVEEodSk7CisgICAgICAgIFB5X01FTUNQWSh0bywgUHlVbmljb2RlX0RBVEEoc3RyKSwKKyAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikgKiBjaGFyX3NpemUpOwogICAgICAgICB3aGlsZSAoZG9uZSA8IG5jaGFycykgewotICAgICAgICAgICAgUHlfc3NpemVfdCBuID0gKGRvbmUgPD0gbmNoYXJzLWRvbmUpID8gZG9uZSA6IG5jaGFycy1kb25lOwotICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHArZG9uZSwgcCwgbik7CisgICAgICAgICAgICBuID0gKGRvbmUgPD0gbmNoYXJzLWRvbmUpID8gZG9uZSA6IG5jaGFycy1kb25lOworICAgICAgICAgICAgUHlfTUVNQ1BZKHRvICsgKGRvbmUgKiBjaGFyX3NpemUpLCB0bywgbiAqIGNoYXJfc2l6ZSk7CiAgICAgICAgICAgICBkb25lICs9IG47CiAgICAgICAgIH0KICAgICB9CiAKLSAgICByZXR1cm4gKFB5T2JqZWN0KikgdTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHUsIDEpKTsKKyAgICByZXR1cm4gdTsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9SZXBsYWNlKFB5T2JqZWN0ICpvYmosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnN1Ym9iaiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcmVwbG9iaiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQorUHlPYmplY3QgKgorUHlVbmljb2RlX1JlcGxhY2UoUHlPYmplY3QgKm9iaiwKKyAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWJvYmosCisgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcmVwbG9iaiwKKyAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQpCiB7CiAgICAgUHlPYmplY3QgKnNlbGY7CiAgICAgUHlPYmplY3QgKnN0cjE7CkBAIC04MzY5LDEwICsxMjE4NiwxMiBAQAogICAgICAgICBQeV9ERUNSRUYoc3RyMSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXN1bHQgPSByZXBsYWNlKChQeVVuaWNvZGVPYmplY3QgKilzZWxmLAotICAgICAgICAgICAgICAgICAgICAgKFB5VW5pY29kZU9iamVjdCAqKXN0cjEsCi0gICAgICAgICAgICAgICAgICAgICAoUHlVbmljb2RlT2JqZWN0ICopc3RyMiwKLSAgICAgICAgICAgICAgICAgICAgIG1heGNvdW50KTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xIHx8CisgICAgICAgIFB5VW5pY29kZV9SRUFEWShzdHIxKSA9PSAtMSB8fAorICAgICAgICBQeVVuaWNvZGVfUkVBRFkoc3RyMikgPT0gLTEpCisgICAgICAgIHJlc3VsdCA9IE5VTEw7CisgICAgZWxzZQorICAgICAgICByZXN1bHQgPSByZXBsYWNlKHNlbGYsIHN0cjEsIHN0cjIsIG1heGNvdW50KTsKICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgUHlfREVDUkVGKHN0cjEpOwogICAgIFB5X0RFQ1JFRihzdHIyKTsKQEAgLTgzODcsMTc3ICsxMjIwNiwxODMgQEAKIGdpdmVuLCBvbmx5IHRoZSBmaXJzdCBjb3VudCBvY2N1cnJlbmNlcyBhcmUgcmVwbGFjZWQuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfcmVwbGFjZShQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9yZXBsYWNlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnN0cjE7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpzdHIyOworICAgIFB5T2JqZWN0ICpzdHIxOworICAgIFB5T2JqZWN0ICpzdHIyOwogICAgIFB5X3NzaXplX3QgbWF4Y291bnQgPSAtMTsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPT3xuOnJlcGxhY2UiLCAmc3RyMSwgJnN0cjIsICZtYXhjb3VudCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHN0cjEgPSAoUHlVbmljb2RlT2JqZWN0ICopUHlVbmljb2RlX0Zyb21PYmplY3QoKFB5T2JqZWN0ICopc3RyMSk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgc3RyMSA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cjEpOwogICAgIGlmIChzdHIxID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHN0cjIgPSAoUHlVbmljb2RlT2JqZWN0ICopUHlVbmljb2RlX0Zyb21PYmplY3QoKFB5T2JqZWN0ICopc3RyMik7CisgICAgc3RyMiA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cjIpOwogICAgIGlmIChzdHIyID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHN0cjEpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0KLSAgICByZXN1bHQgPSByZXBsYWNlKHNlbGYsIHN0cjEsIHN0cjIsIG1heGNvdW50KTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cjEpID09IC0xIHx8IFB5VW5pY29kZV9SRUFEWShzdHIyKSA9PSAtMSkKKyAgICAgICAgcmVzdWx0ID0gTlVMTDsKKyAgICBlbHNlCisgICAgICAgIHJlc3VsdCA9IHJlcGxhY2Uoc2VsZiwgc3RyMSwgc3RyMiwgbWF4Y291bnQpOwogCiAgICAgUHlfREVDUkVGKHN0cjEpOwogICAgIFB5X0RFQ1JFRihzdHIyKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1zdGF0aWMKLVB5T2JqZWN0ICp1bmljb2RlX3JlcHIoUHlPYmplY3QgKnVuaWNvZGUpCitzdGF0aWMgUHlPYmplY3QgKgordW5pY29kZV9yZXByKFB5T2JqZWN0ICp1bmljb2RlKQogewogICAgIFB5T2JqZWN0ICpyZXByOwotICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgUHlfVU5JQ09ERSAqcyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwotICAgIFB5X3NzaXplX3Qgc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKTsKKyAgICBQeV9zc2l6ZV90IGlzaXplOworICAgIFB5X3NzaXplX3Qgb3NpemUsIHNxdW90ZSwgZHF1b3RlLCBpLCBvOworICAgIFB5X1VDUzQgbWF4LCBxdW90ZTsKKyAgICBpbnQgaWtpbmQsIG9raW5kOworICAgIHZvaWQgKmlkYXRhLCAqb2RhdGE7CiAKLSAgICAvKiBYWFgobm5vcndpdHopOiByYXRoZXIgdGhhbiBvdmVyLWFsbG9jYXRpbmcsIGl0IHdvdWxkIGJlCi0gICAgICAgYmV0dGVyIHRvIGNob29zZSBhIGRpZmZlcmVudCBzY2hlbWUuICBQZXJoYXBzIHNjYW4gdGhlCi0gICAgICAgZmlyc3QgTi1jaGFycyBvZiB0aGUgc3RyaW5nIGFuZCBhbGxvY2F0ZSBiYXNlZCBvbiB0aGF0IHNpemUuCi0gICAgKi8KLSAgICAvKiBJbml0aWFsIGFsbG9jYXRpb24gaXMgYmFzZWQgb24gdGhlIGxvbmdlc3QtcG9zc2libGUgdW5pY2hyCi0gICAgICAgZXNjYXBlLgotCi0gICAgICAgSW4gd2lkZSAoVVRGLTMyKSBidWlsZHMgJ1xVMDB4eHh4eHgnIGlzIDEwIGNoYXJzIHBlciBzb3VyY2UKLSAgICAgICB1bmljaHIsIHNvIGluIHRoaXMgY2FzZSBpdCdzIHRoZSBsb25nZXN0IHVuaWNociBlc2NhcGUuIEluCi0gICAgICAgbmFycm93IChVVEYtMTYpIGJ1aWxkcyB0aGlzIGlzIGZpdmUgY2hhcnMgcGVyIHNvdXJjZSB1bmljaHIKLSAgICAgICBzaW5jZSB0aGVyZSBhcmUgdHdvIHVuaWNocnMgaW4gdGhlIHN1cnJvZ2F0ZSBwYWlyLCBzbyBpbiBuYXJyb3cKLSAgICAgICAoVVRGLTE2KSBidWlsZHMgaXQncyBub3QgdGhlIGxvbmdlc3QgdW5pY2hyIGVzY2FwZS4KLQotICAgICAgIEluIHdpZGUgb3IgbmFycm93IGJ1aWxkcyAnXHV4eHh4JyBpcyA2IGNoYXJzIHBlciBzb3VyY2UgdW5pY2hyLAotICAgICAgIHNvIGluIHRoZSBuYXJyb3cgKFVURi0xNikgYnVpbGQgY2FzZSBpdCdzIHRoZSBsb25nZXN0IHVuaWNocgotICAgICAgIGVzY2FwZS4KLSAgICAqLwotCi0gICAgcmVwciA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiAvKiBxdW90ZXMgKi8KLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgMTAqc2l6ZQotI2Vsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgNipzaXplCi0jZW5kaWYKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgMSk7Ci0gICAgaWYgKHJlcHIgPT0gTlVMTCkKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXByKTsKKyAgICBpc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworICAgIGlkYXRhID0gUHlVbmljb2RlX0RBVEEodW5pY29kZSk7CiAKLSAgICAvKiBBZGQgcXVvdGUgKi8KLSAgICAqcCsrID0gKGZpbmRjaGFyKHMsIHNpemUsICdcJycpICYmCi0gICAgICAgICAgICAhZmluZGNoYXIocywgc2l6ZSwgJyInKSkgPyAnIicgOiAnXCcnOwotICAgIHdoaWxlIChzaXplLS0gPiAwKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPSAqcysrOworICAgIC8qIENvbXB1dGUgbGVuZ3RoIG9mIG91dHB1dCwgcXVvdGUgY2hhcmFjdGVycywgYW5kCisgICAgICAgbWF4aW11bSBjaGFyYWN0ZXIgKi8KKyAgICBvc2l6ZSA9IDI7IC8qIHF1b3RlcyAqLworICAgIG1heCA9IDEyNzsKKyAgICBzcXVvdGUgPSBkcXVvdGUgPSAwOworICAgIGlraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgZm9yIChpID0gMDsgaSA8IGlzaXplOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGlraW5kLCBpZGF0YSwgaSk7CisgICAgICAgIHN3aXRjaCAoY2gpIHsKKyAgICAgICAgY2FzZSAnXCcnOiBzcXVvdGUrKzsgb3NpemUrKzsgYnJlYWs7CisgICAgICAgIGNhc2UgJyInOiAgZHF1b3RlKys7IG9zaXplKys7IGJyZWFrOworICAgICAgICBjYXNlICdcXCc6IGNhc2UgJ1x0JzogY2FzZSAnXHInOiBjYXNlICdcbic6CisgICAgICAgICAgICBvc2l6ZSArPSAyOyBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIC8qIEZhc3QtcGF0aCBBU0NJSSAqLworICAgICAgICAgICAgaWYgKGNoIDwgJyAnIHx8IGNoID09IDB4N2YpCisgICAgICAgICAgICAgICAgb3NpemUgKz0gNDsgLyogXHhISCAqLworICAgICAgICAgICAgZWxzZSBpZiAoY2ggPCAweDdmKQorICAgICAgICAgICAgICAgIG9zaXplKys7CisgICAgICAgICAgICBlbHNlIGlmIChQeV9VTklDT0RFX0lTUFJJTlRBQkxFKGNoKSkgeworICAgICAgICAgICAgICAgIG9zaXplKys7CisgICAgICAgICAgICAgICAgbWF4ID0gY2ggPiBtYXggPyBjaCA6IG1heDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgaWYgKGNoIDwgMHgxMDApCisgICAgICAgICAgICAgICAgb3NpemUgKz0gNDsgLyogXHhISCAqLworICAgICAgICAgICAgZWxzZSBpZiAoY2ggPCAweDEwMDAwKQorICAgICAgICAgICAgICAgIG9zaXplICs9IDY7IC8qIFx1SEhISCAqLworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIG9zaXplICs9IDEwOyAvKiBcdUhISEhISEhIICovCisgICAgICAgIH0KKyAgICB9CisKKyAgICBxdW90ZSA9ICdcJyc7CisgICAgaWYgKHNxdW90ZSkgeworICAgICAgICBpZiAoZHF1b3RlKQorICAgICAgICAgICAgLyogQm90aCBzcXVvdGUgYW5kIGRxdW90ZSBwcmVzZW50LiBVc2Ugc3F1b3RlLAorICAgICAgICAgICAgICAgYW5kIGVzY2FwZSB0aGVtICovCisgICAgICAgICAgICBvc2l6ZSArPSBzcXVvdGU7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHF1b3RlID0gJyInOworICAgIH0KKworICAgIHJlcHIgPSBQeVVuaWNvZGVfTmV3KG9zaXplLCBtYXgpOworICAgIGlmIChyZXByID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIG9raW5kID0gUHlVbmljb2RlX0tJTkQocmVwcik7CisgICAgb2RhdGEgPSBQeVVuaWNvZGVfREFUQShyZXByKTsKKworICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIDAsIHF1b3RlKTsKKyAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvc2l6ZS0xLCBxdW90ZSk7CisKKyAgICBmb3IgKGkgPSAwLCBvID0gMTsgaSA8IGlzaXplOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGlraW5kLCBpZGF0YSwgaSk7CiAKICAgICAgICAgLyogRXNjYXBlIHF1b3RlcyBhbmQgYmFja3NsYXNoZXMgKi8KLSAgICAgICAgaWYgKChjaCA9PSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXByKVswXSkgfHwgKGNoID09ICdcXCcpKSB7Ci0gICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICpwKysgPSBjaDsKKyAgICAgICAgaWYgKChjaCA9PSBxdW90ZSkgfHwgKGNoID09ICdcXCcpKSB7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssICdcXCcpOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBjaCk7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIE1hcCBzcGVjaWFsIHdoaXRlc3BhY2UgdG8gJ1x0JywgXG4nLCAnXHInICovCiAgICAgICAgIGlmIChjaCA9PSAnXHQnKSB7Ci0gICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICpwKysgPSAndCc7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssICdcXCcpOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAndCcpOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKGNoID09ICdcbicpIHsKLSAgICAgICAgICAgICpwKysgPSAnXFwnOwotICAgICAgICAgICAgKnArKyA9ICduJzsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ1xcJyk7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssICduJyk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAoY2ggPT0gJ1xyJykgewotICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAqcCsrID0gJ3InOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAnXFwnKTsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ3InKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIE1hcCBub24tcHJpbnRhYmxlIFVTIEFTQ0lJIHRvICdceGhoJyAqLwogICAgICAgICBlbHNlIGlmIChjaCA8ICcgJyB8fCBjaCA9PSAweDdGKSB7Ci0gICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICpwKysgPSAneCc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4MDAwRl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW2NoICYgMHgwMDBGXTsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ1xcJyk7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssICd4Jyk7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdKTsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzW2NoICYgMHgwMDBGXSk7CiAgICAgICAgIH0KIAogICAgICAgICAvKiBDb3B5IEFTQ0lJIGNoYXJhY3RlcnMgYXMtaXMgKi8KICAgICAgICAgZWxzZSBpZiAoY2ggPCAweDdGKSB7Ci0gICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIGNoKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIE5vbi1BU0NJSSBjaGFyYWN0ZXJzICovCiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgUHlfVUNTNCB1Y3MgPSBjaDsKLQotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgIFB5X1VOSUNPREUgY2gyID0gMDsKLSAgICAgICAgICAgIC8qIEdldCBjb2RlIHBvaW50IGZyb20gc3Vycm9nYXRlIHBhaXIgKi8KLSAgICAgICAgICAgIGlmIChzaXplID4gMCkgewotICAgICAgICAgICAgICAgIGNoMiA9ICpzOwotICAgICAgICAgICAgICAgIGlmIChjaCA+PSAweEQ4MDAgJiYgY2ggPCAweERDMDAgJiYgY2gyID49IDB4REMwMAotICAgICAgICAgICAgICAgICAgICAmJiBjaDIgPD0gMHhERkZGKSB7Ci0gICAgICAgICAgICAgICAgICAgIHVjcyA9ICgoKGNoICYgMHgwM0ZGKSA8PCAxMCkgfCAoY2gyICYgMHgwM0ZGKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICsgMHgwMDAxMDAwMDsKLSAgICAgICAgICAgICAgICAgICAgcysrOwotICAgICAgICAgICAgICAgICAgICBzaXplLS07Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgICAgICAvKiBNYXAgVW5pY29kZSB3aGl0ZXNwYWNlIGFuZCBjb250cm9sIGNoYXJhY3RlcnMKICAgICAgICAgICAgICAgIChjYXRlZ29yaWVzIFoqIGFuZCBDKiBleGNlcHQgQVNDSUkgc3BhY2UpCiAgICAgICAgICAgICAqLwotICAgICAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTUFJJTlRBQkxFKHVjcykpIHsKKyAgICAgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU1BSSU5UQUJMRShjaCkpIHsKICAgICAgICAgICAgICAgICAvKiBNYXAgOC1iaXQgY2hhcmFjdGVycyB0byAnXHhoaCcgKi8KLSAgICAgICAgICAgICAgICBpZiAodWNzIDw9IDB4ZmYpIHsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSAneCc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDQpICYgMHgwMDBGXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDB4MDAwRl07CisgICAgICAgICAgICAgICAgaWYgKGNoIDw9IDB4ZmYpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAnXFwnKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAneCcpOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbY2ggJiAweDAwMEZdKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgLyogTWFwIDIxLWJpdCBjaGFyYWN0ZXJzIHRvICdcVTAweHh4eHh4JyAqLwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKHVjcyA+PSAweDEwMDAwKSB7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSAnXFwnOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gJ1UnOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMjgpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAyNCkgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDIwKSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMTYpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxMikgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDgpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiA0KSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW3VjcyAmIDB4MDAwMDAwMEZdOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoID49IDB4MTAwMDApIHsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAnXFwnKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAnVScpOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gMjgpICYgMHhGXSk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzWyhjaCA+PiAyNCkgJiAweEZdKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbKGNoID4+IDIwKSAmIDB4Rl0pOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gMTYpICYgMHhGXSk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweEZdKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbKGNoID4+IDgpICYgMHhGXSk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4Rl0pOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1tjaCAmIDB4Rl0pOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiBNYXAgMTYtYml0IGNoYXJhY3RlcnMgdG8gJ1x1eHh4eCcgKi8KICAgICAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSAndSc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxMikgJiAweDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gOCkgJiAweDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gNCkgJiAweDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW3VjcyAmIDB4MDAwRl07CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ1xcJyk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ3UnKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4Rl0pOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gOCkgJiAweEZdKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbKGNoID4+IDQpICYgMHhGXSk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzW2NoICYgMHhGXSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgICAgLyogQ29weSBjaGFyYWN0ZXJzIGFzLWlzICovCiAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAqcCsrID0gY2g7Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgICAgIGlmICh1Y3MgPj0gMHgxMDAwMCkKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGNoMjsKLSNlbmRpZgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgY2gpOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQotICAgIC8qIEFkZCBxdW90ZSAqLwotICAgICpwKysgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXByKVswXTsKLQotICAgICpwID0gJ1wwJzsKLSAgICBQeVVuaWNvZGVfUmVzaXplKCZyZXByLCBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVwcikpOworICAgIC8qIENsb3NpbmcgcXVvdGUgYWxyZWFkeSBhZGRlZCBhdCB0aGUgYmVnaW5uaW5nICovCisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShyZXByLCAxKSk7CiAgICAgcmV0dXJuIHJlcHI7CiB9CiAKQEAgLTg1NzEsOSArMTIzOTYsOSBAQAogUmV0dXJuIC0xIG9uIGZhaWx1cmUuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX3JmaW5kKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX3JmaW5kKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnN1YnN0cmluZzsKKyAgICBQeU9iamVjdCAqc3Vic3RyaW5nOwogICAgIFB5X3NzaXplX3Qgc3RhcnQ7CiAgICAgUHlfc3NpemVfdCBlbmQ7CiAgICAgUHlfc3NpemVfdCByZXN1bHQ7CkBAIC04NTgyLDE0ICsxMjQwNywxOCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnQsICZlbmQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJlc3VsdCA9IHN0cmluZ2xpYl9yZmluZF9zbGljZSgKLSAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZiksIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSwKLSAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc3Vic3RyaW5nKSwgUHlVbmljb2RlX0dFVF9TSVpFKHN1YnN0cmluZyksCi0gICAgICAgIHN0YXJ0LCBlbmQKLSAgICAgICAgKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN1YnN0cmluZykgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcmVzdWx0ID0gYW55X2ZpbmRfc2xpY2UoLTEsIHNlbGYsIHN1YnN0cmluZywgc3RhcnQsIGVuZCk7CiAKICAgICBQeV9ERUNSRUYoc3Vic3RyaW5nKTsKIAorICAgIGlmIChyZXN1bHQgPT0gLTIpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChyZXN1bHQpOwogfQogCkBAIC04NTk5LDkgKzEyNDI4LDkgQEAKIExpa2UgUy5yZmluZCgpIGJ1dCByYWlzZSBWYWx1ZUVycm9yIHdoZW4gdGhlIHN1YnN0cmluZyBpcyBub3QgZm91bmQuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX3JpbmRleChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9yaW5kZXgoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5VW5pY29kZU9iamVjdCAqc3Vic3RyaW5nOworICAgIFB5T2JqZWN0ICpzdWJzdHJpbmc7CiAgICAgUHlfc3NpemVfdCBzdGFydDsKICAgICBQeV9zc2l6ZV90IGVuZDsKICAgICBQeV9zc2l6ZV90IHJlc3VsdDsKQEAgLTg2MTAsMTggKzEyNDM5LDIzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFydCwgJmVuZCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgcmVzdWx0ID0gc3RyaW5nbGliX3JmaW5kX3NsaWNlKAotICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKSwgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpLAotICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdWJzdHJpbmcpLCBQeVVuaWNvZGVfR0VUX1NJWkUoc3Vic3RyaW5nKSwKLSAgICAgICAgc3RhcnQsIGVuZAotICAgICAgICApOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3Vic3RyaW5nKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXN1bHQgPSBhbnlfZmluZF9zbGljZSgtMSwgc2VsZiwgc3Vic3RyaW5nLCBzdGFydCwgZW5kKTsKIAogICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOwogCisgICAgaWYgKHJlc3VsdCA9PSAtMikKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAocmVzdWx0IDwgMCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInN1YnN0cmluZyBub3QgZm91bmQiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorCiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChyZXN1bHQpOwogfQogCkBAIC04NjMyLDI1ICsxMjQ2NiwyNSBAQAogZG9uZSB1c2luZyB0aGUgc3BlY2lmaWVkIGZpbGwgY2hhcmFjdGVyIChkZWZhdWx0IGlzIGEgc3BhY2UpLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9yanVzdChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9yanVzdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlfc3NpemVfdCB3aWR0aDsKLSAgICBQeV9VTklDT0RFIGZpbGxjaGFyID0gJyAnOworICAgIFB5X1VDUzQgZmlsbGNoYXIgPSAnICc7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIm58TyY6cmp1c3QiLCAmd2lkdGgsIGNvbnZlcnRfdWMsICZmaWxsY2hhcikpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKHNlbGYtPmxlbmd0aCA+PSB3aWR0aCAmJiBQeVVuaWNvZGVfQ2hlY2tFeGFjdChzZWxmKSkgewotICAgICAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgICAgIHJldHVybiAoUHlPYmplY3QqKSBzZWxmOwotICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJldHVybiAoUHlPYmplY3QqKSBwYWQoc2VsZiwgd2lkdGggLSBzZWxmLT5sZW5ndGgsIDAsIGZpbGxjaGFyKTsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikgPj0gd2lkdGgpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CisKKyAgICByZXR1cm4gcGFkKHNlbGYsIHdpZHRoIC0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZiksIDAsIGZpbGxjaGFyKTsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9TcGxpdChQeU9iamVjdCAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnNlcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhzcGxpdCkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9TcGxpdChQeU9iamVjdCAqcywgUHlPYmplY3QgKnNlcCwgUHlfc3NpemVfdCBtYXhzcGxpdCkKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCkBAIC04NjY1LDcgKzEyNDk5LDcgQEAKICAgICAgICAgfQogICAgIH0KIAotICAgIHJlc3VsdCA9IHNwbGl0KChQeVVuaWNvZGVPYmplY3QgKilzLCAoUHlVbmljb2RlT2JqZWN0ICopc2VwLCBtYXhzcGxpdCk7CisgICAgcmVzdWx0ID0gc3BsaXQocywgc2VwLCBtYXhzcGxpdCk7CiAKICAgICBQeV9ERUNSRUYocyk7CiAgICAgUHlfWERFQ1JFRihzZXApOwpAQCAtODY3Myw3ICsxMjUwNyw3IEBACiB9CiAKIFB5RG9jX1NUUlZBUihzcGxpdF9fZG9jX18sCi0gICAgICAgICAgICAgIlMuc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pIC0+IGxpc3Qgb2Ygc3RyaW5nc1xuXAorICAgICAgICAgICAgICJTLnNwbGl0KHNlcD1Ob25lLCBtYXhzcGxpdD0tMSkgLT4gbGlzdCBvZiBzdHJpbmdzXG5cCiBcblwKIFJldHVybiBhIGxpc3Qgb2YgdGhlIHdvcmRzIGluIFMsIHVzaW5nIHNlcCBhcyB0aGVcblwKIGRlbGltaXRlciBzdHJpbmcuICBJZiBtYXhzcGxpdCBpcyBnaXZlbiwgYXQgbW9zdCBtYXhzcGxpdFxuXApAQCAtODY4MiwyMCArMTI1MTYsMjIgQEAKIHJlbW92ZWQgZnJvbSB0aGUgcmVzdWx0LiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX3NwbGl0KFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX3NwbGl0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiB7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJzZXAiLCAibWF4c3BsaXQiLCAwfTsKICAgICBQeU9iamVjdCAqc3Vic3RyaW5nID0gUHlfTm9uZTsKICAgICBQeV9zc2l6ZV90IG1heGNvdW50ID0gLTE7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxPbjpzcGxpdCIsICZzdWJzdHJpbmcsICZtYXhjb3VudCkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxPbjpzcGxpdCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmc3Vic3RyaW5nLCAmbWF4Y291bnQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmIChzdWJzdHJpbmcgPT0gUHlfTm9uZSkKICAgICAgICAgcmV0dXJuIHNwbGl0KHNlbGYsIE5VTEwsIG1heGNvdW50KTsKICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2soc3Vic3RyaW5nKSkKLSAgICAgICAgcmV0dXJuIHNwbGl0KHNlbGYsIChQeVVuaWNvZGVPYmplY3QgKilzdWJzdHJpbmcsIG1heGNvdW50KTsKKyAgICAgICAgcmV0dXJuIHNwbGl0KHNlbGYsIHN1YnN0cmluZywgbWF4Y291bnQpOwogICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9TcGxpdCgoUHlPYmplY3QgKilzZWxmLCBzdWJzdHJpbmcsIG1heGNvdW50KTsKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9TcGxpdChzZWxmLCBzdWJzdHJpbmcsIG1heGNvdW50KTsKIH0KIAogUHlPYmplY3QgKgpAQCAtODcwNCw2ICsxMjU0MCw5IEBACiAgICAgUHlPYmplY3QqIHN0cl9vYmo7CiAgICAgUHlPYmplY3QqIHNlcF9vYmo7CiAgICAgUHlPYmplY3QqIG91dDsKKyAgICBpbnQga2luZDEsIGtpbmQyLCBraW5kOworICAgIHZvaWQgKmJ1ZjEgPSBOVUxMLCAqYnVmMiA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yOwogCiAgICAgc3RyX29iaiA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cl9pbik7CiAgICAgaWYgKCFzdHJfb2JqKQpAQCAtODcxMywxNiArMTI1NTIsNjIgQEAKICAgICAgICAgUHlfREVDUkVGKHN0cl9vYmopOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZXBfb2JqKSA9PSAtMSB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyX29iaikgPT0gLTEpIHsKKyAgICAgICAgUHlfREVDUkVGKHNlcF9vYmopOworICAgICAgICBQeV9ERUNSRUYoc3RyX29iaik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KIAotICAgIG91dCA9IHN0cmluZ2xpYl9wYXJ0aXRpb24oCi0gICAgICAgIHN0cl9vYmosIFB5VW5pY29kZV9BU19VTklDT0RFKHN0cl9vYmopLCBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyX29iaiksCi0gICAgICAgIHNlcF9vYmosIFB5VW5pY29kZV9BU19VTklDT0RFKHNlcF9vYmopLCBQeVVuaWNvZGVfR0VUX1NJWkUoc2VwX29iaikKLSAgICAgICAgKTsKKyAgICBraW5kMSA9IFB5VW5pY29kZV9LSU5EKHN0cl9vYmopOworICAgIGtpbmQyID0gUHlVbmljb2RlX0tJTkQoc2VwX29iaik7CisgICAga2luZCA9IFB5X01BWChraW5kMSwga2luZDIpOworICAgIGJ1ZjEgPSBQeVVuaWNvZGVfREFUQShzdHJfb2JqKTsKKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgYnVmMSA9IF9QeVVuaWNvZGVfQXNLaW5kKHN0cl9vYmosIGtpbmQpOworICAgIGlmICghYnVmMSkKKyAgICAgICAgZ290byBvbkVycm9yOworICAgIGJ1ZjIgPSBQeVVuaWNvZGVfREFUQShzZXBfb2JqKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgYnVmMiA9IF9QeVVuaWNvZGVfQXNLaW5kKHNlcF9vYmosIGtpbmQpOworICAgIGlmICghYnVmMikKKyAgICAgICAgZ290byBvbkVycm9yOworICAgIGxlbjEgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJfb2JqKTsKKyAgICBsZW4yID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VwX29iaik7CisKKyAgICBzd2l0Y2ggKFB5VW5pY29kZV9LSU5EKHN0cl9vYmopKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzdHJfb2JqKSAmJiBQeVVuaWNvZGVfSVNfQVNDSUkoc2VwX29iaikpCisgICAgICAgICAgICBvdXQgPSBhc2NpaWxpYl9wYXJ0aXRpb24oc3RyX29iaiwgYnVmMSwgbGVuMSwgc2VwX29iaiwgYnVmMiwgbGVuMik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG91dCA9IHVjczFsaWJfcGFydGl0aW9uKHN0cl9vYmosIGJ1ZjEsIGxlbjEsIHNlcF9vYmosIGJ1ZjIsIGxlbjIpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICBvdXQgPSB1Y3MybGliX3BhcnRpdGlvbihzdHJfb2JqLCBidWYxLCBsZW4xLCBzZXBfb2JqLCBidWYyLCBsZW4yKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgb3V0ID0gdWNzNGxpYl9wYXJ0aXRpb24oc3RyX29iaiwgYnVmMSwgbGVuMSwgc2VwX29iaiwgYnVmMiwgbGVuMik7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGFzc2VydCgwKTsKKyAgICAgICAgb3V0ID0gMDsKKyAgICB9CiAKICAgICBQeV9ERUNSRUYoc2VwX29iaik7CiAgICAgUHlfREVDUkVGKHN0cl9vYmopOworICAgIGlmIChraW5kMSAhPSBraW5kKQorICAgICAgICBQeU1lbV9GcmVlKGJ1ZjEpOworICAgIGlmIChraW5kMiAhPSBraW5kKQorICAgICAgICBQeU1lbV9GcmVlKGJ1ZjIpOwogCiAgICAgcmV0dXJuIG91dDsKKyAgb25FcnJvcjoKKyAgICBQeV9ERUNSRUYoc2VwX29iaik7CisgICAgUHlfREVDUkVGKHN0cl9vYmopOworICAgIGlmIChraW5kMSAhPSBraW5kICYmIGJ1ZjEpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgaWYgKGtpbmQyICE9IGtpbmQgJiYgYnVmMikKKyAgICAgICAgUHlNZW1fRnJlZShidWYyKTsKKyAgICByZXR1cm4gTlVMTDsKIH0KIAogCkBAIC04NzMyLDYgKzEyNjE3LDkgQEAKICAgICBQeU9iamVjdCogc3RyX29iajsKICAgICBQeU9iamVjdCogc2VwX29iajsKICAgICBQeU9iamVjdCogb3V0OworICAgIGludCBraW5kMSwga2luZDIsIGtpbmQ7CisgICAgdm9pZCAqYnVmMSA9IE5VTEwsICpidWYyID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGxlbjEsIGxlbjI7CiAKICAgICBzdHJfb2JqID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyX2luKTsKICAgICBpZiAoIXN0cl9vYmopCkBAIC04NzQyLDE1ICsxMjYzMCw1NiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBvdXQgPSBzdHJpbmdsaWJfcnBhcnRpdGlvbigKLSAgICAgICAgc3RyX29iaiwgUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyX29iaiksIFB5VW5pY29kZV9HRVRfU0laRShzdHJfb2JqKSwKLSAgICAgICAgc2VwX29iaiwgUHlVbmljb2RlX0FTX1VOSUNPREUoc2VwX29iaiksIFB5VW5pY29kZV9HRVRfU0laRShzZXBfb2JqKQotICAgICAgICApOworICAgIGtpbmQxID0gUHlVbmljb2RlX0tJTkQoc3RyX2luKTsKKyAgICBraW5kMiA9IFB5VW5pY29kZV9LSU5EKHNlcF9vYmopOworICAgIGtpbmQgPSBQeV9NQVgoa2luZDEsIGtpbmQyKTsKKyAgICBidWYxID0gUHlVbmljb2RlX0RBVEEoc3RyX2luKTsKKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgYnVmMSA9IF9QeVVuaWNvZGVfQXNLaW5kKHN0cl9pbiwga2luZCk7CisgICAgaWYgKCFidWYxKQorICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgYnVmMiA9IFB5VW5pY29kZV9EQVRBKHNlcF9vYmopOworICAgIGlmIChraW5kMiAhPSBraW5kKQorICAgICAgICBidWYyID0gX1B5VW5pY29kZV9Bc0tpbmQoc2VwX29iaiwga2luZCk7CisgICAgaWYgKCFidWYyKQorICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgbGVuMSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cl9vYmopOworICAgIGxlbjIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZXBfb2JqKTsKKworICAgIHN3aXRjaCAoUHlVbmljb2RlX0tJTkQoc3RyX2luKSkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIGlmIChQeVVuaWNvZGVfSVNfQVNDSUkoc3RyX29iaikgJiYgUHlVbmljb2RlX0lTX0FTQ0lJKHNlcF9vYmopKQorICAgICAgICAgICAgb3V0ID0gYXNjaWlsaWJfcnBhcnRpdGlvbihzdHJfb2JqLCBidWYxLCBsZW4xLCBzZXBfb2JqLCBidWYyLCBsZW4yKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgb3V0ID0gdWNzMWxpYl9ycGFydGl0aW9uKHN0cl9vYmosIGJ1ZjEsIGxlbjEsIHNlcF9vYmosIGJ1ZjIsIGxlbjIpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICBvdXQgPSB1Y3MybGliX3JwYXJ0aXRpb24oc3RyX29iaiwgYnVmMSwgbGVuMSwgc2VwX29iaiwgYnVmMiwgbGVuMik7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIG91dCA9IHVjczRsaWJfcnBhcnRpdGlvbihzdHJfb2JqLCBidWYxLCBsZW4xLCBzZXBfb2JqLCBidWYyLCBsZW4yKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDApOworICAgICAgICBvdXQgPSAwOworICAgIH0KIAogICAgIFB5X0RFQ1JFRihzZXBfb2JqKTsKICAgICBQeV9ERUNSRUYoc3RyX29iaik7CisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CiAKICAgICByZXR1cm4gb3V0OworICBvbkVycm9yOgorICAgIFB5X0RFQ1JFRihzZXBfb2JqKTsKKyAgICBQeV9ERUNSRUYoc3RyX29iaik7CisgICAgaWYgKGtpbmQxICE9IGtpbmQgJiYgYnVmMSkKKyAgICAgICAgUHlNZW1fRnJlZShidWYxKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCAmJiBidWYyKQorICAgICAgICBQeU1lbV9GcmVlKGJ1ZjIpOworICAgIHJldHVybiBOVUxMOwogfQogCiBQeURvY19TVFJWQVIocGFydGl0aW9uX19kb2NfXywKQEAgLTg3NjEsOSArMTI2OTAsOSBAQAogZm91bmQsIHJldHVybiBTIGFuZCB0d28gZW1wdHkgc3RyaW5ncy4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9wYXJ0aXRpb24oUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqc2VwYXJhdG9yKQordW5pY29kZV9wYXJ0aXRpb24oUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpzZXBhcmF0b3IpCiB7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9QYXJ0aXRpb24oKFB5T2JqZWN0ICopc2VsZiwgc2VwYXJhdG9yKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX1BhcnRpdGlvbihzZWxmLCBzZXBhcmF0b3IpOwogfQogCiBQeURvY19TVFJWQVIocnBhcnRpdGlvbl9fZG9jX18sCkBAIC04Nzc0LDE0ICsxMjcwMywxMyBAQAogc2VwYXJhdG9yIGlzIG5vdCBmb3VuZCwgcmV0dXJuIHR3byBlbXB0eSBzdHJpbmdzIGFuZCBTLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX3JwYXJ0aXRpb24oUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqc2VwYXJhdG9yKQordW5pY29kZV9ycGFydGl0aW9uKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqc2VwYXJhdG9yKQogewotICAgIHJldHVybiBQeVVuaWNvZGVfUlBhcnRpdGlvbigoUHlPYmplY3QgKilzZWxmLCBzZXBhcmF0b3IpOworICAgIHJldHVybiBQeVVuaWNvZGVfUlBhcnRpdGlvbihzZWxmLCBzZXBhcmF0b3IpOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX1JTcGxpdChQeU9iamVjdCAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzZXAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heHNwbGl0KQorUHlPYmplY3QgKgorUHlVbmljb2RlX1JTcGxpdChQeU9iamVjdCAqcywgUHlPYmplY3QgKnNlcCwgUHlfc3NpemVfdCBtYXhzcGxpdCkKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCkBAIC04Nzk2LDcgKzEyNzI0LDcgQEAKICAgICAgICAgfQogICAgIH0KIAotICAgIHJlc3VsdCA9IHJzcGxpdCgoUHlVbmljb2RlT2JqZWN0ICopcywgKFB5VW5pY29kZU9iamVjdCAqKXNlcCwgbWF4c3BsaXQpOworICAgIHJlc3VsdCA9IHJzcGxpdChzLCBzZXAsIG1heHNwbGl0KTsKIAogICAgIFB5X0RFQ1JFRihzKTsKICAgICBQeV9YREVDUkVGKHNlcCk7CkBAIC04ODA0LDcgKzEyNzMyLDcgQEAKIH0KIAogUHlEb2NfU1RSVkFSKHJzcGxpdF9fZG9jX18sCi0gICAgICAgICAgICAgIlMucnNwbGl0KFtzZXBbLCBtYXhzcGxpdF1dKSAtPiBsaXN0IG9mIHN0cmluZ3NcblwKKyAgICAgICAgICAgICAiUy5yc3BsaXQoc2VwPU5vbmUsIG1heHNwbGl0PS0xKSAtPiBsaXN0IG9mIHN0cmluZ3NcblwKIFxuXAogUmV0dXJuIGEgbGlzdCBvZiB0aGUgd29yZHMgaW4gUywgdXNpbmcgc2VwIGFzIHRoZVxuXAogZGVsaW1pdGVyIHN0cmluZywgc3RhcnRpbmcgYXQgdGhlIGVuZCBvZiB0aGUgc3RyaW5nIGFuZFxuXApAQCAtODgxMywyMCArMTI3NDEsMjIgQEAKIGlzIGEgc2VwYXJhdG9yLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX3JzcGxpdChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9yc3BsaXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InNlcCIsICJtYXhzcGxpdCIsIDB9OwogICAgIFB5T2JqZWN0ICpzdWJzdHJpbmcgPSBQeV9Ob25lOwogICAgIFB5X3NzaXplX3QgbWF4Y291bnQgPSAtMTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifE9uOnJzcGxpdCIsICZzdWJzdHJpbmcsICZtYXhjb3VudCkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxPbjpyc3BsaXQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3bGlzdCwgJnN1YnN0cmluZywgJm1heGNvdW50KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAoc3Vic3RyaW5nID09IFB5X05vbmUpCiAgICAgICAgIHJldHVybiByc3BsaXQoc2VsZiwgTlVMTCwgbWF4Y291bnQpOwogICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayhzdWJzdHJpbmcpKQotICAgICAgICByZXR1cm4gcnNwbGl0KHNlbGYsIChQeVVuaWNvZGVPYmplY3QgKilzdWJzdHJpbmcsIG1heGNvdW50KTsKKyAgICAgICAgcmV0dXJuIHJzcGxpdChzZWxmLCBzdWJzdHJpbmcsIG1heGNvdW50KTsKICAgICBlbHNlCi0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfUlNwbGl0KChQeU9iamVjdCAqKXNlbGYsIHN1YnN0cmluZywgbWF4Y291bnQpOworICAgICAgICByZXR1cm4gUHlVbmljb2RlX1JTcGxpdChzZWxmLCBzdWJzdHJpbmcsIG1heGNvdW50KTsKIH0KIAogUHlEb2NfU1RSVkFSKHNwbGl0bGluZXNfX2RvY19fLApAQCAtODgzNywyNiArMTI3NjcsMjIgQEAKIGlzIGdpdmVuIGFuZCB0cnVlLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX3NwbGl0bGluZXMoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3VuaWNvZGVfc3BsaXRsaW5lcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogeworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsia2VlcGVuZHMiLCAwfTsKICAgICBpbnQga2VlcGVuZHMgPSAwOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8aTpzcGxpdGxpbmVzIiwgJmtlZXBlbmRzKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAifGk6c3BsaXRsaW5lcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAma2VlcGVuZHMpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJldHVybiBQeVVuaWNvZGVfU3BsaXRsaW5lcygoUHlPYmplY3QgKilzZWxmLCBrZWVwZW5kcyk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9TcGxpdGxpbmVzKHNlbGYsIGtlZXBlbmRzKTsKIH0KIAogc3RhdGljCiBQeU9iamVjdCAqdW5pY29kZV9zdHIoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KHNlbGYpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKLSAgICAgICAgcmV0dXJuIHNlbGY7Ci0gICAgfSBlbHNlCi0gICAgICAgIC8qIFN1YnR5cGUgLS0gcmV0dXJuIGdlbnVpbmUgdW5pY29kZSBzdHJpbmcgd2l0aCB0aGUgc2FtZSB2YWx1ZS4gKi8KLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikpOworICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CiB9CiAKIFB5RG9jX1NUUlZBUihzd2FwY2FzZV9fZG9jX18sCkBAIC04ODY2LDkgKzEyNzkyLDExIEBACiBhbmQgdmljZSB2ZXJzYS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9zd2FwY2FzZShQeVVuaWNvZGVPYmplY3QgKnNlbGYpCit1bmljb2RlX3N3YXBjYXNlKFB5T2JqZWN0ICpzZWxmKQogewotICAgIHJldHVybiBmaXh1cChzZWxmLCBmaXhzd2FwY2FzZSk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIGNhc2Vfb3BlcmF0aW9uKHNlbGYsIGRvX3N3YXBjYXNlKTsKIH0KIAogUHlEb2NfU1RSVkFSKG1ha2V0cmFuc19fZG9jX18sCkBAIC04ODg0LDcgKzEyODEyLDcgQEAKIG11c3QgYmUgYSBzdHJpbmcsIHdob3NlIGNoYXJhY3RlcnMgd2lsbCBiZSBtYXBwZWQgdG8gTm9uZSBpbiB0aGUgcmVzdWx0LiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX21ha2V0cmFucyhQeVVuaWNvZGVPYmplY3QgKm51bGwsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9tYWtldHJhbnMoUHlPYmplY3QgKm51bGwsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5T2JqZWN0ICp4LCAqeSA9IE5VTEwsICp6ID0gTlVMTDsKICAgICBQeU9iamVjdCAqbmV3ID0gTlVMTCwgKmtleSwgKnZhbHVlOwpAQCAtODg5NywyNCArMTI4MjUsMzAgQEAKICAgICBpZiAoIW5ldykKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKHkgIT0gTlVMTCkgeworICAgICAgICBpbnQgeF9raW5kLCB5X2tpbmQsIHpfa2luZDsKKyAgICAgICAgdm9pZCAqeF9kYXRhLCAqeV9kYXRhLCAqel9kYXRhOworCiAgICAgICAgIC8qIHggbXVzdCBiZSBhIHN0cmluZyB0b28sIG9mIGVxdWFsIGxlbmd0aCAqLwotICAgICAgICBQeV9zc2l6ZV90IHlsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUoeSk7CiAgICAgICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHgpKSB7CiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiZmlyc3QgbWFrZXRyYW5zIGFyZ3VtZW50IG11c3QgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJiZSBhIHN0cmluZyBpZiB0aGVyZSBpcyBhIHNlY29uZCBhcmd1bWVudCIpOwogICAgICAgICAgICAgZ290byBlcnI7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRSh4KSAhPSB5bGVuKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSCh4KSAhPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh5KSkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJ0aGUgZmlyc3QgdHdvIG1ha2V0cmFucyAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFyZ3VtZW50cyBtdXN0IGhhdmUgZXF1YWwgbGVuZ3RoIik7CiAgICAgICAgICAgICBnb3RvIGVycjsKICAgICAgICAgfQogICAgICAgICAvKiBjcmVhdGUgZW50cmllcyBmb3IgdHJhbnNsYXRpbmcgY2hhcnMgaW4geCB0byB0aG9zZSBpbiB5ICovCi0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBQeVVuaWNvZGVfR0VUX1NJWkUoeCk7IGkrKykgewotICAgICAgICAgICAga2V5ID0gUHlMb25nX0Zyb21Mb25nKFB5VW5pY29kZV9BU19VTklDT0RFKHgpW2ldKTsKKyAgICAgICAgeF9raW5kID0gUHlVbmljb2RlX0tJTkQoeCk7CisgICAgICAgIHlfa2luZCA9IFB5VW5pY29kZV9LSU5EKHkpOworICAgICAgICB4X2RhdGEgPSBQeVVuaWNvZGVfREFUQSh4KTsKKyAgICAgICAgeV9kYXRhID0gUHlVbmljb2RlX0RBVEEoeSk7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBQeVVuaWNvZGVfR0VUX0xFTkdUSCh4KTsgaSsrKSB7CisgICAgICAgICAgICBrZXkgPSBQeUxvbmdfRnJvbUxvbmcoUHlVbmljb2RlX1JFQUQoeF9raW5kLCB4X2RhdGEsIGkpKTsKICAgICAgICAgICAgIGlmICgha2V5KQogICAgICAgICAgICAgICAgIGdvdG8gZXJyOwotICAgICAgICAgICAgdmFsdWUgPSBQeUxvbmdfRnJvbUxvbmcoUHlVbmljb2RlX0FTX1VOSUNPREUoeSlbaV0pOworICAgICAgICAgICAgdmFsdWUgPSBQeUxvbmdfRnJvbUxvbmcoUHlVbmljb2RlX1JFQUQoeV9raW5kLCB5X2RhdGEsIGkpKTsKICAgICAgICAgICAgIGlmICghdmFsdWUpIHsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoa2V5KTsKICAgICAgICAgICAgICAgICBnb3RvIGVycjsKQEAgLTg5MjcsOCArMTI4NjEsMTAgQEAKICAgICAgICAgfQogICAgICAgICAvKiBjcmVhdGUgZW50cmllcyBmb3IgZGVsZXRpbmcgY2hhcnMgaW4geiAqLwogICAgICAgICBpZiAoeiAhPSBOVUxMKSB7Ci0gICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlVbmljb2RlX0dFVF9TSVpFKHopOyBpKyspIHsKLSAgICAgICAgICAgICAgICBrZXkgPSBQeUxvbmdfRnJvbUxvbmcoUHlVbmljb2RlX0FTX1VOSUNPREUoeilbaV0pOworICAgICAgICAgICAgel9raW5kID0gUHlVbmljb2RlX0tJTkQoeik7CisgICAgICAgICAgICB6X2RhdGEgPSBQeVVuaWNvZGVfREFUQSh6KTsKKyAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBQeVVuaWNvZGVfR0VUX0xFTkdUSCh6KTsgaSsrKSB7CisgICAgICAgICAgICAgICAga2V5ID0gUHlMb25nX0Zyb21Mb25nKFB5VW5pY29kZV9SRUFEKHpfa2luZCwgel9kYXRhLCBpKSk7CiAgICAgICAgICAgICAgICAgaWYgKCFrZXkpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyOwogICAgICAgICAgICAgICAgIHJlcyA9IFB5RGljdF9TZXRJdGVtKG5ldywga2V5LCBQeV9Ob25lKTsKQEAgLTg5MzgsNiArMTI4NzQsOSBAQAogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfSBlbHNlIHsKKyAgICAgICAgaW50IGtpbmQ7CisgICAgICAgIHZvaWQgKmRhdGE7CisKICAgICAgICAgLyogeCBtdXN0IGJlIGEgZGljdCAqLwogICAgICAgICBpZiAoIVB5RGljdF9DaGVja0V4YWN0KHgpKSB7CiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiaWYgeW91IGdpdmUgb25seSBvbmUgYXJndW1lbnQgIgpAQCAtODk0OSwxMiArMTI4ODgsMTQgQEAKICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfQ2hlY2soa2V5KSkgewogICAgICAgICAgICAgICAgIC8qIGNvbnZlcnQgc3RyaW5nIGtleXMgdG8gaW50ZWdlciBrZXlzICovCiAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm5ld2tleTsKLSAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKGtleSkgIT0gMSkgeworICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSChrZXkpICE9IDEpIHsKICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJzdHJpbmcga2V5cyBpbiB0cmFuc2xhdGUgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhYmxlIG11c3QgYmUgb2YgbGVuZ3RoIDEiKTsKICAgICAgICAgICAgICAgICAgICAgZ290byBlcnI7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIG5ld2tleSA9IFB5TG9uZ19Gcm9tTG9uZyhQeVVuaWNvZGVfQVNfVU5JQ09ERShrZXkpWzBdKTsKKyAgICAgICAgICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoa2V5KTsKKyAgICAgICAgICAgICAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoa2V5KTsKKyAgICAgICAgICAgICAgICBuZXdrZXkgPSBQeUxvbmdfRnJvbUxvbmcoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCkpOwogICAgICAgICAgICAgICAgIGlmICghbmV3a2V5KQogICAgICAgICAgICAgICAgICAgICBnb3RvIGVycjsKICAgICAgICAgICAgICAgICByZXMgPSBQeURpY3RfU2V0SXRlbShuZXcsIG5ld2tleSwgdmFsdWUpOwpAQCAtODk4OCw5ICsxMjkyOSw5IEBACiBhcmUgZGVsZXRlZC4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV90cmFuc2xhdGUoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdGFibGUpCit1bmljb2RlX3RyYW5zbGF0ZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnRhYmxlKQogewotICAgIHJldHVybiBQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCwgdGFibGUsICJpZ25vcmUiKTsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9UcmFuc2xhdGVDaGFybWFwKHNlbGYsIHRhYmxlLCAiaWdub3JlIik7CiB9CiAKIFB5RG9jX1NUUlZBUih1cHBlcl9fZG9jX18sCkBAIC04OTk5LDkgKzEyOTQwLDEzIEBACiBSZXR1cm4gYSBjb3B5IG9mIFMgY29udmVydGVkIHRvIHVwcGVyY2FzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV91cHBlcihQeVVuaWNvZGVPYmplY3QgKnNlbGYpCit1bmljb2RlX3VwcGVyKFB5T2JqZWN0ICpzZWxmKQogewotICAgIHJldHVybiBmaXh1cChzZWxmLCBmaXh1cHBlcik7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzZWxmKSkKKyAgICAgICAgcmV0dXJuIGFzY2lpX3VwcGVyX29yX2xvd2VyKHNlbGYsIDApOworICAgIHJldHVybiBjYXNlX29wZXJhdGlvbihzZWxmLCBkb191cHBlcik7CiB9CiAKIFB5RG9jX1NUUlZBUih6ZmlsbF9fZG9jX18sCkBAIC05MDExLDU1ICsxMjk1Niw1MCBAQAogb2YgdGhlIHNwZWNpZmllZCB3aWR0aC4gVGhlIHN0cmluZyBTIGlzIG5ldmVyIHRydW5jYXRlZC4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfemZpbGwoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3VuaWNvZGVfemZpbGwoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5X3NzaXplX3QgZmlsbDsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnU7Ci0KKyAgICBQeU9iamVjdCAqdTsKICAgICBQeV9zc2l6ZV90IHdpZHRoOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfVUNTNCBjaHI7CisKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIm46emZpbGwiLCAmd2lkdGgpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGlmIChzZWxmLT5sZW5ndGggPj0gd2lkdGgpIHsKLSAgICAgICAgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KHNlbGYpKSB7Ci0gICAgICAgICAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgICAgICAgICByZXR1cm4gKFB5T2JqZWN0Kikgc2VsZjsKLSAgICAgICAgfQotICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKAotICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYpLAotICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKQotICAgICAgICAgICAgICAgICk7Ci0gICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgZmlsbCA9IHdpZHRoIC0gc2VsZi0+bGVuZ3RoOworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSA+PSB3aWR0aCkKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0X3VuY2hhbmdlZChzZWxmKTsKKworICAgIGZpbGwgPSB3aWR0aCAtIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOwogCiAgICAgdSA9IHBhZChzZWxmLCBmaWxsLCAwLCAnMCcpOwogCiAgICAgaWYgKHUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAodS0+c3RyW2ZpbGxdID09ICcrJyB8fCB1LT5zdHJbZmlsbF0gPT0gJy0nKSB7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1KTsKKyAgICBjaHIgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBmaWxsKTsKKworICAgIGlmIChjaHIgPT0gJysnIHx8IGNociA9PSAnLScpIHsKICAgICAgICAgLyogbW92ZSBzaWduIHRvIGJlZ2lubmluZyBvZiBzdHJpbmcgKi8KLSAgICAgICAgdS0+c3RyWzBdID0gdS0+c3RyW2ZpbGxdOwotICAgICAgICB1LT5zdHJbZmlsbF0gPSAnMCc7CisgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCAwLCBjaHIpOworICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgZmlsbCwgJzAnKTsKICAgICB9CiAKLSAgICByZXR1cm4gKFB5T2JqZWN0KikgdTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHUsIDEpKTsKKyAgICByZXR1cm4gdTsKIH0KIAogI2lmIDAKLXN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfZnJlZWxpc3RzaXplKFB5VW5pY29kZU9iamVjdCAqc2VsZikKLXsKLSAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKG51bWZyZWUpOwotfQotCiBzdGF0aWMgUHlPYmplY3QgKgogdW5pY29kZV9fZGVjaW1hbDJhc2NpaShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZXR1cm4gUHlVbmljb2RlX1RyYW5zZm9ybURlY2ltYWxUb0FTQ0lJKFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX1RyYW5zZm9ybURlY2ltYWxBbmRTcGFjZVRvQVNDSUkoc2VsZik7CiB9CiAjZW5kaWYKIApAQCAtOTA3MiwxMSArMTMwMTIsMTEgQEAKIHByZWZpeCBjYW4gYWxzbyBiZSBhIHR1cGxlIG9mIHN0cmluZ3MgdG8gdHJ5LiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9zdGFydHN3aXRoKFB5VW5pY29kZU9iamVjdCAqc2VsZiwKK3VuaWNvZGVfc3RhcnRzd2l0aChQeU9iamVjdCAqc2VsZiwKICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqYXJncykKIHsKICAgICBQeU9iamVjdCAqc3Vib2JqOwotICAgIFB5VW5pY29kZU9iamVjdCAqc3Vic3RyaW5nOworICAgIFB5T2JqZWN0ICpzdWJzdHJpbmc7CiAgICAgUHlfc3NpemVfdCBzdGFydCA9IDA7CiAgICAgUHlfc3NpemVfdCBlbmQgPSBQWV9TU0laRV9UX01BWDsKICAgICBpbnQgcmVzdWx0OwpAQCAtOTA4Niw4ICsxMzAyNiw3IEBACiAgICAgaWYgKFB5VHVwbGVfQ2hlY2soc3Vib2JqKSkgewogICAgICAgICBQeV9zc2l6ZV90IGk7CiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBQeVR1cGxlX0dFVF9TSVpFKHN1Ym9iaik7IGkrKykgewotICAgICAgICAgICAgc3Vic3RyaW5nID0gKFB5VW5pY29kZU9iamVjdCAqKVB5VW5pY29kZV9Gcm9tT2JqZWN0KAotICAgICAgICAgICAgICAgIFB5VHVwbGVfR0VUX0lURU0oc3Vib2JqLCBpKSk7CisgICAgICAgICAgICBzdWJzdHJpbmcgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChQeVR1cGxlX0dFVF9JVEVNKHN1Ym9iaiwgaSkpOwogICAgICAgICAgICAgaWYgKHN1YnN0cmluZyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgcmVzdWx0ID0gdGFpbG1hdGNoKHNlbGYsIHN1YnN0cmluZywgc3RhcnQsIGVuZCwgLTEpOwpAQCAtOTA5OSw3ICsxMzAzOCw3IEBACiAgICAgICAgIC8qIG5vdGhpbmcgbWF0Y2hlZCAqLwogICAgICAgICBQeV9SRVRVUk5fRkFMU0U7CiAgICAgfQotICAgIHN1YnN0cmluZyA9IChQeVVuaWNvZGVPYmplY3QgKilQeVVuaWNvZGVfRnJvbU9iamVjdChzdWJvYmopOworICAgIHN1YnN0cmluZyA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN1Ym9iaik7CiAgICAgaWYgKHN1YnN0cmluZyA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX1R5cGVFcnJvcikpCiAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAic3RhcnRzd2l0aCBmaXJzdCBhcmcgbXVzdCBiZSBzdHIgb3IgIgpAQCAtOTEyMSwxMSArMTMwNjAsMTEgQEAKIHN1ZmZpeCBjYW4gYWxzbyBiZSBhIHR1cGxlIG9mIHN0cmluZ3MgdG8gdHJ5LiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9lbmRzd2l0aChQeVVuaWNvZGVPYmplY3QgKnNlbGYsCit1bmljb2RlX2VuZHN3aXRoKFB5T2JqZWN0ICpzZWxmLAogICAgICAgICAgICAgICAgICBQeU9iamVjdCAqYXJncykKIHsKICAgICBQeU9iamVjdCAqc3Vib2JqOwotICAgIFB5VW5pY29kZU9iamVjdCAqc3Vic3RyaW5nOworICAgIFB5T2JqZWN0ICpzdWJzdHJpbmc7CiAgICAgUHlfc3NpemVfdCBzdGFydCA9IDA7CiAgICAgUHlfc3NpemVfdCBlbmQgPSBQWV9TU0laRV9UX01BWDsKICAgICBpbnQgcmVzdWx0OwpAQCAtOTEzNSw3ICsxMzA3NCw3IEBACiAgICAgaWYgKFB5VHVwbGVfQ2hlY2soc3Vib2JqKSkgewogICAgICAgICBQeV9zc2l6ZV90IGk7CiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBQeVR1cGxlX0dFVF9TSVpFKHN1Ym9iaik7IGkrKykgewotICAgICAgICAgICAgc3Vic3RyaW5nID0gKFB5VW5pY29kZU9iamVjdCAqKVB5VW5pY29kZV9Gcm9tT2JqZWN0KAorICAgICAgICAgICAgc3Vic3RyaW5nID0gUHlVbmljb2RlX0Zyb21PYmplY3QoCiAgICAgICAgICAgICAgICAgUHlUdXBsZV9HRVRfSVRFTShzdWJvYmosIGkpKTsKICAgICAgICAgICAgIGlmIChzdWJzdHJpbmcgPT0gTlVMTCkKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTkxNDcsNyArMTMwODYsNyBAQAogICAgICAgICB9CiAgICAgICAgIFB5X1JFVFVSTl9GQUxTRTsKICAgICB9Ci0gICAgc3Vic3RyaW5nID0gKFB5VW5pY29kZU9iamVjdCAqKVB5VW5pY29kZV9Gcm9tT2JqZWN0KHN1Ym9iaik7CisgICAgc3Vic3RyaW5nID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3Vib2JqKTsKICAgICBpZiAoc3Vic3RyaW5nID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfVHlwZUVycm9yKSkKICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJlbmRzd2l0aCBmaXJzdCBhcmcgbXVzdCBiZSBzdHIgb3IgIgpAQCAtOTE1OSw3ICsxMzA5OCw3IEBACiAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZyhyZXN1bHQpOwogfQogCi0jaW5jbHVkZSAic3RyaW5nbGliL3N0cmluZ19mb3JtYXQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvdW5pY29kZV9mb3JtYXQuaCIKIAogUHlEb2NfU1RSVkFSKGZvcm1hdF9fZG9jX18sCiAgICAgICAgICAgICAgIlMuZm9ybWF0KCphcmdzLCAqKmt3YXJncykgLT4gc3RyXG5cCkBAIC05MTc2LDE0ICsxMzExNSwxNCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHVuaWNvZGVfX2Zvcm1hdF9fKFB5T2JqZWN0KiBzZWxmLCBQeU9iamVjdCogYXJncykKIHsKLSAgICBQeU9iamVjdCAqZm9ybWF0X3NwZWM7CisgICAgUHlPYmplY3QgKmZvcm1hdF9zcGVjLCAqb3V0OwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOl9fZm9ybWF0X18iLCAmZm9ybWF0X3NwZWMpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJldHVybiBfUHlVbmljb2RlX0Zvcm1hdEFkdmFuY2VkKHNlbGYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoZm9ybWF0X3NwZWMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShmb3JtYXRfc3BlYykpOworICAgIG91dCA9IF9QeVVuaWNvZGVfRm9ybWF0QWR2YW5jZWQoc2VsZiwgZm9ybWF0X3NwZWMsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoZm9ybWF0X3NwZWMpKTsKKyAgICByZXR1cm4gb3V0OwogfQogCiBQeURvY19TVFJWQVIocF9mb3JtYXRfX2RvY19fLApAQCAtOTE5MiwxOSArMTMxMzEsNDUgQEAKIFJldHVybiBhIGZvcm1hdHRlZCB2ZXJzaW9uIG9mIFMgYXMgZGVzY3JpYmVkIGJ5IGZvcm1hdF9zcGVjLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9fc2l6ZW9mX18oUHlVbmljb2RlT2JqZWN0ICp2KQordW5pY29kZV9fc2l6ZW9mX18oUHlPYmplY3QgKnYpCiB7Ci0gICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChzaXplb2YoUHlVbmljb2RlT2JqZWN0KSArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YoUHlfVU5JQ09ERSkgKiAodi0+bGVuZ3RoICsgMSkpOworICAgIFB5X3NzaXplX3Qgc2l6ZTsKKworICAgIC8qIElmIGl0J3MgYSBjb21wYWN0IG9iamVjdCwgYWNjb3VudCBmb3IgYmFzZSBzdHJ1Y3R1cmUgKworICAgICAgIGNoYXJhY3RlciBkYXRhLiAqLworICAgIGlmIChQeVVuaWNvZGVfSVNfQ09NUEFDVF9BU0NJSSh2KSkKKyAgICAgICAgc2l6ZSA9IHNpemVvZihQeUFTQ0lJT2JqZWN0KSArIFB5VW5pY29kZV9HRVRfTEVOR1RIKHYpICsgMTsKKyAgICBlbHNlIGlmIChQeVVuaWNvZGVfSVNfQ09NUEFDVCh2KSkKKyAgICAgICAgc2l6ZSA9IHNpemVvZihQeUNvbXBhY3RVbmljb2RlT2JqZWN0KSArCisgICAgICAgICAgICAoUHlVbmljb2RlX0dFVF9MRU5HVEgodikgKyAxKSAqIFB5VW5pY29kZV9LSU5EKHYpOworICAgIGVsc2UgeworICAgICAgICAvKiBJZiBpdCBpcyBhIHR3by1ibG9jayBvYmplY3QsIGFjY291bnQgZm9yIGJhc2Ugb2JqZWN0LCBhbmQKKyAgICAgICAgICAgZm9yIGNoYXJhY3RlciBibG9jayBpZiBwcmVzZW50LiAqLworICAgICAgICBzaXplID0gc2l6ZW9mKFB5VW5pY29kZU9iamVjdCk7CisgICAgICAgIGlmIChfUHlVbmljb2RlX0RBVEFfQU5ZKHYpKQorICAgICAgICAgICAgc2l6ZSArPSAoUHlVbmljb2RlX0dFVF9MRU5HVEgodikgKyAxKSAqCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX0tJTkQodik7CisgICAgfQorICAgIC8qIElmIHRoZSB3c3RyIHBvaW50ZXIgaXMgcHJlc2VudCwgYWNjb3VudCBmb3IgaXQgdW5sZXNzIGl0IGlzIHNoYXJlZAorICAgICAgIHdpdGggdGhlIGRhdGEgcG9pbnRlci4gQ2hlY2sgaWYgdGhlIGRhdGEgaXMgbm90IHNoYXJlZC4gKi8KKyAgICBpZiAoX1B5VW5pY29kZV9IQVNfV1NUUl9NRU1PUlkodikpCisgICAgICAgIHNpemUgKz0gKFB5VW5pY29kZV9XU1RSX0xFTkdUSCh2KSArIDEpICogc2l6ZW9mKHdjaGFyX3QpOworICAgIGlmIChfUHlVbmljb2RlX0hBU19VVEY4X01FTU9SWSh2KSkKKyAgICAgICAgc2l6ZSArPSBQeVVuaWNvZGVfVVRGOF9MRU5HVEgodikgKyAxOworCisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChzaXplKTsKIH0KIAogUHlEb2NfU1RSVkFSKHNpemVvZl9fZG9jX18sCiAgICAgICAgICAgICAgIlMuX19zaXplb2ZfXygpIC0+IHNpemUgb2YgUyBpbiBtZW1vcnksIGluIGJ5dGVzIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX2dldG5ld2FyZ3MoUHlVbmljb2RlT2JqZWN0ICp2KQordW5pY29kZV9nZXRuZXdhcmdzKFB5T2JqZWN0ICp2KQogewotICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIodSMpIiwgdi0+c3RyLCB2LT5sZW5ndGgpOworICAgIFB5T2JqZWN0ICpjb3B5ID0gX1B5VW5pY29kZV9Db3B5KHYpOworICAgIGlmICghY29weSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihOKSIsIGNvcHkpOwogfQogCiBzdGF0aWMgUHlNZXRob2REZWYgdW5pY29kZV9tZXRob2RzW10gPSB7CkBAIC05MjE0LDEwICsxMzE3OSwxMSBAQAogCiAgICAgeyJlbmNvZGUiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfZW5jb2RlLCBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLCBlbmNvZGVfX2RvY19ffSwKICAgICB7InJlcGxhY2UiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfcmVwbGFjZSwgTUVUSF9WQVJBUkdTLCByZXBsYWNlX19kb2NfX30sCi0gICAgeyJzcGxpdCIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9zcGxpdCwgTUVUSF9WQVJBUkdTLCBzcGxpdF9fZG9jX199LAotICAgIHsicnNwbGl0IiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3JzcGxpdCwgTUVUSF9WQVJBUkdTLCByc3BsaXRfX2RvY19ffSwKKyAgICB7InNwbGl0IiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3NwbGl0LCBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLCBzcGxpdF9fZG9jX199LAorICAgIHsicnNwbGl0IiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3JzcGxpdCwgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUywgcnNwbGl0X19kb2NfX30sCiAgICAgeyJqb2luIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX2pvaW4sIE1FVEhfTywgam9pbl9fZG9jX199LAogICAgIHsiY2FwaXRhbGl6ZSIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9jYXBpdGFsaXplLCBNRVRIX05PQVJHUywgY2FwaXRhbGl6ZV9fZG9jX199LAorICAgIHsiY2FzZWZvbGQiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfY2FzZWZvbGQsIE1FVEhfTk9BUkdTLCBjYXNlZm9sZF9fZG9jX199LAogICAgIHsidGl0bGUiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfdGl0bGUsIE1FVEhfTk9BUkdTLCB0aXRsZV9fZG9jX199LAogICAgIHsiY2VudGVyIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX2NlbnRlciwgTUVUSF9WQVJBUkdTLCBjZW50ZXJfX2RvY19ffSwKICAgICB7ImNvdW50IiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX2NvdW50LCBNRVRIX1ZBUkFSR1MsIGNvdW50X19kb2NfX30sCkBAIC05MjMzLDcgKzEzMTk5LDcgQEAKICAgICB7InJqdXN0IiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3JqdXN0LCBNRVRIX1ZBUkFSR1MsIHJqdXN0X19kb2NfX30sCiAgICAgeyJyc3RyaXAiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfcnN0cmlwLCBNRVRIX1ZBUkFSR1MsIHJzdHJpcF9fZG9jX199LAogICAgIHsicnBhcnRpdGlvbiIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9ycGFydGl0aW9uLCBNRVRIX08sIHJwYXJ0aXRpb25fX2RvY19ffSwKLSAgICB7InNwbGl0bGluZXMiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfc3BsaXRsaW5lcywgTUVUSF9WQVJBUkdTLCBzcGxpdGxpbmVzX19kb2NfX30sCisgICAgeyJzcGxpdGxpbmVzIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3NwbGl0bGluZXMsIE1FVEhfVkFSQVJHUyB8IE1FVEhfS0VZV09SRFMsIHNwbGl0bGluZXNfX2RvY19ffSwKICAgICB7InN0cmlwIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3N0cmlwLCBNRVRIX1ZBUkFSR1MsIHN0cmlwX19kb2NfX30sCiAgICAgeyJzd2FwY2FzZSIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9zd2FwY2FzZSwgTUVUSF9OT0FSR1MsIHN3YXBjYXNlX19kb2NfX30sCiAgICAgeyJ0cmFuc2xhdGUiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfdHJhbnNsYXRlLCBNRVRIX08sIHRyYW5zbGF0ZV9fZG9jX199LApAQCAtOTI1OSwxMiArMTMyMjUsNyBAQAogICAgICBNRVRIX1ZBUkFSR1MgfCBNRVRIX1NUQVRJQywgbWFrZXRyYW5zX19kb2NfX30sCiAgICAgeyJfX3NpemVvZl9fIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX19zaXplb2ZfXywgTUVUSF9OT0FSR1MsIHNpemVvZl9fZG9jX199LAogI2lmIDAKLSAgICB7ImNhcHdvcmRzIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX2NhcHdvcmRzLCBNRVRIX05PQVJHUywgY2Fwd29yZHNfX2RvY19ffSwKLSNlbmRpZgotCi0jaWYgMAogICAgIC8qIFRoZXNlIG1ldGhvZHMgYXJlIGp1c3QgdXNlZCBmb3IgZGVidWdnaW5nIHRoZSBpbXBsZW1lbnRhdGlvbi4gKi8KLSAgICB7ImZyZWVsaXN0c2l6ZSIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9mcmVlbGlzdHNpemUsIE1FVEhfTk9BUkdTfSwKICAgICB7Il9kZWNpbWFsMmFzY2lpIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX19kZWNpbWFsMmFzY2lpLCBNRVRIX05PQVJHU30sCiAjZW5kaWYKIApAQCAtOTI3NSwxMCArMTMyMzYsOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHVuaWNvZGVfbW9kKFB5T2JqZWN0ICp2LCBQeU9iamVjdCAqdykKIHsKLSAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh2KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHYpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgcmV0dXJuIFB5VW5pY29kZV9Gb3JtYXQodiwgdyk7CiB9CiAKQEAgLTkzMDEsNTAgKzEzMjYwLDY5IEBACiB9OwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX3N1YnNjcmlwdChQeVVuaWNvZGVPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBpdGVtKQordW5pY29kZV9zdWJzY3JpcHQoUHlPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBpdGVtKQogeworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgaWYgKFB5SW5kZXhfQ2hlY2soaXRlbSkpIHsKICAgICAgICAgUHlfc3NpemVfdCBpID0gUHlOdW1iZXJfQXNTc2l6ZV90KGl0ZW0sIFB5RXhjX0luZGV4RXJyb3IpOwogICAgICAgICBpZiAoaSA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChpIDwgMCkKLSAgICAgICAgICAgIGkgKz0gUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpOworICAgICAgICAgICAgaSArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKICAgICAgICAgcmV0dXJuIHVuaWNvZGVfZ2V0aXRlbShzZWxmLCBpKTsKICAgICB9IGVsc2UgaWYgKFB5U2xpY2VfQ2hlY2soaXRlbSkpIHsKICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgc3RvcCwgc3RlcCwgc2xpY2VsZW5ndGgsIGN1ciwgaTsKLSAgICAgICAgUHlfVU5JQ09ERSogc291cmNlX2J1ZjsKLSAgICAgICAgUHlfVU5JQ09ERSogcmVzdWx0X2J1ZjsKLSAgICAgICAgUHlPYmplY3QqIHJlc3VsdDsKKyAgICAgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICAgICAgdm9pZCAqc3JjX2RhdGEsICpkZXN0X2RhdGE7CisgICAgICAgIGludCBzcmNfa2luZCwgZGVzdF9raW5kOworICAgICAgICBQeV9VQ1M0IGNoLCBtYXhfY2hhciwga2luZF9saW1pdDsKIAotICAgICAgICBpZiAoUHlTbGljZV9HZXRJbmRpY2VzRXgoaXRlbSwgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpLAorICAgICAgICBpZiAoUHlTbGljZV9HZXRJbmRpY2VzRXgoaXRlbSwgUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnQsICZzdG9wLCAmc3RlcCwgJnNsaWNlbGVuZ3RoKSA8IDApIHsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAKICAgICAgICAgaWYgKHNsaWNlbGVuZ3RoIDw9IDApIHsKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgMCk7Ci0gICAgICAgIH0gZWxzZSBpZiAoc3RhcnQgPT0gMCAmJiBzdGVwID09IDEgJiYgc2xpY2VsZW5ndGggPT0gc2VsZi0+bGVuZ3RoICYmCi0gICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKLSAgICAgICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKLSAgICAgICAgICAgIHJldHVybiAoUHlPYmplY3QgKilzZWxmOworICAgICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW1wdHk7CisgICAgICAgIH0gZWxzZSBpZiAoc3RhcnQgPT0gMCAmJiBzdGVwID09IDEgJiYKKyAgICAgICAgICAgICAgICAgICBzbGljZWxlbmd0aCA9PSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSkgeworICAgICAgICAgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0X3VuY2hhbmdlZChzZWxmKTsKICAgICAgICAgfSBlbHNlIGlmIChzdGVwID09IDEpIHsKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoc2VsZi0+c3RyICsgc3RhcnQsIHNsaWNlbGVuZ3RoKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHNvdXJjZV9idWYgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgoUHlPYmplY3QqKXNlbGYpOwotICAgICAgICAgICAgcmVzdWx0X2J1ZiA9IChQeV9VTklDT0RFICopUHlPYmplY3RfTUFMTE9DKHNsaWNlbGVuZ3RoKgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihQeV9VTklDT0RFKSk7Ci0KLSAgICAgICAgICAgIGlmIChyZXN1bHRfYnVmID09IE5VTEwpCi0gICAgICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7Ci0KLSAgICAgICAgICAgIGZvciAoY3VyID0gc3RhcnQsIGkgPSAwOyBpIDwgc2xpY2VsZW5ndGg7IGN1ciArPSBzdGVwLCBpKyspIHsKLSAgICAgICAgICAgICAgICByZXN1bHRfYnVmW2ldID0gc291cmNlX2J1ZltjdXJdOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocmVzdWx0X2J1Ziwgc2xpY2VsZW5ndGgpOwotICAgICAgICAgICAgUHlPYmplY3RfRlJFRShyZXN1bHRfYnVmKTsKLSAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX1N1YnN0cmluZyhzZWxmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQsIHN0YXJ0ICsgc2xpY2VsZW5ndGgpOwogICAgICAgICB9CisgICAgICAgIC8qIEdlbmVyYWwgY2FzZSAqLworICAgICAgICBzcmNfa2luZCA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgICAgICBzcmNfZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOworICAgICAgICBpZiAoIVB5VW5pY29kZV9JU19BU0NJSShzZWxmKSkgeworICAgICAgICAgICAga2luZF9saW1pdCA9IGtpbmRfbWF4Y2hhcl9saW1pdChzcmNfa2luZCk7CisgICAgICAgICAgICBtYXhfY2hhciA9IDA7CisgICAgICAgICAgICBmb3IgKGN1ciA9IHN0YXJ0LCBpID0gMDsgaSA8IHNsaWNlbGVuZ3RoOyBjdXIgKz0gc3RlcCwgaSsrKSB7CisgICAgICAgICAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRChzcmNfa2luZCwgc3JjX2RhdGEsIGN1cik7CisgICAgICAgICAgICAgICAgaWYgKGNoID4gbWF4X2NoYXIpIHsKKyAgICAgICAgICAgICAgICAgICAgbWF4X2NoYXIgPSBjaDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKG1heF9jaGFyID49IGtpbmRfbGltaXQpCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbWF4X2NoYXIgPSAxMjc7CisgICAgICAgIHJlc3VsdCA9IFB5VW5pY29kZV9OZXcoc2xpY2VsZW5ndGgsIG1heF9jaGFyKTsKKyAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGRlc3Rfa2luZCA9IFB5VW5pY29kZV9LSU5EKHJlc3VsdCk7CisgICAgICAgIGRlc3RfZGF0YSA9IFB5VW5pY29kZV9EQVRBKHJlc3VsdCk7CisKKyAgICAgICAgZm9yIChjdXIgPSBzdGFydCwgaSA9IDA7IGkgPCBzbGljZWxlbmd0aDsgY3VyICs9IHN0ZXAsIGkrKykgeworICAgICAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKHNyY19raW5kLCBzcmNfZGF0YSwgY3VyKTsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShkZXN0X2tpbmQsIGRlc3RfZGF0YSwgaSwgY2gpOworICAgICAgICB9CisgICAgICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzdWx0LCAxKSk7CisgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfSBlbHNlIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInN0cmluZyBpbmRpY2VzIG11c3QgYmUgaW50ZWdlcnMiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC05Mzk2LDcgKzEzMzc0LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmbGFncyAmIEZfQUxUKSA/IFB5X0RUU0ZfQUxUIDogMCwgTlVMTCk7CiAgICAgaWYgKHAgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKHAsIHN0cmxlbihwKSk7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0RlY29kZUFTQ0lJKHAsIHN0cmxlbihwKSwgTlVMTCk7CiAgICAgUHlNZW1fRnJlZShwKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQpAQCAtOTQxMiwzNyArMTMzOTAsMTkgQEAKICAgICBzdHIgPSBfUHlCeXRlc19Gb3JtYXRMb25nKHZhbCwgZmxhZ3MsIHByZWMsIHR5cGUsICZidWYsICZsZW4pOwogICAgIGlmICghc3RyKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoYnVmLCBsZW4pOworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9EZWNvZGVBU0NJSShidWYsIGxlbiwgTlVMTCk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotc3RhdGljIGludAotZm9ybWF0Y2hhcihQeV9VTklDT0RFICpidWYsCi0gICAgICAgICAgIHNpemVfdCBidWZsZW4sCi0gICAgICAgICAgIFB5T2JqZWN0ICp2KQorc3RhdGljIFB5X1VDUzQKK2Zvcm1hdGNoYXIoUHlPYmplY3QgKnYpCiB7CiAgICAgLyogcHJlc3VtZSB0aGF0IHRoZSBidWZmZXIgaXMgYXQgbGVhc3QgMyBjaGFyYWN0ZXJzIGxvbmcgKi8KICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHYpKSB7Ci0gICAgICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUodikgPT0gMSkgewotICAgICAgICAgICAgYnVmWzBdID0gUHlVbmljb2RlX0FTX1VOSUNPREUodilbMF07Ci0gICAgICAgICAgICBidWZbMV0gPSAnXDAnOwotICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSCh2KSA9PSAxKSB7CisgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX1JFQURfQ0hBUih2LCAwKTsKICAgICAgICAgfQotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRSh2KSA9PSAyKSB7Ci0gICAgICAgICAgICAvKiBEZWNvZGUgYSB2YWxpZCBzdXJyb2dhdGUgcGFpciAqLwotICAgICAgICAgICAgaW50IGMwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodilbMF07Ci0gICAgICAgICAgICBpbnQgYzEgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KVsxXTsKLSAgICAgICAgICAgIGlmICgweEQ4MDAgPD0gYzAgJiYgYzAgPD0gMHhEQkZGICYmCi0gICAgICAgICAgICAgICAgMHhEQzAwIDw9IGMxICYmIGMxIDw9IDB4REZGRikgewotICAgICAgICAgICAgICAgIGJ1ZlswXSA9IGMwOwotICAgICAgICAgICAgICAgIGJ1ZlsxXSA9IGMxOwotICAgICAgICAgICAgICAgIGJ1ZlsyXSA9ICdcMCc7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDI7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSNlbmRpZgogICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgfQogICAgIGVsc2UgewpAQCAtOTQ1Miw0NSArMTM0MTIsNzEgQEAKICAgICAgICAgaWYgKHggPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKIAotICAgICAgICBpZiAoeCA8IDAgfHwgeCA+IDB4MTBmZmZmKSB7CisgICAgICAgIGlmICh4IDwgMCB8fCB4ID4gTUFYX1VOSUNPREUpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlYyBhcmcgbm90IGluIHJhbmdlKDB4MTEwMDAwKSIpOwotICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgcmV0dXJuIChQeV9VQ1M0KSAtMTsKICAgICAgICAgfQogCi0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICBpZiAoeCA+IDB4ZmZmZikgewotICAgICAgICAgICAgeCAtPSAweDEwMDAwOwotICAgICAgICAgICAgYnVmWzBdID0gKFB5X1VOSUNPREUpKDB4RDgwMCB8ICh4ID4+IDEwKSk7Ci0gICAgICAgICAgICBidWZbMV0gPSAoUHlfVU5JQ09ERSkoMHhEQzAwIHwgKHggJiAweDNGRikpOwotICAgICAgICAgICAgcmV0dXJuIDI7Ci0gICAgICAgIH0KLSNlbmRpZgotICAgICAgICBidWZbMF0gPSAoUHlfVU5JQ09ERSkgeDsKLSAgICAgICAgYnVmWzFdID0gJ1wwJzsKLSAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIHJldHVybiAoUHlfVUNTNCkgeDsKICAgICB9CiAKICAgb25FcnJvcjoKICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAiJWMgcmVxdWlyZXMgaW50IG9yIGNoYXIiKTsKLSAgICByZXR1cm4gLTE7CisgICAgcmV0dXJuIChQeV9VQ1M0KSAtMTsKIH0KIAotLyogZm10JSh2MSx2MiwuLi4pIGlzIHJvdWdobHkgZXF1aXZhbGVudCB0byBzcHJpbnRmKGZtdCwgdjEsIHYyLCAuLi4pCi0gICBGT1JNQVRCVUZMRU4gaXMgdGhlIGxlbmd0aCBvZiB0aGUgYnVmZmVyIGluIHdoaWNoIGNoYXJzIGFyZSBmb3JtYXR0ZWQuCi0qLwotI2RlZmluZSBGT1JNQVRCVUZMRU4gKHNpemVfdCkxMAotCi1QeU9iamVjdCAqUHlVbmljb2RlX0Zvcm1hdChQeU9iamVjdCAqZm9ybWF0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmFyZ3MpCitzdGF0aWMgaW50CityZXBlYXRfYWNjdW11bGF0ZShfUHlBY2N1ICphY2MsIFB5T2JqZWN0ICpvYmosIFB5X3NzaXplX3QgY291bnQpCiB7Ci0gICAgUHlfVU5JQ09ERSAqZm10LCAqcmVzOwotICAgIFB5X3NzaXplX3QgZm10Y250LCByZXNjbnQsIHJlc2xlbiwgYXJnbGVuLCBhcmdpZHg7CisgICAgaW50IHI7CisgICAgYXNzZXJ0KGNvdW50ID4gMCk7CisgICAgYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhvYmopKTsKKyAgICBpZiAoY291bnQgPiA1KSB7CisgICAgICAgIFB5T2JqZWN0ICpyZXBlYXRlZCA9IHVuaWNvZGVfcmVwZWF0KG9iaiwgY291bnQpOworICAgICAgICBpZiAocmVwZWF0ZWQgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgciA9IF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIHJlcGVhdGVkKTsKKyAgICAgICAgUHlfREVDUkVGKHJlcGVhdGVkKTsKKyAgICAgICAgcmV0dXJuIHI7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBkbyB7CisgICAgICAgICAgICBpZiAoX1B5QWNjdV9BY2N1bXVsYXRlKGFjYywgb2JqKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0gd2hpbGUgKC0tY291bnQpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Gb3JtYXQoUHlPYmplY3QgKmZvcm1hdCwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgdm9pZCAqZm10OworICAgIGludCBmbXRraW5kOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgaW50IGtpbmQ7CisgICAgaW50IHI7CisgICAgUHlfc3NpemVfdCBmbXRjbnQsIGZtdHBvcywgYXJnbGVuLCBhcmdpZHg7CiAgICAgaW50IGFyZ3Nfb3duZWQgPSAwOwotICAgIFB5VW5pY29kZU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKICAgICBQeU9iamVjdCAqZGljdCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnRlbXAgPSBOVUxMOworICAgIFB5T2JqZWN0ICpzZWNvbmQgPSBOVUxMOwogICAgIFB5T2JqZWN0ICp1Zm9ybWF0OworICAgIF9QeUFjY3UgYWNjOworICAgIHN0YXRpYyBQeU9iamVjdCAqcGx1cywgKm1pbnVzLCAqYmxhbmssICp6ZXJvLCAqcGVyY2VudDsKKworICAgIGlmICghcGx1cyAmJiAhKHBsdXMgPSBnZXRfbGF0aW4xX2NoYXIoJysnKSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICghbWludXMgJiYgIShtaW51cyA9IGdldF9sYXRpbjFfY2hhcignLScpKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKCFibGFuayAmJiAhKGJsYW5rID0gZ2V0X2xhdGluMV9jaGFyKCcgJykpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIXplcm8gJiYgISh6ZXJvID0gZ2V0X2xhdGluMV9jaGFyKCcwJykpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIXBlcmNlbnQgJiYgIShwZXJjZW50ID0gZ2V0X2xhdGluMV9jaGFyKCclJykpKQorICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmIChmb3JtYXQgPT0gTlVMTCB8fCBhcmdzID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CkBAIC05NDk5LDE0ICsxMzQ4NSwxNCBAQAogICAgIHVmb3JtYXQgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChmb3JtYXQpOwogICAgIGlmICh1Zm9ybWF0ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGZtdCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHVmb3JtYXQpOwotICAgIGZtdGNudCA9IFB5VW5pY29kZV9HRVRfU0laRSh1Zm9ybWF0KTsKLQotICAgIHJlc2xlbiA9IHJlc2NudCA9IGZtdGNudCArIDEwMDsKLSAgICByZXN1bHQgPSBfUHlVbmljb2RlX05ldyhyZXNsZW4pOwotICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVmb3JtYXQpID09IC0xKQorICAgICAgICBQeV9ERUNSRUYodWZvcm1hdCk7CisgICAgaWYgKF9QeUFjY3VfSW5pdCgmYWNjKSkKICAgICAgICAgZ290byBvbkVycm9yOwotICAgIHJlcyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCk7CisgICAgZm10ID0gUHlVbmljb2RlX0RBVEEodWZvcm1hdCk7CisgICAgZm10a2luZCA9IFB5VW5pY29kZV9LSU5EKHVmb3JtYXQpOworICAgIGZtdGNudCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVmb3JtYXQpOworICAgIGZtdHBvcyA9IDA7CiAKICAgICBpZiAoUHlUdXBsZV9DaGVjayhhcmdzKSkgewogICAgICAgICBhcmdsZW4gPSBQeVR1cGxlX1NpemUoYXJncyk7CkBAIC05NTIxLDM1ICsxMzUwNywzOSBAQAogICAgICAgICBkaWN0ID0gYXJnczsKIAogICAgIHdoaWxlICgtLWZtdGNudCA+PSAwKSB7Ci0gICAgICAgIGlmICgqZm10ICE9ICclJykgewotICAgICAgICAgICAgaWYgKC0tcmVzY250IDwgMCkgewotICAgICAgICAgICAgICAgIHJlc2NudCA9IGZtdGNudCArIDEwMDsKLSAgICAgICAgICAgICAgICByZXNsZW4gKz0gcmVzY250OwotICAgICAgICAgICAgICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmcmVzdWx0LCByZXNsZW4pIDwgMCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwotICAgICAgICAgICAgICAgIHJlcyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCkgKyByZXNsZW4gLSByZXNjbnQ7Ci0gICAgICAgICAgICAgICAgLS1yZXNjbnQ7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChmbXRraW5kLCBmbXQsIGZtdHBvcykgIT0gJyUnKSB7CisgICAgICAgICAgICBQeU9iamVjdCAqbm9uZm10OworICAgICAgICAgICAgUHlfc3NpemVfdCBub25mbXRwb3M7CisgICAgICAgICAgICBub25mbXRwb3MgPSBmbXRwb3MrKzsKKyAgICAgICAgICAgIHdoaWxlIChmbXRjbnQgPj0gMCAmJgorICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGZtdGtpbmQsIGZtdCwgZm10cG9zKSAhPSAnJScpIHsKKyAgICAgICAgICAgICAgICBmbXRwb3MrKzsKKyAgICAgICAgICAgICAgICBmbXRjbnQtLTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICpyZXMrKyA9ICpmbXQrKzsKKyAgICAgICAgICAgIG5vbmZtdCA9IFB5VW5pY29kZV9TdWJzdHJpbmcodWZvcm1hdCwgbm9uZm10cG9zLCBmbXRwb3MpOworICAgICAgICAgICAgaWYgKG5vbmZtdCA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgIHIgPSBfUHlBY2N1X0FjY3VtdWxhdGUoJmFjYywgbm9uZm10KTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihub25mbXQpOworICAgICAgICAgICAgaWYgKHIpCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgLyogR290IGEgZm9ybWF0IHNwZWNpZmllciAqLwogICAgICAgICAgICAgaW50IGZsYWdzID0gMDsKICAgICAgICAgICAgIFB5X3NzaXplX3Qgd2lkdGggPSAtMTsKICAgICAgICAgICAgIGludCBwcmVjID0gLTE7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIGMgPSAnXDAnOwotICAgICAgICAgICAgUHlfVU5JQ09ERSBmaWxsOworICAgICAgICAgICAgUHlfVUNTNCBjID0gJ1wwJzsKKyAgICAgICAgICAgIFB5X1VDUzQgZmlsbCwgc2lnbjsKICAgICAgICAgICAgIGludCBpc251bW9rOwogICAgICAgICAgICAgUHlPYmplY3QgKnYgPSBOVUxMOwotICAgICAgICAgICAgUHlPYmplY3QgKnRlbXAgPSBOVUxMOwotICAgICAgICAgICAgUHlfVU5JQ09ERSAqcGJ1ZjsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgc2lnbjsKLSAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwotICAgICAgICAgICAgUHlfVU5JQ09ERSBmb3JtYXRidWZbRk9STUFUQlVGTEVOXTsgLyogRm9yIGZvcm1hdGNoYXIoKSAqLworICAgICAgICAgICAgdm9pZCAqcGJ1ZiA9IE5VTEw7CisgICAgICAgICAgICBQeV9zc2l6ZV90IHBpbmRleCwgbGVuOworICAgICAgICAgICAgUHlPYmplY3QgKnNpZ25vYmogPSBOVUxMLCAqZmlsbG9iaiA9IE5VTEw7CiAKLSAgICAgICAgICAgIGZtdCsrOwotICAgICAgICAgICAgaWYgKCpmbXQgPT0gJygnKSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSAqa2V5c3RhcnQ7CisgICAgICAgICAgICBmbXRwb3MrKzsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChmbXRraW5kLCBmbXQsIGZtdHBvcykgPT0gJygnKSB7CisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBrZXlzdGFydDsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGtleWxlbjsKICAgICAgICAgICAgICAgICBQeU9iamVjdCAqa2V5OwogICAgICAgICAgICAgICAgIGludCBwY291bnQgPSAxOwpAQCAtOTU1OSwzNCArMTM1NDksMjUgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmb3JtYXQgcmVxdWlyZXMgYSBtYXBwaW5nIik7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgKytmbXQ7CisgICAgICAgICAgICAgICAgKytmbXRwb3M7CiAgICAgICAgICAgICAgICAgLS1mbXRjbnQ7Ci0gICAgICAgICAgICAgICAga2V5c3RhcnQgPSBmbXQ7CisgICAgICAgICAgICAgICAga2V5c3RhcnQgPSBmbXRwb3M7CiAgICAgICAgICAgICAgICAgLyogU2tpcCBvdmVyIGJhbGFuY2VkIHBhcmVudGhlc2VzICovCiAgICAgICAgICAgICAgICAgd2hpbGUgKHBjb3VudCA+IDAgJiYgLS1mbXRjbnQgPj0gMCkgewotICAgICAgICAgICAgICAgICAgICBpZiAoKmZtdCA9PSAnKScpCisgICAgICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChmbXRraW5kLCBmbXQsIGZtdHBvcykgPT0gJyknKQogICAgICAgICAgICAgICAgICAgICAgICAgLS1wY291bnQ7Ci0gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCpmbXQgPT0gJygnKQorICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChQeVVuaWNvZGVfUkVBRChmbXRraW5kLCBmbXQsIGZtdHBvcykgPT0gJygnKQogICAgICAgICAgICAgICAgICAgICAgICAgKytwY291bnQ7Ci0gICAgICAgICAgICAgICAgICAgIGZtdCsrOworICAgICAgICAgICAgICAgICAgICBmbXRwb3MrKzsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAga2V5bGVuID0gZm10IC0ga2V5c3RhcnQgLSAxOworICAgICAgICAgICAgICAgIGtleWxlbiA9IGZtdHBvcyAtIGtleXN0YXJ0IC0gMTsKICAgICAgICAgICAgICAgICBpZiAoZm10Y250IDwgMCB8fCBwY291bnQgPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImluY29tcGxldGUgZm9ybWF0IGtleSIpOwogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgfQotI2lmIDAKLSAgICAgICAgICAgICAgICAvKiBrZXlzIGFyZSBjb252ZXJ0ZWQgdG8gc3RyaW5ncyB1c2luZyBVVEYtOCBhbmQKLSAgICAgICAgICAgICAgICAgICB0aGVuIGxvb2tlZCB1cCBzaW5jZSBQeXRob24gdXNlcyBzdHJpbmdzIHRvIGhvbGQKLSAgICAgICAgICAgICAgICAgICB2YXJpYWJsZXMgbmFtZXMgZXRjLiBpbiBpdHMgbmFtZXNwYWNlcyBhbmQgd2UKLSAgICAgICAgICAgICAgICAgICB3b3VsZG4ndCB3YW50IHRvIGJyZWFrIGNvbW1vbiBpZGlvbXMuICovCi0gICAgICAgICAgICAgICAga2V5ID0gUHlVbmljb2RlX0VuY29kZVVURjgoa2V5c3RhcnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5bGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOwotI2Vsc2UKLSAgICAgICAgICAgICAgICBrZXkgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoa2V5c3RhcnQsIGtleWxlbik7Ci0jZW5kaWYKKyAgICAgICAgICAgICAgICBrZXkgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKHVmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXlzdGFydCwga2V5c3RhcnQgKyBrZXlsZW4pOwogICAgICAgICAgICAgICAgIGlmIChrZXkgPT0gTlVMTCkKICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgIGlmIChhcmdzX293bmVkKSB7CkBAIC05NjAzLDcgKzEzNTg0LDcgQEAKICAgICAgICAgICAgICAgICBhcmdpZHggPSAtMjsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHdoaWxlICgtLWZtdGNudCA+PSAwKSB7Ci0gICAgICAgICAgICAgICAgc3dpdGNoIChjID0gKmZtdCsrKSB7CisgICAgICAgICAgICAgICAgc3dpdGNoIChjID0gUHlVbmljb2RlX1JFQUQoZm10a2luZCwgZm10LCBmbXRwb3MrKykpIHsKICAgICAgICAgICAgICAgICBjYXNlICctJzogZmxhZ3MgfD0gRl9MSlVTVDsgY29udGludWU7CiAgICAgICAgICAgICAgICAgY2FzZSAnKyc6IGZsYWdzIHw9IEZfU0lHTjsgY29udGludWU7CiAgICAgICAgICAgICAgICAgY2FzZSAnICc6IGZsYWdzIHw9IEZfQkxBTks7IGNvbnRpbnVlOwpAQCAtOTYyOSwxMiArMTM2MTAsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgd2lkdGggPSAtd2lkdGg7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGlmICgtLWZtdGNudCA+PSAwKQotICAgICAgICAgICAgICAgICAgICBjID0gKmZtdCsrOworICAgICAgICAgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoZm10a2luZCwgZm10LCBmbXRwb3MrKyk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmIChjID49ICcwJyAmJiBjIDw9ICc5JykgewogICAgICAgICAgICAgICAgIHdpZHRoID0gYyAtICcwJzsKICAgICAgICAgICAgICAgICB3aGlsZSAoLS1mbXRjbnQgPj0gMCkgewotICAgICAgICAgICAgICAgICAgICBjID0gKmZtdCsrOworICAgICAgICAgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoZm10a2luZCwgZm10LCBmbXRwb3MrKyk7CiAgICAgICAgICAgICAgICAgICAgIGlmIChjIDwgJzAnIHx8IGMgPiAnOScpCiAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgaWYgKCh3aWR0aCoxMCkgLyAxMCAhPSB3aWR0aCkgewpAQCAtOTY0OCw3ICsxMzYyOSw3IEBACiAgICAgICAgICAgICBpZiAoYyA9PSAnLicpIHsKICAgICAgICAgICAgICAgICBwcmVjID0gMDsKICAgICAgICAgICAgICAgICBpZiAoLS1mbXRjbnQgPj0gMCkKLSAgICAgICAgICAgICAgICAgICAgYyA9ICpmbXQrKzsKKyAgICAgICAgICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEKGZtdGtpbmQsIGZtdCwgZm10cG9zKyspOwogICAgICAgICAgICAgICAgIGlmIChjID09ICcqJykgewogICAgICAgICAgICAgICAgICAgICB2ID0gZ2V0bmV4dGFyZyhhcmdzLCBhcmdsZW4sICZhcmdpZHgpOwogICAgICAgICAgICAgICAgICAgICBpZiAodiA9PSBOVUxMKQpAQCAtOTY2NCwxMiArMTM2NDUsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgaWYgKHByZWMgPCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgcHJlYyA9IDA7CiAgICAgICAgICAgICAgICAgICAgIGlmICgtLWZtdGNudCA+PSAwKQotICAgICAgICAgICAgICAgICAgICAgICAgYyA9ICpmbXQrKzsKKyAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRChmbXRraW5kLCBmbXQsIGZtdHBvcysrKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYyA+PSAnMCcgJiYgYyA8PSAnOScpIHsKICAgICAgICAgICAgICAgICAgICAgcHJlYyA9IGMgLSAnMCc7CiAgICAgICAgICAgICAgICAgICAgIHdoaWxlICgtLWZtdGNudCA+PSAwKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBjID0gKmZtdCsrOworICAgICAgICAgICAgICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEKGZtdGtpbmQsIGZtdCwgZm10cG9zKyspOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGMgPCAnMCcgfHwgYyA+ICc5JykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgocHJlYyoxMCkgLyAxMCAhPSBwcmVjKSB7CkBAIC05Njg0LDcgKzEzNjY1LDcgQEAKICAgICAgICAgICAgIGlmIChmbXRjbnQgPj0gMCkgewogICAgICAgICAgICAgICAgIGlmIChjID09ICdoJyB8fCBjID09ICdsJyB8fCBjID09ICdMJykgewogICAgICAgICAgICAgICAgICAgICBpZiAoLS1mbXRjbnQgPj0gMCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGMgPSAqZm10Kys7CisgICAgICAgICAgICAgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoZm10a2luZCwgZm10LCBmbXRwb3MrKyk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKGZtdGNudCA8IDApIHsKQEAgLTk2OTksMTQgKzEzNjgwLDEyIEBACiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBzaWduID0gMDsKICAgICAgICAgICAgIGZpbGwgPSAnICc7CisgICAgICAgICAgICBmaWxsb2JqID0gYmxhbms7CiAgICAgICAgICAgICBzd2l0Y2ggKGMpIHsKIAogICAgICAgICAgICAgY2FzZSAnJSc6Ci0gICAgICAgICAgICAgICAgcGJ1ZiA9IGZvcm1hdGJ1ZjsKLSAgICAgICAgICAgICAgICAvKiBwcmVzdW1lIHRoYXQgYnVmZmVyIGxlbmd0aCBpcyBhdCBsZWFzdCAxICovCi0gICAgICAgICAgICAgICAgcGJ1ZlswXSA9ICclJzsKLSAgICAgICAgICAgICAgICBsZW4gPSAxOwotICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIF9QeUFjY3VfQWNjdW11bGF0ZSgmYWNjLCBwZXJjZW50KTsKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICAgICAgY2FzZSAncyc6CiAgICAgICAgICAgICBjYXNlICdyJzoKQEAgLTk3MzMsOCArMTM3MTIsMTMgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBwYnVmID0gUHlVbmljb2RlX0FTX1VOSUNPREUodGVtcCk7Ci0gICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHRlbXApOworICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodGVtcCkgPT0gLTEpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfQ0xFQVIodGVtcCk7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgcGJ1ZiA9IFB5VW5pY29kZV9EQVRBKHRlbXApOworICAgICAgICAgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh0ZW1wKTsKKyAgICAgICAgICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh0ZW1wKTsKICAgICAgICAgICAgICAgICBpZiAocHJlYyA+PSAwICYmIGxlbiA+IHByZWMpCiAgICAgICAgICAgICAgICAgICAgIGxlbiA9IHByZWM7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC05NzYzLDggKzEzNzQ3LDEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGlvYmopOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGVtcCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBidWYgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh0ZW1wKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUodGVtcCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh0ZW1wKSA9PSAtMSkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9DTEVBUih0ZW1wKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYnVmID0gUHlVbmljb2RlX0RBVEEodGVtcCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHRlbXApOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHRlbXApOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ24gPSAxOwogICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7CkBAIC05Nzc4LDggKzEzNzY3LDEwIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibm90ICUuMjAwcyIsIChjaGFyKWMsIFB5X1RZUEUodiktPnRwX25hbWUpOwogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChmbGFncyAmIEZfWkVSTykKKyAgICAgICAgICAgICAgICBpZiAoZmxhZ3MgJiBGX1pFUk8pIHsKICAgICAgICAgICAgICAgICAgICAgZmlsbCA9ICcwJzsKKyAgICAgICAgICAgICAgICAgICAgZmlsbG9iaiA9IHplcm87CisgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgICAgICBjYXNlICdlJzoKQEAgLTk3OTEsMTkgKzEzNzgyLDMzIEBACiAgICAgICAgICAgICAgICAgdGVtcCA9IGZvcm1hdGZsb2F0KHYsIGZsYWdzLCBwcmVjLCBjKTsKICAgICAgICAgICAgICAgICBpZiAoIXRlbXApCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgICAgICAgICBwYnVmID0gUHlVbmljb2RlX0FTX1VOSUNPREUodGVtcCk7Ci0gICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHRlbXApOworICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodGVtcCkgPT0gLTEpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfQ0xFQVIodGVtcCk7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgcGJ1ZiA9IFB5VW5pY29kZV9EQVRBKHRlbXApOworICAgICAgICAgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh0ZW1wKTsKKyAgICAgICAgICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh0ZW1wKTsKICAgICAgICAgICAgICAgICBzaWduID0gMTsKLSAgICAgICAgICAgICAgICBpZiAoZmxhZ3MgJiBGX1pFUk8pCisgICAgICAgICAgICAgICAgaWYgKGZsYWdzICYgRl9aRVJPKSB7CiAgICAgICAgICAgICAgICAgICAgIGZpbGwgPSAnMCc7CisgICAgICAgICAgICAgICAgICAgIGZpbGxvYmogPSB6ZXJvOworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgY2FzZSAnYyc6Ci0gICAgICAgICAgICAgICAgcGJ1ZiA9IGZvcm1hdGJ1ZjsKLSAgICAgICAgICAgICAgICBsZW4gPSBmb3JtYXRjaGFyKHBidWYsIHNpemVvZihmb3JtYXRidWYpL3NpemVvZihQeV9VTklDT0RFKSwgdik7Ci0gICAgICAgICAgICAgICAgaWYgKGxlbiA8IDApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgUHlfVUNTNCBjaCA9IGZvcm1hdGNoYXIodik7CisgICAgICAgICAgICAgICAgaWYgKGNoID09IChQeV9VQ1M0KSAtMSkKICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgIHRlbXAgPSBfUHlVbmljb2RlX0Zyb21VQ1M0KCZjaCwgMSk7CisgICAgICAgICAgICAgICAgaWYgKHRlbXAgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgIHBidWYgPSBQeVVuaWNvZGVfREFUQSh0ZW1wKTsKKyAgICAgICAgICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodGVtcCk7CisgICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodGVtcCk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCkBAIC05ODExLDkwICsxMzgxNiwxMDggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImF0IGluZGV4ICV6ZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgzMTw9YyAmJiBjPD0xMjYpID8gKGNoYXIpYyA6ICc/JywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGludCljLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlfc3NpemVfdCkoZm10IC0gMSAtCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERSh1Zm9ybWF0KSkpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbXRwb3MgLSAxKTsKICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICB9CisgICAgICAgICAgICAvKiBwYnVmIGlzIGluaXRpYWxpemVkIGhlcmUuICovCisgICAgICAgICAgICBwaW5kZXggPSAwOwogICAgICAgICAgICAgaWYgKHNpZ24pIHsKLSAgICAgICAgICAgICAgICBpZiAoKnBidWYgPT0gJy0nIHx8ICpwYnVmID09ICcrJykgewotICAgICAgICAgICAgICAgICAgICBzaWduID0gKnBidWYrKzsKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgcGJ1ZiwgcGluZGV4KSA9PSAnLScpIHsKKyAgICAgICAgICAgICAgICAgICAgc2lnbm9iaiA9IG1pbnVzOwogICAgICAgICAgICAgICAgICAgICBsZW4tLTsKKyAgICAgICAgICAgICAgICAgICAgcGluZGV4Kys7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHBidWYsIHBpbmRleCkgPT0gJysnKSB7CisgICAgICAgICAgICAgICAgICAgIHNpZ25vYmogPSBwbHVzOworICAgICAgICAgICAgICAgICAgICBsZW4tLTsKKyAgICAgICAgICAgICAgICAgICAgcGluZGV4Kys7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZsYWdzICYgRl9TSUdOKQotICAgICAgICAgICAgICAgICAgICBzaWduID0gJysnOworICAgICAgICAgICAgICAgICAgICBzaWdub2JqID0gcGx1czsKICAgICAgICAgICAgICAgICBlbHNlIGlmIChmbGFncyAmIEZfQkxBTkspCi0gICAgICAgICAgICAgICAgICAgIHNpZ24gPSAnICc7CisgICAgICAgICAgICAgICAgICAgIHNpZ25vYmogPSBibGFuazsKICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgIHNpZ24gPSAwOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKHdpZHRoIDwgbGVuKQogICAgICAgICAgICAgICAgIHdpZHRoID0gbGVuOwotICAgICAgICAgICAgaWYgKHJlc2NudCAtIChzaWduICE9IDApIDwgd2lkdGgpIHsKLSAgICAgICAgICAgICAgICByZXNsZW4gLT0gcmVzY250OwotICAgICAgICAgICAgICAgIHJlc2NudCA9IHdpZHRoICsgZm10Y250ICsgMTAwOwotICAgICAgICAgICAgICAgIHJlc2xlbiArPSByZXNjbnQ7Ci0gICAgICAgICAgICAgICAgaWYgKHJlc2xlbiA8IDApIHsKLSAgICAgICAgICAgICAgICAgICAgUHlfWERFQ1JFRih0ZW1wKTsKLSAgICAgICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKLSAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoX1B5VW5pY29kZV9SZXNpemUoJnJlc3VsdCwgcmVzbGVuKSA8IDApIHsKLSAgICAgICAgICAgICAgICAgICAgUHlfWERFQ1JFRih0ZW1wKTsKLSAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICByZXMgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpCi0gICAgICAgICAgICAgICAgICAgICsgcmVzbGVuIC0gcmVzY250OwotICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKHNpZ24pIHsKLSAgICAgICAgICAgICAgICBpZiAoZmlsbCAhPSAnICcpCi0gICAgICAgICAgICAgICAgICAgICpyZXMrKyA9IHNpZ247Ci0gICAgICAgICAgICAgICAgcmVzY250LS07CisgICAgICAgICAgICAgICAgaWYgKGZpbGwgIT0gJyAnKSB7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydChzaWdub2JqICE9IE5VTEwpOworICAgICAgICAgICAgICAgICAgICBpZiAoX1B5QWNjdV9BY2N1bXVsYXRlKCZhY2MsIHNpZ25vYmopKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBpZiAod2lkdGggPiBsZW4pCiAgICAgICAgICAgICAgICAgICAgIHdpZHRoLS07CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoKGZsYWdzICYgRl9BTFQpICYmIChjID09ICd4JyB8fCBjID09ICdYJyB8fCBjID09ICdvJykpIHsKLSAgICAgICAgICAgICAgICBhc3NlcnQocGJ1ZlswXSA9PSAnMCcpOwotICAgICAgICAgICAgICAgIGFzc2VydChwYnVmWzFdID09IGMpOworICAgICAgICAgICAgICAgIGFzc2VydChQeVVuaWNvZGVfUkVBRChraW5kLCBwYnVmLCBwaW5kZXgpID09ICcwJyk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9SRUFEKGtpbmQsIHBidWYsIHBpbmRleCArIDEpID09IGMpOwogICAgICAgICAgICAgICAgIGlmIChmaWxsICE9ICcgJykgewotICAgICAgICAgICAgICAgICAgICAqcmVzKysgPSAqcGJ1ZisrOwotICAgICAgICAgICAgICAgICAgICAqcmVzKysgPSAqcGJ1ZisrOworICAgICAgICAgICAgICAgICAgICBzZWNvbmQgPSBnZXRfbGF0aW4xX2NoYXIoCisgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBwYnVmLCBwaW5kZXggKyAxKSk7CisgICAgICAgICAgICAgICAgICAgIHBpbmRleCArPSAyOworICAgICAgICAgICAgICAgICAgICBpZiAoc2Vjb25kID09IE5VTEwgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgIF9QeUFjY3VfQWNjdW11bGF0ZSgmYWNjLCB6ZXJvKSB8fAorICAgICAgICAgICAgICAgICAgICAgICAgX1B5QWNjdV9BY2N1bXVsYXRlKCZhY2MsIHNlY29uZCkpCisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgICAgIFB5X0NMRUFSKHNlY29uZCk7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHJlc2NudCAtPSAyOwogICAgICAgICAgICAgICAgIHdpZHRoIC09IDI7CiAgICAgICAgICAgICAgICAgaWYgKHdpZHRoIDwgMCkKICAgICAgICAgICAgICAgICAgICAgd2lkdGggPSAwOwogICAgICAgICAgICAgICAgIGxlbiAtPSAyOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKHdpZHRoID4gbGVuICYmICEoZmxhZ3MgJiBGX0xKVVNUKSkgewotICAgICAgICAgICAgICAgIGRvIHsKLSAgICAgICAgICAgICAgICAgICAgLS1yZXNjbnQ7Ci0gICAgICAgICAgICAgICAgICAgICpyZXMrKyA9IGZpbGw7Ci0gICAgICAgICAgICAgICAgfSB3aGlsZSAoLS13aWR0aCA+IGxlbik7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGZpbGxvYmogIT0gTlVMTCk7CisgICAgICAgICAgICAgICAgaWYgKHJlcGVhdF9hY2N1bXVsYXRlKCZhY2MsIGZpbGxvYmosIHdpZHRoIC0gbGVuKSkKKyAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgIHdpZHRoID0gbGVuOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKGZpbGwgPT0gJyAnKSB7Ci0gICAgICAgICAgICAgICAgaWYgKHNpZ24pCi0gICAgICAgICAgICAgICAgICAgICpyZXMrKyA9IHNpZ247CisgICAgICAgICAgICAgICAgaWYgKHNpZ24pIHsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KHNpZ25vYmogIT0gTlVMTCk7CisgICAgICAgICAgICAgICAgICAgIGlmIChfUHlBY2N1X0FjY3VtdWxhdGUoJmFjYywgc2lnbm9iaikpCisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGlmICgoZmxhZ3MgJiBGX0FMVCkgJiYgKGMgPT0gJ3gnIHx8IGMgPT0gJ1gnIHx8IGMgPT0gJ28nKSkgewotICAgICAgICAgICAgICAgICAgICBhc3NlcnQocGJ1ZlswXSA9PSAnMCcpOwotICAgICAgICAgICAgICAgICAgICBhc3NlcnQocGJ1ZlsxXSA9PSBjKTsKLSAgICAgICAgICAgICAgICAgICAgKnJlcysrID0gKnBidWYrKzsKLSAgICAgICAgICAgICAgICAgICAgKnJlcysrID0gKnBidWYrKzsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9SRUFEKGtpbmQsIHBidWYsIHBpbmRleCkgPT0gJzAnKTsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9SRUFEKGtpbmQsIHBidWYsIHBpbmRleCsxKSA9PSBjKTsKKyAgICAgICAgICAgICAgICAgICAgc2Vjb25kID0gZ2V0X2xhdGluMV9jaGFyKAorICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgcGJ1ZiwgcGluZGV4ICsgMSkpOworICAgICAgICAgICAgICAgICAgICBwaW5kZXggKz0gMjsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHNlY29uZCA9PSBOVUxMIHx8CisgICAgICAgICAgICAgICAgICAgICAgICBfUHlBY2N1X0FjY3VtdWxhdGUoJmFjYywgemVybykgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgIF9QeUFjY3VfQWNjdW11bGF0ZSgmYWNjLCBzZWNvbmQpKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgICAgICBQeV9DTEVBUihzZWNvbmQpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWShyZXMsIHBidWYsIGxlbik7Ci0gICAgICAgICAgICByZXMgKz0gbGVuOwotICAgICAgICAgICAgcmVzY250IC09IGxlbjsKLSAgICAgICAgICAgIHdoaWxlICgtLXdpZHRoID49IGxlbikgewotICAgICAgICAgICAgICAgIC0tcmVzY250OwotICAgICAgICAgICAgICAgICpyZXMrKyA9ICcgJzsKKyAgICAgICAgICAgIC8qIENvcHkgYWxsIGNoYXJhY3RlcnMsIHByZXNlcnZpbmcgbGVuICovCisgICAgICAgICAgICBpZiAodGVtcCAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0KHBidWYgPT0gUHlVbmljb2RlX0RBVEEodGVtcCkpOworICAgICAgICAgICAgICAgIHYgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKHRlbXAsIHBpbmRleCwgcGluZGV4ICsgbGVuKTsKICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnAgPSAoY29uc3QgY2hhciAqKSBwYnVmOworICAgICAgICAgICAgICAgIGFzc2VydChwYnVmICE9IE5VTEwpOworICAgICAgICAgICAgICAgIHAgKz0ga2luZCAqIHBpbmRleDsKKyAgICAgICAgICAgICAgICB2ID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShraW5kLCBwLCBsZW4pOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKHYgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICByID0gX1B5QWNjdV9BY2N1bXVsYXRlKCZhY2MsIHYpOworICAgICAgICAgICAgUHlfREVDUkVGKHYpOworICAgICAgICAgICAgaWYgKHIpCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgaWYgKHdpZHRoID4gbGVuICYmIHJlcGVhdF9hY2N1bXVsYXRlKCZhY2MsIGJsYW5rLCB3aWR0aCAtIGxlbikpCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgaWYgKGRpY3QgJiYgKGFyZ2lkeCA8IGFyZ2xlbikgJiYgYyAhPSAnJScpIHsKICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibm90IGFsbCBhcmd1bWVudHMgY29udmVydGVkIGR1cmluZyBzdHJpbmcgZm9ybWF0dGluZyIpOwotICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodGVtcCk7CiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgUHlfWERFQ1JFRih0ZW1wKTsKKyAgICAgICAgICAgIFB5X0NMRUFSKHRlbXApOwogICAgICAgICB9IC8qICclJyAqLwogICAgIH0gLyogdW50aWwgZW5kICovCiAgICAgaWYgKGFyZ2lkeCA8IGFyZ2xlbiAmJiAhZGljdCkgewpAQCAtOTkwMywxNyArMTM5MjYsMjAgQEAKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIH0KIAotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmcmVzdWx0LCByZXNsZW4gLSByZXNjbnQpIDwgMCkKLSAgICAgICAgZ290byBvbkVycm9yOworICAgIHJlc3VsdCA9IF9QeUFjY3VfRmluaXNoKCZhY2MpOwogICAgIGlmIChhcmdzX293bmVkKSB7CiAgICAgICAgIFB5X0RFQ1JFRihhcmdzKTsKICAgICB9CiAgICAgUHlfREVDUkVGKHVmb3JtYXQpOwotICAgIHJldHVybiAoUHlPYmplY3QgKilyZXN1bHQ7CisgICAgUHlfWERFQ1JFRih0ZW1wKTsKKyAgICBQeV9YREVDUkVGKHNlY29uZCk7CisgICAgcmV0dXJuIHJlc3VsdDsKIAogICBvbkVycm9yOgotICAgIFB5X1hERUNSRUYocmVzdWx0KTsKICAgICBQeV9ERUNSRUYodWZvcm1hdCk7CisgICAgUHlfWERFQ1JFRih0ZW1wKTsKKyAgICBQeV9YREVDUkVGKHNlY29uZCk7CisgICAgX1B5QWNjdV9EZXN0cm95KCZhY2MpOwogICAgIGlmIChhcmdzX293bmVkKSB7CiAgICAgICAgIFB5X0RFQ1JFRihhcmdzKTsKICAgICB9CkBAIC05OTM2LDggKzEzOTYyLDEwIEBACiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxPc3M6c3RyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZ4LCAmZW5jb2RpbmcsICZlcnJvcnMpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoeCA9PSBOVUxMKQotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopX1B5VW5pY29kZV9OZXcoMCk7CisgICAgaWYgKHggPT0gTlVMTCkgeworICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgIH0KICAgICBpZiAoZW5jb2RpbmcgPT0gTlVMTCAmJiBlcnJvcnMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIFB5T2JqZWN0X1N0cih4KTsKICAgICBlbHNlCkBAIC05OTQ3LDMxICsxMzk3NSwxMDEgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiB1bmljb2RlX3N1YnR5cGVfbmV3KFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewotICAgIFB5VW5pY29kZU9iamVjdCAqdG1wLCAqcG5ldzsKLSAgICBQeV9zc2l6ZV90IG47CisgICAgUHlPYmplY3QgKnVuaWNvZGUsICpzZWxmOworICAgIFB5X3NzaXplX3QgbGVuZ3RoLCBjaGFyX3NpemU7CisgICAgaW50IHNoYXJlX3dzdHIsIHNoYXJlX3V0Zjg7CisgICAgdW5zaWduZWQgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKIAogICAgIGFzc2VydChQeVR5cGVfSXNTdWJ0eXBlKHR5cGUsICZQeVVuaWNvZGVfVHlwZSkpOwotICAgIHRtcCA9IChQeVVuaWNvZGVPYmplY3QgKil1bmljb2RlX25ldygmUHlVbmljb2RlX1R5cGUsIGFyZ3MsIGt3ZHMpOwotICAgIGlmICh0bXAgPT0gTlVMTCkKKworICAgIHVuaWNvZGUgPSB1bmljb2RlX25ldygmUHlVbmljb2RlX1R5cGUsIGFyZ3MsIGt3ZHMpOworICAgIGlmICh1bmljb2RlID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2sodG1wKSk7Ci0gICAgcG5ldyA9IChQeVVuaWNvZGVPYmplY3QgKikgdHlwZS0+dHBfYWxsb2ModHlwZSwgbiA9IHRtcC0+bGVuZ3RoKTsKLSAgICBpZiAocG5ldyA9PSBOVUxMKSB7Ci0gICAgICAgIFB5X0RFQ1JFRih0bXApOworICAgIGFzc2VydChfUHlVbmljb2RlX0NIRUNLKHVuaWNvZGUpKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKSB7CisgICAgICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHBuZXctPnN0ciA9IChQeV9VTklDT0RFKikgUHlPYmplY3RfTUFMTE9DKHNpemVvZihQeV9VTklDT0RFKSAqIChuKzEpKTsKLSAgICBpZiAocG5ldy0+c3RyID09IE5VTEwpIHsKLSAgICAgICAgX1B5X0ZvcmdldFJlZmVyZW5jZSgoUHlPYmplY3QgKilwbmV3KTsKLSAgICAgICAgUHlPYmplY3RfRGVsKHBuZXcpOwotICAgICAgICBQeV9ERUNSRUYodG1wKTsKLSAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisKKyAgICBzZWxmID0gdHlwZS0+dHBfYWxsb2ModHlwZSwgMCk7CisgICAgaWYgKHNlbGYgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBQeV9VTklDT0RFX0NPUFkocG5ldy0+c3RyLCB0bXAtPnN0ciwgbisxKTsKLSAgICBwbmV3LT5sZW5ndGggPSBuOwotICAgIHBuZXctPmhhc2ggPSB0bXAtPmhhc2g7Ci0gICAgUHlfREVDUkVGKHRtcCk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXBuZXc7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworCisgICAgX1B5VW5pY29kZV9MRU5HVEgoc2VsZikgPSBsZW5ndGg7CisjaWZkZWYgUHlfREVCVUcKKyAgICBfUHlVbmljb2RlX0hBU0goc2VsZikgPSAtMTsKKyNlbHNlCisgICAgX1B5VW5pY29kZV9IQVNIKHNlbGYpID0gX1B5VW5pY29kZV9IQVNIKHVuaWNvZGUpOworI2VuZGlmCisgICAgX1B5VW5pY29kZV9TVEFURShzZWxmKS5pbnRlcm5lZCA9IDA7CisgICAgX1B5VW5pY29kZV9TVEFURShzZWxmKS5raW5kID0ga2luZDsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHNlbGYpLmNvbXBhY3QgPSAwOworICAgIF9QeVVuaWNvZGVfU1RBVEUoc2VsZikuYXNjaWkgPSBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmFzY2lpOworICAgIF9QeVVuaWNvZGVfU1RBVEUoc2VsZikucmVhZHkgPSAxOworICAgIF9QeVVuaWNvZGVfV1NUUihzZWxmKSA9IE5VTEw7CisgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSChzZWxmKSA9IDA7CisgICAgX1B5VW5pY29kZV9VVEY4KHNlbGYpID0gTlVMTDsKKyAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHNlbGYpID0gMDsKKyAgICBfUHlVbmljb2RlX0RBVEFfQU5ZKHNlbGYpID0gTlVMTDsKKworICAgIHNoYXJlX3V0ZjggPSAwOworICAgIHNoYXJlX3dzdHIgPSAwOworICAgIGlmIChraW5kID09IFB5VW5pY29kZV8xQllURV9LSU5EKSB7CisgICAgICAgIGNoYXJfc2l6ZSA9IDE7CisgICAgICAgIGlmIChQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUodW5pY29kZSkgPCAxMjgpCisgICAgICAgICAgICBzaGFyZV91dGY4ID0gMTsKKyAgICB9CisgICAgZWxzZSBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORCkgeworICAgICAgICBjaGFyX3NpemUgPSAyOworICAgICAgICBpZiAoc2l6ZW9mKHdjaGFyX3QpID09IDIpCisgICAgICAgICAgICBzaGFyZV93c3RyID0gMTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGFzc2VydChraW5kID09IFB5VW5pY29kZV80QllURV9LSU5EKTsKKyAgICAgICAgY2hhcl9zaXplID0gNDsKKyAgICAgICAgaWYgKHNpemVvZih3Y2hhcl90KSA9PSA0KQorICAgICAgICAgICAgc2hhcmVfd3N0ciA9IDE7CisgICAgfQorCisgICAgLyogRW5zdXJlIHdlIHdvbid0IG92ZXJmbG93IHRoZSBsZW5ndGguICovCisgICAgaWYgKGxlbmd0aCA+IChQWV9TU0laRV9UX01BWCAvIGNoYXJfc2l6ZSAtIDEpKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICB9CisgICAgZGF0YSA9IFB5T2JqZWN0X01BTExPQygobGVuZ3RoICsgMSkgKiBjaGFyX3NpemUpOworICAgIGlmIChkYXRhID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgZ290byBvbkVycm9yOworICAgIH0KKworICAgIF9QeVVuaWNvZGVfREFUQV9BTlkoc2VsZikgPSBkYXRhOworICAgIGlmIChzaGFyZV91dGY4KSB7CisgICAgICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgoc2VsZikgPSBsZW5ndGg7CisgICAgICAgIF9QeVVuaWNvZGVfVVRGOChzZWxmKSA9IGRhdGE7CisgICAgfQorICAgIGlmIChzaGFyZV93c3RyKSB7CisgICAgICAgIF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgoc2VsZikgPSBsZW5ndGg7CisgICAgICAgIF9QeVVuaWNvZGVfV1NUUihzZWxmKSA9ICh3Y2hhcl90ICopZGF0YTsKKyAgICB9CisKKyAgICBQeV9NRU1DUFkoZGF0YSwgUHlVbmljb2RlX0RBVEEodW5pY29kZSksCisgICAgICAgICAgICAgIGtpbmQgKiAobGVuZ3RoICsgMSkpOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3koc2VsZiwgMSkpOworI2lmZGVmIFB5X0RFQlVHCisgICAgX1B5VW5pY29kZV9IQVNIKHNlbGYpID0gX1B5VW5pY29kZV9IQVNIKHVuaWNvZGUpOworI2VuZGlmCisgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgIHJldHVybiBzZWxmOworCitvbkVycm9yOgorICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICBQeV9ERUNSRUYoc2VsZik7CisgICAgcmV0dXJuIE5VTEw7CiB9CiAKIFB5RG9jX1NUUlZBUih1bmljb2RlX2RvYywKQEAgLTEwMDI5LDEyICsxNDEyNywxMiBAQAogCiAvKiBJbml0aWFsaXplIHRoZSBVbmljb2RlIGltcGxlbWVudGF0aW9uICovCiAKLXZvaWQgX1B5VW5pY29kZV9Jbml0KHZvaWQpCitpbnQgX1B5VW5pY29kZV9Jbml0KHZvaWQpCiB7CiAgICAgaW50IGk7CiAKICAgICAvKiBYWFggLSBtb3ZlIHRoaXMgYXJyYXkgdG8gdW5pY29kZWN0eXBlLmMgPyAqLwotICAgIFB5X1VOSUNPREUgbGluZWJyZWFrW10gPSB7CisgICAgUHlfVUNTMiBsaW5lYnJlYWtbXSA9IHsKICAgICAgICAgMHgwMDBBLCAvKiBMSU5FIEZFRUQgKi8KICAgICAgICAgMHgwMDBELCAvKiBDQVJSSUFHRSBSRVRVUk4gKi8KICAgICAgICAgMHgwMDFDLCAvKiBGSUxFIFNFUEFSQVRPUiAqLwpAQCAtMTAwNDYsMTEgKzE0MTQ0LDEwIEBACiAgICAgfTsKIAogICAgIC8qIEluaXQgdGhlIGltcGxlbWVudGF0aW9uICovCi0gICAgZnJlZV9saXN0ID0gTlVMTDsKLSAgICBudW1mcmVlID0gMDsKLSAgICB1bmljb2RlX2VtcHR5ID0gX1B5VW5pY29kZV9OZXcoMCk7CisgICAgdW5pY29kZV9lbXB0eSA9IFB5VW5pY29kZV9OZXcoMCwgMCk7CiAgICAgaWYgKCF1bmljb2RlX2VtcHR5KQotICAgICAgICByZXR1cm47CisgICAgICAgIFB5X0ZhdGFsRXJyb3IoIkNhbid0IGNyZWF0ZSBlbXB0eSBzdHJpbmciKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHVuaWNvZGVfZW1wdHksIDEpKTsKIAogICAgIGZvciAoaSA9IDA7IGkgPCAyNTY7IGkrKykKICAgICAgICAgdW5pY29kZV9sYXRpbjFbaV0gPSBOVUxMOwpAQCAtMTAwNTksMTAgKzE0MTU2LDE5IEBACiAKICAgICAvKiBpbml0aWFsaXplIHRoZSBsaW5lYnJlYWsgYmxvb20gZmlsdGVyICovCiAgICAgYmxvb21fbGluZWJyZWFrID0gbWFrZV9ibG9vbV9tYXNrKAotICAgICAgICBsaW5lYnJlYWssIHNpemVvZihsaW5lYnJlYWspIC8gc2l6ZW9mKGxpbmVicmVha1swXSkKLSAgICAgICAgKTsKKyAgICAgICAgUHlVbmljb2RlXzJCWVRFX0tJTkQsIGxpbmVicmVhaywKKyAgICAgICAgUHlfQVJSQVlfTEVOR1RIKGxpbmVicmVhaykpOwogCiAgICAgUHlUeXBlX1JlYWR5KCZFbmNvZGluZ01hcFR5cGUpOworCisjaWZkZWYgSEFWRV9NQkNTCisgICAgd2ludmVyLmR3T1NWZXJzaW9uSW5mb1NpemUgPSBzaXplb2Yod2ludmVyKTsKKyAgICBpZiAoIUdldFZlcnNpb25FeCgoT1NWRVJTSU9OSU5GTyopJndpbnZlcikpIHsKKyAgICAgICAgUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoMCk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisjZW5kaWYKKyAgICByZXR1cm4gMDsKIH0KIAogLyogRmluYWxpemUgdGhlIFVuaWNvZGUgaW1wbGVtZW50YXRpb24gKi8KQEAgLTEwMDcwLDIxICsxNDE3Niw3IEBACiBpbnQKIFB5VW5pY29kZV9DbGVhckZyZWVMaXN0KHZvaWQpCiB7Ci0gICAgaW50IGZyZWVsaXN0X3NpemUgPSBudW1mcmVlOwotICAgIFB5VW5pY29kZU9iamVjdCAqdTsKLQotICAgIGZvciAodSA9IGZyZWVfbGlzdDsgdSAhPSBOVUxMOykgewotICAgICAgICBQeVVuaWNvZGVPYmplY3QgKnYgPSB1OwotICAgICAgICB1ID0gKihQeVVuaWNvZGVPYmplY3QgKiopdTsKLSAgICAgICAgaWYgKHYtPnN0cikKLSAgICAgICAgICAgIFB5T2JqZWN0X0RFTCh2LT5zdHIpOwotICAgICAgICBQeV9YREVDUkVGKHYtPmRlZmVuYyk7Ci0gICAgICAgIFB5T2JqZWN0X0RlbCh2KTsKLSAgICAgICAgbnVtZnJlZS0tOwotICAgIH0KLSAgICBmcmVlX2xpc3QgPSBOVUxMOwotICAgIGFzc2VydChudW1mcmVlID09IDApOwotICAgIHJldHVybiBmcmVlbGlzdF9zaXplOworICAgIHJldHVybiAwOwogfQogCiB2b2lkCkBAIC0xMDEwMSwxNyArMTQxOTMsMjIgQEAKICAgICAgICAgICAgIHVuaWNvZGVfbGF0aW4xW2ldID0gTlVMTDsKICAgICAgICAgfQogICAgIH0KKyAgICBfUHlVbmljb2RlX0NsZWFyU3RhdGljU3RyaW5ncygpOwogICAgICh2b2lkKVB5VW5pY29kZV9DbGVhckZyZWVMaXN0KCk7CiB9CiAKIHZvaWQKIFB5VW5pY29kZV9JbnRlcm5JblBsYWNlKFB5T2JqZWN0ICoqcCkKIHsKLSAgICByZWdpc3RlciBQeVVuaWNvZGVPYmplY3QgKnMgPSAoUHlVbmljb2RlT2JqZWN0ICopKCpwKTsKKyAgICByZWdpc3RlciBQeU9iamVjdCAqcyA9ICpwOwogICAgIFB5T2JqZWN0ICp0OworI2lmZGVmIFB5X0RFQlVHCisgICAgYXNzZXJ0KHMgIT0gTlVMTCk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0socykpOworI2Vsc2UKICAgICBpZiAocyA9PSBOVUxMIHx8ICFQeVVuaWNvZGVfQ2hlY2socykpCi0gICAgICAgIFB5X0ZhdGFsRXJyb3IoCi0gICAgICAgICAgICAiUHlVbmljb2RlX0ludGVybkluUGxhY2U6IHVuaWNvZGUgc3RyaW5ncyBvbmx5IHBsZWFzZSEiKTsKKyAgICAgICAgcmV0dXJuOworI2VuZGlmCiAgICAgLyogSWYgaXQncyBhIHN1YmNsYXNzLCB3ZSBkb24ndCByZWFsbHkga25vdyB3aGF0IHB1dHRpbmcKICAgICAgICBpdCBpbiB0aGUgaW50ZXJuZWQgZGljdCBtaWdodCBkby4gKi8KICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KHMpKQpAQCAtMTAxMjksNyArMTQyMjYsNyBAQAogICAgICAgIHRob3VnaCB0aGUga2V5IGlzIHByZXNlbnQgaW4gdGhlIGRpY3Rpb25hcnksCiAgICAgICAgbmFtZWx5IHdoZW4gdGhpcyBoYXBwZW5zIGR1cmluZyBhIHN0YWNrIG92ZXJmbG93LiAqLwogICAgIFB5X0FMTE9XX1JFQ1VSU0lPTgotICAgICAgICB0ID0gUHlEaWN0X0dldEl0ZW0oaW50ZXJuZWQsIChQeU9iamVjdCAqKXMpOworICAgIHQgPSBQeURpY3RfR2V0SXRlbShpbnRlcm5lZCwgcyk7CiAgICAgUHlfRU5EX0FMTE9XX1JFQ1VSU0lPTgogCiAgICAgICAgIGlmICh0KSB7CkBAIC0xMDE0MCw3ICsxNDIzNyw3IEBACiAgICAgICAgIH0KIAogICAgIFB5VGhyZWFkU3RhdGVfR0VUKCktPnJlY3Vyc2lvbl9jcml0aWNhbCA9IDE7Ci0gICAgaWYgKFB5RGljdF9TZXRJdGVtKGludGVybmVkLCAoUHlPYmplY3QgKilzLCAoUHlPYmplY3QgKilzKSA8IDApIHsKKyAgICBpZiAoUHlEaWN0X1NldEl0ZW0oaW50ZXJuZWQsIHMsIHMpIDwgMCkgewogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICBQeVRocmVhZFN0YXRlX0dFVCgpLT5yZWN1cnNpb25fY3JpdGljYWwgPSAwOwogICAgICAgICByZXR1cm47CkBAIC0xMDE0OSw3ICsxNDI0Niw3IEBACiAgICAgLyogVGhlIHR3byByZWZlcmVuY2VzIGluIGludGVybmVkIGFyZSBub3QgY291bnRlZCBieSByZWZjbnQuCiAgICAgICAgVGhlIGRlYWxsb2NhdG9yIHdpbGwgdGFrZSBjYXJlIG9mIHRoaXMgKi8KICAgICBQeV9SRUZDTlQocykgLT0gMjsKLSAgICBQeVVuaWNvZGVfQ0hFQ0tfSU5URVJORUQocykgPSBTU1RBVEVfSU5URVJORURfTU9SVEFMOworICAgIF9QeVVuaWNvZGVfU1RBVEUocykuaW50ZXJuZWQgPSBTU1RBVEVfSU5URVJORURfTU9SVEFMOwogfQogCiB2b2lkCkBAIC0xMDE1Nyw3ICsxNDI1NCw3IEBACiB7CiAgICAgUHlVbmljb2RlX0ludGVybkluUGxhY2UocCk7CiAgICAgaWYgKFB5VW5pY29kZV9DSEVDS19JTlRFUk5FRCgqcCkgIT0gU1NUQVRFX0lOVEVSTkVEX0lNTU9SVEFMKSB7Ci0gICAgICAgIFB5VW5pY29kZV9DSEVDS19JTlRFUk5FRCgqcCkgPSBTU1RBVEVfSU5URVJORURfSU1NT1JUQUw7CisgICAgICAgIF9QeVVuaWNvZGVfU1RBVEUoKnApLmludGVybmVkID0gU1NUQVRFX0lOVEVSTkVEX0lNTU9SVEFMOwogICAgICAgICBQeV9JTkNSRUYoKnApOwogICAgIH0KIH0KQEAgLTEwMTcyLDEwICsxNDI2OSwxMSBAQAogICAgIHJldHVybiBzOwogfQogCi12b2lkIF9QeV9SZWxlYXNlSW50ZXJuZWRVbmljb2RlU3RyaW5ncyh2b2lkKQordm9pZAorX1B5X1JlbGVhc2VJbnRlcm5lZFVuaWNvZGVTdHJpbmdzKHZvaWQpCiB7CiAgICAgUHlPYmplY3QgKmtleXM7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpzOworICAgIFB5T2JqZWN0ICpzOwogICAgIFB5X3NzaXplX3QgaSwgbjsKICAgICBQeV9zc2l6ZV90IGltbW9ydGFsX3NpemUgPSAwLCBtb3J0YWxfc2l6ZSA9IDA7CiAKQEAgLTEwMTk2LDIzICsxNDI5NCwyNyBAQAogICAgIGZwcmludGYoc3RkZXJyLCAicmVsZWFzaW5nICUiIFBZX0ZPUk1BVF9TSVpFX1QgImQgaW50ZXJuZWQgc3RyaW5nc1xuIiwKICAgICAgICAgICAgIG4pOwogICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspIHsKLSAgICAgICAgcyA9IChQeVVuaWNvZGVPYmplY3QgKikgUHlMaXN0X0dFVF9JVEVNKGtleXMsIGkpOwotICAgICAgICBzd2l0Y2ggKHMtPnN0YXRlKSB7CisgICAgICAgIHMgPSBQeUxpc3RfR0VUX0lURU0oa2V5cywgaSk7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocykgPT0gLTEpIHsKKyAgICAgICAgICAgIGFzc2VydCgwICYmICJjb3VsZCBub3QgcmVhZHkgc3RyaW5nIik7CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImNvdWxkIG5vdCByZWFkeSBzdHJpbmdcbiIpOworICAgICAgICB9CisgICAgICAgIHN3aXRjaCAoUHlVbmljb2RlX0NIRUNLX0lOVEVSTkVEKHMpKSB7CiAgICAgICAgIGNhc2UgU1NUQVRFX05PVF9JTlRFUk5FRDoKICAgICAgICAgICAgIC8qIFhYWCBTaG91bGRuJ3QgaGFwcGVuICovCiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBTU1RBVEVfSU5URVJORURfSU1NT1JUQUw6CiAgICAgICAgICAgICBQeV9SRUZDTlQocykgKz0gMTsKLSAgICAgICAgICAgIGltbW9ydGFsX3NpemUgKz0gcy0+bGVuZ3RoOworICAgICAgICAgICAgaW1tb3J0YWxfc2l6ZSArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIFNTVEFURV9JTlRFUk5FRF9NT1JUQUw6CiAgICAgICAgICAgICBQeV9SRUZDTlQocykgKz0gMjsKLSAgICAgICAgICAgIG1vcnRhbF9zaXplICs9IHMtPmxlbmd0aDsKKyAgICAgICAgICAgIG1vcnRhbF9zaXplICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHMpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBQeV9GYXRhbEVycm9yKCJJbmNvbnNpc3RlbnQgaW50ZXJuZWQgc3RyaW5nIHN0YXRlLiIpOwogICAgICAgICB9Ci0gICAgICAgIHMtPnN0YXRlID0gU1NUQVRFX05PVF9JTlRFUk5FRDsKKyAgICAgICAgX1B5VW5pY29kZV9TVEFURShzKS5pbnRlcm5lZCA9IFNTVEFURV9OT1RfSU5URVJORUQ7CiAgICAgfQogICAgIGZwcmludGYoc3RkZXJyLCAidG90YWwgc2l6ZSBvZiBhbGwgaW50ZXJuZWQgc3RyaW5nczogIgogICAgICAgICAgICAgIiUiIFBZX0ZPUk1BVF9TSVpFX1QgImQvJSIgUFlfRk9STUFUX1NJWkVfVCAiZCAiCkBAIC0xMDIyOSw3ICsxNDMzMSw3IEBACiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgUHlPYmplY3RfSEVBRAogICAgIFB5X3NzaXplX3QgaXRfaW5kZXg7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICppdF9zZXE7IC8qIFNldCB0byBOVUxMIHdoZW4gaXRlcmF0b3IgaXMgZXhoYXVzdGVkICovCisgICAgUHlPYmplY3QgKml0X3NlcTsgICAgLyogU2V0IHRvIE5VTEwgd2hlbiBpdGVyYXRvciBpcyBleGhhdXN0ZWQgKi8KIH0gdW5pY29kZWl0ZXJvYmplY3Q7CiAKIHN0YXRpYyB2b2lkCkBAIC0xMDI1MCwxOCArMTQzNTIsMTkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiB1bmljb2RlaXRlcl9uZXh0KHVuaWNvZGVpdGVyb2JqZWN0ICppdCkKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnNlcTsKLSAgICBQeU9iamVjdCAqaXRlbTsKKyAgICBQeU9iamVjdCAqc2VxLCAqaXRlbTsKIAogICAgIGFzc2VydChpdCAhPSBOVUxMKTsKICAgICBzZXEgPSBpdC0+aXRfc2VxOwogICAgIGlmIChzZXEgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhzZXEpKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyhzZXEpKTsKIAotICAgIGlmIChpdC0+aXRfaW5kZXggPCBQeVVuaWNvZGVfR0VUX1NJWkUoc2VxKSkgewotICAgICAgICBpdGVtID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKAotICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc2VxKStpdC0+aXRfaW5kZXgsIDEpOworICAgIGlmIChpdC0+aXRfaW5kZXggPCBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZXEpKSB7CisgICAgICAgIGludCBraW5kID0gUHlVbmljb2RlX0tJTkQoc2VxKTsKKyAgICAgICAgdm9pZCAqZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlcSk7CisgICAgICAgIFB5X1VDUzQgY2hyID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaXQtPml0X2luZGV4KTsKKyAgICAgICAgaXRlbSA9IFB5VW5pY29kZV9Gcm9tT3JkaW5hbChjaHIpOwogICAgICAgICBpZiAoaXRlbSAhPSBOVUxMKQogICAgICAgICAgICAgKytpdC0+aXRfaW5kZXg7CiAgICAgICAgIHJldHVybiBpdGVtOwpAQCAtMTAyNzcsNyArMTQzODAsNyBAQAogewogICAgIFB5X3NzaXplX3QgbGVuID0gMDsKICAgICBpZiAoaXQtPml0X3NlcSkKLSAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGl0LT5pdF9zZXEpIC0gaXQtPml0X2luZGV4OworICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChpdC0+aXRfc2VxKSAtIGl0LT5pdF9pbmRleDsKICAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KGxlbik7CiB9CiAKQEAgLTEwMzMxLDE2ICsxNDQzNCwxOSBAQAogICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VxKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaXQgPSBQeU9iamVjdF9HQ19OZXcodW5pY29kZWl0ZXJvYmplY3QsICZQeVVuaWNvZGVJdGVyX1R5cGUpOwogICAgIGlmIChpdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpdC0+aXRfaW5kZXggPSAwOwogICAgIFB5X0lOQ1JFRihzZXEpOwotICAgIGl0LT5pdF9zZXEgPSAoUHlVbmljb2RlT2JqZWN0ICopc2VxOworICAgIGl0LT5pdF9zZXEgPSBzZXE7CiAgICAgX1B5T2JqZWN0X0dDX1RSQUNLKGl0KTsKICAgICByZXR1cm4gKFB5T2JqZWN0ICopaXQ7CiB9CiAKKwogc2l6ZV90CiBQeV9VTklDT0RFX3N0cmxlbihjb25zdCBQeV9VTklDT0RFICp1KQogewpAQCAtMTA0MzIsMjUgKzE0NTM4LDMxIEBACiB9CiAKIFB5X1VOSUNPREUqCi1QeVVuaWNvZGVfQXNVbmljb2RlQ29weShQeU9iamVjdCAqb2JqZWN0KQorUHlVbmljb2RlX0FzVW5pY29kZUNvcHkoUHlPYmplY3QgKnVuaWNvZGUpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlID0gKFB5VW5pY29kZU9iamVjdCAqKW9iamVjdDsKLSAgICBQeV9VTklDT0RFICpjb3B5OwotICAgIFB5X3NzaXplX3Qgc2l6ZTsKKyAgICBQeV9VTklDT0RFICp1LCAqY29weTsKKyAgICBQeV9zc2l6ZV90IGxlbiwgc2l6ZTsKIAorICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICB1ID0gUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUodW5pY29kZSwgJmxlbik7CisgICAgaWYgKHUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgLyogRW5zdXJlIHdlIHdvbid0IG92ZXJmbG93IHRoZSBzaXplLiAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSkgPiAoKFBZX1NTSVpFX1RfTUFYIC8gc2l6ZW9mKFB5X1VOSUNPREUpKSAtIDEpKSB7CisgICAgaWYgKGxlbiA+ICgoUFlfU1NJWkVfVF9NQVggLyBzaXplb2YoUHlfVU5JQ09ERSkpIC0gMSkpIHsKICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSkgKyAxOyAvKiBjb3B5IHRoZSBudWwgY2hhcmFjdGVyICovCisgICAgc2l6ZSA9IGxlbiArIDE7IC8qIGNvcHkgdGhlIG51bGwgY2hhcmFjdGVyICovCiAgICAgc2l6ZSAqPSBzaXplb2YoUHlfVU5JQ09ERSk7CiAgICAgY29weSA9IFB5TWVtX01hbGxvYyhzaXplKTsKICAgICBpZiAoY29weSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBtZW1jcHkoY29weSwgUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksIHNpemUpOworICAgIG1lbWNweShjb3B5LCB1LCBzaXplKTsKICAgICByZXR1cm4gY29weTsKIH0KIApkaWZmIC0tZ2l0IGEvT2JqZWN0cy91bmljb2RldHlwZV9kYi5oIGIvT2JqZWN0cy91bmljb2RldHlwZV9kYi5oCmluZGV4IDg4YTc5MTIuLjQ2YTkyYmIgMTAwNjQ0Ci0tLSBhL09iamVjdHMvdW5pY29kZXR5cGVfZGIuaAorKysgYi9PYmplY3RzL3VuaWNvZGV0eXBlX2RiLmgKQEAgLTgsMTg0ICs4LDk5MiBAQAogICAgIHswLCAwLCAwLCAwLCAwLCA0OH0sCiAgICAgezAsIDAsIDAsIDAsIDAsIDEwNTZ9LAogICAgIHswLCAwLCAwLCAwLCAwLCAxMDI0fSwKLSAgICB7MCwgMCwgMCwgMCwgMCwgNTYzOH0sCi0gICAgezAsIDAsIDAsIDEsIDEsIDU2Mzh9LAotICAgIHswLCAwLCAwLCAyLCAyLCA1NjM4fSwKLSAgICB7MCwgMCwgMCwgMywgMywgNTYzOH0sCi0gICAgezAsIDAsIDAsIDQsIDQsIDU2Mzh9LAotICAgIHswLCAwLCAwLCA1LCA1LCA1NjM4fSwKLSAgICB7MCwgMCwgMCwgNiwgNiwgNTYzOH0sCi0gICAgezAsIDAsIDAsIDcsIDcsIDU2Mzh9LAotICAgIHswLCAwLCAwLCA4LCA4LCA1NjM4fSwKLSAgICB7MCwgMCwgMCwgOSwgOSwgNTYzOH0sCi0gICAgezAsIDMyLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMCwgMCwgMCwgMCwgMTUzNn0sCi0gICAgezY1NTA0LCAwLCA2NTUwNCwgMCwgMCwgMTgwMX0sCi0gICAgezAsIDAsIDAsIDAsIDAsIDE4MDF9LAotICAgIHswLCAwLCAwLCAwLCAyLCA1MTI0fSwKLSAgICB7MCwgMCwgMCwgMCwgMywgNTEyNH0sCi0gICAgezc0MywgMCwgNzQzLCAwLCAwLCAxODAxfSwKLSAgICB7MCwgMCwgMCwgMCwgMSwgNTEyNH0sCiAgICAgezAsIDAsIDAsIDAsIDAsIDUxMjB9LAotICAgIHsxMjEsIDAsIDEyMSwgMCwgMCwgMTgwMX0sCi0gICAgezAsIDEsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs2NTUzNSwgMCwgNjU1MzUsIDAsIDAsIDE4MDF9LAotICAgIHswLCA2NTMzNywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezY1MzA0LCAwLCA2NTMwNCwgMCwgMCwgMTgwMX0sCi0gICAgezAsIDY1NDE1LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NjUyMzYsIDAsIDY1MjM2LCAwLCAwLCAxODAxfSwKLSAgICB7MTk1LCAwLCAxOTUsIDAsIDAsIDE4MDF9LAotICAgIHswLCAyMTAsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyMDYsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyMDUsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA3OSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDIwMiwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDIwMywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDIwNywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezk3LCAwLCA5NywgMCwgMCwgMTgwMX0sCi0gICAgezAsIDIxMSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDIwOSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezE2MywgMCwgMTYzLCAwLCAwLCAxODAxfSwKLSAgICB7MCwgMjEzLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MTMwLCAwLCAxMzAsIDAsIDAsIDE4MDF9LAotICAgIHswLCAyMTQsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyMTgsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyMTcsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyMTksIDAsIDAsIDAsIDE5MjF9LAorICAgIHswLCAwLCAwLCAwLCAwLCAzNTkwfSwKKyAgICB7MCwgMCwgMCwgMSwgMSwgMzU5MH0sCisgICAgezAsIDAsIDAsIDIsIDIsIDM1OTB9LAorICAgIHswLCAwLCAwLCAzLCAzLCAzNTkwfSwKKyAgICB7MCwgMCwgMCwgNCwgNCwgMzU5MH0sCisgICAgezAsIDAsIDAsIDUsIDUsIDM1OTB9LAorICAgIHswLCAwLCAwLCA2LCA2LCAzNTkwfSwKKyAgICB7MCwgMCwgMCwgNywgNywgMzU5MH0sCisgICAgezAsIDAsIDAsIDgsIDgsIDM1OTB9LAorICAgIHswLCAwLCAwLCA5LCA5LCAzNTkwfSwKKyAgICB7MCwgMzIsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMTUzNn0sCisgICAgey0zMiwgMCwgLTMyLCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgOTk5M30sCisgICAgezAsIDAsIDAsIDAsIDAsIDQwOTZ9LAorICAgIHswLCAwLCAwLCAwLCAyLCAzMDc2fSwKKyAgICB7MCwgMCwgMCwgMCwgMywgMzA3Nn0sCisgICAgezE2Nzc3MjE4LCAxNzgyNTc5MiwgMTY3NzcyMTgsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgNTYzMn0sCisgICAgezAsIDAsIDAsIDAsIDEsIDMwNzZ9LAorICAgIHswLCAwLCAwLCAwLCAwLCAzMDcyfSwKKyAgICB7MzM1NTQ0MzgsIDE4ODc0MzcxLCAzMzU1NDQ0MCwgMCwgMCwgMjYzNzd9LAorICAgIHsxMjEsIDAsIDEyMSwgMCwgMCwgOTk5M30sCisgICAgezAsIDEsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7LTEsIDAsIC0xLCAwLCAwLCA5OTkzfSwKKyAgICB7MTY3NzcyMjgsIDMzNTU0NDQyLCAxNjc3NzIyOCwgMCwgMCwgMjY0OTd9LAorICAgIHstMjMyLCAwLCAtMjMyLCAwLCAwLCA5OTkzfSwKKyAgICB7MzM1NTQ0NDgsIDE4ODc0MzgxLCAzMzU1NDQ0OCwgMCwgMCwgMjYzNzd9LAorICAgIHswLCAtMTIxLCAwLCAwLCAwLCAxMDExM30sCisgICAgezE2Nzc3MjM2LCAxNzgyNTgxMCwgMTY3NzcyMzYsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MTk1LCAwLCAxOTUsIDAsIDAsIDk5OTN9LAorICAgIHswLCAyMTAsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMjA2LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDIwNSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCA3OSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAyMDIsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMjAzLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDIwNywgMCwgMCwgMCwgMTAxMTN9LAorICAgIHs5NywgMCwgOTcsIDAsIDAsIDk5OTN9LAorICAgIHswLCAyMTEsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMjA5LCAwLCAwLCAwLCAxMDExM30sCisgICAgezE2MywgMCwgMTYzLCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgMjEzLCAwLCAwLCAwLCAxMDExM30sCisgICAgezEzMCwgMCwgMTMwLCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgMjE0LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDIxOCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAyMTcsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMjE5LCAwLCAwLCAwLCAxMDExM30sCiAgICAgezAsIDAsIDAsIDAsIDAsIDE3OTN9LAotICAgIHs1NiwgMCwgNTYsIDAsIDAsIDE4MDF9LAotICAgIHswLCAyLCAxLCAwLCAwLCAxOTIxfSwKLSAgICB7NjU1MzUsIDEsIDAsIDAsIDAsIDE4NTd9LAotICAgIHs2NTUzNCwgMCwgNjU1MzUsIDAsIDAsIDE4MDF9LAotICAgIHs2NTQ1NywgMCwgNjU0NTcsIDAsIDAsIDE4MDF9LAotICAgIHswLCA2NTQzOSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDY1NDgwLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNjU0MDYsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAxMDc5NSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDY1MzczLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMTA3OTIsIDAsIDAsIDAsIDE5MjF9LAotICAgIHsxMDgxNSwgMCwgMTA4MTUsIDAsIDAsIDE4MDF9LAotICAgIHswLCA2NTM0MSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDY5LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNzEsIDAsIDAsIDAsIDE5MjF9LAotICAgIHsxMDc4MywgMCwgMTA3ODMsIDAsIDAsIDE4MDF9LAotICAgIHsxMDc4MCwgMCwgMTA3ODAsIDAsIDAsIDE4MDF9LAotICAgIHsxMDc4MiwgMCwgMTA3ODIsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMyNiwgMCwgNjUzMjYsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMzMCwgMCwgNjUzMzAsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMzMSwgMCwgNjUzMzEsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMzNCwgMCwgNjUzMzQsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMzMywgMCwgNjUzMzMsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMyOSwgMCwgNjUzMjksIDAsIDAsIDE4MDF9LAotICAgIHs0Mjg5MywgNjEzLCA0Mjg5MywgMCwgMCwgMzg0OX0sCi0gICAgezY1MzI3LCAwLCA2NTMyNywgMCwgMCwgMTgwMX0sCi0gICAgezY1MzI1LCAwLCA2NTMyNSwgMCwgMCwgMTgwMX0sCi0gICAgezEwNzQzLCAwLCAxMDc0MywgMCwgMCwgMTgwMX0sCi0gICAgezEwNzQ5LCAwLCAxMDc0OSwgMCwgMCwgMTgwMX0sCi0gICAgezY1MzIzLCAwLCA2NTMyMywgMCwgMCwgMTgwMX0sCi0gICAgezY1MzIyLCAwLCA2NTMyMiwgMCwgMCwgMTgwMX0sCi0gICAgezEwNzI3LCAwLCAxMDcyNywgMCwgMCwgMTgwMX0sCi0gICAgezY1MzE4LCAwLCA2NTMxOCwgMCwgMCwgMTgwMX0sCi0gICAgezY1NDY3LCAwLCA2NTQ2NywgMCwgMCwgMTgwMX0sCi0gICAgezY1MzE5LCAwLCA2NTMxOSwgMCwgMCwgMTgwMX0sCi0gICAgezY1NDY1LCAwLCA2NTQ2NSwgMCwgMCwgMTgwMX0sCi0gICAgezY1MzE3LCAwLCA2NTMxNywgMCwgMCwgMTgwMX0sCi0gICAgezg0LCAwLCA4NCwgMCwgMCwgMTUzNn0sCi0gICAgezAsIDAsIDAsIDAsIDAsIDEwMjV9LAotICAgIHswLCAzOCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDM3LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNjQsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA2MywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezY1NDk4LCAwLCA2NTQ5OCwgMCwgMCwgMTgwMX0sCi0gICAgezY1NDk5LCAwLCA2NTQ5OSwgMCwgMCwgMTgwMX0sCi0gICAgezY1NTA1LCAwLCA2NTUwNSwgMCwgMCwgMTgwMX0sCi0gICAgezY1NDcyLCAwLCA2NTQ3MiwgMCwgMCwgMTgwMX0sCi0gICAgezY1NDczLCAwLCA2NTQ3MywgMCwgMCwgMTgwMX0sCi0gICAgezAsIDgsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs2NTQ3NCwgMCwgNjU0NzQsIDAsIDAsIDE4MDF9LAotICAgIHs2NTQ3OSwgMCwgNjU0NzksIDAsIDAsIDE4MDF9LAotICAgIHswLCAwLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NjU0ODksIDAsIDY1NDg5LCAwLCAwLCAxODAxfSwKLSAgICB7NjU0ODIsIDAsIDY1NDgyLCAwLCAwLCAxODAxfSwKLSAgICB7NjU1MjgsIDAsIDY1NTI4LCAwLCAwLCAxODAxfSwKLSAgICB7NjU0NTAsIDAsIDY1NDUwLCAwLCAwLCAxODAxfSwKLSAgICB7NjU0NTYsIDAsIDY1NDU2LCAwLCAwLCAxODAxfSwKLSAgICB7NywgMCwgNywgMCwgMCwgMTgwMX0sCi0gICAgezAsIDY1NDc2LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NjU0NDAsIDAsIDY1NDQwLCAwLCAwLCAxODAxfSwKLSAgICB7MCwgNjU1MjksIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA4MCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDE1LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NjU1MjEsIDAsIDY1NTIxLCAwLCAwLCAxODAxfSwKLSAgICB7MCwgNDgsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs2NTQ4OCwgMCwgNjU0ODgsIDAsIDAsIDE4MDF9LAotICAgIHswLCAwLCAwLCAwLCAwLCAxNTM3fSwKLSAgICB7MCwgNzI2NCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDAsIDAsIDAsIDEsIDU2MzZ9LAotICAgIHswLCAwLCAwLCAwLCAyLCA1NjM2fSwKLSAgICB7MCwgMCwgMCwgMCwgMywgNTYzNn0sCi0gICAgezAsIDAsIDAsIDAsIDQsIDU2MzZ9LAotICAgIHswLCAwLCAwLCAwLCA1LCA1NjM2fSwKLSAgICB7MCwgMCwgMCwgMCwgNiwgNTYzNn0sCi0gICAgezAsIDAsIDAsIDAsIDcsIDU2MzZ9LAotICAgIHswLCAwLCAwLCAwLCA4LCA1NjM2fSwKLSAgICB7MCwgMCwgMCwgMCwgOSwgNTYzNn0sCi0gICAgezAsIDAsIDAsIDAsIDAsIDU4ODh9LAotICAgIHs0Mjg3NywgNzU0NSwgNDI4NzcsIDAsIDAsIDM4NDl9LAotICAgIHszODE0LCAwLCAzODE0LCAwLCAwLCAxODAxfSwKLSAgICB7NjU0NzcsIDAsIDY1NDc3LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgNTc5MjEsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs4LCAwLCA4LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgNjU1MjgsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs3NCwgMCwgNzQsIDAsIDAsIDE4MDF9LAotICAgIHs4NiwgMCwgODYsIDAsIDAsIDE4MDF9LAotICAgIHsxMDAsIDAsIDEwMCwgMCwgMCwgMTgwMX0sCi0gICAgezEyOCwgMCwgMTI4LCAwLCAwLCAxODAxfSwKLSAgICB7MTEyLCAwLCAxMTIsIDAsIDAsIDE4MDF9LAotICAgIHsxMjYsIDAsIDEyNiwgMCwgMCwgMTgwMX0sCi0gICAgezAsIDY1NTI4LCAwLCAwLCAwLCAxODU3fSwKLSAgICB7OSwgMCwgOSwgMCwgMCwgMTgwMX0sCi0gICAgezAsIDY1NDYyLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNjU1MjcsIDAsIDAsIDAsIDE4NTd9LAotICAgIHs1ODMzMSwgMCwgNTgzMzEsIDAsIDAsIDE4MDF9LAotICAgIHswLCA2NTQ1MCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDY1NDM2LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNjU0MjQsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA2NTQwOCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDY1NDEwLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMCwgMCwgMCwgMCwgNTEyNH0sCi0gICAgezAsIDAsIDAsIDAsIDQsIDUxMjR9LAotICAgIHswLCAwLCAwLCAwLCA1LCA1MTI0fSwKLSAgICB7MCwgMCwgMCwgMCwgNiwgNTEyNH0sCi0gICAgezAsIDAsIDAsIDAsIDcsIDUxMjR9LAotICAgIHswLCAwLCAwLCAwLCA4LCA1MTI0fSwKLSAgICB7MCwgMCwgMCwgMCwgOSwgNTEyNH0sCi0gICAgezAsIDAsIDAsIDAsIDAsIDE3OTJ9LAotICAgIHswLCA1ODAxOSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDU3MTUzLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNTcyNzQsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyOCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezY1NTA4LCAwLCA2NTUwOCwgMCwgMCwgMTgwMX0sCi0gICAgezAsIDE2LCAwLCAwLCAwLCA1ODg4fSwKLSAgICB7NjU1MjAsIDAsIDY1NTIwLCAwLCAwLCA1ODg4fSwKLSAgICB7MCwgMjYsIDAsIDAsIDAsIDEwMjR9LAotICAgIHs2NTUxMCwgMCwgNjU1MTAsIDAsIDAsIDEwMjR9LAotICAgIHswLCA1NDc5MywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDYxNzIyLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNTQ4MDksIDAsIDAsIDAsIDE5MjF9LAotICAgIHs1NDc0MSwgMCwgNTQ3NDEsIDAsIDAsIDE4MDF9LAotICAgIHs1NDc0NCwgMCwgNTQ3NDQsIDAsIDAsIDE4MDF9LAotICAgIHswLCA1NDc1NiwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDU0Nzg3LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNTQ3NTMsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA1NDc1NCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDU0NzIxLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NTgyNzIsIDAsIDU4MjcyLCAwLCAwLCAxODAxfSwKKyAgICB7NTYsIDAsIDU2LCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgMiwgMSwgMCwgMCwgMTAxMTN9LAorICAgIHstMSwgMSwgMCwgMCwgMCwgMTAwNDl9LAorICAgIHstMiwgMCwgLTEsIDAsIDAsIDk5OTN9LAorICAgIHstNzksIDAsIC03OSwgMCwgMCwgOTk5M30sCisgICAgezMzNTU0NDU2LCAxODg3NDM4OSwgMzM1NTQ0NTYsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgLTk3LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIC01NiwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtMTMwLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDEwNzk1LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIC0xNjMsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMTA3OTIsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MTA4MTUsIDAsIDEwODE1LCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgLTE5NSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCA2OSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCA3MSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHsxMDc4MywgMCwgMTA3ODMsIDAsIDAsIDk5OTN9LAorICAgIHsxMDc4MCwgMCwgMTA3ODAsIDAsIDAsIDk5OTN9LAorICAgIHsxMDc4MiwgMCwgMTA3ODIsIDAsIDAsIDk5OTN9LAorICAgIHstMjEwLCAwLCAtMjEwLCAwLCAwLCA5OTkzfSwKKyAgICB7LTIwNiwgMCwgLTIwNiwgMCwgMCwgOTk5M30sCisgICAgey0yMDUsIDAsIC0yMDUsIDAsIDAsIDk5OTN9LAorICAgIHstMjAyLCAwLCAtMjAyLCAwLCAwLCA5OTkzfSwKKyAgICB7LTIwMywgMCwgLTIwMywgMCwgMCwgOTk5M30sCisgICAgey0yMDcsIDAsIC0yMDcsIDAsIDAsIDk5OTN9LAorICAgIHs0MjI4MCwgMCwgNDIyODAsIDAsIDAsIDk5OTN9LAorICAgIHs0MjMwOCwgMCwgNDIzMDgsIDAsIDAsIDk5OTN9LAorICAgIHstMjA5LCAwLCAtMjA5LCAwLCAwLCA5OTkzfSwKKyAgICB7LTIxMSwgMCwgLTIxMSwgMCwgMCwgOTk5M30sCisgICAgezEwNzQzLCAwLCAxMDc0MywgMCwgMCwgOTk5M30sCisgICAgezEwNzQ5LCAwLCAxMDc0OSwgMCwgMCwgOTk5M30sCisgICAgey0yMTMsIDAsIC0yMTMsIDAsIDAsIDk5OTN9LAorICAgIHstMjE0LCAwLCAtMjE0LCAwLCAwLCA5OTkzfSwKKyAgICB7MTA3MjcsIDAsIDEwNzI3LCAwLCAwLCA5OTkzfSwKKyAgICB7LTIxOCwgMCwgLTIxOCwgMCwgMCwgOTk5M30sCisgICAgey02OSwgMCwgLTY5LCAwLCAwLCA5OTkzfSwKKyAgICB7LTIxNywgMCwgLTIxNywgMCwgMCwgOTk5M30sCisgICAgey03MSwgMCwgLTcxLCAwLCAwLCA5OTkzfSwKKyAgICB7LTIxOSwgMCwgLTIxOSwgMCwgMCwgOTk5M30sCisgICAgezAsIDAsIDAsIDAsIDAsIDE0MDg5fSwKICAgICB7MCwgMCwgMCwgMCwgMCwgNTg4OX0sCi0gICAgezQyODc3LCA3NTQ1LCA0Mjg3NywgMCwgMCwgMzk2OX0sCi0gICAgezQyODkzLCA2MTMsIDQyODkzLCAwLCAwLCAzOTY5fSwKLSAgICB7MCwgNDAsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs2NTQ5NiwgMCwgNjU0OTYsIDAsIDAsIDE4MDF9LAorICAgIHsxNjc3NzI0NCwgMTc4MjU4MTgsIDE2Nzc3MjQ0LCAwLCAwLCAzMDIxNn0sCisgICAgezAsIDAsIDAsIDAsIDAsIDEzMzIxfSwKKyAgICB7MCwgMzgsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMzcsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgNjQsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgNjMsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7NTAzMzE2ODEsIDE5OTIyOTczLCA1MDMzMTY4MSwgMCwgMCwgMjYzNzd9LAorICAgIHstMzgsIDAsIC0zOCwgMCwgMCwgOTk5M30sCisgICAgey0zNywgMCwgLTM3LCAwLCAwLCA5OTkzfSwKKyAgICB7NTAzMzE2ODgsIDE5OTIyOTgwLCA1MDMzMTY4OCwgMCwgMCwgMjYzNzd9LAorICAgIHsxNjc3NzI2MSwgMTc4MjU4MzUsIDE2Nzc3MjYxLCAwLCAwLCAyNjM3N30sCisgICAgey02NCwgMCwgLTY0LCAwLCAwLCA5OTkzfSwKKyAgICB7LTYzLCAwLCAtNjMsIDAsIDAsIDk5OTN9LAorICAgIHswLCA4LCAwLCAwLCAwLCAxMDExM30sCisgICAgezE2Nzc3MjY0LCAxNzgyNTgzOCwgMTY3NzcyNjQsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MTY3NzcyNjcsIDE3ODI1ODQxLCAxNjc3NzI2NywgMCwgMCwgMjYzNzd9LAorICAgIHswLCAwLCAwLCAwLCAwLCAxMDExM30sCisgICAgezE2Nzc3MjcwLCAxNzgyNTg0NCwgMTY3NzcyNzAsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MTY3NzcyNzMsIDE3ODI1ODQ3LCAxNjc3NzI3MywgMCwgMCwgMjYzNzd9LAorICAgIHstOCwgMCwgLTgsIDAsIDAsIDk5OTN9LAorICAgIHsxNjc3NzI3NiwgMTc4MjU4NTAsIDE2Nzc3Mjc2LCAwLCAwLCAyNjM3N30sCisgICAgezE2Nzc3Mjc5LCAxNzgyNTg1MywgMTY3NzcyNzksIDAsIDAsIDI2Mzc3fSwKKyAgICB7NywgMCwgNywgMCwgMCwgOTk5M30sCisgICAgezAsIC02MCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHsxNjc3NzI4MiwgMTc4MjU4NTYsIDE2Nzc3MjgyLCAwLCAwLCAyNjM3N30sCisgICAgezAsIC03LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDgwLCAwLCAwLCAwLCAxMDExM30sCisgICAgey04MCwgMCwgLTgwLCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgMTUsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7LTE1LCAwLCAtMTUsIDAsIDAsIDk5OTN9LAorICAgIHswLCA0OCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHstNDgsIDAsIC00OCwgMCwgMCwgOTk5M30sCisgICAgezMzNTU0NTAyLCAxODg3NDQzNSwgMzM1NTQ1MDQsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMTUzN30sCisgICAgezAsIDcyNjQsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMCwgMCwgMCwgMSwgMzU4OH0sCisgICAgezAsIDAsIDAsIDAsIDIsIDM1ODh9LAorICAgIHswLCAwLCAwLCAwLCAzLCAzNTg4fSwKKyAgICB7MCwgMCwgMCwgMCwgNCwgMzU4OH0sCisgICAgezAsIDAsIDAsIDAsIDUsIDM1ODh9LAorICAgIHswLCAwLCAwLCAwLCA2LCAzNTg4fSwKKyAgICB7MCwgMCwgMCwgMCwgNywgMzU4OH0sCisgICAgezAsIDAsIDAsIDAsIDgsIDM1ODh9LAorICAgIHswLCAwLCAwLCAwLCA5LCAzNTg4fSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMzg0MH0sCisgICAgezM1MzMyLCAwLCAzNTMzMiwgMCwgMCwgOTk5M30sCisgICAgezM4MTQsIDAsIDM4MTQsIDAsIDAsIDk5OTN9LAorICAgIHszMzU1NDUwOSwgMTg4NzQ0NDIsIDMzNTU0NTA5LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NTE0LCAxODg3NDQ0NywgMzM1NTQ1MTQsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ1MTksIDE4ODc0NDUyLCAzMzU1NDUxOSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDUyNCwgMTg4NzQ0NTcsIDMzNTU0NTI0LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NTI5LCAxODg3NDQ2MiwgMzM1NTQ1MjksIDAsIDAsIDI2Mzc3fSwKKyAgICB7MTY3NzczMTcsIDE3ODI1ODkxLCAxNjc3NzMxNywgMCwgMCwgMjYzNzd9LAorICAgIHsxNjc3NzMyMSwgMTg4NzQ0NzAsIDE2Nzc3MzIxLCAwLCAwLCAyNjQ5N30sCisgICAgezgsIDAsIDgsIDAsIDAsIDk5OTN9LAorICAgIHswLCAtOCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHszMzU1NDU0MSwgMTg4NzQ0NzQsIDMzNTU0NTQxLCAwLCAwLCAyNjM3N30sCisgICAgezUwMzMxNzYzLCAxOTkyMzA1NSwgNTAzMzE3NjMsIDAsIDAsIDI2Mzc3fSwKKyAgICB7NTAzMzE3NzAsIDE5OTIzMDYyLCA1MDMzMTc3MCwgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMTc3NywgMTk5MjMwNjksIDUwMzMxNzc3LCAwLCAwLCAyNjM3N30sCisgICAgezc0LCAwLCA3NCwgMCwgMCwgOTk5M30sCisgICAgezg2LCAwLCA4NiwgMCwgMCwgOTk5M30sCisgICAgezEwMCwgMCwgMTAwLCAwLCAwLCA5OTkzfSwKKyAgICB7MTI4LCAwLCAxMjgsIDAsIDAsIDk5OTN9LAorICAgIHsxMTIsIDAsIDExMiwgMCwgMCwgOTk5M30sCisgICAgezEyNiwgMCwgMTI2LCAwLCAwLCA5OTkzfSwKKyAgICB7MzM1NTQ1NjcsIDE4ODc0NTAwLCAxNjc3NzM1MywgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDU3MywgMTg4NzQ1MDYsIDE2Nzc3MzU5LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NTc5LCAxODg3NDUxMiwgMTY3NzczNjUsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ1ODUsIDE4ODc0NTE4LCAxNjc3NzM3MSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDU5MSwgMTg4NzQ1MjQsIDE2Nzc3Mzc3LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NTk3LCAxODg3NDUzMCwgMTY3NzczODMsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ2MDMsIDE4ODc0NTM2LCAxNjc3NzM4OSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDYwOSwgMTg4NzQ1NDIsIDE2Nzc3Mzk1LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NjE1LCAxODg3NDU0OCwgMTY3Nzc0MDEsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ2MjEsIDE4ODc0NTU0LCAxNjc3NzQwNywgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDYyNywgMTg4NzQ1NjAsIDE2Nzc3NDEzLCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NjMzLCAxODg3NDU2NiwgMTY3Nzc0MTksIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ2MzksIDE4ODc0NTcyLCAxNjc3NzQyNSwgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDY0NSwgMTg4NzQ1NzgsIDE2Nzc3NDMxLCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NjUxLCAxODg3NDU4NCwgMTY3Nzc0MzcsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ2NTcsIDE4ODc0NTkwLCAxNjc3NzQ0MywgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDY2MywgMTg4NzQ1OTYsIDE2Nzc3NDQ5LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NjY5LCAxODg3NDYwMiwgMTY3Nzc0NTUsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ2NzUsIDE4ODc0NjA4LCAxNjc3NzQ2MSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDY4MSwgMTg4NzQ2MTQsIDE2Nzc3NDY3LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0Njg3LCAxODg3NDYyMCwgMTY3Nzc0NzMsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ2OTMsIDE4ODc0NjI2LCAxNjc3NzQ3OSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDY5OSwgMTg4NzQ2MzIsIDE2Nzc3NDg1LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NzA1LCAxODg3NDYzOCwgMTY3Nzc0OTEsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ3MTEsIDE4ODc0NjQ0LCAxNjc3NzQ5NywgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDcxNywgMTg4NzQ2NTAsIDE2Nzc3NTAzLCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NzIzLCAxODg3NDY1NiwgMTY3Nzc1MDksIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ3MjksIDE4ODc0NjYyLCAxNjc3NzUxNSwgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDczNSwgMTg4NzQ2NjgsIDE2Nzc3NTIxLCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NzQxLCAxODg3NDY3NCwgMTY3Nzc1MjcsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ3NDcsIDE4ODc0NjgwLCAxNjc3NzUzMywgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDc1MywgMTg4NzQ2ODYsIDE2Nzc3NTM5LCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NzU5LCAxODg3NDY5MiwgMTY3Nzc1NDUsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ3NjUsIDE4ODc0Njk4LCAxNjc3NzU1MSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDc3MSwgMTg4NzQ3MDQsIDE2Nzc3NTU3LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0Nzc3LCAxODg3NDcxMCwgMTY3Nzc1NjMsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ3ODMsIDE4ODc0NzE2LCAxNjc3NzU2OSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDc4OSwgMTg4NzQ3MjIsIDE2Nzc3NTc1LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0Nzk1LCAxODg3NDcyOCwgMTY3Nzc1ODEsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ4MDEsIDE4ODc0NzM0LCAxNjc3NzU4NywgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDgwNywgMTg4NzQ3NDAsIDE2Nzc3NTkzLCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0ODEzLCAxODg3NDc0NiwgMTY3Nzc1OTksIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ4MTksIDE4ODc0NzUyLCAxNjc3NzYwNSwgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDgyNSwgMTg4NzQ3NTgsIDE2Nzc3NjExLCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0ODMxLCAxODg3NDc2NCwgMTY3Nzc2MTcsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ4MzcsIDE4ODc0NzcwLCAxNjc3NzYyMywgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDg0MywgMTg4NzQ3NzYsIDE2Nzc3NjI5LCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0ODQ5LCAxODg3NDc4MiwgMTY3Nzc2MzUsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ4NTUsIDE4ODc0Nzg4LCAzMzU1NDg1NywgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDg2MiwgMTg4NzQ3OTUsIDE2Nzc3NjQ4LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0ODY4LCAxODg3NDgwMSwgMzM1NTQ4NzAsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ4NzUsIDE4ODc0ODA4LCAzMzU1NDg3NSwgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMjA5NywgMTk5MjMzODksIDUwMzMyMTAwLCAwLCAwLCAyNjM3N30sCisgICAgezAsIC03NCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHszMzU1NDg5MCwgMTg4NzQ4MjMsIDE2Nzc3Njc2LCAwLCAwLCAyNjQzM30sCisgICAgezE2Nzc3Njc5LCAxNzgyNjI1MywgMTY3Nzc2NzksIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ4OTksIDE4ODc0ODMyLCAzMzU1NDkwMSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDkwNiwgMTg4NzQ4MzksIDE2Nzc3NjkyLCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0OTEyLCAxODg3NDg0NSwgMzM1NTQ5MTQsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ5MTksIDE4ODc0ODUyLCAzMzU1NDkxOSwgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMjE0MSwgMTk5MjM0MzMsIDUwMzMyMTQ0LCAwLCAwLCAyNjM3N30sCisgICAgezAsIC04NiwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHszMzU1NDkzNCwgMTg4NzQ4NjcsIDE2Nzc3NzIwLCAwLCAwLCAyNjQzM30sCisgICAgezUwMzMyMTU3LCAxOTkyMzQ0OSwgNTAzMzIxNTcsIDAsIDAsIDI2Mzc3fSwKKyAgICB7NTAzMzIxNjQsIDE5OTIzNDU2LCA1MDMzMjE2NCwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDk1NCwgMTg4NzQ4ODcsIDMzNTU0OTU0LCAwLCAwLCAyNjM3N30sCisgICAgezUwMzMyMTc2LCAxOTkyMzQ2OCwgNTAzMzIxNzYsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgLTEwMCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHs1MDMzMjE4MywgMTk5MjM0NzUsIDUwMzMyMTgzLCAwLCAwLCAyNjM3N30sCisgICAgezUwMzMyMTkwLCAxOTkyMzQ4MiwgNTAzMzIxOTAsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ5ODAsIDE4ODc0OTEzLCAzMzU1NDk4MCwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDk4NSwgMTg4NzQ5MTgsIDMzNTU0OTg1LCAwLCAwLCAyNjM3N30sCisgICAgezUwMzMyMjA3LCAxOTkyMzQ5OSwgNTAzMzIyMDcsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgLTExMiwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHszMzU1NDk5NywgMTg4NzQ5MzAsIDMzNTU0OTk5LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MDA0LCAxODg3NDkzNywgMTY3Nzc3OTAsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTUwMTAsIDE4ODc0OTQzLCAzMzU1NTAxMiwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NTAxNywgMTg4NzQ5NTAsIDMzNTU1MDE3LCAwLCAwLCAyNjM3N30sCisgICAgezUwMzMyMjM5LCAxOTkyMzUzMSwgNTAzMzIyNDIsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgLTEyOCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtMTI2LCAwLCAwLCAwLCAxMDExM30sCisgICAgezMzNTU1MDMyLCAxODg3NDk2NSwgMTY3Nzc4MTgsIDAsIDAsIDI2NDMzfSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMzA3Nn0sCisgICAgezAsIDAsIDAsIDAsIDQsIDMwNzZ9LAorICAgIHswLCAwLCAwLCAwLCA1LCAzMDc2fSwKKyAgICB7MCwgMCwgMCwgMCwgNiwgMzA3Nn0sCisgICAgezAsIDAsIDAsIDAsIDcsIDMwNzZ9LAorICAgIHswLCAwLCAwLCAwLCA4LCAzMDc2fSwKKyAgICB7MCwgMCwgMCwgMCwgOSwgMzA3Nn0sCisgICAgezAsIDAsIDAsIDAsIDAsIDE3OTJ9LAorICAgIHswLCAtNzUxNywgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtODM4MywgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtODI2MiwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAyOCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHstMjgsIDAsIC0yOCwgMCwgMCwgOTk5M30sCisgICAgezAsIDE2LCAwLCAwLCAwLCAxMjE2MH0sCisgICAgey0xNiwgMCwgLTE2LCAwLCAwLCAxMjA0MH0sCisgICAgezAsIDI2LCAwLCAwLCAwLCA5MzQ0fSwKKyAgICB7LTI2LCAwLCAtMjYsIDAsIDAsIDkyMjR9LAorICAgIHswLCAtMTA3NDMsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgLTM4MTQsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgLTEwNzI3LCAwLCAwLCAwLCAxMDExM30sCisgICAgey0xMDc5NSwgMCwgLTEwNzk1LCAwLCAwLCA5OTkzfSwKKyAgICB7LTEwNzkyLCAwLCAtMTA3OTIsIDAsIDAsIDk5OTN9LAorICAgIHswLCAtMTA3ODAsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgLTEwNzQ5LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIC0xMDc4MywgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtMTA3ODIsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgLTEwODE1LCAwLCAwLCAwLCAxMDExM30sCisgICAgey03MjY0LCAwLCAtNzI2NCwgMCwgMCwgOTk5M30sCisgICAgezAsIDAsIDAsIDAsIDAsIDUxMjF9LAorICAgIHswLCAwLCAwLCAwLCAwLCAzODQxfSwKKyAgICB7MCwgLTM1MzMyLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIC00MjI4MCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtNDIzMDgsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MzM1NTUwMzgsIDE4ODc0OTcxLCAzMzU1NTA0MCwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NTA0NSwgMTg4NzQ5NzgsIDMzNTU1MDQ3LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MDUyLCAxODg3NDk4NSwgMzM1NTUwNTQsIDAsIDAsIDI2Mzc3fSwKKyAgICB7NTAzMzIyNzYsIDE5OTIzNTY4LCA1MDMzMjI3OSwgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMjI4NiwgMTk5MjM1NzgsIDUwMzMyMjg5LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MDc5LCAxODg3NTAxMiwgMzM1NTUwODEsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTUwODYsIDE4ODc1MDE5LCAzMzU1NTA4OCwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NTA5MywgMTg4NzUwMjYsIDMzNTU1MDk1LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MTAwLCAxODg3NTAzMywgMzM1NTUxMDIsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTUxMDcsIDE4ODc1MDQwLCAzMzU1NTEwOSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NTExNCwgMTg4NzUwNDcsIDMzNTU1MTE2LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MTIxLCAxODg3NTA1NCwgMzM1NTUxMjMsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMTAyNX0sCisgICAgezAsIDAsIDAsIDAsIDAsIDU2MzN9LAorICAgIHswLCA0MCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHstNDAsIDAsIC00MCwgMCwgMCwgOTk5M30sCit9OworCisvKiBleHRlbmRlZCBjYXNlIG1hcHBpbmdzICovCisKK2NvbnN0IFB5X1VDUzQgX1B5VW5pY29kZV9FeHRlbmRlZENhc2VbXSA9IHsKKyAgICAxODEsCisgICAgOTU2LAorICAgIDkyNCwKKyAgICAyMjMsCisgICAgMTE1LAorICAgIDExNSwKKyAgICA4MywKKyAgICA4MywKKyAgICA4MywKKyAgICAxMTUsCisgICAgMTA1LAorICAgIDc3NSwKKyAgICAzMDQsCisgICAgMzI5LAorICAgIDcwMCwKKyAgICAxMTAsCisgICAgNzAwLAorICAgIDc4LAorICAgIDM4MywKKyAgICAxMTUsCisgICAgODMsCisgICAgNDk2LAorICAgIDEwNiwKKyAgICA3ODAsCisgICAgNzQsCisgICAgNzgwLAorICAgIDgzNywKKyAgICA5NTMsCisgICAgOTIxLAorICAgIDkxMiwKKyAgICA5NTMsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA5MjEsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA5NDQsCisgICAgOTY1LAorICAgIDc3NiwKKyAgICA3NjksCisgICAgOTMzLAorICAgIDc3NiwKKyAgICA3NjksCisgICAgOTYyLAorICAgIDk2MywKKyAgICA5MzEsCisgICAgOTc2LAorICAgIDk0NiwKKyAgICA5MTQsCisgICAgOTc3LAorICAgIDk1MiwKKyAgICA5MjAsCisgICAgOTgxLAorICAgIDk2NiwKKyAgICA5MzQsCisgICAgOTgyLAorICAgIDk2MCwKKyAgICA5MjgsCisgICAgMTAwOCwKKyAgICA5NTQsCisgICAgOTIyLAorICAgIDEwMDksCisgICAgOTYxLAorICAgIDkyOSwKKyAgICAxMDEzLAorICAgIDk0OSwKKyAgICA5MTcsCisgICAgMTQxNSwKKyAgICAxMzgxLAorICAgIDE0MTAsCisgICAgMTMzMywKKyAgICAxMzYyLAorICAgIDEzMzMsCisgICAgMTQxMCwKKyAgICA3ODMwLAorICAgIDEwNCwKKyAgICA4MTcsCisgICAgNzIsCisgICAgODE3LAorICAgIDc4MzEsCisgICAgMTE2LAorICAgIDc3NiwKKyAgICA4NCwKKyAgICA3NzYsCisgICAgNzgzMiwKKyAgICAxMTksCisgICAgNzc4LAorICAgIDg3LAorICAgIDc3OCwKKyAgICA3ODMzLAorICAgIDEyMSwKKyAgICA3NzgsCisgICAgODksCisgICAgNzc4LAorICAgIDc4MzQsCisgICAgOTcsCisgICAgNzAyLAorICAgIDY1LAorICAgIDcwMiwKKyAgICA3ODM1LAorICAgIDc3NzcsCisgICAgNzc3NiwKKyAgICAyMjMsCisgICAgMTE1LAorICAgIDExNSwKKyAgICA3ODM4LAorICAgIDgwMTYsCisgICAgOTY1LAorICAgIDc4NywKKyAgICA5MzMsCisgICAgNzg3LAorICAgIDgwMTgsCisgICAgOTY1LAorICAgIDc4NywKKyAgICA3NjgsCisgICAgOTMzLAorICAgIDc4NywKKyAgICA3NjgsCisgICAgODAyMCwKKyAgICA5NjUsCisgICAgNzg3LAorICAgIDc2OSwKKyAgICA5MzMsCisgICAgNzg3LAorICAgIDc2OSwKKyAgICA4MDIyLAorICAgIDk2NSwKKyAgICA3ODcsCisgICAgODM0LAorICAgIDkzMywKKyAgICA3ODcsCisgICAgODM0LAorICAgIDgwNjQsCisgICAgNzkzNiwKKyAgICA5NTMsCisgICAgNzk0NCwKKyAgICA5MjEsCisgICAgODA3MiwKKyAgICA4MDY1LAorICAgIDc5MzcsCisgICAgOTUzLAorICAgIDc5NDUsCisgICAgOTIxLAorICAgIDgwNzMsCisgICAgODA2NiwKKyAgICA3OTM4LAorICAgIDk1MywKKyAgICA3OTQ2LAorICAgIDkyMSwKKyAgICA4MDc0LAorICAgIDgwNjcsCisgICAgNzkzOSwKKyAgICA5NTMsCisgICAgNzk0NywKKyAgICA5MjEsCisgICAgODA3NSwKKyAgICA4MDY4LAorICAgIDc5NDAsCisgICAgOTUzLAorICAgIDc5NDgsCisgICAgOTIxLAorICAgIDgwNzYsCisgICAgODA2OSwKKyAgICA3OTQxLAorICAgIDk1MywKKyAgICA3OTQ5LAorICAgIDkyMSwKKyAgICA4MDc3LAorICAgIDgwNzAsCisgICAgNzk0MiwKKyAgICA5NTMsCisgICAgNzk1MCwKKyAgICA5MjEsCisgICAgODA3OCwKKyAgICA4MDcxLAorICAgIDc5NDMsCisgICAgOTUzLAorICAgIDc5NTEsCisgICAgOTIxLAorICAgIDgwNzksCisgICAgODA2NCwKKyAgICA3OTM2LAorICAgIDk1MywKKyAgICA3OTQ0LAorICAgIDkyMSwKKyAgICA4MDcyLAorICAgIDgwNjUsCisgICAgNzkzNywKKyAgICA5NTMsCisgICAgNzk0NSwKKyAgICA5MjEsCisgICAgODA3MywKKyAgICA4MDY2LAorICAgIDc5MzgsCisgICAgOTUzLAorICAgIDc5NDYsCisgICAgOTIxLAorICAgIDgwNzQsCisgICAgODA2NywKKyAgICA3OTM5LAorICAgIDk1MywKKyAgICA3OTQ3LAorICAgIDkyMSwKKyAgICA4MDc1LAorICAgIDgwNjgsCisgICAgNzk0MCwKKyAgICA5NTMsCisgICAgNzk0OCwKKyAgICA5MjEsCisgICAgODA3NiwKKyAgICA4MDY5LAorICAgIDc5NDEsCisgICAgOTUzLAorICAgIDc5NDksCisgICAgOTIxLAorICAgIDgwNzcsCisgICAgODA3MCwKKyAgICA3OTQyLAorICAgIDk1MywKKyAgICA3OTUwLAorICAgIDkyMSwKKyAgICA4MDc4LAorICAgIDgwNzEsCisgICAgNzk0MywKKyAgICA5NTMsCisgICAgNzk1MSwKKyAgICA5MjEsCisgICAgODA3OSwKKyAgICA4MDgwLAorICAgIDc5NjgsCisgICAgOTUzLAorICAgIDc5NzYsCisgICAgOTIxLAorICAgIDgwODgsCisgICAgODA4MSwKKyAgICA3OTY5LAorICAgIDk1MywKKyAgICA3OTc3LAorICAgIDkyMSwKKyAgICA4MDg5LAorICAgIDgwODIsCisgICAgNzk3MCwKKyAgICA5NTMsCisgICAgNzk3OCwKKyAgICA5MjEsCisgICAgODA5MCwKKyAgICA4MDgzLAorICAgIDc5NzEsCisgICAgOTUzLAorICAgIDc5NzksCisgICAgOTIxLAorICAgIDgwOTEsCisgICAgODA4NCwKKyAgICA3OTcyLAorICAgIDk1MywKKyAgICA3OTgwLAorICAgIDkyMSwKKyAgICA4MDkyLAorICAgIDgwODUsCisgICAgNzk3MywKKyAgICA5NTMsCisgICAgNzk4MSwKKyAgICA5MjEsCisgICAgODA5MywKKyAgICA4MDg2LAorICAgIDc5NzQsCisgICAgOTUzLAorICAgIDc5ODIsCisgICAgOTIxLAorICAgIDgwOTQsCisgICAgODA4NywKKyAgICA3OTc1LAorICAgIDk1MywKKyAgICA3OTgzLAorICAgIDkyMSwKKyAgICA4MDk1LAorICAgIDgwODAsCisgICAgNzk2OCwKKyAgICA5NTMsCisgICAgNzk3NiwKKyAgICA5MjEsCisgICAgODA4OCwKKyAgICA4MDgxLAorICAgIDc5NjksCisgICAgOTUzLAorICAgIDc5NzcsCisgICAgOTIxLAorICAgIDgwODksCisgICAgODA4MiwKKyAgICA3OTcwLAorICAgIDk1MywKKyAgICA3OTc4LAorICAgIDkyMSwKKyAgICA4MDkwLAorICAgIDgwODMsCisgICAgNzk3MSwKKyAgICA5NTMsCisgICAgNzk3OSwKKyAgICA5MjEsCisgICAgODA5MSwKKyAgICA4MDg0LAorICAgIDc5NzIsCisgICAgOTUzLAorICAgIDc5ODAsCisgICAgOTIxLAorICAgIDgwOTIsCisgICAgODA4NSwKKyAgICA3OTczLAorICAgIDk1MywKKyAgICA3OTgxLAorICAgIDkyMSwKKyAgICA4MDkzLAorICAgIDgwODYsCisgICAgNzk3NCwKKyAgICA5NTMsCisgICAgNzk4MiwKKyAgICA5MjEsCisgICAgODA5NCwKKyAgICA4MDg3LAorICAgIDc5NzUsCisgICAgOTUzLAorICAgIDc5ODMsCisgICAgOTIxLAorICAgIDgwOTUsCisgICAgODA5NiwKKyAgICA4MDMyLAorICAgIDk1MywKKyAgICA4MDQwLAorICAgIDkyMSwKKyAgICA4MTA0LAorICAgIDgwOTcsCisgICAgODAzMywKKyAgICA5NTMsCisgICAgODA0MSwKKyAgICA5MjEsCisgICAgODEwNSwKKyAgICA4MDk4LAorICAgIDgwMzQsCisgICAgOTUzLAorICAgIDgwNDIsCisgICAgOTIxLAorICAgIDgxMDYsCisgICAgODA5OSwKKyAgICA4MDM1LAorICAgIDk1MywKKyAgICA4MDQzLAorICAgIDkyMSwKKyAgICA4MTA3LAorICAgIDgxMDAsCisgICAgODAzNiwKKyAgICA5NTMsCisgICAgODA0NCwKKyAgICA5MjEsCisgICAgODEwOCwKKyAgICA4MTAxLAorICAgIDgwMzcsCisgICAgOTUzLAorICAgIDgwNDUsCisgICAgOTIxLAorICAgIDgxMDksCisgICAgODEwMiwKKyAgICA4MDM4LAorICAgIDk1MywKKyAgICA4MDQ2LAorICAgIDkyMSwKKyAgICA4MTEwLAorICAgIDgxMDMsCisgICAgODAzOSwKKyAgICA5NTMsCisgICAgODA0NywKKyAgICA5MjEsCisgICAgODExMSwKKyAgICA4MDk2LAorICAgIDgwMzIsCisgICAgOTUzLAorICAgIDgwNDAsCisgICAgOTIxLAorICAgIDgxMDQsCisgICAgODA5NywKKyAgICA4MDMzLAorICAgIDk1MywKKyAgICA4MDQxLAorICAgIDkyMSwKKyAgICA4MTA1LAorICAgIDgwOTgsCisgICAgODAzNCwKKyAgICA5NTMsCisgICAgODA0MiwKKyAgICA5MjEsCisgICAgODEwNiwKKyAgICA4MDk5LAorICAgIDgwMzUsCisgICAgOTUzLAorICAgIDgwNDMsCisgICAgOTIxLAorICAgIDgxMDcsCisgICAgODEwMCwKKyAgICA4MDM2LAorICAgIDk1MywKKyAgICA4MDQ0LAorICAgIDkyMSwKKyAgICA4MTA4LAorICAgIDgxMDEsCisgICAgODAzNywKKyAgICA5NTMsCisgICAgODA0NSwKKyAgICA5MjEsCisgICAgODEwOSwKKyAgICA4MTAyLAorICAgIDgwMzgsCisgICAgOTUzLAorICAgIDgwNDYsCisgICAgOTIxLAorICAgIDgxMTAsCisgICAgODEwMywKKyAgICA4MDM5LAorICAgIDk1MywKKyAgICA4MDQ3LAorICAgIDkyMSwKKyAgICA4MTExLAorICAgIDgxMTQsCisgICAgODA0OCwKKyAgICA5NTMsCisgICAgODEyMiwKKyAgICA5MjEsCisgICAgODEyMiwKKyAgICA4MzcsCisgICAgODExNSwKKyAgICA5NDUsCisgICAgOTUzLAorICAgIDkxMywKKyAgICA5MjEsCisgICAgODEyNCwKKyAgICA4MTE2LAorICAgIDk0MCwKKyAgICA5NTMsCisgICAgOTAyLAorICAgIDkyMSwKKyAgICA5MDIsCisgICAgODM3LAorICAgIDgxMTgsCisgICAgOTQ1LAorICAgIDgzNCwKKyAgICA5MTMsCisgICAgODM0LAorICAgIDgxMTksCisgICAgOTQ1LAorICAgIDgzNCwKKyAgICA5NTMsCisgICAgOTEzLAorICAgIDgzNCwKKyAgICA5MjEsCisgICAgOTEzLAorICAgIDgzNCwKKyAgICA4MzcsCisgICAgODExNSwKKyAgICA5NDUsCisgICAgOTUzLAorICAgIDkxMywKKyAgICA5MjEsCisgICAgODEyNCwKKyAgICA4MTI2LAorICAgIDk1MywKKyAgICA5MjEsCisgICAgODEzMCwKKyAgICA4MDUyLAorICAgIDk1MywKKyAgICA4MTM4LAorICAgIDkyMSwKKyAgICA4MTM4LAorICAgIDgzNywKKyAgICA4MTMxLAorICAgIDk1MSwKKyAgICA5NTMsCisgICAgOTE5LAorICAgIDkyMSwKKyAgICA4MTQwLAorICAgIDgxMzIsCisgICAgOTQyLAorICAgIDk1MywKKyAgICA5MDUsCisgICAgOTIxLAorICAgIDkwNSwKKyAgICA4MzcsCisgICAgODEzNCwKKyAgICA5NTEsCisgICAgODM0LAorICAgIDkxOSwKKyAgICA4MzQsCisgICAgODEzNSwKKyAgICA5NTEsCisgICAgODM0LAorICAgIDk1MywKKyAgICA5MTksCisgICAgODM0LAorICAgIDkyMSwKKyAgICA5MTksCisgICAgODM0LAorICAgIDgzNywKKyAgICA4MTMxLAorICAgIDk1MSwKKyAgICA5NTMsCisgICAgOTE5LAorICAgIDkyMSwKKyAgICA4MTQwLAorICAgIDgxNDYsCisgICAgOTUzLAorICAgIDc3NiwKKyAgICA3NjgsCisgICAgOTIxLAorICAgIDc3NiwKKyAgICA3NjgsCisgICAgODE0NywKKyAgICA5NTMsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA5MjEsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA4MTUwLAorICAgIDk1MywKKyAgICA4MzQsCisgICAgOTIxLAorICAgIDgzNCwKKyAgICA4MTUxLAorICAgIDk1MywKKyAgICA3NzYsCisgICAgODM0LAorICAgIDkyMSwKKyAgICA3NzYsCisgICAgODM0LAorICAgIDgxNjIsCisgICAgOTY1LAorICAgIDc3NiwKKyAgICA3NjgsCisgICAgOTMzLAorICAgIDc3NiwKKyAgICA3NjgsCisgICAgODE2MywKKyAgICA5NjUsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA5MzMsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA4MTY0LAorICAgIDk2MSwKKyAgICA3ODcsCisgICAgOTI5LAorICAgIDc4NywKKyAgICA4MTY2LAorICAgIDk2NSwKKyAgICA4MzQsCisgICAgOTMzLAorICAgIDgzNCwKKyAgICA4MTY3LAorICAgIDk2NSwKKyAgICA3NzYsCisgICAgODM0LAorICAgIDkzMywKKyAgICA3NzYsCisgICAgODM0LAorICAgIDgxNzgsCisgICAgODA2MCwKKyAgICA5NTMsCisgICAgODE4NiwKKyAgICA5MjEsCisgICAgODE4NiwKKyAgICA4MzcsCisgICAgODE3OSwKKyAgICA5NjksCisgICAgOTUzLAorICAgIDkzNywKKyAgICA5MjEsCisgICAgODE4OCwKKyAgICA4MTgwLAorICAgIDk3NCwKKyAgICA5NTMsCisgICAgOTExLAorICAgIDkyMSwKKyAgICA5MTEsCisgICAgODM3LAorICAgIDgxODIsCisgICAgOTY5LAorICAgIDgzNCwKKyAgICA5MzcsCisgICAgODM0LAorICAgIDgxODMsCisgICAgOTY5LAorICAgIDgzNCwKKyAgICA5NTMsCisgICAgOTM3LAorICAgIDgzNCwKKyAgICA5MjEsCisgICAgOTM3LAorICAgIDgzNCwKKyAgICA4MzcsCisgICAgODE3OSwKKyAgICA5NjksCisgICAgOTUzLAorICAgIDkzNywKKyAgICA5MjEsCisgICAgODE4OCwKKyAgICA2NDI1NiwKKyAgICAxMDIsCisgICAgMTAyLAorICAgIDcwLAorICAgIDcwLAorICAgIDcwLAorICAgIDEwMiwKKyAgICA2NDI1NywKKyAgICAxMDIsCisgICAgMTA1LAorICAgIDcwLAorICAgIDczLAorICAgIDcwLAorICAgIDEwNSwKKyAgICA2NDI1OCwKKyAgICAxMDIsCisgICAgMTA4LAorICAgIDcwLAorICAgIDc2LAorICAgIDcwLAorICAgIDEwOCwKKyAgICA2NDI1OSwKKyAgICAxMDIsCisgICAgMTAyLAorICAgIDEwNSwKKyAgICA3MCwKKyAgICA3MCwKKyAgICA3MywKKyAgICA3MCwKKyAgICAxMDIsCisgICAgMTA1LAorICAgIDY0MjYwLAorICAgIDEwMiwKKyAgICAxMDIsCisgICAgMTA4LAorICAgIDcwLAorICAgIDcwLAorICAgIDc2LAorICAgIDcwLAorICAgIDEwMiwKKyAgICAxMDgsCisgICAgNjQyNjEsCisgICAgMTE1LAorICAgIDExNiwKKyAgICA4MywKKyAgICA4NCwKKyAgICA4MywKKyAgICAxMTYsCisgICAgNjQyNjIsCisgICAgMTE1LAorICAgIDExNiwKKyAgICA4MywKKyAgICA4NCwKKyAgICA4MywKKyAgICAxMTYsCisgICAgNjQyNzUsCisgICAgMTM5NiwKKyAgICAxMzk4LAorICAgIDEzNDgsCisgICAgMTM1MCwKKyAgICAxMzQ4LAorICAgIDEzOTgsCisgICAgNjQyNzYsCisgICAgMTM5NiwKKyAgICAxMzgxLAorICAgIDEzNDgsCisgICAgMTMzMywKKyAgICAxMzQ4LAorICAgIDEzODEsCisgICAgNjQyNzcsCisgICAgMTM5NiwKKyAgICAxMzg3LAorICAgIDEzNDgsCisgICAgMTMzOSwKKyAgICAxMzQ4LAorICAgIDEzODcsCisgICAgNjQyNzgsCisgICAgMTQwNiwKKyAgICAxMzk4LAorICAgIDEzNTgsCisgICAgMTM1MCwKKyAgICAxMzU4LAorICAgIDEzOTgsCisgICAgNjQyNzksCisgICAgMTM5NiwKKyAgICAxMzg5LAorICAgIDEzNDgsCisgICAgMTM0MSwKKyAgICAxMzQ4LAorICAgIDEzODksCiB9OwogCiAvKiB0eXBlIGluZGV4ZXMgKi8KQEAgLTE5NSw3MiArMTAwMyw3MiBAQAogICAgIDIxLCAyMiwgMjMsIDI0LCAyNSwgMjYsIDI3LCAyOCwgMjksIDMwLCAzMSwgMzIsIDMzLCAzNCwgMzQsIDM1LCAzNiwgMzcsIAogICAgIDM4LCAzOSwgMzQsIDM0LCAzNCwgNDAsIDQxLCA0MiwgNDMsIDQ0LCA0NSwgNDYsIDQ3LCA0OCwgNDksIDUwLCA1MSwgNTIsIAogICAgIDUzLCA1NCwgNTUsIDU2LCA1NywgNTgsIDU5LCA2MCwgNjEsIDYyLCA2MywgNjQsIDY0LCA2NCwgNjUsIDY2LCA2NywgNjQsIAotICAgIDY0LCA2NCwgNjQsIDY4LCA2OSwgNjQsIDY0LCA2NCwgNjQsIDY0LCA2NCwgNzAsIDE3LCA3MSwgNzIsIDczLCA3NCwgNzUsIAotICAgIDc2LCA2NCwgNzcsIDc4LCA3OSwgODAsIDgxLCA4MiwgODMsIDY0LCA2NCwgODQsIDg1LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCA4NiwgMzQsIDM0LCAzNCwgMzQsIDM0LCA4NywgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDY0LCA2NCwgNjQsIDY4LCA2OSwgNjQsIDY0LCA2NCwgNjQsIDY0LCA2NCwgNzAsIDcxLCA3MiwgNzMsIDc0LCA3NSwgNzYsIAorICAgIDc3LCA2NCwgNzgsIDc5LCA4MCwgODEsIDgyLCA4MywgODQsIDY0LCA2NCwgODUsIDg2LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCA4NywgMzQsIDM0LCAzNCwgMzQsIDM0LCA4OCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgODgsIDg5LCA5MCwgOTEsIDM0LCAzNCwgMzQsIDkyLCAzNCwgMzQsIAotICAgIDM0LCA5MywgOTQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgOTUsIDM0LCAzNCwgMzQsIDk2LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgOTcsIDk4LCA5OSwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTAwLCAxMDEsIDM0LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTAyLCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDEwMywgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAxMDQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAxMDAsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMTAzLCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAxMDUsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAxMDYsIDEwNywgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAxMDgsIDEwOSwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAxMTAsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDExMSwgMzQsIDM0LCAxMTIsIDExMywgMTE0LCAxMTUsIDExNiwgMTE3LCAxMTgsIDExOSwgMTIwLCAKLSAgICAxMjEsIDEyMiwgMTIzLCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgODksIDkwLCA5MSwgOTIsIDM0LCAzNCwgMzQsIDkzLCAzNCwgMzQsIAorICAgIDM0LCA5NCwgOTUsIDM0LCAzNCwgMzQsIDM0LCAzNCwgOTYsIDM0LCAzNCwgMzQsIDk3LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgOTgsIDk5LCAxMDAsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDEwMSwgMTAyLCAzNCwgCisgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDEwMywgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCAzNCwgMzQsIDM0LCAxMDQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTA1LCAzNCwgMzQsIDM0LCAzNCwgCisgICAgMTAxLCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCAzNCwgMzQsIDEwNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTA2LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCisgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTA3LCAxMDgsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKKyAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTA5LCAxMTAsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTExLCAxMTIsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCisgICAgMzQsIDM0LCAzNCwgMTEzLCAzNCwgMzQsIDExNCwgMTE1LCAxMTYsIDExNywgMTE4LCAxMTksIDEyMCwgMTIxLCAxMjIsIAorICAgIDEyMywgMTI0LCAxMjUsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCi0gICAgMzQsIDEyNCwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI2LCAxMjcsIDEyOCwgCi0gICAgMTI5LCAxMzAsIDEzMSwgMTMyLCAzNCwgMTMzLCAxMzQsIDEzNSwgMTM2LCAxMzcsIDEzOCwgMTM5LCAxNDAsIDE0MSwgMTQyLCAKLSAgICAxNywgMTQzLCAxNDQsIDE0NSwgMTQ2LCAxNDcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE0OCwgMTcsIDE0OSwgMTcsIAotICAgIDE1MCwgMTcsIDE1MSwgMTcsIDE1MiwgMTcsIDE3LCAxNywgMTUzLCAxNywgMTcsIDE3LCAxNTQsIDE1NSwgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTU2LCAxNywgMTU3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTU4LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMzQsIDM0LCAzNCwgMzQsIDE1OSwgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE2MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgNjQsIDE2MSwgMTYyLCAxNjMsIDE2NCwgMTcsIDE2NSwgMTcsIDE2NiwgMTY3LCAxNjgsIDE2OSwgMTcwLCAxNzEsIAotICAgIDE3MiwgMTczLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNzQsIDE3NSwgMTc2LCAKLSAgICAxNzcsIDE3OCwgMTcsIDE3OSwgMTgwLCAxODEsIDE4MiwgMTgzLCAxODQsIDE4NSwgMTg2LCA2NSwgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxODcsIDE4OCwgMTg5LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCA4NiwgMTkwLCAzNCwgMTkxLCAKLSAgICAxOTIsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCisgICAgMzQsIDEyNiwgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI4LCAxMjksIDEzMCwgCisgICAgMTMxLCAxMzIsIDEzMywgMTM0LCAzNCwgMTM1LCAxMzYsIDEzNywgMTM4LCAxMzksIDE0MCwgMTQxLCAxNDIsIDE0MywgMTQ0LCAKKyAgICA3MSwgMTQ1LCAxNDYsIDE0NywgMTQ4LCAxNDksIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDE1MCwgNzEsIDE1MSwgMTUyLCAKKyAgICAxNTMsIDcxLCAxNTQsIDcxLCAxNTUsIDcxLCA3MSwgNzEsIDE1NiwgNzEsIDcxLCA3MSwgMTU3LCAxNTgsIDE1OSwgMTYwLCAKKyAgICA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAxNjEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE2MiwgNzEsIAorICAgIDE2MywgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAKKyAgICA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE2NCwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDM0LCAzNCwgMzQsIDM0LCAxNjUsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDE2NiwgMTY3LCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDE2OCwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNjQsIDE2OSwgMTcwLCAxNzEsIDE3MiwgNzEsIDE3MywgNzEsIDE3NCwgMTc1LCAxNzYsIDE3NywgMTc4LCAKKyAgICAxNzksIDE4MCwgMTgxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDE4MiwgMTgzLCA3MSwgNzEsIDE4NCwgCisgICAgMTg1LCAxODYsIDE4NywgMTg4LCA3MSwgMTg5LCAxOTAsIDE5MSwgMTkyLCAxOTMsIDE5NCwgMTk1LCAxOTYsIDY1LCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDE5NywgMTk4LCAKKyAgICAxOTksIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDg3LCAyMDAsIAorICAgIDM0LCAyMDEsIDIwMiwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE5MywgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAxOTQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKKyAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAyMDMsIDM0LCAzNCwgCisgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMjA0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE5NSwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKKyAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDIwNSwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTk2LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMjA2LCAzNCwgMzQsIDM0LCAKICAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKICAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKICAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKQEAgLTI2OCw4NjAgKzEwNzYsODYyIEBACiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAxOTcsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAyMDcsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKICAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDE5OCwgMzQsIDE5OSwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDM0LCAxOTMsIDM0LCAzNCwgMTk5LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAyMDAsIDE3LCAyMDEsIDIwMiwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMjAzLCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDIwMywgCisgICAgMzQsIDM0LCAzNCwgMzQsIDIwOCwgMzQsIDIwOSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAKKyAgICA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAKKyAgICA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAKKyAgICA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAKKyAgICA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAKKyAgICA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAKKyAgICA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCAKKyAgICA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDM0LCAyMDMsIDM0LCAzNCwgMjA5LCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIAorICAgIDcxLCA3MSwgNzEsIDcxLCAyMTAsIDcxLCAyMTEsIDIxMiwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgCisgICAgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDcxLCA3MSwgNzEsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMjEzLCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDIxMywgCiB9OwogCi1zdGF0aWMgdW5zaWduZWQgY2hhciBpbmRleDJbXSA9IHsKK3N0YXRpYyB1bnNpZ25lZCBzaG9ydCBpbmRleDJbXSA9IHsKICAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAyLCAzLCAzLCAzLCAzLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAzLCAzLCAzLCAyLCA0LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAxNiwgMTYsIDE2LCAxNiwgCi0gICAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgCi0gICAgMTYsIDE2LCAxNiwgMTYsIDUsIDUsIDUsIDUsIDE3LCA1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAKLSAgICAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDUsIDUsIAorICAgIDEsIDEsIDEsIDEsIDMsIDMsIDMsIDIsIDQsIDUsIDUsIDUsIDUsIDUsIDUsIDYsIDUsIDUsIDUsIDUsIDUsIDUsIDYsIDUsIAorICAgIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCA2LCA1LCA1LCA1LCA1LCA1LCA1LCAxNywgMTcsIDE3LCAxNywgCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCisgICAgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDUsIDYsIDE4LCA2LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKKyAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDUsIDUsIAogICAgIDUsIDUsIDEsIDEsIDEsIDEsIDEsIDEsIDMsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDIsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE5LCA1LCA1LCAKLSAgICAxLCA1LCA1LCA1LCA1LCAyMCwgMjEsIDUsIDIyLCA1LCAxNywgNSwgMjMsIDE5LCA1LCAyNCwgMjQsIDI0LCA1LCAxNiwgMTYsIAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIAotICAgIDE2LCAxNiwgMTYsIDUsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxOSwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgCi0gICAgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCA1LCAKLSAgICAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMjUsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI4LCAyOSwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMTksIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxOSwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDMwLCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAzMSwgMzIsIDMzLCAyNiwgMjcsIDI2LCAyNywgMzQsIDI2LCAKLSAgICAyNywgMzUsIDM1LCAyNiwgMjcsIDE5LCAzNiwgMzcsIDM4LCAyNiwgMjcsIDM1LCAzOSwgNDAsIDQxLCA0MiwgMjYsIDI3LCAKLSAgICA0MywgMTksIDQxLCA0NCwgNDUsIDQ2LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCA0NywgMjYsIDI3LCA0NywgMTksIDE5LCAKLSAgICAyNiwgMjcsIDQ3LCAyNiwgMjcsIDQ4LCA0OCwgMjYsIDI3LCAyNiwgMjcsIDQ5LCAyNiwgMjcsIDE5LCA1MCwgMjYsIDI3LCAKLSAgICAxOSwgNTEsIDUwLCA1MCwgNTAsIDUwLCA1MiwgNTMsIDU0LCA1MiwgNTMsIDU0LCA1MiwgNTMsIDU0LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgNTUsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDE5LCA1MiwgNTMsIDU0LCAKLSAgICAyNiwgMjcsIDU2LCA1NywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDU4LCAxOSwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgNTksIDI2LCAKLSAgICAyNywgNjAsIDYxLCA2MiwgNjIsIDI2LCAyNywgNjMsIDY0LCA2NSwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDY2LCA2NywgNjgsIDY5LCA3MCwgMTksIDcxLCA3MSwgMTksIDcyLCAxOSwgNzMsIDE5LCAxOSwgMTksIDE5LCAKLSAgICA3MSwgMTksIDE5LCA3NCwgMTksIDc1LCAxOSwgMTksIDc2LCA3NywgMTksIDc4LCAxOSwgMTksIDE5LCA3NywgMTksIDc5LCAKLSAgICA4MCwgMTksIDE5LCA4MSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDgyLCAxOSwgMTksIDgzLCAxOSwgMTksIDgzLCAKLSAgICAxOSwgMTksIDE5LCAxOSwgODMsIDg0LCA4NSwgODUsIDg2LCAxOSwgMTksIDE5LCAxOSwgMTksIDg3LCAxOSwgNTAsIDE5LCAKKyAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAyLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA2LCA1LCAyMCwgNSwgNSwgCisgICAgMjEsIDUsIDYsIDUsIDUsIDIyLCAyMywgNiwgMjQsIDUsIDI1LCA2LCAyNiwgMjAsIDUsIDI3LCAyNywgMjcsIDUsIDE3LCAKKyAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKKyAgICAxNywgMTcsIDE3LCAxNywgNSwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDI4LCAxOSwgMTksIDE5LCAxOSwgMTksIAogICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgNSwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1MCwgNSwgNTAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCisgICAgNSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDI5LCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMiwgMzMsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDIwLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzQsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzNSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzYsIDM3LCAzOCwgMzAsIDMxLCAzMCwgMzEsIDM5LCAKKyAgICAzMCwgMzEsIDQwLCA0MCwgMzAsIDMxLCAyMCwgNDEsIDQyLCA0MywgMzAsIDMxLCA0MCwgNDQsIDQ1LCA0NiwgNDcsIDMwLCAKKyAgICAzMSwgNDgsIDIwLCA0NiwgNDksIDUwLCA1MSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgNTIsIDMwLCAzMSwgNTIsIDIwLCAKKyAgICAyMCwgMzAsIDMxLCA1MiwgMzAsIDMxLCA1MywgNTMsIDMwLCAzMSwgMzAsIDMxLCA1NCwgMzAsIDMxLCAyMCwgNTUsIDMwLCAKKyAgICAzMSwgMjAsIDU2LCA1NSwgNTUsIDU1LCA1NSwgNTcsIDU4LCA1OSwgNTcsIDU4LCA1OSwgNTcsIDU4LCA1OSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDYwLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCA2MSwgNTcsIDU4LCAKKyAgICA1OSwgMzAsIDMxLCA2MiwgNjMsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCA2NCwgMjAsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDY1LCAKKyAgICAzMCwgMzEsIDY2LCA2NywgNjgsIDY4LCAzMCwgMzEsIDY5LCA3MCwgNzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCA3MiwgNzMsIDc0LCA3NSwgNzYsIDIwLCA3NywgNzcsIDIwLCA3OCwgMjAsIDc5LCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgNzcsIDIwLCAyMCwgODAsIDIwLCA4MSwgODIsIDIwLCA4MywgODQsIDIwLCA4NSwgMjAsIDIwLCAyMCwgODQsIDIwLCAKKyAgICA4NiwgODcsIDIwLCAyMCwgODgsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCA4OSwgMjAsIDIwLCA5MCwgMjAsIDIwLCAKKyAgICA5MCwgMjAsIDIwLCAyMCwgMjAsIDkwLCA5MSwgOTIsIDkyLCA5MywgMjAsIDIwLCAyMCwgMjAsIDIwLCA5NCwgMjAsIDU1LCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCAKKyAgICA5NiwgOTYsIDk2LCA5NiwgOTYsIDk2LCA5NiwgOTUsIDk1LCA2LCA2LCA2LCA2LCA5NiwgOTYsIDk2LCA5NiwgOTYsIDk2LCAKKyAgICA5NiwgOTYsIDk2LCA5NiwgOTYsIDk2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA5NSwgOTUsIAorICAgIDk1LCA5NSwgOTUsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDk2LCA2LCA5NiwgNiwgNiwgNiwgNiwgNiwgNiwgNiwgNiwgNiwgNiwgCisgICAgNiwgNiwgNiwgNiwgNiwgNiwgNiwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgOTcsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDMwLCAzMSwgMzAsIDMxLCA5NiwgNiwgMzAsIDMxLCAwLCAwLCAKKyAgICA5OCwgNTAsIDUwLCA1MCwgNSwgMCwgMCwgMCwgMCwgMCwgNiwgNiwgOTksIDI1LCAxMDAsIDEwMCwgMTAwLCAwLCAxMDEsIDAsIAorICAgIDEwMiwgMTAyLCAxMDMsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCisgICAgMTcsIDE3LCAxNywgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTA0LCAxMDUsIDEwNSwgMTA1LCAKKyAgICAxMDYsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCisgICAgMTA3LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDgsIDEwOSwgMTA5LCAxMTAsIDExMSwgMTEyLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTQsIDExNSwgMTE2LCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAxMTcsIDExOCwgMTE5LCAyMCwgCisgICAgMTIwLCAxMjEsIDUsIDMwLCAzMSwgMTIyLCAzMCwgMzEsIDIwLCA2NCwgNjQsIDY0LCAxMjMsIDEyMywgMTIzLCAxMjMsIAorICAgIDEyMywgMTIzLCAxMjMsIDEyMywgMTIzLCAxMjMsIDEyMywgMTIzLCAxMjMsIDEyMywgMTIzLCAxMjMsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCA4OCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMjYsIDI3LCAyNiwgMjcsIDUwLCA1LCAyNiwgMjcsIDAsIDAsIDg5LCAKLSAgICA0NSwgNDUsIDQ1LCA1LCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA5MCwgMTcsIDkxLCA5MSwgOTEsIDAsIDkyLCAwLCA5MywgOTMsIAotICAgIDE5LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIAotICAgIDAsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDk0LCA5NSwgOTUsIDk1LCAxOSwgMTgsIDE4LCAxOCwgCi0gICAgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCA5NiwgMTgsIDE4LCAxOCwgCi0gICAgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgOTcsIDk4LCA5OCwgOTksIDEwMCwgMTAxLCAxMDIsIDEwMiwgMTAyLCAxMDMsIAotICAgIDEwNCwgMTA1LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgCi0gICAgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxMDYsIDEwNywgMTA4LCAxOSwgMTA5LCAxMTAsIDUsIDI2LCAyNywgCi0gICAgMTExLCAyNiwgMjcsIDE5LCA1OCwgNTgsIDU4LCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAKLSAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIAotICAgIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIAotICAgIDE4LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgCi0gICAgMTA3LCAxMDcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICA1LCAxNywgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgCi0gICAgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgCi0gICAgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgCi0gICAgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDExMywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAxMTQsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIAotICAgIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAKLSAgICAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMCwgMCwgNTAsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAKLSAgICAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgCi0gICAgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIAotICAgIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxOSwgMCwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgNSwgMTcsIDUsIDE3LCAxNywgNSwgMTcsIDE3LCA1LCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNSwgNSwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMSwgMSwgMSwgMSwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCAwLCAwLCA1LCA1LCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgCi0gICAgNSwgNSwgNSwgNSwgNTAsIDUwLCAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNTAsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxLCA1LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1MCwgNTAsIDE3LCAxNywgNSwgCi0gICAgMTcsIDE3LCAxNywgMTcsIDUwLCA1MCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgNTAsIDUwLCA1MCwgCi0gICAgNSwgNSwgNTAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDEsIDUwLCAxNywgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCA1MCwgNTAsIDUsIDUsIDUsIDUsIDUwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAKLSAgICAxNywgMTcsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1MCwgMTcsIDE3LCAxNywgNTAsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDAsIDAsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAorICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAorICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMjQsIDEyNCwgMTI0LCAxMjQsIDEyNCwgMTI0LCAxMjQsIDEyNCwgMTI0LCAKKyAgICAxMjQsIDEyNCwgMTI0LCAxMjQsIDEyNCwgMTI0LCAxMjQsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCA1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDYsIDYsIDMwLCAzMSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDEyNSwgMzAsIDMxLCAzMCwgCisgICAgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAxMjYsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMCwgMCwgOTYsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDAsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKKyAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCisgICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjksIDAsIDUsIDUsIDAsIDAsIDAsIAorICAgIDAsIDUsIDAsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDUsIDI1LCA1LCAyNSwgMjUsIDUsIDI1LCAyNSwgCisgICAgNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIAorICAgIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDUsIDYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCA1LCAwLCAwLCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDk2LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNywgOCwgCisgICAgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDUsIDUsIDUsIDUsIDU1LCA1NSwgMjUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDUsIDU1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjEsIDUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDk2LCA5NiwgMjUsIDI1LCA1LCAyNSwgMjUsIDI1LCAyNSwgNTUsIDU1LCA3LCA4LCA5LCAxMCwgMTEsIAorICAgIDEyLCAxMywgMTQsIDE1LCAxNiwgNTUsIDU1LCA1NSwgNSwgNSwgNTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDAsIDIxLCA1NSwgMjUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgOCwgOSwgMTAsIAorICAgIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDk2LCA5NiwgNSwgNSwgNSwgNSwgOTYsIAorICAgIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDI1LCAyNSwgOTYsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDk2LCAyNSwgMjUsIDI1LCA5NiwgMjUsIDI1LCAyNSwgMjUsIDI1LCAwLCAwLCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDI1LCAKKyAgICAyNSwgMCwgMCwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDAsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMCwgMjUsIDI1LCAyNSwgMTgsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAxOCwgMjUsIDU1LCAxOCwgMTgsIDE4LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDE4LCAxOCwgMTgsIDE4LCAyNSwgMTgsIDE4LCA1NSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDUsIDUsIAorICAgIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCA1LCA5NiwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDI1LCAxOCwgMTgsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgMCwgMCwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIAorICAgIDU1LCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMjUsIDU1LCAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAyNSwgMCwgCisgICAgMCwgMTgsIDE4LCAwLCAwLCAxOCwgMTgsIDI1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIAorICAgIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgMjUsIDI1LCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgCisgICAgNTUsIDU1LCA1LCA1LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAyNSwgMjUsIDE4LCAwLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCA1NSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCAwLCA1NSwgNTUsIDAsIDU1LCA1NSwgMCwgMCwgMjUsIDAsIDE4LCAKKyAgICAxOCwgMTgsIDI1LCAyNSwgMCwgMCwgMCwgMCwgMjUsIDI1LCAwLCAwLCAyNSwgMjUsIDI1LCAwLCAwLCAwLCAyNSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA4LCA5LCAxMCwgCisgICAgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMjUsIDI1LCA1NSwgNTUsIDU1LCAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMjUsIDI1LCAxOCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCAKKyAgICA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDAsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMjUsIDU1LCAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDI1LCAyNSwgCisgICAgMTgsIDAsIDE4LCAxOCwgMjUsIDAsIDAsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA1NSwgNTUsIDI1LCAyNSwgMCwgMCwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDUsIDUsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1LCAxOCwgMTgsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDAsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAyNSwgNTUsIDE4LCAyNSwgMTgsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAwLCAwLCAxOCwgMTgsIDAsIDAsIDE4LCAxOCwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1LCAKKyAgICAxOCwgMCwgMCwgMCwgMCwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCAyNSwgMjUsIDAsIDAsIDcsIDgsIDksIDEwLCAxMSwgMTIsIAorICAgIDEzLCAxNCwgMTUsIDE2LCA1LCA1NSwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMjUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgMCwgMCwgMCwgNTUsIDU1LCAwLCA1NSwgMCwgNTUsIDU1LCAwLCAwLCAwLCA1NSwgNTUsIDAsIDAsIDAsIDU1LCA1NSwgCisgICAgNTUsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIAorICAgIDE4LCAxOCwgMjUsIDE4LCAxOCwgMCwgMCwgMCwgMTgsIDE4LCAxOCwgMCwgMTgsIDE4LCAxOCwgMjUsIDAsIDAsIDU1LCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgOCwgOSwgMTAsIAorICAgIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDI3LCAyNywgMjcsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDE4LCAxOCwgMTgsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCAwLCAwLCAwLCA1NSwgMjUsIDI1LCAyNSwgMTgsIDE4LCAxOCwgMTgsIDAsIDI1LCAyNSwgMjUsIDAsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNSwgMjUsIDAsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNTUsIDU1LCAyNSwgMjUsIDAsIDAsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgNSwgMCwgMCwgMTgsIDE4LCAwLCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMjUsIDU1LCAxOCwgMjUsIDE4LCAKKyAgICAxOCwgMTgsIDE4LCAxOCwgMCwgMjUsIDE4LCAxOCwgMCwgMTgsIDE4LCAyNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDE4LCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDAsIDU1LCA1NSwgMjUsIDI1LCAwLCAwLCA3LCA4LCA5LCAxMCwgCisgICAgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMCwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAxOCwgMTgsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgMCwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgMTgsIDE4LCAxOCwgMjUsIDI1LCAyNSwgMjUsIDAsIDE4LCAxOCwgMTgsIDAsIAorICAgIDE4LCAxOCwgMTgsIDI1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDU1LCA1NSwgMjUsIDI1LCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMjcsIDI3LCAyNywgCisgICAgMjcsIDI3LCAyNywgMCwgMCwgMCwgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMTgsIDE4LCAwLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgMCwgCisgICAgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDI1LCAwLCAwLCAwLCAwLCAxOCwgMTgsIDE4LCAyNSwgCisgICAgMjUsIDI1LCAwLCAyNSwgMCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMTgsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCA1NSwgMTMwLCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMCwgMCwgMCwgMCwgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgOTYsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNSwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDUsIDUsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgMCwgNTUsIDAsIDAsIDU1LCA1NSwgMCwgNTUsIAorICAgIDAsIDAsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDAsIDU1LCA1NSwgNTUsIDAsIDU1LCAwLCA1NSwgMCwgMCwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgMjUsIDU1LCAKKyAgICAxMzAsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDI1LCAyNSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgCisgICAgOTYsIDAsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDAsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAKKyAgICAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDI1LCAyNSwgNSwgNSwgNSwgNSwgNSwgNSwgNywgCisgICAgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKKyAgICA1LCAyNSwgNSwgMjUsIDUsIDI1LCA1LCA1LCA1LCA1LCAxOCwgMTgsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgMCwgMCwgMCwgMCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAxOCwgMjUsIDI1LCAyNSwgMjUsIDI1LCA1LCAyNSwgMjUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAwLCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDE4LCAxOCwgMjUsIDI1LCAyNSwgMjUsIDE4LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAxOCwgMjUsIDI1LCAxOCwgMTgsIDI1LCAyNSwgNTUsIDcsIDgsIDksIDEwLCAxMSwgCisgICAgMTIsIDEzLCAxNCwgMTUsIDE2LCA1LCA1LCA1LCA1LCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAxOCwgMTgsIDI1LCAKKyAgICAyNSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgMjUsIDU1LCAxOCwgMTgsIDE4LCA1NSwgNTUsIDE4LCAxOCwgMTgsIDE4LCAKKyAgICAxOCwgMTgsIDE4LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDI1LCAyNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAxOCwgMTgsIDI1LCAyNSwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMjUsIDU1LCAKKyAgICAxOCwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDE4LCAxOCwgMTgsIDI1LCA1LCA1LCAxMzEsIDEzMSwgCisgICAgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIAorICAgIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAKKyAgICAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMTMxLCAxMzEsIDEzMSwgMCwgMTMxLCAwLCAwLCAwLCAwLCAwLCAxMzEsIDAsIDAsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1LCA5NiwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMCwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDI1LCAyNSwgMjUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDEzMiwgMTMzLCAxMzQsIDEzNSwgMTM2LCAxMzcsIDEzOCwgMTM5LCAxNDAsIDI3LCAKKyAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDUsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMiwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1LCA1LCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1LCA1LCA1LCAxNDEsIDE0MSwgMTQxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAKKyAgICAyNSwgMjUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCAKKyAgICA1NSwgNTUsIDAsIDI1LCAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgMTgsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDI1LCAxOCwgMTgsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNSwgNSwgNSwgOTYsIDUsIDUsIDUsIDUsIDU1LCAyNSwgMCwgMCwgNywgCisgICAgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDAsIDAsIDAsIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICAyNSwgMjUsIDI1LCAyLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA5NiwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDU1LCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAyNSwgMjUsIDI1LCAKKyAgICAxOCwgMTgsIDE4LCAxOCwgMjUsIDI1LCAxOCwgMTgsIDE4LCAwLCAwLCAwLCAwLCAxOCwgMTgsIDI1LCAxOCwgMTgsIDE4LCAKKyAgICAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAwLCAwLCAwLCAwLCA1LCAwLCAwLCAwLCA1LCA1LCA3LCA4LCA5LCAxMCwgMTEsIAorICAgIDEyLCAxMywgMTQsIDE1LCAxNiwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIAorICAgIDE4LCAxOCwgMTgsIDE4LCAxOCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDE4LCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDEzMiwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDE4LCAxOCwgMTgsIDAsIDAsIDUsIDUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMTgsIDI1LCAxOCwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDI1LCAxOCwgMjUsIDE4LCAxOCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMCwgMCwgMjUsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA4LCA5LCAKKyAgICAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgOTYsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1LCAyNSwgMjUsIDI1LCAxOCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMTgsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMTgsIDI1LCAKKyAgICAxOCwgMTgsIDE4LCAxOCwgMTgsIDI1LCAxOCwgMTgsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAKKyAgICA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgMCwgMCwgMCwgMjUsIDI1LCAxOCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgMTgsIDI1LCAyNSwgMjUsIDI1LCAxOCwgMTgsIDI1LCAyNSwgMTgsIDI1LCAxOCwgMTgsIDU1LCA1NSwgNywgOCwgOSwgCisgICAgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDE4LCAyNSwgCisgICAgMjUsIDE4LCAxOCwgMTgsIDI1LCAxOCwgMjUsIDI1LCAyNSwgMTgsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCAKKyAgICA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMTgsIAorICAgIDE4LCAyNSwgMjUsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAKKyAgICAwLCAwLCAwLCA1NSwgNTUsIDU1LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgOTYsIDk2LCA5NiwgOTYsIDk2LCA5NiwgNSwgNSwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDUwLCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1MCwgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDUsIDUsIDYsIAotICAgIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMTcsIDE3LCAxNywgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICAwLCAwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIAotICAgIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAxNywgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAKLSAgICAxNywgMTcsIDAsIDAsIDE3LCAxNywgMTcsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNywgMCwgMCwgMCwgMCwgNTAsIAotICAgIDUwLCAwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUwLCAKLSAgICA1MCwgNSwgNSwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgMCwgNTAsIDUwLCAwLCA1MCwgNTAsIDAsIDAsIDE3LCAwLCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDAsIDAsIDAsIDAsIDE3LCAxNywgMCwgMCwgMTcsIDE3LCAxNywgMCwgMCwgMCwgMTcsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNiwgNywgOCwgOSwgMTAsIAotICAgIDExLCAxMiwgMTMsIDE0LCAxNSwgMTcsIDE3LCA1MCwgNTAsIDUwLCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTcsIDE3LCAxNywgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgMCwgMCwgMTcsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDE3LCAxNywgMTcsIDAsIAotICAgIDE3LCAxNywgMTcsIDAsIDAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgCi0gICAgNTAsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgNSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgMCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDE3LCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDAsIDAsIDE3LCAxNywgMCwgMCwgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAKLSAgICAwLCAwLCAwLCAwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgCi0gICAgMTMsIDE0LCAxNSwgNSwgNTAsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDE3LCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDAsIDAsIDAsIDUwLCA1MCwgMCwgNTAsIDAsIDUwLCA1MCwgMCwgMCwgMCwgNTAsIDUwLCAwLCAwLCAwLCA1MCwgNTAsIAotICAgIDUwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDAsIDE3LCAxNywgMTcsIDAsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCA1MCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYsIDcsIDgsIDksIAotICAgIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDI0LCAyNCwgMjQsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDE3LCAxNywgMTcsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDE3LCAxNywgMTcsIDAsIAotICAgIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNywgMTcsIDAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNTAsIDUwLCAxNywgMTcsIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1LCAwLCAwLCAxNywgMTcsIDAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAxNywgNTAsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAwLCAxNywgMTcsIDE3LCAwLCAxNywgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgMCwgNTAsIDUwLCAxNywgMTcsIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAKLSAgICAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTcsIDE3LCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgMCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAxNywgMTcsIDE3LCAwLCAxNywgCi0gICAgMTcsIDE3LCAxNywgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgCi0gICAgNTAsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMCwgMCwgMCwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMTcsIDE3LCAwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgMCwgMCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDE3LCAwLCAwLCAwLCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAwLCAxNywgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNywgMTcsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCA1MCwgMTE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgNSwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgNSwgNSwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCAwLCA1MCwgMCwgMCwgNTAsIDUwLCAwLCA1MCwgMCwgMCwgCi0gICAgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgNTAsIDAsIDUwLCAwLCAwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCAxNywgNTAsIDExNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMCwgMTcsIDE3LCA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgCi0gICAgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgCi0gICAgMCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCA2LCA3LCA4LCAKLSAgICA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgNSwgMTcsIAotICAgIDUsIDE3LCA1LCAxNywgNSwgNSwgNSwgNSwgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIAotICAgIDAsIDAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgNSwgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDI1LCAyNSwgMjUsIDUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAxOCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDE4LCAxOCwgMjUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCAKKyAgICA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCAKKyAgICA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCAKKyAgICA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgOTUsIDE0MiwgMjAsIDIwLCAyMCwgMTQzLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIAorICAgIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIAorICAgIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNSwgMjUsIDI1LCAyNSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMTQ0LCAKKyAgICAxNDUsIDE0NiwgMTQ3LCAxNDgsIDE0OSwgMjAsIDIwLCAxNTAsIDIwLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAxNTEsIDE1MSwgCisgICAgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUyLCAxNTIsIDE1MiwgMTUyLCAxNTIsIDE1MiwgMTUyLCAxNTIsIAorICAgIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDAsIDAsIDE1MiwgMTUyLCAxNTIsIDE1MiwgMTUyLCAxNTIsIDAsIDAsIAorICAgIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTIsIDE1MiwgMTUyLCAxNTIsIDE1MiwgMTUyLCAKKyAgICAxNTIsIDE1MiwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MiwgMTUyLCAxNTIsIDE1MiwgCisgICAgMTUyLCAxNTIsIDE1MiwgMTUyLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAwLCAwLCAxNTIsIDE1MiwgMTUyLCAKKyAgICAxNTIsIDE1MiwgMTUyLCAwLCAwLCAxNTMsIDE1MSwgMTU0LCAxNTEsIDE1NSwgMTUxLCAxNTYsIDE1MSwgMCwgMTUyLCAwLCAKKyAgICAxNTIsIDAsIDE1MiwgMCwgMTUyLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUyLCAxNTIsIAorICAgIDE1MiwgMTUyLCAxNTIsIDE1MiwgMTUyLCAxNTIsIDE1NywgMTU3LCAxNTgsIDE1OCwgMTU4LCAxNTgsIDE1OSwgMTU5LCAKKyAgICAxNjAsIDE2MCwgMTYxLCAxNjEsIDE2MiwgMTYyLCAwLCAwLCAxNjMsIDE2NCwgMTY1LCAxNjYsIDE2NywgMTY4LCAxNjksIAorICAgIDE3MCwgMTcxLCAxNzIsIDE3MywgMTc0LCAxNzUsIDE3NiwgMTc3LCAxNzgsIDE3OSwgMTgwLCAxODEsIDE4MiwgMTgzLCAKKyAgICAxODQsIDE4NSwgMTg2LCAxODcsIDE4OCwgMTg5LCAxOTAsIDE5MSwgMTkyLCAxOTMsIDE5NCwgMTk1LCAxOTYsIDE5NywgCisgICAgMTk4LCAxOTksIDIwMCwgMjAxLCAyMDIsIDIwMywgMjA0LCAyMDUsIDIwNiwgMjA3LCAyMDgsIDIwOSwgMjEwLCAxNTEsIAorICAgIDE1MSwgMjExLCAyMTIsIDIxMywgMCwgMjE0LCAyMTUsIDE1MiwgMTUyLCAyMTYsIDIxNiwgMjE3LCA2LCAyMTgsIDYsIDYsIAorICAgIDYsIDIxOSwgMjIwLCAyMjEsIDAsIDIyMiwgMjIzLCAyMjQsIDIyNCwgMjI0LCAyMjQsIDIyNSwgNiwgNiwgNiwgMTUxLCAKKyAgICAxNTEsIDIyNiwgMjI3LCAwLCAwLCAyMjgsIDIyOSwgMTUyLCAxNTIsIDIzMCwgMjMwLCAwLCA2LCA2LCA2LCAxNTEsIDE1MSwgCisgICAgMjMxLCAyMzIsIDIzMywgMTE5LCAyMzQsIDIzNSwgMTUyLCAxNTIsIDIzNiwgMjM2LCAxMjIsIDYsIDYsIDYsIDAsIDAsIAorICAgIDIzNywgMjM4LCAyMzksIDAsIDI0MCwgMjQxLCAyNDIsIDI0MiwgMjQzLCAyNDMsIDI0NCwgNiwgNiwgMCwgMiwgMiwgMiwgMiwgCisgICAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMjEsIDIxLCAyMSwgMjEsIDIxLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA2LCA2LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA2LCA1LCA1LCA2LCAzLCAzLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE4LCAxOCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTgsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDIsIDIxLCAKKyAgICAyMSwgMjEsIDIxLCAyMSwgMCwgMCwgMCwgMCwgMCwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjQ1LCA5NSwgMCwgMCwgCisgICAgMjQ2LCAyNDcsIDI0OCwgMjQ5LCAyNTAsIDI1MSwgNSwgNSwgNSwgNSwgNSwgOTUsIDI0NSwgMjYsIDIyLCAyMywgMjQ2LCAKKyAgICAyNDcsIDI0OCwgMjQ5LCAyNTAsIDI1MSwgNSwgNSwgNSwgNSwgNSwgMCwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIAorICAgIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgCi0gICAgMTQsIDE1LCA1LCA1LCA1LCA1LCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDE3LCAxNywgMTcsIDUwLCAxNywgMTcsIDE3LCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUwLCAxNywgNiwgNywgOCwgCi0gICAgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAKLSAgICAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgCi0gICAgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIAotICAgIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNSwgNTAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCAKLSAgICAwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAxNywgMTcsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCAxMTksIDEyMCwgMTIxLCAxMjIsIDEyMywgMTI0LCAxMjUsIDEyNiwgMTI3LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDIsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgMCwgMCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNSwgNSwgNSwgMTI4LCAxMjgsIDEyOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCA1LCA1LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCAwLCAxNywgMTcsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxLCAxLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCA1LCA1LCA1LCA1MCwgNSwgNSwgNSwgNSwgNTAsIDE3LCAwLCAwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAKLSAgICAxMywgMTQsIDE1LCAwLCAwLCAwLCAwLCAwLCAwLCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDE3LCAxNywgMiwgMCwgNiwgNywgCi0gICAgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMTcsIDUwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAwLCAwLCAwLCAwLCA1LCAwLCAwLCAwLCA1LCA1LCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAKLSAgICAxMywgMTQsIDE1LCAxMTksIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDE3LCA2LCA3LCA4LCA5LCAxMCwgMTEsIAotICAgIDEyLCAxMywgMTQsIDE1LCAwLCAwLCAwLCAwLCAwLCAwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAKLSAgICAxNCwgMTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDE3LCAxNywgMTcsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAwLCA1MCwgNTAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIAotICAgIDUsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDYsIDcsIDgsIDksIAotICAgIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3LCAxNywgMTcsIDUsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDUwLCA1MCwgNTAsIDUwLCAxNywgNTAsIDUwLCA1MCwgNTAsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCA1MCwgMTI5LCAKLSAgICAxOSwgMTksIDE5LCAxMzAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxOSwgMTksIDE5LCAxOSwgMTksIDEzMSwgMTksIDE5LCAxMzIsIAotICAgIDE5LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTM0LCAKLSAgICAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDAsIDAsIAotICAgIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDAsIDAsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgCi0gICAgMTMzLCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIAotICAgIDEzMywgMTMzLCAxMzMsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzMsIDEzMywgMTMzLCAKLSAgICAxMzMsIDEzMywgMTMzLCAwLCAwLCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAwLCAwLCAxOSwgMTMzLCAxOSwgCi0gICAgMTMzLCAxOSwgMTMzLCAxOSwgMTMzLCAwLCAxMzQsIDAsIDEzNCwgMCwgMTM0LCAwLCAxMzQsIDEzMywgMTMzLCAxMzMsIAotICAgIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM1LCAKLSAgICAxMzUsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM3LCAxMzcsIDEzOCwgMTM4LCAxMzksIDEzOSwgMTQwLCAxNDAsIDAsIDAsIAotICAgIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDE0MSwgMTQxLCAxNDEsIDE0MSwgCi0gICAgMTQxLCAxNDEsIDE0MSwgMTQxLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTQxLCAxNDEsIAotICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDEzMywgMTMzLCAxOSwgMTQyLCAxOSwgMCwgMTksIDE5LCAxMzQsIDEzNCwgCi0gICAgMTQzLCAxNDMsIDE0NCwgNSwgMTQ1LCA1LCA1LCA1LCAxOSwgMTQyLCAxOSwgMCwgMTksIDE5LCAxNDYsIDE0NiwgMTQ2LCAKLSAgICAxNDYsIDE0NCwgNSwgNSwgNSwgMTMzLCAxMzMsIDE5LCAxOSwgMCwgMCwgMTksIDE5LCAxMzQsIDEzNCwgMTQ3LCAxNDcsIDAsIAotICAgIDUsIDUsIDUsIDEzMywgMTMzLCAxOSwgMTksIDE5LCAxMDgsIDE5LCAxOSwgMTM0LCAxMzQsIDE0OCwgMTQ4LCAxMTEsIDUsIAotICAgIDUsIDUsIDAsIDAsIDE5LCAxNDIsIDE5LCAwLCAxOSwgMTksIDE0OSwgMTQ5LCAxNTAsIDE1MCwgMTQ0LCA1LCA1LCAwLCAyLCAKLSAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxLCAxLCAxLCAxLCAxLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAzLCAzLCAxLCAxLCAxLCAxLCAxLCAyLCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAxNywgMTcsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxNTEsIDUwLCAwLCAwLCAxNTIsIDE1MywgCi0gICAgMTU0LCAxNTUsIDE1NiwgMTU3LCA1LCA1LCA1LCA1LCA1LCA1MCwgMTUxLCAyMywgMjAsIDIxLCAxNTIsIDE1MywgMTU0LCAKLSAgICAxNTUsIDE1NiwgMTU3LCA1LCA1LCA1LCA1LCA1LCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDUsIDUsIDUsIDUsIDE3LCA1LCA1LCA1LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCAxMDIsIDUsIDUsIDUsIDUsIDEwMiwgCi0gICAgNSwgNSwgMTksIDEwMiwgMTAyLCAxMDIsIDE5LCAxOSwgMTAyLCAxMDIsIDEwMiwgMTksIDUsIDEwMiwgNSwgNSwgMTU4LCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgNSwgNSwgNSwgNSwgNSwgNSwgMTAyLCA1LCAxNTksIDUsIDEwMiwgNSwgMTYwLCAKLSAgICAxNjEsIDEwMiwgMTAyLCAxNTgsIDE5LCAxMDIsIDEwMiwgMTYyLCAxMDIsIDE5LCA1MCwgNTAsIDUwLCA1MCwgMTksIDUsIDUsIAotICAgIDE5LCAxOSwgMTAyLCAxMDIsIDUsIDUsIDUsIDUsIDUsIDEwMiwgMTksIDE5LCAxOSwgMTksIDUsIDUsIDUsIDUsIDE2MywgNSwgCi0gICAgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDE2NCwgMTY0LCAKLSAgICAxNjQsIDE2NCwgMTY0LCAxNjQsIDE2NCwgMTY0LCAxNjQsIDE2NCwgMTY0LCAxNjQsIDE2NCwgMTY0LCAxNjQsIDE2NCwgCi0gICAgMTY1LCAxNjUsIDE2NSwgMTY1LCAxNjUsIDE2NSwgMTY1LCAxNjUsIDE2NSwgMTY1LCAxNjUsIDE2NSwgMTY1LCAxNjUsIAotICAgIDE2NSwgMTY1LCAxMjgsIDEyOCwgMTI4LCAyNiwgMjcsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMjQsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCA2LCA2LCA2LCA2LCAyNSwgNiwgNiwgNiwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgMTEzLCA1LCA1LCAKKyAgICA1LCA1LCAxMTMsIDUsIDUsIDIwLCAxMTMsIDExMywgMTEzLCAyMCwgMjAsIDExMywgMTEzLCAxMTMsIDIwLCA1LCAxMTMsIDUsIAorICAgIDUsIDI1MiwgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDUsIDUsIDUsIDUsIDUsIDUsIDExMywgNSwgMjUzLCA1LCAxMTMsIAorICAgIDUsIDI1NCwgMjU1LCAxMTMsIDExMywgMjUyLCAyMCwgMTEzLCAxMTMsIDI1NiwgMTEzLCAyMCwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDIwLCA1LCA1LCAyMCwgMjAsIDExMywgMTEzLCA1LCA1LCA1LCA1LCA1LCAxMTMsIDIwLCAyMCwgMjAsIDIwLCA1LCA1LCA1LCAKKyAgICA1LCAyNTcsIDUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAorICAgIDI3LCAyNTgsIDI1OCwgMjU4LCAyNTgsIDI1OCwgMjU4LCAyNTgsIDI1OCwgMjU4LCAyNTgsIDI1OCwgMjU4LCAyNTgsIDI1OCwgCisgICAgMjU4LCAyNTgsIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIAorICAgIDI1OSwgMjU5LCAyNTksIDI1OSwgMTQxLCAxNDEsIDE0MSwgMzAsIDMxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDI3LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKQEAgLTExMzUsNjMyICsxOTQ1LDY4NCBAQAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIzLCAyMCwgMjEsIDE1MiwgMTUzLCAxNTQsIDE1NSwgMTU2LCAxNTcsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjMsIDIwLCAyMSwgMTUyLCAxNTMsIDE1NCwgMTU1LCAKLSAgICAxNTYsIDE1NywgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyMywgMjAsIDIxLCAxNTIsIAotICAgIDE1MywgMTU0LCAxNTUsIDE1NiwgMTU3LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDUsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAKLSAgICAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjcsIDE2NywgCi0gICAgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIAotICAgIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTUxLCAyNCwgMjQsIDI0LCAyNCwgCi0gICAgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjMsIDIwLCAyMSwgMTUyLCAxNTMsIDE1NCwgMTU1LCAxNTYsIDE1NywgMjQsIAotICAgIDE1MSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjYsIDIyLCAyMywgMjQ2LCAyNDcsIDI0OCwgMjQ5LCAyNTAsIAorICAgIDI1MSwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNiwgMjIsIDIzLCAyNDYsIDI0NywgCisgICAgMjQ4LCAyNDksIDI1MCwgMjUxLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI2LCAyMiwgCisgICAgMjMsIDI0NiwgMjQ3LCAyNDgsIDI0OSwgMjUwLCAyNTEsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKKyAgICAyNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAKKyAgICAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MSwgCisgICAgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIAorICAgIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNjEsIDI2MSwgMjYxLCAyNDUsIDI3LCAyNywgMjcsIAorICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNiwgMjIsIDIzLCAyNDYsIDI0NywgMjQ4LCAyNDksIDI1MCwgMjUxLCAyNywgCisgICAgMjQ1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyMywgCi0gICAgMjAsIDIxLCAxNTIsIDE1MywgMTU0LCAxNTUsIDE1NiwgMTU3LCAyNCwgMjMsIDIwLCAyMSwgMTUyLCAxNTMsIDE1NCwgMTU1LCAKLSAgICAxNTYsIDE1NywgMjQsIDIzLCAyMCwgMjEsIDE1MiwgMTUzLCAxNTQsIDE1NSwgMTU2LCAxNTcsIDI0LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNiwgCisgICAgMjIsIDIzLCAyNDYsIDI0NywgMjQ4LCAyNDksIDI1MCwgMjUxLCAyNywgMjYsIDIyLCAyMywgMjQ2LCAyNDcsIDI0OCwgMjQ5LCAKKyAgICAyNTAsIDI1MSwgMjcsIDI2LCAyMiwgMjMsIDI0NiwgMjQ3LCAyNDgsIDI0OSwgMjUwLCAyNTEsIDI3LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCAwLCA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIAotICAgIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAKLSAgICAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMCwgCi0gICAgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIAotICAgIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAKLSAgICAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgCi0gICAgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDAsIDI2LCAyNywgMTY4LCAxNjksIDE3MCwgMTcxLCAxNzIsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDE3MywgMTc0LCAxNzUsIDE3NiwgMTksIDI2LCAyNywgMTksIDI2LCAyNywgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgNTAsIDE3NywgMTc3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgCi0gICAgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgCi0gICAgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgCi0gICAgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgCi0gICAgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgCi0gICAgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMTksIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDI2LCAyNywgMjYsIDI3LCAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCAyNCwgCi0gICAgNSwgNSwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAKLSAgICAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgCi0gICAgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgODksIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIAotICAgIDAsIDAsIDIsIDUsIDUsIDUsIDUsIDUwLCA1MCwgMTI4LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDUwLCA1MCwgNSwgNSwgNSwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCAwLCAwLCAxNywgMTcsIDUsIDUsIDUwLCA1MCwgNTAsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1LCA1LCAyNCwgMjQsIDI0LCAyNCwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgCi0gICAgMjQsIDI0LCAyNCwgMjQsIDI0LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIAotICAgIDI0LCAyNCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTc5LCA1MCwgNTAsIDE3OSwgCi0gICAgNTAsIDUwLCA1MCwgMTc5LCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDE3OSwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgCi0gICAgNTAsIDE3OSwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCAxNzksIAotICAgIDE3OSwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgMTc5LCAxNzksIDE3OSwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDE3OSwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCAxNzksIDE3OSwgNTAsIDE3OSwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDAsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAorICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKKyAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCisgICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAwLCAzMCwgMzEsIDI2MiwgMjYzLCAKKyAgICAyNjQsIDI2NSwgMjY2LCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAyNjcsIDI2OCwgMjY5LCAyNzAsIDIwLCAzMCwgMzEsIAorICAgIDIwLCAzMCwgMzEsIDIwLCAyMCwgMjAsIDIwLCAyMCwgOTUsIDk1LCAyNzEsIDI3MSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDIwLCA1LCA1LCA1LCA1LCA1LCA1LCAzMCwgMzEsIDMwLCAzMSwgMjUsIDI1LCAyNSwgMzAsIDMxLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCAyNywgNSwgNSwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAKKyAgICAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgCisgICAgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIDI3MiwgMjcyLCAyNzIsIAorICAgIDI3MiwgMjcyLCAyNzIsIDAsIDI3MiwgMCwgMCwgMCwgMCwgMCwgMjcyLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDk2LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjczLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAKLSAgICA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCA1MCwgMTcsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDE3LCAxNywgNSwgNTAsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDE3LCAxNywgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxOSwgMTksIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgNTAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMjYsIDI3LCAyNiwgMjcsIDE4MCwgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDUwLCA1LCA1LCAyNiwgMjcsIDE4MSwgMTksIDAsIDI2LCAyNywgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDUwLCA1MCwgCi0gICAgNTAsIDE3LCA1MCwgNTAsIDUwLCA1MCwgMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCA1LCAKLSAgICA1LCA1LCAwLCAwLCAwLCAwLCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgNSwgCi0gICAgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgCi0gICAgMTMsIDE0LCAxNSwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgNSwgNTAsIDAsIDAsIDAsIAotICAgIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1MCwgCi0gICAgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgMCwgMCwgMCwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgMCwgNSwgNSwgCi0gICAgNSwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1LCA1LCA1LCA1MCwgMTcsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCA1MCwgMTcsIDE3LCAxNywgNTAsIDUwLCAxNywgMTcsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMTcsIDE3LCA1MCwgMTcsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCAxNywgMTcsIDAsIDAsIAotICAgIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMTksIDE5LCAxOSwgMTksIDAsIDAsIDAsIDAsIAotICAgIDAsIDUwLCAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCAwLCA1MCwgNTAsIAotICAgIDAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDg5LCA4OSwgODksIDg5LCA4OSwgODksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgODksIDg5LCA1LCA1LCAwLCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDE3LCAxNywgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDE3LCAKLSAgICAxNywgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgMCwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgODksIDUwLCA4OSwgNTAsIDg5LCAwLCA4OSwgNTAsIDg5LCA1MCwgODksIDUwLCAKLSAgICA4OSwgNTAsIDg5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCAwLCAxLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA2LCAKLSAgICA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAxNiwgMTYsIDE2LCAxNiwgMTYsIAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIAotICAgIDE2LCAxNiwgMTYsIDUsIDUsIDUsIDUsIDE3LCA1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgCi0gICAgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTE3LCAxMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAxLCAxLCAxLCA1LCA1LCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgMCwgMCwgCi0gICAgMCwgMCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDI0LCAyNCwgMjQsIDI0LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMiwgNSwgNSwgNSwgNSwgOTYsIDU1LCAxNDEsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE0MSwgCisgICAgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDI1LCAyNSwgMjUsIDI1LCAxOCwgMTgsIDUsIDk2LCAKKyAgICA5NiwgOTYsIDk2LCA5NiwgNSwgNSwgMTQxLCAxNDEsIDE0MSwgOTYsIDU1LCA1LCA1LCA1LCAwLCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDI1LCAyNSwgNiwgNiwgOTYsIDk2LCA1NSwgCisgICAgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNSwgOTYsIDk2LCA5NiwgNTUsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDAsIDUsIDUsIDI3LCAyNywgMjcsIDI3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAxNywgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDI3LCAyNywgMjcsIDI3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDUsIAorICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKKyAgICAyNywgMjcsIDI3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNzQsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCAyNzQsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgMjc0LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgMjc0LCA1NSwgMjc0LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDI3NCwgMjc0LCAyNzQsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDI3NCwgMjc0LCAyNzQsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDI3NCwgMjc0LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMjQsIDI0LCAyNCwgMjQsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTI4LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDEyOCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgOTYsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDk2LCA5NiwgOTYsIDk2LCA5NiwgOTYsIDUsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDk2LCA1LCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDU1LCA1NSwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDU1LCAyNSwgNiwgNiwgNiwgNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDUsIDk2LCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgCisgICAgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDE0MSwgMTQxLCAKKyAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMjUsIDI1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCAKKyAgICA2LCA2LCA2LCA2LCA2LCA5NiwgOTYsIDk2LCA5NiwgOTYsIDk2LCA5NiwgOTYsIDk2LCA2LCA2LCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDIwLCAyMCwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCA5NSwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAzMCwgMzEsIDMwLCAzMSwgMjc1LCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgOTYsIDYsIDYsIDMwLCAzMSwgMjc2LCAyMCwgMCwgMzAsIDMxLCAzMCwgCisgICAgMzEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAyNzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIAotICAgIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDk1LCA5NSwgMjAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgCisgICAgNTUsIDU1LCA1NSwgMjUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAxOCwgMTgsIDI1LCAyNSwgCisgICAgMTgsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMTgsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAKKyAgICAxOCwgMTgsIDE4LCAxOCwgMTgsIDI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA3LCA4LCA5LCAxMCwgMTEsIAorICAgIDEyLCAxMywgMTQsIDE1LCAxNiwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNSwgNSwgNSwgNTUsIAorICAgIDAsIDAsIDAsIDAsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMTgsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDI1LCAKKyAgICAyNSwgMjUsIDE4LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAxOCwgMTgsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAxOCwgMTgsIDI1LCAxOCwgMTgsIDE4LCAxOCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgMCwgOTYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCA1LCA1LCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgCi0gICAgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIAotICAgIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAKLSAgICAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgCi0gICAgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIAotICAgIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAKLSAgICAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAKLSAgICAxMiwgMTMsIDE0LCAxNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgMCwgMCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCAwLCAwLCAwLCAKLSAgICA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAwLCAwLCAwLCA1LCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCAxNywgMTcsIDE3LCAwLCAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDE3LCAxNywgCi0gICAgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgMTcsIDIzLCAyMCwgMjEsIDE1MiwgMjQsIDI0LCAyNCwgCi0gICAgMjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMjQsIDI0LCA1LCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAxOCwgMTgsIDI1LCAKKyAgICAyNSwgMTgsIDE4LCAyNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDI1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAxOCwgMCwgMCwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgCisgICAgMTYsIDAsIDAsIDUsIDUsIDUsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA5NiwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNSwgNSwgNSwgNTUsIDE4LCAwLCAwLCAwLCAwLCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgNTUsIDI1LCAyNSwgMjUsIDU1LCA1NSwgCisgICAgMjUsIDI1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgNTUsIDI1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA5NiwgNSwgNSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAxOCwgMjUsIDI1LCAxOCwgMTgsIDUsIDUsIDU1LCA5NiwgOTYsIAorICAgIDE4LCAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDE4LCAxOCwgMjUsIAorICAgIDE4LCAxOCwgMjUsIDE4LCAxOCwgNSwgMTgsIDI1LCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgCisgICAgMCwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCisgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCisgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCisgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCisgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCisgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIAorICAgIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgMjc0LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAyMywgMjAsIDIxLCAxNTIsIDE1MywgMTU0LCAxNTUsIDE1NiwgMTU3LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIAotICAgIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMCwgMTcsIDE3LCAxNywgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCAwLCAwLCAwLCAwLCAyMywgMjAsIDIxLCAxNTIsIDE1MywgMTU0LCAxNTUsIDE1NiwgMTU3LCAyNCwgMjQsIDI0LCAyNCwgCi0gICAgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3LCAxNywgMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgNSwgNSwgMSwgNSwgCi0gICAgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMjc4LCAyNzksIDI4MCwgMjgxLCAyODIsIDI4MywgMjg0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAyODUsIDI4NiwgMjg3LCAyODgsIDI4OSwgMCwgMCwgMCwgMCwgMCwgNTUsIDI1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDAsIDU1LCA1NSwgMCwgNTUsIDU1LCAwLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxNTgsIDE1OCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxNTgsIDE1OCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDI5MCwgMjkwLCA1LCA1LCAwLCAwLCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgNSwgNSwgNSwgNiwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDE4LCAxOCwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTgsIDE4LCAKKyAgICAxOCwgNSwgNSwgNiwgMCwgNSwgNiwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgMCwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMjkwLCA1NSwgMjkwLCA1NSwgMjkwLCAwLCAyOTAsIDU1LCAyOTAsIDU1LCAKKyAgICAyOTAsIDU1LCAyOTAsIDU1LCAyOTAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDIxLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA2LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA2LCA1LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNiwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCA1LCA1LCA2LCAxOCwgNiwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCisgICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCisgICAgMTksIDE5LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgOTYsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI5MSwgMjkxLCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgCisgICAgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCAKKyAgICA1NSwgMCwgMCwgMCwgNSwgNSwgNSwgNiwgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMjEsIDIxLCAyMSwgNSwgNSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCAwLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIAorICAgIDAsIDAsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDAsIDAsIDAsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAorICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKKyAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgCisgICAgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAorICAgIDE0MSwgMTQxLCAyNywgMjcsIDI3LCAyNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgMjcsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDI1LCAwLCAwLCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgMCwgMjcsIDI3LCAyNywgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMTQxLCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDE0MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgMCwgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1LCAxNDEsIAorICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTIsIAorICAgIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAKKyAgICAyOTIsIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTIsIDI5MiwgMjkyLCAyOTMsIDI5MywgCisgICAgMjkzLCAyOTMsIDI5MywgMjkzLCAyOTMsIDI5MywgMjkzLCAyOTMsIDI5MywgMjkzLCAyOTMsIDI5MywgMjkzLCAyOTMsIAorICAgIDI5MywgMjkzLCAyOTMsIDI5MywgMjkzLCAyOTMsIDI5MywgMjkzLCAyOTMsIDI5MywgMjkzLCAyOTMsIDI5MywgMjkzLCAKKyAgICAyOTMsIDI5MywgMjkzLCAyOTMsIDI5MywgMjkzLCAyOTMsIDI5MywgMjkzLCAyOTMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDAsIDAsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCAwLCA1NSwgNTUsIDAsIDAsIDAsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDUsIDI3LCAyNywgMjcsIAorICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3LCAyNywgMjcsIDI3LCAKKyAgICAyNywgMjcsIDAsIDAsIDAsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgNSwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCAKKyAgICA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDI1LCAyNSwgMjUsIDAsIDI1LCAKKyAgICAyNSwgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAyNSwgMjUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCAwLCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAyNSwgMjUsIDI1LCAwLCAwLCAwLCAwLCAyNSwgCisgICAgMjYsIDIyLCAyMywgMjQ2LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCAyNywgMjcsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAyNywgMjcsIAorICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNiwgMjIsIDIzLCAyNDYsIDI0NywgMjQ4LCAyNDksIDI1MCwgMjUxLCAyNywgCisgICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDI3LCAyNywgMCwgMTgsIDI1LCAxOCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAyNiwgMjIsIDIzLCAyNDYsIDI0NywgMjQ4LCAKKyAgICAyNDksIDI1MCwgMjUxLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDcsIDgsIDksIDEwLCAKKyAgICAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAyNSwgMjUsIDE4LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMTgsIDE4LCAyNSwgMjUsIDUsIDUsIDIxLCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgOCwgOSwgMTAsIAorICAgIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDAsIDAsIDAsIDAsIDAsIDAsIDI1LCAyNSwgMjUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMTgsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMCwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgCisgICAgMTYsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1LCAyNSwgMTgsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDE4LCAxOCwgMTgsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDE4LCAxOCwgNTUsIDU1LCA1NSwgNTUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDE4LCAyNSwgMTgsIDE4LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAxOCwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAorICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKKyAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgCisgICAgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMjUyLCAyNTIsIDE0MSwgMTQxLCAxNDEsIAorICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKKyAgICAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgCisgICAgMTQxLCAxNDEsIDE0MSwgMjUyLCAyNTIsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIAorICAgIDE0MSwgMTQxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIAorICAgIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIAorICAgIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIAorICAgIDE4LCAxOCwgMTgsIDE4LCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDk2LCA5NiwgOTYsIDk2LCA5NiwgOTYsIDk2LCA5NiwgOTYsIDk2LCA5NiwgOTYsIDk2LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIApAQCAtMTc3NSwyNzIgKzI2MzcsMjg2IEBACiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICA1LCA1LCA1LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAxNywgMTcsIAotICAgIDE3LCAxNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTgsIDE4LCAyNSwgMjUsIDI1LCAKKyAgICA1LCA1LCA1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNSwgNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDE3LCAxNywgMTcsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI0LCAyNCwgCi0gICAgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMCwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTAyLCAwLCAxMDIsIDEwMiwgMCwgMCwgMTAyLCAwLCAwLCAxMDIsIDEwMiwgMCwgMCwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAwLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTksIDE5LCAKLSAgICAxOSwgMTksIDAsIDE5LCAwLCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMCwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMCwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAwLCAwLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMCwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAwLCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDEwMiwgMTAyLCAwLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDAsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAwLCAxMDIsIDAsIDAsIDAsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMCwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDAsIDAsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgNSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDUsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgNSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDUsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgNSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDUsIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgNSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDUsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgNSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDUsIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDEwMiwgMTksIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDYsIDcsIAotICAgIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDYsIDcsIAotICAgIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE1MSwgMTUxLCAyMywgMjAsIDIxLCAxNTIsIDE1MywgCi0gICAgMTU0LCAxNTUsIDE1NiwgMTU3LCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCAyNSwgMjUsIDI1LCAyNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjUsIDI1LCAyNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKKyAgICAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIAorICAgIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIAorICAgIDExMywgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAxMTMsIDAsIDExMywgMTEzLCAwLCAwLCAxMTMsIDAsIDAsIAorICAgIDExMywgMTEzLCAwLCAwLCAxMTMsIDExMywgMTEzLCAxMTMsIDAsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAyMCwgMjAsIDIwLCAyMCwgMCwgMjAsIDAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDExMywgMTEzLCAwLCAxMTMsIAorICAgIDExMywgMTEzLCAxMTMsIDAsIDAsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAwLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEzLCAxMTMsIDAsIAorICAgIDExMywgMTEzLCAxMTMsIDExMywgMCwgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDAsIDExMywgMCwgMCwgMCwgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDExMywgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIAorICAgIDExMywgMTEzLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIAorICAgIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDExMywgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMCwgMCwgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCA1LCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgNSwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCA1LCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgNSwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIAorICAgIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAKKyAgICAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCA1LCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgNSwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIAorICAgIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCA1LCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgNSwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEzLCAxMTMsIDExMywgCisgICAgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIAorICAgIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCAxMTMsIDExMywgMTEzLCA1LCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgNSwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEzLCAyMCwgMCwgMCwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAKKyAgICAxNSwgMTYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIAorICAgIDE1LCAxNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgCisgICAgMTUsIDE2LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIAorICAgIDU1LCAwLCA1NSwgMCwgMCwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMCwgNTUsIDAsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgMCwgMCwgMCwgMCwgNTUsIDAsIDU1LCAwLCAKKyAgICA1NSwgMCwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCAwLCA1NSwgMCwgMCwgNTUsIDAsIDU1LCAwLCA1NSwgMCwgNTUsIDAsIAorICAgIDU1LCAwLCA1NSwgNTUsIDAsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAKLSAgICAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNDUsIDI0NSwgMjYsIDIyLCAyMywgMjQ2LCAyNDcsIDI0OCwgMjQ5LCAKKyAgICAyNTAsIDI1MSwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNSwgNSwgCisgICAgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgCiAgICAgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgMCwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgMCwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgCi0gICAgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjc0LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3NCwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzQsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDAsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDUsIDUsIDUsIDAsIDUsIDAsIDUsIDAsIDUsIDAsIDUsIAotICAgIDUsIDUsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDUsIDUsIDUsIDUsIDAsIDUsIDAsIDAsIDUsIDUsIDUsIDUsIDAsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCiAgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCiAgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCiAgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCiAgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCi0gICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMCwgMCwgCisgICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMCwgMCwgCiB9OwogCiAvKiBSZXR1cm5zIHRoZSBudW1lcmljIHZhbHVlIGFzIGRvdWJsZSBmb3IgVW5pY29kZSBjaGFyYWN0ZXJzCkBAIC0yMTAwLDYgKzI5NzYsMTAgQEAKICAgICBjYXNlIDB4MTAxOEE6CiAgICAgY2FzZSAweDEwNEEwOgogICAgIGNhc2UgMHgxMTA2NjoKKyAgICBjYXNlIDB4MTEwRjA6CisgICAgY2FzZSAweDExMTM2OgorICAgIGNhc2UgMHgxMTFEMDoKKyAgICBjYXNlIDB4MTE2QzA6CiAgICAgY2FzZSAweDFEN0NFOgogICAgIGNhc2UgMHgxRDdEODoKICAgICBjYXNlIDB4MUQ3RTI6CkBAIC0yMTg3LDYgKzMwNjcsMTAgQEAKICAgICBjYXNlIDB4MTBFNjA6CiAgICAgY2FzZSAweDExMDUyOgogICAgIGNhc2UgMHgxMTA2NzoKKyAgICBjYXNlIDB4MTEwRjE6CisgICAgY2FzZSAweDExMTM3OgorICAgIGNhc2UgMHgxMTFEMToKKyAgICBjYXNlIDB4MTE2QzE6CiAgICAgY2FzZSAweDEyNDE1OgogICAgIGNhc2UgMHgxMjQxRToKICAgICBjYXNlIDB4MTI0MkM6CkBAIC0yMjYzLDYgKzMxNDcsNyBAQAogICAgIGNhc2UgMHgyNzkzOgogICAgIGNhc2UgMHgzMDM4OgogICAgIGNhc2UgMHgzMjI5OgorICAgIGNhc2UgMHgzMjQ4OgogICAgIGNhc2UgMHgzMjg5OgogICAgIGNhc2UgMHg0RUMwOgogICAgIGNhc2UgMHg1MzQxOgpAQCAtMjQ4Myw2ICszMzY4LDEwIEBACiAgICAgY2FzZSAweDEwRTYxOgogICAgIGNhc2UgMHgxMTA1MzoKICAgICBjYXNlIDB4MTEwNjg6CisgICAgY2FzZSAweDExMEYyOgorICAgIGNhc2UgMHgxMTEzODoKKyAgICBjYXNlIDB4MTExRDI6CisgICAgY2FzZSAweDExNkMyOgogICAgIGNhc2UgMHgxMjQwMDoKICAgICBjYXNlIDB4MTI0MTY6CiAgICAgY2FzZSAweDEyNDFGOgpAQCAtMjUxNSw2ICszNDA0LDcgQEAKICAgICBjYXNlIDB4MjQ5QjoKICAgICBjYXNlIDB4MjRGNDoKICAgICBjYXNlIDB4MzAzOToKKyAgICBjYXNlIDB4MzI0OToKICAgICBjYXNlIDB4NTM0NDoKICAgICBjYXNlIDB4NUVGRjoKICAgICBjYXNlIDB4MTAxMTE6CkBAIC0yNjI2LDYgKzM1MTYsMTAgQEAKICAgICBjYXNlIDB4MTBFNjI6CiAgICAgY2FzZSAweDExMDU0OgogICAgIGNhc2UgMHgxMTA2OToKKyAgICBjYXNlIDB4MTEwRjM6CisgICAgY2FzZSAweDExMTM5OgorICAgIGNhc2UgMHgxMTFEMzoKKyAgICBjYXNlIDB4MTE2QzM6CiAgICAgY2FzZSAweDEyNDAxOgogICAgIGNhc2UgMHgxMjQwODoKICAgICBjYXNlIDB4MTI0MTc6CkBAIC0yNjcxLDYgKzM1NjUsNyBAQAogICAgICAgICByZXR1cm4gKGRvdWJsZSkgMy4wLzguMDsKICAgICBjYXNlIDB4MTM3NDoKICAgICBjYXNlIDB4MzAzQToKKyAgICBjYXNlIDB4MzI0QToKICAgICBjYXNlIDB4MzI1QToKICAgICBjYXNlIDB4NTM0NToKICAgICBjYXNlIDB4MTAxMTI6CkBAIC0yNzcwLDYgKzM2NjUsMTAgQEAKICAgICBjYXNlIDB4MTBFNjM6CiAgICAgY2FzZSAweDExMDU1OgogICAgIGNhc2UgMHgxMTA2QToKKyAgICBjYXNlIDB4MTEwRjQ6CisgICAgY2FzZSAweDExMTNBOgorICAgIGNhc2UgMHgxMTFENDoKKyAgICBjYXNlIDB4MTE2QzQ6CiAgICAgY2FzZSAweDEyNDAyOgogICAgIGNhc2UgMHgxMjQwOToKICAgICBjYXNlIDB4MTI0MEY6CkBAIC0yNzk5LDYgKzM2OTgsNyBAQAogICAgIGNhc2UgMHgyMTU4OgogICAgICAgICByZXR1cm4gKGRvdWJsZSkgNC4wLzUuMDsKICAgICBjYXNlIDB4MTM3NToKKyAgICBjYXNlIDB4MzI0QjoKICAgICBjYXNlIDB4MzJCNToKICAgICBjYXNlIDB4NTM0QzoKICAgICBjYXNlIDB4MTAxMTM6CkBAIC0yOTAwLDYgKzM4MDAsMTAgQEAKICAgICBjYXNlIDB4MTBFNjQ6CiAgICAgY2FzZSAweDExMDU2OgogICAgIGNhc2UgMHgxMTA2QjoKKyAgICBjYXNlIDB4MTEwRjU6CisgICAgY2FzZSAweDExMTNCOgorICAgIGNhc2UgMHgxMTFENToKKyAgICBjYXNlIDB4MTE2QzU6CiAgICAgY2FzZSAweDEyNDAzOgogICAgIGNhc2UgMHgxMjQwQToKICAgICBjYXNlIDB4MTI0MTA6CkBAIC0yOTMxLDYgKzM4MzUsNyBAQAogICAgIGNhc2UgMHgyMTZDOgogICAgIGNhc2UgMHgyMTdDOgogICAgIGNhc2UgMHgyMTg2OgorICAgIGNhc2UgMHgzMjRDOgogICAgIGNhc2UgMHgzMkJGOgogICAgIGNhc2UgMHgxMDExNDoKICAgICBjYXNlIDB4MTAxNDQ6CkBAIC0zMDM0LDYgKzM5MzksMTAgQEAKICAgICBjYXNlIDB4MTBFNjU6CiAgICAgY2FzZSAweDExMDU3OgogICAgIGNhc2UgMHgxMTA2QzoKKyAgICBjYXNlIDB4MTEwRjY6CisgICAgY2FzZSAweDExMTNDOgorICAgIGNhc2UgMHgxMTFENjoKKyAgICBjYXNlIDB4MTE2QzY6CiAgICAgY2FzZSAweDEyNDA0OgogICAgIGNhc2UgMHgxMjQwQjoKICAgICBjYXNlIDB4MTI0MTE6CkBAIC0zMDUxLDYgKzM5NjAsNyBAQAogICAgIGNhc2UgMHgyMEFFQToKICAgICAgICAgcmV0dXJuIChkb3VibGUpIDYuMDsKICAgICBjYXNlIDB4MTM3NzoKKyAgICBjYXNlIDB4MzI0RDoKICAgICBjYXNlIDB4MTAxMTU6CiAgICAgY2FzZSAweDEwRTZFOgogICAgIGNhc2UgMHgxMTA2MDoKQEAgLTMxMjQsNiArNDAzNCwxMCBAQAogICAgIGNhc2UgMHgxMEU2NjoKICAgICBjYXNlIDB4MTEwNTg6CiAgICAgY2FzZSAweDExMDZEOgorICAgIGNhc2UgMHgxMTBGNzoKKyAgICBjYXNlIDB4MTExM0Q6CisgICAgY2FzZSAweDExMUQ3OgorICAgIGNhc2UgMHgxMTZDNzoKICAgICBjYXNlIDB4MTI0MDU6CiAgICAgY2FzZSAweDEyNDBDOgogICAgIGNhc2UgMHgxMjQxMjoKQEAgLTMxNDYsNiArNDA2MCw3IEBACiAgICAgY2FzZSAweDIxNUU6CiAgICAgICAgIHJldHVybiAoZG91YmxlKSA3LjAvOC4wOwogICAgIGNhc2UgMHgxMzc4OgorICAgIGNhc2UgMHgzMjRFOgogICAgIGNhc2UgMHgxMDExNjoKICAgICBjYXNlIDB4MTBFNkY6CiAgICAgY2FzZSAweDExMDYxOgpAQCAtMzIxNyw2ICs0MTMyLDEwIEBACiAgICAgY2FzZSAweDEwRTY3OgogICAgIGNhc2UgMHgxMTA1OToKICAgICBjYXNlIDB4MTEwNkU6CisgICAgY2FzZSAweDExMEY4OgorICAgIGNhc2UgMHgxMTEzRToKKyAgICBjYXNlIDB4MTExRDg6CisgICAgY2FzZSAweDExNkM4OgogICAgIGNhc2UgMHgxMjQwNjoKICAgICBjYXNlIDB4MTI0MEQ6CiAgICAgY2FzZSAweDEyNDEzOgpAQCAtMzIzMyw2ICs0MTUyLDcgQEAKICAgICBjYXNlIDB4MUYxMDk6CiAgICAgICAgIHJldHVybiAoZG91YmxlKSA4LjA7CiAgICAgY2FzZSAweDEzNzk6CisgICAgY2FzZSAweDMyNEY6CiAgICAgY2FzZSAweDEwMTE3OgogICAgIGNhc2UgMHgxMEU3MDoKICAgICBjYXNlIDB4MTEwNjI6CkBAIC0zMzA1LDYgKzQyMjUsMTAgQEAKICAgICBjYXNlIDB4MTBFNjg6CiAgICAgY2FzZSAweDExMDVBOgogICAgIGNhc2UgMHgxMTA2RjoKKyAgICBjYXNlIDB4MTEwRjk6CisgICAgY2FzZSAweDExMTNGOgorICAgIGNhc2UgMHgxMTFEOToKKyAgICBjYXNlIDB4MTE2Qzk6CiAgICAgY2FzZSAweDEyNDA3OgogICAgIGNhc2UgMHgxMjQwRToKICAgICBjYXNlIDB4MTI0MTQ6CmRpZmYgLS1naXQgYS9PYmplY3RzL3dlYWtyZWZvYmplY3QuYyBiL09iamVjdHMvd2Vha3JlZm9iamVjdC5jCmluZGV4IDEzMzIzY2YuLmUwN2FkYjIgMTAwNjQ0Ci0tLSBhL09iamVjdHMvd2Vha3JlZm9iamVjdC5jCisrKyBiL09iamVjdHMvd2Vha3JlZm9iamVjdC5jCkBAIC0xNTYsMjggKzE1NiwzMiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHdlYWtyZWZfcmVwcihQeVdlYWtSZWZlcmVuY2UgKnNlbGYpCiB7Ci0gICAgY2hhciBidWZmZXJbMjU2XTsKLSAgICBpZiAoUHlXZWFrcmVmX0dFVF9PQkpFQ1Qoc2VsZikgPT0gUHlfTm9uZSkgewotICAgICAgICBQeU9TX3NucHJpbnRmKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciksICI8d2Vha3JlZiBhdCAlcDsgZGVhZD4iLCBzZWxmKTsKKyAgICBQeU9iamVjdCAqbmFtZSwgKnJlcHI7CisgICAgX1B5X0lERU5USUZJRVIoX19uYW1lX18pOworCisgICAgaWYgKFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpID09IFB5X05vbmUpCisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPHdlYWtyZWYgYXQgJXA7IGRlYWQ+Iiwgc2VsZik7CisKKyAgICBuYW1lID0gX1B5T2JqZWN0X0dldEF0dHJJZChQeVdlYWtyZWZfR0VUX09CSkVDVChzZWxmKSwgJlB5SWRfX19uYW1lX18pOworICAgIGlmIChuYW1lID09IE5VTEwgfHwgIVB5VW5pY29kZV9DaGVjayhuYW1lKSkgeworICAgICAgICBpZiAobmFtZSA9PSBOVUxMKQorICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgcmVwciA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KAorICAgICAgICAgICAgIjx3ZWFrcmVmIGF0ICVwOyB0byAnJXMnIGF0ICVwPiIsCisgICAgICAgICAgICBzZWxmLAorICAgICAgICAgICAgUHlfVFlQRShQeVdlYWtyZWZfR0VUX09CSkVDVChzZWxmKSktPnRwX25hbWUsCisgICAgICAgICAgICBQeVdlYWtyZWZfR0VUX09CSkVDVChzZWxmKSk7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBjaGFyICpuYW1lID0gTlVMTDsKLSAgICAgICAgUHlPYmplY3QgKm5hbWVvYmogPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9fbmFtZV9fIik7Ci0gICAgICAgIGlmIChuYW1lb2JqID09IE5VTEwpCi0gICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKG5hbWVvYmopKQotICAgICAgICAgICAgICAgIG5hbWUgPSBfUHlVbmljb2RlX0FzU3RyaW5nKG5hbWVvYmopOwotICAgICAgICBQeU9TX3NucHJpbnRmKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciksCi0gICAgICAgICAgICAgICAgICAgICAgbmFtZSA/ICI8d2Vha3JlZiBhdCAlcDsgdG8gJyUuNTBzJyBhdCAlcCAoJXMpPiIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIDogIjx3ZWFrcmVmIGF0ICVwOyB0byAnJS41MHMnIGF0ICVwPiIsCi0gICAgICAgICAgICAgICAgICAgICAgc2VsZiwKLSAgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpKS0+dHBfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICBQeVdlYWtyZWZfR0VUX09CSkVDVChzZWxmKSwKLSAgICAgICAgICAgICAgICAgICAgICBuYW1lKTsKLSAgICAgICAgUHlfWERFQ1JFRihuYW1lb2JqKTsKKyAgICAgICAgcmVwciA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KAorICAgICAgICAgICAgIjx3ZWFrcmVmIGF0ICVwOyB0byAnJXMnIGF0ICVwICglVSk+IiwKKyAgICAgICAgICAgIHNlbGYsCisgICAgICAgICAgICBQeV9UWVBFKFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpKS0+dHBfbmFtZSwKKyAgICAgICAgICAgIFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpLAorICAgICAgICAgICAgbmFtZSk7CiAgICAgfQotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhidWZmZXIpOworICAgIFB5X1hERUNSRUYobmFtZSk7CisgICAgcmV0dXJuIHJlcHI7CiB9CiAKIC8qIFdlYWsgcmVmZXJlbmNlcyBvbmx5IHN1cHBvcnQgZXF1YWxpdHksIG5vdCBvcmRlcmluZy4gVHdvIHdlYWsgcmVmZXJlbmNlcwpAQCAtMTkwLDggKzE5NCw3IEBACiAgICAgaWYgKChvcCAhPSBQeV9FUSAmJiBvcCAhPSBQeV9ORSkgfHwKICAgICAgICAgIVB5V2Vha3JlZl9DaGVjayhzZWxmKSB8fAogICAgICAgICAhUHlXZWFrcmVmX0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiAgICAgaWYgKFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpID09IFB5X05vbmUKICAgICAgICAgfHwgUHlXZWFrcmVmX0dFVF9PQkpFQ1Qob3RoZXIpID09IFB5X05vbmUpIHsKQEAgLTQzOCw4ICs0NDEsOSBAQAogI2RlZmluZSBXUkFQX01FVEhPRChtZXRob2QsIHNwZWNpYWwpIFwKICAgICBzdGF0aWMgUHlPYmplY3QgKiBcCiAgICAgbWV0aG9kKFB5T2JqZWN0ICpwcm94eSkgeyBcCisgICAgICAgICAgICBfUHlfSURFTlRJRklFUihzcGVjaWFsKTsgXAogICAgICAgICAgICAgVU5XUkFQKHByb3h5KTsgXAotICAgICAgICAgICAgICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKHByb3h5LCBzcGVjaWFsLCAiIik7IFwKKyAgICAgICAgICAgICAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChwcm94eSwgJlB5SWRfIyNzcGVjaWFsLCAiIik7IFwKICAgICAgICAgfQogCiAKQEAgLTQ1MiwxMiArNDU2LDExIEBACiBzdGF0aWMgUHlPYmplY3QgKgogcHJveHlfcmVwcihQeVdlYWtSZWZlcmVuY2UgKnByb3h5KQogewotICAgIGNoYXIgYnVmWzE2MF07Ci0gICAgUHlPU19zbnByaW50ZihidWYsIHNpemVvZihidWYpLAotICAgICAgICAgICAgICAgICAgIjx3ZWFrcHJveHkgYXQgJXAgdG8gJS4xMDBzIGF0ICVwPiIsIHByb3h5LAotICAgICAgICAgICAgICAgICAgUHlfVFlQRShQeVdlYWtyZWZfR0VUX09CSkVDVChwcm94eSkpLT50cF9uYW1lLAotICAgICAgICAgICAgICAgICAgUHlXZWFrcmVmX0dFVF9PQkpFQ1QocHJveHkpKTsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoYnVmKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoCisgICAgICAgICI8d2Vha3Byb3h5IGF0ICVwIHRvICVzIGF0ICVwPiIsCisgICAgICAgIHByb3h5LAorICAgICAgICBQeV9UWVBFKFB5V2Vha3JlZl9HRVRfT0JKRUNUKHByb3h5KSktPnRwX25hbWUsCisgICAgICAgIFB5V2Vha3JlZl9HRVRfT0JKRUNUKHByb3h5KSk7CiB9CiAKIApAQCAtNTgzLDcgKzU4Niw3IEBACiB9CiAKIAotV1JBUF9NRVRIT0QocHJveHlfYnl0ZXMsICJfX2J5dGVzX18iKQorV1JBUF9NRVRIT0QocHJveHlfYnl0ZXMsIF9fYnl0ZXNfXykKIAogCiBzdGF0aWMgUHlNZXRob2REZWYgcHJveHlfbWV0aG9kc1tdID0gewpkaWZmIC0tZ2l0IGEvUEMvVkM2L19tdWx0aXByb2Nlc3NpbmcuZHNwIGIvUEMvVkM2L19tdWx0aXByb2Nlc3NpbmcuZHNwCmluZGV4IDJkY2FmODMuLmUxYjg0NzAgMTAwNjQ0Ci0tLSBhL1BDL1ZDNi9fbXVsdGlwcm9jZXNzaW5nLmRzcAorKysgYi9QQy9WQzYvX211bHRpcHJvY2Vzc2luZy5kc3AKQEAgLTk3LDE4ICs5NywxMCBAQAogIyBFbmQgU291cmNlIEZpbGUNCiAjIEJlZ2luIFNvdXJjZSBGaWxlDQogDQotU09VUkNFPS4uXC4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xwaXBlX2Nvbm5lY3Rpb24uYw0KLSMgRW5kIFNvdXJjZSBGaWxlDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KIFNPVVJDRT0uLlwuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3Npbmdcc2VtYXBob3JlLmMNCiAjIEVuZCBTb3VyY2UgRmlsZQ0KICMgQmVnaW4gU291cmNlIEZpbGUNCiANCi1TT1VSQ0U9Li5cLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXHNvY2tldF9jb25uZWN0aW9uLmMNCi0jIEVuZCBTb3VyY2UgRmlsZQ0KLSMgQmVnaW4gU291cmNlIEZpbGUNCi0NCiBTT1VSQ0U9Li5cLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXHdpbjMyX2Z1bmN0aW9ucy5jDQogIyBFbmQgU291cmNlIEZpbGUNCiAjIEVuZCBUYXJnZXQNCmRpZmYgLS1naXQgYS9QQy9WQzYvcHl0aG9uY29yZS5kc3AgYi9QQy9WQzYvcHl0aG9uY29yZS5kc3AKaW5kZXggMmFmYTMyMi4uNjEyNDdiNyAxMDA2NDQKLS0tIGEvUEMvVkM2L3B5dGhvbmNvcmUuZHNwCisrKyBiL1BDL1ZDNi9weXRob25jb3JlLmRzcApAQCAtNTQsNyArNTQsNyBAQAogIyBBREQgQlNDMzIgL25vbG9nbw0KIExJTkszMj1saW5rLmV4ZQ0KICMgQUREIEJBU0UgTElOSzMyIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGdkaTMyLmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiBvbGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5saWIgb2RiY2NwMzIubGliIC9ub2xvZ28gL3N1YnN5c3RlbTp3aW5kb3dzIC9kbGwgL21hY2hpbmU6STM4Ng0KLSMgQUREIExJTkszMiBsYXJnZWludC5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIC9ub2xvZ28gL2Jhc2U6IjB4MWUwMDAwMDAiIC9zdWJzeXN0ZW06d2luZG93cyAvZGxsIC9kZWJ1ZyAvbWFjaGluZTpJMzg2IC9ub2RlZmF1bHRsaWI6ImxpYmMiIC9vdXQ6Ii4vcHl0aG9uMzIuZGxsIg0KKyMgQUREIExJTkszMiBsYXJnZWludC5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIC9ub2xvZ28gL2Jhc2U6IjB4MWUwMDAwMDAiIC9zdWJzeXN0ZW06d2luZG93cyAvZGxsIC9kZWJ1ZyAvbWFjaGluZTpJMzg2IC9ub2RlZmF1bHRsaWI6ImxpYmMiIC9vdXQ6Ii4vcHl0aG9uMzMuZGxsIg0KICMgU1VCVFJBQ1QgTElOSzMyIC9wZGI6bm9uZQ0KIA0KICFFTFNFSUYgICIkKENGRykiID09ICJweXRob25jb3JlIC0gV2luMzIgRGVidWciDQpAQCAtODIsNyArODIsNyBAQAogIyBBREQgQlNDMzIgL25vbG9nbw0KIExJTkszMj1saW5rLmV4ZQ0KICMgQUREIEJBU0UgTElOSzMyIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGdkaTMyLmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiBvbGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5saWIgb2RiY2NwMzIubGliIC9ub2xvZ28gL3N1YnN5c3RlbTp3aW5kb3dzIC9kbGwgL2RlYnVnIC9tYWNoaW5lOkkzODYgL3BkYnR5cGU6c2VwdA0KLSMgQUREIExJTkszMiBsYXJnZWludC5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIC9ub2xvZ28gL2Jhc2U6IjB4MWUwMDAwMDAiIC9zdWJzeXN0ZW06d2luZG93cyAvZGxsIC9kZWJ1ZyAvbWFjaGluZTpJMzg2IC9ub2RlZmF1bHRsaWI6ImxpYmMiIC9vdXQ6Ii4vcHl0aG9uMzJfZC5kbGwiIC9wZGJ0eXBlOnNlcHQNCisjIEFERCBMSU5LMzIgbGFyZ2VpbnQubGliIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiAvbm9sb2dvIC9iYXNlOiIweDFlMDAwMDAwIiAvc3Vic3lzdGVtOndpbmRvd3MgL2RsbCAvZGVidWcgL21hY2hpbmU6STM4NiAvbm9kZWZhdWx0bGliOiJsaWJjIiAvb3V0OiIuL3B5dGhvbjMzX2QuZGxsIiAvcGRidHlwZTpzZXB0DQogIyBTVUJUUkFDVCBMSU5LMzIgL3BkYjpub25lDQogDQogIUVORElGIA0KZGlmZiAtLWdpdCBhL1BDL1ZDNi9yZWFkbWUudHh0IGIvUEMvVkM2L3JlYWRtZS50eHQKaW5kZXggNGU4ZDIzNy4uYTY4MzUyNyAxMDA2NDQKLS0tIGEvUEMvVkM2L3JlYWRtZS50eHQKKysrIGIvUEMvVkM2L3JlYWRtZS50eHQKQEAgLTEyLDcgKzEyLDcgQEAKIFRoZSBwcm9wZXIgb3JkZXIgdG8gYnVpbGQgc3VicHJvamVjdHM6CiAKIDEpIHB5dGhvbmNvcmUgKHRoaXMgYnVpbGRzIHRoZSBtYWluIFB5dGhvbiBETEwgYW5kIGxpYnJhcnkgZmlsZXMsCi0gICAgICAgICAgICAgICBweXRob24zMi57ZGxsLCBsaWJ9IGluIFJlbGVhc2UgbW9kZSkKKyAgICAgICAgICAgICAgIHB5dGhvbjMzLntkbGwsIGxpYn0gaW4gUmVsZWFzZSBtb2RlKQogCiAyKSBweXRob24gKHRoaXMgYnVpbGRzIHRoZSBtYWluIFB5dGhvbiBleGVjdXRhYmxlLAogICAgICAgICAgICBweXRob24uZXhlIGluIFJlbGVhc2UgbW9kZSkKQEAgLTIzLDcgKzIzLDcgQEAKICAgIHRvIHRoZSBzdWJzeXN0ZW1zIHRoZXkgaW1wbGVtZW50OyBzZWUgU1VCUFJPSkVDVFMgYmVsb3cpCiAKIFdoZW4gdXNpbmcgdGhlIERlYnVnIHNldHRpbmcsIHRoZSBvdXRwdXQgZmlsZXMgaGF2ZSBhIF9kIGFkZGVkIHRvCi10aGVpciBuYW1lOiAgcHl0aG9uMzJfZC5kbGwsIHB5dGhvbl9kLmV4ZSwgcHlleHBhdF9kLnB5ZCwgYW5kIHNvIG9uLgordGhlaXIgbmFtZTogIHB5dGhvbjMzX2QuZGxsLCBweXRob25fZC5leGUsIHB5ZXhwYXRfZC5weWQsIGFuZCBzbyBvbi4KIAogU1VCUFJPSkVDVFMKIC0tLS0tLS0tLS0tCmRpZmYgLS1naXQgYS9QQy9WUzcuMS9weXRob25jb3JlLnZjcHJvaiBiL1BDL1ZTNy4xL3B5dGhvbmNvcmUudmNwcm9qCmluZGV4IGI2MjlkZjQuLmQ4ODI5MTEgMTAwNjQ0Ci0tLSBhL1BDL1ZTNy4xL3B5dGhvbmNvcmUudmNwcm9qCisrKyBiL1BDL1ZTNy4xL3B5dGhvbmNvcmUudmNwcm9qCkBAIC0zOSwxNSArMzksMTUgQEAKIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTGlua2VyVG9vbCINCiAJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0iZ2V0YnVpbGRpbmZvLm8iDQotCQkJCU91dHB1dEZpbGU9Ii4vcHl0aG9uMzIuZGxsIg0KKwkJCQlPdXRwdXRGaWxlPSIuL3B5dGhvbjMzLmRsbCINCiAJCQkJTGlua0luY3JlbWVudGFsPSIxIg0KIAkJCQlTdXBwcmVzc1N0YXJ0dXBCYW5uZXI9IlRSVUUiDQogCQkJCUlnbm9yZURlZmF1bHRMaWJyYXJ5TmFtZXM9ImxpYmMiDQogCQkJCUdlbmVyYXRlRGVidWdJbmZvcm1hdGlvbj0iVFJVRSINCi0JCQkJUHJvZ3JhbURhdGFiYXNlRmlsZT0iLlwuL3B5dGhvbjMyLnBkYiINCisJCQkJUHJvZ3JhbURhdGFiYXNlRmlsZT0iLlwuL3B5dGhvbjMzLnBkYiINCiAJCQkJU3ViU3lzdGVtPSIyIg0KIAkJCQlCYXNlQWRkcmVzcz0iMHgxZTAwMDAwMCINCi0JCQkJSW1wb3J0TGlicmFyeT0iLlwuL3B5dGhvbjMyLmxpYiINCisJCQkJSW1wb3J0TGlicmFyeT0iLlwuL3B5dGhvbjMzLmxpYiINCiAJCQkJVGFyZ2V0TWFjaGluZT0iMSIvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTUlETFRvb2wiLz4NCkBAIC05OSwxNSArOTksMTUgQEAKIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTGlua2VyVG9vbCINCiAJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0iZ2V0YnVpbGRpbmZvLm8iDQotCQkJCU91dHB1dEZpbGU9Ii4vcHl0aG9uMzJfZC5kbGwiDQorCQkJCU91dHB1dEZpbGU9Ii4vcHl0aG9uMzNfZC5kbGwiDQogCQkJCUxpbmtJbmNyZW1lbnRhbD0iMSINCiAJCQkJU3VwcHJlc3NTdGFydHVwQmFubmVyPSJUUlVFIg0KIAkJCQlJZ25vcmVEZWZhdWx0TGlicmFyeU5hbWVzPSJsaWJjIg0KIAkJCQlHZW5lcmF0ZURlYnVnSW5mb3JtYXRpb249IlRSVUUiDQotCQkJCVByb2dyYW1EYXRhYmFzZUZpbGU9Ii5cLi9weXRob24zMl9kLnBkYiINCisJCQkJUHJvZ3JhbURhdGFiYXNlRmlsZT0iLlwuL3B5dGhvbjMzX2QucGRiIg0KIAkJCQlTdWJTeXN0ZW09IjIiDQogCQkJCUJhc2VBZGRyZXNzPSIweDFlMDAwMDAwIg0KLQkJCQlJbXBvcnRMaWJyYXJ5PSIuXC4vcHl0aG9uMzJfZC5saWIiDQorCQkJCUltcG9ydExpYnJhcnk9Ii5cLi9weXRob24zM19kLmxpYiINCiAJCQkJVGFyZ2V0TWFjaGluZT0iMSIvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTUlETFRvb2wiLz4NCkBAIC0xNjYsMTUgKzE2NiwxNSBAQAogCQkJCU5hbWU9IlZDTGlua2VyVG9vbCINCiAJCQkJQWRkaXRpb25hbE9wdGlvbnM9IiAvTUFDSElORTpJQTY0IC9VU0VMSU5LOk1TX1NESyINCiAJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0iZ2V0YnVpbGRpbmZvLm8iDQotCQkJCU91dHB1dEZpbGU9Ii4vcHl0aG9uMzIuZGxsIg0KKwkJCQlPdXRwdXRGaWxlPSIuL3B5dGhvbjMzLmRsbCINCiAJCQkJTGlua0luY3JlbWVudGFsPSIxIg0KIAkJCQlTdXBwcmVzc1N0YXJ0dXBCYW5uZXI9IkZBTFNFIg0KIAkJCQlJZ25vcmVEZWZhdWx0TGlicmFyeU5hbWVzPSJsaWJjIg0KIAkJCQlHZW5lcmF0ZURlYnVnSW5mb3JtYXRpb249IlRSVUUiDQotCQkJCVByb2dyYW1EYXRhYmFzZUZpbGU9Ii5cLi9weXRob24zMi5wZGIiDQorCQkJCVByb2dyYW1EYXRhYmFzZUZpbGU9Ii5cLi9weXRob24zMy5wZGIiDQogCQkJCVN1YlN5c3RlbT0iMiINCiAJCQkJQmFzZUFkZHJlc3M9IjB4MWUwMDAwMDAiDQotCQkJCUltcG9ydExpYnJhcnk9Ii5cLi9weXRob24zMi5saWIiDQorCQkJCUltcG9ydExpYnJhcnk9Ii5cLi9weXRob24zMy5saWIiDQogCQkJCVRhcmdldE1hY2hpbmU9IjAiLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ01JRExUb29sIi8+DQpAQCAtMjMzLDE1ICsyMzMsMTUgQEAKIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQogCQkJCUFkZGl0aW9uYWxPcHRpb25zPSIgL01BQ0hJTkU6QU1ENjQgL1VTRUxJTks6TVNfU0RLIg0KIAkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSJnZXRidWlsZGluZm8ubyINCi0JCQkJT3V0cHV0RmlsZT0iLi9weXRob24zMi5kbGwiDQorCQkJCU91dHB1dEZpbGU9Ii4vcHl0aG9uMzMuZGxsIg0KIAkJCQlMaW5rSW5jcmVtZW50YWw9IjEiDQogCQkJCVN1cHByZXNzU3RhcnR1cEJhbm5lcj0iVFJVRSINCiAJCQkJSWdub3JlRGVmYXVsdExpYnJhcnlOYW1lcz0ibGliYyINCiAJCQkJR2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9uPSJUUlVFIg0KLQkJCQlQcm9ncmFtRGF0YWJhc2VGaWxlPSIuXC4vcHl0aG9uMzIucGRiIg0KKwkJCQlQcm9ncmFtRGF0YWJhc2VGaWxlPSIuXC4vcHl0aG9uMzMucGRiIg0KIAkJCQlTdWJTeXN0ZW09IjIiDQogCQkJCUJhc2VBZGRyZXNzPSIweDFlMDAwMDAwIg0KLQkJCQlJbXBvcnRMaWJyYXJ5PSIuXC4vcHl0aG9uMzIubGliIg0KKwkJCQlJbXBvcnRMaWJyYXJ5PSIuXC4vcHl0aG9uMzMubGliIg0KIAkJCQlUYXJnZXRNYWNoaW5lPSIwIi8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNNSURMVG9vbCIvPg0KZGlmZiAtLWdpdCBhL1BDL1ZTNy4xL3JlYWRtZS50eHQgYi9QQy9WUzcuMS9yZWFkbWUudHh0CmluZGV4IDhmYjA2OWYuLmJmZDhhNzAgMTAwNjQ0Ci0tLSBhL1BDL1ZTNy4xL3JlYWRtZS50eHQKKysrIGIvUEMvVlM3LjEvcmVhZG1lLnR4dApAQCAtMTIsNyArMTIsNyBAQAogVGhlIHByb3BlciBvcmRlciB0byBidWlsZCBzdWJwcm9qZWN0czoKIAogMSkgcHl0aG9uY29yZSAodGhpcyBidWlsZHMgdGhlIG1haW4gUHl0aG9uIERMTCBhbmQgbGlicmFyeSBmaWxlcywKLSAgICAgICAgICAgICAgIHB5dGhvbjI2LntkbGwsIGxpYn0gaW4gUmVsZWFzZSBtb2RlKQorICAgICAgICAgICAgICAgcHl0aG9uMzMue2RsbCwgbGlifSBpbiBSZWxlYXNlIG1vZGUpCiAgICAgICAgICAgICAgIE5PVEU6ICBpbiBwcmV2aW91cyByZWxlYXNlcywgdGhpcyBzdWJwcm9qZWN0IHdhcwogICAgICAgICAgICAgICBuYW1lZCBhZnRlciB0aGUgcmVsZWFzZSBudW1iZXIsIGUuZy4gcHl0aG9uMjAuCiAKQEAgLTI2LDcgKzI2LDcgQEAKICAgIHRlc3Qgc2xhdmU7IHNlZSBTVUJQUk9KRUNUUyBiZWxvdykKIAogV2hlbiB1c2luZyB0aGUgRGVidWcgc2V0dGluZywgdGhlIG91dHB1dCBmaWxlcyBoYXZlIGEgX2QgYWRkZWQgdG8KLXRoZWlyIG5hbWU6ICBweXRob24yNl9kLmRsbCwgcHl0aG9uX2QuZXhlLCBwYXJzZXJfZC5weWQsIGFuZCBzbyBvbi4KK3RoZWlyIG5hbWU6ICBweXRob24zM19kLmRsbCwgcHl0aG9uX2QuZXhlLCBwYXJzZXJfZC5weWQsIGFuZCBzbyBvbi4KIAogU1VCUFJPSkVDVFMKIC0tLS0tLS0tLS0tCmRpZmYgLS1naXQgYS9QQy9WUzguMC9fbXVsdGlwcm9jZXNzaW5nLnZjcHJvaiBiL1BDL1ZTOC4wL19tdWx0aXByb2Nlc3NpbmcudmNwcm9qCmluZGV4IGMyYmJlYzQuLjhmMWNhZmMgMTAwNjQ0Ci0tLSBhL1BDL1ZTOC4wL19tdWx0aXByb2Nlc3NpbmcudmNwcm9qCisrKyBiL1BDL1ZTOC4wL19tdWx0aXByb2Nlc3NpbmcudmNwcm9qCkBAIC01MjIsMTAgKzUyMiw2IEBACiAJCQkJUmVsYXRpdmVQYXRoPSIuLlwuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3NpbmdcbXVsdGlwcm9jZXNzaW5nLmgiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlwuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3NpbmdcY29ubmVjdGlvbi5oIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KIAkJPC9GaWx0ZXI+DQogCQk8RmlsdGVyDQogCQkJTmFtZT0iU291cmNlIEZpbGVzIg0KQEAgLTUzNSwxOCArNTMxLDEwIEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXC4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xwaXBlX2Nvbm5lY3Rpb24uYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXC4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xzZW1hcGhvcmUuYyINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXC4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xzb2NrZXRfY29ubmVjdGlvbi5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXHdpbjMyX2Z1bmN0aW9ucy5jIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KZGlmZiAtLWdpdCBhL1BDL1ZTOC4wL2J1aWxkX3NzbC5iYXQgYi9QQy9WUzguMC9idWlsZF9zc2wuYmF0CmluZGV4IDM5YzFmZjAuLjM1N2IwOGIgMTAwNjQ0Ci0tLSBhL1BDL1ZTOC4wL2J1aWxkX3NzbC5iYXQKKysrIGIvUEMvVlM4LjAvYnVpbGRfc3NsLmJhdApAQCAtMiwxMCArMiwxMCBAQAogaWYgbm90IGRlZmluZWQgSE9TVF9QWVRIT04gKAogICBpZiAlMSBFUVUgRGVidWcgKAogICAgIHNldCBIT1NUX1BZVEhPTj1weXRob25fZC5leGUKLSAgICBpZiBub3QgZXhpc3QgcHl0aG9uMzJfZC5kbGwgZXhpdCAxCisgICAgaWYgbm90IGV4aXN0IHB5dGhvbjMzX2QuZGxsIGV4aXQgMQogICApIEVMU0UgKAogICAgIHNldCBIT1NUX1BZVEhPTj1weXRob24uZXhlCi0gICAgaWYgbm90IGV4aXN0IHB5dGhvbjMyLmRsbCBleGl0IDEKKyAgICBpZiBub3QgZXhpc3QgcHl0aG9uMzMuZGxsIGV4aXQgMQogICApCiApCiAlSE9TVF9QWVRIT04lIGJ1aWxkX3NzbC5weSAlMSAlMiAlMwpkaWZmIC0tZ2l0IGEvUEMvVlM4LjAva2lsbF9weXRob24uYyBiL1BDL1ZTOC4wL2tpbGxfcHl0aG9uLmMKaW5kZXggNmI5MTY3OC4uYmIzMjNkMyAxMDA2NDQKLS0tIGEvUEMvVlM4LjAva2lsbF9weXRob24uYworKysgYi9QQy9WUzguMC9raWxsX3B5dGhvbi5jCkBAIC0xMDYsNyArMTA2LDcgQEAKICAgICAgICAgLyoKICAgICAgICAgICogWFhYIFRPRE86IGlmIHdlIHJlYWxseSB3YW50ZWQgdG8gYmUgZmFuY3ksIHdlIGNvdWxkIGNoZWNrIHRoZSAKICAgICAgICAgICogbW9kdWxlcyBmb3IgYWxsIHByb2Nlc3NlcyAobm90IGp1c3QgdGhlIHB5dGhvbltfZF0uZXhlIG9uZXMpCi0gICAgICAgICAqIGFuZCBzZWUgaWYgYW55IG9mIG91ciBETExzIGFyZSBsb2FkZWQgKGkuZS4gcHl0aG9uMzJbX2RdLmRsbCksCisgICAgICAgICAqIGFuZCBzZWUgaWYgYW55IG9mIG91ciBETExzIGFyZSBsb2FkZWQgKGkuZS4gcHl0aG9uMzNbX2RdLmRsbCksCiAgICAgICAgICAqIGFzIHRoYXQgd291bGQgYWxzbyBpbmhpYml0IG91ciBhYmlsaXR5IHRvIHJlYnVpbGQgdGhlIHNvbHV0aW9uLgogICAgICAgICAgKiBOb3Qgd29ydGggbG9vc2luZyBzbGVlcCBvdmVyIHRob3VnaDsgZm9yIG5vdywgYSBzaW1wbGUgY2hlY2sgCiAgICAgICAgICAqIGZvciBqdXN0IHRoZSBweXRob24gZXhlY3V0YWJsZSBzaG91bGQgYmUgc3VmZmljaWVudC4KZGlmZiAtLWdpdCBhL1BDL1ZTOC4wL3B5cHJvamVjdC52c3Byb3BzIGIvUEMvVlM4LjAvcHlwcm9qZWN0LnZzcHJvcHMKaW5kZXggNjQ5NDIxNi4uNGE1ODJmMSAxMDA2NDQKLS0tIGEvUEMvVlM4LjAvcHlwcm9qZWN0LnZzcHJvcHMKKysrIGIvUEMvVlM4LjAvcHlwcm9qZWN0LnZzcHJvcHMKQEAgLTM4LDcgKzM4LDcgQEAKIAkvPg0KIAk8VXNlck1hY3JvDQogCQlOYW1lPSJQeURsbE5hbWUiDQotCQlWYWx1ZT0icHl0aG9uMzIiDQorCQlWYWx1ZT0icHl0aG9uMzMiDQogCS8+DQogCTxVc2VyTWFjcm8NCiAJCU5hbWU9IlB5dGhvbkV4ZSINCmRpZmYgLS1naXQgYS9QQy9fbXNpLmMgYi9QQy9fbXNpLmMKaW5kZXggZDRkODQ4My4uMGI1Yjk0ZSAxMDA2NDQKLS0tIGEvUEMvX21zaS5jCisrKyBiL1BDL19tc2kuYwpAQCAtMTgsNyArMTgsNyBAQAogdXVpZGNyZWF0ZShQeU9iamVjdCogb2JqLCBQeU9iamVjdCphcmdzKQogewogICAgIFVVSUQgcmVzdWx0OwotICAgIHVuc2lnbmVkIHNob3J0ICpjcmVzdWx0OworICAgIHdjaGFyX3QgKmNyZXN1bHQ7CiAgICAgUHlPYmplY3QgKm9yZXN1bHQ7CiAKICAgICAvKiBNYXkgcmV0dXJuIG9rLCBsb2NhbCBvbmx5LCBhbmQgbm8gYWRkcmVzcy4KQEAgLTM1LDcgKzM1LDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgb3Jlc3VsdCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShjcmVzdWx0LCB3Y3NsZW4oY3Jlc3VsdCkpOworICAgIG9yZXN1bHQgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKGNyZXN1bHQsIHdjc2xlbihjcmVzdWx0KSk7CiAgICAgUnBjU3RyaW5nRnJlZVcoJmNyZXN1bHQpOwogICAgIHJldHVybiBvcmVzdWx0OwogCkBAIC0xMjIsNyArMTIyLDkgQEAKIHN0YXRpYyBGTkZDSVNUQVRVUyhjYl9zdGF0dXMpCiB7CiAgICAgaWYgKHB2KSB7Ci0gICAgICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHB2LCAic3RhdHVzIiwgImlpaSIsIHR5cGVTdGF0dXMsIGNiMSwgY2IyKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoc3RhdHVzKTsKKworICAgICAgICBQeU9iamVjdCAqcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChwdiwgJlB5SWRfc3RhdHVzLCAiaWlpIiwgdHlwZVN0YXR1cywgY2IxLCBjYjIpOwogICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwpAQCAtMTMzLDcgKzEzNSw5IEBACiBzdGF0aWMgRk5GQ0lHRVRORVhUQ0FCSU5FVChjYl9nZXRuZXh0Y2FiaW5ldCkKIHsKICAgICBpZiAocHYpIHsKLSAgICAgICAgUHlPYmplY3QgKnJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QocHYsICJnZXRuZXh0Y2FiaW5ldCIsICJpIiwgcGNjYWItPmlDYWIpOworICAgICAgICBfUHlfSURFTlRJRklFUihnZXRuZXh0Y2FiaW5ldCk7CisKKyAgICAgICAgUHlPYmplY3QgKnJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocHYsICZQeUlkX2dldG5leHRjYWJpbmV0LCAiaSIsIHBjY2FiLT5pQ2FiKTsKICAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICBpZiAoIVB5Qnl0ZXNfQ2hlY2socmVzdWx0KSkgewpAQCAtMzc1LDcgKzM3OSw3IEBACiAgICAgfQogICAgIGlmIChzdGF0dXMgIT0gRVJST1JfU1VDQ0VTUykKICAgICAgICAgcmV0dXJuIG1zaWVycm9yKChpbnQpIHN0YXR1cyk7Ci0gICAgc3RyaW5nID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHJlcywgc2l6ZSk7CisgICAgc3RyaW5nID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihyZXMsIHNpemUpOwogICAgIGlmIChidWYgIT0gcmVzKQogICAgICAgICBmcmVlKHJlcyk7CiAgICAgcmV0dXJuIHN0cmluZzsKQEAgLTM5Nyw3ICs0MDEsNyBAQAogewogICAgIGludCBzdGF0dXM7CiAgICAgaW50IGZpZWxkOwotICAgIFB5X1VOSUNPREUgKmRhdGE7CisgICAgd2NoYXJfdCAqZGF0YTsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaXU6U2V0U3RyaW5nIiwgJmZpZWxkLCAmZGF0YSkpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNDE0LDcgKzQxOCw3IEBACiB7CiAgICAgaW50IHN0YXR1czsKICAgICBpbnQgZmllbGQ7Ci0gICAgUHlfVU5JQ09ERSAqZGF0YTsKKyAgICB3Y2hhcl90ICpkYXRhOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpdTpTZXRTdHJlYW0iLCAmZmllbGQsICZkYXRhKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CmRpZmYgLS1naXQgYS9QQy9fc3VicHJvY2Vzcy5jIGIvUEMvX3N1YnByb2Nlc3MuYwppbmRleCAyMzM4ZjMwLi45M2U1MWQzIDEwMDY0NAotLS0gYS9QQy9fc3VicHJvY2Vzcy5jCisrKyBiL1BDL19zdWJwcm9jZXNzLmMKQEAgLTMyOSwxMiArMzI5LDkgQEAKIHN0YXRpYyBQeU9iamVjdCoKIGdldGVudmlyb25tZW50KFB5T2JqZWN0KiBlbnZpcm9ubWVudCkKIHsKLSAgICBpbnQgaTsKLSAgICBQeV9zc2l6ZV90IGVudnNpemU7Ci0gICAgUHlPYmplY3QqIG91dCA9IE5VTEw7Ci0gICAgUHlPYmplY3QqIGtleXM7Ci0gICAgUHlPYmplY3QqIHZhbHVlczsKLSAgICBQeV9VTklDT0RFKiBwOworICAgIFB5X3NzaXplX3QgaSwgZW52c2l6ZSwgdG90YWxzaXplOworICAgIFB5X1VDUzQgKmJ1ZmZlciA9IE5VTEwsICpwLCAqZW5kOworICAgIFB5T2JqZWN0ICprZXlzLCAqdmFsdWVzLCAqcmVzOwogCiAgICAgLyogY29udmVydCBlbnZpcm9ubWVudCBkaWN0aW9uYXJ5IHRvIHdpbmRvd3MgZW52aXJvbWVudCBzdHJpbmcgKi8KICAgICBpZiAoISBQeU1hcHBpbmdfQ2hlY2soZW52aXJvbm1lbnQpKSB7CkBAIC0zNTAsMTQgKzM0Nyw4IEBACiAgICAgaWYgKCFrZXlzIHx8ICF2YWx1ZXMpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAKLSAgICBvdXQgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgMjA0OCk7Ci0gICAgaWYgKCEgb3V0KQotICAgICAgICBnb3RvIGVycm9yOwotCi0gICAgcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKG91dCk7Ci0KKyAgICB0b3RhbHNpemUgPSAxOyAvKiB0cmFpbGluZyBudWxsIGNoYXJhY3RlciAqLwogICAgIGZvciAoaSA9IDA7IGkgPCBlbnZzaXplOyBpKyspIHsKLSAgICAgICAgUHlfc3NpemVfdCBrc2l6ZSwgdnNpemUsIHRvdGFsc2l6ZTsKICAgICAgICAgUHlPYmplY3QqIGtleSA9IFB5TGlzdF9HRVRfSVRFTShrZXlzLCBpKTsKICAgICAgICAgUHlPYmplY3QqIHZhbHVlID0gUHlMaXN0X0dFVF9JVEVNKHZhbHVlcywgaSk7CiAKQEAgLTM2NiwzNiArMzU3LDQyIEBACiAgICAgICAgICAgICAgICAgImVudmlyb25tZW50IGNhbiBvbmx5IGNvbnRhaW4gc3RyaW5ncyIpOwogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQotICAgICAgICBrc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShrZXkpOwotICAgICAgICB2c2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRSh2YWx1ZSk7Ci0gICAgICAgIHRvdGFsc2l6ZSA9IChwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUob3V0KSkgKyBrc2l6ZSArIDEgKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2c2l6ZSArIDEgKyAxOwotICAgICAgICBpZiAodG90YWxzaXplID4gUHlVbmljb2RlX0dFVF9TSVpFKG91dCkpIHsKLSAgICAgICAgICAgIFB5X3NzaXplX3Qgb2Zmc2V0ID0gcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKG91dCk7Ci0gICAgICAgICAgICBQeVVuaWNvZGVfUmVzaXplKCZvdXQsIHRvdGFsc2l6ZSArIDEwMjQpOwotICAgICAgICAgICAgcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKG91dCkgKyBvZmZzZXQ7Ci0gICAgICAgIH0KLSAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHAsIFB5VW5pY29kZV9BU19VTklDT0RFKGtleSksIGtzaXplKTsKLSAgICAgICAgcCArPSBrc2l6ZTsKKyAgICAgICAgdG90YWxzaXplICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGtleSkgKyAxOyAgICAvKiArMSBmb3IgJz0nICovCisgICAgICAgIHRvdGFsc2l6ZSArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh2YWx1ZSkgKyAxOyAgLyogKzEgZm9yICdcMCcgKi8KKyAgICB9CisKKyAgICBidWZmZXIgPSBQeU1lbV9NYWxsb2ModG90YWxzaXplICogc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICBpZiAoISBidWZmZXIpCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgcCA9IGJ1ZmZlcjsKKyAgICBlbmQgPSBidWZmZXIgKyB0b3RhbHNpemU7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgZW52c2l6ZTsgaSsrKSB7CisgICAgICAgIFB5T2JqZWN0KiBrZXkgPSBQeUxpc3RfR0VUX0lURU0oa2V5cywgaSk7CisgICAgICAgIFB5T2JqZWN0KiB2YWx1ZSA9IFB5TGlzdF9HRVRfSVRFTSh2YWx1ZXMsIGkpOworICAgICAgICBpZiAoIVB5VW5pY29kZV9Bc1VDUzQoa2V5LCBwLCBlbmQgLSBwLCAwKSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIHAgKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgoa2V5KTsKICAgICAgICAgKnArKyA9ICc9JzsKLSAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHAsIFB5VW5pY29kZV9BU19VTklDT0RFKHZhbHVlKSwgdnNpemUpOwotICAgICAgICBwICs9IHZzaXplOworICAgICAgICBpZiAoIVB5VW5pY29kZV9Bc1VDUzQodmFsdWUsIHAsIGVuZCAtIHAsIDApKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgcCArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh2YWx1ZSk7CiAgICAgICAgICpwKysgPSAnXDAnOwogICAgIH0KIAogICAgIC8qIGFkZCB0cmFpbGluZyBudWxsIGJ5dGUgKi8KICAgICAqcCsrID0gJ1wwJzsKLSAgICBQeVVuaWNvZGVfUmVzaXplKCZvdXQsIHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvdXQpKTsKLQotICAgIC8qIFB5T2JqZWN0X1ByaW50KG91dCwgc3Rkb3V0LCAwKTsgKi8KKyAgICBhc3NlcnQocCA9PSBlbmQpOwogCiAgICAgUHlfWERFQ1JFRihrZXlzKTsKICAgICBQeV9YREVDUkVGKHZhbHVlcyk7CiAKLSAgICByZXR1cm4gb3V0OworICAgIHJlcyA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoUHlVbmljb2RlXzRCWVRFX0tJTkQsIGJ1ZmZlciwgcCAtIGJ1ZmZlcik7CisgICAgUHlNZW1fRnJlZShidWZmZXIpOworICAgIHJldHVybiByZXM7CiAKICBlcnJvcjoKLSAgICBQeV9YREVDUkVGKG91dCk7CisgICAgUHlNZW1fRnJlZShidWZmZXIpOwogICAgIFB5X1hERUNSRUYoa2V5cyk7CiAgICAgUHlfWERFQ1JFRih2YWx1ZXMpOwogICAgIHJldHVybiBOVUxMOwpAQCAtNDIwLDE1ICs0MTcsMTYgQEAKICAgICBQUk9DRVNTX0lORk9STUFUSU9OIHBpOwogICAgIFNUQVJUVVBJTkZPVyBzaTsKICAgICBQeU9iamVjdCogZW52aXJvbm1lbnQ7CisgICAgd2NoYXJfdCAqd2Vudmlyb25tZW50OwogCi0gICAgUHlfVU5JQ09ERSogYXBwbGljYXRpb25fbmFtZTsKLSAgICBQeV9VTklDT0RFKiBjb21tYW5kX2xpbmU7CisgICAgd2NoYXJfdCogYXBwbGljYXRpb25fbmFtZTsKKyAgICB3Y2hhcl90KiBjb21tYW5kX2xpbmU7CiAgICAgUHlPYmplY3QqIHByb2Nlc3NfYXR0cmlidXRlczsgLyogaWdub3JlZCAqLwogICAgIFB5T2JqZWN0KiB0aHJlYWRfYXR0cmlidXRlczsgLyogaWdub3JlZCAqLwogICAgIGludCBpbmhlcml0X2hhbmRsZXM7CiAgICAgaW50IGNyZWF0aW9uX2ZsYWdzOwogICAgIFB5T2JqZWN0KiBlbnZfbWFwcGluZzsKLSAgICBQeV9VTklDT0RFKiBjdXJyZW50X2RpcmVjdG9yeTsKKyAgICB3Y2hhcl90KiBjdXJyZW50X2RpcmVjdG9yeTsKICAgICBQeU9iamVjdCogc3RhcnR1cF9pbmZvOwogCiAgICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiWlpPT2lpT1pPOkNyZWF0ZVByb2Nlc3MiLApAQCAtNDU2LDEyICs0NTQsMjAgQEAKICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoZW52X21hcHBpbmcgPT0gUHlfTm9uZSkKLSAgICAgICAgZW52aXJvbm1lbnQgPSBOVUxMOwotICAgIGVsc2UgeworICAgIGlmIChlbnZfbWFwcGluZyAhPSBQeV9Ob25lKSB7CiAgICAgICAgIGVudmlyb25tZW50ID0gZ2V0ZW52aXJvbm1lbnQoZW52X21hcHBpbmcpOwogICAgICAgICBpZiAoISBlbnZpcm9ubWVudCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB3ZW52aXJvbm1lbnQgPSBQeVVuaWNvZGVfQXNVbmljb2RlKGVudmlyb25tZW50KTsKKyAgICAgICAgaWYgKHdlbnZpcm9ubWVudCA9PSBOVUxMKQorICAgICAgICB7CisgICAgICAgICAgICBQeV9YREVDUkVGKGVudmlyb25tZW50KTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBlbnZpcm9ubWVudCA9IE5VTEw7CisgICAgICAgIHdlbnZpcm9ubWVudCA9IE5VTEw7CiAgICAgfQogCiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwpAQCAtNDcxLDcgKzQ3Nyw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5oZXJpdF9oYW5kbGVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRpb25fZmxhZ3MgfCBDUkVBVEVfVU5JQ09ERV9FTlZJUk9OTUVOVCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudmlyb25tZW50ID8gUHlVbmljb2RlX0FTX1VOSUNPREUoZW52aXJvbm1lbnQpIDogTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHdlbnZpcm9ubWVudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRfZGlyZWN0b3J5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJnNpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBpKTsKQEAgLTYwOSw3ICs2MTUsNyBAQAogICAgIGlmICghIHJlc3VsdCkKICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKEdldExhc3RFcnJvcigpKTsKIAotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoZmlsZW5hbWUsIFB5X1VOSUNPREVfc3RybGVuKGZpbGVuYW1lKSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoZmlsZW5hbWUsIHdjc2xlbihmaWxlbmFtZSkpOwogfQogCiBzdGF0aWMgUHlNZXRob2REZWYgc3BfZnVuY3Rpb25zW10gPSB7CkBAIC02ODIsNiArNjg4LDcgQEAKICAgICBkZWZpbnQoZCwgIlNXX0hJREUiLCBTV19ISURFKTsKICAgICBkZWZpbnQoZCwgIklORklOSVRFIiwgSU5GSU5JVEUpOwogICAgIGRlZmludChkLCAiV0FJVF9PQkpFQ1RfMCIsIFdBSVRfT0JKRUNUXzApOworICAgIGRlZmludChkLCAiV0FJVF9USU1FT1VUIiwgV0FJVF9USU1FT1VUKTsKICAgICBkZWZpbnQoZCwgIkNSRUFURV9ORVdfQ09OU09MRSIsIENSRUFURV9ORVdfQ09OU09MRSk7CiAgICAgZGVmaW50KGQsICJDUkVBVEVfTkVXX1BST0NFU1NfR1JPVVAiLCBDUkVBVEVfTkVXX1BST0NFU1NfR1JPVVApOwogCmRpZmYgLS1naXQgYS9QQy9jb25maWcuYyBiL1BDL2NvbmZpZy5jCmluZGV4IDFmYzJiNDAuLmJlNTFiNTUgMTAwNjQ0Ci0tLSBhL1BDL2NvbmZpZy5jCisrKyBiL1BDL2NvbmZpZy5jCkBAIC0xMiw2ICsxMiw3IEBACiBleHRlcm4gUHlPYmplY3QqIFB5SW5pdF9iaW5hc2NpaSh2b2lkKTsKIGV4dGVybiBQeU9iamVjdCogUHlJbml0X2NtYXRoKHZvaWQpOwogZXh0ZXJuIFB5T2JqZWN0KiBQeUluaXRfZXJybm8odm9pZCk7CitleHRlcm4gUHlPYmplY3QqIFB5SW5pdF9mYXVsdGhhbmRsZXIodm9pZCk7CiBleHRlcm4gUHlPYmplY3QqIFB5SW5pdF9nYyh2b2lkKTsKIGV4dGVybiBQeU9iamVjdCogUHlJbml0X21hdGgodm9pZCk7CiBleHRlcm4gUHlPYmplY3QqIFB5SW5pdF9fbWQ1KHZvaWQpOwpAQCAtODIsNiArODMsNyBAQAogICAgIHsiYmluYXNjaWkiLCBQeUluaXRfYmluYXNjaWl9LAogICAgIHsiY21hdGgiLCBQeUluaXRfY21hdGh9LAogICAgIHsiZXJybm8iLCBQeUluaXRfZXJybm99LAorICAgIHsiZmF1bHRoYW5kbGVyIiwgUHlJbml0X2ZhdWx0aGFuZGxlcn0sCiAgICAgeyJnYyIsIFB5SW5pdF9nY30sCiAgICAgeyJtYXRoIiwgUHlJbml0X21hdGh9LAogICAgIHsibnQiLCBQeUluaXRfbnR9LCAvKiBVc2UgdGhlIE5UIG9zIGZ1bmN0aW9ucywgbm90IHBvc2l4ICovCmRpZmYgLS1naXQgYS9QQy9leGFtcGxlX250L2V4YW1wbGUudmNwcm9qIGIvUEMvZXhhbXBsZV9udC9leGFtcGxlLnZjcHJvagppbmRleCBmOTI0YzdkLi5mYmEwMGI2IDEwMDY0NAotLS0gYS9QQy9leGFtcGxlX250L2V4YW1wbGUudmNwcm9qCisrKyBiL1BDL2V4YW1wbGVfbnQvZXhhbXBsZS52Y3Byb2oKQEAgLTM5LDcgKzM5LDcgQEAKIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTGlua2VyVG9vbCINCiAJCQkJQWRkaXRpb25hbE9wdGlvbnM9Ii9leHBvcnQ6aW5pdGV4YW1wbGUiDQotCQkJCUFkZGl0aW9uYWxEZXBlbmRlbmNpZXM9Im9kYmMzMi5saWIgb2RiY2NwMzIubGliIHB5dGhvbjI2LmxpYiINCisJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0ib2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgcHl0aG9uMzMubGliIg0KIAkJCQlPdXRwdXRGaWxlPSIuXFJlbGVhc2UvZXhhbXBsZS5weWQiDQogCQkJCUxpbmtJbmNyZW1lbnRhbD0iMSINCiAJCQkJU3VwcHJlc3NTdGFydHVwQmFubmVyPSJUUlVFIg0KQEAgLTEwNSw3ICsxMDUsNyBAQAogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNMaW5rZXJUb29sIg0KIAkJCQlBZGRpdGlvbmFsT3B0aW9ucz0iL2V4cG9ydDppbml0ZXhhbXBsZSINCi0JCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0ib2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgcHl0aG9uMjZfZC5saWIiDQorCQkJCUFkZGl0aW9uYWxEZXBlbmRlbmNpZXM9Im9kYmMzMi5saWIgb2RiY2NwMzIubGliIHB5dGhvbjMzX2QubGliIg0KIAkJCQlPdXRwdXRGaWxlPSIuXERlYnVnL2V4YW1wbGVfZC5weWQiDQogCQkJCUxpbmtJbmNyZW1lbnRhbD0iMSINCiAJCQkJU3VwcHJlc3NTdGFydHVwQmFubmVyPSJUUlVFIg0KZGlmZiAtLWdpdCBhL1BDL2Zyb3plbl9kbGxtYWluLmMgYi9QQy9mcm96ZW5fZGxsbWFpbi5jCmluZGV4IGE4Y2M4ODUuLjAxNTZjNTAgMTAwNjQ0Ci0tLSBhL1BDL2Zyb3plbl9kbGxtYWluLmMKKysrIGIvUEMvZnJvemVuX2RsbG1haW4uYwpAQCAtNzcsNyArNzcsNyBAQAogewogICAgIC8vIE11c3QgZ28gYmFja3dhcmRzCiAgICAgY2hhciAqKm1vZE5hbWU7Ci0gICAgZm9yIChtb2ROYW1lID0gcG9zc2libGVNb2R1bGVzKyhzaXplb2YocG9zc2libGVNb2R1bGVzKSAvIHNpemVvZihjaGFyICopKS0yOworICAgIGZvciAobW9kTmFtZSA9IHBvc3NpYmxlTW9kdWxlcytQeV9BUlJBWV9MRU5HVEgocG9zc2libGVNb2R1bGVzKS0yOwogICAgICAgICAgbW9kTmFtZSA+PSBwb3NzaWJsZU1vZHVsZXM7CiAgICAgICAgICAqbW9kTmFtZS0tKSB7CiAvKiAgICAgICAgICAgICAgcHJpbnRmKCJUZXJtaW5hdGluZyAnJXMnXG4iLCAqbW9kTmFtZSk7Ki8KQEAgLTEwMyw3ICsxMDMsNyBAQAogICAgICAgICB7CiAgICAgICAgICAgICAvLyBNdXN0IGdvIGJhY2t3YXJkcwogICAgICAgICAgICAgY2hhciAqKm1vZE5hbWU7Ci0gICAgICAgICAgICBmb3IgKG1vZE5hbWUgPSBwb3NzaWJsZU1vZHVsZXMrKHNpemVvZihwb3NzaWJsZU1vZHVsZXMpIC8gc2l6ZW9mKGNoYXIgKikpLTI7CisgICAgICAgICAgICBmb3IgKG1vZE5hbWUgPSBwb3NzaWJsZU1vZHVsZXMrUHlfQVJSQVlfTEVOR1RIKHBvc3NpYmxlTW9kdWxlcyktMjsKICAgICAgICAgICAgICAgICAgbW9kTmFtZSA+PSBwb3NzaWJsZU1vZHVsZXM7CiAgICAgICAgICAgICAgICAgICptb2ROYW1lLS0pCiAgICAgICAgICAgICAgICAgQ2FsbE1vZHVsZURsbE1haW4oKm1vZE5hbWUsIERMTF9QUk9DRVNTX0RFVEFDSCk7CkBAIC0xMTgsNyArMTE4LDcgQEAKICAgICBCT09MIChXSU5BUEkgKiBwZm5kbGxtYWluKShISU5TVEFOQ0UsIERXT1JELCBMUFZPSUQpOwogCiAgICAgY2hhciBmdW5jTmFtZVsyNTVdOwotICAgIEhNT0RVTEUgaG1vZCA9IEdldE1vZHVsZUhhbmRsZShOVUxMKTsKKyAgICBITU9EVUxFIGhtb2QgPSBHZXRNb2R1bGVIYW5kbGVXKE5VTEwpOwogICAgIHN0cmNweShmdW5jTmFtZSwgIl9EbGxNYWluIik7CiAgICAgc3RyY2F0KGZ1bmNOYW1lLCBtb2ROYW1lKTsKICAgICBzdHJjYXQoZnVuY05hbWUsICJAMTIiKTsgLy8gc3RkY2FsbCBjb252ZW50aW9uLgpkaWZmIC0tZ2l0IGEvUEMvZ2V0cGF0aHAuYyBiL1BDL2dldHBhdGhwLmMKaW5kZXggY2QzYTRiMi4uODkyMWFhMCAxMDA2NDQKLS0tIGEvUEMvZ2V0cGF0aHAuYworKysgYi9QQy9nZXRwYXRocC5jCkBAIC0yNTEsNyArMjUxLDcgQEAKICAgICBpZiAoa2V5QnVmPT1OVUxMKSBnb3RvIGRvbmU7CiAKICAgICBtZW1jcHkoa2V5QnVmUHRyLCBrZXlQcmVmaXgsIHNpemVvZihrZXlQcmVmaXgpLXNpemVvZihXQ0hBUikpOwotICAgIGtleUJ1ZlB0ciArPSBzaXplb2Yoa2V5UHJlZml4KS9zaXplb2YoV0NIQVIpIC0gMTsKKyAgICBrZXlCdWZQdHIgKz0gUHlfQVJSQVlfTEVOR1RIKGtleVByZWZpeCkgLSAxOwogICAgIG1ic3Rvd2NzKGtleUJ1ZlB0ciwgUHlXaW5fRExMVmVyc2lvblN0cmluZywgdmVyc2lvbkxlbik7CiAgICAga2V5QnVmUHRyICs9IHZlcnNpb25MZW47CiAgICAgLyogTlVMTCBjb21lcyB3aXRoIHRoaXMgb25lISAqLwpAQCAtNzA4LDggKzcwOCw4IEBACiAgICAgcmV0dXJuIHByb2dwYXRoOwogfQogCi0vKiBMb2FkIHB5dGhvbjMuZGxsIGJlZm9yZSBsb2FkaW5nIGFueSBleHRlbnNpb24gbW9kdWxlIHRoYXQgbWlnaHQgcmVmZXIgCi0gICB0byBpdC4gVGhhdCB3YXksIHdlIGNhbiBiZSBzdXJlIHRoYXQgYWx3YXlzIHRoZSBweXRob24zLmRsbCBjb3JyZXNwb25kaW5nIAorLyogTG9hZCBweXRob24zLmRsbCBiZWZvcmUgbG9hZGluZyBhbnkgZXh0ZW5zaW9uIG1vZHVsZSB0aGF0IG1pZ2h0IHJlZmVyCisgICB0byBpdC4gVGhhdCB3YXksIHdlIGNhbiBiZSBzdXJlIHRoYXQgYWx3YXlzIHRoZSBweXRob24zLmRsbCBjb3JyZXNwb25kaW5nCiAgICB0byB0aGlzIHB5dGhvbiBETEwgaXMgbG9hZGVkLCBub3QgYSBweXRob24zLmRsbCB0aGF0IG1pZ2h0IGJlIG9uIHRoZSBwYXRoCiAgICBieSBjaGFuY2UuCiAgICBSZXR1cm4gd2hldGhlciB0aGUgRExMIHdhcyBmb3VuZC4KZGlmZiAtLWdpdCBhL1BDL2ltcG9ydF9udC5jIGIvUEMvaW1wb3J0X250LmMKaW5kZXggMTk2YTc3NC4uYjliMzZkYyAxMDA2NDQKLS0tIGEvUEMvaW1wb3J0X250LmMKKysrIGIvUEMvaW1wb3J0X250LmMKQEAgLTE1LDcyICsxNSwxMDMgQEAKIC8qIGEgc3RyaW5nIGxvYWRlZCBmcm9tIHRoZSBETEwgYXQgc3RhcnR1cCAqLwogZXh0ZXJuIGNvbnN0IGNoYXIgKlB5V2luX0RMTFZlcnNpb25TdHJpbmc7CiAKLUZJTEUgKlB5V2luX0ZpbmRSZWdpc3RlcmVkTW9kdWxlKGNvbnN0IGNoYXIgKm1vZHVsZU5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZmlsZWRlc2NyICoqcHBGaWxlRGVzYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKnBhdGhCdWYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHBhdGhMZW4pCisvKiBGaW5kIGEgbW9kdWxlIG9uIFdpbmRvd3MuCisKKyAgIFJlYWQgdGhlIHJlZ2lzdHJ5IFNvZnR3YXJlXFB5dGhvblxQeXRob25Db3JlXDx2ZXJzaW9uPlxNb2R1bGVzXDxuYW1lPiAob3IKKyAgIFNvZnR3YXJlXFB5dGhvblxQeXRob25Db3JlXDx2ZXJzaW9uPlxNb2R1bGVzXDxuYW1lPlxEZWJ1ZyBpbiBkZWJ1ZyBtb2RlKQorICAgZnJvbSBIS0VZX0NVUlJFTlRfVVNFUiwgb3IgSEtFWV9MT0NBTF9NQUNISU5FLiBGaW5kIHRoZSBmaWxlIGRlc2NyaXB0b3IgdXNpbmcKKyAgIHRoZSBmaWxlIGV4dGVuc2lvbi4gT3BlbiB0aGUgZmlsZS4KKworICAgT24gc3VjY2Vzcywgd3JpdGUgdGhlIGZpbGUgZGVzY3JpcHRvciBpbnRvICpwcEZpbGVEZXNjLCB0aGUgbW9kdWxlIHBhdGgKKyAgIChVbmljb2RlIG9iamVjdCkgaW50byAqcFBhdGgsIGFuZCByZXR1cm4gdGhlIG9wZW5lZCBmaWxlIG9iamVjdC4gSWYgdGhlCisgICBtb2R1bGUgY2Fubm90IGJlIGZvdW5kIChlLmcuIG5vIHJlZ2lzdHJ5IGtleSBvciB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0KSwKKyAgIHJldHVybiBOVUxMLiBPbiBlcnJvciwgcmFpc2UgYSBQeXRob24gZXhjZXB0aW9uIGFuZCByZXR1cm4gTlVMTC4KKyAqLworRklMRSAqCitfUHlXaW5fRmluZFJlZ2lzdGVyZWRNb2R1bGUoUHlPYmplY3QgKm1vZHVsZU5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGZpbGVkZXNjciAqKnBwRmlsZURlc2MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipwUGF0aCkKIHsKLSAgICBjaGFyICptb2R1bGVLZXk7Ci0gICAgY29uc3QgY2hhciBrZXlQcmVmaXhbXSA9ICJTb2Z0d2FyZVxcUHl0aG9uXFxQeXRob25Db3JlXFwiOwotICAgIGNvbnN0IGNoYXIga2V5U3VmZml4W10gPSAiXFxNb2R1bGVzXFwiOwotI2lmZGVmIF9ERUJVRwotICAgIC8qIEluIGRlYnVnZ2luZyBidWlsZHMsIHdlIF9tdXN0XyBoYXZlIHRoZSBkZWJ1ZyB2ZXJzaW9uCi0gICAgICogcmVnaXN0ZXJlZC4KLSAgICAgKi8KLSAgICBjb25zdCBjaGFyIGRlYnVnU3RyaW5nW10gPSAiXFxEZWJ1ZyI7Ci0jZWxzZQotICAgIGNvbnN0IGNoYXIgZGVidWdTdHJpbmdbXSA9ICIiOwotI2VuZGlmCi0gICAgc3RydWN0IGZpbGVkZXNjciAqZmRwID0gTlVMTDsKLSAgICBGSUxFICpmcDsKLSAgICBIS0VZIGtleUJhc2UgPSBIS0VZX0NVUlJFTlRfVVNFUjsKKyAgICB3Y2hhcl90IHBhdGhCdWZbTUFYUEFUSExFTisxXTsKKyAgICBpbnQgcGF0aExlbiA9IE1BWFBBVEhMRU4rMTsKKyAgICBQeU9iamVjdCAqcGF0aCwgKm1vZHVsZUtleSwgKnN1ZmZpeDsKKyAgICB3Y2hhcl90ICp3bW9kdWxlS2V5LCAqd3N1ZmZpeDsKKyAgICBzdHJ1Y3QgZmlsZWRlc2NyICpmZHA7CisgICAgSEtFWSBrZXlCYXNlOwogICAgIGludCBtb2ROYW1lU2l6ZTsKICAgICBsb25nIHJlZ1N0YXQ7CisgICAgUHlfc3NpemVfdCBleHRMZW47CisgICAgRklMRSAqZnA7CiAKLSAgICAvKiBDYWxjdWxhdGUgdGhlIHNpemUgZm9yIHRoZSBzcHJpbnRmIGJ1ZmZlci4KLSAgICAgKiBHZXQgdGhlIHNpemUgb2YgdGhlIGNoYXJzIG9ubHksIHBsdXMgMSBOVUxMLgotICAgICAqLwotICAgIHNpemVfdCBidWZTaXplID0gc2l6ZW9mKGtleVByZWZpeCktMSArCi0gICAgICAgICAgICAgICAgICAgICBzdHJsZW4oUHlXaW5fRExMVmVyc2lvblN0cmluZykgKwotICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGtleVN1ZmZpeCkgKwotICAgICAgICAgICAgICAgICAgICAgc3RybGVuKG1vZHVsZU5hbWUpICsKLSAgICAgICAgICAgICAgICAgICAgIHNpemVvZihkZWJ1Z1N0cmluZykgLSAxOwotICAgIC8qIGFsbG9jYSA9PSBubyBmcmVlIHJlcXVpcmVkLCBidXQgbWVtb3J5IG9ubHkgbG9jYWwgdG8gZm4sCi0gICAgICogYWxzbyBubyBoZWFwIGZyYWdtZW50YXRpb24hCi0gICAgICovCi0gICAgbW9kdWxlS2V5ID0gYWxsb2NhKGJ1ZlNpemUpOwotICAgIFB5T1Nfc25wcmludGYobW9kdWxlS2V5LCBidWZTaXplLAotICAgICAgICAgICAgICAgICAgIlNvZnR3YXJlXFxQeXRob25cXFB5dGhvbkNvcmVcXCVzXFxNb2R1bGVzXFwlcyVzIiwKLSAgICAgICAgICAgICAgICAgIFB5V2luX0RMTFZlcnNpb25TdHJpbmcsIG1vZHVsZU5hbWUsIGRlYnVnU3RyaW5nKTsKKyAgICBtb2R1bGVLZXkgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgKKyNpZmRlZiBfREVCVUcKKyAgICAgICAgLyogSW4gZGVidWdnaW5nIGJ1aWxkcywgd2UgX211c3RfIGhhdmUgdGhlIGRlYnVnIHZlcnNpb24gcmVnaXN0ZXJlZCAqLworICAgICAgICAiU29mdHdhcmVcXFB5dGhvblxcUHl0aG9uQ29yZVxcJXNcXE1vZHVsZXNcXCVVXFxEZWJ1ZyIsCisjZWxzZQorICAgICAgICAiU29mdHdhcmVcXFB5dGhvblxcUHl0aG9uQ29yZVxcJXNcXE1vZHVsZXNcXCVVIiwKKyNlbmRpZgorICAgICAgICBQeVdpbl9ETExWZXJzaW9uU3RyaW5nLCBtb2R1bGVOYW1lKTsKKyAgICBpZiAobW9kdWxlS2V5ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHdtb2R1bGVLZXkgPSBQeVVuaWNvZGVfQXNVbmljb2RlKG1vZHVsZUtleSk7CisgICAgaWYgKHdtb2R1bGVLZXkgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYobW9kdWxlS2V5KTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogCi0gICAgYXNzZXJ0KHBhdGhMZW4gPCBJTlRfTUFYKTsKLSAgICBtb2ROYW1lU2l6ZSA9IChpbnQpcGF0aExlbjsKLSAgICByZWdTdGF0ID0gUmVnUXVlcnlWYWx1ZShrZXlCYXNlLCBtb2R1bGVLZXksIHBhdGhCdWYsICZtb2ROYW1lU2l6ZSk7CisgICAga2V5QmFzZSA9IEhLRVlfQ1VSUkVOVF9VU0VSOworICAgIG1vZE5hbWVTaXplID0gcGF0aExlbjsKKyAgICByZWdTdGF0ID0gUmVnUXVlcnlWYWx1ZVcoa2V5QmFzZSwgd21vZHVsZUtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aEJ1ZiwgJm1vZE5hbWVTaXplKTsKICAgICBpZiAocmVnU3RhdCAhPSBFUlJPUl9TVUNDRVNTKSB7CiAgICAgICAgIC8qIE5vIHVzZXIgc2V0dGluZyAtIGxvb2t1cCBpbiBtYWNoaW5lIHNldHRpbmdzICovCiAgICAgICAgIGtleUJhc2UgPSBIS0VZX0xPQ0FMX01BQ0hJTkU7CiAgICAgICAgIC8qIGJlIGFuYWwgLSBmYWlsdXJlIG1heSBoYXZlIHJlc2V0IHNpemUgcGFyYW0gKi8KLSAgICAgICAgbW9kTmFtZVNpemUgPSAoaW50KXBhdGhMZW47Ci0gICAgICAgIHJlZ1N0YXQgPSBSZWdRdWVyeVZhbHVlKGtleUJhc2UsIG1vZHVsZUtleSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aEJ1ZiwgJm1vZE5hbWVTaXplKTsKLQotICAgICAgICBpZiAocmVnU3RhdCAhPSBFUlJPUl9TVUNDRVNTKQorICAgICAgICBtb2ROYW1lU2l6ZSA9IHBhdGhMZW47CisgICAgICAgIHJlZ1N0YXQgPSBSZWdRdWVyeVZhbHVlVyhrZXlCYXNlLCB3bW9kdWxlS2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aEJ1ZiwgJm1vZE5hbWVTaXplKTsKKyAgICAgICAgaWYgKHJlZ1N0YXQgIT0gRVJST1JfU1VDQ0VTUykgeworICAgICAgICAgICAgUHlfREVDUkVGKG1vZHVsZUtleSk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgIH0KKyAgICBQeV9ERUNSRUYobW9kdWxlS2V5KTsKKyAgICBpZiAobW9kTmFtZVNpemUgPCAzKSB7CisgICAgICAgIC8qIHBhdGggc2hvcnRlciB0aGFuICJhLm8iIG9yIG5lZ2F0aXZlIGxlbmd0aCAoY2FzdCB0bworICAgICAgICAgICBzaXplX3QgaXMgd3JvbmcpICovCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICAvKiB1c2UgdGhlIGZpbGUgZXh0ZW5zaW9uIHRvIGxvY2F0ZSB0aGUgdHlwZSBlbnRyeS4gKi8KICAgICBmb3IgKGZkcCA9IF9QeUltcG9ydF9GaWxldGFiOyBmZHAtPnN1ZmZpeCAhPSBOVUxMOyBmZHArKykgewotICAgICAgICBzaXplX3QgZXh0TGVuID0gc3RybGVuKGZkcC0+c3VmZml4KTsKLSAgICAgICAgYXNzZXJ0KG1vZE5hbWVTaXplID49IDApOyAvKiBlbHNlIGNhc3QgdG8gc2l6ZV90IGlzIHdyb25nICovCi0gICAgICAgIGlmICgoc2l6ZV90KW1vZE5hbWVTaXplID4gZXh0TGVuICYmCi0gICAgICAgICAgICBzdHJuaWNtcChwYXRoQnVmICsgKChzaXplX3QpbW9kTmFtZVNpemUtZXh0TGVuLTEpLAotICAgICAgICAgICAgICAgICAgICAgZmRwLT5zdWZmaXgsCi0gICAgICAgICAgICAgICAgICAgICBleHRMZW4pID09IDApCisgICAgICAgIHN1ZmZpeCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKGZkcC0+c3VmZml4KTsKKyAgICAgICAgaWYgKHN1ZmZpeCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHdzdWZmaXggPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZShzdWZmaXgsICZleHRMZW4pOworICAgICAgICBpZiAod3N1ZmZpeCA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoc3VmZml4KTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIGlmICgoUHlfc3NpemVfdCltb2ROYW1lU2l6ZSA+IGV4dExlbiAmJgorICAgICAgICAgICAgX3djc25pY21wKHBhdGhCdWYgKyAoKFB5X3NzaXplX3QpbW9kTmFtZVNpemUtZXh0TGVuLTEpLAorICAgICAgICAgICAgICAgICAgICAgIHdzdWZmaXgsCisgICAgICAgICAgICAgICAgICAgICAgZXh0TGVuKSA9PSAwKQorICAgICAgICB7CisgICAgICAgICAgICBQeV9ERUNSRUYoc3VmZml4KTsKICAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRihzdWZmaXgpOwogICAgIH0KICAgICBpZiAoZmRwLT5zdWZmaXggPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZnAgPSBmb3BlbihwYXRoQnVmLCBmZHAtPm1vZGUpOwotICAgIGlmIChmcCAhPSBOVUxMKQotICAgICAgICAqcHBGaWxlRGVzYyA9IGZkcDsKKyAgICBwYXRoID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihwYXRoQnVmLCB3Y3NsZW4ocGF0aEJ1ZikpOworICAgIGlmIChwYXRoID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGZwID0gX1B5X2ZvcGVuKHBhdGgsIGZkcC0+bW9kZSk7CisgICAgaWYgKGZwID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKHBhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgKnBQYXRoID0gcGF0aDsKKyAgICAqcHBGaWxlRGVzYyA9IGZkcDsKICAgICByZXR1cm4gZnA7CiB9CmRpZmYgLS1naXQgYS9QQy9tc3ZjcnRtb2R1bGUuYyBiL1BDL21zdmNydG1vZHVsZS5jCmluZGV4IDE2NmRmMDMuLmYyNzdiMGEgMTAwNzU1Ci0tLSBhL1BDL21zdmNydG1vZHVsZS5jCisrKyBiL1BDL21zdmNydG1vZHVsZS5jCkBAIC0yMTEsOCArMjExLDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBtc3ZjcnRfZ2V0d2NoKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeV9VTklDT0RFIGNoOwotICAgIFB5X1VOSUNPREUgdVsxXTsKKyAgICB3Y2hhcl90IGNoOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICI6Z2V0d2NoIikpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjIwLDggKzIxOSw3IEBACiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIGNoID0gX2dldHdjaCgpOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgdVswXSA9IGNoOwotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUodSwgMSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tT3JkaW5hbChjaCk7CiB9CiAKIFB5RG9jX1NUUlZBUihnZXR3Y2hfZG9jLApAQCAtMjU2LDggKzI1NCw3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogbXN2Y3J0X2dldHdjaGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5X1VOSUNPREUgY2g7Ci0gICAgUHlfVU5JQ09ERSBzWzFdOworICAgIHdjaGFyX3QgY2g7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIjpnZXR3Y2hlIikpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjY1LDggKzI2Miw3IEBACiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIGNoID0gX2dldHdjaGUoKTsKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIHNbMF0gPSBjaDsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHMsIDEpOworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbU9yZGluYWwoY2gpOwogfQogCiBQeURvY19TVFJWQVIoZ2V0d2NoZV9kb2MsCmRpZmYgLS1naXQgYS9QQy9vczJlbXgvTWFrZWZpbGUgYi9QQy9vczJlbXgvTWFrZWZpbGUKaW5kZXggZDljZGVkNy4uODAwNjEwZSAxMDA2NDQKLS0tIGEvUEMvb3MyZW14L01ha2VmaWxlCisrKyBiL1BDL29zMmVteC9NYWtlZmlsZQpAQCAtMjM3LDcgKzIzNyw3IEBACiAKICMgT3V0cHV0IGZpbGUgbmFtZXMKIFBZVEhPTl9WRVI9CTIuNgotUFlUSE9OX0xJQj0JcHl0aG9uMjYKK1BZVEhPTl9MSUI9CXB5dGhvbjMzCiBQWVRIT04uTElCPQkkKFBZVEhPTl9MSUIpX3MkQQogUFlUSE9OLklNUExJQj0JJChQWVRIT05fTElCKSRBCiBpZmVxICgkKEVYRU9NRikseWVzKQpkaWZmIC0tZ2l0IGEvUEMvb3MyZW14L1JFQURNRS5vczJlbXggYi9QQy9vczJlbXgvUkVBRE1FLm9zMmVteAppbmRleCBmY2Y1NWQyLi42MWNmNmRmIDEwMDY0NAotLS0gYS9QQy9vczJlbXgvUkVBRE1FLm9zMmVteAorKysgYi9QQy9vczJlbXgvUkVBRE1FLm9zMmVteApAQCAtMzA1LDcgKzMwNSw3IEBACiAgICB0byBiZSBpbnN0YWxsZWQgaW4gYSBkaXJlY3Rvcnkgb3RoZXIgdGhhbiB0aGUgUFlUSE9OSE9NRSBkaXJlY3RvcnksIHNldCAKICAgIHRoZSB2YWx1ZSBvZiB0aGUgTWFrZWZpbGUgdmFyaWFibGUgRVhFX0RJUiB0byB0aGUgYXBwcm9wcmlhdGUgZGlyZWN0b3J5LgogCi0zLiBJZiB5b3Ugd2lzaCB0aGUgUHl0aG9uIGNvcmUgRExMIChweXRob24yNi5kbGwpIHRvIGJlIGluc3RhbGxlZCBpbiBhIAorMy4gSWYgeW91IHdpc2ggdGhlIFB5dGhvbiBjb3JlIERMTCAocHl0aG9uMzMuZGxsKSB0byBiZSBpbnN0YWxsZWQgaW4gYSAKICAgIGRpcmVjdG9yeSBvdGhlciB0aGFuIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdGhlIFB5dGhvbiBleGVjdXRhYmxlcyBhcmUgCiAgICBpbnN0YWxsZWQgKGJ5IGRlZmF1bHQsIHRoZSBQWVRIT05IT01FIGRpcmVjdG9yeSksIHNldCB0aGUgdmFsdWUgb2YgdGhlIAogICAgTWFrZWZpbGUgdmFyaWFibGUgRExMX0RJUiB0byB0aGUgYXBwcm9wcmlhdGUgZGlyZWN0b3J5LiAgVGhpcyBETEwgbXVzdCAKZGlmZiAtLWdpdCBhL1BDL29zMmVteC9weWNvbmZpZy5oIGIvUEMvb3MyZW14L3B5Y29uZmlnLmgKaW5kZXggMzgwZTE5Yy4uZTU2MTA1YSAxMDA2NDQKLS0tIGEvUEMvb3MyZW14L3B5Y29uZmlnLmgKKysrIGIvUEMvb3MyZW14L3B5Y29uZmlnLmgKQEAgLTEsNiArMSw4IEBACiAjaWZuZGVmIFB5X0NPTkZJR19ICiAjZGVmaW5lIFB5X0NPTkZJR19ICiAKKyNlcnJvciAiUEVQIDExOiBPUy8yIGlzIG5vdyB1bnN1cHBvcnRlZCwgY29kZSB3aWxsIGJlIHJlbW92ZWQgaW4gUHl0aG9uIDMuNCIKKwogLyogY29uZmlnLmguCiAgKiBBdCBzb21lIHRpbWUgaW4gdGhlIHBhc3QsIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJ5L2Zyb20gY29uZmlndXJlLgogICogbm93IG1haW50YWluZWQgbWFudWFsbHkuCmRpZmYgLS1naXQgYS9QQy9vczJlbXgvcHl0aG9uMjcuZGVmIGIvUEMvb3MyZW14L3B5dGhvbjMzLmRlZgpzaW1pbGFyaXR5IGluZGV4IDg1JQpyZW5hbWUgZnJvbSBQQy9vczJlbXgvcHl0aG9uMjcuZGVmCnJlbmFtZSB0byBQQy9vczJlbXgvcHl0aG9uMzMuZGVmCmluZGV4IGQ4N2RkNzYuLjI1NjcyNmIgMTAwNjQ0Ci0tLSBhL1BDL29zMmVteC9weXRob24yNy5kZWYKKysrIGIvUEMvb3MyZW14L3B5dGhvbjMzLmRlZgpAQCAtMSw3MiArMSw3MiBAQAotTElCUkFSWSBweXRob24yNiBJTklUSU5TVEFOQ0UgVEVSTUlOU1RBTkNFIAorTElCUkFSWSBweXRob24zMyBJTklUSU5TVEFOQ0UgVEVSTUlOU1RBTkNFIAogREVTQ1JJUFRJT04gIlB5dGhvbiAyLjYgQ29yZSBETEwiIAogUFJPVE1PREUgCiBEQVRBIE1VTFRJUExFIE5PTlNIQVJFRCAKIEVYUE9SVFMgCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjb25maWcpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoY29uZmlnKQogICAiX1B5SW1wb3J0X0luaXR0YWIiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihkbGZjbikKKzsgRnJvbSBweXRob24zM19zLmxpYihkbGZjbikKIDsgICJkbG9wZW4iCiA7ICAiZGxzeW0iCiA7ICAiZGxjbG9zZSIKIDsgICJkbGVycm9yIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZ2V0cGF0aHApCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ2V0cGF0aHApCiAgICJQeV9HZXRQcm9ncmFtRnVsbFBhdGgiCiAgICJQeV9HZXRQcmVmaXgiCiAgICJQeV9HZXRFeGVjUHJlZml4IgogICAiUHlfR2V0UGF0aCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGdldGJ1aWxkaW5mbykKKzsgRnJvbSBweXRob24zM19zLmxpYihnZXRidWlsZGluZm8pCiAgICJQeV9HZXRCdWlsZEluZm8iCiAgICJfUHlfc3ZudmVyc2lvbiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG1haW4pCis7IEZyb20gcHl0aG9uMzNfcy5saWIobWFpbikKICAgIlB5X01haW4iCiAgICJQeV9HZXRBcmdjQXJndiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGFjY2VsZXIpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoYWNjZWxlcikKICAgIlB5R3JhbW1hcl9BZGRBY2NlbGVyYXRvcnMiCiAgICJQeUdyYW1tYXJfUmVtb3ZlQWNjZWxlcmF0b3JzIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZ3JhbW1hcjEpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ3JhbW1hcjEpCiAgICJQeUdyYW1tYXJfRmluZERGQSIKICAgIlB5R3JhbW1hcl9MYWJlbFJlcHIiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihsaXN0bm9kZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihsaXN0bm9kZSkKICAgIlB5Tm9kZV9MaXN0VHJlZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG5vZGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobm9kZSkKICAgIlB5Tm9kZV9OZXciCiAgICJQeU5vZGVfQWRkQ2hpbGQiCiAgICJQeU5vZGVfRnJlZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHBhcnNlcikKKzsgRnJvbSBweXRob24zM19zLmxpYihwYXJzZXIpCiAgICJQeVBhcnNlcl9BZGRUb2tlbiIKICAgIlB5UGFyc2VyX05ldyIKICAgIlB5UGFyc2VyX0RlbGV0ZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHBhcnNldG9rKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHBhcnNldG9rKQogICAiUHlQYXJzZXJfUGFyc2VTdHJpbmciCiAgICJQeVBhcnNlcl9QYXJzZVN0cmluZ0ZsYWdzRmlsZW5hbWUiCiAgICJQeVBhcnNlcl9QYXJzZUZpbGUiCiAgICJQeVBhcnNlcl9QYXJzZUZpbGVGbGFncyIKICAgIlB5UGFyc2VyX1BhcnNlU3RyaW5nRmxhZ3MiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihiaXRzZXQpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoYml0c2V0KQogICAiX1B5X25ld2JpdHNldCIKICAgIl9QeV9kZWxiaXRzZXQiCiAgICJfUHlfYWRkYml0IgogICAiX1B5X3NhbWViaXRzZXQiCiAgICJfUHlfbWVyZ2ViaXRzZXQiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihtZXRhZ3JhbW1hcikKKzsgRnJvbSBweXRob24zM19zLmxpYihtZXRhZ3JhbW1hcikKICAgIl9QeV9tZXRhX2dyYW1tYXIiCiAgICJQeV9tZXRhX2dyYW1tYXIiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYih0b2tlbml6ZXIpCis7IEZyb20gcHl0aG9uMzNfcy5saWIodG9rZW5pemVyKQogICAiUHlUb2tlbl9PbmVDaGFyIgogICAiUHlUb2tlbl9Ud29DaGFycyIKICAgIlB5VG9rZW5fVGhyZWVDaGFycyIKQEAgLTc2LDE0ICs3NiwxNCBAQAogICAiUHlUb2tlbml6ZXJfR2V0IgogICAiX1B5UGFyc2VyX1Rva2VuTmFtZXMiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihteXJlYWRsaW5lKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG15cmVhZGxpbmUpCiAgICJfUHlPU19SZWFkbGluZVRTdGF0ZSIKICAgIlB5T1NfUmVhZGxpbmVGdW5jdGlvblBvaW50ZXIiCiAgICJQeU9TX1N0ZGlvUmVhZGxpbmUiCiAgICJQeU9TX1JlYWRsaW5lIgogICAiUHlPU19JbnB1dEhvb2siCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihhYnN0cmFjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihhYnN0cmFjdCkKICAgIl9QeU9iamVjdF9MZW5ndGhIaW50IgogICAiUHlNYXBwaW5nX1NpemUiCiAgICJQeU9iamVjdF9DYWxsTWV0aG9kIgpAQCAtMTc0LDEzICsxNzQsMTMgQEAKICAgIlB5T2JqZWN0X0lzSW5zdGFuY2UiCiAgICJQeU9iamVjdF9Jc1N1YmNsYXNzIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoYm9vbG9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihib29sb2JqZWN0KQogICAiUHlCb29sX0Zyb21Mb25nIgogICAiUHlCb29sX1R5cGUiCiAgICJfUHlfWmVyb1N0cnVjdCIKICAgIl9QeV9UcnVlU3RydWN0IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoYnVmZmVyb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGJ1ZmZlcm9iamVjdCkKICAgIlB5QnVmZmVyX0Zyb21PYmplY3QiCiAgICJQeUJ1ZmZlcl9Gcm9tUmVhZFdyaXRlT2JqZWN0IgogICAiUHlCdWZmZXJfRnJvbU1lbW9yeSIKQEAgLTE4OCwxMyArMTg4LDEzIEBACiAgICJQeUJ1ZmZlcl9OZXciCiAgICJQeUJ1ZmZlcl9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoY2VsbG9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihjZWxsb2JqZWN0KQogICAiUHlDZWxsX05ldyIKICAgIlB5Q2VsbF9HZXQiCiAgICJQeUNlbGxfU2V0IgogICAiUHlDZWxsX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjbGFzc29iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihjbGFzc29iamVjdCkKICAgIlB5Q2xhc3NfTmV3IgogICAiUHlDbGFzc19Jc1N1YmNsYXNzIgogICAiUHlJbnN0YW5jZV9OZXciCkBAIC0yMDksNyArMjA5LDcgQEAKICAgIlB5SW5zdGFuY2VfVHlwZSIKICAgIlB5TWV0aG9kX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjYXBzdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNhcHN1bGUpCiAgICJQeUNhcHN1bGVfR2V0Q29udGV4dCIKICAgIlB5Q2Fwc3VsZV9HZXREZXN0cnVjdG9yIgogICAiUHlDYXBzdWxlX0dldE5hbWUiCkBAIC0yMjIsNyArMjIyLDcgQEAKICAgIlB5Q2Fwc3VsZV9TZXROYW1lIgogICAiUHlDYXBzdWxlX1NldFBvaW50ZXIiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNvYmplY3QpCiAgICJQeUNPYmplY3RfRnJvbVZvaWRQdHIiCiAgICJQeUNPYmplY3RfRnJvbVZvaWRQdHJBbmREZXNjIgogICAiUHlDT2JqZWN0X0FzVm9pZFB0ciIKQEAgLTIzMSwxMyArMjMxLDEzIEBACiAgICJQeUNPYmplY3RfU2V0Vm9pZFB0ciIKICAgIlB5Q09iamVjdF9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoY29kZW9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihjb2Rlb2JqZWN0KQogICAiUHlDb2RlX05ldyIKICAgIlB5Q29kZV9BZGRyMkxpbmUiCiAgICJQeUNvZGVfQ2hlY2tMaW5lTnVtYmVyIgogICAiUHlDb2RlX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjb21wbGV4b2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNvbXBsZXhvYmplY3QpCiAgICJfUHlfY19wb3ciCiAgICJfUHlfY19zdW0iCiAgICJfUHlfY19kaWZmIgpAQCAtMjUxLDcgKzI1MSw3IEBACiAgICJQeUNvbXBsZXhfQXNDQ29tcGxleCIKICAgIlB5Q29tcGxleF9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZGVzY3JvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZGVzY3JvYmplY3QpCiAgICJQeVdyYXBwZXJfTmV3IgogICAiUHlEZXNjcl9OZXdNZXRob2QiCiAgICJQeURlc2NyX05ld0NsYXNzTWV0aG9kIgpAQCAtMjYyLDcgKzI2Miw3IEBACiAgICJQeVdyYXBwZXJEZXNjcl9UeXBlIgogICAiUHlQcm9wZXJ0eV9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZGljdG9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihkaWN0b2JqZWN0KQogICAiUHlEaWN0X05ldyIKICAgIlB5RGljdF9HZXRJdGVtIgogICAiUHlEaWN0X1NldEl0ZW0iCkBAIC0yODYsMTEgKzI4NiwxMSBAQAogICAiUHlEaWN0SXRlclZhbHVlX1R5cGUiCiAgICJQeURpY3RJdGVySXRlbV9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZW51bW9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihlbnVtb2JqZWN0KQogICAiUHlFbnVtX1R5cGUiCiAgICJQeVJldmVyc2VkX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihmaWxlb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGZpbGVvYmplY3QpCiAgICJQeUZpbGVfRnJvbVN0cmluZyIKICAgIlB5X1VuaXZlcnNhbE5ld2xpbmVGcmVhZCIKICAgIlB5RmlsZV9HZXRMaW5lIgpAQCAtMzA2LDcgKzMwNiw3IEBACiAgICJQeUZpbGVfTmFtZSIKICAgIlB5RmlsZV9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZmxvYXRvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZmxvYXRvYmplY3QpCiAgICJQeUZsb2F0X0Zyb21TdHJpbmciCiAgICJQeUZsb2F0X0FzRG91YmxlIgogICAiUHlGbG9hdF9GaW5pIgpAQCAtMzIxLDcgKzMyMSw3IEBACiAgICJQeUZsb2F0X0FzU3RyaW5nRXgiCiAgICJQeUZsb2F0X1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihmcmFtZW9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihmcmFtZW9iamVjdCkKICAgIlB5RnJhbWVfTmV3IgogICAiUHlGcmFtZV9GYXN0VG9Mb2NhbHMiCiAgICJQeUZyYW1lX0xvY2Fsc1RvRmFzdCIKQEAgLTMzMSw3ICszMzEsNyBAQAogICAiUHlGcmFtZV9CbG9ja1BvcCIKICAgIlB5RnJhbWVfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGZ1bmNvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZnVuY29iamVjdCkKICAgIlB5RnVuY3Rpb25fTmV3IgogICAiUHlGdW5jdGlvbl9HZXRDb2RlIgogICAiUHlGdW5jdGlvbl9HZXRHbG9iYWxzIgpAQCAtMzQ2LDEyICszNDYsMTIgQEAKICAgIlB5Q2xhc3NNZXRob2RfVHlwZSIKICAgIlB5U3RhdGljTWV0aG9kX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihnZW5vYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ2Vub2JqZWN0KQogICAiUHlHZW5fTmV3IgogICAiUHlHZW5fTmVlZHNGaW5hbGl6aW5nIgogICAiUHlHZW5fVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGludG9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihpbnRvYmplY3QpCiAgICJQeUludF9Bc0xvbmciCiAgICJQeUludF9Bc1Vuc2lnbmVkTG9uZ01hc2siCiAgICJQeUludF9Bc1Vuc2lnbmVkTG9uZ0xvbmdNYXNrIgpAQCAtMzY2LDEzICszNjYsMTMgQEAKICAgIl9QeUludF9Jbml0IgogICAiUHlJbnRfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGl0ZXJvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoaXRlcm9iamVjdCkKICAgIlB5U2VxSXRlcl9OZXciCiAgICJQeUNhbGxJdGVyX05ldyIKICAgIlB5U2VxSXRlcl9UeXBlIgogICAiUHlDYWxsSXRlcl9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobGlzdG9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihsaXN0b2JqZWN0KQogICAiUHlMaXN0X05ldyIKICAgIlB5TGlzdF9BcHBlbmQiCiAgICJQeUxpc3RfU2l6ZSIKQEAgLTM5MCw3ICszOTAsNyBAQAogICAiUHlMaXN0SXRlcl9UeXBlIgogICAiUHlMaXN0UmV2SXRlcl9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobG9uZ29iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihsb25nb2JqZWN0KQogICAiUHlMb25nX0Zyb21Eb3VibGUiCiAgICJQeUxvbmdfQXNMb25nIgogICAiX1B5TG9uZ19Bc1NzaXplX3QiCkBAIC00MjAsNyArNDIwLDcgQEAKICAgIlB5TG9uZ19UeXBlIgogICAiX1B5TG9uZ19EaWdpdFZhbHVlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobWV0aG9kb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG1ldGhvZG9iamVjdCkKICAgIlB5Q0Z1bmN0aW9uX0NhbGwiCiAgICJQeV9GaW5kTWV0aG9kSW5DaGFpbiIKICAgIlB5Q0Z1bmN0aW9uX0dldEZ1bmN0aW9uIgpAQCAtNDMyLDcgKzQzMiw3IEBACiAgICJQeUNGdW5jdGlvbl9OZXciCiAgICJQeUNGdW5jdGlvbl9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobW9kdWxlb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG1vZHVsZW9iamVjdCkKICAgIlB5TW9kdWxlX05ldyIKICAgIl9QeU1vZHVsZV9DbGVhciIKICAgIlB5TW9kdWxlX0dldERpY3QiCkBAIC00NDAsNyArNDQwLDcgQEAKICAgIlB5TW9kdWxlX0dldEZpbGVuYW1lIgogICAiUHlNb2R1bGVfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihvYmplY3QpCiAgICJQeV9EaXZpc2lvbldhcm5pbmdGbGFnIgogICAiUHlPYmplY3RfU3RyIgogICAiUHlPYmplY3RfUmVwciIKQEAgLTQ5MywxNSArNDkzLDE1IEBACiAgICJfUHlUcmFzaF9kZWxldGVfbmVzdGluZyIKICAgIl9QeVRyYXNoX2RlbGV0ZV9sYXRlciIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG9ibWFsbG9jKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG9ibWFsbG9jKQogICAiUHlPYmplY3RfTWFsbG9jIgogICAiUHlPYmplY3RfRnJlZSIKICAgIlB5T2JqZWN0X1JlYWxsb2MiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihyYW5nZW9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihyYW5nZW9iamVjdCkKICAgIlB5UmFuZ2VfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHNldG9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihzZXRvYmplY3QpCiAgICJQeVNldF9Qb3AiCiAgICJQeVNldF9OZXciCiAgICJQeUZyb3plblNldF9OZXciCkBAIC01MTYsNyArNTE2LDcgQEAKICAgIlB5U2V0X1R5cGUiCiAgICJQeUZyb3plblNldF9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoc2xpY2VvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc2xpY2VvYmplY3QpCiAgICJfUHlTbGljZV9Gcm9tSW5kaWNlcyIKICAgIlB5U2xpY2VfR2V0SW5kaWNlcyIKICAgIlB5U2xpY2VfR2V0SW5kaWNlc0V4IgpAQCAtNTI0LDcgKzUyNCw3IEBACiAgICJfUHlfRWxsaXBzaXNPYmplY3QiCiAgICJQeVNsaWNlX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihzdHJpbmdvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc3RyaW5nb2JqZWN0KQogICAiUHlTdHJpbmdfRnJvbVN0cmluZ0FuZFNpemUiCiAgICJQeVN0cmluZ19JbnRlcm5JblBsYWNlIgogICAiUHlTdHJpbmdfRnJvbVN0cmluZyIKQEAgLTU1NSwxMiArNTU1LDEyIEBACiAgICJQeVN0cmluZ19UeXBlIgogICAiUHlCYXNlU3RyaW5nX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihzdHJ1Y3RzZXEpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc3RydWN0c2VxKQogICAiUHlTdHJ1Y3RTZXF1ZW5jZV9Jbml0VHlwZSIKICAgIlB5U3RydWN0U2VxdWVuY2VfTmV3IgogICAiUHlTdHJ1Y3RTZXF1ZW5jZV9Vbm5hbWVkRmllbGQiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYih0dXBsZW9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYih0dXBsZW9iamVjdCkKICAgIlB5VHVwbGVfTmV3IgogICAiUHlUdXBsZV9QYWNrIgogICAiX1B5VHVwbGVfUmVzaXplIgpAQCAtNTcyLDcgKzU3Miw3IEBACiAgICJQeVR1cGxlX1R5cGUiCiAgICJQeVR1cGxlSXRlcl9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIodHlwZW9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYih0eXBlb2JqZWN0KQogICAiUHlUeXBlX0lzU3VidHlwZSIKICAgIl9QeVR5cGVfTG9va3VwIgogICAiUHlUeXBlX1JlYWR5IgpAQCAtNTgzLDcgKzU4Myw3IEBACiAgICJQeUJhc2VPYmplY3RfVHlwZSIKICAgIlB5U3VwZXJfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHVuaWNvZGVvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIodW5pY29kZW9iamVjdCkKICAgIlB5VW5pY29kZVVDUzJfUmVzaXplIgogICAiUHlVbmljb2RlVUNTMl9Gcm9tT3JkaW5hbCIKICAgIlB5VW5pY29kZVVDUzJfRnJvbU9iamVjdCIKQEAgLTY0OSw3ICs2NDksNyBAQAogICAiUHlVbmljb2RlX0FzRGVjb2RlZE9iamVjdCIKICAgIlB5VW5pY29kZV9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIodW5pY29kZWN0eXBlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHVuaWNvZGVjdHlwZSkKICAgIl9QeVVuaWNvZGVfVHlwZVJlY29yZHMiCiAgICJfUHlVbmljb2RlVUNTMl9Ub051bWVyaWMiCiAgICJfUHlVbmljb2RlVUNTMl9Jc0xvd2VyY2FzZSIKQEAgLTY2Nyw3ICs2NjcsNyBAQAogICAiX1B5VW5pY29kZVVDUzJfSXNOdW1lcmljIgogICAiX1B5VW5pY29kZVVDUzJfSXNBbHBoYSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHdlYWtyZWZvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIod2Vha3JlZm9iamVjdCkKICAgIlB5V2Vha3JlZl9OZXdSZWYiCiAgICJQeVdlYWtyZWZfTmV3UHJveHkiCiAgICJQeU9iamVjdF9DbGVhcldlYWtSZWZzIgpAQCAtNjc4LDcgKzY3OCw3IEBACiAgICJfUHlXZWFrcmVmX1Byb3h5VHlwZSIKICAgIl9QeVdlYWtyZWZfQ2FsbGFibGVQcm94eVR5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihQeXRob24tYXN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKFB5dGhvbi1hc3QpCiA7ICAiaW5pdF9hc3QiCiAgICJNb2R1bGUiCiAgICJJbnRlcmFjdGl2ZSIKQEAgLTczNywxOCArNzM3LDE4IEBACiAgICJhbGlhcyIKICAgIlB5QVNUX21vZDJvYmoiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihhc2RsKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGFzZGwpCiAgICJhc2RsX3NlcV9uZXciCiAgICJhc2RsX2ludF9zZXFfbmV3IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoYXN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGFzdCkKICAgIlB5QVNUX0Zyb21Ob2RlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoYmx0aW5tb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoYmx0aW5tb2R1bGUpCiAgICJfUHlCdWlsdGluX0luaXQiCiAgICJQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZXhjZXB0aW9ucykKKzsgRnJvbSBweXRob24zM19zLmxpYihleGNlcHRpb25zKQogICAiUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0U3RhcnQiCiAgICJQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRTdGFydCIKICAgIlB5VW5pY29kZUVuY29kZUVycm9yX0dldEVuZCIKQEAgLTgyNCw3ICs4MjQsNyBAQAogICAiUHlFeGNfSW1wb3J0V2FybmluZyIKICAgIlB5RXhjX01lbW9yeUVycm9ySW5zdCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGNldmFsKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNldmFsKQogICAiUHlFdmFsX0V2YWxGcmFtZUV4IgogICAiUHlFdmFsX0NhbGxPYmplY3RXaXRoS2V5d29yZHMiCiAgICJQeUV2YWxfRXZhbENvZGVFeCIKQEAgLTg2MywxMyArODYzLDEzIEBACiAgICJfUHlfQ2hlY2tJbnRlcnZhbCIKICAgIl9QeV9UaWNrZXIiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjb21waWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNvbXBpbGUpCiAgICJfUHlfTWFuZ2xlIgogICAiUHlBU1RfQ29tcGlsZSIKICAgIlB5Tm9kZV9Db21waWxlIgogICAiUHlfT3B0aW1pemVGbGFnIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoY29kZWNzKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNvZGVjcykKICAgIl9QeUNvZGVjX0xvb2t1cCIKICAgIlB5Q29kZWNfRW5jb2RlIgogICAiUHlDb2RlY19EZWNvZGUiCkBAIC04ODgsNyArODg4LDcgQEAKICAgIlB5Q29kZWNfTG9va3VwRXJyb3IiCiAgICJQeUNvZGVjX1N0cmljdEVycm9ycyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGVycm9ycykKKzsgRnJvbSBweXRob24zM19zLmxpYihlcnJvcnMpCiAgICJQeUVycl9TZXROb25lIgogICAiUHlFcnJfU2V0U3RyaW5nIgogICAiUHlFcnJfR2l2ZW5FeGNlcHRpb25NYXRjaGVzIgpAQCAtOTE0LDE2ICs5MTQsMTYgQEAKICAgIlB5RXJyX1dhcm4iCiAgICJQeUVycl9XYXJuRXhwbGljaXQiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihmcm96ZW4pCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZnJvemVuKQogICAiUHlJbXBvcnRfRnJvemVuTW9kdWxlcyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGZyb3plbm1haW4pCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZnJvemVubWFpbikKICAgIlB5X0Zyb3plbk1haW4iCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihmdXR1cmUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZnV0dXJlKQogICAiUHlGdXR1cmVfRnJvbUFTVCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGdldGFyZ3MpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ2V0YXJncykKICAgIlB5QXJnX1BhcnNlIgogICAiX1B5QXJnX1BhcnNlX1NpemVUIgogICAiUHlBcmdfUGFyc2VUdXBsZSIKQEAgLTkzNywyMiArOTM3LDIyIEBACiAgICJfUHlBcmdfVmFQYXJzZV9TaXplVCIKICAgIl9QeUFyZ19WYVBhcnNlVHVwbGVBbmRLZXl3b3Jkc19TaXplVCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGdldGNvbXBpbGVyKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGdldGNvbXBpbGVyKQogICAiUHlfR2V0Q29tcGlsZXIiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihnZXRjb3B5cmlnaHQpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ2V0Y29weXJpZ2h0KQogICAiUHlfR2V0Q29weXJpZ2h0IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZ2V0cGxhdGZvcm0pCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ2V0cGxhdGZvcm0pCiAgICJQeV9HZXRQbGF0Zm9ybSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGdldHZlcnNpb24pCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ2V0dmVyc2lvbikKICAgIlB5X0dldFZlcnNpb24iCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihncmFtaW5pdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihncmFtaW5pdCkKICAgIl9QeVBhcnNlcl9HcmFtbWFyIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoaW1wb3J0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGltcG9ydCkKICAgIl9QeUltcG9ydF9Jbml0IgogICAiX1B5SW1wb3J0SG9va3NfSW5pdCIKICAgIlB5SW1wb3J0X0ltcG9ydE1vZHVsZSIKQEAgLTk3OSwxMCArOTc5LDEwIEBACiAgICJQeUltcG9ydF9Jbml0dGFiIgogICAiX1B5SW1wb3J0X0ZpbGV0YWIiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihpbXBvcnRkbCkKKzsgRnJvbSBweXRob24zM19zLmxpYihpbXBvcnRkbCkKICAgIl9QeUltcG9ydF9Mb2FkRHluYW1pY01vZHVsZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG1hcnNoYWwpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobWFyc2hhbCkKICAgIlB5TWFyc2hhbF9SZWFkTG9uZ0Zyb21GaWxlIgogICAiUHlNYXJzaGFsX1dyaXRlT2JqZWN0VG9TdHJpbmciCiAgICJQeU1hcnNoYWxfV3JpdGVMb25nVG9GaWxlIgpAQCAtOTkzLDcgKzk5Myw3IEBACiAgICJQeU1hcnNoYWxfUmVhZE9iamVjdEZyb21TdHJpbmciCiAgICJQeU1hcnNoYWxfSW5pdCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG1vZHN1cHBvcnQpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobW9kc3VwcG9ydCkKICAgIlB5X0luaXRNb2R1bGU0IgogICAiUHlfQnVpbGRWYWx1ZSIKICAgIl9QeV9CdWlsZFZhbHVlX1NpemVUIgpAQCAtMTAwNiwyNCArMTAwNiwyNCBAQAogICAiUHlNb2R1bGVfQWRkU3RyaW5nQ29uc3RhbnQiCiAgICJfUHlfUGFja2FnZUNvbnRleHQiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihteXNucHJpbnRmKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG15c25wcmludGYpCiAgICJQeU9TX3NucHJpbnRmIgogICAiUHlPU192c25wcmludGYiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihteXN0cnRvdWwpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobXlzdHJ0b3VsKQogICAiUHlPU19zdHJ0b3VsIgogICAiUHlPU19zdHJ0b2wiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihweWFyZW5hKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHB5YXJlbmEpCiAgICJQeUFyZW5hX05ldyIKICAgIlB5QXJlbmFfRnJlZSIKICAgIlB5QXJlbmFfTWFsbG9jIgogICAiUHlBcmVuYV9BZGRQeU9iamVjdCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHB5ZnBlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHB5ZnBlKQogICAiUHlGUEVfZHVtbXkiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihweXN0YXRlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHB5c3RhdGUpCiAgICJQeUludGVycHJldGVyU3RhdGVfQ2xlYXIiCiAgICJQeVRocmVhZFN0YXRlX0NsZWFyIgogICAiX1B5VGhyZWFkX0N1cnJlbnRGcmFtZXMiCkBAIC0xMDQ4LDcgKzEwNDgsNyBAQAogICAiX1B5VGhyZWFkU3RhdGVfQ3VycmVudCIKICAgIl9QeVRocmVhZFN0YXRlX0dldEZyYW1lIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIocHl0aG9ucnVuKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHB5dGhvbnJ1bikKICAgIlB5X0lnbm9yZUVudmlyb25tZW50RmxhZyIKICAgIlB5X0RlYnVnRmxhZyIKICAgIlB5X1ZlcmJvc2VGbGFnIgpAQCAtMTExMCwyMCArMTExMCwyMCBAQAogICAiUHlfVW5pY29kZUZsYWciCiAgICJfUHlfUW5ld0ZsYWciCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihzdHJ1Y3RtZW1iZXIpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc3RydWN0bWVtYmVyKQogICAiUHlNZW1iZXJfR2V0IgogICAiUHlNZW1iZXJfR2V0T25lIgogICAiUHlNZW1iZXJfU2V0T25lIgogICAiUHlNZW1iZXJfU2V0IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoc3ltdGFibGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc3ltdGFibGUpCiAgICJQeVN5bXRhYmxlX0J1aWxkIgogICAiUHlTeW10YWJsZV9GcmVlIgogICAiUHlTVF9HZXRTY29wZSIKICAgIlB5U3ltdGFibGVfTG9va3VwIgogICAiUHlTVEVudHJ5X1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihzeXNtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc3lzbW9kdWxlKQogICAiX1B5U3lzX0luaXQiCiAgICJQeVN5c19Xcml0ZVN0ZGVyciIKICAgIlB5U3lzX1NldFBhdGgiCkBAIC0xMTM3LDIyICsxMTM3LDIyIEBACiAgICJQeVN5c19SZXNldFdhcm5PcHRpb25zIgogICAiUHlTeXNfQWRkV2Fybk9wdGlvbiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHRyYWNlYmFjaykKKzsgRnJvbSBweXRob24zM19zLmxpYih0cmFjZWJhY2spCiAgICJQeVRyYWNlQmFja19IZXJlIgogICAiUHlUcmFjZUJhY2tfUHJpbnQiCiAgICJQeVRyYWNlQmFja19UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZ2V0b3B0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGdldG9wdCkKICAgIl9QeU9TX0dldE9wdCIKICAgIl9QeU9TX29wdGVyciIKICAgIl9QeU9TX29wdGluZCIKICAgIl9QeU9TX29wdGFyZyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGR5bmxvYWRfc2hsaWIpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZHlubG9hZF9zaGxpYikKICAgIl9QeUltcG9ydF9EeW5Mb2FkRmlsZXRhYiIKICAgIl9QeUltcG9ydF9HZXREeW5Mb2FkRnVuYyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHRocmVhZCkKKzsgRnJvbSBweXRob24zM19zLmxpYih0aHJlYWQpCiAgICJQeVRocmVhZF9kZWxldGVfa2V5X3ZhbHVlIgogICAiUHlUaHJlYWRfaW5pdF90aHJlYWQiCiAgICJQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkIgpAQCAtMTE2OSw3ICsxMTY5LDcgQEAKICAgIlB5VGhyZWFkX3NldF9rZXlfdmFsdWUiCiAgICJQeVRocmVhZF9nZXRfa2V5X3ZhbHVlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZ2Ntb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ2Ntb2R1bGUpCiA7ICAiaW5pdGdjIgogICAiX1B5T2JqZWN0X0dDX05ldyIKICAgIl9QeU9iamVjdF9HQ19OZXdWYXIiCkBAIC0xMTg1LDcgKzExODUsNyBAQAogICAiX1B5T2JqZWN0X0dDX0RlbCIKICAgIl9QeUdDX2dlbmVyYXRpb24wIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoc2lnbmFsbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHNpZ25hbG1vZHVsZSkKIDsgICJpbml0c2lnbmFsIgogICAiUHlFcnJfQ2hlY2tTaWduYWxzIgogICAiUHlFcnJfU2V0SW50ZXJydXB0IgpAQCAtMTE5NCwxMjEgKzExOTQsMTIxIEBACiAgICJQeU9TX0luaXRJbnRlcnJ1cHRzIgogICAiUHlPU19BZnRlckZvcmsiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihwb3NpeG1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihwb3NpeG1vZHVsZSkKIDsgICJpbml0b3MyIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoX3RocmVhZG1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihfdGhyZWFkbW9kdWxlKQogOyAgImluaXRfdGhyZWFkIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoYXJyYXltb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoYXJyYXltb2R1bGUpCiA7ICAiaW5pdGFycmF5IgogOyAgImFycmF5X21ldGhvZHMiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihiaW5hc2NpaSkKKzsgRnJvbSBweXRob24zM19zLmxpYihiaW5hc2NpaSkKIDsgICJpbml0YmluYXNjaWkiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjbWF0aG1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihjbWF0aG1vZHVsZSkKIDsgICJpbml0Y21hdGgiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihfY29kZWNzbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKF9jb2RlY3Ntb2R1bGUpCiA7ICAiaW5pdF9jb2RlY3MiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjb2xsZWN0aW9uc21vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihjb2xsZWN0aW9uc21vZHVsZSkKIDsgICJpbml0Y29sbGVjdGlvbnMiCiAgICJkZXF1ZWl0ZXJfdHlwZSIKICAgImRlcXVlcmV2aXRlcl90eXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoY1BpY2tsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihjUGlja2xlKQogOyAgImluaXRjUGlja2xlIgogOyAgImZhc3Rfc2F2ZV9sZWF2ZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKF9jc3YpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoX2NzdikKIDsgICJpbml0X2NzdiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGRhdGV0aW1lbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGRhdGV0aW1lbW9kdWxlKQogOyAgImluaXRkYXRldGltZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGRsbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGRsbW9kdWxlKQogOyAgImluaXRkbCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGVycm5vbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGVycm5vbW9kdWxlKQogOyAgImluaXRlcnJubyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGZjbnRsbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGZjbnRsbW9kdWxlKQogOyAgImluaXRmY250bCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKF9mdW5jdG9vbHNtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoX2Z1bmN0b29sc21vZHVsZSkKIDsgICJpbml0X2Z1bmN0b29scyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKF9oZWFwcW1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihfaGVhcHFtb2R1bGUpCiA7ICAiaW5pdF9oZWFwcSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGltYWdlb3ApCis7IEZyb20gcHl0aG9uMzNfcy5saWIoaW1hZ2VvcCkKIDsgICJpbml0aW1hZ2VvcCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGl0ZXJ0b29sc21vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihpdGVydG9vbHNtb2R1bGUpCiA7ICAiaW5pdGl0ZXJ0b29scyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKF9sb2NhbGVtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoX2xvY2FsZW1vZHVsZSkKIDsgICJpbml0X2xvY2FsZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG1hdGhtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobWF0aG1vZHVsZSkKIDsgICJpbml0bWF0aCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG1kNSkKKzsgRnJvbSBweXRob24zM19zLmxpYihtZDUpCiAgICJtZDVfZmluaXNoIgogICAibWQ1X2luaXQiCiAgICJtZDVfYXBwZW5kIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobWQ1bW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG1kNW1vZHVsZSkKIDsgICJpbml0X21kNSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG9wZXJhdG9yKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG9wZXJhdG9yKQogOyAgImluaXRvcGVyYXRvciIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKF9yYW5kb21tb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoX3JhbmRvbW1vZHVsZSkKIDsgICJpbml0X3JhbmRvbSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHJnYmltZ21vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihyZ2JpbWdtb2R1bGUpCiA7ICAiaW5pdHJnYmltZyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHNoYW1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihzaGFtb2R1bGUpCiA7ICAiaW5pdF9zaGEiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihzaGEyNTZtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc2hhMjU2bW9kdWxlKQogOyAgImluaXRfc2hhMjU2IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoc2hhNTEybW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHNoYTUxMm1vZHVsZSkKIDsgICJpbml0X3NoYTUxMiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKF9zcmUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoX3NyZSkKIDsgICJpbml0X3NyZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHN0cm9wbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHN0cm9wbW9kdWxlKQogOyAgImluaXRzdHJvcCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKF9zdHJ1Y3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoX3N0cnVjdCkKIDsgICJpbml0X3N0cnVjdCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHN5bXRhYmxlbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHN5bXRhYmxlbW9kdWxlKQogOyAgImluaXRfc3ltdGFibGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYih0ZXJtaW9zKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHRlcm1pb3MpCiA7ICAiaW5pdHRlcm1pb3MiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYih0aW1lbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHRpbWVtb2R1bGUpCiA7ICAiaW5pdHRpbWUiCiAgICJfUHlUaW1lX0RvdWJsZVRvVGltZXQiCiA7ICAiaW5pdHRpbWV6b25lIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIodGltaW5nbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHRpbWluZ21vZHVsZSkKIDsgICJpbml0dGltaW5nIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoX3dlYWtyZWYpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoX3dlYWtyZWYpCiA7ICAiaW5pdF93ZWFrcmVmIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoeHhzdWJ0eXBlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHh4c3VidHlwZSkKIDsgICJpbml0eHhzdWJ0eXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoemlwaW1wb3J0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHppcGltcG9ydCkKIDsgICJpbml0emlwaW1wb3J0IgpkaWZmIC0tZ2l0IGEvUEMvcHljb25maWcuaCBiL1BDL3B5Y29uZmlnLmgKaW5kZXggMTM4ZDhmYS4uMzQ3ZjFjYyAxMDA2NDQKLS0tIGEvUEMvcHljb25maWcuaAorKysgYi9QQy9weWNvbmZpZy5oCkBAIC0zMTksMTEgKzMxOSwxMSBAQAogCQkJdGhlaXIgTWFrZWZpbGUgKG90aGVyIGNvbXBpbGVycyBhcmUgZ2VuZXJhbGx5CiAJCQl0YWtlbiBjYXJlIG9mIGJ5IGRpc3R1dGlscy4pICovCiAjCQkJaWYgZGVmaW5lZChfREVCVUcpCi0jCQkJCXByYWdtYSBjb21tZW50KGxpYiwicHl0aG9uMzJfZC5saWIiKQorIwkJCQlwcmFnbWEgY29tbWVudChsaWIsInB5dGhvbjMzX2QubGliIikKICMJCQllbGlmIGRlZmluZWQoUHlfTElNSVRFRF9BUEkpCiAjCQkJCXByYWdtYSBjb21tZW50KGxpYiwicHl0aG9uMy5saWIiKQogIwkJCWVsc2UKLSMJCQkJcHJhZ21hIGNvbW1lbnQobGliLCJweXRob24zMi5saWIiKQorIwkJCQlwcmFnbWEgY29tbWVudChsaWIsInB5dGhvbjMzLmxpYiIpCiAjCQkJZW5kaWYgLyogX0RFQlVHICovCiAjCQllbmRpZiAvKiBfTVNDX1ZFUiAqLwogIwllbmRpZiAvKiBQeV9CVUlMRF9DT1JFICovCkBAIC01NTAsMTAgKzU1MCw2IEBACiAvKiBEZWZpbmUgaWYgeW91IHdhbnQgdG8gdXNlIHRoZSBHTlUgcmVhZGxpbmUgbGlicmFyeSAqLwogLyogI2RlZmluZSBXSVRIX1JFQURMSU5FIDEgKi8KIAotLyogRGVmaW5lIGFzIHRoZSBzaXplIG9mIHRoZSB1bmljb2RlIHR5cGUuICovCi0vKiBUaGlzIGlzIGVub3VnaCBmb3IgdW5pY29kZW9iamVjdC5oIHRvIGRvIHRoZSAicmlnaHQgdGhpbmciIG9uIFdpbmRvd3MuICovCi0jZGVmaW5lIFB5X1VOSUNPREVfU0laRSAyCi0KIC8qIFVzZSBQeXRob24ncyBvd24gc21hbGwtYmxvY2sgbWVtb3J5LWFsbG9jYXRvci4gKi8KICNkZWZpbmUgV0lUSF9QWU1BTExPQyAxCiAKQEAgLTcxNCw5ICs3MTAsNiBAQAogLyogRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3V0c25hbWUuaD4gaGVhZGVyIGZpbGUuICAqLwogLyogI2RlZmluZSBIQVZFX1NZU19VVFNOQU1FX0ggMSAqLwogCi0vKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlIDx0aHJlYWQuaD4gaGVhZGVyIGZpbGUuICAqLwotLyogI3VuZGVmIEhBVkVfVEhSRUFEX0ggKi8KLQogLyogRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSA8dW5pc3RkLmg+IGhlYWRlciBmaWxlLiAgKi8KIC8qICNkZWZpbmUgSEFWRV9VTklTVERfSCAxICovCiAKZGlmZiAtLWdpdCBhL1BDL3B5dGhvbjMuZGVmIGIvUEMvcHl0aG9uMy5kZWYKaW5kZXggYTg0NTMzNS4uNTRiMjg4ZiAxMDA2NDQKLS0tIGEvUEMvcHl0aG9uMy5kZWYKKysrIGIvUEMvcHl0aG9uMy5kZWYKQEAgLTEsNjg5ICsxLDY4OSBAQAogTElCUkFSWQkicHl0aG9uMyIKIEVYUE9SVFMKLSAgUHlBcmdfUGFyc2U9cHl0aG9uMzIuUHlBcmdfUGFyc2UKLSAgUHlBcmdfUGFyc2VUdXBsZT1weXRob24zMi5QeUFyZ19QYXJzZVR1cGxlCi0gIFB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3Jkcz1weXRob24zMi5QeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMKLSAgUHlBcmdfVW5wYWNrVHVwbGU9cHl0aG9uMzIuUHlBcmdfVW5wYWNrVHVwbGUKLSAgUHlBcmdfVmFQYXJzZT1weXRob24zMi5QeUFyZ19WYVBhcnNlCi0gIFB5QXJnX1ZhUGFyc2VUdXBsZUFuZEtleXdvcmRzPXB5dGhvbjMyLlB5QXJnX1ZhUGFyc2VUdXBsZUFuZEtleXdvcmRzCi0gIFB5QXJnX1ZhbGlkYXRlS2V5d29yZEFyZ3VtZW50cz1weXRob24zMi5QeUFyZ19WYWxpZGF0ZUtleXdvcmRBcmd1bWVudHMKLSAgUHlCYXNlT2JqZWN0X1R5cGU9cHl0aG9uMzIuUHlCYXNlT2JqZWN0X1R5cGUgREFUQQotICBQeUJvb2xfRnJvbUxvbmc9cHl0aG9uMzIuUHlCb29sX0Zyb21Mb25nCi0gIFB5Qm9vbF9UeXBlPXB5dGhvbjMyLlB5Qm9vbF9UeXBlIERBVEEKLSAgUHlCeXRlQXJyYXlJdGVyX1R5cGU9cHl0aG9uMzIuUHlCeXRlQXJyYXlJdGVyX1R5cGUgREFUQQotICBQeUJ5dGVBcnJheV9Bc1N0cmluZz1weXRob24zMi5QeUJ5dGVBcnJheV9Bc1N0cmluZwotICBQeUJ5dGVBcnJheV9Db25jYXQ9cHl0aG9uMzIuUHlCeXRlQXJyYXlfQ29uY2F0Ci0gIFB5Qnl0ZUFycmF5X0Zyb21PYmplY3Q9cHl0aG9uMzIuUHlCeXRlQXJyYXlfRnJvbU9iamVjdAotICBQeUJ5dGVBcnJheV9Gcm9tU3RyaW5nQW5kU2l6ZT1weXRob24zMi5QeUJ5dGVBcnJheV9Gcm9tU3RyaW5nQW5kU2l6ZQotICBQeUJ5dGVBcnJheV9SZXNpemU9cHl0aG9uMzIuUHlCeXRlQXJyYXlfUmVzaXplCi0gIFB5Qnl0ZUFycmF5X1NpemU9cHl0aG9uMzIuUHlCeXRlQXJyYXlfU2l6ZQotICBQeUJ5dGVBcnJheV9UeXBlPXB5dGhvbjMyLlB5Qnl0ZUFycmF5X1R5cGUgREFUQQotICBQeUJ5dGVzSXRlcl9UeXBlPXB5dGhvbjMyLlB5Qnl0ZXNJdGVyX1R5cGUgREFUQQotICBQeUJ5dGVzX0FzU3RyaW5nPXB5dGhvbjMyLlB5Qnl0ZXNfQXNTdHJpbmcKLSAgUHlCeXRlc19Bc1N0cmluZ0FuZFNpemU9cHl0aG9uMzIuUHlCeXRlc19Bc1N0cmluZ0FuZFNpemUKLSAgUHlCeXRlc19Db25jYXQ9cHl0aG9uMzIuUHlCeXRlc19Db25jYXQKLSAgUHlCeXRlc19Db25jYXRBbmREZWw9cHl0aG9uMzIuUHlCeXRlc19Db25jYXRBbmREZWwKLSAgUHlCeXRlc19EZWNvZGVFc2NhcGU9cHl0aG9uMzIuUHlCeXRlc19EZWNvZGVFc2NhcGUKLSAgUHlCeXRlc19Gcm9tRm9ybWF0PXB5dGhvbjMyLlB5Qnl0ZXNfRnJvbUZvcm1hdAotICBQeUJ5dGVzX0Zyb21Gb3JtYXRWPXB5dGhvbjMyLlB5Qnl0ZXNfRnJvbUZvcm1hdFYKLSAgUHlCeXRlc19Gcm9tT2JqZWN0PXB5dGhvbjMyLlB5Qnl0ZXNfRnJvbU9iamVjdAotICBQeUJ5dGVzX0Zyb21TdHJpbmc9cHl0aG9uMzIuUHlCeXRlc19Gcm9tU3RyaW5nCi0gIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemU9cHl0aG9uMzIuUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZQotICBQeUJ5dGVzX1JlcHI9cHl0aG9uMzIuUHlCeXRlc19SZXByCi0gIFB5Qnl0ZXNfU2l6ZT1weXRob24zMi5QeUJ5dGVzX1NpemUKLSAgUHlCeXRlc19UeXBlPXB5dGhvbjMyLlB5Qnl0ZXNfVHlwZSBEQVRBCi0gIFB5Q0Z1bmN0aW9uX0NhbGw9cHl0aG9uMzIuUHlDRnVuY3Rpb25fQ2FsbAotICBQeUNGdW5jdGlvbl9DbGVhckZyZWVMaXN0PXB5dGhvbjMyLlB5Q0Z1bmN0aW9uX0NsZWFyRnJlZUxpc3QKLSAgUHlDRnVuY3Rpb25fR2V0RmxhZ3M9cHl0aG9uMzIuUHlDRnVuY3Rpb25fR2V0RmxhZ3MKLSAgUHlDRnVuY3Rpb25fR2V0RnVuY3Rpb249cHl0aG9uMzIuUHlDRnVuY3Rpb25fR2V0RnVuY3Rpb24KLSAgUHlDRnVuY3Rpb25fR2V0U2VsZj1weXRob24zMi5QeUNGdW5jdGlvbl9HZXRTZWxmCi0gIFB5Q0Z1bmN0aW9uX05ld0V4PXB5dGhvbjMyLlB5Q0Z1bmN0aW9uX05ld0V4Ci0gIFB5Q0Z1bmN0aW9uX1R5cGU9cHl0aG9uMzIuUHlDRnVuY3Rpb25fVHlwZSBEQVRBCi0gIFB5Q2FsbEl0ZXJfTmV3PXB5dGhvbjMyLlB5Q2FsbEl0ZXJfTmV3Ci0gIFB5Q2FsbEl0ZXJfVHlwZT1weXRob24zMi5QeUNhbGxJdGVyX1R5cGUgREFUQQotICBQeUNhbGxhYmxlX0NoZWNrPXB5dGhvbjMyLlB5Q2FsbGFibGVfQ2hlY2sKLSAgUHlDYXBzdWxlX0dldENvbnRleHQ9cHl0aG9uMzIuUHlDYXBzdWxlX0dldENvbnRleHQKLSAgUHlDYXBzdWxlX0dldERlc3RydWN0b3I9cHl0aG9uMzIuUHlDYXBzdWxlX0dldERlc3RydWN0b3IKLSAgUHlDYXBzdWxlX0dldE5hbWU9cHl0aG9uMzIuUHlDYXBzdWxlX0dldE5hbWUKLSAgUHlDYXBzdWxlX0dldFBvaW50ZXI9cHl0aG9uMzIuUHlDYXBzdWxlX0dldFBvaW50ZXIKLSAgUHlDYXBzdWxlX0ltcG9ydD1weXRob24zMi5QeUNhcHN1bGVfSW1wb3J0Ci0gIFB5Q2Fwc3VsZV9Jc1ZhbGlkPXB5dGhvbjMyLlB5Q2Fwc3VsZV9Jc1ZhbGlkCi0gIFB5Q2Fwc3VsZV9OZXc9cHl0aG9uMzIuUHlDYXBzdWxlX05ldwotICBQeUNhcHN1bGVfU2V0Q29udGV4dD1weXRob24zMi5QeUNhcHN1bGVfU2V0Q29udGV4dAotICBQeUNhcHN1bGVfU2V0RGVzdHJ1Y3Rvcj1weXRob24zMi5QeUNhcHN1bGVfU2V0RGVzdHJ1Y3RvcgotICBQeUNhcHN1bGVfU2V0TmFtZT1weXRob24zMi5QeUNhcHN1bGVfU2V0TmFtZQotICBQeUNhcHN1bGVfU2V0UG9pbnRlcj1weXRob24zMi5QeUNhcHN1bGVfU2V0UG9pbnRlcgotICBQeUNhcHN1bGVfVHlwZT1weXRob24zMi5QeUNhcHN1bGVfVHlwZSBEQVRBCi0gIFB5Q2xhc3NNZXRob2REZXNjcl9UeXBlPXB5dGhvbjMyLlB5Q2xhc3NNZXRob2REZXNjcl9UeXBlIERBVEEKLSAgUHlDb2RlY19CYWNrc2xhc2hSZXBsYWNlRXJyb3JzPXB5dGhvbjMyLlB5Q29kZWNfQmFja3NsYXNoUmVwbGFjZUVycm9ycwotICBQeUNvZGVjX0RlY29kZT1weXRob24zMi5QeUNvZGVjX0RlY29kZQotICBQeUNvZGVjX0RlY29kZXI9cHl0aG9uMzIuUHlDb2RlY19EZWNvZGVyCi0gIFB5Q29kZWNfRW5jb2RlPXB5dGhvbjMyLlB5Q29kZWNfRW5jb2RlCi0gIFB5Q29kZWNfRW5jb2Rlcj1weXRob24zMi5QeUNvZGVjX0VuY29kZXIKLSAgUHlDb2RlY19JZ25vcmVFcnJvcnM9cHl0aG9uMzIuUHlDb2RlY19JZ25vcmVFcnJvcnMKLSAgUHlDb2RlY19JbmNyZW1lbnRhbERlY29kZXI9cHl0aG9uMzIuUHlDb2RlY19JbmNyZW1lbnRhbERlY29kZXIKLSAgUHlDb2RlY19JbmNyZW1lbnRhbEVuY29kZXI9cHl0aG9uMzIuUHlDb2RlY19JbmNyZW1lbnRhbEVuY29kZXIKLSAgUHlDb2RlY19Lbm93bkVuY29kaW5nPXB5dGhvbjMyLlB5Q29kZWNfS25vd25FbmNvZGluZwotICBQeUNvZGVjX0xvb2t1cEVycm9yPXB5dGhvbjMyLlB5Q29kZWNfTG9va3VwRXJyb3IKLSAgUHlDb2RlY19SZWdpc3Rlcj1weXRob24zMi5QeUNvZGVjX1JlZ2lzdGVyCi0gIFB5Q29kZWNfUmVnaXN0ZXJFcnJvcj1weXRob24zMi5QeUNvZGVjX1JlZ2lzdGVyRXJyb3IKLSAgUHlDb2RlY19SZXBsYWNlRXJyb3JzPXB5dGhvbjMyLlB5Q29kZWNfUmVwbGFjZUVycm9ycwotICBQeUNvZGVjX1N0cmVhbVJlYWRlcj1weXRob24zMi5QeUNvZGVjX1N0cmVhbVJlYWRlcgotICBQeUNvZGVjX1N0cmVhbVdyaXRlcj1weXRob24zMi5QeUNvZGVjX1N0cmVhbVdyaXRlcgotICBQeUNvZGVjX1N0cmljdEVycm9ycz1weXRob24zMi5QeUNvZGVjX1N0cmljdEVycm9ycwotICBQeUNvZGVjX1hNTENoYXJSZWZSZXBsYWNlRXJyb3JzPXB5dGhvbjMyLlB5Q29kZWNfWE1MQ2hhclJlZlJlcGxhY2VFcnJvcnMKLSAgUHlDb21wbGV4X0Zyb21Eb3VibGVzPXB5dGhvbjMyLlB5Q29tcGxleF9Gcm9tRG91YmxlcwotICBQeUNvbXBsZXhfSW1hZ0FzRG91YmxlPXB5dGhvbjMyLlB5Q29tcGxleF9JbWFnQXNEb3VibGUKLSAgUHlDb21wbGV4X1JlYWxBc0RvdWJsZT1weXRob24zMi5QeUNvbXBsZXhfUmVhbEFzRG91YmxlCi0gIFB5Q29tcGxleF9UeXBlPXB5dGhvbjMyLlB5Q29tcGxleF9UeXBlIERBVEEKLSAgUHlEZXNjcl9OZXdDbGFzc01ldGhvZD1weXRob24zMi5QeURlc2NyX05ld0NsYXNzTWV0aG9kCi0gIFB5RGVzY3JfTmV3R2V0U2V0PXB5dGhvbjMyLlB5RGVzY3JfTmV3R2V0U2V0Ci0gIFB5RGVzY3JfTmV3TWVtYmVyPXB5dGhvbjMyLlB5RGVzY3JfTmV3TWVtYmVyCi0gIFB5RGVzY3JfTmV3TWV0aG9kPXB5dGhvbjMyLlB5RGVzY3JfTmV3TWV0aG9kCi0gIFB5RGljdEl0ZW1zX1R5cGU9cHl0aG9uMzIuUHlEaWN0SXRlbXNfVHlwZSBEQVRBCi0gIFB5RGljdEl0ZXJJdGVtX1R5cGU9cHl0aG9uMzIuUHlEaWN0SXRlckl0ZW1fVHlwZSBEQVRBCi0gIFB5RGljdEl0ZXJLZXlfVHlwZT1weXRob24zMi5QeURpY3RJdGVyS2V5X1R5cGUgREFUQQotICBQeURpY3RJdGVyVmFsdWVfVHlwZT1weXRob24zMi5QeURpY3RJdGVyVmFsdWVfVHlwZSBEQVRBCi0gIFB5RGljdEtleXNfVHlwZT1weXRob24zMi5QeURpY3RLZXlzX1R5cGUgREFUQQotICBQeURpY3RQcm94eV9OZXc9cHl0aG9uMzIuUHlEaWN0UHJveHlfTmV3Ci0gIFB5RGljdFByb3h5X1R5cGU9cHl0aG9uMzIuUHlEaWN0UHJveHlfVHlwZSBEQVRBCi0gIFB5RGljdFZhbHVlc19UeXBlPXB5dGhvbjMyLlB5RGljdFZhbHVlc19UeXBlIERBVEEKLSAgUHlEaWN0X0NsZWFyPXB5dGhvbjMyLlB5RGljdF9DbGVhcgotICBQeURpY3RfQ29udGFpbnM9cHl0aG9uMzIuUHlEaWN0X0NvbnRhaW5zCi0gIFB5RGljdF9Db3B5PXB5dGhvbjMyLlB5RGljdF9Db3B5Ci0gIFB5RGljdF9EZWxJdGVtPXB5dGhvbjMyLlB5RGljdF9EZWxJdGVtCi0gIFB5RGljdF9EZWxJdGVtU3RyaW5nPXB5dGhvbjMyLlB5RGljdF9EZWxJdGVtU3RyaW5nCi0gIFB5RGljdF9HZXRJdGVtPXB5dGhvbjMyLlB5RGljdF9HZXRJdGVtCi0gIFB5RGljdF9HZXRJdGVtU3RyaW5nPXB5dGhvbjMyLlB5RGljdF9HZXRJdGVtU3RyaW5nCi0gIFB5RGljdF9HZXRJdGVtV2l0aEVycm9yPXB5dGhvbjMyLlB5RGljdF9HZXRJdGVtV2l0aEVycm9yCi0gIFB5RGljdF9JdGVtcz1weXRob24zMi5QeURpY3RfSXRlbXMKLSAgUHlEaWN0X0tleXM9cHl0aG9uMzIuUHlEaWN0X0tleXMKLSAgUHlEaWN0X01lcmdlPXB5dGhvbjMyLlB5RGljdF9NZXJnZQotICBQeURpY3RfTWVyZ2VGcm9tU2VxMj1weXRob24zMi5QeURpY3RfTWVyZ2VGcm9tU2VxMgotICBQeURpY3RfTmV3PXB5dGhvbjMyLlB5RGljdF9OZXcKLSAgUHlEaWN0X05leHQ9cHl0aG9uMzIuUHlEaWN0X05leHQKLSAgUHlEaWN0X1NldEl0ZW09cHl0aG9uMzIuUHlEaWN0X1NldEl0ZW0KLSAgUHlEaWN0X1NldEl0ZW1TdHJpbmc9cHl0aG9uMzIuUHlEaWN0X1NldEl0ZW1TdHJpbmcKLSAgUHlEaWN0X1NpemU9cHl0aG9uMzIuUHlEaWN0X1NpemUKLSAgUHlEaWN0X1R5cGU9cHl0aG9uMzIuUHlEaWN0X1R5cGUgREFUQQotICBQeURpY3RfVXBkYXRlPXB5dGhvbjMyLlB5RGljdF9VcGRhdGUKLSAgUHlEaWN0X1ZhbHVlcz1weXRob24zMi5QeURpY3RfVmFsdWVzCi0gIFB5RWxsaXBzaXNfVHlwZT1weXRob24zMi5QeUVsbGlwc2lzX1R5cGUgREFUQQotICBQeUVudW1fVHlwZT1weXRob24zMi5QeUVudW1fVHlwZSBEQVRBCi0gIFB5RXJyX0JhZEFyZ3VtZW50PXB5dGhvbjMyLlB5RXJyX0JhZEFyZ3VtZW50Ci0gIFB5RXJyX0JhZEludGVybmFsQ2FsbD1weXRob24zMi5QeUVycl9CYWRJbnRlcm5hbENhbGwKLSAgUHlFcnJfQ2hlY2tTaWduYWxzPXB5dGhvbjMyLlB5RXJyX0NoZWNrU2lnbmFscwotICBQeUVycl9DbGVhcj1weXRob24zMi5QeUVycl9DbGVhcgotICBQeUVycl9EaXNwbGF5PXB5dGhvbjMyLlB5RXJyX0Rpc3BsYXkKLSAgUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcz1weXRob24zMi5QeUVycl9FeGNlcHRpb25NYXRjaGVzCi0gIFB5RXJyX0ZldGNoPXB5dGhvbjMyLlB5RXJyX0ZldGNoCi0gIFB5RXJyX0Zvcm1hdD1weXRob24zMi5QeUVycl9Gb3JtYXQKLSAgUHlFcnJfR2l2ZW5FeGNlcHRpb25NYXRjaGVzPXB5dGhvbjMyLlB5RXJyX0dpdmVuRXhjZXB0aW9uTWF0Y2hlcwotICBQeUVycl9OZXdFeGNlcHRpb249cHl0aG9uMzIuUHlFcnJfTmV3RXhjZXB0aW9uCi0gIFB5RXJyX05ld0V4Y2VwdGlvbldpdGhEb2M9cHl0aG9uMzIuUHlFcnJfTmV3RXhjZXB0aW9uV2l0aERvYwotICBQeUVycl9Ob01lbW9yeT1weXRob24zMi5QeUVycl9Ob01lbW9yeQotICBQeUVycl9Ob3JtYWxpemVFeGNlcHRpb249cHl0aG9uMzIuUHlFcnJfTm9ybWFsaXplRXhjZXB0aW9uCi0gIFB5RXJyX09jY3VycmVkPXB5dGhvbjMyLlB5RXJyX09jY3VycmVkCi0gIFB5RXJyX1ByaW50PXB5dGhvbjMyLlB5RXJyX1ByaW50Ci0gIFB5RXJyX1ByaW50RXg9cHl0aG9uMzIuUHlFcnJfUHJpbnRFeAotICBQeUVycl9Qcm9ncmFtVGV4dD1weXRob24zMi5QeUVycl9Qcm9ncmFtVGV4dAotICBQeUVycl9SZXN0b3JlPXB5dGhvbjMyLlB5RXJyX1Jlc3RvcmUKLSAgUHlFcnJfU2V0RnJvbUVycm5vPXB5dGhvbjMyLlB5RXJyX1NldEZyb21FcnJubwotICBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWU9cHl0aG9uMzIuUHlFcnJfU2V0RnJvbUVycm5vV2l0aEZpbGVuYW1lCi0gIFB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZU9iamVjdD1weXRob24zMi5QeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWVPYmplY3QKLSAgUHlFcnJfU2V0SW50ZXJydXB0PXB5dGhvbjMyLlB5RXJyX1NldEludGVycnVwdAotICBQeUVycl9TZXROb25lPXB5dGhvbjMyLlB5RXJyX1NldE5vbmUKLSAgUHlFcnJfU2V0T2JqZWN0PXB5dGhvbjMyLlB5RXJyX1NldE9iamVjdAotICBQeUVycl9TZXRTdHJpbmc9cHl0aG9uMzIuUHlFcnJfU2V0U3RyaW5nCi0gIFB5RXJyX1N5bnRheExvY2F0aW9uPXB5dGhvbjMyLlB5RXJyX1N5bnRheExvY2F0aW9uCi0gIFB5RXJyX1dhcm5FeD1weXRob24zMi5QeUVycl9XYXJuRXgKLSAgUHlFcnJfV2FybkV4cGxpY2l0PXB5dGhvbjMyLlB5RXJyX1dhcm5FeHBsaWNpdAotICBQeUVycl9XYXJuRm9ybWF0PXB5dGhvbjMyLlB5RXJyX1dhcm5Gb3JtYXQKLSAgUHlFcnJfV3JpdGVVbnJhaXNhYmxlPXB5dGhvbjMyLlB5RXJyX1dyaXRlVW5yYWlzYWJsZQotICBQeUV2YWxfQWNxdWlyZUxvY2s9cHl0aG9uMzIuUHlFdmFsX0FjcXVpcmVMb2NrCi0gIFB5RXZhbF9BY3F1aXJlVGhyZWFkPXB5dGhvbjMyLlB5RXZhbF9BY3F1aXJlVGhyZWFkCi0gIFB5RXZhbF9DYWxsRnVuY3Rpb249cHl0aG9uMzIuUHlFdmFsX0NhbGxGdW5jdGlvbgotICBQeUV2YWxfQ2FsbE1ldGhvZD1weXRob24zMi5QeUV2YWxfQ2FsbE1ldGhvZAotICBQeUV2YWxfQ2FsbE9iamVjdFdpdGhLZXl3b3Jkcz1weXRob24zMi5QeUV2YWxfQ2FsbE9iamVjdFdpdGhLZXl3b3JkcwotICBQeUV2YWxfRXZhbENvZGU9cHl0aG9uMzIuUHlFdmFsX0V2YWxDb2RlCi0gIFB5RXZhbF9FdmFsQ29kZUV4PXB5dGhvbjMyLlB5RXZhbF9FdmFsQ29kZUV4Ci0gIFB5RXZhbF9FdmFsRnJhbWU9cHl0aG9uMzIuUHlFdmFsX0V2YWxGcmFtZQotICBQeUV2YWxfRXZhbEZyYW1lRXg9cHl0aG9uMzIuUHlFdmFsX0V2YWxGcmFtZUV4Ci0gIFB5RXZhbF9HZXRCdWlsdGlucz1weXRob24zMi5QeUV2YWxfR2V0QnVpbHRpbnMKLSAgUHlFdmFsX0dldENhbGxTdGF0cz1weXRob24zMi5QeUV2YWxfR2V0Q2FsbFN0YXRzCi0gIFB5RXZhbF9HZXRGcmFtZT1weXRob24zMi5QeUV2YWxfR2V0RnJhbWUKLSAgUHlFdmFsX0dldEZ1bmNEZXNjPXB5dGhvbjMyLlB5RXZhbF9HZXRGdW5jRGVzYwotICBQeUV2YWxfR2V0RnVuY05hbWU9cHl0aG9uMzIuUHlFdmFsX0dldEZ1bmNOYW1lCi0gIFB5RXZhbF9HZXRHbG9iYWxzPXB5dGhvbjMyLlB5RXZhbF9HZXRHbG9iYWxzCi0gIFB5RXZhbF9HZXRMb2NhbHM9cHl0aG9uMzIuUHlFdmFsX0dldExvY2FscwotICBQeUV2YWxfSW5pdFRocmVhZHM9cHl0aG9uMzIuUHlFdmFsX0luaXRUaHJlYWRzCi0gIFB5RXZhbF9SZUluaXRUaHJlYWRzPXB5dGhvbjMyLlB5RXZhbF9SZUluaXRUaHJlYWRzCi0gIFB5RXZhbF9SZWxlYXNlTG9jaz1weXRob24zMi5QeUV2YWxfUmVsZWFzZUxvY2sKLSAgUHlFdmFsX1JlbGVhc2VUaHJlYWQ9cHl0aG9uMzIuUHlFdmFsX1JlbGVhc2VUaHJlYWQKLSAgUHlFdmFsX1Jlc3RvcmVUaHJlYWQ9cHl0aG9uMzIuUHlFdmFsX1Jlc3RvcmVUaHJlYWQKLSAgUHlFdmFsX1NhdmVUaHJlYWQ9cHl0aG9uMzIuUHlFdmFsX1NhdmVUaHJlYWQKLSAgUHlFdmFsX1RocmVhZHNJbml0aWFsaXplZD1weXRob24zMi5QeUV2YWxfVGhyZWFkc0luaXRpYWxpemVkCi0gIFB5RXhjX0FyaXRobWV0aWNFcnJvcj1weXRob24zMi5QeUV4Y19Bcml0aG1ldGljRXJyb3IgREFUQQotICBQeUV4Y19Bc3NlcnRpb25FcnJvcj1weXRob24zMi5QeUV4Y19Bc3NlcnRpb25FcnJvciBEQVRBCi0gIFB5RXhjX0F0dHJpYnV0ZUVycm9yPXB5dGhvbjMyLlB5RXhjX0F0dHJpYnV0ZUVycm9yIERBVEEKLSAgUHlFeGNfQmFzZUV4Y2VwdGlvbj1weXRob24zMi5QeUV4Y19CYXNlRXhjZXB0aW9uIERBVEEKLSAgUHlFeGNfQnVmZmVyRXJyb3I9cHl0aG9uMzIuUHlFeGNfQnVmZmVyRXJyb3IgREFUQQotICBQeUV4Y19CeXRlc1dhcm5pbmc9cHl0aG9uMzIuUHlFeGNfQnl0ZXNXYXJuaW5nIERBVEEKLSAgUHlFeGNfRGVwcmVjYXRpb25XYXJuaW5nPXB5dGhvbjMyLlB5RXhjX0RlcHJlY2F0aW9uV2FybmluZyBEQVRBCi0gIFB5RXhjX0VPRkVycm9yPXB5dGhvbjMyLlB5RXhjX0VPRkVycm9yIERBVEEKLSAgUHlFeGNfRW52aXJvbm1lbnRFcnJvcj1weXRob24zMi5QeUV4Y19FbnZpcm9ubWVudEVycm9yIERBVEEKLSAgUHlFeGNfRXhjZXB0aW9uPXB5dGhvbjMyLlB5RXhjX0V4Y2VwdGlvbiBEQVRBCi0gIFB5RXhjX0Zsb2F0aW5nUG9pbnRFcnJvcj1weXRob24zMi5QeUV4Y19GbG9hdGluZ1BvaW50RXJyb3IgREFUQQotICBQeUV4Y19GdXR1cmVXYXJuaW5nPXB5dGhvbjMyLlB5RXhjX0Z1dHVyZVdhcm5pbmcgREFUQQotICBQeUV4Y19HZW5lcmF0b3JFeGl0PXB5dGhvbjMyLlB5RXhjX0dlbmVyYXRvckV4aXQgREFUQQotICBQeUV4Y19JT0Vycm9yPXB5dGhvbjMyLlB5RXhjX0lPRXJyb3IgREFUQQotICBQeUV4Y19JbXBvcnRFcnJvcj1weXRob24zMi5QeUV4Y19JbXBvcnRFcnJvciBEQVRBCi0gIFB5RXhjX0ltcG9ydFdhcm5pbmc9cHl0aG9uMzIuUHlFeGNfSW1wb3J0V2FybmluZyBEQVRBCi0gIFB5RXhjX0luZGVudGF0aW9uRXJyb3I9cHl0aG9uMzIuUHlFeGNfSW5kZW50YXRpb25FcnJvciBEQVRBCi0gIFB5RXhjX0luZGV4RXJyb3I9cHl0aG9uMzIuUHlFeGNfSW5kZXhFcnJvciBEQVRBCi0gIFB5RXhjX0tleUVycm9yPXB5dGhvbjMyLlB5RXhjX0tleUVycm9yIERBVEEKLSAgUHlFeGNfS2V5Ym9hcmRJbnRlcnJ1cHQ9cHl0aG9uMzIuUHlFeGNfS2V5Ym9hcmRJbnRlcnJ1cHQgREFUQQotICBQeUV4Y19Mb29rdXBFcnJvcj1weXRob24zMi5QeUV4Y19Mb29rdXBFcnJvciBEQVRBCi0gIFB5RXhjX01lbW9yeUVycm9yPXB5dGhvbjMyLlB5RXhjX01lbW9yeUVycm9yIERBVEEKLSAgUHlFeGNfTWVtb3J5RXJyb3JJbnN0PXB5dGhvbjMyLlB5RXhjX01lbW9yeUVycm9ySW5zdCBEQVRBCi0gIFB5RXhjX05hbWVFcnJvcj1weXRob24zMi5QeUV4Y19OYW1lRXJyb3IgREFUQQotICBQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yPXB5dGhvbjMyLlB5RXhjX05vdEltcGxlbWVudGVkRXJyb3IgREFUQQotICBQeUV4Y19PU0Vycm9yPXB5dGhvbjMyLlB5RXhjX09TRXJyb3IgREFUQQotICBQeUV4Y19PdmVyZmxvd0Vycm9yPXB5dGhvbjMyLlB5RXhjX092ZXJmbG93RXJyb3IgREFUQQotICBQeUV4Y19QZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nPXB5dGhvbjMyLlB5RXhjX1BlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcgREFUQQotICBQeUV4Y19SZWN1cnNpb25FcnJvckluc3Q9cHl0aG9uMzIuUHlFeGNfUmVjdXJzaW9uRXJyb3JJbnN0IERBVEEKLSAgUHlFeGNfUmVmZXJlbmNlRXJyb3I9cHl0aG9uMzIuUHlFeGNfUmVmZXJlbmNlRXJyb3IgREFUQQotICBQeUV4Y19SdW50aW1lRXJyb3I9cHl0aG9uMzIuUHlFeGNfUnVudGltZUVycm9yIERBVEEKLSAgUHlFeGNfUnVudGltZVdhcm5pbmc9cHl0aG9uMzIuUHlFeGNfUnVudGltZVdhcm5pbmcgREFUQQotICBQeUV4Y19TdG9wSXRlcmF0aW9uPXB5dGhvbjMyLlB5RXhjX1N0b3BJdGVyYXRpb24gREFUQQotICBQeUV4Y19TeW50YXhFcnJvcj1weXRob24zMi5QeUV4Y19TeW50YXhFcnJvciBEQVRBCi0gIFB5RXhjX1N5bnRheFdhcm5pbmc9cHl0aG9uMzIuUHlFeGNfU3ludGF4V2FybmluZyBEQVRBCi0gIFB5RXhjX1N5c3RlbUVycm9yPXB5dGhvbjMyLlB5RXhjX1N5c3RlbUVycm9yIERBVEEKLSAgUHlFeGNfU3lzdGVtRXhpdD1weXRob24zMi5QeUV4Y19TeXN0ZW1FeGl0IERBVEEKLSAgUHlFeGNfVGFiRXJyb3I9cHl0aG9uMzIuUHlFeGNfVGFiRXJyb3IgREFUQQotICBQeUV4Y19UeXBlRXJyb3I9cHl0aG9uMzIuUHlFeGNfVHlwZUVycm9yIERBVEEKLSAgUHlFeGNfVW5ib3VuZExvY2FsRXJyb3I9cHl0aG9uMzIuUHlFeGNfVW5ib3VuZExvY2FsRXJyb3IgREFUQQotICBQeUV4Y19Vbmljb2RlRGVjb2RlRXJyb3I9cHl0aG9uMzIuUHlFeGNfVW5pY29kZURlY29kZUVycm9yIERBVEEKLSAgUHlFeGNfVW5pY29kZUVuY29kZUVycm9yPXB5dGhvbjMyLlB5RXhjX1VuaWNvZGVFbmNvZGVFcnJvciBEQVRBCi0gIFB5RXhjX1VuaWNvZGVFcnJvcj1weXRob24zMi5QeUV4Y19Vbmljb2RlRXJyb3IgREFUQQotICBQeUV4Y19Vbmljb2RlVHJhbnNsYXRlRXJyb3I9cHl0aG9uMzIuUHlFeGNfVW5pY29kZVRyYW5zbGF0ZUVycm9yIERBVEEKLSAgUHlFeGNfVW5pY29kZVdhcm5pbmc9cHl0aG9uMzIuUHlFeGNfVW5pY29kZVdhcm5pbmcgREFUQQotICBQeUV4Y19Vc2VyV2FybmluZz1weXRob24zMi5QeUV4Y19Vc2VyV2FybmluZyBEQVRBCi0gIFB5RXhjX1ZhbHVlRXJyb3I9cHl0aG9uMzIuUHlFeGNfVmFsdWVFcnJvciBEQVRBCi0gIFB5RXhjX1dhcm5pbmc9cHl0aG9uMzIuUHlFeGNfV2FybmluZyBEQVRBCi0gIFB5RXhjX1plcm9EaXZpc2lvbkVycm9yPXB5dGhvbjMyLlB5RXhjX1plcm9EaXZpc2lvbkVycm9yIERBVEEKLSAgUHlFeGNlcHRpb25fR2V0Q2F1c2U9cHl0aG9uMzIuUHlFeGNlcHRpb25fR2V0Q2F1c2UKLSAgUHlFeGNlcHRpb25fR2V0Q29udGV4dD1weXRob24zMi5QeUV4Y2VwdGlvbl9HZXRDb250ZXh0Ci0gIFB5RXhjZXB0aW9uX0dldFRyYWNlYmFjaz1weXRob24zMi5QeUV4Y2VwdGlvbl9HZXRUcmFjZWJhY2sKLSAgUHlFeGNlcHRpb25fU2V0Q2F1c2U9cHl0aG9uMzIuUHlFeGNlcHRpb25fU2V0Q2F1c2UKLSAgUHlFeGNlcHRpb25fU2V0Q29udGV4dD1weXRob24zMi5QeUV4Y2VwdGlvbl9TZXRDb250ZXh0Ci0gIFB5RXhjZXB0aW9uX1NldFRyYWNlYmFjaz1weXRob24zMi5QeUV4Y2VwdGlvbl9TZXRUcmFjZWJhY2sKLSAgUHlGaWxlX0Zyb21GZD1weXRob24zMi5QeUZpbGVfRnJvbUZkCi0gIFB5RmlsZV9HZXRMaW5lPXB5dGhvbjMyLlB5RmlsZV9HZXRMaW5lCi0gIFB5RmlsZV9Xcml0ZU9iamVjdD1weXRob24zMi5QeUZpbGVfV3JpdGVPYmplY3QKLSAgUHlGaWxlX1dyaXRlU3RyaW5nPXB5dGhvbjMyLlB5RmlsZV9Xcml0ZVN0cmluZwotICBQeUZpbHRlcl9UeXBlPXB5dGhvbjMyLlB5RmlsdGVyX1R5cGUgREFUQQotICBQeUZsb2F0X0FzRG91YmxlPXB5dGhvbjMyLlB5RmxvYXRfQXNEb3VibGUKLSAgUHlGbG9hdF9Gcm9tRG91YmxlPXB5dGhvbjMyLlB5RmxvYXRfRnJvbURvdWJsZQotICBQeUZsb2F0X0Zyb21TdHJpbmc9cHl0aG9uMzIuUHlGbG9hdF9Gcm9tU3RyaW5nCi0gIFB5RmxvYXRfR2V0SW5mbz1weXRob24zMi5QeUZsb2F0X0dldEluZm8KLSAgUHlGbG9hdF9HZXRNYXg9cHl0aG9uMzIuUHlGbG9hdF9HZXRNYXgKLSAgUHlGbG9hdF9HZXRNaW49cHl0aG9uMzIuUHlGbG9hdF9HZXRNaW4KLSAgUHlGbG9hdF9UeXBlPXB5dGhvbjMyLlB5RmxvYXRfVHlwZSBEQVRBCi0gIFB5RnJvemVuU2V0X05ldz1weXRob24zMi5QeUZyb3plblNldF9OZXcKLSAgUHlGcm96ZW5TZXRfVHlwZT1weXRob24zMi5QeUZyb3plblNldF9UeXBlIERBVEEKLSAgUHlHQ19Db2xsZWN0PXB5dGhvbjMyLlB5R0NfQ29sbGVjdAotICBQeUdJTFN0YXRlX0Vuc3VyZT1weXRob24zMi5QeUdJTFN0YXRlX0Vuc3VyZQotICBQeUdJTFN0YXRlX0dldFRoaXNUaHJlYWRTdGF0ZT1weXRob24zMi5QeUdJTFN0YXRlX0dldFRoaXNUaHJlYWRTdGF0ZQotICBQeUdJTFN0YXRlX1JlbGVhc2U9cHl0aG9uMzIuUHlHSUxTdGF0ZV9SZWxlYXNlCi0gIFB5R2V0U2V0RGVzY3JfVHlwZT1weXRob24zMi5QeUdldFNldERlc2NyX1R5cGUgREFUQQotICBQeUltcG9ydF9BZGRNb2R1bGU9cHl0aG9uMzIuUHlJbXBvcnRfQWRkTW9kdWxlCi0gIFB5SW1wb3J0X0FwcGVuZEluaXR0YWI9cHl0aG9uMzIuUHlJbXBvcnRfQXBwZW5kSW5pdHRhYgotICBQeUltcG9ydF9DbGVhbnVwPXB5dGhvbjMyLlB5SW1wb3J0X0NsZWFudXAKLSAgUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGU9cHl0aG9uMzIuUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGUKLSAgUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVFeD1weXRob24zMi5QeUltcG9ydF9FeGVjQ29kZU1vZHVsZUV4Ci0gIFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlV2l0aFBhdGhuYW1lcz1weXRob24zMi5QeUltcG9ydF9FeGVjQ29kZU1vZHVsZVdpdGhQYXRobmFtZXMKLSAgUHlJbXBvcnRfR2V0SW1wb3J0ZXI9cHl0aG9uMzIuUHlJbXBvcnRfR2V0SW1wb3J0ZXIKLSAgUHlJbXBvcnRfR2V0TWFnaWNOdW1iZXI9cHl0aG9uMzIuUHlJbXBvcnRfR2V0TWFnaWNOdW1iZXIKLSAgUHlJbXBvcnRfR2V0TWFnaWNUYWc9cHl0aG9uMzIuUHlJbXBvcnRfR2V0TWFnaWNUYWcKLSAgUHlJbXBvcnRfR2V0TW9kdWxlRGljdD1weXRob24zMi5QeUltcG9ydF9HZXRNb2R1bGVEaWN0Ci0gIFB5SW1wb3J0X0ltcG9ydD1weXRob24zMi5QeUltcG9ydF9JbXBvcnQKLSAgUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlPXB5dGhvbjMyLlB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZQotICBQeUltcG9ydF9JbXBvcnRNb2R1bGU9cHl0aG9uMzIuUHlJbXBvcnRfSW1wb3J0TW9kdWxlCi0gIFB5SW1wb3J0X0ltcG9ydE1vZHVsZUxldmVsPXB5dGhvbjMyLlB5SW1wb3J0X0ltcG9ydE1vZHVsZUxldmVsCi0gIFB5SW1wb3J0X0ltcG9ydE1vZHVsZU5vQmxvY2s9cHl0aG9uMzIuUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jawotICBQeUltcG9ydF9SZWxvYWRNb2R1bGU9cHl0aG9uMzIuUHlJbXBvcnRfUmVsb2FkTW9kdWxlCi0gIFB5SW50ZXJwcmV0ZXJTdGF0ZV9DbGVhcj1weXRob24zMi5QeUludGVycHJldGVyU3RhdGVfQ2xlYXIKLSAgUHlJbnRlcnByZXRlclN0YXRlX0RlbGV0ZT1weXRob24zMi5QeUludGVycHJldGVyU3RhdGVfRGVsZXRlCi0gIFB5SW50ZXJwcmV0ZXJTdGF0ZV9OZXc9cHl0aG9uMzIuUHlJbnRlcnByZXRlclN0YXRlX05ldwotICBQeUl0ZXJfTmV4dD1weXRob24zMi5QeUl0ZXJfTmV4dAotICBQeUxpc3RJdGVyX1R5cGU9cHl0aG9uMzIuUHlMaXN0SXRlcl9UeXBlIERBVEEKLSAgUHlMaXN0UmV2SXRlcl9UeXBlPXB5dGhvbjMyLlB5TGlzdFJldkl0ZXJfVHlwZSBEQVRBCi0gIFB5TGlzdF9BcHBlbmQ9cHl0aG9uMzIuUHlMaXN0X0FwcGVuZAotICBQeUxpc3RfQXNUdXBsZT1weXRob24zMi5QeUxpc3RfQXNUdXBsZQotICBQeUxpc3RfR2V0SXRlbT1weXRob24zMi5QeUxpc3RfR2V0SXRlbQotICBQeUxpc3RfR2V0U2xpY2U9cHl0aG9uMzIuUHlMaXN0X0dldFNsaWNlCi0gIFB5TGlzdF9JbnNlcnQ9cHl0aG9uMzIuUHlMaXN0X0luc2VydAotICBQeUxpc3RfTmV3PXB5dGhvbjMyLlB5TGlzdF9OZXcKLSAgUHlMaXN0X1JldmVyc2U9cHl0aG9uMzIuUHlMaXN0X1JldmVyc2UKLSAgUHlMaXN0X1NldEl0ZW09cHl0aG9uMzIuUHlMaXN0X1NldEl0ZW0KLSAgUHlMaXN0X1NldFNsaWNlPXB5dGhvbjMyLlB5TGlzdF9TZXRTbGljZQotICBQeUxpc3RfU2l6ZT1weXRob24zMi5QeUxpc3RfU2l6ZQotICBQeUxpc3RfU29ydD1weXRob24zMi5QeUxpc3RfU29ydAotICBQeUxpc3RfVHlwZT1weXRob24zMi5QeUxpc3RfVHlwZSBEQVRBCi0gIFB5TG9uZ1JhbmdlSXRlcl9UeXBlPXB5dGhvbjMyLlB5TG9uZ1JhbmdlSXRlcl9UeXBlIERBVEEKLSAgUHlMb25nX0FzRG91YmxlPXB5dGhvbjMyLlB5TG9uZ19Bc0RvdWJsZQotICBQeUxvbmdfQXNMb25nPXB5dGhvbjMyLlB5TG9uZ19Bc0xvbmcKLSAgUHlMb25nX0FzTG9uZ0FuZE92ZXJmbG93PXB5dGhvbjMyLlB5TG9uZ19Bc0xvbmdBbmRPdmVyZmxvdwotICBQeUxvbmdfQXNMb25nTG9uZz1weXRob24zMi5QeUxvbmdfQXNMb25nTG9uZwotICBQeUxvbmdfQXNMb25nTG9uZ0FuZE92ZXJmbG93PXB5dGhvbjMyLlB5TG9uZ19Bc0xvbmdMb25nQW5kT3ZlcmZsb3cKLSAgUHlMb25nX0FzU2l6ZV90PXB5dGhvbjMyLlB5TG9uZ19Bc1NpemVfdAotICBQeUxvbmdfQXNTc2l6ZV90PXB5dGhvbjMyLlB5TG9uZ19Bc1NzaXplX3QKLSAgUHlMb25nX0FzVW5zaWduZWRMb25nPXB5dGhvbjMyLlB5TG9uZ19Bc1Vuc2lnbmVkTG9uZwotICBQeUxvbmdfQXNVbnNpZ25lZExvbmdMb25nPXB5dGhvbjMyLlB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ0xvbmcKLSAgUHlMb25nX0FzVW5zaWduZWRMb25nTG9uZ01hc2s9cHl0aG9uMzIuUHlMb25nX0FzVW5zaWduZWRMb25nTG9uZ01hc2sKLSAgUHlMb25nX0FzVW5zaWduZWRMb25nTWFzaz1weXRob24zMi5QeUxvbmdfQXNVbnNpZ25lZExvbmdNYXNrCi0gIFB5TG9uZ19Bc1ZvaWRQdHI9cHl0aG9uMzIuUHlMb25nX0FzVm9pZFB0cgotICBQeUxvbmdfRnJvbURvdWJsZT1weXRob24zMi5QeUxvbmdfRnJvbURvdWJsZQotICBQeUxvbmdfRnJvbUxvbmc9cHl0aG9uMzIuUHlMb25nX0Zyb21Mb25nCi0gIFB5TG9uZ19Gcm9tTG9uZ0xvbmc9cHl0aG9uMzIuUHlMb25nX0Zyb21Mb25nTG9uZwotICBQeUxvbmdfRnJvbVNpemVfdD1weXRob24zMi5QeUxvbmdfRnJvbVNpemVfdAotICBQeUxvbmdfRnJvbVNzaXplX3Q9cHl0aG9uMzIuUHlMb25nX0Zyb21Tc2l6ZV90Ci0gIFB5TG9uZ19Gcm9tU3RyaW5nPXB5dGhvbjMyLlB5TG9uZ19Gcm9tU3RyaW5nCi0gIFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nPXB5dGhvbjMyLlB5TG9uZ19Gcm9tVW5zaWduZWRMb25nCi0gIFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nTG9uZz1weXRob24zMi5QeUxvbmdfRnJvbVVuc2lnbmVkTG9uZ0xvbmcKLSAgUHlMb25nX0Zyb21Wb2lkUHRyPXB5dGhvbjMyLlB5TG9uZ19Gcm9tVm9pZFB0cgotICBQeUxvbmdfR2V0SW5mbz1weXRob24zMi5QeUxvbmdfR2V0SW5mbwotICBQeUxvbmdfVHlwZT1weXRob24zMi5QeUxvbmdfVHlwZSBEQVRBCi0gIFB5TWFwX1R5cGU9cHl0aG9uMzIuUHlNYXBfVHlwZSBEQVRBCi0gIFB5TWFwcGluZ19DaGVjaz1weXRob24zMi5QeU1hcHBpbmdfQ2hlY2sKLSAgUHlNYXBwaW5nX0dldEl0ZW1TdHJpbmc9cHl0aG9uMzIuUHlNYXBwaW5nX0dldEl0ZW1TdHJpbmcKLSAgUHlNYXBwaW5nX0hhc0tleT1weXRob24zMi5QeU1hcHBpbmdfSGFzS2V5Ci0gIFB5TWFwcGluZ19IYXNLZXlTdHJpbmc9cHl0aG9uMzIuUHlNYXBwaW5nX0hhc0tleVN0cmluZwotICBQeU1hcHBpbmdfSXRlbXM9cHl0aG9uMzIuUHlNYXBwaW5nX0l0ZW1zCi0gIFB5TWFwcGluZ19LZXlzPXB5dGhvbjMyLlB5TWFwcGluZ19LZXlzCi0gIFB5TWFwcGluZ19MZW5ndGg9cHl0aG9uMzIuUHlNYXBwaW5nX0xlbmd0aAotICBQeU1hcHBpbmdfU2V0SXRlbVN0cmluZz1weXRob24zMi5QeU1hcHBpbmdfU2V0SXRlbVN0cmluZwotICBQeU1hcHBpbmdfU2l6ZT1weXRob24zMi5QeU1hcHBpbmdfU2l6ZQotICBQeU1hcHBpbmdfVmFsdWVzPXB5dGhvbjMyLlB5TWFwcGluZ19WYWx1ZXMKLSAgUHlNZW1fRnJlZT1weXRob24zMi5QeU1lbV9GcmVlCi0gIFB5TWVtX01hbGxvYz1weXRob24zMi5QeU1lbV9NYWxsb2MKLSAgUHlNZW1fUmVhbGxvYz1weXRob24zMi5QeU1lbV9SZWFsbG9jCi0gIFB5TWVtYmVyRGVzY3JfVHlwZT1weXRob24zMi5QeU1lbWJlckRlc2NyX1R5cGUgREFUQQotICBQeU1lbW9yeVZpZXdfRnJvbU9iamVjdD1weXRob24zMi5QeU1lbW9yeVZpZXdfRnJvbU9iamVjdAotICBQeU1lbW9yeVZpZXdfR2V0Q29udGlndW91cz1weXRob24zMi5QeU1lbW9yeVZpZXdfR2V0Q29udGlndW91cwotICBQeU1lbW9yeVZpZXdfVHlwZT1weXRob24zMi5QeU1lbW9yeVZpZXdfVHlwZSBEQVRBCi0gIFB5TWV0aG9kRGVzY3JfVHlwZT1weXRob24zMi5QeU1ldGhvZERlc2NyX1R5cGUgREFUQQotICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudD1weXRob24zMi5QeU1vZHVsZV9BZGRJbnRDb25zdGFudAotICBQeU1vZHVsZV9BZGRPYmplY3Q9cHl0aG9uMzIuUHlNb2R1bGVfQWRkT2JqZWN0Ci0gIFB5TW9kdWxlX0FkZFN0cmluZ0NvbnN0YW50PXB5dGhvbjMyLlB5TW9kdWxlX0FkZFN0cmluZ0NvbnN0YW50Ci0gIFB5TW9kdWxlX0NyZWF0ZTI9cHl0aG9uMzIuUHlNb2R1bGVfQ3JlYXRlMgotICBQeU1vZHVsZV9HZXREZWY9cHl0aG9uMzIuUHlNb2R1bGVfR2V0RGVmCi0gIFB5TW9kdWxlX0dldERpY3Q9cHl0aG9uMzIuUHlNb2R1bGVfR2V0RGljdAotICBQeU1vZHVsZV9HZXRGaWxlbmFtZT1weXRob24zMi5QeU1vZHVsZV9HZXRGaWxlbmFtZQotICBQeU1vZHVsZV9HZXRGaWxlbmFtZU9iamVjdD1weXRob24zMi5QeU1vZHVsZV9HZXRGaWxlbmFtZU9iamVjdAotICBQeU1vZHVsZV9HZXROYW1lPXB5dGhvbjMyLlB5TW9kdWxlX0dldE5hbWUKLSAgUHlNb2R1bGVfR2V0U3RhdGU9cHl0aG9uMzIuUHlNb2R1bGVfR2V0U3RhdGUKLSAgUHlNb2R1bGVfTmV3PXB5dGhvbjMyLlB5TW9kdWxlX05ldwotICBQeU1vZHVsZV9UeXBlPXB5dGhvbjMyLlB5TW9kdWxlX1R5cGUgREFUQQotICBQeU51bGxJbXBvcnRlcl9UeXBlPXB5dGhvbjMyLlB5TnVsbEltcG9ydGVyX1R5cGUgREFUQQotICBQeU51bWJlcl9BYnNvbHV0ZT1weXRob24zMi5QeU51bWJlcl9BYnNvbHV0ZQotICBQeU51bWJlcl9BZGQ9cHl0aG9uMzIuUHlOdW1iZXJfQWRkCi0gIFB5TnVtYmVyX0FuZD1weXRob24zMi5QeU51bWJlcl9BbmQKLSAgUHlOdW1iZXJfQXNTc2l6ZV90PXB5dGhvbjMyLlB5TnVtYmVyX0FzU3NpemVfdAotICBQeU51bWJlcl9DaGVjaz1weXRob24zMi5QeU51bWJlcl9DaGVjawotICBQeU51bWJlcl9EaXZtb2Q9cHl0aG9uMzIuUHlOdW1iZXJfRGl2bW9kCi0gIFB5TnVtYmVyX0Zsb2F0PXB5dGhvbjMyLlB5TnVtYmVyX0Zsb2F0Ci0gIFB5TnVtYmVyX0Zsb29yRGl2aWRlPXB5dGhvbjMyLlB5TnVtYmVyX0Zsb29yRGl2aWRlCi0gIFB5TnVtYmVyX0luUGxhY2VBZGQ9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZUFkZAotICBQeU51bWJlcl9JblBsYWNlQW5kPXB5dGhvbjMyLlB5TnVtYmVyX0luUGxhY2VBbmQKLSAgUHlOdW1iZXJfSW5QbGFjZUZsb29yRGl2aWRlPXB5dGhvbjMyLlB5TnVtYmVyX0luUGxhY2VGbG9vckRpdmlkZQotICBQeU51bWJlcl9JblBsYWNlTHNoaWZ0PXB5dGhvbjMyLlB5TnVtYmVyX0luUGxhY2VMc2hpZnQKLSAgUHlOdW1iZXJfSW5QbGFjZU11bHRpcGx5PXB5dGhvbjMyLlB5TnVtYmVyX0luUGxhY2VNdWx0aXBseQotICBQeU51bWJlcl9JblBsYWNlT3I9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZU9yCi0gIFB5TnVtYmVyX0luUGxhY2VQb3dlcj1weXRob24zMi5QeU51bWJlcl9JblBsYWNlUG93ZXIKLSAgUHlOdW1iZXJfSW5QbGFjZVJlbWFpbmRlcj1weXRob24zMi5QeU51bWJlcl9JblBsYWNlUmVtYWluZGVyCi0gIFB5TnVtYmVyX0luUGxhY2VSc2hpZnQ9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZVJzaGlmdAotICBQeU51bWJlcl9JblBsYWNlU3VidHJhY3Q9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZVN1YnRyYWN0Ci0gIFB5TnVtYmVyX0luUGxhY2VUcnVlRGl2aWRlPXB5dGhvbjMyLlB5TnVtYmVyX0luUGxhY2VUcnVlRGl2aWRlCi0gIFB5TnVtYmVyX0luUGxhY2VYb3I9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZVhvcgotICBQeU51bWJlcl9JbmRleD1weXRob24zMi5QeU51bWJlcl9JbmRleAotICBQeU51bWJlcl9JbnZlcnQ9cHl0aG9uMzIuUHlOdW1iZXJfSW52ZXJ0Ci0gIFB5TnVtYmVyX0xvbmc9cHl0aG9uMzIuUHlOdW1iZXJfTG9uZwotICBQeU51bWJlcl9Mc2hpZnQ9cHl0aG9uMzIuUHlOdW1iZXJfTHNoaWZ0Ci0gIFB5TnVtYmVyX011bHRpcGx5PXB5dGhvbjMyLlB5TnVtYmVyX011bHRpcGx5Ci0gIFB5TnVtYmVyX05lZ2F0aXZlPXB5dGhvbjMyLlB5TnVtYmVyX05lZ2F0aXZlCi0gIFB5TnVtYmVyX09yPXB5dGhvbjMyLlB5TnVtYmVyX09yCi0gIFB5TnVtYmVyX1Bvc2l0aXZlPXB5dGhvbjMyLlB5TnVtYmVyX1Bvc2l0aXZlCi0gIFB5TnVtYmVyX1Bvd2VyPXB5dGhvbjMyLlB5TnVtYmVyX1Bvd2VyCi0gIFB5TnVtYmVyX1JlbWFpbmRlcj1weXRob24zMi5QeU51bWJlcl9SZW1haW5kZXIKLSAgUHlOdW1iZXJfUnNoaWZ0PXB5dGhvbjMyLlB5TnVtYmVyX1JzaGlmdAotICBQeU51bWJlcl9TdWJ0cmFjdD1weXRob24zMi5QeU51bWJlcl9TdWJ0cmFjdAotICBQeU51bWJlcl9Ub0Jhc2U9cHl0aG9uMzIuUHlOdW1iZXJfVG9CYXNlCi0gIFB5TnVtYmVyX1RydWVEaXZpZGU9cHl0aG9uMzIuUHlOdW1iZXJfVHJ1ZURpdmlkZQotICBQeU51bWJlcl9Yb3I9cHl0aG9uMzIuUHlOdW1iZXJfWG9yCi0gIFB5T1NfQWZ0ZXJGb3JrPXB5dGhvbjMyLlB5T1NfQWZ0ZXJGb3JrCi0gIFB5T1NfSW5pdEludGVycnVwdHM9cHl0aG9uMzIuUHlPU19Jbml0SW50ZXJydXB0cwotICBQeU9TX0lucHV0SG9vaz1weXRob24zMi5QeU9TX0lucHV0SG9vayBEQVRBCi0gIFB5T1NfSW50ZXJydXB0T2NjdXJyZWQ9cHl0aG9uMzIuUHlPU19JbnRlcnJ1cHRPY2N1cnJlZAotICBQeU9TX1JlYWRsaW5lRnVuY3Rpb25Qb2ludGVyPXB5dGhvbjMyLlB5T1NfUmVhZGxpbmVGdW5jdGlvblBvaW50ZXIgREFUQQotICBQeU9TX2RvdWJsZV90b19zdHJpbmc9cHl0aG9uMzIuUHlPU19kb3VibGVfdG9fc3RyaW5nCi0gIFB5T1NfZ2V0c2lnPXB5dGhvbjMyLlB5T1NfZ2V0c2lnCi0gIFB5T1NfbXlzdHJpY21wPXB5dGhvbjMyLlB5T1NfbXlzdHJpY21wCi0gIFB5T1NfbXlzdHJuaWNtcD1weXRob24zMi5QeU9TX215c3RybmljbXAKLSAgUHlPU19zZXRzaWc9cHl0aG9uMzIuUHlPU19zZXRzaWcKLSAgUHlPU19zbnByaW50Zj1weXRob24zMi5QeU9TX3NucHJpbnRmCi0gIFB5T1Nfc3RyaW5nX3RvX2RvdWJsZT1weXRob24zMi5QeU9TX3N0cmluZ190b19kb3VibGUKLSAgUHlPU19zdHJ0b2w9cHl0aG9uMzIuUHlPU19zdHJ0b2wKLSAgUHlPU19zdHJ0b3VsPXB5dGhvbjMyLlB5T1Nfc3RydG91bAotICBQeU9TX3ZzbnByaW50Zj1weXRob24zMi5QeU9TX3ZzbnByaW50ZgotICBQeU9iamVjdF9BU0NJST1weXRob24zMi5QeU9iamVjdF9BU0NJSQotICBQeU9iamVjdF9Bc0NoYXJCdWZmZXI9cHl0aG9uMzIuUHlPYmplY3RfQXNDaGFyQnVmZmVyCi0gIFB5T2JqZWN0X0FzRmlsZURlc2NyaXB0b3I9cHl0aG9uMzIuUHlPYmplY3RfQXNGaWxlRGVzY3JpcHRvcgotICBQeU9iamVjdF9Bc1JlYWRCdWZmZXI9cHl0aG9uMzIuUHlPYmplY3RfQXNSZWFkQnVmZmVyCi0gIFB5T2JqZWN0X0FzV3JpdGVCdWZmZXI9cHl0aG9uMzIuUHlPYmplY3RfQXNXcml0ZUJ1ZmZlcgotICBQeU9iamVjdF9CeXRlcz1weXRob24zMi5QeU9iamVjdF9CeXRlcwotICBQeU9iamVjdF9DYWxsPXB5dGhvbjMyLlB5T2JqZWN0X0NhbGwKLSAgUHlPYmplY3RfQ2FsbEZ1bmN0aW9uPXB5dGhvbjMyLlB5T2JqZWN0X0NhbGxGdW5jdGlvbgotICBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzPXB5dGhvbjMyLlB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MKLSAgUHlPYmplY3RfQ2FsbE1ldGhvZD1weXRob24zMi5QeU9iamVjdF9DYWxsTWV0aG9kCi0gIFB5T2JqZWN0X0NhbGxNZXRob2RPYmpBcmdzPXB5dGhvbjMyLlB5T2JqZWN0X0NhbGxNZXRob2RPYmpBcmdzCi0gIFB5T2JqZWN0X0NhbGxPYmplY3Q9cHl0aG9uMzIuUHlPYmplY3RfQ2FsbE9iamVjdAotICBQeU9iamVjdF9DaGVja1JlYWRCdWZmZXI9cHl0aG9uMzIuUHlPYmplY3RfQ2hlY2tSZWFkQnVmZmVyCi0gIFB5T2JqZWN0X0NsZWFyV2Vha1JlZnM9cHl0aG9uMzIuUHlPYmplY3RfQ2xlYXJXZWFrUmVmcwotICBQeU9iamVjdF9EZWxJdGVtPXB5dGhvbjMyLlB5T2JqZWN0X0RlbEl0ZW0KLSAgUHlPYmplY3RfRGVsSXRlbVN0cmluZz1weXRob24zMi5QeU9iamVjdF9EZWxJdGVtU3RyaW5nCi0gIFB5T2JqZWN0X0Rpcj1weXRob24zMi5QeU9iamVjdF9EaXIKLSAgUHlPYmplY3RfRm9ybWF0PXB5dGhvbjMyLlB5T2JqZWN0X0Zvcm1hdAotICBQeU9iamVjdF9GcmVlPXB5dGhvbjMyLlB5T2JqZWN0X0ZyZWUKLSAgUHlPYmplY3RfR0NfRGVsPXB5dGhvbjMyLlB5T2JqZWN0X0dDX0RlbAotICBQeU9iamVjdF9HQ19UcmFjaz1weXRob24zMi5QeU9iamVjdF9HQ19UcmFjawotICBQeU9iamVjdF9HQ19VblRyYWNrPXB5dGhvbjMyLlB5T2JqZWN0X0dDX1VuVHJhY2sKLSAgUHlPYmplY3RfR2VuZXJpY0dldEF0dHI9cHl0aG9uMzIuUHlPYmplY3RfR2VuZXJpY0dldEF0dHIKLSAgUHlPYmplY3RfR2VuZXJpY1NldEF0dHI9cHl0aG9uMzIuUHlPYmplY3RfR2VuZXJpY1NldEF0dHIKLSAgUHlPYmplY3RfR2V0QXR0cj1weXRob24zMi5QeU9iamVjdF9HZXRBdHRyCi0gIFB5T2JqZWN0X0dldEF0dHJTdHJpbmc9cHl0aG9uMzIuUHlPYmplY3RfR2V0QXR0clN0cmluZwotICBQeU9iamVjdF9HZXRJdGVtPXB5dGhvbjMyLlB5T2JqZWN0X0dldEl0ZW0KLSAgUHlPYmplY3RfR2V0SXRlcj1weXRob24zMi5QeU9iamVjdF9HZXRJdGVyCi0gIFB5T2JqZWN0X0hhc0F0dHI9cHl0aG9uMzIuUHlPYmplY3RfSGFzQXR0cgotICBQeU9iamVjdF9IYXNBdHRyU3RyaW5nPXB5dGhvbjMyLlB5T2JqZWN0X0hhc0F0dHJTdHJpbmcKLSAgUHlPYmplY3RfSGFzaD1weXRob24zMi5QeU9iamVjdF9IYXNoCi0gIFB5T2JqZWN0X0hhc2hOb3RJbXBsZW1lbnRlZD1weXRob24zMi5QeU9iamVjdF9IYXNoTm90SW1wbGVtZW50ZWQKLSAgUHlPYmplY3RfSW5pdD1weXRob24zMi5QeU9iamVjdF9Jbml0Ci0gIFB5T2JqZWN0X0luaXRWYXI9cHl0aG9uMzIuUHlPYmplY3RfSW5pdFZhcgotICBQeU9iamVjdF9Jc0luc3RhbmNlPXB5dGhvbjMyLlB5T2JqZWN0X0lzSW5zdGFuY2UKLSAgUHlPYmplY3RfSXNTdWJjbGFzcz1weXRob24zMi5QeU9iamVjdF9Jc1N1YmNsYXNzCi0gIFB5T2JqZWN0X0lzVHJ1ZT1weXRob24zMi5QeU9iamVjdF9Jc1RydWUKLSAgUHlPYmplY3RfTGVuZ3RoPXB5dGhvbjMyLlB5T2JqZWN0X0xlbmd0aAotICBQeU9iamVjdF9NYWxsb2M9cHl0aG9uMzIuUHlPYmplY3RfTWFsbG9jCi0gIFB5T2JqZWN0X05vdD1weXRob24zMi5QeU9iamVjdF9Ob3QKLSAgUHlPYmplY3RfUmVhbGxvYz1weXRob24zMi5QeU9iamVjdF9SZWFsbG9jCi0gIFB5T2JqZWN0X1JlcHI9cHl0aG9uMzIuUHlPYmplY3RfUmVwcgotICBQeU9iamVjdF9SaWNoQ29tcGFyZT1weXRob24zMi5QeU9iamVjdF9SaWNoQ29tcGFyZQotICBQeU9iamVjdF9SaWNoQ29tcGFyZUJvb2w9cHl0aG9uMzIuUHlPYmplY3RfUmljaENvbXBhcmVCb29sCi0gIFB5T2JqZWN0X1NlbGZJdGVyPXB5dGhvbjMyLlB5T2JqZWN0X1NlbGZJdGVyCi0gIFB5T2JqZWN0X1NldEF0dHI9cHl0aG9uMzIuUHlPYmplY3RfU2V0QXR0cgotICBQeU9iamVjdF9TZXRBdHRyU3RyaW5nPXB5dGhvbjMyLlB5T2JqZWN0X1NldEF0dHJTdHJpbmcKLSAgUHlPYmplY3RfU2V0SXRlbT1weXRob24zMi5QeU9iamVjdF9TZXRJdGVtCi0gIFB5T2JqZWN0X1NpemU9cHl0aG9uMzIuUHlPYmplY3RfU2l6ZQotICBQeU9iamVjdF9TdHI9cHl0aG9uMzIuUHlPYmplY3RfU3RyCi0gIFB5T2JqZWN0X1R5cGU9cHl0aG9uMzIuUHlPYmplY3RfVHlwZSBEQVRBCi0gIFB5UGFyc2VyX1NpbXBsZVBhcnNlRmlsZUZsYWdzPXB5dGhvbjMyLlB5UGFyc2VyX1NpbXBsZVBhcnNlRmlsZUZsYWdzCi0gIFB5UGFyc2VyX1NpbXBsZVBhcnNlU3RyaW5nRmxhZ3M9cHl0aG9uMzIuUHlQYXJzZXJfU2ltcGxlUGFyc2VTdHJpbmdGbGFncwotICBQeVByb3BlcnR5X1R5cGU9cHl0aG9uMzIuUHlQcm9wZXJ0eV9UeXBlIERBVEEKLSAgUHlSYW5nZUl0ZXJfVHlwZT1weXRob24zMi5QeVJhbmdlSXRlcl9UeXBlIERBVEEKLSAgUHlSYW5nZV9UeXBlPXB5dGhvbjMyLlB5UmFuZ2VfVHlwZSBEQVRBCi0gIFB5UmV2ZXJzZWRfVHlwZT1weXRob24zMi5QeVJldmVyc2VkX1R5cGUgREFUQQotICBQeVNlcUl0ZXJfTmV3PXB5dGhvbjMyLlB5U2VxSXRlcl9OZXcKLSAgUHlTZXFJdGVyX1R5cGU9cHl0aG9uMzIuUHlTZXFJdGVyX1R5cGUgREFUQQotICBQeVNlcXVlbmNlX0NoZWNrPXB5dGhvbjMyLlB5U2VxdWVuY2VfQ2hlY2sKLSAgUHlTZXF1ZW5jZV9Db25jYXQ9cHl0aG9uMzIuUHlTZXF1ZW5jZV9Db25jYXQKLSAgUHlTZXF1ZW5jZV9Db250YWlucz1weXRob24zMi5QeVNlcXVlbmNlX0NvbnRhaW5zCi0gIFB5U2VxdWVuY2VfQ291bnQ9cHl0aG9uMzIuUHlTZXF1ZW5jZV9Db3VudAotICBQeVNlcXVlbmNlX0RlbEl0ZW09cHl0aG9uMzIuUHlTZXF1ZW5jZV9EZWxJdGVtCi0gIFB5U2VxdWVuY2VfRGVsU2xpY2U9cHl0aG9uMzIuUHlTZXF1ZW5jZV9EZWxTbGljZQotICBQeVNlcXVlbmNlX0Zhc3Q9cHl0aG9uMzIuUHlTZXF1ZW5jZV9GYXN0Ci0gIFB5U2VxdWVuY2VfR2V0SXRlbT1weXRob24zMi5QeVNlcXVlbmNlX0dldEl0ZW0KLSAgUHlTZXF1ZW5jZV9HZXRTbGljZT1weXRob24zMi5QeVNlcXVlbmNlX0dldFNsaWNlCi0gIFB5U2VxdWVuY2VfSW49cHl0aG9uMzIuUHlTZXF1ZW5jZV9JbgotICBQeVNlcXVlbmNlX0luUGxhY2VDb25jYXQ9cHl0aG9uMzIuUHlTZXF1ZW5jZV9JblBsYWNlQ29uY2F0Ci0gIFB5U2VxdWVuY2VfSW5QbGFjZVJlcGVhdD1weXRob24zMi5QeVNlcXVlbmNlX0luUGxhY2VSZXBlYXQKLSAgUHlTZXF1ZW5jZV9JbmRleD1weXRob24zMi5QeVNlcXVlbmNlX0luZGV4Ci0gIFB5U2VxdWVuY2VfTGVuZ3RoPXB5dGhvbjMyLlB5U2VxdWVuY2VfTGVuZ3RoCi0gIFB5U2VxdWVuY2VfTGlzdD1weXRob24zMi5QeVNlcXVlbmNlX0xpc3QKLSAgUHlTZXF1ZW5jZV9SZXBlYXQ9cHl0aG9uMzIuUHlTZXF1ZW5jZV9SZXBlYXQKLSAgUHlTZXF1ZW5jZV9TZXRJdGVtPXB5dGhvbjMyLlB5U2VxdWVuY2VfU2V0SXRlbQotICBQeVNlcXVlbmNlX1NldFNsaWNlPXB5dGhvbjMyLlB5U2VxdWVuY2VfU2V0U2xpY2UKLSAgUHlTZXF1ZW5jZV9TaXplPXB5dGhvbjMyLlB5U2VxdWVuY2VfU2l6ZQotICBQeVNlcXVlbmNlX1R1cGxlPXB5dGhvbjMyLlB5U2VxdWVuY2VfVHVwbGUKLSAgUHlTZXRJdGVyX1R5cGU9cHl0aG9uMzIuUHlTZXRJdGVyX1R5cGUgREFUQQotICBQeVNldF9BZGQ9cHl0aG9uMzIuUHlTZXRfQWRkCi0gIFB5U2V0X0NsZWFyPXB5dGhvbjMyLlB5U2V0X0NsZWFyCi0gIFB5U2V0X0NvbnRhaW5zPXB5dGhvbjMyLlB5U2V0X0NvbnRhaW5zCi0gIFB5U2V0X0Rpc2NhcmQ9cHl0aG9uMzIuUHlTZXRfRGlzY2FyZAotICBQeVNldF9OZXc9cHl0aG9uMzIuUHlTZXRfTmV3Ci0gIFB5U2V0X1BvcD1weXRob24zMi5QeVNldF9Qb3AKLSAgUHlTZXRfU2l6ZT1weXRob24zMi5QeVNldF9TaXplCi0gIFB5U2V0X1R5cGU9cHl0aG9uMzIuUHlTZXRfVHlwZSBEQVRBCi0gIFB5U2xpY2VfR2V0SW5kaWNlcz1weXRob24zMi5QeVNsaWNlX0dldEluZGljZXMKLSAgUHlTbGljZV9HZXRJbmRpY2VzRXg9cHl0aG9uMzIuUHlTbGljZV9HZXRJbmRpY2VzRXgKLSAgUHlTbGljZV9OZXc9cHl0aG9uMzIuUHlTbGljZV9OZXcKLSAgUHlTbGljZV9UeXBlPXB5dGhvbjMyLlB5U2xpY2VfVHlwZSBEQVRBCi0gIFB5U29ydFdyYXBwZXJfVHlwZT1weXRob24zMi5QeVNvcnRXcmFwcGVyX1R5cGUgREFUQQotICBQeVN0YXRlX0ZpbmRNb2R1bGU9cHl0aG9uMzIuUHlTdGF0ZV9GaW5kTW9kdWxlCi0gIFB5U3RydWN0U2VxdWVuY2VfR2V0SXRlbT1weXRob24zMi5QeVN0cnVjdFNlcXVlbmNlX0dldEl0ZW0KLSAgUHlTdHJ1Y3RTZXF1ZW5jZV9OZXc9cHl0aG9uMzIuUHlTdHJ1Y3RTZXF1ZW5jZV9OZXcKLSAgUHlTdHJ1Y3RTZXF1ZW5jZV9OZXdUeXBlPXB5dGhvbjMyLlB5U3RydWN0U2VxdWVuY2VfTmV3VHlwZQotICBQeVN0cnVjdFNlcXVlbmNlX1NldEl0ZW09cHl0aG9uMzIuUHlTdHJ1Y3RTZXF1ZW5jZV9TZXRJdGVtCi0gIFB5U3VwZXJfVHlwZT1weXRob24zMi5QeVN1cGVyX1R5cGUgREFUQQotICBQeVN5c19BZGRXYXJuT3B0aW9uPXB5dGhvbjMyLlB5U3lzX0FkZFdhcm5PcHRpb24KLSAgUHlTeXNfQWRkV2Fybk9wdGlvblVuaWNvZGU9cHl0aG9uMzIuUHlTeXNfQWRkV2Fybk9wdGlvblVuaWNvZGUKLSAgUHlTeXNfRm9ybWF0U3RkZXJyPXB5dGhvbjMyLlB5U3lzX0Zvcm1hdFN0ZGVycgotICBQeVN5c19Gb3JtYXRTdGRvdXQ9cHl0aG9uMzIuUHlTeXNfRm9ybWF0U3Rkb3V0Ci0gIFB5U3lzX0dldE9iamVjdD1weXRob24zMi5QeVN5c19HZXRPYmplY3QKLSAgUHlTeXNfSGFzV2Fybk9wdGlvbnM9cHl0aG9uMzIuUHlTeXNfSGFzV2Fybk9wdGlvbnMKLSAgUHlTeXNfUmVzZXRXYXJuT3B0aW9ucz1weXRob24zMi5QeVN5c19SZXNldFdhcm5PcHRpb25zCi0gIFB5U3lzX1NldEFyZ3Y9cHl0aG9uMzIuUHlTeXNfU2V0QXJndgotICBQeVN5c19TZXRBcmd2RXg9cHl0aG9uMzIuUHlTeXNfU2V0QXJndkV4Ci0gIFB5U3lzX1NldE9iamVjdD1weXRob24zMi5QeVN5c19TZXRPYmplY3QKLSAgUHlTeXNfU2V0UGF0aD1weXRob24zMi5QeVN5c19TZXRQYXRoCi0gIFB5U3lzX1dyaXRlU3RkZXJyPXB5dGhvbjMyLlB5U3lzX1dyaXRlU3RkZXJyCi0gIFB5U3lzX1dyaXRlU3Rkb3V0PXB5dGhvbjMyLlB5U3lzX1dyaXRlU3Rkb3V0Ci0gIFB5VGhyZWFkU3RhdGVfQ2xlYXI9cHl0aG9uMzIuUHlUaHJlYWRTdGF0ZV9DbGVhcgotICBQeVRocmVhZFN0YXRlX0RlbGV0ZT1weXRob24zMi5QeVRocmVhZFN0YXRlX0RlbGV0ZQotICBQeVRocmVhZFN0YXRlX0RlbGV0ZUN1cnJlbnQ9cHl0aG9uMzIuUHlUaHJlYWRTdGF0ZV9EZWxldGVDdXJyZW50Ci0gIFB5VGhyZWFkU3RhdGVfR2V0PXB5dGhvbjMyLlB5VGhyZWFkU3RhdGVfR2V0Ci0gIFB5VGhyZWFkU3RhdGVfR2V0RGljdD1weXRob24zMi5QeVRocmVhZFN0YXRlX0dldERpY3QKLSAgUHlUaHJlYWRTdGF0ZV9OZXc9cHl0aG9uMzIuUHlUaHJlYWRTdGF0ZV9OZXcKLSAgUHlUaHJlYWRTdGF0ZV9TZXRBc3luY0V4Yz1weXRob24zMi5QeVRocmVhZFN0YXRlX1NldEFzeW5jRXhjCi0gIFB5VGhyZWFkU3RhdGVfU3dhcD1weXRob24zMi5QeVRocmVhZFN0YXRlX1N3YXAKLSAgUHlUcmFjZUJhY2tfSGVyZT1weXRob24zMi5QeVRyYWNlQmFja19IZXJlCi0gIFB5VHJhY2VCYWNrX1ByaW50PXB5dGhvbjMyLlB5VHJhY2VCYWNrX1ByaW50Ci0gIFB5VHJhY2VCYWNrX1R5cGU9cHl0aG9uMzIuUHlUcmFjZUJhY2tfVHlwZSBEQVRBCi0gIFB5VHVwbGVJdGVyX1R5cGU9cHl0aG9uMzIuUHlUdXBsZUl0ZXJfVHlwZSBEQVRBCi0gIFB5VHVwbGVfQ2xlYXJGcmVlTGlzdD1weXRob24zMi5QeVR1cGxlX0NsZWFyRnJlZUxpc3QKLSAgUHlUdXBsZV9HZXRJdGVtPXB5dGhvbjMyLlB5VHVwbGVfR2V0SXRlbQotICBQeVR1cGxlX0dldFNsaWNlPXB5dGhvbjMyLlB5VHVwbGVfR2V0U2xpY2UKLSAgUHlUdXBsZV9OZXc9cHl0aG9uMzIuUHlUdXBsZV9OZXcKLSAgUHlUdXBsZV9QYWNrPXB5dGhvbjMyLlB5VHVwbGVfUGFjawotICBQeVR1cGxlX1NldEl0ZW09cHl0aG9uMzIuUHlUdXBsZV9TZXRJdGVtCi0gIFB5VHVwbGVfU2l6ZT1weXRob24zMi5QeVR1cGxlX1NpemUKLSAgUHlUdXBsZV9UeXBlPXB5dGhvbjMyLlB5VHVwbGVfVHlwZSBEQVRBCi0gIFB5VHlwZV9DbGVhckNhY2hlPXB5dGhvbjMyLlB5VHlwZV9DbGVhckNhY2hlCi0gIFB5VHlwZV9Gcm9tU3BlYz1weXRob24zMi5QeVR5cGVfRnJvbVNwZWMKLSAgUHlUeXBlX0dlbmVyaWNBbGxvYz1weXRob24zMi5QeVR5cGVfR2VuZXJpY0FsbG9jCi0gIFB5VHlwZV9HZW5lcmljTmV3PXB5dGhvbjMyLlB5VHlwZV9HZW5lcmljTmV3Ci0gIFB5VHlwZV9HZXRGbGFncz1weXRob24zMi5QeVR5cGVfR2V0RmxhZ3MKLSAgUHlUeXBlX0lzU3VidHlwZT1weXRob24zMi5QeVR5cGVfSXNTdWJ0eXBlCi0gIFB5VHlwZV9Nb2RpZmllZD1weXRob24zMi5QeVR5cGVfTW9kaWZpZWQKLSAgUHlUeXBlX1JlYWR5PXB5dGhvbjMyLlB5VHlwZV9SZWFkeQotICBQeVR5cGVfVHlwZT1weXRob24zMi5QeVR5cGVfVHlwZSBEQVRBCi0gIFB5VW5pY29kZURlY29kZUVycm9yX0NyZWF0ZT1weXRob24zMi5QeVVuaWNvZGVEZWNvZGVFcnJvcl9DcmVhdGUKLSAgUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0RW5jb2Rpbmc9cHl0aG9uMzIuUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0RW5jb2RpbmcKLSAgUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0RW5kPXB5dGhvbjMyLlB5VW5pY29kZURlY29kZUVycm9yX0dldEVuZAotICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRPYmplY3Q9cHl0aG9uMzIuUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0T2JqZWN0Ci0gIFB5VW5pY29kZURlY29kZUVycm9yX0dldFJlYXNvbj1weXRob24zMi5QeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRSZWFzb24KLSAgUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0U3RhcnQ9cHl0aG9uMzIuUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0U3RhcnQKLSAgUHlVbmljb2RlRGVjb2RlRXJyb3JfU2V0RW5kPXB5dGhvbjMyLlB5VW5pY29kZURlY29kZUVycm9yX1NldEVuZAotICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9TZXRSZWFzb249cHl0aG9uMzIuUHlVbmljb2RlRGVjb2RlRXJyb3JfU2V0UmVhc29uCi0gIFB5VW5pY29kZURlY29kZUVycm9yX1NldFN0YXJ0PXB5dGhvbjMyLlB5VW5pY29kZURlY29kZUVycm9yX1NldFN0YXJ0Ci0gIFB5VW5pY29kZUVuY29kZUVycm9yX0dldEVuY29kaW5nPXB5dGhvbjMyLlB5VW5pY29kZUVuY29kZUVycm9yX0dldEVuY29kaW5nCi0gIFB5VW5pY29kZUVuY29kZUVycm9yX0dldEVuZD1weXRob24zMi5QeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRFbmQKLSAgUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0T2JqZWN0PXB5dGhvbjMyLlB5VW5pY29kZUVuY29kZUVycm9yX0dldE9iamVjdAotICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRSZWFzb249cHl0aG9uMzIuUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0UmVhc29uCi0gIFB5VW5pY29kZUVuY29kZUVycm9yX0dldFN0YXJ0PXB5dGhvbjMyLlB5VW5pY29kZUVuY29kZUVycm9yX0dldFN0YXJ0Ci0gIFB5VW5pY29kZUVuY29kZUVycm9yX1NldEVuZD1weXRob24zMi5QeVVuaWNvZGVFbmNvZGVFcnJvcl9TZXRFbmQKLSAgUHlVbmljb2RlRW5jb2RlRXJyb3JfU2V0UmVhc29uPXB5dGhvbjMyLlB5VW5pY29kZUVuY29kZUVycm9yX1NldFJlYXNvbgotICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9TZXRTdGFydD1weXRob24zMi5QeVVuaWNvZGVFbmNvZGVFcnJvcl9TZXRTdGFydAotICBQeVVuaWNvZGVJdGVyX1R5cGU9cHl0aG9uMzIuUHlVbmljb2RlSXRlcl9UeXBlIERBVEEKLSAgUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0RW5kPXB5dGhvbjMyLlB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldEVuZAotICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRPYmplY3Q9cHl0aG9uMzIuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0T2JqZWN0Ci0gIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldFJlYXNvbj1weXRob24zMi5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRSZWFzb24KLSAgUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0U3RhcnQ9cHl0aG9uMzIuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0U3RhcnQKLSAgUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfU2V0RW5kPXB5dGhvbjMyLlB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX1NldEVuZAotICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9TZXRSZWFzb249cHl0aG9uMzIuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfU2V0UmVhc29uCi0gIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX1NldFN0YXJ0PXB5dGhvbjMyLlB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX1NldFN0YXJ0Ci0gIFB5VW5pY29kZV9BcHBlbmQ9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9BcHBlbmQKLSAgUHlVbmljb2RlX0FwcGVuZEFuZERlbD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FwcGVuZEFuZERlbAotICBQeVVuaWNvZGVfQXNBU0NJSVN0cmluZz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FzQVNDSUlTdHJpbmcKLSAgUHlVbmljb2RlX0FzQ2hhcm1hcFN0cmluZz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FzQ2hhcm1hcFN0cmluZwotICBQeVVuaWNvZGVfQXNEZWNvZGVkT2JqZWN0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQXNEZWNvZGVkT2JqZWN0Ci0gIFB5VW5pY29kZV9Bc0RlY29kZWRVbmljb2RlPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQXNEZWNvZGVkVW5pY29kZQotICBQeVVuaWNvZGVfQXNFbmNvZGVkT2JqZWN0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQXNFbmNvZGVkT2JqZWN0Ci0gIFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmc9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc0VuY29kZWRTdHJpbmcKLSAgUHlVbmljb2RlX0FzRW5jb2RlZFVuaWNvZGU9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc0VuY29kZWRVbmljb2RlCi0gIFB5VW5pY29kZV9Bc0xhdGluMVN0cmluZz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FzTGF0aW4xU3RyaW5nCi0gIFB5VW5pY29kZV9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmc9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmcKLSAgUHlVbmljb2RlX0FzVVRGMTZTdHJpbmc9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc1VURjE2U3RyaW5nCi0gIFB5VW5pY29kZV9Bc1VURjMyU3RyaW5nPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQXNVVEYzMlN0cmluZwotICBQeVVuaWNvZGVfQXNVVEY4U3RyaW5nPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQXNVVEY4U3RyaW5nCi0gIFB5VW5pY29kZV9Bc1VuaWNvZGVFc2NhcGVTdHJpbmc9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc1VuaWNvZGVFc2NhcGVTdHJpbmcKLSAgUHlVbmljb2RlX0FzV2lkZUNoYXI9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc1dpZGVDaGFyCi0gIFB5VW5pY29kZV9DbGVhckZyZWVsaXN0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQ2xlYXJGcmVlbGlzdAotICBQeVVuaWNvZGVfQ29tcGFyZT1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0NvbXBhcmUKLSAgUHlVbmljb2RlX0NvbmNhdD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0NvbmNhdAotICBQeVVuaWNvZGVfQ29udGFpbnM9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Db250YWlucwotICBQeVVuaWNvZGVfQ291bnQ9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Db3VudAotICBQeVVuaWNvZGVfRGVjb2RlPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlCi0gIFB5VW5pY29kZV9EZWNvZGVBU0NJST1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0RlY29kZUFTQ0lJCi0gIFB5VW5pY29kZV9EZWNvZGVDaGFybWFwPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlQ2hhcm1hcAotICBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlRlNEZWZhdWx0Ci0gIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHRBbmRTaXplPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZQotICBQeVVuaWNvZGVfRGVjb2RlTGF0aW4xPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlTGF0aW4xCi0gIFB5VW5pY29kZV9EZWNvZGVSYXdVbmljb2RlRXNjYXBlPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlUmF3VW5pY29kZUVzY2FwZQotICBQeVVuaWNvZGVfRGVjb2RlVVRGMTY9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVVVEYxNgotICBQeVVuaWNvZGVfRGVjb2RlVVRGMTZTdGF0ZWZ1bD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0RlY29kZVVURjE2U3RhdGVmdWwKLSAgUHlVbmljb2RlX0RlY29kZVVURjMyPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlVVRGMzIKLSAgUHlVbmljb2RlX0RlY29kZVVURjMyU3RhdGVmdWw9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVVVEYzMlN0YXRlZnVsCi0gIFB5VW5pY29kZV9EZWNvZGVVVEY4PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlVVRGOAotICBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlVVRGOFN0YXRlZnVsCi0gIFB5VW5pY29kZV9EZWNvZGVVbmljb2RlRXNjYXBlPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlVW5pY29kZUVzY2FwZQotICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXI9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9GU0NvbnZlcnRlcgotICBQeVVuaWNvZGVfRlNEZWNvZGVyPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRlNEZWNvZGVyCi0gIFB5VW5pY29kZV9GaW5kPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRmluZAotICBQeVVuaWNvZGVfRm9ybWF0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRm9ybWF0Ci0gIFB5VW5pY29kZV9Gcm9tRW5jb2RlZE9iamVjdD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0Zyb21FbmNvZGVkT2JqZWN0Ci0gIFB5VW5pY29kZV9Gcm9tRm9ybWF0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRnJvbUZvcm1hdAotICBQeVVuaWNvZGVfRnJvbUZvcm1hdFY9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Gcm9tRm9ybWF0VgotICBQeVVuaWNvZGVfRnJvbU9iamVjdD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0Zyb21PYmplY3QKLSAgUHlVbmljb2RlX0Zyb21PcmRpbmFsPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRnJvbU9yZGluYWwKLSAgUHlVbmljb2RlX0Zyb21TdHJpbmc9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Gcm9tU3RyaW5nCi0gIFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZT1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0Zyb21TdHJpbmdBbmRTaXplCi0gIFB5VW5pY29kZV9Gcm9tV2lkZUNoYXI9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Gcm9tV2lkZUNoYXIKLSAgUHlVbmljb2RlX0dldERlZmF1bHRFbmNvZGluZz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0dldERlZmF1bHRFbmNvZGluZwotICBQeVVuaWNvZGVfR2V0U2l6ZT1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0dldFNpemUKLSAgUHlVbmljb2RlX0lzSWRlbnRpZmllcj1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0lzSWRlbnRpZmllcgotICBQeVVuaWNvZGVfSm9pbj1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0pvaW4KLSAgUHlVbmljb2RlX1BhcnRpdGlvbj1weXRob24zMi5QeVVuaWNvZGVVQ1MyX1BhcnRpdGlvbgotICBQeVVuaWNvZGVfUlBhcnRpdGlvbj1weXRob24zMi5QeVVuaWNvZGVVQ1MyX1JQYXJ0aXRpb24KLSAgUHlVbmljb2RlX1JTcGxpdD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX1JTcGxpdAotICBQeVVuaWNvZGVfUmVwbGFjZT1weXRob24zMi5QeVVuaWNvZGVVQ1MyX1JlcGxhY2UKLSAgUHlVbmljb2RlX1Jlc2l6ZT1weXRob24zMi5QeVVuaWNvZGVVQ1MyX1Jlc2l6ZQotICBQeVVuaWNvZGVfUmljaENvbXBhcmU9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9SaWNoQ29tcGFyZQotICBQeVVuaWNvZGVfU2V0RGVmYXVsdEVuY29kaW5nPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfU2V0RGVmYXVsdEVuY29kaW5nCi0gIFB5VW5pY29kZV9TcGxpdD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX1NwbGl0Ci0gIFB5VW5pY29kZV9TcGxpdGxpbmVzPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfU3BsaXRsaW5lcwotICBQeVVuaWNvZGVfVGFpbG1hdGNoPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfVGFpbG1hdGNoCi0gIFB5VW5pY29kZV9UcmFuc2xhdGU9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9UcmFuc2xhdGUKLSAgUHlVbmljb2RlX0J1aWxkRW5jb2RpbmdNYXA9cHl0aG9uMzIuUHlVbmljb2RlX0J1aWxkRW5jb2RpbmdNYXAKLSAgUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmc9cHl0aG9uMzIuUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcKLSAgUHlVbmljb2RlX0RlY29kZVVURjc9cHl0aG9uMzIuUHlVbmljb2RlX0RlY29kZVVURjcKLSAgUHlVbmljb2RlX0RlY29kZVVURjdTdGF0ZWZ1bD1weXRob24zMi5QeVVuaWNvZGVfRGVjb2RlVVRGN1N0YXRlZnVsCi0gIFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQ9cHl0aG9uMzIuUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdAotICBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZz1weXRob24zMi5QeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZwotICBQeVVuaWNvZGVfSW50ZXJuSW1tb3J0YWw9cHl0aG9uMzIuUHlVbmljb2RlX0ludGVybkltbW9ydGFsCi0gIFB5VW5pY29kZV9JbnRlcm5JblBsYWNlPXB5dGhvbjMyLlB5VW5pY29kZV9JbnRlcm5JblBsYWNlCi0gIFB5VW5pY29kZV9UeXBlPXB5dGhvbjMyLlB5VW5pY29kZV9UeXBlIERBVEEKLSAgUHlXZWFrcmVmX0dldE9iamVjdD1weXRob24zMi5QeVdlYWtyZWZfR2V0T2JqZWN0IERBVEEKLSAgUHlXZWFrcmVmX05ld1Byb3h5PXB5dGhvbjMyLlB5V2Vha3JlZl9OZXdQcm94eQotICBQeVdlYWtyZWZfTmV3UmVmPXB5dGhvbjMyLlB5V2Vha3JlZl9OZXdSZWYKLSAgUHlXcmFwcGVyRGVzY3JfVHlwZT1weXRob24zMi5QeVdyYXBwZXJEZXNjcl9UeXBlIERBVEEKLSAgUHlXcmFwcGVyX05ldz1weXRob24zMi5QeVdyYXBwZXJfTmV3Ci0gIFB5WmlwX1R5cGU9cHl0aG9uMzIuUHlaaXBfVHlwZSBEQVRBCi0gIFB5X0FkZFBlbmRpbmdDYWxsPXB5dGhvbjMyLlB5X0FkZFBlbmRpbmdDYWxsCi0gIFB5X0F0RXhpdD1weXRob24zMi5QeV9BdEV4aXQKLSAgUHlfQnVpbGRWYWx1ZT1weXRob24zMi5QeV9CdWlsZFZhbHVlCi0gIFB5X0NvbXBpbGVTdHJpbmc9cHl0aG9uMzIuUHlfQ29tcGlsZVN0cmluZwotICBQeV9EZWNSZWY9cHl0aG9uMzIuUHlfRGVjUmVmCi0gIFB5X0VuZEludGVycHJldGVyPXB5dGhvbjMyLlB5X0VuZEludGVycHJldGVyCi0gIFB5X0V4aXQ9cHl0aG9uMzIuUHlfRXhpdAotICBQeV9GYXRhbEVycm9yPXB5dGhvbjMyLlB5X0ZhdGFsRXJyb3IKLSAgUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZz1weXRob24zMi5QeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nIERBVEEKLSAgUHlfRmluYWxpemU9cHl0aG9uMzIuUHlfRmluYWxpemUKLSAgUHlfR2V0QnVpbGRJbmZvPXB5dGhvbjMyLlB5X0dldEJ1aWxkSW5mbwotICBQeV9HZXRDb21waWxlcj1weXRob24zMi5QeV9HZXRDb21waWxlcgotICBQeV9HZXRDb3B5cmlnaHQ9cHl0aG9uMzIuUHlfR2V0Q29weXJpZ2h0Ci0gIFB5X0dldEV4ZWNQcmVmaXg9cHl0aG9uMzIuUHlfR2V0RXhlY1ByZWZpeAotICBQeV9HZXRQYXRoPXB5dGhvbjMyLlB5X0dldFBhdGgKLSAgUHlfR2V0UGxhdGZvcm09cHl0aG9uMzIuUHlfR2V0UGxhdGZvcm0KLSAgUHlfR2V0UHJlZml4PXB5dGhvbjMyLlB5X0dldFByZWZpeAotICBQeV9HZXRQcm9ncmFtRnVsbFBhdGg9cHl0aG9uMzIuUHlfR2V0UHJvZ3JhbUZ1bGxQYXRoCi0gIFB5X0dldFByb2dyYW1OYW1lPXB5dGhvbjMyLlB5X0dldFByb2dyYW1OYW1lCi0gIFB5X0dldFB5dGhvbkhvbWU9cHl0aG9uMzIuUHlfR2V0UHl0aG9uSG9tZQotICBQeV9HZXRSZWN1cnNpb25MaW1pdD1weXRob24zMi5QeV9HZXRSZWN1cnNpb25MaW1pdAotICBQeV9HZXRWZXJzaW9uPXB5dGhvbjMyLlB5X0dldFZlcnNpb24KLSAgUHlfSGFzRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZz1weXRob24zMi5QeV9IYXNGaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nIERBVEEKLSAgUHlfSW5jUmVmPXB5dGhvbjMyLlB5X0luY1JlZgotICBQeV9Jbml0aWFsaXplPXB5dGhvbjMyLlB5X0luaXRpYWxpemUKLSAgUHlfSW5pdGlhbGl6ZUV4PXB5dGhvbjMyLlB5X0luaXRpYWxpemVFeAotICBQeV9Jc0luaXRpYWxpemVkPXB5dGhvbjMyLlB5X0lzSW5pdGlhbGl6ZWQKLSAgUHlfTWFpbj1weXRob24zMi5QeV9NYWluCi0gIFB5X01ha2VQZW5kaW5nQ2FsbHM9cHl0aG9uMzIuUHlfTWFrZVBlbmRpbmdDYWxscwotICBQeV9OZXdJbnRlcnByZXRlcj1weXRob24zMi5QeV9OZXdJbnRlcnByZXRlcgotICBQeV9SZXByRW50ZXI9cHl0aG9uMzIuUHlfUmVwckVudGVyCi0gIFB5X1JlcHJMZWF2ZT1weXRob24zMi5QeV9SZXByTGVhdmUKLSAgUHlfU2V0UHJvZ3JhbU5hbWU9cHl0aG9uMzIuUHlfU2V0UHJvZ3JhbU5hbWUKLSAgUHlfU2V0UHl0aG9uSG9tZT1weXRob24zMi5QeV9TZXRQeXRob25Ib21lCi0gIFB5X1NldFJlY3Vyc2lvbkxpbWl0PXB5dGhvbjMyLlB5X1NldFJlY3Vyc2lvbkxpbWl0Ci0gIFB5X1N5bXRhYmxlU3RyaW5nPXB5dGhvbjMyLlB5X1N5bXRhYmxlU3RyaW5nCi0gIFB5X1ZhQnVpbGRWYWx1ZT1weXRob24zMi5QeV9WYUJ1aWxkVmFsdWUKLSAgX1B5RXJyX0JhZEludGVybmFsQ2FsbD1weXRob24zMi5fUHlFcnJfQmFkSW50ZXJuYWxDYWxsCi0gIF9QeU9iamVjdF9DYWxsRnVuY3Rpb25fU2l6ZVQ9cHl0aG9uMzIuX1B5T2JqZWN0X0NhbGxGdW5jdGlvbl9TaXplVAotICBfUHlPYmplY3RfQ2FsbE1ldGhvZF9TaXplVD1weXRob24zMi5fUHlPYmplY3RfQ2FsbE1ldGhvZF9TaXplVAotICBfUHlPYmplY3RfR0NfTWFsbG9jPXB5dGhvbjMyLl9QeU9iamVjdF9HQ19NYWxsb2MKLSAgX1B5T2JqZWN0X0dDX05ldz1weXRob24zMi5fUHlPYmplY3RfR0NfTmV3Ci0gIF9QeU9iamVjdF9HQ19OZXdWYXI9cHl0aG9uMzIuX1B5T2JqZWN0X0dDX05ld1ZhcgotICBfUHlPYmplY3RfR0NfUmVzaXplPXB5dGhvbjMyLl9QeU9iamVjdF9HQ19SZXNpemUKLSAgX1B5T2JqZWN0X05ldz1weXRob24zMi5fUHlPYmplY3RfTmV3Ci0gIF9QeU9iamVjdF9OZXdWYXI9cHl0aG9uMzIuX1B5T2JqZWN0X05ld1ZhcgotICBfUHlTdGF0ZV9BZGRNb2R1bGU9cHl0aG9uMzIuX1B5U3RhdGVfQWRkTW9kdWxlCi0gIF9QeVRocmVhZFN0YXRlX0luaXQ9cHl0aG9uMzIuX1B5VGhyZWFkU3RhdGVfSW5pdAotICBfUHlUaHJlYWRTdGF0ZV9QcmVhbGxvYz1weXRob24zMi5fUHlUaHJlYWRTdGF0ZV9QcmVhbGxvYwotICBfUHlUcmFzaF9kZWxldGVfbGF0ZXI9cHl0aG9uMzIuX1B5VHJhc2hfZGVsZXRlX2xhdGVyIERBVEEKLSAgX1B5VHJhc2hfZGVsZXRlX25lc3Rpbmc9cHl0aG9uMzIuX1B5VHJhc2hfZGVsZXRlX25lc3RpbmcgREFUQQotICBfUHlUcmFzaF9kZXBvc2l0X29iamVjdD1weXRob24zMi5fUHlUcmFzaF9kZXBvc2l0X29iamVjdAotICBfUHlUcmFzaF9kZXN0cm95X2NoYWluPXB5dGhvbjMyLl9QeVRyYXNoX2Rlc3Ryb3lfY2hhaW4KLSAgX1B5V2Vha3JlZl9DYWxsYWJsZVByb3h5VHlwZT1weXRob24zMi5fUHlXZWFrcmVmX0NhbGxhYmxlUHJveHlUeXBlIERBVEEKLSAgX1B5V2Vha3JlZl9Qcm94eVR5cGU9cHl0aG9uMzIuX1B5V2Vha3JlZl9Qcm94eVR5cGUgREFUQQotICBfUHlXZWFrcmVmX1JlZlR5cGU9cHl0aG9uMzIuX1B5V2Vha3JlZl9SZWZUeXBlIERBVEEKLSAgX1B5X0J1aWxkVmFsdWVfU2l6ZVQ9cHl0aG9uMzIuX1B5X0J1aWxkVmFsdWVfU2l6ZVQKLSAgX1B5X0NoZWNrUmVjdXJzaW9uTGltaXQ9cHl0aG9uMzIuX1B5X0NoZWNrUmVjdXJzaW9uTGltaXQgREFUQQotICBfUHlfQ2hlY2tSZWN1cnNpdmVDYWxsPXB5dGhvbjMyLl9QeV9DaGVja1JlY3Vyc2l2ZUNhbGwKLSAgX1B5X0RlYWxsb2M9cHl0aG9uMzIuX1B5X0RlYWxsb2MKLSAgX1B5X0VsbGlwc2lzT2JqZWN0PXB5dGhvbjMyLl9QeV9FbGxpcHNpc09iamVjdCBEQVRBCi0gIF9QeV9GYWxzZVN0cnVjdD1weXRob24zMi5fUHlfRmFsc2VTdHJ1Y3QgREFUQQotICBfUHlfTm9uZVN0cnVjdD1weXRob24zMi5fUHlfTm9uZVN0cnVjdCBEQVRBCi0gIF9QeV9Ob3RJbXBsZW1lbnRlZFN0cnVjdD1weXRob24zMi5fUHlfTm90SW1wbGVtZW50ZWRTdHJ1Y3QgREFUQQotICBfUHlfU3dhcHBlZE9wPXB5dGhvbjMyLl9QeV9Td2FwcGVkT3AgREFUQQotICBfUHlfVHJ1ZVN0cnVjdD1weXRob24zMi5fUHlfVHJ1ZVN0cnVjdCBEQVRBCi0gIF9QeV9WYUJ1aWxkVmFsdWVfU2l6ZVQ9cHl0aG9uMzIuX1B5X1ZhQnVpbGRWYWx1ZV9TaXplVAorICBQeUFyZ19QYXJzZT1weXRob24zMy5QeUFyZ19QYXJzZQorICBQeUFyZ19QYXJzZVR1cGxlPXB5dGhvbjMzLlB5QXJnX1BhcnNlVHVwbGUKKyAgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzPXB5dGhvbjMzLlB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcworICBQeUFyZ19VbnBhY2tUdXBsZT1weXRob24zMy5QeUFyZ19VbnBhY2tUdXBsZQorICBQeUFyZ19WYVBhcnNlPXB5dGhvbjMzLlB5QXJnX1ZhUGFyc2UKKyAgUHlBcmdfVmFQYXJzZVR1cGxlQW5kS2V5d29yZHM9cHl0aG9uMzMuUHlBcmdfVmFQYXJzZVR1cGxlQW5kS2V5d29yZHMKKyAgUHlBcmdfVmFsaWRhdGVLZXl3b3JkQXJndW1lbnRzPXB5dGhvbjMzLlB5QXJnX1ZhbGlkYXRlS2V5d29yZEFyZ3VtZW50cworICBQeUJhc2VPYmplY3RfVHlwZT1weXRob24zMy5QeUJhc2VPYmplY3RfVHlwZSBEQVRBCisgIFB5Qm9vbF9Gcm9tTG9uZz1weXRob24zMy5QeUJvb2xfRnJvbUxvbmcKKyAgUHlCb29sX1R5cGU9cHl0aG9uMzMuUHlCb29sX1R5cGUgREFUQQorICBQeUJ5dGVBcnJheUl0ZXJfVHlwZT1weXRob24zMy5QeUJ5dGVBcnJheUl0ZXJfVHlwZSBEQVRBCisgIFB5Qnl0ZUFycmF5X0FzU3RyaW5nPXB5dGhvbjMzLlB5Qnl0ZUFycmF5X0FzU3RyaW5nCisgIFB5Qnl0ZUFycmF5X0NvbmNhdD1weXRob24zMy5QeUJ5dGVBcnJheV9Db25jYXQKKyAgUHlCeXRlQXJyYXlfRnJvbU9iamVjdD1weXRob24zMy5QeUJ5dGVBcnJheV9Gcm9tT2JqZWN0CisgIFB5Qnl0ZUFycmF5X0Zyb21TdHJpbmdBbmRTaXplPXB5dGhvbjMzLlB5Qnl0ZUFycmF5X0Zyb21TdHJpbmdBbmRTaXplCisgIFB5Qnl0ZUFycmF5X1Jlc2l6ZT1weXRob24zMy5QeUJ5dGVBcnJheV9SZXNpemUKKyAgUHlCeXRlQXJyYXlfU2l6ZT1weXRob24zMy5QeUJ5dGVBcnJheV9TaXplCisgIFB5Qnl0ZUFycmF5X1R5cGU9cHl0aG9uMzMuUHlCeXRlQXJyYXlfVHlwZSBEQVRBCisgIFB5Qnl0ZXNJdGVyX1R5cGU9cHl0aG9uMzMuUHlCeXRlc0l0ZXJfVHlwZSBEQVRBCisgIFB5Qnl0ZXNfQXNTdHJpbmc9cHl0aG9uMzMuUHlCeXRlc19Bc1N0cmluZworICBQeUJ5dGVzX0FzU3RyaW5nQW5kU2l6ZT1weXRob24zMy5QeUJ5dGVzX0FzU3RyaW5nQW5kU2l6ZQorICBQeUJ5dGVzX0NvbmNhdD1weXRob24zMy5QeUJ5dGVzX0NvbmNhdAorICBQeUJ5dGVzX0NvbmNhdEFuZERlbD1weXRob24zMy5QeUJ5dGVzX0NvbmNhdEFuZERlbAorICBQeUJ5dGVzX0RlY29kZUVzY2FwZT1weXRob24zMy5QeUJ5dGVzX0RlY29kZUVzY2FwZQorICBQeUJ5dGVzX0Zyb21Gb3JtYXQ9cHl0aG9uMzMuUHlCeXRlc19Gcm9tRm9ybWF0CisgIFB5Qnl0ZXNfRnJvbUZvcm1hdFY9cHl0aG9uMzMuUHlCeXRlc19Gcm9tRm9ybWF0VgorICBQeUJ5dGVzX0Zyb21PYmplY3Q9cHl0aG9uMzMuUHlCeXRlc19Gcm9tT2JqZWN0CisgIFB5Qnl0ZXNfRnJvbVN0cmluZz1weXRob24zMy5QeUJ5dGVzX0Zyb21TdHJpbmcKKyAgUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZT1weXRob24zMy5QeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplCisgIFB5Qnl0ZXNfUmVwcj1weXRob24zMy5QeUJ5dGVzX1JlcHIKKyAgUHlCeXRlc19TaXplPXB5dGhvbjMzLlB5Qnl0ZXNfU2l6ZQorICBQeUJ5dGVzX1R5cGU9cHl0aG9uMzMuUHlCeXRlc19UeXBlIERBVEEKKyAgUHlDRnVuY3Rpb25fQ2FsbD1weXRob24zMy5QeUNGdW5jdGlvbl9DYWxsCisgIFB5Q0Z1bmN0aW9uX0NsZWFyRnJlZUxpc3Q9cHl0aG9uMzMuUHlDRnVuY3Rpb25fQ2xlYXJGcmVlTGlzdAorICBQeUNGdW5jdGlvbl9HZXRGbGFncz1weXRob24zMy5QeUNGdW5jdGlvbl9HZXRGbGFncworICBQeUNGdW5jdGlvbl9HZXRGdW5jdGlvbj1weXRob24zMy5QeUNGdW5jdGlvbl9HZXRGdW5jdGlvbgorICBQeUNGdW5jdGlvbl9HZXRTZWxmPXB5dGhvbjMzLlB5Q0Z1bmN0aW9uX0dldFNlbGYKKyAgUHlDRnVuY3Rpb25fTmV3RXg9cHl0aG9uMzMuUHlDRnVuY3Rpb25fTmV3RXgKKyAgUHlDRnVuY3Rpb25fVHlwZT1weXRob24zMy5QeUNGdW5jdGlvbl9UeXBlIERBVEEKKyAgUHlDYWxsSXRlcl9OZXc9cHl0aG9uMzMuUHlDYWxsSXRlcl9OZXcKKyAgUHlDYWxsSXRlcl9UeXBlPXB5dGhvbjMzLlB5Q2FsbEl0ZXJfVHlwZSBEQVRBCisgIFB5Q2FsbGFibGVfQ2hlY2s9cHl0aG9uMzMuUHlDYWxsYWJsZV9DaGVjaworICBQeUNhcHN1bGVfR2V0Q29udGV4dD1weXRob24zMy5QeUNhcHN1bGVfR2V0Q29udGV4dAorICBQeUNhcHN1bGVfR2V0RGVzdHJ1Y3Rvcj1weXRob24zMy5QeUNhcHN1bGVfR2V0RGVzdHJ1Y3RvcgorICBQeUNhcHN1bGVfR2V0TmFtZT1weXRob24zMy5QeUNhcHN1bGVfR2V0TmFtZQorICBQeUNhcHN1bGVfR2V0UG9pbnRlcj1weXRob24zMy5QeUNhcHN1bGVfR2V0UG9pbnRlcgorICBQeUNhcHN1bGVfSW1wb3J0PXB5dGhvbjMzLlB5Q2Fwc3VsZV9JbXBvcnQKKyAgUHlDYXBzdWxlX0lzVmFsaWQ9cHl0aG9uMzMuUHlDYXBzdWxlX0lzVmFsaWQKKyAgUHlDYXBzdWxlX05ldz1weXRob24zMy5QeUNhcHN1bGVfTmV3CisgIFB5Q2Fwc3VsZV9TZXRDb250ZXh0PXB5dGhvbjMzLlB5Q2Fwc3VsZV9TZXRDb250ZXh0CisgIFB5Q2Fwc3VsZV9TZXREZXN0cnVjdG9yPXB5dGhvbjMzLlB5Q2Fwc3VsZV9TZXREZXN0cnVjdG9yCisgIFB5Q2Fwc3VsZV9TZXROYW1lPXB5dGhvbjMzLlB5Q2Fwc3VsZV9TZXROYW1lCisgIFB5Q2Fwc3VsZV9TZXRQb2ludGVyPXB5dGhvbjMzLlB5Q2Fwc3VsZV9TZXRQb2ludGVyCisgIFB5Q2Fwc3VsZV9UeXBlPXB5dGhvbjMzLlB5Q2Fwc3VsZV9UeXBlIERBVEEKKyAgUHlDbGFzc01ldGhvZERlc2NyX1R5cGU9cHl0aG9uMzMuUHlDbGFzc01ldGhvZERlc2NyX1R5cGUgREFUQQorICBQeUNvZGVjX0JhY2tzbGFzaFJlcGxhY2VFcnJvcnM9cHl0aG9uMzMuUHlDb2RlY19CYWNrc2xhc2hSZXBsYWNlRXJyb3JzCisgIFB5Q29kZWNfRGVjb2RlPXB5dGhvbjMzLlB5Q29kZWNfRGVjb2RlCisgIFB5Q29kZWNfRGVjb2Rlcj1weXRob24zMy5QeUNvZGVjX0RlY29kZXIKKyAgUHlDb2RlY19FbmNvZGU9cHl0aG9uMzMuUHlDb2RlY19FbmNvZGUKKyAgUHlDb2RlY19FbmNvZGVyPXB5dGhvbjMzLlB5Q29kZWNfRW5jb2RlcgorICBQeUNvZGVjX0lnbm9yZUVycm9ycz1weXRob24zMy5QeUNvZGVjX0lnbm9yZUVycm9ycworICBQeUNvZGVjX0luY3JlbWVudGFsRGVjb2Rlcj1weXRob24zMy5QeUNvZGVjX0luY3JlbWVudGFsRGVjb2RlcgorICBQeUNvZGVjX0luY3JlbWVudGFsRW5jb2Rlcj1weXRob24zMy5QeUNvZGVjX0luY3JlbWVudGFsRW5jb2RlcgorICBQeUNvZGVjX0tub3duRW5jb2Rpbmc9cHl0aG9uMzMuUHlDb2RlY19Lbm93bkVuY29kaW5nCisgIFB5Q29kZWNfTG9va3VwRXJyb3I9cHl0aG9uMzMuUHlDb2RlY19Mb29rdXBFcnJvcgorICBQeUNvZGVjX1JlZ2lzdGVyPXB5dGhvbjMzLlB5Q29kZWNfUmVnaXN0ZXIKKyAgUHlDb2RlY19SZWdpc3RlckVycm9yPXB5dGhvbjMzLlB5Q29kZWNfUmVnaXN0ZXJFcnJvcgorICBQeUNvZGVjX1JlcGxhY2VFcnJvcnM9cHl0aG9uMzMuUHlDb2RlY19SZXBsYWNlRXJyb3JzCisgIFB5Q29kZWNfU3RyZWFtUmVhZGVyPXB5dGhvbjMzLlB5Q29kZWNfU3RyZWFtUmVhZGVyCisgIFB5Q29kZWNfU3RyZWFtV3JpdGVyPXB5dGhvbjMzLlB5Q29kZWNfU3RyZWFtV3JpdGVyCisgIFB5Q29kZWNfU3RyaWN0RXJyb3JzPXB5dGhvbjMzLlB5Q29kZWNfU3RyaWN0RXJyb3JzCisgIFB5Q29kZWNfWE1MQ2hhclJlZlJlcGxhY2VFcnJvcnM9cHl0aG9uMzMuUHlDb2RlY19YTUxDaGFyUmVmUmVwbGFjZUVycm9ycworICBQeUNvbXBsZXhfRnJvbURvdWJsZXM9cHl0aG9uMzMuUHlDb21wbGV4X0Zyb21Eb3VibGVzCisgIFB5Q29tcGxleF9JbWFnQXNEb3VibGU9cHl0aG9uMzMuUHlDb21wbGV4X0ltYWdBc0RvdWJsZQorICBQeUNvbXBsZXhfUmVhbEFzRG91YmxlPXB5dGhvbjMzLlB5Q29tcGxleF9SZWFsQXNEb3VibGUKKyAgUHlDb21wbGV4X1R5cGU9cHl0aG9uMzMuUHlDb21wbGV4X1R5cGUgREFUQQorICBQeURlc2NyX05ld0NsYXNzTWV0aG9kPXB5dGhvbjMzLlB5RGVzY3JfTmV3Q2xhc3NNZXRob2QKKyAgUHlEZXNjcl9OZXdHZXRTZXQ9cHl0aG9uMzMuUHlEZXNjcl9OZXdHZXRTZXQKKyAgUHlEZXNjcl9OZXdNZW1iZXI9cHl0aG9uMzMuUHlEZXNjcl9OZXdNZW1iZXIKKyAgUHlEZXNjcl9OZXdNZXRob2Q9cHl0aG9uMzMuUHlEZXNjcl9OZXdNZXRob2QKKyAgUHlEaWN0SXRlbXNfVHlwZT1weXRob24zMy5QeURpY3RJdGVtc19UeXBlIERBVEEKKyAgUHlEaWN0SXRlckl0ZW1fVHlwZT1weXRob24zMy5QeURpY3RJdGVySXRlbV9UeXBlIERBVEEKKyAgUHlEaWN0SXRlcktleV9UeXBlPXB5dGhvbjMzLlB5RGljdEl0ZXJLZXlfVHlwZSBEQVRBCisgIFB5RGljdEl0ZXJWYWx1ZV9UeXBlPXB5dGhvbjMzLlB5RGljdEl0ZXJWYWx1ZV9UeXBlIERBVEEKKyAgUHlEaWN0S2V5c19UeXBlPXB5dGhvbjMzLlB5RGljdEtleXNfVHlwZSBEQVRBCisgIFB5RGljdFByb3h5X05ldz1weXRob24zMy5QeURpY3RQcm94eV9OZXcKKyAgUHlEaWN0UHJveHlfVHlwZT1weXRob24zMy5QeURpY3RQcm94eV9UeXBlIERBVEEKKyAgUHlEaWN0VmFsdWVzX1R5cGU9cHl0aG9uMzMuUHlEaWN0VmFsdWVzX1R5cGUgREFUQQorICBQeURpY3RfQ2xlYXI9cHl0aG9uMzMuUHlEaWN0X0NsZWFyCisgIFB5RGljdF9Db250YWlucz1weXRob24zMy5QeURpY3RfQ29udGFpbnMKKyAgUHlEaWN0X0NvcHk9cHl0aG9uMzMuUHlEaWN0X0NvcHkKKyAgUHlEaWN0X0RlbEl0ZW09cHl0aG9uMzMuUHlEaWN0X0RlbEl0ZW0KKyAgUHlEaWN0X0RlbEl0ZW1TdHJpbmc9cHl0aG9uMzMuUHlEaWN0X0RlbEl0ZW1TdHJpbmcKKyAgUHlEaWN0X0dldEl0ZW09cHl0aG9uMzMuUHlEaWN0X0dldEl0ZW0KKyAgUHlEaWN0X0dldEl0ZW1TdHJpbmc9cHl0aG9uMzMuUHlEaWN0X0dldEl0ZW1TdHJpbmcKKyAgUHlEaWN0X0dldEl0ZW1XaXRoRXJyb3I9cHl0aG9uMzMuUHlEaWN0X0dldEl0ZW1XaXRoRXJyb3IKKyAgUHlEaWN0X0l0ZW1zPXB5dGhvbjMzLlB5RGljdF9JdGVtcworICBQeURpY3RfS2V5cz1weXRob24zMy5QeURpY3RfS2V5cworICBQeURpY3RfTWVyZ2U9cHl0aG9uMzMuUHlEaWN0X01lcmdlCisgIFB5RGljdF9NZXJnZUZyb21TZXEyPXB5dGhvbjMzLlB5RGljdF9NZXJnZUZyb21TZXEyCisgIFB5RGljdF9OZXc9cHl0aG9uMzMuUHlEaWN0X05ldworICBQeURpY3RfTmV4dD1weXRob24zMy5QeURpY3RfTmV4dAorICBQeURpY3RfU2V0SXRlbT1weXRob24zMy5QeURpY3RfU2V0SXRlbQorICBQeURpY3RfU2V0SXRlbVN0cmluZz1weXRob24zMy5QeURpY3RfU2V0SXRlbVN0cmluZworICBQeURpY3RfU2l6ZT1weXRob24zMy5QeURpY3RfU2l6ZQorICBQeURpY3RfVHlwZT1weXRob24zMy5QeURpY3RfVHlwZSBEQVRBCisgIFB5RGljdF9VcGRhdGU9cHl0aG9uMzMuUHlEaWN0X1VwZGF0ZQorICBQeURpY3RfVmFsdWVzPXB5dGhvbjMzLlB5RGljdF9WYWx1ZXMKKyAgUHlFbGxpcHNpc19UeXBlPXB5dGhvbjMzLlB5RWxsaXBzaXNfVHlwZSBEQVRBCisgIFB5RW51bV9UeXBlPXB5dGhvbjMzLlB5RW51bV9UeXBlIERBVEEKKyAgUHlFcnJfQmFkQXJndW1lbnQ9cHl0aG9uMzMuUHlFcnJfQmFkQXJndW1lbnQKKyAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsPXB5dGhvbjMzLlB5RXJyX0JhZEludGVybmFsQ2FsbAorICBQeUVycl9DaGVja1NpZ25hbHM9cHl0aG9uMzMuUHlFcnJfQ2hlY2tTaWduYWxzCisgIFB5RXJyX0NsZWFyPXB5dGhvbjMzLlB5RXJyX0NsZWFyCisgIFB5RXJyX0Rpc3BsYXk9cHl0aG9uMzMuUHlFcnJfRGlzcGxheQorICBQeUVycl9FeGNlcHRpb25NYXRjaGVzPXB5dGhvbjMzLlB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMKKyAgUHlFcnJfRmV0Y2g9cHl0aG9uMzMuUHlFcnJfRmV0Y2gKKyAgUHlFcnJfRm9ybWF0PXB5dGhvbjMzLlB5RXJyX0Zvcm1hdAorICBQeUVycl9HaXZlbkV4Y2VwdGlvbk1hdGNoZXM9cHl0aG9uMzMuUHlFcnJfR2l2ZW5FeGNlcHRpb25NYXRjaGVzCisgIFB5RXJyX05ld0V4Y2VwdGlvbj1weXRob24zMy5QeUVycl9OZXdFeGNlcHRpb24KKyAgUHlFcnJfTmV3RXhjZXB0aW9uV2l0aERvYz1weXRob24zMy5QeUVycl9OZXdFeGNlcHRpb25XaXRoRG9jCisgIFB5RXJyX05vTWVtb3J5PXB5dGhvbjMzLlB5RXJyX05vTWVtb3J5CisgIFB5RXJyX05vcm1hbGl6ZUV4Y2VwdGlvbj1weXRob24zMy5QeUVycl9Ob3JtYWxpemVFeGNlcHRpb24KKyAgUHlFcnJfT2NjdXJyZWQ9cHl0aG9uMzMuUHlFcnJfT2NjdXJyZWQKKyAgUHlFcnJfUHJpbnQ9cHl0aG9uMzMuUHlFcnJfUHJpbnQKKyAgUHlFcnJfUHJpbnRFeD1weXRob24zMy5QeUVycl9QcmludEV4CisgIFB5RXJyX1Byb2dyYW1UZXh0PXB5dGhvbjMzLlB5RXJyX1Byb2dyYW1UZXh0CisgIFB5RXJyX1Jlc3RvcmU9cHl0aG9uMzMuUHlFcnJfUmVzdG9yZQorICBQeUVycl9TZXRGcm9tRXJybm89cHl0aG9uMzMuUHlFcnJfU2V0RnJvbUVycm5vCisgIFB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZT1weXRob24zMy5QeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWUKKyAgUHlFcnJfU2V0RnJvbUVycm5vV2l0aEZpbGVuYW1lT2JqZWN0PXB5dGhvbjMzLlB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZU9iamVjdAorICBQeUVycl9TZXRJbnRlcnJ1cHQ9cHl0aG9uMzMuUHlFcnJfU2V0SW50ZXJydXB0CisgIFB5RXJyX1NldE5vbmU9cHl0aG9uMzMuUHlFcnJfU2V0Tm9uZQorICBQeUVycl9TZXRPYmplY3Q9cHl0aG9uMzMuUHlFcnJfU2V0T2JqZWN0CisgIFB5RXJyX1NldFN0cmluZz1weXRob24zMy5QeUVycl9TZXRTdHJpbmcKKyAgUHlFcnJfU3ludGF4TG9jYXRpb249cHl0aG9uMzMuUHlFcnJfU3ludGF4TG9jYXRpb24KKyAgUHlFcnJfV2FybkV4PXB5dGhvbjMzLlB5RXJyX1dhcm5FeAorICBQeUVycl9XYXJuRXhwbGljaXQ9cHl0aG9uMzMuUHlFcnJfV2FybkV4cGxpY2l0CisgIFB5RXJyX1dhcm5Gb3JtYXQ9cHl0aG9uMzMuUHlFcnJfV2FybkZvcm1hdAorICBQeUVycl9Xcml0ZVVucmFpc2FibGU9cHl0aG9uMzMuUHlFcnJfV3JpdGVVbnJhaXNhYmxlCisgIFB5RXZhbF9BY3F1aXJlTG9jaz1weXRob24zMy5QeUV2YWxfQWNxdWlyZUxvY2sKKyAgUHlFdmFsX0FjcXVpcmVUaHJlYWQ9cHl0aG9uMzMuUHlFdmFsX0FjcXVpcmVUaHJlYWQKKyAgUHlFdmFsX0NhbGxGdW5jdGlvbj1weXRob24zMy5QeUV2YWxfQ2FsbEZ1bmN0aW9uCisgIFB5RXZhbF9DYWxsTWV0aG9kPXB5dGhvbjMzLlB5RXZhbF9DYWxsTWV0aG9kCisgIFB5RXZhbF9DYWxsT2JqZWN0V2l0aEtleXdvcmRzPXB5dGhvbjMzLlB5RXZhbF9DYWxsT2JqZWN0V2l0aEtleXdvcmRzCisgIFB5RXZhbF9FdmFsQ29kZT1weXRob24zMy5QeUV2YWxfRXZhbENvZGUKKyAgUHlFdmFsX0V2YWxDb2RlRXg9cHl0aG9uMzMuUHlFdmFsX0V2YWxDb2RlRXgKKyAgUHlFdmFsX0V2YWxGcmFtZT1weXRob24zMy5QeUV2YWxfRXZhbEZyYW1lCisgIFB5RXZhbF9FdmFsRnJhbWVFeD1weXRob24zMy5QeUV2YWxfRXZhbEZyYW1lRXgKKyAgUHlFdmFsX0dldEJ1aWx0aW5zPXB5dGhvbjMzLlB5RXZhbF9HZXRCdWlsdGlucworICBQeUV2YWxfR2V0Q2FsbFN0YXRzPXB5dGhvbjMzLlB5RXZhbF9HZXRDYWxsU3RhdHMKKyAgUHlFdmFsX0dldEZyYW1lPXB5dGhvbjMzLlB5RXZhbF9HZXRGcmFtZQorICBQeUV2YWxfR2V0RnVuY0Rlc2M9cHl0aG9uMzMuUHlFdmFsX0dldEZ1bmNEZXNjCisgIFB5RXZhbF9HZXRGdW5jTmFtZT1weXRob24zMy5QeUV2YWxfR2V0RnVuY05hbWUKKyAgUHlFdmFsX0dldEdsb2JhbHM9cHl0aG9uMzMuUHlFdmFsX0dldEdsb2JhbHMKKyAgUHlFdmFsX0dldExvY2Fscz1weXRob24zMy5QeUV2YWxfR2V0TG9jYWxzCisgIFB5RXZhbF9Jbml0VGhyZWFkcz1weXRob24zMy5QeUV2YWxfSW5pdFRocmVhZHMKKyAgUHlFdmFsX1JlSW5pdFRocmVhZHM9cHl0aG9uMzMuUHlFdmFsX1JlSW5pdFRocmVhZHMKKyAgUHlFdmFsX1JlbGVhc2VMb2NrPXB5dGhvbjMzLlB5RXZhbF9SZWxlYXNlTG9jaworICBQeUV2YWxfUmVsZWFzZVRocmVhZD1weXRob24zMy5QeUV2YWxfUmVsZWFzZVRocmVhZAorICBQeUV2YWxfUmVzdG9yZVRocmVhZD1weXRob24zMy5QeUV2YWxfUmVzdG9yZVRocmVhZAorICBQeUV2YWxfU2F2ZVRocmVhZD1weXRob24zMy5QeUV2YWxfU2F2ZVRocmVhZAorICBQeUV2YWxfVGhyZWFkc0luaXRpYWxpemVkPXB5dGhvbjMzLlB5RXZhbF9UaHJlYWRzSW5pdGlhbGl6ZWQKKyAgUHlFeGNfQXJpdGhtZXRpY0Vycm9yPXB5dGhvbjMzLlB5RXhjX0FyaXRobWV0aWNFcnJvciBEQVRBCisgIFB5RXhjX0Fzc2VydGlvbkVycm9yPXB5dGhvbjMzLlB5RXhjX0Fzc2VydGlvbkVycm9yIERBVEEKKyAgUHlFeGNfQXR0cmlidXRlRXJyb3I9cHl0aG9uMzMuUHlFeGNfQXR0cmlidXRlRXJyb3IgREFUQQorICBQeUV4Y19CYXNlRXhjZXB0aW9uPXB5dGhvbjMzLlB5RXhjX0Jhc2VFeGNlcHRpb24gREFUQQorICBQeUV4Y19CdWZmZXJFcnJvcj1weXRob24zMy5QeUV4Y19CdWZmZXJFcnJvciBEQVRBCisgIFB5RXhjX0J5dGVzV2FybmluZz1weXRob24zMy5QeUV4Y19CeXRlc1dhcm5pbmcgREFUQQorICBQeUV4Y19EZXByZWNhdGlvbldhcm5pbmc9cHl0aG9uMzMuUHlFeGNfRGVwcmVjYXRpb25XYXJuaW5nIERBVEEKKyAgUHlFeGNfRU9GRXJyb3I9cHl0aG9uMzMuUHlFeGNfRU9GRXJyb3IgREFUQQorICBQeUV4Y19FbnZpcm9ubWVudEVycm9yPXB5dGhvbjMzLlB5RXhjX0Vudmlyb25tZW50RXJyb3IgREFUQQorICBQeUV4Y19FeGNlcHRpb249cHl0aG9uMzMuUHlFeGNfRXhjZXB0aW9uIERBVEEKKyAgUHlFeGNfRmxvYXRpbmdQb2ludEVycm9yPXB5dGhvbjMzLlB5RXhjX0Zsb2F0aW5nUG9pbnRFcnJvciBEQVRBCisgIFB5RXhjX0Z1dHVyZVdhcm5pbmc9cHl0aG9uMzMuUHlFeGNfRnV0dXJlV2FybmluZyBEQVRBCisgIFB5RXhjX0dlbmVyYXRvckV4aXQ9cHl0aG9uMzMuUHlFeGNfR2VuZXJhdG9yRXhpdCBEQVRBCisgIFB5RXhjX0lPRXJyb3I9cHl0aG9uMzMuUHlFeGNfSU9FcnJvciBEQVRBCisgIFB5RXhjX0ltcG9ydEVycm9yPXB5dGhvbjMzLlB5RXhjX0ltcG9ydEVycm9yIERBVEEKKyAgUHlFeGNfSW1wb3J0V2FybmluZz1weXRob24zMy5QeUV4Y19JbXBvcnRXYXJuaW5nIERBVEEKKyAgUHlFeGNfSW5kZW50YXRpb25FcnJvcj1weXRob24zMy5QeUV4Y19JbmRlbnRhdGlvbkVycm9yIERBVEEKKyAgUHlFeGNfSW5kZXhFcnJvcj1weXRob24zMy5QeUV4Y19JbmRleEVycm9yIERBVEEKKyAgUHlFeGNfS2V5RXJyb3I9cHl0aG9uMzMuUHlFeGNfS2V5RXJyb3IgREFUQQorICBQeUV4Y19LZXlib2FyZEludGVycnVwdD1weXRob24zMy5QeUV4Y19LZXlib2FyZEludGVycnVwdCBEQVRBCisgIFB5RXhjX0xvb2t1cEVycm9yPXB5dGhvbjMzLlB5RXhjX0xvb2t1cEVycm9yIERBVEEKKyAgUHlFeGNfTWVtb3J5RXJyb3I9cHl0aG9uMzMuUHlFeGNfTWVtb3J5RXJyb3IgREFUQQorICBQeUV4Y19NZW1vcnlFcnJvckluc3Q9cHl0aG9uMzMuUHlFeGNfTWVtb3J5RXJyb3JJbnN0IERBVEEKKyAgUHlFeGNfTmFtZUVycm9yPXB5dGhvbjMzLlB5RXhjX05hbWVFcnJvciBEQVRBCisgIFB5RXhjX05vdEltcGxlbWVudGVkRXJyb3I9cHl0aG9uMzMuUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvciBEQVRBCisgIFB5RXhjX09TRXJyb3I9cHl0aG9uMzMuUHlFeGNfT1NFcnJvciBEQVRBCisgIFB5RXhjX092ZXJmbG93RXJyb3I9cHl0aG9uMzMuUHlFeGNfT3ZlcmZsb3dFcnJvciBEQVRBCisgIFB5RXhjX1BlbmRpbmdEZXByZWNhdGlvbldhcm5pbmc9cHl0aG9uMzMuUHlFeGNfUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZyBEQVRBCisgIFB5RXhjX1JlY3Vyc2lvbkVycm9ySW5zdD1weXRob24zMy5QeUV4Y19SZWN1cnNpb25FcnJvckluc3QgREFUQQorICBQeUV4Y19SZWZlcmVuY2VFcnJvcj1weXRob24zMy5QeUV4Y19SZWZlcmVuY2VFcnJvciBEQVRBCisgIFB5RXhjX1J1bnRpbWVFcnJvcj1weXRob24zMy5QeUV4Y19SdW50aW1lRXJyb3IgREFUQQorICBQeUV4Y19SdW50aW1lV2FybmluZz1weXRob24zMy5QeUV4Y19SdW50aW1lV2FybmluZyBEQVRBCisgIFB5RXhjX1N0b3BJdGVyYXRpb249cHl0aG9uMzMuUHlFeGNfU3RvcEl0ZXJhdGlvbiBEQVRBCisgIFB5RXhjX1N5bnRheEVycm9yPXB5dGhvbjMzLlB5RXhjX1N5bnRheEVycm9yIERBVEEKKyAgUHlFeGNfU3ludGF4V2FybmluZz1weXRob24zMy5QeUV4Y19TeW50YXhXYXJuaW5nIERBVEEKKyAgUHlFeGNfU3lzdGVtRXJyb3I9cHl0aG9uMzMuUHlFeGNfU3lzdGVtRXJyb3IgREFUQQorICBQeUV4Y19TeXN0ZW1FeGl0PXB5dGhvbjMzLlB5RXhjX1N5c3RlbUV4aXQgREFUQQorICBQeUV4Y19UYWJFcnJvcj1weXRob24zMy5QeUV4Y19UYWJFcnJvciBEQVRBCisgIFB5RXhjX1R5cGVFcnJvcj1weXRob24zMy5QeUV4Y19UeXBlRXJyb3IgREFUQQorICBQeUV4Y19VbmJvdW5kTG9jYWxFcnJvcj1weXRob24zMy5QeUV4Y19VbmJvdW5kTG9jYWxFcnJvciBEQVRBCisgIFB5RXhjX1VuaWNvZGVEZWNvZGVFcnJvcj1weXRob24zMy5QeUV4Y19Vbmljb2RlRGVjb2RlRXJyb3IgREFUQQorICBQeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3I9cHl0aG9uMzMuUHlFeGNfVW5pY29kZUVuY29kZUVycm9yIERBVEEKKyAgUHlFeGNfVW5pY29kZUVycm9yPXB5dGhvbjMzLlB5RXhjX1VuaWNvZGVFcnJvciBEQVRBCisgIFB5RXhjX1VuaWNvZGVUcmFuc2xhdGVFcnJvcj1weXRob24zMy5QeUV4Y19Vbmljb2RlVHJhbnNsYXRlRXJyb3IgREFUQQorICBQeUV4Y19Vbmljb2RlV2FybmluZz1weXRob24zMy5QeUV4Y19Vbmljb2RlV2FybmluZyBEQVRBCisgIFB5RXhjX1VzZXJXYXJuaW5nPXB5dGhvbjMzLlB5RXhjX1VzZXJXYXJuaW5nIERBVEEKKyAgUHlFeGNfVmFsdWVFcnJvcj1weXRob24zMy5QeUV4Y19WYWx1ZUVycm9yIERBVEEKKyAgUHlFeGNfV2FybmluZz1weXRob24zMy5QeUV4Y19XYXJuaW5nIERBVEEKKyAgUHlFeGNfWmVyb0RpdmlzaW9uRXJyb3I9cHl0aG9uMzMuUHlFeGNfWmVyb0RpdmlzaW9uRXJyb3IgREFUQQorICBQeUV4Y2VwdGlvbl9HZXRDYXVzZT1weXRob24zMy5QeUV4Y2VwdGlvbl9HZXRDYXVzZQorICBQeUV4Y2VwdGlvbl9HZXRDb250ZXh0PXB5dGhvbjMzLlB5RXhjZXB0aW9uX0dldENvbnRleHQKKyAgUHlFeGNlcHRpb25fR2V0VHJhY2ViYWNrPXB5dGhvbjMzLlB5RXhjZXB0aW9uX0dldFRyYWNlYmFjaworICBQeUV4Y2VwdGlvbl9TZXRDYXVzZT1weXRob24zMy5QeUV4Y2VwdGlvbl9TZXRDYXVzZQorICBQeUV4Y2VwdGlvbl9TZXRDb250ZXh0PXB5dGhvbjMzLlB5RXhjZXB0aW9uX1NldENvbnRleHQKKyAgUHlFeGNlcHRpb25fU2V0VHJhY2ViYWNrPXB5dGhvbjMzLlB5RXhjZXB0aW9uX1NldFRyYWNlYmFjaworICBQeUZpbGVfRnJvbUZkPXB5dGhvbjMzLlB5RmlsZV9Gcm9tRmQKKyAgUHlGaWxlX0dldExpbmU9cHl0aG9uMzMuUHlGaWxlX0dldExpbmUKKyAgUHlGaWxlX1dyaXRlT2JqZWN0PXB5dGhvbjMzLlB5RmlsZV9Xcml0ZU9iamVjdAorICBQeUZpbGVfV3JpdGVTdHJpbmc9cHl0aG9uMzMuUHlGaWxlX1dyaXRlU3RyaW5nCisgIFB5RmlsdGVyX1R5cGU9cHl0aG9uMzMuUHlGaWx0ZXJfVHlwZSBEQVRBCisgIFB5RmxvYXRfQXNEb3VibGU9cHl0aG9uMzMuUHlGbG9hdF9Bc0RvdWJsZQorICBQeUZsb2F0X0Zyb21Eb3VibGU9cHl0aG9uMzMuUHlGbG9hdF9Gcm9tRG91YmxlCisgIFB5RmxvYXRfRnJvbVN0cmluZz1weXRob24zMy5QeUZsb2F0X0Zyb21TdHJpbmcKKyAgUHlGbG9hdF9HZXRJbmZvPXB5dGhvbjMzLlB5RmxvYXRfR2V0SW5mbworICBQeUZsb2F0X0dldE1heD1weXRob24zMy5QeUZsb2F0X0dldE1heAorICBQeUZsb2F0X0dldE1pbj1weXRob24zMy5QeUZsb2F0X0dldE1pbgorICBQeUZsb2F0X1R5cGU9cHl0aG9uMzMuUHlGbG9hdF9UeXBlIERBVEEKKyAgUHlGcm96ZW5TZXRfTmV3PXB5dGhvbjMzLlB5RnJvemVuU2V0X05ldworICBQeUZyb3plblNldF9UeXBlPXB5dGhvbjMzLlB5RnJvemVuU2V0X1R5cGUgREFUQQorICBQeUdDX0NvbGxlY3Q9cHl0aG9uMzMuUHlHQ19Db2xsZWN0CisgIFB5R0lMU3RhdGVfRW5zdXJlPXB5dGhvbjMzLlB5R0lMU3RhdGVfRW5zdXJlCisgIFB5R0lMU3RhdGVfR2V0VGhpc1RocmVhZFN0YXRlPXB5dGhvbjMzLlB5R0lMU3RhdGVfR2V0VGhpc1RocmVhZFN0YXRlCisgIFB5R0lMU3RhdGVfUmVsZWFzZT1weXRob24zMy5QeUdJTFN0YXRlX1JlbGVhc2UKKyAgUHlHZXRTZXREZXNjcl9UeXBlPXB5dGhvbjMzLlB5R2V0U2V0RGVzY3JfVHlwZSBEQVRBCisgIFB5SW1wb3J0X0FkZE1vZHVsZT1weXRob24zMy5QeUltcG9ydF9BZGRNb2R1bGUKKyAgUHlJbXBvcnRfQXBwZW5kSW5pdHRhYj1weXRob24zMy5QeUltcG9ydF9BcHBlbmRJbml0dGFiCisgIFB5SW1wb3J0X0NsZWFudXA9cHl0aG9uMzMuUHlJbXBvcnRfQ2xlYW51cAorICBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZT1weXRob24zMy5QeUltcG9ydF9FeGVjQ29kZU1vZHVsZQorICBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZUV4PXB5dGhvbjMzLlB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlRXgKKyAgUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVXaXRoUGF0aG5hbWVzPXB5dGhvbjMzLlB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlV2l0aFBhdGhuYW1lcworICBQeUltcG9ydF9HZXRJbXBvcnRlcj1weXRob24zMy5QeUltcG9ydF9HZXRJbXBvcnRlcgorICBQeUltcG9ydF9HZXRNYWdpY051bWJlcj1weXRob24zMy5QeUltcG9ydF9HZXRNYWdpY051bWJlcgorICBQeUltcG9ydF9HZXRNYWdpY1RhZz1weXRob24zMy5QeUltcG9ydF9HZXRNYWdpY1RhZworICBQeUltcG9ydF9HZXRNb2R1bGVEaWN0PXB5dGhvbjMzLlB5SW1wb3J0X0dldE1vZHVsZURpY3QKKyAgUHlJbXBvcnRfSW1wb3J0PXB5dGhvbjMzLlB5SW1wb3J0X0ltcG9ydAorICBQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGU9cHl0aG9uMzMuUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlCisgIFB5SW1wb3J0X0ltcG9ydE1vZHVsZT1weXRob24zMy5QeUltcG9ydF9JbXBvcnRNb2R1bGUKKyAgUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWw9cHl0aG9uMzMuUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWwKKyAgUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaz1weXRob24zMy5QeUltcG9ydF9JbXBvcnRNb2R1bGVOb0Jsb2NrCisgIFB5SW1wb3J0X1JlbG9hZE1vZHVsZT1weXRob24zMy5QeUltcG9ydF9SZWxvYWRNb2R1bGUKKyAgUHlJbnRlcnByZXRlclN0YXRlX0NsZWFyPXB5dGhvbjMzLlB5SW50ZXJwcmV0ZXJTdGF0ZV9DbGVhcgorICBQeUludGVycHJldGVyU3RhdGVfRGVsZXRlPXB5dGhvbjMzLlB5SW50ZXJwcmV0ZXJTdGF0ZV9EZWxldGUKKyAgUHlJbnRlcnByZXRlclN0YXRlX05ldz1weXRob24zMy5QeUludGVycHJldGVyU3RhdGVfTmV3CisgIFB5SXRlcl9OZXh0PXB5dGhvbjMzLlB5SXRlcl9OZXh0CisgIFB5TGlzdEl0ZXJfVHlwZT1weXRob24zMy5QeUxpc3RJdGVyX1R5cGUgREFUQQorICBQeUxpc3RSZXZJdGVyX1R5cGU9cHl0aG9uMzMuUHlMaXN0UmV2SXRlcl9UeXBlIERBVEEKKyAgUHlMaXN0X0FwcGVuZD1weXRob24zMy5QeUxpc3RfQXBwZW5kCisgIFB5TGlzdF9Bc1R1cGxlPXB5dGhvbjMzLlB5TGlzdF9Bc1R1cGxlCisgIFB5TGlzdF9HZXRJdGVtPXB5dGhvbjMzLlB5TGlzdF9HZXRJdGVtCisgIFB5TGlzdF9HZXRTbGljZT1weXRob24zMy5QeUxpc3RfR2V0U2xpY2UKKyAgUHlMaXN0X0luc2VydD1weXRob24zMy5QeUxpc3RfSW5zZXJ0CisgIFB5TGlzdF9OZXc9cHl0aG9uMzMuUHlMaXN0X05ldworICBQeUxpc3RfUmV2ZXJzZT1weXRob24zMy5QeUxpc3RfUmV2ZXJzZQorICBQeUxpc3RfU2V0SXRlbT1weXRob24zMy5QeUxpc3RfU2V0SXRlbQorICBQeUxpc3RfU2V0U2xpY2U9cHl0aG9uMzMuUHlMaXN0X1NldFNsaWNlCisgIFB5TGlzdF9TaXplPXB5dGhvbjMzLlB5TGlzdF9TaXplCisgIFB5TGlzdF9Tb3J0PXB5dGhvbjMzLlB5TGlzdF9Tb3J0CisgIFB5TGlzdF9UeXBlPXB5dGhvbjMzLlB5TGlzdF9UeXBlIERBVEEKKyAgUHlMb25nUmFuZ2VJdGVyX1R5cGU9cHl0aG9uMzMuUHlMb25nUmFuZ2VJdGVyX1R5cGUgREFUQQorICBQeUxvbmdfQXNEb3VibGU9cHl0aG9uMzMuUHlMb25nX0FzRG91YmxlCisgIFB5TG9uZ19Bc0xvbmc9cHl0aG9uMzMuUHlMb25nX0FzTG9uZworICBQeUxvbmdfQXNMb25nQW5kT3ZlcmZsb3c9cHl0aG9uMzMuUHlMb25nX0FzTG9uZ0FuZE92ZXJmbG93CisgIFB5TG9uZ19Bc0xvbmdMb25nPXB5dGhvbjMzLlB5TG9uZ19Bc0xvbmdMb25nCisgIFB5TG9uZ19Bc0xvbmdMb25nQW5kT3ZlcmZsb3c9cHl0aG9uMzMuUHlMb25nX0FzTG9uZ0xvbmdBbmRPdmVyZmxvdworICBQeUxvbmdfQXNTaXplX3Q9cHl0aG9uMzMuUHlMb25nX0FzU2l6ZV90CisgIFB5TG9uZ19Bc1NzaXplX3Q9cHl0aG9uMzMuUHlMb25nX0FzU3NpemVfdAorICBQeUxvbmdfQXNVbnNpZ25lZExvbmc9cHl0aG9uMzMuUHlMb25nX0FzVW5zaWduZWRMb25nCisgIFB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ0xvbmc9cHl0aG9uMzMuUHlMb25nX0FzVW5zaWduZWRMb25nTG9uZworICBQeUxvbmdfQXNVbnNpZ25lZExvbmdMb25nTWFzaz1weXRob24zMy5QeUxvbmdfQXNVbnNpZ25lZExvbmdMb25nTWFzaworICBQeUxvbmdfQXNVbnNpZ25lZExvbmdNYXNrPXB5dGhvbjMzLlB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ01hc2sKKyAgUHlMb25nX0FzVm9pZFB0cj1weXRob24zMy5QeUxvbmdfQXNWb2lkUHRyCisgIFB5TG9uZ19Gcm9tRG91YmxlPXB5dGhvbjMzLlB5TG9uZ19Gcm9tRG91YmxlCisgIFB5TG9uZ19Gcm9tTG9uZz1weXRob24zMy5QeUxvbmdfRnJvbUxvbmcKKyAgUHlMb25nX0Zyb21Mb25nTG9uZz1weXRob24zMy5QeUxvbmdfRnJvbUxvbmdMb25nCisgIFB5TG9uZ19Gcm9tU2l6ZV90PXB5dGhvbjMzLlB5TG9uZ19Gcm9tU2l6ZV90CisgIFB5TG9uZ19Gcm9tU3NpemVfdD1weXRob24zMy5QeUxvbmdfRnJvbVNzaXplX3QKKyAgUHlMb25nX0Zyb21TdHJpbmc9cHl0aG9uMzMuUHlMb25nX0Zyb21TdHJpbmcKKyAgUHlMb25nX0Zyb21VbnNpZ25lZExvbmc9cHl0aG9uMzMuUHlMb25nX0Zyb21VbnNpZ25lZExvbmcKKyAgUHlMb25nX0Zyb21VbnNpZ25lZExvbmdMb25nPXB5dGhvbjMzLlB5TG9uZ19Gcm9tVW5zaWduZWRMb25nTG9uZworICBQeUxvbmdfRnJvbVZvaWRQdHI9cHl0aG9uMzMuUHlMb25nX0Zyb21Wb2lkUHRyCisgIFB5TG9uZ19HZXRJbmZvPXB5dGhvbjMzLlB5TG9uZ19HZXRJbmZvCisgIFB5TG9uZ19UeXBlPXB5dGhvbjMzLlB5TG9uZ19UeXBlIERBVEEKKyAgUHlNYXBfVHlwZT1weXRob24zMy5QeU1hcF9UeXBlIERBVEEKKyAgUHlNYXBwaW5nX0NoZWNrPXB5dGhvbjMzLlB5TWFwcGluZ19DaGVjaworICBQeU1hcHBpbmdfR2V0SXRlbVN0cmluZz1weXRob24zMy5QeU1hcHBpbmdfR2V0SXRlbVN0cmluZworICBQeU1hcHBpbmdfSGFzS2V5PXB5dGhvbjMzLlB5TWFwcGluZ19IYXNLZXkKKyAgUHlNYXBwaW5nX0hhc0tleVN0cmluZz1weXRob24zMy5QeU1hcHBpbmdfSGFzS2V5U3RyaW5nCisgIFB5TWFwcGluZ19JdGVtcz1weXRob24zMy5QeU1hcHBpbmdfSXRlbXMKKyAgUHlNYXBwaW5nX0tleXM9cHl0aG9uMzMuUHlNYXBwaW5nX0tleXMKKyAgUHlNYXBwaW5nX0xlbmd0aD1weXRob24zMy5QeU1hcHBpbmdfTGVuZ3RoCisgIFB5TWFwcGluZ19TZXRJdGVtU3RyaW5nPXB5dGhvbjMzLlB5TWFwcGluZ19TZXRJdGVtU3RyaW5nCisgIFB5TWFwcGluZ19TaXplPXB5dGhvbjMzLlB5TWFwcGluZ19TaXplCisgIFB5TWFwcGluZ19WYWx1ZXM9cHl0aG9uMzMuUHlNYXBwaW5nX1ZhbHVlcworICBQeU1lbV9GcmVlPXB5dGhvbjMzLlB5TWVtX0ZyZWUKKyAgUHlNZW1fTWFsbG9jPXB5dGhvbjMzLlB5TWVtX01hbGxvYworICBQeU1lbV9SZWFsbG9jPXB5dGhvbjMzLlB5TWVtX1JlYWxsb2MKKyAgUHlNZW1iZXJEZXNjcl9UeXBlPXB5dGhvbjMzLlB5TWVtYmVyRGVzY3JfVHlwZSBEQVRBCisgIFB5TWVtb3J5Vmlld19Gcm9tT2JqZWN0PXB5dGhvbjMzLlB5TWVtb3J5Vmlld19Gcm9tT2JqZWN0CisgIFB5TWVtb3J5Vmlld19HZXRDb250aWd1b3VzPXB5dGhvbjMzLlB5TWVtb3J5Vmlld19HZXRDb250aWd1b3VzCisgIFB5TWVtb3J5Vmlld19UeXBlPXB5dGhvbjMzLlB5TWVtb3J5Vmlld19UeXBlIERBVEEKKyAgUHlNZXRob2REZXNjcl9UeXBlPXB5dGhvbjMzLlB5TWV0aG9kRGVzY3JfVHlwZSBEQVRBCisgIFB5TW9kdWxlX0FkZEludENvbnN0YW50PXB5dGhvbjMzLlB5TW9kdWxlX0FkZEludENvbnN0YW50CisgIFB5TW9kdWxlX0FkZE9iamVjdD1weXRob24zMy5QeU1vZHVsZV9BZGRPYmplY3QKKyAgUHlNb2R1bGVfQWRkU3RyaW5nQ29uc3RhbnQ9cHl0aG9uMzMuUHlNb2R1bGVfQWRkU3RyaW5nQ29uc3RhbnQKKyAgUHlNb2R1bGVfQ3JlYXRlMj1weXRob24zMy5QeU1vZHVsZV9DcmVhdGUyCisgIFB5TW9kdWxlX0dldERlZj1weXRob24zMy5QeU1vZHVsZV9HZXREZWYKKyAgUHlNb2R1bGVfR2V0RGljdD1weXRob24zMy5QeU1vZHVsZV9HZXREaWN0CisgIFB5TW9kdWxlX0dldEZpbGVuYW1lPXB5dGhvbjMzLlB5TW9kdWxlX0dldEZpbGVuYW1lCisgIFB5TW9kdWxlX0dldEZpbGVuYW1lT2JqZWN0PXB5dGhvbjMzLlB5TW9kdWxlX0dldEZpbGVuYW1lT2JqZWN0CisgIFB5TW9kdWxlX0dldE5hbWU9cHl0aG9uMzMuUHlNb2R1bGVfR2V0TmFtZQorICBQeU1vZHVsZV9HZXRTdGF0ZT1weXRob24zMy5QeU1vZHVsZV9HZXRTdGF0ZQorICBQeU1vZHVsZV9OZXc9cHl0aG9uMzMuUHlNb2R1bGVfTmV3CisgIFB5TW9kdWxlX1R5cGU9cHl0aG9uMzMuUHlNb2R1bGVfVHlwZSBEQVRBCisgIFB5TnVsbEltcG9ydGVyX1R5cGU9cHl0aG9uMzMuUHlOdWxsSW1wb3J0ZXJfVHlwZSBEQVRBCisgIFB5TnVtYmVyX0Fic29sdXRlPXB5dGhvbjMzLlB5TnVtYmVyX0Fic29sdXRlCisgIFB5TnVtYmVyX0FkZD1weXRob24zMy5QeU51bWJlcl9BZGQKKyAgUHlOdW1iZXJfQW5kPXB5dGhvbjMzLlB5TnVtYmVyX0FuZAorICBQeU51bWJlcl9Bc1NzaXplX3Q9cHl0aG9uMzMuUHlOdW1iZXJfQXNTc2l6ZV90CisgIFB5TnVtYmVyX0NoZWNrPXB5dGhvbjMzLlB5TnVtYmVyX0NoZWNrCisgIFB5TnVtYmVyX0Rpdm1vZD1weXRob24zMy5QeU51bWJlcl9EaXZtb2QKKyAgUHlOdW1iZXJfRmxvYXQ9cHl0aG9uMzMuUHlOdW1iZXJfRmxvYXQKKyAgUHlOdW1iZXJfRmxvb3JEaXZpZGU9cHl0aG9uMzMuUHlOdW1iZXJfRmxvb3JEaXZpZGUKKyAgUHlOdW1iZXJfSW5QbGFjZUFkZD1weXRob24zMy5QeU51bWJlcl9JblBsYWNlQWRkCisgIFB5TnVtYmVyX0luUGxhY2VBbmQ9cHl0aG9uMzMuUHlOdW1iZXJfSW5QbGFjZUFuZAorICBQeU51bWJlcl9JblBsYWNlRmxvb3JEaXZpZGU9cHl0aG9uMzMuUHlOdW1iZXJfSW5QbGFjZUZsb29yRGl2aWRlCisgIFB5TnVtYmVyX0luUGxhY2VMc2hpZnQ9cHl0aG9uMzMuUHlOdW1iZXJfSW5QbGFjZUxzaGlmdAorICBQeU51bWJlcl9JblBsYWNlTXVsdGlwbHk9cHl0aG9uMzMuUHlOdW1iZXJfSW5QbGFjZU11bHRpcGx5CisgIFB5TnVtYmVyX0luUGxhY2VPcj1weXRob24zMy5QeU51bWJlcl9JblBsYWNlT3IKKyAgUHlOdW1iZXJfSW5QbGFjZVBvd2VyPXB5dGhvbjMzLlB5TnVtYmVyX0luUGxhY2VQb3dlcgorICBQeU51bWJlcl9JblBsYWNlUmVtYWluZGVyPXB5dGhvbjMzLlB5TnVtYmVyX0luUGxhY2VSZW1haW5kZXIKKyAgUHlOdW1iZXJfSW5QbGFjZVJzaGlmdD1weXRob24zMy5QeU51bWJlcl9JblBsYWNlUnNoaWZ0CisgIFB5TnVtYmVyX0luUGxhY2VTdWJ0cmFjdD1weXRob24zMy5QeU51bWJlcl9JblBsYWNlU3VidHJhY3QKKyAgUHlOdW1iZXJfSW5QbGFjZVRydWVEaXZpZGU9cHl0aG9uMzMuUHlOdW1iZXJfSW5QbGFjZVRydWVEaXZpZGUKKyAgUHlOdW1iZXJfSW5QbGFjZVhvcj1weXRob24zMy5QeU51bWJlcl9JblBsYWNlWG9yCisgIFB5TnVtYmVyX0luZGV4PXB5dGhvbjMzLlB5TnVtYmVyX0luZGV4CisgIFB5TnVtYmVyX0ludmVydD1weXRob24zMy5QeU51bWJlcl9JbnZlcnQKKyAgUHlOdW1iZXJfTG9uZz1weXRob24zMy5QeU51bWJlcl9Mb25nCisgIFB5TnVtYmVyX0xzaGlmdD1weXRob24zMy5QeU51bWJlcl9Mc2hpZnQKKyAgUHlOdW1iZXJfTXVsdGlwbHk9cHl0aG9uMzMuUHlOdW1iZXJfTXVsdGlwbHkKKyAgUHlOdW1iZXJfTmVnYXRpdmU9cHl0aG9uMzMuUHlOdW1iZXJfTmVnYXRpdmUKKyAgUHlOdW1iZXJfT3I9cHl0aG9uMzMuUHlOdW1iZXJfT3IKKyAgUHlOdW1iZXJfUG9zaXRpdmU9cHl0aG9uMzMuUHlOdW1iZXJfUG9zaXRpdmUKKyAgUHlOdW1iZXJfUG93ZXI9cHl0aG9uMzMuUHlOdW1iZXJfUG93ZXIKKyAgUHlOdW1iZXJfUmVtYWluZGVyPXB5dGhvbjMzLlB5TnVtYmVyX1JlbWFpbmRlcgorICBQeU51bWJlcl9Sc2hpZnQ9cHl0aG9uMzMuUHlOdW1iZXJfUnNoaWZ0CisgIFB5TnVtYmVyX1N1YnRyYWN0PXB5dGhvbjMzLlB5TnVtYmVyX1N1YnRyYWN0CisgIFB5TnVtYmVyX1RvQmFzZT1weXRob24zMy5QeU51bWJlcl9Ub0Jhc2UKKyAgUHlOdW1iZXJfVHJ1ZURpdmlkZT1weXRob24zMy5QeU51bWJlcl9UcnVlRGl2aWRlCisgIFB5TnVtYmVyX1hvcj1weXRob24zMy5QeU51bWJlcl9Yb3IKKyAgUHlPU19BZnRlckZvcms9cHl0aG9uMzMuUHlPU19BZnRlckZvcmsKKyAgUHlPU19Jbml0SW50ZXJydXB0cz1weXRob24zMy5QeU9TX0luaXRJbnRlcnJ1cHRzCisgIFB5T1NfSW5wdXRIb29rPXB5dGhvbjMzLlB5T1NfSW5wdXRIb29rIERBVEEKKyAgUHlPU19JbnRlcnJ1cHRPY2N1cnJlZD1weXRob24zMy5QeU9TX0ludGVycnVwdE9jY3VycmVkCisgIFB5T1NfUmVhZGxpbmVGdW5jdGlvblBvaW50ZXI9cHl0aG9uMzMuUHlPU19SZWFkbGluZUZ1bmN0aW9uUG9pbnRlciBEQVRBCisgIFB5T1NfZG91YmxlX3RvX3N0cmluZz1weXRob24zMy5QeU9TX2RvdWJsZV90b19zdHJpbmcKKyAgUHlPU19nZXRzaWc9cHl0aG9uMzMuUHlPU19nZXRzaWcKKyAgUHlPU19teXN0cmljbXA9cHl0aG9uMzMuUHlPU19teXN0cmljbXAKKyAgUHlPU19teXN0cm5pY21wPXB5dGhvbjMzLlB5T1NfbXlzdHJuaWNtcAorICBQeU9TX3NldHNpZz1weXRob24zMy5QeU9TX3NldHNpZworICBQeU9TX3NucHJpbnRmPXB5dGhvbjMzLlB5T1Nfc25wcmludGYKKyAgUHlPU19zdHJpbmdfdG9fZG91YmxlPXB5dGhvbjMzLlB5T1Nfc3RyaW5nX3RvX2RvdWJsZQorICBQeU9TX3N0cnRvbD1weXRob24zMy5QeU9TX3N0cnRvbAorICBQeU9TX3N0cnRvdWw9cHl0aG9uMzMuUHlPU19zdHJ0b3VsCisgIFB5T1NfdnNucHJpbnRmPXB5dGhvbjMzLlB5T1NfdnNucHJpbnRmCisgIFB5T2JqZWN0X0FTQ0lJPXB5dGhvbjMzLlB5T2JqZWN0X0FTQ0lJCisgIFB5T2JqZWN0X0FzQ2hhckJ1ZmZlcj1weXRob24zMy5QeU9iamVjdF9Bc0NoYXJCdWZmZXIKKyAgUHlPYmplY3RfQXNGaWxlRGVzY3JpcHRvcj1weXRob24zMy5QeU9iamVjdF9Bc0ZpbGVEZXNjcmlwdG9yCisgIFB5T2JqZWN0X0FzUmVhZEJ1ZmZlcj1weXRob24zMy5QeU9iamVjdF9Bc1JlYWRCdWZmZXIKKyAgUHlPYmplY3RfQXNXcml0ZUJ1ZmZlcj1weXRob24zMy5QeU9iamVjdF9Bc1dyaXRlQnVmZmVyCisgIFB5T2JqZWN0X0J5dGVzPXB5dGhvbjMzLlB5T2JqZWN0X0J5dGVzCisgIFB5T2JqZWN0X0NhbGw9cHl0aG9uMzMuUHlPYmplY3RfQ2FsbAorICBQeU9iamVjdF9DYWxsRnVuY3Rpb249cHl0aG9uMzMuUHlPYmplY3RfQ2FsbEZ1bmN0aW9uCisgIFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3M9cHl0aG9uMzMuUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncworICBQeU9iamVjdF9DYWxsTWV0aG9kPXB5dGhvbjMzLlB5T2JqZWN0X0NhbGxNZXRob2QKKyAgUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3M9cHl0aG9uMzMuUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3MKKyAgUHlPYmplY3RfQ2FsbE9iamVjdD1weXRob24zMy5QeU9iamVjdF9DYWxsT2JqZWN0CisgIFB5T2JqZWN0X0NoZWNrUmVhZEJ1ZmZlcj1weXRob24zMy5QeU9iamVjdF9DaGVja1JlYWRCdWZmZXIKKyAgUHlPYmplY3RfQ2xlYXJXZWFrUmVmcz1weXRob24zMy5QeU9iamVjdF9DbGVhcldlYWtSZWZzCisgIFB5T2JqZWN0X0RlbEl0ZW09cHl0aG9uMzMuUHlPYmplY3RfRGVsSXRlbQorICBQeU9iamVjdF9EZWxJdGVtU3RyaW5nPXB5dGhvbjMzLlB5T2JqZWN0X0RlbEl0ZW1TdHJpbmcKKyAgUHlPYmplY3RfRGlyPXB5dGhvbjMzLlB5T2JqZWN0X0RpcgorICBQeU9iamVjdF9Gb3JtYXQ9cHl0aG9uMzMuUHlPYmplY3RfRm9ybWF0CisgIFB5T2JqZWN0X0ZyZWU9cHl0aG9uMzMuUHlPYmplY3RfRnJlZQorICBQeU9iamVjdF9HQ19EZWw9cHl0aG9uMzMuUHlPYmplY3RfR0NfRGVsCisgIFB5T2JqZWN0X0dDX1RyYWNrPXB5dGhvbjMzLlB5T2JqZWN0X0dDX1RyYWNrCisgIFB5T2JqZWN0X0dDX1VuVHJhY2s9cHl0aG9uMzMuUHlPYmplY3RfR0NfVW5UcmFjaworICBQeU9iamVjdF9HZW5lcmljR2V0QXR0cj1weXRob24zMy5QeU9iamVjdF9HZW5lcmljR2V0QXR0cgorICBQeU9iamVjdF9HZW5lcmljU2V0QXR0cj1weXRob24zMy5QeU9iamVjdF9HZW5lcmljU2V0QXR0cgorICBQeU9iamVjdF9HZXRBdHRyPXB5dGhvbjMzLlB5T2JqZWN0X0dldEF0dHIKKyAgUHlPYmplY3RfR2V0QXR0clN0cmluZz1weXRob24zMy5QeU9iamVjdF9HZXRBdHRyU3RyaW5nCisgIFB5T2JqZWN0X0dldEl0ZW09cHl0aG9uMzMuUHlPYmplY3RfR2V0SXRlbQorICBQeU9iamVjdF9HZXRJdGVyPXB5dGhvbjMzLlB5T2JqZWN0X0dldEl0ZXIKKyAgUHlPYmplY3RfSGFzQXR0cj1weXRob24zMy5QeU9iamVjdF9IYXNBdHRyCisgIFB5T2JqZWN0X0hhc0F0dHJTdHJpbmc9cHl0aG9uMzMuUHlPYmplY3RfSGFzQXR0clN0cmluZworICBQeU9iamVjdF9IYXNoPXB5dGhvbjMzLlB5T2JqZWN0X0hhc2gKKyAgUHlPYmplY3RfSGFzaE5vdEltcGxlbWVudGVkPXB5dGhvbjMzLlB5T2JqZWN0X0hhc2hOb3RJbXBsZW1lbnRlZAorICBQeU9iamVjdF9Jbml0PXB5dGhvbjMzLlB5T2JqZWN0X0luaXQKKyAgUHlPYmplY3RfSW5pdFZhcj1weXRob24zMy5QeU9iamVjdF9Jbml0VmFyCisgIFB5T2JqZWN0X0lzSW5zdGFuY2U9cHl0aG9uMzMuUHlPYmplY3RfSXNJbnN0YW5jZQorICBQeU9iamVjdF9Jc1N1YmNsYXNzPXB5dGhvbjMzLlB5T2JqZWN0X0lzU3ViY2xhc3MKKyAgUHlPYmplY3RfSXNUcnVlPXB5dGhvbjMzLlB5T2JqZWN0X0lzVHJ1ZQorICBQeU9iamVjdF9MZW5ndGg9cHl0aG9uMzMuUHlPYmplY3RfTGVuZ3RoCisgIFB5T2JqZWN0X01hbGxvYz1weXRob24zMy5QeU9iamVjdF9NYWxsb2MKKyAgUHlPYmplY3RfTm90PXB5dGhvbjMzLlB5T2JqZWN0X05vdAorICBQeU9iamVjdF9SZWFsbG9jPXB5dGhvbjMzLlB5T2JqZWN0X1JlYWxsb2MKKyAgUHlPYmplY3RfUmVwcj1weXRob24zMy5QeU9iamVjdF9SZXByCisgIFB5T2JqZWN0X1JpY2hDb21wYXJlPXB5dGhvbjMzLlB5T2JqZWN0X1JpY2hDb21wYXJlCisgIFB5T2JqZWN0X1JpY2hDb21wYXJlQm9vbD1weXRob24zMy5QeU9iamVjdF9SaWNoQ29tcGFyZUJvb2wKKyAgUHlPYmplY3RfU2VsZkl0ZXI9cHl0aG9uMzMuUHlPYmplY3RfU2VsZkl0ZXIKKyAgUHlPYmplY3RfU2V0QXR0cj1weXRob24zMy5QeU9iamVjdF9TZXRBdHRyCisgIFB5T2JqZWN0X1NldEF0dHJTdHJpbmc9cHl0aG9uMzMuUHlPYmplY3RfU2V0QXR0clN0cmluZworICBQeU9iamVjdF9TZXRJdGVtPXB5dGhvbjMzLlB5T2JqZWN0X1NldEl0ZW0KKyAgUHlPYmplY3RfU2l6ZT1weXRob24zMy5QeU9iamVjdF9TaXplCisgIFB5T2JqZWN0X1N0cj1weXRob24zMy5QeU9iamVjdF9TdHIKKyAgUHlPYmplY3RfVHlwZT1weXRob24zMy5QeU9iamVjdF9UeXBlIERBVEEKKyAgUHlQYXJzZXJfU2ltcGxlUGFyc2VGaWxlRmxhZ3M9cHl0aG9uMzMuUHlQYXJzZXJfU2ltcGxlUGFyc2VGaWxlRmxhZ3MKKyAgUHlQYXJzZXJfU2ltcGxlUGFyc2VTdHJpbmdGbGFncz1weXRob24zMy5QeVBhcnNlcl9TaW1wbGVQYXJzZVN0cmluZ0ZsYWdzCisgIFB5UHJvcGVydHlfVHlwZT1weXRob24zMy5QeVByb3BlcnR5X1R5cGUgREFUQQorICBQeVJhbmdlSXRlcl9UeXBlPXB5dGhvbjMzLlB5UmFuZ2VJdGVyX1R5cGUgREFUQQorICBQeVJhbmdlX1R5cGU9cHl0aG9uMzMuUHlSYW5nZV9UeXBlIERBVEEKKyAgUHlSZXZlcnNlZF9UeXBlPXB5dGhvbjMzLlB5UmV2ZXJzZWRfVHlwZSBEQVRBCisgIFB5U2VxSXRlcl9OZXc9cHl0aG9uMzMuUHlTZXFJdGVyX05ldworICBQeVNlcUl0ZXJfVHlwZT1weXRob24zMy5QeVNlcUl0ZXJfVHlwZSBEQVRBCisgIFB5U2VxdWVuY2VfQ2hlY2s9cHl0aG9uMzMuUHlTZXF1ZW5jZV9DaGVjaworICBQeVNlcXVlbmNlX0NvbmNhdD1weXRob24zMy5QeVNlcXVlbmNlX0NvbmNhdAorICBQeVNlcXVlbmNlX0NvbnRhaW5zPXB5dGhvbjMzLlB5U2VxdWVuY2VfQ29udGFpbnMKKyAgUHlTZXF1ZW5jZV9Db3VudD1weXRob24zMy5QeVNlcXVlbmNlX0NvdW50CisgIFB5U2VxdWVuY2VfRGVsSXRlbT1weXRob24zMy5QeVNlcXVlbmNlX0RlbEl0ZW0KKyAgUHlTZXF1ZW5jZV9EZWxTbGljZT1weXRob24zMy5QeVNlcXVlbmNlX0RlbFNsaWNlCisgIFB5U2VxdWVuY2VfRmFzdD1weXRob24zMy5QeVNlcXVlbmNlX0Zhc3QKKyAgUHlTZXF1ZW5jZV9HZXRJdGVtPXB5dGhvbjMzLlB5U2VxdWVuY2VfR2V0SXRlbQorICBQeVNlcXVlbmNlX0dldFNsaWNlPXB5dGhvbjMzLlB5U2VxdWVuY2VfR2V0U2xpY2UKKyAgUHlTZXF1ZW5jZV9Jbj1weXRob24zMy5QeVNlcXVlbmNlX0luCisgIFB5U2VxdWVuY2VfSW5QbGFjZUNvbmNhdD1weXRob24zMy5QeVNlcXVlbmNlX0luUGxhY2VDb25jYXQKKyAgUHlTZXF1ZW5jZV9JblBsYWNlUmVwZWF0PXB5dGhvbjMzLlB5U2VxdWVuY2VfSW5QbGFjZVJlcGVhdAorICBQeVNlcXVlbmNlX0luZGV4PXB5dGhvbjMzLlB5U2VxdWVuY2VfSW5kZXgKKyAgUHlTZXF1ZW5jZV9MZW5ndGg9cHl0aG9uMzMuUHlTZXF1ZW5jZV9MZW5ndGgKKyAgUHlTZXF1ZW5jZV9MaXN0PXB5dGhvbjMzLlB5U2VxdWVuY2VfTGlzdAorICBQeVNlcXVlbmNlX1JlcGVhdD1weXRob24zMy5QeVNlcXVlbmNlX1JlcGVhdAorICBQeVNlcXVlbmNlX1NldEl0ZW09cHl0aG9uMzMuUHlTZXF1ZW5jZV9TZXRJdGVtCisgIFB5U2VxdWVuY2VfU2V0U2xpY2U9cHl0aG9uMzMuUHlTZXF1ZW5jZV9TZXRTbGljZQorICBQeVNlcXVlbmNlX1NpemU9cHl0aG9uMzMuUHlTZXF1ZW5jZV9TaXplCisgIFB5U2VxdWVuY2VfVHVwbGU9cHl0aG9uMzMuUHlTZXF1ZW5jZV9UdXBsZQorICBQeVNldEl0ZXJfVHlwZT1weXRob24zMy5QeVNldEl0ZXJfVHlwZSBEQVRBCisgIFB5U2V0X0FkZD1weXRob24zMy5QeVNldF9BZGQKKyAgUHlTZXRfQ2xlYXI9cHl0aG9uMzMuUHlTZXRfQ2xlYXIKKyAgUHlTZXRfQ29udGFpbnM9cHl0aG9uMzMuUHlTZXRfQ29udGFpbnMKKyAgUHlTZXRfRGlzY2FyZD1weXRob24zMy5QeVNldF9EaXNjYXJkCisgIFB5U2V0X05ldz1weXRob24zMy5QeVNldF9OZXcKKyAgUHlTZXRfUG9wPXB5dGhvbjMzLlB5U2V0X1BvcAorICBQeVNldF9TaXplPXB5dGhvbjMzLlB5U2V0X1NpemUKKyAgUHlTZXRfVHlwZT1weXRob24zMy5QeVNldF9UeXBlIERBVEEKKyAgUHlTbGljZV9HZXRJbmRpY2VzPXB5dGhvbjMzLlB5U2xpY2VfR2V0SW5kaWNlcworICBQeVNsaWNlX0dldEluZGljZXNFeD1weXRob24zMy5QeVNsaWNlX0dldEluZGljZXNFeAorICBQeVNsaWNlX05ldz1weXRob24zMy5QeVNsaWNlX05ldworICBQeVNsaWNlX1R5cGU9cHl0aG9uMzMuUHlTbGljZV9UeXBlIERBVEEKKyAgUHlTb3J0V3JhcHBlcl9UeXBlPXB5dGhvbjMzLlB5U29ydFdyYXBwZXJfVHlwZSBEQVRBCisgIFB5U3RhdGVfRmluZE1vZHVsZT1weXRob24zMy5QeVN0YXRlX0ZpbmRNb2R1bGUKKyAgUHlTdHJ1Y3RTZXF1ZW5jZV9HZXRJdGVtPXB5dGhvbjMzLlB5U3RydWN0U2VxdWVuY2VfR2V0SXRlbQorICBQeVN0cnVjdFNlcXVlbmNlX05ldz1weXRob24zMy5QeVN0cnVjdFNlcXVlbmNlX05ldworICBQeVN0cnVjdFNlcXVlbmNlX05ld1R5cGU9cHl0aG9uMzMuUHlTdHJ1Y3RTZXF1ZW5jZV9OZXdUeXBlCisgIFB5U3RydWN0U2VxdWVuY2VfU2V0SXRlbT1weXRob24zMy5QeVN0cnVjdFNlcXVlbmNlX1NldEl0ZW0KKyAgUHlTdXBlcl9UeXBlPXB5dGhvbjMzLlB5U3VwZXJfVHlwZSBEQVRBCisgIFB5U3lzX0FkZFdhcm5PcHRpb249cHl0aG9uMzMuUHlTeXNfQWRkV2Fybk9wdGlvbgorICBQeVN5c19BZGRXYXJuT3B0aW9uVW5pY29kZT1weXRob24zMy5QeVN5c19BZGRXYXJuT3B0aW9uVW5pY29kZQorICBQeVN5c19Gb3JtYXRTdGRlcnI9cHl0aG9uMzMuUHlTeXNfRm9ybWF0U3RkZXJyCisgIFB5U3lzX0Zvcm1hdFN0ZG91dD1weXRob24zMy5QeVN5c19Gb3JtYXRTdGRvdXQKKyAgUHlTeXNfR2V0T2JqZWN0PXB5dGhvbjMzLlB5U3lzX0dldE9iamVjdAorICBQeVN5c19IYXNXYXJuT3B0aW9ucz1weXRob24zMy5QeVN5c19IYXNXYXJuT3B0aW9ucworICBQeVN5c19SZXNldFdhcm5PcHRpb25zPXB5dGhvbjMzLlB5U3lzX1Jlc2V0V2Fybk9wdGlvbnMKKyAgUHlTeXNfU2V0QXJndj1weXRob24zMy5QeVN5c19TZXRBcmd2CisgIFB5U3lzX1NldEFyZ3ZFeD1weXRob24zMy5QeVN5c19TZXRBcmd2RXgKKyAgUHlTeXNfU2V0T2JqZWN0PXB5dGhvbjMzLlB5U3lzX1NldE9iamVjdAorICBQeVN5c19TZXRQYXRoPXB5dGhvbjMzLlB5U3lzX1NldFBhdGgKKyAgUHlTeXNfV3JpdGVTdGRlcnI9cHl0aG9uMzMuUHlTeXNfV3JpdGVTdGRlcnIKKyAgUHlTeXNfV3JpdGVTdGRvdXQ9cHl0aG9uMzMuUHlTeXNfV3JpdGVTdGRvdXQKKyAgUHlUaHJlYWRTdGF0ZV9DbGVhcj1weXRob24zMy5QeVRocmVhZFN0YXRlX0NsZWFyCisgIFB5VGhyZWFkU3RhdGVfRGVsZXRlPXB5dGhvbjMzLlB5VGhyZWFkU3RhdGVfRGVsZXRlCisgIFB5VGhyZWFkU3RhdGVfRGVsZXRlQ3VycmVudD1weXRob24zMy5QeVRocmVhZFN0YXRlX0RlbGV0ZUN1cnJlbnQKKyAgUHlUaHJlYWRTdGF0ZV9HZXQ9cHl0aG9uMzMuUHlUaHJlYWRTdGF0ZV9HZXQKKyAgUHlUaHJlYWRTdGF0ZV9HZXREaWN0PXB5dGhvbjMzLlB5VGhyZWFkU3RhdGVfR2V0RGljdAorICBQeVRocmVhZFN0YXRlX05ldz1weXRob24zMy5QeVRocmVhZFN0YXRlX05ldworICBQeVRocmVhZFN0YXRlX1NldEFzeW5jRXhjPXB5dGhvbjMzLlB5VGhyZWFkU3RhdGVfU2V0QXN5bmNFeGMKKyAgUHlUaHJlYWRTdGF0ZV9Td2FwPXB5dGhvbjMzLlB5VGhyZWFkU3RhdGVfU3dhcAorICBQeVRyYWNlQmFja19IZXJlPXB5dGhvbjMzLlB5VHJhY2VCYWNrX0hlcmUKKyAgUHlUcmFjZUJhY2tfUHJpbnQ9cHl0aG9uMzMuUHlUcmFjZUJhY2tfUHJpbnQKKyAgUHlUcmFjZUJhY2tfVHlwZT1weXRob24zMy5QeVRyYWNlQmFja19UeXBlIERBVEEKKyAgUHlUdXBsZUl0ZXJfVHlwZT1weXRob24zMy5QeVR1cGxlSXRlcl9UeXBlIERBVEEKKyAgUHlUdXBsZV9DbGVhckZyZWVMaXN0PXB5dGhvbjMzLlB5VHVwbGVfQ2xlYXJGcmVlTGlzdAorICBQeVR1cGxlX0dldEl0ZW09cHl0aG9uMzMuUHlUdXBsZV9HZXRJdGVtCisgIFB5VHVwbGVfR2V0U2xpY2U9cHl0aG9uMzMuUHlUdXBsZV9HZXRTbGljZQorICBQeVR1cGxlX05ldz1weXRob24zMy5QeVR1cGxlX05ldworICBQeVR1cGxlX1BhY2s9cHl0aG9uMzMuUHlUdXBsZV9QYWNrCisgIFB5VHVwbGVfU2V0SXRlbT1weXRob24zMy5QeVR1cGxlX1NldEl0ZW0KKyAgUHlUdXBsZV9TaXplPXB5dGhvbjMzLlB5VHVwbGVfU2l6ZQorICBQeVR1cGxlX1R5cGU9cHl0aG9uMzMuUHlUdXBsZV9UeXBlIERBVEEKKyAgUHlUeXBlX0NsZWFyQ2FjaGU9cHl0aG9uMzMuUHlUeXBlX0NsZWFyQ2FjaGUKKyAgUHlUeXBlX0Zyb21TcGVjPXB5dGhvbjMzLlB5VHlwZV9Gcm9tU3BlYworICBQeVR5cGVfR2VuZXJpY0FsbG9jPXB5dGhvbjMzLlB5VHlwZV9HZW5lcmljQWxsb2MKKyAgUHlUeXBlX0dlbmVyaWNOZXc9cHl0aG9uMzMuUHlUeXBlX0dlbmVyaWNOZXcKKyAgUHlUeXBlX0dldEZsYWdzPXB5dGhvbjMzLlB5VHlwZV9HZXRGbGFncworICBQeVR5cGVfSXNTdWJ0eXBlPXB5dGhvbjMzLlB5VHlwZV9Jc1N1YnR5cGUKKyAgUHlUeXBlX01vZGlmaWVkPXB5dGhvbjMzLlB5VHlwZV9Nb2RpZmllZAorICBQeVR5cGVfUmVhZHk9cHl0aG9uMzMuUHlUeXBlX1JlYWR5CisgIFB5VHlwZV9UeXBlPXB5dGhvbjMzLlB5VHlwZV9UeXBlIERBVEEKKyAgUHlVbmljb2RlRGVjb2RlRXJyb3JfQ3JlYXRlPXB5dGhvbjMzLlB5VW5pY29kZURlY29kZUVycm9yX0NyZWF0ZQorICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRFbmNvZGluZz1weXRob24zMy5QeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRFbmNvZGluZworICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRFbmQ9cHl0aG9uMzMuUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0RW5kCisgIFB5VW5pY29kZURlY29kZUVycm9yX0dldE9iamVjdD1weXRob24zMy5QeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRPYmplY3QKKyAgUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0UmVhc29uPXB5dGhvbjMzLlB5VW5pY29kZURlY29kZUVycm9yX0dldFJlYXNvbgorICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRTdGFydD1weXRob24zMy5QeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRTdGFydAorICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9TZXRFbmQ9cHl0aG9uMzMuUHlVbmljb2RlRGVjb2RlRXJyb3JfU2V0RW5kCisgIFB5VW5pY29kZURlY29kZUVycm9yX1NldFJlYXNvbj1weXRob24zMy5QeVVuaWNvZGVEZWNvZGVFcnJvcl9TZXRSZWFzb24KKyAgUHlVbmljb2RlRGVjb2RlRXJyb3JfU2V0U3RhcnQ9cHl0aG9uMzMuUHlVbmljb2RlRGVjb2RlRXJyb3JfU2V0U3RhcnQKKyAgUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5jb2Rpbmc9cHl0aG9uMzMuUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5jb2RpbmcKKyAgUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5kPXB5dGhvbjMzLlB5VW5pY29kZUVuY29kZUVycm9yX0dldEVuZAorICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRPYmplY3Q9cHl0aG9uMzMuUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0T2JqZWN0CisgIFB5VW5pY29kZUVuY29kZUVycm9yX0dldFJlYXNvbj1weXRob24zMy5QeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRSZWFzb24KKyAgUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0U3RhcnQ9cHl0aG9uMzMuUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0U3RhcnQKKyAgUHlVbmljb2RlRW5jb2RlRXJyb3JfU2V0RW5kPXB5dGhvbjMzLlB5VW5pY29kZUVuY29kZUVycm9yX1NldEVuZAorICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9TZXRSZWFzb249cHl0aG9uMzMuUHlVbmljb2RlRW5jb2RlRXJyb3JfU2V0UmVhc29uCisgIFB5VW5pY29kZUVuY29kZUVycm9yX1NldFN0YXJ0PXB5dGhvbjMzLlB5VW5pY29kZUVuY29kZUVycm9yX1NldFN0YXJ0CisgIFB5VW5pY29kZUl0ZXJfVHlwZT1weXRob24zMy5QeVVuaWNvZGVJdGVyX1R5cGUgREFUQQorICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRFbmQ9cHl0aG9uMzMuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0RW5kCisgIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldE9iamVjdD1weXRob24zMy5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRPYmplY3QKKyAgUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0UmVhc29uPXB5dGhvbjMzLlB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldFJlYXNvbgorICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRTdGFydD1weXRob24zMy5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRTdGFydAorICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9TZXRFbmQ9cHl0aG9uMzMuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfU2V0RW5kCisgIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX1NldFJlYXNvbj1weXRob24zMy5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9TZXRSZWFzb24KKyAgUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfU2V0U3RhcnQ9cHl0aG9uMzMuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfU2V0U3RhcnQKKyAgUHlVbmljb2RlX0FwcGVuZD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FwcGVuZAorICBQeVVuaWNvZGVfQXBwZW5kQW5kRGVsPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXBwZW5kQW5kRGVsCisgIFB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXNBU0NJSVN0cmluZworICBQeVVuaWNvZGVfQXNDaGFybWFwU3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXNDaGFybWFwU3RyaW5nCisgIFB5VW5pY29kZV9Bc0RlY29kZWRPYmplY3Q9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Bc0RlY29kZWRPYmplY3QKKyAgUHlVbmljb2RlX0FzRGVjb2RlZFVuaWNvZGU9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Bc0RlY29kZWRVbmljb2RlCisgIFB5VW5pY29kZV9Bc0VuY29kZWRPYmplY3Q9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Bc0VuY29kZWRPYmplY3QKKyAgUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzRW5jb2RlZFN0cmluZworICBQeVVuaWNvZGVfQXNFbmNvZGVkVW5pY29kZT1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzRW5jb2RlZFVuaWNvZGUKKyAgUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXNMYXRpbjFTdHJpbmcKKyAgUHlVbmljb2RlX0FzUmF3VW5pY29kZUVzY2FwZVN0cmluZz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzUmF3VW5pY29kZUVzY2FwZVN0cmluZworICBQeVVuaWNvZGVfQXNVVEYxNlN0cmluZz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzVVRGMTZTdHJpbmcKKyAgUHlVbmljb2RlX0FzVVRGMzJTdHJpbmc9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Bc1VURjMyU3RyaW5nCisgIFB5VW5pY29kZV9Bc1VURjhTdHJpbmc9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Bc1VURjhTdHJpbmcKKyAgUHlVbmljb2RlX0FzVW5pY29kZUVzY2FwZVN0cmluZz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzVW5pY29kZUVzY2FwZVN0cmluZworICBQeVVuaWNvZGVfQXNXaWRlQ2hhcj1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzV2lkZUNoYXIKKyAgUHlVbmljb2RlX0NsZWFyRnJlZWxpc3Q9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9DbGVhckZyZWVsaXN0CisgIFB5VW5pY29kZV9Db21wYXJlPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQ29tcGFyZQorICBQeVVuaWNvZGVfQ29uY2F0PXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQ29uY2F0CisgIFB5VW5pY29kZV9Db250YWlucz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0NvbnRhaW5zCisgIFB5VW5pY29kZV9Db3VudD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0NvdW50CisgIFB5VW5pY29kZV9EZWNvZGU9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGUKKyAgUHlVbmljb2RlX0RlY29kZUFTQ0lJPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRGVjb2RlQVNDSUkKKyAgUHlVbmljb2RlX0RlY29kZUNoYXJtYXA9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVDaGFybWFwCisgIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQ9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVGU0RlZmF1bHQKKyAgUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemU9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVGU0RlZmF1bHRBbmRTaXplCisgIFB5VW5pY29kZV9EZWNvZGVMYXRpbjE9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVMYXRpbjEKKyAgUHlVbmljb2RlX0RlY29kZVJhd1VuaWNvZGVFc2NhcGU9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVSYXdVbmljb2RlRXNjYXBlCisgIFB5VW5pY29kZV9EZWNvZGVVVEYxNj1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZVVURjE2CisgIFB5VW5pY29kZV9EZWNvZGVVVEYxNlN0YXRlZnVsPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRGVjb2RlVVRGMTZTdGF0ZWZ1bAorICBQeVVuaWNvZGVfRGVjb2RlVVRGMzI9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVVVEYzMgorICBQeVVuaWNvZGVfRGVjb2RlVVRGMzJTdGF0ZWZ1bD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZVVURjMyU3RhdGVmdWwKKyAgUHlVbmljb2RlX0RlY29kZVVURjg9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVVVEY4CisgIFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWw9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVVVEY4U3RhdGVmdWwKKyAgUHlVbmljb2RlX0RlY29kZVVuaWNvZGVFc2NhcGU9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVVbmljb2RlRXNjYXBlCisgIFB5VW5pY29kZV9GU0NvbnZlcnRlcj1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0ZTQ29udmVydGVyCisgIFB5VW5pY29kZV9GU0RlY29kZXI9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9GU0RlY29kZXIKKyAgUHlVbmljb2RlX0ZpbmQ9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9GaW5kCisgIFB5VW5pY29kZV9Gb3JtYXQ9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Gb3JtYXQKKyAgUHlVbmljb2RlX0Zyb21FbmNvZGVkT2JqZWN0PXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRnJvbUVuY29kZWRPYmplY3QKKyAgUHlVbmljb2RlX0Zyb21Gb3JtYXQ9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Gcm9tRm9ybWF0CisgIFB5VW5pY29kZV9Gcm9tRm9ybWF0Vj1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0Zyb21Gb3JtYXRWCisgIFB5VW5pY29kZV9Gcm9tT2JqZWN0PXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRnJvbU9iamVjdAorICBQeVVuaWNvZGVfRnJvbU9yZGluYWw9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Gcm9tT3JkaW5hbAorICBQeVVuaWNvZGVfRnJvbVN0cmluZz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0Zyb21TdHJpbmcKKyAgUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRnJvbVN0cmluZ0FuZFNpemUKKyAgUHlVbmljb2RlX0Zyb21XaWRlQ2hhcj1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0Zyb21XaWRlQ2hhcgorICBQeVVuaWNvZGVfR2V0RGVmYXVsdEVuY29kaW5nPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfR2V0RGVmYXVsdEVuY29kaW5nCisgIFB5VW5pY29kZV9HZXRTaXplPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfR2V0U2l6ZQorICBQeVVuaWNvZGVfSXNJZGVudGlmaWVyPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfSXNJZGVudGlmaWVyCisgIFB5VW5pY29kZV9Kb2luPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfSm9pbgorICBQeVVuaWNvZGVfUGFydGl0aW9uPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfUGFydGl0aW9uCisgIFB5VW5pY29kZV9SUGFydGl0aW9uPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfUlBhcnRpdGlvbgorICBQeVVuaWNvZGVfUlNwbGl0PXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfUlNwbGl0CisgIFB5VW5pY29kZV9SZXBsYWNlPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfUmVwbGFjZQorICBQeVVuaWNvZGVfUmVzaXplPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfUmVzaXplCisgIFB5VW5pY29kZV9SaWNoQ29tcGFyZT1weXRob24zMy5QeVVuaWNvZGVVQ1MyX1JpY2hDb21wYXJlCisgIFB5VW5pY29kZV9TZXREZWZhdWx0RW5jb2Rpbmc9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9TZXREZWZhdWx0RW5jb2RpbmcKKyAgUHlVbmljb2RlX1NwbGl0PXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfU3BsaXQKKyAgUHlVbmljb2RlX1NwbGl0bGluZXM9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9TcGxpdGxpbmVzCisgIFB5VW5pY29kZV9UYWlsbWF0Y2g9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9UYWlsbWF0Y2gKKyAgUHlVbmljb2RlX1RyYW5zbGF0ZT1weXRob24zMy5QeVVuaWNvZGVVQ1MyX1RyYW5zbGF0ZQorICBQeVVuaWNvZGVfQnVpbGRFbmNvZGluZ01hcD1weXRob24zMy5QeVVuaWNvZGVfQnVpbGRFbmNvZGluZ01hcAorICBQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZz1weXRob24zMy5QeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZworICBQeVVuaWNvZGVfRGVjb2RlVVRGNz1weXRob24zMy5QeVVuaWNvZGVfRGVjb2RlVVRGNworICBQeVVuaWNvZGVfRGVjb2RlVVRGN1N0YXRlZnVsPXB5dGhvbjMzLlB5VW5pY29kZV9EZWNvZGVVVEY3U3RhdGVmdWwKKyAgUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdD1weXRob24zMy5QeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0CisgIFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nCisgIFB5VW5pY29kZV9JbnRlcm5JbW1vcnRhbD1weXRob24zMy5QeVVuaWNvZGVfSW50ZXJuSW1tb3J0YWwKKyAgUHlVbmljb2RlX0ludGVybkluUGxhY2U9cHl0aG9uMzMuUHlVbmljb2RlX0ludGVybkluUGxhY2UKKyAgUHlVbmljb2RlX1R5cGU9cHl0aG9uMzMuUHlVbmljb2RlX1R5cGUgREFUQQorICBQeVdlYWtyZWZfR2V0T2JqZWN0PXB5dGhvbjMzLlB5V2Vha3JlZl9HZXRPYmplY3QgREFUQQorICBQeVdlYWtyZWZfTmV3UHJveHk9cHl0aG9uMzMuUHlXZWFrcmVmX05ld1Byb3h5CisgIFB5V2Vha3JlZl9OZXdSZWY9cHl0aG9uMzMuUHlXZWFrcmVmX05ld1JlZgorICBQeVdyYXBwZXJEZXNjcl9UeXBlPXB5dGhvbjMzLlB5V3JhcHBlckRlc2NyX1R5cGUgREFUQQorICBQeVdyYXBwZXJfTmV3PXB5dGhvbjMzLlB5V3JhcHBlcl9OZXcKKyAgUHlaaXBfVHlwZT1weXRob24zMy5QeVppcF9UeXBlIERBVEEKKyAgUHlfQWRkUGVuZGluZ0NhbGw9cHl0aG9uMzMuUHlfQWRkUGVuZGluZ0NhbGwKKyAgUHlfQXRFeGl0PXB5dGhvbjMzLlB5X0F0RXhpdAorICBQeV9CdWlsZFZhbHVlPXB5dGhvbjMzLlB5X0J1aWxkVmFsdWUKKyAgUHlfQ29tcGlsZVN0cmluZz1weXRob24zMy5QeV9Db21waWxlU3RyaW5nCisgIFB5X0RlY1JlZj1weXRob24zMy5QeV9EZWNSZWYKKyAgUHlfRW5kSW50ZXJwcmV0ZXI9cHl0aG9uMzMuUHlfRW5kSW50ZXJwcmV0ZXIKKyAgUHlfRXhpdD1weXRob24zMy5QeV9FeGl0CisgIFB5X0ZhdGFsRXJyb3I9cHl0aG9uMzMuUHlfRmF0YWxFcnJvcgorICBQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nPXB5dGhvbjMzLlB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgREFUQQorICBQeV9GaW5hbGl6ZT1weXRob24zMy5QeV9GaW5hbGl6ZQorICBQeV9HZXRCdWlsZEluZm89cHl0aG9uMzMuUHlfR2V0QnVpbGRJbmZvCisgIFB5X0dldENvbXBpbGVyPXB5dGhvbjMzLlB5X0dldENvbXBpbGVyCisgIFB5X0dldENvcHlyaWdodD1weXRob24zMy5QeV9HZXRDb3B5cmlnaHQKKyAgUHlfR2V0RXhlY1ByZWZpeD1weXRob24zMy5QeV9HZXRFeGVjUHJlZml4CisgIFB5X0dldFBhdGg9cHl0aG9uMzMuUHlfR2V0UGF0aAorICBQeV9HZXRQbGF0Zm9ybT1weXRob24zMy5QeV9HZXRQbGF0Zm9ybQorICBQeV9HZXRQcmVmaXg9cHl0aG9uMzMuUHlfR2V0UHJlZml4CisgIFB5X0dldFByb2dyYW1GdWxsUGF0aD1weXRob24zMy5QeV9HZXRQcm9ncmFtRnVsbFBhdGgKKyAgUHlfR2V0UHJvZ3JhbU5hbWU9cHl0aG9uMzMuUHlfR2V0UHJvZ3JhbU5hbWUKKyAgUHlfR2V0UHl0aG9uSG9tZT1weXRob24zMy5QeV9HZXRQeXRob25Ib21lCisgIFB5X0dldFJlY3Vyc2lvbkxpbWl0PXB5dGhvbjMzLlB5X0dldFJlY3Vyc2lvbkxpbWl0CisgIFB5X0dldFZlcnNpb249cHl0aG9uMzMuUHlfR2V0VmVyc2lvbgorICBQeV9IYXNGaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nPXB5dGhvbjMzLlB5X0hhc0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgREFUQQorICBQeV9JbmNSZWY9cHl0aG9uMzMuUHlfSW5jUmVmCisgIFB5X0luaXRpYWxpemU9cHl0aG9uMzMuUHlfSW5pdGlhbGl6ZQorICBQeV9Jbml0aWFsaXplRXg9cHl0aG9uMzMuUHlfSW5pdGlhbGl6ZUV4CisgIFB5X0lzSW5pdGlhbGl6ZWQ9cHl0aG9uMzMuUHlfSXNJbml0aWFsaXplZAorICBQeV9NYWluPXB5dGhvbjMzLlB5X01haW4KKyAgUHlfTWFrZVBlbmRpbmdDYWxscz1weXRob24zMy5QeV9NYWtlUGVuZGluZ0NhbGxzCisgIFB5X05ld0ludGVycHJldGVyPXB5dGhvbjMzLlB5X05ld0ludGVycHJldGVyCisgIFB5X1JlcHJFbnRlcj1weXRob24zMy5QeV9SZXByRW50ZXIKKyAgUHlfUmVwckxlYXZlPXB5dGhvbjMzLlB5X1JlcHJMZWF2ZQorICBQeV9TZXRQcm9ncmFtTmFtZT1weXRob24zMy5QeV9TZXRQcm9ncmFtTmFtZQorICBQeV9TZXRQeXRob25Ib21lPXB5dGhvbjMzLlB5X1NldFB5dGhvbkhvbWUKKyAgUHlfU2V0UmVjdXJzaW9uTGltaXQ9cHl0aG9uMzMuUHlfU2V0UmVjdXJzaW9uTGltaXQKKyAgUHlfU3ltdGFibGVTdHJpbmc9cHl0aG9uMzMuUHlfU3ltdGFibGVTdHJpbmcKKyAgUHlfVmFCdWlsZFZhbHVlPXB5dGhvbjMzLlB5X1ZhQnVpbGRWYWx1ZQorICBfUHlFcnJfQmFkSW50ZXJuYWxDYWxsPXB5dGhvbjMzLl9QeUVycl9CYWRJbnRlcm5hbENhbGwKKyAgX1B5T2JqZWN0X0NhbGxGdW5jdGlvbl9TaXplVD1weXRob24zMy5fUHlPYmplY3RfQ2FsbEZ1bmN0aW9uX1NpemVUCisgIF9QeU9iamVjdF9DYWxsTWV0aG9kX1NpemVUPXB5dGhvbjMzLl9QeU9iamVjdF9DYWxsTWV0aG9kX1NpemVUCisgIF9QeU9iamVjdF9HQ19NYWxsb2M9cHl0aG9uMzMuX1B5T2JqZWN0X0dDX01hbGxvYworICBfUHlPYmplY3RfR0NfTmV3PXB5dGhvbjMzLl9QeU9iamVjdF9HQ19OZXcKKyAgX1B5T2JqZWN0X0dDX05ld1Zhcj1weXRob24zMy5fUHlPYmplY3RfR0NfTmV3VmFyCisgIF9QeU9iamVjdF9HQ19SZXNpemU9cHl0aG9uMzMuX1B5T2JqZWN0X0dDX1Jlc2l6ZQorICBfUHlPYmplY3RfTmV3PXB5dGhvbjMzLl9QeU9iamVjdF9OZXcKKyAgX1B5T2JqZWN0X05ld1Zhcj1weXRob24zMy5fUHlPYmplY3RfTmV3VmFyCisgIF9QeVN0YXRlX0FkZE1vZHVsZT1weXRob24zMy5fUHlTdGF0ZV9BZGRNb2R1bGUKKyAgX1B5VGhyZWFkU3RhdGVfSW5pdD1weXRob24zMy5fUHlUaHJlYWRTdGF0ZV9Jbml0CisgIF9QeVRocmVhZFN0YXRlX1ByZWFsbG9jPXB5dGhvbjMzLl9QeVRocmVhZFN0YXRlX1ByZWFsbG9jCisgIF9QeVRyYXNoX2RlbGV0ZV9sYXRlcj1weXRob24zMy5fUHlUcmFzaF9kZWxldGVfbGF0ZXIgREFUQQorICBfUHlUcmFzaF9kZWxldGVfbmVzdGluZz1weXRob24zMy5fUHlUcmFzaF9kZWxldGVfbmVzdGluZyBEQVRBCisgIF9QeVRyYXNoX2RlcG9zaXRfb2JqZWN0PXB5dGhvbjMzLl9QeVRyYXNoX2RlcG9zaXRfb2JqZWN0CisgIF9QeVRyYXNoX2Rlc3Ryb3lfY2hhaW49cHl0aG9uMzMuX1B5VHJhc2hfZGVzdHJveV9jaGFpbgorICBfUHlXZWFrcmVmX0NhbGxhYmxlUHJveHlUeXBlPXB5dGhvbjMzLl9QeVdlYWtyZWZfQ2FsbGFibGVQcm94eVR5cGUgREFUQQorICBfUHlXZWFrcmVmX1Byb3h5VHlwZT1weXRob24zMy5fUHlXZWFrcmVmX1Byb3h5VHlwZSBEQVRBCisgIF9QeVdlYWtyZWZfUmVmVHlwZT1weXRob24zMy5fUHlXZWFrcmVmX1JlZlR5cGUgREFUQQorICBfUHlfQnVpbGRWYWx1ZV9TaXplVD1weXRob24zMy5fUHlfQnVpbGRWYWx1ZV9TaXplVAorICBfUHlfQ2hlY2tSZWN1cnNpb25MaW1pdD1weXRob24zMy5fUHlfQ2hlY2tSZWN1cnNpb25MaW1pdCBEQVRBCisgIF9QeV9DaGVja1JlY3Vyc2l2ZUNhbGw9cHl0aG9uMzMuX1B5X0NoZWNrUmVjdXJzaXZlQ2FsbAorICBfUHlfRGVhbGxvYz1weXRob24zMy5fUHlfRGVhbGxvYworICBfUHlfRWxsaXBzaXNPYmplY3Q9cHl0aG9uMzMuX1B5X0VsbGlwc2lzT2JqZWN0IERBVEEKKyAgX1B5X0ZhbHNlU3RydWN0PXB5dGhvbjMzLl9QeV9GYWxzZVN0cnVjdCBEQVRBCisgIF9QeV9Ob25lU3RydWN0PXB5dGhvbjMzLl9QeV9Ob25lU3RydWN0IERBVEEKKyAgX1B5X05vdEltcGxlbWVudGVkU3RydWN0PXB5dGhvbjMzLl9QeV9Ob3RJbXBsZW1lbnRlZFN0cnVjdCBEQVRBCisgIF9QeV9Td2FwcGVkT3A9cHl0aG9uMzMuX1B5X1N3YXBwZWRPcCBEQVRBCisgIF9QeV9UcnVlU3RydWN0PXB5dGhvbjMzLl9QeV9UcnVlU3RydWN0IERBVEEKKyAgX1B5X1ZhQnVpbGRWYWx1ZV9TaXplVD1weXRob24zMy5fUHlfVmFCdWlsZFZhbHVlX1NpemVUCmRpZmYgLS1naXQgYS9QQy9weXRob24zLm1hayBiL1BDL3B5dGhvbjMubWFrCmluZGV4IDI1NjE2N2YuLmNlNjVmYmEgMTAwNjQ0Ci0tLSBhL1BDL3B5dGhvbjMubWFrCisrKyBiL1BDL3B5dGhvbjMubWFrCkBAIC0xLDEwICsxLDEwIEBACi0kKE91dERpcilweXRob24zMi5kbGw6CXB5dGhvbjMuZGVmICQoT3V0RGlyKXB5dGhvbjMyc3R1Yi5saWIKLQljbCAvTEQgL0ZlJChPdXREaXIpcHl0aG9uMy5kbGwgcHl0aG9uM2RsbC5jIHB5dGhvbjMuZGVmICQoT3V0RGlyKXB5dGhvbjMyc3R1Yi5saWIKKyQoT3V0RGlyKXB5dGhvbjMzLmRsbDoJcHl0aG9uMy5kZWYgJChPdXREaXIpcHl0aG9uMzNzdHViLmxpYgorCWNsIC9MRCAvRmUkKE91dERpcilweXRob24zLmRsbCBweXRob24zZGxsLmMgcHl0aG9uMy5kZWYgJChPdXREaXIpcHl0aG9uMzNzdHViLmxpYgogCi0kKE91dERpcilweXRob24zMnN0dWIubGliOglweXRob24zMnN0dWIuZGVmCi0JbGliIC9kZWY6cHl0aG9uMzJzdHViLmRlZiAvb3V0OiQoT3V0RGlyKXB5dGhvbjMyc3R1Yi5saWIgL01BQ0hJTkU6JChNQUNISU5FKQorJChPdXREaXIpcHl0aG9uMzNzdHViLmxpYjoJcHl0aG9uMzNzdHViLmRlZgorCWxpYiAvZGVmOnB5dGhvbjMzc3R1Yi5kZWYgL291dDokKE91dERpcilweXRob24zM3N0dWIubGliIC9NQUNISU5FOiQoTUFDSElORSkKIAogY2xlYW46Ci0JZGVsICQoT3V0RGlyKXB5dGhvbjMuZGxsICQoT3V0RGlyKXB5dGhvbjMubGliICQoT3V0RGlyKXB5dGhvbjMyc3R1Yi5saWIgJChPdXREaXIpcHl0aG9uMy5leHAgJChPdXREaXIpcHl0aG9uMzJzdHViLmV4cAorCWRlbCAkKE91dERpcilweXRob24zLmRsbCAkKE91dERpcilweXRob24zLmxpYiAkKE91dERpcilweXRob24zM3N0dWIubGliICQoT3V0RGlyKXB5dGhvbjMuZXhwICQoT3V0RGlyKXB5dGhvbjMzc3R1Yi5leHAKIAotcmVidWlsZDogY2xlYW4gJChPdXREaXIpcHl0aG9uMzIuZGxsCityZWJ1aWxkOiBjbGVhbiAkKE91dERpcilweXRob24zMy5kbGwKZGlmZiAtLWdpdCBhL1BDL3B5dGhvbjMyZ2VuLnB5IGIvUEMvcHl0aG9uMzNnZW4ucHkKc2ltaWxhcml0eSBpbmRleCA3NCUKcmVuYW1lIGZyb20gUEMvcHl0aG9uMzJnZW4ucHkKcmVuYW1lIHRvIFBDL3B5dGhvbjMzZ2VuLnB5CmluZGV4IDkxODJkNTQuLmE4NWY0MTcgMTAwNjQ0Ci0tLSBhL1BDL3B5dGhvbjMyZ2VuLnB5CisrKyBiL1BDL3B5dGhvbjMzZ2VuLnB5CkBAIC0xLDkgKzEsOSBAQAotIyBHZW5lcmF0ZSBweXRob24zMnN0dWIuZGVmIG91dCBvZiBweXRob24zLmRlZgorIyBHZW5lcmF0ZSBweXRob24zM3N0dWIuZGVmIG91dCBvZiBweXRob24zLmRlZgogIyBUaGUgcmVndWxhciBpbXBvcnQgbGlicmFyeSBjYW5ub3QgYmUgdXNlZCwKICMgc2luY2UgaXQgZG9lc24ndCBwcm92aWRlIHRoZSByaWdodCBzeW1ib2xzIGZvcgogIyBkYXRhIGZvcndhcmRpbmcKLW91dCA9IG9wZW4oInB5dGhvbjMyc3R1Yi5kZWYiLCAidyIpCi1vdXQud3JpdGUoJ0xJQlJBUlkgInB5dGhvbjMyIlxuJykKK291dCA9IG9wZW4oInB5dGhvbjMzc3R1Yi5kZWYiLCAidyIpCitvdXQud3JpdGUoJ0xJQlJBUlkgInB5dGhvbjMzIlxuJykKIG91dC53cml0ZSgnRVhQT1JUU1xuJykKIAogaW5wID0gb3BlbigicHl0aG9uMy5kZWYiKQpAQCAtMTIsNyArMTIsNyBAQAogYXNzZXJ0IGxpbmUuc3RyaXAoKT09J0VYUE9SVFMnCiAKIGZvciBsaW5lIGluIGlucDoKLSAgICAjIFNZTTE9cHl0aG9uMzIuU1lNMlsgREFUQV0KKyAgICAjIFNZTTE9cHl0aG9uMzMuU1lNMlsgREFUQV0KICAgICBoZWFkLCB0YWlsID0gbGluZS5zcGxpdCgnLicpCiAgICAgaWYgJ0RBVEEnIGluIHRhaWw6CiAgICAgICAgIHN5bWJvbCwgdGFpbCA9IHRhaWwuc3BsaXQoJyAnKQpAQCAtMjIsNCArMjIsMyBAQAogCiBpbnAuY2xvc2UoKQogb3V0LmNsb3NlKCkKLQpkaWZmIC0tZ2l0IGEvUEMvcHl0aG9uMzJzdHViLmRlZiBiL1BDL3B5dGhvbjMzc3R1Yi5kZWYKc2ltaWxhcml0eSBpbmRleCA5OSUKcmVuYW1lIGZyb20gUEMvcHl0aG9uMzJzdHViLmRlZgpyZW5hbWUgdG8gUEMvcHl0aG9uMzNzdHViLmRlZgppbmRleCAwOTQzZWYwLi42ZTRlZDlmIDEwMDY0NAotLS0gYS9QQy9weXRob24zMnN0dWIuZGVmCisrKyBiL1BDL3B5dGhvbjMzc3R1Yi5kZWYKQEAgLTEsNCArMSw0IEBACi1MSUJSQVJZICJweXRob24zMiIKK0xJQlJBUlkgInB5dGhvbjMzIgogRVhQT1JUUwogUHlBcmdfUGFyc2UKIFB5QXJnX1BhcnNlVHVwbGUKZGlmZiAtLWdpdCBhL1BDL3B5dGhvbl9udC5yYyBiL1BDL3B5dGhvbl9udC5yYwppbmRleCA1Mjk1NjEwLi41MDEwYmFhIDEwMDY0NAotLS0gYS9QQy9weXRob25fbnQucmMKKysrIGIvUEMvcHl0aG9uX250LnJjCkBAIC0xMiw3ICsxMiw3IEBACiAjICAgaW5jbHVkZSAicHl0aG9ubnRfcmMuaCIKICNlbmRpZgogCi0vKiBlLmcuLCAyLjFhMgorLyogZS5nLiwgMy4zLjBhMQogICogUFlfVkVSU0lPTiBjb21lcyBmcm9tIHBhdGNoZXZlbC5oCiAgKi8KICNkZWZpbmUgUFlUSE9OX1ZFUlNJT04gUFlfVkVSU0lPTiAiXDAiCmRpZmYgLS1naXQgYS9QQy93aW5yZWcuYyBiL1BDL3dpbnJlZy5jCmluZGV4IDFiYzQ3YjkuLjQ1MWNlZDIgMTAwNjQ0Ci0tLSBhL1BDL3dpbnJlZy5jCisrKyBiL1BDL3dpbnJlZy5jCkBAIC03NjAsMjYgKzc2MCwyNyBAQAogICAgICAgICBjYXNlIFJFR19TWjoKICAgICAgICAgY2FzZSBSRUdfRVhQQU5EX1NaOgogICAgICAgICAgICAgewotICAgICAgICAgICAgaWYgKHZhbHVlID09IFB5X05vbmUpCi0gICAgICAgICAgICAgICAgKnJldERhdGFTaXplID0gMTsKLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHZhbHVlKSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwotICAgICAgICAgICAgICAgICpyZXREYXRhU2l6ZSA9IFB5X1NBRkVfRE9XTkNBU1QoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIgKyBQeVVuaWNvZGVfR0VUX0RBVEFfU0laRSh2YWx1ZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCwgRFdPUkQpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgKnJldERhdGFCdWYgPSAoQllURSAqKVB5TWVtX05FVyhEV09SRCwgKnJldERhdGFTaXplKTsKLSAgICAgICAgICAgIGlmICgqcmV0RGF0YUJ1Zj09TlVMTCl7Ci0gICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gRkFMU0U7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAodmFsdWUgPT0gUHlfTm9uZSkKLSAgICAgICAgICAgICAgICB3Y3NjcHkoKHdjaGFyX3QgKikqcmV0RGF0YUJ1ZiwgTCIiKTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICB3Y3NjcHkoKHdjaGFyX3QgKikqcmV0RGF0YUJ1ZiwKLSAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUodmFsdWUpKTsKLSAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAhPSBQeV9Ob25lKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOworICAgICAgICAgICAgICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh2YWx1ZSkpCisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRkFMU0U7CisgICAgICAgICAgICAgICAgICAgICpyZXREYXRhQnVmID0gKEJZVEUqKVB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nKHZhbHVlLCAmbGVuKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCpyZXREYXRhQnVmID09IE5VTEwpCisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRkFMU0U7CisgICAgICAgICAgICAgICAgICAgICpyZXREYXRhU2l6ZSA9IFB5X1NBRkVfRE9XTkNBU1QoCisgICAgICAgICAgICAgICAgICAgICAgICAobGVuICsgMSkgKiBzaXplb2Yod2NoYXJfdCksCisgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90LCBEV09SRCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAgICAqcmV0RGF0YUJ1ZiA9IChCWVRFICopUHlNZW1fTkVXKHdjaGFyX3QsIDEpOworICAgICAgICAgICAgICAgICAgICBpZiAoKnJldERhdGFCdWYgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAoKHdjaGFyX3QgKikqcmV0RGF0YUJ1ZilbMF0gPSBMJ1wwJzsKKyAgICAgICAgICAgICAgICAgICAgKnJldERhdGFTaXplID0gMSAqIHNpemVvZih3Y2hhcl90KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgIGNhc2UgUkVHX01VTFRJX1NaOgogICAgICAgICAgICAgewpAQCAtNzk2LDEwICs3OTcsMTYgQEAKICAgICAgICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgaTsgaisrKQogICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnQ7CisgICAgICAgICAgICAgICAgICAgIHdjaGFyX3QgKndzdHI7CisgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOworCiAgICAgICAgICAgICAgICAgICAgIHQgPSBQeUxpc3RfR0VUX0lURU0odmFsdWUsIGopOwogICAgICAgICAgICAgICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh0KSkKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKLSAgICAgICAgICAgICAgICAgICAgc2l6ZSArPSBQeV9TQUZFX0RPV05DQVNUKDIgKyBQeVVuaWNvZGVfR0VUX0RBVEFfU0laRSh0KSwKKyAgICAgICAgICAgICAgICAgICAgd3N0ciA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKHQsICZsZW4pOworICAgICAgICAgICAgICAgICAgICBpZiAod3N0ciA9PSBOVUxMKQorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNFOworICAgICAgICAgICAgICAgICAgICBzaXplICs9IFB5X1NBRkVfRE9XTkNBU1QoKGxlbiArIDEpICogc2l6ZW9mKHdjaGFyX3QpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90LCBEV09SRCk7CiAgICAgICAgICAgICAgICAgfQogCkBAIC04MTUsMTAgKzgyMiwxNSBAQAogICAgICAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCBpOyBqKyspCiAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdDsKKyAgICAgICAgICAgICAgICAgICAgd2NoYXJfdCAqd3N0cjsKKyAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CisKICAgICAgICAgICAgICAgICAgICAgdCA9IFB5TGlzdF9HRVRfSVRFTSh2YWx1ZSwgaik7Ci0gICAgICAgICAgICAgICAgICAgIHdjc2NweShQLCBQeVVuaWNvZGVfQVNfVU5JQ09ERSh0KSk7Ci0gICAgICAgICAgICAgICAgICAgIFAgKz0gMSArIHdjc2xlbigKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHQpKTsKKyAgICAgICAgICAgICAgICAgICAgd3N0ciA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKHQsICZsZW4pOworICAgICAgICAgICAgICAgICAgICBpZiAod3N0ciA9PSBOVUxMKQorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNFOworICAgICAgICAgICAgICAgICAgICB3Y3NjcHkoUCwgd3N0cik7CisgICAgICAgICAgICAgICAgICAgIFAgKz0gKGxlbiArIDEpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiBBbmQgZG91Ymx5LXRlcm1pbmF0ZSB0aGUgbGlzdC4uLiAqLwogICAgICAgICAgICAgICAgICpQID0gJ1wwJzsKQEAgLTg4Miw3ICs4OTQsNyBAQAogICAgICAgICAgICAgICAgICAgICByZXREYXRhU2l6ZSAtPSAyOwogICAgICAgICAgICAgICAgIGlmIChyZXREYXRhU2l6ZSA8PSAwKQogICAgICAgICAgICAgICAgICAgICBkYXRhID0gTCIiOwotICAgICAgICAgICAgICAgIG9iRGF0YSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShkYXRhLCByZXREYXRhU2l6ZS8yKTsKKyAgICAgICAgICAgICAgICBvYkRhdGEgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKGRhdGEsIHJldERhdGFTaXplLzIpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogICAgICAgICBjYXNlIFJFR19NVUxUSV9TWjoKQEAgLTkxMyw3ICs5MjUsNyBAQAogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIFB5TGlzdF9TZXRJdGVtKG9iRGF0YSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Gcm9tVW5pY29kZShzdHJbaW5kZXhdLCBsZW4pKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihzdHJbaW5kZXhdLCBsZW4pKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgZnJlZShzdHIpOwogCkBAIC0xMDU0LDcgKzEwNjYsNyBAQAogCiAgICAgLyogT25seSBhdmFpbGFibGUgb24gNjRiaXQgcGxhdGZvcm1zLCBzbyB3ZSBtdXN0IGxvYWQgaXQKICAgICAgICBkeW5hbWljYWxseS4gKi8KLSAgICBoTW9kID0gR2V0TW9kdWxlSGFuZGxlKCJhZHZhcGkzMi5kbGwiKTsKKyAgICBoTW9kID0gR2V0TW9kdWxlSGFuZGxlVyhMImFkdmFwaTMyLmRsbCIpOwogICAgIGlmIChoTW9kKQogICAgICAgICBwZm4gPSAoUkRLRUZ1bmMpR2V0UHJvY0FkZHJlc3MoaE1vZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmVnRGVsZXRlS2V5RXhXIik7CkBAIC0xMTIzLDcgKzExMzUsNyBAQAogICAgIGlmIChyYyAhPSBFUlJPUl9TVUNDRVNTKQogICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnJXaXRoRnVuY3Rpb24ocmMsICJSZWdFbnVtS2V5RXgiKTsKIAotICAgIHJldFN0ciA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSh0bXBidWYsIGxlbik7CisgICAgcmV0U3RyID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcih0bXBidWYsIGxlbik7CiAgICAgcmV0dXJuIHJldFN0cjsgIC8qIGNhbiBiZSBOVUxMICovCiB9CiAKQEAgLTEyMTUsOCArMTIyNyw4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogUHlFeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5X1VOSUNPREUgKnJldFZhbHVlID0gTlVMTDsKLSAgICBQeV9VTklDT0RFICpzcmM7CisgICAgd2NoYXJfdCAqcmV0VmFsdWUgPSBOVUxMOworICAgIHdjaGFyX3QgKnNyYzsKICAgICBEV09SRCByZXRWYWx1ZVNpemU7CiAgICAgRFdPUkQgcmM7CiAgICAgUHlPYmplY3QgKm87CkBAIC0xMjI5LDcgKzEyNDEsNyBAQAogICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnJXaXRoRnVuY3Rpb24ocmV0VmFsdWVTaXplLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJFeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MiKTsKICAgICB9Ci0gICAgcmV0VmFsdWUgPSAoUHlfVU5JQ09ERSAqKVB5TWVtX01hbGxvYyhyZXRWYWx1ZVNpemUgKiBzaXplb2YoUHlfVU5JQ09ERSkpOworICAgIHJldFZhbHVlID0gKHdjaGFyX3QgKilQeU1lbV9NYWxsb2MocmV0VmFsdWVTaXplICogc2l6ZW9mKHdjaGFyX3QpKTsKICAgICBpZiAocmV0VmFsdWUgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKICAgICB9CkBAIC0xMjQwLDcgKzEyNTIsNyBAQAogICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnJXaXRoRnVuY3Rpb24ocmV0VmFsdWVTaXplLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJFeHBhbmRFbnZpcm9ubWVudFN0cmluZ3MiKTsKICAgICB9Ci0gICAgbyA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShyZXRWYWx1ZSwgd2NzbGVuKHJldFZhbHVlKSk7CisgICAgbyA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIocmV0VmFsdWUsIHdjc2xlbihyZXRWYWx1ZSkpOwogICAgIFB5TWVtX0ZyZWUocmV0VmFsdWUpOwogICAgIHJldHVybiBvOwogfQpAQCAtMTM5NCw3ICsxNDA2LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSZWdRdWVyeVZhbHVlIik7CiAgICAgfQogCi0gICAgcmV0U3RyID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHJldEJ1Ziwgd2NzbGVuKHJldEJ1ZikpOworICAgIHJldFN0ciA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIocmV0QnVmLCB3Y3NsZW4ocmV0QnVmKSk7CiAgICAgUHlNZW1fRnJlZShyZXRCdWYpOwogICAgIHJldHVybiByZXRTdHI7CiB9CkBAIC0xNTI1LDcgKzE1MzcsNyBAQAogewogICAgIEhLRVkgaEtleTsKICAgICBQeU9iamVjdCAqb2JLZXk7Ci0gICAgUHlfVU5JQ09ERSAqdmFsdWVOYW1lOworICAgIHdjaGFyX3QgKnZhbHVlTmFtZTsKICAgICBQeU9iamVjdCAqb2JSZXM7CiAgICAgUHlPYmplY3QgKnZhbHVlOwogICAgIEJZVEUgKmRhdGE7CkBAIC0xNTc4LDcgKzE1OTAsNyBAQAogCiAgICAgLyogT25seSBhdmFpbGFibGUgb24gNjRiaXQgcGxhdGZvcm1zLCBzbyB3ZSBtdXN0IGxvYWQgaXQKICAgICAgICBkeW5hbWljYWxseS4qLwotICAgIGhNb2QgPSBHZXRNb2R1bGVIYW5kbGUoImFkdmFwaTMyLmRsbCIpOworICAgIGhNb2QgPSBHZXRNb2R1bGVIYW5kbGVXKEwiYWR2YXBpMzIuZGxsIik7CiAgICAgaWYgKGhNb2QpCiAgICAgICAgIHBmbiA9IChSRFJLRnVuYylHZXRQcm9jQWRkcmVzcyhoTW9kLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJlZ0Rpc2FibGVSZWZsZWN0aW9uS2V5Iik7CkBAIC0xNjE0LDcgKzE2MjYsNyBAQAogCiAgICAgLyogT25seSBhdmFpbGFibGUgb24gNjRiaXQgcGxhdGZvcm1zLCBzbyB3ZSBtdXN0IGxvYWQgaXQKICAgICAgICBkeW5hbWljYWxseS4qLwotICAgIGhNb2QgPSBHZXRNb2R1bGVIYW5kbGUoImFkdmFwaTMyLmRsbCIpOworICAgIGhNb2QgPSBHZXRNb2R1bGVIYW5kbGVXKEwiYWR2YXBpMzIuZGxsIik7CiAgICAgaWYgKGhNb2QpCiAgICAgICAgIHBmbiA9IChSRVJLRnVuYylHZXRQcm9jQWRkcmVzcyhoTW9kLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJlZ0VuYWJsZVJlZmxlY3Rpb25LZXkiKTsKQEAgLTE2NTEsNyArMTY2Myw3IEBACiAKICAgICAvKiBPbmx5IGF2YWlsYWJsZSBvbiA2NGJpdCBwbGF0Zm9ybXMsIHNvIHdlIG11c3QgbG9hZCBpdAogICAgICAgIGR5bmFtaWNhbGx5LiovCi0gICAgaE1vZCA9IEdldE1vZHVsZUhhbmRsZSgiYWR2YXBpMzIuZGxsIik7CisgICAgaE1vZCA9IEdldE1vZHVsZUhhbmRsZVcoTCJhZHZhcGkzMi5kbGwiKTsKICAgICBpZiAoaE1vZCkKICAgICAgICAgcGZuID0gKFJRUktGdW5jKUdldFByb2NBZGRyZXNzKGhNb2QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmVnUXVlcnlSZWZsZWN0aW9uS2V5Iik7CmRpZmYgLS1naXQgYS9QQy93aW5zb3VuZC5jIGIvUEMvd2luc291bmQuYwppbmRleCAxZWQ5NWJhLi5iNTY0ZWFiIDEwMDY0NAotLS0gYS9QQy93aW5zb3VuZC5jCisrKyBiL1BDL3dpbnNvdW5kLmMKQEAgLTcyLDcgKzcyLDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzb3VuZF9wbGF5c291bmQoUHlPYmplY3QgKnMsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5X1VOSUNPREUgKndzb3VuZDsKKyAgICB3Y2hhcl90ICp3c291bmQ7CiAgICAgaW50IGZsYWdzOwogICAgIGludCBvazsKIApkaWZmIC0tZ2l0IGEvUENidWlsZC9iejIudmNwcm9qIGIvUENidWlsZC9fYnoyLnZjcHJvagpzaW1pbGFyaXR5IGluZGV4IDk5JQpyZW5hbWUgZnJvbSBQQ2J1aWxkL2J6Mi52Y3Byb2oKcmVuYW1lIHRvIFBDYnVpbGQvX2J6Mi52Y3Byb2oKaW5kZXggMDM1NzM2ZS4uZTZiOWM4OCAxMDA2NDQKLS0tIGEvUENidWlsZC9iejIudmNwcm9qCisrKyBiL1BDYnVpbGQvX2J6Mi52Y3Byb2oKQEAgLTIsNyArMiw3IEBACiA8VmlzdWFsU3R1ZGlvUHJvamVjdA0KIAlQcm9qZWN0VHlwZT0iVmlzdWFsIEMrKyINCiAJVmVyc2lvbj0iOSwwMCINCi0JTmFtZT0iYnoyIg0KKwlOYW1lPSJfYnoyIg0KIAlQcm9qZWN0R1VJRD0iezczRkNEMkJELUYxMzMtNDZCNy04RUMxLTE0NENEODJBNTlENX0iDQogCVJvb3ROYW1lc3BhY2U9ImJ6MiINCiAJS2V5d29yZD0iV2luMzJQcm9qIg0KQEAgLTUyNyw3ICs1MjcsNyBAQAogCQkJTmFtZT0iU291cmNlIEZpbGVzIg0KIAkJCT4NCiAJCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcYnoybW9kdWxlLmMiDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cTW9kdWxlc1xfYnoybW9kdWxlLmMiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQk8L0ZpbHRlcj4NCmRpZmYgLS1naXQgYS9QQ2J1aWxkL2J6Mi52Y3Byb2ogYi9QQ2J1aWxkL19sem1hLnZjcHJvagpzaW1pbGFyaXR5IGluZGV4IDgyJQpjb3B5IGZyb20gUENidWlsZC9iejIudmNwcm9qCmNvcHkgdG8gUENidWlsZC9fbHptYS52Y3Byb2oKaW5kZXggMDM1NzM2ZS4uMTBmMzcyMiAxMDA2NDQKLS0tIGEvUENidWlsZC9iejIudmNwcm9qCisrKyBiL1BDYnVpbGQvX2x6bWEudmNwcm9qCkBAIC0yLDkgKzIsOSBAQAogPFZpc3VhbFN0dWRpb1Byb2plY3QNCiAJUHJvamVjdFR5cGU9IlZpc3VhbCBDKysiDQogCVZlcnNpb249IjksMDAiDQotCU5hbWU9ImJ6MiINCi0JUHJvamVjdEdVSUQ9Ins3M0ZDRDJCRC1GMTMzLTQ2QjctOEVDMS0xNDRDRDgyQTU5RDV9Ig0KLQlSb290TmFtZXNwYWNlPSJiejIiDQorCU5hbWU9Il9sem1hIg0KKwlQcm9qZWN0R1VJRD0ie0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0iDQorCVJvb3ROYW1lc3BhY2U9Imx6bWEiDQogCUtleXdvcmQ9IldpbjMyUHJvaiINCiAJVGFyZ2V0RnJhbWV3b3JrVmVyc2lvbj0iMTk2NjEzIg0KIAk+DQpAQCAtNDIsOCArNDIsOCBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCisJCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChsem1hRGlyKVxpbmNsdWRlIg0KKwkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEU7TFpNQV9BUElfU1RBVElDIg0KIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wiDQpAQCAtNTYsNyArNTYsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIkKGx6bWFEaXIpXGJpbl9pNDg2XGxpYmx6bWEuYSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTEwNCw4ICsxMDQsOCBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCisJCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChsem1hRGlyKVxpbmNsdWRlIg0KKwkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEU7TFpNQV9BUElfU1RBVElDIg0KIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wiDQpAQCAtMTE4LDcgKzExOCw3IEBACiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTGlua2VyVG9vbCINCi0JCQkJQmFzZUFkZHJlc3M9IjB4MUQxNzAwMDAiDQorCQkJCUFkZGl0aW9uYWxEZXBlbmRlbmNpZXM9IiQobHptYURpcilcYmluX3g4Ni02NFxsaWJsem1hLmEiDQogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0FMaW5rVG9vbCINCkBAIC0xNjYsOCArMTY2LDggQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCi0JCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChiejJEaXIpIg0KLQkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEUiDQorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQobHptYURpcilcaW5jbHVkZSINCisJCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFO0xaTUFfQVBJX1NUQVRJQyINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTE4MCw3ICsxODAsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIkKGx6bWFEaXIpXGJpbl9pNDg2XGxpYmx6bWEuYSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTIyOSw4ICsyMjksOCBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCisJCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChsem1hRGlyKVxpbmNsdWRlIg0KKwkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEU7TFpNQV9BUElfU1RBVElDIg0KIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wiDQpAQCAtMjQzLDcgKzI0Myw3IEBACiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTGlua2VyVG9vbCINCi0JCQkJQmFzZUFkZHJlc3M9IjB4MUQxNzAwMDAiDQorCQkJCUFkZGl0aW9uYWxEZXBlbmRlbmNpZXM9IiQobHptYURpcilcYmluX3g4Ni02NFxsaWJsem1hLmEiDQogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0FMaW5rVG9vbCINCkBAIC0yOTEsOCArMjkxLDggQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCi0JCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChiejJEaXIpIg0KLQkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEUiDQorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQobHptYURpcilcaW5jbHVkZSINCisJCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFO0xaTUFfQVBJX1NUQVRJQyINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTMwNSw3ICszMDUsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIkKGx6bWFEaXIpXGJpbl9pNDg2XGxpYmx6bWEuYSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTM1NCw4ICszNTQsOCBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCisJCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChsem1hRGlyKVxpbmNsdWRlIg0KKwkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEU7TFpNQV9BUElfU1RBVElDIg0KIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wiDQpAQCAtMzY4LDcgKzM2OCw3IEBACiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTGlua2VyVG9vbCINCi0JCQkJQmFzZUFkZHJlc3M9IjB4MUQxNzAwMDAiDQorCQkJCUFkZGl0aW9uYWxEZXBlbmRlbmNpZXM9IiQobHptYURpcilcYmluX3g4Ni02NFxsaWJsem1hLmEiDQogCQkJCVRhcmdldE1hY2hpbmU9IjE3Ig0KIAkJCS8+DQogCQkJPFRvb2wNCkBAIC00MTcsOCArNDE3LDggQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCi0JCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChiejJEaXIpIg0KLQkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEUiDQorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQobHptYURpcilcaW5jbHVkZSINCisJCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFO0xaTUFfQVBJX1NUQVRJQyINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTQzMSw3ICs0MzEsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIkKGx6bWFEaXIpXGJpbl9pNDg2XGxpYmx6bWEuYSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTQ4MCw4ICs0ODAsOCBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCisJCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChsem1hRGlyKVxpbmNsdWRlIg0KKwkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEU7TFpNQV9BUElfU1RBVElDIg0KIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wiDQpAQCAtNDk0LDcgKzQ5NCw3IEBACiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTGlua2VyVG9vbCINCi0JCQkJQmFzZUFkZHJlc3M9IjB4MUQxNzAwMDAiDQorCQkJCUFkZGl0aW9uYWxEZXBlbmRlbmNpZXM9IiQobHptYURpcilcYmluX3g4Ni02NFxsaWJsem1hLmEiDQogCQkJCVRhcmdldE1hY2hpbmU9IjE3Ig0KIAkJCS8+DQogCQkJPFRvb2wNCkBAIC01MjcsNTEgKzUyNyw3IEBACiAJCQlOYW1lPSJTb3VyY2UgRmlsZXMiDQogCQkJPg0KIAkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cTW9kdWxlc1xiejJtb2R1bGUuYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCTwvRmlsdGVyPg0KLQkJPEZpbHRlcg0KLQkJCU5hbWU9ImJ6aXAyIDEuMC41IEhlYWRlciBGaWxlcyINCi0JCQk+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIkKGJ6MkRpcilcYnpsaWIuaCINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9IiQoYnoyRGlyKVxiemxpYl9wcml2YXRlLmgiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQk8L0ZpbHRlcj4NCi0JCTxGaWx0ZXINCi0JCQlOYW1lPSJiemlwMiAxLjAuNSBTb3VyY2UgRmlsZXMiDQotCQkJPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iJChiejJEaXIpXGJsb2Nrc29ydC5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iJChiejJEaXIpXGJ6bGliLmMiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIkKGJ6MkRpcilcY29tcHJlc3MuYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9IiQoYnoyRGlyKVxjcmN0YWJsZS5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iJChiejJEaXIpXGRlY29tcHJlc3MuYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9IiQoYnoyRGlyKVxodWZmbWFuLmMiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIkKGJ6MkRpcilccmFuZHRhYmxlLmMiDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cTW9kdWxlc1xfbHptYW1vZHVsZS5jIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJPC9GaWx0ZXI+DQpkaWZmIC0tZ2l0IGEvUENidWlsZC9fbXVsdGlwcm9jZXNzaW5nLnZjcHJvaiBiL1BDYnVpbGQvX211bHRpcHJvY2Vzc2luZy52Y3Byb2oKaW5kZXggNWQ2MzM3ZC4uZTljZDNhOCAxMDA2NDQKLS0tIGEvUENidWlsZC9fbXVsdGlwcm9jZXNzaW5nLnZjcHJvagorKysgYi9QQ2J1aWxkL19tdWx0aXByb2Nlc3NpbmcudmNwcm9qCkBAIC01MjIsMTAgKzUyMiw2IEBACiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3NpbmdcbXVsdGlwcm9jZXNzaW5nLmgiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3NpbmdcY29ubmVjdGlvbi5oIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KIAkJPC9GaWx0ZXI+DQogCQk8RmlsdGVyDQogCQkJTmFtZT0iU291cmNlIEZpbGVzIg0KQEAgLTUzNSwxOCArNTMxLDEwIEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xwaXBlX2Nvbm5lY3Rpb24uYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xzZW1hcGhvcmUuYyINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xzb2NrZXRfY29ubmVjdGlvbi5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXHdpbjMyX2Z1bmN0aW9ucy5jIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KZGlmZiAtLWdpdCBhL1BDYnVpbGQvYnoyLnZjcHJvaiBiL1BDYnVpbGQvX3Rlc3RidWZmZXIudmNwcm9qCnNpbWlsYXJpdHkgaW5kZXggNzclCmNvcHkgZnJvbSBQQ2J1aWxkL2J6Mi52Y3Byb2oKY29weSB0byBQQ2J1aWxkL190ZXN0YnVmZmVyLnZjcHJvagppbmRleCAwMzU3MzZlLi43OTVlYTI3IDEwMDY0NAotLS0gYS9QQ2J1aWxkL2J6Mi52Y3Byb2oKKysrIGIvUENidWlsZC9fdGVzdGJ1ZmZlci52Y3Byb2oKQEAgLTEsMTAgKzEsMTAgQEAKIDw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IldpbmRvd3MtMTI1MiI/Pg0KIDxWaXN1YWxTdHVkaW9Qcm9qZWN0DQogCVByb2plY3RUeXBlPSJWaXN1YWwgQysrIg0KLQlWZXJzaW9uPSI5LDAwIg0KLQlOYW1lPSJiejIiDQotCVByb2plY3RHVUlEPSJ7NzNGQ0QyQkQtRjEzMy00NkI3LThFQzEtMTQ0Q0Q4MkE1OUQ1fSINCi0JUm9vdE5hbWVzcGFjZT0iYnoyIg0KKwlWZXJzaW9uPSI5LjAwIg0KKwlOYW1lPSJfdGVzdGJ1ZmZlciINCisJUHJvamVjdEdVSUQ9IntBMjY5N0JEMy0yOEMxLTRBRUMtOTEwNi04Qjc0ODYzOUZEMTZ9Ig0KKwlSb290TmFtZXNwYWNlPSJfdGVzdGJ1ZmZlciINCiAJS2V5d29yZD0iV2luMzJQcm9qIg0KIAlUYXJnZXRGcmFtZXdvcmtWZXJzaW9uPSIxOTY2MTMiDQogCT4NCkBAIC00Miw4ICs0Miw2IEBACiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQotCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQoYnoyRGlyKSINCi0JCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFIg0KIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wiDQpAQCAtNTYsNyArNTQsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlCYXNlQWRkcmVzcz0iMHgxZTFGMDAwMCINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTEwNCw4ICsxMDIsNiBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTExOCw3ICsxMTQsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlCYXNlQWRkcmVzcz0iMHgxZTFGMDAwMCINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTE2Niw4ICsxNjIsNiBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTE4MCw3ICsxNzQsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlCYXNlQWRkcmVzcz0iMHgxZTFGMDAwMCINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTIyOSw4ICsyMjMsNiBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTI0Myw3ICsyMzUsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlCYXNlQWRkcmVzcz0iMHgxZTFGMDAwMCINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTI5MSw4ICsyODMsNiBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTMwNSw3ICsyOTUsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlCYXNlQWRkcmVzcz0iMHgxZTFGMDAwMCINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTM1NCw4ICszNDQsNiBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTM2OCw3ICszNTYsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlCYXNlQWRkcmVzcz0iMHgxZTFGMDAwMCINCiAJCQkJVGFyZ2V0TWFjaGluZT0iMTciDQogCQkJLz4NCiAJCQk8VG9vbA0KQEAgLTQxNyw4ICs0MDUsNiBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTQzMSw3ICs0MTcsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlCYXNlQWRkcmVzcz0iMHgxZTFGMDAwMCINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQUxpbmtUb29sIg0KQEAgLTQ4MCw4ICs0NjYsNiBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KLQkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGJ6MkRpcikiDQotCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURSINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTQ5NCw3ICs0NzgsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlCYXNlQWRkcmVzcz0iMHgxZTFGMDAwMCINCiAJCQkJVGFyZ2V0TWFjaGluZT0iMTciDQogCQkJLz4NCiAJCQk8VG9vbA0KQEAgLTUyNyw1MSArNTExLDcgQEAKIAkJCU5hbWU9IlNvdXJjZSBGaWxlcyINCiAJCQk+DQogCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXGJ6Mm1vZHVsZS5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJPC9GaWx0ZXI+DQotCQk8RmlsdGVyDQotCQkJTmFtZT0iYnppcDIgMS4wLjUgSGVhZGVyIEZpbGVzIg0KLQkJCT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9IiQoYnoyRGlyKVxiemxpYi5oIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iJChiejJEaXIpXGJ6bGliX3ByaXZhdGUuaCINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCTwvRmlsdGVyPg0KLQkJPEZpbHRlcg0KLQkJCU5hbWU9ImJ6aXAyIDEuMC41IFNvdXJjZSBGaWxlcyINCi0JCQk+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIkKGJ6MkRpcilcYmxvY2tzb3J0LmMiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIkKGJ6MkRpcilcYnpsaWIuYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9IiQoYnoyRGlyKVxjb21wcmVzcy5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iJChiejJEaXIpXGNyY3RhYmxlLmMiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIkKGJ6MkRpcilcZGVjb21wcmVzcy5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iJChiejJEaXIpXGh1ZmZtYW4uYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9IiQoYnoyRGlyKVxyYW5kdGFibGUuYyINCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXF90ZXN0YnVmZmVyLmMiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQk8L0ZpbHRlcj4NCmRpZmYgLS1naXQgYS9QQ2J1aWxkL2J1aWxkX3NzbC5iYXQgYi9QQ2J1aWxkL2J1aWxkX3NzbC5iYXQKaW5kZXggY2VlNjRhOC4uMzU3YjA4YiAxMDA2NDQKLS0tIGEvUENidWlsZC9idWlsZF9zc2wuYmF0CisrKyBiL1BDYnVpbGQvYnVpbGRfc3NsLmJhdApAQCAtMiwxMCArMiwxMCBAQAogaWYgbm90IGRlZmluZWQgSE9TVF9QWVRIT04gKAogICBpZiAlMSBFUVUgRGVidWcgKAogICAgIHNldCBIT1NUX1BZVEhPTj1weXRob25fZC5leGUKLSAgICBpZiBub3QgZXhpc3QgcHl0aG9uMzFfZC5kbGwgZXhpdCAxCisgICAgaWYgbm90IGV4aXN0IHB5dGhvbjMzX2QuZGxsIGV4aXQgMQogICApIEVMU0UgKAogICAgIHNldCBIT1NUX1BZVEhPTj1weXRob24uZXhlCi0gICAgaWYgbm90IGV4aXN0IHB5dGhvbjMxLmRsbCBleGl0IDEKKyAgICBpZiBub3QgZXhpc3QgcHl0aG9uMzMuZGxsIGV4aXQgMQogICApCiApCiAlSE9TVF9QWVRIT04lIGJ1aWxkX3NzbC5weSAlMSAlMiAlMwpkaWZmIC0tZ2l0IGEvUENidWlsZC9raWxsX3B5dGhvbi5jIGIvUENidWlsZC9raWxsX3B5dGhvbi5jCmluZGV4IDZiOTE2NzguLmJiMzIzZDMgMTAwNjQ0Ci0tLSBhL1BDYnVpbGQva2lsbF9weXRob24uYworKysgYi9QQ2J1aWxkL2tpbGxfcHl0aG9uLmMKQEAgLTEwNiw3ICsxMDYsNyBAQAogICAgICAgICAvKgogICAgICAgICAgKiBYWFggVE9ETzogaWYgd2UgcmVhbGx5IHdhbnRlZCB0byBiZSBmYW5jeSwgd2UgY291bGQgY2hlY2sgdGhlIAogICAgICAgICAgKiBtb2R1bGVzIGZvciBhbGwgcHJvY2Vzc2VzIChub3QganVzdCB0aGUgcHl0aG9uW19kXS5leGUgb25lcykKLSAgICAgICAgICogYW5kIHNlZSBpZiBhbnkgb2Ygb3VyIERMTHMgYXJlIGxvYWRlZCAoaS5lLiBweXRob24zMltfZF0uZGxsKSwKKyAgICAgICAgICogYW5kIHNlZSBpZiBhbnkgb2Ygb3VyIERMTHMgYXJlIGxvYWRlZCAoaS5lLiBweXRob24zM1tfZF0uZGxsKSwKICAgICAgICAgICogYXMgdGhhdCB3b3VsZCBhbHNvIGluaGliaXQgb3VyIGFiaWxpdHkgdG8gcmVidWlsZCB0aGUgc29sdXRpb24uCiAgICAgICAgICAqIE5vdCB3b3J0aCBsb29zaW5nIHNsZWVwIG92ZXIgdGhvdWdoOyBmb3Igbm93LCBhIHNpbXBsZSBjaGVjayAKICAgICAgICAgICogZm9yIGp1c3QgdGhlIHB5dGhvbiBleGVjdXRhYmxlIHNob3VsZCBiZSBzdWZmaWNpZW50LgpkaWZmIC0tZ2l0IGEvUENidWlsZC9wY2J1aWxkLnNsbiBiL1BDYnVpbGQvcGNidWlsZC5zbG4KaW5kZXggMWRlNGVhMS4uYWM2ZjIyNCAxMDA2NDQKLS0tIGEvUENidWlsZC9wY2J1aWxkLnNsbgorKysgYi9QQ2J1aWxkL3BjYnVpbGQuc2xuCkBAIC04Nyw3ICs4NywxMiBAQAogCQl7Q0Y3QUMzRDEtRTJERi00MUQyLUJFQTYtMUUyNTU2Q0RFQTI2fSA9IHtDRjdBQzNEMS1FMkRGLTQxRDItQkVBNi0xRTI1NTZDREVBMjZ9DQogCUVuZFByb2plY3RTZWN0aW9uDQogRW5kUHJvamVjdA0KLVByb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAiYnoyIiwgImJ6Mi52Y3Byb2oiLCAiezczRkNEMkJELUYxMzMtNDZCNy04RUMxLTE0NENEODJBNTlENX0iDQorUHJvamVjdCgiezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0Mn0iKSA9ICJfYnoyIiwgIl9iejIudmNwcm9qIiwgIns3M0ZDRDJCRC1GMTMzLTQ2QjctOEVDMS0xNDRDRDgyQTU5RDV9Ig0KKwlQcm9qZWN0U2VjdGlvbihQcm9qZWN0RGVwZW5kZW5jaWVzKSA9IHBvc3RQcm9qZWN0DQorCQl7Q0Y3QUMzRDEtRTJERi00MUQyLUJFQTYtMUUyNTU2Q0RFQTI2fSA9IHtDRjdBQzNEMS1FMkRGLTQxRDItQkVBNi0xRTI1NTZDREVBMjZ9DQorCUVuZFByb2plY3RTZWN0aW9uDQorRW5kUHJvamVjdA0KK1Byb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAiX2x6bWEiLCAiX2x6bWEudmNwcm9qIiwgIntGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9Ig0KIAlQcm9qZWN0U2VjdGlvbihQcm9qZWN0RGVwZW5kZW5jaWVzKSA9IHBvc3RQcm9qZWN0DQogCQl7Q0Y3QUMzRDEtRTJERi00MUQyLUJFQTYtMUUyNTU2Q0RFQTI2fSA9IHtDRjdBQzNEMS1FMkRGLTQxRDItQkVBNi0xRTI1NTZDREVBMjZ9DQogCUVuZFByb2plY3RTZWN0aW9uDQpAQCAtMTM3LDYgKzE0MiwxMSBAQAogRW5kUHJvamVjdA0KIFByb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAieHhsaW1pdGVkIiwgInh4bGltaXRlZC52Y3Byb2oiLCAie0Y3NDlCODIyLUI0ODktNENBNS1BM0FELUNFMDc4RjVGMzM4QX0iDQogRW5kUHJvamVjdA0KK1Byb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAiX3Rlc3RidWZmZXIiLCAiX3Rlc3RidWZmZXIudmNwcm9qIiwgIntBMjY5N0JEMy0yOEMxLTRBRUMtOTEwNi04Qjc0ODYzOUZEMTZ9Ig0KKwlQcm9qZWN0U2VjdGlvbihQcm9qZWN0RGVwZW5kZW5jaWVzKSA9IHBvc3RQcm9qZWN0DQorCQl7Q0Y3QUMzRDEtRTJERi00MUQyLUJFQTYtMUUyNTU2Q0RFQTI2fSA9IHtDRjdBQzNEMS1FMkRGLTQxRDItQkVBNi0xRTI1NTZDREVBMjZ9DQorCUVuZFByb2plY3RTZWN0aW9uDQorRW5kUHJvamVjdA0KIEdsb2JhbA0KIAlHbG9iYWxTZWN0aW9uKFNvbHV0aW9uQ29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwcmVTb2x1dGlvbg0KIAkJRGVidWd8V2luMzIgPSBEZWJ1Z3xXaW4zMg0KQEAgLTQyMSw2ICs0MzEsMjIgQEAKIAkJezczRkNEMkJELUYxMzMtNDZCNy04RUMxLTE0NENEODJBNTlENX0uUmVsZWFzZXxXaW4zMi5CdWlsZC4wID0gUmVsZWFzZXxXaW4zMg0KIAkJezczRkNEMkJELUYxMzMtNDZCNy04RUMxLTE0NENEODJBNTlENX0uUmVsZWFzZXx4NjQuQWN0aXZlQ2ZnID0gUmVsZWFzZXx4NjQNCiAJCXs3M0ZDRDJCRC1GMTMzLTQ2QjctOEVDMS0xNDRDRDgyQTU5RDV9LlJlbGVhc2V8eDY0LkJ1aWxkLjAgPSBSZWxlYXNlfHg2NA0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uRGVidWd8V2luMzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzINCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LkRlYnVnfFdpbjMyLkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMg0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uRGVidWd8eDY0LkFjdGl2ZUNmZyA9IERlYnVnfHg2NA0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uRGVidWd8eDY0LkJ1aWxkLjAgPSBEZWJ1Z3x4NjQNCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlBHSW5zdHJ1bWVudHxXaW4zMi5BY3RpdmVDZmcgPSBQR0luc3RydW1lbnR8V2luMzINCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlBHSW5zdHJ1bWVudHxXaW4zMi5CdWlsZC4wID0gUEdJbnN0cnVtZW50fFdpbjMyDQorCQl7RjlENzE3ODAtRjM5My0xMUUwLUJFNTAtMDgwMDIwMEM5QTY2fS5QR0luc3RydW1lbnR8eDY0LkFjdGl2ZUNmZyA9IFBHSW5zdHJ1bWVudHx4NjQNCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlBHSW5zdHJ1bWVudHx4NjQuQnVpbGQuMCA9IFBHSW5zdHJ1bWVudHx4NjQNCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlBHVXBkYXRlfFdpbjMyLkFjdGl2ZUNmZyA9IFBHVXBkYXRlfFdpbjMyDQorCQl7RjlENzE3ODAtRjM5My0xMUUwLUJFNTAtMDgwMDIwMEM5QTY2fS5QR1VwZGF0ZXxXaW4zMi5CdWlsZC4wID0gUEdVcGRhdGV8V2luMzINCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlBHVXBkYXRlfHg2NC5BY3RpdmVDZmcgPSBQR1VwZGF0ZXx4NjQNCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlBHVXBkYXRlfHg2NC5CdWlsZC4wID0gUEdVcGRhdGV8eDY0DQorCQl7RjlENzE3ODAtRjM5My0xMUUwLUJFNTAtMDgwMDIwMEM5QTY2fS5SZWxlYXNlfFdpbjMyLkFjdGl2ZUNmZyA9IFJlbGVhc2V8V2luMzINCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlJlbGVhc2V8V2luMzIuQnVpbGQuMCA9IFJlbGVhc2V8V2luMzINCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlJlbGVhc2V8eDY0LkFjdGl2ZUNmZyA9IFJlbGVhc2V8eDY0DQorCQl7RjlENzE3ODAtRjM5My0xMUUwLUJFNTAtMDgwMDIwMEM5QTY2fS5SZWxlYXNlfHg2NC5CdWlsZC4wID0gUmVsZWFzZXx4NjQNCiAJCXsxOENBRTI4Qy1CNDU0LTQ2QzEtODdBMC00OTNEOTFEOTdGMDN9LkRlYnVnfFdpbjMyLkFjdGl2ZUNmZyA9IERlYnVnfFdpbjMyDQogCQl7MThDQUUyOEMtQjQ1NC00NkMxLTg3QTAtNDkzRDkxRDk3RjAzfS5EZWJ1Z3xXaW4zMi5CdWlsZC4wID0gRGVidWd8V2luMzINCiAJCXsxOENBRTI4Qy1CNDU0LTQ2QzEtODdBMC00OTNEOTFEOTdGMDN9LkRlYnVnfHg2NC5BY3RpdmVDZmcgPSBEZWJ1Z3x4NjQNCkBAIC01NTgsMTYgKzU4NCwxNiBAQAogCQl7NkRFMTA3NDQtRTM5Ni00MEE1LUI0RTItMUI2OUFBN0M4RDMxfS5SZWxlYXNlfHg2NC5BY3RpdmVDZmcgPSBSZWxlYXNlfHg2NA0KIAkJezZERTEwNzQ0LUUzOTYtNDBBNS1CNEUyLTFCNjlBQTdDOEQzMX0uUmVsZWFzZXx4NjQuQnVpbGQuMCA9IFJlbGVhc2V8eDY0DQogCQl7ODg1RDQ4OTgtRDA4RC00MDkxLTlDNDAtQzcwMENGRTNGQzVBfS5EZWJ1Z3xXaW4zMi5BY3RpdmVDZmcgPSBQR0luc3RydW1lbnR8V2luMzINCi0JCXs4ODVENDg5OC1EMDhELTQwOTEtOUM0MC1DNzAwQ0ZFM0ZDNUF9LkRlYnVnfHg2NC5BY3RpdmVDZmcgPSBEZWJ1Z3x4NjQNCi0JCXs4ODVENDg5OC1EMDhELTQwOTEtOUM0MC1DNzAwQ0ZFM0ZDNUF9LkRlYnVnfHg2NC5CdWlsZC4wID0gRGVidWd8eDY0DQorCQl7ODg1RDQ4OTgtRDA4RC00MDkxLTlDNDAtQzcwMENGRTNGQzVBfS5EZWJ1Z3x4NjQuQWN0aXZlQ2ZnID0gUEdVcGRhdGV8eDY0DQorCQl7ODg1RDQ4OTgtRDA4RC00MDkxLTlDNDAtQzcwMENGRTNGQzVBfS5EZWJ1Z3x4NjQuQnVpbGQuMCA9IFBHVXBkYXRlfHg2NA0KIAkJezg4NUQ0ODk4LUQwOEQtNDA5MS05QzQwLUM3MDBDRkUzRkM1QX0uUEdJbnN0cnVtZW50fFdpbjMyLkFjdGl2ZUNmZyA9IFBHSW5zdHJ1bWVudHxXaW4zMg0KIAkJezg4NUQ0ODk4LUQwOEQtNDA5MS05QzQwLUM3MDBDRkUzRkM1QX0uUEdJbnN0cnVtZW50fFdpbjMyLkJ1aWxkLjAgPSBQR0luc3RydW1lbnR8V2luMzINCi0JCXs4ODVENDg5OC1EMDhELTQwOTEtOUM0MC1DNzAwQ0ZFM0ZDNUF9LlBHSW5zdHJ1bWVudHx4NjQuQWN0aXZlQ2ZnID0gUmVsZWFzZXx4NjQNCi0JCXs4ODVENDg5OC1EMDhELTQwOTEtOUM0MC1DNzAwQ0ZFM0ZDNUF9LlBHSW5zdHJ1bWVudHx4NjQuQnVpbGQuMCA9IFJlbGVhc2V8eDY0DQorCQl7ODg1RDQ4OTgtRDA4RC00MDkxLTlDNDAtQzcwMENGRTNGQzVBfS5QR0luc3RydW1lbnR8eDY0LkFjdGl2ZUNmZyA9IFBHSW5zdHJ1bWVudHx4NjQNCisJCXs4ODVENDg5OC1EMDhELTQwOTEtOUM0MC1DNzAwQ0ZFM0ZDNUF9LlBHSW5zdHJ1bWVudHx4NjQuQnVpbGQuMCA9IFBHSW5zdHJ1bWVudHx4NjQNCiAJCXs4ODVENDg5OC1EMDhELTQwOTEtOUM0MC1DNzAwQ0ZFM0ZDNUF9LlBHVXBkYXRlfFdpbjMyLkFjdGl2ZUNmZyA9IFBHVXBkYXRlfFdpbjMyDQogCQl7ODg1RDQ4OTgtRDA4RC00MDkxLTlDNDAtQzcwMENGRTNGQzVBfS5QR1VwZGF0ZXxXaW4zMi5CdWlsZC4wID0gUEdVcGRhdGV8V2luMzINCi0JCXs4ODVENDg5OC1EMDhELTQwOTEtOUM0MC1DNzAwQ0ZFM0ZDNUF9LlBHVXBkYXRlfHg2NC5BY3RpdmVDZmcgPSBSZWxlYXNlfHg2NA0KLQkJezg4NUQ0ODk4LUQwOEQtNDA5MS05QzQwLUM3MDBDRkUzRkM1QX0uUEdVcGRhdGV8eDY0LkJ1aWxkLjAgPSBSZWxlYXNlfHg2NA0KKwkJezg4NUQ0ODk4LUQwOEQtNDA5MS05QzQwLUM3MDBDRkUzRkM1QX0uUEdVcGRhdGV8eDY0LkFjdGl2ZUNmZyA9IFBHVXBkYXRlfHg2NA0KKwkJezg4NUQ0ODk4LUQwOEQtNDA5MS05QzQwLUM3MDBDRkUzRkM1QX0uUEdVcGRhdGV8eDY0LkJ1aWxkLjAgPSBQR1VwZGF0ZXx4NjQNCiAJCXs4ODVENDg5OC1EMDhELTQwOTEtOUM0MC1DNzAwQ0ZFM0ZDNUF9LlJlbGVhc2V8V2luMzIuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMg0KIAkJezg4NUQ0ODk4LUQwOEQtNDA5MS05QzQwLUM3MDBDRkUzRkM1QX0uUmVsZWFzZXxXaW4zMi5CdWlsZC4wID0gUmVsZWFzZXxXaW4zMg0KIAkJezg4NUQ0ODk4LUQwOEQtNDA5MS05QzQwLUM3MDBDRkUzRkM1QX0uUmVsZWFzZXx4NjQuQWN0aXZlQ2ZnID0gUmVsZWFzZXx4NjQNCkBAIC01ODgsNiArNjE0LDIyIEBACiAJCXtGNzQ5QjgyMi1CNDg5LTRDQTUtQTNBRC1DRTA3OEY1RjMzOEF9LlJlbGVhc2V8V2luMzIuQnVpbGQuMCA9IFJlbGVhc2V8V2luMzINCiAJCXtGNzQ5QjgyMi1CNDg5LTRDQTUtQTNBRC1DRTA3OEY1RjMzOEF9LlJlbGVhc2V8eDY0LkFjdGl2ZUNmZyA9IFJlbGVhc2V8eDY0DQogCQl7Rjc0OUI4MjItQjQ4OS00Q0E1LUEzQUQtQ0UwNzhGNUYzMzhBfS5SZWxlYXNlfHg2NC5CdWlsZC4wID0gUmVsZWFzZXx4NjQNCisJCXtBMjY5N0JEMy0yOEMxLTRBRUMtOTEwNi04Qjc0ODYzOUZEMTZ9LkRlYnVnfFdpbjMyLkFjdGl2ZUNmZyA9IERlYnVnfFdpbjMyDQorCQl7QTI2OTdCRDMtMjhDMS00QUVDLTkxMDYtOEI3NDg2MzlGRDE2fS5EZWJ1Z3xXaW4zMi5CdWlsZC4wID0gRGVidWd8V2luMzINCisJCXtBMjY5N0JEMy0yOEMxLTRBRUMtOTEwNi04Qjc0ODYzOUZEMTZ9LkRlYnVnfHg2NC5BY3RpdmVDZmcgPSBEZWJ1Z3x4NjQNCisJCXtBMjY5N0JEMy0yOEMxLTRBRUMtOTEwNi04Qjc0ODYzOUZEMTZ9LkRlYnVnfHg2NC5CdWlsZC4wID0gRGVidWd8eDY0DQorCQl7QTI2OTdCRDMtMjhDMS00QUVDLTkxMDYtOEI3NDg2MzlGRDE2fS5QR0luc3RydW1lbnR8V2luMzIuQWN0aXZlQ2ZnID0gUEdJbnN0cnVtZW50fFdpbjMyDQorCQl7QTI2OTdCRDMtMjhDMS00QUVDLTkxMDYtOEI3NDg2MzlGRDE2fS5QR0luc3RydW1lbnR8V2luMzIuQnVpbGQuMCA9IFBHSW5zdHJ1bWVudHxXaW4zMg0KKwkJe0EyNjk3QkQzLTI4QzEtNEFFQy05MTA2LThCNzQ4NjM5RkQxNn0uUEdJbnN0cnVtZW50fHg2NC5BY3RpdmVDZmcgPSBQR0luc3RydW1lbnR8eDY0DQorCQl7QTI2OTdCRDMtMjhDMS00QUVDLTkxMDYtOEI3NDg2MzlGRDE2fS5QR0luc3RydW1lbnR8eDY0LkJ1aWxkLjAgPSBQR0luc3RydW1lbnR8eDY0DQorCQl7QTI2OTdCRDMtMjhDMS00QUVDLTkxMDYtOEI3NDg2MzlGRDE2fS5QR1VwZGF0ZXxXaW4zMi5BY3RpdmVDZmcgPSBQR1VwZGF0ZXxXaW4zMg0KKwkJe0EyNjk3QkQzLTI4QzEtNEFFQy05MTA2LThCNzQ4NjM5RkQxNn0uUEdVcGRhdGV8V2luMzIuQnVpbGQuMCA9IFBHVXBkYXRlfFdpbjMyDQorCQl7QTI2OTdCRDMtMjhDMS00QUVDLTkxMDYtOEI3NDg2MzlGRDE2fS5QR1VwZGF0ZXx4NjQuQWN0aXZlQ2ZnID0gUEdVcGRhdGV8eDY0DQorCQl7QTI2OTdCRDMtMjhDMS00QUVDLTkxMDYtOEI3NDg2MzlGRDE2fS5QR1VwZGF0ZXx4NjQuQnVpbGQuMCA9IFBHVXBkYXRlfHg2NA0KKwkJe0EyNjk3QkQzLTI4QzEtNEFFQy05MTA2LThCNzQ4NjM5RkQxNn0uUmVsZWFzZXxXaW4zMi5BY3RpdmVDZmcgPSBSZWxlYXNlfFdpbjMyDQorCQl7QTI2OTdCRDMtMjhDMS00QUVDLTkxMDYtOEI3NDg2MzlGRDE2fS5SZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyDQorCQl7QTI2OTdCRDMtMjhDMS00QUVDLTkxMDYtOEI3NDg2MzlGRDE2fS5SZWxlYXNlfHg2NC5BY3RpdmVDZmcgPSBSZWxlYXNlfHg2NA0KKwkJe0EyNjk3QkQzLTI4QzEtNEFFQy05MTA2LThCNzQ4NjM5RkQxNn0uUmVsZWFzZXx4NjQuQnVpbGQuMCA9IFJlbGVhc2V8eDY0DQogCUVuZEdsb2JhbFNlY3Rpb24NCiAJR2xvYmFsU2VjdGlvbihTb2x1dGlvblByb3BlcnRpZXMpID0gcHJlU29sdXRpb24NCiAJCUhpZGVTb2x1dGlvbk5vZGUgPSBGQUxTRQ0KZGlmZiAtLWdpdCBhL1BDYnVpbGQvcHlwcm9qZWN0LnZzcHJvcHMgYi9QQ2J1aWxkL3B5cHJvamVjdC52c3Byb3BzCmluZGV4IDNmNjlhNDIuLjQ0MWY5NWYgMTAwNjQ0Ci0tLSBhL1BDYnVpbGQvcHlwcm9qZWN0LnZzcHJvcHMKKysrIGIvUENidWlsZC9weXByb2plY3QudnNwcm9wcwpAQCAtMzgsNyArMzgsNyBAQAogCS8+DQogCTxVc2VyTWFjcm8NCiAJCU5hbWU9IlB5RGxsTmFtZSINCi0JCVZhbHVlPSJweXRob24zMiINCisJCVZhbHVlPSJweXRob24zMyINCiAJLz4NCiAJPFVzZXJNYWNybw0KIAkJTmFtZT0iUHl0aG9uRXhlIg0KQEAgLTU3LDYgKzU3LDEwIEBACiAJCVZhbHVlPSIkKGV4dGVybmFsc0RpcilcYnppcDItMS4wLjUiDQogCS8+DQogCTxVc2VyTWFjcm8NCisJCU5hbWU9Imx6bWFEaXIiDQorCQlWYWx1ZT0iJChleHRlcm5hbHNEaXIpXHh6LTUuMC4zIg0KKwkvPg0KKwk8VXNlck1hY3JvDQogCQlOYW1lPSJvcGVuc3NsRGlyIg0KIAkJVmFsdWU9IiQoZXh0ZXJuYWxzRGlyKVxvcGVuc3NsLTEuMC4wYSINCiAJLz4NCmRpZmYgLS1naXQgYS9QQ2J1aWxkL3B5dGhvbmNvcmUudmNwcm9qIGIvUENidWlsZC9weXRob25jb3JlLnZjcHJvagppbmRleCA1ZTYxMzA4Li44YjkwOGFhIDEwMDY0NAotLS0gYS9QQ2J1aWxkL3B5dGhvbmNvcmUudmNwcm9qCisrKyBiL1BDYnVpbGQvcHl0aG9uY29yZS52Y3Byb2oKQEAgLTg5MSw2ICs4OTEsMTAgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cSW5jbHVkZVxweW1hY3JvLmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxJbmNsdWRlXHB5bWVtLmgiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpAQCAtMTA5MSw2ICsxMDk1LDEwIEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcZmF1bHRoYW5kbGVyLmMiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXGdjbW9kdWxlLmMiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpkaWZmIC0tZ2l0IGEvUENidWlsZC9yZWFkbWUudHh0IGIvUENidWlsZC9yZWFkbWUudHh0CmluZGV4IGRiZTAzMWYuLjIxNDYyMjEgMTAwNjQ0Ci0tLSBhL1BDYnVpbGQvcmVhZG1lLnR4dAorKysgYi9QQ2J1aWxkL3JlYWRtZS50eHQKQEAgLTM3LDcgKzM3LDcgQEAKICAgIHJ1bm5pbmcgYSBQeXRob24gY29yZSBidWlsZGJvdCB0ZXN0IHNsYXZlOyBzZWUgU1VCUFJPSkVDVFMgYmVsb3cpCiAKIFdoZW4gdXNpbmcgdGhlIERlYnVnIHNldHRpbmcsIHRoZSBvdXRwdXQgZmlsZXMgaGF2ZSBhIF9kIGFkZGVkIHRvCi10aGVpciBuYW1lOiAgcHl0aG9uMzJfZC5kbGwsIHB5dGhvbl9kLmV4ZSwgcGFyc2VyX2QucHlkLCBhbmQgc28gb24uIEJvdGgKK3RoZWlyIG5hbWU6ICBweXRob24zM19kLmRsbCwgcHl0aG9uX2QuZXhlLCBwYXJzZXJfZC5weWQsIGFuZCBzbyBvbi4gQm90aAogdGhlIGJ1aWxkIGFuZCBydCBiYXRjaCBmaWxlcyBhY2NlcHQgYSAtZCBvcHRpb24gZm9yIGRlYnVnIGJ1aWxkcy4KIAogVGhlIDMyYml0IGJ1aWxkcyBlbmQgdXAgaW4gdGhlIHNvbHV0aW9uIGZvbGRlciBQQ2J1aWxkIHdoaWxlIHRoZSB4NjQgYnVpbGRzCkBAIC05Miw2ICs5Miw5IEBACiBfdGVzdGNhcGkKICAgICB0ZXN0cyBvZiB0aGUgUHl0aG9uIEMgQVBJLCBydW4gdmlhIExpYi90ZXN0L3Rlc3RfY2FwaS5weSwgYW5kCiAgICAgaW1wbGVtZW50ZWQgYnkgbW9kdWxlIE1vZHVsZXMvX3Rlc3RjYXBpbW9kdWxlLmMKK190ZXN0YnVmZmVyCisgICAgYnVmZmVyIHByb3RvY29sIHRlc3RzLCBydW4gdmlhIExpYi90ZXN0L3Rlc3RfYnVmZmVyLnB5LCBhbmQKKyAgICBpbXBsZW1lbnRlZCBieSBtb2R1bGUgTW9kdWxlcy9fdGVzdGJ1ZmZlci5jCiBweWV4cGF0CiAgICAgUHl0aG9uIHdyYXBwZXIgZm9yIGFjY2VsZXJhdGVkIFhNTCBwYXJzaW5nLCB3aGljaCBpbmNvcnBvcmF0ZXMgc3RhYmxlCiAgICAgY29kZSBmcm9tIHRoZSBFeHBhdCBwcm9qZWN0OiAgaHR0cDovL3NvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy9leHBhdC8KQEAgLTExMiw5ICsxMTUsOSBAQAogICAgIHByZS1idWlsdCBUY2wvVGsgaW4gZWl0aGVyIC4uXC4uXHRjbHRrIGZvciAzMi1iaXQgb3IgLi5cLi5cdGNsdGs2NCBmb3IKICAgICA2NC1iaXQgKHJlbGF0aXZlIHRvIHRoaXMgZGlyZWN0b3J5KS4gIFNlZSBiZWxvdyBmb3IgaW5zdHJ1Y3Rpb25zIHRvIGJ1aWxkCiAgICAgVGNsL1RrLiAKLWJ6MgotICAgIFB5dGhvbiB3cmFwcGVyIGZvciB0aGUgbGliYnoyIGNvbXByZXNzaW9uIGxpYnJhcnkuICBIb21lcGFnZQotICAgICAgICBodHRwOi8vc291cmNlcy5yZWRoYXQuY29tL2J6aXAyLworX2J6MgorICAgIFB5dGhvbiB3cmFwcGVyIGZvciB0aGUgbGliYnppcDIgY29tcHJlc3Npb24gbGlicmFyeS4gIEhvbWVwYWdlCisgICAgICAgIGh0dHA6Ly93d3cuYnppcC5vcmcvCiAgICAgRG93bmxvYWQgdGhlIHNvdXJjZSBmcm9tIHRoZSBweXRob24ub3JnIGNvcHkgaW50byB0aGUgZGlzdAogICAgIGRpcmVjdG9yeToKIApAQCAtMTMzLDYgKzEzNiwxMiBAQAogCiAgICAgQWxsIG9mIHRoaXMgbWFuYWdlZCB0byBidWlsZCBsaWJiejIubGliIGluIAogICAgIGJ6aXAyLTEuMC41XCRwbGF0Zm9ybS0kY29uZmlndXJhdGlvblwsIHdoaWNoIHRoZSBQeXRob24gcHJvamVjdCBsaW5rcyBpbi4KK19sem1hCisgICAgUHl0aG9uIHdyYXBwZXIgZm9yIHRoZSBsaWJsem1hIGNvbXByZXNzaW9uIGxpYnJhcnkuCisKKyAgICBEb3dubG9hZCB0aGUgcHJlLWJ1aWx0IFdpbmRvd3MgYmluYXJpZXMgZnJvbSBodHRwOi8vdHVrYWFuaS5vcmcveHovLCBhbmQKKyAgICBleHRyYWN0IHRvIC4uXHh6LTUuMC4zLiBJZiB5b3UgYXJlIHVzaW5nIGEgbW9yZSByZWNlbnQgdmVyc2lvbiBvZiBsaWJsem1hLAorICAgIGl0IHdpbGwgYmUgbmVjZXNzYXJ5IHRvIHJlbmFtZSB0aGUgZGlyZWN0b3J5IGZyb20geHotPFZFUlNJT04+IHRvIHh6LTUuMC4zLgogCiBfc3NsCiAgICAgUHl0aG9uIHdyYXBwZXIgZm9yIHRoZSBzZWN1cmUgc29ja2V0cyBsaWJyYXJ5LgpkaWZmIC0tZ2l0IGEvUGFyc2VyL1B5dGhvbi5hc2RsIGIvUGFyc2VyL1B5dGhvbi5hc2RsCmluZGV4IDk0MDdiMmYuLjZiMDZkZWMgMTAwNjQ0Ci0tLSBhL1BhcnNlci9QeXRob24uYXNkbAorKysgYi9QYXJzZXIvUHl0aG9uLmFzZGwKQEAgLTEsMTE5ICsxLDEyMCBAQAotLS0gQVNETCdzIGZvdXIgYnVpbHRpbiB0eXBlcyBhcmUgaWRlbnRpZmllciwgaW50LCBzdHJpbmcsIG9iamVjdAorLS0gQVNETCdzIGZpdmUgYnVpbHRpbiB0eXBlcyBhcmUgaWRlbnRpZmllciwgaW50LCBzdHJpbmcsIGJ5dGVzLCBvYmplY3QKIAotbW9kdWxlIFB5dGhvbiB2ZXJzaW9uICIkUmV2aXNpb24kIgorbW9kdWxlIFB5dGhvbgogewotCW1vZCA9IE1vZHVsZShzdG10KiBib2R5KQotCSAgICB8IEludGVyYWN0aXZlKHN0bXQqIGJvZHkpCi0JICAgIHwgRXhwcmVzc2lvbihleHByIGJvZHkpCisgICAgbW9kID0gTW9kdWxlKHN0bXQqIGJvZHkpCisgICAgICAgIHwgSW50ZXJhY3RpdmUoc3RtdCogYm9keSkKKyAgICAgICAgfCBFeHByZXNzaW9uKGV4cHIgYm9keSkKIAotCSAgICAtLSBub3QgcmVhbGx5IGFuIGFjdHVhbCBub2RlIGJ1dCB1c2VmdWwgaW4gSnl0aG9uJ3MgdHlwZXN5c3RlbS4KLQkgICAgfCBTdWl0ZShzdG10KiBib2R5KQorICAgICAgICAtLSBub3QgcmVhbGx5IGFuIGFjdHVhbCBub2RlIGJ1dCB1c2VmdWwgaW4gSnl0aG9uJ3MgdHlwZXN5c3RlbS4KKyAgICAgICAgfCBTdWl0ZShzdG10KiBib2R5KQogCi0Jc3RtdCA9IEZ1bmN0aW9uRGVmKGlkZW50aWZpZXIgbmFtZSwgYXJndW1lbnRzIGFyZ3MsIAorICAgIHN0bXQgPSBGdW5jdGlvbkRlZihpZGVudGlmaWVyIG5hbWUsIGFyZ3VtZW50cyBhcmdzLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0bXQqIGJvZHksIGV4cHIqIGRlY29yYXRvcl9saXN0LCBleHByPyByZXR1cm5zKQotCSAgICAgIHwgQ2xhc3NEZWYoaWRlbnRpZmllciBuYW1lLCAKLQkJCSBleHByKiBiYXNlcywKLQkJCSBrZXl3b3JkKiBrZXl3b3JkcywKLQkJCSBleHByPyBzdGFyYXJncywKLQkJCSBleHByPyBrd2FyZ3MsCi0JCQkgc3RtdCogYm9keSwKLQkJCSBleHByKiBkZWNvcmF0b3JfbGlzdCkKLQkgICAgICB8IFJldHVybihleHByPyB2YWx1ZSkKKyAgICAgICAgICB8IENsYXNzRGVmKGlkZW50aWZpZXIgbmFtZSwgCisgICAgICAgICAgICAgZXhwciogYmFzZXMsCisgICAgICAgICAgICAga2V5d29yZCoga2V5d29yZHMsCisgICAgICAgICAgICAgZXhwcj8gc3RhcmFyZ3MsCisgICAgICAgICAgICAgZXhwcj8ga3dhcmdzLAorICAgICAgICAgICAgIHN0bXQqIGJvZHksCisgICAgICAgICAgICAgZXhwciogZGVjb3JhdG9yX2xpc3QpCisgICAgICAgICAgfCBSZXR1cm4oZXhwcj8gdmFsdWUpCiAKLQkgICAgICB8IERlbGV0ZShleHByKiB0YXJnZXRzKQotCSAgICAgIHwgQXNzaWduKGV4cHIqIHRhcmdldHMsIGV4cHIgdmFsdWUpCi0JICAgICAgfCBBdWdBc3NpZ24oZXhwciB0YXJnZXQsIG9wZXJhdG9yIG9wLCBleHByIHZhbHVlKQorICAgICAgICAgIHwgRGVsZXRlKGV4cHIqIHRhcmdldHMpCisgICAgICAgICAgfCBBc3NpZ24oZXhwciogdGFyZ2V0cywgZXhwciB2YWx1ZSkKKyAgICAgICAgICB8IEF1Z0Fzc2lnbihleHByIHRhcmdldCwgb3BlcmF0b3Igb3AsIGV4cHIgdmFsdWUpCiAKLQkgICAgICAtLSB1c2UgJ29yZWxzZScgYmVjYXVzZSBlbHNlIGlzIGEga2V5d29yZCBpbiB0YXJnZXQgbGFuZ3VhZ2VzCi0JICAgICAgfCBGb3IoZXhwciB0YXJnZXQsIGV4cHIgaXRlciwgc3RtdCogYm9keSwgc3RtdCogb3JlbHNlKQotCSAgICAgIHwgV2hpbGUoZXhwciB0ZXN0LCBzdG10KiBib2R5LCBzdG10KiBvcmVsc2UpCi0JICAgICAgfCBJZihleHByIHRlc3QsIHN0bXQqIGJvZHksIHN0bXQqIG9yZWxzZSkKLQkgICAgICB8IFdpdGgoZXhwciBjb250ZXh0X2V4cHIsIGV4cHI/IG9wdGlvbmFsX3ZhcnMsIHN0bXQqIGJvZHkpCisgICAgICAgICAgLS0gdXNlICdvcmVsc2UnIGJlY2F1c2UgZWxzZSBpcyBhIGtleXdvcmQgaW4gdGFyZ2V0IGxhbmd1YWdlcworICAgICAgICAgIHwgRm9yKGV4cHIgdGFyZ2V0LCBleHByIGl0ZXIsIHN0bXQqIGJvZHksIHN0bXQqIG9yZWxzZSkKKyAgICAgICAgICB8IFdoaWxlKGV4cHIgdGVzdCwgc3RtdCogYm9keSwgc3RtdCogb3JlbHNlKQorICAgICAgICAgIHwgSWYoZXhwciB0ZXN0LCBzdG10KiBib2R5LCBzdG10KiBvcmVsc2UpCisgICAgICAgICAgfCBXaXRoKHdpdGhpdGVtKiBpdGVtcywgc3RtdCogYm9keSkKIAotCSAgICAgIHwgUmFpc2UoZXhwcj8gZXhjLCBleHByPyBjYXVzZSkKLQkgICAgICB8IFRyeUV4Y2VwdChzdG10KiBib2R5LCBleGNlcHRoYW5kbGVyKiBoYW5kbGVycywgc3RtdCogb3JlbHNlKQotCSAgICAgIHwgVHJ5RmluYWxseShzdG10KiBib2R5LCBzdG10KiBmaW5hbGJvZHkpCi0JICAgICAgfCBBc3NlcnQoZXhwciB0ZXN0LCBleHByPyBtc2cpCisgICAgICAgICAgfCBSYWlzZShleHByPyBleGMsIGV4cHI/IGNhdXNlKQorICAgICAgICAgIHwgVHJ5KHN0bXQqIGJvZHksIGV4Y2VwdGhhbmRsZXIqIGhhbmRsZXJzLCBzdG10KiBvcmVsc2UsIHN0bXQqIGZpbmFsYm9keSkKKyAgICAgICAgICB8IEFzc2VydChleHByIHRlc3QsIGV4cHI/IG1zZykKIAotCSAgICAgIHwgSW1wb3J0KGFsaWFzKiBuYW1lcykKLQkgICAgICB8IEltcG9ydEZyb20oaWRlbnRpZmllcj8gbW9kdWxlLCBhbGlhcyogbmFtZXMsIGludD8gbGV2ZWwpCisgICAgICAgICAgfCBJbXBvcnQoYWxpYXMqIG5hbWVzKQorICAgICAgICAgIHwgSW1wb3J0RnJvbShpZGVudGlmaWVyPyBtb2R1bGUsIGFsaWFzKiBuYW1lcywgaW50PyBsZXZlbCkKIAotCSAgICAgIHwgR2xvYmFsKGlkZW50aWZpZXIqIG5hbWVzKQotCSAgICAgIHwgTm9ubG9jYWwoaWRlbnRpZmllciogbmFtZXMpCi0JICAgICAgfCBFeHByKGV4cHIgdmFsdWUpCi0JICAgICAgfCBQYXNzIHwgQnJlYWsgfCBDb250aW51ZQorICAgICAgICAgIHwgR2xvYmFsKGlkZW50aWZpZXIqIG5hbWVzKQorICAgICAgICAgIHwgTm9ubG9jYWwoaWRlbnRpZmllciogbmFtZXMpCisgICAgICAgICAgfCBFeHByKGV4cHIgdmFsdWUpCisgICAgICAgICAgfCBQYXNzIHwgQnJlYWsgfCBDb250aW51ZQogCi0JICAgICAgLS0gWFhYIEp5dGhvbiB3aWxsIGJlIGRpZmZlcmVudAotCSAgICAgIC0tIGNvbF9vZmZzZXQgaXMgdGhlIGJ5dGUgb2Zmc2V0IGluIHRoZSB1dGY4IHN0cmluZyB0aGUgcGFyc2VyIHVzZXMKLQkgICAgICBhdHRyaWJ1dGVzIChpbnQgbGluZW5vLCBpbnQgY29sX29mZnNldCkKKyAgICAgICAgICAtLSBYWFggSnl0aG9uIHdpbGwgYmUgZGlmZmVyZW50CisgICAgICAgICAgLS0gY29sX29mZnNldCBpcyB0aGUgYnl0ZSBvZmZzZXQgaW4gdGhlIHV0Zjggc3RyaW5nIHRoZSBwYXJzZXIgdXNlcworICAgICAgICAgIGF0dHJpYnV0ZXMgKGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0KQogCi0JICAgICAgLS0gQm9vbE9wKCkgY2FuIHVzZSBsZWZ0ICYgcmlnaHQ/Ci0JZXhwciA9IEJvb2xPcChib29sb3Agb3AsIGV4cHIqIHZhbHVlcykKLQkgICAgIHwgQmluT3AoZXhwciBsZWZ0LCBvcGVyYXRvciBvcCwgZXhwciByaWdodCkKLQkgICAgIHwgVW5hcnlPcCh1bmFyeW9wIG9wLCBleHByIG9wZXJhbmQpCi0JICAgICB8IExhbWJkYShhcmd1bWVudHMgYXJncywgZXhwciBib2R5KQotCSAgICAgfCBJZkV4cChleHByIHRlc3QsIGV4cHIgYm9keSwgZXhwciBvcmVsc2UpCi0JICAgICB8IERpY3QoZXhwcioga2V5cywgZXhwciogdmFsdWVzKQotCSAgICAgfCBTZXQoZXhwciogZWx0cykKLQkgICAgIHwgTGlzdENvbXAoZXhwciBlbHQsIGNvbXByZWhlbnNpb24qIGdlbmVyYXRvcnMpCi0JICAgICB8IFNldENvbXAoZXhwciBlbHQsIGNvbXByZWhlbnNpb24qIGdlbmVyYXRvcnMpCi0JICAgICB8IERpY3RDb21wKGV4cHIga2V5LCBleHByIHZhbHVlLCBjb21wcmVoZW5zaW9uKiBnZW5lcmF0b3JzKQotCSAgICAgfCBHZW5lcmF0b3JFeHAoZXhwciBlbHQsIGNvbXByZWhlbnNpb24qIGdlbmVyYXRvcnMpCi0JICAgICAtLSB0aGUgZ3JhbW1hciBjb25zdHJhaW5zIHdoZXJlIHlpZWxkIGV4cHJlc3Npb25zIGNhbiBvY2N1cgotCSAgICAgfCBZaWVsZChleHByPyB2YWx1ZSkKLQkgICAgIC0tIG5lZWQgc2VxdWVuY2VzIGZvciBjb21wYXJlIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4KLQkgICAgIC0tIHggPCA0IDwgMyBhbmQgKHggPCA0KSA8IDMKLQkgICAgIHwgQ29tcGFyZShleHByIGxlZnQsIGNtcG9wKiBvcHMsIGV4cHIqIGNvbXBhcmF0b3JzKQotCSAgICAgfCBDYWxsKGV4cHIgZnVuYywgZXhwciogYXJncywga2V5d29yZCoga2V5d29yZHMsCi0JCQkgZXhwcj8gc3RhcmFyZ3MsIGV4cHI/IGt3YXJncykKLQkgICAgIHwgTnVtKG9iamVjdCBuKSAtLSBhIG51bWJlciBhcyBhIFB5T2JqZWN0LgotCSAgICAgfCBTdHIoc3RyaW5nIHMpIC0tIG5lZWQgdG8gc3BlY2lmeSByYXcsIHVuaWNvZGUsIGV0Yz8KLQkgICAgIHwgQnl0ZXMoc3RyaW5nIHMpCi0JICAgICB8IEVsbGlwc2lzCi0JICAgICAtLSBvdGhlciBsaXRlcmFscz8gYm9vbHM/CisgICAgICAgICAgLS0gQm9vbE9wKCkgY2FuIHVzZSBsZWZ0ICYgcmlnaHQ/CisgICAgZXhwciA9IEJvb2xPcChib29sb3Agb3AsIGV4cHIqIHZhbHVlcykKKyAgICAgICAgIHwgQmluT3AoZXhwciBsZWZ0LCBvcGVyYXRvciBvcCwgZXhwciByaWdodCkKKyAgICAgICAgIHwgVW5hcnlPcCh1bmFyeW9wIG9wLCBleHByIG9wZXJhbmQpCisgICAgICAgICB8IExhbWJkYShhcmd1bWVudHMgYXJncywgZXhwciBib2R5KQorICAgICAgICAgfCBJZkV4cChleHByIHRlc3QsIGV4cHIgYm9keSwgZXhwciBvcmVsc2UpCisgICAgICAgICB8IERpY3QoZXhwcioga2V5cywgZXhwciogdmFsdWVzKQorICAgICAgICAgfCBTZXQoZXhwciogZWx0cykKKyAgICAgICAgIHwgTGlzdENvbXAoZXhwciBlbHQsIGNvbXByZWhlbnNpb24qIGdlbmVyYXRvcnMpCisgICAgICAgICB8IFNldENvbXAoZXhwciBlbHQsIGNvbXByZWhlbnNpb24qIGdlbmVyYXRvcnMpCisgICAgICAgICB8IERpY3RDb21wKGV4cHIga2V5LCBleHByIHZhbHVlLCBjb21wcmVoZW5zaW9uKiBnZW5lcmF0b3JzKQorICAgICAgICAgfCBHZW5lcmF0b3JFeHAoZXhwciBlbHQsIGNvbXByZWhlbnNpb24qIGdlbmVyYXRvcnMpCisgICAgICAgICAtLSB0aGUgZ3JhbW1hciBjb25zdHJhaW5zIHdoZXJlIHlpZWxkIGV4cHJlc3Npb25zIGNhbiBvY2N1cgorICAgICAgICAgfCBZaWVsZChleHByPyB2YWx1ZSkKKyAgICAgICAgICAgICB8IFlpZWxkRnJvbShleHByPyB2YWx1ZSkKKyAgICAgICAgIC0tIG5lZWQgc2VxdWVuY2VzIGZvciBjb21wYXJlIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4KKyAgICAgICAgIC0tIHggPCA0IDwgMyBhbmQgKHggPCA0KSA8IDMKKyAgICAgICAgIHwgQ29tcGFyZShleHByIGxlZnQsIGNtcG9wKiBvcHMsIGV4cHIqIGNvbXBhcmF0b3JzKQorICAgICAgICAgfCBDYWxsKGV4cHIgZnVuYywgZXhwciogYXJncywga2V5d29yZCoga2V5d29yZHMsCisgICAgICAgICAgICAgZXhwcj8gc3RhcmFyZ3MsIGV4cHI/IGt3YXJncykKKyAgICAgICAgIHwgTnVtKG9iamVjdCBuKSAtLSBhIG51bWJlciBhcyBhIFB5T2JqZWN0LgorICAgICAgICAgfCBTdHIoc3RyaW5nIHMpIC0tIG5lZWQgdG8gc3BlY2lmeSByYXcsIHVuaWNvZGUsIGV0Yz8KKyAgICAgICAgIHwgQnl0ZXMoYnl0ZXMgcykKKyAgICAgICAgIHwgRWxsaXBzaXMKKyAgICAgICAgIC0tIG90aGVyIGxpdGVyYWxzPyBib29scz8KIAotCSAgICAgLS0gdGhlIGZvbGxvd2luZyBleHByZXNzaW9uIGNhbiBhcHBlYXIgaW4gYXNzaWdubWVudCBjb250ZXh0Ci0JICAgICB8IEF0dHJpYnV0ZShleHByIHZhbHVlLCBpZGVudGlmaWVyIGF0dHIsIGV4cHJfY29udGV4dCBjdHgpCi0JICAgICB8IFN1YnNjcmlwdChleHByIHZhbHVlLCBzbGljZSBzbGljZSwgZXhwcl9jb250ZXh0IGN0eCkKLQkgICAgIHwgU3RhcnJlZChleHByIHZhbHVlLCBleHByX2NvbnRleHQgY3R4KQotCSAgICAgfCBOYW1lKGlkZW50aWZpZXIgaWQsIGV4cHJfY29udGV4dCBjdHgpCi0JICAgICB8IExpc3QoZXhwciogZWx0cywgZXhwcl9jb250ZXh0IGN0eCkgCi0JICAgICB8IFR1cGxlKGV4cHIqIGVsdHMsIGV4cHJfY29udGV4dCBjdHgpCisgICAgICAgICAtLSB0aGUgZm9sbG93aW5nIGV4cHJlc3Npb24gY2FuIGFwcGVhciBpbiBhc3NpZ25tZW50IGNvbnRleHQKKyAgICAgICAgIHwgQXR0cmlidXRlKGV4cHIgdmFsdWUsIGlkZW50aWZpZXIgYXR0ciwgZXhwcl9jb250ZXh0IGN0eCkKKyAgICAgICAgIHwgU3Vic2NyaXB0KGV4cHIgdmFsdWUsIHNsaWNlIHNsaWNlLCBleHByX2NvbnRleHQgY3R4KQorICAgICAgICAgfCBTdGFycmVkKGV4cHIgdmFsdWUsIGV4cHJfY29udGV4dCBjdHgpCisgICAgICAgICB8IE5hbWUoaWRlbnRpZmllciBpZCwgZXhwcl9jb250ZXh0IGN0eCkKKyAgICAgICAgIHwgTGlzdChleHByKiBlbHRzLCBleHByX2NvbnRleHQgY3R4KSAKKyAgICAgICAgIHwgVHVwbGUoZXhwciogZWx0cywgZXhwcl9jb250ZXh0IGN0eCkKIAotCSAgICAgIC0tIGNvbF9vZmZzZXQgaXMgdGhlIGJ5dGUgb2Zmc2V0IGluIHRoZSB1dGY4IHN0cmluZyB0aGUgcGFyc2VyIHVzZXMKLQkgICAgICBhdHRyaWJ1dGVzIChpbnQgbGluZW5vLCBpbnQgY29sX29mZnNldCkKKyAgICAgICAgICAtLSBjb2xfb2Zmc2V0IGlzIHRoZSBieXRlIG9mZnNldCBpbiB0aGUgdXRmOCBzdHJpbmcgdGhlIHBhcnNlciB1c2VzCisgICAgICAgICAgYXR0cmlidXRlcyAoaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQpCiAKLQlleHByX2NvbnRleHQgPSBMb2FkIHwgU3RvcmUgfCBEZWwgfCBBdWdMb2FkIHwgQXVnU3RvcmUgfCBQYXJhbQorICAgIGV4cHJfY29udGV4dCA9IExvYWQgfCBTdG9yZSB8IERlbCB8IEF1Z0xvYWQgfCBBdWdTdG9yZSB8IFBhcmFtCiAKLQlzbGljZSA9IFNsaWNlKGV4cHI/IGxvd2VyLCBleHByPyB1cHBlciwgZXhwcj8gc3RlcCkgCi0JICAgICAgfCBFeHRTbGljZShzbGljZSogZGltcykgCi0JICAgICAgfCBJbmRleChleHByIHZhbHVlKSAKKyAgICBzbGljZSA9IFNsaWNlKGV4cHI/IGxvd2VyLCBleHByPyB1cHBlciwgZXhwcj8gc3RlcCkgCisgICAgICAgICAgfCBFeHRTbGljZShzbGljZSogZGltcykgCisgICAgICAgICAgfCBJbmRleChleHByIHZhbHVlKSAKIAotCWJvb2xvcCA9IEFuZCB8IE9yIAorICAgIGJvb2xvcCA9IEFuZCB8IE9yIAogCi0Jb3BlcmF0b3IgPSBBZGQgfCBTdWIgfCBNdWx0IHwgRGl2IHwgTW9kIHwgUG93IHwgTFNoaWZ0IAorICAgIG9wZXJhdG9yID0gQWRkIHwgU3ViIHwgTXVsdCB8IERpdiB8IE1vZCB8IFBvdyB8IExTaGlmdCAKICAgICAgICAgICAgICAgICAgfCBSU2hpZnQgfCBCaXRPciB8IEJpdFhvciB8IEJpdEFuZCB8IEZsb29yRGl2CiAKLQl1bmFyeW9wID0gSW52ZXJ0IHwgTm90IHwgVUFkZCB8IFVTdWIKKyAgICB1bmFyeW9wID0gSW52ZXJ0IHwgTm90IHwgVUFkZCB8IFVTdWIKIAotCWNtcG9wID0gRXEgfCBOb3RFcSB8IEx0IHwgTHRFIHwgR3QgfCBHdEUgfCBJcyB8IElzTm90IHwgSW4gfCBOb3RJbgorICAgIGNtcG9wID0gRXEgfCBOb3RFcSB8IEx0IHwgTHRFIHwgR3QgfCBHdEUgfCBJcyB8IElzTm90IHwgSW4gfCBOb3RJbgogCi0JY29tcHJlaGVuc2lvbiA9IChleHByIHRhcmdldCwgZXhwciBpdGVyLCBleHByKiBpZnMpCisgICAgY29tcHJlaGVuc2lvbiA9IChleHByIHRhcmdldCwgZXhwciBpdGVyLCBleHByKiBpZnMpCiAKLQktLSBub3Qgc3VyZSB3aGF0IHRvIGNhbGwgdGhlIGZpcnN0IGFyZ3VtZW50IGZvciByYWlzZSBhbmQgZXhjZXB0Ci0JZXhjZXB0aGFuZGxlciA9IEV4Y2VwdEhhbmRsZXIoZXhwcj8gdHlwZSwgaWRlbnRpZmllcj8gbmFtZSwgc3RtdCogYm9keSkKLQkgICAgICAgICAgICAgICAgYXR0cmlidXRlcyAoaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQpCisgICAgZXhjZXB0aGFuZGxlciA9IEV4Y2VwdEhhbmRsZXIoZXhwcj8gdHlwZSwgaWRlbnRpZmllcj8gbmFtZSwgc3RtdCogYm9keSkKKyAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlcyAoaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQpCiAKLQlhcmd1bWVudHMgPSAoYXJnKiBhcmdzLCBpZGVudGlmaWVyPyB2YXJhcmcsIGV4cHI/IHZhcmFyZ2Fubm90YXRpb24sCisgICAgYXJndW1lbnRzID0gKGFyZyogYXJncywgaWRlbnRpZmllcj8gdmFyYXJnLCBleHByPyB2YXJhcmdhbm5vdGF0aW9uLAogICAgICAgICAgICAgICAgICAgICAgYXJnKiBrd29ubHlhcmdzLCBpZGVudGlmaWVyPyBrd2FyZywKICAgICAgICAgICAgICAgICAgICAgIGV4cHI/IGt3YXJnYW5ub3RhdGlvbiwgZXhwciogZGVmYXVsdHMsCiAgICAgICAgICAgICAgICAgICAgICBleHByKiBrd19kZWZhdWx0cykKLQlhcmcgPSAoaWRlbnRpZmllciBhcmcsIGV4cHI/IGFubm90YXRpb24pCisgICAgYXJnID0gKGlkZW50aWZpZXIgYXJnLCBleHByPyBhbm5vdGF0aW9uKQogCi0gICAgICAgIC0tIGtleXdvcmQgYXJndW1lbnRzIHN1cHBsaWVkIHRvIGNhbGwKLSAgICAgICAga2V5d29yZCA9IChpZGVudGlmaWVyIGFyZywgZXhwciB2YWx1ZSkKKyAgICAtLSBrZXl3b3JkIGFyZ3VtZW50cyBzdXBwbGllZCB0byBjYWxsCisgICAga2V5d29yZCA9IChpZGVudGlmaWVyIGFyZywgZXhwciB2YWx1ZSkKIAotICAgICAgICAtLSBpbXBvcnQgbmFtZSB3aXRoIG9wdGlvbmFsICdhcycgYWxpYXMuCi0gICAgICAgIGFsaWFzID0gKGlkZW50aWZpZXIgbmFtZSwgaWRlbnRpZmllcj8gYXNuYW1lKQorICAgIC0tIGltcG9ydCBuYW1lIHdpdGggb3B0aW9uYWwgJ2FzJyBhbGlhcy4KKyAgICBhbGlhcyA9IChpZGVudGlmaWVyIG5hbWUsIGlkZW50aWZpZXI/IGFzbmFtZSkKKworICAgIHdpdGhpdGVtID0gKGV4cHIgY29udGV4dF9leHByLCBleHByPyBvcHRpb25hbF92YXJzKQogfQogCmRpZmYgLS1naXQgYS9QYXJzZXIvYXNkbC5weSBiL1BhcnNlci9hc2RsLnB5CmluZGV4IDdiNGUyZGMuLjAxYThiNWUgMTAwNjQ0Ci0tLSBhL1BhcnNlci9hc2RsLnB5CisrKyBiL1BhcnNlci9hc2RsLnB5CkBAIC0xMTQsMjggKzExNCwyMCBAQAogICAgICAgICByYWlzZSBBU0RMU3ludGF4RXJyb3IodG9rLmxpbmVubywgdG9rKQogCiAgICAgZGVmIHBfbW9kdWxlXzAoc2VsZiwgaW5mbyk6Ci0gICAgICAgICIgbW9kdWxlIDo6PSBJZCBJZCB2ZXJzaW9uIHsgfSAiCi0gICAgICAgIG1vZHVsZSwgbmFtZSwgdmVyc2lvbiwgXzAsIF8xID0gaW5mbworICAgICAgICAiIG1vZHVsZSA6Oj0gSWQgSWQgeyB9ICIKKyAgICAgICAgbW9kdWxlLCBuYW1lLCBfMCwgXzEgPSBpbmZvCiAgICAgICAgIGlmIG1vZHVsZS52YWx1ZSAhPSAibW9kdWxlIjoKICAgICAgICAgICAgIHJhaXNlIEFTRExTeW50YXhFcnJvcihtb2R1bGUubGluZW5vLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZz0iZXhwZWN0ZWQgJ21vZHVsZScsIGZvdW5kICVzIiAlIG1vZHVsZSkKLSAgICAgICAgcmV0dXJuIE1vZHVsZShuYW1lLCBOb25lLCB2ZXJzaW9uKQorICAgICAgICByZXR1cm4gTW9kdWxlKG5hbWUsIE5vbmUpCiAKICAgICBkZWYgcF9tb2R1bGUoc2VsZiwgaW5mbyk6Ci0gICAgICAgICIgbW9kdWxlIDo6PSBJZCBJZCB2ZXJzaW9uIHsgZGVmaW5pdGlvbnMgfSAiCi0gICAgICAgIG1vZHVsZSwgbmFtZSwgdmVyc2lvbiwgXzAsIGRlZmluaXRpb25zLCBfMSA9IGluZm8KKyAgICAgICAgIiBtb2R1bGUgOjo9IElkIElkIHsgZGVmaW5pdGlvbnMgfSAiCisgICAgICAgIG1vZHVsZSwgbmFtZSwgXzAsIGRlZmluaXRpb25zLCBfMSA9IGluZm8KICAgICAgICAgaWYgbW9kdWxlLnZhbHVlICE9ICJtb2R1bGUiOgogICAgICAgICAgICAgcmFpc2UgQVNETFN5bnRheEVycm9yKG1vZHVsZS5saW5lbm8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSJleHBlY3RlZCAnbW9kdWxlJywgZm91bmQgJXMiICUgbW9kdWxlKQotICAgICAgICByZXR1cm4gTW9kdWxlKG5hbWUsIGRlZmluaXRpb25zLCB2ZXJzaW9uKQotCi0gICAgZGVmIHBfdmVyc2lvbihzZWxmLCBpbmZvKToKLSAgICAgICAgInZlcnNpb24gOjo9IElkIFN0cmluZyIKLSAgICAgICAgdmVyc2lvbiwgViA9IGluZm8KLSAgICAgICAgaWYgdmVyc2lvbi52YWx1ZSAhPSAidmVyc2lvbiI6Ci0gICAgICAgICAgICByYWlzZSBBU0RMU3ludGF4RXJyb3IodmVyc2lvbi5saW5lbm8sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSJleHBlY3RlZCAndmVyc2lvbicsIGZvdW5kICUiICUgdmVyc2lvbikKLSAgICAgICAgcmV0dXJuIFYKKyAgICAgICAgcmV0dXJuIE1vZHVsZShuYW1lLCBkZWZpbml0aW9ucykKIAogICAgIGRlZiBwX2RlZmluaXRpb25fMChzZWxmLCBkZWZpbml0aW9uKToKICAgICAgICAgIiBkZWZpbml0aW9ucyA6Oj0gZGVmaW5pdGlvbiAiCkBAIC0yMzYsNyArMjI4LDcgQEAKICAgICAgICAgIiBmaWVsZCA6Oj0gSWQgPyAiCiAgICAgICAgIHJldHVybiBGaWVsZCh0eXBlWzBdLCBvcHQ9VHJ1ZSkKIAotYnVpbHRpbl90eXBlcyA9ICgiaWRlbnRpZmllciIsICJzdHJpbmciLCAiaW50IiwgImJvb2wiLCAib2JqZWN0IikKK2J1aWx0aW5fdHlwZXMgPSAoImlkZW50aWZpZXIiLCAic3RyaW5nIiwgImJ5dGVzIiwgImludCIsICJvYmplY3QiKQogCiAjIGJlbG93IGlzIGEgY29sbGVjdGlvbiBvZiBjbGFzc2VzIHRvIGNhcHR1cmUgdGhlIEFTVCBvZiBhbiBBU1QgOi0pCiAjIG5vdCBzdXJlIGlmIGFueSBvZiB0aGUgbWV0aG9kcyBhcmUgdXNlZnVsIHlldCwgYnV0IEknbSBhZGRpbmcgdGhlbQpAQCAtMjQ2LDEwICsyMzgsOSBAQAogICAgIHBhc3MgIyBhIG1hcmtlciBjbGFzcwogCiBjbGFzcyBNb2R1bGUoQVNUKToKLSAgICBkZWYgX19pbml0X18oc2VsZiwgbmFtZSwgZGZucywgdmVyc2lvbik6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIGRmbnMpOgogICAgICAgICBzZWxmLm5hbWUgPSBuYW1lCiAgICAgICAgIHNlbGYuZGZucyA9IGRmbnMKLSAgICAgICAgc2VsZi52ZXJzaW9uID0gdmVyc2lvbgogICAgICAgICBzZWxmLnR5cGVzID0ge30gIyBtYXBzIHR5cGUgbmFtZSB0byB2YWx1ZSAoZnJvbSBkZm5zKQogICAgICAgICBmb3IgdHlwZSBpbiBkZm5zOgogICAgICAgICAgICAgc2VsZi50eXBlc1t0eXBlLm5hbWUudmFsdWVdID0gdHlwZS52YWx1ZQpkaWZmIC0tZ2l0IGEvUGFyc2VyL2FzZGxfYy5weSBiL1BhcnNlci9hc2RsX2MucHkKaW5kZXggYjg1YzA3ZS4uMDdjMDZkZSAxMDA3NTUKLS0tIGEvUGFyc2VyL2FzZGxfYy5weQorKysgYi9QYXJzZXIvYXNkbF9jLnB5CkBAIC01LDYgKzUsNyBAQAogIyBoYW5kbGUgZmllbGRzIHRoYXQgaGF2ZSBhIHR5cGUgYnV0IG5vIG5hbWUKIAogaW1wb3J0IG9zLCBzeXMKK2ltcG9ydCBzdWJwcm9jZXNzCiAKIGltcG9ydCBhc2RsCiAKQEAgLTg0LDggKzg1LDE2IEBACiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZSk6CiAgICAgICAgIHNlbGYuZmlsZSA9IGZpbGUKKyAgICAgICAgc2VsZi5pZGVudGlmaWVycyA9IHNldCgpCiAgICAgICAgIHN1cGVyKEVtaXRWaXNpdG9yLCBzZWxmKS5fX2luaXRfXygpCiAKKyAgICBkZWYgZW1pdF9pZGVudGlmaWVyKHNlbGYsIG5hbWUpOgorICAgICAgICBuYW1lID0gc3RyKG5hbWUpCisgICAgICAgIGlmIG5hbWUgaW4gc2VsZi5pZGVudGlmaWVyczoKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBzZWxmLmVtaXQoIl9QeV9JREVOVElGSUVSKCVzKTsiICUgbmFtZSwgMCkKKyAgICAgICAgc2VsZi5pZGVudGlmaWVycy5hZGQobmFtZSkKKwogICAgIGRlZiBlbWl0KHNlbGYsIHMsIGRlcHRoLCByZWZsb3c9VHJ1ZSk6CiAgICAgICAgICMgWFhYIHJlZmxvdyBsb25nIGxpbmVzPwogICAgICAgICBpZiByZWZsb3c6CkBAIC00ODUsMTIgKzQ5NCwxMiBAQAogCiAgICAgZGVmIHZpc2l0RmllbGQoc2VsZiwgZmllbGQsIG5hbWUsIHN1bT1Ob25lLCBwcm9kPU5vbmUsIGRlcHRoPTApOgogICAgICAgICBjdHlwZSA9IGdldF9jX3R5cGUoZmllbGQudHlwZSkKLSAgICAgICAgc2VsZi5lbWl0KCJpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosIFwiJXNcIikpIHsiICUgZmllbGQubmFtZSwgZGVwdGgpCisgICAgICAgIHNlbGYuZW1pdCgiaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF8lcykpIHsiICUgZmllbGQubmFtZSwgZGVwdGgpCiAgICAgICAgIHNlbGYuZW1pdCgiaW50IHJlczsiLCBkZXB0aCsxKQogICAgICAgICBpZiBmaWVsZC5zZXE6CiAgICAgICAgICAgICBzZWxmLmVtaXQoIlB5X3NzaXplX3QgbGVuOyIsIGRlcHRoKzEpCiAgICAgICAgICAgICBzZWxmLmVtaXQoIlB5X3NzaXplX3QgaTsiLCBkZXB0aCsxKQotICAgICAgICBzZWxmLmVtaXQoInRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCBcIiVzXCIpOyIgJSBmaWVsZC5uYW1lLCBkZXB0aCsxKQorICAgICAgICBzZWxmLmVtaXQoInRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF8lcyk7IiAlIGZpZWxkLm5hbWUsIGRlcHRoKzEpCiAgICAgICAgIHNlbGYuZW1pdCgiaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsiLCBkZXB0aCsxKQogICAgICAgICBpZiBmaWVsZC5zZXE6CiAgICAgICAgICAgICBzZWxmLmVtaXQoImlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsiLCBkZXB0aCsxKQpAQCAtNTUyLDYgKzU2MSw4IEBACiAgICAgICAgIHNlbGYuZW1pdCgic3RhdGljIFB5VHlwZU9iamVjdCAqJXNfdHlwZTsiICUgbmFtZSwgMCkKICAgICAgICAgc2VsZi5lbWl0KCJzdGF0aWMgUHlPYmplY3QqIGFzdDJvYmpfJXModm9pZCopOyIgJSBuYW1lLCAwKQogICAgICAgICBpZiBwcm9kLmZpZWxkczoKKyAgICAgICAgICAgIGZvciBmIGluIHByb2QuZmllbGRzOgorICAgICAgICAgICAgICAgIHNlbGYuZW1pdF9pZGVudGlmaWVyKGYubmFtZSkKICAgICAgICAgICAgIHNlbGYuZW1pdCgic3RhdGljIGNoYXIgKiVzX2ZpZWxkc1tdPXsiICUgbmFtZSwwKQogICAgICAgICAgICAgZm9yIGYgaW4gcHJvZC5maWVsZHM6CiAgICAgICAgICAgICAgICAgc2VsZi5lbWl0KCciJXMiLCcgJSBmLm5hbWUsIDEpCkBAIC01NjAsNiArNTcxLDggQEAKICAgICBkZWYgdmlzaXRTdW0oc2VsZiwgc3VtLCBuYW1lKToKICAgICAgICAgc2VsZi5lbWl0KCJzdGF0aWMgUHlUeXBlT2JqZWN0IColc190eXBlOyIgJSBuYW1lLCAwKQogICAgICAgICBpZiBzdW0uYXR0cmlidXRlczoKKyAgICAgICAgICAgIGZvciBhIGluIHN1bS5hdHRyaWJ1dGVzOgorICAgICAgICAgICAgICAgIHNlbGYuZW1pdF9pZGVudGlmaWVyKGEubmFtZSkKICAgICAgICAgICAgIHNlbGYuZW1pdCgic3RhdGljIGNoYXIgKiVzX2F0dHJpYnV0ZXNbXSA9IHsiICUgbmFtZSwgMCkKICAgICAgICAgICAgIGZvciBhIGluIHN1bS5hdHRyaWJ1dGVzOgogICAgICAgICAgICAgICAgIHNlbGYuZW1pdCgnIiVzIiwnICUgYS5uYW1lLCAxKQpAQCAtNTc5LDYgKzU5Miw4IEBACiAgICAgZGVmIHZpc2l0Q29uc3RydWN0b3Ioc2VsZiwgY29ucywgbmFtZSk6CiAgICAgICAgIHNlbGYuZW1pdCgic3RhdGljIFB5VHlwZU9iamVjdCAqJXNfdHlwZTsiICUgY29ucy5uYW1lLCAwKQogICAgICAgICBpZiBjb25zLmZpZWxkczoKKyAgICAgICAgICAgIGZvciB0IGluIGNvbnMuZmllbGRzOgorICAgICAgICAgICAgICAgIHNlbGYuZW1pdF9pZGVudGlmaWVyKHQubmFtZSkKICAgICAgICAgICAgIHNlbGYuZW1pdCgic3RhdGljIGNoYXIgKiVzX2ZpZWxkc1tdPXsiICUgY29ucy5uYW1lLCAwKQogICAgICAgICAgICAgZm9yIHQgaW4gY29ucy5maWVsZHM6CiAgICAgICAgICAgICAgICAgc2VsZi5lbWl0KCciJXMiLCcgJSB0Lm5hbWUsIDEpCkBAIC01OTEsMTAgKzYwNiwxMSBAQAogc3RhdGljIGludAogYXN0X3R5cGVfaW5pdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprdykKIHsKKyAgICBfUHlfSURFTlRJRklFUihfZmllbGRzKTsKICAgICBQeV9zc2l6ZV90IGksIG51bWZpZWxkcyA9IDA7CiAgICAgaW50IHJlcyA9IC0xOwogICAgIFB5T2JqZWN0ICprZXksICp2YWx1ZSwgKmZpZWxkczsKLSAgICBmaWVsZHMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKChQeU9iamVjdCopUHlfVFlQRShzZWxmKSwgIl9maWVsZHMiKTsKKyAgICBmaWVsZHMgPSBfUHlPYmplY3RfR2V0QXR0cklkKChQeU9iamVjdCopUHlfVFlQRShzZWxmKSwgJlB5SWRfX2ZpZWxkcyk7CiAgICAgaWYgKCFmaWVsZHMpCiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgaWYgKGZpZWxkcykgewpAQCAtNjQ0LDcgKzY2MCw4IEBACiBhc3RfdHlwZV9yZWR1Y2UoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICp1bnVzZWQpCiB7CiAgICAgUHlPYmplY3QgKnJlczsKLSAgICBQeU9iamVjdCAqZGljdCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoc2VsZiwgIl9fZGljdF9fIik7CisgICAgX1B5X0lERU5USUZJRVIoX19kaWN0X18pOworICAgIFB5T2JqZWN0ICpkaWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZChzZWxmLCAmUHlJZF9fX2RpY3RfXyk7CiAgICAgaWYgKGRpY3QgPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwpAQCAtNzMwLDYgKzc0Nyw3IEBACiBzdGF0aWMgaW50IGFkZF9hdHRyaWJ1dGVzKFB5VHlwZU9iamVjdCogdHlwZSwgY2hhcioqYXR0cnMsIGludCBudW1fZmllbGRzKQogewogICAgIGludCBpLCByZXN1bHQ7CisgICAgX1B5X0lERU5USUZJRVIoX2F0dHJpYnV0ZXMpOwogICAgIFB5T2JqZWN0ICpzLCAqbCA9IFB5VHVwbGVfTmV3KG51bV9maWVsZHMpOwogICAgIGlmICghbCkKICAgICAgICAgcmV0dXJuIDA7CkBAIC03NDEsNyArNzU5LDcgQEAKICAgICAgICAgfQogICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKGwsIGksIHMpOwogICAgIH0KLSAgICByZXN1bHQgPSBQeU9iamVjdF9TZXRBdHRyU3RyaW5nKChQeU9iamVjdCopdHlwZSwgIl9hdHRyaWJ1dGVzIiwgbCkgPj0gMDsKKyAgICByZXN1bHQgPSBfUHlPYmplY3RfU2V0QXR0cklkKChQeU9iamVjdCopdHlwZSwgJlB5SWRfX2F0dHJpYnV0ZXMsIGwpID49IDA7CiAgICAgUHlfREVDUkVGKGwpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CkBAIC03NzUsNiArNzkzLDcgQEAKIH0KICNkZWZpbmUgYXN0Mm9ial9pZGVudGlmaWVyIGFzdDJvYmpfb2JqZWN0CiAjZGVmaW5lIGFzdDJvYmpfc3RyaW5nIGFzdDJvYmpfb2JqZWN0CisjZGVmaW5lIGFzdDJvYmpfYnl0ZXMgYXN0Mm9ial9vYmplY3QKIAogc3RhdGljIFB5T2JqZWN0KiBhc3Qyb2JqX2ludChsb25nIGIpCiB7CkBAIC04MTIsNiArODMxLDE1IEBACiAgICAgcmV0dXJuIG9iajJhc3Rfb2JqZWN0KG9iaiwgb3V0LCBhcmVuYSk7CiB9CiAKK3N0YXRpYyBpbnQgb2JqMmFzdF9ieXRlcyhQeU9iamVjdCogb2JqLCBQeU9iamVjdCoqIG91dCwgUHlBcmVuYSogYXJlbmEpCit7CisgICAgaWYgKCFQeUJ5dGVzX0NoZWNrRXhhY3Qob2JqKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiQVNUIGJ5dGVzIG11c3QgYmUgb2YgdHlwZSBieXRlcyIpOworICAgICAgICByZXR1cm4gMTsKKyAgICB9CisgICAgcmV0dXJuIG9iajJhc3Rfb2JqZWN0KG9iaiwgb3V0LCBhcmVuYSk7Cit9CisKIHN0YXRpYyBpbnQgb2JqMmFzdF9pbnQoUHlPYmplY3QqIG9iaiwgaW50KiBvdXQsIFB5QXJlbmEqIGFyZW5hKQogewogICAgIGludCBpOwpAQCAtOTEwLDEwICs5MzgsNiBAQAogICAgICAgICBzZWxmLmVtaXQoJ2lmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiQVNUIiwgKFB5T2JqZWN0KikmQVNUX3R5cGUpIDwgMCkgcmV0dXJuIE5VTEw7JywgMSkKICAgICAgICAgc2VsZi5lbWl0KCdpZiAoUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlB5Q0ZfT05MWV9BU1QiLCBQeUNGX09OTFlfQVNUKSA8IDApJywgMSkKICAgICAgICAgc2VsZi5lbWl0KCJyZXR1cm4gTlVMTDsiLCAyKQotICAgICAgICAjIFZhbHVlIG9mIHZlcnNpb246ICIkUmV2aXNpb24kIgotICAgICAgICBzZWxmLmVtaXQoJ2lmIChQeU1vZHVsZV9BZGRTdHJpbmdDb25zdGFudChtLCAiX192ZXJzaW9uX18iLCAiJXMiKSA8IDApJwotICAgICAgICAgICAgICAgICUgbW9kLnZlcnNpb24sIDEpCi0gICAgICAgIHNlbGYuZW1pdCgicmV0dXJuIE5VTEw7IiwgMikKICAgICAgICAgZm9yIGRmbiBpbiBtb2QuZGZuczoKICAgICAgICAgICAgIHNlbGYudmlzaXQoZGZuKQogICAgICAgICBzZWxmLmVtaXQoInJldHVybiBtOyIsIDEpCkBAIC05OTcsNyArMTAyMSw3IEBACiAgICAgICAgIGZvciBhIGluIHN1bS5hdHRyaWJ1dGVzOgogICAgICAgICAgICAgc2VsZi5lbWl0KCJ2YWx1ZSA9IGFzdDJvYmpfJXMoby0+JXMpOyIgJSAoYS50eXBlLCBhLm5hbWUpLCAxKQogICAgICAgICAgICAgc2VsZi5lbWl0KCJpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsiLCAxKQotICAgICAgICAgICAgc2VsZi5lbWl0KCdpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICIlcyIsIHZhbHVlKSA8IDApJyAlIGEubmFtZSwgMSkKKyAgICAgICAgICAgIHNlbGYuZW1pdCgnaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF8lcywgdmFsdWUpIDwgMCknICUgYS5uYW1lLCAxKQogICAgICAgICAgICAgc2VsZi5lbWl0KCdnb3RvIGZhaWxlZDsnLCAyKQogICAgICAgICAgICAgc2VsZi5lbWl0KCdQeV9ERUNSRUYodmFsdWUpOycsIDEpCiAgICAgICAgIHNlbGYuZnVuY19lbmQoKQpAQCAtMTA0Myw3ICsxMDY3LDcgQEAKICAgICAgICAgICAgIHZhbHVlID0gIm8tPnYuJXMuJXMiICUgKG5hbWUsIGZpZWxkLm5hbWUpCiAgICAgICAgIHNlbGYuc2V0KGZpZWxkLCB2YWx1ZSwgZGVwdGgpCiAgICAgICAgIGVtaXQoImlmICghdmFsdWUpIGdvdG8gZmFpbGVkOyIsIDApCi0gICAgICAgIGVtaXQoJ2lmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIiVzIiwgdmFsdWUpID09IC0xKScgJSBmaWVsZC5uYW1lLCAwKQorICAgICAgICBlbWl0KCdpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkXyVzLCB2YWx1ZSkgPT0gLTEpJyAlIGZpZWxkLm5hbWUsIDApCiAgICAgICAgIGVtaXQoImdvdG8gZmFpbGVkOyIsIDEpCiAgICAgICAgIGVtaXQoIlB5X0RFQ1JFRih2YWx1ZSk7IiwgMCkKIApAQCAtMTEzNCwyNCArMTE1OCwxMiBAQAogCiBjb21tb25fbXNnID0gIi8qIEZpbGUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgYnkgJXMuICovXG5cbiIKIAotY19maWxlX21zZyA9ICIiIgotLyoKLSAgIF9fdmVyc2lvbl9fICVzLgotCi0gICBUaGlzIG1vZHVsZSBtdXN0IGJlIGNvbW1pdHRlZCBzZXBhcmF0ZWx5IGFmdGVyIGVhY2ggQVNUIGdyYW1tYXIgY2hhbmdlOwotICAgVGhlIF9fdmVyc2lvbl9fIG51bWJlciBpcyBzZXQgdG8gdGhlIHJldmlzaW9uIG51bWJlciBvZiB0aGUgY29tbWl0Ci0gICBjb250YWluaW5nIHRoZSBncmFtbWFyIGNoYW5nZS4KLSovCi0KLSIiIgotCiBkZWYgbWFpbihzcmNmaWxlKToKICAgICBhcmd2MCA9IHN5cy5hcmd2WzBdCiAgICAgY29tcG9uZW50cyA9IGFyZ3YwLnNwbGl0KG9zLnNlcCkKICAgICBhcmd2MCA9IG9zLnNlcC5qb2luKGNvbXBvbmVudHNbLTI6XSkKICAgICBhdXRvX2dlbl9tc2cgPSBjb21tb25fbXNnICUgYXJndjAKICAgICBtb2QgPSBhc2RsLnBhcnNlKHNyY2ZpbGUpCi0gICAgbW9kLnZlcnNpb24gPSAiODIxNjMiCiAgICAgaWYgbm90IGFzZGwuY2hlY2sobW9kKToKICAgICAgICAgc3lzLmV4aXQoMSkKICAgICBpZiBJTkNfRElSOgpAQCAtMTE3Myw3ICsxMTg1LDYgQEAKICAgICAgICAgcCA9IG9zLnBhdGguam9pbihTUkNfRElSLCBzdHIobW9kLm5hbWUpICsgIi1hc3QuYyIpCiAgICAgICAgIGYgPSBvcGVuKHAsICJ3IikKICAgICAgICAgZi53cml0ZShhdXRvX2dlbl9tc2cpCi0gICAgICAgIGYud3JpdGUoY19maWxlX21zZyAlIG1vZC52ZXJzaW9uKQogICAgICAgICBmLndyaXRlKCcjaW5jbHVkZSAiUHl0aG9uLmgiXG4nKQogICAgICAgICBmLndyaXRlKCcjaW5jbHVkZSAiJXMtYXN0LmgiXG4nICUgbW9kLm5hbWUpCiAgICAgICAgIGYud3JpdGUoJ1xuJykKZGlmZiAtLWdpdCBhL1BhcnNlci9pbnRyY2hlY2suYyBiL1BhcnNlci9pbnRyY2hlY2suYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDQzOTg2NC4uMDAwMDAwMAotLS0gYS9QYXJzZXIvaW50cmNoZWNrLmMKKysrIC9kZXYvbnVsbApAQCAtMSwxNzQgKzAsMCBAQAotCi0vKiBDaGVjayBmb3IgaW50ZXJydXB0cyAqLwotCi0jaW5jbHVkZSAiUHl0aG9uLmgiCi0jaW5jbHVkZSAicHl0aHJlYWQuaCIKLQotI2lmZGVmIFFVSUNLV0lOCi0KLSNpbmNsdWRlIDxpby5oPgotCi12b2lkCi1QeU9TX0luaXRJbnRlcnJ1cHRzKHZvaWQpCi17Ci19Ci0KLXZvaWQKLVB5T1NfRmluaUludGVycnVwdHModm9pZCkKLXsKLX0KLQotaW50Ci1QeU9TX0ludGVycnVwdE9jY3VycmVkKHZvaWQpCi17Ci0gICAgX3d5aWVsZCgpOwotfQotCi0jZGVmaW5lIE9LCi0KLSNlbmRpZiAvKiBRVUlDS1dJTiAqLwotCi0jaWYgZGVmaW5lZChfTV9JWDg2KSAmJiAhZGVmaW5lZChfX1FOWF9fKQotI2luY2x1ZGUgPGlvLmg+Ci0jZW5kaWYKLQotI2lmIGRlZmluZWQoTVNET1MpICYmICFkZWZpbmVkKFFVSUNLV0lOKQotCi0jaWZkZWYgX19HTlVDX18KLQotLyogVGhpcyBpcyBmb3IgREpHUFAncyBHTzMyIGV4dGVuZGVyLiAgSSBkb24ndCBrbm93IGhvdyB0byB0cmFwCi0gKiBjb250cm9sLUMgIChUaGVyZSdzIG5vIEFQSSBmb3IgY3RybC1DLCBhbmQgSSBkb24ndCB3YW50IHRvIG1lc3Mgd2l0aAotICogdGhlIGludGVycnVwdCB2ZWN0b3JzLikgIEhvd2V2ZXIsIHRoaXMgRE9FUyBjYXRjaCBjb250cm9sLWJyZWFrLgotICogLS1BbXJpdAotICovCi0KLSNpbmNsdWRlIDxnbzMyLmg+Ci0KLXZvaWQKLVB5T1NfSW5pdEludGVycnVwdHModm9pZCkKLXsKLSAgICBfZ28zMl93YW50X2N0cmxfYnJlYWsoMSAvKiBUUlVFICovKTsKLX0KLQotdm9pZAotUHlPU19GaW5pSW50ZXJydXB0cyh2b2lkKQotewotfQotCi1pbnQKLVB5T1NfSW50ZXJydXB0T2NjdXJyZWQodm9pZCkKLXsKLSAgICByZXR1cm4gX2dvMzJfd2FzX2N0cmxfYnJlYWtfaGl0KCk7Ci19Ci0KLSNlbHNlIC8qICFfX0dOVUNfXyAqLwotCi0vKiBUaGlzIG1pZ2h0IHdvcmsgZm9yIE1TLURPUyAodW50ZXN0ZWQgdGhvdWdoKTogKi8KLQotdm9pZAotUHlPU19Jbml0SW50ZXJydXB0cyh2b2lkKQotewotfQotCi12b2lkCi1QeU9TX0ZpbmlJbnRlcnJ1cHRzKHZvaWQpCi17Ci19Ci0KLWludAotUHlPU19JbnRlcnJ1cHRPY2N1cnJlZCh2b2lkKQotewotICAgIGludCBpbnRlcnJ1cHRlZCA9IDA7Ci0gICAgd2hpbGUgKGtiaGl0KCkpIHsKLSAgICAgICAgaWYgKGdldGNoKCkgPT0gJ1wwMDMnKQotICAgICAgICAgICAgaW50ZXJydXB0ZWQgPSAxOwotICAgIH0KLSAgICByZXR1cm4gaW50ZXJydXB0ZWQ7Ci19Ci0KLSNlbmRpZiAvKiBfX0dOVUNfXyAqLwotCi0jZGVmaW5lIE9LCi0KLSNlbmRpZiAvKiBNU0RPUyAmJiAhUVVJQ0tXSU4gKi8KLQotCi0jaWZuZGVmIE9LCi0KLS8qIERlZmF1bHQgdmVyc2lvbiAtLSBmb3IgcmVhbCBvcGVyYXRpbmcgc3lzdGVtcyBhbmQgZm9yIFN0YW5kYXJkIEMgKi8KLQotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8c3RyaW5nLmg+Ci0jaW5jbHVkZSA8c2lnbmFsLmg+Ci0KLXN0YXRpYyBpbnQgaW50ZXJydXB0ZWQ7Ci0KLXZvaWQKLVB5RXJyX1NldEludGVycnVwdCh2b2lkKQotewotICAgIGludGVycnVwdGVkID0gMTsKLX0KLQotZXh0ZXJuIGludCBQeUVycl9DaGVja1NpZ25hbHModm9pZCk7Ci0KLXN0YXRpYyBpbnQKLWNoZWNrc2lnbmFsc193aXRoYXJnKHZvaWQgKiBhcmcpCi17Ci0gICAgcmV0dXJuIFB5RXJyX0NoZWNrU2lnbmFscygpOwotfQotCi1zdGF0aWMgdm9pZAotaW50Y2F0Y2hlcihpbnQgc2lnKQotewotICAgIGV4dGVybiB2b2lkIFB5X0V4aXQoaW50KTsKLSAgICBzdGF0aWMgY2hhciBtZXNzYWdlW10gPQotInB5dGhvbjogdG8gaW50ZXJydXB0IGEgdHJ1bHkgaGFuZ2luZyBQeXRob24gcHJvZ3JhbSwgaW50ZXJydXB0IG9uY2UgbW9yZS5cbiI7Ci0gICAgc3dpdGNoIChpbnRlcnJ1cHRlZCsrKSB7Ci0gICAgY2FzZSAwOgotICAgICAgICBicmVhazsKLSAgICBjYXNlIDE6Ci0gICAgICAgIHdyaXRlKDIsIG1lc3NhZ2UsIHN0cmxlbihtZXNzYWdlKSk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgMjoKLSAgICAgICAgaW50ZXJydXB0ZWQgPSAwOwotICAgICAgICBQeV9FeGl0KDEpOwotICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgUHlPU19zZXRzaWcoU0lHSU5ULCBpbnRjYXRjaGVyKTsKLSAgICBQeV9BZGRQZW5kaW5nQ2FsbChjaGVja3NpZ25hbHNfd2l0aGFyZywgTlVMTCk7Ci19Ci0KLXN0YXRpYyB2b2lkICgqb2xkX3NpZ2ludGhhbmRsZXIpKGludCkgPSBTSUdfREZMOwotCi12b2lkCi1QeU9TX0luaXRJbnRlcnJ1cHRzKHZvaWQpCi17Ci0gICAgaWYgKChvbGRfc2lnaW50aGFuZGxlciA9IFB5T1Nfc2V0c2lnKFNJR0lOVCwgU0lHX0lHTikpICE9IFNJR19JR04pCi0gICAgICAgIFB5T1Nfc2V0c2lnKFNJR0lOVCwgaW50Y2F0Y2hlcik7Ci19Ci0KLXZvaWQKLVB5T1NfRmluaUludGVycnVwdHModm9pZCkKLXsKLSAgICBQeU9TX3NldHNpZyhTSUdJTlQsIG9sZF9zaWdpbnRoYW5kbGVyKTsKLX0KLQotaW50Ci1QeU9TX0ludGVycnVwdE9jY3VycmVkKHZvaWQpCi17Ci0gICAgaWYgKCFpbnRlcnJ1cHRlZCkKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgaW50ZXJydXB0ZWQgPSAwOwotICAgIHJldHVybiAxOwotfQotCi0jZW5kaWYgLyogIU9LICovCi0KLXZvaWQKLVB5T1NfQWZ0ZXJGb3JrKHZvaWQpCi17Ci0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBQeUV2YWxfUmVJbml0VGhyZWFkcygpOwotICAgIFB5VGhyZWFkX1JlSW5pdFRMUygpOwotI2VuZGlmCi19CmRpZmYgLS1naXQgYS9QYXJzZXIvcGFyc2V0b2suYyBiL1BhcnNlci9wYXJzZXRvay5jCmluZGV4IDczZTdlM2MuLjdiZWI3MzUgMTAwNjQ0Ci0tLSBhL1BhcnNlci9wYXJzZXRvay5jCisrKyBiL1BhcnNlci9wYXJzZXRvay5jCkBAIC0xMyw3ICsxMyw3IEBACiAKIC8qIEZvcndhcmQgKi8KIHN0YXRpYyBub2RlICpwYXJzZXRvayhzdHJ1Y3QgdG9rX3N0YXRlICosIGdyYW1tYXIgKiwgaW50LCBwZXJyZGV0YWlsICosIGludCAqKTsKLXN0YXRpYyB2b2lkIGluaXRlcnIocGVycmRldGFpbCAqZXJyX3JldCwgY29uc3QgY2hhciogZmlsZW5hbWUpOworc3RhdGljIGludCBpbml0ZXJyKHBlcnJkZXRhaWwgKmVycl9yZXQsIGNvbnN0IGNoYXIqIGZpbGVuYW1lKTsKIAogLyogUGFyc2UgaW5wdXQgY29taW5nIGZyb20gYSBzdHJpbmcuICBSZXR1cm4gZXJyb3IgY29kZSwgcHJpbnQgc29tZSBlcnJvcnMuICovCiBub2RlICoKQEAgLTQ4LDcgKzQ4LDggQEAKICAgICBzdHJ1Y3QgdG9rX3N0YXRlICp0b2s7CiAgICAgaW50IGV4ZWNfaW5wdXQgPSBzdGFydCA9PSBmaWxlX2lucHV0OwogCi0gICAgaW5pdGVycihlcnJfcmV0LCBmaWxlbmFtZSk7CisgICAgaWYgKGluaXRlcnIoZXJyX3JldCwgZmlsZW5hbWUpIDwgMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAoKmZsYWdzICYgUHlQQVJTRV9JR05PUkVfQ09PS0lFKQogICAgICAgICB0b2sgPSBQeVRva2VuaXplcl9Gcm9tVVRGOChzLCBleGVjX2lucHV0KTsKQEAgLTU5LDcgKzYwLDEwIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIHRvay0+ZmlsZW5hbWUgPSBmaWxlbmFtZSA/IGZpbGVuYW1lIDogIjxzdHJpbmc+IjsKKyNpZm5kZWYgUEdFTgorICAgIFB5X0lOQ1JFRihlcnJfcmV0LT5maWxlbmFtZSk7CisgICAgdG9rLT5maWxlbmFtZSA9IGVycl9yZXQtPmZpbGVuYW1lOworI2VuZGlmCiAgICAgcmV0dXJuIHBhcnNldG9rKHRvaywgZywgc3RhcnQsIGVycl9yZXQsIGZsYWdzKTsKIH0KIApAQCAtOTAsMTMgKzk0LDE3IEBACiB7CiAgICAgc3RydWN0IHRva19zdGF0ZSAqdG9rOwogCi0gICAgaW5pdGVycihlcnJfcmV0LCBmaWxlbmFtZSk7CisgICAgaWYgKGluaXRlcnIoZXJyX3JldCwgZmlsZW5hbWUpIDwgMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAoKHRvayA9IFB5VG9rZW5pemVyX0Zyb21GaWxlKGZwLCAoY2hhciAqKWVuYywgcHMxLCBwczIpKSA9PSBOVUxMKSB7CiAgICAgICAgIGVycl9yZXQtPmVycm9yID0gRV9OT01FTTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHRvay0+ZmlsZW5hbWUgPSBmaWxlbmFtZTsKKyNpZm5kZWYgUEdFTgorICAgIFB5X0lOQ1JFRihlcnJfcmV0LT5maWxlbmFtZSk7CisgICAgdG9rLT5maWxlbmFtZSA9IGVycl9yZXQtPmZpbGVuYW1lOworI2VuZGlmCiAgICAgcmV0dXJuIHBhcnNldG9rKHRvaywgZywgc3RhcnQsIGVycl9yZXQsIGZsYWdzKTsKIH0KIApAQCAtMTI3LDcgKzEzNSw3IEBACiB7CiAgICAgcGFyc2VyX3N0YXRlICpwczsKICAgICBub2RlICpuOwotICAgIGludCBzdGFydGVkID0gMCwgaGFuZGxpbmdfaW1wb3J0ID0gMCwgaGFuZGxpbmdfd2l0aCA9IDA7CisgICAgaW50IHN0YXJ0ZWQgPSAwOwogCiAgICAgaWYgKChwcyA9IFB5UGFyc2VyX05ldyhnLCBzdGFydCkpID09IE5VTEwpIHsKICAgICAgICAgZnByaW50ZihzdGRlcnIsICJubyBtZW0gZm9yIG5ldyBwYXJzZXJcbiIpOwpAQCAtMTU0LDcgKzE2Miw2IEBACiAgICAgICAgIH0KICAgICAgICAgaWYgKHR5cGUgPT0gRU5ETUFSS0VSICYmIHN0YXJ0ZWQpIHsKICAgICAgICAgICAgIHR5cGUgPSBORVdMSU5FOyAvKiBBZGQgYW4gZXh0cmEgbmV3bGluZSAqLwotICAgICAgICAgICAgaGFuZGxpbmdfd2l0aCA9IGhhbmRsaW5nX2ltcG9ydCA9IDA7CiAgICAgICAgICAgICBzdGFydGVkID0gMDsKICAgICAgICAgICAgIC8qIEFkZCB0aGUgcmlnaHQgbnVtYmVyIG9mIGRlZGVudCB0b2tlbnMsCiAgICAgICAgICAgICAgICBleGNlcHQgaWYgYSBjZXJ0YWluIGZsYWcgaXMgZ2l2ZW4gLS0KQEAgLTIxNyw2ICsyMjQsMzYgQEAKICAgICBpZiAoZXJyX3JldC0+ZXJyb3IgPT0gRV9ET05FKSB7CiAgICAgICAgIG4gPSBwcy0+cF90cmVlOwogICAgICAgICBwcy0+cF90cmVlID0gTlVMTDsKKworI2lmbmRlZiBQR0VOCisgICAgICAgIC8qIENoZWNrIHRoYXQgdGhlIHNvdXJjZSBmb3IgYSBzaW5nbGUgaW5wdXQgc3RhdGVtZW50IHJlYWxseQorICAgICAgICAgICBpcyBhIHNpbmdsZSBzdGF0ZW1lbnQgYnkgbG9va2luZyBhdCB3aGF0IGlzIGxlZnQgaW4gdGhlCisgICAgICAgICAgIGJ1ZmZlciBhZnRlciBwYXJzaW5nLiAgVHJhaWxpbmcgd2hpdGVzcGFjZSBhbmQgY29tbWVudHMKKyAgICAgICAgICAgYXJlIE9LLiAgKi8KKyAgICAgICAgaWYgKHN0YXJ0ID09IHNpbmdsZV9pbnB1dCkgeworICAgICAgICAgICAgY2hhciAqY3VyID0gdG9rLT5jdXI7CisgICAgICAgICAgICBjaGFyIGMgPSAqdG9rLT5jdXI7CisKKyAgICAgICAgICAgIGZvciAoOzspIHsKKyAgICAgICAgICAgICAgICB3aGlsZSAoYyA9PSAnICcgfHwgYyA9PSAnXHQnIHx8IGMgPT0gJ1xuJyB8fCBjID09ICdcMDE0JykKKyAgICAgICAgICAgICAgICAgICAgYyA9ICorK2N1cjsKKworICAgICAgICAgICAgICAgIGlmICghYykKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgICAgICAgICBpZiAoYyAhPSAnIycpIHsKKyAgICAgICAgICAgICAgICAgICAgZXJyX3JldC0+ZXJyb3IgPSBFX0JBRFNJTkdMRTsKKyAgICAgICAgICAgICAgICAgICAgUHlOb2RlX0ZyZWUobik7CisgICAgICAgICAgICAgICAgICAgIG4gPSBOVUxMOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAvKiBTdWNrIHVwIGNvbW1lbnQuICovCisgICAgICAgICAgICAgICAgd2hpbGUgKGMgJiYgYyAhPSAnXG4nKQorICAgICAgICAgICAgICAgICAgICBjID0gKisrY3VyOworICAgICAgICAgICAgfQorICAgICAgICB9CisjZW5kaWYKICAgICB9CiAgICAgZWxzZQogICAgICAgICBuID0gTlVMTDsKQEAgLTIyNyw3ICsyNjQsNyBAQAogICAgIFB5UGFyc2VyX0RlbGV0ZShwcyk7CiAKICAgICBpZiAobiA9PSBOVUxMKSB7Ci0gICAgICAgIGlmICh0b2stPmxpbmVubyA8PSAxICYmIHRvay0+ZG9uZSA9PSBFX0VPRikKKyAgICAgICAgaWYgKHRvay0+ZG9uZSA9PSBFX0VPRikKICAgICAgICAgICAgIGVycl9yZXQtPmVycm9yID0gRV9FT0Y7CiAgICAgICAgIGVycl9yZXQtPmxpbmVubyA9IHRvay0+bGluZW5vOwogICAgICAgICBpZiAodG9rLT5idWYgIT0gTlVMTCkgewpAQCAtMjcwLDE0ICszMDcsMjQgQEAKICAgICByZXR1cm4gbjsKIH0KIAotc3RhdGljIHZvaWQKK3N0YXRpYyBpbnQKIGluaXRlcnIocGVycmRldGFpbCAqZXJyX3JldCwgY29uc3QgY2hhciAqZmlsZW5hbWUpCiB7CiAgICAgZXJyX3JldC0+ZXJyb3IgPSBFX09LOwotICAgIGVycl9yZXQtPmZpbGVuYW1lID0gZmlsZW5hbWU7CiAgICAgZXJyX3JldC0+bGluZW5vID0gMDsKICAgICBlcnJfcmV0LT5vZmZzZXQgPSAwOwogICAgIGVycl9yZXQtPnRleHQgPSBOVUxMOwogICAgIGVycl9yZXQtPnRva2VuID0gLTE7CiAgICAgZXJyX3JldC0+ZXhwZWN0ZWQgPSAtMTsKKyNpZm5kZWYgUEdFTgorICAgIGlmIChmaWxlbmFtZSkKKyAgICAgICAgZXJyX3JldC0+ZmlsZW5hbWUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGZpbGVuYW1lKTsKKyAgICBlbHNlCisgICAgICAgIGVycl9yZXQtPmZpbGVuYW1lID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIjxzdHJpbmc+Iik7CisgICAgaWYgKGVycl9yZXQtPmZpbGVuYW1lID09IE5VTEwpIHsKKyAgICAgICAgZXJyX3JldC0+ZXJyb3IgPSBFX0VSUk9SOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorI2VuZGlmCisgICAgcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9QYXJzZXIvcGFyc2V0b2tfcGdlbi5jIGIvUGFyc2VyL3BhcnNldG9rX3BnZW4uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45N2I5Mjg4Ci0tLSAvZGV2L251bGwKKysrIGIvUGFyc2VyL3BhcnNldG9rX3BnZW4uYwpAQCAtMCwwICsxLDIgQEAKKyNkZWZpbmUgUEdFTgorI2luY2x1ZGUgInBhcnNldG9rLmMiCmRpZmYgLS1naXQgYS9QYXJzZXIvcGdlbm1haW4uYyBiL1BhcnNlci9wZ2VubWFpbi5jCmluZGV4IDRiN2I1NWEuLjUyYjgzODAgMTAwNjQ0Ci0tLSBhL1BhcnNlci9wZ2VubWFpbi5jCisrKyBiL1BhcnNlci9wZ2VubWFpbi5jCkBAIC0yOSw2ICsyOSw4IEBACiAvKiBGb3J3YXJkICovCiBncmFtbWFyICpnZXRncmFtbWFyKGNoYXIgKmZpbGVuYW1lKTsKIAordm9pZCBQeV9FeGl0KGludCkgX1B5X05PX1JFVFVSTjsKKwogdm9pZAogUHlfRXhpdChpbnQgc3RzKQogewpkaWZmIC0tZ2l0IGEvUGFyc2VyL3Rva2VuaXplci5jIGIvUGFyc2VyL3Rva2VuaXplci5jCmluZGV4IDViYTEyYTQuLjM2Y2EwNzkgMTAwNjQ0Ci0tLSBhL1BhcnNlci90b2tlbml6ZXIuYworKysgYi9QYXJzZXIvdG9rZW5pemVyLmMKQEAgLTEyOCw3ICsxMjgsNiBAQAogICAgIHRvay0+cHJvbXB0ID0gdG9rLT5uZXh0cHJvbXB0ID0gTlVMTDsKICAgICB0b2stPmxpbmVubyA9IDA7CiAgICAgdG9rLT5sZXZlbCA9IDA7Ci0gICAgdG9rLT5maWxlbmFtZSA9IE5VTEw7CiAgICAgdG9rLT5hbHR3YXJuaW5nID0gMTsKICAgICB0b2stPmFsdGVycm9yID0gMTsKICAgICB0b2stPmFsdHRhYnNpemUgPSAxOwpAQCAtMTQwLDYgKzEzOSw3IEBACiAgICAgdG9rLT5lbmNvZGluZyA9IE5VTEw7CiAgICAgdG9rLT5jb250X2xpbmUgPSAwOwogI2lmbmRlZiBQR0VOCisgICAgdG9rLT5maWxlbmFtZSA9IE5VTEw7CiAgICAgdG9rLT5kZWNvZGluZ19yZWFkbGluZSA9IE5VTEw7CiAgICAgdG9rLT5kZWNvZGluZ19idWZmZXIgPSBOVUxMOwogI2VuZGlmCkBAIC00NjIsNiArNDYyLDggQEAKIGZwX3NldHJlYWRsKHN0cnVjdCB0b2tfc3RhdGUgKnRvaywgY29uc3QgY2hhciogZW5jKQogewogICAgIFB5T2JqZWN0ICpyZWFkbGluZSA9IE5VTEwsICpzdHJlYW0gPSBOVUxMLCAqaW8gPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKG9wZW4pOworICAgIF9QeV9JREVOVElGSUVSKHJlYWRsaW5lKTsKICAgICBpbnQgZmQ7CiAKICAgICBpbyA9IFB5SW1wb3J0X0ltcG9ydE1vZHVsZU5vQmxvY2soImlvIik7CkBAIC00NzQsMTMgKzQ3NiwxMyBAQAogICAgICAgICBnb3RvIGNsZWFudXA7CiAgICAgfQogCi0gICAgc3RyZWFtID0gUHlPYmplY3RfQ2FsbE1ldGhvZChpbywgIm9wZW4iLCAiaXNpc09PTyIsCisgICAgc3RyZWFtID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChpbywgJlB5SWRfb3BlbiwgImlzaXNPT08iLAogICAgICAgICAgICAgICAgICAgICBmZCwgInIiLCAtMSwgZW5jLCBQeV9Ob25lLCBQeV9Ob25lLCBQeV9GYWxzZSk7CiAgICAgaWYgKHN0cmVhbSA9PSBOVUxMKQogICAgICAgICBnb3RvIGNsZWFudXA7CiAKICAgICBQeV9YREVDUkVGKHRvay0+ZGVjb2RpbmdfcmVhZGxpbmUpOwotICAgIHJlYWRsaW5lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhzdHJlYW0sICJyZWFkbGluZSIpOworICAgIHJlYWRsaW5lID0gX1B5T2JqZWN0X0dldEF0dHJJZChzdHJlYW0sICZQeUlkX3JlYWRsaW5lKTsKICAgICB0b2stPmRlY29kaW5nX3JlYWRsaW5lID0gcmVhZGxpbmU7CiAKICAgICAvKiBUaGUgZmlsZSBoYXMgYmVlbiByZW9wZW5lZDsgcGFyc2luZyB3aWxsIHJlc3RhcnQgZnJvbQpAQCAtNTQ1LDcgKzU0Nyw2IEBACiB7CiAgICAgY2hhciAqbGluZSA9IE5VTEw7CiAgICAgaW50IGJhZGNoYXIgPSAwOwotICAgIFB5T2JqZWN0ICpmaWxlbmFtZTsKICAgICBmb3IgKDs7KSB7CiAgICAgICAgIGlmICh0b2stPmRlY29kaW5nX3N0YXRlID09IFNUQVRFX05PUk1BTCkgewogICAgICAgICAgICAgLyogV2UgYWxyZWFkeSBoYXZlIGEgY29kZWMgYXNzb2NpYXRlZCB3aXRoCkBAIC01ODYsMTkgKzU4NywxMiBAQAogICAgIGlmIChiYWRjaGFyKSB7CiAgICAgICAgIC8qIE5lZWQgdG8gYWRkIDEgdG8gdGhlIGxpbmUgbnVtYmVyLCBzaW5jZSB0aGlzIGxpbmUKICAgICAgICAgICAgaGFzIG5vdCBiZWVuIGNvdW50ZWQsIHlldC4gICovCi0gICAgICAgIGlmICh0b2stPmZpbGVuYW1lICE9IE5VTEwpCi0gICAgICAgICAgICBmaWxlbmFtZSA9IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQodG9rLT5maWxlbmFtZSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIGZpbGVuYW1lID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIjxmaWxlPiIpOwotICAgICAgICBpZiAoZmlsZW5hbWUgIT0gTlVMTCkgewotICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1N5bnRheEVycm9yLAotICAgICAgICAgICAgICAgICAgICAiTm9uLVVURi04IGNvZGUgc3RhcnRpbmcgd2l0aCAnXFx4JS4yeCcgIgotICAgICAgICAgICAgICAgICAgICAiaW4gZmlsZSAlVSBvbiBsaW5lICVpLCAiCi0gICAgICAgICAgICAgICAgICAgICJidXQgbm8gZW5jb2RpbmcgZGVjbGFyZWQ7ICIKLSAgICAgICAgICAgICAgICAgICAgInNlZSBodHRwOi8vcHl0aG9uLm9yZy9kZXYvcGVwcy9wZXAtMDI2My8gZm9yIGRldGFpbHMiLAotICAgICAgICAgICAgICAgICAgICBiYWRjaGFyLCBmaWxlbmFtZSwgdG9rLT5saW5lbm8gKyAxKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7Ci0gICAgICAgIH0KKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1N5bnRheEVycm9yLAorICAgICAgICAgICAgICAgICJOb24tVVRGLTggY29kZSBzdGFydGluZyB3aXRoICdcXHglLjJ4JyAiCisgICAgICAgICAgICAgICAgImluIGZpbGUgJVUgb24gbGluZSAlaSwgIgorICAgICAgICAgICAgICAgICJidXQgbm8gZW5jb2RpbmcgZGVjbGFyZWQ7ICIKKyAgICAgICAgICAgICAgICAic2VlIGh0dHA6Ly9weXRob24ub3JnL2Rldi9wZXBzL3BlcC0wMjYzLyBmb3IgZGV0YWlscyIsCisgICAgICAgICAgICAgICAgYmFkY2hhciwgdG9rLT5maWxlbmFtZSwgdG9rLT5saW5lbm8gKyAxKTsKICAgICAgICAgcmV0dXJuIGVycm9yX3JldCh0b2spOwogICAgIH0KICNlbmRpZgpAQCAtODU2LDYgKzg1MCw3IEBACiAjaWZuZGVmIFBHRU4KICAgICBQeV9YREVDUkVGKHRvay0+ZGVjb2RpbmdfcmVhZGxpbmUpOwogICAgIFB5X1hERUNSRUYodG9rLT5kZWNvZGluZ19idWZmZXIpOworICAgIFB5X1hERUNSRUYodG9rLT5maWxlbmFtZSk7CiAjZW5kaWYKICAgICBpZiAodG9rLT5mcCAhPSBOVUxMICYmIHRvay0+YnVmICE9IE5VTEwpCiAgICAgICAgIFB5TWVtX0ZSRUUodG9rLT5idWYpOwpAQCAtMTI1MCw4ICsxMjQ1LDEzIEBACiAgICAgICAgIHJldHVybiAxOwogICAgIH0KICAgICBpZiAodG9rLT5hbHR3YXJuaW5nKSB7Ci0gICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCIlczogaW5jb25zaXN0ZW50IHVzZSBvZiB0YWJzIGFuZCBzcGFjZXMgIgorI2lmZGVmIFBHRU4KKyAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoImluY29uc2lzdGVudCB1c2Ugb2YgdGFicyBhbmQgc3BhY2VzICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgImluIGluZGVudGF0aW9uXG4iKTsKKyNlbHNlCisgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiJVU6IGluY29uc2lzdGVudCB1c2Ugb2YgdGFicyBhbmQgc3BhY2VzICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgImluIGluZGVudGF0aW9uXG4iLCB0b2stPmZpbGVuYW1lKTsKKyNlbmRpZgogICAgICAgICB0b2stPmFsdHdhcm5pbmcgPSAwOwogICAgIH0KICAgICByZXR1cm4gMDsKQEAgLTEyNjAsMTQgKzEyNjAsMTYgQEAKICNpZmRlZiBQR0VOCiAjZGVmaW5lIHZlcmlmeV9pZGVudGlmaWVyKHRvaykgMQogI2Vsc2UKLS8qIFZlcmlmeSB0aGF0IHRoZSBpZGVudGlmaWVyIGZvbGxvd3MgUEVQIDMxMzEuICovCisvKiBWZXJpZnkgdGhhdCB0aGUgaWRlbnRpZmllciBmb2xsb3dzIFBFUCAzMTMxLgorICAgQWxsIGlkZW50aWZpZXIgc3RyaW5ncyBhcmUgZ3VhcmFudGVlZCB0byBiZSAicmVhZHkiIHVuaWNvZGUgb2JqZWN0cy4KKyAqLwogc3RhdGljIGludAogdmVyaWZ5X2lkZW50aWZpZXIoc3RydWN0IHRva19zdGF0ZSAqdG9rKQogewogICAgIFB5T2JqZWN0ICpzOwogICAgIGludCByZXN1bHQ7CiAgICAgcyA9IFB5VW5pY29kZV9EZWNvZGVVVEY4KHRvay0+c3RhcnQsIHRvay0+Y3VyIC0gdG9rLT5zdGFydCwgTlVMTCk7Ci0gICAgaWYgKHMgPT0gTlVMTCkgeworICAgIGlmIChzID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHMpID09IC0xKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX1VuaWNvZGVEZWNvZGVFcnJvcikpIHsKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgICAgICB0b2stPmRvbmUgPSBFX0lERU5USUZJRVI7CkBAIC0xNDEwLDEzICsxNDEyLDE5IEBACiAgICAgLyogSWRlbnRpZmllciAobW9zdCBmcmVxdWVudCB0b2tlbiEpICovCiAgICAgbm9uYXNjaWkgPSAwOwogICAgIGlmIChpc19wb3RlbnRpYWxfaWRlbnRpZmllcl9zdGFydChjKSkgewotICAgICAgICAvKiBQcm9jZXNzIGIiIiwgciIiIGFuZCBiciIiICovCi0gICAgICAgIGlmIChjID09ICdiJyB8fCBjID09ICdCJykgewotICAgICAgICAgICAgYyA9IHRva19uZXh0Yyh0b2spOwotICAgICAgICAgICAgaWYgKGMgPT0gJyInIHx8IGMgPT0gJ1wnJykKLSAgICAgICAgICAgICAgICBnb3RvIGxldHRlcl9xdW90ZTsKLSAgICAgICAgfQotICAgICAgICBpZiAoYyA9PSAncicgfHwgYyA9PSAnUicpIHsKKyAgICAgICAgLyogUHJvY2VzcyBiIiIsIHIiIiwgdSIiLCBiciIiLCByYiIiIGFuZCB1ciIiICovCisgICAgICAgIGludCBzYXdfYiA9IDAsIHNhd19yID0gMCwgc2F3X3UgPSAwOworICAgICAgICB3aGlsZSAoMSkgeworICAgICAgICAgICAgaWYgKCEoc2F3X2IgfHwgc2F3X3UpICYmIChjID09ICdiJyB8fCBjID09ICdCJykpCisgICAgICAgICAgICAgICAgc2F3X2IgPSAxOworICAgICAgICAgICAgLyogU2luY2UgdGhpcyBpcyBhIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHN1cHBvcnQgbGl0ZXJhbCB3ZSBkb24ndAorICAgICAgICAgICAgICAgd2FudCB0byBzdXBwb3J0IGl0IGluIGFyYml0cmFyeSBvcmRlciBsaWtlIGJ5dGUgbGl0ZXJhbHMuICovCisgICAgICAgICAgICBlbHNlIGlmICghKHNhd19iIHx8IHNhd191IHx8IHNhd19yKSAmJiAoYyA9PSAndScgfHwgYyA9PSAnVScpKQorICAgICAgICAgICAgICAgIHNhd191ID0gMTsKKyAgICAgICAgICAgIGVsc2UgaWYgKCFzYXdfciAmJiAoYyA9PSAncicgfHwgYyA9PSAnUicpKQorICAgICAgICAgICAgICAgIHNhd19yID0gMTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGMgPSB0b2tfbmV4dGModG9rKTsKICAgICAgICAgICAgIGlmIChjID09ICciJyB8fCBjID09ICdcJycpCiAgICAgICAgICAgICAgICAgZ290byBsZXR0ZXJfcXVvdGU7CkBAIC0xNjkyLDE3ICsxNzAwLDE4IEBACiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotLyogR2V0IC0qLSBlbmNvZGluZyAtKi0gZnJvbSBhIFB5dGhvbiBmaWxlLgorLyogR2V0IHRoZSBlbmNvZGluZyBvZiBhIFB5dGhvbiBmaWxlLiBDaGVjayBmb3IgdGhlIGNvZGluZyBjb29raWUgYW5kIGNoZWNrIGlmCisgICB0aGUgZmlsZSBzdGFydHMgd2l0aCBhIEJPTS4KIAotICAgUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nIHJldHVybnMgTlVMTCB3aGVuIGl0IGNhbid0IGZpbmQgdGhlIGVuY29kaW5nIGluCi0gICB0aGUgZmlyc3Qgb3Igc2Vjb25kIGxpbmUgb2YgdGhlIGZpbGUgKGluIHdoaWNoIGNhc2UgdGhlIGVuY29kaW5nCi0gICBzaG91bGQgYmUgYXNzdW1lZCB0byBiZSBQeVVuaWNvZGVfR2V0RGVmYXVsdEVuY29kaW5nKCkpLgorICAgUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nRmlsZW5hbWUoKSByZXR1cm5zIE5VTEwgd2hlbiBpdCBjYW4ndCBmaW5kIHRoZQorICAgZW5jb2RpbmcgaW4gdGhlIGZpcnN0IG9yIHNlY29uZCBsaW5lIG9mIHRoZSBmaWxlIChpbiB3aGljaCBjYXNlIHRoZSBlbmNvZGluZworICAgc2hvdWxkIGJlIGFzc3VtZWQgdG8gYmUgVVRGLTgpLgogCi0gICBUaGUgY2hhciAqIHJldHVybmVkIGlzIG1hbGxvYydlZCB2aWEgUHlNZW1fTUFMTE9DKCkgYW5kIHRodXMgbXVzdCBiZSBmcmVlZAotICAgYnkgdGhlIGNhbGxlci4KLSovCisgICBUaGUgY2hhciogcmV0dXJuZWQgaXMgbWFsbG9jJ2VkIHZpYSBQeU1lbV9NQUxMT0MoKSBhbmQgdGh1cyBtdXN0IGJlIGZyZWVkCisgICBieSB0aGUgY2FsbGVyLiAqLworCiBjaGFyICoKLVB5VG9rZW5pemVyX0ZpbmRFbmNvZGluZyhpbnQgZmQpCitQeVRva2VuaXplcl9GaW5kRW5jb2RpbmdGaWxlbmFtZShpbnQgZmQsIFB5T2JqZWN0ICpmaWxlbmFtZSkKIHsKICAgICBzdHJ1Y3QgdG9rX3N0YXRlICp0b2s7CiAgICAgRklMRSAqZnA7CkBAIC0xNzIxLDYgKzE3MzAsMjAgQEAKICAgICAgICAgZmNsb3NlKGZwKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorI2lmbmRlZiBQR0VOCisgICAgaWYgKGZpbGVuYW1lICE9IE5VTEwpIHsKKyAgICAgICAgUHlfSU5DUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgdG9rLT5maWxlbmFtZSA9IGZpbGVuYW1lOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgdG9rLT5maWxlbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCI8c3RyaW5nPiIpOworICAgICAgICBpZiAodG9rLT5maWxlbmFtZSA9PSBOVUxMKSB7CisgICAgICAgICAgICBmY2xvc2UoZnApOworICAgICAgICAgICAgUHlUb2tlbml6ZXJfRnJlZSh0b2spOworICAgICAgICAgICAgcmV0dXJuIGVuY29kaW5nOworICAgICAgICB9CisgICAgfQorI2VuZGlmCiAgICAgd2hpbGUgKHRvay0+bGluZW5vIDwgMiAmJiB0b2stPmRvbmUgPT0gRV9PSykgewogICAgICAgICBQeVRva2VuaXplcl9HZXQodG9rLCAmcF9zdGFydCwgJnBfZW5kKTsKICAgICB9CkBAIC0xNzM0LDYgKzE3NTcsMTIgQEAKICAgICByZXR1cm4gZW5jb2Rpbmc7CiB9CiAKK2NoYXIgKgorUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nKGludCBmZCkKK3sKKyAgICByZXR1cm4gUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nRmlsZW5hbWUoZmQsIE5VTEwpOworfQorCiAjaWZkZWYgUHlfREVCVUcKIAogdm9pZApkaWZmIC0tZ2l0IGEvUGFyc2VyL3Rva2VuaXplci5oIGIvUGFyc2VyL3Rva2VuaXplci5oCmluZGV4IDJiZTNiZjIuLmVkMWYzYWEgMTAwNjQ0Ci0tLSBhL1BhcnNlci90b2tlbml6ZXIuaAorKysgYi9QYXJzZXIvdG9rZW5pemVyLmgKQEAgLTQwLDcgKzQwLDEzIEBACiAgICAgaW50IGxldmVsOyAgICAgICAgICAvKiAoKSBbXSB7fSBQYXJlbnRoZXNlcyBuZXN0aW5nIGxldmVsICovCiAgICAgICAgICAgICAvKiBVc2VkIHRvIGFsbG93IGZyZWUgY29udGludWF0aW9ucyBpbnNpZGUgdGhlbSAqLwogICAgIC8qIFN0dWZmIGZvciBjaGVja2luZyBvbiBkaWZmZXJlbnQgdGFiIHNpemVzICovCi0gICAgY29uc3QgY2hhciAqZmlsZW5hbWU7ICAgLyogZW5jb2RlZCB0byB0aGUgZmlsZXN5c3RlbSBlbmNvZGluZyAqLworI2lmbmRlZiBQR0VOCisgICAgLyogcGdlbiBkb2Vzbid0IGhhdmUgYWNjZXNzIHRvIFB5dGhvbiBjb2RlY3MsIGl0IGNhbm5vdCBkZWNvZGUgdGhlIGlucHV0CisgICAgICAgZmlsZW5hbWUuIFRoZSBieXRlcyBmaWxlbmFtZSBtaWdodCBiZSBrZXB0LCBidXQgaXQgaXMgb25seSB1c2VkIGJ5CisgICAgICAgaW5kZW50ZXJyb3IoKSBhbmQgaXQgaXMgbm90IHJlYWxseSBuZWVkZWQ6IHBnZW4gb25seSBjb21waWxlcyBvbmUgZmlsZQorICAgICAgIChHcmFtbWFyL0dyYW1tYXIpLiAqLworICAgIFB5T2JqZWN0ICpmaWxlbmFtZTsKKyNlbmRpZgogICAgIGludCBhbHR3YXJuaW5nOyAgICAgLyogSXNzdWUgd2FybmluZyBpZiBhbHRlcm5hdGUgdGFicyBkb24ndCBtYXRjaCAqLwogICAgIGludCBhbHRlcnJvcjsgICAgICAgLyogSXNzdWUgZXJyb3IgaWYgYWx0ZXJuYXRlIHRhYnMgZG9uJ3QgbWF0Y2ggKi8KICAgICBpbnQgYWx0dGFic2l6ZTsgICAgIC8qIEFsdGVybmF0ZSB0YWIgc3BhY2luZyAqLwpAQCAtNjksNyArNzUsNiBAQAogZXh0ZXJuIGludCBQeVRva2VuaXplcl9HZXQoc3RydWN0IHRva19zdGF0ZSAqLCBjaGFyICoqLCBjaGFyICoqKTsKIGV4dGVybiBjaGFyICogUHlUb2tlbml6ZXJfUmVzdG9yZUVuY29kaW5nKHN0cnVjdCB0b2tfc3RhdGUqIHRvaywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBsZW4sIGludCAqb2Zmc2V0KTsKLWV4dGVybiBjaGFyICogUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nKGludCk7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL1B5dGhvbi1hc3QuYyBiL1B5dGhvbi9QeXRob24tYXN0LmMKaW5kZXggYTI3NmI2Yy4uMjYwM2I4MSAxMDA2NDQKLS0tIGEvUHl0aG9uL1B5dGhvbi1hc3QuYworKysgYi9QeXRob24vUHl0aG9uLWFzdC5jCkBAIC0xLDE0ICsxLDUgQEAKIC8qIEZpbGUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgYnkgUGFyc2VyL2FzZGxfYy5weS4gKi8KIAotCi0vKgotICAgX192ZXJzaW9uX18gODIxNjMuCi0KLSAgIFRoaXMgbW9kdWxlIG11c3QgYmUgY29tbWl0dGVkIHNlcGFyYXRlbHkgYWZ0ZXIgZWFjaCBBU1QgZ3JhbW1hciBjaGFuZ2U7Ci0gICBUaGUgX192ZXJzaW9uX18gbnVtYmVyIGlzIHNldCB0byB0aGUgcmV2aXNpb24gbnVtYmVyIG9mIHRoZSBjb21taXQKLSAgIGNvbnRhaW5pbmcgdGhlIGdyYW1tYXIgY2hhbmdlLgotKi8KLQogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgIlB5dGhvbi1hc3QuaCIKIApAQCAtMTYsNiArNyw3IEBACiBzdGF0aWMgUHlUeXBlT2JqZWN0ICptb2RfdHlwZTsKIHN0YXRpYyBQeU9iamVjdCogYXN0Mm9ial9tb2Qodm9pZCopOwogc3RhdGljIFB5VHlwZU9iamVjdCAqTW9kdWxlX3R5cGU7CitfUHlfSURFTlRJRklFUihib2R5KTsKIHN0YXRpYyBjaGFyICpNb2R1bGVfZmllbGRzW109ewogICAgICAgICAiYm9keSIsCiB9OwpAQCAtMzIsMTIgKzI0LDE4IEBACiAgICAgICAgICJib2R5IiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpzdG10X3R5cGU7CitfUHlfSURFTlRJRklFUihsaW5lbm8pOworX1B5X0lERU5USUZJRVIoY29sX29mZnNldCk7CiBzdGF0aWMgY2hhciAqc3RtdF9hdHRyaWJ1dGVzW10gPSB7CiAgICAgICAgICJsaW5lbm8iLAogICAgICAgICAiY29sX29mZnNldCIsCiB9Owogc3RhdGljIFB5T2JqZWN0KiBhc3Qyb2JqX3N0bXQodm9pZCopOwogc3RhdGljIFB5VHlwZU9iamVjdCAqRnVuY3Rpb25EZWZfdHlwZTsKK19QeV9JREVOVElGSUVSKG5hbWUpOworX1B5X0lERU5USUZJRVIoYXJncyk7CitfUHlfSURFTlRJRklFUihkZWNvcmF0b3JfbGlzdCk7CitfUHlfSURFTlRJRklFUihyZXR1cm5zKTsKIHN0YXRpYyBjaGFyICpGdW5jdGlvbkRlZl9maWVsZHNbXT17CiAgICAgICAgICJuYW1lIiwKICAgICAgICAgImFyZ3MiLApAQCAtNDYsNiArNDQsMTAgQEAKICAgICAgICAgInJldHVybnMiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKkNsYXNzRGVmX3R5cGU7CitfUHlfSURFTlRJRklFUihiYXNlcyk7CitfUHlfSURFTlRJRklFUihrZXl3b3Jkcyk7CitfUHlfSURFTlRJRklFUihzdGFyYXJncyk7CitfUHlfSURFTlRJRklFUihrd2FyZ3MpOwogc3RhdGljIGNoYXIgKkNsYXNzRGVmX2ZpZWxkc1tdPXsKICAgICAgICAgIm5hbWUiLAogICAgICAgICAiYmFzZXMiLApAQCAtNTYsMTAgKzU4LDEyIEBACiAgICAgICAgICJkZWNvcmF0b3JfbGlzdCIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqUmV0dXJuX3R5cGU7CitfUHlfSURFTlRJRklFUih2YWx1ZSk7CiBzdGF0aWMgY2hhciAqUmV0dXJuX2ZpZWxkc1tdPXsKICAgICAgICAgInZhbHVlIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpEZWxldGVfdHlwZTsKK19QeV9JREVOVElGSUVSKHRhcmdldHMpOwogc3RhdGljIGNoYXIgKkRlbGV0ZV9maWVsZHNbXT17CiAgICAgICAgICJ0YXJnZXRzIiwKIH07CkBAIC02OSwxMiArNzMsMTYgQEAKICAgICAgICAgInZhbHVlIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpBdWdBc3NpZ25fdHlwZTsKK19QeV9JREVOVElGSUVSKHRhcmdldCk7CitfUHlfSURFTlRJRklFUihvcCk7CiBzdGF0aWMgY2hhciAqQXVnQXNzaWduX2ZpZWxkc1tdPXsKICAgICAgICAgInRhcmdldCIsCiAgICAgICAgICJvcCIsCiAgICAgICAgICJ2YWx1ZSIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqRm9yX3R5cGU7CitfUHlfSURFTlRJRklFUihpdGVyKTsKK19QeV9JREVOVElGSUVSKG9yZWxzZSk7CiBzdGF0aWMgY2hhciAqRm9yX2ZpZWxkc1tdPXsKICAgICAgICAgInRhcmdldCIsCiAgICAgICAgICJpdGVyIiwKQEAgLTgyLDYgKzkwLDcgQEAKICAgICAgICAgIm9yZWxzZSIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqV2hpbGVfdHlwZTsKK19QeV9JREVOVElGSUVSKHRlc3QpOwogc3RhdGljIGNoYXIgKldoaWxlX2ZpZWxkc1tdPXsKICAgICAgICAgInRlc3QiLAogICAgICAgICAiYm9keSIsCkBAIC05NCwzNyArMTAzLDQxIEBACiAgICAgICAgICJvcmVsc2UiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKldpdGhfdHlwZTsKK19QeV9JREVOVElGSUVSKGl0ZW1zKTsKIHN0YXRpYyBjaGFyICpXaXRoX2ZpZWxkc1tdPXsKLSAgICAgICAgImNvbnRleHRfZXhwciIsCi0gICAgICAgICJvcHRpb25hbF92YXJzIiwKKyAgICAgICAgIml0ZW1zIiwKICAgICAgICAgImJvZHkiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKlJhaXNlX3R5cGU7CitfUHlfSURFTlRJRklFUihleGMpOworX1B5X0lERU5USUZJRVIoY2F1c2UpOwogc3RhdGljIGNoYXIgKlJhaXNlX2ZpZWxkc1tdPXsKICAgICAgICAgImV4YyIsCiAgICAgICAgICJjYXVzZSIsCiB9Owotc3RhdGljIFB5VHlwZU9iamVjdCAqVHJ5RXhjZXB0X3R5cGU7Ci1zdGF0aWMgY2hhciAqVHJ5RXhjZXB0X2ZpZWxkc1tdPXsKK3N0YXRpYyBQeVR5cGVPYmplY3QgKlRyeV90eXBlOworX1B5X0lERU5USUZJRVIoaGFuZGxlcnMpOworX1B5X0lERU5USUZJRVIoZmluYWxib2R5KTsKK3N0YXRpYyBjaGFyICpUcnlfZmllbGRzW109ewogICAgICAgICAiYm9keSIsCiAgICAgICAgICJoYW5kbGVycyIsCiAgICAgICAgICJvcmVsc2UiLAotfTsKLXN0YXRpYyBQeVR5cGVPYmplY3QgKlRyeUZpbmFsbHlfdHlwZTsKLXN0YXRpYyBjaGFyICpUcnlGaW5hbGx5X2ZpZWxkc1tdPXsKLSAgICAgICAgImJvZHkiLAogICAgICAgICAiZmluYWxib2R5IiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpBc3NlcnRfdHlwZTsKK19QeV9JREVOVElGSUVSKG1zZyk7CiBzdGF0aWMgY2hhciAqQXNzZXJ0X2ZpZWxkc1tdPXsKICAgICAgICAgInRlc3QiLAogICAgICAgICAibXNnIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpJbXBvcnRfdHlwZTsKK19QeV9JREVOVElGSUVSKG5hbWVzKTsKIHN0YXRpYyBjaGFyICpJbXBvcnRfZmllbGRzW109ewogICAgICAgICAibmFtZXMiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKkltcG9ydEZyb21fdHlwZTsKK19QeV9JREVOVElGSUVSKG1vZHVsZSk7CitfUHlfSURFTlRJRklFUihsZXZlbCk7CiBzdGF0aWMgY2hhciAqSW1wb3J0RnJvbV9maWVsZHNbXT17CiAgICAgICAgICJtb2R1bGUiLAogICAgICAgICAibmFtZXMiLApAQCAtMTUyLDE3ICsxNjUsMjEgQEAKIH07CiBzdGF0aWMgUHlPYmplY3QqIGFzdDJvYmpfZXhwcih2b2lkKik7CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpCb29sT3BfdHlwZTsKK19QeV9JREVOVElGSUVSKHZhbHVlcyk7CiBzdGF0aWMgY2hhciAqQm9vbE9wX2ZpZWxkc1tdPXsKICAgICAgICAgIm9wIiwKICAgICAgICAgInZhbHVlcyIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqQmluT3BfdHlwZTsKK19QeV9JREVOVElGSUVSKGxlZnQpOworX1B5X0lERU5USUZJRVIocmlnaHQpOwogc3RhdGljIGNoYXIgKkJpbk9wX2ZpZWxkc1tdPXsKICAgICAgICAgImxlZnQiLAogICAgICAgICAib3AiLAogICAgICAgICAicmlnaHQiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKlVuYXJ5T3BfdHlwZTsKK19QeV9JREVOVElGSUVSKG9wZXJhbmQpOwogc3RhdGljIGNoYXIgKlVuYXJ5T3BfZmllbGRzW109ewogICAgICAgICAib3AiLAogICAgICAgICAib3BlcmFuZCIsCkBAIC0xNzksMTUgKzE5NiwxOSBAQAogICAgICAgICAib3JlbHNlIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpEaWN0X3R5cGU7CitfUHlfSURFTlRJRklFUihrZXlzKTsKIHN0YXRpYyBjaGFyICpEaWN0X2ZpZWxkc1tdPXsKICAgICAgICAgImtleXMiLAogICAgICAgICAidmFsdWVzIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpTZXRfdHlwZTsKK19QeV9JREVOVElGSUVSKGVsdHMpOwogc3RhdGljIGNoYXIgKlNldF9maWVsZHNbXT17CiAgICAgICAgICJlbHRzIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpMaXN0Q29tcF90eXBlOworX1B5X0lERU5USUZJRVIoZWx0KTsKK19QeV9JREVOVElGSUVSKGdlbmVyYXRvcnMpOwogc3RhdGljIGNoYXIgKkxpc3RDb21wX2ZpZWxkc1tdPXsKICAgICAgICAgImVsdCIsCiAgICAgICAgICJnZW5lcmF0b3JzIiwKQEAgLTE5OCw2ICsyMTksNyBAQAogICAgICAgICAiZ2VuZXJhdG9ycyIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqRGljdENvbXBfdHlwZTsKK19QeV9JREVOVElGSUVSKGtleSk7CiBzdGF0aWMgY2hhciAqRGljdENvbXBfZmllbGRzW109ewogICAgICAgICAia2V5IiwKICAgICAgICAgInZhbHVlIiwKQEAgLTIxMiwxMyArMjM0LDIwIEBACiBzdGF0aWMgY2hhciAqWWllbGRfZmllbGRzW109ewogICAgICAgICAidmFsdWUiLAogfTsKK3N0YXRpYyBQeVR5cGVPYmplY3QgKllpZWxkRnJvbV90eXBlOworc3RhdGljIGNoYXIgKllpZWxkRnJvbV9maWVsZHNbXT17CisgICAgICAgICJ2YWx1ZSIsCit9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqQ29tcGFyZV90eXBlOworX1B5X0lERU5USUZJRVIob3BzKTsKK19QeV9JREVOVElGSUVSKGNvbXBhcmF0b3JzKTsKIHN0YXRpYyBjaGFyICpDb21wYXJlX2ZpZWxkc1tdPXsKICAgICAgICAgImxlZnQiLAogICAgICAgICAib3BzIiwKICAgICAgICAgImNvbXBhcmF0b3JzIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpDYWxsX3R5cGU7CitfUHlfSURFTlRJRklFUihmdW5jKTsKIHN0YXRpYyBjaGFyICpDYWxsX2ZpZWxkc1tdPXsKICAgICAgICAgImZ1bmMiLAogICAgICAgICAiYXJncyIsCkBAIC0yMjcsMTAgKzI1NiwxMiBAQAogICAgICAgICAia3dhcmdzIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpOdW1fdHlwZTsKK19QeV9JREVOVElGSUVSKG4pOwogc3RhdGljIGNoYXIgKk51bV9maWVsZHNbXT17CiAgICAgICAgICJuIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpTdHJfdHlwZTsKK19QeV9JREVOVElGSUVSKHMpOwogc3RhdGljIGNoYXIgKlN0cl9maWVsZHNbXT17CiAgICAgICAgICJzIiwKIH07CkBAIC0yNDAsMTIgKzI3MSwxNSBAQAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKkVsbGlwc2lzX3R5cGU7CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpBdHRyaWJ1dGVfdHlwZTsKK19QeV9JREVOVElGSUVSKGF0dHIpOworX1B5X0lERU5USUZJRVIoY3R4KTsKIHN0YXRpYyBjaGFyICpBdHRyaWJ1dGVfZmllbGRzW109ewogICAgICAgICAidmFsdWUiLAogICAgICAgICAiYXR0ciIsCiAgICAgICAgICJjdHgiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKlN1YnNjcmlwdF90eXBlOworX1B5X0lERU5USUZJRVIoc2xpY2UpOwogc3RhdGljIGNoYXIgKlN1YnNjcmlwdF9maWVsZHNbXT17CiAgICAgICAgICJ2YWx1ZSIsCiAgICAgICAgICJzbGljZSIsCkBAIC0yNTcsNiArMjkxLDcgQEAKICAgICAgICAgImN0eCIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqTmFtZV90eXBlOworX1B5X0lERU5USUZJRVIoaWQpOwogc3RhdGljIGNoYXIgKk5hbWVfZmllbGRzW109ewogICAgICAgICAiaWQiLAogICAgICAgICAiY3R4IiwKQEAgLTI4NCwxMiArMzE5LDE2IEBACiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpzbGljZV90eXBlOwogc3RhdGljIFB5T2JqZWN0KiBhc3Qyb2JqX3NsaWNlKHZvaWQqKTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKlNsaWNlX3R5cGU7CitfUHlfSURFTlRJRklFUihsb3dlcik7CitfUHlfSURFTlRJRklFUih1cHBlcik7CitfUHlfSURFTlRJRklFUihzdGVwKTsKIHN0YXRpYyBjaGFyICpTbGljZV9maWVsZHNbXT17CiAgICAgICAgICJsb3dlciIsCiAgICAgICAgICJ1cHBlciIsCiAgICAgICAgICJzdGVwIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpFeHRTbGljZV90eXBlOworX1B5X0lERU5USUZJRVIoZGltcyk7CiBzdGF0aWMgY2hhciAqRXh0U2xpY2VfZmllbGRzW109ewogICAgICAgICAiZGltcyIsCiB9OwpAQCAtMzQ1LDYgKzM4NCw3IEBACiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpOb3RJbl90eXBlOwogc3RhdGljIFB5VHlwZU9iamVjdCAqY29tcHJlaGVuc2lvbl90eXBlOwogc3RhdGljIFB5T2JqZWN0KiBhc3Qyb2JqX2NvbXByZWhlbnNpb24odm9pZCopOworX1B5X0lERU5USUZJRVIoaWZzKTsKIHN0YXRpYyBjaGFyICpjb21wcmVoZW5zaW9uX2ZpZWxkc1tdPXsKICAgICAgICAgInRhcmdldCIsCiAgICAgICAgICJpdGVyIiwKQEAgLTM1Nyw2ICszOTcsNyBAQAogfTsKIHN0YXRpYyBQeU9iamVjdCogYXN0Mm9ial9leGNlcHRoYW5kbGVyKHZvaWQqKTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKkV4Y2VwdEhhbmRsZXJfdHlwZTsKK19QeV9JREVOVElGSUVSKHR5cGUpOwogc3RhdGljIGNoYXIgKkV4Y2VwdEhhbmRsZXJfZmllbGRzW109ewogICAgICAgICAidHlwZSIsCiAgICAgICAgICJuYW1lIiwKQEAgLTM2NCw2ICs0MDUsMTMgQEAKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICphcmd1bWVudHNfdHlwZTsKIHN0YXRpYyBQeU9iamVjdCogYXN0Mm9ial9hcmd1bWVudHModm9pZCopOworX1B5X0lERU5USUZJRVIodmFyYXJnKTsKK19QeV9JREVOVElGSUVSKHZhcmFyZ2Fubm90YXRpb24pOworX1B5X0lERU5USUZJRVIoa3dvbmx5YXJncyk7CitfUHlfSURFTlRJRklFUihrd2FyZyk7CitfUHlfSURFTlRJRklFUihrd2FyZ2Fubm90YXRpb24pOworX1B5X0lERU5USUZJRVIoZGVmYXVsdHMpOworX1B5X0lERU5USUZJRVIoa3dfZGVmYXVsdHMpOwogc3RhdGljIGNoYXIgKmFyZ3VtZW50c19maWVsZHNbXT17CiAgICAgICAgICJhcmdzIiwKICAgICAgICAgInZhcmFyZyIsCkBAIC0zNzYsNiArNDI0LDggQEAKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICphcmdfdHlwZTsKIHN0YXRpYyBQeU9iamVjdCogYXN0Mm9ial9hcmcodm9pZCopOworX1B5X0lERU5USUZJRVIoYXJnKTsKK19QeV9JREVOVElGSUVSKGFubm90YXRpb24pOwogc3RhdGljIGNoYXIgKmFyZ19maWVsZHNbXT17CiAgICAgICAgICJhcmciLAogICAgICAgICAiYW5ub3RhdGlvbiIsCkBAIC0zODgsMTkgKzQzOCwyOSBAQAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKmFsaWFzX3R5cGU7CiBzdGF0aWMgUHlPYmplY3QqIGFzdDJvYmpfYWxpYXModm9pZCopOworX1B5X0lERU5USUZJRVIoYXNuYW1lKTsKIHN0YXRpYyBjaGFyICphbGlhc19maWVsZHNbXT17CiAgICAgICAgICJuYW1lIiwKICAgICAgICAgImFzbmFtZSIsCiB9Oworc3RhdGljIFB5VHlwZU9iamVjdCAqd2l0aGl0ZW1fdHlwZTsKK3N0YXRpYyBQeU9iamVjdCogYXN0Mm9ial93aXRoaXRlbSh2b2lkKik7CitfUHlfSURFTlRJRklFUihjb250ZXh0X2V4cHIpOworX1B5X0lERU5USUZJRVIob3B0aW9uYWxfdmFycyk7CitzdGF0aWMgY2hhciAqd2l0aGl0ZW1fZmllbGRzW109eworICAgICAgICAiY29udGV4dF9leHByIiwKKyAgICAgICAgIm9wdGlvbmFsX3ZhcnMiLAorfTsKIAogCiBzdGF0aWMgaW50CiBhc3RfdHlwZV9pbml0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3KQogeworICAgIF9QeV9JREVOVElGSUVSKF9maWVsZHMpOwogICAgIFB5X3NzaXplX3QgaSwgbnVtZmllbGRzID0gMDsKICAgICBpbnQgcmVzID0gLTE7CiAgICAgUHlPYmplY3QgKmtleSwgKnZhbHVlLCAqZmllbGRzOwotICAgIGZpZWxkcyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoKFB5T2JqZWN0KilQeV9UWVBFKHNlbGYpLCAiX2ZpZWxkcyIpOworICAgIGZpZWxkcyA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0KilQeV9UWVBFKHNlbGYpLCAmUHlJZF9fZmllbGRzKTsKICAgICBpZiAoIWZpZWxkcykKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICBpZiAoZmllbGRzKSB7CkBAIC00NTAsNyArNTEwLDggQEAKIGFzdF90eXBlX3JlZHVjZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKIHsKICAgICBQeU9iamVjdCAqcmVzOwotICAgIFB5T2JqZWN0ICpkaWN0ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhzZWxmLCAiX19kaWN0X18iKTsKKyAgICBfUHlfSURFTlRJRklFUihfX2RpY3RfXyk7CisgICAgUHlPYmplY3QgKmRpY3QgPSBfUHlPYmplY3RfR2V0QXR0cklkKHNlbGYsICZQeUlkX19fZGljdF9fKTsKICAgICBpZiAoZGljdCA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CkBAIC01MzYsNiArNTk3LDcgQEAKIHN0YXRpYyBpbnQgYWRkX2F0dHJpYnV0ZXMoUHlUeXBlT2JqZWN0KiB0eXBlLCBjaGFyKiphdHRycywgaW50IG51bV9maWVsZHMpCiB7CiAgICAgaW50IGksIHJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihfYXR0cmlidXRlcyk7CiAgICAgUHlPYmplY3QgKnMsICpsID0gUHlUdXBsZV9OZXcobnVtX2ZpZWxkcyk7CiAgICAgaWYgKCFsKQogICAgICAgICByZXR1cm4gMDsKQEAgLTU0Nyw3ICs2MDksNyBAQAogICAgICAgICB9CiAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0obCwgaSwgcyk7CiAgICAgfQotICAgIHJlc3VsdCA9IFB5T2JqZWN0X1NldEF0dHJTdHJpbmcoKFB5T2JqZWN0Kil0eXBlLCAiX2F0dHJpYnV0ZXMiLCBsKSA+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+dHBfbmFtZSk7CkBAIC02NDcwLDExICs2NTYyLDExIEBACiAgICAgICAgIGFzZGxfc2VxKiBkZWZhdWx0czsKICAgICAgICAgYXNkbF9zZXEqIGt3X2RlZmF1bHRzOwogCi0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImFyZ3MiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2FyZ3MpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJhcmdzIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FyZ3MpOwogICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgImFyZ3VtZW50cyBmaWVsZCBcImFyZ3NcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTY0OTUsOSArNjU4Nyw5IEBACiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiYXJnc1wiIG1pc3NpbmcgZnJvbSBhcmd1bWVudHMiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ2YXJhcmciKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhcmFyZykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFyYXJnIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3ZhcmFyZyk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmdmFyYXJnLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY1MDYsOSArNjU5OCw5IEBACiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgdmFyYXJnID0gTlVMTDsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ2YXJhcmdhbm5vdGF0aW9uIikpIHsKKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF92YXJhcmdhbm5vdGF0aW9uKSkgewogICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJ2YXJhcmdhbm5vdGF0aW9uIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3ZhcmFyZ2Fubm90YXRpb24pOwogICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhcmFyZ2Fubm90YXRpb24sIGFyZW5hKTsKICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNjUxNywxMSArNjYwOSwxMSBAQAogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIHZhcmFyZ2Fubm90YXRpb24gPSBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImt3b25seWFyZ3MiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2t3b25seWFyZ3MpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJrd29ubHlhcmdzIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2t3b25seWFyZ3MpOwogICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgImFyZ3VtZW50cyBmaWVsZCBcImt3b25seWFyZ3NcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTY1NDIsOSArNjYzNCw5IEBACiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwia3dvbmx5YXJnc1wiIG1pc3NpbmcgZnJvbSBhcmd1bWVudHMiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJrd2FyZyIpKSB7CisgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfa3dhcmcpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImt3YXJnIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2t3YXJnKTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfaWRlbnRpZmllcih0bXAsICZrd2FyZywgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC02NTUzLDkgKzY2NDUsOSBAQAogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIGt3YXJnID0gTlVMTDsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJrd2FyZ2Fubm90YXRpb24iKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2t3YXJnYW5ub3RhdGlvbikpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAia3dhcmdhbm5vdGF0aW9uIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2t3YXJnYW5ub3RhdGlvbik7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAma3dhcmdhbm5vdGF0aW9uLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY1NjQsMTEgKzY2NTYsMTEgQEAKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBrd2FyZ2Fubm90YXRpb24gPSBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImRlZmF1bHRzIikpIHsKKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9kZWZhdWx0cykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImRlZmF1bHRzIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2RlZmF1bHRzKTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudHMgZmllbGQgXCJkZWZhdWx0c1wiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNjU4OSwxMSArNjY4MSwxMSBAQAogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImRlZmF1bHRzXCIgbWlzc2luZyBmcm9tIGFyZ3VtZW50cyIpOwogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImt3X2RlZmF1bHRzIikpIHsKKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9rd19kZWZhdWx0cykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImt3X2RlZmF1bHRzIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2t3X2RlZmF1bHRzKTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudHMgZmllbGQgXCJrd19kZWZhdWx0c1wiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNjYyOSw5ICs2NzIxLDkgQEAKICAgICAgICAgaWRlbnRpZmllciBhcmc7CiAgICAgICAgIGV4cHJfdHkgYW5ub3RhdGlvbjsKIAotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJhcmciKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2FyZykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYXJnIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FyZyk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmYXJnLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY2NDEsOSArNjczMyw5IEBACiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiYXJnXCIgbWlzc2luZyBmcm9tIGFyZyIpOwogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImFubm90YXRpb24iKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2Fubm90YXRpb24pKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImFubm90YXRpb24iKTsKKyAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfYW5ub3RhdGlvbik7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmYW5ub3RhdGlvbiwgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC02NjY2LDkgKzY3NTgsOSBAQAogICAgICAgICBpZGVudGlmaWVyIGFyZzsKICAgICAgICAgZXhwcl90eSB2YWx1ZTsKIAotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJhcmciKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2FyZykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYXJnIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FyZyk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmYXJnLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY2NzgsOSArNjc3MCw5IEBACiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiYXJnXCIgbWlzc2luZyBmcm9tIGtleXdvcmQiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ2YWx1ZSIpKSB7CisgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfdmFsdWUpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInZhbHVlIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3ZhbHVlKTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZ2YWx1ZSwgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC02NzA0LDkgKzY3OTYsOSBAQAogICAgICAgICBpZGVudGlmaWVyIG5hbWU7CiAgICAgICAgIGlkZW50aWZpZXIgYXNuYW1lOwogCi0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgIm5hbWUiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX25hbWUpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm5hbWUiKTsKKyAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfbmFtZSk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmbmFtZSwgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC02NzE2LDkgKzY4MDgsOSBAQAogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcIm5hbWVcIiBtaXNzaW5nIGZyb20gYWxpYXMiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJhc25hbWUiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2FzbmFtZSkpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYXNuYW1lIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FzbmFtZSk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmYXNuYW1lLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY3MzQsNiArNjgyNiw0MyBAQAogICAgICAgICByZXR1cm4gMTsKIH0KIAoraW50CitvYmoyYXN0X3dpdGhpdGVtKFB5T2JqZWN0KiBvYmosIHdpdGhpdGVtX3R5KiBvdXQsIFB5QXJlbmEqIGFyZW5hKQoreworICAgICAgICBQeU9iamVjdCogdG1wID0gTlVMTDsKKyAgICAgICAgZXhwcl90eSBjb250ZXh0X2V4cHI7CisgICAgICAgIGV4cHJfdHkgb3B0aW9uYWxfdmFyczsKKworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2NvbnRleHRfZXhwcikpIHsKKyAgICAgICAgICAgICAgICBpbnQgcmVzOworICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9jb250ZXh0X2V4cHIpOworICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CisgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJmNvbnRleHRfZXhwciwgYXJlbmEpOworICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CisgICAgICAgICAgICAgICAgUHlfWERFQ1JFRih0bXApOworICAgICAgICAgICAgICAgIHRtcCA9IE5VTEw7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiY29udGV4dF9leHByXCIgbWlzc2luZyBmcm9tIHdpdGhpdGVtIik7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIH0KKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9vcHRpb25hbF92YXJzKSkgeworICAgICAgICAgICAgICAgIGludCByZXM7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX29wdGlvbmFsX3ZhcnMpOworICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CisgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJm9wdGlvbmFsX3ZhcnMsIGFyZW5hKTsKKyAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOworICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodG1wKTsKKyAgICAgICAgICAgICAgICB0bXAgPSBOVUxMOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIG9wdGlvbmFsX3ZhcnMgPSBOVUxMOworICAgICAgICB9CisgICAgICAgICpvdXQgPSB3aXRoaXRlbShjb250ZXh0X2V4cHIsIG9wdGlvbmFsX3ZhcnMsIGFyZW5hKTsKKyAgICAgICAgcmV0dXJuIDA7CitmYWlsZWQ6CisgICAgICAgIFB5X1hERUNSRUYodG1wKTsKKyAgICAgICAgcmV0dXJuIDE7Cit9CisKIAogc3RhdGljIHN0cnVjdCBQeU1vZHVsZURlZiBfYXN0bW9kdWxlID0gewogICBQeU1vZHVsZURlZl9IRUFEX0lOSVQsICJfYXN0IgpAQCAtNjc1MCw4ICs2ODc5LDYgQEAKICAgICAgICAgICAgIE5VTEw7CiAgICAgICAgIGlmIChQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUHlDRl9PTkxZX0FTVCIsIFB5Q0ZfT05MWV9BU1QpIDwgMCkKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgaWYgKFB5TW9kdWxlX0FkZFN0cmluZ0NvbnN0YW50KG0sICJfX3ZlcnNpb25fXyIsICI4MjE2MyIpIDwgMCkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJtb2QiLCAoUHlPYmplY3QqKW1vZF90eXBlKSA8IDApIHJldHVybgogICAgICAgICAgICAgTlVMTDsKICAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJNb2R1bGUiLCAoUHlPYmplY3QqKU1vZHVsZV90eXBlKSA8IDApCkBAIC02Nzg1LDEwICs2OTEyLDggQEAKICAgICAgICAgICAgIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiUmFpc2UiLCAoUHlPYmplY3QqKVJhaXNlX3R5cGUpIDwgMCkgcmV0dXJuCiAgICAgICAgICAgICBOVUxMOwotICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlRyeUV4Y2VwdCIsIChQeU9iamVjdCopVHJ5RXhjZXB0X3R5cGUpIDwKLSAgICAgICAgICAgIDApIHJldHVybiBOVUxMOwotICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlRyeUZpbmFsbHkiLCAoUHlPYmplY3QqKVRyeUZpbmFsbHlfdHlwZSkgPAotICAgICAgICAgICAgMCkgcmV0dXJuIE5VTEw7CisgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiVHJ5IiwgKFB5T2JqZWN0KilUcnlfdHlwZSkgPCAwKSByZXR1cm4KKyAgICAgICAgICAgIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiQXNzZXJ0IiwgKFB5T2JqZWN0KilBc3NlcnRfdHlwZSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiSW1wb3J0IiwgKFB5T2JqZWN0KilJbXBvcnRfdHlwZSkgPCAwKQpAQCAtNjgzMyw2ICs2OTU4LDggQEAKICAgICAgICAgICAgIChQeU9iamVjdCopR2VuZXJhdG9yRXhwX3R5cGUpIDwgMCkgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiWWllbGQiLCAoUHlPYmplY3QqKVlpZWxkX3R5cGUpIDwgMCkgcmV0dXJuCiAgICAgICAgICAgICBOVUxMOworICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIllpZWxkRnJvbSIsIChQeU9iamVjdCopWWllbGRGcm9tX3R5cGUpIDwKKyAgICAgICAgICAgIDApIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIkNvbXBhcmUiLCAoUHlPYmplY3QqKUNvbXBhcmVfdHlwZSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiQ2FsbCIsIChQeU9iamVjdCopQ2FsbF90eXBlKSA8IDApIHJldHVybgpAQCAtNjk1MSw2ICs3MDc4LDggQEAKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgImFsaWFzIiwgKFB5T2JqZWN0KilhbGlhc190eXBlKSA8IDApIHJldHVybgogICAgICAgICAgICAgTlVMTDsKKyAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJ3aXRoaXRlbSIsIChQeU9iamVjdCopd2l0aGl0ZW1fdHlwZSkgPCAwKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIHJldHVybiBtOwogfQogCmRpZmYgLS1naXQgYS9QeXRob24vX3dhcm5pbmdzLmMgYi9QeXRob24vX3dhcm5pbmdzLmMKaW5kZXggYzEyZGI0NC4uZjMzZTQ3NyAxMDA2NDQKLS0tIGEvUHl0aG9uL193YXJuaW5ncy5jCisrKyBiL1B5dGhvbi9fd2FybmluZ3MuYwpAQCAtMTgsMTEgKzE4LDEyIEBACiBjaGVja19tYXRjaGVkKFB5T2JqZWN0ICpvYmosIFB5T2JqZWN0ICphcmcpCiB7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihtYXRjaCk7CiAgICAgaW50IHJjOwogCiAgICAgaWYgKG9iaiA9PSBQeV9Ob25lKQogICAgICAgICByZXR1cm4gMTsKLSAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKG9iaiwgIm1hdGNoIiwgIk8iLCBhcmcpOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQob2JqLCAmUHlJZF9tYXRjaCwgIk8iLCBhcmcpOwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwogCkBAIC0yMDIsMTMgKzIwMywxMyBAQAogCiAgICAgbW9kX3N0ciA9IF9QeVVuaWNvZGVfQXNTdHJpbmcoZmlsZW5hbWUpOwogICAgIGlmIChtb2Rfc3RyID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBsZW4gPSBQeVVuaWNvZGVfR2V0U2l6ZShmaWxlbmFtZSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbiA9IFB5VW5pY29kZV9HZXRMZW5ndGgoZmlsZW5hbWUpOwogICAgIGlmIChsZW4gPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAobGVuID49IDMgJiYKICAgICAgICAgc3RybmNtcChtb2Rfc3RyICsgKGxlbiAtIDMpLCAiLnB5IiwgMykgPT0gMCkgewotICAgICAgICBtb2R1bGUgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUobW9kX3N0ciwgbGVuLTMpOworICAgICAgICBtb2R1bGUgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKGZpbGVuYW1lLCAwLCBsZW4tMyk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBtb2R1bGUgPSBmaWxlbmFtZTsKQEAgLTI0NiwxMCArMjQ3LDExIEBACiAgICAgUHlPYmplY3QgKmZfc3RkZXJyOwogICAgIFB5T2JqZWN0ICpuYW1lOwogICAgIGNoYXIgbGluZW5vX3N0clsxMjhdOworICAgIF9QeV9JREVOVElGSUVSKF9fbmFtZV9fKTsKIAogICAgIFB5T1Nfc25wcmludGYobGluZW5vX3N0ciwgc2l6ZW9mKGxpbmVub19zdHIpLCAiOiVkOiAiLCBsaW5lbm8pOwogCi0gICAgbmFtZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoY2F0ZWdvcnksICJfX25hbWVfXyIpOworICAgIG5hbWUgPSBfUHlPYmplY3RfR2V0QXR0cklkKGNhdGVnb3J5LCAmUHlJZF9fX25hbWVfXyk7CiAgICAgaWYgKG5hbWUgPT0gTlVMTCkgIC8qIFhYWCBDYW4gYW4gb2JqZWN0IGxhY2sgYSAnX19uYW1lX18nIGF0dHJpYnV0ZT8gKi8KICAgICAgICAgcmV0dXJuOwogCkBAIC00MDksMTAgKzQxMSwxMCBAQAogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIFB5T2JqZWN0ICpyZXM7CiAKLSAgICAgICAgICAgIGlmICghUHlNZXRob2RfQ2hlY2soc2hvd19meG4pICYmICFQeUZ1bmN0aW9uX0NoZWNrKHNob3dfZnhuKSkgeworICAgICAgICAgICAgaWYgKCFQeUNhbGxhYmxlX0NoZWNrKHNob3dfZnhuKSkgewogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3YXJuaW5ncy5zaG93d2FybmluZygpIG11c3QgYmUgc2V0IHRvIGEgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnVuY3Rpb24gb3IgbWV0aG9kIik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjYWxsYWJsZSIpOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihzaG93X2Z4bik7CiAgICAgICAgICAgICAgICAgZ290byBjbGVhbnVwOwogICAgICAgICAgICAgfQpAQCAtNDk3LDE4ICs0OTksMjggQEAKICAgICAvKiBTZXR1cCBmaWxlbmFtZS4gKi8KICAgICAqZmlsZW5hbWUgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhnbG9iYWxzLCAiX19maWxlX18iKTsKICAgICBpZiAoKmZpbGVuYW1lICE9IE5VTEwgJiYgUHlVbmljb2RlX0NoZWNrKCpmaWxlbmFtZSkpIHsKLSAgICAgICAgUHlfc3NpemVfdCBsZW4gPSBQeVVuaWNvZGVfR2V0U2l6ZSgqZmlsZW5hbWUpOwotICAgICAgICBQeV9VTklDT0RFICp1bmljb2RlID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKmZpbGVuYW1lKTsKKyAgICAgICAgUHlfc3NpemVfdCBsZW47CisgICAgICAgIGludCBraW5kOworICAgICAgICB2b2lkICpkYXRhOwogCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoKmZpbGVuYW1lKSkKKyAgICAgICAgICAgIGdvdG8gaGFuZGxlX2Vycm9yOworCisgICAgICAgIGxlbiA9IFB5VW5pY29kZV9HZXRMZW5ndGgoKmZpbGVuYW1lKTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKCpmaWxlbmFtZSk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSgqZmlsZW5hbWUpOworCisjZGVmaW5lIGFzY2lpX2xvd2VyKGMpICgoYyA8PSAxMjcpID8gUHlfVE9MT1dFUihjKSA6IDApCiAgICAgICAgIC8qIGlmIGZpbGVuYW1lLmxvd2VyKCkuZW5kc3dpdGgoKCIucHljIiwgIi5weW8iKSk6ICovCiAgICAgICAgIGlmIChsZW4gPj0gNCAmJgotICAgICAgICAgICAgdW5pY29kZVtsZW4tNF0gPT0gJy4nICYmCi0gICAgICAgICAgICBQeV9VTklDT0RFX1RPTE9XRVIodW5pY29kZVtsZW4tM10pID09ICdwJyAmJgotICAgICAgICAgICAgUHlfVU5JQ09ERV9UT0xPV0VSKHVuaWNvZGVbbGVuLTJdKSA9PSAneScgJiYKLSAgICAgICAgICAgIChQeV9VTklDT0RFX1RPTE9XRVIodW5pY29kZVtsZW4tMV0pID09ICdjJyB8fAotICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfVE9MT1dFUih1bmljb2RlW2xlbi0xXSkgPT0gJ28nKSkKKyAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGxlbi00KSA9PSAnLicgJiYKKyAgICAgICAgICAgIGFzY2lpX2xvd2VyKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGxlbi0zKSkgPT0gJ3AnICYmCisgICAgICAgICAgICBhc2NpaV9sb3dlcihQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBsZW4tMikpID09ICd5JyAmJgorICAgICAgICAgICAgKGFzY2lpX2xvd2VyKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGxlbi0xKSkgPT0gJ2MnIHx8CisgICAgICAgICAgICAgICAgYXNjaWlfbG93ZXIoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgbGVuLTEpKSA9PSAnbycpKQogICAgICAgICB7Ci0gICAgICAgICAgICAqZmlsZW5hbWUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUodW5pY29kZSwgbGVuLTEpOworICAgICAgICAgICAgKmZpbGVuYW1lID0gUHlVbmljb2RlX1N1YnN0cmluZygqZmlsZW5hbWUsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKCpmaWxlbmFtZSktMSk7CiAgICAgICAgICAgICBpZiAoKmZpbGVuYW1lID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBoYW5kbGVfZXJyb3I7CiAgICAgICAgIH0KQEAgLTY0Myw4ICs2NTUsOSBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmIChtb2R1bGVfZ2xvYmFscykgewotICAgICAgICBzdGF0aWMgUHlPYmplY3QgKmdldF9zb3VyY2VfbmFtZSA9IE5VTEw7Ci0gICAgICAgIHN0YXRpYyBQeU9iamVjdCAqc3BsaXRsaW5lc19uYW1lID0gTlVMTDsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZ2V0X3NvdXJjZSk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHNwbGl0bGluZXMpOworICAgICAgICBQeU9iamVjdCAqdG1wOwogICAgICAgICBQeU9iamVjdCAqbG9hZGVyOwogICAgICAgICBQeU9iamVjdCAqbW9kdWxlX25hbWU7CiAgICAgICAgIFB5T2JqZWN0ICpzb3VyY2U7CkBAIC02NTIsMTYgKzY2NSwxMCBAQAogICAgICAgICBQeU9iamVjdCAqc291cmNlX2xpbmU7CiAgICAgICAgIFB5T2JqZWN0ICpyZXR1cm5lZDsKIAotICAgICAgICBpZiAoZ2V0X3NvdXJjZV9uYW1lID09IE5VTEwpIHsKLSAgICAgICAgICAgIGdldF9zb3VyY2VfbmFtZSA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJnZXRfc291cmNlIik7Ci0gICAgICAgICAgICBpZiAoIWdldF9zb3VyY2VfbmFtZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBpZiAoc3BsaXRsaW5lc19uYW1lID09IE5VTEwpIHsKLSAgICAgICAgICAgIHNwbGl0bGluZXNfbmFtZSA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJzcGxpdGxpbmVzIik7Ci0gICAgICAgICAgICBpZiAoIXNwbGl0bGluZXNfbmFtZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQorICAgICAgICBpZiAoKHRtcCA9IF9QeVVuaWNvZGVfRnJvbUlkKCZQeUlkX2dldF9zb3VyY2UpKSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGlmICgodG1wID0gX1B5VW5pY29kZV9Gcm9tSWQoJlB5SWRfc3BsaXRsaW5lcykpID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgICAgICAvKiBDaGVjay9nZXQgdGhlIHJlcXVpc2l0ZSBwaWVjZXMgbmVlZGVkIGZvciB0aGUgbG9hZGVyLiAqLwogICAgICAgICBsb2FkZXIgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhtb2R1bGVfZ2xvYmFscywgIl9fbG9hZGVyX18iKTsKQEAgLTY3MSwxMSArNjc4LDExIEBACiAgICAgICAgICAgICBnb3RvIHN0YW5kYXJkX2NhbGw7CiAKICAgICAgICAgLyogTWFrZSBzdXJlIHRoZSBsb2FkZXIgaW1wbGVtZW50cyB0aGUgb3B0aW9uYWwgZ2V0X3NvdXJjZSgpIG1ldGhvZC4gKi8KLSAgICAgICAgaWYgKCFQeU9iamVjdF9IYXNBdHRyU3RyaW5nKGxvYWRlciwgImdldF9zb3VyY2UiKSkKKyAgICAgICAgaWYgKCFfUHlPYmplY3RfSGFzQXR0cklkKGxvYWRlciwgJlB5SWRfZ2V0X3NvdXJjZSkpCiAgICAgICAgICAgICAgICAgZ290byBzdGFuZGFyZF9jYWxsOwogICAgICAgICAvKiBDYWxsIGdldF9zb3VyY2UoKSB0byBnZXQgdGhlIHNvdXJjZSBjb2RlLiAqLwotICAgICAgICBzb3VyY2UgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhsb2FkZXIsIGdldF9zb3VyY2VfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9uYW1lLCBOVUxMKTsKKyAgICAgICAgc291cmNlID0gUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3MobG9hZGVyLCBQeUlkX2dldF9zb3VyY2Uub2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVfbmFtZSwgTlVMTCk7CiAgICAgICAgIGlmICghc291cmNlKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGVsc2UgaWYgKHNvdXJjZSA9PSBQeV9Ob25lKSB7CkBAIC02ODQsOCArNjkxLDkgQEAKICAgICAgICAgfQogCiAgICAgICAgIC8qIFNwbGl0IHRoZSBzb3VyY2UgaW50byBsaW5lcy4gKi8KLSAgICAgICAgc291cmNlX2xpc3QgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzb3VyY2UsIHNwbGl0bGluZXNfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgICAgICAgc291cmNlX2xpc3QgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzb3VyY2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlJZF9zcGxpdGxpbmVzLm9iamVjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKICAgICAgICAgUHlfREVDUkVGKHNvdXJjZSk7CiAgICAgICAgIGlmICghc291cmNlX2xpc3QpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTk1MCwyMyArOTU4LDMwIEBACiAgICAgaWYgKG0gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBfZmlsdGVycyA9IGluaXRfZmlsdGVycygpOwotICAgIGlmIChfZmlsdGVycyA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoX2ZpbHRlcnMgPT0gTlVMTCkgeworICAgICAgICBfZmlsdGVycyA9IGluaXRfZmlsdGVycygpOworICAgICAgICBpZiAoX2ZpbHRlcnMgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KICAgICBQeV9JTkNSRUYoX2ZpbHRlcnMpOwogICAgIGlmIChQeU1vZHVsZV9BZGRPYmplY3QobSwgImZpbHRlcnMiLCBfZmlsdGVycykgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIF9vbmNlX3JlZ2lzdHJ5ID0gUHlEaWN0X05ldygpOwotICAgIGlmIChfb25jZV9yZWdpc3RyeSA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoX29uY2VfcmVnaXN0cnkgPT0gTlVMTCkgeworICAgICAgICBfb25jZV9yZWdpc3RyeSA9IFB5RGljdF9OZXcoKTsKKyAgICAgICAgaWYgKF9vbmNlX3JlZ2lzdHJ5ID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAgICAgUHlfSU5DUkVGKF9vbmNlX3JlZ2lzdHJ5KTsKICAgICBpZiAoUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJfb25jZXJlZ2lzdHJ5IiwgX29uY2VfcmVnaXN0cnkpIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBfZGVmYXVsdF9hY3Rpb24gPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiZGVmYXVsdCIpOwotICAgIGlmIChfZGVmYXVsdF9hY3Rpb24gPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKF9kZWZhdWx0X2FjdGlvbiA9PSBOVUxMKSB7CisgICAgICAgIF9kZWZhdWx0X2FjdGlvbiA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCJkZWZhdWx0Iik7CisgICAgICAgIGlmIChfZGVmYXVsdF9hY3Rpb24gPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBQeV9JTkNSRUYoX2RlZmF1bHRfYWN0aW9uKTsKICAgICBpZiAoUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJfZGVmYXVsdGFjdGlvbiIsIF9kZWZhdWx0X2FjdGlvbikgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICByZXR1cm4gbTsKZGlmZiAtLWdpdCBhL1B5dGhvbi9hc3QuYyBiL1B5dGhvbi9hc3QuYwppbmRleCA2MjY5YzY0Li4wZjkzMDk4IDEwMDY0NAotLS0gYS9QeXRob24vYXN0LmMKKysrIGIvUHl0aG9uL2FzdC5jCkBAIC0xLDI0ICsxLDUwNyBAQAogLyoKICAqIFRoaXMgZmlsZSBpbmNsdWRlcyBmdW5jdGlvbnMgdG8gdHJhbnNmb3JtIGEgY29uY3JldGUgc3ludGF4IHRyZWUgKENTVCkgdG8KLSAqIGFuIGFic3RyYWN0IHN5bnRheCB0cmVlIChBU1QpLiAgVGhlIG1haW4gZnVuY3Rpb24gaXMgUHlBU1RfRnJvbU5vZGUoKS4KKyAqIGFuIGFic3RyYWN0IHN5bnRheCB0cmVlIChBU1QpLiBUaGUgbWFpbiBmdW5jdGlvbiBpcyBQeUFTVF9Gcm9tTm9kZSgpLgogICoKICAqLwogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgIlB5dGhvbi1hc3QuaCIKLSNpbmNsdWRlICJncmFtbWFyLmgiCiAjaW5jbHVkZSAibm9kZS5oIgogI2luY2x1ZGUgImFzdC5oIgogI2luY2x1ZGUgInRva2VuLmgiCi0jaW5jbHVkZSAicGFyc2V0b2suaCIKLSNpbmNsdWRlICJncmFtaW5pdC5oIgogCiAjaW5jbHVkZSA8YXNzZXJ0Lmg+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+bl9jb2xfb2Zmc2V0LCBjLT5jX2FyZW5hKTsKKyAgICByZXR1cm4gd2l0aGl0ZW0oY29udGV4dF9leHByLCBvcHRpb25hbF92YXJzLCBjLT5jX2FyZW5hKTsKIH0KIAogLyogd2l0aF9zdG10OiAnd2l0aCcgd2l0aF9pdGVtICgnLCcgd2l0aF9pdGVtKSogJzonIHN1aXRlICovCiBzdGF0aWMgc3RtdF90eQogYXN0X2Zvcl93aXRoX3N0bXQoc3RydWN0IGNvbXBpbGluZyAqYywgY29uc3Qgbm9kZSAqbikKIHsKLSAgICBpbnQgaTsKLSAgICBzdG10X3R5IHJldDsKLSAgICBhc2RsX3NlcSAqaW5uZXI7CisgICAgaW50IGksIG5faXRlbXM7CisgICAgYXNkbF9zZXEgKml0ZW1zLCAqYm9keTsKIAogICAgIFJFUShuLCB3aXRoX3N0bXQpOwogCi0gICAgLyogcHJvY2VzcyB0aGUgd2l0aCBpdGVtcyBpbnNpZGUtb3V0ICovCi0gICAgaSA9IE5DSChuKSAtIDE7Ci0gICAgLyogdGhlIHN1aXRlIG9mIHRoZSBpbm5lcm1vc3Qgd2l0aCBpdGVtIGlzIHRoZSBzdWl0ZSBvZiB0aGUgd2l0aCBzdG10ICovCi0gICAgaW5uZXIgPSBhc3RfZm9yX3N1aXRlKGMsIENISUxEKG4sIGkpKTsKLSAgICBpZiAoIWlubmVyKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgaSAtPSAyOwotICAgICAgICByZXQgPSBhc3RfZm9yX3dpdGhfaXRlbShjLCBDSElMRChuLCBpKSwgaW5uZXIpOwotICAgICAgICBpZiAoIXJldCkKKyAgICBuX2l0ZW1zID0gKE5DSChuKSAtIDIpIC8gMjsKKyAgICBpdGVtcyA9IGFzZGxfc2VxX25ldyhuX2l0ZW1zLCBjLT5jX2FyZW5hKTsKKyAgICBmb3IgKGkgPSAxOyBpIDwgTkNIKG4pIC0gMjsgaSArPSAyKSB7CisgICAgICAgIHdpdGhpdGVtX3R5IGl0ZW0gPSBhc3RfZm9yX3dpdGhfaXRlbShjLCBDSElMRChuLCBpKSk7CisgICAgICAgIGlmICghaXRlbSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAvKiB3YXMgdGhpcyB0aGUgbGFzdCBpdGVtPyAqLwotICAgICAgICBpZiAoaSA9PSAxKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIC8qIGlmIG5vdCwgd3JhcCB0aGUgcmVzdWx0IHNvIGZhciBpbiBhIG5ldyBzZXF1ZW5jZSAqLwotICAgICAgICBpbm5lciA9IGFzZGxfc2VxX25ldygxLCBjLT5jX2FyZW5hKTsKLSAgICAgICAgaWYgKCFpbm5lcikKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBhc2RsX3NlcV9TRVQoaW5uZXIsIDAsIHJldCk7CisgICAgICAgIGFzZGxfc2VxX1NFVChpdGVtcywgKGkgLSAxKSAvIDIsIGl0ZW0pOwogICAgIH0KIAotICAgIHJldHVybiByZXQ7CisgICAgYm9keSA9IGFzdF9mb3Jfc3VpdGUoYywgQ0hJTEQobiwgTkNIKG4pIC0gMSkpOworICAgIGlmICghYm9keSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXR1cm4gV2l0aChpdGVtcywgYm9keSwgTElORU5PKG4pLCBuLT5uX2NvbF9vZmZzZXQsIGMtPmNfYXJlbmEpOwogfQogCiBzdGF0aWMgc3RtdF90eQpAQCAtMzIwNywyMCArMzcwMywxNCBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotZGVjb2RlX3V0Zjgoc3RydWN0IGNvbXBpbGluZyAqYywgY29uc3QgY2hhciAqKnNQdHIsIGNvbnN0IGNoYXIgKmVuZCwgY2hhciogZW5jb2RpbmcpCitkZWNvZGVfdXRmOChzdHJ1Y3QgY29tcGlsaW5nICpjLCBjb25zdCBjaGFyICoqc1B0ciwgY29uc3QgY2hhciAqZW5kKQogewotICAgIFB5T2JqZWN0ICp1LCAqdjsKICAgICBjaGFyICpzLCAqdDsKICAgICB0ID0gcyA9IChjaGFyICopKnNQdHI7CiAgICAgLyogd2hpbGUgKHMgPCBlbmQgJiYgKnMgIT0gJ1xcJykgcysrOyAqLyAvKiBpbmVmZmljaWVudCBmb3IgdSIuLiIgKi8KICAgICB3aGlsZSAocyA8IGVuZCAmJiAoKnMgJiAweDgwKSkgcysrOwogICAgICpzUHRyID0gczsKLSAgICB1ID0gUHlVbmljb2RlX0RlY29kZVVURjgodCwgcyAtIHQsIE5VTEwpOwotICAgIGlmICh1ID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKHUsIGVuY29kaW5nLCBOVUxMKTsKLSAgICBQeV9ERUNSRUYodSk7Ci0gICAgcmV0dXJuIHY7CisgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVVVEY4KHQsIHMgLSB0LCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTMyMzIsNyArMzcyMiw2IEBACiAgICAgY29uc3QgY2hhciAqZW5kOwogCiAgICAgaWYgKGVuY29kaW5nID09IE5VTEwpIHsKLSAgICAgICAgYnVmID0gKGNoYXIgKilzOwogICAgICAgICB1ID0gTlVMTDsKICAgICB9IGVsc2UgewogICAgICAgICAvKiBjaGVjayBmb3IgaW50ZWdlciBvdmVyZmxvdyAqLwpAQCAtMzI1NSwyMiArMzc0NCwyMCBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKCpzICYgMHg4MCkgeyAvKiBYWFggaW5lZmZpY2llbnQgKi8KICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdzsKLSAgICAgICAgICAgICAgICBjaGFyICpyOwotICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgcm4sIGk7Ci0gICAgICAgICAgICAgICAgdyA9IGRlY29kZV91dGY4KGMsICZzLCBlbmQsICJ1dGYtMzItYmUiKTsKKyAgICAgICAgICAgICAgICBpbnQga2luZDsKKyAgICAgICAgICAgICAgICB2b2lkICpkYXRhOworICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuLCBpOworICAgICAgICAgICAgICAgIHcgPSBkZWNvZGVfdXRmOChjLCAmcywgZW5kKTsKICAgICAgICAgICAgICAgICBpZiAodyA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih1KTsKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHIgPSBQeUJ5dGVzX0FTX1NUUklORyh3KTsKLSAgICAgICAgICAgICAgICBybiA9IFB5X1NJWkUodyk7Ci0gICAgICAgICAgICAgICAgYXNzZXJ0KHJuICUgNCA9PSAwKTsKLSAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgcm47IGkgKz0gNCkgewotICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKHAsICJcXFUlMDJ4JTAyeCUwMnglMDJ4IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByW2kgKyAwXSAmIDB4RkYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcltpICsgMV0gJiAweEZGLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJbaSArIDJdICYgMHhGRiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByW2kgKyAzXSAmIDB4RkYpOworICAgICAgICAgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh3KTsKKyAgICAgICAgICAgICAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodyk7CisgICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodyk7CisgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgY2hyID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICAgICAgICAgICAgICAgIHNwcmludGYocCwgIlxcVSUwOHgiLCBjaHIpOwogICAgICAgICAgICAgICAgICAgICBwICs9IDEwOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiBTaG91bGQgYmUgaW1wb3NzaWJsZSB0byBvdmVyZmxvdyAqLwpAQCAtMzMwNCwxMyArMzc5MSwyMSBAQAogICAgIGludCByYXdtb2RlID0gMDsKICAgICBpbnQgbmVlZF9lbmNvZGluZzsKICAgICBpZiAoaXNhbHBoYShxdW90ZSkpIHsKLSAgICAgICAgaWYgKHF1b3RlID09ICdiJyB8fCBxdW90ZSA9PSAnQicpIHsKLSAgICAgICAgICAgIHF1b3RlID0gKisrczsKLSAgICAgICAgICAgICpieXRlc21vZGUgPSAxOwotICAgICAgICB9Ci0gICAgICAgIGlmIChxdW90ZSA9PSAncicgfHwgcXVvdGUgPT0gJ1InKSB7Ci0gICAgICAgICAgICBxdW90ZSA9ICorK3M7Ci0gICAgICAgICAgICByYXdtb2RlID0gMTsKKyAgICAgICAgd2hpbGUgKCEqYnl0ZXNtb2RlIHx8ICFyYXdtb2RlKSB7CisgICAgICAgICAgICBpZiAocXVvdGUgPT0gJ2InIHx8IHF1b3RlID09ICdCJykgeworICAgICAgICAgICAgICAgIHF1b3RlID0gKisrczsKKyAgICAgICAgICAgICAgICAqYnl0ZXNtb2RlID0gMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgaWYgKHF1b3RlID09ICd1JyB8fCBxdW90ZSA9PSAnVScpIHsKKyAgICAgICAgICAgICAgICBxdW90ZSA9ICorK3M7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIGlmIChxdW90ZSA9PSAncicgfHwgcXVvdGUgPT0gJ1InKSB7CisgICAgICAgICAgICAgICAgcXVvdGUgPSAqKytzOworICAgICAgICAgICAgICAgIHJhd21vZGUgPSAxOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CiAgICAgaWYgKHF1b3RlICE9ICdcJycgJiYgcXVvdGUgIT0gJ1wiJykgewpkaWZmIC0tZ2l0IGEvUHl0aG9uL2JsdGlubW9kdWxlLmMgYi9QeXRob24vYmx0aW5tb2R1bGUuYwppbmRleCBlMmZmMGJhLi44MTQwMmZjIDEwMDY0NAotLS0gYS9QeXRob24vYmx0aW5tb2R1bGUuYworKysgYi9QeXRob24vYmx0aW5tb2R1bGUuYwpAQCAtNiw2ICs2LDkgQEAKICNpbmNsdWRlICJub2RlLmgiCiAjaW5jbHVkZSAiY29kZS5oIgogCisjaW5jbHVkZSAiYXNkbC5oIgorI2luY2x1ZGUgImFzdC5oIgorCiAjaW5jbHVkZSA8Y3R5cGUuaD4KIAogI2lmZGVmIEhBVkVfTEFOR0lORk9fSApAQCAtMTgsMjAgKzIxLDIwIEBACiAgICBEb24ndCBmb3JnZXQgdG8gbW9kaWZ5IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQoKSBpZiB5b3UgdG91Y2ggYW55IG9mIHRoZQogICAgdmFsdWVzIGZvciBQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nIQogKi8KLSNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpICYmIGRlZmluZWQoSEFWRV9VU0FCTEVfV0NIQVJfVCkKKyNpZmRlZiBIQVZFX01CQ1MKIGNvbnN0IGNoYXIgKlB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPSAibWJjcyI7CiBpbnQgUHlfSGFzRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyA9IDE7CiAjZWxpZiBkZWZpbmVkKF9fQVBQTEVfXykKIGNvbnN0IGNoYXIgKlB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPSAidXRmLTgiOwogaW50IFB5X0hhc0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPSAxOwotI2VsaWYgZGVmaW5lZChIQVZFX0xBTkdJTkZPX0gpICYmIGRlZmluZWQoQ09ERVNFVCkKKyNlbHNlCiBjb25zdCBjaGFyICpQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nID0gTlVMTDsgLyogc2V0IGJ5IGluaXRmc2VuY29kaW5nKCkgKi8KIGludCBQeV9IYXNGaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nID0gMDsKLSNlbHNlCi1jb25zdCBjaGFyICpQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nID0gInV0Zi04IjsKLWludCBQeV9IYXNGaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nID0gMTsKICNlbmRpZgogCitfUHlfSURFTlRJRklFUihmaWxlbm8pOworX1B5X0lERU5USUZJRVIoZmx1c2gpOworCiBzdGF0aWMgUHlPYmplY3QgKgogYnVpbHRpbl9fX2J1aWxkX2NsYXNzX18oUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKQEAgLTM5LDYgKzQyLDcgQEAKICAgICBQeU9iamVjdCAqY2xzID0gTlVMTDsKICAgICBQeV9zc2l6ZV90IG5hcmdzOwogICAgIGludCBpc2NsYXNzOworICAgIF9QeV9JREVOVElGSUVSKF9fcHJlcGFyZV9fKTsKIAogICAgIGFzc2VydChhcmdzICE9IE5VTEwpOwogICAgIGlmICghUHlUdXBsZV9DaGVjayhhcmdzKSkgewpAQCAtOTksNiArMTAzLDcgQEAKICAgICAgICAgUHlfSU5DUkVGKG1ldGEpOwogICAgICAgICBpc2NsYXNzID0gMTsgIC8qIG1ldGEgaXMgcmVhbGx5IGEgY2xhc3MgKi8KICAgICB9CisKICAgICBpZiAoaXNjbGFzcykgewogICAgICAgICAvKiBtZXRhIGlzIHJlYWxseSBhIGNsYXNzLCBzbyBjaGVjayBmb3IgYSBtb3JlIGRlcml2ZWQKICAgICAgICAgICAgbWV0YWNsYXNzLCBvciBwb3NzaWJsZSBtZXRhY2xhc3MgY29uZmxpY3RzOiAqLwpAQCAtMTE4LDcgKzEyMyw3IEBACiAgICAgfQogICAgIC8qIGVsc2U6IG1ldGEgaXMgbm90IGEgY2xhc3MsIHNvIHdlIGNhbm5vdCBkbyB0aGUgbWV0YWNsYXNzCiAgICAgICAgY2FsY3VsYXRpb24sIHNvIHdlIHdpbGwgdXNlIHRoZSBleHBsaWNpdGx5IGdpdmVuIG9iamVjdCBhcyBpdCBpcyAqLwotICAgIHByZXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG1ldGEsICJfX3ByZXBhcmVfXyIpOworICAgIHByZXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG1ldGEsICZQeUlkX19fcHJlcGFyZV9fKTsKICAgICBpZiAocHJlcCA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkgewogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKQEAgLTE4MSwxNyArMTg2LDE0IEBACiB7CiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJuYW1lIiwgImdsb2JhbHMiLCAibG9jYWxzIiwgImZyb21saXN0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxldmVsIiwgMH07Ci0gICAgY2hhciAqbmFtZTsKLSAgICBQeU9iamVjdCAqZ2xvYmFscyA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmxvY2FscyA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmZyb21saXN0ID0gTlVMTDsKKyAgICBQeU9iamVjdCAqbmFtZSwgKmdsb2JhbHMgPSBOVUxMLCAqbG9jYWxzID0gTlVMTCwgKmZyb21saXN0ID0gTlVMTDsKICAgICBpbnQgbGV2ZWwgPSAtMTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJzfE9PT2k6X19pbXBvcnRfXyIsCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIlV8T09PaTpfX2ltcG9ydF9fIiwKICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmbmFtZSwgJmdsb2JhbHMsICZsb2NhbHMsICZmcm9tbGlzdCwgJmxldmVsKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmV0dXJuIFB5SW1wb3J0X0ltcG9ydE1vZHVsZUxldmVsKG5hbWUsIGdsb2JhbHMsIGxvY2FscywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbWxpc3QsIGxldmVsKTsKKyAgICByZXR1cm4gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWxPYmplY3QobmFtZSwgZ2xvYmFscywgbG9jYWxzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tbGlzdCwgbGV2ZWwpOwogfQogCiBQeURvY19TVFJWQVIoaW1wb3J0X2RvYywKQEAgLTUxNiwxNyArNTE4LDEwIEBACiAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tT3JkaW5hbCh4KTsKIH0KIAotUHlEb2NfVkFSKGNocl9kb2MpID0gUHlEb2NfU1RSKAorUHlEb2NfU1RSVkFSKGNocl9kb2MsCiAiY2hyKGkpIC0+IFVuaWNvZGUgY2hhcmFjdGVyXG5cCiBcblwKLVJldHVybiBhIFVuaWNvZGUgc3RyaW5nIG9mIG9uZSBjaGFyYWN0ZXIgd2l0aCBvcmRpbmFsIGk7IDAgPD0gaSA8PSAweDEwZmZmZi4iCi0pCi0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotUHlEb2NfU1RSKAotIlxuSWYgMHgxMDAwMCA8PSBpLCBhIHN1cnJvZ2F0ZSBwYWlyIGlzIHJldHVybmVkLiIKLSkKLSNlbmRpZgotOworUmV0dXJuIGEgVW5pY29kZSBzdHJpbmcgb2Ygb25lIGNoYXJhY3RlciB3aXRoIG9yZGluYWwgaTsgMCA8PSBpIDw9IDB4MTBmZmZmLiIpOwogCiAKIHN0YXRpYyBjaGFyICoKQEAgLTUzNyw4ICs1MzIsOCBAQAogCiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhjbWQpKSB7CiAgICAgICAgIGNmLT5jZl9mbGFncyB8PSBQeUNGX0lHTk9SRV9DT09LSUU7Ci0gICAgICAgIGNtZCA9IF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyhjbWQsIE5VTEwpOwotICAgICAgICBpZiAoY21kID09IE5VTEwpCisgICAgICAgIHN0ciA9IFB5VW5pY29kZV9Bc1VURjhBbmRTaXplKGNtZCwgJnNpemUpOworICAgICAgICBpZiAoc3RyID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgZWxzZSBpZiAoIVB5T2JqZWN0X0NoZWNrUmVhZEJ1ZmZlcihjbWQpKSB7CkBAIC01NDcsOSArNTQyLDEwIEBACiAgICAgICAgICAgZnVuY25hbWUsIHdoYXQpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgaWYgKFB5T2JqZWN0X0FzUmVhZEJ1ZmZlcihjbWQsIChjb25zdCB2b2lkICoqKSZzdHIsICZzaXplKSA8IDApIHsKKyAgICBlbHNlIGlmIChQeU9iamVjdF9Bc1JlYWRCdWZmZXIoY21kLCAoY29uc3Qgdm9pZCAqKikmc3RyLCAmc2l6ZSkgPCAwKSB7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KKwogICAgIGlmIChzdHJsZW4oc3RyKSAhPSBzaXplKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAic291cmNlIGNvZGUgc3RyaW5nIGNhbm5vdCBjb250YWluIG51bGwgYnl0ZXMiKTsKQEAgLTYzNiw2ICs2MzIsMTAgQEAKICAgICAgICAgICAgICAgICBQeUFyZW5hX0ZyZWUoYXJlbmEpOwogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoIVB5QVNUX1ZhbGlkYXRlKG1vZCkpIHsKKyAgICAgICAgICAgICAgICBQeUFyZW5hX0ZyZWUoYXJlbmEpOworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICByZXN1bHQgPSAoUHlPYmplY3QqKVB5QVNUX0NvbXBpbGVFeChtb2QsIGZpbGVuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNmLCBvcHRpbWl6ZSwgYXJlbmEpOwogICAgICAgICAgICAgUHlBcmVuYV9GcmVlKGFyZW5hKTsKQEAgLTc5MSw3ICs3OTEsNiBAQAogewogICAgIFB5T2JqZWN0ICp2OwogICAgIFB5T2JqZWN0ICpwcm9nLCAqZ2xvYmFscyA9IFB5X05vbmUsICpsb2NhbHMgPSBQeV9Ob25lOwotICAgIGludCBwbGFpbiA9IDA7CiAKICAgICBpZiAoIVB5QXJnX1VucGFja1R1cGxlKGFyZ3MsICJleGVjIiwgMSwgMywgJnByb2csICZnbG9iYWxzLCAmbG9jYWxzKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC04MDAsNyArNzk5LDYgQEAKICAgICAgICAgZ2xvYmFscyA9IFB5RXZhbF9HZXRHbG9iYWxzKCk7CiAgICAgICAgIGlmIChsb2NhbHMgPT0gUHlfTm9uZSkgewogICAgICAgICAgICAgbG9jYWxzID0gUHlFdmFsX0dldExvY2FscygpOwotICAgICAgICAgICAgcGxhaW4gPSAxOwogICAgICAgICB9CiAgICAgICAgIGlmICghZ2xvYmFscyB8fCAhbG9jYWxzKSB7CiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsCkBAIC0xMTE2LDcgKzExMTQsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoIVB5SXRlcl9DaGVjayhpdCkpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICIlLjIwMHMgb2JqZWN0IGlzIG5vdCBhbiBpdGVyYXRvciIsCisgICAgICAgICAgICAiJyUuMjAwcycgb2JqZWN0IGlzIG5vdCBhbiBpdGVyYXRvciIsCiAgICAgICAgICAgICBpdC0+b2JfdHlwZS0+dHBfbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KQEAgLTE0MjIsMjQgKzE0MjAsMTMgQEAKICAgICAgICAgfQogICAgIH0KICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2sob2JqKSkgewotICAgICAgICBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKG9iaik7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKTsKICAgICAgICAgaWYgKHNpemUgPT0gMSkgewotICAgICAgICAgICAgb3JkID0gKGxvbmcpKlB5VW5pY29kZV9BU19VTklDT0RFKG9iaik7CisgICAgICAgICAgICBvcmQgPSAobG9uZylQeVVuaWNvZGVfUkVBRF9DSEFSKG9iaiwgMCk7CiAgICAgICAgICAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKG9yZCk7CiAgICAgICAgIH0KLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgICAgIGlmIChzaXplID09IDIpIHsKLSAgICAgICAgICAgIC8qIERlY29kZSBhIHZhbGlkIHN1cnJvZ2F0ZSBwYWlyICovCi0gICAgICAgICAgICBpbnQgYzAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvYmopWzBdOwotICAgICAgICAgICAgaW50IGMxID0gUHlVbmljb2RlX0FTX1VOSUNPREUob2JqKVsxXTsKLSAgICAgICAgICAgIGlmICgweEQ4MDAgPD0gYzAgJiYgYzAgPD0gMHhEQkZGICYmCi0gICAgICAgICAgICAgICAgMHhEQzAwIDw9IGMxICYmIGMxIDw9IDB4REZGRikgewotICAgICAgICAgICAgICAgIG9yZCA9ICgoKChjMCAmIDB4MDNGRikgPDwgMTApIHwgKGMxICYgMHgwM0ZGKSkgKwotICAgICAgICAgICAgICAgICAgICAgICAweDAwMDEwMDAwKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKG9yZCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSNlbmRpZgogICAgIH0KICAgICBlbHNlIGlmIChQeUJ5dGVBcnJheV9DaGVjayhvYmopKSB7CiAgICAgICAgIC8qIFhYWCBIb3BlZnVsbHkgdGhpcyBpcyB0ZW1wb3JhcnkgKi8KQEAgLTE0OTcsMTUgKzE0ODQsMTUgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBidWlsdGluX3ByaW50KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiB7Ci0gICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJzZXAiLCAiZW5kIiwgImZpbGUiLCAwfTsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InNlcCIsICJlbmQiLCAiZmlsZSIsICJmbHVzaCIsIDB9OwogICAgIHN0YXRpYyBQeU9iamVjdCAqZHVtbXlfYXJnczsKLSAgICBQeU9iamVjdCAqc2VwID0gTlVMTCwgKmVuZCA9IE5VTEwsICpmaWxlID0gTlVMTDsKKyAgICBQeU9iamVjdCAqc2VwID0gTlVMTCwgKmVuZCA9IE5VTEwsICpmaWxlID0gTlVMTCwgKmZsdXNoID0gTlVMTDsKICAgICBpbnQgaSwgZXJyOwogCiAgICAgaWYgKGR1bW15X2FyZ3MgPT0gTlVMTCAmJiAhKGR1bW15X2FyZ3MgPSBQeVR1cGxlX05ldygwKSkpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhkdW1teV9hcmdzLCBrd2RzLCAifE9PTzpwcmludCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmc2VwLCAmZW5kLCAmZmlsZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGR1bW15X2FyZ3MsIGt3ZHMsICJ8T09PTzpwcmludCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmc2VwLCAmZW5kLCAmZmlsZSwgJmZsdXNoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKGZpbGUgPT0gTlVMTCB8fCBmaWxlID09IFB5X05vbmUpIHsKICAgICAgICAgZmlsZSA9IFB5U3lzX0dldE9iamVjdCgic3Rkb3V0Iik7CkBAIC0xNTU2LDYgKzE1NDMsMjAgQEAKICAgICBpZiAoZXJyKQogICAgICAgICByZXR1cm4gTlVMTDsKIAorICAgIGlmIChmbHVzaCAhPSBOVUxMKSB7CisgICAgICAgIFB5T2JqZWN0ICp0bXA7CisgICAgICAgIGludCBkb19mbHVzaCA9IFB5T2JqZWN0X0lzVHJ1ZShmbHVzaCk7CisgICAgICAgIGlmIChkb19mbHVzaCA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBlbHNlIGlmIChkb19mbHVzaCkgeworICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmaWxlLCAiZmx1c2giLCAiIik7CisgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpCisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHRtcCk7CisgICAgICAgIH0KKyAgICB9CisKICAgICBQeV9SRVRVUk5fTk9ORTsKIH0KIApAQCAtMTYwMiw3ICsxNjAzLDcgQEAKICAgICB9CiAKICAgICAvKiBGaXJzdCBvZiBhbGwsIGZsdXNoIHN0ZGVyciAqLwotICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZmVyciwgImZsdXNoIiwgIiIpOworICAgIHRtcCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZmVyciwgJlB5SWRfZmx1c2gsICIiKTsKICAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgZWxzZQpAQCAtMTYxMSw3ICsxNjEyLDcgQEAKICAgICAvKiBXZSBzaG91bGQgb25seSB1c2UgKEdOVSkgcmVhZGxpbmUgaWYgUHl0aG9uJ3Mgc3lzLnN0ZGluIGFuZAogICAgICAgIHN5cy5zdGRvdXQgYXJlIHRoZSBzYW1lIGFzIEMncyBzdGRpbiBhbmQgc3Rkb3V0LCBiZWNhdXNlIHdlCiAgICAgICAgbmVlZCB0byBwYXNzIGl0IHRob3NlLiAqLwotICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZmluLCAiZmlsZW5vIiwgIiIpOworICAgIHRtcCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZmluLCAmUHlJZF9maWxlbm8sICIiKTsKICAgICBpZiAodG1wID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgdHR5ID0gMDsKQEAgLTE2MjQsNyArMTYyNSw3IEBACiAgICAgICAgIHR0eSA9IGZkID09IGZpbGVubyhzdGRpbikgJiYgaXNhdHR5KGZkKTsKICAgICB9CiAgICAgaWYgKHR0eSkgewotICAgICAgICB0bXAgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGZvdXQsICJmaWxlbm8iLCAiIik7CisgICAgICAgIHRtcCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZm91dCwgJlB5SWRfZmlsZW5vLCAiIik7CiAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIGVsc2UgewpAQCAtMTY0Niw5ICsxNjQ3LDExIEBACiAgICAgICAgIGNoYXIgKnN0ZGluX2VuY29kaW5nX3N0ciwgKnN0ZGluX2Vycm9yc19zdHI7CiAgICAgICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAgICAgICAgIHNpemVfdCBsZW47CisgICAgICAgIF9QeV9JREVOVElGSUVSKGVuY29kaW5nKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZXJyb3JzKTsKIAotICAgICAgICBzdGRpbl9lbmNvZGluZyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZmluLCAiZW5jb2RpbmciKTsKLSAgICAgICAgc3RkaW5fZXJyb3JzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaW4sICJlcnJvcnMiKTsKKyAgICAgICAgc3RkaW5fZW5jb2RpbmcgPSBfUHlPYmplY3RfR2V0QXR0cklkKGZpbiwgJlB5SWRfZW5jb2RpbmcpOworICAgICAgICBzdGRpbl9lcnJvcnMgPSBfUHlPYmplY3RfR2V0QXR0cklkKGZpbiwgJlB5SWRfZXJyb3JzKTsKICAgICAgICAgaWYgKCFzdGRpbl9lbmNvZGluZyB8fCAhc3RkaW5fZXJyb3JzKQogICAgICAgICAgICAgLyogc3RkaW4gaXMgYSB0ZXh0IHN0cmVhbSwgc28gaXQgbXVzdCBoYXZlIGFuCiAgICAgICAgICAgICAgICBlbmNvZGluZy4gKi8KQEAgLTE2NTcsNyArMTY2MCw3IEBACiAgICAgICAgIHN0ZGluX2Vycm9yc19zdHIgPSBfUHlVbmljb2RlX0FzU3RyaW5nKHN0ZGluX2Vycm9ycyk7CiAgICAgICAgIGlmICghc3RkaW5fZW5jb2Rpbmdfc3RyIHx8ICFzdGRpbl9lcnJvcnNfc3RyKQogICAgICAgICAgICAgZ290byBfcmVhZGxpbmVfZXJyb3JzOwotICAgICAgICB0bXAgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGZvdXQsICJmbHVzaCIsICIiKTsKKyAgICAgICAgdG1wID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmb3V0LCAmUHlJZF9mbHVzaCwgIiIpOwogICAgICAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICBlbHNlCkBAIC0xNjY2LDggKzE2NjksOCBAQAogICAgICAgICAgICAgLyogV2UgaGF2ZSBhIHByb21wdCwgZW5jb2RlIGl0IGFzIHN0ZG91dCB3b3VsZCAqLwogICAgICAgICAgICAgY2hhciAqc3Rkb3V0X2VuY29kaW5nX3N0ciwgKnN0ZG91dF9lcnJvcnNfc3RyOwogICAgICAgICAgICAgUHlPYmplY3QgKnN0cmluZ3BvOwotICAgICAgICAgICAgc3Rkb3V0X2VuY29kaW5nID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmb3V0LCAiZW5jb2RpbmciKTsKLSAgICAgICAgICAgIHN0ZG91dF9lcnJvcnMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGZvdXQsICJlcnJvcnMiKTsKKyAgICAgICAgICAgIHN0ZG91dF9lbmNvZGluZyA9IF9QeU9iamVjdF9HZXRBdHRySWQoZm91dCwgJlB5SWRfZW5jb2RpbmcpOworICAgICAgICAgICAgc3Rkb3V0X2Vycm9ycyA9IF9QeU9iamVjdF9HZXRBdHRySWQoZm91dCwgJlB5SWRfZXJyb3JzKTsKICAgICAgICAgICAgIGlmICghc3Rkb3V0X2VuY29kaW5nIHx8ICFzdGRvdXRfZXJyb3JzKQogICAgICAgICAgICAgICAgIGdvdG8gX3JlYWRsaW5lX2Vycm9yczsKICAgICAgICAgICAgIHN0ZG91dF9lbmNvZGluZ19zdHIgPSBfUHlVbmljb2RlX0FzU3RyaW5nKHN0ZG91dF9lbmNvZGluZyk7CkBAIC0xNzM3LDcgKzE3NDAsNyBAQAogICAgICAgICBpZiAoUHlGaWxlX1dyaXRlT2JqZWN0KHByb21wdGFyZywgZm91dCwgUHlfUFJJTlRfUkFXKSAhPSAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZm91dCwgImZsdXNoIiwgIiIpOworICAgIHRtcCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZm91dCwgJlB5SWRfZmx1c2gsICIiKTsKICAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgZWxzZQpAQCAtMTgxOSw2ICsxODIyLDcgQEAKICAgICBQeU9iamVjdCAqY2FsbGFibGU7CiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJpdGVyYWJsZSIsICJrZXkiLCAicmV2ZXJzZSIsIDB9OwogICAgIGludCByZXZlcnNlOworICAgIF9QeV9JREVOVElGSUVSKHNvcnQpOwogCiAgICAgLyogYXJncyAxLTMgc2hvdWxkIG1hdGNoIGxpc3Rzb3J0IGluIE9iamVjdHMvbGlzdG9iamVjdC5jICovCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIk98T2k6c29ydGVkIiwKQEAgLTE4MjksNyArMTgzMyw3IEBACiAgICAgaWYgKG5ld2xpc3QgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBjYWxsYWJsZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcobmV3bGlzdCwgInNvcnQiKTsKKyAgICBjYWxsYWJsZSA9IF9QeU9iamVjdF9HZXRBdHRySWQobmV3bGlzdCwgJlB5SWRfc29ydCk7CiAgICAgaWYgKGNhbGxhYmxlID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKG5ld2xpc3QpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTE4NzUsNyArMTg3OSw4IEBACiAgICAgICAgICAgICBQeV9JTkNSRUYoZCk7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBkID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh2LCAiX19kaWN0X18iKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoX19kaWN0X18pOworICAgICAgICBkID0gX1B5T2JqZWN0X0dldEF0dHJJZCh2LCAmUHlJZF9fX2RpY3RfXyk7CiAgICAgICAgIGlmIChkID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgInZhcnMoKSBhcmd1bWVudCBtdXN0IGhhdmUgX19kaWN0X18gYXR0cmlidXRlIik7CkBAIC0xOTE5LDEyICsxOTI0LDE4IEBACiAgICAgICAgICAgICBQeV9ERUNSRUYoaXRlcik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlCeXRlQXJyYXlfQ2hlY2socmVzdWx0KSkgeworICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhyZXN1bHQpKSB7CiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICJzdW0oKSBjYW4ndCBzdW0gYnl0ZXMgW3VzZSBiJycuam9pbihzZXEpIGluc3RlYWRdIik7CiAgICAgICAgICAgICBQeV9ERUNSRUYoaXRlcik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQorICAgICAgICBpZiAoUHlCeXRlQXJyYXlfQ2hlY2socmVzdWx0KSkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAic3VtKCkgY2FuJ3Qgc3VtIGJ5dGVhcnJheSBbdXNlIGInJy5qb2luKHNlcSkgaW5zdGVhZF0iKTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVyKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CiAKICAgICAgICAgUHlfSU5DUkVGKHJlc3VsdCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL2NldmFsLmMgYi9QeXRob24vY2V2YWwuYwppbmRleCBmMGVhN2M5Li4wMTdkYzRhIDEwMDY0NAotLS0gYS9QeXRob24vY2V2YWwuYworKysgYi9QeXRob24vY2V2YWwuYwpAQCAtMTM4LDcgKzEzOCw3IEBACiBzdGF0aWMgdm9pZCBmb3JtYXRfZXhjX3VuYm91bmQoUHlDb2RlT2JqZWN0ICpjbywgaW50IG9wYXJnKTsKIHN0YXRpYyBQeU9iamVjdCAqIHVuaWNvZGVfY29uY2F0ZW5hdGUoUHlPYmplY3QgKiwgUHlPYmplY3QgKiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlGcmFtZU9iamVjdCAqLCB1bnNpZ25lZCBjaGFyICopOwotc3RhdGljIFB5T2JqZWN0ICogc3BlY2lhbF9sb29rdXAoUHlPYmplY3QgKiwgY2hhciAqLCBQeU9iamVjdCAqKik7CitzdGF0aWMgUHlPYmplY3QgKiBzcGVjaWFsX2xvb2t1cChQeU9iamVjdCAqLCBfUHlfSWRlbnRpZmllciAqKTsKIAogI2RlZmluZSBOQU1FX0VSUk9SX01TRyBcCiAgICAgIm5hbWUgJyUuMjAwcycgaXMgbm90IGRlZmluZWQiCkBAIC0zNzIsNiArMzcyLDcgQEAKIHZvaWQKIFB5RXZhbF9SZUluaXRUaHJlYWRzKHZvaWQpCiB7CisgICAgX1B5X0lERU5USUZJRVIoX2FmdGVyX2ZvcmspOwogICAgIFB5T2JqZWN0ICp0aHJlYWRpbmcsICpyZXN1bHQ7CiAgICAgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlID0gUHlUaHJlYWRTdGF0ZV9HRVQoKTsKIApAQCAtMzkyLDcgKzM5Myw3IEBACiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh0aHJlYWRpbmcsICJfYWZ0ZXJfZm9yayIsIE5VTEwpOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodGhyZWFkaW5nLCAmUHlJZF9fYWZ0ZXJfZm9yaywgTlVMTCk7CiAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQogICAgICAgICBQeUVycl9Xcml0ZVVucmFpc2FibGUodGhyZWFkaW5nKTsKICAgICBlbHNlCkBAIC00OTEsNyArNDkyLDYgQEAKIH0gcGVuZGluZ2NhbGxzW05QRU5ESU5HQ0FMTFNdOwogc3RhdGljIGludCBwZW5kaW5nZmlyc3QgPSAwOwogc3RhdGljIGludCBwZW5kaW5nbGFzdCA9IDA7Ci1zdGF0aWMgY2hhciBwZW5kaW5nYnVzeSA9IDA7CiAKIGludAogUHlfQWRkUGVuZGluZ0NhbGwoaW50ICgqZnVuYykodm9pZCAqKSwgdm9pZCAqYXJnKQpAQCAtNTM4LDYgKzUzOCw3IEBACiBpbnQKIFB5X01ha2VQZW5kaW5nQ2FsbHModm9pZCkKIHsKKyAgICBzdGF0aWMgaW50IGJ1c3kgPSAwOwogICAgIGludCBpOwogICAgIGludCByID0gMDsKIApAQCAtNTUyLDkgKzU1Myw5IEBACiAgICAgaWYgKG1haW5fdGhyZWFkICYmIFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQoKSAhPSBtYWluX3RocmVhZCkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgLyogZG9uJ3QgcGVyZm9ybSByZWN1cnNpdmUgcGVuZGluZyBjYWxscyAqLwotICAgIGlmIChwZW5kaW5nYnVzeSkKKyAgICBpZiAoYnVzeSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgcGVuZGluZ2J1c3kgPSAxOworICAgIGJ1c3kgPSAxOwogICAgIC8qIHBlcmZvcm0gYSBib3VuZGVkIG51bWJlciBvZiBjYWxscywgaW4gY2FzZSBvZiByZWN1cnNpb24gKi8KICAgICBmb3IgKGk9MDsgaTxOUEVORElOR0NBTExTOyBpKyspIHsKICAgICAgICAgaW50IGo7CkBAIC01ODMsNyArNTg0LDcgQEAKICAgICAgICAgaWYgKHIpCiAgICAgICAgICAgICBicmVhazsKICAgICB9Ci0gICAgcGVuZGluZ2J1c3kgPSAwOworICAgIGJ1c3kgPSAwOwogICAgIHJldHVybiByOwogfQogCkBAIC03NDksNiArNzUwLDkgQEAKICAgICAgICAgV0hZX1NJTEVOQ0VEID0gIDB4MDA4MCAgLyogRXhjZXB0aW9uIHNpbGVuY2VkIGJ5ICd3aXRoJyAqLwogfTsKIAorc3RhdGljIHZvaWQgc2F2ZV9leGNfc3RhdGUoUHlUaHJlYWRTdGF0ZSAqLCBQeUZyYW1lT2JqZWN0ICopOworc3RhdGljIHZvaWQgc3dhcF9leGNfc3RhdGUoUHlUaHJlYWRTdGF0ZSAqLCBQeUZyYW1lT2JqZWN0ICopOworc3RhdGljIHZvaWQgcmVzdG9yZV9hbmRfY2xlYXJfZXhjX3N0YXRlKFB5VGhyZWFkU3RhdGUgKiwgUHlGcmFtZU9iamVjdCAqKTsKIHN0YXRpYyBlbnVtIHdoeV9jb2RlIGRvX3JhaXNlKFB5T2JqZWN0ICosIFB5T2JqZWN0ICopOwogc3RhdGljIGludCB1bnBhY2tfaXRlcmFibGUoUHlPYmplY3QgKiwgaW50LCBpbnQsIFB5T2JqZWN0ICoqKTsKIApAQCAtODE3LDEwICs4MjEsNiBAQAogICAgIHVuc2lnbmVkIGNoYXIgKmZpcnN0X2luc3RyOwogICAgIFB5T2JqZWN0ICpuYW1lczsKICAgICBQeU9iamVjdCAqY29uc3RzOwotI2lmIGRlZmluZWQoUHlfREVCVUcpIHx8IGRlZmluZWQoTExUUkFDRSkKLSAgICAvKiBNYWtlIGl0IGVhc2llciB0byBmaW5kIG91dCB3aGVyZSB3ZSBhcmUgd2l0aCBhIGRlYnVnZ2VyICovCi0gICAgY2hhciAqZmlsZW5hbWU7Ci0jZW5kaWYKIAogLyogQ29tcHV0ZWQgR09UT3MsIG9yCiAgICAgICAgdGhlLW9wdGltaXphdGlvbi1jb21tb25seS1idXQtaW1wcm9wZXJseS1rbm93bi1hcy0idGhyZWFkZWQgY29kZSIKQEAgLTExMTQsNTkgKzExMTQsOCBAQAogICAgICAgICBQeV9YREVDUkVGKHRyYWNlYmFjayk7IFwKICAgICB9CiAKLSNkZWZpbmUgU0FWRV9FWENfU1RBVEUoKSBcCi0gICAgeyBcCi0gICAgICAgIFB5T2JqZWN0ICp0eXBlLCAqdmFsdWUsICp0cmFjZWJhY2s7IFwKLSAgICAgICAgUHlfWElOQ1JFRih0c3RhdGUtPmV4Y190eXBlKTsgXAotICAgICAgICBQeV9YSU5DUkVGKHRzdGF0ZS0+ZXhjX3ZhbHVlKTsgXAotICAgICAgICBQeV9YSU5DUkVGKHRzdGF0ZS0+ZXhjX3RyYWNlYmFjayk7IFwKLSAgICAgICAgdHlwZSA9IGYtPmZfZXhjX3R5cGU7IFwKLSAgICAgICAgdmFsdWUgPSBmLT5mX2V4Y192YWx1ZTsgXAotICAgICAgICB0cmFjZWJhY2sgPSBmLT5mX2V4Y190cmFjZWJhY2s7IFwKLSAgICAgICAgZi0+Zl9leGNfdHlwZSA9IHRzdGF0ZS0+ZXhjX3R5cGU7IFwKLSAgICAgICAgZi0+Zl9leGNfdmFsdWUgPSB0c3RhdGUtPmV4Y192YWx1ZTsgXAotICAgICAgICBmLT5mX2V4Y190cmFjZWJhY2sgPSB0c3RhdGUtPmV4Y190cmFjZWJhY2s7IFwKLSAgICAgICAgUHlfWERFQ1JFRih0eXBlKTsgXAotICAgICAgICBQeV9YREVDUkVGKHZhbHVlKTsgXAotICAgICAgICBQeV9YREVDUkVGKHRyYWNlYmFjayk7IFwKLSAgICB9Ci0KLSNkZWZpbmUgU1dBUF9FWENfU1RBVEUoKSBcCi0gICAgeyBcCi0gICAgICAgIFB5T2JqZWN0ICp0bXA7IFwKLSAgICAgICAgdG1wID0gdHN0YXRlLT5leGNfdHlwZTsgXAotICAgICAgICB0c3RhdGUtPmV4Y190eXBlID0gZi0+Zl9leGNfdHlwZTsgXAotICAgICAgICBmLT5mX2V4Y190eXBlID0gdG1wOyBcCi0gICAgICAgIHRtcCA9IHRzdGF0ZS0+ZXhjX3ZhbHVlOyBcCi0gICAgICAgIHRzdGF0ZS0+ZXhjX3ZhbHVlID0gZi0+Zl9leGNfdmFsdWU7IFwKLSAgICAgICAgZi0+Zl9leGNfdmFsdWUgPSB0bXA7IFwKLSAgICAgICAgdG1wID0gdHN0YXRlLT5leGNfdHJhY2ViYWNrOyBcCi0gICAgICAgIHRzdGF0ZS0+ZXhjX3RyYWNlYmFjayA9IGYtPmZfZXhjX3RyYWNlYmFjazsgXAotICAgICAgICBmLT5mX2V4Y190cmFjZWJhY2sgPSB0bXA7IFwKLSAgICB9Ci0KLSNkZWZpbmUgUkVTVE9SRV9BTkRfQ0xFQVJfRVhDX1NUQVRFKCkgXAotICAgIHsgXAotICAgICAgICBQeU9iamVjdCAqdHlwZSwgKnZhbHVlLCAqdGI7IFwKLSAgICAgICAgdHlwZSA9IHRzdGF0ZS0+ZXhjX3R5cGU7IFwKLSAgICAgICAgdmFsdWUgPSB0c3RhdGUtPmV4Y192YWx1ZTsgXAotICAgICAgICB0YiA9IHRzdGF0ZS0+ZXhjX3RyYWNlYmFjazsgXAotICAgICAgICB0c3RhdGUtPmV4Y190eXBlID0gZi0+Zl9leGNfdHlwZTsgXAotICAgICAgICB0c3RhdGUtPmV4Y192YWx1ZSA9IGYtPmZfZXhjX3ZhbHVlOyBcCi0gICAgICAgIHRzdGF0ZS0+ZXhjX3RyYWNlYmFjayA9IGYtPmZfZXhjX3RyYWNlYmFjazsgXAotICAgICAgICBmLT5mX2V4Y190eXBlID0gTlVMTDsgXAotICAgICAgICBmLT5mX2V4Y192YWx1ZSA9IE5VTEw7IFwKLSAgICAgICAgZi0+Zl9leGNfdHJhY2ViYWNrID0gTlVMTDsgXAotICAgICAgICBQeV9YREVDUkVGKHR5cGUpOyBcCi0gICAgICAgIFB5X1hERUNSRUYodmFsdWUpOyBcCi0gICAgICAgIFB5X1hERUNSRUYodGIpOyBcCi0gICAgfQotCiAvKiBTdGFydCBvZiBjb2RlICovCiAKLSAgICBpZiAoZiA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLQogICAgIC8qIHB1c2ggZnJhbWUgKi8KICAgICBpZiAoUHlfRW50ZXJSZWN1cnNpdmVDYWxsKCIiKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xMjQwLDI4ICsxMTg5LDE1IEBACiAgICAgICAgICAgICAvKiBXZSB3ZXJlIGluIGFuIGV4Y2VwdCBoYW5kbGVyIHdoZW4gd2UgbGVmdCwKICAgICAgICAgICAgICAgIHJlc3RvcmUgdGhlIGV4Y2VwdGlvbiBzdGF0ZSB3aGljaCB3YXMgcHV0IGFzaWRlCiAgICAgICAgICAgICAgICAoc2VlIFlJRUxEX1ZBTFVFKS4gKi8KLSAgICAgICAgICAgIFNXQVBfRVhDX1NUQVRFKCk7CisgICAgICAgICAgICBzd2FwX2V4Y19zdGF0ZSh0c3RhdGUsIGYpOwogICAgICAgICB9Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgU0FWRV9FWENfU1RBVEUoKTsKLSAgICAgICAgfQorICAgICAgICBlbHNlCisgICAgICAgICAgICBzYXZlX2V4Y19zdGF0ZSh0c3RhdGUsIGYpOwogICAgIH0KIAogI2lmZGVmIExMVFJBQ0UKICAgICBsbHRyYWNlID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcoZi0+Zl9nbG9iYWxzLCAiX19sbHRyYWNlX18iKSAhPSBOVUxMOwogI2VuZGlmCi0jaWYgZGVmaW5lZChQeV9ERUJVRykgfHwgZGVmaW5lZChMTFRSQUNFKQotICAgIHsKLSAgICAgICAgUHlPYmplY3QgKmVycm9yX3R5cGUsICplcnJvcl92YWx1ZSwgKmVycm9yX3RyYWNlYmFjazsKLSAgICAgICAgUHlFcnJfRmV0Y2goJmVycm9yX3R5cGUsICZlcnJvcl92YWx1ZSwgJmVycm9yX3RyYWNlYmFjayk7Ci0gICAgICAgIGZpbGVuYW1lID0gX1B5VW5pY29kZV9Bc1N0cmluZyhjby0+Y29fZmlsZW5hbWUpOwotICAgICAgICBpZiAoZmlsZW5hbWUgPT0gTlVMTCAmJiB0c3RhdGUtPm92ZXJmbG93ZWQpIHsKLSAgICAgICAgICAgIC8qIG1heGltdW0gcmVjdXJzaW9uIGRlcHRoIGV4Y2VlZGVkICovCi0gICAgICAgICAgICBnb3RvIGV4aXRfZXZhbF9mcmFtZTsKLSAgICAgICAgfQotICAgICAgICBQeUVycl9SZXN0b3JlKGVycm9yX3R5cGUsIGVycm9yX3ZhbHVlLCBlcnJvcl90cmFjZWJhY2spOwotICAgIH0KLSNlbmRpZgogCiAgICAgd2h5ID0gV0hZX05PVDsKICAgICBlcnIgPSAwOwpAQCAtMTQxMiw4ICsxMzQ4LDYgQEAKICAgICAgICAgICAgeCB0byBOVUxMLCBlcnIgdG8gbm9uemVybywgb3Igd2h5IHRvIGFueXRoaW5nIGJ1dCBXSFlfTk9ULAogICAgICAgICAgICBhbmQgdGhhdCBubyBvcGVyYXRpb24gdGhhdCBzdWNjZWVkcyBkb2VzIHRoaXMhICovCiAKLSAgICAgICAgLyogY2FzZSBTVE9QX0NPREU6IHRoaXMgaXMgYW4gZXJyb3IhICovCi0KICAgICAgICAgVEFSR0VUKE5PUCkKICAgICAgICAgICAgIEZBU1RfRElTUEFUQ0goKTsKIApAQCAtMTg5NCw2ICsxODI4LDUzIEBACiAgICAgICAgICAgICB3aHkgPSBXSFlfUkVUVVJOOwogICAgICAgICAgICAgZ290byBmYXN0X2Jsb2NrX2VuZDsKIAorICAgICAgICBUQVJHRVQoWUlFTERfRlJPTSkKKyAgICAgICAgICAgIHUgPSBQT1AoKTsKKyAgICAgICAgICAgIHggPSBQeU9iamVjdF9HZXRJdGVyKHUpOworICAgICAgICAgICAgUHlfREVDUkVGKHUpOworICAgICAgICAgICAgaWYgKHggPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIC8qIHggaXMgbm93IHRoZSBpdGVyYXRvciwgbWFrZSB0aGUgZmlyc3QgbmV4dCgpIGNhbGwgKi8KKyAgICAgICAgICAgIHJldHZhbCA9ICgqUHlfVFlQRSh4KS0+dHBfaXRlcm5leHQpKHgpOworICAgICAgICAgICAgaWYgKCFyZXR2YWwpIHsKKyAgICAgICAgICAgICAgICBQeU9iamVjdCAqZXQsICpldiwgKnRiOworICAgICAgICAgICAgICAgIC8qIGl0ZXIgbWF5IGJlIGV4aGF1c3RlZCAqLworICAgICAgICAgICAgICAgIFB5X0NMRUFSKHgpOworICAgICAgICAgICAgICAgIGlmIChQeUVycl9PY2N1cnJlZCgpICYmCisgICAgICAgICAgICAgICAgICAgICFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX1N0b3BJdGVyYXRpb24pKSB7CisgICAgICAgICAgICAgICAgICAgIC8qIHNvbWUgb3RoZXIgZXhjZXB0aW9uICovCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAvKiB0cnkgdG8gZ2V0IHJldHVybiB2YWx1ZSBmcm9tIGV4Y2VwdGlvbiAqLworICAgICAgICAgICAgICAgIFB5RXJyX0ZldGNoKCZldCwgJmV2LCAmdGIpOworICAgICAgICAgICAgICAgIFB5X1hERUNSRUYoZXQpOworICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodGIpOworICAgICAgICAgICAgICAgIC8qIHUgaXMgcmV0dXJuIHZhbHVlICovCisgICAgICAgICAgICAgICAgdSA9IE5VTEw7CisgICAgICAgICAgICAgICAgaWYgKGV2KSB7CisgICAgICAgICAgICAgICAgICAgIHUgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGV2LCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGV2KTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHUgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNvbWUgb3RoZXIgZXhjZXB0aW9uICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGlmICh1ID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICAgICAgdSA9IFB5X05vbmU7CisgICAgICAgICAgICAgICAgICAgIFB5X0lOQ1JFRih1KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgUFVTSCh1KTsKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIC8qIHggaXMgaXRlcmF0b3IsIHJldHZhbCBpcyB2YWx1ZSB0byBiZSB5aWVsZGVkICovCisgICAgICAgICAgICBmLT5mX3lpZWxkZnJvbSA9IHg7CisgICAgICAgICAgICBmLT5mX3N0YWNrdG9wID0gc3RhY2tfcG9pbnRlcjsKKyAgICAgICAgICAgIHdoeSA9IFdIWV9ZSUVMRDsKKyAgICAgICAgICAgIGdvdG8gZmFzdF95aWVsZDsKKwogICAgICAgICBUQVJHRVQoWUlFTERfVkFMVUUpCiAgICAgICAgICAgICByZXR2YWwgPSBQT1AoKTsKICAgICAgICAgICAgIGYtPmZfc3RhY2t0b3AgPSBzdGFja19wb2ludGVyOwpAQCAtMjEyMSw3ICsyMTAyLDcgQEAKICAgICAgICAgICAgICAgICAvKiBJbmxpbmUgdGhlIFB5RGljdF9HZXRJdGVtKCkgY2FsbHMuCiAgICAgICAgICAgICAgICAgICAgV0FSTklORzogdGhpcyBpcyBhbiBleHRyZW1lIHNwZWVkIGhhY2suCiAgICAgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0aGlzIGF0IGhvbWUuICovCi0gICAgICAgICAgICAgICAgUHlfaGFzaF90IGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKXcpLT5oYXNoOworICAgICAgICAgICAgICAgIFB5X2hhc2hfdCBoYXNoID0gKChQeUFTQ0lJT2JqZWN0ICopdyktPmhhc2g7CiAgICAgICAgICAgICAgICAgaWYgKGhhc2ggIT0gLTEpIHsKICAgICAgICAgICAgICAgICAgICAgUHlEaWN0T2JqZWN0ICpkOwogICAgICAgICAgICAgICAgICAgICBQeURpY3RFbnRyeSAqZTsKQEAgLTI1NTksMTMgKzI1NDAsMTQgQEAKIAogICAgICAgICBUQVJHRVQoU0VUVVBfV0lUSCkKICAgICAgICAgewotICAgICAgICAgICAgc3RhdGljIFB5T2JqZWN0ICpleGl0LCAqZW50ZXI7CisgICAgICAgICAgICBfUHlfSURFTlRJRklFUihfX2V4aXRfXyk7CisgICAgICAgICAgICBfUHlfSURFTlRJRklFUihfX2VudGVyX18pOwogICAgICAgICAgICAgdyA9IFRPUCgpOwotICAgICAgICAgICAgeCA9IHNwZWNpYWxfbG9va3VwKHcsICJfX2V4aXRfXyIsICZleGl0KTsKKyAgICAgICAgICAgIHggPSBzcGVjaWFsX2xvb2t1cCh3LCAmUHlJZF9fX2V4aXRfXyk7CiAgICAgICAgICAgICBpZiAoIXgpCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBTRVRfVE9QKHgpOwotICAgICAgICAgICAgdSA9IHNwZWNpYWxfbG9va3VwKHcsICJfX2VudGVyX18iLCAmZW50ZXIpOworICAgICAgICAgICAgdSA9IHNwZWNpYWxfbG9va3VwKHcsICZQeUlkX19fZW50ZXJfXyk7CiAgICAgICAgICAgICBQeV9ERUNSRUYodyk7CiAgICAgICAgICAgICBpZiAoIXUpIHsKICAgICAgICAgICAgICAgICB4ID0gTlVMTDsKQEAgLTI3MjUsNyArMjcwNyw3IEBACiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKCpwZnVuYyk7CiAgICAgICAgICAgICAgICAgKnBmdW5jID0gc2VsZjsKICAgICAgICAgICAgICAgICBuYSsrOwotICAgICAgICAgICAgICAgIG4rKzsKKyAgICAgICAgICAgICAgICAvKiBuKys7ICovCiAgICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgICBQeV9JTkNSRUYoZnVuYyk7CiAgICAgICAgICAgICBzcCA9IHN0YWNrX3BvaW50ZXI7CkBAIC0yNzUzLDkgKzI3MzUsMTEgQEAKICAgICAgICAgICAgIGludCBrd2RlZmF1bHRzID0gKG9wYXJnPj44KSAmIDB4ZmY7CiAgICAgICAgICAgICBpbnQgbnVtX2Fubm90YXRpb25zID0gKG9wYXJnID4+IDE2KSAmIDB4N2ZmZjsKIAorICAgICAgICAgICAgdyA9IFBPUCgpOyAvKiBxdWFsbmFtZSAqLwogICAgICAgICAgICAgdiA9IFBPUCgpOyAvKiBjb2RlIG9iamVjdCAqLwotICAgICAgICAgICAgeCA9IFB5RnVuY3Rpb25fTmV3KHYsIGYtPmZfZ2xvYmFscyk7CisgICAgICAgICAgICB4ID0gUHlGdW5jdGlvbl9OZXdXaXRoUXVhbE5hbWUodiwgZi0+Zl9nbG9iYWxzLCB3KTsKICAgICAgICAgICAgIFB5X0RFQ1JFRih2KTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRih3KTsKIAogICAgICAgICAgICAgaWYgKHggIT0gTlVMTCAmJiBvcGNvZGUgPT0gTUFLRV9DTE9TVVJFKSB7CiAgICAgICAgICAgICAgICAgdiA9IFBPUCgpOwpAQCAtMzA0OSw5ICszMDMzLDkgQEAKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgaWYgKGkgPT0gZi0+Zl9pYmxvY2spCiAgICAgICAgICAgICAvKiBXZSBkaWQgbm90IGNyZWF0ZSB0aGlzIGV4Y2VwdGlvbi4gKi8KLSAgICAgICAgICAgIFJFU1RPUkVfQU5EX0NMRUFSX0VYQ19TVEFURSgpCisgICAgICAgICAgICByZXN0b3JlX2FuZF9jbGVhcl9leGNfc3RhdGUodHN0YXRlLCBmKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgU1dBUF9FWENfU1RBVEUoKQorICAgICAgICAgICAgc3dhcF9leGNfc3RhdGUodHN0YXRlLCBmKTsKICAgICB9CiAKICAgICBpZiAodHN0YXRlLT51c2VfdHJhY2luZykgewpAQCAtMzA4MSw3ICszMDY1LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlUcmFjZV9SRVRVUk4sIHJldHZhbCkpIHsKICAgICAgICAgICAgICAgICBQeV9YREVDUkVGKHJldHZhbCk7CiAgICAgICAgICAgICAgICAgcmV0dmFsID0gTlVMTDsKLSAgICAgICAgICAgICAgICB3aHkgPSBXSFlfRVhDRVBUSU9OOworICAgICAgICAgICAgICAgIC8qIHdoeSA9IFdIWV9FWENFUFRJT047ICovCiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CkBAIC0zMDk0LDYgKzMwNzgsMTU0IEBACiAgICAgcmV0dXJuIHJldHZhbDsKIH0KIAorc3RhdGljIHZvaWQKK2Zvcm1hdF9taXNzaW5nKGNvbnN0IGNoYXIgKmtpbmQsIFB5Q29kZU9iamVjdCAqY28sIFB5T2JqZWN0ICpuYW1lcykKK3sKKyAgICBpbnQgZXJyOworICAgIFB5X3NzaXplX3QgbGVuID0gUHlMaXN0X0dFVF9TSVpFKG5hbWVzKTsKKyAgICBQeU9iamVjdCAqbmFtZV9zdHIsICpjb21tYSwgKnRhaWwsICp0bXA7CisKKyAgICBhc3NlcnQoUHlMaXN0X0NoZWNrRXhhY3QobmFtZXMpKTsKKyAgICBhc3NlcnQobGVuID49IDEpOworICAgIC8qIERlYWwgd2l0aCB0aGUgam95cyBvZiBuYXR1cmFsIGxhbmd1YWdlLiAqLworICAgIHN3aXRjaCAobGVuKSB7CisgICAgY2FzZSAxOgorICAgICAgICBuYW1lX3N0ciA9IFB5TGlzdF9HRVRfSVRFTShuYW1lcywgMCk7CisgICAgICAgIFB5X0lOQ1JFRihuYW1lX3N0cik7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgMjoKKyAgICAgICAgbmFtZV9zdHIgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVUgYW5kICVVIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUxpc3RfR0VUX0lURU0obmFtZXMsIGxlbiAtIDIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5TGlzdF9HRVRfSVRFTShuYW1lcywgbGVuIC0gMSkpOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICB0YWlsID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiwgJVUsIGFuZCAlVSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUxpc3RfR0VUX0lURU0obmFtZXMsIGxlbiAtIDIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlMaXN0X0dFVF9JVEVNKG5hbWVzLCBsZW4gLSAxKSk7CisgICAgICAgIC8qIENob3Agb2ZmIHRoZSBsYXN0IHR3byBvYmplY3RzIGluIHRoZSBsaXN0LiBUaGlzIHNob3VsZG4ndCBhY3R1YWxseQorICAgICAgICAgICBmYWlsLCBidXQgd2UgY2FuJ3QgYmUgdG9vIGNhcmVmdWwuICovCisgICAgICAgIGVyciA9IFB5TGlzdF9TZXRTbGljZShuYW1lcywgbGVuIC0gMiwgbGVuLCBOVUxMKTsKKyAgICAgICAgaWYgKGVyciA9PSAtMSkgeworICAgICAgICAgICAgUHlfREVDUkVGKHRhaWwpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIC8qIFN0aXRjaCBldmVyeXRoaW5nIHVwIGludG8gYSBuaWNlIGNvbW1hLXNlcGFyYXRlZCBsaXN0LiAqLworICAgICAgICBjb21tYSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIsICIpOworICAgICAgICBpZiAoY29tbWEgPT0gTlVMTCkgeworICAgICAgICAgICAgUHlfREVDUkVGKHRhaWwpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIHRtcCA9IFB5VW5pY29kZV9Kb2luKGNvbW1hLCBuYW1lcyk7CisgICAgICAgIFB5X0RFQ1JFRihjb21tYSk7CisgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgeworICAgICAgICAgICAgUHlfREVDUkVGKHRhaWwpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIG5hbWVfc3RyID0gUHlVbmljb2RlX0NvbmNhdCh0bXAsIHRhaWwpOworICAgICAgICBQeV9ERUNSRUYodG1wKTsKKyAgICAgICAgUHlfREVDUkVGKHRhaWwpOworICAgICAgICBicmVhazsKKyAgICB9CisgICAgaWYgKG5hbWVfc3RyID09IE5VTEwpCisgICAgICAgIHJldHVybjsKKyAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAiJVUoKSBtaXNzaW5nICVpIHJlcXVpcmVkICVzIGFyZ3VtZW50JXM6ICVVIiwKKyAgICAgICAgICAgICAgICAgY28tPmNvX25hbWUsCisgICAgICAgICAgICAgICAgIGxlbiwKKyAgICAgICAgICAgICAgICAga2luZCwKKyAgICAgICAgICAgICAgICAgbGVuID09IDEgPyAiIiA6ICJzIiwKKyAgICAgICAgICAgICAgICAgbmFtZV9zdHIpOworICAgIFB5X0RFQ1JFRihuYW1lX3N0cik7Cit9CisKK3N0YXRpYyB2b2lkCittaXNzaW5nX2FyZ3VtZW50cyhQeUNvZGVPYmplY3QgKmNvLCBpbnQgbWlzc2luZywgaW50IGRlZmNvdW50LAorICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipmYXN0bG9jYWxzKQoreworICAgIGludCBpLCBqID0gMDsKKyAgICBpbnQgc3RhcnQsIGVuZDsKKyAgICBpbnQgcG9zaXRpb25hbCA9IGRlZmNvdW50ICE9IC0xOworICAgIGNvbnN0IGNoYXIgKmtpbmQgPSBwb3NpdGlvbmFsID8gInBvc2l0aW9uYWwiIDogImtleXdvcmQtb25seSI7CisgICAgUHlPYmplY3QgKm1pc3NpbmdfbmFtZXM7CisKKyAgICAvKiBDb21wdXRlIHRoZSBuYW1lcyBvZiB0aGUgYXJndW1lbnRzIHRoYXQgYXJlIG1pc3NpbmcuICovCisgICAgbWlzc2luZ19uYW1lcyA9IFB5TGlzdF9OZXcobWlzc2luZyk7CisgICAgaWYgKG1pc3NpbmdfbmFtZXMgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuOworICAgIGlmIChwb3NpdGlvbmFsKSB7CisgICAgICAgIHN0YXJ0ID0gMDsKKyAgICAgICAgZW5kID0gY28tPmNvX2FyZ2NvdW50IC0gZGVmY291bnQ7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBzdGFydCA9IGNvLT5jb19hcmdjb3VudDsKKyAgICAgICAgZW5kID0gc3RhcnQgKyBjby0+Y29fa3dvbmx5YXJnY291bnQ7CisgICAgfQorICAgIGZvciAoaSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHsKKyAgICAgICAgaWYgKEdFVExPQ0FMKGkpID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpyYXcgPSBQeVR1cGxlX0dFVF9JVEVNKGNvLT5jb192YXJuYW1lcywgaSk7CisgICAgICAgICAgICBQeU9iamVjdCAqbmFtZSA9IFB5T2JqZWN0X1JlcHIocmF3KTsKKyAgICAgICAgICAgIGlmIChuYW1lID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYobWlzc2luZ19uYW1lcyk7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlMaXN0X1NFVF9JVEVNKG1pc3NpbmdfbmFtZXMsIGorKywgbmFtZSk7CisgICAgICAgIH0KKyAgICB9CisgICAgYXNzZXJ0KGogPT0gbWlzc2luZyk7CisgICAgZm9ybWF0X21pc3Npbmcoa2luZCwgY28sIG1pc3NpbmdfbmFtZXMpOworICAgIFB5X0RFQ1JFRihtaXNzaW5nX25hbWVzKTsKK30KKworc3RhdGljIHZvaWQKK3Rvb19tYW55X3Bvc2l0aW9uYWwoUHlDb2RlT2JqZWN0ICpjbywgaW50IGdpdmVuLCBpbnQgZGVmY291bnQsIFB5T2JqZWN0ICoqZmFzdGxvY2FscykKK3sKKyAgICBpbnQgcGx1cmFsOworICAgIGludCBrd29ubHlfZ2l2ZW4gPSAwOworICAgIGludCBpOworICAgIFB5T2JqZWN0ICpzaWcsICprd29ubHlfc2lnOworCisgICAgYXNzZXJ0KChjby0+Y29fZmxhZ3MgJiBDT19WQVJBUkdTKSA9PSAwKTsKKyAgICAvKiBDb3VudCBtaXNzaW5nIGtleXdvcmQtb25seSBhcmdzLiAqLworICAgIGZvciAoaSA9IGNvLT5jb19hcmdjb3VudDsgaSA8IGNvLT5jb19hcmdjb3VudCArIGNvLT5jb19rd29ubHlhcmdjb3VudDsgaSsrKQorICAgICAgICBpZiAoR0VUTE9DQUwoaSkgIT0gTlVMTCkKKyAgICAgICAgICAgIGt3b25seV9naXZlbisrOworICAgIGlmIChkZWZjb3VudCkgeworICAgICAgICBpbnQgYXRsZWFzdCA9IGNvLT5jb19hcmdjb3VudCAtIGRlZmNvdW50OworICAgICAgICBwbHVyYWwgPSAxOworICAgICAgICBzaWcgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiZnJvbSAlZCB0byAlZCIsIGF0bGVhc3QsIGNvLT5jb19hcmdjb3VudCk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBwbHVyYWwgPSBjby0+Y29fYXJnY291bnQgIT0gMTsKKyAgICAgICAgc2lnID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVkIiwgY28tPmNvX2FyZ2NvdW50KTsKKyAgICB9CisgICAgaWYgKHNpZyA9PSBOVUxMKQorICAgICAgICByZXR1cm47CisgICAgaWYgKGt3b25seV9naXZlbikgeworICAgICAgICBjb25zdCBjaGFyICpmb3JtYXQgPSAiIHBvc2l0aW9uYWwgYXJndW1lbnQlcyAoYW5kICVkIGtleXdvcmQtb25seSBhcmd1bWVudCVzKSI7CisgICAgICAgIGt3b25seV9zaWcgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdChmb3JtYXQsIGdpdmVuICE9IDEgPyAicyIgOiAiIiwga3dvbmx5X2dpdmVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3b25seV9naXZlbiAhPSAxID8gInMiIDogIiIpOworICAgICAgICBpZiAoa3dvbmx5X3NpZyA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoc2lnKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgLyogVGhpcyB3aWxsIG5vdCBmYWlsLiAqLworICAgICAgICBrd29ubHlfc2lnID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIiIpOworICAgICAgICBhc3NlcnQoa3dvbmx5X3NpZyAhPSBOVUxMKTsKKyAgICB9CisgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgIiVVKCkgdGFrZXMgJVUgcG9zaXRpb25hbCBhcmd1bWVudCVzIGJ1dCAlZCVVICVzIGdpdmVuIiwKKyAgICAgICAgICAgICAgICAgY28tPmNvX25hbWUsCisgICAgICAgICAgICAgICAgIHNpZywKKyAgICAgICAgICAgICAgICAgcGx1cmFsID8gInMiIDogIiIsCisgICAgICAgICAgICAgICAgIGdpdmVuLAorICAgICAgICAgICAgICAgICBrd29ubHlfc2lnLAorICAgICAgICAgICAgICAgICBnaXZlbiA9PSAxICYmICFrd29ubHlfZ2l2ZW4gPyAid2FzIiA6ICJ3ZXJlIik7CisgICAgUHlfREVDUkVGKHNpZyk7CisgICAgUHlfREVDUkVGKGt3b25seV9zaWcpOworfQorCiAvKiBUaGlzIGlzIGdvbm5hIHNlZW0gKnJlYWwgd2VpcmQqLCBidXQgaWYgeW91IHB1dCBzb21lIG90aGVyIGNvZGUgYmV0d2VlbgogICAgUHlFdmFsX0V2YWxGcmFtZSgpIGFuZCBQeUV2YWxfRXZhbENvZGVFeCgpIHlvdSB3aWxsIG5lZWQgdG8gYWRqdXN0CiAgICB0aGUgdGVzdCBpbiB0aGUgaWYgc3RhdGVtZW50cyBpbiBNaXNjL2dkYmluaXQgKHB5c3RhY2sgYW5kIHB5c3RhY2t2KS4gKi8KQEAgLTMxMTAsNiArMzI0Miw5IEBACiAgICAgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlID0gUHlUaHJlYWRTdGF0ZV9HRVQoKTsKICAgICBQeU9iamVjdCAqeCwgKnU7CiAgICAgaW50IHRvdGFsX2FyZ3MgPSBjby0+Y29fYXJnY291bnQgKyBjby0+Y29fa3dvbmx5YXJnY291bnQ7CisgICAgaW50IGk7CisgICAgaW50IG4gPSBhcmdjb3VudDsKKyAgICBQeU9iamVjdCAqa3dkaWN0ID0gTlVMTDsKIAogICAgIGlmIChnbG9iYWxzID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5c3RlbUVycm9yLApAQCAtMzEyNiwyMTIgKzMyNjEsMTUzIEBACiAgICAgZmFzdGxvY2FscyA9IGYtPmZfbG9jYWxzcGx1czsKICAgICBmcmVldmFycyA9IGYtPmZfbG9jYWxzcGx1cyArIGNvLT5jb19ubG9jYWxzOwogCi0gICAgaWYgKHRvdGFsX2FyZ3MgfHwgY28tPmNvX2ZsYWdzICYgKENPX1ZBUkFSR1MgfCBDT19WQVJLRVlXT1JEUykpIHsKLSAgICAgICAgaW50IGk7Ci0gICAgICAgIGludCBuID0gYXJnY291bnQ7Ci0gICAgICAgIFB5T2JqZWN0ICprd2RpY3QgPSBOVUxMOwotICAgICAgICBpZiAoY28tPmNvX2ZsYWdzICYgQ09fVkFSS0VZV09SRFMpIHsKLSAgICAgICAgICAgIGt3ZGljdCA9IFB5RGljdF9OZXcoKTsKLSAgICAgICAgICAgIGlmIChrd2RpY3QgPT0gTlVMTCkKLSAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICBpID0gdG90YWxfYXJnczsKLSAgICAgICAgICAgIGlmIChjby0+Y29fZmxhZ3MgJiBDT19WQVJBUkdTKQotICAgICAgICAgICAgICAgIGkrKzsKLSAgICAgICAgICAgIFNFVExPQ0FMKGksIGt3ZGljdCk7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGFyZ2NvdW50ID4gY28tPmNvX2FyZ2NvdW50KSB7Ci0gICAgICAgICAgICBpZiAoIShjby0+Y29fZmxhZ3MgJiBDT19WQVJBUkdTKSkgewotICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICIlVSgpIHRha2VzICVzICVkICIKLSAgICAgICAgICAgICAgICAgICAgInBvc2l0aW9uYWwgYXJndW1lbnQlcyAoJWQgZ2l2ZW4pIiwKLSAgICAgICAgICAgICAgICAgICAgY28tPmNvX25hbWUsCi0gICAgICAgICAgICAgICAgICAgIGRlZmNvdW50ID8gImF0IG1vc3QiIDogImV4YWN0bHkiLAotICAgICAgICAgICAgICAgICAgICBjby0+Y29fYXJnY291bnQsCi0gICAgICAgICAgICAgICAgICAgIGNvLT5jb19hcmdjb3VudCA9PSAxID8gIiIgOiAicyIsCi0gICAgICAgICAgICAgICAgICAgIGFyZ2NvdW50ICsga3djb3VudCk7Ci0gICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgbiA9IGNvLT5jb19hcmdjb3VudDsKLSAgICAgICAgfQotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CisgICAgLyogUGFyc2UgYXJndW1lbnRzLiAqLworICAgIGlmIChjby0+Y29fZmxhZ3MgJiBDT19WQVJLRVlXT1JEUykgeworICAgICAgICBrd2RpY3QgPSBQeURpY3RfTmV3KCk7CisgICAgICAgIGlmIChrd2RpY3QgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgaSA9IHRvdGFsX2FyZ3M7CisgICAgICAgIGlmIChjby0+Y29fZmxhZ3MgJiBDT19WQVJBUkdTKQorICAgICAgICAgICAgaSsrOworICAgICAgICBTRVRMT0NBTChpLCBrd2RpY3QpOworICAgIH0KKyAgICBpZiAoYXJnY291bnQgPiBjby0+Y29fYXJnY291bnQpCisgICAgICAgIG4gPSBjby0+Y29fYXJnY291bnQ7CisgICAgZm9yIChpID0gMDsgaSA8IG47IGkrKykgeworICAgICAgICB4ID0gYXJnc1tpXTsKKyAgICAgICAgUHlfSU5DUkVGKHgpOworICAgICAgICBTRVRMT0NBTChpLCB4KTsKKyAgICB9CisgICAgaWYgKGNvLT5jb19mbGFncyAmIENPX1ZBUkFSR1MpIHsKKyAgICAgICAgdSA9IFB5VHVwbGVfTmV3KGFyZ2NvdW50IC0gbik7CisgICAgICAgIGlmICh1ID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgIFNFVExPQ0FMKHRvdGFsX2FyZ3MsIHUpOworICAgICAgICBmb3IgKGkgPSBuOyBpIDwgYXJnY291bnQ7IGkrKykgewogICAgICAgICAgICAgeCA9IGFyZ3NbaV07CiAgICAgICAgICAgICBQeV9JTkNSRUYoeCk7Ci0gICAgICAgICAgICBTRVRMT0NBTChpLCB4KTsKKyAgICAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0odSwgaS1uLCB4KTsKICAgICAgICAgfQotICAgICAgICBpZiAoY28tPmNvX2ZsYWdzICYgQ09fVkFSQVJHUykgewotICAgICAgICAgICAgdSA9IFB5VHVwbGVfTmV3KGFyZ2NvdW50IC0gbik7Ci0gICAgICAgICAgICBpZiAodSA9PSBOVUxMKQotICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgIFNFVExPQ0FMKHRvdGFsX2FyZ3MsIHUpOwotICAgICAgICAgICAgZm9yIChpID0gbjsgaSA8IGFyZ2NvdW50OyBpKyspIHsKLSAgICAgICAgICAgICAgICB4ID0gYXJnc1tpXTsKLSAgICAgICAgICAgICAgICBQeV9JTkNSRUYoeCk7Ci0gICAgICAgICAgICAgICAgUHlUdXBsZV9TRVRfSVRFTSh1LCBpLW4sIHgpOwotICAgICAgICAgICAgfQorICAgIH0KKyAgICBmb3IgKGkgPSAwOyBpIDwga3djb3VudDsgaSsrKSB7CisgICAgICAgIFB5T2JqZWN0ICoqY29fdmFybmFtZXM7CisgICAgICAgIFB5T2JqZWN0ICprZXl3b3JkID0ga3dzWzIqaV07CisgICAgICAgIFB5T2JqZWN0ICp2YWx1ZSA9IGt3c1syKmkgKyAxXTsKKyAgICAgICAgaW50IGo7CisgICAgICAgIGlmIChrZXl3b3JkID09IE5VTEwgfHwgIVB5VW5pY29kZV9DaGVjayhrZXl3b3JkKSkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiJVUoKSBrZXl3b3JkcyBtdXN0IGJlIHN0cmluZ3MiLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvLT5jb19uYW1lKTsKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgfQotICAgICAgICBmb3IgKGkgPSAwOyBpIDwga3djb3VudDsgaSsrKSB7Ci0gICAgICAgICAgICBQeU9iamVjdCAqKmNvX3Zhcm5hbWVzOwotICAgICAgICAgICAgUHlPYmplY3QgKmtleXdvcmQgPSBrd3NbMippXTsKLSAgICAgICAgICAgIFB5T2JqZWN0ICp2YWx1ZSA9IGt3c1syKmkgKyAxXTsKLSAgICAgICAgICAgIGludCBqOwotICAgICAgICAgICAgaWYgKGtleXdvcmQgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKGtleXdvcmQpKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgIiVVKCkga2V5d29yZHMgbXVzdCBiZSBzdHJpbmdzIiwKLSAgICAgICAgICAgICAgICAgICAgY28tPmNvX25hbWUpOworICAgICAgICAvKiBTcGVlZCBoYWNrOiBkbyByYXcgcG9pbnRlciBjb21wYXJlcy4gQXMgbmFtZXMgYXJlCisgICAgICAgICAgIG5vcm1hbGx5IGludGVybmVkIHRoaXMgc2hvdWxkIGFsbW9zdCBhbHdheXMgaGl0LiAqLworICAgICAgICBjb192YXJuYW1lcyA9ICgoUHlUdXBsZU9iamVjdCAqKShjby0+Y29fdmFybmFtZXMpKS0+b2JfaXRlbTsKKyAgICAgICAgZm9yIChqID0gMDsgaiA8IHRvdGFsX2FyZ3M7IGorKykgeworICAgICAgICAgICAgUHlPYmplY3QgKm5tID0gY29fdmFybmFtZXNbal07CisgICAgICAgICAgICBpZiAobm0gPT0ga2V5d29yZCkKKyAgICAgICAgICAgICAgICBnb3RvIGt3X2ZvdW5kOworICAgICAgICB9CisgICAgICAgIC8qIFNsb3cgZmFsbGJhY2ssIGp1c3QgaW4gY2FzZSAqLworICAgICAgICBmb3IgKGogPSAwOyBqIDwgdG90YWxfYXJnczsgaisrKSB7CisgICAgICAgICAgICBQeU9iamVjdCAqbm0gPSBjb192YXJuYW1lc1tqXTsKKyAgICAgICAgICAgIGludCBjbXAgPSBQeU9iamVjdF9SaWNoQ29tcGFyZUJvb2woCisgICAgICAgICAgICAgICAga2V5d29yZCwgbm0sIFB5X0VRKTsKKyAgICAgICAgICAgIGlmIChjbXAgPiAwKQorICAgICAgICAgICAgICAgIGdvdG8ga3dfZm91bmQ7CisgICAgICAgICAgICBlbHNlIGlmIChjbXAgPCAwKQogICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIFNwZWVkIGhhY2s6IGRvIHJhdyBwb2ludGVyIGNvbXBhcmVzLiBBcyBuYW1lcyBhcmUKLSAgICAgICAgICAgICAgIG5vcm1hbGx5IGludGVybmVkIHRoaXMgc2hvdWxkIGFsbW9zdCBhbHdheXMgaGl0LiAqLwotICAgICAgICAgICAgY29fdmFybmFtZXMgPSAoKFB5VHVwbGVPYmplY3QgKikoY28tPmNvX3Zhcm5hbWVzKSktPm9iX2l0ZW07Ci0gICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgdG90YWxfYXJnczsgaisrKSB7Ci0gICAgICAgICAgICAgICAgUHlPYmplY3QgKm5tID0gY29fdmFybmFtZXNbal07Ci0gICAgICAgICAgICAgICAgaWYgKG5tID09IGtleXdvcmQpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8ga3dfZm91bmQ7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAvKiBTbG93IGZhbGxiYWNrLCBqdXN0IGluIGNhc2UgKi8KLSAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCB0b3RhbF9hcmdzOyBqKyspIHsKLSAgICAgICAgICAgICAgICBQeU9iamVjdCAqbm0gPSBjb192YXJuYW1lc1tqXTsKLSAgICAgICAgICAgICAgICBpbnQgY21wID0gUHlPYmplY3RfUmljaENvbXBhcmVCb29sKAotICAgICAgICAgICAgICAgICAgICBrZXl3b3JkLCBubSwgUHlfRVEpOwotICAgICAgICAgICAgICAgIGlmIChjbXAgPiAwKQotICAgICAgICAgICAgICAgICAgICBnb3RvIGt3X2ZvdW5kOwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNtcCA8IDApCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChqID49IHRvdGFsX2FyZ3MgJiYga3dkaWN0ID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJVUoKSBnb3QgYW4gdW5leHBlY3RlZCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICJrZXl3b3JkIGFyZ3VtZW50ICclUyciLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjby0+Y29fbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5d29yZCk7Ci0gICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgUHlEaWN0X1NldEl0ZW0oa3dkaWN0LCBrZXl3b3JkLCB2YWx1ZSk7Ci0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICBrd19mb3VuZDoKLSAgICAgICAgICAgIGlmIChHRVRMT0NBTChqKSAhPSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAiJVUoKSBnb3QgbXVsdGlwbGUgIgotICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZXMgZm9yIGtleXdvcmQgIgotICAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCAnJVMnIiwKKyAgICAgICAgfQorICAgICAgICBpZiAoaiA+PSB0b3RhbF9hcmdzICYmIGt3ZGljdCA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICIlVSgpIGdvdCBhbiB1bmV4cGVjdGVkICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAia2V5d29yZCBhcmd1bWVudCAnJVMnIiwKICAgICAgICAgICAgICAgICAgICAgICAgICBjby0+Y29fbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICBrZXl3b3JkKTsKLSAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBQeV9JTkNSRUYodmFsdWUpOwotICAgICAgICAgICAgU0VUTE9DQUwoaiwgdmFsdWUpOworICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICB9Ci0gICAgICAgIGlmIChjby0+Y29fa3dvbmx5YXJnY291bnQgPiAwKSB7Ci0gICAgICAgICAgICBmb3IgKGkgPSBjby0+Y29fYXJnY291bnQ7IGkgPCB0b3RhbF9hcmdzOyBpKyspIHsKLSAgICAgICAgICAgICAgICBQeU9iamVjdCAqbmFtZTsKLSAgICAgICAgICAgICAgICBpZiAoR0VUTE9DQUwoaSkgIT0gTlVMTCkKLSAgICAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgbmFtZSA9IFB5VHVwbGVfR0VUX0lURU0oY28tPmNvX3Zhcm5hbWVzLCBpKTsKLSAgICAgICAgICAgICAgICBpZiAoa3dkZWZzICE9IE5VTEwpIHsKLSAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmRlZiA9IFB5RGljdF9HZXRJdGVtKGt3ZGVmcywgbmFtZSk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChkZWYpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihkZWYpOwotICAgICAgICAgICAgICAgICAgICAgICAgU0VUTE9DQUwoaSwgZGVmKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICIlVSgpIG5lZWRzIGtleXdvcmQtb25seSBhcmd1bWVudCAlUyIsCi0gICAgICAgICAgICAgICAgICAgIGNvLT5jb19uYW1lLCBuYW1lKTsKLSAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICB9CisgICAgICAgIFB5RGljdF9TZXRJdGVtKGt3ZGljdCwga2V5d29yZCwgdmFsdWUpOworICAgICAgICBjb250aW51ZTsKKyAgICAgIGt3X2ZvdW5kOgorICAgICAgICBpZiAoR0VUTE9DQUwoaikgIT0gTlVMTCkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiJVUoKSBnb3QgbXVsdGlwbGUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZXMgZm9yIGFyZ3VtZW50ICclUyciLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvLT5jb19uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgIGtleXdvcmQpOworICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICB9Ci0gICAgICAgIGlmIChhcmdjb3VudCA8IGNvLT5jb19hcmdjb3VudCkgewotICAgICAgICAgICAgaW50IG0gPSBjby0+Y29fYXJnY291bnQgLSBkZWZjb3VudDsKLSAgICAgICAgICAgIGZvciAoaSA9IGFyZ2NvdW50OyBpIDwgbTsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgaWYgKEdFVExPQ0FMKGkpID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICAgICAgaW50IGosIGdpdmVuID0gMDsKLSAgICAgICAgICAgICAgICAgICAgZm9yIChqID0gMDsgaiA8IGNvLT5jb19hcmdjb3VudDsgaisrKQotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEdFVExPQ0FMKGopKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdpdmVuKys7Ci0gICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiJVUoKSB0YWtlcyAlcyAlZCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAiYXJndW1lbnQlcyAiCi0gICAgICAgICAgICAgICAgICAgICAgICAiKCVkIGdpdmVuKSIsCi0gICAgICAgICAgICAgICAgICAgICAgICBjby0+Y29fbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICgoY28tPmNvX2ZsYWdzICYgQ09fVkFSQVJHUykgfHwKLSAgICAgICAgICAgICAgICAgICAgICAgICBkZWZjb3VudCkgPyAiYXQgbGVhc3QiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogImV4YWN0bHkiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtLCBtID09IDEgPyAiIiA6ICJzIiwgZ2l2ZW4pOwotICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKG4gPiBtKQotICAgICAgICAgICAgICAgIGkgPSBuIC0gbTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBpID0gMDsKLSAgICAgICAgICAgIGZvciAoOyBpIDwgZGVmY291bnQ7IGkrKykgewotICAgICAgICAgICAgICAgIGlmIChHRVRMT0NBTChtK2kpID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmRlZiA9IGRlZnNbaV07Ci0gICAgICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihkZWYpOwotICAgICAgICAgICAgICAgICAgICBTRVRMT0NBTChtK2ksIGRlZik7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotICAgICAgICB9CisgICAgICAgIFB5X0lOQ1JFRih2YWx1ZSk7CisgICAgICAgIFNFVExPQ0FMKGosIHZhbHVlKTsKICAgICB9Ci0gICAgZWxzZSBpZiAoYXJnY291bnQgPiAwIHx8IGt3Y291bnQgPiAwKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiJVUoKSB0YWtlcyBubyBhcmd1bWVudHMgKCVkIGdpdmVuKSIsCi0gICAgICAgICAgICAgICAgICAgICBjby0+Y29fbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgIGFyZ2NvdW50ICsga3djb3VudCk7CisgICAgaWYgKGFyZ2NvdW50ID4gY28tPmNvX2FyZ2NvdW50ICYmICEoY28tPmNvX2ZsYWdzICYgQ09fVkFSQVJHUykpIHsKKyAgICAgICAgdG9vX21hbnlfcG9zaXRpb25hbChjbywgYXJnY291bnQsIGRlZmNvdW50LCBmYXN0bG9jYWxzKTsKICAgICAgICAgZ290byBmYWlsOwogICAgIH0KLSAgICAvKiBBbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBzdG9yYWdlIGZvciBjZWxsIHZhcnMsIGFuZCBjb3B5IGZyZWUKLSAgICAgICB2YXJzIGludG8gZnJhbWUuICBUaGlzIGlzbid0IHRvbyBlZmZpY2llbnQgcmlnaHQgbm93LiAqLwotICAgIGlmIChQeVR1cGxlX0dFVF9TSVpFKGNvLT5jb19jZWxsdmFycykpIHsKLSAgICAgICAgaW50IGksIGosIG5hcmdzLCBmb3VuZDsKLSAgICAgICAgUHlfVU5JQ09ERSAqY2VsbG5hbWUsICphcmduYW1lOwotICAgICAgICBQeU9iamVjdCAqYzsKLQotICAgICAgICBuYXJncyA9IHRvdGFsX2FyZ3M7Ci0gICAgICAgIGlmIChjby0+Y29fZmxhZ3MgJiBDT19WQVJBUkdTKQotICAgICAgICAgICAgbmFyZ3MrKzsKLSAgICAgICAgaWYgKGNvLT5jb19mbGFncyAmIENPX1ZBUktFWVdPUkRTKQotICAgICAgICAgICAgbmFyZ3MrKzsKLQotICAgICAgICAvKiBJbml0aWFsaXplIGVhY2ggY2VsbCB2YXIsIHRha2luZyBpbnRvIGFjY291bnQKLSAgICAgICAgICAgY2VsbCB2YXJzIHRoYXQgYXJlIGluaXRpYWxpemVkIGZyb20gYXJndW1lbnRzLgotCi0gICAgICAgICAgIFNob3VsZCBhcnJhbmdlIGZvciB0aGUgY29tcGlsZXIgdG8gcHV0IGNlbGx2YXJzCi0gICAgICAgICAgIHRoYXQgYXJlIGFyZ3VtZW50cyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBjZWxsdmFycwotICAgICAgICAgICBsaXN0IHNvIHRoYXQgd2UgY2FuIG1hcmNoIG92ZXIgaXQgbW9yZSBlZmZpY2llbnRseT8KLSAgICAgICAgKi8KLSAgICAgICAgZm9yIChpID0gMDsgaSA8IFB5VHVwbGVfR0VUX1NJWkUoY28tPmNvX2NlbGx2YXJzKTsgKytpKSB7Ci0gICAgICAgICAgICBjZWxsbmFtZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKAotICAgICAgICAgICAgICAgIFB5VHVwbGVfR0VUX0lURU0oY28tPmNvX2NlbGx2YXJzLCBpKSk7Ci0gICAgICAgICAgICBmb3VuZCA9IDA7Ci0gICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgbmFyZ3M7IGorKykgewotICAgICAgICAgICAgICAgIGFyZ25hbWUgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgKLSAgICAgICAgICAgICAgICAgICAgUHlUdXBsZV9HRVRfSVRFTShjby0+Y29fdmFybmFtZXMsIGopKTsKLSAgICAgICAgICAgICAgICBpZiAoUHlfVU5JQ09ERV9zdHJjbXAoY2VsbG5hbWUsIGFyZ25hbWUpID09IDApIHsKLSAgICAgICAgICAgICAgICAgICAgYyA9IFB5Q2VsbF9OZXcoR0VUTE9DQUwoaikpOwotICAgICAgICAgICAgICAgICAgICBpZiAoYyA9PSBOVUxMKQotICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgICAgICAgICBHRVRMT0NBTChjby0+Y29fbmxvY2FscyArIGkpID0gYzsKLSAgICAgICAgICAgICAgICAgICAgZm91bmQgPSAxOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoZm91bmQgPT0gMCkgewotICAgICAgICAgICAgICAgIGMgPSBQeUNlbGxfTmV3KE5VTEwpOwotICAgICAgICAgICAgICAgIGlmIChjID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgICAgICBTRVRMT0NBTChjby0+Y29fbmxvY2FscyArIGksIGMpOworICAgIGlmIChhcmdjb3VudCA8IGNvLT5jb19hcmdjb3VudCkgeworICAgICAgICBpbnQgbSA9IGNvLT5jb19hcmdjb3VudCAtIGRlZmNvdW50OworICAgICAgICBpbnQgbWlzc2luZyA9IDA7CisgICAgICAgIGZvciAoaSA9IGFyZ2NvdW50OyBpIDwgbTsgaSsrKQorICAgICAgICAgICAgaWYgKEdFVExPQ0FMKGkpID09IE5VTEwpCisgICAgICAgICAgICAgICAgbWlzc2luZysrOworICAgICAgICBpZiAobWlzc2luZykgeworICAgICAgICAgICAgbWlzc2luZ19hcmd1bWVudHMoY28sIG1pc3NpbmcsIGRlZmNvdW50LCBmYXN0bG9jYWxzKTsKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgfQorICAgICAgICBpZiAobiA+IG0pCisgICAgICAgICAgICBpID0gbiAtIG07CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGkgPSAwOworICAgICAgICBmb3IgKDsgaSA8IGRlZmNvdW50OyBpKyspIHsKKyAgICAgICAgICAgIGlmIChHRVRMT0NBTChtK2kpID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBQeU9iamVjdCAqZGVmID0gZGVmc1tpXTsKKyAgICAgICAgICAgICAgICBQeV9JTkNSRUYoZGVmKTsKKyAgICAgICAgICAgICAgICBTRVRMT0NBTChtK2ksIGRlZik7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9Ci0gICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoY28tPmNvX2ZyZWV2YXJzKSkgewotICAgICAgICBpbnQgaTsKLSAgICAgICAgZm9yIChpID0gMDsgaSA8IFB5VHVwbGVfR0VUX1NJWkUoY28tPmNvX2ZyZWV2YXJzKTsgKytpKSB7Ci0gICAgICAgICAgICBQeU9iamVjdCAqbyA9IFB5VHVwbGVfR0VUX0lURU0oY2xvc3VyZSwgaSk7Ci0gICAgICAgICAgICBQeV9JTkNSRUYobyk7Ci0gICAgICAgICAgICBmcmVldmFyc1tQeVR1cGxlX0dFVF9TSVpFKGNvLT5jb19jZWxsdmFycykgKyBpXSA9IG87CisgICAgaWYgKGNvLT5jb19rd29ubHlhcmdjb3VudCA+IDApIHsKKyAgICAgICAgaW50IG1pc3NpbmcgPSAwOworICAgICAgICBmb3IgKGkgPSBjby0+Y29fYXJnY291bnQ7IGkgPCB0b3RhbF9hcmdzOyBpKyspIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpuYW1lOworICAgICAgICAgICAgaWYgKEdFVExPQ0FMKGkpICE9IE5VTEwpCisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICBuYW1lID0gUHlUdXBsZV9HRVRfSVRFTShjby0+Y29fdmFybmFtZXMsIGkpOworICAgICAgICAgICAgaWYgKGt3ZGVmcyAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAgUHlPYmplY3QgKmRlZiA9IFB5RGljdF9HZXRJdGVtKGt3ZGVmcywgbmFtZSk7CisgICAgICAgICAgICAgICAgaWYgKGRlZikgeworICAgICAgICAgICAgICAgICAgICBQeV9JTkNSRUYoZGVmKTsKKyAgICAgICAgICAgICAgICAgICAgU0VUTE9DQUwoaSwgZGVmKTsKKyAgICAgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgbWlzc2luZysrOwogICAgICAgICB9CisgICAgICAgIGlmIChtaXNzaW5nKSB7CisgICAgICAgICAgICBtaXNzaW5nX2FyZ3VtZW50cyhjbywgbWlzc2luZywgLTEsIGZhc3Rsb2NhbHMpOworICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICB9CisgICAgfQorCisgICAgLyogQWxsb2NhdGUgYW5kIGluaXRpYWxpemUgc3RvcmFnZSBmb3IgY2VsbCB2YXJzLCBhbmQgY29weSBmcmVlCisgICAgICAgdmFycyBpbnRvIGZyYW1lLiAqLworICAgIGZvciAoaSA9IDA7IGkgPCBQeVR1cGxlX0dFVF9TSVpFKGNvLT5jb19jZWxsdmFycyk7ICsraSkgeworICAgICAgICBQeU9iamVjdCAqYzsKKyAgICAgICAgaW50IGFyZzsKKyAgICAgICAgLyogUG9zc2libHkgYWNjb3VudCBmb3IgdGhlIGNlbGwgdmFyaWFibGUgYmVpbmcgYW4gYXJndW1lbnQuICovCisgICAgICAgIGlmIChjby0+Y29fY2VsbDJhcmcgIT0gTlVMTCAmJgorICAgICAgICAgICAgKGFyZyA9IGNvLT5jb19jZWxsMmFyZ1tpXSkgIT0gQ09fQ0VMTF9OT1RfQU5fQVJHKQorICAgICAgICAgICAgYyA9IFB5Q2VsbF9OZXcoR0VUTE9DQUwoYXJnKSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGMgPSBQeUNlbGxfTmV3KE5VTEwpOworICAgICAgICBpZiAoYyA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICBTRVRMT0NBTChjby0+Y29fbmxvY2FscyArIGksIGMpOworICAgIH0KKyAgICBmb3IgKGkgPSAwOyBpIDwgUHlUdXBsZV9HRVRfU0laRShjby0+Y29fZnJlZXZhcnMpOyArK2kpIHsKKyAgICAgICAgUHlPYmplY3QgKm8gPSBQeVR1cGxlX0dFVF9JVEVNKGNsb3N1cmUsIGkpOworICAgICAgICBQeV9JTkNSRUYobyk7CisgICAgICAgIGZyZWV2YXJzW1B5VHVwbGVfR0VUX1NJWkUoY28tPmNvX2NlbGx2YXJzKSArIGldID0gbzsKICAgICB9CiAKICAgICBpZiAoY28tPmNvX2ZsYWdzICYgQ09fR0VORVJBVE9SKSB7CkBAIC0zMzY1LDE4ICszNDQxLDcyIEBACiAKIAogc3RhdGljIFB5T2JqZWN0ICoKLXNwZWNpYWxfbG9va3VwKFB5T2JqZWN0ICpvLCBjaGFyICptZXRoLCBQeU9iamVjdCAqKmNhY2hlKQorc3BlY2lhbF9sb29rdXAoUHlPYmplY3QgKm8sIF9QeV9JZGVudGlmaWVyICppZCkKIHsKICAgICBQeU9iamVjdCAqcmVzOwotICAgIHJlcyA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKG8sIG1ldGgsIGNhY2hlKTsKKyAgICByZXMgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChvLCBpZCk7CiAgICAgaWYgKHJlcyA9PSBOVUxMICYmICFQeUVycl9PY2N1cnJlZCgpKSB7Ci0gICAgICAgIFB5RXJyX1NldE9iamVjdChQeUV4Y19BdHRyaWJ1dGVFcnJvciwgKmNhY2hlKTsKKyAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjX0F0dHJpYnV0ZUVycm9yLCBpZC0+b2JqZWN0KTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiByZXM7CiB9CiAKIAorLyogVGhlc2UgMyBmdW5jdGlvbnMgZGVhbCB3aXRoIHRoZSBleGNlcHRpb24gc3RhdGUgb2YgZ2VuZXJhdG9ycy4gKi8KKworc3RhdGljIHZvaWQKK3NhdmVfZXhjX3N0YXRlKFB5VGhyZWFkU3RhdGUgKnRzdGF0ZSwgUHlGcmFtZU9iamVjdCAqZikKK3sKKyAgICBQeU9iamVjdCAqdHlwZSwgKnZhbHVlLCAqdHJhY2ViYWNrOworICAgIFB5X1hJTkNSRUYodHN0YXRlLT5leGNfdHlwZSk7CisgICAgUHlfWElOQ1JFRih0c3RhdGUtPmV4Y192YWx1ZSk7CisgICAgUHlfWElOQ1JFRih0c3RhdGUtPmV4Y190cmFjZWJhY2spOworICAgIHR5cGUgPSBmLT5mX2V4Y190eXBlOworICAgIHZhbHVlID0gZi0+Zl9leGNfdmFsdWU7CisgICAgdHJhY2ViYWNrID0gZi0+Zl9leGNfdHJhY2ViYWNrOworICAgIGYtPmZfZXhjX3R5cGUgPSB0c3RhdGUtPmV4Y190eXBlOworICAgIGYtPmZfZXhjX3ZhbHVlID0gdHN0YXRlLT5leGNfdmFsdWU7CisgICAgZi0+Zl9leGNfdHJhY2ViYWNrID0gdHN0YXRlLT5leGNfdHJhY2ViYWNrOworICAgIFB5X1hERUNSRUYodHlwZSk7CisgICAgUHlfWERFQ1JFRih2YWx1ZSk7CisgICAgUHlfWERFQ1JFRih0cmFjZWJhY2spOworfQorCitzdGF0aWMgdm9pZAorc3dhcF9leGNfc3RhdGUoUHlUaHJlYWRTdGF0ZSAqdHN0YXRlLCBQeUZyYW1lT2JqZWN0ICpmKQoreworICAgIFB5T2JqZWN0ICp0bXA7CisgICAgdG1wID0gdHN0YXRlLT5leGNfdHlwZTsKKyAgICB0c3RhdGUtPmV4Y190eXBlID0gZi0+Zl9leGNfdHlwZTsKKyAgICBmLT5mX2V4Y190eXBlID0gdG1wOworICAgIHRtcCA9IHRzdGF0ZS0+ZXhjX3ZhbHVlOworICAgIHRzdGF0ZS0+ZXhjX3ZhbHVlID0gZi0+Zl9leGNfdmFsdWU7CisgICAgZi0+Zl9leGNfdmFsdWUgPSB0bXA7CisgICAgdG1wID0gdHN0YXRlLT5leGNfdHJhY2ViYWNrOworICAgIHRzdGF0ZS0+ZXhjX3RyYWNlYmFjayA9IGYtPmZfZXhjX3RyYWNlYmFjazsKKyAgICBmLT5mX2V4Y190cmFjZWJhY2sgPSB0bXA7Cit9CisKK3N0YXRpYyB2b2lkCityZXN0b3JlX2FuZF9jbGVhcl9leGNfc3RhdGUoUHlUaHJlYWRTdGF0ZSAqdHN0YXRlLCBQeUZyYW1lT2JqZWN0ICpmKQoreworICAgIFB5T2JqZWN0ICp0eXBlLCAqdmFsdWUsICp0YjsKKyAgICB0eXBlID0gdHN0YXRlLT5leGNfdHlwZTsKKyAgICB2YWx1ZSA9IHRzdGF0ZS0+ZXhjX3ZhbHVlOworICAgIHRiID0gdHN0YXRlLT5leGNfdHJhY2ViYWNrOworICAgIHRzdGF0ZS0+ZXhjX3R5cGUgPSBmLT5mX2V4Y190eXBlOworICAgIHRzdGF0ZS0+ZXhjX3ZhbHVlID0gZi0+Zl9leGNfdmFsdWU7CisgICAgdHN0YXRlLT5leGNfdHJhY2ViYWNrID0gZi0+Zl9leGNfdHJhY2ViYWNrOworICAgIGYtPmZfZXhjX3R5cGUgPSBOVUxMOworICAgIGYtPmZfZXhjX3ZhbHVlID0gTlVMTDsKKyAgICBmLT5mX2V4Y190cmFjZWJhY2sgPSBOVUxMOworICAgIFB5X1hERUNSRUYodHlwZSk7CisgICAgUHlfWERFQ1JFRih2YWx1ZSk7CisgICAgUHlfWERFQ1JFRih0Yik7Cit9CisKKwogLyogTG9naWMgZm9yIHRoZSByYWlzZSBzdGF0ZW1lbnQgKHRvbyBjb21wbGljYXRlZCBmb3IgaW5saW5pbmcpLgogICAgVGhpcyAqY29uc3VtZXMqIGEgcmVmZXJlbmNlIGNvdW50IHRvIGVhY2ggb2YgaXRzIGFyZ3VtZW50cy4gKi8KIHN0YXRpYyBlbnVtIHdoeV9jb2RlCkBAIC0zNDM3LDIyICszNTY3LDIzIEBACiAKICAgICBpZiAoY2F1c2UpIHsKICAgICAgICAgUHlPYmplY3QgKmZpeGVkX2NhdXNlOworICAgICAgICBpbnQgcmVzdWx0OwogICAgICAgICBpZiAoUHlFeGNlcHRpb25DbGFzc19DaGVjayhjYXVzZSkpIHsKICAgICAgICAgICAgIGZpeGVkX2NhdXNlID0gUHlPYmplY3RfQ2FsbE9iamVjdChjYXVzZSwgTlVMTCk7CiAgICAgICAgICAgICBpZiAoZml4ZWRfY2F1c2UgPT0gTlVMTCkKICAgICAgICAgICAgICAgICBnb3RvIHJhaXNlX2Vycm9yOwotICAgICAgICAgICAgUHlfREVDUkVGKGNhdXNlKTsKLSAgICAgICAgfQotICAgICAgICBlbHNlIGlmIChQeUV4Y2VwdGlvbkluc3RhbmNlX0NoZWNrKGNhdXNlKSkgeworICAgICAgICAgICAgUHlfQ0xFQVIoY2F1c2UpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgLyogTGV0ICJleGMuX19jYXVzZV9fID0gY2F1c2UiIGhhbmRsZSBhbGwgZnVydGhlciBjaGVja3MgKi8KICAgICAgICAgICAgIGZpeGVkX2NhdXNlID0gY2F1c2U7CisgICAgICAgICAgICBjYXVzZSA9IE5VTEw7IC8qIFN0ZWFsIHRoZSByZWZlcmVuY2UgKi8KICAgICAgICAgfQotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4Y2VwdGlvbiBjYXVzZXMgbXVzdCBkZXJpdmUgZnJvbSAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIkJhc2VFeGNlcHRpb24iKTsKKyAgICAgICAgLyogV2UgcmV0YWluIG93bmVyc2hpcCBvZiB0aGUgcmVmZXJlbmNlIHRvIGZpeGVkX2NhdXNlICovCisgICAgICAgIHJlc3VsdCA9IF9QeUV4Y2VwdGlvbl9TZXRDYXVzZUNoZWNrZWQodmFsdWUsIGZpeGVkX2NhdXNlKTsKKyAgICAgICAgUHlfREVDUkVGKGZpeGVkX2NhdXNlKTsKKyAgICAgICAgaWYgKHJlc3VsdCA8IDApIHsKICAgICAgICAgICAgIGdvdG8gcmFpc2VfZXJyb3I7CiAgICAgICAgIH0KLSAgICAgICAgUHlFeGNlcHRpb25fU2V0Q2F1c2UodmFsdWUsIGZpeGVkX2NhdXNlKTsKICAgICB9CiAKICAgICBQeUVycl9TZXRPYmplY3QodHlwZSwgdmFsdWUpOwpAQCAtNDE5Miw3ICs0MzIzLDcgQEAKICAgICAgICAgICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19UeXBlRXJyb3IpKSB7CiAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJS4yMDBzJS4yMDBzIGFyZ3VtZW50IGFmdGVyICogIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm11c3QgYmUgYSBzZXF1ZW5jZSwgbm90ICUyMDBzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgc2VxdWVuY2UsIG5vdCAlLjIwMHMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFdmFsX0dldEZ1bmNOYW1lKGZ1bmMpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFdmFsX0dldEZ1bmNEZXNjKGZ1bmMpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcmFyZy0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC00MzQyLDcgKzQ0NzMsOSBAQAogc3RhdGljIGludAogaW1wb3J0X2FsbF9mcm9tKFB5T2JqZWN0ICpsb2NhbHMsIFB5T2JqZWN0ICp2KQogewotICAgIFB5T2JqZWN0ICphbGwgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHYsICJfX2FsbF9fIik7CisgICAgX1B5X0lERU5USUZJRVIoX19hbGxfXyk7CisgICAgX1B5X0lERU5USUZJRVIoX19kaWN0X18pOworICAgIFB5T2JqZWN0ICphbGwgPSBfUHlPYmplY3RfR2V0QXR0cklkKHYsICZQeUlkX19fYWxsX18pOwogICAgIFB5T2JqZWN0ICpkaWN0LCAqbmFtZSwgKnZhbHVlOwogICAgIGludCBza2lwX2xlYWRpbmdfdW5kZXJzY29yZXMgPSAwOwogICAgIGludCBwb3MsIGVycjsKQEAgLTQzNTEsNyArNDQ4NCw3IEBACiAgICAgICAgIGlmICghUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICByZXR1cm4gLTE7IC8qIFVuZXhwZWN0ZWQgZXJyb3IgKi8KICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgZGljdCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcodiwgIl9fZGljdF9fIik7CisgICAgICAgIGRpY3QgPSBfUHlPYmplY3RfR2V0QXR0cklkKHYsICZQeUlkX19fZGljdF9fKTsKICAgICAgICAgaWYgKGRpY3QgPT0gTlVMTCkgewogICAgICAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC00Mzc3LDcgKzQ1MTAsOCBAQAogICAgICAgICB9CiAgICAgICAgIGlmIChza2lwX2xlYWRpbmdfdW5kZXJzY29yZXMgJiYKICAgICAgICAgICAgIFB5VW5pY29kZV9DaGVjayhuYW1lKSAmJgotICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUobmFtZSlbMF0gPT0gJ18nKQorICAgICAgICAgICAgUHlVbmljb2RlX1JFQURZKG5hbWUpICE9IC0xICYmCisgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRF9DSEFSKG5hbWUsIDApID09ICdfJykKICAgICAgICAgewogICAgICAgICAgICAgUHlfREVDUkVGKG5hbWUpOwogICAgICAgICAgICAgY29udGludWU7CkBAIC00NDM3LDE5ICs0NTcxLDkgQEAKIAogc3RhdGljIFB5T2JqZWN0ICoKIHVuaWNvZGVfY29uY2F0ZW5hdGUoUHlPYmplY3QgKnYsIFB5T2JqZWN0ICp3LAotICAgICAgICAgICAgICAgICAgIFB5RnJhbWVPYmplY3QgKmYsIHVuc2lnbmVkIGNoYXIgKm5leHRfaW5zdHIpCisgICAgICAgICAgICAgICAgICAgIFB5RnJhbWVPYmplY3QgKmYsIHVuc2lnbmVkIGNoYXIgKm5leHRfaW5zdHIpCiB7Ci0gICAgLyogVGhpcyBmdW5jdGlvbiBpbXBsZW1lbnRzICd2YXJpYWJsZSArPSBleHByJyB3aGVuIGJvdGggYXJndW1lbnRzCi0gICAgICAgYXJlIChVbmljb2RlKSBzdHJpbmdzLiAqLwotICAgIFB5X3NzaXplX3Qgdl9sZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUodik7Ci0gICAgUHlfc3NpemVfdCB3X2xlbiA9IFB5VW5pY29kZV9HRVRfU0laRSh3KTsKLSAgICBQeV9zc2l6ZV90IG5ld19sZW4gPSB2X2xlbiArIHdfbGVuOwotICAgIGlmIChuZXdfbGVuIDwgMCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpbmdzIGFyZSB0b28gbGFyZ2UgdG8gY29uY2F0Iik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQorICAgIFB5T2JqZWN0ICpyZXM7CiAgICAgaWYgKFB5X1JFRkNOVCh2KSA9PSAyKSB7CiAgICAgICAgIC8qIEluIHRoZSBjb21tb24gY2FzZSwgdGhlcmUgYXJlIDIgcmVmZXJlbmNlcyB0byB0aGUgdmFsdWUKICAgICAgICAgICogc3RvcmVkIGluICd2YXJpYWJsZScgd2hlbiB0aGUgKz0gaXMgcGVyZm9ybWVkOiBvbmUgb24gdGhlCkBAIC00NDkwLDMxICs0NjE0LDkgQEAKICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQotCi0gICAgaWYgKFB5X1JFRkNOVCh2KSA9PSAxICYmICFQeVVuaWNvZGVfQ0hFQ0tfSU5URVJORUQodikpIHsKLSAgICAgICAgLyogTm93IHdlIG93biB0aGUgbGFzdCByZWZlcmVuY2UgdG8gJ3YnLCBzbyB3ZSBjYW4gcmVzaXplIGl0Ci0gICAgICAgICAqIGluLXBsYWNlLgotICAgICAgICAgKi8KLSAgICAgICAgaWYgKFB5VW5pY29kZV9SZXNpemUoJnYsIG5ld19sZW4pICE9IDApIHsKLSAgICAgICAgICAgIC8qIFhYWCBpZiBQeVVuaWNvZGVfUmVzaXplKCkgZmFpbHMsICd2JyBoYXMgYmVlbgotICAgICAgICAgICAgICogZGVhbGxvY2F0ZWQgc28gaXQgY2Fubm90IGJlIHB1dCBiYWNrIGludG8KLSAgICAgICAgICAgICAqICd2YXJpYWJsZScuICBUaGUgTWVtb3J5RXJyb3IgaXMgcmFpc2VkIHdoZW4gdGhlcmUKLSAgICAgICAgICAgICAqIGlzIG5vIHZhbHVlIGluICd2YXJpYWJsZScsIHdoaWNoIG1pZ2h0ICh2ZXJ5Ci0gICAgICAgICAgICAgKiByZW1vdGVseSkgYmUgYSBjYXVzZSBvZiBpbmNvbXBhdGliaWxpdGllcy4KLSAgICAgICAgICAgICAqLwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgLyogY29weSAndycgaW50byB0aGUgbmV3bHkgYWxsb2NhdGVkIGFyZWEgb2YgJ3YnICovCi0gICAgICAgIG1lbWNweShQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSArIHZfbGVuLAotICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUodyksIHdfbGVuKnNpemVvZihQeV9VTklDT0RFKSk7Ci0gICAgICAgIHJldHVybiB2OwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgLyogV2hlbiBpbi1wbGFjZSByZXNpemluZyBpcyBub3QgYW4gb3B0aW9uLiAqLwotICAgICAgICB3ID0gUHlVbmljb2RlX0NvbmNhdCh2LCB3KTsKLSAgICAgICAgUHlfREVDUkVGKHYpOwotICAgICAgICByZXR1cm4gdzsKLSAgICB9CisgICAgcmVzID0gdjsKKyAgICBQeVVuaWNvZGVfQXBwZW5kKCZyZXMsIHcpOworICAgIHJldHVybiByZXM7CiB9CiAKICNpZmRlZiBEWU5BTUlDX0VYRUNVVElPTl9QUk9GSUxFCmRpZmYgLS1naXQgYS9QeXRob24vY29kZWNzLmMgYi9QeXRob24vY29kZWNzLmMKaW5kZXggYzdmNGE5Yy4uNjA3ZmVlYSAxMDA2NDQKLS0tIGEvUHl0aG9uL2NvZGVjcy5jCisrKyBiL1B5dGhvbi9jb2RlY3MuYwpAQCAtMTEsNiArMTEsOCBAQAogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgPGN0eXBlLmg+CiAKK2NvbnN0IGNoYXIgKlB5X2hleGRpZ2l0cyA9ICIwMTIzNDU2Nzg5YWJjZGVmIjsKKwogLyogLS0tIENvZGVjIFJlZ2lzdHJ5IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKIC8qIEltcG9ydCB0aGUgc3RhbmRhcmQgZW5jb2RpbmdzIHBhY2thZ2Ugd2hpY2ggd2lsbCByZWdpc3RlciB0aGUgZmlyc3QKQEAgLTQ2NSw5ICs0NjcsMTEgQEAKIAogc3RhdGljIHZvaWQgd3JvbmdfZXhjZXB0aW9uX3R5cGUoUHlPYmplY3QgKmV4YykKIHsKLSAgICBQeU9iamVjdCAqdHlwZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZXhjLCAiX19jbGFzc19fIik7CisgICAgX1B5X0lERU5USUZJRVIoX19jbGFzc19fKTsKKyAgICBfUHlfSURFTlRJRklFUihfX25hbWVfXyk7CisgICAgUHlPYmplY3QgKnR5cGUgPSBfUHlPYmplY3RfR2V0QXR0cklkKGV4YywgJlB5SWRfX19jbGFzc19fKTsKICAgICBpZiAodHlwZSAhPSBOVUxMKSB7Ci0gICAgICAgIFB5T2JqZWN0ICpuYW1lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh0eXBlLCAiX19uYW1lX18iKTsKKyAgICAgICAgUHlPYmplY3QgKm5hbWUgPSBfUHlPYmplY3RfR2V0QXR0cklkKHR5cGUsICZQeUlkX19fbmFtZV9fKTsKICAgICAgICAgUHlfREVDUkVGKHR5cGUpOwogICAgICAgICBpZiAobmFtZSAhPSBOVUxMKSB7CiAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLApAQCAtNTA2LDU3ICs1MTAsNTYgQEAKICAgICAgICAgd3JvbmdfZXhjZXB0aW9uX3R5cGUoZXhjKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIC8qIG91Y2g6IHBhc3NpbmcgTlVMTCwgMCwgcG9zIGdpdmVzIE5vbmUgaW5zdGVhZCBvZiB1JycgKi8KLSAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKHUjbikiLCAmZW5kLCAwLCBlbmQpOworICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTm4pIiwgUHlVbmljb2RlX05ldygwLCAwKSwgZW5kKTsKIH0KIAogCiBQeU9iamVjdCAqUHlDb2RlY19SZXBsYWNlRXJyb3JzKFB5T2JqZWN0ICpleGMpCiB7Ci0gICAgUHlPYmplY3QgKnJlc3R1cGxlOwotICAgIFB5X3NzaXplX3Qgc3RhcnQ7Ci0gICAgUHlfc3NpemVfdCBlbmQ7Ci0gICAgUHlfc3NpemVfdCBpOworICAgIFB5X3NzaXplX3Qgc3RhcnQsIGVuZCwgaSwgbGVuOwogCiAgICAgaWYgKFB5T2JqZWN0X0lzSW5zdGFuY2UoZXhjLCBQeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3IpKSB7CiAgICAgICAgIFB5T2JqZWN0ICpyZXM7Ci0gICAgICAgIFB5X1VOSUNPREUgKnA7CisgICAgICAgIGludCBraW5kOworICAgICAgICB2b2lkICpkYXRhOwogICAgICAgICBpZiAoUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0U3RhcnQoZXhjLCAmc3RhcnQpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRFbmQoZXhjLCAmZW5kKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICByZXMgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgZW5kLXN0YXJ0KTsKKyAgICAgICAgbGVuID0gZW5kIC0gc3RhcnQ7CisgICAgICAgIHJlcyA9IFB5VW5pY29kZV9OZXcobGVuLCAnPycpOwogICAgICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgZm9yIChwID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzKSwgaSA9IHN0YXJ0OwotICAgICAgICAgICAgaTxlbmQ7ICsrcCwgKytpKQotICAgICAgICAgICAgKnAgPSAnPyc7Ci0gICAgICAgIHJlc3R1cGxlID0gUHlfQnVpbGRWYWx1ZSgiKE9uKSIsIHJlcywgZW5kKTsKLSAgICAgICAgUHlfREVDUkVGKHJlcyk7Ci0gICAgICAgIHJldHVybiByZXN0dXBsZTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHJlcyk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShyZXMpOworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyArK2kpCisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgaSwgJz8nKTsKKyAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihObikiLCByZXMsIGVuZCk7CiAgICAgfQogICAgIGVsc2UgaWYgKFB5T2JqZWN0X0lzSW5zdGFuY2UoZXhjLCBQeUV4Y19Vbmljb2RlRGVjb2RlRXJyb3IpKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgcmVzID0gUHlfVU5JQ09ERV9SRVBMQUNFTUVOVF9DSEFSQUNURVI7CiAgICAgICAgIGlmIChQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRFbmQoZXhjLCAmZW5kKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKHUjbikiLCAmcmVzLCAxLCBlbmQpOworICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKENuKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbnQpUHlfVU5JQ09ERV9SRVBMQUNFTUVOVF9DSEFSQUNURVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZCk7CiAgICAgfQogICAgIGVsc2UgaWYgKFB5T2JqZWN0X0lzSW5zdGFuY2UoZXhjLCBQeUV4Y19Vbmljb2RlVHJhbnNsYXRlRXJyb3IpKSB7CiAgICAgICAgIFB5T2JqZWN0ICpyZXM7Ci0gICAgICAgIFB5X1VOSUNPREUgKnA7CisgICAgICAgIGludCBraW5kOworICAgICAgICB2b2lkICpkYXRhOwogICAgICAgICBpZiAoUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0U3RhcnQoZXhjLCAmc3RhcnQpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRFbmQoZXhjLCAmZW5kKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICByZXMgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgZW5kLXN0YXJ0KTsKKyAgICAgICAgbGVuID0gZW5kIC0gc3RhcnQ7CisgICAgICAgIHJlcyA9IFB5VW5pY29kZV9OZXcobGVuLCBQeV9VTklDT0RFX1JFUExBQ0VNRU5UX0NIQVJBQ1RFUik7CiAgICAgICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBmb3IgKHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXMpLCBpID0gc3RhcnQ7Ci0gICAgICAgICAgICBpPGVuZDsgKytwLCArK2kpCi0gICAgICAgICAgICAqcCA9IFB5X1VOSUNPREVfUkVQTEFDRU1FTlRfQ0hBUkFDVEVSOwotICAgICAgICByZXN0dXBsZSA9IFB5X0J1aWxkVmFsdWUoIihPbikiLCByZXMsIGVuZCk7Ci0gICAgICAgIFB5X0RFQ1JFRihyZXMpOwotICAgICAgICByZXR1cm4gcmVzdHVwbGU7CisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXMpOworICAgICAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEocmVzKTsKKyAgICAgICAgZm9yIChpPTA7IGkgPCBsZW47IGkrKykKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBpLCBQeV9VTklDT0RFX1JFUExBQ0VNRU5UX0NIQVJBQ1RFUik7CisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTm4pIiwgcmVzLCBlbmQpOwogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgd3JvbmdfZXhjZXB0aW9uX3R5cGUoZXhjKTsKQEAgLTU2OSw4MiArNTcyLDcyIEBACiAgICAgaWYgKFB5T2JqZWN0X0lzSW5zdGFuY2UoZXhjLCBQeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3IpKSB7CiAgICAgICAgIFB5T2JqZWN0ICpyZXN0dXBsZTsKICAgICAgICAgUHlPYmplY3QgKm9iamVjdDsKKyAgICAgICAgUHlfc3NpemVfdCBpOwogICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0OwogICAgICAgICBQeV9zc2l6ZV90IGVuZDsKICAgICAgICAgUHlPYmplY3QgKnJlczsKLSAgICAgICAgUHlfVU5JQ09ERSAqcDsKLSAgICAgICAgUHlfVU5JQ09ERSAqc3RhcnRwOwotICAgICAgICBQeV9VTklDT0RFICpvdXRwOworICAgICAgICB1bnNpZ25lZCBjaGFyICpvdXRwOwogICAgICAgICBpbnQgcmVzc2l6ZTsKKyAgICAgICAgUHlfVUNTNCBjaDsKICAgICAgICAgaWYgKFB5VW5pY29kZUVuY29kZUVycm9yX0dldFN0YXJ0KGV4YywgJnN0YXJ0KSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5kKGV4YywgJmVuZCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgaWYgKCEob2JqZWN0ID0gUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0T2JqZWN0KGV4YykpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIHN0YXJ0cCA9IFB5VW5pY29kZV9BU19VTklDT0RFKG9iamVjdCk7Ci0gICAgICAgIGZvciAocCA9IHN0YXJ0cCtzdGFydCwgcmVzc2l6ZSA9IDA7IHAgPCBzdGFydHArZW5kOyArK3ApIHsKLSAgICAgICAgICAgIGlmICgqcDwxMCkKKyAgICAgICAgZm9yIChpID0gc3RhcnQsIHJlc3NpemUgPSAwOyBpIDwgZW5kOyArK2kpIHsKKyAgICAgICAgICAgIC8qIG9iamVjdCBpcyBndWFyYW50ZWVkIHRvIGJlICJyZWFkeSIgKi8KKyAgICAgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQURfQ0hBUihvYmplY3QsIGkpOworICAgICAgICAgICAgaWYgKGNoPDEwKQogICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMisxKzE7Ci0gICAgICAgICAgICBlbHNlIGlmICgqcDwxMDApCisgICAgICAgICAgICBlbHNlIGlmIChjaDwxMDApCiAgICAgICAgICAgICAgICAgcmVzc2l6ZSArPSAyKzIrMTsKLSAgICAgICAgICAgIGVsc2UgaWYgKCpwPDEwMDApCisgICAgICAgICAgICBlbHNlIGlmIChjaDwxMDAwKQogICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMiszKzE7Ci0gICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwMCkKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoPDEwMDAwKQogICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMis0KzE7Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgZWxzZSBpZiAoY2g8MTAwMDAwKQogICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMis1KzE7Ci0jZWxzZQotICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwMDAwKQotICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMis1KzE7Ci0gICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwMDAwKQorICAgICAgICAgICAgZWxzZSBpZiAoY2g8MTAwMDAwMCkKICAgICAgICAgICAgICAgICByZXNzaXplICs9IDIrNisxOwogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMis3KzE7Ci0jZW5kaWYKICAgICAgICAgfQogICAgICAgICAvKiBhbGxvY2F0ZSByZXBsYWNlbWVudCAqLwotICAgICAgICByZXMgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgcmVzc2l6ZSk7CisgICAgICAgIHJlcyA9IFB5VW5pY29kZV9OZXcocmVzc2l6ZSwgMTI3KTsKICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYob2JqZWN0KTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CisgICAgICAgIG91dHAgPSBQeVVuaWNvZGVfMUJZVEVfREFUQShyZXMpOwogICAgICAgICAvKiBnZW5lcmF0ZSByZXBsYWNlbWVudCAqLwotICAgICAgICBmb3IgKHAgPSBzdGFydHArc3RhcnQsIG91dHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXMpOwotICAgICAgICAgICAgcCA8IHN0YXJ0cCtlbmQ7ICsrcCkgewotICAgICAgICAgICAgUHlfVU5JQ09ERSBjID0gKnA7CisgICAgICAgIGZvciAoaSA9IHN0YXJ0OyBpIDwgZW5kOyArK2kpIHsKICAgICAgICAgICAgIGludCBkaWdpdHM7CiAgICAgICAgICAgICBpbnQgYmFzZTsKKyAgICAgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQURfQ0hBUihvYmplY3QsIGkpOwogICAgICAgICAgICAgKm91dHArKyA9ICcmJzsKICAgICAgICAgICAgICpvdXRwKysgPSAnIyc7Ci0gICAgICAgICAgICBpZiAoKnA8MTApIHsKKyAgICAgICAgICAgIGlmIChjaDwxMCkgewogICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDE7CiAgICAgICAgICAgICAgICAgYmFzZSA9IDE7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIGlmICgqcDwxMDApIHsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoPDEwMCkgewogICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDI7CiAgICAgICAgICAgICAgICAgYmFzZSA9IDEwOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwMCkgeworICAgICAgICAgICAgZWxzZSBpZiAoY2g8MTAwMCkgewogICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDM7CiAgICAgICAgICAgICAgICAgYmFzZSA9IDEwMDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgaWYgKCpwPDEwMDAwKSB7CisgICAgICAgICAgICBlbHNlIGlmIChjaDwxMDAwMCkgewogICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDQ7CiAgICAgICAgICAgICAgICAgYmFzZSA9IDEwMDA7CiAgICAgICAgICAgICB9Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBlbHNlIGlmIChjaDwxMDAwMDApIHsKICAgICAgICAgICAgICAgICBkaWdpdHMgPSA1OwogICAgICAgICAgICAgICAgIGJhc2UgPSAxMDAwMDsKICAgICAgICAgICAgIH0KLSNlbHNlCi0gICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwMDApIHsKLSAgICAgICAgICAgICAgICBkaWdpdHMgPSA1OwotICAgICAgICAgICAgICAgIGJhc2UgPSAxMDAwMDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgaWYgKCpwPDEwMDAwMDApIHsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoPDEwMDAwMDApIHsKICAgICAgICAgICAgICAgICBkaWdpdHMgPSA2OwogICAgICAgICAgICAgICAgIGJhc2UgPSAxMDAwMDA7CiAgICAgICAgICAgICB9CkBAIC02NTIsMTAgKzY0NSw5IEBACiAgICAgICAgICAgICAgICAgZGlnaXRzID0gNzsKICAgICAgICAgICAgICAgICBiYXNlID0gMTAwMDAwMDsKICAgICAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICAgICAgd2hpbGUgKGRpZ2l0cy0tPjApIHsKLSAgICAgICAgICAgICAgICAqb3V0cCsrID0gJzAnICsgYy9iYXNlOwotICAgICAgICAgICAgICAgIGMgJT0gYmFzZTsKKyAgICAgICAgICAgICAgICAqb3V0cCsrID0gJzAnICsgY2gvYmFzZTsKKyAgICAgICAgICAgICAgICBjaCAlPSBiYXNlOwogICAgICAgICAgICAgICAgIGJhc2UgLz0gMTA7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAqb3V0cCsrID0gJzsnOwpAQCAtNjcxLDgzICs2NjMsNjEgQEAKICAgICB9CiB9CiAKLXN0YXRpYyBQeV9VTklDT0RFIGhleGRpZ2l0c1tdID0gewotICAgICcwJywgJzEnLCAnMicsICczJywgJzQnLCAnNScsICc2JywgJzcnLAotICAgICc4JywgJzknLCAnYScsICdiJywgJ2MnLCAnZCcsICdlJywgJ2YnCi19OwotCiBQeU9iamVjdCAqUHlDb2RlY19CYWNrc2xhc2hSZXBsYWNlRXJyb3JzKFB5T2JqZWN0ICpleGMpCiB7Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotI2RlZmluZSBJU19TVVJST0dBVEVfUEFJUihwLCBlbmQpIFwKLSAgICAoKnAgPj0gMHhEODAwICYmICpwIDw9IDB4REJGRiAmJiAocCArIDEpIDwgZW5kICYmIFwKLSAgICAgKihwICsgMSkgPj0gMHhEQzAwICYmICoocCArIDEpIDw9IDB4REZGRikKLSNlbHNlCi0jZGVmaW5lIElTX1NVUlJPR0FURV9QQUlSKHAsIGVuZCkgMAotI2VuZGlmCiAgICAgaWYgKFB5T2JqZWN0X0lzSW5zdGFuY2UoZXhjLCBQeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3IpKSB7CiAgICAgICAgIFB5T2JqZWN0ICpyZXN0dXBsZTsKICAgICAgICAgUHlPYmplY3QgKm9iamVjdDsKKyAgICAgICAgUHlfc3NpemVfdCBpOwogICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0OwogICAgICAgICBQeV9zc2l6ZV90IGVuZDsKICAgICAgICAgUHlPYmplY3QgKnJlczsKLSAgICAgICAgUHlfVU5JQ09ERSAqcDsKLSAgICAgICAgUHlfVU5JQ09ERSAqc3RhcnRwOwotICAgICAgICBQeV9VTklDT0RFICpvdXRwOworICAgICAgICB1bnNpZ25lZCBjaGFyICpvdXRwOwogICAgICAgICBpbnQgcmVzc2l6ZTsKKyAgICAgICAgUHlfVUNTNCBjOwogICAgICAgICBpZiAoUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0U3RhcnQoZXhjLCAmc3RhcnQpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRFbmQoZXhjLCAmZW5kKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoIShvYmplY3QgPSBQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRPYmplY3QoZXhjKSkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgc3RhcnRwID0gUHlVbmljb2RlX0FTX1VOSUNPREUob2JqZWN0KTsKLSAgICAgICAgZm9yIChwID0gc3RhcnRwK3N0YXJ0LCByZXNzaXplID0gMDsgcCA8IHN0YXJ0cCtlbmQ7ICsrcCkgewotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgaWYgKCpwID49IDB4MDAwMTAwMDApCisgICAgICAgIGZvciAoaSA9IHN0YXJ0LCByZXNzaXplID0gMDsgaSA8IGVuZDsgKytpKSB7CisgICAgICAgICAgICAvKiBvYmplY3QgaXMgZ3VhcmFudGVlZCB0byBiZSAicmVhZHkiICovCisgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQURfQ0hBUihvYmplY3QsIGkpOworICAgICAgICAgICAgaWYgKGMgPj0gMHgxMDAwMCkgewogICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMSsxKzg7Ci0gICAgICAgICAgICBlbHNlCi0jZW5kaWYKLSAgICAgICAgICAgIGlmICgqcCA+PSAweDEwMCkgewotICAgICAgICAgICAgICAgIGlmIChJU19TVVJST0dBVEVfUEFJUihwLCBzdGFydHArZW5kKSkgewotICAgICAgICAgICAgICAgICAgICByZXNzaXplICs9IDErMSs4OwotICAgICAgICAgICAgICAgICAgICArK3A7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgcmVzc2l6ZSArPSAxKzErNDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgaWYgKGMgPj0gMHgxMDApIHsKKyAgICAgICAgICAgICAgICByZXNzaXplICs9IDErMSs0OwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMSsxKzI7CiAgICAgICAgIH0KLSAgICAgICAgcmVzID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHJlc3NpemUpOworICAgICAgICByZXMgPSBQeVVuaWNvZGVfTmV3KHJlc3NpemUsIDEyNyk7CiAgICAgICAgIGlmIChyZXM9PU5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgZm9yIChwID0gc3RhcnRwK3N0YXJ0LCBvdXRwID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzKTsKLSAgICAgICAgICAgIHAgPCBzdGFydHArZW5kOyArK3ApIHsKLSAgICAgICAgICAgIFB5X1VDUzQgYyA9IChQeV9VQ1M0KSAqcDsKKyAgICAgICAgZm9yIChpID0gc3RhcnQsIG91dHAgPSBQeVVuaWNvZGVfMUJZVEVfREFUQShyZXMpOworICAgICAgICAgICAgaSA8IGVuZDsgKytpKSB7CisgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQURfQ0hBUihvYmplY3QsIGkpOwogICAgICAgICAgICAgKm91dHArKyA9ICdcXCc7Ci0gICAgICAgICAgICBpZiAoSVNfU1VSUk9HQVRFX1BBSVIocCwgc3RhcnRwK2VuZCkpIHsKLSAgICAgICAgICAgICAgICBjID0gKCgqcCAmIDB4M0ZGKSA8PCAxMCkgKyAoKihwICsgMSkgJiAweDNGRikgKyAweDEwMDAwOwotICAgICAgICAgICAgICAgICsrcDsKLSAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmIChjID49IDB4MDAwMTAwMDApIHsKICAgICAgICAgICAgICAgICAqb3V0cCsrID0gJ1UnOwotICAgICAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbKGM+PjI4KSYweGZdOwotICAgICAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbKGM+PjI0KSYweGZdOwotICAgICAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbKGM+PjIwKSYweGZdOwotICAgICAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbKGM+PjE2KSYweGZdOwotICAgICAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbKGM+PjEyKSYweGZdOwotICAgICAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbKGM+PjgpJjB4Zl07CisgICAgICAgICAgICAgICAgKm91dHArKyA9IFB5X2hleGRpZ2l0c1soYz4+MjgpJjB4Zl07CisgICAgICAgICAgICAgICAgKm91dHArKyA9IFB5X2hleGRpZ2l0c1soYz4+MjQpJjB4Zl07CisgICAgICAgICAgICAgICAgKm91dHArKyA9IFB5X2hleGRpZ2l0c1soYz4+MjApJjB4Zl07CisgICAgICAgICAgICAgICAgKm91dHArKyA9IFB5X2hleGRpZ2l0c1soYz4+MTYpJjB4Zl07CisgICAgICAgICAgICAgICAgKm91dHArKyA9IFB5X2hleGRpZ2l0c1soYz4+MTIpJjB4Zl07CisgICAgICAgICAgICAgICAgKm91dHArKyA9IFB5X2hleGRpZ2l0c1soYz4+OCkmMHhmXTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UgaWYgKGMgPj0gMHgxMDApIHsKICAgICAgICAgICAgICAgICAqb3V0cCsrID0gJ3UnOwotICAgICAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbKGM+PjEyKSYweGZdOwotICAgICAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbKGM+PjgpJjB4Zl07CisgICAgICAgICAgICAgICAgKm91dHArKyA9IFB5X2hleGRpZ2l0c1soYz4+MTIpJjB4Zl07CisgICAgICAgICAgICAgICAgKm91dHArKyA9IFB5X2hleGRpZ2l0c1soYz4+OCkmMHhmXTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAqb3V0cCsrID0gJ3gnOwotICAgICAgICAgICAgKm91dHArKyA9IGhleGRpZ2l0c1soYz4+NCkmMHhmXTsKLSAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbYyYweGZdOworICAgICAgICAgICAgKm91dHArKyA9IFB5X2hleGRpZ2l0c1soYz4+NCkmMHhmXTsKKyAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbYyYweGZdOwogICAgICAgICB9CiAKICAgICAgICAgcmVzdHVwbGUgPSBQeV9CdWlsZFZhbHVlKCIoT24pIiwgcmVzLCBlbmQpOwpAQCAtNzU5LDcgKzcyOSw2IEBACiAgICAgICAgIHdyb25nX2V4Y2VwdGlvbl90eXBlKGV4Yyk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSN1bmRlZiBJU19TVVJST0dBVEVfUEFJUgogfQogCiAvKiBUaGlzIGhhbmRsZXIgaXMgZGVjbGFyZWQgc3RhdGljIHVudGlsIHNvbWVvbmUgZGVtb25zdHJhdGVzCkBAIC03NjksMTIgKzczOCwxMSBAQAogewogICAgIFB5T2JqZWN0ICpyZXN0dXBsZTsKICAgICBQeU9iamVjdCAqb2JqZWN0OworICAgIFB5X3NzaXplX3QgaTsKICAgICBQeV9zc2l6ZV90IHN0YXJ0OwogICAgIFB5X3NzaXplX3QgZW5kOwogICAgIFB5T2JqZWN0ICpyZXM7CiAgICAgaWYgKFB5T2JqZWN0X0lzSW5zdGFuY2UoZXhjLCBQeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3IpKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgICAgIFB5X1VOSUNPREUgKnN0YXJ0cDsKICAgICAgICAgY2hhciAqb3V0cDsKICAgICAgICAgaWYgKFB5VW5pY29kZUVuY29kZUVycm9yX0dldFN0YXJ0KGV4YywgJnN0YXJ0KSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNzgyLDE1ICs3NTAsMTUgQEAKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoIShvYmplY3QgPSBQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRPYmplY3QoZXhjKSkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgc3RhcnRwID0gUHlVbmljb2RlX0FTX1VOSUNPREUob2JqZWN0KTsKICAgICAgICAgcmVzID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCAzKihlbmQtc3RhcnQpKTsKICAgICAgICAgaWYgKCFyZXMpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihvYmplY3QpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgb3V0cCA9IFB5Qnl0ZXNfQXNTdHJpbmcocmVzKTsKLSAgICAgICAgZm9yIChwID0gc3RhcnRwK3N0YXJ0OyBwIDwgc3RhcnRwK2VuZDsgcCsrKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIGNoID0gKnA7CisgICAgICAgIGZvciAoaSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHsKKyAgICAgICAgICAgIC8qIG9iamVjdCBpcyBndWFyYW50ZWVkIHRvIGJlICJyZWFkeSIgKi8KKyAgICAgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKG9iamVjdCwgaSk7CiAgICAgICAgICAgICBpZiAoY2ggPCAweGQ4MDAgfHwgY2ggPiAweGRmZmYpIHsKICAgICAgICAgICAgICAgICAvKiBOb3QgYSBzdXJyb2dhdGUsIGZhaWwgd2l0aCBvcmlnaW5hbCBleGNlcHRpb24gKi8KICAgICAgICAgICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNlcHRpb25JbnN0YW5jZV9DbGFzcyhleGMpLCBleGMpOwpAQCAtODA5LDcgKzc3Nyw3IEBACiAgICAgfQogICAgIGVsc2UgaWYgKFB5T2JqZWN0X0lzSW5zdGFuY2UoZXhjLCBQeUV4Y19Vbmljb2RlRGVjb2RlRXJyb3IpKSB7CiAgICAgICAgIHVuc2lnbmVkIGNoYXIgKnA7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPSAwOworICAgICAgICBQeV9VQ1M0IGNoID0gMDsKICAgICAgICAgaWYgKFB5VW5pY29kZURlY29kZUVycm9yX0dldFN0YXJ0KGV4YywgJnN0YXJ0KSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoIShvYmplY3QgPSBQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRPYmplY3QoZXhjKSkpCkBAIC04MzUsNyArODAzLDEwIEBACiAgICAgICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNlcHRpb25JbnN0YW5jZV9DbGFzcyhleGMpLCBleGMpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KLSAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIih1I24pIiwgJmNoLCAxLCBzdGFydCszKTsKKyAgICAgICAgcmVzID0gUHlVbmljb2RlX0Zyb21PcmRpbmFsKGNoKTsKKyAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTm4pIiwgcmVzLCBzdGFydCszKTsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIHdyb25nX2V4Y2VwdGlvbl90eXBlKGV4Yyk7CkBAIC04NDgsMTIgKzgxOSwxMSBAQAogewogICAgIFB5T2JqZWN0ICpyZXN0dXBsZTsKICAgICBQeU9iamVjdCAqb2JqZWN0OworICAgIFB5X3NzaXplX3QgaTsKICAgICBQeV9zc2l6ZV90IHN0YXJ0OwogICAgIFB5X3NzaXplX3QgZW5kOwogICAgIFB5T2JqZWN0ICpyZXM7CiAgICAgaWYgKFB5T2JqZWN0X0lzSW5zdGFuY2UoZXhjLCBQeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3IpKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgICAgIFB5X1VOSUNPREUgKnN0YXJ0cDsKICAgICAgICAgY2hhciAqb3V0cDsKICAgICAgICAgaWYgKFB5VW5pY29kZUVuY29kZUVycm9yX0dldFN0YXJ0KGV4YywgJnN0YXJ0KSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtODYxLDE1ICs4MzEsMTUgQEAKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoIShvYmplY3QgPSBQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRPYmplY3QoZXhjKSkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgc3RhcnRwID0gUHlVbmljb2RlX0FTX1VOSUNPREUob2JqZWN0KTsKICAgICAgICAgcmVzID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBlbmQtc3RhcnQpOwogICAgICAgICBpZiAoIXJlcykgewogICAgICAgICAgICAgUHlfREVDUkVGKG9iamVjdCk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgICAgICBvdXRwID0gUHlCeXRlc19Bc1N0cmluZyhyZXMpOwotICAgICAgICBmb3IgKHAgPSBzdGFydHArc3RhcnQ7IHAgPCBzdGFydHArZW5kOyBwKyspIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgY2ggPSAqcDsKKyAgICAgICAgZm9yIChpID0gc3RhcnQ7IGkgPCBlbmQ7IGkrKykgeworICAgICAgICAgICAgLyogb2JqZWN0IGlzIGd1YXJhbnRlZWQgdG8gYmUgInJlYWR5IiAqLworICAgICAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEX0NIQVIob2JqZWN0LCBpKTsKICAgICAgICAgICAgIGlmIChjaCA8IDB4ZGM4MCB8fCBjaCA+IDB4ZGNmZikgewogICAgICAgICAgICAgICAgIC8qIE5vdCBhIFVURi04YiBzdXJyb2dhdGUsIGZhaWwgd2l0aCBvcmlnaW5hbCBleGNlcHRpb24gKi8KICAgICAgICAgICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNlcHRpb25JbnN0YW5jZV9DbGFzcyhleGMpLCBleGMpOwpAQCAtODg1LDggKzg1NSw5IEBACiAgICAgICAgIHJldHVybiByZXN0dXBsZTsKICAgICB9CiAgICAgZWxzZSBpZiAoUHlPYmplY3RfSXNJbnN0YW5jZShleGMsIFB5RXhjX1VuaWNvZGVEZWNvZGVFcnJvcikpIHsKKyAgICAgICAgUHlPYmplY3QgKnN0cjsKICAgICAgICAgdW5zaWduZWQgY2hhciAqcDsKLSAgICAgICAgUHlfVU5JQ09ERSBjaFs0XTsgLyogZGVjb2RlIHVwIHRvIDQgYmFkIGJ5dGVzLiAqLworICAgICAgICBQeV9VQ1MyIGNoWzRdOyAvKiBkZWNvZGUgdXAgdG8gNCBiYWQgYnl0ZXMuICovCiAgICAgICAgIGludCBjb25zdW1lZCA9IDA7CiAgICAgICAgIGlmIChQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRTdGFydChleGMsICZzdGFydCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTkxMSw3ICs4ODIsMTAgQEAKICAgICAgICAgICAgIFB5RXJyX1NldE9iamVjdChQeUV4Y2VwdGlvbkluc3RhbmNlX0NsYXNzKGV4YyksIGV4Yyk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKHUjbikiLCBjaCwgY29uc3VtZWQsIHN0YXJ0K2NvbnN1bWVkKTsKKyAgICAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfMkJZVEVfS0lORCwgY2gsIGNvbnN1bWVkKTsKKyAgICAgICAgaWYgKHN0ciA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTm4pIiwgc3RyLCBzdGFydCtjb25zdW1lZCk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICB3cm9uZ19leGNlcHRpb25fdHlwZShleGMpOwpAQCAtMTA0OCw3ICsxMDIyLDcgQEAKICAgICBpbnRlcnAtPmNvZGVjX2Vycm9yX3JlZ2lzdHJ5ID0gUHlEaWN0X05ldygpOwogCiAgICAgaWYgKGludGVycC0+Y29kZWNfZXJyb3JfcmVnaXN0cnkpIHsKLSAgICAgICAgZm9yIChpID0gMDsgaSA8IHNpemVvZihtZXRob2RzKS9zaXplb2YobWV0aG9kc1swXSk7ICsraSkgeworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlfQVJSQVlfTEVOR1RIKG1ldGhvZHMpOyArK2kpIHsKICAgICAgICAgICAgIFB5T2JqZWN0ICpmdW5jID0gUHlDRnVuY3Rpb25fTmV3KCZtZXRob2RzW2ldLmRlZiwgTlVMTCk7CiAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgaWYgKCFmdW5jKQpkaWZmIC0tZ2l0IGEvUHl0aG9uL2NvbXBpbGUuYyBiL1B5dGhvbi9jb21waWxlLmMKaW5kZXggYmE1OTNhMC4uYjY0YzgwMCAxMDA2NDQKLS0tIGEvUHl0aG9uL2NvbXBpbGUuYworKysgYi9QeXRob24vY29tcGlsZS5jCkBAIC05MCw2ICs5MCwxMyBAQAogICAgIGJhc2ljYmxvY2sgKmZiX2Jsb2NrOwogfTsKIAorZW51bSB7CisgICAgQ09NUElMRVJfU0NPUEVfTU9EVUxFLAorICAgIENPTVBJTEVSX1NDT1BFX0NMQVNTLAorICAgIENPTVBJTEVSX1NDT1BFX0ZVTkNUSU9OLAorICAgIENPTVBJTEVSX1NDT1BFX0NPTVBSRUhFTlNJT04sCit9OworCiAvKiBUaGUgZm9sbG93aW5nIGl0ZW1zIGNoYW5nZSBvbiBlbnRyeSBhbmQgZXhpdCBvZiBjb2RlIGJsb2Nrcy4KICAgIFRoZXkgbXVzdCBiZSBzYXZlZCBhbmQgcmVzdG9yZWQgd2hlbiByZXR1cm5pbmcgdG8gYSBibG9jay4KICovCkBAIC05Nyw2ICsxMDQsOSBAQAogICAgIFB5U1RFbnRyeU9iamVjdCAqdV9zdGU7CiAKICAgICBQeU9iamVjdCAqdV9uYW1lOworICAgIFB5T2JqZWN0ICp1X3F1YWxuYW1lOyAgLyogZG90LXNlcGFyYXRlZCBxdWFsaWZpZWQgbmFtZSAobGF6eSkgKi8KKyAgICBpbnQgdV9zY29wZV90eXBlOworCiAgICAgLyogVGhlIGZvbGxvd2luZyBmaWVsZHMgYXJlIGRpY3RzIHRoYXQgbWFwIG9iamVjdHMgdG8KICAgICAgICB0aGUgaW5kZXggb2YgdGhlbSBpbiBjb19YWFguICAgICAgVGhlIGluZGV4IGlzIHVzZWQgYXMKICAgICAgICB0aGUgYXJndW1lbnQgZm9yIG9wY29kZXMgdGhhdCByZWZlciB0byB0aG9zZSBjb2xsZWN0aW9ucy4KQEAgLTEzNSw2ICsxNDUsNyBAQAogCiBzdHJ1Y3QgY29tcGlsZXIgewogICAgIGNvbnN0IGNoYXIgKmNfZmlsZW5hbWU7CisgICAgUHlPYmplY3QgKmNfZmlsZW5hbWVfb2JqOwogICAgIHN0cnVjdCBzeW10YWJsZSAqY19zdDsKICAgICBQeUZ1dHVyZUZlYXR1cmVzICpjX2Z1dHVyZTsgLyogcG9pbnRlciB0byBtb2R1bGUncyBfX2Z1dHVyZV9fICovCiAgICAgUHlDb21waWxlckZsYWdzICpjX2ZsYWdzOwpAQCAtMTQ4LDcgKzE1OSw3IEBACiAgICAgUHlBcmVuYSAqY19hcmVuYTsgICAgICAgICAgICAvKiBwb2ludGVyIHRvIG1lbW9yeSBhbGxvY2F0aW9uIGFyZW5hICovCiB9OwogCi1zdGF0aWMgaW50IGNvbXBpbGVyX2VudGVyX3Njb3BlKHN0cnVjdCBjb21waWxlciAqLCBpZGVudGlmaWVyLCB2b2lkICosIGludCk7CitzdGF0aWMgaW50IGNvbXBpbGVyX2VudGVyX3Njb3BlKHN0cnVjdCBjb21waWxlciAqLCBpZGVudGlmaWVyLCBpbnQsIHZvaWQgKiwgaW50KTsKIHN0YXRpYyB2b2lkIGNvbXBpbGVyX2ZyZWUoc3RydWN0IGNvbXBpbGVyICopOwogc3RhdGljIGJhc2ljYmxvY2sgKmNvbXBpbGVyX25ld19ibG9jayhzdHJ1Y3QgY29tcGlsZXIgKik7CiBzdGF0aWMgaW50IGNvbXBpbGVyX25leHRfaW5zdHIoc3RydWN0IGNvbXBpbGVyICosIGJhc2ljYmxvY2sgKik7CkBAIC0xNzgsMTIgKzE4OSwxMyBAQAogc3RhdGljIGludCBpbnBsYWNlX2Jpbm9wKHN0cnVjdCBjb21waWxlciAqLCBvcGVyYXRvcl90eSk7CiBzdGF0aWMgaW50IGV4cHJfY29uc3RhbnQoc3RydWN0IGNvbXBpbGVyICosIGV4cHJfdHkpOwogCi1zdGF0aWMgaW50IGNvbXBpbGVyX3dpdGgoc3RydWN0IGNvbXBpbGVyICosIHN0bXRfdHkpOworc3RhdGljIGludCBjb21waWxlcl93aXRoKHN0cnVjdCBjb21waWxlciAqLCBzdG10X3R5LCBpbnQpOwogc3RhdGljIGludCBjb21waWxlcl9jYWxsX2hlbHBlcihzdHJ1Y3QgY29tcGlsZXIgKmMsIGludCBuLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc2RsX3NlcSAqYXJncywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNkbF9zZXEgKmtleXdvcmRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByX3R5IHN0YXJhcmdzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByX3R5IGt3YXJncyk7CitzdGF0aWMgaW50IGNvbXBpbGVyX3RyeV9leGNlcHQoc3RydWN0IGNvbXBpbGVyICosIHN0bXRfdHkpOwogCiBzdGF0aWMgUHlDb2RlT2JqZWN0ICphc3NlbWJsZShzdHJ1Y3QgY29tcGlsZXIgKiwgaW50IGFkZE5vbmUpOwogc3RhdGljIFB5T2JqZWN0ICpfX2RvY19fOwpAQCAtMTk1LDE2ICsyMDcsMTcgQEAKIHsKICAgICAvKiBOYW1lIG1hbmdsaW5nOiBfX3ByaXZhdGUgYmVjb21lcyBfY2xhc3NuYW1lX19wcml2YXRlLgogICAgICAgIFRoaXMgaXMgaW5kZXBlbmRlbnQgZnJvbSBob3cgdGhlIG5hbWUgaXMgdXNlZC4gKi8KLSAgICBjb25zdCBQeV9VTklDT0RFICpwLCAqbmFtZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKGlkZW50KTsKLSAgICBQeV9VTklDT0RFICpidWZmZXI7Ci0gICAgc2l6ZV90IG5sZW4sIHBsZW47CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBzaXplX3QgbmxlbiwgcGxlbiwgaXByaXY7CisgICAgUHlfVUNTNCBtYXhjaGFyOwogICAgIGlmIChwcml2YXRlb2JqID09IE5VTEwgfHwgIVB5VW5pY29kZV9DaGVjayhwcml2YXRlb2JqKSB8fAotICAgICAgICBuYW1lID09IE5VTEwgfHwgbmFtZVswXSAhPSAnXycgfHwgbmFtZVsxXSAhPSAnXycpIHsKKyAgICAgICAgUHlVbmljb2RlX1JFQURfQ0hBUihpZGVudCwgMCkgIT0gJ18nIHx8CisgICAgICAgIFB5VW5pY29kZV9SRUFEX0NIQVIoaWRlbnQsIDEpICE9ICdfJykgewogICAgICAgICBQeV9JTkNSRUYoaWRlbnQpOwogICAgICAgICByZXR1cm4gaWRlbnQ7CiAgICAgfQotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShwcml2YXRlb2JqKTsKLSAgICBubGVuID0gUHlfVU5JQ09ERV9zdHJsZW4obmFtZSk7CisgICAgbmxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGlkZW50KTsKKyAgICBwbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocHJpdmF0ZW9iaik7CiAgICAgLyogRG9uJ3QgbWFuZ2xlIF9faWRfXyBvciBuYW1lcyB3aXRoIGRvdHMuCiAKICAgICAgICBUaGUgb25seSB0aW1lIGEgbmFtZSB3aXRoIGEgZG90IGNhbiBvY2N1ciBpcyB3aGVuCkBAIC0yMTQsMzIgKzIyNyw0MyBAQAogICAgICAgIFRPRE8oamh5bHRvbik6IERlY2lkZSB3aGV0aGVyIHdlIHdhbnQgdG8gc3VwcG9ydAogICAgICAgIG1hbmdsaW5nIG9mIHRoZSBtb2R1bGUgbmFtZSwgZS5nLiBfX00uWC4KICAgICAqLwotICAgIGlmICgobmFtZVtubGVuLTFdID09ICdfJyAmJiBuYW1lW25sZW4tMl0gPT0gJ18nKQotICAgICAgICB8fCBQeV9VTklDT0RFX3N0cmNocihuYW1lLCAnLicpKSB7CisgICAgaWYgKChQeVVuaWNvZGVfUkVBRF9DSEFSKGlkZW50LCBubGVuLTEpID09ICdfJyAmJgorICAgICAgICAgUHlVbmljb2RlX1JFQURfQ0hBUihpZGVudCwgbmxlbi0yKSA9PSAnXycpIHx8CisgICAgICAgIFB5VW5pY29kZV9GaW5kQ2hhcihpZGVudCwgJy4nLCAwLCBubGVuLCAxKSAhPSAtMSkgewogICAgICAgICBQeV9JTkNSRUYoaWRlbnQpOwogICAgICAgICByZXR1cm4gaWRlbnQ7IC8qIERvbid0IG1hbmdsZSBfX3doYXRldmVyX18gKi8KICAgICB9CiAgICAgLyogU3RyaXAgbGVhZGluZyB1bmRlcnNjb3JlcyBmcm9tIGNsYXNzIG5hbWUgKi8KLSAgICB3aGlsZSAoKnAgPT0gJ18nKQotICAgICAgICBwKys7Ci0gICAgaWYgKCpwID09IDApIHsKKyAgICBpcHJpdiA9IDA7CisgICAgd2hpbGUgKFB5VW5pY29kZV9SRUFEX0NIQVIocHJpdmF0ZW9iaiwgaXByaXYpID09ICdfJykKKyAgICAgICAgaXByaXYrKzsKKyAgICBpZiAoaXByaXYgPT0gcGxlbikgewogICAgICAgICBQeV9JTkNSRUYoaWRlbnQpOwogICAgICAgICByZXR1cm4gaWRlbnQ7IC8qIERvbid0IG1hbmdsZSBpZiBjbGFzcyBpcyBqdXN0IHVuZGVyc2NvcmVzICovCiAgICAgfQotICAgIHBsZW4gPSBQeV9VTklDT0RFX3N0cmxlbihwKTsKKyAgICBwbGVuIC09IGlwcml2OwogCiAgICAgYXNzZXJ0KDEgPD0gUFlfU1NJWkVfVF9NQVggLSBubGVuKTsKICAgICBhc3NlcnQoMSArIG5sZW4gPD0gUFlfU1NJWkVfVF9NQVggLSBwbGVuKTsKIAotICAgIGlkZW50ID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDEgKyBubGVuICsgcGxlbik7Ci0gICAgaWYgKCFpZGVudCkKKyAgICBtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKGlkZW50KTsKKyAgICBpZiAoUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHByaXZhdGVvYmopID4gbWF4Y2hhcikKKyAgICAgICAgbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShwcml2YXRlb2JqKTsKKworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9OZXcoMSArIG5sZW4gKyBwbGVuLCBtYXhjaGFyKTsKKyAgICBpZiAoIXJlc3VsdCkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgLyogaWRlbnQgPSAiXyIgKyBwWzpwbGVuXSArIG5hbWUgIyBpLmUuIDErcGxlbitubGVuIGJ5dGVzICovCi0gICAgYnVmZmVyID0gUHlVbmljb2RlX0FTX1VOSUNPREUoaWRlbnQpOwotICAgIGJ1ZmZlclswXSA9ICdfJzsKLSAgICBQeV9VTklDT0RFX3N0cm5jcHkoYnVmZmVyKzEsIHAsIHBsZW4pOwotICAgIFB5X1VOSUNPREVfc3RyY3B5KGJ1ZmZlcisxK3BsZW4sIG5hbWUpOwotICAgIHJldHVybiBpZGVudDsKKyAgICAvKiBpZGVudCA9ICJfIiArIHByaXZbaXByaXY6XSArIGlkZW50ICMgaS5lLiAxK3BsZW4rbmxlbiBieXRlcyAqLworICAgIFB5VW5pY29kZV9XUklURShQeVVuaWNvZGVfS0lORChyZXN1bHQpLCBQeVVuaWNvZGVfREFUQShyZXN1bHQpLCAwLCAnXycpOworICAgIGlmIChQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMocmVzdWx0LCAxLCBwcml2YXRlb2JqLCBpcHJpdiwgcGxlbikgPCAwKSB7CisgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyhyZXN1bHQsIHBsZW4rMSwgaWRlbnQsIDAsIG5sZW4pIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIHN0YXRpYyBpbnQKQEAgLTI3Miw2ICsyOTYsOSBAQAogICAgIGlmICghY29tcGlsZXJfaW5pdCgmYykpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGMuY19maWxlbmFtZSA9IGZpbGVuYW1lOworICAgIGMuY19maWxlbmFtZV9vYmogPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGZpbGVuYW1lKTsKKyAgICBpZiAoIWMuY19maWxlbmFtZV9vYmopCisgICAgICAgIGdvdG8gZmluYWxseTsKICAgICBjLmNfYXJlbmEgPSBhcmVuYTsKICAgICBjLmNfZnV0dXJlID0gUHlGdXR1cmVfRnJvbUFTVChtb2QsIGZpbGVuYW1lKTsKICAgICBpZiAoYy5jX2Z1dHVyZSA9PSBOVUxMKQpAQCAtMzI0LDYgKzM1MSw4IEBACiAgICAgICAgIFB5U3ltdGFibGVfRnJlZShjLT5jX3N0KTsKICAgICBpZiAoYy0+Y19mdXR1cmUpCiAgICAgICAgIFB5T2JqZWN0X0ZyZWUoYy0+Y19mdXR1cmUpOworICAgIGlmIChjLT5jX2ZpbGVuYW1lX29iaikKKyAgICAgICAgUHlfREVDUkVGKGMtPmNfZmlsZW5hbWVfb2JqKTsKICAgICBQeV9ERUNSRUYoYy0+Y19zdGFjayk7CiB9CiAKQEAgLTQzOCw2ICs0NjcsNyBAQAogICAgIH0KICAgICBQeV9DTEVBUih1LT51X3N0ZSk7CiAgICAgUHlfQ0xFQVIodS0+dV9uYW1lKTsKKyAgICBQeV9DTEVBUih1LT51X3F1YWxuYW1lKTsKICAgICBQeV9DTEVBUih1LT51X2NvbnN0cyk7CiAgICAgUHlfQ0xFQVIodS0+dV9uYW1lcyk7CiAgICAgUHlfQ0xFQVIodS0+dV92YXJuYW1lcyk7CkBAIC00NDgsOCArNDc4LDggQEAKIH0KIAogc3RhdGljIGludAotY29tcGlsZXJfZW50ZXJfc2NvcGUoc3RydWN0IGNvbXBpbGVyICpjLCBpZGVudGlmaWVyIG5hbWUsIHZvaWQgKmtleSwKLSAgICAgICAgICAgICAgICAgICAgIGludCBsaW5lbm8pCitjb21waWxlcl9lbnRlcl9zY29wZShzdHJ1Y3QgY29tcGlsZXIgKmMsIGlkZW50aWZpZXIgbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgIGludCBzY29wZV90eXBlLCB2b2lkICprZXksIGludCBsaW5lbm8pCiB7CiAgICAgc3RydWN0IGNvbXBpbGVyX3VuaXQgKnU7CiAKQEAgLTQ2MCw2ICs0OTAsNyBAQAogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAgICAgbWVtc2V0KHUsIDAsIHNpemVvZihzdHJ1Y3QgY29tcGlsZXJfdW5pdCkpOworICAgIHUtPnVfc2NvcGVfdHlwZSA9IHNjb3BlX3R5cGU7CiAgICAgdS0+dV9hcmdjb3VudCA9IDA7CiAgICAgdS0+dV9rd29ubHlhcmdjb3VudCA9IDA7CiAgICAgdS0+dV9zdGUgPSBQeVN5bXRhYmxlX0xvb2t1cChjLT5jX3N0LCBrZXkpOwpAQCAtNTQ3LDYgKzU3OCw1OSBAQAogCiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCitjb21waWxlcl9zY29wZV9xdWFsbmFtZShzdHJ1Y3QgY29tcGlsZXIgKmMpCit7CisgICAgUHlfc3NpemVfdCBzdGFja19zaXplLCBpOworICAgIF9QeV9zdGF0aWNfc3RyaW5nKGRvdCwgIi4iKTsKKyAgICBfUHlfc3RhdGljX3N0cmluZyhsb2NhbHMsICI8bG9jYWxzPiIpOworICAgIHN0cnVjdCBjb21waWxlcl91bml0ICp1OworICAgIFB5T2JqZWN0ICpjYXBzdWxlLCAqbmFtZSwgKnNlcSwgKmRvdF9zdHIsICpsb2NhbHNfc3RyOworCisgICAgdSA9IGMtPnU7CisgICAgaWYgKHUtPnVfcXVhbG5hbWUgIT0gTlVMTCkgeworICAgICAgICBQeV9JTkNSRUYodS0+dV9xdWFsbmFtZSk7CisgICAgICAgIHJldHVybiB1LT51X3F1YWxuYW1lOworICAgIH0KKworICAgIHNlcSA9IFB5TGlzdF9OZXcoMCk7CisgICAgaWYgKHNlcSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHN0YWNrX3NpemUgPSBQeUxpc3RfR0VUX1NJWkUoYy0+Y19zdGFjayk7CisgICAgZm9yIChpID0gMDsgaSA8IHN0YWNrX3NpemU7IGkrKykgeworICAgICAgICBjYXBzdWxlID0gUHlMaXN0X0dFVF9JVEVNKGMtPmNfc3RhY2ssIGkpOworICAgICAgICB1ID0gKHN0cnVjdCBjb21waWxlcl91bml0ICopUHlDYXBzdWxlX0dldFBvaW50ZXIoY2Fwc3VsZSwgQ09NUElMRVJfQ0FQU1VMRV9OQU1FX0NPTVBJTEVSX1VOSVQpOworICAgICAgICBhc3NlcnQodSk7CisgICAgICAgIGlmICh1LT51X3Njb3BlX3R5cGUgPT0gQ09NUElMRVJfU0NPUEVfTU9EVUxFKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIGlmIChQeUxpc3RfQXBwZW5kKHNlcSwgdS0+dV9uYW1lKSkKKyAgICAgICAgICAgIGdvdG8gX2Vycm9yOworICAgICAgICBpZiAodS0+dV9zY29wZV90eXBlID09IENPTVBJTEVSX1NDT1BFX0ZVTkNUSU9OKSB7CisgICAgICAgICAgICBsb2NhbHNfc3RyID0gX1B5VW5pY29kZV9Gcm9tSWQoJmxvY2Fscyk7CisgICAgICAgICAgICBpZiAobG9jYWxzX3N0ciA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGdvdG8gX2Vycm9yOworICAgICAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQoc2VxLCBsb2NhbHNfc3RyKSkKKyAgICAgICAgICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICAgICAgfQorICAgIH0KKyAgICB1ID0gYy0+dTsKKyAgICBpZiAoUHlMaXN0X0FwcGVuZChzZXEsIHUtPnVfbmFtZSkpCisgICAgICAgIGdvdG8gX2Vycm9yOworICAgIGRvdF9zdHIgPSBfUHlVbmljb2RlX0Zyb21JZCgmZG90KTsKKyAgICBpZiAoZG90X3N0ciA9PSBOVUxMKQorICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICBuYW1lID0gUHlVbmljb2RlX0pvaW4oZG90X3N0ciwgc2VxKTsKKyAgICBQeV9ERUNSRUYoc2VxKTsKKyAgICB1LT51X3F1YWxuYW1lID0gbmFtZTsKKyAgICBQeV9YSU5DUkVGKG5hbWUpOworICAgIHJldHVybiBuYW1lOworCitfZXJyb3I6CisgICAgUHlfWERFQ1JFRihzZXEpOworICAgIHJldHVybiBOVUxMOworfQorCiAvKiBBbGxvY2F0ZSBhIG5ldyBibG9jayBhbmQgcmV0dXJuIGEgcG9pbnRlciB0byBpdC4KICAgIFJldHVybnMgTlVMTCBvbiBlcnJvci4KICovCkBAIC03NTYsNiArODQwLDcgQEAKICAgICAgICAgY2FzZSBJTVBPUlRfU1RBUjoKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgY2FzZSBZSUVMRF9WQUxVRToKKyAgICAgICAgY2FzZSBZSUVMRF9GUk9NOgogICAgICAgICAgICAgcmV0dXJuIDA7CiAKICAgICAgICAgY2FzZSBQT1BfQkxPQ0s6CkBAIC04NDMsOSArOTI4LDkgQEAKICAgICAgICAgY2FzZSBDQUxMX0ZVTkNUSU9OX1ZBUl9LVzoKICAgICAgICAgICAgIHJldHVybiAtTkFSR1Mob3BhcmcpLTI7CiAgICAgICAgIGNhc2UgTUFLRV9GVU5DVElPTjoKLSAgICAgICAgICAgIHJldHVybiAtTkFSR1Mob3BhcmcpIC0gKChvcGFyZyA+PiAxNikgJiAweGZmZmYpOworICAgICAgICAgICAgcmV0dXJuIC0xIC1OQVJHUyhvcGFyZykgLSAoKG9wYXJnID4+IDE2KSAmIDB4ZmZmZik7CiAgICAgICAgIGNhc2UgTUFLRV9DTE9TVVJFOgotICAgICAgICAgICAgcmV0dXJuIC0xIC0gTkFSR1Mob3BhcmcpIC0gKChvcGFyZyA+PiAxNikgJiAweGZmZmYpOworICAgICAgICAgICAgcmV0dXJuIC0yIC0gTkFSR1Mob3BhcmcpIC0gKChvcGFyZyA+PiAxNikgJiAweGZmZmYpOwogI3VuZGVmIE5BUkdTCiAgICAgICAgIGNhc2UgQlVJTERfU0xJQ0U6CiAgICAgICAgICAgICBpZiAob3BhcmcgPT0gMykKQEAgLTExNzUsNyArMTI2MCw3IEBACiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgLyogVXNlIDAgZm9yIGZpcnN0bGluZW5vIGluaXRpYWxseSwgd2lsbCBmaXh1cCBpbiBhc3NlbWJsZSgpLiAqLwotICAgIGlmICghY29tcGlsZXJfZW50ZXJfc2NvcGUoYywgbW9kdWxlLCBtb2QsIDApKQorICAgIGlmICghY29tcGlsZXJfZW50ZXJfc2NvcGUoYywgbW9kdWxlLCBDT01QSUxFUl9TQ09QRV9NT0RVTEUsIG1vZCwgMCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHN3aXRjaCAobW9kLT5raW5kKSB7CiAgICAgY2FzZSBNb2R1bGVfa2luZDoKQEAgLTEyNTEsMTEgKzEzMzYsMTUgQEAKIH0KIAogc3RhdGljIGludAotY29tcGlsZXJfbWFrZV9jbG9zdXJlKHN0cnVjdCBjb21waWxlciAqYywgUHlDb2RlT2JqZWN0ICpjbywgaW50IGFyZ3MpCitjb21waWxlcl9tYWtlX2Nsb3N1cmUoc3RydWN0IGNvbXBpbGVyICpjLCBQeUNvZGVPYmplY3QgKmNvLCBpbnQgYXJncywgUHlPYmplY3QgKnF1YWxuYW1lKQogewogICAgIGludCBpLCBmcmVlID0gUHlDb2RlX0dldE51bUZyZWUoY28pOworICAgIGlmIChxdWFsbmFtZSA9PSBOVUxMKQorICAgICAgICBxdWFsbmFtZSA9IGNvLT5jb19uYW1lOworCiAgICAgaWYgKGZyZWUgPT0gMCkgewogICAgICAgICBBRERPUF9PKGMsIExPQURfQ09OU1QsIChQeU9iamVjdCopY28sIGNvbnN0cyk7CisgICAgICAgIEFERE9QX08oYywgTE9BRF9DT05TVCwgcXVhbG5hbWUsIGNvbnN0cyk7CiAgICAgICAgIEFERE9QX0koYywgTUFLRV9GVU5DVElPTiwgYXJncyk7CiAgICAgICAgIHJldHVybiAxOwogICAgIH0KQEAgLTEyOTIsNiArMTM4MSw3IEBACiAgICAgfQogICAgIEFERE9QX0koYywgQlVJTERfVFVQTEUsIGZyZWUpOwogICAgIEFERE9QX08oYywgTE9BRF9DT05TVCwgKFB5T2JqZWN0KiljbywgY29uc3RzKTsKKyAgICBBRERPUF9PKGMsIExPQURfQ09OU1QsIHF1YWxuYW1lLCBjb25zdHMpOwogICAgIEFERE9QX0koYywgTUFLRV9DTE9TVVJFLCBhcmdzKTsKICAgICByZXR1cm4gMTsKIH0KQEAgLTE0MzMsNyArMTUyMyw3IEBACiBjb21waWxlcl9mdW5jdGlvbihzdHJ1Y3QgY29tcGlsZXIgKmMsIHN0bXRfdHkgcykKIHsKICAgICBQeUNvZGVPYmplY3QgKmNvOwotICAgIFB5T2JqZWN0ICpmaXJzdF9jb25zdCA9IFB5X05vbmU7CisgICAgUHlPYmplY3QgKnF1YWxuYW1lLCAqZmlyc3RfY29uc3QgPSBQeV9Ob25lOwogICAgIGFyZ3VtZW50c190eSBhcmdzID0gcy0+di5GdW5jdGlvbkRlZi5hcmdzOwogICAgIGV4cHJfdHkgcmV0dXJucyA9IHMtPnYuRnVuY3Rpb25EZWYucmV0dXJuczsKICAgICBhc2RsX3NlcSogZGVjb3MgPSBzLT52LkZ1bmN0aW9uRGVmLmRlY29yYXRvcl9saXN0OwpAQCAtMTQ1OSw3ICsxNTQ5LDggQEAKICAgICAgICAgcmV0dXJuIDA7CiAgICAgYXNzZXJ0KChudW1fYW5ub3RhdGlvbnMgJiAweEZGRkYpID09IG51bV9hbm5vdGF0aW9ucyk7CiAKLSAgICBpZiAoIWNvbXBpbGVyX2VudGVyX3Njb3BlKGMsIHMtPnYuRnVuY3Rpb25EZWYubmFtZSwgKHZvaWQgKilzLAorICAgIGlmICghY29tcGlsZXJfZW50ZXJfc2NvcGUoYywgcy0+di5GdW5jdGlvbkRlZi5uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ09NUElMRVJfU0NPUEVfRlVOQ1RJT04sICh2b2lkICopcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMtPmxpbmVubykpCiAgICAgICAgIHJldHVybiAwOwogCkBAIC0xNDgxLDE0ICsxNTcyLDE5IEBACiAgICAgICAgIFZJU0lUX0lOX1NDT1BFKGMsIHN0bXQsIHN0KTsKICAgICB9CiAgICAgY28gPSBhc3NlbWJsZShjLCAxKTsKKyAgICBxdWFsbmFtZSA9IGNvbXBpbGVyX3Njb3BlX3F1YWxuYW1lKGMpOwogICAgIGNvbXBpbGVyX2V4aXRfc2NvcGUoYyk7Ci0gICAgaWYgKGNvID09IE5VTEwpCisgICAgaWYgKHF1YWxuYW1lID09IE5VTEwgfHwgY28gPT0gTlVMTCkgeworICAgICAgICBQeV9YREVDUkVGKHF1YWxuYW1lKTsKKyAgICAgICAgUHlfWERFQ1JFRihjbyk7CiAgICAgICAgIHJldHVybiAwOworICAgIH0KIAogICAgIGFyZ2xlbmd0aCA9IGFzZGxfc2VxX0xFTihhcmdzLT5kZWZhdWx0cyk7CiAgICAgYXJnbGVuZ3RoIHw9IGt3X2RlZmF1bHRfY291bnQgPDwgODsKICAgICBhcmdsZW5ndGggfD0gbnVtX2Fubm90YXRpb25zIDw8IDE2OwotICAgIGNvbXBpbGVyX21ha2VfY2xvc3VyZShjLCBjbywgYXJnbGVuZ3RoKTsKKyAgICBjb21waWxlcl9tYWtlX2Nsb3N1cmUoYywgY28sIGFyZ2xlbmd0aCwgcXVhbG5hbWUpOworICAgIFB5X0RFQ1JFRihxdWFsbmFtZSk7CiAgICAgUHlfREVDUkVGKGNvKTsKIAogICAgIC8qIGRlY29yYXRvcnMgKi8KQEAgLTE1MjMsNyArMTYxOSw4IEBACiAgICAgKi8KIAogICAgIC8qIDEuIGNvbXBpbGUgdGhlIGNsYXNzIGJvZHkgaW50byBhIGNvZGUgb2JqZWN0ICovCi0gICAgaWYgKCFjb21waWxlcl9lbnRlcl9zY29wZShjLCBzLT52LkNsYXNzRGVmLm5hbWUsICh2b2lkICopcywgcy0+bGluZW5vKSkKKyAgICBpZiAoIWNvbXBpbGVyX2VudGVyX3Njb3BlKGMsIHMtPnYuQ2xhc3NEZWYubmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENPTVBJTEVSX1NDT1BFX0NMQVNTLCAodm9pZCAqKXMsIHMtPmxpbmVubykpCiAgICAgICAgIHJldHVybiAwOwogICAgIC8qIHRoaXMgYmxvY2sgcmVwcmVzZW50cyB3aGF0IHdlIGRvIGluIHRoZSBuZXcgc2NvcGUgKi8KICAgICB7CkBAIC0xNTUzLDEzICsxNjUwLDI4IEBACiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQogICAgICAgICBQeV9ERUNSRUYoc3RyKTsKKyAgICAgICAgLyogc3RvcmUgdGhlIF9fcXVhbG5hbWVfXyAqLworICAgICAgICBzdHIgPSBjb21waWxlcl9zY29wZV9xdWFsbmFtZShjKTsKKyAgICAgICAgaWYgKCFzdHIpIHsKKyAgICAgICAgICAgIGNvbXBpbGVyX2V4aXRfc2NvcGUoYyk7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICBBRERPUF9PKGMsIExPQURfQ09OU1QsIHN0ciwgY29uc3RzKTsKKyAgICAgICAgUHlfREVDUkVGKHN0cik7CisgICAgICAgIHN0ciA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX3F1YWxuYW1lX18iKTsKKyAgICAgICAgaWYgKCFzdHIgfHwgIWNvbXBpbGVyX25hbWVvcChjLCBzdHIsIFN0b3JlKSkgeworICAgICAgICAgICAgUHlfWERFQ1JFRihzdHIpOworICAgICAgICAgICAgY29tcGlsZXJfZXhpdF9zY29wZShjKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRihzdHIpOwogICAgICAgICAvKiBjb21waWxlIHRoZSBib2R5IHByb3BlciAqLwogICAgICAgICBpZiAoIWNvbXBpbGVyX2JvZHkoYywgcy0+di5DbGFzc0RlZi5ib2R5KSkgewogICAgICAgICAgICAgY29tcGlsZXJfZXhpdF9zY29wZShjKTsKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9CiAgICAgICAgIC8qIHJldHVybiB0aGUgKGVtcHR5KSBfX2NsYXNzX18gY2VsbCAqLwotICAgICAgICBzdHIgPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiX19jbGFzc19fIik7CisgICAgICAgIHN0ciA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJAX19jbGFzc19fIik7CiAgICAgICAgIGlmIChzdHIgPT0gTlVMTCkgewogICAgICAgICAgICAgY29tcGlsZXJfZXhpdF9zY29wZShjKTsKICAgICAgICAgICAgIHJldHVybiAwOwpAQCAtMTU4OSw3ICsxNzAxLDcgQEAKICAgICBBRERPUChjLCBMT0FEX0JVSUxEX0NMQVNTKTsKIAogICAgIC8qIDMuIGxvYWQgYSBmdW5jdGlvbiAob3IgY2xvc3VyZSkgbWFkZSBmcm9tIHRoZSBjb2RlIG9iamVjdCAqLwotICAgIGNvbXBpbGVyX21ha2VfY2xvc3VyZShjLCBjbywgMCk7CisgICAgY29tcGlsZXJfbWFrZV9jbG9zdXJlKGMsIGNvLCAwLCBOVUxMKTsKICAgICBQeV9ERUNSRUYoY28pOwogCiAgICAgLyogNC4gbG9hZCBjbGFzcyBuYW1lICovCkBAIC0xNjQwLDYgKzE3NTIsNyBAQAogY29tcGlsZXJfbGFtYmRhKHN0cnVjdCBjb21waWxlciAqYywgZXhwcl90eSBlKQogewogICAgIFB5Q29kZU9iamVjdCAqY287CisgICAgUHlPYmplY3QgKnF1YWxuYW1lOwogICAgIHN0YXRpYyBpZGVudGlmaWVyIG5hbWU7CiAgICAgaW50IGt3X2RlZmF1bHRfY291bnQgPSAwLCBhcmdsZW5ndGg7CiAgICAgYXJndW1lbnRzX3R5IGFyZ3MgPSBlLT52LkxhbWJkYS5hcmdzOwpAQCAtMTY1OSw3ICsxNzcyLDggQEAKICAgICB9CiAgICAgaWYgKGFyZ3MtPmRlZmF1bHRzKQogICAgICAgICBWSVNJVF9TRVEoYywgZXhwciwgYXJncy0+ZGVmYXVsdHMpOwotICAgIGlmICghY29tcGlsZXJfZW50ZXJfc2NvcGUoYywgbmFtZSwgKHZvaWQgKillLCBlLT5saW5lbm8pKQorICAgIGlmICghY29tcGlsZXJfZW50ZXJfc2NvcGUoYywgbmFtZSwgQ09NUElMRVJfU0NPUEVfRlVOQ1RJT04sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodm9pZCAqKWUsIGUtPmxpbmVubykpCiAgICAgICAgIHJldHVybiAwOwogCiAgICAgLyogTWFrZSBOb25lIHRoZSBmaXJzdCBjb25zdGFudCwgc28gdGhlIGxhbWJkYSBjYW4ndCBoYXZlIGEKQEAgLTE2NzcsMTMgKzE3OTEsMTUgQEAKICAgICAgICAgQURET1BfSU5fU0NPUEUoYywgUkVUVVJOX1ZBTFVFKTsKICAgICB9CiAgICAgY28gPSBhc3NlbWJsZShjLCAxKTsKKyAgICBxdWFsbmFtZSA9IGNvbXBpbGVyX3Njb3BlX3F1YWxuYW1lKGMpOwogICAgIGNvbXBpbGVyX2V4aXRfc2NvcGUoYyk7Ci0gICAgaWYgKGNvID09IE5VTEwpCisgICAgaWYgKHF1YWxuYW1lID09IE5VTEwgfHwgY28gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICBhcmdsZW5ndGggPSBhc2RsX3NlcV9MRU4oYXJncy0+ZGVmYXVsdHMpOwogICAgIGFyZ2xlbmd0aCB8PSBrd19kZWZhdWx0X2NvdW50IDw8IDg7Ci0gICAgY29tcGlsZXJfbWFrZV9jbG9zdXJlKGMsIGNvLCBhcmdsZW5ndGgpOworICAgIGNvbXBpbGVyX21ha2VfY2xvc3VyZShjLCBjbywgYXJnbGVuZ3RoLCBxdWFsbmFtZSk7CisgICAgUHlfREVDUkVGKHF1YWxuYW1lKTsKICAgICBQeV9ERUNSRUYoY28pOwogCiAgICAgcmV0dXJuIDE7CkBAIC0xODkyLDcgKzIwMDgsMTMgQEAKICAgICBjb21waWxlcl91c2VfbmV4dF9ibG9jayhjLCBib2R5KTsKICAgICBpZiAoIWNvbXBpbGVyX3B1c2hfZmJsb2NrKGMsIEZJTkFMTFlfVFJZLCBib2R5KSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgVklTSVRfU0VRKGMsIHN0bXQsIHMtPnYuVHJ5RmluYWxseS5ib2R5KTsKKyAgICBpZiAocy0+di5UcnkuaGFuZGxlcnMgJiYgYXNkbF9zZXFfTEVOKHMtPnYuVHJ5LmhhbmRsZXJzKSkgeworICAgICAgICBpZiAoIWNvbXBpbGVyX3RyeV9leGNlcHQoYywgcykpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFZJU0lUX1NFUShjLCBzdG10LCBzLT52LlRyeS5ib2R5KTsKKyAgICB9CiAgICAgQURET1AoYywgUE9QX0JMT0NLKTsKICAgICBjb21waWxlcl9wb3BfZmJsb2NrKGMsIEZJTkFMTFlfVFJZLCBib2R5KTsKIApAQCAtMTkwMCw3ICsyMDIyLDcgQEAKICAgICBjb21waWxlcl91c2VfbmV4dF9ibG9jayhjLCBlbmQpOwogICAgIGlmICghY29tcGlsZXJfcHVzaF9mYmxvY2soYywgRklOQUxMWV9FTkQsIGVuZCkpCiAgICAgICAgIHJldHVybiAwOwotICAgIFZJU0lUX1NFUShjLCBzdG10LCBzLT52LlRyeUZpbmFsbHkuZmluYWxib2R5KTsKKyAgICBWSVNJVF9TRVEoYywgc3RtdCwgcy0+di5UcnkuZmluYWxib2R5KTsKICAgICBBRERPUChjLCBFTkRfRklOQUxMWSk7CiAgICAgY29tcGlsZXJfcG9wX2ZibG9jayhjLCBGSU5BTExZX0VORCwgZW5kKTsKIApAQCAtMTk1NCwxNSArMjA3NiwxNSBAQAogICAgIGNvbXBpbGVyX3VzZV9uZXh0X2Jsb2NrKGMsIGJvZHkpOwogICAgIGlmICghY29tcGlsZXJfcHVzaF9mYmxvY2soYywgRVhDRVBULCBib2R5KSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgVklTSVRfU0VRKGMsIHN0bXQsIHMtPnYuVHJ5RXhjZXB0LmJvZHkpOworICAgIFZJU0lUX1NFUShjLCBzdG10LCBzLT52LlRyeS5ib2R5KTsKICAgICBBRERPUChjLCBQT1BfQkxPQ0spOwogICAgIGNvbXBpbGVyX3BvcF9mYmxvY2soYywgRVhDRVBULCBib2R5KTsKICAgICBBRERPUF9KUkVMKGMsIEpVTVBfRk9SV0FSRCwgb3JlbHNlKTsKLSAgICBuID0gYXNkbF9zZXFfTEVOKHMtPnYuVHJ5RXhjZXB0LmhhbmRsZXJzKTsKKyAgICBuID0gYXNkbF9zZXFfTEVOKHMtPnYuVHJ5LmhhbmRsZXJzKTsKICAgICBjb21waWxlcl91c2VfbmV4dF9ibG9jayhjLCBleGNlcHQpOwogICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspIHsKICAgICAgICAgZXhjZXB0aGFuZGxlcl90eSBoYW5kbGVyID0gKGV4Y2VwdGhhbmRsZXJfdHkpYXNkbF9zZXFfR0VUKAotICAgICAgICAgICAgcy0+di5UcnlFeGNlcHQuaGFuZGxlcnMsIGkpOworICAgICAgICAgICAgcy0+di5UcnkuaGFuZGxlcnMsIGkpOwogICAgICAgICBpZiAoIWhhbmRsZXItPnYuRXhjZXB0SGFuZGxlci50eXBlICYmIGkgPCBuLTEpCiAgICAgICAgICAgICByZXR1cm4gY29tcGlsZXJfZXJyb3IoYywgImRlZmF1bHQgJ2V4Y2VwdDonIG11c3QgYmUgbGFzdCIpOwogICAgICAgICBjLT51LT51X2xpbmVub19zZXQgPSAwOwpAQCAtMjA0OSwxMiArMjE3MSwyMSBAQAogICAgIH0KICAgICBBRERPUChjLCBFTkRfRklOQUxMWSk7CiAgICAgY29tcGlsZXJfdXNlX25leHRfYmxvY2soYywgb3JlbHNlKTsKLSAgICBWSVNJVF9TRVEoYywgc3RtdCwgcy0+di5UcnlFeGNlcHQub3JlbHNlKTsKKyAgICBWSVNJVF9TRVEoYywgc3RtdCwgcy0+di5Ucnkub3JlbHNlKTsKICAgICBjb21waWxlcl91c2VfbmV4dF9ibG9jayhjLCBlbmQpOwogICAgIHJldHVybiAxOwogfQogCiBzdGF0aWMgaW50Citjb21waWxlcl90cnkoc3RydWN0IGNvbXBpbGVyICpjLCBzdG10X3R5IHMpIHsKKyAgICBpZiAocy0+di5UcnkuZmluYWxib2R5ICYmIGFzZGxfc2VxX0xFTihzLT52LlRyeS5maW5hbGJvZHkpKQorICAgICAgICByZXR1cm4gY29tcGlsZXJfdHJ5X2ZpbmFsbHkoYywgcyk7CisgICAgZWxzZQorICAgICAgICByZXR1cm4gY29tcGlsZXJfdHJ5X2V4Y2VwdChjLCBzKTsKK30KKworCitzdGF0aWMgaW50CiBjb21waWxlcl9pbXBvcnRfYXMoc3RydWN0IGNvbXBpbGVyICpjLCBpZGVudGlmaWVyIG5hbWUsIGlkZW50aWZpZXIgYXNuYW1lKQogewogICAgIC8qIFRoZSBJTVBPUlRfTkFNRSBvcGNvZGUgd2FzIGFscmVhZHkgZ2VuZXJhdGVkLiAgVGhpcyBmdW5jdGlvbgpAQCAtMjA2MywyMiArMjE5NCwyNyBAQAogICAgICAgIElmIHRoZXJlIGlzIGEgZG90IGluIG5hbWUsIHdlIG5lZWQgdG8gc3BsaXQgaXQgYW5kIGVtaXQgYQogICAgICAgIExPQURfQVRUUiBmb3IgZWFjaCBuYW1lLgogICAgICovCi0gICAgY29uc3QgUHlfVU5JQ09ERSAqc3JjID0gUHlVbmljb2RlX0FTX1VOSUNPREUobmFtZSk7Ci0gICAgY29uc3QgUHlfVU5JQ09ERSAqZG90ID0gUHlfVU5JQ09ERV9zdHJjaHIoc3JjLCAnLicpOwotICAgIGlmIChkb3QpIHsKKyAgICBQeV9zc2l6ZV90IGRvdCA9IFB5VW5pY29kZV9GaW5kQ2hhcihuYW1lLCAnLicsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgobmFtZSksIDEpOworICAgIGlmIChkb3QgPT0gLTIpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBpZiAoZG90ICE9IC0xKSB7CiAgICAgICAgIC8qIENvbnN1bWUgdGhlIGJhc2UgbW9kdWxlIG5hbWUgdG8gZ2V0IHRoZSBmaXJzdCBhdHRyaWJ1dGUgKi8KLSAgICAgICAgc3JjID0gZG90ICsgMTsKLSAgICAgICAgd2hpbGUgKGRvdCkgewotICAgICAgICAgICAgLyogTkIgc3JjIGlzIG9ubHkgZGVmaW5lZCB3aGVuIGRvdCAhPSBOVUxMICovCisgICAgICAgIFB5X3NzaXplX3QgcG9zID0gZG90ICsgMTsKKyAgICAgICAgd2hpbGUgKGRvdCAhPSAtMSkgewogICAgICAgICAgICAgUHlPYmplY3QgKmF0dHI7Ci0gICAgICAgICAgICBkb3QgPSBQeV9VTklDT0RFX3N0cmNocihzcmMsICcuJyk7Ci0gICAgICAgICAgICBhdHRyID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHNyYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG90ID8gZG90IC0gc3JjIDogUHlfVU5JQ09ERV9zdHJsZW4oc3JjKSk7CisgICAgICAgICAgICBkb3QgPSBQeVVuaWNvZGVfRmluZENoYXIobmFtZSwgJy4nLCBwb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgobmFtZSksIDEpOworICAgICAgICAgICAgaWYgKGRvdCA9PSAtMikKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgICAgICBhdHRyID0gUHlVbmljb2RlX1N1YnN0cmluZyhuYW1lLCBwb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZG90ICE9IC0xKSA/IGRvdCA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSk7CiAgICAgICAgICAgICBpZiAoIWF0dHIpCiAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAgICAgQURET1BfTyhjLCBMT0FEX0FUVFIsIGF0dHIsIG5hbWVzKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRihhdHRyKTsKLSAgICAgICAgICAgIHNyYyA9IGRvdCArIDE7CisgICAgICAgICAgICBwb3MgPSBkb3QgKyAxOwogICAgICAgICB9CiAgICAgfQogICAgIHJldHVybiBjb21waWxlcl9uYW1lb3AoYywgYXNuYW1lLCBTdG9yZSk7CkBAIC0yMTE3LDEzICsyMjUzLDEyIEBACiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICBpZGVudGlmaWVyIHRtcCA9IGFsaWFzLT5uYW1lOwotICAgICAgICAgICAgY29uc3QgUHlfVU5JQ09ERSAqYmFzZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKGFsaWFzLT5uYW1lKTsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKmRvdCA9IFB5X1VOSUNPREVfc3RyY2hyKGJhc2UsICcuJyk7Ci0gICAgICAgICAgICBpZiAoZG90KQotICAgICAgICAgICAgICAgIHRtcCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShiYXNlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3QgLSBiYXNlKTsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgZG90ID0gUHlVbmljb2RlX0ZpbmRDaGFyKAorICAgICAgICAgICAgICAgIGFsaWFzLT5uYW1lLCAnLicsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKGFsaWFzLT5uYW1lKSwgMSk7CisgICAgICAgICAgICBpZiAoZG90ICE9IC0xKQorICAgICAgICAgICAgICAgIHRtcCA9IFB5VW5pY29kZV9TdWJzdHJpbmcoYWxpYXMtPm5hbWUsIDAsIGRvdCk7CiAgICAgICAgICAgICByID0gY29tcGlsZXJfbmFtZW9wKGMsIHRtcCwgU3RvcmUpOwotICAgICAgICAgICAgaWYgKGRvdCkgeworICAgICAgICAgICAgaWYgKGRvdCAhPSAtMSkgewogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih0bXApOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKCFyKQpAQCAtMjE4Niw3ICsyMzIxLDcgQEAKICAgICAgICAgYWxpYXNfdHkgYWxpYXMgPSAoYWxpYXNfdHkpYXNkbF9zZXFfR0VUKHMtPnYuSW1wb3J0RnJvbS5uYW1lcywgaSk7CiAgICAgICAgIGlkZW50aWZpZXIgc3RvcmVfbmFtZTsKIAotICAgICAgICBpZiAoaSA9PSAwICYmICpQeVVuaWNvZGVfQVNfVU5JQ09ERShhbGlhcy0+bmFtZSkgPT0gJyonKSB7CisgICAgICAgIGlmIChpID09IDAgJiYgUHlVbmljb2RlX1JFQURfQ0hBUihhbGlhcy0+bmFtZSwgMCkgPT0gJyonKSB7CiAgICAgICAgICAgICBhc3NlcnQobiA9PSAxKTsKICAgICAgICAgICAgIEFERE9QKGMsIElNUE9SVF9TVEFSKTsKICAgICAgICAgICAgIHJldHVybiAxOwpAQCAtMjMwMSwxMCArMjQzNiw4IEBACiAgICAgICAgIH0KICAgICAgICAgQURET1BfSShjLCBSQUlTRV9WQVJBUkdTLCBuKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBUcnlFeGNlcHRfa2luZDoKLSAgICAgICAgcmV0dXJuIGNvbXBpbGVyX3RyeV9leGNlcHQoYywgcyk7Ci0gICAgY2FzZSBUcnlGaW5hbGx5X2tpbmQ6Ci0gICAgICAgIHJldHVybiBjb21waWxlcl90cnlfZmluYWxseShjLCBzKTsKKyAgICBjYXNlIFRyeV9raW5kOgorICAgICAgICByZXR1cm4gY29tcGlsZXJfdHJ5KGMsIHMpOwogICAgIGNhc2UgQXNzZXJ0X2tpbmQ6CiAgICAgICAgIHJldHVybiBjb21waWxlcl9hc3NlcnQoYywgcyk7CiAgICAgY2FzZSBJbXBvcnRfa2luZDoKQEAgLTIzMzUsNyArMjQ2OCw3IEBACiAgICAgY2FzZSBDb250aW51ZV9raW5kOgogICAgICAgICByZXR1cm4gY29tcGlsZXJfY29udGludWUoYyk7CiAgICAgY2FzZSBXaXRoX2tpbmQ6Ci0gICAgICAgIHJldHVybiBjb21waWxlcl93aXRoKGMsIHMpOworICAgICAgICByZXR1cm4gY29tcGlsZXJfd2l0aChjLCBzLCAwKTsKICAgICB9CiAgICAgcmV0dXJuIDE7CiB9CkBAIC0yNTAyLDcgKzI2MzUsNyBAQAogICAgIH0KIAogICAgIC8qIFhYWCBMZWF2ZSBhc3NlcnQgaGVyZSwgYnV0IGhhbmRsZSBfX2RvY19fIGFuZCB0aGUgbGlrZSBiZXR0ZXIgKi8KLSAgICBhc3NlcnQoc2NvcGUgfHwgUHlVbmljb2RlX0FTX1VOSUNPREUobmFtZSlbMF0gPT0gJ18nKTsKKyAgICBhc3NlcnQoc2NvcGUgfHwgUHlVbmljb2RlX1JFQURfQ0hBUihuYW1lLCAwKSA9PSAnXycpOwogCiAgICAgc3dpdGNoIChvcHR5cGUpIHsKICAgICBjYXNlIE9QX0RFUkVGOgpAQCAtMjg4MCwxMSArMzAxMywxMyBAQAogewogICAgIFB5Q29kZU9iamVjdCAqY28gPSBOVUxMOwogICAgIGV4cHJfdHkgb3V0ZXJtb3N0X2l0ZXI7CisgICAgUHlPYmplY3QgKnF1YWxuYW1lID0gTlVMTDsKIAogICAgIG91dGVybW9zdF9pdGVyID0gKChjb21wcmVoZW5zaW9uX3R5KQogICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxX0dFVChnZW5lcmF0b3JzLCAwKSktPml0ZXI7CiAKLSAgICBpZiAoIWNvbXBpbGVyX2VudGVyX3Njb3BlKGMsIG5hbWUsICh2b2lkICopZSwgZS0+bGluZW5vKSkKKyAgICBpZiAoIWNvbXBpbGVyX2VudGVyX3Njb3BlKGMsIG5hbWUsIENPTVBJTEVSX1NDT1BFX0NPTVBSRUhFTlNJT04sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodm9pZCAqKWUsIGUtPmxpbmVubykpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICBpZiAodHlwZSAhPSBDT01QX0dFTkVYUCkgewpAQCAtMjkxNywxMiArMzA1MiwxNCBAQAogICAgIH0KIAogICAgIGNvID0gYXNzZW1ibGUoYywgMSk7CisgICAgcXVhbG5hbWUgPSBjb21waWxlcl9zY29wZV9xdWFsbmFtZShjKTsKICAgICBjb21waWxlcl9leGl0X3Njb3BlKGMpOwotICAgIGlmIChjbyA9PSBOVUxMKQorICAgIGlmIChxdWFsbmFtZSA9PSBOVUxMIHx8IGNvID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAKLSAgICBpZiAoIWNvbXBpbGVyX21ha2VfY2xvc3VyZShjLCBjbywgMCkpCisgICAgaWYgKCFjb21waWxlcl9tYWtlX2Nsb3N1cmUoYywgY28sIDAsIHF1YWxuYW1lKSkKICAgICAgICAgZ290byBlcnJvcjsKKyAgICBQeV9ERUNSRUYocXVhbG5hbWUpOwogICAgIFB5X0RFQ1JFRihjbyk7CiAKICAgICBWSVNJVChjLCBleHByLCBvdXRlcm1vc3RfaXRlcik7CkBAIC0yOTMyLDYgKzMwNjksNyBAQAogZXJyb3JfaW5fc2NvcGU6CiAgICAgY29tcGlsZXJfZXhpdF9zY29wZShjKTsKIGVycm9yOgorICAgIFB5X1hERUNSRUYocXVhbG5hbWUpOwogICAgIFB5X1hERUNSRUYoY28pOwogICAgIHJldHVybiAwOwogfQpAQCAtMzAyNSw4ICszMTYzLDcgQEAKICAgICAgICAgcmV0dXJuIFB5T2JqZWN0X0lzVHJ1ZShlLT52LlN0ci5zKTsKICAgICBjYXNlIE5hbWVfa2luZDoKICAgICAgICAgLyogb3B0aW1pemUgYXdheSBuYW1lcyB0aGF0IGNhbid0IGJlIHJlYXNzaWduZWQgKi8KLSAgICAgICAgaWQgPSBQeUJ5dGVzX0FTX1NUUklORygKLSAgICAgICAgICAgIF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyhlLT52Lk5hbWUuaWQsIE5VTEwpKTsKKyAgICAgICAgaWQgPSBQeVVuaWNvZGVfQXNVVEY4KGUtPnYuTmFtZS5pZCk7CiAgICAgICAgIGlmIChzdHJjbXAoaWQsICJUcnVlIikgPT0gMCkgcmV0dXJuIDE7CiAgICAgICAgIGlmIChzdHJjbXAoaWQsICJGYWxzZSIpID09IDApIHJldHVybiAwOwogICAgICAgICBpZiAoc3RyY21wKGlkLCAiTm9uZSIpID09IDApIHJldHVybiAwOwpAQCAtMzA2Miw5ICszMTk5LDEwIEBACiAgICAgICAgZXhpdCgqZXhjKQogICovCiBzdGF0aWMgaW50Ci1jb21waWxlcl93aXRoKHN0cnVjdCBjb21waWxlciAqYywgc3RtdF90eSBzKQorY29tcGlsZXJfd2l0aChzdHJ1Y3QgY29tcGlsZXIgKmMsIHN0bXRfdHkgcywgaW50IHBvcykKIHsKICAgICBiYXNpY2Jsb2NrICpibG9jaywgKmZpbmFsbHk7CisgICAgd2l0aGl0ZW1fdHkgaXRlbSA9IGFzZGxfc2VxX0dFVChzLT52LldpdGguaXRlbXMsIHBvcyk7CiAKICAgICBhc3NlcnQocy0+a2luZCA9PSBXaXRoX2tpbmQpOwogCkBAIC0zMDc0LDcgKzMyMTIsNyBAQAogICAgICAgICByZXR1cm4gMDsKIAogICAgIC8qIEV2YWx1YXRlIEVYUFIgKi8KLSAgICBWSVNJVChjLCBleHByLCBzLT52LldpdGguY29udGV4dF9leHByKTsKKyAgICBWSVNJVChjLCBleHByLCBpdGVtLT5jb250ZXh0X2V4cHIpOwogICAgIEFERE9QX0pSRUwoYywgU0VUVVBfV0lUSCwgZmluYWxseSk7CiAKICAgICAvKiBTRVRVUF9XSVRIIHB1c2hlcyBhIGZpbmFsbHkgYmxvY2suICovCkBAIC0zMDgzLDE2ICszMjIxLDIwIEBACiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIGlmIChzLT52LldpdGgub3B0aW9uYWxfdmFycykgewotICAgICAgICBWSVNJVChjLCBleHByLCBzLT52LldpdGgub3B0aW9uYWxfdmFycyk7CisgICAgaWYgKGl0ZW0tPm9wdGlvbmFsX3ZhcnMpIHsKKyAgICAgICAgVklTSVQoYywgZXhwciwgaXRlbS0+b3B0aW9uYWxfdmFycyk7CiAgICAgfQogICAgIGVsc2UgewogICAgIC8qIERpc2NhcmQgcmVzdWx0IGZyb20gY29udGV4dC5fX2VudGVyX18oKSAqLwogICAgICAgICBBRERPUChjLCBQT1BfVE9QKTsKICAgICB9CiAKLSAgICAvKiBCTE9DSyBjb2RlICovCi0gICAgVklTSVRfU0VRKGMsIHN0bXQsIHMtPnYuV2l0aC5ib2R5KTsKKyAgICBwb3MrKzsKKyAgICBpZiAocG9zID09IGFzZGxfc2VxX0xFTihzLT52LldpdGguaXRlbXMpKQorICAgICAgICAvKiBCTE9DSyBjb2RlICovCisgICAgICAgIFZJU0lUX1NFUShjLCBzdG10LCBzLT52LldpdGguYm9keSkKKyAgICBlbHNlIGlmICghY29tcGlsZXJfd2l0aChjLCBzLCBwb3MpKQorICAgICAgICAgICAgcmV0dXJuIDA7CiAKICAgICAvKiBFbmQgb2YgdHJ5IGJsb2NrOyBzdGFydCB0aGUgZmluYWxseSBibG9jayAqLwogICAgIEFERE9QKGMsIFBPUF9CTE9DSyk7CkBAIC0zMTY5LDE2ICszMzExLDI1IEBACiAgICAgY2FzZSBEaWN0Q29tcF9raW5kOgogICAgICAgICByZXR1cm4gY29tcGlsZXJfZGljdGNvbXAoYywgZSk7CiAgICAgY2FzZSBZaWVsZF9raW5kOgorICAgIGNhc2UgWWllbGRGcm9tX2tpbmQ6IHsKKyAgICAgICAgZXhwcl90eSB2YWx1ZTsKICAgICAgICAgaWYgKGMtPnUtPnVfc3RlLT5zdGVfdHlwZSAhPSBGdW5jdGlvbkJsb2NrKQogICAgICAgICAgICAgcmV0dXJuIGNvbXBpbGVyX2Vycm9yKGMsICIneWllbGQnIG91dHNpZGUgZnVuY3Rpb24iKTsKLSAgICAgICAgaWYgKGUtPnYuWWllbGQudmFsdWUpIHsKLSAgICAgICAgICAgIFZJU0lUKGMsIGV4cHIsIGUtPnYuWWllbGQudmFsdWUpOworICAgICAgICB2YWx1ZSA9IChlLT5raW5kID09IFlpZWxkRnJvbV9raW5kKSA/IGUtPnYuWWllbGRGcm9tLnZhbHVlIDogZS0+di5ZaWVsZC52YWx1ZTsKKyAgICAgICAgaWYgKHZhbHVlKSB7CisgICAgICAgICAgICBWSVNJVChjLCBleHByLCB2YWx1ZSk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICBBRERPUF9PKGMsIExPQURfQ09OU1QsIFB5X05vbmUsIGNvbnN0cyk7CiAgICAgICAgIH0KLSAgICAgICAgQURET1AoYywgWUlFTERfVkFMVUUpOworICAgICAgICBpZiAoZS0+a2luZCA9PSBZaWVsZEZyb21fa2luZCkgeworICAgICAgICAgICAgQURET1AoYywgWUlFTERfRlJPTSk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBBRERPUChjLCBZSUVMRF9WQUxVRSk7CisgICAgICAgIH0KICAgICAgICAgYnJlYWs7CisgICAgfQogICAgIGNhc2UgQ29tcGFyZV9raW5kOgogICAgICAgICByZXR1cm4gY29tcGlsZXJfY29tcGFyZShjLCBlKTsKICAgICBjYXNlIENhbGxfa2luZDoKQEAgLTMzNjEsNyArMzUxMiw3IEBACiBzdGF0aWMgaW50CiBjb21waWxlcl9lcnJvcihzdHJ1Y3QgY29tcGlsZXIgKmMsIGNvbnN0IGNoYXIgKmVycnN0cikKIHsKLSAgICBQeU9iamVjdCAqbG9jLCAqZmlsZW5hbWU7CisgICAgUHlPYmplY3QgKmxvYzsKICAgICBQeU9iamVjdCAqdSA9IE5VTEwsICp2ID0gTlVMTDsKIAogICAgIGxvYyA9IFB5RXJyX1Byb2dyYW1UZXh0KGMtPmNfZmlsZW5hbWUsIGMtPnUtPnVfbGluZW5vKTsKQEAgLTMzNjksMTYgKzM1MjAsNyBAQAogICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgICAgIGxvYyA9IFB5X05vbmU7CiAgICAgfQotICAgIGlmIChjLT5jX2ZpbGVuYW1lICE9IE5VTEwpIHsKLSAgICAgICAgZmlsZW5hbWUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGMtPmNfZmlsZW5hbWUpOwotICAgICAgICBpZiAoIWZpbGVuYW1lKQotICAgICAgICAgICAgZ290byBleGl0OwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwotICAgICAgICBmaWxlbmFtZSA9IFB5X05vbmU7Ci0gICAgfQotICAgIHUgPSBQeV9CdWlsZFZhbHVlKCIoTmlpTykiLCBmaWxlbmFtZSwgYy0+dS0+dV9saW5lbm8sCisgICAgdSA9IFB5X0J1aWxkVmFsdWUoIihPaWlPKSIsIGMtPmNfZmlsZW5hbWVfb2JqLCBjLT51LT51X2xpbmVubywKICAgICAgICAgICAgICAgICAgICAgICBjLT51LT51X2NvbF9vZmZzZXQsIGxvYyk7CiAgICAgaWYgKCF1KQogICAgICAgICBnb3RvIGV4aXQ7CkBAIC0zOTI3LDcgKzQwNjksNiBAQAogICAgIFB5T2JqZWN0ICpjb25zdHMgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpuYW1lcyA9IE5VTEw7CiAgICAgUHlPYmplY3QgKnZhcm5hbWVzID0gTlVMTDsKLSAgICBQeU9iamVjdCAqZmlsZW5hbWUgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpuYW1lID0gTlVMTDsKICAgICBQeU9iamVjdCAqZnJlZXZhcnMgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpjZWxsdmFycyA9IE5VTEw7CkBAIC0zOTUxLDEwICs0MDkyLDYgQEAKICAgICBmcmVldmFycyA9IGRpY3Rfa2V5c19pbm9yZGVyKGMtPnUtPnVfZnJlZXZhcnMsIFB5VHVwbGVfU2l6ZShjZWxsdmFycykpOwogICAgIGlmICghZnJlZXZhcnMpCiAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgZmlsZW5hbWUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGMtPmNfZmlsZW5hbWUpOwotICAgIGlmICghZmlsZW5hbWUpCi0gICAgICAgIGdvdG8gZXJyb3I7Ci0KICAgICBubG9jYWxzID0gUHlEaWN0X1NpemUoYy0+dS0+dV92YXJuYW1lcyk7CiAgICAgZmxhZ3MgPSBjb21wdXRlX2NvZGVfZmxhZ3MoYyk7CiAgICAgaWYgKGZsYWdzIDwgMCkKQEAgLTM5NzQsMTQgKzQxMTEsMTMgQEAKICAgICAgICAgICAgICAgICAgICAgbmxvY2Fscywgc3RhY2tkZXB0aChjKSwgZmxhZ3MsCiAgICAgICAgICAgICAgICAgICAgIGJ5dGVjb2RlLCBjb25zdHMsIG5hbWVzLCB2YXJuYW1lcywKICAgICAgICAgICAgICAgICAgICAgZnJlZXZhcnMsIGNlbGx2YXJzLAotICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZSwgYy0+dS0+dV9uYW1lLAorICAgICAgICAgICAgICAgICAgICBjLT5jX2ZpbGVuYW1lX29iaiwgYy0+dS0+dV9uYW1lLAogICAgICAgICAgICAgICAgICAgICBjLT51LT51X2ZpcnN0bGluZW5vLAogICAgICAgICAgICAgICAgICAgICBhLT5hX2xub3RhYik7CiAgZXJyb3I6CiAgICAgUHlfWERFQ1JFRihjb25zdHMpOwogICAgIFB5X1hERUNSRUYobmFtZXMpOwogICAgIFB5X1hERUNSRUYodmFybmFtZXMpOwotICAgIFB5X1hERUNSRUYoZmlsZW5hbWUpOwogICAgIFB5X1hERUNSRUYobmFtZSk7CiAgICAgUHlfWERFQ1JFRihmcmVldmFycyk7CiAgICAgUHlfWERFQ1JFRihjZWxsdmFycyk7CmRpZmYgLS1naXQgYS9QeXRob24vZHRvYS5jIGIvUHl0aG9uL2R0b2EuYwppbmRleCA0NGRjMDFmLi44MmI2ZmFhIDEwMDY0NAotLS0gYS9QeXRob24vZHRvYS5jCisrKyBiL1B5dGhvbi9kdG9hLmMKQEAgLTIwNTUsNyArMjA1NSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICArIEV4cF9tc2sxCiAgICAgICAgICAgICAgICAgICAgICAgICA7CiAgICAgICAgICAgICAgICAgICAgIHdvcmQxKCZydikgPSAwOwotICAgICAgICAgICAgICAgICAgICBkc2lnbiA9IDA7CisgICAgICAgICAgICAgICAgICAgIC8qIGRzaWduID0gMDsgKi8KICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQpAQCAtMjA5Miw3ICsyMDkyLDcgQEAKICAgICAgICAgICAgICAgICAgICAgZ290byB1bmRmbDsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBkc2lnbiA9IDEgLSBkc2lnbjsKKyAgICAgICAgICAgIC8qIGRzaWduID0gMSAtIGRzaWduOyAqLwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgaWYgKChhYWRqID0gcmF0aW8oZGVsdGEsIGJzKSkgPD0gMi4pIHsKZGlmZiAtLWdpdCBhL1B5dGhvbi9keW5sb2FkX2FpeC5jIGIvUHl0aG9uL2R5bmxvYWRfYWl4LmMKaW5kZXggMTQ5OTkwZC4uODM0NmYwNiAxMDA2NDQKLS0tIGEvUHl0aG9uL2R5bmxvYWRfYWl4LmMKKysrIGIvUHl0aG9uL2R5bmxvYWRfYWl4LmMKQEAgLTI4LDcgKzI4LDYgQEAKIAogY29uc3Qgc3RydWN0IGZpbGVkZXNjciBfUHlJbXBvcnRfRHluTG9hZEZpbGV0YWJbXSA9IHsKICAgICB7Ii5zbyIsICJyYiIsIENfRVhURU5TSU9OfSwKLSAgICB7Im1vZHVsZS5zbyIsICJyYiIsIENfRVhURU5TSU9OfSwKICAgICB7MCwgMH0KIH07CiAKQEAgLTEyOSw3ICsxMjgsNiBAQAogICAgICAgICB7TF9FUlJPUl9FUlJOTywgICAgICAgICAgICAgICAgIE5VTEx9CiAgICAgfTsKIAotI2RlZmluZSBMT0FEX0VSUlRBQl9MRU4gKHNpemVvZihsb2FkX2VycnRhYikvc2l6ZW9mKGxvYWRfZXJydGFiWzBdKSkKICNkZWZpbmUgRVJSQlVGX0FQUEVORChzKSBzdHJuY2F0KGVycmJ1Ziwgcywgc2l6ZW9mKGVycmJ1Ziktc3RybGVuKGVycmJ1ZiktMSkKIAogICAgIFB5T1Nfc25wcmludGYoZXJyYnVmLCBzaXplb2YoZXJyYnVmKSwgImZyb20gbW9kdWxlICUuMjAwcyAiLCBwYXRobmFtZSk7CkBAIC0xNDAsNyArMTM4LDcgQEAKICAgICB9CiAgICAgZm9yKGkgPSAwOyBtZXNzYWdlW2ldICYmICptZXNzYWdlW2ldOyBpKyspIHsKICAgICAgICAgaW50IG5lcnIgPSBhdG9pKG1lc3NhZ2VbaV0pOwotICAgICAgICBmb3IgKGo9MDsgajxMT0FEX0VSUlRBQl9MRU4gOyBqKyspIHsKKyAgICAgICAgZm9yIChqPTA7IGogPCBQeV9BUlJBWV9MRU5HVEgobG9hZF9lcnJ0YWIpOyBqKyspIHsKICAgICAgICAgICAgIGlmIChuZXJyID09IGxvYWRfZXJydGFiW2pdLmVyck5vICYmIGxvYWRfZXJydGFiW2pdLmVycnN0cikKICAgICAgICAgICAgIEVSUkJVRl9BUFBFTkQobG9hZF9lcnJ0YWJbal0uZXJyc3RyKTsKICAgICAgICAgfQpAQCAtMTU0LDcgKzE1Miw3IEBACiB9CiAKIAotZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqZnFuYW1lLCBjb25zdCBjaGFyICpzaG9ydG5hbWUsCitkbF9mdW5jcHRyIF9QeUltcG9ydF9HZXREeW5Mb2FkRnVuYyhjb25zdCBjaGFyICpzaG9ydG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwYXRobmFtZSwgRklMRSAqZnApCiB7CiAgICAgZGxfZnVuY3B0ciBwOwpkaWZmIC0tZ2l0IGEvUHl0aG9uL2R5bmxvYWRfZGwuYyBiL1B5dGhvbi9keW5sb2FkX2RsLmMKaW5kZXggMjYwNmUxZS4uYTkxNGEwOCAxMDA2NDQKLS0tIGEvUHl0aG9uL2R5bmxvYWRfZGwuYworKysgYi9QeXRob24vZHlubG9hZF9kbC5jCkBAIC0xMCwxNyArMTAsMTYgQEAKIGV4dGVybiBjaGFyICpQeV9HZXRQcm9ncmFtTmFtZSh2b2lkKTsKIAogY29uc3Qgc3RydWN0IGZpbGVkZXNjciBfUHlJbXBvcnRfRHluTG9hZEZpbGV0YWJbXSA9IHsKLQl7Ii5vIiwgInJiIiwgQ19FWFRFTlNJT059LAotCXsibW9kdWxlLm8iLCAicmIiLCBDX0VYVEVOU0lPTn0sCi0JezAsIDB9CisgICAgeyIubyIsICJyYiIsIENfRVhURU5TSU9OfSwKKyAgICB7MCwgMH0KIH07CiAKIAotZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqZnFuYW1lLCBjb25zdCBjaGFyICpzaG9ydG5hbWUsCi0JCQkJICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKK2RsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKIHsKLQljaGFyIGZ1bmNuYW1lWzI1OF07CisgICAgY2hhciBmdW5jbmFtZVsyNThdOwogCi0JUHlPU19zbnByaW50ZihmdW5jbmFtZSwgc2l6ZW9mKGZ1bmNuYW1lKSwgIlB5SW5pdF8lLjIwMHMiLCBzaG9ydG5hbWUpOwotCXJldHVybiBkbF9sb2FkbW9kKFB5X0dldFByb2dyYW1OYW1lKCksIHBhdGhuYW1lLCBmdW5jbmFtZSk7CisgICAgUHlPU19zbnByaW50ZihmdW5jbmFtZSwgc2l6ZW9mKGZ1bmNuYW1lKSwgIlB5SW5pdF8lLjIwMHMiLCBzaG9ydG5hbWUpOworICAgIHJldHVybiBkbF9sb2FkbW9kKFB5X0dldFByb2dyYW1OYW1lKCksIHBhdGhuYW1lLCBmdW5jbmFtZSk7CiB9CmRpZmYgLS1naXQgYS9QeXRob24vZHlubG9hZF9ocHV4LmMgYi9QeXRob24vZHlubG9hZF9ocHV4LmMKaW5kZXggMThhODEzNy4uMTAwNDAxMCAxMDA2NDQKLS0tIGEvUHl0aG9uL2R5bmxvYWRfaHB1eC5jCisrKyBiL1B5dGhvbi9keW5sb2FkX2hwdXguYwpAQCAtMTUsMTEgKzE1LDEwIEBACiAKIGNvbnN0IHN0cnVjdCBmaWxlZGVzY3IgX1B5SW1wb3J0X0R5bkxvYWRGaWxldGFiW10gPSB7CiAgICAge1NITElCX0VYVCwgInJiIiwgQ19FWFRFTlNJT059LAotICAgIHsibW9kdWxlIlNITElCX0VYVCwgInJiIiwgQ19FWFRFTlNJT059LAogICAgIHswLCAwfQogfTsKIAotZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqZnFuYW1lLCBjb25zdCBjaGFyICpzaG9ydG5hbWUsCitkbF9mdW5jcHRyIF9QeUltcG9ydF9HZXREeW5Mb2FkRnVuYyhjb25zdCBjaGFyICpzaG9ydG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwYXRobmFtZSwgRklMRSAqZnApCiB7CiAgICAgZGxfZnVuY3B0ciBwOwpkaWZmIC0tZ2l0IGEvUHl0aG9uL2R5bmxvYWRfbmV4dC5jIGIvUHl0aG9uL2R5bmxvYWRfbmV4dC5jCmluZGV4IGNhYmY5YjkuLjVjYWZmOGIgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9keW5sb2FkX25leHQuYworKysgYi9QeXRob24vZHlubG9hZF9uZXh0LmMKQEAgLTEwLDcgKzEwLDYgQEAKIAogY29uc3Qgc3RydWN0IGZpbGVkZXNjciBfUHlJbXBvcnRfRHluTG9hZEZpbGV0YWJbXSA9IHsKICAgICB7Ii5zbyIsICJyYiIsIENfRVhURU5TSU9OfSwKLSAgICB7Im1vZHVsZS5zbyIsICJyYiIsIENfRVhURU5TSU9OfSwKICAgICB7MCwgMH0KIH07CiAKQEAgLTMxLDggKzMwLDggQEAKICNkZWZpbmUgTElOS09QVElPTlMgTlNMSU5LTU9EVUxFX09QVElPTl9CSU5ETk9XfCBcCiAgICAgTlNMSU5LTU9EVUxFX09QVElPTl9SRVRVUk5fT05fRVJST1J8TlNMSU5LTU9EVUxFX09QVElPTl9QUklWQVRFCiAjZW5kaWYKLWRsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKmZxbmFtZSwgY29uc3QgY2hhciAqc2hvcnRuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKK2RsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKIHsKICAgICBkbF9mdW5jcHRyIHAgPSBOVUxMOwogICAgIGNoYXIgZnVuY25hbWVbMjU4XTsKZGlmZiAtLWdpdCBhL1B5dGhvbi9keW5sb2FkX29zMi5jIGIvUHl0aG9uL2R5bmxvYWRfb3MyLmMKaW5kZXggMTAxYzAyNC4uZjcyNjRkYSAxMDA2NDQKLS0tIGEvUHl0aG9uL2R5bmxvYWRfb3MyLmMKKysrIGIvUHl0aG9uL2R5bmxvYWRfb3MyLmMKQEAgLTE1LDcgKzE1LDcgQEAKICAgICB7MCwgMH0KIH07CiAKLWRsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKmZxbmFtZSwgY29uc3QgY2hhciAqc2hvcnRuYW1lLAorZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqc2hvcnRuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcGF0aG5hbWUsIEZJTEUgKmZwKQogewogICAgIGRsX2Z1bmNwdHIgcDsKZGlmZiAtLWdpdCBhL1B5dGhvbi9keW5sb2FkX3NobGliLmMgYi9QeXRob24vZHlubG9hZF9zaGxpYi5jCmluZGV4IDdlYTUxMGUuLmFiMjQyMzggMTAwNjQ0Ci0tLSBhL1B5dGhvbi9keW5sb2FkX3NobGliLmMKKysrIGIvUHl0aG9uL2R5bmxvYWRfc2hsaWIuYwpAQCAtMzksNyArMzksNiBAQAogY29uc3Qgc3RydWN0IGZpbGVkZXNjciBfUHlJbXBvcnRfRHluTG9hZEZpbGV0YWJbXSA9IHsKICNpZmRlZiBfX0NZR1dJTl9fCiAgICAgeyIuZGxsIiwgInJiIiwgQ19FWFRFTlNJT059LAotICAgIHsibW9kdWxlLmRsbCIsICJyYiIsIENfRVhURU5TSU9OfSwKICNlbHNlICAvKiAhX19DWUdXSU5fXyAqLwogI2lmIGRlZmluZWQoUFlPU19PUzIpICYmIGRlZmluZWQoUFlDQ19HQ0MpCiAgICAgeyIucHlkIiwgInJiIiwgQ19FWFRFTlNJT059LApAQCAtNDgsMTUgKzQ3LDEwIEBACiAjaWZkZWYgX19WTVMKICAgICB7Ii5leGUiLCAicmIiLCBDX0VYVEVOU0lPTn0sCiAgICAgeyIuRVhFIiwgInJiIiwgQ19FWFRFTlNJT059LAotICAgIHsibW9kdWxlLmV4ZSIsICJyYiIsIENfRVhURU5TSU9OfSwKLSAgICB7Ik1PRFVMRS5FWEUiLCAicmIiLCBDX0VYVEVOU0lPTn0sCiAjZWxzZSAgLyogIV9fVk1TICovCiAgICAgeyIuIiBTT0FCSSAiLnNvIiwgInJiIiwgQ19FWFRFTlNJT059LAotICAgIHsibW9kdWxlLiIgU09BQkkgIi5zbyIsICJyYiIsIENfRVhURU5TSU9OfSwKICAgICB7Ii5hYmkiIFBZVEhPTl9BQklfU1RSSU5HICIuc28iLCAicmIiLCBDX0VYVEVOU0lPTn0sCi0gICAgeyJtb2R1bGUuYWJpIiBQWVRIT05fQUJJX1NUUklORyAiLnNvIiwgInJiIiwgQ19FWFRFTlNJT059LAogICAgIHsiLnNvIiwgInJiIiwgQ19FWFRFTlNJT059LAotICAgIHsibW9kdWxlLnNvIiwgInJiIiwgQ19FWFRFTlNJT059LAogI2VuZGlmICAvKiBfX1ZNUyAqLwogI2VuZGlmICAvKiBkZWZpbmVkKFBZT1NfT1MyKSAmJiBkZWZpbmVkKFBZQ0NfR0NDKSAqLwogI2VuZGlmICAvKiBfX0NZR1dJTl9fICovCkBAIC03NSw3ICs2OSw3IEBACiBzdGF0aWMgaW50IG5oYW5kbGVzID0gMDsKIAogCi1kbF9mdW5jcHRyIF9QeUltcG9ydF9HZXREeW5Mb2FkRnVuYyhjb25zdCBjaGFyICpmcW5hbWUsIGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKK2RsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKIHsKICAgICBkbF9mdW5jcHRyIHA7CmRpZmYgLS1naXQgYS9QeXRob24vZHlubG9hZF93aW4uYyBiL1B5dGhvbi9keW5sb2FkX3dpbi5jCmluZGV4IDczYTFkY2YuLjJjYmZlOWYgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9keW5sb2FkX3dpbi5jCisrKyBiL1B5dGhvbi9keW5sb2FkX3dpbi5jCkBAIC0xNzEsNDMgKzE3MSwzOCBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1kbF9mdW5jcHRyIF9QeUltcG9ydF9HZXREeW5Mb2FkRnVuYyhjb25zdCBjaGFyICpmcW5hbWUsIGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKK2RsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRXaW5kb3dzKGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpwYXRobmFtZSwgRklMRSAqZnApCiB7CiAgICAgZGxfZnVuY3B0ciBwOwogICAgIGNoYXIgZnVuY25hbWVbMjU4XSwgKmltcG9ydF9weXRob247CisgICAgd2NoYXJfdCAqd3BhdGhuYW1lOwogCiAjaWZuZGVmIF9ERUJVRwogICAgIF9QeV9DaGVja1B5dGhvbjMoKTsKICNlbmRpZgogCisgICAgd3BhdGhuYW1lID0gUHlVbmljb2RlX0FzVW5pY29kZShwYXRobmFtZSk7CisgICAgaWYgKHdwYXRobmFtZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIFB5T1Nfc25wcmludGYoZnVuY25hbWUsIHNpemVvZihmdW5jbmFtZSksICJQeUluaXRfJS4yMDBzIiwgc2hvcnRuYW1lKTsKIAogICAgIHsKICAgICAgICAgSElOU1RBTkNFIGhETEwgPSBOVUxMOwotICAgICAgICBjaGFyIHBhdGhidWZbMjYwXTsKLSAgICAgICAgTFBUU1RSIGR1bW15OwogICAgICAgICB1bnNpZ25lZCBpbnQgb2xkX21vZGU7CiAgICAgICAgIFVMT05HX1BUUiBjb29raWUgPSAwOwotICAgICAgICAvKiBXZSB1c2UgTG9hZExpYnJhcnlFeCBzbyBXaW5kb3dzIGxvb2tzIGZvciBkZXBlbmRlbnQgRExMcwotICAgICAgICAgICAgaW4gZGlyZWN0b3J5IG9mIHBhdGhuYW1lIGZpcnN0LiAgSG93ZXZlciwgV2luZG93czk1Ci0gICAgICAgICAgICBjYW4gc29tZXRpbWVzIG5vdCB3b3JrIGNvcnJlY3RseSB1bmxlc3MgdGhlIGFic29sdXRlCi0gICAgICAgICAgICBwYXRoIGlzIHVzZWQuICBJZiBHZXRGdWxsUGF0aE5hbWUoKSBmYWlscywgdGhlIExvYWRMaWJyYXJ5Ci0gICAgICAgICAgICB3aWxsIGNlcnRhaW5seSBmYWlsIHRvbywgc28gdXNlIGl0cyBlcnJvciBjb2RlICovCiAKICAgICAgICAgLyogRG9uJ3QgZGlzcGxheSBhIG1lc3NhZ2UgYm94IHdoZW4gUHl0aG9uIGNhbid0IGxvYWQgYSBETEwgKi8KICAgICAgICAgb2xkX21vZGUgPSBTZXRFcnJvck1vZGUoU0VNX0ZBSUxDUklUSUNBTEVSUk9SUyk7CiAKLSAgICAgICAgaWYgKEdldEZ1bGxQYXRoTmFtZShwYXRobmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YocGF0aGJ1ZiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aGJ1ZiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZHVtbXkpKSB7Ci0gICAgICAgICAgICBVTE9OR19QVFIgY29va2llID0gX1B5X0FjdGl2YXRlQWN0Q3R4KCk7Ci0gICAgICAgICAgICAvKiBYWFggVGhpcyBjYWxsIGRvZXNuJ3QgZXhpc3QgaW4gV2luZG93cyBDRSAqLwotICAgICAgICAgICAgaERMTCA9IExvYWRMaWJyYXJ5RXgocGF0aG5hbWUsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMT0FEX1dJVEhfQUxURVJFRF9TRUFSQ0hfUEFUSCk7Ci0gICAgICAgICAgICBfUHlfRGVhY3RpdmF0ZUFjdEN0eChjb29raWUpOwotICAgICAgICB9CisgICAgICAgIGNvb2tpZSA9IF9QeV9BY3RpdmF0ZUFjdEN0eCgpOworICAgICAgICAvKiBXZSB1c2UgTG9hZExpYnJhcnlFeCBzbyBXaW5kb3dzIGxvb2tzIGZvciBkZXBlbmRlbnQgRExMcworICAgICAgICAgICAgaW4gZGlyZWN0b3J5IG9mIHBhdGhuYW1lIGZpcnN0LiAqLworICAgICAgICAvKiBYWFggVGhpcyBjYWxsIGRvZXNuJ3QgZXhpc3QgaW4gV2luZG93cyBDRSAqLworICAgICAgICBoRExMID0gTG9hZExpYnJhcnlFeFcod3BhdGhuYW1lLCBOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTE9BRF9XSVRIX0FMVEVSRURfU0VBUkNIX1BBVEgpOworICAgICAgICBfUHlfRGVhY3RpdmF0ZUFjdEN0eChjb29raWUpOwogCiAgICAgICAgIC8qIHJlc3RvcmUgb2xkIGVycm9yIG1vZGUgc2V0dGluZ3MgKi8KICAgICAgICAgU2V0RXJyb3JNb2RlKG9sZF9tb2RlKTsKQEAgLTI1NCwzMSArMjQ5LDMzIEBACiAgICAgICAgICAgICAgICAgICAgICJETEwgbG9hZCBmYWlsZWQ6ICIpOwogCiAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FwcGVuZEFuZERlbCgmbWVzc2FnZSwKLSAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0Zyb21Vbmljb2RlKAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKAogICAgICAgICAgICAgICAgICAgICAgICAgdGhlSW5mbywKICAgICAgICAgICAgICAgICAgICAgICAgIHRoZUxlbmd0aCkpOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjX0ltcG9ydEVycm9yLCBtZXNzYWdlKTsKLSAgICAgICAgICAgIFB5X1hERUNSRUYobWVzc2FnZSk7CisgICAgICAgICAgICBpZiAobWVzc2FnZSAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjX0ltcG9ydEVycm9yLCBtZXNzYWdlKTsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYobWVzc2FnZSk7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGNoYXIgYnVmZmVyWzI1Nl07CiAKKyAgICAgICAgICAgIFB5T1Nfc25wcmludGYoYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwKICNpZmRlZiBfREVCVUcKLSAgICAgICAgICAgIFB5T1Nfc25wcmludGYoYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwgInB5dGhvbiVkJWRfZC5kbGwiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAicHl0aG9uJWQlZF9kLmRsbCIsCiAjZWxzZQotICAgICAgICAgICAgUHlPU19zbnByaW50ZihidWZmZXIsIHNpemVvZihidWZmZXIpLCAicHl0aG9uJWQlZC5kbGwiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAicHl0aG9uJWQlZC5kbGwiLAogI2VuZGlmCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFBZX01BSk9SX1ZFUlNJT04sUFlfTUlOT1JfVkVSU0lPTik7CiAgICAgICAgICAgICBpbXBvcnRfcHl0aG9uID0gR2V0UHl0aG9uSW1wb3J0KGhETEwpOwogCiAgICAgICAgICAgICBpZiAoaW1wb3J0X3B5dGhvbiAmJgogICAgICAgICAgICAgICAgIHN0cmNhc2VjbXAoYnVmZmVyLGltcG9ydF9weXRob24pKSB7Ci0gICAgICAgICAgICAgICAgUHlPU19zbnByaW50ZihidWZmZXIsIHNpemVvZihidWZmZXIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1vZHVsZSB1c2Ugb2YgJS4xNTBzIGNvbmZsaWN0cyAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid2l0aCB0aGlzIHZlcnNpb24gb2YgUHl0aG9uLiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbXBvcnRfcHl0aG9uKTsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSW1wb3J0RXJyb3IsYnVmZmVyKTsKKyAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNb2R1bGUgdXNlIG9mICUuMTUwcyBjb25mbGljdHMgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid2l0aCB0aGlzIHZlcnNpb24gb2YgUHl0aG9uLiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltcG9ydF9weXRob24pOwogICAgICAgICAgICAgICAgIEZyZWVMaWJyYXJ5KGhETEwpOwogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL2Vycm9ycy5jIGIvUHl0aG9uL2Vycm9ycy5jCmluZGV4IDVhOWE2MjQuLjMxZmE5ZTIgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9lcnJvcnMuYworKysgYi9QeXRob24vZXJyb3JzLmMKQEAgLTM0MSwxMSArMzQxLDkgQEAKIFB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZU9iamVjdChQeU9iamVjdCAqZXhjLCBQeU9iamVjdCAqZmlsZW5hbWVPYmplY3QpCiB7CiAgICAgUHlPYmplY3QgKm1lc3NhZ2U7Ci0gICAgUHlPYmplY3QgKnY7CisgICAgUHlPYmplY3QgKnYsICphcmdzOwogICAgIGludCBpID0gZXJybm87Ci0jaWZuZGVmIE1TX1dJTkRPV1MKLSAgICBjaGFyICpzOwotI2Vsc2UKKyNpZmRlZiBNU19XSU5ET1dTCiAgICAgV0NIQVIgKnNfYnVmID0gTlVMTDsKICNlbmRpZiAvKiBVbml4L1dpbmRvd3MgKi8KIApAQCAtMzU1LDExICszNTMsMTQgQEAKICNlbmRpZgogCiAjaWZuZGVmIE1TX1dJTkRPV1MKLSAgICBpZiAoaSA9PSAwKQotICAgICAgICBzID0gIkVycm9yIjsgLyogU29tZXRpbWVzIGVycm5vIGRpZG4ndCBnZXQgc2V0ICovCi0gICAgZWxzZQotICAgICAgICBzID0gc3RyZXJyb3IoaSk7Ci0gICAgbWVzc2FnZSA9IFB5VW5pY29kZV9EZWNvZGVVVEY4KHMsIHN0cmxlbihzKSwgImlnbm9yZSIpOworICAgIGlmIChpICE9IDApIHsKKyAgICAgICAgY2hhciAqcyA9IHN0cmVycm9yKGkpOworICAgICAgICBtZXNzYWdlID0gUHlVbmljb2RlX0RlY29kZUxvY2FsZShzLCAic3Vycm9nYXRlZXNjYXBlIik7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICAvKiBTb21ldGltZXMgZXJybm8gZGlkbid0IGdldCBzZXQgKi8KKyAgICAgICAgbWVzc2FnZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCJFcnJvciIpOworICAgIH0KICNlbHNlCiAgICAgaWYgKGkgPT0gMCkKICAgICAgICAgbWVzc2FnZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCJFcnJvciIpOyAvKiBTb21ldGltZXMgZXJybm8gZGlkbid0IGdldCBzZXQgKi8KQEAgLTM5NSw3ICszOTYsNyBAQAogICAgICAgICAgICAgICAgIC8qIHJlbW92ZSB0cmFpbGluZyBjci9sZiBhbmQgZG90cyAqLwogICAgICAgICAgICAgICAgIHdoaWxlIChsZW4gPiAwICYmIChzX2J1ZltsZW4tMV0gPD0gTCcgJyB8fCBzX2J1ZltsZW4tMV0gPT0gTCcuJykpCiAgICAgICAgICAgICAgICAgICAgIHNfYnVmWy0tbGVuXSA9IEwnXDAnOwotICAgICAgICAgICAgICAgIG1lc3NhZ2UgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoc19idWYsIGxlbik7CisgICAgICAgICAgICAgICAgbWVzc2FnZSA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoc19idWYsIGxlbik7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9CkBAIC00MTAsMTQgKzQxMSwxOCBAQAogICAgIH0KIAogICAgIGlmIChmaWxlbmFtZU9iamVjdCAhPSBOVUxMKQotICAgICAgICB2ID0gUHlfQnVpbGRWYWx1ZSgiKGlPTykiLCBpLCBtZXNzYWdlLCBmaWxlbmFtZU9iamVjdCk7CisgICAgICAgIGFyZ3MgPSBQeV9CdWlsZFZhbHVlKCIoaU9PKSIsIGksIG1lc3NhZ2UsIGZpbGVuYW1lT2JqZWN0KTsKICAgICBlbHNlCi0gICAgICAgIHYgPSBQeV9CdWlsZFZhbHVlKCIoaU8pIiwgaSwgbWVzc2FnZSk7CisgICAgICAgIGFyZ3MgPSBQeV9CdWlsZFZhbHVlKCIoaU8pIiwgaSwgbWVzc2FnZSk7CiAgICAgUHlfREVDUkVGKG1lc3NhZ2UpOwogCi0gICAgaWYgKHYgIT0gTlVMTCkgewotICAgICAgICBQeUVycl9TZXRPYmplY3QoZXhjLCB2KTsKLSAgICAgICAgUHlfREVDUkVGKHYpOworICAgIGlmIChhcmdzICE9IE5VTEwpIHsKKyAgICAgICAgdiA9IFB5T2JqZWN0X0NhbGwoZXhjLCBhcmdzLCBOVUxMKTsKKyAgICAgICAgUHlfREVDUkVGKGFyZ3MpOworICAgICAgICBpZiAodiAhPSBOVUxMKSB7CisgICAgICAgICAgICBQeUVycl9TZXRPYmplY3QoKFB5T2JqZWN0ICopIFB5X1RZUEUodiksIHYpOworICAgICAgICAgICAgUHlfREVDUkVGKHYpOworICAgICAgICB9CiAgICAgfQogI2lmZGVmIE1TX1dJTkRPV1MKICAgICBMb2NhbEZyZWUoc19idWYpOwpAQCAtNDY0LDcgKzQ2OSw3IEBACiAgICAgaW50IGxlbjsKICAgICBXQ0hBUiAqc19idWYgPSBOVUxMOyAvKiBGcmVlIHZpYSBMb2NhbEZyZWUgKi8KICAgICBQeU9iamVjdCAqbWVzc2FnZTsKLSAgICBQeU9iamVjdCAqdjsKKyAgICBQeU9iamVjdCAqYXJncywgKnY7CiAgICAgRFdPUkQgZXJyID0gKERXT1JEKWllcnI7CiAgICAgaWYgKGVycj09MCkgZXJyID0gR2V0TGFzdEVycm9yKCk7CiAgICAgbGVuID0gRm9ybWF0TWVzc2FnZVcoCkBAIC00ODcsNyArNDkyLDcgQEAKICAgICAgICAgLyogcmVtb3ZlIHRyYWlsaW5nIGNyL2xmIGFuZCBkb3RzICovCiAgICAgICAgIHdoaWxlIChsZW4gPiAwICYmIChzX2J1ZltsZW4tMV0gPD0gTCcgJyB8fCBzX2J1ZltsZW4tMV0gPT0gTCcuJykpCiAgICAgICAgICAgICBzX2J1ZlstLWxlbl0gPSBMJ1wwJzsKLSAgICAgICAgbWVzc2FnZSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzX2J1ZiwgbGVuKTsKKyAgICAgICAgbWVzc2FnZSA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoc19idWYsIGxlbik7CiAgICAgfQogCiAgICAgaWYgKG1lc3NhZ2UgPT0gTlVMTCkKQEAgLTQ5NiwxNSArNTAxLDIwIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGlmIChmaWxlbmFtZU9iamVjdCAhPSBOVUxMKQotICAgICAgICB2ID0gUHlfQnVpbGRWYWx1ZSgiKGlPTykiLCBlcnIsIG1lc3NhZ2UsIGZpbGVuYW1lT2JqZWN0KTsKLSAgICBlbHNlCi0gICAgICAgIHYgPSBQeV9CdWlsZFZhbHVlKCIoaU8pIiwgZXJyLCBtZXNzYWdlKTsKKyAgICBpZiAoZmlsZW5hbWVPYmplY3QgPT0gTlVMTCkKKyAgICAgICAgZmlsZW5hbWVPYmplY3QgPSBQeV9Ob25lOworICAgIC8qIFRoaXMgaXMgdGhlIGNvbnN0cnVjdG9yIHNpZ25hdHVyZSBmb3IgcGFzc2luZyBhIFdpbmRvd3MgZXJyb3IgY29kZS4KKyAgICAgICBUaGUgUE9TSVggdHJhbnNsYXRpb24gd2lsbCBiZSBmaWd1cmVkIG91dCBieSB0aGUgY29uc3RydWN0b3IuICovCisgICAgYXJncyA9IFB5X0J1aWxkVmFsdWUoIihpT09pKSIsIDAsIG1lc3NhZ2UsIGZpbGVuYW1lT2JqZWN0LCBlcnIpOwogICAgIFB5X0RFQ1JFRihtZXNzYWdlKTsKIAotICAgIGlmICh2ICE9IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0T2JqZWN0KGV4Yywgdik7Ci0gICAgICAgIFB5X0RFQ1JFRih2KTsKKyAgICBpZiAoYXJncyAhPSBOVUxMKSB7CisgICAgICAgIHYgPSBQeU9iamVjdF9DYWxsKGV4YywgYXJncywgTlVMTCk7CisgICAgICAgIFB5X0RFQ1JFRihhcmdzKTsKKyAgICAgICAgaWYgKHYgIT0gTlVMTCkgeworICAgICAgICAgICAgUHlFcnJfU2V0T2JqZWN0KChQeU9iamVjdCAqKSBQeV9UWVBFKHYpLCB2KTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRih2KTsKKyAgICAgICAgfQogICAgIH0KICAgICBMb2NhbEZyZWUoc19idWYpOwogICAgIHJldHVybiBOVUxMOwpAQCAtNjU2LDcgKzY2Niw3IEBACiAgICAgICAgIGlmIChiYXNlcyA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBmYWlsdXJlOwogICAgIH0KLSAgICAvKiBDcmVhdGUgYSByZWFsIG5ldy1zdHlsZSBjbGFzcy4gKi8KKyAgICAvKiBDcmVhdGUgYSByZWFsIGNsYXNzLiAqLwogICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbigoUHlPYmplY3QgKikmUHlUeXBlX1R5cGUsICJzT08iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3QrMSwgYmFzZXMsIGRpY3QpOwogICBmYWlsdXJlOgpAQCAtNzA3LDYgKzcxNyw3IEBACiB2b2lkCiBQeUVycl9Xcml0ZVVucmFpc2FibGUoUHlPYmplY3QgKm9iaikKIHsKKyAgICBfUHlfSURFTlRJRklFUihfX21vZHVsZV9fKTsKICAgICBQeU9iamVjdCAqZiwgKnQsICp2LCAqdGI7CiAgICAgUHlFcnJfRmV0Y2goJnQsICZ2LCAmdGIpOwogICAgIGYgPSBQeVN5c19HZXRPYmplY3QoInN0ZGVyciIpOwpAQCAtNzIzLDcgKzczNCw3IEBACiAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZSA9IGRvdCsxOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBtb2R1bGVOYW1lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh0LCAiX19tb2R1bGVfXyIpOworICAgICAgICAgICAgbW9kdWxlTmFtZSA9IF9QeU9iamVjdF9HZXRBdHRySWQodCwgJlB5SWRfX19tb2R1bGVfXyk7CiAgICAgICAgICAgICBpZiAobW9kdWxlTmFtZSA9PSBOVUxMKQogICAgICAgICAgICAgICAgIFB5RmlsZV9Xcml0ZVN0cmluZygiPHVua25vd24+IiwgZik7CiAgICAgICAgICAgICBlbHNlIHsKQEAgLTc3NCw2ICs3ODUsMTIgQEAKIFB5RXJyX1N5bnRheExvY2F0aW9uRXgoY29uc3QgY2hhciAqZmlsZW5hbWUsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0KQogewogICAgIFB5T2JqZWN0ICpleGMsICp2LCAqdGIsICp0bXA7CisgICAgX1B5X0lERU5USUZJRVIoZmlsZW5hbWUpOworICAgIF9QeV9JREVOVElGSUVSKGxpbmVubyk7CisgICAgX1B5X0lERU5USUZJRVIobXNnKTsKKyAgICBfUHlfSURFTlRJRklFUihvZmZzZXQpOworICAgIF9QeV9JREVOVElGSUVSKHByaW50X2ZpbGVfYW5kX2xpbmUpOworICAgIF9QeV9JREVOVElGSUVSKHRleHQpOwogCiAgICAgLyogYWRkIGF0dHJpYnV0ZXMgZm9yIHRoZSBsaW5lIG51bWJlciBhbmQgZmlsZW5hbWUgZm9yIHRoZSBlcnJvciAqLwogICAgIFB5RXJyX0ZldGNoKCZleGMsICZ2LCAmdGIpOwpAQCAtNzg0LDcgKzgwMSw3IEBACiAgICAgaWYgKHRtcCA9PSBOVUxMKQogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgIGVsc2UgewotICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyh2LCAibGluZW5vIiwgdG1wKSkKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQodiwgJlB5SWRfbGluZW5vLCB0bXApKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgUHlfREVDUkVGKHRtcCk7CiAgICAgfQpAQCAtNzkzLDcgKzgxMCw3IEBACiAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcodiwgIm9mZnNldCIsIHRtcCkpCisgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZCh2LCAmUHlJZF9vZmZzZXQsIHRtcCkpCiAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRih0bXApOwogICAgICAgICB9CkBAIC04MDMsMzUgKzgyMCwzNSBAQAogICAgICAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHYsICJmaWxlbmFtZSIsIHRtcCkpCisgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZCh2LCAmUHlJZF9maWxlbmFtZSwgdG1wKSkKICAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICAgICAgUHlfREVDUkVGKHRtcCk7CiAgICAgICAgIH0KIAogICAgICAgICB0bXAgPSBQeUVycl9Qcm9ncmFtVGV4dChmaWxlbmFtZSwgbGluZW5vKTsKICAgICAgICAgaWYgKHRtcCkgewotICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcodiwgInRleHQiLCB0bXApKQorICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQodiwgJlB5SWRfdGV4dCwgdG1wKSkKICAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICAgICAgUHlfREVDUkVGKHRtcCk7CiAgICAgICAgIH0KICAgICB9Ci0gICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcodiwgIm9mZnNldCIsIFB5X05vbmUpKSB7CisgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQodiwgJlB5SWRfb2Zmc2V0LCBQeV9Ob25lKSkgewogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgIH0KICAgICBpZiAoZXhjICE9IFB5RXhjX1N5bnRheEVycm9yKSB7Ci0gICAgICAgIGlmICghUHlPYmplY3RfSGFzQXR0clN0cmluZyh2LCAibXNnIikpIHsKKyAgICAgICAgaWYgKCFfUHlPYmplY3RfSGFzQXR0cklkKHYsICZQeUlkX21zZykpIHsKICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X1N0cih2KTsKICAgICAgICAgICAgIGlmICh0bXApIHsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyh2LCAibXNnIiwgdG1wKSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZCh2LCAmUHlJZF9tc2csIHRtcCkpCiAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHRtcCk7CiAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICAgICAgaWYgKCFQeU9iamVjdF9IYXNBdHRyU3RyaW5nKHYsICJwcmludF9maWxlX2FuZF9saW5lIikpIHsKLSAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHYsICJwcmludF9maWxlX2FuZF9saW5lIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X05vbmUpKQorICAgICAgICBpZiAoIV9QeU9iamVjdF9IYXNBdHRySWQodiwgJlB5SWRfcHJpbnRfZmlsZV9hbmRfbGluZSkpIHsKKyAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHYsICZQeUlkX3ByaW50X2ZpbGVfYW5kX2xpbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9Ob25lKSkKICAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICB9CiAgICAgfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL2ZpbGV1dGlscy5jIGIvUHl0aG9uL2ZpbGV1dGlscy5jCmluZGV4IGM1NjNlYWEuLjUwMWNiOGMgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9maWxldXRpbHMuYworKysgYi9QeXRob24vZmlsZXV0aWxzLmMKQEAgLTMsNiArMyw0MCBAQAogIyAgaW5jbHVkZSA8d2luZG93cy5oPgogI2VuZGlmCiAKKyNpZmRlZiBIQVZFX0xBTkdJTkZPX0gKKyNpbmNsdWRlIDxsYW5naW5mby5oPgorI2VuZGlmCisKK1B5T2JqZWN0ICoKK19QeV9kZXZpY2VfZW5jb2RpbmcoaW50IGZkKQoreworI2lmIGRlZmluZWQoTVNfV0lORE9XUykgfHwgZGVmaW5lZChNU19XSU42NCkKKyAgICBVSU5UIGNwOworI2VuZGlmCisgICAgaWYgKCFfUHlWZXJpZnlfZmQoZmQpIHx8ICFpc2F0dHkoZmQpKSB7CisgICAgICAgIFB5X1JFVFVSTl9OT05FOworICAgIH0KKyNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpIHx8IGRlZmluZWQoTVNfV0lONjQpCisgICAgaWYgKGZkID09IDApCisgICAgICAgIGNwID0gR2V0Q29uc29sZUNQKCk7CisgICAgZWxzZSBpZiAoZmQgPT0gMSB8fCBmZCA9PSAyKQorICAgICAgICBjcCA9IEdldENvbnNvbGVPdXRwdXRDUCgpOworICAgIGVsc2UKKyAgICAgICAgY3AgPSAwOworICAgIC8qIEdldENvbnNvbGVDUCgpIGFuZCBHZXRDb25zb2xlT3V0cHV0Q1AoKSByZXR1cm4gMCBpZiB0aGUgYXBwbGljYXRpb24KKyAgICAgICBoYXMgbm8gY29uc29sZSAqLworICAgIGlmIChjcCAhPSAwKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoImNwJXUiLCAodW5zaWduZWQgaW50KWNwKTsKKyNlbGlmIGRlZmluZWQoQ09ERVNFVCkKKyAgICB7CisgICAgICAgIGNoYXIgKmNvZGVzZXQgPSBubF9sYW5naW5mbyhDT0RFU0VUKTsKKyAgICAgICAgaWYgKGNvZGVzZXQgIT0gTlVMTCAmJiBjb2Rlc2V0WzBdICE9IDApCisgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoY29kZXNldCk7CisgICAgfQorI2VuZGlmCisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKICNpZmRlZiBIQVZFX1NUQVQKIAogLyogRGVjb2RlIGEgYnl0ZSBzdHJpbmcgZnJvbSB0aGUgbG9jYWxlIGVuY29kaW5nIHdpdGggdGhlCkBAIC0xNiw3ICs1MCw5IEBACiAgICBSZXR1cm4gYSBwb2ludGVyIHRvIGEgbmV3bHkgYWxsb2NhdGVkIHdpZGUgY2hhcmFjdGVyIHN0cmluZyAodXNlCiAgICBQeU1lbV9GcmVlKCkgdG8gZnJlZSB0aGUgbWVtb3J5KSBhbmQgd3JpdGUgdGhlIG51bWJlciBvZiB3cml0dGVuIHdpZGUKICAgIGNoYXJhY3RlcnMgZXhjbHVkaW5nIHRoZSBudWxsIGNoYXJhY3RlciBpbnRvICpzaXplIGlmIHNpemUgaXMgbm90IE5VTEwsIG9yCi0gICBOVUxMIG9uIGVycm9yIChjb252ZXJzaW9uIG9yIG1lbW9yeSBhbGxvY2F0aW9uIGVycm9yKS4KKyAgIE5VTEwgb24gZXJyb3IgKGRlY29kaW5nIG9yIG1lbW9yeSBhbGxvY2F0aW9uIGVycm9yKS4gSWYgc2l6ZSBpcyBub3QgTlVMTCwKKyAgICpzaXplIGlzIHNldCB0byAoc2l6ZV90KS0xIG9uIG1lbW9yeSBlcnJvciBhbmQgKHNpemVfdCktMiBvbiBkZWNvZGluZworICAgZXJyb3IuCiAKICAgIENvbnZlcnNpb24gZXJyb3JzIHNob3VsZCBuZXZlciBoYXBwZW4sIHVubGVzcyB0aGVyZSBpcyBhIGJ1ZyBpbiB0aGUgQwogICAgbGlicmFyeS4gKi8KQEAgLTgyLDggKzExOCw5IEBACiAgICAgICAgICAgICAgICBzaW5jZSB3ZSBwcm92aWRlIGV2ZXJ5dGhpbmcgdGhhdCB3ZSBoYXZlIC0KICAgICAgICAgICAgICAgIHVubGVzcyB0aGVyZSBpcyBhIGJ1ZyBpbiB0aGUgQyBsaWJyYXJ5LCBvciBJCiAgICAgICAgICAgICAgICBtaXN1bmRlcnN0b29kIGhvdyBtYnJ0b3djIHdvcmtzLiAqLwotICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJ1bmV4cGVjdGVkIG1icnRvd2MgcmVzdWx0IC0yXG4iKTsKICAgICAgICAgICAgIFB5TWVtX0ZyZWUocmVzKTsKKyAgICAgICAgICAgIGlmIChzaXplICE9IE5VTEwpCisgICAgICAgICAgICAgICAgKnNpemUgPSAoc2l6ZV90KS0yOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgaWYgKGNvbnZlcnRlZCA9PSAoc2l6ZV90KS0xKSB7CkBAIC0xMTIsNyArMTQ5LDggQEAKICAgICAgICBpcyBBU0NJSSAoaS5lLiBlc2NhcGUgYWxsIGJ5dGVzID4gMTI4LiBUaGlzIHdpbGwgc3RpbGwgcm91bmR0cmlwCiAgICAgICAgY29ycmVjdGx5IGluIHRoZSBsb2NhbGUncyBjaGFyc2V0LCB3aGljaCBtdXN0IGJlIGFuIEFTQ0lJIHN1cGVyc2V0LiAqLwogICAgIHJlcyA9IFB5TWVtX01hbGxvYygoc3RybGVuKGFyZykrMSkqc2l6ZW9mKHdjaGFyX3QpKTsKLSAgICBpZiAoIXJlcykgZ290byBvb207CisgICAgaWYgKCFyZXMpCisgICAgICAgIGdvdG8gb29tOwogICAgIGluID0gKHVuc2lnbmVkIGNoYXIqKWFyZzsKICAgICBvdXQgPSByZXM7CiAgICAgd2hpbGUoKmluKQpAQCAtMTI2LDcgKzE2NCw4IEBACiAgICAgICAgICpzaXplID0gb3V0IC0gcmVzOwogICAgIHJldHVybiByZXM7CiBvb206Ci0gICAgZnByaW50ZihzdGRlcnIsICJvdXQgb2YgbWVtb3J5XG4iKTsKKyAgICBpZiAoc2l6ZSAhPSBOVUxMKQorICAgICAgICAqc2l6ZSA9IChzaXplX3QpLTE7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKQEAgLTEzNywxMCArMTc2LDEwIEBACiAgICBUaGlzIGZ1bmN0aW9uIGlzIHRoZSByZXZlcnNlIG9mIF9QeV9jaGFyMndjaGFyKCkuCiAKICAgIFJldHVybiBhIHBvaW50ZXIgdG8gYSBuZXdseSBhbGxvY2F0ZWQgYnl0ZSBzdHJpbmcgKHVzZSBQeU1lbV9GcmVlKCkgdG8gZnJlZQotICAgdGhlIG1lbW9yeSksIG9yIE5VTEwgb24gY29udmVyc2lvbiBvciBtZW1vcnkgYWxsb2NhdGlvbiBlcnJvci4KKyAgIHRoZSBtZW1vcnkpLCBvciBOVUxMIG9uIGVuY29kaW5nIG9yIG1lbW9yeSBhbGxvY2F0aW9uIGVycm9yLgogCiAgICBJZiBlcnJvcl9wb3MgaXMgbm90IE5VTEw6ICplcnJvcl9wb3MgaXMgdGhlIGluZGV4IG9mIHRoZSBpbnZhbGlkIGNoYXJhY3RlcgotICAgb24gY29udmVyc2lvbiBlcnJvciwgb3IgKHNpemVfdCktMSBvdGhlcndpc2UuICovCisgICBvbiBlbmNvZGluZyBlcnJvciwgb3IgKHNpemVfdCktMSBvdGhlcndpc2UuICovCiBjaGFyKgogX1B5X3djaGFyMmNoYXIoY29uc3Qgd2NoYXJfdCAqdGV4dCwgc2l6ZV90ICplcnJvcl9wb3MpCiB7CkBAIC0yMzUsOCArMjc0LDggQEAKIC8qIENhbGwgX3dzdGF0KCkgb24gV2luZG93cywgb3IgZW5jb2RlIHRoZSBwYXRoIHRvIHRoZSBmaWxlc3lzdGVtIGVuY29kaW5nIGFuZAogICAgY2FsbCBzdGF0KCkgb3RoZXJ3aXNlLiBPbmx5IGZpbGwgc3RfbW9kZSBhdHRyaWJ1dGUgb24gV2luZG93cy4KIAotICAgUmV0dXJuIDAgb24gc3VjY2VzcywgLTEgb24gX3dzdGF0KCkgLyBzdGF0KCkgZXJyb3Igb3IgKGlmIFB5RXJyX09jY3VycmVkKCkpCi0gICB1bmljb2RlIGVycm9yLiAqLworICAgUmV0dXJuIDAgb24gc3VjY2VzcywgLTEgb24gX3dzdGF0KCkgLyBzdGF0KCkgZXJyb3IsIC0yIGlmIGFuIGV4Y2VwdGlvbiB3YXMKKyAgIHJhaXNlZC4gKi8KIAogaW50CiBfUHlfc3RhdChQeU9iamVjdCAqcGF0aCwgc3RydWN0IHN0YXQgKnN0YXRidWYpCkBAIC0yNDQsOCArMjgzLDEyIEBACiAjaWZkZWYgTVNfV0lORE9XUwogICAgIGludCBlcnI7CiAgICAgc3RydWN0IF9zdGF0IHdzdGF0YnVmOworICAgIHdjaGFyX3QgKndwYXRoOwogCi0gICAgZXJyID0gX3dzdGF0KFB5VW5pY29kZV9BU19VTklDT0RFKHBhdGgpLCAmd3N0YXRidWYpOworICAgIHdwYXRoID0gUHlVbmljb2RlX0FzVW5pY29kZShwYXRoKTsKKyAgICBpZiAod3BhdGggPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0yOworICAgIGVyciA9IF93c3RhdCh3cGF0aCwgJndzdGF0YnVmKTsKICAgICBpZiAoIWVycikKICAgICAgICAgc3RhdGJ1Zi0+c3RfbW9kZSA9IHdzdGF0YnVmLnN0X21vZGU7CiAgICAgcmV0dXJuIGVycjsKQEAgLTI1Myw3ICsyOTYsNyBAQAogICAgIGludCByZXQ7CiAgICAgUHlPYmplY3QgKmJ5dGVzID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChwYXRoKTsKICAgICBpZiAoYnl0ZXMgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIC0xOworICAgICAgICByZXR1cm4gLTI7CiAgICAgcmV0ID0gc3RhdChQeUJ5dGVzX0FTX1NUUklORyhieXRlcyksIHN0YXRidWYpOwogICAgIFB5X0RFQ1JFRihieXRlcyk7CiAgICAgcmV0dXJuIHJldDsKQEAgLTI5NywxOCArMzQwLDI5IEBACiBfUHlfZm9wZW4oUHlPYmplY3QgKnBhdGgsIGNvbnN0IGNoYXIgKm1vZGUpCiB7CiAjaWZkZWYgTVNfV0lORE9XUworICAgIHdjaGFyX3QgKndwYXRoOwogICAgIHdjaGFyX3Qgd21vZGVbMTBdOwogICAgIGludCB1c2l6ZTsKIAorICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHBhdGgpKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAic3RyIGZpbGUgcGF0aCBleHBlY3RlZCB1bmRlciBXaW5kb3dzLCBnb3QgJVIiLAorICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShwYXRoKSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICB3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocGF0aCk7CisgICAgaWYgKHdwYXRoID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgdXNpemUgPSBNdWx0aUJ5dGVUb1dpZGVDaGFyKENQX0FDUCwgMCwgbW9kZSwgLTEsIHdtb2RlLCBzaXplb2Yod21vZGUpKTsKICAgICBpZiAodXNpemUgPT0gMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXR1cm4gX3dmb3BlbihQeVVuaWNvZGVfQVNfVU5JQ09ERShwYXRoKSwgd21vZGUpOworICAgIHJldHVybiBfd2ZvcGVuKHdwYXRoLCB3bW9kZSk7CiAjZWxzZQogICAgIEZJTEUgKmY7Ci0gICAgUHlPYmplY3QgKmJ5dGVzID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChwYXRoKTsKLSAgICBpZiAoYnl0ZXMgPT0gTlVMTCkKKyAgICBQeU9iamVjdCAqYnl0ZXM7CisgICAgaWYgKCFQeVVuaWNvZGVfRlNDb252ZXJ0ZXIocGF0aCwgJmJ5dGVzKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgZiA9IGZvcGVuKFB5Qnl0ZXNfQVNfU1RSSU5HKGJ5dGVzKSwgbW9kZSk7CiAgICAgUHlfREVDUkVGKGJ5dGVzKTsKQEAgLTMxOSw3ICszNzMsNyBAQAogI2lmZGVmIEhBVkVfUkVBRExJTksKIAogLyogUmVhZCB2YWx1ZSBvZiBzeW1ib2xpYyBsaW5rLiBFbmNvZGUgdGhlIHBhdGggdG8gdGhlIGxvY2FsZSBlbmNvZGluZywgZGVjb2RlCi0gICB0aGUgcmVzdWx0IGZyb20gdGhlIGxvY2FsZSBlbmNvZGluZy4gKi8KKyAgIHRoZSByZXN1bHQgZnJvbSB0aGUgbG9jYWxlIGVuY29kaW5nLiBSZXR1cm4gLTEgb24gZXJyb3IuICovCiAKIGludAogX1B5X3dyZWFkbGluayhjb25zdCB3Y2hhcl90ICpwYXRoLCB3Y2hhcl90ICpidWYsIHNpemVfdCBidWZzaXopCkBAIC0zNjMsNyArNDE3LDggQEAKICNpZmRlZiBIQVZFX1JFQUxQQVRICiAKIC8qIFJldHVybiB0aGUgY2Fub25pY2FsaXplZCBhYnNvbHV0ZSBwYXRobmFtZS4gRW5jb2RlIHBhdGggdG8gdGhlIGxvY2FsZQotICAgZW5jb2RpbmcsIGRlY29kZSB0aGUgcmVzdWx0IGZyb20gdGhlIGxvY2FsZSBlbmNvZGluZy4gKi8KKyAgIGVuY29kaW5nLCBkZWNvZGUgdGhlIHJlc3VsdCBmcm9tIHRoZSBsb2NhbGUgZW5jb2RpbmcuCisgICBSZXR1cm4gTlVMTCBvbiBlcnJvci4gKi8KIAogd2NoYXJfdCoKIF9QeV93cmVhbHBhdGgoY29uc3Qgd2NoYXJfdCAqcGF0aCwKQEAgLTQwMSw3ICs0NTYsOCBAQAogI2VuZGlmCiAKIC8qIEdldCB0aGUgY3VycmVudCBkaXJlY3RvcnkuIHNpemUgaXMgdGhlIGJ1ZmZlciBzaXplIGluIHdpZGUgY2hhcmFjdGVycwotICAgaW5jbHVkaW5nIHRoZSBudWxsIGNoYXJhY3Rlci4gRGVjb2RlIHRoZSBwYXRoIGZyb20gdGhlIGxvY2FsZSBlbmNvZGluZy4gKi8KKyAgIGluY2x1ZGluZyB0aGUgbnVsbCBjaGFyYWN0ZXIuIERlY29kZSB0aGUgcGF0aCBmcm9tIHRoZSBsb2NhbGUgZW5jb2RpbmcuCisgICBSZXR1cm4gTlVMTCBvbiBlcnJvci4gKi8KIAogd2NoYXJfdCoKIF9QeV93Z2V0Y3dkKHdjaGFyX3QgKmJ1Ziwgc2l6ZV90IHNpemUpCmRpZmYgLS1naXQgYS9QeXRob24vZm9ybWF0dGVyX3VuaWNvZGUuYyBiL1B5dGhvbi9mb3JtYXR0ZXJfdW5pY29kZS5jCmluZGV4IGMzNTA5MDcuLjU4ZTY2ZTAgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9mb3JtYXR0ZXJfdW5pY29kZS5jCisrKyBiL1B5dGhvbi9mb3JtYXR0ZXJfdW5pY29kZS5jCkBAIC0zLDEyICszLDE1MTAgQEAKICAgIG9mIGludC5fX2Zsb2F0X18sIGV0Yy4sIHRoYXQgdGFrZSBhbmQgcmV0dXJuIHVuaWNvZGUgb2JqZWN0cyAqLwogCiAjaW5jbHVkZSAiUHl0aG9uLmgiCi0jaW5jbHVkZSAiLi4vT2JqZWN0cy9zdHJpbmdsaWIvdW5pY29kZWRlZnMuaCIKKyNpbmNsdWRlIDxsb2NhbGUuaD4KKworLyogUmFpc2VzIGFuIGV4Y2VwdGlvbiBhYm91dCBhbiB1bmtub3duIHByZXNlbnRhdGlvbiB0eXBlIGZvciB0aGlzCisgKiB0eXBlLiAqLworCitzdGF0aWMgdm9pZAordW5rbm93bl9wcmVzZW50YXRpb25fdHlwZShQeV9VQ1M0IHByZXNlbnRhdGlvbl90eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiB0eXBlX25hbWUpCit7CisgICAgLyogJWMgbWlnaHQgYmUgb3V0LW9mLXJhbmdlLCBoZW5jZSB0aGUgdHdvIGNhc2VzLiAqLworICAgIGlmIChwcmVzZW50YXRpb25fdHlwZSA+IDMyICYmIHByZXNlbnRhdGlvbl90eXBlIDwgMTI4KQorICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIGZvcm1hdCBjb2RlICclYycgIgorICAgICAgICAgICAgICAgICAgICAgImZvciBvYmplY3Qgb2YgdHlwZSAnJS4yMDBzJyIsCisgICAgICAgICAgICAgICAgICAgICAoY2hhcilwcmVzZW50YXRpb25fdHlwZSwKKyAgICAgICAgICAgICAgICAgICAgIHR5cGVfbmFtZSk7CisgICAgZWxzZQorICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJVbmtub3duIGZvcm1hdCBjb2RlICdcXHgleCcgIgorICAgICAgICAgICAgICAgICAgICAgImZvciBvYmplY3Qgb2YgdHlwZSAnJS4yMDBzJyIsCisgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgaW50KXByZXNlbnRhdGlvbl90eXBlLAorICAgICAgICAgICAgICAgICAgICAgdHlwZV9uYW1lKTsKK30KKworc3RhdGljIHZvaWQKK2ludmFsaWRfY29tbWFfdHlwZShQeV9VQ1M0IHByZXNlbnRhdGlvbl90eXBlKQoreworICAgIGlmIChwcmVzZW50YXRpb25fdHlwZSA+IDMyICYmIHByZXNlbnRhdGlvbl90eXBlIDwgMTI4KQorICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJDYW5ub3Qgc3BlY2lmeSAnLCcgd2l0aCAnJWMnLiIsCisgICAgICAgICAgICAgICAgICAgICAoY2hhcilwcmVzZW50YXRpb25fdHlwZSk7CisgICAgZWxzZQorICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJDYW5ub3Qgc3BlY2lmeSAnLCcgd2l0aCAnXFx4JXgnLiIsCisgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgaW50KXByZXNlbnRhdGlvbl90eXBlKTsKK30KKworLyoKKyAgICBnZXRfaW50ZWdlciBjb25zdW1lcyAwIG9yIG1vcmUgZGVjaW1hbCBkaWdpdCBjaGFyYWN0ZXJzIGZyb20gYW4KKyAgICBpbnB1dCBzdHJpbmcsIHVwZGF0ZXMgKnJlc3VsdCB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHBvc2l0aXZlCisgICAgaW50ZWdlciwgYW5kIHJldHVybnMgdGhlIG51bWJlciBvZiBkaWdpdHMgY29uc3VtZWQuCisKKyAgICByZXR1cm5zIC0xIG9uIGVycm9yLgorKi8KK3N0YXRpYyBpbnQKK2dldF9pbnRlZ2VyKFB5T2JqZWN0ICpzdHIsIFB5X3NzaXplX3QgKnBvcywgUHlfc3NpemVfdCBlbmQsCisgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpyZXN1bHQpCit7CisgICAgUHlfc3NpemVfdCBhY2N1bXVsYXRvciwgZGlnaXR2YWw7CisgICAgaW50IG51bWRpZ2l0czsKKyAgICBhY2N1bXVsYXRvciA9IG51bWRpZ2l0cyA9IDA7CisgICAgZm9yICg7OygqcG9zKSsrLCBudW1kaWdpdHMrKykgeworICAgICAgICBpZiAoKnBvcyA+PSBlbmQpCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGlnaXR2YWwgPSBQeV9VTklDT0RFX1RPREVDSU1BTChQeVVuaWNvZGVfUkVBRF9DSEFSKHN0ciwgKnBvcykpOworICAgICAgICBpZiAoZGlnaXR2YWwgPCAwKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIC8qCisgICAgICAgICAgIERldGVjdCBwb3NzaWJsZSBvdmVyZmxvdyBiZWZvcmUgaXQgaGFwcGVuczoKKworICAgICAgICAgICAgICBhY2N1bXVsYXRvciAqIDEwICsgZGlnaXR2YWwgPiBQWV9TU0laRV9UX01BWCBpZiBhbmQgb25seSBpZgorICAgICAgICAgICAgICBhY2N1bXVsYXRvciA+IChQWV9TU0laRV9UX01BWCAtIGRpZ2l0dmFsKSAvIDEwLgorICAgICAgICAqLworICAgICAgICBpZiAoYWNjdW11bGF0b3IgPiAoUFlfU1NJWkVfVF9NQVggLSBkaWdpdHZhbCkgLyAxMCkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIlRvbyBtYW55IGRlY2ltYWwgZGlnaXRzIGluIGZvcm1hdCBzdHJpbmciKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBhY2N1bXVsYXRvciA9IGFjY3VtdWxhdG9yICogMTAgKyBkaWdpdHZhbDsKKyAgICB9CisgICAgKnJlc3VsdCA9IGFjY3VtdWxhdG9yOworICAgIHJldHVybiBudW1kaWdpdHM7Cit9CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKiogc3RhbmRhcmQgZm9ybWF0IHNwZWNpZmllciBwYXJzaW5nICoqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyogcmV0dXJucyB0cnVlIGlmIHRoaXMgY2hhcmFjdGVyIGlzIGEgc3BlY2lmaWVyIGFsaWdubWVudCB0b2tlbiAqLworUHlfTE9DQUxfSU5MSU5FKGludCkKK2lzX2FsaWdubWVudF90b2tlbihQeV9VQ1M0IGMpCit7CisgICAgc3dpdGNoIChjKSB7CisgICAgY2FzZSAnPCc6IGNhc2UgJz4nOiBjYXNlICc9JzogY2FzZSAnXic6CisgICAgICAgIHJldHVybiAxOworICAgIGRlZmF1bHQ6CisgICAgICAgIHJldHVybiAwOworICAgIH0KK30KKworLyogcmV0dXJucyB0cnVlIGlmIHRoaXMgY2hhcmFjdGVyIGlzIGEgc2lnbiBlbGVtZW50ICovCitQeV9MT0NBTF9JTkxJTkUoaW50KQoraXNfc2lnbl9lbGVtZW50KFB5X1VDUzQgYykKK3sKKyAgICBzd2l0Y2ggKGMpIHsKKyAgICBjYXNlICcgJzogY2FzZSAnKyc6IGNhc2UgJy0nOgorICAgICAgICByZXR1cm4gMTsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gMDsKKyAgICB9Cit9CiAKIAotI2RlZmluZSBGT1JNQVRfU1RSSU5HICBfUHlVbmljb2RlX0Zvcm1hdEFkdmFuY2VkCi0jZGVmaW5lIEZPUk1BVF9MT05HICAgIF9QeUxvbmdfRm9ybWF0QWR2YW5jZWQKLSNkZWZpbmUgRk9STUFUX0ZMT0FUICAgX1B5RmxvYXRfRm9ybWF0QWR2YW5jZWQKLSNkZWZpbmUgRk9STUFUX0NPTVBMRVggX1B5Q29tcGxleF9Gb3JtYXRBZHZhbmNlZAordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5X1VDUzQgZmlsbF9jaGFyOworICAgIFB5X1VDUzQgYWxpZ247CisgICAgaW50IGFsdGVybmF0ZTsKKyAgICBQeV9VQ1M0IHNpZ247CisgICAgUHlfc3NpemVfdCB3aWR0aDsKKyAgICBpbnQgdGhvdXNhbmRzX3NlcGFyYXRvcnM7CisgICAgUHlfc3NpemVfdCBwcmVjaXNpb247CisgICAgUHlfVUNTNCB0eXBlOworfSBJbnRlcm5hbEZvcm1hdFNwZWM7CiAKLSNpbmNsdWRlICIuLi9PYmplY3RzL3N0cmluZ2xpYi9mb3JtYXR0ZXIuaCIKKyNpZiAwCisvKiBPY2Nhc3Npb25hbGx5IHVzZWZ1bCBmb3IgZGVidWdnaW5nLiBTaG91bGQgbm9ybWFsbHkgYmUgY29tbWVudGVkIG91dC4gKi8KK3N0YXRpYyB2b2lkCitERUJVR19QUklOVF9GT1JNQVRfU1BFQyhJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKK3sKKyAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiBmaWxsX2NoYXIgJWRcbiIsIGZvcm1hdC0+ZmlsbF9jaGFyKTsKKyAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiBhbGlnbiAlZFxuIiwgZm9ybWF0LT5hbGlnbik7CisgICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogYWx0ZXJuYXRlICVkXG4iLCBmb3JtYXQtPmFsdGVybmF0ZSk7CisgICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogc2lnbiAlZFxuIiwgZm9ybWF0LT5zaWduKTsKKyAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiB3aWR0aCAlemRcbiIsIGZvcm1hdC0+d2lkdGgpOworICAgIHByaW50ZigiaW50ZXJuYWwgZm9ybWF0IHNwZWM6IHRob3VzYW5kc19zZXBhcmF0b3JzICVkXG4iLAorICAgICAgICAgICBmb3JtYXQtPnRob3VzYW5kc19zZXBhcmF0b3JzKTsKKyAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiBwcmVjaXNpb24gJXpkXG4iLCBmb3JtYXQtPnByZWNpc2lvbik7CisgICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogdHlwZSAlY1xuIiwgZm9ybWF0LT50eXBlKTsKKyAgICBwcmludGYoIlxuIik7Cit9CisjZW5kaWYKKworCisvKgorICBwdHIgcG9pbnRzIHRvIHRoZSBzdGFydCBvZiB0aGUgZm9ybWF0X3NwZWMsIGVuZCBwb2ludHMganVzdCBwYXN0IGl0cyBlbmQuCisgIGZpbGxzIGluIGZvcm1hdCB3aXRoIHRoZSBwYXJzZWQgaW5mb3JtYXRpb24uCisgIHJldHVybnMgMSBvbiBzdWNjZXNzLCAwIG9uIGZhaWx1cmUuCisgIGlmIGZhaWx1cmUsIHNldHMgdGhlIGV4Y2VwdGlvbgorKi8KK3N0YXRpYyBpbnQKK3BhcnNlX2ludGVybmFsX3JlbmRlcl9mb3JtYXRfc3BlYyhQeU9iamVjdCAqZm9ybWF0X3NwZWMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW50ZXJuYWxGb3JtYXRTcGVjICpmb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciBkZWZhdWx0X3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciBkZWZhdWx0X2FsaWduKQoreworICAgIFB5X3NzaXplX3QgcG9zID0gc3RhcnQ7CisgICAgLyogZW5kLXBvcyBpcyB1c2VkIHRocm91Z2hvdXQgdGhpcyBjb2RlIHRvIHNwZWNpZnkgdGhlIGxlbmd0aCBvZgorICAgICAgIHRoZSBpbnB1dCBzdHJpbmcgKi8KKyNkZWZpbmUgUkVBRF9zcGVjKGluZGV4KSBQeVVuaWNvZGVfUkVBRF9DSEFSKGZvcm1hdF9zcGVjLCBpbmRleCkKKworICAgIFB5X3NzaXplX3QgY29uc3VtZWQ7CisgICAgaW50IGFsaWduX3NwZWNpZmllZCA9IDA7CisKKyAgICBmb3JtYXQtPmZpbGxfY2hhciA9ICdcMCc7CisgICAgZm9ybWF0LT5hbGlnbiA9IGRlZmF1bHRfYWxpZ247CisgICAgZm9ybWF0LT5hbHRlcm5hdGUgPSAwOworICAgIGZvcm1hdC0+c2lnbiA9ICdcMCc7CisgICAgZm9ybWF0LT53aWR0aCA9IC0xOworICAgIGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMgPSAwOworICAgIGZvcm1hdC0+cHJlY2lzaW9uID0gLTE7CisgICAgZm9ybWF0LT50eXBlID0gZGVmYXVsdF90eXBlOworCisgICAgLyogSWYgdGhlIHNlY29uZCBjaGFyIGlzIGFuIGFsaWdubWVudCB0b2tlbiwKKyAgICAgICB0aGVuIHBhcnNlIHRoZSBmaWxsIGNoYXIgKi8KKyAgICBpZiAoZW5kLXBvcyA+PSAyICYmIGlzX2FsaWdubWVudF90b2tlbihSRUFEX3NwZWMocG9zKzEpKSkgeworICAgICAgICBmb3JtYXQtPmFsaWduID0gUkVBRF9zcGVjKHBvcysxKTsKKyAgICAgICAgZm9ybWF0LT5maWxsX2NoYXIgPSBSRUFEX3NwZWMocG9zKTsKKyAgICAgICAgYWxpZ25fc3BlY2lmaWVkID0gMTsKKyAgICAgICAgcG9zICs9IDI7CisgICAgfQorICAgIGVsc2UgaWYgKGVuZC1wb3MgPj0gMSAmJiBpc19hbGlnbm1lbnRfdG9rZW4oUkVBRF9zcGVjKHBvcykpKSB7CisgICAgICAgIGZvcm1hdC0+YWxpZ24gPSBSRUFEX3NwZWMocG9zKTsKKyAgICAgICAgYWxpZ25fc3BlY2lmaWVkID0gMTsKKyAgICAgICAgKytwb3M7CisgICAgfQorCisgICAgLyogUGFyc2UgdGhlIHZhcmlvdXMgc2lnbiBvcHRpb25zICovCisgICAgaWYgKGVuZC1wb3MgPj0gMSAmJiBpc19zaWduX2VsZW1lbnQoUkVBRF9zcGVjKHBvcykpKSB7CisgICAgICAgIGZvcm1hdC0+c2lnbiA9IFJFQURfc3BlYyhwb3MpOworICAgICAgICArK3BvczsKKyAgICB9CisKKyAgICAvKiBJZiB0aGUgbmV4dCBjaGFyYWN0ZXIgaXMgIywgd2UncmUgaW4gYWx0ZXJuYXRlIG1vZGUuICBUaGlzIG9ubHkKKyAgICAgICBhcHBsaWVzIHRvIGludGVnZXJzLiAqLworICAgIGlmIChlbmQtcG9zID49IDEgJiYgUkVBRF9zcGVjKHBvcykgPT0gJyMnKSB7CisgICAgICAgIGZvcm1hdC0+YWx0ZXJuYXRlID0gMTsKKyAgICAgICAgKytwb3M7CisgICAgfQorCisgICAgLyogVGhlIHNwZWNpYWwgY2FzZSBmb3IgMC1wYWRkaW5nIChiYWNrd2FyZHMgY29tcGF0KSAqLworICAgIGlmIChmb3JtYXQtPmZpbGxfY2hhciA9PSAnXDAnICYmIGVuZC1wb3MgPj0gMSAmJiBSRUFEX3NwZWMocG9zKSA9PSAnMCcpIHsKKyAgICAgICAgZm9ybWF0LT5maWxsX2NoYXIgPSAnMCc7CisgICAgICAgIGlmICghYWxpZ25fc3BlY2lmaWVkKSB7CisgICAgICAgICAgICBmb3JtYXQtPmFsaWduID0gJz0nOworICAgICAgICB9CisgICAgICAgICsrcG9zOworICAgIH0KKworICAgIGNvbnN1bWVkID0gZ2V0X2ludGVnZXIoZm9ybWF0X3NwZWMsICZwb3MsIGVuZCwgJmZvcm1hdC0+d2lkdGgpOworICAgIGlmIChjb25zdW1lZCA9PSAtMSkKKyAgICAgICAgLyogT3ZlcmZsb3cgZXJyb3IuIEV4Y2VwdGlvbiBhbHJlYWR5IHNldC4gKi8KKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICAvKiBJZiBjb25zdW1lZCBpcyAwLCB3ZSBkaWRuJ3QgY29uc3VtZSBhbnkgY2hhcmFjdGVycyBmb3IgdGhlCisgICAgICAgd2lkdGguIEluIHRoYXQgY2FzZSwgcmVzZXQgdGhlIHdpZHRoIHRvIC0xLCBiZWNhdXNlCisgICAgICAgZ2V0X2ludGVnZXIoKSB3aWxsIGhhdmUgc2V0IGl0IHRvIHplcm8uIC0xIGlzIGhvdyB3ZSByZWNvcmQKKyAgICAgICB0aGF0IHRoZSB3aWR0aCB3YXNuJ3Qgc3BlY2lmaWVkLiAqLworICAgIGlmIChjb25zdW1lZCA9PSAwKQorICAgICAgICBmb3JtYXQtPndpZHRoID0gLTE7CisKKyAgICAvKiBDb21tYSBzaWduaWZpZXMgYWRkIHRob3VzYW5kcyBzZXBhcmF0b3JzICovCisgICAgaWYgKGVuZC1wb3MgJiYgUkVBRF9zcGVjKHBvcykgPT0gJywnKSB7CisgICAgICAgIGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMgPSAxOworICAgICAgICArK3BvczsKKyAgICB9CisKKyAgICAvKiBQYXJzZSBmaWVsZCBwcmVjaXNpb24gKi8KKyAgICBpZiAoZW5kLXBvcyAmJiBSRUFEX3NwZWMocG9zKSA9PSAnLicpIHsKKyAgICAgICAgKytwb3M7CisKKyAgICAgICAgY29uc3VtZWQgPSBnZXRfaW50ZWdlcihmb3JtYXRfc3BlYywgJnBvcywgZW5kLCAmZm9ybWF0LT5wcmVjaXNpb24pOworICAgICAgICBpZiAoY29uc3VtZWQgPT0gLTEpCisgICAgICAgICAgICAvKiBPdmVyZmxvdyBlcnJvci4gRXhjZXB0aW9uIGFscmVhZHkgc2V0LiAqLworICAgICAgICAgICAgcmV0dXJuIDA7CisKKyAgICAgICAgLyogTm90IGhhdmluZyBhIHByZWNpc2lvbiBhZnRlciBhIGRvdCBpcyBhbiBlcnJvci4gKi8KKyAgICAgICAgaWYgKGNvbnN1bWVkID09IDApIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJGb3JtYXQgc3BlY2lmaWVyIG1pc3NpbmcgcHJlY2lzaW9uIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorCisgICAgfQorCisgICAgLyogRmluYWxseSwgcGFyc2UgdGhlIHR5cGUgZmllbGQuICovCisKKyAgICBpZiAoZW5kLXBvcyA+IDEpIHsKKyAgICAgICAgLyogTW9yZSB0aGFuIG9uZSBjaGFyIHJlbWFpbiwgaW52YWxpZCBmb3JtYXQgc3BlY2lmaWVyLiAqLworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwgIkludmFsaWQgZm9ybWF0IHNwZWNpZmllciIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBpZiAoZW5kLXBvcyA9PSAxKSB7CisgICAgICAgIGZvcm1hdC0+dHlwZSA9IFJFQURfc3BlYyhwb3MpOworICAgICAgICArK3BvczsKKyAgICB9CisKKyAgICAvKiBEbyBhcyBtdWNoIHZhbGlkYXRpbmcgYXMgd2UgY2FuLCBqdXN0IGJ5IGxvb2tpbmcgYXQgdGhlIGZvcm1hdAorICAgICAgIHNwZWNpZmllci4gIERvIG5vdCB0YWtlIGludG8gYWNjb3VudCB3aGF0IHR5cGUgb2YgZm9ybWF0dGluZworICAgICAgIHdlJ3JlIGRvaW5nIChpbnQsIGZsb2F0LCBzdHJpbmcpLiAqLworCisgICAgaWYgKGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMpIHsKKyAgICAgICAgc3dpdGNoIChmb3JtYXQtPnR5cGUpIHsKKyAgICAgICAgY2FzZSAnZCc6CisgICAgICAgIGNhc2UgJ2UnOgorICAgICAgICBjYXNlICdmJzoKKyAgICAgICAgY2FzZSAnZyc6CisgICAgICAgIGNhc2UgJ0UnOgorICAgICAgICBjYXNlICdHJzoKKyAgICAgICAgY2FzZSAnJSc6CisgICAgICAgIGNhc2UgJ0YnOgorICAgICAgICBjYXNlICdcMCc6CisgICAgICAgICAgICAvKiBUaGVzZSBhcmUgYWxsb3dlZC4gU2VlIFBFUCAzNzguKi8KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgaW52YWxpZF9jb21tYV90eXBlKGZvcm1hdC0+dHlwZSk7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgIH0KKworICAgIGFzc2VydCAoZm9ybWF0LT5hbGlnbiA8PSAxMjcpOworICAgIGFzc2VydCAoZm9ybWF0LT5zaWduIDw9IDEyNyk7CisgICAgcmV0dXJuIDE7Cit9CisKKy8qIENhbGN1bGF0ZSB0aGUgcGFkZGluZyBuZWVkZWQuICovCitzdGF0aWMgdm9pZAorY2FsY19wYWRkaW5nKFB5X3NzaXplX3QgbmNoYXJzLCBQeV9zc2l6ZV90IHdpZHRoLCBQeV9VQ1M0IGFsaWduLAorICAgICAgICAgICAgIFB5X3NzaXplX3QgKm5fbHBhZGRpbmcsIFB5X3NzaXplX3QgKm5fcnBhZGRpbmcsCisgICAgICAgICAgICAgUHlfc3NpemVfdCAqbl90b3RhbCkKK3sKKyAgICBpZiAod2lkdGggPj0gMCkgeworICAgICAgICBpZiAobmNoYXJzID4gd2lkdGgpCisgICAgICAgICAgICAqbl90b3RhbCA9IG5jaGFyczsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgKm5fdG90YWwgPSB3aWR0aDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8qIG5vdCBzcGVjaWZpZWQsIHVzZSBhbGwgb2YgdGhlIGNoYXJzIGFuZCBubyBtb3JlICovCisgICAgICAgICpuX3RvdGFsID0gbmNoYXJzOworICAgIH0KKworICAgIC8qIEZpZ3VyZSBvdXQgaG93IG11Y2ggbGVhZGluZyBzcGFjZSB3ZSBuZWVkLCBiYXNlZCBvbiB0aGUKKyAgICAgICBhbGlnbmluZyAqLworICAgIGlmIChhbGlnbiA9PSAnPicpCisgICAgICAgICpuX2xwYWRkaW5nID0gKm5fdG90YWwgLSBuY2hhcnM7CisgICAgZWxzZSBpZiAoYWxpZ24gPT0gJ14nKQorICAgICAgICAqbl9scGFkZGluZyA9ICgqbl90b3RhbCAtIG5jaGFycykgLyAyOworICAgIGVsc2UgaWYgKGFsaWduID09ICc8JyB8fCBhbGlnbiA9PSAnPScpCisgICAgICAgICpuX2xwYWRkaW5nID0gMDsKKyAgICBlbHNlIHsKKyAgICAgICAgLyogV2Ugc2hvdWxkIG5ldmVyIGhhdmUgYW4gdW5zcGVjaWZpZWQgYWxpZ25tZW50LiAqLworICAgICAgICAqbl9scGFkZGluZyA9IDA7CisgICAgICAgIGFzc2VydCgwKTsKKyAgICB9CisKKyAgICAqbl9ycGFkZGluZyA9ICpuX3RvdGFsIC0gbmNoYXJzIC0gKm5fbHBhZGRpbmc7Cit9CisKKy8qIERvIHRoZSBwYWRkaW5nLCBhbmQgcmV0dXJuIGEgcG9pbnRlciB0byB3aGVyZSB0aGUgY2FsbGVyLXN1cHBsaWVkCisgICBjb250ZW50IGdvZXMuICovCitzdGF0aWMgUHlfc3NpemVfdAorZmlsbF9wYWRkaW5nKFB5T2JqZWN0ICpzLCBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IG5jaGFycywKKyAgICAgICAgICAgICBQeV9VQ1M0IGZpbGxfY2hhciwgUHlfc3NpemVfdCBuX2xwYWRkaW5nLAorICAgICAgICAgICAgIFB5X3NzaXplX3Qgbl9ycGFkZGluZykKK3sKKyAgICAvKiBQYWQgb24gbGVmdC4gKi8KKyAgICBpZiAobl9scGFkZGluZykKKyAgICAgICAgUHlVbmljb2RlX0ZpbGwocywgc3RhcnQsIHN0YXJ0ICsgbl9scGFkZGluZywgZmlsbF9jaGFyKTsKKworICAgIC8qIFBhZCBvbiByaWdodC4gKi8KKyAgICBpZiAobl9ycGFkZGluZykKKyAgICAgICAgUHlVbmljb2RlX0ZpbGwocywgc3RhcnQgKyBuY2hhcnMgKyBuX2xwYWRkaW5nLAorICAgICAgICAgICAgICAgICAgICAgICBzdGFydCArIG5jaGFycyArIG5fbHBhZGRpbmcgKyBuX3JwYWRkaW5nLCBmaWxsX2NoYXIpOworCisgICAgLyogUG9pbnRlciB0byB0aGUgdXNlciBjb250ZW50LiAqLworICAgIHJldHVybiBzdGFydCArIG5fbHBhZGRpbmc7Cit9CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKiogY29tbW9uIHJvdXRpbmVzIGZvciBudW1lcmljIGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworLyogTG9jYWxlIHR5cGUgY29kZXMuICovCisjZGVmaW5lIExUX0NVUlJFTlRfTE9DQUxFIDAKKyNkZWZpbmUgTFRfREVGQVVMVF9MT0NBTEUgMQorI2RlZmluZSBMVF9OT19MT0NBTEUgMgorCisvKiBMb2NhbGUgaW5mbyBuZWVkZWQgZm9yIGZvcm1hdHRpbmcgaW50ZWdlcnMgYW5kIHRoZSBwYXJ0IG9mIGZsb2F0cworICAgYmVmb3JlIGFuZCBpbmNsdWRpbmcgdGhlIGRlY2ltYWwuIE5vdGUgdGhhdCBsb2NhbGVzIG9ubHkgc3VwcG9ydAorICAgOC1iaXQgY2hhcnMsIG5vdCB1bmljb2RlLiAqLwordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5T2JqZWN0ICpkZWNpbWFsX3BvaW50OworICAgIFB5T2JqZWN0ICp0aG91c2FuZHNfc2VwOworICAgIGNvbnN0IGNoYXIgKmdyb3VwaW5nOworfSBMb2NhbGVJbmZvOworCisjZGVmaW5lIFNUQVRJQ19MT0NBTEVfSU5GT19JTklUIHswLCAwLCAwfQorCisvKiBkZXNjcmliZXMgdGhlIGxheW91dCBmb3IgYW4gaW50ZWdlciwgc2VlIHRoZSBjb21tZW50IGluCisgICBjYWxjX251bWJlcl93aWR0aHMoKSBmb3IgZGV0YWlscyAqLwordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5X3NzaXplX3Qgbl9scGFkZGluZzsKKyAgICBQeV9zc2l6ZV90IG5fcHJlZml4OworICAgIFB5X3NzaXplX3Qgbl9zcGFkZGluZzsKKyAgICBQeV9zc2l6ZV90IG5fcnBhZGRpbmc7CisgICAgY2hhciBzaWduOworICAgIFB5X3NzaXplX3Qgbl9zaWduOyAgICAgIC8qIG51bWJlciBvZiBkaWdpdHMgbmVlZGVkIGZvciBzaWduICgwLzEpICovCisgICAgUHlfc3NpemVfdCBuX2dyb3VwZWRfZGlnaXRzOyAvKiBTcGFjZSB0YWtlbiB1cCBieSB0aGUgZGlnaXRzLCBpbmNsdWRpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFueSBncm91cGluZyBjaGFycy4gKi8KKyAgICBQeV9zc2l6ZV90IG5fZGVjaW1hbDsgICAvKiAwIGlmIG9ubHkgYW4gaW50ZWdlciAqLworICAgIFB5X3NzaXplX3Qgbl9yZW1haW5kZXI7IC8qIERpZ2l0cyBpbiBkZWNpbWFsIGFuZC9vciBleHBvbmVudCBwYXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2x1ZGluZyB0aGUgZGVjaW1hbCBpdHNlbGYsIGlmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc2VudC4gKi8KKworICAgIC8qIFRoZXNlIDIgYXJlIG5vdCB0aGUgd2lkdGhzIG9mIGZpZWxkcywgYnV0IGFyZSBuZWVkZWQgYnkKKyAgICAgICBTVFJJTkdMSUJfR1JPVVBJTkcuICovCisgICAgUHlfc3NpemVfdCBuX2RpZ2l0czsgICAgLyogVGhlIG51bWJlciBvZiBkaWdpdHMgYmVmb3JlIGEgZGVjaW1hbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yIGV4cG9uZW50LiAqLworICAgIFB5X3NzaXplX3Qgbl9taW5fd2lkdGg7IC8qIFRoZSBtaW5fd2lkdGggd2UgdXNlZCB3aGVuIHdlIGNvbXB1dGVkCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIG5fZ3JvdXBlZF9kaWdpdHMgd2lkdGguICovCit9IE51bWJlckZpZWxkV2lkdGhzOworCisKKy8qIEdpdmVuIGEgbnVtYmVyIG9mIHRoZSBmb3JtOgorICAgZGlnaXRzW3JlbWFpbmRlcl0KKyAgIHdoZXJlIHB0ciBwb2ludHMgdG8gdGhlIHN0YXJ0IGFuZCBlbmQgcG9pbnRzIHRvIHRoZSBlbmQsIGZpbmQgd2hlcmUKKyAgICB0aGUgaW50ZWdlciBwYXJ0IGVuZHMuIFRoaXMgY291bGQgYmUgYSBkZWNpbWFsLCBhbiBleHBvbmVudCwgYm90aCwKKyAgICBvciBuZWl0aGVyLgorICAgSWYgYSBkZWNpbWFsIHBvaW50IGlzIHByZXNlbnQsIHNldCAqaGFzX2RlY2ltYWwgYW5kIGluY3JlbWVudAorICAgIHJlbWFpbmRlciBiZXlvbmQgaXQuCisgICBSZXN1bHRzIGFyZSB1bmRlZmluZWQgKGJ1dCBzaG91bGRuJ3QgY3Jhc2gpIGZvciBpbXByb3Blcmx5CisgICAgZm9ybWF0dGVkIHN0cmluZ3MuCisqLworc3RhdGljIHZvaWQKK3BhcnNlX251bWJlcihQeU9iamVjdCAqcywgUHlfc3NpemVfdCBwb3MsIFB5X3NzaXplX3QgZW5kLAorICAgICAgICAgICAgIFB5X3NzaXplX3QgKm5fcmVtYWluZGVyLCBpbnQgKmhhc19kZWNpbWFsKQoreworICAgIFB5X3NzaXplX3QgcmVtYWluZGVyOworCisgICAgd2hpbGUgKHBvczxlbmQgJiYgaXNkaWdpdChQeVVuaWNvZGVfUkVBRF9DSEFSKHMsIHBvcykpKQorICAgICAgICArK3BvczsKKyAgICByZW1haW5kZXIgPSBwb3M7CisKKyAgICAvKiBEb2VzIHJlbWFpbmRlciBzdGFydCB3aXRoIGEgZGVjaW1hbCBwb2ludD8gKi8KKyAgICAqaGFzX2RlY2ltYWwgPSBwb3M8ZW5kICYmIFB5VW5pY29kZV9SRUFEX0NIQVIocywgcmVtYWluZGVyKSA9PSAnLic7CisKKyAgICAvKiBTa2lwIHRoZSBkZWNpbWFsIHBvaW50LiAqLworICAgIGlmICgqaGFzX2RlY2ltYWwpCisgICAgICAgIHJlbWFpbmRlcisrOworCisgICAgKm5fcmVtYWluZGVyID0gZW5kIC0gcmVtYWluZGVyOworfQorCisvKiBub3QgYWxsIGZpZWxkcyBvZiBmb3JtYXQgYXJlIHVzZWQuICBmb3IgZXhhbXBsZSwgcHJlY2lzaW9uIGlzCisgICB1bnVzZWQuICBzaG91bGQgdGhpcyB0YWtlIGRpc2NyZXRlIHBhcmFtcyBpbiBvcmRlciB0byBiZSBtb3JlIGNsZWFyCisgICBhYm91dCB3aGF0IGl0IGRvZXM/ICBvciBpcyBwYXNzaW5nIGEgc2luZ2xlIGZvcm1hdCBwYXJhbWV0ZXIgZWFzaWVyCisgICBhbmQgbW9yZSBlZmZpY2llbnQgZW5vdWdoIHRvIGp1c3RpZnkgYSBsaXR0bGUgb2JmdXNjYXRpb24/ICovCitzdGF0aWMgUHlfc3NpemVfdAorY2FsY19udW1iZXJfd2lkdGhzKE51bWJlckZpZWxkV2lkdGhzICpzcGVjLCBQeV9zc2l6ZV90IG5fcHJlZml4LAorICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgc2lnbl9jaGFyLCBQeU9iamVjdCAqbnVtYmVyLCBQeV9zc2l6ZV90IG5fc3RhcnQsCisgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuX2VuZCwgUHlfc3NpemVfdCBuX3JlbWFpbmRlciwKKyAgICAgICAgICAgICAgICAgICBpbnQgaGFzX2RlY2ltYWwsIGNvbnN0IExvY2FsZUluZm8gKmxvY2FsZSwKKyAgICAgICAgICAgICAgICAgICBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCwgUHlfVUNTNCAqbWF4Y2hhcikKK3sKKyAgICBQeV9zc2l6ZV90IG5fbm9uX2RpZ2l0X25vbl9wYWRkaW5nOworICAgIFB5X3NzaXplX3Qgbl9wYWRkaW5nOworCisgICAgc3BlYy0+bl9kaWdpdHMgPSBuX2VuZCAtIG5fc3RhcnQgLSBuX3JlbWFpbmRlciAtIChoYXNfZGVjaW1hbD8xOjApOworICAgIHNwZWMtPm5fbHBhZGRpbmcgPSAwOworICAgIHNwZWMtPm5fcHJlZml4ID0gbl9wcmVmaXg7CisgICAgc3BlYy0+bl9kZWNpbWFsID0gaGFzX2RlY2ltYWwgPyBQeVVuaWNvZGVfR0VUX0xFTkdUSChsb2NhbGUtPmRlY2ltYWxfcG9pbnQpIDogMDsKKyAgICBzcGVjLT5uX3JlbWFpbmRlciA9IG5fcmVtYWluZGVyOworICAgIHNwZWMtPm5fc3BhZGRpbmcgPSAwOworICAgIHNwZWMtPm5fcnBhZGRpbmcgPSAwOworICAgIHNwZWMtPnNpZ24gPSAnXDAnOworICAgIHNwZWMtPm5fc2lnbiA9IDA7CisKKyAgICAvKiB0aGUgb3V0cHV0IHdpbGwgbG9vayBsaWtlOgorICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgICB8IDxscGFkZGluZz4gPHNpZ24+IDxwcmVmaXg+IDxzcGFkZGluZz4gPGdyb3VwZWRfZGlnaXRzPiA8ZGVjaW1hbD4gPHJlbWFpbmRlcj4gPHJwYWRkaW5nPiB8CisgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorCisgICAgICAgc2lnbiBpcyBjb21wdXRlZCBmcm9tIGZvcm1hdC0+c2lnbiBhbmQgdGhlIGFjdHVhbAorICAgICAgIHNpZ24gb2YgdGhlIG51bWJlcgorCisgICAgICAgcHJlZml4IGlzIGdpdmVuIChpdCdzIGZvciB0aGUgJzB4JyBwcmVmaXgpCisKKyAgICAgICBkaWdpdHMgaXMgYWxyZWFkeSBrbm93bgorCisgICAgICAgdGhlIHRvdGFsIHdpZHRoIGlzIGVpdGhlciBnaXZlbiwgb3IgY29tcHV0ZWQgZnJvbSB0aGUKKyAgICAgICBhY3R1YWwgZGlnaXRzCisKKyAgICAgICBvbmx5IG9uZSBvZiBscGFkZGluZywgc3BhZGRpbmcsIGFuZCBycGFkZGluZyBjYW4gYmUgbm9uLXplcm8sCisgICAgICAgYW5kIGl0J3MgY2FsY3VsYXRlZCBmcm9tIHRoZSB3aWR0aCBhbmQgb3RoZXIgZmllbGRzCisgICAgKi8KKworICAgIC8qIGNvbXB1dGUgdGhlIHZhcmlvdXMgcGFydHMgd2UncmUgZ29pbmcgdG8gd3JpdGUgKi8KKyAgICBzd2l0Y2ggKGZvcm1hdC0+c2lnbikgeworICAgIGNhc2UgJysnOgorICAgICAgICAvKiBhbHdheXMgcHV0IGEgKyBvciAtICovCisgICAgICAgIHNwZWMtPm5fc2lnbiA9IDE7CisgICAgICAgIHNwZWMtPnNpZ24gPSAoc2lnbl9jaGFyID09ICctJyA/ICctJyA6ICcrJyk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgJyAnOgorICAgICAgICBzcGVjLT5uX3NpZ24gPSAxOworICAgICAgICBzcGVjLT5zaWduID0gKHNpZ25fY2hhciA9PSAnLScgPyAnLScgOiAnICcpOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICAvKiBOb3Qgc3BlY2lmaWVkLCBvciB0aGUgZGVmYXVsdCAoLSkgKi8KKyAgICAgICAgaWYgKHNpZ25fY2hhciA9PSAnLScpIHsKKyAgICAgICAgICAgIHNwZWMtPm5fc2lnbiA9IDE7CisgICAgICAgICAgICBzcGVjLT5zaWduID0gJy0nOworICAgICAgICB9CisgICAgfQorCisgICAgLyogVGhlIG51bWJlciBvZiBjaGFycyB1c2VkIGZvciBub24tZGlnaXRzIGFuZCBub24tcGFkZGluZy4gKi8KKyAgICBuX25vbl9kaWdpdF9ub25fcGFkZGluZyA9IHNwZWMtPm5fc2lnbiArIHNwZWMtPm5fcHJlZml4ICsgc3BlYy0+bl9kZWNpbWFsICsKKyAgICAgICAgc3BlYy0+bl9yZW1haW5kZXI7CisKKyAgICAvKiBtaW5fd2lkdGggY2FuIGdvIG5lZ2F0aXZlLCB0aGF0J3Mgb2theS4gZm9ybWF0LT53aWR0aCA9PSAtMSBtZWFucworICAgICAgIHdlIGRvbid0IGNhcmUuICovCisgICAgaWYgKGZvcm1hdC0+ZmlsbF9jaGFyID09ICcwJyAmJiBmb3JtYXQtPmFsaWduID09ICc9JykKKyAgICAgICAgc3BlYy0+bl9taW5fd2lkdGggPSBmb3JtYXQtPndpZHRoIC0gbl9ub25fZGlnaXRfbm9uX3BhZGRpbmc7CisgICAgZWxzZQorICAgICAgICBzcGVjLT5uX21pbl93aWR0aCA9IDA7CisKKyAgICBpZiAoc3BlYy0+bl9kaWdpdHMgPT0gMCkKKyAgICAgICAgLyogVGhpcyBjYXNlIG9ubHkgb2NjdXJzIHdoZW4gdXNpbmcgJ2MnIGZvcm1hdHRpbmcsIHdlIG5lZWQKKyAgICAgICAgICAgdG8gc3BlY2lhbCBjYXNlIGl0IGJlY2F1c2UgdGhlIGdyb3VwaW5nIGNvZGUgYWx3YXlzIHdhbnRzCisgICAgICAgICAgIHRvIGhhdmUgYXQgbGVhc3Qgb25lIGNoYXJhY3Rlci4gKi8KKyAgICAgICAgc3BlYy0+bl9ncm91cGVkX2RpZ2l0cyA9IDA7CisgICAgZWxzZSB7CisgICAgICAgIFB5X1VDUzQgZ3JvdXBpbmdfbWF4Y2hhcjsKKyAgICAgICAgc3BlYy0+bl9ncm91cGVkX2RpZ2l0cyA9IF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcoCisgICAgICAgICAgICBOVUxMLCAwLAorICAgICAgICAgICAgMCwgTlVMTCwKKyAgICAgICAgICAgIHNwZWMtPm5fZGlnaXRzLCBzcGVjLT5uX21pbl93aWR0aCwKKyAgICAgICAgICAgIGxvY2FsZS0+Z3JvdXBpbmcsIGxvY2FsZS0+dGhvdXNhbmRzX3NlcCwgJmdyb3VwaW5nX21heGNoYXIpOworICAgICAgICAqbWF4Y2hhciA9IFB5X01BWCgqbWF4Y2hhciwgZ3JvdXBpbmdfbWF4Y2hhcik7CisgICAgfQorCisgICAgLyogR2l2ZW4gdGhlIGRlc2lyZWQgd2lkdGggYW5kIHRoZSB0b3RhbCBvZiBkaWdpdCBhbmQgbm9uLWRpZ2l0CisgICAgICAgc3BhY2Ugd2UgY29uc3VtZSwgc2VlIGlmIHdlIG5lZWQgYW55IHBhZGRpbmcuIGZvcm1hdC0+d2lkdGggY2FuCisgICAgICAgYmUgbmVnYXRpdmUgKG1lYW5pbmcgbm8gcGFkZGluZyksIGJ1dCB0aGlzIGNvZGUgc3RpbGwgd29ya3MgaW4KKyAgICAgICB0aGF0IGNhc2UuICovCisgICAgbl9wYWRkaW5nID0gZm9ybWF0LT53aWR0aCAtCisgICAgICAgICAgICAgICAgICAgICAgICAobl9ub25fZGlnaXRfbm9uX3BhZGRpbmcgKyBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzKTsKKyAgICBpZiAobl9wYWRkaW5nID4gMCkgeworICAgICAgICAvKiBTb21lIHBhZGRpbmcgaXMgbmVlZGVkLiBEZXRlcm1pbmUgaWYgaXQncyBsZWZ0LCBzcGFjZSwgb3IgcmlnaHQuICovCisgICAgICAgIHN3aXRjaCAoZm9ybWF0LT5hbGlnbikgeworICAgICAgICBjYXNlICc8JzoKKyAgICAgICAgICAgIHNwZWMtPm5fcnBhZGRpbmcgPSBuX3BhZGRpbmc7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnXic6CisgICAgICAgICAgICBzcGVjLT5uX2xwYWRkaW5nID0gbl9wYWRkaW5nIC8gMjsKKyAgICAgICAgICAgIHNwZWMtPm5fcnBhZGRpbmcgPSBuX3BhZGRpbmcgLSBzcGVjLT5uX2xwYWRkaW5nOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJz0nOgorICAgICAgICAgICAgc3BlYy0+bl9zcGFkZGluZyA9IG5fcGFkZGluZzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICc+JzoKKyAgICAgICAgICAgIHNwZWMtPm5fbHBhZGRpbmcgPSBuX3BhZGRpbmc7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIC8qIFNob3VsZG4ndCBnZXQgaGVyZSwgYnV0IHRyZWF0IGl0IGFzICc+JyAqLworICAgICAgICAgICAgc3BlYy0+bl9scGFkZGluZyA9IG5fcGFkZGluZzsKKyAgICAgICAgICAgIGFzc2VydCgwKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKHNwZWMtPm5fbHBhZGRpbmcgfHwgc3BlYy0+bl9zcGFkZGluZyB8fCBzcGVjLT5uX3JwYWRkaW5nKQorICAgICAgICAqbWF4Y2hhciA9IFB5X01BWCgqbWF4Y2hhciwgZm9ybWF0LT5maWxsX2NoYXIpOworCisgICAgaWYgKHNwZWMtPm5fZGVjaW1hbCkKKyAgICAgICAgKm1heGNoYXIgPSBQeV9NQVgoKm1heGNoYXIsIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShsb2NhbGUtPmRlY2ltYWxfcG9pbnQpKTsKKworICAgIHJldHVybiBzcGVjLT5uX2xwYWRkaW5nICsgc3BlYy0+bl9zaWduICsgc3BlYy0+bl9wcmVmaXggKworICAgICAgICBzcGVjLT5uX3NwYWRkaW5nICsgc3BlYy0+bl9ncm91cGVkX2RpZ2l0cyArIHNwZWMtPm5fZGVjaW1hbCArCisgICAgICAgIHNwZWMtPm5fcmVtYWluZGVyICsgc3BlYy0+bl9ycGFkZGluZzsKK30KKworLyogRmlsbCBpbiB0aGUgZGlnaXQgcGFydHMgb2YgYSBudW1iZXJzJ3Mgc3RyaW5nIHJlcHJlc2VudGF0aW9uLAorICAgYXMgZGV0ZXJtaW5lZCBpbiBjYWxjX251bWJlcl93aWR0aHMoKS4KKyAgIFJldHVybiAtMSBvbiBlcnJvciwgb3IgMCBvbiBzdWNjZXNzLiAqLworc3RhdGljIGludAorZmlsbF9udW1iZXIoUHlPYmplY3QgKm91dCwgUHlfc3NpemVfdCBwb3MsIGNvbnN0IE51bWJlckZpZWxkV2lkdGhzICpzcGVjLAorICAgICAgICAgICAgUHlPYmplY3QgKmRpZ2l0cywgUHlfc3NpemVfdCBkX3N0YXJ0LCBQeV9zc2l6ZV90IGRfZW5kLAorICAgICAgICAgICAgUHlPYmplY3QgKnByZWZpeCwgUHlfc3NpemVfdCBwX3N0YXJ0LAorICAgICAgICAgICAgUHlfVUNTNCBmaWxsX2NoYXIsCisgICAgICAgICAgICBMb2NhbGVJbmZvICpsb2NhbGUsIGludCB0b3VwcGVyKQoreworICAgIC8qIFVzZWQgdG8ga2VlcCB0cmFjayBvZiBkaWdpdHMsIGRlY2ltYWwsIGFuZCByZW1haW5kZXIuICovCisgICAgUHlfc3NpemVfdCBkX3BvcyA9IGRfc3RhcnQ7CisgICAgdW5zaWduZWQgaW50IGtpbmQgPSBQeVVuaWNvZGVfS0lORChvdXQpOworICAgIHZvaWQgKmRhdGEgPSBQeVVuaWNvZGVfREFUQShvdXQpOworICAgIFB5X3NzaXplX3QgcjsKKworICAgIGlmIChzcGVjLT5uX2xwYWRkaW5nKSB7CisgICAgICAgIFB5VW5pY29kZV9GaWxsKG91dCwgcG9zLCBwb3MgKyBzcGVjLT5uX2xwYWRkaW5nLCBmaWxsX2NoYXIpOworICAgICAgICBwb3MgKz0gc3BlYy0+bl9scGFkZGluZzsKKyAgICB9CisgICAgaWYgKHNwZWMtPm5fc2lnbiA9PSAxKSB7CisgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBwb3MrKywgc3BlYy0+c2lnbik7CisgICAgfQorICAgIGlmIChzcGVjLT5uX3ByZWZpeCkgeworICAgICAgICBpZiAoUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzKG91dCwgcG9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeCwgcF9zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVjLT5uX3ByZWZpeCkgPCAwKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBpZiAodG91cHBlcikgeworICAgICAgICAgICAgUHlfc3NpemVfdCB0OworICAgICAgICAgICAgZm9yICh0ID0gMDsgdCA8IHNwZWMtPm5fcHJlZml4OyB0KyspIHsKKyAgICAgICAgICAgICAgICBQeV9VQ1M0IGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBwb3MgKyB0KTsKKyAgICAgICAgICAgICAgICBjID0gUHlfVE9VUFBFUihjKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQgKGMgPD0gMTI3KTsKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgcG9zICsgdCwgYyk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgcG9zICs9IHNwZWMtPm5fcHJlZml4OworICAgIH0KKyAgICBpZiAoc3BlYy0+bl9zcGFkZGluZykgeworICAgICAgICBQeVVuaWNvZGVfRmlsbChvdXQsIHBvcywgcG9zICsgc3BlYy0+bl9zcGFkZGluZywgZmlsbF9jaGFyKTsKKyAgICAgICAgcG9zICs9IHNwZWMtPm5fc3BhZGRpbmc7CisgICAgfQorCisgICAgLyogT25seSBmb3IgdHlwZSAnYycgc3BlY2lhbCBjYXNlLCBpdCBoYXMgbm8gZGlnaXRzLiAqLworICAgIGlmIChzcGVjLT5uX2RpZ2l0cyAhPSAwKSB7CisgICAgICAgIC8qIEZpbGwgdGhlIGRpZ2l0cyB3aXRoIEluc2VydFRob3VzYW5kc0dyb3VwaW5nLiAqLworICAgICAgICBjaGFyICpwZGlnaXRzOworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKGRpZ2l0cykpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIHBkaWdpdHMgPSBQeVVuaWNvZGVfREFUQShkaWdpdHMpOworICAgICAgICBpZiAoUHlVbmljb2RlX0tJTkQoZGlnaXRzKSA8IGtpbmQpIHsKKyAgICAgICAgICAgIHBkaWdpdHMgPSBfUHlVbmljb2RlX0FzS2luZChkaWdpdHMsIGtpbmQpOworICAgICAgICAgICAgaWYgKHBkaWdpdHMgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgciA9IF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcoCisgICAgICAgICAgICAgICAgb3V0LCBwb3MsCisgICAgICAgICAgICAgICAgc3BlYy0+bl9ncm91cGVkX2RpZ2l0cywKKyAgICAgICAgICAgICAgICBwZGlnaXRzICsga2luZCAqIGRfcG9zLAorICAgICAgICAgICAgICAgIHNwZWMtPm5fZGlnaXRzLCBzcGVjLT5uX21pbl93aWR0aCwKKyAgICAgICAgICAgICAgICBsb2NhbGUtPmdyb3VwaW5nLCBsb2NhbGUtPnRob3VzYW5kc19zZXAsIE5VTEwpOworICAgICAgICBpZiAociA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgYXNzZXJ0KHIgPT0gc3BlYy0+bl9ncm91cGVkX2RpZ2l0cyk7CisgICAgICAgIGlmIChQeVVuaWNvZGVfS0lORChkaWdpdHMpIDwga2luZCkKKyAgICAgICAgICAgIFB5TWVtX0ZyZWUocGRpZ2l0cyk7CisgICAgICAgIGRfcG9zICs9IHNwZWMtPm5fZGlnaXRzOworICAgIH0KKyAgICBpZiAodG91cHBlcikgeworICAgICAgICBQeV9zc2l6ZV90IHQ7CisgICAgICAgIGZvciAodCA9IDA7IHQgPCBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzOyB0KyspIHsKKyAgICAgICAgICAgIFB5X1VDUzQgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIHBvcyArIHQpOworICAgICAgICAgICAgYyA9IFB5X1RPVVBQRVIoYyk7CisgICAgICAgICAgICBpZiAoYyA+IDEyNykgeworICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwgIm5vbi1hc2NpaSBncm91cGVkIGRpZ2l0Iik7CisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIHBvcyArIHQsIGMpOworICAgICAgICB9CisgICAgfQorICAgIHBvcyArPSBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzOworCisgICAgaWYgKHNwZWMtPm5fZGVjaW1hbCkgeworICAgICAgICBpZiAoUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzKG91dCwgcG9zLCBsb2NhbGUtPmRlY2ltYWxfcG9pbnQsIDAsIHNwZWMtPm5fZGVjaW1hbCkgPCAwKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBwb3MgKz0gc3BlYy0+bl9kZWNpbWFsOworICAgICAgICBkX3BvcyArPSAxOworICAgIH0KKworICAgIGlmIChzcGVjLT5uX3JlbWFpbmRlcikgeworICAgICAgICBpZiAoUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzKG91dCwgcG9zLCBkaWdpdHMsIGRfcG9zLCBzcGVjLT5uX3JlbWFpbmRlcikgPCAwKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBwb3MgKz0gc3BlYy0+bl9yZW1haW5kZXI7CisgICAgICAgIGRfcG9zICs9IHNwZWMtPm5fcmVtYWluZGVyOworICAgIH0KKworICAgIGlmIChzcGVjLT5uX3JwYWRkaW5nKSB7CisgICAgICAgIFB5VW5pY29kZV9GaWxsKG91dCwgcG9zLCBwb3MgKyBzcGVjLT5uX3JwYWRkaW5nLCBmaWxsX2NoYXIpOworICAgICAgICBwb3MgKz0gc3BlYy0+bl9ycGFkZGluZzsKKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBjaGFyIG5vX2dyb3VwaW5nWzFdID0ge0NIQVJfTUFYfTsKKworLyogRmluZCB0aGUgZGVjaW1hbCBwb2ludCBjaGFyYWN0ZXIocz8pLCB0aG91c2FuZHNfc2VwYXJhdG9yKHM/KSwgYW5kCisgICBncm91cGluZyBkZXNjcmlwdGlvbiwgZWl0aGVyIGZvciB0aGUgY3VycmVudCBsb2NhbGUgaWYgdHlwZSBpcworICAgTFRfQ1VSUkVOVF9MT0NBTEUsIGEgaGFyZC1jb2RlZCBsb2NhbGUgaWYgTFRfREVGQVVMVF9MT0NBTEUsIG9yCisgICBub25lIGlmIExUX05PX0xPQ0FMRS4gKi8KK3N0YXRpYyBpbnQKK2dldF9sb2NhbGVfaW5mbyhpbnQgdHlwZSwgTG9jYWxlSW5mbyAqbG9jYWxlX2luZm8pCit7CisgICAgc3dpdGNoICh0eXBlKSB7CisgICAgY2FzZSBMVF9DVVJSRU5UX0xPQ0FMRTogeworICAgICAgICBzdHJ1Y3QgbGNvbnYgKmxvY2FsZV9kYXRhID0gbG9jYWxlY29udigpOworICAgICAgICBsb2NhbGVfaW5mby0+ZGVjaW1hbF9wb2ludCA9IFB5VW5pY29kZV9EZWNvZGVMb2NhbGUoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZV9kYXRhLT5kZWNpbWFsX3BvaW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgICAgICAgaWYgKGxvY2FsZV9pbmZvLT5kZWNpbWFsX3BvaW50ID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIGxvY2FsZV9pbmZvLT50aG91c2FuZHNfc2VwID0gUHlVbmljb2RlX0RlY29kZUxvY2FsZSgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlX2RhdGEtPnRob3VzYW5kc19zZXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgICAgICBpZiAobG9jYWxlX2luZm8tPnRob3VzYW5kc19zZXAgPT0gTlVMTCkgeworICAgICAgICAgICAgUHlfREVDUkVGKGxvY2FsZV9pbmZvLT5kZWNpbWFsX3BvaW50KTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBsb2NhbGVfaW5mby0+Z3JvdXBpbmcgPSBsb2NhbGVfZGF0YS0+Z3JvdXBpbmc7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBjYXNlIExUX0RFRkFVTFRfTE9DQUxFOgorICAgICAgICBsb2NhbGVfaW5mby0+ZGVjaW1hbF9wb2ludCA9IFB5VW5pY29kZV9Gcm9tT3JkaW5hbCgnLicpOworICAgICAgICBsb2NhbGVfaW5mby0+dGhvdXNhbmRzX3NlcCA9IFB5VW5pY29kZV9Gcm9tT3JkaW5hbCgnLCcpOworICAgICAgICBpZiAoIWxvY2FsZV9pbmZvLT5kZWNpbWFsX3BvaW50IHx8ICFsb2NhbGVfaW5mby0+dGhvdXNhbmRzX3NlcCkgeworICAgICAgICAgICAgUHlfWERFQ1JFRihsb2NhbGVfaW5mby0+ZGVjaW1hbF9wb2ludCk7CisgICAgICAgICAgICBQeV9YREVDUkVGKGxvY2FsZV9pbmZvLT50aG91c2FuZHNfc2VwKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBsb2NhbGVfaW5mby0+Z3JvdXBpbmcgPSAiXDMiOyAvKiBHcm91cCBldmVyeSAzIGNoYXJhY3RlcnMuICBUaGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGltcGxpY2l0KSB0cmFpbGluZyAwIG1lYW5zIHJlcGVhdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmZpbml0ZWx5LiAqLworICAgICAgICBicmVhazsKKyAgICBjYXNlIExUX05PX0xPQ0FMRToKKyAgICAgICAgbG9jYWxlX2luZm8tPmRlY2ltYWxfcG9pbnQgPSBQeVVuaWNvZGVfRnJvbU9yZGluYWwoJy4nKTsKKyAgICAgICAgbG9jYWxlX2luZm8tPnRob3VzYW5kc19zZXAgPSBQeVVuaWNvZGVfTmV3KDAsIDApOworICAgICAgICBpZiAoIWxvY2FsZV9pbmZvLT5kZWNpbWFsX3BvaW50IHx8ICFsb2NhbGVfaW5mby0+dGhvdXNhbmRzX3NlcCkgeworICAgICAgICAgICAgUHlfWERFQ1JFRihsb2NhbGVfaW5mby0+ZGVjaW1hbF9wb2ludCk7CisgICAgICAgICAgICBQeV9YREVDUkVGKGxvY2FsZV9pbmZvLT50aG91c2FuZHNfc2VwKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBsb2NhbGVfaW5mby0+Z3JvdXBpbmcgPSBub19ncm91cGluZzsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDApOworICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQKK2ZyZWVfbG9jYWxlX2luZm8oTG9jYWxlSW5mbyAqbG9jYWxlX2luZm8pCit7CisgICAgUHlfWERFQ1JFRihsb2NhbGVfaW5mby0+ZGVjaW1hbF9wb2ludCk7CisgICAgUHlfWERFQ1JFRihsb2NhbGVfaW5mby0+dGhvdXNhbmRzX3NlcCk7Cit9CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKiogc3RyaW5nIGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK2Zvcm1hdF9zdHJpbmdfaW50ZXJuYWwoUHlPYmplY3QgKnZhbHVlLCBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKK3sKKyAgICBQeV9zc2l6ZV90IGxwYWQ7CisgICAgUHlfc3NpemVfdCBycGFkOworICAgIFB5X3NzaXplX3QgdG90YWw7CisgICAgUHlfc3NpemVfdCBwb3M7CisgICAgUHlfc3NpemVfdCBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh2YWx1ZSk7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisgICAgUHlfVUNTNCBtYXhjaGFyID0gMTI3OworCisgICAgLyogc2lnbiBpcyBub3QgYWxsb3dlZCBvbiBzdHJpbmdzICovCisgICAgaWYgKGZvcm1hdC0+c2lnbiAhPSAnXDAnKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIlNpZ24gbm90IGFsbG93ZWQgaW4gc3RyaW5nIGZvcm1hdCBzcGVjaWZpZXIiKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworICAgIC8qIGFsdGVybmF0ZSBpcyBub3QgYWxsb3dlZCBvbiBzdHJpbmdzICovCisgICAgaWYgKGZvcm1hdC0+YWx0ZXJuYXRlKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIkFsdGVybmF0ZSBmb3JtICgjKSBub3QgYWxsb3dlZCBpbiBzdHJpbmcgZm9ybWF0ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZXIiKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworICAgIC8qICc9JyBhbGlnbm1lbnQgbm90IGFsbG93ZWQgb24gc3RyaW5ncyAqLworICAgIGlmIChmb3JtYXQtPmFsaWduID09ICc9JykgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICInPScgYWxpZ25tZW50IG5vdCBhbGxvd2VkICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJpbiBzdHJpbmcgZm9ybWF0IHNwZWNpZmllciIpOworICAgICAgICBnb3RvIGRvbmU7CisgICAgfQorCisgICAgLyogaWYgcHJlY2lzaW9uIGlzIHNwZWNpZmllZCwgb3V0cHV0IG5vIG1vcmUgdGhhdCBmb3JtYXQucHJlY2lzaW9uCisgICAgICAgY2hhcmFjdGVycyAqLworICAgIGlmIChmb3JtYXQtPnByZWNpc2lvbiA+PSAwICYmIGxlbiA+PSBmb3JtYXQtPnByZWNpc2lvbikgeworICAgICAgICBsZW4gPSBmb3JtYXQtPnByZWNpc2lvbjsKKyAgICB9CisKKyAgICBjYWxjX3BhZGRpbmcobGVuLCBmb3JtYXQtPndpZHRoLCBmb3JtYXQtPmFsaWduLCAmbHBhZCwgJnJwYWQsICZ0b3RhbCk7CisKKyAgICBpZiAobHBhZCAhPSAwIHx8IHJwYWQgIT0gMCkKKyAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBmb3JtYXQtPmZpbGxfY2hhcik7CisKKyAgICAvKiBhbGxvY2F0ZSB0aGUgcmVzdWx0aW5nIHN0cmluZyAqLworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9OZXcodG90YWwsIG1heGNoYXIpOworICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgZ290byBkb25lOworCisgICAgLyogV3JpdGUgaW50byB0aGF0IHNwYWNlLiBGaXJzdCB0aGUgcGFkZGluZy4gKi8KKyAgICBwb3MgPSBmaWxsX3BhZGRpbmcocmVzdWx0LCAwLCBsZW4sCisgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdC0+ZmlsbF9jaGFyPT0nXDAnPycgJzpmb3JtYXQtPmZpbGxfY2hhciwKKyAgICAgICAgICAgICAgICAgICAgICAgbHBhZCwgcnBhZCk7CisKKyAgICAvKiBUaGVuIHRoZSBzb3VyY2Ugc3RyaW5nLiAqLworICAgIGlmIChQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMocmVzdWx0LCBwb3MsIHZhbHVlLCAwLCBsZW4pIDwgMCkKKyAgICAgICAgUHlfQ0xFQVIocmVzdWx0KTsKKworZG9uZToKKyAgICBhc3NlcnQoIXJlc3VsdCB8fCBfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzdWx0LCAxKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqIGxvbmcgZm9ybWF0dGluZyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK3R5cGVkZWYgUHlPYmplY3QqCisoKkludE9yTG9uZ1RvU3RyaW5nKShQeU9iamVjdCAqdmFsdWUsIGludCBiYXNlKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2Zvcm1hdF9pbnRfb3JfbG9uZ19pbnRlcm5hbChQeU9iamVjdCAqdmFsdWUsIGNvbnN0IEludGVybmFsRm9ybWF0U3BlYyAqZm9ybWF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIEludE9yTG9uZ1RvU3RyaW5nIHRvc3RyaW5nKQoreworICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOworICAgIFB5X1VDUzQgbWF4Y2hhciA9IDEyNzsKKyAgICBQeU9iamVjdCAqdG1wID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGludW1lcmljX2NoYXJzOworICAgIFB5X1VDUzQgc2lnbl9jaGFyID0gJ1wwJzsKKyAgICBQeV9zc2l6ZV90IG5fZGlnaXRzOyAgICAgICAvKiBjb3VudCBvZiBkaWdpdHMgbmVlZCBmcm9tIHRoZSBjb21wdXRlZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZyAqLworICAgIFB5X3NzaXplX3Qgbl9yZW1haW5kZXIgPSAwOyAvKiBVc2VkIG9ubHkgZm9yICdjJyBmb3JtYXR0aW5nLCB3aGljaAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWNlcyBub24tZGlnaXRzICovCisgICAgUHlfc3NpemVfdCBuX3ByZWZpeCA9IDA7ICAgLyogQ291bnQgb2YgcHJlZml4IGNoYXJzLCAoZS5nLiwgJzB4JykgKi8KKyAgICBQeV9zc2l6ZV90IG5fdG90YWw7CisgICAgUHlfc3NpemVfdCBwcmVmaXggPSAwOworICAgIE51bWJlckZpZWxkV2lkdGhzIHNwZWM7CisgICAgbG9uZyB4OworICAgIGludCBlcnI7CisKKyAgICAvKiBMb2NhbGUgc2V0dGluZ3MsIGVpdGhlciBmcm9tIHRoZSBhY3R1YWwgbG9jYWxlIG9yCisgICAgICAgZnJvbSBhIGhhcmQtY29kZSBwc2V1ZG8tbG9jYWxlICovCisgICAgTG9jYWxlSW5mbyBsb2NhbGUgPSBTVEFUSUNfTE9DQUxFX0lORk9fSU5JVDsKKworICAgIC8qIG5vIHByZWNpc2lvbiBhbGxvd2VkIG9uIGludGVnZXJzICovCisgICAgaWYgKGZvcm1hdC0+cHJlY2lzaW9uICE9IC0xKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIlByZWNpc2lvbiBub3QgYWxsb3dlZCBpbiBpbnRlZ2VyIGZvcm1hdCBzcGVjaWZpZXIiKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworICAgIC8qIHNwZWNpYWwgY2FzZSBmb3IgY2hhcmFjdGVyIGZvcm1hdHRpbmcgKi8KKyAgICBpZiAoZm9ybWF0LT50eXBlID09ICdjJykgeworICAgICAgICAvKiBlcnJvciB0byBzcGVjaWZ5IGEgc2lnbiAqLworICAgICAgICBpZiAoZm9ybWF0LT5zaWduICE9ICdcMCcpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTaWduIG5vdCBhbGxvd2VkIHdpdGggaW50ZWdlciIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIGZvcm1hdCBzcGVjaWZpZXIgJ2MnIik7CisgICAgICAgICAgICBnb3RvIGRvbmU7CisgICAgICAgIH0KKworICAgICAgICAvKiB0YWtlbiBmcm9tIHVuaWNvZGVvYmplY3QuYyBmb3JtYXRjaGFyKCkgKi8KKyAgICAgICAgLyogSW50ZWdlciBpbnB1dCB0cnVuY2F0ZWQgdG8gYSBjaGFyYWN0ZXIgKi8KKyAgICAgICAgeCA9IFB5TG9uZ19Bc0xvbmcodmFsdWUpOworICAgICAgICBpZiAoeCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgZ290byBkb25lOworICAgICAgICBpZiAoeCA8IDAgfHwgeCA+IDB4MTBmZmZmKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJWMgYXJnIG5vdCBpbiByYW5nZSgweDExMDAwMCkiKTsKKyAgICAgICAgICAgIGdvdG8gZG9uZTsKKyAgICAgICAgfQorICAgICAgICB0bXAgPSBQeVVuaWNvZGVfRnJvbU9yZGluYWwoeCk7CisgICAgICAgIGludW1lcmljX2NoYXJzID0gMDsKKyAgICAgICAgbl9kaWdpdHMgPSAxOworICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIChQeV9VQ1M0KXgpOworCisgICAgICAgIC8qIEFzIGEgc29ydC1vZiBoYWNrLCB3ZSB0ZWxsIGNhbGNfbnVtYmVyX3dpZHRocyB0aGF0IHdlIG9ubHkKKyAgICAgICAgICAgaGF2ZSAicmVtYWluZGVyIiBjaGFyYWN0ZXJzLiBjYWxjX251bWJlcl93aWR0aHMgdGhpbmtzCisgICAgICAgICAgIHRoZXNlIGFyZSBjaGFyYWN0ZXJzIHRoYXQgZG9uJ3QgZ2V0IGZvcm1hdHRlZCwgb25seSBjb3BpZWQKKyAgICAgICAgICAgaW50byB0aGUgb3V0cHV0IHN0cmluZy4gV2UgZG8gdGhpcyBmb3IgJ2MnIGZvcm1hdHRpbmcsCisgICAgICAgICAgIGJlY2F1c2UgdGhlIGNoYXJhY3RlcnMgYXJlIGxpa2VseSB0byBiZSBub24tZGlnaXRzLiAqLworICAgICAgICBuX3JlbWFpbmRlciA9IDE7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBpbnQgYmFzZTsKKyAgICAgICAgaW50IGxlYWRpbmdfY2hhcnNfdG9fc2tpcCA9IDA7ICAvKiBOdW1iZXIgb2YgY2hhcmFjdGVycyBhZGRlZCBieQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5TnVtYmVyX1RvQmFzZSB0aGF0IHdlIHdhbnQgdG8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBza2lwIG92ZXIuICovCisKKyAgICAgICAgLyogQ29tcHV0ZSB0aGUgYmFzZSBhbmQgaG93IG1hbnkgY2hhcmFjdGVycyB3aWxsIGJlIGFkZGVkIGJ5CisgICAgICAgICAgIFB5TnVtYmVyX1RvQmFzZSAqLworICAgICAgICBzd2l0Y2ggKGZvcm1hdC0+dHlwZSkgeworICAgICAgICBjYXNlICdiJzoKKyAgICAgICAgICAgIGJhc2UgPSAyOworICAgICAgICAgICAgbGVhZGluZ19jaGFyc190b19za2lwID0gMjsgLyogMGIgKi8KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdvJzoKKyAgICAgICAgICAgIGJhc2UgPSA4OworICAgICAgICAgICAgbGVhZGluZ19jaGFyc190b19za2lwID0gMjsgLyogMG8gKi8KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd4JzoKKyAgICAgICAgY2FzZSAnWCc6CisgICAgICAgICAgICBiYXNlID0gMTY7CisgICAgICAgICAgICBsZWFkaW5nX2NoYXJzX3RvX3NraXAgPSAyOyAvKiAweCAqLworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6ICAvKiBzaG91bGRuJ3QgYmUgbmVlZGVkLCBidXQgc3RvcHMgYSBjb21waWxlciB3YXJuaW5nICovCisgICAgICAgIGNhc2UgJ2QnOgorICAgICAgICBjYXNlICduJzoKKyAgICAgICAgICAgIGJhc2UgPSAxMDsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisKKyAgICAgICAgLyogVGhlIG51bWJlciBvZiBwcmVmaXggY2hhcnMgaXMgdGhlIHNhbWUgYXMgdGhlIGxlYWRpbmcKKyAgICAgICAgICAgY2hhcnMgdG8gc2tpcCAqLworICAgICAgICBpZiAoZm9ybWF0LT5hbHRlcm5hdGUpCisgICAgICAgICAgICBuX3ByZWZpeCA9IGxlYWRpbmdfY2hhcnNfdG9fc2tpcDsKKworICAgICAgICAvKiBEbyB0aGUgaGFyZCBwYXJ0LCBjb252ZXJ0aW5nIHRvIGEgc3RyaW5nIGluIGEgZ2l2ZW4gYmFzZSAqLworICAgICAgICB0bXAgPSB0b3N0cmluZyh2YWx1ZSwgYmFzZSk7CisgICAgICAgIGlmICh0bXAgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkodG1wKSA9PSAtMSkKKyAgICAgICAgICAgIGdvdG8gZG9uZTsKKworICAgICAgICBpbnVtZXJpY19jaGFycyA9IDA7CisgICAgICAgIG5fZGlnaXRzID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodG1wKTsKKworICAgICAgICBwcmVmaXggPSBpbnVtZXJpY19jaGFyczsKKworICAgICAgICAvKiBJcyBhIHNpZ24gY2hhcmFjdGVyIHByZXNlbnQgaW4gdGhlIG91dHB1dD8gIElmIHNvLCByZW1lbWJlciBpdAorICAgICAgICAgICBhbmQgc2tpcCBpdCAqLworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURfQ0hBUih0bXAsIGludW1lcmljX2NoYXJzKSA9PSAnLScpIHsKKyAgICAgICAgICAgIHNpZ25fY2hhciA9ICctJzsKKyAgICAgICAgICAgICsrcHJlZml4OworICAgICAgICAgICAgKytsZWFkaW5nX2NoYXJzX3RvX3NraXA7CisgICAgICAgIH0KKworICAgICAgICAvKiBTa2lwIG92ZXIgdGhlIGxlYWRpbmcgY2hhcnMgKDB4LCAwYiwgZXRjLikgKi8KKyAgICAgICAgbl9kaWdpdHMgLT0gbGVhZGluZ19jaGFyc190b19za2lwOworICAgICAgICBpbnVtZXJpY19jaGFycyArPSBsZWFkaW5nX2NoYXJzX3RvX3NraXA7CisgICAgfQorCisgICAgLyogRGV0ZXJtaW5lIHRoZSBncm91cGluZywgc2VwYXJhdG9yLCBhbmQgZGVjaW1hbCBwb2ludCwgaWYgYW55LiAqLworICAgIGlmIChnZXRfbG9jYWxlX2luZm8oZm9ybWF0LT50eXBlID09ICduJyA/IExUX0NVUlJFTlRfTE9DQUxFIDoKKyAgICAgICAgICAgICAgICAgICAgICAgIChmb3JtYXQtPnRob3VzYW5kc19zZXBhcmF0b3JzID8KKyAgICAgICAgICAgICAgICAgICAgICAgICBMVF9ERUZBVUxUX0xPQ0FMRSA6CisgICAgICAgICAgICAgICAgICAgICAgICAgTFRfTk9fTE9DQUxFKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICZsb2NhbGUpID09IC0xKQorICAgICAgICBnb3RvIGRvbmU7CisKKyAgICAvKiBDYWxjdWxhdGUgaG93IG11Y2ggbWVtb3J5IHdlJ2xsIG5lZWQuICovCisgICAgbl90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmc3BlYywgbl9wcmVmaXgsIHNpZ25fY2hhciwgdG1wLCBpbnVtZXJpY19jaGFycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludW1lcmljX2NoYXJzICsgbl9kaWdpdHMsIG5fcmVtYWluZGVyLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmxvY2FsZSwgZm9ybWF0LCAmbWF4Y2hhcik7CisKKyAgICAvKiBBbGxvY2F0ZSB0aGUgbWVtb3J5LiAqLworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9OZXcobl90b3RhbCwgbWF4Y2hhcik7CisgICAgaWYgKCFyZXN1bHQpCisgICAgICAgIGdvdG8gZG9uZTsKKworICAgIC8qIFBvcHVsYXRlIHRoZSBtZW1vcnkuICovCisgICAgZXJyID0gZmlsbF9udW1iZXIocmVzdWx0LCAwLCAmc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICB0bXAsIGludW1lcmljX2NoYXJzLCBpbnVtZXJpY19jaGFycyArIG5fZGlnaXRzLAorICAgICAgICAgICAgICAgICAgICAgIHRtcCwgcHJlZml4LAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdC0+ZmlsbF9jaGFyID09ICdcMCcgPyAnICcgOiBmb3JtYXQtPmZpbGxfY2hhciwKKyAgICAgICAgICAgICAgICAgICAgICAmbG9jYWxlLCBmb3JtYXQtPnR5cGUgPT0gJ1gnKTsKKyAgICBpZiAoZXJyKQorICAgICAgICBQeV9DTEVBUihyZXN1bHQpOworCitkb25lOgorICAgIFB5X1hERUNSRUYodG1wKTsKKyAgICBmcmVlX2xvY2FsZV9pbmZvKCZsb2NhbGUpOworICAgIGFzc2VydCghcmVzdWx0IHx8IF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShyZXN1bHQsIDEpKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqIGZsb2F0IGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK3N0YXRpYyBQeU9iamVjdCoKK3N0cnRvdW5pY29kZShjaGFyICpjaGFyYnVmZmVyLCBQeV9zc2l6ZV90IGxlbikKK3sKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfMUJZVEVfS0lORCwgY2hhcmJ1ZmZlciwgbGVuKTsKK30KKworLyogbXVjaCBvZiB0aGlzIGlzIHRha2VuIGZyb20gdW5pY29kZW9iamVjdC5jICovCitzdGF0aWMgUHlPYmplY3QgKgorZm9ybWF0X2Zsb2F0X2ludGVybmFsKFB5T2JqZWN0ICp2YWx1ZSwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKK3sKKyAgICBjaGFyICpidWYgPSBOVUxMOyAgICAgICAvKiBidWZmZXIgcmV0dXJuZWQgZnJvbSBQeU9TX2RvdWJsZV90b19zdHJpbmcgKi8KKyAgICBQeV9zc2l6ZV90IG5fZGlnaXRzOworICAgIFB5X3NzaXplX3Qgbl9yZW1haW5kZXI7CisgICAgUHlfc3NpemVfdCBuX3RvdGFsOworICAgIGludCBoYXNfZGVjaW1hbDsKKyAgICBkb3VibGUgdmFsOworICAgIFB5X3NzaXplX3QgcHJlY2lzaW9uID0gZm9ybWF0LT5wcmVjaXNpb247CisgICAgUHlfc3NpemVfdCBkZWZhdWx0X3ByZWNpc2lvbiA9IDY7CisgICAgUHlfVUNTNCB0eXBlID0gZm9ybWF0LT50eXBlOworICAgIGludCBhZGRfcGN0ID0gMDsKKyAgICBQeV9zc2l6ZV90IGluZGV4OworICAgIE51bWJlckZpZWxkV2lkdGhzIHNwZWM7CisgICAgaW50IGZsYWdzID0gMDsKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKyAgICBQeV9VQ1M0IG1heGNoYXIgPSAxMjc7CisgICAgUHlfVUNTNCBzaWduX2NoYXIgPSAnXDAnOworICAgIGludCBmbG9hdF90eXBlOyAvKiBVc2VkIHRvIHNlZSBpZiB3ZSBoYXZlIGEgbmFuLCBpbmYsIG9yIHJlZ3VsYXIgZmxvYXQuICovCisgICAgUHlPYmplY3QgKnVuaWNvZGVfdG1wID0gTlVMTDsKKyAgICBpbnQgZXJyOworCisgICAgLyogTG9jYWxlIHNldHRpbmdzLCBlaXRoZXIgZnJvbSB0aGUgYWN0dWFsIGxvY2FsZSBvcgorICAgICAgIGZyb20gYSBoYXJkLWNvZGUgcHNldWRvLWxvY2FsZSAqLworICAgIExvY2FsZUluZm8gbG9jYWxlID0gU1RBVElDX0xPQ0FMRV9JTkZPX0lOSVQ7CisKKyAgICBpZiAoZm9ybWF0LT5hbHRlcm5hdGUpCisgICAgICAgIGZsYWdzIHw9IFB5X0RUU0ZfQUxUOworCisgICAgaWYgKHR5cGUgPT0gJ1wwJykgeworICAgICAgICAvKiBPbWl0dGVkIHR5cGUgc3BlY2lmaWVyLiAgQmVoYXZlcyBpbiB0aGUgc2FtZSB3YXkgYXMgcmVwcih4KQorICAgICAgICAgICBhbmQgc3RyKHgpIGlmIG5vIHByZWNpc2lvbiBpcyBnaXZlbiwgZWxzZSBsaWtlICdnJywgYnV0IHdpdGgKKyAgICAgICAgICAgYXQgbGVhc3Qgb25lIGRpZ2l0IGFmdGVyIHRoZSBkZWNpbWFsIHBvaW50LiAqLworICAgICAgICBmbGFncyB8PSBQeV9EVFNGX0FERF9ET1RfMDsKKyAgICAgICAgdHlwZSA9ICdyJzsKKyAgICAgICAgZGVmYXVsdF9wcmVjaXNpb24gPSAwOworICAgIH0KKworICAgIGlmICh0eXBlID09ICduJykKKyAgICAgICAgLyogJ24nIGlzIHRoZSBzYW1lIGFzICdnJywgZXhjZXB0IGZvciB0aGUgbG9jYWxlIHVzZWQgdG8KKyAgICAgICAgICAgZm9ybWF0IHRoZSByZXN1bHQuIFdlIHRha2UgY2FyZSBvZiB0aGF0IGxhdGVyLiAqLworICAgICAgICB0eXBlID0gJ2cnOworCisgICAgdmFsID0gUHlGbG9hdF9Bc0RvdWJsZSh2YWx1ZSk7CisgICAgaWYgKHZhbCA9PSAtMS4wICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgIGdvdG8gZG9uZTsKKworICAgIGlmICh0eXBlID09ICclJykgeworICAgICAgICB0eXBlID0gJ2YnOworICAgICAgICB2YWwgKj0gMTAwOworICAgICAgICBhZGRfcGN0ID0gMTsKKyAgICB9CisKKyAgICBpZiAocHJlY2lzaW9uIDwgMCkKKyAgICAgICAgcHJlY2lzaW9uID0gZGVmYXVsdF9wcmVjaXNpb247CisgICAgZWxzZSBpZiAodHlwZSA9PSAncicpCisgICAgICAgIHR5cGUgPSAnZyc7CisKKyAgICAvKiBDYXN0ICJ0eXBlIiwgYmVjYXVzZSBpZiB3ZSdyZSBpbiB1bmljb2RlIHdlIG5lZWQgdG8gcGFzcyBhCisgICAgICAgOC1iaXQgY2hhci4gVGhpcyBpcyBzYWZlLCBiZWNhdXNlIHdlJ3ZlIHJlc3RyaWN0ZWQgd2hhdCAidHlwZSIKKyAgICAgICBjYW4gYmUuICovCisgICAgYnVmID0gUHlPU19kb3VibGVfdG9fc3RyaW5nKHZhbCwgKGNoYXIpdHlwZSwgcHJlY2lzaW9uLCBmbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZsb2F0X3R5cGUpOworICAgIGlmIChidWYgPT0gTlVMTCkKKyAgICAgICAgZ290byBkb25lOworICAgIG5fZGlnaXRzID0gc3RybGVuKGJ1Zik7CisKKyAgICBpZiAoYWRkX3BjdCkgeworICAgICAgICAvKiBXZSBrbm93IHRoYXQgYnVmIGhhcyBhIHRyYWlsaW5nIHplcm8gKHNpbmNlIHdlIGp1c3QgY2FsbGVkCisgICAgICAgICAgIHN0cmxlbigpIG9uIGl0KSwgYW5kIHdlIGRvbid0IHVzZSB0aGF0IGZhY3QgYW55IG1vcmUuIFNvIHdlCisgICAgICAgICAgIGNhbiBqdXN0IHdyaXRlIG92ZXIgdGhlIHRyYWlsaW5nIHplcm8uICovCisgICAgICAgIGJ1ZltuX2RpZ2l0c10gPSAnJSc7CisgICAgICAgIG5fZGlnaXRzICs9IDE7CisgICAgfQorCisgICAgLyogU2luY2UgdGhlcmUgaXMgbm8gdW5pY29kZSB2ZXJzaW9uIG9mIFB5T1NfZG91YmxlX3RvX3N0cmluZywKKyAgICAgICBqdXN0IHVzZSB0aGUgOCBiaXQgdmVyc2lvbiBhbmQgdGhlbiBjb252ZXJ0IHRvIHVuaWNvZGUuICovCisgICAgdW5pY29kZV90bXAgPSBzdHJ0b3VuaWNvZGUoYnVmLCBuX2RpZ2l0cyk7CisgICAgaWYgKHVuaWNvZGVfdG1wID09IE5VTEwpCisgICAgICAgIGdvdG8gZG9uZTsKKyAgICBpbmRleCA9IDA7CisKKyAgICAvKiBJcyBhIHNpZ24gY2hhcmFjdGVyIHByZXNlbnQgaW4gdGhlIG91dHB1dD8gIElmIHNvLCByZW1lbWJlciBpdAorICAgICAgIGFuZCBza2lwIGl0ICovCisgICAgaWYgKFB5VW5pY29kZV9SRUFEX0NIQVIodW5pY29kZV90bXAsIGluZGV4KSA9PSAnLScpIHsKKyAgICAgICAgc2lnbl9jaGFyID0gJy0nOworICAgICAgICArK2luZGV4OworICAgICAgICAtLW5fZGlnaXRzOworICAgIH0KKworICAgIC8qIERldGVybWluZSBpZiB3ZSBoYXZlIGFueSAicmVtYWluZGVyIiAoYWZ0ZXIgdGhlIGRpZ2l0cywgbWlnaHQgaW5jbHVkZQorICAgICAgIGRlY2ltYWwgb3IgZXhwb25lbnQgb3IgYm90aCAob3IgbmVpdGhlcikpICovCisgICAgcGFyc2VfbnVtYmVyKHVuaWNvZGVfdG1wLCBpbmRleCwgaW5kZXggKyBuX2RpZ2l0cywgJm5fcmVtYWluZGVyLCAmaGFzX2RlY2ltYWwpOworCisgICAgLyogRGV0ZXJtaW5lIHRoZSBncm91cGluZywgc2VwYXJhdG9yLCBhbmQgZGVjaW1hbCBwb2ludCwgaWYgYW55LiAqLworICAgIGlmIChnZXRfbG9jYWxlX2luZm8oZm9ybWF0LT50eXBlID09ICduJyA/IExUX0NVUlJFTlRfTE9DQUxFIDoKKyAgICAgICAgICAgICAgICAgICAgICAgIChmb3JtYXQtPnRob3VzYW5kc19zZXBhcmF0b3JzID8KKyAgICAgICAgICAgICAgICAgICAgICAgICBMVF9ERUZBVUxUX0xPQ0FMRSA6CisgICAgICAgICAgICAgICAgICAgICAgICAgTFRfTk9fTE9DQUxFKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICZsb2NhbGUpID09IC0xKQorICAgICAgICBnb3RvIGRvbmU7CisKKyAgICAvKiBDYWxjdWxhdGUgaG93IG11Y2ggbWVtb3J5IHdlJ2xsIG5lZWQuICovCisgICAgbl90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmc3BlYywgMCwgc2lnbl9jaGFyLCB1bmljb2RlX3RtcCwgaW5kZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleCArIG5fZGlnaXRzLCBuX3JlbWFpbmRlciwgaGFzX2RlY2ltYWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbG9jYWxlLCBmb3JtYXQsICZtYXhjaGFyKTsKKworICAgIC8qIEFsbG9jYXRlIHRoZSBtZW1vcnkuICovCisgICAgcmVzdWx0ID0gUHlVbmljb2RlX05ldyhuX3RvdGFsLCBtYXhjaGFyKTsKKyAgICBpZiAocmVzdWx0ID09IE5VTEwpCisgICAgICAgIGdvdG8gZG9uZTsKKworICAgIC8qIFBvcHVsYXRlIHRoZSBtZW1vcnkuICovCisgICAgZXJyID0gZmlsbF9udW1iZXIocmVzdWx0LCAwLCAmc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICB1bmljb2RlX3RtcCwgaW5kZXgsIGluZGV4ICsgbl9kaWdpdHMsCisgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCwKKyAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQtPmZpbGxfY2hhciA9PSAnXDAnID8gJyAnIDogZm9ybWF0LT5maWxsX2NoYXIsCisgICAgICAgICAgICAgICAgICAgICAgJmxvY2FsZSwgMCk7CisgICAgaWYgKGVycikKKyAgICAgICAgUHlfQ0xFQVIocmVzdWx0KTsKKworZG9uZToKKyAgICBQeU1lbV9GcmVlKGJ1Zik7CisgICAgUHlfREVDUkVGKHVuaWNvZGVfdG1wKTsKKyAgICBmcmVlX2xvY2FsZV9pbmZvKCZsb2NhbGUpOworICAgIGFzc2VydCghcmVzdWx0IHx8IF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShyZXN1bHQsIDEpKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqIGNvbXBsZXggZm9ybWF0dGluZyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK3N0YXRpYyBQeU9iamVjdCAqCitmb3JtYXRfY29tcGxleF9pbnRlcm5hbChQeU9iamVjdCAqdmFsdWUsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKK3sKKyAgICBkb3VibGUgcmU7CisgICAgZG91YmxlIGltOworICAgIGNoYXIgKnJlX2J1ZiA9IE5VTEw7ICAgICAgIC8qIGJ1ZmZlciByZXR1cm5lZCBmcm9tIFB5T1NfZG91YmxlX3RvX3N0cmluZyAqLworICAgIGNoYXIgKmltX2J1ZiA9IE5VTEw7ICAgICAgIC8qIGJ1ZmZlciByZXR1cm5lZCBmcm9tIFB5T1NfZG91YmxlX3RvX3N0cmluZyAqLworCisgICAgSW50ZXJuYWxGb3JtYXRTcGVjIHRtcF9mb3JtYXQgPSAqZm9ybWF0OworICAgIFB5X3NzaXplX3Qgbl9yZV9kaWdpdHM7CisgICAgUHlfc3NpemVfdCBuX2ltX2RpZ2l0czsKKyAgICBQeV9zc2l6ZV90IG5fcmVfcmVtYWluZGVyOworICAgIFB5X3NzaXplX3Qgbl9pbV9yZW1haW5kZXI7CisgICAgUHlfc3NpemVfdCBuX3JlX3RvdGFsOworICAgIFB5X3NzaXplX3Qgbl9pbV90b3RhbDsKKyAgICBpbnQgcmVfaGFzX2RlY2ltYWw7CisgICAgaW50IGltX2hhc19kZWNpbWFsOworICAgIFB5X3NzaXplX3QgcHJlY2lzaW9uID0gZm9ybWF0LT5wcmVjaXNpb247CisgICAgUHlfc3NpemVfdCBkZWZhdWx0X3ByZWNpc2lvbiA9IDY7CisgICAgUHlfVUNTNCB0eXBlID0gZm9ybWF0LT50eXBlOworICAgIFB5X3NzaXplX3QgaV9yZTsKKyAgICBQeV9zc2l6ZV90IGlfaW07CisgICAgTnVtYmVyRmllbGRXaWR0aHMgcmVfc3BlYzsKKyAgICBOdW1iZXJGaWVsZFdpZHRocyBpbV9zcGVjOworICAgIGludCBmbGFncyA9IDA7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisgICAgUHlfVUNTNCBtYXhjaGFyID0gMTI3OworICAgIGludCBya2luZDsKKyAgICB2b2lkICpyZGF0YTsKKyAgICBQeV9zc2l6ZV90IGluZGV4OworICAgIFB5X1VDUzQgcmVfc2lnbl9jaGFyID0gJ1wwJzsKKyAgICBQeV9VQ1M0IGltX3NpZ25fY2hhciA9ICdcMCc7CisgICAgaW50IHJlX2Zsb2F0X3R5cGU7IC8qIFVzZWQgdG8gc2VlIGlmIHdlIGhhdmUgYSBuYW4sIGluZiwgb3IgcmVndWxhciBmbG9hdC4gKi8KKyAgICBpbnQgaW1fZmxvYXRfdHlwZTsKKyAgICBpbnQgYWRkX3BhcmVucyA9IDA7CisgICAgaW50IHNraXBfcmUgPSAwOworICAgIFB5X3NzaXplX3QgbHBhZDsKKyAgICBQeV9zc2l6ZV90IHJwYWQ7CisgICAgUHlfc3NpemVfdCB0b3RhbDsKKyAgICBQeU9iamVjdCAqcmVfdW5pY29kZV90bXAgPSBOVUxMOworICAgIFB5T2JqZWN0ICppbV91bmljb2RlX3RtcCA9IE5VTEw7CisgICAgaW50IGVycjsKKworICAgIC8qIExvY2FsZSBzZXR0aW5ncywgZWl0aGVyIGZyb20gdGhlIGFjdHVhbCBsb2NhbGUgb3IKKyAgICAgICBmcm9tIGEgaGFyZC1jb2RlIHBzZXVkby1sb2NhbGUgKi8KKyAgICBMb2NhbGVJbmZvIGxvY2FsZSA9IFNUQVRJQ19MT0NBTEVfSU5GT19JTklUOworCisgICAgLyogWmVybyBwYWRkaW5nIGlzIG5vdCBhbGxvd2VkLiAqLworICAgIGlmIChmb3JtYXQtPmZpbGxfY2hhciA9PSAnMCcpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiWmVybyBwYWRkaW5nIGlzIG5vdCBhbGxvd2VkIGluIGNvbXBsZXggZm9ybWF0ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZXIiKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworICAgIC8qIE5laXRoZXIgaXMgJz0nIGFsaWdubWVudCAuICovCisgICAgaWYgKGZvcm1hdC0+YWxpZ24gPT0gJz0nKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIic9JyBhbGlnbm1lbnQgZmxhZyBpcyBub3QgYWxsb3dlZCBpbiBjb21wbGV4IGZvcm1hdCAiCisgICAgICAgICAgICAgICAgICAgICAgICAic3BlY2lmaWVyIik7CisgICAgICAgIGdvdG8gZG9uZTsKKyAgICB9CisKKyAgICByZSA9IFB5Q29tcGxleF9SZWFsQXNEb3VibGUodmFsdWUpOworICAgIGlmIChyZSA9PSAtMS4wICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgIGdvdG8gZG9uZTsKKyAgICBpbSA9IFB5Q29tcGxleF9JbWFnQXNEb3VibGUodmFsdWUpOworICAgIGlmIChpbSA9PSAtMS4wICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgIGdvdG8gZG9uZTsKKworICAgIGlmIChmb3JtYXQtPmFsdGVybmF0ZSkKKyAgICAgICAgZmxhZ3MgfD0gUHlfRFRTRl9BTFQ7CisKKyAgICBpZiAodHlwZSA9PSAnXDAnKSB7CisgICAgICAgIC8qIE9taXR0ZWQgdHlwZSBzcGVjaWZpZXIuIFNob3VsZCBiZSBsaWtlIHN0cihzZWxmKS4gKi8KKyAgICAgICAgdHlwZSA9ICdyJzsKKyAgICAgICAgZGVmYXVsdF9wcmVjaXNpb24gPSAwOworICAgICAgICBpZiAocmUgPT0gMC4wICYmIGNvcHlzaWduKDEuMCwgcmUpID09IDEuMCkKKyAgICAgICAgICAgIHNraXBfcmUgPSAxOworICAgICAgICBlbHNlCisgICAgICAgICAgICBhZGRfcGFyZW5zID0gMTsKKyAgICB9CisKKyAgICBpZiAodHlwZSA9PSAnbicpCisgICAgICAgIC8qICduJyBpcyB0aGUgc2FtZSBhcyAnZycsIGV4Y2VwdCBmb3IgdGhlIGxvY2FsZSB1c2VkIHRvCisgICAgICAgICAgIGZvcm1hdCB0aGUgcmVzdWx0LiBXZSB0YWtlIGNhcmUgb2YgdGhhdCBsYXRlci4gKi8KKyAgICAgICAgdHlwZSA9ICdnJzsKKworICAgIGlmIChwcmVjaXNpb24gPCAwKQorICAgICAgICBwcmVjaXNpb24gPSBkZWZhdWx0X3ByZWNpc2lvbjsKKyAgICBlbHNlIGlmICh0eXBlID09ICdyJykKKyAgICAgICAgdHlwZSA9ICdnJzsKKworICAgIC8qIENhc3QgInR5cGUiLCBiZWNhdXNlIGlmIHdlJ3JlIGluIHVuaWNvZGUgd2UgbmVlZCB0byBwYXNzIGEKKyAgICAgICA4LWJpdCBjaGFyLiBUaGlzIGlzIHNhZmUsIGJlY2F1c2Ugd2UndmUgcmVzdHJpY3RlZCB3aGF0ICJ0eXBlIgorICAgICAgIGNhbiBiZS4gKi8KKyAgICByZV9idWYgPSBQeU9TX2RvdWJsZV90b19zdHJpbmcocmUsIChjaGFyKXR5cGUsIHByZWNpc2lvbiwgZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZV9mbG9hdF90eXBlKTsKKyAgICBpZiAocmVfYnVmID09IE5VTEwpCisgICAgICAgIGdvdG8gZG9uZTsKKyAgICBpbV9idWYgPSBQeU9TX2RvdWJsZV90b19zdHJpbmcoaW0sIChjaGFyKXR5cGUsIHByZWNpc2lvbiwgZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZpbV9mbG9hdF90eXBlKTsKKyAgICBpZiAoaW1fYnVmID09IE5VTEwpCisgICAgICAgIGdvdG8gZG9uZTsKKworICAgIG5fcmVfZGlnaXRzID0gc3RybGVuKHJlX2J1Zik7CisgICAgbl9pbV9kaWdpdHMgPSBzdHJsZW4oaW1fYnVmKTsKKworICAgIC8qIFNpbmNlIHRoZXJlIGlzIG5vIHVuaWNvZGUgdmVyc2lvbiBvZiBQeU9TX2RvdWJsZV90b19zdHJpbmcsCisgICAgICAganVzdCB1c2UgdGhlIDggYml0IHZlcnNpb24gYW5kIHRoZW4gY29udmVydCB0byB1bmljb2RlLiAqLworICAgIHJlX3VuaWNvZGVfdG1wID0gc3RydG91bmljb2RlKHJlX2J1Ziwgbl9yZV9kaWdpdHMpOworICAgIGlmIChyZV91bmljb2RlX3RtcCA9PSBOVUxMKQorICAgICAgICBnb3RvIGRvbmU7CisgICAgaV9yZSA9IDA7CisKKyAgICBpbV91bmljb2RlX3RtcCA9IHN0cnRvdW5pY29kZShpbV9idWYsIG5faW1fZGlnaXRzKTsKKyAgICBpZiAoaW1fdW5pY29kZV90bXAgPT0gTlVMTCkKKyAgICAgICAgZ290byBkb25lOworICAgIGlfaW0gPSAwOworCisgICAgLyogSXMgYSBzaWduIGNoYXJhY3RlciBwcmVzZW50IGluIHRoZSBvdXRwdXQ/ICBJZiBzbywgcmVtZW1iZXIgaXQKKyAgICAgICBhbmQgc2tpcCBpdCAqLworICAgIGlmIChQeVVuaWNvZGVfUkVBRF9DSEFSKHJlX3VuaWNvZGVfdG1wLCBpX3JlKSA9PSAnLScpIHsKKyAgICAgICAgcmVfc2lnbl9jaGFyID0gJy0nOworICAgICAgICArK2lfcmU7CisgICAgICAgIC0tbl9yZV9kaWdpdHM7CisgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRF9DSEFSKGltX3VuaWNvZGVfdG1wLCBpX2ltKSA9PSAnLScpIHsKKyAgICAgICAgaW1fc2lnbl9jaGFyID0gJy0nOworICAgICAgICArK2lfaW07CisgICAgICAgIC0tbl9pbV9kaWdpdHM7CisgICAgfQorCisgICAgLyogRGV0ZXJtaW5lIGlmIHdlIGhhdmUgYW55ICJyZW1haW5kZXIiIChhZnRlciB0aGUgZGlnaXRzLCBtaWdodCBpbmNsdWRlCisgICAgICAgZGVjaW1hbCBvciBleHBvbmVudCBvciBib3RoIChvciBuZWl0aGVyKSkgKi8KKyAgICBwYXJzZV9udW1iZXIocmVfdW5pY29kZV90bXAsIGlfcmUsIGlfcmUgKyBuX3JlX2RpZ2l0cywKKyAgICAgICAgICAgICAgICAgJm5fcmVfcmVtYWluZGVyLCAmcmVfaGFzX2RlY2ltYWwpOworICAgIHBhcnNlX251bWJlcihpbV91bmljb2RlX3RtcCwgaV9pbSwgaV9pbSArIG5faW1fZGlnaXRzLAorICAgICAgICAgICAgICAgICAmbl9pbV9yZW1haW5kZXIsICZpbV9oYXNfZGVjaW1hbCk7CisKKyAgICAvKiBEZXRlcm1pbmUgdGhlIGdyb3VwaW5nLCBzZXBhcmF0b3IsIGFuZCBkZWNpbWFsIHBvaW50LCBpZiBhbnkuICovCisgICAgaWYgKGdldF9sb2NhbGVfaW5mbyhmb3JtYXQtPnR5cGUgPT0gJ24nID8gTFRfQ1VSUkVOVF9MT0NBTEUgOgorICAgICAgICAgICAgICAgICAgICAgICAgKGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMgPworICAgICAgICAgICAgICAgICAgICAgICAgIExUX0RFRkFVTFRfTE9DQUxFIDoKKyAgICAgICAgICAgICAgICAgICAgICAgICBMVF9OT19MT0NBTEUpLAorICAgICAgICAgICAgICAgICAgICAgICAgJmxvY2FsZSkgPT0gLTEpCisgICAgICAgIGdvdG8gZG9uZTsKKworICAgIC8qIFR1cm4gb2ZmIGFueSBwYWRkaW5nLiBXZSdsbCBkbyBpdCBsYXRlciBhZnRlciB3ZSd2ZSBjb21wb3NlZAorICAgICAgIHRoZSBudW1iZXJzIHdpdGhvdXQgcGFkZGluZy4gKi8KKyAgICB0bXBfZm9ybWF0LmZpbGxfY2hhciA9ICdcMCc7CisgICAgdG1wX2Zvcm1hdC5hbGlnbiA9ICc8JzsKKyAgICB0bXBfZm9ybWF0LndpZHRoID0gLTE7CisKKyAgICAvKiBDYWxjdWxhdGUgaG93IG11Y2ggbWVtb3J5IHdlJ2xsIG5lZWQuICovCisgICAgbl9yZV90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmcmVfc3BlYywgMCwgcmVfc2lnbl9jaGFyLCByZV91bmljb2RlX3RtcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlfcmUsIGlfcmUgKyBuX3JlX2RpZ2l0cywgbl9yZV9yZW1haW5kZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZV9oYXNfZGVjaW1hbCwgJmxvY2FsZSwgJnRtcF9mb3JtYXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWF4Y2hhcik7CisKKyAgICAvKiBTYW1lIGZvcm1hdHRpbmcsIGJ1dCBhbHdheXMgaW5jbHVkZSBhIHNpZ24sIHVubGVzcyB0aGUgcmVhbCBwYXJ0IGlzCisgICAgICogZ29pbmcgdG8gYmUgb21pdHRlZCwgaW4gd2hpY2ggY2FzZSB3ZSB1c2Ugd2hhdGV2ZXIgc2lnbiBjb252ZW50aW9uIHdhcworICAgICAqIHJlcXVlc3RlZCBieSB0aGUgb3JpZ2luYWwgZm9ybWF0LiAqLworICAgIGlmICghc2tpcF9yZSkKKyAgICAgICAgdG1wX2Zvcm1hdC5zaWduID0gJysnOworICAgIG5faW1fdG90YWwgPSBjYWxjX251bWJlcl93aWR0aHMoJmltX3NwZWMsIDAsIGltX3NpZ25fY2hhciwgaW1fdW5pY29kZV90bXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpX2ltLCBpX2ltICsgbl9pbV9kaWdpdHMsIG5faW1fcmVtYWluZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1faGFzX2RlY2ltYWwsICZsb2NhbGUsICZ0bXBfZm9ybWF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1heGNoYXIpOworCisgICAgaWYgKHNraXBfcmUpCisgICAgICAgIG5fcmVfdG90YWwgPSAwOworCisgICAgLyogQWRkIDEgZm9yIHRoZSAnaicsIGFuZCBvcHRpb25hbGx5IDIgZm9yIHBhcmVucy4gKi8KKyAgICBjYWxjX3BhZGRpbmcobl9yZV90b3RhbCArIG5faW1fdG90YWwgKyAxICsgYWRkX3BhcmVucyAqIDIsCisgICAgICAgICAgICAgICAgIGZvcm1hdC0+d2lkdGgsIGZvcm1hdC0+YWxpZ24sICZscGFkLCAmcnBhZCwgJnRvdGFsKTsKKworICAgIGlmIChscGFkIHx8IHJwYWQpCisgICAgICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgZm9ybWF0LT5maWxsX2NoYXIpOworCisgICAgcmVzdWx0ID0gUHlVbmljb2RlX05ldyh0b3RhbCwgbWF4Y2hhcik7CisgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICBnb3RvIGRvbmU7CisgICAgcmtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXN1bHQpOworICAgIHJkYXRhID0gUHlVbmljb2RlX0RBVEEocmVzdWx0KTsKKworICAgIC8qIFBvcHVsYXRlIHRoZSBtZW1vcnkuIEZpcnN0LCB0aGUgcGFkZGluZy4gKi8KKyAgICBpbmRleCA9IGZpbGxfcGFkZGluZyhyZXN1bHQsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgbl9yZV90b3RhbCArIG5faW1fdG90YWwgKyAxICsgYWRkX3BhcmVucyAqIDIsCisgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0LT5maWxsX2NoYXI9PSdcMCcgPyAnICcgOiBmb3JtYXQtPmZpbGxfY2hhciwKKyAgICAgICAgICAgICAgICAgICAgICAgICBscGFkLCBycGFkKTsKKworICAgIGlmIChhZGRfcGFyZW5zKQorICAgICAgICBQeVVuaWNvZGVfV1JJVEUocmtpbmQsIHJkYXRhLCBpbmRleCsrLCAnKCcpOworCisgICAgaWYgKCFza2lwX3JlKSB7CisgICAgICAgIGVyciA9IGZpbGxfbnVtYmVyKHJlc3VsdCwgaW5kZXgsICZyZV9zcGVjLAorICAgICAgICAgICAgICAgICAgICAgICAgICByZV91bmljb2RlX3RtcCwgaV9yZSwgaV9yZSArIG5fcmVfZGlnaXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmbG9jYWxlLCAwKTsKKyAgICAgICAgaWYgKGVycikgeworICAgICAgICAgICAgUHlfQ0xFQVIocmVzdWx0KTsKKyAgICAgICAgICAgIGdvdG8gZG9uZTsKKyAgICAgICAgfQorICAgICAgICBpbmRleCArPSBuX3JlX3RvdGFsOworICAgIH0KKyAgICBlcnIgPSBmaWxsX251bWJlcihyZXN1bHQsIGluZGV4LCAmaW1fc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICBpbV91bmljb2RlX3RtcCwgaV9pbSwgaV9pbSArIG5faW1fZGlnaXRzLAorICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIDAsCisgICAgICAgICAgICAgICAgICAgICAgMCwKKyAgICAgICAgICAgICAgICAgICAgICAmbG9jYWxlLCAwKTsKKyAgICBpZiAoZXJyKSB7CisgICAgICAgIFB5X0NMRUFSKHJlc3VsdCk7CisgICAgICAgIGdvdG8gZG9uZTsKKyAgICB9CisgICAgaW5kZXggKz0gbl9pbV90b3RhbDsKKyAgICBQeVVuaWNvZGVfV1JJVEUocmtpbmQsIHJkYXRhLCBpbmRleCsrLCAnaicpOworCisgICAgaWYgKGFkZF9wYXJlbnMpCisgICAgICAgIFB5VW5pY29kZV9XUklURShya2luZCwgcmRhdGEsIGluZGV4KyssICcpJyk7CisKK2RvbmU6CisgICAgUHlNZW1fRnJlZShyZV9idWYpOworICAgIFB5TWVtX0ZyZWUoaW1fYnVmKTsKKyAgICBQeV9YREVDUkVGKHJlX3VuaWNvZGVfdG1wKTsKKyAgICBQeV9YREVDUkVGKGltX3VuaWNvZGVfdG1wKTsKKyAgICBmcmVlX2xvY2FsZV9pbmZvKCZsb2NhbGUpOworICAgIGFzc2VydCghcmVzdWx0IHx8IF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShyZXN1bHQsIDEpKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqIGJ1aWx0IGluIGZvcm1hdHRlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCitQeU9iamVjdCAqCitfUHlVbmljb2RlX0Zvcm1hdEFkdmFuY2VkKFB5T2JqZWN0ICpvYmosCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQpCit7CisgICAgSW50ZXJuYWxGb3JtYXRTcGVjIGZvcm1hdDsKKyAgICBQeU9iamVjdCAqcmVzdWx0OworCisgICAgLyogY2hlY2sgZm9yIHRoZSBzcGVjaWFsIGNhc2Ugb2YgemVybyBsZW5ndGggZm9ybWF0IHNwZWMsIG1ha2UKKyAgICAgICBpdCBlcXVpdmFsZW50IHRvIHN0cihvYmopICovCisgICAgaWYgKHN0YXJ0ID09IGVuZCkKKyAgICAgICAgcmV0dXJuIFB5T2JqZWN0X1N0cihvYmopOworCisgICAgLyogcGFyc2UgdGhlIGZvcm1hdF9zcGVjICovCisgICAgaWYgKCFwYXJzZV9pbnRlcm5hbF9yZW5kZXJfZm9ybWF0X3NwZWMoZm9ybWF0X3NwZWMsIHN0YXJ0LCBlbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZvcm1hdCwgJ3MnLCAnPCcpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIC8qIHR5cGUgY29udmVyc2lvbj8gKi8KKyAgICBzd2l0Y2ggKGZvcm1hdC50eXBlKSB7CisgICAgY2FzZSAncyc6CisgICAgICAgIC8qIG5vIHR5cGUgY29udmVyc2lvbiBuZWVkZWQsIGFscmVhZHkgYSBzdHJpbmcuICBkbyB0aGUgZm9ybWF0dGluZyAqLworICAgICAgICByZXN1bHQgPSBmb3JtYXRfc3RyaW5nX2ludGVybmFsKG9iaiwgJmZvcm1hdCk7CisgICAgICAgIGlmIChyZXN1bHQgIT0gTlVMTCkKKyAgICAgICAgICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzdWx0LCAxKSk7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIC8qIHVua25vd24gKi8KKyAgICAgICAgdW5rbm93bl9wcmVzZW50YXRpb25fdHlwZShmb3JtYXQudHlwZSwgb2JqLT5vYl90eXBlLT50cF9uYW1lKTsKKyAgICAgICAgcmVzdWx0ID0gTlVMTDsKKyAgICB9CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIFB5T2JqZWN0KgorZm9ybWF0X2ludF9vcl9sb25nKFB5T2JqZWN0KiBvYmosIFB5T2JqZWN0KiBmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCwKKyAgICAgICAgICAgICAgICAgICBJbnRPckxvbmdUb1N0cmluZyB0b3N0cmluZykKK3sKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKyAgICBQeU9iamVjdCAqdG1wID0gTlVMTDsKKyAgICBJbnRlcm5hbEZvcm1hdFNwZWMgZm9ybWF0OworCisgICAgLyogY2hlY2sgZm9yIHRoZSBzcGVjaWFsIGNhc2Ugb2YgemVybyBsZW5ndGggZm9ybWF0IHNwZWMsIG1ha2UKKyAgICAgICBpdCBlcXVpdmFsZW50IHRvIHN0cihvYmopICovCisgICAgaWYgKHN0YXJ0ID09IGVuZCkgeworICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9TdHIob2JqKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworICAgIC8qIHBhcnNlIHRoZSBmb3JtYXRfc3BlYyAqLworICAgIGlmICghcGFyc2VfaW50ZXJuYWxfcmVuZGVyX2Zvcm1hdF9zcGVjKGZvcm1hdF9zcGVjLCBzdGFydCwgZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmb3JtYXQsICdkJywgJz4nKSkKKyAgICAgICAgZ290byBkb25lOworCisgICAgLyogdHlwZSBjb252ZXJzaW9uPyAqLworICAgIHN3aXRjaCAoZm9ybWF0LnR5cGUpIHsKKyAgICBjYXNlICdiJzoKKyAgICBjYXNlICdjJzoKKyAgICBjYXNlICdkJzoKKyAgICBjYXNlICdvJzoKKyAgICBjYXNlICd4JzoKKyAgICBjYXNlICdYJzoKKyAgICBjYXNlICduJzoKKyAgICAgICAgLyogbm8gdHlwZSBjb252ZXJzaW9uIG5lZWRlZCwgYWxyZWFkeSBhbiBpbnQgKG9yIGxvbmcpLiAgZG8KKyAgICAgICAgICAgdGhlIGZvcm1hdHRpbmcgKi8KKyAgICAgICAgICAgIHJlc3VsdCA9IGZvcm1hdF9pbnRfb3JfbG9uZ19pbnRlcm5hbChvYmosICZmb3JtYXQsIHRvc3RyaW5nKTsKKyAgICAgICAgYnJlYWs7CisKKyAgICBjYXNlICdlJzoKKyAgICBjYXNlICdFJzoKKyAgICBjYXNlICdmJzoKKyAgICBjYXNlICdGJzoKKyAgICBjYXNlICdnJzoKKyAgICBjYXNlICdHJzoKKyAgICBjYXNlICclJzoKKyAgICAgICAgLyogY29udmVydCB0byBmbG9hdCAqLworICAgICAgICB0bXAgPSBQeU51bWJlcl9GbG9hdChvYmopOworICAgICAgICBpZiAodG1wID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGRvbmU7CisgICAgICAgIHJlc3VsdCA9IGZvcm1hdF9mbG9hdF9pbnRlcm5hbCh0bXAsICZmb3JtYXQpOworICAgICAgICBicmVhazsKKworICAgIGRlZmF1bHQ6CisgICAgICAgIC8qIHVua25vd24gKi8KKyAgICAgICAgdW5rbm93bl9wcmVzZW50YXRpb25fdHlwZShmb3JtYXQudHlwZSwgb2JqLT5vYl90eXBlLT50cF9uYW1lKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworZG9uZToKKyAgICBQeV9YREVDUkVGKHRtcCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworLyogTmVlZCB0byBkZWZpbmUgbG9uZ19mb3JtYXQgYXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgY29udmVydCBhIGxvbmcKKyAgIHRvIGEgc3RyaW5nLiAgSW4gMy4wLCBfUHlMb25nX0Zvcm1hdCBoYXMgdGhlIGNvcnJlY3Qgc2lnbmF0dXJlLiAqLworI2RlZmluZSBsb25nX2Zvcm1hdCBfUHlMb25nX0Zvcm1hdAorCitQeU9iamVjdCAqCitfUHlMb25nX0Zvcm1hdEFkdmFuY2VkKFB5T2JqZWN0ICpvYmosCisgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQpCit7CisgICAgcmV0dXJuIGZvcm1hdF9pbnRfb3JfbG9uZyhvYmosIGZvcm1hdF9zcGVjLCBzdGFydCwgZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9uZ19mb3JtYXQpOworfQorCitQeU9iamVjdCAqCitfUHlGbG9hdF9Gb3JtYXRBZHZhbmNlZChQeU9iamVjdCAqb2JqLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmZvcm1hdF9zcGVjLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQpCit7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisgICAgSW50ZXJuYWxGb3JtYXRTcGVjIGZvcm1hdDsKKworICAgIC8qIGNoZWNrIGZvciB0aGUgc3BlY2lhbCBjYXNlIG9mIHplcm8gbGVuZ3RoIGZvcm1hdCBzcGVjLCBtYWtlCisgICAgICAgaXQgZXF1aXZhbGVudCB0byBzdHIob2JqKSAqLworICAgIGlmIChzdGFydCA9PSBlbmQpIHsKKyAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfU3RyKG9iaik7CisgICAgICAgIGdvdG8gZG9uZTsKKyAgICB9CisKKyAgICAvKiBwYXJzZSB0aGUgZm9ybWF0X3NwZWMgKi8KKyAgICBpZiAoIXBhcnNlX2ludGVybmFsX3JlbmRlcl9mb3JtYXRfc3BlYyhmb3JtYXRfc3BlYywgc3RhcnQsIGVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0LCAnXDAnLCAnPicpKQorICAgICAgICBnb3RvIGRvbmU7CisKKyAgICAvKiB0eXBlIGNvbnZlcnNpb24/ICovCisgICAgc3dpdGNoIChmb3JtYXQudHlwZSkgeworICAgIGNhc2UgJ1wwJzogLyogTm8gZm9ybWF0IGNvZGU6IGxpa2UgJ2cnLCBidXQgd2l0aCBhdCBsZWFzdCBvbmUgZGVjaW1hbC4gKi8KKyAgICBjYXNlICdlJzoKKyAgICBjYXNlICdFJzoKKyAgICBjYXNlICdmJzoKKyAgICBjYXNlICdGJzoKKyAgICBjYXNlICdnJzoKKyAgICBjYXNlICdHJzoKKyAgICBjYXNlICduJzoKKyAgICBjYXNlICclJzoKKyAgICAgICAgLyogbm8gY29udmVyc2lvbiwgYWxyZWFkeSBhIGZsb2F0LiAgZG8gdGhlIGZvcm1hdHRpbmcgKi8KKyAgICAgICAgcmVzdWx0ID0gZm9ybWF0X2Zsb2F0X2ludGVybmFsKG9iaiwgJmZvcm1hdCk7CisgICAgICAgIGJyZWFrOworCisgICAgZGVmYXVsdDoKKyAgICAgICAgLyogdW5rbm93biAqLworICAgICAgICB1bmtub3duX3ByZXNlbnRhdGlvbl90eXBlKGZvcm1hdC50eXBlLCBvYmotPm9iX3R5cGUtPnRwX25hbWUpOworICAgICAgICBnb3RvIGRvbmU7CisgICAgfQorCitkb25lOgorICAgIHJldHVybiByZXN1bHQ7Cit9CisKK1B5T2JqZWN0ICoKK19QeUNvbXBsZXhfRm9ybWF0QWR2YW5jZWQoUHlPYmplY3QgKm9iaiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmZvcm1hdF9zcGVjLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKK3sKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKyAgICBJbnRlcm5hbEZvcm1hdFNwZWMgZm9ybWF0OworCisgICAgLyogY2hlY2sgZm9yIHRoZSBzcGVjaWFsIGNhc2Ugb2YgemVybyBsZW5ndGggZm9ybWF0IHNwZWMsIG1ha2UKKyAgICAgICBpdCBlcXVpdmFsZW50IHRvIHN0cihvYmopICovCisgICAgaWYgKHN0YXJ0ID09IGVuZCkgeworICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9TdHIob2JqKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworICAgIC8qIHBhcnNlIHRoZSBmb3JtYXRfc3BlYyAqLworICAgIGlmICghcGFyc2VfaW50ZXJuYWxfcmVuZGVyX2Zvcm1hdF9zcGVjKGZvcm1hdF9zcGVjLCBzdGFydCwgZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmb3JtYXQsICdcMCcsICc+JykpCisgICAgICAgIGdvdG8gZG9uZTsKKworICAgIC8qIHR5cGUgY29udmVyc2lvbj8gKi8KKyAgICBzd2l0Y2ggKGZvcm1hdC50eXBlKSB7CisgICAgY2FzZSAnXDAnOiAvKiBObyBmb3JtYXQgY29kZTogbGlrZSAnZycsIGJ1dCB3aXRoIGF0IGxlYXN0IG9uZSBkZWNpbWFsLiAqLworICAgIGNhc2UgJ2UnOgorICAgIGNhc2UgJ0UnOgorICAgIGNhc2UgJ2YnOgorICAgIGNhc2UgJ0YnOgorICAgIGNhc2UgJ2cnOgorICAgIGNhc2UgJ0cnOgorICAgIGNhc2UgJ24nOgorICAgICAgICAvKiBubyBjb252ZXJzaW9uLCBhbHJlYWR5IGEgY29tcGxleC4gIGRvIHRoZSBmb3JtYXR0aW5nICovCisgICAgICAgIHJlc3VsdCA9IGZvcm1hdF9jb21wbGV4X2ludGVybmFsKG9iaiwgJmZvcm1hdCk7CisgICAgICAgIGJyZWFrOworCisgICAgZGVmYXVsdDoKKyAgICAgICAgLyogdW5rbm93biAqLworICAgICAgICB1bmtub3duX3ByZXNlbnRhdGlvbl90eXBlKGZvcm1hdC50eXBlLCBvYmotPm9iX3R5cGUtPnRwX25hbWUpOworICAgICAgICBnb3RvIGRvbmU7CisgICAgfQorCitkb25lOgorICAgIHJldHVybiByZXN1bHQ7Cit9CmRpZmYgLS1naXQgYS9QeXRob24vZ2V0YXJncy5jIGIvUHl0aG9uL2dldGFyZ3MuYwppbmRleCA2MDA5NDFkLi43N2YyN2JlIDEwMDY0NAotLS0gYS9QeXRob24vZ2V0YXJncy5jCisrKyBiL1B5dGhvbi9nZXRhcmdzLmMKQEAgLTMxMCwyMCArMzEwLDE4IEBACiAgICAgICAgIGlmIChtYXggPT0gMCkgewogICAgICAgICAgICAgaWYgKGFyZ3MgPT0gTlVMTCkKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKLSAgICAgICAgICAgIFB5T1Nfc25wcmludGYobXNnYnVmLCBzaXplb2YobXNnYnVmKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIiUuMjAwcyVzIHRha2VzIG5vIGFyZ3VtZW50cyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGZuYW1lPT1OVUxMID8gImZ1bmN0aW9uIiA6IGZuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICBmbmFtZT09TlVMTCA/ICIiIDogIigpIik7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCBtc2didWYpOworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiJS4yMDBzJXMgdGFrZXMgbm8gYXJndW1lbnRzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBmbmFtZT09TlVMTCA/ICJmdW5jdGlvbiIgOiBmbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBmbmFtZT09TlVMTCA/ICIiIDogIigpIik7CiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQogICAgICAgICBlbHNlIGlmIChtaW4gPT0gMSAmJiBtYXggPT0gMSkgewogICAgICAgICAgICAgaWYgKGFyZ3MgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgIFB5T1Nfc25wcmludGYobXNnYnVmLCBzaXplb2YobXNnYnVmKSwKLSAgICAgICAgICAgICAgICAgICAgICAiJS4yMDBzJXMgdGFrZXMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiZnVuY3Rpb24iIDogZm5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGZuYW1lPT1OVUxMID8gIiIgOiAiKCkiKTsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCBtc2didWYpOworICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlLjIwMHMlcyB0YWtlcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbmFtZT09TlVMTCA/ICJmdW5jdGlvbiIgOiBmbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiIiA6ICIoKSIpOwogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgbXNnID0gY29udmVydGl0ZW0oYXJncywgJmZvcm1hdCwgcF92YSwgZmxhZ3MsIGxldmVscywKQEAgLTM0OSwyMCArMzQ3LDE4IEBACiAgICAgbGVuID0gUHlUdXBsZV9HRVRfU0laRShhcmdzKTsKIAogICAgIGlmIChsZW4gPCBtaW4gfHwgbWF4IDwgbGVuKSB7Ci0gICAgICAgIGlmIChtZXNzYWdlID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5T1Nfc25wcmludGYobXNnYnVmLCBzaXplb2YobXNnYnVmKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIiUuMTUwcyVzIHRha2VzICVzICVkIGFyZ3VtZW50JXMgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAiKCVsZCBnaXZlbikiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBmbmFtZT09TlVMTCA/ICJmdW5jdGlvbiIgOiBmbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiIiA6ICIoKSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIG1pbj09bWF4ID8gImV4YWN0bHkiCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDogbGVuIDwgbWluID8gImF0IGxlYXN0IiA6ICJhdCBtb3N0IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuIDwgbWluID8gbWluIDogbWF4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAobGVuIDwgbWluID8gbWluIDogbWF4KSA9PSAxID8gIiIgOiAicyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1NBRkVfRE9XTkNBU1QobGVuLCBQeV9zc2l6ZV90LCBsb25nKSk7Ci0gICAgICAgICAgICBtZXNzYWdlID0gbXNnYnVmOwotICAgICAgICB9Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsIG1lc3NhZ2UpOworICAgICAgICBpZiAobWVzc2FnZSA9PSBOVUxMKQorICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiJS4xNTBzJXMgdGFrZXMgJXMgJWQgYXJndW1lbnQlcyAoJWxkIGdpdmVuKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiZnVuY3Rpb24iIDogZm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiIiA6ICIoKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgbWluPT1tYXggPyAiZXhhY3RseSIKKyAgICAgICAgICAgICAgICAgICAgICAgICA6IGxlbiA8IG1pbiA/ICJhdCBsZWFzdCIgOiAiYXQgbW9zdCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgbGVuIDwgbWluID8gbWluIDogbWF4LAorICAgICAgICAgICAgICAgICAgICAgICAgIChsZW4gPCBtaW4gPyBtaW4gOiBtYXgpID09IDEgPyAiIiA6ICJzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeV9TQUZFX0RPV05DQVNUKGxlbiwgUHlfc3NpemVfdCwgbG9uZykpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCBtZXNzYWdlKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogCkBAIC01NTAsOSArNTQ2LDYgQEAKIAogCiAKLSNkZWZpbmUgVU5JQ09ERV9ERUZBVUxUX0VOQ09ESU5HKGFyZykgXAotICAgIF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyhhcmcsIE5VTEwpCi0KIC8qIEZvcm1hdCBhbiBlcnJvciBtZXNzYWdlIGdlbmVyYXRlZCBieSBjb252ZXJ0c2ltcGxlKCkuICovCiAKIHN0YXRpYyBjaGFyICoKQEAgLTYxNSw3ICs2MDgsNyBAQAogCiAgICAgY29uc3QgY2hhciAqZm9ybWF0ID0gKnBfZm9ybWF0OwogICAgIGNoYXIgYyA9ICpmb3JtYXQrKzsKLSAgICBQeU9iamVjdCAqdWFyZzsKKyAgICBjaGFyICpzYXJnOwogCiAgICAgc3dpdGNoIChjKSB7CiAKQEAgLTgzMiw2ICs4MjUsOCBAQAogICAgICAgICBjaGFyICpwID0gdmFfYXJnKCpwX3ZhLCBjaGFyICopOwogICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhhcmcpICYmIFB5Qnl0ZXNfU2l6ZShhcmcpID09IDEpCiAgICAgICAgICAgICAqcCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKGFyZylbMF07CisgICAgICAgIGVsc2UgaWYgKFB5Qnl0ZUFycmF5X0NoZWNrKGFyZykgJiYgUHlCeXRlQXJyYXlfU2l6ZShhcmcpID09IDEpCisgICAgICAgICAgICAqcCA9IFB5Qnl0ZUFycmF5X0FTX1NUUklORyhhcmcpWzBdOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICByZXR1cm4gY29udmVydGVycigiYSBieXRlIHN0cmluZyBvZiBsZW5ndGggMSIsIGFyZywgbXNnYnVmLCBidWZzaXplKTsKICAgICAgICAgYnJlYWs7CkBAIC04MzksMTEgKzgzNCwyMSBAQAogCiAgICAgY2FzZSAnQyc6IHsvKiB1bmljb2RlIGNoYXIgKi8KICAgICAgICAgaW50ICpwID0gdmFfYXJnKCpwX3ZhLCBpbnQgKik7Ci0gICAgICAgIGlmIChQeVVuaWNvZGVfQ2hlY2soYXJnKSAmJgotICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKGFyZykgPT0gMSkKLSAgICAgICAgICAgICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoYXJnKVswXTsKLSAgICAgICAgZWxzZQorICAgICAgICBpbnQga2luZDsKKyAgICAgICAgdm9pZCAqZGF0YTsKKworICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhhcmcpKQogICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRlcnIoImEgdW5pY29kZSBjaGFyYWN0ZXIiLCBhcmcsIG1zZ2J1ZiwgYnVmc2l6ZSk7CisKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShhcmcpKQorICAgICAgICAgICAgUkVUVVJOX0VSUl9PQ0NVUlJFRDsKKworICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoYXJnKSAhPSAxKQorICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRlcnIoImEgdW5pY29kZSBjaGFyYWN0ZXIiLCBhcmcsIG1zZ2J1ZiwgYnVmc2l6ZSk7CisKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKGFyZyk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShhcmcpOworICAgICAgICAqcCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApOwogICAgICAgICBicmVhazsKICAgICB9CiAKQEAgLTg5MSwxMyArODk2LDEyIEBACiAgICAgICAgICAgICBpZiAoYyA9PSAneicgJiYgYXJnID09IFB5X05vbmUpCiAgICAgICAgICAgICAgICAgUHlCdWZmZXJfRmlsbEluZm8ocCwgTlVMTCwgTlVMTCwgMCwgMSwgMCk7CiAgICAgICAgICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2soYXJnKSkgewotICAgICAgICAgICAgICAgIHVhcmcgPSBVTklDT0RFX0RFRkFVTFRfRU5DT0RJTkcoYXJnKTsKLSAgICAgICAgICAgICAgICBpZiAodWFyZyA9PSBOVUxMKQorICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOworICAgICAgICAgICAgICAgIHNhcmcgPSBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZShhcmcsICZsZW4pOworICAgICAgICAgICAgICAgIGlmIChzYXJnID09IE5VTEwpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZXJyKENPTlZfVU5JQ09ERSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnLCBtc2didWYsIGJ1ZnNpemUpOwotICAgICAgICAgICAgICAgIFB5QnVmZmVyX0ZpbGxJbmZvKHAsIGFyZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyh1YXJnKSwgUHlCeXRlc19HRVRfU0laRSh1YXJnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLCAwKTsKKyAgICAgICAgICAgICAgICBQeUJ1ZmZlcl9GaWxsSW5mbyhwLCBhcmcsIHNhcmcsIGxlbiwgMSwgMCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIHsgLyogYW55IGJ1ZmZlci1saWtlIG9iamVjdCAqLwogICAgICAgICAgICAgICAgIGNoYXIgKmJ1ZjsKQEAgLTkyMCwxMiArOTI0LDEzIEBACiAgICAgICAgICAgICAgICAgU1RPUkVfU0laRSgwKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayhhcmcpKSB7Ci0gICAgICAgICAgICAgICAgdWFyZyA9IFVOSUNPREVfREVGQVVMVF9FTkNPRElORyhhcmcpOwotICAgICAgICAgICAgICAgIGlmICh1YXJnID09IE5VTEwpCisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CisgICAgICAgICAgICAgICAgc2FyZyA9IFB5VW5pY29kZV9Bc1VURjhBbmRTaXplKGFyZywgJmxlbik7CisgICAgICAgICAgICAgICAgaWYgKHNhcmcgPT0gTlVMTCkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRlcnIoQ09OVl9VTklDT0RFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmcsIG1zZ2J1ZiwgYnVmc2l6ZSk7Ci0gICAgICAgICAgICAgICAgKnAgPSBQeUJ5dGVzX0FTX1NUUklORyh1YXJnKTsKLSAgICAgICAgICAgICAgICBTVE9SRV9TSVpFKFB5Qnl0ZXNfR0VUX1NJWkUodWFyZykpOworICAgICAgICAgICAgICAgICpwID0gc2FyZzsKKyAgICAgICAgICAgICAgICBTVE9SRV9TSVpFKGxlbik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIHsgLyogYW55IGJ1ZmZlci1saWtlIG9iamVjdCAqLwogICAgICAgICAgICAgICAgIC8qIFhYWCBSZWFsbHk/ICovCkBAIC05MzksMjUgKzk0NCwyNSBAQAogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLyogInMiIG9yICJ6IiAqLwogICAgICAgICAgICAgY2hhciAqKnAgPSB2YV9hcmcoKnBfdmEsIGNoYXIgKiopOwotICAgICAgICAgICAgdWFyZyA9IE5VTEw7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICAgICAgICAgIHNhcmcgPSBOVUxMOwogCiAgICAgICAgICAgICBpZiAoYyA9PSAneicgJiYgYXJnID09IFB5X05vbmUpCiAgICAgICAgICAgICAgICAgKnAgPSBOVUxMOwogICAgICAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKGFyZykpIHsKLSAgICAgICAgICAgICAgICB1YXJnID0gVU5JQ09ERV9ERUZBVUxUX0VOQ09ESU5HKGFyZyk7Ci0gICAgICAgICAgICAgICAgaWYgKHVhcmcgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBzYXJnID0gUHlVbmljb2RlX0FzVVRGOEFuZFNpemUoYXJnLCAmbGVuKTsKKyAgICAgICAgICAgICAgICBpZiAoc2FyZyA9PSBOVUxMKQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gY29udmVydGVycihDT05WX1VOSUNPREUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZywgbXNnYnVmLCBidWZzaXplKTsKLSAgICAgICAgICAgICAgICAqcCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHVhcmcpOworICAgICAgICAgICAgICAgICpwID0gc2FyZzsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICByZXR1cm4gY29udmVydGVycihjID09ICd6JyA/ICJzdHIgb3IgTm9uZSIgOiAic3RyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmcsIG1zZ2J1ZiwgYnVmc2l6ZSk7Ci0gICAgICAgICAgICBpZiAoKnAgIT0gTlVMTCAmJiB1YXJnICE9IE5VTEwgJiYKLSAgICAgICAgICAgICAgICAoUHlfc3NpemVfdCkgc3RybGVuKCpwKSAhPSBQeUJ5dGVzX0dFVF9TSVpFKHVhcmcpKQorICAgICAgICAgICAgaWYgKCpwICE9IE5VTEwgJiYgc2FyZyAhPSBOVUxMICYmIChQeV9zc2l6ZV90KSBzdHJsZW4oKnApICE9IGxlbikKICAgICAgICAgICAgICAgICByZXR1cm4gY29udmVydGVycigKLSAgICAgICAgICAgICAgICAgICAgYyA9PSAneicgPyAic3RyIHdpdGhvdXQgbnVsbCBieXRlcyBvciBOb25lIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICJzdHIgd2l0aG91dCBudWxsIGJ5dGVzIiwKKyAgICAgICAgICAgICAgICAgICAgYyA9PSAneicgPyAic3RyIHdpdGhvdXQgbnVsbCBjaGFyYWN0ZXJzIG9yIE5vbmUiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogInN0ciB3aXRob3V0IG51bGwgY2hhcmFjdGVycyIsCiAgICAgICAgICAgICAgICAgICAgIGFyZywgbXNnYnVmLCBidWZzaXplKTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKQEAgLTk2Niw5ICs5NzEsMTAgQEAKICAgICBjYXNlICd1JzogLyogcmF3IHVuaWNvZGUgYnVmZmVyIChQeV9VTklDT0RFICopICovCiAgICAgY2FzZSAnWic6IC8qIHJhdyB1bmljb2RlIGJ1ZmZlciBvciBOb25lICovCiAgICAgeworICAgICAgICBQeV9VTklDT0RFICoqcCA9IHZhX2FyZygqcF92YSwgUHlfVU5JQ09ERSAqKik7CisKICAgICAgICAgaWYgKCpmb3JtYXQgPT0gJyMnKSB7IC8qIGFueSBidWZmZXItbGlrZSBvYmplY3QgKi8KICAgICAgICAgICAgIC8qICJzIyIgb3IgIlojIiAqLwotICAgICAgICAgICAgUHlfVU5JQ09ERSAqKnAgPSB2YV9hcmcoKnBfdmEsIFB5X1VOSUNPREUgKiopOwogICAgICAgICAgICAgRkVUQ0hfU0laRTsKIAogICAgICAgICAgICAgaWYgKGMgPT0gJ1onICYmIGFyZyA9PSBQeV9Ob25lKSB7CkBAIC05NzYsMjMgKzk4MiwyNyBAQAogICAgICAgICAgICAgICAgIFNUT1JFX1NJWkUoMCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2soYXJnKSkgewotICAgICAgICAgICAgICAgICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoYXJnKTsKLSAgICAgICAgICAgICAgICBTVE9SRV9TSVpFKFB5VW5pY29kZV9HRVRfU0laRShhcmcpKTsKKyAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICAgICAgICAgICAgICAqcCA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKGFyZywgJmxlbik7CisgICAgICAgICAgICAgICAgaWYgKCpwID09IE5VTEwpCisgICAgICAgICAgICAgICAgICAgIFJFVFVSTl9FUlJfT0NDVVJSRUQ7CisgICAgICAgICAgICAgICAgU1RPUkVfU0laRShsZW4pOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZXJyKCJzdHIgb3IgTm9uZSIsIGFyZywgbXNnYnVmLCBidWZzaXplKTsKICAgICAgICAgICAgIGZvcm1hdCsrOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgLyogInMiIG9yICJaIiAqLwotICAgICAgICAgICAgUHlfVU5JQ09ERSAqKnAgPSB2YV9hcmcoKnBfdmEsIFB5X1VOSUNPREUgKiopOwotCiAgICAgICAgICAgICBpZiAoYyA9PSAnWicgJiYgYXJnID09IFB5X05vbmUpCiAgICAgICAgICAgICAgICAgKnAgPSBOVUxMOwogICAgICAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKGFyZykpIHsKLSAgICAgICAgICAgICAgICAqcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKGFyZyk7Ci0gICAgICAgICAgICAgICAgaWYgKFB5X1VOSUNPREVfc3RybGVuKCpwKSAhPSBQeVVuaWNvZGVfR0VUX1NJWkUoYXJnKSkKKyAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICAgICAgICAgICAgICAqcCA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKGFyZywgJmxlbik7CisgICAgICAgICAgICAgICAgaWYgKCpwID09IE5VTEwpCisgICAgICAgICAgICAgICAgICAgIFJFVFVSTl9FUlJfT0NDVVJSRUQ7CisgICAgICAgICAgICAgICAgaWYgKFB5X1VOSUNPREVfc3RybGVuKCpwKSAhPSBsZW4pCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZXJyKAotICAgICAgICAgICAgICAgICAgICAgICAgInN0ciB3aXRob3V0IG51bGwgY2hhcmFjdGVyIG9yIE5vbmUiLAorICAgICAgICAgICAgICAgICAgICAgICAgInN0ciB3aXRob3V0IG51bGwgY2hhcmFjdGVycyBvciBOb25lIiwKICAgICAgICAgICAgICAgICAgICAgICAgIGFyZywgbXNnYnVmLCBidWZzaXplKTsKICAgICAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZXJyKGMgPT0gJ1onID8gInN0ciBvciBOb25lIiA6ICJzdHIiLApAQCAtMTQ1OSw4ICsxNDY5LDggQEAKICAgICBuYXJncyA9IFB5VHVwbGVfR0VUX1NJWkUoYXJncyk7CiAgICAgbmtleXdvcmRzID0gKGtleXdvcmRzID09IE5VTEwpID8gMCA6IFB5RGljdF9TaXplKGtleXdvcmRzKTsKICAgICBpZiAobmFyZ3MgKyBua2V5d29yZHMgPiBsZW4pIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIiVzJXMgdGFrZXMgYXQgbW9zdCAlZCAiCi0gICAgICAgICAgICAgICAgICAgICAiYXJndW1lbnQlcyAoJWQgZ2l2ZW4pIiwKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICIlcyVzIHRha2VzIGF0IG1vc3QgJWQgYXJndW1lbnQlcyAoJWQgZ2l2ZW4pIiwKICAgICAgICAgICAgICAgICAgICAgIChmbmFtZSA9PSBOVUxMKSA/ICJmdW5jdGlvbiIgOiBmbmFtZSwKICAgICAgICAgICAgICAgICAgICAgIChmbmFtZSA9PSBOVUxMKSA/ICIiIDogIigpIiwKICAgICAgICAgICAgICAgICAgICAgIGxlbiwKZGlmZiAtLWdpdCBhL1B5dGhvbi9nZXRjb3B5cmlnaHQuYyBiL1B5dGhvbi9nZXRjb3B5cmlnaHQuYwppbmRleCBkMWUyNTc4Li5kODNjNmRhIDEwMDY0NAotLS0gYS9QeXRob24vZ2V0Y29weXJpZ2h0LmMKKysrIGIvUHl0aG9uL2dldGNvcHlyaWdodC5jCkBAIC0xOSw1ICsxOSw1IEBACiBjb25zdCBjaGFyICoKIFB5X0dldENvcHlyaWdodCh2b2lkKQogewotCXJldHVybiBjcHJ0OworICAgIHJldHVybiBjcHJ0OwogfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL2dyYW1pbml0LmMgYi9QeXRob24vZ3JhbWluaXQuYwppbmRleCBjYWJjNGQ2Li5lMDQ5OTliIDEwMDY0NAotLS0gYS9QeXRob24vZ3JhbWluaXQuYworKysgYi9QeXRob24vZ3JhbWluaXQuYwpAQCAtMTc5MSw3ICsxNzkxLDcgQEAKICAgICB7MTY3LCAxfSwKIH07CiBzdGF0aWMgYXJjIGFyY3NfODBfMVsyXSA9IHsKLSAgICB7OSwgMn0sCisgICAgezE2OCwgMn0sCiAgICAgezAsIDF9LAogfTsKIHN0YXRpYyBhcmMgYXJjc184MF8yWzFdID0gewpAQCAtMTgwMiwxNzEgKzE4MDIsMTg4IEBACiAgICAgezIsIGFyY3NfODBfMX0sCiAgICAgezEsIGFyY3NfODBfMn0sCiB9Owotc3RhdGljIGRmYSBkZmFzWzgxXSA9IHsKLSAgICB7MjU2LCAic2luZ2xlX2lucHV0IiwgMCwgMywgc3RhdGVzXzAsCi0gICAgICJcMDA0XDA1MFwwNjBcMjAwXDAwMFwwMDBcMDAwXDI0MFwzNDBcMjIzXDE2MFwyMjBcMDQ1XDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwyMDQifSwKLSAgICB7MjU3LCAiZmlsZV9pbnB1dCIsIDAsIDIsIHN0YXRlc18xLAotICAgICAiXDIwNFwwNTBcMDYwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMjIwXDA0NVwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjA0In0sCi0gICAgezI1OCwgImV2YWxfaW5wdXQiLCAwLCAzLCBzdGF0ZXNfMiwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHsyNTksICJkZWNvcmF0b3IiLCAwLCA3LCBzdGF0ZXNfMywKLSAgICAgIlwwMDBcMDEwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyNjAsICJkZWNvcmF0b3JzIiwgMCwgMiwgc3RhdGVzXzQsCi0gICAgICJcMDAwXDAxMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjYxLCAiZGVjb3JhdGVkIiwgMCwgMywgc3RhdGVzXzUsCi0gICAgICJcMDAwXDAxMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjYyLCAiZnVuY2RlZiIsIDAsIDgsIHN0YXRlc182LAotICAgICAiXDAwMFwwMDBcMDIwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI2MywgInBhcmFtZXRlcnMiLCAwLCA0LCBzdGF0ZXNfNywKLSAgICAgIlwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyNjQsICJ0eXBlZGFyZ3NsaXN0IiwgMCwgMTgsIHN0YXRlc184LAotICAgICAiXDAwMFwwMDBcMDQwXDIwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI2NSwgInRmcGRlZiIsIDAsIDQsIHN0YXRlc185LAotICAgICAiXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI2NiwgInZhcmFyZ3NsaXN0IiwgMCwgMTgsIHN0YXRlc18xMCwKLSAgICAgIlwwMDBcMDAwXDA0MFwyMDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyNjcsICJ2ZnBkZWYiLCAwLCAyLCBzdGF0ZXNfMTEsCi0gICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjY4LCAic3RtdCIsIDAsIDIsIHN0YXRlc18xMiwKLSAgICAgIlwwMDBcMDUwXDA2MFwyMDBcMDAwXDAwMFwwMDBcMjQwXDM0MFwyMjNcMTYwXDIyMFwwNDVcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDIwNCJ9LAotICAgIHsyNjksICJzaW1wbGVfc3RtdCIsIDAsIDQsIHN0YXRlc18xMywKLSAgICAgIlwwMDBcMDQwXDA0MFwyMDBcMDAwXDAwMFwwMDBcMjQwXDM0MFwyMjNcMTYwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDIwMCJ9LAotICAgIHsyNzAsICJzbWFsbF9zdG10IiwgMCwgMiwgc3RhdGVzXzE0LAotICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjAwIn0sCi0gICAgezI3MSwgImV4cHJfc3RtdCIsIDAsIDYsIHN0YXRlc18xNSwKLSAgICAgIlwwMDBcMDQwXDA0MFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHsyNzIsICJ0ZXN0bGlzdF9zdGFyX2V4cHIiLCAwLCAzLCBzdGF0ZXNfMTYsCi0gICAgICJcMDAwXDA0MFwwNDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MjczLCAiYXVnYXNzaWduIiwgMCwgMiwgc3RhdGVzXzE3LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDM3NlwwMzdcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI3NCwgImRlbF9zdG10IiwgMCwgMywgc3RhdGVzXzE4LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI3NSwgInBhc3Nfc3RtdCIsIDAsIDIsIHN0YXRlc18xOSwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyNzYsICJmbG93X3N0bXQiLCAwLCAyLCBzdGF0ZXNfMjAsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwzNDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDAifSwKLSAgICB7Mjc3LCAiYnJlYWtfc3RtdCIsIDAsIDIsIHN0YXRlc18yMSwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyNzgsICJjb250aW51ZV9zdG10IiwgMCwgMiwgc3RhdGVzXzIyLAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMTAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI3OSwgInJldHVybl9zdG10IiwgMCwgMywgc3RhdGVzXzIzLAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI4MCwgInlpZWxkX3N0bXQiLCAwLCAyLCBzdGF0ZXNfMjQsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDAifSwKLSAgICB7MjgxLCAicmFpc2Vfc3RtdCIsIDAsIDUsIHN0YXRlc18yNSwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyODIsICJpbXBvcnRfc3RtdCIsIDAsIDIsIHN0YXRlc18yNiwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMjJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyODMsICJpbXBvcnRfbmFtZSIsIDAsIDMsIHN0YXRlc18yNywKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyODQsICJpbXBvcnRfZnJvbSIsIDAsIDgsIHN0YXRlc18yOCwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyODUsICJpbXBvcnRfYXNfbmFtZSIsIDAsIDQsIHN0YXRlc18yOSwKLSAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyODYsICJkb3R0ZWRfYXNfbmFtZSIsIDAsIDQsIHN0YXRlc18zMCwKLSAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyODcsICJpbXBvcnRfYXNfbmFtZXMiLCAwLCAzLCBzdGF0ZXNfMzEsCi0gICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7Mjg4LCAiZG90dGVkX2FzX25hbWVzIiwgMCwgMiwgc3RhdGVzXzMyLAotICAgICAiXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI4OSwgImRvdHRlZF9uYW1lIiwgMCwgMiwgc3RhdGVzXzMzLAotICAgICAiXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI5MCwgImdsb2JhbF9zdG10IiwgMCwgMywgc3RhdGVzXzM0LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI5MSwgIm5vbmxvY2FsX3N0bXQiLCAwLCAzLCBzdGF0ZXNfMzUsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjkyLCAiYXNzZXJ0X3N0bXQiLCAwLCA1LCBzdGF0ZXNfMzYsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDEwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjkzLCAiY29tcG91bmRfc3RtdCIsIDAsIDIsIHN0YXRlc18zNywKLSAgICAgIlwwMDBcMDEwXDAyMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIyMFwwNDVcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwNCJ9LAotICAgIHsyOTQsICJpZl9zdG10IiwgMCwgOCwgc3RhdGVzXzM4LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDIwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI5NSwgIndoaWxlX3N0bXQiLCAwLCA4LCBzdGF0ZXNfMzksCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7Mjk2LCAiZm9yX3N0bXQiLCAwLCAxMCwgc3RhdGVzXzQwLAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI5NywgInRyeV9zdG10IiwgMCwgMTMsIHN0YXRlc180MSwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDRcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyOTgsICJ3aXRoX3N0bXQiLCAwLCA1LCBzdGF0ZXNfNDIsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7Mjk5LCAid2l0aF9pdGVtIiwgMCwgNCwgc3RhdGVzXzQzLAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMwMCwgImV4Y2VwdF9jbGF1c2UiLCAwLCA1LCBzdGF0ZXNfNDQsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MzAxLCAic3VpdGUiLCAwLCA1LCBzdGF0ZXNfNDUsCi0gICAgICJcMDA0XDA0MFwwNDBcMjAwXDAwMFwwMDBcMDAwXDI0MFwzNDBcMjIzXDE2MFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwyMDAifSwKLSAgICB7MzAyLCAidGVzdCIsIDAsIDYsIHN0YXRlc180NiwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMDMsICJ0ZXN0X25vY29uZCIsIDAsIDIsIHN0YXRlc180NywKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMDQsICJsYW1iZGVmIiwgMCwgNSwgc3RhdGVzXzQ4LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezMwNSwgImxhbWJkZWZfbm9jb25kIiwgMCwgNSwgc3RhdGVzXzQ5LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezMwNiwgIm9yX3Rlc3QiLCAwLCAyLCBzdGF0ZXNfNTAsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzA3LCAiYW5kX3Rlc3QiLCAwLCAyLCBzdGF0ZXNfNTEsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzA4LCAibm90X3Rlc3QiLCAwLCAzLCBzdGF0ZXNfNTIsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzA5LCAiY29tcGFyaXNvbiIsIDAsIDIsIHN0YXRlc181MywKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMTAsICJjb21wX29wIiwgMCwgNCwgc3RhdGVzXzU0LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMlwwMDBcMjIwXDE3N1wwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezMxMSwgInN0YXJfZXhwciIsIDAsIDMsIHN0YXRlc181NSwKLSAgICAgIlwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHszMTIsICJleHByIiwgMCwgMiwgc3RhdGVzXzU2LAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMxMywgInhvcl9leHByIiwgMCwgMiwgc3RhdGVzXzU3LAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMxNCwgImFuZF9leHByIiwgMCwgMiwgc3RhdGVzXzU4LAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMxNSwgInNoaWZ0X2V4cHIiLCAwLCAyLCBzdGF0ZXNfNTksCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzE2LCAiYXJpdGhfZXhwciIsIDAsIDIsIHN0YXRlc182MCwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMTcsICJ0ZXJtIiwgMCwgMiwgc3RhdGVzXzYxLAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMxOCwgImZhY3RvciIsIDAsIDMsIHN0YXRlc182MiwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMTksICJwb3dlciIsIDAsIDQsIHN0YXRlc182MywKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwxMjBcMDc2XDAwMCJ9LAotICAgIHszMjAsICJhdG9tIiwgMCwgOSwgc3RhdGVzXzY0LAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDEyMFwwNzZcMDAwIn0sCi0gICAgezMyMSwgInRlc3RsaXN0X2NvbXAiLCAwLCA1LCBzdGF0ZXNfNjUsCi0gICAgICJcMDAwXDA0MFwwNDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzIyLCAidHJhaWxlciIsIDAsIDcsIHN0YXRlc182NiwKLSAgICAgIlwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwxMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMCJ9LAotICAgIHszMjMsICJzdWJzY3JpcHRsaXN0IiwgMCwgMywgc3RhdGVzXzY3LAotICAgICAiXDAwMFwwNDBcMDQwXDAwMlwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMyNCwgInN1YnNjcmlwdCIsIDAsIDUsIHN0YXRlc182OCwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDJcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMjUsICJzbGljZW9wIiwgMCwgMywgc3RhdGVzXzY5LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezMyNiwgImV4cHJsaXN0IiwgMCwgMywgc3RhdGVzXzcwLAotICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMyNywgInRlc3RsaXN0IiwgMCwgMywgc3RhdGVzXzcxLAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMyOCwgImRpY3RvcnNldG1ha2VyIiwgMCwgMTEsIHN0YXRlc183MiwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMjksICJjbGFzc2RlZiIsIDAsIDgsIHN0YXRlc183MywKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwNCJ9LAotICAgIHszMzAsICJhcmdsaXN0IiwgMCwgOCwgc3RhdGVzXzc0LAotICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMzMSwgImFyZ3VtZW50IiwgMCwgNCwgc3RhdGVzXzc1LAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMzMiwgImNvbXBfaXRlciIsIDAsIDIsIHN0YXRlc183NiwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHszMzMsICJjb21wX2ZvciIsIDAsIDYsIHN0YXRlc183NywKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHszMzQsICJjb21wX2lmIiwgMCwgNCwgc3RhdGVzXzc4LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDIwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezMzNSwgImVuY29kaW5nX2RlY2wiLCAwLCAyLCBzdGF0ZXNfNzksCi0gICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MzM2LCAieWllbGRfZXhwciIsIDAsIDMsIHN0YXRlc184MCwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMCJ9LAorc3RhdGljIGFyYyBhcmNzXzgxXzBbMl0gPSB7CisgICAgezczLCAxfSwKKyAgICB7OSwgMn0sCiB9Owotc3RhdGljIGxhYmVsIGxhYmVsc1sxNjhdID0geworc3RhdGljIGFyYyBhcmNzXzgxXzFbMV0gPSB7CisgICAgezI0LCAyfSwKK307CitzdGF0aWMgYXJjIGFyY3NfODFfMlsxXSA9IHsKKyAgICB7MCwgMn0sCit9Oworc3RhdGljIHN0YXRlIHN0YXRlc184MVszXSA9IHsKKyAgICB7MiwgYXJjc184MV8wfSwKKyAgICB7MSwgYXJjc184MV8xfSwKKyAgICB7MSwgYXJjc184MV8yfSwKK307CitzdGF0aWMgZGZhIGRmYXNbODJdID0geworICAgIHsyNTYsICJzaW5nbGVfaW5wdXQiLCAwLCAzLCBzdGF0ZXNfMCwKKyAgICAgIlwwMDRcMDUwXDA2MFwyMDBcMDAwXDAwMFwwMDBcMjQwXDM0MFwyMjNcMTYwXDIyMFwwNDVcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDIwNFwwMDAifSwKKyAgICB7MjU3LCAiZmlsZV9pbnB1dCIsIDAsIDIsIHN0YXRlc18xLAorICAgICAiXDIwNFwwNTBcMDYwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMjIwXDA0NVwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjA0XDAwMCJ9LAorICAgIHsyNTgsICJldmFsX2lucHV0IiwgMCwgMywgc3RhdGVzXzIsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezI1OSwgImRlY29yYXRvciIsIDAsIDcsIHN0YXRlc18zLAorICAgICAiXDAwMFwwMTBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNjAsICJkZWNvcmF0b3JzIiwgMCwgMiwgc3RhdGVzXzQsCisgICAgICJcMDAwXDAxMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI2MSwgImRlY29yYXRlZCIsIDAsIDMsIHN0YXRlc181LAorICAgICAiXDAwMFwwMTBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNjIsICJmdW5jZGVmIiwgMCwgOCwgc3RhdGVzXzYsCisgICAgICJcMDAwXDAwMFwwMjBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI2MywgInBhcmFtZXRlcnMiLCAwLCA0LCBzdGF0ZXNfNywKKyAgICAgIlwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjY0LCAidHlwZWRhcmdzbGlzdCIsIDAsIDE4LCBzdGF0ZXNfOCwKKyAgICAgIlwwMDBcMDAwXDA0MFwyMDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjY1LCAidGZwZGVmIiwgMCwgNCwgc3RhdGVzXzksCisgICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI2NiwgInZhcmFyZ3NsaXN0IiwgMCwgMTgsIHN0YXRlc18xMCwKKyAgICAgIlwwMDBcMDAwXDA0MFwyMDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjY3LCAidmZwZGVmIiwgMCwgMiwgc3RhdGVzXzExLAorICAgICAiXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNjgsICJzdG10IiwgMCwgMiwgc3RhdGVzXzEyLAorICAgICAiXDAwMFwwNTBcMDYwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMjIwXDA0NVwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjA0XDAwMCJ9LAorICAgIHsyNjksICJzaW1wbGVfc3RtdCIsIDAsIDQsIHN0YXRlc18xMywKKyAgICAgIlwwMDBcMDQwXDA0MFwyMDBcMDAwXDAwMFwwMDBcMjQwXDM0MFwyMjNcMTYwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDIwMFwwMDAifSwKKyAgICB7MjcwLCAic21hbGxfc3RtdCIsIDAsIDIsIHN0YXRlc18xNCwKKyAgICAgIlwwMDBcMDQwXDA0MFwyMDBcMDAwXDAwMFwwMDBcMjQwXDM0MFwyMjNcMTYwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDIwMFwwMDAifSwKKyAgICB7MjcxLCAiZXhwcl9zdG10IiwgMCwgNiwgc3RhdGVzXzE1LAorICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHsyNzIsICJ0ZXN0bGlzdF9zdGFyX2V4cHIiLCAwLCAzLCBzdGF0ZXNfMTYsCisgICAgICJcMDAwXDA0MFwwNDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezI3MywgImF1Z2Fzc2lnbiIsIDAsIDIsIHN0YXRlc18xNywKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwzNzZcMDM3XDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjc0LCAiZGVsX3N0bXQiLCAwLCAzLCBzdGF0ZXNfMTgsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI3NSwgInBhc3Nfc3RtdCIsIDAsIDIsIHN0YXRlc18xOSwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjc2LCAiZmxvd19zdG10IiwgMCwgMiwgc3RhdGVzXzIwLAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMzQwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMCJ9LAorICAgIHsyNzcsICJicmVha19zdG10IiwgMCwgMiwgc3RhdGVzXzIxLAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNzgsICJjb250aW51ZV9zdG10IiwgMCwgMiwgc3RhdGVzXzIyLAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMTAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNzksICJyZXR1cm5fc3RtdCIsIDAsIDMsIHN0YXRlc18yMywKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjgwLCAieWllbGRfc3RtdCIsIDAsIDIsIHN0YXRlc18yNCwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDAifSwKKyAgICB7MjgxLCAicmFpc2Vfc3RtdCIsIDAsIDUsIHN0YXRlc18yNSwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjgyLCAiaW1wb3J0X3N0bXQiLCAwLCAyLCBzdGF0ZXNfMjYsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDIyXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI4MywgImltcG9ydF9uYW1lIiwgMCwgMywgc3RhdGVzXzI3LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyODQsICJpbXBvcnRfZnJvbSIsIDAsIDgsIHN0YXRlc18yOCwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjg1LCAiaW1wb3J0X2FzX25hbWUiLCAwLCA0LCBzdGF0ZXNfMjksCisgICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI4NiwgImRvdHRlZF9hc19uYW1lIiwgMCwgNCwgc3RhdGVzXzMwLAorICAgICAiXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyODcsICJpbXBvcnRfYXNfbmFtZXMiLCAwLCAzLCBzdGF0ZXNfMzEsCisgICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI4OCwgImRvdHRlZF9hc19uYW1lcyIsIDAsIDIsIHN0YXRlc18zMiwKKyAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjg5LCAiZG90dGVkX25hbWUiLCAwLCAyLCBzdGF0ZXNfMzMsCisgICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI5MCwgImdsb2JhbF9zdG10IiwgMCwgMywgc3RhdGVzXzM0LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyOTEsICJub25sb2NhbF9zdG10IiwgMCwgMywgc3RhdGVzXzM1LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyOTIsICJhc3NlcnRfc3RtdCIsIDAsIDUsIHN0YXRlc18zNiwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMTAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjkzLCAiY29tcG91bmRfc3RtdCIsIDAsIDIsIHN0YXRlc18zNywKKyAgICAgIlwwMDBcMDEwXDAyMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIyMFwwNDVcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwNFwwMDAifSwKKyAgICB7Mjk0LCAiaWZfc3RtdCIsIDAsIDgsIHN0YXRlc18zOCwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjk1LCAid2hpbGVfc3RtdCIsIDAsIDgsIHN0YXRlc18zOSwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjk2LCAiZm9yX3N0bXQiLCAwLCAxMCwgc3RhdGVzXzQwLAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyOTcsICJ0cnlfc3RtdCIsIDAsIDEzLCBzdGF0ZXNfNDEsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDA0XDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI5OCwgIndpdGhfc3RtdCIsIDAsIDUsIHN0YXRlc180MiwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjk5LCAid2l0aF9pdGVtIiwgMCwgNCwgc3RhdGVzXzQzLAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMDAsICJleGNlcHRfY2xhdXNlIiwgMCwgNSwgc3RhdGVzXzQ0LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHszMDEsICJzdWl0ZSIsIDAsIDUsIHN0YXRlc180NSwKKyAgICAgIlwwMDRcMDQwXDA0MFwyMDBcMDAwXDAwMFwwMDBcMjQwXDM0MFwyMjNcMTYwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDIwMFwwMDAifSwKKyAgICB7MzAyLCAidGVzdCIsIDAsIDYsIHN0YXRlc180NiwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzAzLCAidGVzdF9ub2NvbmQiLCAwLCAyLCBzdGF0ZXNfNDcsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMwNCwgImxhbWJkZWYiLCAwLCA1LCBzdGF0ZXNfNDgsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezMwNSwgImxhbWJkZWZfbm9jb25kIiwgMCwgNSwgc3RhdGVzXzQ5LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHszMDYsICJvcl90ZXN0IiwgMCwgMiwgc3RhdGVzXzUwLAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMDcsICJhbmRfdGVzdCIsIDAsIDIsIHN0YXRlc181MSwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzA4LCAibm90X3Rlc3QiLCAwLCAzLCBzdGF0ZXNfNTIsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMwOSwgImNvbXBhcmlzb24iLCAwLCAyLCBzdGF0ZXNfNTMsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMxMCwgImNvbXBfb3AiLCAwLCA0LCBzdGF0ZXNfNTQsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAyXDAwMFwyMjBcMTc3XDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezMxMSwgInN0YXJfZXhwciIsIDAsIDMsIHN0YXRlc181NSwKKyAgICAgIlwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MzEyLCAiZXhwciIsIDAsIDIsIHN0YXRlc181NiwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzEzLCAieG9yX2V4cHIiLCAwLCAyLCBzdGF0ZXNfNTcsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMxNCwgImFuZF9leHByIiwgMCwgMiwgc3RhdGVzXzU4LAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMTUsICJzaGlmdF9leHByIiwgMCwgMiwgc3RhdGVzXzU5LAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMTYsICJhcml0aF9leHByIiwgMCwgMiwgc3RhdGVzXzYwLAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMTcsICJ0ZXJtIiwgMCwgMiwgc3RhdGVzXzYxLAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMTgsICJmYWN0b3IiLCAwLCAzLCBzdGF0ZXNfNjIsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMxOSwgInBvd2VyIiwgMCwgNCwgc3RhdGVzXzYzLAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMjAsICJhdG9tIiwgMCwgOSwgc3RhdGVzXzY0LAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMjEsICJ0ZXN0bGlzdF9jb21wIiwgMCwgNSwgc3RhdGVzXzY1LAorICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMjIsICJ0cmFpbGVyIiwgMCwgNywgc3RhdGVzXzY2LAorICAgICAiXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDEwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDAwMCJ9LAorICAgIHszMjMsICJzdWJzY3JpcHRsaXN0IiwgMCwgMywgc3RhdGVzXzY3LAorICAgICAiXDAwMFwwNDBcMDQwXDAwMlwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMjQsICJzdWJzY3JpcHQiLCAwLCA1LCBzdGF0ZXNfNjgsCisgICAgICJcMDAwXDA0MFwwNDBcMDAyXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMyNSwgInNsaWNlb3AiLCAwLCAzLCBzdGF0ZXNfNjksCisgICAgICJcMDAwXDAwMFwwMDBcMDAyXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezMyNiwgImV4cHJsaXN0IiwgMCwgMywgc3RhdGVzXzcwLAorICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMjcsICJ0ZXN0bGlzdCIsIDAsIDMsIHN0YXRlc183MSwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzI4LCAiZGljdG9yc2V0bWFrZXIiLCAwLCAxMSwgc3RhdGVzXzcyLAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMjksICJjbGFzc2RlZiIsIDAsIDgsIHN0YXRlc183MywKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwNFwwMDAifSwKKyAgICB7MzMwLCAiYXJnbGlzdCIsIDAsIDgsIHN0YXRlc183NCwKKyAgICAgIlwwMDBcMDQwXDA0MFwyMDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzMxLCAiYXJndW1lbnQiLCAwLCA0LCBzdGF0ZXNfNzUsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMzMiwgImNvbXBfaXRlciIsIDAsIDIsIHN0YXRlc183NiwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MzMzLCAiY29tcF9mb3IiLCAwLCA2LCBzdGF0ZXNfNzcsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezMzNCwgImNvbXBfaWYiLCAwLCA0LCBzdGF0ZXNfNzgsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezMzNSwgImVuY29kaW5nX2RlY2wiLCAwLCAyLCBzdGF0ZXNfNzksCisgICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezMzNiwgInlpZWxkX2V4cHIiLCAwLCAzLCBzdGF0ZXNfODAsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwIn0sCisgICAgezMzNywgInlpZWxkX2FyZyIsIDAsIDMsIHN0YXRlc184MSwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDJcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKK307CitzdGF0aWMgbGFiZWwgbGFiZWxzWzE2OV0gPSB7CiAgICAgezAsICJFTVBUWSJ9LAogICAgIHsyNTYsIDB9LAogICAgIHs0LCAwfSwKQEAgLTIxMzUsMTAgKzIxNTIsMTEgQEAKICAgICB7MzM0LCAwfSwKICAgICB7MzM1LCAwfSwKICAgICB7MSwgInlpZWxkIn0sCisgICAgezMzNywgMH0sCiB9OwogZ3JhbW1hciBfUHlQYXJzZXJfR3JhbW1hciA9IHsKLSAgICA4MSwKKyAgICA4MiwKICAgICBkZmFzLAotICAgIHsxNjgsIGxhYmVsc30sCisgICAgezE2OSwgbGFiZWxzfSwKICAgICAyNTYKIH07CmRpZmYgLS1naXQgYS9QeXRob24vaW1wb3J0LmMgYi9QeXRob24vaW1wb3J0LmMKaW5kZXggZjQ0M2FiOC4uNDg3MWI5OSAxMDA2NDQKLS0tIGEvUHl0aG9uL2ltcG9ydC5jCisrKyBiL1B5dGhvbi9pbXBvcnQuYwpAQCAtMTAyLDYgKzEwMiw5IEBACiAgICAgICAgUHl0aG9uIDMuMmExOiAzMTcwIChhZGQgRFVQX1RPUF9UV08sIHJlbW92ZSBEVVBfVE9QWCBhbmQgUk9UX0ZPVVIpCiAgICAgICAgICAgICAgICAgICAgICB0YWc6IGNweXRob24tMzIKICAgICAgICBQeXRob24gMy4yYTIgIDMxODAgKGFkZCBERUxFVEVfREVSRUYpCisgICAgICAgUHl0aG9uIDMuM2EwICAzMTkwIF9fY2xhc3NfXyBzdXBlciBjbG9zdXJlIGNoYW5nZWQKKyAgICAgICBQeXRob24gMy4zYTAgIDMyMDAgKF9fcXVhbG5hbWVfXyBhZGRlZCkKKyAgICAgICAgICAgICAgICAgICAgIDMyMTAgKGFkZGVkIHNpemUgbW9kdWxvIDIqKjMyIHRvIHRoZSBweWMgaGVhZGVyKQogKi8KIAogLyogTUFHSUMgbXVzdCBjaGFuZ2Ugd2hlbmV2ZXIgdGhlIGJ5dGVjb2RlIGVtaXR0ZWQgYnkgdGhlIGNvbXBpbGVyIG1heSBubwpAQCAtMTEwLDIyICsxMTMsMzAgQEAKICAgIFRBRyBtdXN0IGNoYW5nZSBmb3IgZWFjaCBtYWpvciBQeXRob24gcmVsZWFzZS4gVGhlIG1hZ2ljIG51bWJlciB3aWxsIHRha2UKICAgIGNhcmUgb2YgYW55IGJ5dGVjb2RlIGNoYW5nZXMgdGhhdCBvY2N1ciBkdXJpbmcgZGV2ZWxvcG1lbnQuCiAqLwotI2RlZmluZSBNQUdJQyAoMzE4MCB8ICgobG9uZyknXHInPDwxNikgfCAoKGxvbmcpJ1xuJzw8MjQpKQotI2RlZmluZSBUQUcgImNweXRob24tMzIiCisjZGVmaW5lIFFVT1RFKGFyZykgI2FyZworI2RlZmluZSBTVFJJRlkobmFtZSkgUVVPVEUobmFtZSkKKyNkZWZpbmUgTUFKT1IgU1RSSUZZKFBZX01BSk9SX1ZFUlNJT04pCisjZGVmaW5lIE1JTk9SIFNUUklGWShQWV9NSU5PUl9WRVJTSU9OKQorI2RlZmluZSBNQUdJQyAoMzIxMCB8ICgobG9uZyknXHInPDwxNikgfCAoKGxvbmcpJ1xuJzw8MjQpKQorI2RlZmluZSBUQUcgImNweXRob24tIiBNQUpPUiBNSU5PUjsKICNkZWZpbmUgQ0FDSEVESVIgIl9fcHljYWNoZV9fIgogLyogQ3VycmVudCBtYWdpYyB3b3JkIGFuZCBzdHJpbmcgdGFnIGFzIGdsb2JhbHMuICovCiBzdGF0aWMgbG9uZyBweWNfbWFnaWMgPSBNQUdJQzsKIHN0YXRpYyBjb25zdCBjaGFyICpweWNfdGFnID0gVEFHOworI3VuZGVmIFFVT1RFCisjdW5kZWYgU1RSSUZZCisjdW5kZWYgTUFKT1IKKyN1bmRlZiBNSU5PUgogCi0vKiBTZWUgX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uVW5pY29kZSgpIGJlbG93ICovCisvKiBTZWUgX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uT2JqZWN0KCkgYmVsb3cgKi8KIHN0YXRpYyBQeU9iamVjdCAqZXh0ZW5zaW9ucyA9IE5VTEw7CiAKKy8qIEZ1bmN0aW9uIGZyb20gUGFyc2VyL3Rva2VuaXplci5jICovCitleHRlcm4gY2hhciAqIFB5VG9rZW5pemVyX0ZpbmRFbmNvZGluZ0ZpbGVuYW1lKGludCwgUHlPYmplY3QgKik7CisKIC8qIFRoaXMgdGFibGUgaXMgZGVmaW5lZCBpbiBjb25maWcuYzogKi8KIGV4dGVybiBzdHJ1Y3QgX2luaXR0YWIgX1B5SW1wb3J0X0luaXR0YWJbXTsKIAotLyogTWV0aG9kIGZyb20gUGFyc2VyL3Rva2VuaXplci5jICovCi1leHRlcm4gY2hhciAqIFB5VG9rZW5pemVyX0ZpbmRFbmNvZGluZyhpbnQpOwotCiBzdHJ1Y3QgX2luaXR0YWIgKlB5SW1wb3J0X0luaXR0YWIgPSBfUHlJbXBvcnRfSW5pdHRhYjsKIAogLyogdGhlc2UgdGFibGVzIGRlZmluZSB0aGUgbW9kdWxlIHN1ZmZpeGVzIHRoYXQgUHl0aG9uIHJlY29nbml6ZXMgKi8KQEAgLTE0MCw2ICsxNTEsOCBAQAogICAgIHswLCAwfQogfTsKIAorc3RhdGljIFB5T2JqZWN0ICppbml0c3RyID0gTlVMTDsKK19QeV9JREVOVElGSUVSKF9fcGF0aF9fKTsKIAogLyogSW5pdGlhbGl6ZSB0aGluZ3MgKi8KIApAQCAtMTUxLDYgKzE2NCwxMCBAQAogICAgIGludCBjb3VudEQgPSAwOwogICAgIGludCBjb3VudFMgPSAwOwogCisgICAgaW5pdHN0ciA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX2luaXRfXyIpOworICAgIGlmIChpbml0c3RyID09IE5VTEwpCisgICAgICAgIFB5X0ZhdGFsRXJyb3IoIkNhbid0IGluaXRpYWxpemUgaW1wb3J0IHZhcmlhYmxlcyIpOworCiAgICAgLyogcHJlcGFyZSBfUHlJbXBvcnRfRmlsZXRhYjogY29weSBlbnRyaWVzIGZyb20KICAgICAgICBfUHlJbXBvcnRfRHluTG9hZEZpbGV0YWIgYW5kIF9QeUltcG9ydF9TdGFuZGFyZEZpbGV0YWIuCiAgICAgICovCkBAIC0yMjksOCArMjQ2LDkgQEAKICAgICAgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCIjIGNhbid0IGltcG9ydCB6aXBpbXBvcnRcbiIpOwogICAgIH0KICAgICBlbHNlIHsKLSAgICAgICAgUHlPYmplY3QgKnppcGltcG9ydGVyID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh6aW1waW1wb3J0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ6aXBpbXBvcnRlciIpOworICAgICAgICBfUHlfSURFTlRJRklFUih6aXBpbXBvcnRlcik7CisgICAgICAgIFB5T2JqZWN0ICp6aXBpbXBvcnRlciA9IF9QeU9iamVjdF9HZXRBdHRySWQoemltcGltcG9ydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmUHlJZF96aXBpbXBvcnRlcik7CiAgICAgICAgIFB5X0RFQ1JFRih6aW1waW1wb3J0KTsKICAgICAgICAgaWYgKHppcGltcG9ydGVyID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7IC8qIE5vIHppcGltcG9ydGVyIG9iamVjdCAtLSBva2F5ICovCkBAIC0zMTksNyArMzM3LDcgQEAKICAgICAgICAgLyogRm9ya2VkIGFzIGEgc2lkZSBlZmZlY3Qgb2YgaW1wb3J0ICovCiAgICAgICAgIGxvbmcgbWUgPSBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KCk7CiAgICAgICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jayhpbXBvcnRfbG9jaywgMCk7Ci0JLyogWFhYOiBjYW4gdGhlIHByZXZpb3VzIGxpbmUgZmFpbD8gKi8KKyAgICAgICAgLyogWFhYOiBjYW4gdGhlIHByZXZpb3VzIGxpbmUgZmFpbD8gKi8KICAgICAgICAgaW1wb3J0X2xvY2tfdGhyZWFkID0gbWU7CiAgICAgICAgIGltcG9ydF9sb2NrX2xldmVsLS07CiAgICAgfSBlbHNlIHsKQEAgLTQyMyw3ICs0NDEsNiBAQAogUHlJbXBvcnRfQ2xlYW51cCh2b2lkKQogewogICAgIFB5X3NzaXplX3QgcG9zLCBuZG9uZTsKLSAgICBjaGFyICpuYW1lOwogICAgIFB5T2JqZWN0ICprZXksICp2YWx1ZSwgKmRpY3Q7CiAgICAgUHlJbnRlcnByZXRlclN0YXRlICppbnRlcnAgPSBQeVRocmVhZFN0YXRlX0dFVCgpLT5pbnRlcnA7CiAgICAgUHlPYmplY3QgKm1vZHVsZXMgPSBpbnRlcnAtPm1vZHVsZXM7CkBAIC00OTYsMTQgKzUxMywxMyBAQAogICAgICAgICAgICAgaWYgKHZhbHVlLT5vYl9yZWZjbnQgIT0gMSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfQ2hlY2soa2V5KSAmJiBQeU1vZHVsZV9DaGVjayh2YWx1ZSkpIHsKLSAgICAgICAgICAgICAgICBuYW1lID0gX1B5VW5pY29kZV9Bc1N0cmluZyhrZXkpOwotICAgICAgICAgICAgICAgIGlmIChzdHJjbXAobmFtZSwgImJ1aWx0aW5zIikgPT0gMCkKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcoa2V5LCAiYnVpbHRpbnMiKSA9PSAwKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICBpZiAoc3RyY21wKG5hbWUsICJzeXMiKSA9PSAwKQorICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhrZXksICJzeXMiKSA9PSAwKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgICAgICAgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKAotICAgICAgICAgICAgICAgICAgICAgICAgIiMgY2xlYW51cFsxXSAlc1xuIiwgbmFtZSk7CisgICAgICAgICAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigKKyAgICAgICAgICAgICAgICAgICAgICAgICIjIGNsZWFudXBbMV0gJVVcbiIsIGtleSk7CiAgICAgICAgICAgICAgICAgX1B5TW9kdWxlX0NsZWFyKHZhbHVlKTsKICAgICAgICAgICAgICAgICBQeURpY3RfU2V0SXRlbShtb2R1bGVzLCBrZXksIFB5X05vbmUpOwogICAgICAgICAgICAgICAgIG5kb25lKys7CkBAIC01MTUsMTMgKzUzMSwxMiBAQAogICAgIHBvcyA9IDA7CiAgICAgd2hpbGUgKFB5RGljdF9OZXh0KG1vZHVsZXMsICZwb3MsICZrZXksICZ2YWx1ZSkpIHsKICAgICAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhrZXkpICYmIFB5TW9kdWxlX0NoZWNrKHZhbHVlKSkgewotICAgICAgICAgICAgbmFtZSA9IF9QeVVuaWNvZGVfQXNTdHJpbmcoa2V5KTsKLSAgICAgICAgICAgIGlmIChzdHJjbXAobmFtZSwgImJ1aWx0aW5zIikgPT0gMCkKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhrZXksICJidWlsdGlucyIpID09IDApCiAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICBpZiAoc3RyY21wKG5hbWUsICJzeXMiKSA9PSAwKQorICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKGtleSwgInN5cyIpID09IDApCiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoIiMgY2xlYW51cFsyXSAlc1xuIiwgbmFtZSk7CisgICAgICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjIGNsZWFudXBbMl0gJVVcbiIsIGtleSk7CiAgICAgICAgICAgICBfUHlNb2R1bGVfQ2xlYXIodmFsdWUpOwogICAgICAgICAgICAgUHlEaWN0X1NldEl0ZW0obW9kdWxlcywga2V5LCBQeV9Ob25lKTsKICAgICAgICAgfQpAQCAtNTcxLDEwICs1ODYsMTAgQEAKICAgIG9uY2UsIHdlIGtlZXAgYSBzdGF0aWMgZGljdGlvbmFyeSAnZXh0ZW5zaW9ucycga2V5ZWQgYnkgbW9kdWxlIG5hbWUKICAgIChmb3IgYnVpbHQtaW4gbW9kdWxlcykgb3IgYnkgZmlsZW5hbWUgKGZvciBkeW5hbWljYWxseSBsb2FkZWQKICAgIG1vZHVsZXMpLCBjb250YWluaW5nIHRoZXNlIG1vZHVsZXMuICBBIGNvcHkgb2YgdGhlIG1vZHVsZSdzCi0gICBkaWN0aW9uYXJ5IGlzIHN0b3JlZCBieSBjYWxsaW5nIF9QeUltcG9ydF9GaXh1cEV4dGVuc2lvblVuaWNvZGUoKQorICAgZGljdGlvbmFyeSBpcyBzdG9yZWQgYnkgY2FsbGluZyBfUHlJbXBvcnRfRml4dXBFeHRlbnNpb25PYmplY3QoKQogICAgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIG1vZHVsZSBpbml0aWFsaXphdGlvbiBmdW5jdGlvbiBzdWNjZWVkcy4gIEEKICAgIGNvcHkgY2FuIGJlIHJldHJpZXZlZCBmcm9tIHRoZXJlIGJ5IGNhbGxpbmcKLSAgIF9QeUltcG9ydF9GaW5kRXh0ZW5zaW9uVW5pY29kZSgpLgorICAgX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25PYmplY3QoKS4KIAogICAgTW9kdWxlcyB3aGljaCBkbyBzdXBwb3J0IG11bHRpcGxlIGluaXRpYWxpemF0aW9uIHNldCB0aGVpciBtX3NpemUKICAgIGZpZWxkIHRvIGEgbm9uLW5lZ2F0aXZlIG51bWJlciAoaW5kaWNhdGluZyB0aGUgc2l6ZSBvZiB0aGUKQEAgLTU4Myw3ICs1OTgsOCBAQAogKi8KIAogaW50Ci1fUHlJbXBvcnRfRml4dXBFeHRlbnNpb25Vbmljb2RlKFB5T2JqZWN0ICptb2QsIGNoYXIgKm5hbWUsIFB5T2JqZWN0ICpmaWxlbmFtZSkKK19QeUltcG9ydF9GaXh1cEV4dGVuc2lvbk9iamVjdChQeU9iamVjdCAqbW9kLCBQeU9iamVjdCAqbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZmlsZW5hbWUpCiB7CiAgICAgUHlPYmplY3QgKm1vZHVsZXMsICpkaWN0OwogICAgIHN0cnVjdCBQeU1vZHVsZURlZiAqZGVmOwpAQCAtNjAyLDEwICs2MTgsMTAgQEAKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KICAgICBtb2R1bGVzID0gUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpOwotICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhtb2R1bGVzLCBuYW1lLCBtb2QpIDwgMCkKKyAgICBpZiAoUHlEaWN0X1NldEl0ZW0obW9kdWxlcywgbmFtZSwgbW9kKSA8IDApCiAgICAgICAgIHJldHVybiAtMTsKICAgICBpZiAoX1B5U3RhdGVfQWRkTW9kdWxlKG1vZCwgZGVmKSA8IDApIHsKLSAgICAgICAgUHlEaWN0X0RlbEl0ZW1TdHJpbmcobW9kdWxlcywgbmFtZSk7CisgICAgICAgIFB5RGljdF9EZWxJdGVtKG1vZHVsZXMsIG5hbWUpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIGlmIChkZWYtPm1fc2l6ZSA9PSAtMSkgewpAQCAtNjMxLDE3ICs2NDcsMTcgQEAKIF9QeUltcG9ydF9GaXh1cEJ1aWx0aW4oUHlPYmplY3QgKm1vZCwgY2hhciAqbmFtZSkKIHsKICAgICBpbnQgcmVzOwotICAgIFB5T2JqZWN0ICpmaWxlbmFtZTsKLSAgICBmaWxlbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKG5hbWUpOwotICAgIGlmIChmaWxlbmFtZSA9PSBOVUxMKQorICAgIFB5T2JqZWN0ICpuYW1lb2JqOworICAgIG5hbWVvYmogPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZyhuYW1lKTsKKyAgICBpZiAobmFtZW9iaiA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7Ci0gICAgcmVzID0gX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uVW5pY29kZShtb2QsIG5hbWUsIGZpbGVuYW1lKTsKLSAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOworICAgIHJlcyA9IF9QeUltcG9ydF9GaXh1cEV4dGVuc2lvbk9iamVjdChtb2QsIG5hbWVvYmosIG5hbWVvYmopOworICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKICAgICByZXR1cm4gcmVzOwogfQogCiBQeU9iamVjdCAqCi1fUHlJbXBvcnRfRmluZEV4dGVuc2lvblVuaWNvZGUoY2hhciAqbmFtZSwgUHlPYmplY3QgKmZpbGVuYW1lKQorX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25PYmplY3QoUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpmaWxlbmFtZSkKIHsKICAgICBQeU9iamVjdCAqbW9kLCAqbWRpY3Q7CiAgICAgUHlNb2R1bGVEZWYqIGRlZjsKQEAgLTY1NCw3ICs2NzAsNyBAQAogICAgICAgICAvKiBNb2R1bGUgZG9lcyBub3Qgc3VwcG9ydCByZXBlYXRlZCBpbml0aWFsaXphdGlvbiAqLwogICAgICAgICBpZiAoZGVmLT5tX2Jhc2UubV9jb3B5ID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgbW9kID0gUHlJbXBvcnRfQWRkTW9kdWxlKG5hbWUpOworICAgICAgICBtb2QgPSBQeUltcG9ydF9BZGRNb2R1bGVPYmplY3QobmFtZSk7CiAgICAgICAgIGlmIChtb2QgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBtZGljdCA9IFB5TW9kdWxlX0dldERpY3QobW9kKTsKQEAgLTY2OSwzMCArNjg1LDMwIEBACiAgICAgICAgIG1vZCA9IGRlZi0+bV9iYXNlLm1faW5pdCgpOwogICAgICAgICBpZiAobW9kID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgUHlEaWN0X1NldEl0ZW1TdHJpbmcoUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpLCBuYW1lLCBtb2QpOworICAgICAgICBQeURpY3RfU2V0SXRlbShQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCksIG5hbWUsIG1vZCk7CiAgICAgICAgIFB5X0RFQ1JFRihtb2QpOwogICAgIH0KICAgICBpZiAoX1B5U3RhdGVfQWRkTW9kdWxlKG1vZCwgZGVmKSA8IDApIHsKLSAgICAgICAgUHlEaWN0X0RlbEl0ZW1TdHJpbmcoUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpLCBuYW1lKTsKKyAgICAgICAgUHlEaWN0X0RlbEl0ZW0oUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpLCBuYW1lKTsKICAgICAgICAgUHlfREVDUkVGKG1vZCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiaW1wb3J0ICVzICMgcHJldmlvdXNseSBsb2FkZWQgKCVVKVxuIiwKKyAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCJpbXBvcnQgJVUgIyBwcmV2aW91c2x5IGxvYWRlZCAoJVIpXG4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lLCBmaWxlbmFtZSk7CiAgICAgcmV0dXJuIG1vZDsKIAogfQogCiBQeU9iamVjdCAqCi1fUHlJbXBvcnRfRmluZEJ1aWx0aW4oY2hhciAqbmFtZSkKK19QeUltcG9ydF9GaW5kQnVpbHRpbihjb25zdCBjaGFyICpuYW1lKQogewotICAgIFB5T2JqZWN0ICpyZXMsICpmaWxlbmFtZTsKLSAgICBmaWxlbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKG5hbWUpOwotICAgIGlmIChmaWxlbmFtZSA9PSBOVUxMKQorICAgIFB5T2JqZWN0ICpyZXMsICpuYW1lb2JqOworICAgIG5hbWVvYmogPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZyhuYW1lKTsKKyAgICBpZiAobmFtZW9iaiA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXMgPSBfUHlJbXBvcnRfRmluZEV4dGVuc2lvblVuaWNvZGUobmFtZSwgZmlsZW5hbWUpOwotICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CisgICAgcmVzID0gX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25PYmplY3QobmFtZW9iaiwgbmFtZW9iaik7CisgICAgUHlfREVDUkVGKG5hbWVvYmopOwogICAgIHJldHVybiByZXM7CiB9CiAKQEAgLTcwMywxOCArNzE5LDE4IEBACiAgICAnTkVXJyBSRUZFUkVOQ0UhICovCiAKIFB5T2JqZWN0ICoKLVB5SW1wb3J0X0FkZE1vZHVsZShjb25zdCBjaGFyICpuYW1lKQorUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0KFB5T2JqZWN0ICpuYW1lKQogewogICAgIFB5T2JqZWN0ICptb2R1bGVzID0gUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpOwogICAgIFB5T2JqZWN0ICptOwogCi0gICAgaWYgKChtID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcobW9kdWxlcywgbmFtZSkpICE9IE5VTEwgJiYKKyAgICBpZiAoKG0gPSBQeURpY3RfR2V0SXRlbShtb2R1bGVzLCBuYW1lKSkgIT0gTlVMTCAmJgogICAgICAgICBQeU1vZHVsZV9DaGVjayhtKSkKICAgICAgICAgcmV0dXJuIG07Ci0gICAgbSA9IFB5TW9kdWxlX05ldyhuYW1lKTsKKyAgICBtID0gUHlNb2R1bGVfTmV3T2JqZWN0KG5hbWUpOwogICAgIGlmIChtID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhtb2R1bGVzLCBuYW1lLCBtKSAhPSAwKSB7CisgICAgaWYgKFB5RGljdF9TZXRJdGVtKG1vZHVsZXMsIG5hbWUsIG0pICE9IDApIHsKICAgICAgICAgUHlfREVDUkVGKG0pOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC03MjMsMjIgKzczOSwzNCBAQAogICAgIHJldHVybiBtOwogfQogCitQeU9iamVjdCAqCitQeUltcG9ydF9BZGRNb2R1bGUoY29uc3QgY2hhciAqbmFtZSkKK3sKKyAgICBQeU9iamVjdCAqbmFtZW9iaiwgKm1vZHVsZTsKKyAgICBuYW1lb2JqID0gUHlVbmljb2RlX0Zyb21TdHJpbmcobmFtZSk7CisgICAgaWYgKG5hbWVvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbW9kdWxlID0gUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0KG5hbWVvYmopOworICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKKyAgICByZXR1cm4gbW9kdWxlOworfQorCisKIC8qIFJlbW92ZSBuYW1lIGZyb20gc3lzLm1vZHVsZXMsIGlmIGl0J3MgdGhlcmUuICovCiBzdGF0aWMgdm9pZAotcmVtb3ZlX21vZHVsZShjb25zdCBjaGFyICpuYW1lKQorcmVtb3ZlX21vZHVsZShQeU9iamVjdCAqbmFtZSkKIHsKICAgICBQeU9iamVjdCAqbW9kdWxlcyA9IFB5SW1wb3J0X0dldE1vZHVsZURpY3QoKTsKLSAgICBpZiAoUHlEaWN0X0dldEl0ZW1TdHJpbmcobW9kdWxlcywgbmFtZSkgPT0gTlVMTCkKKyAgICBpZiAoUHlEaWN0X0dldEl0ZW0obW9kdWxlcywgbmFtZSkgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuOwotICAgIGlmIChQeURpY3RfRGVsSXRlbVN0cmluZyhtb2R1bGVzLCBuYW1lKSA8IDApCisgICAgaWYgKFB5RGljdF9EZWxJdGVtKG1vZHVsZXMsIG5hbWUpIDwgMCkKICAgICAgICAgUHlfRmF0YWxFcnJvcigiaW1wb3J0OiAgZGVsZXRpbmcgZXhpc3Rpbmcga2V5IGluIgogICAgICAgICAgICAgICAgICAgICAgICJzeXMubW9kdWxlcyBmYWlsZWQiKTsKIH0KIAotc3RhdGljIFB5T2JqZWN0ICogZ2V0X3NvdXJjZWZpbGUoY2hhciAqZmlsZSk7Ci1zdGF0aWMgY2hhciAqbWFrZV9zb3VyY2VfcGF0aG5hbWUoY2hhciAqcGF0aG5hbWUsIGNoYXIgKmJ1Zik7Ci1zdGF0aWMgY2hhciAqbWFrZV9jb21waWxlZF9wYXRobmFtZShjaGFyICpwYXRobmFtZSwgY2hhciAqYnVmLCBzaXplX3QgYnVmbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGRlYnVnKTsKK3N0YXRpYyBQeU9iamVjdCAqIGdldF9zb3VyY2VmaWxlKFB5T2JqZWN0ICpmaWxlbmFtZSk7CitzdGF0aWMgUHlPYmplY3QgKm1ha2Vfc291cmNlX3BhdGhuYW1lKFB5T2JqZWN0ICpwYXRobmFtZSk7CitzdGF0aWMgUHlPYmplY3QqIG1ha2VfY29tcGlsZWRfcGF0aG5hbWUoUHlPYmplY3QgKnBhdGhuYW1lLCBpbnQgZGVidWcpOwogCiAvKiBFeGVjdXRlIGEgY29kZSBvYmplY3QgaW4gYSBtb2R1bGUgYW5kIHJldHVybiB0aGUgbW9kdWxlIG9iamVjdAogICogV0lUSCBJTkNSRU1FTlRFRCBSRUZFUkVOQ0UgQ09VTlQuICBJZiBhbiBlcnJvciBvY2N1cnMsIG5hbWUgaXMKQEAgLTc2OCwxMCArNzk2LDQxIEBACiBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZVdpdGhQYXRobmFtZXMoY2hhciAqbmFtZSwgUHlPYmplY3QgKmNvLCBjaGFyICpwYXRobmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyICpjcGF0aG5hbWUpCiB7CisgICAgUHlPYmplY3QgKm0gPSBOVUxMOworICAgIFB5T2JqZWN0ICpuYW1lb2JqLCAqcGF0aG9iaiA9IE5VTEwsICpjcGF0aG9iaiA9IE5VTEw7CisKKyAgICBuYW1lb2JqID0gUHlVbmljb2RlX0Zyb21TdHJpbmcobmFtZSk7CisgICAgaWYgKG5hbWVvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAocGF0aG5hbWUgIT0gTlVMTCkgeworICAgICAgICBwYXRob2JqID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChwYXRobmFtZSk7CisgICAgICAgIGlmIChwYXRob2JqID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgIH0gZWxzZQorICAgICAgICBwYXRob2JqID0gTlVMTDsKKyAgICBpZiAoY3BhdGhuYW1lICE9IE5VTEwpIHsKKyAgICAgICAgY3BhdGhvYmogPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGNwYXRobmFtZSk7CisgICAgICAgIGlmIChjcGF0aG9iaiA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICB9IGVsc2UKKyAgICAgICAgY3BhdGhvYmogPSBOVUxMOworICAgIG0gPSBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZU9iamVjdChuYW1lb2JqLCBjbywgcGF0aG9iaiwgY3BhdGhvYmopOworZXJyb3I6CisgICAgUHlfREVDUkVGKG5hbWVvYmopOworICAgIFB5X1hERUNSRUYocGF0aG9iaik7CisgICAgUHlfWERFQ1JFRihjcGF0aG9iaik7CisgICAgcmV0dXJuIG07Cit9CisKK1B5T2JqZWN0KgorUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVPYmplY3QoUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpjbywgUHlPYmplY3QgKnBhdGhuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmNwYXRobmFtZSkKK3sKICAgICBQeU9iamVjdCAqbW9kdWxlcyA9IFB5SW1wb3J0X0dldE1vZHVsZURpY3QoKTsKICAgICBQeU9iamVjdCAqbSwgKmQsICp2OwogCi0gICAgbSA9IFB5SW1wb3J0X0FkZE1vZHVsZShuYW1lKTsKKyAgICBtID0gUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0KG5hbWUpOwogICAgIGlmIChtID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIC8qIElmIHRoZSBtb2R1bGUgaXMgYmVpbmcgcmVsb2FkZWQsIHdlIGdldCB0aGUgb2xkIG1vZHVsZSBiYWNrCkBAIC03ODMsMTIgKzg0MiwxMyBAQAogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CiAgICAgLyogUmVtZW1iZXIgdGhlIGZpbGVuYW1lIGFzIHRoZSBfX2ZpbGVfXyBhdHRyaWJ1dGUgKi8KLSAgICB2ID0gTlVMTDsKICAgICBpZiAocGF0aG5hbWUgIT0gTlVMTCkgewogICAgICAgICB2ID0gZ2V0X3NvdXJjZWZpbGUocGF0aG5hbWUpOwogICAgICAgICBpZiAodiA9PSBOVUxMKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICB9CisgICAgZWxzZQorICAgICAgICB2ID0gTlVMTDsKICAgICBpZiAodiA9PSBOVUxMKSB7CiAgICAgICAgIHYgPSAoKFB5Q29kZU9iamVjdCAqKWNvKS0+Y29fZmlsZW5hbWU7CiAgICAgICAgIFB5X0lOQ1JFRih2KTsKQEAgLTc5OCwyNyArODU4LDIxIEBACiAgICAgUHlfREVDUkVGKHYpOwogCiAgICAgLyogUmVtZW1iZXIgdGhlIHB5YyBwYXRoIG5hbWUgYXMgdGhlIF9fY2FjaGVkX18gYXR0cmlidXRlLiAqLwotICAgIGlmIChjcGF0aG5hbWUgPT0gTlVMTCkgeworICAgIGlmIChjcGF0aG5hbWUgIT0gTlVMTCkKKyAgICAgICAgdiA9IGNwYXRobmFtZTsKKyAgICBlbHNlCiAgICAgICAgIHYgPSBQeV9Ob25lOwotICAgICAgICBQeV9JTkNSRUYodik7Ci0gICAgfQotICAgIGVsc2UgaWYgKCh2ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoY3BhdGhuYW1lKSkgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9DbGVhcigpOyAvKiBOb3QgaW1wb3J0YW50IGVub3VnaCB0byByZXBvcnQgKi8KLSAgICAgICAgdiA9IFB5X05vbmU7Ci0gICAgICAgIFB5X0lOQ1JFRih2KTsKLSAgICB9CiAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJfX2NhY2hlZF9fIiwgdikgIT0gMCkKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsgLyogTm90IGltcG9ydGFudCBlbm91Z2ggdG8gcmVwb3J0ICovCi0gICAgUHlfREVDUkVGKHYpOwogCiAgICAgdiA9IFB5RXZhbF9FdmFsQ29kZShjbywgZCwgZCk7CiAgICAgaWYgKHYgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKICAgICBQeV9ERUNSRUYodik7CiAKLSAgICBpZiAoKG0gPSBQeURpY3RfR2V0SXRlbVN0cmluZyhtb2R1bGVzLCBuYW1lKSkgPT0gTlVMTCkgeworICAgIGlmICgobSA9IFB5RGljdF9HZXRJdGVtKG1vZHVsZXMsIG5hbWUpKSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19JbXBvcnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJMb2FkZWQgbW9kdWxlICUuMjAwcyBub3QgZm91bmQgaW4gc3lzLm1vZHVsZXMiLAorICAgICAgICAgICAgICAgICAgICAgIkxvYWRlZCBtb2R1bGUgJVIgbm90IGZvdW5kIGluIHN5cy5tb2R1bGVzIiwKICAgICAgICAgICAgICAgICAgICAgIG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC04MzYsMTAgKzg5MCwxMCBAQAogLyogTGlrZSBzdHJyY2hyKHN0cmluZywgJy8nKSBidXQgc2VhcmNoZXMgZm9yIHRoZSByaWdodG1vc3Qgb2YgZWl0aGVyIFNFUAogICAgb3IgQUxUU0VQLCBpZiB0aGUgbGF0dGVyIGlzIGRlZmluZWQuCiAqLwotc3RhdGljIGNoYXIgKgotcmlnaHRtb3N0X3NlcChjaGFyICpzKQorc3RhdGljIFB5X1VDUzQqCityaWdodG1vc3Rfc2VwKFB5X1VDUzQgKnMpCiB7Ci0gICAgY2hhciAqZm91bmQsIGM7CisgICAgUHlfVUNTNCAqZm91bmQsIGM7CiAgICAgZm9yIChmb3VuZCA9IE5VTEw7IChjID0gKnMpOyBzKyspIHsKICAgICAgICAgaWYgKGMgPT0gU0VQCiAjaWZkZWYgQUxUU0VQCkBAIC04NTMsMTEzICs5MDcsODkgQEAKICAgICByZXR1cm4gZm91bmQ7CiB9CiAKKy8qIExpa2UgcmlnaHRtb3N0X3NlcCwgYnV0IG9wZXJhdGUgb24gdW5pY29kZSBvYmplY3RzLiAqLworc3RhdGljIFB5X3NzaXplX3QKK3JpZ2h0bW9zdF9zZXBfb2JqKFB5T2JqZWN0KiBvLCBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKK3sKKyAgICBQeV9zc2l6ZV90IGZvdW5kLCBpOworICAgIFB5X1VDUzQgYzsKKyAgICBmb3IgKGZvdW5kID0gLTEsIGkgPSBzdGFydDsgaSA8IGVuZDsgaSsrKSB7CisgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKG8sIGkpOworICAgICAgICBpZiAoYyA9PSBTRVAKKyNpZmRlZiBBTFRTRVAKKyAgICAgICAgICAgIHx8IGMgPT0gQUxUU0VQCisjZW5kaWYKKyAgICAgICAgICAgICkKKyAgICAgICAgeworICAgICAgICAgICAgZm91bmQgPSBpOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBmb3VuZDsKK30KIAogLyogR2l2ZW4gYSBwYXRobmFtZSBmb3IgYSBQeXRob24gc291cmNlIGZpbGUsIGZpbGwgYSBidWZmZXIgd2l0aCB0aGUKICAgIHBhdGhuYW1lIGZvciB0aGUgY29ycmVzcG9uZGluZyBjb21waWxlZCBmaWxlLiAgUmV0dXJuIHRoZSBwYXRobmFtZQogICAgZm9yIHRoZSBjb21waWxlZCBmaWxlLCBvciBOVUxMIGlmIHRoZXJlJ3Mgbm8gc3BhY2UgaW4gdGhlIGJ1ZmZlci4KLSAgIERvZXNuJ3Qgc2V0IGFuIGV4Y2VwdGlvbi4gKi8KKyAgIERvZXNuJ3Qgc2V0IGFuIGV4Y2VwdGlvbi4KIAotc3RhdGljIGNoYXIgKgotbWFrZV9jb21waWxlZF9wYXRobmFtZShjaGFyICpwYXRobmFtZSwgY2hhciAqYnVmLCBzaXplX3QgYnVmbGVuLCBpbnQgZGVidWcpCisgICBmb28ucHkgLT4gX19weWNhY2hlX18vZm9vLjx0YWc+LnB5YworCisgICBwYXRoc3RyIGlzIGFzc3VtZWQgdG8gYmUgInJlYWR5Ii4KKyovCisKK3N0YXRpYyBQeU9iamVjdCoKK21ha2VfY29tcGlsZWRfcGF0aG5hbWUoUHlPYmplY3QgKnBhdGhzdHIsIGludCBkZWJ1ZykKIHsKLSAgICAvKiBmb28ucHkgLT4gX19weWNhY2hlX18vZm9vLjx0YWc+LnB5YyAqLwotICAgIHNpemVfdCBsZW4gPSBzdHJsZW4ocGF0aG5hbWUpOwotICAgIHNpemVfdCBpLCBzYXZlOwotICAgIGNoYXIgKnBvczsKLSAgICBpbnQgc2VwID0gU0VQOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlfc3NpemVfdCBmbmFtZSwgZXh0LCBsZW4sIGksIHBvcywgdGFnbGVuOworICAgIFB5X3NzaXplX3QgcHljYWNoZV9sZW4gPSBzaXplb2YoQ0FDSEVESVIpIC0gMTsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X1VDUzQgbGFzdHNlcDsKIAotICAgIC8qIFNhbml0eSBjaGVjayB0aGF0IHRoZSBidWZmZXIgaGFzIHJvdWdobHkgZW5vdWdoIHNwYWNlIHRvIGhvbGQgd2hhdAotICAgICAgIHdpbGwgZXZlbnR1YWxseSBiZSB0aGUgZnVsbCBwYXRoIHRvIHRoZSBjb21waWxlZCBmaWxlLiAgVGhlIDUgZXh0cmEKLSAgICAgICBieXRlcyBpbmNsdWRlIHRoZSBzbGFzaCBhZmVyIF9fcHljYWNoZV9fLCB0aGUgdHdvIGV4dHJhIGRvdHMsIHRoZQotICAgICAgIGV4dHJhIHRyYWlsaW5nIGNoYXJhY3RlciAoJ2MnIG9yICdvJykgYW5kIG51bGwuICBUaGlzIGlzbid0IGV4YWN0Ci0gICAgICAgYmVjYXVzZSB0aGUgY29udGVudHMgb2YgdGhlIGJ1ZmZlciBjYW4gYWZmZWN0IGhvdyBtYW55IGFjdHVhbAotICAgICAgIGNoYXJhY3RlcnMgb2YgdGhlIHN0cmluZyBnZXQgaW50byB0aGUgYnVmZmVyLiAgV2UnbGwgZG8gYSBmaW5hbAotICAgICAgIHNhbml0eSBjaGVjayBiZWZvcmUgd3JpdGluZyB0aGUgZXh0ZW5zaW9uIHRvIGVuc3VyZSB3ZSBkbyBub3QKLSAgICAgICBvdmVyZmxvdyB0aGUgYnVmZmVyLgotICAgICovCi0gICAgaWYgKGxlbiArIHN0cmxlbihDQUNIRURJUikgKyBzdHJsZW4ocHljX3RhZykgKyA1ID4gYnVmbGVuKQorICAgIC8qIENvbXB1dGUgdGhlIG91dHB1dCBzdHJpbmcgc2l6ZS4gKi8KKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChwYXRoc3RyKTsKKyAgICAvKiBJZiB0aGVyZSBpcyBubyBzZXBhcmF0b3IsIHRoaXMgcmV0dXJucyAtMSwgc28KKyAgICAgICBmbmFtZSB3aWxsIGJlIDAuICovCisgICAgZm5hbWUgPSByaWdodG1vc3Rfc2VwX29iaihwYXRoc3RyLCAwLCBsZW4pICsgMTsKKyAgICAvKiBXaW5kb3dzOiByZS11c2UgdGhlIGxhc3Qgc2VwYXJhdG9yIGNoYXJhY3RlciAoLyBvciBcXCkgd2hlbgorICAgICAgIGFwcGVuZGluZyB0aGUgX19weWNhY2hlX18gcGF0aC4gKi8KKyAgICBpZiAoZm5hbWUgPiAwKQorICAgICAgICBsYXN0c2VwID0gUHlVbmljb2RlX1JFQURfQ0hBUihwYXRoc3RyLCBmbmFtZSAtMSk7CisgICAgZWxzZQorICAgICAgICBsYXN0c2VwID0gU0VQOworICAgIGV4dCA9IGZuYW1lIC0gMTsKKyAgICBmb3IoaSA9IGZuYW1lOyBpIDwgbGVuOyBpKyspCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRF9DSEFSKHBhdGhzdHIsIGkpID09ICcuJykKKyAgICAgICAgICAgIGV4dCA9IGkgKyAxOworICAgIGlmIChleHQgPCBmbmFtZSkKKyAgICAgICAgLyogTm8gZG90IGluIGZpbGVuYW1lOyB1c2UgZW50aXJlIGZpbGVuYW1lICovCisgICAgICAgIGV4dCA9IGxlbjsKKworICAgIC8qIHJlc3VsdCA9IHBhdGhzdHJbOmZuYW1lXSArICJfX3B5Y2FjaGVfXyIgKyBTRVAgKworICAgICAgICAgICAgICAgIHBhdGhzdHJbZm5hbWU6ZXh0XSArIHRhZyArICIucHlbY29dIiAqLworICAgIHRhZ2xlbiA9IHN0cmxlbihweWNfdGFnKTsKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfTmV3KGV4dCArIHB5Y2FjaGVfbGVuICsgMSArIHRhZ2xlbiArIDQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUocGF0aHN0cikpOworICAgIGlmICghcmVzdWx0KQogICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIC8qIEZpbmQgdGhlIGxhc3QgcGF0aCBzZXBhcmF0b3IgYW5kIGNvcHkgZXZlcnl0aGluZyBmcm9tIHRoZSBzdGFydCBvZgotICAgICAgIHRoZSBzb3VyY2Ugc3RyaW5nIHVwIHRvIGFuZCBpbmNsdWRpbmcgdGhlIHNlcGFyYXRvci4KLSAgICAqLwotICAgIGlmICgocG9zID0gcmlnaHRtb3N0X3NlcChwYXRobmFtZSkpID09IE5VTEwpIHsKLSAgICAgICAgaSA9IDA7Ci0gICAgfQotICAgIGVsc2UgewotICAgICAgICBzZXAgPSAqcG9zOwotICAgICAgICBpID0gcG9zIC0gcGF0aG5hbWUgKyAxOwotICAgICAgICBzdHJuY3B5KGJ1ZiwgcGF0aG5hbWUsIGkpOwotICAgIH0KLQotICAgIHNhdmUgPSBpOwotICAgIGJ1ZltpKytdID0gJ1wwJzsKLSAgICAvKiBBZGQgX19weWNhY2hlX18vICovCi0gICAgc3RyY2F0KGJ1ZiwgQ0FDSEVESVIpOwotICAgIGkgKz0gc3RybGVuKENBQ0hFRElSKSAtIDE7Ci0gICAgYnVmW2krK10gPSBzZXA7Ci0gICAgYnVmW2krK10gPSAnXDAnOwotICAgIC8qIEFkZCB0aGUgYmFzZSBmaWxlbmFtZSwgYnV0IHJlbW92ZSB0aGUgLnB5IG9yIC5weXcgZXh0ZW5zaW9uLCBzaW5jZQotICAgICAgIHRoZSB0YWcgbmFtZSBtdXN0IGdvIGJlZm9yZSB0aGUgZXh0ZW5zaW9uLgotICAgICovCi0gICAgc3RyY2F0KGJ1ZiwgcGF0aG5hbWUgKyBzYXZlKTsKLSAgICBpZiAoKHBvcyA9IHN0cnJjaHIoYnVmLCAnLicpKSAhPSBOVUxMKQotICAgICAgICAqKytwb3MgPSAnXDAnOwotICAgIHN0cmNhdChidWYsIHB5Y190YWcpOwotICAgIC8qIFRoZSBsZW5ndGggdGVzdCBhYm92ZSBhc3N1bWVzIHRoYXQgd2UncmUgb25seSBhZGRpbmcgb25lIGNoYXJhY3RlcgotICAgICAgIHRvIHRoZSBlbmQgb2Ygd2hhdCB3b3VsZCBub3JtYWxseSBiZSB0aGUgZXh0ZW5zaW9uLiAgV2hhdCBpZiB0aGVyZQotICAgICAgIGlzIG5vIGV4dGVuc2lvbiwgb3IgdGhlIHN0cmluZyBlbmRzIGluICcuJyBvciAnLnAnLCBhbmQgb3RoZXJ3aXNlCi0gICAgICAgZmlsbHMgdGhlIGJ1ZmZlcj8gIEJ5IGFwcGVuZGluZyA0IG1vcmUgY2hhcmFjdGVycyBvbnRvIHRoZSBzdHJpbmcKLSAgICAgICBoZXJlLCB3ZSBjb3VsZCBvdmVycnVuIHRoZSBidWZmZXIuCi0KLSAgICAgICBBcyBhIHNpbXBsZSBleGFtcGxlLCBsZXQncyBzYXkgYnVmbGVuPTMyIGFuZCB0aGUgaW5wdXQgc3RyaW5nIGlzCi0gICAgICAgJ3h4eC5weScuICBzdHJsZW4oKSB3b3VsZCBiZSA2IGFuZCB0aGUgdGVzdCBhYm92ZSB3b3VsZCB5aWVsZDoKLQotICAgICAgICg2ICsgMTEgKyAxMCArIDUgPT0gMzIpID4gMzIKLQotICAgICAgIHdoaWNoIGlzIGZhbHNlIGFuZCBzbyB0aGUgbmFtZSBtYW5nbGluZyB3b3VsZCBjb250aW51ZS4gIFRoaXMgd291bGQKLSAgICAgICBiZSBmaW5lIGJlY2F1c2Ugd2UnZCBlbmQgdXAgd2l0aCB0aGlzIHN0cmluZyBpbiBidWY6Ci0KLSAgICAgICBfX3B5Y2FjaGVfXy94eHguY3B5dGhvbi0zMi5weWNcMAotCi0gICAgICAgc3RybGVuKG9mIHRoYXQpID09IDMwICsgdGhlIG51bCBmaXRzIGluc2lkZSBhIDMyIGNoYXJhY3RlciBidWZmZXIuCi0gICAgICAgV2UgY2FuIGV2ZW4gaGFuZGxlIGFuIGlucHV0IHN0cmluZyBvZiBzYXkgJ3h4eHh4JyBhYm92ZSBiZWNhdXNlCi0gICAgICAgdGhhdCdzICg1ICsgMTEgKyAxMCArIDUgPT0gMzEpID4gMzIgd2hpY2ggaXMgYWxzbyBmYWxzZS4gIE5hbWUKLSAgICAgICBtYW5nbGluZyB0aGF0IHlpZWxkczoKLQotICAgICAgIF9fcHljYWNoZV9fL3h4eHh4Y3B5dGhvbi0zMi5weWNcMAotCi0gICAgICAgd2hpY2ggaXMgMzIgY2hhcmFjdGVycyBpbmNsdWRpbmcgdGhlIG51bCwgYW5kIHRodXMgZml0cyBpbiB0aGUKLSAgICAgICBidWZmZXIuIEhvd2V2ZXIsIGFuIGlucHV0IHN0cmluZyBvZiAneHh4eHh4JyB3b3VsZCB5aWVsZCBhIHJlc3VsdAotICAgICAgIHN0cmluZyBvZjoKLQotICAgICAgIF9fcHljYWNoZV9fL3h4eHh4eGNweXRob24tMzIucHljXDAKLQotICAgICAgIHdoaWNoIGlzIDMzIGNoYXJhY3RlcnMgbG9uZyAoaW5jbHVkaW5nIHRoZSBudWwpLCB0aHVzIG92ZXJmbG93aW5nCi0gICAgICAgdGhlIGJ1ZmZlciwgZXZlbiB0aG91Z2ggdGhlIGZpcnN0IHRlc3Qgd291bGQgZmFpbCwgaS5lLjogdGhlIGlucHV0Ci0gICAgICAgc3RyaW5nIGlzIGFsc28gNiBjaGFyYWN0ZXJzIGxvbmcsIHNvIDMyID4gMzIgaXMgZmFsc2UuCi0KLSAgICAgICBUaGUgcmVhc29uIHRoZSBmaXJzdCB0ZXN0IGZhaWxzIGJ1dCB3ZSBzdGlsbCBvdmVyZmxvdyB0aGUgYnVmZmVyIGlzCi0gICAgICAgdGhhdCB0aGUgdGVzdCBhYm92ZSBvbmx5IGV4cGVjdHMgdG8gYWRkIG9uZSBleHRyYSBjaGFyYWN0ZXIgdG8gYmUKLSAgICAgICBhZGRlZCB0byB0aGUgZXh0ZW5zaW9uLCBhbmQgaGVyZSB3ZSdyZSBhZGRpbmcgdGhyZWUgKHB5YykuICBXZQotICAgICAgIGRvbid0IGFkZCB0aGUgZmlyc3QgZG90LCBzbyB0aGF0IHJlY2xhaW1zIG9uZSBvZiBleHBlY3RlZAotICAgICAgIHBvc2l0aW9ucywgbGVhdmluZyB1cyBvdmVyZmxvd2luZyBieSAxIGJ5dGUgKDMgZXh0cmEgLSAxIHJlY2xhaW1lZAotICAgICAgIGRvdCAtIDEgZXhwZWN0ZWQgZXh0cmEgPT0gMSBvdmVyZmxvd2VkKS4KLQotICAgICAgIFRoZSBiZXN0IHdlIGNhbiBkbyBpcyBlbnN1cmUgdGhhdCB3ZSBzdGlsbCBoYXZlIGVub3VnaCByb29tIGluIHRoZQotICAgICAgIHRhcmdldCBidWZmZXIgYmVmb3JlIHdlIHdyaXRlIHRoZSBleHRlbnNpb24uICBCZWNhdXNlIGl0J3MgYWx3YXlzCi0gICAgICAgb25seSB0aGUgZXh0ZW5zaW9uIHRoYXQgY2FuIGNhdXNlIHRoZSBvdmVyZmxvdywgYW5kIG5ldmVyIHRoZSBvdGhlcgotICAgICAgIHBhdGggYnl0ZXMgd2UndmUgd3JpdHRlbiwgaXQncyBzdWZmaWNpZW50IHRvIGp1c3QgZG8gb25lIG1vcmUgdGVzdAotICAgICAgIGhlcmUuICBTdGlsbCwgdGhlIGFzc2VydGlvbiB0aGF0IGZvbGxvd3MgY2FuJ3QgaHVydC4KLSAgICAqLwotI2lmIDAKLSAgICBwcmludGYoInN0cmxlbihidWYpOiAlZDsgYnVmbGVuOiAlZFxuIiwgKGludClzdHJsZW4oYnVmKSwgKGludClidWZsZW4pOwotI2VuZGlmCi0gICAgaWYgKHN0cmxlbihidWYpICsgNSA+IGJ1ZmxlbikKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgc3RyY2F0KGJ1ZiwgZGVidWcgPyAiLnB5YyIgOiAiLnB5byIpOwotICAgIGFzc2VydChzdHJsZW4oYnVmKSA8IGJ1Zmxlbik7Ci0gICAgcmV0dXJuIGJ1ZjsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQocmVzdWx0KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEocmVzdWx0KTsKKyAgICBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMocmVzdWx0LCAwLCBwYXRoc3RyLCAwLCBmbmFtZSk7CisgICAgcG9zID0gZm5hbWU7CisgICAgZm9yIChpID0gMDsgaSA8IHB5Y2FjaGVfbGVuOyBpKyspCisgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBwb3MrKywgQ0FDSEVESVJbaV0pOworICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBwb3MrKywgbGFzdHNlcCk7CisgICAgUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzKHJlc3VsdCwgcG9zLCBwYXRoc3RyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbmFtZSwgZXh0IC0gZm5hbWUpOworICAgIHBvcyArPSBleHQgLSBmbmFtZTsKKyAgICBmb3IgKGkgPSAwOyBweWNfdGFnW2ldOyBpKyspCisgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBwb3MrKywgcHljX3RhZ1tpXSk7CisgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIHBvcysrLCAnLicpOworICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBwb3MrKywgJ3AnKTsKKyAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgcG9zKyssICd5Jyk7CisgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIHBvcysrLCBkZWJ1ZyA/ICdjJyA6ICdvJyk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogCkBAIC05NjcsNDIgKzk5Nyw1MiBAQAogICAgc291cmNlIGZpbGUsIGlmIHRoZSBwYXRoIG1hdGNoZXMgdGhlIFBFUCAzMTQ3IGZvcm1hdC4gIFRoaXMgZG9lcyBub3QgY2hlY2sKICAgIGZvciBhbnkgZmlsZSBleGlzdGVuY2UsIGhvd2V2ZXIsIGlmIHRoZSBweWMgZmlsZSBuYW1lIGRvZXMgbm90IG1hdGNoIFBFUAogICAgMzE0NyBzdHlsZSwgTlVMTCBpcyByZXR1cm5lZC4gIGJ1ZiBtdXN0IGJlIGF0IGxlYXN0IGFzIGJpZyBhcyBwYXRobmFtZTsKLSAgIHRoZSByZXN1bHRpbmcgcGF0aCB3aWxsIGFsd2F5cyBiZSBzaG9ydGVyLiAqLworICAgdGhlIHJlc3VsdGluZyBwYXRoIHdpbGwgYWx3YXlzIGJlIHNob3J0ZXIuCiAKLXN0YXRpYyBjaGFyICoKLW1ha2Vfc291cmNlX3BhdGhuYW1lKGNoYXIgKnBhdGhuYW1lLCBjaGFyICpidWYpCisgICAoLi4uKS9fX3B5Y2FjaGVfXy9mb28uPHRhZz4ucHljIC0+ICguLi4pL2Zvby5weSAqLworCitzdGF0aWMgUHlPYmplY3QqCittYWtlX3NvdXJjZV9wYXRobmFtZShQeU9iamVjdCAqcGF0aCkKIHsKLSAgICAvKiBfX3B5Y2FjaGVfXy9mb28uPHRhZz4ucHljIC0+IGZvby5weSAqLwotICAgIHNpemVfdCBpLCBqOwotICAgIGNoYXIgKmxlZnQsICpyaWdodCwgKmRvdDAsICpkb3QxLCBzZXA7CisgICAgUHlfc3NpemVfdCBsZWZ0LCByaWdodCwgZG90MCwgZG90MSwgbGVuOworICAgIFB5X3NzaXplX3QgaSwgajsKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChwYXRoKTsKKyAgICBpZiAobGVuID4gTUFYUEFUSExFTikKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICAvKiBMb29rIGJhY2sgdHdvIHNsYXNoZXMgZnJvbSB0aGUgZW5kLiAgSW4gYmV0d2VlbiB0aGVzZSB0d28gc2xhc2hlcwogICAgICAgIG11c3QgYmUgdGhlIHN0cmluZyBfX3B5Y2FjaGVfXyBvciB0aGlzIGlzIG5vdCBhIFBFUCAzMTQ3IHN0eWxlCiAgICAgICAgcGF0aC4gIEl0J3MgcG9zc2libGUgZm9yIHRoZXJlIHRvIGJlIG9ubHkgb25lIHNsYXNoLgogICAgICovCi0gICAgaWYgKChyaWdodCA9IHJpZ2h0bW9zdF9zZXAocGF0aG5hbWUpKSA9PSBOVUxMKQorICAgIHJpZ2h0ID0gcmlnaHRtb3N0X3NlcF9vYmoocGF0aCwgMCwgbGVuKTsKKyAgICBpZiAocmlnaHQgPT0gLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHNlcCA9ICpyaWdodDsKLSAgICAqcmlnaHQgPSAnXDAnOwotICAgIGxlZnQgPSByaWdodG1vc3Rfc2VwKHBhdGhuYW1lKTsKLSAgICAqcmlnaHQgPSBzZXA7Ci0gICAgaWYgKGxlZnQgPT0gTlVMTCkKLSAgICAgICAgbGVmdCA9IHBhdGhuYW1lOworICAgIGxlZnQgPSByaWdodG1vc3Rfc2VwX29iaihwYXRoLCAwLCByaWdodCk7CisgICAgaWYgKGxlZnQgPT0gLTEpCisgICAgICAgIGxlZnQgPSAwOwogICAgIGVsc2UKICAgICAgICAgbGVmdCsrOwotICAgIGlmIChyaWdodC1sZWZ0ICE9IHN0cmxlbihDQUNIRURJUikgfHwKLSAgICAgICAgc3RybmNtcChsZWZ0LCBDQUNIRURJUiwgcmlnaHQtbGVmdCkgIT0gMCkKKyAgICBpZiAocmlnaHQtbGVmdCAhPSAgc2l6ZW9mKENBQ0hFRElSKS0xKQogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZW9mKENBQ0hFRElSKS0xOyBpKyspCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRF9DSEFSKHBhdGgsIGxlZnQraSkgIT0gQ0FDSEVESVJbaV0pCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIC8qIE5vdyB2ZXJpZnkgdGhhdCB0aGUgcGF0aCBjb21wb25lbnQgdG8gdGhlIHJpZ2h0IG9mIHRoZSBsYXN0IHNsYXNoCiAgICAgICAgaGFzIHR3byBkb3RzIGluIGl0LgogICAgICovCi0gICAgaWYgKChkb3QwID0gc3RyY2hyKHJpZ2h0ICsgMSwgJy4nKSkgPT0gTlVMTCkKKyAgICBkb3QwID0gUHlVbmljb2RlX0ZpbmRDaGFyKHBhdGgsICcuJywgcmlnaHQrMSwgbGVuLCAxKTsKKyAgICBpZiAoZG90MCA8IDApCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmICgoZG90MSA9IHN0cmNocihkb3QwICsgMSwgJy4nKSkgPT0gTlVMTCkKKyAgICBkb3QxID0gUHlVbmljb2RlX0ZpbmRDaGFyKHBhdGgsICcuJywgZG90MCsxLCBsZW4sIDEpOworICAgIGlmIChkb3QxIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgLyogVG9vIG1hbnkgZG90cz8gKi8KLSAgICBpZiAoc3RyY2hyKGRvdDEgKyAxLCAnLicpICE9IE5VTEwpCisgICAgaWYgKFB5VW5pY29kZV9GaW5kQ2hhcihwYXRoLCAnLicsIGRvdDErMSwgbGVuLCAxKSAhPSAtMSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICAvKiBUaGlzIGlzIGEgUEVQIDMxNDcgcGF0aC4gIFN0YXJ0IGJ5IGNvcHlpbmcgZXZlcnl0aGluZyBmcm9tIHRoZQpAQCAtMTAxMCwxMCArMTA1MCwxOCBAQAogICAgICAgIGNvcHkgdGhlIGZpbGUncyBiYXNlbmFtZSwgcmVtb3ZpbmcgdGhlIG1hZ2ljIHRhZyBhbmQgYWRkaW5nIGEgLnB5CiAgICAgICAgc3VmZml4LgogICAgICovCi0gICAgc3RybmNweShidWYsIHBhdGhuYW1lLCAoaT1sZWZ0LXBhdGhuYW1lKSk7Ci0gICAgc3RybmNweShidWYraSwgcmlnaHQrMSwgKGo9ZG90MC1yaWdodCkpOwotICAgIHN0cmNweShidWYraStqLCAicHkiKTsKLSAgICByZXR1cm4gYnVmOworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9OZXcobGVmdCArIChkb3QwLXJpZ2h0KSArIDIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUocGF0aCkpOworICAgIGlmICghcmVzdWx0KQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQocmVzdWx0KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEocmVzdWx0KTsKKyAgICBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMocmVzdWx0LCAwLCBwYXRoLCAwLCAoaSA9IGxlZnQpKTsKKyAgICBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMocmVzdWx0LCBsZWZ0LCBwYXRoLCByaWdodCsxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaiA9IGRvdDAtcmlnaHQpKTsKKyAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgaStqLCAgICdwJyk7CisgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGkraisxLCAneScpOworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIC8qIEdpdmVuIGEgcGF0aG5hbWUgZm9yIGEgUHl0aG9uIHNvdXJjZSBmaWxlLCBpdHMgdGltZSBvZiBsYXN0CkBAIC0xMDI0LDMxICsxMDcyLDM5IEBACiAgICBEb2Vzbid0IHNldCBhbiBleGNlcHRpb24uICovCiAKIHN0YXRpYyBGSUxFICoKLWNoZWNrX2NvbXBpbGVkX21vZHVsZShjaGFyICpwYXRobmFtZSwgdGltZV90IG10aW1lLCBjaGFyICpjcGF0aG5hbWUpCitjaGVja19jb21waWxlZF9tb2R1bGUoUHlPYmplY3QgKnBhdGhuYW1lLCBzdHJ1Y3Qgc3RhdCAqc3Jjc3RhdCwgUHlPYmplY3QgKmNwYXRobmFtZSkKIHsKICAgICBGSUxFICpmcDsKICAgICBsb25nIG1hZ2ljOwogICAgIGxvbmcgcHljX210aW1lOworICAgIGxvbmcgcHljX3NpemU7CiAKLSAgICBmcCA9IGZvcGVuKGNwYXRobmFtZSwgInJiIik7CisgICAgZnAgPSBfUHlfZm9wZW4oY3BhdGhuYW1lLCAicmIiKTsKICAgICBpZiAoZnAgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgbWFnaWMgPSBQeU1hcnNoYWxfUmVhZExvbmdGcm9tRmlsZShmcCk7CiAgICAgaWYgKG1hZ2ljICE9IHB5Y19tYWdpYykgewogICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiIyAlcyBoYXMgYmFkIG1hZ2ljXG4iLCBjcGF0aG5hbWUpOworICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjICVSIGhhcyBiYWQgbWFnaWNcbiIsIGNwYXRobmFtZSk7CiAgICAgICAgIGZjbG9zZShmcCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBweWNfbXRpbWUgPSBQeU1hcnNoYWxfUmVhZExvbmdGcm9tRmlsZShmcCk7Ci0gICAgaWYgKHB5Y19tdGltZSAhPSBtdGltZSkgeworICAgIGlmIChweWNfbXRpbWUgIT0gc3Jjc3RhdC0+c3RfbXRpbWUpIHsKICAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoIiMgJXMgaGFzIGJhZCBtdGltZVxuIiwgY3BhdGhuYW1lKTsKKyAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiIyAlUiBoYXMgYmFkIG10aW1lXG4iLCBjcGF0aG5hbWUpOworICAgICAgICBmY2xvc2UoZnApOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcHljX3NpemUgPSBQeU1hcnNoYWxfUmVhZExvbmdGcm9tRmlsZShmcCk7CisgICAgaWYgKHB5Y19zaXplICE9IChzcmNzdGF0LT5zdF9zaXplICYgMHhGRkZGRkZGRikpIHsKKyAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQorICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjICVSIGhhcyBiYWQgc2l6ZVxuIiwgY3BhdGhuYW1lKTsKICAgICAgICAgZmNsb3NlKGZwKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoIiMgJXMgbWF0Y2hlcyAlc1xuIiwgY3BhdGhuYW1lLCBwYXRobmFtZSk7CisgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiIyAlUiBtYXRjaGVzICVSXG4iLCBjcGF0aG5hbWUsIHBhdGhuYW1lKTsKICAgICByZXR1cm4gZnA7CiB9CiAKQEAgLTEwNTYsNyArMTExMiw3IEBACiAvKiBSZWFkIGEgY29kZSBvYmplY3QgZnJvbSBhIGZpbGUgYW5kIGNoZWNrIGl0IGZvciB2YWxpZGl0eSAqLwogCiBzdGF0aWMgUHlDb2RlT2JqZWN0ICoKLXJlYWRfY29tcGlsZWRfbW9kdWxlKGNoYXIgKmNwYXRobmFtZSwgRklMRSAqZnApCityZWFkX2NvbXBpbGVkX21vZHVsZShQeU9iamVjdCAqY3BhdGhuYW1lLCBGSUxFICpmcCkKIHsKICAgICBQeU9iamVjdCAqY287CiAKQEAgLTEwNjUsNyArMTEyMSw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmICghUHlDb2RlX0NoZWNrKGNvKSkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiTm9uLWNvZGUgb2JqZWN0IGluICUuMjAwcyIsIGNwYXRobmFtZSk7CisgICAgICAgICAgICAgICAgICAgICAiTm9uLWNvZGUgb2JqZWN0IGluICVSIiwgY3BhdGhuYW1lKTsKICAgICAgICAgUHlfREVDUkVGKGNvKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMTA3Nyw3ICsxMTMzLDcgQEAKICAgIG1vZHVsZSBvYmplY3QgV0lUSCBJTkNSRU1FTlRFRCBSRUZFUkVOQ0UgQ09VTlQgKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKLWxvYWRfY29tcGlsZWRfbW9kdWxlKGNoYXIgKm5hbWUsIGNoYXIgKmNwYXRobmFtZSwgRklMRSAqZnApCitsb2FkX2NvbXBpbGVkX21vZHVsZShQeU9iamVjdCAqbmFtZSwgUHlPYmplY3QgKmNwYXRobmFtZSwgRklMRSAqZnApCiB7CiAgICAgbG9uZyBtYWdpYzsKICAgICBQeUNvZGVPYmplY3QgKmNvOwpAQCAtMTA4NiwxOCArMTE0MiwyMCBAQAogICAgIG1hZ2ljID0gUHlNYXJzaGFsX1JlYWRMb25nRnJvbUZpbGUoZnApOwogICAgIGlmIChtYWdpYyAhPSBweWNfbWFnaWMpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIkJhZCBtYWdpYyBudW1iZXIgaW4gJS4yMDBzIiwgY3BhdGhuYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgICJCYWQgbWFnaWMgbnVtYmVyIGluICVSIiwgY3BhdGhuYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorICAgIC8qIFNraXAgbXRpbWUgYW5kIHNpemUgKi8KKyAgICAodm9pZCkgUHlNYXJzaGFsX1JlYWRMb25nRnJvbUZpbGUoZnApOwogICAgICh2b2lkKSBQeU1hcnNoYWxfUmVhZExvbmdGcm9tRmlsZShmcCk7CiAgICAgY28gPSByZWFkX2NvbXBpbGVkX21vZHVsZShjcGF0aG5hbWUsIGZwKTsKICAgICBpZiAoY28gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiaW1wb3J0ICVzICMgcHJlY29tcGlsZWQgZnJvbSAlc1xuIiwKLSAgICAgICAgICAgIG5hbWUsIGNwYXRobmFtZSk7Ci0gICAgbSA9IFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlV2l0aFBhdGhuYW1lcygKLSAgICAgICAgbmFtZSwgKFB5T2JqZWN0ICopY28sIGNwYXRobmFtZSwgY3BhdGhuYW1lKTsKKyAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCJpbXBvcnQgJVUgIyBwcmVjb21waWxlZCBmcm9tICVSXG4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSwgY3BhdGhuYW1lKTsKKyAgICBtID0gUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVPYmplY3QobmFtZSwgKFB5T2JqZWN0ICopY28sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNwYXRobmFtZSwgY3BhdGhuYW1lKTsKICAgICBQeV9ERUNSRUYoY28pOwogCiAgICAgcmV0dXJuIG07CkBAIC0xMTA2LDEzNCArMTE2NCwyMzMgQEAKIC8qIFBhcnNlIGEgc291cmNlIGZpbGUgYW5kIHJldHVybiB0aGUgY29ycmVzcG9uZGluZyBjb2RlIG9iamVjdCAqLwogCiBzdGF0aWMgUHlDb2RlT2JqZWN0ICoKLXBhcnNlX3NvdXJjZV9tb2R1bGUoY29uc3QgY2hhciAqcGF0aG5hbWUsIEZJTEUgKmZwKQorcGFyc2Vfc291cmNlX21vZHVsZShQeU9iamVjdCAqcGF0aG5hbWUsIEZJTEUgKmZwKQogewotICAgIFB5Q29kZU9iamVjdCAqY28gPSBOVUxMOworICAgIFB5Q29kZU9iamVjdCAqY287CisgICAgUHlPYmplY3QgKnBhdGhieXRlczsKICAgICBtb2RfdHkgbW9kOwogICAgIFB5Q29tcGlsZXJGbGFncyBmbGFnczsKLSAgICBQeUFyZW5hICphcmVuYSA9IFB5QXJlbmFfTmV3KCk7Ci0gICAgaWYgKGFyZW5hID09IE5VTEwpCisgICAgUHlBcmVuYSAqYXJlbmE7CisKKyAgICBwYXRoYnl0ZXMgPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KHBhdGhuYW1lKTsKKyAgICBpZiAocGF0aGJ5dGVzID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCisgICAgYXJlbmEgPSBQeUFyZW5hX05ldygpOworICAgIGlmIChhcmVuYSA9PSBOVUxMKSB7CisgICAgICAgIFB5X0RFQ1JFRihwYXRoYnl0ZXMpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKICAgICBmbGFncy5jZl9mbGFncyA9IDA7Ci0gICAgbW9kID0gUHlQYXJzZXJfQVNURnJvbUZpbGUoZnAsIHBhdGhuYW1lLCBOVUxMLAorICAgIG1vZCA9IFB5UGFyc2VyX0FTVEZyb21GaWxlKGZwLCBQeUJ5dGVzX0FTX1NUUklORyhwYXRoYnl0ZXMpLCBOVUxMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X2ZpbGVfaW5wdXQsIDAsIDAsICZmbGFncywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBhcmVuYSk7Ci0gICAgaWYgKG1vZCkgewotICAgICAgICBjbyA9IFB5QVNUX0NvbXBpbGUobW9kLCBwYXRobmFtZSwgTlVMTCwgYXJlbmEpOwotICAgIH0KKyAgICBpZiAobW9kICE9IE5VTEwpCisgICAgICAgIGNvID0gUHlBU1RfQ29tcGlsZShtb2QsIFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGhieXRlcyksIE5VTEwsIGFyZW5hKTsKKyAgICBlbHNlCisgICAgICAgIGNvID0gTlVMTDsKKyAgICBQeV9ERUNSRUYocGF0aGJ5dGVzKTsKICAgICBQeUFyZW5hX0ZyZWUoYXJlbmEpOwogICAgIHJldHVybiBjbzsKIH0KIAotCi0vKiBIZWxwZXIgdG8gb3BlbiBhIGJ5dGVjb2RlIGZpbGUgZm9yIHdyaXRpbmcgaW4gZXhjbHVzaXZlIG1vZGUgKi8KLQotc3RhdGljIEZJTEUgKgotb3Blbl9leGNsdXNpdmUoY2hhciAqZmlsZW5hbWUsIG1vZGVfdCBtb2RlKQotewotI2lmIGRlZmluZWQoT19FWENMKSYmZGVmaW5lZChPX0NSRUFUKSYmZGVmaW5lZChPX1dST05MWSkmJmRlZmluZWQoT19UUlVOQykKLSAgICAvKiBVc2UgT19FWENMIHRvIGF2b2lkIGEgcmFjZSBjb25kaXRpb24gd2hlbiBhbm90aGVyIHByb2Nlc3MgdHJpZXMgdG8KLSAgICAgICB3cml0ZSB0aGUgc2FtZSBmaWxlLiAgV2hlbiB0aGF0IGhhcHBlbnMsIG91ciBvcGVuKCkgY2FsbCBmYWlscywKLSAgICAgICB3aGljaCBpcyBqdXN0IGZpbmUgKHNpbmNlIGl0J3Mgb25seSBhIGNhY2hlKS4KLSAgICAgICBYWFggSWYgdGhlIGZpbGUgZXhpc3RzIGFuZCBpcyB3cml0YWJsZSBidXQgdGhlIGRpcmVjdG9yeSBpcyBub3QKLSAgICAgICB3cml0YWJsZSwgdGhlIGZpbGUgd2lsbCBuZXZlciBiZSB3cml0dGVuLiAgT2ggd2VsbC4KLSAgICAqLwotICAgIGludCBmZDsKLSAgICAodm9pZCkgdW5saW5rKGZpbGVuYW1lKTsKLSAgICBmZCA9IG9wZW4oZmlsZW5hbWUsIE9fRVhDTHxPX0NSRUFUfE9fV1JPTkxZfE9fVFJVTkMKLSNpZmRlZiBPX0JJTkFSWQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxPX0JJTkFSWSAgIC8qIG5lY2Vzc2FyeSBmb3IgV2luZG93cyAqLwotI2VuZGlmCi0jaWZkZWYgX19WTVMKLSAgICAgICAgICAgICwgbW9kZSwgImN0eHQ9YmluIiwgInNocj1uaWwiCi0jZWxzZQotICAgICAgICAgICAgLCBtb2RlCi0jZW5kaWYKLSAgICAgICAgICApOwotICAgIGlmIChmZCA8IDApCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIHJldHVybiBmZG9wZW4oZmQsICJ3YiIpOwotI2Vsc2UKLSAgICAvKiBCZXN0IHdlIGNhbiBkbyAtLSBvbiBXaW5kb3dzIHRoaXMgY2FuJ3QgaGFwcGVuIGFueXdheSAqLwotICAgIHJldHVybiBmb3BlbihmaWxlbmFtZSwgIndiIik7Ci0jZW5kaWYKLX0KLQotCiAvKiBXcml0ZSBhIGNvbXBpbGVkIG1vZHVsZSB0byBhIGZpbGUsIHBsYWNpbmcgdGhlIHRpbWUgb2YgbGFzdAogICAgbW9kaWZpY2F0aW9uIG9mIGl0cyBzb3VyY2UgaW50byB0aGUgaGVhZGVyLgogICAgRXJyb3JzIGFyZSBpZ25vcmVkLCBpZiBhIHdyaXRlIGVycm9yIG9jY3VycyBhbiBhdHRlbXB0IGlzIG1hZGUgdG8KICAgIHJlbW92ZSB0aGUgZmlsZS4gKi8KIAogc3RhdGljIHZvaWQKLXdyaXRlX2NvbXBpbGVkX21vZHVsZShQeUNvZGVPYmplY3QgKmNvLCBjaGFyICpjcGF0aG5hbWUsIHN0cnVjdCBzdGF0ICpzcmNzdGF0KQord3JpdGVfY29tcGlsZWRfbW9kdWxlKFB5Q29kZU9iamVjdCAqY28sIFB5T2JqZWN0ICpjcGF0aG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHN0YXQgKnNyY3N0YXQpCiB7CisgICAgUHlfVUNTNCAqY3BhdGhuYW1lX3VjczQ7CiAgICAgRklMRSAqZnA7Ci0gICAgY2hhciAqZGlycGF0aDsKICAgICB0aW1lX3QgbXRpbWUgPSBzcmNzdGF0LT5zdF9tdGltZTsKKyAgICBsb25nIHNpemUgPSBzcmNzdGF0LT5zdF9zaXplICYgMHhGRkZGRkZGRjsKKyAgICBQeU9iamVjdCAqY3BhdGhuYW1lX3RtcDsKICNpZmRlZiBNU19XSU5ET1dTICAgLyogc2luY2UgV2luZG93cyB1c2VzIGRpZmZlcmVudCBwZXJtaXNzaW9ucyAgKi8KICAgICBtb2RlX3QgbW9kZSA9IHNyY3N0YXQtPnN0X21vZGUgJiB+U19JRVhFQzsKKyAgICB3Y2hhcl90ICp3ZGlybmFtZSwgKndwYXRobmFtZSwgKndwYXRobmFtZV90bXA7CiAjZWxzZQotICAgIG1vZGVfdCBtb2RlID0gc3Jjc3RhdC0+c3RfbW9kZSAmIH5TX0lYVVNSICYgflNfSVhHUlAgJiB+U19JWE9USDsKICAgICBtb2RlX3QgZGlybW9kZSA9IChzcmNzdGF0LT5zdF9tb2RlIHwKICAgICAgICAgICAgICAgICAgICAgICBTX0lYVVNSIHwgU19JWEdSUCB8IFNfSVhPVEggfAogICAgICAgICAgICAgICAgICAgICAgIFNfSVdVU1IgfCBTX0lXR1JQIHwgU19JV09USCk7CisgICAgUHlPYmplY3QgKmRpcmJ5dGVzOworICAgIFB5T2JqZWN0ICpjcGF0aGJ5dGVzLCAqY3BhdGhieXRlc190bXA7CiAjZW5kaWYKLSAgICBpbnQgc2F2ZWQ7CisgICAgaW50IGZkOworICAgIFB5T2JqZWN0ICpkaXJuYW1lOworICAgIFB5X1VDUzQgKmRpcnNlcDsKKyAgICBpbnQgcmVzLCBvazsKIAogICAgIC8qIEVuc3VyZSB0aGF0IHRoZSBfX3B5Y2FjaGVfXyBkaXJlY3RvcnkgZXhpc3RzLiAqLwotICAgIGRpcnBhdGggPSByaWdodG1vc3Rfc2VwKGNwYXRobmFtZSk7Ci0gICAgaWYgKGRpcnBhdGggPT0gTlVMTCkgeworICAgIGNwYXRobmFtZV91Y3M0ID0gUHlVbmljb2RlX0FzVUNTNENvcHkoY3BhdGhuYW1lKTsKKyAgICBpZiAoIWNwYXRobmFtZV91Y3M0KQorICAgICAgICByZXR1cm47CisgICAgZGlyc2VwID0gcmlnaHRtb3N0X3NlcChjcGF0aG5hbWVfdWNzNCk7CisgICAgaWYgKGRpcnNlcCA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKAotICAgICAgICAgICAgICAgICIjIG5vICVzIHBhdGggZm91bmQgJXNcbiIsCi0gICAgICAgICAgICAgICAgQ0FDSEVESVIsIGNwYXRobmFtZSk7CisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgbm8gJXMgcGF0aCBmb3VuZCAlUlxuIiwgQ0FDSEVESVIsIGNwYXRobmFtZSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgc2F2ZWQgPSAqZGlycGF0aDsKLSAgICAqZGlycGF0aCA9ICdcMCc7CisgICAgZGlybmFtZSA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoUHlVbmljb2RlXzRCWVRFX0tJTkQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3BhdGhuYW1lX3VjczQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyc2VwIC0gY3BhdGhuYW1lX3VjczQpOworICAgIFB5TWVtX0ZyZWUoY3BhdGhuYW1lX3VjczQpOworICAgIGlmIChkaXJuYW1lID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KIAogI2lmZGVmIE1TX1dJTkRPV1MKLSAgICBpZiAoX21rZGlyKGNwYXRobmFtZSkgPCAwICYmIGVycm5vICE9IEVFWElTVCkgewotI2Vsc2UKLSAgICBpZiAobWtkaXIoY3BhdGhuYW1lLCBkaXJtb2RlKSA8IDAgJiYgZXJybm8gIT0gRUVYSVNUKSB7Ci0jZW5kaWYKLSAgICAgICAgKmRpcnBhdGggPSBzYXZlZDsKLSAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoCi0gICAgICAgICAgICAgICAgIiMgY2Fubm90IGNyZWF0ZSBjYWNoZSBkaXIgJXNcbiIsIGNwYXRobmFtZSk7CisgICAgd2Rpcm5hbWUgPSBQeVVuaWNvZGVfQXNVbmljb2RlKGRpcm5hbWUpOworICAgIGlmICh3ZGlybmFtZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgKmRpcnBhdGggPSBzYXZlZDsKKyAgICByZXMgPSBDcmVhdGVEaXJlY3RvcnlXKHdkaXJuYW1lLCBOVUxMKTsKKyAgICBvayA9IChyZXMgIT0gMCk7CisgICAgaWYgKCFvayAmJiBHZXRMYXN0RXJyb3IoKSA9PSBFUlJPUl9BTFJFQURZX0VYSVNUUykKKyAgICAgICAgb2sgPSAxOworI2Vsc2UKKyAgICBkaXJieXRlcyA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQoZGlybmFtZSk7CisgICAgaWYgKGRpcmJ5dGVzID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICByZXMgPSBta2RpcihQeUJ5dGVzX0FTX1NUUklORyhkaXJieXRlcyksIGRpcm1vZGUpOworICAgIFB5X0RFQ1JFRihkaXJieXRlcyk7CisgICAgaWYgKDAgPD0gcmVzKQorICAgICAgICBvayA9IDE7CisgICAgZWxzZQorICAgICAgICBvayA9IChlcnJubyA9PSBFRVhJU1QpOworI2VuZGlmCisgICAgaWYgKCFvaykgeworICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgY2Fubm90IGNyZWF0ZSBjYWNoZSBkaXIgJVJcbiIsIGRpcm5hbWUpOworICAgICAgICBQeV9ERUNSRUYoZGlybmFtZSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgUHlfREVDUkVGKGRpcm5hbWUpOwogCi0gICAgZnAgPSBvcGVuX2V4Y2x1c2l2ZShjcGF0aG5hbWUsIG1vZGUpOworICAgIC8qIFdlIGZpcnN0IHdyaXRlIHRvIGEgdG1wIGZpbGUgYW5kIHRoZW4gdGFrZSBhZHZhbnRhZ2UKKyAgICAgICBvZiBhdG9taWMgcmVuYW1pbmcgKHdoaWNoICpzaG91bGQqIGJlIHRydWUgZXZlbiB1bmRlciBXaW5kb3dzKS4KKyAgICAgICBBcyBpbiBpbXBvcnRsaWIsIHdlIHVzZSBpZChzb21ldGhpbmcpIHRvIGdlbmVyYXRlIGEgcHNldWRvLXJhbmRvbQorICAgICAgIGZpbGVuYW1lLiAgbWtzdGVtcCgpIGNhbid0IGJlIHVzZWQgc2luY2UgaXQgZG9lc24ndCBhbGxvdyBzcGVjaWZ5aW5nCisgICAgICAgdGhlIGZpbGUgYWNjZXNzIHBlcm1pc3Npb25zLgorICAgICovCisgICAgY3BhdGhuYW1lX3RtcCA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlVS4lemQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcGF0aG5hbWUsIChQeV9zc2l6ZV90KSBjbyk7CisgICAgaWYgKGNwYXRobmFtZV90bXAgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICByZXR1cm47CisgICAgfQorI2lmZGVmIE1TX1dJTkRPV1MKKyAgICB3cGF0aG5hbWUgPSBQeVVuaWNvZGVfQXNVbmljb2RlKGNwYXRobmFtZSk7CisgICAgaWYgKHdwYXRobmFtZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgd3BhdGhuYW1lX3RtcCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUoY3BhdGhuYW1lX3RtcCk7CisgICAgaWYgKHdwYXRobmFtZV90bXAgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgKHZvaWQpRGVsZXRlRmlsZVcod3BhdGhuYW1lX3RtcCk7CisgICAgZmQgPSBfd29wZW4od3BhdGhuYW1lX3RtcCwKKyAgICAgICAgICAgICAgICBPX0VYQ0wgfCBPX0NSRUFUIHwgT19XUk9OTFkgfCBPX0JJTkFSWSwKKyAgICAgICAgICAgICAgICBtb2RlKTsKKyAgICBpZiAoMCA8PSBmZCkKKyAgICAgICAgZnAgPSBmZG9wZW4oZmQsICJ3YiIpOworICAgIGVsc2UKKyAgICAgICAgZnAgPSBOVUxMOworI2Vsc2UKKyAgICBjcGF0aGJ5dGVzX3RtcCA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQoY3BhdGhuYW1lX3RtcCk7CisgICAgUHlfREVDUkVGKGNwYXRobmFtZV90bXApOworICAgIGlmIChjcGF0aGJ5dGVzX3RtcCA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgY3BhdGhieXRlcyA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQoY3BhdGhuYW1lKTsKKyAgICBpZiAoY3BhdGhieXRlcyA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgZmQgPSBvcGVuKFB5Qnl0ZXNfQVNfU1RSSU5HKGNwYXRoYnl0ZXNfdG1wKSwKKyAgICAgICAgICAgICAgT19DUkVBVCB8IE9fRVhDTCB8IE9fV1JPTkxZLCAwNjY2KTsKKyAgICBpZiAoMCA8PSBmZCkKKyAgICAgICAgZnAgPSBmZG9wZW4oZmQsICJ3YiIpOworICAgIGVsc2UKKyAgICAgICAgZnAgPSBOVUxMOworI2VuZGlmCiAgICAgaWYgKGZwID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoCi0gICAgICAgICAgICAgICAgIiMgY2FuJ3QgY3JlYXRlICVzXG4iLCBjcGF0aG5hbWUpOworICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKAorICAgICAgICAgICAgICAgICIjIGNhbid0IGNyZWF0ZSAlUlxuIiwgY3BhdGhuYW1lKTsKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgICAgIFB5X0RFQ1JFRihjcGF0aG5hbWVfdG1wKTsKKyNlbHNlCisgICAgICAgIFB5X0RFQ1JFRihjcGF0aGJ5dGVzKTsKKyAgICAgICAgUHlfREVDUkVGKGNwYXRoYnl0ZXNfdG1wKTsKKyNlbmRpZgogICAgICAgICByZXR1cm47CiAgICAgfQogICAgIFB5TWFyc2hhbF9Xcml0ZUxvbmdUb0ZpbGUocHljX21hZ2ljLCBmcCwgUHlfTUFSU0hBTF9WRVJTSU9OKTsKLSAgICAvKiBGaXJzdCB3cml0ZSBhIDAgZm9yIG10aW1lICovCisgICAgLyogRmlyc3Qgd3JpdGUgYSAwIGZvciBtdGltZSBhbmQgc2l6ZSAqLworICAgIFB5TWFyc2hhbF9Xcml0ZUxvbmdUb0ZpbGUoMEwsIGZwLCBQeV9NQVJTSEFMX1ZFUlNJT04pOwogICAgIFB5TWFyc2hhbF9Xcml0ZUxvbmdUb0ZpbGUoMEwsIGZwLCBQeV9NQVJTSEFMX1ZFUlNJT04pOwogICAgIFB5TWFyc2hhbF9Xcml0ZU9iamVjdFRvRmlsZSgoUHlPYmplY3QgKiljbywgZnAsIFB5X01BUlNIQUxfVkVSU0lPTik7Ci0gICAgaWYgKGZmbHVzaChmcCkgIT0gMCB8fCBmZXJyb3IoZnApKSB7Ci0gICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCIjIGNhbid0IHdyaXRlICVzXG4iLCBjcGF0aG5hbWUpOwotICAgICAgICAvKiBEb24ndCBrZWVwIHBhcnRpYWwgZmlsZSAqLwotICAgICAgICBmY2xvc2UoZnApOwotICAgICAgICAodm9pZCkgdW5saW5rKGNwYXRobmFtZSk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgLyogTm93IHdyaXRlIHRoZSB0cnVlIG10aW1lIChhcyBhIDMyLWJpdCBmaWVsZCkgKi8KKyAgICBmZmx1c2goZnApOworICAgIC8qIE5vdyB3cml0ZSB0aGUgdHJ1ZSBtdGltZSBhbmQgc2l6ZSAoYXMgMzItYml0IGZpZWxkcykgKi8KICAgICBmc2VlayhmcCwgNEwsIDApOwogICAgIGFzc2VydChtdGltZSA8PSAweEZGRkZGRkZGKTsKICAgICBQeU1hcnNoYWxfV3JpdGVMb25nVG9GaWxlKChsb25nKW10aW1lLCBmcCwgUHlfTUFSU0hBTF9WRVJTSU9OKTsKLSAgICBmZmx1c2goZnApOworICAgIFB5TWFyc2hhbF9Xcml0ZUxvbmdUb0ZpbGUoc2l6ZSwgZnAsIFB5X01BUlNIQUxfVkVSU0lPTik7CisgICAgaWYgKGZmbHVzaChmcCkgIT0gMCB8fCBmZXJyb3IoZnApKSB7CisgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKKyAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiIyBjYW4ndCB3cml0ZSAlUlxuIiwgY3BhdGhuYW1lKTsKKyAgICAgICAgLyogRG9uJ3Qga2VlcCBwYXJ0aWFsIGZpbGUgKi8KKyAgICAgICAgZmNsb3NlKGZwKTsKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgICAgICh2b2lkKURlbGV0ZUZpbGVXKHdwYXRobmFtZV90bXApOworICAgICAgICBQeV9ERUNSRUYoY3BhdGhuYW1lX3RtcCk7CisjZWxzZQorICAgICAgICAodm9pZCkgdW5saW5rKFB5Qnl0ZXNfQVNfU1RSSU5HKGNwYXRoYnl0ZXNfdG1wKSk7CisgICAgICAgIFB5X0RFQ1JFRihjcGF0aGJ5dGVzKTsKKyAgICAgICAgUHlfREVDUkVGKGNwYXRoYnl0ZXNfdG1wKTsKKyNlbmRpZgorICAgICAgICByZXR1cm47CisgICAgfQogICAgIGZjbG9zZShmcCk7CisgICAgLyogRG8gYSAoaG9wZWZ1bGx5KSBhdG9taWMgcmVuYW1lICovCisjaWZkZWYgTVNfV0lORE9XUworICAgIGlmICghTW92ZUZpbGVFeFcod3BhdGhuYW1lX3RtcCwgd3BhdGhuYW1lLCBNT1ZFRklMRV9SRVBMQUNFX0VYSVNUSU5HKSkgeworICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgY2FuJ3Qgd3JpdGUgJVJcbiIsIGNwYXRobmFtZSk7CisgICAgICAgIC8qIERvbid0IGtlZXAgdG1wIGZpbGUgKi8KKyAgICAgICAgKHZvaWQpIERlbGV0ZUZpbGVXKHdwYXRobmFtZV90bXApOworICAgICAgICBQeV9ERUNSRUYoY3BhdGhuYW1lX3RtcCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgUHlfREVDUkVGKGNwYXRobmFtZV90bXApOworI2Vsc2UKKyAgICBpZiAocmVuYW1lKFB5Qnl0ZXNfQVNfU1RSSU5HKGNwYXRoYnl0ZXNfdG1wKSwKKyAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKGNwYXRoYnl0ZXMpKSkgeworICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgY2FuJ3Qgd3JpdGUgJVJcbiIsIGNwYXRobmFtZSk7CisgICAgICAgIC8qIERvbid0IGtlZXAgdG1wIGZpbGUgKi8KKyAgICAgICAgdW5saW5rKFB5Qnl0ZXNfQVNfU1RSSU5HKGNwYXRoYnl0ZXNfdG1wKSk7CisgICAgICAgIFB5X0RFQ1JFRihjcGF0aGJ5dGVzKTsKKyAgICAgICAgUHlfREVDUkVGKGNwYXRoYnl0ZXNfdG1wKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBQeV9ERUNSRUYoY3BhdGhieXRlcyk7CisgICAgUHlfREVDUkVGKGNwYXRoYnl0ZXNfdG1wKTsKKyNlbmRpZgogICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoIiMgd3JvdGUgJXNcbiIsIGNwYXRobmFtZSk7CisgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiIyB3cm90ZSAlUlxuIiwgY3BhdGhuYW1lKTsKIH0KIAogc3RhdGljIHZvaWQKQEAgLTEyNjAsMjYgKzE0MTcsNDQgQEAKICAgICB9CiB9CiAKLXN0YXRpYyBpbnQKLXVwZGF0ZV9jb21waWxlZF9tb2R1bGUoUHlDb2RlT2JqZWN0ICpjbywgY2hhciAqcGF0aG5hbWUpCitzdGF0aWMgdm9pZAordXBkYXRlX2NvbXBpbGVkX21vZHVsZShQeUNvZGVPYmplY3QgKmNvLCBQeU9iamVjdCAqbmV3bmFtZSkKIHsKLSAgICBQeU9iamVjdCAqb2xkbmFtZSwgKm5ld25hbWU7CisgICAgUHlPYmplY3QgKm9sZG5hbWU7CiAKLSAgICBuZXduYW1lID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChwYXRobmFtZSk7Ci0gICAgaWYgKG5ld25hbWUgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIC0xOwotCi0gICAgaWYgKCFQeVVuaWNvZGVfQ29tcGFyZShjby0+Y29fZmlsZW5hbWUsIG5ld25hbWUpKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihuZXduYW1lKTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQorICAgIGlmIChQeVVuaWNvZGVfQ29tcGFyZShjby0+Y29fZmlsZW5hbWUsIG5ld25hbWUpID09IDApCisgICAgICAgIHJldHVybjsKIAogICAgIG9sZG5hbWUgPSBjby0+Y29fZmlsZW5hbWU7CiAgICAgUHlfSU5DUkVGKG9sZG5hbWUpOwogICAgIHVwZGF0ZV9jb2RlX2ZpbGVuYW1lcyhjbywgb2xkbmFtZSwgbmV3bmFtZSk7CiAgICAgUHlfREVDUkVGKG9sZG5hbWUpOwotICAgIFB5X0RFQ1JFRihuZXduYW1lKTsKLSAgICByZXR1cm4gMTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2ltcF9maXhfY29fZmlsZW5hbWUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpjbzsKKyAgICBQeU9iamVjdCAqZmlsZV9wYXRoOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPTzpfZml4X2NvX2ZpbGVuYW1lIiwgJmNvLCAmZmlsZV9wYXRoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoIVB5Q29kZV9DaGVjayhjbykpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJmaXJzdCBhcmd1bWVudCBtdXN0IGJlIGEgY29kZSBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soZmlsZV9wYXRoKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgInNlY29uZCBhcmd1bWVudCBtdXN0IGJlIGEgc3RyaW5nIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHVwZGF0ZV9jb21waWxlZF9tb2R1bGUoKFB5Q29kZU9iamVjdCopY28sIGZpbGVfcGF0aCk7CisKKyAgICBQeV9SRVRVUk5fTk9ORTsKIH0KIAogLyogTG9hZCBhIHNvdXJjZSBtb2R1bGUgZnJvbSBhIGdpdmVuIGZpbGUgYW5kIHJldHVybiBpdHMgbW9kdWxlCkBAIC0xMjg3LDIwICsxNDYyLDE5IEBACiAgICBieXRlLWNvbXBpbGVkIGZpbGUsIHVzZSB0aGF0IGluc3RlYWQuICovCiAKIHN0YXRpYyBQeU9iamVjdCAqCi1sb2FkX3NvdXJjZV9tb2R1bGUoY2hhciAqbmFtZSwgY2hhciAqcGF0aG5hbWUsIEZJTEUgKmZwKQorbG9hZF9zb3VyY2VfbW9kdWxlKFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqcGF0aG5hbWUsIEZJTEUgKmZwKQogewogICAgIHN0cnVjdCBzdGF0IHN0OwogICAgIEZJTEUgKmZwYzsKLSAgICBjaGFyIGJ1ZltNQVhQQVRITEVOKzFdOwotICAgIGNoYXIgKmNwYXRobmFtZTsKKyAgICBQeU9iamVjdCAqY3BhdGhuYW1lID0gTlVMTCwgKmNwYXRoYnl0ZXMgPSBOVUxMOwogICAgIFB5Q29kZU9iamVjdCAqY287Ci0gICAgUHlPYmplY3QgKm07CisgICAgUHlPYmplY3QgKm0gPSBOVUxMOwogCiAgICAgaWYgKGZzdGF0KGZpbGVubyhmcCksICZzdCkgIT0gMCkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfUnVudGltZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgInVuYWJsZSB0byBnZXQgZmlsZSBzdGF0dXMgZnJvbSAnJXMnIiwKKyAgICAgICAgICAgICAgICAgICAgICJ1bmFibGUgdG8gZ2V0IGZpbGUgc3RhdHVzIGZyb20gJVIiLAogICAgICAgICAgICAgICAgICAgICAgcGF0aG5hbWUpOwotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgZ290byBlcnJvcjsKICAgICB9CiAgICAgaWYgKHNpemVvZiBzdC5zdF9tdGltZSA+IDQpIHsKICAgICAgICAgLyogUHl0aG9uJ3MgLnB5YyB0aW1lc3RhbXAgaGFuZGxpbmcgcHJlc3VtZXMgdGhhdCB0aGUgdGltZXN0YW1wIGZpdHMKQEAgLTEzMTAsMzggKzE0ODQsNDcgQEAKICAgICAgICAgICovCiAgICAgICAgIHN0LnN0X210aW1lICY9IDB4RkZGRkZGRkY7CiAgICAgfQotICAgIGNwYXRobmFtZSA9IG1ha2VfY29tcGlsZWRfcGF0aG5hbWUoCi0gICAgICAgIHBhdGhuYW1lLCBidWYsIChzaXplX3QpTUFYUEFUSExFTiArIDEsICFQeV9PcHRpbWl6ZUZsYWcpOwotICAgIGlmIChjcGF0aG5hbWUgIT0gTlVMTCAmJgotICAgICAgICAoZnBjID0gY2hlY2tfY29tcGlsZWRfbW9kdWxlKHBhdGhuYW1lLCBzdC5zdF9tdGltZSwgY3BhdGhuYW1lKSkpIHsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHBhdGhuYW1lKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGNwYXRobmFtZSA9IG1ha2VfY29tcGlsZWRfcGF0aG5hbWUocGF0aG5hbWUsICFQeV9PcHRpbWl6ZUZsYWcpOworCisgICAgaWYgKGNwYXRobmFtZSAhPSBOVUxMKQorICAgICAgICBmcGMgPSBjaGVja19jb21waWxlZF9tb2R1bGUocGF0aG5hbWUsICZzdCwgY3BhdGhuYW1lKTsKKyAgICBlbHNlCisgICAgICAgIGZwYyA9IE5VTEw7CisKKyAgICBpZiAoZnBjKSB7CiAgICAgICAgIGNvID0gcmVhZF9jb21waWxlZF9tb2R1bGUoY3BhdGhuYW1lLCBmcGMpOwogICAgICAgICBmY2xvc2UoZnBjKTsKICAgICAgICAgaWYgKGNvID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgaWYgKHVwZGF0ZV9jb21waWxlZF9tb2R1bGUoY28sIHBhdGhuYW1lKSA8IDApCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIHVwZGF0ZV9jb21waWxlZF9tb2R1bGUoY28sIHBhdGhuYW1lKTsKICAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoImltcG9ydCAlcyAjIHByZWNvbXBpbGVkIGZyb20gJXNcbiIsCi0gICAgICAgICAgICAgICAgbmFtZSwgY3BhdGhuYW1lKTsKLSAgICAgICAgcGF0aG5hbWUgPSBjcGF0aG5hbWU7CisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoImltcG9ydCAlVSAjIHByZWNvbXBpbGVkIGZyb20gJVJcbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSwgY3BhdGhuYW1lKTsKKyAgICAgICAgbSA9IFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlT2JqZWN0KG5hbWUsIChQeU9iamVjdCAqKWNvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3BhdGhuYW1lLCBjcGF0aG5hbWUpOwogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgY28gPSBwYXJzZV9zb3VyY2VfbW9kdWxlKHBhdGhuYW1lLCBmcCk7CiAgICAgICAgIGlmIChjbyA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiaW1wb3J0ICVzICMgZnJvbSAlc1xuIiwKLSAgICAgICAgICAgICAgICBuYW1lLCBwYXRobmFtZSk7Ci0gICAgICAgIGlmIChjcGF0aG5hbWUpIHsKKyAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiaW1wb3J0ICVVICMgZnJvbSAlUlxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lLCBwYXRobmFtZSk7CisgICAgICAgIGlmIChjcGF0aG5hbWUgIT0gTlVMTCkgewogICAgICAgICAgICAgUHlPYmplY3QgKnJvID0gUHlTeXNfR2V0T2JqZWN0KCJkb250X3dyaXRlX2J5dGVjb2RlIik7CiAgICAgICAgICAgICBpZiAocm8gPT0gTlVMTCB8fCAhUHlPYmplY3RfSXNUcnVlKHJvKSkKICAgICAgICAgICAgICAgICB3cml0ZV9jb21waWxlZF9tb2R1bGUoY28sIGNwYXRobmFtZSwgJnN0KTsKICAgICAgICAgfQorICAgICAgICBtID0gUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVPYmplY3QobmFtZSwgKFB5T2JqZWN0ICopY28sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRobmFtZSwgY3BhdGhuYW1lKTsKICAgICB9Ci0gICAgbSA9IFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlV2l0aFBhdGhuYW1lcygKLSAgICAgICAgbmFtZSwgKFB5T2JqZWN0ICopY28sIHBhdGhuYW1lLCBjcGF0aG5hbWUpOwogICAgIFB5X0RFQ1JFRihjbyk7CiAKK2Vycm9yOgorICAgIFB5X1hERUNSRUYoY3BhdGhieXRlcyk7CisgICAgUHlfWERFQ1JFRihjcGF0aG5hbWUpOwogICAgIHJldHVybiBtOwogfQogCkBAIC0xMzQ5LDEwMSArMTUzMiwxMTUgQEAKICAqIFJldHVybnMgdGhlIHBhdGggdG8gdGhlIHB5IGZpbGUgaWYgYXZhaWxhYmxlLCBlbHNlIHRoZSBnaXZlbiBwYXRoCiAgKi8KIHN0YXRpYyBQeU9iamVjdCAqCi1nZXRfc291cmNlZmlsZShjaGFyICpmaWxlKQorZ2V0X3NvdXJjZWZpbGUoUHlPYmplY3QgKmZpbGVuYW1lKQogewotICAgIGNoYXIgcHlbTUFYUEFUSExFTiArIDFdOwogICAgIFB5X3NzaXplX3QgbGVuOwotICAgIFB5T2JqZWN0ICp1OworICAgIFB5X1VDUzQgKmZpbGV1bmk7CisgICAgUHlPYmplY3QgKnB5OwogICAgIHN0cnVjdCBzdGF0IHN0YXRidWY7CisgICAgaW50IGVycjsKIAotICAgIGlmICghZmlsZSB8fCAhKmZpbGUpIHsKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChmaWxlbmFtZSk7CisgICAgaWYgKGxlbiA9PSAwKQogICAgICAgICBQeV9SRVRVUk5fTk9ORTsKLSAgICB9CiAKLSAgICBsZW4gPSBzdHJsZW4oZmlsZSk7Ci0gICAgLyogbWF0Y2ggJyoucHk/JyAqLwotICAgIGlmIChsZW4gPiBNQVhQQVRITEVOIHx8IFB5T1Nfc3RybmljbXAoJmZpbGVbbGVuLTRdLCAiLnB5IiwgMykgIT0gMCkgewotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChmaWxlKTsKLSAgICB9CisgICAgLyogZG9uJ3QgbWF0Y2ggKi5weWMgb3IgKi5weW8/ICovCisgICAgZmlsZXVuaSA9IFB5VW5pY29kZV9Bc1VDUzRDb3B5KGZpbGVuYW1lKTsKKyAgICBpZiAoIWZpbGV1bmkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChsZW4gPCA1CisgICAgICAgIHx8IGZpbGV1bmlbbGVuLTRdICE9ICcuJworICAgICAgICB8fCAoZmlsZXVuaVtsZW4tM10gIT0gJ3AnICYmIGZpbGV1bmlbbGVuLTNdICE9ICdQJykKKyAgICAgICAgfHwgKGZpbGV1bmlbbGVuLTJdICE9ICd5JyAmJiBmaWxldW5pW2xlbi0yXSAhPSAnWScpKQorICAgICAgICBnb3RvIHVuY2hhbmdlZDsKIAogICAgIC8qIFN0YXJ0IGJ5IHRyeWluZyB0byB0dXJuIFBFUCAzMTQ3IHBhdGggaW50byBzb3VyY2UgcGF0aC4gIElmIHRoYXQKICAgICAgKiBmYWlscywganVzdCBjaG9wIG9mZiB0aGUgdHJhaWxpbmcgY2hhcmFjdGVyLCBpLmUuIGxlZ2FjeSBweWMgcGF0aAogICAgICAqIHRvIHB5LgogICAgICAqLwotICAgIGlmIChtYWtlX3NvdXJjZV9wYXRobmFtZShmaWxlLCBweSkgPT0gTlVMTCkgewotICAgICAgICBzdHJuY3B5KHB5LCBmaWxlLCBsZW4tMSk7Ci0gICAgICAgIHB5W2xlbi0xXSA9ICdcMCc7CisgICAgcHkgPSBtYWtlX3NvdXJjZV9wYXRobmFtZShmaWxlbmFtZSk7CisgICAgaWYgKHB5ID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgcHkgPSBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKFB5VW5pY29kZV80QllURV9LSU5ELCBmaWxldW5pLCBsZW4gLSAxKTsKICAgICB9CisgICAgaWYgKHB5ID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CiAKLSAgICBpZiAoc3RhdChweSwgJnN0YXRidWYpID09IDAgJiYKLSAgICAgICAgU19JU1JFRyhzdGF0YnVmLnN0X21vZGUpKSB7Ci0gICAgICAgIHUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KHB5KTsKKyAgICBlcnIgPSBfUHlfc3RhdChweSwgJnN0YXRidWYpOworICAgIGlmIChlcnIgPT0gLTIpCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgaWYgKGVyciA9PSAwICYmIFNfSVNSRUcoc3RhdGJ1Zi5zdF9tb2RlKSkgeworICAgICAgICBQeU1lbV9GcmVlKGZpbGV1bmkpOworICAgICAgICByZXR1cm4gcHk7CiAgICAgfQotICAgIGVsc2UgewotICAgICAgICB1ID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChmaWxlKTsKLSAgICB9Ci0gICAgcmV0dXJuIHU7CisgICAgUHlfREVDUkVGKHB5KTsKKyAgICBnb3RvIHVuY2hhbmdlZDsKKworZXJyb3I6CisgICAgUHlFcnJfQ2xlYXIoKTsKK3VuY2hhbmdlZDoKKyAgICBQeU1lbV9GcmVlKGZpbGV1bmkpOworICAgIFB5X0lOQ1JFRihmaWxlbmFtZSk7CisgICAgcmV0dXJuIGZpbGVuYW1lOwogfQogCiAvKiBGb3J3YXJkICovCi1zdGF0aWMgUHlPYmplY3QgKmxvYWRfbW9kdWxlKGNoYXIgKiwgRklMRSAqLCBjaGFyICosIGludCwgUHlPYmplY3QgKik7Ci1zdGF0aWMgc3RydWN0IGZpbGVkZXNjciAqZmluZF9tb2R1bGUoY2hhciAqLCBjaGFyICosIFB5T2JqZWN0ICosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqLCBzaXplX3QsIEZJTEUgKiosIFB5T2JqZWN0ICoqKTsKLXN0YXRpYyBzdHJ1Y3QgX2Zyb3plbiAqIGZpbmRfZnJvemVuKGNoYXIgKik7CitzdGF0aWMgUHlPYmplY3QgKmxvYWRfbW9kdWxlKFB5T2JqZWN0ICosIEZJTEUgKiwgUHlPYmplY3QgKiwgaW50LCBQeU9iamVjdCAqKTsKK3N0YXRpYyBzdHJ1Y3QgZmlsZWRlc2NyICpmaW5kX21vZHVsZShQeU9iamVjdCAqLCBQeU9iamVjdCAqLCBQeU9iamVjdCAqLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqLCBGSUxFICoqLCBQeU9iamVjdCAqKik7CitzdGF0aWMgc3RydWN0IF9mcm96ZW4gKiBmaW5kX2Zyb3plbihQeU9iamVjdCAqKTsKIAogLyogTG9hZCBhIHBhY2thZ2UgYW5kIHJldHVybiBpdHMgbW9kdWxlIG9iamVjdCBXSVRIIElOQ1JFTUVOVEVECiAgICBSRUZFUkVOQ0UgQ09VTlQgKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKLWxvYWRfcGFja2FnZShjaGFyICpuYW1lLCBjaGFyICpwYXRobmFtZSkKK2xvYWRfcGFja2FnZShQeU9iamVjdCAqbmFtZSwgUHlPYmplY3QgKnBhdGhuYW1lKQogewotICAgIFB5T2JqZWN0ICptLCAqZDsKLSAgICBQeU9iamVjdCAqZmlsZSA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKnBhdGggPSBOVUxMOworICAgIFB5T2JqZWN0ICptLCAqZCwgKmJ1Zm9iajsKKyAgICBQeU9iamVjdCAqZmlsZSA9IE5VTEwsICpwYXRoX2xpc3QgPSBOVUxMOwogICAgIGludCBlcnI7Ci0gICAgY2hhciBidWZbTUFYUEFUSExFTisxXTsKICAgICBGSUxFICpmcCA9IE5VTEw7CiAgICAgc3RydWN0IGZpbGVkZXNjciAqZmRwOwogCi0gICAgbSA9IFB5SW1wb3J0X0FkZE1vZHVsZShuYW1lKTsKKyAgICBtID0gUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0KG5hbWUpOwogICAgIGlmIChtID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoImltcG9ydCAlcyAjIGRpcmVjdG9yeSAlc1xuIiwKLSAgICAgICAgICAgIG5hbWUsIHBhdGhuYW1lKTsKLSAgICBkID0gUHlNb2R1bGVfR2V0RGljdChtKTsKKyAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCJpbXBvcnQgJVUgIyBkaXJlY3RvcnkgJVJcbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lLCBwYXRobmFtZSk7CiAgICAgZmlsZSA9IGdldF9zb3VyY2VmaWxlKHBhdGhuYW1lKTsKICAgICBpZiAoZmlsZSA9PSBOVUxMKQotICAgICAgICBnb3RvIGVycm9yOwotICAgIHBhdGggPSBQeV9CdWlsZFZhbHVlKCJbT10iLCBmaWxlKTsKLSAgICBpZiAocGF0aCA9PSBOVUxMKQotICAgICAgICBnb3RvIGVycm9yOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwYXRoX2xpc3QgPSBQeV9CdWlsZFZhbHVlKCJbT10iLCBmaWxlKTsKKyAgICBpZiAocGF0aF9saXN0ID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKGZpbGUpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZCA9IFB5TW9kdWxlX0dldERpY3QobSk7CiAgICAgZXJyID0gUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIl9fZmlsZV9fIiwgZmlsZSk7CisgICAgUHlfREVDUkVGKGZpbGUpOwogICAgIGlmIChlcnIgPT0gMCkKLSAgICAgICAgZXJyID0gUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIl9fcGF0aF9fIiwgcGF0aCk7Ci0gICAgaWYgKGVyciAhPSAwKQotICAgICAgICBnb3RvIGVycm9yOwotICAgIGJ1ZlswXSA9ICdcMCc7Ci0gICAgZmRwID0gZmluZF9tb2R1bGUobmFtZSwgIl9faW5pdF9fIiwgcGF0aCwgYnVmLCBzaXplb2YoYnVmKSwgJmZwLCBOVUxMKTsKKyAgICAgICAgZXJyID0gUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIl9fcGF0aF9fIiwgcGF0aF9saXN0KTsKKyAgICBpZiAoZXJyICE9IDApIHsKKyAgICAgICAgUHlfREVDUkVGKHBhdGhfbGlzdCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBmZHAgPSBmaW5kX21vZHVsZShuYW1lLCBpbml0c3RyLCBwYXRoX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgJmJ1Zm9iaiwgJmZwLCBOVUxMKTsKKyAgICBQeV9ERUNSRUYocGF0aF9saXN0KTsKICAgICBpZiAoZmRwID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfSW1wb3J0RXJyb3IpKSB7CiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICAgICAgUHlfSU5DUkVGKG0pOworICAgICAgICAgICAgcmV0dXJuIG07CiAgICAgICAgIH0KICAgICAgICAgZWxzZQotICAgICAgICAgICAgbSA9IE5VTEw7Ci0gICAgICAgIGdvdG8gY2xlYW51cDsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBtID0gbG9hZF9tb2R1bGUobmFtZSwgZnAsIGJ1ZiwgZmRwLT50eXBlLCBOVUxMKTsKKyAgICBtID0gbG9hZF9tb2R1bGUobmFtZSwgZnAsIGJ1Zm9iaiwgZmRwLT50eXBlLCBOVUxMKTsKKyAgICBQeV9YREVDUkVGKGJ1Zm9iaik7CiAgICAgaWYgKGZwICE9IE5VTEwpCiAgICAgICAgIGZjbG9zZShmcCk7Ci0gICAgZ290byBjbGVhbnVwOwotCi0gIGVycm9yOgotICAgIG0gPSBOVUxMOwotICBjbGVhbnVwOgotICAgIFB5X1hERUNSRUYocGF0aCk7Ci0gICAgUHlfWERFQ1JFRihmaWxlKTsKICAgICByZXR1cm4gbTsKIH0KIApAQCAtMTQ1MSwxMSArMTY0OCwxMiBAQAogLyogSGVscGVyIHRvIHRlc3QgZm9yIGJ1aWx0LWluIG1vZHVsZSAqLwogCiBzdGF0aWMgaW50Ci1pc19idWlsdGluKGNoYXIgKm5hbWUpCitpc19idWlsdGluKFB5T2JqZWN0ICpuYW1lKQogewotICAgIGludCBpOworICAgIGludCBpLCBjbXA7CiAgICAgZm9yIChpID0gMDsgUHlJbXBvcnRfSW5pdHRhYltpXS5uYW1lICE9IE5VTEw7IGkrKykgewotICAgICAgICBpZiAoc3RyY21wKG5hbWUsIFB5SW1wb3J0X0luaXR0YWJbaV0ubmFtZSkgPT0gMCkgeworICAgICAgICBjbXAgPSBQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhuYW1lLCBQeUltcG9ydF9Jbml0dGFiW2ldLm5hbWUpOworICAgICAgICBpZiAoY21wID09IDApIHsKICAgICAgICAgICAgIGlmIChQeUltcG9ydF9Jbml0dGFiW2ldLmluaXRmdW5jID09IE5VTEwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAgICAgZWxzZQpAQCAtMTU0OSw0NiArMTc0NywzMTQgQEAKICAgIHBhdGhuYW1lIGFuZCBhbiBvcGVuIGZpbGUuICBSZXR1cm4gTlVMTCBpZiB0aGUgbW9kdWxlIGlzIG5vdCBmb3VuZC4gKi8KIAogI2lmZGVmIE1TX0NPUkVETEwKLWV4dGVybiBGSUxFICpQeVdpbl9GaW5kUmVnaXN0ZXJlZE1vZHVsZShjb25zdCBjaGFyICosIHN0cnVjdCBmaWxlZGVzY3IgKiosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqLCBQeV9zc2l6ZV90KTsKK2V4dGVybiBGSUxFICpfUHlXaW5fRmluZFJlZ2lzdGVyZWRNb2R1bGUoUHlPYmplY3QgKiwgc3RydWN0IGZpbGVkZXNjciAqKiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipwX3BhdGgpOwogI2VuZGlmCiAKLXN0YXRpYyBpbnQgY2FzZV9vayhjaGFyICosIFB5X3NzaXplX3QsIFB5X3NzaXplX3QsIGNoYXIgKik7Ci1zdGF0aWMgaW50IGZpbmRfaW5pdF9tb2R1bGUoY2hhciAqKTsgLyogRm9yd2FyZCAqLworLyogRm9yd2FyZCAqLworc3RhdGljIGludCBjYXNlX29rKFB5T2JqZWN0ICosIFB5X3NzaXplX3QsIFB5T2JqZWN0ICopOworc3RhdGljIGludCBmaW5kX2luaXRfbW9kdWxlKFB5T2JqZWN0ICopOwogc3RhdGljIHN0cnVjdCBmaWxlZGVzY3IgaW1wb3J0aG9va2Rlc2NyID0geyIiLCAiIiwgSU1QX0hPT0t9OwogCi1zdGF0aWMgc3RydWN0IGZpbGVkZXNjciAqCi1maW5kX21vZHVsZShjaGFyICpmdWxsbmFtZSwgY2hhciAqc3VibmFtZSwgUHlPYmplY3QgKnBhdGgsIGNoYXIgKmJ1ZiwKLSAgICAgICAgICAgIHNpemVfdCBidWZsZW4sIEZJTEUgKipwX2ZwLCBQeU9iamVjdCAqKnBfbG9hZGVyKQorLyogR2V0IHRoZSBwYXRoIG9mIGEgbW9kdWxlOiBnZXQgaXRzIGltcG9ydGVyIGFuZCBjYWxsIGltcG9ydGVyLmZpbmRfbW9kdWxlKCkKKyAgIGhvb2ssIG9yIGNoZWNrIGlmIHRoZSBtb2R1bGUgaWYgYSBwYWNrYWdlIChpZiBwYXRoL19faW5pdF9fLnB5IGV4aXN0cykuCisKKyAgICAtMTogZXJyb3I6IGEgUHl0aG9uIGVycm9yIG9jY3VycmVkCisgICAgIDA6IGlnbm9yZTogYW4gZXJyb3Igb2NjdXJyZWQgYmVjYXVzZSBvZiBpbnZhbGlkIGRhdGEsIGJ1dCB0aGUgZXJyb3IgaXMgbm90CisgICAgICAgIGltcG9ydGFudCBlbm91Z2ggdG8gYmUgcmVwb3J0ZWQuCisgICAgIDE6IGdldCBwYXRoOiBtb2R1bGUgbm90IGZvdW5kLCBidXQgKmJ1ZiBjb250YWlucyBpdHMgcGF0aAorICAgICAyOiBmb3VuZDogKnBfZmQgaXMgdGhlIGZpbGUgZGVzY3JpcHRvciAoSU1QX0hPT0sgb3IgUEtHX0RJUkVDVE9SWSkKKyAgICAgICAgYW5kICpidWYgaXMgdGhlIHBhdGggKi8KKworc3RhdGljIGludAorZmluZF9tb2R1bGVfcGF0aChQeU9iamVjdCAqZnVsbG5hbWUsIFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqcGF0aCwKKyAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnBhdGhfaG9va3MsIFB5T2JqZWN0ICpwYXRoX2ltcG9ydGVyX2NhY2hlLAorICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnBfcGF0aCwgUHlPYmplY3QgKipwX2xvYWRlciwgc3RydWN0IGZpbGVkZXNjciAqKnBfZmQpCit7CisgICAgUHlPYmplY3QgKnBhdGhfdW5pY29kZSwgKmZpbGVuYW1lID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGxlbiwgcG9zOworICAgIHN0cnVjdCBzdGF0IHN0YXRidWY7CisgICAgc3RhdGljIHN0cnVjdCBmaWxlZGVzY3IgZmRfcGFja2FnZSA9IHsiIiwgIiIsIFBLR19ESVJFQ1RPUll9OworICAgIGludCBlcnIsIHJlc3VsdCwgYWRkc2VwOworCisgICAgaWYgKFB5VW5pY29kZV9DaGVjayhwYXRoKSkgeworICAgICAgICBQeV9JTkNSRUYocGF0aCk7CisgICAgICAgIHBhdGhfdW5pY29kZSA9IHBhdGg7CisgICAgfQorICAgIGVsc2UgaWYgKFB5Qnl0ZXNfQ2hlY2socGF0aCkpIHsKKyAgICAgICAgcGF0aF91bmljb2RlID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUoCisgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgUHlCeXRlc19HRVRfU0laRShwYXRoKSk7CisgICAgICAgIGlmIChwYXRoX3VuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgZWxzZQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocGF0aF91bmljb2RlKSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocGF0aF91bmljb2RlKTsKKyAgICBpZiAoUHlVbmljb2RlX0ZpbmRDaGFyKHBhdGhfdW5pY29kZSwgMCwgMCwgbGVuLCAxKSAhPSAtMSkgeworICAgICAgICByZXN1bHQgPSAwOworICAgICAgICBnb3RvIG91dDsgIC8qIHBhdGggY29udGFpbnMgJ1wwJyAqLworICAgIH0KKworICAgIC8qIHN5cy5wYXRoX2hvb2tzIGltcG9ydCBob29rICovCisgICAgaWYgKHBfbG9hZGVyICE9IE5VTEwpIHsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZmluZF9tb2R1bGUpOworICAgICAgICBQeU9iamVjdCAqaW1wb3J0ZXI7CisKKyAgICAgICAgaW1wb3J0ZXIgPSBnZXRfcGF0aF9pbXBvcnRlcihwYXRoX2ltcG9ydGVyX2NhY2hlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGhfaG9va3MsIHBhdGgpOworICAgICAgICBpZiAoaW1wb3J0ZXIgPT0gTlVMTCkgeworICAgICAgICAgICAgcmVzdWx0ID0gLTE7CisgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgfQorICAgICAgICAvKiBOb3RlOiBpbXBvcnRlciBpcyBhIGJvcnJvd2VkIHJlZmVyZW5jZSAqLworICAgICAgICBpZiAoaW1wb3J0ZXIgIT0gUHlfTm9uZSkgeworICAgICAgICAgICAgUHlPYmplY3QgKmxvYWRlcjsKKyAgICAgICAgICAgIGxvYWRlciA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoaW1wb3J0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZQeUlkX2ZpbmRfbW9kdWxlLCAiTyIsIGZ1bGxuYW1lKTsKKyAgICAgICAgICAgIGlmIChsb2FkZXIgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgIHJlc3VsdCA9IC0xOyAvKiBlcnJvciAqLworICAgICAgICAgICAgICAgIGdvdG8gb3V0OworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGxvYWRlciAhPSBQeV9Ob25lKSB7CisgICAgICAgICAgICAgICAgLyogYSBsb2FkZXIgd2FzIGZvdW5kICovCisgICAgICAgICAgICAgICAgKnBfbG9hZGVyID0gbG9hZGVyOworICAgICAgICAgICAgICAgICpwX2ZkID0gJmltcG9ydGhvb2tkZXNjcjsKKyAgICAgICAgICAgICAgICByZXN1bHQgPSAyOworICAgICAgICAgICAgICAgIGdvdG8gb3V0OworICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlfREVDUkVGKGxvYWRlcik7CisgICAgICAgICAgICByZXN1bHQgPSAwOworICAgICAgICAgICAgZ290byBvdXQ7CisgICAgICAgIH0KKyAgICB9CisgICAgLyogbm8gaG9vayB3YXMgZm91bmQsIHVzZSBidWlsdGluIGltcG9ydCAqLworCisgICAgYWRkc2VwID0gMDsKKyAgICBpZiAobGVuID4gMCAmJiBQeVVuaWNvZGVfUkVBRF9DSEFSKHBhdGhfdW5pY29kZSwgbGVuLTEpICE9IFNFUAorI2lmZGVmIEFMVFNFUAorICAgICAgICAmJiBQeVVuaWNvZGVfUkVBRF9DSEFSKHBhdGhfdW5pY29kZSwgbGVuLTEpICE9IEFMVFNFUAorI2VuZGlmCisgICAgICAgICkKKyAgICAgICAgYWRkc2VwID0gMTsKKyAgICBmaWxlbmFtZSA9IFB5VW5pY29kZV9OZXcobGVuICsgUHlVbmljb2RlX0dFVF9MRU5HVEgobmFtZSkgKyBhZGRzZXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X01BWChQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUocGF0aF91bmljb2RlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShuYW1lKSkpOworICAgIGlmIChmaWxlbmFtZSA9PSBOVUxMKSB7CisgICAgICAgIHJlc3VsdCA9IC0xOworICAgICAgICBnb3RvIG91dDsKKyAgICB9CisgICAgUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzKGZpbGVuYW1lLCAwLCBwYXRoX3VuaWNvZGUsIDAsIGxlbik7CisgICAgcG9zID0gbGVuOworICAgIGlmIChhZGRzZXApCisgICAgICAgIFB5VW5pY29kZV9XUklURShQeVVuaWNvZGVfS0lORChmaWxlbmFtZSksCisgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfREFUQShmaWxlbmFtZSksCisgICAgICAgICAgICAgICAgICAgICAgICBwb3MrKywgU0VQKTsKKyAgICBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMoZmlsZW5hbWUsIHBvcywgbmFtZSwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgobmFtZSkpOworCisgICAgLyogQ2hlY2sgZm9yIHBhY2thZ2UgaW1wb3J0IChidWYgaG9sZHMgYSBkaXJlY3RvcnkgbmFtZSwKKyAgICAgICBhbmQgdGhlcmUncyBhbiBfX2luaXRfXyBtb2R1bGUgaW4gdGhhdCBkaXJlY3RvcnkgKi8KKyNpZmRlZiBIQVZFX1NUQVQKKyAgICBlcnIgPSBfUHlfc3RhdChmaWxlbmFtZSwgJnN0YXRidWYpOworICAgIGlmIChlcnIgPT0gLTIpIHsKKyAgICAgICAgcmVzdWx0ID0gLTE7CisgICAgICAgIGdvdG8gb3V0OworICAgIH0KKyAgICBpZiAoZXJyID09IDAgJiYgICAgICAgICAvKiBpdCBleGlzdHMgKi8KKyAgICAgICAgU19JU0RJUihzdGF0YnVmLnN0X21vZGUpKSAgICAgICAgICAgLyogaXQncyBhIGRpcmVjdG9yeSAqLworICAgIHsKKyAgICAgICAgaW50IG1hdGNoOworCisgICAgICAgIG1hdGNoID0gY2FzZV9vayhmaWxlbmFtZSwgMCwgbmFtZSk7CisgICAgICAgIGlmIChtYXRjaCA8IDApIHsKKyAgICAgICAgICAgIHJlc3VsdCA9IC0xOworICAgICAgICAgICAgZ290byBvdXQ7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG1hdGNoKSB7IC8qIGNhc2UgbWF0Y2hlcyAqLworICAgICAgICAgICAgaWYgKGZpbmRfaW5pdF9tb2R1bGUoZmlsZW5hbWUpKSB7IC8qIGFuZCBoYXMgX19pbml0X18ucHkgKi8KKyAgICAgICAgICAgICAgICAqcF9wYXRoID0gZmlsZW5hbWU7CisgICAgICAgICAgICAgICAgZmlsZW5hbWUgPSBOVUxMOworICAgICAgICAgICAgICAgICpwX2ZkID0gJmZkX3BhY2thZ2U7CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gMjsKKyAgICAgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGludCBlcnI7CisgICAgICAgICAgICAgICAgZXJyID0gUHlFcnJfV2FybkZvcm1hdChQeUV4Y19JbXBvcnRXYXJuaW5nLCAxLAorICAgICAgICAgICAgICAgICAgICAiTm90IGltcG9ydGluZyBkaXJlY3RvcnkgJVI6IG1pc3NpbmcgX19pbml0X18ucHkiLAorICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZSk7CisgICAgICAgICAgICAgICAgaWYgKGVycikgeworICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSAtMTsKKyAgICAgICAgICAgICAgICAgICAgZ290byBvdXQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorI2VuZGlmCisgICAgKnBfcGF0aCA9IGZpbGVuYW1lOworICAgIGZpbGVuYW1lID0gTlVMTDsKKyAgICByZXN1bHQgPSAxOworICBvdXQ6CisgICAgUHlfREVDUkVGKHBhdGhfdW5pY29kZSk7CisgICAgUHlfWERFQ1JFRihmaWxlbmFtZSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworLyogRmluZCBhIG1vZHVsZSBpbiBzZWFyY2hfcGF0aF9saXN0LiBGb3IgZWFjaCBwYXRoLCB0cnkKKyAgIGZpbmRfbW9kdWxlX3BhdGgoKSBvciB0cnkgZWFjaCBfUHlJbXBvcnRfRmlsZXRhYiBzdWZmaXguCisKKyAgIElmIHRoZSBtb2R1bGUgaXMgZm91bmQsIHJldHVybiBhIGZpbGUgZGVzY3JpcHRvciwgd3JpdGUgdGhlIHBhdGggaW4KKyAgICpwX2ZpbGVuYW1lLCB3cml0ZSB0aGUgcG9pbnRlciB0byB0aGUgZmlsZSBvYmplY3QgaW50byAqcF9mcCwgYW5kIChpZgorICAgcF9sb2FkZXIgaXMgbm90IE5VTEwpIHRoZSBsb2FkZXIgaW50byAqcF9sb2FkZXIuCisKKyAgIE90aGVyd2lzZSwgcmFpc2UgYW4gZXhjZXB0aW9uIGFuZCByZXR1cm4gTlVMTC4gKi8KKworc3RhdGljIHN0cnVjdCBmaWxlZGVzY3IqCitmaW5kX21vZHVsZV9wYXRoX2xpc3QoUHlPYmplY3QgKmZ1bGxuYW1lLCBQeU9iamVjdCAqbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqc2VhcmNoX3BhdGhfbGlzdCwgUHlPYmplY3QgKnBhdGhfaG9va3MsCisgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnBhdGhfaW1wb3J0ZXJfY2FjaGUsCisgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipwX3BhdGgsIEZJTEUgKipwX2ZwLCBQeU9iamVjdCAqKnBfbG9hZGVyKQogewogICAgIFB5X3NzaXplX3QgaSwgbnBhdGg7Ci0gICAgc2l6ZV90IGxlbiwgbmFtZWxlbjsKICAgICBzdHJ1Y3QgZmlsZWRlc2NyICpmZHAgPSBOVUxMOwogICAgIGNoYXIgKmZpbGVtb2RlOwogICAgIEZJTEUgKmZwID0gTlVMTDsKLSAgICBQeU9iamVjdCAqcGF0aF9ob29rcywgKnBhdGhfaW1wb3J0ZXJfY2FjaGU7Ci0gICAgc3RydWN0IHN0YXQgc3RhdGJ1ZjsKKyAgICBQeU9iamVjdCAqcHJlZml4LCAqZmlsZW5hbWU7CisgICAgaW50IG1hdGNoOworICAgIGludCBlcnI7CisKKyAgICBucGF0aCA9IFB5TGlzdF9TaXplKHNlYXJjaF9wYXRoX2xpc3QpOworICAgIGZvciAoaSA9IDA7IGkgPCBucGF0aDsgaSsrKSB7CisgICAgICAgIFB5T2JqZWN0ICpwYXRoOworICAgICAgICBpbnQgb2s7CisKKyAgICAgICAgcGF0aCA9IFB5TGlzdF9HZXRJdGVtKHNlYXJjaF9wYXRoX2xpc3QsIGkpOworICAgICAgICBpZiAocGF0aCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAgICAgcHJlZml4ID0gTlVMTDsKKyAgICAgICAgb2sgPSBmaW5kX21vZHVsZV9wYXRoKGZ1bGxuYW1lLCBuYW1lLCBwYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aF9ob29rcywgcGF0aF9pbXBvcnRlcl9jYWNoZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcmVmaXgsIHBfbG9hZGVyLCAmZmRwKTsKKyAgICAgICAgaWYgKG9rIDwgMCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBpZiAob2sgPT0gMCkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBpZiAob2sgPT0gMikgeworICAgICAgICAgICAgKnBfcGF0aCA9IHByZWZpeDsKKyAgICAgICAgICAgIHJldHVybiBmZHA7CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGZkcCA9IF9QeUltcG9ydF9GaWxldGFiOyBmZHAtPnN1ZmZpeCAhPSBOVUxMOyBmZHArKykgeworICAgICAgICAgICAgc3RydWN0IHN0YXQgc3RhdGJ1ZjsKKworICAgICAgICAgICAgZmlsZW1vZGUgPSBmZHAtPm1vZGU7CisgICAgICAgICAgICBpZiAoZmlsZW1vZGVbMF0gPT0gJ1UnKQorICAgICAgICAgICAgICAgIGZpbGVtb2RlID0gInIiIFBZX1NURElPVEVYVE1PREU7CisKKyAgICAgICAgICAgIGZpbGVuYW1lID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVJXMiLCBwcmVmaXgsIGZkcC0+c3VmZml4KTsKKyAgICAgICAgICAgIGlmIChmaWxlbmFtZSA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHByZWZpeCk7CisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZyA+IDEpCisgICAgICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjIHRyeWluZyAlUlxuIiwgZmlsZW5hbWUpOworCisgICAgICAgICAgICBlcnIgPSBfUHlfc3RhdChmaWxlbmFtZSwgJnN0YXRidWYpOworICAgICAgICAgICAgaWYgKGVyciA9PSAtMikgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihwcmVmaXgpOworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoZXJyICE9IDAgfHwgU19JU0RJUihzdGF0YnVmLnN0X21vZGUpKSB7CisgICAgICAgICAgICAgICAgLyogaXQgZG9lc24ndCBleGlzdCwgb3IgaXQncyBhIGRpcmVjdG9yeSAqLworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZwID0gX1B5X2ZvcGVuKGZpbGVuYW1lLCBmaWxlbW9kZSk7CisgICAgICAgICAgICBpZiAoZnAgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CisgICAgICAgICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHByZWZpeCk7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIG1hdGNoID0gY2FzZV9vayhmaWxlbmFtZSwgLShQeV9zc2l6ZV90KXN0cmxlbihmZHAtPnN1ZmZpeCksIG5hbWUpOworICAgICAgICAgICAgaWYgKG1hdGNoIDwgMCkgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihwcmVmaXgpOworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAobWF0Y2gpIHsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYocHJlZml4KTsKKyAgICAgICAgICAgICAgICAqcF9wYXRoID0gZmlsZW5hbWU7CisgICAgICAgICAgICAgICAgKnBfZnAgPSBmcDsKKyAgICAgICAgICAgICAgICByZXR1cm4gZmRwOworICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKworICAgICAgICAgICAgZmNsb3NlKGZwKTsKKyAgICAgICAgICAgIGZwID0gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYocHJlZml4KTsKKyAgICB9CisgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAorICAgICAgICAgICAgICAgICAiTm8gbW9kdWxlIG5hbWVkICVSIiwgbmFtZSk7CisgICAgcmV0dXJuIE5VTEw7Cit9CisKKy8qIEZpbmQgYSBtb2R1bGU6CisKKyAgIC0gdHJ5IGZpbmRfbW9kdWxlKCkgb2YgZWFjaCBzeXMubWV0YV9wYXRoIGhvb2sKKyAgIC0gdHJ5IGZpbmRfZnJvemVuKCkKKyAgIC0gdHJ5IGlzX2J1aWx0aW4oKQorICAgLSB0cnkgX1B5V2luX0ZpbmRSZWdpc3RlcmVkTW9kdWxlKCkgKFdpbmRvd3Mgb25seSkKKyAgIC0gb3RoZXJ3aXNlLCBjYWxsIGZpbmRfbW9kdWxlX3BhdGhfbGlzdCgpIHdpdGggc2VhcmNoX3BhdGhfbGlzdCAoaWYgbm90CisgICAgIE5VTEwpIG9yIHN5cy5wYXRoCisKKyAgIGZ1bGxuYW1lIGNhbiBiZSBOVUxMLCBidXQgb25seSBpZiBwX2xvYWRlciBpcyBOVUxMLgorCisgICBSZXR1cm46CisKKyAgIC0gJmZkX2J1aWx0aW4gKENfQlVJTFRJTikgaWYgaXQgaXMgYSBidWlsdGluCisgICAtICZmZF9mcm96ZW4gKFBZX0ZST1pFTikgaWYgaXQgaXMgZnJvemVuCisgICAtICZmZF9wYWNrYWdlIChQS0dfRElSRUNUT1JZKSBhbmQgd3JpdGUgdGhlIGZpbGVuYW1lIGludG8gKnBfcGF0aAorICAgICBpZiBpdCBpcyBhIHBhY2thZ2UKKyAgIC0gJmltcG9ydGhvb2tkZXNjciAoSU1QX0hPT0spIGFuZCB3cml0ZSB0aGUgbG9hZGVyIGludG8gKnBfbG9hZGVyIGlmIGEKKyAgICAgaW1wb3J0ZXIgbG9hZGVyIHdhcyBmb3VuZAorICAgLSBhIGZpbGUgZGVzY3JpcHRvciAoUFlfU09VUkNFLCBQWV9DT01QSUxFRCwgQ19FWFRFTlNJT04sIFBZX1JFU09VUkNFIG9yCisgICAgIFBZX0NPREVSRVNPVVJDRTogc2VlIF9QeUltcG9ydF9GaWxldGFiKSwgd3JpdGUgdGhlIGZpbGVuYW1lIGludG8KKyAgICAgKnBfcGF0aCBhbmQgdGhlIHBvaW50ZXIgdG8gdGhlIG9wZW4gZmlsZSBpbnRvICpwX2ZwCisgICAtIE5VTEwgb24gZXJyb3IKKworICAgQnkgZGVmYXVsdCwgKnBfcGF0aCwgKnBfZnAgYW5kICpwX2xvYWRlciAoaWYgc2V0KSBhcmUgc2V0IHRvIE5VTEwuCisgICBFZy4gKnBfcGF0aCBpcyBzZXQgdG8gTlVMTCBmb3IgYSBidWlsdGluIHBhY2thZ2UuCisqLworCitzdGF0aWMgc3RydWN0IGZpbGVkZXNjciAqCitmaW5kX21vZHVsZShQeU9iamVjdCAqZnVsbG5hbWUsIFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqc2VhcmNoX3BhdGhfbGlzdCwKKyAgICAgICAgICAgIFB5T2JqZWN0ICoqcF9wYXRoLCBGSUxFICoqcF9mcCwgUHlPYmplY3QgKipwX2xvYWRlcikKK3sKKyAgICBQeV9zc2l6ZV90IGksIG5wYXRoOwogICAgIHN0YXRpYyBzdHJ1Y3QgZmlsZWRlc2NyIGZkX2Zyb3plbiA9IHsiIiwgIiIsIFBZX0ZST1pFTn07CiAgICAgc3RhdGljIHN0cnVjdCBmaWxlZGVzY3IgZmRfYnVpbHRpbiA9IHsiIiwgIiIsIENfQlVJTFRJTn07Ci0gICAgc3RhdGljIHN0cnVjdCBmaWxlZGVzY3IgZmRfcGFja2FnZSA9IHsiIiwgIiIsIFBLR19ESVJFQ1RPUll9OwotICAgIGNoYXIgbmFtZVtNQVhQQVRITEVOKzFdOwotI2lmIGRlZmluZWQoUFlPU19PUzIpCi0gICAgc2l6ZV90IHNhdmVkX2xlbjsKLSAgICBzaXplX3Qgc2F2ZWRfbmFtZWxlbjsKLSAgICBjaGFyICpzYXZlZF9idWYgPSBOVUxMOwotI2VuZGlmCisgICAgUHlPYmplY3QgKnBhdGhfaG9va3MsICpwYXRoX2ltcG9ydGVyX2NhY2hlOworCisgICAgKnBfcGF0aCA9IE5VTEw7CisgICAgKnBfZnAgPSBOVUxMOwogICAgIGlmIChwX2xvYWRlciAhPSBOVUxMKQogICAgICAgICAqcF9sb2FkZXIgPSBOVUxMOwogCi0gICAgaWYgKHN0cmxlbihzdWJuYW1lKSA+IE1BWFBBVEhMRU4pIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAibW9kdWxlIG5hbWUgaXMgdG9vIGxvbmciKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIHN0cmNweShuYW1lLCBzdWJuYW1lKTsKLQogICAgIC8qIHN5cy5tZXRhX3BhdGggaW1wb3J0IGhvb2sgKi8KICAgICBpZiAocF9sb2FkZXIgIT0gTlVMTCkgeworICAgICAgICBfUHlfSURFTlRJRklFUihmaW5kX21vZHVsZSk7CiAgICAgICAgIFB5T2JqZWN0ICptZXRhX3BhdGg7CiAKICAgICAgICAgbWV0YV9wYXRoID0gUHlTeXNfR2V0T2JqZWN0KCJtZXRhX3BhdGgiKTsKQEAgLTE2MDMsMTAgKzIwNjksMTAgQEAKICAgICAgICAgZm9yIChpID0gMDsgaSA8IG5wYXRoOyBpKyspIHsKICAgICAgICAgICAgIFB5T2JqZWN0ICpsb2FkZXI7CiAgICAgICAgICAgICBQeU9iamVjdCAqaG9vayA9IFB5TGlzdF9HZXRJdGVtKG1ldGFfcGF0aCwgaSk7Ci0gICAgICAgICAgICBsb2FkZXIgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGhvb2ssICJmaW5kX21vZHVsZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzTyIsIGZ1bGxuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoICE9IE5VTEwgPwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoIDogUHlfTm9uZSk7CisgICAgICAgICAgICBsb2FkZXIgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGhvb2ssICZQeUlkX2ZpbmRfbW9kdWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT08iLCBmdWxsbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNoX3BhdGhfbGlzdCAhPSBOVUxMID8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNoX3BhdGhfbGlzdCA6IFB5X05vbmUpOwogICAgICAgICAgICAgaWYgKGxvYWRlciA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKG1ldGFfcGF0aCk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7ICAvKiB0cnVlIGVycm9yICovCkBAIC0xNjIyLDI3ICsyMDg4LDI5IEBACiAgICAgICAgIFB5X0RFQ1JFRihtZXRhX3BhdGgpOwogICAgIH0KIAotICAgIGlmIChmaW5kX2Zyb3plbihmdWxsbmFtZSkgIT0gTlVMTCkgewotICAgICAgICBzdHJjcHkoYnVmLCBmdWxsbmFtZSk7CisgICAgaWYgKGZpbmRfZnJvemVuKGZ1bGxuYW1lKSAhPSBOVUxMKQogICAgICAgICByZXR1cm4gJmZkX2Zyb3plbjsKLSAgICB9CiAKLSAgICBpZiAocGF0aCA9PSBOVUxMKSB7Ci0gICAgICAgIGlmIChpc19idWlsdGluKG5hbWUpKSB7Ci0gICAgICAgICAgICBzdHJjcHkoYnVmLCBuYW1lKTsKLSAgICAgICAgICAgIHJldHVybiAmZmRfYnVpbHRpbjsKLSAgICAgICAgfQorICAgIGlmIChzZWFyY2hfcGF0aF9saXN0ID09IE5VTEwpIHsKICNpZmRlZiBNU19DT1JFRExMCi0gICAgICAgIGZwID0gUHlXaW5fRmluZFJlZ2lzdGVyZWRNb2R1bGUobmFtZSwgJmZkcCwgYnVmLCBidWZsZW4pOworICAgICAgICBGSUxFICpmcDsKKyAgICAgICAgc3RydWN0IGZpbGVkZXNjciAqZmRwOworI2VuZGlmCisgICAgICAgIGlmIChpc19idWlsdGluKG5hbWUpKQorICAgICAgICAgICAgcmV0dXJuICZmZF9idWlsdGluOworI2lmZGVmIE1TX0NPUkVETEwKKyAgICAgICAgZnAgPSBfUHlXaW5fRmluZFJlZ2lzdGVyZWRNb2R1bGUobmFtZSwgJmZkcCwgcF9wYXRoKTsKICAgICAgICAgaWYgKGZwICE9IE5VTEwpIHsKICAgICAgICAgICAgICpwX2ZwID0gZnA7CiAgICAgICAgICAgICByZXR1cm4gZmRwOwogICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICNlbmRpZgotICAgICAgICBwYXRoID0gUHlTeXNfR2V0T2JqZWN0KCJwYXRoIik7CisgICAgICAgIHNlYXJjaF9wYXRoX2xpc3QgPSBQeVN5c19HZXRPYmplY3QoInBhdGgiKTsKICAgICB9CiAKLSAgICBpZiAocGF0aCA9PSBOVUxMIHx8ICFQeUxpc3RfQ2hlY2socGF0aCkpIHsKKyAgICBpZiAoc2VhcmNoX3BhdGhfbGlzdCA9PSBOVUxMIHx8ICFQeUxpc3RfQ2hlY2soc2VhcmNoX3BhdGhfbGlzdCkpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJzeXMucGF0aCBtdXN0IGJlIGEgbGlzdCBvZiBkaXJlY3RvcnkgbmFtZXMiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xNjYzLDE4MyArMjEzMSwxMyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBucGF0aCA9IFB5TGlzdF9TaXplKHBhdGgpOwotICAgIG5hbWVsZW4gPSBzdHJsZW4obmFtZSk7Ci0gICAgZm9yIChpID0gMDsgaSA8IG5wYXRoOyBpKyspIHsKLSAgICAgICAgUHlPYmplY3QgKnYgPSBQeUxpc3RfR2V0SXRlbShwYXRoLCBpKTsKLSAgICAgICAgUHlPYmplY3QgKm9yaWd2ID0gdjsKLSAgICAgICAgY29uc3QgY2hhciAqYmFzZTsKLSAgICAgICAgUHlfc3NpemVfdCBzaXplOwotICAgICAgICBpZiAoIXYpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgaWYgKFB5VW5pY29kZV9DaGVjayh2KSkgewotICAgICAgICAgICAgdiA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQodik7Ci0gICAgICAgICAgICBpZiAodiA9PSBOVUxMKQotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIGVsc2UgaWYgKCFQeUJ5dGVzX0NoZWNrKHYpKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIFB5X0lOQ1JFRih2KTsKLQotICAgICAgICBiYXNlID0gUHlCeXRlc19BU19TVFJJTkcodik7Ci0gICAgICAgIHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKHYpOwotICAgICAgICBsZW4gPSBzaXplOwotICAgICAgICBpZiAobGVuICsgMiArIG5hbWVsZW4gKyBNQVhTVUZGSVhTSVpFID49IGJ1ZmxlbikgewotICAgICAgICAgICAgUHlfREVDUkVGKHYpOwotICAgICAgICAgICAgY29udGludWU7IC8qIFRvbyBsb25nICovCi0gICAgICAgIH0KLSAgICAgICAgc3RyY3B5KGJ1ZiwgYmFzZSk7Ci0gICAgICAgIFB5X0RFQ1JFRih2KTsKLQotICAgICAgICBpZiAoc3RybGVuKGJ1ZikgIT0gbGVuKSB7Ci0gICAgICAgICAgICBjb250aW51ZTsgLyogdiBjb250YWlucyAnXDAnICovCi0gICAgICAgIH0KLQotICAgICAgICAvKiBzeXMucGF0aF9ob29rcyBpbXBvcnQgaG9vayAqLwotICAgICAgICBpZiAocF9sb2FkZXIgIT0gTlVMTCkgewotICAgICAgICAgICAgUHlPYmplY3QgKmltcG9ydGVyOwotCi0gICAgICAgICAgICBpbXBvcnRlciA9IGdldF9wYXRoX2ltcG9ydGVyKHBhdGhfaW1wb3J0ZXJfY2FjaGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGhfaG9va3MsIG9yaWd2KTsKLSAgICAgICAgICAgIGlmIChpbXBvcnRlciA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAvKiBOb3RlOiBpbXBvcnRlciBpcyBhIGJvcnJvd2VkIHJlZmVyZW5jZSAqLwotICAgICAgICAgICAgaWYgKGltcG9ydGVyICE9IFB5X05vbmUpIHsKLSAgICAgICAgICAgICAgICBQeU9iamVjdCAqbG9hZGVyOwotICAgICAgICAgICAgICAgIGxvYWRlciA9IFB5T2JqZWN0X0NhbGxNZXRob2QoaW1wb3J0ZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZmluZF9tb2R1bGUiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiLCBmdWxsbmFtZSk7Ci0gICAgICAgICAgICAgICAgaWYgKGxvYWRlciA9PSBOVUxMKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsgIC8qIGVycm9yICovCi0gICAgICAgICAgICAgICAgaWYgKGxvYWRlciAhPSBQeV9Ob25lKSB7Ci0gICAgICAgICAgICAgICAgICAgIC8qIGEgbG9hZGVyIHdhcyBmb3VuZCAqLwotICAgICAgICAgICAgICAgICAgICAqcF9sb2FkZXIgPSBsb2FkZXI7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiAmaW1wb3J0aG9va2Rlc2NyOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBQeV9ERUNSRUYobG9hZGVyKTsKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICAvKiBubyBob29rIHdhcyBmb3VuZCwgdXNlIGJ1aWx0aW4gaW1wb3J0ICovCi0KLSAgICAgICAgaWYgKGxlbiA+IDAgJiYgYnVmW2xlbi0xXSAhPSBTRVAKLSNpZmRlZiBBTFRTRVAKLSAgICAgICAgICAgICYmIGJ1ZltsZW4tMV0gIT0gQUxUU0VQCi0jZW5kaWYKLSAgICAgICAgICAgICkKLSAgICAgICAgICAgIGJ1ZltsZW4rK10gPSBTRVA7Ci0gICAgICAgIHN0cmNweShidWYrbGVuLCBuYW1lKTsKLSAgICAgICAgbGVuICs9IG5hbWVsZW47Ci0KLSAgICAgICAgLyogQ2hlY2sgZm9yIHBhY2thZ2UgaW1wb3J0IChidWYgaG9sZHMgYSBkaXJlY3RvcnkgbmFtZSwKLSAgICAgICAgICAgYW5kIHRoZXJlJ3MgYW4gX19pbml0X18gbW9kdWxlIGluIHRoYXQgZGlyZWN0b3J5ICovCi0jaWZkZWYgSEFWRV9TVEFUCi0gICAgICAgIGlmIChzdGF0KGJ1ZiwgJnN0YXRidWYpID09IDAgJiYgICAgICAgICAvKiBpdCBleGlzdHMgKi8KLSAgICAgICAgICAgIFNfSVNESVIoc3RhdGJ1Zi5zdF9tb2RlKSAmJiAgICAgICAgIC8qIGl0J3MgYSBkaXJlY3RvcnkgKi8KLSAgICAgICAgICAgIGNhc2Vfb2soYnVmLCBsZW4sIG5hbWVsZW4sIG5hbWUpKSB7IC8qIGNhc2UgbWF0Y2hlcyAqLwotICAgICAgICAgICAgaWYgKGZpbmRfaW5pdF9tb2R1bGUoYnVmKSkgeyAvKiBhbmQgaGFzIF9faW5pdF9fLnB5ICovCi0gICAgICAgICAgICAgICAgcmV0dXJuICZmZF9wYWNrYWdlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgaW50IGVycjsKLSAgICAgICAgICAgICAgICBQeU9iamVjdCAqdW5pY29kZSA9IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQoYnVmKTsKLSAgICAgICAgICAgICAgICBpZiAodW5pY29kZSA9PSBOVUxMKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgICAgICBlcnIgPSBQeUVycl9XYXJuRm9ybWF0KFB5RXhjX0ltcG9ydFdhcm5pbmcsIDEsCi0gICAgICAgICAgICAgICAgICAgICJOb3QgaW1wb3J0aW5nIGRpcmVjdG9yeSAnJVUnOiBtaXNzaW5nIF9faW5pdF9fLnB5IiwKLSAgICAgICAgICAgICAgICAgICAgdW5pY29kZSk7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKHVuaWNvZGUpOwotICAgICAgICAgICAgICAgIGlmIChlcnIpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0jZW5kaWYKLSNpZiBkZWZpbmVkKFBZT1NfT1MyKQotICAgICAgICAvKiB0YWtlIGEgc25hcHNob3Qgb2YgdGhlIG1vZHVsZSBzcGVjIGZvciByZXN0b3JhdGlvbgotICAgICAgICAgKiBhZnRlciB0aGUgOCBjaGFyYWN0ZXIgRExMIGhhY2tlcnkKLSAgICAgICAgICovCi0gICAgICAgIHNhdmVkX2J1ZiA9IHN0cmR1cChidWYpOwotICAgICAgICBzYXZlZF9sZW4gPSBsZW47Ci0gICAgICAgIHNhdmVkX25hbWVsZW4gPSBuYW1lbGVuOwotI2VuZGlmIC8qIFBZT1NfT1MyICovCi0gICAgICAgIGZvciAoZmRwID0gX1B5SW1wb3J0X0ZpbGV0YWI7IGZkcC0+c3VmZml4ICE9IE5VTEw7IGZkcCsrKSB7Ci0gICAgICAgICAgICBzdHJ1Y3Qgc3RhdCBzdGF0YnVmOwotI2lmIGRlZmluZWQoUFlPU19PUzIpICYmIGRlZmluZWQoSEFWRV9EWU5BTUlDX0xPQURJTkcpCi0gICAgICAgICAgICAvKiBPUy8yIGxpbWl0cyBETExzIHRvIDggY2hhcmFjdGVyIG5hbWVzICh3L28KLSAgICAgICAgICAgICAgIGV4dGVuc2lvbikKLSAgICAgICAgICAgICAqIHNvIGlmIHRoZSBuYW1lIGlzIGxvbmdlciB0aGFuIHRoYXQgYW5kIGl0cyBhCi0gICAgICAgICAgICAgKiBkeW5hbWljYWxseSBsb2FkZWQgbW9kdWxlIHdlJ3JlIGdvaW5nIHRvIHRyeSwKLSAgICAgICAgICAgICAqIHRydW5jYXRlIHRoZSBuYW1lIGJlZm9yZSB0cnlpbmcKLSAgICAgICAgICAgICAqLwotICAgICAgICAgICAgaWYgKHN0cmxlbihzdWJuYW1lKSA+IDgpIHsKLSAgICAgICAgICAgICAgICAvKiBpcyB0aGlzIGFuIGF0dGVtcHQgdG8gbG9hZCBhIEMgZXh0ZW5zaW9uPyAqLwotICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBmaWxlZGVzY3IgKnNjYW47Ci0gICAgICAgICAgICAgICAgc2NhbiA9IF9QeUltcG9ydF9EeW5Mb2FkRmlsZXRhYjsKLSAgICAgICAgICAgICAgICB3aGlsZSAoc2Nhbi0+c3VmZml4ICE9IE5VTEwpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCFzdHJjbXAoc2Nhbi0+c3VmZml4LCBmZHAtPnN1ZmZpeCkpCi0gICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgc2NhbisrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoc2Nhbi0+c3VmZml4ICE9IE5VTEwpIHsKLSAgICAgICAgICAgICAgICAgICAgLyogeWVzLCBzbyB0cnVuY2F0ZSB0aGUgbmFtZSAqLwotICAgICAgICAgICAgICAgICAgICBuYW1lbGVuID0gODsKLSAgICAgICAgICAgICAgICAgICAgbGVuIC09IHN0cmxlbihzdWJuYW1lKSAtIG5hbWVsZW47Ci0gICAgICAgICAgICAgICAgICAgIGJ1ZltsZW5dID0gJ1wwJzsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0jZW5kaWYgLyogUFlPU19PUzIgKi8KLSAgICAgICAgICAgIHN0cmNweShidWYrbGVuLCBmZHAtPnN1ZmZpeCk7Ci0gICAgICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcgPiAxKQotICAgICAgICAgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCIjIHRyeWluZyAlc1xuIiwgYnVmKTsKLQotICAgICAgICAgICAgZmlsZW1vZGUgPSBmZHAtPm1vZGU7Ci0gICAgICAgICAgICBpZiAoZmlsZW1vZGVbMF0gPT0gJ1UnKQotICAgICAgICAgICAgICAgIGZpbGVtb2RlID0gInIiIFBZX1NURElPVEVYVE1PREU7Ci0KLSAgICAgICAgICAgIGlmIChzdGF0KGJ1ZiwgJnN0YXRidWYpID09IDAgJiYgU19JU0RJUihzdGF0YnVmLnN0X21vZGUpKQotICAgICAgICAgICAgICAgIC8qIGl0J3MgYSBkaXJlY3RvcnkgKi8KLSAgICAgICAgICAgICAgICBmcCA9IE5VTEw7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgZnAgPSBmb3BlbihidWYsIGZpbGVtb2RlKTsKLSAgICAgICAgICAgIGlmIChmcCAhPSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgaWYgKGNhc2Vfb2soYnVmLCBsZW4sIG5hbWVsZW4sIG5hbWUpKQotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICBlbHNlIHsgICAgICAgICAgICAgICAgICAgLyogY29udGludWUgc2VhcmNoICovCi0gICAgICAgICAgICAgICAgICAgIGZjbG9zZShmcCk7Ci0gICAgICAgICAgICAgICAgICAgIGZwID0gTlVMTDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0jaWYgZGVmaW5lZChQWU9TX09TMikKLSAgICAgICAgICAgIC8qIHJlc3RvcmUgdGhlIHNhdmVkIHNuYXBzaG90ICovCi0gICAgICAgICAgICBzdHJjcHkoYnVmLCBzYXZlZF9idWYpOwotICAgICAgICAgICAgbGVuID0gc2F2ZWRfbGVuOwotICAgICAgICAgICAgbmFtZWxlbiA9IHNhdmVkX25hbWVsZW47Ci0jZW5kaWYKLSAgICAgICAgfQotI2lmIGRlZmluZWQoUFlPU19PUzIpCi0gICAgICAgIC8qIGRvbid0IG5lZWQvd2FudCB0aGUgbW9kdWxlIG5hbWUgc25hcHNob3QgYW55bW9yZSAqLwotICAgICAgICBpZiAoc2F2ZWRfYnVmKQotICAgICAgICB7Ci0gICAgICAgICAgICBmcmVlKHNhdmVkX2J1Zik7Ci0gICAgICAgICAgICBzYXZlZF9idWYgPSBOVUxMOwotICAgICAgICB9Ci0jZW5kaWYKLSAgICAgICAgaWYgKGZwICE9IE5VTEwpCi0gICAgICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgaWYgKGZwID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIk5vIG1vZHVsZSBuYW1lZCAlLjIwMHMiLCBuYW1lKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgICpwX2ZwID0gZnA7Ci0gICAgcmV0dXJuIGZkcDsKKyAgICByZXR1cm4gZmluZF9tb2R1bGVfcGF0aF9saXN0KGZ1bGxuYW1lLCBuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNoX3BhdGhfbGlzdCwgcGF0aF9ob29rcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGhfaW1wb3J0ZXJfY2FjaGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwX3BhdGgsIHBfZnAsIHBfbG9hZGVyKTsKIH0KIAotLyogY2FzZV9vayhjaGFyKiBidWYsIFB5X3NzaXplX3QgbGVuLCBQeV9zc2l6ZV90IG5hbWVsZW4sIGNoYXIqIG5hbWUpCisvKiBjYXNlX2J5dGVzKGNoYXIqIGJ1ZiwgUHlfc3NpemVfdCBsZW4sIFB5X3NzaXplX3QgbmFtZWxlbiwgY2hhciogbmFtZSkKICAqIFRoZSBhcmd1bWVudHMgaGVyZSBhcmUgdHJpY2t5LCBiZXN0IHNob3duIGJ5IGV4YW1wbGU6CiAgKiAgICAvYS9iL2MvZC9lL2YvZy9oL2kvai9rL3NvbWVfbG9uZ19tb2R1bGVfbmFtZS5weVwwCiAgKiAgICBeICAgICAgICAgICAgICAgICAgICAgIF4gICAgICAgICAgICAgICAgICAgXiAgICBeCkBAIC0xODUzLDE4ICsyMTUxLDE4IEBACiAgKiBXZSd2ZSBhbHJlYWR5IGRvbmUgYSBzdWNjZXNzZnVsIHN0YXQoKSBvciBmb3BlbigpIG9uIGJ1Ziwgc28ga25vdyB0aGF0CiAgKiB0aGVyZSdzIHNvbWUgbWF0Y2gsIHBvc3NpYmx5IGNhc2UtaW5zZW5zaXRpdmUuCiAgKgotICogY2FzZV9vaygpIGlzIHRvIHJldHVybiAxIGlmIHRoZXJlJ3MgYSBjYXNlLXNlbnNpdGl2ZSBtYXRjaCBmb3IKLSAqIG5hbWUsIGVsc2UgMC4gIGNhc2Vfb2soKSBpcyBhbHNvIHRvIHJldHVybiAxIGlmIGVudmFyIFBZVEhPTkNBU0VPSworICogY2FzZV9ieXRlcygpIGlzIHRvIHJldHVybiAxIGlmIHRoZXJlJ3MgYSBjYXNlLXNlbnNpdGl2ZSBtYXRjaCBmb3IKKyAqIG5hbWUsIGVsc2UgMC4gIGNhc2VfYnl0ZXMoKSBpcyBhbHNvIHRvIHJldHVybiAxIGlmIGVudmFyIFBZVEhPTkNBU0VPSwogICogZXhpc3RzLgogICoKLSAqIGNhc2Vfb2soKSBpcyB1c2VkIHRvIGltcGxlbWVudCBjYXNlLXNlbnNpdGl2ZSBpbXBvcnQgc2VtYW50aWNzIGV2ZW4KKyAqIGNhc2VfYnl0ZXMoKSBpcyB1c2VkIHRvIGltcGxlbWVudCBjYXNlLXNlbnNpdGl2ZSBpbXBvcnQgc2VtYW50aWNzIGV2ZW4KICAqIG9uIHBsYXRmb3JtcyB3aXRoIGNhc2UtaW5zZW5zaXRpdmUgZmlsZXN5c3RlbXMuICBJdCdzIHRyaXZpYWwgdG8gaW1wbGVtZW50CiAgKiBmb3IgY2FzZS1zZW5zaXRpdmUgZmlsZXN5c3RlbXMuICBJdCdzIHByZXR0eSBtdWNoIGEgY3Jvc3MtcGxhdGZvcm0KICAqIG5pZ2h0bWFyZSBmb3Igc3lzdGVtcyB3aXRoIGNhc2UtaW5zZW5zaXRpdmUgZmlsZXN5c3RlbXMuCiAgKi8KIAogLyogRmlyc3Qgd2UgbWF5IG5lZWQgYSBwaWxlIG9mIHBsYXRmb3JtLXNwZWNpZmljIGhlYWRlciBmaWxlczsgdGhlIHNlcXVlbmNlCi0gKiBvZiAjaWYncyBoZXJlIHNob3VsZCBtYXRjaCB0aGUgc2VxdWVuY2UgaW4gdGhlIGJvZHkgb2YgY2FzZV9vaygpLgorICogb2YgI2lmJ3MgaGVyZSBzaG91bGQgbWF0Y2ggdGhlIHNlcXVlbmNlIGluIHRoZSBib2R5IG9mIGNhc2VfYnl0ZXMoKS4KICAqLwogI2lmIGRlZmluZWQoTVNfV0lORE9XUykKICNpbmNsdWRlIDx3aW5kb3dzLmg+CkBAIC0xODgzLDMzICsyMTgxLDI0IEBACiAjaW5jbHVkZSA8b3MyLmg+CiAjZW5kaWYKIAorI2lmIGRlZmluZWQoREpHUFApIFwKKyAgICB8fCAoKGRlZmluZWQoX19NQUNIX18pICYmIGRlZmluZWQoX19BUFBMRV9fKSB8fCBkZWZpbmVkKF9fQ1lHV0lOX18pKSBcCisgICAgICAgICYmIGRlZmluZWQoSEFWRV9ESVJFTlRfSCkpIFwKKyAgICB8fCBkZWZpbmVkKFBZT1NfT1MyKQorIyAgZGVmaW5lIFVTRV9DQVNFX09LX0JZVEVTCisjZW5kaWYKKworCisjaWZkZWYgVVNFX0NBU0VfT0tfQllURVMKIHN0YXRpYyBpbnQKLWNhc2Vfb2soY2hhciAqYnVmLCBQeV9zc2l6ZV90IGxlbiwgUHlfc3NpemVfdCBuYW1lbGVuLCBjaGFyICpuYW1lKQorY2FzZV9ieXRlcyhjaGFyICpidWYsIFB5X3NzaXplX3QgbGVuLCBQeV9zc2l6ZV90IG5hbWVsZW4sIGNvbnN0IGNoYXIgKm5hbWUpCiB7CiAvKiBQaWNrIGEgcGxhdGZvcm0tc3BlY2lmaWMgaW1wbGVtZW50YXRpb247IHRoZSBzZXF1ZW5jZSBvZiAjaWYncyBoZXJlIHNob3VsZAogICogbWF0Y2ggdGhlIHNlcXVlbmNlIGp1c3QgYWJvdmUuCiAgKi8KIAotLyogTVNfV0lORE9XUyAqLwotI2lmIGRlZmluZWQoTVNfV0lORE9XUykKLSAgICBXSU4zMl9GSU5EX0RBVEEgZGF0YTsKLSAgICBIQU5ETEUgaDsKLQotICAgIGlmIChQeV9HRVRFTlYoIlBZVEhPTkNBU0VPSyIpICE9IE5VTEwpCi0gICAgICAgIHJldHVybiAxOwotCi0gICAgaCA9IEZpbmRGaXJzdEZpbGUoYnVmLCAmZGF0YSk7Ci0gICAgaWYgKGggPT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX05hbWVFcnJvciwKLSAgICAgICAgICAiQ2FuJ3QgZmluZCBmaWxlIGZvciBtb2R1bGUgJS4xMDBzXG4oZmlsZW5hbWUgJS4zMDBzKSIsCi0gICAgICAgICAgbmFtZSwgYnVmKTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIEZpbmRDbG9zZShoKTsKLSAgICByZXR1cm4gc3RybmNtcChkYXRhLmNGaWxlTmFtZSwgbmFtZSwgbmFtZWxlbikgPT0gMDsKLQogLyogREpHUFAgKi8KLSNlbGlmIGRlZmluZWQoREpHUFApCisjaWYgZGVmaW5lZChESkdQUCkKICAgICBzdHJ1Y3QgZmZibGsgZmZibGs7CiAgICAgaW50IGRvbmU7CiAKQEAgLTE5MjEsNyArMjIxMCw3IEBACiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19OYW1lRXJyb3IsCiAgICAgICAgICAgIkNhbid0IGZpbmQgZmlsZSBmb3IgbW9kdWxlICUuMTAwc1xuKGZpbGVuYW1lICUuMzAwcykiLAogICAgICAgICAgIG5hbWUsIGJ1Zik7Ci0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIHJldHVybiBzdHJuY21wKGZmYmxrLmZmX25hbWUsIG5hbWUsIG5hbWVsZW4pID09IDA7CiAKQEAgLTE5ODgsNiArMjI3Nyw3OSBAQAogCiAvKiBhc3N1bWluZyBpdCdzIGEgY2FzZS1zZW5zaXRpdmUgZmlsZXN5c3RlbSwgc28gdGhlcmUncyBub3RoaW5nIHRvIGRvISAqLwogI2Vsc2UKKyMgICBlcnJvciAiVVNFX0NBU0VfT0tfQllURVMgaXMgbm90IGNvcnJlY3RseSBkZWZpbmVkIgorI2VuZGlmCit9CisjZW5kaWYKKworLyoKKyAqIENoZWNrIGlmIGEgZmlsZW5hbWUgY2FzZSBtYXRjaHMgdGhlIG5hbWUgY2FzZS4gV2UndmUgYWxyZWFkeSBkb25lIGEKKyAqIHN1Y2Nlc3NmdWwgc3RhdCgpIG9yIGZvcGVuKCkgb24gYnVmLCBzbyBrbm93IHRoYXQgdGhlcmUncyBzb21lIG1hdGNoLAorICogcG9zc2libHkgY2FzZS1pbnNlbnNpdGl2ZS4KKyAqCisgKiBjYXNlX29rKCkgaXMgdG8gcmV0dXJuIDEgaWYgdGhlcmUncyBhIGNhc2Utc2Vuc2l0aXZlIG1hdGNoIGZvciBuYW1lLCAwIGlmIGl0CisgKiB0aGUgZmlsZW5hbWUgZG9lc24ndCBtYXRjaCwgb3IgLTEgb24gZXJyb3IuICBjYXNlX29rKCkgaXMgYWxzbyB0byByZXR1cm4gMQorICogaWYgZW52YXIgUFlUSE9OQ0FTRU9LIGV4aXN0cy4KKyAqCisgKiBjYXNlX29rKCkgaXMgdXNlZCB0byBpbXBsZW1lbnQgY2FzZS1zZW5zaXRpdmUgaW1wb3J0IHNlbWFudGljcyBldmVuCisgKiBvbiBwbGF0Zm9ybXMgd2l0aCBjYXNlLWluc2Vuc2l0aXZlIGZpbGVzeXN0ZW1zLiAgSXQncyB0cml2aWFsIHRvIGltcGxlbWVudAorICogZm9yIGNhc2Utc2Vuc2l0aXZlIGZpbGVzeXN0ZW1zLiAgSXQncyBwcmV0dHkgbXVjaCBhIGNyb3NzLXBsYXRmb3JtCisgKiBuaWdodG1hcmUgZm9yIHN5c3RlbXMgd2l0aCBjYXNlLWluc2Vuc2l0aXZlIGZpbGVzeXN0ZW1zLgorICovCisKK3N0YXRpYyBpbnQKK2Nhc2Vfb2soUHlPYmplY3QgKmZpbGVuYW1lLCBQeV9zc2l6ZV90IHByZWZpeF9kZWx0YSwgUHlPYmplY3QgKm5hbWUpCit7CisjaWZkZWYgTVNfV0lORE9XUworICAgIFdJTjMyX0ZJTkRfREFUQVcgZGF0YTsKKyAgICBIQU5ETEUgaDsKKyAgICBpbnQgY21wOworICAgIHdjaGFyX3QgKndmaWxlbmFtZSwgKnduYW1lOworICAgIFB5X3NzaXplX3Qgd25hbWVfbGVuOworCisgICAgaWYgKFB5X0dFVEVOVigiUFlUSE9OQ0FTRU9LIikgIT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIDE7CisKKyAgICB3ZmlsZW5hbWUgPSBQeVVuaWNvZGVfQXNVbmljb2RlKGZpbGVuYW1lKTsKKyAgICBpZiAod2ZpbGVuYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGggPSBGaW5kRmlyc3RGaWxlVyh3ZmlsZW5hbWUsICZkYXRhKTsKKyAgICBpZiAoaCA9PSBJTlZBTElEX0hBTkRMRV9WQUxVRSkgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfTmFtZUVycm9yLAorICAgICAgICAgICJDYW4ndCBmaW5kIGZpbGUgZm9yIG1vZHVsZSAlUlxuKGZpbGVuYW1lICVSKSIsCisgICAgICAgICAgbmFtZSwgZmlsZW5hbWUpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIEZpbmRDbG9zZShoKTsKKworICAgIHduYW1lID0gUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUobmFtZSwgJnduYW1lX2xlbik7CisgICAgaWYgKHduYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGNtcCA9IHdjc25jbXAoZGF0YS5jRmlsZU5hbWUsIHduYW1lLCB3bmFtZV9sZW4pOworICAgIHJldHVybiBjbXAgPT0gMDsKKyNlbGlmIGRlZmluZWQoVVNFX0NBU0VfT0tfQllURVMpCisgICAgaW50IG1hdGNoOworICAgIFB5T2JqZWN0ICpmaWxlYnl0ZXMsICpuYW1lYnl0ZXM7CisgICAgZmlsZWJ5dGVzID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChmaWxlbmFtZSk7CisgICAgaWYgKGZpbGVieXRlcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgbmFtZWJ5dGVzID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChuYW1lKTsKKyAgICBpZiAobmFtZWJ5dGVzID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKGZpbGVieXRlcyk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgbWF0Y2ggPSBjYXNlX2J5dGVzKAorICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhmaWxlYnl0ZXMpLAorICAgICAgICBQeUJ5dGVzX0dFVF9TSVpFKGZpbGVieXRlcykgKyBwcmVmaXhfZGVsdGEsCisgICAgICAgIFB5Qnl0ZXNfR0VUX1NJWkUobmFtZWJ5dGVzKSwKKyAgICAgICAgUHlCeXRlc19BU19TVFJJTkcobmFtZWJ5dGVzKSk7CisgICAgUHlfREVDUkVGKGZpbGVieXRlcyk7CisgICAgUHlfREVDUkVGKG5hbWVieXRlcyk7CisgICAgcmV0dXJuIG1hdGNoOworI2Vsc2UKKyAgICAvKiBhc3N1bWluZyBpdCdzIGEgY2FzZS1zZW5zaXRpdmUgZmlsZXN5c3RlbSwgc28gdGhlcmUncyBub3RoaW5nIHRvIGRvISAqLwogICAgIHJldHVybiAxOwogCiAjZW5kaWYKQEAgLTE5OTUsODkgKzIzNTcsOTMgQEAKIAogI2lmZGVmIEhBVkVfU1RBVAogCi0vKiBIZWxwZXIgdG8gbG9vayBmb3IgX19pbml0X18ucHkgb3IgX19pbml0X18ucHlbY29dIGluIHBvdGVudGlhbCBwYWNrYWdlICovCisvKiBIZWxwZXIgdG8gbG9vayBmb3IgX19pbml0X18ucHkgb3IgX19pbml0X18ucHlbY29dIGluIHBvdGVudGlhbCBwYWNrYWdlLgorICAgUmV0dXJuIDEgaWYgX19pbml0X18gd2FzIGZvdW5kLCAwIGlmIG5vdCwgb3IgLTEgb24gZXJyb3IuICovCiBzdGF0aWMgaW50Ci1maW5kX2luaXRfbW9kdWxlKGNoYXIgKmJ1ZikKK2ZpbmRfaW5pdF9tb2R1bGUoUHlPYmplY3QgKmRpcmVjdG9yeSkKIHsKLSAgICBjb25zdCBzaXplX3Qgc2F2ZV9sZW4gPSBzdHJsZW4oYnVmKTsKLSAgICBzaXplX3QgaSA9IHNhdmVfbGVuOwotICAgIGNoYXIgKnBuYW1lOyAgLyogcG9pbnRlciB0byBzdGFydCBvZiBfX2luaXRfXyAqLwogICAgIHN0cnVjdCBzdGF0IHN0YXRidWY7CisgICAgUHlPYmplY3QgKmZpbGVuYW1lOworICAgIGludCBtYXRjaDsKKyAgICBpbnQgZXJyOwogCi0vKiAgICAgIEZvciBjYWxsaW5nIGNhc2Vfb2soYnVmLCBsZW4sIG5hbWVsZW4sIG5hbWUpOgotICogICAgICAvYS9iL2MvZC9lL2YvZy9oL2kvai9rL3NvbWVfbG9uZ19tb2R1bGVfbmFtZS5weVwwCi0gKiAgICAgIF4gICAgICAgICAgICAgICAgICAgICAgXiAgICAgICAgICAgICAgICAgICBeICAgIF4KLSAqICAgICAgfC0tLS0tLS0tLS0tLS0tLS0tLS0tLSBidWYgLS0tLS0tLS0tLS0tLS0tLS0tLS0tfAotICogICAgICB8LS0tLS0tLS0tLS0tLS0tLS0tLSBsZW4gLS0tLS0tLS0tLS0tLS0tLS0tfAotICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwtLS0tLS0gbmFtZSAtLS0tLS0tfAotICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwtLS0tLSBuYW1lbGVuIC0tLS0tfAotICovCi0gICAgaWYgKHNhdmVfbGVuICsgMTMgPj0gTUFYUEFUSExFTikKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgYnVmW2krK10gPSBTRVA7Ci0gICAgcG5hbWUgPSBidWYgKyBpOwotICAgIHN0cmNweShwbmFtZSwgIl9faW5pdF9fLnB5Iik7Ci0gICAgaWYgKHN0YXQoYnVmLCAmc3RhdGJ1ZikgPT0gMCkgewotICAgICAgICBpZiAoY2FzZV9vayhidWYsCi0gICAgICAgICAgICAgICAgICAgIHNhdmVfbGVuICsgOSwgICAgICAgICAgICAgICAvKiBsZW4oIi9fX2luaXRfXyIpICovCi0gICAgICAgICAgICAgICAgOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBsZW4oIl9faW5pdF9fIikgKi8KLSAgICAgICAgICAgICAgICBwbmFtZSkpIHsKLSAgICAgICAgICAgIGJ1ZltzYXZlX2xlbl0gPSAnXDAnOworICAgIGZpbGVuYW1lID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVJWNfX2luaXRfXy5weSIsIGRpcmVjdG9yeSwgU0VQKTsKKyAgICBpZiAoZmlsZW5hbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGVyciA9IF9QeV9zdGF0KGZpbGVuYW1lLCAmc3RhdGJ1Zik7CisgICAgaWYgKGVyciA9PSAtMikKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGlmIChlcnIgPT0gMCkgeworICAgICAgICAvKiAzPWxlbigiLnB5IikgKi8KKyAgICAgICAgbWF0Y2ggPSBjYXNlX29rKGZpbGVuYW1lLCAtMywgaW5pdHN0cik7CisgICAgICAgIGlmIChtYXRjaCA8IDApIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG1hdGNoKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOwogICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgIH0KICAgICB9Ci0gICAgaSArPSBzdHJsZW4ocG5hbWUpOwotICAgIHN0cmNweShidWYraSwgUHlfT3B0aW1pemVGbGFnID8gIm8iIDogImMiKTsKLSAgICBpZiAoc3RhdChidWYsICZzdGF0YnVmKSA9PSAwKSB7Ci0gICAgICAgIGlmIChjYXNlX29rKGJ1ZiwKLSAgICAgICAgICAgICAgICAgICAgc2F2ZV9sZW4gKyA5LCAgICAgICAgICAgICAgIC8qIGxlbigiL19faW5pdF9fIikgKi8KLSAgICAgICAgICAgICAgICA4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGxlbigiX19pbml0X18iKSAqLwotICAgICAgICAgICAgICAgIHBuYW1lKSkgewotICAgICAgICAgICAgYnVmW3NhdmVfbGVuXSA9ICdcMCc7CisgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKworICAgIGZpbGVuYW1lID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVJWNfX2luaXRfXy5weSVjIiwKKyAgICAgICAgZGlyZWN0b3J5LCBTRVAsIFB5X09wdGltaXplRmxhZyA/ICdvJyA6ICdjJyk7CisgICAgaWYgKGZpbGVuYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBlcnIgPSBfUHlfc3RhdChmaWxlbmFtZSwgJnN0YXRidWYpOworICAgIGlmIChlcnIgPT0gLTIpIHsKKyAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAoZXJyID09IDApIHsKKyAgICAgICAgLyogND1sZW4oIi5weWMiKSAqLworICAgICAgICBtYXRjaCA9IGNhc2Vfb2soZmlsZW5hbWUsIC00LCBpbml0c3RyKTsKKyAgICAgICAgaWYgKG1hdGNoIDwgMCkgeworICAgICAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBpZiAobWF0Y2gpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CiAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQogICAgIH0KLSAgICBidWZbc2F2ZV9sZW5dID0gJ1wwJzsKKyAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOwogICAgIHJldHVybiAwOwogfQogCiAjZW5kaWYgLyogSEFWRV9TVEFUICovCiAKIAotc3RhdGljIGludCBpbml0X2J1aWx0aW4oY2hhciAqKTsgLyogRm9yd2FyZCAqLworc3RhdGljIGludCBpbml0X2J1aWx0aW4oUHlPYmplY3QgKik7IC8qIEZvcndhcmQgKi8KIAogc3RhdGljIFB5T2JqZWN0KgotbG9hZF9idWlsdGluKGNoYXIgKm5hbWUsIGNoYXIgKnBhdGhuYW1lLCBpbnQgdHlwZSkKK2xvYWRfYnVpbHRpbihQeU9iamVjdCAqbmFtZSwgaW50IHR5cGUpCiB7CiAgICAgUHlPYmplY3QgKm0sICptb2R1bGVzOwogICAgIGludCBlcnI7CiAKLSAgICBpZiAocGF0aG5hbWUgIT0gTlVMTCAmJiBwYXRobmFtZVswXSAhPSAnXDAnKQotICAgICAgICBuYW1lID0gcGF0aG5hbWU7Ci0KICAgICBpZiAodHlwZSA9PSBDX0JVSUxUSU4pCiAgICAgICAgIGVyciA9IGluaXRfYnVpbHRpbihuYW1lKTsKICAgICBlbHNlCi0gICAgICAgIGVyciA9IFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZShuYW1lKTsKKyAgICAgICAgZXJyID0gUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlT2JqZWN0KG5hbWUpOwogICAgIGlmIChlcnIgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoZXJyID09IDApIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICJQdXJwb3J0ZWQgJXMgbW9kdWxlICUuMjAwcyBub3QgZm91bmQiLAotICAgICAgICAgICAgICAgIHR5cGUgPT0gQ19CVUlMVElOID8KLSAgICAgICAgICAgICAgICAiYnVpbHRpbiIgOiAiZnJvemVuIiwKKyAgICAgICAgICAgICAgICAiUHVycG9ydGVkICVzIG1vZHVsZSAlUiBub3QgZm91bmQiLAorICAgICAgICAgICAgICAgIHR5cGUgPT0gQ19CVUlMVElOID8gImJ1aWx0aW4iIDogImZyb3plbiIsCiAgICAgICAgICAgICAgICAgbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAogICAgIG1vZHVsZXMgPSBQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCk7Ci0gICAgbSA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKG1vZHVsZXMsIG5hbWUpOworICAgIG0gPSBQeURpY3RfR2V0SXRlbShtb2R1bGVzLCBuYW1lKTsKICAgICBpZiAobSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdCgKICAgICAgICAgICAgICAgICBQeUV4Y19JbXBvcnRFcnJvciwKLSAgICAgICAgICAgICAgICAiJXMgbW9kdWxlICUuMjAwcyBub3QgcHJvcGVybHkgaW5pdGlhbGl6ZWQiLAotICAgICAgICAgICAgICAgIHR5cGUgPT0gQ19CVUlMVElOID8KLSAgICAgICAgICAgICAgICAiYnVpbHRpbiIgOiAiZnJvemVuIiwKKyAgICAgICAgICAgICAgICAiJXMgbW9kdWxlICVSIG5vdCBwcm9wZXJseSBpbml0aWFsaXplZCIsCisgICAgICAgICAgICAgICAgdHlwZSA9PSBDX0JVSUxUSU4gPyAiYnVpbHRpbiIgOiAiZnJvemVuIiwKICAgICAgICAgICAgICAgICBuYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMjA4OSw3ICsyNDU1LDcgQEAKICAgIGl0cyBtb2R1bGUgb2JqZWN0IFdJVEggSU5DUkVNRU5URUQgUkVGRVJFTkNFIENPVU5UICovCiAKIHN0YXRpYyBQeU9iamVjdCAqCi1sb2FkX21vZHVsZShjaGFyICpuYW1lLCBGSUxFICpmcCwgY2hhciAqcGF0aG5hbWUsIGludCB0eXBlLCBQeU9iamVjdCAqbG9hZGVyKQorbG9hZF9tb2R1bGUoUHlPYmplY3QgKm5hbWUsIEZJTEUgKmZwLCBQeU9iamVjdCAqcGF0aG5hbWUsIGludCB0eXBlLCBQeU9iamVjdCAqbG9hZGVyKQogewogICAgIFB5T2JqZWN0ICptOwogCkBAIC0yMDk5LDcgKzI0NjUsNyBAQAogICAgIGNhc2UgUFlfQ09NUElMRUQ6CiAgICAgICAgIGlmIChmcCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICJmaWxlIG9iamVjdCByZXF1aXJlZCBmb3IgaW1wb3J0ICh0eXBlIGNvZGUgJWQpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiZmlsZSBvYmplY3QgcmVxdWlyZWQgZm9yIGltcG9ydCAodHlwZSBjb2RlICVkKSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZSk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQpAQCAtMjEyNywyMiArMjQ5MywyMyBAQAogCiAgICAgY2FzZSBDX0JVSUxUSU46CiAgICAgY2FzZSBQWV9GUk9aRU46Ci0gICAgICAgIG0gPSBsb2FkX2J1aWx0aW4obmFtZSwgcGF0aG5hbWUsIHR5cGUpOworICAgICAgICBtID0gbG9hZF9idWlsdGluKG5hbWUsIHR5cGUpOwogICAgICAgICBicmVhazsKIAogICAgIGNhc2UgSU1QX0hPT0s6IHsKKyAgICAgICAgX1B5X0lERU5USUZJRVIobG9hZF9tb2R1bGUpOwogICAgICAgICBpZiAobG9hZGVyID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JbXBvcnRFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW1wb3J0IGhvb2sgd2l0aG91dCBsb2FkZXIiKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIG0gPSBQeU9iamVjdF9DYWxsTWV0aG9kKGxvYWRlciwgImxvYWRfbW9kdWxlIiwgInMiLCBuYW1lKTsKKyAgICAgICAgbSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQobG9hZGVyLCAmUHlJZF9sb2FkX21vZHVsZSwgIk8iLCBuYW1lKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogCiAgICAgZGVmYXVsdDoKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIkRvbid0IGtub3cgaG93IHRvIGltcG9ydCAlLjIwMHMgKHR5cGUgY29kZSAlZCkiLAorICAgICAgICAgICAgICAgICAgICAgIkRvbid0IGtub3cgaG93IHRvIGltcG9ydCAlUiAodHlwZSBjb2RlICVkKSIsCiAgICAgICAgICAgICAgICAgICAgICAgbmFtZSwgdHlwZSk7CiAgICAgICAgIG0gPSBOVUxMOwogCkBAIC0yMTU3LDMyICsyNTI0LDMyIEBACiAgICBhbiBleGNlcHRpb24gc2V0IGlmIHRoZSBpbml0aWFsaXphdGlvbiBmYWlsZWQuICovCiAKIHN0YXRpYyBpbnQKLWluaXRfYnVpbHRpbihjaGFyICpuYW1lKQoraW5pdF9idWlsdGluKFB5T2JqZWN0ICpuYW1lKQogewogICAgIHN0cnVjdCBfaW5pdHRhYiAqcDsKIAotICAgIGlmIChfUHlJbXBvcnRfRmluZEJ1aWx0aW4obmFtZSkgIT0gTlVMTCkKKyAgICBpZiAoX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25PYmplY3QobmFtZSwgbmFtZSkgIT0gTlVMTCkKICAgICAgICAgcmV0dXJuIDE7CiAKICAgICBmb3IgKHAgPSBQeUltcG9ydF9Jbml0dGFiOyBwLT5uYW1lICE9IE5VTEw7IHArKykgewogICAgICAgICBQeU9iamVjdCAqbW9kOwogICAgICAgICBQeU1vZHVsZURlZiAqZGVmOwotICAgICAgICBpZiAoc3RyY21wKG5hbWUsIHAtPm5hbWUpID09IDApIHsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG5hbWUsIHAtPm5hbWUpID09IDApIHsKICAgICAgICAgICAgIGlmIChwLT5pbml0ZnVuYyA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAiQ2Fubm90IHJlLWluaXQgaW50ZXJuYWwgbW9kdWxlICUuMjAwcyIsCisgICAgICAgICAgICAgICAgICAgICJDYW5ub3QgcmUtaW5pdCBpbnRlcm5hbCBtb2R1bGUgJVIiLAogICAgICAgICAgICAgICAgICAgICBuYW1lKTsKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoImltcG9ydCAlcyAjIGJ1aWx0aW5cbiIsIG5hbWUpOworICAgICAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiaW1wb3J0ICVVICMgYnVpbHRpblxuIiwgbmFtZSk7CiAgICAgICAgICAgICBtb2QgPSAoKnAtPmluaXRmdW5jKSgpOwogICAgICAgICAgICAgaWYgKG1vZCA9PSAwKQogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIC8qIFJlbWVtYmVyIHBvaW50ZXIgdG8gbW9kdWxlIGluaXQgZnVuY3Rpb24uICovCiAgICAgICAgICAgICBkZWYgPSBQeU1vZHVsZV9HZXREZWYobW9kKTsKICAgICAgICAgICAgIGRlZi0+bV9iYXNlLm1faW5pdCA9IHAtPmluaXRmdW5jOwotICAgICAgICAgICAgaWYgKF9QeUltcG9ydF9GaXh1cEJ1aWx0aW4obW9kLCBuYW1lKSA8IDApCisgICAgICAgICAgICBpZiAoX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uT2JqZWN0KG1vZCwgbmFtZSwgbmFtZSkgPCAwKQogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIC8qIEZpeHVwRXh0ZW5zaW9uIGhhcyBwdXQgdGhlIG1vZHVsZSBpbnRvIHN5cy5tb2R1bGVzLAogICAgICAgICAgICAgICAgc28gd2UgY2FuIHJlbGVhc2Ugb3VyIG93biByZWZlcmVuY2UuICovCkBAIC0yMTk3LDM3ICsyNTY0LDM3IEBACiAvKiBGcm96ZW4gbW9kdWxlcyAqLwogCiBzdGF0aWMgc3RydWN0IF9mcm96ZW4gKgotZmluZF9mcm96ZW4oY2hhciAqbmFtZSkKK2ZpbmRfZnJvemVuKFB5T2JqZWN0ICpuYW1lKQogewogICAgIHN0cnVjdCBfZnJvemVuICpwOwogCi0gICAgaWYgKCFuYW1lKQorICAgIGlmIChuYW1lID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgZm9yIChwID0gUHlJbXBvcnRfRnJvemVuTW9kdWxlczsgOyBwKyspIHsKICAgICAgICAgaWYgKHAtPm5hbWUgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBpZiAoc3RyY21wKHAtPm5hbWUsIG5hbWUpID09IDApCisgICAgICAgIGlmIChQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhuYW1lLCBwLT5uYW1lKSA9PSAwKQogICAgICAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIHJldHVybiBwOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotZ2V0X2Zyb3plbl9vYmplY3QoY2hhciAqbmFtZSkKK2dldF9mcm96ZW5fb2JqZWN0KFB5T2JqZWN0ICpuYW1lKQogewogICAgIHN0cnVjdCBfZnJvemVuICpwID0gZmluZF9mcm96ZW4obmFtZSk7CiAgICAgaW50IHNpemU7CiAKICAgICBpZiAocCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19JbXBvcnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJObyBzdWNoIGZyb3plbiBvYmplY3QgbmFtZWQgJS4yMDBzIiwKKyAgICAgICAgICAgICAgICAgICAgICJObyBzdWNoIGZyb3plbiBvYmplY3QgbmFtZWQgJVIiLAogICAgICAgICAgICAgICAgICAgICAgbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBpZiAocC0+Y29kZSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19JbXBvcnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJFeGNsdWRlZCBmcm96ZW4gb2JqZWN0IG5hbWVkICUuMjAwcyIsCisgICAgICAgICAgICAgICAgICAgICAiRXhjbHVkZWQgZnJvemVuIG9iamVjdCBuYW1lZCAlUiIsCiAgICAgICAgICAgICAgICAgICAgICBuYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMjIzOCwxNCArMjYwNSwxNCBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotaXNfZnJvemVuX3BhY2thZ2UoY2hhciAqbmFtZSkKK2lzX2Zyb3plbl9wYWNrYWdlKFB5T2JqZWN0ICpuYW1lKQogewogICAgIHN0cnVjdCBfZnJvemVuICpwID0gZmluZF9mcm96ZW4obmFtZSk7CiAgICAgaW50IHNpemU7CiAKICAgICBpZiAocCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19JbXBvcnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJObyBzdWNoIGZyb3plbiBvYmplY3QgbmFtZWQgJS4yMDBzIiwKKyAgICAgICAgICAgICAgICAgICAgICJObyBzdWNoIGZyb3plbiBvYmplY3QgbmFtZWQgJVIiLAogICAgICAgICAgICAgICAgICAgICAgbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KQEAgLTIyNjUsMTkgKzI2MzIsMjAgQEAKICAgIFRoaXMgZnVuY3Rpb24gaXMgYWxzbyB1c2VkIGZyb20gZnJvemVubWFpbi5jICovCiAKIGludAotUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlKGNoYXIgKm5hbWUpCitQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGVPYmplY3QoUHlPYmplY3QgKm5hbWUpCiB7Ci0gICAgc3RydWN0IF9mcm96ZW4gKnAgPSBmaW5kX2Zyb3plbihuYW1lKTsKLSAgICBQeU9iamVjdCAqY287Ci0gICAgUHlPYmplY3QgKm07CisgICAgc3RydWN0IF9mcm96ZW4gKnA7CisgICAgUHlPYmplY3QgKmNvLCAqbSwgKnBhdGg7CiAgICAgaW50IGlzcGFja2FnZTsKICAgICBpbnQgc2l6ZTsKIAorICAgIHAgPSBmaW5kX2Zyb3plbihuYW1lKTsKKwogICAgIGlmIChwID09IE5VTEwpCiAgICAgICAgIHJldHVybiAwOwogICAgIGlmIChwLT5jb2RlID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIkV4Y2x1ZGVkIGZyb3plbiBvYmplY3QgbmFtZWQgJS4yMDBzIiwKKyAgICAgICAgICAgICAgICAgICAgICJFeGNsdWRlZCBmcm96ZW4gb2JqZWN0IG5hbWVkICVSIiwKICAgICAgICAgICAgICAgICAgICAgIG5hbWUpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQpAQCAtMjI4Niw0MCArMjY1NCw0MSBAQAogICAgIGlmIChpc3BhY2thZ2UpCiAgICAgICAgIHNpemUgPSAtc2l6ZTsKICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCJpbXBvcnQgJXMgIyBmcm96ZW4lc1xuIiwKKyAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCJpbXBvcnQgJVUgIyBmcm96ZW4lc1xuIiwKICAgICAgICAgICAgIG5hbWUsIGlzcGFja2FnZSA/ICIgcGFja2FnZSIgOiAiIik7CiAgICAgY28gPSBQeU1hcnNoYWxfUmVhZE9iamVjdEZyb21TdHJpbmcoKGNoYXIgKilwLT5jb2RlLCBzaXplKTsKICAgICBpZiAoY28gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwogICAgIGlmICghUHlDb2RlX0NoZWNrKGNvKSkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgImZyb3plbiBvYmplY3QgJS4yMDBzIGlzIG5vdCBhIGNvZGUgb2JqZWN0IiwKKyAgICAgICAgICAgICAgICAgICAgICJmcm96ZW4gb2JqZWN0ICVSIGlzIG5vdCBhIGNvZGUgb2JqZWN0IiwKICAgICAgICAgICAgICAgICAgICAgIG5hbWUpOwogICAgICAgICBnb3RvIGVycl9yZXR1cm47CiAgICAgfQogICAgIGlmIChpc3BhY2thZ2UpIHsKICAgICAgICAgLyogU2V0IF9fcGF0aF9fIHRvIHRoZSBwYWNrYWdlIG5hbWUgKi8KLSAgICAgICAgUHlPYmplY3QgKmQsICpzLCAqbDsKKyAgICAgICAgUHlPYmplY3QgKmQsICpsOwogICAgICAgICBpbnQgZXJyOwotICAgICAgICBtID0gUHlJbXBvcnRfQWRkTW9kdWxlKG5hbWUpOworICAgICAgICBtID0gUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0KG5hbWUpOwogICAgICAgICBpZiAobSA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJfcmV0dXJuOwogICAgICAgICBkID0gUHlNb2R1bGVfR2V0RGljdChtKTsKLSAgICAgICAgcyA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKG5hbWUpOwotICAgICAgICBpZiAocyA9PSBOVUxMKQotICAgICAgICAgICAgZ290byBlcnJfcmV0dXJuOwogICAgICAgICBsID0gUHlMaXN0X05ldygxKTsKICAgICAgICAgaWYgKGwgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlfREVDUkVGKHMpOwogICAgICAgICAgICAgZ290byBlcnJfcmV0dXJuOwogICAgICAgICB9Ci0gICAgICAgIFB5TGlzdF9TRVRfSVRFTShsLCAwLCBzKTsKKyAgICAgICAgUHlfSU5DUkVGKG5hbWUpOworICAgICAgICBQeUxpc3RfU0VUX0lURU0obCwgMCwgbmFtZSk7CiAgICAgICAgIGVyciA9IFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJfX3BhdGhfXyIsIGwpOwogICAgICAgICBQeV9ERUNSRUYobCk7CiAgICAgICAgIGlmIChlcnIgIT0gMCkKICAgICAgICAgICAgIGdvdG8gZXJyX3JldHVybjsKICAgICB9Ci0gICAgbSA9IFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlRXgobmFtZSwgY28sICI8ZnJvemVuPiIpOworICAgIHBhdGggPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiPGZyb3plbj4iKTsKKyAgICBpZiAocGF0aCA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycl9yZXR1cm47CisgICAgbSA9IFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlT2JqZWN0KG5hbWUsIGNvLCBwYXRoLCBOVUxMKTsKKyAgICBQeV9ERUNSRUYocGF0aCk7CiAgICAgaWYgKG0gPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJfcmV0dXJuOwogICAgIFB5X0RFQ1JFRihjbyk7CkBAIC0yMzMwLDYgKzI2OTksMTkgQEAKICAgICByZXR1cm4gLTE7CiB9CiAKK2ludAorUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlKGNoYXIgKm5hbWUpCit7CisgICAgUHlPYmplY3QgKm5hbWVvYmo7CisgICAgaW50IHJldDsKKyAgICBuYW1lb2JqID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcobmFtZSk7CisgICAgaWYgKG5hbWVvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIHJldCA9IFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZU9iamVjdChuYW1lb2JqKTsKKyAgICBQeV9ERUNSRUYobmFtZW9iaik7CisgICAgcmV0dXJuIHJldDsKK30KKwogCiAvKiBJbXBvcnQgYSBtb2R1bGUsIGVpdGhlciBidWlsdC1pbiwgZnJvemVuLCBvciBleHRlcm5hbCwgYW5kIHJldHVybgogICAgaXRzIG1vZHVsZSBvYmplY3QgV0lUSCBJTkNSRU1FTlRFRCBSRUZFUkVOQ0UgQ09VTlQgKi8KQEAgLTIzNjAsOCArMjc0Miw3IEBACiBQeU9iamVjdCAqCiBQeUltcG9ydF9JbXBvcnRNb2R1bGVOb0Jsb2NrKGNvbnN0IGNoYXIgKm5hbWUpCiB7Ci0gICAgUHlPYmplY3QgKnJlc3VsdDsKLSAgICBQeU9iamVjdCAqbW9kdWxlczsKKyAgICBQeU9iamVjdCAqbmFtZW9iaiwgKm1vZHVsZXMsICpyZXN1bHQ7CiAjaWZkZWYgV0lUSF9USFJFQUQKICAgICBsb25nIG1lOwogI2VuZGlmCkBAIC0yMzcxLDE0ICsyNzUyLDE2IEBACiAgICAgaWYgKG1vZHVsZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXN1bHQgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhtb2R1bGVzLCBuYW1lKTsKKyAgICBuYW1lb2JqID0gUHlVbmljb2RlX0Zyb21TdHJpbmcobmFtZSk7CisgICAgaWYgKG5hbWVvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzdWx0ID0gUHlEaWN0X0dldEl0ZW0obW9kdWxlcywgbmFtZW9iaik7CiAgICAgaWYgKHJlc3VsdCAhPSBOVUxMKSB7CisgICAgICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKICAgICAgICAgUHlfSU5DUkVGKHJlc3VsdCk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQotICAgIGVsc2UgewotICAgICAgICBQeUVycl9DbGVhcigpOwotICAgIH0KKyAgICBQeUVycl9DbGVhcigpOwogI2lmZGVmIFdJVEhfVEhSRUFECiAgICAgLyogY2hlY2sgdGhlIGltcG9ydCBsb2NrCiAgICAgICogbWUgbWlnaHQgYmUgLTEgYnV0IEkgaWdub3JlIHRoZSBlcnJvciBoZXJlLCB0aGUgbG9jayBmdW5jdGlvbgpAQCAtMjM4Niw3OSArMjc2OSwxMDYgQEAKICAgICBtZSA9IFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQoKTsKICAgICBpZiAoaW1wb3J0X2xvY2tfdGhyZWFkID09IC0xIHx8IGltcG9ydF9sb2NrX3RocmVhZCA9PSBtZSkgewogICAgICAgICAvKiBubyB0aHJlYWQgb3IgbWUgaXMgaG9sZGluZyB0aGUgbG9jayAqLwotICAgICAgICByZXR1cm4gUHlJbXBvcnRfSW1wb3J0TW9kdWxlKG5hbWUpOworICAgICAgICByZXN1bHQgPSBQeUltcG9ydF9JbXBvcnQobmFtZW9iaik7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiRmFpbGVkIHRvIGltcG9ydCAlLjIwMHMgYmVjYXVzZSB0aGUgaW1wb3J0IGxvY2siCisgICAgICAgICAgICAgICAgICAgICAiRmFpbGVkIHRvIGltcG9ydCAlUiBiZWNhdXNlIHRoZSBpbXBvcnQgbG9jayIKICAgICAgICAgICAgICAgICAgICAgICJpcyBoZWxkIGJ5IGFub3RoZXIgdGhyZWFkLiIsCi0gICAgICAgICAgICAgICAgICAgICBuYW1lKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICAgICAgICAgICBuYW1lb2JqKTsKKyAgICAgICAgcmVzdWx0ID0gTlVMTDsKICAgICB9CiAjZWxzZQotICAgIHJldHVybiBQeUltcG9ydF9JbXBvcnRNb2R1bGUobmFtZSk7CisgICAgcmVzdWx0ID0gUHlJbXBvcnRfSW1wb3J0KG5hbWVvYmopOwogI2VuZGlmCisgICAgUHlfREVDUkVGKG5hbWVvYmopOworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIC8qIEZvcndhcmQgZGVjbGFyYXRpb25zIGZvciBoZWxwZXIgcm91dGluZXMgKi8KLXN0YXRpYyBQeU9iamVjdCAqZ2V0X3BhcmVudChQeU9iamVjdCAqZ2xvYmFscywgY2hhciAqYnVmLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKnBfYnVmbGVuLCBpbnQgbGV2ZWwpOworc3RhdGljIFB5T2JqZWN0ICpnZXRfcGFyZW50KFB5T2JqZWN0ICpnbG9iYWxzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqcF9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBsZXZlbCk7CiBzdGF0aWMgUHlPYmplY3QgKmxvYWRfbmV4dChQeU9iamVjdCAqbW9kLCBQeU9iamVjdCAqYWx0bW9kLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqKnBfbmFtZSwgY2hhciAqYnVmLCBQeV9zc2l6ZV90ICpwX2J1Zmxlbik7Ci1zdGF0aWMgaW50IG1hcmtfbWlzcyhjaGFyICpuYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICppbnB1dG5hbWUsIFB5T2JqZWN0ICoqcF9vdXRwdXRuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipwX3ByZWZpeCk7CitzdGF0aWMgaW50IG1hcmtfbWlzcyhQeU9iamVjdCAqbmFtZSk7CiBzdGF0aWMgaW50IGVuc3VyZV9mcm9tbGlzdChQeU9iamVjdCAqbW9kLCBQeU9iamVjdCAqZnJvbWxpc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyICpidWYsIFB5X3NzaXplX3QgYnVmbGVuLCBpbnQgcmVjdXJzaXZlKTsKLXN0YXRpYyBQeU9iamVjdCAqIGltcG9ydF9zdWJtb2R1bGUoUHlPYmplY3QgKm1vZCwgY2hhciAqbmFtZSwgY2hhciAqZnVsbG5hbWUpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmJ1ZiwgaW50IHJlY3Vyc2l2ZSk7CitzdGF0aWMgUHlPYmplY3QgKiBpbXBvcnRfc3VibW9kdWxlKFB5T2JqZWN0ICptb2QsIFB5T2JqZWN0ICpuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZnVsbG5hbWUpOwogCiAvKiBUaGUgTWFnbnVtIE9wdXMgb2YgZG90dGVkLW5hbWUgaW1wb3J0IDotKSAqLwogCiBzdGF0aWMgUHlPYmplY3QgKgotaW1wb3J0X21vZHVsZV9sZXZlbChjaGFyICpuYW1lLCBQeU9iamVjdCAqZ2xvYmFscywgUHlPYmplY3QgKmxvY2FscywKK2ltcG9ydF9tb2R1bGVfbGV2ZWwoUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpnbG9iYWxzLCBQeU9iamVjdCAqbG9jYWxzLAogICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZnJvbWxpc3QsIGludCBsZXZlbCkKIHsKLSAgICBjaGFyIGJ1ZltNQVhQQVRITEVOKzFdOwotICAgIFB5X3NzaXplX3QgYnVmbGVuID0gMDsKLSAgICBQeU9iamVjdCAqcGFyZW50LCAqaGVhZCwgKm5leHQsICp0YWlsOworICAgIFB5T2JqZWN0ICpwYXJlbnQsICpuZXh0LCAqaW5wdXRuYW1lLCAqb3V0cHV0bmFtZTsKKyAgICBQeU9iamVjdCAqaGVhZCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnRhaWwgPSBOVUxMOworICAgIFB5T2JqZWN0ICpwcmVmaXggPSBOVUxMOworICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOworICAgIFB5X3NzaXplX3Qgc2VwLCBhbHRzZXA7CiAKLSAgICBpZiAoc3RyY2hyKG5hbWUsICcvJykgIT0gTlVMTAotI2lmZGVmIE1TX1dJTkRPV1MKLSAgICAgICAgfHwgc3RyY2hyKG5hbWUsICdcXCcpICE9IE5VTEwKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKG5hbWUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHNlcCA9IFB5VW5pY29kZV9GaW5kQ2hhcihuYW1lLCBTRVAsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpLCAxKTsKKyAgICBpZiAoc2VwID09IC0yKQorICAgICAgICByZXR1cm4gTlVMTDsKKyNpZmRlZiBBTFRTRVAKKyAgICBhbHRzZXAgPSBQeVVuaWNvZGVfRmluZENoYXIobmFtZSwgQUxUU0VQLCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSwgMSk7CisgICAgaWYgKGFsdHNlcCA9PSAtMikKKyAgICAgICAgcmV0dXJuIE5VTEw7CisjZWxzZQorICAgIGFsdHNlcCA9IC0xOwogI2VuZGlmCi0gICAgICAgICkgeworICAgIGlmIChzZXAgIT0gLTEgfHwgYWx0c2VwICE9IC0xKQorICAgIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0ltcG9ydEVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgIkltcG9ydCBieSBmaWxlbmFtZSBpcyBub3Qgc3VwcG9ydGVkLiIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBwYXJlbnQgPSBnZXRfcGFyZW50KGdsb2JhbHMsIGJ1ZiwgJmJ1ZmxlbiwgbGV2ZWwpOwotICAgIGlmIChwYXJlbnQgPT0gTlVMTCkKKyAgICBwYXJlbnQgPSBnZXRfcGFyZW50KGdsb2JhbHMsICZwcmVmaXgsIGxldmVsKTsKKyAgICBpZiAocGFyZW50ID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShwcmVmaXgpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGhlYWQgPSBsb2FkX25leHQocGFyZW50LCBsZXZlbCA8IDAgPyBQeV9Ob25lIDogcGFyZW50LCAmbmFtZSwgYnVmLAotICAgICAgICAgICAgICAgICAgICAgICAgJmJ1Zmxlbik7CisgICAgaGVhZCA9IGxvYWRfbmV4dChwYXJlbnQsIGxldmVsIDwgMCA/IFB5X05vbmUgOiBwYXJlbnQsIG5hbWUsICZvdXRwdXRuYW1lLAorICAgICAgICAgICAgICAgICAgICAgJnByZWZpeCk7CiAgICAgaWYgKGhlYWQgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGdvdG8gb3V0OwogCiAgICAgdGFpbCA9IGhlYWQ7CiAgICAgUHlfSU5DUkVGKHRhaWwpOwotICAgIHdoaWxlIChuYW1lKSB7Ci0gICAgICAgIG5leHQgPSBsb2FkX25leHQodGFpbCwgdGFpbCwgJm5hbWUsIGJ1ZiwgJmJ1Zmxlbik7Ci0gICAgICAgIFB5X0RFQ1JFRih0YWlsKTsKLSAgICAgICAgaWYgKG5leHQgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlfREVDUkVGKGhlYWQpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAob3V0cHV0bmFtZSAhPSBOVUxMKSB7CisgICAgICAgIHdoaWxlICgxKSB7CisgICAgICAgICAgICBpbnB1dG5hbWUgPSBvdXRwdXRuYW1lOworICAgICAgICAgICAgbmV4dCA9IGxvYWRfbmV4dCh0YWlsLCB0YWlsLCBpbnB1dG5hbWUsICZvdXRwdXRuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJlZml4KTsKKyAgICAgICAgICAgIFB5X0NMRUFSKHRhaWwpOworICAgICAgICAgICAgUHlfQ0xFQVIoaW5wdXRuYW1lKTsKKyAgICAgICAgICAgIGlmIChuZXh0ID09IE5VTEwpCisgICAgICAgICAgICAgICAgZ290byBvdXQ7CisgICAgICAgICAgICB0YWlsID0gbmV4dDsKKworICAgICAgICAgICAgaWYgKG91dHB1dG5hbWUgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIHRhaWwgPSBuZXh0OwogICAgIH0KICAgICBpZiAodGFpbCA9PSBQeV9Ob25lKSB7CiAgICAgICAgIC8qIElmIHRhaWwgaXMgUHlfTm9uZSwgYm90aCBnZXRfcGFyZW50IGFuZCBsb2FkX25leHQgZm91bmQKICAgICAgICAgICAgYW4gZW1wdHkgbW9kdWxlIG5hbWU6IHNvbWVvbmUgY2FsbGVkIF9faW1wb3J0X18oIiIpIG9yCiAgICAgICAgICAgIGRvY3RvcmVkIGZhdWx0eSBieXRlY29kZSAqLwotICAgICAgICBQeV9ERUNSRUYodGFpbCk7Ci0gICAgICAgIFB5X0RFQ1JFRihoZWFkKTsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiRW1wdHkgbW9kdWxlIG5hbWUiKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiRW1wdHkgbW9kdWxlIG5hbWUiKTsKKyAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCiAgICAgaWYgKGZyb21saXN0ICE9IE5VTEwpIHsKQEAgLTI0NjcsNDkgKzI4NzcsNzAgQEAKICAgICB9CiAKICAgICBpZiAoZnJvbWxpc3QgPT0gTlVMTCkgewotICAgICAgICBQeV9ERUNSRUYodGFpbCk7Ci0gICAgICAgIHJldHVybiBoZWFkOworICAgICAgICByZXN1bHQgPSBoZWFkOworICAgICAgICBQeV9JTkNSRUYocmVzdWx0KTsKKyAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCi0gICAgUHlfREVDUkVGKGhlYWQpOwotICAgIGlmICghZW5zdXJlX2Zyb21saXN0KHRhaWwsIGZyb21saXN0LCBidWYsIGJ1ZmxlbiwgMCkpIHsKLSAgICAgICAgUHlfREVDUkVGKHRhaWwpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CisgICAgaWYgKCFlbnN1cmVfZnJvbWxpc3QodGFpbCwgZnJvbWxpc3QsIHByZWZpeCwgMCkpCisgICAgICAgIGdvdG8gb3V0OwogCi0gICAgcmV0dXJuIHRhaWw7CisgICAgcmVzdWx0ID0gdGFpbDsKKyAgICBQeV9JTkNSRUYocmVzdWx0KTsKKyAgb3V0OgorICAgIFB5X1hERUNSRUYoaGVhZCk7CisgICAgUHlfWERFQ1JFRih0YWlsKTsKKyAgICBQeV9YREVDUkVGKHByZWZpeCk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogUHlPYmplY3QgKgotUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWwoY2hhciAqbmFtZSwgUHlPYmplY3QgKmdsb2JhbHMsIFB5T2JqZWN0ICpsb2NhbHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmZyb21saXN0LCBpbnQgbGV2ZWwpCitQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbE9iamVjdChQeU9iamVjdCAqbmFtZSwgUHlPYmplY3QgKmdsb2JhbHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqbG9jYWxzLCBQeU9iamVjdCAqZnJvbWxpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbGV2ZWwpCiB7Ci0gICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBQeU9iamVjdCAqbW9kOwogICAgIF9QeUltcG9ydF9BY3F1aXJlTG9jaygpOwotICAgIHJlc3VsdCA9IGltcG9ydF9tb2R1bGVfbGV2ZWwobmFtZSwgZ2xvYmFscywgbG9jYWxzLCBmcm9tbGlzdCwgbGV2ZWwpOworICAgIG1vZCA9IGltcG9ydF9tb2R1bGVfbGV2ZWwobmFtZSwgZ2xvYmFscywgbG9jYWxzLCBmcm9tbGlzdCwgbGV2ZWwpOwogICAgIGlmIChfUHlJbXBvcnRfUmVsZWFzZUxvY2soKSA8IDApIHsKLSAgICAgICAgUHlfWERFQ1JFRihyZXN1bHQpOworICAgICAgICBQeV9YREVDUkVGKG1vZCk7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAibm90IGhvbGRpbmcgdGhlIGltcG9ydCBsb2NrIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiBtb2Q7CiB9CiAKK1B5T2JqZWN0ICoKK1B5SW1wb3J0X0ltcG9ydE1vZHVsZUxldmVsKGNvbnN0IGNoYXIgKm5hbWUsIFB5T2JqZWN0ICpnbG9iYWxzLCBQeU9iamVjdCAqbG9jYWxzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmZyb21saXN0LCBpbnQgbGV2ZWwpCit7CisgICAgUHlPYmplY3QgKm5hbWVvYmosICptb2Q7CisgICAgbmFtZW9iaiA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKG5hbWUpOworICAgIGlmIChuYW1lb2JqID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIG1vZCA9IFB5SW1wb3J0X0ltcG9ydE1vZHVsZUxldmVsT2JqZWN0KG5hbWVvYmosIGdsb2JhbHMsIGxvY2FscywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tbGlzdCwgbGV2ZWwpOworICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKKyAgICByZXR1cm4gbW9kOworfQorCisKIC8qIFJldHVybiB0aGUgcGFja2FnZSB0aGF0IGFuIGltcG9ydCBpcyBiZWluZyBwZXJmb3JtZWQgaW4uICBJZiBnbG9iYWxzIGNvbWVzCiAgICBmcm9tIHRoZSBtb2R1bGUgZm9vLmJhci5iYXQgKG5vdCBpdHNlbGYgYSBwYWNrYWdlKSwgdGhpcyByZXR1cm5zIHRoZQogICAgc3lzLm1vZHVsZXMgZW50cnkgZm9yIGZvby5iYXIuICBJZiBnbG9iYWxzIGlzIGZyb20gYSBwYWNrYWdlJ3MgX19pbml0X18ucHksCiAgICB0aGUgcGFja2FnZSdzIGVudHJ5IGluIHN5cy5tb2R1bGVzIGlzIHJldHVybmVkLCBhcyBhIGJvcnJvd2VkIHJlZmVyZW5jZS4KIAotICAgVGhlICpuYW1lKiBvZiB0aGUgcmV0dXJuZWQgcGFja2FnZSBpcyByZXR1cm5lZCBpbiBidWYsIHdpdGggdGhlIGxlbmd0aCBvZgotICAgdGhlIG5hbWUgaW4gKnBfYnVmbGVuLgorICAgVGhlIG5hbWUgb2YgdGhlIHJldHVybmVkIHBhY2thZ2UgaXMgcmV0dXJuZWQgaW4gKnBfbmFtZS4KIAogICAgSWYgZ2xvYmFscyBkb2Vzbid0IGNvbWUgZnJvbSBhIHBhY2thZ2Ugb3IgYSBtb2R1bGUgaW4gYSBwYWNrYWdlLCBvciBhCiAgICBjb3JyZXNwb25kaW5nIGVudHJ5IGlzIG5vdCBmb3VuZCBpbiBzeXMubW9kdWxlcywgUHlfTm9uZSBpcyByZXR1cm5lZC4KICovCiBzdGF0aWMgUHlPYmplY3QgKgotZ2V0X3BhcmVudChQeU9iamVjdCAqZ2xvYmFscywgY2hhciAqYnVmLCBQeV9zc2l6ZV90ICpwX2J1ZmxlbiwgaW50IGxldmVsKQorZ2V0X3BhcmVudChQeU9iamVjdCAqZ2xvYmFscywgUHlPYmplY3QgKipwX25hbWUsIGludCBsZXZlbCkKIHsKKyAgICBQeU9iamVjdCAqbmFtZW9iajsKKwogICAgIHN0YXRpYyBQeU9iamVjdCAqbmFtZXN0ciA9IE5VTEw7CiAgICAgc3RhdGljIFB5T2JqZWN0ICpwYXRoc3RyID0gTlVMTDsKICAgICBzdGF0aWMgUHlPYmplY3QgKnBrZ3N0ciA9IE5VTEw7CkBAIC0yNTE3LDcgKzI5NDgsNyBAQAogICAgIGludCBvcmlnX2xldmVsID0gbGV2ZWw7CiAKICAgICBpZiAoZ2xvYmFscyA9PSBOVUxMIHx8ICFQeURpY3RfQ2hlY2soZ2xvYmFscykgfHwgIWxldmVsKQotICAgICAgICByZXR1cm4gUHlfTm9uZTsKKyAgICAgICAgZ290byByZXR1cm5fbm9uZTsKIAogICAgIGlmIChuYW1lc3RyID09IE5VTEwpIHsKICAgICAgICAgbmFtZXN0ciA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX25hbWVfXyIpOwpAQCAtMjUzNSwyNjAgKzI5NjYsMjc0IEBACiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICAqYnVmID0gJ1wwJzsKLSAgICAqcF9idWZsZW4gPSAwOwogICAgIHBrZ25hbWUgPSBQeURpY3RfR2V0SXRlbShnbG9iYWxzLCBwa2dzdHIpOwogCiAgICAgaWYgKChwa2duYW1lICE9IE5VTEwpICYmIChwa2duYW1lICE9IFB5X05vbmUpKSB7CiAgICAgICAgIC8qIF9fcGFja2FnZV9fIGlzIHNldCwgc28gdXNlIGl0ICovCi0gICAgICAgIGNoYXIgKnBrZ25hbWVfc3RyOwotICAgICAgICBQeV9zc2l6ZV90IGxlbjsKLQogICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhwa2duYW1lKSkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9fcGFja2FnZV9fIHNldCB0byBub24tc3RyaW5nIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICBwa2duYW1lX3N0ciA9IF9QeVVuaWNvZGVfQXNTdHJpbmdBbmRTaXplKHBrZ25hbWUsICZsZW4pOwotICAgICAgICBpZiAobGVuID09IDApIHsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHBrZ25hbWUpID09IDApIHsKICAgICAgICAgICAgIGlmIChsZXZlbCA+IDApIHsKICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgIkF0dGVtcHRlZCByZWxhdGl2ZSBpbXBvcnQgaW4gbm9uLXBhY2thZ2UiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJldHVybiBQeV9Ob25lOworICAgICAgICAgICAgZ290byByZXR1cm5fbm9uZTsKICAgICAgICAgfQotICAgICAgICBpZiAobGVuID4gTUFYUEFUSExFTikgewotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIlBhY2thZ2UgbmFtZSB0b28gbG9uZyIpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgc3RyY3B5KGJ1ZiwgcGtnbmFtZV9zdHIpOworICAgICAgICBQeV9JTkNSRUYocGtnbmFtZSk7CisgICAgICAgIG5hbWVvYmogPSBwa2duYW1lOwogICAgIH0gZWxzZSB7CiAgICAgICAgIC8qIF9fcGFja2FnZV9fIG5vdCBzZXQsIHNvIGZpZ3VyZSBpdCBvdXQgYW5kIHNldCBpdCAqLwogICAgICAgICBtb2RuYW1lID0gUHlEaWN0X0dldEl0ZW0oZ2xvYmFscywgbmFtZXN0cik7CiAgICAgICAgIGlmIChtb2RuYW1lID09IE5VTEwgfHwgIVB5VW5pY29kZV9DaGVjayhtb2RuYW1lKSkKLSAgICAgICAgICAgIHJldHVybiBQeV9Ob25lOworICAgICAgICAgICAgZ290byByZXR1cm5fbm9uZTsKIAogICAgICAgICBtb2RwYXRoID0gUHlEaWN0X0dldEl0ZW0oZ2xvYmFscywgcGF0aHN0cik7CiAgICAgICAgIGlmIChtb2RwYXRoICE9IE5VTEwpIHsKICAgICAgICAgICAgIC8qIF9fcGF0aF9fIGlzIHNldCwgc28gbW9kbmFtZSBpcyBhbHJlYWR5IHRoZSBwYWNrYWdlIG5hbWUgKi8KLSAgICAgICAgICAgIGNoYXIgKm1vZG5hbWVfc3RyOwotICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICBpbnQgZXJyb3I7CiAKLSAgICAgICAgICAgIG1vZG5hbWVfc3RyID0gX1B5VW5pY29kZV9Bc1N0cmluZ0FuZFNpemUobW9kbmFtZSwgJmxlbik7Ci0gICAgICAgICAgICBpZiAobGVuID4gTUFYUEFUSExFTikgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTW9kdWxlIG5hbWUgdG9vIGxvbmciKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHN0cmNweShidWYsIG1vZG5hbWVfc3RyKTsKICAgICAgICAgICAgIGVycm9yID0gUHlEaWN0X1NldEl0ZW0oZ2xvYmFscywgcGtnc3RyLCBtb2RuYW1lKTsKICAgICAgICAgICAgIGlmIChlcnJvcikgewogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ291bGQgbm90IHNldCBfX3BhY2thZ2VfXyIpOwogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlfSU5DUkVGKG1vZG5hbWUpOworICAgICAgICAgICAgbmFtZW9iaiA9IG1vZG5hbWU7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvKiBOb3JtYWwgbW9kdWxlLCBzbyB3b3JrIG91dCB0aGUgcGFja2FnZSBuYW1lIGlmIGFueSAqLwotICAgICAgICAgICAgY2hhciAqc3RhcnQgPSBfUHlVbmljb2RlX0FzU3RyaW5nKG1vZG5hbWUpOwotICAgICAgICAgICAgY2hhciAqbGFzdGRvdCA9IHN0cnJjaHIoc3RhcnQsICcuJyk7Ci0gICAgICAgICAgICBzaXplX3QgbGVuOwotICAgICAgICAgICAgaW50IGVycm9yOwotICAgICAgICAgICAgaWYgKGxhc3Rkb3QgPT0gTlVMTCAmJiBsZXZlbCA+IDApIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgIkF0dGVtcHRlZCByZWxhdGl2ZSBpbXBvcnQgaW4gbm9uLXBhY2thZ2UiKTsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOworICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0ZpbmRDaGFyKG1vZG5hbWUsICcuJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChtb2RuYW1lKSwgLTEpOworICAgICAgICAgICAgaWYgKGxlbiA9PSAtMikKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChsYXN0ZG90ID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBlcnJvciA9IFB5RGljdF9TZXRJdGVtKGdsb2JhbHMsIHBrZ3N0ciwgUHlfTm9uZSk7Ci0gICAgICAgICAgICAgICAgaWYgKGVycm9yKSB7CisgICAgICAgICAgICBpZiAobGVuIDwgMCkgeworICAgICAgICAgICAgICAgIGlmIChsZXZlbCA+IDApIHsKKyAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiQXR0ZW1wdGVkIHJlbGF0aXZlIGltcG9ydCBpbiBub24tcGFja2FnZSIpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtKGdsb2JhbHMsIHBrZ3N0ciwgUHlfTm9uZSkpIHsKICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAiQ291bGQgbm90IHNldCBfX3BhY2thZ2VfXyIpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgcmV0dXJuIFB5X05vbmU7CisgICAgICAgICAgICAgICAgZ290byByZXR1cm5fbm9uZTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGxlbiA9IGxhc3Rkb3QgLSBzdGFydDsKLSAgICAgICAgICAgIGlmIChsZW4gPj0gTUFYUEFUSExFTikgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTW9kdWxlIG5hbWUgdG9vIGxvbmciKTsKKyAgICAgICAgICAgIHBrZ25hbWUgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKG1vZG5hbWUsIDAsIGxlbik7CisgICAgICAgICAgICBpZiAocGtnbmFtZSA9PSBOVUxMKQogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgc3RybmNweShidWYsIHN0YXJ0LCBsZW4pOwotICAgICAgICAgICAgYnVmW2xlbl0gPSAnXDAnOwotICAgICAgICAgICAgcGtnbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKGJ1Zik7Ci0gICAgICAgICAgICBpZiAocGtnbmFtZSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBlcnJvciA9IFB5RGljdF9TZXRJdGVtKGdsb2JhbHMsIHBrZ3N0ciwgcGtnbmFtZSk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocGtnbmFtZSk7Ci0gICAgICAgICAgICBpZiAoZXJyb3IpIHsKKyAgICAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbShnbG9iYWxzLCBwa2dzdHIsIHBrZ25hbWUpKSB7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHBrZ25hbWUpOwogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ291bGQgbm90IHNldCBfX3BhY2thZ2VfXyIpOwogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgfQorICAgICAgICAgICAgbmFtZW9iaiA9IHBrZ25hbWU7CiAgICAgICAgIH0KICAgICB9Ci0gICAgd2hpbGUgKC0tbGV2ZWwgPiAwKSB7Ci0gICAgICAgIGNoYXIgKmRvdCA9IHN0cnJjaHIoYnVmLCAnLicpOwotICAgICAgICBpZiAoZG90ID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICJBdHRlbXB0ZWQgcmVsYXRpdmUgaW1wb3J0IGJleW9uZCAiCi0gICAgICAgICAgICAgICAgInRvcGxldmVsIHBhY2thZ2UiKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgICpkb3QgPSAnXDAnOwotICAgIH0KLSAgICAqcF9idWZsZW4gPSBzdHJsZW4oYnVmKTsKLQotICAgIG1vZHVsZXMgPSBQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCk7Ci0gICAgcGFyZW50ID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcobW9kdWxlcywgYnVmKTsKLSAgICBpZiAocGFyZW50ID09IE5VTEwpIHsKLSAgICAgICAgaWYgKG9yaWdfbGV2ZWwgPCAxKSB7Ci0gICAgICAgICAgICBQeU9iamVjdCAqZXJyX21zZyA9IFB5Qnl0ZXNfRnJvbUZvcm1hdCgKLSAgICAgICAgICAgICAgICAiUGFyZW50IG1vZHVsZSAnJS4yMDBzJyBub3QgZm91bmQgIgotICAgICAgICAgICAgICAgICJ3aGlsZSBoYW5kbGluZyBhYnNvbHV0ZSBpbXBvcnQiLCBidWYpOwotICAgICAgICAgICAgaWYgKGVycl9tc2cgPT0gTlVMTCkgeworICAgIGlmIChsZXZlbCA+IDEpIHsKKyAgICAgICAgUHlfc3NpemVfdCBkb3QsIGVuZCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWVvYmopOworICAgICAgICBQeU9iamVjdCAqbmV3bmFtZTsKKyAgICAgICAgd2hpbGUgKC0tbGV2ZWwgPiAwKSB7CisgICAgICAgICAgICBkb3QgPSBQeVVuaWNvZGVfRmluZENoYXIobmFtZW9iaiwgJy4nLCAwLCBlbmQsIC0xKTsKKyAgICAgICAgICAgIGlmIChkb3QgPT0gLTIpIHsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYobmFtZW9iaik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoIVB5RXJyX1dhcm5FeChQeUV4Y19SdW50aW1lV2FybmluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQXNTdHJpbmcoZXJyX21zZyksIDEpKSB7Ci0gICAgICAgICAgICAgICAgKmJ1ZiA9ICdcMCc7Ci0gICAgICAgICAgICAgICAgKnBfYnVmbGVuID0gMDsKLSAgICAgICAgICAgICAgICBwYXJlbnQgPSBQeV9Ob25lOworICAgICAgICAgICAgaWYgKGRvdCA8IDApIHsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYobmFtZW9iaik7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICJBdHRlbXB0ZWQgcmVsYXRpdmUgaW1wb3J0IGJleW9uZCAiCisgICAgICAgICAgICAgICAgICAgICJ0b3BsZXZlbCBwYWNrYWdlIik7CisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBQeV9ERUNSRUYoZXJyX21zZyk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfU3lzdGVtRXJyb3IsCi0gICAgICAgICAgICAgICAgIlBhcmVudCBtb2R1bGUgJyUuMjAwcycgbm90IGxvYWRlZCwgIgotICAgICAgICAgICAgICAgICJjYW5ub3QgcGVyZm9ybSByZWxhdGl2ZSBpbXBvcnQiLCBidWYpOworICAgICAgICAgICAgZW5kID0gZG90OwogICAgICAgICB9CisgICAgICAgIG5ld25hbWUgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKG5hbWVvYmosIDAsIGVuZCk7CisgICAgICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKKyAgICAgICAgaWYgKG5ld25hbWUgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBuYW1lb2JqID0gbmV3bmFtZTsKICAgICB9CisKKyAgICBtb2R1bGVzID0gUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpOworICAgIHBhcmVudCA9IFB5RGljdF9HZXRJdGVtKG1vZHVsZXMsIG5hbWVvYmopOworICAgIGlmIChwYXJlbnQgPT0gTlVMTCkgeworICAgICAgICBpbnQgZXJyOworCisgICAgICAgIGlmIChvcmlnX2xldmVsID49IDEpIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19TeXN0ZW1FcnJvciwKKyAgICAgICAgICAgICAgICAiUGFyZW50IG1vZHVsZSAlUiBub3QgbG9hZGVkLCAiCisgICAgICAgICAgICAgICAgImNhbm5vdCBwZXJmb3JtIHJlbGF0aXZlIGltcG9ydCIsIG5hbWVvYmopOworICAgICAgICAgICAgUHlfREVDUkVGKG5hbWVvYmopOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKworICAgICAgICBlcnIgPSBQeUVycl9XYXJuRm9ybWF0KAorICAgICAgICAgICAgUHlFeGNfUnVudGltZVdhcm5pbmcsIDEsCisgICAgICAgICAgICAiUGFyZW50IG1vZHVsZSAlUiBub3QgZm91bmQgd2hpbGUgaGFuZGxpbmcgYWJzb2x1dGUgaW1wb3J0IiwKKyAgICAgICAgICAgIG5hbWVvYmopOworICAgICAgICBQeV9ERUNSRUYobmFtZW9iaik7CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKworICAgICAgICBnb3RvIHJldHVybl9ub25lOworICAgIH0KKyAgICAqcF9uYW1lID0gbmFtZW9iajsKICAgICByZXR1cm4gcGFyZW50OwogICAgIC8qIFdlIGV4cGVjdCwgYnV0IGNhbid0IGd1YXJhbnRlZSwgaWYgcGFyZW50ICE9IE5vbmUsIHRoYXQ6Ci0gICAgICAgLSBwYXJlbnQuX19uYW1lX18gPT0gYnVmCisgICAgICAgLSBwYXJlbnQuX19uYW1lX18gPT0gbmFtZQogICAgICAgIC0gcGFyZW50Ll9fZGljdF9fIGlzIGdsb2JhbHMKICAgICAgICBJZiB0aGlzIGlzIHZpb2xhdGVkLi4uICBXaG8gY2FyZXM/ICovCisKK3JldHVybl9ub25lOgorICAgIG5hbWVvYmogPSBQeVVuaWNvZGVfTmV3KDAsIDApOworICAgIGlmIChuYW1lb2JqID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgICpwX25hbWUgPSBuYW1lb2JqOworICAgIHJldHVybiBQeV9Ob25lOwogfQogCiAvKiBhbHRtb2QgaXMgZWl0aGVyIE5vbmUgb3Igc2FtZSBhcyBtb2QgKi8KIHN0YXRpYyBQeU9iamVjdCAqCi1sb2FkX25leHQoUHlPYmplY3QgKm1vZCwgUHlPYmplY3QgKmFsdG1vZCwgY2hhciAqKnBfbmFtZSwgY2hhciAqYnVmLAotICAgICAgICAgIFB5X3NzaXplX3QgKnBfYnVmbGVuKQorbG9hZF9uZXh0KFB5T2JqZWN0ICptb2QsIFB5T2JqZWN0ICphbHRtb2QsCisgICAgICAgICAgUHlPYmplY3QgKmlucHV0bmFtZSwgUHlPYmplY3QgKipwX291dHB1dG5hbWUsCisgICAgICAgICAgUHlPYmplY3QgKipwX3ByZWZpeCkKIHsKLSAgICBjaGFyICpuYW1lID0gKnBfbmFtZTsKLSAgICBjaGFyICpkb3QgPSBzdHJjaHIobmFtZSwgJy4nKTsKLSAgICBzaXplX3QgbGVuOwotICAgIGNoYXIgKnA7Ci0gICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBQeV9zc2l6ZV90IGRvdDsKKyAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBQeU9iamVjdCAqZnVsbG5hbWUsICpuYW1lID0gTlVMTCwgKnJlc3VsdDsKIAotICAgIGlmIChzdHJsZW4obmFtZSkgPT0gMCkgeworICAgICpwX291dHB1dG5hbWUgPSBOVUxMOworCisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoaW5wdXRuYW1lKTsKKyAgICBpZiAobGVuID09IDApIHsKICAgICAgICAgLyogY29tcGxldGVseSBlbXB0eSBtb2R1bGUgbmFtZSBzaG91bGQgb25seSBoYXBwZW4gaW4KICAgICAgICAgICAgJ2Zyb20gLiBpbXBvcnQnIChvciAnX19pbXBvcnRfXygiIiknKSovCiAgICAgICAgIFB5X0lOQ1JFRihtb2QpOwotICAgICAgICAqcF9uYW1lID0gTlVMTDsKICAgICAgICAgcmV0dXJuIG1vZDsKICAgICB9CiAKLSAgICBpZiAoZG90ID09IE5VTEwpIHsKLSAgICAgICAgKnBfbmFtZSA9IE5VTEw7Ci0gICAgICAgIGxlbiA9IHN0cmxlbihuYW1lKTsKKworICAgIGRvdCA9IFB5VW5pY29kZV9GaW5kQ2hhcihpbnB1dG5hbWUsICcuJywgMCwgbGVuLCAxKTsKKyAgICBpZiAoZG90ID49IDApIHsKKyAgICAgICAgbGVuID0gZG90OworICAgICAgICBpZiAobGVuID09IDApIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJFbXB0eSBtb2R1bGUgbmFtZSIpOworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8qIG5hbWUgPSBpbnB1dG5hbWVbOmxlbl0gKi8KKyAgICBuYW1lID0gUHlVbmljb2RlX1N1YnN0cmluZyhpbnB1dG5hbWUsIDAsIGxlbik7CisgICAgaWYgKG5hbWUgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcjsKKworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSCgqcF9wcmVmaXgpKSB7CisgICAgICAgIC8qIGZ1bGxuYW1lID0gcHJlZml4ICsgIi4iICsgbmFtZSAqLworICAgICAgICBmdWxsbmFtZSA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlVS4lVSIsICpwX3ByZWZpeCwgbmFtZSk7CisgICAgICAgIGlmIChmdWxsbmFtZSA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgICpwX25hbWUgPSBkb3QrMTsKLSAgICAgICAgbGVuID0gZG90LW5hbWU7Ci0gICAgfQotICAgIGlmIChsZW4gPT0gMCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJFbXB0eSBtb2R1bGUgbmFtZSIpOwotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgZnVsbG5hbWUgPSBuYW1lOworICAgICAgICBQeV9JTkNSRUYoZnVsbG5hbWUpOwogICAgIH0KIAotICAgIHAgPSBidWYgKyAqcF9idWZsZW47Ci0gICAgaWYgKHAgIT0gYnVmKQotICAgICAgICAqcCsrID0gJy4nOwotICAgIGlmIChwK2xlbi1idWYgPj0gTUFYUEFUSExFTikgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJNb2R1bGUgbmFtZSB0b28gbG9uZyIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgc3RybmNweShwLCBuYW1lLCBsZW4pOwotICAgIHBbbGVuXSA9ICdcMCc7Ci0gICAgKnBfYnVmbGVuID0gcCtsZW4tYnVmOwotCi0gICAgcmVzdWx0ID0gaW1wb3J0X3N1Ym1vZHVsZShtb2QsIHAsIGJ1Zik7CisgICAgcmVzdWx0ID0gaW1wb3J0X3N1Ym1vZHVsZShtb2QsIG5hbWUsIGZ1bGxuYW1lKTsKKyAgICBQeV9ERUNSRUYoKnBfcHJlZml4KTsKKyAgICAvKiBUcmFuc2ZlciByZWZlcmVuY2UuICovCisgICAgKnBfcHJlZml4ID0gZnVsbG5hbWU7CiAgICAgaWYgKHJlc3VsdCA9PSBQeV9Ob25lICYmIGFsdG1vZCAhPSBtb2QpIHsKICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CiAgICAgICAgIC8qIEhlcmUsIGFsdG1vZCBtdXN0IGJlIE5vbmUgYW5kIG1vZCBtdXN0IG5vdCBiZSBOb25lICovCi0gICAgICAgIHJlc3VsdCA9IGltcG9ydF9zdWJtb2R1bGUoYWx0bW9kLCBwLCBwKTsKKyAgICAgICAgcmVzdWx0ID0gaW1wb3J0X3N1Ym1vZHVsZShhbHRtb2QsIG5hbWUsIG5hbWUpOwogICAgICAgICBpZiAocmVzdWx0ICE9IE5VTEwgJiYgcmVzdWx0ICE9IFB5X05vbmUpIHsKLSAgICAgICAgICAgIGlmIChtYXJrX21pc3MoYnVmKSAhPSAwKSB7CisgICAgICAgICAgICBpZiAobWFya19taXNzKCpwX3ByZWZpeCkgIT0gMCkgewogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBzdHJuY3B5KGJ1ZiwgbmFtZSwgbGVuKTsKLSAgICAgICAgICAgIGJ1ZltsZW5dID0gJ1wwJzsKLSAgICAgICAgICAgICpwX2J1ZmxlbiA9IGxlbjsKKyAgICAgICAgICAgIFB5X0RFQ1JFRigqcF9wcmVmaXgpOworICAgICAgICAgICAgKnBfcHJlZml4ID0gbmFtZTsKKyAgICAgICAgICAgIFB5X0lOQ1JFRigqcF9wcmVmaXgpOwogICAgICAgICB9CiAgICAgfQogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICBpZiAocmVzdWx0ID09IFB5X05vbmUpIHsKICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19JbXBvcnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJObyBtb2R1bGUgbmFtZWQgJS4yMDBzIiwgbmFtZSk7Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgICAgICAgICAgIk5vIG1vZHVsZSBuYW1lZCAlUiIsIGlucHV0bmFtZSk7CisgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQogCisgICAgaWYgKGRvdCA+PSAwKSB7CisgICAgICAgICpwX291dHB1dG5hbWUgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKGlucHV0bmFtZSwgZG90KzEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKGlucHV0bmFtZSkpOworICAgICAgICBpZiAoKnBfb3V0cHV0bmFtZSA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBQeV9ERUNSRUYobmFtZSk7CiAgICAgcmV0dXJuIHJlc3VsdDsKKworZXJyb3I6CisgICAgUHlfWERFQ1JFRihuYW1lKTsKKyAgICByZXR1cm4gTlVMTDsKIH0KIAogc3RhdGljIGludAotbWFya19taXNzKGNoYXIgKm5hbWUpCittYXJrX21pc3MoUHlPYmplY3QgKm5hbWUpCiB7CiAgICAgUHlPYmplY3QgKm1vZHVsZXMgPSBQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCk7Ci0gICAgcmV0dXJuIFB5RGljdF9TZXRJdGVtU3RyaW5nKG1vZHVsZXMsIG5hbWUsIFB5X05vbmUpOworICAgIHJldHVybiBQeURpY3RfU2V0SXRlbShtb2R1bGVzLCBuYW1lLCBQeV9Ob25lKTsKIH0KIAogc3RhdGljIGludAotZW5zdXJlX2Zyb21saXN0KFB5T2JqZWN0ICptb2QsIFB5T2JqZWN0ICpmcm9tbGlzdCwgY2hhciAqYnVmLCBQeV9zc2l6ZV90IGJ1ZmxlbiwKK2Vuc3VyZV9mcm9tbGlzdChQeU9iamVjdCAqbW9kLCBQeU9iamVjdCAqZnJvbWxpc3QsIFB5T2JqZWN0ICpuYW1lLAogICAgICAgICAgICAgICAgIGludCByZWN1cnNpdmUpCiB7CiAgICAgaW50IGk7CisgICAgUHlPYmplY3QgKmZ1bGxuYW1lOworICAgIFB5X3NzaXplX3QgZnJvbWxpc3RfbGVuOwogCi0gICAgaWYgKCFQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG1vZCwgIl9fcGF0aF9fIikpCisgICAgaWYgKCFfUHlPYmplY3RfSGFzQXR0cklkKG1vZCwgJlB5SWRfX19wYXRoX18pKQogICAgICAgICByZXR1cm4gMTsKIAotICAgIGZvciAoaSA9IDA7IDsgaSsrKSB7CisgICAgZnJvbWxpc3RfbGVuID0gUHlTZXF1ZW5jZV9TaXplKGZyb21saXN0KTsKKworICAgIGZvciAoaSA9IDA7IGkgPCBmcm9tbGlzdF9sZW47IGkrKykgewogICAgICAgICBQeU9iamVjdCAqaXRlbSA9IFB5U2VxdWVuY2VfR2V0SXRlbShmcm9tbGlzdCwgaSk7CiAgICAgICAgIGludCBoYXNpdDsKLSAgICAgICAgaWYgKGl0ZW0gPT0gTlVMTCkgewotICAgICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfSW5kZXhFcnJvcikpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwotICAgICAgICAgICAgICAgIHJldHVybiAxOwotICAgICAgICAgICAgfQorICAgICAgICBpZiAoaXRlbSA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIH0KICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soaXRlbSkpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkl0ZW0gaW4gYGBmcm9tIGxpc3QnJyBub3QgYSBzdHJpbmciKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeVVuaWNvZGVfQVNfVU5JQ09ERShpdGVtKVswXSA9PSAnKicpIHsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEX0NIQVIoaXRlbSwgMCkgPT0gJyonKSB7CiAgICAgICAgICAgICBQeU9iamVjdCAqYWxsOworICAgICAgICAgICAgX1B5X0lERU5USUZJRVIoX19hbGxfXyk7CiAgICAgICAgICAgICBQeV9ERUNSRUYoaXRlbSk7CiAgICAgICAgICAgICAvKiBTZWUgaWYgdGhlIHBhY2thZ2UgZGVmaW5lcyBfX2FsbF9fICovCiAgICAgICAgICAgICBpZiAocmVjdXJzaXZlKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOyAvKiBBdm9pZCBlbmRsZXNzIHJlY3Vyc2lvbiAqLwotICAgICAgICAgICAgYWxsID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhtb2QsICJfX2FsbF9fIik7CisgICAgICAgICAgICBhbGwgPSBfUHlPYmplY3RfR2V0QXR0cklkKG1vZCwgJlB5SWRfX19hbGxfXyk7CiAgICAgICAgICAgICBpZiAoYWxsID09IE5VTEwpCiAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIGludCByZXQgPSBlbnN1cmVfZnJvbWxpc3QobW9kLCBhbGwsIGJ1ZiwgYnVmbGVuLCAxKTsKKyAgICAgICAgICAgICAgICBpbnQgcmV0ID0gZW5zdXJlX2Zyb21saXN0KG1vZCwgYWxsLCBuYW1lLCAxKTsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoYWxsKTsKICAgICAgICAgICAgICAgICBpZiAoIXJldCkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CkBAIC0yNzk3LDI3ICszMjQyLDE0IEBACiAgICAgICAgIH0KICAgICAgICAgaGFzaXQgPSBQeU9iamVjdF9IYXNBdHRyKG1vZCwgaXRlbSk7CiAgICAgICAgIGlmICghaGFzaXQpIHsKLSAgICAgICAgICAgIFB5T2JqZWN0ICppdGVtODsKLSAgICAgICAgICAgIGNoYXIgKnN1Ym5hbWU7CiAgICAgICAgICAgICBQeU9iamVjdCAqc3VibW9kOwotICAgICAgICAgICAgY2hhciAqcDsKLSAgICAgICAgICAgIGl0ZW04ID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChpdGVtKTsKLSAgICAgICAgICAgIGlmICghaXRlbTgpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIkNhbm5vdCBlbmNvZGUgcGF0aCBpdGVtIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICBmdWxsbmFtZSA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlVS4lVSIsIG5hbWUsIGl0ZW0pOworICAgICAgICAgICAgaWYgKGZ1bGxuYW1lICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBzdWJtb2QgPSBpbXBvcnRfc3VibW9kdWxlKG1vZCwgaXRlbSwgZnVsbG5hbWUpOworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihmdWxsbmFtZSk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBzdWJuYW1lID0gUHlCeXRlc19BU19TVFJJTkcoaXRlbTgpOwotICAgICAgICAgICAgaWYgKGJ1ZmxlbiArIHN0cmxlbihzdWJuYW1lKSA+PSBNQVhQQVRITEVOKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNb2R1bGUgbmFtZSB0b28gbG9uZyIpOwotICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHAgPSBidWYgKyBidWZsZW47Ci0gICAgICAgICAgICAqcCsrID0gJy4nOwotICAgICAgICAgICAgc3RyY3B5KHAsIHN1Ym5hbWUpOwotICAgICAgICAgICAgc3VibW9kID0gaW1wb3J0X3N1Ym1vZHVsZShtb2QsIHN1Ym5hbWUsIGJ1Zik7Ci0gICAgICAgICAgICBQeV9ERUNSRUYoaXRlbTgpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHN1Ym1vZCA9IE5VTEw7CiAgICAgICAgICAgICBQeV9YREVDUkVGKHN1Ym1vZCk7CiAgICAgICAgICAgICBpZiAoc3VibW9kID09IE5VTEwpIHsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoaXRlbSk7CkBAIC0yODI3LDEyICszMjU5LDEyIEBACiAgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKICAgICB9CiAKLSAgICAvKiBOT1RSRUFDSEVEICovCisgICAgcmV0dXJuIDE7CiB9CiAKIHN0YXRpYyBpbnQKLWFkZF9zdWJtb2R1bGUoUHlPYmplY3QgKm1vZCwgUHlPYmplY3QgKnN1Ym1vZCwgY2hhciAqZnVsbG5hbWUsIGNoYXIgKnN1Ym5hbWUsCi0gICAgICAgICAgICAgIFB5T2JqZWN0ICptb2R1bGVzKQorYWRkX3N1Ym1vZHVsZShQeU9iamVjdCAqbW9kLCBQeU9iamVjdCAqc3VibW9kLCBQeU9iamVjdCAqZnVsbG5hbWUsCisgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWJuYW1lLCBQeU9iamVjdCAqbW9kdWxlcykKIHsKICAgICBpZiAobW9kID09IFB5X05vbmUpCiAgICAgICAgIHJldHVybiAxOwpAQCAtMjg0Myw3ICszMjc1LDcgQEAKICAgICAgICBsb2FkIGZhaWxlZCB3aXRoIGEgU3ludGF4RXJyb3IgLS0gdGhlbiB0aGVyZSdzIG5vIHRyYWNlIGluCiAgICAgICAgc3lzLm1vZHVsZXMuICBJbiB0aGF0IGNhc2UsIG9mIGNvdXJzZSwgZG8gbm90aGluZyBleHRyYS4pICovCiAgICAgaWYgKHN1Ym1vZCA9PSBOVUxMKSB7Ci0gICAgICAgIHN1Ym1vZCA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKG1vZHVsZXMsIGZ1bGxuYW1lKTsKKyAgICAgICAgc3VibW9kID0gUHlEaWN0X0dldEl0ZW0obW9kdWxlcywgZnVsbG5hbWUpOwogICAgICAgICBpZiAoc3VibW9kID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gMTsKICAgICB9CkBAIC0yODU0LDY4ICszMjg2LDY2IEBACiAgICAgICAgIFB5T2JqZWN0ICpkaWN0ID0gUHlNb2R1bGVfR2V0RGljdChtb2QpOwogICAgICAgICBpZiAoIWRpY3QpCiAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGRpY3QsIHN1Ym5hbWUsIHN1Ym1vZCkgPCAwKQorICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW0oZGljdCwgc3VibmFtZSwgc3VibW9kKSA8IDApCiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKG1vZCwgc3VibmFtZSwgc3VibW9kKSA8IDApCisgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyKG1vZCwgc3VibmFtZSwgc3VibW9kKSA8IDApCiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICB9CiAgICAgcmV0dXJuIDE7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCi1pbXBvcnRfc3VibW9kdWxlKFB5T2JqZWN0ICptb2QsIGNoYXIgKnN1Ym5hbWUsIGNoYXIgKmZ1bGxuYW1lKQoraW1wb3J0X3N1Ym1vZHVsZShQeU9iamVjdCAqbW9kLCBQeU9iamVjdCAqc3VibmFtZSwgUHlPYmplY3QgKmZ1bGxuYW1lKQogewogICAgIFB5T2JqZWN0ICptb2R1bGVzID0gUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpOwotICAgIFB5T2JqZWN0ICptID0gTlVMTDsKKyAgICBQeU9iamVjdCAqbSA9IE5VTEwsICpidWZvYmosICpwYXRoX2xpc3QsICpsb2FkZXI7CisgICAgc3RydWN0IGZpbGVkZXNjciAqZmRwOworICAgIEZJTEUgKmZwOwogCiAgICAgLyogUmVxdWlyZToKICAgICAgICBpZiBtb2QgPT0gTm9uZTogc3VibmFtZSA9PSBmdWxsbmFtZQogICAgICAgIGVsc2U6IG1vZC5fX25hbWVfXyArICIuIiArIHN1Ym5hbWUgPT0gZnVsbG5hbWUKICAgICAqLwogCi0gICAgaWYgKChtID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcobW9kdWxlcywgZnVsbG5hbWUpKSAhPSBOVUxMKSB7CisgICAgaWYgKChtID0gUHlEaWN0X0dldEl0ZW0obW9kdWxlcywgZnVsbG5hbWUpKSAhPSBOVUxMKSB7CiAgICAgICAgIFB5X0lOQ1JFRihtKTsKKyAgICAgICAgcmV0dXJuIG07CiAgICAgfQorCisgICAgaWYgKG1vZCA9PSBQeV9Ob25lKQorICAgICAgICBwYXRoX2xpc3QgPSBOVUxMOwogICAgIGVsc2UgewotICAgICAgICBQeU9iamVjdCAqcGF0aCwgKmxvYWRlciA9IE5VTEw7Ci0gICAgICAgIGNoYXIgYnVmW01BWFBBVEhMRU4rMV07Ci0gICAgICAgIHN0cnVjdCBmaWxlZGVzY3IgKmZkcDsKLSAgICAgICAgRklMRSAqZnAgPSBOVUxMOwotCi0gICAgICAgIGlmIChtb2QgPT0gUHlfTm9uZSkKLSAgICAgICAgICAgIHBhdGggPSBOVUxMOwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIHBhdGggPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG1vZCwgIl9fcGF0aF9fIik7Ci0gICAgICAgICAgICBpZiAocGF0aCA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIFB5X05vbmU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLQotICAgICAgICBidWZbMF0gPSAnXDAnOwotICAgICAgICBmZHAgPSBmaW5kX21vZHVsZShmdWxsbmFtZSwgc3VibmFtZSwgcGF0aCwgYnVmLCBNQVhQQVRITEVOKzEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZmcCwgJmxvYWRlcik7Ci0gICAgICAgIFB5X1hERUNSRUYocGF0aCk7Ci0gICAgICAgIGlmIChmZHAgPT0gTlVMTCkgewotICAgICAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0ltcG9ydEVycm9yKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgcGF0aF9saXN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZChtb2QsICZQeUlkX19fcGF0aF9fKTsKKyAgICAgICAgaWYgKHBhdGhfbGlzdCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgICAgICAgICAgcmV0dXJuIFB5X05vbmU7CiAgICAgICAgIH0KLSAgICAgICAgbSA9IGxvYWRfbW9kdWxlKGZ1bGxuYW1lLCBmcCwgYnVmLCBmZHAtPnR5cGUsIGxvYWRlcik7Ci0gICAgICAgIFB5X1hERUNSRUYobG9hZGVyKTsKLSAgICAgICAgaWYgKGZwKQotICAgICAgICAgICAgZmNsb3NlKGZwKTsKLSAgICAgICAgaWYgKCFhZGRfc3VibW9kdWxlKG1vZCwgbSwgZnVsbG5hbWUsIHN1Ym5hbWUsIG1vZHVsZXMpKSB7Ci0gICAgICAgICAgICBQeV9YREVDUkVGKG0pOwotICAgICAgICAgICAgbSA9IE5VTEw7Ci0gICAgICAgIH0KICAgICB9CiAKKyAgICBmZHAgPSBmaW5kX21vZHVsZShmdWxsbmFtZSwgc3VibmFtZSwgcGF0aF9saXN0LAorICAgICAgICAgICAgICAgICAgICAgICZidWZvYmosICZmcCwgJmxvYWRlcik7CisgICAgUHlfWERFQ1JFRihwYXRoX2xpc3QpOworICAgIGlmIChmZHAgPT0gTlVMTCkgeworICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfSW1wb3J0RXJyb3IpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgcmV0dXJuIFB5X05vbmU7CisgICAgfQorICAgIG0gPSBsb2FkX21vZHVsZShmdWxsbmFtZSwgZnAsIGJ1Zm9iaiwgZmRwLT50eXBlLCBsb2FkZXIpOworICAgIFB5X1hERUNSRUYoYnVmb2JqKTsKKyAgICBQeV9YREVDUkVGKGxvYWRlcik7CisgICAgaWYgKGZwKQorICAgICAgICBmY2xvc2UoZnApOworICAgIGlmIChtID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICghYWRkX3N1Ym1vZHVsZShtb2QsIG0sIGZ1bGxuYW1lLCBzdWJuYW1lLCBtb2R1bGVzKSkgeworICAgICAgICBQeV9YREVDUkVGKG0pOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAgICAgcmV0dXJuIG07CiB9CiAKQEAgLTI5MjksMTIgKzMzNTksMTIgQEAKICAgICBQeUludGVycHJldGVyU3RhdGUgKmludGVycCA9IFB5VGhyZWFkU3RhdGVfR2V0KCktPmludGVycDsKICAgICBQeU9iamVjdCAqbW9kdWxlc19yZWxvYWRpbmcgPSBpbnRlcnAtPm1vZHVsZXNfcmVsb2FkaW5nOwogICAgIFB5T2JqZWN0ICptb2R1bGVzID0gUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpOwotICAgIFB5T2JqZWN0ICpwYXRoID0gTlVMTCwgKmxvYWRlciA9IE5VTEwsICpleGlzdGluZ19tID0gTlVMTDsKLSAgICBjaGFyICpuYW1lLCAqc3VibmFtZTsKLSAgICBjaGFyIGJ1ZltNQVhQQVRITEVOKzFdOworICAgIFB5T2JqZWN0ICpwYXRoX2xpc3QgPSBOVUxMLCAqbG9hZGVyID0gTlVMTCwgKmV4aXN0aW5nX20gPSBOVUxMOworICAgIFB5T2JqZWN0ICpuYW1lLCAqYnVmb2JqLCAqc3VibmFtZTsKKyAgICBQeV9zc2l6ZV90IHN1Ym5hbWVfc3RhcnQ7CiAgICAgc3RydWN0IGZpbGVkZXNjciAqZmRwOwogICAgIEZJTEUgKmZwID0gTlVMTDsKLSAgICBQeU9iamVjdCAqbmV3bTsKKyAgICBQeU9iamVjdCAqbmV3bSA9IE5VTEw7CiAKICAgICBpZiAobW9kdWxlc19yZWxvYWRpbmcgPT0gTlVMTCkgewogICAgICAgICBQeV9GYXRhbEVycm9yKCJQeUltcG9ydF9SZWxvYWRNb2R1bGU6ICIKQEAgLTI5NDcsNjEgKzMzNzcsNzIgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICJyZWxvYWQoKSBhcmd1bWVudCBtdXN0IGJlIG1vZHVsZSIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgbmFtZSA9IChjaGFyKilQeU1vZHVsZV9HZXROYW1lKG0pOwotICAgIGlmIChuYW1lID09IE5VTEwpCisgICAgbmFtZSA9IFB5TW9kdWxlX0dldE5hbWVPYmplY3QobSk7CisgICAgaWYgKG5hbWUgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkobmFtZSkgPT0gLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmIChtICE9IFB5RGljdF9HZXRJdGVtU3RyaW5nKG1vZHVsZXMsIG5hbWUpKSB7CisgICAgaWYgKG0gIT0gUHlEaWN0X0dldEl0ZW0obW9kdWxlcywgbmFtZSkpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgInJlbG9hZCgpOiBtb2R1bGUgJS4yMDBzIG5vdCBpbiBzeXMubW9kdWxlcyIsCisgICAgICAgICAgICAgICAgICAgICAicmVsb2FkKCk6IG1vZHVsZSAlUiBub3QgaW4gc3lzLm1vZHVsZXMiLAogICAgICAgICAgICAgICAgICAgICAgbmFtZSk7CisgICAgICAgIFB5X0RFQ1JFRihuYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIGV4aXN0aW5nX20gPSBQeURpY3RfR2V0SXRlbVN0cmluZyhtb2R1bGVzX3JlbG9hZGluZywgbmFtZSk7CisgICAgZXhpc3RpbmdfbSA9IFB5RGljdF9HZXRJdGVtKG1vZHVsZXNfcmVsb2FkaW5nLCBuYW1lKTsKICAgICBpZiAoZXhpc3RpbmdfbSAhPSBOVUxMKSB7CiAgICAgICAgIC8qIER1ZSB0byBhIHJlY3Vyc2l2ZSByZWxvYWQsIHRoaXMgbW9kdWxlIGlzIGFscmVhZHkKICAgICAgICAgICAgYmVpbmcgcmVsb2FkZWQuICovCisgICAgICAgIFB5X0RFQ1JFRihuYW1lKTsKICAgICAgICAgUHlfSU5DUkVGKGV4aXN0aW5nX20pOwogICAgICAgICByZXR1cm4gZXhpc3RpbmdfbTsKICAgICB9Ci0gICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKG1vZHVsZXNfcmVsb2FkaW5nLCBuYW1lLCBtKSA8IDApCisgICAgaWYgKFB5RGljdF9TZXRJdGVtKG1vZHVsZXNfcmVsb2FkaW5nLCBuYW1lLCBtKSA8IDApIHsKKyAgICAgICAgUHlfREVDUkVGKG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAKLSAgICBzdWJuYW1lID0gc3RycmNocihuYW1lLCAnLicpOwotICAgIGlmIChzdWJuYW1lID09IE5VTEwpCisgICAgc3VibmFtZV9zdGFydCA9IFB5VW5pY29kZV9GaW5kQ2hhcihuYW1lLCAnLicsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSwgLTEpOworICAgIGlmIChzdWJuYW1lX3N0YXJ0ID09IC0xKSB7CisgICAgICAgIFB5X0lOQ1JFRihuYW1lKTsKICAgICAgICAgc3VibmFtZSA9IG5hbWU7CisgICAgfQogICAgIGVsc2UgewogICAgICAgICBQeU9iamVjdCAqcGFyZW50bmFtZSwgKnBhcmVudDsKLSAgICAgICAgcGFyZW50bmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShuYW1lLCAoc3VibmFtZS1uYW1lKSk7CisgICAgICAgIFB5X3NzaXplX3QgbGVuOworICAgICAgICBwYXJlbnRuYW1lID0gUHlVbmljb2RlX1N1YnN0cmluZyhuYW1lLCAwLCBzdWJuYW1lX3N0YXJ0KTsKICAgICAgICAgaWYgKHBhcmVudG5hbWUgPT0gTlVMTCkgewotICAgICAgICAgICAgaW1wX21vZHVsZXNfcmVsb2FkaW5nX2NsZWFyKCk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIH0KICAgICAgICAgcGFyZW50ID0gUHlEaWN0X0dldEl0ZW0obW9kdWxlcywgcGFyZW50bmFtZSk7CiAgICAgICAgIGlmIChwYXJlbnQgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICJyZWxvYWQoKTogcGFyZW50ICVVIG5vdCBpbiBzeXMubW9kdWxlcyIsCisgICAgICAgICAgICAgICAgInJlbG9hZCgpOiBwYXJlbnQgJVIgbm90IGluIHN5cy5tb2R1bGVzIiwKICAgICAgICAgICAgICAgICAgcGFyZW50bmFtZSk7CiAgICAgICAgICAgICBQeV9ERUNSRUYocGFyZW50bmFtZSk7Ci0gICAgICAgICAgICBpbXBfbW9kdWxlc19yZWxvYWRpbmdfY2xlYXIoKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQogICAgICAgICBQeV9ERUNSRUYocGFyZW50bmFtZSk7Ci0gICAgICAgIHN1Ym5hbWUrKzsKLSAgICAgICAgcGF0aCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcocGFyZW50LCAiX19wYXRoX18iKTsKLSAgICAgICAgaWYgKHBhdGggPT0gTlVMTCkKKyAgICAgICAgcGF0aF9saXN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZChwYXJlbnQsICZQeUlkX19fcGF0aF9fKTsKKyAgICAgICAgaWYgKHBhdGhfbGlzdCA9PSBOVUxMKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgc3VibmFtZV9zdGFydCsrOworICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSAtIChzdWJuYW1lX3N0YXJ0ICsgMSk7CisgICAgICAgIHN1Ym5hbWUgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKG5hbWUsIHN1Ym5hbWVfc3RhcnQsIGxlbik7CiAgICAgfQotICAgIGJ1ZlswXSA9ICdcMCc7Ci0gICAgZmRwID0gZmluZF9tb2R1bGUobmFtZSwgc3VibmFtZSwgcGF0aCwgYnVmLCBNQVhQQVRITEVOKzEsICZmcCwgJmxvYWRlcik7Ci0gICAgUHlfWERFQ1JFRihwYXRoKTsKKyAgICBpZiAoc3VibmFtZSA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycm9yOworICAgIGZkcCA9IGZpbmRfbW9kdWxlKG5hbWUsIHN1Ym5hbWUsIHBhdGhfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAmYnVmb2JqLCAmZnAsICZsb2FkZXIpOworICAgIFB5X0RFQ1JFRihzdWJuYW1lKTsKKyAgICBQeV9YREVDUkVGKHBhdGhfbGlzdCk7CiAKICAgICBpZiAoZmRwID09IE5VTEwpIHsKICAgICAgICAgUHlfWERFQ1JFRihsb2FkZXIpOwotICAgICAgICBpbXBfbW9kdWxlc19yZWxvYWRpbmdfY2xlYXIoKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQogCi0gICAgbmV3bSA9IGxvYWRfbW9kdWxlKG5hbWUsIGZwLCBidWYsIGZkcC0+dHlwZSwgbG9hZGVyKTsKKyAgICBuZXdtID0gbG9hZF9tb2R1bGUobmFtZSwgZnAsIGJ1Zm9iaiwgZmRwLT50eXBlLCBsb2FkZXIpOworICAgIFB5X1hERUNSRUYoYnVmb2JqKTsKICAgICBQeV9YREVDUkVGKGxvYWRlcik7CiAKICAgICBpZiAoZnApCkBAIC0zMDEyLDkgKzM0NTMsMTIgQEAKICAgICAgICAgICogZ29pbmcgdG8gcmV0dXJuIE5VTEwgaW4gdGhpcyBjYXNlIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlcgogICAgICAgICAgKiByZXBsYWNpbmcgbmFtZSBzdWNjZWVkcywgc28gdGhlIHJldHVybiB2YWx1ZSBpcyBpZ25vcmVkLgogICAgICAgICAgKi8KLSAgICAgICAgUHlEaWN0X1NldEl0ZW1TdHJpbmcobW9kdWxlcywgbmFtZSwgbSk7CisgICAgICAgIFB5RGljdF9TZXRJdGVtKG1vZHVsZXMsIG5hbWUsIG0pOwogICAgIH0KKworZXJyb3I6CiAgICAgaW1wX21vZHVsZXNfcmVsb2FkaW5nX2NsZWFyKCk7CisgICAgUHlfREVDUkVGKG5hbWUpOwogICAgIHJldHVybiBuZXdtOwogfQogCkBAIC0zMTYyLDIyICszNjA2LDIxIEBACiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCi1jYWxsX2ZpbmRfbW9kdWxlKGNoYXIgKm5hbWUsIFB5T2JqZWN0ICpwYXRoKQorY2FsbF9maW5kX21vZHVsZShQeU9iamVjdCAqbmFtZSwgUHlPYmplY3QgKnBhdGhfbGlzdCkKIHsKICAgICBleHRlcm4gaW50IGZjbG9zZShGSUxFICopOwogICAgIFB5T2JqZWN0ICpmb2IsICpyZXQ7CiAgICAgUHlPYmplY3QgKnBhdGhvYmo7CiAgICAgc3RydWN0IGZpbGVkZXNjciAqZmRwOwotICAgIGNoYXIgcGF0aG5hbWVbTUFYUEFUSExFTisxXTsKLSAgICBGSUxFICpmcCA9IE5VTEw7CisgICAgRklMRSAqZnA7CiAgICAgaW50IGZkID0gLTE7CiAgICAgY2hhciAqZm91bmRfZW5jb2RpbmcgPSBOVUxMOwogICAgIGNoYXIgKmVuY29kaW5nID0gTlVMTDsKIAotICAgIHBhdGhuYW1lWzBdID0gJ1wwJzsKLSAgICBpZiAocGF0aCA9PSBQeV9Ob25lKQotICAgICAgICBwYXRoID0gTlVMTDsKLSAgICBmZHAgPSBmaW5kX21vZHVsZShOVUxMLCBuYW1lLCBwYXRoLCBwYXRobmFtZSwgTUFYUEFUSExFTisxLCAmZnAsIE5VTEwpOworICAgIGlmIChwYXRoX2xpc3QgPT0gUHlfTm9uZSkKKyAgICAgICAgcGF0aF9saXN0ID0gTlVMTDsKKyAgICBmZHAgPSBmaW5kX21vZHVsZShOVUxMLCBuYW1lLCBwYXRoX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgJnBhdGhvYmosICZmcCwgTlVMTCk7CiAgICAgaWYgKGZkcCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoZnAgIT0gTlVMTCkgewpAQCAtMzE5MSwyMCArMzYzNCwyMiBAQAogICAgIH0KICAgICBpZiAoZmQgIT0gLTEpIHsKICAgICAgICAgaWYgKHN0cmNocihmZHAtPm1vZGUsICdiJykgPT0gTlVMTCkgewotICAgICAgICAgICAgLyogUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nKCkgcmV0dXJucyBQeU1lbV9NQUxMT0MnZWQKKyAgICAgICAgICAgIC8qIFB5VG9rZW5pemVyX0ZpbmRFbmNvZGluZ0ZpbGVuYW1lKCkgcmV0dXJucyBQeU1lbV9NQUxMT0MnZWQKICAgICAgICAgICAgICAgIG1lbW9yeS4gKi8KLSAgICAgICAgICAgIGZvdW5kX2VuY29kaW5nID0gUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nKGZkKTsKKyAgICAgICAgICAgIGZvdW5kX2VuY29kaW5nID0gUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nRmlsZW5hbWUoZmQsIHBhdGhvYmopOwogICAgICAgICAgICAgbHNlZWsoZmQsIDAsIDApOyAvKiBSZXNldCBwb3NpdGlvbiAqLwogICAgICAgICAgICAgaWYgKGZvdW5kX2VuY29kaW5nID09IE5VTEwgJiYgUHlFcnJfT2NjdXJyZWQoKSkgeworICAgICAgICAgICAgICAgIFB5X1hERUNSRUYocGF0aG9iaik7CiAgICAgICAgICAgICAgICAgY2xvc2UoZmQpOwogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZW5jb2RpbmcgPSAoZm91bmRfZW5jb2RpbmcgIT0gTlVMTCkgPyBmb3VuZF9lbmNvZGluZyA6CiAgICAgICAgICAgICAgICAgICAgKGNoYXIqKVB5VW5pY29kZV9HZXREZWZhdWx0RW5jb2RpbmcoKTsKICAgICAgICAgfQotICAgICAgICBmb2IgPSBQeUZpbGVfRnJvbUZkKGZkLCBwYXRobmFtZSwgZmRwLT5tb2RlLCAtMSwKKyAgICAgICAgZm9iID0gUHlGaWxlX0Zyb21GZChmZCwgTlVMTCwgZmRwLT5tb2RlLCAtMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhciopZW5jb2RpbmcsIE5VTEwsIE5VTEwsIDEpOwogICAgICAgICBpZiAoZm9iID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5X1hERUNSRUYocGF0aG9iaik7CiAgICAgICAgICAgICBjbG9zZShmZCk7CiAgICAgICAgICAgICBQeU1lbV9GUkVFKGZvdW5kX2VuY29kaW5nKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMzIxNCw3ICszNjU5LDEwIEBACiAgICAgICAgIGZvYiA9IFB5X05vbmU7CiAgICAgICAgIFB5X0lOQ1JFRihmb2IpOwogICAgIH0KLSAgICBwYXRob2JqID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChwYXRobmFtZSk7CisgICAgaWYgKHBhdGhvYmogPT0gTlVMTCkgeworICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CisgICAgICAgIHBhdGhvYmogPSBQeV9Ob25lOworICAgIH0KICAgICByZXQgPSBQeV9CdWlsZFZhbHVlKCJOTihzc2kpIiwKICAgICAgICAgICAgICAgICAgIGZvYiwgcGF0aG9iaiwgZmRwLT5zdWZmaXgsIGZkcC0+bW9kZSwgZmRwLT50eXBlKTsKICAgICBQeU1lbV9GUkVFKGZvdW5kX2VuY29kaW5nKTsKQEAgLTMyMjUsMjQgKzM2NzMsMjAgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfZmluZF9tb2R1bGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5T2JqZWN0ICpuYW1lOwotICAgIFB5T2JqZWN0ICpyZXQsICpwYXRoID0gTlVMTDsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mfE86ZmluZF9tb2R1bGUiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAmcGF0aCkpCisgICAgUHlPYmplY3QgKm5hbWUsICpwYXRoX2xpc3QgPSBOVUxMOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVXxPOmZpbmRfbW9kdWxlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsICZwYXRoX2xpc3QpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXQgPSBjYWxsX2ZpbmRfbW9kdWxlKFB5Qnl0ZXNfQVNfU1RSSU5HKG5hbWUpLCBwYXRoKTsKLSAgICBQeV9ERUNSRUYobmFtZSk7Ci0gICAgcmV0dXJuIHJldDsKKyAgICByZXR1cm4gY2FsbF9maW5kX21vZHVsZShuYW1lLCBwYXRoX2xpc3QpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogaW1wX2luaXRfYnVpbHRpbihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqbmFtZTsKKyAgICBQeU9iamVjdCAqbmFtZTsKICAgICBpbnQgcmV0OwogICAgIFB5T2JqZWN0ICptOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiczppbml0X2J1aWx0aW4iLCAmbmFtZSkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOmluaXRfYnVpbHRpbiIsICZuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcmV0ID0gaW5pdF9idWlsdGluKG5hbWUpOwogICAgIGlmIChyZXQgPCAwKQpAQCAtMzI1MSw3ICszNjk1LDcgQEAKICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgICAgICByZXR1cm4gUHlfTm9uZTsKICAgICB9Ci0gICAgbSA9IFB5SW1wb3J0X0FkZE1vZHVsZShuYW1lKTsKKyAgICBtID0gUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0KG5hbWUpOwogICAgIFB5X1hJTkNSRUYobSk7CiAgICAgcmV0dXJuIG07CiB9CkBAIC0zMjU5LDE5ICszNzAzLDE5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogaW1wX2luaXRfZnJvemVuKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBjaGFyICpuYW1lOworICAgIFB5T2JqZWN0ICpuYW1lOwogICAgIGludCByZXQ7CiAgICAgUHlPYmplY3QgKm07Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzOmluaXRfZnJvemVuIiwgJm5hbWUpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTppbml0X2Zyb3plbiIsICZuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmV0ID0gUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlKG5hbWUpOworICAgIHJldCA9IFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZU9iamVjdChuYW1lKTsKICAgICBpZiAocmV0IDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKHJldCA9PSAwKSB7CiAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICAgICAgcmV0dXJuIFB5X05vbmU7CiAgICAgfQotICAgIG0gPSBQeUltcG9ydF9BZGRNb2R1bGUobmFtZSk7CisgICAgbSA9IFB5SW1wb3J0X0FkZE1vZHVsZU9iamVjdChuYW1lKTsKICAgICBQeV9YSU5DUkVGKG0pOwogICAgIHJldHVybiBtOwogfQpAQCAtMzI3OSw5ICszNzIzLDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfZ2V0X2Zyb3plbl9vYmplY3QoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIGNoYXIgKm5hbWU7CisgICAgUHlPYmplY3QgKm5hbWU7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInM6Z2V0X2Zyb3plbl9vYmplY3QiLCAmbmFtZSkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOmdldF9mcm96ZW5fb2JqZWN0IiwgJm5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICByZXR1cm4gZ2V0X2Zyb3plbl9vYmplY3QobmFtZSk7CiB9CkBAIC0zMjg5LDkgKzM3MzMsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGltcF9pc19mcm96ZW5fcGFja2FnZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqbmFtZTsKKyAgICBQeU9iamVjdCAqbmFtZTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiczppc19mcm96ZW5fcGFja2FnZSIsICZuYW1lKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6aXNfZnJvemVuX3BhY2thZ2UiLCAmbmFtZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHJldHVybiBpc19mcm96ZW5fcGFja2FnZShuYW1lKTsKIH0KQEAgLTMyOTksOCArMzc0Myw4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogaW1wX2lzX2J1aWx0aW4oUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIGNoYXIgKm5hbWU7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzOmlzX2J1aWx0aW4iLCAmbmFtZSkpCisgICAgUHlPYmplY3QgKm5hbWU7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOmlzX2J1aWx0aW4iLCAmbmFtZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoaXNfYnVpbHRpbihuYW1lKSk7CiB9CkBAIC0zMzA4LDYzICszNzUyLDc0IEBACiBzdGF0aWMgUHlPYmplY3QgKgogaW1wX2lzX2Zyb3plbihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqbmFtZTsKKyAgICBQeU9iamVjdCAqbmFtZTsKICAgICBzdHJ1Y3QgX2Zyb3plbiAqcDsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInM6aXNfZnJvemVuIiwgJm5hbWUpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTppc19mcm96ZW4iLCAmbmFtZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHAgPSBmaW5kX2Zyb3plbihuYW1lKTsKICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKChsb25nKSAocCA9PSBOVUxMID8gMCA6IHAtPnNpemUpKTsKIH0KIAogc3RhdGljIEZJTEUgKgotZ2V0X2ZpbGUoY2hhciAqcGF0aG5hbWUsIFB5T2JqZWN0ICpmb2IsIGNoYXIgKm1vZGUpCitnZXRfZmlsZShQeU9iamVjdCAqcGF0aG5hbWUsIFB5T2JqZWN0ICpmb2IsIGNoYXIgKm1vZGUpCiB7CiAgICAgRklMRSAqZnA7CiAgICAgaWYgKG1vZGVbMF0gPT0gJ1UnKQogICAgICAgICBtb2RlID0gInIiIFBZX1NURElPVEVYVE1PREU7CiAgICAgaWYgKGZvYiA9PSBOVUxMKSB7Ci0gICAgICAgIGZwID0gZm9wZW4ocGF0aG5hbWUsIG1vZGUpOworICAgICAgICBmcCA9IF9QeV9mb3BlbihwYXRobmFtZSwgbW9kZSk7CisgICAgICAgIGlmICghZnApIHsKKyAgICAgICAgICAgIGlmICghUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gZnA7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBpbnQgZmQgPSBQeU9iamVjdF9Bc0ZpbGVEZXNjcmlwdG9yKGZvYik7CiAgICAgICAgIGlmIChmZCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBpZiAoIV9QeVZlcmlmeV9mZChmZCkpCi0gICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICBpZiAoIV9QeVZlcmlmeV9mZChmZCkpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisKICAgICAgICAgLyogdGhlIEZJTEUgc3RydWN0IGdldHMgYSBuZXcgZmQsIHNvIHRoYXQgaXQgY2FuIGJlIGNsb3NlZAogICAgICAgICAgKiBpbmRlcGVuZGVudGx5IG9mIHRoZSBmaWxlIGRlc2NyaXB0b3IgZ2l2ZW4KICAgICAgICAgICovCiAgICAgICAgIGZkID0gZHVwKGZkKTsKLSAgICAgICAgaWYgKGZkID09IC0xKQotICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgaWYgKGZkID09IC0xKSB7CisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorCiAgICAgICAgIGZwID0gZmRvcGVuKGZkLCBtb2RlKTsKLSAgICB9Ci0gICAgaWYgKGZwKQorICAgICAgICBpZiAoIWZwKSB7CisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQogICAgICAgICByZXR1cm4gZnA7Ci1lcnJvcjoKLSAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7Ci0gICAgcmV0dXJuIE5VTEw7CisgICAgfQogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogaW1wX2xvYWRfY29tcGlsZWQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIGNoYXIgKm5hbWU7Ci0gICAgUHlPYmplY3QgKnBhdGhuYW1lOworICAgIFB5T2JqZWN0ICpuYW1lLCAqcGF0aG5hbWU7CiAgICAgUHlPYmplY3QgKmZvYiA9IE5VTEw7CiAgICAgUHlPYmplY3QgKm07CiAgICAgRklMRSAqZnA7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzTyZ8Tzpsb2FkX2NvbXBpbGVkIiwKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVPJnxPOmxvYWRfY29tcGlsZWQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmcGF0aG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0RlY29kZXIsICZwYXRobmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZvYikpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGZwID0gZ2V0X2ZpbGUoUHlCeXRlc19BU19TVFJJTkcocGF0aG5hbWUpLCBmb2IsICJyYiIpOworICAgIGZwID0gZ2V0X2ZpbGUocGF0aG5hbWUsIGZvYiwgInJiIik7CiAgICAgaWYgKGZwID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIG0gPSBsb2FkX2NvbXBpbGVkX21vZHVsZShuYW1lLCBQeUJ5dGVzX0FTX1NUUklORyhwYXRobmFtZSksIGZwKTsKKyAgICBtID0gbG9hZF9jb21waWxlZF9tb2R1bGUobmFtZSwgcGF0aG5hbWUsIGZwKTsKICAgICBmY2xvc2UoZnApOwogICAgIFB5X0RFQ1JFRihwYXRobmFtZSk7CiAgICAgcmV0dXJuIG07CkBAIC0zMzc1LDI4ICszODMwLDI2IEBACiBzdGF0aWMgUHlPYmplY3QgKgogaW1wX2xvYWRfZHluYW1pYyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqbmFtZTsKLSAgICBQeU9iamVjdCAqcGF0aGJ5dGVzOwotICAgIGNoYXIgKnBhdGhuYW1lOwotICAgIFB5T2JqZWN0ICpmb2IgPSBOVUxMOwotICAgIFB5T2JqZWN0ICptOwotICAgIEZJTEUgKmZwID0gTlVMTDsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInNPJnxPOmxvYWRfZHluYW1pYyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZuYW1lLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRoYnl0ZXMsICZmb2IpKQorICAgIFB5T2JqZWN0ICpuYW1lLCAqcGF0aG5hbWUsICpmb2IgPSBOVUxMLCAqbW9kOworICAgIEZJTEUgKmZwOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVTyZ8Tzpsb2FkX2R5bmFtaWMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmbmFtZSwgUHlVbmljb2RlX0ZTRGVjb2RlciwgJnBhdGhuYW1lLCAmZm9iKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcGF0aG5hbWUgPSBQeUJ5dGVzX0FTX1NUUklORyhwYXRoYnl0ZXMpOwotICAgIGlmIChmb2IpIHsKLSAgICAgICAgZnAgPSBnZXRfZmlsZShwYXRobmFtZSwgZm9iLCAiciIpOworICAgIGlmIChmb2IgIT0gTlVMTCkgeworICAgICAgICBmcCA9IGdldF9maWxlKE5VTEwsIGZvYiwgInIiKTsKICAgICAgICAgaWYgKGZwID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihwYXRoYnl0ZXMpOworICAgICAgICAgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAgICAgfQotICAgIG0gPSBfUHlJbXBvcnRfTG9hZER5bmFtaWNNb2R1bGUobmFtZSwgcGF0aG5hbWUsIGZwKTsKLSAgICBQeV9ERUNSRUYocGF0aGJ5dGVzKTsKKyAgICBlbHNlCisgICAgICAgIGZwID0gTlVMTDsKKyAgICBtb2QgPSBfUHlJbXBvcnRfTG9hZER5bmFtaWNNb2R1bGUobmFtZSwgcGF0aG5hbWUsIGZwKTsKKyAgICBQeV9ERUNSRUYocGF0aG5hbWUpOwogICAgIGlmIChmcCkKICAgICAgICAgZmNsb3NlKGZwKTsKLSAgICByZXR1cm4gbTsKKyAgICByZXR1cm4gbW9kOwogfQogCiAjZW5kaWYgLyogSEFWRV9EWU5BTUlDX0xPQURJTkcgKi8KQEAgLTM0MDQsMjIgKzM4NTcsMjEgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfbG9hZF9zb3VyY2UoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIGNoYXIgKm5hbWU7Ci0gICAgUHlPYmplY3QgKnBhdGhuYW1lOworICAgIFB5T2JqZWN0ICpuYW1lLCAqcGF0aG5hbWU7CiAgICAgUHlPYmplY3QgKmZvYiA9IE5VTEw7CiAgICAgUHlPYmplY3QgKm07CiAgICAgRklMRSAqZnA7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzTyZ8Tzpsb2FkX3NvdXJjZSIsCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVTyZ8Tzpsb2FkX3NvdXJjZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRobmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTRGVjb2RlciwgJnBhdGhuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9iKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZnAgPSBnZXRfZmlsZShQeUJ5dGVzX0FTX1NUUklORyhwYXRobmFtZSksIGZvYiwgInIiKTsKKyAgICBmcCA9IGdldF9maWxlKHBhdGhuYW1lLCBmb2IsICJyIik7CiAgICAgaWYgKGZwID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIG0gPSBsb2FkX3NvdXJjZV9tb2R1bGUobmFtZSwgUHlCeXRlc19BU19TVFJJTkcocGF0aG5hbWUpLCBmcCk7CisgICAgbSA9IGxvYWRfc291cmNlX21vZHVsZShuYW1lLCBwYXRobmFtZSwgZnApOwogICAgIFB5X0RFQ1JFRihwYXRobmFtZSk7CiAgICAgZmNsb3NlKGZwKTsKICAgICByZXR1cm4gbTsKQEAgLTM0MjgsMjAgKzM4ODAsMjIgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfbG9hZF9tb2R1bGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIGNoYXIgKm5hbWU7Ci0gICAgUHlPYmplY3QgKmZvYjsKLSAgICBQeU9iamVjdCAqcGF0aG5hbWU7Ci0gICAgUHlPYmplY3QgKiByZXQ7CisgICAgUHlPYmplY3QgKm5hbWUsICpmb2IsICpwYXRobmFtZSwgKnBhdGhuYW1lX29iaiwgKnJldDsKICAgICBjaGFyICpzdWZmaXg7IC8qIFVudXNlZCAqLwogICAgIGNoYXIgKm1vZGU7CiAgICAgaW50IHR5cGU7CiAgICAgRklMRSAqZnA7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInNPTyYoc3NpKTpsb2FkX21vZHVsZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZuYW1lLCAmZm9iLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRobmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJnN1ZmZpeCwgJm1vZGUsICZ0eXBlKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVPTyhzc2kpOmxvYWRfbW9kdWxlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsICZmb2IsICZwYXRobmFtZV9vYmosICZzdWZmaXgsICZtb2RlLCAmdHlwZSkpCiAgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChwYXRobmFtZV9vYmogIT0gUHlfTm9uZSkgeworICAgICAgICBpZiAoIVB5VW5pY29kZV9GU0RlY29kZXIocGF0aG5hbWVfb2JqLCAmcGF0aG5hbWUpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGVsc2UKKyAgICAgICAgcGF0aG5hbWUgPSBOVUxMOworCiAgICAgaWYgKCptb2RlKSB7CiAgICAgICAgIC8qIE1vZGUgbXVzdCBzdGFydCB3aXRoICdyJyBvciAnVScgYW5kIG11c3Qgbm90IGNvbnRhaW4gJysnLgogICAgICAgICAgICBJbXBsaWNpdCBpbiB0aGlzIHRlc3QgaXMgdGhlIGFzc3VtcHRpb24gdGhhdCB0aGUgbW9kZQpAQCAtMzQ1MCw3ICszOTA0LDcgQEAKICAgICAgICAgaWYgKCEoKm1vZGUgPT0gJ3InIHx8ICptb2RlID09ICdVJykgfHwgc3RyY2hyKG1vZGUsICcrJykpIHsKICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICJpbnZhbGlkIGZpbGUgb3BlbiBtb2RlICUuMjAwcyIsIG1vZGUpOwotICAgICAgICAgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKKyAgICAgICAgICAgIFB5X1hERUNSRUYocGF0aG5hbWUpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICB9CkBAIC0zNDU5LDEyICszOTEzLDEyIEBACiAgICAgZWxzZSB7CiAgICAgICAgIGZwID0gZ2V0X2ZpbGUoTlVMTCwgZm9iLCBtb2RlKTsKICAgICAgICAgaWYgKGZwID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihwYXRobmFtZSk7CisgICAgICAgICAgICBQeV9YREVDUkVGKHBhdGhuYW1lKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAgICAgfQotICAgIHJldCA9IGxvYWRfbW9kdWxlKG5hbWUsIGZwLCBQeUJ5dGVzX0FTX1NUUklORyhwYXRobmFtZSksIHR5cGUsIE5VTEwpOwotICAgIFB5X0RFQ1JFRihwYXRobmFtZSk7CisgICAgcmV0ID0gbG9hZF9tb2R1bGUobmFtZSwgZnAsIHBhdGhuYW1lLCB0eXBlLCBOVUxMKTsKKyAgICBQeV9YREVDUkVGKHBhdGhuYW1lKTsKICAgICBpZiAoZnApCiAgICAgICAgIGZjbG9zZShmcCk7CiAgICAgcmV0dXJuIHJldDsKQEAgLTM0NzMsMTMgKzM5MjcsMTIgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfbG9hZF9wYWNrYWdlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBjaGFyICpuYW1lOwotICAgIFB5T2JqZWN0ICpwYXRobmFtZTsKKyAgICBQeU9iamVjdCAqbmFtZSwgKnBhdGhuYW1lOwogICAgIFB5T2JqZWN0ICogcmV0OwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAic08mOmxvYWRfcGFja2FnZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZuYW1lLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRobmFtZSkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVTyY6bG9hZF9wYWNrYWdlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsIFB5VW5pY29kZV9GU0RlY29kZXIsICZwYXRobmFtZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJldCA9IGxvYWRfcGFja2FnZShuYW1lLCBQeUJ5dGVzX0FTX1NUUklORyhwYXRobmFtZSkpOworICAgIHJldCA9IGxvYWRfcGFja2FnZShuYW1lLCBwYXRobmFtZSk7CiAgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKICAgICByZXR1cm4gcmV0OwogfQpAQCAtMzQ4NywxMCArMzk0MCwxMCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGltcF9uZXdfbW9kdWxlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBjaGFyICpuYW1lOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiczpuZXdfbW9kdWxlIiwgJm5hbWUpKQorICAgIFB5T2JqZWN0ICpuYW1lOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTpuZXdfbW9kdWxlIiwgJm5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXR1cm4gUHlNb2R1bGVfTmV3KG5hbWUpOworICAgIHJldHVybiBQeU1vZHVsZV9OZXdPYmplY3QobmFtZSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0zNTA5LDMzICszOTYyLDMyIEBACiB7CiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJwYXRoIiwgImRlYnVnX292ZXJyaWRlIiwgTlVMTH07CiAKLSAgICBjaGFyIGJ1ZltNQVhQQVRITEVOKzFdOwotICAgIFB5T2JqZWN0ICpwYXRoYnl0ZXM7Ci0gICAgY2hhciAqY3BhdGhuYW1lOworICAgIFB5T2JqZWN0ICpwYXRobmFtZSwgKmNwYXRobmFtZTsKICAgICBQeU9iamVjdCAqZGVidWdfb3ZlcnJpZGUgPSBOVUxMOwogICAgIGludCBkZWJ1ZyA9ICFQeV9PcHRpbWl6ZUZsYWc7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcygKICAgICAgICAgICAgICAgICBhcmdzLCBrd3MsICJPJnxPIiwga3dsaXN0LAotICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnBhdGhieXRlcywgJmRlYnVnX292ZXJyaWRlKSkKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNEZWNvZGVyLCAmcGF0aG5hbWUsICZkZWJ1Z19vdmVycmlkZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYgKGRlYnVnX292ZXJyaWRlICE9IE5VTEwgJiYKICAgICAgICAgKGRlYnVnID0gUHlPYmplY3RfSXNUcnVlKGRlYnVnX292ZXJyaWRlKSkgPCAwKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihwYXRoYnl0ZXMpOworICAgICAgICBQeV9ERUNSRUYocGF0aG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBjcGF0aG5hbWUgPSBtYWtlX2NvbXBpbGVkX3BhdGhuYW1lKAotICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhwYXRoYnl0ZXMpLAotICAgICAgICBidWYsIE1BWFBBVEhMRU4rMSwgZGVidWcpOwotICAgIFB5X0RFQ1JFRihwYXRoYnl0ZXMpOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocGF0aG5hbWUpIDwgMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBjcGF0aG5hbWUgPSBtYWtlX2NvbXBpbGVkX3BhdGhuYW1lKHBhdGhuYW1lLCBkZWJ1Zyk7CisgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKIAogICAgIGlmIChjcGF0aG5hbWUgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfU3lzdGVtRXJyb3IsICJwYXRoIGJ1ZmZlciB0b28gc2hvcnQiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGJ1Zik7CisgICAgcmV0dXJuIGNwYXRobmFtZTsKIH0KIAogUHlEb2NfU1RSVkFSKGRvY19jYWNoZV9mcm9tX3NvdXJjZSwKQEAgLTM1NTMsMjUgKzQwMDUsMjIgQEAKIGltcF9zb3VyY2VfZnJvbV9jYWNoZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd3MpCiB7CiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJwYXRoIiwgTlVMTH07Ci0KLSAgICBQeU9iamVjdCAqcGF0aG5hbWVfb2JqOwotICAgIGNoYXIgKnBhdGhuYW1lOwotICAgIGNoYXIgYnVmW01BWFBBVEhMRU4rMV07CisgICAgUHlPYmplY3QgKnBhdGhuYW1lLCAqc291cmNlOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoCiAgICAgICAgICAgICAgICAgYXJncywga3dzLCAiTyYiLCBrd2xpc3QsCi0gICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmcGF0aG5hbWVfb2JqKSkKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNEZWNvZGVyLCAmcGF0aG5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHBhdGhuYW1lID0gUHlCeXRlc19BU19TVFJJTkcocGF0aG5hbWVfb2JqKTsKLSAgICBpZiAobWFrZV9zb3VyY2VfcGF0aG5hbWUocGF0aG5hbWUsIGJ1ZikgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwgIk5vdCBhIFBFUCAzMTQ3IHB5YyBwYXRoOiAlcyIsCisgICAgc291cmNlID0gbWFrZV9zb3VyY2VfcGF0aG5hbWUocGF0aG5hbWUpOworICAgIGlmIChzb3VyY2UgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwgIk5vdCBhIFBFUCAzMTQ3IHB5YyBwYXRoOiAlUiIsCiAgICAgICAgICAgICAgICAgICAgICBwYXRobmFtZSk7Ci0gICAgICAgIFB5X0RFQ1JFRihwYXRobmFtZV9vYmopOworICAgICAgICBQeV9ERUNSRUYocGF0aG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgUHlfREVDUkVGKHBhdGhuYW1lX29iaik7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKGJ1Zik7CisgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKKyAgICByZXR1cm4gc291cmNlOwogfQogCiBQeURvY19TVFJWQVIoZG9jX3NvdXJjZV9mcm9tX2NhY2hlLApAQCAtMzY2Myw2ICs0MTEyLDcgQEAKICNlbmRpZgogICAgIHsibG9hZF9wYWNrYWdlIiwgICAgICAgICAgICBpbXBfbG9hZF9wYWNrYWdlLCAgICAgICBNRVRIX1ZBUkFSR1N9LAogICAgIHsibG9hZF9zb3VyY2UiLCAgICAgICAgICAgICBpbXBfbG9hZF9zb3VyY2UsICAgICAgICBNRVRIX1ZBUkFSR1N9LAorICAgIHsiX2ZpeF9jb19maWxlbmFtZSIsICAgICAgICBpbXBfZml4X2NvX2ZpbGVuYW1lLCAgICBNRVRIX1ZBUkFSR1N9LAogICAgIHtOVUxMLCAgICAgICAgICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KIH07CiAKQEAgLTM3MjUsNyArNDE3NSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICZwYXRob2JqKSkKICAgICAgICAgcmV0dXJuIC0xOwogCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShwYXRob2JqKSA9PSAwKSB7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHBhdGhvYmopID09IDApIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0ltcG9ydEVycm9yLCAiZW1wdHkgcGF0aG5hbWUiKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KZGlmZiAtLWdpdCBhL1B5dGhvbi9pbXBvcnRkbC5jIGIvUHl0aG9uL2ltcG9ydGRsLmMKaW5kZXggOWNhZWQ0NS4uOTEyN2Q2MSAxMDA2NDQKLS0tIGEvUHl0aG9uL2ltcG9ydGRsLmMKKysrIGIvUHl0aG9uL2ltcG9ydGRsLmMKQEAgLTEyLDQ5ICsxMiw3MSBAQAogCiAjaW5jbHVkZSAiaW1wb3J0ZGwuaCIKIAotZXh0ZXJuIGRsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKm5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqc2hvcnRuYW1lLAorI2lmZGVmIE1TX1dJTkRPV1MKK2V4dGVybiBkbF9mdW5jcHRyIF9QeUltcG9ydF9HZXREeW5Mb2FkV2luZG93cyhjb25zdCBjaGFyICpzaG9ydG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnBhdGhuYW1lLCBGSUxFICpmcCk7CisjZWxzZQorZXh0ZXJuIGRsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwYXRobmFtZSwgRklMRSAqZnApOwotCi0KKyNlbmRpZgogCiBQeU9iamVjdCAqCi1fUHlJbXBvcnRfTG9hZER5bmFtaWNNb2R1bGUoY2hhciAqbmFtZSwgY2hhciAqcGF0aG5hbWUsIEZJTEUgKmZwKQorX1B5SW1wb3J0X0xvYWREeW5hbWljTW9kdWxlKFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqcGF0aCwgRklMRSAqZnApCiB7Ci0gICAgUHlPYmplY3QgKm07Ci0gICAgUHlPYmplY3QgKnBhdGg7Ci0gICAgY2hhciAqbGFzdGRvdCwgKnNob3J0bmFtZSwgKnBhY2thZ2Vjb250ZXh0LCAqb2xkY29udGV4dDsKKyAgICBQeU9iamVjdCAqbSA9IE5VTEw7CisjaWZuZGVmIE1TX1dJTkRPV1MKKyAgICBQeU9iamVjdCAqcGF0aGJ5dGVzOworI2VuZGlmCisgICAgUHlPYmplY3QgKm5hbWVhc2NpaTsKKyAgICBjaGFyICpuYW1lc3RyLCAqbGFzdGRvdCwgKnNob3J0bmFtZSwgKnBhY2thZ2Vjb250ZXh0LCAqb2xkY29udGV4dDsKICAgICBkbF9mdW5jcHRyIHAwOwogICAgIFB5T2JqZWN0KiAoKnApKHZvaWQpOwogICAgIHN0cnVjdCBQeU1vZHVsZURlZiAqZGVmOwotICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAKLSAgICBwYXRoID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChwYXRobmFtZSk7Ci0gICAgaWYgKHBhdGggPT0gTlVMTCkKKyAgICBtID0gX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25PYmplY3QobmFtZSwgcGF0aCk7CisgICAgaWYgKG0gIT0gTlVMTCkgeworICAgICAgICBQeV9JTkNSRUYobSk7CisgICAgICAgIHJldHVybiBtOworICAgIH0KKworICAgIC8qIG5hbWUgbXVzdCBiZSBlbmNvZGFibGUgdG8gQVNDSUkgYmVjYXVzZSBkeW5hbWljIG1vZHVsZSBtdXN0IGhhdmUgYQorICAgICAgIGZ1bmN0aW9uIGNhbGxlZCAiUHlJbml0X05BTUUiLCB0aGV5IGFyZSB3cml0dGVuIGluIEMsIGFuZCB0aGUgQyBsYW5ndWFnZQorICAgICAgIGRvZXNuJ3QgYWNjZXB0IG5vbi1BU0NJSSBpZGVudGlmaWVycy4gKi8KKyAgICBuYW1lYXNjaWkgPSBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKG5hbWUsICJhc2NpaSIsIE5VTEwpOworICAgIGlmIChuYW1lYXNjaWkgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoKG0gPSBfUHlJbXBvcnRfRmluZEV4dGVuc2lvblVuaWNvZGUobmFtZSwgcGF0aCkpICE9IE5VTEwpIHsKLSAgICAgICAgUHlfSU5DUkVGKG0pOwotICAgICAgICByZXN1bHQgPSBtOwotICAgICAgICBnb3RvIGZpbmFsbHk7Ci0gICAgfQotICAgIGxhc3Rkb3QgPSBzdHJyY2hyKG5hbWUsICcuJyk7CisgICAgbmFtZXN0ciA9IFB5Qnl0ZXNfQVNfU1RSSU5HKG5hbWVhc2NpaSk7CisgICAgaWYgKG5hbWVzdHIgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcjsKKworICAgIGxhc3Rkb3QgPSBzdHJyY2hyKG5hbWVzdHIsICcuJyk7CiAgICAgaWYgKGxhc3Rkb3QgPT0gTlVMTCkgewogICAgICAgICBwYWNrYWdlY29udGV4dCA9IE5VTEw7Ci0gICAgICAgIHNob3J0bmFtZSA9IG5hbWU7CisgICAgICAgIHNob3J0bmFtZSA9IG5hbWVzdHI7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBwYWNrYWdlY29udGV4dCA9IG5hbWU7CisgICAgICAgIHBhY2thZ2Vjb250ZXh0ID0gbmFtZXN0cjsKICAgICAgICAgc2hvcnRuYW1lID0gbGFzdGRvdCsxOwogICAgIH0KIAotICAgIHAwID0gX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKG5hbWUsIHNob3J0bmFtZSwgcGF0aG5hbWUsIGZwKTsKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgcDAgPSBfUHlJbXBvcnRfR2V0RHluTG9hZFdpbmRvd3Moc2hvcnRuYW1lLCBwYXRoLCBmcCk7CisjZWxzZQorICAgIHBhdGhieXRlcyA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQocGF0aCk7CisgICAgaWYgKHBhdGhieXRlcyA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycm9yOworICAgIHAwID0gX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKHNob3J0bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhwYXRoYnl0ZXMpLCBmcCk7CisgICAgUHlfREVDUkVGKHBhdGhieXRlcyk7CisjZW5kaWYKICAgICBwID0gKFB5T2JqZWN0KigqKSh2b2lkKSlwMDsKICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgZ290byBlcnJvcjsKICAgICBpZiAocCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19JbXBvcnRFcnJvciwKLSAgICAgICAgICAgImR5bmFtaWMgbW9kdWxlIGRvZXMgbm90IGRlZmluZSBpbml0IGZ1bmN0aW9uIChQeUluaXRfJS4yMDBzKSIsCisgICAgICAgICAgICAgICAgICAgICAiZHluYW1pYyBtb2R1bGUgZG9lcyBub3QgZGVmaW5lIGluaXQgZnVuY3Rpb24iCisgICAgICAgICAgICAgICAgICAgICAiIChQeUluaXRfJXMpIiwKICAgICAgICAgICAgICAgICAgICAgIHNob3J0bmFtZSk7CiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQpAQCAtNjYsNyArODgsNiBAQAogICAgICAgICBnb3RvIGVycm9yOwogCiAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKLSAgICAgICAgUHlfREVDUkVGKG0pOwogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfU3lzdGVtRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAiaW5pdGlhbGl6YXRpb24gb2YgJXMgcmFpc2VkIHVucmVwb3J0ZWQgZXhjZXB0aW9uIiwKICAgICAgICAgICAgICAgICAgICAgIHNob3J0bmFtZSk7CkBAIC04MywyMCArMTA0LDE5IEBACiAgICAgZWxzZQogICAgICAgICBQeV9JTkNSRUYocGF0aCk7CiAKLSAgICBpZiAoX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uVW5pY29kZShtLCBuYW1lLCBwYXRoKSA8IDApCisgICAgaWYgKF9QeUltcG9ydF9GaXh1cEV4dGVuc2lvbk9iamVjdChtLCBuYW1lLCBwYXRoKSA8IDApCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigKLSAgICAgICAgICAgICJpbXBvcnQgJXMgIyBkeW5hbWljYWxseSBsb2FkZWQgZnJvbSAlc1xuIiwKLSAgICAgICAgICAgIG5hbWUsIHBhdGhuYW1lKTsKLSAgICByZXN1bHQgPSBtOwotICAgIGdvdG8gZmluYWxseTsKKyAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKAorICAgICAgICAgICAgImltcG9ydCAlVSAjIGR5bmFtaWNhbGx5IGxvYWRlZCBmcm9tICVSXG4iLAorICAgICAgICAgICAgbmFtZSwgcGF0aCk7CisgICAgUHlfREVDUkVGKG5hbWVhc2NpaSk7CisgICAgcmV0dXJuIG07CiAKIGVycm9yOgotICAgIHJlc3VsdCA9IE5VTEw7Ci1maW5hbGx5OgotICAgIFB5X0RFQ1JFRihwYXRoKTsKLSAgICByZXR1cm4gcmVzdWx0OworICAgIFB5X0RFQ1JFRihuYW1lYXNjaWkpOworICAgIFB5X1hERUNSRUYobSk7CisgICAgcmV0dXJuIE5VTEw7CiB9CiAKICNlbmRpZiAvKiBIQVZFX0RZTkFNSUNfTE9BRElORyAqLwpkaWZmIC0tZ2l0IGEvUHl0aG9uL2ltcG9ydGRsLmggYi9QeXRob24vaW1wb3J0ZGwuaAppbmRleCBiNGQyMWJlLi5lNTFlNTUxIDEwMDY0NAotLS0gYS9QeXRob24vaW1wb3J0ZGwuaAorKysgYi9QeXRob24vaW1wb3J0ZGwuaApAQCAtMjgsNyArMjgsNyBAQAogZXh0ZXJuIHN0cnVjdCBmaWxlZGVzY3IgKiBfUHlJbXBvcnRfRmlsZXRhYjsKIGV4dGVybiBjb25zdCBzdHJ1Y3QgZmlsZWRlc2NyIF9QeUltcG9ydF9EeW5Mb2FkRmlsZXRhYltdOwogCi1leHRlcm4gUHlPYmplY3QgKl9QeUltcG9ydF9Mb2FkRHluYW1pY01vZHVsZShjaGFyICpuYW1lLCBjaGFyICpwYXRobmFtZSwKK2V4dGVybiBQeU9iamVjdCAqX1B5SW1wb3J0X0xvYWREeW5hbWljTW9kdWxlKFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqcGF0aG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGSUxFICopOwogCiAvKiBNYXggbGVuZ3RoIG9mIG1vZHVsZSBzdWZmaXggc2VhcmNoZWQgZm9yIC0tIGFjY29tbW9kYXRlcyAibW9kdWxlLnNsYiIgKi8KZGlmZiAtLWdpdCBhL1B5dGhvbi9tYWtlb3Bjb2RldGFyZ2V0cy5weSBiL1B5dGhvbi9tYWtlb3Bjb2RldGFyZ2V0cy5weQppbmRleCA1ZDhlNWE5Li5kOWEwODU1IDEwMDc1NQotLS0gYS9QeXRob24vbWFrZW9wY29kZXRhcmdldHMucHkKKysrIGIvUHl0aG9uL21ha2VvcGNvZGV0YXJnZXRzLnB5CkBAIC0yMyw5ICsyMyw2IEBACiAgICAgb3Bjb2RlID0gZmluZF9tb2R1bGUoIm9wY29kZSIpCiAgICAgdGFyZ2V0cyA9IFsnX3Vua25vd25fb3Bjb2RlJ10gKiAyNTYKICAgICBmb3Igb3BuYW1lLCBvcCBpbiBvcGNvZGUub3BtYXAuaXRlbXMoKToKLSAgICAgICAgaWYgb3BuYW1lID09ICJTVE9QX0NPREUiOgotICAgICAgICAgICAgIyBYWFggb3Bjb2RlIG5vdCBpbXBsZW1lbnRlZAotICAgICAgICAgICAgY29udGludWUKICAgICAgICAgdGFyZ2V0c1tvcF0gPSAiVEFSR0VUXyVzIiAlIG9wbmFtZQogICAgIGYud3JpdGUoInN0YXRpYyB2b2lkICpvcGNvZGVfdGFyZ2V0c1syNTZdID0ge1xuIikKICAgICBmLndyaXRlKCIsXG4iLmpvaW4oWyIgICAgJiYlcyIgJSBzIGZvciBzIGluIHRhcmdldHNdKSkKZGlmZiAtLWdpdCBhL1B5dGhvbi9tYXJzaGFsLmMgYi9QeXRob24vbWFyc2hhbC5jCmluZGV4IDNlMmZiZWIuLmI5NGU4ZDggMTAwNjQ0Ci0tLSBhL1B5dGhvbi9tYXJzaGFsLmMKKysrIGIvUHl0aG9uL21hcnNoYWwuYwpAQCAtNTksOSArNTksOSBAQAogICAgIC8qIElmIGZwID09IE5VTEwsIHRoZSBmb2xsb3dpbmcgYXJlIHZhbGlkOiAqLwogICAgIFB5T2JqZWN0ICpyZWFkYWJsZTsgICAgLyogU3RyZWFtLWxpa2Ugb2JqZWN0IGJlaW5nIHJlYWQgZnJvbSAqLwogICAgIFB5T2JqZWN0ICpzdHI7CisgICAgUHlPYmplY3QgKmN1cnJlbnRfZmlsZW5hbWU7CiAgICAgY2hhciAqcHRyOwogICAgIGNoYXIgKmVuZDsKLSAgICBQeU9iamVjdCAqc3RyaW5nczsgLyogZGljdCBvbiBtYXJzaGFsLCBsaXN0IG9uIHVubWFyc2hhbCAqLwogICAgIGludCB2ZXJzaW9uOwogfSBXRklMRTsKIApAQCAtMzExLDkgKzMxMSw3IEBACiAgICAgfQogICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KHYpKSB7CiAgICAgICAgIFB5T2JqZWN0ICp1dGY4OwotICAgICAgICB1dGY4ID0gUHlVbmljb2RlX0VuY29kZVVURjgoUHlVbmljb2RlX0FTX1VOSUNPREUodiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3Vycm9nYXRlcGFzcyIpOworICAgICAgICB1dGY4ID0gUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZyh2LCAidXRmOCIsICJzdXJyb2dhdGVwYXNzIik7CiAgICAgICAgIGlmICh1dGY4ID09IE5VTEwpIHsKICAgICAgICAgICAgIHAtPmRlcHRoLS07CiAgICAgICAgICAgICBwLT5lcnJvciA9IFdGRVJSX1VOTUFSU0hBTExBQkxFOwpAQCAtNDQ1LDcgKzQ0Myw2IEBACiAgICAgd2YuZnAgPSBmcDsKICAgICB3Zi5lcnJvciA9IFdGRVJSX09LOwogICAgIHdmLmRlcHRoID0gMDsKLSAgICB3Zi5zdHJpbmdzID0gTlVMTDsKICAgICB3Zi52ZXJzaW9uID0gdmVyc2lvbjsKICAgICB3X2xvbmcoeCwgJndmKTsKIH0KQEAgLTQ1NywxMCArNDU0LDggQEAKICAgICB3Zi5mcCA9IGZwOwogICAgIHdmLmVycm9yID0gV0ZFUlJfT0s7CiAgICAgd2YuZGVwdGggPSAwOwotICAgIHdmLnN0cmluZ3MgPSAodmVyc2lvbiA+IDApID8gUHlEaWN0X05ldygpIDogTlVMTDsKICAgICB3Zi52ZXJzaW9uID0gdmVyc2lvbjsKICAgICB3X29iamVjdCh4LCAmd2YpOwotICAgIFB5X1hERUNSRUYod2Yuc3RyaW5ncyk7CiB9CiAKIHR5cGVkZWYgV0ZJTEUgUkZJTEU7IC8qIFNhbWUgc3RydWN0IHdpdGggZGlmZmVyZW50IGludmFyaWFudHMgKi8KQEAgLTQ4NSw3ICs0ODAsOSBAQAogICAgICAgICB9CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBQeU9iamVjdCAqZGF0YSA9IFB5T2JqZWN0X0NhbGxNZXRob2QocC0+cmVhZGFibGUsICJyZWFkIiwgImkiLCBuKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIocmVhZCk7CisKKyAgICAgICAgUHlPYmplY3QgKmRhdGEgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHAtPnJlYWRhYmxlLCAmUHlJZF9yZWFkLCAiaSIsIG4pOwogICAgICAgICByZWFkID0gMDsKICAgICAgICAgaWYgKGRhdGEgIT0gTlVMTCkgewogICAgICAgICAgICAgaWYgKCFQeUJ5dGVzX0NoZWNrKGRhdGEpKSB7CkBAIC0xMDY5LDYgKzEwNjYsMTggQEAKICAgICAgICAgICAgIGZpbGVuYW1lID0gcl9vYmplY3QocCk7CiAgICAgICAgICAgICBpZiAoZmlsZW5hbWUgPT0gTlVMTCkKICAgICAgICAgICAgICAgICBnb3RvIGNvZGVfZXJyb3I7CisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3QoZmlsZW5hbWUpKSB7CisgICAgICAgICAgICAgICAgaWYgKHAtPmN1cnJlbnRfZmlsZW5hbWUgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgICAgICBpZiAoIVB5VW5pY29kZV9Db21wYXJlKGZpbGVuYW1lLCBwLT5jdXJyZW50X2ZpbGVuYW1lKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihwLT5jdXJyZW50X2ZpbGVuYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lID0gcC0+Y3VycmVudF9maWxlbmFtZTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgcC0+Y3VycmVudF9maWxlbmFtZSA9IGZpbGVuYW1lOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIG5hbWUgPSByX29iamVjdChwKTsKICAgICAgICAgICAgIGlmIChuYW1lID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBjb2RlX2Vycm9yOwpAQCAtMTEzMSw3ICsxMTQwLDcgQEAKICAgICBhc3NlcnQoZnApOwogICAgIHJmLnJlYWRhYmxlID0gTlVMTDsKICAgICByZi5mcCA9IGZwOwotICAgIHJmLnN0cmluZ3MgPSBOVUxMOworICAgIHJmLmN1cnJlbnRfZmlsZW5hbWUgPSBOVUxMOwogICAgIHJmLmVuZCA9IHJmLnB0ciA9IE5VTEw7CiAgICAgcmV0dXJuIHJfc2hvcnQoJnJmKTsKIH0KQEAgLTExNDIsNyArMTE1MSw3IEBACiAgICAgUkZJTEUgcmY7CiAgICAgcmYuZnAgPSBmcDsKICAgICByZi5yZWFkYWJsZSA9IE5VTEw7Ci0gICAgcmYuc3RyaW5ncyA9IE5VTEw7CisgICAgcmYuY3VycmVudF9maWxlbmFtZSA9IE5VTEw7CiAgICAgcmYucHRyID0gcmYuZW5kID0gTlVMTDsKICAgICByZXR1cm4gcl9sb25nKCZyZik7CiB9CkBAIC0xMjA0LDExICsxMjEzLDEwIEBACiAgICAgUHlPYmplY3QgKnJlc3VsdDsKICAgICByZi5mcCA9IGZwOwogICAgIHJmLnJlYWRhYmxlID0gTlVMTDsKLSAgICByZi5zdHJpbmdzID0gUHlMaXN0X05ldygwKTsKKyAgICByZi5jdXJyZW50X2ZpbGVuYW1lID0gTlVMTDsKICAgICByZi5kZXB0aCA9IDA7CiAgICAgcmYucHRyID0gcmYuZW5kID0gTlVMTDsKICAgICByZXN1bHQgPSByX29iamVjdCgmcmYpOwotICAgIFB5X0RFQ1JFRihyZi5zdHJpbmdzKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQogCkBAIC0xMjE5LDEyICsxMjI3LDExIEBACiAgICAgUHlPYmplY3QgKnJlc3VsdDsKICAgICByZi5mcCA9IE5VTEw7CiAgICAgcmYucmVhZGFibGUgPSBOVUxMOworICAgIHJmLmN1cnJlbnRfZmlsZW5hbWUgPSBOVUxMOwogICAgIHJmLnB0ciA9IHN0cjsKICAgICByZi5lbmQgPSBzdHIgKyBsZW47Ci0gICAgcmYuc3RyaW5ncyA9IFB5TGlzdF9OZXcoMCk7CiAgICAgcmYuZGVwdGggPSAwOwogICAgIHJlc3VsdCA9IHJfb2JqZWN0KCZyZik7Ci0gICAgUHlfREVDUkVGKHJmLnN0cmluZ3MpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKQEAgLTEyMzIsNyArMTIzOSw2IEBACiBQeU1hcnNoYWxfV3JpdGVPYmplY3RUb1N0cmluZyhQeU9iamVjdCAqeCwgaW50IHZlcnNpb24pCiB7CiAgICAgV0ZJTEUgd2Y7Ci0gICAgUHlPYmplY3QgKnJlcyA9IE5VTEw7CiAKICAgICB3Zi5mcCA9IE5VTEw7CiAgICAgd2YucmVhZGFibGUgPSBOVUxMOwpAQCAtMTI0NCw5ICsxMjUwLDcgQEAKICAgICB3Zi5lcnJvciA9IFdGRVJSX09LOwogICAgIHdmLmRlcHRoID0gMDsKICAgICB3Zi52ZXJzaW9uID0gdmVyc2lvbjsKLSAgICB3Zi5zdHJpbmdzID0gKHZlcnNpb24gPiAwKSA/IFB5RGljdF9OZXcoKSA6IE5VTEw7CiAgICAgd19vYmplY3QoeCwgJndmKTsKLSAgICBQeV9YREVDUkVGKHdmLnN0cmluZ3MpOwogICAgIGlmICh3Zi5zdHIgIT0gTlVMTCkgewogICAgICAgICBjaGFyICpiYXNlID0gUHlCeXRlc19BU19TVFJJTkcoKFB5Qnl0ZXNPYmplY3QgKil3Zi5zdHIpOwogICAgICAgICBpZiAod2YucHRyIC0gYmFzZSA+IFBZX1NTSVpFX1RfTUFYKSB7CkBAIC0xMjY4LDEyICsxMjcyLDcgQEAKICAgICAgICAgICAgICAgIDoib2JqZWN0IHRvbyBkZWVwbHkgbmVzdGVkIHRvIG1hcnNoYWwiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIGlmICh3Zi5zdHIgIT0gTlVMTCkgewotICAgICAgICAvKiBYWFggUXVpY2sgaGFjayAtLSBuZWVkIHRvIGRvIHRoaXMgZGlmZmVyZW50bHkgKi8KLSAgICAgICAgcmVzID0gUHlCeXRlc19Gcm9tT2JqZWN0KHdmLnN0cik7Ci0gICAgICAgIFB5X0RFQ1JFRih3Zi5zdHIpOwotICAgIH0KLSAgICByZXR1cm4gcmVzOworICAgIHJldHVybiB3Zi5zdHI7CiB9CiAKIC8qIEFuZCBhbiBpbnRlcmZhY2UgZm9yIFB5dGhvbiBwcm9ncmFtcy4uLiAqLwpAQCAtMTI4NywxMiArMTI4NiwxNCBAQAogICAgIGludCB2ZXJzaW9uID0gUHlfTUFSU0hBTF9WRVJTSU9OOwogICAgIFB5T2JqZWN0ICpzOwogICAgIFB5T2JqZWN0ICpyZXM7CisgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOworCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPT3xpOmR1bXAiLCAmeCwgJmYsICZ2ZXJzaW9uKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcyA9IFB5TWFyc2hhbF9Xcml0ZU9iamVjdFRvU3RyaW5nKHgsIHZlcnNpb24pOwogICAgIGlmIChzID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZiwgIndyaXRlIiwgIk8iLCBzKTsKKyAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGYsICZQeUlkX3dyaXRlLCAiTyIsIHMpOwogICAgIFB5X0RFQ1JFRihzKTsKICAgICByZXR1cm4gcmVzOwogfQpAQCAtMTMxNCw2ICsxMzE1LDcgQEAKIG1hcnNoYWxfbG9hZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmYpCiB7CiAgICAgUHlPYmplY3QgKmRhdGEsICpyZXN1bHQ7CisgICAgX1B5X0lERU5USUZJRVIocmVhZCk7CiAgICAgUkZJTEUgcmY7CiAKICAgICAvKgpAQCAtMTMyMSw3ICsxMzIzLDcgQEAKICAgICAgKiBUaGlzIGlzIHRvIGVuc3VyZSB0aGF0IHRoZSBvYmplY3QgcGFzc2VkIGluIGF0IGxlYXN0CiAgICAgICogaGFzIGEgcmVhZCBtZXRob2Qgd2hpY2ggcmV0dXJucyBieXRlcy4KICAgICAgKi8KLSAgICBkYXRhID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmLCAicmVhZCIsICJpIiwgMCk7CisgICAgZGF0YSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZiwgJlB5SWRfcmVhZCwgImkiLCAwKTsKICAgICBpZiAoZGF0YSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoIVB5Qnl0ZXNfQ2hlY2soZGF0YSkpIHsKQEAgLTEzMzEsMTIgKzEzMzMsMTEgQEAKICAgICAgICAgcmVzdWx0ID0gTlVMTDsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIHJmLnN0cmluZ3MgPSBQeUxpc3RfTmV3KDApOwogICAgICAgICByZi5kZXB0aCA9IDA7CiAgICAgICAgIHJmLmZwID0gTlVMTDsKICAgICAgICAgcmYucmVhZGFibGUgPSBmOworICAgICAgICByZi5jdXJyZW50X2ZpbGVuYW1lID0gTlVMTDsKICAgICAgICAgcmVzdWx0ID0gcmVhZF9vYmplY3QoJnJmKTsKLSAgICAgICAgUHlfREVDUkVGKHJmLnN0cmluZ3MpOwogICAgIH0KICAgICBQeV9ERUNSRUYoZGF0YSk7CiAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTEzODksMTIgKzEzOTAsMTEgQEAKICAgICBuID0gcC5sZW47CiAgICAgcmYuZnAgPSBOVUxMOwogICAgIHJmLnJlYWRhYmxlID0gTlVMTDsKKyAgICByZi5jdXJyZW50X2ZpbGVuYW1lID0gTlVMTDsKICAgICByZi5wdHIgPSBzOwogICAgIHJmLmVuZCA9IHMgKyBuOwotICAgIHJmLnN0cmluZ3MgPSBQeUxpc3RfTmV3KDApOwogICAgIHJmLmRlcHRoID0gMDsKICAgICByZXN1bHQgPSByZWFkX29iamVjdCgmcmYpOwotICAgIFB5X0RFQ1JFRihyZi5zdHJpbmdzKTsKICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL21vZHN1cHBvcnQuYyBiL1B5dGhvbi9tb2RzdXBwb3J0LmMKaW5kZXggODViMGQ2Ni4uNDI4OTE0ZiAxMDA2NDQKLS0tIGEvUHl0aG9uL21vZHN1cHBvcnQuYworKysgYi9QeXRob24vbW9kc3VwcG9ydC5jCkBAIC0xNDgsMTUgKzE0OCw2IEBACiAgICAgcmV0dXJuIHY7CiB9CiAKLXN0YXRpYyBpbnQKLV91c3RybGVuKFB5X1VOSUNPREUgKnUpCi17Ci0gICAgaW50IGkgPSAwOwotICAgIFB5X1VOSUNPREUgKnYgPSB1OwotICAgIHdoaWxlICgqdiAhPSAwKSB7IGkrKzsgdisrOyB9Ci0gICAgcmV0dXJuIGk7Ci19Ci0KIHN0YXRpYyBQeU9iamVjdCAqCiBkb19ta3R1cGxlKGNvbnN0IGNoYXIgKipwX2Zvcm1hdCwgdmFfbGlzdCAqcF92YSwgaW50IGVuZGNoYXIsIGludCBuLCBpbnQgZmxhZ3MpCiB7CkBAIC0yNjksNyArMjYwLDcgQEAKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgIGlmIChuIDwgMCkKLSAgICAgICAgICAgICAgICAgICAgbiA9IF91c3RybGVuKHUpOworICAgICAgICAgICAgICAgICAgICBuID0gUHlfVU5JQ09ERV9zdHJsZW4odSk7CiAgICAgICAgICAgICAgICAgdiA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSh1LCBuKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHJldHVybiB2OwpAQCAtMjkyLDExICsyODMsNiBAQAogICAgICAgICBjYXNlICdDJzoKICAgICAgICAgewogICAgICAgICAgICAgaW50IGkgPSB2YV9hcmcoKnBfdmEsIGludCk7Ci0gICAgICAgICAgICBpZiAoaSA8IDAgfHwgaSA+IFB5VW5pY29kZV9HZXRNYXgoKSkgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJWMgYXJnIG5vdCBpbiByYW5nZSgweDExMDAwMCkiKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIH0KICAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbU9yZGluYWwoaSk7CiAgICAgICAgIH0KIApkaWZmIC0tZ2l0IGEvUHl0aG9uL29wY29kZV90YXJnZXRzLmggYi9QeXRob24vb3Bjb2RlX3RhcmdldHMuaAppbmRleCBhOTFkYTc5Li4yZDZiY2RhIDEwMDY0NAotLS0gYS9QeXRob24vb3Bjb2RlX3RhcmdldHMuaAorKysgYi9QeXRob24vb3Bjb2RlX3RhcmdldHMuaApAQCAtNzEsNyArNzEsNyBAQAogICAgICYmVEFSR0VUX1NUT1JFX0xPQ0FMUywKICAgICAmJlRBUkdFVF9QUklOVF9FWFBSLAogICAgICYmVEFSR0VUX0xPQURfQlVJTERfQ0xBU1MsCi0gICAgJiZfdW5rbm93bl9vcGNvZGUsCisgICAgJiZUQVJHRVRfWUlFTERfRlJPTSwKICAgICAmJl91bmtub3duX29wY29kZSwKICAgICAmJl91bmtub3duX29wY29kZSwKICAgICAmJlRBUkdFVF9JTlBMQUNFX0xTSElGVCwKZGlmZiAtLWdpdCBhL1B5dGhvbi9wZWVwaG9sZS5jIGIvUHl0aG9uL3BlZXBob2xlLmMKaW5kZXggMzU5ZWRhOC4uNWQ1MzY3NyAxMDA2NDQKLS0tIGEvUHl0aG9uL3BlZXBob2xlLmMKKysrIGIvUHl0aG9uL3BlZXBob2xlLmMKQEAgLTIzLDYgKzIzLDY0IEBACiAjZGVmaW5lIElTQkFTSUNCTE9DSyhibG9ja3MsIHN0YXJ0LCBieXRlcykgXAogICAgIChibG9ja3Nbc3RhcnRdPT1ibG9ja3Nbc3RhcnQrYnl0ZXMtMV0pCiAKKworI2RlZmluZSBDT05TVF9TVEFDS19DUkVBVEUoKSB7IFwKKyAgICBjb25zdF9zdGFja19zaXplID0gMjU2OyBcCisgICAgY29uc3Rfc3RhY2sgPSBQeU1lbV9OZXcoUHlPYmplY3QgKiwgY29uc3Rfc3RhY2tfc2l6ZSk7IFwKKyAgICBsb2FkX2NvbnN0X3N0YWNrID0gUHlNZW1fTmV3KFB5X3NzaXplX3QsIGNvbnN0X3N0YWNrX3NpemUpOyBcCisgICAgaWYgKCFjb25zdF9zdGFjayB8fCAhbG9hZF9jb25zdF9zdGFjaykgeyBcCisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7IFwKKyAgICAgICAgZ290byBleGl0RXJyb3I7IFwKKyAgICB9IFwKKyAgICB9CisKKyNkZWZpbmUgQ09OU1RfU1RBQ0tfREVMRVRFKCkgZG8geyBcCisgICAgaWYgKGNvbnN0X3N0YWNrKSBcCisgICAgICAgIFB5TWVtX0ZyZWUoY29uc3Rfc3RhY2spOyBcCisgICAgaWYgKGxvYWRfY29uc3Rfc3RhY2spIFwKKyAgICAgICAgUHlNZW1fRnJlZShsb2FkX2NvbnN0X3N0YWNrKTsgXAorICAgIH0gd2hpbGUoMCkKKworI2RlZmluZSBDT05TVF9TVEFDS19MRU4oKSAoY29uc3Rfc3RhY2tfdG9wICsgMSkKKworI2RlZmluZSBDT05TVF9TVEFDS19QVVNIX09QKGkpIGRvIHsgXAorICAgIFB5T2JqZWN0ICpfeDsgXAorICAgIGFzc2VydChjb2Rlc3RyW2ldID09IExPQURfQ09OU1QpOyBcCisgICAgYXNzZXJ0KFB5TGlzdF9HRVRfU0laRShjb25zdHMpID4gR0VUQVJHKGNvZGVzdHIsIGkpKTsgXAorICAgIF94ID0gUHlMaXN0X0dFVF9JVEVNKGNvbnN0cywgR0VUQVJHKGNvZGVzdHIsIGkpKTsgXAorICAgIGlmICgrK2NvbnN0X3N0YWNrX3RvcCA+PSBjb25zdF9zdGFja19zaXplKSB7IFwKKyAgICAgICAgY29uc3Rfc3RhY2tfc2l6ZSAqPSAyOyBcCisgICAgICAgIFB5TWVtX1Jlc2l6ZShjb25zdF9zdGFjaywgUHlPYmplY3QgKiwgY29uc3Rfc3RhY2tfc2l6ZSk7IFwKKyAgICAgICAgUHlNZW1fUmVzaXplKGxvYWRfY29uc3Rfc3RhY2ssIFB5X3NzaXplX3QsIGNvbnN0X3N0YWNrX3NpemUpOyBcCisgICAgICAgIGlmICghY29uc3Rfc3RhY2sgfHwgIWxvYWRfY29uc3Rfc3RhY2spIHsgXAorICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsgXAorICAgICAgICAgICAgZ290byBleGl0RXJyb3I7IFwKKyAgICAgICAgfSBcCisgICAgfSBcCisgICAgbG9hZF9jb25zdF9zdGFja1tjb25zdF9zdGFja190b3BdID0gaTsgXAorICAgIGNvbnN0X3N0YWNrW2NvbnN0X3N0YWNrX3RvcF0gPSBfeDsgXAorICAgIGluX2NvbnN0cyA9IDE7IFwKKyAgICB9IHdoaWxlKDApCisKKyNkZWZpbmUgQ09OU1RfU1RBQ0tfUkVTRVQoKSBkbyB7IFwKKyAgICBjb25zdF9zdGFja190b3AgPSAtMTsgXAorICAgIH0gd2hpbGUoMCkKKworI2RlZmluZSBDT05TVF9TVEFDS19UT1AoKSBcCisgICAgY29uc3Rfc3RhY2tbY29uc3Rfc3RhY2tfdG9wXQorCisjZGVmaW5lIENPTlNUX1NUQUNLX0xBU1ROKGkpIFwKKyAgICAmY29uc3Rfc3RhY2tbY29uc3Rfc3RhY2tfdG9wIC0gaSArIDFdCisKKyNkZWZpbmUgQ09OU1RfU1RBQ0tfUE9QKGkpIGRvIHsgXAorICAgIGFzc2VydChjb25zdF9zdGFja190b3AgKyAxID49IGkpOyBcCisgICAgY29uc3Rfc3RhY2tfdG9wIC09IGk7IFwKKyAgICB9IHdoaWxlKDApCisKKyNkZWZpbmUgQ09OU1RfU1RBQ0tfT1BfTEFTVE4oaSkgXAorICAgICgoY29uc3Rfc3RhY2tfdG9wID49IGkgLSAxKSA/IGxvYWRfY29uc3Rfc3RhY2tbY29uc3Rfc3RhY2tfdG9wIC0gaSArIDFdIDogLTEpCisKKwogLyogUmVwbGFjZSBMT0FEX0NPTlNUIGMxLiBMT0FEX0NPTlNUIGMyIC4uLiBMT0FEX0NPTlNUIGNuIEJVSUxEX1RVUExFIG4KICAgIHdpdGggICAgTE9BRF9DT05TVCAoYzEsIGMyLCAuLi4gY24pLgogICAgVGhlIGNvbnN0cyB0YWJsZSBtdXN0IHN0aWxsIGJlIGluIGxpc3QgZm9ybSBzbyB0aGF0IHRoZQpAQCAtMzMsMTcgKzkxLDE0IEBACiAgICB0ZXN0OyBmb3IgQlVJTERfU0VUIGl0IGFzc2VtYmxlcyBhIGZyb3plbnNldCByYXRoZXIgdGhhbiBhIHR1cGxlLgogKi8KIHN0YXRpYyBpbnQKLXR1cGxlX29mX2NvbnN0YW50cyh1bnNpZ25lZCBjaGFyICpjb2Rlc3RyLCBQeV9zc2l6ZV90IG4sIFB5T2JqZWN0ICpjb25zdHMpCit0dXBsZV9vZl9jb25zdGFudHModW5zaWduZWQgY2hhciAqY29kZXN0ciwgUHlfc3NpemVfdCBuLAorICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpjb25zdHMsIFB5T2JqZWN0ICoqb2JqcykKIHsKICAgICBQeU9iamVjdCAqbmV3Y29uc3QsICpjb25zdGFudDsKLSAgICBQeV9zc2l6ZV90IGksIGFyZywgbGVuX2NvbnN0czsKKyAgICBQeV9zc2l6ZV90IGksIGxlbl9jb25zdHM7CiAKICAgICAvKiBQcmUtY29uZGl0aW9ucyAqLwogICAgIGFzc2VydChQeUxpc3RfQ2hlY2tFeGFjdChjb25zdHMpKTsKLSAgICBhc3NlcnQoY29kZXN0cltuKjNdID09IEJVSUxEX1RVUExFIHx8IGNvZGVzdHJbbiozXSA9PSBCVUlMRF9MSVNUIHx8IGNvZGVzdHJbbiozXSA9PSBCVUlMRF9TRVQpOwotICAgIGFzc2VydChHRVRBUkcoY29kZXN0ciwgKG4qMykpID09IG4pOwotICAgIGZvciAoaT0wIDsgaTxuIDsgaSsrKQotICAgICAgICBhc3NlcnQoY29kZXN0cltpKjNdID09IExPQURfQ09OU1QpOwogCiAgICAgLyogQnVpbGR1cCBuZXcgdHVwbGUgb2YgY29uc3RhbnRzICovCiAgICAgbmV3Y29uc3QgPSBQeVR1cGxlX05ldyhuKTsKQEAgLTUxLDE2ICsxMDYsMTQgQEAKICAgICAgICAgcmV0dXJuIDA7CiAgICAgbGVuX2NvbnN0cyA9IFB5TGlzdF9HRVRfU0laRShjb25zdHMpOwogICAgIGZvciAoaT0wIDsgaTxuIDsgaSsrKSB7Ci0gICAgICAgIGFyZyA9IEdFVEFSRyhjb2Rlc3RyLCAoaSozKSk7Ci0gICAgICAgIGFzc2VydChhcmcgPCBsZW5fY29uc3RzKTsKLSAgICAgICAgY29uc3RhbnQgPSBQeUxpc3RfR0VUX0lURU0oY29uc3RzLCBhcmcpOworICAgICAgICBjb25zdGFudCA9IG9ianNbaV07CiAgICAgICAgIFB5X0lOQ1JFRihjb25zdGFudCk7CiAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0obmV3Y29uc3QsIGksIGNvbnN0YW50KTsKICAgICB9CiAKICAgICAvKiBJZiBpdCdzIGEgQlVJTERfU0VULCB1c2UgdGhlIFB5VHVwbGUgd2UganVzdCBidWlsdCB0byBjcmVhdGUgYQogICAgICAgUHlGcm96ZW5TZXQsIGFuZCB1c2UgdGhhdCBhcyB0aGUgY29uc3RhbnQgaW5zdGVhZDogKi8KLSAgICBpZiAoY29kZXN0cltuKjNdID09IEJVSUxEX1NFVCkgeworICAgIGlmIChjb2Rlc3RyWzBdID09IEJVSUxEX1NFVCkgewogICAgICAgICBQeU9iamVjdCAqdHVwbGUgPSBuZXdjb25zdDsKICAgICAgICAgbmV3Y29uc3QgPSBQeUZyb3plblNldF9OZXcodHVwbGUpOwogICAgICAgICBQeV9ERUNSRUYodHVwbGUpOwpAQCAtNzcsOSArMTMwLDggQEAKIAogICAgIC8qIFdyaXRlIE5PUHMgb3ZlciBvbGQgTE9BRF9DT05TVFMgYW5kCiAgICAgICAgYWRkIGEgbmV3IExPQURfQ09OU1QgbmV3Y29uc3Qgb24gdG9wIG9mIHRoZSBCVUlMRF9UVVBMRSBuICovCi0gICAgbWVtc2V0KGNvZGVzdHIsIE5PUCwgbiozKTsKLSAgICBjb2Rlc3RyW24qM10gPSBMT0FEX0NPTlNUOwotICAgIFNFVEFSRyhjb2Rlc3RyLCAobiozKSwgbGVuX2NvbnN0cyk7CisgICAgY29kZXN0clswXSA9IExPQURfQ09OU1Q7CisgICAgU0VUQVJHKGNvZGVzdHIsIDAsIGxlbl9jb25zdHMpOwogICAgIHJldHVybiAxOwogfQogCkBAIC04NywxNCArMTM5LDE0IEBACiAgICB3aXRoICAgIExPQURfQ09OU1QgYmlub3AoYzEsYzIpCiAgICBUaGUgY29uc3RzIHRhYmxlIG11c3Qgc3RpbGwgYmUgaW4gbGlzdCBmb3JtIHNvIHRoYXQgdGhlCiAgICBuZXcgY29uc3RhbnQgY2FuIGJlIGFwcGVuZGVkLgotICAgQ2FsbGVkIHdpdGggY29kZXN0ciBwb2ludGluZyB0byB0aGUgZmlyc3QgTE9BRF9DT05TVC4KKyAgIENhbGxlZCB3aXRoIGNvZGVzdHIgcG9pbnRpbmcgdG8gdGhlIEJJTk9QLgogICAgQWJhbmRvbnMgdGhlIHRyYW5zZm9ybWF0aW9uIGlmIHRoZSBmb2xkaW5nIGZhaWxzIChpLmUuICAxKydhJykuCiAgICBJZiB0aGUgbmV3IGNvbnN0YW50IGlzIGEgc2VxdWVuY2UsIG9ubHkgZm9sZHMgd2hlbiB0aGUgc2l6ZQogICAgaXMgYmVsb3cgYSB0aHJlc2hvbGQgdmFsdWUuICBUaGF0IGtlZXBzIHB5YyBmaWxlcyBmcm9tCiAgICBiZWNvbWluZyBsYXJnZSBpbiB0aGUgcHJlc2VuY2Ugb2YgY29kZSBsaWtlOiAgKE5vbmUsKSoxMDAwLgogKi8KIHN0YXRpYyBpbnQKLWZvbGRfYmlub3BzX29uX2NvbnN0YW50cyh1bnNpZ25lZCBjaGFyICpjb2Rlc3RyLCBQeU9iamVjdCAqY29uc3RzKQorZm9sZF9iaW5vcHNfb25fY29uc3RhbnRzKHVuc2lnbmVkIGNoYXIgKmNvZGVzdHIsIFB5T2JqZWN0ICpjb25zdHMsIFB5T2JqZWN0ICoqb2JqcykKIHsKICAgICBQeU9iamVjdCAqbmV3Y29uc3QsICp2LCAqdzsKICAgICBQeV9zc2l6ZV90IGxlbl9jb25zdHMsIHNpemU7CkBAIC0xMDIsMTMgKzE1NCwxMSBAQAogCiAgICAgLyogUHJlLWNvbmRpdGlvbnMgKi8KICAgICBhc3NlcnQoUHlMaXN0X0NoZWNrRXhhY3QoY29uc3RzKSk7Ci0gICAgYXNzZXJ0KGNvZGVzdHJbMF0gPT0gTE9BRF9DT05TVCk7Ci0gICAgYXNzZXJ0KGNvZGVzdHJbM10gPT0gTE9BRF9DT05TVCk7CiAKICAgICAvKiBDcmVhdGUgbmV3IGNvbnN0YW50ICovCi0gICAgdiA9IFB5TGlzdF9HRVRfSVRFTShjb25zdHMsIEdFVEFSRyhjb2Rlc3RyLCAwKSk7Ci0gICAgdyA9IFB5TGlzdF9HRVRfSVRFTShjb25zdHMsIEdFVEFSRyhjb2Rlc3RyLCAzKSk7Ci0gICAgb3Bjb2RlID0gY29kZXN0cls2XTsKKyAgICB2ID0gb2Jqc1swXTsKKyAgICB3ID0gb2Jqc1sxXTsKKyAgICBvcGNvZGUgPSBjb2Rlc3RyWzBdOwogICAgIHN3aXRjaCAob3Bjb2RlKSB7CiAgICAgICAgIGNhc2UgQklOQVJZX1BPV0VSOgogICAgICAgICAgICAgbmV3Y29uc3QgPSBQeU51bWJlcl9Qb3dlcih2LCB3LCBQeV9Ob25lKTsKQEAgLTEzMywyNCArMTgzLDYgQEAKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIEJJTkFSWV9TVUJTQ1I6CiAgICAgICAgICAgICBuZXdjb25zdCA9IFB5T2JqZWN0X0dldEl0ZW0odiwgdyk7Ci0gICAgICAgICAgICAvKiAjNTA1NzogaWYgdiBpcyB1bmljb2RlLCB0aGVyZSBtaWdodCBiZSBkaWZmZXJlbmNlcyBiZXR3ZWVuCi0gICAgICAgICAgICAgICB3aWRlIGFuZCBuYXJyb3cgYnVpbGRzIGluIGNhc2VzIGxpa2UgJ1xVMDAwMTIzNDUnWzBdLgotICAgICAgICAgICAgICAgV2lkZSBidWlsZHMgd2lsbCByZXR1cm4gYSBub24tQk1QIGNoYXIsIHdoZXJlYXMgbmFycm93IGJ1aWxkcwotICAgICAgICAgICAgICAgd2lsbCByZXR1cm4gYSBzdXJyb2dhdGUuICBJbiBib3RoIHRoZSBjYXNlcyBza2lwIHRoZQotICAgICAgICAgICAgICAgb3B0aW1pemF0aW9uIGluIG9yZGVyIHRvIHByb2R1Y2UgY29tcGF0aWJsZSBweWNzLgotICAgICAgICAgICAgICovCi0gICAgICAgICAgICBpZiAobmV3Y29uc3QgIT0gTlVMTCAmJgotICAgICAgICAgICAgICAgIFB5VW5pY29kZV9DaGVjayh2KSAmJiBQeVVuaWNvZGVfQ2hlY2sobmV3Y29uc3QpKSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjaCA9IFB5VW5pY29kZV9BU19VTklDT0RFKG5ld2NvbnN0KVswXTsKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICAgICBpZiAoY2ggPiAweEZGRkYpIHsKLSNlbHNlCi0gICAgICAgICAgICAgICAgaWYgKGNoID49IDB4RDgwMCAmJiBjaCA8PSAweERGRkYpIHsKLSNlbmRpZgotICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYobmV3Y29uc3QpOwotICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBCSU5BUllfTFNISUZUOgogICAgICAgICAgICAgbmV3Y29uc3QgPSBQeU51bWJlcl9Mc2hpZnQodiwgdyk7CkBAIC0xOTgsMTYgKzIzMCwxNSBAQAogICAgIFB5X0RFQ1JFRihuZXdjb25zdCk7CiAKICAgICAvKiBXcml0ZSBOT1AgTk9QIE5PUCBOT1AgTE9BRF9DT05TVCBuZXdjb25zdCAqLwotICAgIG1lbXNldChjb2Rlc3RyLCBOT1AsIDQpOwotICAgIGNvZGVzdHJbNF0gPSBMT0FEX0NPTlNUOwotICAgIFNFVEFSRyhjb2Rlc3RyLCA0LCBsZW5fY29uc3RzKTsKKyAgICBjb2Rlc3RyWy0yXSA9IExPQURfQ09OU1Q7CisgICAgU0VUQVJHKGNvZGVzdHIsIC0yLCBsZW5fY29uc3RzKTsKICAgICByZXR1cm4gMTsKIH0KIAogc3RhdGljIGludAotZm9sZF91bmFyeW9wc19vbl9jb25zdGFudHModW5zaWduZWQgY2hhciAqY29kZXN0ciwgUHlPYmplY3QgKmNvbnN0cykKK2ZvbGRfdW5hcnlvcHNfb25fY29uc3RhbnRzKHVuc2lnbmVkIGNoYXIgKmNvZGVzdHIsIFB5T2JqZWN0ICpjb25zdHMsIFB5T2JqZWN0ICp2KQogewotICAgIFB5T2JqZWN0ICpuZXdjb25zdD1OVUxMLCAqdjsKKyAgICBQeU9iamVjdCAqbmV3Y29uc3Q7CiAgICAgUHlfc3NpemVfdCBsZW5fY29uc3RzOwogICAgIGludCBvcGNvZGU7CiAKQEAgLTIxNiwxMyArMjQ3LDEwIEBACiAgICAgYXNzZXJ0KGNvZGVzdHJbMF0gPT0gTE9BRF9DT05TVCk7CiAKICAgICAvKiBDcmVhdGUgbmV3IGNvbnN0YW50ICovCi0gICAgdiA9IFB5TGlzdF9HRVRfSVRFTShjb25zdHMsIEdFVEFSRyhjb2Rlc3RyLCAwKSk7CiAgICAgb3Bjb2RlID0gY29kZXN0clszXTsKICAgICBzd2l0Y2ggKG9wY29kZSkgewogICAgICAgICBjYXNlIFVOQVJZX05FR0FUSVZFOgotICAgICAgICAgICAgLyogUHJlc2VydmUgdGhlIHNpZ24gb2YgLTAuMCAqLwotICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0lzVHJ1ZSh2KSA9PSAxKQotICAgICAgICAgICAgICAgIG5ld2NvbnN0ID0gUHlOdW1iZXJfTmVnYXRpdmUodik7CisgICAgICAgICAgICBuZXdjb25zdCA9IFB5TnVtYmVyX05lZ2F0aXZlKHYpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgVU5BUllfSU5WRVJUOgogICAgICAgICAgICAgbmV3Y29uc3QgPSBQeU51bWJlcl9JbnZlcnQodik7CkBAIC0zNTgsNyArMzg2LDExIEBACiAgICAgdW5zaWduZWQgY2hhciAqbGluZW5vOwogICAgIGludCAqYWRkcm1hcCA9IE5VTEw7CiAgICAgaW50IG5ld19saW5lLCBjdW1fb3JpZ19saW5lLCBsYXN0X2xpbmUsIHRhYnNpejsKLSAgICBpbnQgY3VtbGM9MCwgbGFzdGxjPTA7ICAgICAgLyogQ291bnQgcnVucyBvZiBjb25zZWN1dGl2ZSBMT0FEX0NPTlNUcyAqLworICAgIFB5T2JqZWN0ICoqY29uc3Rfc3RhY2sgPSBOVUxMOworICAgIFB5X3NzaXplX3QgKmxvYWRfY29uc3Rfc3RhY2sgPSBOVUxMOworICAgIFB5X3NzaXplX3QgY29uc3Rfc3RhY2tfdG9wID0gLTE7CisgICAgUHlfc3NpemVfdCBjb25zdF9zdGFja19zaXplID0gMDsKKyAgICBpbnQgaW5fY29uc3RzID0gMDsgIC8qIHdoZXRoZXIgd2UgYXJlIGluIGEgTE9BRF9DT05TVCBzZXF1ZW5jZSAqLwogICAgIHVuc2lnbmVkIGludCAqYmxvY2tzID0gTlVMTDsKICAgICBjaGFyICpuYW1lOwogCkBAIC00MDQsMTIgKzQzNiwxNiBAQAogICAgICAgICBnb3RvIGV4aXRFcnJvcjsKICAgICBhc3NlcnQoUHlMaXN0X0NoZWNrKGNvbnN0cykpOwogCisgICAgQ09OU1RfU1RBQ0tfQ1JFQVRFKCk7CisKICAgICBmb3IgKGk9MCA7IGk8Y29kZWxlbiA7IGkgKz0gQ09ERVNJWkUoY29kZXN0cltpXSkpIHsKICAgICAgIHJlb3B0aW1pemVfY3VycmVudDoKICAgICAgICAgb3Bjb2RlID0gY29kZXN0cltpXTsKIAotICAgICAgICBsYXN0bGMgPSBjdW1sYzsKLSAgICAgICAgY3VtbGMgPSAwOworICAgICAgICBpZiAoIWluX2NvbnN0cykgeworICAgICAgICAgICAgQ09OU1RfU1RBQ0tfUkVTRVQoKTsKKyAgICAgICAgfQorICAgICAgICBpbl9jb25zdHMgPSAwOwogCiAgICAgICAgIHN3aXRjaCAob3Bjb2RlKSB7CiAgICAgICAgICAgICAvKiBSZXBsYWNlIFVOQVJZX05PVCBQT1BfSlVNUF9JRl9GQUxTRQpAQCAtNDUwLDIxICs0ODYsMjEgQEAKICAgICAgICAgICAgICAgICAgICAgZ290byBleGl0RXJyb3I7CiAgICAgICAgICAgICAgICAgZWxzZSBpZiAoaCA9PSAwKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICBjdW1sYyA9IGxhc3RsYyArIDE7CisgICAgICAgICAgICAgICAgQ09OU1RfU1RBQ0tfUFVTSF9PUChpKTsKICAgICAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgICAgIC8qIFNraXAgb3ZlciBMT0FEX0NPTlNUIHRydWVjb25zdAogICAgICAgICAgICAgICAgICAgIFBPUF9KVU1QX0lGX0ZBTFNFIHh4LiBUaGlzIGltcHJvdmVzCiAgICAgICAgICAgICAgICAgICAgIndoaWxlIDEiIHBlcmZvcm1hbmNlLiAqLwogICAgICAgICAgICAgY2FzZSBMT0FEX0NPTlNUOgotICAgICAgICAgICAgICAgIGN1bWxjID0gbGFzdGxjICsgMTsKKyAgICAgICAgICAgICAgICBDT05TVF9TVEFDS19QVVNIX09QKGkpOwogICAgICAgICAgICAgICAgIGogPSBHRVRBUkcoY29kZXN0ciwgaSk7CiAgICAgICAgICAgICAgICAgaWYgKGNvZGVzdHJbaSszXSAhPSBQT1BfSlVNUF9JRl9GQUxTRSAgfHwKICAgICAgICAgICAgICAgICAgICAgIUlTQkFTSUNCTE9DSyhibG9ja3MsaSw2KSAgfHwKICAgICAgICAgICAgICAgICAgICAgIVB5T2JqZWN0X0lzVHJ1ZShQeUxpc3RfR0VUX0lURU0oY29uc3RzLCBqKSkpCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIG1lbXNldChjb2Rlc3RyK2ksIE5PUCwgNik7Ci0gICAgICAgICAgICAgICAgY3VtbGMgPSAwOworICAgICAgICAgICAgICAgIENPTlNUX1NUQUNLX1JFU0VUKCk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgICAgICAgICAvKiBUcnkgdG8gZm9sZCB0dXBsZXMgb2YgY29uc3RhbnRzIChpbmNsdWRlcyBhIGNhc2UgZm9yIGxpc3RzIGFuZCBzZXRzCkBAIC00NzYsMTkgKzUxMiwyMyBAQAogICAgICAgICAgICAgY2FzZSBCVUlMRF9MSVNUOgogICAgICAgICAgICAgY2FzZSBCVUlMRF9TRVQ6CiAgICAgICAgICAgICAgICAgaiA9IEdFVEFSRyhjb2Rlc3RyLCBpKTsKLSAgICAgICAgICAgICAgICBoID0gaSAtIDMgKiBqOwotICAgICAgICAgICAgICAgIGlmIChoID49IDAgICYmCi0gICAgICAgICAgICAgICAgICAgIGogPD0gbGFzdGxjICAgICAgICAgICAgICAgICAgJiYKKyAgICAgICAgICAgICAgICBpZiAoaiA9PSAwKQorICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBoID0gQ09OU1RfU1RBQ0tfT1BfTEFTVE4oaik7CisgICAgICAgICAgICAgICAgYXNzZXJ0KChoID49IDAgfHwgQ09OU1RfU1RBQ0tfTEVOKCkgPCBqKSk7CisgICAgICAgICAgICAgICAgaWYgKGggPj0gMCAmJiBqID4gMCAmJiBqIDw9IENPTlNUX1NUQUNLX0xFTigpICYmCiAgICAgICAgICAgICAgICAgICAgICgob3Bjb2RlID09IEJVSUxEX1RVUExFICYmCi0gICAgICAgICAgICAgICAgICAgICAgSVNCQVNJQ0JMT0NLKGJsb2NrcywgaCwgMyooaisxKSkpIHx8CisgICAgICAgICAgICAgICAgICAgICAgSVNCQVNJQ0JMT0NLKGJsb2NrcywgaCwgaS1oKzMpKSB8fAogICAgICAgICAgICAgICAgICAgICAgKChvcGNvZGUgPT0gQlVJTERfTElTVCB8fCBvcGNvZGUgPT0gQlVJTERfU0VUKSAmJgogICAgICAgICAgICAgICAgICAgICAgIGNvZGVzdHJbaSszXT09Q09NUEFSRV9PUCAmJgotICAgICAgICAgICAgICAgICAgICAgIElTQkFTSUNCTE9DSyhibG9ja3MsIGgsIDMqKGorMikpICYmCisgICAgICAgICAgICAgICAgICAgICAgSVNCQVNJQ0JMT0NLKGJsb2NrcywgaCwgaS1oKzYpICYmCiAgICAgICAgICAgICAgICAgICAgICAgKEdFVEFSRyhjb2Rlc3RyLGkrMyk9PTYgfHwKICAgICAgICAgICAgICAgICAgICAgICAgR0VUQVJHKGNvZGVzdHIsaSszKT09NykpKSAmJgotICAgICAgICAgICAgICAgICAgICB0dXBsZV9vZl9jb25zdGFudHMoJmNvZGVzdHJbaF0sIGosIGNvbnN0cykpIHsKKyAgICAgICAgICAgICAgICAgICAgdHVwbGVfb2ZfY29uc3RhbnRzKCZjb2Rlc3RyW2ldLCBqLCBjb25zdHMsIENPTlNUX1NUQUNLX0xBU1ROKGopKSkgewogICAgICAgICAgICAgICAgICAgICBhc3NlcnQoY29kZXN0cltpXSA9PSBMT0FEX0NPTlNUKTsKLSAgICAgICAgICAgICAgICAgICAgY3VtbGMgPSAxOworICAgICAgICAgICAgICAgICAgICBtZW1zZXQoJmNvZGVzdHJbaF0sIE5PUCwgaSAtIGgpOworICAgICAgICAgICAgICAgICAgICBDT05TVF9TVEFDS19QT1Aoaik7CisgICAgICAgICAgICAgICAgICAgIENPTlNUX1NUQUNLX1BVU0hfT1AoaSk7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBpZiAoY29kZXN0cltpKzNdICE9IFVOUEFDS19TRVFVRU5DRSAgfHwKQEAgLTUwMSwxMCArNTQxLDEyIEBACiAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChqID09IDIpIHsKICAgICAgICAgICAgICAgICAgICAgY29kZXN0cltpXSA9IFJPVF9UV087CiAgICAgICAgICAgICAgICAgICAgIG1lbXNldChjb2Rlc3RyK2krMSwgTk9QLCA1KTsKKyAgICAgICAgICAgICAgICAgICAgQ09OU1RfU1RBQ0tfUkVTRVQoKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGogPT0gMykgewogICAgICAgICAgICAgICAgICAgICBjb2Rlc3RyW2ldID0gUk9UX1RIUkVFOwogICAgICAgICAgICAgICAgICAgICBjb2Rlc3RyW2krMV0gPSBST1RfVFdPOwogICAgICAgICAgICAgICAgICAgICBtZW1zZXQoY29kZXN0citpKzIsIE5PUCwgNCk7CisgICAgICAgICAgICAgICAgICAgIENPTlNUX1NUQUNLX1JFU0VUKCk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGJyZWFrOwogCkBAIC01MjMsMTIgKzU2NSwxOCBAQAogICAgICAgICAgICAgY2FzZSBCSU5BUllfQU5EOgogICAgICAgICAgICAgY2FzZSBCSU5BUllfWE9SOgogICAgICAgICAgICAgY2FzZSBCSU5BUllfT1I6Ci0gICAgICAgICAgICAgICAgaWYgKGxhc3RsYyA+PSAyICAgICAgICAgICAgICAgICAgJiYKLSAgICAgICAgICAgICAgICAgICAgSVNCQVNJQ0JMT0NLKGJsb2NrcywgaS02LCA3KSAgJiYKLSAgICAgICAgICAgICAgICAgICAgZm9sZF9iaW5vcHNfb25fY29uc3RhbnRzKCZjb2Rlc3RyW2ktNl0sIGNvbnN0cykpIHsKKyAgICAgICAgICAgICAgICAvKiBOT1RFOiBMT0FEX0NPTlNUIGlzIHNhdmVkIGF0IGBpLTJgIHNpbmNlIGl0IGhhcyBhbiBhcmcKKyAgICAgICAgICAgICAgICAgICB3aGlsZSBCSU5PUCBoYXNuJ3QgKi8KKyAgICAgICAgICAgICAgICBoID0gQ09OU1RfU1RBQ0tfT1BfTEFTVE4oMik7CisgICAgICAgICAgICAgICAgYXNzZXJ0KChoID49IDAgfHwgQ09OU1RfU1RBQ0tfTEVOKCkgPCAyKSk7CisgICAgICAgICAgICAgICAgaWYgKGggPj0gMCAmJgorICAgICAgICAgICAgICAgICAgICBJU0JBU0lDQkxPQ0soYmxvY2tzLCBoLCBpLWgrMSkgICYmCisgICAgICAgICAgICAgICAgICAgIGZvbGRfYmlub3BzX29uX2NvbnN0YW50cygmY29kZXN0cltpXSwgY29uc3RzLCBDT05TVF9TVEFDS19MQVNUTigyKSkpIHsKICAgICAgICAgICAgICAgICAgICAgaSAtPSAyOworICAgICAgICAgICAgICAgICAgICBtZW1zZXQoJmNvZGVzdHJbaF0sIE5PUCwgaSAtIGgpOwogICAgICAgICAgICAgICAgICAgICBhc3NlcnQoY29kZXN0cltpXSA9PSBMT0FEX0NPTlNUKTsKLSAgICAgICAgICAgICAgICAgICAgY3VtbGMgPSAxOworICAgICAgICAgICAgICAgICAgICBDT05TVF9TVEFDS19QT1AoMik7CisgICAgICAgICAgICAgICAgICAgIENPTlNUX1NUQUNLX1BVU0hfT1AoaSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGJyZWFrOwogCkBAIC01MzcsMTIgKzU4NSwxNSBAQAogICAgICAgICAgICAgY2FzZSBVTkFSWV9ORUdBVElWRToKICAgICAgICAgICAgIGNhc2UgVU5BUllfSU5WRVJUOgogICAgICAgICAgICAgY2FzZSBVTkFSWV9QT1NJVElWRToKLSAgICAgICAgICAgICAgICBpZiAobGFzdGxjID49IDEgICAgICAgICAgICAgICAgICAmJgotICAgICAgICAgICAgICAgICAgICBJU0JBU0lDQkxPQ0soYmxvY2tzLCBpLTMsIDQpICAmJgotICAgICAgICAgICAgICAgICAgICBmb2xkX3VuYXJ5b3BzX29uX2NvbnN0YW50cygmY29kZXN0cltpLTNdLCBjb25zdHMpKSAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBoID0gQ09OU1RfU1RBQ0tfT1BfTEFTVE4oMSk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KChoID49IDAgfHwgQ09OU1RfU1RBQ0tfTEVOKCkgPCAxKSk7CisgICAgICAgICAgICAgICAgaWYgKGggPj0gMCAmJgorICAgICAgICAgICAgICAgICAgICBJU0JBU0lDQkxPQ0soYmxvY2tzLCBoLCBpLWgrMSkgICYmCisgICAgICAgICAgICAgICAgICAgIGZvbGRfdW5hcnlvcHNfb25fY29uc3RhbnRzKCZjb2Rlc3RyW2ktM10sIGNvbnN0cywgQ09OU1RfU1RBQ0tfVE9QKCkpKSB7CiAgICAgICAgICAgICAgICAgICAgIGkgLT0gMjsKICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KGNvZGVzdHJbaV0gPT0gTE9BRF9DT05TVCk7Ci0gICAgICAgICAgICAgICAgICAgIGN1bWxjID0gMTsKKyAgICAgICAgICAgICAgICAgICAgQ09OU1RfU1RBQ0tfUE9QKDEpOworICAgICAgICAgICAgICAgICAgICBDT05TVF9TVEFDS19QVVNIX09QKGkpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBicmVhazsKIApAQCAtNjk5LDYgKzc1MCw3IEBACiAgICAgYXNzZXJ0KGggKyBub3BzID09IGNvZGVsZW4pOwogCiAgICAgY29kZSA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoKGNoYXIgKiljb2Rlc3RyLCBoKTsKKyAgICBDT05TVF9TVEFDS19ERUxFVEUoKTsKICAgICBQeU1lbV9GcmVlKGFkZHJtYXApOwogICAgIFB5TWVtX0ZyZWUoY29kZXN0cik7CiAgICAgUHlNZW1fRnJlZShibG9ja3MpOwpAQCAtNzA4LDYgKzc2MCw3IEBACiAgICAgY29kZSA9IE5VTEw7CiAKICBleGl0VW5jaGFuZ2VkOgorICAgIENPTlNUX1NUQUNLX0RFTEVURSgpOwogICAgIGlmIChibG9ja3MgIT0gTlVMTCkKICAgICAgICAgUHlNZW1fRnJlZShibG9ja3MpOwogICAgIGlmIChhZGRybWFwICE9IE5VTEwpCmRpZmYgLS1naXQgYS9QeXRob24vcHlzdHJ0b2QuYyBiL1B5dGhvbi9weXN0cnRvZC5jCmluZGV4IDc1ZTMwMzIuLjdiZjIxYzAgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9weXN0cnRvZC5jCisrKyBiL1B5dGhvbi9weXN0cnRvZC5jCkBAIC05NTQsNyArOTU0LDcgQEAKICAgICAgICAgICAgIC8qIHNob3VsZG4ndCBnZXQgaGVyZTogR2F5J3MgY29kZSBzaG91bGQgYWx3YXlzIHJldHVybgogICAgICAgICAgICAgICAgc29tZXRoaW5nIHN0YXJ0aW5nIHdpdGggYSBkaWdpdCwgYW4gJ0knLCAgb3IgJ04nICovCiAgICAgICAgICAgICBzdHJuY3B5KHAsICJFUlIiLCAzKTsKLSAgICAgICAgICAgIHAgKz0gMzsKKyAgICAgICAgICAgIC8qIHAgKz0gMzsgKi8KICAgICAgICAgICAgIGFzc2VydCgwKTsKICAgICAgICAgfQogICAgICAgICBnb3RvIGV4aXQ7CmRpZmYgLS1naXQgYS9QeXRob24vcHl0aG9ucnVuLmMgYi9QeXRob24vcHl0aG9ucnVuLmMKaW5kZXggNTg0YTE5Yi4uZjRlN2U3YiAxMDA2NDQKLS0tIGEvUHl0aG9uL3B5dGhvbnJ1bi5jCisrKyBiL1B5dGhvbi9weXRob25ydW4uYwpAQCAtNjIsMTQgKzYyLDE3IEBACiBzdGF0aWMgUHlPYmplY3QgKnJ1bl9weWNfZmlsZShGSUxFICosIGNvbnN0IGNoYXIgKiwgUHlPYmplY3QgKiwgUHlPYmplY3QgKiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Q29tcGlsZXJGbGFncyAqKTsKIHN0YXRpYyB2b2lkIGVycl9pbnB1dChwZXJyZGV0YWlsICopOworc3RhdGljIHZvaWQgZXJyX2ZyZWUocGVycmRldGFpbCAqKTsKIHN0YXRpYyB2b2lkIGluaXRzaWdzKHZvaWQpOwogc3RhdGljIHZvaWQgY2FsbF9weV9leGl0ZnVuY3Modm9pZCk7CiBzdGF0aWMgdm9pZCB3YWl0X2Zvcl90aHJlYWRfc2h1dGRvd24odm9pZCk7CiBzdGF0aWMgdm9pZCBjYWxsX2xsX2V4aXRmdW5jcyh2b2lkKTsKLWV4dGVybiB2b2lkIF9QeVVuaWNvZGVfSW5pdCh2b2lkKTsKK2V4dGVybiBpbnQgX1B5VW5pY29kZV9Jbml0KHZvaWQpOwogZXh0ZXJuIHZvaWQgX1B5VW5pY29kZV9GaW5pKHZvaWQpOwogZXh0ZXJuIGludCBfUHlMb25nX0luaXQodm9pZCk7CiBleHRlcm4gdm9pZCBQeUxvbmdfRmluaSh2b2lkKTsKK2V4dGVybiBpbnQgX1B5RmF1bHRoYW5kbGVyX0luaXQodm9pZCk7CitleHRlcm4gdm9pZCBfUHlGYXVsdGhhbmRsZXJfRmluaSh2b2lkKTsKIAogI2lmZGVmIFdJVEhfVEhSRUFECiBleHRlcm4gdm9pZCBfUHlHSUxTdGF0ZV9Jbml0KFB5SW50ZXJwcmV0ZXJTdGF0ZSAqLCBQeVRocmVhZFN0YXRlICopOwpAQCAtMTM5LDEyICsxNDIsMTMgQEAKIHsKICAgICBjaGFyICpuYW1lX3V0ZjgsICpuYW1lX3N0cjsKICAgICBQeU9iamVjdCAqY29kZWMsICpuYW1lID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihuYW1lKTsKIAogICAgIGNvZGVjID0gX1B5Q29kZWNfTG9va3VwKGVuY29kaW5nKTsKICAgICBpZiAoIWNvZGVjKQogICAgICAgICBnb3RvIGVycm9yOwogCi0gICAgbmFtZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoY29kZWMsICJuYW1lIik7CisgICAgbmFtZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoY29kZWMsICZQeUlkX25hbWUpOwogICAgIFB5X0NMRUFSKGNvZGVjKTsKICAgICBpZiAoIW5hbWUpCiAgICAgICAgIGdvdG8gZXJyb3I7CkBAIC0xNjYsMTggKzE3MCwyNSBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi0jaWYgZGVmaW5lZChIQVZFX0xBTkdJTkZPX0gpICYmIGRlZmluZWQoQ09ERVNFVCkKIHN0YXRpYyBjaGFyKgotZ2V0X2NvZGVzZXQodm9pZCkKK2dldF9sb2NhbGVfZW5jb2Rpbmcodm9pZCkKIHsKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgY2hhciBjb2RlcGFnZVsxMDBdOworICAgIFB5T1Nfc25wcmludGYoY29kZXBhZ2UsIHNpemVvZihjb2RlcGFnZSksICJjcCVkIiwgR2V0QUNQKCkpOworICAgIHJldHVybiBnZXRfY29kZWNfbmFtZShjb2RlcGFnZSk7CisjZWxpZiBkZWZpbmVkKEhBVkVfTEFOR0lORk9fSCkgJiYgZGVmaW5lZChDT0RFU0VUKQogICAgIGNoYXIqIGNvZGVzZXQgPSBubF9sYW5naW5mbyhDT0RFU0VUKTsKICAgICBpZiAoIWNvZGVzZXQgfHwgY29kZXNldFswXSA9PSAnXDAnKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiQ09ERVNFVCBpcyBub3Qgc2V0IG9yIGVtcHR5Iik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICByZXR1cm4gZ2V0X2NvZGVjX25hbWUoY29kZXNldCk7Ci19CisjZWxzZQorICAgIFB5RXJyX1NldE5vbmUoUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvcik7CisgICAgcmV0dXJuIE5VTEw7CiAjZW5kaWYKK30KIAogdm9pZAogUHlfSW5pdGlhbGl6ZUV4KGludCBpbnN0YWxsX3NpZ3MpCkBAIC0yNTcsNyArMjY4LDggQEAKICAgICAgICAgUHlfRmF0YWxFcnJvcigiUHlfSW5pdGlhbGl6ZTogY2FuJ3QgbWFrZSBtb2R1bGVzX3JlbG9hZGluZyBkaWN0aW9uYXJ5Iik7CiAKICAgICAvKiBJbml0IFVuaWNvZGUgaW1wbGVtZW50YXRpb247IHJlbGllcyBvbiB0aGUgY29kZWMgcmVnaXN0cnkgKi8KLSAgICBfUHlVbmljb2RlX0luaXQoKTsKKyAgICBpZiAoX1B5VW5pY29kZV9Jbml0KCkgPCAwKQorICAgICAgICBQeV9GYXRhbEVycm9yKCJQeV9Jbml0aWFsaXplOiBjYW4ndCBpbml0aWFsaXplIHVuaWNvZGUiKTsKIAogICAgIGJpbW9kID0gX1B5QnVpbHRpbl9Jbml0KCk7CiAgICAgaWYgKGJpbW9kID09IE5VTEwpCkBAIC0yOTYsNiArMzA4LDEwIEBACiAKICAgICBfUHlJbXBvcnRIb29rc19Jbml0KCk7CiAKKyAgICAvKiBpbml0aWFsaXplIHRoZSBmYXVsdGhhbmRsZXIgbW9kdWxlICovCisgICAgaWYgKF9QeUZhdWx0aGFuZGxlcl9Jbml0KCkpCisgICAgICAgIFB5X0ZhdGFsRXJyb3IoIlB5X0luaXRpYWxpemU6IGNhbid0IGluaXRpYWxpemUgZmF1bHRoYW5kbGVyIik7CisKICAgICAvKiBJbml0aWFsaXplIF93YXJuaW5ncy4gKi8KICAgICBfUHlXYXJuaW5nc19Jbml0KCk7CiAKQEAgLTM2MSw5ICszNzcsMTAgQEAKICAgICBQeU9iamVjdCAqZm91dCA9IFB5U3lzX0dldE9iamVjdCgic3Rkb3V0Iik7CiAgICAgUHlPYmplY3QgKmZlcnIgPSBQeVN5c19HZXRPYmplY3QoInN0ZGVyciIpOwogICAgIFB5T2JqZWN0ICp0bXA7CisgICAgX1B5X0lERU5USUZJRVIoZmx1c2gpOwogCiAgICAgaWYgKGZvdXQgIT0gTlVMTCAmJiBmb3V0ICE9IFB5X05vbmUgJiYgIWZpbGVfaXNfY2xvc2VkKGZvdXQpKSB7Ci0gICAgICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZm91dCwgImZsdXNoIiwgIiIpOworICAgICAgICB0bXAgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGZvdXQsICZQeUlkX2ZsdXNoLCAiIik7CiAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkKICAgICAgICAgICAgIFB5RXJyX1dyaXRlVW5yYWlzYWJsZShmb3V0KTsKICAgICAgICAgZWxzZQpAQCAtMzcxLDcgKzM4OCw3IEBACiAgICAgfQogCiAgICAgaWYgKGZlcnIgIT0gTlVMTCAmJiBmZXJyICE9IFB5X05vbmUgJiYgIWZpbGVfaXNfY2xvc2VkKGZlcnIpKSB7Ci0gICAgICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZmVyciwgImZsdXNoIiwgIiIpOworICAgICAgICB0bXAgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGZlcnIsICZQeUlkX2ZsdXNoLCAiIik7CiAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIGVsc2UKQEAgLTQ2NCw3ICs0ODEsNyBAQAogICAgIGZsdXNoX3N0ZF9maWxlcygpOwogCiAgICAgLyogQ29sbGVjdCBmaW5hbCBnYXJiYWdlLiAgVGhpcyBkaXNwb3NlcyBvZiBjeWNsZXMgY3JlYXRlZCBieQotICAgICAqIG5ldy1zdHlsZSBjbGFzcyBkZWZpbml0aW9ucywgZm9yIGV4YW1wbGUuCisgICAgICogY2xhc3MgZGVmaW5pdGlvbnMsIGZvciBleGFtcGxlLgogICAgICAqIFhYWCBUaGlzIGlzIGRpc2FibGVkIGJlY2F1c2UgaXQgY2F1c2VkIHRvbyBtYW55IHByb2JsZW1zLiAgSWYKICAgICAgKiBYWFggYSBfX2RlbF9fIG9yIHdlYWtyZWYgY2FsbGJhY2sgdHJpZ2dlcnMgaGVyZSwgUHl0aG9uIGNvZGUgaGFzCiAgICAgICogWFhYIGEgaGFyZCB0aW1lIHJ1bm5pbmcsIGJlY2F1c2UgZXZlbiB0aGUgc3lzIG1vZHVsZSBoYXMgYmVlbgpAQCAtNDg1LDYgKzUwMiw5IEBACiAgICAgLyogRGVzdHJveSB0aGUgZGF0YWJhc2UgdXNlZCBieSBfUHlJbXBvcnRfe0ZpeHVwLEZpbmR9RXh0ZW5zaW9uICovCiAgICAgX1B5SW1wb3J0X0ZpbmkoKTsKIAorICAgIC8qIHVubG9hZCBmYXVsdGhhbmRsZXIgbW9kdWxlICovCisgICAgX1B5RmF1bHRoYW5kbGVyX0ZpbmkoKTsKKwogICAgIC8qIERlYnVnZ2luZyBzdHVmZiAqLwogI2lmZGVmIENPVU5UX0FMTE9DUwogICAgIGR1bXBfY291bnRzKHN0ZG91dCk7CkBAIC01MzQsNiArNTU0LDcgQEAKICAgICBQeUxvbmdfRmluaSgpOwogICAgIFB5RmxvYXRfRmluaSgpOwogICAgIFB5RGljdF9GaW5pKCk7CisgICAgUHlTbGljZV9GaW5pKCk7CiAKICAgICAvKiBDbGVhbnVwIFVuaWNvZGUgaW1wbGVtZW50YXRpb24gKi8KICAgICBfUHlVbmljb2RlX0ZpbmkoKTsKQEAgLTc1OSwyNCArNzgwLDE3IEBACiBpbml0ZnNlbmNvZGluZyhQeUludGVycHJldGVyU3RhdGUgKmludGVycCkKIHsKICAgICBQeU9iamVjdCAqY29kZWM7Ci0jaWYgZGVmaW5lZChIQVZFX0xBTkdJTkZPX0gpICYmIGRlZmluZWQoQ09ERVNFVCkKLSAgICBjaGFyICpjb2Rlc2V0ID0gTlVMTDsKIAotICAgIGlmIChQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nID09IE5VTEwpIHsKLSAgICAgICAgLyogT24gVW5peCwgc2V0IHRoZSBmaWxlIHN5c3RlbSBlbmNvZGluZyBhY2NvcmRpbmcgdG8gdGhlCi0gICAgICAgICAgIHVzZXIncyBwcmVmZXJlbmNlLCBpZiB0aGUgQ09ERVNFVCBuYW1lcyBhIHdlbGwta25vd24KLSAgICAgICAgICAgUHl0aG9uIGNvZGVjLCBhbmQgUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyBpc24ndAotICAgICAgICAgICBpbml0aWFsaXplZCBieSBvdGhlciBtZWFucy4gKi8KLSAgICAgICAgY29kZXNldCA9IGdldF9jb2Rlc2V0KCk7Ci0gICAgICAgIGlmIChjb2Rlc2V0ID09IE5VTEwpCisgICAgaWYgKFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPT0gTlVMTCkKKyAgICB7CisgICAgICAgIFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPSBnZXRfbG9jYWxlX2VuY29kaW5nKCk7CisgICAgICAgIGlmIChQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nID09IE5VTEwpCiAgICAgICAgICAgICBQeV9GYXRhbEVycm9yKCJQeV9Jbml0aWFsaXplOiBVbmFibGUgdG8gZ2V0IHRoZSBsb2NhbGUgZW5jb2RpbmciKTsKIAotICAgICAgICBQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nID0gY29kZXNldDsKICAgICAgICAgUHlfSGFzRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyA9IDA7CiAgICAgICAgIGludGVycC0+ZnNjb2RlY19pbml0aWFsaXplZCA9IDE7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLSNlbmRpZgogCiAgICAgLyogdGhlIGVuY29kaW5nIGlzIG1iY3MsIHV0Zi04IG9yIGFzY2lpICovCiAgICAgY29kZWMgPSBfUHlDb2RlY19Mb29rdXAoUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyk7CkBAIC04MTgsNiArODMyLDExIEBACiAgICAgY29uc3QgY2hhciogbmV3bGluZTsKICAgICBQeU9iamVjdCAqbGluZV9idWZmZXJpbmc7CiAgICAgaW50IGJ1ZmZlcmluZywgaXNhdHR5OworICAgIF9QeV9JREVOVElGSUVSKG9wZW4pOworICAgIF9QeV9JREVOVElGSUVSKGlzYXR0eSk7CisgICAgX1B5X0lERU5USUZJRVIoVGV4dElPV3JhcHBlcik7CisgICAgX1B5X0lERU5USUZJRVIobmFtZSk7CisgICAgX1B5X0lERU5USUZJRVIobW9kZSk7CiAKICAgICAvKiBzdGRpbiBpcyBhbHdheXMgb3BlbmVkIGluIGJ1ZmZlcmVkIG1vZGUsIGZpcnN0IGJlY2F1c2UgaXQgc2hvdWxkbid0CiAgICAgICAgbWFrZSBhIGRpZmZlcmVuY2UgaW4gY29tbW9uIHVzZSBjYXNlcywgc2Vjb25kIGJlY2F1c2UgVGV4dElPV3JhcHBlcgpAQCAtODMyLDE0ICs4NTEsMTUgQEAKICAgICAgICAgbW9kZSA9ICJ3YiI7CiAgICAgZWxzZQogICAgICAgICBtb2RlID0gInJiIjsKLSAgICBidWYgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGlvLCAib3BlbiIsICJpc2lPT09pIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLCBtb2RlLCBidWZmZXJpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9Ob25lLCBQeV9Ob25lLCBQeV9Ob25lLCAwKTsKKyAgICBidWYgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGlvLCAmUHlJZF9vcGVuLCAiaXNpT09PaSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZCwgbW9kZSwgYnVmZmVyaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfTm9uZSwgUHlfTm9uZSwgUHlfTm9uZSwgMCk7CiAgICAgaWYgKGJ1ZiA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycm9yOwogCiAgICAgaWYgKGJ1ZmZlcmluZykgewotICAgICAgICByYXcgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGJ1ZiwgInJhdyIpOworICAgICAgICBfUHlfSURFTlRJRklFUihyYXcpOworICAgICAgICByYXcgPSBfUHlPYmplY3RfR2V0QXR0cklkKGJ1ZiwgJlB5SWRfcmF3KTsKICAgICAgICAgaWYgKHJhdyA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CkBAIC04NDksOSArODY5LDkgQEAKICAgICB9CiAKICAgICB0ZXh0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcobmFtZSk7Ci0gICAgaWYgKHRleHQgPT0gTlVMTCB8fCBQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJhdywgIm5hbWUiLCB0ZXh0KSA8IDApCisgICAgaWYgKHRleHQgPT0gTlVMTCB8fCBfUHlPYmplY3RfU2V0QXR0cklkKHJhdywgJlB5SWRfbmFtZSwgdGV4dCkgPCAwKQogICAgICAgICBnb3RvIGVycm9yOwotICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2QocmF3LCAiaXNhdHR5IiwgIiIpOworICAgIHJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocmF3LCAmUHlJZF9pc2F0dHksICIiKTsKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgaXNhdHR5ID0gUHlPYmplY3RfSXNUcnVlKHJlcyk7CkBAIC04NzQsOSArODk0LDkgQEAKICAgICB9CiAjZW5kaWYKIAotICAgIHN0cmVhbSA9IFB5T2JqZWN0X0NhbGxNZXRob2QoaW8sICJUZXh0SU9XcmFwcGVyIiwgIk9zc3NPIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZiwgZW5jb2RpbmcsIGVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld2xpbmUsIGxpbmVfYnVmZmVyaW5nKTsKKyAgICBzdHJlYW0gPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGlvLCAmUHlJZF9UZXh0SU9XcmFwcGVyLCAiT3Nzc08iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmLCBlbmNvZGluZywgZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3bGluZSwgbGluZV9idWZmZXJpbmcpOwogICAgIFB5X0NMRUFSKGJ1Zik7CiAgICAgaWYgKHN0cmVhbSA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycm9yOwpAQCAtODg2LDcgKzkwNiw3IEBACiAgICAgZWxzZQogICAgICAgICBtb2RlID0gInIiOwogICAgIHRleHQgPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhtb2RlKTsKLSAgICBpZiAoIXRleHQgfHwgUHlPYmplY3RfU2V0QXR0clN0cmluZyhzdHJlYW0sICJtb2RlIiwgdGV4dCkgPCAwKQorICAgIGlmICghdGV4dCB8fCBfUHlPYmplY3RfU2V0QXR0cklkKHN0cmVhbSwgJlB5SWRfbW9kZSwgdGV4dCkgPCAwKQogICAgICAgICBnb3RvIGVycm9yOwogICAgIFB5X0NMRUFSKHRleHQpOwogICAgIHJldHVybiBzdHJlYW07CkBAIC0xMTI2LDEzICsxMTQ2LDE0IEBACiAgICAgUHlBcmVuYSAqYXJlbmE7CiAgICAgY2hhciAqcHMxID0gIiIsICpwczIgPSAiIiwgKmVuYyA9IE5VTEw7CiAgICAgaW50IGVycmNvZGUgPSAwOworICAgIF9QeV9JREVOVElGSUVSKGVuY29kaW5nKTsKIAogICAgIGlmIChmcCA9PSBzdGRpbikgewogICAgICAgICAvKiBGZXRjaCBlbmNvZGluZyBmcm9tIHN5cy5zdGRpbiAqLwogICAgICAgICB2ID0gUHlTeXNfR2V0T2JqZWN0KCJzdGRpbiIpOwogICAgICAgICBpZiAodiA9PSBOVUxMIHx8IHYgPT0gUHlfTm9uZSkKICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgb2VuYyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcodiwgImVuY29kaW5nIik7CisgICAgICAgIG9lbmMgPSBfUHlPYmplY3RfR2V0QXR0cklkKHYsICZQeUlkX2VuY29kaW5nKTsKICAgICAgICAgaWYgKCFvZW5jKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICBlbmMgPSBfUHlVbmljb2RlX0FzU3RyaW5nKG9lbmMpOwpAQCAtMTMyOSwxOSArMTM1MCwxOSBAQAogewogICAgIGxvbmcgaG9sZDsKICAgICBQeU9iamVjdCAqdjsKLQotICAgIC8qIG9sZCBzdHlsZSBlcnJvcnMgKi8KLSAgICBpZiAoUHlUdXBsZV9DaGVjayhlcnIpKQotICAgICAgICByZXR1cm4gUHlBcmdfUGFyc2VUdXBsZShlcnIsICJPKHppaXopIiwgbWVzc2FnZSwgZmlsZW5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVubywgb2Zmc2V0LCB0ZXh0KTsKKyAgICBfUHlfSURFTlRJRklFUihtc2cpOworICAgIF9QeV9JREVOVElGSUVSKGZpbGVuYW1lKTsKKyAgICBfUHlfSURFTlRJRklFUihsaW5lbm8pOworICAgIF9QeV9JREVOVElGSUVSKG9mZnNldCk7CisgICAgX1B5X0lERU5USUZJRVIodGV4dCk7CiAKICAgICAvKiBuZXcgc3R5bGUgZXJyb3JzLiAgYGVycicgaXMgYW4gaW5zdGFuY2UgKi8KIAotICAgIGlmICghICh2ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhlcnIsICJtc2ciKSkpCisgICAgaWYgKCEgKHYgPSBfUHlPYmplY3RfR2V0QXR0cklkKGVyciwgJlB5SWRfbXNnKSkpCiAgICAgICAgIGdvdG8gZmluYWxseTsKICAgICAqbWVzc2FnZSA9IHY7CiAKLSAgICBpZiAoISh2ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhlcnIsICJmaWxlbmFtZSIpKSkKKyAgICBpZiAoISh2ID0gX1B5T2JqZWN0X0dldEF0dHJJZChlcnIsICZQeUlkX2ZpbGVuYW1lKSkpCiAgICAgICAgIGdvdG8gZmluYWxseTsKICAgICBpZiAodiA9PSBQeV9Ob25lKQogICAgICAgICAqZmlsZW5hbWUgPSBOVUxMOwpAQCAtMTM0OSw3ICsxMzcwLDcgQEAKICAgICAgICAgZ290byBmaW5hbGx5OwogCiAgICAgUHlfREVDUkVGKHYpOwotICAgIGlmICghKHYgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGVyciwgImxpbmVubyIpKSkKKyAgICBpZiAoISh2ID0gX1B5T2JqZWN0X0dldEF0dHJJZChlcnIsICZQeUlkX2xpbmVubykpKQogICAgICAgICBnb3RvIGZpbmFsbHk7CiAgICAgaG9sZCA9IFB5TG9uZ19Bc0xvbmcodik7CiAgICAgUHlfREVDUkVGKHYpOwpAQCAtMTM1OCw3ICsxMzc5LDcgQEAKICAgICAgICAgZ290byBmaW5hbGx5OwogICAgICpsaW5lbm8gPSAoaW50KWhvbGQ7CiAKLSAgICBpZiAoISh2ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhlcnIsICJvZmZzZXQiKSkpCisgICAgaWYgKCEodiA9IF9QeU9iamVjdF9HZXRBdHRySWQoZXJyLCAmUHlJZF9vZmZzZXQpKSkKICAgICAgICAgZ290byBmaW5hbGx5OwogICAgIGlmICh2ID09IFB5X05vbmUpIHsKICAgICAgICAgKm9mZnNldCA9IC0xOwpAQCAtMTM3Myw3ICsxMzk0LDcgQEAKICAgICAgICAgKm9mZnNldCA9IChpbnQpaG9sZDsKICAgICB9CiAKLSAgICBpZiAoISh2ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhlcnIsICJ0ZXh0IikpKQorICAgIGlmICghKHYgPSBfUHlPYmplY3RfR2V0QXR0cklkKGVyciwgJlB5SWRfdGV4dCkpKQogICAgICAgICBnb3RvIGZpbmFsbHk7CiAgICAgaWYgKHYgPT0gUHlfTm9uZSkKICAgICAgICAgKnRleHQgPSBOVUxMOwpAQCAtMTQ0Miw3ICsxNDYzLDggQEAKICAgICAgICAgZ290byBkb25lOwogICAgIGlmIChQeUV4Y2VwdGlvbkluc3RhbmNlX0NoZWNrKHZhbHVlKSkgewogICAgICAgICAvKiBUaGUgZXJyb3IgY29kZSBzaG91bGQgYmUgaW4gdGhlIGBjb2RlJyBhdHRyaWJ1dGUuICovCi0gICAgICAgIFB5T2JqZWN0ICpjb2RlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh2YWx1ZSwgImNvZGUiKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoY29kZSk7CisgICAgICAgIFB5T2JqZWN0ICpjb2RlID0gX1B5T2JqZWN0X0dldEF0dHJJZCh2YWx1ZSwgJlB5SWRfY29kZSk7CiAgICAgICAgIGlmIChjb2RlKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgdmFsdWUgPSBjb2RlOwpAQCAtMTU0OSw2ICsxNTcxLDcgQEAKIHsKICAgICBpbnQgZXJyID0gMDsKICAgICBQeU9iamVjdCAqdHlwZSwgKnRiOworICAgIF9QeV9JREVOVElGSUVSKHByaW50X2ZpbGVfYW5kX2xpbmUpOwogCiAgICAgaWYgKCFQeUV4Y2VwdGlvbkluc3RhbmNlX0NoZWNrKHZhbHVlKSkgewogICAgICAgICBQeUZpbGVfV3JpdGVTdHJpbmcoIlR5cGVFcnJvcjogcHJpbnRfZXhjZXB0aW9uKCk6IEV4Y2VwdGlvbiBleHBlY3RlZCBmb3IgdmFsdWUsICIsIGYpOwpAQCAtMTU2NCw3ICsxNTg3LDcgQEAKICAgICBpZiAodGIgJiYgdGIgIT0gUHlfTm9uZSkKICAgICAgICAgZXJyID0gUHlUcmFjZUJhY2tfUHJpbnQodGIsIGYpOwogICAgIGlmIChlcnIgPT0gMCAmJgotICAgICAgICBQeU9iamVjdF9IYXNBdHRyU3RyaW5nKHZhbHVlLCAicHJpbnRfZmlsZV9hbmRfbGluZSIpKQorICAgICAgICBfUHlPYmplY3RfSGFzQXR0cklkKHZhbHVlLCAmUHlJZF9wcmludF9maWxlX2FuZF9saW5lKSkKICAgICB7CiAgICAgICAgIFB5T2JqZWN0ICptZXNzYWdlOwogICAgICAgICBjb25zdCBjaGFyICpmaWxlbmFtZSwgKnRleHQ7CkBAIC0xNTk5LDYgKzE2MjIsNyBAQAogICAgIGVsc2UgewogICAgICAgICBQeU9iamVjdCogbW9kdWxlTmFtZTsKICAgICAgICAgY2hhciogY2xhc3NOYW1lOworICAgICAgICBfUHlfSURFTlRJRklFUihfX21vZHVsZV9fKTsKICAgICAgICAgYXNzZXJ0KFB5RXhjZXB0aW9uQ2xhc3NfQ2hlY2sodHlwZSkpOwogICAgICAgICBjbGFzc05hbWUgPSBQeUV4Y2VwdGlvbkNsYXNzX05hbWUodHlwZSk7CiAgICAgICAgIGlmIChjbGFzc05hbWUgIT0gTlVMTCkgewpAQCAtMTYwNywxMCArMTYzMSwxMCBAQAogICAgICAgICAgICAgICAgIGNsYXNzTmFtZSA9IGRvdCsxOwogICAgICAgICB9CiAKLSAgICAgICAgbW9kdWxlTmFtZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcodHlwZSwgIl9fbW9kdWxlX18iKTsKKyAgICAgICAgbW9kdWxlTmFtZSA9IF9QeU9iamVjdF9HZXRBdHRySWQodHlwZSwgJlB5SWRfX19tb2R1bGVfXyk7CiAgICAgICAgIGlmIChtb2R1bGVOYW1lID09IE5VTEwgfHwgIVB5VW5pY29kZV9DaGVjayhtb2R1bGVOYW1lKSkKICAgICAgICAgewotICAgICAgICAgICAgUHlfREVDUkVGKG1vZHVsZU5hbWUpOworICAgICAgICAgICAgUHlfWERFQ1JFRihtb2R1bGVOYW1lKTsKICAgICAgICAgICAgIGVyciA9IFB5RmlsZV9Xcml0ZVN0cmluZygiPHVua25vd24+IiwgZik7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CkBAIC0xNjM3LDcgKzE2NjEsNyBAQAogICAgICAgICBpZiAocyA9PSBOVUxMKQogICAgICAgICAgICAgZXJyID0gLTE7CiAgICAgICAgIGVsc2UgaWYgKCFQeVVuaWNvZGVfQ2hlY2socykgfHwKLSAgICAgICAgICAgIFB5VW5pY29kZV9HZXRTaXplKHMpICE9IDApCisgICAgICAgICAgICBQeVVuaWNvZGVfR2V0TGVuZ3RoKHMpICE9IDApCiAgICAgICAgICAgICBlcnIgPSBQeUZpbGVfV3JpdGVTdHJpbmcoIjogIiwgZik7CiAgICAgICAgIGlmIChlcnIgPT0gMCkKICAgICAgICAgICBlcnIgPSBQeUZpbGVfV3JpdGVPYmplY3QocywgZiwgUHlfUFJJTlRfUkFXKTsKQEAgLTE2NzQsNyArMTY5OCwxMSBAQAogICAgICAgICBlbHNlIGlmIChQeUV4Y2VwdGlvbkluc3RhbmNlX0NoZWNrKHZhbHVlKSkgewogICAgICAgICAgICAgY2F1c2UgPSBQeUV4Y2VwdGlvbl9HZXRDYXVzZSh2YWx1ZSk7CiAgICAgICAgICAgICBjb250ZXh0ID0gUHlFeGNlcHRpb25fR2V0Q29udGV4dCh2YWx1ZSk7Ci0gICAgICAgICAgICBpZiAoY2F1c2UpIHsKKyAgICAgICAgICAgIGlmIChjYXVzZSAmJiBjYXVzZSA9PSBQeV9Ob25lKSB7CisgICAgICAgICAgICAgICAgLyogcHJpbnQgbmVpdGhlciBjYXVzZSBub3IgY29udGV4dCAqLworICAgICAgICAgICAgICAgIDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgaWYgKGNhdXNlKSB7CiAgICAgICAgICAgICAgICAgcmVzID0gUHlTZXRfQ29udGFpbnMoc2VlbiwgY2F1c2UpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CkBAIC0xNzc0LDEzICsxODAyLDE0IEBACiB7CiAgICAgUHlPYmplY3QgKmYsICpyOwogICAgIFB5T2JqZWN0ICp0eXBlLCAqdmFsdWUsICp0cmFjZWJhY2s7CisgICAgX1B5X0lERU5USUZJRVIoZmx1c2gpOwogCiAgICAgLyogU2F2ZSB0aGUgY3VycmVudCBleGNlcHRpb24gKi8KICAgICBQeUVycl9GZXRjaCgmdHlwZSwgJnZhbHVlLCAmdHJhY2ViYWNrKTsKIAogICAgIGYgPSBQeVN5c19HZXRPYmplY3QoInN0ZGVyciIpOwogICAgIGlmIChmICE9IE5VTEwpIHsKLSAgICAgICAgciA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZiwgImZsdXNoIiwgIiIpOworICAgICAgICByID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmLCAmUHlJZF9mbHVzaCwgIiIpOwogICAgICAgICBpZiAocikKICAgICAgICAgICAgIFB5X0RFQ1JFRihyKTsKICAgICAgICAgZWxzZQpAQCAtMTc4OCw3ICsxODE3LDcgQEAKICAgICB9CiAgICAgZiA9IFB5U3lzX0dldE9iamVjdCgic3Rkb3V0Iik7CiAgICAgaWYgKGYgIT0gTlVMTCkgewotICAgICAgICByID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmLCAiZmx1c2giLCAiIik7CisgICAgICAgIHIgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGYsICZQeUlkX2ZsdXNoLCAiIik7CiAgICAgICAgIGlmIChyKQogICAgICAgICAgICAgUHlfREVDUkVGKHIpOwogICAgICAgICBlbHNlCkBAIC0xODI3LDYgKzE4NTYsOCBAQAogICAgICAgICAgICAgICAgICAgICJCYWQgbWFnaWMgbnVtYmVyIGluIC5weWMgZmlsZSIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisgICAgLyogU2tpcCBtdGltZSBhbmQgc2l6ZSAqLworICAgICh2b2lkKSBQeU1hcnNoYWxfUmVhZExvbmdGcm9tRmlsZShmcCk7CiAgICAgKHZvaWQpIFB5TWFyc2hhbF9SZWFkTG9uZ0Zyb21GaWxlKGZwKTsKICAgICB2ID0gUHlNYXJzaGFsX1JlYWRMYXN0T2JqZWN0RnJvbUZpbGUoZnApOwogICAgIGZjbG9zZShmcCk7CkBAIC0xOTE5LDEyICsxOTUwLDEzIEBACiAgICAgICAgIGZsYWdzLT5jZl9mbGFncyB8PSBpZmxhZ3MgJiBQeUNGX01BU0s7CiAgICAgICAgIG1vZCA9IFB5QVNUX0Zyb21Ob2RlKG4sIGZsYWdzLCBmaWxlbmFtZSwgYXJlbmEpOwogICAgICAgICBQeU5vZGVfRnJlZShuKTsKLSAgICAgICAgcmV0dXJuIG1vZDsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIGVycl9pbnB1dCgmZXJyKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIG1vZCA9IE5VTEw7CiAgICAgfQorICAgIGVycl9mcmVlKCZlcnIpOworICAgIHJldHVybiBtb2Q7CiB9CiAKIG1vZF90eQpAQCAtMTk0OSwxNCArMTk4MSwxNSBAQAogICAgICAgICBmbGFncy0+Y2ZfZmxhZ3MgfD0gaWZsYWdzICYgUHlDRl9NQVNLOwogICAgICAgICBtb2QgPSBQeUFTVF9Gcm9tTm9kZShuLCBmbGFncywgZmlsZW5hbWUsIGFyZW5hKTsKICAgICAgICAgUHlOb2RlX0ZyZWUobik7Ci0gICAgICAgIHJldHVybiBtb2Q7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBlcnJfaW5wdXQoJmVycik7CiAgICAgICAgIGlmIChlcnJjb2RlKQogICAgICAgICAgICAgKmVycmNvZGUgPSBlcnIuZXJyb3I7Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBtb2QgPSBOVUxMOwogICAgIH0KKyAgICBlcnJfZnJlZSgmZXJyKTsKKyAgICByZXR1cm4gbW9kOwogfQogCiAvKiBTaW1wbGlmaWVkIGludGVyZmFjZSB0byBwYXJzZWZpbGUgLS0gcmV0dXJuIG5vZGUgb3Igc2V0IGV4Y2VwdGlvbiAqLwpAQCAtMTk3MCw2ICsyMDAzLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQsIE5VTEwsIE5VTEwsICZlcnIsIGZsYWdzKTsKICAgICBpZiAobiA9PSBOVUxMKQogICAgICAgICBlcnJfaW5wdXQoJmVycik7CisgICAgZXJyX2ZyZWUoJmVycik7CiAKICAgICByZXR1cm4gbjsKIH0KQEAgLTE5ODQsNiArMjAxOCw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQsICZlcnIsIGZsYWdzKTsKICAgICBpZiAobiA9PSBOVUxMKQogICAgICAgICBlcnJfaW5wdXQoJmVycik7CisgICAgZXJyX2ZyZWUoJmVycik7CiAgICAgcmV0dXJuIG47CiB9CiAKQEAgLTE5OTYsNiArMjAzMSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9QeVBhcnNlcl9HcmFtbWFyLCBzdGFydCwgJmVyciwgZmxhZ3MpOwogICAgIGlmIChuID09IE5VTEwpCiAgICAgICAgIGVycl9pbnB1dCgmZXJyKTsKKyAgICBlcnJfZnJlZSgmZXJyKTsKICAgICByZXR1cm4gbjsKIH0KIApAQCAtMjAwOSwxMSArMjA0NSwyMyBAQAogICAgZXZlbiBwYXJzZXIgbW9kdWxlcy4gKi8KIAogdm9pZAorUHlQYXJzZXJfQ2xlYXJFcnJvcihwZXJyZGV0YWlsICplcnIpCit7CisgICAgZXJyX2ZyZWUoZXJyKTsKK30KKwordm9pZAogUHlQYXJzZXJfU2V0RXJyb3IocGVycmRldGFpbCAqZXJyKQogewogICAgIGVycl9pbnB1dChlcnIpOwogfQogCitzdGF0aWMgdm9pZAorZXJyX2ZyZWUocGVycmRldGFpbCAqZXJyKQoreworICAgIFB5X0NMRUFSKGVyci0+ZmlsZW5hbWUpOworfQorCiAvKiBTZXQgdGhlIGVycm9yIGFwcHJvcHJpYXRlIHRvIHRoZSBnaXZlbiBpbnB1dCBlcnJvciBjb2RlIChzZWUgZXJyY29kZS5oKSAqLwogCiBzdGF0aWMgdm9pZApAQCAtMjAyMSw3ICsyMDY5LDYgQEAKIHsKICAgICBQeU9iamVjdCAqdiwgKncsICplcnJ0eXBlLCAqZXJydGV4dDsKICAgICBQeU9iamVjdCAqbXNnX29iaiA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmZpbGVuYW1lOwogICAgIGNoYXIgKm1zZyA9IE5VTEw7CiAKICAgICBlcnJ0eXBlID0gUHlFeGNfU3ludGF4RXJyb3I7CkBAIC0yMDkzLDYgKzIxNDAsOSBAQAogICAgIGNhc2UgRV9JREVOVElGSUVSOgogICAgICAgICBtc2cgPSAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gaWRlbnRpZmllciI7CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgRV9CQURTSU5HTEU6CisgICAgICAgIG1zZyA9ICJtdWx0aXBsZSBzdGF0ZW1lbnRzIGZvdW5kIHdoaWxlIGNvbXBpbGluZyBhIHNpbmdsZSBzdGF0ZW1lbnQiOworICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yPSVkXG4iLCBlcnItPmVycm9yKTsKICAgICAgICAgbXNnID0gInVua25vd24gcGFyc2luZyBlcnJvciI7CkBAIC0yMTA3LDE3ICsyMTU3LDggQEAKICAgICAgICAgZXJydGV4dCA9IFB5VW5pY29kZV9EZWNvZGVVVEY4KGVyci0+dGV4dCwgc3RybGVuKGVyci0+dGV4dCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVwbGFjZSIpOwogICAgIH0KLSAgICBpZiAoZXJyLT5maWxlbmFtZSAhPSBOVUxMKQotICAgICAgICBmaWxlbmFtZSA9IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQoZXJyLT5maWxlbmFtZSk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKLSAgICAgICAgZmlsZW5hbWUgPSBQeV9Ob25lOwotICAgIH0KLSAgICBpZiAoZmlsZW5hbWUgIT0gTlVMTCkKLSAgICAgICAgdiA9IFB5X0J1aWxkVmFsdWUoIihOaWlOKSIsIGZpbGVuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICBlcnItPmxpbmVubywgZXJyLT5vZmZzZXQsIGVycnRleHQpOwotICAgIGVsc2UKLSAgICAgICAgdiA9IE5VTEw7CisgICAgdiA9IFB5X0J1aWxkVmFsdWUoIihPaWlOKSIsIGVyci0+ZmlsZW5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgZXJyLT5saW5lbm8sIGVyci0+b2Zmc2V0LCBlcnJ0ZXh0KTsKICAgICBpZiAodiAhPSBOVUxMKSB7CiAgICAgICAgIGlmIChtc2dfb2JqKQogICAgICAgICAgICAgdyA9IFB5X0J1aWxkVmFsdWUoIihPTykiLCBtc2dfb2JqLCB2KTsKQEAgLTIxNDEsMTEgKzIxODIsMjQgQEAKIHZvaWQKIFB5X0ZhdGFsRXJyb3IoY29uc3QgY2hhciAqbXNnKQogeworICAgIGNvbnN0IGludCBmZCA9IGZpbGVubyhzdGRlcnIpOworICAgIFB5VGhyZWFkU3RhdGUgKnRzdGF0ZTsKKwogICAgIGZwcmludGYoc3RkZXJyLCAiRmF0YWwgUHl0aG9uIGVycm9yOiAlc1xuIiwgbXNnKTsKICAgICBmZmx1c2goc3RkZXJyKTsgLyogaXQgaGVscHMgaW4gV2luZG93cyBkZWJ1ZyBidWlsZCAqLwogICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKSB7CiAgICAgICAgIFB5RXJyX1ByaW50RXgoMCk7CiAgICAgfQorICAgIGVsc2UgeworICAgICAgICB0c3RhdGUgPSBfUHlfYXRvbWljX2xvYWRfcmVsYXhlZCgmX1B5VGhyZWFkU3RhdGVfQ3VycmVudCk7CisgICAgICAgIGlmICh0c3RhdGUgIT0gTlVMTCkgeworICAgICAgICAgICAgZnB1dGMoJ1xuJywgc3RkZXJyKTsKKyAgICAgICAgICAgIGZmbHVzaChzdGRlcnIpOworICAgICAgICAgICAgX1B5X0R1bXBUcmFjZWJhY2tUaHJlYWRzKGZkLCB0c3RhdGUtPmludGVycCwgdHN0YXRlKTsKKyAgICAgICAgfQorICAgICAgICBfUHlGYXVsdGhhbmRsZXJfRmluaSgpOworICAgIH0KKwogI2lmZGVmIE1TX1dJTkRPV1MKICAgICB7CiAgICAgICAgIHNpemVfdCBsZW4gPSBzdHJsZW4obXNnKTsKQEAgLTIyMDAsNiArMjI1NCw3IEBACiB3YWl0X2Zvcl90aHJlYWRfc2h1dGRvd24odm9pZCkKIHsKICNpZmRlZiBXSVRIX1RIUkVBRAorICAgIF9QeV9JREVOVElGSUVSKF9zaHV0ZG93bik7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKICAgICBQeVRocmVhZFN0YXRlICp0c3RhdGUgPSBQeVRocmVhZFN0YXRlX0dFVCgpOwogICAgIFB5T2JqZWN0ICp0aHJlYWRpbmcgPSBQeU1hcHBpbmdfR2V0SXRlbVN0cmluZyh0c3RhdGUtPmludGVycC0+bW9kdWxlcywKQEAgLTIyMDksNyArMjI2NCw3IEBACiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh0aHJlYWRpbmcsICJfc2h1dGRvd24iLCAiIik7CisgICAgcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCh0aHJlYWRpbmcsICZQeUlkX19zaHV0ZG93biwgIiIpOwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9Xcml0ZVVucmFpc2FibGUodGhyZWFkaW5nKTsKICAgICB9CmRpZmYgLS1naXQgYS9QeXRob24vcHl0aW1lLmMgYi9QeXRob24vcHl0aW1lLmMKaW5kZXggNmZiNzY5NS4uZDIzY2U3NSAxMDA2NDQKLS0tIGEvUHl0aG9uL3B5dGltZS5jCisrKyBiL1B5dGhvbi9weXRpbWUuYwpAQCAtMSw3ICsxLDkgQEAKICNpbmNsdWRlICJQeXRob24uaCIKKyNpZmRlZiBNU19XSU5ET1dTCisjaW5jbHVkZSA8d2luZG93cy5oPgorI2VuZGlmCiAKLSNpZmRlZiBfX0FQUExFX18KLSNpZiBkZWZpbmVkKEhBVkVfR0VUVElNRU9GREFZKSAmJiBkZWZpbmVkKEhBVkVfRlRJTUUpCisjaWYgZGVmaW5lZChfX0FQUExFX18pICYmIGRlZmluZWQoSEFWRV9HRVRUSU1FT0ZEQVkpICYmIGRlZmluZWQoSEFWRV9GVElNRSkKICAgLyoKICAgICogX1B5VGltZV9nZXR0aW1lb2ZkYXkgZmFsbHMgYmFjayB0byBmdGltZSB3aGVuIGdldHR0aW1lb2ZkYXkgZmFpbHMgYmVjYXVzZSB0aGUgbGF0dGVyCiAgICAqIG1pZ2h0IGZhaWwgb24gc29tZSBwbGF0Zm9ybXMuIFRoaXMgZmFsbGJhY2sgaXMgdW53YW50ZWQgb24gTWFjT1NYIGJlY2F1c2UKQEAgLTEwLDE4ICsxMiwzMCBAQAogICAgKi8KICMgdW5kZWYgSEFWRV9GVElNRQogI2VuZGlmCi0jZW5kaWYKIAotI2lmZGVmIEhBVkVfRlRJTUUKKyNpZiBkZWZpbmVkKEhBVkVfRlRJTUUpICYmICFkZWZpbmVkKE1TX1dJTkRPV1MpCiAjaW5jbHVkZSA8c3lzL3RpbWViLmg+Ci0jaWYgIWRlZmluZWQoTVNfV0lORE9XUykgJiYgIWRlZmluZWQoUFlPU19PUzIpCiBleHRlcm4gaW50IGZ0aW1lKHN0cnVjdCB0aW1lYiAqKTsKLSNlbmRpZiAvKiBNU19XSU5ET1dTICovCi0jZW5kaWYgLyogSEFWRV9GVElNRSAqLworI2VuZGlmCiAKIHZvaWQKIF9QeVRpbWVfZ2V0dGltZW9mZGF5KF9QeVRpbWVfdGltZXZhbCAqdHApCiB7CisjaWZkZWYgTVNfV0lORE9XUworICAgIEZJTEVUSU1FIHN5c3RlbV90aW1lOworICAgIFVMQVJHRV9JTlRFR0VSIGxhcmdlOworICAgIFVMT05HTE9ORyBtaWNyb3NlY29uZHM7CisKKyAgICBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgmc3lzdGVtX3RpbWUpOworICAgIGxhcmdlLnUuTG93UGFydCA9IHN5c3RlbV90aW1lLmR3TG93RGF0ZVRpbWU7CisgICAgbGFyZ2UudS5IaWdoUGFydCA9IHN5c3RlbV90aW1lLmR3SGlnaERhdGVUaW1lOworICAgIC8qIDExLDY0NCw0NzMsNjAwLDAwMCwwMDA6IG51bWJlciBvZiBtaWNyb3NlY29uZHMgYmV0d2VlbgorICAgICAgIHRoZSAxc3QgamFudWFyeSAxNjAxIGFuZCB0aGUgMXN0IGphbnVhcnkgMTk3MCAoMzY5IHllYXJzICsgODkgbGVhcAorICAgICAgIGRheXMpLiAqLworICAgIG1pY3Jvc2Vjb25kcyA9IGxhcmdlLlF1YWRQYXJ0IC8gMTAgLSAxMTY0NDQ3MzYwMDAwMDAwMDsKKyAgICB0cC0+dHZfc2VjID0gbWljcm9zZWNvbmRzIC8gMTAwMDAwMDsKKyAgICB0cC0+dHZfdXNlYyA9IG1pY3Jvc2Vjb25kcyAlIDEwMDAwMDA7CisjZWxzZQogICAgIC8qIFRoZXJlIGFyZSB0aHJlZSB3YXlzIHRvIGdldCB0aGUgdGltZToKICAgICAgICgxKSBnZXR0aW1lb2ZkYXkoKSAtLSByZXNvbHV0aW9uIGluIG1pY3Jvc2Vjb25kcwogICAgICAgKDIpIGZ0aW1lKCkgLS0gcmVzb2x1dGlvbiBpbiBtaWxsaXNlY29uZHMKQEAgLTMwLDYgKzQ0LDcgQEAKICAgICAgIFNpbmNlIG9uIHNvbWUgc3lzdGVtcyAoZS5nLiBTQ08gT0RUIDMuMCkgZ2V0dGltZW9mZGF5KCkgbWF5CiAgICAgICBmYWlsLCBzbyB3ZSBmYWxsIGJhY2sgb24gZnRpbWUoKSBvciB0aW1lKCkuCiAgICAgICBOb3RlOiBjbG9jayByZXNvbHV0aW9uIGRvZXMgbm90IGltcGx5IGNsb2NrIGFjY3VyYWN5ISAqLworCiAjaWZkZWYgSEFWRV9HRVRUSU1FT0ZEQVkKICNpZmRlZiBHRVRUSU1FT0ZEQVlfTk9fVFoKICAgICBpZiAoZ2V0dGltZW9mZGF5KHRwKSA9PSAwKQpAQCAtMzksNiArNTQsNyBAQAogICAgICAgICByZXR1cm47CiAjZW5kaWYgLyogIUdFVFRJTUVPRkRBWV9OT19UWiAqLwogI2VuZGlmIC8qICFIQVZFX0dFVFRJTUVPRkRBWSAqLworCiAjaWYgZGVmaW5lZChIQVZFX0ZUSU1FKQogICAgIHsKICAgICAgICAgc3RydWN0IHRpbWViIHQ7CkBAIC01MCw3ICs2Niw1MyBAQAogICAgIHRwLT50dl9zZWMgPSB0aW1lKE5VTEwpOwogICAgIHRwLT50dl91c2VjID0gMDsKICNlbmRpZiAvKiAhSEFWRV9GVElNRSAqLwotICAgIHJldHVybjsKKworI2VuZGlmIC8qIE1TX1dJTkRPV1MgKi8KK30KKworaW50CitfUHlUaW1lX09iamVjdFRvVGltZXNwZWMoUHlPYmplY3QgKm9iaiwgdGltZV90ICpzZWMsIGxvbmcgKm5zZWMpCit7CisgICAgaWYgKFB5RmxvYXRfQ2hlY2sob2JqKSkgeworICAgICAgICBkb3VibGUgZCwgaW50cGFydCwgZmxvYXRwYXJ0LCBlcnI7CisKKyAgICAgICAgZCA9IFB5RmxvYXRfQXNEb3VibGUob2JqKTsKKyAgICAgICAgZmxvYXRwYXJ0ID0gbW9kZihkLCAmaW50cGFydCk7CisgICAgICAgIGlmIChmbG9hdHBhcnQgPCAwKSB7CisgICAgICAgICAgICBmbG9hdHBhcnQgPSAxLjAgKyBmbG9hdHBhcnQ7CisgICAgICAgICAgICBpbnRwYXJ0IC09IDEuMDsKKyAgICAgICAgfQorCisgICAgICAgICpzZWMgPSAodGltZV90KWludHBhcnQ7CisgICAgICAgIGVyciA9IGludHBhcnQgLSAoZG91YmxlKSpzZWM7CisgICAgICAgIGlmIChlcnIgPD0gLTEuMCB8fCBlcnIgPj0gMS4wKQorICAgICAgICAgICAgZ290byBvdmVyZmxvdzsKKworICAgICAgICBmbG9hdHBhcnQgKj0gMWU5OworICAgICAgICAqbnNlYyA9IChsb25nKWZsb2F0cGFydDsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIGVsc2UgeworI2lmIGRlZmluZWQoSEFWRV9MT05HX0xPTkcpICYmIFNJWkVPRl9USU1FX1QgPT0gU0laRU9GX0xPTkdfTE9ORworICAgICAgICAqc2VjID0gUHlMb25nX0FzTG9uZ0xvbmcob2JqKTsKKyNlbHNlCisgICAgICAgIGFzc2VydChzaXplb2YodGltZV90KSA8PSBzaXplb2YobG9uZykpOworICAgICAgICAqc2VjID0gUHlMb25nX0FzTG9uZyhvYmopOworI2VuZGlmCisgICAgICAgIGlmICgqc2VjID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpIHsKKyAgICAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX092ZXJmbG93RXJyb3IpKQorICAgICAgICAgICAgICAgIGdvdG8gb3ZlcmZsb3c7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgICpuc2VjID0gMDsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCitvdmVyZmxvdzoKKyAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgInRpbWVzdGFtcCBvdXQgb2YgcmFuZ2UgZm9yIHBsYXRmb3JtIHRpbWVfdCIpOworICAgIHJldHVybiAtMTsKIH0KIAogdm9pZApkaWZmIC0tZ2l0IGEvUHl0aG9uL3JhbmRvbS5jIGIvUHl0aG9uL3JhbmRvbS5jCmluZGV4IGEyYWUwMDIuLjcwMTlhMzUgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9yYW5kb20uYworKysgYi9QeXRob24vcmFuZG9tLmMKQEAgLTI1NywxNyArMjU3LDYgQEAKICAgICBfUHlfSGFzaFNlY3JldF9Jbml0aWFsaXplZCA9IDE7CiAKICAgICAvKgotICAgICAgQnkgZGVmYXVsdCwgaGFzaCByYW5kb21pemF0aW9uIGlzIGRpc2FibGVkLCBhbmQgb25seQotICAgICAgZW5hYmxlZCBpZiBQWVRIT05IQVNIU0VFRCBpcyBzZXQgdG8gbm9uLWVtcHR5IG9yIGlmCi0gICAgICAiLVIiIGlzIHByb3ZpZGVkIGF0IHRoZSBjb21tYW5kIGxpbmU6Ci0gICAgKi8KLSAgICBpZiAoIVB5X0hhc2hSYW5kb21pemF0aW9uRmxhZykgewotICAgICAgICAvKiBEaXNhYmxlIHRoZSByYW5kb21pemVkIGhhc2g6ICovCi0gICAgICAgIG1lbXNldChzZWNyZXQsIDAsIHNlY3JldF9zaXplKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIC8qCiAgICAgICBIYXNoIHJhbmRvbWl6YXRpb24gaXMgZW5hYmxlZC4gIEdlbmVyYXRlIGEgcGVyLXByb2Nlc3Mgc2VjcmV0LAogICAgICAgdXNpbmcgUFlUSE9OSEFTSFNFRUQgaWYgcHJvdmlkZWQuCiAgICAgKi8KZGlmZiAtLWdpdCBhL1B5dGhvbi9zeW10YWJsZS5jIGIvUHl0aG9uL3N5bXRhYmxlLmMKaW5kZXggMWVjNTFmNy4uYjYyMjgzNSAxMDA2NDQKLS0tIGEvUHl0aG9uL3N5bXRhYmxlLmMKKysrIGIvUHl0aG9uL3N5bXRhYmxlLmMKQEAgLTE5LDEwICsxOSw2IEBACiAKICNkZWZpbmUgSU1QT1JUX1NUQVJfV0FSTklORyAiaW1wb3J0ICogb25seSBhbGxvd2VkIGF0IG1vZHVsZSBsZXZlbCIKIAotI2RlZmluZSBSRVRVUk5fVkFMX0lOX0dFTkVSQVRPUiBcCi0gICAgIidyZXR1cm4nIHdpdGggYXJndW1lbnQgaW5zaWRlIGdlbmVyYXRvciIKLQotCiBzdGF0aWMgUHlTVEVudHJ5T2JqZWN0ICoKIHN0ZV9uZXcoc3RydWN0IHN5bXRhYmxlICpzdCwgaWRlbnRpZmllciBuYW1lLCBfUHlfYmxvY2tfdHkgYmxvY2ssCiAgICAgICAgIHZvaWQgKmtleSwgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQpCkBAIC0xODUsNiArMTgxLDcgQEAKIHN0YXRpYyBpbnQgc3ltdGFibGVfdmlzaXRfYXJnYW5ub3RhdGlvbnMoc3RydWN0IHN5bXRhYmxlICpzdCwgYXNkbF9zZXEgKmFyZ3MpOwogc3RhdGljIGludCBzeW10YWJsZV9pbXBsaWNpdF9hcmcoc3RydWN0IHN5bXRhYmxlICpzdCwgaW50IHBvcyk7CiBzdGF0aWMgaW50IHN5bXRhYmxlX3Zpc2l0X2Fubm90YXRpb25zKHN0cnVjdCBzeW10YWJsZSAqc3QsIHN0bXRfdHkgcyk7CitzdGF0aWMgaW50IHN5bXRhYmxlX3Zpc2l0X3dpdGhpdGVtKHN0cnVjdCBzeW10YWJsZSAqc3QsIHdpdGhpdGVtX3R5IGl0ZW0pOwogCiAKIHN0YXRpYyBpZGVudGlmaWVyIHRvcCA9IE5VTEwsIGxhbWJkYSA9IE5VTEwsIGdlbmV4cHIgPSBOVUxMLApAQCAtMjI0LDEwICsyMjEsMTcgQEAKIHN0cnVjdCBzeW10YWJsZSAqCiBQeVN5bXRhYmxlX0J1aWxkKG1vZF90eSBtb2QsIGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBQeUZ1dHVyZUZlYXR1cmVzICpmdXR1cmUpCiB7Ci0gICAgc3RydWN0IHN5bXRhYmxlICpzdCA9IHN5bXRhYmxlX25ldygpOworICAgIHN0cnVjdCBzeW10YWJsZSAqc3Q7CiAgICAgYXNkbF9zZXEgKnNlcTsKICAgICBpbnQgaTsKIAorICAgIGlmIChfX2NsYXNzX18gPT0gTlVMTCkgeworICAgICAgICBfX2NsYXNzX18gPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiQF9fY2xhc3NfXyIpOworICAgICAgICBpZiAoX19jbGFzc19fID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBzdCA9IHN5bXRhYmxlX25ldygpOwogICAgIGlmIChzdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gc3Q7CiAgICAgc3QtPnN0X2ZpbGVuYW1lID0gZmlsZW5hbWU7CkBAIC03NDMsMTQgKzc0NywxMiBAQAogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgLyogU3BlY2lhbC1jYXNlIF9fY2xhc3NfXyAqLwotICAgICAgICBpZiAoIUdFVF9JREVOVElGSUVSKF9fY2xhc3NfXykpCi0gICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICBhc3NlcnQoUHlTZXRfQ29udGFpbnMobG9jYWwsIF9fY2xhc3NfXykgPT0gMSk7CiAgICAgICAgIGlmIChQeVNldF9BZGQobmV3Ym91bmQsIF9fY2xhc3NfXykgPCAwKQogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CiAKLSAgICAvKiBSZWN1cnNpdmVseSBjYWxsIGFuYWx5emVfYmxvY2soKSBvbiBlYWNoIGNoaWxkIGJsb2NrLgorICAgIC8qIFJlY3Vyc2l2ZWx5IGNhbGwgYW5hbHl6ZV9jaGlsZF9ibG9jaygpIG9uIGVhY2ggY2hpbGQgYmxvY2suCiAKICAgICAgICBuZXdib3VuZCwgbmV3Z2xvYmFsIG5vdyBjb250YWluIHRoZSBuYW1lcyB2aXNpYmxlIGluCiAgICAgICAgbmVzdGVkIGJsb2Nrcy4gIFRoZSBmcmVlIHZhcmlhYmxlcyBpbiB0aGUgY2hpbGRyZW4gd2lsbApAQCAtNzgyLDcgKzc4NCw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKSkKICAgICAgICAgZ290byBlcnJvcjsKICAgICBlbHNlIGlmIChzdGUtPnN0ZV90eXBlID09IENsYXNzQmxvY2sgJiYgIWFuYWx5emVfY2VsbHMoc2NvcGVzLCBuZXdmcmVlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19jbGFzc19fIikpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJAX19jbGFzc19fIikpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgLyogUmVjb3JkcyB0aGUgcmVzdWx0cyBvZiB0aGUgYW5hbHlzaXMgaW4gdGhlIHN5bWJvbCB0YWJsZSBlbnRyeSAqLwogICAgIGlmICghdXBkYXRlX3N5bWJvbHMoc3RlLT5zdGVfc3ltYm9scywgc2NvcGVzLCBib3VuZCwgbmV3ZnJlZSwKQEAgLTg5MywxOCArODk1LDE1IEBACiBzdGF0aWMgaW50CiBzeW10YWJsZV9leGl0X2Jsb2NrKHN0cnVjdCBzeW10YWJsZSAqc3QsIHZvaWQgKmFzdCkKIHsKLSAgICBQeV9zc2l6ZV90IGVuZDsKKyAgICBQeV9zc2l6ZV90IHNpemU7CiAKLSAgICBQeV9DTEVBUihzdC0+c3RfY3VyKTsKLSAgICBlbmQgPSBQeUxpc3RfR0VUX1NJWkUoc3QtPnN0X3N0YWNrKSAtIDE7Ci0gICAgaWYgKGVuZCA+PSAwKSB7Ci0gICAgICAgIHN0LT5zdF9jdXIgPSAoUHlTVEVudHJ5T2JqZWN0ICopUHlMaXN0X0dFVF9JVEVNKHN0LT5zdF9zdGFjaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kKTsKLSAgICAgICAgaWYgKHN0LT5zdF9jdXIgPT0gTlVMTCkKKyAgICBzdC0+c3RfY3VyID0gTlVMTDsKKyAgICBzaXplID0gUHlMaXN0X0dFVF9TSVpFKHN0LT5zdF9zdGFjayk7CisgICAgaWYgKHNpemUpIHsKKyAgICAgICAgaWYgKFB5TGlzdF9TZXRTbGljZShzdC0+c3Rfc3RhY2ssIHNpemUgLSAxLCBzaXplLCBOVUxMKSA8IDApCiAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgUHlfSU5DUkVGKHN0LT5zdF9jdXIpOwotICAgICAgICBpZiAoUHlTZXF1ZW5jZV9EZWxJdGVtKHN0LT5zdF9zdGFjaywgZW5kKSA8IDApCi0gICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgaWYgKC0tc2l6ZSkKKyAgICAgICAgICAgIHN0LT5zdF9jdXIgPSAoUHlTVEVudHJ5T2JqZWN0ICopUHlMaXN0X0dFVF9JVEVNKHN0LT5zdF9zdGFjaywgc2l6ZSAtIDEpOwogICAgIH0KICAgICByZXR1cm4gMTsKIH0KQEAgLTkxMywyMyArOTEyLDIzIEBACiBzeW10YWJsZV9lbnRlcl9ibG9jayhzdHJ1Y3Qgc3ltdGFibGUgKnN0LCBpZGVudGlmaWVyIG5hbWUsIF9QeV9ibG9ja190eSBibG9jaywKICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmFzdCwgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQpCiB7Ci0gICAgUHlTVEVudHJ5T2JqZWN0ICpwcmV2ID0gTlVMTDsKKyAgICBQeVNURW50cnlPYmplY3QgKnByZXYgPSBOVUxMLCAqc3RlOwogCi0gICAgaWYgKHN0LT5zdF9jdXIpIHsKLSAgICAgICAgcHJldiA9IHN0LT5zdF9jdXI7Ci0gICAgICAgIGlmIChQeUxpc3RfQXBwZW5kKHN0LT5zdF9zdGFjaywgKFB5T2JqZWN0ICopc3QtPnN0X2N1cikgPCAwKSB7Ci0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgfQotICAgICAgICBQeV9ERUNSRUYoc3QtPnN0X2N1cik7Ci0gICAgfQotICAgIHN0LT5zdF9jdXIgPSBzdGVfbmV3KHN0LCBuYW1lLCBibG9jaywgYXN0LCBsaW5lbm8sIGNvbF9vZmZzZXQpOwotICAgIGlmIChzdC0+c3RfY3VyID09IE5VTEwpCisgICAgc3RlID0gc3RlX25ldyhzdCwgbmFtZSwgYmxvY2ssIGFzdCwgbGluZW5vLCBjb2xfb2Zmc2V0KTsKKyAgICBpZiAoc3RlID09IE5VTEwpCiAgICAgICAgIHJldHVybiAwOworICAgIGlmIChQeUxpc3RfQXBwZW5kKHN0LT5zdF9zdGFjaywgKFB5T2JqZWN0ICopc3RlKSA8IDApIHsKKyAgICAgICAgUHlfREVDUkVGKHN0ZSk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBwcmV2ID0gc3QtPnN0X2N1cjsKKyAgICAvKiBUaGUgZW50cnkgaXMgb3duZWQgYnkgdGhlIHN0YWNrLiBCb3Jyb3cgaXQgZm9yIHN0X2N1ci4gKi8KKyAgICBQeV9ERUNSRUYoc3RlKTsKKyAgICBzdC0+c3RfY3VyID0gc3RlOwogICAgIGlmIChibG9jayA9PSBNb2R1bGVCbG9jaykKICAgICAgICAgc3QtPnN0X2dsb2JhbCA9IHN0LT5zdF9jdXItPnN0ZV9zeW1ib2xzOwogICAgIGlmIChwcmV2KSB7Ci0gICAgICAgIGlmIChQeUxpc3RfQXBwZW5kKHByZXYtPnN0ZV9jaGlsZHJlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5T2JqZWN0ICopc3QtPnN0X2N1cikgPCAwKSB7CisgICAgICAgIGlmIChQeUxpc3RfQXBwZW5kKHByZXYtPnN0ZV9jaGlsZHJlbiwgKFB5T2JqZWN0ICopc3RlKSA8IDApIHsKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9CiAgICAgfQpAQCAtMTAyMywxMiArMTAyMiw2IEBACiAgICAgaWYgKCFzeW10YWJsZV92aXNpdF8gIyMgVFlQRSgoU1QpLCAoVikpKSBcCiAgICAgICAgIHJldHVybiAwOwogCi0jZGVmaW5lIFZJU0lUX0lOX0JMT0NLKFNULCBUWVBFLCBWLCBTKSBcCi0gICAgaWYgKCFzeW10YWJsZV92aXNpdF8gIyMgVFlQRSgoU1QpLCAoVikpKSB7IFwKLSAgICAgICAgc3ltdGFibGVfZXhpdF9ibG9jaygoU1QpLCAoUykpOyBcCi0gICAgICAgIHJldHVybiAwOyBcCi0gICAgfQotCiAjZGVmaW5lIFZJU0lUX1NFUShTVCwgVFlQRSwgU0VRKSB7IFwKICAgICBpbnQgaTsgXAogICAgIGFzZGxfc2VxICpzZXEgPSAoU0VRKTsgLyogYXZvaWQgdmFyaWFibGUgY2FwdHVyZSAqLyBcCkBAIC0xMDM5LDE4ICsxMDMyLDYgQEAKICAgICB9IFwKIH0KIAotI2RlZmluZSBWSVNJVF9TRVFfSU5fQkxPQ0soU1QsIFRZUEUsIFNFUSwgUykgeyBcCi0gICAgaW50IGk7IFwKLSAgICBhc2RsX3NlcSAqc2VxID0gKFNFUSk7IC8qIGF2b2lkIHZhcmlhYmxlIGNhcHR1cmUgKi8gXAotICAgIGZvciAoaSA9IDA7IGkgPCBhc2RsX3NlcV9MRU4oc2VxKTsgaSsrKSB7IFwKLSAgICAgICAgVFlQRSAjIyBfdHkgZWx0ID0gKFRZUEUgIyMgX3R5KWFzZGxfc2VxX0dFVChzZXEsIGkpOyBcCi0gICAgICAgIGlmICghc3ltdGFibGVfdmlzaXRfICMjIFRZUEUoKFNUKSwgZWx0KSkgeyBcCi0gICAgICAgICAgICBzeW10YWJsZV9leGl0X2Jsb2NrKChTVCksIChTKSk7IFwKLSAgICAgICAgICAgIHJldHVybiAwOyBcCi0gICAgICAgIH0gXAotICAgIH0gXAotfQotCiAjZGVmaW5lIFZJU0lUX1NFUV9UQUlMKFNULCBUWVBFLCBTRVEsIFNUQVJUKSB7IFwKICAgICBpbnQgaTsgXAogICAgIGFzZGxfc2VxICpzZXEgPSAoU0VRKTsgLyogYXZvaWQgdmFyaWFibGUgY2FwdHVyZSAqLyBcCkBAIC0xMDYxLDE4ICsxMDQyLDYgQEAKICAgICB9IFwKIH0KIAotI2RlZmluZSBWSVNJVF9TRVFfVEFJTF9JTl9CTE9DSyhTVCwgVFlQRSwgU0VRLCBTVEFSVCwgUykgeyBcCi0gICAgaW50IGk7IFwKLSAgICBhc2RsX3NlcSAqc2VxID0gKFNFUSk7IC8qIGF2b2lkIHZhcmlhYmxlIGNhcHR1cmUgKi8gXAotICAgIGZvciAoaSA9IChTVEFSVCk7IGkgPCBhc2RsX3NlcV9MRU4oc2VxKTsgaSsrKSB7IFwKLSAgICAgICAgVFlQRSAjIyBfdHkgZWx0ID0gKFRZUEUgIyMgX3R5KWFzZGxfc2VxX0dFVChzZXEsIGkpOyBcCi0gICAgICAgIGlmICghc3ltdGFibGVfdmlzaXRfICMjIFRZUEUoKFNUKSwgZWx0KSkgeyBcCi0gICAgICAgICAgICBzeW10YWJsZV9leGl0X2Jsb2NrKChTVCksIChTKSk7IFwKLSAgICAgICAgICAgIHJldHVybiAwOyBcCi0gICAgICAgIH0gXAotICAgIH0gXAotfQotCiAjZGVmaW5lIFZJU0lUX0tXT05MWURFRkFVTFRTKFNULCBLV19ERUZBVUxUUykgeyBcCiAgICAgaW50IGkgPSAwOyBcCiAgICAgYXNkbF9zZXEgKnNlcSA9IChLV19ERUZBVUxUUyk7IC8qIGF2b2lkIHZhcmlhYmxlIGNhcHR1cmUgKi8gXApAQCAtMTEyMiw4ICsxMDkxLDggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGdW5jdGlvbkJsb2NrLCAodm9pZCAqKXMsIHMtPmxpbmVubywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5jb2xfb2Zmc2V0KSkKICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBWSVNJVF9JTl9CTE9DSyhzdCwgYXJndW1lbnRzLCBzLT52LkZ1bmN0aW9uRGVmLmFyZ3MsIHMpOwotICAgICAgICBWSVNJVF9TRVFfSU5fQkxPQ0soc3QsIHN0bXQsIHMtPnYuRnVuY3Rpb25EZWYuYm9keSwgcyk7CisgICAgICAgIFZJU0lUKHN0LCBhcmd1bWVudHMsIHMtPnYuRnVuY3Rpb25EZWYuYXJncyk7CisgICAgICAgIFZJU0lUX1NFUShzdCwgc3RtdCwgcy0+di5GdW5jdGlvbkRlZi5ib2R5KTsKICAgICAgICAgaWYgKCFzeW10YWJsZV9leGl0X2Jsb2NrKHN0LCBzKSkKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICBicmVhazsKQEAgLTExNDIsOCArMTExMSw3IEBACiAgICAgICAgIGlmICghc3ltdGFibGVfZW50ZXJfYmxvY2soc3QsIHMtPnYuQ2xhc3NEZWYubmFtZSwgQ2xhc3NCbG9jaywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodm9pZCAqKXMsIHMtPmxpbmVubywgcy0+Y29sX29mZnNldCkpCiAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgaWYgKCFHRVRfSURFTlRJRklFUihfX2NsYXNzX18pIHx8Ci0gICAgICAgICAgICAhc3ltdGFibGVfYWRkX2RlZihzdCwgX19jbGFzc19fLCBERUZfTE9DQUwpIHx8CisgICAgICAgIGlmICghc3ltdGFibGVfYWRkX2RlZihzdCwgX19jbGFzc19fLCBERUZfTE9DQUwpIHx8CiAgICAgICAgICAgICAhR0VUX0lERU5USUZJRVIoX19sb2NhbHNfXykgfHwKICAgICAgICAgICAgICFzeW10YWJsZV9hZGRfZGVmKHN0LCBfX2xvY2Fsc19fLCBERUZfUEFSQU0pKSB7CiAgICAgICAgICAgICBzeW10YWJsZV9leGl0X2Jsb2NrKHN0LCBzKTsKQEAgLTExNTEsNyArMTExOSw3IEBACiAgICAgICAgIH0KICAgICAgICAgdG1wID0gc3QtPnN0X3ByaXZhdGU7CiAgICAgICAgIHN0LT5zdF9wcml2YXRlID0gcy0+di5DbGFzc0RlZi5uYW1lOwotICAgICAgICBWSVNJVF9TRVFfSU5fQkxPQ0soc3QsIHN0bXQsIHMtPnYuQ2xhc3NEZWYuYm9keSwgcyk7CisgICAgICAgIFZJU0lUX1NFUShzdCwgc3RtdCwgcy0+di5DbGFzc0RlZi5ib2R5KTsKICAgICAgICAgc3QtPnN0X3ByaXZhdGUgPSB0bXA7CiAgICAgICAgIGlmICghc3ltdGFibGVfZXhpdF9ibG9jayhzdCwgcykpCiAgICAgICAgICAgICByZXR1cm4gMDsKQEAgLTExNjEsMTQgKzExMjksNiBAQAogICAgICAgICBpZiAocy0+di5SZXR1cm4udmFsdWUpIHsKICAgICAgICAgICAgIFZJU0lUKHN0LCBleHByLCBzLT52LlJldHVybi52YWx1ZSk7CiAgICAgICAgICAgICBzdC0+c3RfY3VyLT5zdGVfcmV0dXJuc192YWx1ZSA9IDE7Ci0gICAgICAgICAgICBpZiAoc3QtPnN0X2N1ci0+c3RlX2dlbmVyYXRvcikgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeW50YXhFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgUkVUVVJOX1ZBTF9JTl9HRU5FUkFUT1IpOwotICAgICAgICAgICAgICAgIFB5RXJyX1N5bnRheExvY2F0aW9uRXgoc3QtPnN0X2ZpbGVuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+bGluZW5vLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+Y29sX29mZnNldCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBEZWxldGVfa2luZDoKQEAgLTEyMDUsMTkgKzExNjUsMTYgQEAKICAgICBjYXNlIFJhaXNlX2tpbmQ6CiAgICAgICAgIGlmIChzLT52LlJhaXNlLmV4YykgewogICAgICAgICAgICAgVklTSVQoc3QsIGV4cHIsIHMtPnYuUmFpc2UuZXhjKTsKLSAgICAgICAgaWYgKHMtPnYuUmFpc2UuY2F1c2UpIHsKLSAgICAgICAgVklTSVQoc3QsIGV4cHIsIHMtPnYuUmFpc2UuY2F1c2UpOwotICAgICAgICB9CisgICAgICAgICAgICBpZiAocy0+di5SYWlzZS5jYXVzZSkgeworICAgICAgICAgICAgICAgIFZJU0lUKHN0LCBleHByLCBzLT52LlJhaXNlLmNhdXNlKTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBicmVhazsKLSAgICBjYXNlIFRyeUV4Y2VwdF9raW5kOgotICAgICAgICBWSVNJVF9TRVEoc3QsIHN0bXQsIHMtPnYuVHJ5RXhjZXB0LmJvZHkpOwotICAgICAgICBWSVNJVF9TRVEoc3QsIHN0bXQsIHMtPnYuVHJ5RXhjZXB0Lm9yZWxzZSk7Ci0gICAgICAgIFZJU0lUX1NFUShzdCwgZXhjZXB0aGFuZGxlciwgcy0+di5UcnlFeGNlcHQuaGFuZGxlcnMpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFRyeUZpbmFsbHlfa2luZDoKLSAgICAgICAgVklTSVRfU0VRKHN0LCBzdG10LCBzLT52LlRyeUZpbmFsbHkuYm9keSk7Ci0gICAgICAgIFZJU0lUX1NFUShzdCwgc3RtdCwgcy0+di5UcnlGaW5hbGx5LmZpbmFsYm9keSk7CisgICAgY2FzZSBUcnlfa2luZDoKKyAgICAgICAgVklTSVRfU0VRKHN0LCBzdG10LCBzLT52LlRyeS5ib2R5KTsKKyAgICAgICAgVklTSVRfU0VRKHN0LCBzdG10LCBzLT52LlRyeS5vcmVsc2UpOworICAgICAgICBWSVNJVF9TRVEoc3QsIGV4Y2VwdGhhbmRsZXIsIHMtPnYuVHJ5LmhhbmRsZXJzKTsKKyAgICAgICAgVklTSVRfU0VRKHN0LCBzdG10LCBzLT52LlRyeS5maW5hbGJvZHkpOwogICAgICAgICBicmVhazsKICAgICBjYXNlIEFzc2VydF9raW5kOgogICAgICAgICBWSVNJVChzdCwgZXhwciwgcy0+di5Bc3NlcnQudGVzdCk7CkBAIC0xMzA1LDEwICsxMjYyLDcgQEAKICAgICAgICAgLyogbm90aGluZyB0byBkbyBoZXJlICovCiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgV2l0aF9raW5kOgotICAgICAgICBWSVNJVChzdCwgZXhwciwgcy0+di5XaXRoLmNvbnRleHRfZXhwcik7Ci0gICAgICAgIGlmIChzLT52LldpdGgub3B0aW9uYWxfdmFycykgewotICAgICAgICAgICAgVklTSVQoc3QsIGV4cHIsIHMtPnYuV2l0aC5vcHRpb25hbF92YXJzKTsKLSAgICAgICAgfQorICAgICAgICBWSVNJVF9TRVEoc3QsIHdpdGhpdGVtLCBzLT52LldpdGguaXRlbXMpOwogICAgICAgICBWSVNJVF9TRVEoc3QsIHN0bXQsIHMtPnYuV2l0aC5ib2R5KTsKICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAtMTM0MSw4ICsxMjk1LDggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGdW5jdGlvbkJsb2NrLCAodm9pZCAqKWUsIGUtPmxpbmVubywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLT5jb2xfb2Zmc2V0KSkKICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBWSVNJVF9JTl9CTE9DSyhzdCwgYXJndW1lbnRzLCBlLT52LkxhbWJkYS5hcmdzLCAodm9pZCopZSk7Ci0gICAgICAgIFZJU0lUX0lOX0JMT0NLKHN0LCBleHByLCBlLT52LkxhbWJkYS5ib2R5LCAodm9pZCopZSk7CisgICAgICAgIFZJU0lUKHN0LCBhcmd1bWVudHMsIGUtPnYuTGFtYmRhLmFyZ3MpOworICAgICAgICBWSVNJVChzdCwgZXhwciwgZS0+di5MYW1iZGEuYm9keSk7CiAgICAgICAgIGlmICghc3ltdGFibGVfZXhpdF9ibG9jayhzdCwgKHZvaWQgKillKSkKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICBicmVhazsKQEAgLTEzNzYsMTcgKzEzMzAsMTQgQEAKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFlpZWxkX2tpbmQ6Ci0gICAgICAgIGlmIChlLT52LllpZWxkLnZhbHVlKQotICAgICAgICAgICAgVklTSVQoc3QsIGV4cHIsIGUtPnYuWWllbGQudmFsdWUpOworICAgIGNhc2UgWWllbGRGcm9tX2tpbmQ6IHsKKyAgICAgICAgZXhwcl90eSB2YWx1ZTsKKyAgICAgICAgdmFsdWUgPSAoZS0+a2luZCA9PSBZaWVsZEZyb21fa2luZCkgPyBlLT52LllpZWxkRnJvbS52YWx1ZSA6IGUtPnYuWWllbGQudmFsdWU7CisgICAgICAgIGlmICh2YWx1ZSkKKyAgICAgICAgICAgIFZJU0lUKHN0LCBleHByLCB2YWx1ZSk7CiAgICAgICAgIHN0LT5zdF9jdXItPnN0ZV9nZW5lcmF0b3IgPSAxOwotICAgICAgICBpZiAoc3QtPnN0X2N1ci0+c3RlX3JldHVybnNfdmFsdWUpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeW50YXhFcnJvciwKLSAgICAgICAgICAgICAgICBSRVRVUk5fVkFMX0lOX0dFTkVSQVRPUik7Ci0gICAgICAgICAgICBQeUVycl9TeW50YXhMb2NhdGlvbkV4KHN0LT5zdF9maWxlbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZS0+bGluZW5vLCBlLT5jb2xfb2Zmc2V0KTsKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICB9CiAgICAgICAgIGJyZWFrOworICAgIH0KICAgICBjYXNlIENvbXBhcmVfa2luZDoKICAgICAgICAgVklTSVQoc3QsIGV4cHIsIGUtPnYuQ29tcGFyZS5sZWZ0KTsKICAgICAgICAgVklTSVRfU0VRKHN0LCBleHByLCBlLT52LkNvbXBhcmUuY29tcGFyYXRvcnMpOwpAQCAtMTQyNSw4ICsxMzc2LDcgQEAKICAgICAgICAgaWYgKGUtPnYuTmFtZS5jdHggPT0gTG9hZCAmJgogICAgICAgICAgICAgc3QtPnN0X2N1ci0+c3RlX3R5cGUgPT0gRnVuY3Rpb25CbG9jayAmJgogICAgICAgICAgICAgIVB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKGUtPnYuTmFtZS5pZCwgInN1cGVyIikpIHsKLSAgICAgICAgICAgIGlmICghR0VUX0lERU5USUZJRVIoX19jbGFzc19fKSB8fAotICAgICAgICAgICAgICAgICFzeW10YWJsZV9hZGRfZGVmKHN0LCBfX2NsYXNzX18sIFVTRSkpCisgICAgICAgICAgICBpZiAoIXN5bXRhYmxlX2FkZF9kZWYoc3QsIF9fY2xhc3NfXywgVVNFKSkKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQogICAgICAgICBicmVhazsKQEAgLTE1NDMsNiArMTQ5MywxNiBAQAogICAgIHJldHVybiAxOwogfQogCitzdGF0aWMgaW50CitzeW10YWJsZV92aXNpdF93aXRoaXRlbShzdHJ1Y3Qgc3ltdGFibGUgKnN0LCB3aXRoaXRlbV90eSBpdGVtKQoreworICAgIFZJU0lUKHN0LCBleHByLCBpdGVtLT5jb250ZXh0X2V4cHIpOworICAgIGlmIChpdGVtLT5vcHRpb25hbF92YXJzKSB7CisgICAgICAgIFZJU0lUKHN0LCBleHByLCBpdGVtLT5vcHRpb25hbF92YXJzKTsKKyAgICB9CisgICAgcmV0dXJuIDE7Cit9CisKIAogc3RhdGljIGludAogc3ltdGFibGVfdmlzaXRfYWxpYXMoc3RydWN0IHN5bXRhYmxlICpzdCwgYWxpYXNfdHkgYSkKQEAgLTE1NTMsMTAgKzE1MTMsMTAgQEAKICAgICAqLwogICAgIFB5T2JqZWN0ICpzdG9yZV9uYW1lOwogICAgIFB5T2JqZWN0ICpuYW1lID0gKGEtPmFzbmFtZSA9PSBOVUxMKSA/IGEtPm5hbWUgOiBhLT5hc25hbWU7Ci0gICAgY29uc3QgUHlfVU5JQ09ERSAqYmFzZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKG5hbWUpOwotICAgIFB5X1VOSUNPREUgKmRvdCA9IFB5X1VOSUNPREVfc3RyY2hyKGJhc2UsICcuJyk7Ci0gICAgaWYgKGRvdCkgewotICAgICAgICBzdG9yZV9uYW1lID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKGJhc2UsIGRvdCAtIGJhc2UpOworICAgIFB5X3NzaXplX3QgZG90ID0gUHlVbmljb2RlX0ZpbmRDaGFyKG5hbWUsICcuJywgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSwgMSk7CisgICAgaWYgKGRvdCAhPSAtMSkgeworICAgICAgICBzdG9yZV9uYW1lID0gUHlVbmljb2RlX1N1YnN0cmluZyhuYW1lLCAwLCBkb3QpOwogICAgICAgICBpZiAoIXN0b3JlX25hbWUpCiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICB9CkBAIC0xNjUzLDEzICsxNjEzLDEyIEBACiAgICAgICAgIHN5bXRhYmxlX2V4aXRfYmxvY2soc3QsICh2b2lkICopZSk7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLSAgICBWSVNJVF9JTl9CTE9DSyhzdCwgZXhwciwgb3V0ZXJtb3N0LT50YXJnZXQsICh2b2lkKillKTsKLSAgICBWSVNJVF9TRVFfSU5fQkxPQ0soc3QsIGV4cHIsIG91dGVybW9zdC0+aWZzLCAodm9pZCopZSk7Ci0gICAgVklTSVRfU0VRX1RBSUxfSU5fQkxPQ0soc3QsIGNvbXByZWhlbnNpb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdG9ycywgMSwgKHZvaWQqKWUpOworICAgIFZJU0lUKHN0LCBleHByLCBvdXRlcm1vc3QtPnRhcmdldCk7CisgICAgVklTSVRfU0VRKHN0LCBleHByLCBvdXRlcm1vc3QtPmlmcyk7CisgICAgVklTSVRfU0VRX1RBSUwoc3QsIGNvbXByZWhlbnNpb24sIGdlbmVyYXRvcnMsIDEpOwogICAgIGlmICh2YWx1ZSkKLSAgICAgICAgVklTSVRfSU5fQkxPQ0soc3QsIGV4cHIsIHZhbHVlLCAodm9pZCopZSk7Ci0gICAgVklTSVRfSU5fQkxPQ0soc3QsIGV4cHIsIGVsdCwgKHZvaWQqKWUpOworICAgICAgICBWSVNJVChzdCwgZXhwciwgdmFsdWUpOworICAgIFZJU0lUKHN0LCBleHByLCBlbHQpOwogICAgIHJldHVybiBzeW10YWJsZV9leGl0X2Jsb2NrKHN0LCAodm9pZCAqKWUpOwogfQogCmRpZmYgLS1naXQgYS9QeXRob24vc3lzbW9kdWxlLmMgYi9QeXRob24vc3lzbW9kdWxlLmMKaW5kZXggYzRmMjdkMC4uYzQzNGI1YSAxMDA2NDQKLS0tIGEvUHl0aG9uL3N5c21vZHVsZS5jCisrKyBiL1B5dGhvbi9zeXNtb2R1bGUuYwpAQCAtMTcsNiArMTcsNyBAQAogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgImNvZGUuaCIKICNpbmNsdWRlICJmcmFtZW9iamVjdC5oIgorI2luY2x1ZGUgInB5dGhyZWFkLmgiCiAKICNpbmNsdWRlICJvc2RlZnMuaCIKIApAQCAtNzgsOCArNzksMTAgQEAKICAgICBQeU9iamVjdCAqZW5jb2RlZCwgKmVzY2FwZWRfc3RyLCAqcmVwcl9zdHIsICpidWZmZXIsICpyZXN1bHQ7CiAgICAgY2hhciAqc3Rkb3V0X2VuY29kaW5nX3N0cjsKICAgICBpbnQgcmV0OworICAgIF9QeV9JREVOVElGSUVSKGVuY29kaW5nKTsKKyAgICBfUHlfSURFTlRJRklFUihidWZmZXIpOwogCi0gICAgc3Rkb3V0X2VuY29kaW5nID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvdXRmLCAiZW5jb2RpbmciKTsKKyAgICBzdGRvdXRfZW5jb2RpbmcgPSBfUHlPYmplY3RfR2V0QXR0cklkKG91dGYsICZQeUlkX2VuY29kaW5nKTsKICAgICBpZiAoc3Rkb3V0X2VuY29kaW5nID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgc3Rkb3V0X2VuY29kaW5nX3N0ciA9IF9QeVVuaWNvZGVfQXNTdHJpbmcoc3Rkb3V0X2VuY29kaW5nKTsKQEAgLTk2LDkgKzk5LDEwIEBACiAgICAgaWYgKGVuY29kZWQgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKIAotICAgIGJ1ZmZlciA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob3V0ZiwgImJ1ZmZlciIpOworICAgIGJ1ZmZlciA9IF9QeU9iamVjdF9HZXRBdHRySWQob3V0ZiwgJlB5SWRfYnVmZmVyKTsKICAgICBpZiAoYnVmZmVyKSB7Ci0gICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoYnVmZmVyLCAid3JpdGUiLCAiKE8pIiwgZW5jb2RlZCk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHdyaXRlKTsKKyAgICAgICAgcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChidWZmZXIsICZQeUlkX3dyaXRlLCAiKE8pIiwgZW5jb2RlZCk7CiAgICAgICAgIFB5X0RFQ1JFRihidWZmZXIpOwogICAgICAgICBQeV9ERUNSRUYoZW5jb2RlZCk7CiAgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKQEAgLTEzNSw2ICsxMzksNyBAQAogICAgIFB5T2JqZWN0ICptb2R1bGVzID0gaW50ZXJwLT5tb2R1bGVzOwogICAgIFB5T2JqZWN0ICpidWlsdGlucyA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKG1vZHVsZXMsICJidWlsdGlucyIpOwogICAgIGludCBlcnI7CisgICAgX1B5X0lERU5USUZJRVIoXyk7CiAKICAgICBpZiAoYnVpbHRpbnMgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLCAibG9zdCBidWlsdGlucyBtb2R1bGUiKTsKQEAgLTE0OCw3ICsxNTMsNyBAQAogICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgICAgIHJldHVybiBQeV9Ob25lOwogICAgIH0KLSAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhidWlsdGlucywgIl8iLCBQeV9Ob25lKSAhPSAwKQorICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKGJ1aWx0aW5zLCAmUHlJZF9fLCBQeV9Ob25lKSAhPSAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBvdXRmID0gUHlTeXNfR2V0T2JqZWN0KCJzdGRvdXQiKTsKICAgICBpZiAob3V0ZiA9PSBOVUxMIHx8IG91dGYgPT0gUHlfTm9uZSkgewpAQCAtMTcwLDcgKzE3NSw3IEBACiAgICAgfQogICAgIGlmIChQeUZpbGVfV3JpdGVTdHJpbmcoIlxuIiwgb3V0ZikgIT0gMCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcoYnVpbHRpbnMsICJfIiwgbykgIT0gMCkKKyAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChidWlsdGlucywgJlB5SWRfXywgbykgIT0gMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgIHJldHVybiBQeV9Ob25lOwpAQCAtNzcwLDkgKzc3NSw3IEBACiBhIGxhenkgcmVzb2x2aW5nIG9mIHN5bWJvbHMgd2hlbiBpbXBvcnRpbmcgYSBtb2R1bGUsIGlmIGNhbGxlZCBhc1xuXAogc3lzLnNldGRsb3BlbmZsYWdzKDApLiAgVG8gc2hhcmUgc3ltYm9scyBhY3Jvc3MgZXh0ZW5zaW9uIG1vZHVsZXMsIGNhbGwgYXNcblwKIHN5cy5zZXRkbG9wZW5mbGFncyhjdHlwZXMuUlRMRF9HTE9CQUwpLiAgU3ltYm9saWMgbmFtZXMgZm9yIHRoZSBmbGFnIG1vZHVsZXNcblwKLWNhbiBiZSBlaXRoZXIgZm91bmQgaW4gdGhlIGN0eXBlcyBtb2R1bGUsIG9yIGluIHRoZSBETEZDTiBtb2R1bGUuIElmIERMRkNOXG5cCi1pcyBub3QgYXZhaWxhYmxlLCBpdCBjYW4gYmUgZ2VuZXJhdGVkIGZyb20gL3Vzci9pbmNsdWRlL2RsZmNuLmggdXNpbmcgdGhlXG5cCi1oMnB5IHNjcmlwdC4iKTsKK2NhbiBiZSBmb3VuZCBpbiB0aGUgb3MgbW9kdWxlIChSVExEX3h4eCBjb25zdGFudHMsIGUuZy4gb3MuUlRMRF9MQVpZKS4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKIHN5c19nZXRkbG9wZW5mbGFncyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCkBAIC04MTEsMTAgKzgxNCwxMSBAQAogc3lzX2dldHNpemVvZihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewogICAgIFB5T2JqZWN0ICpyZXMgPSBOVUxMOwotICAgIHN0YXRpYyBQeU9iamVjdCAqc3RyX19zaXplb2ZfXyA9IE5VTEwsICpnY19oZWFkX3NpemUgPSBOVUxMOworICAgIHN0YXRpYyBQeU9iamVjdCAqZ2NfaGVhZF9zaXplID0gTlVMTDsKICAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7Im9iamVjdCIsICJkZWZhdWx0IiwgMH07CiAgICAgUHlPYmplY3QgKm8sICpkZmx0ID0gTlVMTDsKICAgICBQeU9iamVjdCAqbWV0aG9kOworICAgIF9QeV9JREVOVElGSUVSKF9fc2l6ZW9mX18pOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIk98TzpnZXRzaXplb2YiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3bGlzdCwgJm8sICZkZmx0KSkKQEAgLTgzMSw4ICs4MzUsNyBAQAogICAgIGlmIChQeVR5cGVfUmVhZHkoUHlfVFlQRShvKSkgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIG1ldGhvZCA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKG8sICJfX3NpemVvZl9fIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RyX19zaXplb2ZfXyk7CisgICAgbWV0aG9kID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobywgJlB5SWRfX19zaXplb2ZfXyk7CiAgICAgaWYgKG1ldGhvZCA9PSBOVUxMKSB7CiAgICAgICAgIGlmICghUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCkBAIC0xMTc3LDcgKzExODAsNiBAQAogICAgIFB5T2JqZWN0ICpvcHRzOwogICAgIFB5T2JqZWN0ICpuYW1lID0gTlVMTCwgKnZhbHVlID0gTlVMTDsKICAgICBjb25zdCB3Y2hhcl90ICpuYW1lX2VuZDsKLSAgICBpbnQgcjsKIAogICAgIG9wdHMgPSBnZXRfeG9wdGlvbnMoKTsKICAgICBpZiAob3B0cyA9PSBOVUxMKQpAQCAtMTE5NSw3ICsxMTk3LDcgQEAKICAgICB9CiAgICAgaWYgKG5hbWUgPT0gTlVMTCB8fCB2YWx1ZSA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycm9yOwotICAgIHIgPSBQeURpY3RfU2V0SXRlbShvcHRzLCBuYW1lLCB2YWx1ZSk7CisgICAgUHlEaWN0X1NldEl0ZW0ob3B0cywgbmFtZSwgdmFsdWUpOwogICAgIFB5X0RFQ1JFRihuYW1lKTsKICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgIHJldHVybjsKQEAgLTEyNTIsMjEgKzEyNTQsMjEgQEAKICJcblwKIFN0YXRpYyBvYmplY3RzOlxuXAogXG5cCi1mbG9hdF9pbmZvIC0tIGEgZGljdCB3aXRoIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmbG9hdCBpbXBsZW1lbnRhdGlvbi5cblwKK2J1aWx0aW5fbW9kdWxlX25hbWVzIC0tIHR1cGxlIG9mIG1vZHVsZSBuYW1lcyBidWlsdCBpbnRvIHRoaXMgaW50ZXJwcmV0ZXJcblwKK2NvcHlyaWdodCAtLSBjb3B5cmlnaHQgbm90aWNlIHBlcnRhaW5pbmcgdG8gdGhpcyBpbnRlcnByZXRlclxuXAorZXhlY19wcmVmaXggLS0gcHJlZml4IHVzZWQgdG8gZmluZCB0aGUgbWFjaGluZS1zcGVjaWZpYyBQeXRob24gbGlicmFyeVxuXAorZXhlY3V0YWJsZSAtLSBhYnNvbHV0ZSBwYXRoIG9mIHRoZSBleGVjdXRhYmxlIGJpbmFyeSBvZiB0aGUgUHl0aG9uIGludGVycHJldGVyXG5cCitmbG9hdF9pbmZvIC0tIGEgc3RydWN0IHNlcXVlbmNlIHdpdGggaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZsb2F0IGltcGxlbWVudGF0aW9uLlxuXAorZmxvYXRfcmVwcl9zdHlsZSAtLSBzdHJpbmcgaW5kaWNhdGluZyB0aGUgc3R5bGUgb2YgcmVwcigpIG91dHB1dCBmb3IgZmxvYXRzXG5cCitoZXh2ZXJzaW9uIC0tIHZlcnNpb24gaW5mb3JtYXRpb24gZW5jb2RlZCBhcyBhIHNpbmdsZSBpbnRlZ2VyXG5cCiBpbnRfaW5mbyAtLSBhIHN0cnVjdCBzZXF1ZW5jZSB3aXRoIGluZm9ybWF0aW9uIGFib3V0IHRoZSBpbnQgaW1wbGVtZW50YXRpb24uXG5cCiBtYXhzaXplIC0tIHRoZSBsYXJnZXN0IHN1cHBvcnRlZCBsZW5ndGggb2YgY29udGFpbmVycy5cblwKLW1heHVuaWNvZGUgLS0gdGhlIGxhcmdlc3Qgc3VwcG9ydGVkIGNoYXJhY3RlclxuXAotYnVpbHRpbl9tb2R1bGVfbmFtZXMgLS0gdHVwbGUgb2YgbW9kdWxlIG5hbWVzIGJ1aWx0IGludG8gdGhpcyBpbnRlcnByZXRlclxuXAotc3VidmVyc2lvbiAtLSBzdWJ2ZXJzaW9uIGluZm9ybWF0aW9uIG9mIHRoZSBidWlsZCBhcyB0dXBsZVxuXAorbWF4dW5pY29kZSAtLSB0aGUgdmFsdWUgb2YgdGhlIGxhcmdlc3QgVW5pY29kZSBjb2RlcG9pbnRcblwKK3BsYXRmb3JtIC0tIHBsYXRmb3JtIGlkZW50aWZpZXJcblwKK3ByZWZpeCAtLSBwcmVmaXggdXNlZCB0byBmaW5kIHRoZSBQeXRob24gbGlicmFyeVxuXAordGhyZWFkX2luZm8gLS0gYSBzdHJ1Y3Qgc2VxdWVuY2Ugd2l0aCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdGhyZWFkIGltcGxlbWVudGF0aW9uLlxuXAogdmVyc2lvbiAtLSB0aGUgdmVyc2lvbiBvZiB0aGlzIGludGVycHJldGVyIGFzIGEgc3RyaW5nXG5cCiB2ZXJzaW9uX2luZm8gLS0gdmVyc2lvbiBpbmZvcm1hdGlvbiBhcyBhIG5hbWVkIHR1cGxlXG5cCi1oZXh2ZXJzaW9uIC0tIHZlcnNpb24gaW5mb3JtYXRpb24gZW5jb2RlZCBhcyBhIHNpbmdsZSBpbnRlZ2VyXG5cCi1jb3B5cmlnaHQgLS0gY29weXJpZ2h0IG5vdGljZSBwZXJ0YWluaW5nIHRvIHRoaXMgaW50ZXJwcmV0ZXJcblwKLXBsYXRmb3JtIC0tIHBsYXRmb3JtIGlkZW50aWZpZXJcblwKLWV4ZWN1dGFibGUgLS0gYWJzb2x1dGUgcGF0aCBvZiB0aGUgZXhlY3V0YWJsZSBiaW5hcnkgb2YgdGhlIFB5dGhvbiBpbnRlcnByZXRlclxuXAotcHJlZml4IC0tIHByZWZpeCB1c2VkIHRvIGZpbmQgdGhlIFB5dGhvbiBsaWJyYXJ5XG5cCi1leGVjX3ByZWZpeCAtLSBwcmVmaXggdXNlZCB0byBmaW5kIHRoZSBtYWNoaW5lLXNwZWNpZmljIFB5dGhvbiBsaWJyYXJ5XG5cCi1mbG9hdF9yZXByX3N0eWxlIC0tIHN0cmluZyBpbmRpY2F0aW5nIHRoZSBzdHlsZSBvZiByZXByKCkgb3V0cHV0IGZvciBmbG9hdHNcblwKICIKICkKICNpZmRlZiBNU19XSU5ET1dTCkBAIC0xMzA1LDQzICsxMzA3LDYgQEAKICkKIC8qIGVuZCBvZiBzeXNfZG9jICovIDsKIAotLyogU3VidmVyc2lvbiBicmFuY2ggYW5kIHJldmlzaW9uIG1hbmFnZW1lbnQgKi8KLXN0YXRpYyBpbnQgc3ZuX2luaXRpYWxpemVkOwotc3RhdGljIGNoYXIgcGF0Y2hsZXZlbF9yZXZpc2lvbls1MF07IC8qIEp1c3QgdGhlIG51bWJlciAqLwotc3RhdGljIGNoYXIgYnJhbmNoWzUwXTsKLXN0YXRpYyBjaGFyIHNob3J0YnJhbmNoWzUwXTsKLXN0YXRpYyBjb25zdCBjaGFyICpzdm5fcmV2aXNpb247Ci0KLXN0YXRpYyB2b2lkCi1zdm52ZXJzaW9uX2luaXQodm9pZCkKLXsKLSAgICBpZiAoc3ZuX2luaXRpYWxpemVkKQotICAgICAgICByZXR1cm47Ci0KLSAgICBzdm5faW5pdGlhbGl6ZWQgPSAxOwotICAgICpwYXRjaGxldmVsX3JldmlzaW9uID0gJ1wwJzsKLSAgICBzdHJjcHkoYnJhbmNoLCAiIik7Ci0gICAgc3RyY3B5KHNob3J0YnJhbmNoLCAidW5rbm93biIpOwotICAgIHN2bl9yZXZpc2lvbiA9ICIiOwotfQotCi0vKiBSZXR1cm4gc3ZudmVyc2lvbiBvdXRwdXQgaWYgYXZhaWxhYmxlLgotICAgRWxzZSByZXR1cm4gUmV2aXNpb24gb2YgcGF0Y2hsZXZlbC5oIGlmIG9uIGJyYW5jaC4KLSAgIEVsc2UgcmV0dXJuIGVtcHR5IHN0cmluZyAqLwotY29uc3QgY2hhcioKLVB5X1N1YnZlcnNpb25SZXZpc2lvbigpCi17Ci0gICAgc3ZudmVyc2lvbl9pbml0KCk7Ci0gICAgcmV0dXJuIHN2bl9yZXZpc2lvbjsKLX0KLQotY29uc3QgY2hhcioKLVB5X1N1YnZlcnNpb25TaG9ydEJyYW5jaCgpCi17Ci0gICAgc3ZudmVyc2lvbl9pbml0KCk7Ci0gICAgcmV0dXJuIHNob3J0YnJhbmNoOwotfQotCiAKIFB5RG9jX1NUUlZBUihmbGFnc19fZG9jX18sCiAic3lzLmZsYWdzXG5cCkBAIC0xMzUyLDcgKzEzMTcsNiBAQAogCiBzdGF0aWMgUHlTdHJ1Y3RTZXF1ZW5jZV9GaWVsZCBmbGFnc19maWVsZHNbXSA9IHsKICAgICB7ImRlYnVnIiwgICAgICAgICAgICAgICAgICAgIi1kIn0sCi0gICAgeyJkaXZpc2lvbl93YXJuaW5nIiwgICAgICAgICItUSJ9LAogICAgIHsiaW5zcGVjdCIsICAgICAgICAgICAgICAgICAiLWkifSwKICAgICB7ImludGVyYWN0aXZlIiwgICAgICAgICAgICAgIi1pIn0sCiAgICAgeyJvcHRpbWl6ZSIsICAgICAgICAgICAgICAgICItTyBvciAtT08ifSwKQEAgLTEzNzcsOSArMTM0MSw5IEBACiAgICAgZmxhZ3NfX2RvY19fLCAgICAgICAvKiBkb2MgKi8KICAgICBmbGFnc19maWVsZHMsICAgICAgIC8qIGZpZWxkcyAqLwogI2lmZGVmIFJJU0NPUwotICAgIDE0Ci0jZWxzZQogICAgIDEzCisjZWxzZQorICAgIDEyCiAjZW5kaWYKIH07CiAKQEAgLTEzOTcsNyArMTM2MSw2IEBACiAgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShzZXEsIHBvcysrLCBQeUxvbmdfRnJvbUxvbmcoZmxhZykpCiAKICAgICBTZXRGbGFnKFB5X0RlYnVnRmxhZyk7Ci0gICAgU2V0RmxhZyhQeV9EaXZpc2lvbldhcm5pbmdGbGFnKTsKICAgICBTZXRGbGFnKFB5X0luc3BlY3RGbGFnKTsKICAgICBTZXRGbGFnKFB5X0ludGVyYWN0aXZlRmxhZyk7CiAgICAgU2V0RmxhZyhQeV9PcHRpbWl6ZUZsYWcpOwpAQCAtMTU0NywxMCArMTUxMCw2IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0Zyb21TdHJpbmcoUHlfR2V0VmVyc2lvbigpKSk7CiAgICAgU0VUX1NZU19GUk9NX1NUUklORygiaGV4dmVyc2lvbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgUHlMb25nX0Zyb21Mb25nKFBZX1ZFUlNJT05fSEVYKSk7Ci0gICAgc3ZudmVyc2lvbl9pbml0KCk7Ci0gICAgU0VUX1NZU19GUk9NX1NUUklORygic3VidmVyc2lvbiIsCi0gICAgICAgICAgICAgICAgICAgICAgICBQeV9CdWlsZFZhbHVlKCIoc3NzKSIsICJDUHl0aG9uIiwgYnJhbmNoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdm5fcmV2aXNpb24pKTsKICAgICBTRVRfU1lTX0ZST01fU1RSSU5HKCJfbWVyY3VyaWFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X0J1aWxkVmFsdWUoIihzenopIiwgIkNQeXRob24iLCBfUHlfaGdpZGVudGlmaWVyKCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9QeV9oZ3ZlcnNpb24oKSkpOwpAQCAtMTU4MSw3ICsxNTQwLDcgQEAKICAgICBTRVRfU1lTX0ZST01fU1RSSU5HKCJoYXNoX2luZm8iLAogICAgICAgICAgICAgICAgICAgICAgICAgZ2V0X2hhc2hfaW5mbygpKTsKICAgICBTRVRfU1lTX0ZST01fU1RSSU5HKCJtYXh1bmljb2RlIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5TG9uZ19Gcm9tTG9uZyhQeVVuaWNvZGVfR2V0TWF4KCkpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5TG9uZ19Gcm9tTG9uZygweDEwRkZGRikpOwogICAgIFNFVF9TWVNfRlJPTV9TVFJJTkcoImJ1aWx0aW5fbW9kdWxlX25hbWVzIiwKICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RfYnVpbHRpbl9tb2R1bGVfbmFtZXMoKSk7CiAgICAgewpAQCAtMTY1OCw2ICsxNjE3LDEwIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRnJvbVN0cmluZygibGVnYWN5IikpOwogI2VuZGlmCiAKKyNpZmRlZiBXSVRIX1RIUkVBRAorICAgIFNFVF9TWVNfRlJPTV9TVFJJTkcoInRocmVhZF9pbmZvIiwgUHlUaHJlYWRfR2V0SW5mbygpKTsKKyNlbmRpZgorCiAjdW5kZWYgU0VUX1NZU19GUk9NX1NUUklORwogICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTE4MTIsNyArMTc3NSw3IEBACiAgICAgICAgIHRoZSBhcmd1bWVudCBtdXN0IGJlIHRoZSBmdWxsIHBhdGggYW55d2F5LiAqLwogICAgICAgICB3Y2hhcl90ICpwdGVtcDsKICAgICAgICAgaWYgKEdldEZ1bGxQYXRoTmFtZVcoYXJndjAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YoZnVsbHBhdGgpL3NpemVvZihmdWxscGF0aFswXSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9BUlJBWV9MRU5HVEgoZnVsbHBhdGgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVsbHBhdGgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHRlbXApKSB7CiAgICAgICAgICAgICBhcmd2MCA9IGZ1bGxwYXRoOwpAQCAtMTg4MSwxMSArMTg0NCwxMiBAQAogewogICAgIFB5T2JqZWN0ICp3cml0ZXIgPSBOVUxMLCAqYXJncyA9IE5VTEwsICpyZXN1bHQgPSBOVUxMOwogICAgIGludCBlcnI7CisgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOwogCiAgICAgaWYgKGZpbGUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwogCi0gICAgd3JpdGVyID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaWxlLCAid3JpdGUiKTsKKyAgICB3cml0ZXIgPSBfUHlPYmplY3RfR2V0QXR0cklkKGZpbGUsICZQeUlkX3dyaXRlKTsKICAgICBpZiAod3JpdGVyID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAKZGlmZiAtLWdpdCBhL1B5dGhvbi90aHJlYWQuYyBiL1B5dGhvbi90aHJlYWQuYwppbmRleCBkMjI0MDQ2Li5lNTVkMzQyIDEwMDY0NAotLS0gYS9QeXRob24vdGhyZWFkLmMKKysrIGIvUHl0aG9uL3RocmVhZC5jCkBAIC03LDcgKzcsNiBAQAogCiAjaW5jbHVkZSAiUHl0aG9uLmgiCiAKLQogI2lmbmRlZiBfUE9TSVhfVEhSRUFEUwogLyogVGhpcyBtZWFucyBwdGhyZWFkcyBhcmUgbm90IGltcGxlbWVudGVkIGluIGxpYmMgaGVhZGVycywgaGVuY2UgdGhlIG1hY3JvCiAgICBub3QgcHJlc2VudCBpbiB1bmlzdGQuaC4gQnV0IHRoZXkgc3RpbGwgY2FuIGJlIGltcGxlbWVudGVkIGFzIGFuIGV4dGVybmFsCkBAIC0yNywxOCArMjYsNiBAQAogCiAjaWZuZGVmIF9QT1NJWF9USFJFQURTCiAKLSNpZmRlZiBfX3NnaQotI2RlZmluZSBTR0lfVEhSRUFEUwotI2VuZGlmCi0KLSNpZmRlZiBIQVZFX1RIUkVBRF9ICi0jZGVmaW5lIFNPTEFSSVNfVEhSRUFEUwotI2VuZGlmCi0KLSNpZiBkZWZpbmVkKHN1bikgJiYgIWRlZmluZWQoU09MQVJJU19USFJFQURTKQotI2RlZmluZSBTVU5fTFdQCi0jZW5kaWYKLQogLyogQ2hlY2sgaWYgd2UncmUgcnVubmluZyBvbiBIUC1VWCBhbmQgX1NDX1RIUkVBRFMgaXMgZGVmaW5lZC4gSWYgc28sIHRoZW4KICAgIGVub3VnaCBvZiB0aGUgUG9zaXggdGhyZWFkcyBwYWNrYWdlIGlzIGltcGxlbWVudGVkIHRvIHN1cHBvcnQgcHl0aG9uCiAgICB0aHJlYWRzLgpAQCAtOTQsNDcgKzgxLDIxIEBACiAgICBvciB0aGUgc2l6ZSBzcGVjaWZpZWQgYnkgdGhlIFRIUkVBRF9TVEFDS19TSVpFIG1hY3JvLiAqLwogc3RhdGljIHNpemVfdCBfcHl0aHJlYWRfc3RhY2tzaXplID0gMDsKIAotI2lmZGVmIFNHSV9USFJFQURTCi0jZXJyb3IgU0dJIElyaXggdGhyZWFkcyBhcmUgbm93IHVuc3VwcG9ydGVkLCBhbmQgY29kZSB3aWxsIGJlIHJlbW92ZWQgaW4gMy4zLgotI2luY2x1ZGUgInRocmVhZF9zZ2kuaCIKLSNlbmRpZgotCi0jaWZkZWYgU09MQVJJU19USFJFQURTCi0jaW5jbHVkZSAidGhyZWFkX3NvbGFyaXMuaCIKLSNlbmRpZgotCi0jaWZkZWYgU1VOX0xXUAotI2Vycm9yIFN1bk9TIGxpZ2h0d2VpZ2h0IHByb2Nlc3NlcyBhcmUgbm93IHVuc3VwcG9ydGVkLCBhbmQgY29kZSB3aWxsIGJlIHJlbW92ZWQgaW4gMy4zLgotI2luY2x1ZGUgInRocmVhZF9sd3AuaCIKLSNlbmRpZgotCi0jaWZkZWYgSEFWRV9QVEgKLSNlcnJvciBHTlUgcHRoIHRocmVhZHMgYXJlIG5vdyB1bnN1cHBvcnRlZCwgYW5kIGNvZGUgd2lsbCBiZSByZW1vdmVkIGluIDMuMy4KLSNpbmNsdWRlICJ0aHJlYWRfcHRoLmgiCi0jdW5kZWYgX1BPU0lYX1RIUkVBRFMKLSNlbmRpZgotCiAjaWZkZWYgX1BPU0lYX1RIUkVBRFMKKyNkZWZpbmUgUFlUSFJFQURfTkFNRSAicHRocmVhZCIKICNpbmNsdWRlICJ0aHJlYWRfcHRocmVhZC5oIgogI2VuZGlmCiAKLSNpZmRlZiBDX1RIUkVBRFMKLSNlcnJvciBNYWNoIEMgVGhyZWFkcyBhcmUgbm93IHVuc3VwcG9ydGVkLCBhbmQgY29kZSB3aWxsIGJlIHJlbW92ZWQgaW4gMy4zLgotI2luY2x1ZGUgInRocmVhZF9jdGhyZWFkLmgiCi0jZW5kaWYKLQogI2lmZGVmIE5UX1RIUkVBRFMKKyNkZWZpbmUgUFlUSFJFQURfTkFNRSAibnQiCiAjaW5jbHVkZSAidGhyZWFkX250LmgiCiAjZW5kaWYKIAogI2lmZGVmIE9TMl9USFJFQURTCisjZGVmaW5lIFBZVEhSRUFEX05BTUUgIm9zMiIKICNpbmNsdWRlICJ0aHJlYWRfb3MyLmgiCiAjZW5kaWYKIAotI2lmZGVmIFBMQU45X1RIUkVBRFMKLSNpbmNsdWRlICJ0aHJlYWRfcGxhbjkuaCIKLSNlbmRpZgotCiAvKgogI2lmZGVmIEZPT0JBUl9USFJFQURTCiAjaW5jbHVkZSAidGhyZWFkX2Zvb2Jhci5oIgpAQCAtNDA5LDMgKzM3MCw4NCBAQAogfQogCiAjZW5kaWYgLyogUHlfSEFWRV9OQVRJVkVfVExTICovCisKK1B5RG9jX1NUUlZBUih0aHJlYWRpbmZvX19kb2NfXywKKyJzeXMudGhyZWFkX2luZm9cblwKK1xuXAorQSBzdHJ1Y3Qgc2VxdWVuY2UgaG9sZGluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdGhyZWFkIGltcGxlbWVudGF0aW9uLiIpOworCitzdGF0aWMgUHlTdHJ1Y3RTZXF1ZW5jZV9GaWVsZCB0aHJlYWRpbmZvX2ZpZWxkc1tdID0geworICAgIHsibmFtZSIsICAgICJuYW1lIG9mIHRoZSB0aHJlYWQgaW1wbGVtZW50YXRpb24ifSwKKyAgICB7ImxvY2siLCAgICAibmFtZSBvZiB0aGUgbG9jayBpbXBsZW1lbnRhdGlvbiJ9LAorICAgIHsidmVyc2lvbiIsICJuYW1lIGFuZCB2ZXJzaW9uIG9mIHRoZSB0aHJlYWQgbGlicmFyeSJ9LAorICAgIHswfQorfTsKKworc3RhdGljIFB5U3RydWN0U2VxdWVuY2VfRGVzYyB0aHJlYWRpbmZvX2Rlc2MgPSB7CisgICAgInN5cy50aHJlYWRfaW5mbyIsICAgICAgICAgICAvKiBuYW1lICovCisgICAgdGhyZWFkaW5mb19fZG9jX18sICAgICAgICAgICAvKiBkb2MgKi8KKyAgICB0aHJlYWRpbmZvX2ZpZWxkcywgICAgICAgICAgIC8qIGZpZWxkcyAqLworICAgIDMKK307CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgVGhyZWFkSW5mb1R5cGU7CisKK1B5T2JqZWN0KgorUHlUaHJlYWRfR2V0SW5mbyh2b2lkKQoreworICAgIFB5T2JqZWN0ICp0aHJlYWRpbmZvLCAqdmFsdWU7CisgICAgaW50IHBvcyA9IDA7CisjaWYgKGRlZmluZWQoX1BPU0lYX1RIUkVBRFMpICYmIGRlZmluZWQoSEFWRV9DT05GU1RSKSBcCisgICAgICYmIGRlZmluZWQoX0NTX0dOVV9MSUJQVEhSRUFEX1ZFUlNJT04pKQorICAgIGNoYXIgYnVmZmVyWzI1NV07CisgICAgaW50IGxlbjsKKyNlbmRpZgorCisgICAgaWYgKFRocmVhZEluZm9UeXBlLnRwX25hbWUgPT0gMCkKKyAgICAgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9Jbml0VHlwZSgmVGhyZWFkSW5mb1R5cGUsICZ0aHJlYWRpbmZvX2Rlc2MpOworCisgICAgdGhyZWFkaW5mbyA9IFB5U3RydWN0U2VxdWVuY2VfTmV3KCZUaHJlYWRJbmZvVHlwZSk7CisgICAgaWYgKHRocmVhZGluZm8gPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICB2YWx1ZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKFBZVEhSRUFEX05BTUUpOworICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7CisgICAgICAgIFB5X0RFQ1JFRih0aHJlYWRpbmZvKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0odGhyZWFkaW5mbywgcG9zKyssIHZhbHVlKTsKKworI2lmZGVmIF9QT1NJWF9USFJFQURTCisjaWZkZWYgVVNFX1NFTUFQSE9SRVMKKyAgICB2YWx1ZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCJzZW1hcGhvcmUiKTsKKyNlbHNlCisgICAgdmFsdWUgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygibXV0ZXgrY29uZCIpOworI2VuZGlmCisgICAgaWYgKHZhbHVlID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKHRocmVhZGluZm8pOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisjZWxzZQorICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICB2YWx1ZSA9IFB5X05vbmU7CisjZW5kaWYKKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHRocmVhZGluZm8sIHBvcysrLCB2YWx1ZSk7CisKKyNpZiAoZGVmaW5lZChfUE9TSVhfVEhSRUFEUykgJiYgZGVmaW5lZChIQVZFX0NPTkZTVFIpIFwKKyAgICAgJiYgZGVmaW5lZChfQ1NfR05VX0xJQlBUSFJFQURfVkVSU0lPTikpCisgICAgdmFsdWUgPSBOVUxMOworICAgIGxlbiA9IGNvbmZzdHIoX0NTX0dOVV9MSUJQVEhSRUFEX1ZFUlNJT04sIGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlcikpOworICAgIGlmICgxIDwgbGVuICYmIGxlbiA8IHNpemVvZihidWZmZXIpKSB7CisgICAgICAgIHZhbHVlID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUoYnVmZmVyLCBsZW4tMSk7CisgICAgICAgIGlmICh2YWx1ZSA9PSBOVUxMKQorICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICB9CisgICAgaWYgKHZhbHVlID09IE5VTEwpCisjZW5kaWYKKyAgICB7CisgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgdmFsdWUgPSBQeV9Ob25lOworICAgIH0KKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHRocmVhZGluZm8sIHBvcysrLCB2YWx1ZSk7CisgICAgcmV0dXJuIHRocmVhZGluZm87Cit9CmRpZmYgLS1naXQgYS9QeXRob24vdGhyZWFkX2N0aHJlYWQuaCBiL1B5dGhvbi90aHJlYWRfY3RocmVhZC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYjNlMzkwLi4wMDAwMDAwCi0tLSBhL1B5dGhvbi90aHJlYWRfY3RocmVhZC5oCisrKyAvZGV2L251bGwKQEAgLTEsMTEyICswLDAgQEAKLQotI2lmZGVmIE1BQ0hfQ19USFJFQURTCi0jaW5jbHVkZSA8bWFjaC9jdGhyZWFkcy5oPgotI2VuZGlmCi0KLSNpZmRlZiBIVVJEX0NfVEhSRUFEUwotI2luY2x1ZGUgPGN0aHJlYWRzLmg+Ci0jZW5kaWYKLQotLyoKLSAqIEluaXRpYWxpemF0aW9uLgotICovCi1zdGF0aWMgdm9pZAotUHlUaHJlYWRfX2luaXRfdGhyZWFkKHZvaWQpCi17Ci0jaWZuZGVmIEhVUkRfQ19USFJFQURTCi0gICAgLyogUm9sYW5kIE1jR3JhdGggc2FpZCB0aGlzIHNob3VsZCBub3QgYmUgdXNlZCBzaW5jZSB0aGlzIGlzCi0gICAgZG9uZSB3aGlsZSBsaW5raW5nIHRvIHRocmVhZHMgKi8KLSAgICBjdGhyZWFkX2luaXQoKTsKLSNlbHNlCi0vKiBkbyBub3RoaW5nICovCi0gICAgOwotI2VuZGlmCi19Ci0KLS8qCi0gKiBUaHJlYWQgc3VwcG9ydC4KLSAqLwotbG9uZwotUHlUaHJlYWRfc3RhcnRfbmV3X3RocmVhZCh2b2lkICgqZnVuYykodm9pZCAqKSwgdm9pZCAqYXJnKQotewotICAgIGludCBzdWNjZXNzID0gMDsgICAgICAgICAgICAvKiBpbml0IG5vdCBuZWVkZWQgd2hlbiBTT0xBUklTX1RIUkVBRFMgYW5kICovCi0gICAgICAgICAgICAgICAgLyogQ19USFJFQURTIGltcGxlbWVudGVkIHByb3Blcmx5ICovCi0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfc3RhcnRfbmV3X3RocmVhZCBjYWxsZWRcbiIpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotICAgIC8qIGxvb2tzIGxpa2Ugc29sYXJpcyBkZXRhY2hlcyB0aGUgdGhyZWFkIHRvIG5ldmVyIHJlam9pbgotICAgICAqIHNvIHdlbGwgZG8gaXQgaGVyZQotICAgICAqLwotICAgIGN0aHJlYWRfZGV0YWNoKGN0aHJlYWRfZm9yaygoY3RocmVhZF9mbl90KSBmdW5jLCBhcmcpKTsKLSAgICByZXR1cm4gc3VjY2VzcyA8IDAgPyAtMSA6IDA7Ci19Ci0KLWxvbmcKLVB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQodm9pZCkKLXsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotICAgIHJldHVybiAobG9uZykgY3RocmVhZF9zZWxmKCk7Ci19Ci0KLXZvaWQKLVB5VGhyZWFkX2V4aXRfdGhyZWFkKHZvaWQpCi17Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2V4aXRfdGhyZWFkIGNhbGxlZFxuIikpOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIGV4aXQoMCk7Ci0gICAgY3RocmVhZF9leGl0KDApOwotfQotCi0vKgotICogTG9jayBzdXBwb3J0LgotICovCi1QeVRocmVhZF90eXBlX2xvY2sKLVB5VGhyZWFkX2FsbG9jYXRlX2xvY2sodm9pZCkKLXsKLSAgICBtdXRleF90IGxvY2s7Ci0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWxsb2NhdGVfbG9jayBjYWxsZWRcbiIpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotCi0gICAgbG9jayA9IG11dGV4X2FsbG9jKCk7Ci0gICAgaWYgKG11dGV4X2luaXQobG9jaykpIHsKLSAgICAgICAgcGVycm9yKCJtdXRleF9pbml0Iik7Ci0gICAgICAgIGZyZWUoKHZvaWQgKikgbG9jayk7Ci0gICAgICAgIGxvY2sgPSAwOwotICAgIH0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWxsb2NhdGVfbG9jaygpIC0+ICVwXG4iLCBsb2NrKSk7Ci0gICAgcmV0dXJuIChQeVRocmVhZF90eXBlX2xvY2spIGxvY2s7Ci19Ci0KLXZvaWQKLVB5VGhyZWFkX2ZyZWVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaykKLXsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfZnJlZV9sb2NrKCVwKSBjYWxsZWRcbiIsIGxvY2spKTsKLSAgICBtdXRleF9mcmVlKGxvY2spOwotfQotCi1pbnQKLVB5VGhyZWFkX2FjcXVpcmVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaywgaW50IHdhaXRmbGFnKQotewotICAgIGludCBzdWNjZXNzID0gRkFMU0U7Ci0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWNxdWlyZV9sb2NrKCVwLCAlZCkgY2FsbGVkXG4iLCBsb2NrLCB3YWl0ZmxhZykpOwotICAgIGlmICh3YWl0ZmxhZykgeyAgICAgICAgICAgICAvKiBibG9ja2luZyAqLwotICAgICAgICBtdXRleF9sb2NrKChtdXRleF90KWxvY2spOwotICAgICAgICBzdWNjZXNzID0gVFJVRTsKLSAgICB9IGVsc2UgeyAgICAgICAgICAgICAgICAgICAgLyogbm9uIGJsb2NraW5nICovCi0gICAgICAgIHN1Y2Nlc3MgPSBtdXRleF90cnlfbG9jaygobXV0ZXhfdClsb2NrKTsKLSAgICB9Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FjcXVpcmVfbG9jayglcCwgJWQpIC0+ICVkXG4iLCBsb2NrLCB3YWl0ZmxhZywgc3VjY2VzcykpOwotICAgIHJldHVybiBzdWNjZXNzOwotfQotCi12b2lkCi1QeVRocmVhZF9yZWxlYXNlX2xvY2soUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2spCi17Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX3JlbGVhc2VfbG9jayglcCkgY2FsbGVkXG4iLCBsb2NrKSk7Ci0gICAgbXV0ZXhfdW5sb2NrKChtdXRleF90IClsb2NrKTsKLX0KZGlmZiAtLWdpdCBhL1B5dGhvbi90aHJlYWRfbHdwLmggYi9QeXRob24vdGhyZWFkX2x3cC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiYTdiMzdhLi4wMDAwMDAwCi0tLSBhL1B5dGhvbi90aHJlYWRfbHdwLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMTMgKzAsMCBAQAotCi0jaW5jbHVkZSA8c3RkbGliLmg+Ci0jaW5jbHVkZSA8bHdwL2x3cC5oPgotI2luY2x1ZGUgPGx3cC9zdGFja2RlcC5oPgotCi0jZGVmaW5lIFNUQUNLU0laRSAgICAgICAxMDAwICAgIC8qIHN0YWNrc2l6ZSBmb3IgYSB0aHJlYWQgKi8KLSNkZWZpbmUgTlNUQUNLUyAgICAgICAgIDIgICAgICAgLyogIyBzdGFja3MgdG8gYmUgcHV0IGluIGNhY2hlIGluaXRpYWxseSAqLwotCi1zdHJ1Y3QgbG9jayB7Ci0gICAgaW50IGxvY2tfbG9ja2VkOwotICAgIGN2X3QgbG9ja19jb25kdmFyOwotICAgIG1vbl90IGxvY2tfbW9uaXRvcjsKLX07Ci0KLQotLyoKLSAqIEluaXRpYWxpemF0aW9uLgotICovCi1zdGF0aWMgdm9pZCBQeVRocmVhZF9faW5pdF90aHJlYWQodm9pZCkKLXsKLSAgICBsd3Bfc2V0c3RrY2FjaGUoU1RBQ0tTSVpFLCBOU1RBQ0tTKTsKLX0KLQotLyoKLSAqIFRocmVhZCBzdXBwb3J0LgotICovCi0KLQotbG9uZyBQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkKHZvaWQgKCpmdW5jKSh2b2lkICopLCB2b2lkICphcmcpCi17Ci0gICAgdGhyZWFkX3QgdGlkOwotICAgIGludCBzdWNjZXNzOwotICAgIGRwcmludGYoKCJQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkIGNhbGxlZFxuIikpOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIFB5VGhyZWFkX2luaXRfdGhyZWFkKCk7Ci0gICAgc3VjY2VzcyA9IGx3cF9jcmVhdGUoJnRpZCwgZnVuYywgTUlOUFJJTywgMCwgbHdwX25ld3N0aygpLCAxLCBhcmcpOwotICAgIHJldHVybiBzdWNjZXNzIDwgMCA/IC0xIDogMDsKLX0KLQotbG9uZyBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KHZvaWQpCi17Ci0gICAgdGhyZWFkX3QgdGlkOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIFB5VGhyZWFkX2luaXRfdGhyZWFkKCk7Ci0gICAgaWYgKGx3cF9zZWxmKCZ0aWQpIDwgMCkKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIHJldHVybiB0aWQudGhyZWFkX2lkOwotfQotCi12b2lkIFB5VGhyZWFkX2V4aXRfdGhyZWFkKHZvaWQpCi17Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2V4aXRfdGhyZWFkIGNhbGxlZFxuIikpOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIGV4aXQoMCk7Ci0gICAgbHdwX2Rlc3Ryb3koU0VMRik7Ci19Ci0KLS8qCi0gKiBMb2NrIHN1cHBvcnQuCi0gKi8KLVB5VGhyZWFkX3R5cGVfbG9jayBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKHZvaWQpCi17Ci0gICAgc3RydWN0IGxvY2sgKmxvY2s7Ci0gICAgZXh0ZXJuIGNoYXIgKm1hbGxvYyhzaXplX3QpOwotCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FsbG9jYXRlX2xvY2sgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLQotICAgIGxvY2sgPSAoc3RydWN0IGxvY2sgKikgbWFsbG9jKHNpemVvZihzdHJ1Y3QgbG9jaykpOwotICAgIGxvY2stPmxvY2tfbG9ja2VkID0gMDsKLSAgICAodm9pZCkgbW9uX2NyZWF0ZSgmbG9jay0+bG9ja19tb25pdG9yKTsKLSAgICAodm9pZCkgY3ZfY3JlYXRlKCZsb2NrLT5sb2NrX2NvbmR2YXIsIGxvY2stPmxvY2tfbW9uaXRvcik7Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKSAtPiAlcFxuIiwgbG9jaykpOwotICAgIHJldHVybiAoUHlUaHJlYWRfdHlwZV9sb2NrKSBsb2NrOwotfQotCi12b2lkIFB5VGhyZWFkX2ZyZWVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaykKLXsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfZnJlZV9sb2NrKCVwKSBjYWxsZWRcbiIsIGxvY2spKTsKLSAgICBtb25fZGVzdHJveSgoKHN0cnVjdCBsb2NrICopIGxvY2spLT5sb2NrX21vbml0b3IpOwotICAgIGZyZWUoKGNoYXIgKikgbG9jayk7Ci19Ci0KLWludCBQeVRocmVhZF9hY3F1aXJlX2xvY2soUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2ssIGludCB3YWl0ZmxhZykKLXsKLSAgICBpbnQgc3VjY2VzczsKLQotICAgIGRwcmludGYoKCJQeVRocmVhZF9hY3F1aXJlX2xvY2soJXAsICVkKSBjYWxsZWRcbiIsIGxvY2ssIHdhaXRmbGFnKSk7Ci0gICAgc3VjY2VzcyA9IDA7Ci0KLSAgICAodm9pZCkgbW9uX2VudGVyKCgoc3RydWN0IGxvY2sgKikgbG9jayktPmxvY2tfbW9uaXRvcik7Ci0gICAgaWYgKHdhaXRmbGFnKQotICAgICAgICB3aGlsZSAoKChzdHJ1Y3QgbG9jayAqKSBsb2NrKS0+bG9ja19sb2NrZWQpCi0gICAgICAgICAgICBjdl93YWl0KCgoc3RydWN0IGxvY2sgKikgbG9jayktPmxvY2tfY29uZHZhcik7Ci0gICAgaWYgKCEoKHN0cnVjdCBsb2NrICopIGxvY2spLT5sb2NrX2xvY2tlZCkgewotICAgICAgICBzdWNjZXNzID0gMTsKLSAgICAgICAgKChzdHJ1Y3QgbG9jayAqKSBsb2NrKS0+bG9ja19sb2NrZWQgPSAxOwotICAgIH0KLSAgICBjdl9icm9hZGNhc3QoKChzdHJ1Y3QgbG9jayAqKSBsb2NrKS0+bG9ja19jb25kdmFyKTsKLSAgICBtb25fZXhpdCgoKHN0cnVjdCBsb2NrICopIGxvY2spLT5sb2NrX21vbml0b3IpOwotICAgIGRwcmludGYoKCJQeVRocmVhZF9hY3F1aXJlX2xvY2soJXAsICVkKSAtPiAlZFxuIiwgbG9jaywgd2FpdGZsYWcsIHN1Y2Nlc3MpKTsKLSAgICByZXR1cm4gc3VjY2VzczsKLX0KLQotdm9pZCBQeVRocmVhZF9yZWxlYXNlX2xvY2soUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2spCi17Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX3JlbGVhc2VfbG9jayglcCkgY2FsbGVkXG4iLCBsb2NrKSk7Ci0gICAgKHZvaWQpIG1vbl9lbnRlcigoKHN0cnVjdCBsb2NrICopIGxvY2spLT5sb2NrX21vbml0b3IpOwotICAgICgoc3RydWN0IGxvY2sgKikgbG9jayktPmxvY2tfbG9ja2VkID0gMDsKLSAgICBjdl9icm9hZGNhc3QoKChzdHJ1Y3QgbG9jayAqKSBsb2NrKS0+bG9ja19jb25kdmFyKTsKLSAgICBtb25fZXhpdCgoKHN0cnVjdCBsb2NrICopIGxvY2spLT5sb2NrX21vbml0b3IpOwotfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL3RocmVhZF9wdGguaCBiL1B5dGhvbi90aHJlYWRfcHRoLmgKaW5kZXggODJhMDBlNy4uNTcwNDI2NiAxMDA2NDQKLS0tIGEvUHl0aG9uL3RocmVhZF9wdGguaAorKysgYi9QeXRob24vdGhyZWFkX3B0aC5oCkBAIC02OSw5ICs2OSw4IEBACiAgICAgdm9sYXRpbGUgcHRoX3QgdGhyZWFkaWQ7CiAgICAgaWYgKCFpbml0aWFsaXplZCkKICAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLSAgICAvKiBKdW1wIHRocm91Z2ggc29tZSBob29wcyBmb3IgQWxwaGEgT1NGLzEgKi8KICAgICB0aHJlYWRpZCA9IHB0aF9zZWxmKCk7Ci0gICAgcmV0dXJuIChsb25nKSAqKGxvbmcgKikgJnRocmVhZGlkOworICAgIHJldHVybiAobG9uZykgdGhyZWFkaWQ7CiB9CiAKIHZvaWQgUHlUaHJlYWRfZXhpdF90aHJlYWQodm9pZCkKZGlmZiAtLWdpdCBhL1B5dGhvbi90aHJlYWRfcHRocmVhZC5oIGIvUHl0aG9uL3RocmVhZF9wdGhyZWFkLmgKaW5kZXggM2VmY2NmNi4uNGI2MWUxOCAxMDA2NDQKLS0tIGEvUHl0aG9uL3RocmVhZF9wdGhyZWFkLmgKKysrIGIvUHl0aG9uL3RocmVhZF9wdGhyZWFkLmgKQEAgLTE0NCw3ICsxNDQsNyBAQAogICogSW5pdGlhbGl6YXRpb24uCiAgKi8KIAotI2lmZGVmIF9IQVZFX0JTREkKKyNpZiBkZWZpbmVkKF9IQVZFX0JTREkpCiBzdGF0aWMKIHZvaWQgX25vb3Aodm9pZCkKIHsKQEAgLTI0MCw4ICsyNDAsNyBAQAogICAgaG9zZWQiIGJlY2F1c2U6CiAgICAgIC0gSXQgZG9lcyBub3QgZ3VhcmFudGVlIHRoZSBwcm9taXNlIHRoYXQgYSBub24temVybyBpbnRlZ2VyIGlzIHJldHVybmVkLgogICAgICAtIFRoZSBjYXN0IHRvIGxvbmcgaXMgaW5oZXJlbnRseSB1bnNhZmUuCi0gICAgIC0gSXQgaXMgbm90IGNsZWFyIHRoYXQgdGhlICd2b2xhdGlsZScgKGZvciBBSVg/KSBhbmQgdWdseSBjYXN0aW5nIGluIHRoZQotICAgICAgIGxhdHRlciByZXR1cm4gc3RhdGVtZW50IChmb3IgQWxwaGEgT1NGLzEpIGFyZSBhbnkgbG9uZ2VyIG5lY2Vzc2FyeS4KKyAgICAgLSBJdCBpcyBub3QgY2xlYXIgdGhhdCB0aGUgJ3ZvbGF0aWxlJyAoZm9yIEFJWD8pIGFyZSBhbnkgbG9uZ2VyIG5lY2Vzc2FyeS4KICovCiBsb25nCiBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KHZvaWQpCkBAIC0yNDksMTMgKzI0OCw4IEBACiAgICAgdm9sYXRpbGUgcHRocmVhZF90IHRocmVhZGlkOwogICAgIGlmICghaW5pdGlhbGl6ZWQpCiAgICAgICAgIFB5VGhyZWFkX2luaXRfdGhyZWFkKCk7Ci0gICAgLyogSnVtcCB0aHJvdWdoIHNvbWUgaG9vcHMgZm9yIEFscGhhIE9TRi8xICovCiAgICAgdGhyZWFkaWQgPSBwdGhyZWFkX3NlbGYoKTsKLSNpZiBTSVpFT0ZfUFRIUkVBRF9UIDw9IFNJWkVPRl9MT05HCiAgICAgcmV0dXJuIChsb25nKSB0aHJlYWRpZDsKLSNlbHNlCi0gICAgcmV0dXJuIChsb25nKSAqKGxvbmcgKikgJnRocmVhZGlkOwotI2VuZGlmCiB9CiAKIHZvaWQKZGlmZiAtLWdpdCBhL1B5dGhvbi90aHJlYWRfc2dpLmggYi9QeXRob24vdGhyZWFkX3NnaS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3NzFhYjJjLi4wMDAwMDAwCi0tLSBhL1B5dGhvbi90aHJlYWRfc2dpLmgKKysrIC9kZXYvbnVsbApAQCAtMSwyNTkgKzAsMCBAQAotCi0jaW5jbHVkZSA8c3RkbGliLmg+Ci0jaW5jbHVkZSA8c3RkaW8uaD4KLSNpbmNsdWRlIDxzaWduYWwuaD4KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzeXMvd2FpdC5oPgotI2luY2x1ZGUgPHN5cy9wcmN0bC5oPgotI2luY2x1ZGUgPHVsb2Nrcy5oPgotI2luY2x1ZGUgPGVycm5vLmg+Ci0KLSNkZWZpbmUgSERSX1NJWkUgICAgICAgIDI2ODAgICAgLyogc2l6ZW9mKHVzaGRyX3QpICovCi0jZGVmaW5lIE1BWFBST0MgICAgICAgICAxMDAgICAgIC8qIG1heCAjIG9mIHRocmVhZHMgdGhhdCBjYW4gYmUgc3RhcnRlZCAqLwotCi1zdGF0aWMgdXNwdHJfdCAqc2hhcmVkX2FyZW5hOwotc3RhdGljIHVsb2NrX3QgY291bnRfbG9jazsgICAgICAvKiBwcm90ZWN0aW9uIGZvciBzb21lIHZhcmlhYmxlcyAqLwotc3RhdGljIHVsb2NrX3Qgd2FpdF9sb2NrOyAgICAgICAvKiBsb2NrIHVzZWQgdG8gd2FpdCBmb3Igb3RoZXIgdGhyZWFkcyAqLwotc3RhdGljIGludCB3YWl0aW5nX2Zvcl90aHJlYWRzOyAvKiBwcm90ZWN0ZWQgYnkgY291bnRfbG9jayAqLwotc3RhdGljIGludCBudGhyZWFkczsgICAgICAgICAgICAvKiBwcm90ZWN0ZWQgYnkgY291bnRfbG9jayAqLwotc3RhdGljIGludCBleGl0X3N0YXR1czsKLXN0YXRpYyBpbnQgZXhpdGluZzsgICAgICAgICAgICAgLyogd2UncmUgYWxyZWFkeSBleGl0aW5nIChmb3IgbWF5YmVfZXhpdCkgKi8KLXN0YXRpYyBwaWRfdCBteV9waWQ7ICAgICAgICAgICAgLyogUElEIG9mIG1haW4gdGhyZWFkICovCi1zdGF0aWMgc3RydWN0IHBpZGxpc3QgewotICAgIHBpZF90IHBhcmVudDsKLSAgICBwaWRfdCBjaGlsZDsKLX0gcGlkbGlzdFtNQVhQUk9DXTsgICAgIC8qIFBJRHMgb2Ygb3RoZXIgdGhyZWFkczsgcHJvdGVjdGVkIGJ5IGNvdW50X2xvY2sgKi8KLXN0YXRpYyBpbnQgbWF4cGlkaW5kZXg7ICAgICAgICAgLyogIyBvZiBQSURzIGluIHBpZGxpc3QgKi8KLS8qCi0gKiBJbml0aWFsaXphdGlvbi4KLSAqLwotc3RhdGljIHZvaWQgUHlUaHJlYWRfX2luaXRfdGhyZWFkKHZvaWQpCi17Ci0jaWZkZWYgVVNFX0RMCi0gICAgbG9uZyBhZGRyLCBzaXplOwotI2VuZGlmIC8qIFVTRV9ETCAqLwotCi0KLSNpZmRlZiBVU0VfREwKLSAgICBpZiAoKHNpemUgPSB1c2NvbmZpZyhDT05GX0lOSVRTSVpFLCA2NCoxMDI0KSkgPCAwKQotICAgICAgICBwZXJyb3IoInVzY29uZmlnIC0gQ09ORl9JTklUU0laRSAoY2hlY2spIik7Ci0gICAgaWYgKHVzY29uZmlnKENPTkZfSU5JVFNJWkUsIHNpemUpIDwgMCkKLSAgICAgICAgcGVycm9yKCJ1c2NvbmZpZyAtIENPTkZfSU5JVFNJWkUgKHJlc2V0KSIpOwotICAgIGFkZHIgPSAobG9uZykgZGxfZ2V0cmFuZ2Uoc2l6ZSArIEhEUl9TSVpFKTsKLSAgICBkcHJpbnRmKCgidHJ5aW5nIHRvIHVzZSBhZGRyICVwLSVwIGZvciBzaGFyZWQgYXJlbmFcbiIsIGFkZHIsIGFkZHIrc2l6ZSkpOwotICAgIGVycm5vID0gMDsKLSAgICBpZiAoKGFkZHIgPSB1c2NvbmZpZyhDT05GX0FUVEFDSEFERFIsIGFkZHIpKSA8IDAgJiYgZXJybm8gIT0gMCkKLSAgICAgICAgcGVycm9yKCJ1c2NvbmZpZyAtIENPTkZfQVRUQUNIQUREUiAoc2V0KSIpOwotI2VuZGlmIC8qIFVTRV9ETCAqLwotICAgIGlmICh1c2NvbmZpZyhDT05GX0lOSVRVU0VSUywgMTYpIDwgMCkKLSAgICAgICAgcGVycm9yKCJ1c2NvbmZpZyAtIENPTkZfSU5JVFVTRVJTIik7Ci0gICAgbXlfcGlkID0gZ2V0cGlkKCk7ICAgICAgICAgIC8qIHNvIHRoYXQgd2Uga25vdyB3aGljaCBpcyB0aGUgbWFpbiB0aHJlYWQgKi8KLSAgICBpZiAodXNjb25maWcoQ09ORl9BUkVOQVRZUEUsIFVTX1NIQVJFRE9OTFkpIDwgMCkKLSAgICAgICAgcGVycm9yKCJ1c2NvbmZpZyAtIENPTkZfQVJFTkFUWVBFIik7Ci0gICAgdXNjb25maWcoQ09ORl9MT0NLVFlQRSwgVVNfREVCVUcpOyAvKiBYWFggKi8KLSNpZmRlZiBQeV9ERUJVRwotICAgIGlmICh0aHJlYWRfZGVidWcgJiA0KQotICAgICAgICB1c2NvbmZpZyhDT05GX0xPQ0tUWVBFLCBVU19ERUJVR1BMVVMpOwotICAgIGVsc2UgaWYgKHRocmVhZF9kZWJ1ZyAmIDIpCi0gICAgICAgIHVzY29uZmlnKENPTkZfTE9DS1RZUEUsIFVTX0RFQlVHKTsKLSNlbmRpZiAvKiBQeV9ERUJVRyAqLwotICAgIGlmICgoc2hhcmVkX2FyZW5hID0gdXNpbml0KHRtcG5hbSgwKSkpID09IDApCi0gICAgICAgIHBlcnJvcigidXNpbml0Iik7Ci0jaWZkZWYgVVNFX0RMCi0gICAgaWYgKHVzY29uZmlnKENPTkZfQVRUQUNIQUREUiwgYWRkcikgPCAwKSAvKiByZXNldCBhZGRyZXNzICovCi0gICAgICAgIHBlcnJvcigidXNjb25maWcgLSBDT05GX0FUVEFDSEFERFIgKHJlc2V0KSIpOwotI2VuZGlmIC8qIFVTRV9ETCAqLwotICAgIGlmICgoY291bnRfbG9jayA9IHVzbmV3bG9jayhzaGFyZWRfYXJlbmEpKSA9PSBOVUxMKQotICAgICAgICBwZXJyb3IoInVzbmV3bG9jayAoY291bnRfbG9jaykiKTsKLSAgICAodm9pZCkgdXNpbml0bG9jayhjb3VudF9sb2NrKTsKLSAgICBpZiAoKHdhaXRfbG9jayA9IHVzbmV3bG9jayhzaGFyZWRfYXJlbmEpKSA9PSBOVUxMKQotICAgICAgICBwZXJyb3IoInVzbmV3bG9jayAod2FpdF9sb2NrKSIpOwotICAgIGRwcmludGYoKCJhcmVuYSBzdGFydDogJXAsIGFyZW5hIHNpemU6ICVsZFxuIiwgIHNoYXJlZF9hcmVuYSwgKGxvbmcpIHVzY29uZmlnKENPTkZfR0VUU0laRSwgc2hhcmVkX2FyZW5hKSkpOwotfQotCi0vKgotICogVGhyZWFkIHN1cHBvcnQuCi0gKi8KLQotc3RhdGljIHZvaWQgY2xlYW5fdGhyZWFkcyh2b2lkKQotewotICAgIGludCBpLCBqOwotICAgIHBpZF90IG15cGlkLCBwaWQ7Ci0KLSAgICAvKiBjbGVhbiB1cCBhbnkgZXhpdGVkIHRocmVhZHMgKi8KLSAgICBteXBpZCA9IGdldHBpZCgpOwotICAgIGkgPSAwOwotICAgIHdoaWxlIChpIDwgbWF4cGlkaW5kZXgpIHsKLSAgICAgICAgaWYgKHBpZGxpc3RbaV0ucGFyZW50ID09IG15cGlkICYmIChwaWQgPSBwaWRsaXN0W2ldLmNoaWxkKSA+IDApIHsKLSAgICAgICAgICAgIHBpZCA9IHdhaXRwaWQocGlkLCAwLCBXTk9IQU5HKTsKLSAgICAgICAgICAgIGlmIChwaWQgPiAwKSB7Ci0gICAgICAgICAgICAgICAgLyogYSB0aHJlYWQgaGFzIGV4aXRlZCAqLwotICAgICAgICAgICAgICAgIHBpZGxpc3RbaV0gPSBwaWRsaXN0Wy0tbWF4cGlkaW5kZXhdOwotICAgICAgICAgICAgICAgIC8qIHJlbW92ZSByZWZlcmVuY2VzIHRvIGNoaWxkcmVuIG9mIGRlYWQgcHJvYyAqLwotICAgICAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCBtYXhwaWRpbmRleDsgaisrKQotICAgICAgICAgICAgICAgICAgICBpZiAocGlkbGlzdFtqXS5wYXJlbnQgPT0gcGlkKQotICAgICAgICAgICAgICAgICAgICAgICAgcGlkbGlzdFtqXS5jaGlsZCA9IC0xOwotICAgICAgICAgICAgICAgIGNvbnRpbnVlOyAvKiBkb24ndCBpbmNyZW1lbnQgaSAqLwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIGkrKzsKLSAgICB9Ci0gICAgLyogY2xlYW4gdXAgdGhlIGxpc3QgKi8KLSAgICBpID0gMDsKLSAgICB3aGlsZSAoaSA8IG1heHBpZGluZGV4KSB7Ci0gICAgICAgIGlmIChwaWRsaXN0W2ldLmNoaWxkID09IC0xKSB7Ci0gICAgICAgICAgICBwaWRsaXN0W2ldID0gcGlkbGlzdFstLW1heHBpZGluZGV4XTsKLSAgICAgICAgICAgIGNvbnRpbnVlOyAvKiBkb24ndCBpbmNyZW1lbnQgaSAqLwotICAgICAgICB9Ci0gICAgICAgIGkrKzsKLSAgICB9Ci19Ci0KLWxvbmcgUHlUaHJlYWRfc3RhcnRfbmV3X3RocmVhZCh2b2lkICgqZnVuYykodm9pZCAqKSwgdm9pZCAqYXJnKQotewotI2lmZGVmIFVTRV9ETAotICAgIGxvbmcgYWRkciwgc2l6ZTsKLSAgICBzdGF0aWMgaW50IGxvY2FsX2luaXRpYWxpemVkID0gMDsKLSNlbmRpZiAvKiBVU0VfREwgKi8KLSAgICBpbnQgc3VjY2VzcyA9IDA7ICAgICAgICAgICAgLyogaW5pdCBub3QgbmVlZGVkIHdoZW4gU09MQVJJU19USFJFQURTIGFuZCAqLwotICAgICAgICAgICAgICAgIC8qIENfVEhSRUFEUyBpbXBsZW1lbnRlZCBwcm9wZXJseSAqLwotCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLSAgICBzd2l0Y2ggKHVzc2V0bG9jayhjb3VudF9sb2NrKSkgewotICAgIGNhc2UgMDogcmV0dXJuIDA7Ci0gICAgY2FzZSAtMTogcGVycm9yKCJ1c3NldGxvY2sgKGNvdW50X2xvY2spIik7Ci0gICAgfQotICAgIGlmIChtYXhwaWRpbmRleCA+PSBNQVhQUk9DKQotICAgICAgICBzdWNjZXNzID0gLTE7Ci0gICAgZWxzZSB7Ci0jaWZkZWYgVVNFX0RMCi0gICAgICAgIGlmICghbG9jYWxfaW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgICAgIGlmICgoc2l6ZSA9IHVzY29uZmlnKENPTkZfSU5JVFNJWkUsIDY0KjEwMjQpKSA8IDApCi0gICAgICAgICAgICAgICAgcGVycm9yKCJ1c2NvbmZpZyAtIENPTkZfSU5JVFNJWkUgKGNoZWNrKSIpOwotICAgICAgICAgICAgaWYgKHVzY29uZmlnKENPTkZfSU5JVFNJWkUsIHNpemUpIDwgMCkKLSAgICAgICAgICAgICAgICBwZXJyb3IoInVzY29uZmlnIC0gQ09ORl9JTklUU0laRSAocmVzZXQpIik7Ci0gICAgICAgICAgICBhZGRyID0gKGxvbmcpIGRsX2dldHJhbmdlKHNpemUgKyBIRFJfU0laRSk7Ci0gICAgICAgICAgICBkcHJpbnRmKCgidHJ5aW5nIHRvIHVzZSBhZGRyICVwLSVwIGZvciBzcHJvY1xuIiwKLSAgICAgICAgICAgICAgICAgICAgIGFkZHIsIGFkZHIrc2l6ZSkpOwotICAgICAgICAgICAgZXJybm8gPSAwOwotICAgICAgICAgICAgaWYgKChhZGRyID0gdXNjb25maWcoQ09ORl9BVFRBQ0hBRERSLCBhZGRyKSkgPCAwICYmCi0gICAgICAgICAgICAgICAgZXJybm8gIT0gMCkKLSAgICAgICAgICAgICAgICBwZXJyb3IoInVzY29uZmlnIC0gQ09ORl9BVFRBQ0hBRERSIChzZXQpIik7Ci0gICAgICAgIH0KLSNlbmRpZiAvKiBVU0VfREwgKi8KLSAgICAgICAgY2xlYW5fdGhyZWFkcygpOwotICAgICAgICBpZiAoKHN1Y2Nlc3MgPSBzcHJvYyhmdW5jLCBQUl9TQUxMLCBhcmcpKSA8IDApCi0gICAgICAgICAgICBwZXJyb3IoInNwcm9jIik7Ci0jaWZkZWYgVVNFX0RMCi0gICAgICAgIGlmICghbG9jYWxfaW5pdGlhbGl6ZWQpIHsKLSAgICAgICAgICAgIGlmICh1c2NvbmZpZyhDT05GX0FUVEFDSEFERFIsIGFkZHIpIDwgMCkKLSAgICAgICAgICAgICAgICAvKiByZXNldCBhZGRyZXNzICovCi0gICAgICAgICAgICAgICAgcGVycm9yKCJ1c2NvbmZpZyAtIENPTkZfQVRUQUNIQUREUiAocmVzZXQpIik7Ci0gICAgICAgICAgICBsb2NhbF9pbml0aWFsaXplZCA9IDE7Ci0gICAgICAgIH0KLSNlbmRpZiAvKiBVU0VfREwgKi8KLSAgICAgICAgaWYgKHN1Y2Nlc3MgPj0gMCkgewotICAgICAgICAgICAgbnRocmVhZHMrKzsKLSAgICAgICAgICAgIHBpZGxpc3RbbWF4cGlkaW5kZXhdLnBhcmVudCA9IGdldHBpZCgpOwotICAgICAgICAgICAgcGlkbGlzdFttYXhwaWRpbmRleCsrXS5jaGlsZCA9IHN1Y2Nlc3M7Ci0gICAgICAgICAgICBkcHJpbnRmKCgicGlkbGlzdFslZF0gPSAlZFxuIiwKLSAgICAgICAgICAgICAgICAgICAgIG1heHBpZGluZGV4LTEsIHN1Y2Nlc3MpKTsKLSAgICAgICAgfQotICAgIH0KLSAgICBpZiAodXN1bnNldGxvY2soY291bnRfbG9jaykgPCAwKQotICAgICAgICBwZXJyb3IoInVzdW5zZXRsb2NrIChjb3VudF9sb2NrKSIpOwotICAgIHJldHVybiBzdWNjZXNzOwotfQotCi1sb25nIFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQodm9pZCkKLXsKLSAgICByZXR1cm4gZ2V0cGlkKCk7Ci19Ci0KLXZvaWQgUHlUaHJlYWRfZXhpdF90aHJlYWQodm9pZCkKLXsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfZXhpdF90aHJlYWQgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgZXhpdCgwKTsKLSAgICBpZiAodXNzZXRsb2NrKGNvdW50X2xvY2spIDwgMCkKLSAgICAgICAgcGVycm9yKCJ1c3NldGxvY2sgKGNvdW50X2xvY2spIik7Ci0gICAgbnRocmVhZHMtLTsKLSAgICBpZiAoZ2V0cGlkKCkgPT0gbXlfcGlkKSB7Ci0gICAgICAgIC8qIG1haW4gdGhyZWFkOyB3YWl0IGZvciBvdGhlciB0aHJlYWRzIHRvIGV4aXQgKi8KLSAgICAgICAgZXhpdGluZyA9IDE7Ci0gICAgICAgIHdhaXRpbmdfZm9yX3RocmVhZHMgPSAxOwotICAgICAgICBpZiAodXNzZXRsb2NrKHdhaXRfbG9jaykgPCAwKQotICAgICAgICAgICAgcGVycm9yKCJ1c3NldGxvY2sgKHdhaXRfbG9jaykiKTsKLSAgICAgICAgZm9yICg7OykgewotICAgICAgICAgICAgaWYgKG50aHJlYWRzIDwgMCkgewotICAgICAgICAgICAgICAgIGRwcmludGYoKCJyZWFsbHkgZXhpdCAoJWQpXG4iLCBleGl0X3N0YXR1cykpOwotICAgICAgICAgICAgICAgIGV4aXQoZXhpdF9zdGF0dXMpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKHVzdW5zZXRsb2NrKGNvdW50X2xvY2spIDwgMCkKLSAgICAgICAgICAgICAgICBwZXJyb3IoInVzdW5zZXRsb2NrIChjb3VudF9sb2NrKSIpOwotICAgICAgICAgICAgZHByaW50ZigoIndhaXRpbmcgZm9yIG90aGVyIHRocmVhZHMgKCVkKVxuIiwgbnRocmVhZHMpKTsKLSAgICAgICAgICAgIGlmICh1c3NldGxvY2sod2FpdF9sb2NrKSA8IDApCi0gICAgICAgICAgICAgICAgcGVycm9yKCJ1c3NldGxvY2sgKHdhaXRfbG9jaykiKTsKLSAgICAgICAgICAgIGlmICh1c3NldGxvY2soY291bnRfbG9jaykgPCAwKQotICAgICAgICAgICAgICAgIHBlcnJvcigidXNzZXRsb2NrIChjb3VudF9sb2NrKSIpOwotICAgICAgICB9Ci0gICAgfQotICAgIC8qIG5vdCB0aGUgbWFpbiB0aHJlYWQgKi8KLSAgICBpZiAod2FpdGluZ19mb3JfdGhyZWFkcykgewotICAgICAgICBkcHJpbnRmKCgibWFpbiB0aHJlYWQgaXMgd2FpdGluZ1xuIikpOwotICAgICAgICBpZiAodXN1bnNldGxvY2sod2FpdF9sb2NrKSA8IDApCi0gICAgICAgICAgICBwZXJyb3IoInVzdW5zZXRsb2NrICh3YWl0X2xvY2spIik7Ci0gICAgfQotICAgIGlmICh1c3Vuc2V0bG9jayhjb3VudF9sb2NrKSA8IDApCi0gICAgICAgIHBlcnJvcigidXN1bnNldGxvY2sgKGNvdW50X2xvY2spIik7Ci0gICAgX2V4aXQoMCk7Ci19Ci0KLS8qCi0gKiBMb2NrIHN1cHBvcnQuCi0gKi8KLVB5VGhyZWFkX3R5cGVfbG9jayBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKHZvaWQpCi17Ci0gICAgdWxvY2tfdCBsb2NrOwotCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FsbG9jYXRlX2xvY2sgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLQotICAgIGlmICgobG9jayA9IHVzbmV3bG9jayhzaGFyZWRfYXJlbmEpKSA9PSBOVUxMKQotICAgICAgICBwZXJyb3IoInVzbmV3bG9jayIpOwotICAgICh2b2lkKSB1c2luaXRsb2NrKGxvY2spOwotICAgIGRwcmludGYoKCJQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKCkgLT4gJXBcbiIsIGxvY2spKTsKLSAgICByZXR1cm4gKFB5VGhyZWFkX3R5cGVfbG9jaykgbG9jazsKLX0KLQotdm9pZCBQeVRocmVhZF9mcmVlX2xvY2soUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2spCi17Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2ZyZWVfbG9jayglcCkgY2FsbGVkXG4iLCBsb2NrKSk7Ci0gICAgdXNmcmVlbG9jaygodWxvY2tfdCkgbG9jaywgc2hhcmVkX2FyZW5hKTsKLX0KLQotaW50IFB5VGhyZWFkX2FjcXVpcmVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaywgaW50IHdhaXRmbGFnKQotewotICAgIGludCBzdWNjZXNzOwotCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FjcXVpcmVfbG9jayglcCwgJWQpIGNhbGxlZFxuIiwgbG9jaywgd2FpdGZsYWcpKTsKLSAgICBlcnJubyA9IDA7ICAgICAgICAgICAgICAgICAgLyogY2xlYXIgaXQganVzdCBpbiBjYXNlICovCi0gICAgaWYgKHdhaXRmbGFnKQotICAgICAgICBzdWNjZXNzID0gdXNzZXRsb2NrKCh1bG9ja190KSBsb2NrKTsKLSAgICBlbHNlCi0gICAgICAgIHN1Y2Nlc3MgPSB1c2NzZXRsb2NrKCh1bG9ja190KSBsb2NrLCAxKTsgLyogVHJ5IGl0IG9uY2UgKi8KLSAgICBpZiAoc3VjY2VzcyA8IDApCi0gICAgICAgIHBlcnJvcih3YWl0ZmxhZyA/ICJ1c3NldGxvY2siIDogInVzY3NldGxvY2siKTsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWNxdWlyZV9sb2NrKCVwLCAlZCkgLT4gJWRcbiIsIGxvY2ssIHdhaXRmbGFnLCBzdWNjZXNzKSk7Ci0gICAgcmV0dXJuIHN1Y2Nlc3M7Ci19Ci0KLXZvaWQgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrKQotewotICAgIGRwcmludGYoKCJQeVRocmVhZF9yZWxlYXNlX2xvY2soJXApIGNhbGxlZFxuIiwgbG9jaykpOwotICAgIGlmICh1c3Vuc2V0bG9jaygodWxvY2tfdCkgbG9jaykgPCAwKQotICAgICAgICBwZXJyb3IoInVzdW5zZXRsb2NrIik7Ci19CmRpZmYgLS1naXQgYS9QeXRob24vdGhyZWFkX3NvbGFyaXMuaCBiL1B5dGhvbi90aHJlYWRfc29sYXJpcy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxY2UxY2ZjLi4wMDAwMDAwCi0tLSBhL1B5dGhvbi90aHJlYWRfc29sYXJpcy5oCisrKyAvZGV2L251bGwKQEAgLTEsMTMwICswLDAgQEAKLQotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDwvdXNyL2luY2x1ZGUvdGhyZWFkLmg+Ci0jdW5kZWYgX1BPU0lYX1RIUkVBRFMKLQotCi0vKgotICogSW5pdGlhbGl6YXRpb24uCi0gKi8KLXN0YXRpYyB2b2lkIFB5VGhyZWFkX19pbml0X3RocmVhZCh2b2lkKQotewotfQotCi0vKgotICogVGhyZWFkIHN1cHBvcnQuCi0gKi8KLXN0cnVjdCBmdW5jX2FyZyB7Ci0gICAgdm9pZCAoKmZ1bmMpKHZvaWQgKik7Ci0gICAgdm9pZCAqYXJnOwotfTsKLQotc3RhdGljIHZvaWQgKgotbmV3X2Z1bmModm9pZCAqZnVuY2FyZykKLXsKLSAgICB2b2lkICgqZnVuYykodm9pZCAqKTsKLSAgICB2b2lkICphcmc7Ci0KLSAgICBmdW5jID0gKChzdHJ1Y3QgZnVuY19hcmcgKikgZnVuY2FyZyktPmZ1bmM7Ci0gICAgYXJnID0gKChzdHJ1Y3QgZnVuY19hcmcgKikgZnVuY2FyZyktPmFyZzsKLSAgICBmcmVlKGZ1bmNhcmcpOwotICAgICgqZnVuYykoYXJnKTsKLSAgICByZXR1cm4gMDsKLX0KLQotCi1sb25nCi1QeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkKHZvaWQgKCpmdW5jKSh2b2lkICopLCB2b2lkICphcmcpCi17Ci0gICAgdGhyZWFkX3QgdGlkOwotICAgIHN0cnVjdCBmdW5jX2FyZyAqZnVuY2FyZzsKLQotICAgIGRwcmludGYoKCJQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkIGNhbGxlZFxuIikpOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIFB5VGhyZWFkX2luaXRfdGhyZWFkKCk7Ci0gICAgZnVuY2FyZyA9IChzdHJ1Y3QgZnVuY19hcmcgKikgbWFsbG9jKHNpemVvZihzdHJ1Y3QgZnVuY19hcmcpKTsKLSAgICBmdW5jYXJnLT5mdW5jID0gZnVuYzsKLSAgICBmdW5jYXJnLT5hcmcgPSBhcmc7Ci0gICAgaWYgKHRocl9jcmVhdGUoMCwgMCwgbmV3X2Z1bmMsIGZ1bmNhcmcsCi0gICAgICAgICAgICAgICAgICAgVEhSX0RFVEFDSEVEIHwgVEhSX05FV19MV1AsICZ0aWQpKSB7Ci0gICAgICAgIHBlcnJvcigidGhyX2NyZWF0ZSIpOwotICAgICAgICBmcmVlKCh2b2lkICopIGZ1bmNhcmcpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIHJldHVybiB0aWQ7Ci19Ci0KLWxvbmcKLVB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQodm9pZCkKLXsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotICAgIHJldHVybiB0aHJfc2VsZigpOwotfQotCi12b2lkCi1QeVRocmVhZF9leGl0X3RocmVhZCh2b2lkKQotewotICAgIGRwcmludGYoKCJQeVRocmVhZF9leGl0X3RocmVhZCBjYWxsZWRcbiIpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBleGl0KDApOwotICAgIHRocl9leGl0KDApOwotfQotCi0vKgotICogTG9jayBzdXBwb3J0LgotICovCi1QeVRocmVhZF90eXBlX2xvY2sKLVB5VGhyZWFkX2FsbG9jYXRlX2xvY2sodm9pZCkKLXsKLSAgICBtdXRleF90ICpsb2NrOwotCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FsbG9jYXRlX2xvY2sgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLQotICAgIGxvY2sgPSAobXV0ZXhfdCAqKSBtYWxsb2Moc2l6ZW9mKG11dGV4X3QpKTsKLSAgICBpZiAobXV0ZXhfaW5pdChsb2NrLCBVU1lOQ19USFJFQUQsIDApKSB7Ci0gICAgICAgIHBlcnJvcigibXV0ZXhfaW5pdCIpOwotICAgICAgICBmcmVlKCh2b2lkICopIGxvY2spOwotICAgICAgICBsb2NrID0gMDsKLSAgICB9Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKSAtPiAlcFxuIiwgbG9jaykpOwotICAgIHJldHVybiAoUHlUaHJlYWRfdHlwZV9sb2NrKSBsb2NrOwotfQotCi12b2lkCi1QeVRocmVhZF9mcmVlX2xvY2soUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2spCi17Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2ZyZWVfbG9jayglcCkgY2FsbGVkXG4iLCBsb2NrKSk7Ci0gICAgbXV0ZXhfZGVzdHJveSgobXV0ZXhfdCAqKSBsb2NrKTsKLSAgICBmcmVlKCh2b2lkICopIGxvY2spOwotfQotCi1pbnQKLVB5VGhyZWFkX2FjcXVpcmVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaywgaW50IHdhaXRmbGFnKQotewotICAgIGludCBzdWNjZXNzOwotCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FjcXVpcmVfbG9jayglcCwgJWQpIGNhbGxlZFxuIiwgbG9jaywgd2FpdGZsYWcpKTsKLSAgICBpZiAod2FpdGZsYWcpCi0gICAgICAgIHN1Y2Nlc3MgPSBtdXRleF9sb2NrKChtdXRleF90ICopIGxvY2spOwotICAgIGVsc2UKLSAgICAgICAgc3VjY2VzcyA9IG11dGV4X3RyeWxvY2soKG11dGV4X3QgKikgbG9jayk7Ci0gICAgaWYgKHN1Y2Nlc3MgPCAwKQotICAgICAgICBwZXJyb3Iod2FpdGZsYWcgPyAibXV0ZXhfbG9jayIgOiAibXV0ZXhfdHJ5bG9jayIpOwotICAgIGVsc2UKLSAgICAgICAgc3VjY2VzcyA9ICFzdWNjZXNzOyAvKiBzb2xhcmlzIGRvZXMgaXQgdGhlIG90aGVyIHdheSByb3VuZCAqLwotICAgIGRwcmludGYoKCJQeVRocmVhZF9hY3F1aXJlX2xvY2soJXAsICVkKSAtPiAlZFxuIiwgbG9jaywgd2FpdGZsYWcsIHN1Y2Nlc3MpKTsKLSAgICByZXR1cm4gc3VjY2VzczsKLX0KLQotdm9pZAotUHlUaHJlYWRfcmVsZWFzZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrKQotewotICAgIGRwcmludGYoKCJQeVRocmVhZF9yZWxlYXNlX2xvY2soJXApIGNhbGxlZFxuIiwgbG9jaykpOwotICAgIGlmIChtdXRleF91bmxvY2soKG11dGV4X3QgKikgbG9jaykpCi0gICAgICAgIHBlcnJvcigibXV0ZXhfdW5sb2NrIik7Ci19CmRpZmYgLS1naXQgYS9QeXRob24vdGhyZWFkX3dpbmNlLmggYi9QeXRob24vdGhyZWFkX3dpbmNlLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxZGRjMDIuLjAwMDAwMDAKLS0tIGEvUHl0aG9uL3RocmVhZF93aW5jZS5oCisrKyAvZGV2L251bGwKQEAgLTEsMTM2ICswLDAgQEAKLQotLyogVGhpcyBjb2RlIGltcGxlbWVudGVkIGJ5IE1hcmsgSGFtbW9uZCAoTUhhbW1vbmRAc2tpcHBpbmV0LmNvbS5hdSkgKi8KLQotI2luY2x1ZGUgPHdpbmRvd3MuaD4KLSNpbmNsdWRlIDxsaW1pdHMuaD4KLSNpbmNsdWRlIDxweWRlYnVnLmg+Ci0KLWxvbmcgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCh2b2lkKTsKLQotLyoKLSAqIENoYW5nZSBhbGwgaGVhZGVycyB0byBwdXJlIEFOU0kgYXMgbm8gb25lIHdpbGwgdXNlIEsmUiBzdHlsZSBvbiBhbgotICogTlQKLSAqLwotCi0vKgotICogSW5pdGlhbGl6YXRpb24gb2YgdGhlIEMgcGFja2FnZSwgc2hvdWxkIG5vdCBiZSBuZWVkZWQuCi0gKi8KLXN0YXRpYyB2b2lkIFB5VGhyZWFkX19pbml0X3RocmVhZCh2b2lkKQotewotfQotCi0vKgotICogVGhyZWFkIHN1cHBvcnQuCi0gKi8KLWxvbmcgUHlUaHJlYWRfc3RhcnRfbmV3X3RocmVhZCh2b2lkICgqZnVuYykodm9pZCAqKSwgdm9pZCAqYXJnKQotewotICAgIGxvbmcgcnY7Ci0gICAgaW50IHN1Y2Nlc3MgPSAtMTsKLQotICAgIGRwcmludGYoKCIlbGQ6IFB5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQgY2FsbGVkXG4iLCBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KCkpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotCi0gICAgcnYgPSBfYmVnaW50aHJlYWQoZnVuYywgMCwgYXJnKTsgLyogdXNlIGRlZmF1bHQgc3RhY2sgc2l6ZSAqLwotCi0gICAgaWYgKHJ2ICE9IC0xKSB7Ci0gICAgICAgIHN1Y2Nlc3MgPSAwOwotICAgICAgICBkcHJpbnRmKCgiJWxkOiBQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkIHN1Y2NlZWRlZDpcbiIsIFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQoKSkpOwotICAgIH0KLQotICAgIHJldHVybiBzdWNjZXNzOwotfQotCi0vKgotICogUmV0dXJuIHRoZSB0aHJlYWQgSWQgaW5zdGVhZCBvZiBhbiBoYW5kbGUuIFRoZSBJZCBpcyBzYWlkIHRvIHVuaXF1ZWx5IGlkZW50aWZ5IHRoZQotICogdGhyZWFkIGluIHRoZSBzeXN0ZW0KLSAqLwotbG9uZyBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KHZvaWQpCi17Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLQotICAgIHJldHVybiBHZXRDdXJyZW50VGhyZWFkSWQoKTsKLX0KLQotdm9pZCBQeVRocmVhZF9leGl0X3RocmVhZCh2b2lkKQotewotICAgIGRwcmludGYoKCIlbGQ6IFB5VGhyZWFkX2V4aXRfdGhyZWFkIGNhbGxlZFxuIiwgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgZXhpdCgwKTsKLSAgICBfZW5kdGhyZWFkKCk7Ci19Ci0KLS8qCi0gKiBMb2NrIHN1cHBvcnQuIEl0IGhhcyB0byBiZSBpbXBsZW1lbnRlZCB1c2luZyBNdXRleGVzLCBhcwotICogQ0UgZG9lc250IHN1cHBvcnQgc2VtYXBob3Jlcy4gIFRoZXJlZm9yZSB3ZSB1c2Ugc29tZSBoYWNrcyB0bwotICogc2ltdWxhdGUgdGhlIG5vbiByZWVudHJhbnQgcmVxdWlyZW1lbnRzIG9mIFB5dGhvbiBsb2NrcwotICovCi1QeVRocmVhZF90eXBlX2xvY2sgUHlUaHJlYWRfYWxsb2NhdGVfbG9jayh2b2lkKQotewotICAgIEhBTkRMRSBhTG9jazsKLQotICAgIGRwcmludGYoKCJQeVRocmVhZF9hbGxvY2F0ZV9sb2NrIGNhbGxlZFxuIikpOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLQotICAgIGFMb2NrID0gQ3JlYXRlRXZlbnQoTlVMTCwgICAgICAgICAgIC8qIFNlY3VyaXR5IGF0dHJpYnV0ZXMgICAgICAqLwotICAgICAgICAgICAgMCwgICAgICAgICAgICAgIC8qIE1hbnVhbC1SZXNldCAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgICAgICAgICAxLCAgICAgICAgICAgICAgLyogSXMgaW5pdGlhbGx5IHNpZ25hbGxlZCAgKi8KLSAgICAgICAgICAgIE5VTEwpOyAgICAgICAgICAvKiBOYW1lIG9mIGV2ZW50ICAgICAgICAgICAgKi8KLQotICAgIGRwcmludGYoKCIlbGQ6IFB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKSAtPiAlcFxuIiwgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpLCBhTG9jaykpOwotCi0gICAgcmV0dXJuIChQeVRocmVhZF90eXBlX2xvY2spIGFMb2NrOwotfQotCi12b2lkIFB5VGhyZWFkX2ZyZWVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgYUxvY2spCi17Ci0gICAgZHByaW50ZigoIiVsZDogUHlUaHJlYWRfZnJlZV9sb2NrKCVwKSBjYWxsZWRcbiIsIFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQoKSxhTG9jaykpOwotCi0gICAgQ2xvc2VIYW5kbGUoYUxvY2spOwotfQotCi0vKgotICogUmV0dXJuIDEgb24gc3VjY2VzcyBpZiB0aGUgbG9jayB3YXMgYWNxdWlyZWQKLSAqCi0gKiBhbmQgMCBpZiB0aGUgbG9jayB3YXMgbm90IGFjcXVpcmVkLiBUaGlzIG1lYW5zIGEgMCBpcyByZXR1cm5lZAotICogaWYgdGhlIGxvY2sgaGFzIGFscmVhZHkgYmVlbiBhY3F1aXJlZCBieSB0aGlzIHRocmVhZCEKLSAqLwotaW50IFB5VGhyZWFkX2FjcXVpcmVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgYUxvY2ssIGludCB3YWl0ZmxhZykKLXsKLSAgICBpbnQgc3VjY2VzcyA9IDE7Ci0gICAgRFdPUkQgd2FpdFJlc3VsdDsKLQotICAgIGRwcmludGYoKCIlbGQ6IFB5VGhyZWFkX2FjcXVpcmVfbG9jayglcCwgJWQpIGNhbGxlZFxuIiwgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpLGFMb2NrLCB3YWl0ZmxhZykpOwotCi0jaWZuZGVmIERFQlVHCi0gICAgd2FpdFJlc3VsdCA9IFdhaXRGb3JTaW5nbGVPYmplY3QoYUxvY2ssICh3YWl0ZmxhZyA/IElORklOSVRFIDogMCkpOwotI2Vsc2UKLSAgICAvKiBUbyBhaWQgaW4gZGVidWdnaW5nLCB3ZSByZWd1bGFybHkgd2FrZSB1cC4gIFRoaXMgYWxsb3dzIHVzIHRvCi0gICAgYnJlYWsgaW50byB0aGUgZGVidWdnZXIgKi8KLSAgICB3aGlsZSAoVFJVRSkgewotICAgICAgICB3YWl0UmVzdWx0ID0gV2FpdEZvclNpbmdsZU9iamVjdChhTG9jaywgd2FpdGZsYWcgPyAzMDAwIDogMCk7Ci0gICAgICAgIGlmICh3YWl0ZmxhZz09MCB8fCAod2FpdGZsYWcgJiYgd2FpdFJlc3VsdCA9PSBXQUlUX09CSkVDVF8wKSkKLSAgICAgICAgICAgIGJyZWFrOwotICAgIH0KLSNlbmRpZgotCi0gICAgaWYgKHdhaXRSZXN1bHQgIT0gV0FJVF9PQkpFQ1RfMCkgewotICAgICAgICAgICAgICAgIHN1Y2Nlc3MgPSAwOyAgICAvKiBXZSBmYWlsZWQgKi8KLSAgICB9Ci0KLSAgICBkcHJpbnRmKCgiJWxkOiBQeVRocmVhZF9hY3F1aXJlX2xvY2soJXAsICVkKSAtPiAlZFxuIiwgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpLGFMb2NrLCB3YWl0ZmxhZywgc3VjY2VzcykpOwotCi0gICAgcmV0dXJuIHN1Y2Nlc3M7Ci19Ci0KLXZvaWQgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBhTG9jaykKLXsKLSAgICBkcHJpbnRmKCgiJWxkOiBQeVRocmVhZF9yZWxlYXNlX2xvY2soJXApIGNhbGxlZFxuIiwgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpLGFMb2NrKSk7Ci0KLSAgICBpZiAoIVNldEV2ZW50KGFMb2NrKSkKLSAgICBkcHJpbnRmKCgiJWxkOiBDb3VsZCBub3QgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKCVwKSBlcnJvcjogJWxcbiIsIFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQoKSwgYUxvY2ssIEdldExhc3RFcnJvcigpKSk7Ci19Ci0KLQpkaWZmIC0tZ2l0IGEvUHl0aG9uL3RyYWNlYmFjay5jIGIvUHl0aG9uL3RyYWNlYmFjay5jCmluZGV4IDU5YmIzZjAuLmM4YjNlZTEgMTAwNjQ0Ci0tLSBhL1B5dGhvbi90cmFjZWJhY2suYworKysgYi9QeXRob24vdHJhY2ViYWNrLmMKQEAgLTEzLDggKzEzLDEzIEBACiAKICNkZWZpbmUgT0ZGKHgpIG9mZnNldG9mKFB5VHJhY2ViYWNrT2JqZWN0LCB4KQogCi0vKiBNZXRob2QgZnJvbSBQYXJzZXIvdG9rZW5pemVyLmMgKi8KLWV4dGVybiBjaGFyICogUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nKGludCk7CisjZGVmaW5lIFBVVFMoZmQsIHN0cikgd3JpdGUoZmQsIHN0ciwgc3RybGVuKHN0cikpCisjZGVmaW5lIE1BWF9TVFJJTkdfTEVOR1RIIDEwMAorI2RlZmluZSBNQVhfRlJBTUVfREVQVEggMTAwCisjZGVmaW5lIE1BWF9OVEhSRUFEUyAxMDAKKworLyogRnVuY3Rpb24gZnJvbSBQYXJzZXIvdG9rZW5pemVyLmMgKi8KK2V4dGVybiBjaGFyICogUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nRmlsZW5hbWUoaW50LCBQeU9iamVjdCAqKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKIHRiX2RpcihQeVRyYWNlYmFja09iamVjdCAqc2VsZikKQEAgLTE0Nyw2ICsxNTIsNyBAQAogICAgIGNvbnN0IGNoYXIqIGZpbGVwYXRoOwogICAgIFB5X3NzaXplX3QgbGVuOwogICAgIFB5T2JqZWN0KiByZXN1bHQ7CisgICAgX1B5X0lERU5USUZJRVIob3Blbik7CiAKICAgICBmaWxlYnl0ZXMgPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KGZpbGVuYW1lKTsKICAgICBpZiAoZmlsZWJ5dGVzID09IE5VTEwpIHsKQEAgLTE5NCw3ICsyMDAsNyBAQAogICAgICAgICAgICAgbmFtZWJ1ZltsZW4rK10gPSBTRVA7CiAgICAgICAgIHN0cmNweShuYW1lYnVmK2xlbiwgdGFpbCk7CiAKLSAgICAgICAgYmluYXJ5ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChpbywgIm9wZW4iLCAic3MiLCBuYW1lYnVmLCAicmIiKTsKKyAgICAgICAgYmluYXJ5ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChpbywgJlB5SWRfb3BlbiwgInNzIiwgbmFtZWJ1ZiwgInJiIik7CiAgICAgICAgIGlmIChiaW5hcnkgIT0gTlVMTCkgewogICAgICAgICAgICAgcmVzdWx0ID0gYmluYXJ5OwogICAgICAgICAgICAgZ290byBmaW5hbGx5OwpAQCAtMjI0LDggKzIzMCwxMSBAQAogICAgIFB5T2JqZWN0ICpsaW5lb2JqID0gTlVMTDsKICAgICBQeU9iamVjdCAqcmVzOwogICAgIGNoYXIgYnVmW01BWFBBVEhMRU4rMV07Ci0gICAgUHlfVU5JQ09ERSAqdSwgKnA7Ci0gICAgUHlfc3NpemVfdCBsZW47CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKyAgICBfUHlfSURFTlRJRklFUihjbG9zZSk7CisgICAgX1B5X0lERU5USUZJRVIob3Blbik7CisgICAgX1B5X0lERU5USUZJRVIoVGV4dElPV3JhcHBlcik7CiAKICAgICAvKiBvcGVuIHRoZSBmaWxlICovCiAgICAgaWYgKGZpbGVuYW1lID09IE5VTEwpCkBAIC0yMzQsNyArMjQzLDcgQEAKICAgICBpbyA9IFB5SW1wb3J0X0ltcG9ydE1vZHVsZU5vQmxvY2soImlvIik7CiAgICAgaWYgKGlvID09IE5VTEwpCiAgICAgICAgIHJldHVybiAtMTsKLSAgICBiaW5hcnkgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGlvLCAib3BlbiIsICJPcyIsIGZpbGVuYW1lLCAicmIiKTsKKyAgICBiaW5hcnkgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGlvLCAmUHlJZF9vcGVuLCAiT3MiLCBmaWxlbmFtZSwgInJiIik7CiAKICAgICBpZiAoYmluYXJ5ID09IE5VTEwpIHsKICAgICAgICAgYmluYXJ5ID0gX1B5X0ZpbmRTb3VyY2VGaWxlKGZpbGVuYW1lLCBidWYsIHNpemVvZihidWYpLCBpbyk7CkBAIC0yNDYsMTAgKzI1NSwxMCBAQAogCiAgICAgLyogdXNlIHRoZSByaWdodCBlbmNvZGluZyB0byBkZWNvZGUgdGhlIGZpbGUgYXMgdW5pY29kZSAqLwogICAgIGZkID0gUHlPYmplY3RfQXNGaWxlRGVzY3JpcHRvcihiaW5hcnkpOwotICAgIGZvdW5kX2VuY29kaW5nID0gUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nKGZkKTsKKyAgICBmb3VuZF9lbmNvZGluZyA9IFB5VG9rZW5pemVyX0ZpbmRFbmNvZGluZ0ZpbGVuYW1lKGZkLCBmaWxlbmFtZSk7CiAgICAgZW5jb2RpbmcgPSAoZm91bmRfZW5jb2RpbmcgIT0gTlVMTCkgPyBmb3VuZF9lbmNvZGluZyA6ICJ1dGYtOCI7CiAgICAgbHNlZWsoZmQsIDAsIDApOyAvKiBSZXNldCBwb3NpdGlvbiAqLwotICAgIGZvYiA9IFB5T2JqZWN0X0NhbGxNZXRob2QoaW8sICJUZXh0SU9XcmFwcGVyIiwgIk9zIiwgYmluYXJ5LCBlbmNvZGluZyk7CisgICAgZm9iID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChpbywgJlB5SWRfVGV4dElPV3JhcHBlciwgIk9zIiwgYmluYXJ5LCBlbmNvZGluZyk7CiAgICAgUHlfREVDUkVGKGlvKTsKICAgICBQeV9ERUNSRUYoYmluYXJ5KTsKICAgICBQeU1lbV9GUkVFKGZvdW5kX2VuY29kaW5nKTsKQEAgLTI2OCw3ICsyNzcsNyBAQAogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICB9Ci0gICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmb2IsICJjbG9zZSIsICIiKTsKKyAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGZvYiwgJlB5SWRfY2xvc2UsICIiKTsKICAgICBpZiAocmVzKQogICAgICAgICBQeV9ERUNSRUYocmVzKTsKICAgICBlbHNlCkBAIC0yODAsMTMgKzI4OSwxNiBAQAogICAgIH0KIAogICAgIC8qIHJlbW92ZSB0aGUgaW5kZW50YXRpb24gb2YgdGhlIGxpbmUgKi8KLSAgICB1ID0gUHlVbmljb2RlX0FTX1VOSUNPREUobGluZW9iaik7Ci0gICAgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGxpbmVvYmopOwotICAgIGZvciAocD11OyAqcCA9PSAnICcgfHwgKnAgPT0gJ1x0JyB8fCAqcCA9PSAnXDAxNCc7IHArKykKLSAgICAgICAgbGVuLS07Ci0gICAgaWYgKHUgIT0gcCkgeworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChsaW5lb2JqKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEobGluZW9iaik7CisgICAgZm9yIChpPTA7IGkgPCBQeVVuaWNvZGVfR0VUX0xFTkdUSChsaW5lb2JqKTsgaSsrKSB7CisgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgICAgaWYgKGNoICE9ICcgJyAmJiBjaCAhPSAnXHQnICYmIGNoICE9ICdcMDE0JykKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBpZiAoaSkgewogICAgICAgICBQeU9iamVjdCAqdHJ1bmNhdGVkOwotICAgICAgICB0cnVuY2F0ZWQgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocCwgbGVuKTsKKyAgICAgICAgdHJ1bmNhdGVkID0gUHlVbmljb2RlX1N1YnN0cmluZyhsaW5lb2JqLCBpLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChsaW5lb2JqKSk7CiAgICAgICAgIGlmICh0cnVuY2F0ZWQpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihsaW5lb2JqKTsKICAgICAgICAgICAgIGxpbmVvYmogPSB0cnVuY2F0ZWQ7CkBAIC00MDIsMyArNDE0LDI1MCBAQAogICAgICAgICBlcnIgPSB0Yl9wcmludGludGVybmFsKChQeVRyYWNlYmFja09iamVjdCAqKXYsIGYsIGxpbWl0KTsKICAgICByZXR1cm4gZXJyOwogfQorCisvKiBSZXZlcnNlIGEgc3RyaW5nLiBGb3IgZXhhbXBsZSwgImFiY2QiIGJlY29tZXMgImRjYmEiLgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIHNpZ25hbCBzYWZlLiAqLworCitzdGF0aWMgdm9pZAorcmV2ZXJzZV9zdHJpbmcoY2hhciAqdGV4dCwgY29uc3Qgc2l6ZV90IGxlbikKK3sKKyAgICBjaGFyIHRtcDsKKyAgICBzaXplX3QgaSwgajsKKyAgICBpZiAobGVuID09IDApCisgICAgICAgIHJldHVybjsKKyAgICBmb3IgKGk9MCwgaj1sZW4tMTsgaSA8IGo7IGkrKywgai0tKSB7CisgICAgICAgIHRtcCA9IHRleHRbaV07CisgICAgICAgIHRleHRbaV0gPSB0ZXh0W2pdOworICAgICAgICB0ZXh0W2pdID0gdG1wOworICAgIH0KK30KKworLyogRm9ybWF0IGFuIGludGVnZXIgaW4gcmFuZ2UgWzA7IDk5OTk5OV0gdG8gZGVjaW1hbCwKKyAgIGFuZCB3cml0ZSBpdCBpbnRvIHRoZSBmaWxlIGZkLgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIHNpZ25hbCBzYWZlLiAqLworCitzdGF0aWMgdm9pZAorZHVtcF9kZWNpbWFsKGludCBmZCwgaW50IHZhbHVlKQoreworICAgIGNoYXIgYnVmZmVyWzddOworICAgIGludCBsZW47CisgICAgaWYgKHZhbHVlIDwgMCB8fCA5OTk5OTkgPCB2YWx1ZSkKKyAgICAgICAgcmV0dXJuOworICAgIGxlbiA9IDA7CisgICAgZG8geworICAgICAgICBidWZmZXJbbGVuXSA9ICcwJyArICh2YWx1ZSAlIDEwKTsKKyAgICAgICAgdmFsdWUgLz0gMTA7CisgICAgICAgIGxlbisrOworICAgIH0gd2hpbGUgKHZhbHVlKTsKKyAgICByZXZlcnNlX3N0cmluZyhidWZmZXIsIGxlbik7CisgICAgd3JpdGUoZmQsIGJ1ZmZlciwgbGVuKTsKK30KKworLyogRm9ybWF0IGFuIGludGVnZXIgaW4gcmFuZ2UgWzA7IDB4ZmZmZmZmZmZdIHRvIGhleGRlY2ltYWwgb2YgJ3dpZHRoJyBkaWdpdHMsCisgICBhbmQgd3JpdGUgaXQgaW50byB0aGUgZmlsZSBmZC4KKworICAgVGhpcyBmdW5jdGlvbiBpcyBzaWduYWwgc2FmZS4gKi8KKworc3RhdGljIHZvaWQKK2R1bXBfaGV4YWRlY2ltYWwoaW50IHdpZHRoLCB1bnNpZ25lZCBsb25nIHZhbHVlLCBpbnQgZmQpCit7CisgICAgaW50IGxlbjsKKyAgICBjaGFyIGJ1ZmZlcltzaXplb2YodW5zaWduZWQgbG9uZykgKiAyICsgMV07CisgICAgbGVuID0gMDsKKyAgICBkbyB7CisgICAgICAgIGJ1ZmZlcltsZW5dID0gUHlfaGV4ZGlnaXRzW3ZhbHVlICYgMTVdOworICAgICAgICB2YWx1ZSA+Pj0gNDsKKyAgICAgICAgbGVuKys7CisgICAgfSB3aGlsZSAobGVuIDwgd2lkdGggfHwgdmFsdWUpOworICAgIHJldmVyc2Vfc3RyaW5nKGJ1ZmZlciwgbGVuKTsKKyAgICB3cml0ZShmZCwgYnVmZmVyLCBsZW4pOworfQorCisvKiBXcml0ZSBhbiB1bmljb2RlIG9iamVjdCBpbnRvIHRoZSBmaWxlIGZkIHVzaW5nIGFzY2lpK2JhY2tzbGFzaHJlcGxhY2UuCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgc2lnbmFsIHNhZmUuICovCisKK3N0YXRpYyB2b2lkCitkdW1wX2FzY2lpKGludCBmZCwgUHlPYmplY3QgKnRleHQpCit7CisgICAgUHlBU0NJSU9iamVjdCAqYXNjaWkgPSAoUHlBU0NJSU9iamVjdCAqKXRleHQ7CisgICAgUHlfc3NpemVfdCBpLCBzaXplOworICAgIGludCB0cnVuY2F0ZWQ7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YSA9IE5VTEw7CisgICAgd2NoYXJfdCAqd3N0ciA9IE5VTEw7CisgICAgUHlfVUNTNCBjaDsKKworICAgIHNpemUgPSBhc2NpaS0+bGVuZ3RoOworICAgIGtpbmQgPSBhc2NpaS0+c3RhdGUua2luZDsKKyAgICBpZiAoYXNjaWktPnN0YXRlLmNvbXBhY3QpIHsKKyAgICAgICAgaWYgKGFzY2lpLT5zdGF0ZS5hc2NpaSkKKyAgICAgICAgICAgIGRhdGEgPSAoKFB5QVNDSUlPYmplY3QqKXRleHQpICsgMTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgZGF0YSA9ICgoUHlDb21wYWN0VW5pY29kZU9iamVjdCopdGV4dCkgKyAxOworICAgIH0KKyAgICBlbHNlIGlmIChraW5kICE9IFB5VW5pY29kZV9XQ0hBUl9LSU5EKSB7CisgICAgICAgIGRhdGEgPSAoKFB5VW5pY29kZU9iamVjdCAqKXRleHQpLT5kYXRhLmFueTsKKyAgICAgICAgaWYgKGRhdGEgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHdzdHIgPSAoKFB5QVNDSUlPYmplY3QgKil0ZXh0KS0+d3N0cjsKKyAgICAgICAgaWYgKHdzdHIgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgc2l6ZSA9ICgoUHlDb21wYWN0VW5pY29kZU9iamVjdCAqKXRleHQpLT53c3RyX2xlbmd0aDsKKyAgICB9CisKKyAgICBpZiAoTUFYX1NUUklOR19MRU5HVEggPCBzaXplKSB7CisgICAgICAgIHNpemUgPSBNQVhfU1RSSU5HX0xFTkdUSDsKKyAgICAgICAgdHJ1bmNhdGVkID0gMTsKKyAgICB9CisgICAgZWxzZQorICAgICAgICB0cnVuY2F0ZWQgPSAwOworCisgICAgZm9yIChpPTA7IGkgPCBzaXplOyBpKyspIHsKKyAgICAgICAgaWYgKGtpbmQgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpCisgICAgICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBjaCA9IHdzdHJbaV07CisgICAgICAgIGlmIChjaCA8IDEyOCkgeworICAgICAgICAgICAgY2hhciBjID0gKGNoYXIpY2g7CisgICAgICAgICAgICB3cml0ZShmZCwgJmMsIDEpOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKGNoIDwgMHhmZikgeworICAgICAgICAgICAgUFVUUyhmZCwgIlxceCIpOworICAgICAgICAgICAgZHVtcF9oZXhhZGVjaW1hbCgyLCBjaCwgZmQpOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKGNoIDwgMHhmZmZmKSB7CisgICAgICAgICAgICBQVVRTKGZkLCAiXFx1Iik7CisgICAgICAgICAgICBkdW1wX2hleGFkZWNpbWFsKDQsIGNoLCBmZCk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBQVVRTKGZkLCAiXFxVIik7CisgICAgICAgICAgICBkdW1wX2hleGFkZWNpbWFsKDgsIGNoLCBmZCk7CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKHRydW5jYXRlZCkKKyAgICAgICAgUFVUUyhmZCwgIi4uLiIpOworfQorCisvKiBXcml0ZSBhIGZyYW1lIGludG8gdGhlIGZpbGUgZmQ6ICJGaWxlICJ4eHgiLCBsaW5lIHh4eCBpbiB4eHgiLgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIHNpZ25hbCBzYWZlLiAqLworCitzdGF0aWMgdm9pZAorZHVtcF9mcmFtZShpbnQgZmQsIFB5RnJhbWVPYmplY3QgKmZyYW1lKQoreworICAgIFB5Q29kZU9iamVjdCAqY29kZTsKKyAgICBpbnQgbGluZW5vOworCisgICAgY29kZSA9IGZyYW1lLT5mX2NvZGU7CisgICAgUFVUUyhmZCwgIiAgRmlsZSAiKTsKKyAgICBpZiAoY29kZSAhPSBOVUxMICYmIGNvZGUtPmNvX2ZpbGVuYW1lICE9IE5VTEwKKyAgICAgICAgJiYgUHlVbmljb2RlX0NoZWNrKGNvZGUtPmNvX2ZpbGVuYW1lKSkKKyAgICB7CisgICAgICAgIHdyaXRlKGZkLCAiXCIiLCAxKTsKKyAgICAgICAgZHVtcF9hc2NpaShmZCwgY29kZS0+Y29fZmlsZW5hbWUpOworICAgICAgICB3cml0ZShmZCwgIlwiIiwgMSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgUFVUUyhmZCwgIj8/PyIpOworICAgIH0KKworICAgIC8qIFB5RnJhbWVfR2V0TGluZU51bWJlcigpIHdhcyBpbnRyb2R1Y2VkIGluIFB5dGhvbiAyLjcuMCBhbmQgMy4yLjAgKi8KKyAgICBsaW5lbm8gPSBQeUNvZGVfQWRkcjJMaW5lKGNvZGUsIGZyYW1lLT5mX2xhc3RpKTsKKyAgICBQVVRTKGZkLCAiLCBsaW5lICIpOworICAgIGR1bXBfZGVjaW1hbChmZCwgbGluZW5vKTsKKyAgICBQVVRTKGZkLCAiIGluICIpOworCisgICAgaWYgKGNvZGUgIT0gTlVMTCAmJiBjb2RlLT5jb19uYW1lICE9IE5VTEwKKyAgICAgICAgJiYgUHlVbmljb2RlX0NoZWNrKGNvZGUtPmNvX25hbWUpKQorICAgICAgICBkdW1wX2FzY2lpKGZkLCBjb2RlLT5jb19uYW1lKTsKKyAgICBlbHNlCisgICAgICAgIFBVVFMoZmQsICI/Pz8iKTsKKworICAgIHdyaXRlKGZkLCAiXG4iLCAxKTsKK30KKworc3RhdGljIHZvaWQKK2R1bXBfdHJhY2ViYWNrKGludCBmZCwgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlLCBpbnQgd3JpdGVfaGVhZGVyKQoreworICAgIFB5RnJhbWVPYmplY3QgKmZyYW1lOworICAgIHVuc2lnbmVkIGludCBkZXB0aDsKKworICAgIGlmICh3cml0ZV9oZWFkZXIpCisgICAgICAgIFBVVFMoZmQsICJUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgZmlyc3QpOlxuIik7CisKKyAgICBmcmFtZSA9IF9QeVRocmVhZFN0YXRlX0dldEZyYW1lKHRzdGF0ZSk7CisgICAgaWYgKGZyYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybjsKKworICAgIGRlcHRoID0gMDsKKyAgICB3aGlsZSAoZnJhbWUgIT0gTlVMTCkgeworICAgICAgICBpZiAoTUFYX0ZSQU1FX0RFUFRIIDw9IGRlcHRoKSB7CisgICAgICAgICAgICBQVVRTKGZkLCAiICAuLi5cbiIpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFQeUZyYW1lX0NoZWNrKGZyYW1lKSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkdW1wX2ZyYW1lKGZkLCBmcmFtZSk7CisgICAgICAgIGZyYW1lID0gZnJhbWUtPmZfYmFjazsKKyAgICAgICAgZGVwdGgrKzsKKyAgICB9Cit9CisKK3ZvaWQKK19QeV9EdW1wVHJhY2ViYWNrKGludCBmZCwgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlKQoreworICAgIGR1bXBfdHJhY2ViYWNrKGZkLCB0c3RhdGUsIDEpOworfQorCisvKiBXcml0ZSB0aGUgdGhyZWFkIGlkZW50aWZpZXIgaW50byB0aGUgZmlsZSAnZmQnOiAiQ3VycmVudCB0aHJlYWQgMHhISEhIOlwiIGlmCisgICBpc19jdXJyZW50IGlzIHRydWUsICJUaHJlYWQgMHhISEhIOlxuIiBvdGhlcndpc2UuCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgc2lnbmFsIHNhZmUuICovCisKK3N0YXRpYyB2b2lkCit3cml0ZV90aHJlYWRfaWQoaW50IGZkLCBQeVRocmVhZFN0YXRlICp0c3RhdGUsIGludCBpc19jdXJyZW50KQoreworICAgIGlmIChpc19jdXJyZW50KQorICAgICAgICBQVVRTKGZkLCAiQ3VycmVudCB0aHJlYWQgMHgiKTsKKyAgICBlbHNlCisgICAgICAgIFBVVFMoZmQsICJUaHJlYWQgMHgiKTsKKyAgICBkdW1wX2hleGFkZWNpbWFsKHNpemVvZihsb25nKSoyLCAodW5zaWduZWQgbG9uZyl0c3RhdGUtPnRocmVhZF9pZCwgZmQpOworICAgIFBVVFMoZmQsICI6XG4iKTsKK30KKworY29uc3QgY2hhcioKK19QeV9EdW1wVHJhY2ViYWNrVGhyZWFkcyhpbnQgZmQsIFB5SW50ZXJwcmV0ZXJTdGF0ZSAqaW50ZXJwLAorICAgICAgICAgICAgICAgICAgICAgICAgIFB5VGhyZWFkU3RhdGUgKmN1cnJlbnRfdGhyZWFkKQoreworICAgIFB5VGhyZWFkU3RhdGUgKnRzdGF0ZTsKKyAgICB1bnNpZ25lZCBpbnQgbnRocmVhZHM7CisKKyAgICAvKiBHZXQgdGhlIGN1cnJlbnQgaW50ZXJwcmV0ZXIgZnJvbSB0aGUgY3VycmVudCB0aHJlYWQgKi8KKyAgICB0c3RhdGUgPSBQeUludGVycHJldGVyU3RhdGVfVGhyZWFkSGVhZChpbnRlcnApOworICAgIGlmICh0c3RhdGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuICJ1bmFibGUgdG8gZ2V0IHRoZSB0aHJlYWQgaGVhZCBzdGF0ZSI7CisKKyAgICAvKiBEdW1wIHRoZSB0cmFjZWJhY2sgb2YgZWFjaCB0aHJlYWQgKi8KKyAgICB0c3RhdGUgPSBQeUludGVycHJldGVyU3RhdGVfVGhyZWFkSGVhZChpbnRlcnApOworICAgIG50aHJlYWRzID0gMDsKKyAgICBkbworICAgIHsKKyAgICAgICAgaWYgKG50aHJlYWRzICE9IDApCisgICAgICAgICAgICB3cml0ZShmZCwgIlxuIiwgMSk7CisgICAgICAgIGlmIChudGhyZWFkcyA+PSBNQVhfTlRIUkVBRFMpIHsKKyAgICAgICAgICAgIFBVVFMoZmQsICIuLi5cbiIpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgd3JpdGVfdGhyZWFkX2lkKGZkLCB0c3RhdGUsIHRzdGF0ZSA9PSBjdXJyZW50X3RocmVhZCk7CisgICAgICAgIGR1bXBfdHJhY2ViYWNrKGZkLCB0c3RhdGUsIDApOworICAgICAgICB0c3RhdGUgPSBQeVRocmVhZFN0YXRlX05leHQodHN0YXRlKTsKKyAgICAgICAgbnRocmVhZHMrKzsKKyAgICB9IHdoaWxlICh0c3RhdGUgIT0gTlVMTCk7CisKKyAgICByZXR1cm4gTlVMTDsKK30KKwpkaWZmIC0tZ2l0IGEvUkVBRE1FIGIvUkVBRE1FCmluZGV4IDJlZDFjMDUuLjE4MWQ3OGYgMTAwNjQ0Ci0tLSBhL1JFQURNRQorKysgYi9SRUFETUUKQEAgLTEsNSArMSw1IEBACi1UaGlzIGlzIFB5dGhvbiB2ZXJzaW9uIDMuMi4zIHJjMQotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1RoaXMgaXMgUHl0aG9uIHZlcnNpb24gMy4zLjAgYWxwaGEgMQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAKIENvcHlyaWdodCAoYykgMjAwMSwgMjAwMiwgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCwgMjAxMSwKIDIwMTIgUHl0aG9uIFNvZnR3YXJlIEZvdW5kYXRpb24uICBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtNTAsOSArNTAsOSBAQAogLS0tLS0tLS0tLQogCiBXZSB0cnkgdG8gaGF2ZSBhIGNvbXByZWhlbnNpdmUgb3ZlcnZpZXcgb2YgdGhlIGNoYW5nZXMgaW4gdGhlICJXaGF0J3MgTmV3IGluCi1QeXRob24gMy4yIiBkb2N1bWVudCwgZm91bmQgYXQKK1B5dGhvbiAzLjMiIGRvY3VtZW50LCBmb3VuZCBhdAogCi0gICAgaHR0cDovL2RvY3MucHl0aG9uLm9yZy8zLjIvd2hhdHNuZXcvMy4yLmh0bWwKKyAgICBodHRwOi8vZG9jcy5weXRob24ub3JnLzMuMy93aGF0c25ldy8zLjMuaHRtbAogCiBGb3IgYSBtb3JlIGRldGFpbGVkIGNoYW5nZSBsb2csIHJlYWQgTWlzYy9ORVdTICh0aG91Z2ggdGhpcyBmaWxlLCB0b28sIGlzCiBpbmNvbXBsZXRlLCBhbmQgYWxzbyBkb2Vzbid0IGxpc3QgYW55dGhpbmcgbWVyZ2VkIGluIGZyb20gdGhlIDIuNyByZWxlYXNlIHVuZGVyCkBAIC02NSw5ICs2NSw5IEBACiBEb2N1bWVudGF0aW9uCiAtLS0tLS0tLS0tLS0tCiAKLURvY3VtZW50YXRpb24gZm9yIFB5dGhvbiAzLjIgaXMgb25saW5lLCB1cGRhdGVkIGRhaWx5OgorRG9jdW1lbnRhdGlvbiBmb3IgUHl0aG9uIDMuMyBpcyBvbmxpbmUsIHVwZGF0ZWQgZGFpbHk6CiAKLSAgICBodHRwOi8vZG9jcy5weXRob24ub3JnLzMuMi8KKyAgICBodHRwOi8vZG9jcy5weXRob24ub3JnLzMuMy8KIAogSXQgY2FuIGFsc28gYmUgZG93bmxvYWRlZCBpbiBtYW55IGZvcm1hdHMgZm9yIGZhc3RlciBhY2Nlc3MuICBUaGUgZG9jdW1lbnRhdGlvbgogaXMgZG93bmxvYWRhYmxlIGluIEhUTUwsIFBERiwgYW5kIHJlU3RydWN0dXJlZFRleHQgZm9ybWF0czsgdGhlIGxhdHRlciB2ZXJzaW9uCkBAIC04NSwxOCArODUsMTYgQEAKIEEgc291cmNlLXRvLXNvdXJjZSB0cmFuc2xhdGlvbiB0b29sLCAiMnRvMyIsIGNhbiB0YWtlIGNhcmUgb2YgdGhlIG11bmRhbmUgdGFzawogb2YgY29udmVydGluZyBsYXJnZSBhbW91bnRzIG9mIHNvdXJjZSBjb2RlLiAgSXQgaXMgbm90IGEgY29tcGxldGUgc29sdXRpb24gYnV0CiBpcyBjb21wbGVtZW50ZWQgYnkgdGhlIGRlcHJlY2F0aW9uIHdhcm5pbmdzIGluIDIuNi4gIFNlZQotaHR0cDovL2RvY3MucHl0aG9uLm9yZy8zLjIvbGlicmFyeS8ydG8zLmh0bWwgZm9yIG1vcmUgaW5mb3JtYXRpb24uCitodHRwOi8vZG9jcy5weXRob24ub3JnLzMuMy9saWJyYXJ5LzJ0bzMuaHRtbCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KIAogCiBUZXN0aW5nCiAtLS0tLS0tCiAKLVRvIHRlc3QgdGhlIGludGVycHJldGVyLCB0eXBlICJtYWtlIHRlc3QiIGluIHRoZSB0b3AtbGV2ZWwgZGlyZWN0b3J5LiAgVGhpcyBydW5zCi10aGUgdGVzdCBzZXQgdHdpY2UgKG9uY2Ugd2l0aCBubyBjb21waWxlZCBmaWxlcywgb25jZSB3aXRoIHRoZSBjb21waWxlZCBmaWxlcwotbGVmdCBieSB0aGUgcHJldmlvdXMgdGVzdCBydW4pLiAgVGhlIHRlc3Qgc2V0IHByb2R1Y2VzIHNvbWUgb3V0cHV0LiAgWW91IGNhbgotZ2VuZXJhbGx5IGlnbm9yZSB0aGUgbWVzc2FnZXMgYWJvdXQgc2tpcHBlZCB0ZXN0cyBkdWUgdG8gb3B0aW9uYWwgZmVhdHVyZXMgd2hpY2gKLWNhbid0IGJlIGltcG9ydGVkLiAgSWYgYSBtZXNzYWdlIGlzIHByaW50ZWQgYWJvdXQgYSBmYWlsZWQgdGVzdCBvciBhIHRyYWNlYmFjawotb3IgY29yZSBkdW1wIGlzIHByb2R1Y2VkLCBzb21ldGhpbmcgaXMgd3JvbmcuCitUbyB0ZXN0IHRoZSBpbnRlcnByZXRlciwgdHlwZSAibWFrZSB0ZXN0IiBpbiB0aGUgdG9wLWxldmVsIGRpcmVjdG9yeS4gIFRoZSB0ZXN0CitzZXQgcHJvZHVjZXMgc29tZSBvdXRwdXQuICBZb3UgY2FuIGdlbmVyYWxseSBpZ25vcmUgdGhlIG1lc3NhZ2VzIGFib3V0IHNraXBwZWQKK3Rlc3RzIGR1ZSB0byBvcHRpb25hbCBmZWF0dXJlcyB3aGljaCBjYW4ndCBiZSBpbXBvcnRlZC4gIElmIGEgbWVzc2FnZSBpcyBwcmludGVkCithYm91dCBhIGZhaWxlZCB0ZXN0IG9yIGEgdHJhY2ViYWNrIG9yIGNvcmUgZHVtcCBpcyBwcm9kdWNlZCwgc29tZXRoaW5nIGlzIHdyb25nLgogCiBCeSBkZWZhdWx0LCB0ZXN0cyBhcmUgcHJldmVudGVkIGZyb20gb3ZlcnVzaW5nIHJlc291cmNlcyBsaWtlIGRpc2sgc3BhY2UgYW5kCiBtZW1vcnkuICBUbyBlbmFibGUgdGhlc2UgdGVzdHMsIHJ1biAibWFrZSB0ZXN0YWxsIi4KQEAgLTEyNSw4ICsxMjMsOCBAQAogSW5zdGFsbCB0aGF0IHZlcnNpb24gdXNpbmcgIm1ha2UgaW5zdGFsbCIuICBJbnN0YWxsIGFsbCBvdGhlciB2ZXJzaW9ucyB1c2luZwogIm1ha2UgYWx0aW5zdGFsbCIuCiAKLUZvciBleGFtcGxlLCBpZiB5b3Ugd2FudCB0byBpbnN0YWxsIFB5dGhvbiAyLjUsIDIuNiBhbmQgMy4yIHdpdGggMi42IGJlaW5nIHRoZQotcHJpbWFyeSB2ZXJzaW9uLCB5b3Ugd291bGQgZXhlY3V0ZSAibWFrZSBpbnN0YWxsIiBpbiB5b3VyIDIuNiBidWlsZCBkaXJlY3RvcnkKK0ZvciBleGFtcGxlLCBpZiB5b3Ugd2FudCB0byBpbnN0YWxsIFB5dGhvbiAyLjYsIDIuNyBhbmQgMy4zIHdpdGggMi43IGJlaW5nIHRoZQorcHJpbWFyeSB2ZXJzaW9uLCB5b3Ugd291bGQgZXhlY3V0ZSAibWFrZSBpbnN0YWxsIiBpbiB5b3VyIDIuNyBidWlsZCBkaXJlY3RvcnkKIGFuZCAibWFrZSBhbHRpbnN0YWxsIiBpbiB0aGUgb3RoZXJzLgogCiAKQEAgLTE2MSw3ICsxNTksNyBAQAogUmVsZWFzZSBTY2hlZHVsZQogLS0tLS0tLS0tLS0tLS0tLQogCi1TZWUgUEVQIDM5MiBmb3IgcmVsZWFzZSBkZXRhaWxzOiBodHRwOi8vd3d3LnB5dGhvbi5vcmcvZGV2L3BlcHMvcGVwLTAzOTIvCitTZWUgUEVQIDM5OCBmb3IgcmVsZWFzZSBkZXRhaWxzOiBodHRwOi8vd3d3LnB5dGhvbi5vcmcvZGV2L3BlcHMvcGVwLTAzOTgvCiAKIAogQ29weXJpZ2h0IGFuZCBMaWNlbnNlIEluZm9ybWF0aW9uCmRpZmYgLS1naXQgYS9Ub29scy9idWlsZGJvdC9leHRlcm5hbC1jb21tb24uYmF0IGIvVG9vbHMvYnVpbGRib3QvZXh0ZXJuYWwtY29tbW9uLmJhdAppbmRleCAxZmYyODJlLi4yNDRkNWY1IDEwMDY0NAotLS0gYS9Ub29scy9idWlsZGJvdC9leHRlcm5hbC1jb21tb24uYmF0CisrKyBiL1Rvb2xzL2J1aWxkYm90L2V4dGVybmFsLWNvbW1vbi5iYXQKQEAgLTQxLDMgKzQxLDggQEAKICAgcmQgL3MvcSBzcWxpdGUtc291cmNlLTMuNi4yMQogICBzdm4gZXhwb3J0IGh0dHA6Ly9zdm4ucHl0aG9uLm9yZy9wcm9qZWN0cy9leHRlcm5hbC9zcWxpdGUtMy43LjQKICkKKworQHJlbSBsem1hCitpZiBub3QgZXhpc3QgeHotNS4wLjMgKAorICBzdm4gZXhwb3J0IGh0dHA6Ly9zdm4ucHl0aG9uLm9yZy9wcm9qZWN0cy9leHRlcm5hbC94ei01LjAuMworKQpkaWZmIC0tZ2l0IGEvVG9vbHMvZ2RiL2xpYnB5dGhvbi5weSBiL1Rvb2xzL2dkYi9saWJweXRob24ucHkKaW5kZXggOGJiYmIxMC4uMzAzNDdjYiAxMDA2NDQKLS0tIGEvVG9vbHMvZ2RiL2xpYnB5dGhvbi5weQorKysgYi9Ub29scy9nZGIvbGlicHl0aG9uLnB5CkBAIC00OSw2ICs0OSwxMSBAQAogX3R5cGVfY2hhcl9wdHIgPSBnZGIubG9va3VwX3R5cGUoJ2NoYXInKS5wb2ludGVyKCkgIyBjaGFyKgogX3R5cGVfdW5zaWduZWRfY2hhcl9wdHIgPSBnZGIubG9va3VwX3R5cGUoJ3Vuc2lnbmVkIGNoYXInKS5wb2ludGVyKCkgIyB1bnNpZ25lZCBjaGFyKgogX3R5cGVfdm9pZF9wdHIgPSBnZGIubG9va3VwX3R5cGUoJ3ZvaWQnKS5wb2ludGVyKCkgIyB2b2lkKgorX3R5cGVfdW5zaWduZWRfc2hvcnRfcHRyID0gZ2RiLmxvb2t1cF90eXBlKCd1bnNpZ25lZCBzaG9ydCcpLnBvaW50ZXIoKQorX3R5cGVfdW5zaWduZWRfaW50X3B0ciA9IGdkYi5sb29rdXBfdHlwZSgndW5zaWduZWQgaW50JykucG9pbnRlcigpCisKKyMgdmFsdWUgY29tcHV0ZWQgbGF0ZXIsIHNlZSBQeVVuaWNvZGVPYmplY3RQdHIucHJveHkoKQorX2lzX3BlcDM5MyA9IE5vbmUKIAogU0laRU9GX1ZPSURfUCA9IF90eXBlX3ZvaWRfcHRyLnNpemVvZgogCkBAIC0zMjIsNyArMzI3LDYgQEAKIAogICAgICAgICBuYW1lX21hcCA9IHsnYm9vbCc6IFB5Qm9vbE9iamVjdFB0ciwKICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzb2JqJzogUHlDbGFzc09iamVjdFB0ciwKLSAgICAgICAgICAgICAgICAgICAgJ2luc3RhbmNlJzogUHlJbnN0YW5jZU9iamVjdFB0ciwKICAgICAgICAgICAgICAgICAgICAgJ05vbmVUeXBlJzogUHlOb25lU3RydWN0UHRyLAogICAgICAgICAgICAgICAgICAgICAnZnJhbWUnOiBQeUZyYW1lT2JqZWN0UHRyLAogICAgICAgICAgICAgICAgICAgICAnc2V0JyA6IFB5U2V0T2JqZWN0UHRyLApAQCAtMzk2LDcgKzQwMCw3IEBACiAKIAogZGVmIF93cml0ZV9pbnN0YW5jZV9yZXByKG91dCwgdmlzaXRlZCwgbmFtZSwgcHlvcF9hdHRyZGljdCwgYWRkcmVzcyk6Ci0gICAgJycnU2hhcmVkIGNvZGUgZm9yIHVzZSBieSBvbGQtc3R5bGUgYW5kIG5ldy1zdHlsZSBjbGFzc2VzOgorICAgICcnJ1NoYXJlZCBjb2RlIGZvciB1c2UgYnkgYWxsIGNsYXNzZXM6CiAgICAgd3JpdGUgYSByZXByZXNlbnRhdGlvbiB0byBmaWxlLWxpa2Ugb2JqZWN0ICJvdXQiJycnCiAgICAgb3V0LndyaXRlKCc8JykKICAgICBvdXQud3JpdGUobmFtZSkKQEAgLTQ3OSw3ICs0ODMsNyBAQAogCiAgICAgZGVmIHByb3h5dmFsKHNlbGYsIHZpc2l0ZWQpOgogICAgICAgICAnJycKLSAgICAgICAgU3VwcG9ydCBmb3IgbmV3LXN0eWxlIGNsYXNzZXMuCisgICAgICAgIFN1cHBvcnQgZm9yIGNsYXNzZXMuCiAKICAgICAgICAgQ3VycmVudGx5IHdlIGp1c3QgbG9jYXRlIHRoZSBkaWN0aW9uYXJ5IHVzaW5nIGEgdHJhbnNsaXRlcmF0aW9uIHRvCiAgICAgICAgIHB5dGhvbiBvZiBfUHlPYmplY3RfR2V0RGljdFB0ciwgaWdub3JpbmcgZGVzY3JpcHRvcnMKQEAgLTQ5Niw3ICs1MDAsNyBAQAogICAgICAgICAgICAgYXR0cl9kaWN0ID0ge30KICAgICAgICAgdHBfbmFtZSA9IHNlbGYuc2FmZV90cF9uYW1lKCkKIAotICAgICAgICAjIE5ldy1zdHlsZSBjbGFzczoKKyAgICAgICAgIyBDbGFzczoKICAgICAgICAgcmV0dXJuIEluc3RhbmNlUHJveHkodHBfbmFtZSwgYXR0cl9kaWN0LCBsb25nKHNlbGYuX2dkYnZhbCkpCiAKICAgICBkZWYgd3JpdGVfcmVwcihzZWxmLCBvdXQsIHZpc2l0ZWQpOgpAQCAtNjY4LDQ0ICs2NzIsNiBAQAogICAgICAgICAgICAgcHlvcF92YWx1ZS53cml0ZV9yZXByKG91dCwgdmlzaXRlZCkKICAgICAgICAgb3V0LndyaXRlKCd9JykKIAotY2xhc3MgUHlJbnN0YW5jZU9iamVjdFB0cihQeU9iamVjdFB0cik6Ci0gICAgX3R5cGVuYW1lID0gJ1B5SW5zdGFuY2VPYmplY3QnCi0KLSAgICBkZWYgcHJveHl2YWwoc2VsZiwgdmlzaXRlZCk6Ci0gICAgICAgICMgR3VhcmQgYWdhaW5zdCBpbmZpbml0ZSBsb29wczoKLSAgICAgICAgaWYgc2VsZi5hc19hZGRyZXNzKCkgaW4gdmlzaXRlZDoKLSAgICAgICAgICAgIHJldHVybiBQcm94eUFscmVhZHlWaXNpdGVkKCc8Li4uPicpCi0gICAgICAgIHZpc2l0ZWQuYWRkKHNlbGYuYXNfYWRkcmVzcygpKQotCi0gICAgICAgICMgR2V0IG5hbWUgb2YgY2xhc3M6Ci0gICAgICAgIGluX2NsYXNzID0gc2VsZi5weW9wX2ZpZWxkKCdpbl9jbGFzcycpCi0gICAgICAgIGNsX25hbWUgPSBpbl9jbGFzcy5weW9wX2ZpZWxkKCdjbF9uYW1lJykucHJveHl2YWwodmlzaXRlZCkKLQotICAgICAgICAjIEdldCBkaWN0aW9uYXJ5IG9mIGluc3RhbmNlIGF0dHJpYnV0ZXM6Ci0gICAgICAgIGluX2RpY3QgPSBzZWxmLnB5b3BfZmllbGQoJ2luX2RpY3QnKS5wcm94eXZhbCh2aXNpdGVkKQotCi0gICAgICAgICMgT2xkLXN0eWxlIGNsYXNzOgotICAgICAgICByZXR1cm4gSW5zdGFuY2VQcm94eShjbF9uYW1lLCBpbl9kaWN0LCBsb25nKHNlbGYuX2dkYnZhbCkpCi0KLSAgICBkZWYgd3JpdGVfcmVwcihzZWxmLCBvdXQsIHZpc2l0ZWQpOgotICAgICAgICAjIEd1YXJkIGFnYWluc3QgaW5maW5pdGUgbG9vcHM6Ci0gICAgICAgIGlmIHNlbGYuYXNfYWRkcmVzcygpIGluIHZpc2l0ZWQ6Ci0gICAgICAgICAgICBvdXQud3JpdGUoJzwuLi4+JykKLSAgICAgICAgICAgIHJldHVybgotICAgICAgICB2aXNpdGVkLmFkZChzZWxmLmFzX2FkZHJlc3MoKSkKLQotICAgICAgICAjIE9sZC1zdHlsZSBjbGFzczoKLQotICAgICAgICAjIEdldCBuYW1lIG9mIGNsYXNzOgotICAgICAgICBpbl9jbGFzcyA9IHNlbGYucHlvcF9maWVsZCgnaW5fY2xhc3MnKQotICAgICAgICBjbF9uYW1lID0gaW5fY2xhc3MucHlvcF9maWVsZCgnY2xfbmFtZScpLnByb3h5dmFsKHZpc2l0ZWQpCi0KLSAgICAgICAgIyBHZXQgZGljdGlvbmFyeSBvZiBpbnN0YW5jZSBhdHRyaWJ1dGVzOgotICAgICAgICBweW9wX2luX2RpY3QgPSBzZWxmLnB5b3BfZmllbGQoJ2luX2RpY3QnKQotCi0gICAgICAgIF93cml0ZV9pbnN0YW5jZV9yZXByKG91dCwgdmlzaXRlZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xfbmFtZSwgcHlvcF9pbl9kaWN0LCBzZWxmLmFzX2FkZHJlc3MoKSkKLQogY2xhc3MgUHlMaXN0T2JqZWN0UHRyKFB5T2JqZWN0UHRyKToKICAgICBfdHlwZW5hbWUgPSAnUHlMaXN0T2JqZWN0JwogCkBAIC0xMTIzLDE1ICsxMDg5LDQ2IEBACiAgICAgICAgIHJldHVybiBfdHlwZV9QeV9VTklDT0RFLnNpemVvZgogCiAgICAgZGVmIHByb3h5dmFsKHNlbGYsIHZpc2l0ZWQpOgotICAgICAgICAjIEZyb20gdW5pY29kZW9iamVjdC5oOgotICAgICAgICAjICAgICBQeV9zc2l6ZV90IGxlbmd0aDsgIC8qIExlbmd0aCBvZiByYXcgVW5pY29kZSBkYXRhIGluIGJ1ZmZlciAqLwotICAgICAgICAjICAgICBQeV9VTklDT0RFICpzdHI7ICAgIC8qIFJhdyBVbmljb2RlIGJ1ZmZlciAqLwotICAgICAgICBmaWVsZF9sZW5ndGggPSBsb25nKHNlbGYuZmllbGQoJ2xlbmd0aCcpKQotICAgICAgICBmaWVsZF9zdHIgPSBzZWxmLmZpZWxkKCdzdHInKQorICAgICAgICBnbG9iYWwgX2lzX3BlcDM5MworICAgICAgICBpZiBfaXNfcGVwMzkzIGlzIE5vbmU6CisgICAgICAgICAgICBmaWVsZHMgPSBnZGIubG9va3VwX3R5cGUoJ1B5VW5pY29kZU9iamVjdCcpLnRhcmdldCgpLmZpZWxkcygpCisgICAgICAgICAgICBfaXNfcGVwMzkzID0gJ2RhdGEnIGluIFtmLm5hbWUgZm9yIGYgaW4gZmllbGRzXQorICAgICAgICBpZiBfaXNfcGVwMzkzOgorICAgICAgICAgICAgIyBQeXRob24gMy4zIGFuZCBuZXdlcgorICAgICAgICAgICAgbWF5X2hhdmVfc3Vycm9nYXRlcyA9IEZhbHNlCisgICAgICAgICAgICBjb21wYWN0ID0gc2VsZi5maWVsZCgnX2Jhc2UnKQorICAgICAgICAgICAgYXNjaWkgPSBjb21wYWN0WydfYmFzZSddCisgICAgICAgICAgICBzdGF0ZSA9IGFzY2lpWydzdGF0ZSddCisgICAgICAgICAgICBpc19jb21wYWN0X2FzY2lpID0gKGludChzdGF0ZVsnYXNjaWknXSkgYW5kIGludChzdGF0ZVsnY29tcGFjdCddKSkKKyAgICAgICAgICAgIGlmIG5vdCBpbnQoc3RhdGVbJ3JlYWR5J10pOgorICAgICAgICAgICAgICAgICMgc3RyaW5nIGlzIG5vdCByZWFkeQorICAgICAgICAgICAgICAgIGZpZWxkX2xlbmd0aCA9IGxvbmcoY29tcGFjdFsnd3N0cl9sZW5ndGgnXSkKKyAgICAgICAgICAgICAgICBtYXlfaGF2ZV9zdXJyb2dhdGVzID0gVHJ1ZQorICAgICAgICAgICAgICAgIGZpZWxkX3N0ciA9IGFzY2lpWyd3c3RyJ10KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZmllbGRfbGVuZ3RoID0gbG9uZyhhc2NpaVsnbGVuZ3RoJ10pCisgICAgICAgICAgICAgICAgaWYgaXNfY29tcGFjdF9hc2NpaToKKyAgICAgICAgICAgICAgICAgICAgZmllbGRfc3RyID0gYXNjaWkuYWRkcmVzcyArIDEKKyAgICAgICAgICAgICAgICBlbGlmIGludChzdGF0ZVsnY29tcGFjdCddKToKKyAgICAgICAgICAgICAgICAgICAgZmllbGRfc3RyID0gY29tcGFjdC5hZGRyZXNzICsgMQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGZpZWxkX3N0ciA9IHNlbGYuZmllbGQoJ2RhdGEnKVsnYW55J10KKyAgICAgICAgICAgICAgICByZXByX2tpbmQgPSBpbnQoc3RhdGVbJ2tpbmQnXSkKKyAgICAgICAgICAgICAgICBpZiByZXByX2tpbmQgPT0gMToKKyAgICAgICAgICAgICAgICAgICAgZmllbGRfc3RyID0gZmllbGRfc3RyLmNhc3QoX3R5cGVfdW5zaWduZWRfY2hhcl9wdHIpCisgICAgICAgICAgICAgICAgZWxpZiByZXByX2tpbmQgPT0gMjoKKyAgICAgICAgICAgICAgICAgICAgZmllbGRfc3RyID0gZmllbGRfc3RyLmNhc3QoX3R5cGVfdW5zaWduZWRfc2hvcnRfcHRyKQorICAgICAgICAgICAgICAgIGVsaWYgcmVwcl9raW5kID09IDQ6CisgICAgICAgICAgICAgICAgICAgIGZpZWxkX3N0ciA9IGZpZWxkX3N0ci5jYXN0KF90eXBlX3Vuc2lnbmVkX2ludF9wdHIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIFB5dGhvbiAzLjIgYW5kIGVhcmxpZXIKKyAgICAgICAgICAgIGZpZWxkX2xlbmd0aCA9IGxvbmcoc2VsZi5maWVsZCgnbGVuZ3RoJykpCisgICAgICAgICAgICBmaWVsZF9zdHIgPSBzZWxmLmZpZWxkKCdzdHInKQorICAgICAgICAgICAgbWF5X2hhdmVfc3Vycm9nYXRlcyA9IHNlbGYuY2hhcl93aWR0aCgpID09IDIKIAogICAgICAgICAjIEdhdGhlciBhIGxpc3Qgb2YgaW50cyBmcm9tIHRoZSBQeV9VTklDT0RFIGFycmF5OyB0aGVzZSBhcmUgZWl0aGVyCi0gICAgICAgICMgVUNTLTIgb3IgVUNTLTQgY29kZSBwb2ludHM6Ci0gICAgICAgIGlmIHNlbGYuY2hhcl93aWR0aCgpID4gMjoKKyAgICAgICAgIyBVQ1MtMSwgVUNTLTIgb3IgVUNTLTQgY29kZSBwb2ludHM6CisgICAgICAgIGlmIG5vdCBtYXlfaGF2ZV9zdXJyb2dhdGVzOgogICAgICAgICAgICAgUHlfVU5JQ09ERXMgPSBbaW50KGZpZWxkX3N0cltpXSkgZm9yIGkgaW4gc2FmZV9yYW5nZShmaWVsZF9sZW5ndGgpXQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgIyBBIG1vcmUgZWxhYm9yYXRlIHJvdXRpbmUgaWYgc2l6ZW9mKFB5X1VOSUNPREUpIGlzIDIgaW4gdGhlCmRpZmYgLS1naXQgYS9Ub29scy9pb2JlbmNoL2lvYmVuY2gucHkgYi9Ub29scy9pb2JlbmNoL2lvYmVuY2gucHkKaW5kZXggNWVjNmYxNy4uNDA4YmU3YiAxMDA2NDQKLS0tIGEvVG9vbHMvaW9iZW5jaC9pb2JlbmNoLnB5CisrKyBiL1Rvb2xzL2lvYmVuY2gvaW9iZW5jaC5weQpAQCAtMSwxMyArMSwxNCBAQAogIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KICMgVGhpcyBmaWxlIHNob3VsZCBiZSBrZXB0IGNvbXBhdGlibGUgd2l0aCBib3RoIFB5dGhvbiAyLjYgYW5kIFB5dGhvbiA+PSAzLjAuCiAKLWltcG9ydCB0aW1lCitpbXBvcnQgZnVuY3Rvb2xzCitpbXBvcnQgaGFzaGxpYgoraW1wb3J0IGl0ZXJ0b29scwogaW1wb3J0IG9zCitpbXBvcnQgcGxhdGZvcm0KIGltcG9ydCByZQogaW1wb3J0IHN5cwotaW1wb3J0IGhhc2hsaWIKLWltcG9ydCBmdW5jdG9vbHMKLWltcG9ydCBpdGVydG9vbHMKK2ltcG9ydCB0aW1lCiBmcm9tIG9wdHBhcnNlIGltcG9ydCBPcHRpb25QYXJzZXIKIAogb3V0ID0gc3lzLnN0ZG91dApAQCAtMzA3LDYgKzMwOCwxNiBAQAogICAgICAgICAibGFyZ2UiOiAyLAogICAgIH0KIAorICAgIHByaW50KCJQeXRob24gJXMiICUgc3lzLnZlcnNpb24pCisgICAgaWYgc3lzLnZlcnNpb25faW5mbyA8ICgzLCAzKToKKyAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPiAweGZmZmY6CisgICAgICAgICAgICB0ZXh0ID0gIlVDUy00ICh3aWRlIGJ1aWxkKSIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHRleHQgPSAiVVRGLTE2IChuYXJyb3cgYnVpbGQpIgorICAgIGVsc2U6CisgICAgICAgIHRleHQgPSAiUEVQIDM5MyIKKyAgICBwcmludCgiVW5pY29kZTogJXMiICUgdGV4dCkKKyAgICBwcmludChwbGF0Zm9ybS5wbGF0Zm9ybSgpKQogICAgIGJpbmFyeV9maWxlcyA9IGxpc3QoZ2V0X2JpbmFyeV9maWxlcygpKQogICAgIHRleHRfZmlsZXMgPSBsaXN0KGdldF90ZXh0X2ZpbGVzKCkpCiAgICAgaWYgImIiIGluIG9wdGlvbnM6CmRpZmYgLS1naXQgYS9Ub29scy9tc2kvbXNpLnB5IGIvVG9vbHMvbXNpL21zaS5weQppbmRleCA1MDg4MTZkLi5hMThkZWJjIDEwMDY0NAotLS0gYS9Ub29scy9tc2kvbXNpLnB5CisrKyBiL1Rvb2xzL21zaS9tc2kucHkKQEAgLTIsMTIgKzIsMTEgQEAKICMgKEMpIDIwMDMgTWFydGluIHYuIExvZXdpcwogIyBTZWUgIkZPTyIgaW4gY29tbWVudHMgcmVmZXJzIHRvIE1TRE4gc2VjdGlvbnMgd2l0aCB0aGUgdGl0bGUgRk9PLgogaW1wb3J0IG1zaWxpYiwgc2NoZW1hLCBzZXF1ZW5jZSwgb3MsIGdsb2IsIHRpbWUsIHJlLCBzaHV0aWwsIHppcGZpbGUKK2ltcG9ydCBzdWJwcm9jZXNzLCB0ZW1wZmlsZQogZnJvbSBtc2lsaWIgaW1wb3J0IEZlYXR1cmUsIENBQiwgRGlyZWN0b3J5LCBEaWFsb2csIEJpbmFyeSwgYWRkX2RhdGEKIGltcG9ydCB1aXNhbXBsZQogZnJvbSB3aW4zMmNvbS5jbGllbnQgaW1wb3J0IGNvbnN0YW50cwogZnJvbSBkaXN0dXRpbHMuc3Bhd24gaW1wb3J0IGZpbmRfZXhlY3V0YWJsZQotZnJvbSB1dWlkcyBpbXBvcnQgcHJvZHVjdF9jb2RlcwotaW1wb3J0IHRlbXBmaWxlCiAKICMgU2V0dGluZ3MgY2FuIGJlIG92ZXJyaWRkZW4gaW4gY29uZmlnLnB5IGJlbG93CiAjIDAgZm9yIG9mZmljaWFsIHB5dGhvbi5vcmcgcmVsZWFzZXMKQEAgLTc3LDE5ICs3NiwxNiBAQAogCiBpZiBzbmFwc2hvdDoKICAgICBjdXJyZW50X3ZlcnNpb24gPSAiJXMuJXMuJXMiICUgKG1ham9yLCBtaW5vciwgaW50KHRpbWUudGltZSgpLzM2MDAvMjQpKQotICAgIHByb2R1Y3RfY29kZSA9IG1zaWxpYi5nZW5fdXVpZCgpCi1lbHNlOgotICAgIHByb2R1Y3RfY29kZSA9IHByb2R1Y3RfY29kZXNbY3VycmVudF92ZXJzaW9uXQogCiBpZiBmdWxsX2N1cnJlbnRfdmVyc2lvbiBpcyBOb25lOgogICAgIGZ1bGxfY3VycmVudF92ZXJzaW9uID0gY3VycmVudF92ZXJzaW9uCiAKIGV4dGVuc2lvbnMgPSBbCi0gICAgJ2J6Mi5weWQnLAogICAgICdweWV4cGF0LnB5ZCcsCiAgICAgJ3NlbGVjdC5weWQnLAogICAgICd1bmljb2RlZGF0YS5weWQnLAogICAgICd3aW5zb3VuZC5weWQnLAorICAgICdfYnoyLnB5ZCcsCiAgICAgJ19lbGVtZW50dHJlZS5weWQnLAogICAgICdfc29ja2V0LnB5ZCcsCiAgICAgJ19zc2wucHlkJywKQEAgLTEwMCw3ICs5Niw4IEBACiAgICAgJ19jdHlwZXNfdGVzdC5weWQnLAogICAgICdfc3FsaXRlMy5weWQnLAogICAgICdfaGFzaGxpYi5weWQnLAotICAgICdfbXVsdGlwcm9jZXNzaW5nLnB5ZCcKKyAgICAnX211bHRpcHJvY2Vzc2luZy5weWQnLAorICAgICdfbHptYS5weWQnCiBdCiAKICMgV2VsbC1rbm93biBjb21wb25lbnQgVVVJRHMKQEAgLTExOSw2ICsxMTYsNyBAQAogICAgICIzMCI6Ins2OTUzYmMzYi02NzY4LTQyOTEtODQxMC03OTE0Y2U2ZTJjYTh9IiwKICAgICAiMzEiOiJ7NGFmY2JhMGItMTNlNC00N2MzLWJlYmUtNDc3NDI4YjQ2OTEzfSIsCiAgICAgIjMyIjoiezNmZjk1MzE1LTEwOTYtNGQzMS1iZDg2LTYwMWQ1NDM4YWQ1ZX0iLAorICAgICIzMyI6IntmNzU4MWNhNC1kMzY4LTRlZWEtOGY4Mi1kNDhjNjRjNGYwNDd9IiwKICAgICB9IFttYWpvcittaW5vcl0KIAogIyBDb21wdXRlIHRoZSBuYW1lIHRoYXQgU3BoaW54IGdpdmVzIHRvIHRoZSBkb2NmaWxlCkBAIC0xODUsMTIgKzE4MywxOSBAQAogbXNpbGliLnNldF9hcmNoX2Zyb21fZmlsZShkbGxfcGF0aCkKIGlmIG1zaWxpYi5wZV90eXBlKGRsbF9wYXRoKSAhPSBtc2lsaWIucGVfdHlwZSgibXNpc3VwcG9ydC5kbGwiKToKICAgICByYWlzZSBTeXN0ZW1FcnJvcigibXNpc3VwcG9ydC5kbGwgZm9yIGluY29ycmVjdCBhcmNoaXRlY3R1cmUiKQorCiBpZiBtc2lsaWIuV2luNjQ6CiAgICAgdXBncmFkZV9jb2RlID0gdXBncmFkZV9jb2RlXzY0Ci0gICAgIyBCdW1wIHRoZSBsYXN0IGRpZ2l0IG9mIHRoZSBjb2RlIGJ5IG9uZSwgc28gdGhhdCAzMi1iaXQgYW5kIDY0LWJpdAotICAgICMgcmVsZWFzZXMgZ2V0IHNlcGFyYXRlIHByb2R1Y3QgY29kZXMKLSAgICBkaWdpdCA9IGhleCgoaW50KHByb2R1Y3RfY29kZVstMl0sMTYpKzEpJTE2KVstMV0KLSAgICBwcm9kdWN0X2NvZGUgPSBwcm9kdWN0X2NvZGVbOi0yXSArIGRpZ2l0ICsgJ30nCisKK2lmIHNuYXBzaG90OgorICAgIHByb2R1Y3RfY29kZSA9IG1zaWxpYi5nZW5fdXVpZCgpCitlbHNlOgorICAgICMgb2ZmaWNpYWwgcmVsZWFzZTogZ2VuZXJhdGUgVVVJRCBmcm9tIHRoZSBkb3dubG9hZCBsaW5rIHRoYXQgdGhlIGZpbGUgd2lsbCBoYXZlCisgICAgaW1wb3J0IHV1aWQKKyAgICBwcm9kdWN0X2NvZGUgPSB1dWlkLnV1aWQzKHV1aWQuTkFNRVNQQUNFX1VSTCwKKyAgICAgICAgICAgICAgICAgICAgJ2h0dHA6Ly93d3cucHl0aG9uLm9yZy9mdHAvcHl0aG9uLyVzLiVzLiVzL3B5dGhvbi0lcyVzLm1zaScgJQorICAgICAgICAgICAgICAgICAgICAobWFqb3IsIG1pbm9yLCBtaWNybywgZnVsbF9jdXJyZW50X3ZlcnNpb24sIG1zaWxpYi5hcmNoX2V4dCkpCisgICAgcHJvZHVjdF9jb2RlID0gJ3slc30nICUgcHJvZHVjdF9jb2RlCiAKIGlmIHRlc3RwYWNrYWdlOgogICAgIGV4dCA9ICdweCcKQEAgLTkwNCwxNiArOTA5LDI3IEBACiAgICAgICAgICAgICBrd1snY29tcG9uZW50ZmxhZ3MnXSA9IDIgI21zaWRiQ29tcG9uZW50QXR0cmlidXRlc09wdGlvbmFsCiAgICAgICAgIERpcmVjdG9yeS5fX2luaXRfXyhzZWxmLCAqYXJncywgKiprdykKIAotICAgIGRlZiBjaGVja191bnBhY2thZ2VkKHNlbGYpOgotICAgICAgICBzZWxmLnVucGFja2FnZWRfZmlsZXMuZGlzY2FyZCgnX19weWNhY2hlX18nKQotICAgICAgICBzZWxmLnVucGFja2FnZWRfZmlsZXMuZGlzY2FyZCgnLnN2bicpCi0gICAgICAgIGlmIHNlbGYudW5wYWNrYWdlZF9maWxlczoKLSAgICAgICAgICAgIHByaW50ICJXYXJuaW5nOiBVbnBhY2thZ2VkIGZpbGVzIGluICVzIiAlIHNlbGYuYWJzb2x1dGUKLSAgICAgICAgICAgIHByaW50IHNlbGYudW5wYWNrYWdlZF9maWxlcworZGVmIGhnbWFuaWZlc3QoKToKKyAgICAjIEZldGNoIGZpbGUgbGlzdCBmcm9tIE1lcmN1cmlhbAorICAgIHByb2Nlc3MgPSBzdWJwcm9jZXNzLlBvcGVuKFsnaGcnLCAnbWFuaWZlc3QnXSwgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSkKKyAgICBzdGRvdXQsIHN0ZGVyciA9IHByb2Nlc3MuY29tbXVuaWNhdGUoKQorICAgICMgQ3JlYXRlIG5lc3RlZCBkaXJlY3RvcmllcyBmb3IgZmlsZSB0cmVlCisgICAgcmVzdWx0ID0ge30KKyAgICBmb3IgbGluZSBpbiBzdGRvdXQuc3BsaXRsaW5lcygpOgorICAgICAgICBjb21wb25lbnRzID0gbGluZS5zcGxpdCgnLycpCisgICAgICAgIGQgPSByZXN1bHQKKyAgICAgICAgd2hpbGUgbGVuKGNvbXBvbmVudHMpID4gMToKKyAgICAgICAgICAgIGQxID0gZC5zZXRkZWZhdWx0KGNvbXBvbmVudHNbMF0sIHt9KQorICAgICAgICAgICAgZCA9IGQxCisgICAgICAgICAgICBkZWwgY29tcG9uZW50c1swXQorICAgICAgICBkW2NvbXBvbmVudHNbMF1dID0gTm9uZQorICAgIHJldHVybiByZXN1bHQKKwogCiAjIFNlZSAiRmlsZSBUYWJsZSIsICJDb21wb25lbnQgVGFibGUiLCAiRGlyZWN0b3J5IFRhYmxlIiwKICMgIkZlYXR1cmVDb21wb25lbnRzIFRhYmxlIgogZGVmIGFkZF9maWxlcyhkYik6CisgICAgaGdmaWxlcyA9IGhnbWFuaWZlc3QoKQogICAgIGNhYiA9IENBQigicHl0aG9uIikKICAgICB0bXBmaWxlcyA9IFtdCiAgICAgIyBBZGQgYWxsIGV4ZWN1dGFibGVzLCBpY29ucywgdGV4dCBmaWxlcyBpbnRvIHRoZSBUQVJHRVRESVIgY29tcG9uZW50CkBAIC05NzUsMTA0ICs5OTEsNDAgQEAKIAogICAgICMgQWRkIGFsbCAucHkgZmlsZXMgaW4gTGliLCBleGNlcHQgdGtpbnRlciwgdGVzdAogICAgIGRpcnMgPSBbXQotICAgIHB5ZGlycyA9IFsocm9vdCwiTGliIildCisgICAgcHlkaXJzID0gWyhyb290LCAiTGliIiwgaGdmaWxlc1siTGliIl0sIGRlZmF1bHRfZmVhdHVyZSldCiAgICAgd2hpbGUgcHlkaXJzOgogICAgICAgICAjIENvbW1pdCBldmVyeSBub3cgYW5kIHRoZW4sIG9yIGVsc2UgaW5zdGFsbGVyIHdpbGwgY29tcGxhaW4KICAgICAgICAgZGIuQ29tbWl0KCkKLSAgICAgICAgcGFyZW50LCBkaXIgPSBweWRpcnMucG9wKCkKLSAgICAgICAgaWYgZGlyID09ICIuc3ZuIiBvciBkaXIgPT0gJ19fcHljYWNoZV9fJyBvciBkaXIuc3RhcnRzd2l0aCgicGxhdC0iKToKKyAgICAgICAgcGFyZW50LCBkaXIsIGZpbGVzLCBmZWF0dXJlID0gcHlkaXJzLnBvcCgpCisgICAgICAgIGlmIGRpci5zdGFydHN3aXRoKCJwbGF0LSIpOgogICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgZWxpZiBkaXIgaW4gWyJ0a2ludGVyIiwgImlkbGVsaWIiLCAiSWNvbnMiXToKKyAgICAgICAgaWYgZGlyIGluIFsidGtpbnRlciIsICJpZGxlbGliIiwgInR1cnRsZWRlbW8iXToKICAgICAgICAgICAgIGlmIG5vdCBoYXZlX3RjbDoKICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZmVhdHVyZSA9IHRjbHRrCiAgICAgICAgICAgICB0Y2x0ay5zZXRfY3VycmVudCgpCi0gICAgICAgIGVsaWYgZGlyIGluIFsndGVzdCcsICd0ZXN0cycsICdkYXRhJywgJ291dHB1dCddOgotICAgICAgICAgICAgIyB0ZXN0OiBMaWIsIExpYi9lbWFpbCwgTGliL2N0eXBlcywgTGliL3NxbGl0ZTMKLSAgICAgICAgICAgICMgdGVzdHM6IExpYi9kaXN0dXRpbHMKLSAgICAgICAgICAgICMgZGF0YTogTGliL2VtYWlsL3Rlc3QKLSAgICAgICAgICAgICMgb3V0cHV0OiBMaWIvdGVzdAotICAgICAgICAgICAgdGVzdHN1aXRlLnNldF9jdXJyZW50KCkKKyAgICAgICAgZWxpZiBkaXIgaW4gKCd0ZXN0JywgJ3Rlc3RzJyk6CisgICAgICAgICAgICBmZWF0dXJlID0gdGVzdHN1aXRlCiAgICAgICAgIGVsaWYgbm90IGhhdmVfY3R5cGVzIGFuZCBkaXIgPT0gImN0eXBlcyI6CiAgICAgICAgICAgICBjb250aW51ZQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgZGVmYXVsdF9mZWF0dXJlLnNldF9jdXJyZW50KCkKKyAgICAgICAgZmVhdHVyZS5zZXRfY3VycmVudCgpCiAgICAgICAgIGxpYiA9IFB5RGlyZWN0b3J5KGRiLCBjYWIsIHBhcmVudCwgZGlyLCBkaXIsICIlc3wlcyIgJSAocGFyZW50Lm1ha2Vfc2hvcnQoZGlyKSwgZGlyKSkKLSAgICAgICAgIyBBZGQgYWRkaXRpb25hbCBmaWxlcwogICAgICAgICBkaXJzLmFwcGVuZChsaWIpCi0gICAgICAgIGxpYi5nbG9iKCIqLnR4dCIpCi0gICAgICAgIGlmIGRpcj09J3NpdGUtcGFja2FnZXMnOgotICAgICAgICAgICAgbGliLmFkZF9maWxlKCJSRUFETUUudHh0Iiwgc3JjPSJSRUFETUUiKQotICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgZmlsZXMgPSBsaWIuZ2xvYigiKi5weSIpCi0gICAgICAgIGZpbGVzICs9IGxpYi5nbG9iKCIqLnB5dyIpCi0gICAgICAgIGlmIGZpbGVzOgotICAgICAgICAgICAgIyBBZGQgYW4gZW50cnkgdG8gdGhlIFJlbW92ZUZpbGUgdGFibGUgdG8gcmVtb3ZlIGJ5dGVjb2RlIGZpbGVzLgotICAgICAgICAgICAgbGliLnJlbW92ZV9weWMoKQotICAgICAgICAjIHBhY2thZ2UgUkVBRE1FcyBpZiBwcmVzZW50Ci0gICAgICAgIGxpYi5nbG9iKCJSRUFETUUiKQotICAgICAgICBpZiBkaXI9PSdMaWInOgotICAgICAgICAgICAgbGliLmFkZF9maWxlKCd3c2dpcmVmLmVnZy1pbmZvJykKLSAgICAgICAgaWYgZGlyPT0ndGVzdCcgYW5kIHBhcmVudC5waHlzaWNhbD09J0xpYic6Ci0gICAgICAgICAgICBsaWIuYWRkX2ZpbGUoIjE4NXRlc3QuZGIiKQotICAgICAgICAgICAgbGliLmFkZF9maWxlKCJhdWRpb3Rlc3QuYXUiKQotICAgICAgICAgICAgbGliLmFkZF9maWxlKCJzZ21sX2lucHV0Lmh0bWwiKQotICAgICAgICAgICAgbGliLmFkZF9maWxlKCJ0ZXN0dGFyLnRhciIpCi0gICAgICAgICAgICBsaWIuYWRkX2ZpbGUoInRlc3RfZGlmZmxpYl9leHBlY3QuaHRtbCIpCi0gICAgICAgICAgICBsaWIuYWRkX2ZpbGUoImNoZWNrX3NvdW5kY2FyZC52YnMiKQotICAgICAgICAgICAgbGliLmFkZF9maWxlKCJlbXB0eS52YnMiKQotICAgICAgICAgICAgbGliLmFkZF9maWxlKCJTaW5lLTEwMDBIei0zMDBtcy5haWYiKQotICAgICAgICAgICAgbGliLmFkZF9maWxlKCJtaW1lLnR5cGVzIikKLSAgICAgICAgICAgIGxpYi5nbG9iKCIqLnV1ZSIpCi0gICAgICAgICAgICBsaWIuZ2xvYigiKi5wZW0iKQotICAgICAgICAgICAgbGliLmdsb2IoIioucGNrIikKLSAgICAgICAgICAgIGxpYi5nbG9iKCJjZmdwYXJzZXIuKiIpCi0gICAgICAgICAgICBsaWIuYWRkX2ZpbGUoInppcF9jcDQzN19oZWFkZXIuemlwIikKLSAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgiemlwZGlyLnppcCIpCi0gICAgICAgIGlmIGRpcj09J2NhcGF0aCc6Ci0gICAgICAgICAgICBsaWIuZ2xvYigiKi4wIikKLSAgICAgICAgaWYgZGlyPT0ndGVzdHMnIGFuZCBwYXJlbnQucGh5c2ljYWw9PSdkaXN0dXRpbHMnOgotICAgICAgICAgICAgbGliLmFkZF9maWxlKCJTZXR1cC5zYW1wbGUiKQotICAgICAgICBpZiBkaXI9PSdkZWNpbWFsdGVzdGRhdGEnOgotICAgICAgICAgICAgbGliLmdsb2IoIiouZGVjVGVzdCIpCi0gICAgICAgIGlmIGRpcj09J3htbHRlc3RkYXRhJzoKLSAgICAgICAgICAgIGxpYi5nbG9iKCIqLnhtbCIpCi0gICAgICAgICAgICBsaWIuYWRkX2ZpbGUoInRlc3QueG1sLm91dCIpCi0gICAgICAgIGlmIGRpcj09J291dHB1dCc6Ci0gICAgICAgICAgICBsaWIuZ2xvYigidGVzdF8qIikKLSAgICAgICAgaWYgZGlyPT0nc25kaGRyZGF0YSc6Ci0gICAgICAgICAgICBsaWIuZ2xvYigic25kaGRyLioiKQotICAgICAgICBpZiBkaXI9PSdpZGxlbGliJzoKLSAgICAgICAgICAgIGxpYi5nbG9iKCIqLmRlZiIpCi0gICAgICAgICAgICBsaWIuYWRkX2ZpbGUoImlkbGUuYmF0IikKLSAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgiQ2hhbmdlTG9nIikKLSAgICAgICAgaWYgZGlyPT0iSWNvbnMiOgotICAgICAgICAgICAgbGliLmdsb2IoIiouZ2lmIikKLSAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgiaWRsZS5pY25zIikKLSAgICAgICAgaWYgZGlyPT0iY29tbWFuZCIgYW5kIHBhcmVudC5waHlzaWNhbD09ImRpc3R1dGlscyI6Ci0gICAgICAgICAgICBsaWIuZ2xvYigid2luaW5zdCouZXhlIikKLSAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgiY29tbWFuZF90ZW1wbGF0ZSIpCi0gICAgICAgIGlmIGRpcj09ImxpYjJ0bzMiOgotICAgICAgICAgICAgbGliLnJlbW92ZWZpbGUoInBpY2tsZSIsICIqLnBpY2tsZSIpCi0gICAgICAgIGlmIGRpcj09Im1hY2hvbGliIjoKLSAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgiUkVBRE1FLmN0eXBlcyIpCi0gICAgICAgICAgICBsaWIuZ2xvYigiZmV0Y2hfbWFjaG9saWIqIikKLSAgICAgICAgaWYgZGlyPT0ndHVydGxlZGVtbyc6Ci0gICAgICAgICAgICBsaWIuYWRkX2ZpbGUoInR1cnRsZS5jZmciKQotICAgICAgICBpZiBkaXI9PSJweWRvY19kYXRhIjoKLSAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgiX3B5ZG9jLmNzcyIpCi0gICAgICAgIGlmIGRpcj09ImRhdGEiIGFuZCBwYXJlbnQucGh5c2ljYWw9PSJ0ZXN0IiBhbmQgcGFyZW50LmJhc2VkaXIucGh5c2ljYWw9PSJlbWFpbCI6Ci0gICAgICAgICAgICAjIFRoaXMgc2hvdWxkIGNvbnRhaW4gYWxsIG5vbi0uc3ZuIGZpbGVzIGxpc3RlZCBpbiBzdWJ2ZXJzaW9uCi0gICAgICAgICAgICBmb3IgZiBpbiBvcy5saXN0ZGlyKGxpYi5hYnNvbHV0ZSk6Ci0gICAgICAgICAgICAgICAgaWYgZi5lbmRzd2l0aCgiLnR4dCIpIG9yIGY9PSIuc3ZuIjpjb250aW51ZQotICAgICAgICAgICAgICAgIGlmIGYuZW5kc3dpdGgoIi5hdSIpIG9yIGYuZW5kc3dpdGgoIi5naWYiKToKLSAgICAgICAgICAgICAgICAgICAgbGliLmFkZF9maWxlKGYpCisgICAgICAgIGhhc19weSA9IEZhbHNlCisgICAgICAgIGZvciBuYW1lLCBzdWJkaXIgaW4gZmlsZXMuaXRlbXMoKToKKyAgICAgICAgICAgIGlmIHN1YmRpciBpcyBOb25lOgorICAgICAgICAgICAgICAgIGFzc2VydCBvcy5wYXRoLmlzZmlsZShvcy5wYXRoLmpvaW4obGliLmFic29sdXRlLCBuYW1lKSkKKyAgICAgICAgICAgICAgICBpZiBuYW1lID09ICdSRUFETUUnOgorICAgICAgICAgICAgICAgICAgICBsaWIuYWRkX2ZpbGUoIlJFQURNRS50eHQiLCBzcmM9IlJFQURNRSIpCiAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgcHJpbnQoIldBUk5JTkc6IE5ldyBmaWxlICVzIGluIGVtYWlsL3Rlc3QvZGF0YSIgJSBmKQotICAgICAgICBmb3IgZiBpbiBvcy5saXN0ZGlyKGxpYi5hYnNvbHV0ZSk6Ci0gICAgICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKG9zLnBhdGguam9pbihsaWIuYWJzb2x1dGUsIGYpKToKLSAgICAgICAgICAgICAgICBweWRpcnMuYXBwZW5kKChsaWIsIGYpKQotICAgIGZvciBkIGluIGRpcnM6Ci0gICAgICAgIGQuY2hlY2tfdW5wYWNrYWdlZCgpCisgICAgICAgICAgICAgICAgICAgIGxpYi5hZGRfZmlsZShuYW1lKQorICAgICAgICAgICAgICAgICAgICBoYXNfcHkgPSBoYXNfcHkgb3IgbmFtZS5lbmRzd2l0aCgiLnB5Iikgb3IgbmFtZS5lbmRzd2l0aCgiLnB5dyIpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGFzc2VydCBvcy5wYXRoLmlzZGlyKG9zLnBhdGguam9pbihsaWIuYWJzb2x1dGUsIG5hbWUpKQorICAgICAgICAgICAgICAgIHB5ZGlycy5hcHBlbmQoKGxpYiwgbmFtZSwgc3ViZGlyLCBmZWF0dXJlKSkKKworICAgICAgICBpZiBoYXNfcHk6CisgICAgICAgICAgICBsaWIucmVtb3ZlX3B5YygpCiAgICAgIyBBZGQgRExMcwogICAgIGRlZmF1bHRfZmVhdHVyZS5zZXRfY3VycmVudCgpCiAgICAgbGliID0gRExMcwpAQCAtMTE1OSw2ICsxMTExLDggQEAKICAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgiUkVBRE1FLnR4dCIsIHNyYz0iUkVBRE1FIikKICAgICAgICAgaWYgZiA9PSAnU2NyaXB0cyc6CiAgICAgICAgICAgICBsaWIuYWRkX2ZpbGUoIjJ0bzMucHkiLCBzcmM9IjJ0bzMiKQorICAgICAgICAgICAgbGliLmFkZF9maWxlKCJweWRvYzMucHkiLCBzcmM9InB5ZG9jMyIpCisgICAgICAgICAgICBsaWIuYWRkX2ZpbGUoInB5c2V0dXAzLnB5Iiwgc3JjPSJweXNldHVwMyIpCiAgICAgICAgICAgICBpZiBoYXZlX3RjbDoKICAgICAgICAgICAgICAgICBsaWIuc3RhcnRfY29tcG9uZW50KCJweWRvY2d1aS5weXciLCB0Y2x0aywga2V5ZmlsZT0icHlkb2NndWkucHl3IikKICAgICAgICAgICAgICAgICBsaWIuYWRkX2ZpbGUoInB5ZG9jZ3VpLnB5dyIpCmRpZmYgLS1naXQgYS9Ub29scy9tc2kvbXNpbGliLnB5IGIvVG9vbHMvbXNpL21zaWxpYi5weQppbmRleCA1Nzk1ZDBlLi40NzJkOWQ0IDEwMDY0NAotLS0gYS9Ub29scy9tc2kvbXNpbGliLnB5CisrKyBiL1Rvb2xzL21zaS9tc2lsaWIucHkKQEAgLTQwOCw3ICs0MDgsNyBAQAogICAgICAgICBzZWxmLnBoeXNpY2FsID0gcGh5c2ljYWwKICAgICAgICAgc2VsZi5sb2dpY2FsID0gbG9naWNhbAogICAgICAgICBzZWxmLmNvbXBvbmVudCA9IE5vbmUKLSAgICAgICAgc2VsZi5zaG9ydF9uYW1lcyA9IHNldHMuU2V0KCkKKyAgICAgICAgc2VsZi5zaG9ydF9uYW1lcyA9IHt9CiAgICAgICAgIHNlbGYuaWRzID0gc2V0cy5TZXQoKQogICAgICAgICBzZWxmLmtleWZpbGVzID0ge30KICAgICAgICAgc2VsZi5jb21wb25lbnRmbGFncyA9IGNvbXBvbmVudGZsYWdzCkBAIC00NTYsMjMgKzQ1NiwyNSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgWyhmZWF0dXJlLmlkLCBjb21wb25lbnQpXSkKIAogICAgIGRlZiBtYWtlX3Nob3J0KHNlbGYsIGZpbGUpOgorICAgICAgICBsb25nID0gZmlsZQogICAgICAgICBmaWxlID0gcmUuc3ViKHInW1w/fD48Oi8qIissOz1cW1xdXScsICdfJywgZmlsZSkgIyByZXN0cmljdGlvbnMgb24gc2hvcnQgbmFtZXMKLSAgICAgICAgcGFydHMgPSBmaWxlLnNwbGl0KCIuIikKKyAgICAgICAgcGFydHMgPSBmaWxlLnNwbGl0KCIuIiwgMSkKICAgICAgICAgaWYgbGVuKHBhcnRzKT4xOgotICAgICAgICAgICAgc3VmZml4ID0gcGFydHNbLTFdLnVwcGVyKCkKKyAgICAgICAgICAgIHN1ZmZpeCA9IHBhcnRzWzFdLnVwcGVyKCkKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHN1ZmZpeCA9IE5vbmUKKyAgICAgICAgICAgIHN1ZmZpeCA9ICcnCiAgICAgICAgIHByZWZpeCA9IHBhcnRzWzBdLnVwcGVyKCkKLSAgICAgICAgaWYgbGVuKHByZWZpeCkgPD0gOCBhbmQgKG5vdCBzdWZmaXggb3IgbGVuKHN1ZmZpeCk8PTMpOgorICAgICAgICBpZiBsZW4ocHJlZml4KSA8PSA4IGFuZCAnLicgbm90IGluIHN1ZmZpeCBhbmQgbGVuKHN1ZmZpeCkgPD0gMzoKICAgICAgICAgICAgIGlmIHN1ZmZpeDoKICAgICAgICAgICAgICAgICBmaWxlID0gcHJlZml4KyIuIitzdWZmaXgKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgZmlsZSA9IHByZWZpeAotICAgICAgICAgICAgYXNzZXJ0IGZpbGUgbm90IGluIHNlbGYuc2hvcnRfbmFtZXMKKyAgICAgICAgICAgIGFzc2VydCBmaWxlIG5vdCBpbiBzZWxmLnNob3J0X25hbWVzLCAoZmlsZSwgc2VsZi5zaG9ydF9uYW1lc1tmaWxlXSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHByZWZpeCA9IHByZWZpeFs6Nl0KICAgICAgICAgICAgIGlmIHN1ZmZpeDoKLSAgICAgICAgICAgICAgICBzdWZmaXggPSBzdWZmaXhbOjNdCisgICAgICAgICAgICAgICAgIyBsYXN0IHRocmVlIGNoYXJhY3RlcnMgb2YgbGFzdCBzdWZmaXgKKyAgICAgICAgICAgICAgICBzdWZmaXggPSBzdWZmaXgucnNwbGl0KCcuJylbLTFdWzozXQogICAgICAgICAgICAgcG9zID0gMQogICAgICAgICAgICAgd2hpbGUgMToKICAgICAgICAgICAgICAgICBpZiBzdWZmaXg6CkBAIC00ODQsNyArNDg2LDcgQEAKICAgICAgICAgICAgICAgICBhc3NlcnQgcG9zIDwgMTAwMDAKICAgICAgICAgICAgICAgICBpZiBwb3MgaW4gKDEwLCAxMDAsIDEwMDApOgogICAgICAgICAgICAgICAgICAgICBwcmVmaXggPSBwcmVmaXhbOi0xXQotICAgICAgICBzZWxmLnNob3J0X25hbWVzLmFkZChmaWxlKQorICAgICAgICBzZWxmLnNob3J0X25hbWVzW2ZpbGVdID0gbG9uZwogICAgICAgICByZXR1cm4gZmlsZQogCiAgICAgZGVmIGFkZF9maWxlKHNlbGYsIGZpbGUsIHNyYz1Ob25lLCB2ZXJzaW9uPU5vbmUsIGxhbmd1YWdlPU5vbmUpOgpkaWZmIC0tZ2l0IGEvVG9vbHMvbXNpL3V1aWRzLnB5IGIvVG9vbHMvbXNpL3V1aWRzLnB5CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMDZjZGZiLi4wMDAwMDAwCi0tLSBhL1Rvb2xzL21zaS91dWlkcy5weQorKysgL2Rldi9udWxsCkBAIC0xLDk4ICswLDAgQEAKLSMgVGhpcyBzaG91bGQgYmUgZXh0ZW5kZWQgZm9yIGVhY2ggUHl0aG9uIHJlbGVhc2UuCi0jIFRoZSBwcm9kdWN0IGNvZGUgbXVzdCBjaGFuZ2Ugd2hlbmV2ZXIgdGhlIG5hbWUgb2YgdGhlIE1TSSBmaWxlCi0jIGNoYW5nZXMsIGFuZCB3aGVuIG5ldyBjb21wb25lbnQgY29kZXMgYXJlIGlzc3VlZCBmb3IgZXhpc3RpbmcKLSMgY29tcG9uZW50cy4gU2VlICJDaGFuZ2luZyB0aGUgUHJvZHVjdCBDb2RlIi4gQXMgd2UgY2hhbmdlIHRoZQotIyBjb21wb25lbnQgY29kZXMgd2l0aCBldmVyeSBidWlsZCwgd2UgbmVlZCBhIG5ldyBwcm9kdWN0IGNvZGUKLSMgZWFjaCB0aW1lLiBGb3IgaW50ZXJtZWRpYXRlIChzbmFwc2hvdCkgcmVsZWFzZXMsIHRoZXkgYXJlIGF1dG9tYXRpY2FsbHkKLSMgZ2VuZXJhdGVkLiBGb3Igb2ZmaWNpYWwgcmVsZWFzZXMsIHdlIHJlY29yZCB0aGUgcHJvZHVjdCBjb2RlcywKLSMgc28gcGVvcGxlIGNhbiByZWZlciB0byB0aGVtLgotcHJvZHVjdF9jb2RlcyA9IHsKLSAgICAnMi41LjEwMSc6ICd7YmMxNGNlM2UtNWU3Mi00YTY0LWFjMWYtYmY1OWE1NzE4OThjfScsICMgMi41YTEKLSAgICAnMi41LjEwMic6ICd7NWVlZDUxYzEtOGU5ZC00MDcxLTk0YzUtYjQwZGU1ZDQ5YmE1fScsICMgMi41YTIKLSAgICAnMi41LjEwMyc6ICd7NzNkY2Q5NjYtZmZlYy00MTVmLWJiMzktODM0MmMxZjQ3MDE3fScsICMgMi41YTMKLSAgICAnMi41LjExMSc6ICd7Yzc5N2VjZjgtYThlNi00ZmVjLWJiOTktNTI2YjY1ZjI4NjI2fScsICMgMi41YjEKLSAgICAnMi41LjExMic6ICd7MzJiZWI3NzQtZjYyNS00MzlkLWI1ODctNzE4NzQ4N2JhZjE1fScsICMgMi41YjIKLSAgICAnMi41LjExMyc6ICd7ODlmMjM5MTgtMTFjZi00ZjA4LWJlMTMtYjliMmU2NDYzZmQ5fScsICMgMi41YjMKLSAgICAnMi41LjEyMSc6ICd7OGU5MzIxYmMtNmIyNC00OGEzLThmZDQtYzk1ZjhlNTMxZTVmfScsICMgMi41YzEKLSAgICAnMi41LjEyMic6ICd7YTZjZDUwOGQtOTU5OS00NWRhLWE0NDEtY2JmZmE5ZjdlMDcwfScsICMgMi41YzIKLSAgICAnMi41LjE1MCc6ICd7MGEyYzU4NTQtNTU3ZS00OGM4LTgzNWEtM2I5ZjA3NGJkY2FhfScsICMgMi41LjAKLSAgICAnMi41LjExMjEnOid7MDM3OGI0M2UtNjE4NC00YzJmLWJlMWEtNGEzNjc3ODFjZDU0fScsICMgMi41LjFjMQotICAgICcyLjUuMTE1MCc6J3szMTgwMDAwNC02Mzg2LTQ5OTktYTUxOS01MThmMmQ3OGQ4ZjB9JywgIyAyLjUuMQotICAgICcyLjUuMjE1MCc6J3s2MzA0YTdkYS0xMTMyLTRlOTEtYTM0My1hMjk2MjY5ZWFiOGF9JywgIyAyLjUuMmMxCi0gICAgJzIuNS4yMTUwJzonezZiOTc2YWRmLThhZTgtNDM0ZS1iMjgyLWEwNmM3ZjYyNGQyZn0nLCAjIDIuNS4yCi0gICAgJzIuNi4xMDEnOiAnezBiYTgyZTFiLTUyZmQtNGUwMy04NjEwLWE2Yzc2MjM4ZThhOH0nLCAjIDIuNmExCi0gICAgJzIuNi4xMDInOiAnezNiMjdlMTZjLTU2ZGItNDU3MC1hMmQzLWU5YTI2MTgwYzYwYn0nLCAjIDIuNmEyCi0gICAgJzIuNi4xMDMnOiAne2NkMDZhOWM1LWJkZTUtNGJkNy05ODc0LTQ4OTMzOTk3MTIyYX0nLCAjIDIuNmEzCi0gICAgJzIuNi4xMDQnOiAne2RjNmVkNjM0LTQ3NGEtNGE1MC1hNTQ3LThkZTRiNzQ5MWU1M30nLCAjIDIuNmE0Ci0gICAgJzIuNi4xMTEnOiAnezNmODIwNzlhLTViZWUtNGM0YS04YTQxLTgyOTIzODllMjRhZX0nLCAjIDIuNmIxCi0gICAgJzIuNi4xMTInOiAnezhhMGU1OTcwLWYzZTYtNDczNy05YTJiLWJjNWZmMGYxNWZiNX0nLCAjIDIuNmIyCi0gICAgJzIuNi4xMTMnOiAne2RmNGY1YzIxLTZmY2MtNDU0MC05NWRlLTg1ZmViYTYzNGU3Nn0nLCAjIDIuNmIzCi0gICAgJzIuNi4xMjEnOiAne2JiZDM0NDY0LWRkZWItNDAyOC05OWU1LWYxNmM0YThmYmRiM30nLCAjIDIuNmMxCi0gICAgJzIuNi4xMjInOiAnezhmNjQ3ODdlLWEwMjMtNGM2MC1iZmVlLTI1ZDNhM2Y1OTJjNn0nLCAjIDIuNmMyCi0gICAgJzIuNi4xNTAnOiAnezExMGViNWM0LWU5OTUtNGNmYi1hYjgwLWE1ZjMxNWJlYTllOH0nLCAjIDIuNi4wCi0gICAgJzIuNi4xMTUwJzonezljYzg5MTcwLTAwMGItNDU3ZC05MWYxLTUzNjkxZjg1YjIyM30nLCAjIDIuNi4xCi0gICAgJzIuNi4yMTIxJzone2FkYWM0MTJiLWIyMDktNGMxNS1iNmFiLWRjYTFiNmU0NzE0NH0nLCAjIDIuNi4yYzEKLSAgICAnMi42LjIxNTAnOid7MjRhYWI0MjAtNGUzMC00NDk2LTk3MzktM2UyMTZmM2RlNmFlfScsICMgMi42LjIKLSAgICAnMi42LjMxMjEnOid7YTczZTAyNTQtZGNkYS00ZmU0LWJmMzctYzdlMWM0ZjRlYmI2fScsICMgMi42LjNjMQotICAgICcyLjYuMzE1MCc6J3szZDlhYzA5NS1lMTE1LTRlOTQtYmRlZi03ZjdlZGYxNzY5N2R9JywgIyAyLjYuMwotICAgICcyLjYuNDEyMSc6J3s3MjdkZTYwNS0wMzU5LTQ2MDYtYTk0Yi1jMjAzMzY1MjM3OWJ9JywgIyAyLjYuNGMxCi0gICAgJzIuNi40MTIyJzonezRmNzYwM2M2LTYzNTItNDI5OS1hMzk4LTE1MGEzMWIxOWFjY30nLCAjIDIuNi40YzIKLSAgICAnMi42LjQxNTAnOid7ZTczOTRhMGYtM2Y4MC00NWIxLTg3ZmMtYWJjZDUxODkzMjQ2fScsICMgMi42LjQKLSAgICAnMi42LjUxMjEnOid7ZTBlMjczZDctNzU5OC00NzAxLTgzMjUtYzkwYzA2OWZkNWZmfScsICMgMi42LjVjMQotICAgICcyLjYuNTEyMic6J3tmYTIyN2I3Ni0wNjcxLTRkYzYtYjgyNi1jMmZmMmE3MGRmZDV9JywgIyAyLjYuNWMyCi0gICAgJzIuNi41MTUwJzonezQ3MjNmMTk5LWZhNjQtNDIzMy04ZTZlLTlmY2NjOTVhMThlZX0nLCAjIDIuNi41Ci0gICAgJzIuNy4xMDEnOiAne2VjYTFiYmVmLTQzMmMtNDlhZS1hNjY3LWMyMTNjYzdiYmYyMn0nLCAjIDIuN2ExCi0gICAgJzIuNy4xMDInOiAnezIxY2UxNmVkLTczYzQtNDYwZC05YjExLTUyMmY0MTdiMjA5MH0nLCAjIDIuN2EyCi0gICAgJzIuNy4xMDMnOiAnezZlN2RiZDU1LWJhNGEtNDhhYy1hNjg4LTZjNzVkYjRkNzUwMH0nLCAjIDIuN2EzCi0gICAgJzIuNy4xMDQnOiAne2VlNzc0YmEzLTc0YTUtNDhkOS1iNDI1LWIzNWEyODcyNjBjOH0nLCAjIDIuN2E0Ci0gICAgJzIuNy4xMTEnOiAnezljZmQ5ZWM3LWE5YzctNDk4MC1hMWM2LTA1NGZjNjQ5M2ViM30nLCAjIDIuN2IxCi0gICAgJzIuNy4xMTInOiAnezlhNzJmYWY2LWMzMDQtNDE2NS04NTk1LTkyOTFmZjMwY2FjNn0nLCAjIDIuN2IyCi0gICAgJzIuNy4xMjEnOiAne2Y1MzBjOTRhLWRkNTMtNGRlOS05NDhlLWI2MzJiOWNiNDhkMn0nLCAjIDIuN2MxCi0gICAgJzIuNy4xMjInOiAne2Y4MDkwNWQyLWRkOGQtNGI4ZS04YTQwLWMyM2M5M2RjYTA3ZH0nLCAjIDIuN2MyCi0gICAgJzIuNy4xNTAnOiAnezIwYzMxNDM1LTJhMGEtNDU4MC1iZThiLWFjMDZmYzI0M2NhNH0nLCAjIDIuNy4wCi0gICAgJzMuMC4xMDEnOiAnezg1NTQyNjNhLTMyNDItNDg1Ny05MzU5LWFhODdiYzJjNThjMn0nLCAjIDMuMGExCi0gICAgJzMuMC4xMDInOiAnezY5MmQ2ZTJjLWYwYWMtNDBiOC1hMTMzLTcxOTFhZWViNjdmOX0nLCAjIDMuMGEyCi0gICAgJzMuMC4xMDMnOiAnezQ5Y2IyOTk1LTc1MWEtNDc1My1iZTdhLWQwYjFiYjU4NWUwNn0nLCAjIDMuMGEzCi0gICAgJzMuMC4xMDQnOiAnezg3Y2IwMTllLTE5ZmQtNDIzOC1iMWM3LTg1NzUxNDM3ZDY0Nn0nLCAjIDMuMGE0Ci0gICAgJzMuMC4xMDUnOiAne2NmMjY1OWFmLTE5ZWMtNDNkMi04YzM1LTBmNmEwOTQzOWQ0Mn0nLCAjIDMuMGE1Ci0gICAgJzMuMC4xMTEnOiAnezM2YzI2ZjU1LTgzN2QtNDVjZi04NDhjLTVmNWMwZmI0N2EyOH0nLCAjIDMuMGIxCi0gICAgJzMuMC4xMTInOiAnezA1NmEwZmJjLWM4ZmUtNGM2MS1hYWRlLWM0NDExYjcwYzk5OH0nLCAjIDMuMGIyCi0gICAgJzMuMC4xMTMnOiAnezJiMmU4OWE5LTgzYWYtNDNmOS1iN2Q1LTk2ZTgwYzVhM2YyNn0nLCAjIDMuMGIzCi0gICAgJzMuMC4xMTQnOiAne2U5NWMzMWFmLTY5YmUtNGRkNy05NmU2LWU1ZmM4NWU2NjBlNn0nLCAjIDMuMGI0Ci0gICAgJzMuMC4xMjEnOiAne2QwOTc5YzVlLWNkM2MtNDJlYy1iZTRjLWUyOTRkYTc5MzU3M30nLCAjIDMuMGMxCi0gICAgJzMuMC4xMjInOiAne2Y3MDdiOGU5LWEyNTctNDA0NS04MThlLTQ5MjNmYzIwZmJiNn0nLCAjIDMuMGMyCi0gICAgJzMuMC4xMjMnOiAnezVlNzIwOGYxLTg2NDMtNGVhMi1hYjVlLTQ2NDQ4ODcxMTJlM30nLCAjIDMuMGMzCi0gICAgJzMuMC4xNTAnOiAne2UwZTU2ZTIxLTU1ZGUtNGY3Ny1hMTA5LTFiYWE3MjM0ODc0M30nLCAjIDMuMC4wCi0gICAgJzMuMC4xMTIxJzone2QzNWIxZWE1LTNkNzAtNDg3Mi1iZjdlLWNkMDY2YTc3YTljOX0nLCAjIDMuMC4xYzEKLSAgICAnMy4wLjExNTAnOid7ZGUyZjJkOWMtNTNlMi00MGVlLTgyMDktNzRkYTYzY2IwNjBlfScsICMgMy4wLjEKLSAgICAnMy4wLjIxMjEnOid7Y2VmNzllN2YtOTgwOS00OWUyLWFmZDItZTI0MTQ4ZDdjODU1fScsICMgMy4wLjJjMQotICAgICczLjAuMjE1MCc6J3swY2YzYjk1YS04MzgyLTQ2MDctOTc3OS1jMzY0MDdmZjM2MmN9JywgIyAzLjAuMgotICAgICczLjEuMTAxJzogJ3tjNDIzZWFkYS1jNDk4LTRkNTEtOWViNC1iZmVhZTY0N2UwYTB9JywgIyAzLjFhMQotICAgICczLjEuMTAyJzogJ3tmNmUxOTliZi1kYzY0LTQyZjMtODdkNC0xNTI1OTkxYTAxM2V9JywgIyAzLjFhMgotICAgICczLjEuMTExJzogJ3tjM2M4Mjg5My02OWIyLTQ2NzYtODU1NC0xYjZlZTZjMTkxZTl9JywgIyAzLjFiMQotICAgICczLjEuMTIxJzogJ3tkYTJiNTE3MC0xMmYzLTRkOTktOGExZi01NDkyNmNjYTdhY2R9JywgIyAzLjFjMQotICAgICczLjEuMTIyJzogJ3tiY2ViNTEzMy1lMmVlLTQxMDktOTUxZi1hYzdlOTQxYTE2OTJ9JywgIyAzLjFjMgotICAgICczLjEuMTUwJzogJ3szYWQ2MWVlNS04MWQyLTRkN2UtYWRlZi1kYTFkZDM3Mjc3ZDF9JywgIyAzLjEuMAotICAgICczLjEuMTEyMSc6J3s1NzgyZjk1Ny02ZDQ5LTQxZDQtYmFkMC02Njg3MTVkZmQ2Mzh9JywgIyAzLjEuMWMxCi0gICAgJzMuMS4xMTUwJzonezdmZjkwNDYwLTg5YjctNDM1Yi1iNTgzLWIzN2IyODE1Y2NjN30nLCAjIDMuMS4xCi0gICAgJzMuMS4yMTIxJzone2VjNDU2MjRhLTM3OGMtNDNiZS05MWYzLTNmN2E1OWIwZDkwY30nLCAjIDMuMS4yYzEKLSAgICAnMy4xLjIxNTAnOid7ZDQwYWYwMTYtNTA2Yy00M2ZiLWE3MzgtYmQ1NGZhOGMxZTg1fScsICMgMy4xLjIKLSAgICAnMy4yLjEwMScgOid7YjQxMWYxNjgtN2EzNi00ZmZmLTkwMmMtYTU1NGQxYzc4YTRmfScsICMgMy4yYTEKLSAgICAnMy4yLjEwMicgOid7NzlmZjczYjctODM1OS00MTBmLWI5YzUtMTUyZDIwMjZmOGM4fScsICMgMy4yYTIKLSAgICAnMy4yLjEwMycgOid7ZTc2MzVjNjUtYzIyMS00YjliLWI3MGEtNTYxMWI4MzY5ZDc3fScsICMgMy4yYTMKLSAgICAnMy4yLjEwNCcgOid7NzQ4Y2QxMzktNzViOC00Y2E4LTk4YTctNTgyNjIyOTgxODFlfScsICMgMy4yYTQKLSAgICAnMy4yLjExMScgOid7MjBiZmMxNmYtYzdjZC00ZmMwLThmOTYtOTkxNDYxNGEzYzUwfScsICMgMy4yYjEKLSAgICAnMy4yLjExMicgOid7MGUzNTBjOTgtOGQ3My00OTkzLWI2ODYtY2ZlODcxNjAwNDZlfScsICMgMy4yYjIKLSAgICAnMy4yLjEyMScgOid7MjA5NDk2OGQtNzU4My00N2Y2LWE3ZmQtMjIzMDQ1MzJlMDlmfScsICMgMy4ycmMxCi0gICAgJzMuMi4xMjInIDonezRmM2VkZmE2LWNmNzAtNDY5YS04MjVmLWUxMjA2YWE3ZjQxMn0nLCAjIDMuMnJjMgotICAgICczLjIuMTIzJyA6J3s5MGM2NzNkNy04Y2ZkLTQ5NjktOTgxNi1mN2Q3MGJhZDg3ZjN9JywgIyAzLjJyYzMKLSAgICAnMy4yLjE1MCcgOid7YjIwNDJkNWUtOTg2ZC00NGVjLWFlZTMtYWZlNDEwOGNjYzkzfScsICMgMy4yLjAKLSAgICAnMy4yLjExMjEnOid7NGY5MGRlNGEtODNkZC00NDQzLWI2MjUtY2ExMzBmZjM2MWRkfScsICMgMy4yLjFyYzEKLSAgICAnMy4yLjExMjInOid7ZGM1ZWIwNGQtZmY4YS00YmVkLThmOTYtMjM5NDJmZDU5ZTVmfScsICMgMy4yLjFyYzIKLSAgICAnMy4yLjExNTAnOid7MzRiMjUzMGMtNjM0OS00MjkyLTlkYzMtNjBiZGE0YWVkOTNjfScsICMgMy4yLjEKLSAgICAnMy4yLjIxMjEnOid7REZCMjlBNTMtQUNDNC00NGU2LTg1QTYtRDBEQTI2RkU4RTRFfScsICMgMy4yLjJyYzEKLSAgICAnMy4yLjIxNTAnOid7NENERTMxNjgtRDA2MC00YjdjLUJDNzQtNEQ4RjlCQjAxQUZEfScsICMgMy4yLjIKLSAgICAnMy4yLjMxMjEnOid7QjhFOENGRjctRTRDNi00YTdjLTlGMDYtQkIzQThCNzVEREE4fScsICMgMy4yLjNyYzEKLSAgICAnMy4yLjMxNTAnOid7Nzg5Qzk2NDQtOUY4Mi00NGQzLUI0Q0EtQUMzMUY0NkY1ODgyfScsICMgMy4yLjMKLQotfQpkaWZmIC0tZ2l0IGEvVG9vbHMvcHliZW5jaC9weWJlbmNoLnB5IGIvVG9vbHMvcHliZW5jaC9weWJlbmNoLnB5CmluZGV4IDhlYWFkNjMuLmNjMWU1NWMgMTAwNzU1Ci0tLSBhL1Rvb2xzL3B5YmVuY2gvcHliZW5jaC5weQorKysgYi9Ub29scy9weWJlbmNoL3B5YmVuY2gucHkKQEAgLTEwNyw2ICsxMDcsNyBAQAogICAgICAgICBwcmludCgnR2V0dGluZyBtYWNoaW5lIGRldGFpbHMuLi4nKQogICAgIGJ1aWxkbm8sIGJ1aWxkZGF0ZSA9IHBsYXRmb3JtLnB5dGhvbl9idWlsZCgpCiAgICAgcHl0aG9uID0gcGxhdGZvcm0ucHl0aG9uX3ZlcnNpb24oKQorICAgICMgWFhYIHRoaXMgaXMgbm93IGFsd2F5cyBVQ1M0LCBtYXliZSByZXBsYWNlIGl0IHdpdGggJ1BFUDM5MycgaW4gMy4zKz8KICAgICBpZiBzeXMubWF4dW5pY29kZSA9PSA2NTUzNToKICAgICAgICAgIyBVQ1MyIGJ1aWxkIChzdGFuZGFyZCkKICAgICAgICAgdW5pdHlwZSA9ICdVQ1MyJwpkaWZmIC0tZ2l0IGEvVG9vbHMvc2NyaXB0cy9SRUFETUUgYi9Ub29scy9zY3JpcHRzL1JFQURNRQppbmRleCA4YzAyNTI5Li5lYjI4YTllIDEwMDY0NAotLS0gYS9Ub29scy9zY3JpcHRzL1JFQURNRQorKysgYi9Ub29scy9zY3JpcHRzL1JFQURNRQpAQCAtMTUsNyArMTUsNyBAQAogZGlmZi5weSAgICAgICAgICAgICAgICAgUHJpbnQgZmlsZSBkaWZmcyBpbiBjb250ZXh0LCB1bmlmaWVkLCBvciBuZGlmZiBmb3JtYXRzCiBkdXRyZWUucHkgICAgICAgICAgICAgICBGb3JtYXQgZHUoMSkgb3V0cHV0IGFzIGEgdHJlZSBzb3J0ZWQgYnkgc2l6ZQogZXB0YWdzLnB5ICAgICAgICAgICAgICAgQ3JlYXRlIEVtYWNzIFRBR1MgZmlsZSBmb3IgUHl0aG9uIG1vZHVsZXMKLWZpbmRfcmVjdXJzaW9ubGltaXQucHkgIEZpbmQgdGhlIG1heGltdW0gcmVjdXJzaW9uIGxpbWl0IG9uIHRoaXMgbWFjaGluZSAKK2ZpbmRfcmVjdXJzaW9ubGltaXQucHkgIEZpbmQgdGhlIG1heGltdW0gcmVjdXJzaW9uIGxpbWl0IG9uIHRoaXMgbWFjaGluZQogZmluZGRpdi5weSAgICAgICAgICAgICAgQSBncmVwLWxpa2UgdG9vbCB0aGF0IGxvb2tzIGZvciBkaXZpc2lvbiBvcGVyYXRvcnMKIGZpbmRsaW5rc3RvLnB5ICAgICAgICAgIFJlY3Vyc2l2ZWx5IGZpbmQgc3ltYm9saWMgbGlua3MgdG8gYSBnaXZlbiBwYXRoIHByZWZpeAogZmluZG5vY29kaW5nLnB5ICAgICAgICAgRmluZCBzb3VyY2UgZmlsZXMgd2hpY2ggbmVlZCBhbiBlbmNvZGluZyBkZWNsYXJhdGlvbgpAQCAtNTMsNiArNTMsNyBAQAogcmVpbmRlbnQucHkgICAgICAgICAgICAgQ2hhbmdlIC5weSBmaWxlcyB0byB1c2UgNC1zcGFjZSBpbmRlbnRzCiByZWluZGVudC1yc3QucHkgICAgICAgICBGaXgtdXAgcmVTdHJ1Y3R1cmVkVGV4dCBmaWxlIHdoaXRlc3BhY2UKIHJncmVwLnB5ICAgICAgICAgICAgICAgIFJldmVyc2UgZ3JlcCB0aHJvdWdoIGEgZmlsZSAodXNlZnVsIGZvciBiaWcgbG9nZmlsZXMpCitydW5fdGVzdHMucHkgICAgICAgICAgICBSdW4gdGhlIHRlc3Qgc3VpdGUgd2l0aCBtb3JlIHNlbnNpYmxlIGRlZmF1bHQgb3B0aW9ucwogc2VydmUucHkgICAgICAgICAgICAgICAgU21hbGwgd3NnaXJlZi1iYXNlZCB3ZWIgc2VydmVyLCB1c2VkIGluIG1ha2Ugc2VydmUgaW4gRG9jCiBzdWZmLnB5ICAgICAgICAgICAgICAgICBTb3J0IGEgbGlzdCBvZiBmaWxlcyBieSBzdWZmaXgKIHN2bmVvbC5weSAgICAgICAgICAgICAgIFNldCBzdm46ZW9sLXN0eWxlIG9uIGFsbCBmaWxlcyBpbiBkaXJlY3RvcnkKZGlmZiAtLWdpdCBhL1Rvb2xzL3NjcmlwdHMvZmluZG5vY29kaW5nLnB5IGIvVG9vbHMvc2NyaXB0cy9maW5kbm9jb2RpbmcucHkKaW5kZXggNzc2MDdjZS4uYzQyZmE3YyAxMDA3NTUKLS0tIGEvVG9vbHMvc2NyaXB0cy9maW5kbm9jb2RpbmcucHkKKysrIGIvVG9vbHMvc2NyaXB0cy9maW5kbm9jb2RpbmcucHkKQEAgLTIsNyArMiw3IEBACiAKICIiIkxpc3QgYWxsIHRob3NlIFB5dGhvbiBmaWxlcyB0aGF0IHJlcXVpcmUgYSBjb2RpbmcgZGlyZWN0aXZlCiAKLVVzYWdlOiBub2NvZGluZy5weSBkaXIxIFtkaXIyLi4uXQorVXNhZ2U6IGZpbmRub2NvZGluZy5weSBkaXIxIFtkaXIyLi4uXQogIiIiCiAKIF9fYXV0aG9yX18gPSAiT2xlZyBCcm95dG1hbm4sIEdlb3JnIEJyYW5kbCIKQEAgLTUwLDcgKzUwLDcgQEAKIAogZGVmIG5lZWRzX2RlY2xhcmF0aW9uKGZ1bGxwYXRoKToKICAgICB0cnk6Ci0gICAgICAgIGluZmlsZSA9IG9wZW4oZnVsbHBhdGgsICdyVScpCisgICAgICAgIGluZmlsZSA9IG9wZW4oZnVsbHBhdGgpCiAgICAgZXhjZXB0IElPRXJyb3I6ICMgT29wcywgdGhlIGZpbGUgd2FzIHJlbW92ZWQgLSBpZ25vcmUgaXQKICAgICAgICAgcmV0dXJuIE5vbmUKIApkaWZmIC0tZ2l0IGEvVG9vbHMvc2NyaXB0cy9wYXRjaGNoZWNrLnB5IGIvVG9vbHMvc2NyaXB0cy9wYXRjaGNoZWNrLnB5CmluZGV4IDBlMThkZDkuLjM4MDU3NGEgMTAwNzU1Ci0tLSBhL1Rvb2xzL3NjcmlwdHMvcGF0Y2hjaGVjay5weQorKysgYi9Ub29scy9zY3JpcHRzL3BhdGNoY2hlY2sucHkKQEAgLTQ5LDI5ICs0OSwxNSBAQAogQHN0YXR1cygiR2V0dGluZyB0aGUgbGlzdCBvZiBmaWxlcyB0aGF0IGhhdmUgYmVlbiBhZGRlZC9jaGFuZ2VkIiwKICAgICAgICAgaW5mbz1sYW1iZGEgeDogbl9maWxlc19zdHIobGVuKHgpKSkKIGRlZiBjaGFuZ2VkX2ZpbGVzKCk6Ci0gICAgIiIiR2V0IHRoZSBsaXN0IG9mIGNoYW5nZWQgb3IgYWRkZWQgZmlsZXMgZnJvbSB0aGUgVkNTLiIiIgotICAgIGlmIG9zLnBhdGguaXNkaXIob3MucGF0aC5qb2luKFNSQ0RJUiwgJy5oZycpKToKLSAgICAgICAgdmNzID0gJ2hnJwotICAgICAgICBjbWQgPSAnaGcgc3RhdHVzIC0tYWRkZWQgLS1tb2RpZmllZCAtLW5vLXN0YXR1cycKLSAgICAgICAgaWYgbXFfcGF0Y2hlc19hcHBsaWVkKCk6Ci0gICAgICAgICAgICBjbWQgKz0gJyAtLXJldiBxcGFyZW50JwotICAgIGVsaWYgb3MucGF0aC5pc2RpcignLnN2bicpOgotICAgICAgICB2Y3MgPSAnc3ZuJwotICAgICAgICBjbWQgPSAnc3ZuIHN0YXR1cyAtLXF1aWV0IC0tbm9uLWludGVyYWN0aXZlIC0taWdub3JlLWV4dGVybmFscycKLSAgICBlbHNlOgorICAgICIiIkdldCB0aGUgbGlzdCBvZiBjaGFuZ2VkIG9yIGFkZGVkIGZpbGVzIGZyb20gTWVyY3VyaWFsLiIiIgorICAgIGlmIG5vdCBvcy5wYXRoLmlzZGlyKG9zLnBhdGguam9pbihTUkNESVIsICcuaGcnKSk6CiAgICAgICAgIHN5cy5leGl0KCduZWVkIGEgY2hlY2tvdXQgdG8gZ2V0IG1vZGlmaWVkIGZpbGVzJykKIAotICAgIHN0ID0gc3VicHJvY2Vzcy5Qb3BlbihjbWQuc3BsaXQoKSwgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSkKLSAgICB0cnk6Ci0gICAgICAgIHN0LndhaXQoKQotICAgICAgICBpZiB2Y3MgPT0gJ2hnJzoKLSAgICAgICAgICAgIHJldHVybiBbeC5kZWNvZGUoKS5yc3RyaXAoKSBmb3IgeCBpbiBzdC5zdGRvdXRdCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBvdXRwdXQgPSAoeC5kZWNvZGUoKS5yc3RyaXAoKS5yc3BsaXQoTm9uZSwgMSlbLTFdCi0gICAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gc3Quc3Rkb3V0IGlmIHhbMF0gaW4gYidBTScpCi0gICAgICAgIHJldHVybiBzZXQocGF0aCBmb3IgcGF0aCBpbiBvdXRwdXQgaWYgb3MucGF0aC5pc2ZpbGUocGF0aCkpCi0gICAgZmluYWxseToKLSAgICAgICAgc3Quc3Rkb3V0LmNsb3NlKCkKKyAgICBjbWQgPSAnaGcgc3RhdHVzIC0tYWRkZWQgLS1tb2RpZmllZCAtLW5vLXN0YXR1cycKKyAgICBpZiBtcV9wYXRjaGVzX2FwcGxpZWQoKToKKyAgICAgICAgY21kICs9ICcgLS1yZXYgcXBhcmVudCcKKyAgICB3aXRoIHN1YnByb2Nlc3MuUG9wZW4oY21kLnNwbGl0KCksIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUpIGFzIHN0OgorICAgICAgICByZXR1cm4gW3guZGVjb2RlKCkucnN0cmlwKCkgZm9yIHggaW4gc3Quc3Rkb3V0XQogCiAKIGRlZiByZXBvcnRfbW9kaWZpZWRfZmlsZXMoZmlsZV9wYXRocyk6CkBAIC04OSwxMCArNzUsOCBAQAogZGVmIG5vcm1hbGl6ZV93aGl0ZXNwYWNlKGZpbGVfcGF0aHMpOgogICAgICIiIk1ha2Ugc3VyZSB0aGF0IHRoZSB3aGl0ZXNwYWNlIGZvciAucHkgZmlsZXMgaGF2ZSBiZWVuIG5vcm1hbGl6ZWQuIiIiCiAgICAgcmVpbmRlbnQubWFrZWJhY2t1cCA9IEZhbHNlICAjIE5vIG5lZWQgdG8gY3JlYXRlIGJhY2t1cHMuCi0gICAgZml4ZWQgPSBbXQotICAgIGZvciBwYXRoIGluICh4IGZvciB4IGluIGZpbGVfcGF0aHMgaWYgeC5lbmRzd2l0aCgnLnB5JykpOgotICAgICAgICBpZiByZWluZGVudC5jaGVjayhvcy5wYXRoLmpvaW4oU1JDRElSLCBwYXRoKSk6Ci0gICAgICAgICAgICBmaXhlZC5hcHBlbmQocGF0aCkKKyAgICBmaXhlZCA9IFtwYXRoIGZvciBwYXRoIGluIGZpbGVfcGF0aHMgaWYgcGF0aC5lbmRzd2l0aCgnLnB5JykgYW5kCisgICAgICAgICAgICAgcmVpbmRlbnQuY2hlY2sob3MucGF0aC5qb2luKFNSQ0RJUiwgcGF0aCkpXQogICAgIHJldHVybiBmaXhlZAogCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL3NjcmlwdHMvcHlzZXR1cDMgYi9Ub29scy9zY3JpcHRzL3B5c2V0dXAzCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmU2YTkwOGQKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9zY3JpcHRzL3B5c2V0dXAzCkBAIC0wLDAgKzEsNCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworaW1wb3J0IHN5cworZnJvbSBwYWNrYWdpbmcucnVuIGltcG9ydCBtYWluCitzeXMuZXhpdChtYWluKCkpCmRpZmYgLS1naXQgYS9Ub29scy9zY3JpcHRzL3B5c291cmNlLnB5IGIvVG9vbHMvc2NyaXB0cy9weXNvdXJjZS5weQppbmRleCAwNDgxMzFlLi5jN2RiZTYwIDEwMDc1NQotLS0gYS9Ub29scy9zY3JpcHRzL3B5c291cmNlLnB5CisrKyBiL1Rvb2xzL3NjcmlwdHMvcHlzb3VyY2UucHkKQEAgLTQyLDcgKzQyLDcgQEAKICAgICAgICAgcmV0dXJuIE5vbmUKIAogICAgIHRyeToKLSAgICAgICAgcmV0dXJuIG9wZW4oZnVsbHBhdGgsICdyVScpCisgICAgICAgIHJldHVybiBvcGVuKGZ1bGxwYXRoKQogICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGVycjogIyBBY2Nlc3MgZGVuaWVkLCBvciBhIHNwZWNpYWwgZmlsZSAtIGlnbm9yZSBpdAogICAgICAgICBwcmludF9kZWJ1ZygiJXM6IGFjY2VzcyBkZW5pZWQ6ICVzIiAlIChmdWxscGF0aCwgZXJyKSkKICAgICAgICAgcmV0dXJuIE5vbmUKZGlmZiAtLWdpdCBhL1Rvb2xzL3NjcmlwdHMvcmVpbmRlbnQucHkgYi9Ub29scy9zY3JpcHRzL3JlaW5kZW50LnB5CmluZGV4IGIxODk5M2IuLjRhOTE2ZWEgMTAwNzU1Ci0tLSBhL1Rvb2xzL3NjcmlwdHMvcmVpbmRlbnQucHkKKysrIGIvVG9vbHMvc2NyaXB0cy9yZWluZGVudC5weQpAQCAtOCw2ICs4LDggQEAKIC1yICgtLXJlY3Vyc2UpICBSZWN1cnNlLiAgIFNlYXJjaCBmb3IgYWxsIC5weSBmaWxlcyBpbiBzdWJkaXJlY3RvcmllcyB0b28uCiAtbiAoLS1ub2JhY2t1cCkgTm8gYmFja3VwLiBEb2VzIG5vdCBtYWtlIGEgIi5iYWsiIGZpbGUgYmVmb3JlIHJlaW5kZW50aW5nLgogLXYgKC0tdmVyYm9zZSkgIFZlcmJvc2UuICAgUHJpbnQgaW5mb3JtYXRpdmUgbXNnczsgZWxzZSBubyBvdXRwdXQuCisgICAoLS1uZXdsaW5lKSAgTmV3bGluZS4gICBTcGVjaWZ5IHRoZSBuZXdsaW5lIGNoYXJhY3RlciB0byB1c2UgKENSTEYsIExGKS4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIGZpbGUuCiAtaCAoLS1oZWxwKSAgICAgSGVscC4gICAgICBQcmludCB0aGlzIHVzYWdlIGluZm9ybWF0aW9uIGFuZCBleGl0LgogCiBDaGFuZ2UgUHl0aG9uICgucHkpIGZpbGVzIHRvIHVzZSA0LXNwYWNlIGluZGVudHMgYW5kIG5vIGhhcmQgdGFiIGNoYXJhY3RlcnMuCkBAIC01MCw2ICs1Miw4IEBACiByZWN1cnNlID0gRmFsc2UKIGRyeXJ1biA9IEZhbHNlCiBtYWtlYmFja3VwID0gVHJ1ZQorc3BlY19uZXdsaW5lID0gTm9uZQorIiIiQSBzcGVjaWZpZWQgbmV3bGluZSB0byBiZSB1c2VkIGluIHRoZSBvdXRwdXQgKHNldCBieSAtLW5ld2xpbmUgb3B0aW9uKSIiIgogCiAKIGRlZiB1c2FnZShtc2c9Tm9uZSk6CkBAIC02MiwxMyArNjYsMTIgQEAKICAgICBzeXMuc3RkZXJyLndyaXRlKCIgIi5qb2luKHN0cihhcmcpIGZvciBhcmcgaW4gYXJncykpCiAgICAgc3lzLnN0ZGVyci53cml0ZSgiXG4iKQogCi0KIGRlZiBtYWluKCk6CiAgICAgaW1wb3J0IGdldG9wdAotICAgIGdsb2JhbCB2ZXJib3NlLCByZWN1cnNlLCBkcnlydW4sIG1ha2ViYWNrdXAKKyAgICBnbG9iYWwgdmVyYm9zZSwgcmVjdXJzZSwgZHJ5cnVuLCBtYWtlYmFja3VwLCBzcGVjX25ld2xpbmUKICAgICB0cnk6CiAgICAgICAgIG9wdHMsIGFyZ3MgPSBnZXRvcHQuZ2V0b3B0KHN5cy5hcmd2WzE6XSwgImRybnZoIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIFsiZHJ5cnVuIiwgInJlY3Vyc2UiLCAibm9iYWNrdXAiLCAidmVyYm9zZSIsICJoZWxwIl0pCisgICAgICAgICAgICBbImRyeXJ1biIsICJyZWN1cnNlIiwgIm5vYmFja3VwIiwgInZlcmJvc2UiLCAibmV3bGluZT0iLCAiaGVscCJdKQogICAgIGV4Y2VwdCBnZXRvcHQuZXJyb3IgYXMgbXNnOgogICAgICAgICB1c2FnZShtc2cpCiAgICAgICAgIHJldHVybgpAQCAtODEsNiArODQsMTEgQEAKICAgICAgICAgICAgIG1ha2ViYWNrdXAgPSBGYWxzZQogICAgICAgICBlbGlmIG8gaW4gKCctdicsICctLXZlcmJvc2UnKToKICAgICAgICAgICAgIHZlcmJvc2UgPSBUcnVlCisgICAgICAgIGVsaWYgbyBpbiAoJy0tbmV3bGluZScsKToKKyAgICAgICAgICAgIGlmIG5vdCBhLnVwcGVyKCkgaW4gKCdDUkxGJywgJ0xGJyk6CisgICAgICAgICAgICAgICAgdXNhZ2UoKQorICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgc3BlY19uZXdsaW5lID0gZGljdChDUkxGPSdcclxuJywgTEY9J1xuJylbYS51cHBlcigpXQogICAgICAgICBlbGlmIG8gaW4gKCctaCcsICctLWhlbHAnKToKICAgICAgICAgICAgIHVzYWdlKCkKICAgICAgICAgICAgIHJldHVybgpAQCAtMTE4LDkgKzEyNiw5IEBACiAgICAgICAgIGVycnByaW50KCIlczogSS9PIEVycm9yOiAlcyIgJSAoZmlsZSwgc3RyKG1zZykpKQogICAgICAgICByZXR1cm4KIAotICAgIG5ld2xpbmUgPSByLm5ld2xpbmVzCisgICAgbmV3bGluZSA9IHNwZWNfbmV3bGluZSBpZiBzcGVjX25ld2xpbmUgZWxzZSByLm5ld2xpbmVzCiAgICAgaWYgaXNpbnN0YW5jZShuZXdsaW5lLCB0dXBsZSk6Ci0gICAgICAgIGVycnByaW50KCIlczogbWl4ZWQgbmV3bGluZXMgZGV0ZWN0ZWQ7IGNhbm5vdCBwcm9jZXNzIGZpbGUiICUgZmlsZSkKKyAgICAgICAgZXJycHJpbnQoIiVzOiBtaXhlZCBuZXdsaW5lcyBkZXRlY3RlZDsgY2Fubm90IGNvbnRpbnVlIHdpdGhvdXQgLS1uZXdsaW5lIiAlIGZpbGUpCiAgICAgICAgIHJldHVybgogCiAgICAgaWYgci5ydW4oKToKZGlmZiAtLWdpdCBhL1Rvb2xzL3NjcmlwdHMvcnVuX3Rlc3RzLnB5IGIvVG9vbHMvc2NyaXB0cy9ydW5fdGVzdHMucHkKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uZjc1MGUxOQotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL3NjcmlwdHMvcnVuX3Rlc3RzLnB5CkBAIC0wLDAgKzEsNDcgQEAKKyIiIlJ1biBQeXRob24ncyB0ZXN0IHN1aXRlIGluIGEgZmFzdCwgcmlnb3JvdXMgd2F5LgorCitUaGUgZGVmYXVsdHMgYXJlIG1lYW50IHRvIGJlIHJlYXNvbmFibHkgdGhvcm91Z2gsIHdoaWxlIHNraXBwaW5nIGNlcnRhaW4KK3Rlc3RzIHRoYXQgY2FuIGJlIHRpbWUtY29uc3VtaW5nIG9yIHJlc291cmNlLWludGVuc2l2ZSAoZS5nLiBsYXJnZWZpbGUpLAorb3IgZGlzdHJhY3RpbmcgKGUuZy4gYXVkaW8gYW5kIGd1aSkuIFRoZXNlIGRlZmF1bHRzIGNhbiBiZSBvdmVycmlkZGVuIGJ5CitzaW1wbHkgcGFzc2luZyBhIC11IG9wdGlvbiB0byB0aGlzIHNjcmlwdC4KKworIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHRlc3Quc3VwcG9ydAorCisKK2RlZiBpc19tdWx0aXByb2Nlc3NfZmxhZyhhcmcpOgorICAgIHJldHVybiBhcmcuc3RhcnRzd2l0aCgnLWonKSBvciBhcmcuc3RhcnRzd2l0aCgnLS1tdWx0aXByb2Nlc3MnKQorCisKK2RlZiBpc19yZXNvdXJjZV91c2VfZmxhZyhhcmcpOgorICAgIHJldHVybiBhcmcuc3RhcnRzd2l0aCgnLXUnKSBvciBhcmcuc3RhcnRzd2l0aCgnLS11c2UnKQorCisKK2RlZiBtYWluKHJlZ3J0ZXN0X2FyZ3MpOgorICAgIGFyZ3MgPSBbc3lzLmV4ZWN1dGFibGUsCisgICAgICAgICAgICAnLVcnLCAnZGVmYXVsdCcsICAgICAgIyBXYXJuaW5ncyBzZXQgdG8gJ2RlZmF1bHQnCisgICAgICAgICAgICAnLWJiJywgICAgICAgICAgICAgICAgIyBXYXJuaW5ncyBhYm91dCBieXRlcy9ieXRlYXJyYXkKKyAgICAgICAgICAgICctRScsICAgICAgICAgICAgICAgICAjIElnbm9yZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMKKyAgICAgICAgICAgIF0KKyAgICAjIEFsbG93IHVzZXItc3BlY2lmaWVkIGludGVycHJldGVyIG9wdGlvbnMgdG8gb3ZlcnJpZGUgb3VyIGRlZmF1bHRzLgorICAgIGFyZ3MuZXh0ZW5kKHRlc3Quc3VwcG9ydC5hcmdzX2Zyb21faW50ZXJwcmV0ZXJfZmxhZ3MoKSkKKyAgICBhcmdzLmV4dGVuZChbJy1tJywgJ3Rlc3QnLCAgICAjIFJ1biB0aGUgdGVzdCBzdWl0ZQorICAgICAgICAgICAgICAgICAnLXInLCAgICAgICAgICAgICMgUmFuZG9taXplIHRlc3Qgb3JkZXIKKyAgICAgICAgICAgICAgICAgJy13JywgICAgICAgICAgICAjIFJlLXJ1biBmYWlsZWQgdGVzdHMgaW4gdmVyYm9zZSBtb2RlCisgICAgICAgICAgICAgICAgIF0pCisgICAgaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgICAgIGFyZ3MuYXBwZW5kKCctbicpICAgICAgICAgIyBTaWxlbmNlIGFsZXJ0cyB1bmRlciBXaW5kb3dzCisgICAgaWYgbm90IGFueShpc19tdWx0aXByb2Nlc3NfZmxhZyhhcmcpIGZvciBhcmcgaW4gcmVncnRlc3RfYXJncyk6CisgICAgICAgIGFyZ3MuZXh0ZW5kKFsnLWonLCAnMCddKSAgIyBVc2UgYWxsIENQVSBjb3JlcworICAgIGlmIG5vdCBhbnkoaXNfcmVzb3VyY2VfdXNlX2ZsYWcoYXJnKSBmb3IgYXJnIGluIHJlZ3J0ZXN0X2FyZ3MpOgorICAgICAgICBhcmdzLmV4dGVuZChbJy11JywgJ2FsbCwtbGFyZ2VmaWxlLC1hdWRpbywtZ3VpJ10pCisgICAgYXJncy5leHRlbmQocmVncnRlc3RfYXJncykKKyAgICBwcmludCgnICcuam9pbihhcmdzKSkKKyAgICBvcy5leGVjdihzeXMuZXhlY3V0YWJsZSwgYXJncykKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIG1haW4oc3lzLmFyZ3ZbMTpdKQpkaWZmIC0tZ2l0IGEvVG9vbHMvdW5pY29kZS9jb21wYXJlY29kZWNzLnB5IGIvVG9vbHMvdW5pY29kZS9jb21wYXJlY29kZWNzLnB5CmluZGV4IDBmNWMxZTIuLjdkZTE0ZmQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL3VuaWNvZGUvY29tcGFyZWNvZGVjcy5weQorKysgYi9Ub29scy91bmljb2RlL2NvbXBhcmVjb2RlY3MucHkKQEAgLTE0LDcgKzE0LDcgQEAKICAgICBwcmludCgnQ29tcGFyaW5nIGVuY29kaW5nL2RlY29kaW5nIG9mICAgJXIgYW5kICAgJXInICUgKGVuY29kaW5nMSwgZW5jb2RpbmcyKSkKICAgICBtaXNtYXRjaCA9IDAKICAgICAjIENoZWNrIGVuY29kaW5nCi0gICAgZm9yIGkgaW4gcmFuZ2Uoc3lzLm1heHVuaWNvZGUpOgorICAgIGZvciBpIGluIHJhbmdlKHN5cy5tYXh1bmljb2RlKzEpOgogICAgICAgICB1ID0gY2hyKGkpCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGMxID0gdS5lbmNvZGUoZW5jb2RpbmcxKQpkaWZmIC0tZ2l0IGEvVG9vbHMvdW5pY29kZS9tYWtldW5pY29kZWRhdGEucHkgYi9Ub29scy91bmljb2RlL21ha2V1bmljb2RlZGF0YS5weQppbmRleCBkNTAzMTkwLi5kYjBmOGVjIDEwMDY0NAotLS0gYS9Ub29scy91bmljb2RlL21ha2V1bmljb2RlZGF0YS5weQorKysgYi9Ub29scy91bmljb2RlL21ha2V1bmljb2RlZGF0YS5weQpAQCAtMjEsMTcgKzIxLDI0IEBACiAjIDIwMDQtMDUtMjkgcGVya3kgYWRkIGVhc3QgYXNpYW4gd2lkdGggaW5mb3JtYXRpb24KICMgMjAwNi0wMy0xMCBtdmwgIHVwZGF0ZSB0byBVbmljb2RlIDQuMTsgYWRkIFVDRCAzLjIgZGVsdGEKICMgMjAwOC0wNi0xMSBnYiAgIGFkZCBQUklOVEFCTEVfTUFTSyBmb3IgQXRzdW8gSXNoaW1vdG8ncyBhc2NpaSgpIHBhdGNoCisjIDIwMTEtMTAtMjEgZXppbyBhZGQgc3VwcG9ydCBmb3IgbmFtZSBhbGlhc2VzIGFuZCBuYW1lZCBzZXF1ZW5jZXMKKyMgMjAxMi0wMSAgICBiZW5qYW1pbiBhZGQgZnVsbCBjYXNlIG1hcHBpbmdzCiAjCiAjIHdyaXR0ZW4gYnkgRnJlZHJpayBMdW5kaCAoZnJlZHJpa0BweXRob253YXJlLmNvbSkKICMKIAotaW1wb3J0IHN5cywgb3MsIHppcGZpbGUKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHppcGZpbGUKKworZnJvbSB0ZXh0d3JhcCBpbXBvcnQgZGVkZW50Citmcm9tIG9wZXJhdG9yIGltcG9ydCBpdGVtZ2V0dGVyCiAKIFNDUklQVCA9IHN5cy5hcmd2WzBdCiBWRVJTSU9OID0gIjMuMiIKIAogIyBUaGUgVW5pY29kZSBEYXRhYmFzZQotVU5JREFUQV9WRVJTSU9OID0gIjYuMC4wIgorVU5JREFUQV9WRVJTSU9OID0gIjYuMS4wIgogVU5JQ09ERV9EQVRBID0gIlVuaWNvZGVEYXRhJXMudHh0IgogQ09NUE9TSVRJT05fRVhDTFVTSU9OUyA9ICJDb21wb3NpdGlvbkV4Y2x1c2lvbnMlcy50eHQiCiBFQVNUQVNJQU5fV0lEVEggPSAiRWFzdEFzaWFuV2lkdGglcy50eHQiCkBAIC0zOSw2ICs0NiwxOSBAQAogREVSSVZFRF9DT1JFX1BST1BFUlRJRVMgPSAiRGVyaXZlZENvcmVQcm9wZXJ0aWVzJXMudHh0IgogREVSSVZFRE5PUk1BTElaQVRJT05fUFJPUFMgPSAiRGVyaXZlZE5vcm1hbGl6YXRpb25Qcm9wcyVzLnR4dCIKIExJTkVfQlJFQUsgPSAiTGluZUJyZWFrJXMudHh0IgorTkFNRV9BTElBU0VTID0gIk5hbWVBbGlhc2VzJXMudHh0IgorTkFNRURfU0VRVUVOQ0VTID0gIk5hbWVkU2VxdWVuY2VzJXMudHh0IgorU1BFQ0lBTF9DQVNJTkcgPSAiU3BlY2lhbENhc2luZyVzLnR4dCIKK0NBU0VfRk9MRElORyA9ICJDYXNlRm9sZGluZyVzLnR4dCIKKworIyBQcml2YXRlIFVzZSBBcmVhcyAtLSBpbiBwbGFuZXMgMSwgMTUsIDE2CitQVUFfMSA9IHJhbmdlKDB4RTAwMCwgMHhGOTAwKQorUFVBXzE1ID0gcmFuZ2UoMHhGMDAwMCwgMHhGRkZGRSkKK1BVQV8xNiA9IHJhbmdlKDB4MTAwMDAwLCAweDEwRkZGRSkKKworIyB3ZSB1c2UgdGhpcyByYW5nZXMgb2YgUFVBXzE1IHRvIHN0b3JlIG5hbWUgYWxpYXNlcyBhbmQgbmFtZWQgc2VxdWVuY2VzCitOQU1FX0FMSUFTRVNfU1RBUlQgPSAweEYwMDAwCitOQU1FRF9TRVFVRU5DRVNfU1RBUlQgPSAweEYwMjAwCiAKIG9sZF92ZXJzaW9ucyA9IFsiMy4yLjAiXQogCkBAIC02NywxMyArODcsMTUgQEAKIFhJRF9TVEFSVF9NQVNLID0gMHgxMDAKIFhJRF9DT05USU5VRV9NQVNLID0gMHgyMDAKIFBSSU5UQUJMRV9NQVNLID0gMHg0MDAKLU5PREVMVEFfTUFTSyA9IDB4ODAwCi1OVU1FUklDX01BU0sgPSAweDEwMDAKK05VTUVSSUNfTUFTSyA9IDB4ODAwCitDQVNFX0lHTk9SQUJMRV9NQVNLID0gMHgxMDAwCitDQVNFRF9NQVNLID0gMHgyMDAwCitFWFRFTkRFRF9DQVNFX01BU0sgPSAweDQwMDAKIAogIyB0aGVzZSByYW5nZXMgbmVlZCB0byBtYXRjaCB1bmljb2RlZGF0YS5jOmlzX3VuaWZpZWRfaWRlb2dyYXBoCiBjamtfcmFuZ2VzID0gWwogICAgICgnMzQwMCcsICc0REI1JyksCi0gICAgKCc0RTAwJywgJzlGQ0InKSwKKyAgICAoJzRFMDAnLCAnOUZDQycpLAogICAgICgnMjAwMDAnLCAnMkE2RDYnKSwKICAgICAoJzJBNzAwJywgJzJCNzM0JyksCiAgICAgKCcyQjc0MCcsICcyQjgxRCcpCkBAIC0zNjcsNiArMzg5LDcgQEAKICAgICBudW1lcmljID0ge30KICAgICBzcGFjZXMgPSBbXQogICAgIGxpbmVicmVha3MgPSBbXQorICAgIGV4dHJhX2Nhc2luZyA9IFtdCiAKICAgICBmb3IgY2hhciBpbiB1bmljb2RlLmNoYXJzOgogICAgICAgICByZWNvcmQgPSB1bmljb2RlLnRhYmxlW2NoYXJdCkBAIC0zNzksNyArNDAyLDcgQEAKICAgICAgICAgICAgIGRlbHRhID0gVHJ1ZQogICAgICAgICAgICAgaWYgY2F0ZWdvcnkgaW4gWyJMbSIsICJMdCIsICJMdSIsICJMbCIsICJMbyJdOgogICAgICAgICAgICAgICAgIGZsYWdzIHw9IEFMUEhBX01BU0sKLSAgICAgICAgICAgIGlmIGNhdGVnb3J5ID09ICJMbCI6CisgICAgICAgICAgICBpZiAiTG93ZXJjYXNlIiBpbiBwcm9wZXJ0aWVzOgogICAgICAgICAgICAgICAgIGZsYWdzIHw9IExPV0VSX01BU0sKICAgICAgICAgICAgIGlmICdMaW5lX0JyZWFrJyBpbiBwcm9wZXJ0aWVzIG9yIGJpZGlyZWN0aW9uYWwgPT0gIkIiOgogICAgICAgICAgICAgICAgIGZsYWdzIHw9IExJTkVCUkVBS19NQVNLCkBAIC0zODksNyArNDEyLDcgQEAKICAgICAgICAgICAgICAgICBzcGFjZXMuYXBwZW5kKGNoYXIpCiAgICAgICAgICAgICBpZiBjYXRlZ29yeSA9PSAiTHQiOgogICAgICAgICAgICAgICAgIGZsYWdzIHw9IFRJVExFX01BU0sKLSAgICAgICAgICAgIGlmIGNhdGVnb3J5ID09ICJMdSI6CisgICAgICAgICAgICBpZiAiVXBwZXJjYXNlIiBpbiBwcm9wZXJ0aWVzOgogICAgICAgICAgICAgICAgIGZsYWdzIHw9IFVQUEVSX01BU0sKICAgICAgICAgICAgIGlmIGNoYXIgPT0gb3JkKCIgIikgb3IgY2F0ZWdvcnlbMF0gbm90IGluICgiQyIsICJaIik6CiAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gUFJJTlRBQkxFX01BU0sKQEAgLTM5Nyw3ICs0MjAsMTIgQEAKICAgICAgICAgICAgICAgICBmbGFncyB8PSBYSURfU1RBUlRfTUFTSwogICAgICAgICAgICAgaWYgIlhJRF9Db250aW51ZSIgaW4gcHJvcGVydGllczoKICAgICAgICAgICAgICAgICBmbGFncyB8PSBYSURfQ09OVElOVUVfTUFTSwotICAgICAgICAgICAgIyB1c2UgZGVsdGEgcHJlZGljdG9yIGZvciB1cHBlci9sb3dlci90aXRsZSBpZiBpdCBmaXRzCisgICAgICAgICAgICBpZiAiQ2FzZWQiIGluIHByb3BlcnRpZXM6CisgICAgICAgICAgICAgICAgZmxhZ3MgfD0gQ0FTRURfTUFTSworICAgICAgICAgICAgaWYgIkNhc2VfSWdub3JhYmxlIiBpbiBwcm9wZXJ0aWVzOgorICAgICAgICAgICAgICAgIGZsYWdzIHw9IENBU0VfSUdOT1JBQkxFX01BU0sKKyAgICAgICAgICAgIHNjID0gdW5pY29kZS5zcGVjaWFsX2Nhc2luZy5nZXQoY2hhcikKKyAgICAgICAgICAgIGNmID0gdW5pY29kZS5jYXNlX2ZvbGRpbmcuZ2V0KGNoYXIsIFtjaGFyXSkKICAgICAgICAgICAgIGlmIHJlY29yZFsxMl06CiAgICAgICAgICAgICAgICAgdXBwZXIgPSBpbnQocmVjb3JkWzEyXSwgMTYpCiAgICAgICAgICAgICBlbHNlOgpAQCAtNDA5LDIzICs0MzcsMzkgQEAKICAgICAgICAgICAgIGlmIHJlY29yZFsxNF06CiAgICAgICAgICAgICAgICAgdGl0bGUgPSBpbnQocmVjb3JkWzE0XSwgMTYpCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICMgVUNELmh0bWwgc2F5cyB0aGF0IGEgbWlzc2luZyB0aXRsZSBjaGFyIG1lYW5zIHRoYXQKLSAgICAgICAgICAgICAgICAjIGl0IGRlZmF1bHRzIHRvIHRoZSB1cHBlcmNhc2UgY2hhcmFjdGVyLCBub3QgdG8gdGhlCi0gICAgICAgICAgICAgICAgIyBjaGFyYWN0ZXIgaXRzZWxmLiBBcHBhcmVudGx5LCBpbiB0aGUgY3VycmVudCBVQ0QgKDUueCkKLSAgICAgICAgICAgICAgICAjIHRoaXMgZmVhdHVyZSBpcyBuZXZlciB1c2VkCiAgICAgICAgICAgICAgICAgdGl0bGUgPSB1cHBlcgotICAgICAgICAgICAgdXBwZXJfZCA9IHVwcGVyIC0gY2hhcgotICAgICAgICAgICAgbG93ZXJfZCA9IGxvd2VyIC0gY2hhcgotICAgICAgICAgICAgdGl0bGVfZCA9IHRpdGxlIC0gY2hhcgotICAgICAgICAgICAgaWYgLTMyNzY4IDw9IHVwcGVyX2QgPD0gMzI3NjcgYW5kIFwKLSAgICAgICAgICAgICAgIC0zMjc2OCA8PSBsb3dlcl9kIDw9IDMyNzY3IGFuZCBcCi0gICAgICAgICAgICAgICAtMzI3NjggPD0gdGl0bGVfZCA8PSAzMjc2NzoKLSAgICAgICAgICAgICAgICAjIHVzZSBkZWx0YXMKLSAgICAgICAgICAgICAgICB1cHBlciA9IHVwcGVyX2QgJiAweGZmZmYKLSAgICAgICAgICAgICAgICBsb3dlciA9IGxvd2VyX2QgJiAweGZmZmYKLSAgICAgICAgICAgICAgICB0aXRsZSA9IHRpdGxlX2QgJiAweGZmZmYKKyAgICAgICAgICAgIGlmIHNjIGlzIE5vbmUgYW5kIGNmICE9IFtsb3dlcl06CisgICAgICAgICAgICAgICAgc2MgPSAoW2xvd2VyXSwgW3RpdGxlXSwgW3VwcGVyXSkKKyAgICAgICAgICAgIGlmIHNjIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgaWYgdXBwZXIgPT0gbG93ZXIgPT0gdGl0bGU6CisgICAgICAgICAgICAgICAgICAgIHVwcGVyID0gbG93ZXIgPSB0aXRsZSA9IDAKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICB1cHBlciA9IHVwcGVyIC0gY2hhcgorICAgICAgICAgICAgICAgICAgICBsb3dlciA9IGxvd2VyIC0gY2hhcgorICAgICAgICAgICAgICAgICAgICB0aXRsZSA9IHRpdGxlIC0gY2hhcgorICAgICAgICAgICAgICAgICAgICBhc3NlcnQgKGFicyh1cHBlcikgPD0gMjE0NzQ4MzY0NyBhbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYnMobG93ZXIpIDw9IDIxNDc0ODM2NDcgYW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJzKHRpdGxlKSA8PSAyMTQ3NDgzNjQ3KQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBmbGFncyB8PSBOT0RFTFRBX01BU0sKKyAgICAgICAgICAgICAgICAjIFRoaXMgaGFwcGVucyBlaXRoZXIgd2hlbiBzb21lIGNoYXJhY3RlciBtYXBzIHRvIG1vcmUgdGhhbiBvbmUKKyAgICAgICAgICAgICAgICAjIGNoYXJhY3RlciBpbiB1cHBlcmNhc2UsIGxvd2VyY2FzZSwgb3IgdGl0bGVjYXNlIG9yIHRoZQorICAgICAgICAgICAgICAgICMgY2FzZWZvbGRlZCB2ZXJzaW9uIG9mIHRoZSBjaGFyYWN0ZXIgaXMgZGlmZmVyZW50IGZyb20gdGhlCisgICAgICAgICAgICAgICAgIyBsb3dlcmNhc2UuIFRoZSBleHRyYSBjaGFyYWN0ZXJzIGFyZSBzdG9yZWQgaW4gYSBkaWZmZXJlbnQKKyAgICAgICAgICAgICAgICAjIGFycmF5LgorICAgICAgICAgICAgICAgIGZsYWdzIHw9IEVYVEVOREVEX0NBU0VfTUFTSworICAgICAgICAgICAgICAgIGxvd2VyID0gbGVuKGV4dHJhX2Nhc2luZykgfCAobGVuKHNjWzBdKSA8PCAyNCkKKyAgICAgICAgICAgICAgICBleHRyYV9jYXNpbmcuZXh0ZW5kKHNjWzBdKQorICAgICAgICAgICAgICAgIGlmIGNmICE9IHNjWzBdOgorICAgICAgICAgICAgICAgICAgICBsb3dlciB8PSBsZW4oY2YpIDw8IDIwCisgICAgICAgICAgICAgICAgICAgIGV4dHJhX2Nhc2luZy5leHRlbmQoY2YpCisgICAgICAgICAgICAgICAgdXBwZXIgPSBsZW4oZXh0cmFfY2FzaW5nKSB8IChsZW4oc2NbMl0pIDw8IDI0KQorICAgICAgICAgICAgICAgIGV4dHJhX2Nhc2luZy5leHRlbmQoc2NbMl0pCisgICAgICAgICAgICAgICAgIyBUaXRsZSBpcyBwcm9iYWJseSBlcXVhbCB0byB1cHBlci4KKyAgICAgICAgICAgICAgICBpZiBzY1sxXSA9PSBzY1syXToKKyAgICAgICAgICAgICAgICAgICAgdGl0bGUgPSB1cHBlcgorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHRpdGxlID0gbGVuKGV4dHJhX2Nhc2luZykgfCAobGVuKHNjWzFdKSA8PCAyNCkKKyAgICAgICAgICAgICAgICAgICAgZXh0cmFfY2FzaW5nLmV4dGVuZChzY1sxXSkKICAgICAgICAgICAgICMgZGVjaW1hbCBkaWdpdCwgaW50ZWdlciBkaWdpdAogICAgICAgICAgICAgZGVjaW1hbCA9IDAKICAgICAgICAgICAgIGlmIHJlY29yZFs2XToKQEAgLTQ1Miw2ICs0OTYsNyBAQAogICAgIHByaW50KHN1bShtYXAobGVuLCBudW1lcmljLnZhbHVlcygpKSksICJudW1lcmljIGNvZGUgcG9pbnRzIikKICAgICBwcmludChsZW4oc3BhY2VzKSwgIndoaXRlc3BhY2UgY29kZSBwb2ludHMiKQogICAgIHByaW50KGxlbihsaW5lYnJlYWtzKSwgImxpbmVicmVhayBjb2RlIHBvaW50cyIpCisgICAgcHJpbnQobGVuKGV4dHJhX2Nhc2luZyksICJleHRlbmRlZCBjYXNlIGFycmF5IikKIAogICAgIHByaW50KCItLS0gV3JpdGluZyIsIEZJTEUsICIuLi4iKQogCkBAIC00NjUsNiArNTEwLDE0IEBACiAgICAgcHJpbnQoIn07IiwgZmlsZT1mcCkKICAgICBwcmludChmaWxlPWZwKQogCisgICAgcHJpbnQoIi8qIGV4dGVuZGVkIGNhc2UgbWFwcGluZ3MgKi8iLCBmaWxlPWZwKQorICAgIHByaW50KGZpbGU9ZnApCisgICAgcHJpbnQoImNvbnN0IFB5X1VDUzQgX1B5VW5pY29kZV9FeHRlbmRlZENhc2VbXSA9IHsiLCBmaWxlPWZwKQorICAgIGZvciBjIGluIGV4dHJhX2Nhc2luZzoKKyAgICAgICAgcHJpbnQoIiAgICAlZCwiICUgYywgZmlsZT1mcCkKKyAgICBwcmludCgifTsiLCBmaWxlPWZwKQorICAgIHByaW50KGZpbGU9ZnApCisKICAgICAjIHNwbGl0IGRlY29tcG9zaXRpb24gaW5kZXggdGFibGUKICAgICBpbmRleDEsIGluZGV4Miwgc2hpZnQgPSBzcGxpdGJpbnMoaW5kZXgsIHRyYWNlKQogCkBAIC02OTIsNiArNzQ1LDM5IEBACiAgICAgcHJpbnQoIi8qIG5hbWUtPmNvZGUgZGljdGlvbmFyeSAqLyIsIGZpbGU9ZnApCiAgICAgY29kZWhhc2guZHVtcChmcCwgdHJhY2UpCiAKKyAgICBwcmludChmaWxlPWZwKQorICAgIHByaW50KCdzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IGFsaWFzZXNfc3RhcnQgPSAlI3g7JyAlCisgICAgICAgICAgTkFNRV9BTElBU0VTX1NUQVJULCBmaWxlPWZwKQorICAgIHByaW50KCdzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IGFsaWFzZXNfZW5kID0gJSN4OycgJQorICAgICAgICAgIChOQU1FX0FMSUFTRVNfU1RBUlQgKyBsZW4odW5pY29kZS5hbGlhc2VzKSksIGZpbGU9ZnApCisKKyAgICBwcmludCgnc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBuYW1lX2FsaWFzZXNbXSA9IHsnLCBmaWxlPWZwKQorICAgIGZvciBuYW1lLCBjb2RlcG9pbnQgaW4gdW5pY29kZS5hbGlhc2VzOgorICAgICAgICBwcmludCgnICAgIDB4JTA0WCwnICUgY29kZXBvaW50LCBmaWxlPWZwKQorICAgIHByaW50KCd9OycsIGZpbGU9ZnApCisKKyAgICAjIEluIFVuaWNvZGUgNi4wLjAsIHRoZSBzZXF1ZW5jZXMgY29udGFpbiBhdCBtb3N0IDQgQk1QIGNoYXJzLAorICAgICMgc28gd2UgYXJlIHVzaW5nIFB5X1VDUzIgc2VxWzRdLiAgVGhpcyBuZWVkcyB0byBiZSB1cGRhdGVkIGlmIGxvbmdlcgorICAgICMgc2VxdWVuY2VzIG9yIHNlcXVlbmNlcyB3aXRoIG5vbi1CTVAgY2hhcnMgYXJlIGFkZGVkLgorICAgICMgdW5pY29kZWRhdGFfbG9va3VwIHNob3VsZCBiZSBhZGFwdGVkIHRvby4KKyAgICBwcmludChkZWRlbnQoIiIiCisgICAgICAgIHR5cGVkZWYgc3RydWN0IE5hbWVkU2VxdWVuY2UgeworICAgICAgICAgICAgaW50IHNlcWxlbjsKKyAgICAgICAgICAgIFB5X1VDUzIgc2VxWzRdOworICAgICAgICB9IG5hbWVkX3NlcXVlbmNlOworICAgICAgICAiIiIpLCBmaWxlPWZwKQorCisgICAgcHJpbnQoJ3N0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgbmFtZWRfc2VxdWVuY2VzX3N0YXJ0ID0gJSN4OycgJQorICAgICAgICAgIE5BTUVEX1NFUVVFTkNFU19TVEFSVCwgZmlsZT1mcCkKKyAgICBwcmludCgnc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBuYW1lZF9zZXF1ZW5jZXNfZW5kID0gJSN4OycgJQorICAgICAgICAgIChOQU1FRF9TRVFVRU5DRVNfU1RBUlQgKyBsZW4odW5pY29kZS5uYW1lZF9zZXF1ZW5jZXMpKSwgZmlsZT1mcCkKKworICAgIHByaW50KCdzdGF0aWMgY29uc3QgbmFtZWRfc2VxdWVuY2UgbmFtZWRfc2VxdWVuY2VzW10gPSB7JywgZmlsZT1mcCkKKyAgICBmb3IgbmFtZSwgc2VxdWVuY2UgaW4gdW5pY29kZS5uYW1lZF9zZXF1ZW5jZXM6CisgICAgICAgIHNlcV9zdHIgPSAnLCAnLmpvaW4oJzB4JTA0WCcgJSBjcCBmb3IgY3AgaW4gc2VxdWVuY2UpCisgICAgICAgIHByaW50KCcgICAgeyVkLCB7JXN9fSwnICUgKGxlbihzZXF1ZW5jZSksIHNlcV9zdHIpLCBmaWxlPWZwKQorICAgIHByaW50KCd9OycsIGZpbGU9ZnApCisKICAgICBmcC5jbG9zZSgpCiAKIApAQCAtNzI2LDcgKzgxMiwxMSBAQAogICAgICAgICAgICAgZm9yIGsgaW4gcmFuZ2UobGVuKG9sZC50YWJsZVtpXSkpOgogICAgICAgICAgICAgICAgIGlmIG9sZC50YWJsZVtpXVtrXSAhPSBuZXcudGFibGVbaV1ba106CiAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gb2xkLnRhYmxlW2ldW2tdCi0gICAgICAgICAgICAgICAgICAgIGlmIGsgPT0gMjoKKyAgICAgICAgICAgICAgICAgICAgaWYgayA9PSAxIGFuZCBpIGluIFBVQV8xNToKKyAgICAgICAgICAgICAgICAgICAgICAgICMgdGhlIG5hbWUgaXMgbm90IHNldCBpbiB0aGUgb2xkLnRhYmxlLCBidXQgaW4gdGhlCisgICAgICAgICAgICAgICAgICAgICAgICAjIG5ldy50YWJsZSB3ZSBhcmUgdXNpbmcgaXQgZm9yIGFsaWFzZXMgYW5kIG5hbWVkIHNlcQorICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IHZhbHVlID09ICcnCisgICAgICAgICAgICAgICAgICAgIGVsaWYgayA9PSAyOgogICAgICAgICAgICAgICAgICAgICAgICAgI3ByaW50ICJDQVRFR09SWSIsaGV4KGkpLCBvbGQudGFibGVbaV1ba10sIG5ldy50YWJsZVtpXVtrXQogICAgICAgICAgICAgICAgICAgICAgICAgY2F0ZWdvcnlfY2hhbmdlc1tpXSA9IENBVEVHT1JZX05BTUVTLmluZGV4KHZhbHVlKQogICAgICAgICAgICAgICAgICAgICBlbGlmIGsgPT0gNDoKQEAgLTgxNiwxNSArOTA2LDE1IEBACiAgICAgICAgICAgICAgICAgIGV4cGFuZD0xLAogICAgICAgICAgICAgICAgICBjamtfY2hlY2s9VHJ1ZSk6CiAgICAgICAgIHNlbGYuY2hhbmdlZCA9IFtdCi0gICAgICAgIGZpbGUgPSBvcGVuX2RhdGEoVU5JQ09ERV9EQVRBLCB2ZXJzaW9uKQogICAgICAgICB0YWJsZSA9IFtOb25lXSAqIDB4MTEwMDAwCi0gICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICBzID0gZmlsZS5yZWFkbGluZSgpCi0gICAgICAgICAgICBpZiBub3QgczoKLSAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgcyA9IHMuc3RyaXAoKS5zcGxpdCgiOyIpCi0gICAgICAgICAgICBjaGFyID0gaW50KHNbMF0sIDE2KQotICAgICAgICAgICAgdGFibGVbY2hhcl0gPSBzCisgICAgICAgIHdpdGggb3Blbl9kYXRhKFVOSUNPREVfREFUQSwgdmVyc2lvbikgYXMgZmlsZToKKyAgICAgICAgICAgIHdoaWxlIDE6CisgICAgICAgICAgICAgICAgcyA9IGZpbGUucmVhZGxpbmUoKQorICAgICAgICAgICAgICAgIGlmIG5vdCBzOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIHMgPSBzLnN0cmlwKCkuc3BsaXQoIjsiKQorICAgICAgICAgICAgICAgIGNoYXIgPSBpbnQoc1swXSwgMTYpCisgICAgICAgICAgICAgICAgdGFibGVbY2hhcl0gPSBzCiAKICAgICAgICAgY2prX3Jhbmdlc19mb3VuZCA9IFtdCiAKQEAgLTg1NSwzMiArOTQ1LDc5IEBACiAgICAgICAgIHNlbGYudGFibGUgPSB0YWJsZQogICAgICAgICBzZWxmLmNoYXJzID0gbGlzdChyYW5nZSgweDExMDAwMCkpICMgdW5pY29kZSAzLjIKIAotICAgICAgICBmaWxlID0gb3Blbl9kYXRhKENPTVBPU0lUSU9OX0VYQ0xVU0lPTlMsIHZlcnNpb24pCisgICAgICAgICMgY2hlY2sgZm9yIG5hbWUgYWxpYXNlcyBhbmQgbmFtZWQgc2VxdWVuY2VzLCBzZWUgIzEyNzUzCisgICAgICAgICMgYWxpYXNlcyBhbmQgbmFtZWQgc2VxdWVuY2VzIGFyZSBub3QgaW4gMy4yLjAKKyAgICAgICAgaWYgdmVyc2lvbiAhPSAnMy4yLjAnOgorICAgICAgICAgICAgc2VsZi5hbGlhc2VzID0gW10KKyAgICAgICAgICAgICMgc3RvcmUgYWxpYXNlcyBpbiB0aGUgUHJpdmF0ZSBVc2UgQXJlYSAxNSwgaW4gcmFuZ2UgVStGMDAwMC4uVStGMDBGRiwKKyAgICAgICAgICAgICMgaW4gb3JkZXIgdG8gdGFrZSBhZHZhbnRhZ2Ugb2YgdGhlIGNvbXByZXNzaW9uIGFuZCBsb29rdXAKKyAgICAgICAgICAgICMgYWxnb3JpdGhtcyB1c2VkIGZvciB0aGUgb3RoZXIgY2hhcmFjdGVycworICAgICAgICAgICAgcHVhX2luZGV4ID0gTkFNRV9BTElBU0VTX1NUQVJUCisgICAgICAgICAgICB3aXRoIG9wZW5fZGF0YShOQU1FX0FMSUFTRVMsIHZlcnNpb24pIGFzIGZpbGU6CisgICAgICAgICAgICAgICAgZm9yIHMgaW4gZmlsZToKKyAgICAgICAgICAgICAgICAgICAgcyA9IHMuc3RyaXAoKQorICAgICAgICAgICAgICAgICAgICBpZiBub3QgcyBvciBzLnN0YXJ0c3dpdGgoJyMnKToKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgICAgIGNoYXIsIG5hbWUsIGFiYnJldiA9IHMuc3BsaXQoJzsnKQorICAgICAgICAgICAgICAgICAgICBjaGFyID0gaW50KGNoYXIsIDE2KQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFsaWFzZXMuYXBwZW5kKChuYW1lLCBjaGFyKSkKKyAgICAgICAgICAgICAgICAgICAgIyBhbHNvIHN0b3JlIHRoZSBuYW1lIGluIHRoZSBQVUEgMQorICAgICAgICAgICAgICAgICAgICBzZWxmLnRhYmxlW3B1YV9pbmRleF1bMV0gPSBuYW1lCisgICAgICAgICAgICAgICAgICAgIHB1YV9pbmRleCArPSAxCisgICAgICAgICAgICBhc3NlcnQgcHVhX2luZGV4IC0gTkFNRV9BTElBU0VTX1NUQVJUID09IGxlbihzZWxmLmFsaWFzZXMpCisKKyAgICAgICAgICAgIHNlbGYubmFtZWRfc2VxdWVuY2VzID0gW10KKyAgICAgICAgICAgICMgc3RvcmUgbmFtZWQgc2VxZW5jZXMgaW4gdGhlIFBVQSAxLCBpbiByYW5nZSBVK0YwMTAwLi4sCisgICAgICAgICAgICAjIGluIG9yZGVyIHRvIHRha2UgYWR2YW50YWdlIG9mIHRoZSBjb21wcmVzc2lvbiBhbmQgbG9va3VwCisgICAgICAgICAgICAjIGFsZ29yaXRobXMgdXNlZCBmb3IgdGhlIG90aGVyIGNoYXJhY3RlcnMuCisKKyAgICAgICAgICAgIGFzc2VydCBwdWFfaW5kZXggPCBOQU1FRF9TRVFVRU5DRVNfU1RBUlQKKyAgICAgICAgICAgIHB1YV9pbmRleCA9IE5BTUVEX1NFUVVFTkNFU19TVEFSVAorICAgICAgICAgICAgd2l0aCBvcGVuX2RhdGEoTkFNRURfU0VRVUVOQ0VTLCB2ZXJzaW9uKSBhcyBmaWxlOgorICAgICAgICAgICAgICAgIGZvciBzIGluIGZpbGU6CisgICAgICAgICAgICAgICAgICAgIHMgPSBzLnN0cmlwKCkKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IHMgb3Igcy5zdGFydHN3aXRoKCcjJyk6CisgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICAgICBuYW1lLCBjaGFycyA9IHMuc3BsaXQoJzsnKQorICAgICAgICAgICAgICAgICAgICBjaGFycyA9IHR1cGxlKGludChjaGFyLCAxNikgZm9yIGNoYXIgaW4gY2hhcnMuc3BsaXQoKSkKKyAgICAgICAgICAgICAgICAgICAgIyBjaGVjayB0aGF0IHRoZSBzdHJ1Y3R1cmUgZGVmaW5lZCBpbiBtYWtldW5pY29kZW5hbWUgaXMgT0sKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IDIgPD0gbGVuKGNoYXJzKSA8PSA0LCAiY2hhbmdlIHRoZSBQeV9VQ1MyIGFycmF5IHNpemUiCisgICAgICAgICAgICAgICAgICAgIGFzc2VydCBhbGwoYyA8PSAweEZGRkYgZm9yIGMgaW4gY2hhcnMpLCAoInVzZSBQeV9VQ1M0IGluICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJ0aGUgTmFtZWRTZXF1ZW5jZSBzdHJ1Y3QgYW5kIGluIHVuaWNvZGVkYXRhX2xvb2t1cCIpCisgICAgICAgICAgICAgICAgICAgIHNlbGYubmFtZWRfc2VxdWVuY2VzLmFwcGVuZCgobmFtZSwgY2hhcnMpKQorICAgICAgICAgICAgICAgICAgICAjIGFsc28gc3RvcmUgdGhlc2UgaW4gdGhlIFBVQSAxCisgICAgICAgICAgICAgICAgICAgIHNlbGYudGFibGVbcHVhX2luZGV4XVsxXSA9IG5hbWUKKyAgICAgICAgICAgICAgICAgICAgcHVhX2luZGV4ICs9IDEKKyAgICAgICAgICAgIGFzc2VydCBwdWFfaW5kZXggLSBOQU1FRF9TRVFVRU5DRVNfU1RBUlQgPT0gbGVuKHNlbGYubmFtZWRfc2VxdWVuY2VzKQorCiAgICAgICAgIHNlbGYuZXhjbHVzaW9ucyA9IHt9Ci0gICAgICAgIGZvciBzIGluIGZpbGU6Ci0gICAgICAgICAgICBzID0gcy5zdHJpcCgpCi0gICAgICAgICAgICBpZiBub3QgczoKLSAgICAgICAgICAgICAgICBjb250aW51ZQotICAgICAgICAgICAgaWYgc1swXSA9PSAnIyc6Ci0gICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgIGNoYXIgPSBpbnQocy5zcGxpdCgpWzBdLDE2KQotICAgICAgICAgICAgc2VsZi5leGNsdXNpb25zW2NoYXJdID0gMQorICAgICAgICB3aXRoIG9wZW5fZGF0YShDT01QT1NJVElPTl9FWENMVVNJT05TLCB2ZXJzaW9uKSBhcyBmaWxlOgorICAgICAgICAgICAgZm9yIHMgaW4gZmlsZToKKyAgICAgICAgICAgICAgICBzID0gcy5zdHJpcCgpCisgICAgICAgICAgICAgICAgaWYgbm90IHM6CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgaWYgc1swXSA9PSAnIyc6CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgY2hhciA9IGludChzLnNwbGl0KClbMF0sMTYpCisgICAgICAgICAgICAgICAgc2VsZi5leGNsdXNpb25zW2NoYXJdID0gMQogCiAgICAgICAgIHdpZHRocyA9IFtOb25lXSAqIDB4MTEwMDAwCi0gICAgICAgIGZvciBzIGluIG9wZW5fZGF0YShFQVNUQVNJQU5fV0lEVEgsIHZlcnNpb24pOgotICAgICAgICAgICAgcyA9IHMuc3RyaXAoKQotICAgICAgICAgICAgaWYgbm90IHM6Ci0gICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgIGlmIHNbMF0gPT0gJyMnOgotICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICBzID0gcy5zcGxpdCgpWzBdLnNwbGl0KCc7JykKLSAgICAgICAgICAgIGlmICcuLicgaW4gc1swXToKLSAgICAgICAgICAgICAgICBmaXJzdCwgbGFzdCA9IFtpbnQoYywgMTYpIGZvciBjIGluIHNbMF0uc3BsaXQoJy4uJyldCi0gICAgICAgICAgICAgICAgY2hhcnMgPSBsaXN0KHJhbmdlKGZpcnN0LCBsYXN0KzEpKQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBjaGFycyA9IFtpbnQoc1swXSwgMTYpXQotICAgICAgICAgICAgZm9yIGNoYXIgaW4gY2hhcnM6Ci0gICAgICAgICAgICAgICAgd2lkdGhzW2NoYXJdID0gc1sxXQorICAgICAgICB3aXRoIG9wZW5fZGF0YShFQVNUQVNJQU5fV0lEVEgsIHZlcnNpb24pIGFzIGZpbGU6CisgICAgICAgICAgICBmb3IgcyBpbiBmaWxlOgorICAgICAgICAgICAgICAgIHMgPSBzLnN0cmlwKCkKKyAgICAgICAgICAgICAgICBpZiBub3QgczoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBpZiBzWzBdID09ICcjJzoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBzID0gcy5zcGxpdCgpWzBdLnNwbGl0KCc7JykKKyAgICAgICAgICAgICAgICBpZiAnLi4nIGluIHNbMF06CisgICAgICAgICAgICAgICAgICAgIGZpcnN0LCBsYXN0ID0gW2ludChjLCAxNikgZm9yIGMgaW4gc1swXS5zcGxpdCgnLi4nKV0KKyAgICAgICAgICAgICAgICAgICAgY2hhcnMgPSBsaXN0KHJhbmdlKGZpcnN0LCBsYXN0KzEpKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGNoYXJzID0gW2ludChzWzBdLCAxNildCisgICAgICAgICAgICAgICAgZm9yIGNoYXIgaW4gY2hhcnM6CisgICAgICAgICAgICAgICAgICAgIHdpZHRoc1tjaGFyXSA9IHNbMV0KKwogICAgICAgICBmb3IgaSBpbiByYW5nZSgwLCAweDExMDAwMCk6CiAgICAgICAgICAgICBpZiB0YWJsZVtpXSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICB0YWJsZVtpXS5hcHBlbmQod2lkdGhzW2ldKQpAQCAtODg4LDM2ICsxMDI1LDM5IEBACiAgICAgICAgIGZvciBpIGluIHJhbmdlKDAsIDB4MTEwMDAwKToKICAgICAgICAgICAgIGlmIHRhYmxlW2ldIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgIHRhYmxlW2ldLmFwcGVuZChzZXQoKSkKLSAgICAgICAgZm9yIHMgaW4gb3Blbl9kYXRhKERFUklWRURfQ09SRV9QUk9QRVJUSUVTLCB2ZXJzaW9uKToKLSAgICAgICAgICAgIHMgPSBzLnNwbGl0KCcjJywgMSlbMF0uc3RyaXAoKQotICAgICAgICAgICAgaWYgbm90IHM6Ci0gICAgICAgICAgICAgICAgY29udGludWUKIAotICAgICAgICAgICAgciwgcCA9IHMuc3BsaXQoIjsiKQotICAgICAgICAgICAgciA9IHIuc3RyaXAoKQotICAgICAgICAgICAgcCA9IHAuc3RyaXAoKQotICAgICAgICAgICAgaWYgIi4uIiBpbiByOgotICAgICAgICAgICAgICAgIGZpcnN0LCBsYXN0ID0gW2ludChjLCAxNikgZm9yIGMgaW4gci5zcGxpdCgnLi4nKV0KLSAgICAgICAgICAgICAgICBjaGFycyA9IGxpc3QocmFuZ2UoZmlyc3QsIGxhc3QrMSkpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGNoYXJzID0gW2ludChyLCAxNildCi0gICAgICAgICAgICBmb3IgY2hhciBpbiBjaGFyczoKLSAgICAgICAgICAgICAgICBpZiB0YWJsZVtjaGFyXToKLSAgICAgICAgICAgICAgICAgICAgIyBTb21lIHByb3BlcnRpZXMgKGUuZy4gRGVmYXVsdF9JZ25vcmFibGVfQ29kZV9Qb2ludCkKLSAgICAgICAgICAgICAgICAgICAgIyBhcHBseSB0byB1bmFzc2lnbmVkIGNvZGUgcG9pbnRzOyBpZ25vcmUgdGhlbQotICAgICAgICAgICAgICAgICAgICB0YWJsZVtjaGFyXVstMV0uYWRkKHApCisgICAgICAgIHdpdGggb3Blbl9kYXRhKERFUklWRURfQ09SRV9QUk9QRVJUSUVTLCB2ZXJzaW9uKSBhcyBmaWxlOgorICAgICAgICAgICAgZm9yIHMgaW4gZmlsZToKKyAgICAgICAgICAgICAgICBzID0gcy5zcGxpdCgnIycsIDEpWzBdLnN0cmlwKCkKKyAgICAgICAgICAgICAgICBpZiBub3QgczoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKIAotICAgICAgICBmb3IgcyBpbiBvcGVuX2RhdGEoTElORV9CUkVBSywgdmVyc2lvbik6Ci0gICAgICAgICAgICBzID0gcy5wYXJ0aXRpb24oJyMnKVswXQotICAgICAgICAgICAgcyA9IFtpLnN0cmlwKCkgZm9yIGkgaW4gcy5zcGxpdCgnOycpXQotICAgICAgICAgICAgaWYgbGVuKHMpIDwgMiBvciBzWzFdIG5vdCBpbiBNQU5EQVRPUllfTElORV9CUkVBS1M6Ci0gICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgIGlmICcuLicgbm90IGluIHNbMF06Ci0gICAgICAgICAgICAgICAgZmlyc3QgPSBsYXN0ID0gaW50KHNbMF0sIDE2KQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBmaXJzdCwgbGFzdCA9IFtpbnQoYywgMTYpIGZvciBjIGluIHNbMF0uc3BsaXQoJy4uJyldCi0gICAgICAgICAgICBmb3IgY2hhciBpbiByYW5nZShmaXJzdCwgbGFzdCsxKToKLSAgICAgICAgICAgICAgICB0YWJsZVtjaGFyXVstMV0uYWRkKCdMaW5lX0JyZWFrJykKKyAgICAgICAgICAgICAgICByLCBwID0gcy5zcGxpdCgiOyIpCisgICAgICAgICAgICAgICAgciA9IHIuc3RyaXAoKQorICAgICAgICAgICAgICAgIHAgPSBwLnN0cmlwKCkKKyAgICAgICAgICAgICAgICBpZiAiLi4iIGluIHI6CisgICAgICAgICAgICAgICAgICAgIGZpcnN0LCBsYXN0ID0gW2ludChjLCAxNikgZm9yIGMgaW4gci5zcGxpdCgnLi4nKV0KKyAgICAgICAgICAgICAgICAgICAgY2hhcnMgPSBsaXN0KHJhbmdlKGZpcnN0LCBsYXN0KzEpKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGNoYXJzID0gW2ludChyLCAxNildCisgICAgICAgICAgICAgICAgZm9yIGNoYXIgaW4gY2hhcnM6CisgICAgICAgICAgICAgICAgICAgIGlmIHRhYmxlW2NoYXJdOgorICAgICAgICAgICAgICAgICAgICAgICAgIyBTb21lIHByb3BlcnRpZXMgKGUuZy4gRGVmYXVsdF9JZ25vcmFibGVfQ29kZV9Qb2ludCkKKyAgICAgICAgICAgICAgICAgICAgICAgICMgYXBwbHkgdG8gdW5hc3NpZ25lZCBjb2RlIHBvaW50czsgaWdub3JlIHRoZW0KKyAgICAgICAgICAgICAgICAgICAgICAgIHRhYmxlW2NoYXJdWy0xXS5hZGQocCkKKworICAgICAgICB3aXRoIG9wZW5fZGF0YShMSU5FX0JSRUFLLCB2ZXJzaW9uKSBhcyBmaWxlOgorICAgICAgICAgICAgZm9yIHMgaW4gZmlsZToKKyAgICAgICAgICAgICAgICBzID0gcy5wYXJ0aXRpb24oJyMnKVswXQorICAgICAgICAgICAgICAgIHMgPSBbaS5zdHJpcCgpIGZvciBpIGluIHMuc3BsaXQoJzsnKV0KKyAgICAgICAgICAgICAgICBpZiBsZW4ocykgPCAyIG9yIHNbMV0gbm90IGluIE1BTkRBVE9SWV9MSU5FX0JSRUFLUzoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBpZiAnLi4nIG5vdCBpbiBzWzBdOgorICAgICAgICAgICAgICAgICAgICBmaXJzdCA9IGxhc3QgPSBpbnQoc1swXSwgMTYpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgZmlyc3QsIGxhc3QgPSBbaW50KGMsIDE2KSBmb3IgYyBpbiBzWzBdLnNwbGl0KCcuLicpXQorICAgICAgICAgICAgICAgIGZvciBjaGFyIGluIHJhbmdlKGZpcnN0LCBsYXN0KzEpOgorICAgICAgICAgICAgICAgICAgICB0YWJsZVtjaGFyXVstMV0uYWRkKCdMaW5lX0JyZWFrJykKIAogICAgICAgICAjIFdlIG9ubHkgd2FudCB0aGUgcXVpY2tjaGVjayBwcm9wZXJ0aWVzCiAgICAgICAgICMgRm9ybWF0OiBORj9fUUM7IFkoZXMpL04obykvTShheWJlKQpAQCAtOTI4LDMxICsxMDY4LDMzIEBACiAgICAgICAgICMgZm9yIG9sZGVyIHZlcnNpb25zLCBhbmQgbm8gZGVsdGEgcmVjb3JkcyB3aWxsIGJlIGNyZWF0ZWQuCiAgICAgICAgIHF1aWNrY2hlY2tzID0gWzBdICogMHgxMTAwMDAKICAgICAgICAgcWNfb3JkZXIgPSAnTkZEX1FDIE5GS0RfUUMgTkZDX1FDIE5GS0NfUUMnLnNwbGl0KCkKLSAgICAgICAgZm9yIHMgaW4gb3Blbl9kYXRhKERFUklWRUROT1JNQUxJWkFUSU9OX1BST1BTLCB2ZXJzaW9uKToKLSAgICAgICAgICAgIGlmICcjJyBpbiBzOgotICAgICAgICAgICAgICAgIHMgPSBzWzpzLmluZGV4KCcjJyldCi0gICAgICAgICAgICBzID0gW2kuc3RyaXAoKSBmb3IgaSBpbiBzLnNwbGl0KCc7JyldCi0gICAgICAgICAgICBpZiBsZW4ocykgPCAyIG9yIHNbMV0gbm90IGluIHFjX29yZGVyOgotICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICBxdWlja2NoZWNrID0gJ01OJy5pbmRleChzWzJdKSArIDEgIyBNYXliZSBvciBObwotICAgICAgICAgICAgcXVpY2tjaGVja19zaGlmdCA9IHFjX29yZGVyLmluZGV4KHNbMV0pKjIKLSAgICAgICAgICAgIHF1aWNrY2hlY2sgPDw9IHF1aWNrY2hlY2tfc2hpZnQKLSAgICAgICAgICAgIGlmICcuLicgbm90IGluIHNbMF06Ci0gICAgICAgICAgICAgICAgZmlyc3QgPSBsYXN0ID0gaW50KHNbMF0sIDE2KQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBmaXJzdCwgbGFzdCA9IFtpbnQoYywgMTYpIGZvciBjIGluIHNbMF0uc3BsaXQoJy4uJyldCi0gICAgICAgICAgICBmb3IgY2hhciBpbiByYW5nZShmaXJzdCwgbGFzdCsxKToKLSAgICAgICAgICAgICAgICBhc3NlcnQgbm90IChxdWlja2NoZWNrc1tjaGFyXT4+cXVpY2tjaGVja19zaGlmdCkmMwotICAgICAgICAgICAgICAgIHF1aWNrY2hlY2tzW2NoYXJdIHw9IHF1aWNrY2hlY2sKKyAgICAgICAgd2l0aCBvcGVuX2RhdGEoREVSSVZFRE5PUk1BTElaQVRJT05fUFJPUFMsIHZlcnNpb24pIGFzIGZpbGU6CisgICAgICAgICAgICBmb3IgcyBpbiBmaWxlOgorICAgICAgICAgICAgICAgIGlmICcjJyBpbiBzOgorICAgICAgICAgICAgICAgICAgICBzID0gc1s6cy5pbmRleCgnIycpXQorICAgICAgICAgICAgICAgIHMgPSBbaS5zdHJpcCgpIGZvciBpIGluIHMuc3BsaXQoJzsnKV0KKyAgICAgICAgICAgICAgICBpZiBsZW4ocykgPCAyIG9yIHNbMV0gbm90IGluIHFjX29yZGVyOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIHF1aWNrY2hlY2sgPSAnTU4nLmluZGV4KHNbMl0pICsgMSAjIE1heWJlIG9yIE5vCisgICAgICAgICAgICAgICAgcXVpY2tjaGVja19zaGlmdCA9IHFjX29yZGVyLmluZGV4KHNbMV0pKjIKKyAgICAgICAgICAgICAgICBxdWlja2NoZWNrIDw8PSBxdWlja2NoZWNrX3NoaWZ0CisgICAgICAgICAgICAgICAgaWYgJy4uJyBub3QgaW4gc1swXToKKyAgICAgICAgICAgICAgICAgICAgZmlyc3QgPSBsYXN0ID0gaW50KHNbMF0sIDE2KQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGZpcnN0LCBsYXN0ID0gW2ludChjLCAxNikgZm9yIGMgaW4gc1swXS5zcGxpdCgnLi4nKV0KKyAgICAgICAgICAgICAgICBmb3IgY2hhciBpbiByYW5nZShmaXJzdCwgbGFzdCsxKToKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IG5vdCAocXVpY2tjaGVja3NbY2hhcl0+PnF1aWNrY2hlY2tfc2hpZnQpJjMKKyAgICAgICAgICAgICAgICAgICAgcXVpY2tjaGVja3NbY2hhcl0gfD0gcXVpY2tjaGVjawogICAgICAgICBmb3IgaSBpbiByYW5nZSgwLCAweDExMDAwMCk6CiAgICAgICAgICAgICBpZiB0YWJsZVtpXSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICB0YWJsZVtpXS5hcHBlbmQocXVpY2tjaGVja3NbaV0pCiAKLSAgICAgICAgemlwID0gemlwZmlsZS5aaXBGaWxlKG9wZW5fZGF0YShVTklIQU4sIHZlcnNpb24pKQotICAgICAgICBpZiB2ZXJzaW9uID09ICczLjIuMCc6Ci0gICAgICAgICAgICBkYXRhID0gemlwLm9wZW4oJ1VuaWhhbi0zLjIuMC50eHQnKS5yZWFkKCkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGRhdGEgPSB6aXAub3BlbignVW5paGFuX051bWVyaWNWYWx1ZXMudHh0JykucmVhZCgpCisgICAgICAgIHdpdGggb3Blbl9kYXRhKFVOSUhBTiwgdmVyc2lvbikgYXMgZmlsZToKKyAgICAgICAgICAgIHppcCA9IHppcGZpbGUuWmlwRmlsZShmaWxlKQorICAgICAgICAgICAgaWYgdmVyc2lvbiA9PSAnMy4yLjAnOgorICAgICAgICAgICAgICAgIGRhdGEgPSB6aXAub3BlbignVW5paGFuLTMuMi4wLnR4dCcpLnJlYWQoKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBkYXRhID0gemlwLm9wZW4oJ1VuaWhhbl9OdW1lcmljVmFsdWVzLnR4dCcpLnJlYWQoKQogICAgICAgICBmb3IgbGluZSBpbiBkYXRhLmRlY29kZSgidXRmLTgiKS5zcGxpdGxpbmVzKCk6CiAgICAgICAgICAgICBpZiBub3QgbGluZS5zdGFydHN3aXRoKCdVKycpOgogICAgICAgICAgICAgICAgIGNvbnRpbnVlCkBAIC05NjUsNiArMTEwNywzNCBAQAogICAgICAgICAgICAgIyBQYXRjaCB0aGUgbnVtZXJpYyBmaWVsZAogICAgICAgICAgICAgaWYgdGFibGVbaV0gaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgdGFibGVbaV1bOF0gPSB2YWx1ZQorICAgICAgICBzYyA9IHNlbGYuc3BlY2lhbF9jYXNpbmcgPSB7fQorICAgICAgICB3aXRoIG9wZW5fZGF0YShTUEVDSUFMX0NBU0lORywgdmVyc2lvbikgYXMgZmlsZToKKyAgICAgICAgICAgIGZvciBzIGluIGZpbGU6CisgICAgICAgICAgICAgICAgcyA9IHNbOi0xXS5zcGxpdCgnIycsIDEpWzBdCisgICAgICAgICAgICAgICAgaWYgbm90IHM6CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgZGF0YSA9IHMuc3BsaXQoIjsgIikKKyAgICAgICAgICAgICAgICBpZiBkYXRhWzRdOgorICAgICAgICAgICAgICAgICAgICAjIFdlIGlnbm9yZSBhbGwgY29uZGl0aW9uYWxzIChzaW5jZSB0aGV5IGRlcGVuZCBvbgorICAgICAgICAgICAgICAgICAgICAjIGxhbmd1YWdlcykgZXhjZXB0IGZvciBvbmUsIHdoaWNoIGlzIGhhcmRjb2RlZC4gU2VlCisgICAgICAgICAgICAgICAgICAgICMgaGFuZGxlX2NhcGl0YWxfc2lnbWEgaW4gdW5pY29kZW9iamVjdC5jLgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGMgPSBpbnQoZGF0YVswXSwgMTYpCisgICAgICAgICAgICAgICAgbG93ZXIgPSBbaW50KGNoYXIsIDE2KSBmb3IgY2hhciBpbiBkYXRhWzFdLnNwbGl0KCldCisgICAgICAgICAgICAgICAgdGl0bGUgPSBbaW50KGNoYXIsIDE2KSBmb3IgY2hhciBpbiBkYXRhWzJdLnNwbGl0KCldCisgICAgICAgICAgICAgICAgdXBwZXIgPSBbaW50KGNoYXIsIDE2KSBmb3IgY2hhciBpbiBkYXRhWzNdLnNwbGl0KCldCisgICAgICAgICAgICAgICAgc2NbY10gPSAobG93ZXIsIHRpdGxlLCB1cHBlcikKKyAgICAgICAgY2YgPSBzZWxmLmNhc2VfZm9sZGluZyA9IHt9CisgICAgICAgIGlmIHZlcnNpb24gIT0gJzMuMi4wJzoKKyAgICAgICAgICAgIHdpdGggb3Blbl9kYXRhKENBU0VfRk9MRElORywgdmVyc2lvbikgYXMgZmlsZToKKyAgICAgICAgICAgICAgICBmb3IgcyBpbiBmaWxlOgorICAgICAgICAgICAgICAgICAgICBzID0gc1s6LTFdLnNwbGl0KCcjJywgMSlbMF0KKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IHM6CisgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICAgICBkYXRhID0gcy5zcGxpdCgiOyAiKQorICAgICAgICAgICAgICAgICAgICBpZiBkYXRhWzFdIGluICJDRiI6CisgICAgICAgICAgICAgICAgICAgICAgICBjID0gaW50KGRhdGFbMF0sIDE2KQorICAgICAgICAgICAgICAgICAgICAgICAgY2ZbY10gPSBbaW50KGNoYXIsIDE2KSBmb3IgY2hhciBpbiBkYXRhWzJdLnNwbGl0KCldCiAKICAgICBkZWYgdXNlbGF0aW4xKHNlbGYpOgogICAgICAgICAjIHJlc3RyaWN0IGNoYXJhY3RlciByYW5nZSB0byBJU08gTGF0aW4gMQpkaWZmIC0tZ2l0IGEvVG9vbHMvdW5pdHRlc3RndWkvdW5pdHRlc3RndWkucHkgYi9Ub29scy91bml0dGVzdGd1aS91bml0dGVzdGd1aS5weQppbmRleCBiNTI2NjQ2Li4wOWEyMGUyIDEwMDY0NAotLS0gYS9Ub29scy91bml0dGVzdGd1aS91bml0dGVzdGd1aS5weQorKysgYi9Ub29scy91bml0dGVzdGd1aS91bml0dGVzdGd1aS5weQpAQCAtMjgsNyArMjgsNiBAQAogIiIiCiAKIF9fYXV0aG9yX18gPSAiU3RldmUgUHVyY2VsbCAoc3RlcGhlbl9wdXJjZWxsQHlhaG9vLmNvbSkiCi1fX3ZlcnNpb25fXyA9ICIkUmV2aXNpb246IDEuNyAkIlsxMTotMl0KIAogaW1wb3J0IHN5cwogaW1wb3J0IHRyYWNlYmFjawpkaWZmIC0tZ2l0IGEvY29uZmlndXJlIGIvY29uZmlndXJlCmluZGV4IDVmMDBjMWUuLjRjYjA3NzcgMTAwNzU1Ci0tLSBhL2NvbmZpZ3VyZQorKysgYi9jb25maWd1cmUKQEAgLTEsNyArMSw2IEBACiAjISAvYmluL3NoCi0jIEZyb20gY29uZmlndXJlLmluIFJldmlzaW9uLgogIyBHdWVzcyB2YWx1ZXMgZm9yIHN5c3RlbS1kZXBlbmRlbnQgdmFyaWFibGVzIGFuZCBjcmVhdGUgTWFrZWZpbGVzLgotIyBHZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNjggZm9yIHB5dGhvbiAzLjIuCisjIEdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42OCBmb3IgcHl0aG9uIDMuMy4KICMKICMgUmVwb3J0IGJ1Z3MgdG8gPGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvPi4KICMKQEAgLTU2MSw4ICs1NjAsOCBAQAogIyBJZGVudGl0eSBvZiB0aGlzIHBhY2thZ2UuCiBQQUNLQUdFX05BTUU9J3B5dGhvbicKIFBBQ0tBR0VfVEFSTkFNRT0ncHl0aG9uJwotUEFDS0FHRV9WRVJTSU9OPSczLjInCi1QQUNLQUdFX1NUUklORz0ncHl0aG9uIDMuMicKK1BBQ0tBR0VfVkVSU0lPTj0nMy4zJworUEFDS0FHRV9TVFJJTkc9J3B5dGhvbiAzLjMnCiBQQUNLQUdFX0JVR1JFUE9SVD0naHR0cDovL2J1Z3MucHl0aG9uLm9yZy8nCiBQQUNLQUdFX1VSTD0nJwogCkBAIC02NDYsMTEgKzY0NSw2IEBACiBJTlNUQUxMX1BST0dSQU0KIEhBU19QWVRIT04KIERJU0FCTEVfQVNETEdFTgotSEFTX0hHCi1IR0JSQU5DSAotSEdUQUcKLUhHVkVSU0lPTgotU1ZOVkVSU0lPTgogQVJGTEFHUwogQVIKIFJBTkxJQgpAQCAtNzAxLDYgKzY5NSwxMCBAQAogQ09ORklHX0FSR1MKIFNPVkVSU0lPTgogVkVSU0lPTgorSEFTX0hHCitIR0JSQU5DSAorSEdUQUcKK0hHVkVSU0lPTgogdGFyZ2V0X2FsaWFzCiBob3N0X2FsaWFzCiBidWlsZF9hbGlhcwpAQCAtNzU4LDcgKzc1Niw2IEBACiBlbmFibGVfbG9hZGFibGVfc3FsaXRlX2V4dGVuc2lvbnMKIHdpdGhfZGJtbGlib3JkZXIKIHdpdGhfc2lnbmFsX21vZHVsZQotd2l0aF9kZWNfdGhyZWFkcwogd2l0aF90aHJlYWRzCiB3aXRoX3RocmVhZAogZW5hYmxlX2lwdjYKQEAgLTc3MCw3ICs3NjcsNiBAQAogd2l0aF9saWJtCiB3aXRoX2xpYmMKIGVuYWJsZV9iaWdfZGlnaXRzCi13aXRoX3dpZGVfdW5pY29kZQogd2l0aF9jb21wdXRlZF9nb3RvcwogJwogICAgICAgYWNfcHJlY2lvdXNfdmFycz0nYnVpbGRfYWxpYXMKQEAgLTEzMjQsNyArMTMyMCw3IEBACiAgICMgT21pdCBzb21lIGludGVybmFsIG9yIG9ic29sZXRlIG9wdGlvbnMgdG8gbWFrZSB0aGUgbGlzdCBsZXNzIGltcG9zaW5nLgogICAjIFRoaXMgbWVzc2FnZSBpcyB0b28gbG9uZyB0byBiZSBhIHN0cmluZyBpbiB0aGUgQS9VWCAzLjEgc2guCiAgIGNhdCA8PF9BQ0VPRgotXGBjb25maWd1cmUnIGNvbmZpZ3VyZXMgcHl0aG9uIDMuMiB0byBhZGFwdCB0byBtYW55IGtpbmRzIG9mIHN5c3RlbXMuCitcYGNvbmZpZ3VyZScgY29uZmlndXJlcyBweXRob24gMy4zIHRvIGFkYXB0IHRvIG1hbnkga2luZHMgb2Ygc3lzdGVtcy4KIAogVXNhZ2U6ICQwIFtPUFRJT05dLi4uIFtWQVI9VkFMVUVdLi4uCiAKQEAgLTEzODUsNyArMTM4MSw3IEBACiAKIGlmIHRlc3QgLW4gIiRhY19pbml0X2hlbHAiOyB0aGVuCiAgIGNhc2UgJGFjX2luaXRfaGVscCBpbgotICAgICBzaG9ydCB8IHJlY3Vyc2l2ZSApIGVjaG8gIkNvbmZpZ3VyYXRpb24gb2YgcHl0aG9uIDMuMjoiOzsKKyAgICAgc2hvcnQgfCByZWN1cnNpdmUgKSBlY2hvICJDb25maWd1cmF0aW9uIG9mIHB5dGhvbiAzLjM6Ijs7CiAgICBlc2FjCiAgIGNhdCA8PFxfQUNFT0YKIApAQCAtMTQzMCw3ICsxNDI2LDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb24gc2VwYXJhdGVkIHN0cmluZyB3aXRoIHRoZSBiYWNrZW5kIG5hbWVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGBuZGJtJywgYGdkYm0nIGFuZCBgYmRiJy4KICAgLS13aXRoLXNpZ25hbC1tb2R1bGUgICAgZGlzYWJsZS9lbmFibGUgc2lnbmFsIG1vZHVsZQotICAtLXdpdGgtZGVjLXRocmVhZHMgICAgICB1c2UgREVDIEFscGhhL09TRjEgdGhyZWFkLXNhZmUgbGlicmFyaWVzCiAgIC0td2l0aChvdXQpLXRocmVhZHNbPURJUkVDVE9SWV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZS9lbmFibGUgdGhyZWFkIHN1cHBvcnQKICAgLS13aXRoKG91dCktdGhyZWFkWz1ESVJFQ1RPUlldCkBAIC0xNDQyLDcgKzE0MzcsNiBAQAogICAtLXdpdGgtZnBlY3RsICAgICAgICAgICBlbmFibGUgU0lHRlBFIGNhdGNoaW5nCiAgIC0td2l0aC1saWJtPVNUUklORyAgICAgIG1hdGggbGlicmFyeQogICAtLXdpdGgtbGliYz1TVFJJTkcgICAgICBDIGxpYnJhcnkKLSAgLS13aXRoLXdpZGUtdW5pY29kZSAgICAgVXNlIDQtYnl0ZSBVbmljb2RlIGNoYXJhY3RlcnMgKGRlZmF1bHQgaXMgMiBieXRlcykKICAgLS13aXRoKG91dCktY29tcHV0ZWQtZ290b3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgVXNlIGNvbXB1dGVkIGdvdG9zIGluIGV2YWx1YXRpb24gbG9vcCAoZW5hYmxlZCBieQogICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0IG9uIHN1cHBvcnRlZCBjb21waWxlcnMpCkBAIC0xNTIzLDcgKzE1MTcsNyBAQAogdGVzdCAtbiAiJGFjX2luaXRfaGVscCIgJiYgZXhpdCAkYWNfc3RhdHVzCiBpZiAkYWNfaW5pdF92ZXJzaW9uOyB0aGVuCiAgIGNhdCA8PFxfQUNFT0YKLXB5dGhvbiBjb25maWd1cmUgMy4yCitweXRob24gY29uZmlndXJlIDMuMwogZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY4CiAKIENvcHlyaWdodCAoQykgMjAxMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KQEAgLTIzNTQsNyArMjM0OCw3IEBACiBUaGlzIGZpbGUgY29udGFpbnMgYW55IG1lc3NhZ2VzIHByb2R1Y2VkIGJ5IGNvbXBpbGVycyB3aGlsZQogcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2VzIGEgbWlzdGFrZS4KIAotSXQgd2FzIGNyZWF0ZWQgYnkgcHl0aG9uICRhc19tZSAzLjIsIHdoaWNoIHdhcworSXQgd2FzIGNyZWF0ZWQgYnkgcHl0aG9uICRhc19tZSAzLjMsIHdoaWNoIHdhcwogZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY4LiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCiAKICAgJCAkMCAkQApAQCAtMjcwMyw2ICsyNjk3LDY1IEBACiAKIAogCisKKworCisKK2lmIHRlc3QgLWUgJHNyY2Rpci8uaGcvZGlyc3RhdGUKK3RoZW4KKyMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiaGciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15IGhnOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19IQVNfSEcrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkSEFTX0hHIjsgdGhlbgorICBhY19jdl9wcm9nX0hBU19IRz0iJEhBU19IRyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wcm9nX0hBU19IRz0iZm91bmQiCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKKyAgdGVzdCAteiAiJGFjX2N2X3Byb2dfSEFTX0hHIiAmJiBhY19jdl9wcm9nX0hBU19IRz0ibm90LWZvdW5kIgorZmkKK2ZpCitIQVNfSEc9JGFjX2N2X3Byb2dfSEFTX0hHCitpZiB0ZXN0IC1uICIkSEFTX0hHIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJEhBU19IRyIgPiY1CiskYXNfZWNobyAiJEhBU19IRyIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCitlbHNlCitIQVNfSEc9bm8tcmVwb3NpdG9yeQorZmkKK2lmIHRlc3QgJEhBU19IRyA9IGZvdW5kCit0aGVuCisgICAgSEdWRVJTSU9OPSJoZyBpZCAtaSBcJChzcmNkaXIpIgorICAgIEhHVEFHPSJoZyBpZCAtdCBcJChzcmNkaXIpIgorICAgIEhHQlJBTkNIPSJoZyBpZCAtYiBcJChzcmNkaXIpIgorZWxzZQorICAgIEhHVkVSU0lPTj0iIgorICAgIEhHVEFHPSIiCisgICAgSEdCUkFOQ0g9IiIKK2ZpCisKKwogYWNfY29uZmlnX2hlYWRlcnM9IiRhY19jb25maWdfaGVhZGVycyBweWNvbmZpZy5oIgogCiAKQEAgLTI3MjEsNyArMjc3NCw3IEBACiBtdiBjb25mZGVmcy5oLm5ldyBjb25mZGVmcy5oCiAKIAotVkVSU0lPTj0zLjIKK1ZFUlNJT049My4zCiAKICMgVmVyc2lvbiBudW1iZXIgb2YgUHl0aG9uJ3Mgb3duIHNoYXJlZCBsaWJyYXJ5IGZpbGUuCiAKQEAgLTI5OTcsNyArMzA1MCw3IEBACiAJTUFDSERFUD0iJGFjX21kX3N5c3RlbSRhY19tZF9yZWxlYXNlIgogCiAJY2FzZSAkTUFDSERFUCBpbgotCWxpbnV4KikgTUFDSERFUD0ibGludXgyIjs7CisJbGludXgqKSBNQUNIREVQPSJsaW51eCI7OwogCWN5Z3dpbiopIE1BQ0hERVA9ImN5Z3dpbiI7OwogCWRhcndpbiopIE1BQ0hERVA9ImRhcndpbiI7OwogICAgICAgICBpcml4NjQ2KSBNQUNIREVQPSJpcml4NiI7OwpAQCAtMzA5Myw4ICszMTQ2LDkgQEAKIAogaWYgdGVzdCAkZGVmaW5lX3hvcGVuX3NvdXJjZSA9IHllcwogdGhlbgorICAjIFgvT3BlbiA3LCBpbmNvcnBvcmF0aW5nIFBPU0lYLjEtMjAwOAogCi0kYXNfZWNobyAiI2RlZmluZSBfWE9QRU5fU09VUkNFIDYwMCIgPj5jb25mZGVmcy5oCiskYXNfZWNobyAiI2RlZmluZSBfWE9QRU5fU09VUkNFIDcwMCIgPj5jb25mZGVmcy5oCiAKIAogICAjIE9uIFRydTY0IFVuaXggNC4wRiwgZGVmaW5pbmcgX1hPUEVOX1NPVVJDRSBhbHNvIHJlcXVpcmVzCkBAIC0zMTA2LDggKzMxNjAsNyBAQAogCiAKIAotJGFzX2VjaG8gIiNkZWZpbmUgX1BPU0lYX0NfU09VUkNFIDIwMDExMkwiID4+Y29uZmRlZnMuaAotCiskYXNfZWNobyAiI2RlZmluZSBfUE9TSVhfQ19TT1VSQ0UgMjAwODA5TCIgPj5jb25mZGVmcy5oCiAKIGZpCiAKQEAgLTQ5ODYsMTEgKzUwMzksNiBAQAogCSAgQkxETElCUkFSWT0nLVdsLCtiLCQoTElCRElSKSAtTC4gLWxweXRob24kKExEVkVSU0lPTiknCiAJICBSVU5TSEFSRUQ9U0hMSUJfUEFUSD1gcHdkYDoke1NITElCX1BBVEh9CiAJICA7OwotICAgIE9TRiopCi0JICBMRExJQlJBUlk9J2xpYnB5dGhvbiQoTERWRVJTSU9OKS5zbycKLQkgIEJMRExJQlJBUlk9Jy1ycGF0aCAkKExJQkRJUikgLUwuIC1scHl0aG9uJChMRFZFUlNJT04pJwotCSAgUlVOU0hBUkVEPUxEX0xJQlJBUllfUEFUSD1gcHdkYDoke0xEX0xJQlJBUllfUEFUSH0KLQkgIDs7CiAgICAgRGFyd2luKikKICAgICAJTERMSUJSQVJZPSdsaWJweXRob24kKExEVkVSU0lPTikuZHlsaWInCiAJQkxETElCUkFSWT0nLUwuIC1scHl0aG9uJChMRFZFUlNJT04pJwpAQCAtNTE1OSwxMTAgKzUyMDcsNiBAQAogZmkKIAogCi0jIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgInN2bnZlcnNpb24iLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgotc2V0IGR1bW15IHN2bnZlcnNpb247IGFjX3dvcmQ9JDIKLXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKLSRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQotaWYgJHthY19jdl9wcm9nX1NWTlZFUlNJT04rOn0gZmFsc2U7IHRoZW4gOgotICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgotZWxzZQotICBpZiB0ZXN0IC1uICIkU1ZOVkVSU0lPTiI7IHRoZW4KLSAgYWNfY3ZfcHJvZ19TVk5WRVJTSU9OPSIkU1ZOVkVSU0lPTiIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCi1lbHNlCi1hc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCi1mb3IgYXNfZGlyIGluICRQQVRICi1kbwotICBJRlM9JGFzX3NhdmVfSUZTCi0gIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCi0gICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCi0gIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KLSAgICBhY19jdl9wcm9nX1NWTlZFUlNJT049ImZvdW5kIgotICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQotICAgIGJyZWFrIDIKLSAgZmkKLWRvbmUKLSAgZG9uZQotSUZTPSRhc19zYXZlX0lGUwotCi0gIHRlc3QgLXogIiRhY19jdl9wcm9nX1NWTlZFUlNJT04iICYmIGFjX2N2X3Byb2dfU1ZOVkVSU0lPTj0ibm90LWZvdW5kIgotZmkKLWZpCi1TVk5WRVJTSU9OPSRhY19jdl9wcm9nX1NWTlZFUlNJT04KLWlmIHRlc3QgLW4gIiRTVk5WRVJTSU9OIjsgdGhlbgotICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJFNWTlZFUlNJT04iID4mNQotJGFzX2VjaG8gIiRTVk5WRVJTSU9OIiA+JjY7IH0KLWVsc2UKLSAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKLSRhc19lY2hvICJubyIgPiY2OyB9Ci1maQotCi0KLWlmIHRlc3QgJFNWTlZFUlNJT04gPSBmb3VuZAotdGhlbgotCVNWTlZFUlNJT049InN2bnZlcnNpb24gXCQoc3JjZGlyKSIKLWVsc2UKLQlTVk5WRVJTSU9OPSJlY2hvIFVudmVyc2lvbmVkIGRpcmVjdG9yeSIKLWZpCi0KLQotCi0KLQotaWYgdGVzdCAtZSAkc3JjZGlyLy5oZy9kaXJzdGF0ZQotdGhlbgotIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJoZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCi1zZXQgZHVtbXkgaGc7IGFjX3dvcmQ9JDIKLXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKLSRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQotaWYgJHthY19jdl9wcm9nX0hBU19IRys6fSBmYWxzZTsgdGhlbiA6Ci0gICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2Ci1lbHNlCi0gIGlmIHRlc3QgLW4gIiRIQVNfSEciOyB0aGVuCi0gIGFjX2N2X3Byb2dfSEFTX0hHPSIkSEFTX0hHIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KLWVsc2UKLWFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKLWZvciBhc19kaXIgaW4gJFBBVEgKLWRvCi0gIElGUz0kYXNfc2F2ZV9JRlMKLSAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KLSAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KLSAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgotICAgIGFjX2N2X3Byb2dfSEFTX0hHPSJmb3VuZCIKLSAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKLSAgICBicmVhayAyCi0gIGZpCi1kb25lCi0gIGRvbmUKLUlGUz0kYXNfc2F2ZV9JRlMKLQotICB0ZXN0IC16ICIkYWNfY3ZfcHJvZ19IQVNfSEciICYmIGFjX2N2X3Byb2dfSEFTX0hHPSJub3QtZm91bmQiCi1maQotZmkKLUhBU19IRz0kYWNfY3ZfcHJvZ19IQVNfSEcKLWlmIHRlc3QgLW4gIiRIQVNfSEciOyB0aGVuCi0gIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkSEFTX0hHIiA+JjUKLSRhc19lY2hvICIkSEFTX0hHIiA+JjY7IH0KLWVsc2UKLSAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKLSRhc19lY2hvICJubyIgPiY2OyB9Ci1maQotCi0KLWVsc2UKLUhBU19IRz1uby1yZXBvc2l0b3J5Ci1maQotaWYgdGVzdCAkSEFTX0hHID0gZm91bmQKLXRoZW4KLSAgICBIR1ZFUlNJT049ImhnIGlkIC1pIFwkKHNyY2RpcikiCi0gICAgSEdUQUc9ImhnIGlkIC10IFwkKHNyY2RpcikiCi0gICAgSEdCUkFOQ0g9ImhnIGlkIC1iIFwkKHNyY2RpcikiCi1lbHNlCi0gICAgSEdWRVJTSU9OPSIiCi0gICAgSEdUQUc9IiIKLSAgICBIR0JSQU5DSD0iIgotZmkKLQotCiBESVNBQkxFX0FTRExHRU49IiIKICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAicHl0aG9uIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KIHNldCBkdW1teSBweXRob247IGFjX3dvcmQ9JDIKQEAgLTU2MTYsNiArNTU2MCw0OSBAQAogICAgICAgQkFTRUNGTEFHUz0iJEJBU0VDRkxBR1MgLWZuby1zdHJpY3QtYWxpYXNpbmciCiAgICAgZmkKIAorICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgaWYgd2UgY2FuIHR1cm4gb2ZmICRDQyB1bnVzZWQgcmVzdWx0IHdhcm5pbmciID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgaWYgd2UgY2FuIHR1cm4gb2ZmICRDQyB1bnVzZWQgcmVzdWx0IHdhcm5pbmcuLi4gIiA+JjY7IH0KKyAgICAgYWNfc2F2ZV9jYz0iJENDIgorICAgICBDQz0iJENDIC1XdW51c2VkLXJlc3VsdCAtV2Vycm9yIgorICAgICBzYXZlX0NGTEFHUz0iJENGTEFHUyIKKyAgICAgaWYgJHthY19jdl9kaXNhYmxlX3VudXNlZF9yZXN1bHRfd2FybmluZys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworCitpbnQKK21haW4gKCkKK3sKKworICA7CisgIHJldHVybiAwOworfQorCitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKworICAgICAgICAgICBhY19jdl9kaXNhYmxlX3VudXNlZF9yZXN1bHRfd2FybmluZz15ZXMKKworZWxzZQorCisgICAgICAgICAgIGFjX2N2X2Rpc2FibGVfdW51c2VkX3Jlc3VsdF93YXJuaW5nPW5vCisKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2ZpCisKKyAgICAgQ0ZMQUdTPSIkc2F2ZV9DRkxBR1MiCisgICAgIENDPSIkYWNfc2F2ZV9jYyIKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2Rpc2FibGVfdW51c2VkX3Jlc3VsdF93YXJuaW5nIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfZGlzYWJsZV91bnVzZWRfcmVzdWx0X3dhcm5pbmciID4mNjsgfQorCisgICAgaWYgdGVzdCAkYWNfY3ZfZGlzYWJsZV91bnVzZWRfcmVzdWx0X3dhcm5pbmcgPSB5ZXMKKyAgICB0aGVuCisgICAgICBCQVNFQ0ZMQUdTPSIkQkFTRUNGTEFHUyAtV25vLXVudXNlZC1yZXN1bHQiCisgICAgZmkKKwogICAgICMgaWYgdXNpbmcgZ2NjIG9uIGFscGhhLCB1c2UgLW1pZWVlIHRvIGdldCAobmVhcikgZnVsbCBJRUVFIDc1NAogICAgICMgc3VwcG9ydC4gIFdpdGhvdXQgdGhpcywgdHJlYXRtZW50IG9mIHN1Ym5vcm1hbHMgZG9lc24ndCBmb2xsb3cKICAgICAjIHRoZSBzdGFuZGFyZC4KQEAgLTU3MzQsOSArNTcyMSw2IEBACiAJICAgIEVYUE9SVF9NQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQ9JycKIAogCSAgICA7OwotCU9TRiopCi0JICAgIEJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1taWVlZSIKLQkgICAgOzsKICAgICBlc2FjCiAgICAgOzsKIApAQCAtNTc0NSw5ICs1NzI5LDYgQEAKICAgICBPcGVuVU5JWCp8VW5peFdhcmUqKQogCUJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1LIHBlbnRpdW0saG9zdCxpbmxpbmUsbG9vcF91bnJvbGwsYWxsb2NhICIKIAk7OwotICAgIE9TRiopCi0JQkFTRUNGTEFHUz0iJEJBU0VDRkxBR1MgLWllZWUgLXN0ZCIKLSAgICAJOzsKICAgICBTQ09fU1YqKQogCUJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1iZWxmIC1LaTQ4NiAtRFNDTzUiCiAJOzsKQEAgLTYxNTksMTUgKzYxNDAsMTYgQEAKIAogZm9yIGFjX2hlYWRlciBpbiBhc20vdHlwZXMuaCBjb25pby5oIGN1cnNlcy5oIGRpcmVjdC5oIGRsZmNuLmggZXJybm8uaCBcCiBmY250bC5oIGdycC5oIFwKLWllZWVmcC5oIGlvLmggbGFuZ2luZm8uaCBsaWJpbnRsLmggbmN1cnNlcy5oIHBvbGwuaCBwcm9jZXNzLmggcHRocmVhZC5oIFwKLXNoYWRvdy5oIHNpZ25hbC5oIHN0ZGludC5oIHN0cm9wdHMuaCB0ZXJtaW9zLmggdGhyZWFkLmggXAoraWVlZWZwLmggaW8uaCBsYW5naW5mby5oIGxpYmludGwuaCBuY3Vyc2VzLmggcHJvY2Vzcy5oIHB0aHJlYWQuaCBcCitzY2hlZC5oIHNoYWRvdy5oIHNpZ25hbC5oIHN0ZGludC5oIHN0cm9wdHMuaCB0ZXJtaW9zLmggXAogdW5pc3RkLmggdXRpbWUuaCBcCi1zeXMvYXVkaW9pby5oIHN5cy9ic2R0dHkuaCBzeXMvZXBvbGwuaCBzeXMvZXZlbnQuaCBzeXMvZmlsZS5oIHN5cy9sb2FkYXZnLmggXAotc3lzL2xvY2suaCBzeXMvbWtkZXYuaCBzeXMvbW9kZW0uaCBcCi1zeXMvcGFyYW0uaCBzeXMvcG9sbC5oIHN5cy9zZWxlY3QuaCBzeXMvc29ja2V0Lmggc3lzL3N0YXR2ZnMuaCBzeXMvc3RhdC5oIFwKLXN5cy9zeXNjYWxsLmggc3lzL3Rlcm1pby5oIHN5cy90aW1lLmggXAotc3lzL3RpbWVzLmggc3lzL3R5cGVzLmggc3lzL3VuLmggc3lzL3V0c25hbWUuaCBzeXMvd2FpdC5oIHB0eS5oIGxpYnV0aWwuaCBcCi1zeXMvcmVzb3VyY2UuaCBuZXRwYWNrZXQvcGFja2V0Lmggc3lzZXhpdHMuaCBibHVldG9vdGguaCBcCitwb2xsLmggc3lzL2RldnBvbGwuaCBzeXMvZXBvbGwuaCBzeXMvcG9sbC5oIFwKK3N5cy9hdWRpb2lvLmggc3lzL3hhdHRyLmggc3lzL2JzZHR0eS5oIHN5cy9ldmVudC5oIHN5cy9maWxlLmggc3lzL2lvY3RsLmggXAorc3lzL2tlcm5fY29udHJvbC5oIHN5cy9sb2FkYXZnLmggc3lzL2xvY2suaCBzeXMvbWtkZXYuaCBzeXMvbW9kZW0uaCBcCitzeXMvcGFyYW0uaCBzeXMvc2VsZWN0Lmggc3lzL3NlbmRmaWxlLmggc3lzL3NvY2tldC5oIHN5cy9zdGF0dmZzLmggXAorc3lzL3N0YXQuaCBzeXMvc3lzY2FsbC5oIHN5cy9zeXNfZG9tYWluLmggc3lzL3Rlcm1pby5oIHN5cy90aW1lLmggXAorc3lzL3RpbWVzLmggc3lzL3R5cGVzLmggc3lzL3Vpby5oIHN5cy91bi5oIHN5cy91dHNuYW1lLmggc3lzL3dhaXQuaCBwdHkuaCBcCitsaWJ1dGlsLmggc3lzL3Jlc291cmNlLmggbmV0cGFja2V0L3BhY2tldC5oIHN5c2V4aXRzLmggYmx1ZXRvb3RoLmggXAogYmx1ZXRvb3RoL2JsdWV0b290aC5oIGxpbnV4L3RpcGMuaCBzcGF3bi5oIHV0aWwuaAogZG8gOgogICBhc19hY19IZWFkZXI9YCRhc19lY2hvICJhY19jdl9oZWFkZXJfJGFjX2hlYWRlciIgfCAkYXNfdHJfc2hgCkBAIC02MzkwLDYgKzYzNzIsMzQgQEAKIGZpCiAKIAorIyBPbiBEYXJ3aW4gKE9TIFgpIG5ldC9pZi5oIHJlcXVpcmVzIHN5cy9zb2NrZXQuaCB0byBiZSBpbXBvcnRlZCBmaXJzdC4KK2ZvciBhY19oZWFkZXIgaW4gbmV0L2lmLmgKK2RvIDoKKyAgYWNfZm5fY19jaGVja19oZWFkZXJfY29tcGlsZSAiJExJTkVOTyIgIm5ldC9pZi5oIiAiYWNfY3ZfaGVhZGVyX25ldF9pZl9oIiAiI2luY2x1ZGUgPHN0ZGlvLmg+CisjaWZkZWYgU1REQ19IRUFERVJTCisjIGluY2x1ZGUgPHN0ZGxpYi5oPgorIyBpbmNsdWRlIDxzdGRkZWYuaD4KKyNlbHNlCisjIGlmZGVmIEhBVkVfU1RETElCX0gKKyMgIGluY2x1ZGUgPHN0ZGxpYi5oPgorIyBlbmRpZgorI2VuZGlmCisjaWZkZWYgSEFWRV9TWVNfU09DS0VUX0gKKyMgaW5jbHVkZSA8c3lzL3NvY2tldC5oPgorI2VuZGlmCisKKyIKK2lmIHRlc3QgIngkYWNfY3ZfaGVhZGVyX25ldF9pZl9oIiA9IHh5ZXM7IHRoZW4gOgorICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIEhBVkVfTkVUX0lGX0ggMQorX0FDRU9GCisKK2ZpCisKK2RvbmUKKworCisKICMgT24gU29sYXJpcywgdGVybS5oIHJlcXVpcmVzIGN1cnNlcy5oCiBmb3IgYWNfaGVhZGVyIGluIHRlcm0uaAogZG8gOgpAQCAtNjQzMSw2ICs2NDQxLDI2IEBACiBkb25lCiAKIAorIyBPbiBMaW51eCwgY2FuLmggYW5kIGNhbi9yYXcuaCByZXF1aXJlIHN5cy9zb2NrZXQuaAorZm9yIGFjX2hlYWRlciBpbiBsaW51eC9jYW4uaCBsaW51eC9jYW4vcmF3LmgKK2RvIDoKKyAgYXNfYWNfSGVhZGVyPWAkYXNfZWNobyAiYWNfY3ZfaGVhZGVyXyRhY19oZWFkZXIiIHwgJGFzX3RyX3NoYAorYWNfZm5fY19jaGVja19oZWFkZXJfY29tcGlsZSAiJExJTkVOTyIgIiRhY19oZWFkZXIiICIkYXNfYWNfSGVhZGVyIiAiCisjaWZkZWYgSEFWRV9TWVNfU09DS0VUX0gKKyNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CisjZW5kaWYKKworIgoraWYgZXZhbCB0ZXN0IFwieFwkIiRhc19hY19IZWFkZXIiXCIgPSB4InllcyI7IHRoZW4gOgorICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIGAkYXNfZWNobyAiSEFWRV8kYWNfaGVhZGVyIiB8ICRhc190cl9jcHBgIDEKK19BQ0VPRgorCitmaQorCitkb25lCisKKwogIyBjaGVja3MgZm9yIHR5cGVkZWZzCiB3YXNfaXRfZGVmaW5lZD1ubwogeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgY2xvY2tfdCBpbiB0aW1lLmgiID4mNQpAQCAtNjQ1NSw3ICs2NDg1LDYgQEAKIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkd2FzX2l0X2RlZmluZWQiID4mNQogJGFzX2VjaG8gIiR3YXNfaXRfZGVmaW5lZCIgPiY2OyB9CiAKLSMgQ2hlY2sgd2hldGhlciB1c2luZyBtYWtlZGV2IHJlcXVpcmVzIGRlZmluaW5nIF9PU0ZfU09VUkNFCiB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBtYWtlZGV2IiA+JjUKICRhc19lY2hvX24gImNoZWNraW5nIGZvciBtYWtlZGV2Li4uICIgPiY2OyB9CiBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CkBAIC02NDg2LDM1ICs2NTE1LDYgQEAKIGZpCiBybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKICAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAotaWYgdGVzdCAiJGFjX2N2X2hhc19tYWtlZGV2IiA9ICJubyI7IHRoZW4KLSAgICAjIHdlIGRpZG4ndCBsaW5rLCB0cnkgaWYgX09TRl9TT1VSQ0Ugd2lsbCBhbGxvdyB1cyB0byBsaW5rCi0gICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAotLyogZW5kIGNvbmZkZWZzLmguICAqLwotCi0jZGVmaW5lIF9PU0ZfU09VUkNFIDEKLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLQotaW50Ci1tYWluICgpCi17Ci0gbWFrZWRldigwLCAwKQotICA7Ci0gIHJldHVybiAwOwotfQotX0FDRU9GCi1pZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6Ci0gIGFjX2N2X2hhc19tYWtlZGV2PXllcwotZWxzZQotICBhY19jdl9oYXNfbWFrZWRldj1ubwotZmkKLXJtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAotICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0Ci0gICAgaWYgdGVzdCAiJGFjX2N2X2hhc19tYWtlZGV2IiA9ICJ5ZXMiOyB0aGVuCi0KLSRhc19lY2hvICIjZGVmaW5lIF9PU0ZfU09VUkNFIDEiID4+Y29uZmRlZnMuaAotCi0gICAgZmkKLWZpCiB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2hhc19tYWtlZGV2IiA+JjUKICRhc19lY2hvICIkYWNfY3ZfaGFzX21ha2VkZXYiID4mNjsgfQogaWYgdGVzdCAiJGFjX2N2X2hhc19tYWtlZGV2IiA9ICJ5ZXMiOyB0aGVuCkBAIC03NjAyLDcgKzc2MDIsNiBAQAogCQllbHNlCiAJCQlMRFNIQVJFRD0nbGQgLWInCiAJCWZpIDs7Ci0JT1NGKikgTERTSEFSRUQ9ImxkIC1zaGFyZWQgLWV4cGVjdF91bnJlc29sdmVkIFwiKlwiIjs7CiAJRGFyd2luLzEuMyopCiAJCUxEU0hBUkVEPSckKENDKSAtYnVuZGxlJwogCQlMRENYWFNIQVJFRD0nJChDWFgpIC1idW5kbGUnCkBAIC03ODQxLDYgKzc4NDAsNTEgQEAKIAogCiAjIGNoZWNrcyBmb3IgbGlicmFyaWVzCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBzZW5kZmlsZSBpbiAtbHNlbmRmaWxlIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBzZW5kZmlsZSBpbiAtbHNlbmRmaWxlLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X2xpYl9zZW5kZmlsZV9zZW5kZmlsZSs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKK0xJQlM9Ii1sc2VuZGZpbGUgICRMSUJTIgorY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCisvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KKyAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQworICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KKyNpZmRlZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIgorI2VuZGlmCitjaGFyIHNlbmRmaWxlICgpOworaW50CittYWluICgpCit7CityZXR1cm4gc2VuZGZpbGUgKCk7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfbGliX3NlbmRmaWxlX3NlbmRmaWxlPXllcworZWxzZQorICBhY19jdl9saWJfc2VuZGZpbGVfc2VuZGZpbGU9bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfbGliX3NlbmRmaWxlX3NlbmRmaWxlIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfbGliX3NlbmRmaWxlX3NlbmRmaWxlIiA+JjY7IH0KK2lmIHRlc3QgIngkYWNfY3ZfbGliX3NlbmRmaWxlX3NlbmRmaWxlIiA9IHh5ZXM7IHRoZW4gOgorICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIEhBVkVfTElCU0VOREZJTEUgMQorX0FDRU9GCisKKyAgTElCUz0iLWxzZW5kZmlsZSAkTElCUyIKKworZmkKKwogeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgZGxvcGVuIGluIC1sZGwiID4mNQogJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIGRsb3BlbiBpbiAtbGRsLi4uICIgPiY2OyB9CiBpZiAke2FjX2N2X2xpYl9kbF9kbG9wZW4rOn0gZmFsc2U7IHRoZW4gOgpAQCAtODM3NiwyMyArODQyMCw2IEBACiAKIFVTRV9USFJFQURfTU9EVUxFPSIiCiAKLXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIC0td2l0aC1kZWMtdGhyZWFkcyIgPiY1Ci0kYXNfZWNob19uICJjaGVja2luZyBmb3IgLS13aXRoLWRlYy10aHJlYWRzLi4uICIgPiY2OyB9Ci0KLQotIyBDaGVjayB3aGV0aGVyIC0td2l0aC1kZWMtdGhyZWFkcyB3YXMgZ2l2ZW4uCi1pZiB0ZXN0ICIke3dpdGhfZGVjX3RocmVhZHMrc2V0fSIgPSBzZXQ7IHRoZW4gOgotICB3aXRodmFsPSR3aXRoX2RlY190aHJlYWRzOwoteyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICR3aXRodmFsIiA+JjUKLSRhc19lY2hvICIkd2l0aHZhbCIgPiY2OyB9Ci1MRExBU1Q9LXRocmVhZHMKLWlmIHRlc3QgIiR7d2l0aF90aHJlYWQrc2V0fSIgIT0gc2V0OyB0aGVuCi0gICB3aXRoX3RocmVhZD0iJHdpdGh2YWwiOwotZmkKLWVsc2UKLSAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKLSRhc19lY2hvICJubyIgPiY2OyB9Ci1maQogCiAKICMgVGVtcGxhdGVzIGZvciB0aGluZ3MgQUNfREVGSU5FZCBtb3JlIHRoYW4gb25jZS4KQEAgLTg0MDAsNyArODQyNyw2IEBACiAKIAogCi0KIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIC0td2l0aC10aHJlYWRzIiA+JjUKICRhc19lY2hvX24gImNoZWNraW5nIGZvciAtLXdpdGgtdGhyZWFkcy4uLiAiID4mNjsgfQogCkBAIC04NTAyLDMxICs4NTI4LDYgQEAKIAogICAgICRhc19lY2hvICIjZGVmaW5lIF9SRUVOVFJBTlQgMSIgPj5jb25mZGVmcy5oCiAKLSAgICBhY19mbl9jX2NoZWNrX2hlYWRlcl9tb25ncmVsICIkTElORU5PIiAiY3RocmVhZHMuaCIgImFjX2N2X2hlYWRlcl9jdGhyZWFkc19oIiAiJGFjX2luY2x1ZGVzX2RlZmF1bHQiCi1pZiB0ZXN0ICJ4JGFjX2N2X2hlYWRlcl9jdGhyZWFkc19oIiA9IHh5ZXM7IHRoZW4gOgotICAkYXNfZWNobyAiI2RlZmluZSBXSVRIX1RIUkVBRCAxIiA+PmNvbmZkZWZzLmgKLQotICAgICRhc19lY2hvICIjZGVmaW5lIENfVEhSRUFEUyAxIiA+PmNvbmZkZWZzLmgKLQotCi0kYXNfZWNobyAiI2RlZmluZSBIVVJEX0NfVEhSRUFEUyAxIiA+PmNvbmZkZWZzLmgKLQotICAgIExJQlM9IiRMSUJTIC1sdGhyZWFkcyIKLSAgICBUSFJFQURPQko9IlB5dGhvbi90aHJlYWQubyIKLWVsc2UKLQotICAgIGFjX2ZuX2NfY2hlY2tfaGVhZGVyX21vbmdyZWwgIiRMSU5FTk8iICJtYWNoL2N0aHJlYWRzLmgiICJhY19jdl9oZWFkZXJfbWFjaF9jdGhyZWFkc19oIiAiJGFjX2luY2x1ZGVzX2RlZmF1bHQiCi1pZiB0ZXN0ICJ4JGFjX2N2X2hlYWRlcl9tYWNoX2N0aHJlYWRzX2giID0geHllczsgdGhlbiA6Ci0gICRhc19lY2hvICIjZGVmaW5lIFdJVEhfVEhSRUFEIDEiID4+Y29uZmRlZnMuaAotCi0gICAgJGFzX2VjaG8gIiNkZWZpbmUgQ19USFJFQURTIDEiID4+Y29uZmRlZnMuaAotCi0KLSRhc19lY2hvICIjZGVmaW5lIE1BQ0hfQ19USFJFQURTIDEiID4+Y29uZmRlZnMuaAotCi0gICAgVEhSRUFET0JKPSJQeXRob24vdGhyZWFkLm8iCi1lbHNlCi0KICAgICAjIEp1c3QgbG9va2luZyBmb3IgcHRocmVhZF9jcmVhdGUgaW4gbGlicHRocmVhZCBpcyBub3QgZW5vdWdoOgogICAgICMgb24gSFAvVVgsIHB0aHJlYWQuaCByZW5hbWVzIHB0aHJlYWRfY3JlYXRlIHRvIGEgZGlmZmVyZW50IHN5bWJvbCBuYW1lLgogICAgICMgU28gd2UgcmVhbGx5IGhhdmUgdG8gaW5jbHVkZSBwdGhyZWFkLmgsIGFuZCB0aGVuIGxpbmsuCkBAIC04NzU4LDEyICs4NzU5LDYgQEAKIGZpCiBybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKICAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAotZmkKLQotCi1maQotCi0KIAogICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIHVzY29uZmlnIGluIC1sbXBjIiA+JjUKICRhc19lY2hvX24gImNoZWNraW5nIGZvciB1c2NvbmZpZyBpbiAtbG1wYy4uLiAiID4mNjsgfQpAQCAtODg1NiwxNSArODg1MSw2IEBACiBmaQogCiAgICAgZmkKLQotICAgIGlmIHRlc3QgIiRVU0VfVEhSRUFEX01PRFVMRSIgIT0gIiMiCi0gICAgdGhlbgotICAgICAgICAjIElmIHRoZSBhYm92ZSBjaGVja3MgZGlkbid0IGRpc2FibGUgdGhyZWFkcywgKGF0IGxlYXN0KSBPU0YxCi0gICAgICAgICMgbmVlZHMgdGhpcyAnLXRocmVhZHMnIGFyZ3VtZW50IGR1cmluZyBsaW5raW5nLgotICAgICAgICBjYXNlICRhY19zeXNfc3lzdGVtIGluCi0gICAgICAgIE9TRjEpIExETEFTVD0tdGhyZWFkczs7Ci0gICAgICAgIGVzYWMKLSAgICBmaQogZmkKIAogaWYgdGVzdCAiJHBvc2l4X3RocmVhZHMiID0gInllcyI7IHRoZW4KQEAgLTk0MTAsMTkgKzkzOTYsMjcgQEAKIAogIyBjaGVja3MgZm9yIGxpYnJhcnkgZnVuY3Rpb25zCiBmb3IgYWNfZnVuYyBpbiBhbGFybSBhY2NlcHQ0IHNldGl0aW1lciBnZXRpdGltZXIgYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQgY2hvd24gXAotIGNsb2NrIGNvbmZzdHIgY3Rlcm1pZCBleGVjdiBmY2htb2QgZmNob3duIGZvcmsgZnBhdGhjb25mIGZ0aW1lIGZ0cnVuY2F0ZSBcCi0gZ2FpX3N0cmVycm9yIGdldGdyb3VwcyBnZXRsb2dpbiBnZXRsb2FkYXZnIGdldHBlZXJuYW1lIGdldHBnaWQgZ2V0cGlkIFwKKyBjbG9jayBjb25mc3RyIGN0ZXJtaWQgZXhlY3YgZmFjY2Vzc2F0IGZjaG1vZCBmY2htb2RhdCBmY2hvd24gZmNob3duYXQgXAorIGZleGVjdmUgZmRvcGVuZGlyIGZvcmsgZnBhdGhjb25mIGZzdGF0YXQgZnRpbWUgZnRydW5jYXRlIGZ1dGltZXNhdCBcCisgZnV0aW1lbnMgZnV0aW1lcyBnYWlfc3RyZXJyb3IgXAorIGdldGdyb3VwbGlzdCBnZXRncm91cHMgZ2V0bG9naW4gZ2V0bG9hZGF2ZyBnZXRwZWVybmFtZSBnZXRwZ2lkIGdldHBpZCBcCiAgZ2V0cHJpb3JpdHkgZ2V0cmVzdWlkIGdldHJlc2dpZCBnZXRwd2VudCBnZXRzcG5hbSBnZXRzcGVudCBnZXRzaWQgZ2V0d2QgXAotIGluaXRncm91cHMga2lsbCBraWxscGcgbGNobW9kIGxjaG93biBsc3RhdCBtYnJ0b3djIG1rZmlmbyBta25vZCBta3RpbWUgXAotIG1yZW1hcCBuaWNlIHBhdGhjb25mIHBhdXNlIHBsb2NrIHBvbGwgcHRocmVhZF9pbml0IFwKLSBwdXRlbnYgcmVhZGxpbmsgcmVhbHBhdGggXAotIHNlbGVjdCBzZW1fb3BlbiBzZW1fdGltZWR3YWl0IHNlbV9nZXR2YWx1ZSBzZW1fdW5saW5rIHNldGVnaWQgc2V0ZXVpZCBcCi0gc2V0Z2lkIFwKLSBzZXRsb2NhbGUgc2V0cmVnaWQgc2V0cmV1aWQgc2V0cmVzdWlkIHNldHJlc2dpZCBzZXRzaWQgc2V0cGdpZCBzZXRwZ3JwIHNldHVpZCBzZXR2YnVmIFwKLSBzaWdhY3Rpb24gc2lnaW50ZXJydXB0IHNpZ3JlbHNlIHNucHJpbnRmIHN0cmZ0aW1lIHN0cmxjcHkgXAorIGlmX25hbWVpbmRleCBcCisgaW5pdGdyb3VwcyBraWxsIGtpbGxwZyBsY2htb2QgbGNob3duIGxvY2tmIGxpbmthdCBsc3RhdCBsdXRpbWVzIG1tYXAgXAorIG1lbXJjaHIgbWJydG93YyBta2RpcmF0IG1rZmlmbyBcCisgbWtmaWZvYXQgbWtub2QgbWtub2RhdCBta3RpbWUgbXJlbWFwIG5pY2Ugb3BlbmF0IHBhdGhjb25mIHBhdXNlIHBpcGUyIHBsb2NrIHBvbGwgXAorIHBvc2l4X2ZhbGxvY2F0ZSBwb3NpeF9mYWR2aXNlIHByZWFkIFwKKyBwdGhyZWFkX2luaXQgcHRocmVhZF9raWxsIHB1dGVudiBwd3JpdGUgcmVhZGxpbmsgcmVhZGxpbmthdCByZWFkdiByZWFscGF0aCByZW5hbWVhdCBcCisgc2VsZWN0IHNlbV9vcGVuIHNlbV90aW1lZHdhaXQgc2VtX2dldHZhbHVlIHNlbV91bmxpbmsgc2VuZGZpbGUgc2V0ZWdpZCBzZXRldWlkIFwKKyBzZXRnaWQgc2V0aG9zdG5hbWUgXAorIHNldGxvY2FsZSBzZXRyZWdpZCBzZXRyZXVpZCBzZXRyZXN1aWQgc2V0cmVzZ2lkIHNldHNpZCBzZXRwZ2lkIHNldHBncnAgc2V0cHJpb3JpdHkgc2V0dWlkIHNldHZidWYgXAorIHNjaGVkX2dldF9wcmlvcml0eV9tYXggc2NoZWRfc2V0YWZmaW5pdHkgc2NoZWRfc2V0c2NoZWR1bGVyIHNjaGVkX3NldHBhcmFtIFwKKyBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwgXAorIHNpZ2FjdGlvbiBzaWdhbHRzdGFjayBzaWdpbnRlcnJ1cHQgc2lncGVuZGluZyBzaWdyZWxzZSBcCisgc2lndGltZWR3YWl0IHNpZ3dhaXQgc2lnd2FpdGluZm8gc25wcmludGYgc3RyZnRpbWUgc3RybGNweSBzeW1saW5rYXQgc3luYyBcCiAgc3lzY29uZiB0Y2dldHBncnAgdGNzZXRwZ3JwIHRlbXBuYW0gdGltZWdtIHRpbWVzIHRtcGZpbGUgdG1wbmFtIHRtcG5hbV9yIFwKLSB0cnVuY2F0ZSB1bmFtZSB1bnNldGVudiB1dGltZXMgd2FpdHBpZCB3YWl0MyB3YWl0NCBcCi0gd2NzY29sbCB3Y3NmdGltZSB3Y3N4ZnJtIF9nZXRwdHkKKyB0cnVuY2F0ZSB1bmFtZSB1bmxpbmthdCB1bnNldGVudiB1dGltZW5zYXQgdXRpbWVzIHdhaXRpZCB3YWl0cGlkIHdhaXQzIHdhaXQ0IFwKKyB3Y3Njb2xsIHdjc2Z0aW1lIHdjc3hmcm0gd3JpdGV2IF9nZXRwdHkKIGRvIDoKICAgYXNfYWNfdmFyPWAkYXNfZWNobyAiYWNfY3ZfZnVuY18kYWNfZnVuYyIgfCAkYXNfdHJfc2hgCiBhY19mbl9jX2NoZWNrX2Z1bmMgIiRMSU5FTk8iICIkYWNfZnVuYyIgIiRhc19hY192YXIiCkBAIC05NjIyLDYgKzk2MTYsMzEgQEAKIAogZmkKIHJtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgZXBvbGxfY3JlYXRlMSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgZXBvbGxfY3JlYXRlMS4uLiAiID4mNjsgfQorY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPHN5cy9lcG9sbC5oPgoraW50CittYWluICgpCit7Cit2b2lkICp4PWVwb2xsX2NyZWF0ZTEKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorCiskYXNfZWNobyAiI2RlZmluZSBIQVZFX0VQT0xMX0NSRUFURTEgMSIgPj5jb25mZGVmcy5oCisKKyAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiB5ZXMiID4mNQorJGFzX2VjaG8gInllcyIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CiB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBrcXVldWUiID4mNQogJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIGtxdWV1ZS4uLiAiID4mNjsgfQogY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dApAQCAtMTA1OTYsNiArMTA2MTUsMTI1IEBACiBkb25lCiAKIAorZm9yIGFjX2Z1bmMgaW4gY2xvY2tfZ2V0dGltZQorZG8gOgorICBhY19mbl9jX2NoZWNrX2Z1bmMgIiRMSU5FTk8iICJjbG9ja19nZXR0aW1lIiAiYWNfY3ZfZnVuY19jbG9ja19nZXR0aW1lIgoraWYgdGVzdCAieCRhY19jdl9mdW5jX2Nsb2NrX2dldHRpbWUiID0geHllczsgdGhlbiA6CisgIGNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEKK19BQ0VPRgorCitlbHNlCisKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBjbG9ja19nZXR0aW1lIGluIC1scnQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIGNsb2NrX2dldHRpbWUgaW4gLWxydC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9saWJfcnRfY2xvY2tfZ2V0dGltZSs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKK0xJQlM9Ii1scnQgICRMSUJTIgorY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCisvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KKyAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQworICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KKyNpZmRlZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIgorI2VuZGlmCitjaGFyIGNsb2NrX2dldHRpbWUgKCk7CitpbnQKK21haW4gKCkKK3sKK3JldHVybiBjbG9ja19nZXR0aW1lICgpOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2xpYl9ydF9jbG9ja19nZXR0aW1lPXllcworZWxzZQorICBhY19jdl9saWJfcnRfY2xvY2tfZ2V0dGltZT1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitMSUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJTCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9saWJfcnRfY2xvY2tfZ2V0dGltZSIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2xpYl9ydF9jbG9ja19nZXR0aW1lIiA+JjY7IH0KK2lmIHRlc3QgIngkYWNfY3ZfbGliX3J0X2Nsb2NrX2dldHRpbWUiID0geHllczsgdGhlbiA6CisKKyAgICAgICAgJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9DTE9DS19HRVRUSU1FIDEiID4+Y29uZmRlZnMuaAorCisKKyRhc19lY2hvICIjZGVmaW5lIFRJTUVNT0RVTEVfTElCIHJ0IiA+PmNvbmZkZWZzLmgKKworCitmaQorCisKK2ZpCitkb25lCisKKworZm9yIGFjX2Z1bmMgaW4gY2xvY2tfZ2V0cmVzCitkbyA6CisgIGFjX2ZuX2NfY2hlY2tfZnVuYyAiJExJTkVOTyIgImNsb2NrX2dldHJlcyIgImFjX2N2X2Z1bmNfY2xvY2tfZ2V0cmVzIgoraWYgdGVzdCAieCRhY19jdl9mdW5jX2Nsb2NrX2dldHJlcyIgPSB4eWVzOyB0aGVuIDoKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBIQVZFX0NMT0NLX0dFVFJFUyAxCitfQUNFT0YKKworZWxzZQorCisgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgY2xvY2tfZ2V0cmVzIGluIC1scnQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIGNsb2NrX2dldHJlcyBpbiAtbHJ0Li4uICIgPiY2OyB9CitpZiAke2FjX2N2X2xpYl9ydF9jbG9ja19nZXRyZXMrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCitMSUJTPSItbHJ0ICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBjbG9ja19nZXRyZXMgKCk7CitpbnQKK21haW4gKCkKK3sKK3JldHVybiBjbG9ja19nZXRyZXMgKCk7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfbGliX3J0X2Nsb2NrX2dldHJlcz15ZXMKK2Vsc2UKKyAgYWNfY3ZfbGliX3J0X2Nsb2NrX2dldHJlcz1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitMSUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJTCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9saWJfcnRfY2xvY2tfZ2V0cmVzIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfbGliX3J0X2Nsb2NrX2dldHJlcyIgPiY2OyB9CitpZiB0ZXN0ICJ4JGFjX2N2X2xpYl9ydF9jbG9ja19nZXRyZXMiID0geHllczsgdGhlbiA6CisKKyAgICAgICAgJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMSIgPj5jb25mZGVmcy5oCisKKworZmkKKworCitmaQorZG9uZQorCisKIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIG1ham9yIiA+JjUKICRhc19lY2hvX24gImNoZWNraW5nIGZvciBtYWpvci4uLiAiID4mNjsgfQogY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dApAQCAtMTIwMDAsNyArMTIxMzgsNyBAQAogZmkKIGRvbmUKIAotZm9yIGFjX2Z1bmMgaW4gaHlwb3QgbGdhbW1hIGxvZzFwIHJvdW5kIHRnYW1tYQorZm9yIGFjX2Z1bmMgaW4gaHlwb3QgbGdhbW1hIGxvZzFwIGxvZzIgcm91bmQgdGdhbW1hCiBkbyA6CiAgIGFzX2FjX3Zhcj1gJGFzX2VjaG8gImFjX2N2X2Z1bmNfJGFjX2Z1bmMiIHwgJGFzX3RyX3NoYAogYWNfZm5fY19jaGVja19mdW5jICIkTElORU5PIiAiJGFjX2Z1bmMiICIkYXNfYWNfdmFyIgpAQCAtMTI0MDcsNjUgKzEyNTQ1LDE5IEBACiAkYXNfZWNobyAiJGFjX2N2X3djaGFyX3Rfc2lnbmVkIiA+JjY7IH0KIGZpCiAKLXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hhdCB0eXBlIHRvIHVzZSBmb3Igc3RyIiA+JjUKLSRhc19lY2hvX24gImNoZWNraW5nIHdoYXQgdHlwZSB0byB1c2UgZm9yIHN0ci4uLiAiID4mNjsgfQotCi0jIENoZWNrIHdoZXRoZXIgLS13aXRoLXdpZGUtdW5pY29kZSB3YXMgZ2l2ZW4uCi1pZiB0ZXN0ICIke3dpdGhfd2lkZV91bmljb2RlK3NldH0iID0gc2V0OyB0aGVuIDoKLSAgd2l0aHZhbD0kd2l0aF93aWRlX3VuaWNvZGU7Ci1pZiB0ZXN0ICIkd2l0aHZhbCIgIT0gbm8KLXRoZW4gdW5pY29kZV9zaXplPSI0IgotZWxzZSB1bmljb2RlX3NpemU9IjIiCi1maQotCi1lbHNlCi0KLWNhc2UgIiRoYXZlX3VjczRfdGNsIiBpbgotICB5ZXMpIHVuaWNvZGVfc2l6ZT0iNCI7OwotICAqKSAgIHVuaWNvZGVfc2l6ZT0iMiIgOzsKLWVzYWMKLQotZmkKLQotCi0KLWNhc2UgIiR1bmljb2RlX3NpemUiIGluCi0gIDQpCi0gICAgICRhc19lY2hvICIjZGVmaW5lIFB5X1VOSUNPREVfU0laRSA0IiA+PmNvbmZkZWZzLmgKLQotICAgICBBQklGTEFHUz0iJHtBQklGTEFHU311IgotICAgICA7OwotICAqKSAkYXNfZWNobyAiI2RlZmluZSBQeV9VTklDT0RFX1NJWkUgMiIgPj5jb25mZGVmcy5oCi0gOzsKLWVzYWMKLQotCi0KICMgd2NoYXJfdCBpcyBvbmx5IHVzYWJsZSBpZiBpdCBtYXBzIHRvIGFuIHVuc2lnbmVkIHR5cGUKLWlmIHRlc3QgIiR1bmljb2RlX3NpemUiID0gIiRhY19jdl9zaXplb2Zfd2NoYXJfdCIgXAoraWYgdGVzdCAiJGFjX2N2X3NpemVvZl93Y2hhcl90IiAtZ2UgMiBcCiAgICAgICAgICAgLWEgIiRhY19jdl93Y2hhcl90X3NpZ25lZCIgPSAibm8iCiB0aGVuCi0gIFBZX1VOSUNPREVfVFlQRT0id2NoYXJfdCIKKyAgSEFWRV9VU0FCTEVfV0NIQVJfVD0ieWVzIgogCiAkYXNfZWNobyAiI2RlZmluZSBIQVZFX1VTQUJMRV9XQ0hBUl9UIDEiID4+Y29uZmRlZnMuaAogCi0gICRhc19lY2hvICIjZGVmaW5lIFBZX1VOSUNPREVfVFlQRSB3Y2hhcl90IiA+PmNvbmZkZWZzLmgKLQotZWxpZiB0ZXN0ICIkYWNfY3Zfc2l6ZW9mX3Nob3J0IiA9ICIkdW5pY29kZV9zaXplIgotdGhlbgotICAgICBQWV9VTklDT0RFX1RZUEU9InVuc2lnbmVkIHNob3J0IgotICAgICAkYXNfZWNobyAiI2RlZmluZSBQWV9VTklDT0RFX1RZUEUgdW5zaWduZWQgc2hvcnQiID4+Y29uZmRlZnMuaAotCi1lbGlmIHRlc3QgIiRhY19jdl9zaXplb2ZfbG9uZyIgPSAiJHVuaWNvZGVfc2l6ZSIKLXRoZW4KLSAgICAgUFlfVU5JQ09ERV9UWVBFPSJ1bnNpZ25lZCBsb25nIgotICAgICAkYXNfZWNobyAiI2RlZmluZSBQWV9VTklDT0RFX1RZUEUgdW5zaWduZWQgbG9uZyIgPj5jb25mZGVmcy5oCi0KIGVsc2UKLSAgICAgUFlfVU5JQ09ERV9UWVBFPSJubyB0eXBlIGZvdW5kIgorICBIQVZFX1VTQUJMRV9XQ0hBUl9UPSJubyB1c2FibGUgd2NoYXJfdCBmb3VuZCIKIGZpCi17ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJFBZX1VOSUNPREVfVFlQRSIgPiY1Ci0kYXNfZWNobyAiJFBZX1VOSUNPREVfVFlQRSIgPiY2OyB9Cit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJEhBVkVfVVNBQkxFX1dDSEFSX1QiID4mNQorJGFzX2VjaG8gIiRIQVZFX1VTQUJMRV9XQ0hBUl9UIiA+JjY7IH0KIAogIyBjaGVjayBmb3IgZW5kaWFubmVzcwogIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciBieXRlIG9yZGVyaW5nIGlzIGJpZ2VuZGlhbiIgPiY1CkBAIC0xMzkzOSwxOCArMTQwMzEsNiBAQAogZXNhYwogCiAKLWNhc2UgJGFjX3N5c19zeXN0ZW0gaW4KLSAgT1NGKikgYXNfZm5fZXJyb3IgJD8gIk9TRiogc3lzdGVtcyBhcmUgZGVwcmVjYXRlZCB1bmxlc3Mgc29tZWJvZHkgdm9sdW50ZWVycy4gQ2hlY2sgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTg2MDYiICIkTElORU5PIiA1IDs7Ci1lc2FjCi0KLWFjX2ZuX2NfY2hlY2tfZnVuYyAiJExJTkVOTyIgInBpcGUyIiAiYWNfY3ZfZnVuY19waXBlMiIKLWlmIHRlc3QgIngkYWNfY3ZfZnVuY19waXBlMiIgPSB4eWVzOyB0aGVuIDoKLQotJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9QSVBFMiAxIiA+PmNvbmZkZWZzLmgKLQotZmkKLQotCiAKIAogZm9yIGggaW4gYChjZCAkc3JjZGlyO2VjaG8gUHl0aG9uL3RocmVhZF8qLmgpYApAQCAtMTQ0OTQsNyArMTQ1NzQsNyBAQAogIyByZXBvcnQgYWN0dWFsIGlucHV0IHZhbHVlcyBvZiBDT05GSUdfRklMRVMgZXRjLiBpbnN0ZWFkIG9mIHRoZWlyCiAjIHZhbHVlcyBhZnRlciBvcHRpb25zIGhhbmRsaW5nLgogYWNfbG9nPSIKLVRoaXMgZmlsZSB3YXMgZXh0ZW5kZWQgYnkgcHl0aG9uICRhc19tZSAzLjIsIHdoaWNoIHdhcworVGhpcyBmaWxlIHdhcyBleHRlbmRlZCBieSBweXRob24gJGFzX21lIDMuMywgd2hpY2ggd2FzCiBnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNjguICBJbnZvY2F0aW9uIGNvbW1hbmQgbGluZSB3YXMKIAogICBDT05GSUdfRklMRVMgICAgPSAkQ09ORklHX0ZJTEVTCkBAIC0xNDUxOSw4ICsxNDU5OSw4IEBACiAKIGNhdCA+PiRDT05GSUdfU1RBVFVTIDw8X0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQogIyBGaWxlcyB0aGF0IGNvbmZpZy5zdGF0dXMgd2FzIG1hZGUgZm9yLgotY29uZmlnX2ZpbGVzPSIkYWNfY29uZmlnX2ZpbGVzIgotY29uZmlnX2hlYWRlcnM9IiRhY19jb25maWdfaGVhZGVycyIKK2NvbmZpZ19maWxlcz0iYGVjaG8gJGFjX2NvbmZpZ19maWxlc2AiCitjb25maWdfaGVhZGVycz0iYGVjaG8gJGFjX2NvbmZpZ19oZWFkZXJzYCIKIAogX0FDRU9GCiAKQEAgLTE0NTU2LDcgKzE0NjM2LDcgQEAKIGNhdCA+PiRDT05GSUdfU1RBVFVTIDw8X0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQogYWNfY3NfY29uZmlnPSJgJGFzX2VjaG8gIiRhY19jb25maWd1cmVfYXJncyIgfCBzZWQgJ3MvXiAvLzsgcy9bXFwiIlxgXCRdL1xcXFwmL2cnYCIKIGFjX2NzX3ZlcnNpb249IlxcCi1weXRob24gY29uZmlnLnN0YXR1cyAzLjIKK3B5dGhvbiBjb25maWcuc3RhdHVzIDMuMwogY29uZmlndXJlZCBieSAkMCwgZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY4LAogICB3aXRoIG9wdGlvbnMgXFwiXCRhY19jc19jb25maWdcXCIKIApkaWZmIC0tZ2l0IGEvY29uZmlndXJlLmluIGIvY29uZmlndXJlLmluCmluZGV4IDEzOGQ1NjIuLjQ3YmE3ODcgMTAwNjQ0Ci0tLSBhL2NvbmZpZ3VyZS5pbgorKysgYi9jb25maWd1cmUuaW4KQEAgLTMsMTkgKzMsMzMgQEAKIGRubCAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogCiAjIFNldCBWRVJTSU9OIHNvIHdlIG9ubHkgbmVlZCB0byBlZGl0IGluIG9uZSBwbGFjZSAoaS5lLiwgaGVyZSkKLW00X2RlZmluZShQWVRIT05fVkVSU0lPTiwgMy4yKQorbTRfZGVmaW5lKFBZVEhPTl9WRVJTSU9OLCAzLjMpCiAKLWRubCBTb21lIG00IG1hZ2ljIHRvIGVuc3VyZSB0aGF0IHRoZSBjb25maWd1cmUgc2NyaXB0IGlzIGdlbmVyYXRlZAotZG5sIGJ5IHRoZSBjb3JyZWN0IGF1dG9jb25mIHZlcnNpb24uCi1tNF9kZWZpbmUoW3ZlcnNpb25fcmVxdWlyZWRdLAotW200X2lmKG00X3ZlcnNpb25fY29tcGFyZShtNF9kZWZuKFttNF9QQUNLQUdFX1ZFUlNJT05dKSwgWyQxXSksIDAsCi0gICAgICAgW10sCi0gICAgICAgW200X2ZhdGFsKFtBdXRvY29uZiB2ZXJzaW9uICQxIGlzIHJlcXVpcmVkIGZvciBQeXRob25dLCA2MyldKQotXSkKIEFDX1BSRVJFUSgyLjY1KQogCi1BQ19SRVZJU0lPTigkUmV2aXNpb24kKQogQUNfSU5JVChweXRob24sIFBZVEhPTl9WRVJTSU9OLCBodHRwOi8vYnVncy5weXRob24ub3JnLykKKworQUNfU1VCU1QoSEdWRVJTSU9OKQorQUNfU1VCU1QoSEdUQUcpCitBQ19TVUJTVChIR0JSQU5DSCkKKworaWYgdGVzdCAtZSAkc3JjZGlyLy5oZy9kaXJzdGF0ZQordGhlbgorQUNfQ0hFQ0tfUFJPRyhIQVNfSEcsIGhnLCBmb3VuZCwgbm90LWZvdW5kKQorZWxzZQorSEFTX0hHPW5vLXJlcG9zaXRvcnkKK2ZpCitpZiB0ZXN0ICRIQVNfSEcgPSBmb3VuZAordGhlbgorICAgIEhHVkVSU0lPTj0iaGcgaWQgLWkgXCQoc3JjZGlyKSIKKyAgICBIR1RBRz0iaGcgaWQgLXQgXCQoc3JjZGlyKSIKKyAgICBIR0JSQU5DSD0iaGcgaWQgLWIgXCQoc3JjZGlyKSIKK2Vsc2UKKyAgICBIR1ZFUlNJT049IiIKKyAgICBIR1RBRz0iIgorICAgIEhHQlJBTkNIPSIiCitmaQorCiBBQ19DT05GSUdfU1JDRElSKFtJbmNsdWRlL29iamVjdC5oXSkKIEFDX0NPTkZJR19IRUFERVIocHljb25maWcuaCkKIApAQCAtMjkwLDcgKzMwNCw3IEBACiAJTUFDSERFUD0iJGFjX21kX3N5c3RlbSRhY19tZF9yZWxlYXNlIgogCiAJY2FzZSAkTUFDSERFUCBpbgotCWxpbnV4KikgTUFDSERFUD0ibGludXgyIjs7CisJbGludXgqKSBNQUNIREVQPSJsaW51eCI7OwogCWN5Z3dpbiopIE1BQ0hERVA9ImN5Z3dpbiI7OwogCWRhcndpbiopIE1BQ0hERVA9ImRhcndpbiI7OwogICAgICAgICBpcml4NjQ2KSBNQUNIREVQPSJpcml4NiI7OwpAQCAtMzgzLDcgKzM5Nyw4IEBACiAKIGlmIHRlc3QgJGRlZmluZV94b3Blbl9zb3VyY2UgPSB5ZXMKIHRoZW4KLSAgQUNfREVGSU5FKF9YT1BFTl9TT1VSQ0UsIDYwMCwgCisgICMgWC9PcGVuIDcsIGluY29ycG9yYXRpbmcgUE9TSVguMS0yMDA4CisgIEFDX0RFRklORShfWE9QRU5fU09VUkNFLCA3MDAsCiAgICAgICAgICAgICBEZWZpbmUgdG8gdGhlIGxldmVsIG9mIFgvT3BlbiB0aGF0IHlvdXIgc3lzdGVtIHN1cHBvcnRzKQogCiAgICMgT24gVHJ1NjQgVW5peCA0LjBGLCBkZWZpbmluZyBfWE9QRU5fU09VUkNFIGFsc28gcmVxdWlyZXMKQEAgLTM5Myw4ICs0MDgsNyBAQAogICBBQ19ERUZJTkUoX1hPUEVOX1NPVVJDRV9FWFRFTkRFRCwgMSwKICAgIAkgICAgRGVmaW5lIHRvIGFjdGl2YXRlIFVuaXg5NS1hbmQtZWFybGllciBmZWF0dXJlcykKIAotICBBQ19ERUZJTkUoX1BPU0lYX0NfU09VUkNFLCAyMDAxMTJMLCBEZWZpbmUgdG8gYWN0aXZhdGUgZmVhdHVyZXMgZnJvbSBJRUVFIFN0ZHMgMTAwMy4xLTIwMDEpCi0gIAorICBBQ19ERUZJTkUoX1BPU0lYX0NfU09VUkNFLCAyMDA4MDlMLCBEZWZpbmUgdG8gYWN0aXZhdGUgZmVhdHVyZXMgZnJvbSBJRUVFIFN0ZHMgMTAwMy4xLTIwMDgpCiBmaQogCiAjCkBAIC03ODMsMTEgKzc5Nyw2IEBACiAJICBCTERMSUJSQVJZPSctV2wsK2IsJChMSUJESVIpIC1MLiAtbHB5dGhvbiQoTERWRVJTSU9OKScKIAkgIFJVTlNIQVJFRD1TSExJQl9QQVRIPWBwd2RgOiR7U0hMSUJfUEFUSH0KIAkgIDs7Ci0gICAgT1NGKikKLQkgIExETElCUkFSWT0nbGlicHl0aG9uJChMRFZFUlNJT04pLnNvJwotCSAgQkxETElCUkFSWT0nLXJwYXRoICQoTElCRElSKSAtTC4gLWxweXRob24kKExEVkVSU0lPTiknCi0JICBSVU5TSEFSRUQ9TERfTElCUkFSWV9QQVRIPWBwd2RgOiR7TERfTElCUkFSWV9QQVRIfQotCSAgOzsKICAgICBEYXJ3aW4qKQogICAgIAlMRExJQlJBUlk9J2xpYnB5dGhvbiQoTERWRVJTSU9OKS5keWxpYicKIAlCTERMSUJSQVJZPSctTC4gLWxweXRob24kKExEVkVSU0lPTiknCkBAIC04MjEsMzYgKzgzMCw2IEBACiAgICAgICAgIEFSRkxBR1M9InJjIgogZmkKIAotQUNfU1VCU1QoU1ZOVkVSU0lPTikKLUFDX0NIRUNLX1BST0coU1ZOVkVSU0lPTiwgc3ZudmVyc2lvbiwgZm91bmQsIG5vdC1mb3VuZCkKLWlmIHRlc3QgJFNWTlZFUlNJT04gPSBmb3VuZAotdGhlbgotCVNWTlZFUlNJT049InN2bnZlcnNpb24gXCQoc3JjZGlyKSIKLWVsc2UKLQlTVk5WRVJTSU9OPSJlY2hvIFVudmVyc2lvbmVkIGRpcmVjdG9yeSIKLWZpCi0KLUFDX1NVQlNUKEhHVkVSU0lPTikKLUFDX1NVQlNUKEhHVEFHKQotQUNfU1VCU1QoSEdCUkFOQ0gpCi0KLWlmIHRlc3QgLWUgJHNyY2Rpci8uaGcvZGlyc3RhdGUKLXRoZW4KLUFDX0NIRUNLX1BST0coSEFTX0hHLCBoZywgZm91bmQsIG5vdC1mb3VuZCkKLWVsc2UKLUhBU19IRz1uby1yZXBvc2l0b3J5Ci1maQotaWYgdGVzdCAkSEFTX0hHID0gZm91bmQKLXRoZW4KLSAgICBIR1ZFUlNJT049ImhnIGlkIC1pIFwkKHNyY2RpcikiCi0gICAgSEdUQUc9ImhnIGlkIC10IFwkKHNyY2RpcikiCi0gICAgSEdCUkFOQ0g9ImhnIGlkIC1iIFwkKHNyY2RpcikiCi1lbHNlCi0gICAgSEdWRVJTSU9OPSIiCi0gICAgSEdUQUc9IiIKLSAgICBIR0JSQU5DSD0iIgotZmkKLQogQUNfU1VCU1QoRElTQUJMRV9BU0RMR0VOKQogRElTQUJMRV9BU0RMR0VOPSIiCiBBQ19DSEVDS19QUk9HKEhBU19QWVRIT04sIHB5dGhvbiwgZm91bmQsIG5vdC1mb3VuZCkKQEAgLTEwMDMsNiArOTgyLDI4IEBACiAgICAgICBCQVNFQ0ZMQUdTPSIkQkFTRUNGTEFHUyAtZm5vLXN0cmljdC1hbGlhc2luZyIKICAgICBmaQogCisgICAgQUNfTVNHX0NIRUNLSU5HKGlmIHdlIGNhbiB0dXJuIG9mZiAkQ0MgdW51c2VkIHJlc3VsdCB3YXJuaW5nKQorICAgICBhY19zYXZlX2NjPSIkQ0MiCisgICAgIENDPSIkQ0MgLVd1bnVzZWQtcmVzdWx0IC1XZXJyb3IiCisgICAgIHNhdmVfQ0ZMQUdTPSIkQ0ZMQUdTIgorICAgICBBQ19DQUNIRV9WQUwoYWNfY3ZfZGlzYWJsZV91bnVzZWRfcmVzdWx0X3dhcm5pbmcsCisgICAgICAgQUNfQ09NUElMRV9JRkVMU0UoCisgICAgICAgICBbCisJICAgQUNfTEFOR19QUk9HUkFNKFtbXV0sIFtbXV0pCisJIF0sWworICAgICAgICAgICBhY19jdl9kaXNhYmxlX3VudXNlZF9yZXN1bHRfd2FybmluZz15ZXMKKwkgXSxbCisgICAgICAgICAgIGFjX2N2X2Rpc2FibGVfdW51c2VkX3Jlc3VsdF93YXJuaW5nPW5vCisJIF0pKQorICAgICBDRkxBR1M9IiRzYXZlX0NGTEFHUyIKKyAgICAgQ0M9IiRhY19zYXZlX2NjIgorICAgIEFDX01TR19SRVNVTFQoJGFjX2N2X2Rpc2FibGVfdW51c2VkX3Jlc3VsdF93YXJuaW5nKQorCisgICAgaWYgdGVzdCAkYWNfY3ZfZGlzYWJsZV91bnVzZWRfcmVzdWx0X3dhcm5pbmcgPSB5ZXMKKyAgICB0aGVuCisgICAgICBCQVNFQ0ZMQUdTPSIkQkFTRUNGTEFHUyAtV25vLXVudXNlZC1yZXN1bHQiCisgICAgZmkKKwogICAgICMgaWYgdXNpbmcgZ2NjIG9uIGFscGhhLCB1c2UgLW1pZWVlIHRvIGdldCAobmVhcikgZnVsbCBJRUVFIDc1NAogICAgICMgc3VwcG9ydC4gIFdpdGhvdXQgdGhpcywgdHJlYXRtZW50IG9mIHN1Ym5vcm1hbHMgZG9lc24ndCBmb2xsb3cKICAgICAjIHRoZSBzdGFuZGFyZC4KQEAgLTExMTksOSArMTEyMCw2IEBACiAJICAgIEVYUE9SVF9NQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQ9JycKIAogCSAgICA7OwotCU9TRiopCi0JICAgIEJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1taWVlZSIKLQkgICAgOzsKICAgICBlc2FjCiAgICAgOzsKIApAQCAtMTEzMCw5ICsxMTI4LDYgQEAKICAgICBPcGVuVU5JWCp8VW5peFdhcmUqKQogCUJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1LIHBlbnRpdW0saG9zdCxpbmxpbmUsbG9vcF91bnJvbGwsYWxsb2NhICIKIAk7OwotICAgIE9TRiopCi0JQkFTRUNGTEFHUz0iJEJBU0VDRkxBR1MgLWllZWUgLXN0ZCIKLSAgICAJOzsKICAgICBTQ09fU1YqKQogCUJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1iZWxmIC1LaTQ4NiAtRFNDTzUiCiAJOzsKQEAgLTEzMzUsMTkgKzEzMzAsMzcgQEAKIEFDX0hFQURFUl9TVERDCiBBQ19DSEVDS19IRUFERVJTKGFzbS90eXBlcy5oIGNvbmlvLmggY3Vyc2VzLmggZGlyZWN0LmggZGxmY24uaCBlcnJuby5oIFwKIGZjbnRsLmggZ3JwLmggXAotaWVlZWZwLmggaW8uaCBsYW5naW5mby5oIGxpYmludGwuaCBuY3Vyc2VzLmggcG9sbC5oIHByb2Nlc3MuaCBwdGhyZWFkLmggXAotc2hhZG93Lmggc2lnbmFsLmggc3RkaW50Lmggc3Ryb3B0cy5oIHRlcm1pb3MuaCB0aHJlYWQuaCBcCitpZWVlZnAuaCBpby5oIGxhbmdpbmZvLmggbGliaW50bC5oIG5jdXJzZXMuaCBwcm9jZXNzLmggcHRocmVhZC5oIFwKK3NjaGVkLmggc2hhZG93Lmggc2lnbmFsLmggc3RkaW50Lmggc3Ryb3B0cy5oIHRlcm1pb3MuaCBcCiB1bmlzdGQuaCB1dGltZS5oIFwKLXN5cy9hdWRpb2lvLmggc3lzL2JzZHR0eS5oIHN5cy9lcG9sbC5oIHN5cy9ldmVudC5oIHN5cy9maWxlLmggc3lzL2xvYWRhdmcuaCBcCi1zeXMvbG9jay5oIHN5cy9ta2Rldi5oIHN5cy9tb2RlbS5oIFwKLXN5cy9wYXJhbS5oIHN5cy9wb2xsLmggc3lzL3NlbGVjdC5oIHN5cy9zb2NrZXQuaCBzeXMvc3RhdHZmcy5oIHN5cy9zdGF0LmggXAotc3lzL3N5c2NhbGwuaCBzeXMvdGVybWlvLmggc3lzL3RpbWUuaCBcCi1zeXMvdGltZXMuaCBzeXMvdHlwZXMuaCBzeXMvdW4uaCBzeXMvdXRzbmFtZS5oIHN5cy93YWl0LmggcHR5LmggbGlidXRpbC5oIFwKLXN5cy9yZXNvdXJjZS5oIG5ldHBhY2tldC9wYWNrZXQuaCBzeXNleGl0cy5oIGJsdWV0b290aC5oIFwKK3BvbGwuaCBzeXMvZGV2cG9sbC5oIHN5cy9lcG9sbC5oIHN5cy9wb2xsLmggXAorc3lzL2F1ZGlvaW8uaCBzeXMveGF0dHIuaCBzeXMvYnNkdHR5Lmggc3lzL2V2ZW50Lmggc3lzL2ZpbGUuaCBzeXMvaW9jdGwuaCBcCitzeXMva2Vybl9jb250cm9sLmggc3lzL2xvYWRhdmcuaCBzeXMvbG9jay5oIHN5cy9ta2Rldi5oIHN5cy9tb2RlbS5oIFwKK3N5cy9wYXJhbS5oIHN5cy9zZWxlY3QuaCBzeXMvc2VuZGZpbGUuaCBzeXMvc29ja2V0Lmggc3lzL3N0YXR2ZnMuaCBcCitzeXMvc3RhdC5oIHN5cy9zeXNjYWxsLmggc3lzL3N5c19kb21haW4uaCBzeXMvdGVybWlvLmggc3lzL3RpbWUuaCBcCitzeXMvdGltZXMuaCBzeXMvdHlwZXMuaCBzeXMvdWlvLmggc3lzL3VuLmggc3lzL3V0c25hbWUuaCBzeXMvd2FpdC5oIHB0eS5oIFwKK2xpYnV0aWwuaCBzeXMvcmVzb3VyY2UuaCBuZXRwYWNrZXQvcGFja2V0Lmggc3lzZXhpdHMuaCBibHVldG9vdGguaCBcCiBibHVldG9vdGgvYmx1ZXRvb3RoLmggbGludXgvdGlwYy5oIHNwYXduLmggdXRpbC5oKQogQUNfSEVBREVSX0RJUkVOVAogQUNfSEVBREVSX01BSk9SCiAKKyMgT24gRGFyd2luIChPUyBYKSBuZXQvaWYuaCByZXF1aXJlcyBzeXMvc29ja2V0LmggdG8gYmUgaW1wb3J0ZWQgZmlyc3QuCitBQ19DSEVDS19IRUFERVJTKFtuZXQvaWYuaF0sIFtdLCBbXSwKK1sjaW5jbHVkZSA8c3RkaW8uaD4KKyNpZmRlZiBTVERDX0hFQURFUlMKKyMgaW5jbHVkZSA8c3RkbGliLmg+CisjIGluY2x1ZGUgPHN0ZGRlZi5oPgorI2Vsc2UKKyMgaWZkZWYgSEFWRV9TVERMSUJfSAorIyAgaW5jbHVkZSA8c3RkbGliLmg+CisjIGVuZGlmCisjZW5kaWYKKyNpZmRlZiBIQVZFX1NZU19TT0NLRVRfSAorIyBpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CisjZW5kaWYKK10pCisKKwogIyBPbiBTb2xhcmlzLCB0ZXJtLmggcmVxdWlyZXMgY3Vyc2VzLmgKIEFDX0NIRUNLX0hFQURFUlModGVybS5oLCwsWwogI2lmZGVmIEhBVkVfQ1VSU0VTX0gKQEAgLTEzNjUsNiArMTM3OCwxMyBAQAogI2VuZGlmCiBdKQogCisjIE9uIExpbnV4LCBjYW4uaCBhbmQgY2FuL3Jhdy5oIHJlcXVpcmUgc3lzL3NvY2tldC5oCitBQ19DSEVDS19IRUFERVJTKGxpbnV4L2Nhbi5oIGxpbnV4L2Nhbi9yYXcuaCwsLFsKKyNpZmRlZiBIQVZFX1NZU19TT0NLRVRfSAorI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KKyNlbmRpZgorXSkKKwogIyBjaGVja3MgZm9yIHR5cGVkZWZzCiB3YXNfaXRfZGVmaW5lZD1ubwogQUNfTVNHX0NIRUNLSU5HKGZvciBjbG9ja190IGluIHRpbWUuaCkKQEAgLTEzNzMsNyArMTM5Myw2IEBACiBdKQogQUNfTVNHX1JFU1VMVCgkd2FzX2l0X2RlZmluZWQpCiAKLSMgQ2hlY2sgd2hldGhlciB1c2luZyBtYWtlZGV2IHJlcXVpcmVzIGRlZmluaW5nIF9PU0ZfU09VUkNFCiBBQ19NU0dfQ0hFQ0tJTkcoZm9yIG1ha2VkZXYpCiBBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCiAjaWYgZGVmaW5lZChNQUpPUl9JTl9NS0RFVikKQEAgLTEzODYsMTkgKzE0MDUsNiBAQAogXV0sIFtbCiAgIG1ha2VkZXYoMCwgMCkgXV0pCiBdLFthY19jdl9oYXNfbWFrZWRldj15ZXNdLFthY19jdl9oYXNfbWFrZWRldj1ub10pCi1pZiB0ZXN0ICIkYWNfY3ZfaGFzX21ha2VkZXYiID0gIm5vIjsgdGhlbgotICAgICMgd2UgZGlkbid0IGxpbmssIHRyeSBpZiBfT1NGX1NPVVJDRSB3aWxsIGFsbG93IHVzIHRvIGxpbmsKLSAgICBBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCi0jZGVmaW5lIF9PU0ZfU09VUkNFIDEKLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSAgICBdXSwKLSAgICBbWyBtYWtlZGV2KDAsIDApIF1dKV0sCi0gICAgW2FjX2N2X2hhc19tYWtlZGV2PXllc10sCi0gICAgW2FjX2N2X2hhc19tYWtlZGV2PW5vXSkKLSAgICBpZiB0ZXN0ICIkYWNfY3ZfaGFzX21ha2VkZXYiID0gInllcyI7IHRoZW4KLSAgICAgICAgQUNfREVGSU5FKF9PU0ZfU09VUkNFLCAxLCBbRGVmaW5lIF9PU0ZfU09VUkNFIHRvIGdldCB0aGUgbWFrZWRldiBtYWNyby5dKQotICAgIGZpCi1maQogQUNfTVNHX1JFU1VMVCgkYWNfY3ZfaGFzX21ha2VkZXYpCiBpZiB0ZXN0ICIkYWNfY3ZfaGFzX21ha2VkZXYiID0gInllcyI7IHRoZW4KICAgICBBQ19ERUZJTkUoSEFWRV9NQUtFREVWLCAxLCBbRGVmaW5lIHRoaXMgaWYgeW91IGhhdmUgdGhlIG1ha2VkZXYgbWFjcm8uXSkKQEAgLTE3MTgsNyArMTcyNCw2IEBACiAJCWVsc2UKIAkJCUxEU0hBUkVEPSdsZCAtYicKIAkJZmkgOzsKLQlPU0YqKSBMRFNIQVJFRD0ibGQgLXNoYXJlZCAtZXhwZWN0X3VucmVzb2x2ZWQgXCIqXCIiOzsKIAlEYXJ3aW4vMS4zKikKIAkJTERTSEFSRUQ9JyQoQ0MpIC1idW5kbGUnCiAJCUxEQ1hYU0hBUkVEPSckKENYWCkgLWJ1bmRsZScKQEAgLTE5NDgsNiArMTk1Myw3IEBACiAKIAogIyBjaGVja3MgZm9yIGxpYnJhcmllcworQUNfQ0hFQ0tfTElCKHNlbmRmaWxlLCBzZW5kZmlsZSkKIEFDX0NIRUNLX0xJQihkbCwgZGxvcGVuKQkjIER5bmFtaWMgbGlua2luZyBmb3IgU3VuT1MvU29sYXJpcyBhbmQgU1lTVgogQUNfQ0hFQ0tfTElCKGRsZCwgc2hsX2xvYWQpCSMgRHluYW1pYyBsaW5raW5nIGZvciBIUC1VWAogCkBAIC0yMDcyLDIxICsyMDc4LDEwIEBACiBBQ19TVUJTVChVU0VfVEhSRUFEX01PRFVMRSkKIFVTRV9USFJFQURfTU9EVUxFPSIiCiAKLUFDX01TR19DSEVDS0lORyhmb3IgLS13aXRoLWRlYy10aHJlYWRzKQogQUNfU1VCU1QoTERMQVNUKQotQUNfQVJHX1dJVEgoZGVjLXRocmVhZHMsCi0gICAgICAgICAgICBBU19IRUxQX1NUUklORyhbLS13aXRoLWRlYy10aHJlYWRzXSwgW3VzZSBERUMgQWxwaGEvT1NGMSB0aHJlYWQtc2FmZSBsaWJyYXJpZXNdKSwKLVsKLUFDX01TR19SRVNVTFQoJHdpdGh2YWwpCi1MRExBU1Q9LXRocmVhZHMKLWlmIHRlc3QgIiR7d2l0aF90aHJlYWQrc2V0fSIgIT0gc2V0OyB0aGVuCi0gICB3aXRoX3RocmVhZD0iJHdpdGh2YWwiOwotZmldLAotW0FDX01TR19SRVNVTFQobm8pXSkKIAogIyBUZW1wbGF0ZXMgZm9yIHRoaW5ncyBBQ19ERUZJTkVkIG1vcmUgdGhhbiBvbmNlLgogIyBGb3IgYSBzaW5nbGUgQUNfREVGSU5FLCBubyB0ZW1wbGF0ZSBpcyBuZWVkZWQuCi1BSF9URU1QTEFURShDX1RIUkVBRFMsW0RlZmluZSBpZiB5b3UgaGF2ZSB0aGUgTWFjaCBjdGhyZWFkcyBwYWNrYWdlXSkKIEFIX1RFTVBMQVRFKF9SRUVOVFJBTlQsCiAgIFtEZWZpbmUgdG8gZm9yY2UgdXNlIG9mIHRocmVhZC1zYWZlIGVycm5vLCBoX2Vycm5vLCBhbmQgb3RoZXIgZnVuY3Rpb25zXSkKIEFIX1RFTVBMQVRFKFdJVEhfVEhSRUFELApAQCAtMjE2OCwxNyArMjE2Myw2IEBACiAgICAgQUNfTVNHX1JFU1VMVCgkdW5pc3RkX2RlZmluZXNfcHRocmVhZHMpCiAKICAgICBBQ19ERUZJTkUoX1JFRU5UUkFOVCkKLSAgICBBQ19DSEVDS19IRUFERVIoY3RocmVhZHMuaCwgW0FDX0RFRklORShXSVRIX1RIUkVBRCkKLSAgICBBQ19ERUZJTkUoQ19USFJFQURTKQotICAgIEFDX0RFRklORShIVVJEX0NfVEhSRUFEUywgMSwKLSAgICBbRGVmaW5lIGlmIHlvdSBhcmUgdXNpbmcgTWFjaCBjdGhyZWFkcyBkaXJlY3RseSB1bmRlciAvaW5jbHVkZV0pCi0gICAgTElCUz0iJExJQlMgLWx0aHJlYWRzIgotICAgIFRIUkVBRE9CSj0iUHl0aG9uL3RocmVhZC5vIl0sWwotICAgIEFDX0NIRUNLX0hFQURFUihtYWNoL2N0aHJlYWRzLmgsIFtBQ19ERUZJTkUoV0lUSF9USFJFQUQpCi0gICAgQUNfREVGSU5FKENfVEhSRUFEUykKLSAgICBBQ19ERUZJTkUoTUFDSF9DX1RIUkVBRFMsIDEsCi0gICAgW0RlZmluZSBpZiB5b3UgYXJlIHVzaW5nIE1hY2ggY3RocmVhZHMgdW5kZXIgbWFjaCAvXSkKLSAgICBUSFJFQURPQko9IlB5dGhvbi90aHJlYWQubyJdLFsKICAgICAjIEp1c3QgbG9va2luZyBmb3IgcHRocmVhZF9jcmVhdGUgaW4gbGlicHRocmVhZCBpcyBub3QgZW5vdWdoOgogICAgICMgb24gSFAvVVgsIHB0aHJlYWQuaCByZW5hbWVzIHB0aHJlYWRfY3JlYXRlIHRvIGEgZGlmZmVyZW50IHN5bWJvbCBuYW1lLgogICAgICMgU28gd2UgcmVhbGx5IGhhdmUgdG8gaW5jbHVkZSBwdGhyZWFkLmgsIGFuZCB0aGVuIGxpbmsuCkBAIC0yMjE0LDcgKzIxOTgsNyBAQAogICAgIExJQlM9IiRMSUJTIC1sY21hIgogICAgIFRIUkVBRE9CSj0iUHl0aG9uL3RocmVhZC5vIl0sWwogICAgIFVTRV9USFJFQURfTU9EVUxFPSIjIl0pCi0gICAgXSldKV0pXSldKV0pXSkKKyAgICBdKV0pXSldKV0pCiAKICAgICBBQ19DSEVDS19MSUIobXBjLCB1c2NvbmZpZywgW0FDX0RFRklORShXSVRIX1RIUkVBRCkKICAgICBMSUJTPSIkTElCUyAtbG1wYyIKQEAgLTIyMjcsMTUgKzIyMTEsNiBAQAogICAgICAgVEhSRUFET0JKPSJQeXRob24vdGhyZWFkLm8iCiAgICAgICBVU0VfVEhSRUFEX01PRFVMRT0iIl0pCiAgICAgZmkKLQotICAgIGlmIHRlc3QgIiRVU0VfVEhSRUFEX01PRFVMRSIgIT0gIiMiCi0gICAgdGhlbgotICAgICAgICAjIElmIHRoZSBhYm92ZSBjaGVja3MgZGlkbid0IGRpc2FibGUgdGhyZWFkcywgKGF0IGxlYXN0KSBPU0YxCi0gICAgICAgICMgbmVlZHMgdGhpcyAnLXRocmVhZHMnIGFyZ3VtZW50IGR1cmluZyBsaW5raW5nLgotICAgICAgICBjYXNlICRhY19zeXNfc3lzdGVtIGluCi0gICAgICAgIE9TRjEpIExETEFTVD0tdGhyZWFkczs7Ci0gICAgICAgIGVzYWMKLSAgICBmaQogZmkKIAogaWYgdGVzdCAiJHBvc2l4X3RocmVhZHMiID0gInllcyI7IHRoZW4KQEAgLTI1ODcsMTkgKzI1NjIsMjcgQEAKIAogIyBjaGVja3MgZm9yIGxpYnJhcnkgZnVuY3Rpb25zCiBBQ19DSEVDS19GVU5DUyhhbGFybSBhY2NlcHQ0IHNldGl0aW1lciBnZXRpdGltZXIgYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQgY2hvd24gXAotIGNsb2NrIGNvbmZzdHIgY3Rlcm1pZCBleGVjdiBmY2htb2QgZmNob3duIGZvcmsgZnBhdGhjb25mIGZ0aW1lIGZ0cnVuY2F0ZSBcCi0gZ2FpX3N0cmVycm9yIGdldGdyb3VwcyBnZXRsb2dpbiBnZXRsb2FkYXZnIGdldHBlZXJuYW1lIGdldHBnaWQgZ2V0cGlkIFwKKyBjbG9jayBjb25mc3RyIGN0ZXJtaWQgZXhlY3YgZmFjY2Vzc2F0IGZjaG1vZCBmY2htb2RhdCBmY2hvd24gZmNob3duYXQgXAorIGZleGVjdmUgZmRvcGVuZGlyIGZvcmsgZnBhdGhjb25mIGZzdGF0YXQgZnRpbWUgZnRydW5jYXRlIGZ1dGltZXNhdCBcCisgZnV0aW1lbnMgZnV0aW1lcyBnYWlfc3RyZXJyb3IgXAorIGdldGdyb3VwbGlzdCBnZXRncm91cHMgZ2V0bG9naW4gZ2V0bG9hZGF2ZyBnZXRwZWVybmFtZSBnZXRwZ2lkIGdldHBpZCBcCiAgZ2V0cHJpb3JpdHkgZ2V0cmVzdWlkIGdldHJlc2dpZCBnZXRwd2VudCBnZXRzcG5hbSBnZXRzcGVudCBnZXRzaWQgZ2V0d2QgXAotIGluaXRncm91cHMga2lsbCBraWxscGcgbGNobW9kIGxjaG93biBsc3RhdCBtYnJ0b3djIG1rZmlmbyBta25vZCBta3RpbWUgXAotIG1yZW1hcCBuaWNlIHBhdGhjb25mIHBhdXNlIHBsb2NrIHBvbGwgcHRocmVhZF9pbml0IFwKLSBwdXRlbnYgcmVhZGxpbmsgcmVhbHBhdGggXAotIHNlbGVjdCBzZW1fb3BlbiBzZW1fdGltZWR3YWl0IHNlbV9nZXR2YWx1ZSBzZW1fdW5saW5rIHNldGVnaWQgc2V0ZXVpZCBcCi0gc2V0Z2lkIFwKLSBzZXRsb2NhbGUgc2V0cmVnaWQgc2V0cmV1aWQgc2V0cmVzdWlkIHNldHJlc2dpZCBzZXRzaWQgc2V0cGdpZCBzZXRwZ3JwIHNldHVpZCBzZXR2YnVmIFwKLSBzaWdhY3Rpb24gc2lnaW50ZXJydXB0IHNpZ3JlbHNlIHNucHJpbnRmIHN0cmZ0aW1lIHN0cmxjcHkgXAorIGlmX25hbWVpbmRleCBcCisgaW5pdGdyb3VwcyBraWxsIGtpbGxwZyBsY2htb2QgbGNob3duIGxvY2tmIGxpbmthdCBsc3RhdCBsdXRpbWVzIG1tYXAgXAorIG1lbXJjaHIgbWJydG93YyBta2RpcmF0IG1rZmlmbyBcCisgbWtmaWZvYXQgbWtub2QgbWtub2RhdCBta3RpbWUgbXJlbWFwIG5pY2Ugb3BlbmF0IHBhdGhjb25mIHBhdXNlIHBpcGUyIHBsb2NrIHBvbGwgXAorIHBvc2l4X2ZhbGxvY2F0ZSBwb3NpeF9mYWR2aXNlIHByZWFkIFwKKyBwdGhyZWFkX2luaXQgcHRocmVhZF9raWxsIHB1dGVudiBwd3JpdGUgcmVhZGxpbmsgcmVhZGxpbmthdCByZWFkdiByZWFscGF0aCByZW5hbWVhdCBcCisgc2VsZWN0IHNlbV9vcGVuIHNlbV90aW1lZHdhaXQgc2VtX2dldHZhbHVlIHNlbV91bmxpbmsgc2VuZGZpbGUgc2V0ZWdpZCBzZXRldWlkIFwKKyBzZXRnaWQgc2V0aG9zdG5hbWUgXAorIHNldGxvY2FsZSBzZXRyZWdpZCBzZXRyZXVpZCBzZXRyZXN1aWQgc2V0cmVzZ2lkIHNldHNpZCBzZXRwZ2lkIHNldHBncnAgc2V0cHJpb3JpdHkgc2V0dWlkIHNldHZidWYgXAorIHNjaGVkX2dldF9wcmlvcml0eV9tYXggc2NoZWRfc2V0YWZmaW5pdHkgc2NoZWRfc2V0c2NoZWR1bGVyIHNjaGVkX3NldHBhcmFtIFwKKyBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwgXAorIHNpZ2FjdGlvbiBzaWdhbHRzdGFjayBzaWdpbnRlcnJ1cHQgc2lncGVuZGluZyBzaWdyZWxzZSBcCisgc2lndGltZWR3YWl0IHNpZ3dhaXQgc2lnd2FpdGluZm8gc25wcmludGYgc3RyZnRpbWUgc3RybGNweSBzeW1saW5rYXQgc3luYyBcCiAgc3lzY29uZiB0Y2dldHBncnAgdGNzZXRwZ3JwIHRlbXBuYW0gdGltZWdtIHRpbWVzIHRtcGZpbGUgdG1wbmFtIHRtcG5hbV9yIFwKLSB0cnVuY2F0ZSB1bmFtZSB1bnNldGVudiB1dGltZXMgd2FpdHBpZCB3YWl0MyB3YWl0NCBcCi0gd2NzY29sbCB3Y3NmdGltZSB3Y3N4ZnJtIF9nZXRwdHkpCisgdHJ1bmNhdGUgdW5hbWUgdW5saW5rYXQgdW5zZXRlbnYgdXRpbWVuc2F0IHV0aW1lcyB3YWl0aWQgd2FpdHBpZCB3YWl0MyB3YWl0NCBcCisgd2NzY29sbCB3Y3NmdGltZSB3Y3N4ZnJtIHdyaXRldiBfZ2V0cHR5KQogCiBBQ19DSEVDS19ERUNMKGRpcmZkLAogICAgIEFDX0RFRklORShIQVZFX0RJUkZELCAxLApAQCAtMjY1MSw2ICsyNjM0LDEyIEBACiAgICBBQ19NU0dfUkVTVUxUKHllcyldLAogICBbQUNfTVNHX1JFU1VMVChubykKIF0pCitBQ19NU0dfQ0hFQ0tJTkcoZm9yIGVwb2xsX2NyZWF0ZTEpCitBQ19DT01QSUxFX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbI2luY2x1ZGUgPHN5cy9lcG9sbC5oPl1dLCBbW3ZvaWQgKng9ZXBvbGxfY3JlYXRlMV1dKV0sCisgIFtBQ19ERUZJTkUoSEFWRV9FUE9MTF9DUkVBVEUxLCAxLCBEZWZpbmUgaWYgeW91IGhhdmUgdGhlICdlcG9sbF9jcmVhdGUxJyBmdW5jdGlvbi4pCisgICBBQ19NU0dfUkVTVUxUKHllcyldLAorICBbQUNfTVNHX1JFU1VMVChubykKK10pCiBBQ19NU0dfQ0hFQ0tJTkcoZm9yIGtxdWV1ZSkKIEFDX0NPTVBJTEVfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KQEAgLTI4ODEsNiArMjg3MCwyMCBAQAogICAgIF0pCiApCiAKK0FDX0NIRUNLX0ZVTkNTKGNsb2NrX2dldHRpbWUsIFtdLCBbCisgICAgQUNfQ0hFQ0tfTElCKHJ0LCBjbG9ja19nZXR0aW1lLCBbCisgICAgICAgIEFDX0RFRklORShIQVZFX0NMT0NLX0dFVFRJTUUsIDEpCisgICAgICAgIEFDX0RFRklORShUSU1FTU9EVUxFX0xJQiwgW3J0XSwKKyAgICAgICAgICAgICAgICAgIFtMaWJyYXJ5IG5lZWRlZCBieSB0aW1lbW9kdWxlLmM6IGxpYnJ0IG1heSBiZSBuZWVkZWQgZm9yIGNsb2NrX2dldHRpbWUoKV0pCisgICAgXSkKK10pCisKK0FDX0NIRUNLX0ZVTkNTKGNsb2NrX2dldHJlcywgW10sIFsKKyAgICBBQ19DSEVDS19MSUIocnQsIGNsb2NrX2dldHJlcywgWworICAgICAgICBBQ19ERUZJTkUoSEFWRV9DTE9DS19HRVRSRVMsIDEpCisgICAgXSkKK10pCisKIEFDX01TR19DSEVDS0lORyhmb3IgbWFqb3IsIG1pbm9yLCBhbmQgbWFrZWRldikKIEFDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sKICNpZiBkZWZpbmVkKE1BSk9SX0lOX01LREVWKQpAQCAtMzQ1MCw3ICszNDUzLDcgQEAKIExJQlM9IiRMSUJTICRMSUJNIgogCiBBQ19DSEVDS19GVU5DUyhbYWNvc2ggYXNpbmggYXRhbmggY29weXNpZ24gZXJmIGVyZmMgZXhwbTEgZmluaXRlIGdhbW1hXSkKLUFDX0NIRUNLX0ZVTkNTKFtoeXBvdCBsZ2FtbWEgbG9nMXAgcm91bmQgdGdhbW1hXSkKK0FDX0NIRUNLX0ZVTkNTKFtoeXBvdCBsZ2FtbWEgbG9nMXAgbG9nMiByb3VuZCB0Z2FtbWFdKQogQUNfQ0hFQ0tfREVDTFMoW2lzaW5mLCBpc25hbiwgaXNmaW5pdGVdLCBbXSwgW10sIFtbI2luY2x1ZGUgPG1hdGguaD5dXSkKIAogIyBPbiBGcmVlQlNEIDYuMiwgaXQgYXBwZWFycyB0aGF0IHRhbmgoLTAuKSByZXR1cm5zIDAuIGluc3RlYWQgb2YKQEAgLTM2NDgsNTcgKzM2NTEsMTkgQEAKICAgQUNfTVNHX1JFU1VMVCgkYWNfY3Zfd2NoYXJfdF9zaWduZWQpCiBmaQogCi1BQ19NU0dfQ0hFQ0tJTkcod2hhdCB0eXBlIHRvIHVzZSBmb3Igc3RyKQotQUNfQVJHX1dJVEgod2lkZS11bmljb2RlLCAKLSAgICAgICAgICAgIEFTX0hFTFBfU1RSSU5HKFstLXdpdGgtd2lkZS11bmljb2RlXSwgW1VzZSA0LWJ5dGUgVW5pY29kZSBjaGFyYWN0ZXJzIChkZWZhdWx0IGlzIDIgYnl0ZXMpXSksCi1bCi1pZiB0ZXN0ICIkd2l0aHZhbCIgIT0gbm8KLXRoZW4gdW5pY29kZV9zaXplPSI0IgotZWxzZSB1bmljb2RlX3NpemU9IjIiCi1maQotXSwKLVsKLWNhc2UgIiRoYXZlX3VjczRfdGNsIiBpbgotICB5ZXMpIHVuaWNvZGVfc2l6ZT0iNCI7OwotICAqKSAgIHVuaWNvZGVfc2l6ZT0iMiIgOzsKLWVzYWMKLV0pCi0KLUFIX1RFTVBMQVRFKFB5X1VOSUNPREVfU0laRSwKLSAgW0RlZmluZSBhcyB0aGUgc2l6ZSBvZiB0aGUgdW5pY29kZSB0eXBlLl0pCi1jYXNlICIkdW5pY29kZV9zaXplIiBpbgotICA0KQotICAgICBBQ19ERUZJTkUoUHlfVU5JQ09ERV9TSVpFLCA0KQotICAgICBBQklGTEFHUz0iJHtBQklGTEFHU311IgotICAgICA7OwotICAqKSBBQ19ERUZJTkUoUHlfVU5JQ09ERV9TSVpFLCAyKSA7OwotZXNhYwotCi1BSF9URU1QTEFURShQWV9VTklDT0RFX1RZUEUsCi0gIFtEZWZpbmUgYXMgdGhlIGludGVncmFsIHR5cGUgdXNlZCBmb3IgVW5pY29kZSByZXByZXNlbnRhdGlvbi5dKQotCiAjIHdjaGFyX3QgaXMgb25seSB1c2FibGUgaWYgaXQgbWFwcyB0byBhbiB1bnNpZ25lZCB0eXBlCi1pZiB0ZXN0ICIkdW5pY29kZV9zaXplIiA9ICIkYWNfY3Zfc2l6ZW9mX3djaGFyX3QiIFwKK2lmIHRlc3QgIiRhY19jdl9zaXplb2Zfd2NoYXJfdCIgLWdlIDIgXAogICAgICAgICAgIC1hICIkYWNfY3Zfd2NoYXJfdF9zaWduZWQiID0gIm5vIgogdGhlbgotICBQWV9VTklDT0RFX1RZUEU9IndjaGFyX3QiCisgIEhBVkVfVVNBQkxFX1dDSEFSX1Q9InllcyIKICAgQUNfREVGSU5FKEhBVkVfVVNBQkxFX1dDSEFSX1QsIDEsCiAgIFtEZWZpbmUgaWYgeW91IGhhdmUgYSB1c2VhYmxlIHdjaGFyX3QgdHlwZSBkZWZpbmVkIGluIHdjaGFyLmg7IHVzZWFibGUKICAgIG1lYW5zIHdjaGFyX3QgbXVzdCBiZSBhbiB1bnNpZ25lZCB0eXBlIHdpdGggYXQgbGVhc3QgMTYgYml0cy4gKHNlZQogICAgSW5jbHVkZS91bmljb2Rlb2JqZWN0LmgpLl0pCi0gIEFDX0RFRklORShQWV9VTklDT0RFX1RZUEUsd2NoYXJfdCkKLWVsaWYgdGVzdCAiJGFjX2N2X3NpemVvZl9zaG9ydCIgPSAiJHVuaWNvZGVfc2l6ZSIKLXRoZW4KLSAgICAgUFlfVU5JQ09ERV9UWVBFPSJ1bnNpZ25lZCBzaG9ydCIKLSAgICAgQUNfREVGSU5FKFBZX1VOSUNPREVfVFlQRSx1bnNpZ25lZCBzaG9ydCkKLWVsaWYgdGVzdCAiJGFjX2N2X3NpemVvZl9sb25nIiA9ICIkdW5pY29kZV9zaXplIgotdGhlbgotICAgICBQWV9VTklDT0RFX1RZUEU9InVuc2lnbmVkIGxvbmciCi0gICAgIEFDX0RFRklORShQWV9VTklDT0RFX1RZUEUsdW5zaWduZWQgbG9uZykKIGVsc2UKLSAgICAgUFlfVU5JQ09ERV9UWVBFPSJubyB0eXBlIGZvdW5kIgorICBIQVZFX1VTQUJMRV9XQ0hBUl9UPSJubyB1c2FibGUgd2NoYXJfdCBmb3VuZCIKIGZpCi1BQ19NU0dfUkVTVUxUKCRQWV9VTklDT0RFX1RZUEUpCitBQ19NU0dfUkVTVUxUKCRIQVZFX1VTQUJMRV9XQ0hBUl9UKQogCiAjIGNoZWNrIGZvciBlbmRpYW5uZXNzCiBBQ19DX0JJR0VORElBTgpAQCAtNDMwOCwxMiArNDI3Myw2IEBACiBlc2FjCiAKIAotY2FzZSAkYWNfc3lzX3N5c3RlbSBpbgotICBPU0YqKSBBQ19NU0dfRVJST1IoT1NGKiBzeXN0ZW1zIGFyZSBkZXByZWNhdGVkIHVubGVzcyBzb21lYm9keSB2b2x1bnRlZXJzLiBDaGVjayBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlODYwNikgOzsKLWVzYWMKLQotQUNfQ0hFQ0tfRlVOQyhwaXBlMiwgQUNfREVGSU5FKEhBVkVfUElQRTIsIDEsIFtEZWZpbmUgaWYgdGhlIE9TIHN1cHBvcnRzIHBpcGUyKCldKSwgKQotCiBBQ19TVUJTVChUSFJFQURIRUFERVJTKQogCiBmb3IgaCBpbiBgKGNkICRzcmNkaXI7ZWNobyBQeXRob24vdGhyZWFkXyouaClgCmRpZmYgLS1naXQgYS9weWNvbmZpZy5oLmluIGIvcHljb25maWcuaC5pbgppbmRleCA4ZThmMzE5Li5lZmFiNGZkIDEwMDY0NAotLS0gYS9weWNvbmZpZy5oLmluCisrKyBiL3B5Y29uZmlnLmguaW4KQEAgLTEyLDkgKzEyLDYgQEAKICAgIHN1cHBvcnQgZm9yIEFJWCBDKysgc2hhcmVkIGV4dGVuc2lvbiBtb2R1bGVzLiAqLwogI3VuZGVmIEFJWF9HRU5VSU5FX0NQTFVTUExVUwogCi0vKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlIE1hY2ggY3RocmVhZHMgcGFja2FnZSAqLwotI3VuZGVmIENfVEhSRUFEUwotCiAvKiBEZWZpbmUgaWYgQyBkb3VibGVzIGFyZSA2NC1iaXQgSUVFRSA3NTQgYmluYXJ5IGZvcm1hdCwgc3RvcmVkIGluIEFSTQogICAgbWl4ZWQtZW5kaWFuIG9yZGVyIChieXRlIG9yZGVyIDQ1NjcwMTIzKSAqLwogI3VuZGVmIERPVUJMRV9JU19BUk1fTUlYRURfRU5ESUFOX0lFRUU3NTQKQEAgLTExNiw2ICsxMTMsMTIgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgY2xvY2snIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfQ0xPQ0sKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBjbG9ja19nZXRyZXMnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfQ0xPQ0tfR0VUUkVTCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgY2xvY2tfZ2V0dGltZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9DTE9DS19HRVRUSU1FCisKIC8qIERlZmluZSBpZiB0aGUgQyBjb21waWxlciBzdXBwb3J0cyBjb21wdXRlZCBnb3Rvcy4gKi8KICN1bmRlZiBIQVZFX0NPTVBVVEVEX0dPVE9TCiAKQEAgLTE5Niw2ICsxOTksOSBAQAogLyogRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSAnZXBvbGwnIGZ1bmN0aW9ucy4gKi8KICN1bmRlZiBIQVZFX0VQT0xMCiAKKy8qIERlZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ2Vwb2xsX2NyZWF0ZTEnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRVBPTExfQ1JFQVRFMQorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGVyZicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9FUkYKIApAQCAtMjExLDIxICsyMTcsMzYgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZXhwbTEnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRVhQTTEKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmYWNjZXNzYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRkFDQ0VTU0FUCisKIC8qIERlZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ2ZjaGRpcicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9GQ0hESVIKIAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmY2htb2QnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRkNITU9ECiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZmNobW9kYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRkNITU9EQVQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmY2hvd24nIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRkNIT1dOCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZmNob3duYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRkNIT1dOQVQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxmY250bC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX0ZDTlRMX0gKIAogLyogRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSAnZmRhdGFzeW5jJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX0ZEQVRBU1lOQwogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGZkb3BlbmRpcicgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9GRE9QRU5ESVIKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmZXhlY3ZlJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0ZFWEVDVkUKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmaW5pdGUnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRklOSVRFCiAKQEAgLTI0Nyw2ICsyNjgsOSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmc2Vla28nIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRlNFRUtPCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZnN0YXRhdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9GU1RBVEFUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZnN0YXR2ZnMnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRlNUQVRWRlMKIApAQCAtMjY1LDYgKzI4OSwxNSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdHJ1bmNhdGUnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRlRSVU5DQVRFCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZnV0aW1lbnMnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRlVUSU1FTlMKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdXRpbWVzJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0ZVVElNRVMKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdXRpbWVzYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRlVUSU1FU0FUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2FpX3N0cmVycm9yJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX0dBSV9TVFJFUlJPUgogCkBAIC0yODQsNiArMzE3LDkgQEAKIC8qIERlZmluZSB0aGlzIGlmIHlvdSBoYXZlIGZsb2NrZmlsZSgpLCBnZXRjX3VubG9ja2VkKCksIGFuZCBmdW5sb2NrZmlsZSgpICovCiAjdW5kZWYgSEFWRV9HRVRDX1VOTE9DS0VECiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0Z3JvdXBsaXN0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0dFVEdST1VQTElTVAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGdldGdyb3VwcycgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9HRVRHUk9VUFMKIApAQCAtMzY4LDYgKzQwNCw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPGllZWVmcC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX0lFRUVGUF9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgaWZfbmFtZWluZGV4JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0lGX05BTUVJTkRFWAorCiAvKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlICdpbmV0X2F0b24nIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfSU5FVF9BVE9OCiAKQEAgLTQzMSwyMSArNDcwLDM5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHJlc29sdicgbGlicmFyeSAoLWxyZXNvbHYpLiAqLwogI3VuZGVmIEhBVkVfTElCUkVTT0xWCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2VuZGZpbGUnIGxpYnJhcnkgKC1sc2VuZGZpbGUpLiAqLworI3VuZGVmIEhBVkVfTElCU0VOREZJTEUKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxsaWJ1dGlsLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfTElCVVRJTF9ICiAKIC8qIERlZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ2xpbmsnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTElOSwogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGxpbmthdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9MSU5LQVQKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxsaW51eC9jYW4uaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9MSU5VWF9DQU5fSAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPGxpbnV4L2Nhbi9yYXcuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9MSU5VWF9DQU5fUkFXX0gKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxsaW51eC9uZXRsaW5rLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfTElOVVhfTkVUTElOS19ICiAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8bGludXgvdGlwYy5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX0xJTlVYX1RJUENfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGxvY2tmJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0xPQ0tGCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbG9nMXAnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTE9HMVAKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBsb2cyJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0xPRzIKKwogLyogRGVmaW5lIHRoaXMgaWYgeW91IGhhdmUgdGhlIHR5cGUgbG9uZyBkb3VibGUuICovCiAjdW5kZWYgSEFWRV9MT05HX0RPVUJMRQogCkBAIC00NTUsNiArNTEyLDkgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbHN0YXQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTFNUQVQKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBsdXRpbWVzJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0xVVElNRVMKKwogLyogRGVmaW5lIHRoaXMgaWYgeW91IGhhdmUgdGhlIG1ha2VkZXYgbWFjcm8uICovCiAjdW5kZWYgSEFWRV9NQUtFREVWCiAKQEAgLTQ2NywxNSArNTI3LDMwIEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG1lbW9yeS5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX01FTU9SWV9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbWVtcmNocicgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9NRU1SQ0hSCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbWtkaXJhdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9NS0RJUkFUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbWtmaWZvJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX01LRklGTwogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG1rZmlmb2F0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX01LRklGT0FUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbWtub2QnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTUtOT0QKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBta25vZGF0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX01LTk9EQVQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBta3RpbWUnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTUtUSU1FCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbW1hcCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9NTUFQCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbXJlbWFwJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX01SRU1BUAogCkBAIC00ODgsOSArNTYzLDE1IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG5ldHBhY2tldC9wYWNrZXQuaD4gaGVhZGVyIGZpbGUuICovCiAjdW5kZWYgSEFWRV9ORVRQQUNLRVRfUEFDS0VUX0gKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxuZXQvaWYuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9ORVRfSUZfSAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG5pY2UnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTklDRQogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG9wZW5hdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9PUEVOQVQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBvcGVucHR5JyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX09QRU5QVFkKIApAQCAtNTAzLDcgKzU4NCw3IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBhdXNlJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1BBVVNFCiAKLS8qIERlZmluZSBpZiB0aGUgT1Mgc3VwcG9ydHMgcGlwZTIoKSAqLworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwaXBlMicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9QSVBFMgogCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBsb2NrJyBmdW5jdGlvbi4gKi8KQEAgLTUxNSw2ICs1OTYsMTUgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8cG9sbC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1BPTExfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBvc2l4X2ZhZHZpc2UnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfUE9TSVhfRkFEVklTRQorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBvc2l4X2ZhbGxvY2F0ZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9QT1NJWF9GQUxMT0NBVEUKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwcmVhZCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9QUkVBRAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHByb2Nlc3MuaD4gaGVhZGVyIGZpbGUuICovCiAjdW5kZWYgSEFWRV9QUk9DRVNTX0gKIApAQCAtNTMwLDYgKzYyMCw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHB0aHJlYWRfaW5pdCcgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9QVEhSRUFEX0lOSVQKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwdGhyZWFkX2tpbGwnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfUFRIUkVBRF9LSUxMCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcHRocmVhZF9zaWdtYXNrJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1BUSFJFQURfU0lHTUFTSwogCkBAIC01MzksMTIgKzYzMiwyNCBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwdXRlbnYnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfUFVURU5WCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcHdyaXRlJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1BXUklURQorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHJlYWRsaW5rJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1JFQURMSU5LCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcmVhZGxpbmthdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9SRUFETElOS0FUCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcmVhZHYnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfUkVBRFYKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGByZWFscGF0aCcgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9SRUFMUEFUSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHJlbmFtZWF0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1JFTkFNRUFUCisKIC8qIERlZmluZSBpZiB5b3UgaGF2ZSByZWFkbGluZSAyLjEgKi8KICN1bmRlZiBIQVZFX1JMX0NBTExCQUNLCiAKQEAgLTU2OSw2ICs2NzQsMjQgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcm91bmQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfUk9VTkQKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1NDSEVEX0dFVF9QUklPUklUWV9NQVgKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzY2hlZC5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NDSEVEX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU0NIRURfUlJfR0VUX0lOVEVSVkFMCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2NoZWRfc2V0YWZmaW5pdHknIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU0NIRURfU0VUQUZGSU5JVFkKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzY2hlZF9zZXRwYXJhbScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TQ0hFRF9TRVRQQVJBTQorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNjaGVkX3NldHNjaGVkdWxlcicgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZWxlY3QnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0VMRUNUCiAKQEAgLTU4NCw2ICs3MDcsOSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZW1fdW5saW5rJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1NFTV9VTkxJTksKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZW5kZmlsZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TRU5ERklMRQorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNldGVnaWQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0VURUdJRAogCkBAIC01OTYsNiArNzIyLDkgQEAKIC8qIERlZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ3NldGdyb3VwcycgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9TRVRHUk9VUFMKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZXRob3N0bmFtZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TRVRIT1NUTkFNRQorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNldGl0aW1lcicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9TRVRJVElNRVIKIApAQCAtNjA4LDYgKzczNyw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNldHBncnAnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0VUUEdSUAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNldHByaW9yaXR5JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1NFVFBSSU9SSVRZCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2V0cmVnaWQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0VUUkVHSUQKIApAQCAtNjM1LDE1ICs3NjcsMzAgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lnYWN0aW9uJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1NJR0FDVElPTgogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNpZ2FsdHN0YWNrJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1NJR0FMVFNUQUNLCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lnaW50ZXJydXB0JyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1NJR0lOVEVSUlVQVAogCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHNpZ25hbC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1NJR05BTF9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lncGVuZGluZycgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TSUdQRU5ESU5HCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lncmVsc2UnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0lHUkVMU0UKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzaWd0aW1lZHdhaXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU0lHVElNRURXQUlUCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lnd2FpdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TSUdXQUlUCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lnd2FpdGluZm8nIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU0lHV0FJVElORk8KKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzbnByaW50ZicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9TTlBSSU5URgogCkBAIC03MjcsNiArODc0LDEyIEBACiAvKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlICdzeW1saW5rJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1NZTUxJTksKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzeW1saW5rYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU1lNTElOS0FUCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3luYycgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TWU5DCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3lzY29uZicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9TWVNDT05GCiAKQEAgLTczOSw2ICs4OTIsOSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzeXMvYnNkdHR5Lmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX0JTRFRUWV9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL2RldnBvbGwuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9TWVNfREVWUE9MTF9ICisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL2Rpci5oPiBoZWFkZXIgZmlsZSwgYW5kIGl0IGRlZmluZXMgYERJUicuCiAgICAqLwogI3VuZGVmIEhBVkVfU1lTX0RJUl9ICkBAIC03NTIsNiArOTA4LDEyIEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9maWxlLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX0ZJTEVfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9pb2N0bC5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NZU19JT0NUTF9ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL2tlcm5fY29udHJvbC5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NZU19LRVJOX0NPTlRST0xfSAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9sb2FkYXZnLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX0xPQURBVkdfSAogCkBAIC03ODAsNiArOTQyLDkgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3NlbGVjdC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1NZU19TRUxFQ1RfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9zZW5kZmlsZS5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NZU19TRU5ERklMRV9ICisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3NvY2tldC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1NZU19TT0NLRVRfSAogCkBAIC03OTIsNiArOTU3LDkgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3N5c2NhbGwuaD4gaGVhZGVyIGZpbGUuICovCiAjdW5kZWYgSEFWRV9TWVNfU1lTQ0FMTF9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3N5c19kb21haW4uaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9TWVNfU1lTX0RPTUFJTl9ICisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3Rlcm1pby5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1NZU19URVJNSU9fSAogCkBAIC04MDQsNiArOTcyLDkgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3R5cGVzLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX1RZUEVTX0gKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzeXMvdWlvLmg+IGhlYWRlciBmaWxlLiAqLworI3VuZGVmIEhBVkVfU1lTX1VJT19ICisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3VuLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX1VOX0gKIApAQCAtODEzLDYgKzk4NCw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy93YWl0Lmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX1dBSVRfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy94YXR0ci5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NZU19YQVRUUl9ICisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgdGNnZXRwZ3JwJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1RDR0VUUEdSUAogCkBAIC04MzEsOSArMTAwNSw2IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHRnYW1tYScgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9UR0FNTUEKIAotLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDx0aHJlYWQuaD4gaGVhZGVyIGZpbGUuICovCi0jdW5kZWYgSEFWRV9USFJFQURfSAotCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHRpbWVnbScgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9USU1FR00KIApAQCAtODcyLDYgKzEwNDMsOSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDx1bmlzdGQuaD4gaGVhZGVyIGZpbGUuICovCiAjdW5kZWYgSEFWRV9VTklTVERfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHVubGlua2F0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1VOTElOS0FUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgdW5zZXRlbnYnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfVU5TRVRFTlYKIApAQCAtODgzLDYgKzEwNTcsOSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDx1dGlsLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfVVRJTF9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgdXRpbWVuc2F0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1VUSU1FTlNBVAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHV0aW1lcycgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9VVElNRVMKIApAQCAtODk1LDYgKzEwNzIsOSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGB3YWl0NCcgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9XQUlUNAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHdhaXRpZCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9XQUlUSUQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGB3YWl0cGlkJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1dBSVRQSUQKIApAQCAtOTE0LDIxICsxMDk0LDE4IEBACiAgICAqLwogI3VuZGVmIEhBVkVfV09SS0lOR19UWlNFVAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHdyaXRldicgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9XUklURVYKKwogLyogRGVmaW5lIGlmIHRoZSB6bGliIGxpYnJhcnkgaGFzIGluZmxhdGVDb3B5ICovCiAjdW5kZWYgSEFWRV9aTElCX0NPUFkKIAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBfZ2V0cHR5JyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX19HRVRQVFkKIAotLyogRGVmaW5lIGlmIHlvdSBhcmUgdXNpbmcgTWFjaCBjdGhyZWFkcyBkaXJlY3RseSB1bmRlciAvaW5jbHVkZSAqLwotI3VuZGVmIEhVUkRfQ19USFJFQURTCi0KIC8qIERlZmluZSBpZiBsb2cxcCgtMC4pIGlzIDAuIHJhdGhlciB0aGFuIC0wLiAqLwogI3VuZGVmIExPRzFQX0RST1BTX1pFUk9fU0lHTgogCi0vKiBEZWZpbmUgaWYgeW91IGFyZSB1c2luZyBNYWNoIGN0aHJlYWRzIHVuZGVyIG1hY2ggLyAqLwotI3VuZGVmIE1BQ0hfQ19USFJFQURTCi0KIC8qIERlZmluZSB0byAxIGlmIGBtYWpvcicsIGBtaW5vcicsIGFuZCBgbWFrZWRldicgYXJlIGRlY2xhcmVkIGluIDxta2Rldi5oPi4KICAgICovCiAjdW5kZWYgTUFKT1JfSU5fTUtERVYKQEAgLTk3MywxOCArMTE1MCwxMiBAQAogLyogRGVmaW5lIHRvIHByaW50ZiBmb3JtYXQgbW9kaWZpZXIgZm9yIFB5X3NzaXplX3QgKi8KICN1bmRlZiBQWV9GT1JNQVRfU0laRV9UCiAKLS8qIERlZmluZSBhcyB0aGUgaW50ZWdyYWwgdHlwZSB1c2VkIGZvciBVbmljb2RlIHJlcHJlc2VudGF0aW9uLiAqLwotI3VuZGVmIFBZX1VOSUNPREVfVFlQRQotCiAvKiBEZWZpbmUgaWYgeW91IHdhbnQgdG8gYnVpbGQgYW4gaW50ZXJwcmV0ZXIgd2l0aCBtYW55IHJ1bi10aW1lIGNoZWNrcy4gKi8KICN1bmRlZiBQeV9ERUJVRwogCiAvKiBEZWZpbmVkIGlmIFB5dGhvbiBpcyBidWlsdCBhcyBhIHNoYXJlZCBsaWJyYXJ5LiAqLwogI3VuZGVmIFB5X0VOQUJMRV9TSEFSRUQKIAotLyogRGVmaW5lIGFzIHRoZSBzaXplIG9mIHRoZSB1bmljb2RlIHR5cGUuICovCi0jdW5kZWYgUHlfVU5JQ09ERV9TSVpFCi0KIC8qIGFzc3VtZSBDODkgc2VtYW50aWNzIHRoYXQgUkVUU0lHVFlQRSBpcyBhbHdheXMgdm9pZCAqLwogI3VuZGVmIFJFVFNJR1RZUEUKIApAQCAtMTA1OCw2ICsxMjI5LDkgQEAKIC8qIERlZmluZSBpZiB0YW5oKC0wLikgaXMgLTAuLCBvciBpZiBwbGF0Zm9ybSBkb2Vzbid0IGhhdmUgc2lnbmVkIHplcm9zICovCiAjdW5kZWYgVEFOSF9QUkVTRVJWRVNfWkVST19TSUdOCiAKKy8qIExpYnJhcnkgbmVlZGVkIGJ5IHRpbWVtb2R1bGUuYzogbGlicnQgbWF5IGJlIG5lZWRlZCBmb3IgY2xvY2tfZ2V0dGltZSgpICovCisjdW5kZWYgVElNRU1PRFVMRV9MSUIKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGNhbiBzYWZlbHkgaW5jbHVkZSBib3RoIDxzeXMvdGltZS5oPiBhbmQgPHRpbWUuaD4uICovCiAjdW5kZWYgVElNRV9XSVRIX1NZU19USU1FCiAKQEAgLTExNzAsMTQgKzEzNDQsMTEgQEAKIC8qIERlZmluZSBvbiBOZXRCU0QgdG8gYWN0aXZhdGUgYWxsIGxpYnJhcnkgZmVhdHVyZXMgKi8KICN1bmRlZiBfTkVUQlNEX1NPVVJDRQogCi0vKiBEZWZpbmUgX09TRl9TT1VSQ0UgdG8gZ2V0IHRoZSBtYWtlZGV2IG1hY3JvLiAqLwotI3VuZGVmIF9PU0ZfU09VUkNFCi0KIC8qIERlZmluZSB0byAyIGlmIHRoZSBzeXN0ZW0gZG9lcyBub3QgcHJvdmlkZSBQT1NJWC4xIGZlYXR1cmVzIGV4Y2VwdCB3aXRoCiAgICB0aGlzIGRlZmluZWQuICovCiAjdW5kZWYgX1BPU0lYXzFfU09VUkNFCiAKLS8qIERlZmluZSB0byBhY3RpdmF0ZSBmZWF0dXJlcyBmcm9tIElFRUUgU3RkcyAxMDAzLjEtMjAwMSAqLworLyogRGVmaW5lIHRvIGFjdGl2YXRlIGZlYXR1cmVzIGZyb20gSUVFRSBTdGRzIDEwMDMuMS0yMDA4ICovCiAjdW5kZWYgX1BPU0lYX0NfU09VUkNFCiAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBuZWVkIHRvIGluIG9yZGVyIGZvciBgc3RhdCcgYW5kIG90aGVyIHRoaW5ncyB0byB3b3JrLiAqLwpkaWZmIC0tZ2l0IGEvc2V0dXAucHkgYi9zZXR1cC5weQppbmRleCBkNjk4NzVjLi5jNjM2ZjA4IDEwMDY0NAotLS0gYS9zZXR1cC5weQorKysgYi9zZXR1cC5weQpAQCAtMSw4ICsxLDYgQEAKICMgQXV0b2RldGVjdGluZyBzZXR1cC5weSBzY3JpcHQgZm9yIGJ1aWxkaW5nIHRoZSBQeXRob24gZXh0ZW5zaW9ucwogIwogCi1fX3ZlcnNpb25fXyA9ICIkUmV2aXNpb24kIgotCiBpbXBvcnQgc3lzLCBvcywgaW1wLCByZSwgb3B0cGFyc2UKIGZyb20gZ2xvYiBpbXBvcnQgZ2xvYgogaW1wb3J0IHN5c2NvbmZpZwpAQCAtMzY1LDkgKzM2Myw4IEBACiAKICAgICBkZWYgZ2V0X3BsYXRmb3JtKHNlbGYpOgogICAgICAgICAjIEdldCB2YWx1ZSBvZiBzeXMucGxhdGZvcm0KLSAgICAgICAgZm9yIHBsYXRmb3JtIGluIFsnY3lnd2luJywgJ2RhcndpbicsICdvc2YxJ106Ci0gICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aChwbGF0Zm9ybSk6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHBsYXRmb3JtCisgICAgICAgIGlmIHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdvc2YxJyk6CisgICAgICAgICAgICByZXR1cm4gJ29zZjEnCiAgICAgICAgIHJldHVybiBzeXMucGxhdGZvcm0KIAogICAgIGRlZiBhZGRfbXVsdGlhcmNoX3BhdGhzKHNlbGYpOgpAQCAtNTA3LDExICs1MDQsMTcgQEAKICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignbWF0aCcsICBbJ21hdGhtb2R1bGUuYycsICdfbWF0aC5jJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kcz1bJ19tYXRoLmgnXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXM9bWF0aF9saWJzKSApCisKKyAgICAgICAgIyB0aW1lIGxpYnJhcmllczogbGlicnQgbWF5IGJlIG5lZWRlZCBmb3IgY2xvY2tfZ2V0dGltZSgpCisgICAgICAgIHRpbWVfbGlicyA9IFtdCisgICAgICAgIGxpYiA9IHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignVElNRU1PRFVMRV9MSUInKQorICAgICAgICBpZiBsaWI6CisgICAgICAgICAgICB0aW1lX2xpYnMuYXBwZW5kKGxpYikKKwogICAgICAgICAjIHRpbWUgb3BlcmF0aW9ucyBhbmQgdmFyaWFibGVzCiAgICAgICAgIGV4dHMuYXBwZW5kKCBFeHRlbnNpb24oJ3RpbWUnLCBbJ3RpbWVtb2R1bGUuYycsICdfdGltZS5jJ10sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzPW1hdGhfbGlicykgKQotICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdfZGF0ZXRpbWUnLCBbJ19kYXRldGltZW1vZHVsZS5jJywgJ190aW1lLmMnXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXM9bWF0aF9saWJzKSApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzPXRpbWVfbGlicykgKQorICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdfZGF0ZXRpbWUnLCBbJ19kYXRldGltZW1vZHVsZS5jJywgJ190aW1lLmMnXSkgKQogICAgICAgICAjIHJhbmRvbSBudW1iZXIgZ2VuZXJhdG9yIGltcGxlbWVudGVkIGluIEMKICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbigiX3JhbmRvbSIsIFsiX3JhbmRvbW1vZHVsZS5jIl0pICkKICAgICAgICAgIyBiaXNlY3QKQEAgLTUyNyw2ICs1MzAsOCBAQAogICAgICAgICAjIFB5dGhvbiBDIEFQSSB0ZXN0IG1vZHVsZQogICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdfdGVzdGNhcGknLCBbJ190ZXN0Y2FwaW1vZHVsZS5jJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kcz1bJ3Rlc3RjYXBpX2xvbmcuaCddKSApCisgICAgICAgICMgUHl0aG9uIFBFUC0zMTE4IChidWZmZXIgcHJvdG9jb2wpIHRlc3QgbW9kdWxlCisgICAgICAgIGV4dHMuYXBwZW5kKCBFeHRlbnNpb24oJ190ZXN0YnVmZmVyJywgWydfdGVzdGJ1ZmZlci5jJ10pICkKICAgICAgICAgIyBwcm9maWxlciAoX2xzcHJvZiBpcyBmb3IgY1Byb2ZpbGUucHkpCiAgICAgICAgIGV4dHMuYXBwZW5kKCBFeHRlbnNpb24oJ19sc3Byb2YnLCBbJ19sc3Byb2YuYycsICdyb3RhdGluZ3RyZWUuYyddKSApCiAgICAgICAgICMgc3RhdGljIFVuaWNvZGUgY2hhcmFjdGVyIGRhdGFiYXNlCkBAIC02NTksNyArNjY0LDcgQEAKICAgICAgICAgICAgIGxpYnMgPSBbJ2NyeXB0J10KICAgICAgICAgZWxzZToKICAgICAgICAgICAgIGxpYnMgPSBbXQotICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdjcnlwdCcsIFsnY3J5cHRtb2R1bGUuYyddLCBsaWJyYXJpZXM9bGlicykgKQorICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdfY3J5cHQnLCBbJ19jcnlwdG1vZHVsZS5jJ10sIGxpYnJhcmllcz1saWJzKSApCiAKICAgICAgICAgIyBDU1YgZmlsZXMKICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignX2NzdicsIFsnX2Nzdi5jJ10pICkKQEAgLTEwNDcsMTAgKzEwNTIsMTUgQEAKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgc3FsaXRlX2V4dHJhX2xpbmtfYXJncyA9ICgpCiAKKyAgICAgICAgICAgIGluY2x1ZGVfZGlycyA9IFsiTW9kdWxlcy9fc3FsaXRlIl0KKyAgICAgICAgICAgICMgT25seSBpbmNsdWRlIHRoZSBkaXJlY3Rvcnkgd2hlcmUgc3FsaXRlIHdhcyBmb3VuZCBpZiBpdCBkb2VzCisgICAgICAgICAgICAjIG5vdCBhbHJlYWR5IGV4aXN0IGluIHNldCBpbmNsdWRlIGRpcmVjdG9yaWVzLCBvdGhlcndpc2UgeW91CisgICAgICAgICAgICAjIGNhbiBlbmQgdXAgd2l0aCBhIGJhZCBzZWFyY2ggcGF0aCBvcmRlci4KKyAgICAgICAgICAgIGlmIHNxbGl0ZV9pbmNkaXIgbm90IGluIHNlbGYuY29tcGlsZXIuaW5jbHVkZV9kaXJzOgorICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycy5hcHBlbmQoc3FsaXRlX2luY2RpcikKICAgICAgICAgICAgIGV4dHMuYXBwZW5kKEV4dGVuc2lvbignX3NxbGl0ZTMnLCBzcWxpdGVfc3JjcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZpbmVfbWFjcm9zPXNxbGl0ZV9kZWZpbmVzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycz1bIk1vZHVsZXMvX3NxbGl0ZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcWxpdGVfaW5jZGlyXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlX2RpcnM9aW5jbHVkZV9kaXJzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcnlfZGlycz1zcWxpdGVfbGliZGlyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzPXNxbGl0ZV9saWJkaXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFfbGlua19hcmdzPXNxbGl0ZV9leHRyYV9saW5rX2FyZ3MsCkBAIC0xMTYwLDE0ICsxMTcwLDIxIEBACiAKICAgICAgICAgIyBDdXJzZXMgc3VwcG9ydCwgcmVxdWlyaW5nIHRoZSBTeXN0ZW0gViB2ZXJzaW9uIG9mIGN1cnNlcywgb2Z0ZW4KICAgICAgICAgIyBwcm92aWRlZCBieSB0aGUgbmN1cnNlcyBsaWJyYXJ5LgorICAgICAgICBjdXJzZXNfZGVmaW5lcyA9IFtdCisgICAgICAgIGN1cnNlc19pbmNsdWRlcyA9IFtdCiAgICAgICAgIHBhbmVsX2xpYnJhcnkgPSAncGFuZWwnCisgICAgICAgIGlmIGN1cnNlc19saWJyYXJ5ID09ICduY3Vyc2Vzdyc6CisgICAgICAgICAgICBjdXJzZXNfZGVmaW5lcy5hcHBlbmQoKCdIQVZFX05DVVJTRVNXJywgJzEnKSkKKyAgICAgICAgICAgIGN1cnNlc19pbmNsdWRlcy5hcHBlbmQoJy91c3IvaW5jbHVkZS9uY3Vyc2VzdycpCisgICAgICAgICAgICAjIEJ1ZyAxNDY0MDU2OiBJZiBfY3Vyc2VzLnNvIGxpbmtzIHdpdGggbmN1cnNlc3csCisgICAgICAgICAgICAjIF9jdXJzZXNfcGFuZWwuc28gbXVzdCBsaW5rIHdpdGggcGFuZWx3LgorICAgICAgICAgICAgcGFuZWxfbGlicmFyeSA9ICdwYW5lbHcnCisKICAgICAgICAgaWYgY3Vyc2VzX2xpYnJhcnkuc3RhcnRzd2l0aCgnbmN1cnNlcycpOgotICAgICAgICAgICAgaWYgY3Vyc2VzX2xpYnJhcnkgPT0gJ25jdXJzZXN3JzoKLSAgICAgICAgICAgICAgICAjIEJ1ZyAxNDY0MDU2OiBJZiBfY3Vyc2VzLnNvIGxpbmtzIHdpdGggbmN1cnNlc3csCi0gICAgICAgICAgICAgICAgIyBfY3Vyc2VzX3BhbmVsLnNvIG11c3QgbGluayB3aXRoIHBhbmVsdy4KLSAgICAgICAgICAgICAgICBwYW5lbF9saWJyYXJ5ID0gJ3BhbmVsdycKICAgICAgICAgICAgIGN1cnNlc19saWJzID0gW2N1cnNlc19saWJyYXJ5XQogICAgICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignX2N1cnNlcycsIFsnX2N1cnNlc21vZHVsZS5jJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycz1jdXJzZXNfaW5jbHVkZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmluZV9tYWNyb3M9Y3Vyc2VzX2RlZmluZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcyA9IGN1cnNlc19saWJzKSApCiAgICAgICAgIGVsaWYgY3Vyc2VzX2xpYnJhcnkgPT0gJ2N1cnNlcycgYW5kIHBsYXRmb3JtICE9ICdkYXJ3aW4nOgogICAgICAgICAgICAgICAgICMgT1NYIGhhcyBhbiBvbGQgQmVya2VsZXkgY3Vyc2VzLCBub3QgZ29vZCBlbm91Z2ggZm9yCkBAIC0xMTgwLDYgKzExOTcsNyBAQAogICAgICAgICAgICAgICAgIGN1cnNlc19saWJzID0gWydjdXJzZXMnXQogCiAgICAgICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdfY3Vyc2VzJywgWydfY3Vyc2VzbW9kdWxlLmMnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmaW5lX21hY3Jvcz1jdXJzZXNfZGVmaW5lcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzID0gY3Vyc2VzX2xpYnMpICkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG1pc3NpbmcuYXBwZW5kKCdfY3Vyc2VzJykKQEAgLTExODgsNiArMTIwNiw3IEBACiAgICAgICAgIGlmIChtb2R1bGVfZW5hYmxlZChleHRzLCAnX2N1cnNlcycpIGFuZAogICAgICAgICAgICAgc2VsZi5jb21waWxlci5maW5kX2xpYnJhcnlfZmlsZShsaWJfZGlycywgcGFuZWxfbGlicmFyeSkpOgogICAgICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignX2N1cnNlc19wYW5lbCcsIFsnX2N1cnNlc19wYW5lbC5jJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycz1jdXJzZXNfaW5jbHVkZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcyA9IFtwYW5lbF9saWJyYXJ5XSArIGN1cnNlc19saWJzKSApCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBtaXNzaW5nLmFwcGVuZCgnX2N1cnNlc19wYW5lbCcpCkBAIC0xMjU2LDExICsxMjc1LDE4IEBACiAgICAgICAgICAgICAgICAgYnoyX2V4dHJhX2xpbmtfYXJncyA9ICgnLVdsLC1zZWFyY2hfcGF0aHNfZmlyc3QnLCkKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgYnoyX2V4dHJhX2xpbmtfYXJncyA9ICgpCi0gICAgICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdiejInLCBbJ2J6Mm1vZHVsZS5jJ10sCisgICAgICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdfYnoyJywgWydfYnoybW9kdWxlLmMnXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzID0gWydiejInXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFfbGlua19hcmdzID0gYnoyX2V4dHJhX2xpbmtfYXJncykgKQogICAgICAgICBlbHNlOgotICAgICAgICAgICAgbWlzc2luZy5hcHBlbmQoJ2J6MicpCisgICAgICAgICAgICBtaXNzaW5nLmFwcGVuZCgnX2J6MicpCisKKyAgICAgICAgIyBMWk1BIGNvbXByZXNzaW9uIHN1cHBvcnQuCisgICAgICAgIGlmIHNlbGYuY29tcGlsZXIuZmluZF9saWJyYXJ5X2ZpbGUobGliX2RpcnMsICdsem1hJyk6CisgICAgICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdfbHptYScsIFsnX2x6bWFtb2R1bGUuYyddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXMgPSBbJ2x6bWEnXSkgKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbWlzc2luZy5hcHBlbmQoJ19sem1hJykKIAogICAgICAgICAjIEludGVyZmFjZSB0byB0aGUgRXhwYXQgWE1MIHBhcnNlcgogICAgICAgICAjCkBAIC0xMzUzLDE0ICsxMzc5LDExIEBACiAgICAgICAgIGlmIHBsYXRmb3JtID09ICd3aW4zMic6CiAgICAgICAgICAgICBtdWx0aXByb2Nlc3Npbmdfc3JjcyA9IFsgJ19tdWx0aXByb2Nlc3NpbmcvbXVsdGlwcm9jZXNzaW5nLmMnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdfbXVsdGlwcm9jZXNzaW5nL3NlbWFwaG9yZS5jJywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX211bHRpcHJvY2Vzc2luZy9waXBlX2Nvbm5lY3Rpb24uYycsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19tdWx0aXByb2Nlc3Npbmcvc29ja2V0X2Nvbm5lY3Rpb24uYycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19tdWx0aXByb2Nlc3Npbmcvd2luMzJfZnVuY3Rpb25zLmMnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0KIAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgbXVsdGlwcm9jZXNzaW5nX3NyY3MgPSBbICdfbXVsdGlwcm9jZXNzaW5nL211bHRpcHJvY2Vzc2luZy5jJywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX211bHRpcHJvY2Vzc2luZy9zb2NrZXRfY29ubmVjdGlvbi5jJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICBpZiAoc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdIQVZFX1NFTV9PUEVOJykgYW5kIG5vdAogICAgICAgICAgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignUE9TSVhfU0VNQVBIT1JFU19OT1RfRU5BQkxFRCcpKToKQEAgLTEzNzUsOSArMTM5OCw3IEBACiAgICAgICAgICMgRW5kIG11bHRpcHJvY2Vzc2luZwogCiAgICAgICAgICMgUGxhdGZvcm0tc3BlY2lmaWMgbGlicmFyaWVzCi0gICAgICAgIGlmIChwbGF0Zm9ybSBpbiAoJ2xpbnV4MicsICdmcmVlYnNkNCcsICdmcmVlYnNkNScsICdmcmVlYnNkNicsCi0gICAgICAgICAgICAgICAgICAgICAgICAnZnJlZWJzZDcnLCAnZnJlZWJzZDgnKQotICAgICAgICAgICAgb3IgcGxhdGZvcm0uc3RhcnRzd2l0aCgiZ251a2ZyZWVic2QiKSk6CisgICAgICAgIGlmIHBsYXRmb3JtLnN0YXJ0c3dpdGgoKCdsaW51eCcsICdmcmVlYnNkJywgJ2dudWtmcmVlYnNkJykpOgogICAgICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignb3NzYXVkaW9kZXYnLCBbJ29zc2F1ZGlvZGV2LmMnXSkgKQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgbWlzc2luZy5hcHBlbmQoJ29zc2F1ZGlvZGV2JykKQEAgLTE3ODAsNiArMTgwMSwxMyBAQAogICAgICAgICBpbnN0YWxsLmluaXRpYWxpemVfb3B0aW9ucyhzZWxmKQogICAgICAgICBzZWxmLndhcm5fZGlyPTAKIAorICAgICMgQ3VzdG9taXplIHN1YmNvbW1hbmRzIHRvIG5vdCBpbnN0YWxsIGFuIGVnZy1pbmZvIGZpbGUgZm9yIFB5dGhvbgorICAgIHN1Yl9jb21tYW5kcyA9IFsoJ2luc3RhbGxfbGliJywgaW5zdGFsbC5oYXNfbGliKSwKKyAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsX2hlYWRlcnMnLCBpbnN0YWxsLmhhc19oZWFkZXJzKSwKKyAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsX3NjcmlwdHMnLCBpbnN0YWxsLmhhc19zY3JpcHRzKSwKKyAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsX2RhdGEnLCBpbnN0YWxsLmhhc19kYXRhKV0KKworCiBjbGFzcyBQeUJ1aWxkSW5zdGFsbExpYihpbnN0YWxsX2xpYik6CiAgICAgIyBEbyBleGFjdGx5IHdoYXQgaW5zdGFsbF9saWIgZG9lcyBidXQgbWFrZSBzdXJlIGNvcnJlY3QgYWNjZXNzIG1vZGVzIGdldAogICAgICMgc2V0IG9uIGluc3RhbGxlZCBkaXJlY3RvcmllcyBhbmQgZmlsZXMuIEFsbCBpbnN0YWxsZWQgZmlsZXMgd2l0aCBnZXQKQEAgLTE4OTIsNyArMTkyMCw3IEBACiAgICAgICAgICAgIyBjaGVjayB0aGUgUHlCdWlsZFNjcmlwdHMgY29tbWFuZCBhYm92ZSwgYW5kIGNoYW5nZSB0aGUgbGlua3MKICAgICAgICAgICAjIGNyZWF0ZWQgYnkgdGhlIGJpbmluc3RhbGwgdGFyZ2V0IGluIE1ha2VmaWxlLnByZS5pbgogICAgICAgICAgIHNjcmlwdHMgPSBbIlRvb2xzL3NjcmlwdHMvcHlkb2MzIiwgIlRvb2xzL3NjcmlwdHMvaWRsZTMiLAotICAgICAgICAgICAgICAgICAgICAgIlRvb2xzL3NjcmlwdHMvMnRvMyJdCisgICAgICAgICAgICAgICAgICAgICAiVG9vbHMvc2NyaXB0cy8ydG8zIiwgIlRvb2xzL3NjcmlwdHMvcHlzZXR1cDMiXQogICAgICAgICApCiAKICMgLS1pbnN0YWxsLXBsYXRsaWIK